diff --git a/.gitignore b/.gitignore index 0a12acfd7cf9aa712d2982af008920b55873bb4f..a24cf93707c4e8d75dfdd62f45f1c8acf93fb62b 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ applet/ *~ *.orig *.rej +*.bak diff --git a/ArduinoAddons/Arduino_0.xx/Gen6/bootloaders/atmega644p/ATmegaBOOT.c b/ArduinoAddons/Arduino_0.xx/Gen6/bootloaders/atmega644p/ATmegaBOOT.c index 171101445970bb407829e6e470680ea71018a714..3b56dfd22429350a3ae84cb3f1904b21ecfb22e3 100644 --- a/ArduinoAddons/Arduino_0.xx/Gen6/bootloaders/atmega644p/ATmegaBOOT.c +++ b/ArduinoAddons/Arduino_0.xx/Gen6/bootloaders/atmega644p/ATmegaBOOT.c @@ -168,7 +168,7 @@ int main(void) WDTCSR = 0; // Check if the WDT was used to reset, in which case we dont bootload and skip straight to the code. woot. - if (! (ch & _BV(EXTRF))) // if its a not an external reset... + if (! (ch & _BV(EXTRF))) // if it's a not an external reset... app_start(); // skip bootloader #endif diff --git a/ArduinoAddons/Arduino_0.xx/Sanguino/bootloaders/atmega644p/ATmegaBOOT.c b/ArduinoAddons/Arduino_0.xx/Sanguino/bootloaders/atmega644p/ATmegaBOOT.c index 171101445970bb407829e6e470680ea71018a714..3b56dfd22429350a3ae84cb3f1904b21ecfb22e3 100644 --- a/ArduinoAddons/Arduino_0.xx/Sanguino/bootloaders/atmega644p/ATmegaBOOT.c +++ b/ArduinoAddons/Arduino_0.xx/Sanguino/bootloaders/atmega644p/ATmegaBOOT.c @@ -168,7 +168,7 @@ int main(void) WDTCSR = 0; // Check if the WDT was used to reset, in which case we dont bootload and skip straight to the code. woot. - if (! (ch & _BV(EXTRF))) // if its a not an external reset... + if (! (ch & _BV(EXTRF))) // if it's a not an external reset... app_start(); // skip bootloader #endif diff --git a/ArduinoAddons/Arduino_0.xx/libraries/LiquidCrystal/LiquidCrystal.cpp b/ArduinoAddons/Arduino_0.xx/libraries/LiquidCrystal/LiquidCrystal.cpp index 23713f47b9ff763d2f3913ea9998b8f6ef07bad8..c3362f6d8ffdd137473aa1450293a6bbb9f317d3 100644 --- a/ArduinoAddons/Arduino_0.xx/libraries/LiquidCrystal/LiquidCrystal.cpp +++ b/ArduinoAddons/Arduino_0.xx/libraries/LiquidCrystal/LiquidCrystal.cpp @@ -21,7 +21,7 @@ // S = 0; No shift // // Note, however, that resetting the Arduino doesn't reset the LCD, so we -// can't assume that its in that state when a sketch starts (and the +// can't assume that it's in that state when a sketch starts (and the // LiquidCrystal constructor is called). LiquidCrystal::LiquidCrystal(uint8_t rs, uint8_t rw, uint8_t enable, diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/ChangeLog b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/ChangeLog new file mode 100644 index 0000000000000000000000000000000000000000..1ee88d6cfc74c754c9de6a3aa64d15146569e9b6 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/ChangeLog @@ -0,0 +1,114 @@ + +u8glib ChangeLog + +2012-01-01 v0.01 Oliver Kraus + * first beta release for Arduino IDE with simple SSD1325 support +2012-01-04 v0.02 Oliver Kraus + * support for some more display types +2012-01-07 v0.03 Oliver Kraus + * fixed some bugs, added more examples +2012-01-07 v0.04 Oliver Kraus + * single font file +2012-01-08 v0.05 Oliver Kraus + * Cleanup + * More examples + * SSD1325 graylevel support +2012-01-15 v0.06 Oliver Kraus + * LM6063 support +2012-01-17 v0.07 Oliver Kraus + * LM6063 support (update) +2012-01-19 v0.08 Oliver Kraus + * ST7920 beta device +2012-01-21 v0.09 Oliver Kraus + * ST7920 fixed (192x32) + * fixed bug in com layer if pins are none + * str reference position +2012-01-22 v0.10 Oliver Kraus + * Experimental LM6059 +2012-01-24 v0.11 Oliver Kraus + * new st7920 memory layout for 128x64 lcd + * experimental st7920 SPI +2012-01-25 v0.12 Oliver Kraus + * fixed st7920 memory layout for 128x64 lcd + * ST7920 SPI performance improvement +2012-01-27 v0.13 Oliver Kraus + * LM6059 (Adafruit Display) fixed +2012-02-01 v0.14 Oliver Kraus + * undoRotation() + * setRot..() can be used without restrictions + * Class U8GLIB derived from Print class. New function "print" + * Fixed memory index bug in the page management procedures +2012-02-12 v1.00 Oliver Kraus + * XBM support + * F() macro support + * str-rotation commands support ref-height and ref-position +2012-03-17 v1.02 Oliver Kraus + * U8GLIB_ST7687_C144MVGD spi experimental + * U8GLIB_LC7981_160X80 8bit + * Intersection test for frame and box procedures + * 4L double memory architecture + * setContrast infrastructure implemented, but not available for all devices + * drawCircle, drawDisc + * Bugfix for drawStr270 + * New examples: Chess (ported from dogm128 lib) and GraphicsTest +2012-03-31 v1.03 Oliver Kraus + * experimental parallel mode atmega + * more unifont code pages + * double memory, for NHD OLED and DOGXL160 + * "Menu" example + * drawLine +2012-04-13 v1.04 Oliver Kraus + * Adjust U8grelease: Same version number with AVR and Arduino variant +2012-06-10 v1.05 Oliver Kraus + * m2icon font + * experimental lc7981_240x64 device + * experimental ssd1306 + * experimental ssd1322 + * Hardware state backup/restore procedure +2012-06-15 v1.06 Oliver Kraus + * SBN1661 (SED1520?) support + * SSD1306 support + * U8G_PROGMEM bugfix +2012-07-04 v1.07 Oliver Kraus + * Added Makefiles for AVR release (issue 77) + * Fixed examples for Arduino Environment (issue 78) +2012-10-02 v1.08 Oliver Kraus + * Improved delay calculation for strobe pulse (issue 20) + * Support Chipkit (issue 39) + * Improved speed for ST7920 parallel mode (issue 79) + * Overall speed optimization (new page intersection algorithm) + * Support for Displays Newhaven NHD-C12864, CrystalFontz GFAG20232, Seeedstudio 96x96 OLED + * Added SPI support for ST7920 with plain AVR (issue 85) + * Add more LC7981 devices +2012-12-23 v1.09 Oliver Kraus + * Support for Displaytech 64128n + * Support for MINI12864 + * HW SPI for ST7920 + * Add delay after sending a byte with (ST7920 com) + * Support ATTiny + * Support I2C for SSD1306 + * bdf2u8g, Windows executable released + * LC7981 320x64 + * Scalue up: u8g::setScale2x2 + * Added more bitmap fonts + * u8g::drawRBox(), u8g::drawRFrame() + * Support for CFAG20232 (st7920_202x32) + * Fixed ST7920 SW SPI for ChipKit + * Support for tls8204 +2013-02-02 v1.10 Oliver Kraus + * Support for SSD1309 + * Support for NHD-C12832A1Z + * Bugfix: Fixed reset controll in parallel modes + * Bugfix: Fixed calculation of cursor position + * Bugfix: ST7920 parallel mode +2013-03-2 v1.11 Oliver Kraus + * Support for T6963 + * Support for Arduino Due + * Sleep Mode + * 4x mode for ST7920 + * New C++ interface for ST7920 + + + + + \ No newline at end of file diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/INSTALL.TXT b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/INSTALL.TXT new file mode 100644 index 0000000000000000000000000000000000000000..d87f97128d29fd197a57c2e924746e28e0a36be7 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/INSTALL.TXT @@ -0,0 +1,21 @@ + +U8GLIB +http://code.google.com/p/u8glib/ + + +Install instructions for the Arduino environment. + + 1. Unzip u8glib_arduino_vX.XX.zip into the "libraries" folder + 2. Start Arduino IDE + +Install instructions for the Chipkit (Arduino) environment. + + 1. cd /libraries + 2. unzip u8glib_arduino_vX.XX.zip + 3. cd ///hardware/pic32/libraries + 4. again: u8glib_arduino_vX.XX.zip + 5. Open hardware/pic32/cores/pic32/Print.h + Remove line + #define BYTE 0 + from the file, use PRINT_BYTE instead of BYTE. + \ No newline at end of file diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/U8glib.cpp b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/U8glib.cpp new file mode 100644 index 0000000000000000000000000000000000000000..aa870b11472553b895d7e0670010be425e1bb10c --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/U8glib.cpp @@ -0,0 +1,80 @@ +/* + + U8glib.cpp + + C++ Interface + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#include "U8glib.h" + + + +uint8_t U8GLIB::initSPI(u8g_dev_t *dev, uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset) +{ + prepare(); + return u8g_InitSPI(&u8g, dev, sck, mosi, cs, a0, reset); +} + +uint8_t U8GLIB::initHWSPI(u8g_dev_t *dev, uint8_t cs, uint8_t a0, uint8_t reset) +{ + prepare(); + return u8g_InitHWSPI(&u8g, dev, cs, a0, reset); +} + +uint8_t U8GLIB::initI2C(u8g_dev_t *dev, uint8_t options) +{ + prepare(); + return u8g_InitI2C(&u8g, dev, options); +} + +uint8_t U8GLIB::init8Bit(u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw, uint8_t reset) +{ + prepare(); + return u8g_Init8Bit(&u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset); +} + +uint8_t U8GLIB::init8BitFixedPort(u8g_dev_t *dev, uint8_t en, uint8_t cs, uint8_t di, uint8_t rw, uint8_t reset) +{ + prepare(); + return u8g_Init8BitFixedPort(&u8g, dev, en, cs, di, rw, reset); +} + +uint8_t U8GLIB::initRW8Bit(u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset) +{ + prepare(); + return u8g_InitRW8Bit(&u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd, reset); +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/U8glib.h b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/U8glib.h new file mode 100644 index 0000000000000000000000000000000000000000..a77444425d991a1a02186d475fd52c822ab47970 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/U8glib.h @@ -0,0 +1,826 @@ +/* + + U8glib.h + + C++ Interface + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#ifndef _CPP_U8GLIB +#define _CPP_U8GLIB + +#include +#include "utility/u8g.h" + + +class U8GLIB : public Print +{ + private: + u8g_t u8g; + u8g_uint_t tx, ty; // current position for the Print base class procedures + uint8_t is_begin; + + void prepare(void) { tx = 0; ty = 0; is_begin = 0; } + void cbegin(void) { if ( is_begin == 0 ) { is_begin = 1; u8g_Begin(&u8g); } } + uint8_t initSPI(u8g_dev_t *dev, uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE); + uint8_t initHWSPI(u8g_dev_t *dev, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE); + uint8_t initI2C(u8g_dev_t *dev, uint8_t options); + protected: + uint8_t init8BitFixedPort(u8g_dev_t *dev, uint8_t en, uint8_t cs, uint8_t di, uint8_t rw, uint8_t reset); + private: + uint8_t init8Bit(u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE); + uint8_t initRW8Bit(u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset); + public: + + /* constructor */ + U8GLIB(void) + { } + U8GLIB(u8g_dev_t *dev) + { prepare(); u8g_Init(&u8g, dev); } + U8GLIB(u8g_dev_t *dev, uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset) + { initSPI(dev, sck, mosi, cs, a0, reset); } + U8GLIB(u8g_dev_t *dev, uint8_t cs, uint8_t a0, uint8_t reset) + { initHWSPI(dev, cs, a0, reset); } + U8GLIB(u8g_dev_t *dev, uint8_t options) + { initI2C(dev, options); } + U8GLIB(u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw, uint8_t reset) + { init8Bit(dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset); } + U8GLIB(u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset) + { initRW8Bit(dev, d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd, reset); } + + uint8_t begin(void) { is_begin = 1; return u8g_Begin(&u8g); } + + void setPrintPos(u8g_uint_t x, u8g_uint_t y) { tx = x; ty = y; } + u8g_t *getU8g(void) { return &u8g; } + + + /* implementation of the write interface to the print class */ +#if defined(ARDUINO) && ARDUINO >= 100 + size_t write(uint8_t c) { tx += u8g_DrawGlyph(&u8g, tx, ty, c); return 1;} +#else + void write(uint8_t c) { tx += u8g_DrawGlyph(&u8g, tx, ty, c); } +#endif + + /* screen rotation */ + void undoRotation(void) { u8g_UndoRotation(&u8g); } + void setRot90(void) { u8g_SetRot90(&u8g); } + void setRot180(void) { u8g_SetRot180(&u8g); } + void setRot270(void) { u8g_SetRot270(&u8g); } + + /* screen scaling */ + void undoScale(void) { u8g_UndoScale(&u8g); } + void setScale2x2(void) { u8g_SetScale2x2(&u8g); } + + /* picture loop */ + void firstPage(void) { cbegin(); u8g_FirstPage(&u8g); } + uint8_t nextPage(void) { return u8g_NextPage(&u8g); } + + /* system commands */ + uint8_t setContrast(uint8_t contrast) { cbegin(); return u8g_SetContrast(&u8g, contrast); } + void sleepOn(void) { u8g_SleepOn(&u8g); } + void sleepOff(void) { u8g_SleepOff(&u8g); } + + /* graphic primitives */ + void setColorIndex(uint8_t color_index) { u8g_SetColorIndex(&u8g, color_index); } + uint8_t getColorIndex(void) { return u8g_GetColorIndex(&u8g); } + + void setDefaultForegroundColor(void) { u8g_SetDefaultForegroundColor(&u8g); } + void setDefaultBackgroundColor(void) { u8g_SetDefaultBackgroundColor(&u8g); } + void setDefaultMidColor(void) { u8g_SetDefaultMidColor(&u8g); } + + u8g_uint_t getWidth(void) { return u8g_GetWidth(&u8g); } + u8g_uint_t getHeight(void) { return u8g_GetHeight(&u8g); } + uint8_t getMode(void) { return u8g_GetMode(&u8g); } + + void drawPixel(u8g_uint_t x, u8g_uint_t y) { return u8g_DrawPixel(&u8g, x, y); } + void drawHLine(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w) { u8g_DrawHLine(&u8g, x, y, w); } + void drawVLine(u8g_uint_t x, u8g_uint_t y, u8g_uint_t h) { u8g_DrawVLine(&u8g, x, y, h); } + void drawLine(u8g_uint_t x1, u8g_uint_t y1, u8g_uint_t x2, u8g_uint_t y2) { u8g_DrawLine(&u8g, x1, y1, x2, y2); } + + void drawFrame(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) { u8g_DrawFrame(&u8g, x, y, w, h); } + void drawRFrame(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, u8g_uint_t r) { u8g_DrawRFrame(&u8g, x, y, w, h,r); } + void drawBox(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) { u8g_DrawBox(&u8g, x, y, w, h); } + void drawRBox(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, u8g_uint_t r) { u8g_DrawRBox(&u8g, x, y, w, h,r); } + + void drawCircle(u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t opt = U8G_DRAW_ALL) { u8g_DrawCircle(&u8g, x0, y0, rad, opt); } + void drawDisc(u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t opt = U8G_DRAW_ALL) { u8g_DrawDisc(&u8g, x0, y0, rad, opt); } + + /* bitmap handling */ + void drawBitmap(u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, u8g_uint_t h, const uint8_t *bitmap) + { u8g_DrawBitmap(&u8g, x, y, cnt, h, bitmap); } + void drawBitmapP(u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, u8g_uint_t h, const u8g_pgm_uint8_t *bitmap) + { u8g_DrawBitmapP(&u8g, x, y, cnt, h, bitmap); } + + void drawXBM(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, const uint8_t *bitmap) + { u8g_DrawXBM(&u8g, x, y, w, h, bitmap); } + void drawXBMP(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, const u8g_pgm_uint8_t *bitmap) + { u8g_DrawXBMP(&u8g, x, y, w, h, bitmap); } + + + /* font handling */ + void setFont(const u8g_fntpgm_uint8_t *font) {u8g_SetFont(&u8g, font); } + int8_t getFontAscent(void) { return u8g_GetFontAscent(&u8g); } + int8_t getFontDescent(void) { return u8g_GetFontDescent(&u8g); } + int8_t getFontLineSpacing(void) { return u8g_GetFontLineSpacing(&u8g); } + + u8g_uint_t drawStr(u8g_uint_t x, u8g_uint_t y, const char *s) { return u8g_DrawStr(&u8g, x, y, s); } + u8g_uint_t drawStr90(u8g_uint_t x, u8g_uint_t y, const char *s) { return u8g_DrawStr90(&u8g, x, y, s); } + u8g_uint_t drawStr180(u8g_uint_t x, u8g_uint_t y, const char *s) { return u8g_DrawStr180(&u8g, x, y, s); } + u8g_uint_t drawStr270(u8g_uint_t x, u8g_uint_t y, const char *s) { return u8g_DrawStr270(&u8g, x, y, s); } + u8g_uint_t drawStrP(u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) { return u8g_DrawStrP(&u8g, x, y, s); } + u8g_uint_t drawStr90P(u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) { return u8g_DrawStr90P(&u8g, x, y, s); } + u8g_uint_t drawStr180P(u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) { return u8g_DrawStr180P(&u8g, x, y, s); } + u8g_uint_t drawStr270P(u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) { return u8g_DrawStr270P(&u8g, x, y, s); } + + void setFontPosBaseline(void) { u8g_SetFontPosBaseline(&u8g); } + void setFontPosBottom(void) { u8g_SetFontPosBottom(&u8g); } + void setFontPosCenter(void) { u8g_SetFontPosCenter(&u8g); } + void setFontPosTop(void) { u8g_SetFontPosTop(&u8g); } + + void setFontRefHeightText(void) { u8g_SetFontRefHeightText(&u8g); } + void setFontRefHeightExtendedText(void) { u8g_SetFontRefHeightExtendedText(&u8g); } + void setFontRefHeightAll(void) { u8g_SetFontRefHeightAll(&u8g); } + void setFontLineSpacingFactor(uint8_t factor) { u8g_SetFontLineSpacingFactor(&u8g, factor); } + + + u8g_uint_t getStrPixelWidth(const char *s) { return u8g_GetStrPixelWidth(&u8g, s); } + u8g_uint_t getStrPixelWidthP(u8g_pgm_uint8_t *s) { return u8g_GetStrPixelWidthP(&u8g, s); } + u8g_uint_t getStrWidth(const char *s) { return u8g_GetStrWidth(&u8g, s); } + u8g_uint_t getStrWidthP(u8g_pgm_uint8_t *s) { return u8g_GetStrWidthP(&u8g, s); } + + void setHardwareBackup(u8g_state_cb backup_cb) { u8g_SetHardwareBackup(&u8g, backup_cb); } + +#if defined(ARDUINO) && ARDUINO >= 100 + // support for the F() macro + + u8g_uint_t drawStr(u8g_uint_t x, u8g_uint_t y, const __FlashStringHelper *s) { return u8g_DrawStrP(&u8g, x, y, (u8g_pgm_uint8_t *)s); } + u8g_uint_t drawStr90(u8g_uint_t x, u8g_uint_t y, const __FlashStringHelper *s) { return u8g_DrawStr90P(&u8g, x, y, (u8g_pgm_uint8_t *)s); } + u8g_uint_t drawStr180(u8g_uint_t x, u8g_uint_t y, const __FlashStringHelper *s) { return u8g_DrawStr180P(&u8g, x, y, (u8g_pgm_uint8_t *)s); } + u8g_uint_t drawStr270(u8g_uint_t x, u8g_uint_t y, const __FlashStringHelper *s) { return u8g_DrawStr270P(&u8g, x, y, (u8g_pgm_uint8_t *)s); } + + u8g_uint_t getStrPixelWidth(const __FlashStringHelper *s) { return u8g_GetStrPixelWidthP(&u8g, (u8g_pgm_uint8_t *)s); } + u8g_uint_t getStrWidth(const __FlashStringHelper *s) { return u8g_GetStrWidthP(&u8g, (u8g_pgm_uint8_t *)s); } +#endif + + /* cursor handling */ + void setCursorFont(const u8g_pgm_uint8_t *cursor_font) { u8g_SetCursorFont(&u8g, cursor_font); } + void setCursorStyle(uint8_t encoding) { u8g_SetCursorStyle(&u8g, encoding); } + void setCursorPos(u8g_uint_t cursor_x, u8g_uint_t cursor_y) { u8g_SetCursorPos(&u8g, cursor_x, cursor_y); } + void setCursorColor(uint8_t fg, uint8_t bg) { u8g_SetCursorColor(&u8g, fg, bg); } + void enableCursor(void) { u8g_EnableCursor(&u8g); } + void disableCursor(void) { u8g_DisableCursor(&u8g); } + void drawCursor(void) { u8g_DrawCursor(&u8g); } + + /* virtual screen */ + + void setVirtualScreenDimension(u8g_uint_t width, u8g_uint_t height) { u8g_SetVirtualScreenDimension(&u8g, width, height); } + uint8_t addToVirtualScreen(u8g_uint_t x, u8g_uint_t y, U8GLIB &child_u8g) { return u8g_AddToVirtualScreen(&u8g, x, y, &child_u8g.u8g); } + +}; + + +class U8GLIB_DOGS102 : public U8GLIB +{ + public: + U8GLIB_DOGS102(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1701_dogs102_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_DOGS102(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1701_dogs102_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_MINI12864 : public U8GLIB +{ + public: + U8GLIB_MINI12864(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1701_mini12864_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_MINI12864(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1701_mini12864_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_DOGM132 : public U8GLIB +{ + public: + U8GLIB_DOGM132(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_dogm132_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_DOGM132(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_dogm132_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_NHD_C12832 : public U8GLIB +{ + public: + U8GLIB_NHD_C12832(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_nhd_c12832_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD_C12832(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_nhd_c12832_hw_spi, cs, a0, reset) + { } + U8GLIB_NHD_C12832(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_nhd_c12832_parallel, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, U8G_PIN_NONE, di, rw, reset) + { } +}; + +class U8GLIB_DOGM128 : public U8GLIB +{ + public: + U8GLIB_DOGM128(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_dogm128_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_DOGM128(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_dogm128_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_LM6059 : public U8GLIB +{ + public: + U8GLIB_LM6059(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_lm6059_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_LM6059(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_lm6059_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_LM6063 : public U8GLIB +{ + public: + U8GLIB_LM6063(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_lm6063_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_LM6063(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_lm6063_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_64128N : public U8GLIB +{ + public: + U8GLIB_64128N(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_64128n_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_64128N(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_64128n_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_NHD_C12864 : public U8GLIB +{ + public: + U8GLIB_NHD_C12864(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_nhd_c12864_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD_C12864(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_nhd_c12864_hw_spi, cs, a0, reset) + { } +}; + + +class U8GLIB_ST7920_128X64 : public U8GLIB +{ + public: + U8GLIB_ST7920_128X64(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_ST7920_128X64(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_hw_spi, cs, a0, reset) + { } + U8GLIB_ST7920_128X64(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + { } + // U8GLIB_ST7920_128X64(uint8_t cs) + // : U8GLIB(&u8g_dev_st7920_128x64_sw_spi, cs, U8G_PIN_NONE, U8G_PIN_NONE) + // { } +}; + +class U8GLIB_ST7920_128X64_1X : public U8GLIB +{ + public: + U8GLIB_ST7920_128X64_1X(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_sw_spi, sck, mosi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_128X64_1X(uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_hw_spi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_128X64_1X(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, U8G_PIN_NONE, U8G_PIN_NONE, di, rw, reset) // cs1 = cs2 = U8G_PIN_NONE + { } +}; + +class U8GLIB_ST7920_128X64_4X : public U8GLIB +{ + public: + U8GLIB_ST7920_128X64_4X(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_4x_sw_spi, sck, mosi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_128X64_4X(uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_4x_hw_spi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_128X64_4X(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_4x_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, U8G_PIN_NONE, U8G_PIN_NONE, di, rw, reset) // cs1 = cs2 = U8G_PIN_NONE + { } +}; + + + +class U8GLIB_ST7920_192X32 : public U8GLIB // OBSOLETE, use U8GLIB_ST7920_192X32_1X instead +{ + public: + U8GLIB_ST7920_192X32(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_ST7920_192X32(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_hw_spi, cs, a0, reset) + { } + U8GLIB_ST7920_192X32(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + { } +}; + +class U8GLIB_ST7920_192X32_1X : public U8GLIB +{ + public: + U8GLIB_ST7920_192X32_1X(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_sw_spi, sck, mosi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_192X32_1X(uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_hw_spi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_192X32_1X(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, U8G_PIN_NONE, U8G_PIN_NONE, di, rw, reset) // cs1 = cs2 = U8G_PIN_NONE + { } +}; + +class U8GLIB_ST7920_192X32_4X : public U8GLIB +{ + public: + U8GLIB_ST7920_192X32_4X(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_4x_sw_spi, sck, mosi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_192X32_4X(uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_4x_hw_spi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_192X32_4X(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_4x_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, U8G_PIN_NONE, U8G_PIN_NONE, di, rw, reset) // cs1 = cs2 = U8G_PIN_NONE + { } +}; + + +class U8GLIB_ST7920_202X32 : public U8GLIB +{ + public: + U8GLIB_ST7920_202X32(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_ST7920_202X32(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_hw_spi, cs, a0, reset) + { } + U8GLIB_ST7920_202X32(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + { } +}; + +class U8GLIB_ST7920_202X32_1X : public U8GLIB +{ + public: + U8GLIB_ST7920_202X32_1X(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_sw_spi, sck, mosi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_202X32_1X(uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_hw_spi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_202X32_1X(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, U8G_PIN_NONE, U8G_PIN_NONE, di, rw, reset) // cs1 = cs2 = U8G_PIN_NONE + { } +}; + +class U8GLIB_ST7920_202X32_4X : public U8GLIB +{ + public: + U8GLIB_ST7920_202X32_4X(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_4x_sw_spi, sck, mosi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_202X32_4X(uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_4x_hw_spi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_202X32_4X(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_4x_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, U8G_PIN_NONE, U8G_PIN_NONE, di, rw, reset) // cs1 = cs2 = U8G_PIN_NONE + { } +}; + + +class U8GLIB_LC7981_160X80 : public U8GLIB +{ + public: + U8GLIB_LC7981_160X80(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_lc7981_160x80_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, U8G_PIN_NONE, di, rw, reset) + { } +}; + +class U8GLIB_LC7981_240X64 : public U8GLIB +{ + public: + U8GLIB_LC7981_240X64(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_lc7981_240x64_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, U8G_PIN_NONE, di, rw, reset) + { } +}; + +class U8GLIB_LC7981_240X128 : public U8GLIB +{ + public: + U8GLIB_LC7981_240X128(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_lc7981_240x128_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, U8G_PIN_NONE, di, rw, reset) + { } +}; + +// 16 bit mode required: Remove comment from "#define U8G_16BIT 1" in utility/u8g.h +class U8GLIB_LC7981_320X64 : public U8GLIB +{ + public: + U8GLIB_LC7981_320X64(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_lc7981_320x64_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, U8G_PIN_NONE, di, rw, reset) + { } +}; + + + +class U8GLIB_DOGXL160_BW : public U8GLIB +{ + public: + U8GLIB_DOGXL160_BW(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_bw_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_DOGXL160_BW(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_bw_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_DOGXL160_GR : public U8GLIB +{ + public: + U8GLIB_DOGXL160_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_DOGXL160_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_gr_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_DOGXL160_2X_BW : public U8GLIB +{ + public: + U8GLIB_DOGXL160_2X_BW(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_2x_bw_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_DOGXL160_2X_BW(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_2x_bw_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_DOGXL160_2X_GR : public U8GLIB +{ + public: + U8GLIB_DOGXL160_2X_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_2x_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_DOGXL160_2X_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_2x_gr_hw_spi, cs, a0, reset) + { } +}; + + +class U8GLIB_NHD27OLED_BW : public U8GLIB +{ + public: + U8GLIB_NHD27OLED_BW(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_bw_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD27OLED_BW(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_bw_hw_spi, cs, a0, reset) + { } + U8GLIB_NHD27OLED_BW(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_bw_parallel, d0, d1, d2, d3, d4, d5, d6, d7, U8G_PIN_NONE, cs, U8G_PIN_NONE, di, rw, reset) + { } +}; + +class U8GLIB_NHD27OLED_2X_BW : public U8GLIB +{ + public: + U8GLIB_NHD27OLED_2X_BW(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_2x_bw_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD27OLED_2X_BW(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_2x_bw_hw_spi, cs, a0, reset) + { } + U8GLIB_NHD27OLED_2X_BW(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_2x_bw_parallel, d0, d1, d2, d3, d4, d5, d6, d7, U8G_PIN_NONE, cs, U8G_PIN_NONE, di, rw, reset) + { } +}; + +class U8GLIB_NHD31OLED_BW : public U8GLIB +{ + public: + U8GLIB_NHD31OLED_BW(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_bw_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD31OLED_BW(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_bw_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_NHD31OLED_2X_BW : public U8GLIB +{ + public: + U8GLIB_NHD31OLED_2X_BW(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_2x_bw_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD31OLED_2X_BW(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_2x_bw_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_NHD31OLED_GR : public U8GLIB +{ + public: + U8GLIB_NHD31OLED_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD31OLED_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_gr_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_NHD31OLED_2X_GR : public U8GLIB +{ + public: + U8GLIB_NHD31OLED_2X_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_2x_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD31OLED_2X_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_2x_gr_hw_spi, cs, a0, reset) + { } +}; + + +class U8GLIB_SSD1306_128X64 : public U8GLIB +{ + public: + U8GLIB_SSD1306_128X64(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1306_128x64_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_SSD1306_128X64(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1306_128x64_hw_spi, cs, a0, reset) + { } + U8GLIB_SSD1306_128X64(uint8_t options = U8G_I2C_OPT_NONE) + : U8GLIB(&u8g_dev_ssd1306_128x64_i2c, options) + { } + +}; + +class U8GLIB_SSD1309_128X64 : public U8GLIB +{ + public: + U8GLIB_SSD1309_128X64(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1309_128x64_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_SSD1309_128X64(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1309_128x64_hw_spi, cs, a0, reset) + { } + U8GLIB_SSD1309_128X64(uint8_t options = U8G_I2C_OPT_NONE) + : U8GLIB(&u8g_dev_ssd1309_128x64_i2c, options) + { } + +}; + +class U8GLIB_SSD1306_128X32 : public U8GLIB +{ + public: + U8GLIB_SSD1306_128X32(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1306_128x32_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_SSD1306_128X32(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1306_128x32_hw_spi, cs, a0, reset) + { } + U8GLIB_SSD1306_128X32(uint8_t options = U8G_I2C_OPT_NONE) + : U8GLIB(&u8g_dev_ssd1306_128x32_i2c, options) + { } + +}; + + +class U8GLIB_NHD27OLED_GR : public U8GLIB +{ + public: + U8GLIB_NHD27OLED_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD27OLED_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_gr_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_NHD27OLED_2X_GR : public U8GLIB +{ + public: + U8GLIB_NHD27OLED_2X_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_2x_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD27OLED_2X_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_2x_gr_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_SSD1327_96X96_GR : public U8GLIB +{ + public: + U8GLIB_SSD1327_96X96_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1327_96x96_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_SSD1327_96X96_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1327_96x96_gr_hw_spi, cs, a0, reset) + { } + U8GLIB_SSD1327_96X96_GR(uint8_t options = U8G_I2C_OPT_NONE) + : U8GLIB(&u8g_dev_ssd1327_96x96_gr_i2c, options) + { } +}; + +class U8GLIB_SSD1327_96X96_2X_GR : public U8GLIB +{ + public: + U8GLIB_SSD1327_96X96_2X_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1327_96x96_2x_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_SSD1327_96X96_2X_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1327_96x96_2x_gr_hw_spi, cs, a0, reset) + { } + U8GLIB_SSD1327_96X96_2X_GR(uint8_t options = U8G_I2C_OPT_NONE) + : U8GLIB(&u8g_dev_ssd1327_96x96_2x_gr_i2c, options) + { } +}; + +class U8GLIB_PCF8812 : public U8GLIB +{ + public: + U8GLIB_PCF8812(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_pcf8812_96x65_sw_spi, sck, mosi, cs, a0, reset) + { } +}; + +class U8GLIB_PCD8544 : public U8GLIB +{ + public: + U8GLIB_PCD8544(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_pcd8544_84x48_sw_spi, sck, mosi, cs, a0, reset) + { } +}; + +class U8GLIB_TLS8204_84X48 : public U8GLIB +{ + public: + U8GLIB_TLS8204_84X48(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_tls8204_84x48_sw_spi, sck, mosi, cs, a0, reset) + { } +}; + +class U8GLIB_KS0108_128 : public U8GLIB +{ + public: + U8GLIB_KS0108_128(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ks0108_128x64_fast, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + { } +}; + +class U8GLIB_SBN1661_122X32 : public U8GLIB +{ + public: + U8GLIB_SBN1661_122X32(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_sbn1661_122x32, d0, d1, d2, d3, d4, d5, d6, d7, U8G_PIN_NONE, cs1, cs2, di, rw, reset) + { } +}; + +class U8GLIB_T6963_240X128 : public U8GLIB +{ + public: + U8GLIB_T6963_240X128(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_t6963_240x128_8bit, d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd, reset) + { } +}; + +class U8GLIB_T6963_240X64 : public U8GLIB +{ + public: + U8GLIB_T6963_240X64(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_t6963_240x64_8bit, d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd, reset) + { } +}; + +class U8GLIB_T6963_128X64 : public U8GLIB +{ + public: + U8GLIB_T6963_128X64(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_t6963_128x64_8bit, d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd, reset) + { } +}; + + +class U8GLIB_ST7687_C144MVGD: public U8GLIB +{ + public: + U8GLIB_ST7687_C144MVGD(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7687_c144mvgd_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_ST7687_C144MVGD(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs, uint8_t a0, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ks0108_128x64_fast, d0, d1, d2, d3, d4, d5, d6, d7, en, cs, U8G_PIN_NONE, a0, rw, reset) + { } +}; + +class U8GLIB_ILI9325D_320x240 : public U8GLIB +{ + public: + /* + U8GLIB_ILI9325D_320x240(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ili9325d_320x240_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, U8G_PIN_NONE, di, rw, reset) + { } + */ + U8GLIB_ILI9325D_320x240( uint8_t en, uint8_t cs1, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + { init8BitFixedPort(&u8g_dev_ili9325d_320x240_8bit, en, cs1, di, rw, reset); } +}; + +class U8GLIB_FLIPDISC_2X7 : public U8GLIB +{ + public: + U8GLIB_FLIPDISC_2X7(void) : U8GLIB(&u8g_dev_flipdisc_2x7) + { } +}; + +class U8GLIB_VS : public U8GLIB +{ + public: + U8GLIB_VS(void) : U8GLIB(&u8g_dev_vs) + { } +}; + + +#endif /* _CPP_U8GLIB */ diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Bitmap/Bitmap.pde b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Bitmap/Bitmap.pde new file mode 100644 index 0000000000000000000000000000000000000000..53fbe1b211bb68dfe8ea0c8908c9bb182d21bffe --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Bitmap/Bitmap.pde @@ -0,0 +1,130 @@ +/* + + Bitmap.pde + + Show simple bitmap + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + +const uint8_t rook_bitmap[] PROGMEM = { + 0x00, // 00000000 + 0x55, // 01010101 + 0x7f, // 01111111 + 0x3e, // 00111110 + 0x3e, // 00111110 + 0x3e, // 00111110 + 0x3e, // 00111110 + 0x7f // 01111111 +}; + +void draw(void) { + // graphic commands to redraw the complete screen should be placed here + u8g.drawBitmapP( 0, 0, 1, 8, rook_bitmap); +} + +void setup(void) { +} + +void loop(void) { + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(1000); +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Chess/Chess.pde b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Chess/Chess.pde new file mode 100644 index 0000000000000000000000000000000000000000..3cef3539824c14916d840040f43874e4694c0cab --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Chess/Chess.pde @@ -0,0 +1,180 @@ +/* + + Chess.pde + + Little Rook Chess + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + + +// DOGS102 shield configuration values +uint8_t uiKeyPrev = 2; +uint8_t uiKeyNext = 4; +uint8_t uiKeySelect = 5; +uint8_t uiKeyBack = 3; + +// DOGM128-Shield configuration values +// DOGXL60-Shield configuration values +//uint8_t uiKeyPrev = 7; +//uint8_t uiKeyNext = 3; +//uint8_t uiKeySelect = 2; +//uint8_t uiKeyBack = 8; + +uint8_t uiKeyCodeFirst = CHESS_KEY_NONE; +uint8_t uiKeyCodeSecond = CHESS_KEY_NONE; +uint8_t uiKeyCode = CHESS_KEY_NONE; + + +void uiSetup(void) { + // configure input keys + + pinMode(uiKeyPrev, INPUT); // set pin to input + digitalWrite(uiKeyPrev, HIGH); // turn on pullup resistors + pinMode(uiKeyNext, INPUT); // set pin to input + digitalWrite(uiKeyNext, HIGH); // turn on pullup resistors + pinMode(uiKeySelect, INPUT); // set pin to input + digitalWrite(uiKeySelect, HIGH); // turn on pullup resistors + pinMode(uiKeyBack, INPUT); // set pin to input + digitalWrite(uiKeyBack, HIGH); // turn on pullup resistors +} + +void uiStep(void) +{ + uiKeyCodeSecond = uiKeyCodeFirst; + if ( digitalRead(uiKeyPrev) == LOW ) + uiKeyCodeFirst = CHESS_KEY_PREV; + else if ( digitalRead(uiKeyNext) == LOW ) + uiKeyCodeFirst = CHESS_KEY_NEXT; + else if ( digitalRead(uiKeySelect) == LOW ) + uiKeyCodeFirst = CHESS_KEY_SELECT; + else if ( digitalRead(uiKeyBack) == LOW ) + uiKeyCodeFirst = CHESS_KEY_BACK; + else + uiKeyCodeFirst = CHESS_KEY_NONE; + + if ( uiKeyCodeSecond == uiKeyCodeFirst ) + uiKeyCode = uiKeyCodeFirst; + else + uiKeyCode = CHESS_KEY_NONE; +} + + +void setup() { + // rotate screen, if required + u8g.setRot180(); + + uiSetup(); + chess_Init(u8g.getU8g(), 0); +} + +void loop() { + uint8_t keyCode = CHESS_KEY_NONE; + + u8g.firstPage(); + do { + chess_Draw(); + uiStep(); + if ( uiKeyCode != CHESS_KEY_NONE ) + keyCode = uiKeyCode; + } while( u8g.nextPage() ); + + u8g_Delay(10); + chess_Step(keyCode); + uiStep(); + keyCode = uiKeyCode; +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Console/Console.pde b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Console/Console.pde new file mode 100644 index 0000000000000000000000000000000000000000..fcf4b74c58a7ad78e443cb72b3232921acc30481 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Console/Console.pde @@ -0,0 +1,230 @@ +/* + + Console.pde + + Read from serial monitor, output to display + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + + +// setup input buffer +#define LINE_MAX 30 +uint8_t line_buf[LINE_MAX] = "U8GLIB Console"; +uint8_t line_pos = 0; + +// setup a text screen to support scrolling +#define ROW_MAX 12 + + +uint8_t screen[ROW_MAX][LINE_MAX]; +uint8_t rows, cols; + +// line height, which matches the selected font (5x7) +#define LINE_PIXEL_HEIGHT 7 + +// clear entire screen, called during setup +void clear_screen(void) { + uint8_t i, j; + for( i = 0; i < ROW_MAX; i++ ) + for( j = 0; j < LINE_MAX; j++ ) + screen[i][j] = 0; +} + +// append a line to the screen, scroll up +void add_line_to_screen(void) { + uint8_t i, j; + for( j = 0; j < LINE_MAX; j++ ) + for( i = 0; i < rows-1; i++ ) + screen[i][j] = screen[i+1][j]; + + for( j = 0; j < LINE_MAX; j++ ) + screen[rows-1][j] = line_buf[j]; +} + +// U8GLIB draw procedure: output the screen +void draw(void) { + uint8_t i, y; + // graphic commands to redraw the complete screen are placed here + y = 0; // reference is the top left -1 position of the string + y--; // correct the -1 position of the drawStr + for( i = 0; i < rows; i++ ) + { + u8g.drawStr( 0, y, (char *)(screen[i])); + y += u8g.getFontLineSpacing(); + } +} + +void exec_line(void) { + // echo line to the serial monitor + Serial.println((const char *)line_buf); + + // add the line to the screen + add_line_to_screen(); + + // U8GLIB picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); +} + +// clear current input buffer +void reset_line(void) { + line_pos = 0; + line_buf[line_pos] = '\0'; +} + +// add a single character to the input buffer +void char_to_line(uint8_t c) { + line_buf[line_pos] = c; + line_pos++; + line_buf[line_pos] = '\0'; +} + +// check serial in and handle the character +void read_line(void) { + if ( Serial.available() ) + { + uint8_t c; + c = Serial.read(); + if ( line_pos >= cols-1 ) { + exec_line(); + reset_line(); + char_to_line(c); + } + else if ( c == '\n' ) { + // ignore '\n' + } + else if ( c == '\r' ) { + exec_line(); + reset_line(); + } + else { + char_to_line(c); + } + } +} + +// Arduino master setup +void setup(void) { + // set font for the console window + u8g.setFont(u8g_font_5x7); + //u8g.setFont(u8g_font_9x15); + + // set upper left position for the string draw procedure + u8g.setFontPosTop(); + + // calculate the number of rows for the display + rows = u8g.getHeight() / u8g.getFontLineSpacing(); + if ( rows > ROW_MAX ) + rows = ROW_MAX; + + // estimate the number of columns for the display + cols = u8g.getWidth() / u8g.getStrWidth("m"); + if ( cols > LINE_MAX-1 ) + cols = LINE_MAX-1; + + clear_screen(); // clear screen + delay(1000); // do some delay + Serial.begin(9600); // init serial + exec_line(); // place the input buffer into the screen + reset_line(); // clear input buffer +} + +// Arduino main loop +void loop(void) { + read_line(); +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/F/F.pde b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/F/F.pde new file mode 100644 index 0000000000000000000000000000000000000000..4cb3b20b76978c42fbc1ae5fa2793727862d9998 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/F/F.pde @@ -0,0 +1,139 @@ +/* + + F.pde + + Example code for the F() macro. + + >>> This example requires Arduino 1.0 and above. + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + +void draw(void) { + // graphic commands to redraw the complete screen should be placed here + + // assign default font + u8g.setFont(u8g_font_unifont); + + // pointer to strings in flash memory can be stored in a special type + const __FlashStringHelper *flash_ptr; + + // the result of the F() macro can be assigned to this pointer + flash_ptr = F("Hello World!"); + + // this pointer can be used as argument to the draw procedures + u8g.drawStr( 0+1, 20+1, flash_ptr); + u8g.drawStr( 0, 20, flash_ptr); + + // of course, the F() macro can be used directly + u8g.drawStr( 0, 40, F("PROGMEM")); + +} + +void setup(void) { + // flip screen, if required + // u8g.setRot180(); +} + +void loop(void) { + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(500); +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/GraphicsTest/GraphicsTest.pde b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/GraphicsTest/GraphicsTest.pde new file mode 100644 index 0000000000000000000000000000000000000000..4e91352097b21592e982fa3b6eb367cacbdc9a0c --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/GraphicsTest/GraphicsTest.pde @@ -0,0 +1,223 @@ +/* + + GraphicsTest.pde + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + +void u8g_prepare(void) { + u8g.setFont(u8g_font_6x10); + u8g.setFontRefHeightExtendedText(); + u8g.setDefaultForegroundColor(); + u8g.setFontPosTop(); +} + +void u8g_box_frame(uint8_t a) { + u8g.drawStr( 0, 0, "drawBox"); + u8g.drawBox(5,10,20,10); + u8g.drawBox(10+a,15,30,7); + u8g.drawStr( 0, 30, "drawFrame"); + u8g.drawFrame(5,10+30,20,10); + u8g.drawFrame(10+a,15+30,30,7); +} + +void u8g_disc_circle(uint8_t a) { + u8g.drawStr( 0, 0, "drawDisc"); + u8g.drawDisc(10,18,9); + u8g.drawDisc(24+a,16,7); + u8g.drawStr( 0, 30, "drawCircle"); + u8g.drawCircle(10,18+30,9); + u8g.drawCircle(24+a,16+30,7); +} + +void u8g_r_frame(uint8_t a) { + u8g.drawStr( 0, 0, "drawRFrame/Box"); + u8g.drawRFrame(5, 10,40,30, a+1); + u8g.drawRBox(50, 10,25,40, a+1); +} + +void u8g_string(uint8_t a) { + u8g.drawStr(30+a,31, " 0"); + u8g.drawStr90(30,31+a, " 90"); + u8g.drawStr180(30-a,31, " 180"); + u8g.drawStr270(30,31-a, " 270"); +} + +void u8g_line(uint8_t a) { + u8g.drawStr( 0, 0, "drawLine"); + u8g.drawLine(7+a, 10, 40, 55); + u8g.drawLine(7+a*2, 10, 60, 55); + u8g.drawLine(7+a*3, 10, 80, 55); + u8g.drawLine(7+a*4, 10, 100, 55); +} + +void u8g_ascii_1() { + char s[2] = " "; + uint8_t x, y; + u8g.drawStr( 0, 0, "ASCII page 1"); + for( y = 0; y < 6; y++ ) { + for( x = 0; x < 16; x++ ) { + s[0] = y*16 + x + 32; + u8g.drawStr(x*7, y*10+10, s); + } + } +} + +void u8g_ascii_2() { + char s[2] = " "; + uint8_t x, y; + u8g.drawStr( 0, 0, "ASCII page 2"); + for( y = 0; y < 6; y++ ) { + for( x = 0; x < 16; x++ ) { + s[0] = y*16 + x + 160; + u8g.drawStr(x*7, y*10+10, s); + } + } +} + + +uint8_t draw_state = 0; + +void draw(void) { + u8g_prepare(); + switch(draw_state >> 3) { + case 0: u8g_box_frame(draw_state&7); break; + case 1: u8g_disc_circle(draw_state&7); break; + case 2: u8g_r_frame(draw_state&7); break; + case 3: u8g_string(draw_state&7); break; + case 4: u8g_line(draw_state&7); break; + case 5: u8g_ascii_1(); break; + case 6: u8g_ascii_2(); break; + } +} + +void setup(void) { + + // flip screen, if required + //u8g.setRot180(); + + // assign default color value + if ( u8g.getMode() == U8G_MODE_R3G3B2 ) + u8g.setColorIndex(255); // white + else if ( u8g.getMode() == U8G_MODE_GRAY2BIT ) + u8g.setColorIndex(3); // max intensity + else if ( u8g.getMode() == U8G_MODE_BW ) + u8g.setColorIndex(1); // pixel on + + //u8g.setContrast(0x30); + + pinMode(13, OUTPUT); + digitalWrite(13, HIGH); +} + +void loop(void) { + + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // increase the state + draw_state++; + if ( draw_state >= 7*8 ) + draw_state = 0; + + // rebuild the picture after some delay + delay(150); + +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/HelloWorld/HelloWorld.pde b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/HelloWorld/HelloWorld.pde new file mode 100644 index 0000000000000000000000000000000000000000..5a00939a34062a9e4b70a82c6a2164fb143fc136 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/HelloWorld/HelloWorld.pde @@ -0,0 +1,136 @@ +/* + + HelloWorld.pde + + "Hello World!" example code. + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + + +void draw(void) { + // graphic commands to redraw the complete screen should be placed here + u8g.setFont(u8g_font_unifont); + //u8g.setFont(u8g_font_osb21); + u8g.drawStr( 0, 22, "Hello World!"); +} + +void setup(void) { + + // flip screen, if required + // u8g.setRot180(); + + // set SPI backup if required + //u8g.setHardwareBackup(u8g_backup_avr_spi); + + // assign default color value + if ( u8g.getMode() == U8G_MODE_R3G3B2 ) + u8g.setColorIndex(255); // white + else if ( u8g.getMode() == U8G_MODE_GRAY2BIT ) + u8g.setColorIndex(3); // max intensity + else if ( u8g.getMode() == U8G_MODE_BW ) + u8g.setColorIndex(1); // pixel on +} + +void loop(void) { + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(500); +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Menu/Menu.pde b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Menu/Menu.pde new file mode 100644 index 0000000000000000000000000000000000000000..fbb0af034c46adeb64939e6d00dd02aceb0e6c12 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Menu/Menu.pde @@ -0,0 +1,234 @@ +/* + + Menu.pde + + Simple Menu Selection + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + + +#define KEY_NONE 0 +#define KEY_PREV 1 +#define KEY_NEXT 2 +#define KEY_SELECT 3 +#define KEY_BACK 4 + +// DOGS102 shield configuration values +//uint8_t uiKeyPrev = 2; +//uint8_t uiKeyNext = 4; +//uint8_t uiKeySelect = 5; +//uint8_t uiKeyBack = 3; + +// DOGM128-Shield configuration values +// DOGXL60-Shield configuration values +uint8_t uiKeyPrev = 7; +uint8_t uiKeyNext = 3; +uint8_t uiKeySelect = 2; +uint8_t uiKeyBack = 8; + +uint8_t uiKeyCodeFirst = KEY_NONE; +uint8_t uiKeyCodeSecond = KEY_NONE; +uint8_t uiKeyCode = KEY_NONE; + + +void uiSetup(void) { + // configure input keys + + pinMode(uiKeyPrev, INPUT); // set pin to input + digitalWrite(uiKeyPrev, HIGH); // turn on pullup resistors + pinMode(uiKeyNext, INPUT); // set pin to input + digitalWrite(uiKeyNext, HIGH); // turn on pullup resistors + pinMode(uiKeySelect, INPUT); // set pin to input + digitalWrite(uiKeySelect, HIGH); // turn on pullup resistors + pinMode(uiKeyBack, INPUT); // set pin to input + digitalWrite(uiKeyBack, HIGH); // turn on pullup resistors +} + +void uiStep(void) { + uiKeyCodeSecond = uiKeyCodeFirst; + if ( digitalRead(uiKeyPrev) == LOW ) + uiKeyCodeFirst = KEY_PREV; + else if ( digitalRead(uiKeyNext) == LOW ) + uiKeyCodeFirst = KEY_NEXT; + else if ( digitalRead(uiKeySelect) == LOW ) + uiKeyCodeFirst = KEY_SELECT; + else if ( digitalRead(uiKeyBack) == LOW ) + uiKeyCodeFirst = KEY_BACK; + else + uiKeyCodeFirst = KEY_NONE; + + if ( uiKeyCodeSecond == uiKeyCodeFirst ) + uiKeyCode = uiKeyCodeFirst; + else + uiKeyCode = KEY_NONE; +} + + +#define MENU_ITEMS 4 +char *menu_strings[MENU_ITEMS] = { "First Line", "Second Item", "3333333", "abcdefg" }; + +uint8_t menu_current = 0; +uint8_t menu_redraw_required = 0; +uint8_t last_key_code = KEY_NONE; + + +void drawMenu(void) { + uint8_t i, h; + u8g_uint_t w, d; + + u8g.setFont(u8g_font_6x13); + u8g.setFontRefHeightText(); + u8g.setFontPosTop(); + + h = u8g.getFontAscent()-u8g.getFontDescent(); + w = u8g.getWidth(); + for( i = 0; i < MENU_ITEMS; i++ ) { + d = (w-u8g.getStrWidth(menu_strings[i]))/2; + u8g.setDefaultForegroundColor(); + if ( i == menu_current ) { + u8g.drawBox(0, i*h+1, w, h); + u8g.setDefaultBackgroundColor(); + } + u8g.drawStr(d, i*h, menu_strings[i]); + } +} + +void updateMenu(void) { + if ( uiKeyCode != KEY_NONE && last_key_code == uiKeyCode ) { + return; + } + last_key_code = uiKeyCode; + + switch ( uiKeyCode ) { + case KEY_NEXT: + menu_current++; + if ( menu_current >= MENU_ITEMS ) + menu_current = 0; + menu_redraw_required = 1; + break; + case KEY_PREV: + if ( menu_current == 0 ) + menu_current = MENU_ITEMS; + menu_current--; + menu_redraw_required = 1; + break; + } +} + + +void setup() { + // rotate screen, if required + // u8g.setRot180(); + + uiSetup(); // setup key detection and debounce algorithm + menu_redraw_required = 1; // force initial redraw +} + +void loop() { + + uiStep(); // check for key press + + if ( menu_redraw_required != 0 ) { + u8g.firstPage(); + do { + drawMenu(); + } while( u8g.nextPage() ); + menu_redraw_required = 0; + } + + updateMenu(); // update menu bar + +} diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/PrintTest/PrintTest.pde b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/PrintTest/PrintTest.pde new file mode 100644 index 0000000000000000000000000000000000000000..7535c22f192c7d77609b79a7f8d3696e0d76ec69 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/PrintTest/PrintTest.pde @@ -0,0 +1,124 @@ +/* + + PrintTest.pde + + How to use the base class "Print" + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + +void draw(void) { + // graphic commands to redraw the complete screen should be placed here + u8g.setFont(u8g_font_unifont); + u8g.setPrintPos(0, 20); + // call procedure from base class, http://arduino.cc/en/Serial/Print + u8g.print("Hello World!"); +} + +void setup(void) { + // flip screen, if required + // u8g.setRot180(); +} + +void loop(void) { + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(500); +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Rotation/Rotation.pde b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Rotation/Rotation.pde new file mode 100644 index 0000000000000000000000000000000000000000..424b7bfb61fbde13527b9917d04d37925a4833a7 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Rotation/Rotation.pde @@ -0,0 +1,152 @@ +/* + + HelloWorld.pde + + "Hello World!" example code. + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + +uint8_t offset = 0; + +void draw(void) { + // graphic commands to redraw the complete screen should be placed here + u8g.setFont(u8g_font_unifont); + u8g.drawStr( 0+0, 20+0, "Hello!"); + u8g.drawStr( 0+2, 20+16, "Hello!"); + + u8g.drawBox(0, 0, 3, 3); + u8g.drawBox(u8g.getWidth()-6, 0, 6, 6); + u8g.drawBox(u8g.getWidth()-9, u8g.getHeight()-9, 9, 9); + u8g.drawBox(0, u8g.getHeight()-12, 12, 12); +} + +void setup(void) { +} + + +void rotate(void) { + static uint8_t dir = 0; + static unsigned long next_rotation = 0; + + if ( next_rotation < millis() ) + { + switch(dir) { + case 0: u8g.undoRotation(); break; + case 1: u8g.setRot90(); break; + case 2: u8g.setRot180(); break; + case 3: u8g.setRot270(); offset = ( offset + 1 ) & 0x0f; break; + } + + dir++; + dir &= 3; + next_rotation = millis(); + next_rotation += 1000; + } +} + +void loop(void) { + // screen rotation + rotate(); + + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(100); +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Scale/Scale.pde b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Scale/Scale.pde new file mode 100644 index 0000000000000000000000000000000000000000..ce87c76fa1e44f84e2a99e0e4eccbe43981e4371 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/Scale/Scale.pde @@ -0,0 +1,141 @@ +/* + + HelloWorld.pde + + "Hello World!" example code. + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + + +void draw(void) { + // graphic commands to redraw the complete screen should be placed here + u8g.setFont(u8g_font_unifont); + u8g.setFontPosTop(); + u8g.drawStr(0, 1, "Hello"); + u8g.drawHLine(0, 1+14, 40); + u8g.setScale2x2(); // Scale up all draw procedures + u8g.drawStr(0, 12, "Hello"); // actual display position is (0,24) + u8g.drawHLine(0, 12+14, 40); // All other procedures are also affected + u8g.undoScale(); // IMPORTANT: Switch back to normal mode +} + +void setup(void) { + + // flip screen, if required + u8g.setRot180(); + + // set SPI backup if required + //u8g.setHardwareBackup(u8g_backup_avr_spi); + + // assign default color value + if ( u8g.getMode() == U8G_MODE_R3G3B2 ) + u8g.setColorIndex(255); // white + else if ( u8g.getMode() == U8G_MODE_GRAY2BIT ) + u8g.setColorIndex(3); // max intensity + else if ( u8g.getMode() == U8G_MODE_BW ) + u8g.setColorIndex(1); // pixel on +} + +void loop(void) { + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(500); +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/TextRotX/TextRotX.pde b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/TextRotX/TextRotX.pde new file mode 100644 index 0000000000000000000000000000000000000000..718fd821c88f3953aaa1df0beca29ded7898e1e5 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/TextRotX/TextRotX.pde @@ -0,0 +1,154 @@ +/* + + TextRotX.pde + + Text rotation example code. + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + +// graphic commands to redraw the complete screen should be placed here +void draw(void) { + u8g_uint_t mx, my; + + mx = u8g.getWidth(); + mx >>= 1; + + my = u8g.getHeight(); + my >>= 1; + + u8g.drawStr( mx, my, "Ag"); + u8g.drawStr90( mx, my, "Ag"); + u8g.drawStr180( mx, my, "Ag"); + u8g.drawStr270( mx, my, "Ag"); +} + +void setup(void) { + u8g.setFont(u8g_font_9x18); +} + +void change_font_pos(void) { + static uint8_t dir = 0; + static unsigned long next = 0; + + if ( next < millis() ) + { + switch(dir) { + case 0: u8g.setFontPosBottom(); break; + case 1: u8g.setFontPosBaseline(); break; + case 2: u8g.setFontPosCenter(); break; + case 3: u8g.setFontPosTop(); break; + } + + dir++; + dir &= 3; + next = millis(); + next += 1000; + } +} + +void loop(void) { + // change the font position + change_font_pos(); + + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(100); +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/U8gLogo/U8gLogo.pde b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/U8gLogo/U8gLogo.pde new file mode 100644 index 0000000000000000000000000000000000000000..78c866f0fe224b5f472d3f3c2c10de94308d4836 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/U8gLogo/U8gLogo.pde @@ -0,0 +1,179 @@ +/* + + U8gLogo.pde + + Put the U8GLIB logo on the display. + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + + +void drawColorBox(void) +{ + u8g_uint_t w,h; + u8g_uint_t r, g, b; + + w = u8g.getWidth()/32; + h = u8g.getHeight()/8; + for( b = 0; b < 4; b++ ) + for( g = 0; g < 8; g++ ) + for( r = 0; r < 8; r++ ) + { + u8g.setColorIndex((r<<5) | (g<<2) | b ); + u8g.drawBox(g*w + b*w*8, r*h, w, h); + } +} + +void drawLogo(uint8_t d) +{ + u8g.setFont(u8g_font_gdr25r); + u8g.drawStr(0+d, 30+d, "U"); + u8g.setFont(u8g_font_gdr30n); + u8g.drawStr90(23+d,10+d,"8"); + u8g.setFont(u8g_font_gdr25r); + u8g.drawStr(53+d,30+d,"g"); + + u8g.drawHLine(2+d, 35+d, 47); + u8g.drawVLine(45+d, 32+d, 12); +} + +void drawURL(void) +{ + u8g.setFont(u8g_font_4x6); + if ( u8g.getHeight() < 59 ) + { + u8g.drawStr(53,9,"code.google.com"); + u8g.drawStr(77,18,"/p/u8glib"); + } + else + { + u8g.drawStr(1,54,"code.google.com/p/u8glib"); + } +} + + +void draw(void) { + if ( u8g.getMode() == U8G_MODE_R3G3B2 ) { + drawColorBox(); + } + u8g.setColorIndex(1); + if ( U8G_MODE_GET_BITS_PER_PIXEL(u8g.getMode()) > 1 ) { + drawLogo(2); + u8g.setColorIndex(2); + drawLogo(1); + u8g.setColorIndex(3); + } + drawLogo(0); + drawURL(); + +} + +void setup(void) { + // flip screen, if required + //u8g.setRot180(); +} + +void loop(void) { + + // picture loop + u8g.firstPage(); + do { + draw(); + u8g.setColorIndex(1); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(200); +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/XBM/XBM.pde b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/XBM/XBM.pde new file mode 100644 index 0000000000000000000000000000000000000000..44dd720d928ef4ce87f27039a6c8de8c2f9db4f9 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/examples/XBM/XBM.pde @@ -0,0 +1,136 @@ +/* + + XBM.pde + + drawXBM example code. + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + +#define u8g_logo_width 38 +#define u8g_logo_height 24 +//static unsigned char u8g_logo_bits[] = { +static unsigned char u8g_logo_bits[] U8G_PROGMEM = { + 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xe0, 0xe0, + 0xff, 0xff, 0x3f, 0xe3, 0xe1, 0xff, 0xff, 0x3f, 0xf3, 0xf1, 0xff, 0xff, + 0x3f, 0xf3, 0xf1, 0xfe, 0xbf, 0x37, 0xf3, 0x11, 0x1c, 0x1f, 0x30, 0xf3, + 0x01, 0x08, 0x8c, 0x20, 0xf3, 0x01, 0x00, 0xc0, 0x39, 0xf3, 0x81, 0xc7, + 0xc1, 0x39, 0xf3, 0xc1, 0xc7, 0xc9, 0x38, 0xf3, 0xc1, 0xc3, 0x19, 0x3c, + 0xe3, 0x89, 0x01, 0x98, 0x3f, 0xc7, 0x18, 0x00, 0x08, 0x3e, 0x0f, 0x3c, + 0x70, 0x1c, 0x30, 0x3f, 0xff, 0xfc, 0x87, 0x31, 0xff, 0xff, 0xbf, 0xc7, + 0x23, 0x01, 0x00, 0x00, 0xc6, 0x23, 0x03, 0x00, 0x00, 0x0e, 0x30, 0xff, + 0xff, 0x3f, 0x1f, 0x3c, 0xff, 0xff, 0x3f, 0xff, 0x3f, 0xff, 0xff, 0x3f, + 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0x3f }; + +void draw(void) { + // graphic commands to redraw the complete screen should be placed here + u8g.drawXBMP( 0, 0, u8g_logo_width, u8g_logo_height, u8g_logo_bits); +} + +void setup(void) { + // flip screen, if required + // u8g.setRot180(); +} + +void loop(void) { + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(500); +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/license.txt b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/license.txt new file mode 100644 index 0000000000000000000000000000000000000000..c9eea75c4d444f273a2e2d258487ea7e8c304259 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/license.txt @@ -0,0 +1,80 @@ + +The U8glib code (http://code.google.com/p/u8glib/) is licensed under the terms of +the new-bsd license (two-clause bsd license). +See also: http://www.opensource.org/licenses/bsd-license.php + +The repository and optionally the releases contain icons, which are +derived from the WPZOOM Developer Icon Set: +http://www.wpzoom.com/wpzoom/new-freebie-wpzoom-developer-icon-set-154-free-icons/ +WPZOOM Developer Icon Set by WPZOOM is licensed under a Creative Commons +Attribution-ShareAlike 3.0 Unported License. + +Fonts are licensed under different conditions. +See http://code.google.com/p/u8glib/wiki/fontgroup for +detailed information on the licensing conditions for each font. + +============ X11 Fonts COUR, HELV, NCEN, TIM, SYMB ============ + +For fonts derived from the following files, the license below applies. +COURB08.BDF COURB10.BDF COURB12.BDF COURB14.BDF COURB18.BDF +COURB24.BDF COURR08.BDF COURR10.BDF COURR12.BDF COURR14.BDF +COURR18.BDF COURR24.BDF HELVB08.BDF HELVB10.BDF HELVB12.BDF HELVB14.BDF +HELVB18.BDF HELVB24.BDF HELVR08.BDF HELVR10.BDF HELVR12.BDF HELVR14.BDF +HELVR18.BDF HELVR24.BDF NCENB08.BDF NCENB10.BDF NCENB12.BDF +NCENB14.BDF NCENB18.BDF NCENB24.BDF NCENR08.BDF NCENR10.BDF +NCENR12.BDF NCENR14.BDF NCENR18.BDF NCENR24.BDF SYMB08.BDF SYMB10.BDF +SYMB12.BDF SYMB14.BDF SYMB18.BDF SYMB24.BDF TIMB08.BDF TIMB10.BDF +TIMB12.BDF TIMB14.BDF TIMB18.BDF TIMB24.BDF TIMR08.BDF TIMR10.BDF +TIMR12.BDF TIMR14.BDF TIMR18.BDF TIMR24.BDF + +Copyright 1984-1989, 1994 Adobe Systems Incorporated. +Copyright 1988, 1994 Digital Equipment Corporation. + +Adobe is a trademark of Adobe Systems Incorporated which may be +registered in certain jurisdictions. +Permission to use these trademarks is hereby granted only in +association with the images described in this file. + +Permission to use, copy, modify, distribute and sell this software +and its documentation for any purpose and without fee is hereby +granted, provided that the above copyright notices appear in all +copies and that both those copyright notices and this permission +notice appear in supporting documentation, and that the names of +Adobe Systems and Digital Equipment Corporation not be used in +advertising or publicity pertaining to distribution of the software +without specific, written prior permission. Adobe Systems and +Digital Equipment Corporation make no representations about the +suitability of this software for any purpose. It is provided "as +is" without express or implied warranty. + + +============ BSD License for U8glib Code ============ + +Universal 8bit Graphics Library (http://code.google.com/p/u8glib/) + +Copyright (c) 2011, olikraus@gmail.com +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND +CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/chessengine.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/chessengine.c new file mode 100644 index 0000000000000000000000000000000000000000..4a8758c38235fa19f4ae2bca5911e4c1c24f4335 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/chessengine.c @@ -0,0 +1,2392 @@ +/* + chessengine.c + + "Little Rook Chess" (lrc) + + Port to u8g library + + chess for embedded 8-Bit controllers + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Note: + UNIX_MAIN --> unix console executable + + Current Rule Limitation + - no minor promotion, only "Queening" of the pawn + - threefold repetition is not detected (same board situation appears three times) + Note: Could be implemented, but requires tracking of the complete game + - Fifty-move rule is not checked (no pawn move, no capture within last 50 moves) + + Words + Ply a half move + + General Links + http://chessprogramming.wikispaces.com/ + + Arduino specific + http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1260055596 + + Prefixes + chess_ Generic Chess Application Interface + ce_ Chess engine, used internally, these function should not be called directly + cu_ Chess utility function + stack_ Internal function for stack handling + + Issues + 10.01.2011 + - castling to the right does not move the rook + --> done + - castling to the left: King can only move two squares + --> done + + 11.01.2011 + Next Steps: + - replace stack_NextCurrentPos with cu_NextPos, cleanup code according to the loop variable + --> done + - Castling: Need to check for fields under attack + --> done + + - Check for WIN / LOSE situation, perhaps call ce_Eval() once on the top-level board setup + just after the real move + - cleanup cu_Move + --> almost done + - add some heuristics to the eval procedure + - add right side menu + --> done + - clean up chess_ManualMove + --> done + - finish menu (consider is_game_end, undo move) + - end condition: if KING is under attack and if KING can not move to a field which is under attack... + then the game is lost. What will be returned by the Eval procedure? is it -INF? + --> finished + + - reduce the use of variable color, all should be reduced to board_orientation and ply&1 + + - chess_GetNextMarked shoud make use of cu_NextPos + --> done + - chess_ManualMove: again cleanup, solve draw issue (KING is not in check and no legal moves are available) + --> done + 22.01.2011 + - simplify eval_t ce_Eval(void) + - position eval does not work, still moves side pawn :-( + maybe because all pieces are considered + --> done + +*/ + +#include "u8g.h" + +//#ifndef __unix__ +//#else +//#include +//#define U8G_NOINLINE +//#endif + +/* +SAN identifies each piece by a single upper case letter. The standard English +values: pawn = "P", knight = "N", bishop = "B", rook = "R", queen = "Q", and +king = "K". +*/ + +/* numbers for the various pieces */ +#define PIECE_NONE 0 +#define PIECE_PAWN 1 +#define PIECE_KNIGHT 2 +#define PIECE_BISHOP 3 +#define PIECE_ROOK 4 +#define PIECE_QUEEN 5 +#define PIECE_KING 6 + +/* color definitions */ +#define COLOR_WHITE 0 +#define COLOR_BLACK 1 + +/* a mask, which includes COLOR and PIECE number */ +#define COLOR_PIECE_MASK 0x01f + +#define CP_MARK_MASK 0x20 + +#define ILLEGAL_POSITION 255 + +/* This is the build in upper limit of the search stack */ +/* This value defines the amount of memory allocated for the search stack */ +/* The search depth of this chess engine can never exceed this value */ +#define STACK_MAX_SIZE 5 + +/* chess half move stack: twice the number of undo's, a user can do */ +#define CHM_USER_SIZE 6 + +/* the CHM_LIST_SIZE must be larger than the maximum search depth */ +/* the overall size of ste half move stack */ +#define CHM_LIST_SIZE (STACK_MAX_SIZE+CHM_USER_SIZE+2) + +typedef int16_t eval_t; /* a variable type to store results from the evaluation */ +//#define EVAL_T_LOST -32768 +#define EVAL_T_MIN -32767 +#define EVAL_T_MAX 32767 +//#define EVAL_T_WIN 32767 + +/* for maintainance of our own stack: this is the definition of one element on the stack */ +struct _stack_element_struct +{ + /* the current source position which is investigated */ + uint8_t current_pos; + uint8_t current_cp; + uint8_t current_color; /* COLOR_WHITE or COLOR_BLACK: must be predefines */ + + /* the move which belongs to that value, both values are game positions */ + uint8_t best_from_pos; + uint8_t best_to_pos; + /* the best value, which has been dicovered so far */ + eval_t best_eval; +}; +typedef struct _stack_element_struct stack_element_t; +typedef struct _stack_element_struct *stack_element_p; + +/* chess half move history */ +struct _chm_struct +{ + uint8_t main_cp; /* the main piece, which is moved */ + uint8_t main_src; /* the source position of the main piece */ + uint8_t main_dest; /* the destination of the main piece */ + + uint8_t other_cp; /* another piece: the captured one, the ROOK in case of castling or PIECE_NONE */ + uint8_t other_src; /* the delete position of other_cp. Often identical to main_dest except for e.p. and castling */ + uint8_t other_dest; /* only used for castling: ROOK destination pos */ + + /* the position of the last pawn, which did a double move forward */ + /* this is required to check en passant conditions */ + /* this array can be indexed by the color of the current player */ + /* this is the condition BEFORE the move was done */ + uint8_t pawn_dbl_move[2]; + + /* flags for the movement of rook and king; required for castling */ + /* a 1 means: castling is (still) possible */ + /* a 0 means: castling not possible */ + /* bit 0 left side white */ + /* bit 1 right side white */ + /* bit 2 left side black */ + /* bit 3 right side black */ + /* this is the condition BEFORE the move was done */ + uint8_t castling_possible; +}; + +typedef struct _chm_struct chm_t; +typedef struct _chm_struct *chm_p; + +/* little rook chess, main structure */ +struct _lrc_struct +{ + /* half-move (ply) counter: Counts the number of half-moves so far. Starts with 0 */ + /* the lowest bit is used to derive the color of the current player */ + /* will be set to zero in chess_SetupBoard() */ + uint8_t ply_count; + + /* the half move stack position counter, counts the number of elements in chm_list */ + uint8_t chm_pos; + + /* each element contains a colored piece, empty fields have value 0 */ + /* the field with index 0 is black (lower left) */ + uint8_t board[64]; + /* the position of the last pawn, which did a double move forward */ + /* this is required to check en passant conditions */ + /* this array can be indexed by the color of the current player */ + uint8_t pawn_dbl_move[2]; + + /* flags for the movement of rook and king; required for castling */ + /* a 1 means: castling is (still) possible */ + /* a 0 means: castling not possible */ + /* bit 0 left side white */ + /* bit 1 right side white */ + /* bit 2 left side black */ + /* bit 3 right side black */ + uint8_t castling_possible; + + /* board orientation */ + /* 0: white is below COLOR_WHITE */ + /* 1: black is below COLOR_BLACK */ + /* bascially, this can be used as a color */ + uint8_t orientation; + + /* exchange colors of the pieces */ + /* 0: white has an empty body, use this for bright background color */ + /* 1: black has an empty body, use this for dark backround color */ + uint8_t strike_out_color; + + /* 0, when the game is ongoing */ + /* 1, when the game is stopped (lost or draw) */ + uint8_t is_game_end; + /* the color of the side which lost the game */ + /* this value is only valid, when is_game_end is not 0 */ + /* values 0 and 1 represent WHITE and BLACK, 2 means a draw */ + uint8_t lost_side_color; + + + + /* checks are executed in ce_LoopRecur */ + /* these checks will put some marks on the board */ + /* this will be used by the interface to find out */ + /* legal moves */ + uint8_t check_src_pos; + uint8_t check_mode; /* CHECK_MODE_NONE, CHECK_MODE_MOVEABLE, CHECK_MODE_TARGET_MOVE */ + + + /* count of the attacking pieces, indexed by color */ + uint8_t find_piece_cnt[2]; + + /* sum of the attacking pieces, indexed by color */ + uint8_t find_piece_weight[2]; + + /* points to the current element of the search stack */ + /* this stack is NEVER empty. The value 0 points to the first element of the stack */ + /* actually "curr_depth" represent half-moves (plies) */ + uint8_t curr_depth; + uint8_t max_depth; + stack_element_p curr_element; + + /* allocated memory for the search stack */ + stack_element_t stack_memory[STACK_MAX_SIZE]; + + /* the half move stack, used for move undo and depth search, size is stored in chm_pos */ + chm_t chm_list[CHM_LIST_SIZE]; +}; +typedef struct _lrc_struct lrc_t; + +#define CHECK_MODE_NONE 0 +#define CHECK_MODE_MOVEABLE 1 +#define CHECK_MODE_TARGET_MOVE 2 + + + +/*==============================================================*/ +/* global variables */ +/*==============================================================*/ + +u8g_t *lrc_u8g; + +lrc_t lrc_obj; + + +/*==============================================================*/ +/* forward declarations */ +/*==============================================================*/ + +/* + apply no inline to some of the functions: + avr-gcc very often inlines functions, however not inline saves a lot of program memory! + On the other hand there are some really short procedures which should be inlined (like cp_GetColor) + These procedures are marked static to prevent the generation of the expanded procedure, which + also saves space. +*/ + +uint8_t stack_Push(uint8_t color) U8G_NOINLINE; +void stack_Pop(void) U8G_NOINLINE; +void stack_InitCurrElement(void) U8G_NOINLINE; +void stack_Init(uint8_t max) U8G_NOINLINE; +void stack_SetMove(eval_t val, uint8_t to_pos) U8G_NOINLINE; +uint8_t cu_NextPos(uint8_t pos) U8G_NOINLINE; +static uint8_t cu_gpos2bpos(uint8_t gpos); +static uint8_t cp_Construct(uint8_t color, uint8_t piece); +static uint8_t cp_GetPiece(uint8_t cp); +static uint8_t cp_GetColor(uint8_t cp); +uint8_t cp_GetFromBoard(uint8_t pos) U8G_NOINLINE; +void cp_SetOnBoard(uint8_t pos, uint8_t cp) U8G_NOINLINE; + +void cu_ClearBoard(void) U8G_NOINLINE; +void chess_SetupBoard(void) U8G_NOINLINE; +eval_t ce_Eval(void); + +void cu_ClearMoveHistory(void) U8G_NOINLINE; +void cu_ReduceHistoryByFullMove(void) U8G_NOINLINE; +void cu_UndoHalfMove(void) U8G_NOINLINE; +chm_p cu_PushHalfMove(void) U8G_NOINLINE; + + +void ce_CalculatePositionWeight(uint8_t pos); +uint8_t ce_GetPositionAttackWeight(uint8_t pos, uint8_t color); + +void chess_Thinking(void); +void ce_LoopPieces(void); + + +/*==============================================================*/ +/* search stack */ +/*==============================================================*/ + +/* get current element from stack */ +stack_element_p stack_GetCurrElement(void) +{ + return lrc_obj.curr_element; +} + +uint8_t stack_Push(uint8_t color) +{ + if ( lrc_obj.curr_depth == lrc_obj.max_depth ) + return 0; + lrc_obj.curr_depth++; + lrc_obj.curr_element = lrc_obj.stack_memory+lrc_obj.curr_depth; + + /* change view for the evaluation */ + color ^= 1; + stack_GetCurrElement()->current_color = color; + + return 1; +} + +void stack_Pop(void) +{ + lrc_obj.curr_depth--; + lrc_obj.curr_element = lrc_obj.stack_memory+lrc_obj.curr_depth; +} + +/* reset the current element on the stack */ +void stack_InitCurrElement(void) +{ + stack_element_p e = stack_GetCurrElement(); + e->best_eval = EVAL_T_MIN; + e->best_from_pos = ILLEGAL_POSITION; + e->best_to_pos = ILLEGAL_POSITION; +} + +/* resets the search stack (and the check mode) */ +void stack_Init(uint8_t max) +{ + lrc_obj.curr_depth = 0; + lrc_obj.curr_element = lrc_obj.stack_memory; + lrc_obj.max_depth = max; + lrc_obj.check_mode = CHECK_MODE_NONE; + stack_InitCurrElement(); + stack_GetCurrElement()->current_color = lrc_obj.ply_count; + stack_GetCurrElement()->current_color &= 1; +} + +/* assign evaluation value and store the move, if this is the best move */ +/* assumes, that current_pos contains the source position */ +void stack_SetMove(eval_t val, uint8_t to_pos) +{ + stack_element_p e = stack_GetCurrElement(); + if ( e->best_eval < val ) + { + e->best_eval = val; + e->best_from_pos = e->current_pos; + e->best_to_pos = to_pos; + } +} + +/* + calculate next position on a 0x88 board + loop is constructed in this way: + i = 0; + do + { + ... + i = cu_NextPos(i); + } while( i != 0 ); + + next pos might be started with an illegal position like 255 +*/ +uint8_t cu_NextPos(uint8_t pos) +{ + /* calculate next gpos */ + pos++; + if ( ( pos & 0x08 ) != 0 ) + { + pos+= 0x10; + pos&= 0xf0; + } + if ( ( pos & 0x80 ) != 0 ) + pos = 0; + return pos; +} + +uint8_t cu_PrevPos(uint8_t pos) +{ + /* calculate prev gpos */ + pos--; + if ( ( pos & 0x80 ) != 0 ) + pos = 0x077; + else if ( ( pos & 0x08 ) != 0 ) + { + pos &= 0xf0; + pos |= 0x07; + } + return pos; +} + + +/*==============================================================*/ +/* position transltion */ +/*==============================================================*/ +/* + there are two positions + 1. game position (gpos): BCD encoded x-y values + 2. board position (bpos): a number between 0 and 63, only used to access the board. +*/ +/* + gpos: game position value + returns: board position + note: does not do any checks +*/ +static uint8_t cu_gpos2bpos(uint8_t gpos) +{ + uint8_t bpos = gpos; + bpos &= 0xf0; + bpos >>= 1; + gpos &= 0x0f; + bpos |= gpos; + return bpos; +} + +#define gpos_IsIllegal(gpos) ((gpos) & 0x088) + + +/*==============================================================*/ +/* colored piece handling */ +/*==============================================================*/ + +#define cp_IsMarked(cp) ((cp) & CP_MARK_MASK) + + +/* + piece: one of PIECE_xxx + color: COLOR_WHITE or COLOR_BLACK + + returns: A colored piece +*/ +static uint8_t cp_Construct(uint8_t color, uint8_t piece) +{ + color <<= 4; + color |= piece; + return color; +} + +/* inline is better than a macro */ +static uint8_t cp_GetPiece(uint8_t cp) +{ + cp &= 0x0f; + return cp; +} + +/* + we could use a macro: + #define cp_GetColor(cp) (((cp) >> 4)&1) + however, inlined functions are sometimes much better +*/ +static uint8_t cp_GetColor(uint8_t cp) +{ + cp >>= 4; + cp &= 1; + return cp; +} + +/* + pos: game position + returns the colored piece at the given position +*/ +uint8_t cp_GetFromBoard(uint8_t pos) +{ + return lrc_obj.board[cu_gpos2bpos(pos)]; +} + +/* + pos: game position + cp: colored piece +*/ +void cp_SetOnBoard(uint8_t pos, uint8_t cp) +{ + /*printf("cp_SetOnBoard gpos:%02x cp:%02x\n", pos, cp);*/ + lrc_obj.board[cu_gpos2bpos(pos)] = cp; +} + +/*==============================================================*/ +/* global board access */ +/*==============================================================*/ + +void cu_ClearBoard(void) +{ + uint8_t i; + /* clear the board */ + for( i = 0; i < 64; i++ ) + lrc_obj.board[i] = PIECE_NONE; + + lrc_obj.ply_count = 0; + lrc_obj.orientation = COLOR_WHITE; + + lrc_obj.pawn_dbl_move[0] = ILLEGAL_POSITION; + lrc_obj.pawn_dbl_move[1] = ILLEGAL_POSITION; + + lrc_obj.castling_possible = 0x0f; + + lrc_obj.is_game_end = 0; + lrc_obj.lost_side_color = 0; + + /* clear half move history */ + cu_ClearMoveHistory(); + +} + +/* + test setup + white wins in one move +*/ +void chess_SetupBoardTest01(void) +{ + cu_ClearBoard(); + lrc_obj.board[7+7*8] = cp_Construct(COLOR_BLACK, PIECE_KING); + lrc_obj.board[7+5*8] = cp_Construct(COLOR_WHITE, PIECE_PAWN); + lrc_obj.board[3] = cp_Construct(COLOR_WHITE, PIECE_KING); + lrc_obj.board[0+7*8] = cp_Construct(COLOR_BLACK, PIECE_ROOK); + lrc_obj.board[6] = cp_Construct(COLOR_WHITE, PIECE_QUEEN); +} + +/* setup the global board */ +void chess_SetupBoard(void) +{ + uint8_t i; + register uint8_t bp, wp; + + /* clear the board */ + cu_ClearBoard(); + + /* precronstruct pawns */ + wp = cp_Construct(COLOR_WHITE, PIECE_PAWN); + bp = cp_Construct(COLOR_BLACK, PIECE_PAWN); + + /* setup pawn */ + for( i = 0; i < 8; i++ ) + { + lrc_obj.board[i+8] = wp; + lrc_obj.board[i+6*8] = bp; + } + + /* assign remaining pieces */ + + lrc_obj.board[0] = cp_Construct(COLOR_WHITE, PIECE_ROOK); + lrc_obj.board[1] = cp_Construct(COLOR_WHITE, PIECE_KNIGHT); + lrc_obj.board[2] = cp_Construct(COLOR_WHITE, PIECE_BISHOP); + lrc_obj.board[3] = cp_Construct(COLOR_WHITE, PIECE_QUEEN); + lrc_obj.board[4] = cp_Construct(COLOR_WHITE, PIECE_KING); + lrc_obj.board[5] = cp_Construct(COLOR_WHITE, PIECE_BISHOP); + lrc_obj.board[6] = cp_Construct(COLOR_WHITE, PIECE_KNIGHT); + lrc_obj.board[7] = cp_Construct(COLOR_WHITE, PIECE_ROOK); + + lrc_obj.board[0+7*8] = cp_Construct(COLOR_BLACK, PIECE_ROOK); + lrc_obj.board[1+7*8] = cp_Construct(COLOR_BLACK, PIECE_KNIGHT); + lrc_obj.board[2+7*8] = cp_Construct(COLOR_BLACK, PIECE_BISHOP); + lrc_obj.board[3+7*8] = cp_Construct(COLOR_BLACK, PIECE_QUEEN); + lrc_obj.board[4+7*8] = cp_Construct(COLOR_BLACK, PIECE_KING); + lrc_obj.board[5+7*8] = cp_Construct(COLOR_BLACK, PIECE_BISHOP); + lrc_obj.board[6+7*8] = cp_Construct(COLOR_BLACK, PIECE_KNIGHT); + lrc_obj.board[7+7*8] = cp_Construct(COLOR_BLACK, PIECE_ROOK); + + //chess_SetupBoardTest01(); + +} + + + +/*==============================================================*/ +/* checks */ +/*==============================================================*/ + +/* + checks if the position is somehow illegal +*/ +uint8_t cu_IsIllegalPosition(uint8_t pos, uint8_t my_color) +{ + uint8_t board_cp; + /* check, if the position is offboard */ + if ( gpos_IsIllegal(pos) != 0 ) + return 1; + /* get the piece from the board */ + board_cp = cp_GetFromBoard(pos); + /* check if hit our own pieces */ + if ( board_cp != 0 ) + if ( cp_GetColor(board_cp) == my_color ) + return 1; + /* all ok, we could go to this position */ + return 0; +} + +/*==============================================================*/ +/* evaluation procedure */ +/*==============================================================*/ + +/* + basic idea is to return a value between EVAL_T_MIN and EVAL_T_MAX +*/ + +/* + the weight table uses the PIECE number as index: + #define PIECE_NONE 0 + #define PIECE_PAWN 1 + #define PIECE_KNIGHT 2 + #define PIECE_BISHOP 3 + #define PIECE_ROOK 4 + #define PIECE_QUEEN 5 + #define PIECE_KING 6 + the king itself is not counted +*/ +uint8_t ce_piece_weight[] = { 0, 1, 3, 3, 5, 9, 0 }; +uint8_t ce_pos_weight[] = { 0, 1, 1, 2, 2, 1, 1, 0}; +/* + evaluate the current situation on the global board +*/ +eval_t ce_Eval(void) +{ + uint8_t cp; + uint8_t is_my_king_present = 0; + uint8_t is_opposit_king_present = 0; + eval_t material_my_color = 0; + eval_t material_opposit_color = 0; + eval_t position_my_color = 0; + eval_t position_opposit_color = 0; + eval_t result; + uint8_t pos; + + pos = 0; + do + { + /* get colored piece from the board */ + cp = cp_GetFromBoard(pos); + + if ( cp_GetPiece(cp) != PIECE_NONE ) + { + if ( stack_GetCurrElement()->current_color == cp_GetColor(cp) ) + { + /* this is our color */ + /* check if we found our king */ + if ( cp_GetPiece(cp) == PIECE_KING ) + is_my_king_present = 1; + material_my_color += ce_piece_weight[cp_GetPiece(cp)]; + if ( cp_GetPiece(cp) == PIECE_PAWN || cp_GetPiece(cp) == PIECE_KNIGHT ) + { + position_my_color += ce_pos_weight[pos&7]*ce_pos_weight[(pos>>4)&7]; + } + } + else + { + /* this is the opposit color */ + if ( cp_GetPiece(cp) == PIECE_KING ) + is_opposit_king_present = 1; + material_opposit_color += ce_piece_weight[cp_GetPiece(cp)]; + if ( cp_GetPiece(cp) == PIECE_PAWN || cp_GetPiece(cp) == PIECE_KNIGHT ) + { + position_opposit_color += ce_pos_weight[pos&7]*ce_pos_weight[(pos>>4)&7]; + } + } + } + pos = cu_NextPos(pos); + } while( pos != 0 ); + + + /* decide if we lost or won the game */ + if ( is_my_king_present == 0 ) + return EVAL_T_MIN; /*_LOST*/ + if ( is_opposit_king_present == 0 ) + return EVAL_T_MAX; /*_WIN*/ + + /* here is the evaluation function */ + + result = material_my_color - material_opposit_color; + result <<= 3; + result += position_my_color - position_opposit_color; + return result; +} + +/*==============================================================*/ +/* move backup and restore */ +/*==============================================================*/ + + +/* this procedure must be called to keep the size as low as possible */ +/* if the chm_list is large enough, it could hold the complete history */ +/* but for an embedded controler... it is deleted for every engine search */ +void cu_ClearMoveHistory(void) +{ + lrc_obj.chm_pos = 0; +} + +void cu_ReduceHistoryByFullMove(void) +{ + uint8_t i; + while( lrc_obj.chm_pos > CHM_USER_SIZE ) + { + i = 0; + for(;;) + { + if ( i+2 >= lrc_obj.chm_pos ) + break; + lrc_obj.chm_list[i] = lrc_obj.chm_list[i+2]; + i++; + } + lrc_obj.chm_pos -= 2; + } +} + +void cu_UndoHalfMove(void) +{ + chm_p chm; + + if ( lrc_obj.chm_pos == 0 ) + return; + + lrc_obj.chm_pos--; + + chm = lrc_obj.chm_list+lrc_obj.chm_pos; + + lrc_obj.pawn_dbl_move[0] = chm->pawn_dbl_move[0]; + lrc_obj.pawn_dbl_move[1] = chm->pawn_dbl_move[1]; + lrc_obj.castling_possible = chm->castling_possible; + + cp_SetOnBoard(chm->main_src, chm->main_cp); + cp_SetOnBoard(chm->main_dest, PIECE_NONE); + + if ( chm->other_src != ILLEGAL_POSITION ) + cp_SetOnBoard(chm->other_src, chm->other_cp); + if ( chm->other_dest != ILLEGAL_POSITION ) + cp_SetOnBoard(chm->other_dest, PIECE_NONE); + +} + +/* + assumes, that the following members of the returned chm structure are filled + uint8_t main_cp; the main piece, which is moved + uint8_t main_src; the source position of the main piece + uint8_t main_dest; the destination of the main piece + + uint8_t other_cp; another piece: the captured one, the ROOK in case of castling or PIECE_NONE + uint8_t other_src; the delete position of other_cp. Often identical to main_dest except for e.p. and castling + uint8_t other_dest; only used for castling: ROOK destination pos + +*/ +chm_p cu_PushHalfMove(void) +{ + chm_p chm; + + chm = lrc_obj.chm_list+lrc_obj.chm_pos; + if ( lrc_obj.chm_pos < CHM_LIST_SIZE-1) + lrc_obj.chm_pos++; + + chm->pawn_dbl_move[0] = lrc_obj.pawn_dbl_move[0]; + chm->pawn_dbl_move[1] = lrc_obj.pawn_dbl_move[1]; + chm->castling_possible = lrc_obj.castling_possible; + return chm; +} + + +char chess_piece_to_char[] = "NBRQK"; + +/* + simple moves on empty field: Ka1-b2 + capture moves: Ka1xb2 + castling: 0-0 or 0-0-0 +*/ + +static void cu_add_pos(char *s, uint8_t pos) U8G_NOINLINE; + +static void cu_add_pos(char *s, uint8_t pos) +{ + *s = pos; + *s >>= 4; + *s += 'a'; + s++; + *s = pos; + *s &= 15; + *s += '1'; +} + +const char *cu_GetHalfMoveStr(uint8_t idx) +{ + chm_p chm; + static char buf[7]; /*Ka1-b2*/ + char *p = buf; + chm = lrc_obj.chm_list+idx; + + if ( cp_GetPiece(chm->main_cp) != PIECE_NONE ) + { + if ( cp_GetPiece(chm->main_cp) > PIECE_PAWN ) + { + *p++ = chess_piece_to_char[cp_GetPiece(chm->main_cp)-2]; + } + cu_add_pos(p, chm->main_src); + p+=2; + if ( cp_GetPiece(chm->other_cp) == PIECE_NONE ) + *p++ = '-'; + else + *p++ = 'x'; + cu_add_pos(p, chm->main_dest); + p+=2; + } + *p = '\0'; + return buf; +} + + + + + +/*==============================================================*/ +/* move */ +/*==============================================================*/ + +/* + Move a piece from source position to a destination on the board + This function + - does not perform any checking + - however it processes "en passant" and casteling + - backup the move and allow 1x undo + + 2011-02-05: + - fill pawn_dbl_move[] for double pawn moves + --> done + - Implement casteling + --> done + - en passant + --> done + - pawn conversion/promotion + --> done + - half-move backup + --> done + - cleanup everything, minimize variables + --> done +*/ + +void cu_Move(uint8_t src, uint8_t dest) +{ + /* start backup structure */ + chm_p chm = cu_PushHalfMove(); + + /* these are the values from the board at the positions, provided as arguments to this function */ + uint8_t cp_src, cp_dest; + + /* Maybe a second position is cleared and one additional location is set */ + uint8_t clr_pos2; + uint8_t set_pos2; + uint8_t set_cp2; + + /* get values from board */ + cp_src = cp_GetFromBoard(src); + cp_dest = cp_GetFromBoard(dest); + + /* fill backup structure */ + + chm->main_cp = cp_src; + chm->main_src = src; + chm->main_dest = dest; + + chm->other_cp = cp_dest; /* prepace capture backup */ + chm->other_src = dest; + chm->other_dest = ILLEGAL_POSITION; + + /* setup results as far as possible with some suitable values */ + + clr_pos2 = ILLEGAL_POSITION; /* for en passant and castling, two positions might be cleared */ + set_pos2 = ILLEGAL_POSITION; /* only used for castling */ + set_cp2 = PIECE_NONE; /* ROOK for castling */ + + /* check for PAWN */ + if ( cp_GetPiece(cp_src) == PIECE_PAWN ) + { + + /* double step: is the distance 2 rows */ + if ( (src - dest == 32) || ( dest - src == 32 ) ) + { + /* remember the destination position */ + lrc_obj.pawn_dbl_move[cp_GetColor(cp_src)] = dest; + } + + /* check if the PAWN is able to promote */ + else if ( (dest>>4) == 0 || (dest>>4) == 7 ) + { + /* do simple "queening" */ + cp_src &= ~PIECE_PAWN; + cp_src |= PIECE_QUEEN; + } + + /* is it en passant capture? */ + /* check for side move */ + else if ( ((src + dest) & 1) != 0 ) + { + /* check, if target field is empty */ + if ( cp_GetPiece(cp_dest) == PIECE_NONE ) + { + /* this is en passant */ + /* no further checking required, because legal moves are assumed here */ + /* however... the captured pawn position must be valid */ + clr_pos2 = lrc_obj.pawn_dbl_move[cp_GetColor(cp_src) ^ 1]; + chm->other_src = clr_pos2; + chm->other_cp = cp_GetFromBoard(clr_pos2); + } + } + } + + /* check for the KING */ + else if ( cp_GetPiece(cp_src) == PIECE_KING ) + { + /* disallow castling, if the KING has moved */ + if ( cp_GetColor(cp_src) == COLOR_WHITE ) + { + /* if white KING has moved, disallow castling for white */ + lrc_obj.castling_possible &= 0x0c; + } + else + { + /* if black KING has moved, disallow castling for black */ + lrc_obj.castling_possible &= 0x03; + } + + /* has it been castling to the left? */ + if ( src - dest == 2 ) + { + /* let the ROOK move to pos2 */ + set_pos2 = src-1; + set_cp2 = cp_GetFromBoard(src-4); + + /* the ROOK must be cleared from the original position */ + clr_pos2 = src-4; + + chm->other_cp = set_cp2; + chm->other_src = clr_pos2; + chm->other_dest = set_pos2; + } + + /* has it been castling to the right? */ + else if ( dest - src == 2 ) + { + /* let the ROOK move to pos2 */ + set_pos2 = src+1; + set_cp2 = cp_GetFromBoard(src+3); + + /* the ROOK must be cleared from the original position */ + clr_pos2 = src+3; + + chm->other_cp = set_cp2; + chm->other_src = clr_pos2; + chm->other_dest = set_pos2; + + } + + } + + /* check for the ROOK */ + else if ( cp_GetPiece(cp_src) == PIECE_ROOK ) + { + /* disallow white left castling */ + if ( src == 0x00 ) + lrc_obj.castling_possible &= ~0x01; + /* disallow white right castling */ + if ( src == 0x07 ) + lrc_obj.castling_possible &= ~0x02; + /* disallow black left castling */ + if ( src == 0x70 ) + lrc_obj.castling_possible &= ~0x04; + /* disallow black right castling */ + if ( src == 0x77 ) + lrc_obj.castling_possible &= ~0x08; + } + + + /* apply new board situation */ + + cp_SetOnBoard(dest, cp_src); + + if ( set_pos2 != ILLEGAL_POSITION ) + cp_SetOnBoard(set_pos2, set_cp2); + + cp_SetOnBoard(src, PIECE_NONE); + + if ( clr_pos2 != ILLEGAL_POSITION ) + cp_SetOnBoard(clr_pos2, PIECE_NONE); + + +} + +/* + this subprocedure decides for evaluation of the current board situation or further (deeper) investigation + Argument pos is the new target position if the current piece + +*/ +uint8_t ce_LoopRecur(uint8_t pos) +{ + eval_t eval; + + /* 1. check if target position is occupied by the same player (my_color) */ + /* of if pos is somehow illegal or not valid */ + if ( cu_IsIllegalPosition(pos, stack_GetCurrElement()->current_color) != 0 ) + return 0; + + /* 2. move piece to the specified position, capture opponent piece if required */ + cu_Move(stack_GetCurrElement()->current_pos, pos); + + + /* 3. */ + /* if depth reached: evaluate */ + /* else: go down next level */ + /* no eval if there had been any valid half-moves, so the default value (MIN) will be returned. */ + if ( stack_Push(stack_GetCurrElement()->current_color) == 0 ) + { + eval = ce_Eval(); + } + else + { + /* init the element, which has been pushed */ + stack_InitCurrElement(); + /* start over with ntext level */ + ce_LoopPieces(); + /* get the best move from opponents view, so invert the result */ + eval = -stack_GetCurrElement()->best_eval; + stack_Pop(); + } + + /* 4. store result */ + stack_SetMove(eval, pos); + + /* 5. undo the move */ + cu_UndoHalfMove(); + + /* 6. check special modes */ + /* the purpose of these checks is to mark special pieces and positions on the board */ + /* these marks can be checked by the user interface to highlight special positions */ + if ( lrc_obj.check_mode != 0 ) + { + stack_element_p e = stack_GetCurrElement(); + if ( lrc_obj.check_mode == CHECK_MODE_MOVEABLE ) + { + cp_SetOnBoard(e->current_pos, e->current_cp | CP_MARK_MASK ); + } + else if ( lrc_obj.check_mode == CHECK_MODE_TARGET_MOVE ) + { + if ( e->current_pos == lrc_obj.check_src_pos ) + { + cp_SetOnBoard(pos, cp_GetFromBoard(pos) | CP_MARK_MASK ); + } + } + } + return 1; +} + +/*==============================================================*/ +/* move pieces which can move one or more steps into a direction */ +/*==============================================================*/ + +/* + subprocedure to generate various target positions for some pieces + special cases are handled in the piece specific sub-procedure + + Arguments: + d: a list of potential directions + is_multi_step: if the piece can only do one step (zero for KING and KNIGHT) +*/ +static const uint8_t ce_dir_offset_rook[] PROGMEM = { 1, 16, -16, -1, 0 }; +static const uint8_t ce_dir_offset_bishop[] PROGMEM = { 15, 17, -17, -15, 0 }; +static const uint8_t ce_dir_offset_queen[] PROGMEM = { 1, 16, -16, -1, 15, 17, -17, -15, 0 }; +static const uint8_t ce_dir_offset_knight[] PROGMEM = {14, -14, 18, -18, 31, -31, 33, -33, 0}; + +void ce_LoopDirsSingleMultiStep(const uint8_t *d, uint8_t is_multi_step) +{ + uint8_t loop_pos; + + /* with all directions */ + for(;;) + { + if ( u8g_pgm_read(d) == 0 ) + break; + + /* start again from the initial position */ + loop_pos = stack_GetCurrElement()->current_pos; + + /* check direction */ + do + { + /* check next position into one direction */ + loop_pos += u8g_pgm_read(d); + + /* + go further to ce_LoopRecur() + 0 will be returned if the target position is illegal or a piece of the own color + this is used to stop walking into one direction + */ + if ( ce_LoopRecur(loop_pos) == 0 ) + break; + + /* stop if we had hit another piece */ + if ( cp_GetPiece(cp_GetFromBoard(loop_pos)) != PIECE_NONE ) + break; + } while( is_multi_step ); + d++; + } +} + +void ce_LoopRook(void) +{ + ce_LoopDirsSingleMultiStep(ce_dir_offset_rook, 1); +} + +void ce_LoopBishop(void) +{ + ce_LoopDirsSingleMultiStep(ce_dir_offset_bishop, 1); +} + +void ce_LoopQueen(void) +{ + ce_LoopDirsSingleMultiStep(ce_dir_offset_queen, 1); +} + +void ce_LoopKnight(void) +{ + ce_LoopDirsSingleMultiStep(ce_dir_offset_knight, 0); +} + + + +/*==============================================================*/ +/* move king */ +/*==============================================================*/ + +uint8_t cu_IsKingCastling(uint8_t mask, int8_t direction, uint8_t cnt) U8G_NOINLINE; + +/* + checks, if the king can do castling + + Arguments: + mask: the bit-mask for the global "castling possible" flag + direction: left castling: -1, right castling 1 + cnt: number of fields to be checked: 3 or 2 +*/ +uint8_t cu_IsKingCastling(uint8_t mask, int8_t direction, uint8_t cnt) +{ + uint8_t pos; + uint8_t opponent_color; + + /* check if the current board state allows castling */ + if ( (lrc_obj.castling_possible & mask) == 0 ) + return 0; /* castling not allowed */ + + /* get the position of the KING, could be white or black king */ + pos = stack_GetCurrElement()->current_pos; + + /* calculate the color of the opponent */ + opponent_color = 1; + opponent_color -= stack_GetCurrElement()->current_color; + + /* if the KING itself is given check... */ + if ( ce_GetPositionAttackWeight(pos, opponent_color) > 0 ) + return 0; + + + /* check if fields in the desired direction are emtpy */ + for(;;) + { + /* go to the next field */ + pos += direction; + /* check for a piece */ + if ( cp_GetPiece(cp_GetFromBoard(pos)) != PIECE_NONE ) + return 0; /* castling not allowed */ + + /* if some of the fields are under attack */ + if ( ce_GetPositionAttackWeight(pos, opponent_color) > 0 ) + return 0; + + cnt--; + if ( cnt == 0 ) + break; + } + return 1; /* castling allowed */ +} + +void ce_LoopKing(void) +{ + /* + there is an interessting timing problem in this procedure + it must be checked for castling first and as second step the normal + KING movement. If we would first check for normal moves, than + any marks might be overwritten by the ROOK in the case of castling. + */ + + /* castling (this must be done before checking normal moves (see above) */ + if ( stack_GetCurrElement()->current_color == COLOR_WHITE ) + { + /* white left castling */ + if ( cu_IsKingCastling(1, -1, 3) != 0 ) + { + /* check for attacked fields */ + ce_LoopRecur(stack_GetCurrElement()->current_pos-2); + } + /* white right castling */ + if ( cu_IsKingCastling(2, 1, 2) != 0 ) + { + /* check for attacked fields */ + ce_LoopRecur(stack_GetCurrElement()->current_pos+2); + } + } + else + { + /* black left castling */ + if ( cu_IsKingCastling(4, -1, 3) != 0 ) + { + /* check for attacked fields */ + ce_LoopRecur(stack_GetCurrElement()->current_pos-2); + } + /* black right castling */ + if ( cu_IsKingCastling(8, 1, 2) != 0 ) + { + /* check for attacked fields */ + ce_LoopRecur(stack_GetCurrElement()->current_pos+2); + } + } + + /* reuse queen directions */ + ce_LoopDirsSingleMultiStep(ce_dir_offset_queen, 0); +} + + +/*==============================================================*/ +/* move pawn */ +/*==============================================================*/ + +/* + doppelschritt: nur von der grundlinie aus, beide (!) felder vor dem bauern mssen frei sein + en passant: nur unmittelbar nachdem ein doppelschritt ausgefhrt wurde. +*/ +void ce_LoopPawnSideCapture(uint8_t loop_pos) +{ + if ( gpos_IsIllegal(loop_pos) == 0 ) + { + /* get the piece from the board */ + /* if the field is NOT empty */ + if ( cp_GetPiece(cp_GetFromBoard(loop_pos)) != PIECE_NONE ) + { + /* normal capture */ + ce_LoopRecur(loop_pos); + /* TODO: check for pawn conversion/promotion */ + } + else + { + /* check conditions for en passant capture */ + if ( stack_GetCurrElement()->current_color == COLOR_WHITE ) + { + if ( lrc_obj.pawn_dbl_move[COLOR_BLACK]+16 == loop_pos ) + { + ce_LoopRecur(loop_pos); + /* note: pawn conversion/promotion can not occur */ + } + } + else + { + if ( lrc_obj.pawn_dbl_move[COLOR_WHITE] == loop_pos+16 ) + { + ce_LoopRecur(loop_pos); + /* note: pawn conversion/promotion can not occur */ + } + } + } + } +} + +void ce_LoopPawn(void) +{ + uint8_t initial_pos = stack_GetCurrElement()->current_pos; + uint8_t my_color = stack_GetCurrElement()->current_color; + + uint8_t loop_pos; + uint8_t line; + + /* one step forward */ + + loop_pos = initial_pos; + line = initial_pos; + line >>= 4; + if ( my_color == COLOR_WHITE ) + loop_pos += 16; + else + loop_pos -= 16; + if ( gpos_IsIllegal(loop_pos) == 0 ) + { + /* if the field is empty */ + if ( cp_GetPiece(cp_GetFromBoard(loop_pos)) == PIECE_NONE ) + { + /* TODO: check for and loop through piece conversion/promotion */ + ce_LoopRecur(loop_pos); + + /* second step forward */ + + /* if pawn is on his starting line */ + if ( (my_color == COLOR_WHITE && line == 1) || (my_color == COLOR_BLACK && line == 6 ) ) + { + /* the place before the pawn is not occupied, so we can do double moves, see above */ + + if ( my_color == COLOR_WHITE ) + loop_pos += 16; + else + loop_pos -= 16; + if ( cp_GetPiece(cp_GetFromBoard(loop_pos)) == PIECE_NONE ) + { + /* this is a special case, other promotions of the pawn can not occur */ + ce_LoopRecur(loop_pos); + } + } + } + } + + /* capture */ + + loop_pos = initial_pos; + if ( my_color == COLOR_WHITE ) + loop_pos += 15; + else + loop_pos -= 15; + ce_LoopPawnSideCapture(loop_pos); + + + loop_pos = initial_pos; + if ( my_color == COLOR_WHITE ) + loop_pos += 17; + else + loop_pos -= 17; + ce_LoopPawnSideCapture(loop_pos); +} + +/*==============================================================*/ +/* attacked */ +/*==============================================================*/ + +/* + from a starting position, search for a piece, that might jump to that postion. + return: + the two global variables + lrc_obj.find_piece_weight[0]; + lrc_obj.find_piece_weight[1]; + will be increased by the weight of the attacked pieces of that color. + it is usually required to reset these global variables to zero, before using + this function. +*/ + +void ce_FindPieceByStep(uint8_t start_pos, uint8_t piece, const uint8_t *d, uint8_t is_multi_step) +{ + uint8_t loop_pos, cp; + + /* with all directions */ + for(;;) + { + if ( u8g_pgm_read(d) == 0 ) + break; + + /* start again from the initial position */ + loop_pos = start_pos; + + /* check direction */ + do + { + /* check next position into one direction */ + loop_pos += u8g_pgm_read(d); + + /* check if the board boundary has been crossed */ + if ( (loop_pos & 0x088) != 0 ) + break; + + /* get the colored piece from the board */ + cp = cp_GetFromBoard(loop_pos); + + /* stop if we had hit another piece */ + if ( cp_GetPiece(cp) != PIECE_NONE ) + { + /* if it is the piece we are looking for, then add the weight */ + if ( cp_GetPiece(cp) == piece ) + { + lrc_obj.find_piece_weight[cp_GetColor(cp)] += ce_piece_weight[piece]; + lrc_obj.find_piece_cnt[cp_GetColor(cp)]++; + } + /* in any case, break out of the inner loop */ + break; + } + } while( is_multi_step ); + d++; + } +} + +void ce_FindPawnPiece(uint8_t dest_pos, uint8_t color) +{ + uint8_t cp; + /* check if the board boundary has been crossed */ + if ( (dest_pos & 0x088) == 0 ) + { + /* get the colored piece from the board */ + cp = cp_GetFromBoard(dest_pos); + /* only if there is a pawn of the matching color */ + if ( cp_GetPiece(cp) == PIECE_PAWN ) + { + if ( cp_GetColor(cp) == color ) + { + /* the weight of the PAWN */ + lrc_obj.find_piece_weight[color] += 1; + lrc_obj.find_piece_cnt[color]++; + } + } + } +} + + +/* + find out, which pieces do attack a specified field + used to + - check if the KING can do castling + - check if the KING must move + + may be used in the eval procedure ... once... + + the result is stored in the global array + uint8_t lrc_obj.find_piece_weight[2]; + which is indexed with the color. + lrc_obj.find_piece_weight[COLOR_WHITE] is the sum of all white pieces + which can directly move to this field. + + example: + if the black KING is at "pos" and lrc_obj.find_piece_weight[COLOR_WHITE] is not zero + (after executing ce_CalculatePositionWeight(pos)) then the KING must be protected or moveed, because + the KING was given check. +*/ + +void ce_CalculatePositionWeight(uint8_t pos) +{ + + lrc_obj.find_piece_weight[0] = 0; + lrc_obj.find_piece_weight[1] = 0; + lrc_obj.find_piece_cnt[0] = 0; + lrc_obj.find_piece_cnt[1] = 0; + + if ( (pos & 0x088) != 0 ) + return; + + ce_FindPieceByStep(pos, PIECE_ROOK, ce_dir_offset_rook, 1); + ce_FindPieceByStep(pos, PIECE_BISHOP, ce_dir_offset_bishop, 1); + ce_FindPieceByStep(pos, PIECE_QUEEN, ce_dir_offset_queen, 1); + ce_FindPieceByStep(pos, PIECE_KNIGHT, ce_dir_offset_knight, 0); + ce_FindPieceByStep(pos, PIECE_KING, ce_dir_offset_queen, 0); + + ce_FindPawnPiece(pos+17, COLOR_BLACK); + ce_FindPawnPiece(pos+15, COLOR_BLACK); + ce_FindPawnPiece(pos-17, COLOR_WHITE); + ce_FindPawnPiece(pos-15, COLOR_WHITE); +} + +/* + calculate the summed weight of pieces with specified color which can move to a specified position + + argument: + pos: the position which should be analysed + color: the color of those pieces which should be analysed + e.g. if a black piece is at 'pos' and 'color' is white then this procedure returns the white atting count +*/ +uint8_t ce_GetPositionAttackWeight(uint8_t pos, uint8_t color) +{ + ce_CalculatePositionWeight(pos); + return lrc_obj.find_piece_weight[color]; +} + +uint8_t ce_GetPositionAttackCount(uint8_t pos, uint8_t color) +{ + ce_CalculatePositionWeight(pos); + return lrc_obj.find_piece_cnt[color]; +} + + +/*==============================================================*/ +/* depth search starts here: loop over all pieces of the current color on the board */ +/*==============================================================*/ + +void ce_LoopPieces(void) +{ + stack_element_p e = stack_GetCurrElement(); + /* start with lower left position (A1) */ + e->current_pos = 0; + do + { + e->current_cp = cp_GetFromBoard(e->current_pos); + /* check if the position on the board is empty */ + if ( e->current_cp != 0 ) + { + /* only generate moves for the current color */ + if ( e->current_color == cp_GetColor(e->current_cp) ) + { + chess_Thinking(); + + /* find out which piece is used */ + switch(cp_GetPiece(e->current_cp)) + { + case PIECE_NONE: + break; + case PIECE_PAWN: + ce_LoopPawn(); + break; + case PIECE_KNIGHT: + ce_LoopKnight(); + break; + case PIECE_BISHOP: + ce_LoopBishop(); + break; + case PIECE_ROOK: + ce_LoopRook(); + break; + case PIECE_QUEEN: + ce_LoopQueen(); + break; + case PIECE_KING: + ce_LoopKing(); + break; + } + } + } + e->current_pos = cu_NextPos(e->current_pos); + } while( e->current_pos != 0 ); +} + +/*==============================================================*/ +/* user interface */ +/*==============================================================*/ + +/* +eval_t chess_EvalCurrBoard(uint8_t color) +{ + stack_Init(0); + stack_GetCurrElement()->current_color = color; + ce_LoopPieces(); + return stack_GetCurrElement()->best_eval; +} +*/ + +/* clear any marks on the board */ +void chess_ClearMarks(void) +{ + uint8_t i; + for( i = 0; i < 64; i++ ) + lrc_obj.board[i] &= ~CP_MARK_MASK; +} + +/* + Mark all pieces which can do moves. This is done by setting flags on the global board +*/ +void chess_MarkMovable(void) +{ + stack_Init(0); + //stack_GetCurrElement()->current_color = color; + lrc_obj.check_mode = CHECK_MODE_MOVEABLE; + ce_LoopPieces(); +} + +/* + Checks, if the piece can move from src_pos to dest_pos + + src_pos: The game position of a piece on the chess board +*/ +void chess_MarkTargetMoves(uint8_t src_pos) +{ + stack_Init(0); + stack_GetCurrElement()->current_color = cp_GetColor(cp_GetFromBoard(src_pos)); + lrc_obj.check_src_pos = src_pos; + lrc_obj.check_mode = CHECK_MODE_TARGET_MOVE; + ce_LoopPieces(); +} + +/* + first call should start with 255 + this procedure will return 255 if + - there are no marks at all + - it has looped over all marks once +*/ +uint8_t chess_GetNextMarked(uint8_t arg, uint8_t is_prev) +{ + uint8_t i; + uint8_t pos = arg; + for(i = 0; i < 64; i++) + { + if ( is_prev != 0 ) + pos = cu_PrevPos(pos); + else + pos = cu_NextPos(pos); + if ( arg != 255 && pos == 0 ) + return 255; + if ( cp_IsMarked(cp_GetFromBoard(pos)) ) + return pos; + } + return 255; +} + + +/* make a manual move: this is a little bit more than cu_Move() */ +void chess_ManualMove(uint8_t src, uint8_t dest) +{ + uint8_t cp; + + /* printf("chess_ManualMove %02x -> %02x\n", src, dest); */ + + /* if all other things fail, this is the place where the game is to be decided: */ + /* ... if the KING is captured */ + cp = cp_GetFromBoard(dest); + if ( cp_GetPiece(cp) == PIECE_KING ) + { + lrc_obj.is_game_end = 1; + lrc_obj.lost_side_color = cp_GetColor(cp); + } + + /* clear ply history here, to avoid memory overflow */ + /* may be the last X moves can be kept here */ + cu_ReduceHistoryByFullMove(); + /* perform the move on the board */ + cu_Move(src, dest); + + /* update en passant double move positions: en passant position is removed after two half moves */ + lrc_obj.pawn_dbl_move[lrc_obj.ply_count&1] = ILLEGAL_POSITION; + + /* update the global half move counter */ + lrc_obj.ply_count++; + + + /* make a small check about the end of the game */ + /* use at least depth 1, because we must know if the king can still move */ + /* this is: King moves at level 0 and will be captured at level 1 */ + /* so we check if the king can move and will not be captured at search level 1 */ + + stack_Init(1); + ce_LoopPieces(); + + /* printf("chess_ManualMove/analysis best_from_pos %02x -> best_to_pos %02x\n", stack_GetCurrElement()->best_from_pos, stack_GetCurrElement()->best_to_pos); */ + + /* analyse the eval result */ + + /* check if the other player has any moves left */ + if ( stack_GetCurrElement()->best_from_pos == ILLEGAL_POSITION ) + { + uint8_t color; + /* conditions: */ + /* 1. no King, should never happen, opposite color has won */ + /* this is already checked above at the beginning if this procedure */ + /* 2. King is under attack, opposite color has won */ + /* 3. King is not under attack, game is a draw */ + + uint8_t i = 0; + color = lrc_obj.ply_count; + color &= 1; + do + { + cp = cp_GetFromBoard(i); + /* look for the King */ + if ( cp_GetPiece(cp) == PIECE_KING ) + { + if ( cp_GetColor(cp) == color ) + { + /* check if KING is attacked */ + if ( ce_GetPositionAttackCount(i, color^1) != 0 ) + { + /* KING is under attack (check) and can not move: Game is lost */ + lrc_obj.is_game_end = 1; + lrc_obj.lost_side_color = color; + } + else + { + /* KING is NOT under attack (check) but can not move: Game is a draw */ + lrc_obj.is_game_end = 1; + lrc_obj.lost_side_color = 2; + } + /* break out of the loop */ + break; + } + } + i = cu_NextPos(i); + } while( i != 0 ); + } +} + +/* let the computer do a move */ +void chess_ComputerMove(uint8_t depth) +{ + stack_Init(depth); + + //stack_GetCurrElement()->current_color = lrc_obj.ply_count; + //stack_GetCurrElement()->current_color &= 1; + + cu_ReduceHistoryByFullMove(); + ce_LoopPieces(); + + chess_ManualMove(stack_GetCurrElement()->best_from_pos, stack_GetCurrElement()->best_to_pos); +} + + +/*==============================================================*/ +/* unix code */ +/*==============================================================*/ + +#ifdef UNIX_MAIN + +#include +#include + +char *piece_str[] = { + /* 0x00 */ + " ", + "wP", + "wN", + "wB", + + /* 0x04 */ + "wR", + "wQ", + "wK", + "w?", + + /* 0x08 */ + "w?", + "w?", + "w?", + "w?", + + /* 0x0c */ + "w?", + "w?", + "w?", + "w?", + + /* 0x10 */ + "b ", + "bP", + "bN", + "bB", + "bR", + "bQ", + "bK", + "b?", + + "b?", + "b?", + "b?", + "b?", + "b?", + "b?", + "b?", + "b?" +}; + +void chess_Thinking(void) +{ + uint8_t i; + uint8_t cp = cp_GetPiece(stack_GetCurrElement()->current_cp); + + printf("Thinking: ", piece_str[cp], stack_GetCurrElement()->current_pos); + + for( i = 0; i <= lrc_obj.curr_depth; i++ ) + printf("%s ", piece_str[(lrc_obj.stack_memory+i)->current_cp]); + + printf(" \r"); +} + +void board_Show(void) +{ + uint8_t i, j, cp; + char buf[10]; + for ( i = 0; i < 8; i++ ) + { + printf("%1d ", 7-i); + for ( j = 0; j < 8; j++ ) + { + /* get piece from global board */ + cp = lrc_obj.board[(7-i)*8+j]; + strcpy(buf, piece_str[cp&COLOR_PIECE_MASK]); + + if ( (cp & CP_MARK_MASK) != 0 ) + { + buf[0] = '#'; + } + + /* mask out any bits except color and piece index */ + cp &= COLOR_PIECE_MASK; + printf("%s %02x ", buf, cp); + + } + printf("\n"); + } +} + +int main(void) +{ + uint8_t depth = 3; + chess_SetupBoard(); + board_Show(); + puts(""); + + + /* + chess_ClearMarks(); + chess_MarkMovable(COLOR_WHITE); + board_Show(); + */ + + chess_ManualMove(0x006, 0x066); + + printf("lrc_obj.is_game_end: %d\n" , lrc_obj.is_game_end); + printf("lrc_obj.lost_side_color: %d\n" , lrc_obj.lost_side_color); + + chess_ComputerMove(2); + + printf("lrc_obj.is_game_end: %d\n" , lrc_obj.is_game_end); + printf("lrc_obj.lost_side_color: %d\n" , lrc_obj.lost_side_color); + + board_Show(); + +} + + + +#else + +/*==============================================================*/ +/* display menu */ +/*==============================================================*/ + +//#define MNU_FONT font_5x7 +#define MNU_FONT u8g_font_5x8r +//#define MNU_FONT font_6x9 +#define MNU_ENTRY_HEIGHT 9 + +char *mnu_title = "Little Rook Chess"; +char *mnu_list[] = { "New Game (White)", "New Game (Black)", "Undo Move", "Return" }; +uint8_t mnu_pos = 0; +uint8_t mnu_max = 4; + +void mnu_DrawHome(uint8_t is_highlight) +{ + uint8_t x = lrc_u8g->width - 35; + uint8_t y = (lrc_u8g->height-1); + uint8_t t; + + u8g_SetFont(lrc_u8g, u8g_font_5x7r); + u8g_SetDefaultForegroundColor(lrc_u8g); + t = u8g_DrawStrP(lrc_u8g, x, y -1, U8G_PSTR("Options")); + + if ( is_highlight ) + u8g_DrawFrame(lrc_u8g, x-1, y - MNU_ENTRY_HEIGHT +1, t, MNU_ENTRY_HEIGHT); +} + +void mnu_DrawEntry(uint8_t y, char *str, uint8_t is_clr_background, uint8_t is_highlight) +{ + uint8_t t, x; + u8g_SetFont(lrc_u8g, MNU_FONT); + t = u8g_GetStrWidth(lrc_u8g, str); + x = u8g_GetWidth(lrc_u8g); + x -= t; + x >>= 1; + + if ( is_clr_background ) + { + u8g_SetDefaultBackgroundColor(lrc_u8g); + u8g_DrawBox(lrc_u8g, x-3, (lrc_u8g->height-1) - (y+MNU_ENTRY_HEIGHT-1+2), t+5, MNU_ENTRY_HEIGHT+4); + } + + u8g_SetDefaultForegroundColor(lrc_u8g); + u8g_DrawStr(lrc_u8g, x, (lrc_u8g->height-1) - y, str); + + if ( is_highlight ) + { + u8g_DrawFrame(lrc_u8g, x-1, (lrc_u8g->height-1) - y -MNU_ENTRY_HEIGHT +1, t, MNU_ENTRY_HEIGHT); + } +} + +void mnu_Draw(void) +{ + uint8_t i; + uint8_t t,y; + /* calculate hight of the complete menu */ + y = mnu_max; + y++; /* consider also some space for the title */ + y++; /* consider also some space for the title */ + y *= MNU_ENTRY_HEIGHT; + + /* calculate how much space will be left */ + t = u8g_GetHeight(lrc_u8g); + t -= y; + + /* topmost pos start half of that empty space from the top */ + t >>= 1; + y = u8g_GetHeight(lrc_u8g); + y -= t; + + y -= MNU_ENTRY_HEIGHT; + mnu_DrawEntry(y, mnu_title, 0, 0); + + y -= MNU_ENTRY_HEIGHT; + + + for( i = 0; i < mnu_max; i++ ) + { + y -= MNU_ENTRY_HEIGHT; + mnu_DrawEntry(y, mnu_list[i], 0, i == mnu_pos); + } +} + +void mnu_Step(uint8_t key_cmd) +{ + if ( key_cmd == CHESS_KEY_NEXT ) + { + if ( mnu_pos+1 < mnu_max ) + mnu_pos++; + } + else if ( key_cmd == CHESS_KEY_PREV ) + { + if ( mnu_pos > 0 ) + mnu_pos--; + } +} + + + + +uint8_t chess_key_code = 0; +uint8_t chess_key_cmd = 0; +#define CHESS_STATE_MENU 0 +#define CHESS_STATE_SELECT_START 1 +#define CHESS_STATE_SELECT_PIECE 2 +#define CHESS_STATE_SELECT_TARGET_POS 3 +#define CHESS_STATE_THINKING 4 +#define CHESS_STATE_GAME_END 5 +uint8_t chess_state = CHESS_STATE_MENU; +uint8_t chess_source_pos = 255; +uint8_t chess_target_pos = 255; + +const uint8_t chess_pieces_body_bm[] PROGMEM = +{ + /* PAWN */ 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, /* 0x00, 0x00, 0x00, 0x0c, 0x0c, 0x00, 0x00, 0x00, */ + /* KNIGHT */ 0x00, 0x00, 0x1c, 0x2c, 0x04, 0x04, 0x0e, 0x00, + /* BISHOP */ 0x00, 0x00, 0x1c, 0x1c, 0x1c, 0x08, 0x00, 0x00, /* 0x00, 0x00, 0x08, 0x1c, 0x1c, 0x08, 0x00, 0x00, */ + /* ROOK */ 0x00, 0x00, 0x00, 0x1c, 0x1c, 0x1c, 0x1c, 0x00, + /* QUEEN */ 0x00, 0x00, 0x14, 0x1c, 0x08, 0x1c, 0x08, 0x00, + /* KING */ 0x00, 0x00, 0x00, 0x08, 0x3e, 0x1c, 0x08, 0x00, +}; + +#ifdef NOT_REQUIRED +/* white pieces are constructed by painting black pieces and cutting out the white area */ +const uint8_t chess_white_pieces_bm[] PROGMEM = +{ + /* PAWN */ 0x00, 0x00, 0x0c, 0x12, 0x12, 0x0c, 0x1e, 0x00, + /* KNIGHT */ 0x00, 0x1c, 0x22, 0x52, 0x6a, 0x0a, 0x11, 0x1f, + /* BISHOP */ 0x00, 0x08, 0x14, 0x22, 0x22, 0x14, 0x08, 0x7f, + /* ROOK */ 0x00, 0x55, 0x7f, 0x22, 0x22, 0x22, 0x22, 0x7f, + /* QUEEN */ 0x00, 0x55, 0x2a, 0x22, 0x14, 0x22, 0x14, 0x7f, + /* KING */ 0x08, 0x1c, 0x49, 0x77, 0x41, 0x22, 0x14, 0x7f, +}; +#endif + +const uint8_t chess_black_pieces_bm[] PROGMEM = +{ + /* PAWN */ 0x00, 0x00, 0x18, 0x3c, 0x3c, 0x18, 0x3c, 0x00, /* 0x00, 0x00, 0x0c, 0x1e, 0x1e, 0x0c, 0x1e, 0x00, */ + /* KNIGHT */ 0x00, 0x1c, 0x3e, 0x7e, 0x6e, 0x0e, 0x1f, 0x1f, + /* BISHOP */ 0x00, 0x1c, 0x2e, 0x3e, 0x3e, 0x1c, 0x08, 0x7f, /*0x00, 0x08, 0x1c, 0x3e, 0x3e, 0x1c, 0x08, 0x7f,*/ + /* ROOK */ 0x00, 0x55, 0x7f, 0x3e, 0x3e, 0x3e, 0x3e, 0x7f, + /* QUEEN */ 0x00, 0x55, 0x3e, 0x3e, 0x1c, 0x3e, 0x1c, 0x7f, + /* KING -*/ 0x08, 0x1c, 0x49, 0x7f, 0x7f, 0x3e, 0x1c, 0x7f, +}; + + +#if defined(DOGXL160_HW_GR) +#define BOXSIZE 13 +#define BOXOFFSET 3 +#else +#define BOXSIZE 8 +#define BOXOFFSET 1 +#endif + +u8g_uint_t chess_low_edge; +uint8_t chess_boxsize = 8; +uint8_t chess_boxoffset = 1; + + +void chess_DrawFrame(uint8_t pos, uint8_t is_bold) +{ + u8g_uint_t x0, y0; + + x0 = pos; + x0 &= 15; + if ( lrc_obj.orientation != COLOR_WHITE ) + x0 ^= 7; + + y0 = pos; + y0>>= 4; + if ( lrc_obj.orientation != COLOR_WHITE ) + y0 ^= 7; + + x0 *= chess_boxsize; + y0 *= chess_boxsize; + + u8g_SetDefaultForegroundColor(lrc_u8g); + u8g_DrawFrame(lrc_u8g, x0, chess_low_edge - y0 - chess_boxsize+1, chess_boxsize, chess_boxsize); + + + if ( is_bold ) + { + x0--; + y0++; + + u8g_DrawFrame(lrc_u8g, x0, chess_low_edge - y0 - chess_boxsize +1, chess_boxsize+2, chess_boxsize+2); + } +} + + +void chess_DrawBoard(void) +{ + uint8_t i, j, cp; + const uint8_t *ptr; /* pointer into PROGMEM */ + + if ( U8G_MODE_GET_BITS_PER_PIXEL(u8g_GetMode(lrc_u8g)) > 1 ) + { + for( i = 0; i < 8; i++ ) + for( j = 0; j < 8; j++ ) + { + uint8_t x,y; + x = i; + x*=chess_boxsize; + y = j; + y*=chess_boxsize; + if ( ((i^j) & 1) == 0 ) + u8g_SetDefaultMidColor(lrc_u8g); + else + u8g_SetDefaultBackgroundColor(lrc_u8g); + u8g_DrawBox(lrc_u8g, x,chess_low_edge-y-chess_boxsize+1,chess_boxsize,chess_boxsize); + } + //u8g_SetDefaultForegroundColor(lrc_u8g); + } + else + { + uint8_t x_offset = 1; + u8g_SetDefaultForegroundColor(lrc_u8g); + for( i = 0; i < 8*8; i+=8 ) + { + for( j = 0; j < 8*8; j+=8 ) + { + if ( ((i^j) & 8) == 0 ) + { + u8g_DrawPixel(lrc_u8g, j+0+x_offset, chess_low_edge - i-0); + u8g_DrawPixel(lrc_u8g, j+0+x_offset, chess_low_edge - i-2); + u8g_DrawPixel(lrc_u8g, j+0+x_offset, chess_low_edge - i-4); + u8g_DrawPixel(lrc_u8g, j+0+x_offset, chess_low_edge - i-6); + u8g_DrawPixel(lrc_u8g, j+2+x_offset, chess_low_edge - i-0); + u8g_DrawPixel(lrc_u8g, j+2+x_offset, chess_low_edge - i-6); + u8g_DrawPixel(lrc_u8g, j+4+x_offset, chess_low_edge - i-0); + u8g_DrawPixel(lrc_u8g, j+4+x_offset, chess_low_edge - i-6); + u8g_DrawPixel(lrc_u8g, j+6+x_offset, chess_low_edge - i-0); + u8g_DrawPixel(lrc_u8g, j+6+x_offset, chess_low_edge - i-2); + u8g_DrawPixel(lrc_u8g, j+6+x_offset, chess_low_edge - i-4); + u8g_DrawPixel(lrc_u8g, j+6+x_offset, chess_low_edge - i-6); + } + } + } + } + + for ( i = 0; i < 8; i++ ) + { + for ( j = 0; j < 8; j++ ) + { + /* get piece from global board */ + if ( lrc_obj.orientation == COLOR_WHITE ) + { + cp = lrc_obj.board[i*8+j]; + } + else + { + cp = lrc_obj.board[(7-i)*8+7-j]; + } + if ( cp_GetPiece(cp) != PIECE_NONE ) + { + ptr = chess_black_pieces_bm; + ptr += (cp_GetPiece(cp)-1)*8; + u8g_SetDefaultForegroundColor(lrc_u8g); + u8g_DrawBitmapP(lrc_u8g, j*chess_boxsize+chess_boxoffset-1, chess_low_edge - (i*chess_boxsize+chess_boxsize-chess_boxoffset), 1, 8, ptr); + + if ( cp_GetColor(cp) == lrc_obj.strike_out_color ) + { + ptr = chess_pieces_body_bm; + ptr += (cp_GetPiece(cp)-1)*8; + u8g_SetDefaultBackgroundColor(lrc_u8g); + u8g_DrawBitmapP(lrc_u8g, j*chess_boxsize+chess_boxoffset-1, chess_low_edge - (i*chess_boxsize+chess_boxsize-chess_boxoffset), 1, 8, ptr); + } + } + } + } + + if ( (chess_source_pos & 0x88) == 0 ) + { + chess_DrawFrame(chess_source_pos, 1); + } + + if ( (chess_target_pos & 0x88) == 0 ) + { + chess_DrawFrame(chess_target_pos, 0); + } + +} + + +void chess_Thinking(void) +{ +} + +void chess_Init(u8g_t *u8g, uint8_t body_color) +{ + lrc_u8g = u8g; + + chess_low_edge = u8g_GetHeight(lrc_u8g); + chess_low_edge--; + + + if ( U8G_MODE_GET_BITS_PER_PIXEL(u8g_GetMode(lrc_u8g)) == 1 ) + { + + chess_boxsize = 8; + chess_boxoffset = 1; + } + else + { + + /* + if ( u8g_GetHeight(lrc_u8g) >= 12*8 ) + { + chess_boxsize = 12; + chess_boxoffset = 3; + } + else */ if ( u8g_GetHeight(lrc_u8g) >= 11*8 ) + { + chess_boxsize = 10; + chess_boxoffset = 2; + } + else + { + chess_boxsize = 8; + chess_boxoffset = 1; + } + + if ( u8g_GetHeight(lrc_u8g) > 64 ) + chess_low_edge -= (u8g_GetHeight(lrc_u8g)-chess_boxsize*8) / 2; + + } + + lrc_obj.strike_out_color = body_color; + chess_SetupBoard(); +} + + + +void chess_Draw(void) +{ + if ( chess_state == CHESS_STATE_MENU ) + { + if ( lrc_obj.ply_count == 0) + mnu_max = 2; + else + mnu_max = 4; + mnu_Draw(); + } + else + { + chess_DrawBoard(); + + { + uint8_t i; + uint8_t entries = lrc_obj.chm_pos; + if ( entries > 4 ) + entries = 4; + + u8g_SetFont(lrc_u8g, u8g_font_5x7); + u8g_SetDefaultForegroundColor(lrc_u8g); + for( i = 0; i < entries; i++ ) + { + +#if defined(DOGXL160_HW_GR) || defined(DOGXL160_HW_BW) + dog_DrawStr(u8g_GetWidth(lrc_u8g)-35, u8g_GetHeight(lrc_u8g)-8*(i+1), font_5x7, cu_GetHalfMoveStr(lrc_obj.chm_pos-entries+i)); +#else + u8g_DrawStr(lrc_u8g, u8g_GetWidth(lrc_u8g)-35, 8*(i+1), cu_GetHalfMoveStr(lrc_obj.chm_pos-entries+i)); +#endif + + } + + } + + if ( chess_state == CHESS_STATE_SELECT_PIECE ) + mnu_DrawHome(chess_source_pos == 255); + else if ( chess_state == CHESS_STATE_SELECT_TARGET_POS ) + mnu_DrawHome(chess_target_pos == 255); + else + mnu_DrawHome(0); + + if ( chess_state == CHESS_STATE_GAME_END ) + { + switch( lrc_obj.lost_side_color ) + { + case COLOR_WHITE: + mnu_DrawEntry(u8g_GetHeight(lrc_u8g) / 2-2, "Black wins", 1, 1); + break; + case COLOR_BLACK: + mnu_DrawEntry(u8g_GetHeight(lrc_u8g) / 2-2, "White wins", 1, 1); + break; + default: + mnu_DrawEntry(u8g_GetHeight(lrc_u8g) / 2-2, "Stalemate", 1, 1); + break; + } + } + } +} + + +void chess_Step(uint8_t keycode) +{ + if ( keycode == CHESS_KEY_NONE ) + { + chess_key_cmd = chess_key_code; + chess_key_code = CHESS_KEY_NONE; + } + else + { + chess_key_cmd = CHESS_KEY_NONE; + chess_key_code = keycode; + } + //chess_ComputerMove(2); + switch(chess_state) + { + case CHESS_STATE_MENU: + mnu_Step(chess_key_cmd); + if ( chess_key_cmd == CHESS_KEY_SELECT ) + { + if ( mnu_pos == 0 ) + { + chess_SetupBoard(); + lrc_obj.orientation = 0; + chess_state = CHESS_STATE_SELECT_START; + } + else if ( mnu_pos == 1 ) + { + chess_SetupBoard(); + lrc_obj.orientation = 1; + chess_state = CHESS_STATE_THINKING; + } + else if ( mnu_pos == 2 ) + { + if ( lrc_obj.ply_count >= 2 ) + { + cu_UndoHalfMove(); + cu_UndoHalfMove(); + lrc_obj.ply_count-=2; + if ( lrc_obj.ply_count == 0 ) + mnu_pos = 0; + } + chess_state = CHESS_STATE_SELECT_START; + } + else if ( mnu_pos == 3 ) + { + chess_state = CHESS_STATE_SELECT_START; + } + } + break; + case CHESS_STATE_SELECT_START: + chess_ClearMarks(); + chess_MarkMovable(); + chess_source_pos = chess_GetNextMarked(255, 0); + chess_target_pos = ILLEGAL_POSITION; + chess_state = CHESS_STATE_SELECT_PIECE; + break; + + case CHESS_STATE_SELECT_PIECE: + if ( chess_key_cmd == CHESS_KEY_NEXT ) + { + chess_source_pos = chess_GetNextMarked(chess_source_pos, 0); + } + else if ( chess_key_cmd == CHESS_KEY_PREV ) + { + chess_source_pos = chess_GetNextMarked(chess_source_pos, 1); + } + else if ( chess_key_cmd == CHESS_KEY_SELECT ) + { + if ( chess_source_pos == 255 ) + { + chess_state = CHESS_STATE_MENU; + } + else + { + chess_ClearMarks(); + chess_MarkTargetMoves(chess_source_pos); + chess_target_pos = chess_GetNextMarked(255, 0); + chess_state = CHESS_STATE_SELECT_TARGET_POS; + } + } + break; + case CHESS_STATE_SELECT_TARGET_POS: + if ( chess_key_cmd == CHESS_KEY_NEXT ) + { + chess_target_pos = chess_GetNextMarked(chess_target_pos, 0); + } + else if ( chess_key_cmd == CHESS_KEY_PREV ) + { + chess_target_pos = chess_GetNextMarked(chess_target_pos, 1); + } + else if ( chess_key_cmd == CHESS_KEY_BACK ) + { + chess_ClearMarks(); + chess_MarkMovable(); + chess_target_pos = ILLEGAL_POSITION; + chess_state = CHESS_STATE_SELECT_PIECE; + } + else if ( chess_key_cmd == CHESS_KEY_SELECT ) + { + chess_ManualMove(chess_source_pos, chess_target_pos); + if ( lrc_obj.is_game_end != 0 ) + chess_state = CHESS_STATE_GAME_END; + else + chess_state = CHESS_STATE_THINKING; + /* clear marks as some kind of feedback to the user... it simply looks better */ + chess_source_pos = ILLEGAL_POSITION; + chess_target_pos = ILLEGAL_POSITION; + chess_ClearMarks(); + } + break; + case CHESS_STATE_THINKING: + chess_ComputerMove(2); + if ( lrc_obj.is_game_end != 0 ) + chess_state = CHESS_STATE_GAME_END; + else + chess_state = CHESS_STATE_SELECT_START; + break; + case CHESS_STATE_GAME_END: + if ( chess_key_cmd != CHESS_KEY_NONE ) + { + chess_state = CHESS_STATE_MENU; + chess_SetupBoard(); + } + break; + } + +} + +#endif + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g.h b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g.h new file mode 100644 index 0000000000000000000000000000000000000000..f5a0230acb7fc22773ea9c190d0208a839b430d3 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g.h @@ -0,0 +1,1607 @@ +/* + + u8g.h + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#ifndef _U8G_H +#define _U8G_H + +//#define U8G_16BIT 1 + +#include + +#ifdef __18CXX +typedef unsigned char uint8_t; +typedef signed char int8_t; +typedef unsigned short uint16_t; +typedef signed short int16_t; +#else +#include +#endif + +#if defined(__AVR__) +#include +#endif + +#ifdef __cplusplus +extern "C" { +#endif + + +/*===============================================================*/ +#ifdef __GNUC__ +#define U8G_NOINLINE __attribute__((noinline)) +#define U8G_PURE __attribute__ ((pure)) +#define U8G_NOCOMMON __attribute__ ((nocommon)) +#define U8G_SECTION(name) __attribute__ ((section (name))) +#else +#define U8G_NOINLINE +#define U8G_PURE +#define U8G_NOCOMMON +#define U8G_SECTION(name) +#endif + +/*===============================================================*/ +/* flash memory access */ + +#if defined(__AVR__) +/* U8G_PROGMEM is used by the XBM example */ +#define U8G_PROGMEM U8G_SECTION(".progmem.data") +typedef uint8_t PROGMEM u8g_pgm_uint8_t; +typedef uint8_t u8g_fntpgm_uint8_t; +#define u8g_pgm_read(adr) pgm_read_byte_near(adr) +#define U8G_PSTR(s) ((u8g_pgm_uint8_t *)PSTR(s)) +#else +#define U8G_PROGMEM +#define PROGMEM +typedef uint8_t u8g_pgm_uint8_t; +typedef uint8_t u8g_fntpgm_uint8_t; +#define u8g_pgm_read(adr) (*(const u8g_pgm_uint8_t *)(adr)) +#define U8G_PSTR(s) ((u8g_pgm_uint8_t *)(s)) +#endif + +/*===============================================================*/ +/* forward */ +typedef struct _u8g_t u8g_t; +typedef struct _u8g_dev_t u8g_dev_t; + +typedef struct _u8g_dev_arg_pixel_t u8g_dev_arg_pixel_t; +typedef struct _u8g_dev_arg_bbx_t u8g_dev_arg_bbx_t; +typedef struct _u8g_box_t u8g_box_t; + + +/*===============================================================*/ +/* generic */ +#if defined(U8G_16BIT) +typedef uint16_t u8g_uint_t; +typedef int16_t u8g_int_t; +#else +typedef uint8_t u8g_uint_t; +typedef int8_t u8g_int_t; +#endif + +#ifdef OBSOLETE +struct _u8g_box_t +{ + u8g_uint_t x0, y0, x1, y1; +}; +typedef struct _u8g_box_t u8g_box_t; +#endif /* OBSOLETE */ + + +/*===============================================================*/ +/* device structure */ + +#ifdef __XC8 +/* device prototype */ +typedef uint8_t (*u8g_dev_fnptr)(void *u8g, void *dev, uint8_t msg, void *arg); + +/* com prototype */ +typedef uint8_t (*u8g_com_fnptr)(void *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); +#else +/* device prototype */ +typedef uint8_t (*u8g_dev_fnptr)(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* com prototype */ +typedef uint8_t (*u8g_com_fnptr)(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); +#endif + + + +struct _u8g_dev_t +{ + u8g_dev_fnptr dev_fn; /* device procedure */ + void *dev_mem; /* device memory */ + u8g_com_fnptr com_fn; /* communication procedure */ +}; + + +/*===============================================================*/ +/* device list */ + +/* Size: 128x64 SDL, u8g_dev_sdl.c */ +extern u8g_dev_t u8g_dev_sdl_1bit; +extern u8g_dev_t u8g_dev_sdl_1bit_h; +extern u8g_dev_t u8g_dev_sdl_2bit; +extern u8g_dev_t u8g_dev_sdl_2bit_double_mem; +extern u8g_dev_t u8g_dev_sdl_8bit; +int u8g_sdl_get_key(void); + +/* Size: 70x30 monochrom, stdout */ +extern u8g_dev_t u8g_dev_stdout; + +/* Size: monochrom, writes "u8g.pbm" */ +extern u8g_dev_t u8g_dev_pbm; +extern u8g_dev_t u8g_dev_pbm_8h1; +extern u8g_dev_t u8g_dev_pbm_8h2; /* grayscale simulation */ + +/* Size: 128x64 monochrom, no output, used for performance measure */ +extern u8g_dev_t u8g_dev_gprof; + +/* Display: EA DOGS102, Size: 102x64 monochrom */ +extern u8g_dev_t u8g_dev_uc1701_dogs102_sw_spi; +extern u8g_dev_t u8g_dev_uc1701_dogs102_hw_spi; + +/* Display: Mini12864 (dealextreme), Size: 128x64 monochrom */ +extern u8g_dev_t u8g_dev_uc1701_mini12864_sw_spi; +extern u8g_dev_t u8g_dev_uc1701_mini12864_hw_spi; + +/* Display: EA DOGM132, Size: 128x32 monochrom */ +extern u8g_dev_t u8g_dev_st7565_dogm132_sw_spi; +extern u8g_dev_t u8g_dev_st7565_dogm132_hw_spi; + +/* Display: EA DOGM128, Size: 128x64 monochrom */ +extern u8g_dev_t u8g_dev_st7565_dogm128_sw_spi; +extern u8g_dev_t u8g_dev_st7565_dogm128_hw_spi; +/* Display: Topway LM6063 128x64 */ +extern u8g_dev_t u8g_dev_st7565_lm6063_sw_spi; +extern u8g_dev_t u8g_dev_st7565_lm6063_hw_spi; +/* Display: Topway LM6059 128x64 (Adafruit) */ +extern u8g_dev_t u8g_dev_st7565_lm6059_sw_spi; +extern u8g_dev_t u8g_dev_st7565_lm6059_hw_spi; +/* Display: Newhaven NHD-C12864 */ +extern u8g_dev_t u8g_dev_st7565_nhd_c12864_sw_spi; +extern u8g_dev_t u8g_dev_st7565_nhd_c12864_hw_spi; +/* Display: Newhaven NHD-C12832 */ +extern u8g_dev_t u8g_dev_st7565_nhd_c12832_sw_spi; +extern u8g_dev_t u8g_dev_st7565_nhd_c12832_hw_spi; +extern u8g_dev_t u8g_dev_st7565_nhd_c12832_parallel; +/* Display: Displaytech 64128N */ +extern u8g_dev_t u8g_dev_st7565_64128n_sw_spi; +extern u8g_dev_t u8g_dev_st7565_64128n_hw_spi; + +/* dfrobot 128x64 Graphic LCD (SKU:FIT0021) */ +extern u8g_dev_t u8g_dev_st7920_128x64_sw_spi; +extern u8g_dev_t u8g_dev_st7920_128x64_hw_spi; +extern u8g_dev_t u8g_dev_st7920_128x64_8bit; + +extern u8g_dev_t u8g_dev_st7920_128x64_4x_sw_spi; +extern u8g_dev_t u8g_dev_st7920_128x64_4x_hw_spi; +extern u8g_dev_t u8g_dev_st7920_128x64_4x_8bit; + +/* NHD-19232WG */ +extern u8g_dev_t u8g_dev_st7920_192x32_sw_spi; +extern u8g_dev_t u8g_dev_st7920_192x32_hw_spi; +extern u8g_dev_t u8g_dev_st7920_192x32_8bit; + +extern u8g_dev_t u8g_dev_st7920_192x32_4x_sw_spi; +extern u8g_dev_t u8g_dev_st7920_192x32_4x_hw_spi; +extern u8g_dev_t u8g_dev_st7920_192x32_4x_8bit; + +/* CrystalFontz CFAG20232 */ +extern u8g_dev_t u8g_dev_st7920_202x32_sw_spi; +extern u8g_dev_t u8g_dev_st7920_202x32_hw_spi; +extern u8g_dev_t u8g_dev_st7920_202x32_8bit; + +extern u8g_dev_t u8g_dev_st7920_202x32_4x_sw_spi; +extern u8g_dev_t u8g_dev_st7920_202x32_4x_hw_spi; +extern u8g_dev_t u8g_dev_st7920_202x32_4x_8bit; + +/* LC7981 160x80 display */ +extern u8g_dev_t u8g_dev_lc7981_160x80_8bit; +/* LC7981 240x64 display */ +extern u8g_dev_t u8g_dev_lc7981_240x64_8bit; +/* LC7981 240x128 display */ +extern u8g_dev_t u8g_dev_lc7981_240x128_8bit; +/* LC7981 320x64 display */ +extern u8g_dev_t u8g_dev_lc7981_320x64_8bit; + +/* T6963, all t6963 devices have double page (2x) */ +extern u8g_dev_t u8g_dev_t6963_240x128_8bit; +extern u8g_dev_t u8g_dev_t6963_240x64_8bit; +extern u8g_dev_t u8g_dev_t6963_128x64_8bit; + +/* Display: EA DOGXL160, Size: 160x104 monochrom & gray level */ +extern u8g_dev_t u8g_dev_uc1610_dogxl160_bw_sw_spi; +extern u8g_dev_t u8g_dev_uc1610_dogxl160_bw_hw_spi; +extern u8g_dev_t u8g_dev_uc1610_dogxl160_gr_sw_spi; +extern u8g_dev_t u8g_dev_uc1610_dogxl160_gr_hw_spi; + +extern u8g_dev_t u8g_dev_uc1610_dogxl160_2x_bw_sw_spi; +extern u8g_dev_t u8g_dev_uc1610_dogxl160_2x_bw_hw_spi; +extern u8g_dev_t u8g_dev_uc1610_dogxl160_2x_gr_sw_spi; +extern u8g_dev_t u8g_dev_uc1610_dogxl160_2x_gr_hw_spi; + +/* Display: Generic KS0108b, Size: 128x64 monochrom */ +extern u8g_dev_t u8g_dev_ks0108_128x64; /* official Arduino Library interface */ +extern u8g_dev_t u8g_dev_ks0108_128x64_fast; /* faster, but uses private tables from the Arduino Library */ + +/* Nokia 84x48 Display with PCD8544 */ +extern u8g_dev_t u8g_dev_pcd8544_84x48_sw_spi; +extern u8g_dev_t u8g_dev_tls8204_84x48_sw_spi; + +/* Nokia 96x65 Display with PCF8812 */ +extern u8g_dev_t u8g_dev_pcf8812_96x65_sw_spi; + +/* NHD-2.7-12864UCY3 OLED Display with SSD1325 Controller */ +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_bw_sw_spi; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_bw_hw_spi; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_bw_parallel; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_gr_sw_spi; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_gr_hw_spi; + +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_sw_spi; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_hw_spi; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_parallel; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_gr_sw_spi; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_gr_hw_spi; + +/* LY120 OLED with SSD1327 Controller (tested with Seeedstudio module) */ +extern u8g_dev_t u8g_dev_ssd1327_96x96_gr_sw_spi; +extern u8g_dev_t u8g_dev_ssd1327_96x96_gr_hw_spi; +extern u8g_dev_t u8g_dev_ssd1327_96x96_gr_i2c; + +extern u8g_dev_t u8g_dev_ssd1327_96x96_2x_gr_sw_spi; +extern u8g_dev_t u8g_dev_ssd1327_96x96_2x_gr_hw_spi; +extern u8g_dev_t u8g_dev_ssd1327_96x96_2x_gr_i2c; + +/* NHD-3.12-25664 OLED Display with SSD1322 Controller */ +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_bw_sw_spi; +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_bw_hw_spi; +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_bw_sw_spi; +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_bw_hw_spi; + +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_gr_sw_spi; +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_gr_hw_spi; +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_gr_sw_spi; +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_gr_hw_spi; + +/* OLED 128x64 Display with SSD1306 Controller */ +extern u8g_dev_t u8g_dev_ssd1306_128x64_sw_spi; +extern u8g_dev_t u8g_dev_ssd1306_128x64_hw_spi; +extern u8g_dev_t u8g_dev_ssd1306_128x64_i2c; + +/* OLED 128x64 Display with SSD1309 Controller */ +extern u8g_dev_t u8g_dev_ssd1309_128x64_sw_spi; +extern u8g_dev_t u8g_dev_ssd1309_128x64_hw_spi; +extern u8g_dev_t u8g_dev_ssd1309_128x64_i2c; + +/* OLED 128x32 Display with SSD1306 Controller */ +extern u8g_dev_t u8g_dev_ssd1306_128x32_sw_spi; +extern u8g_dev_t u8g_dev_ssd1306_128x32_hw_spi; +extern u8g_dev_t u8g_dev_ssd1306_128x32_i2c; + +/* experimental 65K TFT with st7687 controller */ +extern u8g_dev_t u8g_dev_st7687_c144mvgd_sw_spi; +extern u8g_dev_t u8g_dev_st7687_c144mvgd_8bit; + +/* SBN1661/SED1520 display with 122x32 */ +extern u8g_dev_t u8g_dev_sbn1661_122x32; + +/* flip disc matrix */ +extern u8g_dev_t u8g_dev_flipdisc_2x7; +void u8g_SetFlipDiscCallback(u8g_t *u8g, void (*cb)(uint8_t id, uint8_t page, uint8_t width, uint8_t *row1, uint8_t *row2)); + +/* ILI9325D based TFT */ +extern u8g_dev_t u8g_dev_ili9325d_320x240_8bit; + +/* u8g_virtual_screen.c */ +extern u8g_dev_t u8g_dev_vs; + + +/*===============================================================*/ +/* device messages */ + +struct _u8g_dev_arg_pixel_t +{ + u8g_uint_t x, y; /* will be modified */ + uint8_t pixel; /* will be modified */ + uint8_t dir; + uint8_t color; +}; +/* typedef struct _u8g_dev_arg_pixel_t u8g_dev_arg_pixel_t; */ /* forward decl */ + +struct _u8g_dev_arg_bbx_t +{ + u8g_uint_t x, y, w, h; +}; +/* typedef struct _u8g_dev_arg_bbx_t u8g_dev_arg_bbx_t; */ /* forward decl */ + +struct _u8g_box_t +{ + u8g_uint_t x0, y0, x1, y1; +}; +/* typedef struct _u8g_box_t u8g_box_t; */ /* forward decl */ + + +#define U8G_DEV_MSG_INIT 10 +#define U8G_DEV_MSG_STOP 11 + +/* arg: pointer to uint8_t, contranst value between 0 and 255 */ +#define U8G_DEV_MSG_CONTRAST 15 + +#define U8G_DEV_MSG_SLEEP_ON 16 +#define U8G_DEV_MSG_SLEEP_OFF 17 + +#define U8G_DEV_MSG_PAGE_FIRST 20 +#define U8G_DEV_MSG_PAGE_NEXT 21 + +/* arg: u8g_dev_arg_bbx_t * */ +/* new algorithm with U8G_DEV_MSG_GET_PAGE_BOX makes this msg obsolete */ +/* #define U8G_DEV_MSG_IS_BBX_INTERSECTION 22 */ + +/* arg: u8g_box_t *, fill structure with current page properties */ +#define U8G_DEV_MSG_GET_PAGE_BOX 23 + +/* +#define U8G_DEV_MSG_PRIMITIVE_START 30 +#define U8G_DEV_MSG_PRIMITIVE_END 31 +*/ + +/* arg: u8g_dev_arg_pixel_t * */ +#define U8G_DEV_MSG_SET_PIXEL 50 +#define U8G_DEV_MSG_SET_8PIXEL 59 + +#define U8G_DEV_MSG_SET_COLOR_INDEX 60 + +#define U8G_DEV_MSG_SET_XY_CB 61 + +#define U8G_DEV_MSG_GET_WIDTH 70 +#define U8G_DEV_MSG_GET_HEIGHT 71 +#define U8G_DEV_MSG_GET_MODE 72 + +/*===============================================================*/ +/* device modes */ +#define U8G_MODE(is_color, bits_per_pixel) (((is_color)<<4)|(bits_per_pixel)) + +#define U8G_MODE_UNKNOWN 0 +#define U8G_MODE_BW U8G_MODE(0, 1) +#define U8G_MODE_GRAY2BIT U8G_MODE(0, 2) +#define U8G_MODE_R3G3B2 U8G_MODE(1, 8) + +#define U8G_MODE_GET_BITS_PER_PIXEL(mode) ((mode)&15) +#define U8G_MODE_IS_COLOR(mode) (((mode)&16)==0?0:1) + + +/*===============================================================*/ +/* com options */ + +/* uncomment the following line for Atmega HW SPI double speed, issue 89 */ +/* #define U8G_HW_SPI_2X 1 */ + +/* com messages */ + +#define U8G_COM_MSG_STOP 0 +#define U8G_COM_MSG_INIT 1 + +#define U8G_COM_MSG_ADDRESS 2 + +/* CHIP_SELECT argument: number of the chip which needs to be activated, so this is more like high active */ +#define U8G_COM_MSG_CHIP_SELECT 3 + +#define U8G_COM_MSG_RESET 4 + +#define U8G_COM_MSG_WRITE_BYTE 5 +#define U8G_COM_MSG_WRITE_SEQ 6 +#define U8G_COM_MSG_WRITE_SEQ_P 7 + + +/* com driver */ +uint8_t u8g_com_null_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_null.c */ +uint8_t u8g_com_arduino_std_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_std_sw_spi.c */ +uint8_t u8g_com_arduino_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_sw_spi.c */ +uint8_t u8g_com_arduino_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_hw_spi.c */ +uint8_t u8g_com_arduino_st7920_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_st7920_spi.c */ +uint8_t u8g_com_arduino_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_st7920_hw_spi.c */ +uint8_t u8g_com_arduino_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_parallel.c */ +uint8_t u8g_com_arduino_fast_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_fast_parallel.c */ +uint8_t u8g_com_arduino_port_d_wr_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_port_d_wr.c */ +uint8_t u8g_com_arduino_no_en_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_no_en_parallel.c */ +uint8_t u8g_com_arduino_ssd_i2c_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_ssd_i2c.c */ +uint8_t u8g_com_arduino_t6963_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_t6963.c */ + + +uint8_t u8g_com_atmega_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_atmega_hw_spi.c */ +uint8_t u8g_com_atmega_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_atmega_sw_spi.c */ +uint8_t u8g_com_atmega_st7920_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_atmega_st7920_spi.c */ +uint8_t u8g_com_atmega_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); +uint8_t u8g_com_atmega_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_atmega_parallel.c */ + + +/* + Translation of system specific com drives to generic com names + At the moment, the following generic com drives are available + U8G_COM_HW_SPI + U8G_COM_SW_SPI + U8G_COM_PARALLEL + U8G_COM_T6963 + U8G_COM_FAST_PARALLEL + U8G_COM_SSD_I2C + +defined(__18CXX) || defined(__PIC32MX) + +*/ +/* ==== HW SPI, Arduino ====*/ +#if defined(ARDUINO) +#if defined(__AVR__) +#define U8G_COM_HW_SPI u8g_com_arduino_hw_spi_fn +#define U8G_COM_ST7920_HW_SPI u8g_com_arduino_st7920_hw_spi_fn +#elif defined(__18CXX) || defined(__PIC32MX) +#define U8G_COM_HW_SPI u8g_com_null_fn +#define U8G_COM_ST7920_HW_SPI u8g_com_null_fn +#endif +#endif +/* ==== HW SPI, not Arduino ====*/ +#ifndef U8G_COM_HW_SPI +#if defined(__AVR__) +#define U8G_COM_HW_SPI u8g_com_atmega_hw_spi_fn +#define U8G_COM_ST7920_HW_SPI u8g_com_atmega_st7920_hw_spi_fn +#endif +#endif +#ifndef U8G_COM_HW_SPI +#define U8G_COM_HW_SPI u8g_com_null_fn +#define U8G_COM_ST7920_HW_SPI u8g_com_null_fn +#endif + +/* ==== SW SPI, Arduino ====*/ +#if defined(ARDUINO) +#if defined(__AVR__) +#define U8G_COM_SW_SPI u8g_com_arduino_sw_spi_fn +#define U8G_COM_ST7920_SW_SPI u8g_com_arduino_st7920_spi_fn +#elif defined(__18CXX) || defined(__PIC32MX) +#define U8G_COM_SW_SPI u8g_com_arduino_sw_spi_fn +#define U8G_COM_ST7920_SW_SPI u8g_com_arduino_st7920_spi_fn +#elif defined(__arm__) /* Arduino Due */ +#define U8G_COM_SW_SPI u8g_com_arduino_std_sw_spi_fn +#define U8G_COM_ST7920_SW_SPI u8g_com_arduino_st7920_spi_fn +#endif +#endif + +#ifndef U8G_COM_SW_SPI +/* ==== SW SPI, not Arduino ====*/ +#if defined(__AVR__) +#define U8G_COM_SW_SPI u8g_com_atmega_sw_spi_fn +#define U8G_COM_ST7920_SW_SPI u8g_com_atmega_st7920_sw_spi_fn +#endif +#endif +#ifndef U8G_COM_SW_SPI +#define U8G_COM_SW_SPI u8g_com_null_fn +#define U8G_COM_ST7920_SW_SPI u8g_com_null_fn +#endif + +/* ==== Parallel iinterface, Arduino ====*/ +#if defined(ARDUINO) +#if defined(__AVR__) +#define U8G_COM_PARALLEL u8g_com_arduino_parallel_fn +#define U8G_COM_FAST_PARALLEL u8g_com_arduino_fast_parallel_fn +#define U8G_COM_T6963 u8g_com_arduino_t6963_fn +#else /* Arduino Due, Chipkit PIC32 */ +#define U8G_COM_PARALLEL u8g_com_arduino_parallel_fn +#define U8G_COM_FAST_PARALLEL u8g_com_arduino_parallel_fn +#define U8G_COM_T6963 u8g_com_null_fn +#endif +#endif +#ifndef U8G_COM_PARALLEL +#if defined(__AVR__) +#define U8G_COM_PARALLEL u8g_com_atmega_parallel_fn +#define U8G_COM_FAST_PARALLEL u8g_com_atmega_parallel_fn +#define U8G_COM_T6963 u8g_com_null_fn +#endif +#endif +#ifndef U8G_COM_PARALLEL +#define U8G_COM_PARALLEL u8g_com_null_fn +#define U8G_COM_FAST_PARALLEL u8g_com_null_fn +#define U8G_COM_T6963 u8g_com_null_fn +#endif + +#if defined(ARDUINO) +#if defined(__AVR__) +#define U8G_COM_SSD_I2C u8g_com_arduino_ssd_i2c_fn +#endif +#endif + +#ifndef U8G_COM_SSD_I2C +#if defined(__AVR__) +/* AVR variant can use the arduino version at the moment */ +#define U8G_COM_SSD_I2C u8g_com_arduino_ssd_i2c_fn +#endif +#endif +#ifndef U8G_COM_SSD_I2C +#define U8G_COM_SSD_I2C u8g_com_null_fn +#endif + + + +/*===============================================================*/ +/* com api */ +uint8_t u8g_InitCom(u8g_t *u8g, u8g_dev_t *dev); +void u8g_StopCom(u8g_t *u8g, u8g_dev_t *dev); +void u8g_EnableCom(u8g_t *u8g, u8g_dev_t *dev); /* obsolete */ +void u8g_DisableCom(u8g_t *u8g, u8g_dev_t *dev); /* obsolete */ +void u8g_SetChipSelect(u8g_t *u8g, u8g_dev_t *dev, uint8_t cs); +void u8g_SetResetLow(u8g_t *u8g, u8g_dev_t *dev); +void u8g_SetResetHigh(u8g_t *u8g, u8g_dev_t *dev); +void u8g_SetAddress(u8g_t *u8g, u8g_dev_t *dev, uint8_t address); +uint8_t u8g_WriteByte(u8g_t *u8g, u8g_dev_t *dev, uint8_t val); +uint8_t u8g_WriteSequence(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, uint8_t *seq); +uint8_t u8g_WriteSequenceP(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, const uint8_t *seq); + + + +#define U8G_ESC_DLY(x) 255, ((x) & 0x7f) +#define U8G_ESC_CS(x) 255, (0xd0 | ((x)&0x0f)) +#define U8G_ESC_ADR(x) 255, (0xe0 | ((x)&0x0f)) +#define U8G_ESC_RST(x) 255, (0xc0 | ((x)&0x0f)) +#define U8G_ESC_VCC(x) 255, (0xbe | ((x)&0x01)) +#define U8G_ESC_END 255, 254 +#define U8G_ESC_255 255, 255 +//uint8_t u8g_WriteEscSeqP(u8g_t *u8g, u8g_dev_t *dev, u8g_pgm_uint8_t *esc_seq); +uint8_t u8g_WriteEscSeqP(u8g_t *u8g, u8g_dev_t *dev, const uint8_t *esc_seq); + + +/* u8g_com_api_16gr.c */ +uint8_t u8g_WriteByteBWTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t b); +uint8_t u8g_WriteSequenceBWTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, uint8_t *ptr); +uint8_t u8g_WriteByte4LTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t b); +uint8_t u8g_WriteSequence4LTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, uint8_t *ptr); + + +/*===============================================================*/ +/* u8g_arduino_common.c */ +void u8g_com_arduino_digital_write(u8g_t *u8g, uint8_t pin_index, uint8_t value); +void u8g_com_arduino_assign_pin_output_high(u8g_t *u8g); + +/*===============================================================*/ +/* u8g_com_io.c */ + +/* create internal number from port and pin */ +uint8_t u8g_Pin(uint8_t port, uint8_t bitpos); +#define PN(port,bitpos) u8g_Pin(port,bitpos) + +/* low level procedures */ +void u8g_SetPinOutput(uint8_t internal_pin_number); +void u8g_SetPinLevel(uint8_t internal_pin_number, uint8_t level); +void u8g_SetPinInput(uint8_t internal_pin_number); +uint8_t u8g_GetPinLevel(uint8_t internal_pin_number); + +/* u8g level procedures, expect U8G_PI_xxx macro */ +void u8g_SetPIOutput(u8g_t *u8g, uint8_t pi); +void u8g_SetPILevel(u8g_t *u8g, uint8_t pi, uint8_t level); + + +/*===============================================================*/ +/* page */ +struct _u8g_page_t +{ + u8g_uint_t page_height; + u8g_uint_t total_height; + u8g_uint_t page_y0; + u8g_uint_t page_y1; + uint8_t page; +}; +typedef struct _u8g_page_t u8g_page_t; + +void u8g_page_First(u8g_page_t *p) U8G_NOINLINE; /* u8g_page.c */ +void u8g_page_Init(u8g_page_t *p, u8g_uint_t page_height, u8g_uint_t total_height ) U8G_NOINLINE; /* u8g_page.c */ +uint8_t u8g_page_Next(u8g_page_t *p) U8G_NOINLINE; /* u8g_page.c */ + +/*===============================================================*/ +/* page buffer (pb) */ + +struct _u8g_pb_t +{ + u8g_page_t p; + u8g_uint_t width; /* pixel width */ + void *buf; +}; +typedef struct _u8g_pb_t u8g_pb_t; + + +/* u8g_pb.c */ +void u8g_pb_Clear(u8g_pb_t *b); +uint8_t u8g_pb_IsYIntersection(u8g_pb_t *pb, u8g_uint_t v0, u8g_uint_t v1); +uint8_t u8g_pb_IsXIntersection(u8g_pb_t *b, u8g_uint_t v0, u8g_uint_t v1); +uint8_t u8g_pb_IsIntersection(u8g_pb_t *pb, u8g_dev_arg_bbx_t *bbx); +void u8g_pb_GetPageBox(u8g_pb_t *pb, u8g_box_t *box); +uint8_t u8g_pb_Is8PixelVisible(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel); +uint8_t u8g_pb_WriteBuffer(u8g_pb_t *b, u8g_t *u8g, u8g_dev_t *dev); + +/* + note on __attribute__ ((nocommon)) + AVR scripts often use --gc-sections on the linker to remove unused section. + This works fine for initialed data and text sections. In principle .bss is also + handled, but the name##_pb definition is not removed. Reason is, that + array definitions are placed in the COMMON section, by default + The attribute "nocommon" removes this automatic assignment to the + COMMON section and directly puts it into .bss. As a result, if more + than one buffer is defined in one file, then it will be removed with --gc-sections + + .. not sure if Arduino IDE uses -fno-common... if yes, then the attribute is + redundant. +*/ +#define U8G_PB_DEV(name, width, height, page_height, dev_fn, com_fn) \ +uint8_t name##_buf[width] U8G_NOCOMMON ; \ +u8g_pb_t name##_pb = { {page_height, height, 0, 0, 0}, width, name##_buf}; \ +u8g_dev_t name = { dev_fn, &name##_pb, com_fn } + + +void u8g_pb8v1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb8v1_Clear(u8g_pb_t *b) U8G_NOINLINE; + +uint8_t u8g_pb8v1_IsYIntersection(u8g_pb_t *b, u8g_uint_t v0, u8g_uint_t v1); +uint8_t u8g_pb8v1_IsXIntersection(u8g_pb_t *b, u8g_uint_t v0, u8g_uint_t v1); +uint8_t u8g_pb8v1_WriteBuffer(u8g_pb_t *b, u8g_t *u8g, u8g_dev_t *dev); + +uint8_t u8g_dev_pb8v1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb16v1.c */ +uint8_t u8g_dev_pb16v1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb14v1.c */ +uint8_t u8g_dev_pb14v1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb8v2.c */ +uint8_t u8g_dev_pb8v2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb16v2.c (double memory of pb8v2) */ +uint8_t u8g_dev_pb16v2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + + +/* u8g_pb8h1.c */ +uint8_t u8g_dev_pb8h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb16h1.c */ +uint8_t u8g_dev_pb16h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb32h1.c */ +uint8_t u8g_dev_pb32h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + + +/* u8g_pb8h2.c 8 pixel rows, byte has horzontal orientation */ +uint8_t u8g_dev_pb8h2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb16h2.c */ +uint8_t u8g_dev_pb16h2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + + + +/* u8g_pb8h1f.c */ +uint8_t u8g_dev_pb8h1f_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb8h8.c */ +uint8_t u8g_dev_pb8h8_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + + + +/*===============================================================*/ +/* u8g_ll_api.c */ + +/* cursor draw callback */ +typedef void (*u8g_draw_cursor_fn)(u8g_t *u8g); + +/* vertical reference point calculation callback */ +typedef u8g_uint_t (*u8g_font_calc_vref_fnptr)(u8g_t *u8g); + +/* state backup and restore procedure */ +typedef void (*u8g_state_cb)(uint8_t msg); + + +/* PI = Pin Index */ + +/* reset pin, usually optional */ +#define U8G_PI_RESET 0 + +/* address / data or instruction */ +#define U8G_PI_A0 1 +#define U8G_PI_DI 1 + +/* chip select line */ +#define U8G_PI_CS 2 +#define U8G_PI_CS1 2 +#define U8G_PI_CS2 3 +/* Feb 2013: A0 state moved from 7 to 3 for t6963 controller*/ +#define U8G_PI_A0_STATE 3 + +/* enable / clock signal */ +#define U8G_PI_EN 4 +#define U8G_PI_CS_STATE 4 +#define U8G_PI_SCK 4 +#define U8G_PI_SCL 4 +#define U8G_PI_RD 4 + + +/* data pins, shared with SPI and I2C pins */ +#define U8G_PI_D0 5 +#define U8G_PI_MOSI 5 +#define U8G_PI_SDA 5 +#define U8G_PI_D1 6 +#define U8G_PI_MISO 6 +#define U8G_PI_D2 7 +#define U8G_PI_D3 8 +#define U8G_PI_SET_A0 8 +#define U8G_PI_D4 9 +#define U8G_PI_D5 10 +#define U8G_PI_I2C_OPTION 11 +#define U8G_PI_D6 11 +#define U8G_PI_D7 12 + +/* read/write pin, must be the last pin in the list, this means U8G_PIN_LIST_LEN = U8G_PI_RW + 1*/ +#define U8G_PI_WR 13 +#define U8G_PI_RW 13 + +#define U8G_PIN_LIST_LEN 14 + + +#define U8G_PIN_NONE 255 + +#define U8G_FONT_HEIGHT_MODE_TEXT 0 +#define U8G_FONT_HEIGHT_MODE_XTEXT 1 +#define U8G_FONT_HEIGHT_MODE_ALL 2 + +struct _u8g_t +{ + u8g_uint_t width; + u8g_uint_t height; + + + u8g_dev_t *dev; /* first device in the device chain */ + const u8g_pgm_uint8_t *font; /* regular font for all text procedures */ + const u8g_pgm_uint8_t *cursor_font; /* special font for cursor procedures */ + uint8_t cursor_fg_color, cursor_bg_color; + uint8_t cursor_encoding; + uint8_t mode; /* display mode, one of U8G_MODE_xxx */ + u8g_uint_t cursor_x; + u8g_uint_t cursor_y; + u8g_draw_cursor_fn cursor_fn; + + int8_t glyph_dx; + int8_t glyph_x; + int8_t glyph_y; + uint8_t glyph_width; + uint8_t glyph_height; + + u8g_font_calc_vref_fnptr font_calc_vref; + uint8_t font_height_mode; + int8_t font_ref_ascent; + int8_t font_ref_descent; + uint8_t font_line_spacing_factor; /* line_spacing = factor * (ascent - descent) / 64 */ + uint8_t line_spacing; + + u8g_dev_arg_pixel_t arg_pixel; + /* uint8_t color_index; */ + + uint8_t pin_list[U8G_PIN_LIST_LEN]; + + u8g_state_cb state_cb; + + u8g_box_t current_page; /* current box of the visible page */ + +}; + +#define u8g_GetFontAscent(u8g) ((u8g)->font_ref_ascent) +#define u8g_GetFontDescent(u8g) ((u8g)->font_ref_descent) +#define u8g_GetFontLineSpacing(u8g) ((u8g)->line_spacing) + +uint8_t u8g_call_dev_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +uint8_t u8g_InitLL(u8g_t *u8g, u8g_dev_t *dev); +void u8g_FirstPageLL(u8g_t *u8g, u8g_dev_t *dev); +uint8_t u8g_NextPageLL(u8g_t *u8g, u8g_dev_t *dev); +uint8_t u8g_SetContrastLL(u8g_t *u8g, u8g_dev_t *dev, uint8_t contrast); +void u8g_DrawPixelLL(u8g_t *u8g, u8g_dev_t *dev, u8g_uint_t x, u8g_uint_t y); +void u8g_Draw8PixelLL(u8g_t *u8g, u8g_dev_t *dev, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t pixel); +uint8_t u8g_IsBBXIntersectionLL(u8g_t *u8g, u8g_dev_t *dev, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h); /* obsolete */ +u8g_uint_t u8g_GetWidthLL(u8g_t *u8g, u8g_dev_t *dev); +u8g_uint_t u8g_GetHeightLL(u8g_t *u8g, u8g_dev_t *dev); + +void u8g_UpdateDimension(u8g_t *u8g); +uint8_t u8g_Begin(u8g_t *u8g); /* reset device, put it into default state and call u8g_UpdateDimension() */ +uint8_t u8g_Init(u8g_t *u8g, u8g_dev_t *dev); /* only usefull if the device only as hardcoded ports */ +uint8_t u8g_InitSPI(u8g_t *u8g, u8g_dev_t *dev, uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset); +uint8_t u8g_InitHWSPI(u8g_t *u8g, u8g_dev_t *dev, uint8_t cs, uint8_t a0, uint8_t reset); +uint8_t u8g_InitI2C(u8g_t *u8g, u8g_dev_t *dev, uint8_t options); /* use U8G_I2C_OPT_NONE as options */ +uint8_t u8g_Init8BitFixedPort(u8g_t *u8g, u8g_dev_t *dev, uint8_t en, uint8_t cs, uint8_t di, uint8_t rw, uint8_t reset); +uint8_t u8g_Init8Bit(u8g_t *u8g, u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw, uint8_t reset); +uint8_t u8g_InitRW8Bit(u8g_t *u8g, u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset); +void u8g_FirstPage(u8g_t *u8g); +uint8_t u8g_NextPage(u8g_t *u8g); +uint8_t u8g_SetContrast(u8g_t *u8g, uint8_t contrast); +void u8g_SleepOn(u8g_t *u8g); +void u8g_SleepOff(u8g_t *u8g); +void u8g_DrawPixel(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y); +void u8g_Draw8Pixel(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t pixel); + +uint8_t u8g_Stop(u8g_t *u8g); +void u8g_SetColorIndex(u8g_t *u8g, uint8_t idx); +uint8_t u8g_GetColorIndex(u8g_t *u8g); + +uint8_t u8g_GetDefaultForegroundColor(u8g_t *u8g); +void u8g_SetDefaultForegroundColor(u8g_t *u8g); + +uint8_t u8g_GetDefaultBackgroundColor(u8g_t *u8g); +void u8g_SetDefaultBackgroundColor(u8g_t *u8g); + +uint8_t u8g_GetDefaultMidColor(u8g_t *u8g); +void u8g_SetDefaultMidColor(u8g_t *u8g); + +#define u8g_GetWidth(u8g) ((u8g)->width) +#define u8g_GetHeight(u8g) ((u8g)->height) +#define u8g_GetMode(u8g) ((u8g)->mode) +/* + U8G_MODE_GET_BITS_PER_PIXEL(u8g_GetMode(u8g)) + U8G_MODE_IS_COLOR(u8g_GetMode(u8g)) +*/ + +/* u8g_state.c */ +#define U8G_STATE_ENV_IDX 0 +#define U8G_STATE_U8G_IDX 1 +#define U8G_STATE_RESTORE 0 +#define U8G_STATE_BACKUP 1 +#define U8G_STATE_MSG_COMPOSE(cmd,idx) (((cmd)<<1) | (idx)) + +#define U8G_STATE_MSG_RESTORE_ENV U8G_STATE_MSG_COMPOSE(U8G_STATE_RESTORE,U8G_STATE_ENV_IDX) +#define U8G_STATE_MSG_BACKUP_ENV U8G_STATE_MSG_COMPOSE(U8G_STATE_BACKUP,U8G_STATE_ENV_IDX) +#define U8G_STATE_MSG_RESTORE_U8G U8G_STATE_MSG_COMPOSE(U8G_STATE_RESTORE,U8G_STATE_U8G_IDX) +#define U8G_STATE_MSG_BACKUP_U8G U8G_STATE_MSG_COMPOSE(U8G_STATE_BACKUP,U8G_STATE_U8G_IDX) + +#define U8G_STATE_MSG_GET_IDX(msg) ((msg)&1) +#define U8G_STATE_MSG_IS_BACKUP(msg) ((msg)&2) + + + +void u8g_state_dummy_cb(uint8_t msg); +void u8g_backup_avr_spi(uint8_t msg); /* backup SPI state on atmel avr controller */ + +void u8g_SetHardwareBackup(u8g_t *u8g, u8g_state_cb backup_cb); + +/* u8g_clip.c */ + +uint8_t u8g_IsBBXIntersection(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h); + + +/* u8g_rot.c */ + +void u8g_UndoRotation(u8g_t *u8g); +void u8g_SetRot90(u8g_t *u8g); +void u8g_SetRot180(u8g_t *u8g); +void u8g_SetRot270(u8g_t *u8g); + +/* u8g_scale.c */ + +void u8g_UndoScale(u8g_t *u8g); +void u8g_SetScale2x2(u8g_t *u8g); + + +/* u8g_font.c */ + +size_t u8g_font_GetSize(const void *font); +uint8_t u8g_font_GetFontStartEncoding(const void *font) U8G_NOINLINE; +uint8_t u8g_font_GetFontEndEncoding(const void *font) U8G_NOINLINE; + +void u8g_SetFont(u8g_t *u8g, const u8g_fntpgm_uint8_t *font); + +uint8_t u8g_GetFontBBXWidth(u8g_t *u8g); +uint8_t u8g_GetFontBBXHeight(u8g_t *u8g); +int8_t u8g_GetFontBBXOffX(u8g_t *u8g); +int8_t u8g_GetFontBBXOffY(u8g_t *u8g); +uint8_t u8g_GetFontCapitalAHeight(u8g_t *u8g); + +uint8_t u8g_IsGlyph(u8g_t *u8g, uint8_t requested_encoding); +int8_t u8g_GetGlyphDeltaX(u8g_t *u8g, uint8_t requested_encoding); + +int8_t u8g_draw_glyph(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding); /* used by u8g_cursor.c */ + +int8_t u8g_DrawGlyphDir(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t encoding); +int8_t u8g_DrawGlyph(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding); +int8_t u8g_DrawGlyph90(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding); +int8_t u8g_DrawGlyph180(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding); +int8_t u8g_DrawGlyph270(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding); +int8_t u8g_DrawGlyphFontBBX(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t encoding); + +u8g_uint_t u8g_DrawStr(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s); +u8g_uint_t u8g_DrawStr90(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s); +u8g_uint_t u8g_DrawStr180(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s); +u8g_uint_t u8g_DrawStr270(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s); + +u8g_uint_t u8g_DrawStrDir(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, const char *s); + + +u8g_uint_t u8g_DrawStrP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s); +u8g_uint_t u8g_DrawStr90P(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s); +u8g_uint_t u8g_DrawStr180P(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s); +u8g_uint_t u8g_DrawStr270P(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s); + + +void u8g_SetFontRefHeightText(u8g_t *u8g); +void u8g_SetFontRefHeightExtendedText(u8g_t *u8g); +void u8g_SetFontRefHeightAll(u8g_t *u8g); +void u8g_SetFontLineSpacingFactor(u8g_t *u8g, uint8_t factor); + +u8g_uint_t u8g_font_calc_vref_font(u8g_t *u8g); +u8g_uint_t u8g_font_calc_vref_bottom(u8g_t *u8g); +u8g_uint_t u8g_font_calc_vref_top(u8g_t *u8g); +u8g_uint_t u8g_font_calc_vref_center(u8g_t *u8g); + +void u8g_SetFontPosBaseline(u8g_t *u8g); +void u8g_SetFontPosBottom(u8g_t *u8g); +void u8g_SetFontPosCenter(u8g_t *u8g); +void u8g_SetFontPosTop(u8g_t *u8g); + + +u8g_uint_t u8g_GetStrPixelWidth(u8g_t *u8g, const char *s); +u8g_uint_t u8g_GetStrPixelWidthP(u8g_t *u8g, const u8g_pgm_uint8_t *s); +int8_t u8g_GetStrX(u8g_t *u8g, const char *s); +int8_t u8g_GetStrXP(u8g_t *u8g, const u8g_pgm_uint8_t *s); +u8g_uint_t u8g_GetStrWidth(u8g_t *u8g, const char *s); +u8g_uint_t u8g_GetStrWidthP(u8g_t *u8g, const u8g_pgm_uint8_t *s); + +u8g_uint_t u8g_DrawStrFontBBX(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, const char *s); + +void u8g_GetStrMinBox(u8g_t *u8g, const char *s, u8g_uint_t *x, u8g_uint_t *y, u8g_uint_t *width, u8g_uint_t *height); +void u8g_GetStrAMinBox(u8g_t *u8g, const char *s, u8g_uint_t *x, u8g_uint_t *y, u8g_uint_t *width, u8g_uint_t *height); + +/* u8g_rect.c */ + +void u8g_draw_box(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) U8G_NOINLINE; + +void u8g_DrawHLine(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w); +void u8g_DrawVLine(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w); +void u8g_DrawFrame(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h); +void u8g_DrawBox(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h); + +void u8g_DrawRFrame(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, u8g_uint_t r); +void u8g_DrawRBox(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, u8g_uint_t r); + +/* u8g_bitmap.c */ + +void u8g_DrawHBitmap(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, const uint8_t *bitmap); +void u8g_DrawHBitmapP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, const u8g_pgm_uint8_t *bitmap); +void u8g_DrawBitmap(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, u8g_uint_t h, const uint8_t *bitmap); +void u8g_DrawBitmapP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, u8g_uint_t h, const u8g_pgm_uint8_t *bitmap); + +void u8g_DrawXBM(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, const uint8_t *bitmap); +void u8g_DrawXBMP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, const u8g_pgm_uint8_t *bitmap); + + +/* u8g_line.c */ +void u8g_DrawLine(u8g_t *u8g, u8g_uint_t x1, u8g_uint_t y1, u8g_uint_t x2, u8g_uint_t y2); + + +/* u8g_circle.c */ + +/* the following, commented code has been rewritten or is not yet finished +#define U8G_CIRC_UPPER_RIGHT 0x01 +#define U8G_CIRC_UPPER_LEFT 0x02 +#define U8G_CIRC_LOWER_LEFT 0x04 +#define U8G_CIRC_LOWER_RIGHT 0x08 +#define U8G_CIRC_ALL (U8G_CIRC_UPPER_RIGHT|U8G_CIRC_UPPER_LEFT|U8G_CIRC_LOWER_RIGHT|U8G_CIRC_LOWER_LEFT) +void u8g_DrawEmpCirc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option); +void u8g_DrawFillCirc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option); +void u8g_DrawEllipseRect(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t x1, u8g_uint_t y1); +*/ + +#define U8G_DRAW_UPPER_RIGHT 0x01 +#define U8G_DRAW_UPPER_LEFT 0x02 +#define U8G_DRAW_LOWER_LEFT 0x04 +#define U8G_DRAW_LOWER_RIGHT 0x08 +#define U8G_DRAW_ALL (U8G_DRAW_UPPER_RIGHT|U8G_DRAW_UPPER_LEFT|U8G_DRAW_LOWER_RIGHT|U8G_DRAW_LOWER_LEFT) + +void u8g_draw_circle(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) U8G_NOINLINE; +void u8g_draw_disc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) U8G_NOINLINE; + +void u8g_DrawCircle(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option); +void u8g_DrawDisc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option); + +/* u8g_clip.c */ +uint8_t u8g_is_box_bbx_intersection(u8g_box_t *box, u8g_dev_arg_bbx_t *bbx); + + +/* u8g_cursor.c */ +void u8g_SetCursorFont(u8g_t *u8g, const u8g_pgm_uint8_t *cursor_font); +void u8g_SetCursorStyle(u8g_t *u8g, uint8_t encoding); +void u8g_SetCursorPos(u8g_t *u8g, u8g_uint_t cursor_x, u8g_uint_t cursor_y); +void u8g_SetCursorColor(u8g_t *u8g, uint8_t fg, uint8_t bg); +void u8g_EnableCursor(u8g_t *u8g); +void u8g_DisableCursor(u8g_t *u8g); +void u8g_DrawCursor(u8g_t *u8g); + + + +/*===============================================================*/ +/* u8g_virtual_screen.c */ +void u8g_SetVirtualScreenDimension(u8g_t *vs_u8g, u8g_uint_t width, u8g_uint_t height); +uint8_t u8g_AddToVirtualScreen(u8g_t *vs_u8g, u8g_uint_t x, u8g_uint_t y, u8g_t *child_u8g); + +/*===============================================================*/ +void st_Draw(uint8_t fps); +void st_Step(uint8_t player_pos, uint8_t is_auto_fire, uint8_t is_fire); + +/*===============================================================*/ +/* u8g_com_i2c.c */ + +/* options for u8g_i2c_init() */ +#define U8G_I2C_OPT_NONE 0 + +/* retrun values from u8g_twi_get_error() */ +#define U8G_I2C_ERR_NONE 0x00 +/* the following values are bit masks */ +#define U8G_I2C_ERR_TIMEOUT 0x01 +#define U8G_I2C_ERR_BUS 0x02 + +void u8g_i2c_clear_error(void) U8G_NOINLINE; +uint8_t u8g_i2c_get_error(void) U8G_NOINLINE; +uint8_t u8g_i2c_get_err_pos(void) U8G_NOINLINE; +void u8g_i2c_init(uint8_t options) U8G_NOINLINE; /* use U8G_I2C_OPT_NONE as options */ +uint8_t u8g_i2c_wait(uint8_t mask, uint8_t pos) U8G_NOINLINE; +uint8_t u8g_i2c_start(uint8_t sla) U8G_NOINLINE; +uint8_t u8g_i2c_send_byte(uint8_t data) U8G_NOINLINE; +void u8g_i2c_stop(void) U8G_NOINLINE; + + +/*===============================================================*/ +/* u8g_u8toa.c */ +/* v = value, d = number of digits */ +const char *u8g_u8toa(uint8_t v, uint8_t d); + +/* u8g_u8toa.c */ +/* v = value, d = number of digits */ +const char *u8g_u16toa(uint16_t v, uint8_t d); + +/*===============================================================*/ +/* u8g_delay.c */ + +/* delay by the specified number of milliseconds */ +void u8g_Delay(uint16_t val); + +/* delay by one microsecond */ +void u8g_MicroDelay(void); + +/* delay by 10 microseconds */ +void u8g_10MicroDelay(void); + +/*===============================================================*/ +/* chessengine.c */ +#define CHESS_KEY_NONE 0 +#define CHESS_KEY_NEXT 1 +#define CHESS_KEY_PREV 2 +#define CHESS_KEY_SELECT 3 +#define CHESS_KEY_BACK 4 + +void chess_Init(u8g_t *u8g, uint8_t empty_body_color); +void chess_Draw(void); +void chess_Step(uint8_t keycode); + +/*===============================================================*/ +/* font definitions */ + +extern const u8g_fntpgm_uint8_t u8g_font_m2icon_5[] U8G_SECTION(".progmem.u8g_font_m2icon_5"); +extern const u8g_fntpgm_uint8_t u8g_font_m2icon_7[] U8G_SECTION(".progmem.u8g_font_m2icon_7"); +extern const u8g_fntpgm_uint8_t u8g_font_m2icon_9[] U8G_SECTION(".progmem.u8g_font_m2icon_9"); + +extern const u8g_fntpgm_uint8_t u8g_font_u8glib_4[] U8G_SECTION(".progmem.u8g_font_u8glib_4"); +extern const u8g_fntpgm_uint8_t u8g_font_u8glib_4r[] U8G_SECTION(".progmem.u8g_font_u8glib_4r"); + + +extern const u8g_fntpgm_uint8_t u8g_font_6x12_75r[] U8G_SECTION(".progmem.u8g_font_6x12_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13_75r[] U8G_SECTION(".progmem.u8g_font_6x13_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13_75r[] U8G_SECTION(".progmem.u8g_font_7x13_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13_75r[] U8G_SECTION(".progmem.u8g_font_8x13_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_9x15_75r[] U8G_SECTION(".progmem.u8g_font_9x15_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_9x18_75r[] U8G_SECTION(".progmem.u8g_font_9x18_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_cu12_75r[] U8G_SECTION(".progmem.u8g_font_cu12_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_75r[] U8G_SECTION(".progmem.u8g_font_unifont_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_10x20_75r[] U8G_SECTION(".progmem.u8g_font_10x20_75r"); + +extern const u8g_fntpgm_uint8_t u8g_font_10x20_67_75[] U8G_SECTION(".progmem.u8g_font_10x20_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_10x20_78_79[] U8G_SECTION(".progmem.u8g_font_10x20_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_10x20[] U8G_SECTION(".progmem.u8g_font_10x20"); +extern const u8g_fntpgm_uint8_t u8g_font_10x20r[] U8G_SECTION(".progmem.u8g_font_10x20r"); +extern const u8g_fntpgm_uint8_t u8g_font_4x6[] U8G_SECTION(".progmem.u8g_font_4x6"); +extern const u8g_fntpgm_uint8_t u8g_font_4x6r[] U8G_SECTION(".progmem.u8g_font_4x6r"); +//extern const u8g_fntpgm_uint8_t u8g_font_4x6n[] U8G_SECTION(".progmem.u8g_font_4x6n"); +extern const u8g_fntpgm_uint8_t u8g_font_5x7[] U8G_SECTION(".progmem.u8g_font_5x7"); +extern const u8g_fntpgm_uint8_t u8g_font_5x7r[] U8G_SECTION(".progmem.u8g_font_5x7r"); +extern const u8g_fntpgm_uint8_t u8g_font_5x8[] U8G_SECTION(".progmem.u8g_font_5x8"); +extern const u8g_fntpgm_uint8_t u8g_font_5x8r[] U8G_SECTION(".progmem.u8g_font_5x8r"); +extern const u8g_fntpgm_uint8_t u8g_font_6x10[] U8G_SECTION(".progmem.u8g_font_6x10"); +extern const u8g_fntpgm_uint8_t u8g_font_6x10r[] U8G_SECTION(".progmem.u8g_font_6x10r"); +extern const u8g_fntpgm_uint8_t u8g_font_6x12_67_75[] U8G_SECTION(".progmem.u8g_font_6x12_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_6x12_78_79[] U8G_SECTION(".progmem.u8g_font_6x12_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_6x12[] U8G_SECTION(".progmem.u8g_font_6x12"); +extern const u8g_fntpgm_uint8_t u8g_font_6x12r[] U8G_SECTION(".progmem.u8g_font_6x12r"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13_67_75[] U8G_SECTION(".progmem.u8g_font_6x13_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13_78_79[] U8G_SECTION(".progmem.u8g_font_6x13_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13B[] U8G_SECTION(".progmem.u8g_font_6x13B"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13Br[] U8G_SECTION(".progmem.u8g_font_6x13Br"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13[] U8G_SECTION(".progmem.u8g_font_6x13"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13r[] U8G_SECTION(".progmem.u8g_font_6x13r"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13O[] U8G_SECTION(".progmem.u8g_font_6x13O"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13Or[] U8G_SECTION(".progmem.u8g_font_6x13Or"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13_67_75[] U8G_SECTION(".progmem.u8g_font_7x13_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13_78_79[] U8G_SECTION(".progmem.u8g_font_7x13_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13B[] U8G_SECTION(".progmem.u8g_font_7x13B"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13Br[] U8G_SECTION(".progmem.u8g_font_7x13Br"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13[] U8G_SECTION(".progmem.u8g_font_7x13"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13r[] U8G_SECTION(".progmem.u8g_font_7x13r"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13O[] U8G_SECTION(".progmem.u8g_font_7x13O"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13Or[] U8G_SECTION(".progmem.u8g_font_7x13Or"); +extern const u8g_fntpgm_uint8_t u8g_font_7x14B[] U8G_SECTION(".progmem.u8g_font_7x14B"); +extern const u8g_fntpgm_uint8_t u8g_font_7x14Br[] U8G_SECTION(".progmem.u8g_font_7x14Br"); +extern const u8g_fntpgm_uint8_t u8g_font_7x14[] U8G_SECTION(".progmem.u8g_font_7x14"); +extern const u8g_fntpgm_uint8_t u8g_font_7x14r[] U8G_SECTION(".progmem.u8g_font_7x14r"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13_67_75[] U8G_SECTION(".progmem.u8g_font_8x13_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13B[] U8G_SECTION(".progmem.u8g_font_8x13B"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13Br[] U8G_SECTION(".progmem.u8g_font_8x13Br"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13[] U8G_SECTION(".progmem.u8g_font_8x13"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13r[] U8G_SECTION(".progmem.u8g_font_8x13r"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13O[] U8G_SECTION(".progmem.u8g_font_8x13O"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13Or[] U8G_SECTION(".progmem.u8g_font_8x13Or"); + +extern const u8g_fntpgm_uint8_t u8g_font_9x15_67_75[] U8G_SECTION(".progmem.u8g_font_9x15_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_9x15_78_79[] U8G_SECTION(".progmem.u8g_font_9x15_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_9x15B[] U8G_SECTION(".progmem.u8g_font_9x15B"); +extern const u8g_fntpgm_uint8_t u8g_font_9x15Br[] U8G_SECTION(".progmem.u8g_font_9x15Br"); +extern const u8g_fntpgm_uint8_t u8g_font_9x15[] U8G_SECTION(".progmem.u8g_font_9x15"); +extern const u8g_fntpgm_uint8_t u8g_font_9x15r[] U8G_SECTION(".progmem.u8g_font_9x15r"); + +extern const u8g_fntpgm_uint8_t u8g_font_9x18_67_75[] U8G_SECTION(".progmem.u8g_font_9x18_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_9x18_78_79[] U8G_SECTION(".progmem.u8g_font_9x18_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_9x18B[] U8G_SECTION(".progmem.u8g_font_9x18B"); +extern const u8g_fntpgm_uint8_t u8g_font_9x18[] U8G_SECTION(".progmem.u8g_font_9x18"); +extern const u8g_fntpgm_uint8_t u8g_font_9x18Br[] U8G_SECTION(".progmem.u8g_font_9x18Br"); +extern const u8g_fntpgm_uint8_t u8g_font_9x18r[] U8G_SECTION(".progmem.u8g_font_9x18r"); + +extern const u8g_fntpgm_uint8_t u8g_font_cursor[] U8G_SECTION(".progmem.u8g_font_cursor"); +extern const u8g_fntpgm_uint8_t u8g_font_cursorr[] U8G_SECTION(".progmem.u8g_font_cursorr"); +extern const u8g_fntpgm_uint8_t u8g_font_micro[] U8G_SECTION(".progmem.u8g_font_micro"); + +extern const u8g_fntpgm_uint8_t u8g_font_cu12_67_75[] U8G_SECTION(".progmem.u8g_font_cu12_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_cu12_78_79[] U8G_SECTION(".progmem.u8g_font_cu12_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_cu12[] U8G_SECTION(".progmem.u8g_font_cu12"); + +/* + Free-Universal Bold + r: Reduced char set (codes 32 - 128) + n: Numbers (codes 42 - 57) + no char: Full set (codes 32 - 255) +*/ + +extern const u8g_fntpgm_uint8_t u8g_font_fub11[] U8G_SECTION(".progmem.u8g_font_fub11"); +extern const u8g_fntpgm_uint8_t u8g_font_fub11r[] U8G_SECTION(".progmem.u8g_font_fub11r"); +extern const u8g_fntpgm_uint8_t u8g_font_fub11n[] U8G_SECTION(".progmem.u8g_font_fub11n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub14[] U8G_SECTION(".progmem.u8g_font_fub14"); +extern const u8g_fntpgm_uint8_t u8g_font_fub14r[] U8G_SECTION(".progmem.u8g_font_fub14r"); +extern const u8g_fntpgm_uint8_t u8g_font_fub14n[] U8G_SECTION(".progmem.u8g_font_fub14n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub17[] U8G_SECTION(".progmem.u8g_font_fub17"); +extern const u8g_fntpgm_uint8_t u8g_font_fub17r[] U8G_SECTION(".progmem.u8g_font_fub17r"); +extern const u8g_fntpgm_uint8_t u8g_font_fub17n[] U8G_SECTION(".progmem.u8g_font_fub17n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub20[] U8G_SECTION(".progmem.u8g_font_fub20"); +extern const u8g_fntpgm_uint8_t u8g_font_fub20r[] U8G_SECTION(".progmem.u8g_font_fub20r"); +extern const u8g_fntpgm_uint8_t u8g_font_fub20n[] U8G_SECTION(".progmem.u8g_font_fub20n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub25[] U8G_SECTION(".progmem.u8g_font_fub25"); +extern const u8g_fntpgm_uint8_t u8g_font_fub25r[] U8G_SECTION(".progmem.u8g_font_fub25r"); +extern const u8g_fntpgm_uint8_t u8g_font_fub25n[] U8G_SECTION(".progmem.u8g_font_fub25n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub30[] U8G_SECTION(".progmem.u8g_font_fub30"); +extern const u8g_fntpgm_uint8_t u8g_font_fub30r[] U8G_SECTION(".progmem.u8g_font_fub30r"); +extern const u8g_fntpgm_uint8_t u8g_font_fub30n[] U8G_SECTION(".progmem.u8g_font_fub30n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub35n[] U8G_SECTION(".progmem.u8g_font_fub35n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub42n[] U8G_SECTION(".progmem.u8g_font_fub42n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub49n[] U8G_SECTION(".progmem.u8g_font_fub49n"); + +/* + Free-Universal Regular + r: Reduced char set (codes 32 - 128) + n: Numbers (codes 42 - 57) + no char: Full set (codes 32 - 255) +*/ + +extern const u8g_fntpgm_uint8_t u8g_font_fur11[] U8G_SECTION(".progmem.u8g_font_fur11"); +extern const u8g_fntpgm_uint8_t u8g_font_fur11r[] U8G_SECTION(".progmem.u8g_font_fur11r"); +extern const u8g_fntpgm_uint8_t u8g_font_fur11n[] U8G_SECTION(".progmem.u8g_font_fur11n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur14[] U8G_SECTION(".progmem.u8g_font_fur14"); +extern const u8g_fntpgm_uint8_t u8g_font_fur14r[] U8G_SECTION(".progmem.u8g_font_fur14r"); +extern const u8g_fntpgm_uint8_t u8g_font_fur14n[] U8G_SECTION(".progmem.u8g_font_fur14n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur17[] U8G_SECTION(".progmem.u8g_font_fur17"); +extern const u8g_fntpgm_uint8_t u8g_font_fur17r[] U8G_SECTION(".progmem.u8g_font_fur17r"); +extern const u8g_fntpgm_uint8_t u8g_font_fur17n[] U8G_SECTION(".progmem.u8g_font_fur17n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur20[] U8G_SECTION(".progmem.u8g_font_fur20"); +extern const u8g_fntpgm_uint8_t u8g_font_fur20r[] U8G_SECTION(".progmem.u8g_font_fur20r"); +extern const u8g_fntpgm_uint8_t u8g_font_fur20n[] U8G_SECTION(".progmem.u8g_font_fur20n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur25[] U8G_SECTION(".progmem.u8g_font_fur25"); +extern const u8g_fntpgm_uint8_t u8g_font_fur25r[] U8G_SECTION(".progmem.u8g_font_fur25r"); +extern const u8g_fntpgm_uint8_t u8g_font_fur25n[] U8G_SECTION(".progmem.u8g_font_fur25n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur30[] U8G_SECTION(".progmem.u8g_font_fur30"); +extern const u8g_fntpgm_uint8_t u8g_font_fur30r[] U8G_SECTION(".progmem.u8g_font_fur30r"); +extern const u8g_fntpgm_uint8_t u8g_font_fur30n[] U8G_SECTION(".progmem.u8g_font_fur30n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur35n[] U8G_SECTION(".progmem.u8g_font_fur35n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur42n[] U8G_SECTION(".progmem.u8g_font_fur42n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur49n[] U8G_SECTION(".progmem.u8g_font_fur49n"); + +/* + Gentium Bold + r: Reduced char set (codes 32 - 128) + n: Numbers (codes 42 - 57) + no char: Full set (codes 32 - 255) +*/ + +extern const u8g_fntpgm_uint8_t u8g_font_gdb11[] U8G_SECTION(".progmem.u8g_font_gdb11"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb12[] U8G_SECTION(".progmem.u8g_font_gdb12"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb14[] U8G_SECTION(".progmem.u8g_font_gdb14"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb17[] U8G_SECTION(".progmem.u8g_font_gdb17"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb20[] U8G_SECTION(".progmem.u8g_font_gdb20"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb25[] U8G_SECTION(".progmem.u8g_font_gdb25"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb30[] U8G_SECTION(".progmem.u8g_font_gdb30"); + +extern const u8g_fntpgm_uint8_t u8g_font_gdb11r[] U8G_SECTION(".progmem.u8g_font_gdb11r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb12r[] U8G_SECTION(".progmem.u8g_font_gdb12r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb14r[] U8G_SECTION(".progmem.u8g_font_gdb14r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb17r[] U8G_SECTION(".progmem.u8g_font_gdb17r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb20r[] U8G_SECTION(".progmem.u8g_font_gdb20r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb25r[] U8G_SECTION(".progmem.u8g_font_gdb25r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb30r[] U8G_SECTION(".progmem.u8g_font_gdb30r"); + +extern const u8g_fntpgm_uint8_t u8g_font_gdb11n[] U8G_SECTION(".progmem.u8g_font_gdb11n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb12n[] U8G_SECTION(".progmem.u8g_font_gdb12n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb14n[] U8G_SECTION(".progmem.u8g_font_gdb14n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb17n[] U8G_SECTION(".progmem.u8g_font_gdb17n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb20n[] U8G_SECTION(".progmem.u8g_font_gdb20n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb25n[] U8G_SECTION(".progmem.u8g_font_gdb25n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb30n[] U8G_SECTION(".progmem.u8g_font_gdb30n"); + +/* + Gentium Regular + r: Reduced char set (codes 32 - 128) + n: Numbers (codes 42 - 57) + no char: Full set (codes 32 - 255) +*/ + +extern const u8g_fntpgm_uint8_t u8g_font_gdr9[] U8G_SECTION(".progmem.u8g_font_gdr9"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr10[] U8G_SECTION(".progmem.u8g_font_gdr10"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr11[] U8G_SECTION(".progmem.u8g_font_gdr11"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr12[] U8G_SECTION(".progmem.u8g_font_gdr12"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr14[] U8G_SECTION(".progmem.u8g_font_gdr14"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr17[] U8G_SECTION(".progmem.u8g_font_gdr17"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr20[] U8G_SECTION(".progmem.u8g_font_gdr20"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr25[] U8G_SECTION(".progmem.u8g_font_gdr25"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr30[] U8G_SECTION(".progmem.u8g_font_gdr30"); + +extern const u8g_fntpgm_uint8_t u8g_font_gdr9r[] U8G_SECTION(".progmem.u8g_font_gdr9r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr10r[] U8G_SECTION(".progmem.u8g_font_gdr10r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr11r[] U8G_SECTION(".progmem.u8g_font_gdr11r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr12r[] U8G_SECTION(".progmem.u8g_font_gdr12r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr14r[] U8G_SECTION(".progmem.u8g_font_gdr14r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr17r[] U8G_SECTION(".progmem.u8g_font_gdr17r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr20r[] U8G_SECTION(".progmem.u8g_font_gdr20r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr25r[] U8G_SECTION(".progmem.u8g_font_gdr25r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr30r[] U8G_SECTION(".progmem.u8g_font_gdr30r"); + +extern const u8g_fntpgm_uint8_t u8g_font_gdr9n[] U8G_SECTION(".progmem.u8g_font_gdr9n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr10n[] U8G_SECTION(".progmem.u8g_font_gdr10n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr11n[] U8G_SECTION(".progmem.u8g_font_gdr11n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr12n[] U8G_SECTION(".progmem.u8g_font_gdr12n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr14n[] U8G_SECTION(".progmem.u8g_font_gdr14n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr17n[] U8G_SECTION(".progmem.u8g_font_gdr17n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr20n[] U8G_SECTION(".progmem.u8g_font_gdr20n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr25n[] U8G_SECTION(".progmem.u8g_font_gdr25n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr30n[] U8G_SECTION(".progmem.u8g_font_gdr30n"); + +/* + Old-Standard Bold + r: Reduced char set (codes 32 - 128) + n: Numbers (codes 42 - 57) + no char: Full set (codes 32 - 255) +*/ + +extern const u8g_fntpgm_uint8_t u8g_font_osb18[] U8G_SECTION(".progmem.u8g_font_osb18"); +extern const u8g_fntpgm_uint8_t u8g_font_osb21[] U8G_SECTION(".progmem.u8g_font_osb21"); +extern const u8g_fntpgm_uint8_t u8g_font_osb26[] U8G_SECTION(".progmem.u8g_font_osb26"); +extern const u8g_fntpgm_uint8_t u8g_font_osb29[] U8G_SECTION(".progmem.u8g_font_osb29"); +extern const u8g_fntpgm_uint8_t u8g_font_osb35[] U8G_SECTION(".progmem.u8g_font_osb35"); + +extern const u8g_fntpgm_uint8_t u8g_font_osb18r[] U8G_SECTION(".progmem.u8g_font_osb18r"); +extern const u8g_fntpgm_uint8_t u8g_font_osb21r[] U8G_SECTION(".progmem.u8g_font_osb21r"); +extern const u8g_fntpgm_uint8_t u8g_font_osb26r[] U8G_SECTION(".progmem.u8g_font_osb26r"); +extern const u8g_fntpgm_uint8_t u8g_font_osb29r[] U8G_SECTION(".progmem.u8g_font_osb29r"); +extern const u8g_fntpgm_uint8_t u8g_font_osb35r[] U8G_SECTION(".progmem.u8g_font_osb35r"); + +extern const u8g_fntpgm_uint8_t u8g_font_osb18n[] U8G_SECTION(".progmem.u8g_font_osb18n"); +extern const u8g_fntpgm_uint8_t u8g_font_osb21n[] U8G_SECTION(".progmem.u8g_font_osb21n"); +extern const u8g_fntpgm_uint8_t u8g_font_osb26n[] U8G_SECTION(".progmem.u8g_font_osb26n"); +extern const u8g_fntpgm_uint8_t u8g_font_osb29n[] U8G_SECTION(".progmem.u8g_font_osb29n"); +extern const u8g_fntpgm_uint8_t u8g_font_osb35n[] U8G_SECTION(".progmem.u8g_font_osb35n"); + +/* + Old-Standard Regular + r: Reduced char set (codes 32 - 128) + n: Numbers (codes 42 - 57) + no char: Full set (codes 32 - 255) +*/ + +extern const u8g_fntpgm_uint8_t u8g_font_osr18[] U8G_SECTION(".progmem.u8g_font_osr18"); +extern const u8g_fntpgm_uint8_t u8g_font_osr21[] U8G_SECTION(".progmem.u8g_font_osr21"); +extern const u8g_fntpgm_uint8_t u8g_font_osr26[] U8G_SECTION(".progmem.u8g_font_osr26"); +extern const u8g_fntpgm_uint8_t u8g_font_osr29[] U8G_SECTION(".progmem.u8g_font_osr29"); +extern const u8g_fntpgm_uint8_t u8g_font_osr35[] U8G_SECTION(".progmem.u8g_font_osr35"); + +extern const u8g_fntpgm_uint8_t u8g_font_osr18r[] U8G_SECTION(".progmem.u8g_font_osr18r"); +extern const u8g_fntpgm_uint8_t u8g_font_osr21r[] U8G_SECTION(".progmem.u8g_font_osr21r"); +extern const u8g_fntpgm_uint8_t u8g_font_osr26r[] U8G_SECTION(".progmem.u8g_font_osr26r"); +extern const u8g_fntpgm_uint8_t u8g_font_osr29r[] U8G_SECTION(".progmem.u8g_font_osr29r"); +extern const u8g_fntpgm_uint8_t u8g_font_osr35r[] U8G_SECTION(".progmem.u8g_font_osr35r"); + +extern const u8g_fntpgm_uint8_t u8g_font_osr18n[] U8G_SECTION(".progmem.u8g_font_osr18n"); +extern const u8g_fntpgm_uint8_t u8g_font_osr21n[] U8G_SECTION(".progmem.u8g_font_osr21n"); +extern const u8g_fntpgm_uint8_t u8g_font_osr26n[] U8G_SECTION(".progmem.u8g_font_osr26n"); +extern const u8g_fntpgm_uint8_t u8g_font_osr29n[] U8G_SECTION(".progmem.u8g_font_osr29n"); +extern const u8g_fntpgm_uint8_t u8g_font_osr35n[] U8G_SECTION(".progmem.u8g_font_osr35n"); + +//extern const u8g_fntpgm_uint8_t u8g_font_osr41[] U8G_SECTION(".progmem.u8g_font_osr41"); + +/* GNU unifont */ + +extern const u8g_fntpgm_uint8_t u8g_font_unifont_18_19[] U8G_SECTION(".progmem.u8g_font_unifont_18_19"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_72_73[] U8G_SECTION(".progmem.u8g_font_unifont_72_73"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_67_75[] U8G_SECTION(".progmem.u8g_font_unifont_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_76[] U8G_SECTION(".progmem.u8g_font_unifont_76"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_77[] U8G_SECTION(".progmem.u8g_font_unifont_77"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_78_79[] U8G_SECTION(".progmem.u8g_font_unifont_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_86[] U8G_SECTION(".progmem.u8g_font_unifont_86"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont[] U8G_SECTION(".progmem.u8g_font_unifont"); +extern const u8g_fntpgm_uint8_t u8g_font_unifontr[] U8G_SECTION(".progmem.u8g_font_unifontr"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_0_8[] U8G_SECTION(".progmem.u8g_font_unifont_0_8"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_2_3[] U8G_SECTION(".progmem.u8g_font_unifont_2_3"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_4_5[] U8G_SECTION(".progmem.u8g_font_unifont_4_5"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_8_9[] U8G_SECTION(".progmem.u8g_font_unifont_8_9"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_12_13[] U8G_SECTION(".progmem.u8g_font_unifont_12_13"); + + +/* 04b fonts */ + +extern const u8g_fntpgm_uint8_t u8g_font_04b_03b[] U8G_SECTION(".progmem.u8g_font_04b_03b"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_03bn[] U8G_SECTION(".progmem.u8g_font_04b_03bn"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_03br[] U8G_SECTION(".progmem.u8g_font_04b_03br"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_03[] U8G_SECTION(".progmem.u8g_font_04b_03"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_03n[] U8G_SECTION(".progmem.u8g_font_04b_03n"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_03r[] U8G_SECTION(".progmem.u8g_font_04b_03r"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_24[] U8G_SECTION(".progmem.u8g_font_04b_24"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_24n[] U8G_SECTION(".progmem.u8g_font_04b_24n"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_24r[] U8G_SECTION(".progmem.u8g_font_04b_24r"); + +/* orgdot fonts */ + +extern const u8g_fntpgm_uint8_t u8g_font_orgv01[] U8G_SECTION(".progmem.u8g_font_orgv01"); +extern const u8g_fntpgm_uint8_t u8g_font_orgv01r[] U8G_SECTION(".progmem.u8g_font_orgv01r"); +extern const u8g_fntpgm_uint8_t u8g_font_orgv01n[] U8G_SECTION(".progmem.u8g_font_orgv01n"); + +extern const u8g_fntpgm_uint8_t u8g_font_fixed_v0[] U8G_SECTION(".progmem.u8g_font_fixed_v0"); +extern const u8g_fntpgm_uint8_t u8g_font_fixed_v0r[] U8G_SECTION(".progmem.u8g_font_fixed_v0r"); +extern const u8g_fntpgm_uint8_t u8g_font_fixed_v0n[] U8G_SECTION(".progmem.u8g_font_fixed_v0n"); + +extern const u8g_fntpgm_uint8_t u8g_font_tpssb[] U8G_SECTION(".progmem.u8g_font_tpssb"); +extern const u8g_fntpgm_uint8_t u8g_font_tpssbr[] U8G_SECTION(".progmem.u8g_font_tpssbr"); +extern const u8g_fntpgm_uint8_t u8g_font_tpssbn[] U8G_SECTION(".progmem.u8g_font_tpssbn"); + +extern const u8g_fntpgm_uint8_t u8g_font_tpss[] U8G_SECTION(".progmem.u8g_font_tpss"); +extern const u8g_fntpgm_uint8_t u8g_font_tpssr[] U8G_SECTION(".progmem.u8g_font_tpssr"); +extern const u8g_fntpgm_uint8_t u8g_font_tpssn[] U8G_SECTION(".progmem.u8g_font_tpssn"); + +/* contributed */ + +extern const u8g_fntpgm_uint8_t u8g_font_freedoomr25n[] U8G_SECTION(".progmem.u8g_font_freedoomr25n"); +extern const u8g_fntpgm_uint8_t u8g_font_freedoomr10r[] U8G_SECTION(".progmem.u8g_font_freedoomr10r"); + +/* adobe X11 */ +extern const u8g_fntpgm_uint8_t u8g_font_courB08[] U8G_SECTION(".progmem.u8g_font_courB08"); +extern const u8g_fntpgm_uint8_t u8g_font_courB08r[] U8G_SECTION(".progmem.u8g_font_courB08r"); +extern const u8g_fntpgm_uint8_t u8g_font_courB10[] U8G_SECTION(".progmem.u8g_font_courB10"); +extern const u8g_fntpgm_uint8_t u8g_font_courB10r[] U8G_SECTION(".progmem.u8g_font_courB10r"); +extern const u8g_fntpgm_uint8_t u8g_font_courB12[] U8G_SECTION(".progmem.u8g_font_courB12"); +extern const u8g_fntpgm_uint8_t u8g_font_courB12r[] U8G_SECTION(".progmem.u8g_font_courB12r"); +extern const u8g_fntpgm_uint8_t u8g_font_courB14[] U8G_SECTION(".progmem.u8g_font_courB14"); +extern const u8g_fntpgm_uint8_t u8g_font_courB14r[] U8G_SECTION(".progmem.u8g_font_courB14r"); +extern const u8g_fntpgm_uint8_t u8g_font_courB18[] U8G_SECTION(".progmem.u8g_font_courB18"); +extern const u8g_fntpgm_uint8_t u8g_font_courB18r[] U8G_SECTION(".progmem.u8g_font_courB18r"); +extern const u8g_fntpgm_uint8_t u8g_font_courB24[] U8G_SECTION(".progmem.u8g_font_courB24"); +extern const u8g_fntpgm_uint8_t u8g_font_courB24r[] U8G_SECTION(".progmem.u8g_font_courB24r"); +extern const u8g_fntpgm_uint8_t u8g_font_courB24n[] U8G_SECTION(".progmem.u8g_font_courB24n"); + +extern const u8g_fntpgm_uint8_t u8g_font_courR08[] U8G_SECTION(".progmem.u8g_font_courR08"); +extern const u8g_fntpgm_uint8_t u8g_font_courR08r[] U8G_SECTION(".progmem.u8g_font_courR08r"); +extern const u8g_fntpgm_uint8_t u8g_font_courR10[] U8G_SECTION(".progmem.u8g_font_courR10"); +extern const u8g_fntpgm_uint8_t u8g_font_courR10r[] U8G_SECTION(".progmem.u8g_font_courR10r"); +extern const u8g_fntpgm_uint8_t u8g_font_courR12[] U8G_SECTION(".progmem.u8g_font_courR12"); +extern const u8g_fntpgm_uint8_t u8g_font_courR12r[] U8G_SECTION(".progmem.u8g_font_courR12r"); +extern const u8g_fntpgm_uint8_t u8g_font_courR14[] U8G_SECTION(".progmem.u8g_font_courR14"); +extern const u8g_fntpgm_uint8_t u8g_font_courR14r[] U8G_SECTION(".progmem.u8g_font_courR14r"); +extern const u8g_fntpgm_uint8_t u8g_font_courR18[] U8G_SECTION(".progmem.u8g_font_courR18"); +extern const u8g_fntpgm_uint8_t u8g_font_courR18r[] U8G_SECTION(".progmem.u8g_font_courR18r"); +extern const u8g_fntpgm_uint8_t u8g_font_courR24[] U8G_SECTION(".progmem.u8g_font_courR24"); +extern const u8g_fntpgm_uint8_t u8g_font_courR24r[] U8G_SECTION(".progmem.u8g_font_courR24r"); +extern const u8g_fntpgm_uint8_t u8g_font_courR24n[] U8G_SECTION(".progmem.u8g_font_courR24n"); + +extern const u8g_fntpgm_uint8_t u8g_font_helvB08[] U8G_SECTION(".progmem.u8g_font_helvB08"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB08r[] U8G_SECTION(".progmem.u8g_font_helvB08r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB10[] U8G_SECTION(".progmem.u8g_font_helvB10"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB10r[] U8G_SECTION(".progmem.u8g_font_helvB10r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB12[] U8G_SECTION(".progmem.u8g_font_helvB12"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB12r[] U8G_SECTION(".progmem.u8g_font_helvB12r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB14[] U8G_SECTION(".progmem.u8g_font_helvB14"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB14r[] U8G_SECTION(".progmem.u8g_font_helvB14r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB18[] U8G_SECTION(".progmem.u8g_font_helvB18"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB18r[] U8G_SECTION(".progmem.u8g_font_helvB18r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB24[] U8G_SECTION(".progmem.u8g_font_helvB24"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB24r[] U8G_SECTION(".progmem.u8g_font_helvB24r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB24n[] U8G_SECTION(".progmem.u8g_font_helvB24n"); + +extern const u8g_fntpgm_uint8_t u8g_font_helvR08[] U8G_SECTION(".progmem.u8g_font_helvR08"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR08r[] U8G_SECTION(".progmem.u8g_font_helvR08r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR10[] U8G_SECTION(".progmem.u8g_font_helvR10"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR10r[] U8G_SECTION(".progmem.u8g_font_helvR10r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR12[] U8G_SECTION(".progmem.u8g_font_helvR12"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR12r[] U8G_SECTION(".progmem.u8g_font_helvR12r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR14[] U8G_SECTION(".progmem.u8g_font_helvR14"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR14r[] U8G_SECTION(".progmem.u8g_font_helvR14r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR18[] U8G_SECTION(".progmem.u8g_font_helvR18"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR18r[] U8G_SECTION(".progmem.u8g_font_helvR18r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR24[] U8G_SECTION(".progmem.u8g_font_helvR24"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR24r[] U8G_SECTION(".progmem.u8g_font_helvR24r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR24n[] U8G_SECTION(".progmem.u8g_font_helvR24n"); + +extern const u8g_fntpgm_uint8_t u8g_font_ncenB08[] U8G_SECTION(".progmem.u8g_font_ncenB08"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB08r[] U8G_SECTION(".progmem.u8g_font_ncenB08r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB10[] U8G_SECTION(".progmem.u8g_font_ncenB10"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB10r[] U8G_SECTION(".progmem.u8g_font_ncenB10r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB12[] U8G_SECTION(".progmem.u8g_font_ncenB12"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB12r[] U8G_SECTION(".progmem.u8g_font_ncenB12r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB14[] U8G_SECTION(".progmem.u8g_font_ncenB14"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB14r[] U8G_SECTION(".progmem.u8g_font_ncenB14r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB18[] U8G_SECTION(".progmem.u8g_font_ncenB18"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB18r[] U8G_SECTION(".progmem.u8g_font_ncenB18r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB24[] U8G_SECTION(".progmem.u8g_font_ncenB24"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB24r[] U8G_SECTION(".progmem.u8g_font_ncenB24r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB24n[] U8G_SECTION(".progmem.u8g_font_ncenB24n"); + +extern const u8g_fntpgm_uint8_t u8g_font_ncenR08[] U8G_SECTION(".progmem.u8g_font_ncenR08"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR08r[] U8G_SECTION(".progmem.u8g_font_ncenR08r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR10[] U8G_SECTION(".progmem.u8g_font_ncenR10"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR10r[] U8G_SECTION(".progmem.u8g_font_ncenR10r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR12[] U8G_SECTION(".progmem.u8g_font_ncenR12"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR12r[] U8G_SECTION(".progmem.u8g_font_ncenR12r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR14[] U8G_SECTION(".progmem.u8g_font_ncenR14"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR14r[] U8G_SECTION(".progmem.u8g_font_ncenR14r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR18[] U8G_SECTION(".progmem.u8g_font_ncenR18"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR18r[] U8G_SECTION(".progmem.u8g_font_ncenR18r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR24[] U8G_SECTION(".progmem.u8g_font_ncenR24"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR24r[] U8G_SECTION(".progmem.u8g_font_ncenR24r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR24n[] U8G_SECTION(".progmem.u8g_font_ncenR24n"); + +extern const u8g_fntpgm_uint8_t u8g_font_symb08[] U8G_SECTION(".progmem.u8g_font_symb08"); +extern const u8g_fntpgm_uint8_t u8g_font_symb08r[] U8G_SECTION(".progmem.u8g_font_symb08r"); +extern const u8g_fntpgm_uint8_t u8g_font_symb10[] U8G_SECTION(".progmem.u8g_font_symb10"); +extern const u8g_fntpgm_uint8_t u8g_font_symb10r[] U8G_SECTION(".progmem.u8g_font_symb10r"); +extern const u8g_fntpgm_uint8_t u8g_font_symb12[] U8G_SECTION(".progmem.u8g_font_symb12"); +extern const u8g_fntpgm_uint8_t u8g_font_symb12r[] U8G_SECTION(".progmem.u8g_font_symb12r"); +extern const u8g_fntpgm_uint8_t u8g_font_symb14[] U8G_SECTION(".progmem.u8g_font_symb14"); +extern const u8g_fntpgm_uint8_t u8g_font_symb14r[] U8G_SECTION(".progmem.u8g_font_symb14r"); +extern const u8g_fntpgm_uint8_t u8g_font_symb18[] U8G_SECTION(".progmem.u8g_font_symb18"); +extern const u8g_fntpgm_uint8_t u8g_font_symb18r[] U8G_SECTION(".progmem.u8g_font_symb18r"); +extern const u8g_fntpgm_uint8_t u8g_font_symb24[] U8G_SECTION(".progmem.u8g_font_symb24"); +extern const u8g_fntpgm_uint8_t u8g_font_symb24r[] U8G_SECTION(".progmem.u8g_font_symb24r"); + +extern const u8g_fntpgm_uint8_t u8g_font_timB08[] U8G_SECTION(".progmem.u8g_font_timB08"); +extern const u8g_fntpgm_uint8_t u8g_font_timB08r[] U8G_SECTION(".progmem.u8g_font_timB08r"); +extern const u8g_fntpgm_uint8_t u8g_font_timB10[] U8G_SECTION(".progmem.u8g_font_timB10"); +extern const u8g_fntpgm_uint8_t u8g_font_timB10r[] U8G_SECTION(".progmem.u8g_font_timB10r"); +extern const u8g_fntpgm_uint8_t u8g_font_timB12[] U8G_SECTION(".progmem.u8g_font_timB12"); +extern const u8g_fntpgm_uint8_t u8g_font_timB12r[] U8G_SECTION(".progmem.u8g_font_timB12r"); +extern const u8g_fntpgm_uint8_t u8g_font_timB14[] U8G_SECTION(".progmem.u8g_font_timB14"); +extern const u8g_fntpgm_uint8_t u8g_font_timB14r[] U8G_SECTION(".progmem.u8g_font_timB14r"); +extern const u8g_fntpgm_uint8_t u8g_font_timB18[] U8G_SECTION(".progmem.u8g_font_timB18"); +extern const u8g_fntpgm_uint8_t u8g_font_timB18r[] U8G_SECTION(".progmem.u8g_font_timB18r"); +extern const u8g_fntpgm_uint8_t u8g_font_timB24[] U8G_SECTION(".progmem.u8g_font_timB24"); +extern const u8g_fntpgm_uint8_t u8g_font_timB24r[] U8G_SECTION(".progmem.u8g_font_timB24r"); +extern const u8g_fntpgm_uint8_t u8g_font_timB24n[] U8G_SECTION(".progmem.u8g_font_timB24n"); + +extern const u8g_fntpgm_uint8_t u8g_font_timR08[] U8G_SECTION(".progmem.u8g_font_timR08"); +extern const u8g_fntpgm_uint8_t u8g_font_timR08r[] U8G_SECTION(".progmem.u8g_font_timR08r"); +extern const u8g_fntpgm_uint8_t u8g_font_timR10[] U8G_SECTION(".progmem.u8g_font_timR10"); +extern const u8g_fntpgm_uint8_t u8g_font_timR10r[] U8G_SECTION(".progmem.u8g_font_timR10r"); +extern const u8g_fntpgm_uint8_t u8g_font_timR12[] U8G_SECTION(".progmem.u8g_font_timR12"); +extern const u8g_fntpgm_uint8_t u8g_font_timR12r[] U8G_SECTION(".progmem.u8g_font_timR12r"); +extern const u8g_fntpgm_uint8_t u8g_font_timR14[] U8G_SECTION(".progmem.u8g_font_timR14"); +extern const u8g_fntpgm_uint8_t u8g_font_timR14r[] U8G_SECTION(".progmem.u8g_font_timR14r"); +extern const u8g_fntpgm_uint8_t u8g_font_timR18[] U8G_SECTION(".progmem.u8g_font_timR18"); +extern const u8g_fntpgm_uint8_t u8g_font_timR18r[] U8G_SECTION(".progmem.u8g_font_timR18r"); +extern const u8g_fntpgm_uint8_t u8g_font_timR24[] U8G_SECTION(".progmem.u8g_font_timR24"); +extern const u8g_fntpgm_uint8_t u8g_font_timR24r[] U8G_SECTION(".progmem.u8g_font_timR24r"); +extern const u8g_fntpgm_uint8_t u8g_font_timR24n[] U8G_SECTION(".progmem.u8g_font_timR24n"); + +/* fontstruct */ + +extern const u8g_fntpgm_uint8_t u8g_font_p01type[] U8G_SECTION(".progmem.u8g_font_p01type"); +extern const u8g_fntpgm_uint8_t u8g_font_p01typer[] U8G_SECTION(".progmem.u8g_font_p01typer"); +extern const u8g_fntpgm_uint8_t u8g_font_p01typen[] U8G_SECTION(".progmem.u8g_font_p01typen"); + +extern const u8g_fntpgm_uint8_t u8g_font_lucasfont_alternate[] U8G_SECTION(".progmem.u8g_font_lucasfont_alternate"); +extern const u8g_fntpgm_uint8_t u8g_font_lucasfont_alternater[] U8G_SECTION(".progmem.u8g_font_lucasfont_alternater"); +extern const u8g_fntpgm_uint8_t u8g_font_lucasfont_alternaten[] U8G_SECTION(".progmem.u8g_font_lucasfont_alternaten"); + +//extern const u8g_fntpgm_uint8_t u8g_font_fs_onebrickpixelfont[] U8G_SECTION(".progmem.u8g_font_fs_onebrickpixelfont"); +//extern const u8g_fntpgm_uint8_t u8g_font_fs_onebrickpixelfontr[] U8G_SECTION(".progmem.u8g_font_fs_onebrickpixelfontr"); +//extern const u8g_fntpgm_uint8_t u8g_font_fs_onebrickpixelfontn[] U8G_SECTION(".progmem.u8g_font_fs_onebrickpixelfontn"); + +extern const u8g_fntpgm_uint8_t u8g_font_chikita[] U8G_SECTION(".progmem.u8g_font_chikita"); +extern const u8g_fntpgm_uint8_t u8g_font_chikitar[] U8G_SECTION(".progmem.u8g_font_chikitar"); +extern const u8g_fntpgm_uint8_t u8g_font_chikitan[] U8G_SECTION(".progmem.u8g_font_chikitan"); + +extern const u8g_fntpgm_uint8_t u8g_font_pixelle_micro[] U8G_SECTION(".progmem.u8g_font_pixelle_micro"); +extern const u8g_fntpgm_uint8_t u8g_font_pixelle_micror[] U8G_SECTION(".progmem.u8g_font_pixelle_micror"); +extern const u8g_fntpgm_uint8_t u8g_font_pixelle_micron[] U8G_SECTION(".progmem.u8g_font_pixelle_micron"); + +extern const u8g_fntpgm_uint8_t u8g_font_trixel_square[] U8G_SECTION(".progmem.u8g_font_trixel_square"); +extern const u8g_fntpgm_uint8_t u8g_font_trixel_squarer[] U8G_SECTION(".progmem.u8g_font_trixel_squarer"); +extern const u8g_fntpgm_uint8_t u8g_font_trixel_squaren[] U8G_SECTION(".progmem.u8g_font_trixel_squaren"); + +extern const u8g_fntpgm_uint8_t u8g_font_robot_de_niro[] U8G_SECTION(".progmem.u8g_font_robot_de_niro"); +extern const u8g_fntpgm_uint8_t u8g_font_robot_de_niror[] U8G_SECTION(".progmem.u8g_font_robot_de_niror"); +extern const u8g_fntpgm_uint8_t u8g_font_robot_de_niron[] U8G_SECTION(".progmem.u8g_font_robot_de_niron"); + +extern const u8g_fntpgm_uint8_t u8g_font_baby[] U8G_SECTION(".progmem.u8g_font_baby"); +extern const u8g_fntpgm_uint8_t u8g_font_babyr[] U8G_SECTION(".progmem.u8g_font_babyr"); +extern const u8g_fntpgm_uint8_t u8g_font_babyn[] U8G_SECTION(".progmem.u8g_font_babyn"); + +extern const u8g_fntpgm_uint8_t u8g_font_blipfest_07[] U8G_SECTION(".progmem.u8g_font_blipfest_07"); +extern const u8g_fntpgm_uint8_t u8g_font_blipfest_07r[] U8G_SECTION(".progmem.u8g_font_blipfest_07r"); +extern const u8g_fntpgm_uint8_t u8g_font_blipfest_07n[] U8G_SECTION(".progmem.u8g_font_blipfest_07n"); + +extern const u8g_fntpgm_uint8_t u8g_font_6x10_marlin[] U8G_SECTION(".progmem.u8g_font_6x10_marlin"); +extern const u8g_fntpgm_uint8_t u8g_font_6x9[] U8G_SECTION(".progmem.u8g_font_6x9"); + +#ifdef __cplusplus +} +#endif + +#endif /* _U8G_H */ + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_bitmap.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_bitmap.c new file mode 100644 index 0000000000000000000000000000000000000000..dc742d1d785030a40a43fe1fe867238b63eca0d1 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_bitmap.c @@ -0,0 +1,177 @@ +/* + + u8g_bitmap.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +void u8g_DrawHBitmap(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, const uint8_t *bitmap) +{ + while( cnt > 0 ) + { + u8g_Draw8Pixel(u8g, x, y, 0, *bitmap); + bitmap++; + cnt--; + x+=8; + } +} + +void u8g_DrawBitmap(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, u8g_uint_t h, const uint8_t *bitmap) +{ + if ( u8g_IsBBXIntersection(u8g, x, y, cnt*8, h) == 0 ) + return; + while( h > 0 ) + { + u8g_DrawHBitmap(u8g, x, y, cnt, bitmap); + bitmap += cnt; + y++; + h--; + } +} + + +void u8g_DrawHBitmapP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, const u8g_pgm_uint8_t *bitmap) +{ + while( cnt > 0 ) + { + u8g_Draw8Pixel(u8g, x, y, 0, u8g_pgm_read(bitmap)); + bitmap++; + cnt--; + x+=8; + } +} + +void u8g_DrawBitmapP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, u8g_uint_t h, const u8g_pgm_uint8_t *bitmap) +{ + if ( u8g_IsBBXIntersection(u8g, x, y, cnt*8, h) == 0 ) + return; + while( h > 0 ) + { + u8g_DrawHBitmapP(u8g, x, y, cnt, bitmap); + bitmap += cnt; + y++; + h--; + } +} + +/*=========================================================================*/ + +static void u8g_DrawHXBM(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, const uint8_t *bitmap) +{ + uint8_t d; + x+=7; + while( w >= 8 ) + { + u8g_Draw8Pixel(u8g, x, y, 2, *bitmap); + bitmap++; + w-= 8; + x+=8; + } + if ( w > 0 ) + { + d = *bitmap; + x -= 7; + do + { + if ( d & 1 ) + u8g_DrawPixel(u8g, x, y); + x++; + w--; + d >>= 1; + } while ( w > 0 ); + } +} + +void u8g_DrawXBM(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, const uint8_t *bitmap) +{ + u8g_uint_t b; + b = w; + b += 7; + b >>= 3; + + if ( u8g_IsBBXIntersection(u8g, x, y, w, h) == 0 ) + return; + + while( h > 0 ) + { + u8g_DrawHXBM(u8g, x, y, w, bitmap); + bitmap += b; + y++; + h--; + } +} + +static void u8g_DrawHXBMP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, const u8g_pgm_uint8_t *bitmap) +{ + uint8_t d; + x+=7; + while( w >= 8 ) + { + u8g_Draw8Pixel(u8g, x, y, 2, u8g_pgm_read(bitmap)); + bitmap++; + w-= 8; + x+=8; + } + if ( w > 0 ) + { + d = u8g_pgm_read(bitmap); + x -= 7; + do + { + if ( d & 1 ) + u8g_DrawPixel(u8g, x, y); + x++; + w--; + d >>= 1; + } while ( w > 0 ); + } +} + +void u8g_DrawXBMP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, const u8g_pgm_uint8_t *bitmap) +{ + u8g_uint_t b; + b = w; + b += 7; + b >>= 3; + + if ( u8g_IsBBXIntersection(u8g, x, y, w, h) == 0 ) + return; + while( h > 0 ) + { + u8g_DrawHXBMP(u8g, x, y, w, bitmap); + bitmap += b; + y++; + h--; + } +} diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_circle.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_circle.c new file mode 100644 index 0000000000000000000000000000000000000000..8f4a0525d877fc838a1928949d784e336b0e2dfa --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_circle.c @@ -0,0 +1,382 @@ +/* + + u8g_circle.c + + Utility to draw empty and filled circles. + + Universal 8bit Graphics Library + + Copyright (c) 2011, bjthom@gmail.com + u8g_DrawCircle & u8g_DrawDisc by olikraus@gmail.com + + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Addition to the U8G Library 02/25/12 + + +*/ + +#include "u8g.h" + +#ifdef OLD_CODE + +void circ_upperRight(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0) { + u8g_DrawPixel(u8g, x0 + x, y0 - y); + u8g_DrawPixel(u8g, x0 + y, y0 - x); +} + +void circ_upperLeft(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0) { + u8g_DrawPixel(u8g, x0 - x, y0 - y); + u8g_DrawPixel(u8g, x0 - y, y0 - x); +} + +void circ_lowerRight(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0) { + u8g_DrawPixel(u8g, x0 + x, y0 + y); + u8g_DrawPixel(u8g, x0 + y, y0 + x); +} + +void circ_lowerLeft(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0) { + u8g_DrawPixel(u8g, x0 - x, y0 + y); + u8g_DrawPixel(u8g, x0 - y, y0 + x); +} + +void circ_all(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0) { + circ_upperRight(u8g, x, y, x0, y0); + circ_upperLeft(u8g, x, y, x0, y0); + circ_lowerRight(u8g, x, y, x0, y0); + circ_lowerLeft(u8g, x, y, x0, y0); +} + +void u8g_DrawEmpCirc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) +{ + if ( u8g_IsBBXIntersection(u8g, x0-rad-1, y0-rad-1, 2*rad+1, 2*rad+1) == 0) + return; + + int f = 1 - rad; + int ddF_x = 1; + int ddF_y = -2*rad; + uint8_t x = 0; + uint8_t y = rad; + + void ( *circ_util )(u8g_t *, u8g_uint_t, u8g_uint_t, u8g_uint_t, u8g_uint_t); + + switch (option) + { + case U8G_CIRC_UPPER_RIGHT: + u8g_DrawPixel(u8g, x0, y0 - rad); + u8g_DrawPixel(u8g, x0 + rad, y0); + circ_util = circ_upperRight; + break; + case U8G_CIRC_UPPER_LEFT: + u8g_DrawPixel(u8g, x0, y0 - rad); + u8g_DrawPixel(u8g, x0 - rad, y0); + circ_util = circ_upperLeft; + break; + case U8G_CIRC_LOWER_RIGHT: + u8g_DrawPixel(u8g, x0, y0 + rad); + u8g_DrawPixel(u8g, x0 + rad, y0); + circ_util = circ_lowerRight; + break; + case U8G_CIRC_LOWER_LEFT: + u8g_DrawPixel(u8g, x0, y0 + rad); + u8g_DrawPixel(u8g, x0 - rad, y0); + circ_util = circ_lowerLeft; + break; + default: + case U8G_CIRC_ALL: + u8g_DrawPixel(u8g, x0, y0 + rad); + u8g_DrawPixel(u8g, x0, y0 - rad); + u8g_DrawPixel(u8g, x0 + rad, y0); + u8g_DrawPixel(u8g, x0 - rad, y0); + circ_util = circ_all; + break; + } + + while( x < y ) + { + if(f >= 0) + { + y--; + ddF_y += 2; + f += ddF_y; + } + x++; + ddF_x += 2; + f += ddF_x; + + circ_util(u8g, x, y, x0, y0); + } +} + + +void u8g_DrawFillCirc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) +{ + if ( u8g_IsBBXIntersection(u8g, x0-rad-1, y0-rad-1, 2*rad+1, 2*rad+1) == 0) + return; + + int f = 1 - rad; + int ddF_x = 1; + int ddF_y = -2*rad; + uint8_t x = 0; + uint8_t y = rad; + + // Draw vertical diameter at the horiz. center + // u8g_DrawVLine(u8g, x0, y0 - rad, 2*rad+1); + + if (option == U8G_CIRC_UPPER_LEFT || option == U8G_CIRC_UPPER_RIGHT) { + u8g_DrawVLine(u8g, x0, y0 - rad, rad+1); + } + else if (option == U8G_CIRC_LOWER_LEFT || option == U8G_CIRC_LOWER_RIGHT) { + u8g_DrawVLine(u8g, x0, y0, rad+1); + } + else { + u8g_DrawVLine(u8g, x0, y0 - rad, 2*rad+1); + } + + while( x < y ) + { + if(f >= 0) + { + y--; + ddF_y += 2; + f += ddF_y; + } + x++; + ddF_x += 2; + f += ddF_x; + + //Draw vertical lines from one point to another + + switch (option) + { + case U8G_CIRC_UPPER_RIGHT: + u8g_DrawVLine(u8g, x0+x, y0-y, y+1); + u8g_DrawVLine(u8g, x0+y, y0-x, x+1); + break; + case U8G_CIRC_UPPER_LEFT: + u8g_DrawVLine(u8g, x0-x, y0-y, y+1); + u8g_DrawVLine(u8g, x0-y, y0-x, x+1); + break; + case U8G_CIRC_LOWER_RIGHT: + u8g_DrawVLine(u8g, x0+x, y0, y+1); + u8g_DrawVLine(u8g, x0+y, y0, x+1); + break; + case U8G_CIRC_LOWER_LEFT: + u8g_DrawVLine(u8g, x0-x, y0, y+1); + u8g_DrawVLine(u8g, x0-y, y0, x+1); + break; + case U8G_CIRC_ALL: + u8g_DrawVLine(u8g, x0+x, y0-y, 2*y+1); + u8g_DrawVLine(u8g, x0-x, y0-y, 2*y+1); + u8g_DrawVLine(u8g, x0+y, y0-x, 2*x+1); + u8g_DrawVLine(u8g, x0-y, y0-x, 2*x+1); + break; + } + } +} + +#endif + +/*=========================================================================*/ + +static void u8g_draw_circle_section(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0, uint8_t option) U8G_NOINLINE; + +static void u8g_draw_circle_section(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0, uint8_t option) +{ + /* upper right */ + if ( option & U8G_DRAW_UPPER_RIGHT ) + { + u8g_DrawPixel(u8g, x0 + x, y0 - y); + u8g_DrawPixel(u8g, x0 + y, y0 - x); + } + + /* upper left */ + if ( option & U8G_DRAW_UPPER_LEFT ) + { + u8g_DrawPixel(u8g, x0 - x, y0 - y); + u8g_DrawPixel(u8g, x0 - y, y0 - x); + } + + /* lower right */ + if ( option & U8G_DRAW_LOWER_RIGHT ) + { + u8g_DrawPixel(u8g, x0 + x, y0 + y); + u8g_DrawPixel(u8g, x0 + y, y0 + x); + } + + /* lower left */ + if ( option & U8G_DRAW_LOWER_LEFT ) + { + u8g_DrawPixel(u8g, x0 - x, y0 + y); + u8g_DrawPixel(u8g, x0 - y, y0 + x); + } +} + +void u8g_draw_circle(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) +{ + u8g_int_t f; + u8g_int_t ddF_x; + u8g_int_t ddF_y; + u8g_uint_t x; + u8g_uint_t y; + + f = 1; + f -= rad; + ddF_x = 1; + ddF_y = 0; + ddF_y -= rad; + ddF_y *= 2; + x = 0; + y = rad; + + u8g_draw_circle_section(u8g, x, y, x0, y0, option); + + while ( x < y ) + { + if (f >= 0) + { + y--; + ddF_y += 2; + f += ddF_y; + } + x++; + ddF_x += 2; + f += ddF_x; + + u8g_draw_circle_section(u8g, x, y, x0, y0, option); + } +} + +void u8g_DrawCircle(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) +{ + /* check for bounding box */ + { + u8g_uint_t radp, radp2; + + radp = rad; + radp++; + radp2 = radp; + radp2 *= 2; + + if ( u8g_IsBBXIntersection(u8g, x0-radp, y0-radp, radp2, radp2) == 0) + return; + } + + /* draw circle */ + u8g_draw_circle(u8g, x0, y0, rad, option); +} + +static void u8g_draw_disc_section(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0, uint8_t option) U8G_NOINLINE; + +static void u8g_draw_disc_section(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0, uint8_t option) +{ + /* upper right */ + if ( option & U8G_DRAW_UPPER_RIGHT ) + { + u8g_DrawVLine(u8g, x0+x, y0-y, y+1); + u8g_DrawVLine(u8g, x0+y, y0-x, x+1); + } + + /* upper left */ + if ( option & U8G_DRAW_UPPER_LEFT ) + { + u8g_DrawVLine(u8g, x0-x, y0-y, y+1); + u8g_DrawVLine(u8g, x0-y, y0-x, x+1); + } + + /* lower right */ + if ( option & U8G_DRAW_LOWER_RIGHT ) + { + u8g_DrawVLine(u8g, x0+x, y0, y+1); + u8g_DrawVLine(u8g, x0+y, y0, x+1); + } + + /* lower left */ + if ( option & U8G_DRAW_LOWER_LEFT ) + { + u8g_DrawVLine(u8g, x0-x, y0, y+1); + u8g_DrawVLine(u8g, x0-y, y0, x+1); + } +} + +void u8g_draw_disc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) +{ + u8g_int_t f; + u8g_int_t ddF_x; + u8g_int_t ddF_y; + u8g_uint_t x; + u8g_uint_t y; + + f = 1; + f -= rad; + ddF_x = 1; + ddF_y = 0; + ddF_y -= rad; + ddF_y *= 2; + x = 0; + y = rad; + + u8g_draw_disc_section(u8g, x, y, x0, y0, option); + + while ( x < y ) + { + if (f >= 0) + { + y--; + ddF_y += 2; + f += ddF_y; + } + x++; + ddF_x += 2; + f += ddF_x; + + u8g_draw_disc_section(u8g, x, y, x0, y0, option); + } +} + +void u8g_DrawDisc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) +{ + /* check for bounding box */ + { + u8g_uint_t radp, radp2; + + radp = rad; + radp++; + radp2 = radp; + radp2 *= 2; + + if ( u8g_IsBBXIntersection(u8g, x0-radp, y0-radp, radp2, radp2) == 0) + return; + } + + /* draw disc */ + u8g_draw_disc(u8g, x0, y0, rad, option); +} + + + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_clip.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_clip.c new file mode 100644 index 0000000000000000000000000000000000000000..71abef2e71fec2731175b744c087c32ff6b6f397 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_clip.c @@ -0,0 +1,156 @@ +/* + + u8g_clip.c + + procedures for clipping + taken over from procs in u8g_pb.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Notes + + This is one of the most critical parts of u8glib. It must be fast, but still reliable. + Based on the intersection program (see tools folder), there is minimized version of + the condition for the intersaction test: + minimized version + ---1----0 1 b1 <= a2 && b1 > b2 + -----1--0 1 b2 >= a1 && b1 > b2 + ---1-1--- 1 b1 <= a2 && b2 >= a1 + It includes the assumption, that a1 <= a2 is always true (correct, because + a1, a2 are the page dimensions. + + The direct implementation of the above result is done in: + uint8_t u8g_is_intersection_boolean(u8g_uint_t a0, u8g_uint_t a1, u8g_uint_t v0, u8g_uint_t v1) + However, this is slower than a decision tree version: + static uint8_t u8g_is_intersection_decision_tree(u8g_uint_t a0, u8g_uint_t a1, u8g_uint_t v0, u8g_uint_t v1) + Also suprising is, that he the macro implementation is slower than the inlined version. + + The decision tree is based on the expansion of the truth table. + +*/ + +#include "u8g.h" + +#ifdef __GNUC__ +#define U8G_ALWAYS_INLINE __attribute__((always_inline)) +#else +#define U8G_ALWAYS_INLINE + #endif + +/* + intersection assumptions: + a1 <= a2 is always true + + minimized version + ---1----0 1 b1 <= a2 && b1 > b2 + -----1--0 1 b2 >= a1 && b1 > b2 + ---1-1--- 1 b1 <= a2 && b2 >= a1 + */ + +#ifdef OLD_CODE_WHICH_IS_TOO_SLOW +static uint8_t u8g_is_intersection_boolean(u8g_uint_t a0, u8g_uint_t a1, u8g_uint_t v0, u8g_uint_t v1) +{ + uint8_t c1, c2, c3, tmp; + c1 = v0 <= a1; + c2 = v1 >= a0; + c3 = v0 > v1; + + tmp = c1; + c1 &= c2; + c2 &= c3; + c3 &= tmp; + c1 |= c2; + c1 |= c3; + return c1 & 1; +} +#endif + +#define U8G_IS_INTERSECTION_MACRO(a0,a1,v0,v1) ((uint8_t)( (v0) <= (a1) ) ? ( ( (v1) >= (a0) ) ? ( 1 ) : ( (v0) > (v1) ) ) : ( ( (v1) >= (a0) ) ? ( (v0) > (v1) ) : ( 0 ) )) + +static uint8_t u8g_is_intersection_decision_tree(u8g_uint_t a0, u8g_uint_t a1, u8g_uint_t v0, u8g_uint_t v1) U8G_ALWAYS_INLINE; +static uint8_t u8g_is_intersection_decision_tree(u8g_uint_t a0, u8g_uint_t a1, u8g_uint_t v0, u8g_uint_t v1) +{ + /* surprisingly the macro leads to larger code */ + /* return U8G_IS_INTERSECTION_MACRO(a0,a1,v0,v1); */ + if ( v0 <= a1 ) + { + if ( v1 >= a0 ) + { + return 1; + } + else + { + if ( v0 > v1 ) + { + return 1; + } + else + { + return 0; + } + } + } + else + { + if ( v1 >= a0 ) + { + if ( v0 > v1 ) + { + return 1; + } + else + { + return 0; + } + } + else + { + return 0; + } + } +} + + +uint8_t u8g_IsBBXIntersection(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) +{ + register u8g_uint_t tmp; + tmp = y; + tmp += h; + tmp--; + if ( u8g_is_intersection_decision_tree(u8g->current_page.y0, u8g->current_page.y1, y, tmp) == 0 ) + return 0; + + tmp = x; + tmp += w; + tmp--; + return u8g_is_intersection_decision_tree(u8g->current_page.x0, u8g->current_page.x1, x, tmp); +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_api.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_api.c new file mode 100644 index 0000000000000000000000000000000000000000..2dd49b12602ddfdb854b7e7fac9df9aa2148aa1c --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_api.c @@ -0,0 +1,173 @@ +/* + + u8g_com_api.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +uint8_t u8g_InitCom(u8g_t *u8g, u8g_dev_t *dev) +{ + return dev->com_fn(u8g, U8G_COM_MSG_INIT, 0, NULL); +} + +void u8g_StopCom(u8g_t *u8g, u8g_dev_t *dev) +{ + dev->com_fn(u8g, U8G_COM_MSG_STOP, 0, NULL); +} + +/* cs contains the chip number, which should be enabled */ +void u8g_SetChipSelect(u8g_t *u8g, u8g_dev_t *dev, uint8_t cs) +{ + dev->com_fn(u8g, U8G_COM_MSG_CHIP_SELECT, cs, NULL); +} + +void u8g_SetResetLow(u8g_t *u8g, u8g_dev_t *dev) +{ + dev->com_fn(u8g, U8G_COM_MSG_RESET, 0, NULL); +} + +void u8g_SetResetHigh(u8g_t *u8g, u8g_dev_t *dev) +{ + dev->com_fn(u8g, U8G_COM_MSG_RESET, 1, NULL); +} + + +void u8g_SetAddress(u8g_t *u8g, u8g_dev_t *dev, uint8_t address) +{ + dev->com_fn(u8g, U8G_COM_MSG_ADDRESS, address, NULL); +} + +uint8_t u8g_WriteByte(u8g_t *u8g, u8g_dev_t *dev, uint8_t val) +{ + return dev->com_fn(u8g, U8G_COM_MSG_WRITE_BYTE, val, NULL); +} + +uint8_t u8g_WriteSequence(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, uint8_t *seq) +{ + return dev->com_fn(u8g, U8G_COM_MSG_WRITE_SEQ, cnt, seq); +} + +uint8_t u8g_WriteSequenceP(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, const uint8_t *seq) +{ + return dev->com_fn(u8g, U8G_COM_MSG_WRITE_SEQ_P, cnt, (void *)seq); +} + +/* + sequence := { direct_value | escape_sequence } + direct_value := 0..254 + escape_sequence := value_255 | sequence_end | delay | adr | cs | not_used + value_255 := 255 255 + sequence_end = 255 254 + delay := 255 0..127 + adr := 255 0x0e0 .. 0x0ef + cs := 255 0x0d0 .. 0x0df + not_used := 255 101..254 + +#define U8G_ESC_DLY(x) 255, ((x) & 0x7f) +#define U8G_ESC_CS(x) 255, (0xd0 | ((x)&0x0f)) +#define U8G_ESC_ADR(x) 255, (0xe0 | ((x)&0x0f)) +#define U8G_ESC_VCC(x) 255, (0xbe | ((x)&0x01)) +#define U8G_ESC_END 255, 254 +#define U8G_ESC_255 255, 255 +#define U8G_ESC_RST(x) 255, (0xc0 | ((x)&0x0f)) + +*/ +uint8_t u8g_WriteEscSeqP(u8g_t *u8g, u8g_dev_t *dev, const uint8_t *esc_seq) +{ + uint8_t is_escape = 0; + uint8_t value; + for(;;) + { + value = u8g_pgm_read(esc_seq); + if ( is_escape == 0 ) + { + if ( value != 255 ) + { + if ( u8g_WriteByte(u8g, dev, value) == 0 ) + return 0; + } + else + { + is_escape = 1; + } + } + else + { + if ( value == 255 ) + { + if ( u8g_WriteByte(u8g, dev, value) == 0 ) + return 0; + } + else if ( value == 254 ) + { + break; + } + else if ( value >= 0x0f0 ) + { + /* not yet used, do nothing */ + } + else if ( value >= 0xe0 ) + { + u8g_SetAddress(u8g, dev, value & 0x0f); + } + else if ( value >= 0xd0 ) + { + u8g_SetChipSelect(u8g, dev, value & 0x0f); + } + else if ( value >= 0xc0 ) + { + u8g_SetResetLow(u8g, dev); + value &= 0x0f; + value <<= 4; + value+=2; + u8g_Delay(value); + u8g_SetResetHigh(u8g, dev); + u8g_Delay(value); + } + else if ( value >= 0xbe ) + { + /* not yet implemented */ + /* u8g_SetVCC(u8g, dev, value & 0x01); */ + } + else if ( value <= 127 ) + { + u8g_Delay(value); + } + is_escape = 0; + } + esc_seq++; + } + return 1; +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_api_16gr.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_api_16gr.c new file mode 100644 index 0000000000000000000000000000000000000000..7ff03d86562af04ccaa2540cfa0b160fbdeff0c7 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_api_16gr.c @@ -0,0 +1,94 @@ +/* + + u8g_com_api_16gr.c + + Extension of the com api for devices with 16 graylevels (4 bit per pixel). + This should fit to the 8h and 16h architectures (pb8v1, pb8v2, pb16v1, pb16v2), + mainly intended for SSD OLEDs + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +/* interpret b as a monochrome bit pattern, write value 15 for high bit and value 0 for a low bit */ +/* topbit (msb) is sent last */ +/* example: b = 0x083 will send 0xff, 0x00, 0x00, 0xf0 */ +uint8_t u8g_WriteByteBWTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t b) +{ + static uint8_t buf[4]; + static uint8_t map[4] = { 0, 0x00f, 0x0f0, 0x0ff }; + buf [3] = map[b & 3]; + b>>=2; + buf [2] = map[b & 3]; + b>>=2; + buf [1] = map[b & 3]; + b>>=2; + buf [0] = map[b & 3]; + return dev->com_fn(u8g, U8G_COM_MSG_WRITE_SEQ, 4, buf); +} + +uint8_t u8g_WriteSequenceBWTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, uint8_t *ptr) +{ + do + { + if ( u8g_WriteByteBWTo16GrDevice(u8g, dev, *ptr++) == 0 ) + return 0; + cnt--; + } while( cnt != 0 ); + return 1; +} + +/* interpret b as a 4L bit pattern, write values 0x000, 0x004, 0x008, 0x00c */ +uint8_t u8g_WriteByte4LTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t b) +{ + //static uint8_t map[16] = { 0x000, 0x004, 0x008, 0x00c, 0x040, 0x044, 0x048, 0x04c, 0x080, 0x084, 0x088, 0x08c, 0x0c0, 0x0c4, 0x0c8, 0x0cc}; + //static uint8_t map[16] = { 0x000, 0x004, 0x00a, 0x00f, 0x040, 0x044, 0x04a, 0x04f, 0x0a0, 0x0a4, 0x0aa, 0x0af, 0x0f0, 0x0f4, 0x0fa, 0x0ff}; + static uint8_t map[16] = { 0x000, 0x040, 0x0a0, 0x0f0, 0x004, 0x044, 0x0a4, 0x0f4, 0x00a, 0x04a, 0x0aa, 0x0fa, 0x00f, 0x04f, 0x0af, 0x0ff}; + uint8_t bb; + bb = b; + bb &= 15; + b>>=4; + dev->com_fn(u8g, U8G_COM_MSG_WRITE_BYTE, map[bb], NULL); + return dev->com_fn(u8g, U8G_COM_MSG_WRITE_BYTE, map[b], NULL); +} + +uint8_t u8g_WriteSequence4LTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, uint8_t *ptr) +{ + do + { + if ( u8g_WriteByte4LTo16GrDevice(u8g, dev, *ptr++) == 0 ) + return 0; + cnt--; + } while( cnt != 0 ); + return 1; +} diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_common.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_common.c new file mode 100644 index 0000000000000000000000000000000000000000..ef0b2366ee000a4434e2a8bc60655c2810dce985 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_common.c @@ -0,0 +1,75 @@ +/* + + u8g_com_arduino_common.c + + shared procedures for the arduino communication procedures + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if ARDUINO < 100 +#include +#else +#include +#endif + +void u8g_com_arduino_digital_write(u8g_t *u8g, uint8_t pin_index, uint8_t value) +{ + uint8_t pin; + pin = u8g->pin_list[pin_index]; + if ( pin != U8G_PIN_NONE ) + digitalWrite(pin, value); +} + +/* this procedure does not set the RW pin */ +void u8g_com_arduino_assign_pin_output_high(u8g_t *u8g) +{ + uint8_t i; + /* skip the RW pin, which is the last pin in the list */ + for( i = 0; i < U8G_PIN_LIST_LEN-1; i++ ) + { + if ( u8g->pin_list[i] != U8G_PIN_NONE ) + { + pinMode(u8g->pin_list[i], OUTPUT); + digitalWrite(u8g->pin_list[i], HIGH); + } + } +} + + +#endif + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_fast_parallel.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_fast_parallel.c new file mode 100644 index 0000000000000000000000000000000000000000..91a32e6f0c5719beb9a31b4fb72f4f12fdf2fd08 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_fast_parallel.c @@ -0,0 +1,245 @@ +/* + + u8g_arduino_fast_parallel.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + PIN_D0 8 + PIN_D1 9 + PIN_D2 10 + PIN_D3 11 + PIN_D4 4 + PIN_D5 5 + PIN_D6 6 + PIN_D7 7 + + PIN_CS1 14 + PIN_CS2 15 + PIN_RW 16 + PIN_DI 17 + PIN_EN 18 + + u8g_Init8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + u8g_Init8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16, U8G_PIN_NONE) + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if ARDUINO < 100 +//#include +#include +#include +#else +#include +#endif + + +#define PIN_D0 8 +#define PIN_D1 9 +#define PIN_D2 10 +#define PIN_D3 11 +#define PIN_D4 4 +#define PIN_D5 5 +#define PIN_D6 6 +#define PIN_D7 7 + +#define PIN_CS1 14 +#define PIN_CS2 15 +#define PIN_RW 16 +#define PIN_DI 17 +#define PIN_EN 18 + +//#define PIN_RESET + + +#if defined(__PIC32MX) +/* CHIPKIT PIC32 */ +static volatile uint32_t *u8g_data_port[8]; +static uint32_t u8g_data_mask[8]; +#else +static volatile uint8_t *u8g_data_port[8]; +static uint8_t u8g_data_mask[8]; +#endif + + + +static void u8g_com_arduino_fast_parallel_init(u8g_t *u8g) +{ + u8g_data_port[0] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D0])); + u8g_data_mask[0] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D0]); + u8g_data_port[1] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D1])); + u8g_data_mask[1] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D1]); + u8g_data_port[2] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D2])); + u8g_data_mask[2] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D2]); + u8g_data_port[3] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D3])); + u8g_data_mask[3] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D3]); + + u8g_data_port[4] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D4])); + u8g_data_mask[4] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D4]); + u8g_data_port[5] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D5])); + u8g_data_mask[5] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D5]); + u8g_data_port[6] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D6])); + u8g_data_mask[6] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D6]); + u8g_data_port[7] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D7])); + u8g_data_mask[7] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D7]); +} + +void u8g_com_arduino_fast_write_data_pin(uint8_t pin, uint8_t val) +{ + if ( val != 0 ) + *u8g_data_port[pin] |= u8g_data_mask[pin]; + else + *u8g_data_port[pin] &= ~u8g_data_mask[pin]; +} + + +void u8g_com_arduino_fast_parallel_write(u8g_t *u8g, uint8_t val) +{ + u8g_com_arduino_fast_write_data_pin( 0, val&1 ); + val >>= 1; + u8g_com_arduino_fast_write_data_pin( 1, val&1 ); + val >>= 1; + u8g_com_arduino_fast_write_data_pin( 2, val&1 ); + val >>= 1; + u8g_com_arduino_fast_write_data_pin( 3, val&1 ); + val >>= 1; + + u8g_com_arduino_fast_write_data_pin( 4, val&1 ); + val >>= 1; + u8g_com_arduino_fast_write_data_pin( 5, val&1 ); + val >>= 1; + u8g_com_arduino_fast_write_data_pin( 6, val&1 ); + val >>= 1; + u8g_com_arduino_fast_write_data_pin( 7, val&1 ); + val >>= 1; + + /* EN cycle time must be 1 micro second */ + u8g_com_arduino_digital_write(u8g, U8G_PI_EN, HIGH); + u8g_MicroDelay(); /* delay by 1000ns, reference: ST7920: 140ns, SBN1661: 100ns */ + u8g_com_arduino_digital_write(u8g, U8G_PI_EN, LOW); + u8g_10MicroDelay(); /* ST7920 commands: 72us */ + u8g_10MicroDelay(); /* ST7920 commands: 72us */ +} + + +uint8_t u8g_com_arduino_fast_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g_com_arduino_fast_parallel_init(u8g); + /* setup the RW pin as output and force it to low */ + if ( u8g->pin_list[U8G_PI_RW] != U8G_PIN_NONE ) + { + pinMode(u8g->pin_list[U8G_PI_RW], OUTPUT); + u8g_com_arduino_digital_write(u8g, U8G_PI_RW, LOW); + } + /* set all pins (except RW pin) */ + u8g_com_arduino_assign_pin_output_high(u8g); + break; + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, HIGH); + } + else if ( arg_val == 1 ) + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, HIGH); + } + else if ( arg_val == 2 ) + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, LOW); + } + else + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, LOW); + } + break; + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_arduino_fast_parallel_write(u8g, arg_val); + break; + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_fast_parallel_write(u8g, *ptr++); + arg_val--; + } + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_fast_parallel_write(u8g, u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_com_arduino_digital_write(u8g, U8G_PI_DI, arg_val); + break; + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + } + return 1; +} + +#else + + +uint8_t u8g_com_arduino_fast_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_hw_spi.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_hw_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..7d7f91000caf2a8e1ba91d4b1d6fab8f08d8a3fb --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_hw_spi.c @@ -0,0 +1,191 @@ +/* + + u8g_com_arduino_hw_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if defined(__AVR__) + +#include +#include + +#if ARDUINO < 100 +#include + +/* fixed pins */ +#if defined(__AVR_ATmega644P__) || defined(__AVR_ATmega1284P__) // Sanguino.cc board +#define PIN_SCK 7 +#define PIN_MISO 6 +#define PIN_MOSI 5 +#define PIN_CS 4 +#else // Arduino Board +#define PIN_SCK 13 +#define PIN_MISO 12 +#define PIN_MOSI 11 +#define PIN_CS 10 +#endif // (__AVR_ATmega644P__) || defined(__AVR_ATmega1284P__) + +#else + +#include + +/* use Arduino pin definitions */ +#define PIN_SCK SCK +#define PIN_MISO MISO +#define PIN_MOSI MOSI +#define PIN_CS SS + +#endif + + + +//static uint8_t u8g_spi_out(uint8_t data) U8G_NOINLINE; +static uint8_t u8g_spi_out(uint8_t data) +{ + /* unsigned char x = 100; */ + /* send data */ + SPDR = data; + /* wait for transmission */ + while (!(SPSR & (1<pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + case U8G_COM_MSG_WRITE_BYTE: + u8g_spi_out(arg_val); + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_spi_out(*ptr++); + arg_val--; + } + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_spi_out(u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + } + return 1; +} + +/* #elif defined(__18CXX) || defined(__PIC32MX) */ + +#else /* __AVR__ */ + +#endif /* __AVR__ */ + +#else /* ARDUINO */ + +uint8_t u8g_com_arduino_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_no_en_parallel.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_no_en_parallel.c new file mode 100644 index 0000000000000000000000000000000000000000..49038c36c8228a1562b02f5da761718a5a58994b --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_no_en_parallel.c @@ -0,0 +1,221 @@ +/* + + u8g_arduino_no_en_parallel.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + PIN_D0 8 + PIN_D1 9 + PIN_D2 10 + PIN_D3 11 + PIN_D4 4 + PIN_D5 5 + PIN_D6 6 + PIN_D7 7 + + PIN_CS1 14 + PIN_CS2 15 + PIN_RW 16 + PIN_DI 17 + PIN_EN 18 + + u8g_Init8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + u8g_Init8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16, U8G_PIN_NONE) + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if ARDUINO < 100 +//#include +#include +#include +#else +#include +#endif + +//#define PIN_RESET + +#if defined(__PIC32MX) +/* CHIPKIT PIC32 */ +static volatile uint32_t *u8g_data_port[8]; +static uint32_t u8g_data_mask[8]; +#else +static volatile uint8_t *u8g_data_port[8]; +static uint8_t u8g_data_mask[8]; +#endif + + + +static void u8g_com_arduino_no_en_parallel_init(u8g_t *u8g) +{ + u8g_data_port[0] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D0])); + u8g_data_mask[0] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D0]); + u8g_data_port[1] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D1])); + u8g_data_mask[1] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D1]); + u8g_data_port[2] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D2])); + u8g_data_mask[2] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D2]); + u8g_data_port[3] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D3])); + u8g_data_mask[3] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D3]); + + u8g_data_port[4] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D4])); + u8g_data_mask[4] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D4]); + u8g_data_port[5] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D5])); + u8g_data_mask[5] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D5]); + u8g_data_port[6] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D6])); + u8g_data_mask[6] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D6]); + u8g_data_port[7] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D7])); + u8g_data_mask[7] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D7]); +} + +void u8g_com_arduino_no_en_write_data_pin(uint8_t pin, uint8_t val) +{ + if ( val != 0 ) + *u8g_data_port[pin] |= u8g_data_mask[pin]; + else + *u8g_data_port[pin] &= ~u8g_data_mask[pin]; +} + + +void u8g_com_arduino_no_en_parallel_write(u8g_t *u8g, uint8_t val) +{ + u8g_com_arduino_no_en_write_data_pin( 0, val&1 ); + val >>= 1; + u8g_com_arduino_no_en_write_data_pin( 1, val&1 ); + val >>= 1; + u8g_com_arduino_no_en_write_data_pin( 2, val&1 ); + val >>= 1; + u8g_com_arduino_no_en_write_data_pin( 3, val&1 ); + val >>= 1; + + u8g_com_arduino_no_en_write_data_pin( 4, val&1 ); + val >>= 1; + u8g_com_arduino_no_en_write_data_pin( 5, val&1 ); + val >>= 1; + u8g_com_arduino_no_en_write_data_pin( 6, val&1 ); + val >>= 1; + u8g_com_arduino_no_en_write_data_pin( 7, val&1 ); + val >>= 1; + + /* EN cycle time must be 1 micro second, digitalWrite is slow enough to do this */ + if ( u8g->pin_list[U8G_PI_CS_STATE] == 1 ) + { + u8g_MicroDelay(); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, HIGH); + u8g_MicroDelay(); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, LOW); + u8g_MicroDelay(); + } + else if ( u8g->pin_list[U8G_PI_CS_STATE] == 2 ) + { + u8g_MicroDelay(); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, HIGH); + u8g_MicroDelay(); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, LOW); + u8g_MicroDelay(); + } +} + + +uint8_t u8g_com_arduino_no_en_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g_com_arduino_no_en_parallel_init(u8g); + /* setup the RW pin as output and force it to low */ + if ( u8g->pin_list[U8G_PI_RW] != U8G_PIN_NONE ) + { + pinMode(u8g->pin_list[U8G_PI_RW], OUTPUT); + u8g_com_arduino_digital_write(u8g, U8G_PI_RW, LOW); + } + /* set all pins (except RW pin) */ + u8g_com_arduino_assign_pin_output_high(u8g); + break; + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_CHIP_SELECT: + /* + 0: nothing selected + 1: CS1 will be used as enable line + 2: CS2 will be used as enable line + this will be used in the u8g_com_arduino_no_en_parallel_write() procedure + */ + u8g->pin_list[U8G_PI_CS_STATE] = arg_val; + break; + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_arduino_no_en_parallel_write(u8g, arg_val); + break; + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_no_en_parallel_write(u8g, *ptr++); + arg_val--; + } + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_no_en_parallel_write(u8g, u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_com_arduino_digital_write(u8g, U8G_PI_DI, arg_val); + break; + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + } + return 1; +} + +#else + + +uint8_t u8g_com_arduino_no_en_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_parallel.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_parallel.c new file mode 100644 index 0000000000000000000000000000000000000000..a73bc0dbee776619f2523b89a3fc581e98bfe85f --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_parallel.c @@ -0,0 +1,187 @@ +/* + + u8g_arduino_parallel.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + PIN_D0 8 + PIN_D1 9 + PIN_D2 10 + PIN_D3 11 + PIN_D4 4 + PIN_D5 5 + PIN_D6 6 + PIN_D7 7 + + PIN_CS1 14 + PIN_CS2 15 + PIN_RW 16 + PIN_DI 17 + PIN_EN 18 + + u8g_Init8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + u8g_Init8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16, U8G_PIN_NONE) + +*/ + +#include "u8g.h" + + +#if defined(ARDUINO) + +#if ARDUINO < 100 +#include +#else +#include +#endif + + + + + + +void u8g_com_arduino_parallel_write(u8g_t *u8g, uint8_t val) +{ + u8g_com_arduino_digital_write(u8g, U8G_PI_D0, val&1); + val >>= 1; + u8g_com_arduino_digital_write(u8g, U8G_PI_D1, val&1); + val >>= 1; + u8g_com_arduino_digital_write(u8g, U8G_PI_D2, val&1); + val >>= 1; + u8g_com_arduino_digital_write(u8g, U8G_PI_D3, val&1); + val >>= 1; + u8g_com_arduino_digital_write(u8g, U8G_PI_D4, val&1); + val >>= 1; + u8g_com_arduino_digital_write(u8g, U8G_PI_D5, val&1); + val >>= 1; + u8g_com_arduino_digital_write(u8g, U8G_PI_D6, val&1); + val >>= 1; + u8g_com_arduino_digital_write(u8g, U8G_PI_D7, val&1); + + /* EN cycle time must be 1 micro second, digitalWrite is slow enough to do this */ + //u8g_Delay(1); + u8g_com_arduino_digital_write(u8g, U8G_PI_EN, HIGH); + //u8g_Delay(1); + u8g_MicroDelay(); /* delay by 1000ns, reference: ST7920: 140ns, SBN1661: 100ns */ + u8g_com_arduino_digital_write(u8g, U8G_PI_EN, LOW); + u8g_10MicroDelay(); /* ST7920 commands: 72us */ + //u8g_Delay(2); +} + + +uint8_t u8g_com_arduino_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + /* setup the RW pin as output and force it to low */ + if ( u8g->pin_list[U8G_PI_RW] != U8G_PIN_NONE ) + { + pinMode(u8g->pin_list[U8G_PI_RW], OUTPUT); + u8g_com_arduino_digital_write(u8g, U8G_PI_RW, LOW); + } + /* set all pins (except RW pin) */ + u8g_com_arduino_assign_pin_output_high(u8g); + break; + case U8G_COM_MSG_STOP: + break; + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, HIGH); + } + else if ( arg_val == 1 ) + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, HIGH); + } + else if ( arg_val == 2 ) + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, LOW); + } + else + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, LOW); + } + break; + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_arduino_parallel_write(u8g, arg_val); + break; + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_parallel_write(u8g, *ptr++); + arg_val--; + } + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_parallel_write(u8g, u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_com_arduino_digital_write(u8g, U8G_PI_DI, arg_val); + break; + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + } + return 1; +} + +#else + + +uint8_t u8g_com_arduino_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_port_d_wr.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_port_d_wr.c new file mode 100644 index 0000000000000000000000000000000000000000..cfaf71f9fac1bbc36bd52390c2301a38cc006cd3 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_port_d_wr.c @@ -0,0 +1,168 @@ +/* + + u8g_arduino_port_d_wr.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + Assumes PORTD for 8 bit data transfer. + EN is assumed to be a low active write signal (WR) + + ILI9325D_320x240 from iteadstudio.com + RS=19, WR=18, CS=17, RST=16 + + + u8g_Init8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + u8g_Init8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16, U8G_PIN_NONE) + +*/ + +#include "u8g.h" + + +#if defined(ARDUINO) && defined(PORTD) + +#if ARDUINO < 100 +#include +#else +#include +#endif + + + + + + +static void u8g_com_arduino_port_d_8bit_wr(u8g_t *u8g, uint8_t val) +{ + PORTD = val; + + /* WR cycle time must be 1 micro second, digitalWrite is slow enough to do this */ + u8g_com_arduino_digital_write(u8g, U8G_PI_EN, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_EN, HIGH); +} + + +uint8_t u8g_com_arduino_port_d_wr_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + + switch(msg) + { + case U8G_COM_MSG_INIT: + +#ifdef UCSR0B + UCSR0B = 0; // disable USART 0 +#endif + DDRD = 0x0ff; + PORTD = 0x0ff; + + /* setup the RW pin as output and force it to low */ + if ( u8g->pin_list[U8G_PI_RW] != U8G_PIN_NONE ) + { + pinMode(u8g->pin_list[U8G_PI_RW], OUTPUT); + u8g_com_arduino_digital_write(u8g, U8G_PI_RW, HIGH); + } + /* set all pins (except RW pin) */ + u8g_com_arduino_assign_pin_output_high(u8g); + u8g_com_arduino_digital_write(u8g, U8G_PI_EN, HIGH); + break; + case U8G_COM_MSG_STOP: + break; + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, HIGH); + } + else if ( arg_val == 1 ) + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, HIGH); + } + else if ( arg_val == 2 ) + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, LOW); + } + else + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, LOW); + } + break; + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_arduino_port_d_8bit_wr(u8g, arg_val); + break; + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_port_d_8bit_wr(u8g, *ptr++); + arg_val--; + } + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_port_d_8bit_wr(u8g, u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_com_arduino_digital_write(u8g, U8G_PI_DI, arg_val); + break; + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + } + return 1; +} + +#else + + +uint8_t u8g_com_arduino_port_d_wr_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO && PORTD */ + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_ssd_i2c.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_ssd_i2c.c new file mode 100644 index 0000000000000000000000000000000000000000..afcb4088a06a7a99fa96a5a3acee4d864ba31d55 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_ssd_i2c.c @@ -0,0 +1,201 @@ +/* + + u8g_com_arduino_ssd_i2c.c + + com interface for arduino (AND atmega) and the SSDxxxx chip (SOLOMON) variant + I2C protocol + + ToDo: Rename this to u8g_com_avr_ssd_i2c.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Special pin usage: + U8G_PI_I2C_OPTION additional options + U8G_PI_A0_STATE used to store the last value of the command/data register selection + U8G_PI_SET_A0 1: Signal request to update I2C device with new A0_STATE, 0: Do nothing, A0_STATE matches I2C device + U8G_PI_SCL clock line (NOT USED) + U8G_PI_SDA data line (NOT USED) + + U8G_PI_RESET reset line (currently disabled, see below) + + Protocol: + SLA, Cmd/Data Selection, Arguments + The command/data register is selected by a special instruction byte, which is sent after SLA + + The continue bit is always 0 so that a (re)start is equired for the change from cmd to/data mode +*/ + +#include "u8g.h" + +#define I2C_SLA (0x3c*2) +//#define I2C_CMD_MODE 0x080 +#define I2C_CMD_MODE 0x000 +#define I2C_DATA_MODE 0x040 + + +uint8_t u8g_com_arduino_ssd_start_sequence(u8g_t *u8g) +{ + /* are we requested to set the a0 state? */ + if ( u8g->pin_list[U8G_PI_SET_A0] == 0 ) + return 1; + + /* setup bus, might be a repeated start */ + if ( u8g_i2c_start(I2C_SLA) == 0 ) + return 0; + if ( u8g->pin_list[U8G_PI_A0_STATE] == 0 ) + { + if ( u8g_i2c_send_byte(I2C_CMD_MODE) == 0 ) + return 0; + } + else + { + if ( u8g_i2c_send_byte(I2C_DATA_MODE) == 0 ) + return 0; + } + + + u8g->pin_list[U8G_PI_SET_A0] = 0; + return 1; +} + +uint8_t u8g_com_arduino_ssd_i2c_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + //u8g_com_arduino_digital_write(u8g, U8G_PI_SCL, HIGH); + //u8g_com_arduino_digital_write(u8g, U8G_PI_SDA, HIGH); + //u8g->pin_list[U8G_PI_A0_STATE] = 0; /* inital RS state: unknown mode */ + + u8g_i2c_init(u8g->pin_list[U8G_PI_I2C_OPTION]); + + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_RESET: + /* Currently disabled, but it could be enable. Previous restrictions have been removed */ + /* u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); */ + break; + + case U8G_COM_MSG_CHIP_SELECT: + u8g->pin_list[U8G_PI_A0_STATE] = 0; + u8g->pin_list[U8G_PI_SET_A0] = 1; /* force a0 to set again, also forces start condition */ + if ( arg_val == 0 ) + { + /* disable chip, send stop condition */ + u8g_i2c_stop(); + } + else + { + /* enable, do nothing: any byte writing will trigger the i2c start */ + } + break; + + case U8G_COM_MSG_WRITE_BYTE: + //u8g->pin_list[U8G_PI_SET_A0] = 1; + if ( u8g_com_arduino_ssd_start_sequence(u8g) == 0 ) + return u8g_i2c_stop(), 0; + if ( u8g_i2c_send_byte(arg_val) == 0 ) + return u8g_i2c_stop(), 0; + // u8g_i2c_stop(); + break; + + case U8G_COM_MSG_WRITE_SEQ: + //u8g->pin_list[U8G_PI_SET_A0] = 1; + if ( u8g_com_arduino_ssd_start_sequence(u8g) == 0 ) + return u8g_i2c_stop(), 0; + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + if ( u8g_i2c_send_byte(*ptr++) == 0 ) + return u8g_i2c_stop(), 0; + arg_val--; + } + } + // u8g_i2c_stop(); + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + //u8g->pin_list[U8G_PI_SET_A0] = 1; + if ( u8g_com_arduino_ssd_start_sequence(u8g) == 0 ) + return u8g_i2c_stop(), 0; + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + if ( u8g_i2c_send_byte(u8g_pgm_read(ptr)) == 0 ) + return 0; + ptr++; + arg_val--; + } + } + // u8g_i2c_stop(); + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g->pin_list[U8G_PI_A0_STATE] = arg_val; + u8g->pin_list[U8G_PI_SET_A0] = 1; /* force a0 to set again */ + +#ifdef OLD_CODE + if ( i2c_state != 0 ) + { + u8g_i2c_stop(); + i2c_state = 0; + } + + if ( u8g_com_arduino_ssd_start_sequence(arg_val) == 0 ) + return 0; + + /* setup bus, might be a repeated start */ + /* + if ( u8g_i2c_start(I2C_SLA) == 0 ) + return 0; + if ( arg_val == 0 ) + { + i2c_state = 1; + + if ( u8g_i2c_send_byte(I2C_CMD_MODE) == 0 ) + return 0; + } + else + { + i2c_state = 2; + if ( u8g_i2c_send_byte(I2C_DATA_MODE) == 0 ) + return 0; + } + */ +#endif + break; + } + return 1; +} diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_st7920_hw_spi.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_st7920_hw_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..d5a041386abca9048fd84529bfce07dd90d21e77 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_st7920_hw_spi.c @@ -0,0 +1,220 @@ +/* + + u8g_com_arduino_st7920_hw_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + A special HW SPI interface for ST7920 controller + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if ARDUINO < 100 +#include +#include "wiring_private.h" +#include "pins_arduino.h" + +#else +#include +#include "wiring_private.h" +#endif + +#if defined(__AVR__) +#define U8G_ARDUINO_ATMEGA_HW_SPI + +/* remove the definition for attiny */ +#if __AVR_ARCH__ == 2 +#undef U8G_ATMEGA_HW_SPI +#endif +#if __AVR_ARCH__ == 25 +#undef U8G_ATMEGA_HW_SPI +#endif + +#endif + + +#if defined(U8G_ARDUINO_ATMEGA_HW_SPI) + +#include +#include + +static uint8_t u8g_arduino_st7920_hw_spi_shift_out(u8g_t *u8g, uint8_t val) U8G_NOINLINE; +static uint8_t u8g_arduino_st7920_hw_spi_shift_out(u8g_t *u8g, uint8_t val) +{ + /* send data */ + SPDR = val; + /* wait for transmission */ + while (!(SPSR & (1<pin_list[U8G_PI_A0_STATE] = 0; /* inital RS state: command mode */ + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable, note: the st7920 has an active high chip select */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, LOW); + } + else + { + /* enable */ + //u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, HIGH); + } + break; + + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_arduino_st7920_write_byte_hw_spi(u8g, u8g->pin_list[U8G_PI_A0_STATE], arg_val); + // u8g->pin_list[U8G_PI_A0_STATE] = 2; + //u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], arg_val); + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_st7920_write_byte_hw_spi(u8g, u8g->pin_list[U8G_PI_A0_STATE], *ptr++); + // u8g->pin_list[U8G_PI_A0_STATE] = 2; + arg_val--; + } + } + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_st7920_write_byte_hw_spi(u8g, u8g->pin_list[U8G_PI_A0_STATE], u8g_pgm_read(ptr) ); + // u8g->pin_list[U8G_PI_A0_STATE] = 2; + ptr++; + arg_val--; + } + } + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g->pin_list[U8G_PI_A0_STATE] = arg_val; + break; + } + return 1; +} + +#else + +uint8_t u8g_com_arduino_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} +#endif + +#else /* ARDUINO */ + +uint8_t u8g_com_arduino_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_st7920_spi.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_st7920_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..a7339886819c77d49d09e930e938dc3fec0b47dc --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_st7920_spi.c @@ -0,0 +1,295 @@ +/* + + u8g_com_arduino_st7920_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + A special SPI interface for ST7920 controller + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if ARDUINO < 100 +#include +#include "wiring_private.h" +#include "pins_arduino.h" + +#else +#include +#include "wiring_private.h" +#endif + +#if defined(__AVR__) + +uint8_t u8g_bitData, u8g_bitNotData; +uint8_t u8g_bitClock, u8g_bitNotClock; +volatile uint8_t *u8g_outData; +volatile uint8_t *u8g_outClock; + +static void u8g_com_arduino_init_shift_out(uint8_t dataPin, uint8_t clockPin) +{ + u8g_outData = portOutputRegister(digitalPinToPort(dataPin)); + u8g_outClock = portOutputRegister(digitalPinToPort(clockPin)); + u8g_bitData = digitalPinToBitMask(dataPin); + u8g_bitClock = digitalPinToBitMask(clockPin); + + u8g_bitNotClock = u8g_bitClock; + u8g_bitNotClock ^= 0x0ff; + + u8g_bitNotData = u8g_bitData; + u8g_bitNotData ^= 0x0ff; +} + +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) U8G_NOINLINE; +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) +{ + uint8_t cnt = 8; + uint8_t bitData = u8g_bitData; + uint8_t bitNotData = u8g_bitNotData; + uint8_t bitClock = u8g_bitClock; + uint8_t bitNotClock = u8g_bitNotClock; + volatile uint8_t *outData = u8g_outData; + volatile uint8_t *outClock = u8g_outClock; + do + { + if ( val & 128 ) + *outData |= bitData; + else + *outData &= bitNotData; + + /* + *outClock |= bitClock; + val <<= 1; + cnt--; + *outClock &= bitNotClock; + */ + + val <<= 1; + *outClock &= bitNotClock; + cnt--; + // removed micro delays, because AVRs are too slow and the delay is not required + //u8g_MicroDelay(); + *outClock |= bitClock; + //u8g_MicroDelay(); + } while( cnt != 0 ); +} + +#elif defined(__18CXX) || defined(__PIC32MX) + +uint16_t dog_bitData, dog_bitNotData; +uint16_t dog_bitClock, dog_bitNotClock; +volatile uint32_t *dog_outData; +volatile uint32_t *dog_outClock; +volatile uint32_t dog_pic32_spi_tmp; + +static void u8g_com_arduino_init_shift_out(uint8_t dataPin, uint8_t clockPin) +{ + dog_outData = portOutputRegister(digitalPinToPort(dataPin)); + dog_outClock = portOutputRegister(digitalPinToPort(clockPin)); + dog_bitData = digitalPinToBitMask(dataPin); + dog_bitClock = digitalPinToBitMask(clockPin); + + dog_bitNotClock = dog_bitClock; + dog_bitNotClock ^= 0x0ffff; + + dog_bitNotData = dog_bitData; + dog_bitNotData ^= 0x0ffff; +} + +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) +{ + uint8_t cnt = 8; + do + { + if ( val & 128 ) + *dog_outData |= dog_bitData; + else + *dog_outData &= dog_bitNotData; + val <<= 1; + //u8g_MicroDelay(); + //*dog_outClock |= dog_bitClock; + *dog_outClock &= dog_bitNotClock; + cnt--; + u8g_MicroDelay(); + //*dog_outClock &= dog_bitNotClock; + *dog_outClock |= dog_bitClock; + u8g_MicroDelay(); + + } while( cnt != 0 ); +} + +#else + +/* default interface, Arduino DUE (__arm__) */ + +uint8_t u8g_data_pin; +uint8_t u8g_clock_pin; + +static void u8g_com_arduino_init_shift_out(uint8_t dataPin, uint8_t clockPin) +{ + u8g_data_pin = dataPin; + u8g_clock_pin = clockPin; +} + +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) +{ + uint8_t cnt = 8; + do + { + if ( val & 128 ) + digitalWrite(u8g_data_pin, HIGH); + else + digitalWrite(u8g_data_pin, LOW); + val <<= 1; + //u8g_MicroDelay(); + digitalWrite(u8g_clock_pin, LOW); + cnt--; + u8g_MicroDelay(); + digitalWrite(u8g_clock_pin, HIGH); + u8g_MicroDelay(); + } while( cnt != 0 ); +} + +#endif + + + + +static void u8g_com_arduino_st7920_write_byte(uint8_t rs, uint8_t val) +{ + uint8_t i; + + if ( rs == 0 ) + { + /* command */ + u8g_com_arduino_do_shift_out_msb_first(0x0f8); + } + else if ( rs == 1 ) + { + /* data */ + u8g_com_arduino_do_shift_out_msb_first(0x0fa); + } + + u8g_com_arduino_do_shift_out_msb_first(val & 0x0f0); + u8g_com_arduino_do_shift_out_msb_first(val << 4); + + for( i = 0; i < 4; i++ ) + u8g_10MicroDelay(); + +} + + + +uint8_t u8g_com_arduino_st7920_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g_com_arduino_assign_pin_output_high(u8g); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, LOW); + // u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_MOSI, LOW); + u8g_com_arduino_init_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK]); + u8g->pin_list[U8G_PI_A0_STATE] = 0; /* inital RS state: command mode */ + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable, note: the st7920 has an active high chip select */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, LOW); + } + else + { + /* enable */ + //u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, HIGH); + } + break; + + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_arduino_st7920_write_byte( u8g->pin_list[U8G_PI_A0_STATE], arg_val); + //u8g->pin_list[U8G_PI_A0_STATE] = 2; + //u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], arg_val); + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_st7920_write_byte(u8g->pin_list[U8G_PI_A0_STATE], *ptr++); + //u8g->pin_list[U8G_PI_A0_STATE] = 2; + arg_val--; + } + } + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_st7920_write_byte(u8g->pin_list[U8G_PI_A0_STATE], u8g_pgm_read(ptr) ); + //u8g->pin_list[U8G_PI_A0_STATE] = 2; + ptr++; + arg_val--; + } + } + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g->pin_list[U8G_PI_A0_STATE] = arg_val; + break; + } + return 1; +} + +#else /* ARDUINO */ + +uint8_t u8g_com_arduino_st7920_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_std_sw_spi.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_std_sw_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..1251ef2e569b081271bc7f3d934532a1e1015b8e --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_std_sw_spi.c @@ -0,0 +1,144 @@ +/* + + u8g_arduino_std_sw_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + + +#if defined(ARDUINO) + +#if ARDUINO < 100 +#include +#else +#include +#endif + +void u8g_arduino_sw_spi_shift_out(uint8_t dataPin, uint8_t clockPin, uint8_t val) +{ + uint8_t i = 8; + do + { + if ( val & 128 ) + digitalWrite(dataPin, HIGH); + else + digitalWrite(dataPin, LOW); + val <<= 1; + u8g_MicroDelay(); /* 23 Sep 2012 */ + //delay(1); + digitalWrite(clockPin, HIGH); + u8g_MicroDelay(); /* 23 Sep 2012 */ + //delay(1); + digitalWrite(clockPin, LOW); + u8g_MicroDelay(); /* 23 Sep 2012 */ + //delay(1); + i--; + } while( i != 0 ); +} + +uint8_t u8g_com_arduino_std_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g_com_arduino_assign_pin_output_high(u8g); + u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_MOSI, LOW); + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, HIGH); + } + else + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, LOW); + } + break; + + case U8G_COM_MSG_WRITE_BYTE: + u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], arg_val); + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], *ptr++); + arg_val--; + } + } + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, arg_val); + break; + } + return 1; +} + +#else /* ARDUINO */ + +uint8_t u8g_com_arduino_std_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_sw_spi.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_sw_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..846baeb908ef4949f3e578d42798b615fe796227 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_sw_spi.c @@ -0,0 +1,239 @@ +/* + + u8g_arduino_sw_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if ARDUINO < 100 +#include +#include "wiring_private.h" +#include "pins_arduino.h" + +#else +#include +#include "wiring_private.h" +#endif + +#if defined(__AVR__) + +uint8_t u8g_bitData, u8g_bitNotData; +uint8_t u8g_bitClock, u8g_bitNotClock; +volatile uint8_t *u8g_outData; +volatile uint8_t *u8g_outClock; + +static void u8g_com_arduino_init_shift_out(uint8_t dataPin, uint8_t clockPin) +{ + u8g_outData = portOutputRegister(digitalPinToPort(dataPin)); + u8g_outClock = portOutputRegister(digitalPinToPort(clockPin)); + u8g_bitData = digitalPinToBitMask(dataPin); + u8g_bitClock = digitalPinToBitMask(clockPin); + + u8g_bitNotClock = u8g_bitClock; + u8g_bitNotClock ^= 0x0ff; + + u8g_bitNotData = u8g_bitData; + u8g_bitNotData ^= 0x0ff; +} + +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) U8G_NOINLINE; +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) +{ + uint8_t cnt = 8; + uint8_t bitData = u8g_bitData; + uint8_t bitNotData = u8g_bitNotData; + uint8_t bitClock = u8g_bitClock; + uint8_t bitNotClock = u8g_bitNotClock; + volatile uint8_t *outData = u8g_outData; + volatile uint8_t *outClock = u8g_outClock; + do + { + if ( val & 128 ) + *outData |= bitData; + else + *outData &= bitNotData; + + *outClock |= bitClock; + val <<= 1; + cnt--; + *outClock &= bitNotClock; + } while( cnt != 0 ); +} + +#elif defined(__18CXX) || defined(__PIC32MX) + +uint16_t dog_bitData, dog_bitNotData; +uint16_t dog_bitClock, dog_bitNotClock; +volatile uint32_t *dog_outData; +volatile uint32_t *dog_outClock; +volatile uint32_t dog_pic32_spi_tmp; + +static void u8g_com_arduino_init_shift_out(uint8_t dataPin, uint8_t clockPin) +{ + dog_outData = portOutputRegister(digitalPinToPort(dataPin)); + dog_outClock = portOutputRegister(digitalPinToPort(clockPin)); + dog_bitData = digitalPinToBitMask(dataPin); + dog_bitClock = digitalPinToBitMask(clockPin); + + dog_bitNotClock = dog_bitClock; + dog_bitNotClock ^= 0x0ffff; + + dog_bitNotData = dog_bitData; + dog_bitNotData ^= 0x0ffff; +} + +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) +{ + uint8_t cnt = 8; + do + { + if ( val & 128 ) + *dog_outData |= dog_bitData; + else + *dog_outData &= dog_bitNotData; + val <<= 1; + /* + There must be some delay here. However + fetching the adress dog_outClock is enough delay, so + do not place dog_outClock in a local variable. This will + break the procedure + */ + *dog_outClock |= dog_bitClock; + cnt--; + *dog_outClock &= dog_bitNotClock; + /* + little additional delay after clk pulse, done by 3x32bit reads + from I/O. Optimized for PIC32 with 80 MHz. + */ + dog_pic32_spi_tmp = *dog_outClock; + dog_pic32_spi_tmp = *dog_outClock; + dog_pic32_spi_tmp = *dog_outClock; + } while( cnt != 0 ); +} + +#else +/* empty interface */ + +static void u8g_com_arduino_init_shift_out(uint8_t dataPin, uint8_t clockPin) +{ +} + +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) +{ +} + +#endif + + +uint8_t u8g_com_arduino_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g_com_arduino_assign_pin_output_high(u8g); + u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_MOSI, LOW); + u8g_com_arduino_init_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK]); + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, HIGH); + } + else + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, LOW); + } + break; + + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_arduino_do_shift_out_msb_first( arg_val ); + //u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], arg_val); + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_do_shift_out_msb_first(*ptr++); + // u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], *ptr++); + arg_val--; + } + } + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_do_shift_out_msb_first( u8g_pgm_read(ptr) ); + //u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, arg_val); + break; + } + return 1; +} + +#else /* ARDUINO */ + +uint8_t u8g_com_arduino_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_t6963.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_t6963.c new file mode 100644 index 0000000000000000000000000000000000000000..d6a817867b6984558f72a8cf70976179faac69dd --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_arduino_t6963.c @@ -0,0 +1,385 @@ +/* + + u8g_com_arduino_t6963.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + PIN_D0 8 + PIN_D1 9 + PIN_D2 10 + PIN_D3 11 + PIN_D4 4 + PIN_D5 5 + PIN_D6 6 + PIN_D7 7 + + PIN_CS 14 + PIN_A0 15 + PIN_RESET 16 + PIN_WR 17 + PIN_RD 18 + + u8g_InitRW8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd, reset) + u8g_InitRW8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16) + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if ARDUINO < 100 +//#include +#include +#include +#else +#include +#endif + + +#if defined(__PIC32MX) +/* CHIPKIT PIC32 */ +static volatile uint32_t *u8g_output_data_port[8]; +static volatile uint32_t *u8g_input_data_port[8]; +static volatile uint32_t *u8g_mode_port[8]; +static uint32_t u8g_data_mask[8]; +#else +static volatile uint8_t *u8g_output_data_port[8]; +static volatile uint8_t *u8g_input_data_port[8]; +static volatile uint8_t *u8g_mode_port[8]; +static uint8_t u8g_data_mask[8]; +#endif + + + +static void u8g_com_arduino_t6963_init(u8g_t *u8g) +{ + u8g_output_data_port[0] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D0])); + u8g_input_data_port[0] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D0])); + u8g_mode_port[0] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D0])); + u8g_data_mask[0] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D0]); + + u8g_output_data_port[1] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D1])); + u8g_input_data_port[1] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D1])); + u8g_mode_port[1] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D1])); + u8g_data_mask[1] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D1]); + + u8g_output_data_port[2] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D2])); + u8g_input_data_port[2] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D2])); + u8g_mode_port[2] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D2])); + u8g_data_mask[2] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D2]); + + u8g_output_data_port[3] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D3])); + u8g_input_data_port[3] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D3])); + u8g_mode_port[3] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D3])); + u8g_data_mask[3] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D3]); + + u8g_output_data_port[4] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D4])); + u8g_input_data_port[4] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D4])); + u8g_mode_port[4] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D4])); + u8g_data_mask[4] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D4]); + + u8g_output_data_port[5] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D5])); + u8g_input_data_port[5] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D5])); + u8g_mode_port[5] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D5])); + u8g_data_mask[5] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D5]); + + u8g_output_data_port[6] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D6])); + u8g_input_data_port[6] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D6])); + u8g_mode_port[6] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D6])); + u8g_data_mask[6] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D6]); + + u8g_output_data_port[7] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D7])); + u8g_input_data_port[7] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D7])); + u8g_mode_port[7] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D7])); + u8g_data_mask[7] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D7]); +} + +static void u8g_com_arduino_t6963_write_data_pin(uint8_t pin, uint8_t val) +{ + if ( val != 0 ) + *u8g_output_data_port[pin] |= u8g_data_mask[pin]; + else + *u8g_output_data_port[pin] &= ~u8g_data_mask[pin]; +} + +static void u8g_com_arduino_t6963_set_port_output(void) +{ + uint8_t i; + for( i = 0; i < 8; i++ ) + { +#if defined(__PIC32MX) +/* CHIPKIT PIC32 */ + *u8g_mode_port[i] |= u8g_data_mask[i]; +#elif defined(__AVR__) + *u8g_mode_port[i] |= u8g_data_mask[i]; +#else + /* TODO: use generic Arduino API */ + *u8g_mode_port[i] |= u8g_data_mask[i]; +#endif + + } +} + +static void u8g_com_arduino_t6963_set_port_input(void) +{ + uint8_t i; + for( i = 0; i < 8; i++ ) + { +#if defined(__PIC32MX) +/* CHIPKIT PIC32 */ + *u8g_mode_port[i] &= ~u8g_data_mask[i]; +#elif defined(__AVR__) +/* avr */ + *u8g_mode_port[i] &= ~u8g_data_mask[i]; + *u8g_output_data_port[i] &= ~u8g_data_mask[i]; // no pullup +#else + /* TODO: use generic Arduino API */ + *u8g_mode_port[i] &= ~u8g_data_mask[i]; + *u8g_output_data_port[i] &= ~u8g_data_mask[i]; // no pullup +#endif + } +} + + +static void u8g_com_arduino_t6963_write(u8g_t *u8g, uint8_t val) +{ + u8g_com_arduino_t6963_write_data_pin( 0, val&1 ); + val >>= 1; + u8g_com_arduino_t6963_write_data_pin( 1, val&1 ); + val >>= 1; + u8g_com_arduino_t6963_write_data_pin( 2, val&1 ); + val >>= 1; + u8g_com_arduino_t6963_write_data_pin( 3, val&1 ); + val >>= 1; + + u8g_com_arduino_t6963_write_data_pin( 4, val&1 ); + val >>= 1; + u8g_com_arduino_t6963_write_data_pin( 5, val&1 ); + val >>= 1; + u8g_com_arduino_t6963_write_data_pin( 6, val&1 ); + val >>= 1; + u8g_com_arduino_t6963_write_data_pin( 7, val&1 ); + val >>= 1; + + u8g_com_arduino_digital_write(u8g, U8G_PI_WR, 0); + u8g_MicroDelay(); /* 80ns, reference: t6963 datasheet */ + u8g_com_arduino_digital_write(u8g, U8G_PI_WR, 1); + u8g_MicroDelay(); /* 10ns, reference: t6963 datasheet */ +} + +static uint8_t u8g_com_arduino_t6963_read(u8g_t *u8g) +{ + uint8_t val = 0; + + u8g_com_arduino_digital_write(u8g, U8G_PI_RD, 0); + u8g_MicroDelay(); /* 150ns, reference: t6963 datasheet */ + + /* only read bits 0, 1 and 3 */ + if ( (*u8g_input_data_port[3] & u8g_data_mask[3]) != 0 ) + val++; + val <<= 1; + val <<= 1; + if ( (*u8g_input_data_port[1] & u8g_data_mask[1]) != 0 ) + val++; + val <<= 1; + if ( (*u8g_input_data_port[0] & u8g_data_mask[0]) != 0 ) + val++; + + u8g_com_arduino_digital_write(u8g, U8G_PI_RD, 1); + u8g_MicroDelay(); /* 10ns, reference: t6963 datasheet */ + + return val; +} + +#define U8G_STATUS_TIMEOUT 50 + +static uint8_t u8g_com_arduino_t6963_until_01_ok(u8g_t *u8g) +{ + long x; + + u8g_com_arduino_t6963_set_port_input(); + x = millis(); + x += U8G_STATUS_TIMEOUT; + + for(;;) + { + if ( (u8g_com_arduino_t6963_read(u8g) & 3) == 3 ) + break; + if ( x < millis() ) + return 0; + } + u8g_com_arduino_t6963_set_port_output(); + return 1; +} + +static uint8_t u8g_com_arduino_t6963_until_3_ok(u8g_t *u8g) +{ + long x; + + u8g_com_arduino_t6963_set_port_input(); + x = millis(); + x += U8G_STATUS_TIMEOUT; + + for(;;) + { + if ( (u8g_com_arduino_t6963_read(u8g) & 8) == 8 ) + break; + if ( x < millis() ) + return 0; + } + u8g_com_arduino_t6963_set_port_output(); + return 1; +} + +static uint8_t u8g_com_arduino_t6963_write_cmd(u8g_t *u8g, uint8_t val) +{ + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, 1); + if ( u8g_com_arduino_t6963_until_01_ok(u8g) == 0 ) + return 0; + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, 1); + u8g_com_arduino_t6963_write(u8g, val); + return 1; +} + +static uint8_t u8g_com_arduino_t6963_write_data(u8g_t *u8g, uint8_t val) +{ + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, 1); + if ( u8g_com_arduino_t6963_until_01_ok(u8g) == 0 ) + return 0; + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, 0); + u8g_com_arduino_t6963_write(u8g, val); + return 1; +} + +static uint8_t u8g_com_arduino_t6963_write_auto_data(u8g_t *u8g, uint8_t val) +{ + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, 1); + if ( u8g_com_arduino_t6963_until_3_ok(u8g) == 0 ) + return 0; + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, 0); + u8g_com_arduino_t6963_write(u8g, val); + return 1; +} + + +uint8_t u8g_com_arduino_t6963_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g->pin_list[U8G_PI_A0_STATE] = 0; + u8g_com_arduino_t6963_init(u8g); + /* setup the RW (equal to WR) pin as output and force it to high */ + if ( u8g->pin_list[U8G_PI_WR] != U8G_PIN_NONE ) + { + pinMode(u8g->pin_list[U8G_PI_WR], OUTPUT); + u8g_com_arduino_digital_write(u8g, U8G_PI_WR, HIGH); + } + /* set all pins (except WR pin) */ + u8g_com_arduino_assign_pin_output_high(u8g); + break; + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable, active low chip select */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, HIGH); + } + else + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, LOW); + } + break; + case U8G_COM_MSG_WRITE_BYTE: + if ( u8g->pin_list[U8G_PI_A0_STATE] == 0 ) + { + u8g_com_arduino_t6963_write_data(u8g, arg_val); + } + else + { + u8g_com_arduino_t6963_write_cmd(u8g, arg_val); + } + break; + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + u8g_com_arduino_t6963_write_cmd(u8g, 0x0b0); /* auto write */ + while( arg_val > 0 ) + { + if ( u8g_com_arduino_t6963_write_auto_data(u8g, *ptr++) == 0 ) + break; + arg_val--; + } + u8g_com_arduino_t6963_write_cmd(u8g, 0x0b2); /* auto reset */ + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + u8g_com_arduino_t6963_write_cmd(u8g, 0x0b0); /* auto write */ + while( arg_val > 0 ) + { + if ( u8g_com_arduino_t6963_write_auto_data(u8g, u8g_pgm_read(ptr)) == 0 ) + break; + ptr++; + arg_val--; + } + u8g_com_arduino_t6963_write_cmd(u8g, 0x0b2); /* auto reset */ + } + break; + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 1) or data mode (arg_val = 0) */ + u8g->pin_list[U8G_PI_A0_STATE] = arg_val; + //u8g_com_arduino_digital_write(u8g, U8G_PI_DI, arg_val); + break; + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + } + return 1; +} + +#else + + +uint8_t u8g_com_arduino_t6963_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_hw_spi.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_hw_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..30ee808ea8ccbcfe88c1ece8632e99b72e9d7866 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_hw_spi.c @@ -0,0 +1,174 @@ +/* + + u8g_com_atmega_hw_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + Assumes, that + MOSI is at PORTB, Pin 3 + and + SCK is at PORTB, Pin 5 + +*/ + +#include "u8g.h" + + +#if defined(__AVR__) +#define U8G_ATMEGA_HW_SPI + +/* remove the definition for attiny */ +#if __AVR_ARCH__ == 2 +#undef U8G_ATMEGA_HW_SPI +#endif +#if __AVR_ARCH__ == 25 +#undef U8G_ATMEGA_HW_SPI +#endif +#endif + + +#if defined(U8G_ATMEGA_HW_SPI) + +#include +#include + + +static uint8_t u8g_atmega_spi_out(uint8_t data) +{ + /* unsigned char x = 100; */ + /* send data */ + SPDR = data; + /* wait for transmission */ + while (!(SPSR & (1< 0 ) + { + u8g_atmega_spi_out(*ptr++); + arg_val--; + } + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_atmega_spi_out(u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + } + return 1; +} + +#else + +uint8_t u8g_com_atmega_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_parallel.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_parallel.c new file mode 100644 index 0000000000000000000000000000000000000000..603082da27b6c2c998e161177e51c8456119a856 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_parallel.c @@ -0,0 +1,183 @@ +/* + + u8g_atmega_parallel.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + PIN_D0 8 + PIN_D1 9 + PIN_D2 10 + PIN_D3 11 + PIN_D4 4 + PIN_D5 5 + PIN_D6 6 + PIN_D7 7 + + PIN_CS1 14 + PIN_CS2 15 + PIN_RW 16 + PIN_DI 17 + PIN_EN 18 + + u8g_Init8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + u8g_Init8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16, U8G_PIN_NONE) + +*/ + +#include "u8g.h" + +#if defined(__AVR__) + +static void u8g_com_atmega_parallel_write(u8g_t *u8g, uint8_t val) U8G_NOINLINE; +static void u8g_com_atmega_parallel_write(u8g_t *u8g, uint8_t val) +{ + + u8g_SetPILevel(u8g, U8G_PI_D0, val&1); + val >>= 1; + u8g_SetPILevel(u8g, U8G_PI_D1, val&1); + val >>= 1; + u8g_SetPILevel(u8g, U8G_PI_D2, val&1); + val >>= 1; + u8g_SetPILevel(u8g, U8G_PI_D3, val&1); + val >>= 1; + u8g_SetPILevel(u8g, U8G_PI_D4, val&1); + val >>= 1; + u8g_SetPILevel(u8g, U8G_PI_D5, val&1); + val >>= 1; + u8g_SetPILevel(u8g, U8G_PI_D6, val&1); + val >>= 1; + u8g_SetPILevel(u8g, U8G_PI_D7, val&1); + + /* EN cycle time must be 1 micro second */ + u8g_SetPILevel(u8g, U8G_PI_EN, 1); + u8g_MicroDelay(); /* delay by 1000ns, reference: ST7920: 140ns, SBN1661: 100ns */ + u8g_SetPILevel(u8g, U8G_PI_EN, 0); + u8g_10MicroDelay(); /* ST7920 commands: 72us */ + u8g_10MicroDelay(); /* ST7920 commands: 72us */ +} + + +uint8_t u8g_com_atmega_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + /* setup the RW pin as output and force it to low */ + u8g_SetPIOutput(u8g, U8G_PI_RW); + u8g_SetPILevel(u8g, U8G_PI_RW, 0); + + u8g_SetPIOutput(u8g, U8G_PI_D0); + u8g_SetPIOutput(u8g, U8G_PI_D1); + u8g_SetPIOutput(u8g, U8G_PI_D2); + u8g_SetPIOutput(u8g, U8G_PI_D3); + u8g_SetPIOutput(u8g, U8G_PI_D4); + u8g_SetPIOutput(u8g, U8G_PI_D5); + u8g_SetPIOutput(u8g, U8G_PI_D6); + u8g_SetPIOutput(u8g, U8G_PI_D7); + u8g_SetPIOutput(u8g, U8G_PI_EN); + u8g_SetPIOutput(u8g, U8G_PI_CS1); + u8g_SetPIOutput(u8g, U8G_PI_CS2); + u8g_SetPIOutput(u8g, U8G_PI_DI); + u8g_SetPILevel(u8g, U8G_PI_CS1, 1); + u8g_SetPILevel(u8g, U8G_PI_CS2, 1); + + break; + case U8G_COM_MSG_STOP: + break; + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable */ + u8g_SetPILevel(u8g, U8G_PI_CS1, 1); + u8g_SetPILevel(u8g, U8G_PI_CS2, 1); + } + else if ( arg_val == 1 ) + { + /* enable */ + u8g_SetPILevel(u8g, U8G_PI_CS1, 0); + u8g_SetPILevel(u8g, U8G_PI_CS2, 1); + } + else if ( arg_val == 2 ) + { + /* enable */ + u8g_SetPILevel(u8g, U8G_PI_CS1, 1); + u8g_SetPILevel(u8g, U8G_PI_CS2, 0); + } + else + { + /* enable */ + u8g_SetPILevel(u8g, U8G_PI_CS1, 0); + u8g_SetPILevel(u8g, U8G_PI_CS2, 0); + } + break; + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_atmega_parallel_write(u8g, arg_val); + break; + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_atmega_parallel_write(u8g, *ptr++); + arg_val--; + } + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_atmega_parallel_write(u8g, u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_SetPILevel(u8g, U8G_PI_DI, arg_val); + break; + case U8G_COM_MSG_RESET: + u8g_SetPILevel(u8g, U8G_PI_RESET, arg_val); + break; + } + return 1; +} + +#else + +uint8_t u8g_com_atmega_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_st7920_hw_spi.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_st7920_hw_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..52858a61ea1229ec89b91318166fc5776b7212f3 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_st7920_hw_spi.c @@ -0,0 +1,205 @@ +/* + + u8g_com_atmega_st7920_hw_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + A special SPI interface for ST7920 controller with HW SPI Support + + Assumes, that + MOSI is at PORTB, Pin 3 + and + SCK is at PORTB, Pin 5 + + +*/ + +#include "u8g.h" + +#if defined(__AVR__) +#define U8G_ATMEGA_HW_SPI + +/* remove the definition for attiny */ +#if __AVR_ARCH__ == 2 +#undef U8G_ATMEGA_HW_SPI +#endif +#if __AVR_ARCH__ == 25 +#undef U8G_ATMEGA_HW_SPI +#endif + +#endif + +#if defined(U8G_ATMEGA_HW_SPI) + +#include +#include + +static uint8_t u8g_atmega_st7920_hw_spi_shift_out(u8g_t *u8g, uint8_t val) U8G_NOINLINE; +static uint8_t u8g_atmega_st7920_hw_spi_shift_out(u8g_t *u8g, uint8_t val) +{ + /* send data */ + SPDR = val; + /* wait for transmission */ + while (!(SPSR & (1<pin_list[U8G_PI_A0_STATE] = 0; /* inital RS state: command mode */ + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_RESET: + u8g_SetPILevel(u8g, U8G_PI_RESET, arg_val); + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g->pin_list[U8G_PI_A0_STATE] = arg_val; + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable, note: the st7920 has an active high chip select */ + u8g_SetPILevel(u8g, U8G_PI_CS, 0); + } + else + { + /* u8g_SetPILevel(u8g, U8G_PI_SCK, 0 ); */ + /* enable */ + u8g_SetPILevel(u8g, U8G_PI_CS, 1); /* CS = 1 (high active) */ + } + break; + + + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_atmega_st7920_write_byte_hw_spi(u8g, u8g->pin_list[U8G_PI_A0_STATE], arg_val); + //u8g->pin_list[U8G_PI_A0_STATE] = 2; + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_atmega_st7920_write_byte_hw_spi(u8g, u8g->pin_list[U8G_PI_A0_STATE], *ptr++); + //u8g->pin_list[U8G_PI_A0_STATE] = 2; + arg_val--; + } + } + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_atmega_st7920_write_byte_hw_spi(u8g, u8g->pin_list[U8G_PI_A0_STATE], u8g_pgm_read(ptr)); + //u8g->pin_list[U8G_PI_A0_STATE] = 2; + ptr++; + arg_val--; + } + } + break; + } + return 1; +} + +#else + + +uint8_t u8g_com_atmega_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + + +#endif + + \ No newline at end of file diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_st7920_spi.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_st7920_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..24e06028a59e9b8d89088ab8c61b558215bc7508 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_st7920_spi.c @@ -0,0 +1,170 @@ +/* + + u8g_com_atmega_st7920_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + A special SPI interface for ST7920 controller + +*/ + +#include "u8g.h" + +#if defined(__AVR__) + +static void u8g_atmega_st7920_sw_spi_shift_out(u8g_t *u8g, uint8_t val) U8G_NOINLINE; +static void u8g_atmega_st7920_sw_spi_shift_out(u8g_t *u8g, uint8_t val) +{ + uint8_t i = 8; + do + { + u8g_SetPILevel(u8g, U8G_PI_MOSI, val & 128 ); + val <<= 1; + u8g_SetPILevel(u8g, U8G_PI_SCK, 1 ); + u8g_MicroDelay(); /* 15 Aug 2012: added for high speed uC */ + u8g_SetPILevel(u8g, U8G_PI_SCK, 0 ); + u8g_MicroDelay(); /* 15 Aug 2012: added for high speed uC */ + i--; + } while( i != 0 ); +} + +static void u8g_com_atmega_st7920_write_byte(u8g_t *u8g, uint8_t rs, uint8_t val) U8G_NOINLINE; +static void u8g_com_atmega_st7920_write_byte(u8g_t *u8g, uint8_t rs, uint8_t val) +{ + uint8_t i; + + if ( rs == 0 ) + { + /* command */ + u8g_atmega_st7920_sw_spi_shift_out(u8g, 0x0f8); + } + else if ( rs == 1 ) + { + /* data */ + u8g_atmega_st7920_sw_spi_shift_out(u8g, 0x0fa); + } + + u8g_atmega_st7920_sw_spi_shift_out(u8g, val & 0x0f0); + u8g_atmega_st7920_sw_spi_shift_out(u8g, val << 4); + + for( i = 0; i < 4; i++ ) + u8g_10MicroDelay(); +} + + +uint8_t u8g_com_atmega_st7920_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g_SetPIOutput(u8g, U8G_PI_SCK); + u8g_SetPIOutput(u8g, U8G_PI_MOSI); + /* u8g_SetPIOutput(u8g, U8G_PI_A0); */ + u8g_SetPIOutput(u8g, U8G_PI_CS); + u8g_SetPIOutput(u8g, U8G_PI_RESET); + + u8g_SetPILevel(u8g, U8G_PI_SCK, 0 ); + u8g_SetPILevel(u8g, U8G_PI_MOSI, 0 ); + u8g_SetPILevel(u8g, U8G_PI_CS, 0 ); + /* u8g_SetPILevel(u8g, U8G_PI_A0, 0); */ + + u8g->pin_list[U8G_PI_A0_STATE] = 0; /* inital RS state: command mode */ + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_RESET: + u8g_SetPILevel(u8g, U8G_PI_RESET, arg_val); + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g->pin_list[U8G_PI_A0_STATE] = arg_val; + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable, note: the st7920 has an active high chip select */ + u8g_SetPILevel(u8g, U8G_PI_CS, 0); + } + else + { + /* u8g_SetPILevel(u8g, U8G_PI_SCK, 0 ); */ + /* enable */ + u8g_SetPILevel(u8g, U8G_PI_CS, 1); /* CS = 1 (high active) */ + } + break; + + + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_atmega_st7920_write_byte(u8g, u8g->pin_list[U8G_PI_A0_STATE], arg_val); + u8g->pin_list[U8G_PI_A0_STATE] = 2; + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_atmega_st7920_write_byte(u8g, u8g->pin_list[U8G_PI_A0_STATE], *ptr++); + u8g->pin_list[U8G_PI_A0_STATE] = 2; + arg_val--; + } + } + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_atmega_st7920_write_byte(u8g, u8g->pin_list[U8G_PI_A0_STATE], u8g_pgm_read(ptr)); + u8g->pin_list[U8G_PI_A0_STATE] = 2; + ptr++; + arg_val--; + } + } + break; + } + return 1; +} + +#else + + +uint8_t u8g_com_atmega_st7920_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + + +#endif + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_sw_spi.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_sw_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..fde3153a5772eb7c2370d9c2ea6e885bd220c77a --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_atmega_sw_spi.c @@ -0,0 +1,141 @@ +/* + + u8g_com_atmega_sw_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#if defined(__AVR__) + +static void u8g_atmega_sw_spi_shift_out(u8g_t *u8g, uint8_t val) U8G_NOINLINE; +static void u8g_atmega_sw_spi_shift_out(u8g_t *u8g, uint8_t val) +{ + uint8_t i = 8; + do + { + u8g_SetPILevel(u8g, U8G_PI_MOSI, val & 128 ); + val <<= 1; + u8g_SetPILevel(u8g, U8G_PI_SCK, 1 ); + u8g_MicroDelay(); /* 15 Aug 2012: added for high speed uC */ + u8g_SetPILevel(u8g, U8G_PI_SCK, 0 ); + u8g_MicroDelay(); /* 15 Aug 2012: added for high speed uC */ + i--; + } while( i != 0 ); +} + +uint8_t u8g_com_atmega_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g_SetPIOutput(u8g, U8G_PI_SCK); + u8g_SetPIOutput(u8g, U8G_PI_MOSI); + u8g_SetPIOutput(u8g, U8G_PI_A0); + u8g_SetPIOutput(u8g, U8G_PI_CS); + u8g_SetPIOutput(u8g, U8G_PI_RESET); + + u8g_SetPILevel(u8g, U8G_PI_SCK, 0 ); + u8g_SetPILevel(u8g, U8G_PI_MOSI, 0 ); + u8g_SetPILevel(u8g, U8G_PI_CS, 1 ); + u8g_SetPILevel(u8g, U8G_PI_A0, 0); + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_SetPILevel(u8g, U8G_PI_A0, arg_val); + break; + + case U8G_COM_MSG_CHIP_SELECT: + + if ( arg_val == 0 ) + { + /* disable */ + u8g_SetPILevel(u8g, U8G_PI_CS, 1); + } + else + { + u8g_SetPILevel(u8g, U8G_PI_SCK, 0 ); + /* enable */ + u8g_SetPILevel(u8g, U8G_PI_CS, 0); /* CS = 0 (low active) */ + } + break; + + case U8G_COM_MSG_RESET: + u8g_SetPILevel(u8g, U8G_PI_RESET, arg_val); + break; + + + case U8G_COM_MSG_WRITE_BYTE: + u8g_atmega_sw_spi_shift_out(u8g, arg_val); + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_atmega_sw_spi_shift_out(u8g, *ptr++); + arg_val--; + } + } + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_atmega_sw_spi_shift_out(u8g, u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + } + return 1; +} + +#else + + +uint8_t u8g_com_atmega_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + + +#endif + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_i2c.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_i2c.c new file mode 100644 index 0000000000000000000000000000000000000000..144c7d72005a9e5ec83f2498ba57d39b8547eea6 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_i2c.c @@ -0,0 +1,249 @@ +/* + + u8g_com_i2c.c + + generic i2c interface + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#include "u8g.h" + +static uint8_t u8g_i2c_err_code; + +/* + position values + 1: start condition + 2: sla transfer +*/ +static uint8_t u8g_i2c_err_pos; + + +void u8g_i2c_clear_error(void) +{ + u8g_i2c_err_code = U8G_I2C_ERR_NONE; + u8g_i2c_err_pos = 0; +} + +uint8_t u8g_i2c_get_error(void) +{ + return u8g_i2c_err_code; +} + +uint8_t u8g_i2c_get_err_pos(void) +{ + return u8g_i2c_err_pos; +} + +static void u8g_i2c_set_error(uint8_t code, uint8_t pos) +{ + if ( u8g_i2c_err_code > 0 ) + return; + u8g_i2c_err_code |= code; + u8g_i2c_err_pos = pos; +} + + + +#if defined(__AVR__) +#define U8G_ATMEGA_HW_TWI + +/* remove the definition for attiny */ +#if __AVR_ARCH__ == 2 +#undef U8G_ATMEGA_HW_TWI +#endif +#if __AVR_ARCH__ == 25 +#undef U8G_ATMEGA_HW_TWI +#endif +#endif + +#if defined(U8G_ATMEGA_HW_TWI) + +#include +#include + + + +void u8g_i2c_init(uint8_t options) +{ + /* + TWBR: bit rate register + TWSR: status register (contains preselector bits) + + prescalar + 0 1 + 1 4 + 2 16 + 3 64 + + f = F_CPU/(16+2*TWBR*prescalar) + + F_CPU = 16MHz + TWBR = 152; + TWSR = 0; + --> 50KHz + + TWBR = 72; + TWSR = 0; + --> 100KHz + + F_CPU/(2*100000)-8 --> calculate TWBR value for 100KHz +*/ + TWSR = 0; + TWBR = F_CPU/(2*100000)-8; + u8g_i2c_clear_error(); +} + +uint8_t u8g_i2c_wait(uint8_t mask, uint8_t pos) +{ + volatile uint16_t cnt = 2000; /* timout value should be > 280 for 50KHz Bus and 16 Mhz CPU, however the start condition might need longer */ + while( !(TWCR & mask) ) + { + if ( cnt == 0 ) + { + u8g_i2c_set_error(U8G_I2C_ERR_TIMEOUT, pos); + return 0; /* error */ + } + cnt--; + } + return 1; /* all ok */ +} + +/* sla includes all 8 bits (with r/w bit), assums master transmit */ +uint8_t u8g_i2c_start(uint8_t sla) +{ + register uint8_t status; + + /* send start */ + TWCR = _BV(TWINT) | _BV(TWSTA) | _BV(TWEN); + + /* wait */ + if ( u8g_i2c_wait(_BV(TWINT), 1) == 0 ) + return 0; + + status = TW_STATUS; + + /* check status after start */ + if ( status != TW_START && status != TW_REP_START ) + { + u8g_i2c_set_error(U8G_I2C_ERR_BUS, 1); + return 0; + } + + /* set slave address */ + TWDR = sla; + + /* enable sla transfer */ + TWCR = _BV(TWINT) | _BV(TWEN); + + /* wait */ + if ( u8g_i2c_wait(_BV(TWINT), 2) == 0 ) + return 0; + status = TW_STATUS; + + /* check status after sla */ + if ( status != TW_MT_SLA_ACK ) + { + u8g_i2c_set_error(U8G_I2C_ERR_BUS, 2); + return 0; + } + + return 1; +} + +uint8_t u8g_i2c_send_byte(uint8_t data) +{ + register uint8_t status; + TWDR = data; + TWCR = _BV(TWINT) | _BV(TWEN); + if ( u8g_i2c_wait(_BV(TWINT), 3) == 0 ) + return 0; + status = TW_STATUS; + + if ( status != TW_MT_DATA_ACK ) + { + u8g_i2c_set_error(U8G_I2C_ERR_BUS, 3); + return 0; + } + + return 1; +} + +void u8g_i2c_stop(void) +{ + /* write stop */ + TWCR = _BV(TWINT) | _BV(TWEN) | _BV(TWSTO); + + /* no error is checked for the stop condition */ + u8g_i2c_wait(_BV(TWSTO), 4); + +} + +/* +void twi_send(uint8_t adr, uint8_t data1, uint8_t data2) +{ + u8g_i2c_start(adr<<1); + u8g_i2c_send_byte(data1); + u8g_i2c_send_byte(data2); + u8g_i2c_stop(); +} +*/ + +#else + +/* empty interface */ + +void u8g_i2c_init(uint8_t options) +{ + u8g_i2c_clear_error(); +} + +uint8_t u8g_i2c_wait(uint8_t mask, uint8_t pos) +{ + return 1; +} + +uint8_t u8g_i2c_start(uint8_t sla) +{ + return 1; +} +uint8_t u8g_i2c_send_byte(uint8_t data) +{ + return 1; +} + +void u8g_i2c_stop(void) +{ +} + + +#endif + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_io.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_io.c new file mode 100644 index 0000000000000000000000000000000000000000..50d26c93d5d7f1cf224eb50b61724adf39d97fd1 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_io.c @@ -0,0 +1,218 @@ +/* + + u8g_com_io.c + + abstraction layer for low level i/o + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#if defined(__AVR__) + +#include +#include + +typedef volatile uint8_t * IO_PTR; + +/* create internal pin number */ +uint8_t u8g_Pin(uint8_t port, uint8_t bitpos) +{ + port <<= 3; + port += bitpos; + return port; +} + +const IO_PTR u8g_avr_ddr_P[] PROGMEM = { +#ifdef DDRA + &DDRA, +#else + 0, +#endif + &DDRB, +#ifdef DDRC + &DDRC, +#ifdef DDRD + &DDRD, +#ifdef DDRE + &DDRE, +#ifdef DDRF + &DDRF, +#ifdef DDRG + &DDRG, +#ifdef DDRH + &DDRH, +#endif +#endif +#endif +#endif +#endif +#endif +}; + + +const IO_PTR u8g_avr_port_P[] PROGMEM = { +#ifdef PORTA + &PORTA, +#else + 0, +#endif + &PORTB, +#ifdef PORTC + &PORTC, +#ifdef PORTD + &PORTD, +#ifdef PORTE + &PORTE, +#ifdef PORTF + &PORTF, +#ifdef PORTG + &PORTG, +#ifdef PORTH + &PORTH, +#endif +#endif +#endif +#endif +#endif +#endif +}; + +const IO_PTR u8g_avr_pin_P[] PROGMEM = { +#ifdef PINA + &PINA, +#else + 0, +#endif + &PINB, +#ifdef PINC + &PINC, +#ifdef PIND + &PIND, +#ifdef PINE + &PINE, +#ifdef PINF + &PINF, +#ifdef PING + &PING, +#ifdef PINH + &PINH, +#endif +#endif +#endif +#endif +#endif +#endif +}; + +static volatile uint8_t *u8g_get_avr_io_ptr(const IO_PTR *base, uint8_t offset) +{ + volatile uint8_t * tmp; + base += offset; + memcpy_P(&tmp, base, sizeof(volatile uint8_t * PROGMEM)); + return tmp; +} + +/* set direction to output of the specified pin (internal pin number) */ +void u8g_SetPinOutput(uint8_t internal_pin_number) +{ + *u8g_get_avr_io_ptr(u8g_avr_ddr_P, internal_pin_number>>3) |= _BV(internal_pin_number&7); +} + +void u8g_SetPinInput(uint8_t internal_pin_number) +{ + *u8g_get_avr_io_ptr(u8g_avr_ddr_P, internal_pin_number>>3) &= ~_BV(internal_pin_number&7); +} + +void u8g_SetPinLevel(uint8_t internal_pin_number, uint8_t level) +{ + volatile uint8_t * tmp = u8g_get_avr_io_ptr(u8g_avr_port_P, internal_pin_number>>3); + + if ( level == 0 ) + *tmp &= ~_BV(internal_pin_number&7); + else + *tmp |= _BV(internal_pin_number&7); +} + +uint8_t u8g_GetPinLevel(uint8_t internal_pin_number) +{ + volatile uint8_t * tmp = u8g_get_avr_io_ptr(u8g_avr_pin_P, internal_pin_number>>3); + if ( ((*tmp) & _BV(internal_pin_number&7)) != 0 ) + return 1; + return 0; +} + +#else + +uint8_t u8g_Pin(uint8_t port, uint8_t bitpos) +{ + port <<= 3; + port += bitpos; + return port; +} + +void u8g_SetPinOutput(uint8_t internal_pin_number) +{ +} + +void u8g_SetPinInput(uint8_t internal_pin_number) +{ +} + +void u8g_SetPinLevel(uint8_t internal_pin_number, uint8_t level) +{ +} + +uint8_t u8g_GetPinLevel(uint8_t internal_pin_number) +{ + return 0; +} + +#endif + + +void u8g_SetPIOutput(u8g_t *u8g, uint8_t pi) +{ + uint8_t pin; + pin = u8g->pin_list[pi]; + if ( pin != U8G_PIN_NONE ) + u8g_SetPinOutput(pin); +} + +void u8g_SetPILevel(u8g_t *u8g, uint8_t pi, uint8_t level) +{ + uint8_t pin; + pin = u8g->pin_list[pi]; + if ( pin != U8G_PIN_NONE ) + u8g_SetPinLevel(pin, level); +} diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_null.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_null.c new file mode 100644 index 0000000000000000000000000000000000000000..1d9deebff6e36e154062b688668c1472fefe0de9 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_com_null.c @@ -0,0 +1,63 @@ +/* + + u8g_com_null.c + + communication null device + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +uint8_t u8g_com_null_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + break; + case U8G_COM_MSG_STOP: + break; + + + case U8G_COM_MSG_CHIP_SELECT: + /* arg_val contains the chip number, which should be enabled */ + break; + + + case U8G_COM_MSG_WRITE_BYTE: + break; + case U8G_COM_MSG_WRITE_SEQ: + break; + } + return 1; +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_cursor.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_cursor.c new file mode 100644 index 0000000000000000000000000000000000000000..62075ba6efd50fe17c9b888dc9e199363bf8083d --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_cursor.c @@ -0,0 +1,99 @@ +/* + + u8g_cursor.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +void u8g_SetCursorFont(u8g_t *u8g, const u8g_pgm_uint8_t *cursor_font) +{ + u8g->cursor_font = cursor_font; +} + +void u8g_SetCursorStyle(u8g_t *u8g, uint8_t encoding) +{ + u8g->cursor_encoding = encoding; +} + +void u8g_SetCursorColor(u8g_t *u8g, uint8_t fg, uint8_t bg) +{ + u8g->cursor_bg_color = bg; + u8g->cursor_fg_color = fg; +} + +void u8g_SetCursorPos(u8g_t *u8g, u8g_uint_t cursor_x, u8g_uint_t cursor_y) +{ + u8g->cursor_x = cursor_x; + u8g->cursor_y = cursor_y; +} + +void u8g_EnableCursor(u8g_t *u8g) +{ + u8g->cursor_fn = u8g_DrawCursor; +} + +void u8g_DisableCursor(u8g_t *u8g) +{ + u8g->cursor_fn = (u8g_draw_cursor_fn)0; +} + +void u8g_DrawCursor(u8g_t *u8g) +{ + const u8g_pgm_uint8_t *font; + uint8_t color; + uint8_t encoding = u8g->cursor_encoding; + + /* get current values */ + color = u8g_GetColorIndex(u8g); + font = u8g->font; + + /* draw cursor */ + u8g->font = u8g->cursor_font; + encoding++; + u8g_SetColorIndex(u8g, u8g->cursor_bg_color); + /* 27. Jan 2013: replaced call to u8g_DrawGlyph with call to u8g_draw_glyph */ + /* required, because y adjustment should not happen to the cursor fonts */ + u8g_draw_glyph(u8g, u8g->cursor_x, u8g->cursor_y, encoding); + encoding--; + u8g_SetColorIndex(u8g, u8g->cursor_fg_color); + /* 27. Jan 2013: replaced call to u8g_DrawGlyph with call to u8g_draw_glyph */ + /* required, because y adjustment should not happen to the cursor fonts */ + /* u8g_DrawGlyph(u8g, u8g->cursor_x, u8g->cursor_y, encoding); */ + u8g_draw_glyph(u8g, u8g->cursor_x, u8g->cursor_y, encoding); + + /* restore previous values */ + u8g->font = font; + u8g_SetColorIndex(u8g, color); +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_delay.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_delay.c new file mode 100644 index 0000000000000000000000000000000000000000..e6a0661b3c0157e0f8e78a7b466d73f104038938 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_delay.c @@ -0,0 +1,215 @@ +/* + + u8g_delay.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + + +#include "u8g.h" + +/*==== Part 1: Derive suitable delay procedure ====*/ + +#if defined(ARDUINO) +# if defined(__AVR__) +# define USE_AVR_DELAY +# elif defined(__PIC32MX) +# define USE_PIC32_DELAY +# elif defined(__arm__) /* Arduino Due */ +# define USE_ARDUINO_DELAY +# else +# define USE_ARDUINO_DELAY +# endif +#elif defined(__AVR__) +# define USE_AVR_DELAY +#elif defined(__18CXX) +# define USE_PIC18_DELAY +#else +# define USE_DUMMY_DELAY +#endif + + + +/*==== Part 2: Definition of the delay procedures ====*/ + +/*== AVR Delay ==*/ + +#if defined(USE_AVR_DELAY) +#include +#include +#include + +/* + Delay by the provided number of milliseconds. + Thus, a 16 bit value will allow a delay of 0..65 seconds + Makes use of the _delay_loop_2 + + _delay_loop_2 will do a delay of n * 4 prozessor cycles. + with f = F_CPU cycles per second, + n = f / (1000 * 4 ) + with f = 16000000 the result is 4000 + with f = 1000000 the result is 250 + + the millisec loop, gcc requires the following overhead: + - movev 1 + - subwi 2x2 + - bne i 2 + ==> 7 cycles + ==> must be devided by 4, rounded up 7/4 = 2 +*/ +void u8g_Delay(uint16_t val) +{ + /* old version did a call to the arduino lib: delay(val); */ + while( val != 0 ) + { + _delay_loop_2( (F_CPU / 4000 ) -2); + val--; + } +} + +/* delay by one micro second */ +void u8g_MicroDelay(void) +{ +#if (F_CPU / 4000000 ) > 0 + _delay_loop_2( (F_CPU / 4000000 ) ); +#endif +} + +/* delay by 10 micro seconds */ +void u8g_10MicroDelay(void) +{ +#if (F_CPU / 400000 ) > 0 + _delay_loop_2( (F_CPU / 400000 ) ); +#endif +} + +#endif + + +/*== Delay for PIC18 (not tested) ==*/ + +#if defined(USE_PIC18_DELAY) +#include +#define GetSystemClock() (64000000ul) // Hz +#define GetInstructionClock() (GetSystemClock()/4) + +void u8g_Delay(uint16_t val) +{/* + unsigned int _iTemp = (val); + while(_iTemp--) + Delay1KTCYx((GetInstructionClock()+999999)/1000000); + */ +} +void u8g_MicroDelay(void) +{ + /* not implemented */ +} +void u8g_10MicroDelay(void) +{ + /* not implemented */ +} +#endif + + +/*== Arduino Delay ==*/ +#if defined(USE_ARDUINO_DELAY) +void u8g_Delay(uint16_t val) +{ + delay(val); +} +void u8g_MicroDelay(void) +{ + delayMicroseconds(1); +} +void u8g_10MicroDelay(void) +{ + delayMicroseconds(10); +} +#endif + +#if defined(USE_PIC32_DELAY) +/* + Assume chipkit here with F_CPU correctly defined + The problem was, that u8g_Delay() is called within the constructor. + It seems that the chipkit is not fully setup at this time, so a + call to delay() will not work. So here is my own implementation. + +*/ +#define CPU_COUNTS_PER_SECOND (F_CPU/2UL) +#define TICKS_PER_MILLISECOND (CPU_COUNTS_PER_SECOND/1000UL) +#include "plib.h" +void u8g_Delay(uint16_t val) +{ + uint32_t d; + uint32_t s; + d = val; + d *= TICKS_PER_MILLISECOND; + s = ReadCoreTimer(); + while ( (uint32_t)(ReadCoreTimer() - s) < d ) + ; +} + +void u8g_MicroDelay(void) +{ + uint32_t d; + uint32_t s; + d = TICKS_PER_MILLISECOND/1000; + s = ReadCoreTimer(); + while ( (uint32_t)(ReadCoreTimer() - s) < d ) + ; +} + +void u8g_10MicroDelay(void) +{ + uint32_t d; + uint32_t s; + d = TICKS_PER_MILLISECOND/100; + s = ReadCoreTimer(); + while ( (uint32_t)(ReadCoreTimer() - s) < d ) + ; +} + +#endif + +/*== Any other systems: Dummy Delay ==*/ +#if defined(USE_DUMMY_DELAY) +void u8g_Delay(uint16_t val) +{ + /* do not know how to delay... */ +} +void u8g_MicroDelay(void) +{ +} +void u8g_10MicroDelay(void) +{ +} +#endif diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_flipdisc_2x7.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_flipdisc_2x7.c new file mode 100644 index 0000000000000000000000000000000000000000..bb368de438d07a23f749a5e9e90f01aa1c918c36 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_flipdisc_2x7.c @@ -0,0 +1,92 @@ +/* + + u8g_dev_flipdisc.c + + 1-Bit (BW) Driver for flip disc matrix + 2x 7 pixel height + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#include "u8g.h" + +#define WIDTH 28 +#define HEIGHT 14 +#define PAGE_HEIGHT 14 + +/* + Write data to the flip disc matrix. + This procedure must be implemented by the user. + Arguments: + id: Id for the matrix. Currently always 0. + page: A page has a height of 14 pixel. For a matrix with HEIGHT == 14 this will be always 0 + width: The width of the flip disc matrix. Always equal to WIDTH + row1: first data line (7 pixel per byte) + row2: first data line (7 pixel per byte) +*/ +void writeFlipDiscMatrix(uint8_t id, uint8_t page, uint8_t width, uint8_t *row1, uint8_t *row2); + + + +void (*u8g_write_flip_disc_matrix)(uint8_t id, uint8_t page, uint8_t width, uint8_t *row1, uint8_t *row2); + +void u8g_SetFlipDiscCallback(u8g_t *u8g, void (*cb)(uint8_t id, uint8_t page, uint8_t width, uint8_t *row1, uint8_t *row2)) +{ + u8g_write_flip_disc_matrix = cb; +} + +uint8_t u8g_dev_flipdisc_2x7_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + /* current page: pb->p.page */ + /* ptr to the buffer: pb->buf */ + + (*u8g_write_flip_disc_matrix)(0, pb->p.page, WIDTH, pb->buf, pb->buf+WIDTH); + } + break; + case U8G_DEV_MSG_CONTRAST: + return 1; + } + return u8g_dev_pb14v1_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_flipdisc_2x7_bw_buf[WIDTH*2] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_flipdisc_2x7_bw_pb = { {16, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_flipdisc_2x7_bw_buf}; +u8g_dev_t u8g_dev_flipdisc_2x7 = { u8g_dev_flipdisc_2x7_bw_fn, &u8g_dev_flipdisc_2x7_bw_pb, u8g_com_null_fn }; diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_gprof.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_gprof.c new file mode 100644 index 0000000000000000000000000000000000000000..a486a214330813e82bc7b1755c4d630a62386410 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_gprof.c @@ -0,0 +1,130 @@ +/* + + u8g_dev_gprof.c + + Device for performance measurement with gprof. + Does not write any data, but uses a buffer. + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + +*/ + +#include "u8g.h" + + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +uint8_t u8g_dev_gprof_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +uint8_t u8g_pb_dev_gprof_buf[WIDTH]; +u8g_pb_t u8g_pb_dev_gprof = { {PAGE_HEIGHT, HEIGHT, 0, 0, 0}, WIDTH, u8g_pb_dev_gprof_buf }; + +u8g_dev_t u8g_dev_gprof = { u8g_dev_gprof_fn, &u8g_pb_dev_gprof, NULL }; + +uint8_t u8g_dev_gprof_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + switch(msg) + { + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + /* + { + uint8_t i, j; + uint8_t page_height; + page_height = pb->p.page_y1; + page_height -= pb->p.page_y0; + page_height++; + for( j = 0; j < page_height; j++ ) + { + printf("%02d ", j); + for( i = 0; i < WIDTH; i++ ) + { + if ( (u8g_pb_dev_stdout_buf[i] & (1<p)) == 0 ) + { + //printf("\n"); + return 0; + } + u8g_pb_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + { + u8g_dev_arg_bbx_t *bbx = (u8g_dev_arg_bbx_t *)arg; + u8g_uint_t x2, y2; + + y2 = bbx->y; + y2 += bbx->h; + y2--; + + if ( u8g_pb_IsYIntersection(pb, bbx->y, y2) == 0 ) + return 0; + + /* maybe this one can be skiped... probability is very high to have an intersection, so it would be ok to always return 1 */ + x2 = bbx->x; + x2 += bbx->w; + x2--; + + if ( u8g_pb_IsXIntersection(pb, bbx->x, x2) == 0 ) + return 0; + } + return 1; +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ili9325d_320x240.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ili9325d_320x240.c new file mode 100644 index 0000000000000000000000000000000000000000..e30ae6a71de391c7227c9a68e001b80e48827daf --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ili9325d_320x240.c @@ -0,0 +1,326 @@ +/* + + u8g_dev_ili9325d_320x240.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Color format + Red: 5 Bit + Green: 6 Bit + Blue: 5 Bit + + +*/ + +#include "u8g.h" + +#define WIDTH 240 + +#if defined(U8G_16BIT) +#define HEIGHT 320 +#else +/* if the user tries to compile the 8Bit version of the lib, then restrict the height to something which fits to 8Bit */ +#define HEIGHT 240 +#endif +#define PAGE_HEIGHT 4 + + +/* + reference board for this device: + http://iteadstudio.com/store/index.php?main_page=product_info&cPath=57_58&products_id=55 + documentation: + http://iteadstudio.com/Downloadfile/ITDB02_material.rar + datasheet + http://www.newhavendisplay.com/app_notes/ILI9325D.pdf + other libs + http://henningkarlsen.com/electronics/library.php + init sequence + http://code.google.com/p/itdb02/, ITDB02.cpp, iteadstudio.com +*/ + +static const uint8_t u8g_dev_ili9325d_320x240_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + + //U8G_ESC_ADR(0), 0x000, 0x0E5, /* only used for none D version: set SRAM internal timing */ + //U8G_ESC_ADR(1), 0x078, 0x0f0, + U8G_ESC_ADR(0), 0x000, 0x001, /* Driver Output Control, bits 8 & 10 */ + U8G_ESC_ADR(1), 0x001, 0x000, + U8G_ESC_ADR(0), 0x000, 0x002, /* LCD Driving Wave Control, bit 9: Set line inversion */ + U8G_ESC_ADR(1), 0x002, 0x000, /* ITDB02 none D verion: 0x007, 0x000 */ + U8G_ESC_ADR(0), 0x000, 0x003, /* Entry Mode, GRAM write direction and BGR=1 */ + U8G_ESC_ADR(1), 0x010, 0x030, + U8G_ESC_ADR(0), 0x000, 0x004, /* Resize register */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x008, /* Display Control 2: set the back porch and front porch */ + U8G_ESC_ADR(1), 0x002, 0x007, + + U8G_ESC_ADR(0), 0x000, 0x009, /* Display Control 3 */ + U8G_ESC_ADR(1), 0x000, 0x000, + + U8G_ESC_ADR(0), 0x000, 0x00a, /* Display Control 4: FMARK */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x00c, /* RGB Display Interface Control 1 */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x00d, /* Frame Maker Position */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x00f, /* RGB Display Interface Control 2 */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x010, /* Power Control 1: SAP, BT[3:0], AP, DSTB, SLP, STB */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x011, /* Power Control 2: DC1[2:0], DC0[2:0], VC[2:0] */ + U8G_ESC_ADR(1), 0x000, 0x007, + U8G_ESC_ADR(0), 0x000, 0x012, /* Power Control 3: VREG1OUT voltage */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x013, /* Power Control 4: VDV[4:0] for VCOM amplitude */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x007, /* Display Control 1: Operate, but do not display */ + U8G_ESC_ADR(1), 0x000, 0x001, + + U8G_ESC_DLY(100), /* delay 100 ms */ /* ITDB02 none D verion: 50ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + U8G_ESC_ADR(0), 0x000, 0x010, /* Power Control 1: SAP, BT[3:0], AP, DSTB, SLP, STB */ + U8G_ESC_ADR(1), 0x016, 0x090, /* ITDB02 none D verion: 0x010, 0x090 */ + U8G_ESC_ADR(0), 0x000, 0x011, /* Power Control 2: SAP, BT[3:0], AP, DSTB, SLP, STB */ + U8G_ESC_ADR(1), 0x002, 0x027, + + U8G_ESC_DLY(50), /* delay 50 ms */ + + U8G_ESC_ADR(0), 0x000, 0x012, /* Power Control 3: VCI: External, VCI*1.80 */ + U8G_ESC_ADR(1), 0x000, 0x00d, /* ITDB02 none D verion: 0x000, 0x01f */ + + U8G_ESC_DLY(50), /* delay 50 ms */ + + U8G_ESC_ADR(0), 0x000, 0x013, /* Power Control 4: VDV[4:0] for VCOM amplitude */ + U8G_ESC_ADR(1), 0x012, 0x000, /* ITDB02 none D verion: 0x015, 0x000 */ + U8G_ESC_ADR(0), 0x000, 0x029, /* Power Control 7 */ + U8G_ESC_ADR(1), 0x000, 0x00a, /* ITDB02 none D verion: 0x000, 0x027 */ + U8G_ESC_ADR(0), 0x000, 0x02b, /* Frame Rate: 83 */ + U8G_ESC_ADR(1), 0x000, 0x00d, + + U8G_ESC_DLY(50), /* delay 50 ms */ + + U8G_ESC_ADR(0), 0x000, 0x020, /* Horizontal GRAM Address Set */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x021, /* Vertical GRAM Address Set */ + U8G_ESC_ADR(1), 0x000, 0x000, + + /* gamma control */ + U8G_ESC_ADR(0), 0x000, 0x030, + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x031, + U8G_ESC_ADR(1), 0x004, 0x004, + U8G_ESC_ADR(0), 0x000, 0x032, + U8G_ESC_ADR(1), 0x000, 0x003, + U8G_ESC_ADR(0), 0x000, 0x035, + U8G_ESC_ADR(1), 0x004, 0x005, + U8G_ESC_ADR(0), 0x000, 0x036, + U8G_ESC_ADR(1), 0x008, 0x008, + U8G_ESC_ADR(0), 0x000, 0x037, + U8G_ESC_ADR(1), 0x004, 0x007, + U8G_ESC_ADR(0), 0x000, 0x038, + U8G_ESC_ADR(1), 0x003, 0x003, + U8G_ESC_ADR(0), 0x000, 0x039, + U8G_ESC_ADR(1), 0x007, 0x007, + U8G_ESC_ADR(0), 0x000, 0x03c, + U8G_ESC_ADR(1), 0x005, 0x004, + U8G_ESC_ADR(0), 0x000, 0x03d, + U8G_ESC_ADR(1), 0x008, 0x008, + + U8G_ESC_ADR(0), 0x000, 0x050, /* Horizontal GRAM Start Address */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x051, /* Horizontal GRAM End Address: 239 */ + U8G_ESC_ADR(1), 0x000, 0x0EF, + U8G_ESC_ADR(0), 0x000, 0x052, /* Vertical GRAM Start Address */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x053, /* Vertical GRAM End Address: 319 */ + U8G_ESC_ADR(1), 0x001, 0x03F, + + U8G_ESC_ADR(0), 0x000, 0x060, /* Driver Output Control 2 */ + U8G_ESC_ADR(1), 0x0a7, 0x000, + U8G_ESC_ADR(0), 0x000, 0x061, /* Base Image Display Control: NDL,VLE, REV */ + U8G_ESC_ADR(1), 0x000, 0x001, + U8G_ESC_ADR(0), 0x000, 0x06a, /* Vertical Scroll Control */ + U8G_ESC_ADR(1), 0x000, 0x000, + + U8G_ESC_ADR(0), 0x000, 0x080, /* Partial Image 1 Display Position */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x081, /* Partial Image 1 RAM Start Address */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x082, /* Partial Image 1 RAM End Address */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x083, /* Partial Image 2 Display Position */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x084, /* Partial Image 2 RAM Start Address */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x085, /* Partial Image 2 RAM End Address */ + U8G_ESC_ADR(1), 0x000, 0x000, + + U8G_ESC_ADR(0), 0x000, 0x090, /* Panel Interface Control 1 */ + U8G_ESC_ADR(1), 0x000, 0x010, + U8G_ESC_ADR(0), 0x000, 0x092, /* Panel Interface Control 2 */ + U8G_ESC_ADR(1), 0x000, 0x000, /* 0x006, 0x000 */ + + U8G_ESC_ADR(0), 0x000, 0x007, /* Display Control 1: Operate, display ON */ + U8G_ESC_ADR(1), 0x001, 0x033, + + U8G_ESC_DLY(10), /* delay 10 ms */ + + /* write test pattern */ + U8G_ESC_ADR(0), 0x000, 0x020, /* Horizontal GRAM Address Set */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x021, /* Vertical GRAM Address Set */ + U8G_ESC_ADR(1), 0x000, 0x010, + U8G_ESC_ADR(0), 0x000, 0x022, /* Write Data to GRAM */ + U8G_ESC_ADR(1), 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +static const uint8_t u8g_dev_ili9325d_320x240_page_seq[] PROGMEM = { + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_ADR(0), 0x000, 0x020, /* Horizontal GRAM Address Set */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x021, /* Vertical GRAM Address Set */ + U8G_ESC_ADR(1), + U8G_ESC_END /* end of sequence */ +}; + +/* convert the internal RGB 332 to 65K high byte */ +static uint8_t u8g_dev_ili9325d_get_65K_high_byte(uint8_t color) +{ + uint8_t h; + h = color; + h &= 0x0e0; + h |= h>>3; + h &= 0x0f8; + color>>=2; + color &= 7; + h |= color; + return h; +} + +/* convert the internal RGB 332 to 65K high byte */ +static uint8_t u8g_dev_ili9325d_get_65K_low_byte(uint8_t color) +{ + uint8_t l; + l = color; + l <<= 3; + color &= 3; + color <<= 1; + l |= color; + return l; +} + + +uint8_t u8g_dev_ili9325d_320x240_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + //for(;;) + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ili9325d_320x240_init_seq); + + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + uint16_t y, j; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + y = pb->p.page_y0; + ptr = pb->buf; + for( i = 0; i < pb->p.page_height; i ++ ) + { + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ili9325d_320x240_page_seq); + u8g_WriteByte(u8g, dev, y >> 8 ); /* display ram (cursor) address high byte */ + u8g_WriteByte(u8g, dev, y & 255 ); /* display ram (cursor) address low byte */ + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0 ); + u8g_WriteByte(u8g, dev, 0x022 ); /* start gram data */ + + u8g_SetAddress(u8g, dev, 1); /* data mode */ + + for( j = 0; j < pb->width; j++ ) + { + u8g_WriteByte(u8g, dev, u8g_dev_ili9325d_get_65K_high_byte(*ptr) ); + u8g_WriteByte(u8g, dev, u8g_dev_ili9325d_get_65K_low_byte(*ptr) ); + + ptr++; + } + y++; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h8_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_ili9325d_320x240_8h8_buf[WIDTH*PAGE_HEIGHT] U8G_NOCOMMON ; +u8g_pb_t u8g_ili9325d_320x240_8h8_pb U8G_NOCOMMON = { {PAGE_HEIGHT, HEIGHT, 0, 0, 0}, WIDTH, u8g_ili9325d_320x240_8h8_buf}; +u8g_dev_t u8g_dev_ili9325d_320x240_8bit U8G_NOCOMMON = { u8g_dev_ili9325d_320x240_fn, &u8g_ili9325d_320x240_8h8_pb, u8g_com_arduino_port_d_wr_fn }; +//u8g_dev_t u8g_dev_ili9325d_320x240_8bit = { u8g_dev_ili9325d_320x240_fn, &u8g_ili9325d_320x240_8h8_pb, u8g_com_arduino_parallel_fn }; + +//U8G_PB_DEV(u8g_dev_ili9325d_320x240_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ili9325d_320x240_fn, U8G_COM_PARALLEL); + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ks0108_128x64.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ks0108_128x64.c new file mode 100644 index 0000000000000000000000000000000000000000..47ba18d4e768e85e69721696a17ac94138eb7c9b --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ks0108_128x64.c @@ -0,0 +1,110 @@ +/* + + u8g_dev_ks0108_128x64.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + ADDRESS = 0 (Command Mode) + 0x03f Display On + 0x0c0 Start Display at line 0 + 0x040 | y write to y address (y:0..63) + 0x0b8 | x write to page [0..7] + + + u8g_Init8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + u8g_Init8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16, U8G_PIN_NONE) + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +static const uint8_t u8g_dev_ks0108_128x64_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip 1 */ + 0x03f, /* display on */ + 0x0c0, /* start at line 0 */ + U8G_ESC_DLY(20), /* delay 20 ms */ + U8G_ESC_CS(2), /* enable chip 2 */ + 0x03f, /* display on */ + 0x0c0, /* start at line 0 */ + U8G_ESC_DLY(20), /* delay 20 ms */ + U8G_ESC_CS(0), /* disable all chips */ + U8G_ESC_END /* end of sequence */ +}; + + +uint8_t u8g_dev_ks0108_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ks0108_128x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* command mode */ + u8g_SetChipSelect(u8g, dev, 2); + u8g_WriteByte(u8g, dev, 0x0b8 | pb->p.page); /* select current page (KS0108b) */ + u8g_WriteByte(u8g, dev, 0x040 ); /* set address 0 */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, 64, pb->buf); + u8g_SetChipSelect(u8g, dev, 0); + + u8g_SetAddress(u8g, dev, 0); /* command mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x0b8 | pb->p.page); /* select current page (KS0108b) */ + u8g_WriteByte(u8g, dev, 0x040 ); /* set address 0 */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, 64, 64+(uint8_t *)pb->buf); + u8g_SetChipSelect(u8g, dev, 0); + + } + break; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_ks0108_128x64, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ks0108_128x64_fn, U8G_COM_PARALLEL); +U8G_PB_DEV(u8g_dev_ks0108_128x64_fast, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ks0108_128x64_fn, U8G_COM_FAST_PARALLEL); + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_lc7981_160x80.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_lc7981_160x80.c new file mode 100644 index 0000000000000000000000000000000000000000..b7bf6755eda533e6444db2e0400355bb22566fc2 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_lc7981_160x80.c @@ -0,0 +1,147 @@ +/* + + u8g_dev_lc7981_160x80.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 160 +#define HEIGHT 80 +#define PAGE_HEIGHT 8 + + +/* + code ideas: + https://github.com/vsergeev/embedded-drivers/tree/master/avr-lc7981 + data sheets: + http://www.lcd-module.de/eng/pdf/zubehoer/lc7981.pdf + http://www.lcd-module.de/pdf/grafik/w160-6.pdf +*/ + +static const uint8_t u8g_dev_lc7981_160x80_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(1), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + + U8G_ESC_ADR(1), /* instruction mode */ + 0x000, /* mode register */ + U8G_ESC_ADR(0), /* data mode */ + 0x032, /* display on (bit 5), master mode on (bit 4), graphics mode on (bit 1)*/ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x001, /* character/bits per pixel pitch */ + U8G_ESC_ADR(0), /* data mode */ + 0x007, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x002, /* number of chars/byte width of the screen */ + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8-1, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x003, /* time division */ + U8G_ESC_ADR(0), /* data mode */ + 0x07f, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x008, /* display start low */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x009, /* display start high */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_DLY(10), /* delay 10 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_lc7981_160x80_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_lc7981_160x80_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint16_t disp_ram_adr; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + disp_ram_adr = WIDTH/8; + disp_ram_adr *= y; + for( i = 0; i < 8; i ++ ) + { + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00a ); /* display ram (cursor) address low byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr & 0x0ff ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00b ); /* display ram (cursor) address hight byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr >> 8 ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00c ); /* write data */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + disp_ram_adr += WIDTH/8; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h1f_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_lc7981_160x80_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_lc7981_160x80_fn, U8G_COM_FAST_PARALLEL); + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_lc7981_240x128.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_lc7981_240x128.c new file mode 100644 index 0000000000000000000000000000000000000000..272b7c4cbd8d71f19553a241434ae09e6ebf4d73 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_lc7981_240x128.c @@ -0,0 +1,145 @@ +/* + + u8g_dev_lc7981_240x128.c + + Hitachi Display SP14N002 + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 240 +#define HEIGHT 128 +#define PAGE_HEIGHT 8 + + +/* + http://www.mark-products.com/graphics.htm#240x128%20Pixel%20Format +*/ + +static const uint8_t u8g_dev_lc7981_240x128_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(1), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + + U8G_ESC_ADR(1), /* instruction mode */ + 0x000, /* mode register */ + U8G_ESC_ADR(0), /* data mode */ + 0x032, /* display on (bit 5), master mode on (bit 4), graphics mode on (bit 1)*/ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x001, /* character/bits per pixel pitch */ + U8G_ESC_ADR(0), /* data mode */ + 0x007, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x002, /* number of chars/byte width of the screen */ + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8-1, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x003, /* time division */ + U8G_ESC_ADR(0), /* data mode */ + 0x07f, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x008, /* display start low */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x009, /* display start high */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_DLY(10), /* delay 10 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_lc7981_240x128_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_lc7981_240x128_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint16_t disp_ram_adr; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + disp_ram_adr = WIDTH/8; + disp_ram_adr *= y; + for( i = 0; i < 8; i ++ ) + { + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00a ); /* display ram (cursor) address low byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr & 0x0ff ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00b ); /* display ram (cursor) address hight byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr >> 8 ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00c ); /* write data */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + disp_ram_adr += WIDTH/8; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h1f_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_lc7981_240x128_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_lc7981_240x128_fn, U8G_COM_FAST_PARALLEL); + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_lc7981_240x64.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_lc7981_240x64.c new file mode 100644 index 0000000000000000000000000000000000000000..781f1d90a74b6a2783d2fdbff6f238d8ac4685c0 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_lc7981_240x64.c @@ -0,0 +1,145 @@ +/* + + u8g_dev_lc7981_240x64.c + + Tested with Nan Ya LM_J6_003_ + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 240 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + + +/* + http://www.mark-products.com/graphics.htm#240x64%20Pixel%20Format +*/ + +static const uint8_t u8g_dev_lc7981_240x64_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(1), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + + U8G_ESC_ADR(1), /* instruction mode */ + 0x000, /* mode register */ + U8G_ESC_ADR(0), /* data mode */ + 0x032, /* display on (bit 5), master mode on (bit 4), graphics mode on (bit 1)*/ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x001, /* character/bits per pixel pitch */ + U8G_ESC_ADR(0), /* data mode */ + 0x007, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x002, /* number of chars/byte width of the screen */ + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8-1, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x003, /* time division */ + U8G_ESC_ADR(0), /* data mode */ + 0x07f, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x008, /* display start low */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x009, /* display start high */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_DLY(10), /* delay 10 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_lc7981_240x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_lc7981_240x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint16_t disp_ram_adr; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + disp_ram_adr = WIDTH/8; + disp_ram_adr *= y; + for( i = 0; i < 8; i ++ ) + { + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00a ); /* display ram (cursor) address low byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr & 0x0ff ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00b ); /* display ram (cursor) address hight byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr >> 8 ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00c ); /* write data */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + disp_ram_adr += WIDTH/8; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h1f_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_lc7981_240x64_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_lc7981_240x64_fn, U8G_COM_FAST_PARALLEL); + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_lc7981_320x64.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_lc7981_320x64.c new file mode 100644 index 0000000000000000000000000000000000000000..d9ae9369fc5999fd09b603053ab7e65e23351448 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_lc7981_320x64.c @@ -0,0 +1,145 @@ +/* + + u8g_dev_lc7981_320x64.c + + Note: Requires 16 bit mode (Must be enabled in u8g.h) + + Tested with Varitronix MGLS32064-03.pdf + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 320 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + + +/* + http://www.gaw.ru/pdf/lcd/lcm/Varitronix/graf/MGLS32064-03.pdf +*/ + +static const uint8_t u8g_dev_lc7981_320x64_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(1), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + + U8G_ESC_ADR(1), /* instruction mode */ + 0x000, /* mode register */ + U8G_ESC_ADR(0), /* data mode */ + 0x032, /* display on (bit 5), master mode on (bit 4), graphics mode on (bit 1)*/ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x001, /* character/bits per pixel pitch */ + U8G_ESC_ADR(0), /* data mode */ + 0x007, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x002, /* number of chars/byte width of the screen */ + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8-1, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x003, /* time division */ + U8G_ESC_ADR(0), /* data mode */ + 0x07f, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x008, /* display start low */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x009, /* display start high */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_DLY(10), /* delay 10 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_lc7981_320x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_lc7981_320x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint16_t disp_ram_adr; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + disp_ram_adr = WIDTH/8; + disp_ram_adr *= y; + for( i = 0; i < 8; i ++ ) + { + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00a ); /* display ram (cursor) address low byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr & 0x0ff ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00b ); /* display ram (cursor) address hight byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr >> 8 ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00c ); /* write data */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + disp_ram_adr += WIDTH/8; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h1f_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_lc7981_320x64_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_lc7981_320x64_fn, U8G_COM_FAST_PARALLEL); diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_null.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_null.c new file mode 100644 index 0000000000000000000000000000000000000000..0e3907749c7341fbc8143749fb10a274d39f5b2d --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_null.c @@ -0,0 +1,67 @@ +/* + + u8g_dev_null.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +uint8_t u8g_dev_null(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: /* most often used command */ + break; + case U8G_DEV_MSG_SET_PIXEL: + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + break; + case U8G_DEV_MSG_PAGE_NEXT: + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return 1; +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + } + return 1; +} diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_pcd8544_84x48.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_pcd8544_84x48.c new file mode 100644 index 0000000000000000000000000000000000000000..4cc01137970ac5bd0148aa4eadd53df53d7425dc --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_pcd8544_84x48.c @@ -0,0 +1,110 @@ +/* + + u8g_dev_pcd8544_84x48.c + + Display: Nokia 84x48 + + Status: Tested with PCF8812 Display + + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 84 +#define HEIGHT 48 +#define PAGE_HEIGHT 8 + + +static const uint8_t u8g_dev_pcd8544_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x021, /* activate chip (PD=0), horizontal increment (V=0), enter extended command set (H=1) */ + 0x006, /* temp. control: b10 = 2 */ + 0x013, /* bias system 1:48 */ + 0x0c0, /* medium Vop */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00c, /* display on, normal operation */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00d, /* display on, invert */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00c, /* display on, normal */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_pcd8544_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_pcd8544_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_SetAddress(u8g, dev, 0); /* command mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x020 ); /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set X address */ + u8g_WriteByte(u8g, dev, 0x040 | pb->p.page); /* set Y address */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + /* the contrast adjustment does not work, needs to be analysed */ + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x021); /* command mode, extended function set */ + u8g_WriteByte(u8g, dev, 0x080 | ( (*(uint8_t *)arg) >> 1 ) ); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + + +U8G_PB_DEV(u8g_dev_pcd8544_84x48_sw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_pcd8544_fn, U8G_COM_SW_SPI); + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_pcf8812_96x65.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_pcf8812_96x65.c new file mode 100644 index 0000000000000000000000000000000000000000..3ac57884f84d185f8bf82d4d459beb29e161bb4c --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_pcf8812_96x65.c @@ -0,0 +1,123 @@ +/* + + u8g_dev_pcf8812_96x65.c + + Display: Nokia 96x65 + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + + om6206 comaptible to pcf8812 ? + + Status: Tested + + + Display Controller Seen in + LPH7366 (9 pins, 84x48) PCD8544 Nokia 5110 / 5120 / 5130 / 5160 / 6110 / 6150 + LPH7677 (8 pins, 84x48) PCD8544 Nokia 3210 + LPH7779 (8 pins, 84x48) PCD8544 Nokia 3310 / 3315 / 3330 / 3110, also 3410? + ??? PCD8544 Nokia 5110 / 6110 + LPH7690 ? (96x65) PCF8455/OM6202 Nokia 3410 + LPH7690 ? (96x65?) SED1565/S1D15605 Nokia 7110 / 3510? + LPH7690 ??? Nokia 6210 + + + +*/ + +#include "u8g.h" + +#define WIDTH 96 +#define HEIGHT 65 +#define PAGE_HEIGHT 8 + + +static const uint8_t u8g_dev_pcf8812_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x021, /* activate chip (PD=0), horizontal increment (V=0), enter extended command set (H=1) */ + 0x006, /* temp. control: b10 = 2 */ + 0x013, /* bias system 1:48 */ + 0x080 | 0x040, /* medium Vop */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00c, /* display on, normal operation */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00d, /* display on, invert */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00c, /* display on, normal */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_pcf8812_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_pcf8812_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_SetAddress(u8g, dev, 0); /* command mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x020 ); /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set X address */ + u8g_WriteByte(u8g, dev, 0x040 | pb->p.page); /* set Y address */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + /* the contrast adjustment does not work, needs to be analysed */ + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x021); /* command mode, extended function set */ + u8g_WriteByte(u8g, dev, 0x080 | ( (*(uint8_t *)arg) >> 1 ) ); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +/* u8g_com_arduino_sw_spi_fn does not work, too fast??? */ +U8G_PB_DEV(u8g_dev_pcf8812_96x65_sw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_pcf8812_fn, U8G_COM_SW_SPI); diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_sbn1661_122x32.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_sbn1661_122x32.c new file mode 100644 index 0000000000000000000000000000000000000000..3b0bcd6253cfc8bc49ae2695949b4dd7776117bc --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_sbn1661_122x32.c @@ -0,0 +1,107 @@ +/* + + u8g_dev_sbn1661_122x32.c + + WG12232 display with 2xSBN1661 / SED1520 controller (122x32 display) + At the moment only available in the Arduino Environment + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 122 +#define HEIGHT 32 +#define PAGE_HEIGHT 8 + + +static const uint8_t u8g_dev_sbn1661_122x32_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip 1 */ + 0x0af, /* display on */ + 0x0c0, /* display start at line 0 */ + 0x0a0, /* a0: ADC forward, a1: ADC reverse */ + 0x0a9, /* a8: 1/16, a9: 1/32 duty */ + U8G_ESC_CS(2), /* enable chip 2 */ + 0x0af, /* display on */ + 0x0c0, /* display start at line 0 */ + 0x0a0, /* a0: ADC forward, a1: ADC reverse */ + 0x0a9, /* a8: 1/16, a9: 1/32 duty */ + + U8G_ESC_CS(0), /* disable chip */ + + + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_sbn1661_122x32_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_sbn1661_122x32_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* command mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x0b8 | pb->p.page); /* select current page (SBN1661/SED1520) */ + u8g_WriteByte(u8g, dev, 0x000 ); /* set X address */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/2, pb->buf); + + u8g_SetAddress(u8g, dev, 0); /* command mode */ + u8g_SetChipSelect(u8g, dev, 2); + u8g_WriteByte(u8g, dev, 0x0b8 | pb->p.page); /* select current page (SBN1661/SED1520) */ + u8g_WriteByte(u8g, dev, 0x000 ); /* set X address */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/2, WIDTH/2+(uint8_t *)pb->buf); + + u8g_SetChipSelect(u8g, dev, 0); + + } + break; + case U8G_DEV_MSG_CONTRAST: + break; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +/* u8g_com_arduino_sw_spi_fn does not work, too fast??? */ +U8G_PB_DEV(u8g_dev_sbn1661_122x32 , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_sbn1661_122x32_fn, u8g_com_arduino_no_en_parallel_fn); diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1306_128x32.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1306_128x32.c new file mode 100644 index 0000000000000000000000000000000000000000..8f294374b13788020916c5328cf4afdc892d60d1 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1306_128x32.c @@ -0,0 +1,247 @@ +/* + + u8g_dev_ssd1306_128x32.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + 23 Feb 2013: Fixed, Issue 147 + +*/ + + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 32 +#define PAGE_HEIGHT 8 + + +/* init sequence adafruit 128x32 OLED (NOT TESTED) */ +static const uint8_t u8g_dev_ssd1306_128x32_adafruit1_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x03f, /* */ + + 0x0d3, 0x000, /* */ + + 0x040, /* start line */ + + 0x08d, 0x010, /* [1] charge pump setting (p62): 0x014 enable, 0x010 disable */ + + 0x020, 0x000, /* */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x012, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x09f, /* [1] set contrast control */ + 0x0d9, 0x022, /* [1] pre-charge period 0x022/f1*/ + 0x0db, 0x040, /* vcomh deselect level */ + + 0x02e, /* 2012-05-27: Deactivate scroll */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +/* init sequence adafruit 128x32 OLED (NOT TESTED) */ +static const uint8_t u8g_dev_ssd1306_128x32_adafruit2_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x03f, /* */ + + 0x0d3, 0x000, /* */ + + 0x040, /* start line */ + + 0x08d, 0x014, /* [2] charge pump setting (p62): 0x014 enable, 0x010 disable */ + + 0x020, 0x000, /* */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x012, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x0cf, /* [2] set contrast control */ + 0x0d9, 0x0f1, /* [2] pre-charge period 0x022/f1*/ + 0x0db, 0x040, /* vcomh deselect level */ + + 0x02e, /* 2012-05-27: Deactivate scroll */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +/* init sequence adafruit 128x32 OLED (TESTED - WORKING 23.02.13), like adafruit3, but with page addressing mode */ +static const uint8_t u8g_dev_ssd1306_128x32_adafruit3_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x01f, /* Feb 23, 2013: 128x32 OLED: 0x01f, 128x64 OLED 0x03f */ + + 0x0d3, 0x000, /* */ + + 0x040, /* start line */ + + 0x08d, 0x014, /* [2] charge pump setting (p62): 0x014 enable, 0x010 disable */ + + 0x020, 0x002, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5), Feb 23, 2013: 128x32 OLED: 0x002, 128x64 OLED 0x012 */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x002, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x0cf, /* [2] set contrast control */ + 0x0d9, 0x0f1, /* [2] pre-charge period 0x022/f1*/ + 0x0db, 0x040, /* vcomh deselect level */ + + 0x02e, /* 2012-05-27: Deactivate scroll */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +/* init sequence Univision datasheet (NOT TESTED) */ +static const uint8_t u8g_dev_ssd1306_128x32_univision_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x03f, /* multiplex ratio */ + 0x0d3, 0x000, /* display offset */ + 0x040, /* start line */ + 0x08d, 0x010, /* charge pump setting (p62): 0x014 enable, 0x010 disable */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x012, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x09f, /* set contrast control */ + 0x0d9, 0x022, /* pre-charge period */ + 0x0db, 0x040, /* vcomh deselect level */ + 0x022, 0x000, /* page addressing mode WRONG: 3 byte cmd! */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +/* select one init sequence here */ +//define u8g_dev_ssd1306_128x32_init_seq u8g_dev_ssd1306_128x32_univision_init_seq +//define u8g_dev_ssd1306_128x32_init_seq u8g_dev_ssd1306_128x32_adafruit1_init_seq +//define u8g_dev_ssd1306_128x32_init_seq u8g_dev_ssd1306_128x32_adafruit2_init_seq +#define u8g_dev_ssd1306_128x32_init_seq u8g_dev_ssd1306_128x32_adafruit3_init_seq + + +static const uint8_t u8g_dev_ssd1306_128x32_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr. to 0 */ + 0x000, /* set lower 4 bit of the col adr. to 4 */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_ssd1306_128x32_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1306_128x32_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1306_128x32_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (SSD1306) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; +} + + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_ssd1306_128x32_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1306_128x32_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1306_128x32_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1306_128x32_fn, U8G_COM_HW_SPI); +U8G_PB_DEV(u8g_dev_ssd1306_128x32_i2c, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1306_128x32_fn, U8G_COM_SSD_I2C); + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1306_128x64.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1306_128x64.c new file mode 100644 index 0000000000000000000000000000000000000000..a49b2d8064d670141c3d91219c4ac1828f52143d --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1306_128x64.c @@ -0,0 +1,237 @@ +/* + + u8g_dev_ssd1306_128x64.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +/* init sequence adafruit 128x64 OLED (NOT TESTED) */ +static const uint8_t u8g_dev_ssd1306_128x64_adafruit1_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x03f, /* */ + + 0x0d3, 0x000, /* */ + + 0x040, /* start line */ + + 0x08d, 0x010, /* [1] charge pump setting (p62): 0x014 enable, 0x010 disable */ + + 0x020, 0x000, /* */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x012, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x09f, /* [1] set contrast control */ + 0x0d9, 0x022, /* [1] pre-charge period 0x022/f1*/ + 0x0db, 0x040, /* vcomh deselect level */ + + 0x02e, /* 2012-05-27: Deactivate scroll */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +/* init sequence adafruit 128x64 OLED (NOT TESTED) */ +static const uint8_t u8g_dev_ssd1306_128x64_adafruit2_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x03f, /* */ + + 0x0d3, 0x000, /* */ + + 0x040, /* start line */ + + 0x08d, 0x014, /* [2] charge pump setting (p62): 0x014 enable, 0x010 disable */ + + 0x020, 0x000, /* */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x012, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x0cf, /* [2] set contrast control */ + 0x0d9, 0x0f1, /* [2] pre-charge period 0x022/f1*/ + 0x0db, 0x040, /* vcomh deselect level */ + + 0x02e, /* 2012-05-27: Deactivate scroll */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +/* init sequence adafruit 128x64 OLED (NOT TESTED), like adafruit3, but with page addressing mode */ +static const uint8_t u8g_dev_ssd1306_128x64_adafruit3_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x03f, /* */ + + 0x0d3, 0x000, /* */ + + 0x040, /* start line */ + + 0x08d, 0x014, /* [2] charge pump setting (p62): 0x014 enable, 0x010 disable */ + + 0x020, 0x002, /* 2012-05-27: page addressing mode */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x012, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x0cf, /* [2] set contrast control */ + 0x0d9, 0x0f1, /* [2] pre-charge period 0x022/f1*/ + 0x0db, 0x040, /* vcomh deselect level */ + + 0x02e, /* 2012-05-27: Deactivate scroll */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +/* init sequence Univision datasheet (NOT TESTED) */ +static const uint8_t u8g_dev_ssd1306_128x64_univision_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x03f, /* multiplex ratio */ + 0x0d3, 0x000, /* display offset */ + 0x040, /* start line */ + 0x08d, 0x010, /* charge pump setting (p62): 0x014 enable, 0x010 disable */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x012, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x09f, /* set contrast control */ + 0x0d9, 0x022, /* pre-charge period */ + 0x0db, 0x040, /* vcomh deselect level */ + 0x022, 0x000, /* page addressing mode WRONG: 3 byte cmd! */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +/* select one init sequence here */ +//#define u8g_dev_ssd1306_128x64_init_seq u8g_dev_ssd1306_128x64_univision_init_seq +//#define u8g_dev_ssd1306_128x64_init_seq u8g_dev_ssd1306_128x64_adafruit1_init_seq +//#define u8g_dev_ssd1306_128x64_init_seq u8g_dev_ssd1306_128x64_adafruit2_init_seq +#define u8g_dev_ssd1306_128x64_init_seq u8g_dev_ssd1306_128x64_adafruit3_init_seq + + +static const uint8_t u8g_dev_ssd1306_128x64_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 4 */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_ssd1306_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1306_128x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1306_128x64_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (SSD1306) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_ssd1306_128x64_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1306_128x64_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1306_128x64_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1306_128x64_fn, U8G_COM_HW_SPI); +U8G_PB_DEV(u8g_dev_ssd1306_128x64_i2c, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1306_128x64_fn, U8G_COM_SSD_I2C); diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1309_128x64.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1309_128x64.c new file mode 100644 index 0000000000000000000000000000000000000000..d16013fb7ca9c892b65961a35159ee00a7c51abd --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1309_128x64.c @@ -0,0 +1,144 @@ +/* + + u8g_dev_ssd1309_128x64.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + + +/* ssd1309 ini sequence*/ +static const uint8_t u8g_dev_ssd1309_128x64_init_seq[] PROGMEM={ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0xfd,0x12, /*Command Lock */ + 0xae, /*Set Display Off */ + 0xd5,0xa0, /*set Display Clock Divide Ratio/Oscillator Frequency */ + 0xa8,0x3f, /*Set Multiplex Ratio */ + 0x3d,0x00, /*Set Display Offset*/ + 0x40, /*Set Display Start Line*/ + 0xa1, /*Set Segment Re-Map*/ + 0xc8, /*Set COM Output Scan Direction*/ + 0xda,0x12, /*Set COM Pins Hardware Configuration*/ + 0x81,0xdf, /*Set Current Control */ + 0xd9,0x82, /*Set Pre-Charge Period */ + 0xdb,0x34, /*Set VCOMH Deselect Level */ + 0xa4, /*Set Entire Display On/Off */ + 0xa6, /*Set Normal/Inverse Display*/ + U8G_ESC_VCC(1), /*Power up VCC & Stabilized */ + U8G_ESC_DLY(50), + 0xaf, /*Set Display On */ + U8G_ESC_DLY(50), + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +/* select one init sequence here */ + #define u8g_dev_ssd1309_128x64_init_seq u8g_dev_ssd1309_128x64_init_seq + + + static const uint8_t u8g_dev_ssd1309_128x64_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 4 */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_ssd1309_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1309_128x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1309_128x64_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (SSD1306) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_ssd1309_128x64_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1309_128x64_fn, U8G_COM_HW_SPI); +U8G_PB_DEV(u8g_dev_ssd1309_128x64_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1309_128x64_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1309_128x64_i2c, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1309_128x64_fn, U8G_COM_SSD_I2C); + + \ No newline at end of file diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1322_nhd31oled_bw.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1322_nhd31oled_bw.c new file mode 100644 index 0000000000000000000000000000000000000000..24b94ffc7e75c6f7d5143c425d655aee096cbc0b --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1322_nhd31oled_bw.c @@ -0,0 +1,334 @@ +/* + + u8g_dev_ssd1322_nhd31oled_bw.c + + 1-Bit (BW) Driver for SSD1322 Controller (OLED Display) + Tested with NHD-3.12-25664 + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + SSD130x Monochrom OLED Controller + SSD131x Character OLED Controller + SSD132x Graylevel OLED Controller + SSD1331 Color OLED Controller + +*/ + +#include "u8g.h" + +/* width must be multiple of 8, largest value is 248 unless u8g 16 bit mode is enabled */ +#if defined(U8G_16BIT) +#define WIDTH 256 +#else +#define WIDTH 248 +#endif +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +/* + http://www.newhavendisplay.com/app_notes/OLED_25664.txt + http://www.newhavendisplay.com/forum/viewtopic.php?f=15&t=3758 +*/ + +static const uint8_t u8g_dev_ssd1322_1bit_nhd_312_init_seq[] PROGMEM = { + U8G_ESC_DLY(10), /* delay 10 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0fd, /* lock command */ + U8G_ESC_ADR(1), /* data mode */ + 0x012, /* unlock */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0ae, /* display off, sleep mode */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b3, + U8G_ESC_ADR(1), /* data mode */ + 0x091, /* set display clock divide ratio/oscillator frequency (set clock as 80 frames/sec) */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0ca, /* multiplex ratio */ + U8G_ESC_ADR(1), /* data mode */ + 0x03f, /* 1/64 Duty (0x0F~0x3F) */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a2, + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* display offset, shift mapping ram counter */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a1, + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* display start line */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a0, /* Set Re-Map / Dual COM Line Mode */ + U8G_ESC_ADR(1), /* data mode */ + 0x014, /* was 0x014 */ + 0x011, /* was 0x011 */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0ab, + U8G_ESC_ADR(1), /* data mode */ + 0x001, /* Enable Internal VDD Regulator */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b4, /* Display Enhancement A */ + U8G_ESC_ADR(1), /* data mode */ + 0x0a0, + 0x005|0x0fd, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0c1, /* contrast */ + U8G_ESC_ADR(1), /* data mode */ + 0x09f, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0c7, /* Set Scale Factor of Segment Output Current Control */ + U8G_ESC_ADR(1), /* data mode */ + 0x00f, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b9, /* linear gray scale */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b1, /* Phase 1 (Reset) & Phase 2 (Pre-Charge) Period Adjustment */ + U8G_ESC_ADR(1), /* data mode */ + 0x0e2, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0d1, /* Display Enhancement B */ + U8G_ESC_ADR(1), /* data mode */ + 0x082|0x020, + 0x020, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0bb, /* precharge voltage */ + U8G_ESC_ADR(1), /* data mode */ + 0x01f, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b6, /* precharge period */ + U8G_ESC_ADR(1), /* data mode */ + 0x008, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0be, /* vcomh */ + U8G_ESC_ADR(1), /* data mode */ + 0x007, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a6, /* normal display */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a9, /* exit partial display */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0af, /* display on */ + + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd1322_1bit_nhd_312_prepare_page_seq[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x015, /* column address... */ + U8G_ESC_ADR(1), /* data mode */ + 0x01c, /* start at column 0 */ + 0x05b, /* end column */ + U8G_ESC_ADR(0), /* instruction mode */ + 0x075, /* row address... */ + U8G_ESC_ADR(1), /* data mode */ + U8G_ESC_END /* end of sequence */ +}; + +static void u8g_dev_ssd1322_1bit_prepare_row(u8g_t *u8g, u8g_dev_t *dev, uint8_t delta_row) +{ + uint8_t row = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + row *= ((u8g_pb_t *)(dev->dev_mem))->p.page_height; + row += delta_row; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1322_1bit_nhd_312_prepare_page_seq); + + u8g_WriteByte(u8g, dev, row); /* start at the selected row */ + u8g_WriteByte(u8g, dev, row+1); /* end within the selected row */ + + u8g_SetAddress(u8g, dev, 0); /* instruction mode mode */ + u8g_WriteByte(u8g, dev, 0x05c); /* write to ram */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +static const uint8_t u8g_dev_ssd13xx_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +uint8_t u8g_dev_ssd1322_nhd31oled_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1322_1bit_nhd_312_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 3; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1322_1bit_prepare_row(u8g, dev, i); /* this will also enable chip select */ +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x0ff); + u8g_WriteByte(u8g, dev, 0x0ff); +#endif + u8g_WriteSequenceBWTo16GrDevice(u8g, dev, cnt, p); +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x0ff); + u8g_WriteByte(u8g, dev, 0x0ff); +#endif + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb8h1_base_fn(u8g, dev, msg, arg); +} + + +uint8_t u8g_dev_ssd1322_nhd31oled_2x_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1322_1bit_nhd_312_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 3; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1322_1bit_prepare_row(u8g, dev, i); /* this will also enable chip select */ +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x0ff); + u8g_WriteByte(u8g, dev, 0x0ff); +#endif + u8g_WriteSequenceBWTo16GrDevice(u8g, dev, cnt, p); +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x0ff); + u8g_WriteByte(u8g, dev, 0x0ff); +#endif + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb16h1_base_fn(u8g, dev, msg, arg); +} + + +U8G_PB_DEV(u8g_dev_ssd1322_nhd31oled_bw_sw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1322_nhd31oled_bw_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1322_nhd31oled_bw_hw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1322_nhd31oled_bw_fn, U8G_COM_HW_SPI); + +#define DWIDTH (WIDTH*2) +uint8_t u8g_dev_ssd1322_nhd31oled_2x_bw_buf[DWIDTH] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_ssd1322_nhd31oled_2x_bw_pb = { {16, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_ssd1322_nhd31oled_2x_bw_buf}; +u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_bw_sw_spi = { u8g_dev_ssd1322_nhd31oled_2x_bw_fn, &u8g_dev_ssd1322_nhd31oled_2x_bw_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_bw_hw_spi = { u8g_dev_ssd1322_nhd31oled_2x_bw_fn, &u8g_dev_ssd1322_nhd31oled_2x_bw_pb, U8G_COM_HW_SPI }; + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1322_nhd31oled_gr.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1322_nhd31oled_gr.c new file mode 100644 index 0000000000000000000000000000000000000000..5b509641c6fcc91810965d6bf309bd1d39b469e4 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1322_nhd31oled_gr.c @@ -0,0 +1,333 @@ +/* + + u8g_dev_ssd1322_nhd31oled_gr.c + + 2-Bit (4L) Driver for SSD1322 Controller (OLED Display) + Tested with NHD-3.12-25664 + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + SSD130x Monochrom OLED Controller + SSD131x Character OLED Controller + SSD132x Graylevel OLED Controller + SSD1331 Color OLED Controller + +*/ + +#include "u8g.h" + +/* width must be multiple of 8, largest value is 248 unless u8g 16 bit mode is enabled */ +#if defined(U8G_16BIT) +#define WIDTH 256 +#else +#define WIDTH 248 +#endif +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +/* + http://www.newhavendisplay.com/app_notes/OLED_25664.txt + http://www.newhavendisplay.com/forum/viewtopic.php?f=15&t=3758 +*/ + +static const uint8_t u8g_dev_ssd1322_2bit_nhd_312_init_seq[] PROGMEM = { + U8G_ESC_DLY(10), /* delay 10 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0fd, /* lock command */ + U8G_ESC_ADR(1), /* data mode */ + 0x012, /* unlock */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0ae, /* display off, sleep mode */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b3, + U8G_ESC_ADR(1), /* data mode */ + 0x091, /* set display clock divide ratio/oscillator frequency (set clock as 80 frames/sec) */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0ca, /* multiplex ratio */ + U8G_ESC_ADR(1), /* data mode */ + 0x03f, /* 1/64 Duty (0x0F~0x3F) */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a2, + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* display offset, shift mapping ram counter */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a1, + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* display start line */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a0, /* Set Re-Map / Dual COM Line Mode */ + U8G_ESC_ADR(1), /* data mode */ + 0x014, /* was 0x014 */ + 0x011, /* was 0x011 */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0ab, + U8G_ESC_ADR(1), /* data mode */ + 0x001, /* Enable Internal VDD Regulator */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b4, /* Display Enhancement A */ + U8G_ESC_ADR(1), /* data mode */ + 0x0a0, + 0x005|0x0fd, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0c1, /* contrast */ + U8G_ESC_ADR(1), /* data mode */ + 0x09f, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0c7, /* Set Scale Factor of Segment Output Current Control */ + U8G_ESC_ADR(1), /* data mode */ + 0x00f, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b9, /* linear gray scale */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b1, /* Phase 1 (Reset) & Phase 2 (Pre-Charge) Period Adjustment */ + U8G_ESC_ADR(1), /* data mode */ + 0x0e2, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0d1, /* Display Enhancement B */ + U8G_ESC_ADR(1), /* data mode */ + 0x082|0x020, + 0x020, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0bb, /* precharge voltage */ + U8G_ESC_ADR(1), /* data mode */ + 0x01f, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b6, /* precharge period */ + U8G_ESC_ADR(1), /* data mode */ + 0x008, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0be, /* vcomh */ + U8G_ESC_ADR(1), /* data mode */ + 0x007, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a6, /* normal display */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a9, /* exit partial display */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0af, /* display on */ + + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd1322_2bit_nhd_312_prepare_page_seq[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x015, /* column address... */ + U8G_ESC_ADR(1), /* data mode */ + 0x01c, /* start at column 0 */ + 0x05b, /* end column */ + U8G_ESC_ADR(0), /* instruction mode */ + 0x075, /* row address... */ + U8G_ESC_ADR(1), /* data mode */ + U8G_ESC_END /* end of sequence */ +}; + +static void u8g_dev_ssd1322_2bit_prepare_row(u8g_t *u8g, u8g_dev_t *dev, uint8_t delta_row) +{ + uint8_t row = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + row *= ((u8g_pb_t *)(dev->dev_mem))->p.page_height; + row += delta_row; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1322_2bit_nhd_312_prepare_page_seq); + + u8g_WriteByte(u8g, dev, row); /* start at the selected row */ + u8g_WriteByte(u8g, dev, row+1); /* end within the selected row */ + + u8g_SetAddress(u8g, dev, 0); /* instruction mode mode */ + u8g_WriteByte(u8g, dev, 0x05c); /* write to ram */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +static const uint8_t u8g_dev_ssd13xx_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_ssd1322_nhd31oled_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1322_2bit_nhd_312_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 2; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1322_2bit_prepare_row(u8g, dev, i); /* this will also enable chip select */ +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x00); + u8g_WriteByte(u8g, dev, 0x00); +#endif + u8g_WriteSequence4LTo16GrDevice(u8g, dev, cnt, p); +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x00); + u8g_WriteByte(u8g, dev, 0x00); +#endif + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb8h2_base_fn(u8g, dev, msg, arg); +} + + +uint8_t u8g_dev_ssd1322_nhd31oled_2x_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1322_2bit_nhd_312_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 3; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1322_2bit_prepare_row(u8g, dev, i); /* this will also enable chip select */ +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x00); + u8g_WriteByte(u8g, dev, 0x00); +#endif + u8g_WriteSequence4LTo16GrDevice(u8g, dev, cnt, p); +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x00); + u8g_WriteByte(u8g, dev, 0x00); +#endif + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb16h2_base_fn(u8g, dev, msg, arg); +} + + +U8G_PB_DEV(u8g_dev_ssd1322_nhd31oled_gr_sw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1322_nhd31oled_gr_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1322_nhd31oled_gr_hw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1322_nhd31oled_gr_fn, U8G_COM_HW_SPI); + +#define DWIDTH (WIDTH*2) +uint8_t u8g_dev_ssd1322_nhd31oled_2x_gr_buf[DWIDTH] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_ssd1322_nhd31oled_2x_gr_pb = { {16, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_ssd1322_nhd31oled_2x_gr_buf}; +u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_gr_sw_spi = { u8g_dev_ssd1322_nhd31oled_2x_gr_fn, &u8g_dev_ssd1322_nhd31oled_2x_gr_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_gr_hw_spi = { u8g_dev_ssd1322_nhd31oled_2x_gr_fn, &u8g_dev_ssd1322_nhd31oled_2x_gr_pb, U8G_COM_HW_SPI }; + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_bw.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_bw.c new file mode 100644 index 0000000000000000000000000000000000000000..95853bdf259f942b7fff314679374c99d61946a2 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_bw.c @@ -0,0 +1,263 @@ +/* + + u8g_dev_ssd1325_nhd27oled_bw.c + + 1-Bit (BW) Driver for SSD1325 Controller (OLED Display) + Tested with NHD-2.7-12864UCY3 + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + SSD130x Monochrom OLED Controller + SSD131x Character OLED Controller + SSD132x Graylevel OLED Controller + SSD1331 Color OLED Controller + +*/ + +#ifdef OBSOLETE_CODE + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +/* http://www.newhavendisplay.com/app_notes/OLED_2_7_12864.txt */ +static const uint8_t u8g_dev_ssd1325_1bit_nhd_27_12864ucy3_init_seq[] PROGMEM = { + U8G_ESC_DLY(10), /* delay 10 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off, sleep mode */ + 0x0b3, 0x091, /* set display clock divide ratio/oscillator frequency (set clock as 135 frames/sec) */ + 0x0a8, 0x03f, /* multiplex ratio: 0x03f * 1/64 duty */ + 0x0a2, 0x04c, /* display offset, shift mapping ram counter */ + 0x0a1, 0x000, /* display start line */ + 0x0ad, 0x002, /* master configuration: disable embedded DC-DC, enable internal VCOMH */ + 0x0a0, 0x056, /* remap configuration, vertical address increment, enable nibble remap (upper nibble is left) */ + 0x086, /* full current range (0x084, 0x085, 0x086) */ + 0x0b8, /* set gray scale table */ + 0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x065, 0x076, + 0x081, 0x070, /* contrast, brightness, 0..128, Newhaven: 0x040 */ + 0x0b2, 0x051, /* frame frequency (row period) */ + 0x0b1, 0x055, /* phase length */ + 0x0bc, 0x010, /* pre-charge voltage level */ + 0x0b4, 0x002, /* set pre-charge compensation level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0b0, 0x028, /* enable pre-charge compensation (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0be, 0x01c, /* VCOMH voltage */ + 0x0bf, 0x002|0x00d, /* VSL voltage level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0a5, /* all pixel on */ + 0x0af, /* display on */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display mode */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd1325_1bit_nhd_27_12864ucy3_prepare_page_seq[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x015, /* column address... */ + 0x000, /* start at column 0 */ + 0x03f, /* end at column 63 (which is y == 127), because there are two pixel in one column */ + 0x075, /* row address... */ + U8G_ESC_END /* end of sequence */ +}; + + +static void u8g_dev_ssd1325_1bit_prepare_page(u8g_t *u8g, u8g_dev_t *dev) +{ + uint8_t page = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_1bit_nhd_27_12864ucy3_prepare_page_seq); + + page <<= 3; + u8g_WriteByte(u8g, dev, page); /* start at the selected page */ + page += 7; + u8g_WriteByte(u8g, dev, page); /* end within the selected page */ + + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +static void u8g_dev_ssd1325_1bit_2x_prepare_page(u8g_t *u8g, u8g_dev_t *dev, uint8_t is_odd) +{ + uint8_t page = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_1bit_nhd_27_12864ucy3_prepare_page_seq); + + page <<= 1; + page += is_odd; + + page <<= 3; + u8g_WriteByte(u8g, dev, page); /* start at the selected page */ + page += 7; + u8g_WriteByte(u8g, dev, page); /* end within the selected page */ + + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +/* assumes row autoincrement and activated nibble remap */ +#ifdef OLD +static void _OLD_u8g_dev_ssd1325_1bit_write_16_pixel(u8g_t *u8g, u8g_dev_t *dev, uint8_t left, uint8_t right) +{ + uint8_t d, cnt; + cnt = 8; + do + { + d = 0; + if ( left & 1 ) + d |= 0x0f0; + if ( right & 1 ) + d |= 0x00f; + u8g_WriteByte(u8g, dev, d); + left >>= 1; + right >>= 1; + cnt--; + }while ( cnt > 0 ); +} +#endif + +static void u8g_dev_ssd1325_1bit_write_16_pixel(u8g_t *u8g, u8g_dev_t *dev, uint8_t left, uint8_t right) +{ + uint8_t d, cnt; + static uint8_t buf[8]; + cnt = 8; + do + { + d = 0; + if ( left & 128 ) + d |= 0x0f0; + if ( right & 128 ) + d |= 0x00f; + cnt--; + buf[cnt] = d; + left <<= 1; + right <<= 1; + }while ( cnt > 0 ); + u8g_WriteSequence(u8g, dev, 8, buf); +} + +static void u8g_dev_ssd1325_1bit_write_buffer(u8g_t *u8g, u8g_dev_t *dev, uint8_t is_odd) +{ + uint8_t cnt, left, right; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + ptr = pb->buf; + cnt = pb->width; + if ( is_odd ) + ptr += cnt; + cnt >>= 1; + do + { + left = *ptr++; + right = *ptr++; + u8g_dev_ssd1325_1bit_write_16_pixel(u8g, dev, left, right); + cnt--; + } while( cnt > 0 ); +} + +uint8_t u8g_dev_ssd1325_nhd27oled_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_1bit_nhd_27_12864ucy3_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_dev_ssd1325_1bit_prepare_page(u8g, dev); + u8g_dev_ssd1325_1bit_write_buffer(u8g, dev, 0); + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_ssd1325_nhd27oled_2x_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_1bit_nhd_27_12864ucy3_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_dev_ssd1325_1bit_2x_prepare_page(u8g, dev, 0); + u8g_dev_ssd1325_1bit_write_buffer(u8g, dev, 0); + u8g_dev_ssd1325_1bit_2x_prepare_page(u8g, dev, 1); + u8g_dev_ssd1325_1bit_write_buffer(u8g, dev, 1); + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + } + return u8g_dev_pb16v1_base_fn(u8g, dev, msg, arg); +} + +/* disabled, see bw_new.c */ +/* +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_bw_sw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1325_nhd27oled_bw_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_bw_hw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1325_nhd27oled_bw_fn, U8G_COM_HW_SPI); +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_bw_parallel , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1325_nhd27oled_bw_fn, U8G_COM_FAST_PARALLEL); +*/ + +/* +uint8_t u8g_dev_ssd1325_nhd27oled_2x_bw_buf[WIDTH*2] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_ssd1325_nhd27oled_2x_bw_pb = { {16, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_ssd1325_nhd27oled_2x_bw_buf}; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_sw_spi = { u8g_dev_ssd1325_nhd27oled_2x_bw_fn, &u8g_dev_ssd1325_nhd27oled_2x_bw_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_hw_spi = { u8g_dev_ssd1325_nhd27oled_2x_bw_fn, &u8g_dev_ssd1325_nhd27oled_2x_bw_pb, U8G_COM_HW_SPI }; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_parallel = { u8g_dev_ssd1325_nhd27oled_2x_bw_fn, &u8g_dev_ssd1325_nhd27oled_2x_bw_pb, U8G_COM_FAST_PARALLEL }; +*/ + +#endif + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_bw_new.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_bw_new.c new file mode 100644 index 0000000000000000000000000000000000000000..c9f4a51ad80b49848b26e4911cba9f218501f301 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_bw_new.c @@ -0,0 +1,232 @@ +/* + + u8g_dev_ssd1325_nhd27oled_bw.c + + 1-Bit (BW) Driver for SSD1325 Controller (OLED Display) + Horizontal architecture, completly rewritten + Tested with NHD-2.7-12864UCY3 + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + SSD130x Monochrom OLED Controller + SSD131x Character OLED Controller + SSD132x Graylevel OLED Controller + SSD1331 Color OLED Controller + +*/ + +#include "u8g.h" + +/* width must be multiple of 8, largest value is 248 unless u8g 16 bit mode is enabled */ +#define WIDTH 128 +#define HEIGHT 64 + +/* http://www.newhavendisplay.com/app_notes/OLED_2_7_12864.txt */ +static const uint8_t u8g_dev_ssd1325_nhd_27_12864_init_seq[] PROGMEM = { + U8G_ESC_DLY(10), /* delay 10 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off, sleep mode */ + 0x0b3, 0x091, /* set display clock divide ratio/oscillator frequency (set clock as 135 frames/sec) */ + 0x0a8, 0x03f, /* multiplex ratio: 0x03f * 1/64 duty */ + 0x0a2, 0x04c, /* display offset, shift mapping ram counter */ + 0x0a1, 0x000, /* display start line */ + 0x0ad, 0x002, /* master configuration: disable embedded DC-DC, enable internal VCOMH */ + 0x0a0, 0x052, /* remap configuration, horizontal address increment (bit 2 = 0), enable nibble remap (upper nibble is left, bit 1 = 1) */ + 0x086, /* full current range (0x084, 0x085, 0x086) */ + 0x0b8, /* set gray scale table */ + 0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x065, 0x076, + + 0x081, 0x070, /* contrast, brightness, 0..128, Newhaven: 0x040 */ + 0x0b2, 0x051, /* frame frequency (row period) */ + 0x0b1, 0x055, /* phase length */ + 0x0bc, 0x010, /* pre-charge voltage level */ + 0x0b4, 0x002, /* set pre-charge compensation level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0b0, 0x028, /* enable pre-charge compensation (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0be, 0x01c, /* VCOMH voltage */ + 0x0bf, 0x002|0x00d, /* VSL voltage level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0a4, /* normal display mode */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd1325_prepare_row_seq[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x015, /* column address... */ + 0x000, /* start at column 0 */ + 0x03f, /* end at column 63 (which is y == 127), because there are two pixel in one column */ + 0x075, /* row address... */ + U8G_ESC_END /* end of sequence */ +}; + +static void u8g_dev_ssd1325_prepare_row(u8g_t *u8g, u8g_dev_t *dev, uint8_t delta_row) +{ + uint8_t row = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + row *= ((u8g_pb_t *)(dev->dev_mem))->p.page_height; + row += delta_row; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_prepare_row_seq); + + u8g_WriteByte(u8g, dev, row); /* start at the selected row */ + u8g_WriteByte(u8g, dev, row+1); /* end within the selected row */ + + //u8g_SetAddress(u8g, dev, 0); /* instruction mode mode */ + //u8g_WriteByte(u8g, dev, 0x05c); /* write to ram */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +static const uint8_t u8g_dev_ssd13xx_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +static uint8_t u8g_dev_ssd1325_nhd27oled_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + //case U8G_DEV_MSG_IS_BBX_INTERSECTION: + // return u8g_pb_IsIntersection((u8g_pb_t *)(dev->dev_mem), (u8g_dev_arg_bbx_t *)arg); + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_nhd_27_12864_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 3; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1325_prepare_row(u8g, dev, i); /* this will also enable chip select */ + u8g_WriteSequenceBWTo16GrDevice(u8g, dev, cnt, p); + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb8h1_base_fn(u8g, dev, msg, arg); +} + +static uint8_t u8g_dev_ssd1325_nhd27oled_2x_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_nhd_27_12864_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 3; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1325_prepare_row(u8g, dev, i); /* this will also enable chip select */ + u8g_WriteSequenceBWTo16GrDevice(u8g, dev, cnt, p); + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb16h1_base_fn(u8g, dev, msg, arg); +} + + + +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_bw_sw_spi , WIDTH, HEIGHT, 8, u8g_dev_ssd1325_nhd27oled_bw_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_bw_hw_spi , WIDTH, HEIGHT, 8, u8g_dev_ssd1325_nhd27oled_bw_fn, U8G_COM_HW_SPI); +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_bw_parallel , WIDTH, HEIGHT, 8, u8g_dev_ssd1325_nhd27oled_bw_fn, U8G_COM_FAST_PARALLEL); + +uint8_t u8g_dev_ssd1325_nhd27oled_2x_bw_buf[WIDTH*2] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_ssd1325_nhd27oled_2x_bw_pb = { {16, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_ssd1325_nhd27oled_2x_bw_buf}; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_sw_spi = { u8g_dev_ssd1325_nhd27oled_2x_bw_fn, &u8g_dev_ssd1325_nhd27oled_2x_bw_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_hw_spi = { u8g_dev_ssd1325_nhd27oled_2x_bw_fn, &u8g_dev_ssd1325_nhd27oled_2x_bw_pb, U8G_COM_HW_SPI }; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_parallel = { u8g_dev_ssd1325_nhd27oled_2x_bw_fn, &u8g_dev_ssd1325_nhd27oled_2x_bw_pb, U8G_COM_FAST_PARALLEL }; + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_gr.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_gr.c new file mode 100644 index 0000000000000000000000000000000000000000..d00d18ec4f32999494783a2fcfd7edba548800cb --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_gr.c @@ -0,0 +1,255 @@ +/* + + u8g_dev_ssd1325_nhd27oled_gr.c + + 2-Bit (gray level) Driver for SSD1325 Controller (OLED Display) + Tested with NHD-2.7-12864UCY3 + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + SSD130x Monochrom OLED Controller + SSD131x Character OLED Controller + SSD132x Graylevel OLED Controller + SSD1331 Color OLED Controller + +*/ + +#ifdef OBSOLETE_CODE + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 + +/* http://www.newhavendisplay.com/app_notes/OLED_2_7_12864.txt */ +static const uint8_t u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_init_seq[] PROGMEM = { + U8G_ESC_DLY(10), /* delay 10 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off, sleep mode */ + 0x0b3, 0x091, /* set display clock divide ratio/oscillator frequency (set clock as 135 frames/sec) */ + 0x0a8, 0x03f, /* multiplex ratio: 0x03f * 1/64 duty */ + 0x0a2, 0x04c, /* display offset, shift mapping ram counter */ + 0x0a1, 0x000, /* display start line */ + 0x0ad, 0x002, /* master configuration: disable embedded DC-DC, enable internal VCOMH */ + 0x0a0, 0x056, /* remap configuration, vertical address increment, enable nibble remap (upper nibble is left) */ + 0x086, /* full current range (0x084, 0x085, 0x086) */ + 0x0b8, /* set gray scale table */ + //0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x065, 0x076, + 0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x077, 0x077, // 4L mode uses 0, 2, 4, 7 + 0x081, 0x070, /* contrast, brightness, 0..128, Newhaven: 0x040 */ + 0x0b2, 0x051, /* frame frequency (row period) */ + 0x0b1, 0x055, /* phase length */ + 0x0bc, 0x010, /* pre-charge voltage level */ + 0x0b4, 0x002, /* set pre-charge compensation level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0b0, 0x028, /* enable pre-charge compensation (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0be, 0x01c, /* VCOMH voltage */ + 0x0bf, 0x002|0x00d, /* VSL voltage level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0a5, /* all pixel on */ + 0x0af, /* display on */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display mode */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_prepare_page_seq[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x015, /* column address... */ + 0x000, /* start at column 0 */ + 0x03f, /* end at column 63 (which is y == 127), because there are two pixel in one column */ + 0x075, /* row address... */ + U8G_ESC_END /* end of sequence */ +}; + + +static void u8g_dev_ssd1325_2bit_prepare_page(u8g_t *u8g, u8g_dev_t *dev) +{ + uint8_t page = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_prepare_page_seq); + + page <<= 2; + u8g_WriteByte(u8g, dev, page); /* start at the selected page */ + page += 3; + u8g_WriteByte(u8g, dev, page); /* end within the selected page */ + + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +static void u8g_dev_ssd1325_2bit_2x_prepare_page(u8g_t *u8g, u8g_dev_t *dev, uint8_t is_odd) +{ + uint8_t page = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_prepare_page_seq); + + page <<= 1; + page += is_odd; + + + page <<= 2; + u8g_WriteByte(u8g, dev, page); /* start at the selected page */ + page += 3; + u8g_WriteByte(u8g, dev, page); /* end within the selected page */ + + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +/* assumes row autoincrement and activated nibble remap */ +static void u8g_dev_ssd1325_2bit_write_4_pixel(u8g_t *u8g, u8g_dev_t *dev, uint8_t left, uint8_t right) +{ + uint8_t d, tmp, cnt; + cnt = 4; + do + { + d = left; + d &= 3; + d <<= 4; + tmp = right; + tmp &= 3; + d |= tmp; + d <<= 2; + u8g_WriteByte(u8g, dev, d); + left >>= 2; + right >>= 2; + cnt--; + }while ( cnt > 0 ); +} + +static void u8g_dev_ssd1325_2bit_write_buffer(u8g_t *u8g, u8g_dev_t *dev) +{ + uint8_t cnt, left, right; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + cnt = pb->width; + cnt >>= 1; + ptr = pb->buf; + do + { + left = *ptr++; + right = *ptr++; + u8g_dev_ssd1325_2bit_write_4_pixel(u8g, dev, left, right); + cnt--; + } while( cnt > 0 ); +} + +static void u8g_dev_ssd1325_2bit_2x_write_buffer(u8g_t *u8g, u8g_dev_t *dev, uint8_t is_odd) +{ + uint8_t cnt, left, right; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + ptr = pb->buf; + cnt = pb->width; + if ( is_odd ) + ptr += cnt; + cnt >>= 1; + do + { + left = *ptr++; + right = *ptr++; + u8g_dev_ssd1325_2bit_write_4_pixel(u8g, dev, left, right); + cnt--; + } while( cnt > 0 ); +} + +static uint8_t u8g_dev_ssd1325_nhd27oled_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_dev_ssd1325_2bit_prepare_page(u8g, dev); + u8g_dev_ssd1325_2bit_write_buffer(u8g, dev); + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v2_base_fn(u8g, dev, msg, arg); +} + +static uint8_t u8g_dev_ssd1325_nhd27oled_2x_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_dev_ssd1325_2bit_2x_prepare_page(u8g, dev, 0); + u8g_dev_ssd1325_2bit_2x_write_buffer(u8g, dev, 0); + u8g_dev_ssd1325_2bit_2x_prepare_page(u8g, dev, 1); + u8g_dev_ssd1325_2bit_2x_write_buffer(u8g, dev, 1); + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb16v2_base_fn(u8g, dev, msg, arg); +} + +//U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_gr_sw_spi , WIDTH, HEIGHT, 4, u8g_dev_ssd1325_nhd27oled_gr_fn, U8G_COM_SW_SPI); +//U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_gr_hw_spi , WIDTH, HEIGHT, 4, u8g_dev_ssd1325_nhd27oled_gr_fn, U8G_COM_HW_SPI); + +//uint8_t u8g_dev_ssd1325_nhd27oled_2x_buf[WIDTH*2] U8G_NOCOMMON ; +//u8g_pb_t u8g_dev_ssd1325_nhd27oled_2x_pb = { {8, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_ssd1325_nhd27oled_2x_buf}; +//u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_gr_sw_spi = { u8g_dev_ssd1325_nhd27oled_2x_gr_fn, &u8g_dev_ssd1325_nhd27oled_2x_pb, U8G_COM_SW_SPI }; +//u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_gr_hw_spi = { u8g_dev_ssd1325_nhd27oled_2x_gr_fn, &u8g_dev_ssd1325_nhd27oled_2x_pb, U8G_COM_HW_SPI }; + + +#endif /* OBSOLETE_CODE */ diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_gr_new.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_gr_new.c new file mode 100644 index 0000000000000000000000000000000000000000..2e61d9a57c99c04984571db21005db3524d1a024 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_gr_new.c @@ -0,0 +1,227 @@ +/* + + u8g_dev_ssd1325_nhd27oled_gr.c + + 2-Bit (gray level) Driver for SSD1325 Controller (OLED Display) + Rewritten with new architecture + Tested with NHD-2.7-12864UCY3 + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + SSD130x Monochrom OLED Controller + SSD131x Character OLED Controller + SSD132x Graylevel OLED Controller + SSD1331 Color OLED Controller + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 + +/* http://www.newhavendisplay.com/app_notes/OLED_2_7_12864.txt */ +static const uint8_t u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_init_seq[] PROGMEM = { + U8G_ESC_DLY(10), /* delay 10 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off, sleep mode */ + 0x0b3, 0x091, /* set display clock divide ratio/oscillator frequency (set clock as 135 frames/sec) */ + 0x0a8, 0x03f, /* multiplex ratio: 0x03f * 1/64 duty */ + 0x0a2, 0x04c, /* display offset, shift mapping ram counter */ + 0x0a1, 0x000, /* display start line */ + 0x0ad, 0x002, /* master configuration: disable embedded DC-DC, enable internal VCOMH */ + 0x0a0, 0x052, /* remap configuration, horizontal address increment (bit 2 = 0), enable nibble remap (upper nibble is left, bit 1 = 1), old values: 0x0a0 0x0a6 */ + 0x086, /* full current range (0x084, 0x085, 0x086) */ + 0x0b8, /* set gray scale table */ + //0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x065, 0x076, + 0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x077, 0x077, // 4L mode uses 0, 2, 4, 7 + 0x081, 0x070, /* contrast, brightness, 0..128, Newhaven: 0x040 */ + 0x0b2, 0x051, /* frame frequency (row period) */ + 0x0b1, 0x055, /* phase length */ + 0x0bc, 0x010, /* pre-charge voltage level */ + 0x0b4, 0x002, /* set pre-charge compensation level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0b0, 0x028, /* enable pre-charge compensation (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0be, 0x01c, /* VCOMH voltage */ + 0x0bf, 0x002|0x00d, /* VSL voltage level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0a4, /* normal display mode */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_prepare_page_seq[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x015, /* column address... */ + 0x000, /* start at column 0 */ + 0x03f, /* end at column 63 (which is y == 127), because there are two pixel in one column */ + 0x075, /* row address... */ + U8G_ESC_END /* end of sequence */ +}; + +static void u8g_dev_ssd1325_gr_prepare_row(u8g_t *u8g, u8g_dev_t *dev, uint8_t delta_row) +{ + uint8_t row = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + row *= ((u8g_pb_t *)(dev->dev_mem))->p.page_height; + row += delta_row; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_prepare_page_seq); + + u8g_WriteByte(u8g, dev, row); /* start at the selected row */ + u8g_WriteByte(u8g, dev, row+1); /* end within the selected row */ + + //u8g_SetAddress(u8g, dev, 0); /* instruction mode mode */ + //u8g_WriteByte(u8g, dev, 0x05c); /* write to ram */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +static const uint8_t u8g_dev_ssd13xx_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + + +static uint8_t u8g_dev_ssd1325_nhd27oled_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 2; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1325_gr_prepare_row(u8g, dev, i); /* this will also enable chip select */ + u8g_WriteSequence4LTo16GrDevice(u8g, dev, cnt, p); + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb8h2_base_fn(u8g, dev, msg, arg); +} + + + +static uint8_t u8g_dev_ssd1325_nhd27oled_2x_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 2; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1325_gr_prepare_row(u8g, dev, i); /* this will also enable chip select */ + u8g_WriteSequence4LTo16GrDevice(u8g, dev, cnt, p); + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb16h2_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_gr_sw_spi , WIDTH, HEIGHT, 4, u8g_dev_ssd1325_nhd27oled_gr_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_gr_hw_spi , WIDTH, HEIGHT, 4, u8g_dev_ssd1325_nhd27oled_gr_fn, U8G_COM_HW_SPI); + +uint8_t u8g_dev_ssd1325_nhd27oled_2x_buf[WIDTH*2] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_ssd1325_nhd27oled_2x_pb = { {8, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_ssd1325_nhd27oled_2x_buf}; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_gr_sw_spi = { u8g_dev_ssd1325_nhd27oled_2x_gr_fn, &u8g_dev_ssd1325_nhd27oled_2x_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_gr_hw_spi = { u8g_dev_ssd1325_nhd27oled_2x_gr_fn, &u8g_dev_ssd1325_nhd27oled_2x_pb, U8G_COM_HW_SPI }; diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1327_96x96_gr.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1327_96x96_gr.c new file mode 100644 index 0000000000000000000000000000000000000000..5e3b4467497d3d829a656c06b75b888d2190ee59 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_ssd1327_96x96_gr.c @@ -0,0 +1,299 @@ +/* + + u8g_dev_ssd1327_96x96_gr.c + + 2-Bit (graylevel) Driver for SSD1327 Controller (OLED Display) + Tested with Seedstudio 96x96 Oled (LY120) + http://www.seeedstudio.com/wiki/index.php?title=Twig_-_OLED_96x96 + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + SSD130x Monochrom OLED Controller + SSD131x Character OLED Controller + SSD132x Graylevel OLED Controller + SSD1331 Color OLED Controller + +*/ + +#include "u8g.h" + +#define WIDTH 96 +#define HEIGHT 96 +#define XOFFSET 8 + +/* + http://www.seeedstudio.com/wiki/index.php?title=Twig_-_OLED_96x96 +*/ +static const uint8_t u8g_dev_ssd1327_2bit_96x96_init_seq[] PROGMEM = { + U8G_ESC_DLY(10), /* delay 10 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x0fd, 0x012, /* unlock display, usually not required because the display is unlocked after reset */ + 0x0ae, /* display off, sleep mode */ + 0x0a8, 0x05f, /* multiplex ratio: 0x05f * 1/64 duty */ + 0x0a1, 0x000, /* display start line */ + 0x0a2, 0x060, /* display offset, shift mapping ram counter */ + //0x0a2, 0x04c, /* NHD: display offset, shift mapping ram counter */ + 0x0a0, 0x046, /* remap configuration, vertical address increment, enable nibble remap (upper nibble is left) */ + //0x0a0, 0x056, /* NHD: remap configuration, vertical address increment, enable nibble remap (upper nibble is left) */ + 0x0ab, 0x001, /* Enable internal VDD regulator (RESET) */ + 0x081, 0x053, /* contrast, brightness, 0..128, Newhaven: 0x040, LY120 0x053, 0x070 seems also ok */ + 0x0b1, 0x051, /* phase length */ + 0x0b3, 0x001, /* set display clock divide ratio/oscillator frequency */ + 0x0b9, /* use linear lookup table */ +#if 0 + 0x0b8, /* set gray scale table */ + //0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x065, 0x076, + 0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x077, 0x077, // 4L mode uses 0, 2, 4, 7 +#endif + 0x0bc, 0x008, /* pre-charge voltage level */ + 0x0be, 0x007, /* VCOMH voltage */ + 0x0b6, 0x001, /* second precharge */ + 0x0d5, 0x062, /* enable second precharge, internal vsl (bit0 = 0) */ + +#if 0 + // the following commands are not used by the SeeedGrayOLED sequence */ + 0x0ad, 0x002, /* master configuration: disable embedded DC-DC, enable internal VCOMH */ + 0x086, /* full current range (0x084, 0x085, 0x086) */ + 0x0b2, 0x051, /* frame frequency (row period) */ + 0x0b4, 0x002, /* set pre-charge compensation level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0b0, 0x028, /* enable pre-charge compensation (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0bf, 0x002|0x00d, /* VSL voltage level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ +#endif + + 0x0a5, /* all pixel on */ + //0x02e, /* no scroll (according to SeeedGrayOLED sequence) */ + 0x0af, /* display on */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display mode */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* all pixel on */ + 0x0af, /* display on */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display mode */ + + 0x015, /* column address... */ + 0x008, /* start at column 8, special for the LY120 ??? */ + 0x037, /* end at column 55, note: there are two pixel in one column */ + + 0x075, /* row address... */ + 0x008, + 0x05f, + + U8G_ESC_ADR(1), /* data mode */ + 0x000f, 0x000f, 0x0000, 0x0000, 0x000f,0x000f,0x0000,0x0000, + 0x000f, 0x000f, 0x0000, 0x0000, 0x000f,0x000f,0x0000,0x0000, + 0x000f, 0x000f, 0x0000, 0x0000, 0x000f,0x000f,0x0000,0x0000, + 0x000f, 0x000f, 0x0000, 0x0000, 0x000f,0x000f,0x0000,0x0000, + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd1327_2bit_96x96_prepare_page_seq[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x015, /* column address... */ + XOFFSET, /* start at column 8, special for the LY120 ??? */ + 0x037, /* end at column 55, note: there are two pixel in one column */ + 0x075, /* row address... */ + U8G_ESC_END /* end of sequence */ +}; + + +static void u8g_dev_ssd1327_2bit_prepare_page(u8g_t *u8g, u8g_dev_t *dev) +{ + uint8_t page = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1327_2bit_96x96_prepare_page_seq); + + page <<= 2; + u8g_WriteByte(u8g, dev, page); /* start at the selected page */ + page += 3; + u8g_WriteByte(u8g, dev, page); /* end within the selected page */ + + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +static void u8g_dev_ssd1327_2bit_2x_prepare_page(u8g_t *u8g, u8g_dev_t *dev, uint8_t is_odd) +{ + uint8_t page = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1327_2bit_96x96_prepare_page_seq); + + page <<= 1; + page += is_odd; + + page <<= 2; + u8g_WriteByte(u8g, dev, page); /* start at the selected page */ + page += 3; + u8g_WriteByte(u8g, dev, page); /* end within the selected page */ + + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +/* assumes row autoincrement and activated nibble remap */ +static void u8g_dev_ssd1327_2bit_write_4_pixel(u8g_t *u8g, u8g_dev_t *dev, uint8_t left, uint8_t right) +{ + uint8_t d, tmp, cnt; + static uint8_t buf[4]; + buf[0] = 0; + buf[1] = 0; + buf[2] = 0; + buf[3] = 0; + cnt = 0; + do + { + if ( left == 0 && right == 0 ) + break; + d = left; + d &= 3; + d <<= 4; + tmp = right; + tmp &= 3; + d |= tmp; + d <<= 2; + buf[cnt] = d; + left >>= 2; + right >>= 2; + cnt++; + }while ( cnt < 4 ); + u8g_WriteSequence(u8g, dev, 4, buf); +} + +static void u8g_dev_ssd1327_2bit_write_buffer(u8g_t *u8g, u8g_dev_t *dev) +{ + uint8_t cnt, left, right; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + cnt = pb->width; + cnt >>= 1; + ptr = pb->buf; + do + { + left = *ptr++; + right = *ptr++; + u8g_dev_ssd1327_2bit_write_4_pixel(u8g, dev, left, right); + cnt--; + } while( cnt > 0 ); +} + +static void u8g_dev_ssd1327_2bit_2x_write_buffer(u8g_t *u8g, u8g_dev_t *dev, uint8_t is_odd) +{ + uint8_t cnt, left, right; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + ptr = pb->buf; + cnt = pb->width; + if ( is_odd ) + ptr += cnt; + cnt >>= 1; + do + { + left = *ptr++; + right = *ptr++; + u8g_dev_ssd1327_2bit_write_4_pixel(u8g, dev, left, right); + cnt--; + } while( cnt > 0 ); +} + +uint8_t u8g_dev_ssd1327_96x96_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1327_2bit_96x96_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_dev_ssd1327_2bit_prepare_page(u8g, dev); + u8g_dev_ssd1327_2bit_write_buffer(u8g, dev); + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v2_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_ssd1327_96x96_2x_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1327_2bit_96x96_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_dev_ssd1327_2bit_2x_prepare_page(u8g, dev, 0); + u8g_dev_ssd1327_2bit_2x_write_buffer(u8g, dev, 0); + u8g_dev_ssd1327_2bit_2x_prepare_page(u8g, dev, 1); + u8g_dev_ssd1327_2bit_2x_write_buffer(u8g, dev, 1); + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb16v2_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_ssd1327_96x96_gr_sw_spi , WIDTH, HEIGHT, 4, u8g_dev_ssd1327_96x96_gr_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1327_96x96_gr_hw_spi , WIDTH, HEIGHT, 4, u8g_dev_ssd1327_96x96_gr_fn, U8G_COM_HW_SPI); +U8G_PB_DEV(u8g_dev_ssd1327_96x96_gr_i2c , WIDTH, HEIGHT, 4, u8g_dev_ssd1327_96x96_gr_fn, U8G_COM_SSD_I2C); + +#define DWIDTH (2*WIDTH) +uint8_t u8g_dev_ssd1327_96x96_2x_buf[DWIDTH] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_ssd1327_96x96_2x_pb = { {8, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_ssd1327_96x96_2x_buf}; +u8g_dev_t u8g_dev_ssd1327_96x96_2x_gr_sw_spi = { u8g_dev_ssd1327_96x96_2x_gr_fn, &u8g_dev_ssd1327_96x96_2x_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_ssd1327_96x96_2x_gr_hw_spi = { u8g_dev_ssd1327_96x96_2x_gr_fn, &u8g_dev_ssd1327_96x96_2x_pb, U8G_COM_HW_SPI }; +u8g_dev_t u8g_dev_ssd1327_96x96_2x_gr_i2c = { u8g_dev_ssd1327_96x96_2x_gr_fn, &u8g_dev_ssd1327_96x96_2x_pb, U8G_COM_SSD_I2C }; + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_64128n.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_64128n.c new file mode 100644 index 0000000000000000000000000000000000000000..01fc9fc0cb151690c89e1a067e0d713dd2cc29a2 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_64128n.c @@ -0,0 +1,153 @@ +/* + + u8g_dev_st7565_64128n.c (Displaytech) + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +/* init sequence from https://github.com/adafruit/ST7565-LCD/blob/master/ST7565/ST7565.cpp */ +static const uint8_t u8g_dev_st7565_64128n_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + 0x0A2, /* 0x0a2: LCD bias 1/9 (according to Displaytech 64128N datasheet) */ + 0x0A0, /* Normal ADC Select (according to Displaytech 64128N datasheet) */ + + 0x0c8, /* common output mode: set scan direction normal operation/SHL Select, 0x0c0 --> SHL = 0, normal, 0x0c8 --> SHL = 1 */ + 0x040, /* Display start line for Displaytech 64128N */ + + 0x028 | 0x04, /* power control: turn on voltage converter */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x028 | 0x06, /* power control: turn on voltage regulator */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x028 | 0x07, /* power control: turn on voltage follower */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x010, /* Set V0 voltage resistor ratio. Setting for controlling brightness of Displaytech 64128N */ + + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + + 0x081, /* set contrast */ + 0x01e, /* Contrast value. Setting for controlling brightness of Displaytech 64128N */ + + + 0x0af, /* display on */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_64128n_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0x10 */ + 0x000, /* set lower 4 bit of the col adr to 0x00. Changed for DisplayTech 64128N */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_64128n_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ac, /* static indicator off */ + 0x000, /* indicator register set (not sure if this is required) */ + 0x0ae, /* display off */ + 0x0a5, /* all points on */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_64128n_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0a4, /* all points off */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7565_64128n_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_64128n_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_64128n_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_64128n_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_64128n_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7565_64128n_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_64128n_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_st7565_64128n_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_64128n_fn, U8G_COM_HW_SPI); + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_dogm128.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_dogm128.c new file mode 100644 index 0000000000000000000000000000000000000000..095ef369c1644d360c2c2ca3947bd1e17203c103 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_dogm128.c @@ -0,0 +1,140 @@ +/* + + u8g_dev_st7565_dogm128.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +const uint8_t u8g_dev_st7565_dogm128_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x040, /* set display start line */ + 0x0a1, /* ADC set to reverse */ + 0x0c0, /* common output mode: set scan direction normal operation */ + 0x0a6, /* display normal (none reverse) */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + 0x0f8, /* set booster ratio to */ + 0x000, /* 4x */ + 0x027, /* set V0 voltage resistor ratio to large */ + 0x081, /* set contrast */ + 0x018, /* contrast value, EA default: 0x016 */ + 0x0ac, /* indicator */ + 0x000, /* disable */ + 0x0a4, /* normal display (not all on) */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_dogm128_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 0 */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_dogm128_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ac, /* static indicator off */ + 0x000, /* indicator register set (not sure if this is required) */ + 0x0ae, /* display off */ + 0x0a5, /* all points on */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_dogm128_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0a4, /* all points off */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7565_dogm128_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm128_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm128_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm128_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm128_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7565_dogm128_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_dogm128_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_st7565_dogm128_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_dogm128_fn, U8G_COM_HW_SPI); + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_dogm132.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_dogm132.c new file mode 100644 index 0000000000000000000000000000000000000000..a76d54b3fdc94335e2634814648ac886f8362497 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_dogm132.c @@ -0,0 +1,157 @@ +/* + + u8g_dev_st7565_dogm132.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 132 +#define HEIGHT 32 +#define PAGE_HEIGHT 8 + +static const uint8_t u8g_dev_st7565_dogm132_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x040, /* set display start line to 0 */ + 0x0a1, /* ADC set to reverse */ + 0x0c0, /* common output mode */ + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + 0x0f8, /* set booster ratio to */ + 0x000, /* 4x */ + 0x023, /* set V0 voltage resistor ratio to large */ + 0x081, /* set contrast */ + 0x01f, /* contrast value, EA default: 0x01f */ + 0x0ac, /* indicator */ + 0x000, /* disable */ + 0x0af, /* display on */ + +#ifdef OBSOLETE_DOGM128 + 0x040, /* set display start line */ + 0x0c8, /* set scan direction inverse operation */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + 0x0f8, /* set booster ratio to */ + 0x000, /* 4x */ + 0x027, /* set V0 voltage resistor ratio to large */ + 0x081, /* set contrast */ + 0x018, /* contrast value, EA default: 0x016 */ + 0x0ac, /* indicator */ + 0x000, /* disable */ + 0x0af, /* display on */ +#endif + + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_dogm132_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 0 */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_dogm132_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ac, /* static indicator off */ + 0x000, /* indicator register set (not sure if this is required) */ + 0x0ae, /* display off */ + 0x0a5, /* all points on */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_dogm132_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0a4, /* all points off */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7565_dogm132_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm132_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm132_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm132_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm132_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7565_dogm132_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_dogm132_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_st7565_dogm132_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_dogm132_fn, U8G_COM_HW_SPI); diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_lm6059.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_lm6059.c new file mode 100644 index 0000000000000000000000000000000000000000..ab8ed39b6476a6b1177a48757ba3ed0196659890 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_lm6059.c @@ -0,0 +1,157 @@ +/* + + u8g_dev_st7565_lm6059.c (Adafruit display) + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +/* init sequence from https://github.com/adafruit/ST7565-LCD/blob/master/ST7565/ST7565.cpp */ +static const uint8_t u8g_dev_st7565_lm6059_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + 0x0a3, /* 0x0a2: LCD bias 1/9 (suggested for the LM6063), 0x0a3: Used by Adafruit, 0x0a2 does not work */ + /* the LM6059 vs LM6063, ADC and SHL have inverted settings */ + 0x0a0, /* 0x0a1: ADC set to normal (suggested for the LM6059), 0x0a0: Used by Adafruit -> normal mode */ + 0x0c8, /* common output mode: set scan direction normal operation/SHL Select, 0x0c0 --> SHL = 0, normal, 0x0c8 --> SHL = 1 */ + 0x060, /* set display start line */ + + 0x028 | 0x04, /* power control: turn on voltage converter */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x028 | 0x06, /* power control: turn on voltage regulator */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x028 | 0x07, /* power control: turn on voltage follower */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x026, /* set V0 voltage resistor ratio to 6 (Adafruit Value, no info from LM6063 Manual) */ + + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + + 0x081, /* set contrast */ + 0x018, /* contrast value*/ + + /*0x0ac,*/ /* indicator */ + /*0x000,*/ /* disable */ + + 0x0af, /* display on */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_lm6059_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x001, /* set lower 4 bit of the col adr */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_lm6059_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ac, /* static indicator off */ + 0x000, /* indicator register set (not sure if this is required) */ + 0x0ae, /* display off */ + 0x0a5, /* all points on */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_lm6059_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0a4, /* all points off */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +uint8_t u8g_dev_st7565_lm6059_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7565_lm6059_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_lm6059_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_st7565_lm6059_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_lm6059_fn, U8G_COM_HW_SPI); + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_lm6063.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_lm6063.c new file mode 100644 index 0000000000000000000000000000000000000000..47ccb1ec707e3633bde4e55fed7c8a16df59b569 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_lm6063.c @@ -0,0 +1,188 @@ +/* + + u8g_dev_st7565_lm6063.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +#ifdef OLD_ADAFRUIT_CODE +static const uint8_t OLD_u8g_dev_st7565_lm6063_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x040, /* set display start line */ + 0x0a1, /* ADC set to reverse */ + 0x0c8, /* common output mode: set scan direction normal operation/SHL Select / 17 Jan: seems to be a bug, must be 0x0c0 */ + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + /*0x0f8,*/ /* set booster ratio to */ + /*0x000, */ /* 4x */ + /*0x027,*/ /* set V0 voltage resistor ratio to large */ + 0x081, /* set contrast */ + 0x018, /* contrast value*/ + 0x0ac, /* indicator */ + 0x000, /* disable */ + 0x0af, /* display on */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; +#endif + +/* init sequence from https://github.com/adafruit/ST7565-LCD/blob/master/ST7565/ST7565.cpp */ +static const uint8_t u8g_dev_st7565_lm6063_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + 0x0a3, /* 0x0a2: LCD bias 1/9 (suggested for the LM6063), 0x0a3: Used by Adafruit */ + 0x0a1, /* 0x0a1: ADC set to reverse (suggested for the LM6063), 0x0a0: Used by Adafruit -> normal mode */ + 0x0c0, /* common output mode: set scan direction normal operation/SHL Select, 0x0c0 --> SHL = 0, normal, 0x0c8 --> SHL = 1 */ + 0x040, /* set display start line */ + + 0x028 | 0x04, /* power control: turn on voltage converter */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x028 | 0x06, /* power control: turn on voltage regulator */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x028 | 0x07, /* power control: turn on voltage follower */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x026, /* set V0 voltage resistor ratio to 6 (Adafruit Value, no info from LM6063 Manual) */ + + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + + 0x081, /* set contrast */ + 0x018, /* contrast value*/ + + /*0x0ac,*/ /* indicator */ + /*0x000,*/ /* disable */ + + 0x0af, /* display on */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_lm6063_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 0 */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_st7565_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ac, /* static indicator off */ + 0x000, /* indicator register set (not sure if this is required) */ + 0x0ae, /* display off */ + 0x0a5, /* all points on */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_st7565_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0a4, /* all points off */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +uint8_t u8g_dev_st7565_lm6063_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6063_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6063_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_st7565_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_st7565_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7565_lm6063_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_lm6063_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_st7565_lm6063_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_lm6063_fn, U8G_COM_HW_SPI); + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_nhd_c12832.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_nhd_c12832.c new file mode 100644 index 0000000000000000000000000000000000000000..ed80a0693177207fa01a2b6a230c607c0582766c --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_nhd_c12832.c @@ -0,0 +1,143 @@ +/* + + u8g_dev_st7565_nhd_c12832.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 32 +#define PAGE_HEIGHT 8 + +static const uint8_t u8g_dev_st7565_c12832_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x040, /* set display start line to 0 */ + 0x0a0, /* ADC set, values: a0=normal, a1=reverse */ + 0x0c8, /* common output mode: c0=normal, c8=reverse */ + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + 0x0f8, /* set booster ratio to */ + 0x000, /* 4x */ + 0x023, /* set V0 voltage resistor ratio to large */ + 0x081, /* set contrast */ + 0x00a, /* contrast value */ + 0x0ac, /* indicator */ + 0x000, /* disable */ + 0x0af, /* display on */ + + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_c12832_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 0 */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_c12832_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ac, /* static indicator off */ + 0x000, /* indicator register set (not sure if this is required) */ + 0x0ae, /* display off */ + 0x0a5, /* all points on */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_c12832_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0a4, /* all points off */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7565_c12832_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_c12832_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_c12832_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_c12832_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_c12832_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7565_nhd_c12832_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_c12832_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_st7565_nhd_c12832_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_c12832_fn, U8G_COM_HW_SPI); +U8G_PB_DEV(u8g_dev_st7565_nhd_c12832_parallel, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_c12832_fn, U8G_COM_PARALLEL); diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_nhd_c12864.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_nhd_c12864.c new file mode 100644 index 0000000000000000000000000000000000000000..5e3f8b9fe891426b0c49bb7666c6e0824f639db3 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7565_nhd_c12864.c @@ -0,0 +1,145 @@ +/* + + u8g_dev_st7565_nhd_c12864.c + + Support for the NHD-C12864A1Z-FSB-FBW (Newhaven Display) + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +const uint8_t u8g_dev_st7565_nhd_c12864_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(10), /* do reset low pulse with (10*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x040, /* set display start line */ + 0x0a1, /* ADC set to reverse */ + 0x0c0, /* common output mode: set scan direction normal operation */ + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + 0x0f8, /* set booster ratio to */ + 0x000, /* 4x */ + 0x027, /* set V0 voltage resistor ratio to large */ + 0x081, /* set contrast */ + 0x008, /* contrast: 0x008 is a good value for NHD C12864, Nov 2012: User reports that 0x1a is much better */ + 0x0ac, /* indicator */ + 0x000, /* disable */ + 0x0af, /* display on */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_nhd_c12864_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x004, /* set lower 4 bit of the col adr to 4 (NHD C12864) */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_c12864_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ac, /* static indicator off */ + 0x000, /* indicator register set (not sure if this is required) */ + 0x0ae, /* display off */ + 0x0a5, /* all points on */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_c12864_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0a4, /* all points off */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7565_nhd_c12864_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_nhd_c12864_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_nhd_c12864_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_c12864_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_c12864_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7565_nhd_c12864_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_nhd_c12864_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_st7565_nhd_c12864_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_nhd_c12864_fn, U8G_COM_HW_SPI); + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7687_c144mvgd.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7687_c144mvgd.c new file mode 100644 index 0000000000000000000000000000000000000000..4851017aa64535dda63185119813fad353c4ebfd --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7687_c144mvgd.c @@ -0,0 +1,420 @@ +/* + + u8g_dev_st7687_c144mvgd.c (1.44" TFT) + + Status: Started, but not finished + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 128 +#define PAGE_HEIGHT 8 + + +#ifdef FIRST_VERSION +/* +see also: read.pudn.com/downloads115/sourcecode/app/484503/LCM_Display.c__.htm +http://en.pudn.com/downloads115/sourcecode/app/detail484503_en.html +*/ + +static const uint8_t u8g_dev_st7687_c144mvgd_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + 0x001, /* A0=0, SW reset */ + U8G_ESC_DLY(200), /* delay 200 ms */ + + 0x0d7, /* EEPROM data auto re-load control */ + U8G_ESC_ADR(1), /* data mode */ + 0x09f, /* ARD = 1 */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + 0x0e0, /* EEPROM control in */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_DLY(100), /* delay 100 ms */ + +#ifdef NOT_REQUIRED + 0x0fa, /* EEPROM function selection 8.1.66 */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_DLY(100), /* delay 100 ms */ +#endif + + 0x0e3, /* Read from EEPROM, 8.1.55 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + 0x0e1, /* EEPROM control out, 8.1.53 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + //0x028, /* display off */ + 0x011, /* Sleep out & booster on */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + 0x0c0, /* Vop setting, 8.1.42 */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* */ + 0x001, /* 3.6 + 256*0.04 = 13.84 Volt */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + 0x0c3, /* Bias selection, 8.1.45 */ + U8G_ESC_ADR(1), /* data mode */ + 0x003, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0c4, /* Booster setting 8.1.46 */ + U8G_ESC_ADR(1), /* data mode */ + 0x007, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0c5, /* ??? */ + U8G_ESC_ADR(1), /* data mode */ + 0x001, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0cb, /* FV3 with Booster x2 control, 8.1.47 */ + U8G_ESC_ADR(1), /* data mode */ + 0x001, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x036, /* Memory data access control, 8.1.28 */ + U8G_ESC_ADR(1), /* data mode */ + 0x080, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0b5, /* N-line control, 8.1.37 */ + U8G_ESC_ADR(1), /* data mode */ + 0x089, + U8G_ESC_ADR(0), /* instruction mode */ + + + 0x0d0, /* Analog circuit setting, 8.1.49 */ + U8G_ESC_ADR(1), /* data mode */ + 0x01d, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0b7, /* Com/Seg Scan Direction, 8.1.38 */ + U8G_ESC_ADR(1), /* data mode */ + 0x040, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x025, /* Write contrast, 8.1.17 */ + U8G_ESC_ADR(1), /* data mode */ + 0x03f, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x03a, /* Interface pixel format, 8.1.32 */ + U8G_ESC_ADR(1), /* data mode */ + 0x004, /* 3: 12 bit per pixel Type A, 4: 12 bit Type B, 5: 16bit per pixel */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0b0, /* Display Duty setting, 8.1.34 */ + U8G_ESC_ADR(1), /* data mode */ + 0x07f, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0f0, /* Frame Freq. in Temp range A,B,C and D, 8.1.59 */ + U8G_ESC_ADR(1), /* data mode */ + 0x007, + 0x00c, + 0x00c, + 0x015, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0f9, /* Frame RGB Value, 8.1.65 */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, + 0x005, + 0x008, + 0x00a, + 0x00c, + 0x00e, + 0x010, + 0x011, + 0x012, + 0x013, + 0x014, + 0x015, + 0x016, + 0x018, + 0x01a, + 0x01b, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0f9, /* Frame RGB Value, 8.1.65 */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, + 0x000, + 0x000, + 0x000, + 0x033, + 0x055, + 0x055, + 0x055, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x029, /* display on */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ + +}; + +#else + +/* +http://www.waitingforfriday.com/images/e/e3/FTM144D01N_test.zip +*/ + +static const uint8_t u8g_dev_st7687_c144mvgd_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + 0x011, /* Sleep out & booster on */ + U8G_ESC_DLY(5), /* delay 5 ms */ + + 0x03a, /* Interface pixel format, 8.1.32 */ + U8G_ESC_ADR(1), /* data mode */ + 0x004, /* 3: 12 bit per pixel Type A, 4: 12 bit Type B, 5: 16bit per pixel */ + U8G_ESC_ADR(0), /* instruction mode */ + + + 0x026, /* SET_GAMMA_CURVE */ + U8G_ESC_ADR(1), /* data mode */ + 0x004, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0f2, /* GAM_R_SEL */ + U8G_ESC_ADR(1), /* data mode */ + 0x001, /* enable gamma adj */ + U8G_ESC_ADR(0), /* instruction mode */ + + + 0x0e0, /* POSITIVE_GAMMA_CORRECT */ + U8G_ESC_ADR(1), /* data mode */ + 0x3f, + 0x25, + 0x1c, + 0x1e, + 0x20, + 0x12, + 0x2a, + 0x90, + 0x24, + 0x11, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0e1, /* NEGATIVE_GAMMA_CORRECT */ + U8G_ESC_ADR(1), /* data mode */ + 0x20, + 0x20, + 0x20, + 0x20, + 0x05, + 0x00, + 0x15, + 0xa7, + 0x3d, + 0x18, + 0x25, + 0x2a, + 0x2b, + 0x2b, + 0x3a, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0b1, /* FRAME_RATE_CONTROL1 */ + U8G_ESC_ADR(1), /* data mode */ + 0x008, /* DIVA = 8 */ + 0x008, /* VPA = 8 */ + U8G_ESC_ADR(0), /* instruction mode */ + + + 0x0b4, /* DISPLAY_INVERSION */ + U8G_ESC_ADR(1), /* data mode */ + 0x007, /* NLA = 1, NLB = 1, NLC = 1 (all on Frame Inversion) */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0c0, /* POWER_CONTROL1 */ + U8G_ESC_ADR(1), /* data mode */ + 0x00a, /* VRH = 10: GVDD = 4.30 */ + 0x002, /* VC = 2: VCI1 = 2.65 */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0c1, /* POWER_CONTROL2 */ + U8G_ESC_ADR(1), /* data mode */ + 0x002, /* BT = 2: AVDD = 2xVCI1, VCL = -1xVCI1, VGH = 5xVCI1, VGL = -2xVCI1 */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0c5, /* VCOM_CONTROL1 */ + U8G_ESC_ADR(1), /* data mode */ + 0x050, /* VMH = 80: VCOMH voltage = 4.5 */ + 0x05b, /* VML = 91: VCOML voltage = -0.225 */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0c7, /* VCOM_OFFSET_CONTROL */ + U8G_ESC_ADR(1), /* data mode */ + 0x040, /* nVM = 0, VMF = 64: VCOMH output = VMH, VCOML output = VML */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x02a, /* SET_COLUMN_ADDRESS */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* */ + 0x000, /* */ + 0x000, /* */ + 0x07f, /* */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x02b, /* SET_PAGE_ADDRESS */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* */ + 0x000, /* */ + 0x000, /* */ + 0x07f, /* */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x036, /* SET_ADDRESS_MODE */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* Select display orientation */ + U8G_ESC_ADR(0), /* instruction mode */ + + + 0x029, /* display on */ + + 0x02c, /* write start */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ + +}; + +#endif + + + + +/* calculate bytes for Type B 4096 color display */ +static uint8_t get_byte_1(uint8_t v) +{ + v >>= 4; + v &= 0x0e; + return v; +} + +static uint8_t get_byte_2(uint8_t v) +{ + uint8_t w; + w = v; + w &= 3; + w = (w<<2) | w; + v <<= 3; + v &= 0x0e0; + w |= v; + return w; +} + +uint8_t u8g_dev_st7687_c144mvgd_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7687_c144mvgd_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i, j; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x02a ); /* Column address set 8.1.20 */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteByte(u8g, dev, 0x000 ); /* x0 */ + u8g_WriteByte(u8g, dev, WIDTH-1 ); /* x1 */ + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x02b ); /* Row address set 8.1.21 */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteByte(u8g, dev, y ); /* y0 */ + u8g_WriteByte(u8g, dev, y+PAGE_HEIGHT-1 ); /* y1 */ + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x02c ); /* Memory write 8.1.22 */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + + for( i = 0; i < PAGE_HEIGHT; i ++ ) + { + + for( j = 0; j < WIDTH; j ++ ) + { + u8g_WriteByte(u8g, dev, get_byte_1(*ptr) ); + u8g_WriteByte(u8g, dev, get_byte_2(*ptr) ); + ptr++; + } + } + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h8_base_fn(u8g, dev, msg, arg); +} + + +uint8_t u8g_st7687_c144mvgd_8h8_buf[WIDTH*8] U8G_NOCOMMON ; +u8g_pb_t u8g_st7687_c144mvgd_8h8_pb = { {8, HEIGHT, 0, 0, 0}, WIDTH, u8g_st7687_c144mvgd_8h8_buf}; + +u8g_dev_t u8g_dev_st7687_c144mvgd_sw_spi = { u8g_dev_st7687_c144mvgd_fn, &u8g_st7687_c144mvgd_8h8_pb, u8g_com_arduino_sw_spi_fn }; + +u8g_dev_t u8g_dev_st7687_c144mvgd_8bit = { u8g_dev_st7687_c144mvgd_fn, &u8g_st7687_c144mvgd_8h8_pb, U8G_COM_PARALLEL }; diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7920_128x64.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7920_128x64.c new file mode 100644 index 0000000000000000000000000000000000000000..b0b18d34d29bdd03efa3a1331d3347d37f2836b7 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7920_128x64.c @@ -0,0 +1,171 @@ +/* + + u8g_dev_st7565_128x64.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + + +/* init sequence from https://github.com/adafruit/ST7565-LCD/blob/master/ST7565/ST7565.cpp */ +static const uint8_t u8g_dev_st7920_128x64_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_DLY(100), /* 8 Dez 2012: additional delay 100 ms because of reset*/ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x038, /* 8 Bit interface (DL=1), basic instruction set (RE=0) */ + 0x00c, /* display on, cursor & blink off; 0x08: all off */ + 0x006, /* Entry mode: Cursor move to right ,DDRAM address counter (AC) plus 1, no shift */ + 0x002, /* disable scroll, enable CGRAM adress */ + 0x001, /* clear RAM, needs 1.6 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7920_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7920_128x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + for( i = 0; i < 8; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x03e ); /* enable extended mode */ + + if ( y < 32 ) + { + u8g_WriteByte(u8g, dev, 0x080 | y ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set x pos to 0*/ + } + else + { + u8g_WriteByte(u8g, dev, 0x080 | (y-32) ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 | 8); /* set x pos to 64*/ + } + + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + y++; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h1_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_st7920_128x64_4x_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7920_128x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + for( i = 0; i < 32; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x03e ); /* enable extended mode */ + + if ( y < 32 ) + { + u8g_WriteByte(u8g, dev, 0x080 | y ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set x pos to 0*/ + } + else + { + u8g_WriteByte(u8g, dev, 0x080 | (y-32) ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 | 8); /* set x pos to 64*/ + } + + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + y++; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb32h1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7920_128x64_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7920_128x64_fn, U8G_COM_ST7920_SW_SPI); +U8G_PB_DEV(u8g_dev_st7920_128x64_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7920_128x64_fn, U8G_COM_ST7920_HW_SPI); +U8G_PB_DEV(u8g_dev_st7920_128x64_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7920_128x64_fn, U8G_COM_FAST_PARALLEL); + +#define QWIDTH (WIDTH*4) +uint8_t u8g_dev_st7920_128x64_4x_buf[QWIDTH] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_st7920_128x64_4x_pb = { {32, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_st7920_128x64_4x_buf}; +u8g_dev_t u8g_dev_st7920_128x64_4x_sw_spi = { u8g_dev_st7920_128x64_4x_fn, &u8g_dev_st7920_128x64_4x_pb, U8G_COM_ST7920_SW_SPI }; +u8g_dev_t u8g_dev_st7920_128x64_4x_hw_spi = { u8g_dev_st7920_128x64_4x_fn, &u8g_dev_st7920_128x64_4x_pb, U8G_COM_ST7920_HW_SPI }; +u8g_dev_t u8g_dev_st7920_128x64_4x_8bit = { u8g_dev_st7920_128x64_4x_fn, &u8g_dev_st7920_128x64_4x_pb, U8G_COM_FAST_PARALLEL }; + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7920_192x32.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7920_192x32.c new file mode 100644 index 0000000000000000000000000000000000000000..28535e0cd2630b2d821245a1af2c86ef994a22c1 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7920_192x32.c @@ -0,0 +1,151 @@ +/* + + u8g_dev_st7920_192x32.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 192 +#define HEIGHT 32 + + +/* init sequence from https://github.com/adafruit/ST7565-LCD/blob/master/ST7565/ST7565.cpp */ +static const uint8_t u8g_dev_st7920_192x32_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_DLY(100), /* 8 Dez 2012: additional delay 100 ms because of reset*/ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x038, /* 8 Bit interface (DL=1), basic instruction set (RE=0) */ + 0x00c, /* display on, cursor & blink off; 0x08: all off */ + 0x006, /* Entry mode: Cursor move to right ,DDRAM address counter (AC) plus 1, no shift */ + 0x002, /* disable scroll, enable CGRAM adress */ + 0x001, /* clear RAM, needs 1.6 ms */ + U8G_ESC_DLY(100), /* delay 10 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7920_192x32_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7920_192x32_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + for( i = 0; i < 8; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x03e ); /* enable extended mode */ + u8g_WriteByte(u8g, dev, 0x080 | y ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set x pos to 0*/ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + y++; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h1_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_st7920_192x32_4x_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7920_192x32_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + for( i = 0; i < 32; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x03e ); /* enable extended mode */ + u8g_WriteByte(u8g, dev, 0x080 | y ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set x pos to 0*/ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + y++; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb32h1_base_fn(u8g, dev, msg, arg); +} + + +U8G_PB_DEV(u8g_dev_st7920_192x32_sw_spi, WIDTH, HEIGHT, 8, u8g_dev_st7920_192x32_fn, U8G_COM_ST7920_SW_SPI); +U8G_PB_DEV(u8g_dev_st7920_192x32_hw_spi, WIDTH, HEIGHT, 8, u8g_dev_st7920_192x32_fn, U8G_COM_ST7920_HW_SPI); +U8G_PB_DEV(u8g_dev_st7920_192x32_8bit, WIDTH, HEIGHT, 8, u8g_dev_st7920_192x32_fn, U8G_COM_FAST_PARALLEL); + + +#define QWIDTH (WIDTH*4) +uint8_t u8g_dev_st7920_192x32_4x_buf[QWIDTH] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_st7920_192x32_4x_pb = { {32, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_st7920_192x32_4x_buf}; +u8g_dev_t u8g_dev_st7920_192x32_4x_sw_spi = { u8g_dev_st7920_192x32_4x_fn, &u8g_dev_st7920_192x32_4x_pb, U8G_COM_ST7920_SW_SPI }; +u8g_dev_t u8g_dev_st7920_192x32_4x_hw_spi = { u8g_dev_st7920_192x32_4x_fn, &u8g_dev_st7920_192x32_4x_pb, U8G_COM_ST7920_HW_SPI }; +u8g_dev_t u8g_dev_st7920_192x32_4x_8bit = { u8g_dev_st7920_192x32_4x_fn, &u8g_dev_st7920_192x32_4x_pb, U8G_COM_FAST_PARALLEL }; + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7920_202x32.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7920_202x32.c new file mode 100644 index 0000000000000000000000000000000000000000..129fc748fbcbdbbca690d593d9e8ee53fe7aafa5 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_st7920_202x32.c @@ -0,0 +1,154 @@ +/* + + u8g_dev_st7920_202x32.c + tested with CFAG20232 + + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 202 +#define HEIGHT 32 +#define PAGE_HEIGHT 8 + + +/* init sequence from https://github.com/adafruit/ST7565-LCD/blob/master/ST7565/ST7565.cpp */ +static const uint8_t u8g_dev_st7920_202x32_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_DLY(100), /* 8 Dez 2012: additional delay 100 ms because of reset*/ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x038, /* 8 Bit interface (DL=1), basic instruction set (RE=0) */ + 0x00c, /* display on, cursor & blink off; 0x08: all off */ + 0x006, /* Entry mode: Cursor move to right ,DDRAM address counter (AC) plus 1, no shift */ + 0x002, /* disable scroll, enable CGRAM adress */ + 0x001, /* clear RAM, needs 1.6 ms */ + U8G_ESC_DLY(100), /* delay 10 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7920_202x32_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7920_202x32_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + for( i = 0; i < 8; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x03e ); /* enable extended mode */ + u8g_WriteByte(u8g, dev, 0x080 | y ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set x pos to 0*/ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + y++; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h1_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_st7920_202x32_4x_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7920_202x32_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + for( i = 0; i < 32; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x03e ); /* enable extended mode */ + u8g_WriteByte(u8g, dev, 0x080 | y ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set x pos to 0*/ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + y++; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb32h1_base_fn(u8g, dev, msg, arg); +} + + +U8G_PB_DEV(u8g_dev_st7920_202x32_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7920_202x32_fn, U8G_COM_ST7920_SW_SPI); +U8G_PB_DEV(u8g_dev_st7920_202x32_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7920_202x32_fn, U8G_COM_ST7920_HW_SPI); +U8G_PB_DEV(u8g_dev_st7920_202x32_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7920_202x32_fn, U8G_COM_FAST_PARALLEL); + +#define QWIDTH (WIDTH*4) +uint8_t u8g_dev_st7920_202x32_4x_buf[QWIDTH] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_st7920_202x32_4x_pb = { {32, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_st7920_202x32_4x_buf}; +u8g_dev_t u8g_dev_st7920_202x32_4x_sw_spi = { u8g_dev_st7920_202x32_4x_fn, &u8g_dev_st7920_202x32_4x_pb, U8G_COM_ST7920_SW_SPI }; +u8g_dev_t u8g_dev_st7920_202x32_4x_hw_spi = { u8g_dev_st7920_202x32_4x_fn, &u8g_dev_st7920_202x32_4x_pb, U8G_COM_ST7920_HW_SPI }; +u8g_dev_t u8g_dev_st7920_202x32_4x_8bit = { u8g_dev_st7920_202x32_4x_fn, &u8g_dev_st7920_202x32_4x_pb, U8G_COM_FAST_PARALLEL }; + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_t6963_128x64.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_t6963_128x64.c new file mode 100644 index 0000000000000000000000000000000000000000..c1626ccc180cda12f0d397f4ef38810f3b2752bb --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_t6963_128x64.c @@ -0,0 +1,191 @@ +/* + + u8g_dev_t6963_128x64.c + + Tested with Varitronix MGLS240128TZ + + Universal 8bit Graphics Library + + Copyright (c) 2013, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + Application Notes for the MGLS 240x128 + www.baso.no/content/pdf/T6963C_Application.pdf + + Hitachi App Notes: + https://www.sparkfun.com/datasheets/LCD/Monochrome/AN-029-Toshiba_T6963C.pdf + + Notes: + The font selection pins should generate the 8x8 font. + For the MGLS240128TZ only FS1 is available on pin 18. + FS1 must be low to generate the 8x8 font. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 16 + + +/* text is not used, so settings are not relevant */ +static const uint8_t u8g_dev_t6963_128x64_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* data mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x021, /* set cursor position */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x022, /* set offset */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x040, /* text home */ + + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x041, /* text columns */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x042, /* graphics home */ + + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x043, /* graphics columns */ + + // mode set + // 0x080: Internal CG, OR Mode + // 0x081: Internal CG, EXOR Mode + // 0x083: Internal CG, AND Mode + // 0x088: External CG, OR Mode + // 0x089: External CG, EXOR Mode + // 0x08B: External CG, AND Mode + U8G_ESC_ADR(1), /* instruction mode */ + 0x080, /* mode register: OR Mode, Internal Character Mode */ + + U8G_ESC_ADR(1), /* instruction mode */ + // display mode + // 0x090: Display off + // 0x094: Graphic off, text on, cursor off, blink off + // 0x096: Graphic off, text on, cursor on, blink off + // 0x097: Graphic off, text on, cursor on, blink on + // 0x098: Graphic on, text off, cursor off, blink off + // 0x09a: Graphic on, text off, cursor on, blink off + // ... + // 0x09c: Graphic on, text on, cursor off, blink off + // 0x09f: Graphic on, text on, cursor on, blink on + 0x098, /* mode register: Display Mode, Graphics on, Text off, Cursor off */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x024, /* set adr pointer */ + + + U8G_ESC_DLY(100), /* delay 100 ms */ + + U8G_ESC_ADR(0), /* data mode */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_t6963_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_t6963_128x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint16_t disp_ram_adr; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + disp_ram_adr = WIDTH/8; + disp_ram_adr *= y; + for( i = 0; i < PAGE_HEIGHT; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr&255 ); /* address low byte */ + u8g_WriteByte(u8g, dev, disp_ram_adr>>8 ); /* address hight byte */ + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x024 ); /* set adr ptr */ + + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + + ptr += WIDTH/8; + disp_ram_adr += WIDTH/8; + } + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb16h1_base_fn(u8g, dev, msg, arg); +} + +// U8G_PB_DEV(u8g_dev_t6963_128x64_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_t6963_128x64_fn, U8G_COM_T6963); + +uint8_t u8g_dev_t6963_128x64_2x_bw_buf[WIDTH/8*PAGE_HEIGHT] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_t6963_128x64_2x_bw_pb = { {PAGE_HEIGHT, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_t6963_128x64_2x_bw_buf}; +u8g_dev_t u8g_dev_t6963_128x64_8bit = { u8g_dev_t6963_128x64_fn, &u8g_dev_t6963_128x64_2x_bw_pb, U8G_COM_T6963 }; + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_t6963_240x128.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_t6963_240x128.c new file mode 100644 index 0000000000000000000000000000000000000000..4a28edbcfeecc0cc255f75925292f78681029027 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_t6963_240x128.c @@ -0,0 +1,195 @@ +/* + + u8g_dev_t6963_240x128.c + + Tested with Varitronix MGLS240128TZ + + Universal 8bit Graphics Library + + Copyright (c) 2013, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + Application Notes for the MGLS 240x128 + www.baso.no/content/pdf/T6963C_Application.pdf + + Hitachi App Notes: + https://www.sparkfun.com/datasheets/LCD/Monochrome/AN-029-Toshiba_T6963C.pdf + + Notes: + The font selection pins should generate the 8x8 font. + For the MGLS240128TZ only FS1 is available on pin 18. + FS1 must be low to generate the 8x8 font. + + +*/ + +#include "u8g.h" + +#define WIDTH 240 +#define HEIGHT 128 +#define PAGE_HEIGHT 16 + + +/* + http://www.mark-products.com/graphics.htm#240x64%20Pixel%20Format +*/ + +/* text is not used, so settings are not relevant */ +static const uint8_t u8g_dev_t6963_240x128_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* data mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x021, /* set cursor position */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x022, /* set offset */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x040, /* text home */ + + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x041, /* text columns */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x042, /* graphics home */ + + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x043, /* graphics columns */ + + // mode set + // 0x080: Internal CG, OR Mode + // 0x081: Internal CG, EXOR Mode + // 0x083: Internal CG, AND Mode + // 0x088: External CG, OR Mode + // 0x089: External CG, EXOR Mode + // 0x08B: External CG, AND Mode + U8G_ESC_ADR(1), /* instruction mode */ + 0x080, /* mode register: OR Mode, Internal Character Mode */ + + U8G_ESC_ADR(1), /* instruction mode */ + // display mode + // 0x090: Display off + // 0x094: Graphic off, text on, cursor off, blink off + // 0x096: Graphic off, text on, cursor on, blink off + // 0x097: Graphic off, text on, cursor on, blink on + // 0x098: Graphic on, text off, cursor off, blink off + // 0x09a: Graphic on, text off, cursor on, blink off + // ... + // 0x09c: Graphic on, text on, cursor off, blink off + // 0x09f: Graphic on, text on, cursor on, blink on + 0x098, /* mode register: Display Mode, Graphics on, Text off, Cursor off */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x024, /* set adr pointer */ + + + U8G_ESC_DLY(100), /* delay 100 ms */ + + U8G_ESC_ADR(0), /* data mode */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_t6963_240x128_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_t6963_240x128_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint16_t disp_ram_adr; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + disp_ram_adr = WIDTH/8; + disp_ram_adr *= y; + for( i = 0; i < PAGE_HEIGHT; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr&255 ); /* address low byte */ + u8g_WriteByte(u8g, dev, disp_ram_adr>>8 ); /* address hight byte */ + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x024 ); /* set adr ptr */ + + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + + ptr += WIDTH/8; + disp_ram_adr += WIDTH/8; + } + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb16h1_base_fn(u8g, dev, msg, arg); +} + +// U8G_PB_DEV(u8g_dev_t6963_240x128_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_t6963_240x128_fn, U8G_COM_T6963); + +uint8_t u8g_dev_t6963_240x128_2x_bw_buf[WIDTH/8*PAGE_HEIGHT] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_t6963_240x128_2x_bw_pb = { {PAGE_HEIGHT, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_t6963_240x128_2x_bw_buf}; +u8g_dev_t u8g_dev_t6963_240x128_8bit = { u8g_dev_t6963_240x128_fn, &u8g_dev_t6963_240x128_2x_bw_pb, U8G_COM_T6963 }; + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_t6963_240x64.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_t6963_240x64.c new file mode 100644 index 0000000000000000000000000000000000000000..6d209d21204967005b4acff2cb99c81d18fe71a4 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_t6963_240x64.c @@ -0,0 +1,195 @@ +/* + + u8g_dev_t6963_240x64.c + + Tested with Varitronix MGLS240128TZ + + Universal 8bit Graphics Library + + Copyright (c) 2013, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + Application Notes for the MGLS 240x128 + www.baso.no/content/pdf/T6963C_Application.pdf + + Hitachi App Notes: + https://www.sparkfun.com/datasheets/LCD/Monochrome/AN-029-Toshiba_T6963C.pdf + + Notes: + The font selection pins should generate the 8x8 font. + For the MGLS240128TZ only FS1 is available on pin 18. + FS1 must be low to generate the 8x8 font. + + +*/ + +#include "u8g.h" + +#define WIDTH 240 +#define HEIGHT 64 +#define PAGE_HEIGHT 16 + + +/* + http://www.mark-products.com/graphics.htm#240x64%20Pixel%20Format +*/ + +/* text is not used, so settings are not relevant */ +static const uint8_t u8g_dev_t6963_240x64_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* data mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x021, /* set cursor position */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x022, /* set offset */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x040, /* text home */ + + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x041, /* text columns */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x042, /* graphics home */ + + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x043, /* graphics columns */ + + // mode set + // 0x080: Internal CG, OR Mode + // 0x081: Internal CG, EXOR Mode + // 0x083: Internal CG, AND Mode + // 0x088: External CG, OR Mode + // 0x089: External CG, EXOR Mode + // 0x08B: External CG, AND Mode + U8G_ESC_ADR(1), /* instruction mode */ + 0x080, /* mode register: OR Mode, Internal Character Mode */ + + U8G_ESC_ADR(1), /* instruction mode */ + // display mode + // 0x090: Display off + // 0x094: Graphic off, text on, cursor off, blink off + // 0x096: Graphic off, text on, cursor on, blink off + // 0x097: Graphic off, text on, cursor on, blink on + // 0x098: Graphic on, text off, cursor off, blink off + // 0x09a: Graphic on, text off, cursor on, blink off + // ... + // 0x09c: Graphic on, text on, cursor off, blink off + // 0x09f: Graphic on, text on, cursor on, blink on + 0x098, /* mode register: Display Mode, Graphics on, Text off, Cursor off */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x024, /* set adr pointer */ + + + U8G_ESC_DLY(100), /* delay 100 ms */ + + U8G_ESC_ADR(0), /* data mode */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_t6963_240x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_t6963_240x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint16_t disp_ram_adr; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + disp_ram_adr = WIDTH/8; + disp_ram_adr *= y; + for( i = 0; i < PAGE_HEIGHT; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr&255 ); /* address low byte */ + u8g_WriteByte(u8g, dev, disp_ram_adr>>8 ); /* address hight byte */ + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x024 ); /* set adr ptr */ + + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + + ptr += WIDTH/8; + disp_ram_adr += WIDTH/8; + } + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb16h1_base_fn(u8g, dev, msg, arg); +} + +// U8G_PB_DEV(u8g_dev_t6963_240x64_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_t6963_240x64_fn, U8G_COM_T6963); + +uint8_t u8g_dev_t6963_240x64_2x_bw_buf[WIDTH/8*PAGE_HEIGHT] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_t6963_240x64_2x_bw_pb = { {PAGE_HEIGHT, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_t6963_240x64_2x_bw_buf}; +u8g_dev_t u8g_dev_t6963_240x64_8bit = { u8g_dev_t6963_240x64_fn, &u8g_dev_t6963_240x64_2x_bw_pb, U8G_COM_T6963 }; + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_tls8204_84x48.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_tls8204_84x48.c new file mode 100644 index 0000000000000000000000000000000000000000..17689dc4a483cd0122d07820bf18121316d66507 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_tls8204_84x48.c @@ -0,0 +1,115 @@ +/* + + u8g_dev_tls8204_84x48.c + + Display: Nokia 84x48 + + Status: Tested with TLS8204V12 Display by Olimex MOD-LCD3310 + + Contributed: http://code.google.com/p/u8glib/issues/detail?id=126 + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 84 +#define HEIGHT 48 +#define PAGE_HEIGHT 8 + + +static const uint8_t u8g_dev_tls8204_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x021, /* activate chip (PD=0), horizontal increment (V=0), enter extended command set (H=1) */ + 0x006, /* temp. control: b10 = 2 */ + 0x04 | !!((66-1)&(1u<<6)), + 0x40 | ((66-2) & ((1u<<6)-1)), + 0x013, /* bias system 1:48 */ + 0x0c0, /* medium Vop */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00c, /* display on, normal operation */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00d, /* display on, invert */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00c, /* display on, normal */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +uint8_t u8g_dev_tls8204_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_tls8204_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_SetAddress(u8g, dev, 0); /* command mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x020 ); /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set X address */ + u8g_WriteByte(u8g, dev, 0x040 | pb->p.page); /* set Y address */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + /* the contrast adjustment does not work, needs to be analysed */ + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x021); /* command mode, extended function set */ + u8g_WriteByte(u8g, dev, 0x080 | ( (*(uint8_t *)arg) >> 1 ) ); + u8g_WriteByte(u8g, dev, 0x020); /* command mode, extended function set */ + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + + +U8G_PB_DEV(u8g_dev_tls8204_84x48_sw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_tls8204_fn, U8G_COM_SW_SPI); + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_uc1610_dogxl160.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_uc1610_dogxl160.c new file mode 100644 index 0000000000000000000000000000000000000000..b7111d5c894569a7e18e96ea9c1633ced854e069 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_uc1610_dogxl160.c @@ -0,0 +1,290 @@ +/* + + u8g_dev_uc1610_dogxl160.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 160 +#define HEIGHT 104 + +static const uint8_t u8g_dev_uc1610_dogxl160_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x0f1, /* set display height-1 */ + 0x067, /* */ + 0x0c0, /* SEG & COM normal */ + 0x040, /* set display start line */ + 0x050, /* */ + 0x02b, /* set panelloading */ + 0x0eb, /* set bias 1/2 */ + 0x081, /* set contrast */ + 0x05f, /* */ + 0x089, /* set auto increment */ + 0x0a6, /* normal pixel mode */ + 0x0d3, /* 0xd3=40% RMS separation for gray levels */ + 0x0af, /* display on */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565, UC1610 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_uc1610_dogxl160_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 0 */ + U8G_ESC_END /* end of sequence */ +}; + +static uint8_t u8g_dev_1to2(uint8_t n) +{ + register uint8_t a,b,c; + a = n; + a &= 1; + n <<= 1; + b = n; + b &= 4; + n <<= 1; + c = n; + c &= 16; + n <<= 1; + n &= 64; + n |= a; + n |= b; + n |= c; + n |= n << 1; + return n; +} + +uint8_t u8g_dev_uc1610_dogxl160_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + int i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*2) ); /* select current page 1/2 (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + for( i = 0; i < WIDTH; i++ ) + { + u8g_WriteByte(u8g, dev, u8g_dev_1to2( ((uint8_t *)(pb->buf))[i] ) ); + } + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*2+1) ); /* select current page 2/2 (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + for( i = 0; i < WIDTH; i++ ) + { + u8g_WriteByte(u8g, dev, u8g_dev_1to2( ((uint8_t *)(pb->buf))[i] >> 4 ) ); + } + + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_uc1610_dogxl160_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page) ); /* select current page (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v2_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_uc1610_dogxl160_2x_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + int i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*4) ); /* select current page 1/2 (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + for( i = 0; i < WIDTH; i++ ) + { + u8g_WriteByte(u8g, dev, u8g_dev_1to2( ((uint8_t *)(pb->buf))[i] ) ); + } + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*4+1) ); /* select current page 2/2 (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + for( i = 0; i < WIDTH; i++ ) + { + u8g_WriteByte(u8g, dev, u8g_dev_1to2( ((uint8_t *)(pb->buf))[i] >> 4 ) ); + } + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*4+2) ); /* select current page 1/2 (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + for( i = 0; i < WIDTH; i++ ) + { + u8g_WriteByte(u8g, dev, u8g_dev_1to2( ((uint8_t *)(pb->buf+WIDTH))[i] ) ); + } + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*4+3) ); /* select current page 2/2 (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + for( i = 0; i < WIDTH; i++ ) + { + u8g_WriteByte(u8g, dev, u8g_dev_1to2( ((uint8_t *)(pb->buf+WIDTH))[i] >> 4 ) ); + } + + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb16v1_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_uc1610_dogxl160_2x_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*2) ); /* select current page (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_WriteSequence(u8g, dev, WIDTH, pb->buf) == 0 ) + return 0; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*2+1) ); /* select current page (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_WriteSequence(u8g, dev, WIDTH, pb->buf+WIDTH) == 0 ) + return 0; + + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb16v2_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_uc1610_dogxl160_bw_sw_spi, WIDTH, HEIGHT, 8, u8g_dev_uc1610_dogxl160_bw_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_uc1610_dogxl160_bw_hw_spi, WIDTH, HEIGHT, 8, u8g_dev_uc1610_dogxl160_bw_fn, U8G_COM_HW_SPI); + +U8G_PB_DEV(u8g_dev_uc1610_dogxl160_gr_sw_spi, WIDTH, HEIGHT, 4, u8g_dev_uc1610_dogxl160_gr_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_uc1610_dogxl160_gr_hw_spi, WIDTH, HEIGHT, 4, u8g_dev_uc1610_dogxl160_gr_fn, U8G_COM_HW_SPI); + +uint8_t u8g_dev_uc1610_dogxl160_2x_bw_buf[WIDTH*2] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_uc1610_dogxl160_2x_bw_pb = { {16, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_uc1610_dogxl160_2x_bw_buf}; +u8g_dev_t u8g_dev_uc1610_dogxl160_2x_bw_sw_spi = { u8g_dev_uc1610_dogxl160_2x_bw_fn, &u8g_dev_uc1610_dogxl160_2x_bw_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_uc1610_dogxl160_2x_bw_hw_spi = { u8g_dev_uc1610_dogxl160_2x_bw_fn, &u8g_dev_uc1610_dogxl160_2x_bw_pb, U8G_COM_HW_SPI }; + +uint8_t u8g_dev_uc1610_dogxl160_2x_gr_buf[WIDTH*2] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_uc1610_dogxl160_2x_gr_pb = { {8, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_uc1610_dogxl160_2x_gr_buf}; +u8g_dev_t u8g_dev_uc1610_dogxl160_2x_gr_sw_spi = { u8g_dev_uc1610_dogxl160_2x_gr_fn, &u8g_dev_uc1610_dogxl160_2x_gr_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_uc1610_dogxl160_2x_gr_hw_spi = { u8g_dev_uc1610_dogxl160_2x_gr_fn, &u8g_dev_uc1610_dogxl160_2x_gr_pb, U8G_COM_HW_SPI }; diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_uc1701_dogs102.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_uc1701_dogs102.c new file mode 100644 index 0000000000000000000000000000000000000000..853d8c0344af24da74461ce6f7d1927b6e46d8f5 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_uc1701_dogs102.c @@ -0,0 +1,113 @@ +/* + + u8g_dev_uc1701_dogs102.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 102 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +static const uint8_t u8g_dev_dogs102_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x040, /* set display start line to 0 */ + 0x0a1, /* ADC set to reverse */ + 0x0c0, /* common output mode */ + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + 0x027, /* regulator, booster and follower */ + 0x081, /* set contrast */ + 0x00e, /* contrast value, EA default: 0x010, previous value for S102: 0x0e */ + 0x0fa, /* Set Temp compensation */ + 0x090, /* 0.11 deg/c WP Off WC Off*/ + 0x0a4, /* normal display */ + 0x0af, /* display on */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565, UC1610 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_dogs102_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 0 */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_dogs102_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_dogs102_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_dogs102_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_uc1701_dogs102_sw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_dogs102_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_uc1701_dogs102_hw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_dogs102_fn, U8G_COM_HW_SPI); + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_uc1701_mini12864.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_uc1701_mini12864.c new file mode 100644 index 0000000000000000000000000000000000000000..55b2f9b71f660de695af724328e0e9d915959334 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_dev_uc1701_mini12864.c @@ -0,0 +1,114 @@ +/* + + u8g_dev_uc1701_mini12864.c (dealextreme) + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +static const uint8_t u8g_dev_uc1701_mini12864_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x040, /* set display start line to 0 */ + 0x0a0, /* ADC set to reverse */ + 0x0c8, /* common output mode */ + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + 0x0f8, /* set booster ratio to */ + 0x000, /* 4x */ + 0x023, /* set V0 voltage resistor ratio to large */ + 0x081, /* set contrast */ + 0x027, /* contrast value */ + 0x0ac, /* indicator */ + 0x000, /* disable */ + 0x0af, /* display on */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_uc1701_mini12864_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 4 */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_uc1701_mini12864_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1701_mini12864_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1701_mini12864_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_uc1701_mini12864_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_uc1701_mini12864_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_uc1701_mini12864_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_uc1701_mini12864_fn, U8G_COM_HW_SPI); diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_ellipse.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_ellipse.c new file mode 100644 index 0000000000000000000000000000000000000000..6c35fdf2371552dd9d75a7796a3de488451e8753 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_ellipse.c @@ -0,0 +1,100 @@ +/* + + u8g_ellipse.c + + Utility to draw empty and filled ellipses. + + Universal 8bit Graphics Library + + Copyright (c) 2011, bjthom@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Addition to the U8G Library as of 02/29/12 + Adapted from Bresenham's Algorithm and the following websites: + http://free.pages.at/easyfilter/bresenham.html + http://homepage.smc.edu/kennedy_john/belipse.pdf + +*/ + +#include "u8g.h" + + +#ifdef WORK_IN_PROGRESS + +void u8g_DrawEllipseRect(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t x1, u8g_uint_t y1) +{ + int a = abs(x1 - x0); + int b = abs(y1 - y0); //get diameters + int b1 = b&1; + long dx = 4*(1-a)*b*b; + long dy = 4*(b1+1)*a*a; + long err = dx+dy+b1*a*a; + long e2; + + if (x0 > x1) { x0 = x1; x1 += a; } + if (y0 > y1) { y0 = y1; } + y0 += (b+1)/2; + y1 = y0-b1; + a *= 8*a; + b1 = 8*b*b; + + do { + u8g_DrawPixel(u8g, x1, y0); + u8g_DrawPixel(u8g, x0, y0); + u8g_DrawPixel(u8g, x0, y1); + u8g_DrawPixel(u8g, x1, y1); + e2 = 2*err; + if (e2 >= dx) { + x0++; + x1--; + err += dx += b1; + } + if (e2 <= dy) { + y0++; + y1--; + err += dy += a; + } + } while (x0 <= x1); + + while (y0-y1 < b) { + u8g_DrawPixel(u8g, x0-1, y0); + u8g_DrawPixel(u8g, x1+1, y0++); + u8g_DrawPixel(u8g, x0-1, y1); + u8g_DrawPixel(u8g, x1+1, y1--); + } +} + +void u8g_DrawEllipse(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t xr, u8g_uint_t yr) +{ + u8g_DrawPixel(u8g, x0, y0+yr); + u8g_DrawPixel(u8g, x0, y0-yr); + u8g_DrawPixel(u8g, x0+xr, y0); + u8g_DrawPixel(u8g, x0-xr, y0); +} + +#endif + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_font.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_font.c new file mode 100644 index 0000000000000000000000000000000000000000..bfdc0b28a3a5f3645bbf26efd931a8b2eac09163 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_font.c @@ -0,0 +1,1422 @@ +/* + + u8g_font.c + + U8G Font High Level Interface + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +/* font api */ + +/* pointer to the start adress of the glyph, points to progmem area */ +typedef void * u8g_glyph_t; + +/* size of the font data structure, there is no struct or class... */ +#define U8G_FONT_DATA_STRUCT_SIZE 17 + +/* + ... instead the fields of the font data structure are accessed directly by offset + font information + offset + 0 font format + 1 FONTBOUNDINGBOX width unsigned + 2 FONTBOUNDINGBOX height unsigned + 3 FONTBOUNDINGBOX x-offset signed + 4 FONTBOUNDINGBOX y-offset signed + 5 capital A height unsigned + 6 start 'A' + 8 start 'a' + 10 encoding start + 11 encoding end + 12 descent 'g' negative: below baseline + 13 font max ascent + 14 font min decent negative: below baseline + 15 font xascent + 16 font xdecent negative: below baseline + +*/ + +/* use case: What is the width and the height of the minimal box into which string s fints? */ +void u8g_font_GetStrSize(const void *font, const char *s, u8g_uint_t *width, u8g_uint_t *height); +void u8g_font_GetStrSizeP(const void *font, const char *s, u8g_uint_t *width, u8g_uint_t *height); + +/* use case: lower left edge of a minimal box is known, what is the correct x, y position for the string draw procedure */ +void u8g_font_AdjustXYToDraw(const void *font, const char *s, u8g_uint_t *x, u8g_uint_t *y); +void u8g_font_AdjustXYToDrawP(const void *font, const char *s, u8g_uint_t *x, u8g_uint_t *y); + +/* use case: Baseline origin known, return minimal box */ +void u8g_font_GetStrMinBox(u8g_t *u8g, const void *font, const char *s, u8g_uint_t *x, u8g_uint_t *y, u8g_uint_t *width, u8g_uint_t *height); + +/* procedures */ + +/*========================================================================*/ +/* low level byte and word access */ + +/* removed NOINLINE, because it leads to smaller code, might also be faster */ +//static uint8_t u8g_font_get_byte(const u8g_fntpgm_uint8_t *font, uint8_t offset) U8G_NOINLINE; +static uint8_t u8g_font_get_byte(const u8g_fntpgm_uint8_t *font, uint8_t offset) +{ + font += offset; + return u8g_pgm_read( (u8g_pgm_uint8_t *)font ); +} + +static uint16_t u8g_font_get_word(const u8g_fntpgm_uint8_t *font, uint8_t offset) U8G_NOINLINE; +static uint16_t u8g_font_get_word(const u8g_fntpgm_uint8_t *font, uint8_t offset) +{ + uint16_t pos; + font += offset; + pos = u8g_pgm_read( (u8g_pgm_uint8_t *)font ); + font++; + pos <<= 8; + pos += u8g_pgm_read( (u8g_pgm_uint8_t *)font); + return pos; +} + +/*========================================================================*/ +/* direct access on the font */ + +static uint8_t u8g_font_GetFormat(const u8g_fntpgm_uint8_t *font) U8G_NOINLINE; +static uint8_t u8g_font_GetFormat(const u8g_fntpgm_uint8_t *font) +{ + return u8g_font_get_byte(font, 0); +} + +static uint8_t u8g_font_GetFontGlyphStructureSize(const u8g_fntpgm_uint8_t *font) U8G_NOINLINE; +static uint8_t u8g_font_GetFontGlyphStructureSize(const u8g_fntpgm_uint8_t *font) +{ + switch(u8g_font_GetFormat(font)) + { + case 0: return 6; + case 1: return 3; + } + return 3; +} + +static uint8_t u8g_font_GetBBXWidth(const void *font) +{ + return u8g_font_get_byte(font, 1); +} + +static uint8_t u8g_font_GetBBXHeight(const void *font) +{ + return u8g_font_get_byte(font, 2); +} + +static int8_t u8g_font_GetBBXOffX(const void *font) +{ + return u8g_font_get_byte(font, 3); +} + +static int8_t u8g_font_GetBBXOffY(const void *font) +{ + return u8g_font_get_byte(font, 4); +} + +uint8_t u8g_font_GetCapitalAHeight(const void *font) +{ + return u8g_font_get_byte(font, 5); +} + +uint16_t u8g_font_GetEncoding65Pos(const void *font) U8G_NOINLINE; +uint16_t u8g_font_GetEncoding65Pos(const void *font) +{ + return u8g_font_get_word(font, 6); +} + +uint16_t u8g_font_GetEncoding97Pos(const void *font) U8G_NOINLINE; +uint16_t u8g_font_GetEncoding97Pos(const void *font) +{ + return u8g_font_get_word(font, 8); +} + +uint8_t u8g_font_GetFontStartEncoding(const void *font) +{ + return u8g_font_get_byte(font, 10); +} + +uint8_t u8g_font_GetFontEndEncoding(const void *font) +{ + return u8g_font_get_byte(font, 11); +} + +int8_t u8g_font_GetLowerGDescent(const void *font) +{ + return u8g_font_get_byte(font, 12); +} + +int8_t u8g_font_GetFontAscent(const void *font) +{ + return u8g_font_get_byte(font, 13); +} + +int8_t u8g_font_GetFontDescent(const void *font) +{ + return u8g_font_get_byte(font, 14); +} + +int8_t u8g_font_GetFontXAscent(const void *font) +{ + return u8g_font_get_byte(font, 15); +} + +int8_t u8g_font_GetFontXDescent(const void *font) +{ + return u8g_font_get_byte(font, 16); +} + + +/* return the data start for a font and the glyph pointer */ +static uint8_t *u8g_font_GetGlyphDataStart(const void *font, u8g_glyph_t g) +{ + return ((u8g_fntpgm_uint8_t *)g) + u8g_font_GetFontGlyphStructureSize(font); +} + +/* calculate the overall length of the font, only used to create the picture for the google wiki */ +size_t u8g_font_GetSize(const void *font) +{ + uint8_t *p = (uint8_t *)(font); + uint8_t font_format = u8g_font_GetFormat(font); + uint8_t data_structure_size = u8g_font_GetFontGlyphStructureSize(font); + uint8_t start, end; + uint8_t i; + uint8_t mask = 255; + + start = u8g_font_GetFontStartEncoding(font); + end = u8g_font_GetFontEndEncoding(font); + + if ( font_format == 1 ) + mask = 15; + + p += U8G_FONT_DATA_STRUCT_SIZE; /* skip font general information */ + + i = start; + for(;;) + { + if ( u8g_pgm_read((u8g_pgm_uint8_t *)(p)) == 255 ) + { + p += 1; + } + else + { + p += u8g_pgm_read( ((u8g_pgm_uint8_t *)(p)) + 2 ) & mask; + p += data_structure_size; + } + if ( i == end ) + break; + i++; + } + + return p - (uint8_t *)font; +} + +/*========================================================================*/ +/* u8g interface, font access */ + +uint8_t u8g_GetFontBBXWidth(u8g_t *u8g) +{ + return u8g_font_GetBBXWidth(u8g->font); +} + +uint8_t u8g_GetFontBBXHeight(u8g_t *u8g) +{ + return u8g_font_GetBBXHeight(u8g->font); +} + +int8_t u8g_GetFontBBXOffX(u8g_t *u8g) U8G_NOINLINE; +int8_t u8g_GetFontBBXOffX(u8g_t *u8g) +{ + return u8g_font_GetBBXOffX(u8g->font); +} + +int8_t u8g_GetFontBBXOffY(u8g_t *u8g) U8G_NOINLINE; +int8_t u8g_GetFontBBXOffY(u8g_t *u8g) +{ + return u8g_font_GetBBXOffY(u8g->font); +} + +uint8_t u8g_GetFontCapitalAHeight(u8g_t *u8g) U8G_NOINLINE; +uint8_t u8g_GetFontCapitalAHeight(u8g_t *u8g) +{ + return u8g_font_GetCapitalAHeight(u8g->font); +} + +/*========================================================================*/ +/* glyph handling */ + +static void u8g_CopyGlyphDataToCache(u8g_t *u8g, u8g_glyph_t g) +{ + uint8_t tmp; + switch( u8g_font_GetFormat(u8g->font) ) + { + case 0: + /* + format 0 + glyph information + offset + 0 BBX width unsigned + 1 BBX height unsigned + 2 data size unsigned (BBX width + 7)/8 * BBX height + 3 DWIDTH signed + 4 BBX xoffset signed + 5 BBX yoffset signed + byte 0 == 255 indicates empty glyph + */ + u8g->glyph_width = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 0 ); + u8g->glyph_height = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 1 ); + u8g->glyph_dx = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 3 ); + u8g->glyph_x = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 4 ); + u8g->glyph_y = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 5 ); + break; + case 1: + default: + /* +format 1 + 0 BBX xoffset signed --> upper 4 Bit + 0 BBX yoffset signed --> lower 4 Bit + 1 BBX width unsigned --> upper 4 Bit + 1 BBX height unsigned --> lower 4 Bit + 2 data size unsigned -(BBX width + 7)/8 * BBX height --> lower 4 Bit + 2 DWIDTH signed --> upper 4 Bit + byte 0 == 255 indicates empty glyph + */ + + tmp = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 0 ); + u8g->glyph_y = tmp & 15; + u8g->glyph_y-=2; + tmp >>= 4; + u8g->glyph_x = tmp; + + tmp = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 1 ); + u8g->glyph_height = tmp & 15; + tmp >>= 4; + u8g->glyph_width = tmp; + + tmp = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 2 ); + tmp >>= 4; + u8g->glyph_dx = tmp; + + + break; + } +} + +//void u8g_FillEmptyGlyphCache(u8g_t *u8g) U8G_NOINLINE; +static void u8g_FillEmptyGlyphCache(u8g_t *u8g) +{ + u8g->glyph_dx = 0; + u8g->glyph_width = 0; + u8g->glyph_height = 0; + u8g->glyph_x = 0; + u8g->glyph_y = 0; +} + +/* + Find (with some speed optimization) and return a pointer to the glyph data structure + Also uncompress (format 1) and copy the content of the data structure to the u8g structure +*/ +u8g_glyph_t u8g_GetGlyph(u8g_t *u8g, uint8_t requested_encoding) +{ + uint8_t *p = (uint8_t *)(u8g->font); + uint8_t font_format = u8g_font_GetFormat(u8g->font); + uint8_t data_structure_size = u8g_font_GetFontGlyphStructureSize(u8g->font); + uint8_t start, end; + uint16_t pos; + uint8_t i; + uint8_t mask = 255; + + if ( font_format == 1 ) + mask = 15; + + start = u8g_font_GetFontStartEncoding(u8g->font); + end = u8g_font_GetFontEndEncoding(u8g->font); + + pos = u8g_font_GetEncoding97Pos(u8g->font); + if ( requested_encoding >= 97 && pos > 0 ) + { + p+= pos; + start = 97; + } + else + { + pos = u8g_font_GetEncoding65Pos(u8g->font); + if ( requested_encoding >= 65 && pos > 0 ) + { + p+= pos; + start = 65; + } + else + p += U8G_FONT_DATA_STRUCT_SIZE; /* skip font general information */ + } + + if ( requested_encoding > end ) + { + u8g_FillEmptyGlyphCache(u8g); + return NULL; /* not found */ + } + + i = start; + if ( i <= end ) + { + for(;;) + { + if ( u8g_pgm_read((u8g_pgm_uint8_t *)(p)) == 255 ) + { + p += 1; + } + else + { + if ( i == requested_encoding ) + { + u8g_CopyGlyphDataToCache(u8g, p); + return p; + } + p += u8g_pgm_read( ((u8g_pgm_uint8_t *)(p)) + 2 ) & mask; + p += data_structure_size; + } + if ( i == end ) + break; + i++; + } + } + + u8g_FillEmptyGlyphCache(u8g); + + return NULL; +} + +uint8_t u8g_IsGlyph(u8g_t *u8g, uint8_t requested_encoding) +{ + if ( u8g_GetGlyph(u8g, requested_encoding) != NULL ) + return 1; + return 0; +} + +int8_t u8g_GetGlyphDeltaX(u8g_t *u8g, uint8_t requested_encoding) +{ + if ( u8g_GetGlyph(u8g, requested_encoding) == NULL ) + return 0; /* should never happen, so return something */ + return u8g->glyph_dx; +} + + +/*========================================================================*/ +/* glyph drawing procedures */ + +#ifdef OBSOLETE +/* + Draw a glyph + x,y: left baseline position of the glyph +*/ +int8_t u8g_DrawGlyphDir(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t encoding) +{ + u8g_glyph_t g; + uint8_t w, h, i, j; + const u8g_pgm_uint8_t *data; + uint8_t bytes_per_line; + u8g_uint_t ix, iy; + + g = u8g_GetGlyph(u8g, encoding); + if ( g == NULL ) + return 0; + w = u8g->glyph_width; + h = u8g->glyph_height; + + bytes_per_line = w; + bytes_per_line += 7; + bytes_per_line /= 8; + + data = u8g_font_GetGlyphDataStart(u8g->font, g); + + switch(dir) + { + case 0: + x += u8g->glyph_x; + y -= u8g->glyph_y; + y--; + //u8g_DrawFrame(u8g, x, y-h+1, w, h); + if ( u8g_IsBBXIntersection(u8g, x, y-h+1, w, h) == 0 ) + return u8g->glyph_dx; + + iy = y; + iy -= h; + iy++; + + for( j = 0; j < h; j++ ) + { + ix = x; + for( i = 0; i < bytes_per_line; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, dir, u8g_pgm_read(data)); + data++; + ix+=8; + } + iy++; + } + break; + case 1: + x += u8g->glyph_y; + x++; + y += u8g->glyph_x; + //printf("enc %d, dir %d, x %d, y %d, w %d, h %d\n", encoding, dir, x, y, w, h); + //u8g_DrawFrame(u8g, x, y, h, w); + if ( u8g_IsBBXIntersection(u8g, x, y, h, w) == 0 ) + return u8g->glyph_dx; + + ix = x; + ix += h; + ix--; + for( j = 0; j < h; j++ ) + { + iy = y; + for( i = 0; i < bytes_per_line; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, dir, u8g_pgm_read(data)); + data++; + iy+=8; + } + ix--; + } + break; + case 2: + x -= u8g->glyph_x; + y += u8g->glyph_y; + y++; + if ( u8g_IsBBXIntersection(u8g, x-w-1, y, w, h) == 0 ) + return u8g->glyph_dx; + + iy = y; + iy += h; + iy--; + for( j = 0; j < h; j++ ) + { + ix = x; + for( i = 0; i < bytes_per_line; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, dir, u8g_pgm_read(data)); + data++; + ix-=8; + } + iy--; + } + break; + case 3: + x -= u8g->glyph_y; + x--; + y -= u8g->glyph_x; + + if ( u8g_IsBBXIntersection(u8g, x-h-1, y-w-1, h, w) == 0 ) + return u8g->glyph_dx; + + ix = x; + ix -= h; + ix++; + + for( j = 0; j < h; j++ ) + { + iy = y; + for( i = 0; i < bytes_per_line; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, dir, u8g_pgm_read(data)); + data++; + iy-=8; + } + ix++; + } + break; + } + return u8g->glyph_dx; +} +#endif + +int8_t u8g_draw_glyph(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + const u8g_pgm_uint8_t *data; + uint8_t w, h; + uint8_t i, j; + u8g_uint_t ix, iy; + + { + u8g_glyph_t g = u8g_GetGlyph(u8g, encoding); + if ( g == NULL ) + return 0; + data = u8g_font_GetGlyphDataStart(u8g->font, g); + } + + w = u8g->glyph_width; + h = u8g->glyph_height; + + x += u8g->glyph_x; + y -= u8g->glyph_y; + y--; + + if ( u8g_IsBBXIntersection(u8g, x, y-h+1, w, h) == 0 ) + return u8g->glyph_dx; + + /* now, w is reused as bytes per line */ + w += 7; + w /= 8; + + iy = y; + iy -= h; + iy++; + + for( j = 0; j < h; j++ ) + { + ix = x; + for( i = 0; i < w; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, 0, u8g_pgm_read(data)); + data++; + ix+=8; + } + iy++; + } + return u8g->glyph_dx; +} + +int8_t u8g_DrawGlyph(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + y += u8g->font_calc_vref(u8g); + return u8g_draw_glyph(u8g, x, y, encoding); +} + +int8_t u8g_draw_glyph90(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + const u8g_pgm_uint8_t *data; + uint8_t w, h; + uint8_t i, j; + u8g_uint_t ix, iy; + + { + u8g_glyph_t g = u8g_GetGlyph(u8g, encoding); + if ( g == NULL ) + return 0; + data = u8g_font_GetGlyphDataStart(u8g->font, g); + } + + w = u8g->glyph_width; + h = u8g->glyph_height; + + x += u8g->glyph_y; + x++; + y += u8g->glyph_x; + + if ( u8g_IsBBXIntersection(u8g, x, y, h, w) == 0 ) + return u8g->glyph_dx; + + /* now, w is reused as bytes per line */ + w += 7; + w /= 8; + + ix = x; + ix += h; + ix--; + for( j = 0; j < h; j++ ) + { + iy = y; + for( i = 0; i < w; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, 1, u8g_pgm_read(data)); + data++; + iy+=8; + } + ix--; + } + return u8g->glyph_dx; +} + +int8_t u8g_DrawGlyph90(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + x -= u8g->font_calc_vref(u8g); + return u8g_draw_glyph90(u8g, x, y, encoding); +} + + +int8_t u8g_draw_glyph180(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + const u8g_pgm_uint8_t *data; + uint8_t w, h; + uint8_t i, j; + u8g_uint_t ix, iy; + + { + u8g_glyph_t g = u8g_GetGlyph(u8g, encoding); + if ( g == NULL ) + return 0; + data = u8g_font_GetGlyphDataStart(u8g->font, g); + } + + w = u8g->glyph_width; + h = u8g->glyph_height; + + x -= u8g->glyph_x; + y += u8g->glyph_y; + y++; + + if ( u8g_IsBBXIntersection(u8g, x-(w-1), y, w, h) == 0 ) + return u8g->glyph_dx; + + /* now, w is reused as bytes per line */ + w += 7; + w /= 8; + + iy = y; + iy += h; + iy--; + for( j = 0; j < h; j++ ) + { + ix = x; + for( i = 0; i < w; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, 2, u8g_pgm_read(data)); + data++; + ix-=8; + } + iy--; + } + return u8g->glyph_dx; +} + +int8_t u8g_DrawGlyph180(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + y -= u8g->font_calc_vref(u8g); + return u8g_draw_glyph180(u8g, x, y, encoding); +} + + +int8_t u8g_draw_glyph270(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + const u8g_pgm_uint8_t *data; + uint8_t w, h; + uint8_t i, j; + u8g_uint_t ix, iy; + + { + u8g_glyph_t g = u8g_GetGlyph(u8g, encoding); + if ( g == NULL ) + return 0; + data = u8g_font_GetGlyphDataStart(u8g->font, g); + } + + w = u8g->glyph_width; + h = u8g->glyph_height; + + x -= u8g->glyph_y; + x--; + y -= u8g->glyph_x; + + if ( u8g_IsBBXIntersection(u8g, x-(h-1), y-(w-1), h, w) == 0 ) + return u8g->glyph_dx; + + + /* now, w is reused as bytes per line */ + w += 7; + w /= 8; + + ix = x; + ix -= h; + ix++; + + for( j = 0; j < h; j++ ) + { + iy = y; + for( i = 0; i < w; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, 3, u8g_pgm_read(data)); + data++; + iy-=8; + } + ix++; + } + return u8g->glyph_dx; +} + +int8_t u8g_DrawGlyph270(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + x += u8g->font_calc_vref(u8g); + return u8g_draw_glyph270(u8g, x, y, encoding); +} + + + +#ifdef OBSOLETE +/* + Draw a glyph + x,y: lower left corner of the font bounding box +*/ +int8_t u8g_DrawGlyphFontBBX(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t encoding) +{ + /* TODO: apply "dir" */ + x -= u8g_GetFontBBXOffX(u8g); + y += u8g_GetFontBBXOffY(u8g); + return u8g_DrawGlyphDir(u8g, x, y, dir, encoding); +} +#endif + +/*========================================================================*/ +/* string drawing procedures */ + + +u8g_uint_t u8g_DrawStr(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s) +{ + u8g_uint_t t = 0; + int8_t d; + + //u8g_uint_t u8g_GetStrWidth(u8g, s); + //u8g_font_GetFontAscent(u8g->font)-u8g_font_GetFontDescent(u8g->font); + + y += u8g->font_calc_vref(u8g); + + while( *s != '\0' ) + { + d = u8g_draw_glyph(u8g, x, y, *s); + x += d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStr90(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s) +{ + u8g_uint_t t = 0; + int8_t d; + + x -= u8g->font_calc_vref(u8g); + + while( *s != '\0' ) + { + d = u8g_draw_glyph90(u8g, x, y, *s); + y += d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStr180(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s) +{ + u8g_uint_t t = 0; + int8_t d; + + y -= u8g->font_calc_vref(u8g); + + while( *s != '\0' ) + { + d = u8g_draw_glyph180(u8g, x, y, *s); + x -= d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStr270(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s) +{ + u8g_uint_t t = 0; + int8_t d; + + x += u8g->font_calc_vref(u8g); + + while( *s != '\0' ) + { + d = u8g_draw_glyph270(u8g, x, y, *s); + y -= d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStrDir(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, const char *s) +{ + switch(dir) + { + case 0: + return u8g_DrawStr(u8g, x, y, s); + case 1: + return u8g_DrawStr90(u8g, x, y, s); + case 2: + return u8g_DrawStr180(u8g, x, y, s); + case 3: + return u8g_DrawStr270(u8g, x, y, s); + } + return 0; +} + +u8g_uint_t u8g_DrawStrP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) +{ + u8g_uint_t t = 0; + int8_t d; + uint8_t c; + + y += u8g->font_calc_vref(u8g); + + for(;;) + { + c = u8g_pgm_read(s); + if ( c == '\0' ) + break; + d = u8g_draw_glyph(u8g, x, y, c); + x += d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStr90P(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) +{ + u8g_uint_t t = 0; + int8_t d; + + x -= u8g->font_calc_vref(u8g); + + while( *s != '\0' ) + { + d = u8g_DrawGlyph90(u8g, x, y, u8g_pgm_read(s)); + y += d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStr180P(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) +{ + u8g_uint_t t = 0; + int8_t d; + + y -= u8g->font_calc_vref(u8g); + + while( *s != '\0' ) + { + d = u8g_DrawGlyph180(u8g, x, y, u8g_pgm_read(s)); + x -= d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStr270P(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) +{ + u8g_uint_t t = 0; + int8_t d; + + x += u8g->font_calc_vref(u8g); + + while( *s != '\0' ) + { + d = u8g_DrawGlyph270(u8g, x, y, u8g_pgm_read(s)); + y -= d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStrFontBBX(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, const char *s) +{ + x -= u8g_GetFontBBXOffX(u8g); + y += u8g_GetFontBBXOffY(u8g); + return u8g_DrawStrDir(u8g, x, y, dir, s); +} + +/* still used by picgen.c, dir argument is ignored */ +int8_t u8g_DrawGlyphFontBBX(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t encoding) +{ + x -= u8g_GetFontBBXOffX(u8g); + y += u8g_GetFontBBXOffY(u8g); + u8g_draw_glyph(u8g, x, y, encoding); +} + + +/*========================================================================*/ +/* set ascent/descent for reference point calculation */ + +void u8g_UpdateRefHeight(u8g_t *u8g) +{ + uint16_t ls; + if ( u8g->font == NULL ) + return; + if ( u8g->font_height_mode == U8G_FONT_HEIGHT_MODE_TEXT ) + { + u8g->font_ref_ascent = u8g_font_GetCapitalAHeight(u8g->font); + u8g->font_ref_descent = u8g_font_GetLowerGDescent(u8g->font); + } + else if ( u8g->font_height_mode == U8G_FONT_HEIGHT_MODE_XTEXT ) + { + u8g->font_ref_ascent = u8g_font_GetFontXAscent(u8g->font); + u8g->font_ref_descent = u8g_font_GetFontXDescent(u8g->font); + } + else + { + u8g->font_ref_ascent = u8g_font_GetFontAscent(u8g->font); + u8g->font_ref_descent = u8g_font_GetFontDescent(u8g->font); + } + + ls = u8g->font_ref_ascent - u8g->font_ref_descent; + if ( u8g->font_line_spacing_factor != 64 ) + { + ls &= 255; + ls *= u8g->font_line_spacing_factor; + ls >>= 6; + } + u8g->line_spacing = ls; +} + +void u8g_SetFontRefHeightText(u8g_t *u8g) +{ + u8g->font_height_mode = U8G_FONT_HEIGHT_MODE_TEXT; + u8g_UpdateRefHeight(u8g); +} + +void u8g_SetFontRefHeightExtendedText(u8g_t *u8g) +{ + u8g->font_height_mode = U8G_FONT_HEIGHT_MODE_XTEXT; + u8g_UpdateRefHeight(u8g); +} + + +void u8g_SetFontRefHeightAll(u8g_t *u8g) +{ + u8g->font_height_mode = U8G_FONT_HEIGHT_MODE_ALL; + u8g_UpdateRefHeight(u8g); +} + +/* factor = 64: linespaceing == ascent and descent */ +void u8g_SetFontLineSpacingFactor(u8g_t *u8g, uint8_t factor) +{ + u8g->font_line_spacing_factor = factor; + u8g_UpdateRefHeight(u8g); +} + + + +/*========================================================================*/ +/* callback procedures to correct the y position */ + +u8g_uint_t u8g_font_calc_vref_font(u8g_t *u8g) +{ + return 0; +} + +void u8g_SetFontPosBaseline(u8g_t *u8g) +{ + u8g->font_calc_vref = u8g_font_calc_vref_font; +} + + +u8g_uint_t u8g_font_calc_vref_bottom(u8g_t *u8g) +{ + /* y += (u8g_uint_t)(u8g_int_t)(u8g->font_ref_descent); */ + return (u8g_uint_t)(u8g_int_t)(u8g->font_ref_descent); +} + +void u8g_SetFontPosBottom(u8g_t *u8g) +{ + u8g->font_calc_vref = u8g_font_calc_vref_bottom; +} + +u8g_uint_t u8g_font_calc_vref_top(u8g_t *u8g) +{ + u8g_uint_t tmp; + /* reference pos is one pixel above the upper edge of the reference glyph */ + + /* + y += (u8g_uint_t)(u8g_int_t)(u8g->font_ref_ascent); + y++; + */ + tmp = (u8g_uint_t)(u8g_int_t)(u8g->font_ref_ascent); + tmp++; + return tmp; +} + +void u8g_SetFontPosTop(u8g_t *u8g) +{ + u8g->font_calc_vref = u8g_font_calc_vref_top; +} + +u8g_uint_t u8g_font_calc_vref_center(u8g_t *u8g) +{ + int8_t tmp; + tmp = u8g->font_ref_ascent; + tmp -= u8g->font_ref_descent; + tmp /= 2; + tmp += u8g->font_ref_descent; + /* y += (u8g_uint_t)(u8g_int_t)(tmp); */ + return tmp; +} + +void u8g_SetFontPosCenter(u8g_t *u8g) +{ + u8g->font_calc_vref = u8g_font_calc_vref_center; +} + +/*========================================================================*/ +/* string pixel width calculation */ + +char u8g_font_get_char(const void *s) +{ + return *(const char *)(s); +} + +char u8g_font_get_charP(const void *s) +{ + return u8g_pgm_read(s); +} + +typedef char (*u8g_font_get_char_fn)(const void *s); + + +u8g_uint_t u8g_font_calc_str_pixel_width(u8g_t *u8g, const char *s, u8g_font_get_char_fn get_char ) +{ + u8g_uint_t w; + uint8_t enc; + + /* reset the total minimal width to zero, this will be expanded during calculation */ + w = 0; + + enc = get_char(s); + + /* check for empty string, width is already 0 */ + if ( enc == '\0' ) + { + return w; + } + + /* get the glyph information of the first char. This must be valid, because we already checked for the empty string */ + /* if *s is not inside the font, then the cached parameters of the glyph are all zero */ + u8g_GetGlyph(u8g, enc); + + /* strlen(s) == 1: width = width(s[0]) */ + /* strlen(s) == 2: width = - offx(s[0]) + deltax(s[0]) + offx(s[1]) + width(s[1]) */ + /* strlen(s) == 3: width = - offx(s[0]) + deltax(s[0]) + deltax(s[1]) + offx(s[2]) + width(s[2]) */ + + /* assume that the string has size 2 or more, than start with negative offset-x */ + /* for string with size 1, this will be nullified after the loop */ + w = -u8g->glyph_x; + for(;;) + { + + /* check and stop if the end of the string is reached */ + s++; + if ( get_char(s) == '\0' ) + break; + + /* if there are still more characters, add the delta to the next glyph */ + w += u8g->glyph_dx; + + /* store the encoding in a local variable, used also after the for(;;) loop */ + enc = get_char(s); + + /* load the next glyph information */ + u8g_GetGlyph(u8g, enc); + } + + /* finally calculate the width of the last char */ + /* here is another exception, if the last char is a black, use the dx value instead */ + if ( enc != ' ' ) + { + /* if g was not updated in the for loop (strlen() == 1), then the initial offset x gets removed */ + w += u8g->glyph_width; + w += u8g->glyph_x; + } + else + { + w += u8g->glyph_dx; + } + + + return w; +} + +u8g_uint_t u8g_GetStrPixelWidth(u8g_t *u8g, const char *s) +{ + return u8g_font_calc_str_pixel_width(u8g, s, u8g_font_get_char); +} + +u8g_uint_t u8g_GetStrPixelWidthP(u8g_t *u8g, const u8g_pgm_uint8_t *s) +{ + return u8g_font_calc_str_pixel_width(u8g, (const char *)s, u8g_font_get_charP); +} + +int8_t u8g_GetStrX(u8g_t *u8g, const char *s) +{ + u8g_GetGlyph(u8g, *s); + return u8g->glyph_x; +} + +int8_t u8g_GetStrXP(u8g_t *u8g, const u8g_pgm_uint8_t *s) +{ + u8g_GetGlyph(u8g, u8g_pgm_read(s)); + return u8g->glyph_x; +} + +/*========================================================================*/ +/* string width calculation */ + +u8g_uint_t u8g_GetStrWidth(u8g_t *u8g, const char *s) +{ + u8g_uint_t w; + uint8_t encoding; + + /* reset the total width to zero, this will be expanded during calculation */ + w = 0; + + for(;;) + { + encoding = *s; + if ( encoding == 0 ) + break; + + /* load glyph information */ + u8g_GetGlyph(u8g, encoding); + w += u8g->glyph_dx; + + /* goto next char */ + s++; + } + + return w; +} + + +u8g_uint_t u8g_GetStrWidthP(u8g_t *u8g, const u8g_pgm_uint8_t *s) +{ + u8g_uint_t w; + uint8_t encoding; + + /* reset the total width to zero, this will be expanded during calculation */ + w = 0; + + for(;;) + { + encoding = u8g_pgm_read(s); + if ( encoding == 0 ) + break; + + /* load glyph information */ + u8g_GetGlyph(u8g, encoding); + w += u8g->glyph_dx; + + /* goto next char */ + s++; + } + + return w; +} + + +/*========================================================================*/ +/* calculation of font/glyph/string characteristics */ + + +/* + Description: + Calculate parameter for the minimal bounding box on a given string + Output + buf->y_min extend of the lower left edge if the string below (y_min<0) or above (y_min>0) baseline (descent) + buf->y_max extend of the upper left edge if the string below (y_min<0) or above (y_min>0) baseline (ascent) + buf->w the width of the string +*/ +struct u8g_str_size_struct +{ + int8_t y_min; /* descent */ + int8_t y_max; /* ascent */ + int8_t x, y; /* the reference point of the font (negated!) */ + u8g_uint_t w; /* width of the overall string */ +}; +typedef struct u8g_str_size_struct u8g_str_size_t; + +static void u8g_font_calc_str_min_box(u8g_t *u8g, const char *s, u8g_str_size_t *buf) +{ + /* u8g_glyph_t g; */ + int8_t tmp; + + /* reset the total minimal width to zero, this will be expanded during calculation */ + buf->w = 0; + + /* check for empty string, width is already 0, but also reset y_min and y_max to 0 */ + if ( *s == '\0' ) + { + buf->y_min = 0; + buf->y_max = 0; + buf->x = 0; + buf->y = 0; + return; + } + + /* reset y_min to the largest possible value. Later we search for the smallest value */ + /* y_min contains the position [pixel] of the lower left edge of the glyph above (y_min>0) or below (y_min<0) baseline */ + buf->y_min = 127; + /* reset y_max to the smallest possible value. Later we search for the highest value */ + /* y_max contains the position [pixel] of the upper left edge of the glyph above (y_max>0) or below (y_max<0) baseline */ + buf->y_max = -128; + + /* get the glyph information of the first char. This must be valid, because we already checked for the empty string */ + u8g_GetGlyph(u8g, *s); + + /* strlen(s) == 1: width = width(s[0]) */ + /* strlen(s) == 2: width = - offx(s[0]) + deltax(s[0]) + offx(s[1]) + width(s[1]) */ + /* strlen(s) == 3: width = - offx(s[0]) + deltax(s[0]) + deltax(s[1]) + offx(s[2]) + width(s[2]) */ + + /* assume that the string has size 2 or more, than start with negative offset-x */ + /* for string with size 1, this will be nullified after the loop */ + // buf->w = - u8g_font_GetGlyphBBXOffX(u8g->font, g); + buf->w = - u8g->glyph_x; + + /* Also copy the position of the first glyph. This is the reference point of the string (negated) */ + buf->x = u8g->glyph_x; + buf->y = u8g->glyph_y; + + for(;;) + { + + /* calculated y position of the upper left corner (y_max) and lower left corner (y_min) of the string */ + /* relative to the base line */ + + tmp = u8g->glyph_y; + if ( buf->y_min > tmp ) + buf->y_min = tmp; + + tmp +=u8g->glyph_height; + if ( buf->y_max < tmp ) + buf->y_max = tmp; + + /* check and stop if the end of the string is reached */ + s++; + if ( *s == '\0' ) + break; + + /* if there are still more characters, add the delta to the next glyph */ + buf->w += u8g->glyph_dx; + + /* load the next glyph information */ + u8g_GetGlyph(u8g, *s); + } + + /* finally calculate the width of the last char */ + /* if g was not updated in the for loop (strlen() == 1), then the initial offset x gets removed */ + buf->w += u8g->glyph_width; + // buf->w += u8g_font_GetGlyphBBXOffX(u8g->font, g); + + buf->w += u8g->glyph_x; +} + +/* calculate minimal box */ +void u8g_font_box_min(u8g_t *u8g, const char *s, u8g_str_size_t *buf) +{ + u8g_font_calc_str_min_box(u8g, s, buf); +} + +/* calculate gA box, but do not calculate the overall width */ +void u8g_font_box_left_gA(u8g_t *u8g, const char *s, u8g_str_size_t *buf) +{ + +} + +/* calculate gA box, including overall width */ +void u8g_font_box_all_gA(u8g_t *u8g, const char *s, u8g_str_size_t *buf) +{ + +} + + +static void u8g_font_get_str_box_fill_args(u8g_t *u8g, const char *s, u8g_str_size_t *buf, u8g_uint_t *x, u8g_uint_t *y, u8g_uint_t *width, u8g_uint_t *height) +{ + /* + u8g_glyph_t g; + g = + */ + u8g_GetGlyph(u8g, *s); + *x += u8g->glyph_x; + *width = buf->w; + *y -= buf->y_max; + /* +1 because y_max is a height, this compensates the next step */ + //*y += 1; + /* because the reference point is one below the string, this compensates the previous step */ + //*y -= 1; + *height = buf->y_max; + *height -= buf->y_min; +} + + +void u8g_GetStrMinBox(u8g_t *u8g, const char *s, u8g_uint_t *x, u8g_uint_t *y, u8g_uint_t *width, u8g_uint_t *height) +{ + u8g_str_size_t buf; + + if ( *s == '\0' ) + { + *width= 0; + *height = 0; + return; + } + + u8g_font_calc_str_min_box(u8g, s, &buf); + u8g_font_get_str_box_fill_args(u8g, s, &buf, x, y, width, height); +} + + +void u8g_GetStrAMinBox(u8g_t *u8g, const char *s, u8g_uint_t *x, u8g_uint_t *y, u8g_uint_t *width, u8g_uint_t *height) +{ + u8g_str_size_t buf; + uint8_t cap_a; + + if ( *s == '\0' ) + { + *width= 0; + *height = 0; + return; + } + + cap_a = u8g_font_GetCapitalAHeight(u8g->font); + u8g_font_calc_str_min_box(u8g, s, &buf); + if ( buf.y_max < cap_a ) + buf.y_max = cap_a; + u8g_font_get_str_box_fill_args(u8g, s, &buf, x, y, width, height); +} + +void u8g_SetFont(u8g_t *u8g, const u8g_fntpgm_uint8_t *font) +{ + if ( u8g->font != font ) + { + u8g->font = font; + u8g_UpdateRefHeight(u8g); + u8g_SetFontPosBaseline(u8g); + } +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_font_data.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_font_data.c new file mode 100644 index 0000000000000000000000000000000000000000..dca21c5a3f4781eb1475d24e83a22b6dbd567dc4 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_font_data.c @@ -0,0 +1,84486 @@ +/* + Fontname: -FreeType-04b03b-Medium-R-Normal--8-80-72-72-P-39-ISO10646-1 + Copyright: 19992003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 3 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_03b[826] U8G_SECTION(".progmem.u8g_font_04b_03b") = { + 1,5,6,0,255,5,0,250,1,240,32,255,255,5,255,5, + 255,2,0,48,2,21,37,128,128,128,0,128,5,50,66,160, + 160,2,85,101,80,248,80,248,80,2,69,85,112,160,240,80, + 224,2,85,101,200,208,32,88,152,2,85,101,224,128,248,144, + 240,5,18,34,128,128,2,37,53,64,128,128,128,64,2,37, + 53,128,64,64,64,128,4,51,67,160,64,160,3,51,67,64, + 224,64,1,34,50,64,128,4,49,65,224,2,17,33,128,2, + 85,101,8,16,32,64,128,2,69,85,240,144,144,144,240,2, + 37,53,192,64,64,64,64,2,69,85,240,16,240,128,240,2, + 69,85,240,16,240,16,240,2,69,85,144,144,144,240,16,2, + 69,85,240,128,240,16,240,2,69,85,224,128,240,144,240,2, + 69,85,240,16,32,64,64,2,69,85,240,144,240,144,240,2, + 69,85,240,144,240,16,112,3,19,35,128,0,128,2,20,36, + 128,0,128,128,2,53,69,32,64,128,64,32,3,51,67,224, + 0,224,2,53,69,128,64,32,64,128,2,69,85,240,16,112, + 0,64,2,85,101,248,136,184,168,240,2,69,85,240,144,240, + 144,144,2,69,85,224,160,240,144,240,2,69,85,240,128,128, + 128,240,2,69,85,224,144,144,144,224,2,69,85,240,128,240, + 128,240,2,69,85,240,128,240,128,128,2,69,85,240,128,176, + 144,240,2,69,85,144,144,240,144,144,2,53,69,224,64,64, + 64,224,2,69,85,48,16,16,144,240,2,69,85,144,144,224, + 144,144,2,69,85,128,128,128,128,240,2,85,101,248,168,168, + 168,168,2,69,85,144,208,176,144,144,2,69,85,240,144,144, + 144,240,2,69,85,240,144,144,240,128,2,69,85,240,144,144, + 176,240,2,69,85,240,144,240,160,176,2,69,85,240,128,240, + 16,240,2,53,69,224,64,64,64,64,2,69,85,144,144,144, + 144,240,2,69,85,144,144,160,160,64,2,85,101,168,168,168, + 168,248,2,69,85,144,144,96,144,144,2,69,85,144,144,240, + 16,240,2,69,85,240,16,96,128,240,2,37,53,192,128,128, + 128,192,2,85,101,128,64,32,16,8,2,37,53,192,64,64, + 64,192,5,50,66,64,160,2,65,81,240,5,34,50,128,64, + 2,67,83,112,144,240,2,68,84,128,240,144,240,2,51,67, + 224,128,224,2,68,84,16,240,144,240,2,67,83,240,160,112, + 2,68,84,112,64,240,64,1,68,84,240,144,240,32,2,68, + 84,128,240,144,144,2,20,36,128,0,128,128,1,21,37,128, + 0,128,128,128,2,68,84,128,144,224,144,2,20,36,128,128, + 128,128,2,83,99,248,168,168,2,67,83,240,144,144,2,67, + 83,240,144,240,1,68,84,240,144,240,128,1,68,84,240,144, + 240,16,2,51,67,224,128,128,2,67,83,240,64,240,2,52, + 68,64,224,64,96,2,67,83,144,144,240,2,67,83,144,144, + 96,2,83,99,168,168,248,2,51,67,160,64,160,1,68,84, + 144,144,240,16,2,67,83,240,32,240,2,53,69,96,64,128, + 64,96,2,21,37,128,128,128,128,128,2,53,69,192,64,32, + 64,192,5,66,82,80,160,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,2,0,64,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255}; +/* + Fontname: -FreeType-04b03b-Medium-R-Normal--8-80-72-72-P-39-ISO10646-1 + Copyright: 19992003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 2 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_03bn[130] U8G_SECTION(".progmem.u8g_font_04b_03bn") = { + 1,5,6,0,255,5,0,0,0,0,42,57,0,5,255,5, + 0,4,51,67,160,64,160,3,51,67,64,224,64,1,34,50, + 64,128,4,49,65,224,2,17,33,128,2,85,101,8,16,32, + 64,128,2,69,85,240,144,144,144,240,2,37,53,192,64,64, + 64,64,2,69,85,240,16,240,128,240,2,69,85,240,16,240, + 16,240,2,69,85,144,144,144,240,16,2,69,85,240,128,240, + 16,240,2,69,85,224,128,240,144,240,2,69,85,240,16,32, + 64,64,2,69,85,240,144,240,144,240,2,69,85,240,144,240, + 16,112}; +/* + Fontname: -FreeType-04b03b-Medium-R-Normal--8-80-72-72-P-39-ISO10646-1 + Copyright: 19992003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 3 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_03br[696] U8G_SECTION(".progmem.u8g_font_04b_03br") = { + 1,5,6,0,255,5,0,250,1,240,32,127,255,5,255,5, + 255,2,0,48,2,21,37,128,128,128,0,128,5,50,66,160, + 160,2,85,101,80,248,80,248,80,2,69,85,112,160,240,80, + 224,2,85,101,200,208,32,88,152,2,85,101,224,128,248,144, + 240,5,18,34,128,128,2,37,53,64,128,128,128,64,2,37, + 53,128,64,64,64,128,4,51,67,160,64,160,3,51,67,64, + 224,64,1,34,50,64,128,4,49,65,224,2,17,33,128,2, + 85,101,8,16,32,64,128,2,69,85,240,144,144,144,240,2, + 37,53,192,64,64,64,64,2,69,85,240,16,240,128,240,2, + 69,85,240,16,240,16,240,2,69,85,144,144,144,240,16,2, + 69,85,240,128,240,16,240,2,69,85,224,128,240,144,240,2, + 69,85,240,16,32,64,64,2,69,85,240,144,240,144,240,2, + 69,85,240,144,240,16,112,3,19,35,128,0,128,2,20,36, + 128,0,128,128,2,53,69,32,64,128,64,32,3,51,67,224, + 0,224,2,53,69,128,64,32,64,128,2,69,85,240,16,112, + 0,64,2,85,101,248,136,184,168,240,2,69,85,240,144,240, + 144,144,2,69,85,224,160,240,144,240,2,69,85,240,128,128, + 128,240,2,69,85,224,144,144,144,224,2,69,85,240,128,240, + 128,240,2,69,85,240,128,240,128,128,2,69,85,240,128,176, + 144,240,2,69,85,144,144,240,144,144,2,53,69,224,64,64, + 64,224,2,69,85,48,16,16,144,240,2,69,85,144,144,224, + 144,144,2,69,85,128,128,128,128,240,2,85,101,248,168,168, + 168,168,2,69,85,144,208,176,144,144,2,69,85,240,144,144, + 144,240,2,69,85,240,144,144,240,128,2,69,85,240,144,144, + 176,240,2,69,85,240,144,240,160,176,2,69,85,240,128,240, + 16,240,2,53,69,224,64,64,64,64,2,69,85,144,144,144, + 144,240,2,69,85,144,144,160,160,64,2,85,101,168,168,168, + 168,248,2,69,85,144,144,96,144,144,2,69,85,144,144,240, + 16,240,2,69,85,240,16,96,128,240,2,37,53,192,128,128, + 128,192,2,85,101,128,64,32,16,8,2,37,53,192,64,64, + 64,192,5,50,66,64,160,2,65,81,240,5,34,50,128,64, + 2,67,83,112,144,240,2,68,84,128,240,144,240,2,51,67, + 224,128,224,2,68,84,16,240,144,240,2,67,83,240,160,112, + 2,68,84,112,64,240,64,1,68,84,240,144,240,32,2,68, + 84,128,240,144,144,2,20,36,128,0,128,128,1,21,37,128, + 0,128,128,128,2,68,84,128,144,224,144,2,20,36,128,128, + 128,128,2,83,99,248,168,168,2,67,83,240,144,144,2,67, + 83,240,144,240,1,68,84,240,144,240,128,1,68,84,240,144, + 240,16,2,51,67,224,128,128,2,67,83,240,64,240,2,52, + 68,64,224,64,96,2,67,83,144,144,240,2,67,83,144,144, + 96,2,83,99,168,168,248,2,51,67,160,64,160,1,68,84, + 144,144,240,16,2,67,83,240,32,240,2,53,69,96,64,128, + 64,96,2,21,37,128,128,128,128,128,2,53,69,192,64,32, + 64,192,5,66,82,80,160,255}; +/* + Fontname: -FreeType-04b03-Medium-R-Normal--8-80-72-72-P-38-ISO10646-1 + Copyright: 19992003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 7 x= 0 y= 3 dx= 6 dy= 0 ascent= 5 len= 7 + Font Bounding box w= 5 h= 7 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 5 descent=-2 + Max Font ascent = 5 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_03[859] U8G_SECTION(".progmem.u8g_font_04b_03") = { + 1,5,7,0,254,5,0,251,1,242,32,255,254,5,254,5, + 254,2,0,64,2,21,37,128,128,128,0,128,5,50,66,160, + 160,2,85,101,80,248,80,248,80,1,70,86,32,112,192,48, + 224,32,2,85,101,144,16,32,64,72,2,85,101,96,128,104, + 144,104,5,18,34,128,128,2,37,53,64,128,128,128,64,2, + 37,53,128,64,64,64,128,4,51,67,160,64,160,3,51,67, + 64,224,64,1,34,50,64,128,4,49,65,224,2,17,33,128, + 2,85,101,8,16,32,64,128,2,69,85,96,144,144,144,96, + 2,37,53,192,64,64,64,64,2,69,85,224,16,96,128,240, + 2,69,85,224,16,96,16,224,2,69,85,32,96,160,240,32, + 2,69,85,240,128,224,16,224,2,69,85,96,128,224,144,96, + 2,69,85,240,16,32,64,64,2,69,85,96,144,96,144,96, + 2,69,85,96,144,112,16,96,3,19,35,128,0,128,2,20, + 36,128,0,128,128,2,53,69,32,64,128,64,32,3,51,67, + 224,0,224,2,53,69,128,64,32,64,128,2,69,85,224,16, + 96,0,64,2,85,101,112,136,184,168,112,2,69,85,96,144, + 144,240,144,2,69,85,224,144,224,144,224,2,53,69,96,128, + 128,128,96,2,69,85,224,144,144,144,224,2,53,69,224,128, + 224,128,224,2,53,69,224,128,224,128,128,2,69,85,112,128, + 176,144,112,2,69,85,144,144,240,144,144,2,53,69,224,64, + 64,64,224,2,69,85,48,16,16,144,96,2,69,85,144,160, + 192,160,144,2,53,69,128,128,128,128,224,2,85,101,136,216, + 168,136,136,2,69,85,144,208,176,144,144,2,69,85,96,144, + 144,144,96,2,69,85,224,144,144,224,128,1,70,86,96,144, + 144,144,96,16,2,69,85,224,144,144,224,144,2,69,85,112, + 128,96,16,224,2,53,69,224,64,64,64,64,2,69,85,144, + 144,144,144,96,2,69,85,144,144,160,160,64,2,85,101,136, + 168,168,168,80,2,69,85,144,144,96,144,144,2,69,85,144, + 144,112,16,96,2,53,69,224,32,64,128,224,2,37,53,192, + 128,128,128,192,2,85,101,128,64,32,16,8,2,37,53,192, + 64,64,64,192,5,50,66,64,160,2,65,81,240,5,34,50, + 128,64,2,68,84,112,144,144,112,2,69,85,128,224,144,144, + 224,2,52,68,96,128,128,96,2,69,85,16,112,144,144,112, + 2,68,84,96,176,192,96,2,53,69,32,64,224,64,64,0, + 70,86,112,144,144,112,16,96,2,69,85,128,224,144,144,144, + 2,21,37,128,0,128,128,128,0,39,55,64,0,64,64,64, + 64,128,2,69,85,128,144,160,224,144,2,21,37,128,128,128, + 128,128,2,84,100,240,168,168,168,2,68,84,224,144,144,144, + 2,68,84,96,144,144,96,0,70,86,224,144,144,224,128,128, + 0,70,86,112,144,144,112,16,16,2,52,68,160,192,128,128, + 2,68,84,112,192,48,224,2,53,69,64,224,64,64,32,2, + 68,84,144,144,144,112,2,68,84,144,144,160,64,2,84,100, + 168,168,80,80,2,52,68,160,64,64,160,0,70,86,144,144, + 144,112,16,96,2,68,84,240,32,64,240,2,53,69,96,64, + 128,64,96,2,21,37,128,128,128,128,128,2,53,69,192,64, + 32,64,192,5,66,82,80,160,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,2,0,64,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255}; +/* + Fontname: -FreeType-04b03-Medium-R-Normal--8-80-72-72-P-38-ISO10646-1 + Copyright: 19992003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 2 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 7 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_03n[130] U8G_SECTION(".progmem.u8g_font_04b_03n") = { + 1,5,7,0,254,5,0,0,0,0,42,57,0,5,255,5, + 0,4,51,67,160,64,160,3,51,67,64,224,64,1,34,50, + 64,128,4,49,65,224,2,17,33,128,2,85,101,8,16,32, + 64,128,2,69,85,96,144,144,144,96,2,37,53,192,64,64, + 64,64,2,69,85,224,16,96,128,240,2,69,85,224,16,96, + 16,224,2,69,85,32,96,160,240,32,2,69,85,240,128,224, + 16,224,2,69,85,96,128,224,144,96,2,69,85,240,16,32, + 64,64,2,69,85,96,144,96,144,96,2,69,85,96,144,112, + 16,96}; +/* + Fontname: -FreeType-04b03-Medium-R-Normal--8-80-72-72-P-38-ISO10646-1 + Copyright: 19992003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 7 x= 0 y= 3 dx= 6 dy= 0 ascent= 5 len= 7 + Font Bounding box w= 5 h= 7 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 5 descent=-2 + Max Font ascent = 5 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_03r[729] U8G_SECTION(".progmem.u8g_font_04b_03r") = { + 1,5,7,0,254,5,0,251,1,242,32,127,254,5,254,5, + 254,2,0,64,2,21,37,128,128,128,0,128,5,50,66,160, + 160,2,85,101,80,248,80,248,80,1,70,86,32,112,192,48, + 224,32,2,85,101,144,16,32,64,72,2,85,101,96,128,104, + 144,104,5,18,34,128,128,2,37,53,64,128,128,128,64,2, + 37,53,128,64,64,64,128,4,51,67,160,64,160,3,51,67, + 64,224,64,1,34,50,64,128,4,49,65,224,2,17,33,128, + 2,85,101,8,16,32,64,128,2,69,85,96,144,144,144,96, + 2,37,53,192,64,64,64,64,2,69,85,224,16,96,128,240, + 2,69,85,224,16,96,16,224,2,69,85,32,96,160,240,32, + 2,69,85,240,128,224,16,224,2,69,85,96,128,224,144,96, + 2,69,85,240,16,32,64,64,2,69,85,96,144,96,144,96, + 2,69,85,96,144,112,16,96,3,19,35,128,0,128,2,20, + 36,128,0,128,128,2,53,69,32,64,128,64,32,3,51,67, + 224,0,224,2,53,69,128,64,32,64,128,2,69,85,224,16, + 96,0,64,2,85,101,112,136,184,168,112,2,69,85,96,144, + 144,240,144,2,69,85,224,144,224,144,224,2,53,69,96,128, + 128,128,96,2,69,85,224,144,144,144,224,2,53,69,224,128, + 224,128,224,2,53,69,224,128,224,128,128,2,69,85,112,128, + 176,144,112,2,69,85,144,144,240,144,144,2,53,69,224,64, + 64,64,224,2,69,85,48,16,16,144,96,2,69,85,144,160, + 192,160,144,2,53,69,128,128,128,128,224,2,85,101,136,216, + 168,136,136,2,69,85,144,208,176,144,144,2,69,85,96,144, + 144,144,96,2,69,85,224,144,144,224,128,1,70,86,96,144, + 144,144,96,16,2,69,85,224,144,144,224,144,2,69,85,112, + 128,96,16,224,2,53,69,224,64,64,64,64,2,69,85,144, + 144,144,144,96,2,69,85,144,144,160,160,64,2,85,101,136, + 168,168,168,80,2,69,85,144,144,96,144,144,2,69,85,144, + 144,112,16,96,2,53,69,224,32,64,128,224,2,37,53,192, + 128,128,128,192,2,85,101,128,64,32,16,8,2,37,53,192, + 64,64,64,192,5,50,66,64,160,2,65,81,240,5,34,50, + 128,64,2,68,84,112,144,144,112,2,69,85,128,224,144,144, + 224,2,52,68,96,128,128,96,2,69,85,16,112,144,144,112, + 2,68,84,96,176,192,96,2,53,69,32,64,224,64,64,0, + 70,86,112,144,144,112,16,96,2,69,85,128,224,144,144,144, + 2,21,37,128,0,128,128,128,0,39,55,64,0,64,64,64, + 64,128,2,69,85,128,144,160,224,144,2,21,37,128,128,128, + 128,128,2,84,100,240,168,168,168,2,68,84,224,144,144,144, + 2,68,84,96,144,144,96,0,70,86,224,144,144,224,128,128, + 0,70,86,112,144,144,112,16,16,2,52,68,160,192,128,128, + 2,68,84,112,192,48,224,2,53,69,64,224,64,64,32,2, + 68,84,144,144,144,112,2,68,84,144,144,160,64,2,84,100, + 168,168,80,80,2,52,68,160,64,64,160,0,70,86,144,144, + 144,112,16,96,2,68,84,240,32,64,240,2,53,69,96,64, + 128,64,96,2,21,37,128,128,128,128,128,2,53,69,192,64, + 32,64,192,5,66,82,80,160,255}; +/* + Fontname: -FreeType-04b24-Medium-R-Normal--8-80-72-72-P-32-ISO10646-1 + Copyright: 20002003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 6 x= 0 y= 4 dx= 6 dy= 0 ascent= 5 len= 6 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_24[912] U8G_SECTION(".progmem.u8g_font_04b_24") = { + 1,5,6,0,255,5,0,250,1,241,32,255,0,5,255,5, + 0,2,0,32,2,21,37,128,128,128,0,128,5,50,66,160, + 160,2,53,69,64,224,64,224,64,2,53,69,96,192,64,96, + 192,2,53,69,160,32,64,128,160,2,69,85,96,128,112,160, + 96,5,18,34,128,128,2,37,53,64,128,128,128,64,2,37, + 53,128,64,64,64,128,4,51,67,160,64,160,3,51,67,64, + 224,64,1,34,50,64,128,4,49,65,224,2,17,33,128,2, + 53,69,32,32,64,128,128,2,53,69,224,160,160,160,224,2, + 37,53,192,64,64,64,64,2,53,69,224,32,224,128,224,2, + 53,69,224,32,224,32,224,2,53,69,160,160,160,224,32,2, + 53,69,224,128,224,32,224,2,53,69,128,224,160,160,224,2, + 53,69,224,32,32,64,128,2,53,69,224,160,224,160,224,2, + 53,69,224,160,160,224,32,3,19,35,128,0,128,2,20,36, + 128,0,128,128,2,53,69,32,64,128,64,32,3,51,67,224, + 0,224,2,53,69,128,64,32,64,128,2,53,69,224,32,96, + 0,64,2,85,101,112,136,232,168,96,2,53,69,224,160,160, + 224,160,2,53,69,224,160,224,160,224,2,53,69,224,128,128, + 128,224,2,53,69,192,160,160,160,224,2,53,69,224,128,224, + 128,224,2,53,69,224,128,224,128,128,2,53,69,224,128,160, + 160,224,2,53,69,160,160,224,160,160,2,21,37,128,128,128, + 128,128,2,53,69,32,32,160,160,224,2,53,69,160,160,192, + 160,160,2,53,69,128,128,128,128,224,2,53,69,160,224,160, + 160,160,2,53,69,224,160,160,160,160,2,53,69,224,160,160, + 160,224,2,53,69,224,160,160,224,128,1,54,70,224,160,160, + 160,224,64,2,53,69,224,160,160,192,160,2,53,69,224,128, + 224,32,224,2,53,69,224,64,64,64,64,2,53,69,160,160, + 160,160,224,2,53,69,160,160,160,160,192,2,53,69,160,160, + 160,224,160,2,53,69,160,160,64,160,160,2,53,69,160,160, + 64,64,64,2,53,69,224,32,64,128,224,2,37,53,192,128, + 128,128,192,2,53,69,128,128,64,32,32,2,37,53,192,64, + 64,64,192,5,50,66,64,160,2,49,65,224,5,34,50,128, + 64,2,53,69,64,160,160,224,160,2,53,69,192,160,192,160, + 192,2,53,69,96,128,128,128,96,2,53,69,192,160,160,160, + 192,2,53,69,96,128,224,128,96,2,53,69,96,128,224,128, + 128,2,53,69,96,128,160,160,96,2,53,69,160,160,224,160, + 160,2,21,37,128,128,128,128,128,2,53,69,32,32,160,160, + 64,2,53,69,160,160,192,160,160,2,53,69,128,128,128,128, + 96,2,53,69,160,224,160,160,160,2,53,69,192,160,160,160, + 160,2,53,69,64,160,160,160,64,2,53,69,192,160,160,192, + 128,1,54,70,64,160,160,160,64,64,2,53,69,192,160,160, + 192,160,2,53,69,96,128,64,32,192,2,53,69,224,64,64, + 64,64,2,53,69,160,160,160,160,64,2,53,69,160,160,160, + 160,192,2,53,69,160,160,160,224,160,2,53,69,160,160,64, + 160,160,2,53,69,160,160,64,64,64,2,53,69,224,32,64, + 128,224,2,53,69,96,64,192,64,96,2,21,37,128,128,128, + 128,128,2,53,69,192,64,96,64,192,6,33,49,192,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 2,37,53,128,64,64,64,64,2,53,69,160,160,160,96,32, + 2,53,69,192,32,192,32,192,255,255,255,2,53,69,128,192, + 160,160,64,255,255,2,53,69,64,160,160,96,32,255,255,255, + 255,255,255,255,255,255,255,255,2,53,69,224,32,32,64,128, + 255,255,255,2,53,69,64,160,160,160,64,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255 + }; +/* + Fontname: -FreeType-04b24-Medium-R-Normal--8-80-72-72-P-32-ISO10646-1 + Copyright: 20002003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 3 h= 5 x= 0 y= 2 dx= 4 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_24n[130] U8G_SECTION(".progmem.u8g_font_04b_24n") = { + 1,5,6,0,255,5,0,0,0,0,42,57,0,5,255,5, + 0,4,51,67,160,64,160,3,51,67,64,224,64,1,34,50, + 64,128,4,49,65,224,2,17,33,128,2,53,69,32,32,64, + 128,128,2,53,69,224,160,160,160,224,2,37,53,192,64,64, + 64,64,2,53,69,224,32,224,128,224,2,53,69,224,32,224, + 32,224,2,53,69,160,160,160,224,32,2,53,69,224,128,224, + 32,224,2,53,69,128,224,160,160,224,2,53,69,224,32,32, + 64,128,2,53,69,224,160,224,160,224,2,53,69,224,160,160, + 224,32}; +/* + Fontname: -FreeType-04b24-Medium-R-Normal--8-80-72-72-P-32-ISO10646-1 + Copyright: 20002003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 6 x= 0 y= 4 dx= 6 dy= 0 ascent= 5 len= 6 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_24r[735] U8G_SECTION(".progmem.u8g_font_04b_24r") = { + 1,5,6,0,255,5,0,250,1,241,32,127,0,5,255,5, + 0,2,0,32,2,21,37,128,128,128,0,128,5,50,66,160, + 160,2,53,69,64,224,64,224,64,2,53,69,96,192,64,96, + 192,2,53,69,160,32,64,128,160,2,69,85,96,128,112,160, + 96,5,18,34,128,128,2,37,53,64,128,128,128,64,2,37, + 53,128,64,64,64,128,4,51,67,160,64,160,3,51,67,64, + 224,64,1,34,50,64,128,4,49,65,224,2,17,33,128,2, + 53,69,32,32,64,128,128,2,53,69,224,160,160,160,224,2, + 37,53,192,64,64,64,64,2,53,69,224,32,224,128,224,2, + 53,69,224,32,224,32,224,2,53,69,160,160,160,224,32,2, + 53,69,224,128,224,32,224,2,53,69,128,224,160,160,224,2, + 53,69,224,32,32,64,128,2,53,69,224,160,224,160,224,2, + 53,69,224,160,160,224,32,3,19,35,128,0,128,2,20,36, + 128,0,128,128,2,53,69,32,64,128,64,32,3,51,67,224, + 0,224,2,53,69,128,64,32,64,128,2,53,69,224,32,96, + 0,64,2,85,101,112,136,232,168,96,2,53,69,224,160,160, + 224,160,2,53,69,224,160,224,160,224,2,53,69,224,128,128, + 128,224,2,53,69,192,160,160,160,224,2,53,69,224,128,224, + 128,224,2,53,69,224,128,224,128,128,2,53,69,224,128,160, + 160,224,2,53,69,160,160,224,160,160,2,21,37,128,128,128, + 128,128,2,53,69,32,32,160,160,224,2,53,69,160,160,192, + 160,160,2,53,69,128,128,128,128,224,2,53,69,160,224,160, + 160,160,2,53,69,224,160,160,160,160,2,53,69,224,160,160, + 160,224,2,53,69,224,160,160,224,128,1,54,70,224,160,160, + 160,224,64,2,53,69,224,160,160,192,160,2,53,69,224,128, + 224,32,224,2,53,69,224,64,64,64,64,2,53,69,160,160, + 160,160,224,2,53,69,160,160,160,160,192,2,53,69,160,160, + 160,224,160,2,53,69,160,160,64,160,160,2,53,69,160,160, + 64,64,64,2,53,69,224,32,64,128,224,2,37,53,192,128, + 128,128,192,2,53,69,128,128,64,32,32,2,37,53,192,64, + 64,64,192,5,50,66,64,160,2,49,65,224,5,34,50,128, + 64,2,53,69,64,160,160,224,160,2,53,69,192,160,192,160, + 192,2,53,69,96,128,128,128,96,2,53,69,192,160,160,160, + 192,2,53,69,96,128,224,128,96,2,53,69,96,128,224,128, + 128,2,53,69,96,128,160,160,96,2,53,69,160,160,224,160, + 160,2,21,37,128,128,128,128,128,2,53,69,32,32,160,160, + 64,2,53,69,160,160,192,160,160,2,53,69,128,128,128,128, + 96,2,53,69,160,224,160,160,160,2,53,69,192,160,160,160, + 160,2,53,69,64,160,160,160,64,2,53,69,192,160,160,192, + 128,1,54,70,64,160,160,160,64,64,2,53,69,192,160,160, + 192,160,2,53,69,96,128,64,32,192,2,53,69,224,64,64, + 64,64,2,53,69,160,160,160,160,64,2,53,69,160,160,160, + 160,192,2,53,69,160,160,160,224,160,2,53,69,160,160,64, + 160,160,2,53,69,160,160,64,64,64,2,53,69,224,32,64, + 128,224,2,53,69,96,64,192,64,96,2,21,37,128,128,128, + 128,128,2,53,69,192,64,96,64,192,6,33,49,192,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 5, '1' Height: 13 + Calculated Max Values w=10 h=20 x= 9 y=13 dx=10 dy= 0 ascent=16 len=40 + Font Bounding box w=10 h=20 x= 0 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent =13 descent= 0 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_10x20_67_75[4734] U8G_SECTION(".progmem.u8g_font_10x20_67_75") = { + 0,10,20,0,252,5,2,211,5,193,32,255,0,16,252,13, + 0,9,6,12,10,0,3,54,0,27,0,255,128,255,128,27, + 0,54,0,8,13,13,10,1,0,24,24,24,24,153,219,126, + 60,153,219,126,60,24,9,8,16,10,0,2,25,128,51,0, + 102,0,252,0,252,0,102,0,51,0,25,128,9,8,16,10, + 0,2,204,0,102,0,51,0,31,128,31,128,51,0,102,0, + 204,0,9,8,16,10,0,2,25,128,49,128,97,128,255,128, + 255,128,97,128,49,128,25,128,8,13,13,10,1,0,24,60, + 126,219,153,24,24,24,24,24,24,255,255,9,8,16,10,0, + 2,204,0,198,0,195,0,255,128,255,128,195,0,198,0,204, + 0,8,13,13,10,1,0,255,255,24,24,24,24,24,24,153, + 219,126,60,24,8,13,13,10,1,0,24,60,126,219,153,24, + 153,219,126,60,24,255,255,9,8,16,10,0,2,27,0,51, + 128,97,128,255,128,255,0,96,0,48,0,24,0,9,8,16, + 10,0,2,108,0,230,0,195,0,255,128,127,128,3,0,6, + 0,12,0,9,8,16,10,0,2,25,0,51,128,98,128,255, + 128,255,0,98,0,50,0,24,0,9,8,16,10,0,2,76, + 0,230,0,163,0,255,128,127,128,35,0,38,0,12,0,10, + 8,16,10,0,2,18,0,51,0,109,128,255,192,243,192,97, + 128,51,0,18,0,10,8,16,10,0,2,18,0,55,0,101, + 128,255,192,255,192,105,128,59,0,18,0,10,15,30,10,0, + 0,1,192,3,128,7,0,14,0,28,0,63,192,127,192,3, + 128,7,0,206,0,220,0,248,0,240,0,252,0,252,0,8, + 13,13,10,1,0,48,96,255,255,99,51,3,3,3,3,3, + 3,3,8,13,13,10,1,0,12,6,255,255,198,204,192,192, + 192,192,192,192,192,8,13,13,10,1,0,3,3,3,3,3, + 3,3,51,99,255,255,96,48,8,13,13,10,1,0,192,192, + 192,192,192,192,192,204,198,255,255,6,12,8,13,13,10,1, + 0,252,252,12,12,12,12,12,12,12,45,63,30,12,8,9, + 9,10,1,1,3,3,3,51,99,255,255,96,48,9,8,16, + 10,0,0,14,0,31,0,59,128,49,128,181,128,253,128,121, + 128,49,128,9,8,16,10,0,0,56,0,124,0,238,0,198, + 0,214,128,223,128,207,0,198,0,9,13,26,10,0,0,255, + 128,255,128,32,0,124,0,127,0,122,0,216,0,204,0,140, + 0,6,0,6,0,3,0,3,0,9,13,26,10,0,0,204, + 0,216,0,255,128,255,128,216,0,204,0,0,0,25,128,13, + 128,255,128,255,128,13,128,25,128,9,10,20,10,0,2,31, + 0,31,0,30,0,31,0,219,128,193,128,193,128,227,128,127, + 0,62,0,9,10,20,10,0,2,124,0,124,0,60,0,124, + 0,237,128,193,128,193,128,227,128,127,0,62,0,9,5,10, + 10,0,5,24,0,48,0,96,0,255,128,255,128,9,5,10, + 10,0,2,255,128,255,128,96,0,48,0,24,0,5,13,13, + 10,4,0,192,224,240,216,200,192,192,192,192,192,192,192,192, + 5,13,13,10,1,0,24,56,120,216,152,24,24,24,24,24, + 24,24,24,9,5,10,10,0,5,12,0,6,0,3,0,255, + 128,255,128,9,5,10,10,0,2,255,128,255,128,3,0,6, + 0,12,0,5,13,13,10,4,0,192,192,192,192,192,192,192, + 192,200,216,240,224,192,5,13,13,10,1,0,24,24,24,24, + 24,24,24,24,152,216,120,56,24,9,11,22,10,0,1,6, + 0,3,0,255,128,255,128,3,0,54,0,96,0,255,128,255, + 128,96,0,48,0,10,13,26,10,0,0,51,0,123,0,255, + 0,183,0,51,0,51,0,51,0,51,0,51,0,59,64,63, + 192,55,128,51,0,9,11,22,10,0,1,48,0,96,0,255, + 128,255,128,96,0,54,0,3,0,255,128,255,128,3,0,6, + 0,9,11,22,10,0,1,48,0,96,0,255,128,255,128,96, + 0,48,0,96,0,255,128,255,128,96,0,48,0,9,13,26, + 10,0,0,34,0,119,0,170,128,34,0,34,0,34,0,34, + 0,34,0,34,0,34,0,34,0,34,0,34,0,9,11,22, + 10,0,1,6,0,3,0,255,128,255,128,3,0,6,0,3, + 0,255,128,255,128,3,0,6,0,9,13,26,10,0,0,34, + 0,34,0,34,0,34,0,34,0,34,0,34,0,34,0,34, + 0,34,0,170,128,119,0,34,0,8,9,9,10,1,2,48, + 96,255,255,0,255,255,6,12,8,9,9,10,1,2,12,6, + 255,255,0,255,255,96,48,8,7,7,10,1,2,2,34,127, + 132,127,40,8,10,7,14,10,0,2,4,0,37,0,127,128, + 140,64,127,128,41,0,8,0,8,7,7,10,1,2,16,20, + 254,33,254,68,64,9,9,18,10,0,2,12,0,24,0,63, + 128,127,128,192,0,127,128,63,128,24,0,12,0,9,13,26, + 10,0,0,8,0,28,0,54,0,119,0,247,128,182,128,54, + 0,54,0,54,0,54,0,54,0,54,0,54,0,9,9,18, + 10,0,2,24,0,12,0,254,0,255,0,1,128,255,0,254, + 0,12,0,24,0,9,13,26,10,0,0,54,0,54,0,54, + 0,54,0,54,0,54,0,54,0,182,128,247,128,119,0,54, + 0,28,0,8,0,10,9,18,10,0,2,18,0,51,0,127, + 128,255,192,128,192,255,192,127,128,51,0,18,0,9,13,26, + 10,0,0,8,0,28,0,54,0,119,0,247,128,182,128,54, + 0,182,128,247,128,119,0,54,0,28,0,8,0,9,9,18, + 10,0,2,254,0,254,0,204,0,198,0,227,0,241,128,216, + 128,12,0,6,0,9,9,18,10,0,2,63,128,63,128,25, + 128,49,128,99,128,199,128,141,128,24,0,48,0,9,9,18, + 10,0,2,48,0,24,0,141,128,199,128,99,128,49,128,25, + 128,63,128,63,128,9,9,18,10,0,2,6,0,12,0,216, + 128,241,128,227,0,198,0,204,0,254,0,254,0,9,11,22, + 10,0,1,4,0,8,0,16,0,63,128,64,0,255,128,64, + 0,63,128,16,0,8,0,4,0,9,11,22,10,0,1,16, + 0,8,0,4,0,254,0,1,0,255,128,1,0,254,0,4, + 0,8,0,16,0,9,5,10,10,0,3,32,0,66,0,245, + 128,72,0,32,0,9,5,10,10,0,3,2,0,33,0,215, + 128,9,0,2,0,8,13,13,10,1,0,24,60,126,219,153, + 24,126,126,24,126,126,24,24,8,13,13,10,1,0,24,24, + 126,126,24,126,126,24,153,219,126,60,24,9,8,16,10,0, + 2,24,0,48,0,96,0,237,128,237,128,96,0,48,0,24, + 0,8,13,13,10,1,0,24,60,126,219,129,24,24,0,24, + 24,0,24,24,9,8,16,10,0,2,12,0,6,0,3,0, + 219,128,219,128,3,0,6,0,12,0,8,13,13,10,1,0, + 24,24,0,24,24,0,24,24,129,219,126,60,24,9,8,16, + 10,0,2,198,0,204,0,216,0,255,128,255,128,216,0,204, + 0,198,0,9,8,16,10,0,2,49,128,25,128,13,128,255, + 128,255,128,13,128,25,128,49,128,9,8,16,10,0,2,24, + 0,40,0,79,128,128,128,128,128,79,128,40,0,24,0,8, + 13,13,10,1,0,24,36,66,129,231,36,36,36,36,36,36, + 36,60,9,8,16,10,0,2,12,0,10,0,249,0,128,128, + 128,128,249,0,10,0,12,0,8,13,13,10,1,0,60,36, + 36,36,36,36,36,36,231,129,66,36,24,8,13,13,10,1, + 0,24,36,66,129,231,36,36,60,0,60,36,36,60,8,13, + 13,10,1,0,24,36,66,129,231,36,36,36,36,36,231,129, + 255,8,13,13,10,1,0,24,36,126,129,231,36,36,36,36, + 36,231,129,255,9,14,28,10,0,0,8,0,28,0,42,0, + 73,0,136,128,235,128,42,0,42,0,42,0,42,0,42,0, + 235,128,136,128,255,128,8,13,13,10,1,0,24,36,90,231, + 66,231,36,36,36,36,36,36,60,8,13,13,10,1,0,24, + 36,90,231,66,231,36,36,36,36,231,129,255,9,8,16,10, + 0,2,236,0,170,0,185,0,128,128,128,128,185,0,170,0, + 236,0,8,8,8,10,1,2,255,128,188,168,184,164,130,129, + 8,8,8,10,1,2,129,65,37,29,21,61,1,255,8,13, + 13,10,1,0,24,36,66,231,36,36,36,36,36,231,66,36, + 24,9,6,12,10,0,3,38,0,83,0,255,128,255,128,83, + 0,38,0,10,13,26,10,0,0,51,0,55,128,63,192,59, + 64,51,0,51,0,51,0,51,0,51,0,183,0,255,0,123, + 0,51,0,9,16,32,10,0,254,6,0,3,0,255,128,255, + 128,3,0,6,0,3,0,255,128,255,128,3,0,6,0,3, + 0,255,128,255,128,3,0,6,0,9,8,16,10,0,2,22, + 0,54,0,102,0,255,128,255,128,102,0,54,0,22,0,9, + 8,16,10,0,2,52,0,54,0,51,0,255,128,255,128,51, + 0,54,0,52,0,10,6,12,10,0,3,45,0,109,128,255, + 192,255,192,109,128,45,0,9,6,12,10,0,3,42,0,106, + 0,255,128,255,128,106,0,42,0,9,6,12,10,0,3,42, + 0,43,0,255,128,255,128,43,0,42,0,9,6,12,10,0, + 3,85,0,213,128,255,128,255,128,213,128,85,0,9,8,16, + 10,0,2,16,0,48,0,112,0,223,128,223,128,112,0,48, + 0,16,0,9,8,16,10,0,2,4,0,6,0,7,0,253, + 128,253,128,7,0,6,0,4,0,10,8,16,10,0,2,18, + 0,51,0,115,128,222,192,222,192,115,128,51,0,18,0,10, + 10,20,10,0,6,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,10,3,6,10,0,252,255, + 192,255,192,255,192,10,5,10,10,0,252,255,192,255,192,255, + 192,255,192,255,192,10,8,16,10,0,252,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,10,10,20,10,0, + 252,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,255,192,10,12,24,10,0,252,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,10,15,30,10,0,252,255,192,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,255,192,255,192,10,17,34,10,0,252,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,255,192,10, + 20,40,10,0,252,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,9,20,40, + 10,0,252,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,7,20,20,10,0, + 252,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254, + 254,254,254,254,254,6,20,20,10,0,252,252,252,252,252,252, + 252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,5, + 20,20,10,0,252,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,4,20,20,10,0,252,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,3,20,20,10,0,252,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,1,20,20, + 10,0,252,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,5,20,20,10,5,252,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,10,19,38,10,0,253,85,64,0,0,170,128,0,0,85, + 64,0,0,170,128,0,0,85,64,0,0,170,128,0,0,85, + 64,0,0,170,128,0,0,85,64,0,0,170,128,10,20,40, + 10,0,252,85,64,170,128,85,64,170,128,85,64,170,128,85, + 64,170,128,85,64,170,128,85,64,170,128,85,64,170,128,85, + 64,170,128,85,64,170,128,85,64,170,128,10,20,40,10,0, + 252,85,64,255,192,170,128,255,192,85,64,255,192,170,128,255, + 192,85,64,255,192,170,128,255,192,85,64,255,192,170,128,255, + 192,85,64,255,192,170,128,255,192,10,3,6,10,0,13,255, + 192,255,192,255,192,1,20,20,10,9,252,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,5, + 10,10,10,0,252,248,248,248,248,248,248,248,248,248,248,5, + 10,10,10,5,252,248,248,248,248,248,248,248,248,248,248,5, + 10,10,10,0,6,248,248,248,248,248,248,248,248,248,248,10, + 20,40,10,0,252,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,255,192,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,10,20,40, + 10,0,252,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,7,192,7,192,7,192,7,192,7, + 192,7,192,7,192,7,192,7,192,7,192,10,20,40,10,0, + 252,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,255,192,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,10,20,40,10,0,252,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,7,192,7,192,7,192,7,192,7,192,7,192,7, + 192,7,192,7,192,7,192,5,10,10,10,5,6,248,248,248, + 248,248,248,248,248,248,248,10,20,40,10,0,252,7,192,7, + 192,7,192,7,192,7,192,7,192,7,192,7,192,7,192,7, + 192,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,10,20,40,10,0,252,7,192,7,192,7, + 192,7,192,7,192,7,192,7,192,7,192,7,192,7,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,8,8,8,10,1,1,255,255,255,255,255,255,255, + 255,8,8,8,10,1,1,255,129,129,129,129,129,129,255,8, + 8,8,10,1,1,126,129,129,129,129,129,129,126,8,8,8, + 10,1,1,255,129,189,189,189,189,129,255,9,9,18,10,0, + 0,255,128,128,128,255,128,128,128,255,128,128,128,255,128,128, + 128,255,128,9,9,18,10,0,0,255,128,170,128,170,128,170, + 128,170,128,170,128,170,128,170,128,255,128,9,9,18,10,0, + 0,255,128,170,128,255,128,170,128,255,128,170,128,255,128,170, + 128,255,128,8,8,8,10,1,1,255,201,165,147,201,165,147, + 255,8,8,8,10,1,1,255,147,165,201,147,165,201,255,8, + 8,8,10,1,1,255,171,197,171,145,171,197,255,4,4,4, + 10,3,3,240,240,240,240,4,4,4,10,3,3,240,144,144, + 240,8,6,6,10,1,3,255,255,255,255,255,255,8,6,6, + 10,1,3,255,129,129,129,129,255,6,13,13,10,2,0,252, + 252,252,252,252,252,252,252,252,252,252,252,252,6,13,13,10, + 2,0,252,132,132,132,132,132,132,132,132,132,132,132,252,8, + 4,4,10,1,3,31,62,124,248,8,4,4,10,1,3,31, + 34,68,248,8,8,8,10,1,2,24,24,60,60,126,126,255, + 255,8,8,8,10,1,2,24,24,36,36,66,66,129,255,5, + 5,5,10,3,3,32,112,112,248,248,5,5,5,10,3,3, + 32,80,80,136,248,8,8,8,10,1,2,192,240,252,255,255, + 252,240,192,8,8,8,10,1,2,192,176,140,131,131,140,176, + 192,5,5,5,10,3,3,192,240,248,240,192,5,5,5,10, + 3,3,192,176,136,176,192,8,5,5,10,1,4,224,252,255, + 252,224,8,5,5,10,1,4,224,156,131,156,224,8,8,8, + 10,1,2,255,255,126,126,60,60,24,24,8,8,8,10,1, + 2,255,129,66,66,36,36,24,24,5,5,5,10,3,3,248, + 248,112,112,32,5,5,5,10,3,3,248,136,80,80,32,8, + 8,8,10,1,2,3,15,63,255,255,63,15,3,8,8,8, + 10,1,2,3,13,49,193,193,49,13,3,5,5,5,10,3, + 3,24,120,248,120,24,5,5,5,10,3,3,24,104,136,104, + 24,8,5,5,10,1,4,7,63,255,63,7,8,5,5,10, + 1,4,7,57,193,57,7,8,8,8,10,1,2,24,60,126, + 255,255,126,60,24,8,8,8,10,1,2,24,36,66,129,129, + 66,36,24,8,8,8,10,1,2,24,36,90,189,189,90,36, + 24,8,8,8,10,1,1,60,66,153,189,189,153,66,60,9, + 15,30,10,1,255,8,0,20,0,20,0,34,0,34,0,65, + 0,65,0,128,128,65,0,65,0,34,0,34,0,20,0,20, + 0,8,0,8,8,8,10,1,1,60,66,129,129,129,129,66, + 60,7,7,7,10,1,2,40,0,130,0,130,0,40,7,7, + 7,10,1,2,56,108,170,170,170,108,56,8,8,8,10,1, + 1,60,66,153,165,165,153,66,60,8,8,8,10,1,1,60, + 126,255,255,255,255,126,60,8,8,8,10,1,1,60,114,241, + 241,241,241,114,60,8,8,8,10,1,1,60,78,143,143,143, + 143,78,60,8,8,8,10,1,1,60,66,129,129,255,255,126, + 60,8,8,8,10,1,1,60,126,255,255,129,129,66,60,8, + 8,8,10,1,1,60,78,143,143,129,129,66,60,8,8,8, + 10,1,1,60,78,143,143,255,255,126,60,4,8,8,10,1, + 1,48,112,240,240,240,240,112,48,4,8,8,10,5,1,192, + 224,240,240,240,240,224,192,10,20,40,10,0,252,255,192,255, + 192,255,192,255,192,255,192,255,192,225,192,192,192,128,64,128, + 64,128,64,128,64,192,192,225,192,255,192,255,192,255,192,255, + 192,255,192,255,192,10,20,40,10,0,252,255,192,255,192,255, + 192,255,192,255,192,255,192,225,192,222,192,191,64,191,64,191, + 64,191,64,222,192,225,192,255,192,255,192,255,192,255,192,255, + 192,255,192,10,10,20,10,0,6,255,192,255,192,255,192,255, + 192,255,192,255,192,225,192,222,192,191,64,191,64,10,10,20, + 10,0,252,191,64,191,64,222,192,225,192,255,192,255,192,255, + 192,255,192,255,192,255,192,4,4,4,10,1,5,48,64,128, + 128,4,4,4,10,5,5,192,32,16,16,4,4,4,10,5, + 1,16,16,32,192,4,4,4,10,1,1,128,128,64,48,8, + 4,4,10,1,5,60,66,129,129,8,4,4,10,1,1,129, + 129,66,60,10,19,38,10,0,252,0,64,0,64,0,192,0, + 192,1,192,1,192,3,192,3,192,7,192,7,192,15,192,15, + 192,31,192,31,192,63,192,63,192,127,192,127,192,255,192,10, + 19,38,10,0,252,128,0,128,0,192,0,192,0,224,0,224, + 0,240,0,240,0,248,0,248,0,252,0,252,0,254,0,254, + 0,255,0,255,0,255,128,255,128,255,192,10,19,38,10,0, + 253,255,192,255,128,255,128,255,0,255,0,254,0,254,0,252, + 0,252,0,248,0,248,0,240,0,240,0,224,0,224,0,192, + 0,192,0,128,0,128,0,10,19,38,10,0,253,255,192,127, + 192,127,192,63,192,63,192,31,192,31,192,15,192,15,192,7, + 192,7,192,3,192,3,192,1,192,1,192,0,192,0,192,0, + 64,0,64,5,5,5,10,3,4,112,136,136,136,112,8,8, + 8,10,1,1,255,241,241,241,241,241,241,255,8,8,8,10, + 1,1,255,143,143,143,143,143,143,255,8,8,8,10,1,1, + 255,253,249,241,225,193,129,255,8,8,8,10,1,1,255,129, + 131,135,143,159,191,255,9,9,18,10,0,0,255,128,136,128, + 136,128,136,128,136,128,136,128,136,128,136,128,255,128,8,8, + 8,10,1,2,24,24,36,36,90,90,129,255,8,8,8,10, + 1,2,24,24,52,52,114,114,241,255,8,8,8,10,1,2, + 24,24,44,44,78,78,143,255,10,10,20,10,0,0,30,0, + 33,0,64,128,128,64,128,64,128,64,128,64,64,128,33,0, + 30,0,9,9,18,10,0,0,255,128,136,128,136,128,136,128, + 248,128,128,128,128,128,128,128,255,128,9,9,18,10,0,0, + 255,128,128,128,128,128,128,128,248,128,136,128,136,128,136,128, + 255,128,9,9,18,10,0,0,255,128,128,128,128,128,128,128, + 143,128,136,128,136,128,136,128,255,128,9,9,18,10,0,0, + 255,128,136,128,136,128,136,128,143,128,128,128,128,128,128,128, + 255,128,9,9,18,10,0,0,62,0,73,0,136,128,136,128, + 248,128,128,128,128,128,65,0,62,0,9,9,18,10,0,0, + 62,0,65,0,128,128,128,128,248,128,136,128,136,128,73,0, + 62,0,9,9,18,10,0,0,62,0,65,0,128,128,128,128, + 143,128,136,128,136,128,73,0,62,0,9,9,18,10,0,0, + 62,0,73,0,136,128,136,128,143,128,128,128,128,128,65,0, + 62,0,6,6,6,10,2,2,252,136,144,160,192,128,6,6, + 6,10,2,2,252,68,36,20,12,4,6,6,6,10,2,2, + 128,192,160,144,136,252,6,6,6,10,2,2,252,132,132,132, + 132,252,6,6,6,10,2,2,252,252,252,252,252,252,4,4, + 4,10,3,3,240,144,144,240,4,4,4,10,3,3,240,240, + 240,240,6,6,6,10,2,2,4,12,20,36,68,252}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 8, '1' Height: 4 + Calculated Max Values w= 9 h=15 x= 3 y= 4 dx=10 dy= 0 ascent=14 len=30 + Font Bounding box w=10 h=20 x= 0 y=-4 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 8 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent =14 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_10x20_75r[693] U8G_SECTION(".progmem.u8g_font_10x20_75r") = { + 0,10,20,0,252,8,1,219,0,0,32,79,0,14,255,9, + 0,8,8,8,10,1,1,255,255,255,255,255,255,255,255,8, + 8,8,10,1,1,255,129,129,129,129,129,129,255,8,8,8, + 10,1,1,126,129,129,129,129,129,129,126,8,8,8,10,1, + 1,255,129,189,189,189,189,129,255,9,9,18,10,0,0,255, + 128,128,128,255,128,128,128,255,128,128,128,255,128,128,128,255, + 128,9,9,18,10,0,0,255,128,170,128,170,128,170,128,170, + 128,170,128,170,128,170,128,255,128,9,9,18,10,0,0,255, + 128,170,128,255,128,170,128,255,128,170,128,255,128,170,128,255, + 128,8,8,8,10,1,1,255,201,165,147,201,165,147,255,8, + 8,8,10,1,1,255,147,165,201,147,165,201,255,8,8,8, + 10,1,1,255,171,197,171,145,171,197,255,4,4,4,10,3, + 3,240,240,240,240,4,4,4,10,3,3,240,144,144,240,8, + 6,6,10,1,3,255,255,255,255,255,255,8,6,6,10,1, + 3,255,129,129,129,129,255,6,13,13,10,2,0,252,252,252, + 252,252,252,252,252,252,252,252,252,252,6,13,13,10,2,0, + 252,132,132,132,132,132,132,132,132,132,132,132,252,8,4,4, + 10,1,3,31,62,124,248,8,4,4,10,1,3,31,34,68, + 248,8,8,8,10,1,2,24,24,60,60,126,126,255,255,8, + 8,8,10,1,2,24,24,36,36,66,66,129,255,5,5,5, + 10,3,3,32,112,112,248,248,5,5,5,10,3,3,32,80, + 80,136,248,8,8,8,10,1,2,192,240,252,255,255,252,240, + 192,8,8,8,10,1,2,192,176,140,131,131,140,176,192,5, + 5,5,10,3,3,192,240,248,240,192,5,5,5,10,3,3, + 192,176,136,176,192,8,5,5,10,1,4,224,252,255,252,224, + 8,5,5,10,1,4,224,156,131,156,224,8,8,8,10,1, + 2,255,255,126,126,60,60,24,24,8,8,8,10,1,2,255, + 129,66,66,36,36,24,24,5,5,5,10,3,3,248,248,112, + 112,32,5,5,5,10,3,3,248,136,80,80,32,8,8,8, + 10,1,2,3,15,63,255,255,63,15,3,8,8,8,10,1, + 2,3,13,49,193,193,49,13,3,5,5,5,10,3,3,24, + 120,248,120,24,5,5,5,10,3,3,24,104,136,104,24,8, + 5,5,10,1,4,7,63,255,63,7,8,5,5,10,1,4, + 7,57,193,57,7,8,8,8,10,1,2,24,60,126,255,255, + 126,60,24,8,8,8,10,1,2,24,36,66,129,129,66,36, + 24,8,8,8,10,1,2,24,36,90,189,189,90,36,24,8, + 8,8,10,1,1,60,66,153,189,189,153,66,60,9,15,30, + 10,1,255,8,0,20,0,20,0,34,0,34,0,65,0,65, + 0,128,128,65,0,65,0,34,0,34,0,20,0,20,0,8, + 0,8,8,8,10,1,1,60,66,129,129,129,129,66,60,7, + 7,7,10,1,2,40,0,130,0,130,0,40,7,7,7,10, + 1,2,56,108,170,170,170,108,56,8,8,8,10,1,1,60, + 66,153,165,165,153,66,60,8,8,8,10,1,1,60,126,255, + 255,255,255,126,60}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 0, '1' Height: 9 + Calculated Max Values w=10 h=13 x= 4 y= 5 dx=10 dy= 0 ascent=13 len=24 + Font Bounding box w=10 h=20 x= 0 y=-4 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =13 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_10x20_78_79[2638] U8G_SECTION(".progmem.u8g_font_10x20_78_79") = { + 0,10,20,0,252,9,1,212,2,205,32,255,0,13,0,11, + 0,9,9,18,10,0,0,54,0,28,0,136,128,201,128,119, + 0,201,128,136,128,28,0,54,0,9,9,18,10,0,0,8, + 0,20,0,255,128,162,128,65,0,162,128,255,128,20,0,8, + 0,9,9,18,10,0,0,8,0,28,0,8,0,73,0,255, + 128,73,0,8,0,28,0,8,0,9,9,18,10,0,0,8, + 0,28,0,28,0,107,0,255,128,107,0,28,0,28,0,8, + 0,9,9,18,10,0,0,8,0,28,0,28,0,107,0,255, + 128,107,0,28,0,28,0,8,0,9,9,18,10,0,0,8, + 0,28,0,28,0,107,0,255,128,107,0,28,0,28,0,8, + 0,9,9,18,10,0,0,8,0,28,0,28,0,127,0,255, + 128,127,0,28,0,28,0,8,0,9,9,18,10,0,0,8, + 0,20,0,20,0,99,0,128,128,99,0,20,0,20,0,8, + 0,255,9,9,18,10,0,0,8,0,8,0,20,0,247,128, + 65,0,34,0,73,0,85,0,99,0,9,10,20,10,0,0, + 127,0,247,128,247,128,227,128,0,0,128,128,193,128,201,128, + 156,128,127,0,9,9,18,10,0,0,8,0,8,0,28,0, + 227,128,99,0,34,0,127,0,119,0,99,0,255,255,255,255, + 255,8,9,9,10,0,0,24,219,255,126,24,126,255,219,24, + 8,9,9,10,0,0,24,219,255,102,36,102,255,219,24,9, + 9,18,10,0,0,8,0,73,0,42,0,28,0,255,128,28, + 0,42,0,73,0,8,0,9,9,18,10,0,0,8,0,73, + 0,62,0,62,0,255,128,62,0,62,0,73,0,8,0,7, + 7,7,10,1,0,16,146,124,56,124,146,16,9,9,18,10, + 0,0,34,0,20,0,148,128,127,0,28,0,127,0,148,128, + 20,0,34,0,255,255,255,255,9,11,22,10,0,0,28,0, + 28,0,201,128,201,128,62,0,28,0,62,0,201,128,201,128, + 28,0,28,0,9,11,22,10,0,0,28,0,28,0,201,128, + 201,128,62,0,28,0,62,0,201,128,201,128,28,0,28,0, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 9,8,16,10,0,1,62,0,67,0,129,128,129,128,129,128, + 129,128,67,0,62,0,255,9,9,18,10,0,0,254,0,130, + 0,131,128,131,128,131,128,131,128,255,128,63,128,63,128,9, + 9,18,10,0,0,63,128,63,128,255,128,131,128,131,128,131, + 128,131,128,130,0,254,0,8,8,8,10,0,0,254,131,131, + 131,131,131,255,127,8,8,8,10,0,0,127,255,131,131,131, + 131,131,254,255,255,255,9,9,18,10,0,0,8,0,28,0, + 28,0,107,0,247,128,107,0,28,0,28,0,8,0,255,1, + 10,10,10,4,0,128,128,128,128,128,128,128,128,128,128,2, + 10,10,10,3,0,192,192,192,192,192,192,192,192,192,192,3, + 10,10,10,3,0,224,224,224,224,224,224,224,224,224,224,4, + 6,6,10,3,5,112,128,224,240,240,96,4,6,6,10,3, + 5,96,240,240,112,16,224,9,6,12,10,0,5,115,128,132, + 0,231,0,247,128,247,128,99,0,9,6,12,10,0,5,99, + 0,247,128,247,128,115,128,16,128,231,0,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,9,9,18,10,0,0,127,0,247,128,231,128,247,128, + 247,128,247,128,247,128,227,128,127,0,9,9,18,10,0,0, + 127,0,227,128,221,128,253,128,251,128,247,128,237,128,193,128, + 127,0,9,9,18,10,0,0,127,0,227,128,221,128,253,128, + 243,128,253,128,221,128,227,128,127,0,9,9,18,10,0,0, + 127,0,243,128,235,128,219,128,193,128,251,128,251,128,241,128, + 127,0,9,9,18,10,0,0,127,0,193,128,223,128,223,128, + 195,128,253,128,253,128,195,128,127,0,9,9,18,10,0,0, + 127,0,225,128,223,128,223,128,195,128,221,128,221,128,227,128, + 127,0,9,9,18,10,0,0,127,0,193,128,253,128,251,128, + 251,128,247,128,247,128,247,128,127,0,9,9,18,10,0,0, + 127,0,227,128,221,128,221,128,227,128,221,128,221,128,227,128, + 127,0,9,9,18,10,0,0,127,0,225,128,221,128,221,128, + 225,128,253,128,253,128,227,128,127,0,9,9,18,10,0,0, + 127,0,219,128,213,128,213,128,213,128,213,128,213,128,219,128, + 127,0,9,9,18,10,0,0,127,0,128,128,136,128,152,128, + 136,128,136,128,156,128,128,128,127,0,9,9,18,10,0,0, + 127,0,128,128,152,128,132,128,132,128,136,128,156,128,128,128, + 127,0,9,9,18,10,0,0,127,0,128,128,152,128,132,128, + 136,128,132,128,152,128,128,128,127,0,9,9,18,10,0,0, + 127,0,128,128,136,128,152,128,168,128,188,128,136,128,128,128, + 127,0,9,9,18,10,0,0,127,0,128,128,156,128,144,128, + 152,128,132,128,152,128,128,128,127,0,9,9,18,10,0,0, + 127,0,128,128,140,128,144,128,152,128,148,128,136,128,128,128, + 127,0,9,9,18,10,0,0,127,0,128,128,156,128,132,128, + 136,128,136,128,136,128,128,128,127,0,9,9,18,10,0,0, + 127,0,128,128,136,128,148,128,136,128,148,128,136,128,128,128, + 127,0,9,9,18,10,0,0,127,0,128,128,136,128,148,128, + 140,128,132,128,136,128,128,128,127,0,9,9,18,10,0,0, + 127,0,128,128,164,128,170,128,170,128,170,128,164,128,128,128, + 127,0,9,9,18,10,0,0,127,0,247,128,231,128,247,128, + 247,128,247,128,247,128,247,128,127,0,9,9,18,10,0,0, + 127,0,227,128,221,128,253,128,251,128,247,128,239,128,193,128, + 127,0,9,9,18,10,0,0,127,0,227,128,221,128,253,128, + 243,128,253,128,221,128,227,128,127,0,9,9,18,10,0,0, + 127,0,243,128,235,128,219,128,193,128,251,128,251,128,251,128, + 127,0,9,9,18,10,0,0,127,0,193,128,223,128,223,128, + 195,128,253,128,253,128,195,128,127,0,9,9,18,10,0,0, + 127,0,225,128,223,128,223,128,195,128,221,128,221,128,227,128, + 127,0,9,9,18,10,0,0,127,0,193,128,253,128,251,128, + 251,128,247,128,247,128,247,128,127,0,9,9,18,10,0,0, + 127,0,227,128,221,128,221,128,227,128,221,128,221,128,227,128, + 127,0,9,9,18,10,0,0,127,0,225,128,221,128,221,128, + 225,128,253,128,253,128,227,128,127,0,9,9,18,10,0,0, + 127,0,219,128,213,128,213,128,213,128,213,128,213,128,219,128, + 127,0,7,8,8,10,1,1,48,24,12,254,254,12,24,48, + 255,255,255,7,5,5,10,1,1,224,250,62,14,30,8,7, + 7,10,1,1,8,12,230,255,230,12,8,7,5,5,10,1, + 1,30,14,62,250,224,9,7,14,10,0,0,48,0,28,0, + 31,0,255,128,31,0,28,0,48,0,9,9,18,10,0,0, + 28,0,30,0,15,0,255,128,255,128,255,128,15,0,30,0, + 28,0,9,5,10,10,0,1,2,0,3,0,255,128,3,0, + 2,0,9,7,14,10,0,0,4,0,6,0,255,0,255,128, + 255,0,6,0,4,0,9,5,10,10,0,1,2,0,183,0, + 183,128,183,0,2,0,9,5,10,10,0,1,2,0,171,0, + 171,128,171,0,2,0,9,5,10,10,0,1,2,0,255,0, + 255,128,255,0,2,0,9,8,16,10,0,1,128,0,112,0, + 78,0,33,128,31,128,62,0,112,0,128,0,9,8,16,10, + 0,1,128,0,112,0,62,0,31,128,33,128,78,0,112,0, + 128,0,9,8,16,10,0,1,128,0,112,0,62,0,31,128, + 31,128,62,0,112,0,128,0,9,7,14,10,0,0,132,0, + 134,0,255,0,255,128,127,0,6,0,4,0,9,7,14,10, + 0,0,4,0,6,0,127,0,255,128,255,0,134,0,132,0, + 6,9,9,10,2,0,16,16,248,248,252,248,248,16,16,8, + 9,9,10,0,1,4,4,254,254,255,254,254,4,4,9,9, + 18,10,0,0,24,0,28,0,22,0,243,0,129,128,243,0, + 22,0,28,0,24,0,9,9,18,10,0,0,24,0,28,0, + 26,0,249,0,192,128,249,0,26,0,28,0,24,0,9,9, + 18,10,0,0,0,128,1,128,62,128,64,128,129,128,243,0, + 238,0,60,0,56,0,9,9,18,10,0,0,56,0,60,0, + 238,0,243,0,129,128,64,128,62,128,1,128,0,128,8,9, + 9,10,0,1,16,24,20,242,129,243,118,28,24,8,9,9, + 10,0,1,24,28,118,243,129,242,20,24,16,9,8,16,10, + 0,1,4,0,250,0,129,0,64,128,129,128,251,0,6,0, + 4,0,255,9,8,16,10,0,2,4,0,6,0,251,0,129, + 128,64,128,129,0,250,0,4,0,9,9,18,10,0,1,28, + 0,127,0,251,128,1,128,0,128,1,128,251,128,127,0,28, + 0,9,5,10,10,0,3,210,0,43,0,127,128,43,0,210, + 0,9,9,18,10,0,0,16,0,56,0,92,0,236,0,116, + 0,60,0,2,128,1,128,3,128,9,5,10,10,0,2,242, + 0,123,0,7,128,123,0,242,0,9,9,18,10,0,0,3, + 128,1,128,2,128,60,0,116,0,236,0,92,0,56,0,16, + 0,9,9,18,10,0,0,16,0,24,0,28,0,252,0,124, + 0,60,0,2,128,1,128,3,128,9,5,10,10,0,2,242, + 0,123,0,127,128,123,0,242,0,9,9,18,10,0,0,3, + 128,1,128,2,128,60,0,124,0,252,0,28,0,24,0,16, + 0,255,255,255,255,9,7,14,10,0,1,20,0,10,0,253, + 0,0,128,253,0,10,0,20,0,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,9, + 12,24,10,0,0,224,128,49,128,49,128,42,128,42,128,36, + 128,36,128,42,128,42,128,49,128,49,128,224,128,9,12,24, + 10,0,0,131,128,198,0,198,0,170,0,170,0,146,0,146, + 0,170,0,170,0,198,0,198,0,131,128,9,12,24,10,0, + 0,193,128,99,0,99,0,85,0,85,0,73,0,73,0,85, + 0,85,0,99,0,99,0,193,128,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,8,13,13,10,1,0,255,216,216, + 216,216,216,216,216,216,216,216,216,255,8,13,13,10,1,0, + 255,27,27,27,27,27,27,27,27,27,27,27,255,4,13,13, + 10,4,0,16,48,32,96,64,192,128,192,64,96,32,48,16, + 4,13,13,10,4,0,128,192,64,96,32,48,16,48,32,96, + 64,192,128,7,13,13,10,1,0,18,54,36,108,72,216,144, + 216,72,108,36,54,18,7,13,13,10,2,0,144,216,72,108, + 36,54,18,54,36,108,72,216,144,255,255,255,255,255,255,255, + 255,255,10,8,16,10,0,2,24,0,48,0,96,0,255,192, + 255,192,96,0,48,0,24,0,10,8,16,10,0,2,6,0, + 3,0,1,128,255,192,255,192,1,128,3,0,6,0,10,8, + 16,10,0,2,18,0,51,0,97,128,255,192,255,192,97,128, + 51,0,18,0,10,9,18,10,0,2,12,0,24,0,63,192, + 127,192,192,0,127,192,63,192,24,0,12,0,10,9,18,10, + 0,2,12,0,6,0,255,0,255,128,0,192,255,128,255,0, + 6,0,12,0,10,9,18,10,0,2,18,0,51,0,127,128, + 255,192,128,192,255,192,127,128,51,0,18,0,10,8,16,10, + 0,2,24,192,48,192,96,192,255,192,255,192,96,192,48,192, + 24,192,10,8,16,10,0,2,198,0,195,0,193,128,255,192, + 255,192,193,128,195,0,198,0,10,9,18,10,0,2,12,64, + 24,64,63,192,127,192,192,64,127,192,63,192,24,64,12,64, + 10,9,18,10,0,2,140,0,134,0,255,0,255,128,128,192, + 255,128,255,0,134,0,140,0,10,8,16,10,0,2,6,0, + 3,0,171,128,170,192,85,192,85,128,3,0,6,0}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w= 9 h=17 x= 4 y=16 dx=10 dy= 0 ascent=16 len=26 + Font Bounding box w=10 h=20 x= 0 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_10x20[3453] U8G_SECTION(".progmem.u8g_font_10x20") = { + 0,10,20,0,252,13,2,74,4,153,32,255,252,16,252,13, + 252,0,0,0,10,0,16,2,13,13,10,4,0,192,192,192, + 192,192,192,192,192,192,192,0,192,192,6,4,4,10,2,9, + 204,204,204,72,9,11,22,10,1,1,27,0,27,0,27,0, + 127,128,54,0,54,0,54,0,255,0,108,0,108,0,108,0, + 8,13,13,10,1,0,24,126,219,216,216,216,126,27,27,27, + 219,126,24,9,12,24,10,1,0,115,0,219,0,222,0,118, + 0,12,0,12,0,24,0,24,0,55,0,61,128,109,128,103, + 0,9,13,26,10,1,0,56,0,108,0,108,0,108,0,120, + 0,48,0,112,0,216,0,205,128,199,0,198,0,239,0,121, + 128,2,5,5,10,4,8,192,192,192,192,128,5,13,13,10, + 3,0,24,48,96,96,192,192,192,192,192,96,96,48,24,5, + 13,13,10,2,0,192,96,48,48,24,24,24,24,24,48,48, + 96,192,8,7,7,10,1,3,102,102,60,255,60,102,102,8, + 7,7,10,1,3,24,24,24,255,24,24,24,4,3,3,10, + 3,255,112,112,224,8,1,1,10,1,6,255,3,3,3,10, + 4,0,224,224,224,7,12,12,10,2,0,6,6,12,12,24, + 24,48,48,96,96,192,192,8,13,13,10,1,0,24,60,102, + 102,195,195,195,195,195,102,102,60,24,8,13,13,10,1,0, + 24,56,120,216,24,24,24,24,24,24,24,24,255,8,13,13, + 10,1,0,60,102,195,195,3,3,6,28,48,96,192,192,255, + 8,13,13,10,1,0,60,102,195,195,3,6,28,6,3,195, + 195,102,60,8,13,13,10,1,0,2,6,14,30,54,102,198, + 198,255,6,6,6,6,8,13,13,10,1,0,255,192,192,192, + 192,220,230,3,3,3,195,102,60,8,13,13,10,1,0,60, + 102,194,192,192,220,230,195,195,195,195,102,60,8,13,13,10, + 1,0,255,3,3,6,6,12,12,24,24,48,48,96,96,8, + 13,13,10,1,0,60,102,195,195,195,102,60,102,195,195,195, + 102,60,8,13,13,10,1,0,60,102,195,195,195,195,103,59, + 3,3,67,102,60,3,8,8,10,4,0,224,224,0,0,0, + 0,224,224,4,9,9,10,3,255,112,112,0,0,0,0,112, + 112,224,7,13,13,10,1,0,2,6,12,24,48,96,192,96, + 48,24,12,6,2,8,6,6,10,1,3,255,0,0,0,0, + 255,7,13,13,10,2,0,128,192,96,48,24,12,6,12,24, + 48,96,192,128,8,13,13,10,1,0,60,102,195,195,195,6, + 12,24,24,24,0,24,24,8,13,13,10,1,0,60,102,195, + 207,223,219,219,219,222,204,192,99,62,8,13,13,10,1,0, + 24,60,102,102,195,195,195,255,195,195,195,195,195,8,13,13, + 10,1,0,248,204,198,198,198,204,252,198,195,195,195,198,252, + 8,13,13,10,1,0,60,102,195,192,192,192,192,192,192,192, + 195,102,60,8,13,13,10,1,0,252,198,195,195,195,195,195, + 195,195,195,195,198,252,8,13,13,10,1,0,255,192,192,192, + 192,192,252,192,192,192,192,192,255,8,13,13,10,1,0,255, + 192,192,192,192,192,252,192,192,192,192,192,192,8,13,13,10, + 1,0,60,102,195,192,192,192,207,195,195,195,195,103,61,8, + 13,13,10,1,0,195,195,195,195,195,195,255,195,195,195,195, + 195,195,8,13,13,10,1,0,255,24,24,24,24,24,24,24, + 24,24,24,24,255,9,13,26,10,1,0,31,128,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,198,0,198, + 0,108,0,56,0,8,13,13,10,1,0,195,195,198,198,204, + 204,248,204,204,198,198,195,195,8,13,13,10,1,0,192,192, + 192,192,192,192,192,192,192,192,192,192,255,8,13,13,10,1, + 0,195,195,231,231,255,219,219,219,219,195,195,195,195,8,13, + 13,10,1,0,195,227,227,243,243,219,219,207,207,199,199,195, + 195,8,13,13,10,1,0,60,102,195,195,195,195,195,195,195, + 195,195,102,60,8,13,13,10,1,0,252,198,195,195,195,195, + 198,252,192,192,192,192,192,8,14,14,10,1,255,60,102,195, + 195,195,195,195,195,195,219,207,102,62,3,8,13,13,10,1, + 0,252,198,195,195,195,195,198,252,204,198,198,195,195,8,13, + 13,10,1,0,60,102,195,192,192,96,60,6,3,3,195,102, + 60,8,13,13,10,1,0,255,24,24,24,24,24,24,24,24, + 24,24,24,24,8,13,13,10,1,0,195,195,195,195,195,195, + 195,195,195,195,195,102,60,8,13,13,10,1,0,195,195,195, + 195,102,102,102,60,60,60,24,24,24,8,13,13,10,1,0, + 195,195,195,195,195,219,219,219,219,231,231,195,195,8,13,13, + 10,1,0,195,195,102,102,60,60,24,60,60,102,102,195,195, + 8,13,13,10,1,0,195,195,102,102,60,60,24,24,24,24, + 24,24,24,8,13,13,10,1,0,255,3,3,6,12,12,24, + 48,48,96,192,192,255,6,13,13,10,2,0,252,192,192,192, + 192,192,192,192,192,192,192,192,252,7,12,12,10,2,0,192, + 192,96,96,48,48,24,24,12,12,6,6,6,13,13,10,2, + 0,252,12,12,12,12,12,12,12,12,12,12,12,252,8,4, + 4,10,1,9,24,60,102,195,9,1,2,10,1,255,255,128, + 4,3,3,10,3,10,192,96,48,8,8,8,10,1,0,62, + 99,3,127,195,195,195,125,8,13,13,10,1,0,192,192,192, + 192,192,220,230,195,195,195,195,230,220,8,8,8,10,1,0, + 62,99,192,192,192,192,99,62,8,13,13,10,1,0,3,3, + 3,3,3,59,103,195,195,195,195,103,59,8,8,8,10,1, + 0,60,102,195,255,192,192,99,62,8,13,13,10,1,0,30, + 51,51,48,48,252,48,48,48,48,48,48,48,8,12,12,10, + 1,252,125,199,198,198,198,124,192,126,195,195,195,126,8,13, + 13,10,1,0,192,192,192,192,192,220,230,195,195,195,195,195, + 195,8,11,11,10,1,0,24,24,0,120,24,24,24,24,24, + 24,255,7,15,15,10,2,252,6,6,0,30,6,6,6,6, + 6,6,6,198,198,198,124,8,13,13,10,1,0,192,192,192, + 192,192,198,204,216,240,248,204,198,195,8,13,13,10,1,0, + 120,24,24,24,24,24,24,24,24,24,24,24,255,8,8,8, + 10,1,0,182,255,219,219,219,219,219,219,8,8,8,10,1, + 0,220,230,195,195,195,195,195,195,8,8,8,10,1,0,60, + 102,195,195,195,195,102,60,8,12,12,10,1,252,220,230,195, + 195,195,195,230,220,192,192,192,192,8,12,12,10,1,252,59, + 103,195,195,195,195,103,59,3,3,3,3,8,8,8,10,1, + 0,222,115,96,96,96,96,96,96,8,8,8,10,1,0,126, + 195,192,126,3,3,195,126,8,11,11,10,1,0,48,48,48, + 252,48,48,48,48,48,51,30,8,8,8,10,1,0,195,195, + 195,195,195,195,103,59,8,8,8,10,1,0,195,195,102,102, + 60,60,24,24,8,8,8,10,1,0,195,195,195,219,219,219, + 255,102,8,8,8,10,1,0,195,102,60,24,24,60,102,195, + 8,12,12,10,1,252,195,195,195,195,195,195,103,59,3,195, + 102,60,7,8,8,10,2,0,254,6,12,24,48,96,192,254, + 8,13,13,10,1,0,15,24,24,24,24,24,240,24,24,24, + 24,24,15,2,13,13,10,4,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,8,13,13,10,1,0,240,24,24,24, + 24,24,15,24,24,24,24,24,240,8,3,3,10,1,10,115, + 219,206,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,10,0,16,2,13,13,10,4,0,192, + 192,0,192,192,192,192,192,192,192,192,192,192,7,12,12,10, + 1,0,24,24,60,102,194,192,192,194,102,60,24,24,9,12, + 24,10,1,0,30,0,51,0,51,0,48,0,48,0,252,0, + 48,0,48,0,48,0,248,0,173,128,231,0,9,9,18,10, + 0,1,128,128,221,128,127,0,99,0,99,0,99,0,127,0, + 221,128,128,128,8,11,11,10,1,0,129,195,102,60,126,24, + 126,24,24,24,24,2,13,13,10,4,0,192,192,192,192,192, + 0,0,0,192,192,192,192,192,8,13,13,10,1,0,60,102, + 198,96,120,204,102,51,30,6,99,102,60,6,2,2,10,2, + 11,204,204,8,11,11,10,1,0,60,102,195,189,165,161,165, + 189,195,102,60,8,9,9,10,1,4,62,67,3,127,195,195, + 125,0,255,9,11,22,10,0,0,4,128,13,128,27,0,54, + 0,108,0,216,0,108,0,54,0,27,0,13,128,4,128,8, + 4,4,10,1,4,255,255,3,3,6,1,1,10,2,6,252, + 8,11,11,10,1,0,60,102,195,189,165,189,169,173,195,102, + 60,8,1,1,10,1,13,255,6,6,6,10,2,7,48,120, + 204,204,120,48,8,7,7,10,1,2,24,24,255,24,24,0, + 255,5,7,7,10,2,6,112,216,24,48,96,192,248,5,7, + 7,10,2,6,112,216,24,48,24,216,112,4,3,3,10,3, + 10,48,96,192,7,10,10,10,1,253,198,198,198,198,198,238, + 250,192,192,192,8,13,13,10,1,0,127,255,251,251,251,123, + 27,27,27,27,27,27,27,3,3,3,10,4,5,224,224,224, + 5,4,4,10,2,252,48,24,216,112,4,7,7,10,2,6, + 96,224,96,96,96,96,240,7,9,9,10,1,4,56,108,198, + 198,198,108,56,0,254,9,11,22,10,1,0,144,0,216,0, + 108,0,54,0,27,0,13,128,27,0,54,0,108,0,216,0, + 144,0,8,12,12,10,1,1,64,192,65,66,228,8,18,38, + 74,158,2,2,8,12,12,10,1,1,64,192,65,66,228,8, + 22,41,65,130,4,15,8,12,12,10,1,1,224,16,97,18, + 228,8,18,38,74,159,2,2,8,13,13,10,1,0,24,24, + 0,24,24,24,48,96,195,195,195,102,60,8,15,15,10,1, + 0,96,48,24,0,24,60,102,195,195,195,255,195,195,195,195, + 8,15,15,10,1,0,6,12,24,0,24,60,102,195,195,195, + 255,195,195,195,195,8,15,15,10,1,0,24,60,102,0,24, + 60,102,195,195,195,255,195,195,195,195,8,15,15,10,1,0, + 50,126,76,0,24,60,102,195,195,195,255,195,195,195,195,8, + 15,15,10,1,0,102,102,0,24,60,102,102,195,195,195,255, + 195,195,195,195,8,16,16,10,1,0,60,102,102,60,0,24, + 60,102,195,195,195,255,195,195,195,195,8,13,13,10,1,0, + 31,60,108,108,204,204,255,204,204,204,204,204,207,8,17,17, + 10,1,252,60,102,195,192,192,192,192,192,192,192,195,102,60, + 24,12,108,56,8,15,15,10,1,0,96,48,24,0,255,192, + 192,192,192,252,192,192,192,192,255,8,15,15,10,1,0,12, + 24,48,0,255,192,192,192,192,252,192,192,192,192,255,8,15, + 15,10,1,0,24,60,102,0,255,192,192,192,192,252,192,192, + 192,192,255,8,15,15,10,1,0,102,102,0,0,255,192,192, + 192,192,252,192,192,192,192,255,6,15,15,10,2,0,96,48, + 24,0,252,48,48,48,48,48,48,48,48,48,252,6,15,15, + 10,2,0,24,48,96,0,252,48,48,48,48,48,48,48,48, + 48,252,6,15,15,10,2,0,48,120,204,0,252,48,48,48, + 48,48,48,48,48,48,252,6,15,15,10,2,0,204,204,0, + 252,48,48,48,48,48,48,48,48,48,48,252,9,13,26,10, + 0,0,126,0,99,0,97,128,97,128,97,128,97,128,249,128, + 97,128,97,128,97,128,97,128,99,0,126,0,8,15,15,10, + 1,0,50,126,76,0,195,227,243,243,219,219,207,207,199,195, + 195,8,15,15,10,1,0,48,24,12,0,60,102,195,195,195, + 195,195,195,195,102,60,8,15,15,10,1,0,12,24,48,0, + 60,102,195,195,195,195,195,195,195,102,60,8,15,15,10,1, + 0,24,60,102,0,60,102,195,195,195,195,195,195,195,102,60, + 8,15,15,10,1,0,50,126,76,0,60,102,195,195,195,195, + 195,195,195,102,60,8,15,15,10,1,0,102,102,0,60,102, + 195,195,195,195,195,195,195,195,102,60,7,8,8,10,1,0, + 130,198,108,56,56,108,198,130,8,15,15,10,1,255,1,62, + 102,199,199,203,203,203,211,211,211,227,102,124,128,8,15,15, + 10,1,0,48,24,12,0,195,195,195,195,195,195,195,195,195, + 102,60,8,15,15,10,1,0,12,24,48,0,195,195,195,195, + 195,195,195,195,195,102,60,8,15,15,10,1,0,24,60,102, + 0,195,195,195,195,195,195,195,195,195,102,60,8,15,15,10, + 1,0,102,102,0,195,195,195,195,195,195,195,195,195,195,102, + 60,8,15,15,10,1,0,12,24,48,0,195,195,102,102,60, + 60,24,24,24,24,24,7,13,13,10,2,0,192,192,192,252, + 198,198,198,198,198,252,192,192,192,8,13,13,10,1,0,28, + 54,99,99,102,236,108,102,99,99,99,102,108,8,12,12,10, + 1,0,48,24,12,0,126,195,3,127,195,195,195,125,8,12, + 12,10,1,0,12,24,48,0,126,195,3,127,195,195,195,125, + 8,12,12,10,1,0,24,60,102,0,126,195,3,127,195,195, + 195,125,8,12,12,10,1,0,50,126,76,0,126,195,3,127, + 195,195,195,125,8,11,11,10,1,0,102,102,0,126,195,3, + 127,195,195,195,125,8,13,13,10,1,0,60,102,102,60,0, + 126,195,3,127,195,195,195,125,8,8,8,10,1,0,118,155, + 27,30,120,216,217,110,8,12,12,10,1,252,62,99,192,192, + 192,192,99,62,24,12,108,56,8,12,12,10,1,0,96,48, + 24,0,60,102,195,255,192,192,99,62,8,12,12,10,1,0, + 6,12,24,0,60,102,195,255,192,192,99,62,8,12,12,10, + 1,0,24,60,102,0,60,102,195,255,192,192,99,62,8,11, + 11,10,1,0,102,102,0,60,102,195,255,192,192,99,62,8, + 12,12,10,1,0,96,48,24,0,120,24,24,24,24,24,24, + 255,8,12,12,10,1,0,12,24,48,0,120,24,24,24,24, + 24,24,255,8,12,12,10,1,0,24,60,102,0,120,24,24, + 24,24,24,24,255,8,11,11,10,1,0,102,102,0,120,24, + 24,24,24,24,24,255,8,13,13,10,1,0,136,216,112,112, + 216,140,62,103,195,195,195,102,60,8,12,12,10,1,0,50, + 126,76,0,220,230,195,195,195,195,195,195,8,12,12,10,1, + 0,96,48,24,0,60,102,195,195,195,195,102,60,8,12,12, + 10,1,0,6,12,24,0,60,102,195,195,195,195,102,60,8, + 12,12,10,1,0,24,60,102,0,60,102,195,195,195,195,102, + 60,8,12,12,10,1,0,50,126,76,0,60,102,195,195,195, + 195,102,60,8,11,11,10,1,0,102,102,0,60,102,195,195, + 195,195,102,60,8,10,10,10,1,1,24,24,0,0,255,255, + 0,0,24,24,8,10,10,10,1,255,1,62,102,203,203,211, + 211,102,124,128,8,12,12,10,1,0,48,24,12,0,195,195, + 195,195,195,195,103,59,8,12,12,10,1,0,6,12,24,0, + 195,195,195,195,195,195,103,59,8,12,12,10,1,0,24,60, + 102,0,195,195,195,195,195,195,103,59,8,11,11,10,1,0, + 102,102,0,195,195,195,195,195,195,103,59,8,16,16,10,1, + 252,12,24,48,0,195,195,195,195,195,195,103,59,3,195,102, + 60,7,17,17,10,2,252,192,192,192,192,192,192,248,204,198, + 198,198,204,248,192,192,192,192,8,15,15,10,1,252,102,102, + 0,195,195,195,195,195,195,103,59,3,195,102,60}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w= 9 h=15 x= 4 y=16 dx=10 dy= 0 ascent=16 len=26 + Font Bounding box w=10 h=20 x= 0 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_10x20r[1667] U8G_SECTION(".progmem.u8g_font_10x20r") = { + 0,10,20,0,252,13,2,74,4,153,32,127,252,16,252,13, + 252,0,0,0,10,0,16,2,13,13,10,4,0,192,192,192, + 192,192,192,192,192,192,192,0,192,192,6,4,4,10,2,9, + 204,204,204,72,9,11,22,10,1,1,27,0,27,0,27,0, + 127,128,54,0,54,0,54,0,255,0,108,0,108,0,108,0, + 8,13,13,10,1,0,24,126,219,216,216,216,126,27,27,27, + 219,126,24,9,12,24,10,1,0,115,0,219,0,222,0,118, + 0,12,0,12,0,24,0,24,0,55,0,61,128,109,128,103, + 0,9,13,26,10,1,0,56,0,108,0,108,0,108,0,120, + 0,48,0,112,0,216,0,205,128,199,0,198,0,239,0,121, + 128,2,5,5,10,4,8,192,192,192,192,128,5,13,13,10, + 3,0,24,48,96,96,192,192,192,192,192,96,96,48,24,5, + 13,13,10,2,0,192,96,48,48,24,24,24,24,24,48,48, + 96,192,8,7,7,10,1,3,102,102,60,255,60,102,102,8, + 7,7,10,1,3,24,24,24,255,24,24,24,4,3,3,10, + 3,255,112,112,224,8,1,1,10,1,6,255,3,3,3,10, + 4,0,224,224,224,7,12,12,10,2,0,6,6,12,12,24, + 24,48,48,96,96,192,192,8,13,13,10,1,0,24,60,102, + 102,195,195,195,195,195,102,102,60,24,8,13,13,10,1,0, + 24,56,120,216,24,24,24,24,24,24,24,24,255,8,13,13, + 10,1,0,60,102,195,195,3,3,6,28,48,96,192,192,255, + 8,13,13,10,1,0,60,102,195,195,3,6,28,6,3,195, + 195,102,60,8,13,13,10,1,0,2,6,14,30,54,102,198, + 198,255,6,6,6,6,8,13,13,10,1,0,255,192,192,192, + 192,220,230,3,3,3,195,102,60,8,13,13,10,1,0,60, + 102,194,192,192,220,230,195,195,195,195,102,60,8,13,13,10, + 1,0,255,3,3,6,6,12,12,24,24,48,48,96,96,8, + 13,13,10,1,0,60,102,195,195,195,102,60,102,195,195,195, + 102,60,8,13,13,10,1,0,60,102,195,195,195,195,103,59, + 3,3,67,102,60,3,8,8,10,4,0,224,224,0,0,0, + 0,224,224,4,9,9,10,3,255,112,112,0,0,0,0,112, + 112,224,7,13,13,10,1,0,2,6,12,24,48,96,192,96, + 48,24,12,6,2,8,6,6,10,1,3,255,0,0,0,0, + 255,7,13,13,10,2,0,128,192,96,48,24,12,6,12,24, + 48,96,192,128,8,13,13,10,1,0,60,102,195,195,195,6, + 12,24,24,24,0,24,24,8,13,13,10,1,0,60,102,195, + 207,223,219,219,219,222,204,192,99,62,8,13,13,10,1,0, + 24,60,102,102,195,195,195,255,195,195,195,195,195,8,13,13, + 10,1,0,248,204,198,198,198,204,252,198,195,195,195,198,252, + 8,13,13,10,1,0,60,102,195,192,192,192,192,192,192,192, + 195,102,60,8,13,13,10,1,0,252,198,195,195,195,195,195, + 195,195,195,195,198,252,8,13,13,10,1,0,255,192,192,192, + 192,192,252,192,192,192,192,192,255,8,13,13,10,1,0,255, + 192,192,192,192,192,252,192,192,192,192,192,192,8,13,13,10, + 1,0,60,102,195,192,192,192,207,195,195,195,195,103,61,8, + 13,13,10,1,0,195,195,195,195,195,195,255,195,195,195,195, + 195,195,8,13,13,10,1,0,255,24,24,24,24,24,24,24, + 24,24,24,24,255,9,13,26,10,1,0,31,128,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,198,0,198, + 0,108,0,56,0,8,13,13,10,1,0,195,195,198,198,204, + 204,248,204,204,198,198,195,195,8,13,13,10,1,0,192,192, + 192,192,192,192,192,192,192,192,192,192,255,8,13,13,10,1, + 0,195,195,231,231,255,219,219,219,219,195,195,195,195,8,13, + 13,10,1,0,195,227,227,243,243,219,219,207,207,199,199,195, + 195,8,13,13,10,1,0,60,102,195,195,195,195,195,195,195, + 195,195,102,60,8,13,13,10,1,0,252,198,195,195,195,195, + 198,252,192,192,192,192,192,8,14,14,10,1,255,60,102,195, + 195,195,195,195,195,195,219,207,102,62,3,8,13,13,10,1, + 0,252,198,195,195,195,195,198,252,204,198,198,195,195,8,13, + 13,10,1,0,60,102,195,192,192,96,60,6,3,3,195,102, + 60,8,13,13,10,1,0,255,24,24,24,24,24,24,24,24, + 24,24,24,24,8,13,13,10,1,0,195,195,195,195,195,195, + 195,195,195,195,195,102,60,8,13,13,10,1,0,195,195,195, + 195,102,102,102,60,60,60,24,24,24,8,13,13,10,1,0, + 195,195,195,195,195,219,219,219,219,231,231,195,195,8,13,13, + 10,1,0,195,195,102,102,60,60,24,60,60,102,102,195,195, + 8,13,13,10,1,0,195,195,102,102,60,60,24,24,24,24, + 24,24,24,8,13,13,10,1,0,255,3,3,6,12,12,24, + 48,48,96,192,192,255,6,13,13,10,2,0,252,192,192,192, + 192,192,192,192,192,192,192,192,252,7,12,12,10,2,0,192, + 192,96,96,48,48,24,24,12,12,6,6,6,13,13,10,2, + 0,252,12,12,12,12,12,12,12,12,12,12,12,252,8,4, + 4,10,1,9,24,60,102,195,9,1,2,10,1,255,255,128, + 4,3,3,10,3,10,192,96,48,8,8,8,10,1,0,62, + 99,3,127,195,195,195,125,8,13,13,10,1,0,192,192,192, + 192,192,220,230,195,195,195,195,230,220,8,8,8,10,1,0, + 62,99,192,192,192,192,99,62,8,13,13,10,1,0,3,3, + 3,3,3,59,103,195,195,195,195,103,59,8,8,8,10,1, + 0,60,102,195,255,192,192,99,62,8,13,13,10,1,0,30, + 51,51,48,48,252,48,48,48,48,48,48,48,8,12,12,10, + 1,252,125,199,198,198,198,124,192,126,195,195,195,126,8,13, + 13,10,1,0,192,192,192,192,192,220,230,195,195,195,195,195, + 195,8,11,11,10,1,0,24,24,0,120,24,24,24,24,24, + 24,255,7,15,15,10,2,252,6,6,0,30,6,6,6,6, + 6,6,6,198,198,198,124,8,13,13,10,1,0,192,192,192, + 192,192,198,204,216,240,248,204,198,195,8,13,13,10,1,0, + 120,24,24,24,24,24,24,24,24,24,24,24,255,8,8,8, + 10,1,0,182,255,219,219,219,219,219,219,8,8,8,10,1, + 0,220,230,195,195,195,195,195,195,8,8,8,10,1,0,60, + 102,195,195,195,195,102,60,8,12,12,10,1,252,220,230,195, + 195,195,195,230,220,192,192,192,192,8,12,12,10,1,252,59, + 103,195,195,195,195,103,59,3,3,3,3,8,8,8,10,1, + 0,222,115,96,96,96,96,96,96,8,8,8,10,1,0,126, + 195,192,126,3,3,195,126,8,11,11,10,1,0,48,48,48, + 252,48,48,48,48,48,51,30,8,8,8,10,1,0,195,195, + 195,195,195,195,103,59,8,8,8,10,1,0,195,195,102,102, + 60,60,24,24,8,8,8,10,1,0,195,195,195,219,219,219, + 255,102,8,8,8,10,1,0,195,102,60,24,24,60,102,195, + 8,12,12,10,1,252,195,195,195,195,195,195,103,59,3,195, + 102,60,7,8,8,10,2,0,254,6,12,24,48,96,192,254, + 8,13,13,10,1,0,15,24,24,24,24,24,240,24,24,24, + 24,24,15,2,13,13,10,4,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,8,13,13,10,1,0,240,24,24,24, + 24,24,15,24,24,24,24,24,240,8,3,3,10,1,10,115, + 219,206,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--6-60-75-75-C-40-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 4 h= 6 x= 1 y= 5 dx= 4 dy= 0 ascent= 5 len= 6 + Font Bounding box w= 4 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_4x6[1500] U8G_SECTION(".progmem.u8g_font_4x6") = { + 1,4,6,0,255,5,1,3,1,250,32,255,255,5,255,5, + 255,7,0,64,18,21,69,128,128,128,0,128,5,50,66,160, + 160,2,69,69,160,240,160,240,160,1,54,70,64,224,192,32, + 224,64,2,53,69,128,32,64,128,32,2,69,69,64,160,64, + 160,80,21,18,66,128,128,17,38,70,64,128,128,128,128,64, + 1,38,70,128,64,64,64,64,128,2,53,69,160,64,224,64, + 160,2,53,69,64,64,224,64,64,1,34,66,64,128,4,49, + 65,224,18,17,65,128,2,53,69,32,32,64,128,128,2,53, + 69,64,160,224,160,64,2,53,69,64,192,64,64,224,2,53, + 69,64,160,32,64,224,2,53,69,224,32,64,32,192,2,53, + 69,160,160,224,32,32,2,53,69,224,128,192,32,192,2,53, + 69,96,128,192,160,64,2,53,69,224,32,64,128,128,2,53, + 69,96,160,64,160,192,2,53,69,64,160,96,32,192,18,20, + 68,128,0,0,128,1,37,69,64,0,0,64,128,2,53,69, + 32,64,128,64,32,3,51,67,224,0,224,2,53,69,128,64, + 32,64,128,2,53,69,192,32,64,0,64,2,53,69,96,160, + 160,128,96,2,53,69,64,160,224,160,160,2,53,69,192,160, + 192,160,192,2,53,69,64,160,128,160,64,2,53,69,192,160, + 160,160,192,2,53,69,224,128,192,128,224,2,53,69,224,128, + 192,128,128,2,53,69,96,128,160,160,96,2,53,69,160,160, + 224,160,160,2,53,69,224,64,64,64,224,2,53,69,32,32, + 32,160,64,2,53,69,160,160,192,160,160,2,53,69,128,128, + 128,128,224,2,53,69,160,224,224,160,160,2,53,69,32,160, + 224,160,128,2,53,69,64,160,160,160,64,2,53,69,192,160, + 192,128,128,1,54,70,64,160,160,160,64,32,2,53,69,192, + 160,192,160,160,2,53,69,96,128,64,32,192,2,53,69,224, + 64,64,64,64,2,53,69,160,160,160,160,224,2,53,69,160, + 160,160,224,64,2,53,69,160,160,224,224,160,2,53,69,160, + 160,64,160,160,2,53,69,160,160,64,64,64,2,53,69,224, + 32,64,128,224,18,37,69,192,128,128,128,192,2,53,69,128, + 128,64,32,32,2,37,69,192,64,64,64,192,5,50,66,64, + 160,1,49,65,224,21,34,66,128,64,2,52,68,96,160,160, + 96,2,53,69,128,192,160,160,192,2,52,68,96,128,128,96, + 2,53,69,32,96,160,160,96,2,52,68,64,160,192,96,2, + 53,69,32,64,224,64,64,1,53,69,96,160,96,32,192,2, + 53,69,128,192,160,160,160,2,53,69,64,0,192,64,224,1, + 54,70,32,0,32,32,32,192,2,53,69,128,160,192,160,160, + 2,53,69,192,64,64,64,224,2,52,68,160,224,160,160,2, + 52,68,192,160,160,160,2,52,68,64,160,160,64,1,53,69, + 192,160,192,128,128,1,53,69,96,160,160,96,32,2,52,68, + 160,192,128,128,2,52,68,96,192,32,192,2,53,69,64,224, + 64,64,32,2,52,68,160,160,160,96,2,52,68,160,160,160, + 64,2,52,68,160,160,224,160,2,52,68,160,64,64,160,1, + 53,69,160,160,96,32,192,2,52,68,224,32,64,224,1,54, + 70,32,64,192,64,64,32,18,21,69,128,128,128,128,128,1, + 54,70,128,64,96,64,64,128,5,66,66,80,160,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,7,0, + 64,18,21,69,128,0,128,128,128,2,53,69,64,224,128,224, + 64,2,53,69,32,64,96,64,160,2,68,68,144,96,96,144, + 2,53,69,160,64,224,64,64,18,21,69,128,128,0,128,128, + 1,54,70,96,192,160,96,32,192,6,49,65,160,1,70,70, + 96,144,208,208,144,96,2,53,69,96,160,96,0,224,3,67, + 67,80,160,80,3,50,66,224,32,4,49,65,224,3,68,68, + 96,240,208,96,6,49,65,224,4,51,67,64,160,64,2,53, + 69,64,224,64,0,224,3,36,68,192,64,128,192,2,37,69, + 192,64,128,64,128,21,34,66,64,128,1,53,69,160,160,160, + 192,128,2,69,69,112,208,208,80,80,20,17,65,128,18,34, + 66,64,128,3,36,68,64,192,64,64,2,53,69,64,160,64, + 0,224,3,67,67,160,80,160,1,70,70,128,128,128,80,112, + 16,1,70,70,128,128,176,16,32,48,1,70,70,192,64,128, + 80,176,16,2,53,69,64,0,64,128,96,2,53,69,128,64, + 160,224,160,2,53,69,32,64,160,224,160,2,53,69,192,64, + 160,224,160,2,53,69,96,192,160,224,160,2,53,69,160,64, + 160,224,160,2,53,69,64,64,160,224,160,2,69,69,112,160, + 240,160,176,1,54,70,64,160,128,160,64,128,2,53,69,128, + 224,192,128,224,2,53,69,32,224,192,128,224,2,53,69,96, + 224,192,128,224,2,53,69,160,224,192,128,224,2,53,69,128, + 224,64,64,224,2,53,69,32,224,64,64,224,2,53,69,64, + 224,64,64,224,2,53,69,160,64,64,64,224,2,69,69,224, + 80,208,80,224,2,69,69,80,160,224,224,160,2,53,69,128, + 64,160,160,64,2,53,69,32,64,160,160,64,2,53,69,64, + 64,160,160,64,2,69,69,112,224,160,160,64,2,53,69,160, + 64,160,160,64,3,51,67,160,64,160,2,53,69,96,160,224, + 160,192,2,53,69,128,64,160,160,224,2,53,69,32,64,160, + 160,224,2,53,69,64,0,160,160,224,2,53,69,160,0,160, + 160,224,2,53,69,32,0,160,64,64,2,53,69,128,192,160, + 192,128,1,54,70,64,160,192,160,224,128,2,53,69,128,64, + 96,160,96,2,53,69,32,64,96,160,96,2,53,69,96,0, + 96,160,96,2,69,69,80,160,96,160,96,2,53,69,160,0, + 96,160,96,2,53,69,64,0,96,160,96,2,68,68,112,176, + 160,112,1,53,69,64,160,128,96,64,2,53,69,128,64,160, + 192,96,2,53,69,32,64,160,192,96,2,53,69,192,64,160, + 192,96,2,53,69,160,64,160,192,96,2,53,69,128,64,64, + 64,224,2,53,69,32,192,64,64,224,2,53,69,64,160,64, + 64,224,2,53,69,160,0,192,64,224,2,53,69,160,64,96, + 160,64,2,69,69,80,160,192,160,160,2,53,69,128,64,64, + 160,64,2,53,69,32,64,64,160,64,2,53,69,64,0,64, + 160,64,2,53,69,224,0,64,160,64,2,53,69,160,0,64, + 160,64,2,53,69,64,0,224,0,64,2,52,68,96,160,160, + 192,2,53,69,128,64,160,160,96,2,53,69,32,64,160,160, + 96,2,53,69,64,0,160,160,96,2,53,69,160,0,160,160, + 96,1,54,70,32,64,160,224,32,192,1,54,70,128,128,192, + 160,192,128,1,54,70,160,0,160,224,32,192}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--6-60-75-75-C-40-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 4 h= 6 x= 1 y= 5 dx= 4 dy= 0 ascent= 5 len= 6 + Font Bounding box w= 4 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_4x6r[734] U8G_SECTION(".progmem.u8g_font_4x6r") = { + 1,4,6,0,255,5,1,3,1,250,32,127,255,5,255,5, + 255,7,0,64,18,21,69,128,128,128,0,128,5,50,66,160, + 160,2,69,69,160,240,160,240,160,1,54,70,64,224,192,32, + 224,64,2,53,69,128,32,64,128,32,2,69,69,64,160,64, + 160,80,21,18,66,128,128,17,38,70,64,128,128,128,128,64, + 1,38,70,128,64,64,64,64,128,2,53,69,160,64,224,64, + 160,2,53,69,64,64,224,64,64,1,34,66,64,128,4,49, + 65,224,18,17,65,128,2,53,69,32,32,64,128,128,2,53, + 69,64,160,224,160,64,2,53,69,64,192,64,64,224,2,53, + 69,64,160,32,64,224,2,53,69,224,32,64,32,192,2,53, + 69,160,160,224,32,32,2,53,69,224,128,192,32,192,2,53, + 69,96,128,192,160,64,2,53,69,224,32,64,128,128,2,53, + 69,96,160,64,160,192,2,53,69,64,160,96,32,192,18,20, + 68,128,0,0,128,1,37,69,64,0,0,64,128,2,53,69, + 32,64,128,64,32,3,51,67,224,0,224,2,53,69,128,64, + 32,64,128,2,53,69,192,32,64,0,64,2,53,69,96,160, + 160,128,96,2,53,69,64,160,224,160,160,2,53,69,192,160, + 192,160,192,2,53,69,64,160,128,160,64,2,53,69,192,160, + 160,160,192,2,53,69,224,128,192,128,224,2,53,69,224,128, + 192,128,128,2,53,69,96,128,160,160,96,2,53,69,160,160, + 224,160,160,2,53,69,224,64,64,64,224,2,53,69,32,32, + 32,160,64,2,53,69,160,160,192,160,160,2,53,69,128,128, + 128,128,224,2,53,69,160,224,224,160,160,2,53,69,32,160, + 224,160,128,2,53,69,64,160,160,160,64,2,53,69,192,160, + 192,128,128,1,54,70,64,160,160,160,64,32,2,53,69,192, + 160,192,160,160,2,53,69,96,128,64,32,192,2,53,69,224, + 64,64,64,64,2,53,69,160,160,160,160,224,2,53,69,160, + 160,160,224,64,2,53,69,160,160,224,224,160,2,53,69,160, + 160,64,160,160,2,53,69,160,160,64,64,64,2,53,69,224, + 32,64,128,224,18,37,69,192,128,128,128,192,2,53,69,128, + 128,64,32,32,2,37,69,192,64,64,64,192,5,50,66,64, + 160,1,49,65,224,21,34,66,128,64,2,52,68,96,160,160, + 96,2,53,69,128,192,160,160,192,2,52,68,96,128,128,96, + 2,53,69,32,96,160,160,96,2,52,68,64,160,192,96,2, + 53,69,32,64,224,64,64,1,53,69,96,160,96,32,192,2, + 53,69,128,192,160,160,160,2,53,69,64,0,192,64,224,1, + 54,70,32,0,32,32,32,192,2,53,69,128,160,192,160,160, + 2,53,69,192,64,64,64,224,2,52,68,160,224,160,160,2, + 52,68,192,160,160,160,2,52,68,64,160,160,64,1,53,69, + 192,160,192,128,128,1,53,69,96,160,160,96,32,2,52,68, + 160,192,128,128,2,52,68,96,192,32,192,2,53,69,64,224, + 64,64,32,2,52,68,160,160,160,96,2,52,68,160,160,160, + 64,2,52,68,160,160,224,160,2,52,68,160,64,64,160,1, + 53,69,160,160,96,32,192,2,52,68,224,32,64,224,1,54, + 70,32,64,192,64,64,32,18,21,69,128,128,128,128,128,1, + 54,70,128,64,96,64,64,128,5,66,66,80,160,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--7-70-75-75-C-50-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 6, '1' Height: 6 + Calculated Max Values w= 5 h= 7 x= 2 y= 6 dx= 5 dy= 0 ascent= 6 len= 7 + Font Bounding box w= 5 h= 7 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-1 + X Font ascent = 6 descent=-1 + Max Font ascent = 6 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_5x7[1624] U8G_SECTION(".progmem.u8g_font_5x7") = { + 1,5,7,0,255,6,1,21,2,39,32,255,255,6,255,6, + 255,8,0,80,34,22,86,128,128,128,128,0,128,21,51,83, + 160,160,160,2,85,85,80,248,80,248,80,2,85,85,112,160, + 112,40,112,2,70,86,128,144,32,64,144,16,2,69,85,64, + 160,64,160,80,37,19,83,128,128,128,18,38,86,64,128,128, + 128,128,64,18,38,86,128,64,64,64,64,128,18,53,85,160, + 64,224,64,160,2,85,85,32,32,248,32,32,17,51,83,96, + 64,128,4,65,81,240,18,34,82,192,192,3,68,84,16,32, + 64,128,18,54,86,64,160,160,160,160,64,18,54,86,64,192, + 64,64,64,224,2,70,86,96,144,16,32,64,240,2,70,86, + 240,16,96,16,144,96,2,70,86,32,96,160,240,32,32,2, + 70,86,240,128,224,16,144,96,2,70,86,96,128,224,144,144, + 96,2,70,86,240,16,32,32,64,64,2,70,86,96,144,96, + 144,144,96,2,70,86,96,144,144,112,16,96,18,37,85,192, + 192,0,192,192,1,54,86,96,96,0,96,64,128,18,53,85, + 32,64,128,64,32,3,67,83,240,0,240,18,53,85,128,64, + 32,64,128,18,54,86,64,160,32,64,0,64,2,70,86,96, + 144,176,176,128,96,2,70,86,96,144,144,240,144,144,2,70, + 86,224,144,224,144,144,224,2,70,86,96,144,128,128,144,96, + 2,70,86,224,144,144,144,144,224,2,70,86,240,128,224,128, + 128,240,2,70,86,240,128,224,128,128,128,2,70,86,96,144, + 128,176,144,112,2,70,86,144,144,240,144,144,144,18,54,86, + 224,64,64,64,64,224,2,70,86,16,16,16,16,144,96,2, + 70,86,144,160,192,192,160,144,2,70,86,128,128,128,128,128, + 240,2,70,86,144,240,240,144,144,144,2,70,86,144,208,208, + 176,176,144,2,70,86,96,144,144,144,144,96,2,70,86,224, + 144,144,224,128,128,1,71,87,96,144,144,144,208,96,16,2, + 70,86,224,144,144,224,160,144,2,70,86,96,144,64,32,144, + 96,18,54,86,224,64,64,64,64,64,2,70,86,144,144,144, + 144,144,96,2,70,86,144,144,144,144,96,96,2,70,86,144, + 144,144,240,240,144,2,70,86,144,144,96,96,144,144,18,54, + 86,160,160,160,64,64,64,2,70,86,240,16,32,64,128,240, + 18,54,86,224,128,128,128,128,224,3,68,84,128,64,32,16, + 18,54,86,224,32,32,32,32,224,22,50,82,64,160,2,65, + 81,240,22,34,82,128,64,2,68,84,112,144,176,80,2,70, + 86,128,128,224,144,144,224,2,52,84,96,128,128,96,2,70, + 86,16,16,112,144,144,112,2,68,84,96,176,192,96,2,70, + 86,32,80,64,224,64,64,1,69,85,112,144,96,128,112,2, + 70,86,128,128,224,144,144,144,18,54,86,64,0,192,64,64, + 224,17,55,87,32,0,32,32,32,160,64,2,70,86,128,128, + 160,192,160,144,18,54,86,192,64,64,64,64,224,2,68,84, + 160,240,144,144,2,68,84,224,144,144,144,2,68,84,96,144, + 144,96,1,69,85,224,144,144,224,128,1,69,85,112,144,144, + 112,16,2,68,84,224,144,128,128,2,68,84,112,192,48,224, + 2,70,86,64,64,224,64,64,48,2,68,84,144,144,144,112, + 18,52,84,160,160,160,64,2,68,84,144,144,240,240,2,68, + 84,144,96,96,144,1,69,85,144,144,80,32,64,2,68,84, + 240,32,64,240,18,54,86,32,64,192,64,64,32,34,22,86, + 128,128,128,128,128,128,18,54,86,128,64,96,64,64,128,6, + 66,82,80,160,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,8,0,80,34,22,86,128,0,128,128,128, + 128,1,70,86,32,112,160,160,112,32,2,69,85,48,64,224, + 64,176,2,85,85,136,112,80,112,136,18,54,86,160,160,64, + 224,64,64,34,21,85,128,128,0,128,128,17,55,87,96,128, + 192,160,96,32,192,23,49,81,160,1,87,87,112,136,168,200, + 168,136,112,5,51,83,96,160,96,3,83,83,72,144,72,3, + 66,82,240,16,20,49,81,224,1,87,87,112,136,232,200,200, + 136,112,7,65,81,240,21,51,83,64,160,64,2,86,86,32, + 32,248,32,32,248,20,36,84,192,64,128,192,20,36,84,192, + 192,64,192,22,34,82,64,128,1,69,85,144,144,144,224,128, + 2,70,86,112,208,208,80,80,80,20,34,82,192,192,17,34, + 82,64,128,20,52,84,64,192,64,224,5,51,83,64,160,64, + 3,83,83,144,72,144,1,71,87,128,128,128,144,48,112,16, + 1,71,87,128,128,128,176,16,32,48,1,71,87,192,192,64, + 208,48,112,16,18,54,86,64,0,64,128,160,64,2,70,86, + 96,144,144,240,144,144,2,70,86,96,144,144,240,144,144,2, + 70,86,96,144,144,240,144,144,2,70,86,96,144,144,240,144, + 144,2,70,86,144,96,144,240,144,144,2,70,86,96,96,144, + 240,144,144,2,70,86,112,160,176,224,160,176,1,71,87,96, + 144,128,128,144,96,64,2,70,86,240,128,224,128,128,240,2, + 70,86,240,128,224,128,128,240,2,70,86,240,128,224,128,128, + 240,2,70,86,240,128,224,128,128,240,18,54,86,224,64,64, + 64,64,224,18,54,86,224,64,64,64,64,224,18,54,86,224, + 64,64,64,64,224,18,54,86,224,64,64,64,64,224,2,70, + 86,224,80,208,80,80,224,2,70,86,176,144,208,176,176,144, + 2,70,86,96,144,144,144,144,96,2,70,86,96,144,144,144, + 144,96,2,70,86,96,144,144,144,144,96,2,70,86,96,144, + 144,144,144,96,2,70,86,144,96,144,144,144,96,2,68,84, + 144,96,96,144,2,70,86,112,176,176,208,208,224,2,70,86, + 144,144,144,144,144,96,2,70,86,144,144,144,144,144,96,2, + 70,86,144,144,144,144,144,96,2,70,86,144,0,144,144,144, + 96,18,54,86,160,160,160,64,64,64,2,70,86,128,224,144, + 224,128,128,2,70,86,96,144,160,144,144,160,2,70,86,64, + 32,112,144,176,80,2,70,86,32,64,112,144,176,80,2,70, + 86,32,80,112,144,176,80,2,70,86,80,160,112,144,176,80, + 2,70,86,80,0,112,144,176,80,2,70,86,96,96,112,144, + 176,80,2,68,84,112,176,160,112,17,53,85,96,128,128,96, + 64,2,70,86,64,32,96,176,192,96,2,70,86,32,64,96, + 176,192,96,2,70,86,64,160,96,176,192,96,2,70,86,160, + 0,96,176,192,96,18,54,86,128,64,192,64,64,224,18,54, + 86,64,128,192,64,64,224,18,54,86,64,160,192,64,64,224, + 18,54,86,160,0,192,64,64,224,2,70,86,64,48,96,144, + 144,96,2,70,86,80,160,224,144,144,144,2,70,86,64,32, + 96,144,144,96,2,70,86,32,64,96,144,144,96,2,70,86, + 96,0,96,144,144,96,2,70,86,80,160,96,144,144,96,2, + 70,86,80,0,96,144,144,96,2,69,85,96,0,240,0,96, + 2,68,84,112,176,208,224,2,70,86,64,32,144,144,144,112, + 2,70,86,32,64,144,144,144,112,2,70,86,96,0,144,144, + 144,112,2,70,86,80,0,144,144,144,112,1,71,87,32,64, + 144,144,80,32,64,1,70,86,128,224,144,144,224,128,1,71, + 87,80,0,144,144,80,32,64}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--7-70-75-75-C-50-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 6, '1' Height: 6 + Calculated Max Values w= 5 h= 7 x= 2 y= 6 dx= 5 dy= 0 ascent= 6 len= 7 + Font Bounding box w= 5 h= 7 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-1 + X Font ascent = 6 descent=-1 + Max Font ascent = 6 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_5x7r[789] U8G_SECTION(".progmem.u8g_font_5x7r") = { + 1,5,7,0,255,6,1,21,2,39,32,127,255,6,255,6, + 255,8,0,80,34,22,86,128,128,128,128,0,128,21,51,83, + 160,160,160,2,85,85,80,248,80,248,80,2,85,85,112,160, + 112,40,112,2,70,86,128,144,32,64,144,16,2,69,85,64, + 160,64,160,80,37,19,83,128,128,128,18,38,86,64,128,128, + 128,128,64,18,38,86,128,64,64,64,64,128,18,53,85,160, + 64,224,64,160,2,85,85,32,32,248,32,32,17,51,83,96, + 64,128,4,65,81,240,18,34,82,192,192,3,68,84,16,32, + 64,128,18,54,86,64,160,160,160,160,64,18,54,86,64,192, + 64,64,64,224,2,70,86,96,144,16,32,64,240,2,70,86, + 240,16,96,16,144,96,2,70,86,32,96,160,240,32,32,2, + 70,86,240,128,224,16,144,96,2,70,86,96,128,224,144,144, + 96,2,70,86,240,16,32,32,64,64,2,70,86,96,144,96, + 144,144,96,2,70,86,96,144,144,112,16,96,18,37,85,192, + 192,0,192,192,1,54,86,96,96,0,96,64,128,18,53,85, + 32,64,128,64,32,3,67,83,240,0,240,18,53,85,128,64, + 32,64,128,18,54,86,64,160,32,64,0,64,2,70,86,96, + 144,176,176,128,96,2,70,86,96,144,144,240,144,144,2,70, + 86,224,144,224,144,144,224,2,70,86,96,144,128,128,144,96, + 2,70,86,224,144,144,144,144,224,2,70,86,240,128,224,128, + 128,240,2,70,86,240,128,224,128,128,128,2,70,86,96,144, + 128,176,144,112,2,70,86,144,144,240,144,144,144,18,54,86, + 224,64,64,64,64,224,2,70,86,16,16,16,16,144,96,2, + 70,86,144,160,192,192,160,144,2,70,86,128,128,128,128,128, + 240,2,70,86,144,240,240,144,144,144,2,70,86,144,208,208, + 176,176,144,2,70,86,96,144,144,144,144,96,2,70,86,224, + 144,144,224,128,128,1,71,87,96,144,144,144,208,96,16,2, + 70,86,224,144,144,224,160,144,2,70,86,96,144,64,32,144, + 96,18,54,86,224,64,64,64,64,64,2,70,86,144,144,144, + 144,144,96,2,70,86,144,144,144,144,96,96,2,70,86,144, + 144,144,240,240,144,2,70,86,144,144,96,96,144,144,18,54, + 86,160,160,160,64,64,64,2,70,86,240,16,32,64,128,240, + 18,54,86,224,128,128,128,128,224,3,68,84,128,64,32,16, + 18,54,86,224,32,32,32,32,224,22,50,82,64,160,2,65, + 81,240,22,34,82,128,64,2,68,84,112,144,176,80,2,70, + 86,128,128,224,144,144,224,2,52,84,96,128,128,96,2,70, + 86,16,16,112,144,144,112,2,68,84,96,176,192,96,2,70, + 86,32,80,64,224,64,64,1,69,85,112,144,96,128,112,2, + 70,86,128,128,224,144,144,144,18,54,86,64,0,192,64,64, + 224,17,55,87,32,0,32,32,32,160,64,2,70,86,128,128, + 160,192,160,144,18,54,86,192,64,64,64,64,224,2,68,84, + 160,240,144,144,2,68,84,224,144,144,144,2,68,84,96,144, + 144,96,1,69,85,224,144,144,224,128,1,69,85,112,144,144, + 112,16,2,68,84,224,144,128,128,2,68,84,112,192,48,224, + 2,70,86,64,64,224,64,64,48,2,68,84,144,144,144,112, + 18,52,84,160,160,160,64,2,68,84,144,144,240,240,2,68, + 84,144,96,96,144,1,69,85,144,144,80,32,64,2,68,84, + 240,32,64,240,18,54,86,32,64,192,64,64,32,34,22,86, + 128,128,128,128,128,128,18,54,86,128,64,96,64,64,128,6, + 66,82,80,160,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--8-80-75-75-C-50-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 6, '1' Height: 6 + Calculated Max Values w= 5 h= 8 x= 2 y= 7 dx= 5 dy= 0 ascent= 7 len= 8 + Font Bounding box w= 5 h= 8 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-1 + X Font ascent = 6 descent=-1 + Max Font ascent = 7 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_5x8[1693] U8G_SECTION(".progmem.u8g_font_5x8") = { + 1,5,8,0,255,6,1,33,2,53,32,255,255,7,255,6, + 255,9,0,80,34,22,86,128,128,128,128,0,128,21,51,83, + 160,160,160,2,87,87,80,80,248,80,248,80,80,2,87,87, + 32,112,160,112,40,112,32,19,53,85,128,160,64,160,32,2, + 71,87,64,160,160,64,160,160,80,37,19,83,128,128,128,18, + 38,86,64,128,128,128,128,64,18,38,86,128,64,64,64,64, + 128,2,69,85,144,96,240,96,144,2,85,85,32,32,248,32, + 32,17,51,83,96,64,128,4,65,81,240,17,51,83,64,224, + 64,2,70,86,16,16,32,64,128,128,18,54,86,64,160,160, + 160,160,64,18,54,86,64,192,64,64,64,224,2,70,86,96, + 144,16,96,128,240,2,70,86,240,32,96,16,144,96,2,70, + 86,32,96,160,240,32,32,2,70,86,240,128,224,16,144,96, + 2,70,86,96,128,224,144,144,96,2,70,86,240,16,32,32, + 64,64,2,70,86,96,144,96,144,144,96,2,70,86,96,144, + 144,112,16,96,18,37,85,192,192,0,192,192,17,54,86,96, + 96,0,96,64,128,18,54,86,32,64,128,128,64,32,3,67, + 83,240,0,240,18,54,86,128,64,32,32,64,128,18,54,86, + 64,160,32,64,0,64,1,88,88,48,72,152,168,168,144,64, + 48,2,70,86,96,144,144,240,144,144,2,70,86,224,144,224, + 144,144,224,2,70,86,96,144,128,128,144,96,2,70,86,224, + 144,144,144,144,224,2,70,86,240,128,224,128,128,240,2,70, + 86,240,128,224,128,128,128,2,70,86,96,144,128,176,144,96, + 2,70,86,144,144,240,144,144,144,18,54,86,224,64,64,64, + 64,224,2,70,86,112,32,32,32,160,64,2,70,86,144,160, + 192,160,160,144,2,70,86,128,128,128,128,128,240,2,70,86, + 144,240,240,144,144,144,2,70,86,144,208,240,176,176,144,2, + 70,86,96,144,144,144,144,96,2,70,86,224,144,144,224,128, + 128,1,71,87,96,144,144,208,176,96,16,2,70,86,224,144, + 144,224,144,144,2,70,86,96,144,64,32,144,96,18,54,86, + 224,64,64,64,64,64,2,70,86,144,144,144,144,144,96,2, + 70,86,144,144,144,144,96,96,2,70,86,144,144,144,240,240, + 144,2,70,86,144,144,96,96,144,144,2,86,86,136,136,80, + 32,32,32,2,70,86,240,16,32,64,128,240,18,54,86,224, + 128,128,128,128,224,2,70,86,128,128,64,32,16,16,18,54, + 86,224,32,32,32,32,224,22,50,82,64,160,1,65,81,240, + 22,34,82,128,64,2,68,84,112,144,144,112,2,70,86,128, + 128,224,144,144,224,18,52,84,96,128,128,96,2,70,86,16, + 16,112,144,144,112,2,68,84,96,176,192,96,2,70,86,32, + 80,64,224,64,64,1,69,85,96,144,112,16,96,2,70,86, + 128,128,224,144,144,144,18,54,86,64,0,192,64,64,224,17, + 55,87,32,0,32,32,32,160,64,2,70,86,128,128,144,224, + 144,144,18,54,86,192,64,64,64,64,224,2,84,84,208,168, + 168,168,2,68,84,224,144,144,144,2,68,84,96,144,144,96, + 1,69,85,224,144,224,128,128,1,69,85,112,144,112,16,16, + 2,68,84,160,208,128,128,18,52,84,96,192,32,192,2,70, + 86,64,64,224,64,80,32,2,68,84,144,144,144,112,18,52, + 84,160,160,160,64,2,84,84,136,168,168,80,2,68,84,144, + 96,96,144,1,69,85,144,144,112,144,96,2,68,84,240,32, + 64,240,2,71,87,48,64,32,192,32,64,48,34,22,86,128, + 128,128,128,128,128,2,71,87,192,32,64,48,64,32,192,6, + 66,82,80,160,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,9,0,80,34,22,86,128,0,128,128,128, + 128,1,70,86,32,112,160,160,112,32,2,70,86,32,80,224, + 64,80,160,2,85,85,136,112,80,112,136,2,86,86,136,80, + 248,32,248,32,34,23,87,128,128,128,0,128,128,128,2,71, + 87,112,128,224,144,112,16,224,23,49,81,160,2,86,86,112, + 168,200,200,168,112,20,53,85,96,160,96,0,224,3,67,83, + 80,160,80,18,51,83,224,32,32,20,49,81,224,2,86,86, + 112,232,216,232,216,112,23,49,81,224,21,51,83,64,160,64, + 18,53,85,64,224,64,0,224,20,53,85,64,160,32,64,224, + 20,53,85,192,32,192,32,192,22,34,82,64,128,1,69,85, + 144,144,144,224,128,2,86,86,120,232,232,104,40,40,36,17, + 81,128,17,34,82,64,128,20,53,85,64,192,64,64,224,20, + 53,85,64,160,64,0,224,3,67,83,160,80,160,2,71,87, + 128,128,128,160,96,240,32,2,71,87,128,128,160,208,16,32, + 112,2,71,87,128,64,128,96,160,240,32,18,54,86,64,0, + 64,128,160,64,2,71,87,64,32,96,144,240,144,144,2,71, + 87,32,64,96,144,240,144,144,2,71,87,96,144,96,144,240, + 144,144,2,71,87,80,160,96,144,240,144,144,2,71,87,144, + 0,96,144,240,144,144,2,71,87,96,144,96,144,240,144,144, + 2,70,86,112,160,160,240,160,176,1,71,87,96,144,128,128, + 144,96,64,2,71,87,64,32,240,128,224,128,240,2,71,87, + 32,64,240,128,224,128,240,2,71,87,96,144,240,128,224,128, + 240,2,71,87,144,0,240,128,224,128,240,18,55,87,128,64, + 224,64,64,64,224,18,55,87,32,64,224,64,64,64,224,18, + 55,87,64,160,224,64,64,64,224,18,55,87,160,0,224,64, + 64,64,224,2,86,86,112,72,232,72,72,112,2,71,87,80, + 160,144,208,176,144,144,2,71,87,64,32,96,144,144,144,96, + 2,71,87,32,64,96,144,144,144,96,2,71,87,96,144,96, + 144,144,144,96,2,71,87,80,160,96,144,144,144,96,2,71, + 87,144,0,96,144,144,144,96,18,51,83,160,64,160,2,70, + 86,112,176,176,208,208,224,2,71,87,64,32,144,144,144,144, + 96,2,71,87,32,64,144,144,144,144,96,2,71,87,96,144, + 144,144,144,144,96,2,71,87,144,0,144,144,144,144,96,2, + 87,87,16,32,136,80,32,32,32,2,70,86,128,224,144,144, + 224,128,2,70,86,96,144,160,160,144,160,2,71,87,64,32, + 0,112,144,144,112,2,71,87,32,64,0,112,144,144,112,2, + 71,87,32,80,0,112,144,144,112,2,71,87,80,160,0,112, + 144,144,112,2,70,86,80,0,112,144,144,112,2,71,87,96, + 144,96,112,144,144,112,2,84,84,240,104,176,120,17,53,85, + 96,128,128,96,64,2,71,87,64,32,0,96,176,192,96,2, + 71,87,32,64,0,96,176,192,96,2,71,87,96,144,0,96, + 176,192,96,2,70,86,80,0,96,176,192,96,18,55,87,128, + 64,0,192,64,64,224,18,55,87,32,64,0,192,64,64,224, + 18,55,87,64,160,0,192,64,64,224,18,54,86,160,0,192, + 64,64,224,2,71,87,160,64,160,16,112,144,96,2,71,87, + 80,160,0,224,144,144,144,2,71,87,64,32,0,96,144,144, + 96,2,71,87,32,64,0,96,144,144,96,2,71,87,96,144, + 0,96,144,144,96,2,71,87,80,160,0,96,144,144,96,2, + 70,86,144,0,96,144,144,96,18,53,85,64,0,224,0,64, + 2,68,84,112,176,208,224,2,71,87,64,32,0,144,144,144, + 112,2,71,87,32,64,0,144,144,144,112,2,71,87,96,144, + 0,144,144,144,112,2,70,86,144,0,144,144,144,112,1,72, + 88,32,64,0,144,144,112,144,96,1,71,87,128,128,224,144, + 224,128,128,1,71,87,144,0,144,144,112,144,96}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--8-80-75-75-C-50-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 6, '1' Height: 6 + Calculated Max Values w= 5 h= 8 x= 2 y= 7 dx= 5 dy= 0 ascent= 7 len= 8 + Font Bounding box w= 5 h= 8 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-1 + X Font ascent = 6 descent=-1 + Max Font ascent = 7 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_5x8r[805] U8G_SECTION(".progmem.u8g_font_5x8r") = { + 1,5,8,0,255,6,1,33,2,53,32,127,255,7,255,6, + 255,9,0,80,34,22,86,128,128,128,128,0,128,21,51,83, + 160,160,160,2,87,87,80,80,248,80,248,80,80,2,87,87, + 32,112,160,112,40,112,32,19,53,85,128,160,64,160,32,2, + 71,87,64,160,160,64,160,160,80,37,19,83,128,128,128,18, + 38,86,64,128,128,128,128,64,18,38,86,128,64,64,64,64, + 128,2,69,85,144,96,240,96,144,2,85,85,32,32,248,32, + 32,17,51,83,96,64,128,4,65,81,240,17,51,83,64,224, + 64,2,70,86,16,16,32,64,128,128,18,54,86,64,160,160, + 160,160,64,18,54,86,64,192,64,64,64,224,2,70,86,96, + 144,16,96,128,240,2,70,86,240,32,96,16,144,96,2,70, + 86,32,96,160,240,32,32,2,70,86,240,128,224,16,144,96, + 2,70,86,96,128,224,144,144,96,2,70,86,240,16,32,32, + 64,64,2,70,86,96,144,96,144,144,96,2,70,86,96,144, + 144,112,16,96,18,37,85,192,192,0,192,192,17,54,86,96, + 96,0,96,64,128,18,54,86,32,64,128,128,64,32,3,67, + 83,240,0,240,18,54,86,128,64,32,32,64,128,18,54,86, + 64,160,32,64,0,64,1,88,88,48,72,152,168,168,144,64, + 48,2,70,86,96,144,144,240,144,144,2,70,86,224,144,224, + 144,144,224,2,70,86,96,144,128,128,144,96,2,70,86,224, + 144,144,144,144,224,2,70,86,240,128,224,128,128,240,2,70, + 86,240,128,224,128,128,128,2,70,86,96,144,128,176,144,96, + 2,70,86,144,144,240,144,144,144,18,54,86,224,64,64,64, + 64,224,2,70,86,112,32,32,32,160,64,2,70,86,144,160, + 192,160,160,144,2,70,86,128,128,128,128,128,240,2,70,86, + 144,240,240,144,144,144,2,70,86,144,208,240,176,176,144,2, + 70,86,96,144,144,144,144,96,2,70,86,224,144,144,224,128, + 128,1,71,87,96,144,144,208,176,96,16,2,70,86,224,144, + 144,224,144,144,2,70,86,96,144,64,32,144,96,18,54,86, + 224,64,64,64,64,64,2,70,86,144,144,144,144,144,96,2, + 70,86,144,144,144,144,96,96,2,70,86,144,144,144,240,240, + 144,2,70,86,144,144,96,96,144,144,2,86,86,136,136,80, + 32,32,32,2,70,86,240,16,32,64,128,240,18,54,86,224, + 128,128,128,128,224,2,70,86,128,128,64,32,16,16,18,54, + 86,224,32,32,32,32,224,22,50,82,64,160,1,65,81,240, + 22,34,82,128,64,2,68,84,112,144,144,112,2,70,86,128, + 128,224,144,144,224,18,52,84,96,128,128,96,2,70,86,16, + 16,112,144,144,112,2,68,84,96,176,192,96,2,70,86,32, + 80,64,224,64,64,1,69,85,96,144,112,16,96,2,70,86, + 128,128,224,144,144,144,18,54,86,64,0,192,64,64,224,17, + 55,87,32,0,32,32,32,160,64,2,70,86,128,128,144,224, + 144,144,18,54,86,192,64,64,64,64,224,2,84,84,208,168, + 168,168,2,68,84,224,144,144,144,2,68,84,96,144,144,96, + 1,69,85,224,144,224,128,128,1,69,85,112,144,112,16,16, + 2,68,84,160,208,128,128,18,52,84,96,192,32,192,2,70, + 86,64,64,224,64,80,32,2,68,84,144,144,144,112,18,52, + 84,160,160,160,64,2,84,84,136,168,168,80,2,68,84,144, + 96,96,144,1,69,85,144,144,112,144,96,2,68,84,240,32, + 64,240,2,71,87,48,64,32,192,32,64,48,34,22,86,128, + 128,128,128,128,128,2,71,87,192,32,64,48,64,32,192,6, + 66,82,80,160,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--10-100-75-75-C-60-ISO10646-1 + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 6 h= 9 x= 2 y= 8 dx= 6 dy= 0 ascent= 8 len= 9 + Font Bounding box w= 6 h=10 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 8 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x10[1866] U8G_SECTION(".progmem.u8g_font_6x10") = { + 1,6,10,0,254,7,1,54,2,104,32,255,254,8,254,7, + 254,10,0,96,34,23,103,128,128,128,128,128,0,128,22,51, + 99,160,160,160,2,87,103,80,80,248,80,248,80,80,2,87, + 103,32,112,160,112,40,112,32,2,87,103,72,168,80,32,80, + 168,144,2,87,103,64,160,160,64,168,144,104,38,19,99,128, + 128,128,18,55,103,32,64,128,128,128,64,32,18,55,103,128, + 64,32,32,32,64,128,3,85,101,136,80,248,80,136,3,85, + 101,32,32,248,32,32,17,51,99,96,64,128,5,81,97,248, + 17,51,99,64,224,64,2,87,103,8,8,16,32,64,128,128, + 2,87,103,32,80,136,136,136,80,32,2,87,103,32,96,160, + 32,32,32,248,2,87,103,112,136,8,48,64,128,248,2,87, + 103,248,8,16,48,8,136,112,2,87,103,16,48,80,144,248, + 16,16,2,87,103,248,128,176,200,8,136,112,2,87,103,48, + 64,128,176,200,136,112,2,87,103,248,8,16,16,32,64,64, + 2,87,103,112,136,136,112,136,136,112,2,87,103,112,136,152, + 104,8,16,96,17,55,103,64,224,64,0,64,224,64,17,55, + 103,64,224,64,0,96,64,128,18,71,103,16,32,64,128,64, + 32,16,4,83,99,248,0,248,18,71,103,128,64,32,16,32, + 64,128,2,87,103,112,136,16,32,32,0,32,2,87,103,112, + 136,152,168,176,128,112,2,87,103,32,80,136,136,248,136,136, + 2,87,103,240,72,72,112,72,72,240,2,87,103,112,136,128, + 128,128,136,112,2,87,103,240,72,72,72,72,72,240,2,87, + 103,248,128,128,240,128,128,248,2,87,103,248,128,128,240,128, + 128,128,2,87,103,112,136,128,128,152,136,112,2,87,103,136, + 136,136,248,136,136,136,18,55,103,224,64,64,64,64,64,224, + 2,87,103,56,16,16,16,16,144,96,2,87,103,136,144,160, + 192,160,144,136,2,87,103,128,128,128,128,128,128,248,2,87, + 103,136,136,216,168,136,136,136,2,87,103,136,136,200,168,152, + 136,136,2,87,103,112,136,136,136,136,136,112,2,87,103,240, + 136,136,240,128,128,128,1,88,104,112,136,136,136,136,168,112, + 8,2,87,103,240,136,136,240,160,144,136,2,87,103,112,136, + 128,112,8,136,112,2,87,103,248,32,32,32,32,32,32,2, + 87,103,136,136,136,136,136,136,112,2,87,103,136,136,136,80, + 80,80,32,2,87,103,136,136,136,168,168,216,136,2,87,103, + 136,136,80,32,80,136,136,2,87,103,136,136,80,32,32,32, + 32,2,87,103,248,8,16,32,64,128,248,18,55,103,224,128, + 128,128,128,128,224,2,87,103,128,128,64,32,16,8,8,18, + 55,103,224,32,32,32,32,32,224,6,83,99,32,80,136,1, + 81,97,248,40,34,98,128,64,2,85,101,112,8,120,136,120, + 2,87,103,128,128,176,200,136,200,176,2,85,101,112,136,128, + 136,112,2,87,103,8,8,104,152,136,152,104,2,85,101,112, + 136,248,128,112,2,87,103,48,72,64,240,64,64,64,0,87, + 103,120,136,136,120,8,136,112,2,87,103,128,128,176,200,136, + 136,136,18,55,103,64,0,192,64,64,64,224,16,73,105,16, + 0,48,16,16,16,144,144,96,2,87,103,128,128,136,144,224, + 144,136,18,55,103,192,64,64,64,64,64,224,2,85,101,208, + 168,168,168,136,2,85,101,176,200,136,136,136,2,85,101,112, + 136,136,136,112,0,87,103,176,200,136,200,176,128,128,0,87, + 103,104,152,136,152,104,8,8,2,85,101,176,200,128,128,128, + 2,85,101,112,128,112,8,240,2,87,103,64,64,240,64,64, + 72,48,2,85,101,136,136,136,152,104,2,85,101,136,136,80, + 80,32,2,85,101,136,136,168,168,80,2,85,101,136,80,32, + 80,136,0,87,103,136,136,152,104,8,136,112,2,85,101,248, + 16,32,64,248,18,71,103,48,64,32,192,32,64,48,34,23, + 103,128,128,128,128,128,128,128,18,71,103,192,32,64,48,64, + 32,192,6,83,99,72,168,144,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,10,0,96,34,23,103,128, + 0,128,128,128,128,128,1,87,103,32,120,160,160,160,120,32, + 2,87,103,48,72,64,224,64,72,176,2,85,101,136,112,80, + 112,136,1,88,104,136,136,80,32,248,32,32,32,34,23,103, + 128,128,128,0,128,128,128,1,88,104,112,128,224,144,72,56, + 8,112,25,49,97,160,2,87,103,112,136,168,200,168,136,112, + 19,70,102,112,144,176,80,0,240,2,101,101,36,72,144,72, + 36,20,66,98,240,16,21,65,97,240,2,87,103,112,136,232, + 200,200,136,112,9,81,97,248,22,51,99,64,160,64,2,86, + 102,32,32,248,32,32,248,21,69,101,96,144,32,64,240,21, + 69,101,224,16,96,16,224,40,34,98,64,128,1,86,102,136, + 136,136,200,176,128,2,87,103,120,232,232,104,40,40,40,37, + 17,97,128,32,34,98,64,128,21,53,101,64,192,64,64,224, + 19,70,102,96,144,144,96,0,240,2,101,101,144,72,36,72, + 144,1,105,105,64,192,64,64,228,12,20,60,4,1,105,105, + 64,192,64,64,232,20,4,8,28,1,89,105,192,32,64,32, + 200,24,40,120,8,2,87,103,32,0,32,32,64,136,112,2, + 88,104,64,32,112,136,136,248,136,136,2,88,104,16,32,112, + 136,136,248,136,136,2,88,104,32,80,112,136,136,248,136,136, + 2,88,104,72,176,112,136,136,248,136,136,2,88,104,80,0, + 112,136,136,248,136,136,2,88,104,32,80,112,136,136,248,136, + 136,2,103,103,60,80,144,156,240,144,156,0,89,105,112,136, + 128,128,128,136,112,32,64,2,88,104,64,248,128,128,240,128, + 128,248,2,88,104,16,248,128,128,240,128,128,248,2,88,104, + 32,248,128,128,240,128,128,248,2,88,104,80,248,128,128,240, + 128,128,248,18,56,104,128,64,224,64,64,64,64,224,18,56, + 104,32,64,224,64,64,64,64,224,18,56,104,64,160,224,64, + 64,64,64,224,18,56,104,160,0,224,64,64,64,64,224,2, + 87,103,240,72,72,232,72,72,240,2,88,104,40,80,136,200, + 168,152,136,136,2,88,104,64,32,112,136,136,136,136,112,2, + 88,104,16,32,112,136,136,136,136,112,2,88,104,32,80,112, + 136,136,136,136,112,2,88,104,40,80,112,136,136,136,136,112, + 2,88,104,80,0,112,136,136,136,136,112,2,85,101,136,80, + 32,80,136,2,87,103,112,152,152,168,200,200,112,2,88,104, + 64,32,136,136,136,136,136,112,2,88,104,16,32,136,136,136, + 136,136,112,2,88,104,32,80,0,136,136,136,136,112,2,88, + 104,80,0,136,136,136,136,136,112,2,88,104,16,32,136,136, + 80,32,32,32,2,87,103,128,240,136,240,128,128,128,2,87, + 103,112,136,144,160,144,136,176,2,88,104,64,32,0,112,8, + 120,136,120,2,88,104,16,32,0,112,8,120,136,120,2,88, + 104,32,80,0,112,8,120,136,120,2,88,104,40,80,0,112, + 8,120,136,120,2,87,103,80,0,112,8,120,136,120,2,88, + 104,32,80,32,112,8,120,136,120,2,101,101,120,20,124,144, + 124,0,87,103,112,136,128,136,112,32,64,2,88,104,64,32, + 0,112,136,248,128,112,2,88,104,16,32,0,112,136,248,128, + 112,2,88,104,32,80,0,112,136,248,128,112,2,87,103,80, + 0,112,136,248,128,112,18,56,104,128,64,0,192,64,64,64, + 224,18,56,104,64,128,0,192,64,64,64,224,18,56,104,64, + 160,0,192,64,64,64,224,18,55,103,160,0,192,64,64,64, + 224,2,87,103,192,48,112,136,136,136,112,2,88,104,40,80, + 0,176,200,136,136,136,2,88,104,64,32,0,112,136,136,136, + 112,2,88,104,16,32,0,112,136,136,136,112,2,88,104,32, + 80,0,112,136,136,136,112,2,88,104,40,80,0,112,136,136, + 136,112,2,87,103,80,0,112,136,136,136,112,3,85,101,32, + 0,248,0,32,2,85,101,120,152,168,200,240,2,88,104,64, + 32,0,136,136,136,152,104,2,88,104,16,32,0,136,136,136, + 152,104,2,88,104,32,80,0,136,136,136,152,104,2,87,103, + 80,0,136,136,136,152,104,0,89,105,16,32,136,136,152,104, + 8,136,112,0,88,104,128,240,136,136,136,240,128,128,0,89, + 105,80,0,136,136,152,104,8,136,112}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--10-100-75-75-C-60-ISO10646-1 + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 5 h= 9 x= 2 y= 8 dx= 6 dy= 0 ascent= 8 len= 9 + Font Bounding box w= 6 h=10 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 8 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x10r[889] U8G_SECTION(".progmem.u8g_font_6x10r") = { + 1,6,10,0,254,7,1,54,2,104,32,127,254,8,254,7, + 254,10,0,96,34,23,103,128,128,128,128,128,0,128,22,51, + 99,160,160,160,2,87,103,80,80,248,80,248,80,80,2,87, + 103,32,112,160,112,40,112,32,2,87,103,72,168,80,32,80, + 168,144,2,87,103,64,160,160,64,168,144,104,38,19,99,128, + 128,128,18,55,103,32,64,128,128,128,64,32,18,55,103,128, + 64,32,32,32,64,128,3,85,101,136,80,248,80,136,3,85, + 101,32,32,248,32,32,17,51,99,96,64,128,5,81,97,248, + 17,51,99,64,224,64,2,87,103,8,8,16,32,64,128,128, + 2,87,103,32,80,136,136,136,80,32,2,87,103,32,96,160, + 32,32,32,248,2,87,103,112,136,8,48,64,128,248,2,87, + 103,248,8,16,48,8,136,112,2,87,103,16,48,80,144,248, + 16,16,2,87,103,248,128,176,200,8,136,112,2,87,103,48, + 64,128,176,200,136,112,2,87,103,248,8,16,16,32,64,64, + 2,87,103,112,136,136,112,136,136,112,2,87,103,112,136,152, + 104,8,16,96,17,55,103,64,224,64,0,64,224,64,17,55, + 103,64,224,64,0,96,64,128,18,71,103,16,32,64,128,64, + 32,16,4,83,99,248,0,248,18,71,103,128,64,32,16,32, + 64,128,2,87,103,112,136,16,32,32,0,32,2,87,103,112, + 136,152,168,176,128,112,2,87,103,32,80,136,136,248,136,136, + 2,87,103,240,72,72,112,72,72,240,2,87,103,112,136,128, + 128,128,136,112,2,87,103,240,72,72,72,72,72,240,2,87, + 103,248,128,128,240,128,128,248,2,87,103,248,128,128,240,128, + 128,128,2,87,103,112,136,128,128,152,136,112,2,87,103,136, + 136,136,248,136,136,136,18,55,103,224,64,64,64,64,64,224, + 2,87,103,56,16,16,16,16,144,96,2,87,103,136,144,160, + 192,160,144,136,2,87,103,128,128,128,128,128,128,248,2,87, + 103,136,136,216,168,136,136,136,2,87,103,136,136,200,168,152, + 136,136,2,87,103,112,136,136,136,136,136,112,2,87,103,240, + 136,136,240,128,128,128,1,88,104,112,136,136,136,136,168,112, + 8,2,87,103,240,136,136,240,160,144,136,2,87,103,112,136, + 128,112,8,136,112,2,87,103,248,32,32,32,32,32,32,2, + 87,103,136,136,136,136,136,136,112,2,87,103,136,136,136,80, + 80,80,32,2,87,103,136,136,136,168,168,216,136,2,87,103, + 136,136,80,32,80,136,136,2,87,103,136,136,80,32,32,32, + 32,2,87,103,248,8,16,32,64,128,248,18,55,103,224,128, + 128,128,128,128,224,2,87,103,128,128,64,32,16,8,8,18, + 55,103,224,32,32,32,32,32,224,6,83,99,32,80,136,1, + 81,97,248,40,34,98,128,64,2,85,101,112,8,120,136,120, + 2,87,103,128,128,176,200,136,200,176,2,85,101,112,136,128, + 136,112,2,87,103,8,8,104,152,136,152,104,2,85,101,112, + 136,248,128,112,2,87,103,48,72,64,240,64,64,64,0,87, + 103,120,136,136,120,8,136,112,2,87,103,128,128,176,200,136, + 136,136,18,55,103,64,0,192,64,64,64,224,16,73,105,16, + 0,48,16,16,16,144,144,96,2,87,103,128,128,136,144,224, + 144,136,18,55,103,192,64,64,64,64,64,224,2,85,101,208, + 168,168,168,136,2,85,101,176,200,136,136,136,2,85,101,112, + 136,136,136,112,0,87,103,176,200,136,200,176,128,128,0,87, + 103,104,152,136,152,104,8,8,2,85,101,176,200,128,128,128, + 2,85,101,112,128,112,8,240,2,87,103,64,64,240,64,64, + 72,48,2,85,101,136,136,136,152,104,2,85,101,136,136,80, + 80,32,2,85,101,136,136,168,168,80,2,85,101,136,80,32, + 80,136,0,87,103,136,136,152,104,8,136,112,2,85,101,248, + 16,32,64,248,18,71,103,48,64,32,192,32,64,48,34,23, + 103,128,128,128,128,128,128,128,18,71,103,192,32,64,48,64, + 32,192,6,83,99,72,168,144,255}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--12-110-75-75-C-60-ISO10646-1 + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 3, '1' Height: 8 + Calculated Max Values w= 6 h=12 x= 5 y= 8 dx= 6 dy= 0 ascent=10 len=12 + Font Bounding box w= 6 h=12 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 3 descent= 0 + X Font ascent = 8 descent= 0 + Max Font ascent =10 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x12_67_75[2382] U8G_SECTION(".progmem.u8g_font_6x12_67_75") = { + 1,6,12,0,254,3,2,41,3,99,0,255,0,10,254,8, + 0,2,87,103,168,0,136,0,136,0,168,2,87,103,240,136, + 232,168,232,136,240,2,87,103,112,168,248,168,248,168,112,2, + 87,103,112,136,8,8,8,136,112,18,69,101,96,144,16,144, + 96,1,88,104,112,136,128,128,136,120,8,8,2,87,103,32, + 32,32,32,168,112,32,2,103,103,248,252,252,156,252,252,248, + 2,87,103,112,248,248,168,248,248,112,255,255,255,255,255,255, + 255,3,85,101,32,64,248,64,32,2,87,103,32,112,168,32, + 32,32,32,3,85,101,32,16,248,16,32,2,87,103,32,32, + 32,32,168,112,32,4,83,99,80,248,80,2,87,103,32,112, + 168,32,168,112,32,2,89,105,192,240,224,160,32,16,16,8, + 8,2,89,105,24,120,56,40,32,64,64,128,128,2,89,105, + 128,128,64,64,32,40,56,120,24,2,89,105,8,8,16,16, + 32,160,224,240,192,3,101,101,40,72,252,80,48,3,101,101, + 48,40,252,72,80,4,99,99,192,216,100,4,99,99,12,108, + 152,3,101,101,40,80,252,80,40,2,88,104,32,112,168,112, + 168,32,32,32,3,101,101,80,40,252,40,80,2,88,104,32, + 32,32,168,112,168,112,32,3,101,101,36,72,240,72,36,3, + 101,101,144,72,60,72,144,3,85,101,40,72,248,72,40,2, + 87,103,32,112,168,32,32,32,248,3,85,101,160,144,248,144, + 160,2,87,103,248,32,32,32,168,112,32,2,87,103,32,112, + 168,32,168,112,248,3,101,101,40,68,248,64,32,3,101,101, + 80,136,124,8,16,3,101,101,32,76,252,72,40,3,101,101, + 16,200,252,72,80,3,100,100,72,220,236,72,3,101,101,8, + 88,252,104,64,2,87,103,128,144,176,208,144,56,16,2,88, + 104,32,64,248,72,40,8,8,8,2,88,104,32,16,248,144, + 160,128,128,128,2,88,104,8,8,8,40,72,248,64,32,2, + 87,103,128,128,160,144,248,16,32,3,84,100,240,16,56,16, + 3,85,101,8,8,72,248,64,3,85,101,48,72,72,232,72, + 3,85,101,96,144,144,184,16,2,88,104,248,128,224,192,160, + 32,16,16,2,89,105,160,192,248,192,168,24,248,24,40,2, + 86,102,56,48,168,136,136,112,2,86,102,224,96,168,136,136, + 112,5,83,99,32,64,248,3,83,99,248,64,32,34,56,104, + 128,192,160,128,128,128,128,128,2,56,104,32,96,160,32,32, + 32,32,32,5,83,99,32,16,248,3,83,99,248,16,32,34, + 56,104,128,128,128,128,128,160,192,128,2,56,104,32,32,32, + 32,32,160,96,32,2,89,105,32,16,248,16,32,64,248,64, + 32,2,88,104,80,240,80,80,80,80,120,80,2,89,105,32, + 64,248,64,32,16,248,16,32,2,89,105,32,64,248,64,32, + 64,248,64,32,2,88,104,80,248,80,80,80,80,80,80,2, + 89,105,32,16,248,16,32,16,248,16,32,2,88,104,80,80, + 80,80,80,80,248,80,2,87,103,32,64,248,0,248,16,32, + 2,87,103,32,16,248,0,248,64,32,2,103,103,20,40,124, + 144,124,32,80,2,103,103,8,88,252,164,252,104,64,2,103, + 103,160,80,248,36,248,16,40,3,85,101,32,120,128,120,32, + 2,87,103,32,80,216,80,80,80,80,3,85,101,32,240,8, + 240,32,2,87,103,80,80,80,80,216,80,32,3,101,101,72, + 252,132,252,72,2,88,104,32,80,216,80,80,216,80,32,2, + 102,102,248,160,208,168,148,8,2,102,102,124,20,44,84,164, + 64,2,102,102,64,164,84,44,20,124,2,102,102,8,148,168, + 208,160,248,2,103,103,16,60,64,252,64,60,16,2,103,103, + 32,240,8,252,8,240,32,3,100,100,64,232,212,64,3,100, + 100,8,92,172,8,2,88,104,32,112,168,32,112,32,112,32, + 2,88,104,32,112,32,112,32,168,112,32,3,101,101,32,64, + 212,64,32,2,88,104,32,112,136,32,0,32,0,32,3,101, + 101,16,8,172,8,16,2,88,104,32,0,32,0,32,136,112, + 32,3,85,101,160,192,248,192,160,3,85,101,40,24,248,24, + 40,3,85,101,32,120,136,120,32,2,88,104,32,80,216,80, + 80,80,80,112,3,85,101,32,240,136,240,32,2,88,104,112, + 80,80,80,80,216,80,32,2,89,105,32,80,216,80,112,0, + 112,80,112,2,89,105,32,80,216,80,80,80,216,136,248,2, + 89,105,32,80,248,136,80,80,216,136,248,2,89,105,32,112, + 248,112,112,112,248,168,248,2,89,105,32,80,216,80,216,80, + 80,80,112,2,89,105,32,80,216,80,216,80,216,136,248,3, + 85,101,160,240,136,240,160,2,88,104,248,128,176,160,144,16, + 8,8,2,88,104,128,128,64,72,40,104,8,248,2,88,104, + 32,80,216,80,80,216,80,32,3,101,101,16,104,252,104,16, + 2,88,104,80,120,80,80,80,80,240,80,2,89,105,16,248, + 16,16,248,16,16,248,16,3,101,101,40,72,252,72,40,3, + 101,101,80,72,252,72,80,3,101,101,48,120,252,120,48,3, + 101,101,56,88,252,88,56,3,101,101,112,104,252,104,112,3, + 101,101,48,120,252,120,48,3,85,101,32,96,184,96,32,3, + 85,101,32,48,232,48,32,3,101,101,48,120,180,120,48,6, + 102,102,252,252,252,252,252,252,0,98,98,252,252,0,99,99, + 252,252,252,0,101,101,252,252,252,252,252,0,102,102,252,252, + 252,252,252,252,0,104,104,252,252,252,252,252,252,252,252,0, + 105,105,252,252,252,252,252,252,252,252,252,0,107,107,252,252, + 252,252,252,252,252,252,252,252,252,0,108,108,252,252,252,252, + 252,252,252,252,252,252,252,252,0,92,108,248,248,248,248,248, + 248,248,248,248,248,248,248,0,76,108,240,240,240,240,240,240, + 240,240,240,240,240,240,0,76,108,240,240,240,240,240,240,240, + 240,240,240,240,240,0,60,108,224,224,224,224,224,224,224,224, + 224,224,224,224,0,44,108,192,192,192,192,192,192,192,192,192, + 192,192,192,0,44,108,192,192,192,192,192,192,192,192,192,192, + 192,192,0,28,108,128,128,128,128,128,128,128,128,128,128,128, + 128,48,60,108,224,224,224,224,224,224,224,224,224,224,224,224, + 1,107,107,168,0,84,0,168,0,84,0,168,0,84,0,108, + 108,168,84,168,84,168,84,168,84,168,84,168,84,0,108,108, + 84,252,168,252,84,252,168,252,84,252,168,252,10,98,98,252, + 252,80,28,108,128,128,128,128,128,128,128,128,128,128,128,128, + 0,54,102,224,224,224,224,224,224,48,54,102,224,224,224,224, + 224,224,6,54,102,224,224,224,224,224,224,0,108,108,224,224, + 224,224,224,224,252,252,252,252,252,252,0,108,108,224,224,224, + 224,224,224,28,28,28,28,28,28,0,108,108,252,252,252,252, + 252,252,224,224,224,224,224,224,0,108,108,252,252,252,252,252, + 252,28,28,28,28,28,28,54,54,102,224,224,224,224,224,224, + 0,108,108,28,28,28,28,28,28,224,224,224,224,224,224,0, + 108,108,28,28,28,28,28,28,252,252,252,252,252,252,2,85, + 101,248,248,248,248,248,2,85,101,248,136,136,136,248,2,85, + 101,112,136,136,136,112,2,85,101,248,136,168,136,248,2,85, + 101,248,136,248,136,248,2,85,101,248,168,168,168,248,2,85, + 101,248,168,248,168,248,2,85,101,248,200,168,152,248,2,85, + 101,248,152,168,200,248,2,85,101,248,216,168,216,248,20,51, + 99,224,224,224,20,51,99,224,160,224,3,101,101,252,252,252, + 252,252,3,101,101,252,132,132,132,252,17,74,106,240,240,240, + 240,240,240,240,240,240,240,17,74,106,240,144,144,144,144,144, + 144,144,144,240,4,99,99,60,120,240,4,99,99,60,72,240, + 2,87,103,32,32,112,112,248,248,248,2,87,103,32,32,80, + 80,136,136,248,3,85,101,32,32,112,112,248,3,85,101,32, + 32,80,80,248,18,71,103,128,192,224,240,224,192,128,18,71, + 103,128,192,160,144,160,192,128,19,53,101,128,192,224,192,128, + 19,53,101,128,192,160,192,128,3,101,101,192,240,252,240,192, + 3,101,101,192,176,140,176,192,2,87,103,248,248,248,112,112, + 32,32,2,87,103,248,136,136,80,80,32,32,2,85,101,248, + 112,112,32,32,2,85,101,248,80,80,32,32,18,71,103,16, + 48,112,240,112,48,16,18,71,103,16,48,80,144,80,48,16, + 19,53,101,32,96,224,96,32,19,53,101,32,96,160,96,32, + 3,101,101,12,60,252,60,12,3,101,101,12,52,196,52,12, + 3,85,101,32,112,248,112,32,3,85,101,32,80,136,80,32, + 3,85,101,32,80,168,80,32,2,102,102,48,72,180,180,72, + 48,2,87,103,32,80,80,136,80,80,32,2,102,102,48,72, + 132,132,72,48,2,102,102,32,8,128,4,64,16,2,85,101, + 112,168,168,168,112,2,87,103,112,136,168,216,168,136,112,2, + 102,102,48,120,252,252,120,48,2,102,102,48,104,228,228,104, + 48,2,102,102,48,88,156,156,88,48,2,102,102,48,72,132, + 252,120,48,2,102,102,48,120,252,132,72,48,2,102,102,48, + 88,156,132,72,48,2,102,102,48,104,228,132,72,48,18,89, + 105,8,56,120,120,248,120,120,56,8,2,89,105,128,224,240, + 240,248,240,240,224,128,0,108,108,252,252,252,252,204,132,132, + 204,252,252,252,252,0,108,108,252,252,252,204,180,120,120,180, + 204,252,252,252,6,102,102,252,252,252,204,180,120,0,102,102, + 120,180,204,252,252,252,5,51,99,32,64,128,53,51,99,128, + 64,32,50,51,99,32,64,128,2,51,99,128,64,32,5,99, + 99,48,72,132,2,99,99,132,72,48,2,85,101,8,24,56, + 120,248,2,85,101,128,192,224,240,248,2,85,101,248,240,224, + 192,128,2,85,101,248,120,56,24,8,2,85,101,112,136,136, + 136,112,2,85,101,248,232,232,232,248,2,85,101,248,184,184, + 184,248,2,85,101,248,248,232,200,248,2,85,101,248,152,184, + 248,248,2,85,101,248,168,168,168,248,2,87,103,32,32,80, + 112,168,136,248,2,87,103,32,32,112,112,232,232,248,2,87, + 103,32,32,112,112,184,184,248,2,103,103,48,72,132,132,132, + 72,48,2,85,101,248,168,232,136,248,2,85,101,248,136,232, + 168,248,2,85,101,248,136,184,168,248,2,85,101,248,168,184, + 136,248,2,85,101,112,168,232,136,112,2,85,101,112,136,232, + 168,112,2,85,101,112,136,184,168,112,2,85,101,112,168,184, + 136,112,3,85,101,248,144,160,192,128,3,85,101,248,72,40, + 24,8,3,85,101,128,192,160,144,248,20,68,100,240,144,144, + 240,19,68,100,240,240,240,240,20,68,100,240,144,144,240,20, + 68,100,240,240,240,240,3,85,101,8,24,40,72,248}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--12-110-75-75-C-60-ISO10646-1 + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 7, '1' Height: 3 + Calculated Max Values w= 6 h=10 x= 1 y= 2 dx= 6 dy= 0 ascent= 9 len=10 + Font Bounding box w= 6 h=12 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 7 descent= 0 + X Font ascent = 7 descent= 0 + Max Font ascent = 9 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x12_75r[427] U8G_SECTION(".progmem.u8g_font_6x12_75r") = { + 1,6,12,0,254,7,1,41,0,0,32,79,0,9,255,7, + 0,2,85,101,248,248,248,248,248,2,85,101,248,136,136,136, + 248,2,85,101,112,136,136,136,112,2,85,101,248,136,168,136, + 248,2,85,101,248,136,248,136,248,2,85,101,248,168,168,168, + 248,2,85,101,248,168,248,168,248,2,85,101,248,200,168,152, + 248,2,85,101,248,152,168,200,248,2,85,101,248,216,168,216, + 248,20,51,99,224,224,224,20,51,99,224,160,224,3,101,101, + 252,252,252,252,252,3,101,101,252,132,132,132,252,17,74,106, + 240,240,240,240,240,240,240,240,240,240,17,74,106,240,144,144, + 144,144,144,144,144,144,240,4,99,99,60,120,240,4,99,99, + 60,72,240,2,87,103,32,32,112,112,248,248,248,2,87,103, + 32,32,80,80,136,136,248,3,85,101,32,32,112,112,248,3, + 85,101,32,32,80,80,248,18,71,103,128,192,224,240,224,192, + 128,18,71,103,128,192,160,144,160,192,128,19,53,101,128,192, + 224,192,128,19,53,101,128,192,160,192,128,3,101,101,192,240, + 252,240,192,3,101,101,192,176,140,176,192,2,87,103,248,248, + 248,112,112,32,32,2,87,103,248,136,136,80,80,32,32,2, + 85,101,248,112,112,32,32,2,85,101,248,80,80,32,32,18, + 71,103,16,48,112,240,112,48,16,18,71,103,16,48,80,144, + 80,48,16,19,53,101,32,96,224,96,32,19,53,101,32,96, + 160,96,32,3,101,101,12,60,252,60,12,3,101,101,12,52, + 196,52,12,3,85,101,32,112,248,112,32,3,85,101,32,80, + 136,80,32,3,85,101,32,80,168,80,32,2,102,102,48,72, + 180,180,72,48,2,87,103,32,80,80,136,80,80,32,2,102, + 102,48,72,132,132,72,48,2,102,102,32,8,128,4,64,16, + 2,85,101,112,168,168,168,112,2,87,103,112,136,168,216,168, + 136,112,2,102,102,48,120,252,252,120,48}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--12-110-75-75-C-60-ISO10646-1 + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 6, '1' Height: 6 + Calculated Max Values w= 6 h=12 x= 2 y= 4 dx= 6 dy= 0 ascent=10 len=12 + Font Bounding box w= 6 h=12 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 6 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent =10 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x12_78_79[2316] U8G_SECTION(".progmem.u8g_font_6x12_78_79") = { + 1,6,12,0,254,6,2,80,3,53,0,255,0,10,254,9, + 0,2,87,103,168,0,136,0,136,0,168,3,101,101,144,252, + 32,64,96,3,101,101,196,200,48,200,196,3,101,101,96,64, + 32,252,144,2,103,103,204,148,232,48,232,148,204,255,1,105, + 105,120,132,180,180,164,180,180,132,120,1,105,105,120,132,180, + 132,180,132,204,132,120,3,101,101,32,176,252,176,32,2,101, + 101,252,204,180,132,252,255,255,18,72,104,144,144,80,112,240, + 240,240,112,3,102,102,4,56,124,124,64,128,2,102,102,64, + 224,80,40,20,12,3,99,99,248,140,248,2,102,102,12,20, + 40,80,224,64,3,100,100,248,132,132,248,4,99,99,248,244, + 248,2,87,103,8,8,16,16,160,224,64,2,103,103,12,12, + 28,216,248,112,48,2,85,101,136,80,32,80,136,3,85,101, + 216,248,32,248,216,2,86,102,136,80,32,80,136,128,1,103, + 103,204,204,120,112,252,204,192,1,103,103,120,204,164,244,164, + 204,120,2,102,102,48,48,252,252,48,48,3,85,101,32,32, + 216,32,32,2,102,102,48,48,204,204,48,48,2,87,103,32, + 32,248,32,32,32,32,1,90,106,112,80,216,136,216,80,80, + 80,80,112,2,105,105,120,220,188,220,88,88,88,120,120,2, + 87,103,112,32,168,248,168,32,112,2,87,103,32,248,80,80, + 80,248,32,3,85,101,32,32,248,32,32,3,102,102,48,48, + 252,252,48,48,2,104,104,48,120,48,252,252,48,120,48,2, + 87,103,32,112,168,248,168,112,32,3,85,101,32,112,248,112, + 32,3,85,101,32,112,216,112,32,255,3,85,101,32,216,80, + 32,80,2,87,103,112,216,136,216,168,248,112,3,86,102,32, + 32,248,80,112,136,3,86,102,32,32,216,32,80,136,3,86, + 102,32,32,248,112,112,136,3,86,102,32,32,248,112,112,136, + 3,86,102,32,32,232,48,80,136,2,102,102,48,88,140,88, + 172,88,2,86,102,32,168,112,112,168,32,2,87,103,32,168, + 112,80,112,168,32,2,87,103,32,168,112,248,112,168,32,2, + 87,103,32,168,112,248,112,168,32,2,87,103,32,168,112,248, + 112,168,32,2,86,102,32,168,112,112,168,32,1,88,104,80, + 32,168,112,112,168,32,80,1,88,104,80,32,168,112,112,168, + 32,80,2,103,103,80,248,124,248,124,248,80,2,103,103,80, + 168,116,248,116,168,80,2,86,102,32,168,112,112,168,32,2, + 87,103,32,168,112,80,112,168,32,2,86,102,32,168,112,112, + 168,32,2,103,103,168,216,80,168,116,168,32,3,87,103,32, + 112,248,216,112,248,216,3,87,103,32,112,216,168,80,248,216, + 3,86,102,32,112,216,112,248,32,2,87,103,112,248,168,216, + 168,248,112,2,86,102,32,168,112,112,168,32,2,86,102,32, + 168,112,112,168,32,2,86,102,32,168,112,112,168,32,2,86, + 102,32,168,112,112,168,32,2,87,103,32,168,112,248,112,168, + 32,2,87,103,32,168,112,248,112,168,32,2,87,103,32,168, + 112,248,112,168,32,2,87,103,32,168,112,248,112,168,32,2, + 87,103,32,168,112,248,112,168,32,255,3,101,101,120,140,140, + 140,120,255,2,102,102,248,140,140,140,252,124,2,102,102,124, + 252,140,140,140,248,2,102,102,248,140,140,140,252,124,2,102, + 102,124,252,140,140,140,248,255,255,255,2,103,103,16,56,84, + 236,84,56,16,255,34,23,103,128,128,128,128,128,128,128,18, + 39,103,192,192,192,192,192,192,192,18,71,103,240,240,240,240, + 240,240,240,22,69,101,96,128,224,240,96,22,69,101,96,240, + 112,16,96,6,101,101,72,144,216,252,72,6,101,101,72,252, + 108,36,72,255,255,1,106,106,8,124,200,200,200,120,8,200, + 136,112,2,89,105,112,248,248,112,32,0,32,112,32,2,88, + 104,216,248,112,32,0,32,112,32,2,85,101,216,248,248,112, + 32,2,87,103,96,240,240,120,240,240,96,2,104,104,100,184, + 32,216,248,240,228,120,2,102,102,128,88,120,220,152,64,18, + 56,104,32,64,192,192,192,192,64,32,18,56,104,128,64,96, + 96,96,96,64,128,18,40,104,64,192,192,192,192,192,192,64, + 18,40,104,128,192,192,192,192,192,192,128,17,73,105,48,48, + 96,96,192,96,96,48,48,17,73,105,192,192,96,96,48,96, + 96,192,192,2,87,103,24,48,96,192,96,48,24,2,87,103, + 192,96,48,24,48,96,192,1,89,105,56,56,112,112,224,112, + 112,56,56,1,89,105,224,224,112,112,56,112,112,224,224,17, + 57,105,32,64,128,128,128,128,128,64,32,17,57,105,128,64, + 32,32,32,32,32,64,128,17,73,105,48,96,96,96,192,96, + 96,96,48,17,73,105,192,96,96,96,48,96,96,96,192,2, + 89,105,112,248,216,152,216,216,136,248,112,2,89,105,112,248, + 216,168,232,216,136,248,112,2,89,105,112,248,152,232,216,232, + 152,248,112,2,89,105,112,248,184,184,152,136,216,248,112,2, + 89,105,112,248,136,184,152,232,152,248,112,2,89,105,112,248, + 200,184,152,168,216,248,112,2,89,105,112,248,136,232,216,216, + 216,248,112,2,89,105,112,248,216,168,216,168,216,248,112,2, + 89,105,112,248,216,168,200,232,152,248,112,2,105,105,120,252, + 172,148,148,148,172,252,120,2,89,105,112,136,168,232,168,168, + 248,136,112,2,89,105,112,136,168,216,152,168,248,136,112,2, + 89,105,112,136,232,152,168,152,232,136,112,2,89,105,112,136, + 200,200,232,248,168,136,112,2,89,105,112,136,248,200,232,152, + 232,136,112,2,89,105,112,136,184,200,232,216,168,136,112,2, + 89,105,112,136,248,152,168,168,168,136,112,2,89,105,112,136, + 168,216,168,216,168,136,112,2,89,105,112,136,168,216,184,152, + 232,136,112,2,105,105,120,132,212,236,236,236,212,132,120,2, + 89,105,112,248,216,152,216,216,216,248,112,2,89,105,112,248, + 216,168,232,216,136,248,112,2,89,105,112,248,152,232,216,232, + 152,248,112,2,89,105,112,248,184,184,152,136,216,248,112,2, + 89,105,112,248,136,184,152,232,152,248,112,2,89,105,112,248, + 200,184,152,168,216,248,112,2,89,105,112,248,136,232,216,216, + 216,248,112,2,89,105,112,248,216,168,216,168,216,248,112,2, + 89,105,112,248,216,168,200,232,152,248,112,2,105,105,120,252, + 172,148,148,148,172,252,120,3,101,101,48,24,252,24,48,255, + 255,255,2,85,101,128,64,40,24,56,3,85,101,32,48,248, + 48,32,2,85,101,56,24,40,64,128,3,101,101,64,48,252, + 48,64,2,102,102,48,56,252,252,56,48,4,99,99,8,252, + 8,2,102,102,16,24,252,252,24,16,3,99,99,8,188,8, + 2,102,102,16,24,188,188,24,16,3,101,101,16,248,252,248, + 16,2,103,103,192,176,72,60,120,240,192,2,103,103,192,240, + 120,60,72,176,192,3,101,101,224,120,60,120,224,3,102,102, + 128,144,248,252,120,16,2,102,102,16,120,252,248,144,128,2, + 103,103,32,240,248,252,248,240,32,3,101,101,32,240,252,240, + 32,3,101,101,16,232,132,232,16,3,101,101,16,232,132,232, + 16,3,101,101,16,232,132,232,16,3,101,101,16,232,132,232, + 16,2,102,102,16,232,132,132,232,16,2,102,102,16,232,132, + 132,232,16,3,101,101,16,232,132,232,16,255,3,101,101,16, + 232,132,232,16,2,103,103,120,220,12,4,12,220,120,3,99, + 99,232,124,232,2,102,102,64,224,96,16,12,12,3,99,99, + 232,124,232,2,102,102,12,12,16,96,224,64,2,102,102,96, + 224,224,20,12,28,2,101,101,192,232,124,232,192,2,102,102, + 28,12,20,224,224,96,2,101,101,16,200,252,200,16,2,101, + 101,16,200,252,200,16,3,99,99,232,124,232,3,100,100,232, + 252,252,232,2,101,101,80,232,4,232,80,255,2,85,101,136, + 144,160,192,248,2,86,102,32,32,80,112,168,248,2,86,102, + 32,32,32,32,32,248,2,87,103,120,128,144,168,144,128,120, + 2,87,103,240,8,72,168,72,8,240,18,73,105,64,160,160, + 32,32,64,64,64,48,18,73,105,32,80,80,64,64,32,32, + 32,192,2,87,103,136,168,136,80,80,32,32,2,104,104,128, + 156,160,160,160,92,64,64,2,104,104,4,228,20,20,20,232, + 8,8,18,55,103,64,64,64,224,64,64,64,255,2,103,103, + 252,64,32,32,32,32,64,255,255,255,3,85,101,32,80,168, + 80,32,2,87,103,32,32,80,80,136,168,136,2,87,103,168, + 168,168,168,168,168,112,3,85,101,8,8,40,8,248,3,85, + 101,248,128,160,128,128,3,101,101,196,108,84,108,196,3,101, + 101,140,216,168,216,140,2,101,101,204,120,72,120,204,2,87, + 103,32,32,32,32,32,32,248,2,87,103,248,32,32,32,32, + 32,32,3,85,101,80,216,80,216,80,3,85,101,80,80,216, + 80,80,4,99,99,64,188,64,4,99,99,128,252,128,4,99, + 99,4,252,4,18,55,103,64,160,64,64,64,64,224,3,85, + 101,32,80,248,80,32,3,85,101,32,80,136,80,32,3,101, + 101,16,40,196,40,16,3,101,101,32,80,140,80,32,3,101, + 101,124,68,196,68,124,3,101,101,248,136,140,136,248,1,90, + 106,248,160,160,160,160,160,160,160,160,248,1,90,106,248,40, + 40,40,40,40,40,40,40,248,17,57,105,32,32,64,64,128, + 64,64,32,32,17,57,105,128,128,64,64,32,64,64,128,128, + 0,107,107,20,40,40,80,80,160,80,80,40,40,20,0,107, + 107,160,80,80,40,40,20,40,40,80,80,160,16,75,107,16, + 32,96,160,160,160,160,160,96,32,16,16,76,108,128,64,96, + 80,80,80,80,80,80,96,64,128,17,41,105,128,64,64,64, + 64,64,64,64,128,17,41,105,64,128,128,128,128,128,128,128, + 64,2,87,103,32,112,168,168,168,168,168,2,87,103,168,168, + 168,168,168,112,32,2,103,103,56,68,228,68,4,68,56,2, + 103,103,112,136,156,136,128,136,112,4,99,99,104,252,104,3, + 101,101,32,64,252,64,32,3,101,101,16,8,252,8,16,4, + 99,99,72,252,72,2,103,103,16,32,124,128,124,32,16,2, + 103,103,32,16,248,4,248,16,32,3,101,101,72,252,132,252, + 72,3,101,101,36,68,252,68,36,3,101,101,144,136,252,136, + 144,2,103,103,20,36,124,132,124,36,20,2,103,103,160,144, + 248,132,248,144,160,3,100,100,8,92,172,8}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--12-110-75-75-C-60-ISO10646-1 + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 6 h=10 x= 2 y=10 dx= 6 dy= 0 ascent=10 len=10 + Font Bounding box w= 6 h=12 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent =10 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x12[1933] U8G_SECTION(".progmem.u8g_font_6x12") = { + 1,6,12,0,254,7,1,53,2,107,32,255,254,10,254,8, + 254,12,0,96,34,23,103,128,128,128,128,128,0,128,23,51, + 99,160,160,160,2,86,102,80,248,80,80,248,80,1,89,105, + 32,112,168,160,112,40,168,112,32,2,87,103,200,200,16,32, + 64,152,152,2,87,103,64,160,160,64,168,144,104,39,19,99, + 128,128,128,17,57,105,32,64,64,128,128,128,64,64,32,17, + 57,105,128,64,64,32,32,32,64,64,128,2,87,103,32,168, + 112,32,112,168,32,3,85,101,32,32,248,32,32,1,51,99, + 96,96,192,5,81,97,248,18,34,98,192,192,2,87,103,8, + 16,16,32,64,64,128,18,71,103,96,144,144,144,144,144,96, + 18,55,103,64,192,64,64,64,64,224,2,87,103,112,136,8, + 16,32,64,248,2,87,103,248,8,16,48,8,136,112,2,87, + 103,16,48,80,144,248,16,16,2,87,103,248,128,240,8,8, + 136,112,2,87,103,48,64,128,240,136,136,112,2,87,103,248, + 8,16,16,32,32,32,2,87,103,112,136,136,112,136,136,112, + 2,87,103,112,136,136,120,8,16,96,18,37,101,192,192,0, + 192,192,1,54,102,96,96,0,96,96,192,19,53,101,32,64, + 128,64,32,4,83,99,248,0,248,19,53,101,128,64,32,64, + 128,2,87,103,112,136,16,32,32,0,32,2,87,103,112,136, + 184,168,184,128,112,2,87,103,112,136,136,248,136,136,136,2, + 87,103,240,72,72,112,72,72,240,2,87,103,112,136,128,128, + 128,136,112,2,87,103,240,72,72,72,72,72,240,2,87,103, + 248,128,128,240,128,128,248,2,87,103,248,128,128,240,128,128, + 128,2,87,103,112,136,128,128,152,136,112,2,87,103,136,136, + 136,248,136,136,136,18,55,103,224,64,64,64,64,64,224,2, + 87,103,56,16,16,16,16,144,96,2,87,103,136,144,160,192, + 160,144,136,2,87,103,128,128,128,128,128,128,248,2,87,103, + 136,216,168,136,136,136,136,2,87,103,136,136,200,168,152,136, + 136,2,87,103,112,136,136,136,136,136,112,2,87,103,240,136, + 136,240,128,128,128,2,87,103,112,136,136,136,168,144,104,2, + 87,103,240,136,136,240,160,144,136,2,87,103,112,136,128,112, + 8,136,112,2,87,103,248,32,32,32,32,32,32,2,87,103, + 136,136,136,136,136,136,112,2,87,103,136,136,136,136,80,80, + 32,2,87,103,136,136,136,136,168,168,80,2,87,103,136,136, + 80,32,80,136,136,2,87,103,136,136,80,32,32,32,32,2, + 87,103,248,8,16,32,64,128,248,17,57,105,224,128,128,128, + 128,128,128,128,224,2,87,103,128,64,64,32,16,16,8,17, + 57,105,224,32,32,32,32,32,32,32,224,7,83,99,32,80, + 136,0,81,97,248,23,51,99,128,64,32,2,85,101,112,8, + 120,136,120,2,87,103,128,128,240,136,136,136,240,2,85,101, + 112,136,128,136,112,2,87,103,8,8,120,136,136,136,120,2, + 85,101,112,136,240,128,112,2,87,103,48,72,64,224,64,64, + 64,0,87,103,112,136,136,136,120,8,112,2,87,103,128,128, + 240,136,136,136,136,18,55,103,64,0,192,64,64,64,224,16, + 73,105,16,0,48,16,16,16,16,144,96,2,87,103,128,128, + 136,144,224,144,136,18,55,103,192,64,64,64,64,64,224,2, + 85,101,208,168,168,168,168,2,85,101,176,200,136,136,136,2, + 85,101,112,136,136,136,112,0,87,103,240,136,136,136,240,128, + 128,0,87,103,120,136,136,136,120,8,8,2,85,101,176,200, + 128,128,128,2,85,101,120,128,112,8,240,2,87,103,32,32, + 248,32,32,32,24,2,85,101,136,136,136,152,104,2,85,101, + 136,136,136,80,32,2,85,101,136,136,168,168,80,2,85,101, + 136,80,32,80,136,0,87,103,136,136,136,80,32,64,128,2, + 85,101,248,16,32,64,248,17,57,105,32,64,64,64,128,64, + 64,64,32,33,25,105,128,128,128,128,128,128,128,128,128,17, + 57,105,128,64,64,64,32,64,64,64,128,4,83,99,72,168, + 144,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,12,0,96,34,23,103,128,0,128,128,128,128,128,1, + 87,103,32,112,168,160,168,112,32,2,87,103,48,72,64,224, + 64,72,176,2,85,101,168,80,136,80,168,2,87,103,136,80, + 248,32,248,32,32,34,23,103,128,128,128,0,128,128,128,18, + 72,104,112,128,96,144,144,96,16,224,25,49,97,160,2,103, + 103,120,132,148,164,148,132,120,22,53,101,96,160,96,0,224, + 2,85,101,40,80,160,80,40,3,83,99,248,8,8,21,49, + 97,224,2,103,103,120,132,180,164,164,132,120,9,81,97,248, + 23,68,100,96,144,144,96,2,87,103,32,32,248,32,32,0, + 248,23,53,101,64,160,32,64,224,23,53,101,192,32,64,32, + 192,23,51,99,32,64,128,0,87,103,136,136,136,152,232,128, + 128,2,88,104,120,232,232,232,104,40,40,40,37,34,98,192, + 192,16,50,98,32,192,23,53,101,64,192,64,64,224,23,53, + 101,64,160,64,0,224,2,85,101,160,80,40,80,160,2,90, + 106,64,192,64,64,80,48,80,120,16,16,2,90,106,64,192, + 64,64,80,40,8,16,32,56,2,90,106,192,32,64,32,208, + 48,80,120,16,16,2,87,103,32,0,32,32,64,136,112,2, + 90,106,64,32,0,112,136,136,248,136,136,136,2,90,106,16, + 32,0,112,136,136,248,136,136,136,2,90,106,32,80,0,112, + 136,136,248,136,136,136,2,90,106,104,176,0,112,136,136,248, + 136,136,136,2,89,105,80,0,112,136,136,248,136,136,136,2, + 90,106,32,80,32,112,136,136,248,136,136,136,2,87,103,120, + 160,160,240,160,160,184,0,89,105,112,136,128,128,128,136,112, + 16,96,2,90,106,64,32,0,248,128,128,240,128,128,248,2, + 90,106,16,32,0,248,128,128,240,128,128,248,2,90,106,32, + 80,0,248,128,128,240,128,128,248,2,89,105,80,0,248,128, + 128,240,128,128,248,18,58,106,128,64,0,224,64,64,64,64, + 64,224,18,58,106,32,64,0,224,64,64,64,64,64,224,18, + 58,106,64,160,0,224,64,64,64,64,64,224,18,57,105,160, + 0,224,64,64,64,64,64,224,2,87,103,112,72,72,232,72, + 72,112,2,90,106,104,176,0,136,136,200,168,152,136,136,2, + 90,106,64,32,0,112,136,136,136,136,136,112,2,90,106,16, + 32,0,112,136,136,136,136,136,112,2,90,106,32,80,0,112, + 136,136,136,136,136,112,2,90,106,104,176,0,112,136,136,136, + 136,136,112,2,89,105,80,0,112,136,136,136,136,136,112,3, + 85,101,136,80,32,80,136,1,89,105,8,112,152,168,168,168, + 200,112,128,2,90,106,64,32,0,136,136,136,136,136,136,112, + 2,90,106,16,32,0,136,136,136,136,136,136,112,2,90,106, + 32,80,0,136,136,136,136,136,136,112,2,89,105,80,0,136, + 136,136,136,136,136,112,2,90,106,16,32,0,136,136,80,32, + 32,32,32,18,71,103,128,224,144,144,144,224,128,2,87,103, + 112,136,144,160,144,136,176,2,88,104,64,32,0,112,8,120, + 136,120,2,88,104,16,32,0,112,8,120,136,120,2,88,104, + 32,80,0,112,8,120,136,120,2,88,104,104,176,0,112,8, + 120,136,120,2,87,103,80,0,112,8,120,136,120,2,88,104, + 32,80,32,112,8,120,136,120,2,85,101,112,40,112,160,120, + 0,87,103,112,136,128,136,112,16,96,2,88,104,64,32,0, + 112,136,240,128,112,2,88,104,16,32,0,112,136,240,128,112, + 2,88,104,32,80,0,112,136,240,128,112,2,87,103,80,0, + 112,136,240,128,112,18,56,104,128,64,0,192,64,64,64,224, + 18,56,104,32,64,0,192,64,64,64,224,18,56,104,64,160, + 0,192,64,64,64,224,18,55,103,160,0,192,64,64,64,224, + 2,89,105,80,32,80,8,120,136,136,136,112,2,88,104,104, + 176,0,176,200,136,136,136,2,88,104,64,32,0,112,136,136, + 136,112,2,88,104,16,32,0,112,136,136,136,112,2,88,104, + 32,80,0,112,136,136,136,112,2,88,104,104,176,0,112,136, + 136,136,112,2,87,103,80,0,112,136,136,136,112,3,85,101, + 32,0,248,0,32,2,85,101,120,152,168,200,240,2,88,104, + 64,32,0,136,136,136,136,112,2,88,104,16,32,0,136,136, + 136,136,112,2,88,104,32,80,0,136,136,136,136,112,2,87, + 103,80,0,136,136,136,136,112,0,90,106,16,32,0,136,136, + 136,80,32,64,128,0,89,105,128,128,240,136,136,136,240,128, + 128,0,89,105,80,0,136,136,136,80,32,64,128}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--12-110-75-75-C-60-ISO10646-1 + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 5 h= 9 x= 2 y=10 dx= 6 dy= 0 ascent=10 len= 9 + Font Bounding box w= 6 h=12 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent =10 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x12r[898] U8G_SECTION(".progmem.u8g_font_6x12r") = { + 1,6,12,0,254,7,1,53,2,107,32,127,254,10,254,8, + 254,12,0,96,34,23,103,128,128,128,128,128,0,128,23,51, + 99,160,160,160,2,86,102,80,248,80,80,248,80,1,89,105, + 32,112,168,160,112,40,168,112,32,2,87,103,200,200,16,32, + 64,152,152,2,87,103,64,160,160,64,168,144,104,39,19,99, + 128,128,128,17,57,105,32,64,64,128,128,128,64,64,32,17, + 57,105,128,64,64,32,32,32,64,64,128,2,87,103,32,168, + 112,32,112,168,32,3,85,101,32,32,248,32,32,1,51,99, + 96,96,192,5,81,97,248,18,34,98,192,192,2,87,103,8, + 16,16,32,64,64,128,18,71,103,96,144,144,144,144,144,96, + 18,55,103,64,192,64,64,64,64,224,2,87,103,112,136,8, + 16,32,64,248,2,87,103,248,8,16,48,8,136,112,2,87, + 103,16,48,80,144,248,16,16,2,87,103,248,128,240,8,8, + 136,112,2,87,103,48,64,128,240,136,136,112,2,87,103,248, + 8,16,16,32,32,32,2,87,103,112,136,136,112,136,136,112, + 2,87,103,112,136,136,120,8,16,96,18,37,101,192,192,0, + 192,192,1,54,102,96,96,0,96,96,192,19,53,101,32,64, + 128,64,32,4,83,99,248,0,248,19,53,101,128,64,32,64, + 128,2,87,103,112,136,16,32,32,0,32,2,87,103,112,136, + 184,168,184,128,112,2,87,103,112,136,136,248,136,136,136,2, + 87,103,240,72,72,112,72,72,240,2,87,103,112,136,128,128, + 128,136,112,2,87,103,240,72,72,72,72,72,240,2,87,103, + 248,128,128,240,128,128,248,2,87,103,248,128,128,240,128,128, + 128,2,87,103,112,136,128,128,152,136,112,2,87,103,136,136, + 136,248,136,136,136,18,55,103,224,64,64,64,64,64,224,2, + 87,103,56,16,16,16,16,144,96,2,87,103,136,144,160,192, + 160,144,136,2,87,103,128,128,128,128,128,128,248,2,87,103, + 136,216,168,136,136,136,136,2,87,103,136,136,200,168,152,136, + 136,2,87,103,112,136,136,136,136,136,112,2,87,103,240,136, + 136,240,128,128,128,2,87,103,112,136,136,136,168,144,104,2, + 87,103,240,136,136,240,160,144,136,2,87,103,112,136,128,112, + 8,136,112,2,87,103,248,32,32,32,32,32,32,2,87,103, + 136,136,136,136,136,136,112,2,87,103,136,136,136,136,80,80, + 32,2,87,103,136,136,136,136,168,168,80,2,87,103,136,136, + 80,32,80,136,136,2,87,103,136,136,80,32,32,32,32,2, + 87,103,248,8,16,32,64,128,248,17,57,105,224,128,128,128, + 128,128,128,128,224,2,87,103,128,64,64,32,16,16,8,17, + 57,105,224,32,32,32,32,32,32,32,224,7,83,99,32,80, + 136,0,81,97,248,23,51,99,128,64,32,2,85,101,112,8, + 120,136,120,2,87,103,128,128,240,136,136,136,240,2,85,101, + 112,136,128,136,112,2,87,103,8,8,120,136,136,136,120,2, + 85,101,112,136,240,128,112,2,87,103,48,72,64,224,64,64, + 64,0,87,103,112,136,136,136,120,8,112,2,87,103,128,128, + 240,136,136,136,136,18,55,103,64,0,192,64,64,64,224,16, + 73,105,16,0,48,16,16,16,16,144,96,2,87,103,128,128, + 136,144,224,144,136,18,55,103,192,64,64,64,64,64,224,2, + 85,101,208,168,168,168,168,2,85,101,176,200,136,136,136,2, + 85,101,112,136,136,136,112,0,87,103,240,136,136,136,240,128, + 128,0,87,103,120,136,136,136,120,8,8,2,85,101,176,200, + 128,128,128,2,85,101,120,128,112,8,240,2,87,103,32,32, + 248,32,32,32,24,2,85,101,136,136,136,152,104,2,85,101, + 136,136,136,80,32,2,85,101,136,136,168,168,80,2,85,101, + 136,80,32,80,136,0,87,103,136,136,136,80,32,64,128,2, + 85,101,248,16,32,64,248,17,57,105,32,64,64,64,128,64, + 64,64,32,33,25,105,128,128,128,128,128,128,128,128,128,17, + 57,105,128,64,64,64,32,64,64,64,128,4,83,99,72,168, + 144,255}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 3, '1' Height: 9 + Calculated Max Values w= 6 h=13 x= 5 y= 9 dx= 6 dy= 0 ascent=11 len=13 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 3 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13_67_75[2236] U8G_SECTION(".progmem.u8g_font_6x13_67_75") = { + 1,6,13,0,254,3,1,73,2,147,32,255,0,11,254,9, + 0,3,101,101,80,40,252,40,80,2,89,105,32,32,32,32, + 168,112,168,112,32,3,101,101,36,72,240,72,36,3,101,101, + 144,72,60,72,144,3,85,101,32,72,248,72,32,2,89,105, + 32,112,168,32,32,32,32,32,248,3,85,101,32,144,248,144, + 32,2,89,105,248,32,32,32,32,32,168,112,32,2,89,105, + 32,112,168,32,32,168,112,32,248,3,101,101,40,68,248,64, + 32,3,101,101,80,136,124,8,16,3,101,101,32,76,252,72, + 40,3,101,101,16,200,252,72,80,4,100,100,72,220,236,72, + 3,101,101,8,88,252,104,64,2,89,105,128,128,144,176,208, + 144,16,56,16,2,89,105,32,64,248,72,40,8,8,8,8, + 2,89,105,32,16,248,144,160,128,128,128,128,2,89,105,8, + 8,8,8,40,72,248,64,32,2,89,105,128,128,128,128,160, + 144,248,16,32,3,85,101,240,16,16,56,16,3,86,102,8, + 8,8,72,248,64,3,85,101,48,72,72,232,72,3,85,101, + 96,144,144,184,144,2,89,105,248,128,224,192,160,32,16,16, + 8,2,89,105,160,192,248,192,168,24,248,24,40,3,86,102, + 56,48,168,136,136,112,3,86,102,224,96,168,136,136,112,5, + 83,99,32,64,248,3,83,99,248,64,32,34,57,105,128,192, + 160,128,128,128,128,128,128,2,57,105,32,96,160,32,32,32, + 32,32,32,5,83,99,32,16,248,3,83,99,248,16,32,34, + 57,105,128,128,128,128,128,128,160,192,128,2,57,105,32,32, + 32,32,32,32,160,96,32,2,89,105,32,16,248,16,32,64, + 248,64,32,2,89,105,80,240,80,80,80,80,80,120,80,2, + 89,105,32,64,248,64,32,16,248,16,32,2,89,105,32,64, + 248,64,32,64,248,64,32,2,89,105,80,248,80,80,80,80, + 80,80,80,2,89,105,32,16,248,16,32,16,248,16,32,2, + 89,105,80,80,80,80,80,80,80,248,80,2,87,103,32,64, + 248,0,248,16,32,2,87,103,32,16,248,0,248,64,32,2, + 103,103,20,40,124,144,124,32,80,2,103,103,8,88,252,164, + 252,104,64,2,103,103,160,80,248,36,248,16,40,2,103,103, + 16,32,124,128,124,32,16,2,89,105,32,80,216,80,80,80, + 80,80,80,2,103,103,32,16,248,4,248,16,32,2,89,105, + 80,80,80,80,80,80,216,80,32,3,101,101,72,252,132,252, + 72,2,89,105,32,80,216,80,80,80,216,80,32,3,102,102, + 248,160,208,168,148,8,3,102,102,124,20,44,84,164,64,3, + 102,102,64,164,84,44,20,124,3,102,102,8,148,168,208,160, + 248,2,103,103,16,60,64,252,64,60,16,2,103,103,32,240, + 8,252,8,240,32,4,100,100,64,232,212,64,4,100,100,8, + 92,172,8,2,89,105,32,112,168,32,112,32,112,32,32,2, + 89,105,32,32,112,32,112,32,168,112,32,3,85,101,32,64, + 168,64,32,2,89,105,32,112,168,0,32,32,0,32,32,3, + 85,101,32,16,168,16,32,2,89,105,32,32,0,32,32,0, + 168,112,32,3,85,101,160,192,248,192,160,3,85,101,40,24, + 248,24,40,3,85,101,32,120,136,120,32,2,89,105,32,80, + 216,80,80,80,80,80,112,3,85,101,32,240,136,240,32,2, + 89,105,112,80,80,80,80,80,216,80,32,2,90,106,32,80, + 216,80,80,112,0,112,80,112,2,89,105,32,80,216,80,80, + 80,216,136,248,2,89,105,32,80,248,136,80,80,216,136,248, + 2,89,105,32,112,248,112,112,112,248,168,248,2,89,105,32, + 80,216,80,216,80,80,80,112,2,89,105,32,80,216,80,216, + 80,216,136,248,3,85,101,160,240,136,240,160,3,88,104,248, + 128,176,224,144,16,8,8,2,88,104,128,128,64,72,56,104, + 8,248,2,89,105,32,80,216,80,80,80,216,80,32,3,101, + 101,16,104,252,104,16,2,89,105,80,120,80,80,80,80,80, + 240,80,2,89,105,16,248,16,16,248,16,16,248,16,3,101, + 101,40,72,252,72,40,3,101,101,80,72,252,72,80,4,101, + 101,48,120,252,120,48,3,101,101,56,88,252,88,56,3,101, + 101,112,104,252,104,112,4,101,101,48,120,252,120,48,3,85, + 101,32,96,184,96,32,3,85,101,32,48,232,48,32,4,101, + 101,48,120,180,120,48,7,102,102,252,252,252,252,252,252,0, + 98,98,252,252,0,99,99,252,252,252,0,101,101,252,252,252, + 252,252,0,103,103,252,252,252,252,252,252,252,0,104,104,252, + 252,252,252,252,252,252,252,0,106,106,252,252,252,252,252,252, + 252,252,252,252,0,107,107,252,252,252,252,252,252,252,252,252, + 252,252,0,109,109,252,252,252,252,252,252,252,252,252,252,252, + 252,252,0,93,109,248,248,248,248,248,248,248,248,248,248,248, + 248,248,0,77,109,240,240,240,240,240,240,240,240,240,240,240, + 240,240,0,77,109,240,240,240,240,240,240,240,240,240,240,240, + 240,240,0,61,109,224,224,224,224,224,224,224,224,224,224,224, + 224,224,0,45,109,192,192,192,192,192,192,192,192,192,192,192, + 192,192,0,45,109,192,192,192,192,192,192,192,192,192,192,192, + 192,192,0,29,109,128,128,128,128,128,128,128,128,128,128,128, + 128,128,48,61,109,224,224,224,224,224,224,224,224,224,224,224, + 224,224,0,109,109,168,0,84,0,168,0,84,0,168,0,84, + 0,168,0,109,109,168,84,168,84,168,84,168,84,168,84,168, + 84,168,0,109,109,84,252,168,252,84,252,168,252,84,252,168, + 252,84,11,98,98,252,252,80,29,109,128,128,128,128,128,128, + 128,128,128,128,128,128,128,0,55,103,224,224,224,224,224,224, + 224,48,55,103,224,224,224,224,224,224,224,7,54,102,224,224, + 224,224,224,224,0,109,109,224,224,224,224,224,224,252,252,252, + 252,252,252,252,0,109,109,224,224,224,224,224,224,28,28,28, + 28,28,28,28,0,109,109,252,252,252,252,252,252,224,224,224, + 224,224,224,224,0,109,109,252,252,252,252,252,252,28,28,28, + 28,28,28,28,55,54,102,224,224,224,224,224,224,0,109,109, + 28,28,28,28,28,28,224,224,224,224,224,224,224,0,109,109, + 28,28,28,28,28,28,252,252,252,252,252,252,252,3,85,101, + 248,248,248,248,248,3,85,101,248,136,136,136,248,3,85,101, + 112,136,136,136,112,3,85,101,248,136,168,136,248,2,85,101, + 248,136,248,136,248,2,85,101,248,168,168,168,248,2,85,101, + 248,168,248,168,248,2,85,101,248,200,168,152,248,2,85,101, + 248,152,168,200,248,2,85,101,248,216,168,216,248,21,51,99, + 224,224,224,21,51,99,224,160,224,4,101,101,252,252,252,252, + 252,4,101,101,252,132,132,132,252,17,75,107,240,240,240,240, + 240,240,240,240,240,240,240,17,75,107,240,144,144,144,144,144, + 144,144,144,144,240,5,99,99,60,120,240,5,99,99,60,72, + 240,2,89,105,32,32,32,112,112,112,248,248,248,2,89,105, + 32,32,32,80,80,80,136,136,248,4,85,101,32,32,112,112, + 248,4,85,101,32,32,80,80,248,2,89,105,128,192,224,240, + 248,240,224,192,128,2,89,105,128,192,160,144,136,144,160,192, + 128,20,53,101,128,192,224,192,128,20,53,101,128,192,160,192, + 128,4,101,101,192,240,252,240,192,4,101,101,192,176,140,176, + 192,2,89,105,248,248,248,112,112,112,32,32,32,2,89,105, + 248,136,136,80,80,80,32,32,32,3,85,101,248,112,112,32, + 32,3,85,101,248,80,80,32,32,2,89,105,8,24,56,120, + 248,120,56,24,8,2,89,105,8,24,40,72,136,72,40,24, + 8,20,53,101,32,96,224,96,32,20,53,101,32,96,160,96, + 32,4,101,101,12,60,252,60,12,4,101,101,12,52,196,52, + 12,4,85,101,32,112,248,112,32,4,85,101,32,80,136,80, + 32,4,85,101,32,80,168,80,32,3,102,102,48,72,180,180, + 72,48,2,89,105,32,32,80,80,136,80,80,32,32,3,102, + 102,48,72,132,132,72,48,3,102,102,32,8,128,4,64,16, + 2,85,101,112,168,168,168,112,2,87,103,112,136,168,216,168, + 136,112,3,102,102,48,120,252,252,120,48,3,102,102,48,104, + 228,228,104,48,3,102,102,48,88,156,156,88,48,3,102,102, + 48,72,132,252,120,48,3,102,102,48,120,252,132,72,48,3, + 102,102,48,88,156,132,72,48,3,102,102,48,88,156,252,120, + 48,18,90,106,8,56,120,120,248,248,120,120,56,8,2,90, + 106,128,224,240,240,248,248,240,240,224,128,0,109,109,252,252, + 252,252,252,204,132,132,204,252,252,252,252,0,109,109,252,252, + 252,252,204,180,120,120,180,204,252,252,252,6,103,103,252,252, + 252,252,204,180,120,0,102,102,120,180,204,252,252,252,6,51, + 99,32,64,128,54,51,99,128,64,32,51,51,99,32,64,128, + 3,51,99,128,64,32,6,99,99,48,72,132,3,99,99,132, + 72,48,3,85,101,8,24,56,120,248,3,85,101,128,192,224, + 240,248,3,85,101,248,240,224,192,128,3,85,101,248,120,56, + 24,8,4,85,101,112,136,136,136,112,3,85,101,248,232,232, + 232,248,3,85,101,248,184,184,184,248,3,85,101,248,248,232, + 200,248,3,85,101,248,152,184,248,248,3,85,101,248,168,168, + 168,248,2,89,105,32,32,32,80,80,112,168,136,248,2,89, + 105,32,32,32,112,112,112,232,232,248,2,89,105,32,32,32, + 112,112,112,184,184,248,2,103,103,48,72,132,132,132,72,48, + 3,85,101,248,168,232,136,248,3,85,101,248,136,232,168,248, + 3,85,101,248,136,184,168,248,3,85,101,248,168,184,136,248, + 3,85,101,112,168,232,136,112,3,85,101,112,136,232,168,112, + 3,85,101,112,136,184,168,112,3,85,101,112,168,184,136,112, + 3,85,101,248,144,160,192,128,3,85,101,248,72,40,24,8, + 3,85,101,128,192,160,144,248,20,68,100,240,144,144,240,20, + 68,100,240,240,240,240,20,68,100,240,144,144,240,20,68,100, + 240,240,240,240,3,85,101,8,24,40,72,248}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 3 + Calculated Max Values w= 6 h=11 x= 1 y= 3 dx= 6 dy= 0 ascent=10 len=11 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent =10 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13_75r[447] U8G_SECTION(".progmem.u8g_font_6x13_75r") = { + 1,6,13,0,254,9,1,57,0,0,32,79,0,10,255,9, + 0,3,85,101,248,248,248,248,248,3,85,101,248,136,136,136, + 248,3,85,101,112,136,136,136,112,3,85,101,248,136,168,136, + 248,2,85,101,248,136,248,136,248,2,85,101,248,168,168,168, + 248,2,85,101,248,168,248,168,248,2,85,101,248,200,168,152, + 248,2,85,101,248,152,168,200,248,2,85,101,248,216,168,216, + 248,21,51,99,224,224,224,21,51,99,224,160,224,4,101,101, + 252,252,252,252,252,4,101,101,252,132,132,132,252,17,75,107, + 240,240,240,240,240,240,240,240,240,240,240,17,75,107,240,144, + 144,144,144,144,144,144,144,144,240,5,99,99,60,120,240,5, + 99,99,60,72,240,2,89,105,32,32,32,112,112,112,248,248, + 248,2,89,105,32,32,32,80,80,80,136,136,248,4,85,101, + 32,32,112,112,248,4,85,101,32,32,80,80,248,2,89,105, + 128,192,224,240,248,240,224,192,128,2,89,105,128,192,160,144, + 136,144,160,192,128,20,53,101,128,192,224,192,128,20,53,101, + 128,192,160,192,128,4,101,101,192,240,252,240,192,4,101,101, + 192,176,140,176,192,2,89,105,248,248,248,112,112,112,32,32, + 32,2,89,105,248,136,136,80,80,80,32,32,32,3,85,101, + 248,112,112,32,32,3,85,101,248,80,80,32,32,2,89,105, + 8,24,56,120,248,120,56,24,8,2,89,105,8,24,40,72, + 136,72,40,24,8,20,53,101,32,96,224,96,32,20,53,101, + 32,96,160,96,32,4,101,101,12,60,252,60,12,4,101,101, + 12,52,196,52,12,4,85,101,32,112,248,112,32,4,85,101, + 32,80,136,80,32,4,85,101,32,80,168,80,32,3,102,102, + 48,72,180,180,72,48,2,89,105,32,32,80,80,136,80,80, + 32,32,3,102,102,48,72,132,132,72,48,3,102,102,32,8, + 128,4,64,16,2,85,101,112,168,168,168,112,2,87,103,112, + 136,168,216,168,136,112,3,102,102,48,120,252,252,120,48}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 0, '1' Height: 7 + Calculated Max Values w= 6 h=13 x= 2 y= 5 dx= 6 dy= 0 ascent=11 len=13 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13_78_79[1470] U8G_SECTION(".progmem.u8g_font_6x13_78_79") = { + 1,6,13,0,254,7,1,42,2,11,32,255,0,11,254,10, + 0,2,87,103,112,32,168,248,168,32,112,255,2,104,104,48, + 48,48,252,252,48,48,48,2,89,105,32,112,32,168,248,168, + 32,112,32,2,89,105,32,112,32,168,248,168,32,112,32,2, + 89,105,32,112,32,168,248,168,32,112,32,4,85,101,32,112, + 248,112,32,4,85,101,32,80,136,80,32,255,4,86,102,32, + 32,248,80,112,136,2,89,105,112,216,216,0,136,136,112,248, + 112,4,86,102,32,32,248,80,112,136,4,86,102,32,32,248, + 112,112,136,4,86,102,32,32,248,112,112,136,4,86,102,32, + 32,248,112,112,136,4,86,102,32,32,248,112,112,136,4,102, + 102,48,48,252,88,120,204,3,87,103,32,168,112,112,112,168, + 32,3,87,103,32,168,112,80,112,168,32,3,87,103,32,168, + 112,248,112,168,32,3,87,103,32,168,112,248,112,168,32,3, + 87,103,32,168,112,248,112,168,32,3,87,103,32,168,112,112, + 112,168,32,3,87,103,80,80,248,32,248,80,80,3,87,103, + 80,112,248,112,248,112,80,255,255,3,87,103,32,168,168,112, + 168,168,32,3,87,103,32,168,168,80,168,168,32,3,87,103, + 32,168,168,112,168,168,32,3,87,103,32,168,168,80,168,168, + 32,4,85,101,32,248,80,112,216,255,255,255,3,87,103,32, + 168,168,112,168,168,32,3,87,103,32,168,168,112,168,168,32, + 3,87,103,32,168,168,112,168,168,32,3,87,103,32,168,168, + 112,168,168,32,3,87,103,32,168,112,248,112,168,32,3,87, + 103,32,168,112,248,112,168,32,3,87,103,32,168,168,112,168, + 168,32,3,87,103,32,168,112,248,112,168,32,3,87,103,32, + 168,112,248,112,168,32,255,2,102,102,120,140,140,140,140,120, + 255,2,102,102,248,136,140,140,252,60,2,102,102,60,252,140, + 140,136,248,2,102,102,248,140,140,140,252,124,2,102,102,124, + 252,140,140,140,248,255,255,255,2,89,105,32,112,32,80,248, + 80,32,112,32,255,34,25,105,128,128,128,128,128,128,128,128, + 128,18,57,105,224,224,224,224,224,224,224,224,224,2,89,105, + 248,248,248,248,248,248,248,248,248,23,53,101,96,128,224,224, + 64,23,53,101,64,224,224,32,192,7,101,101,108,144,252,252, + 72,7,101,101,72,252,252,36,216,255,255,2,106,106,8,124, + 232,232,120,8,104,104,72,48,18,57,105,64,224,224,64,64, + 0,64,224,64,2,89,105,80,248,248,112,32,0,32,112,32, + 2,87,103,80,248,248,248,112,32,32,2,103,103,96,240,248, + 124,248,240,96,2,89,105,104,176,16,216,248,240,96,104,48, + 2,104,104,64,144,184,124,92,188,184,80,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,2,89,105,112,248,216,152, + 216,216,136,248,112,2,89,105,112,248,216,168,232,216,136,248, + 112,2,89,105,112,248,216,168,216,232,152,248,112,2,89,105, + 112,248,184,184,152,136,216,248,112,2,89,105,112,248,136,184, + 152,232,152,248,112,2,89,105,112,248,200,184,152,168,216,248, + 112,2,89,105,112,248,136,232,216,216,216,248,112,2,89,105, + 112,248,216,168,216,168,216,248,112,2,89,105,112,248,216,168, + 200,232,152,248,112,2,105,105,120,252,172,148,148,148,172,252, + 120,2,89,105,112,136,168,232,168,168,168,136,112,2,89,105, + 112,136,168,216,152,168,248,136,112,2,89,105,112,136,168,216, + 168,152,232,136,112,2,89,105,112,136,200,200,232,248,168,136, + 112,2,89,105,112,136,248,200,232,152,232,136,112,2,89,105, + 112,136,184,200,232,216,168,136,112,2,89,105,112,136,248,152, + 168,168,168,136,112,2,89,105,112,136,168,216,168,216,168,136, + 112,2,89,105,112,136,168,216,184,152,232,136,112,2,105,105, + 120,132,212,236,236,236,212,132,120,2,89,105,112,248,216,152, + 216,216,216,248,112,2,89,105,112,248,216,168,232,216,136,248, + 112,2,89,105,112,248,216,168,216,232,152,248,112,2,89,105, + 112,248,184,184,152,136,216,248,112,2,89,105,112,248,136,184, + 152,232,152,248,112,2,89,105,112,248,200,184,152,168,216,248, + 112,2,89,105,112,248,136,232,216,216,216,248,112,2,89,105, + 112,248,216,168,216,168,216,248,112,2,89,105,112,248,216,168, + 200,232,152,248,112,2,105,105,120,252,172,148,148,148,172,252, + 120,4,102,102,48,24,252,252,24,48,255,255,255,4,85,101, + 128,64,40,24,56,4,85,101,32,48,248,48,32,4,85,101, + 56,24,40,64,128,3,103,103,64,32,48,252,48,32,64,3, + 104,104,32,48,24,252,252,24,48,32,4,101,101,16,24,252, + 24,16,4,102,102,16,24,252,252,24,16,4,102,102,16,24, + 188,188,24,16,3,103,103,32,48,184,188,184,48,32,3,103, + 103,32,48,248,252,248,48,32,255,255,4,101,101,192,112,60, + 112,192,3,103,103,32,176,248,252,120,48,32,3,103,103,32, + 48,120,252,248,176,32,0,109,109,32,32,48,240,248,248,252, + 248,248,240,48,32,32,255,255,255,255,255,255,255,255,255,255, + 1,107,107,120,252,220,204,4,0,4,204,220,248,120,255,4, + 102,102,32,32,224,20,12,28,4,101,101,144,200,124,200,144, + 4,102,102,28,12,20,224,32,32,4,102,102,32,32,224,20, + 12,28,4,101,101,144,200,124,200,144,4,102,102,28,12,20, + 224,32,32,4,101,101,16,8,252,8,16,4,101,101,16,200, + 252,200,16,5,99,99,232,124,232,4,101,101,208,216,124,216, + 208,2,105,105,160,80,40,244,4,244,40,80,160,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,1,91,107,248,160,160,160,160,160,160,160,160, + 160,248,1,91,107,248,40,40,40,40,40,40,40,40,40,248, + 17,75,107,16,32,32,64,64,128,64,64,32,32,16,17,75, + 107,128,64,64,32,32,16,32,32,64,64,128,1,107,107,20, + 40,40,80,80,160,80,80,40,40,20,1,107,107,160,80,80, + 40,40,20,40,40,80,80,160,255,255,255,255,255,255,255,255, + 255,3,101,101,32,64,252,64,32,3,101,101,16,8,252,8, + 16,4,99,99,72,252,72,2,103,103,16,32,124,128,124,32, + 16,2,103,103,32,16,248,4,248,16,32,3,101,101,72,252, + 132,252,72,3,101,101,36,68,252,68,36,3,101,101,144,136, + 252,136,144,2,103,103,20,36,124,132,124,36,20,2,103,103, + 160,144,248,132,248,144,160,4,100,100,8,92,172,8}; +/* + Fontname: -Misc-Fixed-Bold-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 2 y=11 dx= 6 dy= 0 ascent=11 len=11 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13B[2171] U8G_SECTION(".progmem.u8g_font_6x13B") = { + 1,6,13,0,254,9,1,99,2,211,32,255,254,11,254,10, + 254,13,0,96,34,41,105,192,192,192,192,192,192,192,0,192, + 8,83,99,216,216,216,3,103,103,120,120,252,120,252,120,120, + 3,103,103,48,120,240,120,60,120,48,2,105,105,108,252,120, + 24,48,96,120,252,216,2,103,103,96,240,240,96,252,216,124, + 40,35,99,192,192,192,17,75,107,48,96,96,192,192,192,192, + 192,96,96,48,17,75,107,192,96,96,48,48,48,48,48,96, + 96,192,4,101,101,204,120,252,120,204,4,101,101,48,48,252, + 48,48,17,67,99,112,96,192,6,97,97,252,17,67,99,96, + 240,96,2,105,105,12,12,24,24,48,96,96,192,192,2,105, + 105,48,120,204,204,204,204,204,120,48,2,105,105,48,112,240, + 48,48,48,48,48,252,2,105,105,120,204,204,12,24,48,96, + 192,252,2,105,105,252,12,24,48,120,12,12,204,120,2,105, + 105,24,24,56,120,88,216,252,24,24,2,105,105,252,192,192, + 248,236,12,12,204,120,2,105,105,56,96,192,192,248,236,204, + 204,120,2,105,105,252,12,24,24,48,48,96,96,96,2,105, + 105,120,204,204,204,120,204,204,204,120,2,105,105,120,204,204, + 220,124,12,12,24,112,18,72,104,96,240,96,0,0,96,240, + 96,17,72,104,96,240,96,0,0,112,96,192,2,105,105,12, + 24,48,96,192,96,48,24,12,4,100,100,252,0,0,252,2, + 105,105,192,96,48,24,12,24,48,96,192,2,105,105,120,204, + 204,12,24,48,48,0,48,2,105,105,120,204,204,220,252,252, + 248,192,124,2,105,105,48,120,204,204,204,252,204,204,204,2, + 105,105,248,108,108,108,120,108,108,108,248,2,105,105,120,204, + 192,192,192,192,192,204,120,2,105,105,248,108,108,108,108,108, + 108,108,248,2,105,105,252,192,192,192,248,192,192,192,252,2, + 105,105,252,192,192,192,248,192,192,192,192,2,105,105,120,204, + 192,192,192,220,204,204,120,2,105,105,204,204,204,204,252,204, + 204,204,204,18,73,105,240,96,96,96,96,96,96,96,240,2, + 105,105,60,12,12,12,12,12,12,204,120,2,105,105,204,204, + 216,240,224,240,216,204,204,2,105,105,192,192,192,192,192,192, + 192,192,252,2,105,105,204,204,252,252,252,204,204,204,204,2, + 105,105,204,236,236,252,252,220,220,204,204,2,105,105,120,204, + 204,204,204,204,204,204,120,2,105,105,248,204,204,204,248,192, + 192,192,192,1,106,106,120,204,204,204,204,204,204,252,120,12, + 2,105,105,248,204,204,204,248,240,216,204,204,2,105,105,120, + 204,192,192,120,12,12,204,120,2,105,105,252,48,48,48,48, + 48,48,48,48,2,105,105,204,204,204,204,204,204,204,204,120, + 2,105,105,204,204,204,204,120,120,120,48,48,2,105,105,204, + 204,204,204,252,252,252,252,204,2,105,105,204,204,120,120,48, + 120,120,204,204,2,105,105,204,204,120,120,48,48,48,48,48, + 2,105,105,252,12,24,24,48,96,96,192,252,17,75,107,240, + 192,192,192,192,192,192,192,192,192,240,2,105,105,192,192,96, + 96,48,24,24,12,12,17,75,107,240,48,48,48,48,48,48, + 48,48,48,240,8,99,99,48,120,204,1,97,97,252,26,50, + 98,192,96,2,102,102,120,12,124,204,220,108,2,105,105,192, + 192,192,216,236,204,204,236,216,2,102,102,120,204,192,192,204, + 120,2,105,105,12,12,12,108,220,204,204,220,108,2,102,102, + 120,204,252,192,192,120,2,105,105,56,108,96,96,248,96,96, + 96,96,0,104,104,124,216,216,112,192,120,204,120,2,105,105, + 192,192,192,216,236,204,204,204,204,18,73,105,96,96,0,224, + 96,96,96,96,240,0,91,107,24,24,0,56,24,24,24,24, + 216,216,112,2,105,105,192,192,192,216,240,224,240,216,204,18, + 73,105,224,96,96,96,96,96,96,96,240,2,102,102,248,252, + 252,252,252,204,2,102,102,216,236,204,204,204,204,2,102,102, + 120,204,204,204,204,120,0,104,104,216,236,204,236,216,192,192, + 192,0,104,104,108,220,204,220,108,12,12,12,2,102,102,216, + 236,192,192,192,192,2,102,102,120,204,112,24,204,120,2,104, + 104,96,96,248,96,96,96,108,56,2,102,102,204,204,204,204, + 220,108,2,102,102,204,204,204,120,120,48,2,102,102,204,204, + 252,252,252,72,2,102,102,204,120,48,48,120,204,0,104,104, + 204,204,204,220,108,12,204,120,2,102,102,252,24,48,96,192, + 252,1,91,107,56,96,96,96,48,224,48,96,96,96,56,34, + 41,105,192,192,192,192,192,192,192,192,192,1,91,107,224,48, + 48,48,96,56,96,48,48,48,224,8,83,99,104,248,144,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 13,0,96,34,42,106,192,192,0,192,192,192,192,192,192,192, + 3,104,104,16,120,212,208,208,212,120,16,2,105,105,56,108, + 96,96,248,96,96,100,248,3,102,102,204,252,72,72,252,204, + 2,105,105,204,204,120,120,252,48,252,48,48,34,42,106,192, + 192,192,192,0,0,192,192,192,192,2,106,106,120,204,192,120, + 204,204,120,12,204,120,9,98,98,204,204,2,105,105,120,204, + 180,236,228,236,180,204,120,4,103,103,248,12,252,140,252,0, + 252,3,103,103,52,104,208,160,208,104,52,4,100,100,252,252, + 4,4,22,65,97,240,2,105,105,120,204,188,172,188,180,172, + 204,120,9,82,98,248,248,7,100,100,120,204,204,120,2,105, + 105,48,48,252,252,48,48,0,252,252,6,70,102,224,176,48, + 96,192,240,6,70,102,224,176,96,48,176,224,26,50,98,96, + 192,0,104,104,204,204,204,204,204,252,128,128,2,105,105,124, + 252,244,244,244,116,52,52,52,38,34,98,192,192,16,50,98, + 96,192,6,70,102,96,224,96,96,96,240,5,87,103,112,248, + 136,248,112,0,248,3,103,103,176,88,44,20,44,88,176,2, + 106,106,96,224,96,96,100,252,28,52,60,12,2,106,106,96, + 224,96,96,120,236,12,24,48,60,2,106,106,224,176,96,48, + 180,236,28,52,60,12,2,106,106,48,48,0,48,48,96,192, + 204,204,120,2,106,106,96,48,0,48,120,204,204,252,204,204, + 2,106,106,24,48,0,48,120,204,204,252,204,204,2,106,106, + 56,108,0,48,120,204,204,252,204,204,2,106,106,52,88,0, + 48,120,204,204,252,204,204,2,106,106,204,204,0,48,120,204, + 204,252,204,204,2,106,106,48,72,120,48,120,204,204,252,204, + 204,2,105,105,124,176,176,176,184,240,240,176,188,0,107,107, + 120,204,192,192,192,192,192,204,120,48,96,2,106,106,96,48, + 0,252,192,192,248,192,192,252,2,106,106,24,48,0,252,192, + 192,248,192,192,252,2,106,106,56,108,0,252,192,192,248,192, + 192,252,2,106,106,204,204,0,252,192,192,248,192,192,252,18, + 74,106,192,96,0,240,96,96,96,96,96,240,18,74,106,48, + 96,0,240,96,96,96,96,96,240,2,90,106,112,216,0,120, + 48,48,48,48,48,120,2,106,106,204,204,0,120,48,48,48, + 48,48,120,2,105,105,248,108,108,108,236,108,108,108,248,2, + 106,106,52,88,0,204,236,236,252,220,220,204,2,106,106,96, + 48,0,120,204,204,204,204,204,120,2,106,106,24,48,0,120, + 204,204,204,204,204,120,2,106,106,56,108,0,120,204,204,204, + 204,204,120,2,106,106,52,88,0,120,204,204,204,204,204,120, + 2,106,106,204,204,0,120,204,204,204,204,204,120,3,101,101, + 204,120,48,120,204,1,105,105,4,120,220,220,204,236,236,120, + 128,2,106,106,96,48,0,204,204,204,204,204,204,120,2,106, + 106,24,48,0,204,204,204,204,204,204,120,2,106,106,56,108, + 0,204,204,204,204,204,204,120,2,106,106,108,108,0,204,204, + 204,204,204,204,120,2,106,106,24,48,0,204,72,120,48,48, + 48,48,2,105,105,192,248,204,204,204,248,192,192,192,1,105, + 105,120,204,204,248,204,204,204,248,128,2,105,105,96,48,0, + 120,12,124,204,220,108,2,105,105,24,48,0,120,12,124,204, + 220,108,2,105,105,56,108,0,120,12,124,204,220,108,2,105, + 105,52,88,0,120,12,124,204,220,108,2,105,105,108,108,0, + 120,12,124,204,220,108,2,106,106,56,40,56,0,120,12,124, + 204,220,108,2,102,102,120,52,120,176,180,104,0,104,104,120, + 204,192,192,204,120,48,96,2,105,105,96,48,0,120,204,252, + 192,192,120,2,105,105,24,48,0,120,204,252,192,192,120,2, + 105,105,56,108,0,120,204,252,192,192,120,2,105,105,108,108, + 0,120,204,252,192,192,120,18,73,105,192,96,0,224,96,96, + 96,96,240,18,73,105,48,96,0,224,96,96,96,96,240,2, + 89,105,112,216,0,112,48,48,48,48,120,2,89,105,216,216, + 0,112,48,48,48,48,120,2,106,106,216,112,240,152,120,204, + 204,204,204,120,2,105,105,52,88,0,216,236,204,204,204,204, + 2,105,105,96,48,0,120,204,204,204,204,120,2,105,105,24, + 48,0,120,204,204,204,204,120,2,105,105,56,108,0,120,204, + 204,204,204,120,2,105,105,52,88,0,120,204,204,204,204,120, + 2,105,105,204,204,0,120,204,204,204,204,120,3,103,103,48, + 48,0,252,0,48,48,1,105,105,4,120,204,220,204,236,204, + 120,128,2,105,105,96,48,0,204,204,204,204,220,108,2,105, + 105,24,48,0,204,204,204,204,220,108,2,105,105,56,108,0, + 204,204,204,204,220,108,2,105,105,204,204,0,204,204,204,204, + 220,108,0,107,107,24,48,0,204,204,204,220,108,12,204,120, + 0,106,106,192,192,216,236,204,236,216,192,192,192,0,107,107, + 204,204,0,204,204,204,220,108,12,204,120}; +/* + Fontname: -Misc-Fixed-Bold-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 2 y=11 dx= 6 dy= 0 ascent=11 len=11 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13Br[1040] U8G_SECTION(".progmem.u8g_font_6x13Br") = { + 1,6,13,0,254,9,1,99,2,211,32,127,254,11,254,10, + 254,13,0,96,34,41,105,192,192,192,192,192,192,192,0,192, + 8,83,99,216,216,216,3,103,103,120,120,252,120,252,120,120, + 3,103,103,48,120,240,120,60,120,48,2,105,105,108,252,120, + 24,48,96,120,252,216,2,103,103,96,240,240,96,252,216,124, + 40,35,99,192,192,192,17,75,107,48,96,96,192,192,192,192, + 192,96,96,48,17,75,107,192,96,96,48,48,48,48,48,96, + 96,192,4,101,101,204,120,252,120,204,4,101,101,48,48,252, + 48,48,17,67,99,112,96,192,6,97,97,252,17,67,99,96, + 240,96,2,105,105,12,12,24,24,48,96,96,192,192,2,105, + 105,48,120,204,204,204,204,204,120,48,2,105,105,48,112,240, + 48,48,48,48,48,252,2,105,105,120,204,204,12,24,48,96, + 192,252,2,105,105,252,12,24,48,120,12,12,204,120,2,105, + 105,24,24,56,120,88,216,252,24,24,2,105,105,252,192,192, + 248,236,12,12,204,120,2,105,105,56,96,192,192,248,236,204, + 204,120,2,105,105,252,12,24,24,48,48,96,96,96,2,105, + 105,120,204,204,204,120,204,204,204,120,2,105,105,120,204,204, + 220,124,12,12,24,112,18,72,104,96,240,96,0,0,96,240, + 96,17,72,104,96,240,96,0,0,112,96,192,2,105,105,12, + 24,48,96,192,96,48,24,12,4,100,100,252,0,0,252,2, + 105,105,192,96,48,24,12,24,48,96,192,2,105,105,120,204, + 204,12,24,48,48,0,48,2,105,105,120,204,204,220,252,252, + 248,192,124,2,105,105,48,120,204,204,204,252,204,204,204,2, + 105,105,248,108,108,108,120,108,108,108,248,2,105,105,120,204, + 192,192,192,192,192,204,120,2,105,105,248,108,108,108,108,108, + 108,108,248,2,105,105,252,192,192,192,248,192,192,192,252,2, + 105,105,252,192,192,192,248,192,192,192,192,2,105,105,120,204, + 192,192,192,220,204,204,120,2,105,105,204,204,204,204,252,204, + 204,204,204,18,73,105,240,96,96,96,96,96,96,96,240,2, + 105,105,60,12,12,12,12,12,12,204,120,2,105,105,204,204, + 216,240,224,240,216,204,204,2,105,105,192,192,192,192,192,192, + 192,192,252,2,105,105,204,204,252,252,252,204,204,204,204,2, + 105,105,204,236,236,252,252,220,220,204,204,2,105,105,120,204, + 204,204,204,204,204,204,120,2,105,105,248,204,204,204,248,192, + 192,192,192,1,106,106,120,204,204,204,204,204,204,252,120,12, + 2,105,105,248,204,204,204,248,240,216,204,204,2,105,105,120, + 204,192,192,120,12,12,204,120,2,105,105,252,48,48,48,48, + 48,48,48,48,2,105,105,204,204,204,204,204,204,204,204,120, + 2,105,105,204,204,204,204,120,120,120,48,48,2,105,105,204, + 204,204,204,252,252,252,252,204,2,105,105,204,204,120,120,48, + 120,120,204,204,2,105,105,204,204,120,120,48,48,48,48,48, + 2,105,105,252,12,24,24,48,96,96,192,252,17,75,107,240, + 192,192,192,192,192,192,192,192,192,240,2,105,105,192,192,96, + 96,48,24,24,12,12,17,75,107,240,48,48,48,48,48,48, + 48,48,48,240,8,99,99,48,120,204,1,97,97,252,26,50, + 98,192,96,2,102,102,120,12,124,204,220,108,2,105,105,192, + 192,192,216,236,204,204,236,216,2,102,102,120,204,192,192,204, + 120,2,105,105,12,12,12,108,220,204,204,220,108,2,102,102, + 120,204,252,192,192,120,2,105,105,56,108,96,96,248,96,96, + 96,96,0,104,104,124,216,216,112,192,120,204,120,2,105,105, + 192,192,192,216,236,204,204,204,204,18,73,105,96,96,0,224, + 96,96,96,96,240,0,91,107,24,24,0,56,24,24,24,24, + 216,216,112,2,105,105,192,192,192,216,240,224,240,216,204,18, + 73,105,224,96,96,96,96,96,96,96,240,2,102,102,248,252, + 252,252,252,204,2,102,102,216,236,204,204,204,204,2,102,102, + 120,204,204,204,204,120,0,104,104,216,236,204,236,216,192,192, + 192,0,104,104,108,220,204,220,108,12,12,12,2,102,102,216, + 236,192,192,192,192,2,102,102,120,204,112,24,204,120,2,104, + 104,96,96,248,96,96,96,108,56,2,102,102,204,204,204,204, + 220,108,2,102,102,204,204,204,120,120,48,2,102,102,204,204, + 252,252,252,72,2,102,102,204,120,48,48,120,204,0,104,104, + 204,204,204,220,108,12,204,120,2,102,102,252,24,48,96,192, + 252,1,91,107,56,96,96,96,48,224,48,96,96,96,56,34, + 41,105,192,192,192,192,192,192,192,192,192,1,91,107,224,48, + 48,48,96,56,96,48,48,48,224,8,83,99,104,248,144,255 + }; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 5 h=11 x= 2 y=11 dx= 6 dy= 0 ascent=11 len=11 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13[2160] U8G_SECTION(".progmem.u8g_font_6x13") = { + 1,6,13,0,254,9,1,102,2,214,32,255,254,11,254,10, + 254,13,0,96,34,25,105,128,128,128,128,128,128,128,0,128, + 24,51,99,160,160,160,3,87,103,80,80,248,80,248,80,80, + 2,89,105,32,120,160,160,112,40,40,240,32,2,89,105,72, + 168,80,16,32,64,80,168,144,2,88,104,64,160,160,64,160, + 152,144,104,40,19,99,128,128,128,17,59,107,32,64,64,128, + 128,128,128,128,64,64,32,17,59,107,128,64,64,32,32,32, + 32,32,64,64,128,6,85,101,32,168,112,168,32,4,85,101, + 32,32,248,32,32,17,51,99,96,64,128,6,81,97,248,17, + 51,99,64,224,64,2,89,105,8,8,16,16,32,64,64,128, + 128,2,89,105,32,80,136,136,136,136,136,80,32,2,89,105, + 32,96,160,32,32,32,32,32,248,2,89,105,112,136,136,8, + 16,32,64,128,248,2,89,105,248,8,16,32,112,8,8,136, + 112,2,89,105,16,16,48,80,80,144,248,16,16,2,89,105, + 248,128,128,176,200,8,8,136,112,2,89,105,112,136,128,128, + 240,136,136,136,112,2,89,105,248,8,16,16,32,32,64,64, + 64,2,89,105,112,136,136,136,112,136,136,136,112,2,89,105, + 112,136,136,136,120,8,8,136,112,17,56,104,64,224,64,0, + 0,64,224,64,17,56,104,64,224,64,0,0,96,64,128,2, + 89,105,8,16,32,64,128,64,32,16,8,4,84,100,248,0, + 0,248,2,89,105,128,64,32,16,8,16,32,64,128,2,89, + 105,112,136,136,8,16,32,32,0,32,2,89,105,112,136,136, + 152,168,168,176,128,120,2,89,105,32,80,136,136,136,248,136, + 136,136,2,89,105,240,72,72,72,112,72,72,72,240,2,89, + 105,112,136,128,128,128,128,128,136,112,2,89,105,240,72,72, + 72,72,72,72,72,240,2,89,105,248,128,128,128,240,128,128, + 128,248,2,89,105,248,128,128,128,240,128,128,128,128,2,89, + 105,112,136,128,128,128,152,136,136,112,2,89,105,136,136,136, + 136,248,136,136,136,136,18,57,105,224,64,64,64,64,64,64, + 64,224,2,89,105,56,16,16,16,16,16,16,144,96,2,89, + 105,136,136,144,160,192,160,144,136,136,2,89,105,128,128,128, + 128,128,128,128,128,248,2,89,105,136,136,216,168,168,136,136, + 136,136,2,89,105,136,200,200,168,168,152,152,136,136,2,89, + 105,112,136,136,136,136,136,136,136,112,2,89,105,240,136,136, + 136,240,128,128,128,128,1,90,106,112,136,136,136,136,136,136, + 168,112,8,2,89,105,240,136,136,136,240,160,144,136,136,2, + 89,105,112,136,128,128,112,8,8,136,112,2,89,105,248,32, + 32,32,32,32,32,32,32,2,89,105,136,136,136,136,136,136, + 136,136,112,2,89,105,136,136,136,136,80,80,80,32,32,2, + 89,105,136,136,136,136,168,168,168,168,80,2,89,105,136,136, + 80,80,32,80,80,136,136,2,89,105,136,136,80,80,32,32, + 32,32,32,2,89,105,248,8,16,16,32,64,64,128,248,17, + 59,107,224,128,128,128,128,128,128,128,128,128,224,2,89,105, + 128,128,64,64,32,16,16,8,8,17,59,107,224,32,32,32, + 32,32,32,32,32,32,224,8,83,99,32,80,136,1,81,97, + 248,42,34,98,128,64,2,86,102,112,8,120,136,152,104,2, + 89,105,128,128,128,240,136,136,136,136,240,2,86,102,112,136, + 128,128,136,112,2,89,105,8,8,8,120,136,136,136,136,120, + 2,86,102,112,136,248,128,136,112,2,89,105,48,72,64,64, + 240,64,64,64,64,0,88,104,112,136,136,136,120,8,136,112, + 2,89,105,128,128,128,176,200,136,136,136,136,18,56,104,64, + 0,192,64,64,64,64,224,0,74,106,16,0,48,16,16,16, + 16,144,144,96,2,89,105,128,128,128,144,160,192,160,144,136, + 18,57,105,192,64,64,64,64,64,64,64,224,2,86,102,208, + 168,168,168,168,136,2,86,102,176,200,136,136,136,136,2,86, + 102,112,136,136,136,136,112,0,88,104,240,136,136,136,240,128, + 128,128,0,88,104,120,136,136,136,120,8,8,8,2,86,102, + 176,200,128,128,128,128,2,86,102,112,136,96,16,136,112,2, + 88,104,64,64,240,64,64,64,72,48,2,86,102,136,136,136, + 136,152,104,2,86,102,136,136,136,80,80,32,2,86,102,136, + 136,168,168,168,80,2,86,102,136,80,32,32,80,136,0,88, + 104,136,136,136,152,104,8,136,112,2,86,102,248,16,32,64, + 128,248,1,91,107,24,32,32,32,32,192,32,32,32,32,24, + 34,25,105,128,128,128,128,128,128,128,128,128,1,91,107,192, + 32,32,32,32,24,32,32,32,32,192,8,83,99,72,168,144, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,13,0,96,34,25,105,128,0,128,128,128,128,128,128,128, + 3,88,104,32,112,168,160,160,168,112,32,2,89,105,48,72, + 64,64,224,64,64,72,176,3,86,102,136,112,80,80,112,136, + 2,89,105,136,136,80,80,248,32,248,32,32,34,25,105,128, + 128,128,128,0,128,128,128,128,18,74,106,96,144,128,96,144, + 144,96,16,144,96,26,50,98,160,160,3,89,105,112,136,168, + 216,200,216,168,136,112,4,87,103,112,8,120,136,120,0,248, + 3,86,102,40,80,160,160,80,40,4,83,99,248,8,8,22, + 49,97,224,3,89,105,112,136,232,216,216,232,216,136,112,10, + 81,97,248,23,68,100,96,144,144,96,3,87,103,32,32,248, + 32,32,0,248,7,53,101,64,160,32,64,224,7,53,101,64, + 160,64,32,192,42,34,98,64,128,0,88,104,136,136,136,136, + 152,232,128,128,2,89,105,120,232,232,232,232,104,40,40,40, + 38,33,97,192,32,34,98,64,128,7,53,101,64,192,64,64, + 224,4,87,103,112,136,136,136,112,0,248,3,86,102,160,80, + 40,40,80,160,2,90,106,64,192,64,64,224,8,24,40,56, + 8,2,90,106,64,192,64,64,224,16,40,8,16,56,2,90, + 106,64,160,64,32,160,72,24,40,56,8,2,89,105,32,0, + 32,32,64,128,136,136,112,2,90,106,64,32,0,32,80,136, + 136,248,136,136,2,90,106,16,32,0,32,80,136,136,248,136, + 136,2,90,106,48,72,0,32,80,136,136,248,136,136,2,90, + 106,40,80,0,32,80,136,136,248,136,136,2,90,106,80,80, + 0,32,80,136,136,248,136,136,2,90,106,32,80,32,32,80, + 136,136,248,136,136,2,89,105,88,160,160,160,176,224,160,160, + 184,0,91,107,112,136,128,128,128,128,128,136,112,32,64,2, + 90,106,64,32,0,248,128,128,240,128,128,248,2,90,106,16, + 32,0,248,128,128,240,128,128,248,2,90,106,48,72,0,248, + 128,128,240,128,128,248,2,90,106,80,80,0,248,128,128,240, + 128,128,248,18,58,106,128,64,0,224,64,64,64,64,64,224, + 18,58,106,32,64,0,224,64,64,64,64,64,224,18,74,106, + 96,144,0,224,64,64,64,64,64,224,18,58,106,160,160,0, + 224,64,64,64,64,64,224,2,89,105,240,72,72,72,232,72, + 72,72,240,2,90,106,40,80,0,136,136,200,168,152,136,136, + 2,90,106,64,32,0,112,136,136,136,136,136,112,2,90,106, + 16,32,0,112,136,136,136,136,136,112,2,90,106,48,72,0, + 112,136,136,136,136,136,112,2,90,106,40,80,0,112,136,136, + 136,136,136,112,2,90,106,80,80,0,112,136,136,136,136,136, + 112,3,85,101,136,80,32,80,136,1,91,107,8,112,152,152, + 168,168,168,200,200,112,128,2,90,106,64,32,0,136,136,136, + 136,136,136,112,2,90,106,16,32,0,136,136,136,136,136,136, + 112,2,90,106,48,72,0,136,136,136,136,136,136,112,2,90, + 106,80,80,0,136,136,136,136,136,136,112,2,90,106,16,32, + 0,136,136,80,32,32,32,32,2,89,105,128,240,136,136,136, + 240,128,128,128,2,89,105,96,144,144,160,160,144,136,136,176, + 2,89,105,64,32,0,112,8,120,136,152,104,2,89,105,16, + 32,0,112,8,120,136,152,104,2,89,105,48,72,0,112,8, + 120,136,152,104,2,89,105,40,80,0,112,8,120,136,152,104, + 2,89,105,80,80,0,112,8,120,136,152,104,2,90,106,48, + 72,48,0,112,8,120,136,152,104,2,86,102,112,40,112,160, + 168,80,0,88,104,112,136,128,128,136,112,32,64,2,89,105, + 64,32,0,112,136,248,128,136,112,2,89,105,16,32,0,112, + 136,248,128,136,112,2,89,105,48,72,0,112,136,248,128,136, + 112,2,89,105,80,80,0,112,136,248,128,136,112,18,57,105, + 128,64,0,192,64,64,64,64,224,18,57,105,32,64,0,192, + 64,64,64,64,224,18,73,105,96,144,0,192,64,64,64,64, + 224,18,57,105,160,160,0,192,64,64,64,64,224,2,90,106, + 80,32,96,16,112,136,136,136,136,112,2,89,105,40,80,0, + 176,200,136,136,136,136,2,89,105,64,32,0,112,136,136,136, + 136,112,2,89,105,16,32,0,112,136,136,136,136,112,2,89, + 105,48,72,0,112,136,136,136,136,112,2,89,105,40,80,0, + 112,136,136,136,136,112,2,89,105,80,80,0,112,136,136,136, + 136,112,3,87,103,32,32,0,248,0,32,32,1,88,104,8, + 112,152,168,168,200,112,128,2,89,105,64,32,0,136,136,136, + 136,152,104,2,89,105,16,32,0,136,136,136,136,152,104,2, + 89,105,48,72,0,136,136,136,136,152,104,2,89,105,80,80, + 0,136,136,136,136,152,104,0,91,107,16,32,0,136,136,136, + 152,104,8,136,112,0,90,106,128,128,176,200,136,136,200,176, + 128,128,0,91,107,80,80,0,136,136,136,152,104,8,136,112 + }; +/* + Fontname: -Misc-Fixed-Medium-O-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 3 y=11 dx= 6 dy= 0 ascent=11 len=11 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13O[2162] U8G_SECTION(".progmem.u8g_font_6x13O") = { + 1,6,13,0,254,9,1,104,2,216,32,255,254,11,254,10, + 254,13,0,96,34,41,105,64,64,64,64,128,128,128,0,128, + 40,67,99,80,80,160,3,103,103,40,40,124,40,248,80,80, + 2,105,105,16,60,80,80,56,36,40,240,32,2,105,105,36, + 84,40,8,16,32,80,168,144,2,104,104,16,40,40,48,80, + 148,152,104,56,35,99,64,64,128,17,75,107,16,32,64,64, + 128,128,128,128,64,64,32,17,75,107,64,32,32,16,16,16, + 16,32,32,64,128,3,103,103,16,84,124,56,124,168,32,20, + 69,101,32,32,240,64,64,17,51,99,96,64,128,22,65,97, + 240,17,51,99,64,224,64,2,105,105,4,4,8,16,16,32, + 64,128,128,2,105,105,16,40,68,68,68,136,136,80,32,2, + 89,105,16,48,80,16,16,32,32,32,248,2,105,105,56,68, + 68,8,16,32,64,128,248,2,105,105,124,4,8,16,56,4, + 8,136,112,2,89,105,8,8,24,40,40,72,248,16,16,2, + 105,105,124,64,64,88,100,4,8,136,112,2,105,105,56,68, + 64,64,112,136,136,136,112,18,89,105,248,8,16,16,32,64, + 64,128,128,2,105,105,56,68,68,68,120,136,136,136,112,2, + 105,105,56,68,68,68,56,8,8,136,112,17,72,104,32,112, + 32,0,0,64,224,64,17,72,104,32,112,32,0,0,96,64, + 128,18,89,105,8,16,32,64,128,64,64,32,16,4,100,100, + 124,0,0,248,2,105,105,64,32,16,8,4,8,48,64,128, + 18,89,105,112,136,136,8,16,32,64,0,64,2,105,105,56, + 68,68,88,168,168,144,128,120,2,105,105,16,40,68,68,68, + 248,136,136,136,2,105,105,120,36,36,36,56,72,72,72,240, + 2,105,105,56,68,64,64,64,128,128,136,112,2,105,105,120, + 36,36,36,36,72,72,72,240,2,105,105,124,64,64,64,120, + 128,128,128,248,2,105,105,124,64,64,64,120,128,128,128,128, + 2,105,105,56,68,64,64,64,152,136,136,112,2,105,105,68, + 68,68,68,124,136,136,136,136,18,73,105,112,32,32,32,32, + 64,64,64,224,2,105,105,28,8,8,8,8,16,16,144,96, + 2,105,105,68,68,72,80,96,160,144,136,136,2,89,105,64, + 64,64,64,64,128,128,128,248,2,105,105,68,68,108,84,84, + 136,136,136,136,2,105,105,68,100,100,84,84,152,136,136,136, + 2,105,105,56,68,68,68,68,136,136,136,112,2,105,105,120, + 68,68,68,120,128,128,128,128,1,106,106,56,68,68,68,68, + 136,136,168,112,8,2,105,105,120,68,68,68,120,144,144,136, + 136,2,105,105,56,68,64,64,48,8,8,136,112,18,89,105, + 248,32,32,32,32,64,64,64,64,2,105,105,68,68,68,68, + 68,136,136,136,112,18,89,105,136,136,136,136,144,144,160,160, + 64,2,105,105,68,68,68,68,168,168,168,168,80,2,105,105, + 68,68,40,40,16,48,72,136,136,18,89,105,136,136,80,80, + 32,32,64,64,64,2,105,105,124,4,8,8,16,32,64,128, + 248,1,91,107,56,32,32,32,64,64,64,128,128,128,224,18, + 73,105,128,128,64,64,64,32,32,16,16,1,91,107,56,8, + 8,8,16,16,16,32,32,32,224,24,83,99,32,80,136,1, + 81,97,248,58,34,98,128,64,2,102,102,56,4,124,136,152, + 104,2,105,105,64,64,64,120,68,136,136,136,240,2,102,102, + 56,68,128,128,136,112,2,105,105,4,4,4,60,68,136,136, + 136,120,2,102,102,56,68,124,128,136,112,18,89,105,48,72, + 64,64,240,64,128,128,128,0,104,104,56,68,68,136,120,8, + 136,112,2,105,105,32,32,32,88,100,68,136,136,136,18,56, + 104,32,0,96,32,32,64,64,224,0,90,106,8,0,24,8, + 8,16,16,144,144,96,2,89,105,32,32,32,72,80,96,160, + 144,136,18,73,105,48,16,16,32,32,32,64,64,224,2,102, + 102,104,84,84,168,168,136,2,102,102,88,100,68,136,136,136, + 2,102,102,56,68,68,136,136,112,0,104,104,120,68,68,136, + 240,128,128,128,0,104,104,60,68,132,136,120,8,16,16,2, + 102,102,88,100,64,128,128,128,2,102,102,56,68,32,16,136, + 112,18,72,104,32,32,240,64,64,128,144,96,2,102,102,68, + 68,136,136,152,104,18,86,102,136,136,136,144,160,64,2,102, + 102,68,68,84,168,168,80,2,102,102,68,40,16,32,80,136, + 0,104,104,68,68,136,152,104,8,144,96,2,102,102,124,8, + 16,96,128,248,1,91,107,24,32,32,32,32,192,32,64,64, + 64,48,34,41,105,64,64,64,64,64,128,128,128,128,1,107, + 107,96,16,16,16,16,12,16,32,32,32,192,24,83,99,72, + 168,144,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,13,0,96,34,41,105,64,0,64,64,64,128,128, + 128,128,3,104,104,16,56,84,80,160,168,112,32,2,105,105, + 24,36,32,32,112,32,64,72,176,3,102,102,68,56,40,80, + 112,136,2,105,105,68,68,40,40,124,32,248,32,32,34,41, + 105,64,64,64,64,0,128,128,128,128,18,90,106,48,72,64, + 48,72,72,48,16,144,96,58,50,98,160,160,2,105,105,56, + 68,84,108,100,216,168,136,112,4,103,103,56,4,124,136,120, + 0,248,19,86,102,40,80,160,160,160,80,20,83,99,248,8, + 16,38,49,97,224,3,105,105,56,68,116,108,108,232,216,136, + 112,26,81,97,248,23,68,100,96,144,144,96,19,71,103,32, + 32,240,64,64,0,240,23,69,101,32,80,32,64,224,23,69, + 101,96,16,96,32,192,58,34,98,64,128,0,104,104,36,36, + 68,72,88,168,128,128,18,89,105,120,232,232,232,232,80,80, + 80,80,54,33,97,192,32,34,98,64,128,23,53,101,32,96, + 64,64,224,4,103,103,56,68,68,136,112,0,248,19,86,102, + 80,40,40,40,80,160,18,90,106,32,96,64,64,224,8,56, + 80,112,16,18,90,106,32,96,64,64,224,16,40,16,32,112, + 18,90,106,96,16,96,32,192,8,56,80,112,16,2,89,105, + 16,0,16,16,32,64,136,136,112,2,106,106,32,16,0,16, + 40,68,68,248,136,136,2,106,106,8,16,0,16,40,68,68, + 248,136,136,2,106,106,24,36,0,16,40,68,68,248,136,136, + 2,106,106,20,40,0,16,40,68,68,248,136,136,2,106,106, + 40,40,0,16,40,68,68,248,136,136,2,106,106,16,40,16, + 16,40,68,68,248,136,136,2,105,105,44,80,80,80,88,224, + 160,160,184,0,107,107,56,68,64,64,64,128,128,136,112,32, + 64,2,106,106,32,16,0,124,64,64,120,128,128,248,2,106, + 106,8,16,0,124,64,64,120,128,128,248,2,106,106,24,36, + 0,124,64,64,120,128,128,248,2,106,106,40,40,0,124,64, + 64,120,128,128,248,18,74,106,64,32,0,112,32,32,32,64, + 64,224,18,74,106,16,32,0,112,32,32,32,64,64,224,18, + 90,106,48,72,0,112,32,32,32,64,64,224,18,74,106,80, + 80,0,112,32,32,32,64,64,224,2,105,105,120,36,36,36, + 116,36,72,72,240,2,106,106,20,40,0,68,68,100,88,136, + 136,136,2,106,106,32,16,0,56,68,68,68,136,136,112,2, + 106,106,8,16,0,56,68,68,68,136,136,112,2,106,106,24, + 36,0,56,68,68,68,136,136,112,2,106,106,20,40,0,56, + 68,68,68,136,136,112,2,106,106,40,40,0,56,68,68,68, + 136,136,112,3,101,101,68,40,48,80,136,1,107,107,4,60, + 76,76,84,84,168,232,232,112,128,2,106,106,32,16,0,68, + 68,68,136,136,136,112,2,106,106,8,16,0,68,68,68,136, + 136,136,112,2,106,106,24,36,0,68,68,68,136,136,136,112, + 2,106,106,40,40,0,68,68,68,136,136,136,112,18,90,106, + 16,32,0,136,136,80,32,64,64,64,2,105,105,64,120,68, + 68,72,240,128,128,128,2,89,105,48,72,72,80,80,144,136, + 136,176,2,105,105,32,16,0,56,4,124,136,152,104,2,105, + 105,8,16,0,56,4,124,136,152,104,2,105,105,24,36,0, + 56,4,124,136,152,104,2,105,105,20,40,0,56,4,124,136, + 152,104,2,105,105,40,40,0,56,4,124,136,152,104,2,106, + 106,24,36,24,0,56,4,124,136,152,104,2,102,102,56,20, + 120,160,168,80,0,104,104,56,68,64,128,136,112,32,64,2, + 105,105,32,16,0,56,68,124,128,136,112,2,105,105,8,16, + 0,56,68,124,128,136,112,2,105,105,24,36,0,56,68,124, + 128,136,112,2,105,105,40,40,0,56,68,124,128,136,112,18, + 57,105,64,32,0,96,32,32,64,64,224,18,73,105,16,32, + 0,96,32,32,64,64,224,18,89,105,48,72,0,96,32,32, + 64,64,224,18,73,105,80,80,0,96,32,32,64,64,224,2, + 106,106,32,24,48,8,56,68,68,136,136,112,2,105,105,20, + 40,0,88,100,68,136,136,136,2,105,105,32,16,0,56,68, + 68,136,136,112,2,105,105,8,16,0,56,68,68,136,136,112, + 2,105,105,24,36,0,56,68,68,136,136,112,2,105,105,20, + 40,0,56,68,68,136,136,112,2,105,105,40,40,0,56,68, + 68,136,136,112,19,87,103,32,32,0,248,0,64,64,1,104, + 104,4,56,76,84,168,200,112,128,2,105,105,32,16,0,68, + 68,68,136,152,104,2,105,105,8,16,0,68,68,68,136,152, + 104,2,105,105,24,36,0,68,68,68,136,152,104,2,105,105, + 40,40,0,68,68,68,136,152,104,0,107,107,8,16,0,68, + 68,136,152,104,8,144,96,0,106,106,64,64,88,100,68,136, + 200,176,128,128,0,107,107,40,40,0,68,68,136,152,104,8, + 144,96}; +/* + Fontname: -Misc-Fixed-Medium-O-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 3 y=11 dx= 6 dy= 0 ascent=11 len=11 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13Or[1043] U8G_SECTION(".progmem.u8g_font_6x13Or") = { + 1,6,13,0,254,9,1,104,2,216,32,127,254,11,254,10, + 254,13,0,96,34,41,105,64,64,64,64,128,128,128,0,128, + 40,67,99,80,80,160,3,103,103,40,40,124,40,248,80,80, + 2,105,105,16,60,80,80,56,36,40,240,32,2,105,105,36, + 84,40,8,16,32,80,168,144,2,104,104,16,40,40,48,80, + 148,152,104,56,35,99,64,64,128,17,75,107,16,32,64,64, + 128,128,128,128,64,64,32,17,75,107,64,32,32,16,16,16, + 16,32,32,64,128,3,103,103,16,84,124,56,124,168,32,20, + 69,101,32,32,240,64,64,17,51,99,96,64,128,22,65,97, + 240,17,51,99,64,224,64,2,105,105,4,4,8,16,16,32, + 64,128,128,2,105,105,16,40,68,68,68,136,136,80,32,2, + 89,105,16,48,80,16,16,32,32,32,248,2,105,105,56,68, + 68,8,16,32,64,128,248,2,105,105,124,4,8,16,56,4, + 8,136,112,2,89,105,8,8,24,40,40,72,248,16,16,2, + 105,105,124,64,64,88,100,4,8,136,112,2,105,105,56,68, + 64,64,112,136,136,136,112,18,89,105,248,8,16,16,32,64, + 64,128,128,2,105,105,56,68,68,68,120,136,136,136,112,2, + 105,105,56,68,68,68,56,8,8,136,112,17,72,104,32,112, + 32,0,0,64,224,64,17,72,104,32,112,32,0,0,96,64, + 128,18,89,105,8,16,32,64,128,64,64,32,16,4,100,100, + 124,0,0,248,2,105,105,64,32,16,8,4,8,48,64,128, + 18,89,105,112,136,136,8,16,32,64,0,64,2,105,105,56, + 68,68,88,168,168,144,128,120,2,105,105,16,40,68,68,68, + 248,136,136,136,2,105,105,120,36,36,36,56,72,72,72,240, + 2,105,105,56,68,64,64,64,128,128,136,112,2,105,105,120, + 36,36,36,36,72,72,72,240,2,105,105,124,64,64,64,120, + 128,128,128,248,2,105,105,124,64,64,64,120,128,128,128,128, + 2,105,105,56,68,64,64,64,152,136,136,112,2,105,105,68, + 68,68,68,124,136,136,136,136,18,73,105,112,32,32,32,32, + 64,64,64,224,2,105,105,28,8,8,8,8,16,16,144,96, + 2,105,105,68,68,72,80,96,160,144,136,136,2,89,105,64, + 64,64,64,64,128,128,128,248,2,105,105,68,68,108,84,84, + 136,136,136,136,2,105,105,68,100,100,84,84,152,136,136,136, + 2,105,105,56,68,68,68,68,136,136,136,112,2,105,105,120, + 68,68,68,120,128,128,128,128,1,106,106,56,68,68,68,68, + 136,136,168,112,8,2,105,105,120,68,68,68,120,144,144,136, + 136,2,105,105,56,68,64,64,48,8,8,136,112,18,89,105, + 248,32,32,32,32,64,64,64,64,2,105,105,68,68,68,68, + 68,136,136,136,112,18,89,105,136,136,136,136,144,144,160,160, + 64,2,105,105,68,68,68,68,168,168,168,168,80,2,105,105, + 68,68,40,40,16,48,72,136,136,18,89,105,136,136,80,80, + 32,32,64,64,64,2,105,105,124,4,8,8,16,32,64,128, + 248,1,91,107,56,32,32,32,64,64,64,128,128,128,224,18, + 73,105,128,128,64,64,64,32,32,16,16,1,91,107,56,8, + 8,8,16,16,16,32,32,32,224,24,83,99,32,80,136,1, + 81,97,248,58,34,98,128,64,2,102,102,56,4,124,136,152, + 104,2,105,105,64,64,64,120,68,136,136,136,240,2,102,102, + 56,68,128,128,136,112,2,105,105,4,4,4,60,68,136,136, + 136,120,2,102,102,56,68,124,128,136,112,18,89,105,48,72, + 64,64,240,64,128,128,128,0,104,104,56,68,68,136,120,8, + 136,112,2,105,105,32,32,32,88,100,68,136,136,136,18,56, + 104,32,0,96,32,32,64,64,224,0,90,106,8,0,24,8, + 8,16,16,144,144,96,2,89,105,32,32,32,72,80,96,160, + 144,136,18,73,105,48,16,16,32,32,32,64,64,224,2,102, + 102,104,84,84,168,168,136,2,102,102,88,100,68,136,136,136, + 2,102,102,56,68,68,136,136,112,0,104,104,120,68,68,136, + 240,128,128,128,0,104,104,60,68,132,136,120,8,16,16,2, + 102,102,88,100,64,128,128,128,2,102,102,56,68,32,16,136, + 112,18,72,104,32,32,240,64,64,128,144,96,2,102,102,68, + 68,136,136,152,104,18,86,102,136,136,136,144,160,64,2,102, + 102,68,68,84,168,168,80,2,102,102,68,40,16,32,80,136, + 0,104,104,68,68,136,152,104,8,144,96,2,102,102,124,8, + 16,96,128,248,1,91,107,24,32,32,32,32,192,32,64,64, + 64,48,34,41,105,64,64,64,64,64,128,128,128,128,1,107, + 107,96,16,16,16,16,12,16,32,32,32,192,24,83,99,72, + 168,144,255}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 5 h=11 x= 2 y=11 dx= 6 dy= 0 ascent=11 len=11 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13r[1041] U8G_SECTION(".progmem.u8g_font_6x13r") = { + 1,6,13,0,254,9,1,102,2,214,32,127,254,11,254,10, + 254,13,0,96,34,25,105,128,128,128,128,128,128,128,0,128, + 24,51,99,160,160,160,3,87,103,80,80,248,80,248,80,80, + 2,89,105,32,120,160,160,112,40,40,240,32,2,89,105,72, + 168,80,16,32,64,80,168,144,2,88,104,64,160,160,64,160, + 152,144,104,40,19,99,128,128,128,17,59,107,32,64,64,128, + 128,128,128,128,64,64,32,17,59,107,128,64,64,32,32,32, + 32,32,64,64,128,6,85,101,32,168,112,168,32,4,85,101, + 32,32,248,32,32,17,51,99,96,64,128,6,81,97,248,17, + 51,99,64,224,64,2,89,105,8,8,16,16,32,64,64,128, + 128,2,89,105,32,80,136,136,136,136,136,80,32,2,89,105, + 32,96,160,32,32,32,32,32,248,2,89,105,112,136,136,8, + 16,32,64,128,248,2,89,105,248,8,16,32,112,8,8,136, + 112,2,89,105,16,16,48,80,80,144,248,16,16,2,89,105, + 248,128,128,176,200,8,8,136,112,2,89,105,112,136,128,128, + 240,136,136,136,112,2,89,105,248,8,16,16,32,32,64,64, + 64,2,89,105,112,136,136,136,112,136,136,136,112,2,89,105, + 112,136,136,136,120,8,8,136,112,17,56,104,64,224,64,0, + 0,64,224,64,17,56,104,64,224,64,0,0,96,64,128,2, + 89,105,8,16,32,64,128,64,32,16,8,4,84,100,248,0, + 0,248,2,89,105,128,64,32,16,8,16,32,64,128,2,89, + 105,112,136,136,8,16,32,32,0,32,2,89,105,112,136,136, + 152,168,168,176,128,120,2,89,105,32,80,136,136,136,248,136, + 136,136,2,89,105,240,72,72,72,112,72,72,72,240,2,89, + 105,112,136,128,128,128,128,128,136,112,2,89,105,240,72,72, + 72,72,72,72,72,240,2,89,105,248,128,128,128,240,128,128, + 128,248,2,89,105,248,128,128,128,240,128,128,128,128,2,89, + 105,112,136,128,128,128,152,136,136,112,2,89,105,136,136,136, + 136,248,136,136,136,136,18,57,105,224,64,64,64,64,64,64, + 64,224,2,89,105,56,16,16,16,16,16,16,144,96,2,89, + 105,136,136,144,160,192,160,144,136,136,2,89,105,128,128,128, + 128,128,128,128,128,248,2,89,105,136,136,216,168,168,136,136, + 136,136,2,89,105,136,200,200,168,168,152,152,136,136,2,89, + 105,112,136,136,136,136,136,136,136,112,2,89,105,240,136,136, + 136,240,128,128,128,128,1,90,106,112,136,136,136,136,136,136, + 168,112,8,2,89,105,240,136,136,136,240,160,144,136,136,2, + 89,105,112,136,128,128,112,8,8,136,112,2,89,105,248,32, + 32,32,32,32,32,32,32,2,89,105,136,136,136,136,136,136, + 136,136,112,2,89,105,136,136,136,136,80,80,80,32,32,2, + 89,105,136,136,136,136,168,168,168,168,80,2,89,105,136,136, + 80,80,32,80,80,136,136,2,89,105,136,136,80,80,32,32, + 32,32,32,2,89,105,248,8,16,16,32,64,64,128,248,17, + 59,107,224,128,128,128,128,128,128,128,128,128,224,2,89,105, + 128,128,64,64,32,16,16,8,8,17,59,107,224,32,32,32, + 32,32,32,32,32,32,224,8,83,99,32,80,136,1,81,97, + 248,42,34,98,128,64,2,86,102,112,8,120,136,152,104,2, + 89,105,128,128,128,240,136,136,136,136,240,2,86,102,112,136, + 128,128,136,112,2,89,105,8,8,8,120,136,136,136,136,120, + 2,86,102,112,136,248,128,136,112,2,89,105,48,72,64,64, + 240,64,64,64,64,0,88,104,112,136,136,136,120,8,136,112, + 2,89,105,128,128,128,176,200,136,136,136,136,18,56,104,64, + 0,192,64,64,64,64,224,0,74,106,16,0,48,16,16,16, + 16,144,144,96,2,89,105,128,128,128,144,160,192,160,144,136, + 18,57,105,192,64,64,64,64,64,64,64,224,2,86,102,208, + 168,168,168,168,136,2,86,102,176,200,136,136,136,136,2,86, + 102,112,136,136,136,136,112,0,88,104,240,136,136,136,240,128, + 128,128,0,88,104,120,136,136,136,120,8,8,8,2,86,102, + 176,200,128,128,128,128,2,86,102,112,136,96,16,136,112,2, + 88,104,64,64,240,64,64,64,72,48,2,86,102,136,136,136, + 136,152,104,2,86,102,136,136,136,80,80,32,2,86,102,136, + 136,168,168,168,80,2,86,102,136,80,32,32,80,136,0,88, + 104,136,136,136,152,104,8,136,112,2,86,102,248,16,32,64, + 128,248,1,91,107,24,32,32,32,32,192,32,32,32,32,24, + 34,25,105,128,128,128,128,128,128,128,128,128,1,91,107,192, + 32,32,32,32,24,32,32,32,32,192,8,83,99,72,168,144, + 255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 3, '1' Height: 10 + Calculated Max Values w= 7 h=13 x= 6 y= 9 dx= 7 dy= 0 ascent=11 len=13 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 3 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13_67_75[2197] U8G_SECTION(".progmem.u8g_font_7x13_67_75") = { + 1,7,13,0,254,3,1,91,2,178,32,255,0,11,254,10, + 0,4,117,117,72,36,254,36,72,18,89,121,32,32,32,168, + 112,32,168,112,32,4,101,117,36,72,248,72,36,4,101,117, + 144,72,124,72,144,4,101,117,36,68,252,68,36,18,89,121, + 32,112,168,32,32,32,32,32,248,4,101,117,144,136,252,136, + 144,18,89,121,248,32,32,32,32,32,168,112,32,18,89,121, + 32,112,168,32,32,168,112,32,248,4,117,117,36,66,252,64, + 32,4,117,117,72,132,126,4,8,4,117,117,36,74,252,72, + 40,4,117,117,72,164,126,36,40,4,117,117,40,84,238,68, + 40,4,117,117,40,84,254,84,40,2,106,122,64,64,128,152, + 104,8,16,84,56,16,2,106,122,32,64,252,68,36,4,4, + 4,4,4,2,106,122,16,8,252,136,144,128,128,128,128,128, + 2,106,122,4,4,4,4,4,36,68,252,64,32,2,106,122, + 128,128,128,128,128,144,136,252,8,16,2,104,120,240,16,16, + 16,16,84,56,16,2,90,122,8,8,8,8,8,40,72,248, + 64,32,4,119,119,28,34,34,34,170,112,32,4,119,119,112, + 136,136,136,170,28,8,2,120,120,254,0,224,192,160,16,8, + 4,2,121,121,144,160,254,160,146,10,254,10,18,4,119,119, + 72,156,170,136,136,136,112,4,119,119,36,114,170,34,34,34, + 28,6,99,115,32,64,252,4,99,115,252,64,32,50,57,121, + 128,192,160,128,128,128,128,128,128,18,57,121,32,96,160,32, + 32,32,32,32,32,6,99,115,16,8,252,4,99,115,252,8, + 16,50,57,121,128,128,128,128,128,128,160,192,128,18,57,121, + 32,32,32,32,32,32,160,96,32,2,105,121,16,8,252,8, + 48,64,252,64,32,2,122,122,40,120,168,40,40,40,40,42, + 60,40,2,105,121,32,64,252,64,48,8,252,8,16,2,105, + 121,32,64,252,64,32,64,252,64,32,2,121,121,68,238,68, + 68,68,68,68,68,68,2,105,121,16,8,252,8,16,8,252, + 8,16,2,122,122,68,68,68,68,68,68,68,68,238,68,3, + 103,119,32,64,252,0,252,8,16,3,103,119,16,8,252,0, + 252,64,32,3,119,119,16,34,126,132,126,40,16,4,117,117, + 40,124,146,124,40,3,119,119,16,40,252,66,252,136,16,3, + 119,119,16,32,126,128,126,32,16,2,121,121,16,40,108,170, + 40,40,40,40,40,3,119,119,16,8,252,2,252,8,16,2, + 121,121,40,40,40,40,40,170,108,40,16,4,117,117,40,124, + 130,124,40,2,122,122,16,40,108,170,40,40,170,108,40,16, + 2,119,119,252,144,136,196,162,144,8,2,119,119,126,18,34, + 70,138,18,32,2,119,119,32,18,138,70,34,18,126,2,119, + 119,8,144,162,196,136,144,252,2,121,121,8,16,62,64,254, + 64,62,16,8,2,121,121,32,16,248,4,254,4,248,16,32, + 4,117,117,32,72,254,68,32,4,117,117,8,36,254,68,8, + 18,89,121,32,112,168,32,248,32,248,32,32,18,89,121,32, + 32,248,32,248,32,168,112,32,3,119,119,16,32,64,182,64, + 32,16,2,122,122,16,40,84,146,0,16,16,0,16,16,3, + 119,119,16,8,4,218,4,8,16,2,122,122,16,16,0,16, + 16,0,146,84,40,16,4,117,117,144,160,254,160,144,4,117, + 117,18,10,254,10,18,3,119,119,16,48,94,130,94,48,16, + 2,121,121,16,40,68,238,40,40,40,40,56,3,119,119,16, + 24,244,130,244,24,16,2,121,121,56,40,40,40,40,238,68, + 40,16,1,124,124,16,40,68,238,40,40,40,56,0,56,40, + 56,1,122,122,16,40,68,238,40,40,40,108,68,124,1,122, + 122,16,40,68,254,40,40,40,108,68,124,1,122,122,16,40, + 68,254,56,56,56,124,68,124,2,121,121,16,40,68,238,68, + 238,40,40,56,1,122,122,16,40,68,238,68,238,40,108,68, + 124,3,119,119,144,152,244,130,244,152,144,2,119,119,254,128, + 188,176,168,164,130,2,119,119,130,74,42,26,122,2,254,2, + 121,121,16,40,68,238,40,238,68,40,16,255,255,255,255,255, + 255,255,255,255,255,255,255,7,118,118,254,254,254,254,254,254, + 0,114,114,254,254,0,115,115,254,254,254,0,117,117,254,254, + 254,254,254,0,119,119,254,254,254,254,254,254,254,0,120,120, + 254,254,254,254,254,254,254,254,0,122,122,254,254,254,254,254, + 254,254,254,254,254,0,123,123,254,254,254,254,254,254,254,254, + 254,254,254,0,125,125,254,254,254,254,254,254,254,254,254,254, + 254,254,254,0,109,125,252,252,252,252,252,252,252,252,252,252, + 252,252,252,0,93,125,248,248,248,248,248,248,248,248,248,248, + 248,248,248,0,77,125,240,240,240,240,240,240,240,240,240,240, + 240,240,240,0,77,125,240,240,240,240,240,240,240,240,240,240, + 240,240,240,0,61,125,224,224,224,224,224,224,224,224,224,224, + 224,224,224,0,45,125,192,192,192,192,192,192,192,192,192,192, + 192,192,192,0,29,125,128,128,128,128,128,128,128,128,128,128, + 128,128,128,64,61,125,224,224,224,224,224,224,224,224,224,224, + 224,224,224,1,123,123,84,0,170,0,84,0,170,0,84,0, + 170,0,125,125,170,84,170,84,170,84,170,84,170,84,170,84, + 170,0,125,125,254,84,254,170,254,84,254,170,254,84,254,170, + 254,11,114,114,254,254,96,29,125,128,128,128,128,128,128,128, + 128,128,128,128,128,128,0,71,119,240,240,240,240,240,240,240, + 64,55,119,224,224,224,224,224,224,224,7,70,118,240,240,240, + 240,240,240,0,125,125,240,240,240,240,240,240,254,254,254,254, + 254,254,254,0,125,125,240,240,240,240,240,240,14,14,14,14, + 14,14,14,0,125,125,254,254,254,254,254,254,240,240,240,240, + 240,240,240,0,125,125,254,254,254,254,254,254,14,14,14,14, + 14,14,14,71,54,118,224,224,224,224,224,224,0,125,125,14, + 14,14,14,14,14,240,240,240,240,240,240,240,0,125,125,14, + 14,14,14,14,14,254,254,254,254,254,254,254,3,119,119,254, + 254,254,254,254,254,254,3,119,119,254,130,130,130,130,130,254, + 3,119,119,124,130,130,130,130,130,124,3,119,119,254,130,186, + 186,186,130,254,3,119,119,254,130,254,130,254,130,254,3,119, + 119,254,170,170,170,170,170,254,3,119,119,254,170,254,170,254, + 170,254,3,119,119,254,146,138,198,162,146,254,3,119,119,254, + 146,162,198,138,146,254,3,119,119,254,214,170,214,170,214,254, + 20,85,117,248,248,248,248,248,20,85,117,248,136,136,136,248, + 4,117,117,254,254,254,254,254,4,117,117,254,130,130,130,254, + 19,87,119,248,248,248,248,248,248,248,19,87,119,248,136,136, + 136,136,136,248,4,117,117,62,126,254,252,248,4,117,117,62, + 66,130,132,248,2,120,120,16,16,56,56,124,124,254,254,2, + 120,120,16,16,40,40,68,68,130,254,19,86,118,32,32,112, + 112,248,248,19,86,118,32,32,80,80,136,248,3,119,119,128, + 224,248,254,248,224,128,3,119,119,128,224,152,134,152,224,128, + 4,101,117,192,240,252,240,192,4,101,117,192,176,140,176,192, + 4,117,117,128,240,254,240,128,4,117,117,128,240,142,240,128, + 2,120,120,254,254,124,124,56,56,16,16,2,120,120,254,130, + 68,68,40,40,16,16,19,86,118,248,248,112,112,32,32,19, + 86,118,248,136,80,80,32,32,3,119,119,2,14,62,254,62, + 14,2,3,119,119,2,14,50,194,50,14,2,4,101,117,12, + 60,252,60,12,4,101,117,12,52,196,52,12,4,117,117,2, + 30,254,30,2,4,117,117,2,30,226,30,2,2,119,119,16, + 56,124,254,124,56,16,2,119,119,16,40,68,130,68,40,16, + 2,119,119,16,40,84,186,84,40,16,3,119,119,56,68,146, + 186,146,68,56,18,89,121,32,32,80,80,136,80,80,32,32, + 3,119,119,56,68,130,130,130,68,56,3,119,119,40,0,130, + 0,130,0,40,3,119,119,56,108,170,170,170,108,56,3,119, + 119,56,68,146,170,146,68,56,3,119,119,56,124,254,254,254, + 124,56,3,119,119,56,116,242,242,242,116,56,3,119,119,56, + 92,158,158,158,92,56,3,119,119,56,68,130,254,254,124,56, + 3,119,119,56,124,254,254,130,68,56,3,119,119,56,92,158, + 158,130,68,56,3,119,119,56,76,142,142,254,124,56,51,71, + 119,192,224,240,240,240,224,192,3,71,119,48,112,240,240,240, + 112,48,0,125,125,254,254,254,254,198,130,130,130,198,254,254, + 254,254,0,125,125,254,254,254,254,198,186,186,186,198,254,254, + 254,254,6,119,119,254,254,254,254,198,186,186,0,119,119,186, + 186,198,254,254,254,254,6,68,116,48,64,128,128,54,68,116, + 192,32,16,16,51,68,116,16,16,32,192,3,68,116,128,128, + 64,48,6,116,116,56,68,130,130,3,116,116,130,130,68,56, + 3,119,119,2,6,14,30,62,126,254,3,119,119,128,192,224, + 240,248,252,254,3,119,119,254,252,248,240,224,192,128,3,119, + 119,254,126,62,30,14,6,2,20,85,117,112,136,136,136,112, + 3,119,119,254,226,226,226,226,226,254,3,119,119,254,142,142, + 142,142,142,254,3,119,119,254,254,250,242,226,194,254,3,119, + 119,254,134,142,158,190,254,254,3,119,119,254,146,146,146,146, + 146,254,2,120,120,16,16,40,40,84,124,146,254,2,120,120, + 16,16,56,56,116,116,242,254,2,120,120,16,16,56,56,92, + 92,158,254,3,119,119,56,68,130,130,130,68,56,2,119,119, + 254,146,146,242,130,130,254,2,119,119,254,130,130,242,146,146, + 254,2,119,119,254,130,130,158,146,146,254,2,119,119,254,146, + 146,158,130,130,254,2,119,119,56,84,146,242,130,68,56,2, + 119,119,56,68,130,242,146,84,56,2,119,119,56,68,130,158, + 146,84,56,2,119,119,56,84,146,158,130,68,56,255,255,255, + 255,255,255,255,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 7, '1' Height: 5 + Calculated Max Values w= 7 h= 9 x= 1 y= 2 dx= 7 dy= 0 ascent= 9 len= 9 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 7 descent= 0 + X Font ascent = 8 descent= 0 + Max Font ascent = 9 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13_75r[471] U8G_SECTION(".progmem.u8g_font_7x13_75r") = { + 1,7,13,0,254,7,1,71,0,0,32,79,0,9,0,8, + 0,3,119,119,254,254,254,254,254,254,254,3,119,119,254,130, + 130,130,130,130,254,3,119,119,124,130,130,130,130,130,124,3, + 119,119,254,130,186,186,186,130,254,3,119,119,254,130,254,130, + 254,130,254,3,119,119,254,170,170,170,170,170,254,3,119,119, + 254,170,254,170,254,170,254,3,119,119,254,146,138,198,162,146, + 254,3,119,119,254,146,162,198,138,146,254,3,119,119,254,214, + 170,214,170,214,254,20,85,117,248,248,248,248,248,20,85,117, + 248,136,136,136,248,4,117,117,254,254,254,254,254,4,117,117, + 254,130,130,130,254,19,87,119,248,248,248,248,248,248,248,19, + 87,119,248,136,136,136,136,136,248,4,117,117,62,126,254,252, + 248,4,117,117,62,66,130,132,248,2,120,120,16,16,56,56, + 124,124,254,254,2,120,120,16,16,40,40,68,68,130,254,19, + 86,118,32,32,112,112,248,248,19,86,118,32,32,80,80,136, + 248,3,119,119,128,224,248,254,248,224,128,3,119,119,128,224, + 152,134,152,224,128,4,101,117,192,240,252,240,192,4,101,117, + 192,176,140,176,192,4,117,117,128,240,254,240,128,4,117,117, + 128,240,142,240,128,2,120,120,254,254,124,124,56,56,16,16, + 2,120,120,254,130,68,68,40,40,16,16,19,86,118,248,248, + 112,112,32,32,19,86,118,248,136,80,80,32,32,3,119,119, + 2,14,62,254,62,14,2,3,119,119,2,14,50,194,50,14, + 2,4,101,117,12,60,252,60,12,4,101,117,12,52,196,52, + 12,4,117,117,2,30,254,30,2,4,117,117,2,30,226,30, + 2,2,119,119,16,56,124,254,124,56,16,2,119,119,16,40, + 68,130,68,40,16,2,119,119,16,40,84,186,84,40,16,3, + 119,119,56,68,146,186,146,68,56,18,89,121,32,32,80,80, + 136,80,80,32,32,3,119,119,56,68,130,130,130,68,56,3, + 119,119,40,0,130,0,130,0,40,3,119,119,56,108,170,170, + 170,108,56,3,119,119,56,68,146,170,146,68,56,3,119,119, + 56,124,254,254,254,124,56}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 2 y=11 dx= 7 dy= 0 ascent=11 len=11 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent = 9 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13B[2172] U8G_SECTION(".progmem.u8g_font_7x13B") = { + 1,7,13,0,254,9,1,105,2,216,32,255,254,11,254,9, + 254,13,0,112,34,41,121,192,192,192,192,192,192,0,192,192, + 24,83,115,216,216,216,18,89,121,80,80,248,248,80,248,248, + 80,80,2,105,121,48,120,180,176,120,52,180,120,48,2,105, + 121,228,172,232,24,48,96,92,212,156,2,105,121,112,216,216, + 216,112,212,220,216,116,39,36,116,192,192,192,192,18,73,121, + 48,96,96,192,192,192,96,96,48,18,73,121,192,96,96,48, + 48,48,96,96,192,3,102,118,72,48,252,252,48,72,3,102, + 118,48,48,252,252,48,48,17,68,116,112,112,96,192,5,97, + 113,252,17,67,115,96,240,96,2,105,121,12,12,24,24,48, + 96,96,192,192,2,105,121,48,72,204,204,204,204,204,72,48, + 2,105,121,48,112,176,48,48,48,48,48,252,2,105,121,120, + 204,204,12,56,96,192,192,252,2,105,121,252,12,24,48,120, + 12,12,204,120,2,105,121,12,28,60,108,204,204,252,12,12, + 2,105,121,252,192,192,248,204,12,12,204,120,2,105,121,120, + 204,192,192,248,204,204,204,120,2,105,121,252,12,12,24,24, + 48,48,96,96,2,105,121,120,204,204,204,120,204,204,204,120, + 2,105,121,120,204,204,204,124,12,12,204,120,17,72,120,96, + 240,96,0,0,96,240,96,17,72,120,96,240,96,0,112,112, + 96,192,2,105,121,12,24,48,96,192,96,48,24,12,4,100, + 116,252,0,0,252,2,105,121,192,96,48,24,12,24,48,96, + 192,2,105,121,120,204,204,12,56,48,0,48,48,2,105,121, + 120,140,140,188,172,188,128,140,120,2,105,121,120,204,204,204, + 252,204,204,204,204,2,105,121,248,204,204,204,248,204,204,204, + 248,2,105,121,120,204,192,192,192,192,192,204,120,2,105,121, + 248,204,204,204,204,204,204,204,248,2,105,121,252,192,192,192, + 248,192,192,192,252,2,105,121,252,192,192,192,248,192,192,192, + 192,2,105,121,120,204,192,192,220,204,204,204,124,2,105,121, + 204,204,204,204,252,204,204,204,204,2,105,121,252,48,48,48, + 48,48,48,48,252,2,105,121,12,12,12,12,12,12,12,204, + 120,2,105,121,196,204,216,240,224,240,216,204,196,2,105,121, + 192,192,192,192,192,192,192,192,252,2,105,121,132,204,252,252, + 204,204,204,204,204,2,105,121,204,204,236,236,252,220,220,204, + 204,2,105,121,120,204,204,204,204,204,204,204,120,2,105,121, + 248,204,204,204,248,192,192,192,192,1,106,122,120,204,204,204, + 204,204,236,220,120,12,2,105,121,248,204,204,204,248,240,216, + 204,196,2,105,121,120,204,192,192,120,12,12,204,120,2,105, + 121,252,48,48,48,48,48,48,48,48,2,105,121,204,204,204, + 204,204,204,204,204,120,2,105,121,204,204,204,72,72,120,48, + 48,48,2,105,121,204,204,204,204,204,252,252,204,132,2,105, + 121,132,204,72,120,48,120,72,204,132,2,105,121,204,204,120, + 120,48,48,48,48,48,2,105,121,252,12,12,24,48,96,192, + 192,252,18,73,121,240,192,192,192,192,192,192,192,240,2,105, + 121,192,192,96,96,48,24,24,12,12,18,73,121,240,48,48, + 48,48,48,48,48,240,7,100,116,48,120,204,132,1,98,114, + 252,252,25,67,115,192,96,48,2,102,118,120,12,124,204,204, + 124,2,105,121,192,192,192,248,204,204,204,204,248,2,102,118, + 120,204,192,192,204,120,2,105,121,12,12,12,124,204,204,204, + 204,124,2,102,118,120,204,252,192,204,120,2,105,121,56,108, + 96,96,240,96,96,96,96,0,104,120,116,204,204,120,192,120, + 204,120,2,105,121,192,192,192,248,204,204,204,204,204,2,105, + 121,48,48,0,112,48,48,48,48,252,0,107,123,12,12,0, + 12,12,12,12,12,12,204,120,2,105,121,192,192,192,204,216, + 240,240,216,204,2,105,121,112,48,48,48,48,48,48,48,252, + 2,102,118,216,252,252,204,204,204,2,102,118,248,204,204,204, + 204,204,2,102,118,120,204,204,204,204,120,0,104,120,248,204, + 204,204,248,192,192,192,0,104,120,124,204,204,204,124,12,12, + 12,2,102,118,248,204,192,192,192,192,2,102,118,120,204,96, + 24,204,120,2,104,120,96,96,248,96,96,96,108,56,2,102, + 118,204,204,204,204,204,124,2,102,118,204,204,204,120,120,48, + 2,102,118,204,204,204,252,252,72,2,102,118,204,204,120,120, + 204,204,0,104,120,204,204,204,204,124,12,204,120,2,102,118, + 252,12,24,96,192,252,18,73,121,112,192,192,96,192,96,192, + 192,112,34,41,121,192,192,192,192,192,192,192,192,192,18,73, + 121,224,48,48,96,48,96,48,48,224,8,99,115,100,252,152, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,13,0,112,34,42,122,192,192,0,192,192,192,192,192,192, + 192,3,104,120,16,124,212,208,208,212,124,16,2,105,121,56, + 108,96,96,248,96,96,108,184,3,102,118,204,252,72,72,252, + 204,2,105,121,204,204,120,120,252,48,252,48,48,34,42,122, + 192,192,192,192,0,0,192,192,192,192,2,106,122,120,204,192, + 120,204,204,120,12,204,120,26,82,114,216,216,2,106,122,120, + 204,132,180,228,228,180,132,204,120,20,87,119,240,24,248,152, + 248,0,248,3,103,119,52,104,208,160,208,104,52,3,100,116, + 252,12,12,12,21,65,113,240,2,106,122,120,204,132,188,172, + 188,180,172,204,120,27,81,113,248,7,100,116,120,204,204,120, + 3,103,119,48,48,252,48,48,0,252,6,70,118,224,176,48, + 96,192,240,6,70,118,224,176,96,48,176,224,25,67,115,48, + 96,192,1,103,119,204,204,204,204,204,252,128,2,105,121,124, + 252,244,244,244,116,52,52,52,38,34,114,192,192,16,50,114, + 96,192,6,70,118,96,224,96,96,96,240,21,87,119,112,248, + 136,248,112,0,248,3,103,119,176,88,44,20,44,88,176,2, + 106,122,96,224,96,96,100,252,28,52,60,12,2,106,122,96, + 224,96,96,120,236,12,24,48,60,2,106,122,224,176,96,48, + 180,236,28,52,60,12,2,106,122,48,48,0,48,48,96,192, + 204,204,120,2,106,122,96,48,0,48,120,204,204,252,204,204, + 2,106,122,24,48,0,48,120,204,204,252,204,204,2,106,122, + 56,108,0,48,120,204,204,252,204,204,2,106,122,52,88,0, + 48,120,204,204,252,204,204,2,106,122,204,204,0,48,120,204, + 204,252,204,204,2,106,122,120,72,120,48,120,204,204,252,204, + 204,2,105,121,124,248,216,216,220,248,216,216,220,0,107,123, + 120,204,192,192,192,192,192,204,120,48,96,2,106,122,96,48, + 0,252,192,192,240,192,192,252,2,106,122,24,48,0,252,192, + 192,240,192,192,252,2,106,122,56,108,0,252,192,192,240,192, + 192,252,2,106,122,204,204,0,252,192,192,240,192,192,252,2, + 106,122,96,48,0,252,48,48,48,48,48,252,2,106,122,24, + 48,0,252,48,48,48,48,48,252,2,106,122,56,108,0,252, + 48,48,48,48,48,252,2,106,122,204,204,0,252,48,48,48, + 48,48,252,2,105,121,248,108,108,108,236,108,108,108,248,2, + 106,122,52,88,0,204,204,236,252,220,204,204,2,106,122,96, + 48,0,120,204,204,204,204,204,120,2,106,122,24,48,0,120, + 204,204,204,204,204,120,2,106,122,56,108,0,120,204,204,204, + 204,204,120,2,106,122,52,88,0,120,204,204,204,204,204,120, + 2,106,122,204,204,0,120,204,204,204,204,204,120,3,101,117, + 204,120,48,120,204,1,106,122,4,120,220,220,220,236,236,236, + 120,128,2,106,122,96,48,0,204,204,204,204,204,204,120,2, + 106,122,24,48,0,204,204,204,204,204,204,120,2,106,122,56, + 108,0,204,204,204,204,204,204,120,2,106,122,204,204,0,204, + 204,204,204,204,204,120,2,106,122,24,48,0,204,72,120,48, + 48,48,48,2,105,121,192,248,204,204,204,248,192,192,192,2, + 105,121,120,204,204,216,216,204,204,204,216,2,105,121,48,24, + 0,120,12,124,204,220,124,2,105,121,24,48,0,120,12,124, + 204,220,124,2,105,121,56,108,0,120,12,124,204,220,124,2, + 105,121,52,88,0,120,12,124,204,220,124,2,105,121,108,108, + 0,120,12,124,204,220,124,2,106,122,56,40,56,0,120,12, + 124,204,220,124,2,102,118,120,52,124,176,180,104,0,104,120, + 120,204,192,192,204,120,48,96,2,105,121,48,24,0,120,204, + 252,192,204,120,2,105,121,24,48,0,120,204,252,192,204,120, + 2,105,121,56,108,0,120,204,252,192,204,120,2,105,121,108, + 108,0,120,204,252,192,204,120,18,73,121,192,96,0,224,96, + 96,96,96,240,18,73,121,48,96,0,224,96,96,96,96,240, + 2,89,121,112,216,0,112,48,48,48,48,120,18,89,121,216, + 216,0,224,96,96,96,96,240,2,106,122,104,48,120,12,124, + 204,204,204,204,120,2,105,121,52,88,0,248,236,204,204,204, + 204,2,105,121,96,48,0,120,204,204,204,204,120,2,105,121, + 24,48,0,120,204,204,204,204,120,2,105,121,56,108,0,120, + 204,204,204,204,120,2,105,121,52,88,0,120,204,204,204,204, + 120,2,105,121,108,108,0,120,204,204,204,204,120,3,103,119, + 48,48,0,252,0,48,48,1,105,121,4,120,204,220,204,236, + 204,120,128,2,105,121,96,48,0,204,204,204,204,220,124,2, + 105,121,24,48,0,204,204,204,204,220,124,2,105,121,56,108, + 0,204,204,204,204,220,124,2,105,121,108,108,0,204,204,204, + 204,220,124,0,107,123,24,48,0,204,204,204,220,124,12,204, + 120,0,106,122,192,192,216,236,204,204,236,216,192,192,0,107, + 123,108,108,0,204,204,204,220,108,12,204,120}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 2 y=11 dx= 7 dy= 0 ascent=11 len=11 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent = 9 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13Br[1041] U8G_SECTION(".progmem.u8g_font_7x13Br") = { + 1,7,13,0,254,9,1,105,2,216,32,127,254,11,254,9, + 254,13,0,112,34,41,121,192,192,192,192,192,192,0,192,192, + 24,83,115,216,216,216,18,89,121,80,80,248,248,80,248,248, + 80,80,2,105,121,48,120,180,176,120,52,180,120,48,2,105, + 121,228,172,232,24,48,96,92,212,156,2,105,121,112,216,216, + 216,112,212,220,216,116,39,36,116,192,192,192,192,18,73,121, + 48,96,96,192,192,192,96,96,48,18,73,121,192,96,96,48, + 48,48,96,96,192,3,102,118,72,48,252,252,48,72,3,102, + 118,48,48,252,252,48,48,17,68,116,112,112,96,192,5,97, + 113,252,17,67,115,96,240,96,2,105,121,12,12,24,24,48, + 96,96,192,192,2,105,121,48,72,204,204,204,204,204,72,48, + 2,105,121,48,112,176,48,48,48,48,48,252,2,105,121,120, + 204,204,12,56,96,192,192,252,2,105,121,252,12,24,48,120, + 12,12,204,120,2,105,121,12,28,60,108,204,204,252,12,12, + 2,105,121,252,192,192,248,204,12,12,204,120,2,105,121,120, + 204,192,192,248,204,204,204,120,2,105,121,252,12,12,24,24, + 48,48,96,96,2,105,121,120,204,204,204,120,204,204,204,120, + 2,105,121,120,204,204,204,124,12,12,204,120,17,72,120,96, + 240,96,0,0,96,240,96,17,72,120,96,240,96,0,112,112, + 96,192,2,105,121,12,24,48,96,192,96,48,24,12,4,100, + 116,252,0,0,252,2,105,121,192,96,48,24,12,24,48,96, + 192,2,105,121,120,204,204,12,56,48,0,48,48,2,105,121, + 120,140,140,188,172,188,128,140,120,2,105,121,120,204,204,204, + 252,204,204,204,204,2,105,121,248,204,204,204,248,204,204,204, + 248,2,105,121,120,204,192,192,192,192,192,204,120,2,105,121, + 248,204,204,204,204,204,204,204,248,2,105,121,252,192,192,192, + 248,192,192,192,252,2,105,121,252,192,192,192,248,192,192,192, + 192,2,105,121,120,204,192,192,220,204,204,204,124,2,105,121, + 204,204,204,204,252,204,204,204,204,2,105,121,252,48,48,48, + 48,48,48,48,252,2,105,121,12,12,12,12,12,12,12,204, + 120,2,105,121,196,204,216,240,224,240,216,204,196,2,105,121, + 192,192,192,192,192,192,192,192,252,2,105,121,132,204,252,252, + 204,204,204,204,204,2,105,121,204,204,236,236,252,220,220,204, + 204,2,105,121,120,204,204,204,204,204,204,204,120,2,105,121, + 248,204,204,204,248,192,192,192,192,1,106,122,120,204,204,204, + 204,204,236,220,120,12,2,105,121,248,204,204,204,248,240,216, + 204,196,2,105,121,120,204,192,192,120,12,12,204,120,2,105, + 121,252,48,48,48,48,48,48,48,48,2,105,121,204,204,204, + 204,204,204,204,204,120,2,105,121,204,204,204,72,72,120,48, + 48,48,2,105,121,204,204,204,204,204,252,252,204,132,2,105, + 121,132,204,72,120,48,120,72,204,132,2,105,121,204,204,120, + 120,48,48,48,48,48,2,105,121,252,12,12,24,48,96,192, + 192,252,18,73,121,240,192,192,192,192,192,192,192,240,2,105, + 121,192,192,96,96,48,24,24,12,12,18,73,121,240,48,48, + 48,48,48,48,48,240,7,100,116,48,120,204,132,1,98,114, + 252,252,25,67,115,192,96,48,2,102,118,120,12,124,204,204, + 124,2,105,121,192,192,192,248,204,204,204,204,248,2,102,118, + 120,204,192,192,204,120,2,105,121,12,12,12,124,204,204,204, + 204,124,2,102,118,120,204,252,192,204,120,2,105,121,56,108, + 96,96,240,96,96,96,96,0,104,120,116,204,204,120,192,120, + 204,120,2,105,121,192,192,192,248,204,204,204,204,204,2,105, + 121,48,48,0,112,48,48,48,48,252,0,107,123,12,12,0, + 12,12,12,12,12,12,204,120,2,105,121,192,192,192,204,216, + 240,240,216,204,2,105,121,112,48,48,48,48,48,48,48,252, + 2,102,118,216,252,252,204,204,204,2,102,118,248,204,204,204, + 204,204,2,102,118,120,204,204,204,204,120,0,104,120,248,204, + 204,204,248,192,192,192,0,104,120,124,204,204,204,124,12,12, + 12,2,102,118,248,204,192,192,192,192,2,102,118,120,204,96, + 24,204,120,2,104,120,96,96,248,96,96,96,108,56,2,102, + 118,204,204,204,204,204,124,2,102,118,204,204,204,120,120,48, + 2,102,118,204,204,204,252,252,72,2,102,118,204,204,120,120, + 204,204,0,104,120,204,204,204,204,124,12,204,120,2,102,118, + 252,12,24,96,192,252,18,73,121,112,192,192,96,192,96,192, + 192,112,34,41,121,192,192,192,192,192,192,192,192,192,18,73, + 121,224,48,48,96,48,96,48,48,224,8,99,115,100,252,152, + 255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 3 y=11 dx= 7 dy= 0 ascent=11 len=11 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13[2157] U8G_SECTION(".progmem.u8g_font_7x13") = { + 1,7,13,0,254,9,1,95,2,207,32,255,254,11,254,10, + 254,13,0,112,50,25,121,128,128,128,128,128,128,128,0,128, + 40,51,115,160,160,160,19,87,119,80,80,248,80,248,80,80, + 19,87,119,32,120,160,112,40,240,32,2,105,121,68,164,72, + 16,16,32,72,148,136,2,103,119,96,144,144,96,148,136,116, + 56,19,115,128,128,128,34,57,121,32,64,64,128,128,128,64, + 64,32,34,57,121,128,64,64,32,32,32,64,64,128,4,101, + 117,72,48,252,48,72,20,85,117,32,32,248,32,32,17,67, + 115,112,96,128,22,81,113,248,33,51,115,64,224,64,18,89, + 121,8,8,16,16,32,64,64,128,128,2,105,121,48,72,132, + 132,132,132,132,72,48,18,89,121,32,96,160,32,32,32,32, + 32,248,2,105,121,120,132,132,4,8,48,64,128,252,2,105, + 121,252,4,8,16,56,4,4,132,120,2,105,121,8,24,40, + 72,136,136,252,8,8,2,105,121,252,128,128,184,196,4,4, + 132,120,2,105,121,56,64,128,128,184,196,132,132,120,2,105, + 121,252,4,8,16,16,32,32,64,64,2,105,121,120,132,132, + 132,120,132,132,132,120,2,105,121,120,132,132,140,116,4,4, + 8,112,33,56,120,64,224,64,0,0,64,224,64,17,72,120, + 32,112,32,0,0,112,96,128,18,89,121,8,16,32,64,128, + 64,32,16,8,4,100,116,252,0,0,252,18,89,121,128,64, + 32,16,8,16,32,64,128,2,105,121,120,132,132,4,8,16, + 16,0,16,2,105,121,120,132,132,156,164,172,148,128,120,2, + 105,121,48,72,132,132,132,252,132,132,132,2,105,121,248,68, + 68,68,120,68,68,68,248,2,105,121,120,132,128,128,128,128, + 128,132,120,2,105,121,248,68,68,68,68,68,68,68,248,2, + 105,121,252,128,128,128,240,128,128,128,252,2,105,121,252,128, + 128,128,240,128,128,128,128,2,105,121,120,132,128,128,128,156, + 132,140,116,2,105,121,132,132,132,132,252,132,132,132,132,18, + 89,121,248,32,32,32,32,32,32,32,248,2,105,121,28,8, + 8,8,8,8,8,136,112,2,105,121,132,136,144,160,192,160, + 144,136,132,2,105,121,128,128,128,128,128,128,128,128,252,2, + 105,121,132,204,204,180,180,132,132,132,132,2,105,121,132,132, + 196,164,148,140,132,132,132,2,105,121,120,132,132,132,132,132, + 132,132,120,2,105,121,248,132,132,132,248,128,128,128,128,1, + 106,122,120,132,132,132,132,132,164,148,120,4,2,105,121,248, + 132,132,132,248,160,144,136,132,2,105,121,120,132,128,128,120, + 4,4,132,120,18,89,121,248,32,32,32,32,32,32,32,32, + 2,105,121,132,132,132,132,132,132,132,132,120,2,105,121,132, + 132,132,72,72,72,48,48,48,2,105,121,132,132,132,132,180, + 180,204,204,132,2,105,121,132,132,72,72,48,72,72,132,132, + 18,89,121,136,136,80,80,32,32,32,32,32,2,105,121,252, + 4,8,16,48,32,64,128,252,17,75,123,240,128,128,128,128, + 128,128,128,128,128,240,18,89,121,128,128,64,64,32,16,16, + 8,8,17,75,123,240,16,16,16,16,16,16,16,16,16,240, + 24,83,115,32,80,136,1,97,113,252,42,34,114,128,64,2, + 102,118,120,4,124,132,140,116,2,105,121,128,128,128,184,196, + 132,132,196,184,2,102,118,120,132,128,128,132,120,2,105,121, + 4,4,4,116,140,132,132,140,116,2,102,118,120,132,252,128, + 132,120,2,105,121,56,68,64,64,240,64,64,64,64,0,104, + 120,116,136,136,112,128,120,132,120,2,105,121,128,128,128,184, + 196,132,132,132,132,18,88,120,32,0,96,32,32,32,32,248, + 16,90,122,8,0,24,8,8,8,8,136,136,112,2,105,121, + 128,128,128,136,144,224,144,136,132,18,89,121,96,32,32,32, + 32,32,32,32,248,18,86,118,208,168,168,168,168,136,2,102, + 118,184,196,132,132,132,132,2,102,118,120,132,132,132,132,120, + 0,104,120,184,196,132,196,184,128,128,128,0,104,120,116,140, + 132,140,116,4,4,4,2,102,118,184,68,64,64,64,64,2, + 102,118,120,132,96,24,132,120,2,104,120,64,64,240,64,64, + 64,68,56,2,102,118,132,132,132,132,140,116,18,86,118,136, + 136,136,80,80,32,18,86,118,136,136,168,168,168,80,2,102, + 118,132,72,48,48,72,132,0,104,120,132,132,132,140,116,4, + 132,120,2,102,118,252,8,16,32,64,252,17,91,123,56,64, + 64,64,32,192,32,64,64,64,56,50,25,121,128,128,128,128, + 128,128,128,128,128,17,91,123,224,16,16,16,32,24,32,16, + 16,16,224,24,83,115,72,168,144,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,13,0,112,50,25,121, + 128,0,128,128,128,128,128,128,128,19,88,120,32,112,168,160, + 160,168,112,32,2,105,121,56,68,64,64,224,64,64,68,184, + 3,102,118,132,120,72,72,120,132,2,89,121,136,136,80,80, + 248,32,248,32,32,50,25,121,128,128,128,128,0,128,128,128, + 128,18,74,122,96,144,128,96,144,144,96,16,144,96,25,66, + 114,144,144,2,105,121,120,132,180,164,164,164,180,132,120,20, + 87,119,112,8,120,136,120,0,248,3,103,119,20,40,80,160, + 80,40,20,20,83,115,248,8,8,22,65,113,240,2,105,121, + 120,132,180,172,172,180,172,132,120,26,81,113,248,23,68,116, + 96,144,144,96,19,87,119,32,32,248,32,32,0,248,22,54, + 118,64,160,32,64,128,224,22,54,118,224,32,64,32,160,64, + 42,34,114,64,128,1,103,119,132,132,132,132,204,180,128,2, + 105,121,124,232,232,232,104,40,40,40,40,38,33,113,192,32, + 34,114,64,128,22,54,118,64,192,64,64,64,224,21,70,118, + 96,144,144,96,0,240,3,103,119,160,80,40,20,40,80,160, + 2,106,122,64,192,64,64,68,236,20,20,28,4,2,106,122, + 64,192,64,64,72,244,4,8,16,28,2,106,122,224,32,64, + 32,164,76,20,20,28,4,2,105,121,32,0,32,32,64,128, + 132,132,120,2,106,122,32,16,0,48,72,132,132,252,132,132, + 2,106,122,16,32,0,48,72,132,132,252,132,132,2,106,122, + 48,72,0,48,72,132,132,252,132,132,2,106,122,100,152,0, + 48,72,132,132,252,132,132,2,106,122,72,72,0,48,72,132, + 132,252,132,132,2,106,122,48,72,48,48,72,132,132,252,132, + 132,2,105,121,92,160,160,160,184,224,160,160,188,0,107,123, + 120,132,128,128,128,128,128,132,120,16,32,2,106,122,32,16, + 0,252,128,128,240,128,128,252,2,106,122,16,32,0,252,128, + 128,240,128,128,252,2,106,122,48,72,0,252,128,128,240,128, + 128,252,2,106,122,72,72,0,252,128,128,240,128,128,252,18, + 90,122,64,32,0,248,32,32,32,32,32,248,18,90,122,32, + 64,0,248,32,32,32,32,32,248,18,90,122,32,80,0,248, + 32,32,32,32,32,248,18,90,122,136,136,0,248,32,32,32, + 32,32,248,2,105,121,248,68,68,68,228,68,68,68,248,2, + 106,122,100,152,0,132,196,164,164,148,140,132,2,106,122,32, + 16,0,120,132,132,132,132,132,120,2,106,122,16,32,0,120, + 132,132,132,132,132,120,2,106,122,48,72,0,120,132,132,132, + 132,132,120,2,106,122,100,152,0,120,132,132,132,132,132,120, + 2,106,122,72,72,0,120,132,132,132,132,132,120,3,102,118, + 132,72,48,48,72,132,1,107,123,4,120,140,148,148,164,164, + 164,196,120,128,2,106,122,32,16,0,132,132,132,132,132,132, + 120,2,106,122,16,32,0,132,132,132,132,132,132,120,2,106, + 122,48,72,0,132,132,132,132,132,132,120,2,106,122,72,72, + 0,132,132,132,132,132,132,120,18,90,122,16,32,0,136,136, + 80,32,32,32,32,2,105,121,128,248,132,132,132,248,128,128, + 128,18,89,121,96,144,144,160,160,144,136,136,176,2,105,121, + 32,16,0,120,4,124,132,140,116,2,105,121,16,32,0,120, + 4,124,132,140,116,2,105,121,48,72,0,120,4,124,132,140, + 116,2,105,121,100,152,0,120,4,124,132,140,116,2,105,121, + 72,72,0,120,4,124,132,140,116,2,106,122,48,72,48,0, + 120,4,124,132,140,116,2,102,118,104,20,124,144,148,104,0, + 104,120,120,132,128,128,132,120,16,32,2,105,121,32,16,0, + 120,132,252,128,132,120,2,105,121,16,32,0,120,132,252,128, + 132,120,2,105,121,48,72,0,120,132,252,128,132,120,2,105, + 121,72,72,0,120,132,252,128,132,120,18,89,121,64,32,0, + 96,32,32,32,32,248,18,89,121,32,64,0,96,32,32,32, + 32,248,18,89,121,96,144,0,96,32,32,32,32,248,18,89, + 121,144,144,0,96,32,32,32,32,248,2,106,122,72,48,80, + 8,120,132,132,132,132,120,2,105,121,100,152,0,184,196,132, + 132,132,132,2,105,121,32,16,0,120,132,132,132,132,120,2, + 105,121,16,32,0,120,132,132,132,132,120,2,105,121,48,72, + 0,120,132,132,132,132,120,2,105,121,100,152,0,120,132,132, + 132,132,120,2,105,121,72,72,0,120,132,132,132,132,120,19, + 87,119,32,32,0,248,0,32,32,1,104,120,4,120,140,148, + 164,196,120,128,2,105,121,32,16,0,132,132,132,132,140,116, + 2,105,121,16,32,0,132,132,132,132,140,116,2,105,121,48, + 72,0,132,132,132,132,140,116,2,105,121,72,72,0,132,132, + 132,132,140,116,0,107,123,16,32,0,132,132,132,140,116,4, + 132,120,0,106,122,128,128,184,196,132,132,196,184,128,128,0, + 107,123,72,72,0,132,132,132,140,116,4,132,120}; +/* + Fontname: -Misc-Fixed-Medium-O-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 7 h=11 x= 3 y=11 dx= 7 dy= 0 ascent=11 len=11 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13O[2158] U8G_SECTION(".progmem.u8g_font_7x13O") = { + 1,7,13,0,254,9,1,96,2,208,32,255,254,11,254,10, + 254,13,0,112,34,41,121,64,64,64,64,128,128,128,0,128, + 40,51,115,160,160,160,3,103,119,40,40,124,40,248,80,80, + 3,103,119,16,60,80,56,40,240,32,2,121,121,34,82,36, + 8,16,32,72,148,136,2,104,120,24,36,36,56,80,148,136, + 116,56,19,115,128,128,128,18,73,121,16,32,64,64,128,128, + 64,64,32,18,73,121,64,32,32,16,16,32,32,64,128,20, + 85,117,72,48,248,96,144,20,69,117,32,32,240,64,64,17, + 67,115,112,96,128,22,81,113,248,33,51,115,64,224,64,2, + 105,121,4,4,8,16,16,32,64,128,128,2,121,121,24,36, + 66,66,66,132,132,72,48,18,89,121,16,48,80,16,16,32, + 32,32,248,2,121,121,60,66,66,2,12,48,64,128,252,2, + 121,121,126,2,4,8,24,4,4,132,120,2,105,121,4,12, + 20,36,72,136,252,8,8,2,121,121,62,32,32,92,98,2, + 4,132,120,2,105,121,28,32,64,64,120,132,132,132,120,2, + 105,121,252,4,8,16,32,64,64,128,128,2,121,121,60,66, + 66,66,124,132,132,132,120,2,105,121,120,132,132,140,116,8, + 8,16,224,17,72,120,32,112,32,0,0,64,224,64,17,88, + 120,16,56,16,0,0,112,96,128,18,89,121,8,16,32,64, + 128,128,64,32,16,4,116,116,126,0,0,252,18,89,121,64, + 32,16,8,8,16,32,64,128,2,105,121,120,132,132,8,16, + 32,32,0,32,2,121,121,60,66,66,78,82,172,148,128,120, + 2,121,121,24,36,66,66,66,124,132,132,132,2,121,121,124, + 34,34,34,60,68,68,68,248,2,121,121,60,66,64,64,64, + 128,128,132,120,2,121,121,124,34,34,34,34,68,68,68,248, + 2,121,121,126,64,64,64,120,128,128,128,252,2,121,121,126, + 64,64,64,120,128,128,128,128,2,121,121,60,66,64,64,64, + 156,132,140,116,2,121,121,66,66,66,66,124,132,132,132,132, + 2,105,121,124,16,16,16,16,32,32,32,248,2,121,121,14, + 4,4,4,4,8,8,136,112,2,121,121,66,68,72,80,96, + 160,144,136,132,2,105,121,64,64,64,64,64,128,128,128,252, + 2,121,121,66,102,102,90,90,132,132,132,132,2,121,121,66, + 66,98,82,74,140,132,132,132,2,121,121,60,66,66,66,66, + 132,132,132,120,2,121,121,124,66,66,66,124,128,128,128,128, + 1,122,122,60,66,66,66,66,132,164,148,120,4,2,121,121, + 124,66,66,66,124,160,144,136,132,2,121,121,60,66,64,64, + 56,4,4,132,120,18,89,121,248,32,32,32,32,64,64,64, + 64,2,121,121,66,66,66,66,66,132,132,132,120,2,105,121, + 132,132,136,136,80,80,96,96,96,2,121,121,66,66,66,66, + 90,180,204,204,132,2,121,121,66,68,36,40,16,40,72,68, + 132,18,89,121,136,136,80,80,32,32,64,64,64,2,121,121, + 126,2,4,8,16,32,64,128,252,17,91,123,120,64,64,64, + 64,64,128,128,128,128,240,18,73,121,128,128,64,64,32,32, + 32,16,16,17,91,123,120,8,8,8,8,8,16,16,16,16, + 240,24,83,115,32,80,136,1,97,113,252,42,34,114,128,64, + 2,118,118,60,2,124,132,140,116,2,121,121,64,64,64,92, + 98,66,132,196,184,2,118,118,60,66,128,128,132,120,2,121, + 121,2,2,2,58,68,132,132,140,116,2,118,118,60,66,124, + 128,132,120,2,105,121,56,68,64,64,240,64,128,128,128,0, + 120,120,58,68,136,112,128,120,132,120,2,121,121,32,32,64, + 92,98,66,132,132,132,18,88,120,16,0,48,16,16,32,32, + 248,0,106,122,4,0,12,4,4,8,8,136,136,112,2,105, + 121,64,64,64,68,88,96,144,136,132,18,89,121,48,16,16, + 16,16,32,32,32,248,2,102,118,104,84,84,168,168,136,2, + 118,118,92,98,66,132,132,132,2,118,118,60,66,66,132,132, + 120,0,120,120,92,98,66,196,184,128,128,128,0,120,120,58, + 70,130,140,116,4,4,4,2,102,118,184,68,64,128,128,128, + 2,118,118,60,66,32,24,132,120,18,88,120,64,64,240,64, + 128,128,136,112,2,118,118,66,66,66,132,140,116,18,86,118, + 136,136,144,144,160,64,2,102,118,68,68,84,168,168,80,2, + 118,118,66,36,24,48,72,132,0,120,120,66,66,132,140,116, + 4,132,120,2,118,118,126,4,24,32,64,252,17,91,123,56, + 64,64,64,32,192,64,128,128,128,112,34,41,121,64,64,64, + 64,64,128,128,128,128,1,107,123,112,8,8,8,16,28,32, + 16,16,16,224,24,83,115,72,168,144,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,13,0,112,34,41, + 121,64,0,64,64,64,128,128,128,128,3,104,120,16,56,84, + 80,160,168,112,32,2,121,121,28,34,32,32,112,32,64,68, + 184,3,118,118,66,60,36,72,120,132,2,105,121,68,68,40, + 40,124,16,248,32,32,34,41,121,64,64,64,64,0,128,128, + 128,128,2,106,122,24,36,32,48,72,72,48,16,144,96,25, + 66,114,144,144,2,121,121,60,66,90,82,82,164,180,132,120, + 4,103,119,56,4,60,68,60,0,248,3,103,119,20,40,80, + 160,160,80,40,20,83,115,248,16,16,22,65,113,240,2,121, + 121,60,66,90,86,172,180,172,132,120,26,81,113,248,23,68, + 116,96,144,144,96,19,87,119,16,16,120,32,32,0,248,22, + 70,118,32,80,16,96,128,224,22,70,118,96,16,96,32,160, + 64,42,34,114,64,128,1,119,119,66,66,66,132,204,180,128, + 2,105,121,124,232,232,232,40,80,80,80,80,38,33,113,192, + 32,34,114,64,128,38,54,118,32,96,32,64,64,224,21,86, + 118,48,72,72,48,0,240,3,103,119,80,40,20,20,40,80, + 160,2,106,122,32,96,32,64,68,236,20,40,56,8,2,106, + 122,32,96,32,64,72,244,4,24,32,56,2,106,122,96,16, + 96,32,164,76,20,40,56,8,2,105,121,16,0,16,16,32, + 64,132,132,120,2,122,122,16,8,0,24,36,66,66,124,132, + 132,2,122,122,8,16,0,24,36,66,66,124,132,132,2,122, + 122,24,36,0,24,36,66,66,124,132,132,2,122,122,50,76, + 0,24,36,66,66,124,132,132,2,122,122,36,36,0,24,36, + 66,66,124,132,132,2,122,122,24,36,24,24,36,66,66,124, + 132,132,2,121,121,46,80,80,80,124,160,160,160,188,0,123, + 123,60,66,64,64,64,128,128,132,120,16,32,2,122,122,16, + 8,0,126,64,64,112,128,128,252,2,122,122,8,16,0,126, + 64,64,112,128,128,252,2,122,122,24,36,0,126,64,64,112, + 128,128,252,2,122,122,36,36,0,126,64,64,112,128,128,252, + 2,106,122,32,16,0,124,16,16,32,32,32,248,2,106,122, + 16,32,0,124,16,16,32,32,32,248,2,106,122,16,40,0, + 124,16,16,32,32,32,248,2,106,122,68,68,0,124,16,16, + 32,32,32,248,2,121,121,124,34,34,34,242,68,68,68,248, + 2,122,122,50,76,0,66,98,82,82,140,140,132,2,122,122, + 16,8,0,60,66,66,132,132,132,120,2,122,122,8,16,0, + 60,66,66,132,132,132,120,2,122,122,24,36,0,60,66,66, + 132,132,132,120,2,122,122,50,76,0,60,66,66,132,132,132, + 120,2,122,122,36,36,0,60,66,66,132,132,132,120,3,118, + 118,66,36,24,48,72,132,1,123,123,2,60,70,74,74,82, + 164,164,196,120,128,2,122,122,16,8,0,66,66,66,132,132, + 132,120,2,122,122,8,16,0,66,66,66,132,132,132,120,2, + 122,122,24,36,0,66,66,66,132,132,132,120,2,122,122,36, + 36,0,66,66,66,132,132,132,120,18,90,122,16,32,0,136, + 136,80,32,32,64,64,2,121,121,64,124,66,66,66,124,128, + 128,128,18,89,121,48,72,72,80,80,144,136,136,176,2,121, + 121,16,8,0,60,2,124,132,140,116,2,121,121,8,16,0, + 60,2,124,132,140,116,2,121,121,24,36,0,60,2,124,132, + 140,116,2,121,121,50,76,0,60,2,124,132,140,116,2,121, + 121,36,36,0,60,2,124,132,140,116,2,122,122,24,36,24, + 0,60,2,124,132,140,116,2,118,118,52,10,124,144,148,104, + 0,120,120,60,66,128,128,132,120,16,32,2,121,121,16,8, + 0,60,66,124,128,132,120,2,121,121,8,16,0,60,66,124, + 128,132,120,2,121,121,24,36,0,60,66,124,128,132,120,2, + 121,121,36,36,0,60,66,124,128,132,120,18,89,121,32,16, + 0,48,16,32,32,32,248,18,89,121,16,32,0,48,16,32, + 32,32,248,18,89,121,48,72,0,48,16,32,32,32,248,18, + 89,121,72,72,0,48,16,32,32,32,248,2,122,122,36,24, + 40,4,60,66,66,132,132,120,2,121,121,50,76,0,92,98, + 66,132,132,132,2,121,121,16,8,0,60,66,66,132,132,120, + 2,121,121,8,16,0,60,66,66,132,132,120,2,121,121,24, + 36,0,60,66,66,132,132,120,2,121,121,50,76,0,60,66, + 66,132,132,120,2,121,121,36,36,0,60,66,66,132,132,120, + 19,71,119,32,32,0,240,0,64,64,1,120,120,2,60,74, + 82,164,196,120,128,2,121,121,16,8,0,66,66,66,132,140, + 116,2,121,121,8,16,0,66,66,66,132,140,116,2,121,121, + 24,36,0,66,66,66,132,140,116,2,121,121,36,36,0,66, + 66,66,132,140,116,0,123,123,8,16,0,66,66,132,140,116, + 4,132,120,0,122,122,64,64,92,98,66,132,196,184,128,128, + 0,123,123,36,36,0,66,66,132,140,116,4,132,120}; +/* + Fontname: -Misc-Fixed-Medium-O-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 7 h=11 x= 3 y=11 dx= 7 dy= 0 ascent=11 len=11 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13Or[1035] U8G_SECTION(".progmem.u8g_font_7x13Or") = { + 1,7,13,0,254,9,1,96,2,208,32,127,254,11,254,10, + 254,13,0,112,34,41,121,64,64,64,64,128,128,128,0,128, + 40,51,115,160,160,160,3,103,119,40,40,124,40,248,80,80, + 3,103,119,16,60,80,56,40,240,32,2,121,121,34,82,36, + 8,16,32,72,148,136,2,104,120,24,36,36,56,80,148,136, + 116,56,19,115,128,128,128,18,73,121,16,32,64,64,128,128, + 64,64,32,18,73,121,64,32,32,16,16,32,32,64,128,20, + 85,117,72,48,248,96,144,20,69,117,32,32,240,64,64,17, + 67,115,112,96,128,22,81,113,248,33,51,115,64,224,64,2, + 105,121,4,4,8,16,16,32,64,128,128,2,121,121,24,36, + 66,66,66,132,132,72,48,18,89,121,16,48,80,16,16,32, + 32,32,248,2,121,121,60,66,66,2,12,48,64,128,252,2, + 121,121,126,2,4,8,24,4,4,132,120,2,105,121,4,12, + 20,36,72,136,252,8,8,2,121,121,62,32,32,92,98,2, + 4,132,120,2,105,121,28,32,64,64,120,132,132,132,120,2, + 105,121,252,4,8,16,32,64,64,128,128,2,121,121,60,66, + 66,66,124,132,132,132,120,2,105,121,120,132,132,140,116,8, + 8,16,224,17,72,120,32,112,32,0,0,64,224,64,17,88, + 120,16,56,16,0,0,112,96,128,18,89,121,8,16,32,64, + 128,128,64,32,16,4,116,116,126,0,0,252,18,89,121,64, + 32,16,8,8,16,32,64,128,2,105,121,120,132,132,8,16, + 32,32,0,32,2,121,121,60,66,66,78,82,172,148,128,120, + 2,121,121,24,36,66,66,66,124,132,132,132,2,121,121,124, + 34,34,34,60,68,68,68,248,2,121,121,60,66,64,64,64, + 128,128,132,120,2,121,121,124,34,34,34,34,68,68,68,248, + 2,121,121,126,64,64,64,120,128,128,128,252,2,121,121,126, + 64,64,64,120,128,128,128,128,2,121,121,60,66,64,64,64, + 156,132,140,116,2,121,121,66,66,66,66,124,132,132,132,132, + 2,105,121,124,16,16,16,16,32,32,32,248,2,121,121,14, + 4,4,4,4,8,8,136,112,2,121,121,66,68,72,80,96, + 160,144,136,132,2,105,121,64,64,64,64,64,128,128,128,252, + 2,121,121,66,102,102,90,90,132,132,132,132,2,121,121,66, + 66,98,82,74,140,132,132,132,2,121,121,60,66,66,66,66, + 132,132,132,120,2,121,121,124,66,66,66,124,128,128,128,128, + 1,122,122,60,66,66,66,66,132,164,148,120,4,2,121,121, + 124,66,66,66,124,160,144,136,132,2,121,121,60,66,64,64, + 56,4,4,132,120,18,89,121,248,32,32,32,32,64,64,64, + 64,2,121,121,66,66,66,66,66,132,132,132,120,2,105,121, + 132,132,136,136,80,80,96,96,96,2,121,121,66,66,66,66, + 90,180,204,204,132,2,121,121,66,68,36,40,16,40,72,68, + 132,18,89,121,136,136,80,80,32,32,64,64,64,2,121,121, + 126,2,4,8,16,32,64,128,252,17,91,123,120,64,64,64, + 64,64,128,128,128,128,240,18,73,121,128,128,64,64,32,32, + 32,16,16,17,91,123,120,8,8,8,8,8,16,16,16,16, + 240,24,83,115,32,80,136,1,97,113,252,42,34,114,128,64, + 2,118,118,60,2,124,132,140,116,2,121,121,64,64,64,92, + 98,66,132,196,184,2,118,118,60,66,128,128,132,120,2,121, + 121,2,2,2,58,68,132,132,140,116,2,118,118,60,66,124, + 128,132,120,2,105,121,56,68,64,64,240,64,128,128,128,0, + 120,120,58,68,136,112,128,120,132,120,2,121,121,32,32,64, + 92,98,66,132,132,132,18,88,120,16,0,48,16,16,32,32, + 248,0,106,122,4,0,12,4,4,8,8,136,136,112,2,105, + 121,64,64,64,68,88,96,144,136,132,18,89,121,48,16,16, + 16,16,32,32,32,248,2,102,118,104,84,84,168,168,136,2, + 118,118,92,98,66,132,132,132,2,118,118,60,66,66,132,132, + 120,0,120,120,92,98,66,196,184,128,128,128,0,120,120,58, + 70,130,140,116,4,4,4,2,102,118,184,68,64,128,128,128, + 2,118,118,60,66,32,24,132,120,18,88,120,64,64,240,64, + 128,128,136,112,2,118,118,66,66,66,132,140,116,18,86,118, + 136,136,144,144,160,64,2,102,118,68,68,84,168,168,80,2, + 118,118,66,36,24,48,72,132,0,120,120,66,66,132,140,116, + 4,132,120,2,118,118,126,4,24,32,64,252,17,91,123,56, + 64,64,64,32,192,64,128,128,128,112,34,41,121,64,64,64, + 64,64,128,128,128,128,1,107,123,112,8,8,8,16,28,32, + 16,16,16,224,24,83,115,72,168,144,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 3 y=11 dx= 7 dy= 0 ascent=11 len=11 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13r[1034] U8G_SECTION(".progmem.u8g_font_7x13r") = { + 1,7,13,0,254,9,1,95,2,207,32,127,254,11,254,10, + 254,13,0,112,50,25,121,128,128,128,128,128,128,128,0,128, + 40,51,115,160,160,160,19,87,119,80,80,248,80,248,80,80, + 19,87,119,32,120,160,112,40,240,32,2,105,121,68,164,72, + 16,16,32,72,148,136,2,103,119,96,144,144,96,148,136,116, + 56,19,115,128,128,128,34,57,121,32,64,64,128,128,128,64, + 64,32,34,57,121,128,64,64,32,32,32,64,64,128,4,101, + 117,72,48,252,48,72,20,85,117,32,32,248,32,32,17,67, + 115,112,96,128,22,81,113,248,33,51,115,64,224,64,18,89, + 121,8,8,16,16,32,64,64,128,128,2,105,121,48,72,132, + 132,132,132,132,72,48,18,89,121,32,96,160,32,32,32,32, + 32,248,2,105,121,120,132,132,4,8,48,64,128,252,2,105, + 121,252,4,8,16,56,4,4,132,120,2,105,121,8,24,40, + 72,136,136,252,8,8,2,105,121,252,128,128,184,196,4,4, + 132,120,2,105,121,56,64,128,128,184,196,132,132,120,2,105, + 121,252,4,8,16,16,32,32,64,64,2,105,121,120,132,132, + 132,120,132,132,132,120,2,105,121,120,132,132,140,116,4,4, + 8,112,33,56,120,64,224,64,0,0,64,224,64,17,72,120, + 32,112,32,0,0,112,96,128,18,89,121,8,16,32,64,128, + 64,32,16,8,4,100,116,252,0,0,252,18,89,121,128,64, + 32,16,8,16,32,64,128,2,105,121,120,132,132,4,8,16, + 16,0,16,2,105,121,120,132,132,156,164,172,148,128,120,2, + 105,121,48,72,132,132,132,252,132,132,132,2,105,121,248,68, + 68,68,120,68,68,68,248,2,105,121,120,132,128,128,128,128, + 128,132,120,2,105,121,248,68,68,68,68,68,68,68,248,2, + 105,121,252,128,128,128,240,128,128,128,252,2,105,121,252,128, + 128,128,240,128,128,128,128,2,105,121,120,132,128,128,128,156, + 132,140,116,2,105,121,132,132,132,132,252,132,132,132,132,18, + 89,121,248,32,32,32,32,32,32,32,248,2,105,121,28,8, + 8,8,8,8,8,136,112,2,105,121,132,136,144,160,192,160, + 144,136,132,2,105,121,128,128,128,128,128,128,128,128,252,2, + 105,121,132,204,204,180,180,132,132,132,132,2,105,121,132,132, + 196,164,148,140,132,132,132,2,105,121,120,132,132,132,132,132, + 132,132,120,2,105,121,248,132,132,132,248,128,128,128,128,1, + 106,122,120,132,132,132,132,132,164,148,120,4,2,105,121,248, + 132,132,132,248,160,144,136,132,2,105,121,120,132,128,128,120, + 4,4,132,120,18,89,121,248,32,32,32,32,32,32,32,32, + 2,105,121,132,132,132,132,132,132,132,132,120,2,105,121,132, + 132,132,72,72,72,48,48,48,2,105,121,132,132,132,132,180, + 180,204,204,132,2,105,121,132,132,72,72,48,72,72,132,132, + 18,89,121,136,136,80,80,32,32,32,32,32,2,105,121,252, + 4,8,16,48,32,64,128,252,17,75,123,240,128,128,128,128, + 128,128,128,128,128,240,18,89,121,128,128,64,64,32,16,16, + 8,8,17,75,123,240,16,16,16,16,16,16,16,16,16,240, + 24,83,115,32,80,136,1,97,113,252,42,34,114,128,64,2, + 102,118,120,4,124,132,140,116,2,105,121,128,128,128,184,196, + 132,132,196,184,2,102,118,120,132,128,128,132,120,2,105,121, + 4,4,4,116,140,132,132,140,116,2,102,118,120,132,252,128, + 132,120,2,105,121,56,68,64,64,240,64,64,64,64,0,104, + 120,116,136,136,112,128,120,132,120,2,105,121,128,128,128,184, + 196,132,132,132,132,18,88,120,32,0,96,32,32,32,32,248, + 16,90,122,8,0,24,8,8,8,8,136,136,112,2,105,121, + 128,128,128,136,144,224,144,136,132,18,89,121,96,32,32,32, + 32,32,32,32,248,18,86,118,208,168,168,168,168,136,2,102, + 118,184,196,132,132,132,132,2,102,118,120,132,132,132,132,120, + 0,104,120,184,196,132,196,184,128,128,128,0,104,120,116,140, + 132,140,116,4,4,4,2,102,118,184,68,64,64,64,64,2, + 102,118,120,132,96,24,132,120,2,104,120,64,64,240,64,64, + 64,68,56,2,102,118,132,132,132,132,140,116,18,86,118,136, + 136,136,80,80,32,18,86,118,136,136,168,168,168,80,2,102, + 118,132,72,48,48,72,132,0,104,120,132,132,132,140,116,4, + 132,120,2,102,118,252,8,16,32,64,252,17,91,123,56,64, + 64,64,32,192,32,64,64,64,56,50,25,121,128,128,128,128, + 128,128,128,128,128,17,91,123,224,16,16,16,32,24,32,16, + 16,16,224,24,83,115,72,168,144,255}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--14-130-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 7 h=14 x= 2 y=12 dx= 7 dy= 0 ascent=12 len=14 + Font Bounding box w= 7 h=14 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =11 descent=-2 + Max Font ascent =12 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x14B[2390] U8G_SECTION(".progmem.u8g_font_7x14B") = { + 1,7,14,0,254,10,1,137,3,30,32,255,254,12,254,11, + 254,14,0,112,34,42,122,192,192,192,192,192,192,192,0,192, + 192,25,84,116,216,216,216,216,2,106,122,120,120,120,252,120, + 120,252,120,120,120,1,107,123,48,120,180,180,112,56,52,180, + 180,120,48,2,106,122,108,220,216,112,16,32,56,108,236,216, + 2,106,122,56,108,108,108,56,108,220,216,216,108,41,36,116, + 192,192,192,192,16,93,125,24,48,96,96,192,192,192,192,192, + 96,96,48,24,16,93,125,192,96,48,48,24,24,24,24,24, + 48,48,96,192,5,103,119,180,180,120,48,120,180,180,3,103, + 119,48,48,48,252,48,48,48,32,52,116,224,96,96,192,6, + 97,113,252,34,34,114,192,192,0,109,125,12,12,12,24,24, + 48,48,48,96,96,192,192,192,2,106,122,120,204,204,204,204, + 204,204,204,204,120,2,106,122,48,112,240,48,48,48,48,48, + 48,252,2,106,122,120,204,204,12,24,24,48,96,192,252,2, + 106,122,120,204,204,12,56,12,12,204,204,120,2,106,122,8, + 24,24,56,120,216,216,252,24,24,2,106,122,252,192,192,248, + 204,12,12,204,204,120,2,106,122,56,108,204,192,248,204,204, + 204,204,120,2,106,122,252,204,216,24,48,48,48,48,48,48, + 2,106,122,120,204,204,204,120,120,204,204,204,120,2,106,122, + 120,204,204,204,204,124,12,204,216,112,35,39,119,192,192,0, + 0,0,192,192,33,57,121,96,96,0,0,0,224,96,96,192, + 2,105,121,12,24,48,96,192,96,48,24,12,4,100,116,252, + 0,0,252,2,105,121,192,96,48,24,12,24,48,96,192,2, + 106,122,120,204,204,24,48,48,48,0,48,48,2,106,122,56, + 108,220,244,244,244,244,220,96,60,2,106,122,120,252,204,204, + 204,204,252,204,204,204,2,106,122,248,204,204,200,248,204,204, + 204,204,248,2,106,122,120,204,204,192,192,192,192,204,204,120, + 2,106,122,240,216,204,204,204,204,204,204,216,240,2,106,122, + 252,192,192,192,248,192,192,192,192,252,2,106,122,252,192,192, + 192,248,192,192,192,192,192,2,106,122,120,204,204,192,192,220, + 204,204,204,120,2,106,122,204,204,204,204,252,204,204,204,204, + 204,2,106,122,252,48,48,48,48,48,48,48,48,252,2,106, + 122,12,12,12,12,12,12,12,204,216,112,2,106,122,204,216, + 240,224,224,240,240,216,204,204,2,106,122,192,192,192,192,192, + 192,192,192,192,252,2,106,122,132,204,204,252,252,204,204,204, + 204,204,2,106,122,204,204,236,236,236,220,220,220,204,204,2, + 106,122,120,204,204,204,204,204,204,204,204,120,2,106,122,248, + 204,204,204,204,248,192,192,192,192,0,108,124,120,204,204,204, + 204,204,236,220,204,120,12,4,2,106,122,248,204,204,204,248, + 216,204,204,204,204,2,106,122,120,204,204,96,48,48,24,204, + 204,120,2,106,122,252,48,48,48,48,48,48,48,48,48,2, + 106,122,204,204,204,204,204,204,204,204,204,120,2,106,122,204, + 204,204,204,204,204,204,120,120,48,2,106,122,204,204,204,204, + 204,252,252,252,252,72,2,106,122,204,204,120,120,48,48,120, + 120,204,204,2,106,122,204,204,204,120,120,48,48,48,48,48, + 2,106,122,252,12,24,24,48,48,96,96,192,252,16,93,125, + 248,192,192,192,192,192,192,192,192,192,192,192,248,0,109,125, + 192,192,192,96,96,48,48,48,24,24,12,12,12,16,93,125, + 248,24,24,24,24,24,24,24,24,24,24,24,248,11,99,115, + 48,120,204,0,98,114,252,252,26,67,115,192,96,48,2,103, + 119,120,204,28,108,204,204,124,2,106,122,192,192,192,248,204, + 204,204,204,204,248,2,103,119,120,204,192,192,192,204,120,2, + 106,122,12,12,12,124,204,204,204,204,204,124,2,103,119,120, + 204,204,252,192,204,120,2,106,122,24,60,48,48,252,48,48, + 48,48,48,0,105,121,116,220,216,216,112,64,248,204,120,2, + 106,122,192,192,192,248,204,204,204,204,204,204,34,42,122,192, + 192,0,192,192,192,192,192,192,192,16,92,124,24,24,0,24, + 24,24,24,24,24,24,216,112,2,106,122,192,192,192,200,216, + 240,240,216,204,196,34,42,122,192,192,192,192,192,192,192,192, + 192,192,2,103,119,216,252,252,252,252,252,204,2,103,119,248, + 204,204,204,204,204,204,2,103,119,120,204,204,204,204,204,120, + 0,105,121,248,204,204,204,204,204,248,192,192,0,105,121,124, + 204,204,204,204,204,124,12,12,2,103,119,248,204,204,192,192, + 192,192,2,103,119,120,204,96,48,24,204,120,2,106,122,48, + 48,48,252,48,48,48,48,48,28,2,103,119,204,204,204,204, + 204,204,124,2,103,119,204,204,204,120,120,48,48,2,103,119, + 204,204,252,252,252,252,72,2,103,119,204,204,120,48,120,204, + 204,0,105,121,204,204,108,108,56,56,24,216,112,2,103,119, + 252,12,24,48,96,192,252,16,93,125,56,96,96,96,96,96, + 192,96,96,96,96,96,56,32,45,125,192,192,192,192,192,192, + 192,192,192,192,192,192,192,16,93,125,224,48,48,48,48,48, + 24,48,48,48,48,48,224,9,100,116,68,244,188,136,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,14, + 0,112,34,42,122,192,192,0,192,192,192,192,192,192,192,1, + 105,121,48,124,180,176,176,176,180,124,48,2,105,121,56,108, + 96,96,240,96,96,248,108,4,102,118,204,120,104,88,120,204, + 2,106,122,132,204,120,252,48,48,252,48,48,48,34,42,122, + 192,192,192,192,0,0,192,192,192,192,2,107,123,120,204,96, + 48,120,204,120,48,24,204,120,27,82,114,216,216,2,107,123, + 120,204,252,236,236,236,236,236,252,204,120,21,88,120,112,216, + 120,216,216,120,0,248,2,103,119,28,60,120,240,120,60,28, + 2,101,117,252,252,12,12,12,22,65,113,240,2,107,123,120, + 204,252,236,236,252,236,236,236,204,120,28,81,113,248,25,84, + 116,112,216,216,112,2,102,118,48,48,252,48,48,252,22,87, + 119,112,216,24,48,96,192,248,22,87,119,112,216,24,112,24, + 216,112,26,67,115,48,96,192,0,104,120,204,204,204,204,220, + 252,192,192,0,108,124,124,236,236,236,236,108,44,44,44,44, + 44,60,39,34,114,192,192,32,51,115,96,96,192,22,54,118, + 96,224,96,96,96,96,22,86,118,112,216,216,112,0,248,2, + 103,119,224,112,56,28,56,112,224,2,106,122,100,236,104,120, + 120,52,108,92,220,140,2,106,122,100,236,104,120,120,56,116, + 76,216,156,2,106,122,196,108,232,120,240,60,108,220,156,12, + 0,107,123,96,96,0,96,96,96,96,96,204,204,120,2,108, + 124,96,48,0,120,252,204,204,204,252,204,204,204,2,108,124, + 24,48,0,120,252,204,204,204,252,204,204,204,2,108,124,48, + 120,0,120,252,204,204,204,252,204,204,204,2,108,124,104,176, + 0,120,252,204,204,204,252,204,204,204,2,108,124,204,204,0, + 120,252,204,204,204,252,204,204,204,2,108,124,48,72,48,0, + 120,252,204,204,252,204,204,204,2,122,122,126,216,216,216,220, + 248,216,216,216,222,0,108,124,120,204,204,192,192,192,192,204, + 204,120,48,96,2,108,124,96,48,0,252,192,192,192,248,192, + 192,192,252,2,108,124,24,48,0,252,192,192,192,248,192,192, + 192,252,2,108,124,48,120,0,252,192,192,192,248,192,192,192, + 252,2,108,124,204,204,0,252,192,192,192,248,192,192,192,252, + 2,108,124,96,48,0,252,48,48,48,48,48,48,48,252,2, + 108,124,24,48,0,252,48,48,48,48,48,48,48,252,2,108, + 124,48,120,0,252,48,48,48,48,48,48,48,252,2,108,124, + 204,204,0,252,48,48,48,48,48,48,48,252,2,122,122,120, + 108,102,102,254,102,102,102,108,120,2,108,124,104,176,0,204, + 236,236,236,220,220,220,204,204,2,108,124,96,48,0,120,204, + 204,204,204,204,204,204,120,2,108,124,24,48,0,120,204,204, + 204,204,204,204,204,120,2,108,124,48,120,0,120,204,204,204, + 204,204,204,204,120,2,108,124,104,176,0,120,204,204,204,204, + 204,204,204,120,2,108,124,204,204,0,120,204,204,204,204,204, + 204,204,120,2,119,119,198,108,56,56,108,198,130,0,110,126, + 4,4,120,220,220,220,220,236,236,236,236,120,128,128,2,108, + 124,96,48,0,204,204,204,204,204,204,204,204,120,2,108,124, + 24,48,0,204,204,204,204,204,204,204,204,120,2,108,124,48, + 120,0,204,204,204,204,204,204,204,204,120,2,108,124,204,204, + 0,204,204,204,204,204,204,204,204,120,2,108,124,24,48,0, + 204,204,204,120,120,120,48,48,48,2,106,122,192,192,248,204, + 204,204,204,248,192,192,2,106,122,56,108,108,108,120,108,108, + 108,108,248,2,106,122,96,48,0,120,204,60,108,204,204,124, + 2,106,122,24,48,0,120,204,60,108,204,204,124,2,106,122, + 48,120,0,120,204,60,108,204,204,124,2,106,122,104,176,0, + 120,204,60,108,204,204,124,2,106,122,204,204,0,120,204,60, + 108,204,204,124,2,107,123,48,72,48,0,120,204,60,108,204, + 204,124,2,119,119,124,218,58,94,216,222,124,0,105,121,120, + 204,192,192,192,204,120,48,96,2,106,122,96,48,0,120,204, + 204,252,192,204,120,2,106,122,24,48,0,120,204,204,252,192, + 204,120,2,106,122,48,120,0,120,204,204,252,192,204,120,2, + 106,122,204,204,0,120,204,204,252,192,204,120,34,58,122,192, + 96,0,96,96,96,96,96,96,96,34,58,122,96,192,0,192, + 192,192,192,192,192,192,18,74,122,96,240,0,96,96,96,96, + 96,96,96,2,106,122,204,204,0,48,48,48,48,48,48,48, + 2,107,123,216,112,240,152,12,124,204,204,204,204,120,2,106, + 122,104,176,0,248,204,204,204,204,204,204,2,106,122,96,48, + 0,120,204,204,204,204,204,120,2,106,122,24,48,0,120,204, + 204,204,204,204,120,2,106,122,48,120,0,120,204,204,204,204, + 204,120,2,106,122,104,176,0,120,204,204,204,204,204,120,2, + 106,122,204,204,0,120,204,204,204,204,204,120,2,104,120,48, + 48,0,252,252,0,48,48,0,107,123,4,8,120,220,220,236, + 236,204,120,128,128,2,106,122,96,48,0,204,204,204,204,204, + 204,124,2,106,122,24,48,0,204,204,204,204,204,204,124,2, + 106,122,48,120,0,204,204,204,204,204,204,124,2,106,122,204, + 204,0,204,204,204,204,204,204,124,0,108,124,24,48,0,204, + 204,204,120,56,56,48,240,96,0,108,124,192,192,192,248,204, + 204,204,204,204,248,192,192,0,108,124,204,204,0,204,204,204, + 120,56,56,48,240,96}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--14-130-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 6 h=13 x= 2 y=12 dx= 7 dy= 0 ascent=12 len=13 + Font Bounding box w= 7 h=14 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =11 descent=-2 + Max Font ascent =12 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x14Br[1151] U8G_SECTION(".progmem.u8g_font_7x14Br") = { + 1,7,14,0,254,10,1,137,3,30,32,127,254,12,254,11, + 254,14,0,112,34,42,122,192,192,192,192,192,192,192,0,192, + 192,25,84,116,216,216,216,216,2,106,122,120,120,120,252,120, + 120,252,120,120,120,1,107,123,48,120,180,180,112,56,52,180, + 180,120,48,2,106,122,108,220,216,112,16,32,56,108,236,216, + 2,106,122,56,108,108,108,56,108,220,216,216,108,41,36,116, + 192,192,192,192,16,93,125,24,48,96,96,192,192,192,192,192, + 96,96,48,24,16,93,125,192,96,48,48,24,24,24,24,24, + 48,48,96,192,5,103,119,180,180,120,48,120,180,180,3,103, + 119,48,48,48,252,48,48,48,32,52,116,224,96,96,192,6, + 97,113,252,34,34,114,192,192,0,109,125,12,12,12,24,24, + 48,48,48,96,96,192,192,192,2,106,122,120,204,204,204,204, + 204,204,204,204,120,2,106,122,48,112,240,48,48,48,48,48, + 48,252,2,106,122,120,204,204,12,24,24,48,96,192,252,2, + 106,122,120,204,204,12,56,12,12,204,204,120,2,106,122,8, + 24,24,56,120,216,216,252,24,24,2,106,122,252,192,192,248, + 204,12,12,204,204,120,2,106,122,56,108,204,192,248,204,204, + 204,204,120,2,106,122,252,204,216,24,48,48,48,48,48,48, + 2,106,122,120,204,204,204,120,120,204,204,204,120,2,106,122, + 120,204,204,204,204,124,12,204,216,112,35,39,119,192,192,0, + 0,0,192,192,33,57,121,96,96,0,0,0,224,96,96,192, + 2,105,121,12,24,48,96,192,96,48,24,12,4,100,116,252, + 0,0,252,2,105,121,192,96,48,24,12,24,48,96,192,2, + 106,122,120,204,204,24,48,48,48,0,48,48,2,106,122,56, + 108,220,244,244,244,244,220,96,60,2,106,122,120,252,204,204, + 204,204,252,204,204,204,2,106,122,248,204,204,200,248,204,204, + 204,204,248,2,106,122,120,204,204,192,192,192,192,204,204,120, + 2,106,122,240,216,204,204,204,204,204,204,216,240,2,106,122, + 252,192,192,192,248,192,192,192,192,252,2,106,122,252,192,192, + 192,248,192,192,192,192,192,2,106,122,120,204,204,192,192,220, + 204,204,204,120,2,106,122,204,204,204,204,252,204,204,204,204, + 204,2,106,122,252,48,48,48,48,48,48,48,48,252,2,106, + 122,12,12,12,12,12,12,12,204,216,112,2,106,122,204,216, + 240,224,224,240,240,216,204,204,2,106,122,192,192,192,192,192, + 192,192,192,192,252,2,106,122,132,204,204,252,252,204,204,204, + 204,204,2,106,122,204,204,236,236,236,220,220,220,204,204,2, + 106,122,120,204,204,204,204,204,204,204,204,120,2,106,122,248, + 204,204,204,204,248,192,192,192,192,0,108,124,120,204,204,204, + 204,204,236,220,204,120,12,4,2,106,122,248,204,204,204,248, + 216,204,204,204,204,2,106,122,120,204,204,96,48,48,24,204, + 204,120,2,106,122,252,48,48,48,48,48,48,48,48,48,2, + 106,122,204,204,204,204,204,204,204,204,204,120,2,106,122,204, + 204,204,204,204,204,204,120,120,48,2,106,122,204,204,204,204, + 204,252,252,252,252,72,2,106,122,204,204,120,120,48,48,120, + 120,204,204,2,106,122,204,204,204,120,120,48,48,48,48,48, + 2,106,122,252,12,24,24,48,48,96,96,192,252,16,93,125, + 248,192,192,192,192,192,192,192,192,192,192,192,248,0,109,125, + 192,192,192,96,96,48,48,48,24,24,12,12,12,16,93,125, + 248,24,24,24,24,24,24,24,24,24,24,24,248,11,99,115, + 48,120,204,0,98,114,252,252,26,67,115,192,96,48,2,103, + 119,120,204,28,108,204,204,124,2,106,122,192,192,192,248,204, + 204,204,204,204,248,2,103,119,120,204,192,192,192,204,120,2, + 106,122,12,12,12,124,204,204,204,204,204,124,2,103,119,120, + 204,204,252,192,204,120,2,106,122,24,60,48,48,252,48,48, + 48,48,48,0,105,121,116,220,216,216,112,64,248,204,120,2, + 106,122,192,192,192,248,204,204,204,204,204,204,34,42,122,192, + 192,0,192,192,192,192,192,192,192,16,92,124,24,24,0,24, + 24,24,24,24,24,24,216,112,2,106,122,192,192,192,200,216, + 240,240,216,204,196,34,42,122,192,192,192,192,192,192,192,192, + 192,192,2,103,119,216,252,252,252,252,252,204,2,103,119,248, + 204,204,204,204,204,204,2,103,119,120,204,204,204,204,204,120, + 0,105,121,248,204,204,204,204,204,248,192,192,0,105,121,124, + 204,204,204,204,204,124,12,12,2,103,119,248,204,204,192,192, + 192,192,2,103,119,120,204,96,48,24,204,120,2,106,122,48, + 48,48,252,48,48,48,48,48,28,2,103,119,204,204,204,204, + 204,204,124,2,103,119,204,204,204,120,120,48,48,2,103,119, + 204,204,252,252,252,252,72,2,103,119,204,204,120,48,120,204, + 204,0,105,121,204,204,108,108,56,56,24,216,112,2,103,119, + 252,12,24,48,96,192,252,16,93,125,56,96,96,96,96,96, + 192,96,96,96,96,96,56,32,45,125,192,192,192,192,192,192, + 192,192,192,192,192,192,192,16,93,125,224,48,48,48,48,48, + 24,48,48,48,48,48,224,9,100,116,68,244,188,136,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--14-130-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 7 h=14 x= 3 y=12 dx= 7 dy= 0 ascent=12 len=14 + Font Bounding box w= 7 h=14 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =11 descent=-2 + Max Font ascent =12 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x14[2374] U8G_SECTION(".progmem.u8g_font_7x14") = { + 1,7,14,0,254,10,1,138,3,30,32,255,254,12,254,11, + 254,14,0,112,50,26,122,128,128,128,128,128,128,128,0,128, + 128,41,52,116,160,160,160,160,18,90,122,80,80,80,248,80, + 80,248,80,80,80,1,107,123,16,120,148,148,80,56,20,148, + 148,120,16,2,106,122,100,148,152,112,16,32,56,100,164,152, + 2,106,122,48,72,72,72,48,100,148,136,152,100,57,20,116, + 128,128,128,128,32,77,125,16,32,64,64,128,128,128,128,128, + 64,64,32,16,16,77,125,128,64,32,32,16,16,16,16,16, + 32,32,64,128,19,87,119,32,168,112,32,112,168,32,19,87, + 119,32,32,32,248,32,32,32,32,36,116,192,64,64,128,22, + 81,113,248,33,51,115,64,224,64,0,109,125,4,4,8,8, + 16,16,16,32,32,64,64,128,128,2,106,122,48,72,132,132, + 132,132,132,132,72,48,18,90,122,32,96,160,32,32,32,32, + 32,32,248,2,106,122,120,132,132,4,8,8,16,32,64,252, + 2,106,122,252,4,8,16,56,4,4,132,132,120,2,106,122, + 8,24,40,40,72,72,136,252,8,8,2,106,122,252,128,128, + 248,132,4,4,132,132,120,2,106,122,56,64,128,128,184,196, + 132,132,132,120,2,106,122,252,4,8,8,16,16,32,32,64, + 64,2,106,122,120,132,132,72,48,72,132,132,132,120,2,106, + 122,120,132,132,132,140,116,4,132,136,112,34,56,120,64,224, + 64,0,0,64,224,64,33,40,120,192,192,0,0,192,64,64, + 128,18,89,121,8,16,32,64,128,64,32,16,8,5,100,116, + 252,0,0,252,18,89,121,128,64,32,16,8,16,32,64,128, + 2,106,122,120,132,132,8,16,16,16,0,16,16,2,106,122, + 56,68,156,164,164,164,164,156,64,60,2,106,122,48,72,132, + 132,132,252,132,132,132,132,2,106,122,240,136,132,136,240,136, + 132,132,136,240,2,106,122,120,132,132,128,128,128,128,132,132, + 120,2,106,122,240,136,132,132,132,132,132,132,136,240,2,106, + 122,252,128,128,128,240,128,128,128,128,252,2,106,122,252,128, + 128,128,240,128,128,128,128,128,2,106,122,120,132,132,128,128, + 156,132,132,140,116,2,106,122,132,132,132,132,252,132,132,132, + 132,132,18,90,122,248,32,32,32,32,32,32,32,32,248,2, + 106,122,28,8,8,8,8,8,8,136,136,112,2,106,122,132, + 136,144,160,192,160,144,136,132,132,2,106,122,128,128,128,128, + 128,128,128,128,128,252,2,106,122,132,204,204,180,180,132,132, + 132,132,132,2,106,122,132,132,196,196,164,148,140,140,132,132, + 2,106,122,120,132,132,132,132,132,132,132,132,120,2,106,122, + 248,132,132,132,132,248,128,128,128,128,0,108,124,120,132,132, + 132,132,132,228,148,140,120,8,4,2,106,122,248,132,132,132, + 132,248,144,136,132,132,2,106,122,120,132,132,128,96,24,4, + 132,132,120,2,122,122,254,16,16,16,16,16,16,16,16,16, + 2,106,122,132,132,132,132,132,132,132,132,132,120,2,106,122, + 132,132,132,132,72,72,72,48,48,48,18,90,122,136,136,136, + 136,136,136,168,168,168,80,2,106,122,132,132,72,72,48,48, + 72,72,132,132,18,90,122,136,136,136,80,80,32,32,32,32, + 32,2,106,122,252,4,8,16,16,32,64,64,128,252,32,77, + 125,240,128,128,128,128,128,128,128,128,128,128,128,240,0,109, + 125,128,128,64,64,32,32,32,16,16,8,8,4,4,16,77, + 125,240,16,16,16,16,16,16,16,16,16,16,16,240,10,99, + 115,48,72,132,0,97,113,252,42,51,115,128,64,32,2,103, + 119,120,132,4,124,132,132,124,2,106,122,128,128,128,184,196, + 132,132,132,196,184,2,103,119,120,132,128,128,128,132,120,2, + 106,122,4,4,4,116,140,132,132,132,140,116,2,103,119,120, + 132,132,252,128,132,120,2,106,122,24,36,32,32,248,32,32, + 32,32,32,0,105,121,116,136,136,136,112,64,184,132,120,2, + 106,122,128,128,128,184,196,132,132,132,132,132,18,90,122,32, + 32,0,96,32,32,32,32,32,248,16,92,124,8,8,0,24, + 8,8,8,8,8,136,136,112,2,106,122,128,128,128,136,144, + 160,224,144,136,132,18,90,122,96,32,32,32,32,32,32,32, + 32,248,18,87,119,208,168,168,168,168,168,136,2,103,119,184, + 196,132,132,132,132,132,2,103,119,120,132,132,132,132,132,120, + 0,105,121,184,196,132,132,132,196,184,128,128,0,105,121,116, + 140,132,132,132,140,116,4,4,2,103,119,184,196,132,128,128, + 128,128,2,103,119,120,132,64,48,8,132,120,2,106,122,32, + 32,32,248,32,32,32,32,36,24,2,103,119,132,132,132,132, + 132,140,116,18,87,119,136,136,136,80,80,32,32,18,87,119, + 136,136,168,168,168,168,80,2,103,119,132,132,72,48,72,132, + 132,0,105,121,132,132,132,132,140,116,4,132,120,2,103,119, + 252,8,16,32,32,64,252,32,77,125,48,64,64,64,64,64, + 128,64,64,64,64,64,48,48,29,125,128,128,128,128,128,128, + 128,128,128,128,128,128,128,16,77,125,192,32,32,32,32,32, + 16,32,32,32,32,32,192,9,100,116,64,164,148,8,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,14, + 0,112,50,26,122,128,128,0,128,128,128,128,128,128,128,1, + 105,121,32,120,164,160,160,160,164,120,32,18,89,121,48,72, + 64,64,240,64,64,240,72,4,102,118,132,120,72,72,120,132, + 18,90,122,136,80,80,32,248,32,248,32,32,32,50,26,122, + 128,128,128,128,0,0,128,128,128,128,2,107,123,120,132,64, + 48,72,132,72,48,8,132,120,27,66,114,144,144,2,107,123, + 120,132,180,204,196,196,196,204,180,132,120,21,88,120,112,136, + 120,136,152,104,0,248,2,103,119,20,40,80,160,80,40,20, + 18,84,116,248,8,8,8,22,65,113,240,2,107,123,120,132, + 244,204,204,244,204,204,204,132,120,27,81,113,248,25,68,116, + 96,144,144,96,18,86,118,32,32,248,32,32,248,22,71,119, + 96,144,16,32,64,128,240,22,71,119,96,144,16,96,16,144, + 96,42,51,115,32,64,128,16,88,120,136,136,136,136,216,168, + 128,128,16,92,124,120,168,168,168,168,104,40,40,40,40,40, + 56,55,17,113,128,32,35,115,64,64,128,38,55,119,64,192, + 64,64,64,64,224,22,70,118,96,144,144,96,0,240,2,103, + 119,160,80,40,20,40,80,160,2,106,122,64,196,72,72,80, + 36,44,84,156,132,2,106,122,64,196,72,72,80,40,52,68, + 136,156,2,106,122,196,36,72,48,208,36,76,84,156,4,0, + 107,123,32,32,0,32,32,32,32,64,132,132,120,2,108,124, + 32,16,0,48,72,132,132,252,132,132,132,132,2,108,124,16, + 32,0,48,72,132,132,252,132,132,132,132,2,108,124,48,72, + 0,48,72,132,132,252,132,132,132,132,2,108,124,100,152,0, + 48,72,132,132,252,132,132,132,132,2,107,123,72,0,48,72, + 132,132,252,132,132,132,132,2,107,123,48,72,48,72,132,132, + 252,132,132,132,132,2,106,122,60,80,144,144,252,144,144,144, + 144,156,0,108,124,120,132,132,128,128,128,128,132,132,120,16, + 32,2,108,124,32,16,0,252,128,128,128,248,128,128,128,252, + 2,108,124,16,32,0,252,128,128,128,248,128,128,128,252,2, + 108,124,48,72,0,252,128,128,128,248,128,128,128,252,2,107, + 123,72,0,252,128,128,128,248,128,128,128,252,18,92,124,64, + 32,0,248,32,32,32,32,32,32,32,248,18,92,124,16,32, + 0,248,32,32,32,32,32,32,32,248,18,92,124,32,80,0, + 248,32,32,32,32,32,32,32,248,18,91,123,80,0,248,32, + 32,32,32,32,32,32,248,2,122,122,120,68,66,66,242,66, + 66,66,68,120,2,108,124,100,152,0,196,196,164,164,148,148, + 148,140,140,2,108,124,32,16,0,120,132,132,132,132,132,132, + 132,120,2,108,124,16,32,0,120,132,132,132,132,132,132,132, + 120,2,108,124,48,72,0,120,132,132,132,132,132,132,132,120, + 2,108,124,100,152,0,120,132,132,132,132,132,132,132,120,2, + 107,123,72,0,120,132,132,132,132,132,132,132,120,2,119,119, + 130,68,40,16,40,68,130,0,110,126,4,4,120,140,148,148, + 148,164,164,164,196,120,128,128,2,108,124,32,16,0,132,132, + 132,132,132,132,132,132,120,2,108,124,16,32,0,132,132,132, + 132,132,132,132,132,120,2,108,124,48,72,0,132,132,132,132, + 132,132,132,132,120,2,107,123,72,0,132,132,132,132,132,132, + 132,132,120,18,92,124,16,32,0,136,136,80,80,32,32,32, + 32,32,2,106,122,128,128,248,132,132,132,132,248,128,128,2, + 106,122,48,72,72,72,112,72,68,68,68,248,2,106,122,32, + 16,0,120,132,4,124,132,132,124,2,106,122,8,16,0,120, + 132,4,124,132,132,124,2,106,122,48,72,0,120,132,4,124, + 132,132,124,2,106,122,100,152,0,120,132,4,124,132,132,124, + 2,105,121,72,0,120,132,4,124,132,132,124,2,107,123,48, + 72,48,0,120,132,4,124,132,132,124,2,119,119,124,146,50, + 94,144,146,124,0,105,121,120,132,128,128,128,132,120,16,32, + 2,106,122,32,16,0,120,132,132,252,128,132,120,2,106,122, + 16,32,0,120,132,132,252,128,132,120,2,106,122,48,72,0, + 120,132,132,252,128,132,120,2,105,121,72,0,120,132,132,252, + 128,132,120,18,90,122,64,32,0,96,32,32,32,32,32,248, + 18,90,122,16,32,0,96,32,32,32,32,32,248,18,90,122, + 96,144,0,96,32,32,32,32,32,248,18,89,121,80,0,96, + 32,32,32,32,32,248,18,91,123,80,32,80,8,120,136,136, + 136,136,136,112,2,106,122,100,152,0,184,196,132,132,132,132, + 132,2,106,122,32,16,0,120,132,132,132,132,132,120,2,106, + 122,16,32,0,120,132,132,132,132,132,120,2,106,122,48,72, + 0,120,132,132,132,132,132,120,2,106,122,100,152,0,120,132, + 132,132,132,132,120,2,105,121,72,0,120,132,132,132,132,132, + 120,2,101,117,48,0,252,0,48,0,107,123,4,8,120,148, + 148,164,164,196,120,128,128,2,106,122,32,16,0,132,132,132, + 132,132,140,116,2,106,122,16,32,0,132,132,132,132,132,140, + 116,2,106,122,48,72,0,132,132,132,132,132,140,116,2,105, + 121,72,0,132,132,132,132,132,140,116,0,108,124,16,32,0, + 132,132,68,72,40,56,16,144,96,0,108,124,128,128,128,184, + 196,132,132,132,196,184,128,128,0,107,123,72,0,132,132,68, + 72,40,56,16,144,96}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--14-130-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 7 h=13 x= 3 y=12 dx= 7 dy= 0 ascent=12 len=13 + Font Bounding box w= 7 h=14 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =11 descent=-2 + Max Font ascent =12 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x14r[1151] U8G_SECTION(".progmem.u8g_font_7x14r") = { + 1,7,14,0,254,10,1,138,3,30,32,127,254,12,254,11, + 254,14,0,112,50,26,122,128,128,128,128,128,128,128,0,128, + 128,41,52,116,160,160,160,160,18,90,122,80,80,80,248,80, + 80,248,80,80,80,1,107,123,16,120,148,148,80,56,20,148, + 148,120,16,2,106,122,100,148,152,112,16,32,56,100,164,152, + 2,106,122,48,72,72,72,48,100,148,136,152,100,57,20,116, + 128,128,128,128,32,77,125,16,32,64,64,128,128,128,128,128, + 64,64,32,16,16,77,125,128,64,32,32,16,16,16,16,16, + 32,32,64,128,19,87,119,32,168,112,32,112,168,32,19,87, + 119,32,32,32,248,32,32,32,32,36,116,192,64,64,128,22, + 81,113,248,33,51,115,64,224,64,0,109,125,4,4,8,8, + 16,16,16,32,32,64,64,128,128,2,106,122,48,72,132,132, + 132,132,132,132,72,48,18,90,122,32,96,160,32,32,32,32, + 32,32,248,2,106,122,120,132,132,4,8,8,16,32,64,252, + 2,106,122,252,4,8,16,56,4,4,132,132,120,2,106,122, + 8,24,40,40,72,72,136,252,8,8,2,106,122,252,128,128, + 248,132,4,4,132,132,120,2,106,122,56,64,128,128,184,196, + 132,132,132,120,2,106,122,252,4,8,8,16,16,32,32,64, + 64,2,106,122,120,132,132,72,48,72,132,132,132,120,2,106, + 122,120,132,132,132,140,116,4,132,136,112,34,56,120,64,224, + 64,0,0,64,224,64,33,40,120,192,192,0,0,192,64,64, + 128,18,89,121,8,16,32,64,128,64,32,16,8,5,100,116, + 252,0,0,252,18,89,121,128,64,32,16,8,16,32,64,128, + 2,106,122,120,132,132,8,16,16,16,0,16,16,2,106,122, + 56,68,156,164,164,164,164,156,64,60,2,106,122,48,72,132, + 132,132,252,132,132,132,132,2,106,122,240,136,132,136,240,136, + 132,132,136,240,2,106,122,120,132,132,128,128,128,128,132,132, + 120,2,106,122,240,136,132,132,132,132,132,132,136,240,2,106, + 122,252,128,128,128,240,128,128,128,128,252,2,106,122,252,128, + 128,128,240,128,128,128,128,128,2,106,122,120,132,132,128,128, + 156,132,132,140,116,2,106,122,132,132,132,132,252,132,132,132, + 132,132,18,90,122,248,32,32,32,32,32,32,32,32,248,2, + 106,122,28,8,8,8,8,8,8,136,136,112,2,106,122,132, + 136,144,160,192,160,144,136,132,132,2,106,122,128,128,128,128, + 128,128,128,128,128,252,2,106,122,132,204,204,180,180,132,132, + 132,132,132,2,106,122,132,132,196,196,164,148,140,140,132,132, + 2,106,122,120,132,132,132,132,132,132,132,132,120,2,106,122, + 248,132,132,132,132,248,128,128,128,128,0,108,124,120,132,132, + 132,132,132,228,148,140,120,8,4,2,106,122,248,132,132,132, + 132,248,144,136,132,132,2,106,122,120,132,132,128,96,24,4, + 132,132,120,2,122,122,254,16,16,16,16,16,16,16,16,16, + 2,106,122,132,132,132,132,132,132,132,132,132,120,2,106,122, + 132,132,132,132,72,72,72,48,48,48,18,90,122,136,136,136, + 136,136,136,168,168,168,80,2,106,122,132,132,72,72,48,48, + 72,72,132,132,18,90,122,136,136,136,80,80,32,32,32,32, + 32,2,106,122,252,4,8,16,16,32,64,64,128,252,32,77, + 125,240,128,128,128,128,128,128,128,128,128,128,128,240,0,109, + 125,128,128,64,64,32,32,32,16,16,8,8,4,4,16,77, + 125,240,16,16,16,16,16,16,16,16,16,16,16,240,10,99, + 115,48,72,132,0,97,113,252,42,51,115,128,64,32,2,103, + 119,120,132,4,124,132,132,124,2,106,122,128,128,128,184,196, + 132,132,132,196,184,2,103,119,120,132,128,128,128,132,120,2, + 106,122,4,4,4,116,140,132,132,132,140,116,2,103,119,120, + 132,132,252,128,132,120,2,106,122,24,36,32,32,248,32,32, + 32,32,32,0,105,121,116,136,136,136,112,64,184,132,120,2, + 106,122,128,128,128,184,196,132,132,132,132,132,18,90,122,32, + 32,0,96,32,32,32,32,32,248,16,92,124,8,8,0,24, + 8,8,8,8,8,136,136,112,2,106,122,128,128,128,136,144, + 160,224,144,136,132,18,90,122,96,32,32,32,32,32,32,32, + 32,248,18,87,119,208,168,168,168,168,168,136,2,103,119,184, + 196,132,132,132,132,132,2,103,119,120,132,132,132,132,132,120, + 0,105,121,184,196,132,132,132,196,184,128,128,0,105,121,116, + 140,132,132,132,140,116,4,4,2,103,119,184,196,132,128,128, + 128,128,2,103,119,120,132,64,48,8,132,120,2,106,122,32, + 32,32,248,32,32,32,32,36,24,2,103,119,132,132,132,132, + 132,140,116,18,87,119,136,136,136,80,80,32,32,18,87,119, + 136,136,168,168,168,168,80,2,103,119,132,132,72,48,72,132, + 132,0,105,121,132,132,132,132,140,116,4,132,120,2,103,119, + 252,8,16,32,32,64,252,32,77,125,48,64,64,64,64,64, + 128,64,64,64,64,64,48,48,29,125,128,128,128,128,128,128, + 128,128,128,128,128,128,128,16,77,125,192,32,32,32,32,32, + 16,32,32,32,32,32,192,9,100,116,64,164,148,8,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 3, '1' Height: 10 + Calculated Max Values w= 8 h=13 x= 7 y= 9 dx= 8 dy= 0 ascent=11 len=13 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 3 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13_67_75[2420] U8G_SECTION(".progmem.u8g_font_8x13_67_75") = { + 1,8,13,0,254,3,1,94,2,193,32,255,0,11,254,10, + 0,3,133,133,36,18,255,18,36,18,88,136,32,32,168,112, + 32,168,112,32,2,119,135,16,34,68,248,68,34,16,18,119, + 135,16,136,68,62,68,136,16,3,133,133,32,65,255,65,32, + 18,89,137,32,112,168,32,32,32,32,32,112,3,133,133,4, + 130,255,130,4,18,89,137,112,32,32,32,32,32,168,112,32, + 2,122,138,16,56,84,16,16,16,84,56,16,254,3,133,133, + 34,65,254,64,32,3,133,133,68,130,127,2,4,3,133,133, + 34,69,254,68,36,3,133,133,68,162,127,34,36,3,133,133, + 36,90,231,66,36,3,133,133,36,82,255,82,36,18,106,138, + 64,64,128,152,104,8,16,84,56,16,18,106,138,32,64,252, + 68,36,4,4,4,4,4,18,106,138,16,8,252,136,144,128, + 128,128,128,128,18,106,138,4,4,4,4,4,36,68,252,64, + 32,18,106,138,128,128,128,128,128,144,136,252,8,16,18,104, + 136,240,16,16,16,16,84,56,16,18,90,138,8,8,8,8, + 8,40,72,248,64,32,4,135,135,12,18,33,33,169,112,32, + 4,135,135,48,72,132,132,149,14,4,2,136,136,255,0,112, + 96,80,8,4,2,2,136,136,136,144,190,144,9,125,9,17, + 4,135,135,100,142,149,132,132,72,48,4,135,135,38,113,169, + 33,33,18,12,5,131,131,32,64,255,3,131,131,255,64,32, + 50,57,137,128,192,160,128,128,128,128,128,128,34,57,137,32, + 96,160,32,32,32,32,32,32,5,131,131,4,2,255,3,131, + 131,255,2,4,50,57,137,128,128,128,128,128,128,160,192,128, + 34,57,137,32,32,32,32,32,32,160,96,32,2,121,137,8, + 4,254,4,40,64,254,64,32,2,138,138,36,116,172,36,36, + 36,36,53,46,36,2,121,137,32,64,254,64,40,4,254,4, + 8,2,139,139,32,64,255,64,32,0,32,64,255,64,32,2, + 122,138,68,238,68,68,68,68,68,68,68,68,2,139,139,4, + 2,255,2,4,0,4,2,255,2,4,2,122,138,68,68,68, + 68,68,68,68,68,238,68,2,119,135,32,64,254,0,254,4, + 8,2,119,135,8,4,254,0,254,64,32,2,135,135,16,33, + 127,130,127,36,16,3,133,133,36,126,153,126,36,2,135,135, + 8,36,254,65,254,132,8,2,135,135,16,32,127,128,127,32, + 16,18,121,137,16,40,108,170,40,40,40,40,40,2,135,135, + 8,4,254,1,254,4,8,2,121,137,40,40,40,40,40,170, + 108,40,16,3,133,133,36,126,129,126,36,2,123,139,16,40, + 108,170,40,40,40,170,108,40,16,2,119,135,252,144,136,196, + 162,144,8,18,119,135,126,18,34,70,138,18,32,18,119,135, + 32,18,138,70,34,18,126,2,119,135,8,144,162,196,136,144, + 252,2,137,137,8,16,63,64,255,64,63,16,8,2,137,137, + 16,8,252,2,255,2,252,8,16,2,135,135,16,32,72,245, + 66,32,16,2,135,135,8,4,18,175,66,4,8,2,122,138, + 16,56,84,146,16,124,16,124,16,16,2,122,138,16,16,124, + 16,124,16,146,84,56,16,2,119,135,16,32,64,182,64,32, + 16,2,122,138,16,40,84,146,0,16,16,0,16,16,18,119, + 135,16,8,4,218,4,8,16,2,122,138,16,16,0,16,16, + 0,146,84,40,16,3,117,133,144,160,254,160,144,19,117,133, + 18,10,254,10,18,2,135,135,16,48,95,129,95,48,16,2, + 121,137,16,40,68,238,40,40,40,40,56,2,135,135,8,12, + 250,129,250,12,8,2,121,137,56,40,40,40,40,238,68,40, + 16,1,123,139,16,40,68,238,40,40,56,0,56,40,56,1, + 122,138,16,40,68,238,40,40,40,108,68,124,1,122,138,16, + 40,68,254,40,40,40,108,68,124,1,122,138,16,40,68,254, + 56,56,56,124,68,124,2,121,137,16,40,68,238,68,238,40, + 40,56,1,122,138,16,40,68,238,68,238,40,108,68,124,2, + 135,135,136,140,250,129,250,140,136,2,119,135,254,128,188,176, + 168,164,130,2,119,135,130,74,42,26,122,2,254,2,121,137, + 16,40,68,238,40,238,68,40,16,4,133,133,36,82,255,82, + 36,2,138,138,36,46,53,36,36,36,36,172,116,36,0,141, + 141,4,2,255,2,4,2,255,2,4,2,255,2,4,4,117, + 133,40,72,254,72,40,20,117,133,40,36,254,36,40,4,117, + 133,16,84,254,84,16,4,133,133,42,74,255,74,42,4,133, + 133,84,82,255,82,84,4,133,133,24,90,255,90,24,3,135, + 135,16,48,80,159,80,48,16,3,135,135,8,12,10,249,10, + 12,8,4,133,133,36,102,189,102,36,7,134,134,255,255,255, + 255,255,255,0,130,130,255,255,0,131,131,255,255,255,0,133, + 133,255,255,255,255,255,0,135,135,255,255,255,255,255,255,255, + 0,136,136,255,255,255,255,255,255,255,255,0,138,138,255,255, + 255,255,255,255,255,255,255,255,0,139,139,255,255,255,255,255, + 255,255,255,255,255,255,0,141,141,255,255,255,255,255,255,255, + 255,255,255,255,255,255,0,125,141,254,254,254,254,254,254,254, + 254,254,254,254,254,254,0,109,141,252,252,252,252,252,252,252, + 252,252,252,252,252,252,0,93,141,248,248,248,248,248,248,248, + 248,248,248,248,248,248,0,77,141,240,240,240,240,240,240,240, + 240,240,240,240,240,240,0,61,141,224,224,224,224,224,224,224, + 224,224,224,224,224,224,0,45,141,192,192,192,192,192,192,192, + 192,192,192,192,192,192,0,29,141,128,128,128,128,128,128,128, + 128,128,128,128,128,128,64,77,141,240,240,240,240,240,240,240, + 240,240,240,240,240,240,1,139,139,85,0,170,0,85,0,170, + 0,85,0,170,0,141,141,170,85,170,85,170,85,170,85,170, + 85,170,85,170,0,141,141,255,85,255,170,255,85,255,170,255, + 85,255,170,255,11,130,130,255,255,112,29,141,128,128,128,128, + 128,128,128,128,128,128,128,128,128,0,71,135,240,240,240,240, + 240,240,240,64,71,135,240,240,240,240,240,240,240,7,70,134, + 240,240,240,240,240,240,0,141,141,240,240,240,240,240,240,255, + 255,255,255,255,255,255,0,141,141,240,240,240,240,240,240,15, + 15,15,15,15,15,15,0,141,141,255,255,255,255,255,255,240, + 240,240,240,240,240,240,0,141,141,255,255,255,255,255,255,15, + 15,15,15,15,15,15,71,70,134,240,240,240,240,240,240,0, + 141,141,15,15,15,15,15,15,240,240,240,240,240,240,240,0, + 141,141,15,15,15,15,15,15,255,255,255,255,255,255,255,2, + 119,135,254,254,254,254,254,254,254,2,119,135,254,130,130,130, + 130,130,254,2,119,135,124,130,130,130,130,130,124,2,119,135, + 254,130,186,186,186,130,254,2,119,135,254,130,254,130,254,130, + 254,2,119,135,254,170,170,170,170,170,254,2,119,135,254,170, + 254,170,254,170,254,2,119,135,254,146,138,198,162,146,254,2, + 119,135,254,146,162,198,138,146,254,2,119,135,254,214,170,214, + 170,214,254,37,51,131,224,224,224,37,51,131,224,160,224,21, + 100,132,252,252,252,252,21,100,132,252,132,132,252,18,89,137, + 248,248,248,248,248,248,248,248,248,18,89,137,248,136,136,136, + 136,136,136,136,248,5,132,132,31,62,124,248,5,132,132,31, + 34,68,248,2,136,136,24,24,60,60,126,126,255,255,2,136, + 136,24,24,36,36,66,66,129,255,18,102,134,48,48,120,120, + 252,252,18,102,134,48,48,72,72,132,252,18,107,139,128,192, + 224,240,248,252,248,240,224,192,128,18,107,139,128,192,160,144, + 136,132,136,144,160,192,128,20,101,133,192,240,252,240,192,20, + 101,133,192,176,140,176,192,3,119,135,128,224,248,254,248,224, + 128,3,119,135,128,224,152,134,152,224,128,2,136,136,255,255, + 126,126,60,60,24,24,2,136,136,255,129,66,66,36,36,24, + 24,18,102,134,252,252,120,120,48,48,18,102,134,252,132,72, + 72,48,48,18,107,139,4,12,28,60,124,252,124,60,28,12, + 4,18,107,139,4,12,20,36,68,132,68,36,20,12,4,20, + 101,133,12,60,252,60,12,20,101,133,12,52,196,52,12,3, + 119,135,2,14,62,254,62,14,2,3,119,135,2,14,50,194, + 50,14,2,3,119,135,16,56,124,254,124,56,16,3,119,135, + 16,40,68,130,68,40,16,3,119,135,16,40,84,186,84,40, + 16,3,119,135,56,68,146,186,146,68,56,18,105,137,48,48, + 72,72,132,72,72,48,48,2,136,136,60,66,129,129,129,129, + 66,60,2,136,136,24,66,0,129,129,0,66,24,2,136,136, + 60,106,171,171,171,171,106,60,2,136,136,60,66,153,165,165, + 153,66,60,2,136,136,60,126,255,255,255,255,126,60,2,136, + 136,60,114,241,241,241,241,114,60,2,136,136,60,78,143,143, + 143,143,78,60,2,136,136,60,66,129,129,255,255,126,60,2, + 136,136,60,126,255,255,129,129,66,60,2,136,136,60,78,143, + 143,129,129,66,60,2,136,136,60,78,143,143,255,255,126,60, + 2,72,136,48,112,240,240,240,240,112,48,66,72,136,192,224, + 240,240,240,240,224,192,0,141,141,255,255,255,255,195,129,129, + 129,129,195,255,255,255,0,141,141,255,255,255,255,195,153,189, + 189,153,195,255,255,255,6,135,135,255,255,255,255,195,153,189, + 0,134,134,189,153,195,255,255,255,6,68,132,48,64,128,128, + 70,68,132,192,32,16,16,66,68,132,16,16,32,192,2,68, + 132,128,128,64,48,6,132,132,60,66,129,129,2,132,132,129, + 129,66,60,2,136,136,1,3,7,15,31,63,127,255,2,136, + 136,128,192,224,240,248,252,254,255,2,136,136,255,254,252,248, + 240,224,192,128,2,136,136,255,127,63,31,15,7,3,1,20, + 85,133,112,136,136,136,112,2,120,136,254,226,226,226,226,226, + 226,254,2,120,136,254,142,142,142,142,142,142,254,2,120,136, + 254,254,250,242,226,194,130,254,2,120,136,254,130,134,142,158, + 190,254,254,2,120,136,254,146,146,146,146,146,146,254,2,122, + 138,16,16,40,40,68,84,124,146,130,254,2,122,138,16,16, + 56,56,116,116,116,242,242,254,2,122,138,16,16,56,56,92, + 92,92,158,158,254,2,136,136,60,66,129,129,129,129,66,60, + 2,119,135,254,146,146,242,130,130,254,2,119,135,254,130,130, + 242,146,146,254,2,119,135,254,130,130,158,146,146,254,2,119, + 135,254,146,146,158,130,130,254,2,119,135,124,146,146,242,130, + 130,124,2,119,135,124,130,130,242,146,146,124,2,119,135,124, + 130,130,158,146,146,124,2,119,135,124,146,146,158,130,130,124, + 19,102,134,252,136,144,160,192,128,19,102,134,252,68,36,20, + 12,4,19,102,134,128,192,160,144,136,252,19,102,134,252,132, + 132,132,132,252,19,102,134,252,252,252,252,252,252,37,68,132, + 240,144,144,240,37,68,132,240,240,240,240,19,102,134,4,12, + 20,36,68,252}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 11, '1' Height: 4 + Calculated Max Values w= 8 h=11 x= 2 y= 3 dx= 8 dy= 0 ascent=11 len=11 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent =11 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =11 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13_75r[496] U8G_SECTION(".progmem.u8g_font_8x13_75r") = { + 1,8,13,0,254,11,1,83,0,0,32,79,0,11,0,11, + 0,2,119,135,254,254,254,254,254,254,254,2,119,135,254,130, + 130,130,130,130,254,2,119,135,124,130,130,130,130,130,124,2, + 119,135,254,130,186,186,186,130,254,2,119,135,254,130,254,130, + 254,130,254,2,119,135,254,170,170,170,170,170,254,2,119,135, + 254,170,254,170,254,170,254,2,119,135,254,146,138,198,162,146, + 254,2,119,135,254,146,162,198,138,146,254,2,119,135,254,214, + 170,214,170,214,254,37,51,131,224,224,224,37,51,131,224,160, + 224,21,100,132,252,252,252,252,21,100,132,252,132,132,252,18, + 89,137,248,248,248,248,248,248,248,248,248,18,89,137,248,136, + 136,136,136,136,136,136,248,5,132,132,31,62,124,248,5,132, + 132,31,34,68,248,2,136,136,24,24,60,60,126,126,255,255, + 2,136,136,24,24,36,36,66,66,129,255,18,102,134,48,48, + 120,120,252,252,18,102,134,48,48,72,72,132,252,18,107,139, + 128,192,224,240,248,252,248,240,224,192,128,18,107,139,128,192, + 160,144,136,132,136,144,160,192,128,20,101,133,192,240,252,240, + 192,20,101,133,192,176,140,176,192,3,119,135,128,224,248,254, + 248,224,128,3,119,135,128,224,152,134,152,224,128,2,136,136, + 255,255,126,126,60,60,24,24,2,136,136,255,129,66,66,36, + 36,24,24,18,102,134,252,252,120,120,48,48,18,102,134,252, + 132,72,72,48,48,18,107,139,4,12,28,60,124,252,124,60, + 28,12,4,18,107,139,4,12,20,36,68,132,68,36,20,12, + 4,20,101,133,12,60,252,60,12,20,101,133,12,52,196,52, + 12,3,119,135,2,14,62,254,62,14,2,3,119,135,2,14, + 50,194,50,14,2,3,119,135,16,56,124,254,124,56,16,3, + 119,135,16,40,68,130,68,40,16,3,119,135,16,40,84,186, + 84,40,16,3,119,135,56,68,146,186,146,68,56,18,105,137, + 48,48,72,72,132,72,72,48,48,2,136,136,60,66,129,129, + 129,129,66,60,2,136,136,24,66,0,129,129,0,66,24,2, + 136,136,60,106,171,171,171,171,106,60,2,136,136,60,66,153, + 165,165,153,66,60,2,136,136,60,126,255,255,255,255,126,60 + }; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 7 h=12 x= 3 y=11 dx= 8 dy= 0 ascent=11 len=12 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13B[2302] U8G_SECTION(".progmem.u8g_font_8x13B") = { + 1,8,13,0,254,10,1,127,3,12,32,255,254,11,254,10, + 254,13,0,128,50,42,138,192,192,192,192,192,192,192,0,192, + 192,24,84,132,216,216,216,216,2,121,137,108,108,254,254,108, + 254,254,108,108,1,123,139,16,124,214,208,240,124,30,22,214, + 124,16,2,122,138,230,166,236,24,24,48,48,110,202,206,2, + 119,135,120,204,204,120,206,204,126,56,36,132,192,192,192,192, + 17,91,139,24,48,96,96,192,192,192,96,96,48,24,17,91, + 139,192,96,48,48,24,24,24,48,48,96,192,3,119,135,16, + 16,254,56,56,108,68,20,102,134,48,48,252,252,48,48,33, + 69,133,240,112,112,96,192,22,97,129,252,34,67,131,96,240, + 96,2,122,138,2,6,6,12,24,48,96,192,192,128,2,122, + 138,56,108,198,198,198,198,198,198,108,56,18,106,138,48,112, + 240,48,48,48,48,48,48,252,2,122,138,124,198,198,6,12, + 24,48,96,192,254,2,122,138,254,6,12,24,60,6,6,6, + 198,124,2,122,138,12,28,60,108,204,204,254,12,12,12,2, + 122,138,254,192,192,252,230,6,6,6,198,124,2,122,138,60, + 96,192,192,252,230,198,198,230,124,2,122,138,254,6,6,12, + 24,24,48,48,48,48,2,122,138,124,198,198,198,124,198,198, + 198,198,124,2,122,138,124,206,198,198,206,126,6,6,12,120, + 34,72,136,96,240,96,0,0,96,240,96,33,73,137,96,240, + 96,0,240,112,112,96,192,18,105,137,12,24,48,96,192,96, + 48,24,12,20,100,132,252,0,0,252,18,105,137,192,96,48, + 24,12,24,48,96,192,2,122,138,124,198,198,6,12,24,24, + 0,24,24,2,121,137,124,254,206,222,210,210,222,224,126,2, + 122,138,56,124,198,198,198,254,198,198,198,198,2,122,138,252, + 102,102,102,124,102,102,102,102,252,2,122,138,124,230,198,192, + 192,192,192,198,230,124,2,122,138,252,102,102,102,102,102,102, + 102,102,252,2,122,138,254,192,192,192,248,192,192,192,192,254, + 2,122,138,254,192,192,192,248,192,192,192,192,192,2,122,138, + 124,198,198,192,192,192,206,198,198,124,2,122,138,198,198,198, + 198,254,198,198,198,198,198,34,74,138,240,96,96,96,96,96, + 96,96,96,240,2,122,138,14,6,6,6,6,6,6,198,198, + 124,2,122,138,198,198,204,216,240,240,216,204,198,198,2,122, + 138,192,192,192,192,192,192,192,192,194,254,2,122,138,198,198, + 238,254,214,198,198,198,198,198,2,122,138,198,198,230,230,246, + 222,206,206,198,198,2,122,138,124,198,198,198,198,198,198,198, + 198,124,2,122,138,252,198,198,198,198,252,192,192,192,192,1, + 123,139,124,198,198,198,198,198,198,198,222,124,6,2,122,138, + 252,198,198,198,252,248,204,204,198,198,2,122,138,124,198,198, + 192,124,6,6,198,198,124,18,106,138,252,48,48,48,48,48, + 48,48,48,48,2,122,138,198,198,198,198,198,198,198,198,198, + 124,2,122,138,198,198,198,198,68,108,108,56,56,16,2,122, + 138,198,198,198,198,198,198,214,214,254,108,2,122,138,198,198, + 108,108,56,56,108,108,198,198,18,106,138,204,204,204,120,120, + 48,48,48,48,48,2,122,138,254,6,6,12,24,48,96,192, + 192,254,17,91,139,248,192,192,192,192,192,192,192,192,192,248, + 2,122,138,128,192,192,96,48,24,12,6,6,2,17,91,139, + 248,24,24,24,24,24,24,24,24,24,248,8,116,132,16,56, + 108,198,1,113,129,254,41,67,131,192,96,48,2,119,135,124, + 6,126,198,198,206,118,2,122,138,192,192,192,220,230,198,198, + 198,230,220,2,119,135,124,230,192,192,192,230,124,2,122,138, + 6,6,6,118,206,198,198,198,206,118,2,119,135,124,198,198, + 254,192,198,124,2,122,138,60,102,96,96,96,252,96,96,96, + 96,0,121,137,126,204,204,204,120,240,124,198,124,2,122,138, + 192,192,192,220,230,198,198,198,198,198,34,73,137,96,96,0, + 224,96,96,96,96,240,0,123,139,6,6,0,14,6,6,6, + 6,198,198,124,2,122,138,192,192,192,204,216,240,240,216,204, + 198,34,74,138,224,96,96,96,96,96,96,96,96,240,2,119, + 135,108,254,214,214,198,198,198,2,119,135,220,230,198,198,198, + 198,198,2,119,135,124,198,198,198,198,198,124,0,121,137,220, + 230,198,198,198,230,220,192,192,0,121,137,118,206,198,198,198, + 206,118,6,6,2,119,135,220,230,192,192,192,192,192,2,119, + 135,124,198,96,56,12,198,124,2,122,138,96,96,96,96,252, + 96,96,96,102,60,2,119,135,198,198,198,198,198,206,118,2, + 119,135,198,198,198,198,108,108,56,2,119,135,198,198,198,214, + 214,254,108,2,119,135,198,198,108,56,108,198,198,0,121,137, + 198,198,198,198,206,118,6,198,124,2,119,135,254,12,24,48, + 96,192,254,17,107,139,60,96,96,96,48,224,48,96,96,96, + 60,50,42,138,192,192,192,192,192,192,192,192,192,192,17,107, + 139,240,24,24,24,48,28,48,24,24,24,240,8,115,131,114, + 254,156,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,13,0,128,50,42,138,192,192,0,192,192,192,192, + 192,192,192,3,104,136,16,124,212,208,208,212,124,16,1,123, + 139,60,102,96,96,252,96,96,96,240,190,224,3,119,135,198, + 254,108,68,108,254,198,18,106,138,204,204,204,120,120,252,48, + 252,48,48,50,42,138,192,192,192,192,0,0,192,192,192,192, + 18,106,138,120,204,192,120,204,204,120,12,204,120,26,82,130, + 216,216,3,121,137,124,198,186,234,226,234,186,198,124,21,87, + 135,240,24,248,152,248,0,248,3,119,135,54,108,216,176,216, + 108,54,3,101,133,252,252,4,4,4,22,81,129,248,3,121, + 137,124,198,186,170,186,178,170,198,124,28,97,129,252,24,100, + 132,120,204,204,120,19,103,135,48,48,252,48,48,0,252,22, + 70,134,224,176,48,96,192,240,22,70,134,224,176,96,48,176, + 224,41,67,131,48,96,192,0,121,137,198,198,198,198,198,238, + 252,192,192,1,123,139,62,122,202,202,202,122,58,10,10,10, + 14,54,34,130,192,192,16,67,131,48,144,96,22,70,134,96, + 224,96,96,96,240,21,87,135,112,248,136,248,112,0,248,3, + 119,135,216,108,54,26,54,108,216,2,122,138,96,224,96,96, + 98,246,14,26,30,6,2,122,138,96,224,96,96,124,246,6, + 12,24,30,2,122,138,224,176,96,48,178,230,14,26,30,6, + 18,106,138,48,48,0,48,48,96,192,204,204,120,2,122,138, + 48,24,0,56,124,198,198,254,198,198,2,122,138,24,48,0, + 56,124,198,198,254,198,198,2,122,138,56,108,0,56,124,198, + 198,254,198,198,2,122,138,52,88,0,56,124,198,198,254,198, + 198,2,122,138,108,108,0,56,124,198,198,254,198,198,2,123, + 139,24,36,24,0,56,124,198,198,254,198,198,2,122,138,126, + 248,216,216,216,252,216,216,216,222,0,124,140,124,230,192,192, + 192,192,192,230,124,24,72,48,2,122,138,48,24,0,254,192, + 192,248,192,192,254,2,122,138,24,48,0,254,192,192,248,192, + 192,254,2,122,138,56,108,0,254,192,192,248,192,192,254,2, + 122,138,108,108,0,254,192,192,248,192,192,254,34,74,138,192, + 96,0,240,96,96,96,96,96,240,34,74,138,48,96,0,240, + 96,96,96,96,96,240,34,90,138,112,216,0,240,96,96,96, + 96,96,240,34,90,138,216,216,0,240,96,96,96,96,96,240, + 2,120,136,252,102,102,246,102,102,102,252,2,122,138,52,88, + 0,198,230,246,214,222,206,198,2,123,139,48,24,0,124,198, + 198,198,198,198,198,124,2,123,139,24,48,0,124,198,198,198, + 198,198,198,124,2,123,139,56,108,0,124,198,198,198,198,198, + 198,124,2,123,139,52,88,0,124,198,198,198,198,198,198,124, + 2,123,139,108,108,0,124,198,198,198,198,198,198,124,2,119, + 135,198,198,124,56,124,198,198,1,122,138,2,124,206,214,214, + 214,214,230,124,128,2,122,138,48,24,0,198,198,198,198,198, + 198,124,2,122,138,24,48,0,198,198,198,198,198,198,124,2, + 122,138,56,108,0,198,198,198,198,198,198,124,2,122,138,108, + 108,0,198,198,198,198,198,198,124,18,106,138,24,48,0,204, + 72,120,48,48,48,48,2,121,137,192,252,198,198,198,252,192, + 192,192,2,122,138,60,102,102,108,236,108,102,102,102,108,2, + 122,138,48,24,0,124,6,126,198,198,206,118,2,122,138,24, + 48,0,124,6,126,198,198,206,118,2,122,138,56,108,0,124, + 6,126,198,198,206,118,2,122,138,52,88,0,124,6,126,198, + 198,206,118,2,122,138,108,108,0,124,6,126,198,198,206,118, + 2,123,139,24,36,24,0,124,6,126,198,198,206,118,2,119, + 135,108,218,26,124,216,218,108,0,122,138,124,230,192,192,192, + 230,124,24,72,48,2,122,138,48,24,0,124,198,198,254,192, + 198,124,2,122,138,24,48,0,124,198,198,254,192,198,124,2, + 122,138,56,108,0,124,198,198,254,192,198,124,2,122,138,108, + 108,0,124,198,198,254,192,198,124,34,74,138,192,96,0,224, + 96,96,96,96,96,240,34,74,138,96,192,0,224,96,96,96, + 96,96,240,18,90,138,112,216,0,112,48,48,48,48,48,120, + 18,90,138,216,216,0,112,48,48,48,48,48,120,2,122,138, + 108,56,120,12,126,198,198,198,198,124,2,122,138,52,88,0, + 220,230,198,198,198,198,198,2,122,138,48,24,0,124,198,198, + 198,198,198,124,2,122,138,24,48,0,124,198,198,198,198,198, + 124,2,122,138,56,108,0,124,198,198,198,198,198,124,2,122, + 138,52,88,0,124,198,198,198,198,198,124,2,122,138,108,108, + 0,124,198,198,198,198,198,124,19,103,135,48,48,0,252,0, + 48,48,1,121,137,2,124,206,214,214,214,230,124,128,2,122, + 138,48,24,0,198,198,198,198,198,206,118,2,122,138,24,48, + 0,198,198,198,198,198,206,118,2,122,138,56,108,0,198,198, + 198,198,198,206,118,2,122,138,108,108,0,198,198,198,198,198, + 206,118,0,124,140,24,48,0,198,198,198,198,206,118,6,198, + 124,0,123,139,192,192,220,230,198,198,198,230,220,192,192,0, + 124,140,108,108,0,198,198,198,198,206,118,6,198,124}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 7 h=11 x= 3 y=11 dx= 8 dy= 0 ascent=11 len=11 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13Br[1123] U8G_SECTION(".progmem.u8g_font_8x13Br") = { + 1,8,13,0,254,10,1,127,3,12,32,127,254,11,254,10, + 254,13,0,128,50,42,138,192,192,192,192,192,192,192,0,192, + 192,24,84,132,216,216,216,216,2,121,137,108,108,254,254,108, + 254,254,108,108,1,123,139,16,124,214,208,240,124,30,22,214, + 124,16,2,122,138,230,166,236,24,24,48,48,110,202,206,2, + 119,135,120,204,204,120,206,204,126,56,36,132,192,192,192,192, + 17,91,139,24,48,96,96,192,192,192,96,96,48,24,17,91, + 139,192,96,48,48,24,24,24,48,48,96,192,3,119,135,16, + 16,254,56,56,108,68,20,102,134,48,48,252,252,48,48,33, + 69,133,240,112,112,96,192,22,97,129,252,34,67,131,96,240, + 96,2,122,138,2,6,6,12,24,48,96,192,192,128,2,122, + 138,56,108,198,198,198,198,198,198,108,56,18,106,138,48,112, + 240,48,48,48,48,48,48,252,2,122,138,124,198,198,6,12, + 24,48,96,192,254,2,122,138,254,6,12,24,60,6,6,6, + 198,124,2,122,138,12,28,60,108,204,204,254,12,12,12,2, + 122,138,254,192,192,252,230,6,6,6,198,124,2,122,138,60, + 96,192,192,252,230,198,198,230,124,2,122,138,254,6,6,12, + 24,24,48,48,48,48,2,122,138,124,198,198,198,124,198,198, + 198,198,124,2,122,138,124,206,198,198,206,126,6,6,12,120, + 34,72,136,96,240,96,0,0,96,240,96,33,73,137,96,240, + 96,0,240,112,112,96,192,18,105,137,12,24,48,96,192,96, + 48,24,12,20,100,132,252,0,0,252,18,105,137,192,96,48, + 24,12,24,48,96,192,2,122,138,124,198,198,6,12,24,24, + 0,24,24,2,121,137,124,254,206,222,210,210,222,224,126,2, + 122,138,56,124,198,198,198,254,198,198,198,198,2,122,138,252, + 102,102,102,124,102,102,102,102,252,2,122,138,124,230,198,192, + 192,192,192,198,230,124,2,122,138,252,102,102,102,102,102,102, + 102,102,252,2,122,138,254,192,192,192,248,192,192,192,192,254, + 2,122,138,254,192,192,192,248,192,192,192,192,192,2,122,138, + 124,198,198,192,192,192,206,198,198,124,2,122,138,198,198,198, + 198,254,198,198,198,198,198,34,74,138,240,96,96,96,96,96, + 96,96,96,240,2,122,138,14,6,6,6,6,6,6,198,198, + 124,2,122,138,198,198,204,216,240,240,216,204,198,198,2,122, + 138,192,192,192,192,192,192,192,192,194,254,2,122,138,198,198, + 238,254,214,198,198,198,198,198,2,122,138,198,198,230,230,246, + 222,206,206,198,198,2,122,138,124,198,198,198,198,198,198,198, + 198,124,2,122,138,252,198,198,198,198,252,192,192,192,192,1, + 123,139,124,198,198,198,198,198,198,198,222,124,6,2,122,138, + 252,198,198,198,252,248,204,204,198,198,2,122,138,124,198,198, + 192,124,6,6,198,198,124,18,106,138,252,48,48,48,48,48, + 48,48,48,48,2,122,138,198,198,198,198,198,198,198,198,198, + 124,2,122,138,198,198,198,198,68,108,108,56,56,16,2,122, + 138,198,198,198,198,198,198,214,214,254,108,2,122,138,198,198, + 108,108,56,56,108,108,198,198,18,106,138,204,204,204,120,120, + 48,48,48,48,48,2,122,138,254,6,6,12,24,48,96,192, + 192,254,17,91,139,248,192,192,192,192,192,192,192,192,192,248, + 2,122,138,128,192,192,96,48,24,12,6,6,2,17,91,139, + 248,24,24,24,24,24,24,24,24,24,248,8,116,132,16,56, + 108,198,1,113,129,254,41,67,131,192,96,48,2,119,135,124, + 6,126,198,198,206,118,2,122,138,192,192,192,220,230,198,198, + 198,230,220,2,119,135,124,230,192,192,192,230,124,2,122,138, + 6,6,6,118,206,198,198,198,206,118,2,119,135,124,198,198, + 254,192,198,124,2,122,138,60,102,96,96,96,252,96,96,96, + 96,0,121,137,126,204,204,204,120,240,124,198,124,2,122,138, + 192,192,192,220,230,198,198,198,198,198,34,73,137,96,96,0, + 224,96,96,96,96,240,0,123,139,6,6,0,14,6,6,6, + 6,198,198,124,2,122,138,192,192,192,204,216,240,240,216,204, + 198,34,74,138,224,96,96,96,96,96,96,96,96,240,2,119, + 135,108,254,214,214,198,198,198,2,119,135,220,230,198,198,198, + 198,198,2,119,135,124,198,198,198,198,198,124,0,121,137,220, + 230,198,198,198,230,220,192,192,0,121,137,118,206,198,198,198, + 206,118,6,6,2,119,135,220,230,192,192,192,192,192,2,119, + 135,124,198,96,56,12,198,124,2,122,138,96,96,96,96,252, + 96,96,96,102,60,2,119,135,198,198,198,198,198,206,118,2, + 119,135,198,198,198,198,108,108,56,2,119,135,198,198,198,214, + 214,254,108,2,119,135,198,198,108,56,108,198,198,0,121,137, + 198,198,198,198,206,118,6,198,124,2,119,135,254,12,24,48, + 96,192,254,17,107,139,60,96,96,96,48,224,48,96,96,96, + 60,50,42,138,192,192,192,192,192,192,192,192,192,192,17,107, + 139,240,24,24,24,48,28,48,24,24,24,240,8,115,131,114, + 254,156,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 7 h=11 x= 3 y=11 dx= 8 dy= 0 ascent=11 len=11 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent = 9 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13[2152] U8G_SECTION(".progmem.u8g_font_8x13") = { + 1,8,13,0,254,9,1,97,2,205,32,255,254,11,254,9, + 254,13,0,128,50,25,137,128,128,128,128,128,128,128,0,128, + 40,67,131,144,144,144,19,103,135,72,72,252,72,252,72,72, + 18,89,137,32,120,160,160,112,40,40,240,32,18,105,137,68, + 164,72,16,16,32,72,84,136,18,103,135,96,144,144,96,148, + 136,116,56,19,131,128,128,128,50,57,137,32,64,64,128,128, + 128,64,64,32,34,57,137,128,64,64,32,32,32,64,64,128, + 22,101,133,72,48,252,48,72,20,85,133,32,32,248,32,32, + 17,67,131,112,96,128,22,81,129,248,33,51,131,64,224,64, + 2,121,137,2,2,4,8,16,32,64,128,128,18,105,137,48, + 72,132,132,132,132,132,72,48,18,89,137,32,96,160,32,32, + 32,32,32,248,18,105,137,120,132,132,4,8,48,64,128,252, + 18,105,137,252,4,8,16,56,4,4,132,120,18,105,137,8, + 24,40,72,136,136,252,8,8,18,105,137,252,128,128,184,196, + 4,4,132,120,18,105,137,56,64,128,128,184,196,132,132,120, + 18,105,137,252,4,8,16,16,32,32,64,64,18,105,137,120, + 132,132,132,120,132,132,132,120,18,105,137,120,132,132,140,116, + 4,4,8,112,33,56,136,64,224,64,0,0,64,224,64,17, + 72,136,32,112,32,0,0,112,96,128,34,89,137,8,16,32, + 64,128,64,32,16,8,20,100,132,252,0,0,252,18,89,137, + 128,64,32,16,8,16,32,64,128,18,105,137,120,132,132,4, + 8,16,16,0,16,18,105,137,120,132,132,156,164,172,148,128, + 120,18,105,137,48,72,132,132,132,252,132,132,132,18,105,137, + 240,136,132,136,240,136,132,136,240,18,105,137,120,132,128,128, + 128,128,128,132,120,18,105,137,240,136,132,132,132,132,132,136, + 240,18,105,137,252,128,128,128,240,128,128,128,252,18,105,137, + 252,128,128,128,240,128,128,128,128,18,105,137,120,132,128,128, + 128,156,132,140,116,18,105,137,132,132,132,132,252,132,132,132, + 132,18,89,137,248,32,32,32,32,32,32,32,248,18,121,137, + 62,8,8,8,8,8,8,136,112,18,105,137,132,136,144,160, + 192,160,144,136,132,18,105,137,128,128,128,128,128,128,128,128, + 252,2,121,137,130,130,198,170,146,146,130,130,130,18,105,137, + 132,132,196,164,148,140,132,132,132,18,105,137,120,132,132,132, + 132,132,132,132,120,18,105,137,248,132,132,132,248,128,128,128, + 128,17,106,138,120,132,132,132,132,132,164,148,120,4,18,105, + 137,248,132,132,132,248,160,144,136,132,18,105,137,120,132,128, + 128,120,4,4,132,120,2,121,137,254,16,16,16,16,16,16, + 16,16,18,105,137,132,132,132,132,132,132,132,132,120,2,121, + 137,130,130,68,68,68,40,40,40,16,2,121,137,130,130,130, + 130,146,146,146,170,68,2,121,137,130,130,68,40,16,40,68, + 130,130,2,121,137,130,130,68,40,16,16,16,16,16,18,105, + 137,252,4,8,16,32,64,128,128,252,34,73,137,240,128,128, + 128,128,128,128,128,240,2,121,137,128,128,64,32,16,8,4, + 2,2,18,73,137,240,16,16,16,16,16,16,16,240,24,83, + 131,32,80,136,1,113,129,254,58,34,130,128,64,18,102,134, + 120,4,124,132,140,116,18,105,137,128,128,128,184,196,132,132, + 196,184,18,102,134,120,132,128,128,132,120,18,105,137,4,4, + 4,116,140,132,132,140,116,18,102,134,120,132,252,128,132,120, + 18,105,137,56,68,64,64,248,64,64,64,64,16,104,136,116, + 136,136,112,128,120,132,120,18,105,137,128,128,128,184,196,132, + 132,132,132,18,88,136,32,0,96,32,32,32,32,248,16,90, + 138,8,0,24,8,8,8,8,136,136,112,18,105,137,128,128, + 128,136,144,224,144,136,132,18,89,137,96,32,32,32,32,32, + 32,32,248,2,118,134,236,146,146,146,146,130,18,102,134,184, + 196,132,132,132,132,18,102,134,120,132,132,132,132,120,16,104, + 136,184,196,132,196,184,128,128,128,16,104,136,116,140,132,140, + 116,4,4,4,18,102,134,184,68,64,64,64,64,18,102,134, + 120,132,96,24,132,120,18,104,136,64,64,248,64,64,64,68, + 56,18,102,134,136,136,136,136,136,116,18,86,134,136,136,136, + 80,80,32,2,118,134,130,130,146,146,170,68,18,102,134,132, + 72,48,48,72,132,16,104,136,132,132,132,140,116,4,132,120, + 18,102,134,252,8,16,32,64,252,34,89,137,56,64,64,32, + 192,32,64,64,56,50,25,137,128,128,128,128,128,128,128,128, + 128,18,89,137,224,16,16,32,24,32,16,16,224,24,83,131, + 72,168,144,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,13,0,128,50,25,137,128,0,128,128,128,128, + 128,128,128,19,88,136,32,112,168,160,160,168,112,32,2,121, + 137,28,34,32,112,32,32,32,98,220,19,102,134,132,120,72, + 72,120,132,2,121,137,130,130,68,40,124,16,124,16,16,50, + 25,137,128,128,128,128,0,128,128,128,128,34,74,138,96,144, + 128,96,144,144,96,16,144,96,42,66,130,144,144,3,121,137, + 56,68,146,170,162,170,146,68,56,20,87,135,112,8,120,136, + 120,0,248,3,119,135,18,36,72,144,72,36,18,19,100,132, + 252,4,4,4,38,65,129,240,3,121,137,56,68,146,170,170, + 178,170,68,56,26,97,129,252,39,68,132,96,144,144,96,19, + 87,135,32,32,248,32,32,0,248,22,70,134,96,144,16,96, + 128,240,22,70,134,96,144,32,16,144,96,58,34,130,64,128, + 17,103,135,132,132,132,132,204,180,128,18,105,137,124,232,232, + 232,104,40,40,40,40,54,33,129,192,48,34,130,64,192,22, + 54,134,64,192,64,64,64,224,21,70,134,96,144,144,96,0, + 240,3,119,135,144,72,36,18,36,72,144,2,122,138,64,192, + 64,64,66,230,10,18,26,6,2,122,138,64,192,64,64,76, + 242,2,12,16,30,2,122,138,96,144,32,16,146,102,10,18, + 26,6,18,105,137,32,0,32,32,64,128,132,132,120,18,106, + 138,32,16,0,48,72,132,132,252,132,132,18,106,138,16,32, + 0,48,72,132,132,252,132,132,18,106,138,48,72,0,48,72, + 132,132,252,132,132,18,106,138,100,152,0,48,72,132,132,252, + 132,132,18,106,138,72,72,0,48,72,132,132,252,132,132,18, + 106,138,48,72,48,48,72,132,132,252,132,132,2,121,137,110, + 144,144,144,156,240,144,144,158,16,107,139,120,132,128,128,128, + 128,128,132,120,16,32,18,106,138,32,16,0,252,128,128,240, + 128,128,252,18,106,138,16,32,0,252,128,128,240,128,128,252, + 18,106,138,48,72,0,252,128,128,240,128,128,252,18,106,138, + 72,72,0,252,128,128,240,128,128,252,18,90,138,64,32,0, + 248,32,32,32,32,32,248,18,90,138,16,32,0,248,32,32, + 32,32,32,248,18,90,138,48,72,0,248,32,32,32,32,32, + 248,18,90,138,136,136,0,248,32,32,32,32,32,248,2,121, + 137,120,68,66,66,226,66,66,68,120,2,122,138,100,152,0, + 130,194,162,146,138,134,130,2,122,138,32,16,0,124,130,130, + 130,130,130,124,2,122,138,8,16,0,124,130,130,130,130,130, + 124,2,122,138,24,36,0,124,130,130,130,130,130,124,2,122, + 138,100,152,0,124,130,130,130,130,130,124,2,122,138,68,68, + 0,124,130,130,130,130,130,124,19,102,134,132,72,48,48,72, + 132,17,107,139,4,120,140,148,148,164,164,164,196,120,128,18, + 106,138,64,32,0,132,132,132,132,132,132,120,18,106,138,16, + 32,0,132,132,132,132,132,132,120,18,106,138,48,72,0,132, + 132,132,132,132,132,120,18,106,138,72,72,0,132,132,132,132, + 132,132,120,18,90,138,16,32,0,136,136,80,32,32,32,32, + 18,105,137,128,248,132,132,132,248,128,128,128,18,105,137,112, + 136,136,144,160,152,132,132,184,18,105,137,32,16,0,120,4, + 124,132,140,116,18,105,137,8,16,0,120,4,124,132,140,116, + 18,105,137,48,72,0,120,4,124,132,140,116,18,105,137,100, + 152,0,120,4,124,132,140,116,18,105,137,72,72,0,120,4, + 124,132,140,116,18,106,138,48,72,48,0,120,4,124,132,140, + 116,2,118,134,108,18,124,144,146,108,16,104,136,120,132,128, + 128,132,120,16,32,18,105,137,32,16,0,120,132,252,128,132, + 120,18,105,137,16,32,0,120,132,252,128,132,120,18,105,137, + 48,72,0,120,132,252,128,132,120,18,105,137,72,72,0,120, + 132,252,128,132,120,18,89,137,64,32,0,96,32,32,32,32, + 248,18,89,137,32,64,0,96,32,32,32,32,248,18,89,137, + 96,144,0,96,32,32,32,32,248,18,89,137,144,144,0,96, + 32,32,32,32,248,18,106,138,72,48,80,8,120,132,132,132, + 132,120,18,105,137,100,152,0,184,196,132,132,132,132,18,105, + 137,64,32,0,120,132,132,132,132,120,18,105,137,16,32,0, + 120,132,132,132,132,120,18,105,137,48,72,0,120,132,132,132, + 132,120,18,105,137,100,152,0,120,132,132,132,132,120,18,105, + 137,72,72,0,120,132,132,132,132,120,19,87,135,32,32,0, + 248,0,32,32,17,104,136,4,120,140,148,164,196,120,128,18, + 105,137,64,32,0,136,136,136,136,136,116,18,105,137,16,32, + 0,136,136,136,136,136,116,18,105,137,48,72,0,136,136,136, + 136,136,116,18,105,137,80,80,0,136,136,136,136,136,116,16, + 107,139,16,32,0,132,132,132,140,116,4,132,120,16,106,138, + 128,128,184,196,132,132,196,184,128,128,16,107,139,72,72,0, + 132,132,132,140,116,4,132,120}; +/* + Fontname: -Misc-Fixed-Medium-O-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 8 h=11 x= 3 y=11 dx= 8 dy= 0 ascent=11 len=11 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent = 9 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13O[2153] U8G_SECTION(".progmem.u8g_font_8x13O") = { + 1,8,13,0,254,9,1,98,2,206,32,255,254,11,254,9, + 254,13,0,128,50,41,137,64,64,64,64,128,128,128,0,128, + 40,67,131,144,144,144,3,119,135,36,36,126,36,252,72,72, + 18,105,137,16,60,80,80,56,40,40,240,32,2,121,137,34, + 82,36,8,16,32,72,148,136,18,104,136,24,36,40,48,84, + 136,152,100,56,19,131,128,128,128,34,73,137,16,32,64,64, + 128,128,64,64,32,34,73,137,64,32,32,16,16,32,32,64, + 128,20,101,133,72,48,252,96,144,20,85,133,32,32,248,64, + 64,33,67,131,112,96,128,22,81,129,248,33,51,131,64,224, + 64,2,137,137,1,1,2,4,24,32,64,128,128,2,121,137, + 24,36,66,66,66,132,132,72,48,18,89,137,16,48,80,16, + 16,32,32,32,248,2,121,137,60,66,66,2,12,48,64,128, + 252,2,121,137,126,2,4,8,24,4,4,132,120,18,105,137, + 4,12,20,36,72,136,252,16,16,2,121,137,62,32,32,92, + 98,2,4,132,120,2,121,137,28,34,64,64,120,132,132,132, + 120,18,105,137,252,4,8,16,32,64,64,128,128,2,121,137, + 60,66,66,66,124,132,132,132,120,18,105,137,120,132,132,140, + 116,8,8,16,224,33,72,136,32,112,32,0,0,64,224,64, + 17,88,136,16,56,16,0,0,112,96,128,18,89,137,8,16, + 32,64,128,128,64,32,16,4,116,132,126,0,0,252,18,89, + 137,64,32,16,8,8,16,32,64,128,18,105,137,56,68,132, + 8,16,32,32,0,32,2,121,137,60,66,66,78,82,166,152, + 128,120,2,121,137,24,36,66,66,66,252,132,132,132,2,121, + 137,120,68,66,68,120,136,132,136,240,2,121,137,60,66,64, + 64,64,128,128,132,120,2,121,137,120,68,66,66,66,132,132, + 136,240,2,121,137,126,64,64,64,120,128,128,128,252,2,121, + 137,126,64,64,64,120,128,128,128,128,2,121,137,60,66,64, + 64,64,156,132,140,116,2,121,137,66,66,66,66,124,132,132, + 132,132,18,105,137,124,16,16,16,16,32,32,32,248,2,121, + 137,30,4,4,4,4,8,8,136,112,2,121,137,66,68,72, + 80,96,160,144,136,132,18,105,137,64,64,64,64,64,128,128, + 128,252,2,137,137,65,65,99,85,73,130,130,130,130,2,121, + 137,66,66,98,82,74,140,132,132,132,2,121,137,60,66,66, + 66,66,132,132,132,120,2,121,137,124,66,66,66,124,128,128, + 128,128,1,122,138,60,66,66,66,132,132,164,148,120,4,2, + 121,137,124,66,66,66,124,160,144,136,132,2,121,137,60,66, + 64,64,56,4,4,132,120,2,121,137,254,16,16,16,16,32, + 32,32,32,2,121,137,66,66,66,66,132,132,132,132,120,2, + 121,137,130,130,132,68,72,72,80,80,32,2,137,137,65,65, + 65,65,73,146,146,170,68,2,137,137,65,65,34,20,24,40, + 68,130,130,2,121,137,130,130,68,40,16,16,32,32,32,2, + 121,137,126,2,4,8,16,32,64,128,252,18,89,137,120,64, + 64,64,64,128,128,128,240,18,105,137,128,128,64,32,16,16, + 8,4,4,18,89,137,120,8,8,8,8,16,16,16,240,24, + 83,131,32,80,136,1,113,129,254,58,34,130,128,64,2,118, + 134,60,2,124,132,140,116,2,121,137,64,64,64,92,98,66, + 132,196,184,2,118,134,60,66,128,128,132,120,2,121,137,2, + 2,2,58,68,132,132,140,116,2,118,134,60,66,124,128,132, + 120,18,105,137,56,68,64,64,248,64,128,128,128,0,120,136, + 58,68,136,112,128,120,132,120,2,121,137,32,32,64,92,98, + 66,132,132,132,18,88,136,16,0,48,16,16,32,32,248,16, + 106,138,4,0,12,4,4,8,8,136,136,112,18,105,137,64, + 64,64,68,88,96,144,136,132,18,89,137,48,16,16,16,16, + 32,32,32,248,2,134,134,118,73,73,146,146,130,2,118,134, + 92,98,66,132,132,132,2,118,134,60,66,66,132,132,120,0, + 136,136,46,49,33,98,92,64,128,128,0,120,136,58,70,132, + 140,116,4,8,8,18,102,134,184,68,64,128,128,128,2,118, + 134,60,66,32,24,132,120,18,88,136,64,64,248,64,128,128, + 136,112,18,102,134,68,68,68,136,136,116,18,86,134,136,136, + 144,160,160,64,2,134,134,65,65,146,146,170,68,2,118,134, + 66,36,24,48,72,132,0,120,136,66,66,132,140,116,4,132, + 120,2,118,134,126,4,24,32,64,252,18,89,137,56,64,64, + 32,192,64,128,128,112,50,41,137,64,64,64,64,64,128,128, + 128,128,18,89,137,112,8,8,16,24,32,16,16,224,24,83, + 131,72,168,144,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,13,0,128,50,41,137,64,0,64,64,64, + 128,128,128,128,19,104,136,16,56,84,80,160,168,112,32,2, + 137,137,14,17,16,56,16,32,32,98,220,3,118,134,66,60, + 36,72,120,132,2,121,137,130,130,68,40,124,16,248,32,32, + 50,41,137,64,64,64,64,0,128,128,128,128,18,90,138,48, + 72,64,48,72,144,96,16,144,96,42,66,130,144,144,2,137, + 137,28,34,73,85,162,170,146,68,56,20,103,135,56,4,120, + 136,120,0,248,3,119,135,18,36,72,144,144,72,36,19,100, + 132,252,4,8,8,38,65,129,240,2,137,137,28,34,89,85, + 170,178,170,68,56,26,97,129,252,39,68,132,96,144,144,96, + 19,103,135,16,16,124,32,32,0,248,22,86,134,48,72,8, + 112,128,240,22,86,134,112,8,48,16,144,96,58,34,130,64, + 128,1,119,135,66,66,66,132,204,180,128,18,105,137,124,232, + 232,232,104,80,80,80,80,54,33,129,192,48,34,130,64,192, + 38,54,134,32,96,32,64,64,224,21,102,134,24,36,72,48, + 0,240,3,119,135,72,36,18,18,36,72,144,18,106,138,32, + 96,32,64,68,236,20,40,60,8,2,122,138,32,96,32,64, + 76,242,4,24,32,60,18,106,138,112,8,48,16,148,108,20, + 40,60,8,18,105,137,16,0,16,16,32,64,132,136,112,2, + 122,138,16,8,0,24,36,66,66,124,132,132,2,122,138,8, + 16,0,24,36,66,66,124,132,132,2,122,138,24,36,0,24, + 36,66,66,124,132,132,2,122,138,50,76,0,24,36,66,66, + 124,132,132,2,122,138,36,36,0,24,36,66,66,124,132,132, + 2,122,138,24,36,24,24,36,66,66,124,132,132,2,137,137, + 55,72,72,72,78,112,144,144,158,0,123,139,60,66,64,64, + 64,128,128,132,120,16,32,2,122,138,16,8,0,126,64,64, + 112,128,128,252,2,122,138,8,16,0,126,64,64,112,128,128, + 252,2,122,138,24,36,0,126,64,64,112,128,128,252,2,122, + 138,36,36,0,126,64,64,112,128,128,252,18,106,138,32,16, + 0,124,16,16,32,32,32,248,18,106,138,8,16,0,124,16, + 16,32,32,32,248,18,106,138,24,36,0,124,16,16,32,32, + 32,248,18,106,138,68,68,0,124,16,16,32,32,32,248,2, + 121,137,120,68,66,66,226,68,132,136,240,2,138,138,50,76, + 0,65,97,81,146,138,134,130,2,138,138,16,8,0,62,65, + 65,130,130,130,124,2,138,138,4,8,0,62,65,65,130,130, + 130,124,2,138,138,12,18,0,62,65,65,130,130,130,124,2, + 138,138,50,76,0,62,65,65,130,130,130,124,2,138,138,34, + 34,0,62,65,65,130,130,130,124,3,118,134,66,36,24,48, + 72,132,1,123,139,2,60,70,74,74,82,164,164,196,120,128, + 2,122,138,32,16,0,66,66,66,132,132,132,120,2,122,138, + 8,16,0,66,66,66,132,132,132,120,2,122,138,24,36,0, + 66,66,66,132,132,132,120,2,122,138,36,36,0,66,66,66, + 132,132,132,120,18,90,138,16,32,0,136,136,80,96,64,64, + 64,2,121,137,64,124,66,66,66,124,128,128,128,18,105,137, + 56,68,68,72,80,136,132,132,184,2,121,137,16,8,0,60, + 2,124,132,140,116,2,121,137,4,8,0,60,2,124,132,140, + 116,2,121,137,24,36,0,60,2,124,132,140,116,2,121,137, + 50,76,0,60,2,124,132,140,116,2,121,137,36,36,0,60, + 2,124,132,140,116,2,122,138,24,36,24,0,60,2,124,132, + 140,116,2,134,134,54,9,126,144,146,108,0,120,136,60,66, + 128,128,132,120,16,32,2,121,137,16,8,0,60,66,124,128, + 132,120,2,121,137,8,16,0,60,66,124,128,132,120,2,121, + 137,24,36,0,60,66,124,128,132,120,2,121,137,36,36,0, + 60,66,124,128,132,120,18,89,137,32,16,0,48,16,16,32, + 32,248,18,89,137,16,32,0,48,16,16,32,32,248,18,89, + 137,48,72,0,48,16,16,32,32,248,18,89,137,72,72,0, + 48,16,16,32,32,248,2,122,138,36,24,40,4,60,66,66, + 132,132,120,2,121,137,50,76,0,92,98,66,132,132,132,2, + 121,137,32,16,0,60,66,66,132,132,120,2,121,137,8,16, + 0,60,66,66,132,132,120,2,121,137,24,36,0,60,66,66, + 132,132,120,2,121,137,50,76,0,60,66,66,132,132,120,2, + 121,137,36,36,0,60,66,66,132,132,120,19,103,135,16,16, + 0,252,0,32,32,1,120,136,2,60,70,90,164,196,120,128, + 18,105,137,32,16,0,68,68,68,136,136,116,18,105,137,8, + 16,0,68,68,68,136,136,116,18,105,137,24,36,0,68,68, + 68,136,136,116,18,105,137,40,40,0,68,68,68,136,136,116, + 0,123,139,8,16,0,66,66,132,140,116,4,132,120,0,122, + 138,64,64,92,98,66,132,196,184,128,128,0,123,139,36,36, + 0,66,66,132,140,116,4,132,120}; +/* + Fontname: -Misc-Fixed-Medium-O-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 8 h=10 x= 3 y=11 dx= 8 dy= 0 ascent=11 len=10 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent = 9 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13Or[1029] U8G_SECTION(".progmem.u8g_font_8x13Or") = { + 1,8,13,0,254,9,1,98,2,206,32,127,254,11,254,9, + 254,13,0,128,50,41,137,64,64,64,64,128,128,128,0,128, + 40,67,131,144,144,144,3,119,135,36,36,126,36,252,72,72, + 18,105,137,16,60,80,80,56,40,40,240,32,2,121,137,34, + 82,36,8,16,32,72,148,136,18,104,136,24,36,40,48,84, + 136,152,100,56,19,131,128,128,128,34,73,137,16,32,64,64, + 128,128,64,64,32,34,73,137,64,32,32,16,16,32,32,64, + 128,20,101,133,72,48,252,96,144,20,85,133,32,32,248,64, + 64,33,67,131,112,96,128,22,81,129,248,33,51,131,64,224, + 64,2,137,137,1,1,2,4,24,32,64,128,128,2,121,137, + 24,36,66,66,66,132,132,72,48,18,89,137,16,48,80,16, + 16,32,32,32,248,2,121,137,60,66,66,2,12,48,64,128, + 252,2,121,137,126,2,4,8,24,4,4,132,120,18,105,137, + 4,12,20,36,72,136,252,16,16,2,121,137,62,32,32,92, + 98,2,4,132,120,2,121,137,28,34,64,64,120,132,132,132, + 120,18,105,137,252,4,8,16,32,64,64,128,128,2,121,137, + 60,66,66,66,124,132,132,132,120,18,105,137,120,132,132,140, + 116,8,8,16,224,33,72,136,32,112,32,0,0,64,224,64, + 17,88,136,16,56,16,0,0,112,96,128,18,89,137,8,16, + 32,64,128,128,64,32,16,4,116,132,126,0,0,252,18,89, + 137,64,32,16,8,8,16,32,64,128,18,105,137,56,68,132, + 8,16,32,32,0,32,2,121,137,60,66,66,78,82,166,152, + 128,120,2,121,137,24,36,66,66,66,252,132,132,132,2,121, + 137,120,68,66,68,120,136,132,136,240,2,121,137,60,66,64, + 64,64,128,128,132,120,2,121,137,120,68,66,66,66,132,132, + 136,240,2,121,137,126,64,64,64,120,128,128,128,252,2,121, + 137,126,64,64,64,120,128,128,128,128,2,121,137,60,66,64, + 64,64,156,132,140,116,2,121,137,66,66,66,66,124,132,132, + 132,132,18,105,137,124,16,16,16,16,32,32,32,248,2,121, + 137,30,4,4,4,4,8,8,136,112,2,121,137,66,68,72, + 80,96,160,144,136,132,18,105,137,64,64,64,64,64,128,128, + 128,252,2,137,137,65,65,99,85,73,130,130,130,130,2,121, + 137,66,66,98,82,74,140,132,132,132,2,121,137,60,66,66, + 66,66,132,132,132,120,2,121,137,124,66,66,66,124,128,128, + 128,128,1,122,138,60,66,66,66,132,132,164,148,120,4,2, + 121,137,124,66,66,66,124,160,144,136,132,2,121,137,60,66, + 64,64,56,4,4,132,120,2,121,137,254,16,16,16,16,32, + 32,32,32,2,121,137,66,66,66,66,132,132,132,132,120,2, + 121,137,130,130,132,68,72,72,80,80,32,2,137,137,65,65, + 65,65,73,146,146,170,68,2,137,137,65,65,34,20,24,40, + 68,130,130,2,121,137,130,130,68,40,16,16,32,32,32,2, + 121,137,126,2,4,8,16,32,64,128,252,18,89,137,120,64, + 64,64,64,128,128,128,240,18,105,137,128,128,64,32,16,16, + 8,4,4,18,89,137,120,8,8,8,8,16,16,16,240,24, + 83,131,32,80,136,1,113,129,254,58,34,130,128,64,2,118, + 134,60,2,124,132,140,116,2,121,137,64,64,64,92,98,66, + 132,196,184,2,118,134,60,66,128,128,132,120,2,121,137,2, + 2,2,58,68,132,132,140,116,2,118,134,60,66,124,128,132, + 120,18,105,137,56,68,64,64,248,64,128,128,128,0,120,136, + 58,68,136,112,128,120,132,120,2,121,137,32,32,64,92,98, + 66,132,132,132,18,88,136,16,0,48,16,16,32,32,248,16, + 106,138,4,0,12,4,4,8,8,136,136,112,18,105,137,64, + 64,64,68,88,96,144,136,132,18,89,137,48,16,16,16,16, + 32,32,32,248,2,134,134,118,73,73,146,146,130,2,118,134, + 92,98,66,132,132,132,2,118,134,60,66,66,132,132,120,0, + 136,136,46,49,33,98,92,64,128,128,0,120,136,58,70,132, + 140,116,4,8,8,18,102,134,184,68,64,128,128,128,2,118, + 134,60,66,32,24,132,120,18,88,136,64,64,248,64,128,128, + 136,112,18,102,134,68,68,68,136,136,116,18,86,134,136,136, + 144,160,160,64,2,134,134,65,65,146,146,170,68,2,118,134, + 66,36,24,48,72,132,0,120,136,66,66,132,140,116,4,132, + 120,2,118,134,126,4,24,32,64,252,18,89,137,56,64,64, + 32,192,64,128,128,112,50,41,137,64,64,64,64,64,128,128, + 128,128,18,89,137,112,8,8,16,24,32,16,16,224,24,83, + 131,72,168,144,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 7 h=10 x= 3 y=11 dx= 8 dy= 0 ascent=11 len=10 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent = 9 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13r[1028] U8G_SECTION(".progmem.u8g_font_8x13r") = { + 1,8,13,0,254,9,1,97,2,205,32,127,254,11,254,9, + 254,13,0,128,50,25,137,128,128,128,128,128,128,128,0,128, + 40,67,131,144,144,144,19,103,135,72,72,252,72,252,72,72, + 18,89,137,32,120,160,160,112,40,40,240,32,18,105,137,68, + 164,72,16,16,32,72,84,136,18,103,135,96,144,144,96,148, + 136,116,56,19,131,128,128,128,50,57,137,32,64,64,128,128, + 128,64,64,32,34,57,137,128,64,64,32,32,32,64,64,128, + 22,101,133,72,48,252,48,72,20,85,133,32,32,248,32,32, + 17,67,131,112,96,128,22,81,129,248,33,51,131,64,224,64, + 2,121,137,2,2,4,8,16,32,64,128,128,18,105,137,48, + 72,132,132,132,132,132,72,48,18,89,137,32,96,160,32,32, + 32,32,32,248,18,105,137,120,132,132,4,8,48,64,128,252, + 18,105,137,252,4,8,16,56,4,4,132,120,18,105,137,8, + 24,40,72,136,136,252,8,8,18,105,137,252,128,128,184,196, + 4,4,132,120,18,105,137,56,64,128,128,184,196,132,132,120, + 18,105,137,252,4,8,16,16,32,32,64,64,18,105,137,120, + 132,132,132,120,132,132,132,120,18,105,137,120,132,132,140,116, + 4,4,8,112,33,56,136,64,224,64,0,0,64,224,64,17, + 72,136,32,112,32,0,0,112,96,128,34,89,137,8,16,32, + 64,128,64,32,16,8,20,100,132,252,0,0,252,18,89,137, + 128,64,32,16,8,16,32,64,128,18,105,137,120,132,132,4, + 8,16,16,0,16,18,105,137,120,132,132,156,164,172,148,128, + 120,18,105,137,48,72,132,132,132,252,132,132,132,18,105,137, + 240,136,132,136,240,136,132,136,240,18,105,137,120,132,128,128, + 128,128,128,132,120,18,105,137,240,136,132,132,132,132,132,136, + 240,18,105,137,252,128,128,128,240,128,128,128,252,18,105,137, + 252,128,128,128,240,128,128,128,128,18,105,137,120,132,128,128, + 128,156,132,140,116,18,105,137,132,132,132,132,252,132,132,132, + 132,18,89,137,248,32,32,32,32,32,32,32,248,18,121,137, + 62,8,8,8,8,8,8,136,112,18,105,137,132,136,144,160, + 192,160,144,136,132,18,105,137,128,128,128,128,128,128,128,128, + 252,2,121,137,130,130,198,170,146,146,130,130,130,18,105,137, + 132,132,196,164,148,140,132,132,132,18,105,137,120,132,132,132, + 132,132,132,132,120,18,105,137,248,132,132,132,248,128,128,128, + 128,17,106,138,120,132,132,132,132,132,164,148,120,4,18,105, + 137,248,132,132,132,248,160,144,136,132,18,105,137,120,132,128, + 128,120,4,4,132,120,2,121,137,254,16,16,16,16,16,16, + 16,16,18,105,137,132,132,132,132,132,132,132,132,120,2,121, + 137,130,130,68,68,68,40,40,40,16,2,121,137,130,130,130, + 130,146,146,146,170,68,2,121,137,130,130,68,40,16,40,68, + 130,130,2,121,137,130,130,68,40,16,16,16,16,16,18,105, + 137,252,4,8,16,32,64,128,128,252,34,73,137,240,128,128, + 128,128,128,128,128,240,2,121,137,128,128,64,32,16,8,4, + 2,2,18,73,137,240,16,16,16,16,16,16,16,240,24,83, + 131,32,80,136,1,113,129,254,58,34,130,128,64,18,102,134, + 120,4,124,132,140,116,18,105,137,128,128,128,184,196,132,132, + 196,184,18,102,134,120,132,128,128,132,120,18,105,137,4,4, + 4,116,140,132,132,140,116,18,102,134,120,132,252,128,132,120, + 18,105,137,56,68,64,64,248,64,64,64,64,16,104,136,116, + 136,136,112,128,120,132,120,18,105,137,128,128,128,184,196,132, + 132,132,132,18,88,136,32,0,96,32,32,32,32,248,16,90, + 138,8,0,24,8,8,8,8,136,136,112,18,105,137,128,128, + 128,136,144,224,144,136,132,18,89,137,96,32,32,32,32,32, + 32,32,248,2,118,134,236,146,146,146,146,130,18,102,134,184, + 196,132,132,132,132,18,102,134,120,132,132,132,132,120,16,104, + 136,184,196,132,196,184,128,128,128,16,104,136,116,140,132,140, + 116,4,4,4,18,102,134,184,68,64,64,64,64,18,102,134, + 120,132,96,24,132,120,18,104,136,64,64,248,64,64,64,68, + 56,18,102,134,136,136,136,136,136,116,18,86,134,136,136,136, + 80,80,32,2,118,134,130,130,146,146,170,68,18,102,134,132, + 72,48,48,72,132,16,104,136,132,132,132,140,116,4,132,120, + 18,102,134,252,8,16,32,64,252,34,89,137,56,64,64,32, + 192,32,64,64,56,50,25,137,128,128,128,128,128,128,128,128, + 128,18,89,137,224,16,16,32,24,32,16,16,224,24,83,131, + 72,168,144,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--15-140-75-75-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 4, '1' Height: 10 + Calculated Max Values w= 9 h=15 x= 8 y=10 dx= 9 dy= 0 ascent=12 len=30 + Font Bounding box w= 9 h=15 x= 0 y=-3 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent = 4 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x15_67_75[3804] U8G_SECTION(".progmem.u8g_font_9x15_67_75") = { + 0,9,15,0,253,4,1,255,4,34,32,255,0,12,253,10, + 0,8,7,7,9,0,1,72,36,18,255,18,36,72,7,10, + 10,9,1,0,16,16,16,146,84,56,146,84,56,16,7,7, + 7,9,1,1,16,34,68,248,68,34,16,7,7,7,9,1, + 1,16,136,68,62,68,136,16,7,7,7,9,1,1,16,34, + 66,254,66,34,16,7,10,10,9,1,0,16,56,84,146,16, + 16,16,16,16,124,7,7,7,9,1,1,16,136,132,254,132, + 136,16,7,10,10,9,1,0,124,16,16,16,16,16,146,84, + 56,16,7,10,10,9,1,0,16,56,84,146,16,146,84,56, + 16,254,8,7,7,9,0,1,16,34,65,254,64,32,16,8, + 7,7,9,0,1,8,68,130,127,2,4,8,8,7,7,9, + 0,1,16,34,69,254,68,36,16,8,7,7,9,0,1,8, + 68,162,127,34,36,8,9,5,10,9,0,2,34,0,73,0, + 247,128,65,0,34,0,9,5,10,9,0,2,34,0,73,0, + 255,128,73,0,34,0,5,10,10,9,2,0,32,64,72,184, + 200,16,16,160,120,32,6,10,10,9,1,0,32,64,252,68, + 36,4,4,4,4,4,7,10,10,9,1,0,8,4,254,132, + 136,128,128,128,128,128,6,10,10,9,1,0,4,4,4,4, + 4,36,68,252,64,32,7,10,10,9,1,0,128,128,128,128, + 128,136,132,254,4,8,7,8,8,9,1,0,248,8,8,8, + 8,42,28,8,7,8,8,9,1,1,2,2,2,34,66,254, + 64,32,9,7,14,9,0,2,14,0,17,0,32,128,32,128, + 168,128,112,0,32,0,9,7,14,9,0,2,56,0,68,0, + 130,0,130,0,138,128,7,0,2,0,7,10,10,9,1,0, + 254,64,112,96,80,8,8,4,2,2,7,9,9,9,1,0, + 144,160,254,160,146,10,254,10,18,9,7,14,9,0,1,50, + 0,71,0,138,128,130,0,130,0,68,0,56,0,9,7,14, + 9,0,1,38,0,113,0,168,128,32,128,32,128,17,0,14, + 0,7,4,4,9,1,3,16,32,64,254,7,4,4,9,1, + 0,254,64,32,16,4,10,10,9,4,0,128,192,160,144,128, + 128,128,128,128,128,4,10,10,9,1,0,16,48,80,144,16, + 16,16,16,16,16,7,4,4,9,1,3,16,8,4,254,7, + 4,4,9,1,0,254,4,8,16,4,10,10,9,4,0,128, + 128,128,128,128,128,144,160,192,128,4,10,10,9,1,0,16, + 16,16,16,16,16,144,80,48,16,7,9,9,9,1,0,8, + 4,254,4,40,64,254,64,32,9,10,20,9,0,0,34,0, + 114,0,170,0,34,0,34,0,34,0,34,0,42,128,39,0, + 34,0,7,9,9,9,1,0,32,64,254,64,40,4,254,4, + 8,7,10,10,9,1,0,32,64,254,64,32,32,64,254,64, + 32,9,10,20,9,0,0,34,0,119,0,170,128,34,0,34, + 0,34,0,34,0,34,0,34,0,34,0,7,10,10,9,1, + 0,8,4,254,4,8,8,4,254,4,8,9,10,20,9,0, + 0,34,0,34,0,34,0,34,0,34,0,34,0,34,0,170, + 128,119,0,34,0,7,7,7,9,1,1,32,64,254,0,254, + 4,8,7,7,7,9,1,1,8,4,254,0,254,64,32,9, + 7,14,9,0,1,16,0,33,0,127,128,130,0,127,128,36, + 0,16,0,9,7,14,9,0,1,20,0,34,0,127,0,136, + 128,127,0,34,0,20,0,9,7,14,9,0,1,4,0,18, + 0,255,0,32,128,255,0,66,0,4,0,9,7,14,9,0, + 1,16,0,32,0,127,128,128,0,127,128,32,0,16,0,7, + 10,10,9,1,0,16,40,108,170,40,40,40,40,40,40,9, + 7,14,9,0,1,4,0,2,0,255,0,0,128,255,0,2, + 0,4,0,7,10,10,9,1,0,40,40,40,40,40,40,170, + 108,40,16,9,7,14,9,0,1,20,0,34,0,127,0,128, + 128,127,0,34,0,20,0,7,10,10,9,1,0,16,40,108, + 170,40,40,170,108,40,16,7,7,7,9,1,1,252,144,136, + 196,162,144,8,7,7,7,9,1,1,126,18,34,70,138,18, + 32,7,7,7,9,1,1,32,18,138,70,34,18,126,7,7, + 7,9,1,1,8,144,162,196,136,144,252,9,9,18,9,0, + 0,8,0,16,0,63,128,64,0,255,128,64,0,63,128,16, + 0,8,0,9,9,18,9,0,0,8,0,4,0,254,0,1, + 0,255,128,1,0,254,0,4,0,8,0,8,7,7,9,0, + 1,16,32,72,245,66,32,16,8,7,7,9,0,1,8,4, + 18,175,66,4,8,7,10,10,9,1,0,16,56,84,146,16, + 124,16,124,16,16,7,10,10,9,1,0,16,16,124,16,124, + 16,146,84,56,16,7,7,7,9,1,1,16,32,64,182,64, + 32,16,7,10,10,9,1,0,16,40,84,146,0,16,16,0, + 16,16,7,7,7,9,1,1,16,8,4,218,4,8,16,7, + 10,10,9,1,0,16,16,0,16,16,0,146,84,40,16,7, + 5,5,9,1,2,144,160,254,160,144,7,5,5,9,1,2, + 18,10,254,10,18,9,7,14,9,0,1,16,0,48,0,95, + 128,128,128,95,128,48,0,16,0,7,10,10,9,1,0,16, + 40,68,238,40,40,40,40,40,56,9,7,14,9,0,1,4, + 0,6,0,253,0,128,128,253,0,6,0,4,0,7,10,10, + 9,1,0,56,40,40,40,40,40,238,68,40,16,7,11,11, + 9,1,0,16,40,68,238,40,40,56,0,56,40,56,7,11, + 11,9,1,255,16,40,68,238,40,40,40,40,108,68,124,7, + 11,11,9,1,255,16,40,68,254,40,40,40,40,108,68,124, + 7,11,11,9,1,255,16,40,68,254,56,56,56,56,124,68, + 124,7,11,11,9,1,255,16,40,68,238,68,238,40,40,40, + 40,56,7,11,11,9,1,255,16,40,68,238,68,238,40,40, + 108,68,124,9,7,14,9,0,1,132,0,134,0,253,0,128, + 128,253,0,134,0,132,0,7,7,7,9,1,0,254,128,188, + 176,168,164,130,7,7,7,9,1,0,130,74,42,26,122,2, + 254,7,11,11,9,1,255,16,40,68,238,40,40,40,238,68, + 40,16,9,7,14,9,0,1,4,0,50,0,73,0,255,128, + 73,0,50,0,4,0,9,10,20,9,0,0,34,0,39,0, + 42,128,34,0,34,0,34,0,34,0,170,0,114,0,34,0, + 7,13,13,9,1,254,8,4,254,4,8,4,254,4,8,4, + 254,4,8,8,5,5,9,0,2,36,68,255,68,36,8,5, + 5,9,0,2,36,34,255,34,36,9,5,10,9,0,2,42, + 0,73,0,255,128,73,0,42,0,8,5,5,9,0,2,42, + 74,255,74,42,8,5,5,9,0,2,84,82,255,82,84,9, + 5,10,9,0,2,85,0,148,128,255,128,148,128,85,0,7, + 7,7,9,1,1,16,48,80,158,80,48,16,7,7,7,9, + 1,1,16,24,20,242,20,24,16,8,5,5,9,0,2,36, + 102,189,102,36,9,7,14,9,0,5,255,128,255,128,255,128, + 255,128,255,128,255,128,255,128,9,2,4,9,0,253,255,128, + 255,128,9,4,8,9,0,253,255,128,255,128,255,128,255,128, + 9,6,12,9,0,253,255,128,255,128,255,128,255,128,255,128, + 255,128,9,8,16,9,0,253,255,128,255,128,255,128,255,128, + 255,128,255,128,255,128,255,128,9,9,18,9,0,253,255,128, + 255,128,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 9,11,22,9,0,253,255,128,255,128,255,128,255,128,255,128, + 255,128,255,128,255,128,255,128,255,128,255,128,9,13,26,9, + 0,253,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 255,128,255,128,255,128,255,128,255,128,255,128,9,15,30,9, + 0,253,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 255,128,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 8,15,15,9,0,253,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,7,15,15,9,0,253,254,254,254,254,254, + 254,254,254,254,254,254,254,254,254,254,6,15,15,9,0,253, + 252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,5, + 15,15,9,0,253,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,3,15,15,9,0,253,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,2,15,15,9,0,253,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,1,15, + 15,9,0,253,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,4,15,15,9,5,253,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,9,15,30,9,0,253,170,128, + 0,0,85,0,0,0,170,128,0,0,85,0,0,0,170,128, + 0,0,85,0,0,0,170,128,0,0,85,0,9,15,30,9, + 0,253,170,128,85,0,170,128,85,0,170,128,85,0,170,128, + 85,0,170,128,85,0,170,128,85,0,170,128,85,0,170,128, + 9,15,30,9,0,253,255,128,85,0,255,128,170,128,255,128, + 85,0,255,128,170,128,255,128,85,0,255,128,170,128,255,128, + 85,0,255,128,9,2,4,9,0,10,255,128,255,128,1,15, + 15,9,8,253,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,5,8,8,9,0,253,248,248,248,248,248,248,248, + 248,4,8,8,9,5,253,240,240,240,240,240,240,240,240,5, + 7,7,9,0,5,248,248,248,248,248,248,248,9,15,30,9, + 0,253,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 255,128,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 9,15,30,9,0,253,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,9,15,30,9,0,253,255,128,255,128,255,128, + 255,128,255,128,255,128,255,128,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,9,15,30,9,0,253,255,128, + 255,128,255,128,255,128,255,128,255,128,255,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,4,7,7,9, + 5,5,240,240,240,240,240,240,240,9,15,30,9,0,253,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,9,15,30, + 9,0,253,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,255,128,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,7,7,7,9,1,1,254,254,254,254,254,254,254,7,7, + 7,9,1,1,254,130,130,130,130,130,254,7,7,7,9,1, + 1,124,130,130,130,130,130,124,7,7,7,9,1,1,254,130, + 186,186,186,130,254,7,7,7,9,1,1,254,130,254,130,254, + 130,254,7,7,7,9,1,1,254,170,170,170,170,170,254,7, + 7,7,9,1,1,254,170,254,170,254,170,254,7,7,7,9, + 1,1,254,146,138,198,162,146,254,7,7,7,9,1,1,254, + 146,162,198,138,146,254,7,7,7,9,1,1,254,214,138,214, + 162,214,254,3,3,3,9,3,3,224,224,224,3,3,3,9, + 3,3,224,160,224,9,5,10,9,0,2,255,128,255,128,255, + 128,255,128,255,128,9,5,10,9,0,2,255,128,128,128,128, + 128,128,128,255,128,5,9,9,9,2,0,248,248,248,248,248, + 248,248,248,248,5,9,9,9,2,0,248,136,136,136,136,136, + 136,136,248,9,5,10,9,0,2,127,128,127,128,255,128,255, + 0,255,0,9,5,10,9,0,2,127,128,64,128,128,128,129, + 0,255,0,9,10,20,9,0,0,8,0,8,0,28,0,28, + 0,62,0,62,0,127,0,127,0,255,128,255,128,9,10,20, + 9,0,0,8,0,8,0,20,0,20,0,34,0,34,0,65, + 0,65,0,128,128,255,128,7,7,7,9,1,1,16,16,56, + 56,124,124,254,7,7,7,9,1,1,16,16,40,40,68,68, + 254,9,9,18,9,0,0,192,0,240,0,252,0,255,0,255, + 128,255,0,252,0,240,0,192,0,9,9,18,9,0,0,192, + 0,176,0,140,0,131,0,128,128,131,0,140,0,176,0,192, + 0,7,7,7,9,1,1,128,224,248,254,248,224,128,7,7, + 7,9,1,1,128,224,152,134,152,224,128,9,5,10,9,0, + 2,224,0,252,0,255,128,252,0,224,0,9,5,10,9,0, + 2,224,0,156,0,131,128,156,0,224,0,9,10,20,9,0, + 0,255,128,255,128,127,0,127,0,62,0,62,0,28,0,28, + 0,8,0,8,0,9,10,20,9,0,0,255,128,128,128,65, + 0,65,0,34,0,34,0,20,0,20,0,8,0,8,0,7, + 7,7,9,1,1,254,124,124,56,56,16,16,7,7,7,9, + 1,1,254,68,68,40,40,16,16,9,9,18,9,0,0,1, + 128,7,128,31,128,127,128,255,128,127,128,31,128,7,128,1, + 128,9,9,18,9,0,0,1,128,6,128,24,128,96,128,128, + 128,96,128,24,128,6,128,1,128,7,7,7,9,1,1,2, + 14,62,254,62,14,2,7,7,7,9,1,1,2,14,50,194, + 50,14,2,9,5,10,9,0,2,3,128,31,128,255,128,31, + 128,3,128,9,5,10,9,0,2,3,128,28,128,224,128,28, + 128,3,128,9,9,18,9,0,0,8,0,28,0,62,0,127, + 0,255,128,127,0,62,0,28,0,8,0,9,9,18,9,0, + 0,8,0,20,0,34,0,65,0,128,128,65,0,34,0,20, + 0,8,0,9,9,18,9,0,0,8,0,20,0,34,0,73, + 0,156,128,73,0,34,0,20,0,8,0,7,7,7,9,1, + 1,56,68,146,186,146,68,56,5,9,9,9,2,0,32,32, + 80,80,136,80,80,32,32,7,7,7,9,1,1,56,68,130, + 130,130,68,56,7,7,7,9,1,1,16,68,0,130,0,68, + 16,7,7,7,9,1,1,56,108,170,170,170,108,56,7,7, + 7,9,1,1,56,68,146,170,146,68,56,7,7,7,9,1, + 1,56,124,254,254,254,124,56,7,7,7,9,1,1,56,116, + 242,242,242,116,56,7,7,7,9,1,1,56,92,158,158,158, + 92,56,7,7,7,9,1,1,56,68,130,254,254,124,56,7, + 7,7,9,1,1,56,124,254,254,130,68,56,7,7,7,9, + 1,1,56,92,158,158,130,68,56,7,7,7,9,1,1,56, + 92,158,254,254,124,56,4,7,7,9,1,1,48,112,240,240, + 240,112,48,4,7,7,9,4,1,192,224,240,240,240,224,192, + 9,15,30,9,0,253,255,128,255,128,255,128,255,128,255,128, + 227,128,193,128,193,128,193,128,227,128,255,128,255,128,255,128, + 255,128,255,128,9,15,30,9,0,253,255,128,255,128,255,128, + 255,128,227,128,221,128,190,128,190,128,190,128,221,128,227,128, + 255,128,255,128,255,128,255,128,9,8,16,9,0,4,255,128, + 255,128,255,128,255,128,227,128,221,128,190,128,190,128,9,8, + 16,9,0,253,190,128,190,128,221,128,227,128,255,128,255,128, + 255,128,255,128,4,4,4,9,1,4,48,64,128,128,4,4, + 4,9,4,4,192,32,16,16,4,4,4,9,4,1,16,16, + 32,192,4,4,4,9,1,1,128,128,64,48,7,4,4,9, + 1,4,56,68,130,130,7,4,4,9,1,1,130,130,68,56, + 7,7,7,9,1,1,2,6,14,30,62,126,254,7,7,7, + 9,1,1,128,192,224,240,248,252,254,7,7,7,9,1,1, + 254,252,248,240,224,192,128,7,7,7,9,1,1,254,126,62, + 30,14,6,2,5,5,5,9,2,2,112,136,136,136,112,7, + 7,7,9,1,1,254,242,242,242,242,242,254,7,7,7,9, + 1,1,254,158,158,158,158,158,254,7,7,7,9,1,1,254, + 254,250,242,226,194,254,7,7,7,9,1,1,254,134,142,158, + 190,254,254,7,7,7,9,1,1,254,146,146,146,146,146,254, + 9,10,20,9,0,0,8,0,8,0,20,0,20,0,34,0, + 42,0,93,0,73,0,128,128,255,128,9,10,20,9,0,0, + 8,0,8,0,28,0,28,0,58,0,58,0,121,0,121,0, + 248,128,255,128,9,10,20,9,0,0,8,0,8,0,28,0, + 28,0,46,0,46,0,79,0,79,0,143,128,255,128,9,9, + 18,9,0,0,62,0,65,0,128,128,128,128,128,128,128,128, + 128,128,65,0,62,0,7,7,7,9,1,1,254,146,146,242, + 130,130,254,7,7,7,9,1,1,254,130,130,242,146,146,254, + 7,7,7,9,1,1,254,130,130,158,146,146,254,7,7,7, + 9,1,1,254,146,146,158,130,130,254,7,7,7,9,1,1, + 124,146,146,242,130,130,124,7,7,7,9,1,1,124,130,130, + 242,146,146,124,7,7,7,9,1,1,124,130,130,158,146,146, + 124,7,7,7,9,1,1,124,146,146,158,130,130,124,6,6, + 6,9,1,1,252,136,144,160,192,128,6,6,6,9,1,1, + 252,68,36,20,12,4,6,6,6,9,1,1,128,192,160,144, + 136,252,6,6,6,9,1,1,252,132,132,132,132,252,6,6, + 6,9,1,1,252,252,252,252,252,252,5,5,5,9,2,1, + 248,136,136,136,248,5,5,5,9,2,1,248,248,248,248,248, + 6,6,6,9,1,1,4,12,20,36,68,252}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--15-140-75-75-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 5 + Calculated Max Values w= 9 h=10 x= 3 y= 3 dx= 9 dy= 0 ascent=10 len=20 + Font Bounding box w= 9 h=15 x= 0 y=-3 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent =10 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x15_75r[792] U8G_SECTION(".progmem.u8g_font_9x15_75r") = { + 0,9,15,0,253,9,2,33,0,0,32,79,0,10,0,9, + 0,7,7,7,9,1,1,254,254,254,254,254,254,254,7,7, + 7,9,1,1,254,130,130,130,130,130,254,7,7,7,9,1, + 1,124,130,130,130,130,130,124,7,7,7,9,1,1,254,130, + 186,186,186,130,254,7,7,7,9,1,1,254,130,254,130,254, + 130,254,7,7,7,9,1,1,254,170,170,170,170,170,254,7, + 7,7,9,1,1,254,170,254,170,254,170,254,7,7,7,9, + 1,1,254,146,138,198,162,146,254,7,7,7,9,1,1,254, + 146,162,198,138,146,254,7,7,7,9,1,1,254,214,138,214, + 162,214,254,3,3,3,9,3,3,224,224,224,3,3,3,9, + 3,3,224,160,224,9,5,10,9,0,2,255,128,255,128,255, + 128,255,128,255,128,9,5,10,9,0,2,255,128,128,128,128, + 128,128,128,255,128,5,9,9,9,2,0,248,248,248,248,248, + 248,248,248,248,5,9,9,9,2,0,248,136,136,136,136,136, + 136,136,248,9,5,10,9,0,2,127,128,127,128,255,128,255, + 0,255,0,9,5,10,9,0,2,127,128,64,128,128,128,129, + 0,255,0,9,10,20,9,0,0,8,0,8,0,28,0,28, + 0,62,0,62,0,127,0,127,0,255,128,255,128,9,10,20, + 9,0,0,8,0,8,0,20,0,20,0,34,0,34,0,65, + 0,65,0,128,128,255,128,7,7,7,9,1,1,16,16,56, + 56,124,124,254,7,7,7,9,1,1,16,16,40,40,68,68, + 254,9,9,18,9,0,0,192,0,240,0,252,0,255,0,255, + 128,255,0,252,0,240,0,192,0,9,9,18,9,0,0,192, + 0,176,0,140,0,131,0,128,128,131,0,140,0,176,0,192, + 0,7,7,7,9,1,1,128,224,248,254,248,224,128,7,7, + 7,9,1,1,128,224,152,134,152,224,128,9,5,10,9,0, + 2,224,0,252,0,255,128,252,0,224,0,9,5,10,9,0, + 2,224,0,156,0,131,128,156,0,224,0,9,10,20,9,0, + 0,255,128,255,128,127,0,127,0,62,0,62,0,28,0,28, + 0,8,0,8,0,9,10,20,9,0,0,255,128,128,128,65, + 0,65,0,34,0,34,0,20,0,20,0,8,0,8,0,7, + 7,7,9,1,1,254,124,124,56,56,16,16,7,7,7,9, + 1,1,254,68,68,40,40,16,16,9,9,18,9,0,0,1, + 128,7,128,31,128,127,128,255,128,127,128,31,128,7,128,1, + 128,9,9,18,9,0,0,1,128,6,128,24,128,96,128,128, + 128,96,128,24,128,6,128,1,128,7,7,7,9,1,1,2, + 14,62,254,62,14,2,7,7,7,9,1,1,2,14,50,194, + 50,14,2,9,5,10,9,0,2,3,128,31,128,255,128,31, + 128,3,128,9,5,10,9,0,2,3,128,28,128,224,128,28, + 128,3,128,9,9,18,9,0,0,8,0,28,0,62,0,127, + 0,255,128,127,0,62,0,28,0,8,0,9,9,18,9,0, + 0,8,0,20,0,34,0,65,0,128,128,65,0,34,0,20, + 0,8,0,9,9,18,9,0,0,8,0,20,0,34,0,73, + 0,156,128,73,0,34,0,20,0,8,0,7,7,7,9,1, + 1,56,68,146,186,146,68,56,5,9,9,9,2,0,32,32, + 80,80,136,80,80,32,32,7,7,7,9,1,1,56,68,130, + 130,130,68,56,7,7,7,9,1,1,16,68,0,130,0,68, + 16,7,7,7,9,1,1,56,108,170,170,170,108,56,7,7, + 7,9,1,1,56,68,146,170,146,68,56,7,7,7,9,1, + 1,56,124,254,254,254,124,56}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--15-140-75-75-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 0, '1' Height: 9 + Calculated Max Values w= 9 h=13 x= 4 y= 5 dx= 9 dy= 0 ascent=12 len=26 + Font Bounding box w= 9 h=15 x= 0 y=-3 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =12 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x15_78_79[3795] U8G_SECTION(".progmem.u8g_font_9x15_78_79") = { + 0,9,15,0,253,9,2,231,4,175,32,255,0,12,254,11, + 0,9,9,18,9,0,0,62,0,28,0,136,128,201,128,247, + 128,201,128,136,128,28,0,62,0,9,9,18,9,0,0,8, + 0,20,0,255,128,162,128,65,0,162,128,255,128,20,0,8, + 0,9,9,18,9,0,0,8,0,28,0,8,0,73,0,255, + 128,73,0,8,0,28,0,8,0,9,9,18,9,0,0,8, + 0,28,0,28,0,107,0,255,128,107,0,28,0,28,0,8, + 0,9,9,18,9,0,0,8,0,28,0,28,0,107,0,255, + 128,107,0,28,0,28,0,8,0,9,9,18,9,0,0,8, + 0,28,0,28,0,107,0,255,128,107,0,28,0,28,0,8, + 0,9,9,18,9,0,0,8,0,8,0,28,0,62,0,255, + 128,62,0,28,0,8,0,8,0,9,9,18,9,0,0,8, + 0,20,0,20,0,99,0,128,128,99,0,20,0,20,0,8, + 0,255,9,9,18,9,0,0,8,0,8,0,20,0,247,128, + 65,0,34,0,73,0,85,0,99,0,9,10,20,9,0,0, + 127,0,247,128,247,128,227,128,0,0,128,128,193,128,201,128, + 156,128,127,0,9,9,18,9,0,0,8,0,8,0,28,0, + 227,128,99,0,34,0,62,0,119,0,65,0,9,9,18,9, + 0,0,8,0,8,0,20,0,235,128,93,0,42,0,34,0, + 127,0,65,0,9,9,18,9,0,0,8,0,8,0,20,0, + 235,128,93,0,42,0,34,0,127,0,65,0,9,9,18,9, + 0,0,8,0,8,0,20,0,235,128,93,0,42,0,34,0, + 127,0,65,0,9,9,18,9,0,0,8,0,8,0,20,0, + 247,128,73,0,54,0,42,0,127,0,65,0,8,7,7,9, + 0,2,24,24,44,199,46,60,102,8,9,9,9,0,0,24, + 219,255,126,24,126,255,219,24,8,9,9,9,0,0,24,219, + 255,102,36,102,255,219,24,9,9,18,9,0,0,8,0,73, + 0,42,0,28,0,255,128,28,0,42,0,73,0,8,0,9, + 9,18,9,0,0,8,0,73,0,62,0,62,0,255,128,62, + 0,62,0,73,0,8,0,9,9,18,9,0,0,8,0,73, + 0,54,0,62,0,213,128,62,0,54,0,73,0,8,0,9, + 9,18,9,0,0,8,0,136,128,107,0,62,0,28,0,62, + 0,107,0,136,128,8,0,9,9,18,9,0,0,34,0,20, + 0,148,128,127,0,28,0,127,0,148,128,20,0,34,0,9, + 9,18,9,0,0,34,0,54,0,255,128,127,0,62,0,127, + 0,255,128,54,0,34,0,9,9,18,9,0,0,42,0,42, + 0,221,128,62,0,255,128,62,0,221,128,42,0,42,0,9, + 9,18,9,0,0,42,0,42,0,221,128,42,0,255,128,42, + 0,221,128,42,0,42,0,9,11,22,9,0,0,28,0,28, + 0,201,128,201,128,34,0,8,0,34,0,201,128,201,128,28, + 0,28,0,9,11,22,9,0,0,28,0,28,0,201,128,201, + 128,62,0,20,0,62,0,201,128,201,128,28,0,28,0,9, + 11,22,9,0,0,28,0,28,0,201,128,201,128,62,0,28, + 0,62,0,201,128,201,128,28,0,28,0,9,11,22,9,0, + 0,28,0,20,0,201,128,201,128,62,0,20,0,127,0,170, + 128,201,128,28,0,28,0,8,9,9,9,0,0,24,24,219, + 255,36,36,126,231,66,255,255,255,8,9,9,9,0,0,24, + 203,189,110,24,118,189,211,24,9,12,24,9,0,0,8,0, + 42,0,93,0,170,128,107,0,221,128,221,128,107,0,170,128, + 93,0,42,0,8,0,9,12,24,9,0,0,8,0,42,0, + 93,0,170,128,107,0,221,128,221,128,107,0,170,128,93,0, + 42,0,8,0,9,12,24,9,0,0,8,0,42,0,93,0, + 170,128,107,0,221,128,221,128,107,0,170,128,93,0,42,0, + 8,0,9,9,18,9,0,0,8,0,73,0,42,0,20,0, + 235,128,20,0,42,0,73,0,8,0,9,9,18,9,0,0, + 8,0,73,0,42,0,20,0,235,128,20,0,42,0,73,0, + 8,0,8,9,9,9,0,0,24,219,203,60,24,60,211,219, + 24,9,9,18,9,0,0,8,0,73,0,42,0,0,0,235, + 128,0,0,42,0,73,0,8,0,9,9,18,9,0,0,8, + 0,73,0,42,0,28,0,255,128,28,0,42,0,73,0,8, + 0,255,9,8,16,9,0,1,62,0,67,0,129,128,129,128, + 129,128,129,128,67,0,62,0,255,9,9,18,9,0,0,254, + 0,130,0,131,128,131,128,131,128,131,128,255,128,63,128,63, + 128,9,9,18,9,0,0,63,128,63,128,255,128,131,128,131, + 128,131,128,131,128,130,0,254,0,8,8,8,9,0,0,254, + 131,131,131,131,131,255,127,8,8,8,9,0,0,127,255,131, + 131,131,131,131,254,255,255,255,9,9,18,9,0,0,8,0, + 28,0,8,0,65,0,227,128,65,0,8,0,28,0,8,0, + 255,1,10,10,9,4,0,128,128,128,128,128,128,128,128,128, + 128,2,10,10,9,3,0,192,192,192,192,192,192,192,192,192, + 192,3,10,10,9,3,0,224,224,224,224,224,224,224,224,224, + 224,4,6,6,9,3,5,112,128,224,240,240,96,4,6,6, + 9,3,5,96,240,240,112,16,224,9,6,12,9,0,5,115, + 128,132,0,231,0,247,128,247,128,99,0,9,6,12,9,0, + 5,99,0,247,128,247,128,115,128,16,128,231,0,255,255,7, + 10,10,9,1,0,4,126,228,228,228,124,4,100,104,48,5, + 10,10,9,2,0,112,248,248,112,32,32,0,32,112,32,5, + 10,10,9,2,0,80,248,248,112,32,32,0,32,112,32,9, + 9,18,9,0,0,99,0,247,128,255,128,255,128,127,0,62, + 0,28,0,8,0,8,0,9,9,18,9,0,0,112,0,248, + 0,252,0,126,0,63,128,126,0,252,0,248,0,112,0,9, + 12,24,9,0,0,8,0,116,128,149,0,14,0,4,0,107, + 0,247,128,255,128,127,0,62,0,28,0,8,0,9,12,24, + 9,0,0,16,0,41,0,82,0,156,0,32,0,88,0,124, + 0,60,0,254,0,254,128,255,0,126,0,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,9,9,18,9,0,0,127, + 0,247,128,231,128,247,128,247,128,247,128,247,128,227,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,253,128,251, + 128,247,128,237,128,193,128,127,0,9,9,18,9,0,0,127, + 0,227,128,221,128,253,128,243,128,253,128,221,128,227,128,127, + 0,9,9,18,9,0,0,127,0,243,128,235,128,219,128,193, + 128,251,128,251,128,251,128,127,0,9,9,18,9,0,0,127, + 0,193,128,223,128,223,128,195,128,253,128,253,128,195,128,127, + 0,9,9,18,9,0,0,127,0,225,128,223,128,223,128,195, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,193,128,253,128,251,128,251,128,247,128,247,128,247,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,221,128,227, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,225,128,221,128,221,128,225,128,253,128,253,128,227,128,127, + 0,9,9,18,9,0,0,127,0,219,128,213,128,213,128,213, + 128,213,128,213,128,219,128,127,0,9,9,18,9,0,0,127, + 0,128,128,136,128,152,128,136,128,136,128,136,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,152,128,132,128,132, + 128,136,128,156,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,152,128,132,128,136,128,132,128,152,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,136,128,152,128,168, + 128,188,128,136,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,156,128,144,128,152,128,132,128,152,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,140,128,144,128,152, + 128,148,128,136,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,156,128,132,128,136,128,136,128,136,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,136,128,148,128,136, + 128,148,128,136,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,136,128,148,128,140,128,132,128,136,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,164,128,170,128,170, + 128,170,128,164,128,128,128,127,0,9,9,18,9,0,0,127, + 0,247,128,231,128,247,128,247,128,247,128,247,128,247,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,253,128,251, + 128,247,128,239,128,193,128,127,0,9,9,18,9,0,0,127, + 0,227,128,221,128,253,128,243,128,253,128,221,128,227,128,127, + 0,9,9,18,9,0,0,127,0,243,128,235,128,219,128,193, + 128,251,128,251,128,251,128,127,0,9,9,18,9,0,0,127, + 0,193,128,223,128,223,128,195,128,253,128,253,128,195,128,127, + 0,9,9,18,9,0,0,127,0,225,128,223,128,223,128,195, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,193,128,253,128,251,128,251,128,247,128,247,128,247,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,221,128,227, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,225,128,221,128,221,128,225,128,253,128,253,128,227,128,127, + 0,9,9,18,9,0,0,127,0,219,128,213,128,213,128,213, + 128,213,128,213,128,219,128,127,0,7,8,8,9,1,1,48, + 24,12,254,254,12,24,48,255,255,255,7,5,5,9,1,1, + 224,250,62,14,30,8,7,7,9,1,1,8,12,230,255,230, + 12,8,7,5,5,9,1,1,30,14,62,250,224,9,7,14, + 9,0,0,48,0,28,0,31,0,255,128,31,0,28,0,48, + 0,9,9,18,9,0,0,28,0,30,0,15,0,255,128,255, + 128,255,128,15,0,30,0,28,0,9,5,10,9,0,1,2, + 0,3,0,255,128,3,0,2,0,9,7,14,9,0,0,4, + 0,6,0,255,0,255,128,255,0,6,0,4,0,9,5,10, + 9,0,1,2,0,183,0,183,128,183,0,2,0,9,5,10, + 9,0,1,2,0,171,0,171,128,171,0,2,0,9,5,10, + 9,0,1,2,0,255,0,255,128,255,0,2,0,9,8,16, + 9,0,1,128,0,112,0,78,0,33,128,31,128,62,0,112, + 0,128,0,9,8,16,9,0,1,128,0,112,0,62,0,31, + 128,33,128,78,0,112,0,128,0,9,8,16,9,0,1,128, + 0,112,0,62,0,31,128,31,128,62,0,112,0,128,0,9, + 7,14,9,0,0,132,0,134,0,255,0,255,128,127,0,6, + 0,4,0,9,7,14,9,0,0,4,0,6,0,127,0,255, + 128,255,0,134,0,132,0,6,9,9,9,2,0,16,16,248, + 248,252,248,248,16,16,8,9,9,9,0,1,4,4,254,254, + 255,254,254,4,4,9,9,18,9,0,0,24,0,28,0,22, + 0,243,0,129,128,243,0,22,0,28,0,24,0,9,9,18, + 9,0,0,24,0,28,0,26,0,249,0,192,128,249,0,26, + 0,28,0,24,0,9,9,18,9,0,0,0,128,1,128,62, + 128,64,128,129,128,243,0,238,0,60,0,56,0,9,9,18, + 9,0,0,56,0,60,0,238,0,243,0,129,128,64,128,62, + 128,1,128,0,128,8,9,9,9,0,1,16,24,20,242,129, + 243,118,28,24,8,9,9,9,0,1,24,28,118,243,129,242, + 20,24,16,9,7,14,9,0,2,4,0,250,0,129,0,64, + 128,129,128,251,0,6,0,255,9,7,14,9,0,2,6,0, + 251,0,129,128,64,128,129,0,250,0,4,0,9,9,18,9, + 0,1,28,0,127,0,251,128,1,128,0,128,1,128,251,128, + 127,0,28,0,9,5,10,9,0,3,210,0,43,0,127,128, + 43,0,210,0,9,9,18,9,0,0,16,0,56,0,92,0, + 236,0,116,0,60,0,2,128,1,128,3,128,9,5,10,9, + 0,2,242,0,123,0,7,128,123,0,242,0,9,9,18,9, + 0,0,3,128,1,128,2,128,60,0,116,0,236,0,92,0, + 56,0,16,0,9,9,18,9,0,0,16,0,24,0,28,0, + 252,0,124,0,60,0,2,128,1,128,3,128,9,5,10,9, + 0,2,242,0,123,0,127,128,123,0,242,0,9,9,18,9, + 0,0,3,128,1,128,2,128,60,0,124,0,252,0,28,0, + 24,0,16,0,9,7,14,9,0,1,3,0,3,0,113,0, + 255,128,113,0,3,0,3,0,9,7,14,9,0,1,2,0, + 115,0,121,0,255,128,121,0,115,0,2,0,9,5,10,9, + 0,2,242,0,123,0,63,128,123,0,242,0,9,7,14,9, + 0,1,226,0,242,0,123,0,63,128,123,0,242,0,226,0, + 9,7,14,9,0,1,20,0,10,0,253,0,0,128,253,0, + 10,0,20,0,255,7,7,7,9,1,0,130,132,136,144,160, + 192,254,9,10,20,9,0,0,8,0,8,0,20,0,20,0, + 42,0,42,0,85,0,93,0,128,128,255,128,7,10,10,9, + 1,0,16,16,16,16,16,16,16,16,16,254,7,7,7,9, + 1,1,62,64,132,138,132,64,62,7,7,7,9,1,1,248, + 4,66,162,66,4,248,5,12,12,9,2,255,112,136,136,16, + 16,32,32,64,64,128,128,112,5,12,12,9,2,255,112,136, + 136,64,64,32,32,16,16,8,8,112,7,8,8,9,1,0, + 130,146,84,68,40,40,16,16,8,10,10,9,0,255,128,143, + 144,80,80,80,80,47,32,32,8,10,10,9,0,255,1,241, + 9,10,10,10,10,244,4,4,3,10,10,9,3,0,64,64, + 64,64,224,64,64,64,64,64,255,255,255,255,255,9,9,18, + 9,0,0,8,0,20,0,34,0,65,0,136,128,65,0,34, + 0,20,0,8,0,7,8,8,9,1,0,16,16,40,40,68, + 84,146,130,7,7,7,9,1,1,146,146,146,146,146,84,56, + 7,7,7,9,1,1,2,2,2,18,2,2,254,7,7,7, + 9,1,1,254,128,128,144,128,128,128,8,11,11,9,0,255, + 193,99,99,85,85,73,85,85,99,99,193,8,11,11,9,1, + 255,131,198,198,170,170,146,170,170,198,198,131,9,11,22,9, + 0,255,193,128,99,0,99,0,85,0,85,0,73,0,85,0, + 85,0,99,0,99,0,193,128,9,13,26,9,0,254,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,255,128,9,13,26,9,0,254,255,128, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,7,7,7,9,1,1,40,40, + 238,40,238,40,40,7,7,7,9,1,1,40,40,40,238,40, + 40,40,7,3,3,9,1,3,64,190,64,9,5,10,9,0, + 2,128,0,128,0,255,128,128,0,128,0,9,5,10,9,0, + 2,0,128,0,128,255,128,0,128,0,128,5,10,10,9,2, + 0,32,80,32,32,32,32,32,32,32,248,5,9,9,9,2, + 0,32,32,80,80,248,80,80,32,32,7,9,9,9,1,0, + 16,16,16,40,198,40,16,16,16,8,9,9,9,0,0,8, + 8,8,20,227,20,8,8,8,8,9,9,9,1,0,16,16, + 16,40,199,40,16,16,16,8,7,7,9,0,1,127,65,65, + 193,65,65,127,8,7,7,9,1,1,254,130,130,131,130,130, + 254,5,12,12,9,2,255,248,160,160,160,160,160,160,160,160, + 160,160,248,5,12,12,9,2,255,248,40,40,40,40,40,40, + 40,40,40,40,248,3,10,10,9,3,0,32,32,64,64,128, + 128,64,64,32,32,3,10,10,9,3,0,128,128,64,64,32, + 32,64,64,128,128,6,10,10,9,1,0,36,36,72,72,144, + 144,72,72,36,36,6,10,10,9,2,0,144,144,72,72,36, + 36,72,72,144,144,255,255,255,255,9,11,22,9,0,0,8, + 0,20,0,54,0,85,0,213,128,85,0,85,0,85,0,85, + 0,85,0,85,0,9,11,22,9,0,255,85,0,85,0,85, + 0,85,0,85,0,85,0,213,128,85,0,54,0,20,0,8, + 0,8,8,8,9,0,0,28,34,169,113,33,1,34,28,8, + 8,8,9,0,0,56,68,149,142,132,128,68,56,9,5,10, + 9,0,2,114,0,169,0,255,128,169,0,114,0,9,5,10, + 9,0,2,32,0,64,0,255,128,64,0,32,0,9,5,10, + 9,0,2,2,0,1,0,255,128,1,0,2,0,9,5,10, + 9,0,2,34,0,65,0,255,128,65,0,34,0,9,7,14, + 9,0,1,16,0,32,0,127,128,128,0,127,128,32,0,16, + 0,9,7,14,9,0,1,4,0,2,0,255,0,0,128,255, + 0,2,0,4,0,9,7,14,9,0,1,20,0,34,0,127, + 0,128,128,127,0,34,0,20,0,9,5,10,9,0,2,32, + 128,64,128,255,128,64,128,32,128,9,5,10,9,0,2,130, + 0,129,0,255,128,129,0,130,0,9,7,14,9,0,1,16, + 128,32,128,127,128,128,128,127,128,32,128,16,128,9,7,14, + 9,0,1,132,0,130,0,255,0,128,128,255,0,130,0,132, + 0,9,6,12,9,0,1,2,0,1,0,85,128,170,128,1, + 0,2,0}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--15-140-75-75-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 9 h=14 x= 4 y=12 dx= 9 dy= 0 ascent=12 len=20 + Font Bounding box w= 9 h=15 x= 0 y=-3 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x15B[2990] U8G_SECTION(".progmem.u8g_font_9x15B") = { + 0,9,15,0,253,10,1,232,3,214,32,255,253,12,253,11, + 253,0,0,0,9,0,12,2,10,10,9,3,0,192,192,192, + 192,192,192,192,192,0,192,5,3,3,9,2,7,216,216,216, + 7,8,8,9,1,1,108,108,254,108,108,254,108,108,7,11, + 11,9,1,255,16,124,214,208,240,124,30,22,214,124,16,8, + 10,10,9,0,0,67,230,230,76,24,24,50,103,103,194,8, + 10,10,9,0,0,56,108,108,120,48,121,207,198,206,123,2, + 4,4,9,3,6,192,192,192,192,5,12,12,9,2,255,24, + 48,96,96,192,192,192,192,96,96,48,24,5,12,12,9,2, + 255,192,96,48,48,24,24,24,24,48,48,96,192,7,5,5, + 9,1,2,108,56,254,56,108,8,7,7,9,0,1,24,24, + 24,255,24,24,24,3,5,5,9,3,253,224,224,96,96,192, + 8,1,1,9,0,4,255,4,3,3,9,2,255,96,240,96, + 8,10,10,9,0,0,3,6,6,12,24,24,48,96,96,192, + 8,10,10,9,0,0,24,60,102,195,195,195,195,102,60,24, + 6,10,10,9,1,0,48,112,240,48,48,48,48,48,48,252, + 8,10,10,9,0,0,60,102,195,3,6,12,24,48,96,255, + 8,10,10,9,0,0,124,198,3,6,28,6,3,3,198,124, + 8,10,10,9,0,0,6,14,30,54,102,198,255,6,6,6, + 8,10,10,9,0,0,254,192,192,220,230,3,3,195,102,60, + 8,10,10,9,0,0,60,102,194,192,220,230,195,195,102,60, + 8,10,10,9,0,0,255,3,3,6,12,12,24,24,24,24, + 8,10,10,9,0,0,60,102,195,102,60,102,195,195,102,60, + 8,10,10,9,0,0,60,102,195,195,103,59,3,67,102,60, + 4,8,8,9,2,255,96,240,96,0,0,96,240,96,4,10, + 10,9,2,253,96,240,96,0,0,112,112,48,48,96,6,10, + 10,9,1,0,12,24,48,96,192,192,96,48,24,12,8,4, + 4,9,0,2,255,0,0,255,6,10,10,9,1,0,192,96, + 48,24,12,12,24,48,96,192,7,10,10,9,1,0,124,198, + 198,6,12,24,48,0,48,48,8,10,10,9,0,0,60,102, + 195,207,219,219,206,192,99,62,8,10,10,9,0,0,24,60, + 102,195,195,195,255,195,195,195,8,10,10,9,0,0,252,198, + 195,198,252,198,195,195,198,252,8,10,10,9,0,0,62,99, + 193,192,192,192,192,193,99,62,8,10,10,9,0,0,252,198, + 195,195,195,195,195,195,198,252,7,10,10,9,1,0,254,192, + 192,192,252,192,192,192,192,254,8,10,10,9,0,0,255,192, + 192,192,252,192,192,192,192,192,8,10,10,9,0,0,62,99, + 192,192,192,199,195,195,99,62,8,10,10,9,0,0,195,195, + 195,195,255,195,195,195,195,195,6,10,10,9,1,0,252,48, + 48,48,48,48,48,48,48,252,6,10,10,9,1,0,60,12, + 12,12,12,12,12,140,216,112,8,10,10,9,0,0,195,198, + 204,216,240,240,216,204,198,195,7,10,10,9,1,0,192,192, + 192,192,192,192,192,192,192,254,8,10,10,9,0,0,195,231, + 255,219,219,219,195,195,195,195,8,10,10,9,0,0,195,227, + 243,243,219,219,207,199,199,195,8,10,10,9,0,0,60,102, + 195,195,195,195,195,195,102,60,8,10,10,9,0,0,254,195, + 195,195,254,192,192,192,192,192,8,10,10,9,0,0,60,102, + 195,195,195,195,219,207,102,61,8,10,10,9,0,0,254,195, + 195,195,254,248,204,198,195,195,8,10,10,9,0,0,126,195, + 192,192,126,3,3,3,195,126,8,10,10,9,0,0,255,24, + 24,24,24,24,24,24,24,24,8,10,10,9,0,0,195,195, + 195,195,195,195,195,195,102,60,8,10,10,9,0,0,195,195, + 195,102,102,102,60,60,24,24,8,10,10,9,0,0,195,195, + 195,195,219,219,219,255,231,195,8,10,10,9,0,0,195,195, + 102,60,24,24,60,102,195,195,8,10,10,9,0,0,195,195, + 102,60,24,24,24,24,24,24,7,10,10,9,1,0,254,6, + 6,12,24,48,96,192,192,254,5,12,12,9,2,255,248,192, + 192,192,192,192,192,192,192,192,192,248,8,10,10,9,0,0, + 192,96,96,48,24,24,12,6,6,3,5,12,12,9,2,255, + 248,24,24,24,24,24,24,24,24,24,24,248,6,4,4,9, + 1,6,48,120,204,132,8,1,1,9,0,255,255,4,3,3, + 9,2,8,192,96,48,8,7,7,9,0,0,62,99,3,127, + 195,199,123,8,10,10,9,0,0,192,192,192,220,230,195,195, + 195,230,220,8,7,7,9,0,0,62,99,192,192,192,99,62, + 8,10,10,9,0,0,3,3,3,59,103,195,195,195,103,59, + 8,7,7,9,0,0,60,102,195,255,192,99,62,8,10,10, + 9,0,0,30,51,51,48,48,252,48,48,48,48,8,10,10, + 9,0,253,125,199,198,198,124,192,126,195,195,126,8,10,10, + 9,0,0,192,192,192,220,230,195,195,195,195,195,6,10,10, + 9,1,0,48,48,0,112,48,48,48,48,48,252,7,13,13, + 9,1,253,6,6,0,30,6,6,6,6,6,198,198,198,124, + 7,10,10,9,1,0,192,192,192,204,216,240,240,216,204,198, + 6,10,10,9,1,0,112,48,48,48,48,48,48,48,48,252, + 8,7,7,9,0,0,182,219,219,219,219,219,219,8,7,7, + 9,0,0,220,230,195,195,195,195,195,8,7,7,9,0,0, + 60,102,195,195,195,102,60,8,10,10,9,0,253,220,230,195, + 195,195,230,220,192,192,192,8,10,10,9,0,253,59,103,195, + 195,195,103,59,3,3,3,8,7,7,9,0,0,222,115,96, + 96,96,96,96,8,7,7,9,0,0,126,195,192,126,3,195, + 126,8,9,9,9,0,0,48,48,252,48,48,48,48,51,30, + 8,7,7,9,0,0,195,195,195,195,195,103,59,8,7,7, + 9,0,0,195,195,102,102,60,60,24,8,7,7,9,0,0, + 195,195,219,219,219,255,102,8,7,7,9,0,0,195,102,60, + 24,60,102,195,8,10,10,9,0,253,195,195,195,195,195,103, + 59,3,198,124,6,7,7,9,1,0,252,12,24,48,96,192, + 252,5,12,12,9,2,255,56,96,96,96,96,192,192,96,96, + 96,96,56,2,10,10,9,3,0,192,192,192,192,192,192,192, + 192,192,192,5,12,12,9,2,255,224,48,48,48,48,24,24, + 48,48,48,48,224,8,3,3,9,0,7,115,219,206,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0, + 0,0,9,0,12,2,10,10,9,4,0,192,0,192,192,192, + 192,192,192,192,192,7,8,8,9,1,0,4,124,206,208,208, + 230,124,64,8,10,10,9,0,255,30,51,48,48,124,48,48, + 248,191,224,7,7,7,9,1,2,198,254,108,68,108,254,198, + 8,10,10,9,0,0,195,195,102,60,126,24,126,24,24,24, + 2,11,11,9,4,255,192,192,192,192,192,0,0,192,192,192, + 192,6,11,11,9,1,255,120,204,192,120,204,204,204,120,12, + 204,120,6,2,2,9,1,9,204,204,8,11,11,9,0,0, + 60,126,195,189,165,161,165,189,195,126,60,5,7,7,9,1, + 3,240,24,248,152,248,0,248,8,8,8,9,0,1,27,54, + 108,216,216,108,54,27,7,5,5,9,1,2,254,254,6,6, + 6,6,1,1,9,1,4,252,8,11,11,9,0,0,60,126, + 195,189,165,189,169,173,195,126,60,6,2,2,9,1,9,252, + 252,6,4,4,9,2,6,120,204,204,120,8,10,10,9,0, + 0,24,24,24,255,255,24,24,24,255,255,5,7,7,9,1, + 4,112,152,24,48,96,192,248,5,7,7,9,1,4,112,152, + 24,48,24,152,112,4,3,3,9,2,8,48,96,192,7,10, + 10,9,1,253,198,198,198,198,198,238,250,192,192,192,7,10, + 10,9,1,0,126,254,246,246,246,118,54,54,54,54,3,3, + 3,9,3,3,64,224,64,5,3,3,9,2,253,24,216,112, + 4,7,7,9,1,4,96,224,96,96,96,96,240,5,6,6, + 9,1,4,112,216,216,112,0,248,8,8,8,9,0,1,216, + 108,54,27,27,54,108,216,8,11,11,9,0,0,96,224,96, + 96,97,99,247,15,27,31,3,8,11,11,9,0,0,96,224, + 96,96,110,115,243,6,12,24,31,8,11,11,9,0,0,112, + 152,24,48,25,155,119,15,27,31,3,7,10,10,9,1,0, + 24,24,0,24,48,96,192,198,198,124,8,12,12,9,0,0, + 96,48,24,0,60,102,195,195,255,195,195,195,8,12,12,9, + 0,0,6,12,24,0,60,102,195,195,255,195,195,195,8,12, + 12,9,0,0,24,60,102,0,60,102,195,195,255,195,195,195, + 8,12,12,9,0,0,50,126,76,0,60,102,195,195,255,195, + 195,195,8,11,11,9,0,0,102,102,0,60,102,195,195,255, + 195,195,195,8,12,12,9,0,0,24,36,36,24,60,102,195, + 195,255,195,195,195,8,10,10,9,0,0,31,60,108,108,204, + 255,204,204,204,207,8,13,13,9,0,253,62,99,193,192,192, + 192,192,193,99,62,12,108,56,7,12,12,9,1,0,96,48, + 24,0,254,192,192,252,192,192,192,254,7,12,12,9,1,0, + 12,24,48,0,254,192,192,252,192,192,192,254,7,12,12,9, + 1,0,24,60,102,0,254,192,192,252,192,192,192,254,7,11, + 11,9,1,0,102,102,0,254,192,192,252,192,192,192,254,6, + 12,12,9,1,0,192,96,48,0,252,48,48,48,48,48,48, + 252,6,12,12,9,1,0,24,48,96,0,252,48,48,48,48, + 48,48,252,6,12,12,9,1,0,48,120,204,0,252,48,48, + 48,48,48,48,252,6,11,11,9,1,0,204,204,0,252,48, + 48,48,48,48,48,252,9,10,20,9,0,0,126,0,99,0, + 97,128,97,128,249,128,249,128,97,128,97,128,99,0,126,0, + 8,12,12,9,0,0,50,126,76,0,195,227,243,251,223,207, + 199,195,8,12,12,9,0,0,96,48,24,0,60,102,195,195, + 195,195,102,60,8,12,12,9,0,0,6,12,24,0,60,102, + 195,195,195,195,102,60,8,12,12,9,0,0,24,60,102,0, + 60,102,195,195,195,195,102,60,8,12,12,9,0,0,50,126, + 76,0,60,102,195,195,195,195,102,60,8,11,11,9,0,0, + 102,102,0,60,102,195,195,195,195,102,60,7,8,8,9,1, + 0,130,198,108,56,56,108,198,130,8,12,12,9,0,255,1, + 63,102,199,203,203,211,211,227,102,252,128,8,12,12,9,0, + 0,96,48,24,0,195,195,195,195,195,195,102,60,8,12,12, + 9,0,0,6,12,24,0,195,195,195,195,195,195,102,60,8, + 12,12,9,0,0,24,60,102,0,195,195,195,195,195,195,102, + 60,8,11,11,9,0,0,102,102,0,195,195,195,195,195,195, + 102,60,8,12,12,9,0,0,6,12,24,0,195,102,60,24, + 24,24,24,24,7,10,10,9,1,0,240,96,124,102,102,102, + 124,96,96,240,7,10,10,9,1,0,60,102,198,204,216,204, + 198,198,198,220,8,11,11,9,0,0,96,48,24,0,62,67, + 3,127,195,199,123,8,11,11,9,0,0,12,24,48,0,62, + 67,3,127,195,199,123,8,11,11,9,0,0,24,60,102,0, + 62,67,3,127,195,199,123,8,11,11,9,0,0,50,126,76, + 0,62,67,3,127,195,199,123,8,10,10,9,0,0,102,102, + 0,62,67,3,127,195,199,123,8,11,11,9,0,0,24,36, + 36,24,62,67,3,127,195,199,123,8,7,7,9,0,0,118, + 155,27,126,216,217,110,8,10,10,9,0,253,62,99,192,192, + 192,99,62,12,108,56,8,11,11,9,0,0,96,48,24,0, + 60,102,195,255,192,99,62,8,11,11,9,0,0,12,24,48, + 0,60,102,195,255,192,99,62,8,11,11,9,0,0,24,60, + 102,0,60,102,195,255,192,99,62,8,10,10,9,0,0,102, + 102,0,60,102,195,255,192,99,62,6,11,11,9,1,0,192, + 96,48,0,112,48,48,48,48,48,252,6,11,11,9,1,0, + 24,48,96,0,112,48,48,48,48,48,252,6,11,11,9,1, + 0,48,120,204,0,112,48,48,48,48,48,252,6,10,10,9, + 1,0,204,204,0,112,48,48,48,48,48,252,8,12,12,9, + 0,0,136,216,112,112,216,140,62,103,195,195,102,60,8,11, + 11,9,0,0,50,126,76,0,220,230,195,195,195,195,195,8, + 11,11,9,0,0,96,48,24,0,60,102,195,195,195,102,60, + 8,11,11,9,0,0,12,24,48,0,60,102,195,195,195,102, + 60,8,11,11,9,0,0,24,60,102,0,60,102,195,195,195, + 102,60,8,11,11,9,0,0,50,126,76,0,60,102,195,195, + 195,102,60,8,10,10,9,0,0,102,102,0,60,102,195,195, + 195,102,60,8,10,10,9,0,0,24,24,0,0,255,255,0, + 0,24,24,8,9,9,9,0,255,1,63,102,207,219,243,102, + 252,128,8,11,11,9,0,0,96,48,24,0,195,195,195,195, + 195,103,59,8,11,11,9,0,0,12,24,48,0,195,195,195, + 195,195,103,59,8,11,11,9,0,0,24,60,102,0,195,195, + 195,195,195,103,59,8,10,10,9,0,0,102,102,0,195,195, + 195,195,195,103,59,8,14,14,9,0,253,12,24,48,0,195, + 195,195,195,195,103,59,3,198,124,7,12,12,9,1,253,224, + 96,96,124,102,102,102,102,124,96,96,224,8,13,13,9,0, + 253,102,102,0,195,195,195,195,195,103,59,3,198,124}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--15-140-75-75-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 8 h=13 x= 3 y=12 dx= 9 dy= 0 ascent=12 len=13 + Font Bounding box w= 9 h=15 x= 0 y=-3 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x15Br[1423] U8G_SECTION(".progmem.u8g_font_9x15Br") = { + 0,9,15,0,253,10,1,232,3,214,32,127,253,12,253,11, + 253,0,0,0,9,0,12,2,10,10,9,3,0,192,192,192, + 192,192,192,192,192,0,192,5,3,3,9,2,7,216,216,216, + 7,8,8,9,1,1,108,108,254,108,108,254,108,108,7,11, + 11,9,1,255,16,124,214,208,240,124,30,22,214,124,16,8, + 10,10,9,0,0,67,230,230,76,24,24,50,103,103,194,8, + 10,10,9,0,0,56,108,108,120,48,121,207,198,206,123,2, + 4,4,9,3,6,192,192,192,192,5,12,12,9,2,255,24, + 48,96,96,192,192,192,192,96,96,48,24,5,12,12,9,2, + 255,192,96,48,48,24,24,24,24,48,48,96,192,7,5,5, + 9,1,2,108,56,254,56,108,8,7,7,9,0,1,24,24, + 24,255,24,24,24,3,5,5,9,3,253,224,224,96,96,192, + 8,1,1,9,0,4,255,4,3,3,9,2,255,96,240,96, + 8,10,10,9,0,0,3,6,6,12,24,24,48,96,96,192, + 8,10,10,9,0,0,24,60,102,195,195,195,195,102,60,24, + 6,10,10,9,1,0,48,112,240,48,48,48,48,48,48,252, + 8,10,10,9,0,0,60,102,195,3,6,12,24,48,96,255, + 8,10,10,9,0,0,124,198,3,6,28,6,3,3,198,124, + 8,10,10,9,0,0,6,14,30,54,102,198,255,6,6,6, + 8,10,10,9,0,0,254,192,192,220,230,3,3,195,102,60, + 8,10,10,9,0,0,60,102,194,192,220,230,195,195,102,60, + 8,10,10,9,0,0,255,3,3,6,12,12,24,24,24,24, + 8,10,10,9,0,0,60,102,195,102,60,102,195,195,102,60, + 8,10,10,9,0,0,60,102,195,195,103,59,3,67,102,60, + 4,8,8,9,2,255,96,240,96,0,0,96,240,96,4,10, + 10,9,2,253,96,240,96,0,0,112,112,48,48,96,6,10, + 10,9,1,0,12,24,48,96,192,192,96,48,24,12,8,4, + 4,9,0,2,255,0,0,255,6,10,10,9,1,0,192,96, + 48,24,12,12,24,48,96,192,7,10,10,9,1,0,124,198, + 198,6,12,24,48,0,48,48,8,10,10,9,0,0,60,102, + 195,207,219,219,206,192,99,62,8,10,10,9,0,0,24,60, + 102,195,195,195,255,195,195,195,8,10,10,9,0,0,252,198, + 195,198,252,198,195,195,198,252,8,10,10,9,0,0,62,99, + 193,192,192,192,192,193,99,62,8,10,10,9,0,0,252,198, + 195,195,195,195,195,195,198,252,7,10,10,9,1,0,254,192, + 192,192,252,192,192,192,192,254,8,10,10,9,0,0,255,192, + 192,192,252,192,192,192,192,192,8,10,10,9,0,0,62,99, + 192,192,192,199,195,195,99,62,8,10,10,9,0,0,195,195, + 195,195,255,195,195,195,195,195,6,10,10,9,1,0,252,48, + 48,48,48,48,48,48,48,252,6,10,10,9,1,0,60,12, + 12,12,12,12,12,140,216,112,8,10,10,9,0,0,195,198, + 204,216,240,240,216,204,198,195,7,10,10,9,1,0,192,192, + 192,192,192,192,192,192,192,254,8,10,10,9,0,0,195,231, + 255,219,219,219,195,195,195,195,8,10,10,9,0,0,195,227, + 243,243,219,219,207,199,199,195,8,10,10,9,0,0,60,102, + 195,195,195,195,195,195,102,60,8,10,10,9,0,0,254,195, + 195,195,254,192,192,192,192,192,8,10,10,9,0,0,60,102, + 195,195,195,195,219,207,102,61,8,10,10,9,0,0,254,195, + 195,195,254,248,204,198,195,195,8,10,10,9,0,0,126,195, + 192,192,126,3,3,3,195,126,8,10,10,9,0,0,255,24, + 24,24,24,24,24,24,24,24,8,10,10,9,0,0,195,195, + 195,195,195,195,195,195,102,60,8,10,10,9,0,0,195,195, + 195,102,102,102,60,60,24,24,8,10,10,9,0,0,195,195, + 195,195,219,219,219,255,231,195,8,10,10,9,0,0,195,195, + 102,60,24,24,60,102,195,195,8,10,10,9,0,0,195,195, + 102,60,24,24,24,24,24,24,7,10,10,9,1,0,254,6, + 6,12,24,48,96,192,192,254,5,12,12,9,2,255,248,192, + 192,192,192,192,192,192,192,192,192,248,8,10,10,9,0,0, + 192,96,96,48,24,24,12,6,6,3,5,12,12,9,2,255, + 248,24,24,24,24,24,24,24,24,24,24,248,6,4,4,9, + 1,6,48,120,204,132,8,1,1,9,0,255,255,4,3,3, + 9,2,8,192,96,48,8,7,7,9,0,0,62,99,3,127, + 195,199,123,8,10,10,9,0,0,192,192,192,220,230,195,195, + 195,230,220,8,7,7,9,0,0,62,99,192,192,192,99,62, + 8,10,10,9,0,0,3,3,3,59,103,195,195,195,103,59, + 8,7,7,9,0,0,60,102,195,255,192,99,62,8,10,10, + 9,0,0,30,51,51,48,48,252,48,48,48,48,8,10,10, + 9,0,253,125,199,198,198,124,192,126,195,195,126,8,10,10, + 9,0,0,192,192,192,220,230,195,195,195,195,195,6,10,10, + 9,1,0,48,48,0,112,48,48,48,48,48,252,7,13,13, + 9,1,253,6,6,0,30,6,6,6,6,6,198,198,198,124, + 7,10,10,9,1,0,192,192,192,204,216,240,240,216,204,198, + 6,10,10,9,1,0,112,48,48,48,48,48,48,48,48,252, + 8,7,7,9,0,0,182,219,219,219,219,219,219,8,7,7, + 9,0,0,220,230,195,195,195,195,195,8,7,7,9,0,0, + 60,102,195,195,195,102,60,8,10,10,9,0,253,220,230,195, + 195,195,230,220,192,192,192,8,10,10,9,0,253,59,103,195, + 195,195,103,59,3,3,3,8,7,7,9,0,0,222,115,96, + 96,96,96,96,8,7,7,9,0,0,126,195,192,126,3,195, + 126,8,9,9,9,0,0,48,48,252,48,48,48,48,51,30, + 8,7,7,9,0,0,195,195,195,195,195,103,59,8,7,7, + 9,0,0,195,195,102,102,60,60,24,8,7,7,9,0,0, + 195,195,219,219,219,255,102,8,7,7,9,0,0,195,102,60, + 24,60,102,195,8,10,10,9,0,253,195,195,195,195,195,103, + 59,3,198,124,6,7,7,9,1,0,252,12,24,48,96,192, + 252,5,12,12,9,2,255,56,96,96,96,96,192,192,96,96, + 96,96,56,2,10,10,9,3,0,192,192,192,192,192,192,192, + 192,192,192,5,12,12,9,2,255,224,48,48,48,48,24,24, + 48,48,48,48,224,8,3,3,9,0,7,115,219,206,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--15-140-75-75-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 8 h=14 x= 4 y=12 dx= 9 dy= 0 ascent=12 len=14 + Font Bounding box w= 9 h=15 x= 0 y=-3 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x15[2959] U8G_SECTION(".progmem.u8g_font_9x15") = { + 0,9,15,0,253,10,1,232,3,216,32,255,253,12,253,11, + 253,0,0,0,9,0,12,1,11,11,9,4,0,128,128,128, + 128,128,128,128,0,0,128,128,4,3,3,9,3,7,144,144, + 144,6,8,8,9,1,1,72,72,252,72,72,252,72,72,7, + 11,11,9,1,255,16,124,146,144,80,56,20,18,146,124,16, + 7,10,10,9,1,0,66,164,164,72,16,16,36,74,74,132, + 7,10,10,9,1,0,96,144,144,144,96,98,148,136,148,98, + 1,3,3,9,4,7,128,128,128,3,12,12,9,3,255,32, + 64,64,128,128,128,128,128,128,64,64,32,3,12,12,9,3, + 255,128,64,64,32,32,32,32,32,32,64,64,128,7,7,7, + 9,1,3,16,146,84,56,84,146,16,7,7,7,9,1,1, + 16,16,16,254,16,16,16,2,5,5,9,4,253,192,192,64, + 64,128,7,1,1,9,1,4,254,2,2,2,9,4,0,192, + 192,7,10,10,9,1,0,2,4,4,8,16,16,32,64,64, + 128,7,10,10,9,1,0,56,68,130,130,130,130,130,130,68, + 56,7,10,10,9,1,0,16,48,80,144,16,16,16,16,16, + 254,7,10,10,9,1,0,124,130,130,4,8,16,32,64,128, + 254,7,10,10,9,1,0,254,2,4,8,28,2,2,2,130, + 124,7,10,10,9,1,0,4,12,20,36,68,132,254,4,4, + 4,7,10,10,9,1,0,254,128,128,188,194,2,2,2,130, + 124,7,10,10,9,1,0,60,64,128,128,188,194,130,130,130, + 124,7,10,10,9,1,0,254,2,4,4,8,8,16,16,32, + 32,7,10,10,9,1,0,56,68,130,68,56,68,130,130,68, + 56,7,10,10,9,1,0,124,130,130,130,134,122,2,2,4, + 120,2,7,7,9,4,0,192,192,0,0,0,192,192,2,10, + 10,9,4,253,192,192,0,0,0,192,192,64,64,128,5,10, + 10,9,2,0,8,16,32,64,128,128,64,32,16,8,7,4, + 4,9,1,2,254,0,0,254,5,10,10,9,2,0,128,64, + 32,16,8,8,16,32,64,128,7,10,10,9,1,0,124,130, + 130,2,4,8,16,16,0,16,7,10,10,9,1,0,124,130, + 130,158,162,166,154,128,128,124,7,10,10,9,1,0,16,40, + 68,130,130,130,254,130,130,130,7,10,10,9,1,0,248,132, + 130,132,248,132,130,130,132,248,7,10,10,9,1,0,124,130, + 128,128,128,128,128,128,130,124,7,10,10,9,1,0,248,132, + 130,130,130,130,130,130,132,248,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,254,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,128,7,10,10,9,1,0,124,130, + 128,128,128,142,130,130,130,124,7,10,10,9,1,0,130,130, + 130,130,254,130,130,130,130,130,5,10,10,9,2,0,248,32, + 32,32,32,32,32,32,32,248,8,10,10,9,1,0,31,4, + 4,4,4,4,4,4,132,120,7,10,10,9,1,0,130,132, + 136,144,224,160,144,136,132,130,7,10,10,9,1,0,128,128, + 128,128,128,128,128,128,128,254,7,10,10,9,1,0,130,130, + 198,170,170,146,146,130,130,130,7,10,10,9,1,0,130,130, + 194,162,146,138,134,130,130,130,7,10,10,9,1,0,124,130, + 130,130,130,130,130,130,130,124,7,10,10,9,1,0,252,130, + 130,130,252,128,128,128,128,128,7,12,12,9,1,254,124,130, + 130,130,130,130,130,162,146,124,8,6,7,10,10,9,1,0, + 252,130,130,130,252,144,136,132,130,130,7,10,10,9,1,0, + 124,130,130,128,112,12,2,130,130,124,7,10,10,9,1,0, + 254,16,16,16,16,16,16,16,16,16,7,10,10,9,1,0, + 130,130,130,130,130,130,130,130,130,124,7,10,10,9,1,0, + 130,130,130,68,68,68,40,40,40,16,7,10,10,9,1,0, + 130,130,130,130,146,146,146,146,170,68,7,10,10,9,1,0, + 130,130,68,40,16,16,40,68,130,130,7,10,10,9,1,0, + 130,130,68,40,16,16,16,16,16,16,7,10,10,9,1,0, + 254,2,4,8,16,32,64,128,128,254,4,12,12,9,3,255, + 240,128,128,128,128,128,128,128,128,128,128,240,7,10,10,9, + 1,0,128,64,64,32,16,16,8,4,4,2,4,12,12,9, + 2,255,240,16,16,16,16,16,16,16,16,16,16,240,7,4, + 4,9,1,6,16,40,68,130,8,1,1,9,0,255,255,3, + 3,3,9,3,8,128,64,32,7,7,7,9,1,0,124,2, + 2,126,130,134,122,7,10,10,9,1,0,128,128,128,188,194, + 130,130,130,194,188,7,7,7,9,1,0,124,130,128,128,128, + 130,124,7,10,10,9,1,0,2,2,2,122,134,130,130,130, + 134,122,7,7,7,9,1,0,124,130,130,254,128,128,124,7, + 10,10,9,1,0,28,34,34,32,32,248,32,32,32,32,7, + 10,10,9,1,253,122,132,132,132,120,128,124,130,130,124,7, + 10,10,9,1,0,128,128,128,188,194,130,130,130,130,130,5, + 10,10,9,2,0,96,0,0,224,32,32,32,32,32,248,6, + 13,13,9,1,253,12,0,0,28,4,4,4,4,4,132,132, + 132,120,7,10,10,9,1,0,128,128,128,130,140,176,192,176, + 140,130,5,10,10,9,2,0,224,32,32,32,32,32,32,32, + 32,248,7,7,7,9,1,0,236,146,146,146,146,146,130,7, + 7,7,9,1,0,188,194,130,130,130,130,130,7,7,7,9, + 1,0,124,130,130,130,130,130,124,7,10,10,9,1,253,188, + 194,130,130,130,194,188,128,128,128,7,10,10,9,1,253,122, + 134,130,130,130,134,122,2,2,2,7,7,7,9,1,0,156, + 98,66,64,64,64,64,7,7,7,9,1,0,124,130,128,124, + 2,130,124,7,9,9,9,1,0,32,32,252,32,32,32,32, + 34,28,7,7,7,9,1,0,132,132,132,132,132,132,122,7, + 7,7,9,1,0,130,130,68,68,40,40,16,7,7,7,9, + 1,0,130,130,146,146,146,170,68,7,7,7,9,1,0,130, + 68,40,16,40,68,130,6,10,10,9,1,253,132,132,132,132, + 132,140,116,4,132,120,7,7,7,9,1,0,254,4,8,16, + 32,64,254,5,12,12,9,3,255,56,64,64,64,32,192,192, + 32,64,64,64,56,1,12,12,9,4,255,128,128,128,128,128, + 128,128,128,128,128,128,128,5,12,12,9,1,255,224,16,16, + 16,32,24,24,32,16,16,16,224,7,3,3,9,1,7,98, + 146,140,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,9,0,12,1,11,11,9,4,0,128, + 128,0,0,128,128,128,128,128,128,128,6,8,8,9,1,0, + 8,120,148,144,160,164,120,64,7,10,10,9,1,0,28,34, + 32,32,248,32,32,96,162,92,7,6,6,9,1,3,130,124, + 68,68,124,130,7,10,10,9,1,0,130,130,68,40,124,16, + 124,16,16,16,1,11,11,9,4,255,128,128,128,128,128,0, + 128,128,128,128,128,4,11,11,9,2,255,96,144,128,96,144, + 144,144,96,16,144,96,5,2,2,9,2,9,136,136,8,9, + 9,9,0,1,60,66,153,165,161,165,153,66,60,5,7,7, + 9,1,3,96,144,112,144,120,0,248,7,8,8,9,1,1, + 18,36,72,144,144,72,36,18,6,4,4,9,1,2,252,4, + 4,4,5,1,1,9,2,4,248,8,9,9,9,0,1,60, + 66,185,165,185,169,165,66,60,6,1,1,9,1,9,252,4, + 4,4,9,3,6,96,144,144,96,7,9,9,9,1,1,16, + 16,16,254,16,16,16,0,254,4,6,6,9,1,4,96,144, + 16,96,128,240,4,6,6,9,1,4,96,144,32,16,144,96, + 3,3,3,9,3,8,32,64,128,7,9,9,9,1,254,130, + 130,130,130,130,198,186,128,128,7,10,10,9,1,0,126,138, + 138,138,122,10,10,10,10,10,2,2,2,9,4,4,192,192, + 4,3,3,9,2,253,48,144,96,3,6,6,9,1,4,64, + 192,64,64,64,224,5,6,6,9,1,4,112,136,136,112,0, + 248,7,8,8,9,1,1,144,72,36,18,18,36,72,144,7, + 10,10,9,1,0,64,192,64,64,66,230,10,18,26,6,7, + 10,10,9,1,0,64,192,64,64,76,242,2,12,16,30,7, + 10,10,9,1,0,96,144,32,16,146,102,10,18,26,6,7, + 10,10,9,1,0,16,0,16,16,32,64,128,130,130,124,7, + 12,12,9,1,0,64,32,16,0,56,68,130,130,254,130,130, + 130,7,12,12,9,1,0,4,8,16,0,56,68,130,130,254, + 130,130,130,7,12,12,9,1,0,16,40,68,0,56,68,130, + 130,254,130,130,130,7,11,11,9,1,0,98,156,0,56,68, + 130,130,254,130,130,130,7,11,11,9,1,0,68,68,0,56, + 68,130,130,254,130,130,130,7,11,11,9,1,0,56,68,56, + 40,68,130,130,254,130,130,130,7,10,10,9,1,0,110,144, + 144,144,144,252,144,144,144,158,7,13,13,9,1,253,124,130, + 128,128,128,128,128,128,130,124,24,72,48,7,12,12,9,1, + 0,64,32,16,0,254,64,64,120,64,64,64,254,7,12,12, + 9,1,0,4,8,16,0,254,64,64,120,64,64,64,254,7, + 12,12,9,1,0,16,40,68,0,254,64,64,120,64,64,64, + 254,7,11,11,9,1,0,68,68,0,254,64,64,120,64,64, + 64,254,5,12,12,9,2,0,128,64,32,0,248,32,32,32, + 32,32,32,248,5,12,12,9,2,0,8,16,32,0,248,32, + 32,32,32,32,32,248,5,12,12,9,2,0,32,80,136,0, + 248,32,32,32,32,32,32,248,5,11,11,9,2,0,136,136, + 0,248,32,32,32,32,32,32,248,8,10,10,9,0,0,124, + 66,65,65,225,65,65,65,66,124,7,11,11,9,1,0,98, + 156,0,130,194,162,146,146,138,134,130,7,12,12,9,1,0, + 64,32,16,0,124,130,130,130,130,130,130,124,7,12,12,9, + 1,0,4,8,16,0,124,130,130,130,130,130,130,124,7,12, + 12,9,1,0,16,40,68,0,124,130,130,130,130,130,130,124, + 7,11,11,9,1,0,98,156,0,124,130,130,130,130,130,130, + 124,7,11,11,9,1,0,68,68,0,124,130,130,130,130,130, + 130,124,7,7,7,9,1,1,130,68,40,16,40,68,130,7, + 12,12,9,1,255,2,124,134,138,138,146,146,162,162,194,124, + 128,7,12,12,9,1,0,64,32,16,0,130,130,130,130,130, + 130,130,124,7,12,12,9,1,0,4,8,16,0,130,130,130, + 130,130,130,130,124,7,12,12,9,1,0,16,40,68,0,130, + 130,130,130,130,130,130,124,7,11,11,9,1,0,68,68,0, + 130,130,130,130,130,130,130,124,7,12,12,9,1,0,4,8, + 16,0,130,130,68,40,16,16,16,16,7,10,10,9,1,0, + 128,128,252,130,130,130,252,128,128,128,6,10,10,9,1,0, + 56,68,68,72,208,72,68,68,68,88,7,11,11,9,1,0, + 32,16,8,0,124,2,2,126,130,134,122,7,11,11,9,1, + 0,4,8,16,0,124,2,2,126,130,134,122,7,11,11,9, + 1,0,16,40,68,0,124,2,2,126,130,134,122,7,10,10, + 9,1,0,50,76,0,124,2,2,126,130,134,122,7,10,10, + 9,1,0,68,68,0,124,2,2,126,130,134,122,7,11,11, + 9,1,0,24,36,24,0,124,2,2,126,130,134,122,7,7, + 7,9,1,0,108,146,18,124,144,146,110,7,10,10,9,1, + 253,124,130,128,128,128,130,124,24,72,48,7,11,11,9,1, + 0,64,32,16,0,124,130,130,254,128,128,124,7,11,11,9, + 1,0,4,8,16,0,124,130,130,254,128,128,124,7,11,11, + 9,1,0,16,40,68,0,124,130,130,254,128,128,124,7,10, + 10,9,1,0,68,68,0,124,130,130,254,128,128,124,5,11, + 11,9,2,0,128,64,32,0,224,32,32,32,32,32,248,5, + 11,11,9,2,0,16,32,64,0,224,32,32,32,32,32,248, + 6,11,11,9,1,0,32,80,136,0,112,16,16,16,16,16, + 124,5,10,10,9,2,0,144,144,0,224,32,32,32,32,32, + 248,7,11,11,9,1,0,72,48,80,8,124,130,130,130,130, + 130,124,7,10,10,9,1,0,98,156,0,188,194,130,130,130, + 130,130,7,11,11,9,1,0,64,32,16,0,124,130,130,130, + 130,130,124,7,11,11,9,1,0,4,8,16,0,124,130,130, + 130,130,130,124,7,11,11,9,1,0,16,40,68,0,124,130, + 130,130,130,130,124,7,10,10,9,1,0,98,156,0,124,130, + 130,130,130,130,124,7,10,10,9,1,0,68,68,0,124,130, + 130,130,130,130,124,7,9,9,9,1,0,16,56,16,0,254, + 0,16,56,16,7,9,9,9,1,255,2,124,138,138,146,162, + 162,124,128,7,11,11,9,1,0,64,32,16,0,132,132,132, + 132,132,132,122,7,11,11,9,1,0,4,8,16,0,132,132, + 132,132,132,132,122,7,11,11,9,1,0,16,40,68,0,132, + 132,132,132,132,132,122,7,10,10,9,1,0,72,72,0,132, + 132,132,132,132,132,122,6,14,14,9,1,253,8,16,32,0, + 132,132,132,132,132,140,116,4,132,120,7,12,12,9,1,253, + 128,128,128,188,194,130,130,194,188,128,128,128,6,13,13,9, + 1,253,72,72,0,132,132,132,132,132,140,116,4,132,120}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--15-140-75-75-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 8 h=13 x= 4 y=12 dx= 9 dy= 0 ascent=12 len=13 + Font Bounding box w= 9 h=15 x= 0 y=-3 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x15r[1427] U8G_SECTION(".progmem.u8g_font_9x15r") = { + 0,9,15,0,253,10,1,232,3,216,32,127,253,12,253,11, + 253,0,0,0,9,0,12,1,11,11,9,4,0,128,128,128, + 128,128,128,128,0,0,128,128,4,3,3,9,3,7,144,144, + 144,6,8,8,9,1,1,72,72,252,72,72,252,72,72,7, + 11,11,9,1,255,16,124,146,144,80,56,20,18,146,124,16, + 7,10,10,9,1,0,66,164,164,72,16,16,36,74,74,132, + 7,10,10,9,1,0,96,144,144,144,96,98,148,136,148,98, + 1,3,3,9,4,7,128,128,128,3,12,12,9,3,255,32, + 64,64,128,128,128,128,128,128,64,64,32,3,12,12,9,3, + 255,128,64,64,32,32,32,32,32,32,64,64,128,7,7,7, + 9,1,3,16,146,84,56,84,146,16,7,7,7,9,1,1, + 16,16,16,254,16,16,16,2,5,5,9,4,253,192,192,64, + 64,128,7,1,1,9,1,4,254,2,2,2,9,4,0,192, + 192,7,10,10,9,1,0,2,4,4,8,16,16,32,64,64, + 128,7,10,10,9,1,0,56,68,130,130,130,130,130,130,68, + 56,7,10,10,9,1,0,16,48,80,144,16,16,16,16,16, + 254,7,10,10,9,1,0,124,130,130,4,8,16,32,64,128, + 254,7,10,10,9,1,0,254,2,4,8,28,2,2,2,130, + 124,7,10,10,9,1,0,4,12,20,36,68,132,254,4,4, + 4,7,10,10,9,1,0,254,128,128,188,194,2,2,2,130, + 124,7,10,10,9,1,0,60,64,128,128,188,194,130,130,130, + 124,7,10,10,9,1,0,254,2,4,4,8,8,16,16,32, + 32,7,10,10,9,1,0,56,68,130,68,56,68,130,130,68, + 56,7,10,10,9,1,0,124,130,130,130,134,122,2,2,4, + 120,2,7,7,9,4,0,192,192,0,0,0,192,192,2,10, + 10,9,4,253,192,192,0,0,0,192,192,64,64,128,5,10, + 10,9,2,0,8,16,32,64,128,128,64,32,16,8,7,4, + 4,9,1,2,254,0,0,254,5,10,10,9,2,0,128,64, + 32,16,8,8,16,32,64,128,7,10,10,9,1,0,124,130, + 130,2,4,8,16,16,0,16,7,10,10,9,1,0,124,130, + 130,158,162,166,154,128,128,124,7,10,10,9,1,0,16,40, + 68,130,130,130,254,130,130,130,7,10,10,9,1,0,248,132, + 130,132,248,132,130,130,132,248,7,10,10,9,1,0,124,130, + 128,128,128,128,128,128,130,124,7,10,10,9,1,0,248,132, + 130,130,130,130,130,130,132,248,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,254,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,128,7,10,10,9,1,0,124,130, + 128,128,128,142,130,130,130,124,7,10,10,9,1,0,130,130, + 130,130,254,130,130,130,130,130,5,10,10,9,2,0,248,32, + 32,32,32,32,32,32,32,248,8,10,10,9,1,0,31,4, + 4,4,4,4,4,4,132,120,7,10,10,9,1,0,130,132, + 136,144,224,160,144,136,132,130,7,10,10,9,1,0,128,128, + 128,128,128,128,128,128,128,254,7,10,10,9,1,0,130,130, + 198,170,170,146,146,130,130,130,7,10,10,9,1,0,130,130, + 194,162,146,138,134,130,130,130,7,10,10,9,1,0,124,130, + 130,130,130,130,130,130,130,124,7,10,10,9,1,0,252,130, + 130,130,252,128,128,128,128,128,7,12,12,9,1,254,124,130, + 130,130,130,130,130,162,146,124,8,6,7,10,10,9,1,0, + 252,130,130,130,252,144,136,132,130,130,7,10,10,9,1,0, + 124,130,130,128,112,12,2,130,130,124,7,10,10,9,1,0, + 254,16,16,16,16,16,16,16,16,16,7,10,10,9,1,0, + 130,130,130,130,130,130,130,130,130,124,7,10,10,9,1,0, + 130,130,130,68,68,68,40,40,40,16,7,10,10,9,1,0, + 130,130,130,130,146,146,146,146,170,68,7,10,10,9,1,0, + 130,130,68,40,16,16,40,68,130,130,7,10,10,9,1,0, + 130,130,68,40,16,16,16,16,16,16,7,10,10,9,1,0, + 254,2,4,8,16,32,64,128,128,254,4,12,12,9,3,255, + 240,128,128,128,128,128,128,128,128,128,128,240,7,10,10,9, + 1,0,128,64,64,32,16,16,8,4,4,2,4,12,12,9, + 2,255,240,16,16,16,16,16,16,16,16,16,16,240,7,4, + 4,9,1,6,16,40,68,130,8,1,1,9,0,255,255,3, + 3,3,9,3,8,128,64,32,7,7,7,9,1,0,124,2, + 2,126,130,134,122,7,10,10,9,1,0,128,128,128,188,194, + 130,130,130,194,188,7,7,7,9,1,0,124,130,128,128,128, + 130,124,7,10,10,9,1,0,2,2,2,122,134,130,130,130, + 134,122,7,7,7,9,1,0,124,130,130,254,128,128,124,7, + 10,10,9,1,0,28,34,34,32,32,248,32,32,32,32,7, + 10,10,9,1,253,122,132,132,132,120,128,124,130,130,124,7, + 10,10,9,1,0,128,128,128,188,194,130,130,130,130,130,5, + 10,10,9,2,0,96,0,0,224,32,32,32,32,32,248,6, + 13,13,9,1,253,12,0,0,28,4,4,4,4,4,132,132, + 132,120,7,10,10,9,1,0,128,128,128,130,140,176,192,176, + 140,130,5,10,10,9,2,0,224,32,32,32,32,32,32,32, + 32,248,7,7,7,9,1,0,236,146,146,146,146,146,130,7, + 7,7,9,1,0,188,194,130,130,130,130,130,7,7,7,9, + 1,0,124,130,130,130,130,130,124,7,10,10,9,1,253,188, + 194,130,130,130,194,188,128,128,128,7,10,10,9,1,253,122, + 134,130,130,130,134,122,2,2,2,7,7,7,9,1,0,156, + 98,66,64,64,64,64,7,7,7,9,1,0,124,130,128,124, + 2,130,124,7,9,9,9,1,0,32,32,252,32,32,32,32, + 34,28,7,7,7,9,1,0,132,132,132,132,132,132,122,7, + 7,7,9,1,0,130,130,68,68,40,40,16,7,7,7,9, + 1,0,130,130,146,146,146,170,68,7,7,7,9,1,0,130, + 68,40,16,40,68,130,6,10,10,9,1,253,132,132,132,132, + 132,140,116,4,132,120,7,7,7,9,1,0,254,4,8,16, + 32,64,254,5,12,12,9,3,255,56,64,64,64,32,192,192, + 32,64,64,64,56,1,12,12,9,4,255,128,128,128,128,128, + 128,128,128,128,128,128,128,5,12,12,9,1,255,224,16,16, + 16,32,24,24,32,16,16,16,224,7,3,3,9,1,7,98, + 146,140,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--18-120-100-100-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 4, '1' Height: 10 + Calculated Max Values w= 9 h=18 x= 8 y=12 dx= 9 dy= 0 ascent=14 len=36 + Font Bounding box w= 9 h=18 x= 0 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent = 4 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =14 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x18_67_75[3936] U8G_SECTION(".progmem.u8g_font_9x18_67_75") = { + 0,9,18,0,252,4,1,255,4,34,32,255,0,14,252,10, + 0,8,7,7,9,0,1,72,36,18,255,18,36,72,7,10, + 10,9,1,0,16,16,16,146,84,56,146,84,56,16,7,7, + 7,9,1,1,16,34,68,248,68,34,16,7,7,7,9,1, + 1,16,136,68,62,68,136,16,7,7,7,9,1,1,16,34, + 66,254,66,34,16,7,10,10,9,1,0,16,56,84,146,16, + 16,16,16,16,124,7,7,7,9,1,1,16,136,132,254,132, + 136,16,7,10,10,9,1,0,124,16,16,16,16,16,146,84, + 56,16,7,10,10,9,1,0,16,56,84,146,16,146,84,56, + 16,254,8,7,7,9,0,1,16,34,65,254,64,32,16,8, + 7,7,9,0,1,8,68,130,127,2,4,8,8,7,7,9, + 0,1,16,34,69,254,68,36,16,8,7,7,9,0,1,8, + 68,162,127,34,36,8,9,5,10,9,0,2,34,0,73,0, + 247,128,65,0,34,0,9,5,10,9,0,2,34,0,73,0, + 255,128,73,0,34,0,5,10,10,9,2,0,32,64,72,184, + 200,16,16,160,120,32,6,10,10,9,1,0,32,64,252,68, + 36,4,4,4,4,4,7,10,10,9,1,0,8,4,254,132, + 136,128,128,128,128,128,6,10,10,9,1,0,4,4,4,4, + 4,36,68,252,64,32,7,10,10,9,1,0,128,128,128,128, + 128,136,132,254,4,8,7,8,8,9,1,0,248,8,8,8, + 8,42,28,8,7,8,8,9,1,1,2,2,2,34,66,254, + 64,32,9,7,14,9,0,2,14,0,17,0,32,128,32,128, + 168,128,112,0,32,0,9,7,14,9,0,2,56,0,68,0, + 130,0,130,0,138,128,7,0,2,0,7,10,10,9,1,0, + 254,64,112,96,80,8,8,4,2,2,7,9,9,9,1,0, + 144,160,254,160,146,10,254,10,18,9,7,14,9,0,1,50, + 0,71,0,138,128,130,0,130,0,68,0,56,0,9,7,14, + 9,0,1,38,0,113,0,168,128,32,128,32,128,17,0,14, + 0,7,4,4,9,1,3,16,32,64,254,7,4,4,9,1, + 0,254,64,32,16,4,10,10,9,4,0,128,192,160,144,128, + 128,128,128,128,128,4,10,10,9,1,0,16,48,80,144,16, + 16,16,16,16,16,7,4,4,9,1,3,16,8,4,254,7, + 4,4,9,1,0,254,4,8,16,4,10,10,9,4,0,128, + 128,128,128,128,128,144,160,192,128,4,10,10,9,1,0,16, + 16,16,16,16,16,144,80,48,16,7,9,9,9,1,0,8, + 4,254,4,40,64,254,64,32,9,10,20,9,0,0,34,0, + 114,0,170,0,34,0,34,0,34,0,34,0,42,128,39,0, + 34,0,7,9,9,9,1,0,32,64,254,64,40,4,254,4, + 8,7,10,10,9,1,0,32,64,254,64,32,32,64,254,64, + 32,9,10,20,9,0,0,34,0,119,0,170,128,34,0,34, + 0,34,0,34,0,34,0,34,0,34,0,7,10,10,9,1, + 0,8,4,254,4,8,8,4,254,4,8,9,10,20,9,0, + 0,34,0,34,0,34,0,34,0,34,0,34,0,34,0,170, + 128,119,0,34,0,7,7,7,9,1,1,32,64,254,0,254, + 4,8,7,7,7,9,1,1,8,4,254,0,254,64,32,9, + 7,14,9,0,1,16,0,33,0,127,128,130,0,127,128,36, + 0,16,0,9,7,14,9,0,1,20,0,34,0,127,0,136, + 128,127,0,34,0,20,0,9,7,14,9,0,1,4,0,18, + 0,255,0,32,128,255,0,66,0,4,0,9,7,14,9,0, + 1,16,0,32,0,127,128,128,0,127,128,32,0,16,0,7, + 10,10,9,1,0,16,40,108,170,40,40,40,40,40,40,9, + 7,14,9,0,1,4,0,2,0,255,0,0,128,255,0,2, + 0,4,0,7,10,10,9,1,0,40,40,40,40,40,40,170, + 108,40,16,9,7,14,9,0,1,20,0,34,0,127,0,128, + 128,127,0,34,0,20,0,7,10,10,9,1,0,16,40,108, + 170,40,40,170,108,40,16,7,7,7,9,1,1,252,144,136, + 196,162,144,8,7,7,7,9,1,1,126,18,34,70,138,18, + 32,7,7,7,9,1,1,32,18,138,70,34,18,126,7,7, + 7,9,1,1,8,144,162,196,136,144,252,9,9,18,9,0, + 0,8,0,16,0,63,128,64,0,255,128,64,0,63,128,16, + 0,8,0,9,9,18,9,0,0,8,0,4,0,254,0,1, + 0,255,128,1,0,254,0,4,0,8,0,8,7,7,9,0, + 1,16,32,72,245,66,32,16,8,7,7,9,0,1,8,4, + 18,175,66,4,8,7,10,10,9,1,0,16,56,84,146,16, + 124,16,124,16,16,7,10,10,9,1,0,16,16,124,16,124, + 16,146,84,56,16,7,7,7,9,1,1,16,32,64,182,64, + 32,16,7,10,10,9,1,0,16,40,84,146,0,16,16,0, + 16,16,7,7,7,9,1,1,16,8,4,218,4,8,16,7, + 10,10,9,1,0,16,16,0,16,16,0,146,84,40,16,7, + 5,5,9,1,2,144,160,254,160,144,7,5,5,9,1,2, + 18,10,254,10,18,9,7,14,9,0,1,16,0,48,0,95, + 128,128,128,95,128,48,0,16,0,7,10,10,9,1,0,16, + 40,68,238,40,40,40,40,40,56,9,7,14,9,0,1,4, + 0,6,0,253,0,128,128,253,0,6,0,4,0,7,10,10, + 9,1,0,56,40,40,40,40,40,238,68,40,16,7,11,11, + 9,1,0,16,40,68,238,40,40,56,0,56,40,56,7,11, + 11,9,1,255,16,40,68,238,40,40,40,40,108,68,124,7, + 11,11,9,1,255,16,40,68,254,40,40,40,40,108,68,124, + 7,11,11,9,1,255,16,40,68,254,56,56,56,56,124,68, + 124,7,10,10,9,1,0,16,40,68,238,68,238,40,40,40, + 56,7,11,11,9,1,255,16,40,68,238,68,238,40,40,108, + 68,124,9,7,14,9,0,1,132,0,134,0,253,0,128,128, + 253,0,134,0,132,0,7,7,7,9,1,0,252,128,184,176, + 168,132,2,7,7,7,9,1,0,128,66,42,26,58,2,126, + 7,11,11,9,1,255,16,40,68,238,40,40,40,238,68,40, + 16,9,7,14,9,0,1,4,0,50,0,73,0,255,128,73, + 0,50,0,4,0,9,10,20,9,0,0,34,0,39,0,42, + 128,34,0,34,0,34,0,34,0,170,0,114,0,34,0,7, + 13,13,9,1,254,8,4,254,4,8,4,254,4,8,4,254, + 4,8,8,5,5,9,0,2,36,68,255,68,36,8,5,5, + 9,0,2,36,34,255,34,36,9,5,10,9,0,2,42,0, + 73,0,255,128,73,0,42,0,8,5,5,9,0,2,42,74, + 255,74,42,8,5,5,9,0,2,84,82,255,82,84,9,5, + 10,9,0,2,85,0,148,128,255,128,148,128,85,0,7,7, + 7,9,1,1,16,48,80,158,80,48,16,7,7,7,9,1, + 1,16,24,20,242,20,24,16,8,5,5,9,0,2,36,102, + 189,102,36,9,9,18,9,0,5,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,9,2,4,9,0, + 252,255,128,255,128,9,4,8,9,0,252,255,128,255,128,255, + 128,255,128,9,7,14,9,0,252,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,9,9,18,9,0,252,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,255,128,255,128,9, + 11,22,9,0,252,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,9,14,28,9,0, + 252,255,128,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,255,128,9,16,32, + 9,0,252,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,9,18,36,9,0,252,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,255,128,8,18,18, + 9,0,252,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,7,18,18,9,0,252,254,254,254,254,254, + 254,254,254,254,254,254,254,254,254,254,254,254,254,6,18,18, + 9,0,252,252,252,252,252,252,252,252,252,252,252,252,252,252, + 252,252,252,252,252,5,18,18,9,0,252,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,3,18,18, + 9,0,252,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,2,18,18,9,0,252,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,1,18,18, + 9,0,252,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,4,18,18,9,5,252,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,9,17,34, + 9,0,253,85,0,0,0,170,128,0,0,85,0,0,0,170, + 128,0,0,85,0,0,0,170,128,0,0,85,0,0,0,170, + 128,0,0,85,0,9,18,36,9,0,252,170,128,85,0,170, + 128,85,0,170,128,85,0,170,128,85,0,170,128,85,0,170, + 128,85,0,170,128,85,0,170,128,85,0,170,128,85,0,9, + 18,36,9,0,252,255,128,170,128,255,128,85,0,255,128,170, + 128,255,128,85,0,255,128,170,128,255,128,85,0,255,128,170, + 128,255,128,85,0,255,128,170,128,9,2,4,9,0,12,255, + 128,255,128,1,18,18,9,8,252,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,5,9,9,9,0, + 252,248,248,248,248,248,248,248,248,248,4,9,9,9,5,252, + 240,240,240,240,240,240,240,240,240,5,9,9,9,0,5,248, + 248,248,248,248,248,248,248,248,9,18,36,9,0,252,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 255,128,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 255,128,9,18,36,9,0,252,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,9,18,36,9, + 0,252,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 255,128,255,128,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,9,18,36,9,0,252,255,128,255,128, + 255,128,255,128,255,128,255,128,255,128,255,128,255,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 4,9,9,9,5,5,240,240,240,240,240,240,240,240,240,9, + 18,36,9,0,252,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,9,18,36,9,0,252,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,255,128,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,7,7,7,9,1,1,254,254,254,254,254,254,254, + 7,7,7,9,1,1,254,130,130,130,130,130,254,7,7,7, + 9,1,1,124,130,130,130,130,130,124,7,7,7,9,1,1, + 254,130,186,186,186,130,254,7,7,7,9,1,1,254,130,254, + 130,254,130,254,7,7,7,9,1,1,254,170,170,170,170,170, + 254,7,7,7,9,1,1,254,170,254,170,254,170,254,7,7, + 7,9,1,1,254,146,138,198,162,146,254,7,7,7,9,1, + 1,254,146,162,198,138,146,254,7,7,7,9,1,1,254,214, + 138,214,162,214,254,3,3,3,9,3,3,224,224,224,3,3, + 3,9,3,3,224,160,224,9,5,10,9,0,2,255,128,255, + 128,255,128,255,128,255,128,9,5,10,9,0,2,255,128,128, + 128,128,128,128,128,255,128,5,9,9,9,2,0,248,248,248, + 248,248,248,248,248,248,5,9,9,9,2,0,248,136,136,136, + 136,136,136,136,248,9,5,10,9,0,2,127,128,127,128,255, + 128,255,0,255,0,9,5,10,9,0,2,127,128,64,128,128, + 128,129,0,255,0,9,10,20,9,0,0,8,0,8,0,28, + 0,28,0,62,0,62,0,127,0,127,0,255,128,255,128,9, + 10,20,9,0,0,8,0,8,0,20,0,20,0,34,0,34, + 0,65,0,65,0,128,128,255,128,7,7,7,9,1,1,16, + 16,56,56,124,124,254,7,7,7,9,1,1,16,16,40,40, + 68,68,254,9,9,18,9,0,0,192,0,240,0,252,0,255, + 0,255,128,255,0,252,0,240,0,192,0,9,9,18,9,0, + 0,192,0,176,0,140,0,131,0,128,128,131,0,140,0,176, + 0,192,0,7,7,7,9,1,1,128,224,248,254,248,224,128, + 7,7,7,9,1,1,128,224,152,134,152,224,128,9,5,10, + 9,0,2,224,0,252,0,255,128,252,0,224,0,9,5,10, + 9,0,2,224,0,156,0,131,128,156,0,224,0,9,10,20, + 9,0,0,255,128,255,128,127,0,127,0,62,0,62,0,28, + 0,28,0,8,0,8,0,9,10,20,9,0,0,255,128,128, + 128,65,0,65,0,34,0,34,0,20,0,20,0,8,0,8, + 0,7,7,7,9,1,1,254,124,124,56,56,16,16,7,7, + 7,9,1,1,254,68,68,40,40,16,16,9,9,18,9,0, + 0,1,128,7,128,31,128,127,128,255,128,127,128,31,128,7, + 128,1,128,9,9,18,9,0,0,1,128,6,128,24,128,96, + 128,128,128,96,128,24,128,6,128,1,128,7,7,7,9,1, + 1,2,14,62,254,62,14,2,7,7,7,9,1,1,2,14, + 50,194,50,14,2,9,5,10,9,0,2,3,128,31,128,255, + 128,31,128,3,128,9,5,10,9,0,2,3,128,28,128,224, + 128,28,128,3,128,9,9,18,9,0,0,8,0,28,0,62, + 0,127,0,255,128,127,0,62,0,28,0,8,0,9,9,18, + 9,0,0,8,0,20,0,34,0,65,0,128,128,65,0,34, + 0,20,0,8,0,9,9,18,9,0,0,8,0,20,0,34, + 0,73,0,156,128,73,0,34,0,20,0,8,0,7,7,7, + 9,1,1,56,68,146,186,146,68,56,5,9,9,9,2,0, + 32,32,80,80,136,80,80,32,32,7,7,7,9,1,1,56, + 68,130,130,130,68,56,7,7,7,9,1,1,16,68,0,130, + 0,68,16,7,7,7,9,1,1,56,108,170,170,170,108,56, + 7,7,7,9,1,1,56,68,146,170,146,68,56,7,7,7, + 9,1,1,56,124,254,254,254,124,56,7,7,7,9,1,1, + 56,116,242,242,242,116,56,7,7,7,9,1,1,56,92,158, + 158,158,92,56,7,7,7,9,1,1,56,68,130,254,254,124, + 56,7,7,7,9,1,1,56,124,254,254,130,68,56,7,7, + 7,9,1,1,56,92,158,158,130,68,56,7,7,7,9,1, + 1,56,92,158,254,254,124,56,4,7,7,9,1,1,48,112, + 240,240,240,112,48,4,7,7,9,4,1,192,224,240,240,240, + 224,192,9,18,36,9,0,252,255,128,255,128,255,128,255,128, + 255,128,255,128,255,128,227,128,193,128,193,128,193,128,227,128, + 255,128,255,128,255,128,255,128,255,128,255,128,9,18,36,9, + 0,252,255,128,255,128,255,128,255,128,255,128,255,128,227,128, + 221,128,190,128,190,128,190,128,221,128,227,128,255,128,255,128, + 255,128,255,128,255,128,9,10,20,9,0,4,255,128,255,128, + 255,128,255,128,255,128,255,128,227,128,221,128,190,128,190,128, + 9,9,18,9,0,252,190,128,190,128,221,128,227,128,255,128, + 255,128,255,128,255,128,255,128,4,4,4,9,1,4,48,64, + 128,128,4,4,4,9,4,4,192,32,16,16,4,4,4,9, + 4,1,16,16,32,192,4,4,4,9,1,1,128,128,64,48, + 7,4,4,9,1,4,56,68,130,130,7,4,4,9,1,1, + 130,130,68,56,7,7,7,9,1,1,2,6,14,30,62,126, + 254,7,7,7,9,1,1,128,192,224,240,248,252,254,7,7, + 7,9,1,1,254,252,248,240,224,192,128,7,7,7,9,1, + 1,254,126,62,30,14,6,2,5,5,5,9,2,2,112,136, + 136,136,112,7,7,7,9,1,1,254,242,242,242,242,242,254, + 7,7,7,9,1,1,254,158,158,158,158,158,254,7,7,7, + 9,1,1,254,254,250,242,226,194,254,7,7,7,9,1,1, + 254,134,142,158,190,254,254,7,7,7,9,1,1,254,146,146, + 146,146,146,254,9,10,20,9,0,0,8,0,8,0,20,0, + 20,0,34,0,42,0,93,0,73,0,128,128,255,128,9,10, + 20,9,0,0,8,0,8,0,28,0,28,0,58,0,58,0, + 121,0,121,0,248,128,255,128,9,10,20,9,0,0,8,0, + 8,0,28,0,28,0,46,0,46,0,79,0,79,0,143,128, + 255,128,9,9,18,9,0,0,62,0,65,0,128,128,128,128, + 128,128,128,128,128,128,65,0,62,0,7,7,7,9,1,1, + 254,146,146,242,130,130,254,7,7,7,9,1,1,254,130,130, + 242,146,146,254,7,7,7,9,1,1,254,130,130,158,146,146, + 254,7,7,7,9,1,1,254,146,146,158,130,130,254,7,7, + 7,9,1,1,124,146,146,242,130,130,124,7,7,7,9,1, + 1,124,130,130,242,146,146,124,7,7,7,9,1,1,124,130, + 130,158,146,146,124,7,7,7,9,1,1,124,146,146,158,130, + 130,124,6,6,6,9,1,1,252,136,144,160,192,128,6,6, + 6,9,1,1,252,68,36,20,12,4,6,6,6,9,1,1, + 128,192,160,144,136,252,6,6,6,9,1,1,252,132,132,132, + 132,252,6,6,6,9,1,1,252,252,252,252,252,252,5,5, + 5,9,2,1,248,136,136,136,248,5,5,5,9,2,1,248, + 248,248,248,248,6,6,6,9,1,1,4,12,20,36,68,252 + }; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--18-120-100-100-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 5 + Calculated Max Values w= 9 h=10 x= 3 y= 3 dx= 9 dy= 0 ascent=10 len=20 + Font Bounding box w= 9 h=18 x= 0 y=-4 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent =10 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x18_75r[792] U8G_SECTION(".progmem.u8g_font_9x18_75r") = { + 0,9,18,0,252,9,2,33,0,0,32,79,0,10,0,9, + 0,7,7,7,9,1,1,254,254,254,254,254,254,254,7,7, + 7,9,1,1,254,130,130,130,130,130,254,7,7,7,9,1, + 1,124,130,130,130,130,130,124,7,7,7,9,1,1,254,130, + 186,186,186,130,254,7,7,7,9,1,1,254,130,254,130,254, + 130,254,7,7,7,9,1,1,254,170,170,170,170,170,254,7, + 7,7,9,1,1,254,170,254,170,254,170,254,7,7,7,9, + 1,1,254,146,138,198,162,146,254,7,7,7,9,1,1,254, + 146,162,198,138,146,254,7,7,7,9,1,1,254,214,138,214, + 162,214,254,3,3,3,9,3,3,224,224,224,3,3,3,9, + 3,3,224,160,224,9,5,10,9,0,2,255,128,255,128,255, + 128,255,128,255,128,9,5,10,9,0,2,255,128,128,128,128, + 128,128,128,255,128,5,9,9,9,2,0,248,248,248,248,248, + 248,248,248,248,5,9,9,9,2,0,248,136,136,136,136,136, + 136,136,248,9,5,10,9,0,2,127,128,127,128,255,128,255, + 0,255,0,9,5,10,9,0,2,127,128,64,128,128,128,129, + 0,255,0,9,10,20,9,0,0,8,0,8,0,28,0,28, + 0,62,0,62,0,127,0,127,0,255,128,255,128,9,10,20, + 9,0,0,8,0,8,0,20,0,20,0,34,0,34,0,65, + 0,65,0,128,128,255,128,7,7,7,9,1,1,16,16,56, + 56,124,124,254,7,7,7,9,1,1,16,16,40,40,68,68, + 254,9,9,18,9,0,0,192,0,240,0,252,0,255,0,255, + 128,255,0,252,0,240,0,192,0,9,9,18,9,0,0,192, + 0,176,0,140,0,131,0,128,128,131,0,140,0,176,0,192, + 0,7,7,7,9,1,1,128,224,248,254,248,224,128,7,7, + 7,9,1,1,128,224,152,134,152,224,128,9,5,10,9,0, + 2,224,0,252,0,255,128,252,0,224,0,9,5,10,9,0, + 2,224,0,156,0,131,128,156,0,224,0,9,10,20,9,0, + 0,255,128,255,128,127,0,127,0,62,0,62,0,28,0,28, + 0,8,0,8,0,9,10,20,9,0,0,255,128,128,128,65, + 0,65,0,34,0,34,0,20,0,20,0,8,0,8,0,7, + 7,7,9,1,1,254,124,124,56,56,16,16,7,7,7,9, + 1,1,254,68,68,40,40,16,16,9,9,18,9,0,0,1, + 128,7,128,31,128,127,128,255,128,127,128,31,128,7,128,1, + 128,9,9,18,9,0,0,1,128,6,128,24,128,96,128,128, + 128,96,128,24,128,6,128,1,128,7,7,7,9,1,1,2, + 14,62,254,62,14,2,7,7,7,9,1,1,2,14,50,194, + 50,14,2,9,5,10,9,0,2,3,128,31,128,255,128,31, + 128,3,128,9,5,10,9,0,2,3,128,28,128,224,128,28, + 128,3,128,9,9,18,9,0,0,8,0,28,0,62,0,127, + 0,255,128,127,0,62,0,28,0,8,0,9,9,18,9,0, + 0,8,0,20,0,34,0,65,0,128,128,65,0,34,0,20, + 0,8,0,9,9,18,9,0,0,8,0,20,0,34,0,73, + 0,156,128,73,0,34,0,20,0,8,0,7,7,7,9,1, + 1,56,68,146,186,146,68,56,5,9,9,9,2,0,32,32, + 80,80,136,80,80,32,32,7,7,7,9,1,1,56,68,130, + 130,130,68,56,7,7,7,9,1,1,16,68,0,130,0,68, + 16,7,7,7,9,1,1,56,108,170,170,170,108,56,7,7, + 7,9,1,1,56,68,146,170,146,68,56,7,7,7,9,1, + 1,56,124,254,254,254,124,56}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--18-120-100-100-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 0, '1' Height: 9 + Calculated Max Values w= 9 h=12 x= 4 y= 5 dx= 9 dy= 0 ascent=12 len=24 + Font Bounding box w= 9 h=18 x= 0 y=-4 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =12 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x18_78_79[3336] U8G_SECTION(".progmem.u8g_font_9x18_78_79") = { + 0,9,18,0,252,9,2,231,4,175,32,255,0,12,255,11, + 0,9,9,18,9,0,0,62,0,28,0,136,128,201,128,247, + 128,201,128,136,128,28,0,62,0,9,9,18,9,0,0,8, + 0,20,0,255,128,162,128,65,0,162,128,255,128,20,0,8, + 0,9,9,18,9,0,0,8,0,28,0,8,0,73,0,255, + 128,73,0,8,0,28,0,8,0,9,9,18,9,0,0,8, + 0,28,0,28,0,107,0,255,128,107,0,28,0,28,0,8, + 0,9,9,18,9,0,0,8,0,28,0,28,0,107,0,255, + 128,107,0,28,0,28,0,8,0,9,9,18,9,0,0,8, + 0,28,0,28,0,107,0,255,128,107,0,28,0,28,0,8, + 0,9,9,18,9,0,0,8,0,8,0,28,0,62,0,255, + 128,62,0,28,0,8,0,8,0,9,9,18,9,0,0,8, + 0,20,0,20,0,99,0,128,128,99,0,20,0,20,0,8, + 0,255,9,9,18,9,0,0,8,0,8,0,20,0,247,128, + 65,0,34,0,73,0,85,0,99,0,9,10,20,9,0,0, + 127,0,247,128,247,128,227,128,0,0,128,128,193,128,201,128, + 156,128,127,0,9,9,18,9,0,0,8,0,8,0,28,0, + 227,128,99,0,34,0,62,0,119,0,65,0,9,9,18,9, + 0,0,8,0,8,0,20,0,235,128,93,0,42,0,34,0, + 127,0,65,0,9,9,18,9,0,0,8,0,8,0,20,0, + 235,128,93,0,42,0,34,0,127,0,65,0,9,9,18,9, + 0,0,8,0,8,0,20,0,235,128,93,0,42,0,34,0, + 127,0,65,0,9,9,18,9,0,0,8,0,8,0,20,0, + 247,128,73,0,54,0,42,0,127,0,65,0,8,7,7,9, + 0,2,24,24,44,199,46,60,102,8,9,9,9,0,0,24, + 219,255,126,24,126,255,219,24,8,9,9,9,0,0,24,219, + 255,102,36,102,255,219,24,9,9,18,9,0,0,8,0,73, + 0,42,0,28,0,255,128,28,0,42,0,73,0,8,0,9, + 9,18,9,0,0,8,0,73,0,62,0,62,0,255,128,62, + 0,62,0,73,0,8,0,9,9,18,9,0,0,8,0,73, + 0,54,0,62,0,213,128,62,0,54,0,73,0,8,0,9, + 9,18,9,0,0,8,0,136,128,107,0,62,0,28,0,62, + 0,107,0,136,128,8,0,9,9,18,9,0,0,34,0,20, + 0,148,128,127,0,28,0,127,0,148,128,20,0,34,0,9, + 9,18,9,0,0,34,0,54,0,255,128,127,0,62,0,127, + 0,255,128,54,0,34,0,9,9,18,9,0,0,42,0,42, + 0,221,128,62,0,255,128,62,0,221,128,42,0,42,0,9, + 9,18,9,0,0,42,0,42,0,221,128,42,0,255,128,42, + 0,221,128,42,0,42,0,9,11,22,9,0,0,28,0,28, + 0,201,128,201,128,34,0,8,0,34,0,201,128,201,128,28, + 0,28,0,9,11,22,9,0,0,28,0,28,0,201,128,201, + 128,62,0,20,0,62,0,201,128,201,128,28,0,28,0,9, + 11,22,9,0,0,28,0,28,0,201,128,201,128,62,0,28, + 0,62,0,201,128,201,128,28,0,28,0,9,11,22,9,0, + 0,28,0,20,0,201,128,201,128,62,0,20,0,127,0,170, + 128,201,128,28,0,28,0,8,9,9,9,0,0,24,24,219, + 255,36,36,126,231,66,255,255,255,8,9,9,9,0,0,24, + 203,189,110,24,118,189,211,24,9,12,24,9,0,0,8,0, + 42,0,93,0,170,128,107,0,221,128,221,128,107,0,170,128, + 93,0,42,0,8,0,9,12,24,9,0,0,8,0,42,0, + 93,0,170,128,107,0,221,128,221,128,107,0,170,128,93,0, + 42,0,8,0,9,12,24,9,0,0,8,0,42,0,93,0, + 170,128,107,0,221,128,221,128,107,0,170,128,93,0,42,0, + 8,0,9,9,18,9,0,0,8,0,73,0,42,0,20,0, + 235,128,20,0,42,0,73,0,8,0,9,9,18,9,0,0, + 8,0,73,0,42,0,20,0,235,128,20,0,42,0,73,0, + 8,0,8,9,9,9,0,0,24,219,203,60,24,60,211,219, + 24,9,9,18,9,0,0,8,0,73,0,42,0,0,0,235, + 128,0,0,42,0,73,0,8,0,9,9,18,9,0,0,8, + 0,73,0,42,0,28,0,255,128,28,0,42,0,73,0,8, + 0,255,9,8,16,9,0,1,62,0,67,0,129,128,129,128, + 129,128,129,128,67,0,62,0,255,9,9,18,9,0,0,254, + 0,130,0,131,128,131,128,131,128,131,128,255,128,63,128,63, + 128,9,9,18,9,0,0,63,128,63,128,255,128,131,128,131, + 128,131,128,131,128,130,0,254,0,8,8,8,9,0,0,254, + 131,131,131,131,131,255,127,8,8,8,9,0,0,127,255,131, + 131,131,131,131,254,255,255,255,9,9,18,9,0,0,8,0, + 28,0,8,0,65,0,227,128,65,0,8,0,28,0,8,0, + 255,1,10,10,9,4,0,128,128,128,128,128,128,128,128,128, + 128,2,10,10,9,3,0,192,192,192,192,192,192,192,192,192, + 192,3,10,10,9,3,0,224,224,224,224,224,224,224,224,224, + 224,4,6,6,9,3,5,112,128,224,240,240,96,4,6,6, + 9,3,5,96,240,240,112,16,224,9,6,12,9,0,5,115, + 128,132,0,231,0,247,128,247,128,99,0,9,6,12,9,0, + 5,99,0,247,128,247,128,115,128,16,128,231,0,255,255,7, + 10,10,9,1,0,4,126,228,228,228,124,4,100,104,48,5, + 10,10,9,2,0,112,248,248,112,32,32,0,32,112,32,5, + 10,10,9,2,0,80,248,248,112,32,32,0,32,112,32,9, + 9,18,9,0,0,99,0,247,128,255,128,255,128,127,0,62, + 0,28,0,8,0,8,0,9,9,18,9,0,0,112,0,248, + 0,252,0,126,0,63,128,126,0,252,0,248,0,112,0,9, + 12,24,9,0,0,8,0,116,128,149,0,14,0,4,0,107, + 0,247,128,255,128,127,0,62,0,28,0,8,0,9,12,24, + 9,0,0,16,0,41,0,82,0,156,0,32,0,88,0,124, + 0,60,0,254,0,254,128,255,0,126,0,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,9,9,18,9,0,0,127, + 0,247,128,231,128,247,128,247,128,247,128,247,128,227,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,253,128,251, + 128,247,128,237,128,193,128,127,0,9,9,18,9,0,0,127, + 0,227,128,221,128,253,128,243,128,253,128,221,128,227,128,127, + 0,9,9,18,9,0,0,127,0,243,128,235,128,219,128,193, + 128,251,128,251,128,251,128,127,0,9,9,18,9,0,0,127, + 0,193,128,223,128,223,128,195,128,253,128,253,128,195,128,127, + 0,9,9,18,9,0,0,127,0,225,128,223,128,223,128,195, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,193,128,253,128,251,128,251,128,247,128,247,128,247,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,221,128,227, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,225,128,221,128,221,128,225,128,253,128,253,128,227,128,127, + 0,9,9,18,9,0,0,127,0,219,128,213,128,213,128,213, + 128,213,128,213,128,219,128,127,0,9,9,18,9,0,0,127, + 0,128,128,136,128,152,128,136,128,136,128,136,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,152,128,132,128,132, + 128,136,128,156,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,152,128,132,128,136,128,132,128,152,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,136,128,152,128,168, + 128,188,128,136,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,156,128,144,128,152,128,132,128,152,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,140,128,144,128,152, + 128,148,128,136,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,156,128,132,128,136,128,136,128,136,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,136,128,148,128,136, + 128,148,128,136,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,136,128,148,128,140,128,132,128,136,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,164,128,170,128,170, + 128,170,128,164,128,128,128,127,0,9,9,18,9,0,0,127, + 0,247,128,231,128,247,128,247,128,247,128,247,128,247,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,253,128,251, + 128,247,128,239,128,193,128,127,0,9,9,18,9,0,0,127, + 0,227,128,221,128,253,128,243,128,253,128,221,128,227,128,127, + 0,9,9,18,9,0,0,127,0,243,128,235,128,219,128,193, + 128,251,128,251,128,251,128,127,0,9,9,18,9,0,0,127, + 0,193,128,223,128,223,128,195,128,253,128,253,128,195,128,127, + 0,9,9,18,9,0,0,127,0,225,128,223,128,223,128,195, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,193,128,253,128,251,128,251,128,247,128,247,128,247,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,221,128,227, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,225,128,221,128,221,128,225,128,253,128,253,128,227,128,127, + 0,9,9,18,9,0,0,127,0,219,128,213,128,213,128,213, + 128,213,128,213,128,219,128,127,0,7,8,8,9,1,1,48, + 24,12,254,254,12,24,48,255,255,255,7,5,5,9,1,1, + 224,250,62,14,30,8,7,7,9,1,1,8,12,230,255,230, + 12,8,7,5,5,9,1,1,30,14,62,250,224,9,7,14, + 9,0,0,48,0,28,0,31,0,255,128,31,0,28,0,48, + 0,9,9,18,9,0,0,28,0,30,0,15,0,255,128,255, + 128,255,128,15,0,30,0,28,0,9,5,10,9,0,1,2, + 0,3,0,255,128,3,0,2,0,9,7,14,9,0,0,4, + 0,6,0,255,0,255,128,255,0,6,0,4,0,9,5,10, + 9,0,1,2,0,183,0,183,128,183,0,2,0,9,5,10, + 9,0,1,2,0,171,0,171,128,171,0,2,0,9,5,10, + 9,0,1,2,0,255,0,255,128,255,0,2,0,9,8,16, + 9,0,1,128,0,112,0,78,0,33,128,31,128,62,0,112, + 0,128,0,9,8,16,9,0,1,128,0,112,0,62,0,31, + 128,33,128,78,0,112,0,128,0,9,8,16,9,0,1,128, + 0,112,0,62,0,31,128,31,128,62,0,112,0,128,0,9, + 7,14,9,0,0,132,0,134,0,255,0,255,128,127,0,6, + 0,4,0,9,7,14,9,0,0,4,0,6,0,127,0,255, + 128,255,0,134,0,132,0,6,9,9,9,2,0,16,16,248, + 248,252,248,248,16,16,8,9,9,9,0,1,4,4,254,254, + 255,254,254,4,4,9,9,18,9,0,0,24,0,28,0,22, + 0,243,0,129,128,243,0,22,0,28,0,24,0,9,9,18, + 9,0,0,24,0,28,0,26,0,249,0,192,128,249,0,26, + 0,28,0,24,0,9,9,18,9,0,0,0,128,1,128,62, + 128,64,128,129,128,243,0,238,0,60,0,56,0,9,9,18, + 9,0,0,56,0,60,0,238,0,243,0,129,128,64,128,62, + 128,1,128,0,128,8,9,9,9,0,1,16,24,20,242,129, + 243,118,28,24,8,9,9,9,0,1,24,28,118,243,129,242, + 20,24,16,9,7,14,9,0,2,4,0,250,0,129,0,64, + 128,129,128,251,0,6,0,255,9,7,14,9,0,2,6,0, + 251,0,129,128,64,128,129,0,250,0,4,0,9,9,18,9, + 0,1,28,0,127,0,251,128,1,128,0,128,1,128,251,128, + 127,0,28,0,9,5,10,9,0,3,210,0,43,0,127,128, + 43,0,210,0,9,9,18,9,0,0,16,0,56,0,92,0, + 236,0,116,0,60,0,2,128,1,128,3,128,9,5,10,9, + 0,2,242,0,123,0,7,128,123,0,242,0,9,9,18,9, + 0,0,3,128,1,128,2,128,60,0,116,0,236,0,92,0, + 56,0,16,0,9,9,18,9,0,0,16,0,24,0,28,0, + 252,0,124,0,60,0,2,128,1,128,3,128,9,5,10,9, + 0,2,242,0,123,0,127,128,123,0,242,0,9,9,18,9, + 0,0,3,128,1,128,2,128,60,0,124,0,252,0,28,0, + 24,0,16,0,9,7,14,9,0,1,3,0,3,0,113,0, + 255,128,113,0,3,0,3,0,9,7,14,9,0,1,2,0, + 115,0,121,0,255,128,121,0,115,0,2,0,9,5,10,9, + 0,2,242,0,123,0,63,128,123,0,242,0,9,7,14,9, + 0,1,226,0,242,0,123,0,63,128,123,0,242,0,226,0, + 9,7,14,9,0,1,20,0,10,0,253,0,0,128,253,0, + 10,0,20,0,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,8,11,11,9,0,255, + 193,99,99,85,85,73,85,85,99,99,193,8,11,11,9,1, + 255,131,198,198,170,170,146,170,170,198,198,131,9,11,22,9, + 0,255,193,128,99,0,99,0,85,0,85,0,73,0,85,0, + 85,0,99,0,99,0,193,128,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,5,12,12,9,2,255,248,160,160,160, + 160,160,160,160,160,160,160,248,5,12,12,9,2,255,248,40, + 40,40,40,40,40,40,40,40,40,248,3,10,10,9,3,0, + 32,32,64,64,128,128,64,64,32,32,3,10,10,9,3,0, + 128,128,64,64,32,32,64,64,128,128,6,10,10,9,1,0, + 36,36,72,72,144,144,72,72,36,36,6,10,10,9,2,0, + 144,144,72,72,36,36,72,72,144,144,255,255,255,255,9,11, + 22,9,0,0,8,0,20,0,54,0,85,0,213,128,85,0, + 85,0,85,0,85,0,85,0,85,0,9,11,22,9,0,255, + 85,0,85,0,85,0,85,0,85,0,85,0,213,128,85,0, + 54,0,20,0,8,0,8,8,8,9,0,0,28,34,169,113, + 33,1,34,28,8,8,8,9,0,0,56,68,149,142,132,128, + 68,56,9,5,10,9,0,2,114,0,169,0,255,128,169,0, + 114,0,9,5,10,9,0,2,32,0,64,0,255,128,64,0, + 32,0,9,5,10,9,0,2,2,0,1,0,255,128,1,0, + 2,0,9,5,10,9,0,2,34,0,65,0,255,128,65,0, + 34,0,9,7,14,9,0,1,16,0,32,0,127,128,128,0, + 127,128,32,0,16,0,9,7,14,9,0,1,4,0,2,0, + 255,0,0,128,255,0,2,0,4,0,9,7,14,9,0,1, + 20,0,34,0,127,0,128,128,127,0,34,0,20,0,9,5, + 10,9,0,2,32,128,64,128,255,128,64,128,32,128,9,5, + 10,9,0,2,130,0,129,0,255,128,129,0,130,0,9,7, + 14,9,0,1,16,128,32,128,127,128,128,128,127,128,32,128, + 16,128,9,7,14,9,0,1,132,0,130,0,255,0,128,128, + 255,0,130,0,132,0,9,6,12,9,0,1,2,0,1,0, + 85,128,170,128,1,0,2,0}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--18-120-100-100-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 9 h=14 x= 4 y=14 dx= 9 dy= 0 ascent=14 len=20 + Font Bounding box w= 9 h=18 x= 0 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x18B[3026] U8G_SECTION(".progmem.u8g_font_9x18B") = { + 0,9,18,0,252,10,1,242,3,225,32,255,253,14,252,11, + 253,0,0,0,9,0,14,2,11,11,9,3,0,192,192,192, + 192,192,192,192,0,0,192,192,5,4,4,9,2,7,216,216, + 216,216,7,10,10,9,1,0,108,108,108,254,108,108,254,108, + 108,108,8,11,11,9,0,255,24,126,219,216,120,60,30,27, + 219,126,24,8,10,10,9,0,0,115,222,222,108,24,24,54, + 123,123,206,8,10,10,9,0,0,112,216,216,216,112,115,222, + 204,222,115,2,4,4,9,3,7,192,192,192,192,4,12,12, + 9,2,255,48,96,96,192,192,192,192,192,192,96,96,48,4, + 12,12,9,2,255,192,96,96,48,48,48,48,48,48,96,96, + 192,8,7,7,9,0,1,24,219,126,60,126,219,24,8,7, + 7,9,0,1,24,24,24,255,24,24,24,3,4,4,9,3, + 254,224,224,96,192,7,1,1,9,1,4,254,3,2,2,9, + 3,0,224,224,8,10,10,9,0,0,3,6,6,12,24,24, + 48,96,96,192,7,10,10,9,1,0,56,108,198,198,198,198, + 198,198,108,56,8,10,10,9,0,0,24,56,120,216,24,24, + 24,24,24,255,7,10,10,9,1,0,56,108,198,6,6,12, + 24,48,96,254,7,10,10,9,1,0,254,6,12,24,56,12, + 6,6,204,120,7,10,10,9,1,0,12,28,60,108,204,204, + 254,12,12,12,7,10,10,9,1,0,254,192,192,192,248,12, + 6,6,204,120,7,10,10,9,1,0,60,96,192,192,248,204, + 198,198,108,56,7,10,10,9,1,0,254,6,12,12,24,24, + 48,48,48,48,7,10,10,9,1,0,56,108,198,108,56,108, + 198,198,108,56,7,10,10,9,1,0,56,108,198,198,110,62, + 6,6,12,120,3,7,7,9,3,0,224,224,0,0,0,224, + 224,3,9,9,9,3,254,224,224,0,0,0,224,224,96,192, + 6,9,9,9,1,0,12,24,48,96,192,96,48,24,12,7, + 4,4,9,1,2,254,0,0,254,6,9,9,9,1,0,192, + 96,48,24,12,24,48,96,192,7,10,10,9,1,0,56,108, + 198,6,12,24,48,48,0,48,9,10,20,9,0,0,62,0, + 99,0,205,128,213,128,213,128,213,128,213,128,207,0,96,0, + 62,0,7,10,10,9,1,0,16,56,56,56,108,124,108,198, + 198,198,7,10,10,9,1,0,252,198,198,198,252,198,198,198, + 198,252,7,10,10,9,1,0,60,102,192,192,192,192,192,192, + 102,60,7,10,10,9,1,0,248,204,198,198,198,198,198,198, + 204,248,7,10,10,9,1,0,254,192,192,192,248,192,192,192, + 192,254,7,10,10,9,1,0,254,192,192,192,248,192,192,192, + 192,192,7,10,10,9,1,0,56,108,198,192,192,206,198,198, + 108,56,7,10,10,9,1,0,198,198,198,198,254,198,198,198, + 198,198,6,10,10,9,1,0,252,48,48,48,48,48,48,48, + 48,252,7,10,10,9,1,0,30,12,12,12,12,12,12,204, + 204,120,7,10,10,9,1,0,198,204,216,240,224,240,216,204, + 198,198,7,10,10,9,1,0,192,192,192,192,192,192,192,192, + 192,254,7,10,10,9,1,0,198,238,254,214,198,198,198,198, + 198,198,7,10,10,9,1,0,198,198,230,246,222,206,198,198, + 198,198,7,10,10,9,1,0,124,198,198,198,198,198,198,198, + 198,124,7,10,10,9,1,0,248,204,198,198,204,248,192,192, + 192,192,8,11,11,9,1,255,56,108,198,198,198,198,198,222, + 108,62,3,7,10,10,9,1,0,252,198,198,198,198,252,216, + 204,198,198,7,10,10,9,1,0,124,198,192,192,124,6,6, + 6,198,124,6,10,10,9,1,0,252,48,48,48,48,48,48, + 48,48,48,7,10,10,9,1,0,198,198,198,198,198,198,198, + 198,108,56,7,10,10,9,1,0,198,198,198,108,108,108,56, + 56,56,16,7,10,10,9,1,0,198,198,198,198,214,214,214, + 254,238,68,7,10,10,9,1,0,198,198,108,56,16,16,56, + 108,198,198,8,10,10,9,0,0,195,195,102,60,24,24,24, + 24,24,24,7,10,10,9,1,0,254,6,6,12,24,48,96, + 192,192,254,5,12,12,9,2,255,248,192,192,192,192,192,192, + 192,192,192,192,248,8,10,10,9,0,0,192,96,96,48,24, + 24,12,6,6,3,4,12,12,9,2,255,240,48,48,48,48, + 48,48,48,48,48,48,240,8,4,4,9,0,6,24,60,102, + 195,8,1,1,9,0,255,255,4,3,3,9,2,10,192,96, + 48,7,7,7,9,1,0,124,6,6,126,198,198,126,7,10, + 10,9,1,0,192,192,192,252,198,198,198,198,198,252,7,7, + 7,9,1,0,124,198,192,192,192,198,124,7,10,10,9,1, + 0,6,6,6,126,198,198,198,198,198,126,7,7,7,9,1, + 0,124,198,198,254,192,198,124,6,10,10,9,1,0,56,108, + 108,96,96,240,96,96,96,96,7,10,10,9,1,253,126,204, + 204,204,120,192,124,198,198,124,7,10,10,9,1,0,192,192, + 192,252,198,198,198,198,198,198,6,10,10,9,1,0,48,48, + 0,240,48,48,48,48,48,252,5,13,13,9,2,253,24,24, + 0,56,24,24,24,24,24,24,216,216,112,7,10,10,9,1, + 0,192,192,192,204,216,240,240,216,204,198,6,10,10,9,1, + 0,240,48,48,48,48,48,48,48,48,252,8,7,7,9,0, + 0,254,219,219,219,219,219,195,7,7,7,9,1,0,220,230, + 198,198,198,198,198,7,7,7,9,1,0,56,108,198,198,198, + 108,56,7,10,10,9,1,253,248,204,198,198,198,204,248,192, + 192,192,7,10,10,9,1,253,62,102,198,198,198,102,62,6, + 6,6,7,7,7,9,1,0,220,118,96,96,96,96,96,7, + 7,7,9,1,0,124,198,192,124,6,198,124,7,9,9,9, + 1,0,48,48,252,48,48,48,48,54,28,7,7,7,9,1, + 0,198,198,198,198,198,198,126,7,7,7,9,1,0,198,198, + 108,108,56,56,16,8,7,7,9,0,0,195,195,219,219,219, + 255,102,7,7,7,9,1,0,198,108,56,16,56,108,198,7, + 10,10,9,1,253,198,198,108,108,108,56,56,48,176,96,6, + 7,7,9,1,0,252,12,24,48,96,192,252,6,11,11,9, + 1,0,60,96,96,96,96,192,96,96,96,96,60,2,12,12, + 9,3,255,192,192,192,192,192,192,192,192,192,192,192,192,6, + 11,11,9,1,0,224,48,48,48,48,28,48,48,48,48,224, + 8,3,3,9,0,7,115,219,206,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,0,0,0,9,0,14, + 2,10,10,9,4,0,192,0,192,192,192,192,192,192,192,192, + 7,8,8,9,1,0,4,124,206,208,208,230,124,64,8,10, + 10,9,0,255,30,51,48,48,124,48,48,248,191,224,7,7, + 7,9,1,2,198,254,108,68,108,254,198,8,10,10,9,0, + 0,195,195,102,60,126,24,126,24,24,24,2,11,11,9,3, + 255,192,192,192,192,192,0,192,192,192,192,192,6,11,11,9, + 1,255,120,204,192,120,204,204,204,120,12,204,120,5,2,2, + 9,2,11,216,216,8,11,11,9,0,0,60,126,195,189,165, + 161,165,189,195,126,60,5,7,7,9,1,3,112,24,120,216, + 120,0,248,8,8,8,9,0,1,27,54,108,216,216,108,54, + 27,7,5,5,9,1,2,254,254,6,6,6,6,1,1,9, + 1,4,252,8,11,11,9,0,0,60,126,195,189,165,189,169, + 173,195,126,60,6,2,2,9,1,9,252,252,5,4,4,9, + 1,8,112,216,216,112,6,9,9,9,1,1,48,48,48,252, + 48,48,48,0,252,5,6,6,9,1,4,112,216,24,48,96, + 248,5,6,6,9,1,4,112,216,48,24,216,112,4,3,3, + 9,2,10,48,96,192,7,9,9,9,1,254,198,198,198,198, + 206,222,246,192,192,7,10,10,9,1,0,126,246,246,246,118, + 54,54,54,54,54,3,2,2,9,3,4,224,224,6,3,3, + 9,1,253,24,204,120,4,6,6,9,1,4,96,224,96,96, + 96,240,5,7,7,9,1,3,112,216,216,216,112,0,248,8, + 8,8,9,0,1,216,108,54,27,27,54,108,216,8,11,11, + 9,0,0,96,224,96,96,97,99,247,15,27,31,3,8,11, + 11,9,0,0,96,224,96,96,110,115,243,6,12,24,31,8, + 11,11,9,0,0,112,152,24,48,25,155,119,15,27,31,3, + 7,10,10,9,1,0,24,24,0,24,48,96,192,198,198,124, + 7,14,14,9,1,0,96,48,24,0,16,56,56,56,108,124, + 108,198,198,198,7,14,14,9,1,0,12,24,48,0,16,56, + 56,56,108,124,108,198,198,198,7,14,14,9,1,0,16,56, + 108,0,16,56,56,56,108,124,108,198,198,198,7,13,13,9, + 1,0,118,220,0,16,56,56,56,108,124,108,198,198,198,7, + 13,13,9,1,0,108,108,0,16,56,56,56,108,124,108,198, + 198,198,7,14,14,9,1,0,56,108,108,56,16,56,56,56, + 108,124,108,198,198,198,7,10,10,9,1,0,62,60,108,108, + 110,252,204,204,204,206,7,14,14,9,1,252,60,102,192,192, + 192,192,192,192,102,60,24,12,108,56,7,14,14,9,1,0, + 96,48,24,0,254,192,192,192,248,192,192,192,192,254,7,14, + 14,9,1,0,12,24,48,0,254,192,192,192,248,192,192,192, + 192,254,7,14,14,9,1,0,16,56,108,0,254,192,192,192, + 248,192,192,192,192,254,7,13,13,9,1,0,108,108,0,254, + 192,192,192,248,192,192,192,192,254,6,14,14,9,1,0,96, + 48,24,0,252,48,48,48,48,48,48,48,48,252,6,14,14, + 9,1,0,12,24,48,0,252,48,48,48,48,48,48,48,48, + 252,6,14,14,9,1,0,16,56,108,0,252,48,48,48,48, + 48,48,48,48,252,6,13,13,9,1,0,108,108,0,252,48, + 48,48,48,48,48,48,48,252,8,10,10,9,0,0,124,102, + 99,99,243,99,99,99,102,124,7,13,13,9,1,0,118,220, + 0,198,198,230,246,222,206,198,198,198,198,7,14,14,9,1, + 0,96,48,24,0,124,198,198,198,198,198,198,198,198,124,7, + 14,14,9,1,0,12,24,48,0,124,198,198,198,198,198,198, + 198,198,124,7,14,14,9,1,0,16,56,108,0,124,198,198, + 198,198,198,198,198,198,124,7,13,13,9,1,0,118,220,0, + 124,198,198,198,198,198,198,198,198,124,7,13,13,9,1,0, + 108,108,0,124,198,198,198,198,198,198,198,198,124,8,7,7, + 9,0,1,195,102,60,24,60,102,195,7,12,12,9,1,255, + 6,126,206,206,222,222,246,246,230,230,252,192,7,14,14,9, + 1,0,96,48,24,0,198,198,198,198,198,198,198,198,108,56, + 7,14,14,9,1,0,12,24,48,0,198,198,198,198,198,198, + 198,198,108,56,7,14,14,9,1,0,16,56,108,0,198,198, + 198,198,198,198,198,198,108,56,7,13,13,9,1,0,108,108, + 0,198,198,198,198,198,198,198,198,108,56,8,14,14,9,0, + 0,12,24,48,0,195,195,102,60,24,24,24,24,24,24,7, + 10,10,9,1,0,192,192,252,198,198,198,252,192,192,192,7, + 10,10,9,1,0,60,102,102,102,236,102,102,102,102,108,7, + 11,11,9,1,0,96,48,24,0,124,6,6,126,198,198,126, + 7,11,11,9,1,0,12,24,48,0,124,6,6,126,198,198, + 126,7,11,11,9,1,0,16,56,108,0,124,6,6,126,198, + 198,126,7,10,10,9,1,0,118,220,0,124,6,6,126,198, + 198,126,7,10,10,9,1,0,108,108,0,124,6,6,126,198, + 198,126,7,11,11,9,1,0,56,108,56,0,124,6,6,126, + 198,198,126,8,7,7,9,0,0,118,27,27,127,216,219,118, + 7,11,11,9,1,252,124,198,192,192,192,198,124,24,12,108, + 56,7,11,11,9,1,0,96,48,24,0,124,198,198,254,192, + 198,124,7,11,11,9,1,0,12,24,48,0,124,198,198,254, + 192,198,124,7,11,11,9,1,0,16,56,108,0,124,198,198, + 254,192,198,124,7,10,10,9,1,0,108,108,0,124,198,198, + 254,192,198,124,6,11,11,9,1,0,192,96,48,0,240,48, + 48,48,48,48,252,6,11,11,9,1,0,12,24,48,0,240, + 48,48,48,48,48,252,6,11,11,9,1,0,32,112,216,0, + 240,48,48,48,48,48,252,6,10,10,9,1,0,108,108,0, + 240,48,48,48,48,48,252,7,11,11,9,1,0,108,56,56, + 108,12,126,198,198,198,198,124,7,10,10,9,1,0,118,220, + 0,220,230,198,198,198,198,198,7,11,11,9,1,0,96,48, + 24,0,56,108,198,198,198,108,56,7,11,11,9,1,0,12, + 24,48,0,56,108,198,198,198,108,56,7,11,11,9,1,0, + 16,56,108,0,56,108,198,198,198,108,56,7,10,10,9,1, + 0,118,220,0,56,108,198,198,198,108,56,7,10,10,9,1, + 0,108,108,0,56,108,198,198,198,108,56,8,7,7,9,0, + 1,24,24,0,255,0,24,24,8,9,9,9,0,255,1,63, + 102,207,219,243,102,252,128,7,11,11,9,1,0,96,48,24, + 0,198,198,198,198,198,198,126,7,11,11,9,1,0,12,24, + 48,0,198,198,198,198,198,198,126,7,11,11,9,1,0,16, + 56,108,0,198,198,198,198,198,198,126,7,10,10,9,1,0, + 108,108,0,198,198,198,198,198,198,126,7,14,14,9,1,253, + 12,24,48,0,198,198,108,108,108,56,56,48,176,96,7,11, + 11,9,1,254,192,192,248,204,198,198,198,204,248,192,192,7, + 13,13,9,1,253,108,108,0,198,198,108,108,108,56,56,48, + 176,96}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--18-120-100-100-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 9 h=13 x= 3 y=14 dx= 9 dy= 0 ascent=14 len=20 + Font Bounding box w= 9 h=18 x= 0 y=-4 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x18Br[1434] U8G_SECTION(".progmem.u8g_font_9x18Br") = { + 0,9,18,0,252,10,1,242,3,225,32,127,253,14,253,11, + 253,0,0,0,9,0,14,2,11,11,9,3,0,192,192,192, + 192,192,192,192,0,0,192,192,5,4,4,9,2,7,216,216, + 216,216,7,10,10,9,1,0,108,108,108,254,108,108,254,108, + 108,108,8,11,11,9,0,255,24,126,219,216,120,60,30,27, + 219,126,24,8,10,10,9,0,0,115,222,222,108,24,24,54, + 123,123,206,8,10,10,9,0,0,112,216,216,216,112,115,222, + 204,222,115,2,4,4,9,3,7,192,192,192,192,4,12,12, + 9,2,255,48,96,96,192,192,192,192,192,192,96,96,48,4, + 12,12,9,2,255,192,96,96,48,48,48,48,48,48,96,96, + 192,8,7,7,9,0,1,24,219,126,60,126,219,24,8,7, + 7,9,0,1,24,24,24,255,24,24,24,3,4,4,9,3, + 254,224,224,96,192,7,1,1,9,1,4,254,3,2,2,9, + 3,0,224,224,8,10,10,9,0,0,3,6,6,12,24,24, + 48,96,96,192,7,10,10,9,1,0,56,108,198,198,198,198, + 198,198,108,56,8,10,10,9,0,0,24,56,120,216,24,24, + 24,24,24,255,7,10,10,9,1,0,56,108,198,6,6,12, + 24,48,96,254,7,10,10,9,1,0,254,6,12,24,56,12, + 6,6,204,120,7,10,10,9,1,0,12,28,60,108,204,204, + 254,12,12,12,7,10,10,9,1,0,254,192,192,192,248,12, + 6,6,204,120,7,10,10,9,1,0,60,96,192,192,248,204, + 198,198,108,56,7,10,10,9,1,0,254,6,12,12,24,24, + 48,48,48,48,7,10,10,9,1,0,56,108,198,108,56,108, + 198,198,108,56,7,10,10,9,1,0,56,108,198,198,110,62, + 6,6,12,120,3,7,7,9,3,0,224,224,0,0,0,224, + 224,3,9,9,9,3,254,224,224,0,0,0,224,224,96,192, + 6,9,9,9,1,0,12,24,48,96,192,96,48,24,12,7, + 4,4,9,1,2,254,0,0,254,6,9,9,9,1,0,192, + 96,48,24,12,24,48,96,192,7,10,10,9,1,0,56,108, + 198,6,12,24,48,48,0,48,9,10,20,9,0,0,62,0, + 99,0,205,128,213,128,213,128,213,128,213,128,207,0,96,0, + 62,0,7,10,10,9,1,0,16,56,56,56,108,124,108,198, + 198,198,7,10,10,9,1,0,252,198,198,198,252,198,198,198, + 198,252,7,10,10,9,1,0,60,102,192,192,192,192,192,192, + 102,60,7,10,10,9,1,0,248,204,198,198,198,198,198,198, + 204,248,7,10,10,9,1,0,254,192,192,192,248,192,192,192, + 192,254,7,10,10,9,1,0,254,192,192,192,248,192,192,192, + 192,192,7,10,10,9,1,0,56,108,198,192,192,206,198,198, + 108,56,7,10,10,9,1,0,198,198,198,198,254,198,198,198, + 198,198,6,10,10,9,1,0,252,48,48,48,48,48,48,48, + 48,252,7,10,10,9,1,0,30,12,12,12,12,12,12,204, + 204,120,7,10,10,9,1,0,198,204,216,240,224,240,216,204, + 198,198,7,10,10,9,1,0,192,192,192,192,192,192,192,192, + 192,254,7,10,10,9,1,0,198,238,254,214,198,198,198,198, + 198,198,7,10,10,9,1,0,198,198,230,246,222,206,198,198, + 198,198,7,10,10,9,1,0,124,198,198,198,198,198,198,198, + 198,124,7,10,10,9,1,0,248,204,198,198,204,248,192,192, + 192,192,8,11,11,9,1,255,56,108,198,198,198,198,198,222, + 108,62,3,7,10,10,9,1,0,252,198,198,198,198,252,216, + 204,198,198,7,10,10,9,1,0,124,198,192,192,124,6,6, + 6,198,124,6,10,10,9,1,0,252,48,48,48,48,48,48, + 48,48,48,7,10,10,9,1,0,198,198,198,198,198,198,198, + 198,108,56,7,10,10,9,1,0,198,198,198,108,108,108,56, + 56,56,16,7,10,10,9,1,0,198,198,198,198,214,214,214, + 254,238,68,7,10,10,9,1,0,198,198,108,56,16,16,56, + 108,198,198,8,10,10,9,0,0,195,195,102,60,24,24,24, + 24,24,24,7,10,10,9,1,0,254,6,6,12,24,48,96, + 192,192,254,5,12,12,9,2,255,248,192,192,192,192,192,192, + 192,192,192,192,248,8,10,10,9,0,0,192,96,96,48,24, + 24,12,6,6,3,4,12,12,9,2,255,240,48,48,48,48, + 48,48,48,48,48,48,240,8,4,4,9,0,6,24,60,102, + 195,8,1,1,9,0,255,255,4,3,3,9,2,10,192,96, + 48,7,7,7,9,1,0,124,6,6,126,198,198,126,7,10, + 10,9,1,0,192,192,192,252,198,198,198,198,198,252,7,7, + 7,9,1,0,124,198,192,192,192,198,124,7,10,10,9,1, + 0,6,6,6,126,198,198,198,198,198,126,7,7,7,9,1, + 0,124,198,198,254,192,198,124,6,10,10,9,1,0,56,108, + 108,96,96,240,96,96,96,96,7,10,10,9,1,253,126,204, + 204,204,120,192,124,198,198,124,7,10,10,9,1,0,192,192, + 192,252,198,198,198,198,198,198,6,10,10,9,1,0,48,48, + 0,240,48,48,48,48,48,252,5,13,13,9,2,253,24,24, + 0,56,24,24,24,24,24,24,216,216,112,7,10,10,9,1, + 0,192,192,192,204,216,240,240,216,204,198,6,10,10,9,1, + 0,240,48,48,48,48,48,48,48,48,252,8,7,7,9,0, + 0,254,219,219,219,219,219,195,7,7,7,9,1,0,220,230, + 198,198,198,198,198,7,7,7,9,1,0,56,108,198,198,198, + 108,56,7,10,10,9,1,253,248,204,198,198,198,204,248,192, + 192,192,7,10,10,9,1,253,62,102,198,198,198,102,62,6, + 6,6,7,7,7,9,1,0,220,118,96,96,96,96,96,7, + 7,7,9,1,0,124,198,192,124,6,198,124,7,9,9,9, + 1,0,48,48,252,48,48,48,48,54,28,7,7,7,9,1, + 0,198,198,198,198,198,198,126,7,7,7,9,1,0,198,198, + 108,108,56,56,16,8,7,7,9,0,0,195,195,219,219,219, + 255,102,7,7,7,9,1,0,198,108,56,16,56,108,198,7, + 10,10,9,1,253,198,198,108,108,108,56,56,48,176,96,6, + 7,7,9,1,0,252,12,24,48,96,192,252,6,11,11,9, + 1,0,60,96,96,96,96,192,96,96,96,96,60,2,12,12, + 9,3,255,192,192,192,192,192,192,192,192,192,192,192,192,6, + 11,11,9,1,0,224,48,48,48,48,28,48,48,48,48,224, + 8,3,3,9,0,7,115,219,206,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--18-120-100-100-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 8 h=14 x= 4 y=14 dx= 9 dy= 0 ascent=14 len=14 + Font Bounding box w= 9 h=18 x= 0 y=-4 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x18[3011] U8G_SECTION(".progmem.u8g_font_9x18") = { + 0,9,18,0,252,10,1,232,3,215,32,255,253,14,253,11, + 253,0,0,0,9,0,14,1,11,11,9,4,0,128,128,128, + 128,128,128,128,0,0,128,128,4,4,4,9,3,7,144,144, + 144,144,8,10,10,9,0,0,36,36,36,255,36,36,255,36, + 36,36,7,11,11,9,1,255,16,124,146,144,80,56,20,18, + 146,124,16,7,10,10,9,1,0,66,164,164,72,16,16,36, + 74,74,132,7,10,10,9,1,0,96,144,144,144,96,98,148, + 136,148,98,1,4,4,9,4,7,128,128,128,128,3,12,12, + 9,3,255,32,64,64,128,128,128,128,128,128,64,64,32,3, + 12,12,9,3,255,128,64,64,32,32,32,32,32,32,64,64, + 128,7,7,7,9,1,3,16,146,84,56,84,146,16,7,7, + 7,9,1,1,16,16,16,254,16,16,16,2,4,4,9,4, + 254,192,192,64,128,7,1,1,9,1,4,254,2,2,2,9, + 4,0,192,192,7,10,10,9,1,0,2,4,4,8,16,16, + 32,64,64,128,7,10,10,9,1,0,56,68,130,130,130,130, + 130,130,68,56,7,10,10,9,1,0,16,48,80,144,16,16, + 16,16,16,254,7,10,10,9,1,0,56,68,130,2,4,8, + 16,32,64,254,7,10,10,9,1,0,254,2,4,8,24,4, + 2,2,132,120,7,10,10,9,1,0,4,12,20,36,68,132, + 254,4,4,4,7,10,10,9,1,0,254,128,128,128,248,4, + 2,2,132,120,7,10,10,9,1,0,60,64,128,128,184,196, + 130,130,68,56,7,10,10,9,1,0,254,2,4,4,8,8, + 16,16,16,16,7,10,10,9,1,0,56,68,130,68,56,68, + 130,130,68,56,7,10,10,9,1,0,56,68,130,130,70,58, + 2,2,4,120,2,7,7,9,4,0,192,192,0,0,0,192, + 192,2,9,9,9,4,254,192,192,0,0,0,192,192,64,128, + 5,9,9,9,2,0,8,16,32,64,128,64,32,16,8,7, + 4,4,9,1,2,254,0,0,254,5,9,9,9,2,0,128, + 64,32,16,8,16,32,64,128,7,10,10,9,1,0,56,68, + 130,2,4,8,16,16,0,16,7,10,10,9,1,0,56,68, + 154,170,170,170,170,156,64,60,7,10,10,9,1,0,16,40, + 40,40,68,124,68,130,130,130,7,10,10,9,1,0,248,132, + 130,132,248,132,130,130,132,248,7,10,10,9,1,0,60,66, + 128,128,128,128,128,128,66,60,7,10,10,9,1,0,248,132, + 130,130,130,130,130,130,132,248,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,254,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,128,7,10,10,9,1,0,56,68, + 130,128,128,142,130,130,68,56,7,10,10,9,1,0,130,130, + 130,130,254,130,130,130,130,130,5,10,10,9,2,0,248,32, + 32,32,32,32,32,32,32,248,7,10,10,9,1,0,62,8, + 8,8,8,8,8,136,136,112,7,10,10,9,1,0,130,132, + 136,144,160,208,136,132,130,130,7,10,10,9,1,0,128,128, + 128,128,128,128,128,128,128,254,7,10,10,9,1,0,130,130, + 198,170,146,130,130,130,130,130,7,10,10,9,1,0,130,130, + 194,162,146,138,134,130,130,130,7,10,10,9,1,0,124,130, + 130,130,130,130,130,130,130,124,7,10,10,9,1,0,248,132, + 130,130,132,248,128,128,128,128,8,11,11,9,1,255,56,68, + 130,130,130,130,130,138,68,58,1,7,10,10,9,1,0,248, + 132,130,130,132,248,144,136,132,130,7,10,10,9,1,0,124, + 130,128,128,124,2,2,2,130,124,7,10,10,9,1,0,254, + 16,16,16,16,16,16,16,16,16,7,10,10,9,1,0,130, + 130,130,130,130,130,130,130,68,56,7,10,10,9,1,0,130, + 130,130,68,68,68,40,40,40,16,7,10,10,9,1,0,130, + 130,130,130,146,146,146,146,170,68,7,10,10,9,1,0,130, + 130,68,40,16,16,40,68,130,130,7,10,10,9,1,0,130, + 130,68,40,16,16,16,16,16,16,7,10,10,9,1,0,254, + 2,4,8,16,32,64,128,128,254,4,12,12,9,3,255,240, + 128,128,128,128,128,128,128,128,128,128,240,7,10,10,9,1, + 0,128,64,64,32,16,16,8,4,4,2,4,12,12,9,2, + 255,240,16,16,16,16,16,16,16,16,16,16,240,7,4,4, + 9,1,6,16,40,68,130,8,1,1,9,0,255,255,3,3, + 3,9,3,10,128,64,32,7,7,7,9,1,0,124,2,2, + 126,130,134,122,7,10,10,9,1,0,128,128,128,188,194,130, + 130,130,194,188,7,7,7,9,1,0,124,130,128,128,128,130, + 124,7,10,10,9,1,0,2,2,2,122,134,130,130,130,134, + 122,7,7,7,9,1,0,124,130,130,254,128,130,124,7,10, + 10,9,1,0,28,34,34,32,32,248,32,32,32,32,7,10, + 10,9,1,253,122,132,132,132,120,128,124,130,130,124,7,10, + 10,9,1,0,128,128,128,188,194,130,130,130,130,130,5,10, + 10,9,2,0,96,0,0,224,32,32,32,32,32,248,5,13, + 13,9,2,253,24,0,0,56,8,8,8,8,8,8,136,136, + 112,7,10,10,9,1,0,128,128,128,132,136,144,176,200,132, + 130,5,10,10,9,2,0,224,32,32,32,32,32,32,32,32, + 248,7,7,7,9,1,0,236,146,146,146,146,146,130,7,7, + 7,9,1,0,188,194,130,130,130,130,130,7,7,7,9,1, + 0,124,130,130,130,130,130,124,7,10,10,9,1,253,184,196, + 130,130,130,196,184,128,128,128,7,10,10,9,1,253,58,70, + 130,130,130,70,58,2,2,2,7,7,7,9,1,0,156,98, + 66,64,64,64,64,7,7,7,9,1,0,124,130,128,124,2, + 130,124,7,9,9,9,1,0,32,32,252,32,32,32,32,34, + 28,7,7,7,9,1,0,130,130,130,130,130,134,122,7,7, + 7,9,1,0,130,130,68,68,40,40,16,7,7,7,9,1, + 0,130,130,146,146,146,170,68,7,7,7,9,1,0,130,68, + 40,16,40,68,130,7,10,10,9,1,253,66,66,36,36,36, + 24,24,16,144,96,7,7,7,9,1,0,254,4,8,16,32, + 64,254,6,11,11,9,2,0,28,32,32,32,32,192,32,32, + 32,32,28,1,12,12,9,4,255,128,128,128,128,128,128,128, + 128,128,128,128,128,6,11,11,9,1,0,224,16,16,16,16, + 12,16,16,16,16,224,7,3,3,9,1,7,98,146,140,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 0,0,0,9,0,14,1,11,11,9,4,0,128,128,0,0, + 128,128,128,128,128,128,128,6,8,8,9,1,0,8,120,148, + 144,160,164,120,64,7,10,10,9,1,0,28,34,32,32,248, + 32,32,96,162,92,7,6,6,9,1,3,130,124,68,68,124, + 130,7,10,10,9,1,0,130,130,68,40,124,16,124,16,16, + 16,1,11,11,9,4,255,128,128,128,128,128,0,128,128,128, + 128,128,4,11,11,9,2,255,96,144,128,96,144,144,144,96, + 16,144,96,3,2,2,9,3,11,160,160,8,9,9,9,0, + 1,60,66,153,165,161,165,153,66,60,5,7,7,9,1,3, + 96,144,112,144,120,0,248,7,8,8,9,1,1,18,36,72, + 144,144,72,36,18,6,4,4,9,1,2,252,4,4,4,5, + 1,1,9,2,4,248,8,9,9,9,0,1,60,66,185,165, + 189,169,165,66,60,6,1,1,9,1,9,252,4,4,4,9, + 3,6,96,144,144,96,7,9,9,9,1,1,16,16,16,254, + 16,16,16,0,254,4,6,6,9,1,4,96,144,16,96,128, + 240,4,6,6,9,1,4,96,144,32,16,144,96,3,3,3, + 9,3,10,32,64,128,7,9,9,9,1,254,130,130,130,130, + 130,198,186,128,128,7,10,10,9,1,0,126,138,138,138,122, + 10,10,10,10,10,2,2,2,9,4,4,192,192,4,3,3, + 9,2,253,32,144,96,3,6,6,9,1,4,64,192,64,64, + 64,224,5,6,6,9,1,4,112,136,136,112,0,248,7,8, + 8,9,1,1,144,72,36,18,18,36,72,144,7,10,10,9, + 1,0,64,192,64,64,66,230,10,18,26,6,7,10,10,9, + 1,0,64,192,64,64,76,242,2,12,16,30,7,10,10,9, + 1,0,96,144,32,16,146,102,10,18,26,6,7,10,10,9, + 1,0,16,0,16,16,32,64,128,130,130,124,7,14,14,9, + 1,0,32,16,8,0,16,40,40,40,68,124,68,130,130,130, + 7,14,14,9,1,0,8,16,32,0,16,40,40,40,68,124, + 68,130,130,130,7,14,14,9,1,0,16,40,68,0,16,40, + 40,40,68,124,68,130,130,130,7,13,13,9,1,0,52,88, + 0,16,40,40,40,68,124,68,130,130,130,7,13,13,9,1, + 0,40,40,0,16,40,40,40,68,124,68,130,130,130,7,14, + 14,9,1,0,16,40,40,16,16,40,40,40,68,124,68,130, + 130,130,7,10,10,9,1,0,30,40,40,40,78,120,72,136, + 136,142,7,13,13,9,1,253,60,66,128,128,128,128,128,128, + 66,60,8,36,24,7,14,14,9,1,0,32,16,8,0,254, + 128,128,128,248,128,128,128,128,254,7,14,14,9,1,0,8, + 16,32,0,254,128,128,128,248,128,128,128,128,254,7,14,14, + 9,1,0,16,40,68,0,254,128,128,128,248,128,128,128,128, + 254,7,13,13,9,1,0,40,40,0,254,128,128,128,248,128, + 128,128,128,254,5,14,14,9,2,0,64,32,16,0,248,32, + 32,32,32,32,32,32,32,248,5,14,14,9,2,0,16,32, + 64,0,248,32,32,32,32,32,32,32,32,248,5,14,14,9, + 2,0,32,80,136,0,248,32,32,32,32,32,32,32,32,248, + 5,13,13,9,2,0,80,80,0,248,32,32,32,32,32,32, + 32,32,248,7,10,10,9,1,0,120,68,66,66,242,66,66, + 66,68,120,7,13,13,9,1,0,52,88,0,130,130,194,162, + 146,138,134,130,130,130,7,14,14,9,1,0,32,16,8,0, + 124,130,130,130,130,130,130,130,130,124,7,14,14,9,1,0, + 8,16,32,0,124,130,130,130,130,130,130,130,130,124,7,14, + 14,9,1,0,16,40,68,0,124,130,130,130,130,130,130,130, + 130,124,7,13,13,9,1,0,52,88,0,124,130,130,130,130, + 130,130,130,130,124,7,13,13,9,1,0,40,40,0,124,130, + 130,130,130,130,130,130,130,124,7,7,7,9,1,1,130,68, + 40,16,40,68,130,7,12,12,9,1,255,2,124,134,138,138, + 146,146,162,162,194,124,128,7,14,14,9,1,0,32,16,8, + 0,130,130,130,130,130,130,130,130,68,56,7,14,14,9,1, + 0,8,16,32,0,130,130,130,130,130,130,130,130,68,56,7, + 14,14,9,1,0,16,40,68,0,130,130,130,130,130,130,130, + 130,68,56,7,13,13,9,1,0,40,40,0,130,130,130,130, + 130,130,130,130,68,56,7,14,14,9,1,0,8,16,32,0, + 130,130,68,40,16,16,16,16,16,16,7,10,10,9,1,0, + 128,128,252,130,130,130,252,128,128,128,6,10,10,9,1,0, + 56,68,68,72,208,72,68,68,68,88,7,11,11,9,1,0, + 32,16,8,0,124,2,2,126,130,134,122,7,11,11,9,1, + 0,8,16,32,0,124,2,2,126,130,134,122,7,11,11,9, + 1,0,16,40,68,0,124,2,2,126,130,134,122,7,10,10, + 9,1,0,52,88,0,124,2,2,126,130,134,122,7,10,10, + 9,1,0,40,40,0,124,2,2,126,130,134,122,7,12,12, + 9,1,0,16,40,40,16,0,124,2,2,126,130,134,122,7, + 7,7,9,1,0,108,18,18,126,144,146,108,7,10,10,9, + 1,253,124,130,128,128,128,130,124,16,72,48,7,11,11,9, + 1,0,32,16,8,0,124,130,130,254,128,130,124,7,11,11, + 9,1,0,8,16,32,0,124,130,130,254,128,130,124,7,11, + 11,9,1,0,16,40,68,0,124,130,130,254,128,130,124,7, + 10,10,9,1,0,40,40,0,124,130,130,254,128,130,124,5, + 12,12,9,2,0,128,64,32,0,0,224,32,32,32,32,32, + 248,5,12,12,9,2,0,16,32,64,0,0,224,32,32,32, + 32,32,248,5,12,12,9,2,0,32,80,136,0,0,224,32, + 32,32,32,32,248,5,11,11,9,2,0,80,80,0,0,224, + 32,32,32,32,32,248,7,11,11,9,1,0,72,48,80,8, + 60,68,130,130,130,68,56,7,10,10,9,1,0,52,88,0, + 188,194,130,130,130,130,130,7,11,11,9,1,0,32,16,8, + 0,124,130,130,130,130,130,124,7,11,11,9,1,0,8,16, + 32,0,124,130,130,130,130,130,124,7,11,11,9,1,0,16, + 40,68,0,124,130,130,130,130,130,124,7,10,10,9,1,0, + 52,88,0,124,130,130,130,130,130,124,7,10,10,9,1,0, + 40,40,0,124,130,130,130,130,130,124,7,9,9,9,1,0, + 16,56,16,0,254,0,16,56,16,7,9,9,9,1,255,2, + 124,138,138,146,162,162,124,128,7,11,11,9,1,0,64,32, + 16,0,130,130,130,130,130,134,122,7,11,11,9,1,0,8, + 16,32,0,130,130,130,130,130,134,122,7,11,11,9,1,0, + 16,40,68,0,130,130,130,130,130,134,122,7,10,10,9,1, + 0,40,40,0,130,130,130,130,130,134,122,7,14,14,9,1, + 253,4,8,16,0,66,66,36,36,36,24,24,16,144,96,7, + 11,11,9,1,254,128,128,184,196,130,130,130,196,184,128,128, + 7,13,13,9,1,253,36,36,0,66,66,36,36,36,24,24, + 16,144,96}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--18-120-100-100-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 8 h=13 x= 4 y=14 dx= 9 dy= 0 ascent=14 len=13 + Font Bounding box w= 9 h=18 x= 0 y=-4 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x18r[1424] U8G_SECTION(".progmem.u8g_font_9x18r") = { + 0,9,18,0,252,10,1,232,3,215,32,127,253,14,253,11, + 253,0,0,0,9,0,14,1,11,11,9,4,0,128,128,128, + 128,128,128,128,0,0,128,128,4,4,4,9,3,7,144,144, + 144,144,8,10,10,9,0,0,36,36,36,255,36,36,255,36, + 36,36,7,11,11,9,1,255,16,124,146,144,80,56,20,18, + 146,124,16,7,10,10,9,1,0,66,164,164,72,16,16,36, + 74,74,132,7,10,10,9,1,0,96,144,144,144,96,98,148, + 136,148,98,1,4,4,9,4,7,128,128,128,128,3,12,12, + 9,3,255,32,64,64,128,128,128,128,128,128,64,64,32,3, + 12,12,9,3,255,128,64,64,32,32,32,32,32,32,64,64, + 128,7,7,7,9,1,3,16,146,84,56,84,146,16,7,7, + 7,9,1,1,16,16,16,254,16,16,16,2,4,4,9,4, + 254,192,192,64,128,7,1,1,9,1,4,254,2,2,2,9, + 4,0,192,192,7,10,10,9,1,0,2,4,4,8,16,16, + 32,64,64,128,7,10,10,9,1,0,56,68,130,130,130,130, + 130,130,68,56,7,10,10,9,1,0,16,48,80,144,16,16, + 16,16,16,254,7,10,10,9,1,0,56,68,130,2,4,8, + 16,32,64,254,7,10,10,9,1,0,254,2,4,8,24,4, + 2,2,132,120,7,10,10,9,1,0,4,12,20,36,68,132, + 254,4,4,4,7,10,10,9,1,0,254,128,128,128,248,4, + 2,2,132,120,7,10,10,9,1,0,60,64,128,128,184,196, + 130,130,68,56,7,10,10,9,1,0,254,2,4,4,8,8, + 16,16,16,16,7,10,10,9,1,0,56,68,130,68,56,68, + 130,130,68,56,7,10,10,9,1,0,56,68,130,130,70,58, + 2,2,4,120,2,7,7,9,4,0,192,192,0,0,0,192, + 192,2,9,9,9,4,254,192,192,0,0,0,192,192,64,128, + 5,9,9,9,2,0,8,16,32,64,128,64,32,16,8,7, + 4,4,9,1,2,254,0,0,254,5,9,9,9,2,0,128, + 64,32,16,8,16,32,64,128,7,10,10,9,1,0,56,68, + 130,2,4,8,16,16,0,16,7,10,10,9,1,0,56,68, + 154,170,170,170,170,156,64,60,7,10,10,9,1,0,16,40, + 40,40,68,124,68,130,130,130,7,10,10,9,1,0,248,132, + 130,132,248,132,130,130,132,248,7,10,10,9,1,0,60,66, + 128,128,128,128,128,128,66,60,7,10,10,9,1,0,248,132, + 130,130,130,130,130,130,132,248,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,254,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,128,7,10,10,9,1,0,56,68, + 130,128,128,142,130,130,68,56,7,10,10,9,1,0,130,130, + 130,130,254,130,130,130,130,130,5,10,10,9,2,0,248,32, + 32,32,32,32,32,32,32,248,7,10,10,9,1,0,62,8, + 8,8,8,8,8,136,136,112,7,10,10,9,1,0,130,132, + 136,144,160,208,136,132,130,130,7,10,10,9,1,0,128,128, + 128,128,128,128,128,128,128,254,7,10,10,9,1,0,130,130, + 198,170,146,130,130,130,130,130,7,10,10,9,1,0,130,130, + 194,162,146,138,134,130,130,130,7,10,10,9,1,0,124,130, + 130,130,130,130,130,130,130,124,7,10,10,9,1,0,248,132, + 130,130,132,248,128,128,128,128,8,11,11,9,1,255,56,68, + 130,130,130,130,130,138,68,58,1,7,10,10,9,1,0,248, + 132,130,130,132,248,144,136,132,130,7,10,10,9,1,0,124, + 130,128,128,124,2,2,2,130,124,7,10,10,9,1,0,254, + 16,16,16,16,16,16,16,16,16,7,10,10,9,1,0,130, + 130,130,130,130,130,130,130,68,56,7,10,10,9,1,0,130, + 130,130,68,68,68,40,40,40,16,7,10,10,9,1,0,130, + 130,130,130,146,146,146,146,170,68,7,10,10,9,1,0,130, + 130,68,40,16,16,40,68,130,130,7,10,10,9,1,0,130, + 130,68,40,16,16,16,16,16,16,7,10,10,9,1,0,254, + 2,4,8,16,32,64,128,128,254,4,12,12,9,3,255,240, + 128,128,128,128,128,128,128,128,128,128,240,7,10,10,9,1, + 0,128,64,64,32,16,16,8,4,4,2,4,12,12,9,2, + 255,240,16,16,16,16,16,16,16,16,16,16,240,7,4,4, + 9,1,6,16,40,68,130,8,1,1,9,0,255,255,3,3, + 3,9,3,10,128,64,32,7,7,7,9,1,0,124,2,2, + 126,130,134,122,7,10,10,9,1,0,128,128,128,188,194,130, + 130,130,194,188,7,7,7,9,1,0,124,130,128,128,128,130, + 124,7,10,10,9,1,0,2,2,2,122,134,130,130,130,134, + 122,7,7,7,9,1,0,124,130,130,254,128,130,124,7,10, + 10,9,1,0,28,34,34,32,32,248,32,32,32,32,7,10, + 10,9,1,253,122,132,132,132,120,128,124,130,130,124,7,10, + 10,9,1,0,128,128,128,188,194,130,130,130,130,130,5,10, + 10,9,2,0,96,0,0,224,32,32,32,32,32,248,5,13, + 13,9,2,253,24,0,0,56,8,8,8,8,8,8,136,136, + 112,7,10,10,9,1,0,128,128,128,132,136,144,176,200,132, + 130,5,10,10,9,2,0,224,32,32,32,32,32,32,32,32, + 248,7,7,7,9,1,0,236,146,146,146,146,146,130,7,7, + 7,9,1,0,188,194,130,130,130,130,130,7,7,7,9,1, + 0,124,130,130,130,130,130,124,7,10,10,9,1,253,184,196, + 130,130,130,196,184,128,128,128,7,10,10,9,1,253,58,70, + 130,130,130,70,58,2,2,2,7,7,7,9,1,0,156,98, + 66,64,64,64,64,7,7,7,9,1,0,124,130,128,124,2, + 130,124,7,9,9,9,1,0,32,32,252,32,32,32,32,34, + 28,7,7,7,9,1,0,130,130,130,130,130,134,122,7,7, + 7,9,1,0,130,130,68,68,40,40,16,7,7,7,9,1, + 0,130,130,146,146,146,170,68,7,7,7,9,1,0,130,68, + 40,16,40,68,130,7,10,10,9,1,253,66,66,36,36,36, + 24,24,16,144,96,7,7,7,9,1,0,254,4,8,16,32, + 64,254,6,11,11,9,2,0,28,32,32,32,32,192,32,32, + 32,32,28,1,12,12,9,4,255,128,128,128,128,128,128,128, + 128,128,128,128,128,6,11,11,9,1,0,224,16,16,16,16, + 12,16,16,16,16,224,7,3,3,9,1,7,98,146,140,255 + }; +/* + Fontname: -FreeType-Baby-Medium-R-Normal--8-80-72-72-P-42-ISO10646-1 + Copyright: Copyright mrsbarrett 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 9 h= 9 x= 1 y= 5 dx=10 dy= 0 ascent= 8 len=12 + Font Bounding box w=10 h=10 x=-1 y=-2 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 6 descent=-2 + Max Font ascent = 8 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_baby[2227] U8G_SECTION(".progmem.u8g_font_baby") = { + 0,10,10,255,254,5,1,108,2,200,32,255,254,8,254,6, + 254,0,0,0,2,0,0,1,6,6,3,1,0,128,128,128, + 128,0,128,3,3,3,4,0,4,160,160,160,5,5,5,6, + 0,0,80,248,80,248,80,3,7,7,4,0,255,64,96,128, + 64,32,192,64,5,5,5,6,0,0,200,208,32,88,152,5, + 6,6,6,0,0,64,160,64,160,144,104,1,3,3,2,0, + 4,128,128,128,2,7,7,3,0,255,64,128,128,128,128,128, + 64,2,7,7,3,0,255,128,64,64,64,64,64,128,3,3, + 3,4,0,3,160,64,160,3,3,3,5,1,1,64,224,64, + 2,3,3,3,0,254,192,64,128,3,1,1,4,0,2,224, + 1,1,1,2,0,0,128,3,6,6,4,0,255,32,32,64, + 64,128,128,3,5,5,4,0,0,64,160,160,160,64,2,5, + 5,3,0,0,64,192,64,64,64,4,5,5,5,0,0,96, + 144,32,64,240,4,5,5,5,0,0,224,16,96,16,224,4, + 5,5,5,0,0,144,144,144,112,16,4,5,5,5,0,0, + 240,128,224,16,224,4,5,5,5,0,0,96,128,224,144,96, + 4,5,5,5,0,0,240,16,32,64,128,4,5,5,5,0, + 0,96,144,96,144,96,4,5,5,5,0,0,96,144,112,16, + 96,1,3,3,3,1,0,128,0,128,2,5,5,3,0,254, + 64,0,64,64,128,4,5,5,5,0,0,16,96,128,96,16, + 3,3,3,4,0,1,224,0,224,4,5,5,5,0,0,128, + 96,16,96,128,4,6,6,5,0,0,96,144,32,64,0,64, + 5,6,6,6,0,0,112,136,168,176,128,112,4,5,5,5, + 0,0,96,144,144,240,144,4,5,5,5,0,0,224,144,224, + 144,224,4,5,5,5,0,0,96,144,128,144,96,4,5,5, + 5,0,0,224,144,144,144,224,4,5,5,5,0,0,240,128, + 224,128,240,4,5,5,5,0,0,240,128,224,128,128,4,5, + 5,5,0,0,96,128,176,144,96,4,5,5,5,0,0,144, + 144,240,144,144,3,5,5,4,0,0,224,64,64,64,224,4, + 5,5,5,0,0,112,16,16,144,96,4,5,5,5,0,0, + 144,144,144,224,144,3,5,5,4,0,0,128,128,128,128,224, + 5,5,5,6,0,0,216,168,168,168,136,4,5,5,5,0, + 0,144,144,208,176,144,4,5,5,5,0,0,96,144,144,144, + 96,4,5,5,5,0,0,224,144,144,224,128,4,5,5,5, + 0,0,96,144,144,80,224,4,5,5,5,0,0,224,144,144, + 224,144,3,5,5,4,0,0,96,128,64,32,192,3,5,5, + 4,0,0,224,64,64,64,64,4,5,5,5,0,0,144,144, + 144,144,96,5,5,5,6,0,0,136,80,80,80,32,5,5, + 5,6,0,0,136,136,136,168,80,4,5,5,5,0,0,144, + 144,144,96,144,4,6,6,5,0,255,144,144,144,112,16,96, + 4,5,5,5,0,0,240,32,64,128,240,2,7,7,3,0, + 255,192,128,128,128,128,128,192,3,6,6,4,0,255,128,128, + 64,64,32,32,2,7,7,3,0,255,192,64,64,64,64,64, + 192,3,2,2,4,0,4,64,160,4,1,1,5,0,255,240, + 2,2,2,3,0,5,128,64,4,4,4,5,0,0,96,144, + 144,112,4,5,5,5,0,0,128,224,144,144,96,3,4,4, + 4,0,0,96,128,128,96,4,5,5,5,0,0,16,112,144, + 144,96,4,4,4,5,0,0,96,144,160,112,4,5,5,5, + 0,0,96,144,128,192,128,4,6,6,5,0,254,96,144,144, + 112,16,96,4,5,5,5,0,0,128,224,144,144,144,1,5, + 5,2,0,0,128,0,128,128,128,3,7,7,3,255,254,32, + 0,32,32,32,32,192,3,5,5,4,0,0,128,160,192,160, + 160,1,5,5,2,0,0,128,128,128,128,128,5,4,4,6, + 0,0,208,168,168,136,4,4,4,5,0,0,224,144,144,144, + 4,4,4,5,0,0,96,144,144,96,4,6,6,5,0,254, + 96,144,144,224,128,128,4,6,6,5,0,254,96,144,144,112, + 16,16,4,4,4,5,0,0,224,144,128,128,4,4,4,5, + 0,0,112,64,32,224,3,5,5,4,0,0,64,224,64,64, + 64,4,4,4,5,0,0,144,144,144,112,4,4,4,5,0, + 0,144,144,144,96,5,4,4,6,0,0,136,168,168,80,4, + 4,4,5,0,0,144,144,96,144,4,6,6,5,0,254,144, + 144,144,112,16,96,4,4,4,5,0,0,240,32,64,240,3, + 7,7,4,0,255,32,64,64,128,64,64,32,1,7,7,2, + 0,255,128,128,128,128,128,128,128,3,7,7,4,0,255,128, + 64,64,32,64,64,128,5,3,3,6,0,1,64,168,16,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,1,6,6,3,1,255,128,0,128,128,128,128,4,6,6, + 5,0,255,16,112,160,160,112,64,4,6,6,5,0,0,96, + 208,64,224,64,240,4,4,4,5,0,1,240,144,144,240,5, + 7,7,6,0,255,136,80,32,112,32,112,32,1,7,7,2, + 0,255,128,128,128,0,128,128,128,4,7,7,5,0,255,112, + 128,96,144,96,16,224,3,1,1,4,0,5,160,7,7,7, + 8,0,255,56,68,154,162,154,68,56,3,3,3,4,0,4, + 96,160,224,4,3,3,5,0,1,80,160,80,5,3,3,6, + 0,1,248,8,8,2,1,1,3,0,2,192,7,7,7,8, + 0,255,56,68,178,186,170,68,56,4,1,1,5,0,5,240, + 3,3,3,4,0,4,64,160,64,3,5,5,4,0,0,64, + 224,64,0,224,3,4,4,4,0,4,192,32,64,224,3,4, + 4,4,0,4,224,32,96,224,2,2,2,3,0,5,64,128, + 5,6,6,6,0,254,144,144,144,248,128,128,5,6,6,6, + 0,0,120,232,232,104,40,40,1,1,1,3,1,2,128,3, + 3,3,4,0,254,64,32,192,3,4,4,4,0,4,64,192, + 64,224,4,4,4,5,0,4,96,144,144,96,4,3,3,5, + 0,1,160,80,160,7,6,6,8,0,0,136,144,160,42,78, + 130,7,6,6,8,0,0,136,144,164,42,68,142,9,6,12, + 10,0,0,226,0,100,0,232,0,10,128,19,128,32,128,4, + 6,6,5,0,255,32,0,32,64,144,96,4,8,8,5,0, + 0,64,32,0,96,144,144,240,144,4,8,8,5,0,0,32, + 64,0,96,144,144,240,144,4,8,8,5,0,0,96,144,0, + 96,144,144,240,144,4,8,8,5,0,0,80,160,0,96,144, + 144,240,144,4,7,7,5,0,0,80,0,96,144,144,240,144, + 4,7,7,5,0,0,96,0,96,144,144,240,144,7,5,5, + 8,0,0,126,144,156,240,158,4,7,7,5,0,254,96,144, + 128,144,96,32,64,4,8,8,5,0,0,64,32,0,240,128, + 224,128,240,4,8,8,5,0,0,32,64,0,240,128,224,128, + 240,4,8,8,5,0,0,96,144,0,240,128,224,128,240,4, + 7,7,5,0,0,80,0,240,128,224,128,240,3,8,8,4, + 0,0,128,64,0,224,64,64,64,224,3,8,8,4,0,0, + 32,64,0,224,64,64,64,224,3,8,8,4,0,0,64,160, + 0,224,64,64,64,224,3,7,7,4,0,0,160,0,224,64, + 64,64,224,5,5,5,6,0,0,112,72,232,72,112,4,8, + 8,5,0,0,80,160,0,144,144,208,176,144,4,8,8,5, + 0,0,64,32,0,96,144,144,144,96,4,8,8,5,0,0, + 32,64,0,96,144,144,144,96,4,8,8,5,0,0,96,144, + 0,96,144,144,144,96,4,8,8,5,0,0,80,160,0,96, + 144,144,144,96,4,7,7,5,0,0,80,0,96,144,144,144, + 96,3,3,3,4,0,1,160,64,160,6,5,5,7,0,0, + 48,76,120,200,48,4,8,8,5,0,0,64,32,0,144,144, + 144,144,96,4,8,8,5,0,0,32,64,0,144,144,144,144, + 96,4,8,8,5,0,0,96,144,0,144,144,144,144,96,4, + 7,7,5,0,0,80,0,144,144,144,144,96,4,9,9,5, + 0,255,32,64,0,144,144,144,112,16,96,4,6,6,5,0, + 0,128,224,144,144,224,128,4,5,5,5,0,0,96,144,160, + 144,160,4,7,7,5,0,0,64,32,0,96,144,144,112,4, + 7,7,5,0,0,32,64,0,96,144,144,112,4,7,7,5, + 0,0,96,144,0,96,144,144,112,4,7,7,5,0,0,80, + 160,0,96,144,144,112,4,6,6,5,0,0,80,0,96,144, + 144,112,4,7,7,5,0,0,96,96,0,96,144,144,112,7, + 4,4,8,0,0,108,146,148,126,3,6,6,4,0,254,96, + 128,128,96,32,64,4,7,7,5,0,0,64,32,0,96,144, + 160,112,4,7,7,5,0,0,32,64,0,96,144,160,112,4, + 7,7,5,0,0,96,144,0,96,144,160,112,4,6,6,5, + 0,0,80,0,96,144,160,112,2,6,6,3,0,0,128,64, + 0,64,64,64,2,6,6,3,0,0,64,128,0,128,128,128, + 3,6,6,4,0,0,64,160,0,64,64,64,3,5,5,4, + 0,0,160,0,64,64,64,5,6,6,6,0,0,96,24,112, + 144,144,96,4,7,7,5,0,0,80,160,0,224,144,144,144, + 4,7,7,5,0,0,64,32,0,96,144,144,96,4,7,7, + 5,0,0,32,64,0,96,144,144,96,4,7,7,5,0,0, + 96,144,0,96,144,144,96,4,7,7,5,0,0,80,160,0, + 96,144,144,96,4,6,6,5,0,0,80,0,96,144,144,96, + 5,5,5,6,0,0,32,0,248,0,32,4,4,4,5,0, + 0,96,176,208,96,4,7,7,5,0,0,64,32,0,144,144, + 144,112,4,7,7,5,0,0,32,64,0,144,144,144,112,4, + 7,7,5,0,0,96,144,0,144,144,144,112,4,6,6,5, + 0,0,80,0,144,144,144,112,4,9,9,5,0,254,32,64, + 0,144,144,144,112,16,96,4,8,8,5,0,254,128,128,224, + 144,144,224,128,128,4,8,8,5,0,254,80,0,144,144,144, + 112,16,96}; +/* + Fontname: -FreeType-Baby-Medium-R-Normal--8-80-72-72-P-42-ISO10646-1 + Copyright: Copyright mrsbarrett 2008 + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 4 h= 6 x= 1 y= 3 dx= 5 dy= 0 ascent= 6 len= 6 + Font Bounding box w=10 h=10 x=-1 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 6 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_babyn[180] U8G_SECTION(".progmem.u8g_font_babyn") = { + 0,10,10,255,254,5,0,0,0,0,42,57,0,6,254,5, + 0,3,3,3,4,0,3,160,64,160,3,3,3,5,1,1, + 64,224,64,2,3,3,3,0,254,192,64,128,3,1,1,4, + 0,2,224,1,1,1,2,0,0,128,3,6,6,4,0,255, + 32,32,64,64,128,128,3,5,5,4,0,0,64,160,160,160, + 64,2,5,5,3,0,0,64,192,64,64,64,4,5,5,5, + 0,0,96,144,32,64,240,4,5,5,5,0,0,224,16,96, + 16,224,4,5,5,5,0,0,144,144,144,112,16,4,5,5, + 5,0,0,240,128,224,16,224,4,5,5,5,0,0,96,128, + 224,144,96,4,5,5,5,0,0,240,16,32,64,128,4,5, + 5,5,0,0,96,144,96,144,96,4,5,5,5,0,0,96, + 144,112,16,96}; +/* + Fontname: -FreeType-Baby-Medium-R-Normal--8-80-72-72-P-42-ISO10646-1 + Copyright: Copyright mrsbarrett 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 7 x= 1 y= 5 dx= 6 dy= 0 ascent= 7 len= 7 + Font Bounding box w=10 h=10 x=-1 y=-2 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 6 descent=-2 + Max Font ascent = 7 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_babyr[1040] U8G_SECTION(".progmem.u8g_font_babyr") = { + 0,10,10,255,254,5,1,108,2,200,32,127,254,7,254,6, + 254,0,0,0,2,0,0,1,6,6,3,1,0,128,128,128, + 128,0,128,3,3,3,4,0,4,160,160,160,5,5,5,6, + 0,0,80,248,80,248,80,3,7,7,4,0,255,64,96,128, + 64,32,192,64,5,5,5,6,0,0,200,208,32,88,152,5, + 6,6,6,0,0,64,160,64,160,144,104,1,3,3,2,0, + 4,128,128,128,2,7,7,3,0,255,64,128,128,128,128,128, + 64,2,7,7,3,0,255,128,64,64,64,64,64,128,3,3, + 3,4,0,3,160,64,160,3,3,3,5,1,1,64,224,64, + 2,3,3,3,0,254,192,64,128,3,1,1,4,0,2,224, + 1,1,1,2,0,0,128,3,6,6,4,0,255,32,32,64, + 64,128,128,3,5,5,4,0,0,64,160,160,160,64,2,5, + 5,3,0,0,64,192,64,64,64,4,5,5,5,0,0,96, + 144,32,64,240,4,5,5,5,0,0,224,16,96,16,224,4, + 5,5,5,0,0,144,144,144,112,16,4,5,5,5,0,0, + 240,128,224,16,224,4,5,5,5,0,0,96,128,224,144,96, + 4,5,5,5,0,0,240,16,32,64,128,4,5,5,5,0, + 0,96,144,96,144,96,4,5,5,5,0,0,96,144,112,16, + 96,1,3,3,3,1,0,128,0,128,2,5,5,3,0,254, + 64,0,64,64,128,4,5,5,5,0,0,16,96,128,96,16, + 3,3,3,4,0,1,224,0,224,4,5,5,5,0,0,128, + 96,16,96,128,4,6,6,5,0,0,96,144,32,64,0,64, + 5,6,6,6,0,0,112,136,168,176,128,112,4,5,5,5, + 0,0,96,144,144,240,144,4,5,5,5,0,0,224,144,224, + 144,224,4,5,5,5,0,0,96,144,128,144,96,4,5,5, + 5,0,0,224,144,144,144,224,4,5,5,5,0,0,240,128, + 224,128,240,4,5,5,5,0,0,240,128,224,128,128,4,5, + 5,5,0,0,96,128,176,144,96,4,5,5,5,0,0,144, + 144,240,144,144,3,5,5,4,0,0,224,64,64,64,224,4, + 5,5,5,0,0,112,16,16,144,96,4,5,5,5,0,0, + 144,144,144,224,144,3,5,5,4,0,0,128,128,128,128,224, + 5,5,5,6,0,0,216,168,168,168,136,4,5,5,5,0, + 0,144,144,208,176,144,4,5,5,5,0,0,96,144,144,144, + 96,4,5,5,5,0,0,224,144,144,224,128,4,5,5,5, + 0,0,96,144,144,80,224,4,5,5,5,0,0,224,144,144, + 224,144,3,5,5,4,0,0,96,128,64,32,192,3,5,5, + 4,0,0,224,64,64,64,64,4,5,5,5,0,0,144,144, + 144,144,96,5,5,5,6,0,0,136,80,80,80,32,5,5, + 5,6,0,0,136,136,136,168,80,4,5,5,5,0,0,144, + 144,144,96,144,4,6,6,5,0,255,144,144,144,112,16,96, + 4,5,5,5,0,0,240,32,64,128,240,2,7,7,3,0, + 255,192,128,128,128,128,128,192,3,6,6,4,0,255,128,128, + 64,64,32,32,2,7,7,3,0,255,192,64,64,64,64,64, + 192,3,2,2,4,0,4,64,160,4,1,1,5,0,255,240, + 2,2,2,3,0,5,128,64,4,4,4,5,0,0,96,144, + 144,112,4,5,5,5,0,0,128,224,144,144,96,3,4,4, + 4,0,0,96,128,128,96,4,5,5,5,0,0,16,112,144, + 144,96,4,4,4,5,0,0,96,144,160,112,4,5,5,5, + 0,0,96,144,128,192,128,4,6,6,5,0,254,96,144,144, + 112,16,96,4,5,5,5,0,0,128,224,144,144,144,1,5, + 5,2,0,0,128,0,128,128,128,3,7,7,3,255,254,32, + 0,32,32,32,32,192,3,5,5,4,0,0,128,160,192,160, + 160,1,5,5,2,0,0,128,128,128,128,128,5,4,4,6, + 0,0,208,168,168,136,4,4,4,5,0,0,224,144,144,144, + 4,4,4,5,0,0,96,144,144,96,4,6,6,5,0,254, + 96,144,144,224,128,128,4,6,6,5,0,254,96,144,144,112, + 16,16,4,4,4,5,0,0,224,144,128,128,4,4,4,5, + 0,0,112,64,32,224,3,5,5,4,0,0,64,224,64,64, + 64,4,4,4,5,0,0,144,144,144,112,4,4,4,5,0, + 0,144,144,144,96,5,4,4,6,0,0,136,168,168,80,4, + 4,4,5,0,0,144,144,96,144,4,6,6,5,0,254,144, + 144,144,112,16,96,4,4,4,5,0,0,240,32,64,240,3, + 7,7,4,0,255,32,64,64,128,64,64,32,1,7,7,2, + 0,255,128,128,128,128,128,128,128,3,7,7,4,0,255,128, + 64,64,32,64,64,128,5,3,3,6,0,1,64,168,16,255 + }; +/* + Fontname: -FreeType-Blipfest 07-Medium-R-Normal--8-80-72-72-P-33-ISO10646-1 + Copyright: Copyright cwillmor 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 3 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_blipfest_07[948] U8G_SECTION(".progmem.u8g_font_blipfest_07") = { + 0,5,6,0,255,5,1,5,2,47,32,255,255,5,255,5, + 255,0,0,0,1,0,0,1,5,5,2,0,0,128,128,128, + 0,128,3,2,2,4,0,3,160,160,255,255,255,4,5,5, + 5,0,0,224,160,240,160,240,1,2,2,2,0,3,128,128, + 255,255,255,3,3,3,4,0,1,64,224,64,1,2,2,2, + 0,0,128,128,3,1,1,4,0,2,224,1,1,1,2,0, + 0,128,255,3,5,5,4,0,0,224,160,160,160,224,2,5, + 5,3,0,0,192,64,64,64,64,3,5,5,4,0,0,224, + 32,224,128,224,3,5,5,4,0,0,224,32,224,32,224,3, + 5,5,4,0,0,160,160,224,32,32,3,5,5,4,0,0, + 224,128,224,32,224,3,5,5,4,0,0,224,128,224,160,224, + 3,5,5,4,0,0,224,32,32,32,32,3,5,5,4,0, + 0,224,160,224,160,224,3,5,5,4,0,0,224,160,224,32, + 224,1,3,3,2,0,0,128,0,128,1,4,4,2,0,255, + 128,0,128,128,255,3,3,3,4,0,1,224,0,224,255,3, + 5,5,4,0,0,224,32,96,0,64,5,5,5,6,0,0, + 248,136,184,168,240,3,5,5,4,0,0,224,160,160,224,160, + 3,5,5,4,0,0,224,160,224,160,224,3,5,5,4,0, + 0,224,128,128,128,224,3,5,5,4,0,0,192,160,160,160, + 192,3,5,5,4,0,0,224,128,224,128,224,3,5,5,4, + 0,0,224,128,224,128,128,3,5,5,4,0,0,224,128,160, + 160,224,3,5,5,4,0,0,160,160,160,224,160,3,5,5, + 4,0,0,224,64,64,64,224,3,5,5,4,0,0,32,32, + 32,160,224,3,5,5,4,0,0,160,160,160,192,160,3,5, + 5,4,0,0,128,128,128,128,224,3,5,5,4,0,0,160, + 224,160,160,160,3,5,5,4,0,0,224,160,160,160,160,3, + 5,5,4,0,0,224,160,160,160,224,3,5,5,4,0,0, + 224,160,160,224,128,3,5,5,4,0,0,224,160,160,224,64, + 3,5,5,4,0,0,224,160,160,192,160,3,5,5,4,0, + 0,224,128,224,32,224,3,5,5,4,0,0,224,64,64,64, + 64,3,5,5,4,0,0,160,160,160,160,224,3,5,5,4, + 0,0,160,160,160,160,64,3,5,5,4,0,0,160,160,160, + 224,224,3,5,5,4,0,0,160,160,64,160,160,3,5,5, + 4,0,0,160,160,160,64,64,3,5,5,4,0,0,224,32, + 224,128,224,255,255,255,255,3,1,1,4,0,0,224,255,3, + 3,3,4,0,0,96,160,224,3,5,5,4,0,0,128,128, + 224,160,224,3,3,3,4,0,0,224,128,224,3,5,5,4, + 0,0,32,32,224,160,224,3,3,3,4,0,0,224,160,192, + 3,5,5,4,0,0,96,64,224,64,64,3,4,4,4,0, + 255,224,160,224,64,3,5,5,4,0,0,128,128,224,160,160, + 1,5,5,2,0,0,128,0,128,128,128,2,5,5,3,0, + 0,64,0,64,64,192,3,5,5,4,0,0,128,128,160,192, + 160,1,5,5,2,0,0,128,128,128,128,128,5,3,3,6, + 0,0,248,168,168,3,3,3,4,0,0,192,160,160,3,3, + 3,4,0,0,224,160,224,3,4,4,4,0,255,224,160,224, + 128,3,4,4,4,0,255,224,160,224,32,3,3,3,4,0, + 0,224,128,128,3,3,3,4,0,0,96,64,192,3,5,5, + 4,0,0,64,224,64,64,96,3,3,3,4,0,0,160,160, + 224,3,3,3,4,0,0,160,160,64,5,3,3,6,0,0, + 168,168,80,3,3,3,4,0,0,160,64,160,3,4,4,4, + 0,255,160,160,224,32,3,3,3,4,0,0,224,64,224,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255}; +/* + Fontname: -FreeType-Blipfest 07-Medium-R-Normal--8-80-72-72-P-33-ISO10646-1 + Copyright: Copyright cwillmor 2008 + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 3 h= 5 x= 0 y= 2 dx= 4 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_blipfest_07n[160] U8G_SECTION(".progmem.u8g_font_blipfest_07n") = { + 0,5,6,0,255,5,0,0,0,0,42,57,0,5,0,5, + 0,255,3,3,3,4,0,1,64,224,64,1,2,2,2,0, + 0,128,128,3,1,1,4,0,2,224,1,1,1,2,0,0, + 128,255,3,5,5,4,0,0,224,160,160,160,224,2,5,5, + 3,0,0,192,64,64,64,64,3,5,5,4,0,0,224,32, + 224,128,224,3,5,5,4,0,0,224,32,224,32,224,3,5, + 5,4,0,0,160,160,224,32,32,3,5,5,4,0,0,224, + 128,224,32,224,3,5,5,4,0,0,224,128,224,160,224,3, + 5,5,4,0,0,224,32,32,32,32,3,5,5,4,0,0, + 224,160,224,160,224,3,5,5,4,0,0,224,160,224,32,224 + }; +/* + Fontname: -FreeType-Blipfest 07-Medium-R-Normal--8-80-72-72-P-33-ISO10646-1 + Copyright: Copyright cwillmor 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 3 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_blipfest_07r[820] U8G_SECTION(".progmem.u8g_font_blipfest_07r") = { + 0,5,6,0,255,5,1,5,2,47,32,127,255,5,255,5, + 255,0,0,0,1,0,0,1,5,5,2,0,0,128,128,128, + 0,128,3,2,2,4,0,3,160,160,255,255,255,4,5,5, + 5,0,0,224,160,240,160,240,1,2,2,2,0,3,128,128, + 255,255,255,3,3,3,4,0,1,64,224,64,1,2,2,2, + 0,0,128,128,3,1,1,4,0,2,224,1,1,1,2,0, + 0,128,255,3,5,5,4,0,0,224,160,160,160,224,2,5, + 5,3,0,0,192,64,64,64,64,3,5,5,4,0,0,224, + 32,224,128,224,3,5,5,4,0,0,224,32,224,32,224,3, + 5,5,4,0,0,160,160,224,32,32,3,5,5,4,0,0, + 224,128,224,32,224,3,5,5,4,0,0,224,128,224,160,224, + 3,5,5,4,0,0,224,32,32,32,32,3,5,5,4,0, + 0,224,160,224,160,224,3,5,5,4,0,0,224,160,224,32, + 224,1,3,3,2,0,0,128,0,128,1,4,4,2,0,255, + 128,0,128,128,255,3,3,3,4,0,1,224,0,224,255,3, + 5,5,4,0,0,224,32,96,0,64,5,5,5,6,0,0, + 248,136,184,168,240,3,5,5,4,0,0,224,160,160,224,160, + 3,5,5,4,0,0,224,160,224,160,224,3,5,5,4,0, + 0,224,128,128,128,224,3,5,5,4,0,0,192,160,160,160, + 192,3,5,5,4,0,0,224,128,224,128,224,3,5,5,4, + 0,0,224,128,224,128,128,3,5,5,4,0,0,224,128,160, + 160,224,3,5,5,4,0,0,160,160,160,224,160,3,5,5, + 4,0,0,224,64,64,64,224,3,5,5,4,0,0,32,32, + 32,160,224,3,5,5,4,0,0,160,160,160,192,160,3,5, + 5,4,0,0,128,128,128,128,224,3,5,5,4,0,0,160, + 224,160,160,160,3,5,5,4,0,0,224,160,160,160,160,3, + 5,5,4,0,0,224,160,160,160,224,3,5,5,4,0,0, + 224,160,160,224,128,3,5,5,4,0,0,224,160,160,224,64, + 3,5,5,4,0,0,224,160,160,192,160,3,5,5,4,0, + 0,224,128,224,32,224,3,5,5,4,0,0,224,64,64,64, + 64,3,5,5,4,0,0,160,160,160,160,224,3,5,5,4, + 0,0,160,160,160,160,64,3,5,5,4,0,0,160,160,160, + 224,224,3,5,5,4,0,0,160,160,64,160,160,3,5,5, + 4,0,0,160,160,160,64,64,3,5,5,4,0,0,224,32, + 224,128,224,255,255,255,255,3,1,1,4,0,0,224,255,3, + 3,3,4,0,0,96,160,224,3,5,5,4,0,0,128,128, + 224,160,224,3,3,3,4,0,0,224,128,224,3,5,5,4, + 0,0,32,32,224,160,224,3,3,3,4,0,0,224,160,192, + 3,5,5,4,0,0,96,64,224,64,64,3,4,4,4,0, + 255,224,160,224,64,3,5,5,4,0,0,128,128,224,160,160, + 1,5,5,2,0,0,128,0,128,128,128,2,5,5,3,0, + 0,64,0,64,64,192,3,5,5,4,0,0,128,128,160,192, + 160,1,5,5,2,0,0,128,128,128,128,128,5,3,3,6, + 0,0,248,168,168,3,3,3,4,0,0,192,160,160,3,3, + 3,4,0,0,224,160,224,3,4,4,4,0,255,224,160,224, + 128,3,4,4,4,0,255,224,160,224,32,3,3,3,4,0, + 0,224,128,128,3,3,3,4,0,0,96,64,192,3,5,5, + 4,0,0,64,224,64,64,96,3,3,3,4,0,0,160,160, + 224,3,3,3,4,0,0,160,160,64,5,3,3,6,0,0, + 168,168,80,3,3,3,4,0,0,160,64,160,3,4,4,4, + 0,255,160,160,224,32,3,3,3,4,0,0,224,64,224,255, + 255,255,255,255}; +/* + Fontname: -FreeType-Chikita-Medium-R-Normal--8-80-72-72-P-47-ISO10646-1 + Copyright: Copyright southernmedia 2008 Chikita is based on pixelspace 5x5 by David Chiu (http://fontstruct.com/fontstructors/skyleth) + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 9 h= 8 x= 1 y= 6 dx=10 dy= 0 ascent= 8 len=10 + Font Bounding box w= 9 h=10 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 6 descent=-2 + Max Font ascent = 8 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_chikita[2236] U8G_SECTION(".progmem.u8g_font_chikita") = { + 0,9,10,0,254,5,1,107,2,195,32,255,254,8,254,6, + 254,0,0,0,2,0,0,1,7,7,2,0,255,128,128,128, + 128,128,0,128,3,2,2,4,0,4,160,160,5,5,5,6, + 0,0,80,248,80,248,80,5,7,7,6,0,255,32,120,160, + 112,40,240,32,5,5,5,6,0,0,200,208,32,88,152,5, + 5,5,6,0,0,32,80,104,144,104,1,2,2,2,0,4, + 128,128,3,7,7,4,0,255,32,64,128,128,128,64,32,3, + 7,7,4,0,255,128,64,32,32,32,64,128,3,3,3,5, + 1,1,160,64,160,5,5,5,6,0,0,32,32,248,32,32, + 2,2,2,3,0,255,64,128,5,1,1,6,0,2,248,1, + 1,1,2,0,0,128,3,5,5,5,1,0,32,32,64,128, + 128,4,5,5,5,0,0,96,144,144,144,96,2,5,5,3, + 0,0,64,192,64,64,64,5,5,5,6,0,0,112,136,48, + 64,248,5,5,5,6,0,0,240,8,112,8,240,5,5,5, + 6,0,0,48,80,144,248,16,5,5,5,6,0,0,248,128, + 240,8,240,5,5,5,6,0,0,120,128,240,136,112,5,5, + 5,6,0,0,248,8,16,32,64,5,5,5,6,0,0,112, + 136,112,136,112,5,5,5,6,0,0,112,136,120,8,240,1, + 3,3,2,0,1,128,0,128,1,4,4,2,0,0,128,0, + 128,128,5,5,5,6,0,0,24,96,128,96,24,5,3,3, + 6,0,1,248,0,248,5,5,5,6,0,0,192,48,8,48, + 192,5,7,7,6,0,255,112,136,16,32,32,0,32,7,7, + 7,8,0,255,124,130,154,170,190,128,124,5,5,5,6,0, + 0,112,136,136,248,136,5,5,5,6,0,0,240,136,240,136, + 240,5,5,5,6,0,0,112,136,128,136,112,5,5,5,6, + 0,0,240,136,136,136,240,5,5,5,6,0,0,248,128,240, + 128,248,5,5,5,6,0,0,248,128,240,128,128,5,5,5, + 6,0,0,112,128,184,136,112,5,5,5,6,0,0,136,136, + 248,136,136,3,5,5,4,0,0,224,64,64,64,224,5,5, + 5,6,0,0,8,8,8,136,112,5,5,5,6,0,0,136, + 144,224,144,136,5,5,5,6,0,0,128,128,128,128,248,5, + 5,5,6,0,0,136,216,168,136,136,5,5,5,6,0,0, + 136,200,168,152,136,5,5,5,6,0,0,112,136,136,136,112, + 5,5,5,6,0,0,240,136,136,240,128,5,5,5,6,0, + 0,112,136,136,152,120,5,5,5,6,0,0,240,136,136,240, + 136,5,5,5,6,0,0,120,128,112,8,240,5,5,5,6, + 0,0,248,32,32,32,32,5,5,5,6,0,0,136,136,136, + 136,112,5,5,5,6,0,0,136,136,136,80,32,5,5,5, + 6,0,0,136,168,168,168,80,5,5,5,6,0,0,136,80, + 32,80,136,5,5,5,6,0,0,136,136,80,32,32,5,5, + 5,6,0,0,248,16,32,64,248,2,6,6,3,0,255,192, + 128,128,128,128,192,3,5,5,4,0,0,128,128,64,32,32, + 2,6,6,3,0,255,192,64,64,64,64,192,3,2,2,4, + 0,4,64,160,5,1,1,6,0,255,248,2,2,2,3,0, + 4,128,64,4,4,4,5,0,0,112,144,144,240,4,5,5, + 5,0,0,128,224,144,144,224,4,4,4,5,0,0,112,128, + 128,112,4,5,5,5,0,0,16,112,144,144,112,4,4,4, + 5,0,0,96,144,224,112,4,5,5,5,0,0,48,64,240, + 64,64,4,6,6,5,0,254,112,144,144,240,16,224,4,5, + 5,5,0,0,128,224,144,144,144,1,5,5,2,0,0,128, + 0,128,128,128,2,7,7,3,0,254,64,0,64,64,64,64, + 128,4,5,5,5,0,0,128,144,160,224,144,1,5,5,2, + 0,0,128,128,128,128,128,6,4,4,7,0,0,168,212,148, + 148,4,4,4,5,0,0,160,208,144,144,4,4,4,5,0, + 0,96,144,144,96,4,6,6,5,0,254,224,144,144,224,128, + 128,4,6,6,5,0,254,112,144,144,112,16,16,4,4,4, + 5,0,0,176,192,128,128,4,4,4,5,0,0,112,192,48, + 224,4,5,5,5,0,0,64,240,64,64,48,4,4,4,5, + 0,0,144,144,144,112,5,4,4,6,0,0,136,136,80,32, + 5,4,4,6,0,0,136,136,168,80,4,4,4,5,0,0, + 144,96,96,144,4,6,6,5,0,254,144,144,144,112,16,224, + 4,4,4,5,0,0,240,32,64,240,3,6,6,4,0,255, + 96,64,128,128,64,96,1,6,6,2,0,255,128,128,128,128, + 128,128,3,6,6,4,0,255,192,64,32,32,64,192,5,3, + 3,6,0,1,64,168,16,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,1,7,7,2,0,255,128, + 0,128,128,128,128,128,3,5,5,4,0,0,64,224,128,224, + 64,5,6,6,6,0,0,112,136,72,224,64,248,5,5,5, + 6,0,0,136,112,80,112,136,5,6,6,6,0,0,136,80, + 32,112,112,32,1,5,5,2,0,0,128,128,0,128,128,4, + 7,7,5,0,254,112,128,96,144,96,16,224,3,1,1,4, + 0,6,160,7,7,7,8,0,255,124,130,186,162,186,130,124, + 3,4,4,4,0,4,96,224,160,96,6,5,5,7,0,0, + 36,72,144,72,36,5,3,3,6,0,2,248,8,8,3,1, + 1,5,1,2,224,7,7,7,8,0,255,124,130,186,178,170, + 130,124,5,1,1,6,0,6,248,4,4,4,5,0,3,96, + 144,144,96,3,5,5,5,1,0,64,224,64,0,224,4,5, + 5,5,0,2,96,144,32,64,240,4,5,5,5,0,2,224, + 16,96,16,224,2,2,2,3,0,5,64,128,5,6,6,6, + 0,254,136,136,216,168,128,128,6,7,7,7,0,254,124,232, + 232,104,40,40,40,3,3,3,5,1,1,224,224,224,3,3, + 3,5,1,254,64,32,224,2,5,5,3,0,2,64,192,64, + 64,64,4,5,5,5,0,2,96,144,144,144,96,6,5,5, + 7,0,0,144,72,36,72,144,7,8,8,8,0,254,66,196, + 72,80,38,74,142,2,7,8,8,8,0,254,66,196,72,80, + 44,66,132,14,7,8,8,8,0,254,226,68,40,208,38,74, + 142,2,5,7,7,6,0,255,32,0,32,32,72,136,112,5, + 8,8,6,0,0,64,32,0,112,136,136,248,136,5,8,8, + 6,0,0,16,32,0,112,136,136,248,136,5,8,8,6,0, + 0,32,80,0,112,136,136,248,136,5,8,8,6,0,0,40, + 80,0,112,136,136,248,136,5,7,7,6,0,0,80,0,112, + 136,136,248,136,5,8,8,6,0,0,32,80,32,112,136,136, + 248,136,9,5,10,10,0,0,63,128,72,0,143,0,248,0, + 143,128,5,7,7,6,0,254,112,136,128,136,112,16,112,5, + 8,8,6,0,0,64,32,0,248,128,240,128,248,5,8,8, + 6,0,0,16,32,0,248,128,240,128,248,5,8,8,6,0, + 0,32,80,0,248,128,240,128,248,5,7,7,6,0,0,80, + 0,248,128,240,128,248,3,8,8,4,0,0,128,64,0,224, + 64,64,64,224,3,8,8,4,0,0,32,64,0,224,64,64, + 64,224,3,8,8,4,0,0,64,160,0,224,64,64,64,224, + 3,7,7,4,0,0,160,0,224,64,64,64,224,5,5,5, + 6,0,0,112,72,232,72,112,5,8,8,6,0,0,40,80, + 0,136,200,168,152,136,5,8,8,6,0,0,64,32,0,112, + 136,136,136,112,5,8,8,6,0,0,16,32,0,112,136,136, + 136,112,5,8,8,6,0,0,32,80,0,112,136,136,136,112, + 5,8,8,6,0,0,64,168,16,112,136,136,136,112,5,7, + 7,6,0,0,80,0,112,136,136,136,112,3,3,3,4,0, + 1,160,64,160,5,5,5,6,0,0,120,152,168,200,240,5, + 8,8,6,0,0,64,32,0,136,136,136,136,112,5,8,8, + 6,0,0,16,32,0,136,136,136,136,112,5,8,8,6,0, + 0,32,80,0,136,136,136,136,112,5,7,7,6,0,0,80, + 0,136,136,136,136,112,5,8,8,6,0,0,16,32,0,136, + 136,80,32,32,5,5,5,6,0,0,128,240,136,240,128,4, + 5,5,5,0,0,96,144,160,144,160,4,7,7,5,0,0, + 64,32,0,112,144,144,240,4,7,7,5,0,0,32,64,0, + 112,144,144,240,4,7,7,5,0,0,32,80,0,112,144,144, + 240,4,7,7,5,0,0,80,160,0,112,144,144,240,4,6, + 6,5,0,0,80,0,112,144,144,240,4,7,7,5,0,0, + 32,80,32,112,144,144,240,7,5,5,8,0,0,236,18,126, + 144,238,4,6,6,5,0,254,112,128,128,112,32,96,4,7, + 7,5,0,0,64,32,0,96,144,224,112,4,7,7,5,0, + 0,32,64,0,96,144,224,112,4,7,7,5,0,0,32,80, + 0,96,144,224,112,4,6,6,5,0,0,80,0,96,144,224, + 112,2,7,7,3,0,0,128,64,0,64,64,64,64,2,7, + 7,3,0,0,64,128,0,128,128,128,128,3,7,7,4,0, + 0,64,160,0,64,64,64,64,3,6,6,4,0,0,160,0, + 64,64,64,64,4,6,6,5,0,0,64,32,112,144,144,96, + 4,7,7,5,0,0,80,160,0,160,208,144,144,4,7,7, + 5,0,0,64,32,0,96,144,144,96,4,7,7,5,0,0, + 32,64,0,96,144,144,96,4,7,7,5,0,0,96,144,0, + 96,144,144,96,4,7,7,5,0,0,80,160,0,96,144,144, + 96,4,6,6,5,0,0,80,0,96,144,144,96,5,5,5, + 6,0,0,32,0,248,0,32,4,4,4,5,0,0,112,176, + 208,224,4,7,7,5,0,0,64,32,0,144,144,144,112,4, + 7,7,5,0,0,32,64,0,144,144,144,112,4,7,7,5, + 0,0,32,80,0,144,144,144,112,4,6,6,5,0,0,80, + 0,144,144,144,112,4,8,8,5,0,254,32,64,0,144,144, + 112,16,224,4,6,6,5,0,254,128,224,144,144,224,128,4, + 7,7,5,0,254,80,0,144,144,112,16,224}; +/* + Fontname: -FreeType-Chikita-Medium-R-Normal--8-80-72-72-P-47-ISO10646-1 + Copyright: Copyright southernmedia 2008 Chikita is based on pixelspace 5x5 by David Chiu (http://fontstruct.com/fontstructors/skyleth) + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 1 y= 2 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 9 h=10 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_chikitan[180] U8G_SECTION(".progmem.u8g_font_chikitan") = { + 0,9,10,0,254,5,0,0,0,0,42,57,0,5,255,5, + 0,3,3,3,5,1,1,160,64,160,5,5,5,6,0,0, + 32,32,248,32,32,2,2,2,3,0,255,64,128,5,1,1, + 6,0,2,248,1,1,1,2,0,0,128,3,5,5,5,1, + 0,32,32,64,128,128,4,5,5,5,0,0,96,144,144,144, + 96,2,5,5,3,0,0,64,192,64,64,64,5,5,5,6, + 0,0,112,136,48,64,248,5,5,5,6,0,0,240,8,112, + 8,240,5,5,5,6,0,0,48,80,144,248,16,5,5,5, + 6,0,0,248,128,240,8,240,5,5,5,6,0,0,120,128, + 240,136,112,5,5,5,6,0,0,248,8,16,32,64,5,5, + 5,6,0,0,112,136,112,136,112,5,5,5,6,0,0,112, + 136,120,8,240}; +/* + Fontname: -FreeType-Chikita-Medium-R-Normal--8-80-72-72-P-47-ISO10646-1 + Copyright: Copyright southernmedia 2008 Chikita is based on pixelspace 5x5 by David Chiu (http://fontstruct.com/fontstructors/skyleth) + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 7 h= 7 x= 1 y= 4 dx= 8 dy= 0 ascent= 6 len= 7 + Font Bounding box w= 9 h=10 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 6 descent=-2 + Max Font ascent = 6 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_chikitar[1032] U8G_SECTION(".progmem.u8g_font_chikitar") = { + 0,9,10,0,254,5,1,107,2,195,32,127,254,6,254,6, + 254,0,0,0,2,0,0,1,7,7,2,0,255,128,128,128, + 128,128,0,128,3,2,2,4,0,4,160,160,5,5,5,6, + 0,0,80,248,80,248,80,5,7,7,6,0,255,32,120,160, + 112,40,240,32,5,5,5,6,0,0,200,208,32,88,152,5, + 5,5,6,0,0,32,80,104,144,104,1,2,2,2,0,4, + 128,128,3,7,7,4,0,255,32,64,128,128,128,64,32,3, + 7,7,4,0,255,128,64,32,32,32,64,128,3,3,3,5, + 1,1,160,64,160,5,5,5,6,0,0,32,32,248,32,32, + 2,2,2,3,0,255,64,128,5,1,1,6,0,2,248,1, + 1,1,2,0,0,128,3,5,5,5,1,0,32,32,64,128, + 128,4,5,5,5,0,0,96,144,144,144,96,2,5,5,3, + 0,0,64,192,64,64,64,5,5,5,6,0,0,112,136,48, + 64,248,5,5,5,6,0,0,240,8,112,8,240,5,5,5, + 6,0,0,48,80,144,248,16,5,5,5,6,0,0,248,128, + 240,8,240,5,5,5,6,0,0,120,128,240,136,112,5,5, + 5,6,0,0,248,8,16,32,64,5,5,5,6,0,0,112, + 136,112,136,112,5,5,5,6,0,0,112,136,120,8,240,1, + 3,3,2,0,1,128,0,128,1,4,4,2,0,0,128,0, + 128,128,5,5,5,6,0,0,24,96,128,96,24,5,3,3, + 6,0,1,248,0,248,5,5,5,6,0,0,192,48,8,48, + 192,5,7,7,6,0,255,112,136,16,32,32,0,32,7,7, + 7,8,0,255,124,130,154,170,190,128,124,5,5,5,6,0, + 0,112,136,136,248,136,5,5,5,6,0,0,240,136,240,136, + 240,5,5,5,6,0,0,112,136,128,136,112,5,5,5,6, + 0,0,240,136,136,136,240,5,5,5,6,0,0,248,128,240, + 128,248,5,5,5,6,0,0,248,128,240,128,128,5,5,5, + 6,0,0,112,128,184,136,112,5,5,5,6,0,0,136,136, + 248,136,136,3,5,5,4,0,0,224,64,64,64,224,5,5, + 5,6,0,0,8,8,8,136,112,5,5,5,6,0,0,136, + 144,224,144,136,5,5,5,6,0,0,128,128,128,128,248,5, + 5,5,6,0,0,136,216,168,136,136,5,5,5,6,0,0, + 136,200,168,152,136,5,5,5,6,0,0,112,136,136,136,112, + 5,5,5,6,0,0,240,136,136,240,128,5,5,5,6,0, + 0,112,136,136,152,120,5,5,5,6,0,0,240,136,136,240, + 136,5,5,5,6,0,0,120,128,112,8,240,5,5,5,6, + 0,0,248,32,32,32,32,5,5,5,6,0,0,136,136,136, + 136,112,5,5,5,6,0,0,136,136,136,80,32,5,5,5, + 6,0,0,136,168,168,168,80,5,5,5,6,0,0,136,80, + 32,80,136,5,5,5,6,0,0,136,136,80,32,32,5,5, + 5,6,0,0,248,16,32,64,248,2,6,6,3,0,255,192, + 128,128,128,128,192,3,5,5,4,0,0,128,128,64,32,32, + 2,6,6,3,0,255,192,64,64,64,64,192,3,2,2,4, + 0,4,64,160,5,1,1,6,0,255,248,2,2,2,3,0, + 4,128,64,4,4,4,5,0,0,112,144,144,240,4,5,5, + 5,0,0,128,224,144,144,224,4,4,4,5,0,0,112,128, + 128,112,4,5,5,5,0,0,16,112,144,144,112,4,4,4, + 5,0,0,96,144,224,112,4,5,5,5,0,0,48,64,240, + 64,64,4,6,6,5,0,254,112,144,144,240,16,224,4,5, + 5,5,0,0,128,224,144,144,144,1,5,5,2,0,0,128, + 0,128,128,128,2,7,7,3,0,254,64,0,64,64,64,64, + 128,4,5,5,5,0,0,128,144,160,224,144,1,5,5,2, + 0,0,128,128,128,128,128,6,4,4,7,0,0,168,212,148, + 148,4,4,4,5,0,0,160,208,144,144,4,4,4,5,0, + 0,96,144,144,96,4,6,6,5,0,254,224,144,144,224,128, + 128,4,6,6,5,0,254,112,144,144,112,16,16,4,4,4, + 5,0,0,176,192,128,128,4,4,4,5,0,0,112,192,48, + 224,4,5,5,5,0,0,64,240,64,64,48,4,4,4,5, + 0,0,144,144,144,112,5,4,4,6,0,0,136,136,80,32, + 5,4,4,6,0,0,136,136,168,80,4,4,4,5,0,0, + 144,96,96,144,4,6,6,5,0,254,144,144,144,112,16,224, + 4,4,4,5,0,0,240,32,64,240,3,6,6,4,0,255, + 96,64,128,128,64,96,1,6,6,2,0,255,128,128,128,128, + 128,128,3,6,6,4,0,255,192,64,32,32,64,192,5,3, + 3,6,0,1,64,168,16,255}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--11-80-100-100-M-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 6, '1' Height: 7 + Calculated Max Values w= 7 h=10 x= 2 y= 6 dx= 6 dy= 0 ascent= 9 len=10 + Font Bounding box w=12 h=16 x=-3 y=-4 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB08[2425] U8G_SECTION(".progmem.u8g_font_courB08") = { + 0,12,16,253,252,6,1,146,3,13,32,255,254,9,254,7, + 254,0,0,0,6,0,1,2,6,6,6,1,0,192,192,192, + 192,0,192,3,3,3,6,1,3,160,160,160,5,8,8,6, + 0,255,80,80,248,80,80,248,80,80,5,9,9,6,0,255, + 32,120,200,240,120,24,216,240,32,5,7,7,6,0,0,224, + 168,240,32,120,168,56,6,6,6,6,255,0,56,96,48,124, + 216,124,1,3,3,6,2,3,128,128,128,3,8,8,6,1, + 255,32,64,192,192,192,192,64,32,3,8,8,6,1,255,128, + 64,96,96,96,96,64,128,4,4,4,6,0,3,32,240,96, + 144,5,5,5,6,0,1,32,32,248,32,32,3,3,3,6, + 1,254,96,64,128,5,1,1,6,0,3,248,2,1,1,6, + 1,0,192,4,8,8,6,1,255,16,16,32,32,64,64,128, + 128,5,7,7,6,0,0,112,216,216,216,216,216,112,6,7, + 7,6,0,0,48,240,48,48,48,48,252,5,7,7,6,0, + 0,112,216,24,48,96,216,248,5,7,7,6,0,0,112,216, + 24,112,24,216,112,6,7,7,6,0,0,24,56,88,216,252, + 24,24,5,7,7,6,0,0,248,192,240,216,24,152,240,5, + 7,7,6,0,0,112,216,192,240,216,216,112,5,7,7,6, + 0,0,248,216,24,48,48,96,96,5,7,7,6,0,0,112, + 216,216,112,216,216,112,5,7,7,6,0,0,112,216,216,120, + 24,216,112,2,4,4,6,1,0,192,0,0,192,3,6,6, + 6,0,254,96,0,0,96,64,128,4,5,5,6,0,1,48, + 96,192,96,48,4,3,3,6,0,2,240,0,240,4,5,5, + 6,1,1,192,96,48,96,192,5,6,6,6,0,0,112,152, + 48,96,0,96,6,8,8,6,0,255,112,200,152,168,168,156, + 192,112,7,6,6,6,255,0,120,56,40,124,108,238,6,6, + 6,6,255,0,248,108,120,108,108,248,5,6,6,6,0,0, + 120,216,192,192,216,112,6,6,6,6,255,0,248,108,108,108, + 108,248,6,6,6,6,255,0,252,96,120,96,108,252,6,6, + 6,6,255,0,252,96,120,96,96,240,5,6,6,6,0,0, + 112,216,192,248,216,120,7,6,6,6,255,0,238,108,124,108, + 108,238,4,6,6,6,0,0,240,96,96,96,96,240,6,6, + 6,6,255,0,60,24,24,216,216,112,7,6,6,6,255,0, + 236,104,112,120,108,246,6,6,6,6,255,0,240,96,96,96, + 108,252,6,6,6,6,255,0,196,108,108,124,84,212,7,6, + 6,6,255,0,238,116,116,108,108,228,5,6,6,6,0,0, + 112,216,216,216,216,112,6,6,6,6,255,0,248,108,108,120, + 96,240,5,7,7,6,0,255,112,216,216,216,216,112,24,7, + 6,6,6,255,0,248,108,108,120,108,246,5,6,6,6,0, + 0,120,200,240,56,152,240,6,6,6,6,255,0,252,180,48, + 48,48,120,7,6,6,6,255,0,238,108,108,108,108,56,7, + 6,6,6,255,0,238,108,40,56,56,16,7,6,6,6,255, + 0,214,84,84,124,56,40,6,6,6,6,0,0,204,120,48, + 48,120,204,7,6,6,6,255,0,230,102,60,24,24,60,5, + 6,6,6,0,0,248,216,48,96,216,248,3,8,8,6,1, + 255,224,192,192,192,192,192,192,224,4,8,8,6,0,255,128, + 128,64,64,32,32,16,16,3,8,8,6,1,255,224,96,96, + 96,96,96,96,224,5,3,3,6,0,4,32,112,216,6,1, + 1,6,0,254,252,2,2,2,6,2,6,128,64,6,5,5, + 6,0,0,112,216,120,216,252,6,7,7,6,255,0,224,96, + 120,108,108,108,248,5,5,5,6,0,0,112,216,192,216,112, + 6,7,7,6,0,0,56,24,120,216,216,216,124,5,5,5, + 6,0,0,112,216,248,192,120,5,7,7,6,0,0,56,96, + 248,96,96,96,248,6,7,7,6,0,254,108,216,216,216,120, + 24,240,6,7,7,6,255,0,224,96,120,108,108,108,108,6, + 7,7,6,0,0,48,0,240,48,48,48,252,4,9,9,6, + 0,254,48,0,240,48,48,48,48,48,224,7,7,7,6,255, + 0,224,96,108,120,112,120,110,6,7,7,6,0,0,240,48, + 48,48,48,48,252,6,5,5,6,255,0,248,124,84,84,84, + 6,5,5,6,255,0,216,108,108,108,108,5,5,5,6,0, + 0,112,216,216,216,112,6,7,7,6,255,254,248,108,108,108, + 120,96,240,6,7,7,6,0,254,108,216,216,216,120,24,60, + 6,5,5,6,0,0,220,116,96,96,240,6,5,5,6,0, + 0,120,224,120,28,248,6,7,7,6,0,0,96,96,248,96, + 96,108,56,7,5,5,6,255,0,236,108,108,108,62,6,5, + 5,6,255,0,236,108,56,56,16,7,5,5,6,255,0,214, + 84,124,60,40,6,5,5,6,0,0,236,120,48,120,220,7, + 7,7,6,255,254,238,108,108,40,56,48,224,5,5,5,6, + 0,0,248,176,96,216,248,4,8,8,6,1,255,48,96,96, + 192,96,96,96,48,1,7,7,6,2,255,128,128,128,128,128, + 128,128,4,8,8,6,0,255,192,96,96,48,96,96,96,192, + 5,2,2,6,0,3,104,176,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,0,0,0,6,0,1,2, + 7,7,6,1,254,192,0,192,192,192,192,192,5,8,8,6, + 0,255,32,32,120,200,192,120,32,32,6,7,7,6,0,0, + 56,104,32,248,32,100,248,5,5,5,6,0,1,136,112,80, + 112,136,6,7,7,6,0,0,204,72,252,48,252,48,120,1, + 9,9,6,2,254,128,128,128,128,0,128,128,128,128,5,8, + 8,6,0,255,120,72,96,144,72,48,144,240,3,1,1,6, + 1,5,160,6,7,7,6,0,0,48,72,180,164,180,72,48, + 4,5,5,6,1,2,224,16,208,0,240,7,5,5,6,255, + 0,54,108,216,108,54,5,3,3,6,0,2,248,8,8,5, + 1,1,6,0,3,248,7,7,7,6,0,0,56,68,186,178, + 170,68,56,4,1,1,6,0,5,240,4,3,3,6,0,4, + 96,144,96,5,6,6,6,0,0,32,32,248,32,0,248,3, + 4,4,6,1,3,96,160,64,224,3,4,4,6,1,3,224, + 64,32,192,2,2,2,6,2,5,64,128,7,7,7,6,255, + 254,236,108,108,108,126,64,64,6,8,8,6,0,255,124,168, + 168,104,40,40,40,108,2,1,1,6,1,3,192,3,3,3, + 6,1,254,64,32,192,3,4,4,6,1,3,192,64,64,224, + 4,5,5,6,1,2,96,144,96,0,240,7,5,5,6,255, + 0,216,108,54,108,216,7,7,7,6,255,0,192,68,72,244, + 44,94,4,7,7,7,6,255,0,192,68,72,246,42,68,14, + 7,7,7,6,255,0,224,68,40,212,44,94,4,5,7,7, + 6,0,254,48,0,48,48,96,200,112,7,9,9,6,255,0, + 32,16,0,120,56,40,124,108,238,7,9,9,6,255,0,16, + 32,0,120,56,40,124,108,238,7,9,9,6,255,0,16,40, + 0,120,56,40,124,108,238,7,9,9,6,255,0,52,72,0, + 120,56,40,124,108,238,7,8,8,6,255,0,40,0,120,56, + 40,124,108,238,7,9,9,6,255,0,48,72,48,120,56,40, + 124,108,238,7,6,6,6,255,0,126,58,108,120,218,222,5, + 8,8,6,0,254,120,216,192,192,216,112,16,96,6,9,9, + 6,255,0,32,16,0,252,100,120,96,108,252,6,9,9,6, + 255,0,16,32,0,252,100,120,96,108,252,6,9,9,6,255, + 0,32,80,0,252,100,120,96,108,252,6,8,8,6,255,0, + 80,0,252,100,120,96,108,252,4,9,9,6,0,0,64,32, + 0,240,96,96,96,96,240,4,9,9,6,0,0,32,64,0, + 240,96,96,96,96,240,4,9,9,6,0,0,64,160,0,240, + 96,96,96,96,240,4,8,8,6,0,0,160,0,240,96,96, + 96,96,240,6,6,6,6,255,0,248,108,244,100,108,248,7, + 9,9,6,255,0,52,72,0,238,100,116,124,108,236,5,9, + 9,6,0,0,64,32,0,112,216,216,216,216,112,5,9,9, + 6,0,0,32,64,0,112,216,216,216,216,112,5,9,9,6, + 0,0,32,80,0,112,216,216,216,216,112,5,9,9,6,0, + 0,104,144,0,112,216,216,216,216,112,5,8,8,6,0,0, + 80,0,112,216,216,216,216,112,5,5,5,6,0,1,136,80, + 32,80,136,7,6,6,6,255,0,58,108,124,108,108,184,7, + 9,9,6,255,0,32,16,0,238,108,108,108,108,56,7,9, + 9,6,255,0,8,16,0,238,108,108,108,108,56,7,9,9, + 6,255,0,16,40,0,238,108,108,108,108,56,7,8,8,6, + 255,0,40,0,238,108,108,108,108,56,7,9,9,6,255,0, + 4,8,0,230,102,60,24,24,60,6,6,6,6,255,0,224, + 120,108,108,120,224,7,6,6,6,255,0,56,104,124,102,102, + 236,6,8,8,6,0,0,32,16,0,112,152,120,216,252,6, + 8,8,6,0,0,16,32,0,112,152,120,216,252,6,8,8, + 6,0,0,32,80,0,112,152,120,216,252,6,8,8,6,0, + 0,104,144,0,112,152,120,216,252,6,7,7,6,0,0,80, + 0,112,152,120,216,252,6,9,9,6,0,0,48,72,48,0, + 112,152,120,216,252,6,5,5,6,255,0,108,180,124,176,220, + 5,7,7,6,0,254,112,216,192,216,112,16,96,5,8,8, + 6,0,0,64,32,0,112,216,248,192,120,5,8,8,6,0, + 0,32,64,0,112,216,248,192,120,5,8,8,6,0,0,32, + 80,0,112,216,248,192,120,5,7,7,6,0,0,80,0,112, + 216,248,192,120,6,8,8,6,0,0,32,16,0,112,48,48, + 48,252,6,8,8,6,0,0,16,32,0,112,48,48,48,252, + 6,8,8,6,0,0,32,80,0,112,48,48,48,252,6,7, + 7,6,0,0,80,0,112,48,48,48,252,5,8,8,6,0, + 0,208,96,176,120,216,216,216,112,7,8,8,6,255,0,52, + 72,0,216,108,108,108,110,5,8,8,6,0,0,64,32,0, + 112,216,216,216,112,5,8,8,6,0,0,32,64,0,112,216, + 216,216,112,5,8,8,6,0,0,32,80,0,112,216,216,216, + 112,5,8,8,6,0,0,104,144,0,112,216,216,216,112,5, + 7,7,6,0,0,80,0,112,216,216,216,112,5,5,5,6, + 0,1,32,0,248,0,32,5,7,7,6,0,255,8,112,216, + 248,216,112,128,7,8,8,6,255,0,32,16,0,236,108,108, + 108,62,7,8,8,6,255,0,16,32,0,236,108,108,108,62, + 7,8,8,6,255,0,16,40,0,236,108,108,108,62,7,7, + 7,6,255,0,40,0,236,108,108,108,62,7,10,10,6,255, + 254,8,16,0,238,108,108,40,56,48,240,6,9,9,6,255, + 254,224,96,120,108,108,108,120,96,240,7,9,9,6,255,254, + 40,0,238,108,108,40,56,48,240}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--11-80-100-100-M-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 6, '1' Height: 7 + Calculated Max Values w= 7 h= 9 x= 2 y= 6 dx= 6 dy= 0 ascent= 8 len= 9 + Font Bounding box w=12 h=16 x=-3 y=-4 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 8 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB08r[1145] U8G_SECTION(".progmem.u8g_font_courB08r") = { + 0,12,16,253,252,6,1,146,3,13,32,127,254,8,254,7, + 254,0,0,0,6,0,1,2,6,6,6,1,0,192,192,192, + 192,0,192,3,3,3,6,1,3,160,160,160,5,8,8,6, + 0,255,80,80,248,80,80,248,80,80,5,9,9,6,0,255, + 32,120,200,240,120,24,216,240,32,5,7,7,6,0,0,224, + 168,240,32,120,168,56,6,6,6,6,255,0,56,96,48,124, + 216,124,1,3,3,6,2,3,128,128,128,3,8,8,6,1, + 255,32,64,192,192,192,192,64,32,3,8,8,6,1,255,128, + 64,96,96,96,96,64,128,4,4,4,6,0,3,32,240,96, + 144,5,5,5,6,0,1,32,32,248,32,32,3,3,3,6, + 1,254,96,64,128,5,1,1,6,0,3,248,2,1,1,6, + 1,0,192,4,8,8,6,1,255,16,16,32,32,64,64,128, + 128,5,7,7,6,0,0,112,216,216,216,216,216,112,6,7, + 7,6,0,0,48,240,48,48,48,48,252,5,7,7,6,0, + 0,112,216,24,48,96,216,248,5,7,7,6,0,0,112,216, + 24,112,24,216,112,6,7,7,6,0,0,24,56,88,216,252, + 24,24,5,7,7,6,0,0,248,192,240,216,24,152,240,5, + 7,7,6,0,0,112,216,192,240,216,216,112,5,7,7,6, + 0,0,248,216,24,48,48,96,96,5,7,7,6,0,0,112, + 216,216,112,216,216,112,5,7,7,6,0,0,112,216,216,120, + 24,216,112,2,4,4,6,1,0,192,0,0,192,3,6,6, + 6,0,254,96,0,0,96,64,128,4,5,5,6,0,1,48, + 96,192,96,48,4,3,3,6,0,2,240,0,240,4,5,5, + 6,1,1,192,96,48,96,192,5,6,6,6,0,0,112,152, + 48,96,0,96,6,8,8,6,0,255,112,200,152,168,168,156, + 192,112,7,6,6,6,255,0,120,56,40,124,108,238,6,6, + 6,6,255,0,248,108,120,108,108,248,5,6,6,6,0,0, + 120,216,192,192,216,112,6,6,6,6,255,0,248,108,108,108, + 108,248,6,6,6,6,255,0,252,96,120,96,108,252,6,6, + 6,6,255,0,252,96,120,96,96,240,5,6,6,6,0,0, + 112,216,192,248,216,120,7,6,6,6,255,0,238,108,124,108, + 108,238,4,6,6,6,0,0,240,96,96,96,96,240,6,6, + 6,6,255,0,60,24,24,216,216,112,7,6,6,6,255,0, + 236,104,112,120,108,246,6,6,6,6,255,0,240,96,96,96, + 108,252,6,6,6,6,255,0,196,108,108,124,84,212,7,6, + 6,6,255,0,238,116,116,108,108,228,5,6,6,6,0,0, + 112,216,216,216,216,112,6,6,6,6,255,0,248,108,108,120, + 96,240,5,7,7,6,0,255,112,216,216,216,216,112,24,7, + 6,6,6,255,0,248,108,108,120,108,246,5,6,6,6,0, + 0,120,200,240,56,152,240,6,6,6,6,255,0,252,180,48, + 48,48,120,7,6,6,6,255,0,238,108,108,108,108,56,7, + 6,6,6,255,0,238,108,40,56,56,16,7,6,6,6,255, + 0,214,84,84,124,56,40,6,6,6,6,0,0,204,120,48, + 48,120,204,7,6,6,6,255,0,230,102,60,24,24,60,5, + 6,6,6,0,0,248,216,48,96,216,248,3,8,8,6,1, + 255,224,192,192,192,192,192,192,224,4,8,8,6,0,255,128, + 128,64,64,32,32,16,16,3,8,8,6,1,255,224,96,96, + 96,96,96,96,224,5,3,3,6,0,4,32,112,216,6,1, + 1,6,0,254,252,2,2,2,6,2,6,128,64,6,5,5, + 6,0,0,112,216,120,216,252,6,7,7,6,255,0,224,96, + 120,108,108,108,248,5,5,5,6,0,0,112,216,192,216,112, + 6,7,7,6,0,0,56,24,120,216,216,216,124,5,5,5, + 6,0,0,112,216,248,192,120,5,7,7,6,0,0,56,96, + 248,96,96,96,248,6,7,7,6,0,254,108,216,216,216,120, + 24,240,6,7,7,6,255,0,224,96,120,108,108,108,108,6, + 7,7,6,0,0,48,0,240,48,48,48,252,4,9,9,6, + 0,254,48,0,240,48,48,48,48,48,224,7,7,7,6,255, + 0,224,96,108,120,112,120,110,6,7,7,6,0,0,240,48, + 48,48,48,48,252,6,5,5,6,255,0,248,124,84,84,84, + 6,5,5,6,255,0,216,108,108,108,108,5,5,5,6,0, + 0,112,216,216,216,112,6,7,7,6,255,254,248,108,108,108, + 120,96,240,6,7,7,6,0,254,108,216,216,216,120,24,60, + 6,5,5,6,0,0,220,116,96,96,240,6,5,5,6,0, + 0,120,224,120,28,248,6,7,7,6,0,0,96,96,248,96, + 96,108,56,7,5,5,6,255,0,236,108,108,108,62,6,5, + 5,6,255,0,236,108,56,56,16,7,5,5,6,255,0,214, + 84,124,60,40,6,5,5,6,0,0,236,120,48,120,220,7, + 7,7,6,255,254,238,108,108,40,56,48,224,5,5,5,6, + 0,0,248,176,96,216,248,4,8,8,6,1,255,48,96,96, + 192,96,96,96,48,1,7,7,6,2,255,128,128,128,128,128, + 128,128,4,8,8,6,0,255,192,96,96,48,96,96,96,192, + 5,2,2,6,0,3,104,176,255}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--14-100-100-100-M-90-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 9, '1' Height: 10 + Calculated Max Values w=10 h=13 x= 3 y= 8 dx= 9 dy= 0 ascent=12 len=26 + Font Bounding box w=13 h=21 x=-2 y=-6 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =12 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB10[3355] U8G_SECTION(".progmem.u8g_font_courB10") = { + 0,13,21,254,250,9,1,222,4,32,32,255,253,12,252,10, + 253,0,0,0,9,0,1,2,9,9,9,3,0,192,192,192, + 192,192,128,0,192,192,5,4,4,9,2,6,216,216,216,72, + 7,11,11,9,1,255,40,40,40,254,40,40,254,40,40,40, + 40,6,12,12,9,1,255,48,48,124,204,192,240,60,12,204, + 248,48,48,7,10,10,9,1,0,96,144,146,108,16,96,152, + 36,36,24,7,8,8,9,1,0,56,96,96,48,122,204,204, + 118,2,4,4,9,3,5,192,192,192,64,4,11,11,9,2, + 254,48,96,96,192,192,192,192,192,96,96,48,4,11,11,9, + 2,254,192,96,96,48,48,48,48,48,96,96,192,5,5,5, + 9,2,4,32,168,248,112,216,7,7,7,9,1,1,16,16, + 16,254,16,16,16,3,4,4,9,2,254,96,96,192,128,6, + 1,1,9,1,4,252,2,2,2,9,3,0,192,192,7,12, + 12,9,0,254,6,6,12,12,24,24,48,48,96,96,192,192, + 7,10,10,9,1,0,56,108,198,198,198,198,198,198,108,56, + 6,10,10,9,2,0,48,240,48,48,48,48,48,48,48,252, + 6,10,10,9,1,0,120,204,204,12,12,24,48,96,192,252, + 6,10,10,9,1,0,120,204,12,12,56,12,12,12,204,120, + 7,10,10,9,1,0,12,28,60,44,76,204,140,254,12,30, + 6,10,10,9,1,0,252,192,192,248,204,12,12,12,204,120, + 6,10,10,9,1,0,60,96,192,216,236,204,204,204,204,120, + 6,10,10,9,1,0,252,140,12,24,24,24,24,48,48,48, + 6,10,10,9,1,0,120,204,204,204,120,204,204,204,204,120, + 6,10,10,9,1,0,120,204,204,204,204,204,124,12,24,240, + 2,7,7,9,3,0,192,192,0,0,0,192,192,3,9,9, + 9,2,254,96,96,0,0,0,96,96,192,128,8,7,7,9, + 0,1,7,28,112,192,112,28,7,7,4,4,9,1,2,254, + 0,0,254,8,7,7,9,1,1,224,56,14,3,14,56,224, + 6,9,9,9,1,0,248,204,140,12,56,48,0,48,48,7, + 9,9,9,1,0,120,196,156,180,164,180,158,192,120,9,9, + 18,9,0,0,124,0,28,0,54,0,54,0,34,0,99,0, + 127,0,99,0,247,128,8,9,9,9,0,0,254,99,99,99, + 126,99,99,99,254,7,9,9,9,1,0,58,102,198,192,192, + 192,192,102,60,8,9,9,9,0,0,252,102,99,99,99,99, + 99,102,252,8,9,9,9,0,0,255,99,99,104,120,104,99, + 99,255,8,9,9,9,0,0,255,99,99,104,120,104,96,96, + 248,9,9,18,9,0,0,61,0,103,0,195,0,192,0,192, + 0,207,128,195,0,99,0,63,0,9,9,18,9,0,0,247, + 128,99,0,99,0,99,0,127,0,99,0,99,0,99,0,247, + 128,6,9,9,9,1,0,252,48,48,48,48,48,48,48,252, + 9,9,18,9,0,0,31,128,6,0,6,0,6,0,6,0, + 198,0,198,0,198,0,124,0,9,9,18,9,0,0,247,0, + 102,0,108,0,120,0,124,0,102,0,102,0,99,0,243,128, + 8,9,9,9,0,0,248,96,96,96,96,99,99,99,255,9, + 9,18,9,0,0,227,128,99,0,119,0,119,0,107,0,107, + 0,99,0,99,0,247,128,9,9,18,9,0,0,231,128,99, + 0,115,0,115,0,107,0,107,0,103,0,103,0,243,0,8, + 9,9,9,0,0,60,102,195,195,195,195,195,102,60,8,9, + 9,9,0,0,254,99,99,99,102,124,96,96,248,8,11,11, + 9,0,254,60,102,195,195,195,195,195,102,60,25,110,9,9, + 18,9,0,0,254,0,99,0,99,0,99,0,102,0,124,0, + 102,0,99,0,243,128,7,9,9,9,1,0,122,206,198,224, + 124,14,198,230,188,8,9,9,9,0,0,255,219,219,24,24, + 24,24,24,60,9,9,18,9,0,0,247,128,99,0,99,0, + 99,0,99,0,99,0,99,0,99,0,62,0,9,9,18,9, + 0,0,247,128,99,0,99,0,99,0,54,0,54,0,54,0, + 28,0,28,0,9,9,18,9,0,0,247,128,99,0,107,0, + 107,0,107,0,119,0,119,0,99,0,99,0,8,9,9,9, + 0,0,231,102,102,60,24,60,102,102,231,10,9,18,9,255, + 0,243,192,97,128,51,0,51,0,30,0,12,0,12,0,12, + 0,63,0,7,9,9,9,1,0,254,198,204,24,24,48,102, + 198,254,4,11,11,9,2,254,240,192,192,192,192,192,192,192, + 192,192,240,7,12,12,9,1,254,192,192,96,96,48,48,24, + 24,12,12,6,6,4,11,11,9,2,254,240,48,48,48,48, + 48,48,48,48,48,240,5,4,4,9,2,5,32,112,216,136, + 9,1,2,9,0,254,255,128,3,2,2,9,2,7,192,96, + 8,7,7,9,0,0,124,6,6,126,198,206,119,8,10,10, + 9,0,0,224,96,96,110,115,99,99,99,115,238,8,7,7, + 9,0,0,61,103,195,192,192,99,62,8,10,10,9,0,0, + 14,6,6,118,206,198,198,198,206,119,8,7,7,9,0,0, + 60,102,195,255,192,103,62,7,10,10,9,1,0,30,48,48, + 252,48,48,48,48,48,252,8,10,10,9,0,253,119,206,198, + 198,198,206,118,6,6,124,9,10,20,9,0,0,224,0,96, + 0,96,0,110,0,115,0,99,0,99,0,99,0,99,0,247, + 128,6,10,10,9,1,0,48,48,0,240,48,48,48,48,48, + 252,5,13,13,9,1,253,24,24,0,120,24,24,24,24,24, + 24,24,24,240,8,10,10,9,0,0,224,96,96,103,108,120, + 120,108,102,231,6,10,10,9,1,0,240,48,48,48,48,48, + 48,48,48,252,9,7,14,9,0,0,223,0,109,128,109,128, + 109,128,109,128,109,128,237,128,9,7,14,9,0,0,238,0, + 115,0,99,0,99,0,99,0,99,0,247,128,8,7,7,9, + 0,0,60,102,195,195,195,102,60,8,10,10,9,0,253,238, + 115,99,99,99,115,110,96,96,240,8,10,10,9,0,253,119, + 206,198,198,198,206,118,6,6,15,7,7,7,9,1,0,238, + 112,96,96,96,96,252,7,7,7,9,1,0,126,198,192,124, + 6,198,252,7,9,9,9,1,0,96,96,252,96,96,96,96, + 102,60,9,7,14,9,0,0,231,0,99,0,99,0,99,0, + 99,0,103,0,59,128,9,7,14,9,0,0,247,128,99,0, + 99,0,54,0,54,0,28,0,28,0,10,7,14,9,255,0, + 225,192,109,128,109,128,109,128,45,0,51,0,51,0,8,7, + 7,9,0,0,231,102,60,24,60,102,231,9,10,20,9,0, + 253,227,128,99,0,99,0,54,0,54,0,28,0,28,0,24, + 0,24,0,124,0,6,7,7,9,1,0,252,140,24,48,96, + 196,252,4,11,11,9,2,254,48,96,96,96,96,192,96,96, + 96,96,48,2,11,11,9,3,254,192,192,192,192,192,192,192, + 192,192,192,192,4,11,11,9,2,254,192,96,96,96,96,48, + 96,96,96,96,192,6,3,3,9,1,3,100,252,152,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0, + 0,0,9,0,1,2,9,9,9,3,254,192,192,0,128,192, + 192,192,192,192,6,10,10,9,1,255,48,48,124,204,192,192, + 204,120,48,48,7,9,9,9,1,0,60,102,96,96,248,96, + 96,102,252,7,6,6,9,1,1,198,124,198,198,124,198,10, + 9,18,9,0,0,243,192,97,128,51,0,30,0,63,0,12, + 0,63,0,12,0,63,0,2,11,11,9,3,254,192,192,192, + 192,192,0,192,192,192,192,192,8,11,11,9,0,255,62,98, + 96,240,140,227,57,15,6,70,124,4,2,2,9,2,8,144, + 144,9,8,16,9,0,1,28,0,99,0,205,128,209,128,209, + 128,205,128,99,0,28,0,5,7,7,9,2,2,112,24,120, + 216,104,0,248,7,5,5,9,1,1,54,108,216,108,54,7, + 3,3,9,1,2,254,2,2,6,1,1,9,1,4,252,9, + 8,16,9,0,1,62,0,99,0,217,128,213,128,217,128,213, + 128,99,0,62,0,4,1,1,9,2,8,240,4,4,4,9, + 2,5,96,144,144,96,7,7,7,9,1,1,16,16,254,16, + 16,0,254,5,6,6,9,2,4,112,152,24,48,96,248,5, + 6,6,9,2,4,112,152,48,24,152,112,3,2,2,9,3, + 7,96,192,9,10,20,9,0,253,231,0,99,0,99,0,99, + 0,99,0,103,0,123,128,96,0,96,0,96,0,7,11,11, + 9,1,255,126,212,148,148,212,116,20,20,20,20,126,2,2, + 2,9,3,3,192,192,3,4,4,9,2,253,64,96,32,224, + 4,6,6,9,3,4,96,224,96,96,96,240,5,7,7,9, + 2,2,112,216,136,216,112,0,248,7,5,5,9,1,1,216, + 108,54,108,216,9,10,20,9,0,0,96,0,224,128,97,0, + 98,0,101,0,251,0,23,0,43,0,79,128,131,0,9,10, + 20,9,0,0,96,0,224,128,97,0,98,0,103,0,253,128, + 17,128,35,0,70,0,15,128,10,10,20,9,255,0,112,0, + 152,64,48,128,25,0,154,128,117,128,11,128,21,128,39,192, + 65,128,6,9,9,9,1,254,48,48,0,48,112,192,196,204, + 124,9,12,24,9,0,0,24,0,12,0,0,0,124,0,28, + 0,54,0,54,0,34,0,99,0,127,0,99,0,247,128,9, + 12,24,9,0,0,12,0,24,0,0,0,124,0,28,0,54, + 0,54,0,34,0,99,0,127,0,99,0,247,128,9,12,24, + 9,0,0,28,0,54,0,0,0,124,0,28,0,54,0,54, + 0,34,0,99,0,127,0,99,0,247,128,9,12,24,9,0, + 0,26,0,44,0,0,0,124,0,28,0,54,0,54,0,34, + 0,99,0,127,0,99,0,247,128,9,12,24,9,0,0,36, + 0,36,0,0,0,124,0,28,0,54,0,54,0,34,0,99, + 0,127,0,99,0,247,128,9,12,24,9,0,0,24,0,36, + 0,24,0,126,0,28,0,54,0,54,0,34,0,99,0,127, + 0,99,0,247,128,9,9,18,9,0,0,63,128,28,128,28, + 0,61,0,47,0,109,0,124,0,76,128,223,128,7,13,13, + 9,1,252,58,110,198,192,192,192,192,102,60,16,24,8,56, + 8,12,12,9,0,0,24,12,0,255,99,99,104,120,104,99, + 99,255,8,12,12,9,0,0,12,24,0,255,99,99,104,120, + 104,99,99,255,8,12,12,9,0,0,28,54,0,255,99,99, + 104,120,104,99,99,255,8,12,12,9,0,0,36,36,0,255, + 99,99,104,120,104,99,99,255,6,12,12,9,1,0,96,48, + 0,252,48,48,48,48,48,48,48,252,6,12,12,9,1,0, + 24,48,0,252,48,48,48,48,48,48,48,252,6,12,12,9, + 1,0,56,108,0,252,48,48,48,48,48,48,48,252,6,12, + 12,9,1,0,72,72,0,252,48,48,48,48,48,48,48,252, + 8,9,9,9,0,0,252,102,99,99,243,99,99,102,252,9, + 12,24,9,0,0,26,0,44,0,0,0,231,128,99,0,115, + 0,115,0,107,0,107,0,103,0,103,0,243,0,8,12,12, + 9,0,0,48,24,0,60,102,195,195,195,195,195,102,60,8, + 12,12,9,0,0,12,24,0,60,102,195,195,195,195,195,102, + 60,8,12,12,9,0,0,56,108,0,60,102,195,195,195,195, + 195,102,60,8,12,12,9,0,0,52,88,0,60,102,195,195, + 195,195,195,102,60,8,12,12,9,0,0,36,36,0,60,102, + 195,195,195,195,195,102,60,6,7,7,9,1,1,132,204,120, + 48,120,204,132,8,10,10,9,0,0,1,62,102,203,203,211, + 211,227,102,188,9,12,24,9,0,0,24,0,12,0,0,0, + 247,128,99,0,99,0,99,0,99,0,99,0,99,0,99,0, + 62,0,9,12,24,9,0,0,12,0,24,0,0,0,247,128, + 99,0,99,0,99,0,99,0,99,0,99,0,99,0,62,0, + 9,12,24,9,0,0,28,0,54,0,0,0,247,128,99,0, + 99,0,99,0,99,0,99,0,99,0,99,0,62,0,9,12, + 24,9,0,0,18,0,18,0,0,0,247,128,99,0,99,0, + 99,0,99,0,99,0,99,0,99,0,62,0,10,12,24,9, + 255,0,6,0,12,0,0,0,243,192,97,128,51,0,51,0, + 30,0,12,0,12,0,12,0,63,0,8,9,9,9,0,0, + 240,96,126,99,99,102,124,96,240,8,9,9,9,0,0,60, + 102,102,108,102,99,99,107,238,8,10,10,9,0,0,48,24, + 0,124,6,6,126,198,206,119,8,10,10,9,0,0,12,24, + 0,124,6,6,126,198,206,119,8,10,10,9,0,0,56,108, + 0,124,6,6,126,198,206,119,8,10,10,9,0,0,52,88, + 0,124,6,6,126,198,206,119,8,10,10,9,0,0,36,36, + 0,124,6,6,126,198,206,119,8,10,10,9,0,0,24,36, + 24,124,6,6,126,198,206,119,9,7,14,9,0,0,119,0, + 29,128,8,128,127,128,200,0,205,128,119,0,8,11,11,9, + 0,252,61,103,195,192,192,99,62,16,24,8,56,8,10,10, + 9,0,0,48,24,0,60,102,195,255,192,103,62,8,10,10, + 9,0,0,12,24,0,60,102,195,255,192,103,62,8,10,10, + 9,0,0,28,54,0,60,102,195,255,192,103,62,8,10,10, + 9,0,0,36,36,0,60,102,195,255,192,103,62,6,10,10, + 9,1,0,96,48,0,240,48,48,48,48,48,252,6,10,10, + 9,1,0,24,48,0,240,48,48,48,48,48,252,6,10,10, + 9,1,0,112,216,0,240,48,48,48,48,48,252,6,10,10, + 9,1,0,72,72,0,240,48,48,48,48,48,252,8,10,10, + 9,0,0,236,56,204,62,102,195,195,195,102,60,9,10,20, + 9,0,0,26,0,44,0,0,0,238,0,115,0,99,0,99, + 0,99,0,99,0,247,128,8,10,10,9,0,0,48,24,0, + 60,102,195,195,195,102,60,8,10,10,9,0,0,12,24,0, + 60,102,195,195,195,102,60,8,10,10,9,0,0,28,54,0, + 60,102,195,195,195,102,60,8,10,10,9,0,0,52,88,0, + 60,102,195,195,195,102,60,8,10,10,9,0,0,36,36,0, + 60,102,195,195,195,102,60,8,7,7,9,0,1,24,24,0, + 255,0,24,24,8,7,7,9,0,0,61,102,207,219,243,102, + 188,9,10,20,9,0,0,24,0,12,0,0,0,231,0,99, + 0,99,0,99,0,99,0,103,0,59,128,9,10,20,9,0, + 0,12,0,24,0,0,0,231,0,99,0,99,0,99,0,99, + 0,103,0,59,128,9,10,20,9,0,0,28,0,54,0,0, + 0,231,0,99,0,99,0,99,0,99,0,103,0,59,128,9, + 10,20,9,0,0,36,0,36,0,0,0,231,0,99,0,99, + 0,99,0,99,0,103,0,59,128,9,13,26,9,0,253,6, + 0,12,0,0,0,227,128,99,0,99,0,54,0,54,0,28, + 0,28,0,24,0,24,0,124,0,8,12,12,9,0,253,224, + 96,110,115,99,99,99,115,110,96,96,240,9,13,26,9,0, + 253,18,0,18,0,0,0,227,128,99,0,99,0,54,0,54, + 0,28,0,28,0,24,0,24,0,124,0}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--14-100-100-100-M-90-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 9, '1' Height: 10 + Calculated Max Values w=10 h=13 x= 3 y= 7 dx= 9 dy= 0 ascent=11 len=20 + Font Bounding box w=13 h=21 x=-2 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =11 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB10r[1551] U8G_SECTION(".progmem.u8g_font_courB10r") = { + 0,13,21,254,250,9,1,222,4,32,32,127,253,11,253,10, + 253,0,0,0,9,0,1,2,9,9,9,3,0,192,192,192, + 192,192,128,0,192,192,5,4,4,9,2,6,216,216,216,72, + 7,11,11,9,1,255,40,40,40,254,40,40,254,40,40,40, + 40,6,12,12,9,1,255,48,48,124,204,192,240,60,12,204, + 248,48,48,7,10,10,9,1,0,96,144,146,108,16,96,152, + 36,36,24,7,8,8,9,1,0,56,96,96,48,122,204,204, + 118,2,4,4,9,3,5,192,192,192,64,4,11,11,9,2, + 254,48,96,96,192,192,192,192,192,96,96,48,4,11,11,9, + 2,254,192,96,96,48,48,48,48,48,96,96,192,5,5,5, + 9,2,4,32,168,248,112,216,7,7,7,9,1,1,16,16, + 16,254,16,16,16,3,4,4,9,2,254,96,96,192,128,6, + 1,1,9,1,4,252,2,2,2,9,3,0,192,192,7,12, + 12,9,0,254,6,6,12,12,24,24,48,48,96,96,192,192, + 7,10,10,9,1,0,56,108,198,198,198,198,198,198,108,56, + 6,10,10,9,2,0,48,240,48,48,48,48,48,48,48,252, + 6,10,10,9,1,0,120,204,204,12,12,24,48,96,192,252, + 6,10,10,9,1,0,120,204,12,12,56,12,12,12,204,120, + 7,10,10,9,1,0,12,28,60,44,76,204,140,254,12,30, + 6,10,10,9,1,0,252,192,192,248,204,12,12,12,204,120, + 6,10,10,9,1,0,60,96,192,216,236,204,204,204,204,120, + 6,10,10,9,1,0,252,140,12,24,24,24,24,48,48,48, + 6,10,10,9,1,0,120,204,204,204,120,204,204,204,204,120, + 6,10,10,9,1,0,120,204,204,204,204,204,124,12,24,240, + 2,7,7,9,3,0,192,192,0,0,0,192,192,3,9,9, + 9,2,254,96,96,0,0,0,96,96,192,128,8,7,7,9, + 0,1,7,28,112,192,112,28,7,7,4,4,9,1,2,254, + 0,0,254,8,7,7,9,1,1,224,56,14,3,14,56,224, + 6,9,9,9,1,0,248,204,140,12,56,48,0,48,48,7, + 9,9,9,1,0,120,196,156,180,164,180,158,192,120,9,9, + 18,9,0,0,124,0,28,0,54,0,54,0,34,0,99,0, + 127,0,99,0,247,128,8,9,9,9,0,0,254,99,99,99, + 126,99,99,99,254,7,9,9,9,1,0,58,102,198,192,192, + 192,192,102,60,8,9,9,9,0,0,252,102,99,99,99,99, + 99,102,252,8,9,9,9,0,0,255,99,99,104,120,104,99, + 99,255,8,9,9,9,0,0,255,99,99,104,120,104,96,96, + 248,9,9,18,9,0,0,61,0,103,0,195,0,192,0,192, + 0,207,128,195,0,99,0,63,0,9,9,18,9,0,0,247, + 128,99,0,99,0,99,0,127,0,99,0,99,0,99,0,247, + 128,6,9,9,9,1,0,252,48,48,48,48,48,48,48,252, + 9,9,18,9,0,0,31,128,6,0,6,0,6,0,6,0, + 198,0,198,0,198,0,124,0,9,9,18,9,0,0,247,0, + 102,0,108,0,120,0,124,0,102,0,102,0,99,0,243,128, + 8,9,9,9,0,0,248,96,96,96,96,99,99,99,255,9, + 9,18,9,0,0,227,128,99,0,119,0,119,0,107,0,107, + 0,99,0,99,0,247,128,9,9,18,9,0,0,231,128,99, + 0,115,0,115,0,107,0,107,0,103,0,103,0,243,0,8, + 9,9,9,0,0,60,102,195,195,195,195,195,102,60,8,9, + 9,9,0,0,254,99,99,99,102,124,96,96,248,8,11,11, + 9,0,254,60,102,195,195,195,195,195,102,60,25,110,9,9, + 18,9,0,0,254,0,99,0,99,0,99,0,102,0,124,0, + 102,0,99,0,243,128,7,9,9,9,1,0,122,206,198,224, + 124,14,198,230,188,8,9,9,9,0,0,255,219,219,24,24, + 24,24,24,60,9,9,18,9,0,0,247,128,99,0,99,0, + 99,0,99,0,99,0,99,0,99,0,62,0,9,9,18,9, + 0,0,247,128,99,0,99,0,99,0,54,0,54,0,54,0, + 28,0,28,0,9,9,18,9,0,0,247,128,99,0,107,0, + 107,0,107,0,119,0,119,0,99,0,99,0,8,9,9,9, + 0,0,231,102,102,60,24,60,102,102,231,10,9,18,9,255, + 0,243,192,97,128,51,0,51,0,30,0,12,0,12,0,12, + 0,63,0,7,9,9,9,1,0,254,198,204,24,24,48,102, + 198,254,4,11,11,9,2,254,240,192,192,192,192,192,192,192, + 192,192,240,7,12,12,9,1,254,192,192,96,96,48,48,24, + 24,12,12,6,6,4,11,11,9,2,254,240,48,48,48,48, + 48,48,48,48,48,240,5,4,4,9,2,5,32,112,216,136, + 9,1,2,9,0,254,255,128,3,2,2,9,2,7,192,96, + 8,7,7,9,0,0,124,6,6,126,198,206,119,8,10,10, + 9,0,0,224,96,96,110,115,99,99,99,115,238,8,7,7, + 9,0,0,61,103,195,192,192,99,62,8,10,10,9,0,0, + 14,6,6,118,206,198,198,198,206,119,8,7,7,9,0,0, + 60,102,195,255,192,103,62,7,10,10,9,1,0,30,48,48, + 252,48,48,48,48,48,252,8,10,10,9,0,253,119,206,198, + 198,198,206,118,6,6,124,9,10,20,9,0,0,224,0,96, + 0,96,0,110,0,115,0,99,0,99,0,99,0,99,0,247, + 128,6,10,10,9,1,0,48,48,0,240,48,48,48,48,48, + 252,5,13,13,9,1,253,24,24,0,120,24,24,24,24,24, + 24,24,24,240,8,10,10,9,0,0,224,96,96,103,108,120, + 120,108,102,231,6,10,10,9,1,0,240,48,48,48,48,48, + 48,48,48,252,9,7,14,9,0,0,223,0,109,128,109,128, + 109,128,109,128,109,128,237,128,9,7,14,9,0,0,238,0, + 115,0,99,0,99,0,99,0,99,0,247,128,8,7,7,9, + 0,0,60,102,195,195,195,102,60,8,10,10,9,0,253,238, + 115,99,99,99,115,110,96,96,240,8,10,10,9,0,253,119, + 206,198,198,198,206,118,6,6,15,7,7,7,9,1,0,238, + 112,96,96,96,96,252,7,7,7,9,1,0,126,198,192,124, + 6,198,252,7,9,9,9,1,0,96,96,252,96,96,96,96, + 102,60,9,7,14,9,0,0,231,0,99,0,99,0,99,0, + 99,0,103,0,59,128,9,7,14,9,0,0,247,128,99,0, + 99,0,54,0,54,0,28,0,28,0,10,7,14,9,255,0, + 225,192,109,128,109,128,109,128,45,0,51,0,51,0,8,7, + 7,9,0,0,231,102,60,24,60,102,231,9,10,20,9,0, + 253,227,128,99,0,99,0,54,0,54,0,28,0,28,0,24, + 0,24,0,124,0,6,7,7,9,1,0,252,140,24,48,96, + 196,252,4,11,11,9,2,254,48,96,96,96,96,192,96,96, + 96,96,48,2,11,11,9,3,254,192,192,192,192,192,192,192, + 192,192,192,192,4,11,11,9,2,254,192,96,96,96,96,48, + 96,96,96,96,192,6,3,3,9,1,3,100,252,152,255}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--17-120-100-100-M-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 11 + Calculated Max Values w=11 h=14 x= 4 y= 9 dx=10 dy= 0 ascent=14 len=28 + Font Bounding box w=16 h=24 x=-3 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB12[3959] U8G_SECTION(".progmem.u8g_font_courB12") = { + 0,16,24,253,250,10,2,51,4,246,32,255,253,14,253,11, + 253,0,0,0,10,0,1,2,11,11,10,3,0,192,192,192, + 192,192,192,192,192,0,192,192,6,5,5,10,2,6,204,204, + 204,204,204,9,12,24,10,0,255,54,0,54,0,54,0,54, + 0,255,128,54,0,54,0,255,128,54,0,54,0,54,0,54, + 0,7,13,13,10,1,255,24,24,126,198,192,224,124,14,6, + 198,252,48,48,8,11,11,10,1,0,120,204,204,120,7,60, + 224,30,51,51,30,7,9,9,10,1,0,56,108,96,48,118, + 222,204,204,126,2,5,5,10,4,6,192,192,192,192,192,4, + 13,13,10,3,254,48,96,96,96,192,192,192,192,192,96,96, + 96,48,4,13,13,10,2,254,192,96,96,96,48,48,48,48, + 48,96,96,96,192,8,6,6,10,1,5,24,24,255,60,60, + 102,8,8,8,10,1,1,24,24,24,255,255,24,24,24,3, + 5,5,10,3,253,224,224,96,192,128,7,2,2,10,1,4, + 254,254,3,2,2,10,3,0,224,224,7,14,14,10,1,254, + 6,6,12,12,12,24,24,48,48,48,96,96,192,192,8,11, + 11,10,1,0,60,102,102,195,195,195,195,195,102,102,60,8, + 11,11,10,1,0,24,120,216,24,24,24,24,24,24,24,255, + 7,11,11,10,1,0,120,204,134,6,6,12,24,48,96,198, + 254,7,11,11,10,1,0,120,204,134,12,56,12,6,6,134, + 204,120,8,11,11,10,1,0,6,14,30,54,102,70,198,255, + 6,6,31,7,11,11,10,1,0,254,192,192,192,252,198,6, + 6,6,204,248,8,11,11,10,1,0,30,112,96,192,220,230, + 195,195,195,102,60,7,11,11,10,1,0,254,198,6,12,12, + 24,24,24,48,48,48,7,11,11,10,1,0,56,108,198,68, + 56,108,198,198,198,108,56,8,11,11,10,1,0,60,102,195, + 195,103,59,3,3,6,14,120,3,7,7,10,3,0,224,224, + 0,0,0,224,224,3,10,10,10,3,253,224,224,0,0,0, + 224,224,96,192,128,9,9,18,10,1,0,1,128,7,128,30, + 0,120,0,224,0,120,0,30,0,7,128,1,128,9,5,10, + 10,0,2,255,128,255,128,0,0,255,128,255,128,9,9,18, + 10,0,0,192,0,240,0,60,0,15,0,3,128,15,0,60, + 0,240,0,192,0,7,10,10,10,1,0,124,198,198,6,28, + 48,48,0,48,48,9,12,24,10,0,255,62,0,99,0,193, + 128,221,128,178,128,178,128,178,128,178,128,223,0,192,0,99, + 0,62,0,10,10,20,10,0,0,60,0,12,0,30,0,18, + 0,51,0,51,0,63,0,97,128,97,128,243,192,9,10,20, + 10,0,0,254,0,99,0,97,128,99,0,126,0,99,0,97, + 128,97,128,99,0,254,0,9,10,20,10,0,0,30,128,115, + 128,97,128,192,0,192,0,192,0,192,0,97,128,115,128,30, + 0,9,10,20,10,0,0,252,0,103,0,99,0,97,128,97, + 128,97,128,97,128,99,0,103,0,252,0,8,10,10,10,1, + 0,255,99,96,100,124,100,96,99,99,255,8,10,10,10,1, + 0,255,99,96,100,124,100,96,96,96,248,10,10,20,10,0, + 0,30,128,115,128,97,128,192,0,192,0,199,192,193,128,97, + 128,113,128,31,0,9,10,20,10,0,0,247,128,99,0,99, + 0,99,0,127,0,99,0,99,0,99,0,99,0,247,128,8, + 10,10,10,1,0,255,24,24,24,24,24,24,24,24,255,9, + 10,20,10,0,0,63,128,6,0,6,0,6,0,6,0,6, + 0,198,0,198,0,198,0,124,0,9,10,20,10,0,0,247, + 128,99,0,102,0,108,0,120,0,124,0,102,0,102,0,99, + 0,251,128,9,10,20,10,0,0,252,0,48,0,48,0,48, + 0,48,0,48,0,49,128,49,128,49,128,255,128,10,10,20, + 10,0,0,225,192,97,128,115,128,115,128,127,128,109,128,109, + 128,97,128,97,128,243,192,10,10,20,10,0,0,247,192,113, + 128,121,128,105,128,109,128,109,128,101,128,103,128,99,128,251, + 128,9,10,20,10,0,0,62,0,99,0,99,0,193,128,193, + 128,193,128,193,128,99,0,99,0,62,0,9,10,20,10,0, + 0,254,0,99,0,97,128,97,128,99,0,126,0,96,0,96, + 0,96,0,252,0,9,12,24,10,0,254,62,0,99,0,99, + 0,193,128,193,128,193,128,193,128,99,0,99,0,62,0,25, + 128,63,0,9,10,20,10,0,0,252,0,102,0,99,0,99, + 0,102,0,124,0,102,0,99,0,99,0,251,128,8,10,10, + 10,1,0,61,103,195,224,120,30,7,195,230,188,8,10,10, + 10,1,0,255,153,153,153,24,24,24,24,24,126,10,10,20, + 10,0,0,243,192,97,128,97,128,97,128,97,128,97,128,97, + 128,97,128,51,0,30,0,10,10,20,10,0,0,243,192,97, + 128,97,128,51,0,51,0,51,0,30,0,30,0,12,0,12, + 0,10,10,20,10,0,0,243,192,97,128,109,128,109,128,109, + 128,63,0,51,0,51,0,51,0,51,0,10,10,20,10,0, + 0,243,192,97,128,51,0,30,0,12,0,12,0,30,0,51, + 0,97,128,243,192,10,10,20,10,0,0,243,192,97,128,51, + 0,51,0,30,0,12,0,12,0,12,0,12,0,63,0,7, + 10,10,10,1,0,254,198,204,28,24,48,112,102,198,254,4, + 13,13,10,3,254,240,192,192,192,192,192,192,192,192,192,192, + 192,240,7,14,14,10,1,254,192,192,96,96,96,48,48,56, + 24,24,12,12,6,6,4,13,13,10,2,254,240,48,48,48, + 48,48,48,48,48,48,48,48,240,8,4,4,10,1,7,24, + 60,102,195,10,2,4,10,0,253,255,192,255,192,4,3,3, + 10,2,8,192,96,48,8,7,7,10,1,0,60,102,6,126, + 198,198,123,9,11,22,10,0,0,224,0,96,0,96,0,96, + 0,110,0,115,0,97,128,97,128,97,128,115,0,238,0,8, + 7,7,10,0,0,61,103,195,192,192,99,62,9,11,22,10, + 0,0,7,0,3,0,3,0,3,0,59,0,103,0,195,0, + 195,0,195,0,103,0,59,128,8,7,7,10,1,0,60,102, + 195,255,192,99,62,8,11,11,10,1,0,30,51,48,48,254, + 48,48,48,48,48,254,9,10,20,10,0,253,59,128,103,0, + 195,0,195,0,195,0,103,0,59,0,3,0,3,0,62,0, + 9,11,22,10,0,0,224,0,96,0,96,0,96,0,110,0, + 115,0,99,0,99,0,99,0,99,0,247,128,8,10,10,10, + 1,0,24,24,0,120,24,24,24,24,24,255,6,13,13,10, + 1,253,24,24,0,252,12,12,12,12,12,12,12,12,248,9, + 11,22,10,0,0,224,0,96,0,96,0,96,0,111,128,102, + 0,108,0,120,0,108,0,102,0,239,128,8,11,11,10,1, + 0,120,24,24,24,24,24,24,24,24,24,255,10,7,14,10, + 0,0,237,128,127,128,109,128,109,128,109,128,109,128,237,192, + 9,7,14,10,0,0,238,0,115,0,99,0,99,0,99,0, + 99,0,247,128,8,7,7,10,1,0,60,102,195,195,195,102, + 60,9,10,20,10,0,253,238,0,115,0,97,128,97,128,97, + 128,115,0,110,0,96,0,96,0,248,0,9,10,20,10,0, + 253,59,128,103,0,195,0,195,0,195,0,103,0,59,0,3, + 0,3,0,15,128,9,7,14,10,0,0,247,0,57,128,48, + 0,48,0,48,0,48,0,254,0,7,7,7,10,1,0,126, + 198,224,124,14,198,252,9,9,18,10,0,0,48,0,48,0, + 255,0,48,0,48,0,48,0,48,0,49,128,31,0,9,7, + 14,10,0,0,231,0,99,0,99,0,99,0,99,0,103,0, + 59,128,10,7,14,10,0,0,243,192,97,128,51,0,51,0, + 30,0,30,0,12,0,10,7,14,10,0,0,243,192,97,128, + 109,128,45,0,63,0,51,0,51,0,8,7,7,10,1,0, + 231,102,60,24,60,102,231,10,10,20,10,0,253,243,192,97, + 128,51,0,51,0,30,0,30,0,12,0,24,0,24,0,124, + 0,7,7,7,10,1,0,254,204,24,48,96,198,254,4,13, + 13,10,3,254,48,96,96,96,96,64,192,96,96,96,96,96, + 48,2,13,13,10,4,254,192,192,192,192,192,192,192,192,192, + 192,192,192,192,4,13,13,10,3,254,192,96,96,96,96,32, + 48,96,96,96,96,96,192,8,3,3,10,1,3,112,219,14, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,0,0,0,10,0,1,2,10,10,10,4,253,192,192,0, + 192,192,192,192,192,192,192,7,10,10,10,1,0,24,24,62, + 102,192,192,102,60,24,24,8,10,10,10,1,0,30,51,48, + 48,252,252,48,51,227,254,8,7,7,10,1,1,195,126,102, + 66,102,126,195,10,10,20,10,0,0,243,192,97,128,51,0, + 51,0,30,0,63,0,12,0,63,0,12,0,63,0,2,13, + 13,10,4,254,192,192,192,192,192,192,0,192,192,192,192,192, + 192,10,12,24,10,0,255,31,128,49,128,49,128,120,0,206, + 0,195,128,112,192,28,192,7,128,99,0,99,0,126,0,5, + 2,2,10,3,8,216,216,10,10,20,10,0,0,12,0,63, + 0,97,128,78,128,216,192,216,192,78,128,97,128,63,0,12, + 0,6,7,7,10,2,3,120,12,124,204,124,0,252,9,7, + 14,10,0,0,25,128,51,0,102,0,204,0,102,0,51,0, + 25,128,8,5,5,10,1,2,255,255,3,3,3,7,2,2, + 10,1,4,254,254,10,10,20,10,0,0,12,0,63,0,97, + 128,92,128,214,192,220,192,82,128,97,128,63,0,12,0,5, + 1,1,10,2,9,248,5,5,5,10,2,6,112,216,136,216, + 112,8,9,9,10,1,0,24,24,255,255,24,24,0,255,255, + 5,6,6,10,2,5,112,216,48,96,200,248,5,6,6,10, + 2,5,112,216,48,24,216,112,4,3,3,10,3,8,48,96, + 192,9,10,20,10,0,253,231,0,99,0,99,0,99,0,99, + 0,103,0,123,128,96,0,96,0,96,0,9,12,24,10,0, + 255,63,128,91,0,219,0,219,0,219,0,91,0,59,0,27, + 0,27,0,27,0,27,0,63,128,3,2,2,10,3,4,224, + 224,4,4,4,10,3,253,32,96,48,240,6,6,6,10,2, + 5,48,240,48,48,48,252,6,7,7,10,2,3,120,204,204, + 204,120,0,252,9,7,14,10,0,0,204,0,102,0,51,0, + 25,128,51,0,102,0,204,0,10,11,22,10,0,0,32,0, + 225,0,99,0,98,0,102,0,252,128,25,128,19,128,54,128, + 111,192,65,128,10,11,22,10,0,0,32,0,224,128,97,128, + 99,0,102,0,255,128,10,192,25,128,51,0,102,64,71,192, + 11,11,22,10,0,0,112,0,216,128,49,128,27,0,218,0, + 118,64,12,192,9,192,27,64,55,224,32,192,7,10,10,10, + 1,253,24,24,0,24,24,112,192,198,198,124,10,14,28,10, + 0,0,48,0,24,0,12,0,0,0,60,0,12,0,30,0, + 18,0,51,0,51,0,63,0,97,128,97,128,243,192,10,14, + 28,10,0,0,6,0,12,0,24,0,0,0,60,0,12,0, + 30,0,18,0,51,0,51,0,63,0,97,128,97,128,243,192, + 10,14,28,10,0,0,12,0,30,0,51,0,0,0,60,0, + 12,0,30,0,18,0,51,0,51,0,63,0,97,128,97,128, + 243,192,10,13,26,10,0,0,59,0,110,0,0,0,60,0, + 12,0,30,0,18,0,51,0,51,0,63,0,97,128,97,128, + 243,192,10,13,26,10,0,0,54,0,54,0,0,0,60,0, + 12,0,30,0,18,0,51,0,51,0,63,0,97,128,97,128, + 243,192,10,14,28,10,0,0,28,0,54,0,54,0,28,0, + 60,0,12,0,30,0,18,0,51,0,51,0,63,0,97,128, + 97,128,243,192,10,10,20,10,0,0,127,192,60,192,44,0, + 45,0,111,0,77,0,124,0,76,192,204,192,255,192,9,13, + 26,10,0,253,30,128,115,128,97,128,192,0,192,0,192,0, + 192,0,97,128,115,128,30,0,24,0,12,0,60,0,8,14, + 14,10,1,0,48,24,12,0,255,99,96,100,124,100,96,99, + 99,255,8,14,14,10,1,0,6,12,24,0,255,99,96,100, + 124,100,96,99,99,255,8,14,14,10,1,0,24,60,102,0, + 255,99,96,100,124,100,96,99,99,255,8,13,13,10,1,0, + 54,54,0,255,99,96,100,124,100,96,99,99,255,8,14,14, + 10,1,0,48,24,12,0,255,24,24,24,24,24,24,24,24, + 255,8,14,14,10,1,0,12,24,48,0,255,24,24,24,24, + 24,24,24,24,255,8,14,14,10,1,0,24,60,102,0,255, + 24,24,24,24,24,24,24,24,255,8,13,13,10,1,0,54, + 54,0,255,24,24,24,24,24,24,24,24,255,9,10,20,10, + 0,0,252,0,103,0,99,0,97,128,249,128,97,128,97,128, + 99,0,103,0,252,0,10,13,26,10,0,0,59,0,110,0, + 0,0,247,192,113,128,121,128,105,128,109,128,109,128,101,128, + 103,128,99,128,251,128,9,14,28,10,0,0,48,0,24,0, + 12,0,0,0,62,0,99,0,99,0,193,128,193,128,193,128, + 193,128,99,0,99,0,62,0,9,14,28,10,0,0,6,0, + 12,0,24,0,0,0,62,0,99,0,99,0,193,128,193,128, + 193,128,193,128,99,0,99,0,62,0,9,14,28,10,0,0, + 12,0,30,0,51,0,0,0,62,0,99,0,99,0,193,128, + 193,128,193,128,193,128,99,0,99,0,62,0,9,13,26,10, + 0,0,59,0,110,0,0,0,62,0,99,0,99,0,193,128, + 193,128,193,128,193,128,99,0,99,0,62,0,9,13,26,10, + 0,0,54,0,54,0,0,0,62,0,99,0,99,0,193,128, + 193,128,193,128,193,128,99,0,99,0,62,0,8,7,7,10, + 1,1,227,118,60,24,60,110,199,9,12,24,10,0,255,0, + 128,63,128,99,0,103,0,197,128,205,128,217,128,209,128,115, + 0,99,0,254,0,128,0,10,14,28,10,0,0,48,0,24, + 0,12,0,0,0,243,192,97,128,97,128,97,128,97,128,97, + 128,97,128,97,128,51,0,30,0,10,14,28,10,0,0,3, + 0,6,0,12,0,0,0,243,192,97,128,97,128,97,128,97, + 128,97,128,97,128,97,128,51,0,30,0,10,14,28,10,0, + 0,12,0,30,0,51,0,0,0,243,192,97,128,97,128,97, + 128,97,128,97,128,97,128,97,128,51,0,30,0,10,13,26, + 10,0,0,27,0,27,0,0,0,243,192,97,128,97,128,97, + 128,97,128,97,128,97,128,97,128,51,0,30,0,10,14,28, + 10,0,0,3,0,6,0,12,0,0,0,243,192,97,128,51, + 0,51,0,30,0,12,0,12,0,12,0,12,0,63,0,9, + 10,20,10,0,0,240,0,96,0,126,0,99,0,97,128,99, + 0,126,0,96,0,96,0,240,0,8,11,11,10,0,0,60, + 102,102,100,108,102,99,99,99,122,236,8,11,11,10,1,0, + 48,24,12,0,60,102,6,126,198,198,123,8,11,11,10,1, + 0,6,12,24,0,60,102,6,126,198,198,123,8,11,11,10, + 1,0,24,60,102,0,60,102,6,126,198,198,123,8,10,10, + 10,1,0,59,110,0,60,102,6,126,198,198,123,8,10,10, + 10,1,0,54,54,0,60,102,6,126,198,198,123,8,12,12, + 10,1,0,28,54,54,28,0,60,102,6,126,198,198,123,10, + 7,14,10,255,0,59,128,108,192,12,192,127,192,204,0,204, + 192,119,128,8,10,10,10,1,253,61,103,195,192,192,227,126, + 24,12,60,8,11,11,10,1,0,48,24,12,0,60,102,195, + 255,192,99,62,8,11,11,10,1,0,6,12,24,0,60,102, + 195,255,192,99,62,8,11,11,10,1,0,24,60,102,0,60, + 102,195,255,192,99,62,8,10,10,10,1,0,54,54,0,60, + 102,195,255,192,99,62,8,11,11,10,1,0,96,48,24,0, + 120,24,24,24,24,24,255,8,11,11,10,1,0,6,12,24, + 0,120,24,24,24,24,24,255,8,11,11,10,1,0,24,60, + 102,0,120,24,24,24,24,24,255,8,10,10,10,1,0,108, + 108,0,120,24,24,24,24,24,255,8,12,12,10,1,0,224, + 118,28,60,198,62,103,227,195,195,102,60,9,10,20,10,0, + 0,59,0,110,0,0,0,238,0,115,0,99,0,99,0,99, + 0,99,0,247,128,8,11,11,10,1,0,48,24,12,0,60, + 102,195,195,195,102,60,8,11,11,10,1,0,12,24,48,0, + 60,102,195,195,195,102,60,8,11,11,10,1,0,24,60,102, + 0,60,102,195,195,195,102,60,8,10,10,10,1,0,59,110, + 0,60,102,195,195,195,102,60,8,10,10,10,1,0,108,108, + 0,60,102,195,195,195,102,60,8,8,8,10,1,1,24,24, + 0,255,255,0,24,24,8,9,9,10,1,255,3,63,102,207, + 219,243,102,252,192,9,11,22,10,0,0,48,0,24,0,12, + 0,0,0,231,0,99,0,99,0,99,0,99,0,103,0,59, + 128,9,11,22,10,0,0,12,0,24,0,48,0,0,0,231, + 0,99,0,99,0,99,0,99,0,103,0,59,128,9,11,22, + 10,0,0,24,0,60,0,102,0,0,0,231,0,99,0,99, + 0,99,0,99,0,103,0,59,128,9,10,20,10,0,0,54, + 0,54,0,0,0,231,0,99,0,99,0,99,0,99,0,103, + 0,59,128,10,14,28,10,0,253,6,0,12,0,24,0,0, + 0,243,192,97,128,51,0,51,0,30,0,30,0,12,0,24, + 0,24,0,124,0,9,14,28,10,0,253,224,0,96,0,96, + 0,96,0,110,0,115,0,97,128,97,128,97,128,115,0,110, + 0,96,0,96,0,248,0,10,13,26,10,0,253,54,0,54, + 0,0,0,243,192,97,128,51,0,51,0,30,0,30,0,12, + 0,12,0,24,0,124,0}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--17-120-100-100-M-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 11 + Calculated Max Values w=10 h=14 x= 4 y= 8 dx=10 dy= 0 ascent=12 len=24 + Font Bounding box w=16 h=24 x=-3 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB12r[1857] U8G_SECTION(".progmem.u8g_font_courB12r") = { + 0,16,24,253,250,10,2,51,4,246,32,127,253,12,253,11, + 253,0,0,0,10,0,1,2,11,11,10,3,0,192,192,192, + 192,192,192,192,192,0,192,192,6,5,5,10,2,6,204,204, + 204,204,204,9,12,24,10,0,255,54,0,54,0,54,0,54, + 0,255,128,54,0,54,0,255,128,54,0,54,0,54,0,54, + 0,7,13,13,10,1,255,24,24,126,198,192,224,124,14,6, + 198,252,48,48,8,11,11,10,1,0,120,204,204,120,7,60, + 224,30,51,51,30,7,9,9,10,1,0,56,108,96,48,118, + 222,204,204,126,2,5,5,10,4,6,192,192,192,192,192,4, + 13,13,10,3,254,48,96,96,96,192,192,192,192,192,96,96, + 96,48,4,13,13,10,2,254,192,96,96,96,48,48,48,48, + 48,96,96,96,192,8,6,6,10,1,5,24,24,255,60,60, + 102,8,8,8,10,1,1,24,24,24,255,255,24,24,24,3, + 5,5,10,3,253,224,224,96,192,128,7,2,2,10,1,4, + 254,254,3,2,2,10,3,0,224,224,7,14,14,10,1,254, + 6,6,12,12,12,24,24,48,48,48,96,96,192,192,8,11, + 11,10,1,0,60,102,102,195,195,195,195,195,102,102,60,8, + 11,11,10,1,0,24,120,216,24,24,24,24,24,24,24,255, + 7,11,11,10,1,0,120,204,134,6,6,12,24,48,96,198, + 254,7,11,11,10,1,0,120,204,134,12,56,12,6,6,134, + 204,120,8,11,11,10,1,0,6,14,30,54,102,70,198,255, + 6,6,31,7,11,11,10,1,0,254,192,192,192,252,198,6, + 6,6,204,248,8,11,11,10,1,0,30,112,96,192,220,230, + 195,195,195,102,60,7,11,11,10,1,0,254,198,6,12,12, + 24,24,24,48,48,48,7,11,11,10,1,0,56,108,198,68, + 56,108,198,198,198,108,56,8,11,11,10,1,0,60,102,195, + 195,103,59,3,3,6,14,120,3,7,7,10,3,0,224,224, + 0,0,0,224,224,3,10,10,10,3,253,224,224,0,0,0, + 224,224,96,192,128,9,9,18,10,1,0,1,128,7,128,30, + 0,120,0,224,0,120,0,30,0,7,128,1,128,9,5,10, + 10,0,2,255,128,255,128,0,0,255,128,255,128,9,9,18, + 10,0,0,192,0,240,0,60,0,15,0,3,128,15,0,60, + 0,240,0,192,0,7,10,10,10,1,0,124,198,198,6,28, + 48,48,0,48,48,9,12,24,10,0,255,62,0,99,0,193, + 128,221,128,178,128,178,128,178,128,178,128,223,0,192,0,99, + 0,62,0,10,10,20,10,0,0,60,0,12,0,30,0,18, + 0,51,0,51,0,63,0,97,128,97,128,243,192,9,10,20, + 10,0,0,254,0,99,0,97,128,99,0,126,0,99,0,97, + 128,97,128,99,0,254,0,9,10,20,10,0,0,30,128,115, + 128,97,128,192,0,192,0,192,0,192,0,97,128,115,128,30, + 0,9,10,20,10,0,0,252,0,103,0,99,0,97,128,97, + 128,97,128,97,128,99,0,103,0,252,0,8,10,10,10,1, + 0,255,99,96,100,124,100,96,99,99,255,8,10,10,10,1, + 0,255,99,96,100,124,100,96,96,96,248,10,10,20,10,0, + 0,30,128,115,128,97,128,192,0,192,0,199,192,193,128,97, + 128,113,128,31,0,9,10,20,10,0,0,247,128,99,0,99, + 0,99,0,127,0,99,0,99,0,99,0,99,0,247,128,8, + 10,10,10,1,0,255,24,24,24,24,24,24,24,24,255,9, + 10,20,10,0,0,63,128,6,0,6,0,6,0,6,0,6, + 0,198,0,198,0,198,0,124,0,9,10,20,10,0,0,247, + 128,99,0,102,0,108,0,120,0,124,0,102,0,102,0,99, + 0,251,128,9,10,20,10,0,0,252,0,48,0,48,0,48, + 0,48,0,48,0,49,128,49,128,49,128,255,128,10,10,20, + 10,0,0,225,192,97,128,115,128,115,128,127,128,109,128,109, + 128,97,128,97,128,243,192,10,10,20,10,0,0,247,192,113, + 128,121,128,105,128,109,128,109,128,101,128,103,128,99,128,251, + 128,9,10,20,10,0,0,62,0,99,0,99,0,193,128,193, + 128,193,128,193,128,99,0,99,0,62,0,9,10,20,10,0, + 0,254,0,99,0,97,128,97,128,99,0,126,0,96,0,96, + 0,96,0,252,0,9,12,24,10,0,254,62,0,99,0,99, + 0,193,128,193,128,193,128,193,128,99,0,99,0,62,0,25, + 128,63,0,9,10,20,10,0,0,252,0,102,0,99,0,99, + 0,102,0,124,0,102,0,99,0,99,0,251,128,8,10,10, + 10,1,0,61,103,195,224,120,30,7,195,230,188,8,10,10, + 10,1,0,255,153,153,153,24,24,24,24,24,126,10,10,20, + 10,0,0,243,192,97,128,97,128,97,128,97,128,97,128,97, + 128,97,128,51,0,30,0,10,10,20,10,0,0,243,192,97, + 128,97,128,51,0,51,0,51,0,30,0,30,0,12,0,12, + 0,10,10,20,10,0,0,243,192,97,128,109,128,109,128,109, + 128,63,0,51,0,51,0,51,0,51,0,10,10,20,10,0, + 0,243,192,97,128,51,0,30,0,12,0,12,0,30,0,51, + 0,97,128,243,192,10,10,20,10,0,0,243,192,97,128,51, + 0,51,0,30,0,12,0,12,0,12,0,12,0,63,0,7, + 10,10,10,1,0,254,198,204,28,24,48,112,102,198,254,4, + 13,13,10,3,254,240,192,192,192,192,192,192,192,192,192,192, + 192,240,7,14,14,10,1,254,192,192,96,96,96,48,48,56, + 24,24,12,12,6,6,4,13,13,10,2,254,240,48,48,48, + 48,48,48,48,48,48,48,48,240,8,4,4,10,1,7,24, + 60,102,195,10,2,4,10,0,253,255,192,255,192,4,3,3, + 10,2,8,192,96,48,8,7,7,10,1,0,60,102,6,126, + 198,198,123,9,11,22,10,0,0,224,0,96,0,96,0,96, + 0,110,0,115,0,97,128,97,128,97,128,115,0,238,0,8, + 7,7,10,0,0,61,103,195,192,192,99,62,9,11,22,10, + 0,0,7,0,3,0,3,0,3,0,59,0,103,0,195,0, + 195,0,195,0,103,0,59,128,8,7,7,10,1,0,60,102, + 195,255,192,99,62,8,11,11,10,1,0,30,51,48,48,254, + 48,48,48,48,48,254,9,10,20,10,0,253,59,128,103,0, + 195,0,195,0,195,0,103,0,59,0,3,0,3,0,62,0, + 9,11,22,10,0,0,224,0,96,0,96,0,96,0,110,0, + 115,0,99,0,99,0,99,0,99,0,247,128,8,10,10,10, + 1,0,24,24,0,120,24,24,24,24,24,255,6,13,13,10, + 1,253,24,24,0,252,12,12,12,12,12,12,12,12,248,9, + 11,22,10,0,0,224,0,96,0,96,0,96,0,111,128,102, + 0,108,0,120,0,108,0,102,0,239,128,8,11,11,10,1, + 0,120,24,24,24,24,24,24,24,24,24,255,10,7,14,10, + 0,0,237,128,127,128,109,128,109,128,109,128,109,128,237,192, + 9,7,14,10,0,0,238,0,115,0,99,0,99,0,99,0, + 99,0,247,128,8,7,7,10,1,0,60,102,195,195,195,102, + 60,9,10,20,10,0,253,238,0,115,0,97,128,97,128,97, + 128,115,0,110,0,96,0,96,0,248,0,9,10,20,10,0, + 253,59,128,103,0,195,0,195,0,195,0,103,0,59,0,3, + 0,3,0,15,128,9,7,14,10,0,0,247,0,57,128,48, + 0,48,0,48,0,48,0,254,0,7,7,7,10,1,0,126, + 198,224,124,14,198,252,9,9,18,10,0,0,48,0,48,0, + 255,0,48,0,48,0,48,0,48,0,49,128,31,0,9,7, + 14,10,0,0,231,0,99,0,99,0,99,0,99,0,103,0, + 59,128,10,7,14,10,0,0,243,192,97,128,51,0,51,0, + 30,0,30,0,12,0,10,7,14,10,0,0,243,192,97,128, + 109,128,45,0,63,0,51,0,51,0,8,7,7,10,1,0, + 231,102,60,24,60,102,231,10,10,20,10,0,253,243,192,97, + 128,51,0,51,0,30,0,30,0,12,0,24,0,24,0,124, + 0,7,7,7,10,1,0,254,204,24,48,96,198,254,4,13, + 13,10,3,254,48,96,96,96,96,64,192,96,96,96,96,96, + 48,2,13,13,10,4,254,192,192,192,192,192,192,192,192,192, + 192,192,192,192,4,13,13,10,3,254,192,96,96,96,96,32, + 48,96,96,96,96,96,192,8,3,3,10,1,3,112,219,14, + 255}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--20-140-100-100-M-110-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 12 + Calculated Max Values w=12 h=17 x= 4 y= 9 dx=11 dy= 0 ascent=15 len=34 + Font Bounding box w=17 h=26 x=-4 y=-7 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =15 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB14[4784] U8G_SECTION(".progmem.u8g_font_courB14") = { + 0,17,26,252,249,11,2,101,5,155,32,255,252,15,251,12, + 252,0,0,0,11,0,1,3,12,12,11,4,0,224,224,224, + 224,224,224,192,192,192,0,192,192,6,6,6,11,2,6,204, + 204,204,204,136,136,8,14,14,11,1,255,54,54,54,54,255, + 255,108,108,255,255,108,108,108,108,8,15,15,11,1,254,24, + 24,63,127,195,192,240,126,15,3,199,254,252,24,24,8,12, + 12,11,1,0,112,216,136,216,115,14,120,206,27,17,27,14, + 8,10,10,11,1,0,60,126,102,96,48,123,255,206,255,123, + 2,6,6,11,4,6,192,192,192,192,128,128,4,15,15,11, + 4,253,48,48,96,96,192,192,192,192,192,192,192,96,96,48, + 48,4,15,15,11,2,253,192,192,96,96,48,48,48,48,48, + 48,48,96,96,192,192,8,8,8,11,1,4,24,24,255,255, + 24,126,231,66,10,10,20,11,0,0,12,0,12,0,12,0, + 12,0,255,192,255,192,12,0,12,0,12,0,12,0,4,5, + 5,11,2,253,48,48,96,64,128,8,2,2,11,1,4,255, + 255,2,2,2,11,4,0,192,192,9,16,32,11,0,253,1, + 128,1,128,3,0,3,0,6,0,6,0,12,0,12,0,24, + 0,24,0,48,0,48,0,96,0,96,0,192,0,192,0,8, + 12,12,11,1,0,60,126,102,195,195,195,195,195,195,102,126, + 60,8,12,12,11,1,0,24,248,248,24,24,24,24,24,24, + 24,255,255,8,12,12,11,1,0,60,126,199,195,3,7,14, + 28,56,112,255,255,8,12,12,11,1,0,60,126,102,6,14, + 60,62,7,3,199,254,124,8,12,12,11,1,0,14,30,62, + 54,102,102,198,255,255,6,31,31,8,12,12,11,1,0,127, + 127,96,96,126,127,103,3,3,199,254,124,8,12,12,11,1, + 0,15,63,112,96,220,254,231,195,195,231,126,60,8,12,12, + 11,1,0,255,255,195,6,6,6,12,12,12,24,24,24,8, + 12,12,11,1,0,60,126,231,195,102,60,126,231,195,231,126, + 60,8,12,12,11,1,0,60,126,195,195,195,199,127,59,3, + 6,254,248,2,8,8,11,4,0,192,192,0,0,0,0,192, + 192,4,11,11,11,2,253,48,48,0,0,0,0,48,48,96, + 64,128,9,9,18,11,1,1,1,128,7,128,30,0,120,0, + 224,0,120,0,30,0,7,128,1,128,10,6,12,11,0,2, + 255,192,255,192,0,0,0,0,255,192,255,192,9,9,18,11, + 1,1,192,0,240,0,60,0,15,0,3,128,15,0,60,0, + 240,0,192,0,7,11,11,11,2,0,124,254,198,6,14,60, + 48,48,0,48,48,9,13,26,11,1,255,60,0,102,0,195, + 0,207,0,219,0,219,0,219,0,219,0,207,128,192,0,192, + 0,99,0,62,0,12,11,22,11,255,0,62,0,63,0,15, + 0,25,128,25,128,25,128,63,192,63,192,48,192,249,240,249, + 240,10,11,22,11,0,0,254,0,255,0,49,128,49,128,63, + 0,63,128,48,192,48,192,48,192,255,128,255,0,10,11,22, + 11,0,0,30,192,127,192,113,192,224,192,192,0,192,0,192, + 0,224,0,112,192,127,192,31,0,10,11,22,11,0,0,254, + 0,255,128,99,128,97,192,96,192,96,192,96,192,97,192,99, + 128,255,128,254,0,10,11,22,11,0,0,255,192,255,192,48, + 192,54,192,62,0,62,0,54,0,48,192,48,192,255,192,255, + 192,10,11,22,11,0,0,255,192,255,192,48,192,54,192,62, + 0,62,0,54,0,48,0,48,0,254,0,254,0,11,11,22, + 11,0,0,30,192,127,192,113,192,224,192,192,0,192,0,199, + 224,231,224,112,192,127,192,31,128,10,11,22,11,0,0,243, + 192,243,192,97,128,97,128,127,128,127,128,97,128,97,128,97, + 128,243,192,243,192,8,11,11,11,1,0,255,255,24,24,24, + 24,24,24,24,255,255,10,11,22,11,0,0,31,192,31,192, + 3,0,3,0,3,0,3,0,195,0,195,0,195,0,254,0, + 60,0,11,11,22,11,0,0,247,192,247,192,99,0,102,0, + 108,0,124,0,126,0,103,0,99,128,249,224,249,224,10,11, + 22,11,0,0,252,0,252,0,48,0,48,0,48,0,48,0, + 48,192,48,192,48,192,255,192,255,192,10,11,22,11,0,0, + 225,192,225,192,115,128,115,128,127,128,109,128,109,128,109,128, + 97,128,243,192,243,192,10,11,22,11,0,0,231,192,247,192, + 113,128,121,128,105,128,109,128,101,128,103,128,99,128,251,128, + 249,128,10,11,22,11,0,0,30,0,127,128,115,128,225,192, + 192,192,192,192,192,192,225,192,115,128,127,128,30,0,10,11, + 22,11,0,0,255,0,255,128,97,192,96,192,97,192,127,128, + 127,0,96,0,96,0,252,0,252,0,10,13,26,11,0,254, + 30,0,127,128,115,128,225,192,192,192,192,192,192,192,225,192, + 115,128,127,128,30,64,63,192,51,128,11,11,22,11,0,0, + 255,0,255,128,97,192,96,192,97,192,127,128,127,0,99,128, + 97,192,252,224,252,224,9,11,22,11,1,0,61,128,255,128, + 195,128,193,128,248,0,127,0,15,128,193,128,225,128,255,0, + 222,0,10,11,22,11,0,0,255,192,255,192,204,192,204,192, + 204,192,12,0,12,0,12,0,12,0,127,128,127,128,10,11, + 22,11,0,0,247,192,247,192,97,128,97,128,97,128,97,128, + 97,128,97,128,115,128,63,0,30,0,12,11,22,11,255,0, + 249,240,249,240,96,96,96,96,48,192,48,192,25,128,25,128, + 15,0,15,0,6,0,12,11,22,11,255,0,249,240,249,240, + 96,96,102,96,102,96,111,96,111,96,57,192,57,192,48,192, + 48,192,10,11,22,11,0,0,243,192,243,192,97,128,51,0, + 30,0,12,0,30,0,51,0,97,128,243,192,243,192,10,11, + 22,11,0,0,243,192,243,192,97,128,51,0,63,0,30,0, + 12,0,12,0,12,0,63,0,63,0,8,11,11,11,1,0, + 255,255,199,206,12,24,48,115,227,255,255,4,15,15,11,4, + 253,240,240,192,192,192,192,192,192,192,192,192,192,192,240,240, + 9,16,32,11,1,253,192,0,192,0,96,0,96,0,48,0, + 48,0,24,0,24,0,12,0,12,0,6,0,6,0,3,0, + 3,0,1,128,1,128,4,15,15,11,2,253,240,240,48,48, + 48,48,48,48,48,48,48,48,48,240,240,8,7,7,11,1, + 5,24,60,60,102,102,195,195,11,2,4,11,0,252,255,224, + 255,224,4,3,3,11,3,9,192,96,48,10,9,18,11,0, + 0,63,0,127,128,97,128,1,128,127,128,255,128,193,128,255, + 192,125,192,10,12,24,11,0,0,224,0,224,0,96,0,111, + 0,127,128,113,192,96,192,96,192,96,192,113,192,255,128,239, + 0,10,9,18,11,0,0,61,128,127,128,227,128,193,128,192, + 0,192,0,225,192,127,192,63,0,10,12,24,11,0,0,3, + 128,3,128,1,128,61,128,127,128,227,128,193,128,193,128,193, + 128,227,128,127,192,61,192,10,9,18,11,0,0,30,0,127, + 128,225,192,192,192,255,192,255,192,224,0,127,192,31,192,9, + 12,24,11,1,0,31,128,63,128,48,0,255,0,255,0,48, + 0,48,0,48,0,48,0,48,0,255,0,255,0,10,13,26, + 11,0,252,61,192,127,192,227,128,193,128,193,128,193,128,227, + 128,127,128,61,128,1,128,3,128,63,0,62,0,10,12,24, + 11,0,0,224,0,224,0,96,0,111,0,127,128,113,128,97, + 128,97,128,97,128,97,128,243,192,243,192,8,12,12,11,1, + 0,24,24,0,248,248,24,24,24,24,24,255,255,7,16,16, + 11,1,252,12,12,0,254,254,6,6,6,6,6,6,6,6, + 14,252,248,10,12,24,11,0,0,224,0,224,0,96,0,103, + 128,103,128,110,0,124,0,124,0,110,0,103,0,227,192,227, + 192,8,12,12,11,1,0,248,248,24,24,24,24,24,24,24, + 24,255,255,12,9,18,11,255,0,237,192,255,224,119,96,102, + 96,102,96,102,96,102,96,247,112,247,112,10,9,18,11,0, + 0,239,0,255,128,113,128,97,128,97,128,97,128,97,128,243, + 192,243,192,10,9,18,11,0,0,30,0,127,128,225,192,192, + 192,192,192,192,192,225,192,127,128,30,0,10,13,26,11,0, + 252,239,0,255,128,113,192,96,192,96,192,96,192,113,192,127, + 128,111,0,96,0,96,0,248,0,248,0,10,13,26,11,0, + 252,61,192,127,192,227,128,193,128,193,128,193,128,227,128,127, + 128,61,128,1,128,1,128,7,192,7,192,10,9,18,11,0, + 0,243,128,255,192,60,192,56,0,48,0,48,0,48,0,255, + 0,255,0,8,9,9,11,1,0,127,255,195,240,126,31,195, + 255,254,10,12,24,11,0,0,48,0,48,0,48,0,255,0, + 255,0,48,0,48,0,48,0,48,0,48,192,63,192,31,0, + 10,9,18,11,0,0,231,128,231,128,97,128,97,128,97,128, + 97,128,99,128,127,192,61,192,10,9,18,11,0,0,243,192, + 243,192,97,128,97,128,51,0,51,0,30,0,30,0,12,0, + 11,9,18,11,0,0,241,224,241,224,100,192,110,192,110,192, + 123,192,59,128,49,128,49,128,11,9,18,11,0,0,251,224, + 251,224,49,128,27,0,14,0,27,0,49,128,251,224,251,224, + 10,13,26,11,0,252,243,192,243,192,97,128,97,128,51,0, + 51,0,30,0,30,0,12,0,24,0,56,0,252,0,252,0, + 8,9,9,11,1,0,255,255,198,12,24,48,99,255,255,4, + 15,15,11,3,253,48,96,96,96,96,96,192,96,96,96,96, + 96,96,96,48,2,14,14,11,4,253,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,4,15,15,11,3,253,192,96, + 96,96,96,96,48,96,96,96,96,96,96,96,192,8,3,3, + 11,1,4,115,255,222,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,0,0,11,0,1,3,12,12, + 11,4,252,192,192,0,192,192,224,224,224,224,224,224,224,8, + 13,13,11,1,0,24,24,24,63,127,227,192,192,227,127,62, + 24,24,10,11,22,11,0,0,62,0,127,0,99,0,96,0, + 48,0,252,0,252,0,48,0,96,192,255,192,255,128,8,9, + 9,11,1,1,195,255,126,195,195,195,126,255,195,10,11,22, + 11,0,0,243,192,243,192,97,128,51,0,30,0,63,0,12, + 0,63,0,12,0,63,0,63,0,2,16,16,11,4,253,192, + 192,192,192,192,192,192,0,0,192,192,192,192,192,192,192,8, + 14,14,11,1,254,63,115,99,96,248,222,199,227,123,31,6, + 198,206,252,6,2,2,11,2,9,204,204,11,12,24,11,0, + 0,14,0,63,128,113,192,110,192,219,96,216,96,216,96,219, + 96,110,192,113,192,63,128,14,0,6,8,8,11,2,3,112, + 24,120,216,216,108,0,252,9,7,14,11,0,1,25,128,51, + 0,102,0,204,0,102,0,51,0,25,128,9,4,8,11,1, + 4,255,128,255,128,1,128,1,128,8,2,2,11,1,4,255, + 255,11,12,24,11,0,0,14,0,63,128,113,192,126,192,219, + 96,219,96,222,96,223,96,123,224,112,192,63,128,14,0,5, + 2,2,11,2,9,248,248,5,5,5,11,2,6,112,136,136, + 136,112,10,10,20,11,0,0,12,0,12,0,12,0,255,192, + 255,192,12,0,12,0,0,0,255,192,255,192,6,7,7,11, + 2,5,120,204,12,24,48,100,252,6,7,7,11,2,5,120, + 204,12,56,12,204,120,4,3,3,11,4,9,48,96,192,10, + 13,26,11,0,252,231,128,231,128,97,128,97,128,97,128,97, + 128,99,128,127,192,125,192,96,0,96,0,96,0,96,0,8, + 14,14,11,1,254,63,106,202,202,202,106,58,10,10,10,10, + 10,10,59,2,3,3,11,4,3,192,192,192,4,5,5,11, + 3,252,64,96,48,240,224,6,7,7,11,2,5,48,240,48, + 48,48,48,252,6,8,8,11,2,3,120,204,132,132,204,120, + 0,252,9,7,14,11,1,1,204,0,102,0,51,0,25,128, + 51,0,102,0,204,0,11,12,24,11,0,0,48,0,240,32, + 48,96,48,192,49,128,51,64,254,192,13,192,26,192,52,192, + 103,224,64,192,11,12,24,11,0,0,48,0,240,32,48,96, + 48,192,49,128,51,192,255,96,12,96,24,192,49,128,99,32, + 71,224,11,12,24,11,0,0,120,0,204,32,12,96,56,192, + 13,128,207,64,126,192,13,192,26,192,52,192,103,224,64,192, + 7,12,12,11,2,252,24,24,0,24,24,24,120,224,192,198, + 254,124,12,15,30,11,255,0,24,0,12,0,6,0,0,0, + 62,0,63,0,15,0,15,0,25,128,25,128,63,192,63,192, + 48,192,249,240,249,240,12,15,30,11,255,0,3,0,6,0, + 12,0,0,0,62,0,63,0,15,0,15,0,25,128,25,128, + 63,192,63,192,48,192,249,240,249,240,12,15,30,11,255,0, + 6,0,15,0,25,128,0,0,62,0,63,0,15,0,15,0, + 25,128,25,128,63,192,63,192,48,192,249,240,249,240,12,14, + 28,11,255,0,29,128,55,0,0,0,62,0,63,0,15,0, + 15,0,25,128,25,128,63,192,63,192,48,192,249,240,249,240, + 12,14,28,11,255,0,25,128,25,128,0,0,62,0,63,0, + 15,0,15,0,25,128,25,128,63,192,63,192,48,192,249,240, + 249,240,12,15,30,11,255,0,6,0,9,0,9,0,6,0, + 62,0,63,0,15,0,15,0,25,128,25,128,63,192,63,192, + 48,192,249,240,249,240,11,11,22,11,0,0,63,224,63,224, + 30,96,54,0,55,192,39,192,126,0,126,0,102,96,239,224, + 239,224,10,16,32,11,0,251,30,192,127,192,97,192,192,192, + 192,0,192,0,192,0,192,0,96,192,127,192,63,0,8,0, + 12,0,2,0,30,0,28,0,10,15,30,11,0,0,24,0, + 12,0,6,0,0,0,255,192,255,192,48,192,54,192,62,0, + 62,0,54,0,48,192,48,192,255,192,255,192,10,15,30,11, + 0,0,3,0,6,0,12,0,0,0,255,192,255,192,48,192, + 54,192,62,0,62,0,54,0,48,192,48,192,255,192,255,192, + 10,15,30,11,0,0,12,0,30,0,51,0,0,0,255,192, + 255,192,48,192,54,192,62,0,62,0,54,0,48,192,48,192, + 255,192,255,192,10,14,28,11,0,0,51,0,51,0,0,0, + 255,192,255,192,48,192,54,192,62,0,62,0,54,0,48,192, + 48,192,255,192,255,192,8,15,15,11,1,0,96,48,24,0, + 255,255,24,24,24,24,24,24,24,255,255,8,15,15,11,1, + 0,6,12,24,0,255,255,24,24,24,24,24,24,24,255,255, + 8,15,15,11,1,0,24,60,102,0,255,255,24,24,24,24, + 24,24,24,255,255,8,14,14,11,1,0,102,102,0,255,255, + 24,24,24,24,24,24,24,255,255,10,11,22,11,0,0,254, + 0,255,128,97,128,96,192,248,192,248,192,96,192,96,192,97, + 128,255,128,254,0,10,14,28,11,0,0,59,0,110,0,0, + 0,231,192,247,192,113,128,121,128,105,128,109,128,101,128,103, + 128,99,128,251,128,249,128,10,15,30,11,0,0,24,0,12, + 0,6,0,0,0,30,0,127,128,97,128,192,192,192,192,192, + 192,192,192,192,192,97,128,127,128,30,0,10,15,30,11,0, + 0,3,0,6,0,12,0,0,0,30,0,127,128,97,128,192, + 192,192,192,192,192,192,192,192,192,97,128,127,128,30,0,10, + 15,30,11,0,0,12,0,30,0,51,0,0,0,30,0,127, + 128,97,128,192,192,192,192,192,192,192,192,192,192,97,128,127, + 128,30,0,10,14,28,11,0,0,59,0,110,0,0,0,30, + 0,127,128,97,128,192,192,192,192,192,192,192,192,192,192,97, + 128,127,128,30,0,10,14,28,11,0,0,51,0,51,0,0, + 0,30,0,127,128,97,128,192,192,192,192,192,192,192,192,192, + 192,97,128,127,128,30,0,10,10,20,11,0,0,64,128,225, + 192,115,128,55,0,30,0,30,0,59,0,115,128,225,192,64, + 128,12,13,26,11,255,255,0,48,15,96,63,192,49,192,99, + 96,102,96,102,96,108,96,120,96,48,192,63,192,111,0,192, + 0,10,15,30,11,0,0,48,0,24,0,12,0,0,0,251, + 192,251,192,97,128,97,128,97,128,97,128,97,128,97,128,115, + 128,63,0,30,0,10,15,30,11,0,0,3,0,6,0,12, + 0,0,0,251,192,251,192,97,128,97,128,97,128,97,128,97, + 128,97,128,115,128,63,0,30,0,10,15,30,11,0,0,12, + 0,30,0,51,0,0,0,251,192,251,192,97,128,97,128,97, + 128,97,128,97,128,97,128,115,128,63,0,30,0,10,14,28, + 11,0,0,51,0,51,0,0,0,251,192,251,192,97,128,97, + 128,97,128,97,128,97,128,97,128,115,128,63,0,30,0,10, + 15,30,11,0,0,3,0,6,0,12,0,0,0,243,192,243, + 192,97,128,51,0,63,0,30,0,12,0,12,0,12,0,63, + 0,63,0,10,11,22,11,0,0,240,0,224,0,127,0,127, + 128,97,192,96,192,97,192,127,128,127,0,224,0,240,0,9, + 12,24,11,1,0,60,0,126,0,99,0,99,0,103,0,110, + 0,103,0,97,128,97,128,105,128,239,128,231,0,10,13,26, + 11,0,0,24,0,12,0,6,0,0,0,63,0,127,128,97, + 128,1,128,127,128,255,128,193,128,255,192,125,192,10,13,26, + 11,0,0,3,0,6,0,12,0,0,0,63,0,127,128,97, + 128,1,128,127,128,255,128,193,128,255,192,125,192,10,13,26, + 11,0,0,12,0,30,0,51,0,0,0,63,0,127,128,97, + 128,1,128,127,128,255,128,193,128,255,192,125,192,10,12,24, + 11,0,0,59,0,110,0,0,0,63,0,127,128,97,128,1, + 128,127,128,255,128,193,128,255,192,125,192,10,12,24,11,0, + 0,51,0,51,0,0,0,63,0,127,128,97,128,1,128,127, + 128,255,128,193,128,255,192,125,192,10,14,28,11,0,0,12, + 0,18,0,18,0,12,0,0,0,63,0,127,128,97,128,1, + 128,127,128,255,128,193,128,255,192,125,192,10,9,18,11,0, + 0,123,128,255,192,204,192,12,192,127,192,255,192,204,0,255, + 192,123,128,10,14,28,11,0,251,61,128,127,128,227,128,193, + 128,192,0,192,0,225,192,127,192,63,0,8,0,12,0,6, + 0,30,0,28,0,10,13,26,11,0,0,24,0,12,0,6, + 0,0,0,30,0,127,128,225,192,192,192,255,192,255,192,224, + 0,127,192,31,192,10,13,26,11,0,0,3,0,6,0,12, + 0,0,0,30,0,127,128,225,192,192,192,255,192,255,192,224, + 0,127,192,31,192,10,13,26,11,0,0,12,0,30,0,51, + 0,0,0,30,0,127,128,225,192,192,192,255,192,255,192,224, + 0,127,192,31,192,10,12,24,11,0,0,51,0,51,0,0, + 0,30,0,127,128,225,192,192,192,255,192,255,192,224,0,127, + 192,31,192,8,13,13,11,1,0,48,24,12,0,248,248,24, + 24,24,24,24,255,255,8,13,13,11,1,0,12,24,48,0, + 248,248,24,24,24,24,24,255,255,8,13,13,11,1,0,24, + 60,102,0,248,248,24,24,24,24,24,255,255,8,12,12,11, + 1,0,204,204,0,248,248,24,24,24,24,24,255,255,10,13, + 26,11,0,0,225,128,251,128,62,0,119,0,195,128,63,128, + 97,192,192,192,192,192,192,192,225,192,127,128,30,0,10,12, + 24,11,0,0,59,0,110,0,0,0,239,0,255,128,113,128, + 97,128,97,128,97,128,97,128,243,192,243,192,10,13,26,11, + 0,0,24,0,12,0,6,0,0,0,30,0,127,128,225,192, + 192,192,192,192,192,192,225,192,127,128,30,0,10,13,26,11, + 0,0,3,0,6,0,12,0,0,0,30,0,127,128,225,192, + 192,192,192,192,192,192,225,192,127,128,30,0,10,13,26,11, + 0,0,12,0,30,0,51,0,0,0,30,0,127,128,225,192, + 192,192,192,192,192,192,225,192,127,128,30,0,10,12,24,11, + 0,0,59,0,110,0,0,0,30,0,127,128,225,192,192,192, + 192,192,192,192,225,192,127,128,30,0,10,12,24,11,0,0, + 51,0,51,0,0,0,30,0,127,128,225,192,192,192,192,192, + 192,192,225,192,127,128,30,0,10,10,20,11,0,0,12,0, + 12,0,0,0,0,0,255,192,255,192,0,0,0,0,12,0, + 12,0,12,11,22,11,255,255,0,48,15,96,63,192,113,224, + 99,96,102,96,108,96,120,224,63,192,111,0,192,0,10,13, + 26,11,0,0,24,0,12,0,6,0,0,0,231,128,231,128, + 97,128,97,128,97,128,97,128,99,128,127,192,61,192,10,13, + 26,11,0,0,6,0,12,0,24,0,0,0,231,128,231,128, + 97,128,97,128,97,128,97,128,99,128,127,192,61,192,10,13, + 26,11,0,0,12,0,30,0,51,0,0,0,231,128,231,128, + 97,128,97,128,97,128,97,128,99,128,127,192,61,192,10,12, + 24,11,0,0,51,0,51,0,0,0,231,128,231,128,97,128, + 97,128,97,128,97,128,99,128,127,192,61,192,10,17,34,11, + 0,252,3,0,6,0,12,0,0,0,243,192,243,192,97,128, + 97,128,51,0,51,0,30,0,30,0,12,0,24,0,56,0, + 252,0,252,0,10,16,32,11,0,252,224,0,224,0,96,0, + 111,0,127,128,113,192,96,192,96,192,96,192,113,192,127,128, + 111,0,96,0,96,0,248,0,248,0,10,16,32,11,0,252, + 51,0,51,0,0,0,243,192,243,192,97,128,97,128,51,0, + 51,0,30,0,30,0,12,0,24,0,56,0,252,0,252,0 + }; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--20-140-100-100-M-110-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 12 + Calculated Max Values w=12 h=16 x= 4 y= 9 dx=11 dy= 0 ascent=13 len=32 + Font Bounding box w=17 h=26 x=-4 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB14r[2167] U8G_SECTION(".progmem.u8g_font_courB14r") = { + 0,17,26,252,249,11,2,101,5,155,32,127,252,13,252,12, + 252,0,0,0,11,0,1,3,12,12,11,4,0,224,224,224, + 224,224,224,192,192,192,0,192,192,6,6,6,11,2,6,204, + 204,204,204,136,136,8,14,14,11,1,255,54,54,54,54,255, + 255,108,108,255,255,108,108,108,108,8,15,15,11,1,254,24, + 24,63,127,195,192,240,126,15,3,199,254,252,24,24,8,12, + 12,11,1,0,112,216,136,216,115,14,120,206,27,17,27,14, + 8,10,10,11,1,0,60,126,102,96,48,123,255,206,255,123, + 2,6,6,11,4,6,192,192,192,192,128,128,4,15,15,11, + 4,253,48,48,96,96,192,192,192,192,192,192,192,96,96,48, + 48,4,15,15,11,2,253,192,192,96,96,48,48,48,48,48, + 48,48,96,96,192,192,8,8,8,11,1,4,24,24,255,255, + 24,126,231,66,10,10,20,11,0,0,12,0,12,0,12,0, + 12,0,255,192,255,192,12,0,12,0,12,0,12,0,4,5, + 5,11,2,253,48,48,96,64,128,8,2,2,11,1,4,255, + 255,2,2,2,11,4,0,192,192,9,16,32,11,0,253,1, + 128,1,128,3,0,3,0,6,0,6,0,12,0,12,0,24, + 0,24,0,48,0,48,0,96,0,96,0,192,0,192,0,8, + 12,12,11,1,0,60,126,102,195,195,195,195,195,195,102,126, + 60,8,12,12,11,1,0,24,248,248,24,24,24,24,24,24, + 24,255,255,8,12,12,11,1,0,60,126,199,195,3,7,14, + 28,56,112,255,255,8,12,12,11,1,0,60,126,102,6,14, + 60,62,7,3,199,254,124,8,12,12,11,1,0,14,30,62, + 54,102,102,198,255,255,6,31,31,8,12,12,11,1,0,127, + 127,96,96,126,127,103,3,3,199,254,124,8,12,12,11,1, + 0,15,63,112,96,220,254,231,195,195,231,126,60,8,12,12, + 11,1,0,255,255,195,6,6,6,12,12,12,24,24,24,8, + 12,12,11,1,0,60,126,231,195,102,60,126,231,195,231,126, + 60,8,12,12,11,1,0,60,126,195,195,195,199,127,59,3, + 6,254,248,2,8,8,11,4,0,192,192,0,0,0,0,192, + 192,4,11,11,11,2,253,48,48,0,0,0,0,48,48,96, + 64,128,9,9,18,11,1,1,1,128,7,128,30,0,120,0, + 224,0,120,0,30,0,7,128,1,128,10,6,12,11,0,2, + 255,192,255,192,0,0,0,0,255,192,255,192,9,9,18,11, + 1,1,192,0,240,0,60,0,15,0,3,128,15,0,60,0, + 240,0,192,0,7,11,11,11,2,0,124,254,198,6,14,60, + 48,48,0,48,48,9,13,26,11,1,255,60,0,102,0,195, + 0,207,0,219,0,219,0,219,0,219,0,207,128,192,0,192, + 0,99,0,62,0,12,11,22,11,255,0,62,0,63,0,15, + 0,25,128,25,128,25,128,63,192,63,192,48,192,249,240,249, + 240,10,11,22,11,0,0,254,0,255,0,49,128,49,128,63, + 0,63,128,48,192,48,192,48,192,255,128,255,0,10,11,22, + 11,0,0,30,192,127,192,113,192,224,192,192,0,192,0,192, + 0,224,0,112,192,127,192,31,0,10,11,22,11,0,0,254, + 0,255,128,99,128,97,192,96,192,96,192,96,192,97,192,99, + 128,255,128,254,0,10,11,22,11,0,0,255,192,255,192,48, + 192,54,192,62,0,62,0,54,0,48,192,48,192,255,192,255, + 192,10,11,22,11,0,0,255,192,255,192,48,192,54,192,62, + 0,62,0,54,0,48,0,48,0,254,0,254,0,11,11,22, + 11,0,0,30,192,127,192,113,192,224,192,192,0,192,0,199, + 224,231,224,112,192,127,192,31,128,10,11,22,11,0,0,243, + 192,243,192,97,128,97,128,127,128,127,128,97,128,97,128,97, + 128,243,192,243,192,8,11,11,11,1,0,255,255,24,24,24, + 24,24,24,24,255,255,10,11,22,11,0,0,31,192,31,192, + 3,0,3,0,3,0,3,0,195,0,195,0,195,0,254,0, + 60,0,11,11,22,11,0,0,247,192,247,192,99,0,102,0, + 108,0,124,0,126,0,103,0,99,128,249,224,249,224,10,11, + 22,11,0,0,252,0,252,0,48,0,48,0,48,0,48,0, + 48,192,48,192,48,192,255,192,255,192,10,11,22,11,0,0, + 225,192,225,192,115,128,115,128,127,128,109,128,109,128,109,128, + 97,128,243,192,243,192,10,11,22,11,0,0,231,192,247,192, + 113,128,121,128,105,128,109,128,101,128,103,128,99,128,251,128, + 249,128,10,11,22,11,0,0,30,0,127,128,115,128,225,192, + 192,192,192,192,192,192,225,192,115,128,127,128,30,0,10,11, + 22,11,0,0,255,0,255,128,97,192,96,192,97,192,127,128, + 127,0,96,0,96,0,252,0,252,0,10,13,26,11,0,254, + 30,0,127,128,115,128,225,192,192,192,192,192,192,192,225,192, + 115,128,127,128,30,64,63,192,51,128,11,11,22,11,0,0, + 255,0,255,128,97,192,96,192,97,192,127,128,127,0,99,128, + 97,192,252,224,252,224,9,11,22,11,1,0,61,128,255,128, + 195,128,193,128,248,0,127,0,15,128,193,128,225,128,255,0, + 222,0,10,11,22,11,0,0,255,192,255,192,204,192,204,192, + 204,192,12,0,12,0,12,0,12,0,127,128,127,128,10,11, + 22,11,0,0,247,192,247,192,97,128,97,128,97,128,97,128, + 97,128,97,128,115,128,63,0,30,0,12,11,22,11,255,0, + 249,240,249,240,96,96,96,96,48,192,48,192,25,128,25,128, + 15,0,15,0,6,0,12,11,22,11,255,0,249,240,249,240, + 96,96,102,96,102,96,111,96,111,96,57,192,57,192,48,192, + 48,192,10,11,22,11,0,0,243,192,243,192,97,128,51,0, + 30,0,12,0,30,0,51,0,97,128,243,192,243,192,10,11, + 22,11,0,0,243,192,243,192,97,128,51,0,63,0,30,0, + 12,0,12,0,12,0,63,0,63,0,8,11,11,11,1,0, + 255,255,199,206,12,24,48,115,227,255,255,4,15,15,11,4, + 253,240,240,192,192,192,192,192,192,192,192,192,192,192,240,240, + 9,16,32,11,1,253,192,0,192,0,96,0,96,0,48,0, + 48,0,24,0,24,0,12,0,12,0,6,0,6,0,3,0, + 3,0,1,128,1,128,4,15,15,11,2,253,240,240,48,48, + 48,48,48,48,48,48,48,48,48,240,240,8,7,7,11,1, + 5,24,60,60,102,102,195,195,11,2,4,11,0,252,255,224, + 255,224,4,3,3,11,3,9,192,96,48,10,9,18,11,0, + 0,63,0,127,128,97,128,1,128,127,128,255,128,193,128,255, + 192,125,192,10,12,24,11,0,0,224,0,224,0,96,0,111, + 0,127,128,113,192,96,192,96,192,96,192,113,192,255,128,239, + 0,10,9,18,11,0,0,61,128,127,128,227,128,193,128,192, + 0,192,0,225,192,127,192,63,0,10,12,24,11,0,0,3, + 128,3,128,1,128,61,128,127,128,227,128,193,128,193,128,193, + 128,227,128,127,192,61,192,10,9,18,11,0,0,30,0,127, + 128,225,192,192,192,255,192,255,192,224,0,127,192,31,192,9, + 12,24,11,1,0,31,128,63,128,48,0,255,0,255,0,48, + 0,48,0,48,0,48,0,48,0,255,0,255,0,10,13,26, + 11,0,252,61,192,127,192,227,128,193,128,193,128,193,128,227, + 128,127,128,61,128,1,128,3,128,63,0,62,0,10,12,24, + 11,0,0,224,0,224,0,96,0,111,0,127,128,113,128,97, + 128,97,128,97,128,97,128,243,192,243,192,8,12,12,11,1, + 0,24,24,0,248,248,24,24,24,24,24,255,255,7,16,16, + 11,1,252,12,12,0,254,254,6,6,6,6,6,6,6,6, + 14,252,248,10,12,24,11,0,0,224,0,224,0,96,0,103, + 128,103,128,110,0,124,0,124,0,110,0,103,0,227,192,227, + 192,8,12,12,11,1,0,248,248,24,24,24,24,24,24,24, + 24,255,255,12,9,18,11,255,0,237,192,255,224,119,96,102, + 96,102,96,102,96,102,96,247,112,247,112,10,9,18,11,0, + 0,239,0,255,128,113,128,97,128,97,128,97,128,97,128,243, + 192,243,192,10,9,18,11,0,0,30,0,127,128,225,192,192, + 192,192,192,192,192,225,192,127,128,30,0,10,13,26,11,0, + 252,239,0,255,128,113,192,96,192,96,192,96,192,113,192,127, + 128,111,0,96,0,96,0,248,0,248,0,10,13,26,11,0, + 252,61,192,127,192,227,128,193,128,193,128,193,128,227,128,127, + 128,61,128,1,128,1,128,7,192,7,192,10,9,18,11,0, + 0,243,128,255,192,60,192,56,0,48,0,48,0,48,0,255, + 0,255,0,8,9,9,11,1,0,127,255,195,240,126,31,195, + 255,254,10,12,24,11,0,0,48,0,48,0,48,0,255,0, + 255,0,48,0,48,0,48,0,48,0,48,192,63,192,31,0, + 10,9,18,11,0,0,231,128,231,128,97,128,97,128,97,128, + 97,128,99,128,127,192,61,192,10,9,18,11,0,0,243,192, + 243,192,97,128,97,128,51,0,51,0,30,0,30,0,12,0, + 11,9,18,11,0,0,241,224,241,224,100,192,110,192,110,192, + 123,192,59,128,49,128,49,128,11,9,18,11,0,0,251,224, + 251,224,49,128,27,0,14,0,27,0,49,128,251,224,251,224, + 10,13,26,11,0,252,243,192,243,192,97,128,97,128,51,0, + 51,0,30,0,30,0,12,0,24,0,56,0,252,0,252,0, + 8,9,9,11,1,0,255,255,198,12,24,48,99,255,255,4, + 15,15,11,3,253,48,96,96,96,96,96,192,96,96,96,96, + 96,96,96,48,2,14,14,11,4,253,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,4,15,15,11,3,253,192,96, + 96,96,96,96,48,96,96,96,96,96,96,96,192,8,3,3, + 11,1,4,115,255,222,255}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--25-180-100-100-M-150-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 15, '1' Height: 16 + Calculated Max Values w=16 h=21 x= 6 y=13 dx=15 dy= 0 ascent=21 len=42 + Font Bounding box w=22 h=35 x=-4 y=-9 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =15 descent=-5 + X Font ascent =16 descent=-5 + Max Font ascent =21 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB18[6429] U8G_SECTION(".progmem.u8g_font_courB18") = { + 0,22,35,252,247,15,3,223,8,17,32,255,251,21,251,16, + 251,0,0,0,15,0,1,4,16,16,15,5,0,96,240,240, + 240,240,240,240,96,96,96,96,96,0,96,96,96,7,7,7, + 15,3,9,238,238,238,238,68,68,68,12,19,38,15,1,254, + 12,192,12,192,12,192,12,192,12,192,12,192,127,240,127,240, + 25,128,25,128,25,128,255,224,255,224,51,0,51,0,51,0, + 51,0,51,0,51,0,10,20,40,15,2,253,12,0,12,0, + 61,128,127,128,195,128,193,128,192,0,224,0,126,0,31,128, + 1,192,0,192,192,192,225,192,255,128,223,0,12,0,12,0, + 12,0,12,0,11,15,30,15,2,0,60,0,102,0,195,0, + 195,0,102,0,60,0,1,192,15,0,56,0,231,128,12,192, + 24,96,24,96,12,192,7,128,11,14,28,15,2,0,30,0, + 63,0,99,0,96,0,96,0,48,0,56,0,124,192,111,192, + 199,128,195,0,199,128,255,224,124,224,3,7,7,15,5,8, + 224,224,224,224,224,64,64,5,20,20,15,6,252,24,56,48, + 96,96,96,192,192,192,192,192,192,192,192,96,96,96,48,56, + 24,5,20,20,15,3,252,192,224,96,48,48,48,24,24,24, + 24,24,24,24,24,48,48,48,96,224,192,10,11,22,15,2, + 5,12,0,12,0,12,0,204,192,255,192,63,0,12,0,63, + 0,51,0,115,128,97,128,12,12,24,15,1,1,6,0,6, + 0,6,0,6,0,6,0,255,240,255,240,6,0,6,0,6, + 0,6,0,6,0,5,6,6,15,4,253,56,56,112,96,192, + 128,11,2,4,15,2,6,255,224,255,224,3,3,3,15,5, + 0,224,224,224,11,20,40,15,2,253,0,96,0,96,0,192, + 0,192,1,128,1,128,3,0,3,0,6,0,6,0,12,0, + 12,0,24,0,24,0,48,0,48,0,96,0,96,0,192,0, + 192,0,10,16,32,15,2,0,30,0,127,128,97,128,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,97,128,127,128,30,0,10,16,32,15,2,0,28,0, + 252,0,252,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,255,192,255,192,11,16, + 32,15,1,0,31,128,63,192,112,224,96,96,96,96,0,96, + 0,224,1,192,3,128,7,0,14,0,28,0,56,0,112,0, + 255,224,255,224,11,16,32,15,1,0,31,128,63,192,112,224, + 96,96,0,96,0,224,1,192,15,128,15,192,0,224,0,96, + 0,96,192,96,224,224,127,192,63,128,11,16,32,15,1,0, + 3,128,7,128,15,128,13,128,25,128,25,128,49,128,49,128, + 97,128,97,128,255,224,255,224,1,128,1,128,15,224,15,224, + 11,16,32,15,2,0,127,192,127,192,96,0,96,0,96,0, + 111,0,127,192,113,192,0,224,0,96,0,96,0,96,192,224, + 225,192,127,192,63,0,10,16,32,15,2,0,7,192,31,192, + 60,0,112,0,96,0,224,0,223,0,255,128,225,192,192,192, + 192,192,192,192,224,192,113,192,127,128,31,0,10,16,32,15, + 2,0,255,192,255,192,192,192,0,192,1,128,1,128,1,128, + 3,0,3,0,3,0,6,0,6,0,6,0,12,0,12,0, + 12,0,10,16,32,15,2,0,30,0,127,128,225,192,192,192, + 192,192,192,192,97,128,63,0,127,128,225,192,192,192,192,192, + 192,192,225,192,127,128,63,0,10,16,32,15,3,0,30,0, + 127,128,97,128,192,192,192,192,192,192,192,192,193,192,227,192, + 126,192,60,192,0,192,1,128,3,128,255,0,252,0,3,11, + 11,15,5,0,224,224,224,0,0,0,0,0,224,224,224,5, + 14,14,15,3,253,56,56,56,0,0,0,0,0,56,56,112, + 96,192,128,13,12,24,15,1,1,0,56,0,240,3,192,15, + 0,60,0,240,0,240,0,60,0,15,0,3,192,0,240,0, + 56,12,6,12,15,1,4,255,240,255,240,0,0,0,0,255, + 240,255,240,13,12,24,15,1,1,224,0,120,0,30,0,7, + 128,1,224,0,120,0,120,1,224,7,128,30,0,120,0,224, + 0,9,15,30,15,3,0,126,0,255,0,195,128,193,128,193, + 128,1,128,3,128,15,0,28,0,24,0,24,0,0,0,24, + 0,24,0,24,0,10,18,36,15,2,254,28,0,127,0,99, + 0,193,128,193,128,199,128,207,128,221,128,217,128,217,128,221, + 128,207,192,199,192,192,0,192,0,97,128,127,128,30,0,14, + 15,30,15,0,0,63,0,63,0,7,128,7,128,12,192,12, + 192,28,224,24,96,24,96,63,240,63,240,112,56,96,24,252, + 252,252,252,13,15,30,15,1,0,255,192,255,224,48,112,48, + 48,48,48,48,112,63,224,63,240,48,56,48,24,48,24,48, + 24,48,56,255,240,255,224,12,15,30,15,1,0,15,176,63, + 240,112,112,96,48,224,48,192,0,192,0,192,0,192,0,192, + 0,224,0,96,0,112,48,63,240,15,192,14,15,30,15,0, + 0,255,192,255,240,48,56,48,24,48,28,48,12,48,12,48, + 12,48,12,48,12,48,12,48,24,48,56,255,240,255,224,13, + 15,30,15,1,0,255,240,255,240,48,48,48,48,49,176,49, + 128,63,128,63,128,49,128,49,128,48,24,48,24,48,24,255, + 248,255,248,13,15,30,15,1,0,255,248,255,248,48,24,48, + 24,49,152,49,128,63,128,63,128,49,128,49,128,48,0,48, + 0,48,0,255,0,255,0,13,15,30,15,1,0,15,216,63, + 248,112,56,96,24,224,24,192,0,192,0,192,0,193,248,193, + 248,224,24,96,24,112,56,63,240,15,192,14,15,30,15,0, + 0,252,252,252,252,48,48,48,48,48,48,48,48,63,240,63, + 240,48,48,48,48,48,48,48,48,48,48,252,252,252,252,10, + 15,30,15,2,0,255,192,255,192,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,255, + 192,255,192,13,15,30,15,1,0,31,248,31,248,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,192,192,192,192,192, + 192,225,192,127,128,63,0,14,15,30,15,0,0,252,248,252, + 248,48,224,49,192,51,128,55,0,62,0,63,0,59,128,49, + 192,48,224,48,96,48,112,252,60,252,60,12,15,30,15,1, + 0,255,0,255,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,48,24,48,24,48,255,240,255,240,14, + 15,30,15,0,0,240,60,240,60,120,120,120,120,108,216,108, + 216,108,216,103,152,99,24,99,24,96,24,96,24,96,24,248, + 124,248,124,13,15,30,15,1,0,240,248,240,248,120,48,120, + 48,108,48,108,48,102,48,102,48,99,48,99,48,97,176,97, + 176,96,240,248,240,248,112,13,15,30,15,1,0,15,128,63, + 224,112,112,96,48,224,56,192,24,192,24,192,24,192,24,192, + 24,224,56,96,48,112,112,63,224,15,128,13,15,30,15,1, + 0,255,192,255,240,48,56,48,24,48,24,48,24,48,24,48, + 56,63,240,63,192,48,0,48,0,48,0,255,0,255,0,13, + 18,36,15,1,253,15,128,63,224,112,112,96,48,224,56,192, + 24,192,24,192,24,192,24,192,24,224,56,96,48,112,112,63, + 224,15,128,14,24,63,248,57,224,14,15,30,15,0,0,255, + 128,255,224,48,112,48,48,48,48,48,48,48,112,63,224,63, + 128,49,192,48,224,48,96,48,112,252,60,252,60,12,15,30, + 15,1,0,31,176,63,240,112,112,96,48,96,48,112,0,62, + 0,31,192,3,224,0,112,192,48,192,48,224,112,255,224,223, + 192,12,15,30,15,1,0,255,240,255,240,198,48,198,48,198, + 48,198,48,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,63,192,63,192,13,15,30,15,1,0,248,248,248,248,96, + 48,96,48,96,48,96,48,96,48,96,48,96,48,96,48,96, + 48,96,48,48,96,63,224,31,192,14,15,30,15,0,0,248, + 124,248,124,96,24,96,24,48,48,48,48,48,48,24,96,24, + 96,24,96,12,192,12,192,7,128,7,128,7,128,14,15,30, + 15,0,0,248,124,248,124,96,24,99,24,99,24,103,152,103, + 152,111,216,108,216,108,216,60,240,56,112,56,112,56,112,56, + 112,14,15,30,15,0,0,252,252,252,252,112,56,56,112,28, + 224,15,192,7,128,3,0,7,128,12,192,28,224,56,112,112, + 56,252,252,252,252,14,15,30,15,0,0,252,252,252,252,112, + 56,56,112,24,96,12,192,15,192,7,128,3,0,3,0,3, + 0,3,0,3,0,31,224,31,224,11,15,30,15,2,0,255, + 224,255,224,192,224,193,192,195,128,3,0,7,0,14,0,28, + 0,24,0,56,96,112,96,224,96,255,224,255,224,5,20,20, + 15,6,252,248,248,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,248,248,11,20,40,15,2,253,192,0,192, + 0,96,0,96,0,48,0,48,0,24,0,24,0,12,0,12, + 0,6,0,6,0,3,0,3,0,1,128,1,128,0,192,0, + 192,0,96,0,96,5,20,20,15,3,252,248,248,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,248,248,8, + 8,8,15,3,8,24,24,60,60,102,102,195,195,15,2,4, + 15,0,252,255,254,255,254,5,4,4,15,4,11,192,96,48, + 24,12,11,22,15,1,0,63,0,127,128,97,192,0,192,31, + 192,127,192,224,192,192,192,193,192,255,240,126,240,13,16,32, + 15,1,0,240,0,240,0,48,0,48,0,48,0,55,192,63, + 240,60,112,56,56,48,24,48,24,48,24,56,56,60,112,255, + 240,247,192,12,11,22,15,1,0,31,176,127,240,112,240,224, + 112,192,48,192,0,192,0,224,0,112,112,127,240,31,192,13, + 16,32,15,1,0,1,224,1,224,0,96,0,96,0,96,31, + 96,127,224,113,224,224,224,192,96,192,96,192,96,224,224,113, + 224,127,248,31,120,12,11,22,15,1,0,31,128,127,224,112, + 224,224,112,192,48,255,240,255,240,224,0,112,112,127,240,31, + 192,11,16,32,15,2,0,7,224,15,224,28,0,24,0,24, + 0,255,192,255,192,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,255,192,255,192,13,16,32,15,1,251,31,120,127, + 248,113,224,224,224,192,96,192,96,192,96,224,224,113,224,127, + 224,31,96,0,96,0,96,0,224,63,192,63,128,14,16,32, + 15,0,0,240,0,240,0,48,0,48,0,48,0,55,192,63, + 224,60,112,56,48,48,48,48,48,48,48,48,48,48,48,252, + 252,252,252,10,16,32,15,2,0,28,0,28,0,28,0,0, + 0,0,0,124,0,124,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,255,192,255,192,8,21,21,15,2,251,14, + 14,14,0,0,255,255,3,3,3,3,3,3,3,3,3,3, + 3,7,254,252,13,16,32,15,1,0,240,0,240,0,48,0, + 48,0,48,0,49,224,49,224,51,128,55,0,62,0,62,0, + 55,0,51,128,49,192,241,248,241,248,10,16,32,15,2,0, + 124,0,124,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,255,192,255,192, + 16,11,22,15,0,0,239,120,255,252,57,204,49,140,49,140, + 49,140,49,140,49,140,49,140,249,239,249,239,14,11,22,15, + 0,0,243,192,247,224,60,112,56,48,48,48,48,48,48,48, + 48,48,48,48,252,252,252,252,12,11,22,15,1,0,31,128, + 127,224,112,224,224,112,192,48,192,48,192,48,224,112,112,224, + 127,224,31,128,13,16,32,15,0,251,247,192,255,240,60,112, + 56,56,48,24,48,24,48,24,56,56,60,112,63,240,55,192, + 48,0,48,0,48,0,254,0,254,0,13,16,32,15,1,251, + 31,120,127,248,113,224,224,224,192,96,192,96,192,96,224,224, + 113,224,127,224,31,96,0,96,0,96,0,96,3,248,3,248, + 12,11,22,15,1,0,121,224,127,240,30,48,28,0,24,0, + 24,0,24,0,24,0,24,0,255,192,255,192,11,11,22,15, + 2,0,62,192,127,192,225,192,224,192,124,0,31,0,7,192, + 192,224,224,224,255,192,223,128,11,15,30,15,1,0,48,0, + 48,0,48,0,48,0,255,192,255,192,48,0,48,0,48,0, + 48,0,48,0,48,0,56,224,31,224,15,128,14,11,22,15, + 0,0,240,240,240,240,48,48,48,48,48,48,48,48,48,48, + 48,48,56,112,31,252,15,188,14,11,22,15,0,0,252,252, + 252,252,48,48,48,48,24,96,24,96,12,192,12,192,7,128, + 7,128,3,0,14,11,22,15,0,0,248,124,248,124,99,24, + 99,24,51,48,55,176,55,176,60,240,28,224,24,96,24,96, + 12,11,22,15,1,0,249,240,249,240,48,192,25,128,15,0, + 6,0,15,0,25,128,48,192,249,240,249,240,12,16,32,15, + 1,251,249,240,249,240,96,96,112,224,48,192,57,192,25,128, + 27,128,15,0,15,0,6,0,14,0,12,0,28,0,254,0, + 254,0,10,11,22,15,2,0,255,192,255,192,195,128,199,0, + 14,0,28,0,56,0,112,192,224,192,255,192,255,192,7,20, + 20,15,4,252,14,24,48,48,48,48,48,48,112,224,112,48, + 48,48,48,48,48,48,24,14,2,18,18,15,6,254,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 7,20,20,15,3,252,224,48,24,24,24,24,24,24,28,14, + 28,24,24,24,24,24,24,24,48,224,12,4,8,15,1,5, + 60,48,126,112,231,224,195,192,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,0,0,0,15,0,1,4, + 16,16,15,4,251,96,96,96,0,96,96,96,96,96,240,240, + 240,240,240,240,96,9,16,32,15,2,0,12,0,12,0,12, + 0,61,128,127,128,227,128,193,128,192,0,192,0,192,0,225, + 128,127,128,63,0,12,0,12,0,12,0,12,15,30,15,1, + 0,15,128,31,192,56,192,48,0,48,0,48,0,48,0,255, + 0,255,0,24,0,24,0,56,0,112,48,255,240,255,224,10, + 11,22,15,2,2,192,192,255,192,127,128,225,192,192,192,192, + 192,192,192,225,192,127,128,255,192,192,192,12,15,30,15,1, + 0,249,240,249,240,112,224,48,192,57,192,25,128,15,0,15, + 0,63,192,6,0,63,192,6,0,6,0,63,192,63,192,2, + 18,18,15,6,254,192,192,192,192,192,192,192,192,0,0,192, + 192,192,192,192,192,192,192,12,18,36,15,1,254,15,224,31, + 224,56,96,48,96,56,0,126,0,207,128,195,224,240,240,124, + 48,31,48,7,240,1,224,0,192,96,192,97,192,127,128,127, + 0,7,3,3,15,3,12,198,198,198,14,14,28,15,0,1, + 7,128,31,224,56,112,103,152,111,216,220,204,216,12,216,12, + 220,204,111,216,103,152,56,112,31,224,7,128,8,11,11,15, + 3,4,60,102,6,126,198,198,207,123,0,255,255,13,9,18, + 15,1,1,14,56,28,112,56,224,113,192,227,128,113,192,56, + 224,28,112,14,56,12,6,12,15,1,4,255,240,255,240,0, + 48,0,48,0,48,0,48,11,2,4,15,2,6,255,224,255, + 224,14,14,28,15,0,1,7,128,31,224,56,112,111,152,111, + 216,204,204,204,204,207,140,205,140,108,216,108,216,56,112,31, + 224,7,128,7,2,2,15,3,13,254,254,8,7,7,15,3, + 9,60,102,195,195,195,102,60,12,14,28,15,1,0,6,0, + 6,0,6,0,6,0,255,240,255,240,6,0,6,0,6,0, + 6,0,0,0,0,0,255,240,255,240,7,9,9,15,4,7, + 124,198,198,12,24,48,96,198,254,7,9,9,15,4,7,124, + 198,198,12,60,6,198,198,124,6,4,4,15,4,12,28,56, + 112,224,14,16,32,15,0,251,240,240,240,240,48,48,48,48, + 48,48,48,48,48,48,48,48,56,112,63,252,63,188,48,0, + 48,0,48,0,48,0,48,0,12,18,36,15,1,254,31,240, + 127,240,230,192,230,192,230,192,230,192,230,192,126,192,30,192, + 6,192,6,192,6,192,6,192,6,192,6,192,6,192,62,240, + 62,240,3,3,3,15,5,6,224,224,224,5,6,6,15,4, + 251,48,48,120,24,248,112,8,9,9,15,3,7,24,248,24, + 24,24,24,24,24,255,8,11,11,15,3,4,60,126,195,195, + 195,195,126,60,0,255,255,13,9,18,15,1,1,227,128,113, + 192,56,224,28,112,14,56,28,112,56,224,113,192,227,128,16, + 16,32,15,255,0,24,0,248,1,24,3,24,6,24,12,24, + 24,24,48,24,100,255,204,1,156,3,44,6,76,12,140,24, + 254,48,12,32,30,16,16,32,15,255,0,24,0,248,1,24, + 3,24,6,24,12,24,24,24,48,24,126,255,243,1,163,3, + 6,6,12,12,24,24,48,48,99,32,127,15,16,32,15,0, + 0,124,0,198,2,198,6,12,12,60,24,6,48,198,96,198, + 200,125,152,3,56,6,88,12,152,25,24,49,252,96,24,64, + 60,9,15,30,15,2,252,12,0,12,0,12,0,0,0,12, + 0,12,0,28,0,120,0,224,0,192,0,193,128,193,128,225, + 128,127,128,63,0,14,20,40,15,0,0,56,0,28,0,14, + 0,7,0,0,0,63,0,63,0,7,128,7,128,12,192,12, + 192,28,224,24,96,24,96,63,240,63,240,112,56,96,24,252, + 252,252,252,14,20,40,15,0,0,0,224,1,192,3,128,7, + 0,0,0,63,0,63,0,7,128,7,128,12,192,12,192,28, + 224,24,96,24,96,63,240,63,240,112,56,96,24,252,252,252, + 252,14,21,42,15,0,0,6,0,15,0,31,128,57,192,112, + 224,0,0,63,0,63,0,7,128,7,128,12,192,12,192,28, + 224,24,96,24,96,63,240,63,240,112,56,96,24,252,252,252, + 252,14,19,38,15,0,0,14,96,31,192,51,128,0,0,63, + 0,63,0,7,128,7,128,12,192,12,192,28,224,24,96,24, + 96,63,240,63,240,112,56,96,24,252,252,252,252,14,19,38, + 15,0,0,24,192,24,192,24,192,0,0,63,0,63,0,7, + 128,7,128,12,192,12,192,28,224,24,96,24,96,63,240,63, + 240,112,56,96,24,252,252,252,252,14,20,40,15,0,0,7, + 0,13,128,8,128,13,128,7,0,63,0,63,0,7,128,7, + 128,12,192,12,192,28,224,24,96,24,96,63,240,63,240,112, + 56,96,24,252,252,252,252,15,15,30,15,0,0,15,254,15, + 254,3,134,7,134,7,128,13,152,9,248,25,248,31,152,63, + 128,49,128,97,134,97,134,247,254,247,254,12,20,40,15,1, + 251,15,176,63,240,112,112,96,48,224,48,192,0,192,0,192, + 0,192,0,192,0,224,0,96,16,112,48,63,224,15,192,6, + 0,15,0,3,0,31,0,14,0,13,20,40,15,1,0,56, + 0,28,0,14,0,7,0,0,0,255,240,255,240,48,48,48, + 48,49,176,49,128,63,128,63,128,49,128,49,128,48,24,48, + 24,48,24,255,248,255,248,13,20,40,15,1,0,0,224,1, + 192,3,128,7,0,0,0,255,240,255,240,48,48,48,48,49, + 176,49,128,63,128,63,128,49,128,49,128,48,24,48,24,48, + 24,255,248,255,248,13,21,42,15,1,0,3,0,7,128,15, + 192,28,224,56,112,0,0,255,240,255,240,48,48,48,48,49, + 176,49,128,63,128,63,128,49,128,49,128,48,24,48,24,48, + 24,255,248,255,248,13,19,38,15,1,0,24,192,24,192,24, + 192,0,0,255,240,255,240,48,48,48,48,49,176,49,128,63, + 128,63,128,49,128,49,128,48,24,48,24,48,24,255,248,255, + 248,10,20,40,15,2,0,112,0,56,0,28,0,14,0,0, + 0,255,192,255,192,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,255,192,255,192,10, + 20,40,15,2,0,3,128,7,0,14,0,28,0,0,0,255, + 192,255,192,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,255,192,255,192,10,21,42, + 15,2,0,12,0,30,0,63,0,115,128,225,192,0,0,255, + 192,255,192,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,255,192,255,192,10,19,38, + 15,2,0,51,0,51,0,51,0,0,0,255,192,255,192,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,255,192,255,192,14,15,30,15,0,0,255, + 192,255,240,48,56,48,24,48,28,48,12,254,12,254,12,48, + 12,48,12,48,12,48,24,48,56,255,240,255,224,13,19,38, + 15,1,0,14,96,31,192,51,128,0,0,240,248,240,248,120, + 48,120,48,108,48,108,48,102,48,102,48,99,48,99,48,97, + 176,97,176,96,240,248,240,248,112,13,20,40,15,1,0,28, + 0,14,0,7,0,3,128,0,0,15,128,63,224,112,112,96, + 48,224,56,192,24,192,24,192,24,192,24,192,24,224,56,96, + 48,112,112,63,224,15,128,13,20,40,15,1,0,0,224,1, + 192,3,128,7,0,0,0,15,128,63,224,112,112,96,48,224, + 56,192,24,192,24,192,24,192,24,192,24,224,56,96,48,112, + 112,63,224,15,128,13,21,42,15,1,0,3,0,7,128,15, + 192,28,224,56,112,0,0,15,128,63,224,112,112,96,48,224, + 56,192,24,192,24,192,24,192,24,192,24,224,56,96,48,112, + 112,63,224,15,128,13,19,38,15,1,0,14,96,31,192,51, + 128,0,0,15,128,63,224,112,112,96,48,224,56,192,24,192, + 24,192,24,192,24,192,24,224,56,96,48,112,112,63,224,15, + 128,13,19,38,15,1,0,24,192,24,192,24,192,0,0,15, + 128,63,224,112,112,96,48,224,56,192,24,192,24,192,24,192, + 24,192,24,224,56,96,48,112,112,63,224,15,128,12,12,24, + 15,1,1,64,32,224,112,112,224,57,192,31,128,15,0,15, + 0,31,128,57,192,112,224,224,112,64,32,13,18,36,15,1, + 255,0,24,0,48,15,224,63,224,112,112,96,240,225,184,193, + 24,195,24,198,24,196,24,204,24,232,56,120,48,112,112,63, + 224,111,128,192,0,13,20,40,15,1,0,56,0,28,0,14, + 0,7,0,0,0,248,248,248,248,96,48,96,48,96,48,96, + 48,96,48,96,48,96,48,96,48,96,48,96,48,48,96,63, + 224,31,192,13,20,40,15,1,0,0,224,1,192,3,128,7, + 0,0,0,248,248,248,248,96,48,96,48,96,48,96,48,96, + 48,96,48,96,48,96,48,96,48,96,48,48,96,63,224,31, + 192,13,21,42,15,1,0,3,0,7,128,15,192,28,224,56, + 112,0,0,248,248,248,248,96,48,96,48,96,48,96,48,96, + 48,96,48,96,48,96,48,96,48,96,48,48,96,63,224,31, + 192,13,19,38,15,1,0,24,192,24,192,24,192,0,0,248, + 248,248,248,96,48,96,48,96,48,96,48,96,48,96,48,96, + 48,96,48,96,48,96,48,48,96,63,224,31,192,14,20,40, + 15,0,0,0,224,1,192,3,128,7,0,0,0,252,252,252, + 252,112,56,56,112,24,96,12,192,15,192,7,128,3,0,3, + 0,3,0,3,0,3,0,31,224,31,224,13,15,30,15,1, + 0,252,0,252,0,48,0,63,192,63,240,48,56,48,24,48, + 24,48,24,48,56,63,240,63,192,48,0,252,0,252,0,12, + 16,32,15,1,0,15,0,31,128,57,192,48,192,48,192,49, + 192,55,128,55,192,48,224,48,112,48,48,48,48,48,48,51, + 112,251,224,249,192,12,16,32,15,1,0,112,0,56,0,28, + 0,14,0,0,0,63,0,127,128,97,192,0,192,31,192,127, + 192,224,192,192,192,193,192,255,240,126,240,12,16,32,15,1, + 0,1,192,3,128,7,0,14,0,0,0,63,0,127,128,97, + 192,0,192,31,192,127,192,224,192,192,192,193,192,255,240,126, + 240,12,16,32,15,1,0,14,0,31,0,59,128,113,192,0, + 0,63,0,127,128,97,192,0,192,31,192,127,192,224,192,192, + 192,193,192,255,240,126,240,12,15,30,15,1,0,28,192,63, + 128,103,0,0,0,63,0,127,128,97,192,0,192,31,192,127, + 192,224,192,192,192,193,192,255,240,126,240,12,15,30,15,1, + 0,49,128,49,128,49,128,0,0,63,0,127,128,97,192,0, + 192,31,192,127,192,224,192,192,192,193,192,255,240,126,240,12, + 16,32,15,1,0,14,0,27,0,17,0,27,0,14,0,63, + 0,127,128,97,192,0,192,31,192,127,192,224,192,192,192,193, + 192,255,240,126,240,14,11,22,15,0,0,60,240,127,248,103, + 156,3,12,31,12,127,252,227,252,195,0,199,140,255,252,124, + 240,11,16,32,15,1,251,31,96,127,224,112,224,224,96,192, + 96,192,0,192,0,224,0,112,96,127,224,31,192,6,0,15, + 0,3,0,31,0,14,0,12,16,32,15,1,0,56,0,28, + 0,14,0,7,0,0,0,31,128,127,224,112,224,224,112,192, + 48,255,240,255,240,224,0,112,112,127,240,31,192,12,16,32, + 15,1,0,1,192,3,128,7,0,14,0,0,0,31,128,127, + 224,112,224,224,112,192,48,255,240,255,240,224,0,112,112,127, + 240,31,192,12,16,32,15,1,0,7,0,15,128,29,192,56, + 224,0,0,31,128,127,224,112,224,224,112,192,48,255,240,255, + 240,224,0,112,112,127,240,31,192,12,15,30,15,1,0,49, + 128,49,128,49,128,0,0,31,128,127,224,112,224,224,112,192, + 48,255,240,255,240,224,0,112,112,127,240,31,192,10,16,32, + 15,2,0,224,0,112,0,56,0,28,0,0,0,124,0,124, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,255, + 192,255,192,10,16,32,15,2,0,3,128,7,0,14,0,28, + 0,0,0,124,0,124,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,255,192,255,192,10,16,32,15,2,0,28, + 0,62,0,119,0,227,128,0,0,124,0,124,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,255,192,255,192,10, + 15,30,15,2,0,99,0,99,0,99,0,0,0,124,0,124, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,255, + 192,255,192,13,17,34,15,0,0,240,0,252,112,15,240,31, + 128,125,192,112,224,15,240,63,240,56,120,112,56,96,24,96, + 24,96,24,112,56,56,112,63,240,15,192,14,15,30,15,0, + 0,14,96,31,192,51,128,0,0,243,192,247,224,60,112,56, + 48,48,48,48,48,48,48,48,48,48,48,252,252,252,252,12, + 16,32,15,1,0,56,0,28,0,14,0,7,0,0,0,31, + 128,127,224,112,224,224,112,192,48,192,48,192,48,224,112,112, + 224,127,224,31,128,12,16,32,15,1,0,1,192,3,128,7, + 0,14,0,0,0,31,128,127,224,112,224,224,112,192,48,192, + 48,192,48,224,112,112,224,127,224,31,128,12,16,32,15,1, + 0,14,0,31,0,59,128,113,192,0,0,31,128,127,224,112, + 224,224,112,192,48,192,48,192,48,224,112,112,224,127,224,31, + 128,12,15,30,15,1,0,28,192,63,128,103,0,0,0,31, + 128,127,224,112,224,224,112,192,48,192,48,192,48,224,112,112, + 224,127,224,31,128,12,15,30,15,1,0,49,128,49,128,49, + 128,0,0,31,128,127,224,112,224,224,112,192,48,192,48,192, + 48,224,112,112,224,127,224,31,128,13,12,24,15,0,1,7, + 0,7,0,7,0,0,0,0,0,255,248,255,248,0,0,0, + 0,7,0,7,0,7,0,14,14,28,15,0,254,0,12,15, + 216,63,240,56,112,112,216,97,152,99,24,102,24,108,56,56, + 112,63,240,63,192,96,0,192,0,14,16,32,15,0,0,56, + 0,28,0,14,0,7,0,0,0,240,240,240,240,48,48,48, + 48,48,48,48,48,48,48,48,48,56,112,31,252,15,188,14, + 16,32,15,0,0,1,192,3,128,7,0,14,0,0,0,240, + 240,240,240,48,48,48,48,48,48,48,48,48,48,48,48,56, + 112,31,252,15,188,14,16,32,15,0,0,7,0,15,128,29, + 192,56,224,0,0,240,240,240,240,48,48,48,48,48,48,48, + 48,48,48,48,48,56,112,31,252,15,188,14,15,30,15,0, + 0,24,192,24,192,24,192,0,0,240,240,240,240,48,48,48, + 48,48,48,48,48,48,48,48,48,56,112,31,252,15,188,12, + 21,42,15,1,251,0,224,1,192,3,128,7,0,0,0,249, + 240,249,240,96,96,112,224,48,192,57,192,25,128,27,128,15, + 0,15,0,6,0,14,0,12,0,28,0,254,0,254,0,13, + 21,42,15,1,251,240,0,240,0,48,0,48,0,48,0,55, + 192,63,240,60,112,56,56,48,24,48,24,48,24,56,56,60, + 112,63,240,55,192,48,0,48,0,48,0,254,0,254,0,12, + 20,40,15,1,251,49,128,49,128,49,128,0,0,249,240,249, + 240,96,96,112,224,48,192,57,192,25,128,27,128,15,0,15, + 0,6,0,14,0,12,0,28,0,254,0,254,0}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--25-180-100-100-M-150-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 15, '1' Height: 16 + Calculated Max Values w=16 h=21 x= 6 y=11 dx=15 dy= 0 ascent=17 len=40 + Font Bounding box w=22 h=35 x=-4 y=-9 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =15 descent=-5 + X Font ascent =16 descent=-5 + Max Font ascent =17 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB18r[3001] U8G_SECTION(".progmem.u8g_font_courB18r") = { + 0,22,35,252,247,15,3,223,8,17,32,127,251,17,251,16, + 251,0,0,0,15,0,1,4,16,16,15,5,0,96,240,240, + 240,240,240,240,96,96,96,96,96,0,96,96,96,7,7,7, + 15,3,9,238,238,238,238,68,68,68,12,19,38,15,1,254, + 12,192,12,192,12,192,12,192,12,192,12,192,127,240,127,240, + 25,128,25,128,25,128,255,224,255,224,51,0,51,0,51,0, + 51,0,51,0,51,0,10,20,40,15,2,253,12,0,12,0, + 61,128,127,128,195,128,193,128,192,0,224,0,126,0,31,128, + 1,192,0,192,192,192,225,192,255,128,223,0,12,0,12,0, + 12,0,12,0,11,15,30,15,2,0,60,0,102,0,195,0, + 195,0,102,0,60,0,1,192,15,0,56,0,231,128,12,192, + 24,96,24,96,12,192,7,128,11,14,28,15,2,0,30,0, + 63,0,99,0,96,0,96,0,48,0,56,0,124,192,111,192, + 199,128,195,0,199,128,255,224,124,224,3,7,7,15,5,8, + 224,224,224,224,224,64,64,5,20,20,15,6,252,24,56,48, + 96,96,96,192,192,192,192,192,192,192,192,96,96,96,48,56, + 24,5,20,20,15,3,252,192,224,96,48,48,48,24,24,24, + 24,24,24,24,24,48,48,48,96,224,192,10,11,22,15,2, + 5,12,0,12,0,12,0,204,192,255,192,63,0,12,0,63, + 0,51,0,115,128,97,128,12,12,24,15,1,1,6,0,6, + 0,6,0,6,0,6,0,255,240,255,240,6,0,6,0,6, + 0,6,0,6,0,5,6,6,15,4,253,56,56,112,96,192, + 128,11,2,4,15,2,6,255,224,255,224,3,3,3,15,5, + 0,224,224,224,11,20,40,15,2,253,0,96,0,96,0,192, + 0,192,1,128,1,128,3,0,3,0,6,0,6,0,12,0, + 12,0,24,0,24,0,48,0,48,0,96,0,96,0,192,0, + 192,0,10,16,32,15,2,0,30,0,127,128,97,128,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,97,128,127,128,30,0,10,16,32,15,2,0,28,0, + 252,0,252,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,255,192,255,192,11,16, + 32,15,1,0,31,128,63,192,112,224,96,96,96,96,0,96, + 0,224,1,192,3,128,7,0,14,0,28,0,56,0,112,0, + 255,224,255,224,11,16,32,15,1,0,31,128,63,192,112,224, + 96,96,0,96,0,224,1,192,15,128,15,192,0,224,0,96, + 0,96,192,96,224,224,127,192,63,128,11,16,32,15,1,0, + 3,128,7,128,15,128,13,128,25,128,25,128,49,128,49,128, + 97,128,97,128,255,224,255,224,1,128,1,128,15,224,15,224, + 11,16,32,15,2,0,127,192,127,192,96,0,96,0,96,0, + 111,0,127,192,113,192,0,224,0,96,0,96,0,96,192,224, + 225,192,127,192,63,0,10,16,32,15,2,0,7,192,31,192, + 60,0,112,0,96,0,224,0,223,0,255,128,225,192,192,192, + 192,192,192,192,224,192,113,192,127,128,31,0,10,16,32,15, + 2,0,255,192,255,192,192,192,0,192,1,128,1,128,1,128, + 3,0,3,0,3,0,6,0,6,0,6,0,12,0,12,0, + 12,0,10,16,32,15,2,0,30,0,127,128,225,192,192,192, + 192,192,192,192,97,128,63,0,127,128,225,192,192,192,192,192, + 192,192,225,192,127,128,63,0,10,16,32,15,3,0,30,0, + 127,128,97,128,192,192,192,192,192,192,192,192,193,192,227,192, + 126,192,60,192,0,192,1,128,3,128,255,0,252,0,3,11, + 11,15,5,0,224,224,224,0,0,0,0,0,224,224,224,5, + 14,14,15,3,253,56,56,56,0,0,0,0,0,56,56,112, + 96,192,128,13,12,24,15,1,1,0,56,0,240,3,192,15, + 0,60,0,240,0,240,0,60,0,15,0,3,192,0,240,0, + 56,12,6,12,15,1,4,255,240,255,240,0,0,0,0,255, + 240,255,240,13,12,24,15,1,1,224,0,120,0,30,0,7, + 128,1,224,0,120,0,120,1,224,7,128,30,0,120,0,224, + 0,9,15,30,15,3,0,126,0,255,0,195,128,193,128,193, + 128,1,128,3,128,15,0,28,0,24,0,24,0,0,0,24, + 0,24,0,24,0,10,18,36,15,2,254,28,0,127,0,99, + 0,193,128,193,128,199,128,207,128,221,128,217,128,217,128,221, + 128,207,192,199,192,192,0,192,0,97,128,127,128,30,0,14, + 15,30,15,0,0,63,0,63,0,7,128,7,128,12,192,12, + 192,28,224,24,96,24,96,63,240,63,240,112,56,96,24,252, + 252,252,252,13,15,30,15,1,0,255,192,255,224,48,112,48, + 48,48,48,48,112,63,224,63,240,48,56,48,24,48,24,48, + 24,48,56,255,240,255,224,12,15,30,15,1,0,15,176,63, + 240,112,112,96,48,224,48,192,0,192,0,192,0,192,0,192, + 0,224,0,96,0,112,48,63,240,15,192,14,15,30,15,0, + 0,255,192,255,240,48,56,48,24,48,28,48,12,48,12,48, + 12,48,12,48,12,48,12,48,24,48,56,255,240,255,224,13, + 15,30,15,1,0,255,240,255,240,48,48,48,48,49,176,49, + 128,63,128,63,128,49,128,49,128,48,24,48,24,48,24,255, + 248,255,248,13,15,30,15,1,0,255,248,255,248,48,24,48, + 24,49,152,49,128,63,128,63,128,49,128,49,128,48,0,48, + 0,48,0,255,0,255,0,13,15,30,15,1,0,15,216,63, + 248,112,56,96,24,224,24,192,0,192,0,192,0,193,248,193, + 248,224,24,96,24,112,56,63,240,15,192,14,15,30,15,0, + 0,252,252,252,252,48,48,48,48,48,48,48,48,63,240,63, + 240,48,48,48,48,48,48,48,48,48,48,252,252,252,252,10, + 15,30,15,2,0,255,192,255,192,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,255, + 192,255,192,13,15,30,15,1,0,31,248,31,248,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,192,192,192,192,192, + 192,225,192,127,128,63,0,14,15,30,15,0,0,252,248,252, + 248,48,224,49,192,51,128,55,0,62,0,63,0,59,128,49, + 192,48,224,48,96,48,112,252,60,252,60,12,15,30,15,1, + 0,255,0,255,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,48,24,48,24,48,255,240,255,240,14, + 15,30,15,0,0,240,60,240,60,120,120,120,120,108,216,108, + 216,108,216,103,152,99,24,99,24,96,24,96,24,96,24,248, + 124,248,124,13,15,30,15,1,0,240,248,240,248,120,48,120, + 48,108,48,108,48,102,48,102,48,99,48,99,48,97,176,97, + 176,96,240,248,240,248,112,13,15,30,15,1,0,15,128,63, + 224,112,112,96,48,224,56,192,24,192,24,192,24,192,24,192, + 24,224,56,96,48,112,112,63,224,15,128,13,15,30,15,1, + 0,255,192,255,240,48,56,48,24,48,24,48,24,48,24,48, + 56,63,240,63,192,48,0,48,0,48,0,255,0,255,0,13, + 18,36,15,1,253,15,128,63,224,112,112,96,48,224,56,192, + 24,192,24,192,24,192,24,192,24,224,56,96,48,112,112,63, + 224,15,128,14,24,63,248,57,224,14,15,30,15,0,0,255, + 128,255,224,48,112,48,48,48,48,48,48,48,112,63,224,63, + 128,49,192,48,224,48,96,48,112,252,60,252,60,12,15,30, + 15,1,0,31,176,63,240,112,112,96,48,96,48,112,0,62, + 0,31,192,3,224,0,112,192,48,192,48,224,112,255,224,223, + 192,12,15,30,15,1,0,255,240,255,240,198,48,198,48,198, + 48,198,48,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,63,192,63,192,13,15,30,15,1,0,248,248,248,248,96, + 48,96,48,96,48,96,48,96,48,96,48,96,48,96,48,96, + 48,96,48,48,96,63,224,31,192,14,15,30,15,0,0,248, + 124,248,124,96,24,96,24,48,48,48,48,48,48,24,96,24, + 96,24,96,12,192,12,192,7,128,7,128,7,128,14,15,30, + 15,0,0,248,124,248,124,96,24,99,24,99,24,103,152,103, + 152,111,216,108,216,108,216,60,240,56,112,56,112,56,112,56, + 112,14,15,30,15,0,0,252,252,252,252,112,56,56,112,28, + 224,15,192,7,128,3,0,7,128,12,192,28,224,56,112,112, + 56,252,252,252,252,14,15,30,15,0,0,252,252,252,252,112, + 56,56,112,24,96,12,192,15,192,7,128,3,0,3,0,3, + 0,3,0,3,0,31,224,31,224,11,15,30,15,2,0,255, + 224,255,224,192,224,193,192,195,128,3,0,7,0,14,0,28, + 0,24,0,56,96,112,96,224,96,255,224,255,224,5,20,20, + 15,6,252,248,248,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,248,248,11,20,40,15,2,253,192,0,192, + 0,96,0,96,0,48,0,48,0,24,0,24,0,12,0,12, + 0,6,0,6,0,3,0,3,0,1,128,1,128,0,192,0, + 192,0,96,0,96,5,20,20,15,3,252,248,248,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,248,248,8, + 8,8,15,3,8,24,24,60,60,102,102,195,195,15,2,4, + 15,0,252,255,254,255,254,5,4,4,15,4,11,192,96,48, + 24,12,11,22,15,1,0,63,0,127,128,97,192,0,192,31, + 192,127,192,224,192,192,192,193,192,255,240,126,240,13,16,32, + 15,1,0,240,0,240,0,48,0,48,0,48,0,55,192,63, + 240,60,112,56,56,48,24,48,24,48,24,56,56,60,112,255, + 240,247,192,12,11,22,15,1,0,31,176,127,240,112,240,224, + 112,192,48,192,0,192,0,224,0,112,112,127,240,31,192,13, + 16,32,15,1,0,1,224,1,224,0,96,0,96,0,96,31, + 96,127,224,113,224,224,224,192,96,192,96,192,96,224,224,113, + 224,127,248,31,120,12,11,22,15,1,0,31,128,127,224,112, + 224,224,112,192,48,255,240,255,240,224,0,112,112,127,240,31, + 192,11,16,32,15,2,0,7,224,15,224,28,0,24,0,24, + 0,255,192,255,192,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,255,192,255,192,13,16,32,15,1,251,31,120,127, + 248,113,224,224,224,192,96,192,96,192,96,224,224,113,224,127, + 224,31,96,0,96,0,96,0,224,63,192,63,128,14,16,32, + 15,0,0,240,0,240,0,48,0,48,0,48,0,55,192,63, + 224,60,112,56,48,48,48,48,48,48,48,48,48,48,48,252, + 252,252,252,10,16,32,15,2,0,28,0,28,0,28,0,0, + 0,0,0,124,0,124,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,255,192,255,192,8,21,21,15,2,251,14, + 14,14,0,0,255,255,3,3,3,3,3,3,3,3,3,3, + 3,7,254,252,13,16,32,15,1,0,240,0,240,0,48,0, + 48,0,48,0,49,224,49,224,51,128,55,0,62,0,62,0, + 55,0,51,128,49,192,241,248,241,248,10,16,32,15,2,0, + 124,0,124,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,255,192,255,192, + 16,11,22,15,0,0,239,120,255,252,57,204,49,140,49,140, + 49,140,49,140,49,140,49,140,249,239,249,239,14,11,22,15, + 0,0,243,192,247,224,60,112,56,48,48,48,48,48,48,48, + 48,48,48,48,252,252,252,252,12,11,22,15,1,0,31,128, + 127,224,112,224,224,112,192,48,192,48,192,48,224,112,112,224, + 127,224,31,128,13,16,32,15,0,251,247,192,255,240,60,112, + 56,56,48,24,48,24,48,24,56,56,60,112,63,240,55,192, + 48,0,48,0,48,0,254,0,254,0,13,16,32,15,1,251, + 31,120,127,248,113,224,224,224,192,96,192,96,192,96,224,224, + 113,224,127,224,31,96,0,96,0,96,0,96,3,248,3,248, + 12,11,22,15,1,0,121,224,127,240,30,48,28,0,24,0, + 24,0,24,0,24,0,24,0,255,192,255,192,11,11,22,15, + 2,0,62,192,127,192,225,192,224,192,124,0,31,0,7,192, + 192,224,224,224,255,192,223,128,11,15,30,15,1,0,48,0, + 48,0,48,0,48,0,255,192,255,192,48,0,48,0,48,0, + 48,0,48,0,48,0,56,224,31,224,15,128,14,11,22,15, + 0,0,240,240,240,240,48,48,48,48,48,48,48,48,48,48, + 48,48,56,112,31,252,15,188,14,11,22,15,0,0,252,252, + 252,252,48,48,48,48,24,96,24,96,12,192,12,192,7,128, + 7,128,3,0,14,11,22,15,0,0,248,124,248,124,99,24, + 99,24,51,48,55,176,55,176,60,240,28,224,24,96,24,96, + 12,11,22,15,1,0,249,240,249,240,48,192,25,128,15,0, + 6,0,15,0,25,128,48,192,249,240,249,240,12,16,32,15, + 1,251,249,240,249,240,96,96,112,224,48,192,57,192,25,128, + 27,128,15,0,15,0,6,0,14,0,12,0,28,0,254,0, + 254,0,10,11,22,15,2,0,255,192,255,192,195,128,199,0, + 14,0,28,0,56,0,112,192,224,192,255,192,255,192,7,20, + 20,15,4,252,14,24,48,48,48,48,48,48,112,224,112,48, + 48,48,48,48,48,48,24,14,2,18,18,15,6,254,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 7,20,20,15,3,252,224,48,24,24,24,24,24,24,28,14, + 28,24,24,24,24,24,24,24,48,224,12,4,8,15,1,5, + 60,48,126,112,231,224,195,192,255}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--34-240-100-100-M-200-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 20, '1' Height: 21 + Calculated Max Values w=21 h=29 x= 8 y=17 dx=20 dy= 0 ascent=26 len=87 + Font Bounding box w=30 h=44 x=-7 y=-11 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =20 descent=-7 + X Font ascent =21 descent=-7 + Max Font ascent =26 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB24[10502] U8G_SECTION(".progmem.u8g_font_courB24") = { + 0,30,44,249,245,20,5,57,12,115,32,255,249,26,249,21, + 249,0,0,0,20,0,1,5,21,21,20,7,0,112,248,248, + 248,248,248,112,112,112,112,112,112,112,112,112,32,0,0,112, + 248,112,9,10,20,20,5,10,227,128,227,128,227,128,227,128, + 227,128,227,128,227,128,227,128,227,128,65,0,15,26,52,20, + 2,253,14,56,14,56,14,56,14,56,14,56,14,56,14,56, + 14,56,127,254,127,254,127,254,28,112,28,112,28,112,28,112, + 255,252,255,252,255,252,56,224,56,224,56,224,56,224,56,224, + 56,224,56,224,56,224,14,27,54,20,3,252,7,0,7,0, + 7,0,15,216,63,248,127,248,240,120,224,56,224,56,240,0, + 254,0,127,192,63,240,7,248,0,252,0,60,224,28,224,28, + 240,60,255,248,255,240,231,128,7,0,7,0,7,0,7,0, + 7,0,15,21,42,20,2,0,31,0,63,128,49,128,96,192, + 96,192,96,192,113,194,63,142,31,62,0,248,3,224,31,0, + 252,248,241,252,195,142,3,6,3,6,3,6,1,140,1,252, + 0,248,14,18,36,20,2,0,7,160,31,224,63,224,60,96, + 56,0,56,0,60,0,28,0,30,0,127,60,127,188,243,188, + 225,240,224,240,224,240,255,252,127,188,63,60,4,11,11,20, + 8,10,112,112,112,112,112,224,224,224,224,224,224,7,26,26, + 20,8,251,14,14,30,60,56,56,120,112,112,240,240,240,224, + 224,240,240,240,112,112,120,56,60,28,30,14,14,7,26,26, + 20,4,251,224,224,240,120,56,56,60,28,28,30,30,30,14, + 14,30,30,30,28,28,60,56,120,112,240,224,224,15,14,28, + 20,3,7,3,128,3,128,3,128,3,128,99,140,251,190,127, + 252,31,240,15,224,15,224,30,240,60,120,120,60,48,24,17, + 17,51,20,1,1,1,192,0,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,255,255,128,255,255,128, + 255,255,128,1,192,0,1,192,0,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,7,10,10,20,5,251,30,30, + 60,60,56,112,112,224,224,192,15,3,6,20,2,8,255,254, + 255,254,255,254,5,4,4,20,7,0,112,248,248,112,13,27, + 54,20,3,252,0,56,0,56,0,120,0,112,0,112,0,224, + 0,224,1,224,1,192,1,192,3,128,3,128,7,128,7,0, + 15,0,14,0,14,0,28,0,28,0,60,0,56,0,56,0, + 112,0,112,0,240,0,224,0,224,0,13,21,42,20,3,0, + 15,128,63,224,127,240,112,112,240,120,224,56,224,56,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,224,56,224,56, + 240,120,112,112,127,240,63,224,15,128,13,21,42,20,4,0, + 3,0,15,0,127,0,255,0,255,0,103,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,255,248,255,248,255,248,14,21,42,20,2,0, + 7,192,31,240,63,248,120,60,112,28,112,28,112,28,0,28, + 0,56,0,120,0,240,1,224,3,192,7,128,15,0,30,0, + 60,0,120,0,255,252,255,252,255,252,15,21,42,20,2,0, + 7,224,31,240,127,248,120,60,112,28,0,28,0,28,0,60, + 7,248,7,240,7,248,0,124,0,28,0,14,0,14,0,14, + 0,30,224,60,255,252,255,248,63,224,14,21,42,20,2,0, + 0,240,1,240,1,240,3,240,7,240,7,112,15,112,14,112, + 30,112,28,112,56,112,120,112,112,112,255,252,255,252,255,252, + 0,112,0,112,3,252,3,252,3,252,15,21,42,20,2,0, + 63,252,63,252,63,252,56,0,56,0,56,0,56,0,63,224, + 63,248,63,252,56,124,0,30,0,14,0,14,0,14,0,14, + 64,30,240,60,255,248,127,248,31,224,14,21,42,20,3,0, + 1,248,7,248,15,248,31,0,60,0,120,0,112,0,112,0, + 227,192,239,240,255,240,248,120,240,60,224,28,224,28,240,28, + 112,60,120,120,127,248,63,240,15,192,14,21,42,20,2,0, + 255,252,255,252,255,252,224,60,224,56,224,56,0,56,0,120, + 0,112,0,112,0,240,0,224,0,224,1,224,1,192,1,192, + 3,192,3,128,7,128,7,0,7,0,14,21,42,20,3,0, + 15,128,63,224,127,240,112,112,224,56,224,56,224,56,112,112, + 127,240,63,224,63,240,124,248,240,60,224,28,224,28,224,28, + 224,28,248,124,127,248,63,240,15,192,14,21,42,20,3,0, + 15,128,63,224,127,240,120,240,240,120,224,56,224,60,224,60, + 224,60,240,124,120,252,63,220,63,156,15,60,0,56,0,120, + 0,112,97,240,255,224,255,128,126,0,5,15,15,20,7,0, + 112,248,248,112,0,0,0,0,0,0,0,112,248,248,112,8, + 19,19,20,5,252,14,31,31,14,0,0,0,0,0,0,30, + 30,60,56,120,112,224,224,192,18,19,57,20,0,0,0,1, + 192,0,3,192,0,15,192,0,63,128,0,254,0,1,248,0, + 7,224,0,31,128,0,127,0,0,252,0,0,127,0,0,31, + 128,0,7,224,0,1,248,0,0,254,0,0,63,128,0,15, + 192,0,3,192,0,1,192,17,9,27,20,1,5,255,255,128, + 255,255,128,255,255,128,0,0,0,0,0,0,0,0,0,255, + 255,128,255,255,128,255,255,128,18,19,57,20,1,0,224,0, + 0,240,0,0,252,0,0,127,0,0,31,192,0,7,224,0, + 1,248,0,0,126,0,0,63,128,0,15,192,0,63,128,0, + 126,0,1,248,0,7,224,0,31,192,0,127,0,0,252,0, + 0,240,0,0,224,0,0,13,20,40,20,3,0,31,192,127, + 224,255,240,224,248,224,56,224,56,0,56,0,120,0,240,3, + 240,7,192,7,128,7,0,7,0,0,0,0,0,0,0,7, + 0,15,128,7,0,14,23,46,20,3,254,15,192,31,224,56, + 112,112,48,96,48,224,48,192,48,193,240,199,240,198,48,204, + 48,204,48,204,48,206,48,199,252,195,188,192,0,224,0,96, + 0,112,48,56,112,31,224,15,192,21,20,60,20,255,0,31, + 240,0,31,248,0,31,248,0,1,220,0,1,220,0,1,220, + 0,3,142,0,3,142,0,3,142,0,7,7,0,7,7,0, + 7,7,0,15,255,128,15,255,128,31,255,192,28,1,192,28, + 1,192,255,143,248,255,143,248,255,143,248,18,20,60,20,1, + 0,255,248,0,255,254,0,255,255,0,28,7,128,28,3,128, + 28,3,128,28,3,128,28,7,128,31,255,0,31,252,0,31, + 254,0,28,15,128,28,3,192,28,1,192,28,1,192,28,1, + 192,28,3,192,255,255,128,255,255,0,255,252,0,18,20,60, + 20,1,0,3,249,128,15,255,128,31,255,128,62,15,128,120, + 7,128,112,3,128,240,3,128,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,240,0,0, + 120,3,128,124,7,192,63,255,128,31,255,0,7,252,0,17, + 20,60,20,1,0,255,224,0,255,248,0,255,252,0,56,62, + 0,56,15,0,56,7,0,56,7,128,56,3,128,56,3,128, + 56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56, + 7,128,56,7,0,56,31,0,255,254,0,255,252,0,255,240, + 0,17,20,60,20,1,0,255,255,0,255,255,0,255,255,0, + 28,7,0,28,7,0,28,7,0,28,119,0,28,112,0,31, + 240,0,31,240,0,31,240,0,28,112,0,28,112,0,28,3, + 128,28,3,128,28,3,128,28,3,128,255,255,128,255,255,128, + 255,255,128,17,20,60,20,1,0,255,255,128,255,255,128,255, + 255,128,28,3,128,28,3,128,28,3,128,28,115,128,28,112, + 0,31,240,0,31,240,0,31,240,0,28,112,0,28,112,0, + 28,0,0,28,0,0,28,0,0,28,0,0,255,224,0,255, + 224,0,255,224,0,17,20,60,20,2,0,3,243,0,15,255, + 0,31,255,0,60,15,0,120,7,0,112,7,0,240,7,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,255,128,224, + 255,128,224,255,128,240,7,0,112,7,0,124,15,0,63,255, + 0,31,254,0,7,248,0,17,20,60,20,1,0,255,127,128, + 255,127,128,255,127,128,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,63,254,0,63,254,0,63,254,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 255,127,128,255,127,128,255,127,128,13,20,40,20,3,0,255, + 248,255,248,255,248,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,255,248,255,248,255,248,17,20,60,20,2,0,7,255,128, + 7,255,128,7,255,128,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,224,56,0,224,56, + 0,224,56,0,224,56,0,224,56,0,224,120,0,240,240,0, + 255,240,0,127,224,0,31,128,0,19,20,60,20,1,0,255, + 159,192,255,159,192,255,159,192,28,15,0,28,30,0,28,60, + 0,28,120,0,28,240,0,31,224,0,31,240,0,31,248,0, + 30,124,0,28,60,0,28,30,0,28,14,0,28,15,0,28, + 7,0,255,135,224,255,135,224,255,135,224,17,20,60,20,1, + 0,255,224,0,255,224,0,255,224,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14, + 0,0,14,3,128,14,3,128,14,3,128,14,3,128,14,3, + 128,14,3,128,255,255,128,255,255,128,255,255,128,21,20,60, + 20,255,0,252,1,248,252,1,248,254,3,248,62,3,224,63, + 7,224,63,7,224,59,142,224,59,142,224,59,222,224,57,220, + 224,57,220,224,56,248,224,56,248,224,56,248,224,56,112,224, + 56,112,224,56,0,224,255,7,248,255,7,248,255,7,248,19, + 20,60,20,0,0,248,31,224,252,31,224,254,31,224,62,3, + 128,63,3,128,63,3,128,59,131,128,59,195,128,57,195,128, + 57,227,128,56,243,128,56,115,128,56,123,128,56,59,128,56, + 31,128,56,31,128,56,15,128,255,7,128,255,7,128,255,3, + 128,18,20,60,20,1,0,3,240,0,15,252,0,31,254,0, + 60,15,0,120,7,128,112,3,128,240,3,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,240,3, + 192,112,3,128,120,7,128,60,15,0,31,254,0,15,252,0, + 3,240,0,17,20,60,20,1,0,255,248,0,255,254,0,255, + 255,0,28,15,0,28,3,128,28,3,128,28,3,128,28,3, + 128,28,7,128,28,15,0,31,254,0,31,252,0,31,240,0, + 28,0,0,28,0,0,28,0,0,28,0,0,255,224,0,255, + 224,0,255,224,0,18,25,75,20,1,251,3,240,0,15,248, + 0,31,254,0,60,15,0,120,7,128,112,3,128,240,3,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,112,3,128,120,7,128,60,15,0,31,254, + 0,15,252,0,7,240,0,14,0,0,31,225,192,63,255,192, + 63,255,192,56,63,0,20,20,60,20,1,0,255,248,0,255, + 254,0,255,255,0,28,15,0,28,7,128,28,3,128,28,3, + 128,28,7,128,28,15,0,31,254,0,31,252,0,31,248,0, + 28,60,0,28,30,0,28,15,0,28,7,128,28,3,192,255, + 131,240,255,129,240,255,129,240,15,20,40,20,2,0,15,204, + 63,252,127,252,240,124,224,28,224,28,240,28,248,0,127,0, + 63,224,15,248,1,252,0,62,224,30,224,14,224,14,240,30, + 255,252,255,248,231,224,17,20,60,20,1,0,255,255,128,255, + 255,128,255,255,128,225,195,128,225,195,128,225,195,128,225,195, + 128,225,195,128,225,195,128,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,63, + 254,0,63,254,0,63,254,0,19,20,60,20,0,0,255,31, + 224,255,31,224,255,31,224,56,3,128,56,3,128,56,3,128, + 56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56, + 3,128,56,3,128,56,3,128,56,3,128,28,7,0,31,31, + 0,15,254,0,7,252,0,1,240,0,21,20,60,20,255,0, + 255,143,248,255,143,248,255,143,248,28,1,192,28,1,192,30, + 3,192,14,3,128,14,3,128,7,7,0,7,7,0,7,143, + 0,3,142,0,3,142,0,3,222,0,1,220,0,1,220,0, + 0,248,0,0,248,0,0,248,0,0,112,0,19,20,60,20, + 0,0,255,31,224,255,31,224,255,31,224,112,1,192,112,1, + 192,112,225,192,112,225,192,113,241,192,57,243,128,57,243,128, + 59,187,128,59,187,128,59,187,128,63,31,128,63,31,128,30, + 15,0,30,15,0,30,15,0,28,7,0,28,7,0,19,20, + 60,20,0,0,255,31,224,255,31,224,255,31,224,60,7,128, + 30,15,0,15,30,0,7,188,0,3,248,0,1,240,0,0, + 224,0,1,240,0,3,248,0,7,188,0,15,30,0,14,14, + 0,30,15,0,60,7,128,255,31,224,255,31,224,255,31,224, + 19,20,60,20,0,0,255,31,224,255,31,224,255,31,224,60, + 7,128,14,14,0,15,30,0,7,28,0,7,188,0,3,248, + 0,1,240,0,1,240,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,15,254,0,15,254,0,15, + 254,0,15,20,40,20,2,0,127,252,127,252,127,252,112,60, + 112,56,112,120,112,240,113,224,1,192,3,192,7,128,15,0, + 14,14,30,14,60,14,120,14,112,14,255,254,255,254,255,254, + 7,26,26,20,8,251,254,254,254,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,254,254,254, + 13,27,54,20,3,252,224,0,224,0,240,0,112,0,112,0, + 56,0,56,0,60,0,28,0,28,0,14,0,14,0,15,0, + 7,0,7,128,3,128,3,128,1,192,1,192,1,224,0,224, + 0,224,0,112,0,112,0,120,0,56,0,56,7,26,26,20, + 4,251,254,254,254,14,14,14,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,254,254,254,13,11,22,20, + 3,11,2,0,7,0,7,0,15,128,31,192,61,224,56,224, + 120,240,240,120,224,56,224,56,20,3,9,20,0,249,255,255, + 240,255,255,240,255,255,240,6,6,6,20,6,16,192,224,112, + 56,28,12,16,15,30,20,2,0,31,224,127,248,127,252,112, + 60,0,28,0,28,15,252,127,252,127,252,240,28,224,28,224, + 124,255,255,127,223,63,159,19,21,63,20,0,0,252,0,0, + 252,0,0,252,0,0,28,0,0,28,0,0,28,0,0,28, + 124,0,29,255,0,31,255,128,31,135,192,30,1,192,30,1, + 224,28,0,224,28,0,224,28,0,224,28,0,224,30,1,192, + 31,3,192,255,255,128,255,255,0,252,254,0,16,15,30,20, + 2,0,7,230,31,254,63,254,124,62,112,14,224,14,224,14, + 224,0,224,0,224,0,240,6,120,15,127,254,63,252,15,240, + 19,21,63,20,1,0,0,63,0,0,63,0,0,63,0,0, + 7,0,0,7,0,0,7,0,7,231,0,31,255,0,63,255, + 0,124,63,0,112,15,0,240,15,0,224,7,0,224,7,0, + 224,7,0,224,7,0,112,15,0,124,63,0,63,255,224,31, + 247,224,7,231,224,18,15,45,20,1,0,3,240,0,15,252, + 0,31,254,0,62,31,0,120,7,128,112,3,128,255,255,128, + 255,255,128,255,255,128,240,0,0,120,0,0,126,3,128,63, + 255,192,31,255,128,7,254,0,16,21,42,20,3,0,1,255, + 7,255,7,255,15,0,14,0,14,0,255,252,255,252,255,252, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,255,252,255,252,255,252,18,22,66,20,1,249,7,207, + 192,31,255,192,63,255,192,124,126,0,112,30,0,240,30,0, + 224,14,0,224,14,0,224,14,0,240,30,0,112,30,0,120, + 126,0,63,254,0,31,238,0,15,206,0,0,14,0,0,14, + 0,0,30,0,0,60,0,31,252,0,31,248,0,31,224,0, + 18,21,63,20,1,0,252,0,0,252,0,0,252,0,0,28, + 0,0,28,0,0,28,0,0,28,248,0,29,252,0,31,254, + 0,31,15,0,30,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,127,31,192,127, + 31,192,127,31,192,15,21,42,20,3,0,7,128,7,128,7, + 128,7,128,0,0,0,0,127,128,127,128,127,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255, + 254,255,254,255,254,12,28,56,20,3,249,3,192,3,192,3, + 192,3,192,0,0,0,0,255,240,255,240,255,240,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,240,255,224,255, + 192,255,128,17,21,63,20,1,0,252,0,0,252,0,0,252, + 0,0,28,0,0,28,0,0,28,0,0,28,255,0,28,255, + 0,28,255,0,28,120,0,28,240,0,29,224,0,31,192,0, + 31,192,0,31,224,0,29,240,0,28,248,0,28,124,0,252, + 63,128,252,63,128,252,63,128,15,21,42,20,3,0,127,128, + 127,128,127,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,255,254,255,254,255,254,20,15,45,20,1,0,243,143, + 0,255,255,128,255,255,192,120,241,192,112,225,192,112,225,192, + 112,225,192,112,225,192,112,225,192,112,225,192,112,225,192,112, + 225,192,252,249,240,252,249,240,252,249,240,17,15,45,20,2, + 0,249,240,0,251,248,0,255,252,0,62,30,0,60,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,254,63,128,254,63,128,254,63,128,17,15, + 45,20,2,0,7,240,0,31,252,0,63,254,0,120,15,0, + 112,7,0,240,7,128,224,3,128,224,3,128,224,3,128,240, + 7,128,112,7,0,120,15,0,63,254,0,31,252,0,7,240, + 0,19,22,66,20,0,249,252,124,0,253,255,0,255,255,128, + 31,3,192,30,1,224,28,0,224,28,0,224,28,0,224,28, + 0,224,28,1,224,30,1,192,31,7,192,31,255,128,29,254, + 0,28,120,0,28,0,0,28,0,0,28,0,0,28,0,0, + 255,192,0,255,192,0,255,192,0,19,22,66,20,1,249,7, + 231,224,31,255,224,63,255,224,124,63,0,112,15,0,240,15, + 0,224,7,0,224,7,0,224,7,0,240,15,0,112,15,0, + 124,63,0,63,255,0,31,247,0,7,199,0,0,7,0,0, + 7,0,0,7,0,0,7,0,0,127,224,0,127,224,0,127, + 224,17,15,45,20,2,0,126,62,0,126,255,0,127,255,128, + 15,199,0,15,2,0,15,0,0,14,0,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,255,252,0,255,252, + 0,255,252,0,15,15,30,20,3,0,15,236,63,252,63,252, + 120,60,112,28,120,0,127,192,63,248,15,252,224,62,224,14, + 248,30,255,252,255,248,231,224,16,20,40,20,2,0,28,0, + 28,0,28,0,28,0,28,0,255,252,255,252,255,252,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,6,30,31, + 31,255,15,254,3,240,18,15,45,20,1,0,252,63,0,252, + 63,0,252,63,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,28,7,0,28,7,0,30,31,0, + 31,255,192,15,255,192,7,247,192,19,15,45,20,0,0,255, + 31,224,255,31,224,255,31,224,60,7,0,28,7,0,30,14, + 0,14,14,0,15,28,0,7,28,0,7,184,0,3,184,0, + 3,240,0,1,240,0,1,224,0,0,224,0,19,15,45,20, + 0,0,254,15,224,254,15,224,254,15,224,56,227,128,56,227, + 128,57,243,128,61,247,128,29,247,0,31,191,0,31,31,0, + 31,31,0,15,30,0,14,14,0,14,14,0,14,14,0,17, + 15,45,20,1,0,254,63,128,254,63,128,254,63,128,60,28, + 0,30,56,0,15,112,0,7,224,0,3,224,0,3,240,0, + 7,120,0,14,60,0,28,30,0,254,63,128,254,63,128,254, + 63,128,19,22,66,20,1,249,255,31,224,255,31,224,255,31, + 224,60,3,128,28,7,0,30,7,0,14,14,0,15,14,0, + 7,28,0,7,156,0,3,184,0,3,248,0,1,240,0,1, + 240,0,0,224,0,0,224,0,1,192,0,1,192,0,3,128, + 0,127,240,0,127,240,0,127,240,0,13,15,30,20,4,0, + 255,248,255,248,255,248,224,240,225,224,227,192,7,128,15,0, + 30,0,60,0,120,56,240,56,255,248,255,248,255,248,9,26, + 52,20,5,251,7,128,15,128,15,128,30,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,60,0,248,0,248,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,31,128,15,128,7,128,3,26,26,20,8,251,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,9,26,52,20,5,251,240,0, + 248,0,248,0,60,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,30,0,15,128,15,128,31,128,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,252,0,248,0, + 240,0,15,7,14,20,2,6,12,0,63,14,127,142,247,222, + 227,252,225,248,0,96,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,0,0,20,0,1,5,21,21, + 20,7,249,112,248,248,112,0,0,112,112,112,112,112,112,112, + 112,248,248,248,248,248,112,32,13,23,46,20,3,255,7,0, + 7,0,7,0,7,0,7,0,15,216,63,248,127,248,120,120, + 240,56,224,56,224,0,224,0,224,0,240,56,120,120,127,248, + 63,240,15,192,7,0,7,0,7,0,7,0,16,20,40,20, + 1,0,3,224,7,240,15,248,30,56,28,56,28,0,28,0, + 28,0,14,0,255,224,255,224,255,224,14,0,14,0,14,0, + 14,2,30,7,127,255,127,255,127,254,15,15,30,20,2,2, + 224,14,247,222,255,254,127,252,60,120,120,60,112,28,112,28, + 112,28,120,60,60,120,127,252,255,254,247,222,224,14,17,20, + 60,20,1,0,254,63,128,254,63,128,254,63,128,56,14,0, + 28,28,0,30,60,0,14,56,0,15,120,0,7,112,0,3, + 224,0,31,252,0,31,252,0,1,192,0,31,252,0,31,252, + 0,1,192,0,1,192,0,31,252,0,31,252,0,31,252,0, + 3,26,26,20,8,251,224,224,224,224,224,224,224,224,224,224, + 224,224,0,0,224,224,224,224,224,224,224,224,224,224,224,224, + 16,24,48,20,2,253,1,254,7,254,15,254,28,6,24,6, + 24,6,60,0,127,0,231,128,193,224,96,240,112,60,60,14, + 15,6,7,131,1,231,0,254,0,60,48,24,48,24,48,56, + 63,240,63,224,63,128,11,4,8,20,4,17,96,192,241,224, + 241,224,96,192,21,20,60,20,255,0,0,252,0,3,255,0, + 15,255,192,30,3,224,56,96,224,113,246,112,115,254,112,231, + 158,56,231,14,56,206,14,56,206,0,56,206,0,56,206,6, + 56,231,15,120,231,254,112,115,252,240,120,241,224,62,7,192, + 31,255,0,7,252,0,11,14,28,20,4,6,31,0,127,128, + 97,128,1,128,63,128,127,128,225,128,193,128,195,128,255,224, + 125,224,0,0,255,224,255,224,15,14,28,20,1,0,3,6, + 7,14,14,28,28,56,56,112,112,224,225,192,225,192,112,224, + 56,112,28,56,14,28,7,14,3,6,16,8,16,20,2,5, + 255,255,255,255,255,255,0,7,0,7,0,7,0,7,0,7, + 15,3,6,20,2,8,255,254,255,254,255,254,21,20,60,20, + 255,0,1,248,0,7,254,0,31,255,128,60,3,192,59,241, + 224,115,252,224,115,254,240,227,158,112,227,142,120,227,142,56, + 227,254,56,227,252,56,227,184,56,243,188,120,115,158,112,123, + 143,240,60,3,224,31,255,192,15,255,0,3,252,0,10,2, + 4,20,5,17,255,192,255,192,9,9,18,20,5,11,28,0, + 119,0,193,128,128,128,128,128,128,128,193,128,119,0,28,0, + 17,18,54,20,1,0,1,192,0,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,255,255,128,255,255,128,255,255, + 128,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,255,255,128,255,255,128,255,255,128,8,14,14,20, + 5,7,60,126,231,195,3,7,14,12,24,56,112,225,255,255, + 9,14,28,20,5,7,62,0,127,0,99,0,3,0,7,0, + 30,0,31,0,3,128,1,128,1,128,193,128,227,0,127,0, + 60,0,8,6,6,20,6,15,6,15,62,120,224,64,18,22, + 66,20,1,249,252,63,0,252,63,0,252,63,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,28, + 7,0,28,15,0,30,31,0,31,255,192,31,247,192,29,231, + 192,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,15,24,48,20,2,253,15,254,63,254, + 123,24,243,24,227,24,227,24,227,24,227,24,227,24,115,24, + 63,24,31,24,3,24,3,24,3,24,3,24,3,24,3,24, + 3,24,3,24,3,24,31,62,31,62,31,62,5,4,4,20, + 7,8,112,248,248,112,5,7,7,20,6,250,48,48,48,24, + 248,248,112,8,13,13,20,6,7,56,248,216,24,24,24,24, + 24,24,24,24,255,255,11,14,28,20,4,6,14,0,63,128, + 113,192,224,224,192,96,192,96,192,96,224,224,113,192,63,128, + 14,0,0,0,255,224,255,224,15,14,28,20,2,0,193,128, + 225,192,112,224,56,112,28,56,14,28,7,14,7,14,14,28, + 28,56,56,112,112,224,225,192,193,128,19,20,60,20,0,0, + 56,0,0,248,0,0,216,0,128,24,1,192,24,1,128,24, + 3,0,24,6,0,24,12,0,24,28,192,24,25,192,255,51, + 192,255,114,192,0,102,192,0,206,192,1,140,192,3,159,224, + 7,31,224,2,0,192,0,1,224,0,1,224,19,20,60,20, + 0,0,56,0,0,248,0,0,216,2,0,24,7,0,24,14, + 0,24,12,0,24,24,0,24,56,0,24,112,0,24,103,128, + 254,239,192,255,220,224,1,152,96,3,0,224,7,1,192,14, + 7,128,4,14,0,0,28,96,0,31,224,0,31,224,19,21, + 63,20,0,0,62,0,0,127,0,0,99,0,0,3,1,0, + 3,3,128,30,7,0,31,6,0,3,142,0,1,156,0,195, + 152,192,227,49,192,127,115,192,28,98,192,0,198,192,1,206, + 192,3,140,192,7,31,224,2,31,224,0,0,192,0,3,224, + 0,3,224,13,21,42,20,3,250,7,0,15,128,15,128,7, + 0,0,0,0,0,0,0,7,0,7,0,7,0,31,0,63, + 0,124,0,240,0,224,0,224,56,224,56,240,56,127,248,63, + 248,31,224,21,26,78,20,255,0,3,0,0,7,128,0,1, + 224,0,0,240,0,0,48,0,0,0,0,31,240,0,31,248, + 0,31,248,0,1,252,0,1,220,0,1,220,0,3,222,0, + 3,142,0,3,142,0,7,7,0,7,7,0,7,7,0,15, + 255,128,15,255,128,31,255,192,28,1,192,28,1,192,255,143, + 248,255,143,248,255,143,248,21,26,78,20,255,0,0,3,0, + 0,15,0,0,30,0,0,120,0,0,96,0,0,0,0,31, + 240,0,31,248,0,31,248,0,1,252,0,1,220,0,1,220, + 0,3,222,0,3,142,0,3,142,0,7,7,0,7,7,0, + 7,7,0,15,255,128,15,255,128,31,255,192,28,1,192,28, + 1,192,255,143,248,255,143,248,255,143,248,21,26,78,20,255, + 0,0,64,0,0,224,0,3,184,0,7,28,0,14,14,0, + 0,0,0,31,240,0,31,248,0,31,248,0,1,252,0,1, + 220,0,1,220,0,3,222,0,3,142,0,3,142,0,7,7, + 0,7,7,0,7,7,0,15,255,128,15,255,128,31,255,192, + 28,1,192,28,1,192,255,143,248,255,143,248,255,143,248,21, + 25,75,20,255,0,3,134,0,7,230,0,6,118,0,6,28, + 0,0,0,0,31,240,0,31,248,0,31,248,0,1,252,0, + 1,220,0,1,220,0,3,222,0,3,142,0,3,142,0,7, + 7,0,7,7,0,7,7,0,15,255,128,15,255,128,31,255, + 192,28,1,192,28,1,192,255,143,248,255,143,248,255,143,248, + 21,25,75,20,255,0,12,24,0,30,60,0,30,60,0,12, + 24,0,0,0,0,31,240,0,31,248,0,31,248,0,1,252, + 0,1,220,0,1,220,0,3,222,0,3,142,0,3,142,0, + 7,7,0,7,7,0,7,7,0,15,255,128,15,255,128,31, + 255,192,28,1,192,28,1,192,255,143,248,255,143,248,255,143, + 248,21,26,78,20,255,0,0,240,0,1,152,0,1,8,0, + 1,152,0,0,240,0,0,0,0,31,240,0,31,248,0,31, + 248,0,1,252,0,1,220,0,1,220,0,3,222,0,3,142, + 0,3,142,0,7,7,0,7,7,0,7,7,0,15,255,128, + 15,255,128,31,255,192,28,1,192,28,1,192,255,143,248,255, + 143,248,255,143,248,20,20,60,20,0,0,31,255,224,31,255, + 224,31,255,224,7,112,224,7,112,224,6,112,224,14,112,224, + 14,115,0,14,115,0,14,127,0,28,127,0,28,115,0,31, + 243,0,31,243,0,56,112,112,56,112,112,56,112,112,255,255, + 240,255,255,240,255,255,240,17,26,78,20,1,250,3,227,0, + 15,255,0,31,255,0,62,31,0,120,15,0,112,7,0,240, + 7,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,240,0,0,112,1,0,120,3,128,62,15,128, + 63,255,0,15,254,0,3,248,0,0,192,0,0,192,0,0, + 224,0,4,112,0,7,240,0,3,224,0,17,26,78,20,1, + 0,3,0,0,7,128,0,1,224,0,0,240,0,0,48,0, + 0,0,0,255,255,0,255,255,0,255,255,0,28,7,0,28, + 7,0,28,7,0,28,119,0,28,112,0,31,240,0,31,240, + 0,31,240,0,28,112,0,28,112,0,28,3,128,28,3,128, + 28,3,128,28,3,128,255,255,128,255,255,128,255,255,128,17, + 26,78,20,1,0,0,12,0,0,60,0,0,120,0,1,224, + 0,1,128,0,0,0,0,255,255,0,255,255,0,255,255,0, + 28,7,0,28,7,0,28,7,0,28,119,0,28,112,0,31, + 240,0,31,240,0,31,240,0,28,112,0,28,112,0,28,3, + 128,28,3,128,28,3,128,28,3,128,255,255,128,255,255,128, + 255,255,128,17,26,78,20,1,0,0,128,0,1,192,0,7, + 112,0,14,56,0,28,28,0,0,0,0,255,255,0,255,255, + 0,255,255,0,28,7,0,28,7,0,28,7,0,28,119,0, + 28,112,0,31,240,0,31,240,0,31,240,0,28,112,0,28, + 112,0,28,3,128,28,3,128,28,3,128,28,3,128,255,255, + 128,255,255,128,255,255,128,17,25,75,20,1,0,6,12,0, + 15,30,0,15,30,0,6,12,0,0,0,0,255,255,0,255, + 255,0,255,255,0,28,7,0,28,7,0,28,7,0,28,119, + 0,28,112,0,31,240,0,31,240,0,31,240,0,28,112,0, + 28,112,0,28,3,128,28,3,128,28,3,128,28,3,128,255, + 255,128,255,255,128,255,255,128,13,26,52,20,3,0,24,0, + 60,0,15,0,7,128,1,128,0,0,255,248,255,248,255,248, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,255,248,255,248, + 255,248,13,26,52,20,3,0,0,48,0,240,1,224,7,128, + 6,0,0,0,255,248,255,248,255,248,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,255,248,255,248,255,248,13,26,52,20, + 3,0,2,0,7,0,29,192,56,224,112,112,0,0,255,248, + 255,248,255,248,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 255,248,255,248,255,248,13,25,50,20,3,0,48,96,120,240, + 120,240,48,96,0,0,255,248,255,248,255,248,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,255,248,255,248,255,248,17,20, + 60,20,2,0,255,224,0,255,248,0,255,252,0,56,62,0, + 56,15,0,56,7,0,56,7,0,56,3,128,255,131,128,255, + 131,128,255,131,128,56,3,128,56,3,128,56,3,128,56,7, + 0,56,7,0,56,30,0,255,254,0,255,252,0,255,240,0, + 20,25,75,20,255,0,3,134,0,7,230,0,6,118,0,6, + 28,0,0,0,0,252,31,240,254,31,240,255,31,240,31,1, + 192,31,129,192,31,129,192,29,193,192,29,225,192,28,225,192, + 28,241,192,28,121,192,28,57,192,28,61,192,28,29,192,28, + 15,192,28,15,192,28,7,192,127,199,192,127,195,192,127,193, + 192,17,26,78,20,1,0,6,0,0,15,0,0,3,192,0, + 1,224,0,0,96,0,0,0,0,7,240,0,15,252,0,31, + 252,0,60,30,0,120,15,0,112,7,0,112,7,0,224,3, + 128,224,3,128,224,3,128,224,3,128,224,3,128,224,3,128, + 112,7,0,120,7,0,56,14,0,62,62,0,31,252,0,15, + 248,0,3,224,0,17,26,78,20,1,0,0,24,0,0,120, + 0,0,240,0,3,192,0,3,0,0,0,0,0,7,240,0, + 15,252,0,31,252,0,60,30,0,120,15,0,112,7,0,112, + 7,0,224,3,128,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,112,7,0,120,7,0,56,14,0,62,62,0, + 31,252,0,15,248,0,3,224,0,17,26,78,20,1,0,0, + 128,0,1,192,0,7,112,0,14,56,0,28,28,0,0,0, + 0,7,240,0,15,252,0,31,252,0,60,30,0,120,15,0, + 112,7,0,112,7,0,224,3,128,224,3,128,224,3,128,224, + 3,128,224,3,128,224,3,128,112,7,0,120,7,0,56,14, + 0,62,62,0,31,252,0,15,248,0,3,224,0,17,25,75, + 20,1,0,7,12,0,15,204,0,12,236,0,12,56,0,0, + 0,0,7,240,0,15,252,0,31,252,0,60,30,0,120,15, + 0,112,7,0,112,7,0,224,3,128,224,3,128,224,3,128, + 224,3,128,224,3,128,224,3,128,112,7,0,120,7,0,56, + 14,0,62,62,0,31,252,0,15,248,0,3,224,0,17,25, + 75,20,1,0,12,24,0,30,60,0,30,60,0,12,24,0, + 0,0,0,7,240,0,15,252,0,31,252,0,60,30,0,120, + 15,0,112,7,0,112,7,0,224,3,128,224,3,128,224,3, + 128,224,3,128,224,3,128,224,3,128,112,7,0,120,7,0, + 56,14,0,62,62,0,31,252,0,15,248,0,3,224,0,15, + 16,32,20,2,0,224,14,240,30,248,62,120,60,60,120,30, + 240,15,224,7,192,7,192,15,224,30,240,60,120,120,60,248, + 62,240,30,224,14,17,23,69,20,1,254,0,3,128,3,227, + 128,15,255,128,31,255,0,62,62,0,56,30,0,120,63,0, + 112,127,0,224,123,128,224,243,128,225,227,128,225,195,128,227, + 195,128,231,131,128,255,7,128,126,7,0,126,15,0,60,30, + 0,127,252,0,127,248,0,247,240,0,224,0,0,224,0,0, + 19,26,78,20,0,0,3,0,0,7,128,0,1,224,0,0, + 240,0,0,48,0,0,0,0,255,31,224,255,31,224,255,31, + 224,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128, + 56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56, + 3,128,56,3,128,28,7,128,31,31,0,15,254,0,7,252, + 0,1,248,0,19,26,78,20,0,0,0,28,0,0,60,0, + 0,240,0,1,224,0,1,128,0,0,0,0,255,31,224,255, + 31,224,255,31,224,56,3,128,56,3,128,56,3,128,56,3, + 128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128, + 56,3,128,56,3,128,56,3,128,28,7,128,31,31,0,15, + 254,0,7,252,0,1,248,0,19,26,78,20,0,0,0,64, + 0,0,224,0,3,184,0,7,28,0,14,14,0,0,0,0, + 255,31,224,255,31,224,255,31,224,56,3,128,56,3,128,56, + 3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3, + 128,56,3,128,56,3,128,56,3,128,56,3,128,28,7,128, + 31,31,0,15,254,0,7,252,0,1,248,0,19,26,78,20, + 0,0,6,12,0,15,30,0,15,30,0,6,12,0,0,0, + 0,0,0,0,255,191,224,255,191,224,255,191,224,56,3,128, + 56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56, + 3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3, + 128,28,7,128,31,31,0,15,254,0,7,252,0,1,248,0, + 17,26,78,20,1,0,0,24,0,0,120,0,0,240,0,3, + 192,0,3,0,0,0,0,0,254,63,128,254,63,128,254,63, + 128,60,30,0,28,28,0,30,60,0,14,56,0,15,120,0, + 7,240,0,3,224,0,3,224,0,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,31,252,0,31,252, + 0,31,252,0,18,20,60,20,1,0,255,128,0,255,128,0, + 255,128,0,28,0,0,31,248,0,31,254,0,31,255,0,28, + 15,128,28,3,128,28,3,192,28,3,192,28,3,128,28,15, + 128,31,255,0,31,254,0,31,248,0,28,0,0,255,128,0, + 255,128,0,255,128,0,17,22,66,20,0,255,3,224,0,7, + 240,0,15,248,0,30,60,0,28,28,0,28,28,0,28,28, + 0,28,60,0,29,248,0,29,248,0,29,254,0,28,31,0, + 28,15,0,28,7,128,28,3,128,28,3,128,29,195,128,29, + 195,128,255,255,0,254,255,0,254,126,0,0,24,0,17,22, + 66,20,2,0,24,0,0,60,0,0,15,0,0,7,128,0, + 1,128,0,0,0,0,0,0,0,15,224,0,63,240,0,63, + 248,0,56,60,0,0,28,0,0,28,0,15,252,0,63,252, + 0,127,252,0,120,28,0,240,28,0,224,124,0,255,255,128, + 127,255,128,63,159,128,17,22,66,20,2,0,0,32,0,0, + 112,0,0,240,0,3,192,0,7,128,0,6,0,0,0,0, + 0,15,224,0,63,240,0,63,248,0,56,60,0,0,28,0, + 0,28,0,15,252,0,63,252,0,127,252,0,120,28,0,224, + 60,0,224,124,0,255,255,128,127,223,128,63,159,128,17,22, + 66,20,1,0,0,128,0,1,192,0,7,112,0,14,56,0, + 28,28,0,0,0,0,0,0,0,7,224,0,63,240,0,63, + 248,0,60,60,0,0,28,0,0,28,0,15,252,0,63,252, + 0,127,252,0,120,28,0,240,28,0,224,60,0,255,255,128, + 127,255,128,63,159,128,17,21,63,20,1,0,14,24,0,31, + 152,0,25,248,0,24,112,0,0,0,0,0,0,0,15,224, + 0,63,240,0,63,248,0,56,60,0,0,28,0,0,28,0, + 15,252,0,63,252,0,127,252,0,120,28,0,240,28,0,224, + 124,0,255,255,128,127,223,128,63,159,128,17,21,63,20,2, + 0,12,24,0,30,60,0,30,60,0,12,24,0,0,0,0, + 0,0,0,15,224,0,63,240,0,63,248,0,56,60,0,0, + 28,0,0,28,0,15,252,0,63,252,0,127,252,0,120,28, + 0,240,28,0,224,124,0,255,255,128,127,223,128,63,159,128, + 17,21,63,20,1,0,3,192,0,6,96,0,4,32,0,6, + 96,0,3,192,0,0,0,0,15,224,0,63,240,0,63,248, + 0,56,60,0,0,28,0,0,28,0,15,252,0,63,252,0, + 127,252,0,120,28,0,240,28,0,224,124,0,255,255,128,127, + 223,128,63,159,128,20,15,45,20,255,0,15,135,0,63,255, + 192,63,255,192,56,253,224,0,112,112,3,240,112,31,255,240, + 127,255,240,255,255,240,240,112,0,224,120,0,241,248,112,127, + 255,240,63,255,240,31,39,128,16,21,42,20,2,250,7,230, + 31,254,63,254,124,62,112,14,240,14,224,14,224,0,224,0, + 224,0,240,6,124,15,63,254,31,252,7,240,1,128,1,128, + 1,192,8,224,15,192,3,128,16,21,42,20,1,0,6,0, + 15,0,3,192,1,224,0,96,0,0,7,224,31,248,63,252, + 124,62,112,14,240,15,255,255,255,255,255,255,224,0,112,0, + 124,15,63,255,31,254,7,240,16,22,44,20,1,0,0,16, + 0,56,0,120,1,224,3,192,3,0,0,0,7,224,31,248, + 63,252,124,62,112,14,240,15,255,255,255,255,255,255,224,0, + 112,0,124,14,63,255,31,254,7,240,16,22,44,20,1,0, + 0,128,1,192,7,112,14,56,28,28,0,0,0,0,7,224, + 31,248,63,252,124,62,112,14,240,15,255,255,255,255,255,255, + 224,0,112,0,124,31,63,255,31,255,7,240,16,21,42,20, + 1,0,12,24,30,60,30,60,12,24,0,0,0,0,7,224, + 31,248,63,252,124,62,112,14,240,15,255,255,255,255,255,255, + 224,0,112,0,124,31,63,255,31,255,7,240,15,22,44,20, + 2,0,24,0,60,0,15,0,7,128,1,128,0,0,0,0, + 127,128,127,128,127,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,255,254,255,254,255,254,15,23, + 46,20,2,0,0,128,1,192,3,192,15,0,30,0,24,0, + 0,0,0,0,127,128,127,128,127,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254, + 255,254,15,22,44,20,2,0,2,0,7,0,29,192,56,224, + 112,112,0,0,0,0,127,128,127,128,127,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254, + 255,254,255,254,15,21,42,20,2,0,48,96,120,240,120,240, + 48,96,0,0,0,0,127,128,127,128,127,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254, + 255,254,255,254,16,21,42,20,2,0,126,14,255,191,255,252, + 3,240,15,240,127,248,124,56,112,60,7,220,31,254,127,254, + 120,30,240,15,224,7,224,7,224,15,240,15,248,62,127,252, + 63,248,31,224,17,21,63,20,1,0,14,24,0,31,152,0, + 25,248,0,24,112,0,0,0,0,0,0,0,249,240,0,251, + 252,0,255,254,0,60,30,0,56,14,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 254,63,128,254,63,128,254,63,128,17,21,63,20,1,0,6, + 0,0,15,0,0,3,192,0,1,224,0,0,96,0,0,0, + 0,7,240,0,15,248,0,63,254,0,60,30,0,120,15,0, + 240,7,128,224,3,128,224,3,128,224,3,128,240,7,128,120, + 15,0,124,31,0,63,254,0,31,252,0,7,240,0,17,22, + 66,20,1,0,0,16,0,0,56,0,0,120,0,1,224,0, + 3,192,0,3,0,0,0,0,0,7,240,0,15,248,0,63, + 254,0,60,30,0,120,15,0,240,7,128,224,3,128,224,3, + 128,224,3,128,240,7,128,120,15,0,124,31,0,63,254,0, + 31,252,0,7,240,0,17,22,66,20,1,0,0,128,0,1, + 192,0,7,112,0,14,56,0,28,28,0,0,0,0,0,0, + 0,7,240,0,15,248,0,63,254,0,60,30,0,120,15,0, + 240,7,128,224,3,128,224,3,128,224,3,128,240,7,128,120, + 15,0,124,31,0,63,254,0,31,252,0,7,240,0,17,21, + 63,20,1,0,7,12,0,15,204,0,12,252,0,12,56,0, + 0,0,0,0,0,0,7,240,0,15,248,0,63,254,0,60, + 30,0,120,15,0,240,7,128,224,3,128,224,3,128,224,3, + 128,240,7,128,120,15,0,124,31,0,63,254,0,31,252,0, + 7,240,0,17,21,63,20,1,0,12,24,0,30,60,0,30, + 60,0,12,24,0,0,0,0,0,0,0,7,240,0,15,248, + 0,63,254,0,60,30,0,120,15,0,240,7,128,224,3,128, + 224,3,128,224,3,128,240,7,128,120,15,0,124,31,0,63, + 254,0,31,252,0,7,240,0,15,15,30,20,2,2,3,128, + 7,192,7,192,3,128,0,0,0,0,255,254,255,254,255,254, + 0,0,0,0,3,128,7,192,7,192,3,128,17,18,54,20, + 1,254,0,3,128,3,227,128,15,255,128,63,255,0,62,62, + 0,120,63,0,112,127,0,224,243,128,225,227,128,227,195,128, + 231,131,128,127,7,0,126,31,0,63,254,0,127,252,0,247, + 240,0,224,0,0,224,0,0,18,22,66,20,0,0,3,0, + 0,7,128,0,1,224,0,0,240,0,0,48,0,0,0,0, + 0,0,0,252,63,0,252,63,0,252,63,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,15,0,28,31,0,31,255,192,15,247,192,7,231,192, + 18,22,66,20,0,0,0,8,0,0,28,0,0,60,0,0, + 240,0,1,224,0,1,128,0,0,0,0,252,63,0,252,63, + 0,252,63,0,28,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,15,0,28,31,0,31, + 255,192,15,247,192,7,231,192,18,22,66,20,0,0,0,128, + 0,1,192,0,7,112,0,14,56,0,28,28,0,0,0,0, + 0,0,0,252,63,0,252,63,0,252,63,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,15,0,28,31,0,31,255,192,15,247,192,7,231,192, + 18,21,63,20,0,0,12,24,0,30,60,0,30,60,0,12, + 24,0,0,0,0,0,0,0,252,63,0,252,63,0,252,63, + 0,28,7,0,28,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,15,0,28,31,0,31,255,192,15, + 247,192,7,231,192,17,29,87,20,1,249,0,16,0,0,56, + 0,0,120,0,1,224,0,3,192,0,3,0,0,0,0,0, + 254,63,128,254,63,128,254,63,128,120,15,0,56,14,0,60, + 30,0,28,28,0,30,60,0,14,56,0,15,120,0,7,112, + 0,7,240,0,3,224,0,3,224,0,1,192,0,1,192,0, + 3,128,0,3,128,0,7,0,0,255,224,0,255,224,0,255, + 224,0,19,28,84,20,0,249,252,0,0,252,0,0,252,0, + 0,28,0,0,28,0,0,28,0,0,28,252,0,31,255,0, + 31,255,128,31,135,192,31,3,192,30,1,224,28,0,224,28, + 0,224,28,0,224,30,1,224,30,1,192,31,135,192,31,255, + 128,31,255,0,28,252,0,28,0,0,28,0,0,28,0,0, + 28,0,0,255,192,0,255,192,0,255,192,0,17,28,84,20, + 1,249,6,12,0,15,30,0,15,30,0,6,12,0,0,0, + 0,0,0,0,254,63,128,254,63,128,254,63,128,120,15,0, + 56,14,0,60,30,0,28,28,0,30,60,0,14,56,0,15, + 120,0,7,112,0,7,240,0,3,224,0,3,224,0,1,192, + 0,1,192,0,3,128,0,3,128,0,7,0,0,255,224,0, + 255,224,0,255,224,0}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--34-240-100-100-M-200-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 20, '1' Height: 21 + Calculated Max Values w=21 h=28 x= 8 y=16 dx=20 dy= 0 ascent=23 len=75 + Font Bounding box w=30 h=44 x=-7 y=-11 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =20 descent=-7 + X Font ascent =21 descent=-7 + Max Font ascent =23 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB24r[4775] U8G_SECTION(".progmem.u8g_font_courB24r") = { + 0,30,44,249,245,20,5,57,12,115,32,127,249,23,249,21, + 249,0,0,0,20,0,1,5,21,21,20,7,0,112,248,248, + 248,248,248,112,112,112,112,112,112,112,112,112,32,0,0,112, + 248,112,9,10,20,20,5,10,227,128,227,128,227,128,227,128, + 227,128,227,128,227,128,227,128,227,128,65,0,15,26,52,20, + 2,253,14,56,14,56,14,56,14,56,14,56,14,56,14,56, + 14,56,127,254,127,254,127,254,28,112,28,112,28,112,28,112, + 255,252,255,252,255,252,56,224,56,224,56,224,56,224,56,224, + 56,224,56,224,56,224,14,27,54,20,3,252,7,0,7,0, + 7,0,15,216,63,248,127,248,240,120,224,56,224,56,240,0, + 254,0,127,192,63,240,7,248,0,252,0,60,224,28,224,28, + 240,60,255,248,255,240,231,128,7,0,7,0,7,0,7,0, + 7,0,15,21,42,20,2,0,31,0,63,128,49,128,96,192, + 96,192,96,192,113,194,63,142,31,62,0,248,3,224,31,0, + 252,248,241,252,195,142,3,6,3,6,3,6,1,140,1,252, + 0,248,14,18,36,20,2,0,7,160,31,224,63,224,60,96, + 56,0,56,0,60,0,28,0,30,0,127,60,127,188,243,188, + 225,240,224,240,224,240,255,252,127,188,63,60,4,11,11,20, + 8,10,112,112,112,112,112,224,224,224,224,224,224,7,26,26, + 20,8,251,14,14,30,60,56,56,120,112,112,240,240,240,224, + 224,240,240,240,112,112,120,56,60,28,30,14,14,7,26,26, + 20,4,251,224,224,240,120,56,56,60,28,28,30,30,30,14, + 14,30,30,30,28,28,60,56,120,112,240,224,224,15,14,28, + 20,3,7,3,128,3,128,3,128,3,128,99,140,251,190,127, + 252,31,240,15,224,15,224,30,240,60,120,120,60,48,24,17, + 17,51,20,1,1,1,192,0,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,255,255,128,255,255,128, + 255,255,128,1,192,0,1,192,0,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,7,10,10,20,5,251,30,30, + 60,60,56,112,112,224,224,192,15,3,6,20,2,8,255,254, + 255,254,255,254,5,4,4,20,7,0,112,248,248,112,13,27, + 54,20,3,252,0,56,0,56,0,120,0,112,0,112,0,224, + 0,224,1,224,1,192,1,192,3,128,3,128,7,128,7,0, + 15,0,14,0,14,0,28,0,28,0,60,0,56,0,56,0, + 112,0,112,0,240,0,224,0,224,0,13,21,42,20,3,0, + 15,128,63,224,127,240,112,112,240,120,224,56,224,56,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,224,56,224,56, + 240,120,112,112,127,240,63,224,15,128,13,21,42,20,4,0, + 3,0,15,0,127,0,255,0,255,0,103,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,255,248,255,248,255,248,14,21,42,20,2,0, + 7,192,31,240,63,248,120,60,112,28,112,28,112,28,0,28, + 0,56,0,120,0,240,1,224,3,192,7,128,15,0,30,0, + 60,0,120,0,255,252,255,252,255,252,15,21,42,20,2,0, + 7,224,31,240,127,248,120,60,112,28,0,28,0,28,0,60, + 7,248,7,240,7,248,0,124,0,28,0,14,0,14,0,14, + 0,30,224,60,255,252,255,248,63,224,14,21,42,20,2,0, + 0,240,1,240,1,240,3,240,7,240,7,112,15,112,14,112, + 30,112,28,112,56,112,120,112,112,112,255,252,255,252,255,252, + 0,112,0,112,3,252,3,252,3,252,15,21,42,20,2,0, + 63,252,63,252,63,252,56,0,56,0,56,0,56,0,63,224, + 63,248,63,252,56,124,0,30,0,14,0,14,0,14,0,14, + 64,30,240,60,255,248,127,248,31,224,14,21,42,20,3,0, + 1,248,7,248,15,248,31,0,60,0,120,0,112,0,112,0, + 227,192,239,240,255,240,248,120,240,60,224,28,224,28,240,28, + 112,60,120,120,127,248,63,240,15,192,14,21,42,20,2,0, + 255,252,255,252,255,252,224,60,224,56,224,56,0,56,0,120, + 0,112,0,112,0,240,0,224,0,224,1,224,1,192,1,192, + 3,192,3,128,7,128,7,0,7,0,14,21,42,20,3,0, + 15,128,63,224,127,240,112,112,224,56,224,56,224,56,112,112, + 127,240,63,224,63,240,124,248,240,60,224,28,224,28,224,28, + 224,28,248,124,127,248,63,240,15,192,14,21,42,20,3,0, + 15,128,63,224,127,240,120,240,240,120,224,56,224,60,224,60, + 224,60,240,124,120,252,63,220,63,156,15,60,0,56,0,120, + 0,112,97,240,255,224,255,128,126,0,5,15,15,20,7,0, + 112,248,248,112,0,0,0,0,0,0,0,112,248,248,112,8, + 19,19,20,5,252,14,31,31,14,0,0,0,0,0,0,30, + 30,60,56,120,112,224,224,192,18,19,57,20,0,0,0,1, + 192,0,3,192,0,15,192,0,63,128,0,254,0,1,248,0, + 7,224,0,31,128,0,127,0,0,252,0,0,127,0,0,31, + 128,0,7,224,0,1,248,0,0,254,0,0,63,128,0,15, + 192,0,3,192,0,1,192,17,9,27,20,1,5,255,255,128, + 255,255,128,255,255,128,0,0,0,0,0,0,0,0,0,255, + 255,128,255,255,128,255,255,128,18,19,57,20,1,0,224,0, + 0,240,0,0,252,0,0,127,0,0,31,192,0,7,224,0, + 1,248,0,0,126,0,0,63,128,0,15,192,0,63,128,0, + 126,0,1,248,0,7,224,0,31,192,0,127,0,0,252,0, + 0,240,0,0,224,0,0,13,20,40,20,3,0,31,192,127, + 224,255,240,224,248,224,56,224,56,0,56,0,120,0,240,3, + 240,7,192,7,128,7,0,7,0,0,0,0,0,0,0,7, + 0,15,128,7,0,14,23,46,20,3,254,15,192,31,224,56, + 112,112,48,96,48,224,48,192,48,193,240,199,240,198,48,204, + 48,204,48,204,48,206,48,199,252,195,188,192,0,224,0,96, + 0,112,48,56,112,31,224,15,192,21,20,60,20,255,0,31, + 240,0,31,248,0,31,248,0,1,220,0,1,220,0,1,220, + 0,3,142,0,3,142,0,3,142,0,7,7,0,7,7,0, + 7,7,0,15,255,128,15,255,128,31,255,192,28,1,192,28, + 1,192,255,143,248,255,143,248,255,143,248,18,20,60,20,1, + 0,255,248,0,255,254,0,255,255,0,28,7,128,28,3,128, + 28,3,128,28,3,128,28,7,128,31,255,0,31,252,0,31, + 254,0,28,15,128,28,3,192,28,1,192,28,1,192,28,1, + 192,28,3,192,255,255,128,255,255,0,255,252,0,18,20,60, + 20,1,0,3,249,128,15,255,128,31,255,128,62,15,128,120, + 7,128,112,3,128,240,3,128,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,240,0,0, + 120,3,128,124,7,192,63,255,128,31,255,0,7,252,0,17, + 20,60,20,1,0,255,224,0,255,248,0,255,252,0,56,62, + 0,56,15,0,56,7,0,56,7,128,56,3,128,56,3,128, + 56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56, + 7,128,56,7,0,56,31,0,255,254,0,255,252,0,255,240, + 0,17,20,60,20,1,0,255,255,0,255,255,0,255,255,0, + 28,7,0,28,7,0,28,7,0,28,119,0,28,112,0,31, + 240,0,31,240,0,31,240,0,28,112,0,28,112,0,28,3, + 128,28,3,128,28,3,128,28,3,128,255,255,128,255,255,128, + 255,255,128,17,20,60,20,1,0,255,255,128,255,255,128,255, + 255,128,28,3,128,28,3,128,28,3,128,28,115,128,28,112, + 0,31,240,0,31,240,0,31,240,0,28,112,0,28,112,0, + 28,0,0,28,0,0,28,0,0,28,0,0,255,224,0,255, + 224,0,255,224,0,17,20,60,20,2,0,3,243,0,15,255, + 0,31,255,0,60,15,0,120,7,0,112,7,0,240,7,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,255,128,224, + 255,128,224,255,128,240,7,0,112,7,0,124,15,0,63,255, + 0,31,254,0,7,248,0,17,20,60,20,1,0,255,127,128, + 255,127,128,255,127,128,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,63,254,0,63,254,0,63,254,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 255,127,128,255,127,128,255,127,128,13,20,40,20,3,0,255, + 248,255,248,255,248,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,255,248,255,248,255,248,17,20,60,20,2,0,7,255,128, + 7,255,128,7,255,128,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,224,56,0,224,56, + 0,224,56,0,224,56,0,224,56,0,224,120,0,240,240,0, + 255,240,0,127,224,0,31,128,0,19,20,60,20,1,0,255, + 159,192,255,159,192,255,159,192,28,15,0,28,30,0,28,60, + 0,28,120,0,28,240,0,31,224,0,31,240,0,31,248,0, + 30,124,0,28,60,0,28,30,0,28,14,0,28,15,0,28, + 7,0,255,135,224,255,135,224,255,135,224,17,20,60,20,1, + 0,255,224,0,255,224,0,255,224,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14, + 0,0,14,3,128,14,3,128,14,3,128,14,3,128,14,3, + 128,14,3,128,255,255,128,255,255,128,255,255,128,21,20,60, + 20,255,0,252,1,248,252,1,248,254,3,248,62,3,224,63, + 7,224,63,7,224,59,142,224,59,142,224,59,222,224,57,220, + 224,57,220,224,56,248,224,56,248,224,56,248,224,56,112,224, + 56,112,224,56,0,224,255,7,248,255,7,248,255,7,248,19, + 20,60,20,0,0,248,31,224,252,31,224,254,31,224,62,3, + 128,63,3,128,63,3,128,59,131,128,59,195,128,57,195,128, + 57,227,128,56,243,128,56,115,128,56,123,128,56,59,128,56, + 31,128,56,31,128,56,15,128,255,7,128,255,7,128,255,3, + 128,18,20,60,20,1,0,3,240,0,15,252,0,31,254,0, + 60,15,0,120,7,128,112,3,128,240,3,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,240,3, + 192,112,3,128,120,7,128,60,15,0,31,254,0,15,252,0, + 3,240,0,17,20,60,20,1,0,255,248,0,255,254,0,255, + 255,0,28,15,0,28,3,128,28,3,128,28,3,128,28,3, + 128,28,7,128,28,15,0,31,254,0,31,252,0,31,240,0, + 28,0,0,28,0,0,28,0,0,28,0,0,255,224,0,255, + 224,0,255,224,0,18,25,75,20,1,251,3,240,0,15,248, + 0,31,254,0,60,15,0,120,7,128,112,3,128,240,3,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,112,3,128,120,7,128,60,15,0,31,254, + 0,15,252,0,7,240,0,14,0,0,31,225,192,63,255,192, + 63,255,192,56,63,0,20,20,60,20,1,0,255,248,0,255, + 254,0,255,255,0,28,15,0,28,7,128,28,3,128,28,3, + 128,28,7,128,28,15,0,31,254,0,31,252,0,31,248,0, + 28,60,0,28,30,0,28,15,0,28,7,128,28,3,192,255, + 131,240,255,129,240,255,129,240,15,20,40,20,2,0,15,204, + 63,252,127,252,240,124,224,28,224,28,240,28,248,0,127,0, + 63,224,15,248,1,252,0,62,224,30,224,14,224,14,240,30, + 255,252,255,248,231,224,17,20,60,20,1,0,255,255,128,255, + 255,128,255,255,128,225,195,128,225,195,128,225,195,128,225,195, + 128,225,195,128,225,195,128,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,63, + 254,0,63,254,0,63,254,0,19,20,60,20,0,0,255,31, + 224,255,31,224,255,31,224,56,3,128,56,3,128,56,3,128, + 56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56, + 3,128,56,3,128,56,3,128,56,3,128,28,7,0,31,31, + 0,15,254,0,7,252,0,1,240,0,21,20,60,20,255,0, + 255,143,248,255,143,248,255,143,248,28,1,192,28,1,192,30, + 3,192,14,3,128,14,3,128,7,7,0,7,7,0,7,143, + 0,3,142,0,3,142,0,3,222,0,1,220,0,1,220,0, + 0,248,0,0,248,0,0,248,0,0,112,0,19,20,60,20, + 0,0,255,31,224,255,31,224,255,31,224,112,1,192,112,1, + 192,112,225,192,112,225,192,113,241,192,57,243,128,57,243,128, + 59,187,128,59,187,128,59,187,128,63,31,128,63,31,128,30, + 15,0,30,15,0,30,15,0,28,7,0,28,7,0,19,20, + 60,20,0,0,255,31,224,255,31,224,255,31,224,60,7,128, + 30,15,0,15,30,0,7,188,0,3,248,0,1,240,0,0, + 224,0,1,240,0,3,248,0,7,188,0,15,30,0,14,14, + 0,30,15,0,60,7,128,255,31,224,255,31,224,255,31,224, + 19,20,60,20,0,0,255,31,224,255,31,224,255,31,224,60, + 7,128,14,14,0,15,30,0,7,28,0,7,188,0,3,248, + 0,1,240,0,1,240,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,15,254,0,15,254,0,15, + 254,0,15,20,40,20,2,0,127,252,127,252,127,252,112,60, + 112,56,112,120,112,240,113,224,1,192,3,192,7,128,15,0, + 14,14,30,14,60,14,120,14,112,14,255,254,255,254,255,254, + 7,26,26,20,8,251,254,254,254,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,254,254,254, + 13,27,54,20,3,252,224,0,224,0,240,0,112,0,112,0, + 56,0,56,0,60,0,28,0,28,0,14,0,14,0,15,0, + 7,0,7,128,3,128,3,128,1,192,1,192,1,224,0,224, + 0,224,0,112,0,112,0,120,0,56,0,56,7,26,26,20, + 4,251,254,254,254,14,14,14,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,254,254,254,13,11,22,20, + 3,11,2,0,7,0,7,0,15,128,31,192,61,224,56,224, + 120,240,240,120,224,56,224,56,20,3,9,20,0,249,255,255, + 240,255,255,240,255,255,240,6,6,6,20,6,16,192,224,112, + 56,28,12,16,15,30,20,2,0,31,224,127,248,127,252,112, + 60,0,28,0,28,15,252,127,252,127,252,240,28,224,28,224, + 124,255,255,127,223,63,159,19,21,63,20,0,0,252,0,0, + 252,0,0,252,0,0,28,0,0,28,0,0,28,0,0,28, + 124,0,29,255,0,31,255,128,31,135,192,30,1,192,30,1, + 224,28,0,224,28,0,224,28,0,224,28,0,224,30,1,192, + 31,3,192,255,255,128,255,255,0,252,254,0,16,15,30,20, + 2,0,7,230,31,254,63,254,124,62,112,14,224,14,224,14, + 224,0,224,0,224,0,240,6,120,15,127,254,63,252,15,240, + 19,21,63,20,1,0,0,63,0,0,63,0,0,63,0,0, + 7,0,0,7,0,0,7,0,7,231,0,31,255,0,63,255, + 0,124,63,0,112,15,0,240,15,0,224,7,0,224,7,0, + 224,7,0,224,7,0,112,15,0,124,63,0,63,255,224,31, + 247,224,7,231,224,18,15,45,20,1,0,3,240,0,15,252, + 0,31,254,0,62,31,0,120,7,128,112,3,128,255,255,128, + 255,255,128,255,255,128,240,0,0,120,0,0,126,3,128,63, + 255,192,31,255,128,7,254,0,16,21,42,20,3,0,1,255, + 7,255,7,255,15,0,14,0,14,0,255,252,255,252,255,252, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,255,252,255,252,255,252,18,22,66,20,1,249,7,207, + 192,31,255,192,63,255,192,124,126,0,112,30,0,240,30,0, + 224,14,0,224,14,0,224,14,0,240,30,0,112,30,0,120, + 126,0,63,254,0,31,238,0,15,206,0,0,14,0,0,14, + 0,0,30,0,0,60,0,31,252,0,31,248,0,31,224,0, + 18,21,63,20,1,0,252,0,0,252,0,0,252,0,0,28, + 0,0,28,0,0,28,0,0,28,248,0,29,252,0,31,254, + 0,31,15,0,30,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,127,31,192,127, + 31,192,127,31,192,15,21,42,20,3,0,7,128,7,128,7, + 128,7,128,0,0,0,0,127,128,127,128,127,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255, + 254,255,254,255,254,12,28,56,20,3,249,3,192,3,192,3, + 192,3,192,0,0,0,0,255,240,255,240,255,240,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,240,255,224,255, + 192,255,128,17,21,63,20,1,0,252,0,0,252,0,0,252, + 0,0,28,0,0,28,0,0,28,0,0,28,255,0,28,255, + 0,28,255,0,28,120,0,28,240,0,29,224,0,31,192,0, + 31,192,0,31,224,0,29,240,0,28,248,0,28,124,0,252, + 63,128,252,63,128,252,63,128,15,21,42,20,3,0,127,128, + 127,128,127,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,255,254,255,254,255,254,20,15,45,20,1,0,243,143, + 0,255,255,128,255,255,192,120,241,192,112,225,192,112,225,192, + 112,225,192,112,225,192,112,225,192,112,225,192,112,225,192,112, + 225,192,252,249,240,252,249,240,252,249,240,17,15,45,20,2, + 0,249,240,0,251,248,0,255,252,0,62,30,0,60,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,254,63,128,254,63,128,254,63,128,17,15, + 45,20,2,0,7,240,0,31,252,0,63,254,0,120,15,0, + 112,7,0,240,7,128,224,3,128,224,3,128,224,3,128,240, + 7,128,112,7,0,120,15,0,63,254,0,31,252,0,7,240, + 0,19,22,66,20,0,249,252,124,0,253,255,0,255,255,128, + 31,3,192,30,1,224,28,0,224,28,0,224,28,0,224,28, + 0,224,28,1,224,30,1,192,31,7,192,31,255,128,29,254, + 0,28,120,0,28,0,0,28,0,0,28,0,0,28,0,0, + 255,192,0,255,192,0,255,192,0,19,22,66,20,1,249,7, + 231,224,31,255,224,63,255,224,124,63,0,112,15,0,240,15, + 0,224,7,0,224,7,0,224,7,0,240,15,0,112,15,0, + 124,63,0,63,255,0,31,247,0,7,199,0,0,7,0,0, + 7,0,0,7,0,0,7,0,0,127,224,0,127,224,0,127, + 224,17,15,45,20,2,0,126,62,0,126,255,0,127,255,128, + 15,199,0,15,2,0,15,0,0,14,0,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,255,252,0,255,252, + 0,255,252,0,15,15,30,20,3,0,15,236,63,252,63,252, + 120,60,112,28,120,0,127,192,63,248,15,252,224,62,224,14, + 248,30,255,252,255,248,231,224,16,20,40,20,2,0,28,0, + 28,0,28,0,28,0,28,0,255,252,255,252,255,252,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,6,30,31, + 31,255,15,254,3,240,18,15,45,20,1,0,252,63,0,252, + 63,0,252,63,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,28,7,0,28,7,0,30,31,0, + 31,255,192,15,255,192,7,247,192,19,15,45,20,0,0,255, + 31,224,255,31,224,255,31,224,60,7,0,28,7,0,30,14, + 0,14,14,0,15,28,0,7,28,0,7,184,0,3,184,0, + 3,240,0,1,240,0,1,224,0,0,224,0,19,15,45,20, + 0,0,254,15,224,254,15,224,254,15,224,56,227,128,56,227, + 128,57,243,128,61,247,128,29,247,0,31,191,0,31,31,0, + 31,31,0,15,30,0,14,14,0,14,14,0,14,14,0,17, + 15,45,20,1,0,254,63,128,254,63,128,254,63,128,60,28, + 0,30,56,0,15,112,0,7,224,0,3,224,0,3,240,0, + 7,120,0,14,60,0,28,30,0,254,63,128,254,63,128,254, + 63,128,19,22,66,20,1,249,255,31,224,255,31,224,255,31, + 224,60,3,128,28,7,0,30,7,0,14,14,0,15,14,0, + 7,28,0,7,156,0,3,184,0,3,248,0,1,240,0,1, + 240,0,0,224,0,0,224,0,1,192,0,1,192,0,3,128, + 0,127,240,0,127,240,0,127,240,0,13,15,30,20,4,0, + 255,248,255,248,255,248,224,240,225,224,227,192,7,128,15,0, + 30,0,60,0,120,56,240,56,255,248,255,248,255,248,9,26, + 52,20,5,251,7,128,15,128,15,128,30,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,60,0,248,0,248,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,31,128,15,128,7,128,3,26,26,20,8,251,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,9,26,52,20,5,251,240,0, + 248,0,248,0,60,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,30,0,15,128,15,128,31,128,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,252,0,248,0, + 240,0,15,7,14,20,2,6,12,0,63,14,127,142,247,222, + 227,252,225,248,0,96,255}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--34-240-100-100-M-200-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 21 + Calculated Max Values w=17 h=27 x= 7 y= 8 dx=20 dy= 0 ascent=23 len=54 + Font Bounding box w=30 h=44 x=-7 y=-11 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =21 descent= 0 + X Font ascent =21 descent= 0 + Max Font ascent =23 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB24n[686] U8G_SECTION(".progmem.u8g_font_courB24n") = { + 0,30,44,249,245,21,0,0,0,0,42,57,0,23,251,21, + 0,15,14,28,20,3,7,3,128,3,128,3,128,3,128,99, + 140,251,190,127,252,31,240,15,224,15,224,30,240,60,120,120, + 60,48,24,17,17,51,20,1,1,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,1,192,0,255,255, + 128,255,255,128,255,255,128,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,1,192,0,7,10,10,20, + 5,251,30,30,60,60,56,112,112,224,224,192,15,3,6,20, + 2,8,255,254,255,254,255,254,5,4,4,20,7,0,112,248, + 248,112,13,27,54,20,3,252,0,56,0,56,0,120,0,112, + 0,112,0,224,0,224,1,224,1,192,1,192,3,128,3,128, + 7,128,7,0,15,0,14,0,14,0,28,0,28,0,60,0, + 56,0,56,0,112,0,112,0,240,0,224,0,224,0,13,21, + 42,20,3,0,15,128,63,224,127,240,112,112,240,120,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,224,56,224,56, + 224,56,224,56,240,120,112,112,127,240,63,224,15,128,13,21, + 42,20,4,0,3,0,15,0,127,0,255,0,255,0,103,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,255,248,255,248,255,248,14,21, + 42,20,2,0,7,192,31,240,63,248,120,60,112,28,112,28, + 112,28,0,28,0,56,0,120,0,240,1,224,3,192,7,128, + 15,0,30,0,60,0,120,0,255,252,255,252,255,252,15,21, + 42,20,2,0,7,224,31,240,127,248,120,60,112,28,0,28, + 0,28,0,60,7,248,7,240,7,248,0,124,0,28,0,14, + 0,14,0,14,0,30,224,60,255,252,255,248,63,224,14,21, + 42,20,2,0,0,240,1,240,1,240,3,240,7,240,7,112, + 15,112,14,112,30,112,28,112,56,112,120,112,112,112,255,252, + 255,252,255,252,0,112,0,112,3,252,3,252,3,252,15,21, + 42,20,2,0,63,252,63,252,63,252,56,0,56,0,56,0, + 56,0,63,224,63,248,63,252,56,124,0,30,0,14,0,14, + 0,14,0,14,64,30,240,60,255,248,127,248,31,224,14,21, + 42,20,3,0,1,248,7,248,15,248,31,0,60,0,120,0, + 112,0,112,0,227,192,239,240,255,240,248,120,240,60,224,28, + 224,28,240,28,112,60,120,120,127,248,63,240,15,192,14,21, + 42,20,2,0,255,252,255,252,255,252,224,60,224,56,224,56, + 0,56,0,120,0,112,0,112,0,240,0,224,0,224,1,224, + 1,192,1,192,3,192,3,128,7,128,7,0,7,0,14,21, + 42,20,3,0,15,128,63,224,127,240,112,112,224,56,224,56, + 224,56,112,112,127,240,63,224,63,240,124,248,240,60,224,28, + 224,28,224,28,224,28,248,124,127,248,63,240,15,192,14,21, + 42,20,3,0,15,128,63,224,127,240,120,240,240,120,224,56, + 224,60,224,60,224,60,240,124,120,252,63,220,63,156,15,60, + 0,56,0,120,0,112,97,240,255,224,255,128,126,0}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--11-80-100-100-M-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 6, '1' Height: 7 + Calculated Max Values w= 6 h=10 x= 2 y= 6 dx= 6 dy= 0 ascent= 9 len=10 + Font Bounding box w=10 h=16 x=-2 y=-4 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR08[2433] U8G_SECTION(".progmem.u8g_font_courR08") = { + 0,10,16,254,252,6,1,151,3,21,32,255,254,9,254,7, + 254,0,0,0,6,0,1,1,7,7,6,2,0,128,128,128, + 128,128,0,128,3,3,3,6,1,4,160,160,160,5,8,8, + 6,1,255,80,80,248,80,80,248,80,80,4,8,8,6,1, + 255,32,112,128,96,16,144,96,32,6,7,7,6,0,0,224, + 164,200,48,92,148,24,6,6,6,6,0,0,48,64,96,148, + 136,116,1,3,3,6,2,4,128,128,128,3,9,9,6,2, + 254,32,64,64,128,128,128,64,64,32,3,9,9,6,1,254, + 128,64,64,32,32,32,64,64,128,5,4,4,6,0,3,32, + 216,32,80,5,5,5,6,0,1,32,32,248,32,32,2,3, + 3,6,1,254,64,64,128,4,1,1,6,1,3,240,1,2, + 2,6,2,0,128,128,6,9,9,6,0,255,4,8,16,16, + 32,32,64,64,128,4,7,7,6,1,0,96,144,144,144,144, + 144,96,4,7,7,6,1,0,32,224,32,32,32,32,240,4, + 7,7,6,1,0,96,144,16,32,64,128,240,4,7,7,6, + 1,0,96,144,16,96,16,144,96,5,7,7,6,0,0,16, + 48,80,144,248,16,16,4,7,7,6,1,0,240,128,128,224, + 16,16,224,4,7,7,6,1,0,112,128,128,224,144,144,96, + 4,7,7,6,1,0,240,144,16,32,32,64,64,4,7,7, + 6,1,0,96,144,144,96,144,144,96,4,7,7,6,1,0, + 96,144,144,112,16,16,224,1,5,5,6,2,0,128,128,0, + 128,128,2,6,6,6,1,254,64,64,0,64,64,128,3,5, + 5,6,1,1,32,64,128,64,32,4,3,3,6,1,2,240, + 0,240,3,5,5,6,2,1,128,64,32,64,128,4,6,6, + 6,1,0,96,144,32,64,0,64,6,8,8,6,0,255,56, + 68,156,168,168,156,64,56,6,6,6,6,0,0,112,40,72, + 120,72,204,5,6,6,6,0,0,240,72,112,72,72,240,4, + 6,6,6,1,0,96,144,128,128,144,96,5,6,6,6,0, + 0,240,72,72,72,72,240,5,6,6,6,0,0,248,72,112, + 64,72,248,5,6,6,6,0,0,248,72,112,80,64,224,4, + 6,6,6,1,0,96,144,128,176,144,96,6,6,6,6,0, + 0,204,72,120,72,72,204,5,6,6,6,1,0,248,32,32, + 32,32,248,5,6,6,6,1,0,120,16,16,144,144,96,6, + 6,6,6,0,0,216,80,96,80,72,228,5,6,6,6,1, + 0,224,64,64,64,72,248,5,6,6,6,1,0,136,216,168, + 168,136,216,6,6,6,6,0,0,220,72,104,88,72,200,4, + 6,6,6,1,0,96,144,144,144,144,96,5,6,6,6,1, + 0,240,72,72,112,64,224,4,7,7,6,1,255,96,144,144, + 144,144,96,112,6,6,6,6,0,0,240,72,72,112,72,228, + 4,6,6,6,1,0,112,128,96,16,144,224,5,6,6,6, + 0,0,248,168,32,32,32,112,6,6,6,6,0,0,204,72, + 72,72,72,48,6,6,6,6,0,0,220,136,80,80,80,32, + 6,6,6,6,0,0,220,136,168,168,80,80,5,6,6,6, + 1,0,216,80,32,32,80,216,5,6,6,6,1,0,216,136, + 80,32,32,112,4,6,6,6,1,0,240,144,32,64,144,240, + 2,9,9,6,2,254,192,128,128,128,128,128,128,128,192,5, + 9,9,6,1,255,128,128,64,64,32,32,16,16,8,2,9, + 9,6,2,254,192,64,64,64,64,64,64,64,192,5,3,3, + 6,1,4,32,80,136,6,1,1,6,0,254,252,2,2,2, + 6,1,6,128,64,5,5,5,6,0,0,96,16,112,144,104, + 5,7,7,6,0,0,192,64,112,72,72,72,240,4,5,5, + 6,1,0,96,144,128,144,96,5,7,7,6,1,0,48,16, + 112,144,144,144,104,4,5,5,6,1,0,96,144,224,144,96, + 4,7,7,6,1,0,48,64,240,64,64,64,240,5,7,7, + 6,1,254,104,144,144,144,112,16,224,6,7,7,6,0,0, + 192,64,112,72,72,72,236,5,7,7,6,1,0,32,0,96, + 32,32,32,248,3,9,9,6,1,254,32,0,224,32,32,32, + 32,32,192,5,7,7,6,0,0,192,64,88,80,96,80,216, + 5,7,7,6,1,0,96,32,32,32,32,32,248,6,5,5, + 6,0,0,208,168,168,168,172,6,5,5,6,0,0,176,72, + 72,72,236,4,5,5,6,1,0,96,144,144,144,96,5,7, + 7,6,0,254,176,72,72,72,112,64,240,5,7,7,6,1, + 254,104,144,144,144,112,16,56,5,5,5,6,1,0,184,64, + 64,64,240,4,5,5,6,1,0,112,128,96,16,224,5,7, + 7,6,1,0,64,64,240,64,64,72,48,6,5,5,6,0, + 0,216,72,72,72,52,6,5,5,6,0,0,204,68,40,40, + 16,6,5,5,6,0,0,172,168,168,80,80,5,5,5,6, + 0,0,216,80,32,80,216,5,7,7,6,0,254,216,72,72, + 72,48,32,192,4,5,5,6,1,0,240,32,64,144,240,3, + 9,9,6,2,254,32,64,64,64,128,64,64,64,32,1,9, + 9,6,2,254,128,128,128,128,128,128,128,128,128,3,9,9, + 6,2,254,128,64,64,64,32,64,64,64,128,4,2,2,6, + 1,3,80,160,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,6,0,1,1,7,7,6,2, + 254,128,0,128,128,128,128,128,4,8,8,6,1,255,32,32, + 112,128,128,112,32,32,6,7,7,6,0,0,56,64,248,32, + 32,68,252,5,5,5,6,0,1,136,112,80,112,136,5,7, + 7,6,0,0,136,80,248,32,248,32,112,1,9,9,6,2, + 254,128,128,128,0,0,128,128,128,128,4,8,8,6,1,255, + 112,128,96,144,144,96,16,224,3,1,1,6,2,5,160,6, + 7,7,6,0,0,48,72,180,164,180,72,48,4,5,5,6, + 1,1,224,16,208,0,240,6,3,3,6,0,1,108,216,108, + 5,3,3,6,0,2,248,8,8,4,1,1,6,1,3,240, + 6,7,7,6,0,0,48,72,188,180,172,72,48,4,1,1, + 6,1,5,240,4,3,3,6,1,4,96,144,96,5,6,6, + 6,0,0,32,32,248,32,0,248,3,4,4,6,2,3,96, + 160,64,224,3,4,4,6,2,3,224,64,32,192,2,2,2, + 6,2,5,64,128,6,7,7,6,0,254,216,72,72,72,116, + 64,64,6,8,8,6,0,255,124,168,168,104,40,40,40,108, + 1,2,2,6,2,2,128,128,3,3,3,6,1,254,64,32, + 192,3,4,4,6,2,3,192,64,64,224,4,5,5,6,1, + 1,96,144,96,0,240,6,3,3,6,1,1,216,108,216,6, + 7,7,6,0,0,192,68,72,244,44,92,132,6,7,7,6, + 0,0,192,68,72,252,52,72,156,6,7,7,6,0,0,224, + 68,40,212,44,92,132,4,7,7,6,0,254,32,0,32,32, + 64,144,96,6,9,9,6,0,0,32,16,0,112,40,72,120, + 72,204,6,9,9,6,0,0,16,32,0,112,40,72,120,72, + 204,6,9,9,6,0,0,32,80,0,112,40,72,120,72,204, + 6,9,9,6,0,0,40,80,0,112,40,72,120,72,204,6, + 8,8,6,0,0,80,0,112,40,72,120,72,204,6,9,9, + 6,0,0,16,40,16,112,40,72,120,72,204,6,6,6,6, + 0,0,124,48,92,112,144,156,4,8,8,6,1,254,96,144, + 128,128,144,96,32,192,5,9,9,6,0,0,32,16,0,248, + 72,112,64,72,248,5,9,9,6,0,0,16,32,0,248,72, + 112,64,72,248,5,9,9,6,0,0,32,80,0,248,72,112, + 64,72,248,5,8,8,6,0,0,80,0,248,72,112,64,72, + 248,5,9,9,6,0,0,64,32,0,248,32,32,32,32,248, + 5,9,9,6,0,0,16,32,0,248,32,32,32,32,248,5, + 9,9,6,0,0,32,80,0,248,32,32,32,32,248,5,8, + 8,6,0,0,80,0,248,32,32,32,32,248,5,6,6,6, + 0,0,240,72,232,72,72,240,6,9,9,6,0,0,40,80, + 0,220,72,104,88,72,200,4,9,9,6,1,0,64,32,0, + 96,144,144,144,144,96,4,9,9,6,1,0,32,64,0,96, + 144,144,144,144,96,4,9,9,6,1,0,32,80,0,96,144, + 144,144,144,96,4,9,9,6,1,0,80,160,0,96,144,144, + 144,144,96,4,8,8,6,1,0,160,0,96,144,144,144,144, + 96,5,5,5,6,0,1,136,80,32,80,136,6,6,6,6, + 0,0,52,72,88,104,72,176,6,9,9,6,0,0,32,16, + 0,204,72,72,72,72,48,6,9,9,6,0,0,16,32,0, + 204,72,72,72,72,48,6,9,9,6,0,0,16,40,0,204, + 72,72,72,72,48,6,8,8,6,0,0,80,0,204,72,72, + 72,72,48,5,9,9,6,0,0,16,32,0,216,136,80,32, + 32,112,5,6,6,6,0,0,192,112,72,112,64,224,6,6, + 6,6,0,0,48,72,88,68,84,200,5,8,8,6,0,0, + 64,32,0,96,16,112,144,104,5,8,8,6,0,0,16,32, + 0,96,16,112,144,104,5,8,8,6,0,0,32,80,0,96, + 16,112,144,104,5,8,8,6,0,0,80,160,0,96,16,112, + 144,104,5,7,7,6,0,0,80,0,96,16,112,144,104,5, + 9,9,6,0,0,32,80,32,0,96,16,112,144,104,6,5, + 5,6,0,0,108,148,124,144,236,4,7,7,6,1,254,96, + 144,128,144,96,32,192,4,8,8,6,1,0,64,32,0,96, + 144,240,128,112,4,8,8,6,1,0,32,64,0,96,144,240, + 128,112,4,8,8,6,1,0,64,160,0,96,144,240,128,112, + 4,7,7,6,1,0,160,0,96,144,240,128,112,5,8,8, + 6,0,0,64,32,0,96,32,32,32,248,5,8,8,6,0, + 0,16,32,0,96,32,32,32,248,5,8,8,6,0,0,32, + 80,0,96,32,32,32,248,5,7,7,6,0,0,80,0,96, + 32,32,32,248,4,8,8,6,1,0,208,96,160,112,144,144, + 144,96,6,8,8,6,0,0,40,80,0,176,72,72,72,236, + 4,8,8,6,1,0,64,32,0,96,144,144,144,96,4,8, + 8,6,1,0,16,32,0,96,144,144,144,96,4,8,8,6, + 1,0,64,160,0,96,144,144,144,96,4,8,8,6,1,0, + 80,160,0,96,144,144,144,96,4,7,7,6,1,0,160,0, + 96,144,144,144,96,5,5,5,6,0,1,32,0,248,0,32, + 6,6,6,6,0,0,4,56,88,104,72,176,6,8,8,6, + 0,0,32,16,0,216,72,72,72,52,6,8,8,6,0,0, + 16,32,0,216,72,72,72,52,6,8,8,6,0,0,32,80, + 0,216,72,72,72,52,6,7,7,6,0,0,80,0,216,72, + 72,72,52,5,10,10,6,0,254,16,32,0,216,72,72,72, + 48,32,192,5,9,9,6,0,254,192,64,112,72,72,72,112, + 64,224,5,9,9,6,0,254,80,0,216,72,72,72,48,32, + 192}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--11-80-100-100-M-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 6, '1' Height: 7 + Calculated Max Values w= 6 h= 9 x= 2 y= 6 dx= 6 dy= 0 ascent= 8 len= 9 + Font Bounding box w=10 h=16 x=-2 y=-4 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 8 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR08r[1157] U8G_SECTION(".progmem.u8g_font_courR08r") = { + 0,10,16,254,252,6,1,151,3,21,32,127,254,8,254,7, + 254,0,0,0,6,0,1,1,7,7,6,2,0,128,128,128, + 128,128,0,128,3,3,3,6,1,4,160,160,160,5,8,8, + 6,1,255,80,80,248,80,80,248,80,80,4,8,8,6,1, + 255,32,112,128,96,16,144,96,32,6,7,7,6,0,0,224, + 164,200,48,92,148,24,6,6,6,6,0,0,48,64,96,148, + 136,116,1,3,3,6,2,4,128,128,128,3,9,9,6,2, + 254,32,64,64,128,128,128,64,64,32,3,9,9,6,1,254, + 128,64,64,32,32,32,64,64,128,5,4,4,6,0,3,32, + 216,32,80,5,5,5,6,0,1,32,32,248,32,32,2,3, + 3,6,1,254,64,64,128,4,1,1,6,1,3,240,1,2, + 2,6,2,0,128,128,6,9,9,6,0,255,4,8,16,16, + 32,32,64,64,128,4,7,7,6,1,0,96,144,144,144,144, + 144,96,4,7,7,6,1,0,32,224,32,32,32,32,240,4, + 7,7,6,1,0,96,144,16,32,64,128,240,4,7,7,6, + 1,0,96,144,16,96,16,144,96,5,7,7,6,0,0,16, + 48,80,144,248,16,16,4,7,7,6,1,0,240,128,128,224, + 16,16,224,4,7,7,6,1,0,112,128,128,224,144,144,96, + 4,7,7,6,1,0,240,144,16,32,32,64,64,4,7,7, + 6,1,0,96,144,144,96,144,144,96,4,7,7,6,1,0, + 96,144,144,112,16,16,224,1,5,5,6,2,0,128,128,0, + 128,128,2,6,6,6,1,254,64,64,0,64,64,128,3,5, + 5,6,1,1,32,64,128,64,32,4,3,3,6,1,2,240, + 0,240,3,5,5,6,2,1,128,64,32,64,128,4,6,6, + 6,1,0,96,144,32,64,0,64,6,8,8,6,0,255,56, + 68,156,168,168,156,64,56,6,6,6,6,0,0,112,40,72, + 120,72,204,5,6,6,6,0,0,240,72,112,72,72,240,4, + 6,6,6,1,0,96,144,128,128,144,96,5,6,6,6,0, + 0,240,72,72,72,72,240,5,6,6,6,0,0,248,72,112, + 64,72,248,5,6,6,6,0,0,248,72,112,80,64,224,4, + 6,6,6,1,0,96,144,128,176,144,96,6,6,6,6,0, + 0,204,72,120,72,72,204,5,6,6,6,1,0,248,32,32, + 32,32,248,5,6,6,6,1,0,120,16,16,144,144,96,6, + 6,6,6,0,0,216,80,96,80,72,228,5,6,6,6,1, + 0,224,64,64,64,72,248,5,6,6,6,1,0,136,216,168, + 168,136,216,6,6,6,6,0,0,220,72,104,88,72,200,4, + 6,6,6,1,0,96,144,144,144,144,96,5,6,6,6,1, + 0,240,72,72,112,64,224,4,7,7,6,1,255,96,144,144, + 144,144,96,112,6,6,6,6,0,0,240,72,72,112,72,228, + 4,6,6,6,1,0,112,128,96,16,144,224,5,6,6,6, + 0,0,248,168,32,32,32,112,6,6,6,6,0,0,204,72, + 72,72,72,48,6,6,6,6,0,0,220,136,80,80,80,32, + 6,6,6,6,0,0,220,136,168,168,80,80,5,6,6,6, + 1,0,216,80,32,32,80,216,5,6,6,6,1,0,216,136, + 80,32,32,112,4,6,6,6,1,0,240,144,32,64,144,240, + 2,9,9,6,2,254,192,128,128,128,128,128,128,128,192,5, + 9,9,6,1,255,128,128,64,64,32,32,16,16,8,2,9, + 9,6,2,254,192,64,64,64,64,64,64,64,192,5,3,3, + 6,1,4,32,80,136,6,1,1,6,0,254,252,2,2,2, + 6,1,6,128,64,5,5,5,6,0,0,96,16,112,144,104, + 5,7,7,6,0,0,192,64,112,72,72,72,240,4,5,5, + 6,1,0,96,144,128,144,96,5,7,7,6,1,0,48,16, + 112,144,144,144,104,4,5,5,6,1,0,96,144,224,144,96, + 4,7,7,6,1,0,48,64,240,64,64,64,240,5,7,7, + 6,1,254,104,144,144,144,112,16,224,6,7,7,6,0,0, + 192,64,112,72,72,72,236,5,7,7,6,1,0,32,0,96, + 32,32,32,248,3,9,9,6,1,254,32,0,224,32,32,32, + 32,32,192,5,7,7,6,0,0,192,64,88,80,96,80,216, + 5,7,7,6,1,0,96,32,32,32,32,32,248,6,5,5, + 6,0,0,208,168,168,168,172,6,5,5,6,0,0,176,72, + 72,72,236,4,5,5,6,1,0,96,144,144,144,96,5,7, + 7,6,0,254,176,72,72,72,112,64,240,5,7,7,6,1, + 254,104,144,144,144,112,16,56,5,5,5,6,1,0,184,64, + 64,64,240,4,5,5,6,1,0,112,128,96,16,224,5,7, + 7,6,1,0,64,64,240,64,64,72,48,6,5,5,6,0, + 0,216,72,72,72,52,6,5,5,6,0,0,204,68,40,40, + 16,6,5,5,6,0,0,172,168,168,80,80,5,5,5,6, + 0,0,216,80,32,80,216,5,7,7,6,0,254,216,72,72, + 72,48,32,192,4,5,5,6,1,0,240,32,64,144,240,3, + 9,9,6,2,254,32,64,64,64,128,64,64,64,32,1,9, + 9,6,2,254,128,128,128,128,128,128,128,128,128,3,9,9, + 6,2,254,128,64,64,64,32,64,64,64,128,4,2,2,6, + 1,3,80,160,255}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--14-100-100-100-M-90-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 9, '1' Height: 10 + Calculated Max Values w=10 h=13 x= 4 y= 8 dx= 9 dy= 0 ascent=12 len=24 + Font Bounding box w=14 h=20 x=-3 y=-5 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR10[3052] U8G_SECTION(".progmem.u8g_font_courR10") = { + 0,14,20,253,251,9,1,224,3,220,32,255,253,12,253,10, + 253,0,0,0,9,0,1,1,9,9,9,3,0,128,128,128, + 128,128,128,0,128,128,4,4,4,9,2,6,144,144,144,144, + 5,10,10,9,2,255,80,80,80,248,80,80,248,80,80,80, + 5,13,13,9,2,254,32,32,120,136,128,192,48,8,136,240, + 32,32,32,8,10,10,9,0,0,96,144,144,115,12,48,204, + 18,18,12,6,8,8,9,1,0,56,64,64,64,168,144,152, + 100,1,4,4,9,3,5,128,128,128,128,3,12,12,9,3, + 254,32,64,64,128,128,128,128,128,128,64,64,32,3,12,12, + 9,2,254,128,64,64,32,32,32,32,32,32,64,64,128,5, + 6,6,9,1,3,32,32,248,32,80,136,7,7,7,9,1, + 1,16,16,16,254,16,16,16,3,4,4,9,2,254,96,96, + 192,128,6,1,1,9,1,4,252,2,2,2,9,3,0,192, + 192,6,11,11,9,1,255,4,8,8,16,16,32,32,64,64, + 128,128,6,10,10,9,1,0,48,72,132,132,132,132,132,132, + 72,48,5,10,10,9,1,0,32,96,160,32,32,32,32,32, + 32,248,5,10,10,9,1,0,112,136,136,8,16,32,64,128, + 136,248,6,10,10,9,1,0,56,68,4,4,24,4,4,4, + 132,120,6,10,10,9,1,0,24,40,40,72,72,136,136,252, + 8,28,6,10,10,9,1,0,124,64,64,64,120,4,4,4, + 132,120,6,10,10,9,1,0,56,64,128,128,184,196,132,132, + 68,56,6,10,10,9,1,0,252,132,4,8,8,8,16,16, + 16,16,5,10,10,9,2,0,112,136,136,136,112,136,136,136, + 136,112,6,10,10,9,1,0,112,136,132,132,140,116,4,4, + 8,112,2,7,7,9,3,0,192,192,0,0,0,192,192,3, + 9,9,9,2,254,96,96,0,0,0,96,96,192,128,7,7, + 7,9,0,1,6,24,96,128,96,24,6,7,3,3,9,1, + 3,254,0,254,7,7,7,9,1,1,192,48,12,2,12,48, + 192,5,9,9,9,1,0,112,136,8,8,48,32,0,32,32, + 7,10,10,9,1,255,56,68,132,156,164,164,158,128,64,56, + 9,9,18,9,255,0,56,0,8,0,20,0,20,0,34,0, + 62,0,65,0,65,0,247,128,7,9,9,9,0,0,252,66, + 66,66,124,66,66,66,252,7,9,9,9,1,0,58,70,130, + 128,128,128,128,66,60,8,9,9,9,0,0,252,66,65,65, + 65,65,65,66,252,7,9,9,9,1,0,254,66,66,72,120, + 72,66,66,254,7,9,9,9,1,0,254,66,66,72,120,72, + 64,64,240,8,9,9,9,0,0,58,70,130,128,128,143,130, + 66,60,8,9,9,9,0,0,231,66,66,66,126,66,66,66, + 231,5,9,9,9,2,0,248,32,32,32,32,32,32,32,248, + 7,9,9,9,1,0,62,8,8,8,8,136,136,136,112,8, + 9,9,9,0,0,238,68,72,80,112,72,68,68,227,8,9, + 9,9,0,0,248,32,32,32,32,33,33,33,255,9,9,18, + 9,0,0,227,128,99,0,85,0,85,0,73,0,73,0,65, + 0,65,0,227,128,8,9,9,9,0,0,231,98,82,82,74, + 74,70,70,226,8,9,9,9,0,0,60,66,129,129,129,129, + 129,66,60,7,9,9,9,1,0,252,66,66,66,66,124,64, + 64,240,8,11,11,9,0,254,60,66,129,129,129,129,129,66, + 60,49,94,8,9,9,9,0,0,252,66,66,66,68,120,68, + 66,225,6,9,9,9,1,0,116,140,132,128,120,4,132,196, + 184,7,9,9,9,1,0,254,146,146,16,16,16,16,16,124, + 8,9,9,9,0,0,231,66,66,66,66,66,66,66,60,9, + 9,18,9,0,0,227,128,65,0,65,0,34,0,34,0,20, + 0,20,0,8,0,8,0,9,9,18,9,0,0,227,128,65, + 0,73,0,73,0,85,0,85,0,34,0,34,0,34,0,8, + 9,9,9,0,0,231,66,36,36,24,36,36,66,231,7,9, + 9,9,0,0,238,68,68,40,40,16,16,16,124,6,9,9, + 9,1,0,252,132,136,16,32,32,68,132,252,3,12,12,9, + 3,254,224,128,128,128,128,128,128,128,128,128,128,224,6,11, + 11,9,1,255,128,64,64,32,32,16,16,8,8,4,4,3, + 12,12,9,2,254,224,32,32,32,32,32,32,32,32,32,32, + 224,5,5,5,9,2,4,32,80,80,136,136,9,1,2,9, + 0,253,255,128,4,2,2,9,2,8,192,48,7,7,7,9, + 1,0,120,132,4,124,132,132,122,8,10,10,9,0,0,192, + 64,64,92,98,65,65,65,98,220,7,7,7,9,1,0,58, + 70,130,128,128,66,60,8,10,10,9,0,0,6,2,2,58, + 70,130,130,130,70,59,7,7,7,9,1,0,56,68,130,254, + 128,66,60,7,10,10,9,1,0,30,32,32,252,32,32,32, + 32,32,248,8,10,10,9,0,253,59,70,130,130,130,70,58, + 2,4,120,8,10,10,9,0,0,192,64,64,92,98,66,66, + 66,66,231,5,10,10,9,2,0,32,32,0,224,32,32,32, + 32,32,248,5,13,13,9,1,253,8,8,0,248,8,8,8, + 8,8,8,8,16,224,7,10,10,9,1,0,192,64,64,78, + 72,80,96,80,72,206,5,10,10,9,2,0,224,32,32,32, + 32,32,32,32,32,248,9,7,14,9,0,0,219,0,109,0, + 73,0,73,0,73,0,73,0,237,128,8,7,7,9,0,0, + 220,98,66,66,66,66,231,8,7,7,9,0,0,60,66,129, + 129,129,66,60,8,10,10,9,0,253,220,98,65,65,65,98, + 92,64,64,240,8,10,10,9,0,253,59,70,130,130,130,70, + 58,2,2,15,7,7,7,9,1,0,204,82,96,64,64,64, + 248,6,7,7,9,1,0,124,132,128,120,4,132,248,7,9, + 9,9,0,0,32,32,252,32,32,32,32,34,28,8,7,7, + 9,0,0,198,66,66,66,66,70,59,8,7,7,9,0,0, + 231,66,66,36,36,24,24,9,7,14,9,0,0,227,128,65, + 0,73,0,73,0,42,0,54,0,34,0,7,7,7,9,0, + 0,238,68,40,16,40,68,238,8,10,10,9,0,253,231,66, + 66,36,36,24,8,16,16,120,5,7,7,9,2,0,248,136, + 16,32,64,136,248,3,12,12,9,2,254,32,64,64,64,64, + 128,64,64,64,64,64,32,1,11,11,9,3,254,128,128,128, + 128,128,128,128,128,128,128,128,3,12,12,9,2,254,128,64, + 64,64,64,32,64,64,64,64,64,128,6,2,2,9,1,3, + 100,152,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,9,0,1,1,9,9,9,4,254,128, + 128,0,128,128,128,128,128,128,5,9,9,9,2,0,32,32, + 120,136,128,136,112,32,32,7,9,9,9,1,0,24,36,32, + 32,120,32,32,66,252,6,6,6,9,1,1,180,72,132,132, + 72,180,7,9,9,9,1,0,238,68,68,40,124,16,124,16, + 56,1,11,11,9,3,254,128,128,128,128,0,0,128,128,128, + 128,128,6,10,10,9,1,255,60,68,64,240,136,68,60,8, + 136,240,5,1,1,9,2,8,216,8,9,9,9,0,0,60, + 66,153,165,161,165,153,66,60,4,6,6,9,2,3,192,32, + 224,176,0,240,8,7,7,9,0,0,17,34,68,204,68,34, + 17,7,3,3,9,1,3,254,2,2,6,1,1,9,1,4, + 252,8,9,9,9,0,0,60,66,185,165,185,169,165,66,60, + 4,1,1,9,2,8,240,4,4,4,9,2,6,96,144,144, + 96,7,7,7,9,1,1,16,16,254,16,16,0,254,4,6, + 6,9,2,4,96,144,16,32,64,240,4,6,6,9,2,4, + 96,144,96,16,144,96,4,2,2,9,2,8,48,192,8,10, + 10,9,0,253,198,66,66,66,66,70,123,64,64,64,7,10, + 10,9,1,255,126,148,148,148,116,20,20,20,20,62,2,2, + 2,9,3,3,192,192,3,3,3,9,2,253,64,32,224,3, + 6,6,9,3,4,64,192,64,64,64,224,4,6,6,9,2, + 3,96,144,144,96,0,240,8,7,7,9,0,0,136,68,34, + 51,34,68,136,10,10,20,9,255,0,64,0,193,0,66,0, + 68,0,68,128,233,128,18,128,20,128,39,192,64,128,10,10, + 20,9,255,0,64,0,193,0,66,0,68,0,69,128,234,64, + 16,64,16,128,33,0,67,192,10,10,20,9,255,0,96,0, + 145,0,98,0,20,0,148,128,105,128,18,128,20,128,39,192, + 64,128,5,9,9,9,2,254,32,32,0,32,96,128,128,136, + 112,9,12,24,9,0,0,48,0,12,0,0,0,56,0,8, + 0,20,0,20,0,34,0,62,0,65,0,65,0,247,128,9, + 12,24,9,0,0,12,0,48,0,0,0,56,0,8,0,20, + 0,20,0,34,0,62,0,65,0,65,0,247,128,9,12,24, + 9,0,0,8,0,20,0,0,0,56,0,8,0,20,0,20, + 0,34,0,62,0,65,0,65,0,247,128,9,12,24,9,0, + 0,26,0,44,0,0,0,56,0,8,0,20,0,20,0,34, + 0,62,0,65,0,65,0,247,128,9,11,22,9,0,0,54, + 0,0,0,56,0,8,0,20,0,20,0,34,0,62,0,65, + 0,65,0,247,128,9,12,24,9,0,0,24,0,36,0,24, + 0,56,0,8,0,20,0,20,0,34,0,62,0,65,0,65, + 0,247,128,9,9,18,9,255,0,31,128,12,128,20,0,20, + 128,39,128,60,128,68,0,68,128,239,128,7,12,12,9,1, + 253,58,70,130,128,128,128,128,66,60,16,8,56,7,12,12, + 9,1,0,96,24,0,254,66,66,72,120,72,66,66,254,7, + 12,12,9,1,0,12,48,0,254,66,66,72,120,72,66,66, + 254,7,12,12,9,1,0,16,40,0,254,66,66,72,120,72, + 66,66,254,7,11,11,9,1,0,108,0,254,66,66,72,120, + 72,66,66,254,5,12,12,9,2,0,192,48,0,248,32,32, + 32,32,32,32,32,248,5,12,12,9,2,0,24,96,0,248, + 32,32,32,32,32,32,32,248,5,12,12,9,2,0,32,80, + 0,248,32,32,32,32,32,32,32,248,5,11,11,9,2,0, + 216,0,248,32,32,32,32,32,32,32,248,8,9,9,9,0, + 0,252,66,65,65,241,65,65,66,252,8,12,12,9,0,0, + 26,44,0,231,98,82,82,74,74,70,70,226,8,12,12,9, + 0,0,48,12,0,60,66,129,129,129,129,129,66,60,8,12, + 12,9,0,0,12,48,0,60,66,129,129,129,129,129,66,60, + 8,12,12,9,0,0,16,40,0,60,66,129,129,129,129,129, + 66,60,8,12,12,9,0,0,26,44,0,60,66,129,129,129, + 129,129,66,60,8,11,11,9,0,0,102,0,60,66,129,129, + 129,129,129,66,60,7,7,7,9,1,1,130,68,40,16,40, + 68,130,9,9,18,9,255,0,30,128,33,0,66,128,68,128, + 72,128,80,128,32,128,97,0,158,0,8,12,12,9,0,0, + 48,12,0,231,66,66,66,66,66,66,66,60,8,12,12,9, + 0,0,12,48,0,231,66,66,66,66,66,66,66,60,8,12, + 12,9,0,0,16,40,0,231,66,66,66,66,66,66,66,60, + 8,11,11,9,0,0,102,0,231,66,66,66,66,66,66,66, + 60,7,12,12,9,1,0,12,48,0,238,68,68,40,40,16, + 16,16,124,7,9,9,9,0,0,224,64,124,66,66,66,124, + 64,224,7,9,9,9,0,0,56,68,68,88,68,66,66,82, + 204,7,10,10,9,1,0,96,24,0,120,132,4,124,132,140, + 118,7,10,10,9,1,0,24,96,0,120,132,4,124,132,140, + 118,7,10,10,9,1,0,16,40,0,120,132,4,124,132,140, + 118,7,10,10,9,1,0,52,88,0,120,132,4,124,132,140, + 118,7,9,9,9,1,0,108,0,120,132,4,124,132,140,118, + 7,10,10,9,1,0,48,72,48,120,132,4,124,132,140,118, + 8,7,7,9,0,0,118,137,9,127,136,137,118,7,10,10, + 9,1,253,58,70,130,128,128,66,60,16,8,56,7,10,10, + 9,1,0,96,24,0,56,68,130,254,128,66,60,7,10,10, + 9,1,0,12,48,0,56,68,130,254,128,66,60,7,10,10, + 9,1,0,16,40,0,56,68,130,254,128,66,60,7,9,9, + 9,1,0,108,0,56,68,130,254,128,66,60,5,10,10,9, + 2,0,192,48,0,224,32,32,32,32,32,248,5,10,10,9, + 2,0,48,192,0,224,32,32,32,32,32,248,5,10,10,9, + 2,0,32,80,0,224,32,32,32,32,32,248,5,9,9,9, + 2,0,216,0,224,32,32,32,32,32,248,8,12,12,9,0, + 0,2,228,24,40,68,60,66,129,129,129,66,60,8,10,10, + 9,0,0,26,44,0,220,98,66,66,66,66,231,8,10,10, + 9,0,0,48,12,0,60,66,129,129,129,66,60,8,10,10, + 9,0,0,12,48,0,60,66,129,129,129,66,60,8,10,10, + 9,0,0,16,40,0,60,66,129,129,129,66,60,8,10,10, + 9,0,0,26,44,0,60,66,129,129,129,66,60,8,9,9, + 9,0,0,108,0,60,66,129,129,129,66,60,8,7,7,9, + 0,1,24,24,0,255,0,24,24,8,7,7,9,0,0,61, + 70,137,145,161,66,188,8,10,10,9,0,0,48,12,0,198, + 66,66,66,66,70,59,8,10,10,9,0,0,12,48,0,198, + 66,66,66,66,70,59,8,10,10,9,0,0,16,40,0,198, + 66,66,66,66,70,59,8,9,9,9,0,0,108,0,198,66, + 66,66,66,70,59,8,13,13,9,0,253,6,24,0,231,66, + 66,36,36,24,8,16,16,120,8,12,12,9,0,253,192,64, + 92,98,65,65,65,98,92,64,64,240,8,12,12,9,0,253, + 54,0,231,66,66,36,36,24,8,16,16,120}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--14-100-100-100-M-90-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 9, '1' Height: 10 + Calculated Max Values w= 9 h=13 x= 3 y= 8 dx= 9 dy= 0 ascent=11 len=18 + Font Bounding box w=14 h=20 x=-3 y=-5 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =11 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR10r[1443] U8G_SECTION(".progmem.u8g_font_courR10r") = { + 0,14,20,253,251,9,1,224,3,220,32,127,253,11,253,10, + 253,0,0,0,9,0,1,1,9,9,9,3,0,128,128,128, + 128,128,128,0,128,128,4,4,4,9,2,6,144,144,144,144, + 5,10,10,9,2,255,80,80,80,248,80,80,248,80,80,80, + 5,13,13,9,2,254,32,32,120,136,128,192,48,8,136,240, + 32,32,32,8,10,10,9,0,0,96,144,144,115,12,48,204, + 18,18,12,6,8,8,9,1,0,56,64,64,64,168,144,152, + 100,1,4,4,9,3,5,128,128,128,128,3,12,12,9,3, + 254,32,64,64,128,128,128,128,128,128,64,64,32,3,12,12, + 9,2,254,128,64,64,32,32,32,32,32,32,64,64,128,5, + 6,6,9,1,3,32,32,248,32,80,136,7,7,7,9,1, + 1,16,16,16,254,16,16,16,3,4,4,9,2,254,96,96, + 192,128,6,1,1,9,1,4,252,2,2,2,9,3,0,192, + 192,6,11,11,9,1,255,4,8,8,16,16,32,32,64,64, + 128,128,6,10,10,9,1,0,48,72,132,132,132,132,132,132, + 72,48,5,10,10,9,1,0,32,96,160,32,32,32,32,32, + 32,248,5,10,10,9,1,0,112,136,136,8,16,32,64,128, + 136,248,6,10,10,9,1,0,56,68,4,4,24,4,4,4, + 132,120,6,10,10,9,1,0,24,40,40,72,72,136,136,252, + 8,28,6,10,10,9,1,0,124,64,64,64,120,4,4,4, + 132,120,6,10,10,9,1,0,56,64,128,128,184,196,132,132, + 68,56,6,10,10,9,1,0,252,132,4,8,8,8,16,16, + 16,16,5,10,10,9,2,0,112,136,136,136,112,136,136,136, + 136,112,6,10,10,9,1,0,112,136,132,132,140,116,4,4, + 8,112,2,7,7,9,3,0,192,192,0,0,0,192,192,3, + 9,9,9,2,254,96,96,0,0,0,96,96,192,128,7,7, + 7,9,0,1,6,24,96,128,96,24,6,7,3,3,9,1, + 3,254,0,254,7,7,7,9,1,1,192,48,12,2,12,48, + 192,5,9,9,9,1,0,112,136,8,8,48,32,0,32,32, + 7,10,10,9,1,255,56,68,132,156,164,164,158,128,64,56, + 9,9,18,9,255,0,56,0,8,0,20,0,20,0,34,0, + 62,0,65,0,65,0,247,128,7,9,9,9,0,0,252,66, + 66,66,124,66,66,66,252,7,9,9,9,1,0,58,70,130, + 128,128,128,128,66,60,8,9,9,9,0,0,252,66,65,65, + 65,65,65,66,252,7,9,9,9,1,0,254,66,66,72,120, + 72,66,66,254,7,9,9,9,1,0,254,66,66,72,120,72, + 64,64,240,8,9,9,9,0,0,58,70,130,128,128,143,130, + 66,60,8,9,9,9,0,0,231,66,66,66,126,66,66,66, + 231,5,9,9,9,2,0,248,32,32,32,32,32,32,32,248, + 7,9,9,9,1,0,62,8,8,8,8,136,136,136,112,8, + 9,9,9,0,0,238,68,72,80,112,72,68,68,227,8,9, + 9,9,0,0,248,32,32,32,32,33,33,33,255,9,9,18, + 9,0,0,227,128,99,0,85,0,85,0,73,0,73,0,65, + 0,65,0,227,128,8,9,9,9,0,0,231,98,82,82,74, + 74,70,70,226,8,9,9,9,0,0,60,66,129,129,129,129, + 129,66,60,7,9,9,9,1,0,252,66,66,66,66,124,64, + 64,240,8,11,11,9,0,254,60,66,129,129,129,129,129,66, + 60,49,94,8,9,9,9,0,0,252,66,66,66,68,120,68, + 66,225,6,9,9,9,1,0,116,140,132,128,120,4,132,196, + 184,7,9,9,9,1,0,254,146,146,16,16,16,16,16,124, + 8,9,9,9,0,0,231,66,66,66,66,66,66,66,60,9, + 9,18,9,0,0,227,128,65,0,65,0,34,0,34,0,20, + 0,20,0,8,0,8,0,9,9,18,9,0,0,227,128,65, + 0,73,0,73,0,85,0,85,0,34,0,34,0,34,0,8, + 9,9,9,0,0,231,66,36,36,24,36,36,66,231,7,9, + 9,9,0,0,238,68,68,40,40,16,16,16,124,6,9,9, + 9,1,0,252,132,136,16,32,32,68,132,252,3,12,12,9, + 3,254,224,128,128,128,128,128,128,128,128,128,128,224,6,11, + 11,9,1,255,128,64,64,32,32,16,16,8,8,4,4,3, + 12,12,9,2,254,224,32,32,32,32,32,32,32,32,32,32, + 224,5,5,5,9,2,4,32,80,80,136,136,9,1,2,9, + 0,253,255,128,4,2,2,9,2,8,192,48,7,7,7,9, + 1,0,120,132,4,124,132,132,122,8,10,10,9,0,0,192, + 64,64,92,98,65,65,65,98,220,7,7,7,9,1,0,58, + 70,130,128,128,66,60,8,10,10,9,0,0,6,2,2,58, + 70,130,130,130,70,59,7,7,7,9,1,0,56,68,130,254, + 128,66,60,7,10,10,9,1,0,30,32,32,252,32,32,32, + 32,32,248,8,10,10,9,0,253,59,70,130,130,130,70,58, + 2,4,120,8,10,10,9,0,0,192,64,64,92,98,66,66, + 66,66,231,5,10,10,9,2,0,32,32,0,224,32,32,32, + 32,32,248,5,13,13,9,1,253,8,8,0,248,8,8,8, + 8,8,8,8,16,224,7,10,10,9,1,0,192,64,64,78, + 72,80,96,80,72,206,5,10,10,9,2,0,224,32,32,32, + 32,32,32,32,32,248,9,7,14,9,0,0,219,0,109,0, + 73,0,73,0,73,0,73,0,237,128,8,7,7,9,0,0, + 220,98,66,66,66,66,231,8,7,7,9,0,0,60,66,129, + 129,129,66,60,8,10,10,9,0,253,220,98,65,65,65,98, + 92,64,64,240,8,10,10,9,0,253,59,70,130,130,130,70, + 58,2,2,15,7,7,7,9,1,0,204,82,96,64,64,64, + 248,6,7,7,9,1,0,124,132,128,120,4,132,248,7,9, + 9,9,0,0,32,32,252,32,32,32,32,34,28,8,7,7, + 9,0,0,198,66,66,66,66,70,59,8,7,7,9,0,0, + 231,66,66,36,36,24,24,9,7,14,9,0,0,227,128,65, + 0,73,0,73,0,42,0,54,0,34,0,7,7,7,9,0, + 0,238,68,40,16,40,68,238,8,10,10,9,0,253,231,66, + 66,36,36,24,8,16,16,120,5,7,7,9,2,0,248,136, + 16,32,64,136,248,3,12,12,9,2,254,32,64,64,64,64, + 128,64,64,64,64,64,32,1,11,11,9,3,254,128,128,128, + 128,128,128,128,128,128,128,128,3,12,12,9,2,254,128,64, + 64,64,64,32,64,64,64,64,64,128,6,2,2,9,1,3, + 100,152,255}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--17-120-100-100-M-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 11 + Calculated Max Values w=10 h=14 x= 4 y= 8 dx=10 dy= 0 ascent=14 len=28 + Font Bounding box w=15 h=24 x=-3 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR12[3471] U8G_SECTION(".progmem.u8g_font_courR12") = { + 0,15,24,253,250,10,2,12,4,92,32,255,253,14,253,11, + 253,0,0,0,10,0,1,1,11,11,10,4,0,128,128,128, + 128,128,128,128,128,0,128,128,4,5,5,10,3,6,144,144, + 144,144,144,7,12,12,10,1,255,40,40,40,40,254,40,40, + 254,40,40,40,40,5,13,13,10,2,255,32,32,120,136,128, + 128,112,8,8,136,240,32,32,7,11,11,10,1,0,112,136, + 136,112,6,56,192,28,34,34,28,6,9,9,10,1,0,48, + 72,64,32,100,148,136,136,116,1,5,5,10,4,6,128,128, + 128,128,128,3,13,13,10,4,254,32,64,64,64,128,128,128, + 128,128,64,64,64,32,3,13,13,10,2,254,128,64,64,64, + 32,32,32,32,32,64,64,64,128,7,6,6,10,1,5,16, + 16,254,56,40,68,7,9,9,10,1,0,16,16,16,16,254, + 16,16,16,16,3,4,4,10,2,254,96,96,64,128,7,1, + 1,10,1,4,254,2,2,2,10,3,0,192,192,6,13,13, + 10,2,254,4,4,8,8,16,16,16,32,32,64,64,128,128, + 7,11,11,10,1,0,56,68,68,130,130,130,130,130,68,68, + 56,7,11,11,10,1,0,16,48,208,16,16,16,16,16,16, + 16,254,7,11,11,10,1,0,56,68,130,2,2,4,8,16, + 32,66,254,7,11,11,10,1,0,56,68,130,4,24,4,2, + 2,130,68,56,7,11,11,10,1,0,12,12,20,36,36,68, + 132,254,4,4,30,7,11,11,10,1,0,126,64,64,64,120, + 68,2,2,130,68,56,7,11,11,10,2,0,28,96,64,128, + 184,196,130,130,130,68,56,6,11,11,10,1,0,252,132,4, + 8,8,8,16,16,16,32,32,6,11,11,10,2,0,48,72, + 132,132,120,72,132,132,132,72,48,7,11,11,10,1,0,56, + 68,130,130,70,58,2,2,4,12,112,2,7,7,10,3,0, + 192,192,0,0,0,192,192,3,9,9,10,2,254,96,96,0, + 0,0,96,96,64,128,8,9,9,10,1,0,1,6,24,96, + 128,96,24,6,1,8,4,4,10,1,3,255,0,0,255,8, + 9,9,10,1,0,128,96,24,6,1,6,24,96,128,6,10, + 10,10,2,0,120,132,132,4,24,32,32,0,32,32,9,12, + 24,10,0,255,62,0,65,0,65,0,128,128,156,128,164,128, + 164,128,164,128,159,0,64,0,65,0,62,0,9,10,20,10, + 0,0,120,0,20,0,20,0,34,0,34,0,34,0,62,0, + 65,0,65,0,227,128,8,10,10,10,1,0,252,66,65,66, + 124,66,65,65,66,252,8,10,10,10,1,0,29,99,65,128, + 128,128,128,65,99,28,8,10,10,10,1,0,248,70,66,65, + 65,65,65,66,70,248,7,10,10,10,1,0,254,66,66,72, + 120,72,64,66,66,254,7,10,10,10,1,0,254,66,66,72, + 120,72,64,64,64,240,9,10,20,10,1,0,29,0,99,0, + 65,0,128,0,128,0,135,128,129,0,65,0,97,0,30,0, + 8,10,10,10,1,0,231,66,66,66,126,66,66,66,66,231, + 7,10,10,10,1,0,254,16,16,16,16,16,16,16,16,254, + 8,10,10,10,1,0,63,4,4,4,4,4,132,132,132,120, + 8,10,10,10,1,0,247,66,68,72,80,120,68,68,66,243, + 8,10,10,10,1,0,248,32,32,32,32,32,33,33,33,255, + 9,10,20,10,0,0,193,128,99,0,99,0,85,0,85,0, + 73,0,73,0,65,0,65,0,227,128,9,10,20,10,0,0, + 231,128,97,0,81,0,81,0,73,0,73,0,69,0,69,0, + 67,0,243,0,8,10,10,10,1,0,60,66,66,129,129,129, + 129,66,66,60,8,10,10,10,1,0,252,66,65,65,66,124, + 64,64,64,248,8,12,12,10,1,254,60,66,66,129,129,129, + 129,66,66,60,17,46,8,10,10,10,1,0,248,68,66,66, + 68,120,68,66,66,243,7,10,10,10,1,0,58,70,130,128, + 112,12,2,130,196,184,7,10,10,10,1,0,254,146,146,146, + 16,16,16,16,16,124,9,10,20,10,0,0,247,128,65,0, + 65,0,65,0,65,0,65,0,65,0,65,0,34,0,28,0, + 9,10,20,10,0,0,227,128,65,0,65,0,34,0,34,0, + 34,0,20,0,20,0,8,0,8,0,9,10,20,10,0,0, + 247,128,65,0,73,0,73,0,85,0,85,0,85,0,34,0, + 34,0,34,0,9,10,20,10,0,0,227,128,65,0,34,0, + 20,0,8,0,8,0,20,0,34,0,65,0,227,128,9,10, + 20,10,0,0,227,128,65,0,34,0,34,0,20,0,8,0, + 8,0,8,0,8,0,62,0,7,10,10,10,1,0,254,130, + 132,8,16,16,32,66,130,254,3,13,13,10,4,254,224,128, + 128,128,128,128,128,128,128,128,128,128,224,6,13,13,10,2, + 254,128,128,64,64,32,32,32,16,16,8,8,4,4,3,13, + 13,10,2,254,224,32,32,32,32,32,32,32,32,32,32,32, + 224,7,4,4,10,1,7,16,40,68,130,10,1,2,10,0, + 253,255,192,3,3,3,10,2,8,128,64,32,7,7,7,10, + 1,0,56,68,4,124,132,132,122,8,10,10,10,0,0,192, + 64,64,92,98,65,65,65,98,220,7,7,7,10,1,0,58, + 70,130,128,128,66,60,8,10,10,10,1,0,6,2,2,58, + 70,130,130,130,70,59,7,7,7,10,1,0,56,68,130,254, + 128,66,60,7,10,10,10,2,0,28,34,32,252,32,32,32, + 32,32,252,8,10,10,10,1,253,59,70,130,130,130,70,58, + 2,2,60,8,10,10,10,1,0,192,64,64,92,98,66,66, + 66,66,231,7,10,10,10,1,0,16,16,0,112,16,16,16, + 16,16,254,5,13,13,10,2,253,16,16,0,248,8,8,8, + 8,8,8,8,8,240,8,10,10,10,1,0,192,64,64,79, + 68,72,112,72,68,207,7,10,10,10,1,0,112,16,16,16, + 16,16,16,16,16,254,9,7,14,10,0,0,219,0,109,0, + 73,0,73,0,73,0,73,0,237,128,8,7,7,10,1,0, + 220,98,66,66,66,66,231,7,7,7,10,1,0,56,68,130, + 130,130,68,56,8,10,10,10,1,253,220,98,65,65,65,98, + 92,64,64,240,8,10,10,10,1,253,59,70,130,130,130,70, + 58,2,2,15,8,7,7,10,1,0,238,49,32,32,32,32, + 252,6,7,7,10,2,0,124,132,128,120,4,132,248,8,9, + 9,10,0,0,32,32,254,32,32,32,32,33,30,8,7,7, + 10,1,0,198,66,66,66,66,70,59,9,7,14,10,0,0, + 247,128,65,0,34,0,34,0,20,0,20,0,8,0,9,7, + 14,10,0,0,227,128,65,0,73,0,42,0,42,0,54,0, + 34,0,7,7,7,10,1,0,238,68,40,16,40,68,238,9, + 10,20,10,0,253,227,128,65,0,34,0,34,0,20,0,20, + 0,8,0,8,0,16,0,120,0,6,7,7,10,2,0,252, + 136,16,32,64,132,252,3,13,13,10,3,254,32,64,64,64, + 64,64,128,64,64,64,64,64,32,1,12,12,10,4,254,128, + 128,128,128,128,128,128,128,128,128,128,128,3,13,13,10,3, + 254,128,64,64,64,64,64,32,64,64,64,64,64,128,7,3, + 3,10,1,3,96,146,12,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,10,0,1,1,10, + 10,10,4,253,128,128,0,128,128,128,128,128,128,128,5,10, + 10,10,2,0,32,32,120,136,128,128,136,112,32,32,8,10, + 10,10,1,0,28,34,32,32,248,32,32,32,65,255,7,7, + 7,10,1,1,130,124,68,68,68,124,130,9,10,20,10,0, + 0,227,128,65,0,34,0,34,0,20,0,62,0,8,0,62, + 0,8,0,62,0,1,12,12,10,4,254,128,128,128,128,128, + 0,0,128,128,128,128,128,9,12,24,10,0,255,31,0,33, + 0,33,0,112,0,140,0,131,0,96,128,24,128,7,0,66, + 0,66,0,124,0,4,2,2,10,3,8,144,144,10,10,20, + 10,0,0,30,0,33,0,64,128,142,64,144,64,144,64,142, + 64,64,128,33,0,30,0,5,7,7,10,2,3,112,8,120, + 136,120,0,248,7,7,7,10,1,0,18,36,72,144,72,36, + 18,7,4,4,10,1,2,254,2,2,2,7,1,1,10,1, + 4,254,10,10,20,10,0,0,30,0,33,0,64,128,156,64, + 146,64,156,64,146,64,64,128,33,0,30,0,5,1,1,10, + 2,8,248,5,5,5,10,2,6,112,136,136,136,112,7,9, + 9,10,1,0,16,16,16,254,16,16,16,0,254,4,6,6, + 10,2,5,96,144,32,64,144,240,4,6,6,10,3,5,96, + 144,32,16,144,96,3,3,3,10,4,8,32,64,128,8,10, + 10,10,1,253,198,66,66,66,66,70,123,64,64,64,7,12, + 12,10,1,255,62,84,148,148,148,84,52,20,20,20,20,62, + 2,2,2,10,4,4,192,192,3,4,4,10,3,253,64,64, + 32,224,5,6,6,10,2,5,32,224,32,32,32,248,5,7, + 7,10,2,3,112,136,136,136,112,0,248,7,7,7,10,1, + 0,144,72,36,18,36,72,144,10,11,22,10,0,0,32,0, + 224,64,32,128,33,0,34,0,252,128,9,128,18,128,36,128, + 71,192,0,128,10,11,22,10,0,0,32,0,224,64,32,128, + 33,0,34,0,253,128,10,64,16,128,33,0,66,64,3,192, + 10,11,22,10,0,0,96,0,144,64,32,128,17,0,146,0, + 100,128,9,128,18,128,36,128,71,192,0,128,6,10,10,10, + 1,253,16,16,0,16,16,96,128,132,132,120,9,14,28,10, + 0,0,32,0,16,0,8,0,0,0,120,0,20,0,20,0, + 34,0,34,0,34,0,62,0,65,0,65,0,227,128,9,14, + 28,10,0,0,4,0,8,0,16,0,0,0,120,0,20,0, + 20,0,34,0,34,0,34,0,62,0,65,0,65,0,227,128, + 9,14,28,10,0,0,8,0,20,0,34,0,0,0,120,0, + 20,0,20,0,34,0,34,0,34,0,62,0,65,0,65,0, + 227,128,9,13,26,10,0,0,50,0,76,0,0,0,120,0, + 20,0,20,0,34,0,34,0,34,0,62,0,65,0,65,0, + 227,128,9,13,26,10,0,0,36,0,36,0,0,0,120,0, + 20,0,20,0,34,0,34,0,34,0,62,0,65,0,65,0, + 227,128,9,14,28,10,0,0,24,0,36,0,36,0,24,0, + 120,0,20,0,20,0,34,0,34,0,34,0,62,0,65,0, + 65,0,227,128,9,10,20,10,0,0,127,128,40,128,40,128, + 74,0,78,0,122,0,72,128,136,128,136,128,223,128,8,13, + 13,10,1,253,29,99,65,128,128,128,128,65,99,28,16,8, + 56,7,14,14,10,1,0,32,16,8,0,254,66,66,72,120, + 72,64,66,66,254,7,14,14,10,1,0,4,8,16,0,254, + 66,66,72,120,72,64,66,66,254,7,14,14,10,1,0,16, + 40,68,0,254,66,66,72,120,72,64,66,66,254,7,13,13, + 10,1,0,36,36,0,254,66,66,72,120,72,64,66,66,254, + 7,14,14,10,1,0,32,16,8,0,254,16,16,16,16,16, + 16,16,16,254,7,14,14,10,1,0,8,16,32,0,254,16, + 16,16,16,16,16,16,16,254,7,14,14,10,1,0,16,40, + 68,0,254,16,16,16,16,16,16,16,16,254,7,13,13,10, + 1,0,68,68,0,254,16,16,16,16,16,16,16,16,254,8, + 10,10,10,1,0,248,70,66,65,241,65,65,66,70,248,9, + 13,26,10,0,0,25,0,38,0,0,0,231,128,97,0,81, + 0,81,0,73,0,73,0,69,0,69,0,67,0,243,0,8, + 14,14,10,1,0,32,16,8,0,60,66,66,129,129,129,129, + 66,66,60,8,14,14,10,1,0,4,8,16,0,60,66,66, + 129,129,129,129,66,66,60,8,14,14,10,1,0,8,20,34, + 0,60,66,66,129,129,129,129,66,66,60,8,13,13,10,1, + 0,50,76,0,60,66,66,129,129,129,129,66,66,60,8,13, + 13,10,1,0,36,36,0,60,66,66,129,129,129,129,66,66, + 60,7,7,7,10,1,1,130,68,40,16,40,68,130,8,10, + 10,10,1,0,61,66,66,133,137,145,161,66,66,188,9,14, + 28,10,0,0,16,0,8,0,4,0,0,0,247,128,65,0, + 65,0,65,0,65,0,65,0,65,0,65,0,34,0,28,0, + 9,14,28,10,0,0,2,0,4,0,8,0,0,0,247,128, + 65,0,65,0,65,0,65,0,65,0,65,0,65,0,34,0, + 28,0,9,14,28,10,0,0,8,0,20,0,34,0,0,0, + 247,128,65,0,65,0,65,0,65,0,65,0,65,0,65,0, + 34,0,28,0,9,13,26,10,0,0,34,0,34,0,0,0, + 247,128,65,0,65,0,65,0,65,0,65,0,65,0,65,0, + 34,0,28,0,9,14,28,10,0,0,2,0,4,0,8,0, + 0,0,227,128,65,0,34,0,34,0,20,0,8,0,8,0, + 8,0,8,0,62,0,8,10,10,10,1,0,224,64,124,66, + 65,66,124,64,64,224,7,11,11,10,1,0,56,68,68,72, + 88,68,66,66,66,82,204,7,11,11,10,1,0,32,16,8, + 0,56,68,4,124,132,132,122,7,11,11,10,1,0,4,8, + 16,0,56,68,4,124,132,132,122,7,11,11,10,1,0,16, + 40,68,0,56,68,4,124,132,132,122,7,10,10,10,1,0, + 50,76,0,56,68,4,124,132,132,122,7,10,10,10,1,0, + 36,36,0,56,68,4,124,132,132,122,7,12,12,10,1,0, + 24,36,36,24,0,56,68,4,124,132,132,122,9,7,14,10, + 0,0,55,0,72,128,8,128,127,128,136,0,136,128,119,0, + 7,10,10,10,1,253,58,70,130,128,128,66,60,16,8,56, + 7,11,11,10,1,0,32,16,8,0,56,68,130,254,128,66, + 60,7,11,11,10,1,0,4,8,16,0,56,68,130,254,128, + 66,60,7,11,11,10,1,0,16,40,68,0,56,68,130,254, + 128,66,60,7,10,10,10,1,0,36,36,0,56,68,130,254, + 128,66,60,7,11,11,10,1,0,32,16,8,0,112,16,16, + 16,16,16,254,7,11,11,10,1,0,8,16,32,0,112,16, + 16,16,16,16,254,7,11,11,10,1,0,16,40,68,0,112, + 16,16,16,16,16,254,7,10,10,10,1,0,72,72,0,112, + 16,16,16,16,16,254,7,11,11,10,1,0,230,24,104,4, + 60,66,130,130,130,68,56,8,10,10,10,1,0,50,76,0, + 220,98,66,66,66,66,231,7,11,11,10,1,0,32,16,8, + 0,56,68,130,130,130,68,56,7,11,11,10,1,0,8,16, + 32,0,56,68,130,130,130,68,56,7,11,11,10,1,0,16, + 40,68,0,56,68,130,130,130,68,56,7,10,10,10,1,0, + 50,76,0,56,68,130,130,130,68,56,7,10,10,10,1,0, + 68,68,0,56,68,130,130,130,68,56,8,7,7,10,1,1, + 24,24,0,255,0,24,24,7,9,9,10,1,255,2,58,68, + 138,146,162,68,184,128,8,11,11,10,1,0,32,16,8,0, + 198,66,66,66,66,70,59,8,11,11,10,1,0,4,8,16, + 0,198,66,66,66,66,70,59,8,11,11,10,1,0,16,40, + 68,0,198,66,66,66,66,70,59,8,10,10,10,1,0,36, + 36,0,198,66,66,66,66,70,59,9,14,28,10,0,253,2, + 0,4,0,8,0,0,0,227,128,65,0,34,0,34,0,20, + 0,20,0,8,0,8,0,16,0,120,0,8,14,14,10,1, + 253,192,64,64,64,92,98,65,65,65,98,92,64,64,240,9, + 13,26,10,0,253,18,0,18,0,0,0,227,128,65,0,34, + 0,34,0,20,0,20,0,8,0,8,0,16,0,120,0}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--17-120-100-100-M-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 11 + Calculated Max Values w=10 h=13 x= 4 y= 8 dx=10 dy= 0 ascent=12 len=24 + Font Bounding box w=15 h=24 x=-3 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR12r[1592] U8G_SECTION(".progmem.u8g_font_courR12r") = { + 0,15,24,253,250,10,2,12,4,92,32,127,253,12,253,11, + 253,0,0,0,10,0,1,1,11,11,10,4,0,128,128,128, + 128,128,128,128,128,0,128,128,4,5,5,10,3,6,144,144, + 144,144,144,7,12,12,10,1,255,40,40,40,40,254,40,40, + 254,40,40,40,40,5,13,13,10,2,255,32,32,120,136,128, + 128,112,8,8,136,240,32,32,7,11,11,10,1,0,112,136, + 136,112,6,56,192,28,34,34,28,6,9,9,10,1,0,48, + 72,64,32,100,148,136,136,116,1,5,5,10,4,6,128,128, + 128,128,128,3,13,13,10,4,254,32,64,64,64,128,128,128, + 128,128,64,64,64,32,3,13,13,10,2,254,128,64,64,64, + 32,32,32,32,32,64,64,64,128,7,6,6,10,1,5,16, + 16,254,56,40,68,7,9,9,10,1,0,16,16,16,16,254, + 16,16,16,16,3,4,4,10,2,254,96,96,64,128,7,1, + 1,10,1,4,254,2,2,2,10,3,0,192,192,6,13,13, + 10,2,254,4,4,8,8,16,16,16,32,32,64,64,128,128, + 7,11,11,10,1,0,56,68,68,130,130,130,130,130,68,68, + 56,7,11,11,10,1,0,16,48,208,16,16,16,16,16,16, + 16,254,7,11,11,10,1,0,56,68,130,2,2,4,8,16, + 32,66,254,7,11,11,10,1,0,56,68,130,4,24,4,2, + 2,130,68,56,7,11,11,10,1,0,12,12,20,36,36,68, + 132,254,4,4,30,7,11,11,10,1,0,126,64,64,64,120, + 68,2,2,130,68,56,7,11,11,10,2,0,28,96,64,128, + 184,196,130,130,130,68,56,6,11,11,10,1,0,252,132,4, + 8,8,8,16,16,16,32,32,6,11,11,10,2,0,48,72, + 132,132,120,72,132,132,132,72,48,7,11,11,10,1,0,56, + 68,130,130,70,58,2,2,4,12,112,2,7,7,10,3,0, + 192,192,0,0,0,192,192,3,9,9,10,2,254,96,96,0, + 0,0,96,96,64,128,8,9,9,10,1,0,1,6,24,96, + 128,96,24,6,1,8,4,4,10,1,3,255,0,0,255,8, + 9,9,10,1,0,128,96,24,6,1,6,24,96,128,6,10, + 10,10,2,0,120,132,132,4,24,32,32,0,32,32,9,12, + 24,10,0,255,62,0,65,0,65,0,128,128,156,128,164,128, + 164,128,164,128,159,0,64,0,65,0,62,0,9,10,20,10, + 0,0,120,0,20,0,20,0,34,0,34,0,34,0,62,0, + 65,0,65,0,227,128,8,10,10,10,1,0,252,66,65,66, + 124,66,65,65,66,252,8,10,10,10,1,0,29,99,65,128, + 128,128,128,65,99,28,8,10,10,10,1,0,248,70,66,65, + 65,65,65,66,70,248,7,10,10,10,1,0,254,66,66,72, + 120,72,64,66,66,254,7,10,10,10,1,0,254,66,66,72, + 120,72,64,64,64,240,9,10,20,10,1,0,29,0,99,0, + 65,0,128,0,128,0,135,128,129,0,65,0,97,0,30,0, + 8,10,10,10,1,0,231,66,66,66,126,66,66,66,66,231, + 7,10,10,10,1,0,254,16,16,16,16,16,16,16,16,254, + 8,10,10,10,1,0,63,4,4,4,4,4,132,132,132,120, + 8,10,10,10,1,0,247,66,68,72,80,120,68,68,66,243, + 8,10,10,10,1,0,248,32,32,32,32,32,33,33,33,255, + 9,10,20,10,0,0,193,128,99,0,99,0,85,0,85,0, + 73,0,73,0,65,0,65,0,227,128,9,10,20,10,0,0, + 231,128,97,0,81,0,81,0,73,0,73,0,69,0,69,0, + 67,0,243,0,8,10,10,10,1,0,60,66,66,129,129,129, + 129,66,66,60,8,10,10,10,1,0,252,66,65,65,66,124, + 64,64,64,248,8,12,12,10,1,254,60,66,66,129,129,129, + 129,66,66,60,17,46,8,10,10,10,1,0,248,68,66,66, + 68,120,68,66,66,243,7,10,10,10,1,0,58,70,130,128, + 112,12,2,130,196,184,7,10,10,10,1,0,254,146,146,146, + 16,16,16,16,16,124,9,10,20,10,0,0,247,128,65,0, + 65,0,65,0,65,0,65,0,65,0,65,0,34,0,28,0, + 9,10,20,10,0,0,227,128,65,0,65,0,34,0,34,0, + 34,0,20,0,20,0,8,0,8,0,9,10,20,10,0,0, + 247,128,65,0,73,0,73,0,85,0,85,0,85,0,34,0, + 34,0,34,0,9,10,20,10,0,0,227,128,65,0,34,0, + 20,0,8,0,8,0,20,0,34,0,65,0,227,128,9,10, + 20,10,0,0,227,128,65,0,34,0,34,0,20,0,8,0, + 8,0,8,0,8,0,62,0,7,10,10,10,1,0,254,130, + 132,8,16,16,32,66,130,254,3,13,13,10,4,254,224,128, + 128,128,128,128,128,128,128,128,128,128,224,6,13,13,10,2, + 254,128,128,64,64,32,32,32,16,16,8,8,4,4,3,13, + 13,10,2,254,224,32,32,32,32,32,32,32,32,32,32,32, + 224,7,4,4,10,1,7,16,40,68,130,10,1,2,10,0, + 253,255,192,3,3,3,10,2,8,128,64,32,7,7,7,10, + 1,0,56,68,4,124,132,132,122,8,10,10,10,0,0,192, + 64,64,92,98,65,65,65,98,220,7,7,7,10,1,0,58, + 70,130,128,128,66,60,8,10,10,10,1,0,6,2,2,58, + 70,130,130,130,70,59,7,7,7,10,1,0,56,68,130,254, + 128,66,60,7,10,10,10,2,0,28,34,32,252,32,32,32, + 32,32,252,8,10,10,10,1,253,59,70,130,130,130,70,58, + 2,2,60,8,10,10,10,1,0,192,64,64,92,98,66,66, + 66,66,231,7,10,10,10,1,0,16,16,0,112,16,16,16, + 16,16,254,5,13,13,10,2,253,16,16,0,248,8,8,8, + 8,8,8,8,8,240,8,10,10,10,1,0,192,64,64,79, + 68,72,112,72,68,207,7,10,10,10,1,0,112,16,16,16, + 16,16,16,16,16,254,9,7,14,10,0,0,219,0,109,0, + 73,0,73,0,73,0,73,0,237,128,8,7,7,10,1,0, + 220,98,66,66,66,66,231,7,7,7,10,1,0,56,68,130, + 130,130,68,56,8,10,10,10,1,253,220,98,65,65,65,98, + 92,64,64,240,8,10,10,10,1,253,59,70,130,130,130,70, + 58,2,2,15,8,7,7,10,1,0,238,49,32,32,32,32, + 252,6,7,7,10,2,0,124,132,128,120,4,132,248,8,9, + 9,10,0,0,32,32,254,32,32,32,32,33,30,8,7,7, + 10,1,0,198,66,66,66,66,70,59,9,7,14,10,0,0, + 247,128,65,0,34,0,34,0,20,0,20,0,8,0,9,7, + 14,10,0,0,227,128,65,0,73,0,42,0,42,0,54,0, + 34,0,7,7,7,10,1,0,238,68,40,16,40,68,238,9, + 10,20,10,0,253,227,128,65,0,34,0,34,0,20,0,20, + 0,8,0,8,0,16,0,120,0,6,7,7,10,2,0,252, + 136,16,32,64,132,252,3,13,13,10,3,254,32,64,64,64, + 64,64,128,64,64,64,64,64,32,1,12,12,10,4,254,128, + 128,128,128,128,128,128,128,128,128,128,128,3,13,13,10,3, + 254,128,64,64,64,64,64,32,64,64,64,64,64,128,7,3, + 3,10,1,3,96,146,12,255}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--20-140-100-100-M-110-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 12 + Calculated Max Values w=11 h=16 x= 5 y=10 dx=11 dy= 0 ascent=15 len=32 + Font Bounding box w=16 h=26 x=-3 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =15 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR14[4276] U8G_SECTION(".progmem.u8g_font_courR14") = { + 0,16,26,253,249,11,2,74,5,74,32,255,252,15,252,12, + 252,0,0,0,11,0,1,2,12,12,11,4,0,192,192,192, + 192,192,192,64,64,0,0,192,192,6,5,5,11,3,7,204, + 204,204,68,68,8,15,15,11,1,254,18,18,18,18,18,127, + 36,36,36,254,36,36,36,36,36,6,15,15,11,2,254,16, + 16,116,140,132,128,96,24,4,132,196,184,16,16,16,9,12, + 24,11,1,0,56,0,68,0,68,0,68,0,57,128,14,0, + 48,0,206,0,17,0,17,0,17,0,14,0,7,10,10,11, + 2,0,56,64,64,64,32,116,136,136,152,102,2,5,5,11, + 4,7,192,192,192,64,64,3,14,14,11,5,254,32,64,64, + 128,128,128,128,128,128,128,128,64,64,32,3,14,14,11,3, + 254,128,64,64,32,32,32,32,32,32,32,32,64,64,128,7, + 8,8,11,2,4,16,16,16,254,16,40,68,68,9,9,18, + 11,1,1,8,0,8,0,8,0,8,0,255,128,8,0,8, + 0,8,0,8,0,4,5,5,11,3,253,48,48,96,64,128, + 8,1,1,11,1,5,255,2,2,2,11,4,0,192,192,8, + 16,16,11,1,253,1,1,2,2,4,4,8,8,16,16,32, + 32,64,64,128,128,7,12,12,11,2,0,56,68,130,130,130, + 130,130,130,130,130,68,56,7,12,12,11,2,0,48,208,16, + 16,16,16,16,16,16,16,16,254,8,12,12,11,1,0,28, + 34,65,65,1,2,4,8,16,33,65,255,7,12,12,11,2, + 0,120,132,2,2,4,56,4,2,2,2,132,120,7,12,12, + 11,2,0,12,20,20,36,36,68,68,132,254,4,4,30,8, + 12,12,11,1,0,126,64,64,64,92,98,1,1,1,1,194, + 60,7,12,12,11,2,0,28,96,64,128,128,184,196,130,130, + 130,68,56,7,12,12,11,2,0,254,130,2,2,4,4,4, + 4,8,8,8,8,7,12,12,11,2,0,56,68,130,130,68, + 56,68,130,130,130,68,56,7,12,12,11,2,0,56,68,130, + 130,130,70,58,2,2,4,12,112,2,8,8,11,4,0,192, + 192,0,0,0,0,192,192,4,11,11,11,2,253,48,48,0, + 0,0,0,48,48,96,64,128,10,9,18,11,0,1,0,192, + 3,0,12,0,48,0,192,0,48,0,12,0,3,0,0,192, + 9,4,8,11,1,3,255,128,0,0,0,0,255,128,10,9, + 18,11,0,1,192,0,48,0,12,0,3,0,0,192,3,0, + 12,0,48,0,192,0,7,11,11,11,2,0,124,130,130,2, + 2,28,16,16,0,24,24,8,13,13,11,2,255,56,68,130, + 130,142,146,146,146,143,128,128,67,60,11,11,22,11,0,0, + 60,0,4,0,10,0,10,0,17,0,17,0,32,128,63,128, + 64,64,64,64,241,224,9,11,22,11,1,0,252,0,66,0, + 65,0,65,0,66,0,126,0,65,0,64,128,64,128,65,0, + 254,0,9,11,22,11,1,0,30,128,97,128,64,128,128,0, + 128,0,128,0,128,0,128,0,64,128,97,0,30,0,9,11, + 22,11,1,0,252,0,67,0,65,0,64,128,64,128,64,128, + 64,128,64,128,65,0,67,0,252,0,8,11,11,11,1,0, + 255,65,65,65,72,120,72,65,65,65,255,8,11,11,11,1, + 0,255,65,65,65,72,120,72,64,64,64,240,10,11,22,11, + 1,0,30,128,97,128,64,128,128,0,128,0,128,0,131,192, + 128,128,64,128,97,0,30,0,9,11,22,11,1,0,227,128, + 65,0,65,0,65,0,65,0,127,0,65,0,65,0,65,0, + 65,0,227,128,7,11,11,11,2,0,254,16,16,16,16,16, + 16,16,16,16,254,9,11,22,11,1,0,31,128,2,0,2, + 0,2,0,2,0,2,0,130,0,130,0,130,0,68,0,56, + 0,10,11,22,11,1,0,243,192,65,0,66,0,68,0,72, + 0,88,0,100,0,66,0,66,0,65,0,241,192,9,11,22, + 11,1,0,248,0,32,0,32,0,32,0,32,0,32,0,32, + 0,32,128,32,128,32,128,255,128,11,11,22,11,0,0,224, + 224,96,192,81,64,81,64,74,64,74,64,68,64,68,64,64, + 64,64,64,241,224,9,11,22,11,1,0,231,128,97,0,81, + 0,81,0,73,0,73,0,69,0,69,0,67,0,67,0,241, + 0,9,11,22,11,1,0,28,0,99,0,65,0,128,128,128, + 128,128,128,128,128,128,128,65,0,99,0,28,0,9,11,22, + 11,1,0,254,0,65,0,64,128,64,128,65,0,126,0,64, + 0,64,0,64,0,64,0,248,0,9,13,26,11,1,254,28, + 0,99,0,65,0,128,128,128,128,128,128,128,128,128,128,65, + 0,99,0,28,0,56,128,71,0,10,11,22,11,1,0,254, + 0,65,0,64,128,64,128,65,0,126,0,68,0,66,0,66, + 0,65,0,240,192,8,11,11,11,1,0,61,67,129,128,64, + 60,2,1,129,194,188,9,11,22,11,1,0,255,128,136,128, + 136,128,136,128,8,0,8,0,8,0,8,0,8,0,8,0, + 62,0,10,11,22,11,0,0,243,192,64,128,64,128,64,128, + 64,128,64,128,64,128,64,128,64,128,33,0,30,0,11,11, + 22,11,0,0,241,224,64,64,64,64,32,128,32,128,17,0, + 17,0,10,0,10,0,4,0,4,0,11,11,22,11,0,0, + 241,224,64,64,68,64,68,64,68,64,42,128,42,128,42,128, + 42,128,17,0,17,0,9,11,22,11,1,0,227,128,65,0, + 34,0,34,0,20,0,8,0,20,0,34,0,34,0,65,0, + 227,128,9,11,22,11,1,0,227,128,65,0,34,0,34,0, + 20,0,20,0,8,0,8,0,8,0,8,0,62,0,7,11, + 11,11,2,0,254,130,130,4,8,16,32,64,130,130,254,3, + 15,15,11,5,253,224,128,128,128,128,128,128,128,128,128,128, + 128,128,128,224,8,16,16,11,2,253,128,128,64,64,32,32, + 16,16,8,8,4,4,2,2,1,1,3,15,15,11,3,253, + 224,32,32,32,32,32,32,32,32,32,32,32,32,32,224,7, + 4,4,11,2,8,16,40,68,130,11,1,2,11,0,252,255, + 224,3,3,3,11,4,9,128,64,32,9,8,16,11,1,0, + 60,0,66,0,2,0,126,0,130,0,130,0,134,0,123,128, + 9,12,24,11,1,0,192,0,64,0,64,0,64,0,94,0, + 97,0,64,128,64,128,64,128,64,128,97,0,222,0,8,8, + 8,11,1,0,61,67,129,128,128,128,67,60,9,12,24,11, + 1,0,3,0,1,0,1,0,1,0,61,0,67,0,129,0, + 129,0,129,0,129,0,67,0,61,128,8,8,8,11,1,0, + 60,66,129,255,128,128,67,60,8,12,12,11,2,0,15,16, + 32,32,254,32,32,32,32,32,32,254,9,12,24,11,1,252, + 61,128,67,0,129,0,129,0,129,0,129,0,67,0,61,0, + 1,0,1,0,2,0,124,0,9,12,24,11,1,0,192,0, + 64,0,64,0,64,0,94,0,97,0,65,0,65,0,65,0, + 65,0,65,0,227,128,7,11,11,11,2,0,16,16,0,112, + 16,16,16,16,16,16,254,6,15,15,11,2,252,8,8,0, + 252,4,4,4,4,4,4,4,4,4,8,240,9,12,24,11, + 1,0,192,0,64,0,64,0,64,0,79,0,68,0,72,0, + 112,0,72,0,68,0,66,0,199,128,7,12,12,11,2,0, + 240,16,16,16,16,16,16,16,16,16,16,254,11,8,16,11, + 0,0,217,128,102,64,68,64,68,64,68,64,68,64,68,64, + 230,96,9,8,16,11,1,0,222,0,97,0,65,0,65,0, + 65,0,65,0,65,0,227,128,8,8,8,11,1,0,60,66, + 129,129,129,129,66,60,9,12,24,11,1,252,222,0,97,0, + 64,128,64,128,64,128,64,128,97,0,94,0,64,0,64,0, + 64,0,240,0,9,12,24,11,1,252,61,128,67,0,129,0, + 129,0,129,0,129,0,67,0,61,0,1,0,1,0,1,0, + 7,128,8,8,8,11,1,0,238,49,32,32,32,32,32,254, + 7,8,8,11,2,0,122,134,130,112,12,130,194,188,8,11, + 11,11,2,0,32,32,32,254,32,32,32,32,32,33,30,9, + 8,16,11,1,0,195,0,65,0,65,0,65,0,65,0,65, + 0,67,0,61,128,9,8,16,11,1,0,227,128,65,0,34, + 0,34,0,20,0,20,0,8,0,8,0,9,8,16,11,1, + 0,227,128,65,0,73,0,73,0,85,0,85,0,34,0,34, + 0,8,8,8,11,1,0,231,66,36,24,24,36,66,231,9, + 12,24,11,1,252,227,128,65,0,65,0,34,0,34,0,20, + 0,20,0,8,0,8,0,16,0,16,0,248,0,7,8,8, + 11,2,0,254,130,132,8,16,34,66,254,5,15,15,11,3, + 253,24,32,32,32,32,32,32,192,32,32,32,32,32,32,24, + 1,15,15,11,5,253,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,5,15,15,11,3,253,192,32,32,32,32, + 32,32,24,32,32,32,32,32,32,192,8,3,3,11,1,4, + 96,153,6,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,0,0,0,11,0,1,2,12,12,11,4,252, + 192,192,0,0,128,128,192,192,192,192,192,192,6,12,12,11, + 2,0,16,16,16,60,68,132,128,128,68,56,16,16,8,11, + 11,11,2,0,28,34,32,32,16,252,16,32,33,65,126,6, + 7,7,11,2,2,132,120,132,132,132,120,132,9,11,22,11, + 1,0,227,128,65,0,34,0,34,0,20,0,20,0,127,0, + 8,0,127,0,8,0,62,0,1,15,15,11,5,253,128,128, + 128,128,128,128,0,0,0,128,128,128,128,128,128,7,14,14, + 11,2,254,62,66,66,64,112,140,130,98,28,6,130,130,132, + 252,4,2,2,11,3,10,144,144,11,11,22,11,0,0,31, + 0,96,192,79,64,145,32,160,32,160,32,160,32,145,32,78, + 64,96,192,31,0,6,8,8,11,2,3,112,8,120,136,152, + 236,0,252,10,8,16,11,1,0,24,192,49,128,99,0,198, + 0,198,0,99,0,49,128,24,192,9,4,8,11,1,3,255, + 128,0,128,0,128,0,128,8,1,1,11,1,5,255,11,11, + 22,11,0,0,31,0,96,192,94,64,145,32,145,32,158,32, + 148,32,146,32,81,64,96,128,31,0,5,1,1,11,3,10, + 248,5,5,5,11,3,6,112,136,136,136,112,9,9,18,11, + 1,1,8,0,8,0,8,0,255,128,8,0,8,0,8,0, + 0,0,255,128,5,7,7,11,3,5,112,136,8,16,32,64, + 248,5,7,7,11,3,5,112,136,8,48,8,136,112,3,3, + 3,11,4,9,32,64,128,9,12,24,11,1,252,195,0,65, + 0,65,0,65,0,65,0,65,0,67,0,125,128,64,0,64, + 0,64,0,64,0,8,14,14,11,1,254,63,74,138,138,138, + 74,58,10,10,10,10,10,10,59,2,2,2,11,4,5,192, + 192,3,3,3,11,4,253,64,32,192,5,7,7,11,3,5, + 32,224,32,32,32,32,248,6,8,8,11,2,3,120,132,132, + 132,132,120,0,252,10,8,16,11,0,0,198,0,99,0,49, + 128,24,192,24,192,49,128,99,0,198,0,11,12,24,11,0, + 0,32,0,224,64,32,128,33,0,33,0,34,64,252,192,9, + 64,10,64,19,224,32,64,0,224,11,12,24,11,0,0,32, + 0,224,64,32,128,33,0,33,0,34,192,253,32,8,32,8, + 64,16,128,33,0,3,224,11,12,24,11,0,0,112,0,136, + 64,8,128,49,0,9,0,138,64,116,192,9,64,10,64,19, + 224,32,64,0,224,6,11,11,11,2,253,24,24,0,16,16, + 112,128,128,132,132,120,11,15,30,11,0,0,16,0,8,0, + 4,0,0,0,60,0,4,0,10,0,10,0,17,0,17,0, + 32,128,63,128,64,64,64,64,241,224,11,15,30,11,0,0, + 1,0,2,0,4,0,0,0,60,0,4,0,10,0,10,0, + 17,0,17,0,32,128,63,128,64,64,64,64,241,224,11,15, + 30,11,0,0,12,0,18,0,33,0,0,0,60,0,4,0, + 10,0,10,0,17,0,17,0,32,128,63,128,64,64,64,64, + 241,224,11,14,28,11,0,0,25,0,38,0,0,0,60,0, + 4,0,10,0,10,0,17,0,17,0,32,128,63,128,64,64, + 64,64,241,224,11,14,28,11,0,0,18,0,18,0,0,0, + 60,0,4,0,10,0,10,0,17,0,17,0,32,128,63,128, + 64,64,64,64,241,224,11,15,30,11,0,0,12,0,18,0, + 18,0,12,0,60,0,4,0,10,0,10,0,17,0,17,0, + 32,128,63,128,64,64,64,64,241,224,11,11,22,11,255,0, + 31,224,6,32,10,32,10,0,18,64,19,192,62,64,34,0, + 66,32,66,32,231,224,9,14,28,11,1,253,30,128,97,128, + 64,128,128,0,128,0,128,0,128,0,128,0,64,128,97,0, + 30,0,8,0,4,0,24,0,8,15,15,11,1,0,32,16, + 8,0,255,65,65,65,72,120,72,65,65,65,255,8,15,15, + 11,1,0,4,8,16,0,255,65,65,65,72,120,72,65,65, + 65,255,8,15,15,11,1,0,24,36,66,0,255,65,65,65, + 72,120,72,65,65,65,255,8,14,14,11,1,0,36,36,0, + 255,65,65,65,72,120,72,65,65,65,255,7,15,15,11,2, + 0,32,16,8,0,254,16,16,16,16,16,16,16,16,16,254, + 7,15,15,11,2,0,8,16,32,0,254,16,16,16,16,16, + 16,16,16,16,254,7,15,15,11,2,0,24,36,66,0,254, + 16,16,16,16,16,16,16,16,16,254,7,14,14,11,2,0, + 36,36,0,254,16,16,16,16,16,16,16,16,16,254,8,11, + 11,11,1,0,252,66,65,65,65,241,65,65,65,66,252,9, + 14,28,11,1,0,25,0,38,0,0,0,231,128,97,0,81, + 0,81,0,73,0,73,0,69,0,69,0,67,0,67,0,241, + 0,9,15,30,11,1,0,16,0,8,0,4,0,0,0,28, + 0,99,0,65,0,128,128,128,128,128,128,128,128,128,128,65, + 0,99,0,28,0,9,15,30,11,1,0,4,0,8,0,16, + 0,0,0,28,0,99,0,65,0,128,128,128,128,128,128,128, + 128,128,128,65,0,99,0,28,0,9,15,30,11,1,0,12, + 0,18,0,33,0,0,0,28,0,99,0,65,0,128,128,128, + 128,128,128,128,128,128,128,65,0,99,0,28,0,9,14,28, + 11,1,0,25,0,38,0,0,0,28,0,99,0,65,0,128, + 128,128,128,128,128,128,128,128,128,65,0,99,0,28,0,9, + 14,28,11,1,0,18,0,18,0,0,0,28,0,99,0,65, + 0,128,128,128,128,128,128,128,128,128,128,65,0,99,0,28, + 0,9,9,18,11,1,1,128,128,65,0,34,0,20,0,8, + 0,20,0,34,0,65,0,128,128,11,11,22,11,0,0,14, + 32,49,192,32,128,65,64,66,64,68,64,72,64,80,64,32, + 128,113,128,142,0,10,15,30,11,0,0,16,0,8,0,4, + 0,0,0,243,192,64,128,64,128,64,128,64,128,64,128,64, + 128,64,128,64,128,33,0,30,0,10,15,30,11,0,0,2, + 0,4,0,8,0,0,0,243,192,64,128,64,128,64,128,64, + 128,64,128,64,128,64,128,64,128,33,0,30,0,10,15,30, + 11,0,0,12,0,18,0,33,0,0,0,243,192,64,128,64, + 128,64,128,64,128,64,128,64,128,64,128,64,128,33,0,30, + 0,10,14,28,11,0,0,18,0,18,0,0,0,243,192,64, + 128,64,128,64,128,64,128,64,128,64,128,64,128,64,128,33, + 0,30,0,9,15,30,11,1,0,2,0,4,0,8,0,0, + 0,227,128,65,0,34,0,34,0,20,0,20,0,8,0,8, + 0,8,0,8,0,62,0,9,11,22,11,1,0,224,0,64, + 0,126,0,65,0,64,128,64,128,65,0,126,0,64,0,64, + 0,224,0,8,11,11,11,1,0,60,66,66,68,88,70,65, + 65,65,73,230,9,12,24,11,1,0,32,0,16,0,8,0, + 0,0,60,0,66,0,2,0,126,0,130,0,130,0,134,0, + 123,128,9,12,24,11,1,0,4,0,8,0,16,0,0,0, + 60,0,66,0,2,0,126,0,130,0,130,0,134,0,123,128, + 9,12,24,11,1,0,24,0,36,0,66,0,0,0,60,0, + 66,0,2,0,126,0,130,0,130,0,134,0,123,128,9,11, + 22,11,1,0,50,0,76,0,0,0,60,0,66,0,2,0, + 126,0,130,0,130,0,134,0,123,128,9,11,22,11,1,0, + 36,0,36,0,0,0,60,0,66,0,2,0,126,0,130,0, + 130,0,134,0,123,128,9,13,26,11,1,0,24,0,36,0, + 36,0,24,0,0,0,60,0,66,0,2,0,126,0,130,0, + 130,0,134,0,123,128,11,8,16,11,0,0,113,128,138,64, + 4,32,127,224,132,0,132,0,138,32,113,192,8,11,11,11, + 1,253,61,67,129,128,128,128,67,60,16,8,48,8,12,12, + 11,1,0,32,16,8,0,60,66,129,255,128,128,67,60,8, + 12,12,11,1,0,2,4,8,0,60,66,129,255,128,128,67, + 60,8,12,12,11,1,0,24,36,66,0,60,66,129,255,128, + 128,67,60,8,11,11,11,1,0,36,36,0,60,66,129,255, + 128,128,67,60,7,12,12,11,2,0,32,16,8,0,112,16, + 16,16,16,16,16,254,7,12,12,11,2,0,8,16,32,0, + 112,16,16,16,16,16,16,254,7,12,12,11,2,0,48,72, + 132,0,112,16,16,16,16,16,16,254,7,11,11,11,2,0, + 72,72,0,112,16,16,16,16,16,16,254,8,12,12,11,1, + 0,114,140,52,66,62,67,129,129,129,129,66,60,9,11,22, + 11,1,0,50,0,76,0,0,0,222,0,97,0,65,0,65, + 0,65,0,65,0,65,0,227,128,8,12,12,11,1,0,32, + 16,8,0,60,66,129,129,129,129,66,60,8,12,12,11,1, + 0,4,8,16,0,60,66,129,129,129,129,66,60,8,12,12, + 11,1,0,24,36,66,0,60,66,129,129,129,129,66,60,8, + 11,11,11,1,0,50,76,0,60,66,129,129,129,129,66,60, + 8,11,11,11,1,0,36,36,0,60,66,129,129,129,129,66, + 60,8,9,9,11,1,1,24,24,0,0,255,0,0,24,24, + 8,8,8,11,1,0,61,66,133,137,145,161,66,188,9,12, + 24,11,1,0,32,0,16,0,8,0,0,0,195,0,65,0, + 65,0,65,0,65,0,65,0,67,0,61,128,9,12,24,11, + 1,0,2,0,4,0,8,0,0,0,195,0,65,0,65,0, + 65,0,65,0,65,0,67,0,61,128,9,12,24,11,1,0, + 24,0,36,0,66,0,0,0,195,0,65,0,65,0,65,0, + 65,0,65,0,67,0,61,128,9,11,22,11,1,0,36,0, + 36,0,0,0,195,0,65,0,65,0,65,0,65,0,65,0, + 67,0,61,128,9,16,32,11,1,252,2,0,4,0,8,0, + 0,0,227,128,65,0,65,0,34,0,34,0,20,0,20,0, + 8,0,8,0,16,0,16,0,248,0,9,16,32,11,1,252, + 192,0,64,0,64,0,64,0,94,0,97,0,64,128,64,128, + 64,128,64,128,97,0,94,0,64,0,64,0,64,0,240,0, + 9,15,30,11,1,252,36,0,36,0,0,0,227,128,65,0, + 65,0,34,0,34,0,20,0,20,0,8,0,8,0,16,0, + 16,0,248,0}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--20-140-100-100-M-110-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 12 + Calculated Max Values w=11 h=16 x= 5 y= 9 dx=11 dy= 0 ascent=13 len=26 + Font Bounding box w=16 h=26 x=-3 y=-7 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR14r[1988] U8G_SECTION(".progmem.u8g_font_courR14r") = { + 0,16,26,253,249,11,2,74,5,74,32,127,252,13,252,12, + 252,0,0,0,11,0,1,2,12,12,11,4,0,192,192,192, + 192,192,192,64,64,0,0,192,192,6,5,5,11,3,7,204, + 204,204,68,68,8,15,15,11,1,254,18,18,18,18,18,127, + 36,36,36,254,36,36,36,36,36,6,15,15,11,2,254,16, + 16,116,140,132,128,96,24,4,132,196,184,16,16,16,9,12, + 24,11,1,0,56,0,68,0,68,0,68,0,57,128,14,0, + 48,0,206,0,17,0,17,0,17,0,14,0,7,10,10,11, + 2,0,56,64,64,64,32,116,136,136,152,102,2,5,5,11, + 4,7,192,192,192,64,64,3,14,14,11,5,254,32,64,64, + 128,128,128,128,128,128,128,128,64,64,32,3,14,14,11,3, + 254,128,64,64,32,32,32,32,32,32,32,32,64,64,128,7, + 8,8,11,2,4,16,16,16,254,16,40,68,68,9,9,18, + 11,1,1,8,0,8,0,8,0,8,0,255,128,8,0,8, + 0,8,0,8,0,4,5,5,11,3,253,48,48,96,64,128, + 8,1,1,11,1,5,255,2,2,2,11,4,0,192,192,8, + 16,16,11,1,253,1,1,2,2,4,4,8,8,16,16,32, + 32,64,64,128,128,7,12,12,11,2,0,56,68,130,130,130, + 130,130,130,130,130,68,56,7,12,12,11,2,0,48,208,16, + 16,16,16,16,16,16,16,16,254,8,12,12,11,1,0,28, + 34,65,65,1,2,4,8,16,33,65,255,7,12,12,11,2, + 0,120,132,2,2,4,56,4,2,2,2,132,120,7,12,12, + 11,2,0,12,20,20,36,36,68,68,132,254,4,4,30,8, + 12,12,11,1,0,126,64,64,64,92,98,1,1,1,1,194, + 60,7,12,12,11,2,0,28,96,64,128,128,184,196,130,130, + 130,68,56,7,12,12,11,2,0,254,130,2,2,4,4,4, + 4,8,8,8,8,7,12,12,11,2,0,56,68,130,130,68, + 56,68,130,130,130,68,56,7,12,12,11,2,0,56,68,130, + 130,130,70,58,2,2,4,12,112,2,8,8,11,4,0,192, + 192,0,0,0,0,192,192,4,11,11,11,2,253,48,48,0, + 0,0,0,48,48,96,64,128,10,9,18,11,0,1,0,192, + 3,0,12,0,48,0,192,0,48,0,12,0,3,0,0,192, + 9,4,8,11,1,3,255,128,0,0,0,0,255,128,10,9, + 18,11,0,1,192,0,48,0,12,0,3,0,0,192,3,0, + 12,0,48,0,192,0,7,11,11,11,2,0,124,130,130,2, + 2,28,16,16,0,24,24,8,13,13,11,2,255,56,68,130, + 130,142,146,146,146,143,128,128,67,60,11,11,22,11,0,0, + 60,0,4,0,10,0,10,0,17,0,17,0,32,128,63,128, + 64,64,64,64,241,224,9,11,22,11,1,0,252,0,66,0, + 65,0,65,0,66,0,126,0,65,0,64,128,64,128,65,0, + 254,0,9,11,22,11,1,0,30,128,97,128,64,128,128,0, + 128,0,128,0,128,0,128,0,64,128,97,0,30,0,9,11, + 22,11,1,0,252,0,67,0,65,0,64,128,64,128,64,128, + 64,128,64,128,65,0,67,0,252,0,8,11,11,11,1,0, + 255,65,65,65,72,120,72,65,65,65,255,8,11,11,11,1, + 0,255,65,65,65,72,120,72,64,64,64,240,10,11,22,11, + 1,0,30,128,97,128,64,128,128,0,128,0,128,0,131,192, + 128,128,64,128,97,0,30,0,9,11,22,11,1,0,227,128, + 65,0,65,0,65,0,65,0,127,0,65,0,65,0,65,0, + 65,0,227,128,7,11,11,11,2,0,254,16,16,16,16,16, + 16,16,16,16,254,9,11,22,11,1,0,31,128,2,0,2, + 0,2,0,2,0,2,0,130,0,130,0,130,0,68,0,56, + 0,10,11,22,11,1,0,243,192,65,0,66,0,68,0,72, + 0,88,0,100,0,66,0,66,0,65,0,241,192,9,11,22, + 11,1,0,248,0,32,0,32,0,32,0,32,0,32,0,32, + 0,32,128,32,128,32,128,255,128,11,11,22,11,0,0,224, + 224,96,192,81,64,81,64,74,64,74,64,68,64,68,64,64, + 64,64,64,241,224,9,11,22,11,1,0,231,128,97,0,81, + 0,81,0,73,0,73,0,69,0,69,0,67,0,67,0,241, + 0,9,11,22,11,1,0,28,0,99,0,65,0,128,128,128, + 128,128,128,128,128,128,128,65,0,99,0,28,0,9,11,22, + 11,1,0,254,0,65,0,64,128,64,128,65,0,126,0,64, + 0,64,0,64,0,64,0,248,0,9,13,26,11,1,254,28, + 0,99,0,65,0,128,128,128,128,128,128,128,128,128,128,65, + 0,99,0,28,0,56,128,71,0,10,11,22,11,1,0,254, + 0,65,0,64,128,64,128,65,0,126,0,68,0,66,0,66, + 0,65,0,240,192,8,11,11,11,1,0,61,67,129,128,64, + 60,2,1,129,194,188,9,11,22,11,1,0,255,128,136,128, + 136,128,136,128,8,0,8,0,8,0,8,0,8,0,8,0, + 62,0,10,11,22,11,0,0,243,192,64,128,64,128,64,128, + 64,128,64,128,64,128,64,128,64,128,33,0,30,0,11,11, + 22,11,0,0,241,224,64,64,64,64,32,128,32,128,17,0, + 17,0,10,0,10,0,4,0,4,0,11,11,22,11,0,0, + 241,224,64,64,68,64,68,64,68,64,42,128,42,128,42,128, + 42,128,17,0,17,0,9,11,22,11,1,0,227,128,65,0, + 34,0,34,0,20,0,8,0,20,0,34,0,34,0,65,0, + 227,128,9,11,22,11,1,0,227,128,65,0,34,0,34,0, + 20,0,20,0,8,0,8,0,8,0,8,0,62,0,7,11, + 11,11,2,0,254,130,130,4,8,16,32,64,130,130,254,3, + 15,15,11,5,253,224,128,128,128,128,128,128,128,128,128,128, + 128,128,128,224,8,16,16,11,2,253,128,128,64,64,32,32, + 16,16,8,8,4,4,2,2,1,1,3,15,15,11,3,253, + 224,32,32,32,32,32,32,32,32,32,32,32,32,32,224,7, + 4,4,11,2,8,16,40,68,130,11,1,2,11,0,252,255, + 224,3,3,3,11,4,9,128,64,32,9,8,16,11,1,0, + 60,0,66,0,2,0,126,0,130,0,130,0,134,0,123,128, + 9,12,24,11,1,0,192,0,64,0,64,0,64,0,94,0, + 97,0,64,128,64,128,64,128,64,128,97,0,222,0,8,8, + 8,11,1,0,61,67,129,128,128,128,67,60,9,12,24,11, + 1,0,3,0,1,0,1,0,1,0,61,0,67,0,129,0, + 129,0,129,0,129,0,67,0,61,128,8,8,8,11,1,0, + 60,66,129,255,128,128,67,60,8,12,12,11,2,0,15,16, + 32,32,254,32,32,32,32,32,32,254,9,12,24,11,1,252, + 61,128,67,0,129,0,129,0,129,0,129,0,67,0,61,0, + 1,0,1,0,2,0,124,0,9,12,24,11,1,0,192,0, + 64,0,64,0,64,0,94,0,97,0,65,0,65,0,65,0, + 65,0,65,0,227,128,7,11,11,11,2,0,16,16,0,112, + 16,16,16,16,16,16,254,6,15,15,11,2,252,8,8,0, + 252,4,4,4,4,4,4,4,4,4,8,240,9,12,24,11, + 1,0,192,0,64,0,64,0,64,0,79,0,68,0,72,0, + 112,0,72,0,68,0,66,0,199,128,7,12,12,11,2,0, + 240,16,16,16,16,16,16,16,16,16,16,254,11,8,16,11, + 0,0,217,128,102,64,68,64,68,64,68,64,68,64,68,64, + 230,96,9,8,16,11,1,0,222,0,97,0,65,0,65,0, + 65,0,65,0,65,0,227,128,8,8,8,11,1,0,60,66, + 129,129,129,129,66,60,9,12,24,11,1,252,222,0,97,0, + 64,128,64,128,64,128,64,128,97,0,94,0,64,0,64,0, + 64,0,240,0,9,12,24,11,1,252,61,128,67,0,129,0, + 129,0,129,0,129,0,67,0,61,0,1,0,1,0,1,0, + 7,128,8,8,8,11,1,0,238,49,32,32,32,32,32,254, + 7,8,8,11,2,0,122,134,130,112,12,130,194,188,8,11, + 11,11,2,0,32,32,32,254,32,32,32,32,32,33,30,9, + 8,16,11,1,0,195,0,65,0,65,0,65,0,65,0,65, + 0,67,0,61,128,9,8,16,11,1,0,227,128,65,0,34, + 0,34,0,20,0,20,0,8,0,8,0,9,8,16,11,1, + 0,227,128,65,0,73,0,73,0,85,0,85,0,34,0,34, + 0,8,8,8,11,1,0,231,66,36,24,24,36,66,231,9, + 12,24,11,1,252,227,128,65,0,65,0,34,0,34,0,20, + 0,20,0,8,0,8,0,16,0,16,0,248,0,7,8,8, + 11,2,0,254,130,132,8,16,34,66,254,5,15,15,11,3, + 253,24,32,32,32,32,32,32,192,32,32,32,32,32,32,24, + 1,15,15,11,5,253,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,5,15,15,11,3,253,192,32,32,32,32, + 32,32,24,32,32,32,32,32,32,192,8,3,3,11,1,4, + 96,153,6,255}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--25-180-100-100-M-150-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 15 + Calculated Max Values w=15 h=21 x= 7 y=12 dx=15 dy= 0 ascent=19 len=42 + Font Bounding box w=23 h=32 x=-5 y=-8 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-5 + X Font ascent =16 descent=-5 + Max Font ascent =19 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR18[6152] U8G_SECTION(".progmem.u8g_font_courR18") = { + 0,23,32,251,248,14,3,161,7,151,32,255,251,19,251,16, + 251,0,0,0,15,0,1,2,16,16,15,6,0,192,192,192, + 192,192,192,192,192,128,128,128,0,0,0,192,192,8,7,7, + 15,3,9,231,231,231,231,66,66,66,10,17,34,15,2,255, + 9,0,9,0,9,0,9,0,9,0,9,0,127,192,18,0, + 18,0,18,0,255,128,18,0,18,0,18,0,18,0,18,0, + 18,0,9,20,40,15,3,253,8,0,8,0,8,0,30,128, + 33,128,64,128,64,0,64,0,32,0,30,0,1,0,0,128, + 0,128,128,128,193,0,190,0,8,0,8,0,8,0,8,0, + 12,16,32,15,1,0,28,0,34,0,65,0,65,0,65,0, + 34,0,28,112,3,128,28,0,225,192,2,32,4,16,4,16, + 4,16,2,32,1,192,10,13,26,15,2,0,29,0,38,0, + 32,0,32,0,16,0,48,0,73,128,137,0,134,0,130,0, + 131,0,69,0,56,192,3,7,7,15,6,8,224,224,224,224, + 224,64,64,4,19,19,15,7,253,16,32,32,64,64,64,128, + 128,128,128,128,128,128,64,64,64,32,32,16,4,19,19,15, + 3,253,128,64,64,32,32,32,16,16,16,16,16,16,16,32, + 32,32,64,64,128,9,9,18,15,3,7,8,0,8,0,8, + 0,201,128,127,0,28,0,54,0,99,0,193,128,11,11,22, + 15,2,2,4,0,4,0,4,0,4,0,4,0,255,224,4, + 0,4,0,4,0,4,0,4,0,5,6,6,15,4,253,56, + 56,112,96,192,128,10,1,2,15,2,7,255,192,3,3,3, + 15,6,0,224,224,224,9,18,36,15,3,254,0,128,0,128, + 1,0,1,0,2,0,2,0,4,0,4,0,8,0,8,0, + 16,0,16,0,32,0,32,0,64,0,64,0,128,0,128,0, + 9,15,30,15,3,0,28,0,99,0,65,0,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,65,0, + 99,0,28,0,9,15,30,15,3,0,24,0,232,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,255,128,10,15,30,15,2,0,30,0, + 97,0,128,128,128,128,0,128,0,128,1,0,2,0,4,0, + 8,0,16,0,32,0,64,0,128,64,255,192,10,15,30,15, + 2,0,62,0,65,128,0,128,0,128,0,128,1,0,30,0, + 1,128,0,64,0,64,0,64,0,64,128,64,97,128,30,0, + 10,15,30,15,2,0,3,0,5,0,9,0,9,0,17,0, + 33,0,33,0,65,0,65,0,129,0,255,192,1,0,1,0, + 1,0,15,192,10,15,30,15,2,0,127,128,64,0,64,0, + 64,0,64,0,94,0,97,128,0,128,0,64,0,64,0,64, + 0,64,0,128,193,128,62,0,9,15,30,15,3,0,15,0, + 48,0,96,0,64,0,128,0,158,0,161,0,192,128,128,128, + 128,128,128,128,128,128,64,128,97,0,30,0,9,15,30,15, + 2,0,255,128,128,128,129,0,1,0,1,0,2,0,2,0, + 2,0,2,0,4,0,4,0,4,0,8,0,8,0,8,0, + 10,15,30,15,2,0,30,0,33,0,64,128,64,128,64,128, + 64,128,33,0,63,0,64,128,128,64,128,64,128,64,64,128, + 97,128,30,0,9,15,30,15,3,0,28,0,99,0,193,128, + 128,128,128,128,128,128,65,128,98,128,28,128,0,128,0,128, + 1,0,1,0,6,0,248,0,3,11,11,15,6,0,224,224, + 224,0,0,0,0,0,224,224,224,5,14,14,15,4,253,56, + 56,56,0,0,0,0,0,56,56,112,96,192,128,11,11,22, + 15,1,2,0,96,1,128,6,0,24,0,96,0,192,0,96, + 0,24,0,6,0,1,128,0,96,12,4,8,15,1,5,255, + 240,0,0,0,0,255,240,11,11,22,15,2,2,192,0,48, + 0,12,0,3,0,0,192,0,96,0,192,3,0,12,0,48, + 0,192,0,8,14,14,15,3,0,124,130,129,1,1,1,2, + 12,16,16,0,0,24,24,10,18,36,15,2,254,30,0,97, + 0,64,128,128,128,128,128,131,128,132,128,136,128,136,128,136, + 128,136,128,132,128,131,192,128,0,128,0,64,0,97,128,31, + 0,13,14,28,15,1,0,63,0,5,0,8,128,8,128,8, + 128,16,64,16,64,16,64,63,224,32,32,32,32,64,16,64, + 16,240,120,12,14,28,15,1,0,255,192,32,32,32,16,32, + 16,32,16,32,32,63,192,32,32,32,16,32,16,32,16,32, + 16,32,32,255,192,11,14,28,15,2,0,15,32,48,160,96, + 96,64,32,128,0,128,0,128,0,128,0,128,0,128,0,64, + 32,96,96,48,192,15,0,12,14,28,15,1,0,255,128,64, + 96,64,32,64,16,64,16,64,16,64,16,64,16,64,16,64, + 16,64,16,64,32,64,96,255,128,12,14,28,15,1,0,255, + 224,32,32,32,32,32,32,34,0,34,0,62,0,34,0,34, + 0,32,16,32,16,32,16,32,16,255,240,11,14,28,15,2, + 0,255,224,32,32,32,32,32,32,34,0,34,0,62,0,34, + 0,34,0,32,0,32,0,32,0,32,0,254,0,12,14,28, + 15,1,0,15,32,48,160,96,96,64,32,128,0,128,0,128, + 0,128,0,131,240,128,32,64,32,96,32,48,64,15,128,13, + 14,28,15,1,0,248,248,32,32,32,32,32,32,32,32,32, + 32,63,224,32,32,32,32,32,32,32,32,32,32,32,32,248, + 248,9,14,28,15,3,0,255,128,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,255,128,12,14,28,15,2,0,31,240,0,128,0,128,0, + 128,0,128,0,128,0,128,0,128,128,128,128,128,128,128,129, + 0,67,0,60,0,13,14,28,15,1,0,248,240,32,64,32, + 128,33,0,34,0,36,0,44,0,50,0,33,0,32,128,32, + 64,32,64,32,32,248,120,12,14,28,15,1,0,254,0,16, + 0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16, + 16,16,16,16,16,16,16,255,240,13,14,28,15,1,0,224, + 56,96,48,96,48,80,80,80,80,72,144,72,144,69,16,71, + 16,64,16,64,16,64,16,64,16,240,120,14,14,28,15,0, + 0,240,252,48,16,40,16,36,16,36,16,34,16,34,16,33, + 16,33,16,32,144,32,144,32,80,32,48,252,48,13,14,28, + 15,1,0,15,128,48,96,96,48,64,16,128,8,128,8,128, + 8,128,8,128,8,128,8,64,16,96,48,48,96,15,128,11, + 14,28,15,2,0,255,128,32,64,32,32,32,32,32,32,32, + 32,32,64,63,128,32,0,32,0,32,0,32,0,32,0,254, + 0,13,16,32,15,1,254,15,128,48,96,96,48,64,16,128, + 8,128,8,128,8,128,8,128,8,128,8,64,16,96,48,48, + 96,15,128,6,48,27,192,13,14,28,15,1,0,255,128,32, + 64,32,32,32,32,32,32,32,32,32,64,63,128,33,0,32, + 128,32,64,32,64,32,32,248,56,10,14,28,15,2,0,30, + 64,97,64,128,192,128,64,128,0,96,0,30,0,1,128,0, + 64,0,64,128,64,192,64,160,128,159,0,11,14,28,15,2, + 0,255,224,132,32,132,32,132,32,132,32,4,0,4,0,4, + 0,4,0,4,0,4,0,4,0,4,0,63,128,12,14,28, + 15,1,0,249,240,64,32,64,32,64,32,64,32,64,32,64, + 32,64,32,64,32,64,32,64,32,64,32,32,64,31,128,13, + 14,28,15,1,0,248,248,64,16,64,16,32,32,32,32,16, + 64,16,64,16,64,8,128,8,128,8,128,5,0,7,0,2, + 0,13,14,28,15,1,0,248,248,64,16,64,16,66,16,66, + 16,69,16,69,16,37,32,40,160,40,160,40,160,48,96,48, + 96,48,96,13,14,28,15,1,0,248,248,32,32,16,64,16, + 64,8,128,5,0,2,0,5,0,8,128,8,128,16,64,32, + 32,32,32,248,248,13,14,28,15,1,0,240,120,32,32,16, + 64,16,64,8,128,8,128,5,0,2,0,2,0,2,0,2, + 0,2,0,2,0,31,192,10,14,28,15,2,0,255,192,128, + 64,128,128,129,0,130,0,2,0,4,0,8,0,16,0,16, + 64,32,64,64,64,128,64,255,192,3,19,19,15,7,253,224, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,224,9,18,36,15,3,254,128,0,128,0,64,0,64,0, + 32,0,32,0,16,0,16,0,8,0,8,0,4,0,4,0, + 2,0,2,0,1,0,1,0,0,128,0,128,3,19,19,15, + 5,253,224,32,32,32,32,32,32,32,32,32,32,32,32,32, + 32,32,32,32,224,9,5,10,15,3,11,8,0,28,0,34, + 0,65,0,128,128,15,1,2,15,0,251,255,254,5,4,4, + 15,4,12,192,96,48,24,11,11,22,15,2,0,62,0,65, + 0,0,128,0,128,62,128,65,128,128,128,128,128,128,128,65, + 128,62,224,13,15,30,15,1,0,224,0,32,0,32,0,32, + 0,39,192,40,48,48,16,32,8,32,8,32,8,32,8,32, + 8,48,16,40,48,231,192,11,11,22,15,2,0,31,64,96, + 192,64,64,128,64,128,0,128,0,128,0,128,0,64,96,96, + 192,31,0,13,15,30,15,1,0,0,224,0,32,0,32,0, + 32,31,32,96,160,64,96,128,32,128,32,128,32,128,32,128, + 32,64,96,96,160,31,56,11,11,22,15,2,0,31,0,96, + 192,64,64,128,32,128,32,255,224,128,0,128,0,64,0,96, + 96,31,128,10,15,30,15,3,0,15,128,24,64,16,0,16, + 0,255,128,16,0,16,0,16,0,16,0,16,0,16,0,16, + 0,16,0,16,0,255,128,13,16,32,15,1,251,31,56,96, + 160,64,96,128,32,128,32,128,32,128,32,128,32,64,96,96, + 160,31,32,0,32,0,32,0,64,0,192,63,0,13,15,30, + 15,1,0,224,0,32,0,32,0,32,0,39,128,40,64,48, + 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,248, + 248,9,16,32,15,3,0,8,0,8,0,8,0,0,0,0, + 0,120,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,255,128,8,21,21,15,3,251,2,2,2, + 0,0,255,1,1,1,1,1,1,1,1,1,1,1,1,2, + 6,248,11,15,30,15,2,0,224,0,32,0,32,0,32,0, + 35,192,33,0,34,0,36,0,40,0,56,0,36,0,34,0, + 33,0,32,128,225,224,11,15,30,15,2,0,124,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,255,224,14,11,22,15,0,0, + 238,112,49,136,33,8,33,8,33,8,33,8,33,8,33,8, + 33,8,33,8,249,140,13,11,22,15,1,0,231,128,40,64, + 48,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32, + 248,248,11,11,22,15,2,0,31,0,96,192,64,64,128,32, + 128,32,128,32,128,32,128,32,64,64,96,192,31,0,13,16, + 32,15,1,251,231,192,40,48,48,16,32,8,32,8,32,8, + 32,8,32,8,48,16,40,48,39,192,32,0,32,0,32,0, + 32,0,252,0,13,16,32,15,1,251,31,56,96,160,64,96, + 128,32,128,32,128,32,128,32,128,32,64,96,96,160,31,32, + 0,32,0,32,0,32,0,32,1,248,11,11,22,15,2,0, + 113,192,22,32,24,0,16,0,16,0,16,0,16,0,16,0, + 16,0,16,0,255,128,9,11,22,15,3,0,62,128,65,128, + 64,128,64,0,56,0,7,0,0,128,0,128,128,128,193,0, + 190,0,10,15,30,15,2,0,32,0,32,0,32,0,32,0, + 255,128,32,0,32,0,32,0,32,0,32,0,32,0,32,0, + 32,0,16,192,15,0,12,11,22,15,1,0,224,224,32,32, + 32,32,32,32,32,32,32,32,32,32,32,32,32,96,16,160, + 15,48,13,11,22,15,1,0,248,248,32,32,32,32,16,64, + 16,64,16,64,8,128,8,128,5,0,7,0,2,0,13,11, + 22,15,1,0,240,120,64,16,64,16,66,16,34,32,37,32, + 37,32,37,32,21,64,24,192,24,192,11,11,22,15,2,0, + 241,224,64,64,32,128,17,0,10,0,4,0,10,0,17,0, + 32,128,64,64,241,224,12,16,32,15,1,251,240,240,64,32, + 64,32,32,64,32,64,32,128,16,128,17,0,9,0,10,0, + 6,0,4,0,4,0,8,0,8,0,254,0,9,11,22,15, + 3,0,255,128,128,128,129,0,2,0,4,0,8,0,16,0, + 32,0,64,128,128,128,255,128,5,19,19,15,5,253,24,32, + 32,32,32,32,32,32,32,192,32,32,32,32,32,32,32,32, + 24,1,17,17,15,7,253,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,5,19,19,15,5,253,192,32, + 32,32,32,32,32,32,32,24,32,32,32,32,32,32,32,32, + 192,12,3,6,15,1,6,60,48,102,96,195,192,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0, + 0,15,0,1,2,16,16,15,6,251,192,192,0,0,0,128, + 128,128,192,192,192,192,192,192,192,192,8,16,16,15,3,0, + 8,8,8,8,29,99,65,128,128,128,64,99,28,8,8,8, + 10,14,28,15,2,0,14,0,17,128,32,0,32,0,32,0, + 32,0,254,0,16,0,16,0,16,0,16,0,32,64,64,64, + 255,128,10,10,20,15,2,2,128,64,94,128,33,0,64,128, + 64,128,64,128,64,128,33,0,94,128,128,64,11,14,28,15, + 2,0,241,224,64,64,32,128,32,128,17,0,17,0,10,0, + 127,192,4,0,4,0,127,192,4,0,4,0,63,128,1,19, + 19,15,7,253,128,128,128,128,128,128,128,128,0,0,0,128, + 128,128,128,128,128,128,128,10,18,36,15,2,254,15,192,16, + 64,32,64,32,64,32,0,112,0,140,0,130,0,65,0,32, + 128,16,64,12,64,3,128,1,0,129,0,129,0,130,0,252, + 0,7,2,2,15,4,12,198,198,13,13,26,15,1,1,15, + 128,48,96,64,16,70,144,137,136,144,136,144,8,144,8,136, + 136,71,16,64,16,48,96,15,128,7,9,9,15,4,5,120, + 132,60,68,132,140,118,0,254,12,11,22,15,1,0,6,48, + 12,96,24,192,49,128,99,0,198,0,99,0,49,128,24,192, + 12,96,6,48,11,4,8,15,2,5,255,224,0,32,0,32, + 0,32,10,1,2,15,2,7,255,192,13,13,26,15,1,1, + 15,128,48,96,64,16,79,16,136,136,136,136,143,8,137,8, + 136,136,72,144,64,16,48,96,15,128,7,1,1,15,4,12, + 254,7,7,7,15,4,9,56,68,130,130,130,68,56,11,13, + 26,15,2,1,4,0,4,0,4,0,4,0,4,0,255,224, + 4,0,4,0,4,0,4,0,4,0,0,0,255,224,6,9, + 9,15,4,7,56,68,132,4,8,16,32,68,252,6,9,9, + 15,4,7,120,132,4,8,56,4,4,132,120,5,4,4,15, + 5,12,24,48,96,192,12,16,32,15,1,251,224,224,32,32, + 32,32,32,32,32,32,32,32,32,32,32,32,32,96,48,160, + 47,48,32,0,32,0,32,0,32,0,32,0,11,18,36,15, + 2,254,31,224,100,128,196,128,196,128,196,128,196,128,196,128, + 100,128,28,128,4,128,4,128,4,128,4,128,4,128,4,128, + 4,128,4,128,60,224,3,3,3,15,6,6,224,224,224,4, + 5,5,15,5,252,32,32,16,144,96,7,9,9,15,4,7, + 48,208,16,16,16,16,16,16,254,7,9,9,15,4,5,56, + 68,130,130,130,68,56,0,254,12,11,22,15,1,0,198,0, + 99,0,49,128,24,192,12,96,6,48,12,96,24,192,49,128, + 99,0,198,0,14,16,32,15,0,0,48,0,208,0,16,8, + 16,16,16,32,16,32,16,64,16,152,255,40,2,72,4,72, + 4,136,9,8,17,252,0,8,0,28,14,16,32,15,0,0, + 48,0,208,0,16,8,16,16,16,32,16,32,16,64,16,184, + 255,68,2,132,4,4,4,8,8,16,16,32,0,68,0,252, + 14,16,32,15,0,0,120,0,132,0,4,8,8,16,56,32, + 4,32,4,64,132,152,121,40,2,72,4,72,4,136,9,8, + 17,252,0,8,0,28,8,14,14,15,3,253,24,24,0,0, + 8,8,48,64,128,128,128,129,65,62,13,19,38,15,1,0, + 24,0,12,0,6,0,3,0,0,0,63,0,5,0,8,128, + 8,128,8,128,16,64,16,64,16,64,63,224,32,32,32,32, + 64,16,64,16,240,120,13,19,38,15,1,0,0,192,1,128, + 3,0,6,0,0,0,63,0,5,0,8,128,8,128,8,128, + 16,64,16,64,16,64,63,224,32,32,32,32,64,16,64,16, + 240,120,13,19,38,15,1,0,6,0,15,0,25,128,48,192, + 0,0,63,0,5,0,8,128,8,128,8,128,16,64,16,64, + 16,64,63,224,32,32,32,32,64,16,64,16,240,120,13,18, + 36,15,1,0,28,64,54,192,35,128,0,0,63,0,5,0, + 8,128,8,128,8,128,16,64,16,64,16,64,63,224,32,32, + 32,32,64,16,64,16,240,120,13,18,36,15,1,0,24,192, + 24,192,0,0,0,0,63,0,5,0,8,128,8,128,8,128, + 16,64,16,64,16,64,63,224,32,32,32,32,64,16,64,16, + 240,120,13,19,38,15,1,0,7,0,8,128,8,128,8,128, + 7,0,63,0,5,0,8,128,8,128,8,128,16,64,16,64, + 16,64,63,224,32,32,32,32,64,16,64,16,240,120,15,14, + 28,15,255,0,15,254,2,130,4,130,4,130,4,136,8,136, + 8,248,8,136,31,136,16,130,16,130,32,130,32,130,243,254, + 11,18,36,15,2,252,15,32,48,224,96,96,64,32,128,0, + 128,0,128,0,128,0,128,0,128,0,64,32,96,96,48,192, + 15,0,4,0,2,0,18,0,12,0,12,19,38,15,1,0, + 24,0,12,0,6,0,3,0,0,0,255,224,32,32,32,32, + 32,32,34,0,34,0,62,0,34,0,34,0,32,16,32,16, + 32,16,32,16,255,240,12,19,38,15,1,0,0,192,1,128, + 3,0,6,0,0,0,255,224,32,32,32,32,32,32,34,0, + 34,0,62,0,34,0,34,0,32,16,32,16,32,16,32,16, + 255,240,12,19,38,15,1,0,6,0,15,0,25,128,48,192, + 0,0,255,224,32,32,32,32,32,32,34,0,34,0,62,0, + 34,0,34,0,32,16,32,16,32,16,32,16,255,240,12,18, + 36,15,1,0,25,128,25,128,0,0,0,0,255,224,32,32, + 32,32,32,32,34,0,34,0,62,0,34,0,34,0,32,16, + 32,16,32,16,32,16,255,240,9,19,38,15,3,0,96,0, + 48,0,24,0,12,0,0,0,255,128,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,255,128,9,19,38,15,3,0,3,0,6,0,12,0, + 24,0,0,0,255,128,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,255,128, + 9,19,38,15,3,0,24,0,60,0,102,0,195,0,0,0, + 255,128,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,255,128,9,18,36,15, + 3,0,99,0,99,0,0,0,0,0,255,128,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,255,128,13,14,28,15,0,0,127,192,32,48, + 32,16,32,8,32,8,32,8,252,8,32,8,32,8,32,8, + 32,8,32,16,32,48,127,192,14,18,36,15,0,0,14,32, + 27,96,17,192,0,0,240,252,48,16,40,16,36,16,36,16, + 34,16,34,16,33,16,33,16,32,144,32,144,32,80,32,48, + 252,48,13,19,38,15,1,0,24,0,12,0,6,0,3,0, + 0,0,15,128,48,96,96,48,64,16,128,8,128,8,128,8, + 128,8,128,8,128,8,64,16,96,48,48,96,15,128,13,19, + 38,15,1,0,0,96,0,192,1,128,3,0,0,0,15,128, + 48,96,96,48,64,16,128,8,128,8,128,8,128,8,128,8, + 128,8,64,16,96,48,48,96,15,128,13,19,38,15,1,0, + 3,0,7,128,12,192,24,96,0,0,15,128,48,96,96,48, + 64,16,128,8,128,8,128,8,128,8,128,8,128,8,64,16, + 96,48,48,96,15,128,13,18,36,15,1,0,14,32,27,96, + 17,192,0,0,15,128,48,96,96,48,64,16,128,8,128,8, + 128,8,128,8,128,8,128,8,64,16,96,48,48,96,15,128, + 13,18,36,15,1,0,24,192,24,192,0,0,0,0,15,128, + 48,96,96,48,64,16,128,8,128,8,128,8,128,8,128,8, + 128,8,64,16,96,48,48,96,15,128,11,11,22,15,2,2, + 128,32,64,64,32,128,17,0,10,0,4,0,10,0,17,0, + 32,128,64,64,128,32,14,15,30,15,0,0,0,4,7,200, + 24,48,48,48,32,72,64,136,64,136,65,8,66,8,68,8, + 72,8,48,16,48,48,88,96,135,128,12,19,38,15,1,0, + 24,0,12,0,6,0,3,0,0,0,249,240,64,32,64,32, + 64,32,64,32,64,32,64,32,64,32,64,32,64,32,64,32, + 64,32,32,64,31,128,12,19,38,15,1,0,0,192,1,128, + 3,0,6,0,0,0,249,240,64,32,64,32,64,32,64,32, + 64,32,64,32,64,32,64,32,64,32,64,32,64,32,32,64, + 31,128,12,19,38,15,1,0,6,0,15,0,25,128,48,192, + 0,0,249,240,64,32,64,32,64,32,64,32,64,32,64,32, + 64,32,64,32,64,32,64,32,64,32,32,64,31,128,12,18, + 36,15,1,0,25,128,25,128,0,0,0,0,249,240,64,32, + 64,32,64,32,64,32,64,32,64,32,64,32,64,32,64,32, + 64,32,64,32,32,64,31,128,13,19,38,15,1,0,0,192, + 1,128,3,0,6,0,0,0,240,120,32,32,16,64,16,64, + 8,128,8,128,5,0,2,0,2,0,2,0,2,0,2,0, + 2,0,31,192,11,14,28,15,2,0,248,0,32,0,32,0, + 63,128,32,64,32,32,32,32,32,32,32,32,32,64,63,128, + 32,0,32,0,248,0,11,16,32,15,2,0,14,0,17,0, + 32,128,32,128,32,128,32,128,33,0,39,0,32,192,32,64, + 32,32,32,32,32,32,36,32,36,64,243,128,11,16,32,15, + 2,0,48,0,24,0,12,0,6,0,0,0,30,0,97,0, + 0,128,0,128,0,128,63,128,64,128,128,128,128,128,129,128, + 126,224,11,16,32,15,2,0,1,128,3,0,6,0,12,0, + 0,0,30,0,97,0,0,128,0,128,0,128,63,128,64,128, + 128,128,128,128,129,128,126,224,11,16,32,15,2,0,12,0, + 30,0,51,0,97,128,0,0,30,0,97,0,0,128,0,128, + 0,128,63,128,64,128,128,128,128,128,129,128,126,224,11,15, + 30,15,2,0,56,128,109,128,71,0,0,0,30,0,97,0, + 0,128,0,128,0,128,63,128,64,128,128,128,128,128,129,128, + 126,224,11,15,30,15,2,0,49,128,49,128,0,0,0,0, + 30,0,97,0,0,128,0,128,0,128,63,128,64,128,128,128, + 128,128,129,128,126,224,11,17,34,15,2,0,14,0,17,0, + 17,0,17,0,14,0,0,0,30,0,97,0,0,128,0,128, + 0,128,63,128,64,128,128,128,128,128,129,128,126,224,15,11, + 22,15,0,0,28,112,98,140,65,4,1,2,1,2,63,254, + 65,0,129,0,129,2,130,132,124,120,11,15,30,15,2,252, + 31,64,96,192,64,64,128,64,128,0,128,0,128,0,128,0, + 64,96,96,192,31,0,4,0,2,0,18,0,12,0,11,16, + 32,15,2,0,48,0,24,0,12,0,6,0,0,0,31,0, + 96,192,64,64,128,32,128,32,255,224,128,0,128,0,64,0, + 96,96,31,128,11,16,32,15,2,0,1,128,3,0,6,0, + 12,0,0,0,31,0,96,192,64,64,128,32,128,32,255,224, + 128,0,128,0,64,0,96,96,31,128,11,16,32,15,2,0, + 12,0,30,0,51,0,97,128,0,0,31,0,96,192,64,64, + 128,32,128,32,255,224,128,0,128,0,64,0,96,96,31,128, + 11,15,30,15,2,0,49,128,49,128,0,0,0,0,31,0, + 96,192,64,64,128,32,128,32,255,224,128,0,128,0,64,0, + 96,96,31,128,9,16,32,15,3,0,96,0,48,0,24,0, + 12,0,0,0,120,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,255,128,9,16,32,15,3,0, + 3,0,6,0,12,0,24,0,0,0,120,0,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,255,128, + 9,16,32,15,3,0,24,0,60,0,102,0,195,0,0,0, + 120,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,255,128,9,15,30,15,3,0,99,0,99,0, + 0,0,0,0,120,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,255,128,12,16,32,15,1,0, + 124,192,135,0,13,0,48,128,0,64,15,224,48,96,32,48, + 64,16,64,16,64,16,64,16,64,16,32,32,48,96,15,128, + 13,15,30,15,1,0,28,64,54,192,35,128,0,0,231,128, + 40,64,48,32,32,32,32,32,32,32,32,32,32,32,32,32, + 32,32,248,248,11,16,32,15,2,0,24,0,12,0,6,0, + 3,0,0,0,31,0,96,192,64,64,128,32,128,32,128,32, + 128,32,128,32,64,64,96,192,31,0,11,16,32,15,2,0, + 1,128,3,0,6,0,12,0,0,0,31,0,96,192,64,64, + 128,32,128,32,128,32,128,32,128,32,64,64,96,192,31,0, + 11,16,32,15,2,0,12,0,30,0,51,0,97,128,0,0, + 31,0,96,192,64,64,128,32,128,32,128,32,128,32,128,32, + 64,64,96,192,31,0,11,15,30,15,2,0,28,64,54,192, + 35,128,0,0,31,0,96,192,64,64,128,32,128,32,128,32, + 128,32,128,32,64,64,96,192,31,0,11,15,30,15,2,0, + 49,128,49,128,0,0,0,0,31,0,96,192,64,64,128,32, + 128,32,128,32,128,32,128,32,64,64,96,192,31,0,11,9, + 18,15,2,3,14,0,14,0,0,0,0,0,255,224,0,0, + 0,0,14,0,14,0,12,12,24,15,1,0,0,16,15,160, + 48,64,32,160,65,16,66,16,68,16,72,16,80,16,32,32, + 80,96,143,128,12,16,32,15,1,0,24,0,12,0,6,0, + 3,0,0,0,224,224,32,32,32,32,32,32,32,32,32,32, + 32,32,32,32,32,96,16,160,15,48,12,16,32,15,1,0, + 0,192,1,128,3,0,6,0,0,0,224,224,32,32,32,32, + 32,32,32,32,32,32,32,32,32,32,32,96,16,160,15,48, + 12,16,32,15,1,0,6,0,15,0,25,128,48,192,0,0, + 224,224,32,32,32,32,32,32,32,32,32,32,32,32,32,32, + 32,96,16,160,15,48,12,15,30,15,1,0,25,128,25,128, + 0,0,0,0,224,224,32,32,32,32,32,32,32,32,32,32, + 32,32,32,32,32,96,16,160,15,48,12,21,42,15,1,251, + 0,192,1,128,3,0,6,0,0,0,240,240,64,32,64,32, + 32,64,32,64,32,128,16,128,17,0,9,0,10,0,6,0, + 4,0,4,0,8,0,8,0,254,0,13,21,42,15,1,251, + 224,0,32,0,32,0,32,0,32,0,39,192,56,48,48,16, + 32,8,32,8,32,8,32,8,32,8,48,16,56,48,39,192, + 32,0,32,0,32,0,32,0,252,0,12,20,40,15,1,251, + 25,128,25,128,0,0,0,0,240,240,64,32,64,32,32,64, + 32,64,32,128,16,128,17,0,9,0,10,0,6,0,4,0, + 4,0,8,0,8,0,254,0}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--25-180-100-100-M-150-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 15 + Calculated Max Values w=15 h=21 x= 7 y=12 dx=15 dy= 0 ascent=17 len=40 + Font Bounding box w=23 h=32 x=-5 y=-8 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-5 + X Font ascent =16 descent=-5 + Max Font ascent =17 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR18r[2862] U8G_SECTION(".progmem.u8g_font_courR18r") = { + 0,23,32,251,248,14,3,161,7,151,32,127,251,17,251,16, + 251,0,0,0,15,0,1,2,16,16,15,6,0,192,192,192, + 192,192,192,192,192,128,128,128,0,0,0,192,192,8,7,7, + 15,3,9,231,231,231,231,66,66,66,10,17,34,15,2,255, + 9,0,9,0,9,0,9,0,9,0,9,0,127,192,18,0, + 18,0,18,0,255,128,18,0,18,0,18,0,18,0,18,0, + 18,0,9,20,40,15,3,253,8,0,8,0,8,0,30,128, + 33,128,64,128,64,0,64,0,32,0,30,0,1,0,0,128, + 0,128,128,128,193,0,190,0,8,0,8,0,8,0,8,0, + 12,16,32,15,1,0,28,0,34,0,65,0,65,0,65,0, + 34,0,28,112,3,128,28,0,225,192,2,32,4,16,4,16, + 4,16,2,32,1,192,10,13,26,15,2,0,29,0,38,0, + 32,0,32,0,16,0,48,0,73,128,137,0,134,0,130,0, + 131,0,69,0,56,192,3,7,7,15,6,8,224,224,224,224, + 224,64,64,4,19,19,15,7,253,16,32,32,64,64,64,128, + 128,128,128,128,128,128,64,64,64,32,32,16,4,19,19,15, + 3,253,128,64,64,32,32,32,16,16,16,16,16,16,16,32, + 32,32,64,64,128,9,9,18,15,3,7,8,0,8,0,8, + 0,201,128,127,0,28,0,54,0,99,0,193,128,11,11,22, + 15,2,2,4,0,4,0,4,0,4,0,4,0,255,224,4, + 0,4,0,4,0,4,0,4,0,5,6,6,15,4,253,56, + 56,112,96,192,128,10,1,2,15,2,7,255,192,3,3,3, + 15,6,0,224,224,224,9,18,36,15,3,254,0,128,0,128, + 1,0,1,0,2,0,2,0,4,0,4,0,8,0,8,0, + 16,0,16,0,32,0,32,0,64,0,64,0,128,0,128,0, + 9,15,30,15,3,0,28,0,99,0,65,0,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,65,0, + 99,0,28,0,9,15,30,15,3,0,24,0,232,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,255,128,10,15,30,15,2,0,30,0, + 97,0,128,128,128,128,0,128,0,128,1,0,2,0,4,0, + 8,0,16,0,32,0,64,0,128,64,255,192,10,15,30,15, + 2,0,62,0,65,128,0,128,0,128,0,128,1,0,30,0, + 1,128,0,64,0,64,0,64,0,64,128,64,97,128,30,0, + 10,15,30,15,2,0,3,0,5,0,9,0,9,0,17,0, + 33,0,33,0,65,0,65,0,129,0,255,192,1,0,1,0, + 1,0,15,192,10,15,30,15,2,0,127,128,64,0,64,0, + 64,0,64,0,94,0,97,128,0,128,0,64,0,64,0,64, + 0,64,0,128,193,128,62,0,9,15,30,15,3,0,15,0, + 48,0,96,0,64,0,128,0,158,0,161,0,192,128,128,128, + 128,128,128,128,128,128,64,128,97,0,30,0,9,15,30,15, + 2,0,255,128,128,128,129,0,1,0,1,0,2,0,2,0, + 2,0,2,0,4,0,4,0,4,0,8,0,8,0,8,0, + 10,15,30,15,2,0,30,0,33,0,64,128,64,128,64,128, + 64,128,33,0,63,0,64,128,128,64,128,64,128,64,64,128, + 97,128,30,0,9,15,30,15,3,0,28,0,99,0,193,128, + 128,128,128,128,128,128,65,128,98,128,28,128,0,128,0,128, + 1,0,1,0,6,0,248,0,3,11,11,15,6,0,224,224, + 224,0,0,0,0,0,224,224,224,5,14,14,15,4,253,56, + 56,56,0,0,0,0,0,56,56,112,96,192,128,11,11,22, + 15,1,2,0,96,1,128,6,0,24,0,96,0,192,0,96, + 0,24,0,6,0,1,128,0,96,12,4,8,15,1,5,255, + 240,0,0,0,0,255,240,11,11,22,15,2,2,192,0,48, + 0,12,0,3,0,0,192,0,96,0,192,3,0,12,0,48, + 0,192,0,8,14,14,15,3,0,124,130,129,1,1,1,2, + 12,16,16,0,0,24,24,10,18,36,15,2,254,30,0,97, + 0,64,128,128,128,128,128,131,128,132,128,136,128,136,128,136, + 128,136,128,132,128,131,192,128,0,128,0,64,0,97,128,31, + 0,13,14,28,15,1,0,63,0,5,0,8,128,8,128,8, + 128,16,64,16,64,16,64,63,224,32,32,32,32,64,16,64, + 16,240,120,12,14,28,15,1,0,255,192,32,32,32,16,32, + 16,32,16,32,32,63,192,32,32,32,16,32,16,32,16,32, + 16,32,32,255,192,11,14,28,15,2,0,15,32,48,160,96, + 96,64,32,128,0,128,0,128,0,128,0,128,0,128,0,64, + 32,96,96,48,192,15,0,12,14,28,15,1,0,255,128,64, + 96,64,32,64,16,64,16,64,16,64,16,64,16,64,16,64, + 16,64,16,64,32,64,96,255,128,12,14,28,15,1,0,255, + 224,32,32,32,32,32,32,34,0,34,0,62,0,34,0,34, + 0,32,16,32,16,32,16,32,16,255,240,11,14,28,15,2, + 0,255,224,32,32,32,32,32,32,34,0,34,0,62,0,34, + 0,34,0,32,0,32,0,32,0,32,0,254,0,12,14,28, + 15,1,0,15,32,48,160,96,96,64,32,128,0,128,0,128, + 0,128,0,131,240,128,32,64,32,96,32,48,64,15,128,13, + 14,28,15,1,0,248,248,32,32,32,32,32,32,32,32,32, + 32,63,224,32,32,32,32,32,32,32,32,32,32,32,32,248, + 248,9,14,28,15,3,0,255,128,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,255,128,12,14,28,15,2,0,31,240,0,128,0,128,0, + 128,0,128,0,128,0,128,0,128,128,128,128,128,128,128,129, + 0,67,0,60,0,13,14,28,15,1,0,248,240,32,64,32, + 128,33,0,34,0,36,0,44,0,50,0,33,0,32,128,32, + 64,32,64,32,32,248,120,12,14,28,15,1,0,254,0,16, + 0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16, + 16,16,16,16,16,16,16,255,240,13,14,28,15,1,0,224, + 56,96,48,96,48,80,80,80,80,72,144,72,144,69,16,71, + 16,64,16,64,16,64,16,64,16,240,120,14,14,28,15,0, + 0,240,252,48,16,40,16,36,16,36,16,34,16,34,16,33, + 16,33,16,32,144,32,144,32,80,32,48,252,48,13,14,28, + 15,1,0,15,128,48,96,96,48,64,16,128,8,128,8,128, + 8,128,8,128,8,128,8,64,16,96,48,48,96,15,128,11, + 14,28,15,2,0,255,128,32,64,32,32,32,32,32,32,32, + 32,32,64,63,128,32,0,32,0,32,0,32,0,32,0,254, + 0,13,16,32,15,1,254,15,128,48,96,96,48,64,16,128, + 8,128,8,128,8,128,8,128,8,128,8,64,16,96,48,48, + 96,15,128,6,48,27,192,13,14,28,15,1,0,255,128,32, + 64,32,32,32,32,32,32,32,32,32,64,63,128,33,0,32, + 128,32,64,32,64,32,32,248,56,10,14,28,15,2,0,30, + 64,97,64,128,192,128,64,128,0,96,0,30,0,1,128,0, + 64,0,64,128,64,192,64,160,128,159,0,11,14,28,15,2, + 0,255,224,132,32,132,32,132,32,132,32,4,0,4,0,4, + 0,4,0,4,0,4,0,4,0,4,0,63,128,12,14,28, + 15,1,0,249,240,64,32,64,32,64,32,64,32,64,32,64, + 32,64,32,64,32,64,32,64,32,64,32,32,64,31,128,13, + 14,28,15,1,0,248,248,64,16,64,16,32,32,32,32,16, + 64,16,64,16,64,8,128,8,128,8,128,5,0,7,0,2, + 0,13,14,28,15,1,0,248,248,64,16,64,16,66,16,66, + 16,69,16,69,16,37,32,40,160,40,160,40,160,48,96,48, + 96,48,96,13,14,28,15,1,0,248,248,32,32,16,64,16, + 64,8,128,5,0,2,0,5,0,8,128,8,128,16,64,32, + 32,32,32,248,248,13,14,28,15,1,0,240,120,32,32,16, + 64,16,64,8,128,8,128,5,0,2,0,2,0,2,0,2, + 0,2,0,2,0,31,192,10,14,28,15,2,0,255,192,128, + 64,128,128,129,0,130,0,2,0,4,0,8,0,16,0,16, + 64,32,64,64,64,128,64,255,192,3,19,19,15,7,253,224, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,224,9,18,36,15,3,254,128,0,128,0,64,0,64,0, + 32,0,32,0,16,0,16,0,8,0,8,0,4,0,4,0, + 2,0,2,0,1,0,1,0,0,128,0,128,3,19,19,15, + 5,253,224,32,32,32,32,32,32,32,32,32,32,32,32,32, + 32,32,32,32,224,9,5,10,15,3,11,8,0,28,0,34, + 0,65,0,128,128,15,1,2,15,0,251,255,254,5,4,4, + 15,4,12,192,96,48,24,11,11,22,15,2,0,62,0,65, + 0,0,128,0,128,62,128,65,128,128,128,128,128,128,128,65, + 128,62,224,13,15,30,15,1,0,224,0,32,0,32,0,32, + 0,39,192,40,48,48,16,32,8,32,8,32,8,32,8,32, + 8,48,16,40,48,231,192,11,11,22,15,2,0,31,64,96, + 192,64,64,128,64,128,0,128,0,128,0,128,0,64,96,96, + 192,31,0,13,15,30,15,1,0,0,224,0,32,0,32,0, + 32,31,32,96,160,64,96,128,32,128,32,128,32,128,32,128, + 32,64,96,96,160,31,56,11,11,22,15,2,0,31,0,96, + 192,64,64,128,32,128,32,255,224,128,0,128,0,64,0,96, + 96,31,128,10,15,30,15,3,0,15,128,24,64,16,0,16, + 0,255,128,16,0,16,0,16,0,16,0,16,0,16,0,16, + 0,16,0,16,0,255,128,13,16,32,15,1,251,31,56,96, + 160,64,96,128,32,128,32,128,32,128,32,128,32,64,96,96, + 160,31,32,0,32,0,32,0,64,0,192,63,0,13,15,30, + 15,1,0,224,0,32,0,32,0,32,0,39,128,40,64,48, + 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,248, + 248,9,16,32,15,3,0,8,0,8,0,8,0,0,0,0, + 0,120,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,255,128,8,21,21,15,3,251,2,2,2, + 0,0,255,1,1,1,1,1,1,1,1,1,1,1,1,2, + 6,248,11,15,30,15,2,0,224,0,32,0,32,0,32,0, + 35,192,33,0,34,0,36,0,40,0,56,0,36,0,34,0, + 33,0,32,128,225,224,11,15,30,15,2,0,124,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,255,224,14,11,22,15,0,0, + 238,112,49,136,33,8,33,8,33,8,33,8,33,8,33,8, + 33,8,33,8,249,140,13,11,22,15,1,0,231,128,40,64, + 48,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32, + 248,248,11,11,22,15,2,0,31,0,96,192,64,64,128,32, + 128,32,128,32,128,32,128,32,64,64,96,192,31,0,13,16, + 32,15,1,251,231,192,40,48,48,16,32,8,32,8,32,8, + 32,8,32,8,48,16,40,48,39,192,32,0,32,0,32,0, + 32,0,252,0,13,16,32,15,1,251,31,56,96,160,64,96, + 128,32,128,32,128,32,128,32,128,32,64,96,96,160,31,32, + 0,32,0,32,0,32,0,32,1,248,11,11,22,15,2,0, + 113,192,22,32,24,0,16,0,16,0,16,0,16,0,16,0, + 16,0,16,0,255,128,9,11,22,15,3,0,62,128,65,128, + 64,128,64,0,56,0,7,0,0,128,0,128,128,128,193,0, + 190,0,10,15,30,15,2,0,32,0,32,0,32,0,32,0, + 255,128,32,0,32,0,32,0,32,0,32,0,32,0,32,0, + 32,0,16,192,15,0,12,11,22,15,1,0,224,224,32,32, + 32,32,32,32,32,32,32,32,32,32,32,32,32,96,16,160, + 15,48,13,11,22,15,1,0,248,248,32,32,32,32,16,64, + 16,64,16,64,8,128,8,128,5,0,7,0,2,0,13,11, + 22,15,1,0,240,120,64,16,64,16,66,16,34,32,37,32, + 37,32,37,32,21,64,24,192,24,192,11,11,22,15,2,0, + 241,224,64,64,32,128,17,0,10,0,4,0,10,0,17,0, + 32,128,64,64,241,224,12,16,32,15,1,251,240,240,64,32, + 64,32,32,64,32,64,32,128,16,128,17,0,9,0,10,0, + 6,0,4,0,4,0,8,0,8,0,254,0,9,11,22,15, + 3,0,255,128,128,128,129,0,2,0,4,0,8,0,16,0, + 32,0,64,128,128,128,255,128,5,19,19,15,5,253,24,32, + 32,32,32,32,32,32,32,192,32,32,32,32,32,32,32,32, + 24,1,17,17,15,7,253,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,5,19,19,15,5,253,192,32, + 32,32,32,32,32,32,32,24,32,32,32,32,32,32,32,32, + 192,12,3,6,15,1,6,60,48,102,96,195,192,255}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--34-240-100-100-M-200-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 19, '1' Height: 20 + Calculated Max Values w=19 h=28 x= 9 y=17 dx=20 dy= 0 ascent=26 len=81 + Font Bounding box w=28 h=42 x=-6 y=-10 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =19 descent=-6 + X Font ascent =21 descent=-6 + Max Font ascent =26 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR24[8729] U8G_SECTION(".progmem.u8g_font_courR24") = { + 0,28,42,250,246,19,4,184,10,129,32,255,250,26,250,21, + 250,0,0,0,20,0,1,5,21,21,20,8,0,32,112,112, + 112,112,112,32,32,32,32,32,32,32,32,0,0,0,0,112, + 248,112,11,10,20,20,4,10,241,224,241,224,241,224,241,224, + 241,224,96,192,96,192,64,128,64,128,64,128,13,23,46,20, + 3,254,4,64,4,64,4,64,4,64,12,192,8,128,8,128, + 8,128,127,248,8,128,8,128,8,128,8,128,8,128,255,240, + 8,128,8,128,8,128,9,128,17,0,17,0,17,0,17,0, + 12,25,50,20,4,253,4,0,4,0,4,0,31,32,113,224, + 64,96,128,32,128,0,192,0,96,0,60,0,7,128,0,224, + 0,48,0,16,0,16,128,48,192,96,241,192,159,0,4,0, + 4,0,4,0,4,0,4,0,15,20,40,20,3,0,30,0, + 51,0,97,128,64,128,64,128,97,128,51,0,30,14,0,112, + 3,128,28,0,224,0,1,224,3,48,6,24,4,8,4,8, + 6,24,3,48,1,224,12,17,34,20,3,0,15,192,25,128, + 48,0,32,0,32,0,48,0,16,0,24,0,60,0,100,48, + 70,96,194,64,131,64,193,192,65,128,99,192,62,112,4,11, + 11,20,8,10,112,112,112,112,112,224,224,224,224,224,224,5, + 25,25,20,9,252,8,24,16,48,32,96,96,64,64,192,192, + 192,192,192,192,192,64,64,96,96,32,48,16,24,8,5,25, + 25,20,5,252,128,192,64,96,32,48,48,16,16,24,24,24, + 24,24,24,24,16,16,48,48,32,96,64,192,128,11,13,26, + 20,4,8,4,0,4,0,4,0,4,0,132,32,245,224,31, + 0,14,0,10,0,27,0,49,128,32,128,96,192,15,17,34, + 20,2,1,1,0,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,255,254,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,1,0,6,9,9,20,5,252,60,60,120,120,96, + 224,192,192,128,15,1,2,20,2,9,255,254,5,4,4,20, + 7,0,112,248,248,112,11,25,50,20,4,253,0,32,0,96, + 0,64,0,64,0,192,0,128,1,128,1,0,3,0,2,0, + 2,0,6,0,4,0,12,0,8,0,8,0,24,0,16,0, + 48,0,32,0,96,0,64,0,64,0,192,0,128,0,11,20, + 40,20,4,0,31,0,49,128,96,192,64,64,64,64,128,32, + 128,32,128,32,128,32,128,32,128,32,128,32,128,32,128,32, + 192,96,64,64,64,64,96,192,49,128,31,0,11,20,40,20, + 4,0,12,0,60,0,228,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,255,224,13,20,40,20,3,0, + 15,192,48,96,96,16,64,16,64,16,0,16,0,48,0,32, + 0,96,0,192,1,128,3,0,6,0,12,0,24,0,48,0, + 96,0,192,0,128,8,255,248,13,20,40,20,3,0,15,128, + 56,224,96,48,0,16,0,16,0,16,0,16,0,32,0,64, + 7,128,0,96,0,16,0,8,0,8,0,8,0,8,0,24, + 192,48,112,224,31,128,13,20,40,20,3,0,0,192,1,64, + 1,64,2,64,6,64,4,64,8,64,24,64,16,64,32,64, + 96,64,64,64,128,64,255,248,0,64,0,64,0,64,0,64, + 0,64,3,248,13,20,40,20,3,0,63,240,32,0,32,0, + 32,0,32,0,32,0,32,0,39,128,60,224,32,48,0,16, + 0,24,0,8,0,8,0,8,0,24,192,16,96,48,56,224, + 15,128,12,20,40,20,4,0,7,192,28,32,48,0,32,0, + 96,0,64,0,192,0,143,128,184,224,160,32,192,48,192,16, + 192,16,192,16,192,16,64,16,96,48,32,32,56,224,15,128, + 11,20,40,20,4,0,255,224,128,32,128,32,0,96,0,64, + 0,64,0,192,0,128,0,128,1,128,1,0,1,0,3,0, + 2,0,2,0,2,0,6,0,4,0,4,0,4,0,11,20, + 40,20,4,0,31,0,96,192,64,64,192,96,128,32,128,32, + 192,96,64,64,49,128,31,0,113,192,64,64,192,96,128,32, + 128,32,128,32,192,96,64,64,113,192,31,0,12,20,40,20, + 4,0,31,0,112,192,64,96,192,32,128,48,128,48,128,48, + 128,48,192,80,64,208,115,144,30,16,0,32,0,32,0,32, + 0,64,0,192,1,128,14,0,120,0,5,14,14,20,7,0, + 112,248,248,112,0,0,0,0,0,0,112,248,248,112,7,18, + 18,20,5,252,28,62,62,28,0,0,0,0,0,60,60,120, + 112,112,224,192,192,128,15,17,34,20,2,1,0,2,0,14, + 0,56,0,224,3,128,6,0,28,0,112,0,192,0,112,0, + 28,0,6,0,3,128,0,224,0,56,0,14,0,2,15,6, + 12,20,2,6,255,254,0,0,0,0,0,0,0,0,255,254, + 15,17,34,20,2,1,128,0,224,0,56,0,14,0,3,128, + 0,192,0,112,0,28,0,6,0,28,0,112,0,192,3,128, + 14,0,56,0,224,0,128,0,11,19,38,20,4,0,63,0, + 225,192,128,64,128,64,0,96,0,32,0,96,0,64,1,192, + 7,0,4,0,4,0,4,0,0,0,0,0,0,0,14,0, + 31,0,14,0,12,23,46,20,3,254,15,128,24,192,48,64, + 96,96,64,32,192,32,128,32,128,224,131,160,134,32,132,32, + 132,32,132,32,134,32,131,32,129,240,128,0,192,0,64,0, + 96,0,48,0,24,224,15,128,19,19,57,20,0,0,31,224, + 0,0,160,0,0,160,0,1,16,0,1,16,0,1,16,0, + 2,8,0,2,8,0,2,8,0,4,4,0,4,4,0,4, + 4,0,15,254,0,8,2,0,8,2,0,16,1,0,16,1, + 0,48,1,128,254,15,224,16,19,38,20,1,0,255,240,16, + 12,16,4,16,6,16,2,16,2,16,6,16,4,16,12,31, + 248,16,6,16,2,16,3,16,1,16,1,16,3,16,2,16, + 6,255,248,14,19,38,20,2,0,7,196,28,116,32,12,96, + 4,64,4,192,4,128,0,128,0,128,0,128,0,128,0,128, + 0,128,0,192,0,64,0,96,4,32,28,28,112,7,192,15, + 19,38,20,1,0,255,192,32,112,32,24,32,12,32,4,32, + 6,32,2,32,2,32,2,32,2,32,2,32,2,32,2,32, + 6,32,4,32,12,32,24,32,112,255,192,15,19,38,20,1, + 0,255,252,16,4,16,4,16,4,16,4,16,68,16,64,16, + 64,31,192,16,64,16,64,16,64,16,0,16,2,16,2,16, + 2,16,2,16,2,255,254,15,19,38,20,1,0,255,254,16, + 2,16,2,16,2,16,2,16,66,16,64,16,64,31,192,16, + 64,16,64,16,64,16,0,16,0,16,0,16,0,16,0,16, + 0,255,128,15,19,38,20,2,0,7,196,28,116,48,12,96, + 4,64,4,192,4,128,0,128,0,128,0,128,0,128,0,128, + 254,128,4,192,4,64,4,96,4,48,4,28,28,7,240,15, + 19,38,20,2,0,252,126,32,8,32,8,32,8,32,8,32, + 8,32,8,32,8,32,8,63,248,32,8,32,8,32,8,32, + 8,32,8,32,8,32,8,32,8,252,126,11,19,38,20,4, + 0,255,224,4,0,4,0,4,0,4,0,4,0,4,0,4, + 0,4,0,4,0,4,0,4,0,4,0,4,0,4,0,4, + 0,4,0,4,0,255,224,15,19,38,20,3,0,15,254,0, + 32,0,32,0,32,0,32,0,32,0,32,0,32,0,32,0, + 32,0,32,128,32,128,32,128,32,128,32,192,96,64,64,97, + 192,31,0,17,19,57,20,1,0,254,31,128,16,4,0,16, + 12,0,16,8,0,16,16,0,16,48,0,16,64,0,16,192, + 0,19,128,0,28,192,0,16,32,0,16,48,0,16,16,0, + 16,24,0,16,8,0,16,8,0,16,12,0,16,4,0,254, + 7,128,15,19,38,20,2,0,255,128,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,2,8,2,8,2,8,2,8,2,8,2,255,254,19,19, + 57,20,0,0,248,3,224,40,2,128,40,2,128,36,4,128, + 36,4,128,34,8,128,34,8,128,33,16,128,33,16,128,33, + 16,128,32,160,128,32,160,128,32,64,128,32,64,128,32,0, + 128,32,0,128,32,0,128,32,0,128,254,7,224,18,19,57, + 20,0,0,248,31,192,28,1,0,20,1,0,18,1,0,18, + 1,0,17,1,0,16,129,0,16,129,0,16,65,0,16,65, + 0,16,33,0,16,33,0,16,17,0,16,17,0,16,9,0, + 16,9,0,16,5,0,16,7,0,127,3,0,15,19,38,20, + 2,0,7,192,24,48,48,24,96,12,64,4,192,6,128,2, + 128,2,128,2,128,2,128,2,128,2,128,2,192,6,64,4, + 96,12,48,24,24,48,7,192,15,19,38,20,1,0,255,224, + 16,56,16,4,16,6,16,2,16,2,16,2,16,6,16,4, + 16,56,31,224,16,0,16,0,16,0,16,0,16,0,16,0, + 16,0,255,192,15,22,44,20,2,253,7,192,28,112,48,24, + 96,12,64,4,192,6,128,2,128,2,128,2,128,2,128,2, + 128,2,128,2,192,6,64,4,96,12,56,56,12,96,7,192, + 2,0,15,198,24,124,18,19,57,20,1,0,255,224,0,16, + 56,0,16,4,0,16,6,0,16,2,0,16,2,0,16,6, + 0,16,4,0,16,24,0,31,224,0,16,96,0,16,48,0, + 16,24,0,16,12,0,16,4,0,16,6,0,16,2,0,16, + 3,0,254,1,192,12,19,38,20,3,0,15,144,56,208,96, + 48,64,48,64,16,64,16,64,0,96,0,56,0,15,0,1, + 192,0,96,0,48,128,16,128,16,192,16,224,48,184,224,143, + 128,15,19,38,20,2,0,255,254,129,2,129,2,129,2,129, + 2,129,2,129,2,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,1,0,1,0,1,0,1,0,63,248,17,19,57, + 20,1,0,254,63,128,32,2,0,32,2,0,32,2,0,32, + 2,0,32,2,0,32,2,0,32,2,0,32,2,0,32,2, + 0,32,2,0,32,2,0,32,2,0,32,2,0,48,6,0, + 16,4,0,24,12,0,14,56,0,3,224,0,19,19,57,20, + 0,0,254,15,224,48,1,128,16,1,0,16,1,0,24,3, + 0,8,2,0,8,2,0,12,6,0,4,4,0,4,4,0, + 6,12,0,2,8,0,3,24,0,1,16,0,1,16,0,0, + 160,0,0,160,0,0,224,0,0,64,0,17,19,57,20,1, + 0,252,31,128,64,1,0,64,1,0,64,1,0,64,1,0, + 97,195,0,33,66,0,33,66,0,34,34,0,34,34,0,34, + 34,0,34,34,0,38,50,0,36,18,0,52,22,0,20,20, + 0,20,20,0,24,12,0,24,12,0,17,19,57,20,1,0, + 124,31,0,48,6,0,16,4,0,24,12,0,8,8,0,4, + 16,0,2,32,0,3,96,0,1,192,0,0,128,0,1,192, + 0,2,32,0,4,16,0,12,24,0,8,8,0,16,4,0, + 48,6,0,96,3,0,252,31,128,15,19,38,20,2,0,248, + 62,96,12,48,24,16,16,24,48,8,32,4,64,6,192,2, + 128,3,128,1,0,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,31,240,13,19,38,20,3,0,127,240,64,16,64, + 48,64,32,64,96,64,192,0,128,1,128,3,0,6,0,4, + 0,12,0,24,8,16,8,48,8,96,8,64,8,192,8,255, + 248,5,24,24,20,9,252,248,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,248,11, + 25,50,20,4,253,128,0,192,0,64,0,64,0,96,0,32, + 0,48,0,16,0,24,0,8,0,8,0,12,0,4,0,6, + 0,2,0,2,0,3,0,1,0,1,128,0,128,0,192,0, + 64,0,64,0,96,0,32,5,24,24,20,5,252,248,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,248,11,9,18,20,4,12,4,0,14,0,27, + 0,17,0,49,128,96,192,64,64,192,96,128,32,19,1,3, + 20,0,250,255,255,224,6,5,5,20,4,17,192,96,48,24, + 12,15,14,28,20,2,0,15,128,56,224,0,32,0,48,0, + 16,0,16,31,240,112,48,192,16,128,16,128,16,128,48,192, + 240,127,158,17,20,60,20,0,0,240,0,0,16,0,0,16, + 0,0,16,0,0,16,0,0,16,0,0,17,248,0,23,14, + 0,20,3,0,24,1,0,24,1,128,16,0,128,16,0,128, + 16,0,128,16,0,128,24,1,128,24,1,0,20,3,0,23, + 14,0,241,248,0,14,14,28,20,3,0,15,136,56,248,96, + 24,64,8,192,8,128,0,128,0,128,0,128,0,192,0,64, + 12,96,24,56,224,15,128,17,20,60,20,2,0,0,60,0, + 0,4,0,0,4,0,0,4,0,0,4,0,0,4,0,15, + 196,0,56,116,0,96,20,0,64,12,0,192,12,0,128,4, + 0,128,4,0,128,4,0,128,4,0,192,12,0,64,12,0, + 96,20,0,56,116,0,15,199,128,14,14,28,20,2,0,15, + 192,56,112,96,24,64,8,192,12,128,4,255,252,128,0,128, + 0,192,0,64,0,96,12,56,56,15,224,13,20,40,20,3, + 0,3,224,6,24,4,0,12,0,8,0,8,0,255,240,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,255,240,17,20,60,20,2,250,15, + 199,128,56,116,0,96,20,0,64,12,0,192,12,0,128,4, + 0,128,4,0,128,4,0,128,4,0,192,12,0,64,12,0, + 96,20,0,56,116,0,15,196,0,0,4,0,0,4,0,0, + 12,0,0,8,0,0,56,0,15,224,0,16,20,40,20,1, + 0,240,0,16,0,16,0,16,0,16,0,16,0,17,224,23, + 56,20,8,24,12,24,4,16,4,16,4,16,4,16,4,16, + 4,16,4,16,4,16,4,124,31,13,20,40,20,3,0,6, + 0,6,0,6,0,0,0,0,0,0,0,126,0,2,0,2, + 0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2, + 0,2,0,2,0,255,248,10,26,52,20,4,250,1,128,1, + 128,1,128,0,0,0,0,0,0,255,192,0,64,0,64,0, + 64,0,64,0,64,0,64,0,64,0,64,0,64,0,64,0, + 64,0,64,0,64,0,64,0,64,0,192,0,128,3,128,254, + 0,15,20,40,20,2,0,240,0,16,0,16,0,16,0,16, + 0,16,0,16,252,16,48,16,96,16,192,17,128,19,0,30, + 0,19,0,17,128,16,192,16,96,16,48,16,24,240,62,13, + 20,40,20,3,0,126,0,2,0,2,0,2,0,2,0,2, + 0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2, + 0,2,0,2,0,2,0,2,0,2,0,255,248,19,14,42, + 20,0,0,231,14,0,41,147,0,48,225,128,48,96,128,32, + 64,128,32,64,128,32,64,128,32,64,128,32,64,128,32,64, + 128,32,64,128,32,64,128,32,64,128,248,112,224,15,14,28, + 20,2,0,227,192,46,112,40,16,48,24,48,8,32,8,32, + 8,32,8,32,8,32,8,32,8,32,8,32,8,248,62,15, + 14,28,20,2,0,15,224,56,56,96,12,64,4,192,6,128, + 2,128,2,128,2,128,2,192,6,64,4,96,12,56,56,15, + 224,17,20,60,20,0,250,1,248,0,247,14,0,20,3,0, + 24,1,0,24,1,128,16,0,128,16,0,128,16,0,128,16, + 0,128,24,1,128,24,1,0,20,3,0,23,14,0,17,248, + 0,16,0,0,16,0,0,16,0,0,16,0,0,16,0,0, + 255,0,0,17,20,60,20,2,250,15,192,0,56,119,128,96, + 28,0,64,12,0,192,12,0,128,4,0,128,4,0,128,4, + 0,128,4,0,192,12,0,64,12,0,96,28,0,56,116,0, + 15,196,0,0,4,0,0,4,0,0,4,0,0,4,0,0, + 4,0,0,127,128,15,14,28,20,3,0,120,124,9,198,11, + 0,12,0,12,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,255,240,13,14,28,20,3,0,15,144,56, + 240,96,48,64,16,96,0,56,0,15,128,0,224,0,48,128, + 24,128,24,192,48,248,224,143,128,14,19,38,20,2,0,16, + 0,16,0,16,0,16,0,16,0,255,240,16,0,16,0,16, + 0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,24, + 12,12,56,7,224,16,14,28,20,1,0,240,60,16,4,16, + 4,16,4,16,4,16,4,16,4,16,4,16,4,16,4,16, + 12,24,12,12,52,7,231,17,14,42,20,1,0,252,31,128, + 48,6,0,16,4,0,16,4,0,24,12,0,8,8,0,12, + 24,0,4,16,0,4,16,0,6,48,0,2,32,0,3,96, + 0,1,64,0,1,192,0,17,14,42,20,1,0,248,15,128, + 96,3,0,32,2,0,32,2,0,33,194,0,33,66,0,49, + 70,0,19,100,0,18,36,0,18,36,0,22,52,0,28,28, + 0,8,8,0,8,8,0,15,14,28,20,2,0,248,62,96, + 12,48,24,24,48,12,96,6,192,3,128,3,128,6,192,12, + 96,24,48,48,24,96,12,248,62,15,20,40,20,2,250,248, + 62,64,4,96,12,32,8,48,24,16,16,24,48,8,32,12, + 96,4,64,6,192,2,128,3,128,1,0,3,0,2,0,2, + 0,6,0,4,0,255,128,11,14,28,20,4,0,255,224,128, + 96,128,192,129,128,3,0,6,0,4,0,12,0,24,0,48, + 0,96,32,64,32,192,32,255,224,7,25,25,20,6,252,6, + 12,24,16,16,16,16,16,16,16,16,48,96,224,48,16,16, + 16,16,16,16,16,16,24,14,1,25,25,20,9,252,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,7,25,25,20,6,252,192,96,48, + 16,16,16,16,16,16,16,16,24,12,14,24,16,16,16,16, + 16,16,16,16,48,224,13,5,10,20,3,7,24,0,124,8, + 199,24,129,176,0,224,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,0,0,20,0,1,5,20,20, + 20,7,250,112,248,112,0,0,0,0,32,32,32,32,32,32, + 32,112,112,112,112,112,32,11,20,40,20,4,0,4,0,4, + 0,4,0,4,0,31,128,48,224,96,32,192,32,128,0,128, + 0,128,0,128,0,192,0,96,32,48,224,31,128,4,0,4, + 0,4,0,4,0,14,19,38,20,2,0,3,224,12,48,8, + 24,24,0,16,0,16,0,16,0,24,0,8,0,255,128,8, + 0,8,0,8,0,8,0,8,0,24,0,16,4,48,12,127, + 248,13,13,26,20,3,3,192,24,111,176,56,224,32,32,96, + 48,64,16,64,16,64,16,96,48,32,32,56,224,111,176,192, + 24,15,19,38,20,2,0,248,62,96,12,48,24,16,16,24, + 48,8,32,12,96,6,192,2,128,3,128,63,248,1,0,1, + 0,63,248,1,0,1,0,1,0,1,0,31,240,1,25,25, + 20,9,252,128,128,128,128,128,128,128,128,128,128,128,0,0, + 0,0,128,128,128,128,128,128,128,128,128,128,14,23,46,20, + 3,254,7,248,28,8,16,8,16,8,16,0,24,0,124,0, + 198,0,131,0,129,192,192,96,112,56,24,12,12,4,7,4, + 1,132,0,252,0,96,0,32,64,32,64,32,64,224,127,128, + 10,3,6,20,5,17,97,128,243,192,97,128,19,19,57,20, + 0,0,1,240,0,7,28,0,28,7,0,48,1,128,33,232, + 128,99,24,192,70,8,64,204,8,96,136,0,32,136,0,32, + 136,0,32,140,0,32,198,12,96,67,24,64,97,240,192,48, + 1,128,24,3,0,15,30,0,1,240,0,9,12,24,20,5, + 7,60,0,102,0,2,0,2,0,126,0,198,0,130,0,206, + 0,123,128,0,0,0,0,255,128,16,14,28,20,2,0,1, + 131,3,6,6,12,12,24,24,48,48,96,96,192,225,192,96, + 192,48,96,24,48,12,24,6,12,3,6,14,6,12,20,3, + 6,255,252,0,4,0,4,0,4,0,4,0,4,15,1,2, + 20,2,9,255,254,19,19,57,20,0,0,3,248,0,14,14, + 0,24,3,0,48,1,128,103,224,192,66,48,64,194,24,96, + 130,8,32,130,8,32,130,24,32,130,48,32,131,224,32,194, + 48,96,66,24,64,103,12,192,48,1,128,24,3,0,14,14, + 0,3,248,0,9,2,4,20,5,17,255,128,255,128,9,10, + 20,20,5,11,62,0,99,0,65,0,193,128,128,128,128,128, + 193,128,65,0,99,0,62,0,15,16,32,20,2,1,1,0, + 1,0,1,0,1,0,1,0,1,0,255,254,1,0,1,0, + 1,0,1,0,1,0,1,0,0,0,0,0,255,254,8,14, + 14,20,5,7,60,102,67,193,3,2,6,12,24,16,48,96, + 193,255,8,14,14,20,6,7,60,102,195,1,1,6,28,6, + 3,1,1,195,102,60,6,5,5,20,9,17,12,24,48,96, + 192,16,20,40,20,1,250,240,60,16,4,16,4,16,4,16, + 4,16,4,16,4,16,4,16,4,16,4,24,12,24,28,28, + 52,23,231,16,0,16,0,16,0,16,0,16,0,16,0,15, + 23,46,20,2,254,15,254,57,16,113,16,97,16,225,16,193, + 16,193,16,225,16,97,16,113,16,61,16,15,16,1,16,1, + 16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1, + 16,31,190,5,4,4,20,7,7,112,248,248,112,5,5,5, + 20,7,251,32,32,48,152,240,7,14,14,20,6,7,112,208, + 16,16,16,16,16,16,16,16,16,16,16,254,9,12,24,20, + 5,7,28,0,119,0,65,0,193,128,128,128,193,128,65,0, + 119,0,28,0,0,0,0,0,255,128,16,14,28,20,2,0, + 193,128,96,192,48,96,24,48,12,24,6,12,3,6,3,135, + 3,6,6,12,12,24,24,48,48,96,96,192,18,21,63,20, + 1,0,48,0,192,240,0,128,16,1,128,16,3,0,16,2, + 0,16,6,0,16,12,0,16,8,0,16,24,0,16,48,0, + 16,35,0,16,103,0,254,197,0,0,141,0,1,153,0,3, + 17,0,2,49,0,6,63,128,12,1,0,8,1,0,24,7, + 128,18,21,63,20,1,0,48,0,128,240,1,128,16,3,0, + 16,6,0,16,4,0,16,12,0,16,24,0,16,16,0,16, + 48,0,16,96,0,16,71,128,16,204,192,253,152,64,3,0, + 192,2,0,128,6,1,128,12,7,0,8,12,0,24,24,0, + 48,48,0,96,63,192,19,21,63,20,0,0,60,0,0,102, + 0,96,3,0,192,3,1,128,6,3,0,28,6,0,6,12, + 0,3,8,0,1,24,0,1,48,0,195,33,128,102,99,128, + 60,194,128,1,134,128,1,12,128,3,8,128,6,24,128,12, + 31,192,24,0,128,48,0,128,0,3,192,11,20,40,20,4, + 250,14,0,31,0,14,0,0,0,0,0,0,0,0,0,4, + 0,4,0,12,0,24,0,112,0,64,0,192,0,128,0,128, + 0,192,32,96,32,49,224,31,0,19,26,78,20,0,0,6, + 0,0,3,0,0,1,128,0,0,192,0,0,96,0,0,0, + 0,0,0,0,31,224,0,0,160,0,1,176,0,1,16,0, + 1,16,0,3,24,0,2,8,0,2,8,0,6,12,0,4, + 4,0,4,4,0,12,6,0,15,254,0,8,2,0,24,3, + 0,16,1,0,16,1,0,48,1,128,254,15,224,19,26,78, + 20,0,0,0,12,0,0,24,0,0,48,0,0,96,0,0, + 192,0,0,0,0,0,0,0,31,224,0,0,160,0,1,176, + 0,1,16,0,1,16,0,3,24,0,2,8,0,2,8,0, + 6,12,0,4,4,0,4,4,0,12,6,0,15,254,0,8, + 2,0,24,3,0,16,1,0,16,1,0,48,1,128,254,15, + 224,19,26,78,20,0,0,0,64,0,0,224,0,1,176,0, + 3,24,0,6,12,0,0,0,0,0,0,0,31,224,0,0, + 160,0,1,176,0,1,16,0,1,16,0,3,24,0,2,8, + 0,2,8,0,6,12,0,4,4,0,4,4,0,12,6,0, + 15,254,0,8,2,0,24,3,0,16,1,0,16,1,0,48, + 1,128,254,15,224,19,24,72,20,0,0,3,132,0,6,236, + 0,4,56,0,0,0,0,0,0,0,31,224,0,0,160,0, + 1,176,0,1,16,0,1,16,0,3,24,0,2,8,0,2, + 8,0,6,12,0,4,4,0,4,4,0,12,6,0,15,254, + 0,8,2,0,24,3,0,16,1,0,16,1,0,48,1,128, + 254,15,224,19,24,72,20,0,0,6,12,0,15,30,0,6, + 12,0,0,0,0,0,0,0,31,224,0,0,160,0,1,176, + 0,1,16,0,1,16,0,3,24,0,2,8,0,2,8,0, + 6,12,0,4,4,0,4,4,0,12,6,0,15,254,0,8, + 2,0,24,3,0,16,1,0,16,1,0,48,1,128,254,15, + 224,19,26,78,20,0,0,0,224,0,1,176,0,1,16,0, + 1,16,0,1,176,0,0,224,0,0,0,0,31,224,0,0, + 160,0,1,176,0,1,16,0,1,16,0,3,24,0,2,8, + 0,2,8,0,6,12,0,4,4,0,4,4,0,12,6,0, + 15,254,0,8,2,0,24,3,0,16,1,0,16,1,0,48, + 1,128,254,15,224,18,19,57,20,1,0,31,255,128,2,64, + 128,2,64,128,6,64,128,4,64,128,4,64,128,4,64,0, + 12,68,0,8,68,0,8,124,0,8,68,0,24,68,0,31, + 192,0,16,64,0,48,64,64,32,64,64,32,64,64,32,64, + 64,251,255,192,15,24,48,20,2,251,7,196,28,116,48,12, + 96,12,64,4,192,4,128,0,128,0,128,0,128,0,128,0, + 128,0,128,0,192,0,64,2,96,4,48,28,28,112,7,192, + 1,0,1,0,1,128,4,192,7,128,15,26,52,20,1,0, + 12,0,6,0,3,0,1,128,0,192,0,0,0,0,255,252, + 16,4,16,4,16,4,16,4,16,4,16,64,16,64,16,64, + 31,192,16,64,16,64,16,0,16,2,16,2,16,2,16,2, + 16,2,255,254,15,26,52,20,1,0,0,48,0,96,0,192, + 1,128,3,0,0,0,0,0,255,252,16,4,16,4,16,4, + 16,4,16,4,16,64,16,64,16,64,31,192,16,64,16,64, + 16,0,16,2,16,2,16,2,16,2,16,2,255,254,15,26, + 52,20,1,0,0,128,1,192,3,96,6,48,12,24,0,0, + 0,0,255,252,16,4,16,4,16,4,16,4,16,4,16,64, + 16,64,16,64,31,192,16,64,16,64,16,0,16,2,16,2, + 16,2,16,2,16,2,255,254,15,24,48,20,1,0,12,48, + 30,120,12,48,0,0,0,0,255,252,16,4,16,4,16,4, + 16,4,16,4,16,64,16,64,16,64,31,192,16,64,16,64, + 16,0,16,2,16,2,16,2,16,2,16,2,255,254,11,26, + 52,20,4,0,48,0,24,0,12,0,6,0,3,0,0,0, + 0,0,255,224,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,255,224,11,26,52,20,4,0,0,192, + 1,128,3,0,6,0,12,0,0,0,0,0,255,224,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 255,224,11,26,52,20,4,0,4,0,14,0,27,0,49,128, + 96,192,0,0,0,0,255,224,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,255,224,11,24,48,20, + 4,0,96,192,241,224,96,192,0,0,0,0,255,224,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 255,224,15,19,38,20,1,0,255,192,32,112,32,24,32,12, + 32,4,32,6,32,2,32,2,32,2,254,2,32,2,32,2, + 32,2,32,6,32,4,32,12,32,24,32,112,255,192,18,24, + 72,20,0,0,3,132,0,6,236,0,4,56,0,0,0,0, + 0,0,0,248,31,192,28,1,0,20,1,0,22,1,0,18, + 1,0,19,1,0,17,129,0,16,129,0,16,193,0,16,65, + 0,16,97,0,16,33,0,16,49,0,16,25,0,16,9,0, + 16,13,0,16,5,0,16,7,0,127,3,0,15,26,52,20, + 2,0,24,0,12,0,6,0,3,0,1,128,0,0,0,0, + 7,192,28,112,48,24,96,12,64,4,192,6,128,2,128,2, + 128,2,128,2,128,2,128,2,192,6,64,4,96,12,32,8, + 48,24,28,112,7,192,15,26,52,20,2,0,0,24,0,48, + 0,96,0,192,1,128,0,0,0,0,7,192,28,112,48,24, + 96,12,64,4,192,6,128,2,128,2,128,2,128,2,128,2, + 128,2,192,6,64,4,96,12,32,8,48,24,28,112,7,192, + 15,26,52,20,2,0,1,0,3,128,6,192,12,96,24,48, + 0,0,0,0,7,192,28,112,48,24,96,12,64,4,192,6, + 128,2,128,2,128,2,128,2,128,2,128,2,192,6,64,4, + 96,12,32,8,48,24,28,112,7,192,15,24,48,20,2,0, + 14,16,27,176,16,224,0,0,0,0,7,192,28,112,48,24, + 96,12,64,4,192,6,128,2,128,2,128,2,128,2,128,2, + 128,2,192,6,64,4,96,12,32,8,48,24,28,112,7,192, + 15,24,48,20,2,0,48,48,120,120,48,48,0,0,0,0, + 7,192,28,112,48,24,96,12,64,4,192,6,128,2,128,2, + 128,2,128,2,128,2,128,2,192,6,64,4,96,12,32,8, + 48,24,28,112,7,192,13,14,28,20,3,1,128,8,192,24, + 96,48,48,96,24,192,13,128,7,0,7,0,13,128,24,192, + 48,96,96,48,192,24,128,8,16,21,42,20,2,255,0,1, + 7,195,28,118,48,28,32,24,96,60,64,36,192,102,128,194, + 129,130,129,2,131,2,134,2,204,6,72,4,120,12,48,8, + 48,24,124,48,199,224,128,0,17,26,78,20,1,0,6,0, + 0,3,0,0,1,128,0,0,192,0,0,96,0,0,0,0, + 0,0,0,254,63,128,32,2,0,32,2,0,32,2,0,32, + 2,0,32,2,0,32,2,0,32,2,0,32,2,0,32,2, + 0,32,2,0,32,2,0,32,2,0,32,2,0,48,6,0, + 16,4,0,24,12,0,14,56,0,3,224,0,17,26,78,20, + 1,0,0,24,0,0,48,0,0,96,0,0,192,0,1,128, + 0,0,0,0,0,0,0,254,63,128,32,2,0,32,2,0, + 32,2,0,32,2,0,32,2,0,32,2,0,32,2,0,32, + 2,0,32,2,0,32,2,0,32,2,0,32,2,0,32,2, + 0,48,6,0,16,4,0,24,12,0,14,56,0,3,224,0, + 17,26,78,20,1,0,0,128,0,1,192,0,3,96,0,6, + 48,0,12,24,0,0,0,0,0,0,0,254,63,128,32,2, + 0,32,2,0,32,2,0,32,2,0,32,2,0,32,2,0, + 32,2,0,32,2,0,32,2,0,32,2,0,32,2,0,32, + 2,0,32,2,0,48,6,0,16,4,0,24,12,0,14,56, + 0,3,224,0,17,24,72,20,1,0,12,24,0,30,60,0, + 12,24,0,0,0,0,0,0,0,254,63,128,32,2,0,32, + 2,0,32,2,0,32,2,0,32,2,0,32,2,0,32,2, + 0,32,2,0,32,2,0,32,2,0,32,2,0,32,2,0, + 32,2,0,48,6,0,16,4,0,24,12,0,14,56,0,3, + 224,0,15,26,52,20,2,0,0,48,0,96,0,192,1,128, + 3,0,0,0,0,0,248,62,96,12,48,24,16,16,24,48, + 8,32,12,96,6,192,2,128,3,128,1,0,1,0,1,0, + 1,0,1,0,1,0,1,0,1,0,31,240,16,19,38,20, + 1,0,254,0,16,0,16,0,16,0,31,224,16,60,16,6, + 16,2,16,3,16,3,16,2,16,6,16,60,31,224,16,0, + 16,0,16,0,16,0,254,0,15,21,42,20,1,0,7,192, + 12,96,8,32,24,48,16,16,16,16,16,16,16,48,16,96, + 17,192,16,112,16,24,16,4,16,6,16,2,16,2,16,2, + 17,6,17,4,17,140,248,248,15,22,44,20,2,0,24,0, + 12,0,6,0,3,0,1,128,0,0,0,0,0,0,15,128, + 56,224,0,32,0,48,0,16,0,16,31,240,112,48,192,16, + 128,16,128,16,128,48,192,240,127,158,15,22,44,20,2,0, + 0,96,0,192,1,128,3,0,6,0,0,0,0,0,0,0, + 15,128,56,224,0,32,0,48,0,16,0,16,31,240,112,48, + 192,16,128,16,128,16,128,48,192,240,127,158,15,22,44,20, + 2,0,1,0,3,128,6,192,12,96,24,48,0,0,0,0, + 0,0,15,128,56,224,0,32,0,48,0,16,0,16,31,240, + 112,48,192,16,128,16,128,16,128,48,192,240,127,158,15,20, + 40,20,2,0,14,16,27,176,16,224,0,0,0,0,0,0, + 15,128,56,224,0,32,0,48,0,16,0,16,31,240,112,48, + 192,16,128,16,128,16,128,48,192,240,127,158,15,20,40,20, + 2,0,48,192,121,224,48,192,0,0,0,0,0,0,15,128, + 56,224,0,32,0,48,0,16,0,16,31,240,112,48,192,16, + 128,16,128,16,128,48,192,240,127,158,15,23,46,20,2,0, + 7,0,13,128,8,128,8,128,13,128,7,0,0,0,0,0, + 0,0,15,128,56,224,0,32,0,48,0,16,0,16,31,240, + 112,48,192,16,128,16,128,16,128,48,192,240,127,158,19,14, + 42,20,0,0,31,15,128,113,152,192,0,240,64,0,96,96, + 0,96,32,30,64,32,115,255,224,192,192,0,128,64,0,128, + 96,0,128,224,0,193,80,96,99,88,192,62,79,128,14,19, + 38,20,3,251,15,200,56,104,96,24,64,24,192,8,128,8, + 128,0,128,0,128,0,192,0,64,4,96,28,56,112,15,192, + 2,0,2,0,3,0,9,128,15,0,14,22,44,20,2,0, + 24,0,12,0,6,0,3,0,1,128,0,0,0,0,0,0, + 15,192,56,112,96,24,64,8,192,12,128,4,255,252,128,0, + 128,0,128,0,192,0,96,12,56,56,15,224,14,22,44,20, + 2,0,0,48,0,96,0,192,1,128,3,0,0,0,0,0, + 0,0,15,192,56,112,96,24,64,8,192,12,128,4,255,252, + 128,0,128,0,128,0,192,0,96,12,56,56,15,224,14,22, + 44,20,2,0,1,0,3,128,6,192,12,96,24,48,0,0, + 0,0,0,0,15,192,56,112,96,24,64,8,192,12,128,4, + 255,252,128,0,128,0,128,0,192,0,96,12,56,56,15,224, + 14,20,40,20,2,0,48,96,120,240,48,96,0,0,0,0, + 0,0,15,192,56,112,96,24,64,8,192,12,128,4,255,252, + 128,0,128,0,128,0,192,0,96,12,56,56,15,224,13,22, + 44,20,3,0,48,0,24,0,12,0,6,0,3,0,0,0, + 0,0,0,0,126,0,2,0,2,0,2,0,2,0,2,0, + 2,0,2,0,2,0,2,0,2,0,2,0,2,0,255,248, + 13,22,44,20,3,0,0,192,1,128,3,0,6,0,12,0, + 0,0,0,0,0,0,126,0,2,0,2,0,2,0,2,0, + 2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0, + 255,248,13,21,42,20,3,0,4,0,14,0,27,0,49,128, + 96,192,0,0,0,0,126,0,2,0,2,0,2,0,2,0, + 2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0, + 255,248,13,20,40,20,3,0,97,128,243,192,97,128,0,0, + 0,0,0,0,126,0,2,0,2,0,2,0,2,0,2,0, + 2,0,2,0,2,0,2,0,2,0,2,0,2,0,255,248, + 15,20,40,20,2,0,124,12,79,56,1,224,3,192,14,96, + 56,48,32,24,0,12,15,228,56,54,96,14,192,6,128,2, + 128,2,128,2,192,6,64,4,96,12,24,56,15,224,15,20, + 40,20,2,0,14,16,27,176,16,224,0,0,0,0,0,0, + 227,192,46,112,56,16,48,24,32,8,32,8,32,8,32,8, + 32,8,32,8,32,8,32,8,32,8,248,62,15,22,44,20, + 2,0,12,0,6,0,3,0,1,128,0,192,0,0,0,0, + 0,0,15,224,56,56,96,12,64,4,192,6,128,2,128,2, + 128,2,128,2,192,6,64,4,96,12,56,56,15,224,15,22, + 44,20,2,0,0,48,0,96,0,192,1,128,3,0,0,0, + 0,0,0,0,15,224,56,56,96,12,64,4,192,6,128,2, + 128,2,128,2,128,2,192,6,64,4,96,12,56,56,15,224, + 15,22,44,20,2,0,1,128,3,192,6,96,12,48,24,24, + 0,0,0,0,0,0,15,224,56,56,96,12,64,4,192,6, + 128,2,128,2,128,2,128,2,192,6,64,4,96,12,56,56, + 15,224,15,20,40,20,2,0,14,16,27,176,16,224,0,0, + 0,0,0,0,15,224,56,56,96,12,64,4,192,6,128,2, + 128,2,128,2,128,2,192,6,64,4,96,12,56,56,15,224, + 15,20,40,20,2,0,24,96,60,240,24,96,0,0,0,0, + 0,0,15,224,56,56,96,12,64,4,192,6,128,2,128,2, + 128,2,128,2,192,6,64,4,96,12,56,56,15,224,14,16, + 32,20,2,1,3,0,7,128,3,0,0,0,0,0,0,0, + 0,0,0,0,255,252,0,0,0,0,0,0,0,0,3,0, + 7,128,3,0,15,16,32,20,2,255,0,2,7,230,28,60, + 48,24,64,52,192,102,128,194,129,130,131,2,134,2,204,6, + 88,4,112,24,120,112,207,192,128,0,16,22,44,20,1,0, + 12,0,6,0,3,0,1,128,0,192,0,0,0,0,0,0, + 240,60,16,4,16,4,16,4,16,4,16,4,16,4,16,4, + 16,4,16,4,16,12,24,28,12,52,7,231,16,22,44,20, + 1,0,0,48,0,96,0,192,1,128,3,0,0,0,0,0, + 0,0,240,60,16,4,16,4,16,4,16,4,16,4,16,4, + 16,4,16,4,16,4,16,12,24,28,12,52,7,231,16,21, + 42,20,1,0,0,128,1,192,3,96,6,48,12,24,0,0, + 0,0,240,60,16,4,16,4,16,4,16,4,16,4,16,4, + 16,4,16,4,16,4,16,12,24,28,12,52,7,231,16,20, + 40,20,1,0,24,48,60,120,24,48,0,0,0,0,0,0, + 240,60,16,4,16,4,16,4,16,4,16,4,16,4,16,4, + 16,4,16,4,16,12,24,28,12,52,7,231,15,28,56,20, + 2,250,0,48,0,96,0,192,1,128,3,0,0,0,0,0, + 0,0,248,62,64,4,96,12,32,8,48,24,16,16,24,48, + 8,32,12,96,4,64,6,192,2,128,3,128,1,0,3,0, + 2,0,2,0,6,0,4,0,127,128,17,27,81,20,0,250, + 240,0,0,16,0,0,16,0,0,16,0,0,16,0,0,16, + 0,0,16,0,0,17,248,0,23,14,0,28,3,0,24,1, + 0,24,1,128,16,0,128,16,0,128,16,0,128,16,0,128, + 24,1,128,24,1,0,28,3,0,23,14,0,17,248,0,16, + 0,0,16,0,0,16,0,0,16,0,0,16,0,0,255,0, + 0,15,25,50,20,2,250,24,24,60,60,24,24,0,0,0, + 0,248,62,64,4,96,12,32,8,48,24,16,16,24,48,8, + 32,12,96,4,64,6,192,2,128,3,128,1,0,3,0,2, + 0,2,0,6,0,4,0,127,128}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--34-240-100-100-M-200-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 20 + Calculated Max Values w=15 h=25 x= 7 y= 9 dx=20 dy= 0 ascent=22 len=50 + Font Bounding box w=28 h=42 x=-6 y=-10 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =20 descent= 0 + X Font ascent =20 descent= 0 + Max Font ascent =22 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR24n[638] U8G_SECTION(".progmem.u8g_font_courR24n") = { + 0,28,42,250,246,20,0,0,0,0,42,57,0,22,252,20, + 0,11,13,26,20,4,8,4,0,4,0,4,0,4,0,132, + 32,245,224,31,0,14,0,10,0,27,0,49,128,32,128,96, + 192,15,17,34,20,2,1,1,0,1,0,1,0,1,0,1, + 0,1,0,1,0,1,0,255,254,1,0,1,0,1,0,1, + 0,1,0,1,0,1,0,1,0,6,9,9,20,5,252,60, + 60,120,120,96,224,192,192,128,15,1,2,20,2,9,255,254, + 5,4,4,20,7,0,112,248,248,112,11,25,50,20,4,253, + 0,32,0,96,0,64,0,64,0,192,0,128,1,128,1,0, + 3,0,2,0,2,0,6,0,4,0,12,0,8,0,8,0, + 24,0,16,0,48,0,32,0,96,0,64,0,64,0,192,0, + 128,0,11,20,40,20,4,0,31,0,49,128,96,192,64,64, + 64,64,128,32,128,32,128,32,128,32,128,32,128,32,128,32, + 128,32,128,32,192,96,64,64,64,64,96,192,49,128,31,0, + 11,20,40,20,4,0,12,0,60,0,228,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,255,224,13,20, + 40,20,3,0,15,192,48,96,96,16,64,16,64,16,0,16, + 0,48,0,32,0,96,0,192,1,128,3,0,6,0,12,0, + 24,0,48,0,96,0,192,0,128,8,255,248,13,20,40,20, + 3,0,15,128,56,224,96,48,0,16,0,16,0,16,0,16, + 0,32,0,64,7,128,0,96,0,16,0,8,0,8,0,8, + 0,8,0,24,192,48,112,224,31,128,13,20,40,20,3,0, + 0,192,1,64,1,64,2,64,6,64,4,64,8,64,24,64, + 16,64,32,64,96,64,64,64,128,64,255,248,0,64,0,64, + 0,64,0,64,0,64,3,248,13,20,40,20,3,0,63,240, + 32,0,32,0,32,0,32,0,32,0,32,0,39,128,60,224, + 32,48,0,16,0,24,0,8,0,8,0,8,0,24,192,16, + 96,48,56,224,15,128,12,20,40,20,4,0,7,192,28,32, + 48,0,32,0,96,0,64,0,192,0,143,128,184,224,160,32, + 192,48,192,16,192,16,192,16,192,16,64,16,96,48,32,32, + 56,224,15,128,11,20,40,20,4,0,255,224,128,32,128,32, + 0,96,0,64,0,64,0,192,0,128,0,128,1,128,1,0, + 1,0,3,0,2,0,2,0,2,0,6,0,4,0,4,0, + 4,0,11,20,40,20,4,0,31,0,96,192,64,64,192,96, + 128,32,128,32,192,96,64,64,49,128,31,0,113,192,64,64, + 192,96,128,32,128,32,128,32,192,96,64,64,113,192,31,0, + 12,20,40,20,4,0,31,0,112,192,64,96,192,32,128,48, + 128,48,128,48,128,48,192,80,64,208,115,144,30,16,0,32, + 0,32,0,32,0,64,0,192,1,128,14,0,120,0}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--34-240-100-100-M-200-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 19, '1' Height: 20 + Calculated Max Values w=19 h=26 x= 9 y=17 dx=20 dy= 0 ascent=22 len=60 + Font Bounding box w=28 h=42 x=-6 y=-10 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =19 descent=-6 + X Font ascent =21 descent=-6 + Max Font ascent =22 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR24r[3991] U8G_SECTION(".progmem.u8g_font_courR24r") = { + 0,28,42,250,246,19,4,184,10,129,32,127,250,22,250,21, + 250,0,0,0,20,0,1,5,21,21,20,8,0,32,112,112, + 112,112,112,32,32,32,32,32,32,32,32,0,0,0,0,112, + 248,112,11,10,20,20,4,10,241,224,241,224,241,224,241,224, + 241,224,96,192,96,192,64,128,64,128,64,128,13,23,46,20, + 3,254,4,64,4,64,4,64,4,64,12,192,8,128,8,128, + 8,128,127,248,8,128,8,128,8,128,8,128,8,128,255,240, + 8,128,8,128,8,128,9,128,17,0,17,0,17,0,17,0, + 12,25,50,20,4,253,4,0,4,0,4,0,31,32,113,224, + 64,96,128,32,128,0,192,0,96,0,60,0,7,128,0,224, + 0,48,0,16,0,16,128,48,192,96,241,192,159,0,4,0, + 4,0,4,0,4,0,4,0,15,20,40,20,3,0,30,0, + 51,0,97,128,64,128,64,128,97,128,51,0,30,14,0,112, + 3,128,28,0,224,0,1,224,3,48,6,24,4,8,4,8, + 6,24,3,48,1,224,12,17,34,20,3,0,15,192,25,128, + 48,0,32,0,32,0,48,0,16,0,24,0,60,0,100,48, + 70,96,194,64,131,64,193,192,65,128,99,192,62,112,4,11, + 11,20,8,10,112,112,112,112,112,224,224,224,224,224,224,5, + 25,25,20,9,252,8,24,16,48,32,96,96,64,64,192,192, + 192,192,192,192,192,64,64,96,96,32,48,16,24,8,5,25, + 25,20,5,252,128,192,64,96,32,48,48,16,16,24,24,24, + 24,24,24,24,16,16,48,48,32,96,64,192,128,11,13,26, + 20,4,8,4,0,4,0,4,0,4,0,132,32,245,224,31, + 0,14,0,10,0,27,0,49,128,32,128,96,192,15,17,34, + 20,2,1,1,0,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,255,254,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,1,0,6,9,9,20,5,252,60,60,120,120,96, + 224,192,192,128,15,1,2,20,2,9,255,254,5,4,4,20, + 7,0,112,248,248,112,11,25,50,20,4,253,0,32,0,96, + 0,64,0,64,0,192,0,128,1,128,1,0,3,0,2,0, + 2,0,6,0,4,0,12,0,8,0,8,0,24,0,16,0, + 48,0,32,0,96,0,64,0,64,0,192,0,128,0,11,20, + 40,20,4,0,31,0,49,128,96,192,64,64,64,64,128,32, + 128,32,128,32,128,32,128,32,128,32,128,32,128,32,128,32, + 192,96,64,64,64,64,96,192,49,128,31,0,11,20,40,20, + 4,0,12,0,60,0,228,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,255,224,13,20,40,20,3,0, + 15,192,48,96,96,16,64,16,64,16,0,16,0,48,0,32, + 0,96,0,192,1,128,3,0,6,0,12,0,24,0,48,0, + 96,0,192,0,128,8,255,248,13,20,40,20,3,0,15,128, + 56,224,96,48,0,16,0,16,0,16,0,16,0,32,0,64, + 7,128,0,96,0,16,0,8,0,8,0,8,0,8,0,24, + 192,48,112,224,31,128,13,20,40,20,3,0,0,192,1,64, + 1,64,2,64,6,64,4,64,8,64,24,64,16,64,32,64, + 96,64,64,64,128,64,255,248,0,64,0,64,0,64,0,64, + 0,64,3,248,13,20,40,20,3,0,63,240,32,0,32,0, + 32,0,32,0,32,0,32,0,39,128,60,224,32,48,0,16, + 0,24,0,8,0,8,0,8,0,24,192,16,96,48,56,224, + 15,128,12,20,40,20,4,0,7,192,28,32,48,0,32,0, + 96,0,64,0,192,0,143,128,184,224,160,32,192,48,192,16, + 192,16,192,16,192,16,64,16,96,48,32,32,56,224,15,128, + 11,20,40,20,4,0,255,224,128,32,128,32,0,96,0,64, + 0,64,0,192,0,128,0,128,1,128,1,0,1,0,3,0, + 2,0,2,0,2,0,6,0,4,0,4,0,4,0,11,20, + 40,20,4,0,31,0,96,192,64,64,192,96,128,32,128,32, + 192,96,64,64,49,128,31,0,113,192,64,64,192,96,128,32, + 128,32,128,32,192,96,64,64,113,192,31,0,12,20,40,20, + 4,0,31,0,112,192,64,96,192,32,128,48,128,48,128,48, + 128,48,192,80,64,208,115,144,30,16,0,32,0,32,0,32, + 0,64,0,192,1,128,14,0,120,0,5,14,14,20,7,0, + 112,248,248,112,0,0,0,0,0,0,112,248,248,112,7,18, + 18,20,5,252,28,62,62,28,0,0,0,0,0,60,60,120, + 112,112,224,192,192,128,15,17,34,20,2,1,0,2,0,14, + 0,56,0,224,3,128,6,0,28,0,112,0,192,0,112,0, + 28,0,6,0,3,128,0,224,0,56,0,14,0,2,15,6, + 12,20,2,6,255,254,0,0,0,0,0,0,0,0,255,254, + 15,17,34,20,2,1,128,0,224,0,56,0,14,0,3,128, + 0,192,0,112,0,28,0,6,0,28,0,112,0,192,3,128, + 14,0,56,0,224,0,128,0,11,19,38,20,4,0,63,0, + 225,192,128,64,128,64,0,96,0,32,0,96,0,64,1,192, + 7,0,4,0,4,0,4,0,0,0,0,0,0,0,14,0, + 31,0,14,0,12,23,46,20,3,254,15,128,24,192,48,64, + 96,96,64,32,192,32,128,32,128,224,131,160,134,32,132,32, + 132,32,132,32,134,32,131,32,129,240,128,0,192,0,64,0, + 96,0,48,0,24,224,15,128,19,19,57,20,0,0,31,224, + 0,0,160,0,0,160,0,1,16,0,1,16,0,1,16,0, + 2,8,0,2,8,0,2,8,0,4,4,0,4,4,0,4, + 4,0,15,254,0,8,2,0,8,2,0,16,1,0,16,1, + 0,48,1,128,254,15,224,16,19,38,20,1,0,255,240,16, + 12,16,4,16,6,16,2,16,2,16,6,16,4,16,12,31, + 248,16,6,16,2,16,3,16,1,16,1,16,3,16,2,16, + 6,255,248,14,19,38,20,2,0,7,196,28,116,32,12,96, + 4,64,4,192,4,128,0,128,0,128,0,128,0,128,0,128, + 0,128,0,192,0,64,0,96,4,32,28,28,112,7,192,15, + 19,38,20,1,0,255,192,32,112,32,24,32,12,32,4,32, + 6,32,2,32,2,32,2,32,2,32,2,32,2,32,2,32, + 6,32,4,32,12,32,24,32,112,255,192,15,19,38,20,1, + 0,255,252,16,4,16,4,16,4,16,4,16,68,16,64,16, + 64,31,192,16,64,16,64,16,64,16,0,16,2,16,2,16, + 2,16,2,16,2,255,254,15,19,38,20,1,0,255,254,16, + 2,16,2,16,2,16,2,16,66,16,64,16,64,31,192,16, + 64,16,64,16,64,16,0,16,0,16,0,16,0,16,0,16, + 0,255,128,15,19,38,20,2,0,7,196,28,116,48,12,96, + 4,64,4,192,4,128,0,128,0,128,0,128,0,128,0,128, + 254,128,4,192,4,64,4,96,4,48,4,28,28,7,240,15, + 19,38,20,2,0,252,126,32,8,32,8,32,8,32,8,32, + 8,32,8,32,8,32,8,63,248,32,8,32,8,32,8,32, + 8,32,8,32,8,32,8,32,8,252,126,11,19,38,20,4, + 0,255,224,4,0,4,0,4,0,4,0,4,0,4,0,4, + 0,4,0,4,0,4,0,4,0,4,0,4,0,4,0,4, + 0,4,0,4,0,255,224,15,19,38,20,3,0,15,254,0, + 32,0,32,0,32,0,32,0,32,0,32,0,32,0,32,0, + 32,0,32,128,32,128,32,128,32,128,32,192,96,64,64,97, + 192,31,0,17,19,57,20,1,0,254,31,128,16,4,0,16, + 12,0,16,8,0,16,16,0,16,48,0,16,64,0,16,192, + 0,19,128,0,28,192,0,16,32,0,16,48,0,16,16,0, + 16,24,0,16,8,0,16,8,0,16,12,0,16,4,0,254, + 7,128,15,19,38,20,2,0,255,128,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,2,8,2,8,2,8,2,8,2,8,2,255,254,19,19, + 57,20,0,0,248,3,224,40,2,128,40,2,128,36,4,128, + 36,4,128,34,8,128,34,8,128,33,16,128,33,16,128,33, + 16,128,32,160,128,32,160,128,32,64,128,32,64,128,32,0, + 128,32,0,128,32,0,128,32,0,128,254,7,224,18,19,57, + 20,0,0,248,31,192,28,1,0,20,1,0,18,1,0,18, + 1,0,17,1,0,16,129,0,16,129,0,16,65,0,16,65, + 0,16,33,0,16,33,0,16,17,0,16,17,0,16,9,0, + 16,9,0,16,5,0,16,7,0,127,3,0,15,19,38,20, + 2,0,7,192,24,48,48,24,96,12,64,4,192,6,128,2, + 128,2,128,2,128,2,128,2,128,2,128,2,192,6,64,4, + 96,12,48,24,24,48,7,192,15,19,38,20,1,0,255,224, + 16,56,16,4,16,6,16,2,16,2,16,2,16,6,16,4, + 16,56,31,224,16,0,16,0,16,0,16,0,16,0,16,0, + 16,0,255,192,15,22,44,20,2,253,7,192,28,112,48,24, + 96,12,64,4,192,6,128,2,128,2,128,2,128,2,128,2, + 128,2,128,2,192,6,64,4,96,12,56,56,12,96,7,192, + 2,0,15,198,24,124,18,19,57,20,1,0,255,224,0,16, + 56,0,16,4,0,16,6,0,16,2,0,16,2,0,16,6, + 0,16,4,0,16,24,0,31,224,0,16,96,0,16,48,0, + 16,24,0,16,12,0,16,4,0,16,6,0,16,2,0,16, + 3,0,254,1,192,12,19,38,20,3,0,15,144,56,208,96, + 48,64,48,64,16,64,16,64,0,96,0,56,0,15,0,1, + 192,0,96,0,48,128,16,128,16,192,16,224,48,184,224,143, + 128,15,19,38,20,2,0,255,254,129,2,129,2,129,2,129, + 2,129,2,129,2,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,1,0,1,0,1,0,1,0,63,248,17,19,57, + 20,1,0,254,63,128,32,2,0,32,2,0,32,2,0,32, + 2,0,32,2,0,32,2,0,32,2,0,32,2,0,32,2, + 0,32,2,0,32,2,0,32,2,0,32,2,0,48,6,0, + 16,4,0,24,12,0,14,56,0,3,224,0,19,19,57,20, + 0,0,254,15,224,48,1,128,16,1,0,16,1,0,24,3, + 0,8,2,0,8,2,0,12,6,0,4,4,0,4,4,0, + 6,12,0,2,8,0,3,24,0,1,16,0,1,16,0,0, + 160,0,0,160,0,0,224,0,0,64,0,17,19,57,20,1, + 0,252,31,128,64,1,0,64,1,0,64,1,0,64,1,0, + 97,195,0,33,66,0,33,66,0,34,34,0,34,34,0,34, + 34,0,34,34,0,38,50,0,36,18,0,52,22,0,20,20, + 0,20,20,0,24,12,0,24,12,0,17,19,57,20,1,0, + 124,31,0,48,6,0,16,4,0,24,12,0,8,8,0,4, + 16,0,2,32,0,3,96,0,1,192,0,0,128,0,1,192, + 0,2,32,0,4,16,0,12,24,0,8,8,0,16,4,0, + 48,6,0,96,3,0,252,31,128,15,19,38,20,2,0,248, + 62,96,12,48,24,16,16,24,48,8,32,4,64,6,192,2, + 128,3,128,1,0,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,31,240,13,19,38,20,3,0,127,240,64,16,64, + 48,64,32,64,96,64,192,0,128,1,128,3,0,6,0,4, + 0,12,0,24,8,16,8,48,8,96,8,64,8,192,8,255, + 248,5,24,24,20,9,252,248,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,248,11, + 25,50,20,4,253,128,0,192,0,64,0,64,0,96,0,32, + 0,48,0,16,0,24,0,8,0,8,0,12,0,4,0,6, + 0,2,0,2,0,3,0,1,0,1,128,0,128,0,192,0, + 64,0,64,0,96,0,32,5,24,24,20,5,252,248,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,248,11,9,18,20,4,12,4,0,14,0,27, + 0,17,0,49,128,96,192,64,64,192,96,128,32,19,1,3, + 20,0,250,255,255,224,6,5,5,20,4,17,192,96,48,24, + 12,15,14,28,20,2,0,15,128,56,224,0,32,0,48,0, + 16,0,16,31,240,112,48,192,16,128,16,128,16,128,48,192, + 240,127,158,17,20,60,20,0,0,240,0,0,16,0,0,16, + 0,0,16,0,0,16,0,0,16,0,0,17,248,0,23,14, + 0,20,3,0,24,1,0,24,1,128,16,0,128,16,0,128, + 16,0,128,16,0,128,24,1,128,24,1,0,20,3,0,23, + 14,0,241,248,0,14,14,28,20,3,0,15,136,56,248,96, + 24,64,8,192,8,128,0,128,0,128,0,128,0,192,0,64, + 12,96,24,56,224,15,128,17,20,60,20,2,0,0,60,0, + 0,4,0,0,4,0,0,4,0,0,4,0,0,4,0,15, + 196,0,56,116,0,96,20,0,64,12,0,192,12,0,128,4, + 0,128,4,0,128,4,0,128,4,0,192,12,0,64,12,0, + 96,20,0,56,116,0,15,199,128,14,14,28,20,2,0,15, + 192,56,112,96,24,64,8,192,12,128,4,255,252,128,0,128, + 0,192,0,64,0,96,12,56,56,15,224,13,20,40,20,3, + 0,3,224,6,24,4,0,12,0,8,0,8,0,255,240,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,255,240,17,20,60,20,2,250,15, + 199,128,56,116,0,96,20,0,64,12,0,192,12,0,128,4, + 0,128,4,0,128,4,0,128,4,0,192,12,0,64,12,0, + 96,20,0,56,116,0,15,196,0,0,4,0,0,4,0,0, + 12,0,0,8,0,0,56,0,15,224,0,16,20,40,20,1, + 0,240,0,16,0,16,0,16,0,16,0,16,0,17,224,23, + 56,20,8,24,12,24,4,16,4,16,4,16,4,16,4,16, + 4,16,4,16,4,16,4,124,31,13,20,40,20,3,0,6, + 0,6,0,6,0,0,0,0,0,0,0,126,0,2,0,2, + 0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2, + 0,2,0,2,0,255,248,10,26,52,20,4,250,1,128,1, + 128,1,128,0,0,0,0,0,0,255,192,0,64,0,64,0, + 64,0,64,0,64,0,64,0,64,0,64,0,64,0,64,0, + 64,0,64,0,64,0,64,0,64,0,192,0,128,3,128,254, + 0,15,20,40,20,2,0,240,0,16,0,16,0,16,0,16, + 0,16,0,16,252,16,48,16,96,16,192,17,128,19,0,30, + 0,19,0,17,128,16,192,16,96,16,48,16,24,240,62,13, + 20,40,20,3,0,126,0,2,0,2,0,2,0,2,0,2, + 0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2, + 0,2,0,2,0,2,0,2,0,2,0,255,248,19,14,42, + 20,0,0,231,14,0,41,147,0,48,225,128,48,96,128,32, + 64,128,32,64,128,32,64,128,32,64,128,32,64,128,32,64, + 128,32,64,128,32,64,128,32,64,128,248,112,224,15,14,28, + 20,2,0,227,192,46,112,40,16,48,24,48,8,32,8,32, + 8,32,8,32,8,32,8,32,8,32,8,32,8,248,62,15, + 14,28,20,2,0,15,224,56,56,96,12,64,4,192,6,128, + 2,128,2,128,2,128,2,192,6,64,4,96,12,56,56,15, + 224,17,20,60,20,0,250,1,248,0,247,14,0,20,3,0, + 24,1,0,24,1,128,16,0,128,16,0,128,16,0,128,16, + 0,128,24,1,128,24,1,0,20,3,0,23,14,0,17,248, + 0,16,0,0,16,0,0,16,0,0,16,0,0,16,0,0, + 255,0,0,17,20,60,20,2,250,15,192,0,56,119,128,96, + 28,0,64,12,0,192,12,0,128,4,0,128,4,0,128,4, + 0,128,4,0,192,12,0,64,12,0,96,28,0,56,116,0, + 15,196,0,0,4,0,0,4,0,0,4,0,0,4,0,0, + 4,0,0,127,128,15,14,28,20,3,0,120,124,9,198,11, + 0,12,0,12,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,255,240,13,14,28,20,3,0,15,144,56, + 240,96,48,64,16,96,0,56,0,15,128,0,224,0,48,128, + 24,128,24,192,48,248,224,143,128,14,19,38,20,2,0,16, + 0,16,0,16,0,16,0,16,0,255,240,16,0,16,0,16, + 0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,24, + 12,12,56,7,224,16,14,28,20,1,0,240,60,16,4,16, + 4,16,4,16,4,16,4,16,4,16,4,16,4,16,4,16, + 12,24,12,12,52,7,231,17,14,42,20,1,0,252,31,128, + 48,6,0,16,4,0,16,4,0,24,12,0,8,8,0,12, + 24,0,4,16,0,4,16,0,6,48,0,2,32,0,3,96, + 0,1,64,0,1,192,0,17,14,42,20,1,0,248,15,128, + 96,3,0,32,2,0,32,2,0,33,194,0,33,66,0,49, + 70,0,19,100,0,18,36,0,18,36,0,22,52,0,28,28, + 0,8,8,0,8,8,0,15,14,28,20,2,0,248,62,96, + 12,48,24,24,48,12,96,6,192,3,128,3,128,6,192,12, + 96,24,48,48,24,96,12,248,62,15,20,40,20,2,250,248, + 62,64,4,96,12,32,8,48,24,16,16,24,48,8,32,12, + 96,4,64,6,192,2,128,3,128,1,0,3,0,2,0,2, + 0,6,0,4,0,255,128,11,14,28,20,4,0,255,224,128, + 96,128,192,129,128,3,0,6,0,4,0,12,0,24,0,48, + 0,96,32,64,32,192,32,255,224,7,25,25,20,6,252,6, + 12,24,16,16,16,16,16,16,16,16,48,96,224,48,16,16, + 16,16,16,16,16,16,24,14,1,25,25,20,9,252,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,7,25,25,20,6,252,192,96,48, + 16,16,16,16,16,16,16,16,24,12,14,24,16,16,16,16, + 16,16,16,16,48,224,13,5,10,20,3,7,24,0,124,8, + 199,24,129,176,0,224,255}; +/* + Fontname: -MUTT-ClearlyU-Medium-R-Normal--17-120-100-100-P-123-ISO10646-1 + Copyright: 2001 Computing Research Lab, New Mexico State University. + Capital A Height: 3, '1' Height: 11 + Calculated Max Values w=16 h=17 x= 7 y= 6 dx=19 dy= 0 ascent=17 len=34 + Font Bounding box w=40 h=30 x=-9 y=-10 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 3 descent= 1 + X Font ascent =12 descent= 0 + Max Font ascent =17 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_cu12_67_75[3981] U8G_SECTION(".progmem.u8g_font_cu12_67_75") = { + 0,40,30,247,246,3,2,98,5,14,32,255,1,17,254,12, + 0,11,5,10,12,1,4,2,128,1,64,255,224,1,64,2, + 128,5,11,11,6,1,1,32,32,32,32,32,32,168,112,168, + 112,32,11,5,10,12,1,4,32,96,65,128,255,0,65,128, + 32,96,11,5,10,12,1,4,192,128,48,64,31,224,48,64, + 192,128,11,7,14,12,1,3,0,32,32,32,64,32,255,224, + 64,32,32,32,0,32,7,11,11,8,1,1,16,56,84,16, + 16,16,16,16,16,16,254,11,7,14,12,1,3,128,0,128, + 128,128,64,255,224,128,64,128,128,128,0,7,11,11,8,1, + 1,254,16,16,16,16,16,16,16,84,56,16,7,11,11,8, + 1,1,16,56,84,16,16,16,16,16,84,56,254,11,7,14, + 12,1,4,1,192,0,32,32,32,64,32,255,192,64,0,32, + 0,11,7,14,12,1,4,112,0,128,0,128,128,128,64,127, + 224,0,64,0,128,11,7,14,12,1,4,1,192,2,32,34, + 32,66,32,255,192,66,0,34,0,11,7,14,12,1,4,112, + 0,136,0,136,128,136,64,127,224,8,64,8,128,12,5,10, + 13,1,4,38,64,73,32,233,112,80,160,32,64,12,5,10, + 13,1,4,33,64,66,32,255,240,68,32,40,64,4,11,11, + 5,1,1,16,16,32,64,176,208,32,160,160,192,240,6,11, + 11,7,1,1,32,64,252,68,36,4,4,4,4,4,4,6, + 11,11,7,1,1,16,8,252,136,144,128,128,128,128,128,128, + 6,11,11,7,1,1,4,4,4,4,4,4,36,68,252,64, + 32,6,11,11,7,1,1,128,128,128,128,128,128,144,136,252, + 8,16,8,6,6,9,1,2,252,4,4,21,14,4,6,8, + 8,7,1,1,4,4,4,36,68,252,64,32,11,8,16,11, + 1,1,15,128,16,64,32,32,32,32,32,32,168,32,112,0, + 32,0,11,8,16,11,1,1,62,0,65,0,128,128,128,128, + 128,128,130,160,1,192,0,128,9,11,22,10,1,1,255,128, + 0,0,240,0,192,0,160,0,144,0,8,0,4,0,2,0, + 1,0,0,128,12,13,26,13,1,0,128,0,144,0,160,0, + 255,240,160,0,144,0,128,16,0,144,0,80,255,240,0,80, + 0,144,0,16,10,7,14,11,1,2,3,192,67,0,130,128, + 130,128,128,128,65,0,62,0,10,7,14,11,1,2,240,0, + 48,128,80,64,80,64,64,64,32,128,31,0,11,3,6,12, + 1,6,32,0,64,0,255,224,11,3,6,12,1,6,255,224, + 64,0,32,0,3,11,11,4,1,1,128,192,160,128,128,128, + 128,128,128,128,128,3,11,11,4,1,1,32,96,160,32,32, + 32,32,32,32,32,32,11,3,6,12,1,6,0,128,0,64, + 255,224,11,3,6,12,1,6,255,224,0,64,0,128,3,11, + 11,4,1,1,128,128,128,128,128,128,128,128,160,192,128,3, + 11,11,4,1,1,32,32,32,32,32,32,32,32,160,96,32, + 11,11,22,12,1,1,0,128,0,64,255,224,0,64,0,128, + 0,0,32,0,64,0,255,224,64,0,32,0,11,11,22,12, + 1,1,32,128,112,128,168,128,32,128,32,128,32,128,32,128, + 32,128,34,160,33,192,32,128,11,11,22,12,1,1,32,0, + 64,0,255,224,64,0,32,0,0,0,0,128,0,64,255,224, + 0,64,0,128,11,11,22,12,1,1,32,0,64,0,255,224, + 64,0,32,0,0,0,32,0,64,0,255,224,64,0,32,0, + 11,11,22,12,1,1,32,128,113,192,170,160,32,128,32,128, + 32,128,32,128,32,128,32,128,32,128,32,128,11,11,22,12, + 1,1,0,128,0,64,255,224,0,64,0,128,0,0,0,128, + 0,64,255,224,0,64,0,128,11,11,22,12,1,1,32,128, + 32,128,32,128,32,128,32,128,32,128,32,128,32,128,170,160, + 113,192,32,128,11,8,16,12,1,3,32,0,64,0,255,224, + 0,0,0,0,255,224,0,64,0,128,11,8,16,12,1,3, + 0,128,0,64,255,224,0,0,0,0,255,224,64,0,32,0, + 11,7,14,12,1,3,16,128,32,128,127,224,129,0,127,224, + 34,0,18,0,13,7,14,14,1,3,17,64,33,32,127,240, + 130,8,127,240,36,32,20,64,11,7,14,12,1,3,9,0, + 8,128,255,192,16,32,255,192,32,128,33,0,11,7,14,12, + 1,3,16,0,32,0,127,224,128,0,127,224,32,0,16,0, + 7,11,11,8,1,1,16,40,108,170,40,40,40,40,40,40, + 40,11,7,14,12,1,3,1,0,0,128,255,192,0,32,255, + 192,0,128,1,0,7,11,11,8,1,1,40,40,40,40,40, + 40,40,170,108,40,16,12,7,14,12,1,3,16,128,32,64, + 127,224,128,16,127,224,32,64,16,128,7,12,12,8,1,0, + 16,40,108,170,40,40,40,40,170,108,40,16,10,10,20,11, + 1,1,248,0,144,0,136,0,196,0,162,0,17,0,8,128, + 4,64,2,0,1,0,10,10,20,11,1,1,7,192,2,64, + 4,64,8,192,17,64,34,0,68,0,136,0,16,0,32,0, + 10,10,20,11,1,1,32,0,16,0,136,0,68,0,34,0, + 17,64,8,192,4,64,2,64,7,192,10,10,20,11,1,1, + 1,0,2,0,4,64,8,128,17,0,162,0,196,0,136,0, + 144,0,248,0,11,7,14,12,1,3,16,0,63,224,64,0, + 255,224,64,0,63,224,16,0,11,7,14,12,1,3,1,0, + 255,128,0,64,255,224,0,64,255,128,1,0,12,5,10,13, + 1,4,32,0,72,128,245,80,66,32,32,0,12,5,10,13, + 1,4,0,64,17,32,170,240,68,32,0,64,5,11,11,6, + 1,1,32,112,168,32,32,248,32,248,32,32,32,5,11,11, + 6,1,1,32,32,32,248,32,248,32,32,168,112,32,11,5, + 10,12,1,4,32,0,64,0,238,224,64,0,32,0,5,11, + 11,6,1,1,32,112,168,0,32,32,32,0,32,32,32,11, + 5,10,12,1,4,0,128,0,64,238,224,0,64,0,128,5, + 11,11,6,1,1,32,32,32,0,32,32,32,0,168,112,32, + 12,7,14,13,1,3,128,0,144,0,160,0,255,240,160,0, + 144,0,128,0,12,7,14,13,1,3,0,16,0,144,0,80, + 255,240,0,80,0,144,0,16,12,9,18,13,1,2,8,0, + 24,0,47,240,64,16,128,16,64,16,47,240,24,0,8,0, + 9,12,24,10,1,1,8,0,20,0,34,0,65,0,227,128, + 34,0,34,0,34,0,34,0,34,0,34,0,62,0,12,9, + 18,13,1,2,1,0,1,128,255,64,128,32,128,16,128,32, + 255,64,1,128,1,0,9,12,24,10,1,1,62,0,34,0, + 34,0,34,0,34,0,34,0,34,0,227,128,65,0,34,0, + 20,0,8,0,9,17,34,10,1,0,8,0,20,0,34,0, + 65,0,227,128,34,0,34,0,34,0,34,0,34,0,34,0, + 62,0,0,0,62,0,34,0,34,0,62,0,9,14,28,10, + 1,0,8,0,20,0,34,0,65,0,227,128,34,0,34,0, + 34,0,34,0,34,0,34,0,227,128,128,128,255,128,9,14, + 28,10,1,0,8,0,20,0,62,0,65,0,227,128,34,0, + 34,0,34,0,34,0,34,0,34,0,227,128,128,128,255,128, + 9,14,28,10,1,0,8,0,28,0,42,0,73,0,235,128, + 42,0,42,0,42,0,42,0,42,0,42,0,235,128,136,128, + 255,128,9,15,30,10,1,2,8,0,20,0,34,0,73,0, + 213,128,34,0,65,0,227,128,34,0,34,0,34,0,34,0, + 34,0,34,0,62,0,9,17,34,10,1,0,8,0,20,0, + 34,0,73,0,213,128,34,0,65,0,227,128,34,0,34,0, + 34,0,34,0,34,0,34,0,227,128,128,128,255,128,14,9, + 18,16,2,2,224,64,160,96,191,208,128,24,128,20,128,24, + 191,208,160,96,224,64,11,11,22,12,1,1,255,224,128,0, + 188,0,176,0,168,0,164,0,130,0,129,0,128,128,128,64, + 128,32,11,11,22,12,1,1,128,32,64,32,32,32,16,32, + 8,32,4,160,2,160,1,160,7,160,0,32,255,224,9,16, + 32,10,1,0,8,0,20,0,34,0,65,0,227,128,34,0, + 34,0,34,0,34,0,34,0,34,0,227,128,65,0,34,0, + 20,0,8,0,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 11,11,22,14,2,1,255,224,255,224,255,224,255,224,255,224, + 255,224,255,224,255,224,255,224,255,224,255,224,11,11,22,14, + 2,1,255,224,128,32,128,32,128,32,128,32,128,32,128,32, + 128,32,128,32,128,32,255,224,11,11,22,14,2,1,63,128, + 64,64,128,32,128,32,128,32,128,32,128,32,128,32,128,32, + 64,64,63,128,11,11,22,14,2,1,255,224,128,32,191,160, + 191,160,191,160,191,160,191,160,191,160,191,160,128,32,255,224, + 11,11,22,14,2,1,255,224,128,32,255,224,128,32,255,224, + 128,32,255,224,128,32,255,224,128,32,255,224,11,11,22,14, + 2,1,255,224,170,160,170,160,170,160,170,160,170,160,170,160, + 170,160,170,160,170,160,255,224,11,11,22,14,2,1,255,224, + 170,160,255,224,170,160,255,224,170,160,255,224,170,160,255,224, + 170,160,255,224,11,11,22,14,2,1,255,224,201,32,164,160, + 146,96,201,32,164,160,146,96,201,32,164,160,146,96,255,224, + 11,11,22,14,2,1,255,224,146,96,164,160,201,32,146,96, + 164,160,201,32,146,96,164,160,201,32,255,224,11,11,22,14, + 2,1,255,224,213,96,170,160,213,96,170,160,213,96,170,160, + 213,96,170,160,213,96,255,224,7,7,7,12,3,3,254,254, + 254,254,254,254,254,7,7,7,12,3,3,254,130,130,130,130, + 130,254,13,6,12,16,2,3,255,248,255,248,255,248,255,248, + 255,248,255,248,13,6,12,16,2,3,255,248,128,8,128,8, + 128,8,128,8,255,248,6,13,13,9,2,254,252,252,252,252, + 252,252,252,252,252,252,252,252,252,6,13,13,9,2,254,252, + 132,132,132,132,132,132,132,132,132,132,132,252,16,6,12,19, + 2,3,31,255,63,254,63,254,127,252,127,252,255,248,16,6, + 12,19,2,3,31,255,32,2,32,2,64,4,64,4,255,248, + 11,12,24,14,2,1,4,0,4,0,14,0,14,0,31,0, + 31,0,63,128,63,128,127,192,127,192,255,224,255,224,11,12, + 24,14,2,1,4,0,4,0,10,0,10,0,17,0,17,0, + 32,128,32,128,64,64,64,64,128,32,255,224,7,8,8,12, + 3,1,16,16,56,56,124,124,254,254,7,8,8,12,3,1, + 16,16,40,40,68,68,130,254,12,11,22,15,2,1,192,0, + 240,0,252,0,255,0,255,192,255,240,255,192,255,0,252,0, + 240,0,192,0,12,11,22,15,2,1,192,0,176,0,140,0, + 131,0,128,192,128,48,128,192,131,0,140,0,176,0,192,0, + 8,7,7,13,3,1,192,240,252,255,252,240,192,8,7,7, + 13,3,1,192,176,140,131,140,176,192,12,7,14,15,2,1, + 192,0,252,0,255,192,255,240,255,192,252,0,192,0,12,7, + 14,15,2,1,192,0,188,0,131,192,128,48,131,192,188,0, + 192,0,11,12,24,14,2,1,255,224,255,224,127,192,127,192, + 63,128,63,128,31,0,31,0,14,0,14,0,4,0,4,0, + 11,12,24,14,2,1,255,224,128,32,64,64,64,64,32,128, + 32,128,17,0,17,0,10,0,10,0,4,0,4,0,7,8, + 8,12,3,1,254,254,124,124,56,56,16,16,7,8,8,12, + 3,1,254,130,68,68,40,40,16,16,12,11,22,15,2,1, + 0,48,0,240,3,240,15,240,63,240,255,240,63,240,15,240, + 3,240,0,240,0,48,12,11,22,15,2,1,0,48,0,208, + 3,16,12,16,48,16,192,16,48,16,12,16,3,16,0,208, + 0,48,8,7,7,13,3,1,3,15,63,255,63,15,3,8, + 7,7,13,3,1,3,13,49,193,49,13,3,12,7,14,15, + 2,1,0,48,3,240,63,240,255,240,63,240,3,240,0,48, + 12,7,14,15,2,1,0,48,3,208,60,16,192,16,60,16, + 3,208,0,48,11,11,22,14,2,1,4,0,14,0,31,0, + 63,128,127,192,255,224,127,192,63,128,31,0,14,0,4,0, + 11,11,22,14,2,1,4,0,10,0,17,0,32,128,64,64, + 128,32,64,64,32,128,17,0,10,0,4,0,11,11,22,14, + 2,1,4,0,10,0,17,0,36,128,78,64,159,32,78,64, + 36,128,17,0,10,0,4,0,11,11,22,14,2,1,31,0, + 96,192,64,64,142,32,159,32,159,32,159,32,142,32,64,64, + 96,192,31,0,7,12,12,8,1,0,16,40,40,68,68,130, + 130,68,68,40,40,16,11,11,22,14,2,1,31,0,96,192, + 64,64,128,32,128,32,128,32,128,32,128,32,64,64,96,192, + 31,0,11,11,22,14,2,1,14,0,32,128,64,64,0,0, + 128,32,128,32,128,32,0,0,64,64,32,128,14,0,11,11, + 22,14,2,1,31,0,106,192,106,192,170,160,170,160,170,160, + 170,160,170,160,106,192,106,192,31,0,11,11,22,14,2,1, + 31,0,96,192,64,64,142,32,145,32,145,32,145,32,142,32, + 64,64,96,192,31,0,11,11,22,14,2,1,31,0,127,192, + 127,192,255,224,255,224,255,224,255,224,255,224,127,192,127,192, + 31,0,11,11,22,14,2,1,31,0,120,192,120,64,248,32, + 248,32,248,32,248,32,248,32,120,64,120,192,31,0,11,11, + 22,14,2,1,31,0,99,192,67,192,131,224,131,224,131,224, + 131,224,131,224,67,192,99,192,31,0,11,11,22,14,2,1, + 31,0,127,192,127,192,255,224,255,224,128,32,128,32,128,32, + 64,64,96,192,31,0,11,11,22,14,2,1,31,0,96,192, + 64,64,128,32,128,32,128,32,255,224,255,224,127,192,127,192, + 31,0,11,11,22,14,2,1,31,0,103,192,71,192,135,224, + 135,224,135,224,128,32,128,32,64,64,96,192,31,0,11,11, + 22,14,2,1,31,0,99,192,67,192,131,224,131,224,131,224, + 255,224,255,224,127,192,127,192,31,0,6,11,11,8,2,1, + 28,124,124,252,252,252,252,252,124,124,28,6,11,11,9,2, + 1,224,248,248,252,252,252,252,252,248,248,224,7,12,12,10, + 2,1,254,254,254,254,254,198,130,130,130,198,254,254,13,13, + 26,16,2,0,255,248,240,120,207,152,223,216,191,232,191,232, + 191,232,191,232,191,232,223,216,207,152,240,120,255,248,13,7, + 14,16,2,6,255,248,240,120,207,152,223,216,191,232,191,232, + 191,232,13,7,14,16,2,0,191,232,191,232,191,232,223,216, + 207,152,240,120,255,248,6,6,6,8,2,6,28,96,64,128, + 128,128,6,6,6,13,7,6,224,24,8,4,4,4,6,6, + 6,13,7,1,4,4,4,8,24,224,6,6,6,8,2,1, + 128,128,128,64,96,28,11,6,12,14,2,6,31,0,96,192, + 64,64,128,32,128,32,128,32,11,6,12,14,2,1,128,32, + 128,32,128,32,64,64,96,192,31,0,12,12,24,15,2,1, + 0,16,0,48,0,112,0,240,1,240,3,240,7,240,15,240, + 31,240,63,240,127,240,255,240,12,12,24,15,2,1,128,0, + 192,0,224,0,240,0,248,0,252,0,254,0,255,0,255,128, + 255,192,255,224,255,240,12,12,24,15,2,1,255,240,255,224, + 255,192,255,128,255,0,254,0,252,0,248,0,240,0,224,0, + 192,0,128,0,12,12,24,15,2,1,255,240,127,240,63,240, + 31,240,15,240,7,240,3,240,1,240,0,240,0,112,0,48, + 0,16,7,7,7,8,1,2,56,68,130,130,130,68,56,11, + 11,22,14,2,1,255,224,248,32,248,32,248,32,248,32,248, + 32,248,32,248,32,248,32,248,32,255,224,11,11,22,14,2, + 1,255,224,131,224,131,224,131,224,131,224,131,224,131,224,131, + 224,131,224,131,224,255,224,11,11,22,14,2,1,255,224,255, + 224,255,160,255,32,254,32,252,32,248,32,240,32,224,32,192, + 32,255,224,11,11,22,14,2,1,255,224,128,96,128,224,129, + 224,131,224,135,224,143,224,159,224,191,224,255,224,255,224,11, + 11,22,14,2,1,255,224,132,32,132,32,132,32,132,32,132, + 32,132,32,132,32,132,32,132,32,255,224,11,12,24,14,2, + 1,4,0,4,0,10,0,10,0,17,0,17,0,32,128,36, + 128,78,64,68,64,128,32,255,224,11,12,24,14,2,1,4, + 0,4,0,14,0,14,0,29,0,29,0,60,128,60,128,124, + 64,124,64,252,32,255,224,11,12,24,14,2,1,4,0,4, + 0,14,0,14,0,23,0,23,0,39,128,39,128,71,192,71, + 192,135,224,255,224,13,13,26,16,2,0,31,192,32,32,64, + 16,128,8,128,8,128,8,128,8,128,8,128,8,128,8,64, + 16,32,32,31,192,11,11,22,14,2,1,255,224,132,32,132, + 32,132,32,132,32,252,32,128,32,128,32,128,32,128,32,255, + 224,11,11,22,14,2,1,255,224,128,32,128,32,128,32,128, + 32,252,32,132,32,132,32,132,32,132,32,255,224,11,11,22, + 14,2,1,255,224,128,32,128,32,128,32,128,32,135,224,132, + 32,132,32,132,32,132,32,255,224,11,11,22,14,2,1,255, + 224,132,32,132,32,132,32,132,32,135,224,128,32,128,32,128, + 32,128,32,255,224,11,11,22,14,2,1,31,0,100,192,68, + 64,132,32,132,32,252,32,128,32,128,32,64,64,96,192,31, + 0,11,11,22,14,2,1,31,0,96,192,64,64,128,32,128, + 32,252,32,132,32,132,32,68,64,100,192,31,0,11,11,22, + 14,2,1,31,0,96,192,64,64,128,32,128,32,135,224,132, + 32,132,32,68,64,100,192,31,0,11,11,22,14,2,1,31, + 0,100,192,68,64,132,32,132,32,135,224,128,32,128,32,64, + 64,96,192,31,0,255,255,255,255,255,255,255,255}; +/* + Fontname: -MUTT-ClearlyU-Medium-R-Normal--17-120-100-100-P-123-ISO10646-1 + Copyright: 2001 Computing Research Lab, New Mexico State University. + Capital A Height: 11, '1' Height: 6 + Calculated Max Values w=16 h=13 x= 3 y= 3 dx=19 dy= 0 ascent=13 len=24 + Font Bounding box w=40 h=30 x=-9 y=-10 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =11 descent= 0 + X Font ascent =12 descent= 0 + Max Font ascent =13 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_cu12_75r[1123] U8G_SECTION(".progmem.u8g_font_cu12_75r") = { + 0,40,30,247,246,11,2,247,0,0,32,79,0,13,254,12, + 0,11,11,22,14,2,1,255,224,255,224,255,224,255,224,255, + 224,255,224,255,224,255,224,255,224,255,224,255,224,11,11,22, + 14,2,1,255,224,128,32,128,32,128,32,128,32,128,32,128, + 32,128,32,128,32,128,32,255,224,11,11,22,14,2,1,63, + 128,64,64,128,32,128,32,128,32,128,32,128,32,128,32,128, + 32,64,64,63,128,11,11,22,14,2,1,255,224,128,32,191, + 160,191,160,191,160,191,160,191,160,191,160,191,160,128,32,255, + 224,11,11,22,14,2,1,255,224,128,32,255,224,128,32,255, + 224,128,32,255,224,128,32,255,224,128,32,255,224,11,11,22, + 14,2,1,255,224,170,160,170,160,170,160,170,160,170,160,170, + 160,170,160,170,160,170,160,255,224,11,11,22,14,2,1,255, + 224,170,160,255,224,170,160,255,224,170,160,255,224,170,160,255, + 224,170,160,255,224,11,11,22,14,2,1,255,224,201,32,164, + 160,146,96,201,32,164,160,146,96,201,32,164,160,146,96,255, + 224,11,11,22,14,2,1,255,224,146,96,164,160,201,32,146, + 96,164,160,201,32,146,96,164,160,201,32,255,224,11,11,22, + 14,2,1,255,224,213,96,170,160,213,96,170,160,213,96,170, + 160,213,96,170,160,213,96,255,224,7,7,7,12,3,3,254, + 254,254,254,254,254,254,7,7,7,12,3,3,254,130,130,130, + 130,130,254,13,6,12,16,2,3,255,248,255,248,255,248,255, + 248,255,248,255,248,13,6,12,16,2,3,255,248,128,8,128, + 8,128,8,128,8,255,248,6,13,13,9,2,254,252,252,252, + 252,252,252,252,252,252,252,252,252,252,6,13,13,9,2,254, + 252,132,132,132,132,132,132,132,132,132,132,132,252,16,6,12, + 19,2,3,31,255,63,254,63,254,127,252,127,252,255,248,16, + 6,12,19,2,3,31,255,32,2,32,2,64,4,64,4,255, + 248,11,12,24,14,2,1,4,0,4,0,14,0,14,0,31, + 0,31,0,63,128,63,128,127,192,127,192,255,224,255,224,11, + 12,24,14,2,1,4,0,4,0,10,0,10,0,17,0,17, + 0,32,128,32,128,64,64,64,64,128,32,255,224,7,8,8, + 12,3,1,16,16,56,56,124,124,254,254,7,8,8,12,3, + 1,16,16,40,40,68,68,130,254,12,11,22,15,2,1,192, + 0,240,0,252,0,255,0,255,192,255,240,255,192,255,0,252, + 0,240,0,192,0,12,11,22,15,2,1,192,0,176,0,140, + 0,131,0,128,192,128,48,128,192,131,0,140,0,176,0,192, + 0,8,7,7,13,3,1,192,240,252,255,252,240,192,8,7, + 7,13,3,1,192,176,140,131,140,176,192,12,7,14,15,2, + 1,192,0,252,0,255,192,255,240,255,192,252,0,192,0,12, + 7,14,15,2,1,192,0,188,0,131,192,128,48,131,192,188, + 0,192,0,11,12,24,14,2,1,255,224,255,224,127,192,127, + 192,63,128,63,128,31,0,31,0,14,0,14,0,4,0,4, + 0,11,12,24,14,2,1,255,224,128,32,64,64,64,64,32, + 128,32,128,17,0,17,0,10,0,10,0,4,0,4,0,7, + 8,8,12,3,1,254,254,124,124,56,56,16,16,7,8,8, + 12,3,1,254,130,68,68,40,40,16,16,12,11,22,15,2, + 1,0,48,0,240,3,240,15,240,63,240,255,240,63,240,15, + 240,3,240,0,240,0,48,12,11,22,15,2,1,0,48,0, + 208,3,16,12,16,48,16,192,16,48,16,12,16,3,16,0, + 208,0,48,8,7,7,13,3,1,3,15,63,255,63,15,3, + 8,7,7,13,3,1,3,13,49,193,49,13,3,12,7,14, + 15,2,1,0,48,3,240,63,240,255,240,63,240,3,240,0, + 48,12,7,14,15,2,1,0,48,3,208,60,16,192,16,60, + 16,3,208,0,48,11,11,22,14,2,1,4,0,14,0,31, + 0,63,128,127,192,255,224,127,192,63,128,31,0,14,0,4, + 0,11,11,22,14,2,1,4,0,10,0,17,0,32,128,64, + 64,128,32,64,64,32,128,17,0,10,0,4,0,11,11,22, + 14,2,1,4,0,10,0,17,0,36,128,78,64,159,32,78, + 64,36,128,17,0,10,0,4,0,11,11,22,14,2,1,31, + 0,96,192,64,64,142,32,159,32,159,32,159,32,142,32,64, + 64,96,192,31,0,7,12,12,8,1,0,16,40,40,68,68, + 130,130,68,68,40,40,16,11,11,22,14,2,1,31,0,96, + 192,64,64,128,32,128,32,128,32,128,32,128,32,64,64,96, + 192,31,0,11,11,22,14,2,1,14,0,32,128,64,64,0, + 0,128,32,128,32,128,32,0,0,64,64,32,128,14,0,11, + 11,22,14,2,1,31,0,106,192,106,192,170,160,170,160,170, + 160,170,160,170,160,106,192,106,192,31,0,11,11,22,14,2, + 1,31,0,96,192,64,64,142,32,145,32,145,32,145,32,142, + 32,64,64,96,192,31,0,11,11,22,14,2,1,31,0,127, + 192,127,192,255,224,255,224,255,224,255,224,255,224,127,192,127, + 192,31,0}; +/* + Fontname: -MUTT-ClearlyU-Medium-R-Normal--17-120-100-100-P-123-ISO10646-1 + Copyright: 2001 Computing Research Lab, New Mexico State University. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=16 h=16 x= 3 y=11 dx=16 dy= 0 ascent=16 len=32 + Font Bounding box w=40 h=30 x=-9 y=-10 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_cu12[3993] U8G_SECTION(".progmem.u8g_font_cu12") = { + 0,40,30,247,246,11,2,90,5,94,32,255,252,16,252,12, + 252,0,0,0,5,0,0,2,12,12,5,1,0,192,192,192, + 192,192,192,192,0,0,0,192,192,4,5,5,7,2,7,144, + 144,144,144,144,10,15,30,12,1,253,4,128,4,128,9,0, + 9,0,9,0,255,192,18,0,18,0,18,0,255,192,36,0, + 36,0,36,0,72,0,72,0,5,14,14,8,1,255,32,112, + 168,168,168,160,96,48,40,168,168,168,112,32,11,13,26,14, + 1,255,96,64,152,128,151,128,145,0,146,0,98,0,4,0, + 8,192,9,32,17,32,33,32,33,32,64,192,10,12,24,13, + 1,0,24,0,36,0,36,0,36,0,40,0,51,192,49,0, + 81,0,138,0,138,0,196,64,123,128,1,5,5,4,2,7, + 128,128,128,128,128,4,15,15,6,2,253,16,32,64,64,128, + 128,128,128,128,128,128,64,64,32,16,4,15,15,6,1,253, + 128,64,32,32,16,16,16,16,16,16,16,32,32,64,128,7, + 7,7,7,0,5,16,146,84,56,84,146,16,9,9,18,11, + 2,255,8,0,8,0,8,0,8,0,255,128,8,0,8,0, + 8,0,8,0,2,5,5,5,1,253,192,192,64,64,128,4, + 1,1,7,2,3,240,2,2,2,5,1,0,192,192,5,16, + 16,8,2,252,8,8,16,16,16,16,32,32,32,32,64,64, + 64,64,128,128,5,11,11,7,1,0,112,80,136,136,136,136, + 136,136,136,80,112,5,11,11,7,1,0,32,224,32,32,32, + 32,32,32,32,32,248,5,11,11,7,1,0,112,136,136,136, + 8,16,16,32,72,72,248,5,11,11,7,1,0,112,136,136, + 8,8,48,8,8,136,136,112,7,11,11,9,1,0,24,24, + 40,40,72,200,254,8,8,8,62,5,11,11,7,1,0,136, + 240,128,128,240,200,8,8,136,144,96,5,11,11,7,1,0, + 48,72,64,128,240,136,136,136,136,80,112,6,12,12,8,1, + 0,128,252,132,136,16,16,16,32,32,32,32,32,5,11,11, + 7,1,0,112,136,136,136,80,112,136,136,136,136,112,5,11, + 11,7,1,0,112,80,136,136,136,136,120,8,16,144,96,2, + 7,7,7,3,0,192,192,0,0,0,192,192,2,10,10,5, + 1,253,192,192,0,0,0,192,192,64,64,128,5,9,9,6, + 1,1,8,16,32,64,128,64,32,16,8,10,5,10,13,2, + 2,255,192,0,0,0,0,0,0,255,192,5,9,9,6,1, + 1,128,64,32,16,8,16,32,64,128,5,12,12,8,1,0, + 112,136,136,16,32,32,96,0,0,0,96,96,10,12,24,12, + 1,0,30,0,33,0,76,128,147,64,161,64,161,64,161,64, + 161,64,147,64,77,128,32,192,31,0,11,11,22,11,0,0, + 4,0,4,0,10,0,10,0,10,0,17,0,17,0,31,0, + 32,128,32,128,241,224,10,11,22,10,0,0,255,0,32,128, + 32,64,32,64,32,128,63,0,32,128,32,64,32,64,32,128, + 255,0,9,11,22,10,1,0,30,128,33,128,64,128,128,128, + 128,0,128,0,128,0,128,128,64,128,33,0,30,0,10,11, + 22,10,0,0,254,0,33,128,32,128,32,64,32,64,32,64, + 32,64,32,64,32,128,33,128,254,0,10,11,22,10,1,0, + 255,128,32,128,32,128,34,128,34,0,62,0,34,64,34,64, + 32,128,32,128,255,128,9,11,22,9,1,0,255,128,32,128, + 32,128,34,128,34,0,62,0,34,0,34,0,32,0,32,0, + 248,0,10,11,22,10,1,0,30,128,33,128,64,128,128,128, + 128,0,128,0,131,192,128,128,64,128,32,128,31,128,11,11, + 22,11,1,0,251,224,32,128,32,128,32,128,32,128,63,128, + 32,128,32,128,32,128,32,128,251,224,5,11,11,5,1,0, + 248,32,32,32,32,32,32,32,32,32,248,6,11,11,6,1, + 0,124,16,16,16,16,16,16,16,16,144,224,11,11,22,11, + 1,0,249,224,32,128,33,0,34,0,36,0,46,0,50,0, + 33,0,33,0,32,128,249,224,8,11,11,8,0,0,248,32, + 32,32,32,32,33,33,33,35,255,14,11,22,14,1,0,240, + 60,48,48,48,48,40,80,40,80,40,144,36,144,36,144,35, + 16,35,16,251,124,11,11,22,11,1,0,227,224,48,128,48, + 128,40,128,40,128,36,128,34,128,34,128,33,128,33,128,248, + 128,10,11,22,10,1,0,30,0,33,0,64,128,128,64,128, + 64,128,64,128,64,128,64,64,128,33,0,30,0,9,11,22, + 9,1,0,255,0,33,128,32,128,32,128,33,128,63,0,32, + 0,32,0,32,0,32,0,248,0,10,14,28,10,1,253,30, + 0,33,0,64,128,128,64,128,64,128,64,128,64,128,64,92, + 128,51,0,30,0,2,0,2,64,1,128,11,11,22,11,1, + 0,254,0,33,0,32,128,32,128,33,0,62,0,35,0,33, + 0,33,0,33,0,248,224,6,11,11,7,1,0,124,132,132, + 128,64,48,8,4,132,132,248,9,11,22,9,1,0,255,128, + 136,128,136,128,136,128,8,0,8,0,8,0,8,0,8,0, + 8,0,62,0,11,11,22,11,1,0,251,224,32,128,32,128, + 32,128,32,128,32,128,32,128,32,128,32,128,17,0,14,0, + 11,11,22,11,1,0,241,224,32,128,32,128,17,0,17,0, + 17,0,10,0,10,0,10,0,4,0,4,0,16,11,22,16, + 1,0,241,207,33,132,33,132,34,68,18,72,18,72,18,72, + 20,40,12,48,12,48,8,16,11,11,22,11,1,0,243,192, + 17,0,18,0,10,0,12,0,4,0,10,0,26,0,17,0, + 32,128,241,224,11,11,22,11,1,0,241,224,32,128,17,0, + 17,0,10,0,14,0,4,0,4,0,4,0,4,0,31,0, + 7,11,11,7,1,0,254,196,132,136,8,16,34,34,66,70, + 254,3,16,16,5,1,252,224,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,224,5,16,16,8,2,252,128,128,64, + 64,64,64,32,32,32,32,16,16,16,16,8,8,3,16,16, + 5,0,252,224,32,32,32,32,32,32,32,32,32,32,32,32, + 32,32,224,5,3,3,6,1,9,32,112,136,11,1,2,12, + 1,254,255,224,3,4,4,6,3,8,128,192,64,32,6,7, + 7,7,1,0,112,136,8,120,136,136,124,6,12,12,7,1, + 0,192,64,64,64,64,120,68,68,68,68,68,120,5,7,7, + 6,1,0,112,136,128,128,128,136,112,6,12,12,7,1,0, + 24,8,8,8,8,120,136,136,136,136,136,124,5,7,7,6, + 1,0,112,136,248,128,128,136,112,5,12,12,6,1,0,56, + 72,64,64,64,240,64,64,64,64,64,224,7,11,11,8,1, + 252,62,68,68,68,120,64,124,130,130,130,124,7,12,12,8, + 1,0,192,64,64,64,64,120,68,68,68,68,68,238,3,11, + 11,4,1,0,192,192,0,0,192,64,64,64,64,64,224,4, + 14,14,5,0,253,48,48,0,0,48,16,16,16,16,16,16, + 16,144,224,7,12,12,8,1,0,192,64,64,64,64,94,72, + 80,112,88,72,238,3,12,12,4,1,0,192,64,64,64,64, + 64,64,64,64,64,64,224,11,7,14,12,1,0,251,128,68, + 64,68,64,68,64,68,64,68,64,238,224,7,7,7,8,1, + 0,248,68,68,68,68,68,238,5,7,7,6,1,0,112,136, + 136,136,136,136,112,6,10,10,7,1,253,248,68,68,68,68, + 68,120,64,64,224,6,10,10,7,1,253,120,136,136,136,136, + 136,120,8,8,28,5,7,7,6,1,0,208,104,64,64,64, + 64,240,5,7,7,6,1,0,120,136,128,112,8,136,240,6, + 10,10,7,1,0,32,32,32,248,32,32,32,36,36,24,7, + 7,7,8,1,0,204,68,68,68,68,68,62,8,7,7,9, + 1,0,231,36,36,36,24,24,24,11,7,14,11,0,0,238, + 224,36,128,42,128,42,128,42,128,27,0,17,0,8,7,7, + 9,1,0,231,36,24,24,24,36,231,8,10,10,8,1,253, + 231,36,36,36,24,24,24,16,144,224,5,7,7,6,1,0, + 248,144,144,32,72,72,248,5,16,16,6,1,252,24,32,32, + 32,32,32,32,192,32,32,32,32,32,32,32,24,1,16,16, + 3,2,252,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,5,16,16,5,0,252,192,32,32,32,32,32,32, + 24,32,32,32,32,32,32,32,192,5,3,3,8,1,9,72, + 168,144,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,5,0,0,2,12,12,5,1,253,192, + 192,0,0,0,192,192,192,192,192,192,192,5,11,11,7,1, + 254,16,16,112,168,160,160,160,200,112,64,64,8,12,12,9, + 1,0,6,9,17,16,16,124,16,16,16,81,178,204,7,7, + 7,9,1,3,130,124,68,68,68,124,130,11,11,22,12,0, + 0,241,224,32,128,17,0,10,0,127,192,14,0,4,0,127, + 192,4,0,4,0,31,0,1,16,16,3,2,252,128,128,128, + 128,128,128,128,0,0,128,128,128,128,128,128,128,4,13,13, + 6,1,0,96,144,128,128,96,144,144,144,96,16,16,144,96, + 5,2,2,6,1,11,216,216,9,10,20,10,1,3,62,0, + 65,0,158,128,162,128,162,128,160,128,162,128,156,128,65,0, + 62,0,4,6,6,5,1,7,96,16,112,144,112,240,7,7, + 7,9,1,0,18,36,108,216,108,36,18,6,4,4,8,1, + 2,252,4,4,4,3,1,1,5,0,3,224,9,10,20,10, + 1,3,62,0,65,0,188,128,146,128,146,128,156,128,146,128, + 186,128,65,0,62,0,5,1,1,7,1,11,248,4,4,4, + 6,2,8,96,144,144,96,7,9,9,9,2,1,16,16,16, + 254,16,16,16,0,254,4,7,7,5,1,6,96,144,16,16, + 32,64,240,4,7,7,5,1,6,96,144,16,32,16,144,96, + 3,4,4,6,3,11,32,96,64,128,7,10,10,8,1,253, + 136,136,136,136,136,218,164,128,128,128,7,15,15,8,1,252, + 62,116,244,244,244,116,52,20,20,20,20,20,20,20,20,2, + 2,2,4,2,5,192,192,3,3,3,7,2,253,64,32,224, + 3,7,7,4,1,6,64,192,64,64,64,64,224,4,6,6, + 5,1,7,96,144,144,144,96,240,7,7,7,8,1,0,144, + 72,108,54,108,72,144,11,11,22,12,1,0,64,0,196,0, + 68,0,68,0,68,64,232,192,9,64,10,64,11,224,16,64, + 16,224,11,11,22,12,1,0,64,0,196,0,68,0,68,0, + 68,0,232,192,9,32,8,32,8,64,16,128,17,224,12,11, + 22,13,1,0,96,0,146,0,18,0,34,0,18,32,148,96, + 100,160,5,32,5,240,8,32,8,112,5,12,12,8,1,253, + 48,48,0,0,0,48,32,32,64,128,136,112,11,16,32,11, + 0,0,8,0,12,0,4,0,2,0,0,0,4,0,4,0, + 10,0,10,0,10,0,17,0,17,0,31,0,32,128,32,128, + 241,224,11,16,32,11,0,0,2,0,6,0,4,0,8,0, + 0,0,4,0,4,0,10,0,10,0,10,0,17,0,17,0, + 31,0,32,128,32,128,241,224,11,15,30,11,0,0,4,0, + 14,0,17,0,0,0,4,0,4,0,10,0,10,0,10,0, + 17,0,17,0,31,0,32,128,32,128,241,224,11,15,30,11, + 0,0,9,0,21,0,18,0,0,0,4,0,4,0,10,0, + 10,0,10,0,17,0,17,0,31,0,32,128,32,128,241,224, + 11,14,28,11,0,0,27,0,27,0,0,0,4,0,4,0, + 10,0,10,0,10,0,17,0,17,0,31,0,32,128,32,128, + 241,224,11,15,30,11,0,0,6,0,9,0,9,0,6,0, + 4,0,4,0,10,0,10,0,10,0,17,0,17,0,31,0, + 32,128,32,128,241,224,14,11,22,15,0,0,15,248,10,24, + 10,8,10,40,18,32,31,224,18,36,18,36,34,8,34,8, + 247,248,9,14,28,10,1,253,30,128,33,128,64,128,128,128, + 128,0,128,0,128,0,128,128,64,128,33,0,30,0,8,0, + 4,0,28,0,10,16,32,11,0,0,16,0,24,0,8,0, + 4,0,0,0,255,128,32,128,32,128,34,128,34,0,62,0, + 34,64,34,64,32,128,32,128,255,128,10,16,32,11,0,0, + 4,0,12,0,8,0,16,0,0,0,255,128,32,128,32,128, + 34,128,34,0,62,0,34,64,34,64,32,128,32,128,255,128, + 10,15,30,11,0,0,8,0,28,0,34,0,0,0,255,128, + 32,128,32,128,34,128,34,0,62,0,34,64,34,64,32,128, + 32,128,255,128,10,14,28,11,0,0,54,0,54,0,0,0, + 255,128,32,128,32,128,34,128,34,0,62,0,34,64,34,64, + 32,128,32,128,255,128,5,16,16,6,1,0,64,96,32,16, + 0,248,32,32,32,32,32,32,32,32,32,248,5,16,16,6, + 1,0,16,48,32,64,0,248,32,32,32,32,32,32,32,32, + 32,248,5,15,15,6,1,0,32,112,136,0,248,32,32,32, + 32,32,32,32,32,32,248,5,14,14,6,1,0,216,216,0, + 248,32,32,32,32,32,32,32,32,32,248,10,11,22,11,0, + 0,254,0,33,128,32,128,32,64,32,64,248,64,32,64,32, + 64,32,128,33,128,254,0,11,15,30,12,0,0,9,0,21, + 0,18,0,0,0,227,224,48,128,48,128,40,128,40,128,36, + 128,34,128,34,128,33,128,33,128,248,128,10,16,32,12,1, + 0,16,0,24,0,8,0,4,0,0,0,30,0,33,0,64, + 128,128,64,128,64,128,64,128,64,128,64,64,128,33,0,30, + 0,10,16,32,12,1,0,2,0,6,0,4,0,8,0,0, + 0,30,0,33,0,64,128,128,64,128,64,128,64,128,64,128, + 64,64,128,33,0,30,0,10,15,30,12,1,0,8,0,28, + 0,34,0,0,0,30,0,33,0,64,128,128,64,128,64,128, + 64,128,64,128,64,64,128,33,0,30,0,10,15,30,12,1, + 0,18,0,42,0,36,0,0,0,30,0,33,0,64,128,128, + 64,128,64,128,64,128,64,128,64,64,128,33,0,30,0,10, + 14,28,12,1,0,54,0,54,0,0,0,30,0,33,0,64, + 128,128,64,128,64,128,64,128,64,128,64,64,128,33,0,30, + 0,7,7,7,9,1,0,130,68,40,16,40,68,130,10,13, + 26,12,1,255,0,128,31,0,33,0,66,128,130,64,132,64, + 140,64,136,64,144,64,80,128,33,0,62,0,64,0,11,16, + 32,12,1,0,8,0,12,0,4,0,2,0,0,0,251,224, + 32,128,32,128,32,128,32,128,32,128,32,128,32,128,32,128, + 17,0,14,0,11,16,32,12,1,0,2,0,6,0,4,0, + 8,0,0,0,251,224,32,128,32,128,32,128,32,128,32,128, + 32,128,32,128,32,128,17,0,14,0,11,15,30,12,1,0, + 4,0,14,0,17,0,0,0,251,224,32,128,32,128,32,128, + 32,128,32,128,32,128,32,128,32,128,17,0,14,0,11,14, + 28,12,1,0,27,0,27,0,0,0,251,224,32,128,32,128, + 32,128,32,128,32,128,32,128,32,128,32,128,17,0,14,0, + 11,16,32,12,0,0,2,0,6,0,4,0,8,0,0,0, + 241,224,32,128,17,0,17,0,10,0,14,0,4,0,4,0, + 4,0,4,0,31,0,9,11,22,10,0,0,248,0,32,0, + 62,0,33,0,32,128,32,128,32,128,33,0,62,0,32,0, + 248,0,6,12,12,7,1,0,48,72,72,72,72,216,72,68, + 68,68,68,216,6,12,12,7,1,0,64,96,32,16,0,112, + 136,8,120,136,136,124,6,12,12,7,1,0,16,48,32,64, + 0,112,136,8,120,136,136,124,6,11,11,7,1,0,32,112, + 136,0,112,136,8,120,136,136,124,6,11,11,7,1,0,72, + 168,144,0,112,136,8,120,136,136,124,6,10,10,7,1,0, + 216,216,0,112,136,8,120,136,136,124,6,11,11,7,1,0, + 48,72,72,48,112,136,8,120,136,136,124,10,7,14,11,1, + 0,115,128,140,64,15,192,120,0,136,0,140,64,115,128,5, + 10,10,6,1,253,112,136,128,128,128,136,112,32,16,112,5, + 12,12,6,1,0,64,96,32,16,0,112,136,248,128,128,136, + 112,5,12,12,6,1,0,16,48,32,64,0,112,136,248,128, + 128,136,112,5,11,11,6,1,0,32,112,136,0,112,136,248, + 128,128,136,112,5,10,10,6,1,0,216,216,0,112,136,248, + 128,128,136,112,4,12,12,4,0,0,128,192,64,32,0,96, + 32,32,32,32,32,112,4,12,12,4,1,0,16,48,32,64, + 0,192,64,64,64,64,64,224,5,11,11,5,0,0,32,112, + 136,0,96,32,32,32,32,32,112,5,10,10,6,0,0,216, + 216,0,96,32,32,32,32,32,112,5,12,12,6,1,0,80, + 112,224,16,16,120,136,136,136,136,136,112,7,11,11,8,1, + 0,72,168,144,0,248,68,68,68,68,68,238,5,12,12,6, + 1,0,64,96,32,16,0,112,136,136,136,136,136,112,5,12, + 12,6,1,0,16,48,32,64,0,112,136,136,136,136,136,112, + 5,11,11,6,1,0,32,112,136,0,112,136,136,136,136,136, + 112,5,11,11,6,1,0,72,168,144,0,112,136,136,136,136, + 136,112,5,10,10,6,1,0,216,216,0,112,136,136,136,136, + 136,112,9,7,14,11,1,0,8,0,8,0,0,0,255,128, + 0,0,8,0,8,0,5,11,11,6,1,254,8,16,112,152, + 168,168,168,200,112,64,128,7,12,12,8,1,0,64,96,32, + 16,0,204,68,68,68,68,68,62,7,12,12,8,1,0,8, + 24,16,32,0,204,68,68,68,68,68,62,7,11,11,8,1, + 0,16,56,68,0,204,68,68,68,68,68,62,7,10,10,8, + 1,0,108,108,0,204,68,68,68,68,68,62,8,15,15,8, + 1,253,4,12,8,16,0,231,36,36,36,24,24,24,16,144, + 224,6,15,15,7,1,253,192,64,64,64,64,120,68,68,68, + 68,68,120,64,64,224,8,13,13,8,1,253,54,54,0,231, + 36,36,36,24,24,24,16,144,224}; +/* + Fontname: cursor + Copyright: These glyphs are unencumbered + Capital A Height: 15, '1' Height: 16 + Calculated Max Values w=16 h=16 x= 1 y= 0 dx=17 dy= 0 ascent=15 len=32 + Font Bounding box w=31 h=31 x=-15 y=-16 + Calculated Min Values x=-15 y=-16 dx= 0 dy= 0 + Pure Font ascent =15 descent=-8 + X Font ascent =16 descent=-16 + Max Font ascent =15 descent=-16 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_cursor[5286] U8G_SECTION(".progmem.u8g_font_cursor") = { + 0,31,31,241,240,15,4,101,8,211,32,255,248,15,240,16, + 240,14,14,28,17,250,248,224,28,240,60,248,124,124,248,63, + 240,31,224,15,192,15,192,31,224,63,240,124,248,248,124,240, + 60,224,28,16,16,32,17,249,247,240,15,248,31,252,63,254, + 127,127,254,63,252,31,248,15,240,15,240,31,248,63,252,127, + 254,254,127,252,63,248,31,240,15,14,14,28,17,243,242,0, + 12,0,60,0,248,3,248,15,240,63,240,3,224,7,224,14, + 192,28,192,56,128,112,128,224,0,64,0,16,16,32,17,242, + 241,0,7,0,31,0,127,1,254,7,254,31,252,63,252,63, + 248,7,248,15,240,31,240,62,224,124,224,248,64,112,0,32, + 0,8,10,10,17,253,255,255,0,255,24,24,24,24,90,60, + 24,10,12,24,17,252,254,255,192,255,192,255,192,255,192,255, + 192,30,0,30,0,127,128,127,128,127,128,63,0,30,0,8, + 10,10,17,253,255,24,60,90,24,24,24,24,255,0,255,10, + 12,24,17,252,254,12,0,30,0,127,128,127,128,127,128,30, + 0,30,0,255,192,255,192,255,192,255,192,255,192,16,8,16, + 17,242,251,1,0,7,192,136,96,255,255,0,24,0,32,0, + 64,255,192,16,9,18,17,242,251,7,0,15,192,159,224,255, + 255,255,255,255,255,255,248,255,224,255,192,13,14,28,17,250, + 248,226,56,34,32,34,32,34,32,255,248,162,40,162,40,162, + 40,162,40,255,248,34,32,34,32,34,32,226,56,15,16,32, + 17,249,247,251,190,251,190,251,190,59,184,255,254,255,254,255, + 254,251,190,251,190,255,254,255,254,255,254,59,184,251,190,251, + 190,251,190,14,14,28,17,0,255,192,0,192,0,196,16,196, + 32,196,64,196,128,197,0,198,0,199,240,192,0,192,0,192, + 0,255,252,255,252,16,16,32,17,255,254,240,0,240,0,247, + 12,247,28,247,56,247,112,247,224,247,192,247,252,247,252,247, + 252,240,0,255,255,255,255,255,255,255,255,14,14,28,17,243, + 255,0,12,0,12,32,140,16,140,8,140,4,140,2,140,1, + 140,63,140,0,12,0,12,0,12,255,252,255,252,16,16,32, + 17,242,254,0,15,0,15,48,239,56,239,28,239,14,239,7, + 239,3,239,63,239,63,239,63,239,0,15,255,255,255,255,255, + 255,255,255,13,14,28,17,250,255,2,0,2,0,2,0,2, + 0,2,0,2,0,34,32,18,64,10,128,7,0,2,0,0, + 0,255,248,255,248,15,16,32,17,249,254,3,128,3,128,3, + 128,3,128,3,128,3,128,51,152,59,184,31,240,15,224,7, + 192,3,128,255,254,255,254,255,254,255,254,14,10,20,17,249, + 255,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,255,252,255,252,16,12,24,17,248,254,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,255,255,255,255,255, + 255,255,255,15,16,32,17,248,248,255,254,128,0,191,254,160, + 2,175,250,168,10,171,234,170,42,170,170,171,170,168,42,175, + 234,160,10,191,250,128,2,255,254,16,16,32,17,248,248,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,10, + 14,28,17,252,242,12,0,12,0,30,0,30,0,63,0,63, + 0,127,128,127,128,204,192,140,64,12,0,12,0,12,0,12, + 0,12,16,32,17,251,241,15,0,15,0,31,128,31,128,63, + 192,63,192,127,224,127,224,255,240,255,240,255,240,239,112,15, + 0,15,0,15,0,15,0,14,14,28,17,249,249,7,128,31, + 224,63,240,120,120,112,56,224,28,224,28,224,28,224,28,112, + 56,120,120,63,240,31,224,7,128,16,16,32,17,248,248,7, + 224,31,248,63,252,127,254,127,254,252,63,248,31,248,31,248, + 31,248,31,252,63,127,254,127,254,63,252,31,248,7,224,14, + 16,32,17,250,243,63,240,103,152,200,204,147,36,158,36,136, + 68,199,140,127,248,83,40,83,40,83,40,87,168,211,44,240, + 60,255,252,255,252,15,16,32,17,250,243,127,248,239,156,219, + 238,183,182,191,246,159,102,207,206,255,252,215,172,215,172,215, + 172,223,236,215,174,243,62,255,254,255,254,15,16,32,17,249, + 249,31,240,32,8,96,6,80,26,79,226,192,2,192,2,64, + 2,64,2,89,26,106,170,235,170,218,154,64,2,64,2,63, + 252,16,16,32,17,249,249,31,240,63,248,127,255,127,255,255, + 255,255,255,255,255,255,255,127,255,127,255,255,255,255,255,255, + 255,255,255,127,255,63,252,16,15,30,17,249,248,2,128,2, + 128,2,128,2,128,2,128,2,128,254,255,0,0,254,255,2, + 128,2,128,2,128,2,128,2,128,2,128,16,16,32,17,249, + 247,7,192,7,192,7,192,7,192,7,192,255,255,255,255,255, + 255,255,255,255,255,7,192,7,192,7,192,7,192,7,192,7, + 192,16,15,30,17,249,248,66,132,162,138,82,148,42,168,22, + 208,10,160,253,127,2,128,253,127,10,160,22,208,42,168,82, + 148,162,138,66,132,16,15,30,17,249,248,102,204,182,219,222, + 246,110,236,54,216,250,191,252,127,1,0,252,127,250,191,54, + 216,110,236,222,246,182,219,102,204,16,15,30,17,249,248,1, + 0,1,0,1,0,1,0,1,0,1,0,1,0,254,255,1, + 0,1,0,1,0,1,0,1,0,1,0,1,0,16,16,32, + 17,249,247,3,128,3,128,3,128,3,128,3,128,3,128,255, + 255,255,255,255,255,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,15,15,30,17,249,248,2,128,6,192,10,160,18, + 144,34,136,66,132,254,254,0,0,254,254,66,132,34,136,18, + 144,10,160,6,192,2,128,16,16,32,17,249,247,7,192,15, + 224,31,240,59,184,115,156,227,142,255,255,254,255,255,255,227, + 142,115,156,59,184,31,240,15,224,7,192,3,128,10,10,20, + 17,251,251,30,0,127,128,127,128,255,192,255,192,255,192,255, + 192,127,128,127,128,30,0,12,12,24,17,250,250,31,128,127, + 224,127,224,255,240,255,240,255,240,255,240,255,240,255,240,127, + 224,127,224,31,128,12,12,24,17,250,249,255,240,128,16,128, + 16,128,16,128,16,134,16,134,16,128,16,128,16,128,16,128, + 16,255,240,14,14,28,17,249,248,255,252,255,252,255,252,224, + 28,224,28,231,156,231,156,231,156,231,156,224,28,224,28,255, + 252,255,252,255,252,10,14,28,17,251,249,12,0,30,0,63, + 0,109,128,204,192,12,0,12,0,12,0,12,0,204,192,109, + 128,63,0,30,0,12,0,12,16,32,17,250,248,15,0,31, + 128,63,192,127,224,255,240,255,240,255,240,15,0,15,0,255, + 240,255,240,255,240,127,224,63,192,31,128,15,0,15,15,30, + 17,242,241,0,2,0,12,0,60,0,248,3,248,15,240,63, + 240,1,224,2,224,4,192,8,192,16,128,32,128,64,0,128, + 0,15,16,32,17,242,240,0,6,0,30,0,126,1,252,7, + 248,31,248,127,240,127,240,7,224,15,224,29,192,57,192,113, + 128,225,128,192,0,128,0,15,15,30,17,242,241,0,2,0, + 12,0,60,0,248,3,248,0,112,0,176,1,32,2,32,4, + 0,8,0,16,0,32,0,64,0,128,0,15,15,30,17,242, + 241,0,6,0,30,0,124,1,252,7,248,7,248,1,240,3, + 240,7,96,14,64,28,0,56,0,112,0,224,0,192,0,12, + 12,24,17,250,249,255,240,137,16,153,144,176,208,224,112,134, + 16,134,16,224,112,176,208,153,144,137,16,255,240,14,14,28, + 17,249,248,255,252,255,252,207,204,223,236,252,252,251,124,247, + 188,247,188,251,124,252,252,223,236,207,204,255,252,255,252,14, + 14,28,17,250,248,143,192,223,224,248,48,144,16,152,0,252, + 0,0,0,0,0,0,252,0,100,32,36,48,124,31,236,15, + 196,16,16,32,17,249,247,199,224,239,240,255,248,255,252,252, + 28,255,12,255,0,255,0,0,255,0,255,48,127,56,63,63, + 255,31,255,15,247,7,227,14,14,28,17,249,249,3,0,7, + 128,15,192,3,0,35,16,99,24,255,252,255,252,99,24,35, + 16,3,0,15,192,7,128,3,0,16,16,32,17,248,248,3, + 192,3,224,7,224,15,240,23,232,59,220,255,255,255,255,255, + 255,255,255,59,220,23,232,15,240,7,224,3,192,3,192,16, + 15,30,17,242,243,0,120,0,112,128,51,159,176,255,240,254, + 48,252,48,96,56,0,240,31,224,8,0,8,0,8,0,8, + 0,30,0,16,16,32,17,242,243,0,252,0,252,192,255,255, + 255,255,255,255,252,255,252,255,252,255,252,255,252,127,248,31, + 240,28,0,28,0,63,0,63,0,16,16,32,17,254,240,63, + 0,16,128,200,64,234,160,200,32,203,160,248,60,56,63,8, + 39,8,39,9,47,9,39,9,32,17,16,33,8,62,248,16, + 16,32,17,254,240,63,0,223,128,239,192,255,224,239,224,239, + 252,255,254,255,255,63,239,15,239,15,255,15,239,15,231,31, + 240,63,248,62,248,13,16,32,17,244,240,0,24,0,120,1, + 224,3,192,7,128,15,192,31,224,95,192,255,224,191,224,15, + 192,15,128,148,0,196,0,104,0,48,0,13,16,32,17,244, + 240,0,56,0,248,3,240,7,224,15,192,31,224,127,240,255, + 240,255,240,255,240,255,224,255,192,255,128,254,0,252,0,120, + 0,15,14,28,17,0,242,127,128,128,64,126,32,16,16,14, + 16,16,16,14,40,16,68,12,130,3,4,2,72,1,16,0, + 160,0,64,16,16,32,17,0,241,127,128,255,192,255,224,255, + 240,127,248,31,248,63,248,31,252,63,254,31,255,15,254,7, + 252,3,248,1,240,0,224,0,64,15,14,28,17,250,250,62, + 248,99,140,193,6,128,2,128,2,128,2,128,2,192,6,96, + 12,48,24,24,48,12,96,6,192,3,128,15,14,28,17,250, + 250,62,248,127,252,227,142,193,6,192,6,192,6,194,134,225, + 14,112,28,56,56,28,112,15,224,7,192,3,128,16,16,32, + 17,248,248,255,255,213,85,170,171,213,85,160,11,208,5,160, + 11,208,5,160,11,208,5,160,11,208,5,170,171,213,85,170, + 171,255,255,16,16,32,17,248,248,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,14,14,28,17,249,248,127, + 248,63,240,159,228,207,204,231,156,243,60,255,252,255,252,243, + 60,231,156,207,204,159,228,63,240,127,248,16,16,32,17,248, + 247,63,252,127,254,127,254,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,127,254,127,254,63, + 252,8,14,14,17,0,242,128,192,224,240,248,252,254,255,248, + 216,140,12,6,6,10,16,32,17,255,241,192,0,224,0,240, + 0,248,0,252,0,254,0,255,0,255,128,255,192,255,192,254, + 0,239,0,207,0,7,128,7,128,3,0,14,13,26,17,0, + 249,192,0,192,0,193,0,194,0,196,0,200,0,223,252,200, + 0,196,0,194,0,193,0,192,0,192,0,16,15,30,17,255, + 248,240,0,240,0,240,192,241,192,243,128,247,0,255,255,255, + 255,255,255,247,0,243,128,241,192,240,192,240,0,240,0,10, + 14,28,17,0,249,192,0,192,0,192,0,192,0,192,0,192, + 0,255,192,255,192,192,0,192,0,192,0,192,0,192,0,192, + 0,12,16,32,17,255,248,240,0,240,0,240,0,240,0,240, + 0,240,0,255,240,255,240,255,240,255,240,240,0,240,0,240, + 0,240,0,240,0,240,0,16,16,32,17,248,248,128,3,127, + 253,127,253,68,69,69,85,69,85,69,85,69,85,68,69,127, + 253,127,253,127,253,127,253,127,253,127,253,128,3,15,16,32, + 17,248,248,127,252,255,254,255,254,255,254,255,254,255,254,255, + 254,255,254,255,254,255,254,255,254,255,254,255,254,255,254,255, + 254,127,252,10,10,20,17,0,255,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,255,192,255,192,12,12,24, + 17,255,254,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,255,240,255,240,255,240,255,240,10,10,20,17,247, + 255,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,255,192,255,192,12,12,24,17,246,254,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,255,240,255,240,255, + 240,255,240,16,16,32,17,242,245,3,128,30,240,2,128,129, + 0,67,135,36,75,29,112,5,64,4,64,2,128,4,64,9, + 32,18,144,20,80,120,60,248,63,16,16,32,17,242,245,31, + 224,63,240,63,248,195,130,231,199,127,255,63,251,31,240,7, + 224,7,192,15,224,31,240,63,248,126,252,252,127,252,127,16, + 16,32,17,248,248,128,3,127,253,127,253,68,69,84,85,84, + 85,84,85,84,85,68,69,127,253,127,253,127,253,127,253,127, + 253,127,253,128,3,15,16,32,17,248,248,127,252,255,254,255, + 254,255,254,255,254,255,254,255,254,255,254,255,254,255,254,255, + 254,255,254,255,254,255,254,255,254,127,252,15,14,28,17,252, + 243,7,0,12,0,6,0,3,0,127,248,128,4,179,54,179, + 54,179,54,128,6,128,6,96,28,24,96,7,128,16,16,32, + 17,252,241,15,128,30,0,15,0,7,0,127,248,255,252,255, + 255,255,255,255,255,255,255,255,255,255,255,63,247,31,224,15, + 192,7,128,11,16,32,17,246,255,112,0,136,0,140,0,74, + 0,122,0,33,0,17,0,16,128,8,128,12,64,4,64,2, + 32,1,224,0,224,0,96,0,32,13,16,32,17,245,255,252, + 0,254,0,255,0,127,0,63,128,63,128,31,192,15,192,15, + 224,7,224,7,240,3,248,1,248,0,248,0,120,0,56,15, + 16,32,17,249,252,7,128,15,192,31,224,51,48,51,48,31, + 224,15,192,7,128,135,132,135,134,67,8,56,112,7,128,31, + 226,240,62,128,4,16,16,32,17,249,252,15,192,31,224,63, + 240,127,248,127,248,63,240,31,224,143,193,143,199,207,207,247, + 156,120,120,7,128,127,227,255,255,240,62,10,10,20,17,252, + 251,12,0,12,0,12,0,12,0,255,192,255,192,12,0,12, + 0,12,0,12,0,12,12,24,17,251,250,15,0,15,0,15, + 0,15,0,255,240,255,240,255,240,255,240,15,0,15,0,15, + 0,15,0,9,15,30,17,252,248,62,0,127,0,227,128,193, + 128,225,128,99,128,7,0,30,0,28,0,20,0,20,0,119, + 0,54,0,28,0,8,0,11,16,32,17,251,248,31,0,63, + 128,127,192,255,224,241,224,249,224,123,224,63,192,31,128,31, + 0,31,0,63,128,127,192,63,128,31,0,14,0,8,14,14, + 17,249,242,1,3,7,15,31,63,127,255,31,27,49,48,96, + 96,10,16,32,17,248,241,0,192,1,192,3,192,7,192,15, + 192,31,192,63,192,127,192,255,192,255,192,31,192,61,192,60, + 192,120,0,120,0,48,0,14,13,26,17,243,249,0,12,0, + 12,2,12,1,12,0,140,0,76,255,236,0,76,0,140,1, + 12,2,12,0,12,0,12,16,15,30,17,242,248,0,15,0, + 15,3,15,3,143,1,207,0,239,255,255,255,255,255,255,0, + 239,1,207,3,143,3,15,0,15,0,15,10,14,28,17,247, + 249,0,192,0,192,0,192,0,192,0,192,0,192,255,192,255, + 192,0,192,0,192,0,192,0,192,0,192,0,192,12,16,32, + 17,246,248,0,240,0,240,0,240,0,240,0,240,0,240,255, + 240,255,240,255,240,255,240,0,240,0,240,0,240,0,240,0, + 240,0,240,16,16,32,17,248,248,128,3,127,253,127,253,68, + 69,85,69,85,69,85,69,85,69,68,69,127,253,127,253,127, + 253,127,253,127,253,127,253,128,3,15,16,32,17,248,248,127, + 252,255,254,255,254,255,254,255,254,255,254,255,254,255,254,255, + 254,255,254,255,254,255,254,255,254,255,254,255,254,127,252,14, + 14,28,17,250,248,255,252,128,68,128,68,128,68,255,196,136, + 68,136,68,136,68,136,68,143,252,136,4,136,4,136,4,255, + 252,16,16,32,17,249,247,255,255,255,255,255,255,224,119,255, + 247,255,247,255,247,238,119,238,119,239,255,239,255,239,255,238, + 7,255,255,255,255,255,255,12,13,26,17,250,242,1,0,1, + 0,5,128,5,128,13,128,13,192,29,192,29,192,61,224,61, + 224,125,224,125,240,248,224,16,16,32,17,248,240,0,192,0, + 224,1,224,3,240,3,240,7,240,7,248,15,248,15,248,31, + 252,31,252,63,252,63,255,127,255,255,248,127,224,7,15,15, + 17,253,0,40,40,40,40,40,40,40,40,40,40,40,254,124, + 56,16,9,16,32,17,252,255,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,255,128,255,128, + 127,0,62,0,28,0,8,0,15,7,14,17,249,252,16,16, + 48,24,127,252,240,30,127,252,48,24,16,16,15,9,18,17, + 249,251,24,48,56,56,127,252,255,254,255,254,255,254,127,252, + 56,56,24,48,15,7,14,17,1,252,16,0,48,0,127,254, + 240,0,127,254,48,0,16,0,16,9,18,17,0,251,12,0, + 28,0,63,255,127,255,255,255,127,255,63,255,28,0,12,0, + 15,7,14,17,241,252,0,16,0,24,255,252,0,30,255,252, + 0,24,0,16,16,9,18,17,241,251,0,48,0,56,255,252, + 255,254,255,255,255,254,255,252,0,56,0,48,7,15,15,17, + 253,240,16,56,124,254,40,40,40,40,40,40,40,40,40,40, + 40,9,16,32,17,252,240,8,0,28,0,62,0,127,0,255, + 128,255,128,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,62,0,7,15,15,17,253,248,16,56,124, + 254,40,40,40,40,40,40,40,254,124,56,16,9,15,30,17, + 252,248,28,0,62,0,127,0,255,128,255,128,62,0,62,0, + 62,0,62,0,62,0,255,128,255,128,127,0,62,0,28,0, + 15,16,32,17,246,240,0,32,0,112,0,248,1,222,5,222, + 9,222,17,222,17,222,17,222,17,222,49,222,113,222,253,222, + 24,136,0,120,0,48,16,16,32,17,245,240,0,56,0,124, + 0,254,0,255,6,255,14,255,30,255,30,255,30,255,30,255, + 62,255,126,255,254,255,126,254,12,126,0,60,14,14,28,17, + 249,249,255,0,128,0,128,0,128,0,143,192,136,64,136,68, + 136,68,8,68,15,196,0,36,0,20,0,12,3,252,16,16, + 32,17,248,248,255,192,255,192,255,192,224,0,239,240,239,240, + 239,247,238,119,238,119,239,247,15,247,15,255,0,31,3,255, + 3,255,3,255,16,16,32,17,250,247,32,16,16,32,16,32, + 8,64,8,64,135,135,103,152,31,224,31,224,103,152,135,135, + 8,64,8,64,16,32,16,32,32,16,16,16,32,17,250,247, + 96,24,48,48,16,32,24,96,143,193,207,207,111,220,63,240, + 63,224,111,248,207,207,143,193,24,64,24,96,48,48,96,24, + 11,16,32,17,247,242,0,96,1,0,52,96,121,0,104,96, + 252,0,132,0,228,0,164,0,228,0,164,0,228,0,228,0, + 132,0,132,0,252,0,12,16,32,17,246,242,0,48,24,176, + 62,176,62,176,126,176,255,0,255,0,255,0,255,0,255,0, + 255,0,255,0,255,0,255,0,255,0,255,0,15,16,32,17, + 249,247,1,0,2,128,2,128,2,128,4,64,4,64,4,64, + 57,56,192,6,56,56,9,32,18,144,36,72,40,40,48,24, + 32,8,16,16,32,17,249,247,1,0,3,128,3,128,6,192, + 6,192,12,96,28,120,249,62,192,7,248,62,57,56,51,152, + 102,204,108,108,120,60,112,28,15,13,26,17,249,249,3,128, + 15,224,28,112,48,24,96,12,193,6,194,134,193,6,96,12, + 48,24,28,112,15,224,3,128,16,14,28,17,249,249,7,192, + 15,224,31,240,60,120,112,28,225,14,195,135,198,199,195,135, + 225,14,112,28,60,120,31,240,7,192,13,13,26,16,250,249, + 2,0,2,0,2,0,2,0,2,0,2,0,255,248,2,0, + 2,0,2,0,2,0,2,0,2,0,15,15,30,16,249,248, + 3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254, + 255,254,3,128,3,128,3,128,3,128,3,128,3,128,14,14, + 28,17,0,242,192,0,240,0,124,0,127,0,63,192,63,240, + 31,0,31,0,12,128,12,64,4,32,4,16,0,8,0,4, + 16,16,32,17,255,241,224,0,248,0,254,0,127,128,127,224, + 63,252,63,252,31,252,31,192,15,224,15,112,7,56,7,28, + 7,14,0,7,0,3,14,14,28,17,0,242,255,252,255,252, + 192,0,192,0,192,0,199,240,198,0,197,0,196,128,196,64, + 196,32,196,16,192,0,192,0,16,16,32,17,255,241,255,255, + 255,255,255,255,255,255,240,0,247,252,247,252,247,252,247,192, + 247,224,247,112,247,56,247,28,247,12,240,0,240,0,14,14, + 28,17,243,242,255,252,255,252,0,12,0,12,0,12,63,140, + 1,140,2,140,4,140,8,140,16,140,32,140,0,12,0,12, + 16,16,32,17,242,241,255,255,255,255,255,255,255,255,0,15, + 63,239,63,239,63,239,3,239,7,239,14,239,28,239,56,239, + 48,239,0,15,0,15,13,14,28,17,250,242,255,248,255,248, + 0,0,2,0,7,0,10,128,18,64,34,32,2,0,2,0, + 2,0,2,0,2,0,2,0,15,16,32,17,249,241,255,254, + 255,254,255,254,255,254,3,128,7,192,15,224,31,240,59,184, + 51,152,3,128,3,128,3,128,3,128,3,128,3,128,14,10, + 20,17,249,246,255,252,255,252,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,3,0,16,12,24,17,248,245,255,255, + 255,255,255,255,255,255,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,7,16,16,17,253,240,16,0,56,124, + 254,238,254,124,56,16,186,214,146,130,130,130,9,16,32,17, + 252,240,28,0,28,0,62,0,127,0,255,128,255,128,255,128, + 127,0,62,0,93,0,255,128,255,128,255,128,235,128,235,128, + 227,128,10,10,20,17,0,246,255,192,255,192,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,12,12,24,17, + 255,245,255,240,255,240,255,240,255,240,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,14,14,28,17,249,244, + 17,32,4,80,147,76,79,144,50,96,194,24,2,0,2,0, + 2,0,2,0,2,0,2,128,2,128,1,0,16,16,32,17, + 248,242,23,110,223,251,191,252,127,255,255,252,255,255,243,158, + 3,128,3,128,3,128,3,128,3,224,3,224,3,224,3,224, + 1,192,10,10,20,17,247,246,255,192,255,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,12,12,24,17, + 246,245,255,240,255,240,255,240,255,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,16,16,32,17,241,249, + 31,224,31,224,31,224,63,240,97,24,193,12,129,7,131,135, + 131,135,132,7,200,12,96,24,63,240,31,224,31,224,31,224, + 16,16,32,17,241,249,63,240,63,240,63,240,127,248,255,252, + 255,255,255,255,255,255,255,255,255,255,255,255,255,252,127,248, + 63,240,63,240,63,240,7,14,14,10,253,249,238,56,16,16, + 16,16,16,16,16,16,16,16,56,238,9,16,32,10,252,248, + 247,128,255,128,255,128,62,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,62,0,255,128,255,128,247,128, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255}; +/* + Fontname: cursor + Copyright: These + Capital A Height: 0, '1' Height: 0 + Calculated Max Values w=16 h=16 x= 0 y= 0 dx=17 dy= 0 ascent= 7 len=32 + Font Bounding box w=31 h=31 x=-15 y=-16 + Calculated Min Values x=-14 y=-16 dx= 0 dy= 0 + Pure Font ascent = 0 descent= 0 + X Font ascent = 0 descent= 0 + Max Font ascent = 7 descent=-16 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_cursorr[492] U8G_SECTION(".progmem.u8g_font_cursorr") = { + 0,31,31,241,240,0,1,6,0,0,32,80,0,7,240,0, + 0,255,255,14,14,28,17,243,242,0,12,0,60,0,248,3, + 248,15,240,63,240,3,224,7,224,14,192,28,192,56,128,112, + 128,224,0,64,0,16,16,32,17,242,241,0,7,0,31,0, + 127,1,254,7,254,31,252,63,252,63,248,7,248,15,240,31, + 240,62,224,124,224,248,64,112,0,32,0,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,10,14,28, + 17,252,242,12,0,12,0,30,0,30,0,63,0,63,0,127, + 128,127,128,204,192,140,64,12,0,12,0,12,0,12,0,12, + 16,32,17,251,241,15,0,15,0,31,128,31,128,63,192,63, + 192,127,224,127,224,255,240,255,240,255,240,239,112,15,0,15, + 0,15,0,15,0,255,255,255,255,255,255,16,15,30,17,249, + 248,2,128,2,128,2,128,2,128,2,128,2,128,254,255,0, + 0,254,255,2,128,2,128,2,128,2,128,2,128,2,128,16, + 16,32,17,249,247,7,192,7,192,7,192,7,192,7,192,255, + 255,255,255,255,255,255,255,255,255,7,192,7,192,7,192,7, + 192,7,192,7,192,255,255,16,15,30,17,249,248,1,0,1, + 0,1,0,1,0,1,0,1,0,1,0,254,255,1,0,1, + 0,1,0,1,0,1,0,1,0,1,0,16,16,32,17,249, + 247,3,128,3,128,3,128,3,128,3,128,3,128,255,255,255, + 255,255,255,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,255,255,255,255,255,255,255,255,15,15,30,17,242,241,0, + 2,0,12,0,60,0,248,3,248,15,240,63,240,1,224,2, + 224,4,192,8,192,16,128,32,128,64,0,128,0,15,16,32, + 17,242,240,0,6,0,30,0,126,1,252,7,248,31,248,127, + 240,127,240,7,224,15,224,29,192,57,192,113,128,225,128,192, + 0,128,0,15,15,30,17,242,241,0,2,0,12,0,60,0, + 248,3,248,0,112,0,176,1,32,2,32,4,0,8,0,16, + 0,32,0,64,0,128,0,15,15,30,17,242,241,0,6,0, + 30,0,124,1,252,7,248,7,248,1,240,3,240,7,96,14, + 64,28,0,56,0,112,0,224,0,192,0,255}; +/* + Fontname: -FreeType-fixed_v01-Medium-R-Normal--8-80-72-72-P-51-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 7 h= 9 x= 2 y= 6 dx= 6 dy= 0 ascent= 7 len= 9 + Font Bounding box w= 7 h= 9 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 7 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fixed_v0[1702] U8G_SECTION(".progmem.u8g_font_fixed_v0") = { + 1,7,9,0,254,7,1,46,2,94,32,255,254,7,254,7, + 254,2,0,64,34,23,103,128,128,128,128,0,128,128,23,50, + 98,160,160,3,85,101,80,248,80,248,80,2,87,103,112,168, + 160,112,40,168,112,2,87,103,136,144,16,32,64,72,136,2, + 87,103,104,136,104,144,144,144,104,23,18,98,128,128,2,87, + 103,56,64,128,128,128,64,56,2,87,103,224,16,8,8,8, + 16,224,2,87,103,32,168,112,32,112,168,32,3,85,101,32, + 32,248,32,32,18,34,98,64,128,5,81,97,248,18,18,98, + 128,128,2,87,103,8,16,16,32,64,64,128,2,87,103,112, + 136,136,136,136,136,112,2,87,103,32,96,32,32,32,32,248, + 2,87,103,112,136,8,16,32,64,248,2,87,103,240,8,8, + 48,8,8,240,2,87,103,16,144,144,248,16,16,16,2,87, + 103,248,128,128,240,8,8,240,2,87,103,112,128,128,240,136, + 136,112,2,87,103,248,8,8,8,8,8,8,2,87,103,112, + 136,136,112,136,136,112,2,87,103,112,136,136,248,8,8,112, + 18,21,101,128,128,0,128,128,18,37,101,64,64,0,64,128, + 2,87,103,24,32,64,128,64,32,24,4,83,99,248,0,248, + 2,87,103,192,32,16,8,16,32,192,2,87,103,248,8,8, + 48,0,32,32,2,87,103,112,136,136,168,184,128,112,2,87, + 103,112,136,136,248,136,136,136,2,87,103,240,136,136,240,136, + 136,240,2,87,103,112,136,128,128,128,136,112,2,87,103,240, + 136,136,136,136,136,240,2,87,103,248,128,128,224,128,128,248, + 2,87,103,248,128,128,224,128,128,128,2,87,103,112,136,128, + 184,136,136,112,2,87,103,136,136,136,248,136,136,136,2,87, + 103,248,32,32,32,32,32,248,2,87,103,248,8,8,8,8, + 136,112,2,87,103,136,136,144,224,144,136,136,2,87,103,128, + 128,128,128,128,128,248,2,87,103,136,136,216,168,136,136,136, + 2,87,103,136,136,200,168,152,136,136,2,87,103,112,136,136, + 136,136,136,112,2,87,103,240,136,136,240,128,128,128,2,87, + 103,112,136,136,136,136,168,112,2,87,103,240,136,136,240,160, + 144,136,2,87,103,112,136,128,112,8,136,112,2,87,103,248, + 32,32,32,32,32,32,2,87,103,136,136,136,136,136,136,112, + 2,87,103,136,136,136,136,136,80,32,2,87,103,136,136,136, + 168,168,168,80,2,87,103,136,136,80,32,80,136,136,2,87, + 103,136,136,80,32,32,32,32,2,87,103,248,8,16,32,64, + 128,248,18,55,103,224,128,128,128,128,128,224,2,87,103,128, + 64,64,32,16,16,8,18,55,103,224,32,32,32,32,32,224, + 23,50,98,64,160,2,113,97,254,39,34,98,64,128,2,85, + 101,112,8,120,136,120,2,87,103,128,128,240,136,136,136,240, + 2,85,101,112,136,128,136,112,2,87,103,8,8,120,136,136, + 136,120,2,85,101,112,136,248,128,120,2,87,103,56,64,240, + 64,64,64,64,0,87,103,112,136,136,136,120,8,112,2,87, + 103,128,128,240,136,136,136,136,2,87,103,48,0,248,32,32, + 32,248,0,89,105,48,0,248,8,8,8,8,8,112,2,87, + 103,128,128,136,144,224,144,136,2,87,103,224,32,32,32,32, + 32,248,2,85,101,208,168,168,168,168,2,85,101,176,200,136, + 136,136,2,85,101,112,136,136,136,112,0,87,103,240,136,136, + 136,240,128,128,0,87,103,120,136,136,136,120,8,8,2,85, + 101,184,192,128,128,128,2,85,101,120,128,112,8,240,2,87, + 103,32,32,248,32,32,32,32,2,85,101,136,136,136,136,112, + 2,85,101,136,136,136,80,32,2,85,101,136,168,168,168,80, + 2,85,101,136,80,32,80,136,0,87,103,136,136,136,136,120, + 8,112,2,85,101,248,16,32,64,248,2,87,103,24,32,64, + 192,64,32,24,34,23,103,128,128,128,128,128,128,128,2,87, + 103,192,32,16,24,16,32,192,4,82,98,72,176,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,2, + 87,103,48,0,248,32,32,32,248,2,87,103,32,112,168,160, + 168,112,32,2,87,103,64,64,64,240,64,72,120,3,85,101, + 136,112,80,112,136,2,87,103,136,136,80,248,32,248,32,34, + 23,103,128,128,128,0,128,128,128,2,87,103,120,128,120,136, + 240,8,240,5,81,97,248,2,87,103,112,136,168,200,168,136, + 112,2,87,103,112,8,120,136,120,0,248,4,83,99,72,144, + 72,4,82,98,248,8,255,2,87,103,112,136,248,200,200,136, + 112,8,81,97,248,20,51,99,64,160,64,2,87,103,32,32, + 248,32,32,0,248,255,255,255,255,255,255,255,255,255,4,83, + 99,144,72,144,255,255,255,255,2,87,103,64,32,112,136,248, + 136,136,2,87,103,16,32,112,136,248,136,136,2,87,103,32, + 80,112,136,248,136,136,2,87,103,72,176,112,136,248,136,136, + 2,87,103,80,0,112,136,248,136,136,2,87,103,112,0,112, + 136,248,136,136,2,87,103,120,160,160,240,160,160,184,0,89, + 105,112,136,128,128,128,136,112,32,96,2,87,103,64,32,248, + 128,224,128,248,2,87,103,16,32,248,128,224,128,248,2,87, + 103,32,80,248,128,224,128,248,2,87,103,80,0,248,128,224, + 128,248,2,87,103,64,32,248,32,32,32,248,2,87,103,16, + 32,248,32,32,32,248,2,87,103,32,80,248,32,32,32,248, + 2,87,103,80,0,248,32,32,32,248,2,87,103,240,136,136, + 232,136,136,240,2,87,103,72,176,136,200,168,152,136,2,87, + 103,64,32,112,136,136,136,112,2,87,103,16,32,112,136,136, + 136,112,2,87,103,32,80,112,136,136,136,112,2,87,103,72, + 176,112,136,136,136,112,2,87,103,80,0,112,136,136,136,112, + 20,51,99,160,64,160,2,87,103,112,136,152,168,200,136,112, + 2,87,103,64,32,136,136,136,136,112,2,87,103,16,32,136, + 136,136,136,112,2,87,103,32,80,136,136,136,136,112,2,87, + 103,80,0,136,136,136,136,112,2,87,103,16,32,136,136,80, + 32,32,2,87,103,128,128,240,136,240,128,128,0,89,105,240, + 136,136,176,136,136,176,128,128,2,87,103,64,32,112,8,120, + 136,120,2,87,103,16,32,112,8,120,136,120,2,87,103,32, + 80,112,8,120,136,120,2,87,103,72,176,112,8,120,136,120, + 2,87,103,80,0,112,8,120,136,120,2,87,103,48,0,112, + 8,120,136,120,2,85,101,240,40,120,160,120,0,87,103,112, + 136,128,136,112,32,96,2,87,103,64,32,112,136,248,128,120, + 2,87,103,16,32,112,136,248,128,120,2,87,103,32,80,112, + 136,248,128,120,2,87,103,80,0,112,136,248,128,120,2,87, + 103,64,32,248,32,32,32,248,2,87,103,16,32,248,32,32, + 32,248,2,87,103,32,80,248,32,32,32,248,2,87,103,80, + 0,248,32,32,32,248,2,87,103,8,56,8,120,136,136,120, + 2,87,103,72,176,176,200,136,136,136,2,87,103,64,32,112, + 136,136,136,112,2,87,103,16,32,112,136,136,136,112,2,87, + 103,32,80,112,136,136,136,112,2,87,103,72,176,112,136,136, + 136,112,2,87,103,80,0,112,136,136,136,112,3,85,101,32, + 0,248,0,32,2,85,101,112,152,168,200,112,2,87,103,64, + 32,136,136,136,136,112,2,87,103,16,32,136,136,136,136,112, + 2,87,103,32,80,136,136,136,136,112,2,87,103,80,0,136, + 136,136,136,112,0,89,105,16,32,136,136,136,136,120,8,112, + 2,87,103,128,128,240,136,240,128,128,0,89,105,80,0,136, + 136,136,136,120,8,112}; +/* + Fontname: -FreeType-fixed_v01-Medium-R-Normal--8-80-72-72-P-51-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 0, '1' Height: 7 + Calculated Max Values w= 5 h= 7 x= 1 y= 3 dx= 6 dy= 0 ascent= 7 len= 7 + Font Bounding box w= 7 h= 9 x= 0 y=-2 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 7 descent= 0 + X Font ascent = 7 descent= 0 + Max Font ascent = 7 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fixed_v0n[159] U8G_SECTION(".progmem.u8g_font_fixed_v0n") = { + 1,7,9,0,254,7,0,0,0,0,42,57,0,7,0,7, + 0,2,87,103,32,168,112,32,112,168,32,3,85,101,32,32, + 248,32,32,18,34,98,64,128,5,81,97,248,18,18,98,128, + 128,2,87,103,8,16,16,32,64,64,128,2,87,103,112,136, + 136,136,136,136,112,2,87,103,32,96,32,32,32,32,248,2, + 87,103,112,136,8,16,32,64,248,2,87,103,240,8,8,48, + 8,8,240,2,87,103,16,144,144,248,16,16,16,2,87,103, + 248,128,128,240,8,8,240,2,87,103,112,128,128,240,136,136, + 112,2,87,103,248,8,8,8,8,8,8,2,87,103,112,136, + 136,112,136,136,112,2,87,103,112,136,136,248,8,8,112}; +/* + Fontname: -FreeType-fixed_v01-Medium-R-Normal--8-80-72-72-P-51-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 7 h= 9 x= 2 y= 5 dx= 6 dy= 0 ascent= 7 len= 9 + Font Bounding box w= 7 h= 9 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 7 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fixed_v0r[878] U8G_SECTION(".progmem.u8g_font_fixed_v0r") = { + 1,7,9,0,254,7,1,46,2,94,32,127,254,7,254,7, + 254,2,0,64,34,23,103,128,128,128,128,0,128,128,23,50, + 98,160,160,3,85,101,80,248,80,248,80,2,87,103,112,168, + 160,112,40,168,112,2,87,103,136,144,16,32,64,72,136,2, + 87,103,104,136,104,144,144,144,104,23,18,98,128,128,2,87, + 103,56,64,128,128,128,64,56,2,87,103,224,16,8,8,8, + 16,224,2,87,103,32,168,112,32,112,168,32,3,85,101,32, + 32,248,32,32,18,34,98,64,128,5,81,97,248,18,18,98, + 128,128,2,87,103,8,16,16,32,64,64,128,2,87,103,112, + 136,136,136,136,136,112,2,87,103,32,96,32,32,32,32,248, + 2,87,103,112,136,8,16,32,64,248,2,87,103,240,8,8, + 48,8,8,240,2,87,103,16,144,144,248,16,16,16,2,87, + 103,248,128,128,240,8,8,240,2,87,103,112,128,128,240,136, + 136,112,2,87,103,248,8,8,8,8,8,8,2,87,103,112, + 136,136,112,136,136,112,2,87,103,112,136,136,248,8,8,112, + 18,21,101,128,128,0,128,128,18,37,101,64,64,0,64,128, + 2,87,103,24,32,64,128,64,32,24,4,83,99,248,0,248, + 2,87,103,192,32,16,8,16,32,192,2,87,103,248,8,8, + 48,0,32,32,2,87,103,112,136,136,168,184,128,112,2,87, + 103,112,136,136,248,136,136,136,2,87,103,240,136,136,240,136, + 136,240,2,87,103,112,136,128,128,128,136,112,2,87,103,240, + 136,136,136,136,136,240,2,87,103,248,128,128,224,128,128,248, + 2,87,103,248,128,128,224,128,128,128,2,87,103,112,136,128, + 184,136,136,112,2,87,103,136,136,136,248,136,136,136,2,87, + 103,248,32,32,32,32,32,248,2,87,103,248,8,8,8,8, + 136,112,2,87,103,136,136,144,224,144,136,136,2,87,103,128, + 128,128,128,128,128,248,2,87,103,136,136,216,168,136,136,136, + 2,87,103,136,136,200,168,152,136,136,2,87,103,112,136,136, + 136,136,136,112,2,87,103,240,136,136,240,128,128,128,2,87, + 103,112,136,136,136,136,168,112,2,87,103,240,136,136,240,160, + 144,136,2,87,103,112,136,128,112,8,136,112,2,87,103,248, + 32,32,32,32,32,32,2,87,103,136,136,136,136,136,136,112, + 2,87,103,136,136,136,136,136,80,32,2,87,103,136,136,136, + 168,168,168,80,2,87,103,136,136,80,32,80,136,136,2,87, + 103,136,136,80,32,32,32,32,2,87,103,248,8,16,32,64, + 128,248,18,55,103,224,128,128,128,128,128,224,2,87,103,128, + 64,64,32,16,16,8,18,55,103,224,32,32,32,32,32,224, + 23,50,98,64,160,2,113,97,254,39,34,98,64,128,2,85, + 101,112,8,120,136,120,2,87,103,128,128,240,136,136,136,240, + 2,85,101,112,136,128,136,112,2,87,103,8,8,120,136,136, + 136,120,2,85,101,112,136,248,128,120,2,87,103,56,64,240, + 64,64,64,64,0,87,103,112,136,136,136,120,8,112,2,87, + 103,128,128,240,136,136,136,136,2,87,103,48,0,248,32,32, + 32,248,0,89,105,48,0,248,8,8,8,8,8,112,2,87, + 103,128,128,136,144,224,144,136,2,87,103,224,32,32,32,32, + 32,248,2,85,101,208,168,168,168,168,2,85,101,176,200,136, + 136,136,2,85,101,112,136,136,136,112,0,87,103,240,136,136, + 136,240,128,128,0,87,103,120,136,136,136,120,8,8,2,85, + 101,184,192,128,128,128,2,85,101,120,128,112,8,240,2,87, + 103,32,32,248,32,32,32,32,2,85,101,136,136,136,136,112, + 2,85,101,136,136,136,80,32,2,85,101,136,168,168,168,80, + 2,85,101,136,80,32,80,136,0,87,103,136,136,136,136,120, + 8,112,2,85,101,248,16,32,64,248,2,87,103,24,32,64, + 192,64,32,24,34,23,103,128,128,128,128,128,128,128,2,87, + 103,192,32,16,24,16,32,192,4,82,98,72,176,255}; +/* + Fontname: -FreeType-FreeDooM-Bold-R-Normal--34-340-72-72-P-170-ISO8859-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 7 h=10 x= 4 y=10 dx= 8 dy= 0 ascent=12 len=10 + Font Bounding box w= 7 h=12 x= 0 y= 0 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent =10 descent= 1 + X Font ascent =12 descent= 0 + Max Font ascent =12 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_freedoomr10r[1042] U8G_SECTION(".progmem.u8g_font_freedoomr10r") = { + 0,7,12,0,0,10,1,113,3,88,32,127,1,12,0,12, + 0,0,0,0,7,0,1,0,0,0,7,0,1,0,0,0, + 7,0,1,0,0,0,7,0,1,0,0,0,7,0,1,0, + 0,0,7,0,1,0,0,0,7,0,1,0,0,0,7,0, + 1,3,10,10,7,0,2,96,128,128,128,128,128,128,128,128, + 96,3,10,10,7,3,2,192,32,32,32,32,32,32,32,32, + 192,5,5,5,8,1,7,168,112,32,112,168,7,7,7,8, + 0,4,16,16,16,254,16,16,16,2,2,2,7,2,10,64, + 128,7,1,1,8,0,7,254,2,2,2,7,2,2,192,192, + 7,10,10,8,0,2,2,4,4,8,16,16,32,64,64,128, + 6,10,10,7,0,2,252,132,132,132,132,132,132,132,132,252, + 2,10,10,7,4,2,192,64,64,64,64,64,64,64,64,64, + 6,10,10,7,0,2,252,4,4,4,4,252,128,128,128,252, + 6,10,10,7,0,2,252,4,4,4,60,4,4,4,4,252, + 6,10,10,7,0,2,132,132,132,132,132,252,4,4,4,4, + 6,10,10,7,0,2,252,128,128,128,252,4,4,4,4,252, + 6,10,10,7,0,2,252,128,128,128,252,132,132,132,132,252, + 6,10,10,7,0,2,252,4,4,4,4,4,4,4,4,4, + 6,10,10,7,0,2,252,132,132,132,252,132,132,132,132,252, + 6,10,10,7,0,2,252,132,132,132,252,4,4,4,4,252, + 2,7,7,7,2,2,192,192,0,0,0,192,192,0,0,0, + 7,0,1,0,0,0,7,0,1,0,0,0,7,0,1,0, + 0,0,7,0,1,0,0,0,7,0,1,0,0,0,7,0, + 1,7,10,10,8,0,2,254,130,130,130,130,254,130,130,130, + 130,7,10,10,8,0,2,254,130,130,130,252,130,130,130,130, + 254,7,10,10,8,0,2,254,128,128,128,128,128,128,128,128, + 254,7,10,10,8,0,2,252,130,130,130,130,130,130,130,130, + 252,7,10,10,8,0,2,254,128,128,128,248,128,128,128,128, + 254,7,10,10,8,0,2,254,128,128,128,248,128,128,128,128, + 128,7,10,10,8,0,2,254,128,128,128,158,130,130,130,130, + 254,7,10,10,8,0,2,130,130,130,130,254,130,130,130,130, + 130,1,10,10,8,3,2,128,128,128,128,128,128,128,128,128, + 128,7,10,10,8,0,2,30,2,2,2,2,2,130,130,130, + 124,7,10,10,8,0,2,130,132,136,144,224,160,144,136,132, + 130,7,10,10,8,0,2,128,128,128,128,128,128,128,128,128, + 254,7,10,10,8,0,2,130,198,170,146,130,130,130,130,130, + 130,7,10,10,8,0,2,194,194,162,162,146,146,138,138,134, + 134,7,10,10,8,0,2,124,130,130,130,130,130,130,130,130, + 124,7,10,10,8,0,2,254,130,130,130,254,128,128,128,128, + 128,7,10,10,8,0,2,120,132,132,132,132,132,132,132,132, + 126,7,10,10,8,0,2,254,130,130,130,254,160,144,136,132, + 130,7,10,10,8,0,2,254,128,128,128,128,254,2,2,2, + 254,7,9,9,8,0,3,254,16,16,16,16,16,16,16,16, + 7,10,10,8,0,2,130,130,130,130,130,130,130,130,130,254, + 7,10,10,8,0,2,130,130,130,68,68,108,40,40,16,16, + 7,10,10,8,0,2,130,130,130,130,130,146,146,170,170,198, + 7,10,10,8,0,2,130,68,68,40,16,16,40,68,68,130, + 7,10,10,8,0,2,130,130,130,130,254,16,16,16,16,16, + 7,10,10,8,0,2,254,2,6,12,24,48,96,192,128,254, + 4,10,10,7,0,2,240,128,128,128,128,128,128,128,128,240, + 6,10,10,7,0,2,128,64,64,32,32,16,16,8,8,4, + 4,10,10,7,2,2,240,16,16,16,16,16,16,16,16,240, + 5,3,3,7,1,9,32,80,136,6,1,1,7,0,2,252, + 2,2,2,7,2,10,128,64,0,0,0,7,0,1,0,0, + 0,7,0,1,0,0,0,7,0,1,0,0,0,7,0,1, + 0,0,0,7,0,1,0,0,0,7,0,1,0,0,0,7, + 0,1,0,0,0,7,0,1,0,0,0,7,0,1,0,0, + 0,7,0,1,0,0,0,7,0,1,0,0,0,7,0,1, + 0,0,0,7,0,1,0,0,0,7,0,1,0,0,0,7, + 0,1,0,0,0,7,0,1,0,0,0,7,0,1,0,0, + 0,7,0,1,0,0,0,7,0,1,0,0,0,7,0,1, + 0,0,0,7,0,1,0,0,0,7,0,1,0,0,0,7, + 0,1,0,0,0,7,0,1,0,0,0,7,0,1,0,0, + 0,7,0,1,0,0,0,7,0,1,0,0,0,7,0,1, + 0,0,0,7,0,1,0,0,0,7,0,1,0,0,0,7, + 0,1}; +/* + Fontname: -FreeType-FreeDooM-Bold-R-Normal--34-340-72-72-P-170-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 24 + Calculated Max Values w=17 h=24 x= 7 y=13 dx=19 dy= 0 ascent=26 len=72 + Font Bounding box w=18 h=26 x= 0 y= 0 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent =24 descent= 0 + X Font ascent =24 descent= 0 + Max Font ascent =26 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_freedoomr25n[943] U8G_SECTION(".progmem.u8g_font_freedoomr25n") = { + 0,18,26,0,0,24,3,112,3,144,32,127,0,26,0,24, + 0,0,0,0,11,0,0,255,255,255,255,255,255,255,255,255, + 255,17,16,48,19,1,6,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,1,192,0,255,255,128,255, + 255,128,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,7,8,8,11,3,2,62,62,62, + 62,62,240,240,240,9,2,4,11,1,13,255,128,255,128,5, + 5,5,11,5,2,248,248,248,248,248,255,17,24,72,19,1, + 2,255,255,128,255,255,128,192,3,128,192,3,128,192,3,128, + 192,3,128,192,3,128,192,3,128,192,3,128,192,3,128,192, + 3,128,192,3,128,192,3,128,192,3,128,192,3,128,192,3, + 128,192,3,128,192,3,128,192,3,128,192,3,128,192,3,128, + 255,255,128,255,255,128,255,255,128,6,24,24,19,7,2,252, + 252,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,17,24,72,19,1,2,255,255,128, + 255,255,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + 3,128,0,3,128,0,3,128,0,3,128,0,3,128,255,255, + 128,255,255,128,192,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,0,192,0,0,192,0,0,255,255,128,255, + 255,128,255,255,128,17,24,72,19,1,2,255,255,128,255,255, + 128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128, + 0,3,128,0,3,128,0,3,128,0,3,128,31,255,128,31, + 255,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3, + 128,0,3,128,0,3,128,0,3,128,255,255,128,255,255,128, + 255,255,128,17,24,72,19,1,2,192,3,128,192,3,128,192, + 3,128,192,3,128,192,3,128,192,3,128,192,3,128,192,3, + 128,192,3,128,192,3,128,192,3,128,255,255,128,255,255,128, + 0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + 3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3, + 128,17,24,72,19,1,2,255,255,128,255,255,128,192,0,0, + 192,0,0,192,0,0,192,0,0,192,0,0,192,0,0,192, + 0,0,192,0,0,192,0,0,255,255,128,255,255,128,0,3, + 128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128, + 0,3,128,0,3,128,255,255,128,255,255,128,255,255,128,17, + 24,72,19,1,2,255,255,128,255,255,128,192,0,0,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,0,255,255,128,255,255,128,192,3,128,192, + 3,128,192,3,128,192,3,128,192,3,128,192,3,128,192,3, + 128,192,3,128,255,255,128,255,255,128,255,255,128,16,24,48, + 19,2,2,255,255,255,255,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,17,24,72,19,1,2,255,255,128,255,255,128,192, + 3,128,192,3,128,192,3,128,192,3,128,192,3,128,192,3, + 128,192,3,128,192,3,128,192,3,128,255,255,128,255,255,128, + 192,3,128,192,3,128,192,3,128,192,3,128,192,3,128,192, + 3,128,192,3,128,192,3,128,255,255,128,255,255,128,255,255, + 128,17,24,72,19,1,2,255,255,128,255,255,128,192,3,128, + 192,3,128,192,3,128,192,3,128,192,3,128,192,3,128,192, + 3,128,192,3,128,192,3,128,255,255,128,255,255,128,0,3, + 128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128, + 0,3,128,0,3,128,255,255,128,255,255,128,255,255,128,5, + 16,16,11,5,2,248,248,248,248,248,0,0,0,0,0,0, + 248,248,248,248,248,7,16,16,11,3,2,62,62,62,62,62, + 0,0,0,62,62,62,62,62,240,240,240,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--16-160-72-72-P-81-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=16 h=17 x= 4 y=10 dx=17 dy= 0 ascent=17 len=34 + Font Bounding box w=24 h=21 x=-1 y=-4 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =17 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub11[3948] U8G_SECTION(".progmem.u8g_font_fub11") = { + 0,24,21,255,252,11,2,82,5,55,32,255,253,17,252,11, + 253,0,0,0,5,0,0,2,11,11,6,2,0,192,192,192, + 192,192,192,192,192,0,0,192,6,5,5,8,1,6,204,204, + 204,204,204,10,11,22,11,1,0,9,128,25,128,25,0,127, + 192,51,0,50,0,54,0,255,0,100,0,108,0,76,0,8, + 14,14,10,1,254,8,62,126,203,200,248,126,15,11,203,235, + 126,8,8,15,11,22,17,1,0,60,32,238,96,198,64,198, + 192,231,128,125,124,3,238,2,198,6,198,4,238,8,124,11, + 11,22,13,1,0,62,0,119,0,99,0,119,0,60,0,124, + 192,238,192,199,192,195,192,243,192,63,224,2,5,5,7,2, + 6,192,192,192,192,192,3,14,14,6,1,253,96,96,96,224, + 192,192,192,192,192,192,224,96,96,96,3,14,14,7,2,253, + 192,192,192,96,96,96,96,96,96,96,96,224,192,192,6,5, + 5,10,2,5,120,48,252,48,120,9,9,18,16,3,0,8, + 0,8,0,8,0,8,0,255,128,8,0,8,0,8,0,8, + 0,3,4,4,5,1,254,96,96,192,192,4,2,2,6,1, + 3,240,240,2,2,2,5,2,0,192,192,5,12,12,7,1, + 255,24,24,16,48,48,32,32,96,96,64,192,192,8,11,11, + 9,1,0,60,102,195,195,195,195,195,195,195,102,60,4,11, + 11,9,2,0,48,240,240,48,48,48,48,48,48,48,48,8, + 11,11,9,1,0,62,119,99,3,7,6,30,60,112,224,255, + 8,11,11,9,1,0,124,238,198,6,60,6,3,195,199,126, + 60,8,11,11,9,1,0,14,30,30,54,102,102,198,255,255, + 6,6,8,11,11,9,1,0,254,192,192,192,254,231,3,3, + 199,254,124,8,11,11,9,1,0,60,118,67,192,222,231,195, + 195,195,102,60,8,11,11,9,1,0,255,3,7,6,14,12, + 28,24,56,56,112,8,11,11,9,1,0,126,231,195,231,60, + 102,195,195,195,231,60,8,11,11,9,1,0,60,102,195,195, + 231,127,3,3,198,110,60,2,8,8,5,2,0,192,192,0, + 0,0,0,192,192,3,10,10,5,1,254,96,96,0,0,0, + 0,96,96,192,192,10,8,16,16,3,1,0,64,3,128,12, + 0,112,0,128,0,112,0,14,0,1,192,10,4,8,16,3, + 3,255,192,0,0,0,0,255,192,10,8,16,16,3,1,128, + 0,96,0,28,0,3,128,0,192,7,0,24,0,224,0,7, + 11,11,9,1,0,120,238,134,6,12,24,48,48,48,0,48, + 15,14,28,17,1,253,7,224,30,120,48,28,103,236,238,230, + 204,102,204,102,204,102,204,102,239,252,103,184,48,0,28,32, + 7,224,11,11,22,11,0,0,14,0,14,0,15,0,27,0, + 27,128,57,128,49,128,63,192,127,192,96,224,224,96,9,11, + 22,11,1,0,254,0,199,0,195,0,195,0,199,0,252,0, + 195,0,193,128,193,128,195,128,254,0,10,11,22,12,1,0, + 31,0,115,128,97,192,192,0,192,0,192,0,192,0,193,192, + 97,192,115,128,31,0,9,11,22,11,1,0,252,0,207,0, + 195,0,193,128,193,128,193,128,193,128,193,128,195,0,207,0, + 252,0,8,11,11,10,1,0,255,192,192,192,192,255,192,192, + 192,192,255,8,11,11,9,1,0,255,192,192,192,192,254,192, + 192,192,192,192,10,11,22,12,1,0,31,0,59,192,96,192, + 224,0,192,0,195,192,192,192,192,192,96,192,57,192,31,192, + 9,11,22,11,1,0,193,128,193,128,193,128,193,128,193,128, + 255,128,193,128,193,128,193,128,193,128,193,128,2,11,11,4, + 1,0,192,192,192,192,192,192,192,192,192,192,192,8,11,11, + 10,1,0,3,3,3,3,3,3,3,195,195,254,124,9,11, + 22,11,1,0,195,0,199,0,206,0,220,0,248,0,248,0, + 220,0,206,0,206,0,199,0,195,128,8,11,11,9,1,0, + 192,192,192,192,192,192,192,192,192,255,255,13,11,22,15,1, + 0,240,120,240,120,248,248,216,216,216,216,221,216,205,152,205, + 152,207,152,199,24,199,24,10,11,22,12,1,0,240,192,240, + 192,248,192,216,192,220,192,204,192,206,192,198,192,199,192,195, + 192,195,192,11,11,22,13,1,0,31,0,123,192,96,192,192, + 96,192,96,192,96,192,96,192,96,96,192,123,192,31,0,8, + 11,11,10,1,0,252,199,195,195,199,254,192,192,192,192,192, + 12,11,22,14,1,0,31,0,123,128,96,192,192,96,192,96, + 192,96,192,96,192,96,96,192,123,192,31,240,9,11,22,11, + 1,0,254,0,199,128,193,128,193,128,195,0,254,0,195,0, + 193,128,193,128,193,128,193,128,9,11,22,11,1,0,62,0, + 119,0,193,128,224,0,248,0,127,0,15,128,1,128,193,128, + 119,0,62,0,9,11,22,11,1,0,255,128,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 10,11,22,12,1,0,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,225,192,115,128,62,0,11,11,22,12, + 0,0,224,96,96,96,112,224,48,192,49,192,57,128,25,128, + 31,128,31,0,15,0,14,0,16,11,22,16,0,0,225,135, + 99,198,99,198,99,198,119,206,54,108,54,108,54,108,60,60, + 28,56,28,56,11,11,22,11,0,0,112,192,49,192,59,128, + 31,0,14,0,14,0,31,0,27,0,51,128,113,192,224,224, + 10,11,22,10,0,0,225,192,113,128,51,128,59,0,31,0, + 30,0,12,0,12,0,12,0,12,0,12,0,8,11,11,10, + 1,0,255,7,6,14,28,24,56,112,96,192,255,4,14,14, + 6,1,253,240,192,192,192,192,192,192,192,192,192,192,192,192, + 240,5,12,12,7,1,255,128,192,192,64,96,96,32,48,48, + 16,16,24,4,14,14,7,1,253,240,48,48,48,48,48,48, + 48,48,48,48,48,48,240,8,10,10,16,4,0,16,24,24, + 36,36,36,66,66,129,129,8,1,1,8,0,254,255,3,3, + 3,4,0,9,192,64,32,7,8,8,9,1,0,60,110,6, + 126,230,198,238,118,8,11,11,10,1,0,192,192,192,220,246, + 199,195,195,195,230,220,7,8,8,9,1,0,60,110,198,192, + 192,198,238,60,8,11,11,10,1,0,3,3,3,59,111,227, + 195,195,195,103,59,7,8,8,9,1,0,60,110,198,254,192, + 198,110,60,5,11,11,7,1,0,56,48,48,248,48,48,48, + 48,48,48,48,8,11,11,10,1,253,59,111,227,195,195,195, + 103,59,3,103,60,7,11,11,9,1,0,192,192,192,220,238, + 198,198,198,198,198,198,2,11,11,4,1,0,192,192,0,192, + 192,192,192,192,192,192,192,3,14,14,5,1,253,96,96,0, + 96,96,96,96,96,96,96,96,96,224,224,7,11,11,9,1, + 0,192,192,192,206,220,216,240,216,220,204,198,2,11,11,4, + 1,0,192,192,192,192,192,192,192,192,192,192,192,12,8,16, + 14,1,0,220,224,239,112,198,48,198,48,198,48,198,48,198, + 48,198,48,7,8,8,9,1,0,220,238,198,198,198,198,198, + 198,8,8,8,10,1,0,60,102,195,195,195,195,102,60,8, + 11,11,10,1,253,220,230,195,195,195,199,246,220,192,192,192, + 8,11,11,10,1,253,59,103,195,195,195,195,111,59,3,3, + 3,5,8,8,7,1,0,216,240,192,192,192,192,192,192,7, + 8,8,9,1,0,124,238,192,248,30,198,238,124,6,10,10, + 8,1,0,48,48,252,48,48,48,48,48,56,28,7,8,8, + 9,1,0,198,198,198,198,198,198,238,118,8,8,8,9,0, + 0,227,99,103,118,54,60,28,28,13,8,16,14,0,0,231, + 24,103,152,103,152,111,176,61,240,60,240,60,240,56,224,8, + 8,8,9,0,0,99,118,62,28,60,62,103,227,8,11,11, + 9,0,253,227,99,119,54,54,62,28,28,24,24,56,6,8, + 8,8,1,0,252,12,24,56,112,96,192,252,6,15,15,8, + 1,252,28,56,48,48,48,48,112,192,96,48,48,48,48,48, + 28,1,16,16,5,2,252,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,6,15,15,8,1,252,224,112,48, + 48,48,48,24,12,24,48,48,48,48,48,240,8,2,2,9, + 0,3,121,223,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,5,0,0,2,11,11,6,2, + 253,192,0,0,192,192,192,192,192,192,192,192,7,12,12,9, + 1,254,4,4,60,110,206,208,208,214,110,60,32,64,8,11, + 11,10,1,0,62,119,96,96,252,96,96,96,96,96,255,9, + 8,16,10,1,2,128,128,93,0,34,0,65,0,65,0,34, + 0,93,0,128,128,9,11,22,11,1,0,195,128,99,0,103, + 0,247,128,62,0,60,0,255,128,24,0,24,0,24,0,24, + 0,1,14,14,5,2,253,128,128,128,128,128,128,0,0,128, + 128,128,128,128,128,6,14,14,8,1,253,120,236,192,224,120, + 124,204,204,248,120,28,12,156,248,5,1,1,5,0,10,216, + 12,11,22,14,1,0,31,128,57,192,111,96,217,176,152,16, + 152,16,153,144,143,16,64,32,48,192,31,128,5,8,8,7, + 1,3,112,216,120,216,216,120,0,248,8,6,6,10,1,1, + 103,102,238,206,102,103,9,4,8,10,0,3,255,128,0,128, + 0,128,0,128,255,12,11,22,14,1,0,31,128,57,192,111, + 96,201,176,136,144,143,16,137,144,136,144,72,160,48,192,31, + 128,5,1,1,5,0,10,248,4,4,4,6,1,7,96,208, + 144,240,9,10,20,16,3,0,8,0,8,0,8,0,255,128, + 8,0,8,0,8,0,0,0,0,0,255,128,5,6,6,7, + 1,5,112,216,24,48,192,248,5,7,7,7,1,4,112,216, + 24,112,24,216,112,3,3,3,4,1,9,96,192,128,255,7, + 14,14,9,1,253,126,244,244,244,244,116,20,20,20,20,20, + 20,20,20,2,2,2,4,1,4,192,192,4,4,4,3,0, + 252,64,48,176,224,3,6,6,5,1,5,96,224,96,96,96, + 96,6,8,8,8,1,3,120,252,204,204,204,120,0,252,8, + 6,6,10,1,1,204,102,103,103,102,204,12,11,22,13,1, + 0,224,128,97,128,99,0,99,0,102,0,108,224,12,224,25, + 224,25,96,51,240,96,96,11,11,22,13,1,0,97,0,227, + 0,98,0,102,0,100,0,109,224,27,96,24,96,49,192,35, + 0,99,224,12,11,22,13,1,0,120,192,216,128,113,128,217, + 0,115,0,6,96,4,224,13,224,25,96,25,240,48,96,7, + 11,11,9,1,253,24,0,24,24,56,112,224,192,194,254,60, + 11,16,32,11,0,0,24,0,12,0,4,0,0,0,0,0, + 14,0,14,0,15,0,27,0,27,128,57,128,49,128,63,192, + 127,192,96,224,224,96,11,16,32,11,0,0,3,0,2,0, + 4,0,0,0,0,0,14,0,14,0,15,0,27,0,27,128, + 57,128,49,128,63,192,127,192,96,224,224,96,11,16,32,11, + 0,0,6,0,14,0,25,0,0,0,0,0,14,0,14,0, + 15,0,27,0,27,128,57,128,49,128,63,192,127,192,96,224, + 224,96,11,15,30,11,0,0,13,0,23,0,0,0,0,0, + 14,0,14,0,15,0,27,0,27,128,57,128,49,128,63,192, + 127,192,96,224,224,96,11,15,30,11,0,0,27,0,0,0, + 0,0,0,0,14,0,14,0,15,0,27,0,27,0,59,128, + 49,128,63,192,127,192,96,224,224,96,10,17,34,12,1,0, + 12,0,18,0,18,0,30,0,0,0,0,0,12,0,30,0, + 30,0,63,0,51,0,51,0,99,128,127,128,255,192,192,192, + 192,192,15,11,22,16,0,0,3,254,7,128,7,128,13,128, + 29,128,25,254,57,128,63,128,97,128,97,128,193,254,10,15, + 30,12,1,252,31,0,119,128,97,192,192,0,192,0,192,0, + 192,0,193,192,97,192,115,128,62,0,8,0,14,0,2,0, + 28,0,8,16,16,10,1,0,96,48,24,0,0,255,192,192, + 192,192,255,192,192,192,192,255,8,16,16,10,1,0,12,8, + 16,0,0,255,192,192,192,192,255,192,192,192,192,255,8,16, + 16,10,1,0,24,60,36,0,0,255,192,192,192,192,255,192, + 192,192,192,255,8,15,15,10,1,0,102,0,0,0,255,192, + 192,192,192,255,192,192,192,192,255,4,16,16,4,255,0,192, + 96,48,0,0,48,48,48,48,48,48,48,48,48,48,48,4, + 16,16,4,1,0,112,96,192,0,0,192,192,192,192,192,192, + 192,192,192,192,192,4,16,16,4,0,0,96,240,144,0,0, + 96,96,96,96,96,96,96,96,96,96,96,5,15,15,5,0, + 0,216,0,0,0,48,48,48,48,48,48,48,48,48,48,48, + 11,11,22,12,0,0,127,0,99,128,96,192,96,224,96,96, + 252,96,96,96,96,224,96,192,99,128,127,0,10,15,30,12, + 1,0,25,0,22,0,0,0,0,0,240,192,240,192,248,192, + 216,192,220,192,204,192,206,192,198,192,199,192,195,192,195,192, + 11,16,32,13,1,0,24,0,8,0,12,0,0,0,0,0, + 31,0,123,192,96,192,192,96,192,96,192,96,192,96,192,96, + 96,192,123,192,31,0,11,16,32,13,1,0,3,0,2,0, + 4,0,0,0,0,0,31,0,123,192,96,192,192,96,192,96, + 192,96,192,96,192,96,96,192,123,192,31,0,11,16,32,13, + 1,0,14,0,27,0,17,0,0,0,0,0,31,0,123,192, + 96,192,192,96,192,96,192,96,192,96,192,96,96,192,123,192, + 31,0,11,15,30,13,1,0,31,0,0,0,0,0,0,0, + 31,0,123,192,96,192,192,96,192,96,192,96,192,96,224,224, + 96,192,127,192,31,0,11,15,30,13,1,0,27,0,0,0, + 0,0,0,0,31,0,123,192,96,192,192,96,192,96,192,96, + 192,96,192,96,96,192,123,192,31,0,8,8,8,16,4,0, + 129,195,102,24,24,36,66,129,11,11,22,13,1,0,31,160, + 59,192,96,192,193,96,194,96,196,96,200,96,208,96,224,192, + 123,128,191,0,10,16,32,12,1,0,48,0,24,0,8,0, + 0,0,0,0,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,225,192,127,128,62,0,10,16,32,12,1,0, + 3,0,6,0,4,0,0,0,0,0,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,225,192,127,128,62,0, + 10,16,32,12,1,0,28,0,30,0,51,0,0,0,0,0, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 225,192,127,128,62,0,10,15,30,12,1,0,51,0,0,0, + 0,0,0,0,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,225,192,115,128,62,0,10,16,32,10,0,0, + 6,0,6,0,4,0,0,0,0,0,225,192,113,128,51,128, + 59,0,31,0,30,0,12,0,12,0,12,0,12,0,12,0, + 8,11,11,10,1,0,192,192,254,199,195,195,199,254,192,192, + 192,8,11,11,10,1,0,124,238,198,206,220,216,206,199,195, + 219,222,7,12,12,9,1,0,96,48,16,0,60,110,6,126, + 230,198,238,118,7,12,12,9,1,0,12,24,16,0,60,110, + 6,126,230,198,238,118,7,12,12,9,1,0,56,44,68,0, + 60,110,6,126,230,198,238,118,7,11,11,9,1,0,60,0, + 0,60,110,6,126,230,198,238,118,7,11,11,9,1,0,108, + 0,0,60,230,6,126,230,198,238,118,7,13,13,9,1,0, + 24,36,36,60,0,60,102,6,126,230,198,238,126,13,8,16, + 15,1,0,60,224,103,176,7,24,127,248,231,0,199,24,237, + 184,120,240,7,12,12,9,1,252,60,110,198,192,192,198,110, + 60,16,28,4,56,7,13,13,9,1,0,96,32,48,16,0, + 60,110,198,254,192,198,110,60,7,13,13,9,1,0,12,12, + 24,16,0,60,110,198,254,192,198,110,60,7,13,13,9,1, + 0,24,56,44,68,0,60,110,198,254,192,198,110,60,7,12, + 12,9,1,0,108,0,0,0,60,110,198,254,192,206,110,60, + 3,12,12,4,0,0,192,96,32,0,96,96,96,96,96,96, + 96,96,3,12,12,4,1,0,96,192,128,0,192,192,192,192, + 192,192,192,192,5,12,12,4,0,0,96,208,136,0,96,96, + 96,96,96,96,96,96,5,11,11,5,0,0,216,0,0,48, + 48,48,48,48,48,48,48,8,11,11,10,1,0,51,28,102, + 62,103,195,195,195,195,103,60,7,11,11,9,1,0,60,0, + 0,220,238,198,198,198,198,198,198,8,13,13,10,1,0,96, + 48,16,8,0,60,102,195,195,195,195,102,60,8,13,13,10, + 1,0,6,12,8,16,0,60,102,195,195,195,195,102,60,8, + 13,13,10,1,0,24,28,36,34,0,60,102,195,195,195,195, + 102,60,8,11,11,10,1,0,60,0,0,60,102,195,195,195, + 195,102,60,8,12,12,10,1,0,102,0,0,0,60,102,195, + 195,195,195,102,60,10,6,12,16,3,2,12,0,0,0,255, + 192,0,0,0,0,12,0,8,10,10,10,1,255,1,62,102, + 207,203,211,227,118,252,128,7,12,12,9,1,0,96,48,16, + 0,198,198,198,198,198,198,238,118,7,12,12,9,1,0,12, + 24,16,0,198,198,198,198,198,198,238,118,7,12,12,9,1, + 0,56,40,68,0,198,198,198,198,198,198,238,118,7,11,11, + 9,1,0,108,0,0,198,198,198,198,198,198,238,118,9,16, + 32,9,0,253,7,0,6,0,12,0,8,0,0,0,99,128, + 99,0,115,0,54,0,54,0,30,0,28,0,28,0,28,0, + 248,0,112,0,8,14,14,10,1,253,192,192,192,220,230,195, + 195,195,199,230,220,192,192,192,8,14,14,9,1,253,108,0, + 0,199,198,238,108,108,60,56,56,56,48,48}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--16-160-72-72-P-81-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 11 + Calculated Max Values w= 9 h=12 x= 3 y= 5 dx=16 dy= 0 ascent=11 len=18 + Font Bounding box w=24 h=21 x=-1 y=-4 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =11 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub11n[266] U8G_SECTION(".progmem.u8g_font_fub11n") = { + 0,24,21,255,252,11,0,0,0,0,42,57,0,11,254,11, + 0,6,5,5,10,2,5,120,48,252,48,120,9,9,18,16, + 3,0,8,0,8,0,8,0,8,0,255,128,8,0,8,0, + 8,0,8,0,3,4,4,5,1,254,96,96,192,192,4,2, + 2,6,1,3,240,240,2,2,2,5,2,0,192,192,5,12, + 12,7,1,255,24,24,16,48,48,32,32,96,96,64,192,192, + 8,11,11,9,1,0,60,102,195,195,195,195,195,195,195,102, + 60,4,11,11,9,2,0,48,240,240,48,48,48,48,48,48, + 48,48,8,11,11,9,1,0,62,119,99,3,7,6,30,60, + 112,224,255,8,11,11,9,1,0,124,238,198,6,60,6,3, + 195,199,126,60,8,11,11,9,1,0,14,30,30,54,102,102, + 198,255,255,6,6,8,11,11,9,1,0,254,192,192,192,254, + 231,3,3,199,254,124,8,11,11,9,1,0,60,118,67,192, + 222,231,195,195,195,102,60,8,11,11,9,1,0,255,3,7, + 6,14,12,28,24,56,56,112,8,11,11,9,1,0,126,231, + 195,231,60,102,195,195,195,231,60,8,11,11,9,1,0,60, + 102,195,195,231,127,3,3,198,110,60}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--16-160-72-72-P-81-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=16 h=16 x= 4 y= 9 dx=17 dy= 0 ascent=12 len=28 + Font Bounding box w=24 h=21 x=-1 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub11r[1829] U8G_SECTION(".progmem.u8g_font_fub11r") = { + 0,24,21,255,252,11,2,82,5,55,32,127,253,12,252,11, + 253,0,0,0,5,0,0,2,11,11,6,2,0,192,192,192, + 192,192,192,192,192,0,0,192,6,5,5,8,1,6,204,204, + 204,204,204,10,11,22,11,1,0,9,128,25,128,25,0,127, + 192,51,0,50,0,54,0,255,0,100,0,108,0,76,0,8, + 14,14,10,1,254,8,62,126,203,200,248,126,15,11,203,235, + 126,8,8,15,11,22,17,1,0,60,32,238,96,198,64,198, + 192,231,128,125,124,3,238,2,198,6,198,4,238,8,124,11, + 11,22,13,1,0,62,0,119,0,99,0,119,0,60,0,124, + 192,238,192,199,192,195,192,243,192,63,224,2,5,5,7,2, + 6,192,192,192,192,192,3,14,14,6,1,253,96,96,96,224, + 192,192,192,192,192,192,224,96,96,96,3,14,14,7,2,253, + 192,192,192,96,96,96,96,96,96,96,96,224,192,192,6,5, + 5,10,2,5,120,48,252,48,120,9,9,18,16,3,0,8, + 0,8,0,8,0,8,0,255,128,8,0,8,0,8,0,8, + 0,3,4,4,5,1,254,96,96,192,192,4,2,2,6,1, + 3,240,240,2,2,2,5,2,0,192,192,5,12,12,7,1, + 255,24,24,16,48,48,32,32,96,96,64,192,192,8,11,11, + 9,1,0,60,102,195,195,195,195,195,195,195,102,60,4,11, + 11,9,2,0,48,240,240,48,48,48,48,48,48,48,48,8, + 11,11,9,1,0,62,119,99,3,7,6,30,60,112,224,255, + 8,11,11,9,1,0,124,238,198,6,60,6,3,195,199,126, + 60,8,11,11,9,1,0,14,30,30,54,102,102,198,255,255, + 6,6,8,11,11,9,1,0,254,192,192,192,254,231,3,3, + 199,254,124,8,11,11,9,1,0,60,118,67,192,222,231,195, + 195,195,102,60,8,11,11,9,1,0,255,3,7,6,14,12, + 28,24,56,56,112,8,11,11,9,1,0,126,231,195,231,60, + 102,195,195,195,231,60,8,11,11,9,1,0,60,102,195,195, + 231,127,3,3,198,110,60,2,8,8,5,2,0,192,192,0, + 0,0,0,192,192,3,10,10,5,1,254,96,96,0,0,0, + 0,96,96,192,192,10,8,16,16,3,1,0,64,3,128,12, + 0,112,0,128,0,112,0,14,0,1,192,10,4,8,16,3, + 3,255,192,0,0,0,0,255,192,10,8,16,16,3,1,128, + 0,96,0,28,0,3,128,0,192,7,0,24,0,224,0,7, + 11,11,9,1,0,120,238,134,6,12,24,48,48,48,0,48, + 15,14,28,17,1,253,7,224,30,120,48,28,103,236,238,230, + 204,102,204,102,204,102,204,102,239,252,103,184,48,0,28,32, + 7,224,11,11,22,11,0,0,14,0,14,0,15,0,27,0, + 27,128,57,128,49,128,63,192,127,192,96,224,224,96,9,11, + 22,11,1,0,254,0,199,0,195,0,195,0,199,0,252,0, + 195,0,193,128,193,128,195,128,254,0,10,11,22,12,1,0, + 31,0,115,128,97,192,192,0,192,0,192,0,192,0,193,192, + 97,192,115,128,31,0,9,11,22,11,1,0,252,0,207,0, + 195,0,193,128,193,128,193,128,193,128,193,128,195,0,207,0, + 252,0,8,11,11,10,1,0,255,192,192,192,192,255,192,192, + 192,192,255,8,11,11,9,1,0,255,192,192,192,192,254,192, + 192,192,192,192,10,11,22,12,1,0,31,0,59,192,96,192, + 224,0,192,0,195,192,192,192,192,192,96,192,57,192,31,192, + 9,11,22,11,1,0,193,128,193,128,193,128,193,128,193,128, + 255,128,193,128,193,128,193,128,193,128,193,128,2,11,11,4, + 1,0,192,192,192,192,192,192,192,192,192,192,192,8,11,11, + 10,1,0,3,3,3,3,3,3,3,195,195,254,124,9,11, + 22,11,1,0,195,0,199,0,206,0,220,0,248,0,248,0, + 220,0,206,0,206,0,199,0,195,128,8,11,11,9,1,0, + 192,192,192,192,192,192,192,192,192,255,255,13,11,22,15,1, + 0,240,120,240,120,248,248,216,216,216,216,221,216,205,152,205, + 152,207,152,199,24,199,24,10,11,22,12,1,0,240,192,240, + 192,248,192,216,192,220,192,204,192,206,192,198,192,199,192,195, + 192,195,192,11,11,22,13,1,0,31,0,123,192,96,192,192, + 96,192,96,192,96,192,96,192,96,96,192,123,192,31,0,8, + 11,11,10,1,0,252,199,195,195,199,254,192,192,192,192,192, + 12,11,22,14,1,0,31,0,123,128,96,192,192,96,192,96, + 192,96,192,96,192,96,96,192,123,192,31,240,9,11,22,11, + 1,0,254,0,199,128,193,128,193,128,195,0,254,0,195,0, + 193,128,193,128,193,128,193,128,9,11,22,11,1,0,62,0, + 119,0,193,128,224,0,248,0,127,0,15,128,1,128,193,128, + 119,0,62,0,9,11,22,11,1,0,255,128,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 10,11,22,12,1,0,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,225,192,115,128,62,0,11,11,22,12, + 0,0,224,96,96,96,112,224,48,192,49,192,57,128,25,128, + 31,128,31,0,15,0,14,0,16,11,22,16,0,0,225,135, + 99,198,99,198,99,198,119,206,54,108,54,108,54,108,60,60, + 28,56,28,56,11,11,22,11,0,0,112,192,49,192,59,128, + 31,0,14,0,14,0,31,0,27,0,51,128,113,192,224,224, + 10,11,22,10,0,0,225,192,113,128,51,128,59,0,31,0, + 30,0,12,0,12,0,12,0,12,0,12,0,8,11,11,10, + 1,0,255,7,6,14,28,24,56,112,96,192,255,4,14,14, + 6,1,253,240,192,192,192,192,192,192,192,192,192,192,192,192, + 240,5,12,12,7,1,255,128,192,192,64,96,96,32,48,48, + 16,16,24,4,14,14,7,1,253,240,48,48,48,48,48,48, + 48,48,48,48,48,48,240,8,10,10,16,4,0,16,24,24, + 36,36,36,66,66,129,129,8,1,1,8,0,254,255,3,3, + 3,4,0,9,192,64,32,7,8,8,9,1,0,60,110,6, + 126,230,198,238,118,8,11,11,10,1,0,192,192,192,220,246, + 199,195,195,195,230,220,7,8,8,9,1,0,60,110,198,192, + 192,198,238,60,8,11,11,10,1,0,3,3,3,59,111,227, + 195,195,195,103,59,7,8,8,9,1,0,60,110,198,254,192, + 198,110,60,5,11,11,7,1,0,56,48,48,248,48,48,48, + 48,48,48,48,8,11,11,10,1,253,59,111,227,195,195,195, + 103,59,3,103,60,7,11,11,9,1,0,192,192,192,220,238, + 198,198,198,198,198,198,2,11,11,4,1,0,192,192,0,192, + 192,192,192,192,192,192,192,3,14,14,5,1,253,96,96,0, + 96,96,96,96,96,96,96,96,96,224,224,7,11,11,9,1, + 0,192,192,192,206,220,216,240,216,220,204,198,2,11,11,4, + 1,0,192,192,192,192,192,192,192,192,192,192,192,12,8,16, + 14,1,0,220,224,239,112,198,48,198,48,198,48,198,48,198, + 48,198,48,7,8,8,9,1,0,220,238,198,198,198,198,198, + 198,8,8,8,10,1,0,60,102,195,195,195,195,102,60,8, + 11,11,10,1,253,220,230,195,195,195,199,246,220,192,192,192, + 8,11,11,10,1,253,59,103,195,195,195,195,111,59,3,3, + 3,5,8,8,7,1,0,216,240,192,192,192,192,192,192,7, + 8,8,9,1,0,124,238,192,248,30,198,238,124,6,10,10, + 8,1,0,48,48,252,48,48,48,48,48,56,28,7,8,8, + 9,1,0,198,198,198,198,198,198,238,118,8,8,8,9,0, + 0,227,99,103,118,54,60,28,28,13,8,16,14,0,0,231, + 24,103,152,103,152,111,176,61,240,60,240,60,240,56,224,8, + 8,8,9,0,0,99,118,62,28,60,62,103,227,8,11,11, + 9,0,253,227,99,119,54,54,62,28,28,24,24,56,6,8, + 8,8,1,0,252,12,24,56,112,96,192,252,6,15,15,8, + 1,252,28,56,48,48,48,48,112,192,96,48,48,48,48,48, + 28,1,16,16,5,2,252,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,6,15,15,8,1,252,224,112,48, + 48,48,48,24,12,24,48,48,48,48,48,240,8,2,2,9, + 0,3,121,223,255}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--20-200-72-72-P-101-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=21 x= 5 y=12 dx=21 dy= 0 ascent=21 len=54 + Font Bounding box w=31 h=26 x=-2 y=-5 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =21 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub14[5788] U8G_SECTION(".progmem.u8g_font_fub14") = { + 0,31,26,254,251,14,3,116,7,95,32,255,252,21,251,14, + 252,0,0,0,6,0,0,3,14,14,8,3,0,224,224,224, + 224,224,224,224,224,224,224,0,0,224,224,8,6,6,10,1, + 8,231,103,103,103,103,103,12,14,28,14,1,0,6,96,6, + 96,12,96,63,240,63,240,24,192,25,128,25,128,255,224,255, + 224,51,0,51,0,99,0,102,0,10,17,34,12,1,254,4, + 0,31,0,127,128,119,128,229,192,228,0,252,0,126,0,31, + 128,7,192,5,192,229,192,229,192,127,128,63,0,4,0,4, + 0,18,14,42,20,1,0,60,4,0,126,12,0,195,24,0, + 195,16,0,195,48,0,231,96,0,126,103,0,24,205,128,0, + 152,192,1,152,192,3,24,192,3,24,192,6,15,128,12,7, + 0,14,14,28,16,1,0,31,0,127,128,113,192,113,192,115, + 128,63,0,30,0,126,56,247,48,227,176,225,240,224,224,127, + 240,31,188,3,6,6,8,3,8,224,192,192,192,192,192,4, + 17,17,8,2,253,48,112,112,96,224,224,224,224,224,224,224, + 224,224,96,112,112,48,4,17,17,8,2,253,192,192,224,224, + 96,96,112,112,112,112,112,96,96,224,224,192,192,8,7,7, + 12,2,7,102,60,24,255,24,60,102,12,12,24,20,4,0, + 2,0,2,0,2,0,2,0,2,0,255,240,255,240,2,0, + 2,0,2,0,2,0,2,0,4,5,5,6,1,254,112,112, + 96,224,192,5,3,3,7,1,4,248,248,248,3,3,3,6, + 2,0,224,224,224,6,15,15,9,1,255,12,12,12,12,24, + 24,24,48,48,48,96,96,96,96,192,10,14,28,11,1,0, + 30,0,127,0,97,128,225,192,225,192,225,192,225,192,225,192, + 225,192,225,192,225,192,97,128,127,128,30,0,6,14,14,11, + 2,0,28,124,252,220,28,28,28,28,28,28,28,28,28,28, + 10,14,28,11,1,0,31,0,127,128,97,192,225,192,1,192, + 1,192,3,128,7,128,15,0,30,0,56,0,112,0,255,192, + 255,192,10,14,28,11,1,0,62,0,127,0,227,128,3,128, + 3,128,31,0,31,0,3,128,1,192,1,192,225,192,243,128, + 127,0,62,0,11,14,28,11,1,0,7,128,15,128,15,128, + 27,128,59,128,51,128,115,128,99,128,227,128,255,224,255,224, + 3,128,3,128,3,128,10,14,28,11,1,0,255,128,255,128, + 224,0,224,0,224,0,255,0,255,128,225,128,1,192,1,192, + 225,192,227,128,127,0,62,0,10,14,28,11,1,0,30,0, + 63,128,97,128,96,0,224,0,223,0,255,128,225,128,225,192, + 225,192,225,192,97,128,127,128,30,0,10,14,28,11,1,0, + 255,192,255,192,1,192,3,128,3,128,7,128,7,0,7,0, + 14,0,14,0,28,0,28,0,60,0,56,0,10,14,28,11, + 1,0,63,0,127,128,225,192,225,192,225,128,127,0,63,0, + 115,128,225,192,225,192,225,192,225,192,127,128,63,0,10,14, + 28,11,1,0,30,0,127,0,225,128,225,128,225,192,225,192, + 243,192,127,192,25,192,1,128,225,128,99,128,127,0,62,0, + 3,10,10,7,3,0,224,224,224,0,0,0,0,224,224,224, + 4,12,12,6,1,254,112,112,112,0,0,0,0,112,96,224, + 192,192,12,10,20,20,4,1,0,16,0,224,3,128,28,0, + 224,0,192,0,56,0,7,0,1,192,0,48,12,5,10,20, + 4,3,255,240,255,240,0,0,255,240,255,240,12,10,20,20, + 4,1,128,0,112,0,28,0,3,128,0,112,0,48,1,192, + 14,0,56,0,192,0,9,14,28,11,1,0,62,0,127,0, + 195,128,67,128,3,128,7,0,6,0,12,0,24,0,24,0, + 24,0,0,0,24,0,24,0,19,18,54,21,1,252,1,248, + 0,15,254,0,30,7,128,56,3,192,113,253,192,115,252,224, + 231,28,224,231,28,224,231,28,224,231,28,224,231,28,224,231, + 60,192,115,255,192,113,231,128,56,0,0,30,4,0,15,252, + 0,3,252,0,14,14,28,14,0,0,7,128,7,128,7,192, + 15,192,14,192,28,224,28,224,28,96,56,112,63,240,63,248, + 112,56,112,56,224,28,11,14,28,13,1,0,255,0,255,128, + 225,192,225,192,225,192,227,128,255,0,255,128,224,192,224,224, + 224,224,224,224,255,192,255,0,13,14,28,15,1,0,15,128, + 63,224,112,112,96,112,224,0,224,0,224,0,224,0,224,0, + 224,120,96,112,112,240,63,224,15,128,12,14,28,14,1,0, + 255,0,255,192,225,224,224,224,224,112,224,112,224,112,224,112, + 224,112,224,112,224,224,225,224,255,192,255,0,10,14,28,12, + 1,0,255,192,255,192,224,0,224,0,224,0,224,0,255,128, + 255,128,224,0,224,0,224,0,224,0,255,192,255,192,9,14, + 28,11,1,0,255,128,255,128,224,0,224,0,224,0,224,0, + 255,128,255,128,224,0,224,0,224,0,224,0,224,0,224,0, + 13,14,28,15,1,0,15,192,31,240,56,56,112,56,224,0, + 224,0,225,248,225,248,224,56,224,56,112,56,120,56,63,248, + 15,240,12,14,28,14,1,0,224,112,224,112,224,112,224,112, + 224,112,224,112,255,240,255,240,224,112,224,112,224,112,224,112, + 224,112,224,112,3,14,14,5,1,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,10,14,28,12,1,0,1,192, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 225,192,225,192,243,192,127,128,62,0,11,14,28,13,1,0, + 225,224,227,192,227,128,231,0,238,0,252,0,252,0,254,0, + 238,0,231,0,231,128,227,192,225,192,224,224,10,14,28,11, + 1,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,255,192,255,192,16,14, + 28,18,1,0,248,31,248,31,252,63,252,63,252,55,236,119, + 238,119,238,103,230,231,231,231,231,199,227,199,227,199,227,135, + 13,14,28,15,1,0,240,56,248,56,248,56,252,56,238,56, + 238,56,231,56,231,56,227,184,227,184,225,248,225,248,224,248, + 224,248,14,14,28,16,1,0,15,192,63,240,112,112,96,56, + 224,24,224,28,224,28,224,28,224,28,224,24,96,56,112,112, + 63,240,15,192,11,14,28,13,1,0,255,0,255,192,225,192, + 224,224,224,224,224,224,225,192,255,192,255,0,224,0,224,0, + 224,0,224,0,224,0,15,14,28,17,1,0,15,192,63,224, + 112,112,96,56,224,24,224,28,224,28,224,28,224,28,224,24, + 96,56,112,120,63,254,15,254,11,14,28,13,1,0,255,128, + 255,192,224,224,224,224,224,224,224,224,255,128,255,192,225,192, + 224,224,224,224,224,224,224,224,224,96,12,14,28,14,1,0, + 31,128,63,192,96,224,224,224,224,0,252,0,127,128,31,224, + 3,224,0,112,224,112,224,96,127,192,31,128,12,14,28,14, + 1,0,255,240,255,240,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,12,14, + 28,14,1,0,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,112,224,63,192,31,128, + 14,14,28,15,0,0,240,28,112,28,112,60,56,56,56,56, + 56,112,28,112,28,112,30,224,14,224,15,192,7,192,7,192, + 7,128,20,14,42,20,0,0,240,240,240,112,240,224,112,240, + 224,113,248,224,113,248,224,57,153,192,57,153,192,59,157,192, + 59,157,192,27,13,128,31,15,128,31,15,128,31,15,128,14, + 7,0,12,14,28,14,1,0,224,112,112,224,120,224,57,192, + 31,128,31,0,15,0,15,0,31,128,59,192,57,192,112,224, + 224,240,224,112,12,14,28,13,0,0,240,112,112,240,56,224, + 56,224,29,192,29,192,15,128,15,0,7,0,7,0,7,0, + 7,0,7,0,7,0,11,14,28,13,1,0,127,224,127,224, + 1,224,3,192,3,128,7,128,15,0,30,0,30,0,60,0, + 120,0,248,0,255,224,255,224,5,18,18,8,2,252,248,248, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,248,248, + 6,15,15,9,1,255,192,192,96,96,96,48,48,48,16,24, + 24,24,12,12,12,5,18,18,8,2,252,248,248,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,248,248,10,12,24, + 20,5,0,12,0,12,0,12,0,18,0,18,0,51,0,33, + 0,33,0,64,128,64,128,192,192,128,64,10,2,4,10,0, + 253,255,192,255,192,5,4,4,5,255,12,224,112,48,24,9, + 10,20,11,1,0,62,0,127,128,227,128,31,128,127,128,227, + 128,227,128,227,128,255,128,57,128,10,14,28,12,1,0,224, + 0,224,0,224,0,224,0,239,0,255,128,225,192,225,192,225, + 192,225,192,225,192,225,128,255,128,239,0,9,10,20,11,1, + 0,62,0,127,0,227,128,227,128,224,0,224,0,227,128,227, + 128,127,0,62,0,10,14,28,12,1,0,1,192,1,192,1, + 192,1,192,61,192,127,192,225,192,225,192,225,192,225,192,225, + 192,225,192,127,192,61,192,9,10,20,11,1,0,30,0,127, + 0,227,128,227,128,255,128,255,128,224,0,227,128,127,128,62, + 0,7,14,14,8,1,0,30,62,56,56,254,254,56,56,56, + 56,56,56,56,56,10,14,28,12,1,252,61,192,127,192,113, + 192,225,192,225,192,225,192,225,192,225,192,127,192,61,192,1, + 192,97,192,127,128,63,0,9,14,28,11,1,0,224,0,224, + 0,224,0,224,0,239,0,255,128,227,128,227,128,227,128,227, + 128,227,128,227,128,227,128,227,128,3,14,14,5,1,0,224, + 224,224,0,224,224,224,224,224,224,224,224,224,224,4,18,18, + 7,2,252,112,112,112,0,112,112,112,112,112,112,112,112,112, + 112,112,112,240,224,9,14,28,11,1,0,224,0,224,0,224, + 0,224,0,231,128,231,0,238,0,252,0,252,0,252,0,238, + 0,231,0,231,0,227,128,3,14,14,5,1,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,15,10,20,18,1, + 0,239,60,255,254,227,206,227,134,227,134,227,134,227,134,227, + 134,227,134,227,134,9,10,20,11,1,0,239,0,255,128,227, + 128,227,128,227,128,227,128,227,128,227,128,227,128,227,128,10, + 10,20,12,1,0,30,0,127,128,97,128,225,192,225,192,225, + 192,225,192,97,128,127,128,30,0,10,14,28,12,1,252,239, + 0,255,128,225,128,225,192,225,192,225,192,225,192,225,192,255, + 128,239,0,224,0,224,0,224,0,224,0,10,14,28,12,1, + 252,61,192,127,192,225,192,225,192,225,192,225,192,225,192,225, + 192,127,192,61,192,1,192,1,192,1,192,1,192,6,10,10, + 8,1,0,236,252,240,224,224,224,224,224,224,224,9,10,20, + 11,1,0,62,0,255,0,227,128,224,0,126,0,31,0,3, + 128,227,128,255,0,62,0,7,13,13,9,1,0,8,56,56, + 254,254,56,56,56,56,56,56,62,30,9,10,20,11,1,0, + 227,128,227,128,227,128,227,128,227,128,227,128,227,128,227,128, + 255,128,123,128,11,10,20,11,0,0,224,224,113,192,113,192, + 49,128,59,128,59,128,27,0,31,0,31,0,14,0,17,10, + 30,17,0,0,225,195,128,97,227,0,115,231,0,115,103,0, + 51,119,0,63,118,0,63,62,0,62,62,0,30,60,0,30, + 28,0,9,10,20,11,1,0,227,128,115,0,119,0,62,0, + 28,0,62,0,62,0,119,0,227,128,227,128,11,14,28,11, + 0,252,224,224,113,192,113,192,57,128,59,128,59,128,31,0, + 31,0,15,0,14,0,14,0,14,0,28,0,28,0,8,10, + 10,10,1,0,255,255,7,14,28,56,112,224,255,255,7,19, + 19,10,2,251,14,62,56,56,56,56,56,48,240,192,240,112, + 56,56,56,56,56,62,14,1,21,21,7,3,251,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,7,19,19,10,2,251,224,240,56,56,56,56,56,56, + 28,6,28,56,56,56,56,56,56,240,224,11,3,6,11,0, + 4,48,96,127,192,199,128,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,6,0,0,3,14, + 14,9,3,252,224,224,0,0,224,224,224,224,224,224,224,224, + 224,224,9,14,28,11,1,254,2,0,2,0,62,0,127,0, + 231,128,231,128,232,0,232,0,235,128,243,128,127,0,62,0, + 32,0,32,0,10,14,28,12,1,0,31,0,63,192,113,192, + 112,0,112,0,254,0,254,0,112,0,112,0,112,0,112,0, + 112,0,255,192,255,192,10,10,20,12,1,3,128,64,94,128, + 33,0,64,128,64,128,64,128,64,128,33,0,94,128,128,64, + 11,14,28,13,1,0,224,224,225,192,113,192,113,128,251,224, + 251,224,31,0,255,224,255,224,14,0,14,0,14,0,14,0, + 14,0,1,18,18,7,3,252,128,128,128,128,128,128,128,128, + 0,0,128,128,128,128,128,128,128,128,8,18,18,10,1,252, + 62,126,224,224,112,60,126,231,231,231,254,124,30,7,7,135, + 254,56,7,2,2,7,0,12,238,238,15,14,28,17,1,0, + 7,192,31,240,55,152,111,204,204,228,156,2,156,2,156,226, + 140,226,207,198,71,132,32,24,28,112,15,192,7,9,9,8, + 1,5,120,204,124,204,204,252,36,0,254,10,8,16,12,1, + 1,57,192,113,128,115,128,231,0,231,0,115,128,113,128,57, + 192,11,5,10,13,1,4,255,224,255,224,0,32,0,32,0, + 32,255,15,14,28,17,1,0,7,192,31,240,63,152,111,236, + 204,100,140,98,143,194,143,194,140,98,204,102,76,100,32,24, + 28,112,15,192,6,2,2,6,0,12,252,252,5,5,5,7, + 1,9,112,136,136,136,112,12,12,24,20,4,0,2,0,2, + 0,2,0,255,240,255,240,2,0,2,0,2,0,0,0,0, + 0,255,240,255,240,6,8,8,8,1,6,120,204,12,24,48, + 224,252,252,6,7,7,8,1,7,120,204,12,48,12,204,120, + 4,4,4,4,1,12,48,96,96,192,255,9,17,34,11,1, + 253,63,128,121,0,249,0,249,0,249,0,249,0,121,0,9, + 0,9,0,9,0,9,0,9,0,9,0,9,0,9,0,9, + 0,9,0,3,3,3,6,2,5,224,224,224,5,5,5,5, + 1,251,64,112,24,24,240,4,8,8,6,1,6,48,240,48, + 48,48,48,48,48,7,9,9,9,1,5,56,68,198,198,198, + 68,56,0,254,10,8,16,12,1,1,231,0,99,128,115,128, + 57,192,57,192,115,128,99,128,231,0,14,14,28,16,1,0, + 112,48,240,48,48,96,48,192,48,192,49,128,49,156,51,60, + 6,60,6,108,12,204,24,252,24,12,48,12,15,14,28,17, + 1,0,112,48,240,32,48,96,48,192,48,192,49,128,51,60, + 51,102,6,6,12,14,12,28,24,48,48,126,48,126,14,14, + 28,16,1,0,120,24,204,48,12,48,48,96,12,192,204,192, + 121,156,1,188,3,60,6,108,6,204,12,252,8,12,24,12, + 9,14,28,11,1,252,14,0,14,0,0,0,14,0,14,0, + 14,0,60,0,112,0,224,0,224,0,225,128,225,128,127,128, + 62,0,14,20,40,14,0,0,12,0,14,0,6,0,3,0, + 0,0,0,0,7,128,7,128,7,192,15,192,14,192,28,224, + 28,224,28,96,56,112,63,240,63,248,112,56,112,56,224,28, + 14,20,40,14,0,0,0,192,1,192,1,128,3,0,0,0, + 0,0,7,128,7,128,7,192,15,192,14,192,28,224,28,224, + 28,96,56,112,63,240,63,248,112,56,112,56,224,28,14,20, + 40,14,0,0,3,128,7,128,6,192,12,192,0,0,0,0, + 7,128,7,128,7,192,15,192,14,192,28,224,28,224,28,96, + 56,112,63,240,63,248,112,56,112,56,224,28,14,19,38,14, + 0,0,6,64,15,192,8,128,0,0,0,0,7,128,7,128, + 7,192,15,192,14,192,28,224,28,224,28,96,56,112,63,240, + 63,248,112,56,112,56,224,28,14,19,38,15,0,0,14,224, + 14,224,0,0,0,0,0,0,3,128,7,128,7,192,7,192, + 14,192,14,224,28,224,28,112,28,112,63,248,63,248,112,56, + 112,28,224,28,13,21,42,15,1,0,7,0,8,128,8,128, + 8,128,7,0,0,0,0,0,7,0,15,128,15,128,29,192, + 29,192,29,192,56,224,56,224,48,96,127,240,127,240,224,56, + 224,56,224,56,19,14,42,20,0,0,0,255,224,1,255,224, + 3,240,0,3,112,0,7,112,0,7,112,0,14,127,192,14, + 127,192,28,112,0,31,240,0,63,240,0,112,112,0,112,127, + 224,224,127,224,13,18,36,15,1,252,15,128,63,224,112,240, + 96,112,224,0,224,0,224,0,224,0,224,0,224,120,96,112, + 112,240,63,224,31,128,4,0,7,128,1,128,15,0,10,20, + 40,12,1,0,48,0,56,0,24,0,12,0,0,0,0,0, + 255,192,255,192,224,0,224,0,224,0,224,0,255,128,255,128, + 224,0,224,0,224,0,224,0,255,192,255,192,10,20,40,12, + 1,0,7,0,6,0,12,0,8,0,0,0,0,0,255,192, + 255,192,224,0,224,0,224,0,224,0,255,128,255,128,224,0, + 224,0,224,0,224,0,255,192,255,192,10,20,40,12,1,0, + 28,0,30,0,54,0,35,0,0,0,0,0,255,192,255,192, + 224,0,224,0,224,0,224,0,255,128,255,128,224,0,224,0, + 224,0,224,0,255,192,255,192,10,19,38,12,1,0,119,0, + 119,0,0,0,0,0,0,0,255,192,255,192,224,0,224,0, + 224,0,224,0,255,128,255,128,224,0,224,0,224,0,224,0, + 255,192,255,192,5,20,20,5,255,0,224,96,48,16,0,0, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,4,20, + 20,5,1,0,48,112,96,192,0,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,5,20,20,5,0,0,112,112, + 216,136,0,0,112,112,112,112,112,112,112,112,112,112,112,112, + 112,112,7,19,19,7,0,0,238,238,0,0,0,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,13,14,28,14,0, + 0,127,128,127,224,112,240,112,112,112,56,112,56,254,56,254, + 56,112,56,112,56,112,112,112,240,127,224,127,128,13,19,38, + 15,1,0,12,64,31,128,17,0,0,0,0,0,240,56,248, + 56,248,56,252,56,238,56,238,56,231,56,231,56,227,184,227, + 184,225,248,225,248,224,248,224,248,14,20,40,16,1,0,28, + 0,12,0,6,0,2,0,0,0,0,0,15,192,63,240,112, + 112,96,56,224,24,224,28,224,28,224,28,224,28,224,24,96, + 56,112,112,63,240,15,192,14,20,40,16,1,0,0,224,1, + 192,1,128,3,0,0,0,0,0,15,192,63,240,112,112,96, + 56,224,24,224,28,224,28,224,28,224,28,224,24,96,56,112, + 112,63,240,15,192,14,20,40,16,1,0,7,0,7,128,13, + 192,8,192,0,0,0,0,15,192,63,240,112,112,96,56,224, + 24,224,28,224,28,224,28,224,28,224,24,96,56,112,112,63, + 240,15,192,14,19,38,16,1,0,7,192,15,192,0,0,0, + 0,0,0,15,192,63,240,112,48,96,56,224,24,224,28,224, + 28,224,28,224,28,224,24,112,56,120,240,63,240,15,192,14, + 19,38,16,1,0,29,192,29,192,0,0,0,0,0,0,15, + 192,63,240,112,112,96,56,224,24,224,28,224,28,224,28,224, + 28,224,24,96,56,112,112,63,240,15,192,10,10,20,20,5, + 1,128,64,192,192,97,128,51,0,12,0,12,0,18,0,33, + 0,64,128,128,64,15,16,32,16,0,255,0,2,7,230,31, + 252,56,60,48,60,112,108,112,238,113,206,115,142,119,14,126, + 12,124,28,56,56,63,240,239,224,64,0,12,20,40,14,1, + 0,56,0,24,0,12,0,6,0,0,0,0,0,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,113,224,63,192,31,128,12,20,40,14,1,0,1, + 192,3,128,3,0,6,0,0,0,0,0,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,113,224,63,192,31,128,12,20,40,14,1,0,14,0,15, + 0,27,0,17,128,0,0,0,0,224,112,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,113, + 224,63,192,31,128,12,19,38,14,1,0,29,192,29,192,0, + 0,0,0,0,0,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,112,224,63,192,31, + 128,12,19,38,13,0,0,1,128,3,0,2,0,0,0,0, + 0,240,112,112,240,56,224,56,224,29,192,29,192,15,128,15, + 0,7,0,7,0,7,0,7,0,7,0,7,0,11,14,28, + 13,1,0,224,0,224,0,255,0,255,192,225,192,224,224,224, + 224,224,224,225,192,255,128,254,0,224,0,224,0,224,0,10, + 14,28,12,1,0,62,0,127,128,227,128,227,128,227,0,231, + 0,238,0,238,0,231,128,227,192,225,192,253,192,255,192,239, + 128,9,16,32,11,1,0,112,0,48,0,24,0,8,0,0, + 0,0,0,62,0,127,128,227,128,31,128,127,128,227,128,227, + 128,227,128,255,128,57,128,9,16,32,11,1,0,7,0,6, + 0,12,0,12,0,0,0,0,0,62,0,127,128,227,128,3, + 128,63,128,251,128,227,128,227,128,255,128,121,128,9,16,32, + 11,1,0,28,0,30,0,54,0,35,0,0,0,0,0,62, + 0,127,128,227,128,31,128,127,128,227,128,227,128,227,128,255, + 128,57,128,9,14,28,11,1,0,63,0,62,0,0,0,0, + 0,62,0,127,128,227,128,31,128,127,128,227,128,227,128,227, + 128,255,128,57,128,9,15,30,11,1,0,119,0,119,0,0, + 0,0,0,0,0,62,0,127,128,227,128,31,128,127,128,227, + 128,227,128,227,128,255,128,57,128,9,17,34,11,1,0,28, + 0,34,0,34,0,34,0,28,0,0,0,0,0,62,0,127, + 128,227,128,31,128,127,128,227,128,227,128,227,128,255,128,57, + 128,16,10,20,18,1,0,62,124,127,254,227,135,31,255,127, + 255,227,128,227,128,227,199,254,254,60,124,9,14,28,11,1, + 252,62,0,127,0,227,128,227,128,224,0,224,0,227,128,227, + 128,127,0,62,0,16,0,30,0,6,0,62,0,9,16,32, + 11,1,0,112,0,48,0,24,0,8,0,0,0,0,0,30, + 0,127,0,227,128,227,128,255,128,255,128,224,0,227,128,127, + 128,62,0,9,16,32,11,1,0,7,0,6,0,12,0,8, + 0,0,0,0,0,30,0,127,0,227,128,227,128,255,128,255, + 128,224,0,227,128,127,128,62,0,9,16,32,11,1,0,28, + 0,30,0,54,0,35,0,0,0,0,0,30,0,127,0,227, + 128,227,128,255,128,255,128,224,0,227,128,127,128,62,0,9, + 15,30,11,1,0,119,0,119,0,0,0,0,0,0,0,30, + 0,127,0,227,128,227,128,255,128,255,128,224,0,227,128,127, + 128,62,0,4,15,15,5,0,0,192,224,96,48,0,112,112, + 112,112,112,112,112,112,112,112,4,15,15,4,1,0,112,96, + 192,128,0,224,224,224,224,224,224,224,224,224,224,7,15,15, + 5,255,0,56,124,76,198,0,56,56,56,56,56,56,56,56, + 56,56,7,14,14,6,0,0,238,238,0,0,56,56,56,56, + 56,56,56,56,56,56,10,14,28,12,1,0,57,128,15,0, + 31,0,99,0,31,128,127,128,97,192,225,192,225,192,225,192, + 225,192,97,192,127,128,31,0,9,14,28,11,1,0,62,0, + 60,0,0,0,0,0,239,0,255,128,227,128,227,128,227,128, + 227,128,227,128,227,128,227,128,227,128,10,16,32,12,1,0, + 48,0,24,0,24,0,12,0,0,0,0,0,30,0,127,128, + 97,128,225,192,225,192,225,192,225,192,97,128,127,128,30,0, + 10,16,32,12,1,0,3,0,6,0,6,0,12,0,0,0, + 0,0,30,0,127,128,97,128,225,192,225,192,225,192,225,192, + 97,128,127,128,30,0,10,16,32,12,1,0,12,0,30,0, + 26,0,51,0,0,0,0,0,30,0,127,128,97,128,225,192, + 225,192,225,192,225,192,97,128,127,128,30,0,10,14,28,12, + 1,0,31,0,62,0,0,0,0,0,30,0,127,128,97,128, + 225,192,225,192,225,192,225,192,97,128,127,128,30,0,10,15, + 30,12,1,0,59,128,59,128,0,0,0,0,0,0,30,0, + 127,128,97,128,225,192,225,192,225,192,225,192,97,128,127,128, + 30,0,12,8,16,20,4,2,6,0,14,0,0,0,255,240, + 255,240,0,0,6,0,14,0,10,12,24,12,1,0,0,192, + 31,128,127,128,99,128,231,192,237,192,233,192,241,192,113,128, + 127,128,222,0,128,0,9,16,32,11,1,0,112,0,48,0, + 24,0,8,0,0,0,0,0,227,128,227,128,227,128,227,128, + 227,128,227,128,227,128,227,128,255,128,123,128,9,16,32,11, + 1,0,7,0,6,0,12,0,8,0,0,0,0,0,227,128, + 227,128,227,128,227,128,227,128,227,128,227,128,227,128,255,128, + 123,128,9,16,32,11,1,0,28,0,28,0,54,0,34,0, + 0,0,0,0,227,128,227,128,227,128,227,128,227,128,227,128, + 227,128,227,128,255,128,123,128,9,15,30,11,1,0,119,0, + 119,0,0,0,0,0,0,0,227,128,227,128,227,128,227,128, + 227,128,227,128,227,128,227,128,255,128,123,128,11,19,38,11, + 0,252,1,128,3,0,2,0,4,0,0,0,112,224,113,192, + 113,192,57,192,59,128,27,128,31,128,31,0,15,0,14,0, + 14,0,78,0,252,0,120,0,10,18,36,12,1,252,224,0, + 224,0,224,0,224,0,239,0,255,128,225,128,225,192,225,192, + 225,192,225,192,225,192,255,128,255,0,224,0,224,0,224,0, + 224,0,11,18,36,11,0,252,59,128,59,128,0,0,0,0, + 225,224,113,192,113,192,115,128,59,128,59,128,31,0,31,0, + 31,0,14,0,14,0,12,0,28,0,28,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--20-200-72-72-P-101-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 14 + Calculated Max Values w=12 h=15 x= 4 y= 7 dx=20 dy= 0 ascent=14 len=28 + Font Bounding box w=31 h=26 x=-2 y=-5 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =14 descent= 0 + X Font ascent =14 descent= 0 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub14n[436] U8G_SECTION(".progmem.u8g_font_fub14n") = { + 0,31,26,254,251,14,0,0,0,0,42,57,0,14,254,14, + 0,8,7,7,12,2,7,102,60,24,255,24,60,102,12,12, + 24,20,4,0,2,0,2,0,2,0,2,0,2,0,255,240, + 255,240,2,0,2,0,2,0,2,0,2,0,4,5,5,6, + 1,254,112,112,96,224,192,5,3,3,7,1,4,248,248,248, + 3,3,3,6,2,0,224,224,224,6,15,15,9,1,255,12, + 12,12,12,24,24,24,48,48,48,96,96,96,96,192,10,14, + 28,11,1,0,30,0,127,0,97,128,225,192,225,192,225,192, + 225,192,225,192,225,192,225,192,225,192,97,128,127,128,30,0, + 6,14,14,11,2,0,28,124,252,220,28,28,28,28,28,28, + 28,28,28,28,10,14,28,11,1,0,31,0,127,128,97,192, + 225,192,1,192,1,192,3,128,7,128,15,0,30,0,56,0, + 112,0,255,192,255,192,10,14,28,11,1,0,62,0,127,0, + 227,128,3,128,3,128,31,0,31,0,3,128,1,192,1,192, + 225,192,243,128,127,0,62,0,11,14,28,11,1,0,7,128, + 15,128,15,128,27,128,59,128,51,128,115,128,99,128,227,128, + 255,224,255,224,3,128,3,128,3,128,10,14,28,11,1,0, + 255,128,255,128,224,0,224,0,224,0,255,0,255,128,225,128, + 1,192,1,192,225,192,227,128,127,0,62,0,10,14,28,11, + 1,0,30,0,63,128,97,128,96,0,224,0,223,0,255,128, + 225,128,225,192,225,192,225,192,97,128,127,128,30,0,10,14, + 28,11,1,0,255,192,255,192,1,192,3,128,3,128,7,128, + 7,0,7,0,14,0,14,0,28,0,28,0,60,0,56,0, + 10,14,28,11,1,0,63,0,127,128,225,192,225,192,225,128, + 127,0,63,0,115,128,225,192,225,192,225,192,225,192,127,128, + 63,0,10,14,28,11,1,0,30,0,127,0,225,128,225,128, + 225,192,225,192,243,192,127,192,25,192,1,128,225,128,99,128, + 127,0,62,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--20-200-72-72-P-101-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=21 x= 5 y=12 dx=21 dy= 0 ascent=16 len=54 + Font Bounding box w=31 h=26 x=-2 y=-5 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =16 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub14r[2680] U8G_SECTION(".progmem.u8g_font_fub14r") = { + 0,31,26,254,251,14,3,116,7,95,32,127,252,16,251,14, + 252,0,0,0,6,0,0,3,14,14,8,3,0,224,224,224, + 224,224,224,224,224,224,224,0,0,224,224,8,6,6,10,1, + 8,231,103,103,103,103,103,12,14,28,14,1,0,6,96,6, + 96,12,96,63,240,63,240,24,192,25,128,25,128,255,224,255, + 224,51,0,51,0,99,0,102,0,10,17,34,12,1,254,4, + 0,31,0,127,128,119,128,229,192,228,0,252,0,126,0,31, + 128,7,192,5,192,229,192,229,192,127,128,63,0,4,0,4, + 0,18,14,42,20,1,0,60,4,0,126,12,0,195,24,0, + 195,16,0,195,48,0,231,96,0,126,103,0,24,205,128,0, + 152,192,1,152,192,3,24,192,3,24,192,6,15,128,12,7, + 0,14,14,28,16,1,0,31,0,127,128,113,192,113,192,115, + 128,63,0,30,0,126,56,247,48,227,176,225,240,224,224,127, + 240,31,188,3,6,6,8,3,8,224,192,192,192,192,192,4, + 17,17,8,2,253,48,112,112,96,224,224,224,224,224,224,224, + 224,224,96,112,112,48,4,17,17,8,2,253,192,192,224,224, + 96,96,112,112,112,112,112,96,96,224,224,192,192,8,7,7, + 12,2,7,102,60,24,255,24,60,102,12,12,24,20,4,0, + 2,0,2,0,2,0,2,0,2,0,255,240,255,240,2,0, + 2,0,2,0,2,0,2,0,4,5,5,6,1,254,112,112, + 96,224,192,5,3,3,7,1,4,248,248,248,3,3,3,6, + 2,0,224,224,224,6,15,15,9,1,255,12,12,12,12,24, + 24,24,48,48,48,96,96,96,96,192,10,14,28,11,1,0, + 30,0,127,0,97,128,225,192,225,192,225,192,225,192,225,192, + 225,192,225,192,225,192,97,128,127,128,30,0,6,14,14,11, + 2,0,28,124,252,220,28,28,28,28,28,28,28,28,28,28, + 10,14,28,11,1,0,31,0,127,128,97,192,225,192,1,192, + 1,192,3,128,7,128,15,0,30,0,56,0,112,0,255,192, + 255,192,10,14,28,11,1,0,62,0,127,0,227,128,3,128, + 3,128,31,0,31,0,3,128,1,192,1,192,225,192,243,128, + 127,0,62,0,11,14,28,11,1,0,7,128,15,128,15,128, + 27,128,59,128,51,128,115,128,99,128,227,128,255,224,255,224, + 3,128,3,128,3,128,10,14,28,11,1,0,255,128,255,128, + 224,0,224,0,224,0,255,0,255,128,225,128,1,192,1,192, + 225,192,227,128,127,0,62,0,10,14,28,11,1,0,30,0, + 63,128,97,128,96,0,224,0,223,0,255,128,225,128,225,192, + 225,192,225,192,97,128,127,128,30,0,10,14,28,11,1,0, + 255,192,255,192,1,192,3,128,3,128,7,128,7,0,7,0, + 14,0,14,0,28,0,28,0,60,0,56,0,10,14,28,11, + 1,0,63,0,127,128,225,192,225,192,225,128,127,0,63,0, + 115,128,225,192,225,192,225,192,225,192,127,128,63,0,10,14, + 28,11,1,0,30,0,127,0,225,128,225,128,225,192,225,192, + 243,192,127,192,25,192,1,128,225,128,99,128,127,0,62,0, + 3,10,10,7,3,0,224,224,224,0,0,0,0,224,224,224, + 4,12,12,6,1,254,112,112,112,0,0,0,0,112,96,224, + 192,192,12,10,20,20,4,1,0,16,0,224,3,128,28,0, + 224,0,192,0,56,0,7,0,1,192,0,48,12,5,10,20, + 4,3,255,240,255,240,0,0,255,240,255,240,12,10,20,20, + 4,1,128,0,112,0,28,0,3,128,0,112,0,48,1,192, + 14,0,56,0,192,0,9,14,28,11,1,0,62,0,127,0, + 195,128,67,128,3,128,7,0,6,0,12,0,24,0,24,0, + 24,0,0,0,24,0,24,0,19,18,54,21,1,252,1,248, + 0,15,254,0,30,7,128,56,3,192,113,253,192,115,252,224, + 231,28,224,231,28,224,231,28,224,231,28,224,231,28,224,231, + 60,192,115,255,192,113,231,128,56,0,0,30,4,0,15,252, + 0,3,252,0,14,14,28,14,0,0,7,128,7,128,7,192, + 15,192,14,192,28,224,28,224,28,96,56,112,63,240,63,248, + 112,56,112,56,224,28,11,14,28,13,1,0,255,0,255,128, + 225,192,225,192,225,192,227,128,255,0,255,128,224,192,224,224, + 224,224,224,224,255,192,255,0,13,14,28,15,1,0,15,128, + 63,224,112,112,96,112,224,0,224,0,224,0,224,0,224,0, + 224,120,96,112,112,240,63,224,15,128,12,14,28,14,1,0, + 255,0,255,192,225,224,224,224,224,112,224,112,224,112,224,112, + 224,112,224,112,224,224,225,224,255,192,255,0,10,14,28,12, + 1,0,255,192,255,192,224,0,224,0,224,0,224,0,255,128, + 255,128,224,0,224,0,224,0,224,0,255,192,255,192,9,14, + 28,11,1,0,255,128,255,128,224,0,224,0,224,0,224,0, + 255,128,255,128,224,0,224,0,224,0,224,0,224,0,224,0, + 13,14,28,15,1,0,15,192,31,240,56,56,112,56,224,0, + 224,0,225,248,225,248,224,56,224,56,112,56,120,56,63,248, + 15,240,12,14,28,14,1,0,224,112,224,112,224,112,224,112, + 224,112,224,112,255,240,255,240,224,112,224,112,224,112,224,112, + 224,112,224,112,3,14,14,5,1,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,10,14,28,12,1,0,1,192, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 225,192,225,192,243,192,127,128,62,0,11,14,28,13,1,0, + 225,224,227,192,227,128,231,0,238,0,252,0,252,0,254,0, + 238,0,231,0,231,128,227,192,225,192,224,224,10,14,28,11, + 1,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,255,192,255,192,16,14, + 28,18,1,0,248,31,248,31,252,63,252,63,252,55,236,119, + 238,119,238,103,230,231,231,231,231,199,227,199,227,199,227,135, + 13,14,28,15,1,0,240,56,248,56,248,56,252,56,238,56, + 238,56,231,56,231,56,227,184,227,184,225,248,225,248,224,248, + 224,248,14,14,28,16,1,0,15,192,63,240,112,112,96,56, + 224,24,224,28,224,28,224,28,224,28,224,24,96,56,112,112, + 63,240,15,192,11,14,28,13,1,0,255,0,255,192,225,192, + 224,224,224,224,224,224,225,192,255,192,255,0,224,0,224,0, + 224,0,224,0,224,0,15,14,28,17,1,0,15,192,63,224, + 112,112,96,56,224,24,224,28,224,28,224,28,224,28,224,24, + 96,56,112,120,63,254,15,254,11,14,28,13,1,0,255,128, + 255,192,224,224,224,224,224,224,224,224,255,128,255,192,225,192, + 224,224,224,224,224,224,224,224,224,96,12,14,28,14,1,0, + 31,128,63,192,96,224,224,224,224,0,252,0,127,128,31,224, + 3,224,0,112,224,112,224,96,127,192,31,128,12,14,28,14, + 1,0,255,240,255,240,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,12,14, + 28,14,1,0,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,112,224,63,192,31,128, + 14,14,28,15,0,0,240,28,112,28,112,60,56,56,56,56, + 56,112,28,112,28,112,30,224,14,224,15,192,7,192,7,192, + 7,128,20,14,42,20,0,0,240,240,240,112,240,224,112,240, + 224,113,248,224,113,248,224,57,153,192,57,153,192,59,157,192, + 59,157,192,27,13,128,31,15,128,31,15,128,31,15,128,14, + 7,0,12,14,28,14,1,0,224,112,112,224,120,224,57,192, + 31,128,31,0,15,0,15,0,31,128,59,192,57,192,112,224, + 224,240,224,112,12,14,28,13,0,0,240,112,112,240,56,224, + 56,224,29,192,29,192,15,128,15,0,7,0,7,0,7,0, + 7,0,7,0,7,0,11,14,28,13,1,0,127,224,127,224, + 1,224,3,192,3,128,7,128,15,0,30,0,30,0,60,0, + 120,0,248,0,255,224,255,224,5,18,18,8,2,252,248,248, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,248,248, + 6,15,15,9,1,255,192,192,96,96,96,48,48,48,16,24, + 24,24,12,12,12,5,18,18,8,2,252,248,248,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,248,248,10,12,24, + 20,5,0,12,0,12,0,12,0,18,0,18,0,51,0,33, + 0,33,0,64,128,64,128,192,192,128,64,10,2,4,10,0, + 253,255,192,255,192,5,4,4,5,255,12,224,112,48,24,9, + 10,20,11,1,0,62,0,127,128,227,128,31,128,127,128,227, + 128,227,128,227,128,255,128,57,128,10,14,28,12,1,0,224, + 0,224,0,224,0,224,0,239,0,255,128,225,192,225,192,225, + 192,225,192,225,192,225,128,255,128,239,0,9,10,20,11,1, + 0,62,0,127,0,227,128,227,128,224,0,224,0,227,128,227, + 128,127,0,62,0,10,14,28,12,1,0,1,192,1,192,1, + 192,1,192,61,192,127,192,225,192,225,192,225,192,225,192,225, + 192,225,192,127,192,61,192,9,10,20,11,1,0,30,0,127, + 0,227,128,227,128,255,128,255,128,224,0,227,128,127,128,62, + 0,7,14,14,8,1,0,30,62,56,56,254,254,56,56,56, + 56,56,56,56,56,10,14,28,12,1,252,61,192,127,192,113, + 192,225,192,225,192,225,192,225,192,225,192,127,192,61,192,1, + 192,97,192,127,128,63,0,9,14,28,11,1,0,224,0,224, + 0,224,0,224,0,239,0,255,128,227,128,227,128,227,128,227, + 128,227,128,227,128,227,128,227,128,3,14,14,5,1,0,224, + 224,224,0,224,224,224,224,224,224,224,224,224,224,4,18,18, + 7,2,252,112,112,112,0,112,112,112,112,112,112,112,112,112, + 112,112,112,240,224,9,14,28,11,1,0,224,0,224,0,224, + 0,224,0,231,128,231,0,238,0,252,0,252,0,252,0,238, + 0,231,0,231,0,227,128,3,14,14,5,1,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,15,10,20,18,1, + 0,239,60,255,254,227,206,227,134,227,134,227,134,227,134,227, + 134,227,134,227,134,9,10,20,11,1,0,239,0,255,128,227, + 128,227,128,227,128,227,128,227,128,227,128,227,128,227,128,10, + 10,20,12,1,0,30,0,127,128,97,128,225,192,225,192,225, + 192,225,192,97,128,127,128,30,0,10,14,28,12,1,252,239, + 0,255,128,225,128,225,192,225,192,225,192,225,192,225,192,255, + 128,239,0,224,0,224,0,224,0,224,0,10,14,28,12,1, + 252,61,192,127,192,225,192,225,192,225,192,225,192,225,192,225, + 192,127,192,61,192,1,192,1,192,1,192,1,192,6,10,10, + 8,1,0,236,252,240,224,224,224,224,224,224,224,9,10,20, + 11,1,0,62,0,255,0,227,128,224,0,126,0,31,0,3, + 128,227,128,255,0,62,0,7,13,13,9,1,0,8,56,56, + 254,254,56,56,56,56,56,56,62,30,9,10,20,11,1,0, + 227,128,227,128,227,128,227,128,227,128,227,128,227,128,227,128, + 255,128,123,128,11,10,20,11,0,0,224,224,113,192,113,192, + 49,128,59,128,59,128,27,0,31,0,31,0,14,0,17,10, + 30,17,0,0,225,195,128,97,227,0,115,231,0,115,103,0, + 51,119,0,63,118,0,63,62,0,62,62,0,30,60,0,30, + 28,0,9,10,20,11,1,0,227,128,115,0,119,0,62,0, + 28,0,62,0,62,0,119,0,227,128,227,128,11,14,28,11, + 0,252,224,224,113,192,113,192,57,128,59,128,59,128,31,0, + 31,0,15,0,14,0,14,0,14,0,28,0,28,0,8,10, + 10,10,1,0,255,255,7,14,28,56,112,224,255,255,7,19, + 19,10,2,251,14,62,56,56,56,56,56,48,240,192,240,112, + 56,56,56,56,56,62,14,1,21,21,7,3,251,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,7,19,19,10,2,251,224,240,56,56,56,56,56,56, + 28,6,28,56,56,56,56,56,56,240,224,11,3,6,11,0, + 4,48,96,127,192,199,128,255}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--23-230-72-72-P-115-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=23 h=25 x= 6 y=15 dx=24 dy= 0 ascent=25 len=66 + Font Bounding box w=34 h=31 x=-2 y=-6 + Calculated Min Values x=-1 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =25 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub17[6938] U8G_SECTION(".progmem.u8g_font_fub17") = { + 0,34,31,254,250,17,4,8,8,209,32,255,251,25,250,17, + 251,0,0,0,7,0,0,3,17,17,9,3,0,224,224,224, + 224,224,224,224,224,224,224,224,224,0,0,224,224,224,8,7, + 7,12,2,10,231,231,231,231,231,231,231,14,17,34,16,1, + 0,3,24,7,24,6,56,6,48,63,252,63,252,12,96,12, + 96,28,96,24,224,255,248,255,240,57,192,49,128,49,128,113, + 128,99,128,12,21,42,14,1,253,2,0,15,128,63,192,127, + 224,242,224,226,224,226,0,250,0,126,0,63,192,15,224,3, + 240,2,240,226,112,226,112,242,240,127,224,63,192,15,0,2, + 0,2,0,21,17,51,23,1,0,62,3,0,127,7,0,99, + 6,0,193,142,0,193,140,0,193,152,0,193,184,0,99,48, + 128,127,119,224,62,102,48,0,236,24,0,204,24,1,204,24, + 1,140,24,3,14,56,7,7,240,6,3,224,16,17,34,18, + 1,0,31,128,63,192,121,224,112,224,113,224,57,192,63,128, + 31,0,63,30,119,156,243,220,225,252,224,252,224,120,120,124, + 127,254,31,207,3,7,7,9,3,10,224,224,224,224,224,224, + 96,5,20,20,9,2,253,56,56,112,112,112,240,224,224,224, + 224,224,224,224,224,240,112,112,112,48,56,5,20,20,9,2, + 253,224,96,112,112,112,56,56,56,56,56,56,56,56,56,56, + 112,112,112,96,224,9,9,18,15,3,8,54,0,54,0,54, + 0,156,128,255,128,156,128,54,0,54,0,54,0,14,14,28, + 24,5,0,2,0,2,0,2,0,2,0,2,0,2,0,255, + 252,255,252,2,0,2,0,2,0,2,0,2,0,2,0,5, + 6,6,7,1,253,56,112,112,96,96,224,6,3,3,8,1, + 4,252,252,252,3,3,3,7,2,0,224,224,224,8,18,18, + 10,1,255,7,6,6,14,12,12,12,28,24,24,56,48,48, + 48,112,96,96,224,11,17,34,13,1,0,31,0,63,128,113, + 192,112,192,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,112,192,113,192,63,128,31,0,7,17,17, + 13,2,0,14,62,254,254,206,14,14,14,14,14,14,14,14, + 14,14,14,14,12,17,34,13,1,0,15,128,63,224,120,224, + 112,112,0,112,0,112,0,240,1,224,3,224,7,192,15,128, + 30,0,60,0,248,0,255,240,255,240,255,240,11,17,34,13, + 1,0,31,0,127,192,241,224,224,224,0,224,0,224,1,192, + 15,128,15,128,1,192,0,224,0,224,224,224,241,224,255,192, + 127,128,31,0,12,17,34,13,1,0,3,192,7,192,7,192, + 15,192,29,192,29,192,57,192,113,192,113,192,225,192,255,240, + 255,240,255,240,1,192,1,192,1,192,1,192,11,17,34,13, + 1,0,255,192,255,192,255,192,224,0,224,0,224,0,239,128, + 255,192,241,224,224,224,0,224,0,224,224,224,225,224,255,192, + 127,128,63,0,11,17,34,13,1,0,15,0,63,192,57,224, + 112,224,96,0,224,0,239,128,255,192,241,224,224,224,224,224, + 224,224,224,224,96,224,113,192,63,128,31,0,11,17,34,13, + 1,0,255,224,255,224,255,224,0,224,1,224,1,192,3,192, + 3,128,7,128,7,128,7,0,15,0,14,0,30,0,28,0, + 60,0,60,0,11,17,34,13,1,0,31,0,127,192,241,224, + 224,224,224,224,224,224,113,192,63,128,63,128,113,192,224,224, + 224,224,224,224,224,224,241,224,127,192,31,0,11,17,34,13, + 1,0,31,0,63,128,113,192,224,192,224,224,224,224,224,224, + 241,224,127,224,62,224,0,224,0,224,224,224,225,192,113,192, + 127,128,30,0,3,12,12,7,3,0,224,224,224,0,0,0, + 0,0,0,224,224,224,5,14,14,8,1,254,56,56,56,0, + 0,0,0,0,56,56,112,112,96,224,14,12,24,24,5,1, + 0,12,0,60,1,224,7,0,60,0,224,0,224,0,60,0, + 7,0,1,224,0,60,0,12,14,6,12,24,5,4,255,252, + 255,252,0,0,0,0,255,252,255,252,14,12,24,24,5,1, + 192,0,240,0,30,0,3,128,0,240,0,28,0,28,0,240, + 3,128,30,0,240,0,192,0,10,17,34,12,1,0,62,0, + 127,128,227,128,193,192,1,192,1,192,3,128,7,128,14,0, + 28,0,24,0,24,0,24,0,0,0,0,0,24,0,24,0, + 22,22,66,24,1,251,0,254,0,3,255,128,15,255,224,31, + 1,240,62,0,240,120,247,120,121,255,56,113,207,60,243,135, + 28,227,135,28,227,135,28,227,135,28,227,135,28,227,207,56, + 241,255,248,113,251,240,120,113,224,60,0,0,31,0,0,15, + 255,0,7,255,0,0,255,0,16,17,34,16,0,0,3,192, + 3,192,3,224,7,224,7,240,15,112,14,112,14,120,30,56, + 28,56,28,60,63,252,63,252,127,254,120,14,112,15,240,7, + 12,17,34,15,2,0,255,192,255,224,255,240,224,240,224,112, + 224,112,224,224,255,192,255,192,224,224,224,112,224,112,224,112, + 224,240,255,240,255,224,255,128,14,17,34,16,1,0,15,192, + 31,240,63,248,120,120,112,60,240,60,224,0,224,0,224,0, + 224,0,224,0,224,0,112,60,112,60,56,120,31,240,15,192, + 14,17,34,17,2,0,255,0,255,224,255,240,224,248,224,56, + 224,60,224,28,224,28,224,28,224,28,224,28,224,60,224,56, + 224,248,255,240,255,224,255,128,11,17,34,15,2,0,255,224, + 255,224,255,224,224,0,224,0,224,0,224,0,255,224,255,224, + 224,0,224,0,224,0,224,0,224,0,255,224,255,224,255,224, + 11,17,34,14,2,0,255,224,255,224,255,224,224,0,224,0, + 224,0,224,0,255,192,255,192,255,192,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,15,17,34,18,1,0,7,224, + 31,248,63,252,124,30,112,14,240,14,224,0,224,0,224,254, + 224,254,224,254,240,14,112,14,124,14,63,254,31,254,3,248, + 13,17,34,17,2,0,224,56,224,56,224,56,224,56,224,56, + 224,56,224,56,255,248,255,248,255,248,224,56,224,56,224,56, + 224,56,224,56,224,56,224,56,3,17,17,7,2,0,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,11, + 17,34,14,1,0,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,224,224,224,224,240, + 224,255,192,127,192,63,0,13,17,34,16,2,0,224,240,224, + 224,225,224,227,192,231,128,239,0,239,0,254,0,254,0,239, + 0,231,128,231,128,227,192,225,224,225,240,224,240,224,120,11, + 17,34,14,2,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,255,224,255,224,255,224,18,17,51,22,2,0,252,7,192, + 252,15,192,252,15,192,252,15,192,238,31,192,238,29,192,238, + 29,192,231,61,192,231,57,192,231,57,192,231,185,192,227,241, + 192,227,241,192,227,241,192,225,241,192,225,225,192,225,225,192, + 14,17,34,18,2,0,248,28,248,28,252,28,252,28,238,28, + 238,28,231,28,231,28,231,156,227,156,227,220,225,220,225,220, + 224,252,224,252,224,124,224,124,15,17,34,17,1,0,7,192, + 31,240,63,248,120,60,112,28,240,30,224,14,224,14,224,14, + 224,14,224,14,240,14,112,28,120,60,63,248,31,240,7,224, + 12,17,34,15,2,0,255,128,255,192,255,224,224,240,224,112, + 224,112,224,112,224,240,255,224,255,192,255,0,224,0,224,0, + 224,0,224,0,224,0,224,0,17,17,51,19,1,0,7,192, + 0,31,240,0,63,248,0,120,60,0,112,28,0,240,30,0, + 224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,240, + 14,0,112,28,0,120,60,0,63,255,128,31,255,128,7,255, + 128,13,17,34,16,2,0,255,192,255,240,255,248,224,120,224, + 56,224,56,224,112,255,224,255,192,255,240,224,240,224,112,224, + 120,224,56,224,56,224,56,224,56,13,17,34,15,1,0,15, + 192,63,224,56,240,112,112,112,0,120,0,126,0,63,192,31, + 240,3,240,0,120,224,56,224,56,240,120,127,240,63,224,15, + 128,13,17,34,15,1,0,255,248,255,248,255,248,7,0,7, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,7,0,14,17,34,18,2,0,224, + 28,224,28,224,28,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,240,60,120,120,127,248,63,240,15, + 192,17,17,51,17,0,0,240,7,128,112,7,0,120,15,0, + 120,14,0,56,30,0,60,30,0,28,28,0,30,60,0,30, + 60,0,14,56,0,15,120,0,15,112,0,7,112,0,7,240, + 0,7,224,0,3,224,0,3,224,0,23,17,51,23,0,0, + 240,56,30,112,124,28,112,124,28,120,124,60,120,108,60,56, + 238,56,56,238,56,56,238,56,60,198,120,29,199,112,29,199, + 112,29,199,112,29,131,112,15,131,224,15,131,224,15,131,224, + 15,1,224,14,17,34,16,1,0,240,60,120,56,120,120,60, + 112,28,224,31,224,15,192,7,128,7,128,15,192,31,192,29, + 224,56,240,120,112,112,120,240,60,224,60,13,17,34,15,1, + 0,224,56,240,120,112,112,120,240,56,224,61,224,29,192,31, + 192,15,128,15,128,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,12,17,34,14,1,0,255,240,255,240,255,240,1, + 240,1,224,3,192,7,128,7,128,15,0,30,0,60,0,60, + 0,120,0,240,0,255,240,255,240,255,240,5,22,22,9,2, + 251,248,248,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,248,248,7,18,18,10,1,255,192,224,96, + 96,112,48,48,56,24,24,24,28,12,12,14,6,6,6,5, + 22,22,9,2,251,248,248,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,248,248,11,14,28,23,6, + 0,4,0,14,0,10,0,27,0,17,0,17,0,49,128,32, + 128,32,128,96,192,64,64,192,96,128,32,128,32,12,2,4, + 12,0,253,255,240,255,240,4,4,4,6,0,14,224,96,48, + 48,10,12,24,13,1,0,31,0,127,128,113,192,1,192,31, + 192,127,192,241,192,225,192,225,192,243,192,127,192,60,192,12, + 17,34,14,1,0,224,0,224,0,224,0,224,0,224,0,239, + 128,255,192,241,224,240,240,224,112,224,112,224,112,224,112,240, + 240,248,224,255,192,231,128,10,12,24,12,1,0,31,0,127, + 128,115,192,225,192,224,0,224,0,224,0,225,192,225,192,115, + 192,127,128,31,0,12,17,34,14,1,0,0,112,0,112,0, + 112,0,112,0,112,31,112,63,240,120,240,240,240,224,112,224, + 112,224,112,224,112,240,240,113,240,63,240,30,112,11,12,24, + 13,1,0,31,0,63,128,113,192,225,224,255,224,255,224,224, + 0,224,0,225,192,113,192,127,192,31,0,8,17,17,9,1, + 0,31,63,56,56,56,255,255,56,56,56,56,56,56,56,56, + 56,56,12,17,34,14,1,251,31,112,63,240,120,240,240,240, + 224,112,224,112,224,112,224,112,240,240,112,240,127,240,30,112, + 0,112,112,112,120,224,63,224,31,128,11,17,34,13,1,0, + 224,0,224,0,224,0,224,0,224,0,239,128,255,192,241,224, + 240,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,3,17,17,5,1,0,224,224,224,0,0,224,224,224, + 224,224,224,224,224,224,224,224,224,4,22,22,7,2,251,112, + 112,112,0,0,112,112,112,112,112,112,112,112,112,112,112,112, + 112,112,240,240,224,11,17,34,12,1,0,224,0,224,0,224, + 0,224,0,224,0,227,192,227,128,231,0,239,0,254,0,254, + 0,238,0,239,0,231,128,231,128,227,192,225,224,3,17,17, + 6,1,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,19,12,36,21,1,0,231,143,128,239,223,192, + 249,241,224,240,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,11,12, + 24,13,1,0,239,128,255,192,241,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,12,12,24,14, + 1,0,31,128,63,192,112,224,240,224,224,112,224,112,224,112, + 224,112,240,240,112,224,63,192,31,128,12,17,34,14,1,251, + 231,128,255,192,248,224,240,240,224,112,224,112,224,112,224,112, + 240,240,241,224,255,192,239,128,224,0,224,0,224,0,224,0, + 224,0,12,17,34,14,1,251,30,112,63,240,113,240,240,240, + 224,112,224,112,224,112,224,112,240,240,120,240,63,240,31,112, + 0,112,0,112,0,112,0,112,0,112,7,12,12,9,1,0, + 238,238,254,240,240,224,224,224,224,224,224,224,10,12,24,12, + 1,0,63,0,127,128,241,192,225,192,248,0,127,0,31,128, + 3,192,225,192,227,192,127,128,63,0,8,15,15,10,1,0, + 24,56,56,255,255,56,56,56,56,56,56,56,60,63,15,11, + 12,24,13,1,0,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,241,224,127,224,62,224,12,12,24, + 13,0,0,240,112,112,240,112,224,120,224,56,224,57,192,29, + 192,29,192,31,128,15,128,15,128,15,0,19,12,36,20,0, + 0,240,240,224,112,240,224,113,240,224,113,249,192,57,249,192, + 59,185,192,59,159,192,63,159,128,31,31,128,31,15,128,31, + 15,0,15,15,0,11,12,24,13,1,0,241,224,113,192,123, + 128,63,128,31,0,30,0,31,0,63,128,123,128,115,192,241, + 192,225,224,12,17,34,12,0,251,240,112,112,240,120,224,56, + 224,57,224,61,192,29,192,29,192,31,128,15,128,15,128,7, + 0,7,0,15,0,14,0,14,0,30,0,10,12,24,12,1, + 0,255,128,255,128,7,128,7,0,14,0,30,0,60,0,56, + 0,112,0,224,0,255,192,255,192,9,23,46,12,2,250,7, + 128,15,128,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,60,0,248,0,224,0,248,0,60,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,15,128,7,128,2,25,25, + 8,3,250,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,8,23,23,12, + 2,250,224,240,56,56,56,56,56,56,56,28,31,7,31,28, + 56,56,56,56,56,56,56,248,224,12,3,6,12,0,5,60, + 48,127,240,227,192,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,0,0,0,7,0,0,3,17,17,9, + 3,251,224,224,224,0,0,224,224,224,224,224,224,224,224,224, + 224,224,224,10,18,36,13,1,253,1,0,1,0,3,0,31, + 0,127,128,115,192,231,192,228,0,228,0,236,0,233,192,233, + 192,123,192,127,128,31,0,16,0,48,0,32,0,11,17,34, + 13,1,0,15,128,31,224,56,224,56,224,56,0,56,0,255, + 0,255,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,255,224,255,224,11,12,24,13,1,4,128,32,95,64,113, + 128,96,128,64,64,64,64,64,64,64,64,96,192,49,128,95, + 64,128,32,13,17,34,15,1,0,224,120,240,120,112,112,120, + 240,56,224,253,248,253,248,31,192,15,128,255,248,255,248,7, + 0,7,0,7,0,7,0,7,0,7,0,1,22,22,8,4, + 251,128,128,128,128,128,128,128,128,128,0,0,0,0,128,128, + 128,128,128,128,128,128,128,9,21,42,11,1,252,63,0,127, + 0,241,0,224,0,224,0,120,0,62,0,63,0,119,128,227, + 128,227,128,231,128,255,0,126,0,31,0,7,128,3,128,3, + 128,135,128,255,0,124,0,8,3,3,8,0,15,231,231,231, + 17,17,51,19,1,0,3,224,0,15,248,0,60,30,0,51, + 230,0,103,243,0,103,59,0,206,57,128,206,1,128,206,1, + 128,206,1,128,206,57,128,78,57,0,103,243,0,51,230,0, + 56,14,0,15,248,0,3,224,0,8,11,11,10,1,6,60, + 102,6,126,230,198,198,126,0,0,255,11,9,18,14,1,1, + 60,224,56,224,121,224,113,192,243,192,113,192,121,224,56,224, + 60,224,12,5,10,14,1,5,255,240,0,16,0,16,0,16, + 0,16,255,17,17,51,19,1,0,3,224,0,15,248,0,60, + 30,0,55,246,0,103,251,0,102,27,0,198,25,128,199,241, + 128,199,241,128,198,57,128,198,25,128,70,25,0,102,27,0, + 48,6,0,56,14,0,15,248,0,3,224,0,7,2,2,7, + 0,15,254,254,5,5,5,7,1,12,112,136,136,136,112,14, + 14,28,24,5,0,2,0,2,0,2,0,2,0,255,252,255, + 252,2,0,2,0,2,0,2,0,0,0,0,0,255,252,255, + 252,7,9,9,9,1,8,124,230,6,14,28,56,224,254,254, + 7,9,9,9,1,8,124,206,6,14,56,14,6,206,124,5, + 4,4,5,1,14,56,112,96,192,255,11,20,40,14,2,253, + 63,224,125,128,253,128,253,128,253,128,253,128,253,128,125,128, + 13,128,13,128,13,128,13,128,13,128,13,128,13,128,13,128, + 13,128,13,128,13,128,13,128,3,3,3,7,2,6,224,224, + 224,6,5,5,6,1,251,32,56,12,12,248,4,9,9,6, + 1,8,48,240,176,48,48,48,48,48,48,8,11,11,10,1, + 6,60,102,195,195,195,195,231,126,60,0,255,12,9,18,14, + 1,1,227,128,113,192,121,224,56,224,60,240,56,224,121,224, + 113,192,227,128,16,17,34,18,1,0,48,24,240,24,176,48, + 48,112,48,96,48,224,48,192,49,128,49,142,3,14,3,30, + 6,54,14,54,12,102,24,127,24,6,48,6,16,17,34,18, + 1,0,48,24,240,48,176,48,48,96,48,224,48,192,49,192, + 49,128,51,62,3,119,6,3,6,7,12,14,28,28,24,112, + 48,127,48,127,17,17,51,19,1,0,124,6,0,198,12,0, + 6,12,0,56,24,0,14,56,0,6,48,0,206,112,0,124, + 96,0,0,199,0,1,199,0,1,143,0,3,155,0,3,27, + 0,7,51,0,6,63,128,12,3,0,28,3,0,10,17,34, + 12,1,251,14,0,14,0,0,0,0,0,14,0,14,0,14, + 0,28,0,56,0,112,0,240,0,224,0,224,128,224,192,115, + 192,127,128,31,0,16,24,48,16,0,0,14,0,7,0,3, + 0,3,128,1,128,0,0,0,0,3,192,3,192,3,224,7, + 224,7,240,15,112,14,112,14,120,30,56,28,56,28,60,63, + 252,63,252,127,254,120,14,112,15,240,7,16,24,48,16,0, + 0,0,112,0,96,0,224,0,192,1,128,0,0,0,0,3, + 192,3,192,3,224,7,224,7,240,15,112,14,112,14,120,30, + 56,28,56,28,60,63,252,63,252,127,254,120,14,112,15,240, + 7,16,24,48,16,0,0,1,192,3,192,3,224,6,96,4, + 48,0,0,0,0,3,192,3,192,3,224,7,224,7,240,15, + 112,14,112,14,120,30,56,28,56,28,60,63,252,63,252,127, + 254,120,14,112,15,240,7,16,23,46,16,0,0,0,16,7, + 240,7,224,0,0,0,0,0,0,3,192,3,192,3,224,7, + 224,7,240,15,112,14,112,14,120,30,56,28,56,28,60,63, + 252,63,252,127,254,120,14,112,15,240,7,16,23,46,17,0, + 0,14,112,14,112,14,112,0,0,0,0,0,0,3,192,3, + 192,7,224,7,224,7,224,15,112,14,112,30,120,30,56,28, + 56,60,60,63,252,127,254,127,254,112,14,240,15,224,7,15, + 25,50,16,1,0,3,128,6,192,4,64,4,64,4,192,3, + 128,0,0,0,0,3,128,7,192,7,192,15,192,14,224,14, + 224,30,224,28,112,28,112,60,112,56,120,63,248,127,252,127, + 252,112,28,240,30,224,14,21,17,51,23,1,0,0,255,248, + 0,255,248,1,248,0,1,248,0,3,184,0,3,184,0,7, + 56,0,7,63,248,14,63,248,14,56,0,30,56,0,31,248, + 0,63,248,0,120,56,0,112,56,0,240,63,248,224,63,248, + 14,22,44,16,1,251,15,192,31,240,63,248,120,56,112,60, + 240,28,224,0,224,0,224,0,224,0,224,0,224,0,112,28, + 112,60,56,120,31,240,15,192,3,0,3,192,0,96,0,96, + 7,192,11,24,48,15,2,0,56,0,24,0,28,0,12,0, + 6,0,0,0,0,0,255,224,255,224,255,224,224,0,224,0, + 224,0,224,0,255,224,255,224,224,0,224,0,224,0,224,0, + 224,0,255,224,255,224,255,224,11,24,48,15,2,0,3,128, + 3,0,7,0,6,0,12,0,0,0,0,0,255,224,255,224, + 255,224,224,0,224,0,224,0,224,0,255,224,255,224,224,0, + 224,0,224,0,224,0,224,0,255,224,255,224,255,224,11,24, + 48,15,2,0,14,0,31,0,27,0,59,128,49,128,0,0, + 0,0,255,224,255,224,255,224,224,0,224,0,224,0,224,0, + 255,224,255,224,224,0,224,0,224,0,224,0,224,0,255,224, + 255,224,255,224,11,23,46,15,2,0,59,128,59,128,59,128, + 0,0,0,0,0,0,255,224,255,224,255,224,224,0,224,0, + 224,0,224,0,255,224,255,224,224,0,224,0,224,0,224,0, + 224,0,255,224,255,224,255,224,5,24,24,7,0,0,224,224, + 96,48,16,0,0,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,5,24,24,5,1,0,56,48,112,96, + 192,0,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,7,24,24,7,0,0,56,56,108,108,198,0, + 0,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,8,23,23,8,0,0,231,231,231,0,0,0,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,15, + 17,34,16,0,0,63,192,63,240,63,248,56,60,56,28,56, + 30,56,14,56,14,255,14,255,14,56,14,56,30,56,28,56, + 60,63,248,63,240,63,192,14,23,46,18,2,0,0,32,15, + 192,15,192,0,0,0,0,0,0,248,28,248,28,252,28,252, + 28,238,28,238,28,231,28,231,28,231,156,227,156,227,220,225, + 220,225,220,224,252,224,252,224,124,224,124,15,24,48,17,1, + 0,28,0,14,0,6,0,3,0,1,0,0,0,0,0,7, + 192,31,240,63,248,120,60,112,28,240,30,224,14,224,14,224, + 14,224,14,224,14,240,14,112,28,120,60,63,248,31,240,7, + 224,15,24,48,17,1,0,0,112,0,224,0,192,1,128,1, + 0,0,0,0,0,7,192,31,240,63,248,120,60,112,28,240, + 30,224,14,224,14,224,14,224,14,224,14,240,14,112,28,120, + 60,63,248,31,240,7,224,15,24,48,17,1,0,3,128,7, + 192,6,192,12,96,8,32,0,0,0,0,7,192,31,240,63, + 248,120,60,112,28,240,30,224,14,224,14,224,14,224,14,224, + 14,240,14,112,28,120,60,63,248,31,240,7,224,15,23,46, + 17,1,0,7,32,15,224,8,192,0,0,0,0,0,0,7, + 192,31,240,63,248,120,60,112,28,240,30,224,14,224,14,224, + 14,224,14,224,14,224,14,112,28,120,60,63,248,31,240,7, + 224,15,23,46,17,1,0,14,112,14,112,14,112,0,0,0, + 0,0,0,7,192,31,240,63,248,120,60,112,28,240,30,224, + 14,224,14,224,14,224,14,224,14,240,14,112,28,120,60,63, + 248,31,240,7,224,13,12,24,23,5,1,192,24,96,48,48, + 96,24,192,13,128,7,0,7,0,13,128,24,192,48,96,96, + 48,192,24,17,19,57,17,0,255,0,1,0,3,241,128,15, + 251,0,31,254,0,60,30,0,56,30,0,120,63,0,112,119, + 0,112,231,0,113,199,0,115,135,0,119,7,0,126,7,0, + 60,14,0,60,30,0,63,252,0,111,248,0,227,224,0,64, + 0,0,14,24,48,18,2,0,28,0,12,0,14,0,6,0, + 3,0,0,0,0,0,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,240,60, + 112,56,127,248,63,240,15,192,14,24,48,18,2,0,0,224, + 0,192,1,192,1,128,3,0,0,0,0,0,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,240,60,112,56,127,248,63,240,15,192,14,24, + 48,18,2,0,7,128,7,128,15,192,12,192,24,96,0,0, + 0,0,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,240,60,112,56,127,248, + 63,240,15,192,14,23,46,16,1,0,28,224,28,224,28,224, + 0,0,0,0,0,0,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,240,60, + 120,120,127,248,63,240,15,192,13,23,46,15,1,0,1,192, + 1,128,3,0,2,0,0,0,0,0,224,56,240,120,112,112, + 120,240,56,224,61,224,29,192,31,192,15,128,15,128,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,12,17,34,15, + 1,0,224,0,224,0,224,0,255,128,255,224,255,224,224,240, + 224,112,224,112,224,240,255,224,255,224,255,128,224,0,224,0, + 224,0,224,0,12,17,34,14,1,0,63,0,127,128,241,192, + 225,192,225,192,227,128,231,0,238,0,238,0,239,128,231,192, + 225,224,224,112,238,112,238,112,239,224,231,192,10,19,38,13, + 1,0,112,0,56,0,24,0,12,0,4,0,0,0,0,0, + 31,0,127,128,113,192,1,192,31,192,127,192,241,192,225,192, + 225,192,243,192,127,192,60,192,10,19,38,13,1,0,3,128, + 3,0,6,0,6,0,12,0,0,0,0,0,31,0,127,128, + 113,192,1,192,31,192,127,192,241,192,225,192,225,192,243,192, + 127,192,60,192,10,19,38,13,1,0,14,0,30,0,27,0, + 51,0,33,128,0,0,0,0,31,0,127,128,113,192,1,192, + 31,192,127,192,241,192,225,192,225,192,243,192,127,192,60,192, + 10,17,34,13,1,0,31,128,63,0,0,0,0,0,0,0, + 31,0,127,128,113,192,1,192,31,192,127,192,241,192,225,192, + 225,192,243,192,127,192,60,192,10,18,36,13,1,0,115,128, + 115,128,115,128,0,0,0,0,0,0,63,0,127,128,241,192, + 1,192,31,192,127,192,241,192,225,192,225,192,243,192,127,192, + 60,192,10,20,40,13,1,0,14,0,27,0,17,0,19,0, + 31,0,14,0,0,0,0,0,31,0,127,128,113,192,1,192, + 31,192,127,192,241,192,225,192,225,192,243,192,127,192,60,192, + 18,12,36,20,1,0,31,31,0,127,191,128,113,243,128,0, + 225,192,31,255,192,127,255,192,240,224,0,224,224,0,224,225, + 192,241,243,192,127,63,128,62,31,0,10,17,34,12,1,251, + 31,0,127,128,115,192,225,192,224,0,224,0,224,0,224,0, + 225,192,115,192,127,128,63,0,8,0,14,0,3,0,3,0, + 30,0,11,19,38,13,1,0,112,0,56,0,24,0,12,0, + 4,0,0,0,0,0,31,0,63,128,113,192,225,224,255,224, + 255,224,224,0,224,0,225,192,113,192,127,192,31,0,11,19, + 38,13,1,0,3,128,3,0,7,0,6,0,12,0,0,0, + 0,0,31,0,63,128,113,192,225,224,255,224,255,224,224,0, + 224,0,225,192,113,192,127,192,31,0,11,19,38,13,1,0, + 14,0,31,0,27,0,49,128,33,128,0,0,0,0,31,0, + 63,128,113,192,225,224,255,224,255,224,224,0,224,0,225,192, + 113,192,127,192,31,0,11,18,36,13,1,0,115,128,115,128, + 115,128,0,0,0,0,0,0,31,0,63,128,115,192,225,192, + 255,224,255,224,224,0,224,0,225,192,115,192,127,128,31,0, + 5,18,18,6,255,0,224,112,48,24,0,0,56,56,56,56, + 56,56,56,56,56,56,56,56,4,18,18,5,1,0,112,96, + 224,192,0,0,224,224,224,224,224,224,224,224,224,224,224,224, + 7,18,18,6,255,0,56,124,108,198,0,0,56,56,56,56, + 56,56,56,56,56,56,56,56,8,18,18,7,255,0,231,231, + 231,0,0,0,56,56,56,56,56,56,56,56,56,56,56,56, + 12,17,34,14,1,0,28,96,15,192,15,128,59,128,33,192, + 31,224,63,224,112,224,240,240,224,112,224,112,224,112,224,112, + 240,240,112,224,63,192,31,128,11,17,34,13,1,0,31,128, + 63,0,0,0,0,0,0,0,239,128,255,192,241,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 12,19,38,14,1,0,56,0,28,0,12,0,6,0,6,0, + 0,0,0,0,31,128,63,192,112,224,240,224,224,112,224,112, + 224,112,224,112,240,240,112,224,63,192,31,128,12,19,38,14, + 1,0,1,192,3,128,3,0,6,0,4,0,0,0,0,0, + 31,128,63,192,112,224,240,224,224,112,224,112,224,112,224,112, + 240,240,112,224,63,192,31,128,12,19,38,14,1,0,15,0, + 15,0,31,128,25,128,48,192,0,0,0,0,31,128,63,192, + 112,224,240,224,224,112,224,112,224,112,224,112,240,240,112,224, + 63,192,31,128,12,17,34,14,1,0,31,192,63,128,0,0, + 0,0,0,0,31,128,63,192,112,224,240,224,224,112,224,112, + 224,112,224,112,240,240,112,224,63,192,31,128,12,18,36,14, + 1,0,57,192,57,192,57,192,0,0,0,0,0,0,31,128, + 63,192,112,224,240,224,224,112,224,112,224,112,224,112,240,240, + 112,224,63,192,31,128,14,10,20,24,5,2,7,0,7,0, + 6,0,0,0,255,252,255,252,0,0,2,0,7,0,7,0, + 12,15,30,14,1,254,0,32,0,48,31,224,63,192,113,224, + 241,240,227,112,230,112,236,112,248,112,248,240,112,224,127,192, + 223,128,192,0,11,19,38,13,1,0,112,0,56,0,28,0, + 12,0,6,0,0,0,0,0,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,241,224,127,224,62,224, + 11,19,38,13,1,0,3,128,3,128,7,0,6,0,12,0, + 0,0,0,0,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,241,224,127,224,62,224,11,19,38,13, + 1,0,14,0,31,0,27,0,49,128,32,128,0,0,0,0, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,241,224,127,224,62,224,11,18,36,13,1,0,115,128, + 115,128,115,128,0,0,0,0,0,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,241,224,127,224, + 62,224,11,23,46,13,1,251,1,128,3,128,3,0,6,0, + 0,0,0,0,224,224,224,224,241,224,113,192,121,192,59,192, + 59,128,63,128,31,128,31,0,31,0,15,0,14,0,14,0, + 254,0,252,0,120,0,12,22,44,15,2,251,224,0,224,0, + 224,0,224,0,224,0,239,128,255,192,248,224,240,240,224,112, + 224,112,224,112,224,112,240,240,241,224,255,192,239,128,224,0, + 224,0,224,0,224,0,224,0,12,22,44,14,1,251,57,192, + 57,192,57,192,0,0,0,0,240,112,240,240,112,240,120,224, + 121,224,57,192,61,192,31,192,31,128,31,128,15,128,15,0, + 15,0,15,0,14,0,30,0,28,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--23-230-72-72-P-115-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 17 + Calculated Max Values w=14 h=18 x= 5 y= 8 dx=24 dy= 0 ascent=17 len=34 + Font Bounding box w=34 h=31 x=-2 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =17 descent= 0 + X Font ascent =17 descent= 0 + Max Font ascent =17 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub17n[512] U8G_SECTION(".progmem.u8g_font_fub17n") = { + 0,34,31,254,250,17,0,0,0,0,42,57,0,17,253,17, + 0,9,9,18,15,3,8,54,0,54,0,54,0,156,128,255, + 128,156,128,54,0,54,0,54,0,14,14,28,24,5,0,2, + 0,2,0,2,0,2,0,2,0,2,0,255,252,255,252,2, + 0,2,0,2,0,2,0,2,0,2,0,5,6,6,7,1, + 253,56,112,112,96,96,224,6,3,3,8,1,4,252,252,252, + 3,3,3,7,2,0,224,224,224,8,18,18,10,1,255,7, + 6,6,14,12,12,12,28,24,24,56,48,48,48,112,96,96, + 224,11,17,34,13,1,0,31,0,63,128,113,192,112,192,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,112,192,113,192,63,128,31,0,7,17,17,13,2,0,14, + 62,254,254,206,14,14,14,14,14,14,14,14,14,14,14,14, + 12,17,34,13,1,0,15,128,63,224,120,224,112,112,0,112, + 0,112,0,240,1,224,3,224,7,192,15,128,30,0,60,0, + 248,0,255,240,255,240,255,240,11,17,34,13,1,0,31,0, + 127,192,241,224,224,224,0,224,0,224,1,192,15,128,15,128, + 1,192,0,224,0,224,224,224,241,224,255,192,127,128,31,0, + 12,17,34,13,1,0,3,192,7,192,7,192,15,192,29,192, + 29,192,57,192,113,192,113,192,225,192,255,240,255,240,255,240, + 1,192,1,192,1,192,1,192,11,17,34,13,1,0,255,192, + 255,192,255,192,224,0,224,0,224,0,239,128,255,192,241,224, + 224,224,0,224,0,224,224,224,225,224,255,192,127,128,63,0, + 11,17,34,13,1,0,15,0,63,192,57,224,112,224,96,0, + 224,0,239,128,255,192,241,224,224,224,224,224,224,224,224,224, + 96,224,113,192,63,128,31,0,11,17,34,13,1,0,255,224, + 255,224,255,224,0,224,1,224,1,192,3,192,3,128,7,128, + 7,128,7,0,15,0,14,0,30,0,28,0,60,0,60,0, + 11,17,34,13,1,0,31,0,127,192,241,224,224,224,224,224, + 224,224,113,192,63,128,63,128,113,192,224,224,224,224,224,224, + 224,224,241,224,127,192,31,0,11,17,34,13,1,0,31,0, + 63,128,113,192,224,192,224,224,224,224,224,224,241,224,127,224, + 62,224,0,224,0,224,224,224,225,192,113,192,127,128,30,0 + }; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--23-230-72-72-P-115-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=23 h=25 x= 6 y=14 dx=24 dy= 0 ascent=19 len=66 + Font Bounding box w=34 h=31 x=-2 y=-6 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =19 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub17r[3222] U8G_SECTION(".progmem.u8g_font_fub17r") = { + 0,34,31,254,250,17,4,8,8,209,32,127,251,19,250,17, + 251,0,0,0,7,0,0,3,17,17,9,3,0,224,224,224, + 224,224,224,224,224,224,224,224,224,0,0,224,224,224,8,7, + 7,12,2,10,231,231,231,231,231,231,231,14,17,34,16,1, + 0,3,24,7,24,6,56,6,48,63,252,63,252,12,96,12, + 96,28,96,24,224,255,248,255,240,57,192,49,128,49,128,113, + 128,99,128,12,21,42,14,1,253,2,0,15,128,63,192,127, + 224,242,224,226,224,226,0,250,0,126,0,63,192,15,224,3, + 240,2,240,226,112,226,112,242,240,127,224,63,192,15,0,2, + 0,2,0,21,17,51,23,1,0,62,3,0,127,7,0,99, + 6,0,193,142,0,193,140,0,193,152,0,193,184,0,99,48, + 128,127,119,224,62,102,48,0,236,24,0,204,24,1,204,24, + 1,140,24,3,14,56,7,7,240,6,3,224,16,17,34,18, + 1,0,31,128,63,192,121,224,112,224,113,224,57,192,63,128, + 31,0,63,30,119,156,243,220,225,252,224,252,224,120,120,124, + 127,254,31,207,3,7,7,9,3,10,224,224,224,224,224,224, + 96,5,20,20,9,2,253,56,56,112,112,112,240,224,224,224, + 224,224,224,224,224,240,112,112,112,48,56,5,20,20,9,2, + 253,224,96,112,112,112,56,56,56,56,56,56,56,56,56,56, + 112,112,112,96,224,9,9,18,15,3,8,54,0,54,0,54, + 0,156,128,255,128,156,128,54,0,54,0,54,0,14,14,28, + 24,5,0,2,0,2,0,2,0,2,0,2,0,2,0,255, + 252,255,252,2,0,2,0,2,0,2,0,2,0,2,0,5, + 6,6,7,1,253,56,112,112,96,96,224,6,3,3,8,1, + 4,252,252,252,3,3,3,7,2,0,224,224,224,8,18,18, + 10,1,255,7,6,6,14,12,12,12,28,24,24,56,48,48, + 48,112,96,96,224,11,17,34,13,1,0,31,0,63,128,113, + 192,112,192,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,112,192,113,192,63,128,31,0,7,17,17, + 13,2,0,14,62,254,254,206,14,14,14,14,14,14,14,14, + 14,14,14,14,12,17,34,13,1,0,15,128,63,224,120,224, + 112,112,0,112,0,112,0,240,1,224,3,224,7,192,15,128, + 30,0,60,0,248,0,255,240,255,240,255,240,11,17,34,13, + 1,0,31,0,127,192,241,224,224,224,0,224,0,224,1,192, + 15,128,15,128,1,192,0,224,0,224,224,224,241,224,255,192, + 127,128,31,0,12,17,34,13,1,0,3,192,7,192,7,192, + 15,192,29,192,29,192,57,192,113,192,113,192,225,192,255,240, + 255,240,255,240,1,192,1,192,1,192,1,192,11,17,34,13, + 1,0,255,192,255,192,255,192,224,0,224,0,224,0,239,128, + 255,192,241,224,224,224,0,224,0,224,224,224,225,224,255,192, + 127,128,63,0,11,17,34,13,1,0,15,0,63,192,57,224, + 112,224,96,0,224,0,239,128,255,192,241,224,224,224,224,224, + 224,224,224,224,96,224,113,192,63,128,31,0,11,17,34,13, + 1,0,255,224,255,224,255,224,0,224,1,224,1,192,3,192, + 3,128,7,128,7,128,7,0,15,0,14,0,30,0,28,0, + 60,0,60,0,11,17,34,13,1,0,31,0,127,192,241,224, + 224,224,224,224,224,224,113,192,63,128,63,128,113,192,224,224, + 224,224,224,224,224,224,241,224,127,192,31,0,11,17,34,13, + 1,0,31,0,63,128,113,192,224,192,224,224,224,224,224,224, + 241,224,127,224,62,224,0,224,0,224,224,224,225,192,113,192, + 127,128,30,0,3,12,12,7,3,0,224,224,224,0,0,0, + 0,0,0,224,224,224,5,14,14,8,1,254,56,56,56,0, + 0,0,0,0,56,56,112,112,96,224,14,12,24,24,5,1, + 0,12,0,60,1,224,7,0,60,0,224,0,224,0,60,0, + 7,0,1,224,0,60,0,12,14,6,12,24,5,4,255,252, + 255,252,0,0,0,0,255,252,255,252,14,12,24,24,5,1, + 192,0,240,0,30,0,3,128,0,240,0,28,0,28,0,240, + 3,128,30,0,240,0,192,0,10,17,34,12,1,0,62,0, + 127,128,227,128,193,192,1,192,1,192,3,128,7,128,14,0, + 28,0,24,0,24,0,24,0,0,0,0,0,24,0,24,0, + 22,22,66,24,1,251,0,254,0,3,255,128,15,255,224,31, + 1,240,62,0,240,120,247,120,121,255,56,113,207,60,243,135, + 28,227,135,28,227,135,28,227,135,28,227,135,28,227,207,56, + 241,255,248,113,251,240,120,113,224,60,0,0,31,0,0,15, + 255,0,7,255,0,0,255,0,16,17,34,16,0,0,3,192, + 3,192,3,224,7,224,7,240,15,112,14,112,14,120,30,56, + 28,56,28,60,63,252,63,252,127,254,120,14,112,15,240,7, + 12,17,34,15,2,0,255,192,255,224,255,240,224,240,224,112, + 224,112,224,224,255,192,255,192,224,224,224,112,224,112,224,112, + 224,240,255,240,255,224,255,128,14,17,34,16,1,0,15,192, + 31,240,63,248,120,120,112,60,240,60,224,0,224,0,224,0, + 224,0,224,0,224,0,112,60,112,60,56,120,31,240,15,192, + 14,17,34,17,2,0,255,0,255,224,255,240,224,248,224,56, + 224,60,224,28,224,28,224,28,224,28,224,28,224,60,224,56, + 224,248,255,240,255,224,255,128,11,17,34,15,2,0,255,224, + 255,224,255,224,224,0,224,0,224,0,224,0,255,224,255,224, + 224,0,224,0,224,0,224,0,224,0,255,224,255,224,255,224, + 11,17,34,14,2,0,255,224,255,224,255,224,224,0,224,0, + 224,0,224,0,255,192,255,192,255,192,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,15,17,34,18,1,0,7,224, + 31,248,63,252,124,30,112,14,240,14,224,0,224,0,224,254, + 224,254,224,254,240,14,112,14,124,14,63,254,31,254,3,248, + 13,17,34,17,2,0,224,56,224,56,224,56,224,56,224,56, + 224,56,224,56,255,248,255,248,255,248,224,56,224,56,224,56, + 224,56,224,56,224,56,224,56,3,17,17,7,2,0,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,11, + 17,34,14,1,0,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,224,224,224,224,240, + 224,255,192,127,192,63,0,13,17,34,16,2,0,224,240,224, + 224,225,224,227,192,231,128,239,0,239,0,254,0,254,0,239, + 0,231,128,231,128,227,192,225,224,225,240,224,240,224,120,11, + 17,34,14,2,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,255,224,255,224,255,224,18,17,51,22,2,0,252,7,192, + 252,15,192,252,15,192,252,15,192,238,31,192,238,29,192,238, + 29,192,231,61,192,231,57,192,231,57,192,231,185,192,227,241, + 192,227,241,192,227,241,192,225,241,192,225,225,192,225,225,192, + 14,17,34,18,2,0,248,28,248,28,252,28,252,28,238,28, + 238,28,231,28,231,28,231,156,227,156,227,220,225,220,225,220, + 224,252,224,252,224,124,224,124,15,17,34,17,1,0,7,192, + 31,240,63,248,120,60,112,28,240,30,224,14,224,14,224,14, + 224,14,224,14,240,14,112,28,120,60,63,248,31,240,7,224, + 12,17,34,15,2,0,255,128,255,192,255,224,224,240,224,112, + 224,112,224,112,224,240,255,224,255,192,255,0,224,0,224,0, + 224,0,224,0,224,0,224,0,17,17,51,19,1,0,7,192, + 0,31,240,0,63,248,0,120,60,0,112,28,0,240,30,0, + 224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,240, + 14,0,112,28,0,120,60,0,63,255,128,31,255,128,7,255, + 128,13,17,34,16,2,0,255,192,255,240,255,248,224,120,224, + 56,224,56,224,112,255,224,255,192,255,240,224,240,224,112,224, + 120,224,56,224,56,224,56,224,56,13,17,34,15,1,0,15, + 192,63,224,56,240,112,112,112,0,120,0,126,0,63,192,31, + 240,3,240,0,120,224,56,224,56,240,120,127,240,63,224,15, + 128,13,17,34,15,1,0,255,248,255,248,255,248,7,0,7, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,7,0,14,17,34,18,2,0,224, + 28,224,28,224,28,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,240,60,120,120,127,248,63,240,15, + 192,17,17,51,17,0,0,240,7,128,112,7,0,120,15,0, + 120,14,0,56,30,0,60,30,0,28,28,0,30,60,0,30, + 60,0,14,56,0,15,120,0,15,112,0,7,112,0,7,240, + 0,7,224,0,3,224,0,3,224,0,23,17,51,23,0,0, + 240,56,30,112,124,28,112,124,28,120,124,60,120,108,60,56, + 238,56,56,238,56,56,238,56,60,198,120,29,199,112,29,199, + 112,29,199,112,29,131,112,15,131,224,15,131,224,15,131,224, + 15,1,224,14,17,34,16,1,0,240,60,120,56,120,120,60, + 112,28,224,31,224,15,192,7,128,7,128,15,192,31,192,29, + 224,56,240,120,112,112,120,240,60,224,60,13,17,34,15,1, + 0,224,56,240,120,112,112,120,240,56,224,61,224,29,192,31, + 192,15,128,15,128,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,12,17,34,14,1,0,255,240,255,240,255,240,1, + 240,1,224,3,192,7,128,7,128,15,0,30,0,60,0,60, + 0,120,0,240,0,255,240,255,240,255,240,5,22,22,9,2, + 251,248,248,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,248,248,7,18,18,10,1,255,192,224,96, + 96,112,48,48,56,24,24,24,28,12,12,14,6,6,6,5, + 22,22,9,2,251,248,248,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,248,248,11,14,28,23,6, + 0,4,0,14,0,10,0,27,0,17,0,17,0,49,128,32, + 128,32,128,96,192,64,64,192,96,128,32,128,32,12,2,4, + 12,0,253,255,240,255,240,4,4,4,6,0,14,224,96,48, + 48,10,12,24,13,1,0,31,0,127,128,113,192,1,192,31, + 192,127,192,241,192,225,192,225,192,243,192,127,192,60,192,12, + 17,34,14,1,0,224,0,224,0,224,0,224,0,224,0,239, + 128,255,192,241,224,240,240,224,112,224,112,224,112,224,112,240, + 240,248,224,255,192,231,128,10,12,24,12,1,0,31,0,127, + 128,115,192,225,192,224,0,224,0,224,0,225,192,225,192,115, + 192,127,128,31,0,12,17,34,14,1,0,0,112,0,112,0, + 112,0,112,0,112,31,112,63,240,120,240,240,240,224,112,224, + 112,224,112,224,112,240,240,113,240,63,240,30,112,11,12,24, + 13,1,0,31,0,63,128,113,192,225,224,255,224,255,224,224, + 0,224,0,225,192,113,192,127,192,31,0,8,17,17,9,1, + 0,31,63,56,56,56,255,255,56,56,56,56,56,56,56,56, + 56,56,12,17,34,14,1,251,31,112,63,240,120,240,240,240, + 224,112,224,112,224,112,224,112,240,240,112,240,127,240,30,112, + 0,112,112,112,120,224,63,224,31,128,11,17,34,13,1,0, + 224,0,224,0,224,0,224,0,224,0,239,128,255,192,241,224, + 240,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,3,17,17,5,1,0,224,224,224,0,0,224,224,224, + 224,224,224,224,224,224,224,224,224,4,22,22,7,2,251,112, + 112,112,0,0,112,112,112,112,112,112,112,112,112,112,112,112, + 112,112,240,240,224,11,17,34,12,1,0,224,0,224,0,224, + 0,224,0,224,0,227,192,227,128,231,0,239,0,254,0,254, + 0,238,0,239,0,231,128,231,128,227,192,225,224,3,17,17, + 6,1,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,19,12,36,21,1,0,231,143,128,239,223,192, + 249,241,224,240,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,11,12, + 24,13,1,0,239,128,255,192,241,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,12,12,24,14, + 1,0,31,128,63,192,112,224,240,224,224,112,224,112,224,112, + 224,112,240,240,112,224,63,192,31,128,12,17,34,14,1,251, + 231,128,255,192,248,224,240,240,224,112,224,112,224,112,224,112, + 240,240,241,224,255,192,239,128,224,0,224,0,224,0,224,0, + 224,0,12,17,34,14,1,251,30,112,63,240,113,240,240,240, + 224,112,224,112,224,112,224,112,240,240,120,240,63,240,31,112, + 0,112,0,112,0,112,0,112,0,112,7,12,12,9,1,0, + 238,238,254,240,240,224,224,224,224,224,224,224,10,12,24,12, + 1,0,63,0,127,128,241,192,225,192,248,0,127,0,31,128, + 3,192,225,192,227,192,127,128,63,0,8,15,15,10,1,0, + 24,56,56,255,255,56,56,56,56,56,56,56,60,63,15,11, + 12,24,13,1,0,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,241,224,127,224,62,224,12,12,24, + 13,0,0,240,112,112,240,112,224,120,224,56,224,57,192,29, + 192,29,192,31,128,15,128,15,128,15,0,19,12,36,20,0, + 0,240,240,224,112,240,224,113,240,224,113,249,192,57,249,192, + 59,185,192,59,159,192,63,159,128,31,31,128,31,15,128,31, + 15,0,15,15,0,11,12,24,13,1,0,241,224,113,192,123, + 128,63,128,31,0,30,0,31,0,63,128,123,128,115,192,241, + 192,225,224,12,17,34,12,0,251,240,112,112,240,120,224,56, + 224,57,224,61,192,29,192,29,192,31,128,15,128,15,128,7, + 0,7,0,15,0,14,0,14,0,30,0,10,12,24,12,1, + 0,255,128,255,128,7,128,7,0,14,0,30,0,60,0,56, + 0,112,0,224,0,255,192,255,192,9,23,46,12,2,250,7, + 128,15,128,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,60,0,248,0,224,0,248,0,60,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,15,128,7,128,2,25,25, + 8,3,250,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,8,23,23,12, + 2,250,224,240,56,56,56,56,56,56,56,28,31,7,31,28, + 56,56,56,56,56,56,56,248,224,12,3,6,12,0,5,60, + 48,127,240,227,192,255}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--27-270-72-72-P-136-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 20, '1' Height: 20 + Calculated Max Values w=27 h=29 x= 7 y=18 dx=28 dy= 0 ascent=29 len=100 + Font Bounding box w=40 h=36 x=-2 y=-7 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =20 descent=-5 + X Font ascent =20 descent=-5 + Max Font ascent =29 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub20[8916] U8G_SECTION(".progmem.u8g_font_fub20") = { + 0,40,36,254,249,20,4,242,11,37,32,255,251,29,249,20, + 251,0,0,0,8,0,0,4,20,20,11,4,0,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,0,0,0,240,240, + 240,10,8,16,14,2,12,243,192,243,192,243,192,243,192,243, + 192,225,192,225,192,97,128,17,20,60,19,1,0,1,199,0, + 1,134,0,3,142,0,3,142,0,3,142,0,31,255,128,63, + 255,128,7,28,0,6,24,0,14,56,0,14,56,0,14,48, + 0,127,254,0,255,254,0,28,112,0,24,96,0,56,224,0, + 56,224,0,56,224,0,49,192,0,14,24,48,16,1,253,1, + 0,7,192,31,240,63,248,125,120,113,60,241,60,241,0,253, + 0,127,0,63,224,31,240,3,248,1,124,1,60,241,60,241, + 60,249,60,127,248,63,240,31,224,1,0,1,0,1,0,25, + 20,80,27,1,0,31,0,96,0,63,128,224,0,123,192,192, + 0,225,193,192,0,224,227,128,0,224,227,0,0,224,231,0, + 0,224,230,0,0,113,206,0,0,127,204,124,0,63,28,254, + 0,0,57,199,0,0,59,131,0,0,115,131,128,0,99,131, + 128,0,227,131,128,1,195,135,128,1,193,239,0,3,128,254, + 0,3,128,124,0,19,20,60,21,1,0,15,192,0,31,240, + 0,60,240,0,120,120,0,120,120,0,120,112,0,60,240,0, + 63,224,0,31,192,0,31,128,0,63,135,128,123,199,128,249, + 231,128,240,247,0,240,127,0,240,63,0,240,30,0,124,127, + 0,63,255,128,15,227,224,4,8,8,11,4,12,240,224,224, + 224,224,224,224,224,6,24,24,10,2,252,28,56,56,120,120, + 112,112,240,240,240,240,240,240,240,240,240,240,112,112,120,120, + 56,56,28,6,24,24,11,3,252,224,240,112,112,120,120,120, + 56,56,60,60,60,60,60,60,56,56,120,120,120,112,112,240, + 224,11,11,22,17,3,9,17,0,59,128,59,128,27,0,238, + 224,255,224,206,96,27,0,59,128,59,128,17,0,16,16,32, + 26,5,0,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,255,255,255,255,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,6,7,7,8,1,252,60,56,56,112,112,112,224, + 7,4,4,9,1,5,254,254,254,254,4,4,4,9,3,0, + 240,240,240,240,8,21,21,12,2,255,7,7,7,6,14,14, + 12,28,28,24,56,56,56,48,112,112,96,224,224,224,192,14, + 20,40,15,1,0,15,128,31,224,60,240,120,112,112,56,240, + 56,240,56,240,60,240,60,240,60,240,60,240,60,240,60,240, + 56,240,56,112,56,120,120,60,240,31,224,15,128,8,20,20, + 15,3,0,15,63,127,255,239,207,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,14,20,40,15,1,0,7,192,31, + 240,63,248,124,120,120,60,120,60,0,60,0,120,0,120,0, + 240,1,240,3,224,7,192,15,128,31,0,124,0,248,0,255, + 252,255,252,255,252,13,20,40,15,1,0,15,128,63,224,127, + 240,248,240,240,120,0,120,0,120,0,240,15,224,15,128,15, + 224,0,240,0,120,0,120,240,120,240,120,248,240,127,240,63, + 224,31,128,14,20,40,15,1,0,1,240,3,240,3,240,7, + 240,7,240,14,240,30,240,28,240,60,240,56,240,120,240,112, + 240,240,240,255,252,255,252,255,252,0,240,0,240,0,240,0, + 240,13,20,40,15,1,0,255,240,255,240,255,240,240,0,240, + 0,240,0,240,0,247,192,255,224,253,240,240,120,240,120,0, + 120,0,120,0,120,240,120,240,240,127,240,63,224,31,128,13, + 20,40,15,1,0,15,192,31,224,63,240,120,120,120,120,112, + 0,240,0,247,192,239,224,253,240,248,120,240,120,240,120,240, + 120,240,120,112,120,120,240,63,240,63,224,15,128,13,20,40, + 15,1,0,255,248,255,248,255,248,0,120,0,120,0,240,0, + 240,1,224,1,224,1,224,3,192,3,192,7,128,7,128,15, + 128,15,0,31,0,30,0,30,0,62,0,14,20,40,15,1, + 0,31,192,63,240,127,240,120,248,240,120,240,120,240,120,120, + 240,63,224,31,192,63,240,120,120,240,56,240,60,240,60,240, + 60,248,120,127,248,63,240,31,192,13,20,40,15,1,0,15, + 128,63,192,127,224,120,240,240,112,240,120,240,120,240,120,240, + 120,120,248,127,184,63,56,0,120,0,120,0,112,240,240,120, + 240,127,224,63,192,15,128,4,14,14,9,4,0,240,240,240, + 240,0,0,0,0,0,0,240,240,240,240,6,17,17,8,1, + 253,60,60,60,60,0,0,0,0,0,0,60,56,120,112,112, + 224,224,16,14,28,26,5,1,0,3,0,31,0,120,3,192, + 15,0,120,0,224,0,224,0,60,0,7,128,1,224,0,60, + 0,15,0,1,16,7,14,26,5,5,255,255,255,255,0,0, + 0,0,0,0,255,255,255,255,16,14,28,26,5,1,192,0, + 248,0,30,0,3,192,0,240,0,30,0,7,0,7,0,60, + 1,224,7,128,60,0,240,0,128,0,13,20,40,15,1,0, + 31,128,63,224,121,240,240,112,32,120,0,120,0,112,0,240, + 1,224,3,192,7,128,14,0,14,0,14,0,14,0,0,0, + 0,0,15,0,15,0,15,0,26,25,100,28,1,251,0,63, + 128,0,1,255,240,0,7,255,252,0,15,224,254,0,31,0, + 31,0,62,0,15,0,60,61,231,128,120,255,231,128,121,247, + 227,192,241,225,227,192,241,193,227,192,243,193,227,192,243,193, + 227,192,243,193,227,192,243,193,227,192,241,193,227,128,113,227, + 231,128,120,255,255,0,124,254,255,0,60,60,60,0,31,0, + 0,0,15,192,32,0,7,255,224,0,1,255,224,0,0,127, + 224,0,19,20,60,19,0,0,1,240,0,1,240,0,1,248, + 0,3,248,0,3,248,0,3,188,0,7,188,0,7,156,0, + 15,30,0,15,30,0,15,30,0,30,15,0,30,15,0,31, + 255,128,63,255,128,63,255,128,56,3,192,120,3,192,120,3, + 192,240,1,224,15,20,40,18,2,0,255,224,255,240,255,248, + 240,124,240,60,240,60,240,56,240,120,255,240,255,192,255,248, + 240,60,240,28,240,30,240,30,240,30,240,60,255,252,255,248, + 255,224,17,20,60,19,1,0,7,240,0,15,252,0,63,254, + 0,60,31,0,120,15,0,112,15,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 15,128,112,15,0,120,31,0,60,62,0,63,254,0,31,248, + 0,7,224,0,16,20,40,19,2,0,255,128,255,240,255,248, + 240,124,240,62,240,30,240,15,240,15,240,15,240,15,240,15, + 240,15,240,15,240,15,240,30,240,62,240,124,255,248,255,240, + 255,128,13,20,40,17,2,0,255,248,255,248,255,248,240,0, + 240,0,240,0,240,0,240,0,255,248,255,248,255,248,240,0, + 240,0,240,0,240,0,240,0,240,0,255,248,255,248,255,248, + 13,20,40,16,2,0,255,248,255,248,255,248,240,0,240,0, + 240,0,240,0,240,0,255,240,255,240,255,240,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,18,20, + 60,20,1,0,1,248,0,15,254,0,31,255,0,62,15,128, + 124,3,128,120,3,192,112,0,0,240,0,0,240,0,0,240, + 63,192,240,63,192,240,63,192,240,3,192,240,3,192,120,3, + 192,124,3,192,63,3,192,31,255,192,15,255,192,1,254,0, + 16,20,40,20,2,0,240,15,240,15,240,15,240,15,240,15, + 240,15,240,15,240,15,255,255,255,255,255,255,240,15,240,15, + 240,15,240,15,240,15,240,15,240,15,240,15,240,15,4,20, + 20,8,2,0,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,14,20,40,17,1,0,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,60,0,60,0,60,240,60,240,56,248,120, + 127,240,127,224,31,192,15,20,40,18,2,0,240,60,240,124, + 240,248,241,240,241,224,243,224,247,192,255,128,255,0,255,0, + 255,128,247,192,247,192,243,224,241,240,240,240,240,248,240,124, + 240,62,240,62,13,20,40,16,2,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,255,248,255,248, + 255,248,21,20,60,25,2,0,252,1,248,254,3,248,254,3, + 248,254,3,248,255,7,248,255,7,248,247,7,120,247,15,120, + 247,143,120,247,143,120,243,142,120,243,222,120,243,222,120,241, + 220,120,241,252,120,241,252,120,240,248,120,240,248,120,240,248, + 120,240,248,120,17,20,60,21,2,0,252,7,128,252,7,128, + 254,7,128,254,7,128,255,7,128,255,7,128,247,135,128,247, + 135,128,243,199,128,243,199,128,241,231,128,241,231,128,240,247, + 128,240,247,128,240,127,128,240,127,128,240,63,128,240,63,128, + 240,31,128,240,31,128,18,20,60,20,1,0,3,240,0,15, + 252,0,31,254,0,62,31,0,120,7,128,120,7,128,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,120,7,128,120,7,128,62,31,0,31, + 254,0,15,252,0,3,240,0,14,20,40,17,2,0,255,192, + 255,240,255,248,240,124,240,60,240,60,240,60,240,60,240,124, + 255,248,255,240,255,192,240,0,240,0,240,0,240,0,240,0, + 240,0,240,0,240,0,20,20,60,22,1,0,3,240,0,15, + 252,0,63,254,0,62,31,0,120,7,128,120,7,128,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,120,7,128,120,7,128,62,31,0,31, + 255,240,15,255,240,3,255,240,15,20,40,18,2,0,255,224, + 255,248,255,252,240,62,240,30,240,30,240,30,240,30,240,124, + 255,248,255,240,255,252,240,60,240,60,240,28,240,30,240,30, + 240,30,240,30,240,14,16,20,40,18,1,0,7,224,31,248, + 63,252,60,60,120,30,120,30,120,0,124,0,63,128,31,240, + 15,252,0,254,0,30,0,15,240,15,240,14,120,62,127,252, + 63,248,7,224,16,20,40,18,1,0,255,255,255,255,255,255, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,17,20,60,21,2,0,240,7,128,240,7,128,240,7, + 128,240,7,128,240,7,128,240,7,128,240,7,128,240,7,128, + 240,7,128,240,7,128,240,7,128,240,7,128,240,7,128,240, + 7,0,240,15,0,120,15,0,124,30,0,63,254,0,31,248, + 0,7,224,0,19,20,60,20,0,0,248,1,224,120,1,224, + 120,3,224,60,3,192,60,3,192,62,7,192,30,7,128,30, + 7,128,31,15,128,15,15,0,15,15,0,15,158,0,7,158, + 0,7,158,0,7,252,0,3,252,0,3,252,0,1,248,0, + 1,248,0,1,240,0,27,20,80,27,0,0,248,31,3,224, + 120,31,3,192,120,31,3,192,120,63,131,192,120,63,131,192, + 60,59,135,128,60,59,135,128,60,123,199,128,60,123,199,128, + 28,113,199,0,30,113,207,0,30,241,239,0,30,241,239,0, + 14,224,238,0,14,224,238,0,15,224,254,0,15,224,254,0, + 7,192,124,0,7,192,124,0,7,192,124,0,17,20,60,19, + 1,0,248,15,128,120,15,0,124,30,0,62,30,0,30,60, + 0,31,120,0,15,120,0,7,240,0,7,224,0,3,224,0, + 7,224,0,7,240,0,15,240,0,30,120,0,30,124,0,60, + 60,0,60,30,0,120,31,0,240,15,0,240,7,128,16,20, + 40,17,1,0,240,31,248,30,120,30,124,60,60,60,60,120, + 30,120,30,240,15,240,15,224,7,224,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,15,20,40,17, + 1,0,127,254,127,254,127,254,0,62,0,124,0,248,0,248, + 1,240,3,224,7,224,7,192,15,128,31,0,63,0,62,0, + 124,0,248,0,255,254,255,254,255,254,6,25,25,10,2,251, + 252,252,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,252,252,9,21,42,12,1,255,224, + 0,96,0,112,0,112,0,48,0,56,0,56,0,56,0,24, + 0,28,0,28,0,12,0,14,0,14,0,6,0,6,0,7, + 0,7,0,3,0,3,128,3,128,7,25,25,11,2,251,254, + 254,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30, + 30,30,30,30,30,30,254,254,13,17,34,27,7,0,2,0, + 7,0,5,0,5,0,13,128,8,128,24,192,24,192,16,64, + 48,96,48,96,32,32,96,48,64,16,192,24,192,24,128,8, + 14,2,4,14,0,252,255,252,255,252,5,5,5,7,0,16, + 224,112,112,56,24,12,14,28,15,1,0,31,128,63,224,121, + 240,112,240,0,240,63,240,127,240,248,240,240,240,240,240,240, + 240,251,240,127,112,62,112,14,20,40,17,2,0,240,0,240, + 0,240,0,240,0,240,0,240,0,247,192,255,240,253,240,248, + 120,240,120,240,60,240,60,240,60,240,60,240,56,248,120,252, + 240,255,240,243,192,12,14,28,14,1,0,31,128,63,224,121, + 224,112,224,240,240,240,0,240,0,240,0,240,0,240,240,240, + 224,121,224,63,192,31,128,14,20,40,16,1,0,0,60,0, + 60,0,60,0,60,0,60,0,60,31,188,63,252,124,252,120, + 124,240,60,240,60,240,60,240,60,240,60,240,60,120,124,125, + 252,63,188,15,60,13,14,28,15,1,0,15,128,63,224,121, + 240,112,240,240,240,255,240,255,248,240,0,240,0,240,240,112, + 240,121,240,63,224,31,128,10,20,40,11,1,0,15,192,31, + 192,62,64,60,0,60,0,60,0,255,128,255,128,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,14,19,38,16,1,251,31,188,63,252,124, + 252,120,124,240,60,240,60,240,60,240,60,240,60,240,60,112, + 124,124,252,63,188,15,60,0,60,120,56,124,248,63,240,15, + 192,13,20,40,16,2,0,240,0,240,0,240,0,240,0,240, + 0,240,0,247,192,255,240,253,240,248,120,240,120,240,120,240, + 120,240,120,240,120,240,120,240,120,240,120,240,120,240,120,4, + 20,20,6,1,0,240,240,240,240,0,0,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,5,25,25,9,3,251,120, + 120,120,120,0,0,120,120,120,120,120,120,120,120,120,120,120, + 120,120,120,120,120,248,248,240,12,20,40,15,2,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,240,241,224,243,192, + 247,128,255,128,255,0,255,0,255,0,247,128,247,192,243,192, + 241,224,241,240,240,240,4,20,20,7,2,0,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 22,14,42,25,2,0,243,227,224,255,247,248,253,254,248,240, + 120,120,240,120,60,240,120,60,240,120,60,240,120,60,240,120, + 60,240,120,60,240,120,60,240,120,60,240,120,60,240,120,60, + 13,14,28,16,2,0,247,192,255,240,253,240,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,120, + 240,120,14,14,28,16,1,0,15,192,63,224,124,240,120,120, + 240,60,240,60,240,60,240,60,240,60,240,60,120,120,124,248, + 63,240,15,192,14,19,38,17,2,251,243,192,255,240,253,240, + 248,120,240,56,240,60,240,60,240,60,240,60,240,120,240,120, + 253,248,255,240,247,192,240,0,240,0,240,0,240,0,240,0, + 14,19,38,16,1,251,15,60,63,252,125,252,120,124,240,60, + 240,60,240,60,240,60,240,60,240,60,120,124,124,252,63,252, + 31,188,0,60,0,60,0,60,0,60,0,60,9,14,28,11, + 2,0,247,128,255,128,255,128,252,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,12,14, + 28,14,1,0,31,128,127,192,123,224,241,224,240,0,126,0, + 127,192,31,224,1,240,240,240,240,240,249,224,127,192,31,128, + 10,18,36,12,1,0,2,0,14,0,30,0,30,0,255,192, + 255,192,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,31,0,15,192,7,192,13,14,28,16,2,0, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,120, + 240,120,240,120,240,248,249,248,127,248,62,120,14,14,28,15, + 0,0,240,60,120,60,120,60,56,120,60,120,60,112,28,240, + 30,240,30,224,15,224,15,224,15,192,7,192,7,192,23,14, + 42,23,0,0,240,124,30,112,124,28,120,124,60,120,254,60, + 56,238,60,60,238,56,61,239,120,61,231,120,29,199,112,31, + 199,240,31,199,240,15,131,224,15,131,224,15,131,224,13,14, + 28,15,1,0,240,120,120,240,124,224,61,224,31,192,31,128, + 15,128,31,128,31,192,63,224,57,224,120,240,240,248,240,120, + 14,19,38,15,0,251,248,60,120,60,120,60,60,120,60,120, + 60,112,30,240,30,240,14,224,15,224,15,224,7,192,7,192, + 3,192,7,128,7,128,7,128,15,0,15,0,11,14,28,13, + 1,0,255,224,255,224,1,224,3,224,7,192,7,128,15,0, + 30,0,60,0,124,0,248,0,240,0,255,224,255,224,10,27, + 54,13,2,249,3,192,15,192,31,128,30,0,30,0,30,0, + 30,0,30,0,30,0,28,0,28,0,60,0,248,0,224,0, + 248,0,124,0,60,0,28,0,30,0,30,0,30,0,30,0, + 30,0,30,0,31,128,15,192,7,192,2,29,29,10,4,249, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,10,27,54, + 14,2,249,240,0,252,0,124,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,15,0,7,192,3,192,7, + 192,15,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,124,0,252,0,240,0,14,3,6,14,0,5,63, + 156,127,248,225,240,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,0,0,0,8,0,0,4,19,19,10, + 3,251,240,240,240,0,0,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,12,20,40,16,2,253,0,192,0,192,0, + 128,15,128,63,224,125,224,115,240,243,240,242,0,242,0,246, + 0,244,0,244,240,124,240,121,224,63,224,31,128,24,0,16, + 0,48,0,14,20,40,15,1,0,7,224,31,248,62,120,60, + 60,60,60,60,0,60,0,60,0,255,128,255,128,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,255,252,255, + 252,15,14,28,17,1,5,192,6,99,204,55,248,28,48,24, + 24,48,12,48,12,48,12,48,12,24,24,28,48,63,248,99, + 204,192,6,15,20,40,17,1,0,240,30,240,62,120,60,120, + 124,56,120,60,120,252,254,254,254,31,224,15,224,15,192,255, + 254,255,254,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,1,25,25,9,4,251,128,128,128,128,128,128,128,128,128, + 128,128,0,0,0,128,128,128,128,128,128,128,128,128,128,128, + 11,24,48,13,1,252,31,128,63,192,121,192,240,64,240,0, + 248,0,124,0,63,0,63,128,127,192,243,224,225,224,225,192, + 243,192,255,128,126,0,31,128,7,192,3,224,1,224,1,192, + 195,192,255,128,127,0,9,3,6,9,0,17,227,128,227,128, + 227,128,20,20,60,24,2,0,1,248,0,7,254,0,31,15, + 128,60,3,192,49,252,192,99,254,224,103,158,96,199,15,48, + 207,0,48,207,0,48,207,0,48,207,15,48,199,14,48,103, + 158,96,99,252,96,49,248,192,56,1,192,30,7,128,7,254, + 0,1,248,0,9,13,26,11,1,7,62,0,127,128,99,128, + 3,128,63,128,115,128,227,128,227,128,255,128,125,128,0,0, + 0,0,255,128,14,11,22,16,1,2,30,60,28,56,60,120, + 120,240,120,240,241,224,120,240,56,240,60,120,28,56,30,60, + 15,6,12,17,1,6,255,254,255,254,0,6,0,6,0,6, + 0,6,255,20,20,60,24,2,0,1,248,0,7,254,0,31, + 15,128,60,3,192,51,252,192,99,254,224,99,14,96,195,6, + 48,195,28,48,195,248,48,195,252,48,195,12,48,195,14,48, + 99,6,96,99,6,96,51,6,192,56,1,192,30,7,128,7, + 254,0,1,248,0,9,2,4,9,0,18,255,128,255,128,6, + 6,6,8,1,14,120,204,132,132,204,120,16,16,32,26,5, + 0,1,128,1,128,1,128,1,128,255,255,255,255,1,128,1, + 128,1,128,1,128,1,128,0,0,0,0,0,0,255,255,255, + 255,9,11,22,11,1,9,62,0,127,0,227,128,3,128,7, + 0,15,0,30,0,56,0,112,0,255,0,255,0,8,11,11, + 10,1,9,60,254,231,7,30,30,7,7,231,254,124,6,5, + 5,6,1,16,60,56,112,96,192,255,13,24,48,15,1,252, + 31,248,62,96,126,96,254,96,254,96,254,96,254,96,126,96, + 126,96,30,96,6,96,6,96,6,96,6,96,6,96,6,96, + 6,96,6,96,6,96,6,96,6,96,6,96,6,96,6,96, + 4,4,4,8,2,8,240,240,240,240,7,6,6,7,1,249, + 32,60,14,6,254,252,5,11,11,8,2,9,56,248,248,56, + 56,56,56,56,56,56,56,10,13,26,12,1,7,30,0,127, + 128,115,128,225,192,225,192,225,192,225,192,99,128,127,128,30, + 0,0,0,0,0,255,192,13,11,22,16,2,2,225,192,241, + 224,112,224,120,240,120,240,60,120,120,240,120,240,113,224,241, + 224,225,192,19,20,60,22,2,0,56,7,0,248,14,0,184, + 14,0,56,28,0,56,28,0,56,56,0,56,48,0,56,112, + 0,56,224,0,56,227,192,57,195,192,1,199,192,3,143,192, + 3,13,192,7,29,192,14,57,192,14,63,224,28,63,224,28, + 1,192,56,1,192,19,20,60,21,1,0,56,6,0,248,14, + 0,184,12,0,56,28,0,56,24,0,56,48,0,56,112,0, + 56,96,0,56,224,0,56,199,128,57,207,224,3,156,224,3, + 0,224,7,1,224,6,1,192,14,3,128,28,7,0,28,30, + 0,56,31,224,48,31,224,20,20,60,22,1,0,124,1,192, + 230,3,128,231,3,0,7,7,0,30,14,0,30,14,0,7, + 28,0,231,24,0,231,56,0,126,49,224,24,115,224,0,227, + 224,0,199,224,1,198,224,1,140,224,3,156,224,3,31,240, + 7,31,240,14,0,224,12,0,224,12,19,38,15,1,251,7, + 128,7,128,7,128,0,0,0,0,7,0,7,0,7,0,14, + 0,28,0,56,0,112,0,240,0,240,0,240,112,240,112,127, + 240,63,224,15,128,19,28,84,19,0,0,7,0,0,3,128, + 0,1,128,0,1,192,0,0,192,0,0,96,0,0,0,0, + 0,0,0,1,240,0,1,240,0,1,248,0,3,248,0,3, + 248,0,3,188,0,7,188,0,7,156,0,15,30,0,15,30, + 0,15,30,0,30,15,0,30,15,0,31,255,128,63,255,128, + 63,255,128,56,3,192,120,3,192,120,3,192,240,1,224,19, + 28,84,19,0,0,0,28,0,0,56,0,0,56,0,0,112, + 0,0,96,0,0,192,0,0,0,0,0,0,0,1,240,0, + 1,240,0,1,248,0,3,248,0,3,248,0,3,188,0,7, + 188,0,7,156,0,15,30,0,15,30,0,15,30,0,30,15, + 0,30,15,0,31,255,128,63,255,128,63,255,128,56,3,192, + 120,3,192,120,3,192,240,1,224,19,28,84,19,0,0,0, + 224,0,1,240,0,1,240,0,3,184,0,3,24,0,6,12, + 0,0,0,0,0,0,0,1,240,0,1,240,0,1,248,0, + 3,248,0,3,248,0,3,188,0,7,188,0,7,156,0,15, + 30,0,15,30,0,15,30,0,30,15,0,30,15,0,31,255, + 128,63,255,128,63,255,128,56,3,192,120,3,192,120,3,192, + 240,1,224,19,26,78,19,0,0,1,204,0,3,248,0,6, + 120,0,0,0,0,0,0,0,0,0,0,1,240,0,1,240, + 0,1,248,0,3,248,0,3,248,0,3,188,0,7,188,0, + 7,156,0,15,30,0,15,30,0,15,30,0,30,15,0,30, + 15,0,31,255,128,63,255,128,63,255,128,56,3,192,120,3, + 192,120,3,192,240,1,224,19,26,78,19,0,0,7,28,0, + 7,28,0,7,28,0,0,0,0,0,0,0,0,0,0,1, + 240,0,1,240,0,3,248,0,3,248,0,3,248,0,7,188, + 0,7,188,0,7,60,0,15,30,0,15,30,0,30,31,0, + 30,15,0,30,15,0,63,255,128,63,255,128,63,255,128,120, + 3,192,120,3,192,112,3,192,240,1,224,19,29,87,19,0, + 0,0,224,0,1,240,0,3,24,0,3,24,0,3,24,0, + 1,240,0,0,224,0,0,0,0,0,0,0,1,240,0,1, + 240,0,3,240,0,3,248,0,3,248,0,7,188,0,7,188, + 0,7,60,0,15,30,0,15,30,0,30,30,0,30,15,0, + 30,15,0,63,255,128,63,255,128,63,255,128,120,3,192,120, + 3,192,240,3,192,240,1,224,25,20,80,26,0,0,0,63, + 255,128,0,63,255,128,0,127,0,0,0,127,0,0,0,255, + 0,0,1,239,0,0,1,239,0,0,3,207,0,0,3,207, + 255,128,7,143,255,128,7,143,255,128,15,15,0,0,15,255, + 0,0,31,255,0,0,31,255,0,0,60,15,0,0,56,15, + 0,0,120,15,255,128,112,15,255,128,240,15,255,128,17,27, + 81,19,1,249,7,240,0,15,252,0,63,254,0,60,31,0, + 120,31,0,112,15,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,15,128,112,15, + 0,120,31,0,60,63,0,63,254,0,15,252,0,3,240,0, + 0,128,0,0,224,0,0,240,0,0,48,0,0,48,0,3, + 240,0,0,128,0,13,28,56,17,2,0,60,0,28,0,14, + 0,6,0,7,0,3,0,0,0,0,0,255,248,255,248,255, + 248,240,0,240,0,240,0,240,0,240,0,255,248,255,248,255, + 248,240,0,240,0,240,0,240,0,240,0,240,0,255,248,255, + 248,255,248,13,28,56,17,2,0,1,224,1,192,3,128,3, + 0,6,0,6,0,0,0,0,0,255,248,255,248,255,248,240, + 0,240,0,240,0,240,0,240,0,255,248,255,248,255,248,240, + 0,240,0,240,0,240,0,240,0,240,0,255,248,255,248,255, + 248,13,28,56,17,2,0,15,0,15,128,13,128,29,192,24, + 192,48,96,0,0,0,0,255,248,255,248,255,248,240,0,240, + 0,240,0,240,0,240,0,255,248,255,248,255,248,240,0,240, + 0,240,0,240,0,240,0,240,0,255,248,255,248,255,248,13, + 26,52,17,2,0,56,224,56,224,56,224,0,0,0,0,0, + 0,255,248,255,248,255,248,240,0,240,0,240,0,240,0,240, + 0,255,248,255,248,255,248,240,0,240,0,240,0,240,0,240, + 0,240,0,255,248,255,248,255,248,7,28,28,8,255,0,240, + 112,56,24,28,12,0,0,30,30,30,30,30,30,30,30,30, + 30,30,30,30,30,30,30,30,30,30,30,6,28,28,7,2, + 0,28,56,48,112,96,192,0,0,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,8,28,28, + 8,0,0,60,60,126,102,198,195,0,0,60,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,9, + 26,52,9,0,0,227,128,227,128,227,128,0,0,0,0,0, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,60,0,60,0,18,20,60,19,0,0,63, + 224,0,63,252,0,63,254,0,60,31,0,60,15,128,60,7, + 128,60,3,192,60,3,192,60,3,192,255,195,192,255,195,192, + 60,3,192,60,3,192,60,3,192,60,7,128,60,15,128,60, + 31,0,63,254,0,63,252,0,63,224,0,17,26,78,21,2, + 0,7,152,0,7,248,0,12,240,0,0,0,0,0,0,0, + 0,0,0,252,7,128,252,7,128,254,7,128,254,7,128,255, + 7,128,255,7,128,247,135,128,247,135,128,243,199,128,243,199, + 128,241,231,128,241,231,128,240,247,128,240,247,128,240,127,128, + 240,127,128,240,63,128,240,63,128,240,31,128,240,31,128,18, + 28,84,20,1,0,14,0,0,7,0,0,3,128,0,1,128, + 0,0,192,0,0,0,0,0,0,0,0,0,0,3,240,0, + 15,252,0,31,254,0,62,31,0,120,7,128,120,7,128,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,120,7,128,120,7,128,62,31,0, + 31,254,0,15,252,0,3,240,0,18,28,84,20,1,0,0, + 60,0,0,56,0,0,112,0,0,96,0,0,192,0,0,0, + 0,0,0,0,0,0,0,3,240,0,15,252,0,31,254,0, + 62,31,0,120,7,128,120,7,128,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,120,7,128,120,7,128,62,31,0,31,254,0,15,252,0, + 3,240,0,18,28,84,20,1,0,1,224,0,3,240,0,3, + 240,0,7,56,0,6,24,0,0,0,0,0,0,0,0,0, + 0,3,240,0,15,252,0,31,254,0,62,31,0,120,7,128, + 120,7,128,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,120,7,128,120,7, + 128,62,31,0,31,254,0,15,252,0,3,240,0,18,27,81, + 20,1,0,0,8,0,7,248,0,7,248,0,4,0,0,0, + 0,0,0,0,0,0,0,0,3,240,0,15,252,0,31,254, + 0,62,31,0,120,7,128,120,7,128,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,120,7,128,120,7,128,62,31,0,31,254,0,15,252, + 0,3,240,0,18,27,81,20,1,0,7,28,0,7,28,0, + 7,28,0,0,0,0,0,0,0,0,0,0,0,0,0,3, + 240,0,15,252,0,31,254,0,62,31,0,120,7,128,120,7, + 128,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,120,7,128,120,7,128,62, + 31,0,31,254,0,15,252,0,3,240,0,15,14,28,27,6, + 2,192,6,96,12,48,24,24,48,12,96,6,192,3,128,3, + 128,6,192,12,96,24,48,48,24,96,12,64,4,20,22,66, + 20,0,255,0,0,32,1,252,112,7,255,224,15,255,192,31, + 15,128,60,3,192,60,7,192,120,15,224,120,29,224,120,57, + 224,120,113,224,120,225,224,121,193,224,123,129,224,127,1,224, + 62,3,192,60,3,192,31,15,128,63,255,0,127,254,0,227, + 248,0,64,0,0,17,28,84,21,2,0,30,0,0,14,0, + 0,7,0,0,3,128,0,1,128,0,0,0,0,0,0,0, + 0,0,0,240,7,128,240,7,128,240,7,128,240,7,128,240, + 7,128,240,7,128,240,7,128,240,7,128,240,7,128,240,7, + 128,240,7,128,240,7,128,240,7,128,240,7,0,240,15,0, + 120,15,0,124,30,0,63,254,0,31,248,0,7,224,0,17, + 28,84,21,2,0,0,60,0,0,120,0,0,112,0,0,224, + 0,1,192,0,0,0,0,0,0,0,0,0,0,240,7,128, + 240,7,128,240,7,128,240,7,128,240,7,128,240,7,128,240, + 7,128,240,7,128,240,7,128,240,7,128,240,7,128,240,7, + 128,240,7,128,240,7,0,240,15,0,120,15,0,124,30,0, + 63,254,0,31,248,0,7,224,0,17,28,84,21,2,0,3, + 192,0,3,224,0,7,224,0,14,112,0,12,56,0,0,0, + 0,0,0,0,0,0,0,240,7,128,240,7,128,240,7,128, + 240,7,128,240,7,128,240,7,128,240,7,128,240,7,128,240, + 7,128,240,7,128,240,7,128,240,7,128,240,7,128,240,7, + 0,240,15,0,120,15,0,124,30,0,63,254,0,31,248,0, + 7,224,0,17,27,81,20,2,0,14,56,0,14,56,0,14, + 56,0,0,0,0,0,0,0,0,0,0,0,0,0,240,7, + 128,240,7,128,240,7,128,240,7,128,240,7,128,240,7,128, + 240,7,128,240,7,128,240,7,128,240,7,128,240,7,128,240, + 7,128,240,7,128,240,7,0,240,15,0,120,15,0,124,30, + 0,63,254,0,31,248,0,7,224,0,16,27,54,17,1,0, + 0,112,0,224,0,192,1,128,0,0,0,0,0,0,240,31, + 248,30,120,30,124,60,60,60,60,120,30,120,30,240,15,240, + 15,224,7,224,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,14,20,40,17,1,0,240,0,240,0, + 240,0,240,0,255,192,255,240,255,248,240,124,240,60,240,60, + 240,60,240,124,255,248,255,240,255,192,240,0,240,0,240,0, + 240,0,240,0,14,20,40,16,1,0,31,128,127,224,121,240, + 240,240,240,240,240,240,241,224,243,192,247,128,247,128,247,128, + 243,224,241,240,240,248,240,60,240,60,255,60,255,188,247,248, + 243,240,12,22,44,15,1,0,120,0,56,0,28,0,12,0, + 6,0,2,0,0,0,0,0,31,128,63,224,121,240,112,240, + 0,240,63,240,127,240,248,240,240,240,240,240,240,240,251,240, + 127,112,62,112,12,22,44,15,1,0,1,224,1,192,3,128, + 3,0,7,0,6,0,0,0,0,0,31,128,63,224,121,240, + 112,240,0,240,31,240,127,240,120,240,240,240,240,240,240,240, + 251,240,127,112,62,112,12,22,44,15,1,0,15,0,15,128, + 31,128,25,192,56,192,48,96,0,0,0,0,31,128,63,224, + 121,240,112,240,0,240,63,240,127,240,248,240,240,240,240,240, + 240,240,251,240,127,112,62,112,12,20,40,15,1,0,31,192, + 63,192,48,0,0,0,0,0,0,0,31,128,63,224,121,240, + 112,240,0,240,63,240,127,240,248,240,240,240,240,240,240,240, + 251,240,127,112,62,112,12,21,42,15,1,0,56,224,56,224, + 56,224,0,0,0,0,0,0,0,0,31,128,63,224,121,240, + 112,240,0,240,63,240,127,240,248,240,240,240,240,240,240,240, + 251,240,127,112,62,112,12,23,46,15,1,0,7,0,31,128, + 24,192,24,192,31,128,15,0,0,0,0,0,0,0,31,128, + 63,224,121,240,112,240,0,240,63,240,127,240,248,240,240,240, + 240,240,240,240,251,240,127,112,62,112,22,14,42,24,1,0, + 15,135,192,63,207,240,124,252,248,112,120,56,0,120,56,31, + 255,252,127,255,252,120,120,0,240,120,0,240,120,0,240,252, + 56,249,222,248,127,143,240,30,7,224,12,21,42,14,1,249, + 31,128,63,224,121,224,112,224,240,240,240,0,240,0,240,0, + 240,0,240,240,240,224,121,224,63,192,31,128,4,0,7,0, + 7,128,0,192,0,192,31,128,4,0,13,22,44,15,1,0, + 56,0,56,0,28,0,12,0,6,0,2,0,0,0,0,0, + 15,128,63,224,121,240,112,240,240,240,255,240,255,248,240,0, + 240,0,240,240,112,240,121,240,63,224,31,128,13,22,44,15, + 1,0,1,224,1,192,3,128,3,0,6,0,6,0,0,0, + 0,0,15,128,63,224,121,240,112,240,240,240,255,240,255,248, + 240,0,240,0,240,240,112,240,121,240,63,224,31,128,13,22, + 44,15,1,0,15,0,15,0,31,128,25,128,56,192,48,192, + 0,0,0,0,15,128,63,224,121,240,112,240,240,240,255,240, + 255,248,240,0,240,0,240,240,112,240,121,240,63,224,31,128, + 13,21,42,15,1,0,56,224,56,224,56,224,0,0,0,0, + 0,0,0,0,15,128,63,224,121,240,112,112,240,112,255,240, + 255,248,240,0,240,0,240,112,112,112,125,240,63,224,31,128, + 6,22,22,7,0,0,224,240,112,56,24,12,0,0,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,6,22,22,6, + 2,0,60,56,112,96,192,192,0,0,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,9,22,44,7,255,0,30,0, + 62,0,63,0,115,0,99,128,193,128,0,0,0,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,9,20,40,7,255,0, + 227,128,227,128,227,128,0,0,0,0,0,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,14,20,40,16,1,0,14,24, + 15,240,3,192,15,192,60,224,48,240,15,240,63,248,124,248, + 120,60,240,60,240,60,240,60,240,60,240,60,240,60,120,56, + 124,248,63,240,15,192,13,20,40,16,2,0,30,96,63,192, + 55,128,0,0,0,0,0,0,247,192,255,240,253,240,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,120, + 240,120,240,120,14,22,44,16,1,0,60,0,28,0,14,0, + 6,0,3,0,3,0,0,0,0,0,15,192,63,224,124,240, + 120,120,240,60,240,60,240,60,240,60,240,60,240,60,120,120, + 124,248,63,240,15,192,14,22,44,16,1,0,0,240,0,224, + 1,192,1,128,3,0,3,0,0,0,0,0,15,192,63,224, + 124,240,120,120,240,60,240,60,240,60,240,60,240,60,240,60, + 120,120,124,248,63,240,15,192,14,22,44,16,1,0,7,128, + 7,128,15,192,12,192,24,96,24,96,0,0,0,0,15,192, + 63,224,124,240,120,120,240,60,240,60,240,60,240,60,240,60, + 240,60,120,120,124,248,63,240,15,192,14,20,40,16,1,0, + 15,224,31,224,24,0,0,0,0,0,0,0,15,192,63,224, + 124,240,120,120,240,60,240,60,240,60,240,60,240,60,240,60, + 120,120,124,248,63,240,15,192,14,21,42,16,1,0,28,224, + 28,224,28,224,0,0,0,0,0,0,0,0,15,192,63,224, + 124,240,120,120,240,60,240,60,240,60,240,60,240,60,240,60, + 120,120,124,248,63,240,15,192,16,12,24,26,5,2,1,192, + 3,192,1,192,0,0,0,0,255,255,255,255,0,0,0,0, + 1,192,3,192,1,192,14,18,36,16,1,254,0,8,0,28, + 15,248,63,240,124,240,120,248,241,252,241,188,243,60,246,60, + 254,60,252,60,120,120,60,248,127,240,239,192,192,0,128,0, + 13,22,44,16,2,0,56,0,60,0,28,0,14,0,6,0, + 3,0,0,0,0,0,240,120,240,120,240,120,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,248,249,248,127,248, + 62,120,13,22,44,16,2,0,1,224,1,192,3,128,3,0, + 7,0,6,0,0,0,0,0,240,120,240,120,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,248,249,248, + 127,248,62,120,13,22,44,16,2,0,15,0,15,128,31,128, + 29,192,56,192,48,96,0,0,0,0,240,120,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,248, + 249,248,127,248,62,120,13,21,42,16,2,0,56,224,56,224, + 56,224,0,0,0,0,0,0,0,0,240,120,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,248, + 249,248,127,248,62,120,14,27,54,15,0,251,0,112,0,240, + 0,224,0,192,1,128,0,0,0,0,0,0,120,28,120,60, + 60,60,60,56,60,120,30,120,30,112,14,240,15,240,15,224, + 7,224,7,224,3,192,3,192,3,128,39,128,255,128,127,0, + 62,0,14,25,50,17,2,251,240,0,240,0,240,0,240,0, + 240,0,240,0,247,192,255,240,253,240,248,120,240,56,240,60, + 240,60,240,60,240,60,240,120,240,120,253,240,255,240,247,192, + 240,0,240,0,240,0,240,0,240,0,15,26,52,15,0,251, + 28,112,28,112,28,112,0,0,0,0,0,0,0,0,248,30, + 120,60,120,60,60,56,60,120,60,120,30,112,30,240,15,240, + 15,224,15,224,7,224,7,192,3,192,7,128,7,128,7,128, + 15,0,15,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--27-270-72-72-P-136-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 20 + Calculated Max Values w=16 h=21 x= 5 y= 9 dx=26 dy= 0 ascent=20 len=40 + Font Bounding box w=40 h=36 x=-2 y=-7 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =20 descent= 0 + X Font ascent =20 descent= 0 + Max Font ascent =20 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub20n[583] U8G_SECTION(".progmem.u8g_font_fub20n") = { + 0,40,36,254,249,20,0,0,0,0,42,57,0,20,252,20, + 0,11,11,22,17,3,9,17,0,59,128,59,128,27,0,238, + 224,255,224,206,96,27,0,59,128,59,128,17,0,16,16,32, + 26,5,0,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,255,255,255,255,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,6,7,7,8,1,252,60,56,56,112,112,112,224, + 7,4,4,9,1,5,254,254,254,254,4,4,4,9,3,0, + 240,240,240,240,8,21,21,12,2,255,7,7,7,6,14,14, + 12,28,28,24,56,56,56,48,112,112,96,224,224,224,192,14, + 20,40,15,1,0,15,128,31,224,60,240,120,112,112,56,240, + 56,240,56,240,60,240,60,240,60,240,60,240,60,240,60,240, + 56,240,56,112,56,120,120,60,240,31,224,15,128,8,20,20, + 15,3,0,15,63,127,255,239,207,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,14,20,40,15,1,0,7,192,31, + 240,63,248,124,120,120,60,120,60,0,60,0,120,0,120,0, + 240,1,240,3,224,7,192,15,128,31,0,124,0,248,0,255, + 252,255,252,255,252,13,20,40,15,1,0,15,128,63,224,127, + 240,248,240,240,120,0,120,0,120,0,240,15,224,15,128,15, + 224,0,240,0,120,0,120,240,120,240,120,248,240,127,240,63, + 224,31,128,14,20,40,15,1,0,1,240,3,240,3,240,7, + 240,7,240,14,240,30,240,28,240,60,240,56,240,120,240,112, + 240,240,240,255,252,255,252,255,252,0,240,0,240,0,240,0, + 240,13,20,40,15,1,0,255,240,255,240,255,240,240,0,240, + 0,240,0,240,0,247,192,255,224,253,240,240,120,240,120,0, + 120,0,120,0,120,240,120,240,240,127,240,63,224,31,128,13, + 20,40,15,1,0,15,192,31,224,63,240,120,120,120,120,112, + 0,240,0,247,192,239,224,253,240,248,120,240,120,240,120,240, + 120,240,120,112,120,120,240,63,240,63,224,15,128,13,20,40, + 15,1,0,255,248,255,248,255,248,0,120,0,120,0,240,0, + 240,1,224,1,224,1,224,3,192,3,192,7,128,7,128,15, + 128,15,0,31,0,30,0,30,0,62,0,14,20,40,15,1, + 0,31,192,63,240,127,240,120,248,240,120,240,120,240,120,120, + 240,63,224,31,192,63,240,120,120,240,56,240,60,240,60,240, + 60,248,120,127,248,63,240,31,192,13,20,40,15,1,0,15, + 128,63,192,127,224,120,240,240,112,240,120,240,120,240,120,240, + 120,120,248,127,184,63,56,0,120,0,120,0,112,240,240,120, + 240,127,224,63,192,15,128}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--27-270-72-72-P-136-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 20, '1' Height: 20 + Calculated Max Values w=27 h=29 x= 7 y=16 dx=28 dy= 0 ascent=22 len=100 + Font Bounding box w=40 h=36 x=-2 y=-7 + Calculated Min Values x= 0 y=-7 dx= 0 dy= 0 + Pure Font ascent =20 descent=-5 + X Font ascent =20 descent=-5 + Max Font ascent =22 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub20r[4022] U8G_SECTION(".progmem.u8g_font_fub20r") = { + 0,40,36,254,249,20,4,242,11,37,32,127,251,22,249,20, + 251,0,0,0,8,0,0,4,20,20,11,4,0,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,0,0,0,240,240, + 240,10,8,16,14,2,12,243,192,243,192,243,192,243,192,243, + 192,225,192,225,192,97,128,17,20,60,19,1,0,1,199,0, + 1,134,0,3,142,0,3,142,0,3,142,0,31,255,128,63, + 255,128,7,28,0,6,24,0,14,56,0,14,56,0,14,48, + 0,127,254,0,255,254,0,28,112,0,24,96,0,56,224,0, + 56,224,0,56,224,0,49,192,0,14,24,48,16,1,253,1, + 0,7,192,31,240,63,248,125,120,113,60,241,60,241,0,253, + 0,127,0,63,224,31,240,3,248,1,124,1,60,241,60,241, + 60,249,60,127,248,63,240,31,224,1,0,1,0,1,0,25, + 20,80,27,1,0,31,0,96,0,63,128,224,0,123,192,192, + 0,225,193,192,0,224,227,128,0,224,227,0,0,224,231,0, + 0,224,230,0,0,113,206,0,0,127,204,124,0,63,28,254, + 0,0,57,199,0,0,59,131,0,0,115,131,128,0,99,131, + 128,0,227,131,128,1,195,135,128,1,193,239,0,3,128,254, + 0,3,128,124,0,19,20,60,21,1,0,15,192,0,31,240, + 0,60,240,0,120,120,0,120,120,0,120,112,0,60,240,0, + 63,224,0,31,192,0,31,128,0,63,135,128,123,199,128,249, + 231,128,240,247,0,240,127,0,240,63,0,240,30,0,124,127, + 0,63,255,128,15,227,224,4,8,8,11,4,12,240,224,224, + 224,224,224,224,224,6,24,24,10,2,252,28,56,56,120,120, + 112,112,240,240,240,240,240,240,240,240,240,240,112,112,120,120, + 56,56,28,6,24,24,11,3,252,224,240,112,112,120,120,120, + 56,56,60,60,60,60,60,60,56,56,120,120,120,112,112,240, + 224,11,11,22,17,3,9,17,0,59,128,59,128,27,0,238, + 224,255,224,206,96,27,0,59,128,59,128,17,0,16,16,32, + 26,5,0,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,255,255,255,255,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,6,7,7,8,1,252,60,56,56,112,112,112,224, + 7,4,4,9,1,5,254,254,254,254,4,4,4,9,3,0, + 240,240,240,240,8,21,21,12,2,255,7,7,7,6,14,14, + 12,28,28,24,56,56,56,48,112,112,96,224,224,224,192,14, + 20,40,15,1,0,15,128,31,224,60,240,120,112,112,56,240, + 56,240,56,240,60,240,60,240,60,240,60,240,60,240,60,240, + 56,240,56,112,56,120,120,60,240,31,224,15,128,8,20,20, + 15,3,0,15,63,127,255,239,207,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,14,20,40,15,1,0,7,192,31, + 240,63,248,124,120,120,60,120,60,0,60,0,120,0,120,0, + 240,1,240,3,224,7,192,15,128,31,0,124,0,248,0,255, + 252,255,252,255,252,13,20,40,15,1,0,15,128,63,224,127, + 240,248,240,240,120,0,120,0,120,0,240,15,224,15,128,15, + 224,0,240,0,120,0,120,240,120,240,120,248,240,127,240,63, + 224,31,128,14,20,40,15,1,0,1,240,3,240,3,240,7, + 240,7,240,14,240,30,240,28,240,60,240,56,240,120,240,112, + 240,240,240,255,252,255,252,255,252,0,240,0,240,0,240,0, + 240,13,20,40,15,1,0,255,240,255,240,255,240,240,0,240, + 0,240,0,240,0,247,192,255,224,253,240,240,120,240,120,0, + 120,0,120,0,120,240,120,240,240,127,240,63,224,31,128,13, + 20,40,15,1,0,15,192,31,224,63,240,120,120,120,120,112, + 0,240,0,247,192,239,224,253,240,248,120,240,120,240,120,240, + 120,240,120,112,120,120,240,63,240,63,224,15,128,13,20,40, + 15,1,0,255,248,255,248,255,248,0,120,0,120,0,240,0, + 240,1,224,1,224,1,224,3,192,3,192,7,128,7,128,15, + 128,15,0,31,0,30,0,30,0,62,0,14,20,40,15,1, + 0,31,192,63,240,127,240,120,248,240,120,240,120,240,120,120, + 240,63,224,31,192,63,240,120,120,240,56,240,60,240,60,240, + 60,248,120,127,248,63,240,31,192,13,20,40,15,1,0,15, + 128,63,192,127,224,120,240,240,112,240,120,240,120,240,120,240, + 120,120,248,127,184,63,56,0,120,0,120,0,112,240,240,120, + 240,127,224,63,192,15,128,4,14,14,9,4,0,240,240,240, + 240,0,0,0,0,0,0,240,240,240,240,6,17,17,8,1, + 253,60,60,60,60,0,0,0,0,0,0,60,56,120,112,112, + 224,224,16,14,28,26,5,1,0,3,0,31,0,120,3,192, + 15,0,120,0,224,0,224,0,60,0,7,128,1,224,0,60, + 0,15,0,1,16,7,14,26,5,5,255,255,255,255,0,0, + 0,0,0,0,255,255,255,255,16,14,28,26,5,1,192,0, + 248,0,30,0,3,192,0,240,0,30,0,7,0,7,0,60, + 1,224,7,128,60,0,240,0,128,0,13,20,40,15,1,0, + 31,128,63,224,121,240,240,112,32,120,0,120,0,112,0,240, + 1,224,3,192,7,128,14,0,14,0,14,0,14,0,0,0, + 0,0,15,0,15,0,15,0,26,25,100,28,1,251,0,63, + 128,0,1,255,240,0,7,255,252,0,15,224,254,0,31,0, + 31,0,62,0,15,0,60,61,231,128,120,255,231,128,121,247, + 227,192,241,225,227,192,241,193,227,192,243,193,227,192,243,193, + 227,192,243,193,227,192,243,193,227,192,241,193,227,128,113,227, + 231,128,120,255,255,0,124,254,255,0,60,60,60,0,31,0, + 0,0,15,192,32,0,7,255,224,0,1,255,224,0,0,127, + 224,0,19,20,60,19,0,0,1,240,0,1,240,0,1,248, + 0,3,248,0,3,248,0,3,188,0,7,188,0,7,156,0, + 15,30,0,15,30,0,15,30,0,30,15,0,30,15,0,31, + 255,128,63,255,128,63,255,128,56,3,192,120,3,192,120,3, + 192,240,1,224,15,20,40,18,2,0,255,224,255,240,255,248, + 240,124,240,60,240,60,240,56,240,120,255,240,255,192,255,248, + 240,60,240,28,240,30,240,30,240,30,240,60,255,252,255,248, + 255,224,17,20,60,19,1,0,7,240,0,15,252,0,63,254, + 0,60,31,0,120,15,0,112,15,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 15,128,112,15,0,120,31,0,60,62,0,63,254,0,31,248, + 0,7,224,0,16,20,40,19,2,0,255,128,255,240,255,248, + 240,124,240,62,240,30,240,15,240,15,240,15,240,15,240,15, + 240,15,240,15,240,15,240,30,240,62,240,124,255,248,255,240, + 255,128,13,20,40,17,2,0,255,248,255,248,255,248,240,0, + 240,0,240,0,240,0,240,0,255,248,255,248,255,248,240,0, + 240,0,240,0,240,0,240,0,240,0,255,248,255,248,255,248, + 13,20,40,16,2,0,255,248,255,248,255,248,240,0,240,0, + 240,0,240,0,240,0,255,240,255,240,255,240,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,18,20, + 60,20,1,0,1,248,0,15,254,0,31,255,0,62,15,128, + 124,3,128,120,3,192,112,0,0,240,0,0,240,0,0,240, + 63,192,240,63,192,240,63,192,240,3,192,240,3,192,120,3, + 192,124,3,192,63,3,192,31,255,192,15,255,192,1,254,0, + 16,20,40,20,2,0,240,15,240,15,240,15,240,15,240,15, + 240,15,240,15,240,15,255,255,255,255,255,255,240,15,240,15, + 240,15,240,15,240,15,240,15,240,15,240,15,240,15,4,20, + 20,8,2,0,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,14,20,40,17,1,0,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,60,0,60,0,60,240,60,240,56,248,120, + 127,240,127,224,31,192,15,20,40,18,2,0,240,60,240,124, + 240,248,241,240,241,224,243,224,247,192,255,128,255,0,255,0, + 255,128,247,192,247,192,243,224,241,240,240,240,240,248,240,124, + 240,62,240,62,13,20,40,16,2,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,255,248,255,248, + 255,248,21,20,60,25,2,0,252,1,248,254,3,248,254,3, + 248,254,3,248,255,7,248,255,7,248,247,7,120,247,15,120, + 247,143,120,247,143,120,243,142,120,243,222,120,243,222,120,241, + 220,120,241,252,120,241,252,120,240,248,120,240,248,120,240,248, + 120,240,248,120,17,20,60,21,2,0,252,7,128,252,7,128, + 254,7,128,254,7,128,255,7,128,255,7,128,247,135,128,247, + 135,128,243,199,128,243,199,128,241,231,128,241,231,128,240,247, + 128,240,247,128,240,127,128,240,127,128,240,63,128,240,63,128, + 240,31,128,240,31,128,18,20,60,20,1,0,3,240,0,15, + 252,0,31,254,0,62,31,0,120,7,128,120,7,128,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,120,7,128,120,7,128,62,31,0,31, + 254,0,15,252,0,3,240,0,14,20,40,17,2,0,255,192, + 255,240,255,248,240,124,240,60,240,60,240,60,240,60,240,124, + 255,248,255,240,255,192,240,0,240,0,240,0,240,0,240,0, + 240,0,240,0,240,0,20,20,60,22,1,0,3,240,0,15, + 252,0,63,254,0,62,31,0,120,7,128,120,7,128,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,120,7,128,120,7,128,62,31,0,31, + 255,240,15,255,240,3,255,240,15,20,40,18,2,0,255,224, + 255,248,255,252,240,62,240,30,240,30,240,30,240,30,240,124, + 255,248,255,240,255,252,240,60,240,60,240,28,240,30,240,30, + 240,30,240,30,240,14,16,20,40,18,1,0,7,224,31,248, + 63,252,60,60,120,30,120,30,120,0,124,0,63,128,31,240, + 15,252,0,254,0,30,0,15,240,15,240,14,120,62,127,252, + 63,248,7,224,16,20,40,18,1,0,255,255,255,255,255,255, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,17,20,60,21,2,0,240,7,128,240,7,128,240,7, + 128,240,7,128,240,7,128,240,7,128,240,7,128,240,7,128, + 240,7,128,240,7,128,240,7,128,240,7,128,240,7,128,240, + 7,0,240,15,0,120,15,0,124,30,0,63,254,0,31,248, + 0,7,224,0,19,20,60,20,0,0,248,1,224,120,1,224, + 120,3,224,60,3,192,60,3,192,62,7,192,30,7,128,30, + 7,128,31,15,128,15,15,0,15,15,0,15,158,0,7,158, + 0,7,158,0,7,252,0,3,252,0,3,252,0,1,248,0, + 1,248,0,1,240,0,27,20,80,27,0,0,248,31,3,224, + 120,31,3,192,120,31,3,192,120,63,131,192,120,63,131,192, + 60,59,135,128,60,59,135,128,60,123,199,128,60,123,199,128, + 28,113,199,0,30,113,207,0,30,241,239,0,30,241,239,0, + 14,224,238,0,14,224,238,0,15,224,254,0,15,224,254,0, + 7,192,124,0,7,192,124,0,7,192,124,0,17,20,60,19, + 1,0,248,15,128,120,15,0,124,30,0,62,30,0,30,60, + 0,31,120,0,15,120,0,7,240,0,7,224,0,3,224,0, + 7,224,0,7,240,0,15,240,0,30,120,0,30,124,0,60, + 60,0,60,30,0,120,31,0,240,15,0,240,7,128,16,20, + 40,17,1,0,240,31,248,30,120,30,124,60,60,60,60,120, + 30,120,30,240,15,240,15,224,7,224,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,15,20,40,17, + 1,0,127,254,127,254,127,254,0,62,0,124,0,248,0,248, + 1,240,3,224,7,224,7,192,15,128,31,0,63,0,62,0, + 124,0,248,0,255,254,255,254,255,254,6,25,25,10,2,251, + 252,252,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,252,252,9,21,42,12,1,255,224, + 0,96,0,112,0,112,0,48,0,56,0,56,0,56,0,24, + 0,28,0,28,0,12,0,14,0,14,0,6,0,6,0,7, + 0,7,0,3,0,3,128,3,128,7,25,25,11,2,251,254, + 254,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30, + 30,30,30,30,30,30,254,254,13,17,34,27,7,0,2,0, + 7,0,5,0,5,0,13,128,8,128,24,192,24,192,16,64, + 48,96,48,96,32,32,96,48,64,16,192,24,192,24,128,8, + 14,2,4,14,0,252,255,252,255,252,5,5,5,7,0,16, + 224,112,112,56,24,12,14,28,15,1,0,31,128,63,224,121, + 240,112,240,0,240,63,240,127,240,248,240,240,240,240,240,240, + 240,251,240,127,112,62,112,14,20,40,17,2,0,240,0,240, + 0,240,0,240,0,240,0,240,0,247,192,255,240,253,240,248, + 120,240,120,240,60,240,60,240,60,240,60,240,56,248,120,252, + 240,255,240,243,192,12,14,28,14,1,0,31,128,63,224,121, + 224,112,224,240,240,240,0,240,0,240,0,240,0,240,240,240, + 224,121,224,63,192,31,128,14,20,40,16,1,0,0,60,0, + 60,0,60,0,60,0,60,0,60,31,188,63,252,124,252,120, + 124,240,60,240,60,240,60,240,60,240,60,240,60,120,124,125, + 252,63,188,15,60,13,14,28,15,1,0,15,128,63,224,121, + 240,112,240,240,240,255,240,255,248,240,0,240,0,240,240,112, + 240,121,240,63,224,31,128,10,20,40,11,1,0,15,192,31, + 192,62,64,60,0,60,0,60,0,255,128,255,128,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,14,19,38,16,1,251,31,188,63,252,124, + 252,120,124,240,60,240,60,240,60,240,60,240,60,240,60,112, + 124,124,252,63,188,15,60,0,60,120,56,124,248,63,240,15, + 192,13,20,40,16,2,0,240,0,240,0,240,0,240,0,240, + 0,240,0,247,192,255,240,253,240,248,120,240,120,240,120,240, + 120,240,120,240,120,240,120,240,120,240,120,240,120,240,120,4, + 20,20,6,1,0,240,240,240,240,0,0,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,5,25,25,9,3,251,120, + 120,120,120,0,0,120,120,120,120,120,120,120,120,120,120,120, + 120,120,120,120,120,248,248,240,12,20,40,15,2,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,240,241,224,243,192, + 247,128,255,128,255,0,255,0,255,0,247,128,247,192,243,192, + 241,224,241,240,240,240,4,20,20,7,2,0,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 22,14,42,25,2,0,243,227,224,255,247,248,253,254,248,240, + 120,120,240,120,60,240,120,60,240,120,60,240,120,60,240,120, + 60,240,120,60,240,120,60,240,120,60,240,120,60,240,120,60, + 13,14,28,16,2,0,247,192,255,240,253,240,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,120, + 240,120,14,14,28,16,1,0,15,192,63,224,124,240,120,120, + 240,60,240,60,240,60,240,60,240,60,240,60,120,120,124,248, + 63,240,15,192,14,19,38,17,2,251,243,192,255,240,253,240, + 248,120,240,56,240,60,240,60,240,60,240,60,240,120,240,120, + 253,248,255,240,247,192,240,0,240,0,240,0,240,0,240,0, + 14,19,38,16,1,251,15,60,63,252,125,252,120,124,240,60, + 240,60,240,60,240,60,240,60,240,60,120,124,124,252,63,252, + 31,188,0,60,0,60,0,60,0,60,0,60,9,14,28,11, + 2,0,247,128,255,128,255,128,252,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,12,14, + 28,14,1,0,31,128,127,192,123,224,241,224,240,0,126,0, + 127,192,31,224,1,240,240,240,240,240,249,224,127,192,31,128, + 10,18,36,12,1,0,2,0,14,0,30,0,30,0,255,192, + 255,192,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,31,0,15,192,7,192,13,14,28,16,2,0, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,120, + 240,120,240,120,240,248,249,248,127,248,62,120,14,14,28,15, + 0,0,240,60,120,60,120,60,56,120,60,120,60,112,28,240, + 30,240,30,224,15,224,15,224,15,192,7,192,7,192,23,14, + 42,23,0,0,240,124,30,112,124,28,120,124,60,120,254,60, + 56,238,60,60,238,56,61,239,120,61,231,120,29,199,112,31, + 199,240,31,199,240,15,131,224,15,131,224,15,131,224,13,14, + 28,15,1,0,240,120,120,240,124,224,61,224,31,192,31,128, + 15,128,31,128,31,192,63,224,57,224,120,240,240,248,240,120, + 14,19,38,15,0,251,248,60,120,60,120,60,60,120,60,120, + 60,112,30,240,30,240,14,224,15,224,15,224,7,192,7,192, + 3,192,7,128,7,128,7,128,15,0,15,0,11,14,28,13, + 1,0,255,224,255,224,1,224,3,224,7,192,7,128,15,0, + 30,0,60,0,124,0,248,0,240,0,255,224,255,224,10,27, + 54,13,2,249,3,192,15,192,31,128,30,0,30,0,30,0, + 30,0,30,0,30,0,28,0,28,0,60,0,248,0,224,0, + 248,0,124,0,60,0,28,0,30,0,30,0,30,0,30,0, + 30,0,30,0,31,128,15,192,7,192,2,29,29,10,4,249, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,10,27,54, + 14,2,249,240,0,252,0,124,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,15,0,7,192,3,192,7, + 192,15,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,124,0,252,0,240,0,14,3,6,14,0,5,63, + 156,127,248,225,240,255}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--34-340-72-72-P-170-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 25, '1' Height: 25 + Calculated Max Values w=34 h=37 x= 8 y=22 dx=35 dy= 0 ascent=37 len=160 + Font Bounding box w=50 h=46 x=-2 y=-9 + Calculated Min Values x=-1 y=-9 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =37 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub25[12908] U8G_SECTION(".progmem.u8g_font_fub25") = { + 0,50,46,254,247,25,7,111,16,148,32,255,249,37,247,25, + 249,0,0,0,10,0,0,5,25,25,14,5,0,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 0,0,248,248,248,248,13,10,20,18,2,15,248,248,248,248, + 248,248,120,248,120,120,120,120,120,120,120,120,120,112,120,112, + 21,25,75,24,2,0,0,224,224,0,225,224,0,225,192,1, + 225,192,1,195,192,1,195,128,31,255,248,31,255,240,63,255, + 240,7,135,0,7,135,0,7,15,0,7,14,0,15,14,0, + 14,14,0,255,255,192,255,255,192,255,255,192,28,60,0,28, + 60,0,60,56,0,56,56,0,56,120,0,120,112,0,112,112, + 0,18,31,93,20,1,252,0,192,0,0,192,0,3,248,0, + 15,252,0,31,254,0,63,255,0,126,223,0,120,207,128,248, + 207,128,248,192,0,252,192,0,126,192,0,127,192,0,127,240, + 0,31,252,0,7,255,0,1,255,128,0,255,128,0,207,128, + 0,199,192,248,199,192,248,199,192,248,207,128,126,223,128,127, + 255,0,63,254,0,15,252,0,3,240,0,0,192,0,0,192, + 0,0,192,0,32,26,104,34,1,0,0,0,3,128,15,192, + 7,0,63,240,7,0,124,248,14,0,120,120,14,0,240,60, + 28,0,240,60,24,0,240,60,56,0,240,60,112,0,240,60, + 112,0,120,120,224,0,120,120,224,0,63,241,199,248,15,195, + 143,252,0,3,159,62,0,7,30,30,0,7,60,15,0,14, + 60,15,0,30,60,15,0,28,60,15,0,56,60,15,0,56, + 60,15,0,112,30,30,0,112,15,60,0,224,15,252,1,224, + 3,240,24,25,75,27,2,1,7,252,0,31,254,0,31,255, + 0,62,31,0,62,31,0,62,31,0,62,31,0,30,62,0, + 31,126,0,15,252,0,7,240,0,15,224,0,63,224,124,63, + 240,120,124,248,120,252,124,120,248,62,120,248,31,248,248,15, + 240,248,7,240,252,3,224,126,15,240,63,255,248,31,255,254, + 7,252,63,5,10,10,14,4,15,248,248,120,120,120,120,120, + 120,120,120,7,30,30,13,3,251,30,30,62,60,60,124,124, + 120,120,248,248,248,248,248,248,248,248,248,248,248,248,120,120, + 124,124,60,60,62,30,30,8,30,30,14,3,251,240,120,120, + 124,60,60,60,62,62,30,30,30,30,31,31,31,31,31,30, + 30,30,62,62,62,60,60,124,120,120,240,14,13,26,22,4, + 13,28,224,60,240,28,224,15,192,135,132,255,252,255,252,231, + 156,15,192,30,224,28,224,60,240,8,64,20,21,63,34,7, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,96,0,255,255,240,255, + 255,240,0,96,0,0,96,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 7,9,9,11,2,251,62,60,60,120,120,112,240,240,224,9, + 5,10,11,1,7,255,128,255,128,255,128,255,128,255,128,5, + 5,5,10,3,0,248,248,248,248,248,11,28,56,15,2,254, + 0,224,0,224,1,192,1,192,1,192,3,128,3,128,3,128, + 3,128,7,0,7,0,7,0,14,0,14,0,14,0,28,0, + 28,0,28,0,56,0,56,0,56,0,56,0,112,0,112,0, + 112,0,224,0,224,0,224,0,17,25,75,19,1,1,7,224, + 0,31,252,0,63,254,0,60,30,0,120,15,0,120,15,0, + 120,15,0,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,248,15,128,248,15, + 128,248,15,128,120,15,0,120,15,0,120,15,0,60,30,0, + 31,252,0,15,248,0,7,224,0,11,25,50,19,3,1,3, + 224,15,224,31,224,127,224,255,224,251,224,243,224,195,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,17,25,75,19,1,1,7,248,0,31,254,0,31,255,0, + 63,255,0,126,31,128,124,15,128,124,15,128,0,15,128,0, + 15,128,0,31,0,0,31,0,0,62,0,0,126,0,0,252, + 0,1,248,0,3,240,0,7,224,0,15,192,0,63,0,0, + 126,0,0,252,0,0,255,255,128,255,255,128,255,255,128,255, + 255,128,16,25,50,19,2,1,31,240,63,252,127,254,255,254, + 248,62,248,31,0,31,0,30,0,126,7,252,7,240,7,248, + 7,252,0,62,0,31,0,31,0,31,248,31,248,31,248,31, + 252,62,127,254,127,252,31,248,15,224,18,25,75,19,1,1, + 0,126,0,0,254,0,0,254,0,1,254,0,3,254,0,3, + 254,0,7,190,0,15,190,0,15,62,0,30,62,0,30,62, + 0,60,62,0,124,62,0,120,62,0,240,62,0,255,255,192, + 255,255,192,255,255,192,255,255,192,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,17,25,75,19,1, + 1,255,254,0,255,254,0,255,254,0,255,254,0,248,0,0, + 248,0,0,248,0,0,248,0,0,249,240,0,255,252,0,255, + 254,0,252,63,0,248,31,0,248,15,0,0,15,128,0,15, + 128,0,15,128,0,15,0,248,15,0,248,31,0,252,63,0, + 127,254,0,127,252,0,63,248,0,15,224,0,17,25,75,19, + 1,1,3,240,0,15,252,0,31,254,0,63,255,0,62,31, + 0,126,15,128,124,0,0,124,0,0,252,0,0,248,248,0, + 251,254,0,255,254,0,255,31,0,254,15,128,252,15,128,252, + 15,128,252,15,128,252,15,128,124,15,128,126,15,128,127,31, + 0,63,255,0,31,254,0,15,252,0,3,240,0,16,25,50, + 19,2,1,255,255,255,255,255,255,255,255,0,15,0,31,0, + 30,0,62,0,62,0,124,0,124,0,248,0,248,0,240,1, + 240,1,240,3,224,3,224,7,192,7,192,15,128,15,128,15, + 128,31,0,31,0,17,25,75,19,1,1,7,240,0,31,252, + 0,127,255,0,127,255,0,252,31,128,248,15,128,248,15,128, + 120,15,0,124,31,0,63,254,0,15,248,0,31,248,0,63, + 254,0,124,63,0,248,15,0,248,15,128,248,15,128,248,15, + 128,248,15,128,248,15,128,252,31,128,127,255,0,127,255,0, + 31,252,0,7,240,0,17,25,75,19,1,1,7,240,0,31, + 252,0,63,254,0,127,254,0,124,63,0,248,31,0,248,31, + 0,248,31,128,248,31,128,248,31,128,248,63,128,124,63,128, + 127,255,128,63,239,128,15,207,128,0,15,128,0,31,0,0, + 31,0,248,31,0,120,63,0,124,126,0,63,254,0,63,252, + 0,31,248,0,7,224,0,5,18,18,11,5,0,248,248,248, + 248,248,0,0,0,0,0,0,0,0,248,248,248,248,248,7, + 22,22,11,2,252,62,62,62,62,62,0,0,0,0,0,0, + 0,0,62,60,124,120,120,112,240,224,224,21,19,57,34,7, + 1,0,0,8,0,0,56,0,1,248,0,15,192,0,62,0, + 1,248,0,7,192,0,62,0,0,248,0,0,192,0,0,248, + 0,0,62,0,0,7,192,0,1,248,0,0,62,0,0,7, + 192,0,1,248,0,0,56,0,0,8,20,8,24,34,7,6, + 255,255,240,255,255,240,0,0,0,0,0,0,0,0,0,0, + 0,0,255,255,240,255,255,240,21,17,51,34,7,2,224,0, + 0,248,0,0,63,0,0,7,224,0,0,248,0,0,63,0, + 0,7,192,0,0,248,0,0,56,0,0,248,0,7,192,0, + 63,0,0,248,0,7,224,0,31,0,0,248,0,0,224,0, + 0,16,25,50,19,1,1,31,240,63,248,127,252,248,62,112, + 30,48,31,0,31,0,30,0,62,0,60,0,120,0,240,1, + 224,3,192,3,128,3,128,3,128,3,128,3,128,0,0,0, + 0,7,192,7,192,7,192,7,192,33,32,160,35,1,250,0, + 31,254,0,0,0,127,255,128,0,1,255,255,224,0,3,255, + 255,240,0,7,240,3,248,0,15,192,1,252,0,31,128,0, + 124,0,63,7,159,126,0,62,31,255,63,0,124,63,255,31, + 0,124,127,255,31,0,120,126,63,31,0,248,252,31,15,0, + 248,248,31,15,128,248,248,31,15,128,248,248,31,15,128,248, + 248,31,15,0,248,248,31,15,0,248,248,31,15,0,248,248, + 31,31,0,120,124,63,30,0,124,124,127,190,0,124,63,255, + 252,0,62,31,231,248,0,63,7,195,240,0,31,128,0,0, + 0,15,192,0,0,0,7,248,3,0,0,3,255,255,0,0, + 1,255,255,0,0,0,127,255,0,0,0,7,255,0,0,23, + 25,75,24,1,0,0,124,0,0,252,0,0,254,0,0,254, + 0,1,254,0,1,255,0,3,255,0,3,207,0,3,207,128, + 7,207,128,7,135,192,7,135,192,15,135,192,15,3,224,31, + 3,224,31,3,240,31,255,240,63,255,240,63,255,248,127,255, + 248,124,0,248,124,0,252,248,0,124,248,0,126,240,0,62, + 19,25,75,23,2,0,255,248,0,255,254,0,255,255,0,255, + 255,0,248,63,0,248,15,128,248,15,128,248,15,0,248,15, + 0,248,63,0,255,254,0,255,248,0,255,252,0,255,255,0, + 248,15,192,248,3,192,248,3,224,248,3,224,248,3,224,248, + 3,224,248,7,224,255,255,192,255,255,128,255,255,0,255,252, + 0,21,25,75,25,2,1,3,255,0,15,255,192,31,255,224, + 63,255,240,62,3,240,124,1,240,120,1,248,120,0,248,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,1,248,120,1,248,124,1,248, + 124,3,240,63,7,240,31,255,224,15,255,192,7,255,0,1, + 252,0,20,25,75,23,2,0,255,224,0,255,252,0,255,254, + 0,255,255,0,248,63,128,248,15,192,248,7,192,248,3,224, + 248,3,224,248,1,224,248,1,224,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,224,248,3,224,248,3,224,248,7, + 192,248,15,192,248,63,128,255,255,0,255,254,0,255,252,0, + 255,224,0,17,25,75,21,2,0,255,255,0,255,255,0,255, + 255,0,255,255,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,255,255,0,255,255,0,255,255,0, + 255,255,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,255,255,128,255,255,128,255,255, + 128,255,255,128,16,25,50,19,2,0,255,255,255,255,255,255, + 255,255,248,0,248,0,248,0,248,0,248,0,248,0,255,254, + 255,254,255,254,255,254,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,22,25,75,26, + 2,1,1,255,192,7,255,224,15,255,240,31,255,248,63,0, + 248,62,0,124,124,0,124,124,0,0,248,0,0,248,0,0, + 248,0,0,248,7,252,248,7,252,248,7,252,248,7,252,248, + 0,124,248,0,124,124,0,124,126,0,124,63,0,124,63,192, + 124,31,255,252,15,255,252,3,255,252,0,127,192,20,25,75, + 24,2,0,248,1,240,248,1,240,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,240,248,1,240,248,1,240,248,1, + 240,255,255,240,255,255,240,255,255,240,255,255,240,248,1,240, + 248,1,240,248,1,240,248,1,240,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,240,248,1,240,248,1,240,5,25, + 25,9,2,0,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,17,25,75, + 21,2,0,0,15,128,0,15,128,0,15,128,0,15,128,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,0,15,128,0,15,128,0,15,128,0,15,128,0,15,128, + 0,15,128,0,15,128,248,15,128,248,15,128,248,15,128,252, + 31,0,127,255,0,127,254,0,63,252,0,15,240,0,19,25, + 75,23,2,0,248,7,192,248,15,128,248,31,128,248,63,0, + 248,126,0,248,124,0,248,248,0,249,248,0,251,240,0,251, + 224,0,255,192,0,255,192,0,255,224,0,255,240,0,251,240, + 0,249,248,0,249,252,0,248,252,0,248,126,0,248,63,0, + 248,63,128,248,31,128,248,15,192,248,15,224,248,7,224,16, + 25,50,19,2,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,255, + 255,255,255,255,255,255,255,27,25,100,31,2,0,255,0,31, + 224,255,0,63,224,255,128,63,224,255,128,63,224,255,128,127, + 224,255,192,127,224,255,192,123,224,251,192,123,224,251,224,251, + 224,251,224,243,224,251,224,243,224,249,241,243,224,249,241,243, + 224,249,241,227,224,248,243,227,224,248,251,227,224,248,251,195, + 224,248,127,195,224,248,127,195,224,248,127,131,224,248,127,131, + 224,248,63,131,224,248,63,131,224,248,63,3,224,248,31,3, + 224,21,25,75,25,2,0,254,0,248,255,0,248,255,0,248, + 255,128,248,255,128,248,255,192,248,255,192,248,251,224,248,251, + 224,248,249,224,248,249,240,248,248,240,248,248,248,248,248,120, + 248,248,124,248,248,60,248,248,62,248,248,30,248,248,31,248, + 248,31,248,248,15,248,248,15,248,248,7,248,248,7,248,248, + 3,248,23,25,75,27,2,1,3,255,128,7,255,192,31,255, + 240,31,255,240,63,1,248,126,0,252,124,0,124,120,0,60, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,124,0,124,124,0, + 124,62,0,248,63,131,248,31,255,240,15,255,224,7,255,192, + 0,254,0,18,25,75,21,2,0,255,240,0,255,252,0,255, + 255,0,255,255,128,248,31,128,248,15,128,248,7,192,248,7, + 192,248,7,192,248,15,128,248,31,128,255,255,128,255,255,0, + 255,252,0,255,240,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,26,25,100,29,2,1,3,255,128,0,7,255, + 192,0,31,255,224,0,31,255,240,0,63,1,248,0,126,0, + 252,0,124,0,124,0,120,0,60,0,248,0,62,0,248,0, + 62,0,248,0,62,0,248,0,62,0,248,0,62,0,248,0, + 62,0,248,0,62,0,248,0,62,0,120,0,60,0,124,0, + 124,0,124,0,124,0,62,0,248,0,63,131,240,0,31,255, + 255,192,15,255,255,192,3,255,255,192,0,255,255,192,19,25, + 75,22,2,0,255,252,0,255,255,0,255,255,128,255,255,192, + 248,15,192,248,7,224,248,3,224,248,3,224,248,3,192,248, + 7,192,248,31,128,255,255,0,255,252,0,255,255,0,255,255, + 128,248,15,128,248,7,192,248,7,192,248,7,192,248,3,192, + 248,3,192,248,3,192,248,3,224,248,3,224,248,3,224,20, + 25,75,23,2,1,7,254,0,15,255,0,31,255,128,63,255, + 192,126,7,192,124,3,192,124,3,224,124,0,0,124,0,0, + 127,0,0,63,240,0,31,254,0,7,255,128,1,255,192,0, + 31,224,0,3,224,0,1,240,248,1,240,248,1,240,248,3, + 224,126,7,224,127,255,192,63,255,128,15,255,0,3,248,0, + 20,25,75,22,1,0,255,255,240,255,255,240,255,255,240,255, + 255,240,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,21,25,75,25,2,0,248,0,248,248,0,248,248,0,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,240,248,0,240,120,1,240, + 124,3,240,127,7,224,63,255,192,31,255,128,15,255,0,3, + 252,0,24,25,75,25,1,0,248,0,63,248,0,62,252,0, + 62,124,0,124,124,0,124,126,0,124,62,0,248,63,0,248, + 63,1,240,31,1,240,31,129,240,31,131,224,15,131,224,15, + 195,224,7,199,192,7,199,192,7,231,128,3,239,128,3,255, + 128,3,255,0,1,255,0,1,254,0,1,254,0,0,254,0, + 0,252,0,34,25,125,34,0,0,252,3,240,15,192,252,3, + 240,15,128,124,3,240,15,128,126,7,248,15,128,126,7,248, + 15,128,126,7,248,31,0,62,7,248,31,0,62,15,252,31, + 0,63,15,60,30,0,63,15,60,62,0,31,15,60,62,0, + 31,31,62,62,0,31,30,30,60,0,31,158,30,60,0,15, + 158,30,124,0,15,190,31,124,0,15,188,15,120,0,7,252, + 15,120,0,7,252,15,120,0,7,252,15,248,0,7,248,7, + 240,0,3,248,7,240,0,3,248,7,240,0,3,248,7,240, + 0,3,240,3,224,0,22,25,75,24,1,0,252,0,248,126, + 1,248,62,1,240,63,3,224,31,135,192,15,135,192,15,207, + 128,7,239,0,3,255,0,3,254,0,1,252,0,0,252,0, + 0,252,0,1,254,0,3,254,0,3,255,0,7,223,128,15, + 143,128,15,15,192,31,7,224,62,3,224,62,3,240,124,1, + 248,248,1,248,248,0,252,21,25,75,22,1,0,252,1,248, + 252,1,240,126,3,224,126,3,224,63,7,192,31,7,192,31, + 143,128,15,143,128,15,223,0,7,223,0,7,254,0,3,254, + 0,3,252,0,1,248,0,1,248,0,0,240,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,18,25,75,22,2,0,127,255, + 192,127,255,192,127,255,192,127,255,192,0,15,192,0,31,128, + 0,63,0,0,63,0,0,126,0,0,252,0,1,252,0,1, + 248,0,3,240,0,7,224,0,7,224,0,15,192,0,31,128, + 0,63,128,0,63,0,0,126,0,0,252,0,0,255,255,192, + 255,255,192,255,255,192,255,255,192,8,32,32,13,3,249,255, + 255,255,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,255,255,255,11, + 28,56,15,2,254,224,0,224,0,240,0,240,0,240,0,112, + 0,120,0,120,0,56,0,60,0,60,0,28,0,30,0,30, + 0,30,0,15,0,15,0,15,0,7,0,7,128,7,128,3, + 128,3,192,3,192,1,192,1,224,1,224,1,224,8,32,32, + 13,3,249,255,255,255,31,31,31,31,31,31,31,31,31,31, + 31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31, + 255,255,255,18,21,63,34,8,0,0,192,0,0,224,0,1, + 224,0,1,224,0,1,48,0,3,48,0,2,24,0,6,24, + 0,6,24,0,4,12,0,12,12,0,12,14,0,24,6,0, + 24,6,0,24,7,0,48,3,0,48,3,0,112,1,128,96, + 1,128,96,1,192,192,0,192,17,3,9,17,0,251,255,255, + 128,255,255,128,255,255,128,7,7,7,9,255,21,248,120,60, + 60,28,14,6,15,18,36,19,2,0,7,224,63,248,127,252, + 124,62,120,62,0,62,15,254,63,254,127,254,124,62,248,62, + 248,62,248,62,248,62,252,126,127,254,63,222,31,30,17,25, + 75,20,2,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,249,240,0,255,252,0,255, + 254,0,254,63,0,252,31,0,248,15,128,248,15,128,248,15, + 128,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 252,31,0,254,63,0,255,254,0,251,252,0,249,240,0,15, + 18,36,18,2,0,7,224,31,248,63,252,124,124,120,60,248, + 62,248,0,248,0,248,0,248,0,248,0,248,62,248,62,120, + 60,124,124,63,252,31,248,15,224,17,25,75,21,2,0,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,0,15,128,7,207,128,31,255,128,63,255,128,126,63,128, + 124,31,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,124,31,128,126,63, + 128,63,255,128,31,239,128,7,207,128,15,18,36,19,2,0, + 7,224,31,248,63,252,124,60,120,62,248,30,248,30,255,254, + 255,254,255,254,248,0,248,0,248,30,120,62,124,62,63,252, + 31,248,7,224,12,25,50,13,1,0,7,240,15,240,31,240, + 31,0,31,0,31,0,31,0,255,224,255,224,255,224,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,17,25,75,21, + 2,249,7,207,128,31,255,128,63,255,128,126,63,128,124,31, + 128,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,124,31,128,126,63,128,63, + 255,128,31,239,128,7,207,128,0,15,128,0,15,128,124,15, + 128,124,31,0,63,254,0,31,252,0,7,240,0,16,25,50, + 20,2,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,249,248,255,252,255,254,254,63,252,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,5,25,25,9,2,0,248,248,248,248,248, + 0,0,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,6,32,32,12,4,249,124,124,124,124,124,0, + 0,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124, + 124,124,124,124,124,124,252,252,248,240,16,25,50,19,2,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,62, + 248,124,248,248,249,248,249,240,251,224,255,192,255,192,255,192, + 255,192,251,224,251,240,249,240,248,248,248,252,248,124,248,126, + 248,63,5,25,25,9,2,0,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,27,18,72,31,2,0,249,248,62,0,251,252,127,128,255, + 254,255,192,254,63,199,192,252,63,135,192,248,31,3,224,248, + 31,3,224,248,31,3,224,248,31,3,224,248,31,3,224,248, + 31,3,224,248,31,3,224,248,31,3,224,248,31,3,224,248, + 31,3,224,248,31,3,224,248,31,3,224,248,31,3,224,16, + 18,36,20,2,0,249,248,251,252,255,254,252,63,252,31,248, + 31,248,31,248,31,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,18,18,54,21,2,0,3, + 240,0,15,252,0,63,254,0,62,31,0,124,15,128,120,15, + 128,248,7,128,248,7,128,248,7,192,248,7,192,248,7,192, + 248,7,128,120,15,128,124,15,128,62,31,0,63,254,0,15, + 252,0,3,240,0,17,25,75,20,2,249,249,240,0,251,252, + 0,255,254,0,254,63,0,252,31,0,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,252,31,0,254,63,0,255,254,0,255,252,0,249,240, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,17,25,75,21,2,249,7,207,128,31, + 239,128,63,255,128,126,63,128,124,31,128,248,15,128,248,15, + 128,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 248,15,128,124,31,128,126,63,128,63,255,128,31,255,128,7, + 207,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,0,15,128,0,15,128,11,18,36,13,2,0,249,224,251, + 224,255,224,255,224,255,0,252,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,15,18,36,18,2,0,15,224,63,248,127,248,124,124,248, + 124,248,124,126,0,127,192,63,248,15,252,1,252,0,126,248, + 62,248,62,248,124,127,252,63,248,15,192,13,23,46,14,1, + 0,1,0,7,0,31,0,31,0,31,0,255,240,255,240,255, + 240,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,15,128,15,248,7,248,3,240,16, + 18,36,20,2,0,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,248,31,248,31,248,31,248, + 31,252,63,127,255,63,223,31,159,18,18,54,19,0,0,248, + 7,192,124,7,192,124,15,128,124,15,128,62,15,128,62,31, + 0,62,31,0,31,30,0,31,30,0,15,62,0,15,188,0, + 15,188,0,7,252,0,7,248,0,7,248,0,3,240,0,3, + 240,0,1,240,0,29,18,72,29,0,0,248,15,128,248,124, + 31,192,240,124,31,193,240,124,31,193,240,124,31,225,224,62, + 63,225,224,62,61,227,224,62,61,227,224,31,125,243,192,31, + 120,247,192,31,120,247,192,15,248,255,128,15,248,127,128,15, + 240,127,128,15,240,127,128,7,240,127,0,7,224,63,0,7, + 224,63,0,17,18,54,19,1,0,252,31,0,124,31,0,126, + 62,0,63,60,0,31,124,0,15,248,0,15,248,0,7,240, + 0,7,224,0,7,240,0,15,248,0,31,248,0,30,252,0, + 62,126,0,60,62,0,124,63,0,248,31,0,248,15,128,17, + 25,75,18,1,249,248,15,128,248,15,128,248,15,0,124,31, + 0,124,31,0,124,30,0,62,62,0,62,60,0,30,60,0, + 31,124,0,31,120,0,15,248,0,15,248,0,15,240,0,7, + 240,0,7,240,0,3,224,0,3,224,0,3,224,0,3,192, + 0,7,192,0,7,128,0,7,128,0,15,128,0,15,128,0, + 14,18,36,18,2,0,255,252,255,252,255,252,0,124,0,248, + 1,248,3,240,7,224,7,192,15,128,31,128,63,0,126,0, + 124,0,248,0,255,252,255,252,255,252,13,35,70,18,3,248, + 0,248,3,248,7,248,15,192,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,0,15,0,15,0,31,0,126,0, + 252,0,240,0,252,0,126,0,63,0,31,0,15,0,15,0, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,192, + 7,248,3,248,0,248,2,37,37,12,5,247,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,13,35,70,17,2,248,248,0,254,0,255,0,31,0,15, + 0,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,7,128,7,192,3,224,1,248,0,248,1,248,3,224,7, + 192,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,0,31,0,255,0,254,0,248,0,18,4,12, + 18,0,7,31,195,192,63,255,128,127,255,0,240,126,0,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 0,0,0,10,0,0,5,25,25,13,4,249,248,248,248,248, + 0,0,0,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,15,26,52,19,2,252,0,48,0,48,0, + 48,0,32,7,224,31,248,63,252,124,252,120,254,248,254,249, + 128,249,128,249,128,249,0,251,0,251,62,251,62,126,62,126, + 124,63,252,31,248,15,224,12,0,24,0,24,0,24,0,17, + 25,75,20,2,1,7,254,0,15,255,0,31,255,0,31,15, + 128,62,15,128,62,0,0,62,0,0,62,0,0,62,0,0, + 255,240,0,255,240,0,255,240,0,62,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,255,255,128,255,255,128,255,255,128, + 18,19,57,20,1,6,64,0,128,224,1,192,115,227,128,63, + 255,0,30,30,0,28,14,0,24,6,0,48,3,0,48,3, + 0,48,3,0,48,3,0,48,3,0,24,6,0,28,14,0, + 30,30,0,63,255,0,115,243,128,224,1,192,64,0,128,19, + 25,75,21,1,0,248,3,224,248,7,224,124,7,192,124,7, + 192,62,15,128,62,15,128,31,31,0,255,31,224,255,191,224, + 15,190,0,7,252,0,7,252,0,3,248,0,255,255,224,255, + 255,224,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 2,33,33,12,5,249,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,0,0,0,0,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,14,31,62,16,1,251,31,240,63, + 248,127,248,124,24,248,0,248,0,124,0,126,0,63,128,31, + 192,31,240,63,248,124,248,248,124,240,60,240,120,240,120,253, + 240,127,224,63,192,31,224,7,240,1,248,0,252,0,124,0, + 124,128,248,225,248,255,240,255,224,63,128,11,4,8,11,0, + 22,241,224,241,224,241,224,241,224,25,25,100,29,2,1,0, + 255,192,0,3,255,224,0,15,0,120,0,30,0,60,0,24, + 63,14,0,56,127,134,0,112,255,199,0,97,227,195,0,225, + 193,227,128,195,193,225,128,195,192,1,128,195,192,1,128,195, + 192,1,128,195,192,1,128,195,193,225,128,227,193,227,128,97, + 227,195,0,113,255,195,0,48,255,135,0,56,62,14,0,28, + 0,28,0,15,0,120,0,7,193,240,0,1,255,224,0,0, + 127,0,0,12,17,34,14,1,8,15,128,63,192,56,224,112, + 224,0,224,15,224,63,224,120,224,112,224,112,224,121,224,63, + 224,30,96,0,0,0,0,255,240,255,240,17,14,42,21,2, + 2,31,15,128,30,31,0,62,31,0,60,62,0,124,62,0, + 124,124,0,248,124,0,248,124,0,124,124,0,124,62,0,60, + 62,0,62,31,0,30,15,0,31,15,128,18,8,24,21,2, + 7,255,255,192,255,255,192,0,0,192,0,0,192,0,0,192, + 0,0,192,0,0,192,0,0,192,255,25,25,100,29,2,1, + 0,255,192,0,3,255,224,0,15,0,120,0,30,0,60,0, + 25,255,142,0,57,255,198,0,113,255,231,0,97,193,227,0, + 225,192,227,128,193,193,225,128,193,255,129,128,193,255,129,128, + 193,255,193,128,193,193,193,128,193,193,193,128,225,192,227,128, + 97,192,227,0,113,192,227,0,49,192,231,0,56,0,14,0, + 28,0,28,0,15,0,120,0,7,193,240,0,1,255,224,0, + 0,127,0,0,11,3,6,11,0,22,255,224,255,224,255,224, + 7,7,7,11,2,18,56,196,130,130,130,196,120,20,21,63, + 34,7,0,0,96,0,0,96,0,0,96,0,0,96,0,0, + 96,0,0,96,0,255,255,240,255,255,240,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,240,255, + 255,240,11,13,26,13,1,13,63,128,127,192,241,224,1,224, + 1,224,3,192,7,192,15,128,30,0,124,0,240,0,255,192, + 255,192,11,14,28,13,1,12,127,128,255,128,227,192,3,192, + 7,192,31,128,31,128,3,192,1,224,1,224,225,224,243,192, + 127,128,63,0,7,7,7,8,2,21,62,60,56,120,112,224, + 192,255,16,31,62,19,2,250,15,255,63,255,127,24,255,24, + 255,24,255,24,255,24,255,24,255,24,255,24,127,24,63,24, + 31,24,3,24,3,24,3,24,3,24,3,24,3,24,3,24, + 3,24,3,24,3,24,3,24,3,24,3,24,3,24,3,24, + 3,24,3,24,3,24,5,5,5,10,3,10,248,248,248,248, + 248,9,8,16,9,1,247,48,0,48,0,63,0,7,128,3, + 128,3,128,255,0,254,0,6,14,14,9,1,12,28,124,252, + 220,28,28,28,28,28,28,28,28,28,28,12,17,34,14,1, + 8,31,128,63,192,121,224,112,224,224,112,224,112,224,112,224, + 112,224,112,112,224,121,224,63,192,31,128,0,0,0,0,255, + 240,255,240,16,14,28,21,2,2,240,120,248,124,124,60,124, + 62,62,30,62,31,31,31,31,31,62,31,62,30,124,62,124, + 60,248,124,240,120,25,26,104,27,1,0,28,0,120,0,124, + 0,112,0,252,0,240,0,156,0,224,0,28,1,192,0,28, + 1,192,0,28,3,128,0,28,7,128,0,28,7,0,0,28, + 14,0,0,28,14,0,0,28,28,0,0,28,28,30,0,28, + 56,30,0,0,120,62,0,0,112,126,0,0,224,126,0,0, + 224,238,0,1,193,206,0,1,193,206,0,3,131,142,0,7, + 3,255,128,7,3,255,128,14,0,14,0,14,0,14,0,28, + 0,14,0,25,26,104,27,1,0,28,0,112,0,124,0,224, + 0,252,0,224,0,220,1,192,0,28,3,192,0,28,3,128, + 0,28,7,0,0,28,7,0,0,28,14,0,0,28,14,0, + 0,28,28,0,0,28,56,0,0,28,56,124,0,28,113,255, + 0,0,115,199,128,0,227,199,128,0,192,7,128,1,192,15, + 128,3,128,15,0,3,128,30,0,7,0,60,0,6,0,248, + 0,14,1,240,0,12,3,192,0,28,3,255,0,24,3,255, + 0,25,25,100,27,1,1,127,128,60,0,255,192,56,0,227, + 192,112,0,3,192,112,0,31,128,224,0,31,129,224,0,3, + 193,192,0,1,227,192,0,225,227,128,0,227,231,128,0,127, + 207,0,0,63,14,30,0,0,30,62,0,0,28,62,0,0, + 60,126,0,0,56,110,0,0,120,238,0,0,241,206,0,0, + 241,206,0,1,227,142,0,1,227,255,128,3,195,255,128,3, + 128,14,0,7,128,14,0,15,0,14,0,16,25,50,18,1, + 249,3,224,3,224,3,224,3,224,0,0,0,0,0,0,1, + 192,1,192,1,192,3,192,7,128,15,0,30,0,60,0,124, + 0,248,0,248,0,248,0,248,14,248,31,124,62,63,254,31, + 248,7,224,23,35,105,24,1,0,3,192,0,3,192,0,1, + 224,0,0,224,0,0,112,0,0,48,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,124,0,0,252,0,0,254,0, + 0,254,0,1,254,0,1,255,0,3,255,0,3,207,0,3, + 207,128,7,207,128,7,135,192,7,135,192,15,135,192,15,3, + 224,31,3,224,31,3,240,31,255,240,63,255,240,63,255,248, + 127,255,248,124,0,248,124,0,252,248,0,124,248,0,126,240, + 0,62,23,35,105,24,1,0,0,15,0,0,15,0,0,30, + 0,0,28,0,0,56,0,0,48,0,0,112,0,0,0,0, + 0,0,0,0,0,0,0,124,0,0,252,0,0,254,0,0, + 254,0,1,254,0,1,255,0,3,255,0,3,207,0,3,207, + 128,7,207,128,7,135,192,7,135,192,15,135,192,15,3,224, + 31,3,224,31,3,240,31,255,240,63,255,240,63,255,248,127, + 255,248,124,0,248,124,0,252,248,0,124,248,0,126,240,0, + 62,23,35,105,24,1,0,0,252,0,0,252,0,0,254,0, + 1,206,0,1,199,0,3,135,0,3,3,128,0,0,0,0, + 0,0,0,0,0,0,124,0,0,252,0,0,254,0,0,254, + 0,1,254,0,1,255,0,3,255,0,3,207,0,3,207,128, + 7,207,128,7,135,192,7,135,192,15,135,192,15,3,224,31, + 3,224,31,3,240,31,255,240,63,255,240,63,255,248,127,255, + 248,124,0,248,124,0,252,248,0,124,248,0,126,240,0,62, + 23,34,102,24,1,0,0,1,128,1,255,0,3,255,0,3, + 254,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,124,0,0,252,0,0,254,0,0,254,0,1,254,0, + 1,255,0,3,255,0,3,207,0,3,207,128,7,207,128,7, + 135,192,7,135,192,15,135,192,15,3,224,31,3,224,31,3, + 240,31,255,240,63,255,240,63,255,248,127,255,248,124,0,248, + 124,0,252,248,0,124,248,0,126,240,0,62,23,34,102,25, + 1,0,3,199,128,3,199,128,3,199,128,3,199,128,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,124,0, + 0,124,0,0,254,0,0,254,0,1,255,0,1,255,0,1, + 239,0,3,239,128,3,239,128,3,199,128,7,199,192,7,199, + 192,15,131,224,15,131,224,15,131,224,31,1,240,31,255,240, + 31,255,240,63,255,248,63,255,248,124,0,252,124,0,124,124, + 0,124,248,0,62,248,0,62,23,37,111,24,1,0,0,120, + 0,0,252,0,1,206,0,1,134,0,1,134,0,1,206,0, + 0,252,0,0,120,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,124,0,0,252,0,0,252,0,0,254,0,1,254, + 0,1,255,0,3,255,0,3,207,0,3,207,128,7,207,128, + 7,135,192,7,135,192,15,135,192,15,3,224,31,3,224,31, + 3,224,31,255,240,63,255,240,63,255,248,127,255,248,124,0, + 248,124,0,252,248,0,124,248,0,126,240,0,62,32,25,100, + 34,1,0,0,7,255,254,0,15,255,254,0,15,255,254,0, + 31,240,0,0,31,240,0,0,63,240,0,0,61,240,0,0, + 121,240,0,0,249,240,0,0,241,240,0,1,241,255,254,1, + 225,255,254,3,225,255,254,3,193,255,254,7,193,240,0,7, + 255,240,0,15,255,240,0,15,255,240,0,31,255,240,0,30, + 1,240,0,62,1,240,0,60,1,255,255,124,1,255,255,248, + 1,255,255,248,1,255,255,21,33,99,25,2,249,3,255,0, + 15,255,192,31,255,224,63,255,240,62,3,240,124,1,240,120, + 1,248,120,0,248,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,248, + 120,1,248,124,1,248,124,3,240,63,7,240,31,255,224,31, + 255,192,7,255,128,1,252,0,0,96,0,0,120,0,0,126, + 0,0,15,0,0,7,0,0,7,0,1,254,0,1,252,0, + 17,35,105,21,2,0,30,0,0,15,0,0,7,0,0,7, + 128,0,3,128,0,1,192,0,0,192,0,0,0,0,0,0, + 0,0,0,0,255,255,0,255,255,0,255,255,0,255,255,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,255,255,0,255,255,0,255,255,0,255,255,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,255,255,128,255,255,128,255,255,128,255,255,128,17, + 35,105,21,2,0,0,120,0,0,240,0,0,224,0,1,192, + 0,1,128,0,3,128,0,0,0,0,0,0,0,0,0,0, + 0,0,0,255,255,0,255,255,0,255,255,0,255,255,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,255,255,0,255,255,0,255,255,0,255,255,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,255,255,128,255,255,128,255,255,128,255,255,128,17,35, + 105,21,2,0,7,224,0,7,224,0,15,240,0,14,112,0, + 14,56,0,28,56,0,24,28,0,0,0,0,0,0,0,0, + 0,0,255,255,0,255,255,0,255,255,0,255,255,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 255,255,0,255,255,0,255,255,0,255,255,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,255,255,128,255,255,128,255,255,128,255,255,128,17,34,102, + 21,2,0,30,60,0,30,60,0,30,60,0,30,60,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255, + 0,255,255,0,255,255,0,255,255,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,255,255,0,255, + 255,0,255,255,0,255,255,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,255,255,128, + 255,255,128,255,255,128,255,255,128,8,35,35,9,255,0,240, + 120,56,60,28,12,6,0,0,0,31,31,31,31,31,31,31, + 31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31, + 31,31,7,35,35,8,2,0,30,28,60,56,112,96,224,0, + 0,0,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,11,35,70,9,255, + 0,31,0,63,0,63,128,59,128,113,192,97,192,192,224,0, + 0,0,0,0,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,11,34,68,11,0,0,241,224,241, + 224,241,224,241,224,0,0,0,0,0,0,0,0,0,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,23,25,75,24,0,0,63,252,0,63,255,128,63,255,192, + 63,255,224,62,7,240,62,1,248,62,0,248,62,0,124,62, + 0,124,62,0,60,62,0,60,255,240,62,255,240,62,255,240, + 62,62,0,60,62,0,60,62,0,124,62,0,124,62,0,248, + 62,1,248,62,7,240,63,255,224,63,255,192,63,255,128,63, + 252,0,21,34,102,25,2,0,0,3,0,1,255,0,3,254, + 0,7,252,0,6,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,254,0,248,255,0,248,255,0,248,255,128,248,255, + 128,248,255,192,248,255,192,248,251,224,248,251,224,248,249,224, + 248,249,240,248,248,240,248,248,248,248,248,120,248,248,124,248, + 248,60,248,248,62,248,248,30,248,248,31,248,248,31,248,248, + 15,248,248,15,248,248,7,248,248,7,248,248,3,248,23,36, + 108,27,2,0,7,192,0,3,192,0,1,224,0,0,224,0, + 0,240,0,0,112,0,0,56,0,0,0,0,0,0,0,0, + 0,0,0,0,0,3,255,128,7,255,192,31,255,240,31,255, + 240,63,1,248,126,0,252,124,0,124,120,0,60,248,0,62, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,124,0,124,124,0,124,62,0, + 248,63,131,248,31,255,240,15,255,224,7,255,192,0,254,0, + 23,36,108,27,2,0,0,7,192,0,7,128,0,15,0,0, + 14,0,0,28,0,0,24,0,0,48,0,0,0,0,0,0, + 0,0,0,0,0,0,0,3,255,128,7,255,192,31,255,240, + 31,255,240,63,1,248,126,0,252,124,0,124,120,0,60,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,248,0, + 62,248,0,62,248,0,62,248,0,62,124,0,124,124,0,124, + 62,0,248,63,131,248,31,255,240,15,255,224,7,255,192,0, + 254,0,23,36,108,27,2,0,0,124,0,0,254,0,0,254, + 0,1,239,0,1,199,0,3,131,128,3,1,128,0,0,0, + 0,0,0,0,0,0,0,0,0,3,255,128,7,255,192,31, + 255,240,31,255,240,63,1,248,126,0,252,124,0,124,120,0, + 60,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,248,0,62,248,0,62,248,0,62,124,0,124,124, + 0,124,62,0,248,63,131,248,31,255,240,15,255,224,7,255, + 192,0,254,0,23,34,102,27,2,0,0,241,128,1,255,128, + 3,255,0,3,30,0,3,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,3,255,128,7,255,192,31,255,240,31,255, + 240,63,1,248,126,0,252,124,0,124,120,0,60,248,0,62, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,124,0,124,124,0,124,62,0, + 248,63,131,248,31,255,240,15,255,224,7,255,192,0,254,0, + 23,34,102,27,2,0,3,199,128,3,199,128,3,199,128,3, + 199,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,3,255,128,7,255,192,31,255,240,31,255,240,63,1,248, + 126,0,252,124,0,124,120,0,60,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,248,0, + 62,248,0,62,124,0,124,124,0,124,62,0,248,63,131,248, + 31,255,240,15,255,224,7,255,192,0,254,0,18,19,57,34, + 8,1,64,0,0,224,0,192,112,1,128,56,3,0,28,6, + 0,14,12,0,6,24,0,3,48,0,1,224,0,0,192,0, + 1,224,0,3,48,0,6,24,0,12,12,0,24,6,0,48, + 3,0,112,1,128,224,1,192,64,0,128,25,28,112,27,1, + 255,0,0,1,0,0,0,3,128,1,255,195,128,3,255,247, + 0,15,255,254,0,15,255,252,0,31,128,252,0,63,0,126, + 0,62,0,254,0,60,1,254,0,124,3,223,0,124,7,159, + 0,124,15,31,0,124,30,31,0,124,60,31,0,124,120,31, + 0,124,240,31,0,125,224,31,0,127,192,31,0,63,128,62, + 0,63,0,62,0,63,0,124,0,31,193,252,0,63,255,248, + 0,127,255,240,0,243,255,224,0,224,127,0,0,64,0,0, + 0,21,36,108,25,2,0,15,0,0,7,128,0,3,192,0, + 3,192,0,1,224,0,0,224,0,0,112,0,0,0,0,0, + 0,0,0,0,0,0,0,0,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,248,248,0,248,248,0,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,240,248,0,240,120,1, + 240,124,3,240,127,7,224,63,255,192,31,255,128,15,255,0, + 3,252,0,21,36,108,25,2,0,0,15,128,0,15,0,0, + 30,0,0,60,0,0,56,0,0,112,0,0,96,0,0,0, + 0,0,0,0,0,0,0,0,0,0,248,0,248,248,0,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,248,248,0,240,248,0,240, + 120,1,240,124,3,240,127,7,224,63,255,192,31,255,128,15, + 255,0,3,252,0,21,36,108,25,2,0,0,248,0,1,248, + 0,1,252,0,3,220,0,7,142,0,7,14,0,14,7,0, + 0,0,0,0,0,0,0,0,0,0,0,0,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,248,248,0,248,248,0,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,240,248, + 0,240,120,1,240,124,3,240,127,7,224,63,255,192,31,255, + 128,15,255,0,3,252,0,21,34,102,25,2,0,7,143,0, + 7,143,0,7,143,0,7,143,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,248,248,0,248,248,0,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,240,248,0,240,124,1, + 240,124,3,240,127,7,224,63,255,192,31,255,128,15,255,0, + 3,252,0,21,35,105,22,1,0,0,30,0,0,30,0,0, + 28,0,0,56,0,0,48,0,0,112,0,0,0,0,0,0, + 0,0,0,0,0,0,0,252,1,248,252,1,240,126,3,224, + 126,3,224,63,7,192,31,7,192,31,143,128,15,143,128,15, + 223,0,7,223,0,7,254,0,3,254,0,3,252,0,1,248, + 0,1,248,0,0,240,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,18,25,75,22,2,0,248,0,0,248,0,0,248,0, + 0,248,0,0,255,240,0,255,254,0,255,255,0,255,255,128, + 248,15,128,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,15,192,255,255,128,255,255,0,255,254,0,255,240, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,18,25,75,19,1,1,31,240,0,63,252,0,127, + 252,0,248,62,0,248,62,0,248,62,0,248,62,0,248,124, + 0,248,248,0,248,240,0,249,240,0,251,224,0,251,224,0, + 249,248,0,249,252,0,248,127,0,248,63,128,248,15,128,248, + 7,128,248,7,192,251,199,192,251,199,128,249,255,128,249,255, + 0,248,126,0,15,28,56,19,2,0,60,0,30,0,14,0, + 7,0,7,0,3,128,1,128,0,0,0,0,0,0,7,224, + 63,248,127,252,124,62,120,62,0,62,15,254,63,254,127,254, + 124,62,248,62,248,62,248,62,248,62,252,126,127,254,63,222, + 31,30,15,28,56,19,2,0,0,120,0,240,0,240,1,224, + 1,192,1,128,3,0,0,0,0,0,0,0,7,224,63,248, + 127,252,124,62,120,62,0,62,15,254,63,254,127,254,124,62, + 248,62,248,62,248,62,248,62,252,126,127,254,63,222,31,30, + 15,28,56,19,2,0,7,192,7,224,15,224,14,240,28,112, + 24,56,56,24,0,0,0,0,0,0,7,224,63,248,127,252, + 124,62,120,62,0,62,15,254,63,254,127,254,124,62,248,62, + 248,62,248,62,248,62,252,126,127,254,63,222,31,30,15,26, + 52,19,2,0,0,24,15,248,31,240,31,224,48,0,0,0, + 0,0,0,0,7,224,63,248,127,252,124,62,120,62,0,62, + 15,254,63,254,127,254,124,62,248,62,248,62,248,62,248,62, + 252,126,127,254,63,222,31,30,15,27,54,19,2,0,60,120, + 60,120,60,120,60,120,0,0,0,0,0,0,0,0,0,0, + 15,224,63,248,127,252,124,62,120,62,0,62,15,254,63,254, + 127,254,124,62,248,62,248,62,248,62,248,62,252,126,127,254, + 63,222,31,30,15,30,60,19,2,0,3,192,7,224,14,112, + 12,48,12,48,14,112,7,224,3,192,0,0,0,0,0,0, + 0,0,7,224,31,248,63,252,124,62,120,62,0,62,15,254, + 63,254,127,254,124,62,248,62,248,62,248,62,248,62,252,126, + 127,254,63,222,31,30,27,18,72,31,2,0,7,224,124,0, + 31,249,255,0,127,253,255,128,124,63,135,192,120,31,3,192, + 0,31,3,224,7,255,255,224,63,255,255,224,127,255,255,224, + 124,31,0,0,248,31,0,0,248,31,0,0,248,31,131,224, + 248,31,131,192,252,59,199,192,127,241,255,192,63,224,255,128, + 15,128,126,0,15,26,52,18,2,248,7,224,31,248,63,252, + 124,124,120,60,248,62,248,62,248,0,248,0,248,0,248,0, + 248,62,248,62,120,60,124,124,63,252,31,248,15,224,3,0, + 3,128,3,224,0,240,0,112,0,112,15,224,15,192,15,28, + 56,19,2,0,62,0,30,0,15,0,7,0,7,128,3,128, + 1,192,0,0,0,0,0,0,7,224,31,248,63,252,124,60, + 120,62,248,30,248,30,255,254,255,254,255,254,248,0,248,0, + 248,30,120,62,124,62,63,252,31,248,7,224,15,28,56,19, + 2,0,0,120,0,112,0,240,0,224,1,192,1,128,3,0, + 0,0,0,0,0,0,7,224,31,248,63,252,124,60,120,62, + 248,30,248,30,255,254,255,254,255,254,248,0,248,0,248,30, + 120,62,124,62,63,252,31,248,7,224,15,28,56,19,2,0, + 7,224,7,224,15,224,14,112,28,112,28,56,56,24,0,0, + 0,0,0,0,7,224,31,248,63,252,124,60,120,62,248,30, + 248,30,255,254,255,254,255,254,248,0,248,0,248,30,120,62, + 124,62,63,252,31,248,7,224,15,27,54,19,2,0,60,120, + 60,120,60,120,60,120,0,0,0,0,0,0,0,0,0,0, + 7,224,31,248,63,252,124,124,120,62,248,62,248,62,255,254, + 255,254,255,254,248,0,248,0,248,62,120,62,124,126,63,252, + 31,248,7,224,8,28,28,9,255,0,240,120,120,60,28,14, + 6,0,0,0,31,31,31,31,31,31,31,31,31,31,31,31, + 31,31,31,31,31,31,7,28,28,8,2,0,30,60,56,120, + 112,224,192,0,0,0,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,10,28,56,9,255,0,31,0, + 63,0,63,128,123,128,115,192,97,192,224,192,0,0,0,0, + 0,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,11,26,52,9,255,0,241,224,241,224, + 241,224,241,224,0,0,0,0,0,0,0,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 18,26,78,21,2,0,0,1,0,15,135,0,3,254,0,1, + 248,0,3,248,0,15,252,0,60,60,0,16,30,0,7,255, + 0,31,255,0,63,255,0,126,31,128,124,15,128,248,15,128, + 248,7,128,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,128,120,15,128,124,15,128,126,31,0,63,255,0,31,252, + 0,3,240,0,16,26,52,20,2,0,0,24,15,248,31,248, + 31,240,48,0,0,0,0,0,0,0,249,248,251,252,255,254, + 252,63,252,31,248,31,248,31,248,31,248,31,248,31,248,31, + 248,31,248,31,248,31,248,31,248,31,248,31,248,31,18,28, + 84,21,2,0,31,0,0,15,0,0,7,128,0,3,128,0, + 3,192,0,1,192,0,0,224,0,0,0,0,0,0,0,0, + 0,0,3,240,0,15,252,0,63,254,0,62,31,0,124,15, + 128,120,15,128,248,7,128,248,7,128,248,7,192,248,7,192, + 248,7,192,248,7,128,120,15,128,124,15,128,62,31,0,63, + 254,0,15,252,0,3,240,0,18,28,84,21,2,0,0,60, + 0,0,56,0,0,120,0,0,112,0,0,224,0,0,192,0, + 1,128,0,0,0,0,0,0,0,0,0,0,3,240,0,15, + 252,0,63,254,0,62,31,0,124,15,128,120,15,128,248,7, + 128,248,7,128,248,7,192,248,7,192,248,7,192,248,7,128, + 120,15,128,124,15,128,62,31,0,63,254,0,15,252,0,3, + 240,0,18,28,84,21,2,0,3,224,0,3,240,0,7,240, + 0,7,56,0,14,56,0,14,28,0,28,12,0,0,0,0, + 0,0,0,0,0,0,3,240,0,15,252,0,63,254,0,62, + 31,0,124,15,128,120,15,128,248,7,128,248,7,128,248,7, + 192,248,7,192,248,7,192,248,7,128,120,15,128,124,15,128, + 62,31,0,63,254,0,15,252,0,3,240,0,18,27,81,21, + 2,0,0,4,0,0,12,0,7,252,0,15,248,0,15,240, + 0,24,0,0,0,0,0,0,0,0,0,0,0,3,240,0, + 15,252,0,63,254,0,62,31,0,124,15,128,120,15,128,248, + 7,128,248,7,128,248,7,192,248,7,192,248,7,192,248,7, + 128,120,15,128,124,15,128,62,31,0,63,254,0,15,252,0, + 3,240,0,18,27,81,21,2,0,30,60,0,30,60,0,30, + 60,0,30,60,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,3,240,0,15,252,0,63,254,0,62,31,0, + 124,15,128,120,15,128,248,7,128,248,7,128,248,7,192,248, + 7,192,248,7,192,248,7,128,120,15,128,124,15,128,62,31, + 0,63,254,0,15,252,0,3,240,0,20,15,45,34,7,3, + 0,112,0,0,248,0,0,248,0,0,112,0,0,0,0,0, + 0,0,0,0,0,255,255,240,255,255,240,0,0,0,0,0, + 0,0,112,0,0,248,0,0,248,0,0,112,0,18,23,69, + 21,2,254,0,1,0,0,1,128,0,3,128,3,247,0,15, + 255,0,63,254,0,62,31,0,124,63,128,120,55,128,248,119, + 128,248,231,128,249,199,192,251,135,192,251,135,192,255,7,128, + 126,15,128,124,15,128,62,31,0,63,254,0,127,252,0,227, + 240,0,224,0,0,192,0,0,16,28,56,20,2,0,62,0, + 30,0,15,0,7,0,3,128,3,128,1,192,0,0,0,0, + 0,0,248,31,248,31,248,31,248,31,248,31,248,31,248,31, + 248,31,248,31,248,31,248,31,248,31,248,31,248,31,252,63, + 127,255,63,223,31,159,16,28,56,20,2,0,0,120,0,240, + 0,240,0,224,1,192,1,128,3,0,0,0,0,0,0,0, + 248,31,248,31,248,31,248,31,248,31,248,31,248,31,248,31, + 248,31,248,31,248,31,248,31,248,31,248,31,252,63,127,255, + 63,223,31,159,16,28,56,20,2,0,7,224,7,224,15,240, + 14,112,28,56,28,56,56,28,0,0,0,0,0,0,248,31, + 248,31,248,31,248,31,248,31,248,31,248,31,248,31,248,31, + 248,31,248,31,248,31,248,31,248,31,252,63,127,255,63,223, + 31,159,16,27,54,20,2,0,60,120,60,120,60,120,60,120, + 0,0,0,0,0,0,0,0,0,0,248,31,248,31,248,31, + 248,31,248,31,248,31,248,31,248,31,248,31,248,31,248,31, + 248,31,248,31,248,31,252,63,127,255,63,223,31,159,17,35, + 105,19,1,249,0,30,0,0,60,0,0,56,0,0,120,0, + 0,112,0,0,224,0,0,192,0,0,0,0,0,0,0,0, + 0,0,248,15,128,248,15,128,252,15,128,124,31,0,126,31, + 0,62,31,0,62,62,0,63,62,0,31,60,0,31,124,0, + 15,252,0,15,248,0,15,248,0,7,248,0,7,240,0,3, + 240,0,3,240,0,3,224,0,3,224,0,3,192,0,103,192, + 0,255,192,0,255,192,0,127,128,0,62,0,0,17,32,96, + 21,2,249,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,249,240,0,255,252,0,255,254, + 0,254,63,0,252,31,0,248,15,128,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,252, + 31,0,254,63,0,255,254,0,255,252,0,251,240,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,17,33,99,19,1,249,30,60,0,30,60,0,30, + 60,0,30,60,0,0,0,0,0,0,0,0,0,0,0,0, + 0,248,15,128,248,15,128,252,15,128,124,31,0,124,31,0, + 126,31,0,62,62,0,63,62,0,31,62,0,31,124,0,31, + 252,0,15,248,0,15,248,0,7,248,0,7,240,0,7,240, + 0,3,240,0,3,224,0,3,224,0,3,224,0,7,192,0, + 7,192,0,7,192,0,15,128,0,15,128,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--34-340-72-72-P-170-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 25 + Calculated Max Values w=20 h=28 x= 7 y=13 dx=34 dy= 0 ascent=26 len=75 + Font Bounding box w=50 h=46 x=-2 y=-9 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =25 descent= 0 + X Font ascent =25 descent= 0 + Max Font ascent =26 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub25n[957] U8G_SECTION(".progmem.u8g_font_fub25n") = { + 0,50,46,254,247,25,0,0,0,0,42,57,0,26,251,25, + 0,14,13,26,22,4,13,28,224,60,240,28,224,15,192,135, + 132,255,252,255,252,231,156,15,192,30,224,28,224,60,240,8, + 64,20,21,63,34,7,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,96,0,0,96,0,0, + 96,0,255,255,240,255,255,240,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,7,9,9,11,2,251,62,60,60,120, + 120,112,240,240,224,9,5,10,11,1,7,255,128,255,128,255, + 128,255,128,255,128,5,5,5,10,3,0,248,248,248,248,248, + 11,28,56,15,2,254,0,224,0,224,1,192,1,192,1,192, + 3,128,3,128,3,128,3,128,7,0,7,0,7,0,14,0, + 14,0,14,0,28,0,28,0,28,0,56,0,56,0,56,0, + 56,0,112,0,112,0,112,0,224,0,224,0,224,0,17,25, + 75,19,1,1,7,224,0,31,252,0,63,254,0,60,30,0, + 120,15,0,120,15,0,120,15,0,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,248,15,128,248,15, + 128,248,15,128,248,15,128,248,15,128,120,15,0,120,15,0, + 120,15,0,60,30,0,31,252,0,15,248,0,7,224,0,11, + 25,50,19,3,1,3,224,15,224,31,224,127,224,255,224,251, + 224,243,224,195,224,3,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,17,25,75,19,1,1,7,248,0, + 31,254,0,31,255,0,63,255,0,126,31,128,124,15,128,124, + 15,128,0,15,128,0,15,128,0,31,0,0,31,0,0,62, + 0,0,126,0,0,252,0,1,248,0,3,240,0,7,224,0, + 15,192,0,63,0,0,126,0,0,252,0,0,255,255,128,255, + 255,128,255,255,128,255,255,128,16,25,50,19,2,1,31,240, + 63,252,127,254,255,254,248,62,248,31,0,31,0,30,0,126, + 7,252,7,240,7,248,7,252,0,62,0,31,0,31,0,31, + 248,31,248,31,248,31,252,62,127,254,127,252,31,248,15,224, + 18,25,75,19,1,1,0,126,0,0,254,0,0,254,0,1, + 254,0,3,254,0,3,254,0,7,190,0,15,190,0,15,62, + 0,30,62,0,30,62,0,60,62,0,124,62,0,120,62,0, + 240,62,0,255,255,192,255,255,192,255,255,192,255,255,192,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,0,0,62, + 0,17,25,75,19,1,1,255,254,0,255,254,0,255,254,0, + 255,254,0,248,0,0,248,0,0,248,0,0,248,0,0,249, + 240,0,255,252,0,255,254,0,252,63,0,248,31,0,248,15, + 0,0,15,128,0,15,128,0,15,128,0,15,0,248,15,0, + 248,31,0,252,63,0,127,254,0,127,252,0,63,248,0,15, + 224,0,17,25,75,19,1,1,3,240,0,15,252,0,31,254, + 0,63,255,0,62,31,0,126,15,128,124,0,0,124,0,0, + 252,0,0,248,248,0,251,254,0,255,254,0,255,31,0,254, + 15,128,252,15,128,252,15,128,252,15,128,252,15,128,124,15, + 128,126,15,128,127,31,0,63,255,0,31,254,0,15,252,0, + 3,240,0,16,25,50,19,2,1,255,255,255,255,255,255,255, + 255,0,15,0,31,0,30,0,62,0,62,0,124,0,124,0, + 248,0,248,0,240,1,240,1,240,3,224,3,224,7,192,7, + 192,15,128,15,128,15,128,31,0,31,0,17,25,75,19,1, + 1,7,240,0,31,252,0,127,255,0,127,255,0,252,31,128, + 248,15,128,248,15,128,120,15,0,124,31,0,63,254,0,15, + 248,0,31,248,0,63,254,0,124,63,0,248,15,0,248,15, + 128,248,15,128,248,15,128,248,15,128,248,15,128,252,31,128, + 127,255,0,127,255,0,31,252,0,7,240,0,17,25,75,19, + 1,1,7,240,0,31,252,0,63,254,0,127,254,0,124,63, + 0,248,31,0,248,31,0,248,31,128,248,31,128,248,31,128, + 248,63,128,124,63,128,127,255,128,63,239,128,15,207,128,0, + 15,128,0,31,0,0,31,0,248,31,0,120,63,0,124,126, + 0,63,254,0,63,252,0,31,248,0,7,224,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--34-340-72-72-P-170-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 25, '1' Height: 25 + Calculated Max Values w=34 h=37 x= 8 y=21 dx=35 dy= 0 ascent=28 len=160 + Font Bounding box w=50 h=46 x=-2 y=-9 + Calculated Min Values x=-1 y=-9 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =28 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub25r[5936] U8G_SECTION(".progmem.u8g_font_fub25r") = { + 0,50,46,254,247,25,7,111,16,148,32,127,249,28,247,25, + 249,0,0,0,10,0,0,5,25,25,14,5,0,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 0,0,248,248,248,248,13,10,20,18,2,15,248,248,248,248, + 248,248,120,248,120,120,120,120,120,120,120,120,120,112,120,112, + 21,25,75,24,2,0,0,224,224,0,225,224,0,225,192,1, + 225,192,1,195,192,1,195,128,31,255,248,31,255,240,63,255, + 240,7,135,0,7,135,0,7,15,0,7,14,0,15,14,0, + 14,14,0,255,255,192,255,255,192,255,255,192,28,60,0,28, + 60,0,60,56,0,56,56,0,56,120,0,120,112,0,112,112, + 0,18,31,93,20,1,252,0,192,0,0,192,0,3,248,0, + 15,252,0,31,254,0,63,255,0,126,223,0,120,207,128,248, + 207,128,248,192,0,252,192,0,126,192,0,127,192,0,127,240, + 0,31,252,0,7,255,0,1,255,128,0,255,128,0,207,128, + 0,199,192,248,199,192,248,199,192,248,207,128,126,223,128,127, + 255,0,63,254,0,15,252,0,3,240,0,0,192,0,0,192, + 0,0,192,0,32,26,104,34,1,0,0,0,3,128,15,192, + 7,0,63,240,7,0,124,248,14,0,120,120,14,0,240,60, + 28,0,240,60,24,0,240,60,56,0,240,60,112,0,240,60, + 112,0,120,120,224,0,120,120,224,0,63,241,199,248,15,195, + 143,252,0,3,159,62,0,7,30,30,0,7,60,15,0,14, + 60,15,0,30,60,15,0,28,60,15,0,56,60,15,0,56, + 60,15,0,112,30,30,0,112,15,60,0,224,15,252,1,224, + 3,240,24,25,75,27,2,1,7,252,0,31,254,0,31,255, + 0,62,31,0,62,31,0,62,31,0,62,31,0,30,62,0, + 31,126,0,15,252,0,7,240,0,15,224,0,63,224,124,63, + 240,120,124,248,120,252,124,120,248,62,120,248,31,248,248,15, + 240,248,7,240,252,3,224,126,15,240,63,255,248,31,255,254, + 7,252,63,5,10,10,14,4,15,248,248,120,120,120,120,120, + 120,120,120,7,30,30,13,3,251,30,30,62,60,60,124,124, + 120,120,248,248,248,248,248,248,248,248,248,248,248,248,120,120, + 124,124,60,60,62,30,30,8,30,30,14,3,251,240,120,120, + 124,60,60,60,62,62,30,30,30,30,31,31,31,31,31,30, + 30,30,62,62,62,60,60,124,120,120,240,14,13,26,22,4, + 13,28,224,60,240,28,224,15,192,135,132,255,252,255,252,231, + 156,15,192,30,224,28,224,60,240,8,64,20,21,63,34,7, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,96,0,255,255,240,255, + 255,240,0,96,0,0,96,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 7,9,9,11,2,251,62,60,60,120,120,112,240,240,224,9, + 5,10,11,1,7,255,128,255,128,255,128,255,128,255,128,5, + 5,5,10,3,0,248,248,248,248,248,11,28,56,15,2,254, + 0,224,0,224,1,192,1,192,1,192,3,128,3,128,3,128, + 3,128,7,0,7,0,7,0,14,0,14,0,14,0,28,0, + 28,0,28,0,56,0,56,0,56,0,56,0,112,0,112,0, + 112,0,224,0,224,0,224,0,17,25,75,19,1,1,7,224, + 0,31,252,0,63,254,0,60,30,0,120,15,0,120,15,0, + 120,15,0,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,248,15,128,248,15, + 128,248,15,128,120,15,0,120,15,0,120,15,0,60,30,0, + 31,252,0,15,248,0,7,224,0,11,25,50,19,3,1,3, + 224,15,224,31,224,127,224,255,224,251,224,243,224,195,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,17,25,75,19,1,1,7,248,0,31,254,0,31,255,0, + 63,255,0,126,31,128,124,15,128,124,15,128,0,15,128,0, + 15,128,0,31,0,0,31,0,0,62,0,0,126,0,0,252, + 0,1,248,0,3,240,0,7,224,0,15,192,0,63,0,0, + 126,0,0,252,0,0,255,255,128,255,255,128,255,255,128,255, + 255,128,16,25,50,19,2,1,31,240,63,252,127,254,255,254, + 248,62,248,31,0,31,0,30,0,126,7,252,7,240,7,248, + 7,252,0,62,0,31,0,31,0,31,248,31,248,31,248,31, + 252,62,127,254,127,252,31,248,15,224,18,25,75,19,1,1, + 0,126,0,0,254,0,0,254,0,1,254,0,3,254,0,3, + 254,0,7,190,0,15,190,0,15,62,0,30,62,0,30,62, + 0,60,62,0,124,62,0,120,62,0,240,62,0,255,255,192, + 255,255,192,255,255,192,255,255,192,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,17,25,75,19,1, + 1,255,254,0,255,254,0,255,254,0,255,254,0,248,0,0, + 248,0,0,248,0,0,248,0,0,249,240,0,255,252,0,255, + 254,0,252,63,0,248,31,0,248,15,0,0,15,128,0,15, + 128,0,15,128,0,15,0,248,15,0,248,31,0,252,63,0, + 127,254,0,127,252,0,63,248,0,15,224,0,17,25,75,19, + 1,1,3,240,0,15,252,0,31,254,0,63,255,0,62,31, + 0,126,15,128,124,0,0,124,0,0,252,0,0,248,248,0, + 251,254,0,255,254,0,255,31,0,254,15,128,252,15,128,252, + 15,128,252,15,128,252,15,128,124,15,128,126,15,128,127,31, + 0,63,255,0,31,254,0,15,252,0,3,240,0,16,25,50, + 19,2,1,255,255,255,255,255,255,255,255,0,15,0,31,0, + 30,0,62,0,62,0,124,0,124,0,248,0,248,0,240,1, + 240,1,240,3,224,3,224,7,192,7,192,15,128,15,128,15, + 128,31,0,31,0,17,25,75,19,1,1,7,240,0,31,252, + 0,127,255,0,127,255,0,252,31,128,248,15,128,248,15,128, + 120,15,0,124,31,0,63,254,0,15,248,0,31,248,0,63, + 254,0,124,63,0,248,15,0,248,15,128,248,15,128,248,15, + 128,248,15,128,248,15,128,252,31,128,127,255,0,127,255,0, + 31,252,0,7,240,0,17,25,75,19,1,1,7,240,0,31, + 252,0,63,254,0,127,254,0,124,63,0,248,31,0,248,31, + 0,248,31,128,248,31,128,248,31,128,248,63,128,124,63,128, + 127,255,128,63,239,128,15,207,128,0,15,128,0,31,0,0, + 31,0,248,31,0,120,63,0,124,126,0,63,254,0,63,252, + 0,31,248,0,7,224,0,5,18,18,11,5,0,248,248,248, + 248,248,0,0,0,0,0,0,0,0,248,248,248,248,248,7, + 22,22,11,2,252,62,62,62,62,62,0,0,0,0,0,0, + 0,0,62,60,124,120,120,112,240,224,224,21,19,57,34,7, + 1,0,0,8,0,0,56,0,1,248,0,15,192,0,62,0, + 1,248,0,7,192,0,62,0,0,248,0,0,192,0,0,248, + 0,0,62,0,0,7,192,0,1,248,0,0,62,0,0,7, + 192,0,1,248,0,0,56,0,0,8,20,8,24,34,7,6, + 255,255,240,255,255,240,0,0,0,0,0,0,0,0,0,0, + 0,0,255,255,240,255,255,240,21,17,51,34,7,2,224,0, + 0,248,0,0,63,0,0,7,224,0,0,248,0,0,63,0, + 0,7,192,0,0,248,0,0,56,0,0,248,0,7,192,0, + 63,0,0,248,0,7,224,0,31,0,0,248,0,0,224,0, + 0,16,25,50,19,1,1,31,240,63,248,127,252,248,62,112, + 30,48,31,0,31,0,30,0,62,0,60,0,120,0,240,1, + 224,3,192,3,128,3,128,3,128,3,128,3,128,0,0,0, + 0,7,192,7,192,7,192,7,192,33,32,160,35,1,250,0, + 31,254,0,0,0,127,255,128,0,1,255,255,224,0,3,255, + 255,240,0,7,240,3,248,0,15,192,1,252,0,31,128,0, + 124,0,63,7,159,126,0,62,31,255,63,0,124,63,255,31, + 0,124,127,255,31,0,120,126,63,31,0,248,252,31,15,0, + 248,248,31,15,128,248,248,31,15,128,248,248,31,15,128,248, + 248,31,15,0,248,248,31,15,0,248,248,31,15,0,248,248, + 31,31,0,120,124,63,30,0,124,124,127,190,0,124,63,255, + 252,0,62,31,231,248,0,63,7,195,240,0,31,128,0,0, + 0,15,192,0,0,0,7,248,3,0,0,3,255,255,0,0, + 1,255,255,0,0,0,127,255,0,0,0,7,255,0,0,23, + 25,75,24,1,0,0,124,0,0,252,0,0,254,0,0,254, + 0,1,254,0,1,255,0,3,255,0,3,207,0,3,207,128, + 7,207,128,7,135,192,7,135,192,15,135,192,15,3,224,31, + 3,224,31,3,240,31,255,240,63,255,240,63,255,248,127,255, + 248,124,0,248,124,0,252,248,0,124,248,0,126,240,0,62, + 19,25,75,23,2,0,255,248,0,255,254,0,255,255,0,255, + 255,0,248,63,0,248,15,128,248,15,128,248,15,0,248,15, + 0,248,63,0,255,254,0,255,248,0,255,252,0,255,255,0, + 248,15,192,248,3,192,248,3,224,248,3,224,248,3,224,248, + 3,224,248,7,224,255,255,192,255,255,128,255,255,0,255,252, + 0,21,25,75,25,2,1,3,255,0,15,255,192,31,255,224, + 63,255,240,62,3,240,124,1,240,120,1,248,120,0,248,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,1,248,120,1,248,124,1,248, + 124,3,240,63,7,240,31,255,224,15,255,192,7,255,0,1, + 252,0,20,25,75,23,2,0,255,224,0,255,252,0,255,254, + 0,255,255,0,248,63,128,248,15,192,248,7,192,248,3,224, + 248,3,224,248,1,224,248,1,224,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,224,248,3,224,248,3,224,248,7, + 192,248,15,192,248,63,128,255,255,0,255,254,0,255,252,0, + 255,224,0,17,25,75,21,2,0,255,255,0,255,255,0,255, + 255,0,255,255,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,255,255,0,255,255,0,255,255,0, + 255,255,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,255,255,128,255,255,128,255,255, + 128,255,255,128,16,25,50,19,2,0,255,255,255,255,255,255, + 255,255,248,0,248,0,248,0,248,0,248,0,248,0,255,254, + 255,254,255,254,255,254,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,22,25,75,26, + 2,1,1,255,192,7,255,224,15,255,240,31,255,248,63,0, + 248,62,0,124,124,0,124,124,0,0,248,0,0,248,0,0, + 248,0,0,248,7,252,248,7,252,248,7,252,248,7,252,248, + 0,124,248,0,124,124,0,124,126,0,124,63,0,124,63,192, + 124,31,255,252,15,255,252,3,255,252,0,127,192,20,25,75, + 24,2,0,248,1,240,248,1,240,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,240,248,1,240,248,1,240,248,1, + 240,255,255,240,255,255,240,255,255,240,255,255,240,248,1,240, + 248,1,240,248,1,240,248,1,240,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,240,248,1,240,248,1,240,5,25, + 25,9,2,0,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,17,25,75, + 21,2,0,0,15,128,0,15,128,0,15,128,0,15,128,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,0,15,128,0,15,128,0,15,128,0,15,128,0,15,128, + 0,15,128,0,15,128,248,15,128,248,15,128,248,15,128,252, + 31,0,127,255,0,127,254,0,63,252,0,15,240,0,19,25, + 75,23,2,0,248,7,192,248,15,128,248,31,128,248,63,0, + 248,126,0,248,124,0,248,248,0,249,248,0,251,240,0,251, + 224,0,255,192,0,255,192,0,255,224,0,255,240,0,251,240, + 0,249,248,0,249,252,0,248,252,0,248,126,0,248,63,0, + 248,63,128,248,31,128,248,15,192,248,15,224,248,7,224,16, + 25,50,19,2,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,255, + 255,255,255,255,255,255,255,27,25,100,31,2,0,255,0,31, + 224,255,0,63,224,255,128,63,224,255,128,63,224,255,128,127, + 224,255,192,127,224,255,192,123,224,251,192,123,224,251,224,251, + 224,251,224,243,224,251,224,243,224,249,241,243,224,249,241,243, + 224,249,241,227,224,248,243,227,224,248,251,227,224,248,251,195, + 224,248,127,195,224,248,127,195,224,248,127,131,224,248,127,131, + 224,248,63,131,224,248,63,131,224,248,63,3,224,248,31,3, + 224,21,25,75,25,2,0,254,0,248,255,0,248,255,0,248, + 255,128,248,255,128,248,255,192,248,255,192,248,251,224,248,251, + 224,248,249,224,248,249,240,248,248,240,248,248,248,248,248,120, + 248,248,124,248,248,60,248,248,62,248,248,30,248,248,31,248, + 248,31,248,248,15,248,248,15,248,248,7,248,248,7,248,248, + 3,248,23,25,75,27,2,1,3,255,128,7,255,192,31,255, + 240,31,255,240,63,1,248,126,0,252,124,0,124,120,0,60, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,124,0,124,124,0, + 124,62,0,248,63,131,248,31,255,240,15,255,224,7,255,192, + 0,254,0,18,25,75,21,2,0,255,240,0,255,252,0,255, + 255,0,255,255,128,248,31,128,248,15,128,248,7,192,248,7, + 192,248,7,192,248,15,128,248,31,128,255,255,128,255,255,0, + 255,252,0,255,240,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,26,25,100,29,2,1,3,255,128,0,7,255, + 192,0,31,255,224,0,31,255,240,0,63,1,248,0,126,0, + 252,0,124,0,124,0,120,0,60,0,248,0,62,0,248,0, + 62,0,248,0,62,0,248,0,62,0,248,0,62,0,248,0, + 62,0,248,0,62,0,248,0,62,0,120,0,60,0,124,0, + 124,0,124,0,124,0,62,0,248,0,63,131,240,0,31,255, + 255,192,15,255,255,192,3,255,255,192,0,255,255,192,19,25, + 75,22,2,0,255,252,0,255,255,0,255,255,128,255,255,192, + 248,15,192,248,7,224,248,3,224,248,3,224,248,3,192,248, + 7,192,248,31,128,255,255,0,255,252,0,255,255,0,255,255, + 128,248,15,128,248,7,192,248,7,192,248,7,192,248,3,192, + 248,3,192,248,3,192,248,3,224,248,3,224,248,3,224,20, + 25,75,23,2,1,7,254,0,15,255,0,31,255,128,63,255, + 192,126,7,192,124,3,192,124,3,224,124,0,0,124,0,0, + 127,0,0,63,240,0,31,254,0,7,255,128,1,255,192,0, + 31,224,0,3,224,0,1,240,248,1,240,248,1,240,248,3, + 224,126,7,224,127,255,192,63,255,128,15,255,0,3,248,0, + 20,25,75,22,1,0,255,255,240,255,255,240,255,255,240,255, + 255,240,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,21,25,75,25,2,0,248,0,248,248,0,248,248,0,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,240,248,0,240,120,1,240, + 124,3,240,127,7,224,63,255,192,31,255,128,15,255,0,3, + 252,0,24,25,75,25,1,0,248,0,63,248,0,62,252,0, + 62,124,0,124,124,0,124,126,0,124,62,0,248,63,0,248, + 63,1,240,31,1,240,31,129,240,31,131,224,15,131,224,15, + 195,224,7,199,192,7,199,192,7,231,128,3,239,128,3,255, + 128,3,255,0,1,255,0,1,254,0,1,254,0,0,254,0, + 0,252,0,34,25,125,34,0,0,252,3,240,15,192,252,3, + 240,15,128,124,3,240,15,128,126,7,248,15,128,126,7,248, + 15,128,126,7,248,31,0,62,7,248,31,0,62,15,252,31, + 0,63,15,60,30,0,63,15,60,62,0,31,15,60,62,0, + 31,31,62,62,0,31,30,30,60,0,31,158,30,60,0,15, + 158,30,124,0,15,190,31,124,0,15,188,15,120,0,7,252, + 15,120,0,7,252,15,120,0,7,252,15,248,0,7,248,7, + 240,0,3,248,7,240,0,3,248,7,240,0,3,248,7,240, + 0,3,240,3,224,0,22,25,75,24,1,0,252,0,248,126, + 1,248,62,1,240,63,3,224,31,135,192,15,135,192,15,207, + 128,7,239,0,3,255,0,3,254,0,1,252,0,0,252,0, + 0,252,0,1,254,0,3,254,0,3,255,0,7,223,128,15, + 143,128,15,15,192,31,7,224,62,3,224,62,3,240,124,1, + 248,248,1,248,248,0,252,21,25,75,22,1,0,252,1,248, + 252,1,240,126,3,224,126,3,224,63,7,192,31,7,192,31, + 143,128,15,143,128,15,223,0,7,223,0,7,254,0,3,254, + 0,3,252,0,1,248,0,1,248,0,0,240,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,18,25,75,22,2,0,127,255, + 192,127,255,192,127,255,192,127,255,192,0,15,192,0,31,128, + 0,63,0,0,63,0,0,126,0,0,252,0,1,252,0,1, + 248,0,3,240,0,7,224,0,7,224,0,15,192,0,31,128, + 0,63,128,0,63,0,0,126,0,0,252,0,0,255,255,192, + 255,255,192,255,255,192,255,255,192,8,32,32,13,3,249,255, + 255,255,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,255,255,255,11, + 28,56,15,2,254,224,0,224,0,240,0,240,0,240,0,112, + 0,120,0,120,0,56,0,60,0,60,0,28,0,30,0,30, + 0,30,0,15,0,15,0,15,0,7,0,7,128,7,128,3, + 128,3,192,3,192,1,192,1,224,1,224,1,224,8,32,32, + 13,3,249,255,255,255,31,31,31,31,31,31,31,31,31,31, + 31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31, + 255,255,255,18,21,63,34,8,0,0,192,0,0,224,0,1, + 224,0,1,224,0,1,48,0,3,48,0,2,24,0,6,24, + 0,6,24,0,4,12,0,12,12,0,12,14,0,24,6,0, + 24,6,0,24,7,0,48,3,0,48,3,0,112,1,128,96, + 1,128,96,1,192,192,0,192,17,3,9,17,0,251,255,255, + 128,255,255,128,255,255,128,7,7,7,9,255,21,248,120,60, + 60,28,14,6,15,18,36,19,2,0,7,224,63,248,127,252, + 124,62,120,62,0,62,15,254,63,254,127,254,124,62,248,62, + 248,62,248,62,248,62,252,126,127,254,63,222,31,30,17,25, + 75,20,2,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,249,240,0,255,252,0,255, + 254,0,254,63,0,252,31,0,248,15,128,248,15,128,248,15, + 128,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 252,31,0,254,63,0,255,254,0,251,252,0,249,240,0,15, + 18,36,18,2,0,7,224,31,248,63,252,124,124,120,60,248, + 62,248,0,248,0,248,0,248,0,248,0,248,62,248,62,120, + 60,124,124,63,252,31,248,15,224,17,25,75,21,2,0,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,0,15,128,7,207,128,31,255,128,63,255,128,126,63,128, + 124,31,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,124,31,128,126,63, + 128,63,255,128,31,239,128,7,207,128,15,18,36,19,2,0, + 7,224,31,248,63,252,124,60,120,62,248,30,248,30,255,254, + 255,254,255,254,248,0,248,0,248,30,120,62,124,62,63,252, + 31,248,7,224,12,25,50,13,1,0,7,240,15,240,31,240, + 31,0,31,0,31,0,31,0,255,224,255,224,255,224,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,17,25,75,21, + 2,249,7,207,128,31,255,128,63,255,128,126,63,128,124,31, + 128,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,124,31,128,126,63,128,63, + 255,128,31,239,128,7,207,128,0,15,128,0,15,128,124,15, + 128,124,31,0,63,254,0,31,252,0,7,240,0,16,25,50, + 20,2,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,249,248,255,252,255,254,254,63,252,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,5,25,25,9,2,0,248,248,248,248,248, + 0,0,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,6,32,32,12,4,249,124,124,124,124,124,0, + 0,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124, + 124,124,124,124,124,124,252,252,248,240,16,25,50,19,2,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,62, + 248,124,248,248,249,248,249,240,251,224,255,192,255,192,255,192, + 255,192,251,224,251,240,249,240,248,248,248,252,248,124,248,126, + 248,63,5,25,25,9,2,0,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,27,18,72,31,2,0,249,248,62,0,251,252,127,128,255, + 254,255,192,254,63,199,192,252,63,135,192,248,31,3,224,248, + 31,3,224,248,31,3,224,248,31,3,224,248,31,3,224,248, + 31,3,224,248,31,3,224,248,31,3,224,248,31,3,224,248, + 31,3,224,248,31,3,224,248,31,3,224,248,31,3,224,16, + 18,36,20,2,0,249,248,251,252,255,254,252,63,252,31,248, + 31,248,31,248,31,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,18,18,54,21,2,0,3, + 240,0,15,252,0,63,254,0,62,31,0,124,15,128,120,15, + 128,248,7,128,248,7,128,248,7,192,248,7,192,248,7,192, + 248,7,128,120,15,128,124,15,128,62,31,0,63,254,0,15, + 252,0,3,240,0,17,25,75,20,2,249,249,240,0,251,252, + 0,255,254,0,254,63,0,252,31,0,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,252,31,0,254,63,0,255,254,0,255,252,0,249,240, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,17,25,75,21,2,249,7,207,128,31, + 239,128,63,255,128,126,63,128,124,31,128,248,15,128,248,15, + 128,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 248,15,128,124,31,128,126,63,128,63,255,128,31,255,128,7, + 207,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,0,15,128,0,15,128,11,18,36,13,2,0,249,224,251, + 224,255,224,255,224,255,0,252,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,15,18,36,18,2,0,15,224,63,248,127,248,124,124,248, + 124,248,124,126,0,127,192,63,248,15,252,1,252,0,126,248, + 62,248,62,248,124,127,252,63,248,15,192,13,23,46,14,1, + 0,1,0,7,0,31,0,31,0,31,0,255,240,255,240,255, + 240,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,15,128,15,248,7,248,3,240,16, + 18,36,20,2,0,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,248,31,248,31,248,31,248, + 31,252,63,127,255,63,223,31,159,18,18,54,19,0,0,248, + 7,192,124,7,192,124,15,128,124,15,128,62,15,128,62,31, + 0,62,31,0,31,30,0,31,30,0,15,62,0,15,188,0, + 15,188,0,7,252,0,7,248,0,7,248,0,3,240,0,3, + 240,0,1,240,0,29,18,72,29,0,0,248,15,128,248,124, + 31,192,240,124,31,193,240,124,31,193,240,124,31,225,224,62, + 63,225,224,62,61,227,224,62,61,227,224,31,125,243,192,31, + 120,247,192,31,120,247,192,15,248,255,128,15,248,127,128,15, + 240,127,128,15,240,127,128,7,240,127,0,7,224,63,0,7, + 224,63,0,17,18,54,19,1,0,252,31,0,124,31,0,126, + 62,0,63,60,0,31,124,0,15,248,0,15,248,0,7,240, + 0,7,224,0,7,240,0,15,248,0,31,248,0,30,252,0, + 62,126,0,60,62,0,124,63,0,248,31,0,248,15,128,17, + 25,75,18,1,249,248,15,128,248,15,128,248,15,0,124,31, + 0,124,31,0,124,30,0,62,62,0,62,60,0,30,60,0, + 31,124,0,31,120,0,15,248,0,15,248,0,15,240,0,7, + 240,0,7,240,0,3,224,0,3,224,0,3,224,0,3,192, + 0,7,192,0,7,128,0,7,128,0,15,128,0,15,128,0, + 14,18,36,18,2,0,255,252,255,252,255,252,0,124,0,248, + 1,248,3,240,7,224,7,192,15,128,31,128,63,0,126,0, + 124,0,248,0,255,252,255,252,255,252,13,35,70,18,3,248, + 0,248,3,248,7,248,15,192,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,0,15,0,15,0,31,0,126,0, + 252,0,240,0,252,0,126,0,63,0,31,0,15,0,15,0, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,192, + 7,248,3,248,0,248,2,37,37,12,5,247,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,13,35,70,17,2,248,248,0,254,0,255,0,31,0,15, + 0,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,7,128,7,192,3,224,1,248,0,248,1,248,3,224,7, + 192,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,0,31,0,255,0,254,0,248,0,18,4,12, + 18,0,7,31,195,192,63,255,128,127,255,0,240,126,0,255 + }; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--40-400-72-72-P-198-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 30, '1' Height: 30 + Calculated Max Values w=38 h=43 x=10 y=26 dx=42 dy= 0 ascent=43 len=195 + Font Bounding box w=59 h=54 x=-3 y=-11 + Calculated Min Values x=-1 y=-11 dx= 0 dy= 0 + Pure Font ascent =30 descent=-7 + X Font ascent =31 descent=-8 + Max Font ascent =43 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub30[16953] U8G_SECTION(".progmem.u8g_font_fub30") = { + 0,59,54,253,245,30,9,163,21,182,32,255,249,43,245,31, + 248,0,0,0,12,0,0,5,30,30,16,5,0,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,0,0,0,248,248,248,248,248,15,12,24,21,3, + 18,252,126,252,126,252,126,252,126,248,126,248,126,248,60,248, + 60,120,60,120,60,120,60,120,60,25,30,120,29,2,0,0, + 60,30,0,0,60,30,0,0,120,60,0,0,120,60,0,0, + 120,60,0,0,120,120,0,0,240,120,0,0,240,120,0,15, + 255,255,128,31,255,255,0,31,255,255,0,31,255,255,0,1, + 224,224,0,3,193,224,0,3,193,224,0,3,193,224,0,7, + 131,192,0,7,131,192,0,127,255,252,0,255,255,248,0,255, + 255,248,0,255,255,248,0,15,7,128,0,30,15,0,0,30, + 15,0,0,30,15,0,0,62,30,0,0,60,30,0,0,60, + 30,0,0,60,30,0,0,21,37,111,23,1,252,0,96,0, + 0,96,0,0,96,0,3,254,0,15,255,128,31,255,192,63, + 255,224,127,111,224,126,99,240,124,99,240,124,97,240,124,96, + 0,124,96,0,126,96,0,127,224,0,127,240,0,63,254,0, + 31,255,128,7,255,224,0,255,240,0,127,240,0,103,248,0, + 97,248,248,97,248,248,96,248,252,97,248,252,97,248,126,99, + 240,127,255,240,63,255,224,31,255,192,15,255,128,3,254,0, + 0,96,0,0,96,0,0,96,0,0,96,0,37,30,150,41, + 2,0,7,224,0,120,0,31,248,0,240,0,63,252,0,240, + 0,124,62,1,224,0,120,30,3,224,0,240,15,3,192,0, + 240,15,7,192,0,240,15,7,128,0,240,15,15,0,0,240, + 15,15,0,0,240,15,30,0,0,240,15,30,0,0,120,30, + 60,0,0,124,62,124,0,0,63,252,120,63,0,31,248,248, + 255,192,7,224,241,255,224,0,1,227,225,240,0,1,227,192, + 240,0,3,199,128,120,0,3,199,128,120,0,7,135,128,120, + 0,7,135,128,120,0,15,7,128,120,0,31,7,128,120,0, + 30,3,192,240,0,62,3,192,240,0,60,1,243,224,0,120, + 1,255,192,0,120,0,127,128,28,30,120,31,2,1,3,255, + 0,0,15,255,128,0,31,255,192,0,63,143,224,0,63,7, + 224,0,62,3,224,0,63,7,224,0,63,7,224,0,31,15, + 192,0,31,159,192,0,15,255,128,0,15,255,0,0,7,252, + 0,0,15,248,0,0,31,248,15,128,63,252,15,128,63,126, + 15,128,126,127,15,128,126,63,143,128,252,31,207,128,252,15, + 255,0,248,7,255,0,248,3,255,0,252,1,254,0,252,0, + 254,0,126,0,254,0,127,131,255,0,63,255,255,128,31,255, + 255,224,7,255,135,240,6,12,12,16,5,18,252,252,252,124, + 124,124,124,124,120,120,120,120,9,36,72,16,4,251,15,128, + 31,0,31,0,31,0,62,0,62,0,62,0,126,0,124,0, + 124,0,124,0,124,0,252,0,252,0,252,0,252,0,248,0, + 248,0,248,0,248,0,248,0,252,0,252,0,252,0,124,0, + 124,0,124,0,124,0,126,0,62,0,62,0,62,0,31,0, + 31,0,31,0,15,128,8,36,36,16,4,251,240,248,120,124, + 124,124,62,62,62,63,63,31,31,31,31,31,31,31,31,31, + 31,31,31,31,63,63,63,62,62,62,124,124,124,248,248,240, + 16,16,32,26,5,14,4,32,28,56,30,120,30,120,15,240, + 7,224,227,199,255,255,255,255,243,207,7,224,15,240,30,120, + 30,120,28,56,4,32,24,25,75,40,8,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,255,255,255, + 255,255,255,255,255,255,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,8,10,10,12,2,251,31,31,62, + 62,60,124,120,120,240,240,10,5,10,14,2,8,255,192,255, + 192,255,192,255,192,255,192,5,5,5,12,4,0,248,248,248, + 248,248,13,32,64,17,2,254,0,120,0,120,0,120,0,240, + 0,240,0,240,1,224,1,224,1,224,3,192,3,192,3,192, + 3,192,7,128,7,128,7,128,15,0,15,0,15,0,14,0, + 30,0,30,0,30,0,60,0,60,0,60,0,120,0,120,0, + 120,0,120,0,240,0,240,0,20,30,90,23,1,1,3,252, + 0,15,255,0,31,255,128,63,15,128,62,7,192,124,3,192, + 124,3,224,124,3,224,124,3,224,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,240,248,1,240,248,1,240,248,1, + 240,248,1,240,248,1,240,248,1,240,248,1,240,124,3,224, + 124,3,224,124,3,224,124,3,224,62,7,192,63,15,128,31, + 255,128,15,255,0,3,252,0,12,30,60,23,4,0,1,240, + 3,240,15,240,63,240,255,240,255,240,253,240,249,240,225,240, + 129,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,20,30,90,23,1,1, + 3,255,0,7,255,128,31,255,192,31,255,224,63,255,240,63, + 3,240,126,1,240,126,1,240,124,1,240,0,1,240,0,3, + 240,0,3,240,0,7,224,0,15,224,0,15,192,0,31,128, + 0,63,0,0,254,0,1,252,0,3,248,0,7,240,0,15, + 224,0,63,128,0,127,0,0,252,0,0,255,255,240,255,255, + 240,255,255,240,255,255,240,255,255,240,19,30,90,23,2,1, + 7,252,0,31,255,0,63,255,128,127,255,128,127,255,192,252, + 15,192,252,7,192,248,7,192,0,7,192,0,7,192,0,15, + 192,0,63,192,3,255,128,3,254,0,3,252,0,3,255,0, + 3,255,128,0,31,192,0,7,224,0,7,224,0,7,224,0, + 3,224,248,7,224,252,7,224,252,7,192,126,15,192,127,255, + 128,63,255,128,31,255,0,15,252,0,21,30,90,23,1,0, + 0,63,128,0,63,128,0,127,128,0,255,128,0,255,128,1, + 255,128,1,255,128,3,239,128,3,207,128,7,207,128,15,143, + 128,15,143,128,31,15,128,31,15,128,62,15,128,62,15,128, + 124,15,128,252,15,128,248,15,128,255,255,248,255,255,248,255, + 255,248,255,255,248,255,255,248,0,15,128,0,15,128,0,15, + 128,0,15,128,0,15,128,0,15,128,19,30,90,23,2,0, + 127,255,192,127,255,192,127,255,192,127,255,192,127,255,192,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,252,0,125,255,0,127,255,128,127,255,192,127,15,224, + 126,7,224,124,3,224,0,3,224,0,3,224,0,3,224,0, + 3,224,0,3,224,248,7,224,252,7,224,252,15,192,127,255, + 128,127,255,128,63,254,0,15,252,0,20,30,90,23,1,1, + 3,254,0,7,255,0,15,255,128,31,255,192,63,255,192,63, + 7,224,126,3,224,126,3,224,124,0,0,124,0,0,252,0, + 0,248,0,0,249,255,0,251,255,128,255,255,192,255,15,224, + 254,7,224,254,3,240,252,3,240,252,3,240,252,1,240,252, + 1,240,124,3,240,124,3,240,126,3,224,63,7,224,63,255, + 192,31,255,128,15,255,0,3,254,0,19,30,90,23,2,0, + 255,255,224,255,255,224,255,255,224,255,255,224,255,255,224,0, + 7,224,0,7,224,0,7,192,0,15,192,0,15,192,0,31, + 128,0,31,128,0,63,0,0,63,0,0,63,0,0,126,0, + 0,126,0,0,252,0,0,252,0,1,252,0,1,248,0,1, + 248,0,3,240,0,3,240,0,7,240,0,7,224,0,15,224, + 0,15,192,0,15,192,0,31,192,0,20,30,90,23,1,1, + 7,254,0,31,255,128,63,255,192,127,255,224,127,255,224,126, + 7,224,124,3,224,124,3,224,124,3,224,124,3,224,126,7, + 224,127,15,192,63,255,128,15,255,0,7,252,0,31,255,0, + 63,255,192,127,15,224,124,7,224,252,3,240,252,3,240,248, + 1,240,248,3,240,252,3,240,252,3,240,254,7,240,127,255, + 224,63,255,192,31,255,128,15,255,0,20,30,90,23,1,1, + 3,252,0,15,255,0,31,255,128,63,255,192,127,255,192,126, + 7,224,252,7,224,252,3,224,252,3,240,248,3,240,248,3, + 240,252,3,240,252,7,240,124,7,240,127,15,240,63,255,240, + 63,253,240,31,249,240,7,225,240,0,3,240,0,3,224,0, + 3,224,0,3,224,124,7,224,124,7,192,126,15,192,63,255, + 128,31,255,0,15,254,0,7,252,0,5,20,20,12,5,0, + 248,248,248,248,248,0,0,0,0,0,0,0,0,0,0,248, + 248,248,248,248,9,25,50,13,2,251,31,0,31,0,31,0, + 31,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,31,128,31,0,63,0,62,0, + 62,0,124,0,124,0,120,0,248,0,240,0,24,21,63,40, + 8,2,0,0,1,0,0,15,0,0,63,0,1,252,0,7, + 224,0,63,0,0,252,0,7,224,0,63,0,0,252,0,0, + 224,0,0,248,0,0,126,0,0,15,192,0,3,240,0,0, + 126,0,0,31,192,0,3,240,0,0,126,0,0,31,0,0, + 3,24,10,30,40,8,7,255,255,255,255,255,255,255,255,255, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255, + 255,255,255,255,255,24,21,63,40,8,2,128,0,0,240,0, + 0,252,0,0,63,128,0,7,224,0,0,252,0,0,63,0, + 0,7,224,0,0,252,0,0,63,0,0,7,0,0,31,0, + 0,126,0,3,240,0,15,192,0,126,0,3,248,0,15,192, + 0,126,0,0,248,0,0,192,0,0,18,30,90,22,1,1, + 7,252,0,31,254,0,63,255,128,127,255,128,252,15,192,120, + 7,192,56,7,192,0,7,192,0,7,192,0,15,192,0,15, + 128,0,31,128,0,63,0,0,126,0,0,248,0,1,240,0, + 3,224,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,0,0,0,0,0,0,0,0,0,3,224,0,3,224, + 0,3,224,0,3,224,0,3,224,0,38,39,195,42,2,248, + 0,3,255,224,0,0,31,255,248,0,0,127,255,254,0,0, + 255,255,255,0,3,255,255,255,128,7,254,0,127,192,7,248, + 0,31,224,15,224,0,15,240,31,192,0,7,240,63,128,0, + 3,248,63,1,241,241,248,63,7,253,241,252,126,15,255,240, + 252,126,31,255,240,252,124,31,135,240,252,252,63,3,240,124, + 252,63,3,240,124,252,62,1,240,124,252,62,1,240,124,248, + 62,1,240,124,248,62,1,240,124,248,62,1,240,124,252,62, + 1,240,124,252,63,3,240,252,124,63,3,248,248,124,31,135, + 249,248,126,31,255,255,240,63,15,254,255,224,63,7,252,127, + 192,31,129,248,31,0,31,192,0,0,0,15,224,0,0,0, + 7,248,0,0,0,3,254,0,56,0,1,255,255,248,0,0, + 255,255,248,0,0,63,255,248,0,0,15,255,248,0,0,1, + 255,224,0,27,30,120,28,1,0,0,63,0,0,0,63,128, + 0,0,127,128,0,0,127,128,0,0,127,192,0,0,255,192, + 0,0,255,224,0,0,255,224,0,1,251,224,0,1,243,240, + 0,3,243,240,0,3,241,240,0,3,225,248,0,7,225,248, + 0,7,224,248,0,7,192,252,0,15,192,252,0,15,192,126, + 0,15,128,126,0,31,255,254,0,31,255,255,0,63,255,255, + 0,63,255,255,0,63,255,255,128,126,0,31,128,126,0,31, + 128,126,0,15,192,252,0,15,192,252,0,7,192,248,0,7, + 224,22,30,90,27,3,0,255,254,0,255,255,128,255,255,224, + 255,255,224,255,255,240,248,7,240,248,3,240,248,1,240,248, + 1,240,248,1,240,248,3,240,248,7,224,255,255,192,255,255, + 128,255,254,0,255,255,192,255,255,240,248,3,248,248,1,248, + 248,0,252,248,0,252,248,0,252,248,0,252,248,1,252,248, + 3,252,255,255,248,255,255,240,255,255,224,255,255,192,255,255, + 0,24,30,90,29,2,1,1,255,192,3,255,240,15,255,248, + 15,255,252,31,255,254,63,128,254,62,0,127,126,0,63,124, + 0,63,124,0,63,252,0,0,252,0,0,252,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,252,0,0, + 252,0,0,124,0,63,124,0,63,126,0,127,62,0,127,63, + 128,254,31,255,254,31,255,252,15,255,248,7,255,224,1,255, + 192,24,30,90,29,3,0,255,248,0,255,255,0,255,255,192, + 255,255,224,255,255,240,248,15,248,248,1,252,248,0,252,248, + 0,126,248,0,126,248,0,62,248,0,63,248,0,63,248,0, + 63,248,0,31,248,0,31,248,0,63,248,0,63,248,0,63, + 248,0,63,248,0,126,248,0,126,248,0,252,248,1,252,248, + 15,248,255,255,240,255,255,224,255,255,192,255,255,0,255,248, + 0,20,30,90,25,3,0,255,255,224,255,255,224,255,255,224, + 255,255,224,255,255,224,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,255,255, + 224,255,255,224,255,255,224,255,255,224,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,255,255,240,255,255,240,255,255,240,255,255,240,255,255, + 240,19,30,90,24,3,0,255,255,224,255,255,224,255,255,224, + 255,255,224,255,255,224,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,255,255,192,255,255, + 192,255,255,192,255,255,192,255,255,192,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,26,30,120,30,2,1,0,127,240,0,1,255,252,0,3, + 255,254,0,15,255,255,0,15,255,255,128,31,192,63,128,63, + 128,15,192,63,0,15,192,126,0,15,192,126,0,7,192,124, + 0,0,0,252,0,0,0,252,0,0,0,252,0,0,0,248, + 1,255,192,248,1,255,192,248,1,255,192,252,1,255,192,252, + 1,255,192,252,0,7,192,124,0,7,192,126,0,7,192,127, + 0,7,192,63,128,7,192,63,224,7,192,31,255,255,192,15, + 255,255,192,7,255,255,192,1,255,255,192,0,127,254,0,23, + 30,90,29,3,0,248,0,62,248,0,62,248,0,62,248,0, + 62,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,248,0,62,248,0,62,255,255,254,255,255,254,255, + 255,254,255,255,254,255,255,254,248,0,62,248,0,62,248,0, + 62,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,5, + 30,30,11,3,0,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,20,30,90,25,2,0,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,248,1,240,248,3,240,252,3,240,252,3, + 240,254,7,224,127,255,224,127,255,192,63,255,128,31,255,0, + 15,254,0,23,30,90,27,3,0,248,1,248,248,3,248,248, + 7,240,248,15,224,248,15,192,248,31,192,248,63,128,248,127, + 0,248,126,0,248,254,0,249,252,0,251,248,0,251,240,0, + 255,240,0,255,240,0,251,248,0,249,252,0,249,254,0,248, + 254,0,248,127,0,248,127,128,248,63,128,248,31,192,248,31, + 224,248,15,224,248,7,240,248,7,248,248,3,248,248,1,252, + 248,0,254,19,30,90,23,3,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,255,255,224,255,255,224,255,255,224,255,255,224, + 255,255,224,31,30,120,37,3,0,255,192,3,254,255,192,3, + 254,255,192,7,254,255,192,7,254,255,224,7,254,251,224,15, + 254,251,224,15,254,251,240,15,190,251,240,15,190,249,240,31, + 190,249,240,31,62,249,248,31,62,248,248,63,62,248,248,63, + 62,248,252,62,62,248,124,126,62,248,124,126,62,248,126,124, + 62,248,126,124,62,248,62,252,62,248,62,248,62,248,63,248, + 62,248,31,248,62,248,31,248,62,248,31,240,62,248,31,240, + 62,248,15,240,62,248,15,224,62,248,15,224,62,248,7,224, + 62,25,30,120,31,3,0,255,128,15,128,255,128,15,128,255, + 128,15,128,255,192,15,128,255,192,15,128,255,224,15,128,251, + 224,15,128,251,240,15,128,249,240,15,128,249,248,15,128,248, + 248,15,128,248,252,15,128,248,252,15,128,248,126,15,128,248, + 126,15,128,248,63,15,128,248,63,15,128,248,31,143,128,248, + 31,143,128,248,15,143,128,248,15,207,128,248,7,207,128,248, + 7,239,128,248,3,239,128,248,3,255,128,248,1,255,128,248, + 1,255,128,248,0,255,128,248,0,255,128,248,0,127,128,27, + 30,120,31,2,1,0,255,224,0,3,255,248,0,7,255,252, + 0,15,255,254,0,31,255,255,0,63,192,127,128,63,0,31, + 128,127,0,31,192,126,0,15,192,126,0,15,192,252,0,15, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,15,224,126,0,15,192,126,0,15,192,127,0,31, + 192,63,0,31,128,63,192,127,128,31,255,255,0,15,255,254, + 0,7,255,252,0,3,255,248,0,0,255,224,0,21,30,90, + 26,3,0,255,252,0,255,255,128,255,255,192,255,255,224,255, + 255,240,248,7,240,248,3,248,248,1,248,248,1,248,248,0, + 248,248,1,248,248,1,248,248,1,248,248,7,240,255,255,240, + 255,255,224,255,255,192,255,255,128,255,252,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,30,30,120, + 33,2,1,0,255,224,0,3,255,248,0,7,255,252,0,15, + 255,254,0,31,255,255,0,63,192,127,128,63,0,31,128,127, + 0,31,192,126,0,15,192,126,0,15,192,252,0,15,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,252, + 0,15,192,126,0,15,192,126,0,15,192,127,0,31,128,63, + 0,31,128,63,192,127,0,31,255,254,252,15,255,255,252,7, + 255,255,252,3,255,255,252,0,255,255,252,23,30,90,27,3, + 0,255,255,0,255,255,224,255,255,240,255,255,248,255,255,248, + 248,3,252,248,1,252,248,0,252,248,0,124,248,0,124,248, + 0,252,248,1,248,248,7,240,255,255,224,255,255,192,255,255, + 128,255,255,224,255,255,240,248,3,248,248,1,248,248,1,248, + 248,0,248,248,0,248,248,0,248,248,0,252,248,0,252,248, + 0,252,248,0,252,248,0,124,248,0,126,23,30,90,27,2, + 1,1,255,128,7,255,224,15,255,240,31,255,240,63,255,248, + 63,1,248,126,0,252,126,0,252,124,0,124,126,0,0,126, + 0,0,63,128,0,63,240,0,31,254,0,15,255,192,3,255, + 240,0,127,248,0,7,252,0,1,252,0,0,126,248,0,126, + 248,0,62,252,0,126,252,0,126,126,0,252,127,255,252,63, + 255,248,31,255,240,15,255,224,3,255,128,23,30,90,25,1, + 0,255,255,254,255,255,254,255,255,254,255,255,254,255,255,254, + 0,124,0,0,124,0,0,124,0,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,0,124,0,0,124,0,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,0,124,0,24,30,90,30,3, + 0,248,0,31,248,0,31,248,0,31,248,0,31,248,0,31, + 248,0,31,248,0,31,248,0,31,248,0,31,248,0,31,248, + 0,31,248,0,31,248,0,31,248,0,31,248,0,31,248,0, + 31,248,0,31,248,0,31,248,0,31,252,0,31,252,0,31, + 252,0,63,124,0,63,126,0,126,127,0,254,63,255,252,31, + 255,252,31,255,248,7,255,224,1,255,192,28,30,120,30,1, + 0,252,0,3,240,252,0,7,240,254,0,7,224,126,0,7, + 224,126,0,15,192,127,0,15,192,63,0,31,192,63,0,31, + 128,63,128,31,128,31,128,63,128,31,128,63,0,31,192,63, + 0,15,192,127,0,15,192,126,0,7,224,126,0,7,224,252, + 0,7,224,252,0,3,240,252,0,3,241,248,0,3,249,248, + 0,1,249,248,0,1,251,240,0,1,255,240,0,0,255,240, + 0,0,255,224,0,0,255,224,0,0,127,192,0,0,127,192, + 0,0,127,192,0,0,63,128,0,38,30,150,40,1,0,252, + 0,252,0,252,252,1,254,0,252,252,1,254,0,252,252,1, + 254,1,252,254,1,254,1,252,126,3,255,1,248,126,3,255, + 1,248,126,3,255,1,248,126,3,255,1,248,63,7,255,131, + 240,63,7,207,131,240,63,7,207,131,240,63,7,207,131,240, + 31,15,207,195,224,31,143,135,199,224,31,143,135,199,224,31, + 143,135,199,224,15,159,135,231,192,15,159,3,231,192,15,223, + 3,239,192,15,223,3,239,192,7,255,3,255,128,7,254,1, + 255,128,7,254,1,255,128,7,254,1,255,128,3,254,1,255, + 0,3,252,0,255,0,3,252,0,255,0,3,252,0,255,0, + 3,252,0,255,0,26,30,120,28,1,0,126,0,31,128,127, + 0,63,128,63,128,63,0,63,128,126,0,31,192,126,0,15, + 192,252,0,15,225,248,0,7,241,248,0,3,243,240,0,3, + 251,224,0,1,255,224,0,0,255,192,0,0,255,128,0,0, + 127,128,0,0,127,0,0,0,127,128,0,0,255,128,0,1, + 255,192,0,1,255,224,0,3,247,224,0,3,227,240,0,7, + 227,248,0,15,193,248,0,15,129,252,0,31,128,254,0,63, + 0,126,0,63,0,127,0,126,0,63,128,252,0,31,128,252, + 0,31,192,24,30,90,25,1,0,252,0,127,254,0,126,126, + 0,254,127,0,252,63,1,252,63,1,248,31,131,248,31,131, + 240,15,195,240,15,199,224,7,231,224,7,239,192,3,255,192, + 3,255,128,1,255,128,1,255,0,0,255,0,0,254,0,0, + 126,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,22,30,90,26,2,0,127,255,252,127,255,252,127, + 255,252,127,255,252,127,255,252,0,1,252,0,3,248,0,7, + 240,0,15,240,0,31,224,0,31,192,0,63,128,0,127,128, + 0,255,0,0,254,0,1,252,0,3,252,0,7,248,0,7, + 240,0,15,224,0,31,224,0,63,192,0,63,128,0,127,0, + 0,255,0,0,255,255,252,255,255,252,255,255,252,255,255,252, + 255,255,252,9,38,76,15,3,248,255,128,255,128,255,128,255, + 128,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,255,128,255, + 128,255,128,255,128,13,32,64,17,2,254,240,0,240,0,120, + 0,120,0,120,0,120,0,60,0,60,0,60,0,30,0,30, + 0,30,0,14,0,15,0,15,0,15,0,7,128,7,128,7, + 128,3,192,3,192,3,192,3,192,1,224,1,224,1,224,0, + 240,0,240,0,240,0,112,0,120,0,120,9,38,76,15,3, + 248,255,128,255,128,255,128,255,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,255,128,255,128,255,128,255,128,20,25,75, + 40,10,0,0,96,0,0,240,0,0,240,0,0,240,0,1, + 248,0,1,152,0,3,156,0,3,12,0,3,12,0,7,14, + 0,6,6,0,6,6,0,14,7,0,12,3,0,28,3,128, + 28,1,128,24,1,128,56,1,192,48,0,192,48,0,192,112, + 0,224,96,0,96,224,0,112,224,0,112,192,0,48,20,4, + 12,20,0,250,255,255,240,255,255,240,255,255,240,255,255,240, + 9,8,16,10,255,25,248,0,124,0,60,0,62,0,30,0, + 15,0,7,0,3,128,19,20,60,22,2,1,15,254,0,31, + 255,0,63,255,128,126,15,128,124,15,192,0,7,192,0,127, + 192,15,255,192,63,255,192,127,255,192,127,7,192,252,7,192, + 252,7,192,248,15,192,248,15,192,252,15,192,254,31,192,127, + 255,192,63,247,192,31,227,224,20,30,90,25,3,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,249,254,0,251, + 255,128,255,255,192,255,15,192,254,7,224,252,3,224,252,3, + 240,252,3,240,252,3,240,248,1,240,248,1,240,248,3,240, + 252,3,240,252,3,240,252,3,224,254,7,224,255,15,192,251, + 255,192,251,255,128,248,254,0,17,20,60,21,2,1,15,252, + 0,31,254,0,63,255,0,126,63,0,124,31,128,124,31,128, + 252,15,128,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,252,15,128,252,31,128,124,31,128,126,63, + 0,63,255,0,31,254,0,15,252,0,20,30,90,25,2,0, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,7,249, + 240,31,253,240,63,255,240,63,15,240,126,7,240,124,3,240, + 252,3,240,252,3,240,252,3,240,248,1,240,248,1,240,248, + 3,240,252,3,240,252,3,240,124,3,240,126,7,240,63,15, + 240,63,253,240,31,249,240,7,241,240,19,20,60,22,2,1, + 7,252,0,31,255,0,63,255,0,62,31,128,124,15,192,124, + 7,192,252,7,192,255,255,192,255,255,192,255,255,224,255,255, + 224,248,0,0,248,0,0,252,0,0,124,7,192,124,15,192, + 126,31,128,63,255,128,31,255,0,7,252,0,14,30,60,15, + 1,1,3,252,7,252,15,252,15,192,15,128,15,128,15,128, + 15,128,15,128,15,128,255,248,255,248,255,248,255,248,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,20,28, + 84,25,2,249,7,249,240,31,253,240,63,255,240,63,15,240, + 126,7,240,124,3,240,252,3,240,252,3,240,252,3,240,248, + 1,240,248,1,240,248,3,240,252,3,240,252,3,240,124,7, + 240,126,7,240,63,255,240,63,253,240,15,249,240,3,225,240, + 0,3,240,0,3,240,124,3,240,126,7,224,63,255,224,63, + 255,192,31,255,128,3,252,0,18,30,90,24,3,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,249,255,0,251, + 255,128,255,255,192,255,31,192,254,15,192,252,7,192,252,7, + 192,252,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,6,30,30,10,2,0,252,252, + 252,252,252,0,0,0,0,0,124,124,124,124,124,124,124,124, + 124,124,124,124,124,124,124,124,124,124,124,124,7,39,39,13, + 4,247,126,126,126,126,126,0,0,0,0,0,62,62,62,62, + 62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62, + 62,62,62,126,254,254,254,252,248,18,30,90,22,3,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,31,192, + 248,31,128,248,63,0,248,126,0,248,252,0,249,252,0,249, + 248,0,251,240,0,255,224,0,255,240,0,251,240,0,249,248, + 0,249,252,0,248,252,0,248,126,0,248,127,0,248,63,0, + 248,31,128,248,31,192,248,15,192,5,30,30,11,3,0,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,31,20,80, + 37,3,1,248,255,15,240,249,255,159,252,251,255,191,252,255, + 31,248,254,254,15,240,126,252,7,224,62,252,7,224,62,248, + 7,192,62,248,7,192,62,248,7,192,62,248,7,192,62,248, + 7,192,62,248,7,192,62,248,7,192,62,248,7,192,62,248, + 7,192,62,248,7,192,62,248,7,192,62,248,7,192,62,248, + 7,192,62,18,20,60,24,3,1,249,255,0,251,255,128,251, + 255,192,255,31,192,254,15,192,252,7,192,252,7,192,252,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,20,20,60,24,2,1,3,254,0,15,255, + 0,31,255,192,63,15,192,126,3,224,124,3,240,252,1,240, + 252,1,240,252,1,240,248,1,240,248,1,240,248,1,240,252, + 1,240,252,1,240,124,3,240,126,3,224,63,15,192,31,255, + 192,15,255,0,3,254,0,20,28,84,25,3,249,248,254,0, + 249,255,128,251,255,192,255,15,192,254,7,224,252,3,224,252, + 3,240,252,3,240,252,3,240,248,1,240,248,1,240,252,3, + 240,252,3,240,252,3,240,252,3,224,254,7,224,255,15,192, + 255,255,192,251,255,128,249,254,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,20,28,84,25,2,249,7,241,240,31,253,240,63,253,240, + 63,15,240,126,7,240,124,3,240,252,3,240,252,3,240,248, + 3,240,248,1,240,248,1,240,252,3,240,252,3,240,252,3, + 240,124,3,240,126,7,240,63,15,240,63,255,240,31,253,240, + 7,249,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,12,20,40,16,3, + 1,248,240,249,240,251,240,255,240,255,240,255,0,254,0,252, + 0,252,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,17,20,60,21,2,1,15, + 252,0,63,254,0,127,255,0,126,31,128,124,31,128,124,15, + 128,126,0,0,127,128,0,63,248,0,63,254,0,7,255,0, + 0,255,128,0,31,128,0,15,128,248,15,128,252,15,128,126, + 31,128,127,255,0,63,254,0,31,252,0,15,26,52,17,1, + 0,0,128,1,128,7,128,15,128,15,128,15,128,255,252,255, + 252,255,252,255,252,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,192,15,224,7, + 254,7,254,1,254,18,20,60,24,3,0,248,7,192,248,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,252,7,192,252,15,192,252,15,192,254,31,192,127,255, + 192,63,247,192,31,231,192,20,20,60,22,1,0,248,3,240, + 252,3,240,252,3,224,124,7,224,126,7,224,126,7,192,62, + 15,192,63,15,192,31,15,128,31,31,128,31,159,0,15,159, + 0,15,191,0,15,254,0,7,254,0,7,254,0,3,252,0, + 3,252,0,3,248,0,1,248,0,33,20,100,34,1,0,248, + 7,224,31,128,248,15,240,31,0,252,15,240,31,0,252,15, + 240,63,0,124,15,248,62,0,126,31,248,62,0,126,31,248, + 126,0,62,31,124,126,0,62,62,124,124,0,63,62,124,124, + 0,31,62,126,252,0,31,124,62,248,0,31,252,62,248,0, + 15,252,63,248,0,15,252,31,240,0,15,248,31,240,0,15, + 248,31,240,0,7,248,15,240,0,7,240,15,224,0,7,240, + 15,224,0,20,20,60,22,1,0,254,3,224,126,7,224,63, + 15,192,31,143,128,31,159,128,15,223,0,7,254,0,7,254, + 0,3,252,0,3,252,0,3,252,0,7,254,0,15,255,0, + 15,191,0,31,159,128,63,31,192,62,15,192,126,7,224,252, + 7,224,252,3,240,20,28,84,22,1,248,252,3,240,252,3, + 240,252,3,224,126,7,224,126,7,224,63,7,192,63,15,192, + 63,15,192,31,143,128,31,159,128,15,159,128,15,223,0,15, + 255,0,7,255,0,7,254,0,3,254,0,3,252,0,3,252, + 0,1,252,0,1,248,0,1,248,0,1,248,0,1,240,0, + 3,240,0,3,240,0,7,224,0,7,224,0,7,224,0,17, + 20,60,21,2,0,255,255,0,255,255,0,255,255,0,255,255, + 0,0,63,0,0,126,0,0,252,0,1,248,0,3,240,0, + 7,240,0,15,224,0,15,192,0,31,128,0,63,0,0,126, + 0,0,252,0,0,255,255,128,255,255,128,255,255,128,255,255, + 128,15,41,82,20,3,246,0,2,0,254,1,254,3,254,7, + 240,7,224,7,192,7,192,7,192,7,192,7,192,7,192,7, + 192,7,192,7,192,7,192,15,192,15,128,63,128,254,0,252, + 0,254,0,255,0,63,128,15,128,15,192,7,192,7,192,7, + 192,7,192,7,192,7,192,7,192,7,192,7,192,7,224,7, + 224,3,254,3,254,1,254,0,62,3,43,43,13,5,245,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,15,40,80,20,3,247, + 252,0,255,0,255,0,31,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,192,15,192,7,224, + 7,224,3,248,1,254,0,126,0,254,3,252,7,224,7,192, + 7,192,15,192,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,31,128,255,128,255,0,254,0,248,0, + 21,5,15,21,0,8,15,192,120,63,255,248,127,255,240,127, + 255,224,240,31,128,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,0,0,0,12,0,0,5,28,28,16, + 5,248,248,248,248,248,248,0,0,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,18,30, + 90,24,3,250,0,6,0,0,14,0,0,12,0,0,12,0, + 0,28,0,7,252,0,31,255,0,63,255,128,63,63,128,124, + 63,192,124,127,192,252,103,192,248,96,0,248,96,0,248,192, + 0,248,192,0,248,192,0,253,192,0,253,143,192,125,143,192, + 127,143,192,127,31,128,63,255,128,31,255,0,7,252,0,6, + 0,0,14,0,0,12,0,0,12,0,0,28,0,0,20,31, + 93,23,2,0,0,16,0,3,255,128,7,255,192,15,255,224, + 15,199,240,31,131,240,31,131,240,31,1,240,31,0,0,31, + 0,0,31,0,0,31,0,0,255,252,0,255,252,0,255,252, + 0,255,252,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,255,255,240,255,255,240,255,255,240,255,255, + 240,21,21,63,25,2,8,192,0,24,224,0,56,113,252,112, + 63,255,224,31,7,192,28,1,192,24,1,192,56,0,224,48, + 0,96,48,0,96,48,0,96,48,0,96,48,0,224,56,0, + 224,28,1,192,30,3,192,31,143,192,63,255,224,113,252,112, + 224,0,56,192,0,24,22,30,90,24,1,0,252,0,252,252, + 0,252,124,1,248,126,1,248,62,3,240,63,3,240,63,7, + 224,31,135,224,255,135,252,255,143,252,255,207,252,7,223,128, + 7,255,0,3,255,0,3,255,0,1,254,0,255,255,252,255, + 255,252,255,255,252,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,2,38,38,14,6,248,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,0,0,0,0, + 0,0,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,16,36,72,19,1,251,15,252,31,254,63,254,126,14, + 124,2,124,0,124,0,126,0,127,0,63,192,31,224,15,248, + 31,252,63,254,126,127,124,63,248,31,248,31,248,31,252,62, + 254,252,127,248,63,240,31,248,7,252,1,254,0,127,0,63, + 0,63,0,31,0,63,64,126,127,254,127,252,127,240,31,192, + 13,5,10,13,0,26,240,120,240,120,240,120,240,120,240,120, + 30,30,120,34,2,1,0,63,240,0,0,255,252,0,3,248, + 127,0,7,192,15,128,15,0,3,192,30,0,1,224,60,31, + 240,240,56,63,248,112,120,127,252,120,112,248,124,56,112,248, + 62,56,225,240,62,28,225,240,62,28,225,240,0,28,225,240, + 0,28,225,240,0,28,225,240,0,28,225,240,62,28,225,240, + 62,28,112,248,62,56,112,248,124,56,112,127,252,120,56,63, + 248,112,60,31,224,240,30,0,1,224,15,0,3,192,7,128, + 15,128,3,240,63,0,1,255,252,0,0,63,240,0,14,20, + 40,16,1,10,15,192,63,240,120,240,120,120,0,120,15,248, + 63,248,124,120,240,120,240,120,240,120,240,248,255,248,127,248, + 63,56,0,0,0,0,0,0,255,252,255,252,20,16,48,24, + 2,2,15,193,240,15,131,224,31,135,224,31,7,192,63,15, + 192,126,15,192,126,31,128,252,31,128,252,31,128,126,31,128, + 126,15,192,63,15,192,31,7,192,31,135,224,15,131,224,15, + 193,240,21,9,27,25,2,8,255,255,248,255,255,248,0,0, + 24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24, + 0,0,24,255,30,30,120,34,2,1,0,63,240,0,0,255, + 252,0,3,248,127,0,7,192,15,128,15,0,3,192,30,0, + 1,224,60,255,192,240,56,255,240,112,120,255,248,120,112,240, + 124,56,112,240,60,56,224,240,60,28,224,240,60,28,224,240, + 120,28,224,255,240,28,224,255,224,28,224,255,248,28,224,240, + 120,28,224,240,120,28,112,240,56,56,112,240,60,56,112,240, + 60,120,56,240,60,112,60,240,60,240,30,0,1,224,15,0, + 3,192,7,128,15,128,3,240,63,0,1,255,252,0,0,63, + 240,0,13,4,8,13,0,26,255,248,255,248,255,248,255,248, + 9,9,18,13,2,21,62,0,127,0,227,128,193,128,193,128, + 193,128,227,128,127,0,62,0,24,24,72,40,8,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,255,255,255,255,255,255,255,255,255,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255, + 255,255,255,255,255,255,13,16,32,15,1,15,63,224,127,240, + 248,120,240,120,0,120,0,248,1,240,3,224,7,192,15,128, + 31,0,60,0,240,0,255,240,255,240,255,240,12,15,30,14, + 1,16,63,192,127,224,240,240,240,240,0,240,1,224,15,192, + 15,192,1,224,0,240,0,240,240,240,249,240,127,224,63,128, + 8,8,8,9,2,25,31,31,62,60,120,112,240,224,255,18, + 36,108,22,2,250,7,255,192,31,255,192,63,199,0,127,199, + 0,255,199,0,255,199,0,255,199,0,255,199,0,255,199,0, + 255,199,0,255,199,0,255,199,0,127,199,0,63,199,0,15, + 199,0,1,199,0,1,199,0,1,199,0,1,199,0,1,199, + 0,1,199,0,1,199,0,1,199,0,1,199,0,1,199,0, + 1,199,0,1,199,0,1,199,0,1,199,0,1,199,0,1, + 199,0,1,199,0,1,199,0,1,199,0,1,199,0,1,199, + 0,5,5,5,12,3,11,248,248,248,248,248,9,10,20,10, + 2,246,48,0,48,0,60,0,63,0,7,128,3,128,3,128, + 135,128,255,0,252,0,7,16,16,11,2,14,30,62,254,254, + 158,30,30,30,30,30,30,30,30,30,30,30,14,19,38,16, + 1,11,15,192,31,224,60,240,120,120,112,56,240,60,240,60, + 240,60,240,60,240,60,112,56,120,120,60,240,31,224,15,192, + 0,0,0,0,255,252,255,252,20,16,48,24,2,2,252,31, + 0,124,31,0,126,15,128,62,15,192,63,15,192,31,7,224, + 31,135,224,31,131,240,31,131,240,31,135,224,31,7,224,63, + 15,192,62,15,192,126,15,128,124,31,0,252,31,0,28,31, + 124,32,2,255,30,0,15,0,62,0,30,0,254,0,30,0, + 254,0,60,0,158,0,124,0,30,0,120,0,30,0,248,0, + 30,0,240,0,30,1,240,0,30,1,224,0,30,3,192,0, + 30,3,192,0,30,7,128,0,30,15,128,0,30,15,0,0, + 30,31,3,224,0,30,7,224,0,60,15,224,0,60,15,224, + 0,120,31,224,0,120,61,224,0,240,121,224,0,240,121,224, + 1,224,241,224,3,193,225,224,3,193,255,240,7,129,255,240, + 7,128,1,224,15,0,1,224,15,0,1,224,30,0,1,224, + 28,30,120,31,2,0,30,0,30,0,62,0,60,0,254,0, + 56,0,222,0,120,0,158,0,240,0,30,0,240,0,30,1, + 224,0,30,1,224,0,30,3,192,0,30,3,192,0,30,7, + 128,0,30,7,128,0,30,15,0,0,30,30,0,0,30,30, + 31,128,30,60,63,224,0,60,125,224,0,120,240,240,0,120, + 240,240,0,240,0,240,0,240,1,240,1,224,3,224,1,192, + 7,192,3,192,15,128,7,128,31,0,7,128,62,0,15,0, + 124,0,15,0,240,0,30,0,255,240,30,0,255,240,29,30, + 120,31,1,1,63,192,3,192,127,224,7,192,240,240,7,128, + 240,240,15,0,0,240,15,0,1,224,30,0,15,192,30,0, + 15,192,60,0,1,224,124,0,0,240,120,0,0,240,240,0, + 240,240,240,0,249,241,224,0,127,225,224,0,63,131,193,240, + 0,3,195,240,0,7,135,240,0,15,7,240,0,15,15,240, + 0,30,30,240,0,30,60,240,0,60,60,240,0,60,120,240, + 0,120,240,240,0,240,255,248,0,240,255,248,1,224,0,240, + 1,224,0,240,3,192,0,240,3,192,0,240,19,28,84,23, + 2,248,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,0,0,0,0,0,0,0,0,0,240,0,0,240,0, + 0,240,0,0,240,0,1,224,0,7,224,0,15,128,0,31, + 0,0,62,0,0,124,0,0,252,0,0,252,0,0,248,1, + 0,252,3,128,252,7,224,126,15,192,127,255,192,63,255,128, + 15,254,0,3,248,0,27,41,164,28,1,0,1,240,0,0, + 1,240,0,0,0,248,0,0,0,120,0,0,0,60,0,0, + 0,28,0,0,0,14,0,0,0,14,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,63,0,0,0,63,128,0, + 0,127,128,0,0,127,128,0,0,127,192,0,0,255,192,0, + 0,255,224,0,0,255,224,0,1,251,224,0,1,243,240,0, + 3,243,240,0,3,241,240,0,3,225,248,0,7,225,248,0, + 7,224,248,0,7,192,252,0,15,192,252,0,15,192,126,0, + 15,128,126,0,31,255,254,0,31,255,255,0,63,255,255,0, + 63,255,255,0,63,255,255,128,126,0,31,128,126,0,31,128, + 126,0,15,192,252,0,15,192,252,0,7,192,248,0,7,224, + 27,41,164,28,1,0,0,3,240,0,0,3,224,0,0,3, + 192,0,0,7,128,0,0,7,0,0,0,15,0,0,0,14, + 0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,63,0,0,0,63,128,0,0,127,128,0,0,127, + 128,0,0,127,192,0,0,255,192,0,0,255,224,0,0,255, + 224,0,1,251,224,0,1,243,240,0,3,243,240,0,3,241, + 240,0,3,225,248,0,7,225,248,0,7,224,248,0,7,192, + 252,0,15,192,252,0,15,192,126,0,15,128,126,0,31,255, + 254,0,31,255,255,0,63,255,255,0,63,255,255,0,63,255, + 255,128,126,0,31,128,126,0,31,128,126,0,15,192,252,0, + 15,192,252,0,7,192,248,0,7,224,27,41,164,28,1,0, + 0,63,0,0,0,63,128,0,0,127,128,0,0,123,192,0, + 0,243,192,0,0,225,224,0,1,192,224,0,1,192,112,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,63,0,0, + 0,63,128,0,0,127,128,0,0,127,128,0,0,127,192,0, + 0,255,192,0,0,255,224,0,0,255,224,0,1,251,224,0, + 1,243,240,0,3,243,240,0,3,241,240,0,3,225,248,0, + 7,225,248,0,7,224,248,0,7,192,252,0,15,192,252,0, + 15,192,126,0,15,128,126,0,31,255,254,0,31,255,255,0, + 63,255,255,0,63,255,255,0,63,255,255,128,126,0,31,128, + 126,0,31,128,126,0,15,192,252,0,15,192,252,0,7,192, + 248,0,7,224,27,39,156,28,1,0,0,120,112,0,0,255, + 224,0,1,255,224,0,1,255,192,0,1,128,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63, + 0,0,0,63,128,0,0,127,128,0,0,127,128,0,0,127, + 192,0,0,255,192,0,0,255,224,0,0,255,224,0,1,251, + 224,0,1,243,240,0,3,243,240,0,3,241,240,0,3,225, + 248,0,7,225,248,0,7,224,248,0,7,192,252,0,15,192, + 252,0,15,192,126,0,15,128,126,0,31,255,254,0,31,255, + 255,0,63,255,255,0,63,255,255,0,63,255,255,128,126,0, + 31,128,126,0,31,128,126,0,15,192,252,0,15,192,252,0, + 7,192,248,0,7,224,27,40,160,29,1,0,1,224,240,0, + 1,224,240,0,1,224,240,0,1,224,240,0,1,224,240,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,63,128,0,0,63,128,0,0,127,192,0, + 0,127,192,0,0,127,192,0,0,255,224,0,0,255,224,0, + 1,251,240,0,1,251,240,0,1,251,240,0,3,241,248,0, + 3,241,248,0,3,224,248,0,7,224,252,0,7,224,252,0, + 7,192,124,0,15,192,126,0,15,192,126,0,15,128,62,0, + 31,255,255,0,31,255,255,0,31,255,255,0,63,255,255,128, + 63,255,255,128,126,0,31,128,126,0,15,192,126,0,15,192, + 252,0,7,224,252,0,7,224,252,0,7,224,27,43,172,28, + 0,0,0,31,0,0,0,63,128,0,0,113,192,0,0,96, + 192,0,0,96,192,0,0,96,192,0,0,113,192,0,0,63, + 128,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,63,128,0,0,63,128,0,0,63, + 128,0,0,127,192,0,0,127,192,0,0,127,192,0,0,255, + 224,0,0,251,224,0,0,251,240,0,1,251,240,0,1,241, + 240,0,1,241,248,0,3,241,248,0,3,224,248,0,7,224, + 252,0,7,224,252,0,7,192,124,0,15,192,126,0,15,192, + 126,0,15,255,254,0,31,255,255,0,31,255,255,0,31,255, + 255,128,63,255,255,128,63,0,31,128,62,0,15,192,126,0, + 15,192,126,0,15,192,252,0,7,224,252,0,7,224,38,30, + 150,40,0,0,0,1,255,255,248,0,1,255,255,248,0,3, + 255,255,248,0,3,255,255,248,0,7,255,0,0,0,7,223, + 0,0,0,15,223,0,0,0,15,159,0,0,0,31,159,0, + 0,0,31,31,0,0,0,63,31,0,0,0,62,31,0,0, + 0,126,31,255,248,0,124,31,255,248,0,252,31,255,248,0, + 248,31,255,248,1,248,31,255,248,1,240,31,0,0,3,255, + 255,0,0,7,255,255,0,0,7,255,255,0,0,15,255,255, + 0,0,15,255,255,0,0,31,128,63,0,0,31,128,63,0, + 0,63,0,63,255,252,63,0,63,255,252,126,0,63,255,252, + 126,0,63,255,252,252,0,63,255,252,24,40,120,29,2,247, + 1,255,192,3,255,240,15,255,248,15,255,252,31,255,254,63, + 128,254,62,0,127,126,0,127,124,0,63,124,0,63,252,0, + 0,252,0,0,252,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,252,0,0,252,0,0,124,0,63,124, + 0,127,126,0,127,62,0,255,63,0,254,31,255,254,31,255, + 252,15,255,248,7,255,240,1,255,192,0,24,0,0,24,0, + 0,31,0,0,31,128,0,3,192,0,1,192,0,1,192,0, + 195,192,0,255,128,0,254,0,20,41,123,25,3,0,15,128, + 0,15,128,0,7,192,0,3,192,0,1,224,0,0,224,0, + 0,240,0,0,112,0,0,0,0,0,0,0,0,0,0,255, + 255,224,255,255,224,255,255,224,255,255,224,255,255,224,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,255,255,224,255,255,224,255,255,224,255, + 255,224,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,255,255,240,255,255,240, + 255,255,240,255,255,240,255,255,240,20,41,123,25,3,0,0, + 63,0,0,62,0,0,124,0,0,120,0,0,240,0,0,224, + 0,1,224,0,1,192,0,0,0,0,0,0,0,0,0,0, + 255,255,224,255,255,224,255,255,224,255,255,224,255,255,224,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,255,255,224,255,255,224,255,255,224, + 255,255,224,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,255,255,240,255,255, + 240,255,255,240,255,255,240,255,255,240,20,41,123,25,3,0, + 3,248,0,3,248,0,7,252,0,7,188,0,7,30,0,14, + 14,0,14,7,0,28,7,0,0,0,0,0,0,0,0,0, + 0,255,255,224,255,255,224,255,255,224,255,255,224,255,255,224, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,255,255,224,255,255,224,255,255, + 224,255,255,224,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,255,255,240,255, + 255,240,255,255,240,255,255,240,255,255,240,20,40,120,25,3, + 0,15,15,0,15,15,0,15,15,0,15,15,0,15,15,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,224,255,255,224,255,255,224,255,255,224,255,255,224,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,255,255,224,255,255,224,255,255,224,255, + 255,224,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,255,255,240,255,255,240, + 255,255,240,255,255,240,255,255,240,9,41,82,11,255,0,248, + 0,124,0,60,0,30,0,14,0,15,0,7,0,3,0,0, + 0,0,0,0,0,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,8,41,41,10,3,0,15,31,30,60,56,120,112,224,0, + 0,0,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 12,41,82,11,0,0,31,128,63,128,63,128,123,192,121,192, + 112,224,224,224,192,112,0,0,0,0,0,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,13,40,80,13,0,0,240,120, + 240,120,240,120,240,120,240,120,0,0,0,0,0,0,0,0, + 0,0,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,26,30, + 120,29,0,0,31,255,0,0,31,255,224,0,31,255,248,0, + 31,255,252,0,31,255,254,0,31,1,255,0,31,0,127,0, + 31,0,31,128,31,0,31,128,31,0,15,192,31,0,15,192, + 31,0,7,192,31,0,7,192,255,252,7,192,255,252,7,192, + 255,252,7,192,255,252,7,192,31,0,7,192,31,0,7,192, + 31,0,15,192,31,0,15,192,31,0,31,128,31,0,31,128, + 31,0,127,0,31,1,255,0,31,255,254,0,31,255,252,0, + 31,255,248,0,31,255,224,0,31,255,0,0,25,39,156,31, + 3,0,0,248,96,0,1,255,224,0,1,255,192,0,3,255, + 128,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,255,128,15,128,255,128,15,128,255,128, + 15,128,255,192,15,128,255,192,15,128,255,224,15,128,251,224, + 15,128,251,240,15,128,249,240,15,128,249,248,15,128,248,248, + 15,128,248,252,15,128,248,252,15,128,248,126,15,128,248,126, + 15,128,248,63,15,128,248,63,15,128,248,31,143,128,248,31, + 143,128,248,15,143,128,248,15,207,128,248,7,207,128,248,7, + 239,128,248,3,239,128,248,3,255,128,248,1,255,128,248,1, + 255,128,248,0,255,128,248,0,255,128,248,0,127,128,27,41, + 164,31,2,0,1,240,0,0,1,240,0,0,0,248,0,0, + 0,120,0,0,0,60,0,0,0,28,0,0,0,28,0,0, + 0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,255,224,0,3,255,248,0,7,255,252,0,15,255,254,0, + 31,255,255,0,63,192,127,128,63,0,31,128,127,0,31,192, + 126,0,15,192,126,0,15,192,252,0,15,224,252,0,7,224, + 252,0,7,224,252,0,7,224,252,0,7,224,252,0,7,224, + 252,0,7,224,252,0,7,224,252,0,7,224,252,0,15,224, + 126,0,15,192,126,0,15,192,127,0,31,192,63,0,31,128, + 63,192,127,128,31,255,255,0,15,255,254,0,7,255,252,0, + 3,255,248,0,0,255,224,0,27,41,164,31,2,0,0,1, + 240,0,0,1,224,0,0,3,224,0,0,3,192,0,0,7, + 128,0,0,7,0,0,0,14,0,0,0,14,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,255,224,0,3,255, + 248,0,7,255,252,0,15,255,254,0,31,255,255,0,63,192, + 127,128,63,0,31,128,127,0,31,192,126,0,15,192,126,0, + 15,192,252,0,15,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,15,224,126,0,15,192,126,0, + 15,192,127,0,31,192,63,0,31,128,63,192,127,128,31,255, + 255,0,15,255,254,0,7,255,252,0,3,255,248,0,0,255, + 224,0,27,41,164,31,2,0,0,63,0,0,0,63,128,0, + 0,63,128,0,0,123,192,0,0,113,192,0,0,240,224,0, + 0,224,224,0,1,192,112,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,255,224,0,3,255,248,0,7,255,252,0, + 15,255,254,0,31,255,255,0,63,192,127,128,63,0,31,128, + 127,0,31,192,126,0,15,192,126,0,15,192,252,0,15,224, + 252,0,7,224,252,0,7,224,252,0,7,224,252,0,7,224, + 252,0,7,224,252,0,7,224,252,0,7,224,252,0,7,224, + 252,0,15,224,126,0,15,192,126,0,15,192,127,0,31,192, + 63,0,31,128,63,192,127,128,31,255,255,0,15,255,254,0, + 7,255,252,0,3,255,248,0,0,255,224,0,27,40,160,31, + 2,0,0,0,48,0,0,124,112,0,0,255,224,0,0,255, + 224,0,1,255,192,0,1,128,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,255,224,0,3,255, + 248,0,7,255,252,0,15,255,254,0,31,255,255,0,63,192, + 127,128,63,0,31,128,127,0,31,192,126,0,15,192,126,0, + 15,192,252,0,15,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,15,224,126,0,15,192,126,0, + 15,192,127,0,31,192,63,0,31,128,63,192,127,128,31,255, + 255,0,15,255,254,0,7,255,252,0,3,255,248,0,0,255, + 224,0,27,40,160,31,2,0,0,240,240,0,0,240,240,0, + 0,240,240,0,0,240,240,0,0,240,240,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,255,224,0,3,255,248,0,7,255,252,0,15,255,254,0, + 31,255,255,0,63,192,127,128,63,0,31,128,127,0,31,192, + 126,0,15,192,126,0,15,192,252,0,15,224,252,0,7,224, + 252,0,7,224,252,0,7,224,252,0,7,224,252,0,7,224, + 252,0,7,224,252,0,7,224,252,0,7,224,252,0,15,224, + 126,0,15,192,126,0,15,192,127,0,31,192,63,0,31,128, + 63,192,127,128,31,255,255,0,15,255,254,0,7,255,252,0, + 3,255,248,0,0,255,224,0,22,22,66,40,9,1,96,0, + 24,240,0,60,112,0,56,56,0,112,28,0,224,14,1,192, + 7,3,128,3,135,0,1,206,0,0,252,0,0,120,0,0, + 120,0,0,252,0,1,206,0,3,135,0,7,3,128,14,1, + 192,28,0,224,56,0,112,112,0,56,96,0,24,64,0,8, + 29,34,136,31,1,254,0,0,0,16,0,0,0,56,0,127, + 240,120,1,255,252,240,3,255,255,240,7,255,255,224,15,255, + 255,192,31,224,63,192,31,128,15,192,63,128,31,224,63,0, + 63,224,63,0,127,224,126,0,251,240,126,1,243,240,126,1, + 227,240,126,3,195,240,126,7,131,240,126,15,3,240,126,30, + 3,240,126,60,3,240,126,124,3,240,126,248,7,240,63,240, + 7,224,63,224,7,224,63,192,15,224,31,128,15,192,31,224, + 63,192,31,255,255,128,63,255,255,0,127,255,254,0,249,255, + 252,0,240,127,240,0,224,0,0,0,64,0,0,0,24,41, + 123,30,3,0,7,192,0,3,224,0,1,224,0,1,240,0, + 0,240,0,0,120,0,0,56,0,0,28,0,0,0,0,0, + 0,0,0,0,0,248,0,31,248,0,31,248,0,31,248,0, + 31,248,0,31,248,0,31,248,0,31,248,0,31,248,0,31, + 248,0,31,248,0,31,248,0,31,248,0,31,248,0,31,248, + 0,31,248,0,31,248,0,31,248,0,31,248,0,31,252,0, + 31,252,0,31,252,0,63,124,0,63,126,0,126,127,0,254, + 63,255,252,31,255,252,31,255,248,7,255,224,1,255,192,24, + 41,123,30,3,0,0,3,224,0,3,224,0,7,192,0,15, + 128,0,15,0,0,30,0,0,28,0,0,56,0,0,0,0, + 0,0,0,0,0,0,248,0,31,248,0,31,248,0,31,248, + 0,31,248,0,31,248,0,31,248,0,31,248,0,31,248,0, + 31,248,0,31,248,0,31,248,0,31,248,0,31,248,0,31, + 248,0,31,248,0,31,248,0,31,248,0,31,248,0,31,252, + 0,31,252,0,31,252,0,63,124,0,63,126,0,126,127,0, + 254,63,255,252,31,255,252,31,255,248,7,255,224,1,255,192, + 24,41,123,30,3,0,0,126,0,0,255,0,0,255,0,1, + 247,128,1,231,128,3,195,192,3,129,192,7,0,224,0,0, + 0,0,0,0,0,0,0,248,0,31,248,0,31,248,0,31, + 248,0,31,248,0,31,248,0,31,248,0,31,248,0,31,248, + 0,31,248,0,31,248,0,31,248,0,31,248,0,31,248,0, + 31,248,0,31,248,0,31,248,0,31,248,0,31,248,0,31, + 252,0,31,252,0,31,252,0,63,124,0,63,126,0,126,127, + 0,254,63,255,252,31,255,252,31,255,248,7,255,224,1,255, + 192,24,40,120,30,3,0,3,193,224,3,193,224,3,193,224, + 3,193,224,3,193,224,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,252,0,31,252,0,31,252,0,31,252,0, + 31,252,0,31,252,0,31,252,0,31,252,0,31,252,0,31, + 252,0,31,252,0,31,252,0,31,252,0,31,252,0,31,252, + 0,31,252,0,31,252,0,31,252,0,31,252,0,31,252,0, + 31,252,0,31,254,0,63,126,0,63,127,0,126,127,128,254, + 63,255,252,31,255,252,31,255,248,7,255,224,1,255,192,24, + 41,123,25,1,0,0,7,192,0,15,128,0,15,0,0,14, + 0,0,30,0,0,28,0,0,56,0,0,0,0,0,0,0, + 0,0,0,0,0,0,252,0,127,254,0,126,126,0,254,127, + 0,252,63,1,252,63,1,248,31,131,248,31,131,240,15,195, + 240,15,199,224,7,231,224,7,239,192,3,255,192,3,255,128, + 1,255,128,1,255,0,0,255,0,0,254,0,0,126,0,0, + 124,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 21,30,90,26,2,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,255,252,0,255,255,128,255,255,192,255,255, + 224,255,255,240,248,7,240,248,1,248,248,1,248,248,0,248, + 248,0,248,248,1,248,248,1,248,248,7,240,255,255,240,255, + 255,224,255,255,192,255,255,128,255,252,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 21,30,90,24,2,1,15,252,0,63,255,0,127,255,128,126, + 31,192,252,15,192,252,7,192,248,7,192,248,15,192,248,15, + 128,248,31,128,248,63,0,248,126,0,248,252,0,248,248,0, + 248,248,0,248,252,0,248,254,0,248,127,128,248,63,192,248, + 31,224,248,7,240,248,3,240,248,1,248,248,1,248,251,224, + 248,251,225,248,251,241,248,249,255,240,249,255,224,248,255,192, + 19,32,96,22,2,0,31,0,0,31,0,0,15,128,0,7, + 128,0,3,192,0,1,192,0,1,224,0,0,224,0,0,0, + 0,0,0,0,0,0,0,0,0,0,15,254,0,31,255,0, + 63,255,128,126,15,128,124,15,192,0,7,192,0,127,192,15, + 255,192,63,255,192,127,255,192,127,7,192,252,7,192,252,7, + 192,248,15,192,248,15,192,252,15,192,254,31,192,127,255,192, + 63,247,192,31,227,224,19,32,96,22,2,0,0,31,0,0, + 62,0,0,60,0,0,120,0,0,120,0,0,240,0,0,224, + 0,1,192,0,0,0,0,0,0,0,0,0,0,0,0,0, + 15,254,0,31,255,0,63,255,128,126,15,128,124,15,192,0, + 7,192,0,127,192,15,255,192,63,255,192,127,255,192,127,7, + 192,252,7,192,252,7,192,248,15,192,248,15,192,252,15,192, + 254,31,192,127,255,192,63,247,192,31,227,224,19,32,96,22, + 2,0,3,240,0,3,248,0,7,248,0,7,188,0,15,28, + 0,14,30,0,28,14,0,28,7,0,0,0,0,0,0,0, + 0,0,0,0,0,0,15,254,0,31,255,0,63,255,128,126, + 15,128,124,15,192,0,7,192,0,127,192,15,255,192,63,255, + 192,127,255,192,127,7,192,252,7,192,252,7,192,248,15,192, + 248,15,192,252,15,192,254,31,192,127,255,192,63,247,192,31, + 227,224,19,30,90,22,2,0,7,135,0,15,254,0,15,254, + 0,31,252,0,24,16,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,15,254,0,31,255,0,63,255,128,126, + 15,128,124,15,192,0,7,192,0,127,192,15,255,192,63,255, + 192,127,255,192,127,7,192,252,7,192,252,7,192,248,15,192, + 248,15,192,252,15,192,254,31,192,127,255,192,63,247,192,31, + 227,224,19,31,93,23,2,0,30,30,0,30,30,0,30,30, + 0,30,30,0,30,30,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,15,254,0,31,255,0,63, + 255,128,126,15,128,124,15,192,0,7,192,0,127,192,15,255, + 192,63,255,192,127,255,192,127,7,192,252,7,192,252,7,192, + 248,15,192,248,15,192,252,15,192,254,31,192,127,255,192,63, + 247,192,31,231,224,19,34,102,22,2,0,1,240,0,3,248, + 0,7,28,0,6,12,0,6,12,0,6,12,0,7,28,0, + 3,248,0,1,240,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,15,254,0,31,255,0,63,255,128,126,15, + 128,124,15,192,0,7,192,0,127,192,15,255,192,63,255,192, + 127,255,192,127,7,192,252,7,192,252,7,192,248,15,192,248, + 15,192,252,15,192,254,31,192,127,255,192,63,247,192,31,231, + 224,32,20,80,36,2,1,15,252,31,224,31,254,127,248,63, + 255,127,252,126,15,240,126,124,7,224,62,0,7,224,62,0, + 7,192,31,7,255,255,255,31,255,255,255,63,255,255,255,127, + 255,255,255,252,7,192,0,252,7,224,0,248,7,224,0,248, + 15,224,63,252,15,240,62,254,30,248,126,127,252,127,252,63, + 248,63,248,31,224,31,240,17,30,90,21,2,247,15,252,0, + 31,254,0,63,255,0,126,63,0,124,31,128,124,31,128,252, + 15,128,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,252,15,128,252,31,128,124,31,128,126,63,0, + 63,255,0,31,254,0,15,252,0,1,128,0,1,128,0,1, + 224,0,1,248,0,0,60,0,0,28,0,0,28,0,6,60, + 0,7,248,0,7,224,0,19,32,96,22,2,0,31,0,0, + 31,0,0,15,128,0,7,128,0,3,192,0,1,192,0,0, + 224,0,0,224,0,0,0,0,0,0,0,0,0,0,0,0, + 0,7,252,0,31,255,0,63,255,0,62,31,128,124,15,192, + 124,7,192,252,7,192,255,255,192,255,255,192,255,255,224,255, + 255,224,248,0,0,248,0,0,252,0,0,124,7,192,124,15, + 192,126,31,128,63,255,128,31,255,0,7,252,0,19,32,96, + 22,2,0,0,31,0,0,62,0,0,60,0,0,120,0,0, + 120,0,0,240,0,0,224,0,1,192,0,0,0,0,0,0, + 0,0,0,0,0,0,0,7,252,0,31,255,0,63,255,0, + 62,31,128,124,15,192,124,7,192,252,7,192,255,255,192,255, + 255,192,255,255,224,255,255,224,248,0,0,248,0,0,252,0, + 0,124,7,192,124,15,192,126,31,128,63,255,128,31,255,0, + 7,252,0,19,32,96,22,2,0,3,240,0,3,248,0,7, + 248,0,7,188,0,15,28,0,14,30,0,28,14,0,28,7, + 0,0,0,0,0,0,0,0,0,0,0,0,0,7,252,0, + 31,255,0,63,255,0,62,31,128,124,15,192,124,7,192,252, + 7,192,255,255,192,255,255,192,255,255,224,255,255,224,248,0, + 0,248,0,0,252,0,0,124,7,192,124,15,192,126,31,128, + 63,255,128,31,255,0,7,252,0,19,31,93,22,2,0,30, + 30,0,30,30,0,30,30,0,30,30,0,30,30,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 7,252,0,31,255,0,63,255,0,62,31,128,124,15,192,124, + 15,192,252,15,192,255,255,192,255,255,192,255,255,224,255,255, + 224,248,0,0,248,0,0,252,0,0,124,15,192,124,15,192, + 126,31,128,63,255,128,31,255,0,7,252,0,8,32,32,11, + 0,0,248,120,124,60,30,14,7,7,0,0,0,0,31,31, + 31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31, + 31,31,9,32,64,10,2,0,15,128,31,0,30,0,62,0, + 60,0,120,0,112,0,224,0,0,0,0,0,0,0,0,0, + 124,0,124,0,124,0,124,0,124,0,124,0,124,0,124,0, + 124,0,124,0,124,0,124,0,124,0,124,0,124,0,124,0, + 124,0,124,0,124,0,124,0,13,32,64,11,255,0,15,192, + 31,192,31,224,61,224,56,240,120,112,112,56,224,56,0,0, + 0,0,0,0,0,0,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,13,31, + 62,11,255,0,240,120,240,120,240,120,240,120,240,120,0,0, + 0,0,0,0,0,0,0,0,0,0,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,20,31,93,24,2,0,0,0,96,7,193,224,3,247, + 224,1,255,128,0,254,0,0,254,0,3,254,0,15,159,0, + 30,15,128,24,15,128,0,7,192,7,255,192,15,255,224,63, + 255,224,63,15,240,126,3,240,124,3,240,252,1,240,252,1, + 240,252,1,240,248,1,240,248,1,240,252,1,240,252,1,240, + 252,1,240,124,3,240,126,3,224,63,15,224,31,255,192,15, + 255,128,7,254,0,18,30,90,24,3,0,7,134,0,15,254, + 0,15,254,0,31,252,0,24,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,249,255,0,251,255,128,251, + 255,192,255,31,192,254,15,192,252,7,192,252,7,192,252,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,20,32,96,24,2,0,15,128,0,7,128, + 0,7,192,0,3,192,0,1,224,0,0,224,0,0,112,0, + 0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,3, + 254,0,15,255,0,31,255,192,63,15,192,126,3,224,124,3, + 240,252,1,240,252,1,240,252,1,240,248,1,240,248,1,240, + 248,1,240,252,1,240,252,1,240,124,3,240,126,3,224,63, + 15,192,31,255,192,15,255,0,3,254,0,20,32,96,24,2, + 0,0,15,128,0,31,0,0,30,0,0,60,0,0,56,0, + 0,120,0,0,112,0,0,224,0,0,0,0,0,0,0,0, + 0,0,0,0,0,3,254,0,15,255,0,31,255,192,63,15, + 192,126,3,224,124,3,240,252,1,240,252,1,240,252,1,240, + 248,1,240,248,1,240,248,1,240,252,1,240,252,1,240,124, + 3,240,126,3,224,63,15,192,31,255,192,15,255,0,3,254, + 0,20,32,96,24,2,0,1,248,0,1,252,0,3,252,0, + 3,222,0,7,158,0,7,15,0,14,7,0,14,3,128,0, + 0,0,0,0,0,0,0,0,0,0,0,3,254,0,15,255, + 0,31,255,192,63,15,192,126,3,224,124,3,240,252,1,240, + 252,1,240,252,1,240,248,1,240,248,1,240,248,1,240,252, + 1,240,252,1,240,124,3,240,126,3,224,63,15,192,31,255, + 192,15,255,0,3,254,0,20,31,93,24,2,0,0,1,128, + 3,195,0,7,255,0,7,255,0,15,254,0,12,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,254, + 0,15,255,0,31,255,192,63,15,192,126,3,224,124,3,240, + 252,1,240,252,1,240,252,1,240,248,1,240,248,1,240,248, + 1,240,252,1,240,252,1,240,124,3,240,126,3,224,63,15, + 192,31,255,192,15,255,0,3,254,0,20,31,93,24,2,0, + 15,7,128,15,7,128,15,7,128,15,7,128,15,7,128,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,3,254,0,15,255,0,31,255,192,63,15,192,126,3,224, + 124,3,240,252,1,240,252,1,240,252,1,240,248,1,240,248, + 1,240,248,1,240,252,1,240,252,1,240,124,3,240,126,3, + 224,63,15,192,31,255,192,15,255,0,3,254,0,24,19,57, + 40,8,2,0,16,0,0,56,0,0,124,0,0,124,0,0, + 124,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255, + 255,255,255,255,0,0,0,0,0,0,0,0,0,0,56,0, + 0,124,0,0,124,0,0,124,0,0,56,0,21,26,78,24, + 1,254,0,0,56,0,0,120,0,0,112,1,255,224,7,255, + 224,15,255,224,31,135,224,63,7,240,62,15,248,126,14,248, + 126,28,248,126,56,248,124,120,248,124,112,248,126,224,248,127, + 192,248,63,193,248,63,129,248,63,3,240,31,135,224,31,255, + 224,31,255,192,57,255,0,120,0,0,240,0,0,96,0,0, + 18,32,96,24,3,0,31,0,0,15,0,0,15,128,0,7, + 128,0,3,192,0,1,192,0,0,224,0,0,224,0,0,0, + 0,0,0,0,0,0,0,0,0,0,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,252,7,192,252,15,192,252,15,192,254,31,192,127,255,192, + 63,247,192,31,231,192,18,32,96,24,3,0,0,62,0,0, + 60,0,0,124,0,0,120,0,0,240,0,0,224,0,1,224, + 0,1,192,0,0,0,0,0,0,0,0,0,0,0,0,0, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,248,7,192,248,7,192,252,7,192,252,15,192,252,15,192, + 254,31,192,127,255,192,63,247,192,31,231,192,18,32,96,24, + 3,0,3,240,0,3,248,0,7,248,0,7,188,0,15,60, + 0,14,30,0,30,14,0,28,6,0,0,0,0,0,0,0, + 0,0,0,0,0,0,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,252,7,192, + 252,15,192,252,15,192,254,31,192,127,255,192,63,247,192,31, + 231,192,18,31,93,24,3,0,30,30,0,30,30,0,30,30, + 0,30,30,0,30,30,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 252,7,192,252,15,192,252,15,192,254,31,192,127,255,192,63, + 247,192,31,231,192,21,41,123,22,1,248,0,7,192,0,15, + 128,0,15,0,0,30,0,0,30,0,0,60,0,0,56,0, + 0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,252,1,248,252,3,240,126,3,240,126,3,224,63,7, + 224,63,7,224,63,7,192,31,143,192,31,143,192,15,143,128, + 15,223,128,15,223,128,7,223,0,7,255,0,3,255,0,3, + 254,0,3,254,0,1,252,0,1,252,0,0,252,0,0,248, + 0,1,248,0,33,248,0,115,240,0,255,240,0,255,224,0, + 127,192,0,31,128,0,20,38,114,25,3,248,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,249,254,0,251,255,128, + 251,255,192,255,15,192,254,7,224,252,3,224,252,3,240,252, + 3,240,252,3,240,248,1,240,248,1,240,252,3,240,252,3, + 240,252,3,240,252,3,224,254,7,224,255,15,192,255,255,192, + 251,255,128,249,254,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,21,39, + 117,21,0,248,15,7,128,15,7,128,15,7,128,15,7,128, + 15,7,128,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,252,1,248,252,1,248,126,1,240,126,3, + 240,63,3,224,63,3,224,63,7,224,31,135,192,31,143,192, + 15,207,192,15,207,128,15,223,128,7,255,128,7,255,0,3, + 255,0,3,255,0,3,254,0,1,254,0,1,252,0,0,252, + 0,0,252,0,1,248,0,1,248,0,1,248,0,3,240,0, + 3,240,0,7,240,0,7,224,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--40-400-72-72-P-198-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 30 + Calculated Max Values w=24 h=32 x= 8 y=14 dx=40 dy= 0 ascent=31 len=90 + Font Bounding box w=59 h=54 x=-3 y=-11 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =30 descent= 0 + X Font ascent =30 descent= 0 + Max Font ascent =31 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub30n[1179] U8G_SECTION(".progmem.u8g_font_fub30n") = { + 0,59,54,253,245,30,0,0,0,0,42,57,0,31,251,30, + 0,16,16,32,26,5,14,4,32,28,56,30,120,30,120,15, + 240,7,224,227,199,255,255,255,255,243,207,7,224,15,240,30, + 120,30,120,28,56,4,32,24,25,75,40,8,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,255,255, + 255,255,255,255,255,255,255,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,8,10,10,12,2,251,31,31, + 62,62,60,124,120,120,240,240,10,5,10,14,2,8,255,192, + 255,192,255,192,255,192,255,192,5,5,5,12,4,0,248,248, + 248,248,248,13,32,64,17,2,254,0,120,0,120,0,120,0, + 240,0,240,0,240,1,224,1,224,1,224,3,192,3,192,3, + 192,3,192,7,128,7,128,7,128,15,0,15,0,15,0,14, + 0,30,0,30,0,30,0,60,0,60,0,60,0,120,0,120, + 0,120,0,120,0,240,0,240,0,20,30,90,23,1,1,3, + 252,0,15,255,0,31,255,128,63,15,128,62,7,192,124,3, + 192,124,3,224,124,3,224,124,3,224,248,1,240,248,1,240, + 248,1,240,248,1,240,248,1,240,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,240,248,1,240,248,1,240,124,3, + 224,124,3,224,124,3,224,124,3,224,62,7,192,63,15,128, + 31,255,128,15,255,0,3,252,0,12,30,60,23,4,0,1, + 240,3,240,15,240,63,240,255,240,255,240,253,240,249,240,225, + 240,129,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,20,30,90,23,1, + 1,3,255,0,7,255,128,31,255,192,31,255,224,63,255,240, + 63,3,240,126,1,240,126,1,240,124,1,240,0,1,240,0, + 3,240,0,3,240,0,7,224,0,15,224,0,15,192,0,31, + 128,0,63,0,0,254,0,1,252,0,3,248,0,7,240,0, + 15,224,0,63,128,0,127,0,0,252,0,0,255,255,240,255, + 255,240,255,255,240,255,255,240,255,255,240,19,30,90,23,2, + 1,7,252,0,31,255,0,63,255,128,127,255,128,127,255,192, + 252,15,192,252,7,192,248,7,192,0,7,192,0,7,192,0, + 15,192,0,63,192,3,255,128,3,254,0,3,252,0,3,255, + 0,3,255,128,0,31,192,0,7,224,0,7,224,0,7,224, + 0,3,224,248,7,224,252,7,224,252,7,192,126,15,192,127, + 255,128,63,255,128,31,255,0,15,252,0,21,30,90,23,1, + 0,0,63,128,0,63,128,0,127,128,0,255,128,0,255,128, + 1,255,128,1,255,128,3,239,128,3,207,128,7,207,128,15, + 143,128,15,143,128,31,15,128,31,15,128,62,15,128,62,15, + 128,124,15,128,252,15,128,248,15,128,255,255,248,255,255,248, + 255,255,248,255,255,248,255,255,248,0,15,128,0,15,128,0, + 15,128,0,15,128,0,15,128,0,15,128,19,30,90,23,2, + 0,127,255,192,127,255,192,127,255,192,127,255,192,127,255,192, + 124,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,252,0,125,255,0,127,255,128,127,255,192,127,15, + 224,126,7,224,124,3,224,0,3,224,0,3,224,0,3,224, + 0,3,224,0,3,224,248,7,224,252,7,224,252,15,192,127, + 255,128,127,255,128,63,254,0,15,252,0,20,30,90,23,1, + 1,3,254,0,7,255,0,15,255,128,31,255,192,63,255,192, + 63,7,224,126,3,224,126,3,224,124,0,0,124,0,0,252, + 0,0,248,0,0,249,255,0,251,255,128,255,255,192,255,15, + 224,254,7,224,254,3,240,252,3,240,252,3,240,252,1,240, + 252,1,240,124,3,240,124,3,240,126,3,224,63,7,224,63, + 255,192,31,255,128,15,255,0,3,254,0,19,30,90,23,2, + 0,255,255,224,255,255,224,255,255,224,255,255,224,255,255,224, + 0,7,224,0,7,224,0,7,192,0,15,192,0,15,192,0, + 31,128,0,31,128,0,63,0,0,63,0,0,63,0,0,126, + 0,0,126,0,0,252,0,0,252,0,1,252,0,1,248,0, + 1,248,0,3,240,0,3,240,0,7,240,0,7,224,0,15, + 224,0,15,192,0,15,192,0,31,192,0,20,30,90,23,1, + 1,7,254,0,31,255,128,63,255,192,127,255,224,127,255,224, + 126,7,224,124,3,224,124,3,224,124,3,224,124,3,224,126, + 7,224,127,15,192,63,255,128,15,255,0,7,252,0,31,255, + 0,63,255,192,127,15,224,124,7,224,252,3,240,252,3,240, + 248,1,240,248,3,240,252,3,240,252,3,240,254,7,240,127, + 255,224,63,255,192,31,255,128,15,255,0,20,30,90,23,1, + 1,3,252,0,15,255,0,31,255,128,63,255,192,127,255,192, + 126,7,224,252,7,224,252,3,224,252,3,240,248,3,240,248, + 3,240,252,3,240,252,7,240,124,7,240,127,15,240,63,255, + 240,63,253,240,31,249,240,7,225,240,0,3,240,0,3,224, + 0,3,224,0,3,224,124,7,224,124,7,192,126,15,192,63, + 255,128,31,255,0,15,254,0,7,252,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--40-400-72-72-P-198-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 30, '1' Height: 30 + Calculated Max Values w=38 h=43 x=10 y=25 dx=42 dy= 0 ascent=33 len=195 + Font Bounding box w=59 h=54 x=-3 y=-11 + Calculated Min Values x=-1 y=-11 dx= 0 dy= 0 + Pure Font ascent =30 descent=-7 + X Font ascent =31 descent=-8 + Max Font ascent =33 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub30r[7686] U8G_SECTION(".progmem.u8g_font_fub30r") = { + 0,59,54,253,245,30,9,163,21,182,32,127,249,33,245,31, + 248,0,0,0,12,0,0,5,30,30,16,5,0,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,0,0,0,248,248,248,248,248,15,12,24,21,3, + 18,252,126,252,126,252,126,252,126,248,126,248,126,248,60,248, + 60,120,60,120,60,120,60,120,60,25,30,120,29,2,0,0, + 60,30,0,0,60,30,0,0,120,60,0,0,120,60,0,0, + 120,60,0,0,120,120,0,0,240,120,0,0,240,120,0,15, + 255,255,128,31,255,255,0,31,255,255,0,31,255,255,0,1, + 224,224,0,3,193,224,0,3,193,224,0,3,193,224,0,7, + 131,192,0,7,131,192,0,127,255,252,0,255,255,248,0,255, + 255,248,0,255,255,248,0,15,7,128,0,30,15,0,0,30, + 15,0,0,30,15,0,0,62,30,0,0,60,30,0,0,60, + 30,0,0,60,30,0,0,21,37,111,23,1,252,0,96,0, + 0,96,0,0,96,0,3,254,0,15,255,128,31,255,192,63, + 255,224,127,111,224,126,99,240,124,99,240,124,97,240,124,96, + 0,124,96,0,126,96,0,127,224,0,127,240,0,63,254,0, + 31,255,128,7,255,224,0,255,240,0,127,240,0,103,248,0, + 97,248,248,97,248,248,96,248,252,97,248,252,97,248,126,99, + 240,127,255,240,63,255,224,31,255,192,15,255,128,3,254,0, + 0,96,0,0,96,0,0,96,0,0,96,0,37,30,150,41, + 2,0,7,224,0,120,0,31,248,0,240,0,63,252,0,240, + 0,124,62,1,224,0,120,30,3,224,0,240,15,3,192,0, + 240,15,7,192,0,240,15,7,128,0,240,15,15,0,0,240, + 15,15,0,0,240,15,30,0,0,240,15,30,0,0,120,30, + 60,0,0,124,62,124,0,0,63,252,120,63,0,31,248,248, + 255,192,7,224,241,255,224,0,1,227,225,240,0,1,227,192, + 240,0,3,199,128,120,0,3,199,128,120,0,7,135,128,120, + 0,7,135,128,120,0,15,7,128,120,0,31,7,128,120,0, + 30,3,192,240,0,62,3,192,240,0,60,1,243,224,0,120, + 1,255,192,0,120,0,127,128,28,30,120,31,2,1,3,255, + 0,0,15,255,128,0,31,255,192,0,63,143,224,0,63,7, + 224,0,62,3,224,0,63,7,224,0,63,7,224,0,31,15, + 192,0,31,159,192,0,15,255,128,0,15,255,0,0,7,252, + 0,0,15,248,0,0,31,248,15,128,63,252,15,128,63,126, + 15,128,126,127,15,128,126,63,143,128,252,31,207,128,252,15, + 255,0,248,7,255,0,248,3,255,0,252,1,254,0,252,0, + 254,0,126,0,254,0,127,131,255,0,63,255,255,128,31,255, + 255,224,7,255,135,240,6,12,12,16,5,18,252,252,252,124, + 124,124,124,124,120,120,120,120,9,36,72,16,4,251,15,128, + 31,0,31,0,31,0,62,0,62,0,62,0,126,0,124,0, + 124,0,124,0,124,0,252,0,252,0,252,0,252,0,248,0, + 248,0,248,0,248,0,248,0,252,0,252,0,252,0,124,0, + 124,0,124,0,124,0,126,0,62,0,62,0,62,0,31,0, + 31,0,31,0,15,128,8,36,36,16,4,251,240,248,120,124, + 124,124,62,62,62,63,63,31,31,31,31,31,31,31,31,31, + 31,31,31,31,63,63,63,62,62,62,124,124,124,248,248,240, + 16,16,32,26,5,14,4,32,28,56,30,120,30,120,15,240, + 7,224,227,199,255,255,255,255,243,207,7,224,15,240,30,120, + 30,120,28,56,4,32,24,25,75,40,8,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,255,255,255, + 255,255,255,255,255,255,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,8,10,10,12,2,251,31,31,62, + 62,60,124,120,120,240,240,10,5,10,14,2,8,255,192,255, + 192,255,192,255,192,255,192,5,5,5,12,4,0,248,248,248, + 248,248,13,32,64,17,2,254,0,120,0,120,0,120,0,240, + 0,240,0,240,1,224,1,224,1,224,3,192,3,192,3,192, + 3,192,7,128,7,128,7,128,15,0,15,0,15,0,14,0, + 30,0,30,0,30,0,60,0,60,0,60,0,120,0,120,0, + 120,0,120,0,240,0,240,0,20,30,90,23,1,1,3,252, + 0,15,255,0,31,255,128,63,15,128,62,7,192,124,3,192, + 124,3,224,124,3,224,124,3,224,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,240,248,1,240,248,1,240,248,1, + 240,248,1,240,248,1,240,248,1,240,248,1,240,124,3,224, + 124,3,224,124,3,224,124,3,224,62,7,192,63,15,128,31, + 255,128,15,255,0,3,252,0,12,30,60,23,4,0,1,240, + 3,240,15,240,63,240,255,240,255,240,253,240,249,240,225,240, + 129,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,20,30,90,23,1,1, + 3,255,0,7,255,128,31,255,192,31,255,224,63,255,240,63, + 3,240,126,1,240,126,1,240,124,1,240,0,1,240,0,3, + 240,0,3,240,0,7,224,0,15,224,0,15,192,0,31,128, + 0,63,0,0,254,0,1,252,0,3,248,0,7,240,0,15, + 224,0,63,128,0,127,0,0,252,0,0,255,255,240,255,255, + 240,255,255,240,255,255,240,255,255,240,19,30,90,23,2,1, + 7,252,0,31,255,0,63,255,128,127,255,128,127,255,192,252, + 15,192,252,7,192,248,7,192,0,7,192,0,7,192,0,15, + 192,0,63,192,3,255,128,3,254,0,3,252,0,3,255,0, + 3,255,128,0,31,192,0,7,224,0,7,224,0,7,224,0, + 3,224,248,7,224,252,7,224,252,7,192,126,15,192,127,255, + 128,63,255,128,31,255,0,15,252,0,21,30,90,23,1,0, + 0,63,128,0,63,128,0,127,128,0,255,128,0,255,128,1, + 255,128,1,255,128,3,239,128,3,207,128,7,207,128,15,143, + 128,15,143,128,31,15,128,31,15,128,62,15,128,62,15,128, + 124,15,128,252,15,128,248,15,128,255,255,248,255,255,248,255, + 255,248,255,255,248,255,255,248,0,15,128,0,15,128,0,15, + 128,0,15,128,0,15,128,0,15,128,19,30,90,23,2,0, + 127,255,192,127,255,192,127,255,192,127,255,192,127,255,192,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,252,0,125,255,0,127,255,128,127,255,192,127,15,224, + 126,7,224,124,3,224,0,3,224,0,3,224,0,3,224,0, + 3,224,0,3,224,248,7,224,252,7,224,252,15,192,127,255, + 128,127,255,128,63,254,0,15,252,0,20,30,90,23,1,1, + 3,254,0,7,255,0,15,255,128,31,255,192,63,255,192,63, + 7,224,126,3,224,126,3,224,124,0,0,124,0,0,252,0, + 0,248,0,0,249,255,0,251,255,128,255,255,192,255,15,224, + 254,7,224,254,3,240,252,3,240,252,3,240,252,1,240,252, + 1,240,124,3,240,124,3,240,126,3,224,63,7,224,63,255, + 192,31,255,128,15,255,0,3,254,0,19,30,90,23,2,0, + 255,255,224,255,255,224,255,255,224,255,255,224,255,255,224,0, + 7,224,0,7,224,0,7,192,0,15,192,0,15,192,0,31, + 128,0,31,128,0,63,0,0,63,0,0,63,0,0,126,0, + 0,126,0,0,252,0,0,252,0,1,252,0,1,248,0,1, + 248,0,3,240,0,3,240,0,7,240,0,7,224,0,15,224, + 0,15,192,0,15,192,0,31,192,0,20,30,90,23,1,1, + 7,254,0,31,255,128,63,255,192,127,255,224,127,255,224,126, + 7,224,124,3,224,124,3,224,124,3,224,124,3,224,126,7, + 224,127,15,192,63,255,128,15,255,0,7,252,0,31,255,0, + 63,255,192,127,15,224,124,7,224,252,3,240,252,3,240,248, + 1,240,248,3,240,252,3,240,252,3,240,254,7,240,127,255, + 224,63,255,192,31,255,128,15,255,0,20,30,90,23,1,1, + 3,252,0,15,255,0,31,255,128,63,255,192,127,255,192,126, + 7,224,252,7,224,252,3,224,252,3,240,248,3,240,248,3, + 240,252,3,240,252,7,240,124,7,240,127,15,240,63,255,240, + 63,253,240,31,249,240,7,225,240,0,3,240,0,3,224,0, + 3,224,0,3,224,124,7,224,124,7,192,126,15,192,63,255, + 128,31,255,0,15,254,0,7,252,0,5,20,20,12,5,0, + 248,248,248,248,248,0,0,0,0,0,0,0,0,0,0,248, + 248,248,248,248,9,25,50,13,2,251,31,0,31,0,31,0, + 31,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,31,128,31,0,63,0,62,0, + 62,0,124,0,124,0,120,0,248,0,240,0,24,21,63,40, + 8,2,0,0,1,0,0,15,0,0,63,0,1,252,0,7, + 224,0,63,0,0,252,0,7,224,0,63,0,0,252,0,0, + 224,0,0,248,0,0,126,0,0,15,192,0,3,240,0,0, + 126,0,0,31,192,0,3,240,0,0,126,0,0,31,0,0, + 3,24,10,30,40,8,7,255,255,255,255,255,255,255,255,255, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255, + 255,255,255,255,255,24,21,63,40,8,2,128,0,0,240,0, + 0,252,0,0,63,128,0,7,224,0,0,252,0,0,63,0, + 0,7,224,0,0,252,0,0,63,0,0,7,0,0,31,0, + 0,126,0,3,240,0,15,192,0,126,0,3,248,0,15,192, + 0,126,0,0,248,0,0,192,0,0,18,30,90,22,1,1, + 7,252,0,31,254,0,63,255,128,127,255,128,252,15,192,120, + 7,192,56,7,192,0,7,192,0,7,192,0,15,192,0,15, + 128,0,31,128,0,63,0,0,126,0,0,248,0,1,240,0, + 3,224,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,0,0,0,0,0,0,0,0,0,3,224,0,3,224, + 0,3,224,0,3,224,0,3,224,0,38,39,195,42,2,248, + 0,3,255,224,0,0,31,255,248,0,0,127,255,254,0,0, + 255,255,255,0,3,255,255,255,128,7,254,0,127,192,7,248, + 0,31,224,15,224,0,15,240,31,192,0,7,240,63,128,0, + 3,248,63,1,241,241,248,63,7,253,241,252,126,15,255,240, + 252,126,31,255,240,252,124,31,135,240,252,252,63,3,240,124, + 252,63,3,240,124,252,62,1,240,124,252,62,1,240,124,248, + 62,1,240,124,248,62,1,240,124,248,62,1,240,124,252,62, + 1,240,124,252,63,3,240,252,124,63,3,248,248,124,31,135, + 249,248,126,31,255,255,240,63,15,254,255,224,63,7,252,127, + 192,31,129,248,31,0,31,192,0,0,0,15,224,0,0,0, + 7,248,0,0,0,3,254,0,56,0,1,255,255,248,0,0, + 255,255,248,0,0,63,255,248,0,0,15,255,248,0,0,1, + 255,224,0,27,30,120,28,1,0,0,63,0,0,0,63,128, + 0,0,127,128,0,0,127,128,0,0,127,192,0,0,255,192, + 0,0,255,224,0,0,255,224,0,1,251,224,0,1,243,240, + 0,3,243,240,0,3,241,240,0,3,225,248,0,7,225,248, + 0,7,224,248,0,7,192,252,0,15,192,252,0,15,192,126, + 0,15,128,126,0,31,255,254,0,31,255,255,0,63,255,255, + 0,63,255,255,0,63,255,255,128,126,0,31,128,126,0,31, + 128,126,0,15,192,252,0,15,192,252,0,7,192,248,0,7, + 224,22,30,90,27,3,0,255,254,0,255,255,128,255,255,224, + 255,255,224,255,255,240,248,7,240,248,3,240,248,1,240,248, + 1,240,248,1,240,248,3,240,248,7,224,255,255,192,255,255, + 128,255,254,0,255,255,192,255,255,240,248,3,248,248,1,248, + 248,0,252,248,0,252,248,0,252,248,0,252,248,1,252,248, + 3,252,255,255,248,255,255,240,255,255,224,255,255,192,255,255, + 0,24,30,90,29,2,1,1,255,192,3,255,240,15,255,248, + 15,255,252,31,255,254,63,128,254,62,0,127,126,0,63,124, + 0,63,124,0,63,252,0,0,252,0,0,252,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,252,0,0, + 252,0,0,124,0,63,124,0,63,126,0,127,62,0,127,63, + 128,254,31,255,254,31,255,252,15,255,248,7,255,224,1,255, + 192,24,30,90,29,3,0,255,248,0,255,255,0,255,255,192, + 255,255,224,255,255,240,248,15,248,248,1,252,248,0,252,248, + 0,126,248,0,126,248,0,62,248,0,63,248,0,63,248,0, + 63,248,0,31,248,0,31,248,0,63,248,0,63,248,0,63, + 248,0,63,248,0,126,248,0,126,248,0,252,248,1,252,248, + 15,248,255,255,240,255,255,224,255,255,192,255,255,0,255,248, + 0,20,30,90,25,3,0,255,255,224,255,255,224,255,255,224, + 255,255,224,255,255,224,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,255,255, + 224,255,255,224,255,255,224,255,255,224,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,255,255,240,255,255,240,255,255,240,255,255,240,255,255, + 240,19,30,90,24,3,0,255,255,224,255,255,224,255,255,224, + 255,255,224,255,255,224,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,255,255,192,255,255, + 192,255,255,192,255,255,192,255,255,192,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,26,30,120,30,2,1,0,127,240,0,1,255,252,0,3, + 255,254,0,15,255,255,0,15,255,255,128,31,192,63,128,63, + 128,15,192,63,0,15,192,126,0,15,192,126,0,7,192,124, + 0,0,0,252,0,0,0,252,0,0,0,252,0,0,0,248, + 1,255,192,248,1,255,192,248,1,255,192,252,1,255,192,252, + 1,255,192,252,0,7,192,124,0,7,192,126,0,7,192,127, + 0,7,192,63,128,7,192,63,224,7,192,31,255,255,192,15, + 255,255,192,7,255,255,192,1,255,255,192,0,127,254,0,23, + 30,90,29,3,0,248,0,62,248,0,62,248,0,62,248,0, + 62,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,248,0,62,248,0,62,255,255,254,255,255,254,255, + 255,254,255,255,254,255,255,254,248,0,62,248,0,62,248,0, + 62,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,5, + 30,30,11,3,0,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,20,30,90,25,2,0,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,248,1,240,248,3,240,252,3,240,252,3, + 240,254,7,224,127,255,224,127,255,192,63,255,128,31,255,0, + 15,254,0,23,30,90,27,3,0,248,1,248,248,3,248,248, + 7,240,248,15,224,248,15,192,248,31,192,248,63,128,248,127, + 0,248,126,0,248,254,0,249,252,0,251,248,0,251,240,0, + 255,240,0,255,240,0,251,248,0,249,252,0,249,254,0,248, + 254,0,248,127,0,248,127,128,248,63,128,248,31,192,248,31, + 224,248,15,224,248,7,240,248,7,248,248,3,248,248,1,252, + 248,0,254,19,30,90,23,3,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,255,255,224,255,255,224,255,255,224,255,255,224, + 255,255,224,31,30,120,37,3,0,255,192,3,254,255,192,3, + 254,255,192,7,254,255,192,7,254,255,224,7,254,251,224,15, + 254,251,224,15,254,251,240,15,190,251,240,15,190,249,240,31, + 190,249,240,31,62,249,248,31,62,248,248,63,62,248,248,63, + 62,248,252,62,62,248,124,126,62,248,124,126,62,248,126,124, + 62,248,126,124,62,248,62,252,62,248,62,248,62,248,63,248, + 62,248,31,248,62,248,31,248,62,248,31,240,62,248,31,240, + 62,248,15,240,62,248,15,224,62,248,15,224,62,248,7,224, + 62,25,30,120,31,3,0,255,128,15,128,255,128,15,128,255, + 128,15,128,255,192,15,128,255,192,15,128,255,224,15,128,251, + 224,15,128,251,240,15,128,249,240,15,128,249,248,15,128,248, + 248,15,128,248,252,15,128,248,252,15,128,248,126,15,128,248, + 126,15,128,248,63,15,128,248,63,15,128,248,31,143,128,248, + 31,143,128,248,15,143,128,248,15,207,128,248,7,207,128,248, + 7,239,128,248,3,239,128,248,3,255,128,248,1,255,128,248, + 1,255,128,248,0,255,128,248,0,255,128,248,0,127,128,27, + 30,120,31,2,1,0,255,224,0,3,255,248,0,7,255,252, + 0,15,255,254,0,31,255,255,0,63,192,127,128,63,0,31, + 128,127,0,31,192,126,0,15,192,126,0,15,192,252,0,15, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,15,224,126,0,15,192,126,0,15,192,127,0,31, + 192,63,0,31,128,63,192,127,128,31,255,255,0,15,255,254, + 0,7,255,252,0,3,255,248,0,0,255,224,0,21,30,90, + 26,3,0,255,252,0,255,255,128,255,255,192,255,255,224,255, + 255,240,248,7,240,248,3,248,248,1,248,248,1,248,248,0, + 248,248,1,248,248,1,248,248,1,248,248,7,240,255,255,240, + 255,255,224,255,255,192,255,255,128,255,252,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,30,30,120, + 33,2,1,0,255,224,0,3,255,248,0,7,255,252,0,15, + 255,254,0,31,255,255,0,63,192,127,128,63,0,31,128,127, + 0,31,192,126,0,15,192,126,0,15,192,252,0,15,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,252, + 0,15,192,126,0,15,192,126,0,15,192,127,0,31,128,63, + 0,31,128,63,192,127,0,31,255,254,252,15,255,255,252,7, + 255,255,252,3,255,255,252,0,255,255,252,23,30,90,27,3, + 0,255,255,0,255,255,224,255,255,240,255,255,248,255,255,248, + 248,3,252,248,1,252,248,0,252,248,0,124,248,0,124,248, + 0,252,248,1,248,248,7,240,255,255,224,255,255,192,255,255, + 128,255,255,224,255,255,240,248,3,248,248,1,248,248,1,248, + 248,0,248,248,0,248,248,0,248,248,0,252,248,0,252,248, + 0,252,248,0,252,248,0,124,248,0,126,23,30,90,27,2, + 1,1,255,128,7,255,224,15,255,240,31,255,240,63,255,248, + 63,1,248,126,0,252,126,0,252,124,0,124,126,0,0,126, + 0,0,63,128,0,63,240,0,31,254,0,15,255,192,3,255, + 240,0,127,248,0,7,252,0,1,252,0,0,126,248,0,126, + 248,0,62,252,0,126,252,0,126,126,0,252,127,255,252,63, + 255,248,31,255,240,15,255,224,3,255,128,23,30,90,25,1, + 0,255,255,254,255,255,254,255,255,254,255,255,254,255,255,254, + 0,124,0,0,124,0,0,124,0,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,0,124,0,0,124,0,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,0,124,0,24,30,90,30,3, + 0,248,0,31,248,0,31,248,0,31,248,0,31,248,0,31, + 248,0,31,248,0,31,248,0,31,248,0,31,248,0,31,248, + 0,31,248,0,31,248,0,31,248,0,31,248,0,31,248,0, + 31,248,0,31,248,0,31,248,0,31,252,0,31,252,0,31, + 252,0,63,124,0,63,126,0,126,127,0,254,63,255,252,31, + 255,252,31,255,248,7,255,224,1,255,192,28,30,120,30,1, + 0,252,0,3,240,252,0,7,240,254,0,7,224,126,0,7, + 224,126,0,15,192,127,0,15,192,63,0,31,192,63,0,31, + 128,63,128,31,128,31,128,63,128,31,128,63,0,31,192,63, + 0,15,192,127,0,15,192,126,0,7,224,126,0,7,224,252, + 0,7,224,252,0,3,240,252,0,3,241,248,0,3,249,248, + 0,1,249,248,0,1,251,240,0,1,255,240,0,0,255,240, + 0,0,255,224,0,0,255,224,0,0,127,192,0,0,127,192, + 0,0,127,192,0,0,63,128,0,38,30,150,40,1,0,252, + 0,252,0,252,252,1,254,0,252,252,1,254,0,252,252,1, + 254,1,252,254,1,254,1,252,126,3,255,1,248,126,3,255, + 1,248,126,3,255,1,248,126,3,255,1,248,63,7,255,131, + 240,63,7,207,131,240,63,7,207,131,240,63,7,207,131,240, + 31,15,207,195,224,31,143,135,199,224,31,143,135,199,224,31, + 143,135,199,224,15,159,135,231,192,15,159,3,231,192,15,223, + 3,239,192,15,223,3,239,192,7,255,3,255,128,7,254,1, + 255,128,7,254,1,255,128,7,254,1,255,128,3,254,1,255, + 0,3,252,0,255,0,3,252,0,255,0,3,252,0,255,0, + 3,252,0,255,0,26,30,120,28,1,0,126,0,31,128,127, + 0,63,128,63,128,63,0,63,128,126,0,31,192,126,0,15, + 192,252,0,15,225,248,0,7,241,248,0,3,243,240,0,3, + 251,224,0,1,255,224,0,0,255,192,0,0,255,128,0,0, + 127,128,0,0,127,0,0,0,127,128,0,0,255,128,0,1, + 255,192,0,1,255,224,0,3,247,224,0,3,227,240,0,7, + 227,248,0,15,193,248,0,15,129,252,0,31,128,254,0,63, + 0,126,0,63,0,127,0,126,0,63,128,252,0,31,128,252, + 0,31,192,24,30,90,25,1,0,252,0,127,254,0,126,126, + 0,254,127,0,252,63,1,252,63,1,248,31,131,248,31,131, + 240,15,195,240,15,199,224,7,231,224,7,239,192,3,255,192, + 3,255,128,1,255,128,1,255,0,0,255,0,0,254,0,0, + 126,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,22,30,90,26,2,0,127,255,252,127,255,252,127, + 255,252,127,255,252,127,255,252,0,1,252,0,3,248,0,7, + 240,0,15,240,0,31,224,0,31,192,0,63,128,0,127,128, + 0,255,0,0,254,0,1,252,0,3,252,0,7,248,0,7, + 240,0,15,224,0,31,224,0,63,192,0,63,128,0,127,0, + 0,255,0,0,255,255,252,255,255,252,255,255,252,255,255,252, + 255,255,252,9,38,76,15,3,248,255,128,255,128,255,128,255, + 128,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,255,128,255, + 128,255,128,255,128,13,32,64,17,2,254,240,0,240,0,120, + 0,120,0,120,0,120,0,60,0,60,0,60,0,30,0,30, + 0,30,0,14,0,15,0,15,0,15,0,7,128,7,128,7, + 128,3,192,3,192,3,192,3,192,1,224,1,224,1,224,0, + 240,0,240,0,240,0,112,0,120,0,120,9,38,76,15,3, + 248,255,128,255,128,255,128,255,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,255,128,255,128,255,128,255,128,20,25,75, + 40,10,0,0,96,0,0,240,0,0,240,0,0,240,0,1, + 248,0,1,152,0,3,156,0,3,12,0,3,12,0,7,14, + 0,6,6,0,6,6,0,14,7,0,12,3,0,28,3,128, + 28,1,128,24,1,128,56,1,192,48,0,192,48,0,192,112, + 0,224,96,0,96,224,0,112,224,0,112,192,0,48,20,4, + 12,20,0,250,255,255,240,255,255,240,255,255,240,255,255,240, + 9,8,16,10,255,25,248,0,124,0,60,0,62,0,30,0, + 15,0,7,0,3,128,19,20,60,22,2,1,15,254,0,31, + 255,0,63,255,128,126,15,128,124,15,192,0,7,192,0,127, + 192,15,255,192,63,255,192,127,255,192,127,7,192,252,7,192, + 252,7,192,248,15,192,248,15,192,252,15,192,254,31,192,127, + 255,192,63,247,192,31,227,224,20,30,90,25,3,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,249,254,0,251, + 255,128,255,255,192,255,15,192,254,7,224,252,3,224,252,3, + 240,252,3,240,252,3,240,248,1,240,248,1,240,248,3,240, + 252,3,240,252,3,240,252,3,224,254,7,224,255,15,192,251, + 255,192,251,255,128,248,254,0,17,20,60,21,2,1,15,252, + 0,31,254,0,63,255,0,126,63,0,124,31,128,124,31,128, + 252,15,128,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,252,15,128,252,31,128,124,31,128,126,63, + 0,63,255,0,31,254,0,15,252,0,20,30,90,25,2,0, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,7,249, + 240,31,253,240,63,255,240,63,15,240,126,7,240,124,3,240, + 252,3,240,252,3,240,252,3,240,248,1,240,248,1,240,248, + 3,240,252,3,240,252,3,240,124,3,240,126,7,240,63,15, + 240,63,253,240,31,249,240,7,241,240,19,20,60,22,2,1, + 7,252,0,31,255,0,63,255,0,62,31,128,124,15,192,124, + 7,192,252,7,192,255,255,192,255,255,192,255,255,224,255,255, + 224,248,0,0,248,0,0,252,0,0,124,7,192,124,15,192, + 126,31,128,63,255,128,31,255,0,7,252,0,14,30,60,15, + 1,1,3,252,7,252,15,252,15,192,15,128,15,128,15,128, + 15,128,15,128,15,128,255,248,255,248,255,248,255,248,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,20,28, + 84,25,2,249,7,249,240,31,253,240,63,255,240,63,15,240, + 126,7,240,124,3,240,252,3,240,252,3,240,252,3,240,248, + 1,240,248,1,240,248,3,240,252,3,240,252,3,240,124,7, + 240,126,7,240,63,255,240,63,253,240,15,249,240,3,225,240, + 0,3,240,0,3,240,124,3,240,126,7,224,63,255,224,63, + 255,192,31,255,128,3,252,0,18,30,90,24,3,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,249,255,0,251, + 255,128,255,255,192,255,31,192,254,15,192,252,7,192,252,7, + 192,252,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,6,30,30,10,2,0,252,252, + 252,252,252,0,0,0,0,0,124,124,124,124,124,124,124,124, + 124,124,124,124,124,124,124,124,124,124,124,124,7,39,39,13, + 4,247,126,126,126,126,126,0,0,0,0,0,62,62,62,62, + 62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62, + 62,62,62,126,254,254,254,252,248,18,30,90,22,3,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,31,192, + 248,31,128,248,63,0,248,126,0,248,252,0,249,252,0,249, + 248,0,251,240,0,255,224,0,255,240,0,251,240,0,249,248, + 0,249,252,0,248,252,0,248,126,0,248,127,0,248,63,0, + 248,31,128,248,31,192,248,15,192,5,30,30,11,3,0,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,31,20,80, + 37,3,1,248,255,15,240,249,255,159,252,251,255,191,252,255, + 31,248,254,254,15,240,126,252,7,224,62,252,7,224,62,248, + 7,192,62,248,7,192,62,248,7,192,62,248,7,192,62,248, + 7,192,62,248,7,192,62,248,7,192,62,248,7,192,62,248, + 7,192,62,248,7,192,62,248,7,192,62,248,7,192,62,248, + 7,192,62,18,20,60,24,3,1,249,255,0,251,255,128,251, + 255,192,255,31,192,254,15,192,252,7,192,252,7,192,252,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,20,20,60,24,2,1,3,254,0,15,255, + 0,31,255,192,63,15,192,126,3,224,124,3,240,252,1,240, + 252,1,240,252,1,240,248,1,240,248,1,240,248,1,240,252, + 1,240,252,1,240,124,3,240,126,3,224,63,15,192,31,255, + 192,15,255,0,3,254,0,20,28,84,25,3,249,248,254,0, + 249,255,128,251,255,192,255,15,192,254,7,224,252,3,224,252, + 3,240,252,3,240,252,3,240,248,1,240,248,1,240,252,3, + 240,252,3,240,252,3,240,252,3,224,254,7,224,255,15,192, + 255,255,192,251,255,128,249,254,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,20,28,84,25,2,249,7,241,240,31,253,240,63,253,240, + 63,15,240,126,7,240,124,3,240,252,3,240,252,3,240,248, + 3,240,248,1,240,248,1,240,252,3,240,252,3,240,252,3, + 240,124,3,240,126,7,240,63,15,240,63,255,240,31,253,240, + 7,249,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,12,20,40,16,3, + 1,248,240,249,240,251,240,255,240,255,240,255,0,254,0,252, + 0,252,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,17,20,60,21,2,1,15, + 252,0,63,254,0,127,255,0,126,31,128,124,31,128,124,15, + 128,126,0,0,127,128,0,63,248,0,63,254,0,7,255,0, + 0,255,128,0,31,128,0,15,128,248,15,128,252,15,128,126, + 31,128,127,255,0,63,254,0,31,252,0,15,26,52,17,1, + 0,0,128,1,128,7,128,15,128,15,128,15,128,255,252,255, + 252,255,252,255,252,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,192,15,224,7, + 254,7,254,1,254,18,20,60,24,3,0,248,7,192,248,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,252,7,192,252,15,192,252,15,192,254,31,192,127,255, + 192,63,247,192,31,231,192,20,20,60,22,1,0,248,3,240, + 252,3,240,252,3,224,124,7,224,126,7,224,126,7,192,62, + 15,192,63,15,192,31,15,128,31,31,128,31,159,0,15,159, + 0,15,191,0,15,254,0,7,254,0,7,254,0,3,252,0, + 3,252,0,3,248,0,1,248,0,33,20,100,34,1,0,248, + 7,224,31,128,248,15,240,31,0,252,15,240,31,0,252,15, + 240,63,0,124,15,248,62,0,126,31,248,62,0,126,31,248, + 126,0,62,31,124,126,0,62,62,124,124,0,63,62,124,124, + 0,31,62,126,252,0,31,124,62,248,0,31,252,62,248,0, + 15,252,63,248,0,15,252,31,240,0,15,248,31,240,0,15, + 248,31,240,0,7,248,15,240,0,7,240,15,224,0,7,240, + 15,224,0,20,20,60,22,1,0,254,3,224,126,7,224,63, + 15,192,31,143,128,31,159,128,15,223,0,7,254,0,7,254, + 0,3,252,0,3,252,0,3,252,0,7,254,0,15,255,0, + 15,191,0,31,159,128,63,31,192,62,15,192,126,7,224,252, + 7,224,252,3,240,20,28,84,22,1,248,252,3,240,252,3, + 240,252,3,224,126,7,224,126,7,224,63,7,192,63,15,192, + 63,15,192,31,143,128,31,159,128,15,159,128,15,223,0,15, + 255,0,7,255,0,7,254,0,3,254,0,3,252,0,3,252, + 0,1,252,0,1,248,0,1,248,0,1,248,0,1,240,0, + 3,240,0,3,240,0,7,224,0,7,224,0,7,224,0,17, + 20,60,21,2,0,255,255,0,255,255,0,255,255,0,255,255, + 0,0,63,0,0,126,0,0,252,0,1,248,0,3,240,0, + 7,240,0,15,224,0,15,192,0,31,128,0,63,0,0,126, + 0,0,252,0,0,255,255,128,255,255,128,255,255,128,255,255, + 128,15,41,82,20,3,246,0,2,0,254,1,254,3,254,7, + 240,7,224,7,192,7,192,7,192,7,192,7,192,7,192,7, + 192,7,192,7,192,7,192,15,192,15,128,63,128,254,0,252, + 0,254,0,255,0,63,128,15,128,15,192,7,192,7,192,7, + 192,7,192,7,192,7,192,7,192,7,192,7,192,7,224,7, + 224,3,254,3,254,1,254,0,62,3,43,43,13,5,245,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,15,40,80,20,3,247, + 252,0,255,0,255,0,31,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,192,15,192,7,224, + 7,224,3,248,1,254,0,126,0,254,3,252,7,224,7,192, + 7,192,15,192,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,31,128,255,128,255,0,254,0,248,0, + 21,5,15,21,0,8,15,192,120,63,255,248,127,255,240,127, + 255,224,240,31,128,255}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--49-490-72-72-P-242-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 35 + Calculated Max Values w=29 h=39 x=10 y=17 dx=49 dy= 0 ascent=36 len=140 + Font Bounding box w=72 h=65 x=-4 y=-13 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =35 descent= 0 + X Font ascent =35 descent= 0 + Max Font ascent =36 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub35n[1667] U8G_SECTION(".progmem.u8g_font_fub35n") = { + 0,72,65,252,243,35,0,0,0,0,42,57,0,36,250,35, + 0,20,18,54,32,6,17,7,14,0,31,15,128,31,159,128, + 15,159,0,7,158,0,3,252,0,129,248,16,254,247,240,255, + 255,240,255,255,240,249,249,240,1,248,0,3,252,0,7,158, + 0,15,159,0,31,143,128,31,15,128,7,14,0,29,29,116, + 49,10,0,0,7,0,0,0,7,0,0,0,7,0,0,0, + 7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0, + 7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0, + 7,0,0,0,7,0,0,255,255,255,248,255,255,255,248,255, + 255,255,248,0,7,0,0,0,7,0,0,0,7,0,0,0, + 7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0, + 7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0, + 7,0,0,0,7,0,0,11,12,24,15,2,250,15,224,15, + 192,31,192,31,128,31,128,63,0,63,0,62,0,126,0,124, + 0,124,0,248,0,13,6,12,17,2,9,255,248,255,248,255, + 248,255,248,255,248,255,248,7,6,6,15,5,0,254,254,254, + 254,254,254,17,39,117,21,2,253,0,15,128,0,15,0,0, + 31,0,0,31,0,0,30,0,0,62,0,0,62,0,0,62, + 0,0,124,0,0,124,0,0,124,0,0,120,0,0,248,0, + 0,248,0,0,240,0,1,240,0,1,240,0,1,240,0,3, + 224,0,3,224,0,3,224,0,3,192,0,7,192,0,7,192, + 0,7,128,0,15,128,0,15,128,0,15,128,0,31,0,0, + 31,0,0,31,0,0,62,0,0,62,0,0,62,0,0,60, + 0,0,124,0,0,124,0,0,124,0,0,248,0,0,25,35, + 140,28,2,1,1,255,128,0,7,255,224,0,15,255,240,0, + 31,255,248,0,31,255,252,0,63,129,252,0,63,0,254,0, + 127,0,126,0,126,0,126,0,126,0,63,0,126,0,63,0, + 254,0,63,0,254,0,63,0,254,0,63,0,254,0,63,128, + 254,0,63,128,254,0,63,128,254,0,63,128,254,0,63,128, + 254,0,63,128,254,0,63,128,254,0,63,0,254,0,63,0, + 254,0,63,0,126,0,63,0,126,0,63,0,126,0,127,0, + 127,0,126,0,63,0,254,0,63,129,252,0,31,255,252,0, + 31,255,248,0,15,255,240,0,7,255,224,0,1,255,128,0, + 15,35,70,28,5,0,0,254,1,254,7,254,15,254,63,254, + 255,254,255,254,254,254,252,254,240,254,192,254,0,254,0,254, + 0,254,0,254,0,254,0,254,0,254,0,254,0,254,0,254, + 0,254,0,254,0,254,0,254,0,254,0,254,0,254,0,254, + 0,254,0,254,0,254,0,254,0,254,0,254,25,35,140,28, + 2,1,0,255,224,0,3,255,248,0,7,255,252,0,15,255, + 254,0,31,255,255,0,63,192,255,0,63,128,63,128,63,0, + 63,128,127,0,63,128,0,0,63,128,0,0,63,128,0,0, + 63,128,0,0,127,0,0,0,127,0,0,0,255,0,0,1, + 254,0,0,3,252,0,0,7,252,0,0,15,248,0,0,31, + 240,0,0,63,224,0,0,127,192,0,1,255,0,0,3,254, + 0,0,7,252,0,0,15,240,0,0,63,224,0,0,127,128, + 0,0,255,0,0,0,255,255,255,128,255,255,255,128,255,255, + 255,128,255,255,255,128,255,255,255,128,255,255,255,128,24,35, + 105,28,2,1,3,255,128,15,255,224,31,255,240,63,255,248, + 127,255,252,127,3,252,254,1,252,254,0,252,254,0,254,0, + 0,254,0,0,254,0,1,252,0,1,252,0,15,248,0,255, + 240,0,255,192,0,255,128,0,255,224,0,255,248,0,3,252, + 0,0,254,0,0,254,0,0,126,0,0,127,0,0,127,254, + 0,127,254,0,127,254,0,254,255,0,254,127,1,252,127,255, + 252,63,255,248,31,255,240,15,255,224,3,255,128,26,35,140, + 28,1,0,0,7,252,0,0,15,252,0,0,31,252,0,0, + 31,252,0,0,63,252,0,0,63,252,0,0,127,252,0,0, + 253,252,0,0,253,252,0,1,249,252,0,1,249,252,0,3, + 241,252,0,7,241,252,0,7,225,252,0,15,193,252,0,15, + 193,252,0,31,129,252,0,63,129,252,0,63,1,252,0,126, + 1,252,0,254,1,252,0,252,1,252,0,255,255,255,192,255, + 255,255,192,255,255,255,192,255,255,255,192,255,255,255,192,255, + 255,255,192,0,1,252,0,0,1,252,0,0,1,252,0,0, + 1,252,0,0,1,252,0,0,1,252,0,0,1,252,0,24, + 35,105,28,2,0,127,255,252,127,255,252,127,255,252,127,255, + 252,127,255,252,127,255,252,127,0,0,127,0,0,127,0,0, + 127,0,0,127,0,0,127,0,0,127,31,192,127,127,240,127, + 255,248,127,255,252,127,255,252,127,193,254,127,0,254,127,0, + 127,126,0,127,0,0,127,0,0,127,0,0,127,0,0,127, + 0,0,127,254,0,127,254,0,254,254,0,254,255,1,252,127, + 255,252,127,255,248,63,255,240,15,255,192,7,255,128,25,35, + 140,28,2,1,0,255,192,0,3,255,240,0,7,255,248,0, + 15,255,252,0,31,255,254,0,31,224,254,0,63,192,127,0, + 63,128,127,0,127,0,0,0,127,0,0,0,127,0,0,0, + 126,0,0,0,254,31,192,0,254,127,240,0,254,255,248,0, + 254,255,252,0,255,255,254,0,255,225,254,0,255,192,255,0, + 255,128,127,0,255,0,63,0,255,0,63,128,255,0,63,128, + 255,0,63,128,255,0,63,128,127,0,63,0,127,0,63,0, + 127,128,127,0,127,128,127,0,63,192,254,0,31,255,252,0, + 31,255,252,0,15,255,248,0,7,255,224,0,1,255,128,0, + 24,35,105,28,2,0,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,127,0,0,127,0,0, + 254,0,0,254,0,1,254,0,1,252,0,3,252,0,3,248, + 0,7,248,0,7,240,0,15,240,0,15,240,0,31,224,0, + 31,224,0,63,192,0,63,192,0,63,128,0,127,128,0,127, + 0,0,255,0,0,255,0,1,254,0,1,254,0,3,252,0, + 3,252,0,7,248,0,7,248,0,15,248,0,15,240,0,25, + 35,140,28,2,1,3,255,192,0,15,255,240,0,31,255,252, + 0,63,255,254,0,63,255,254,0,127,193,255,0,127,128,255, + 0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127, + 0,127,0,127,0,63,128,254,0,63,193,252,0,15,255,248, + 0,7,255,224,0,1,255,192,0,15,255,240,0,31,255,248, + 0,63,193,254,0,127,128,254,0,127,0,127,0,254,0,63, + 0,254,0,63,0,254,0,63,128,254,0,63,128,254,0,63, + 128,255,0,127,128,255,0,127,0,127,128,255,0,127,255,255, + 0,63,255,254,0,63,255,252,0,15,255,248,0,3,255,224, + 0,25,35,140,28,2,1,1,255,192,0,7,255,224,0,15, + 255,248,0,31,255,252,0,63,255,252,0,127,129,254,0,127, + 0,254,0,126,0,255,0,254,0,127,0,254,0,127,0,254, + 0,127,128,254,0,127,128,254,0,127,128,254,0,127,128,254, + 0,255,128,127,0,255,128,127,131,255,128,63,255,255,128,63, + 255,191,128,31,255,191,128,15,255,63,128,1,248,63,128,0, + 0,63,0,0,0,127,0,0,0,127,0,0,0,127,0,127, + 0,254,0,127,0,254,0,127,1,254,0,63,131,252,0,31, + 255,252,0,31,255,248,0,15,255,240,0,7,255,224,0,1, + 255,128,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--58-580-72-72-P-286-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 42 + Calculated Max Values w=35 h=46 x=12 y=20 dx=59 dy= 0 ascent=43 len=176 + Font Bounding box w=87 h=77 x=-5 y=-15 + Calculated Min Values x= 0 y=-8 dx= 0 dy= 0 + Pure Font ascent =42 descent= 0 + X Font ascent =42 descent= 0 + Max Font ascent =43 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub42n[2235] U8G_SECTION(".progmem.u8g_font_fub42n") = { + 0,87,77,251,241,42,0,0,0,0,42,57,0,43,248,42, + 0,23,23,69,37,7,20,0,130,0,3,131,128,15,131,224, + 31,199,224,15,199,224,7,199,192,3,239,128,1,239,0,0, + 254,0,248,254,62,255,255,254,255,255,254,255,255,254,254,124, + 254,128,254,2,1,239,0,3,239,128,7,239,192,7,199,192, + 15,199,224,31,131,240,7,131,192,1,131,0,35,35,175,59, + 12,0,0,1,224,0,0,0,1,224,0,0,0,1,224,0, + 0,0,1,224,0,0,0,1,224,0,0,0,1,224,0,0, + 0,1,224,0,0,0,1,224,0,0,0,1,224,0,0,0, + 1,224,0,0,0,1,224,0,0,0,1,224,0,0,0,1, + 224,0,0,0,1,224,0,0,0,1,224,0,0,0,1,224, + 0,0,255,255,255,255,224,255,255,255,255,224,255,255,255,255, + 224,255,255,255,255,224,0,1,224,0,0,0,1,224,0,0, + 0,1,224,0,0,0,1,224,0,0,0,1,224,0,0,0, + 1,224,0,0,0,1,224,0,0,0,1,224,0,0,0,1, + 224,0,0,0,1,224,0,0,0,1,224,0,0,0,1,224, + 0,0,0,1,224,0,0,0,1,224,0,0,0,1,224,0, + 0,12,15,30,18,3,248,15,240,15,240,15,224,31,224,31, + 192,31,192,63,128,63,128,63,0,127,0,126,0,126,0,124, + 0,252,0,252,0,15,8,16,19,2,11,255,254,255,254,255, + 254,255,254,255,254,255,254,255,254,255,254,8,8,8,18,6, + 0,255,255,255,255,255,255,255,255,19,46,138,25,3,253,0, + 7,224,0,7,224,0,7,192,0,15,192,0,15,192,0,15, + 128,0,31,128,0,31,128,0,31,128,0,31,0,0,63,0, + 0,63,0,0,62,0,0,126,0,0,126,0,0,124,0,0, + 252,0,0,252,0,0,252,0,0,248,0,1,248,0,1,248, + 0,1,240,0,3,240,0,3,240,0,3,240,0,7,224,0, + 7,224,0,7,224,0,7,192,0,15,192,0,15,192,0,15, + 128,0,31,128,0,31,128,0,31,128,0,63,0,0,63,0, + 0,63,0,0,62,0,0,126,0,0,126,0,0,124,0,0, + 252,0,0,252,0,0,252,0,0,29,44,176,33,2,255,0, + 31,192,0,0,255,248,0,3,255,252,0,7,255,255,0,15, + 255,255,128,15,255,255,128,31,240,255,192,63,192,63,192,63, + 192,63,224,63,128,31,224,127,128,31,240,127,0,31,240,127, + 0,15,240,127,0,15,240,255,0,15,240,255,0,15,248,255, + 0,15,248,255,0,15,248,255,0,15,248,255,0,15,248,255, + 0,15,248,255,0,15,248,255,0,15,248,255,0,15,248,255, + 0,15,248,255,0,15,248,255,0,15,248,255,0,15,248,255, + 0,15,248,127,0,15,240,127,0,15,240,127,0,15,240,127, + 0,31,240,127,128,31,240,63,128,31,224,63,192,63,224,63, + 192,63,192,31,240,255,192,15,255,255,128,15,255,255,0,7, + 255,255,0,3,255,254,0,0,255,248,0,0,31,192,0,18, + 42,126,33,6,0,0,63,192,0,127,192,0,255,192,3,255, + 192,15,255,192,63,255,192,255,255,192,255,255,192,255,255,192, + 255,63,192,254,63,192,248,63,192,224,63,192,0,63,192,0, + 63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63, + 192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192, + 0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0, + 63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63, + 192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192, + 0,63,192,29,43,172,33,2,0,0,15,240,0,0,127,254, + 0,1,255,255,0,3,255,255,128,7,255,255,192,15,255,255, + 224,31,248,63,240,31,240,31,240,31,224,15,240,63,192,7, + 248,63,192,7,248,63,192,7,248,0,0,7,248,0,0,7, + 248,0,0,15,248,0,0,15,240,0,0,31,240,0,0,31, + 240,0,0,63,224,0,0,127,224,0,0,255,192,0,1,255, + 128,0,3,255,128,0,7,255,0,0,15,254,0,0,31,252, + 0,0,63,248,0,0,127,240,0,0,255,224,0,1,255,128, + 0,3,255,0,0,15,254,0,0,31,252,0,0,63,240,0, + 0,127,224,0,0,255,192,0,0,255,255,255,248,255,255,255, + 248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255, + 248,255,255,255,248,28,44,176,33,3,255,0,127,192,0,3, + 255,248,0,7,255,252,0,31,255,255,0,63,255,255,0,63, + 255,255,128,127,224,255,192,127,192,127,192,255,128,63,192,255, + 0,31,224,255,0,31,224,255,0,31,224,0,0,31,224,0, + 0,31,224,0,0,31,224,0,0,63,192,0,0,127,192,0, + 3,255,128,0,127,255,0,0,127,252,0,0,127,240,0,0, + 127,248,0,0,127,254,0,0,127,255,128,0,0,255,192,0, + 0,63,224,0,0,31,224,0,0,31,224,0,0,15,240,0, + 0,15,240,0,0,15,240,255,0,15,240,255,0,15,240,255, + 0,15,240,255,0,31,224,255,128,31,224,127,192,63,224,127, + 224,255,192,63,255,255,128,63,255,255,0,31,255,254,0,15, + 255,252,0,3,255,248,0,0,127,192,0,31,42,168,33,1, + 0,0,1,255,192,0,1,255,192,0,3,255,192,0,7,255, + 192,0,7,255,192,0,15,255,192,0,15,255,192,0,31,255, + 192,0,63,255,192,0,63,191,192,0,127,63,192,0,255,63, + 192,0,254,63,192,1,254,63,192,1,252,63,192,3,248,63, + 192,7,248,63,192,7,240,63,192,15,240,63,192,31,224,63, + 192,31,192,63,192,63,192,63,192,63,128,63,192,127,128,63, + 192,255,0,63,192,255,0,63,192,255,255,255,254,255,255,255, + 254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255, + 254,255,255,255,254,0,0,63,192,0,0,63,192,0,0,63, + 192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63, + 192,0,0,63,192,0,0,63,192,29,43,172,33,2,255,127, + 255,255,224,127,255,255,224,127,255,255,224,127,255,255,224,127, + 255,255,224,127,255,255,224,127,255,255,224,127,128,0,0,127, + 128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127, + 128,0,0,127,128,0,0,127,128,0,0,127,135,248,0,127, + 159,254,0,127,255,255,128,127,255,255,192,127,255,255,192,127, + 255,255,224,127,240,63,240,127,192,31,240,127,128,15,240,127, + 128,15,248,127,0,7,248,0,0,7,248,0,0,7,248,0, + 0,7,248,0,0,7,248,0,0,7,248,0,0,7,240,255, + 0,15,240,255,0,15,240,255,0,31,240,255,128,63,224,127, + 224,255,192,127,255,255,192,63,255,255,128,31,255,255,0,15, + 255,252,0,3,255,248,0,0,127,192,0,29,44,176,33,2, + 255,0,15,240,0,0,127,252,0,0,255,255,0,3,255,255, + 128,7,255,255,192,7,255,255,224,15,252,63,224,31,240,15, + 240,31,224,15,240,63,192,7,248,63,192,7,248,63,128,0, + 0,127,128,0,0,127,128,0,0,127,128,0,0,127,0,0, + 0,255,3,248,0,255,31,254,0,255,63,255,0,255,127,255, + 128,255,255,255,192,255,255,255,224,255,248,63,240,255,224,31, + 240,255,192,15,240,255,192,15,248,255,128,7,248,255,128,7, + 248,255,128,7,248,255,128,7,248,255,128,7,248,127,128,7, + 248,127,128,7,248,127,128,7,240,127,192,15,240,63,192,15, + 240,63,224,31,224,31,248,63,224,31,255,255,192,15,255,255, + 128,7,255,255,0,3,255,254,0,0,255,248,0,0,63,192, + 0,28,42,168,33,3,0,255,255,255,240,255,255,255,240,255, + 255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255, + 255,255,240,0,0,15,240,0,0,15,240,0,0,31,240,0, + 0,31,224,0,0,63,224,0,0,63,192,0,0,127,192,0, + 0,127,192,0,0,255,128,0,0,255,128,0,1,255,0,0, + 1,255,0,0,1,254,0,0,3,254,0,0,3,254,0,0, + 7,252,0,0,7,252,0,0,15,248,0,0,15,248,0,0, + 31,248,0,0,31,240,0,0,31,240,0,0,63,224,0,0, + 63,224,0,0,127,192,0,0,127,192,0,0,255,192,0,0, + 255,128,0,1,255,128,0,1,255,0,0,3,255,0,0,3, + 255,0,0,3,254,0,0,7,254,0,0,7,252,0,0,29, + 44,176,33,2,255,0,63,240,0,1,255,254,0,7,255,255, + 128,15,255,255,192,31,255,255,224,63,255,255,240,63,248,127, + 240,127,224,31,240,127,224,31,248,127,192,15,248,127,192,15, + 248,127,192,15,248,127,192,15,248,127,192,15,248,63,224,31, + 240,63,224,31,240,31,248,127,224,15,255,255,192,7,255,255, + 0,1,255,252,0,0,255,248,0,3,255,254,0,15,255,255, + 128,31,255,255,192,63,240,63,224,127,224,31,224,127,192,15, + 240,127,192,15,240,255,128,7,248,255,128,7,248,255,128,7, + 248,255,128,7,248,255,128,7,248,255,128,7,248,255,192,15, + 248,255,192,15,248,127,224,31,240,127,240,63,240,127,255,255, + 224,63,255,255,224,31,255,255,192,15,255,255,128,3,255,254, + 0,0,127,240,0,29,44,176,33,2,255,0,31,192,0,0, + 255,248,0,3,255,254,0,7,255,255,0,15,255,255,128,31, + 255,255,128,63,224,255,192,63,192,63,224,127,128,31,224,127, + 128,31,224,127,0,15,240,255,0,15,240,255,0,15,240,255, + 0,15,240,255,0,15,248,255,0,15,248,255,0,15,248,255, + 0,15,248,255,128,31,248,127,128,31,248,127,192,63,248,127, + 224,255,248,63,255,255,248,31,255,255,248,31,255,247,248,15, + 255,231,248,3,255,199,248,0,254,7,240,0,0,7,240,0, + 0,15,240,0,0,15,240,0,0,15,240,0,0,15,224,127, + 128,31,224,127,128,31,224,63,128,63,192,63,192,127,192,63, + 224,255,128,31,255,255,128,15,255,255,0,7,255,254,0,3, + 255,252,0,1,255,240,0,0,63,192,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--68-680-72-72-P-335-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 49 + Calculated Max Values w=41 h=54 x=14 y=23 dx=69 dy= 0 ascent=50 len=255 + Font Bounding box w=100 h=91 x=-5 y=-18 + Calculated Min Values x= 0 y=-9 dx= 0 dy= 0 + Pure Font ascent =49 descent= 0 + X Font ascent =49 descent= 0 + Max Font ascent =50 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub49n[3074] U8G_SECTION(".progmem.u8g_font_fub49n") = { + 0,100,91,251,238,49,0,0,0,0,42,57,0,50,247,49, + 0,27,27,108,43,8,23,0,64,64,0,1,192,112,0,7, + 224,252,0,15,224,254,0,7,241,252,0,7,241,252,0,3, + 241,248,0,1,251,240,0,0,251,224,0,0,127,192,0,224, + 127,192,224,255,191,191,224,255,255,255,224,255,255,255,224,255, + 255,255,224,255,63,159,224,192,127,192,96,0,123,192,0,0, + 251,224,0,1,251,240,0,3,241,248,0,7,241,252,0,15, + 241,252,0,15,224,254,0,7,224,252,0,1,192,112,0,0, + 64,64,0,41,41,246,69,14,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,255,255,255,255,255, + 128,255,255,255,255,255,128,255,255,255,255,255,128,255,255,255, + 255,255,128,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,15, + 17,34,21,3,247,7,254,7,252,7,252,7,248,15,248,15, + 240,15,240,31,224,31,224,31,192,63,192,63,128,63,128,127, + 0,127,0,126,0,254,0,17,9,27,23,3,13,255,255,128, + 255,255,128,255,255,128,255,255,128,255,255,128,255,255,128,255, + 255,128,255,255,128,255,255,128,9,9,18,21,7,0,255,128, + 255,128,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 23,54,162,29,3,252,0,0,254,0,0,254,0,0,252,0, + 1,252,0,1,252,0,1,248,0,3,248,0,3,248,0,3, + 248,0,7,240,0,7,240,0,7,240,0,7,224,0,15,224, + 0,15,224,0,15,192,0,31,192,0,31,192,0,31,192,0, + 63,128,0,63,128,0,63,128,0,63,0,0,127,0,0,127, + 0,0,126,0,0,254,0,0,254,0,0,254,0,1,252,0, + 1,252,0,1,252,0,1,248,0,3,248,0,3,248,0,3, + 240,0,7,240,0,7,240,0,7,240,0,15,224,0,15,224, + 0,15,224,0,15,192,0,31,192,0,31,192,0,31,128,0, + 63,128,0,63,128,0,63,0,0,127,0,0,127,0,0,127, + 0,0,126,0,0,254,0,0,34,51,255,39,2,255,0,7, + 248,0,0,0,63,255,0,0,0,255,255,192,0,1,255,255, + 224,0,3,255,255,240,0,7,255,255,248,0,15,255,255,252, + 0,15,254,31,252,0,31,248,7,254,0,31,240,3,254,0, + 63,240,3,255,0,63,224,1,255,0,63,224,1,255,0,127, + 224,1,255,128,127,192,0,255,128,127,192,0,255,128,127,192, + 0,255,128,255,192,0,255,128,255,192,0,255,192,255,192,0, + 255,192,255,192,0,255,192,255,192,0,255,192,255,192,0,255, + 192,255,192,0,255,192,255,192,0,255,192,255,192,0,255,192, + 255,192,0,255,192,255,192,0,255,192,255,192,0,255,192,255, + 192,0,255,192,255,192,0,255,192,255,192,0,255,192,255,192, + 0,255,192,255,192,0,255,128,127,192,0,255,128,127,192,0, + 255,128,127,192,0,255,128,127,224,1,255,128,63,224,1,255, + 0,63,224,1,255,0,63,240,3,255,0,31,240,3,254,0, + 31,248,7,254,0,15,254,31,252,0,15,255,255,252,0,7, + 255,255,248,0,3,255,255,240,0,1,255,255,224,0,0,255, + 255,192,0,0,63,255,0,0,0,7,248,0,0,20,49,147, + 39,7,0,0,31,240,0,63,240,0,127,240,1,255,240,3, + 255,240,15,255,240,63,255,240,255,255,240,255,255,240,255,255, + 240,255,223,240,255,159,240,254,31,240,248,31,240,224,31,240, + 128,31,240,0,31,240,0,31,240,0,31,240,0,31,240,0, + 31,240,0,31,240,0,31,240,0,31,240,0,31,240,0,31, + 240,0,31,240,0,31,240,0,31,240,0,31,240,0,31,240, + 0,31,240,0,31,240,0,31,240,0,31,240,0,31,240,0, + 31,240,0,31,240,0,31,240,0,31,240,0,31,240,0,31, + 240,0,31,240,0,31,240,0,31,240,0,31,240,0,31,240, + 0,31,240,0,31,240,34,50,250,39,2,0,0,3,254,0, + 0,0,31,255,192,0,0,127,255,240,0,0,255,255,248,0, + 3,255,255,254,0,7,255,255,254,0,7,255,255,255,0,15, + 255,255,255,128,31,255,7,255,128,31,252,1,255,192,31,248, + 0,255,192,63,248,0,255,192,63,240,0,127,192,63,240,0, + 127,192,63,240,0,127,192,0,0,0,127,192,0,0,0,127, + 192,0,0,0,255,192,0,0,0,255,128,0,0,1,255,128, + 0,0,1,255,128,0,0,3,255,0,0,0,7,255,0,0, + 0,15,254,0,0,0,31,254,0,0,0,63,252,0,0,0, + 127,248,0,0,0,255,240,0,0,1,255,224,0,0,3,255, + 192,0,0,7,255,128,0,0,15,255,0,0,0,31,254,0, + 0,0,63,252,0,0,0,255,248,0,0,1,255,224,0,0, + 3,255,192,0,0,7,255,128,0,0,31,254,0,0,0,63, + 252,0,0,0,127,248,0,0,0,255,224,0,0,0,255,255, + 255,255,192,255,255,255,255,192,255,255,255,255,192,255,255,255, + 255,192,255,255,255,255,192,255,255,255,255,192,255,255,255,255, + 192,255,255,255,255,192,32,51,204,39,3,255,0,31,248,0, + 0,255,255,0,3,255,255,128,7,255,255,224,15,255,255,240, + 31,255,255,248,63,255,255,248,127,255,255,252,127,248,31,252, + 127,224,15,254,255,192,7,254,255,192,3,254,255,128,3,254, + 255,128,3,254,0,0,3,254,0,0,3,254,0,0,3,254, + 0,0,7,254,0,0,15,252,0,0,127,252,0,63,255,248, + 0,63,255,224,0,63,255,192,0,63,254,0,0,63,255,0, + 0,63,255,192,0,63,255,240,0,63,255,248,0,0,63,252, + 0,0,7,254,0,0,3,254,0,0,3,255,0,0,1,255, + 0,0,1,255,0,0,1,255,0,0,1,255,255,128,1,255, + 255,128,1,255,255,128,1,255,255,192,3,255,255,192,3,254, + 127,224,7,254,127,224,15,254,127,248,31,252,63,255,255,248, + 63,255,255,240,31,255,255,240,15,255,255,192,3,255,255,128, + 1,255,254,0,0,31,240,0,36,50,250,39,2,0,0,0, + 63,252,0,0,0,127,252,0,0,0,127,252,0,0,0,255, + 252,0,0,0,255,252,0,0,1,255,252,0,0,3,255,252, + 0,0,3,255,252,0,0,7,255,252,0,0,7,255,252,0, + 0,15,247,252,0,0,31,247,252,0,0,31,231,252,0,0, + 63,199,252,0,0,127,199,252,0,0,127,135,252,0,0,255, + 135,252,0,0,255,7,252,0,1,255,7,252,0,3,254,7, + 252,0,3,252,7,252,0,7,252,7,252,0,7,248,7,252, + 0,15,248,7,252,0,31,240,7,252,0,31,240,7,252,0, + 63,224,7,252,0,63,192,7,252,0,127,192,7,252,0,255, + 128,7,252,0,255,128,7,252,0,255,255,255,255,240,255,255, + 255,255,240,255,255,255,255,240,255,255,255,255,240,255,255,255, + 255,240,255,255,255,255,240,255,255,255,255,240,255,255,255,255, + 240,0,0,7,252,0,0,0,7,252,0,0,0,7,252,0, + 0,0,7,252,0,0,0,7,252,0,0,0,7,252,0,0, + 0,7,252,0,0,0,7,252,0,0,0,7,252,0,0,0, + 7,252,0,0,0,7,252,0,33,50,250,39,3,255,127,255, + 255,254,0,127,255,255,254,0,127,255,255,254,0,127,255,255, + 254,0,127,255,255,254,0,127,255,255,254,0,127,255,255,254, + 0,127,255,255,254,0,127,192,0,0,0,127,192,0,0,0, + 127,192,0,0,0,127,192,0,0,0,127,192,0,0,0,127, + 192,0,0,0,127,192,0,0,0,127,192,0,0,0,127,192, + 0,0,0,127,193,255,0,0,127,199,255,192,0,127,223,255, + 240,0,127,255,255,248,0,127,255,255,252,0,127,255,255,254, + 0,127,255,255,254,0,127,252,15,255,0,127,240,3,255,0, + 127,224,3,255,0,127,192,1,255,128,127,192,1,255,128,0, + 0,0,255,128,0,0,0,255,128,0,0,0,255,128,0,0, + 0,255,128,0,0,0,255,128,0,0,0,255,128,0,0,0, + 255,128,0,0,0,255,128,255,128,1,255,128,255,128,1,255, + 0,255,192,3,255,0,255,192,3,254,0,127,224,15,254,0, + 127,248,63,252,0,127,255,255,252,0,63,255,255,248,0,31, + 255,255,240,0,15,255,255,224,0,7,255,255,128,0,1,255, + 254,0,0,0,63,240,0,0,34,51,255,39,2,255,0,3, + 252,0,0,0,31,255,128,0,0,127,255,224,0,0,255,255, + 240,0,1,255,255,248,0,3,255,255,252,0,7,255,255,254, + 0,7,255,255,254,0,15,255,7,255,0,31,252,3,255,0, + 31,248,1,255,128,31,248,0,255,128,63,240,0,255,128,63, + 224,0,0,0,63,224,0,0,0,127,224,0,0,0,127,192, + 0,0,0,127,192,0,0,0,127,192,127,0,0,127,195,255, + 224,0,255,199,255,240,0,255,207,255,248,0,255,223,255,252, + 0,255,191,255,254,0,255,255,255,255,0,255,254,15,255,0, + 255,248,3,255,128,255,248,3,255,128,255,240,1,255,128,255, + 240,1,255,192,255,224,0,255,192,255,224,0,255,192,255,224, + 0,255,192,255,224,0,255,192,255,224,0,255,192,127,224,0, + 255,192,127,224,0,255,192,127,224,0,255,192,127,224,0,255, + 128,63,240,1,255,128,63,240,1,255,128,63,248,3,255,0, + 31,248,3,255,0,31,254,15,254,0,15,255,255,254,0,7, + 255,255,252,0,3,255,255,248,0,1,255,255,240,0,0,255, + 255,192,0,0,63,255,0,0,0,7,248,0,0,33,49,245, + 39,3,0,255,255,255,255,128,255,255,255,255,128,255,255,255, + 255,128,255,255,255,255,128,255,255,255,255,128,255,255,255,255, + 128,255,255,255,255,128,255,255,255,255,128,0,0,0,255,128, + 0,0,1,255,128,0,0,1,255,128,0,0,3,255,0,0, + 0,3,255,0,0,0,7,254,0,0,0,7,254,0,0,0, + 15,254,0,0,0,15,252,0,0,0,31,252,0,0,0,31, + 248,0,0,0,31,248,0,0,0,63,240,0,0,0,63,240, + 0,0,0,127,240,0,0,0,127,224,0,0,0,255,224,0, + 0,0,255,192,0,0,1,255,192,0,0,1,255,192,0,0, + 3,255,128,0,0,3,255,128,0,0,3,255,0,0,0,7, + 255,0,0,0,7,254,0,0,0,15,254,0,0,0,15,254, + 0,0,0,31,252,0,0,0,31,252,0,0,0,63,248,0, + 0,0,63,248,0,0,0,63,248,0,0,0,127,240,0,0, + 0,127,240,0,0,0,255,224,0,0,0,255,224,0,0,1, + 255,192,0,0,1,255,192,0,0,3,255,192,0,0,3,255, + 128,0,0,7,255,128,0,0,34,51,255,39,2,255,0,15, + 252,0,0,0,255,255,192,0,3,255,255,240,0,7,255,255, + 248,0,15,255,255,252,0,31,255,255,254,0,63,255,255,255, + 0,63,255,255,255,0,63,252,15,255,0,127,248,7,255,128, + 127,240,3,255,128,127,224,1,255,128,127,224,1,255,128,127, + 224,1,255,128,127,224,1,255,128,127,224,1,255,128,127,224, + 1,255,128,63,240,3,255,0,63,248,7,255,0,31,252,15, + 254,0,15,255,255,252,0,7,255,255,240,0,1,255,255,192, + 0,0,63,255,0,0,0,255,255,128,0,3,255,255,224,0, + 7,255,255,248,0,31,255,255,252,0,63,252,15,254,0,63, + 248,7,255,0,127,240,3,255,0,127,224,1,255,128,127,224, + 1,255,128,255,192,0,255,192,255,192,0,255,192,255,192,0, + 255,192,255,192,0,255,192,255,192,0,255,192,255,192,0,255, + 192,255,224,1,255,192,255,224,1,255,192,255,240,3,255,192, + 127,240,7,255,128,127,252,15,255,128,63,255,255,255,0,63, + 255,255,255,0,31,255,255,254,0,15,255,255,252,0,3,255, + 255,240,0,0,255,255,192,0,0,15,252,0,0,34,51,255, + 39,2,255,0,7,248,0,0,0,63,255,0,0,0,255,255, + 192,0,3,255,255,224,0,7,255,255,240,0,15,255,255,248, + 0,31,255,255,252,0,31,255,255,254,0,63,248,31,254,0, + 63,240,7,255,0,127,224,7,255,0,127,192,3,255,0,127, + 192,3,255,128,255,192,1,255,128,255,128,1,255,128,255,128, + 1,255,128,255,128,1,255,192,255,128,1,255,192,255,128,1, + 255,192,255,192,1,255,192,255,192,3,255,192,255,192,3,255, + 192,127,224,7,255,192,127,240,7,255,192,127,248,31,255,192, + 63,255,255,255,192,31,255,255,127,192,31,255,254,255,192,15, + 255,252,255,192,3,255,252,255,192,1,255,240,255,192,0,127, + 192,255,128,0,0,0,255,128,0,0,0,255,128,0,0,1, + 255,128,0,0,1,255,128,0,0,1,255,0,0,0,1,255, + 0,127,192,3,255,0,127,192,3,254,0,127,224,7,254,0, + 63,224,15,254,0,63,240,15,252,0,31,248,63,252,0,31, + 255,255,248,0,15,255,255,240,0,7,255,255,224,0,3,255, + 255,192,0,1,255,255,128,0,0,127,254,0,0,0,15,240, + 0,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--15-150-72-72-P-71-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=14 h=16 x= 4 y=10 dx=15 dy= 0 ascent=16 len=32 + Font Bounding box w=20 h=20 x=-1 y=-4 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur11[3712] U8G_SECTION(".progmem.u8g_font_fur11") = { + 0,20,20,255,252,11,2,81,4,211,32,255,253,16,252,11, + 253,0,0,0,5,0,0,1,11,11,5,2,0,128,128,128, + 128,128,128,128,128,128,0,128,5,5,5,7,1,6,216,216, + 152,152,144,9,11,22,11,1,0,9,0,9,0,19,0,127, + 128,18,0,38,0,255,0,36,0,100,0,72,0,72,0,7, + 14,14,9,1,255,16,16,120,148,148,144,240,124,22,18,146, + 214,124,16,12,11,22,14,1,0,112,128,152,128,137,0,137, + 0,154,0,116,224,5,176,9,16,9,16,17,48,16,224,9, + 11,22,11,1,0,56,0,68,0,68,0,120,0,113,0,217, + 0,137,0,143,0,134,0,199,0,125,128,2,5,5,6,2, + 6,192,128,128,128,128,2,14,14,6,2,253,64,64,192,128, + 128,128,128,128,128,128,128,192,64,64,2,14,14,5,2,253, + 128,128,128,192,64,64,64,64,64,64,192,128,128,128,6,5, + 5,10,2,5,72,48,252,48,120,9,9,18,15,3,0,8, + 0,8,0,8,0,8,0,255,128,8,0,8,0,8,0,8, + 0,2,4,4,4,1,254,192,192,128,128,4,1,1,6,1, + 3,240,1,2,2,4,2,0,128,128,4,12,12,6,1,255, + 16,16,16,32,32,32,64,64,64,64,128,128,6,11,11,8, + 1,0,120,200,140,132,132,132,132,132,140,200,120,4,11,11, + 8,2,0,48,112,208,16,16,16,16,16,16,16,16,6,11, + 11,8,1,0,120,204,196,4,12,24,16,48,96,192,252,7, + 11,11,8,0,0,60,70,194,6,24,4,6,2,194,70,60, + 7,11,11,8,1,0,12,28,20,36,100,68,196,254,4,4, + 4,6,11,11,8,1,0,248,128,128,184,204,132,4,4,140, + 200,112,7,11,11,8,1,0,60,198,134,128,188,198,130,130, + 130,198,60,7,11,11,8,1,0,254,6,6,4,12,8,24, + 24,16,48,48,6,11,11,8,1,0,120,204,132,204,112,200, + 132,132,132,204,120,7,11,11,8,1,0,124,198,130,130,198, + 122,2,6,134,204,120,1,8,8,4,2,0,128,128,0,0, + 0,0,128,128,2,10,10,4,1,254,64,64,0,0,0,0, + 64,192,192,128,9,8,16,15,3,1,0,128,3,0,28,0, + 96,0,128,0,112,0,14,0,1,128,9,4,8,15,3,3, + 255,128,0,0,0,0,255,128,9,8,16,15,3,1,128,0, + 96,0,28,0,3,0,0,128,7,0,56,0,192,0,7,11, + 11,8,0,0,60,198,2,6,4,8,16,16,16,0,16,13, + 14,28,15,1,253,15,128,48,96,96,16,206,144,153,152,144, + 136,144,136,144,136,145,152,153,144,206,96,96,0,48,0,15, + 128,11,11,22,11,0,0,6,0,14,0,10,0,27,0,25, + 0,49,128,49,128,63,192,96,192,64,64,192,96,8,11,11, + 10,1,0,252,134,130,130,134,252,130,129,129,131,254,8,11, + 11,10,1,0,62,99,193,128,128,128,128,128,193,67,62,8, + 11,11,10,1,0,248,134,130,131,129,129,129,131,130,134,248, + 6,11,11,9,1,0,252,128,128,128,128,252,128,128,128,128, + 252,6,11,11,8,1,0,252,128,128,128,128,252,128,128,128, + 128,128,9,11,22,11,1,0,30,0,97,128,192,128,128,0, + 128,0,135,128,128,128,128,128,192,128,96,128,63,128,8,11, + 11,10,1,0,129,129,129,129,129,255,129,129,129,129,129,1, + 11,11,3,1,0,128,128,128,128,128,128,128,128,128,128,128, + 6,11,11,8,1,0,4,4,4,4,4,4,4,4,132,140, + 120,8,11,11,9,1,0,134,140,152,176,224,224,176,152,140, + 134,131,6,11,11,7,1,0,128,128,128,128,128,128,128,128, + 128,128,252,11,11,22,13,1,0,192,96,224,224,224,160,161, + 160,177,160,145,32,147,32,154,32,138,32,142,32,132,32,8, + 11,11,10,1,0,193,225,225,177,177,153,137,141,133,135,131, + 9,11,22,11,1,0,62,0,99,0,193,128,129,128,128,128, + 128,128,128,128,129,128,193,0,99,0,62,0,7,11,11,9, + 1,0,252,134,130,130,134,252,128,128,128,128,128,10,11,22, + 12,1,0,62,0,99,0,193,128,129,128,128,128,128,128,128, + 128,129,128,193,128,99,0,63,192,7,11,11,9,1,0,252, + 134,130,130,134,248,132,134,134,130,130,8,11,11,10,1,0, + 60,194,131,128,240,126,7,1,129,195,124,9,11,22,11,1, + 0,255,128,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,8,11,11,10,1,0,129,129,129, + 129,129,129,129,129,131,194,60,9,11,22,10,0,0,192,128, + 65,128,97,128,97,0,35,0,51,0,18,0,22,0,30,0, + 12,0,12,0,14,11,22,15,0,0,195,4,67,140,67,140, + 102,136,38,136,36,216,52,80,60,80,24,80,24,112,24,32, + 9,11,22,11,1,0,193,0,99,0,38,0,52,0,28,0, + 24,0,60,0,38,0,98,0,195,0,129,128,9,11,22,10, + 1,0,193,128,65,0,99,0,38,0,52,0,28,0,8,0, + 8,0,8,0,8,0,8,0,8,11,11,10,1,0,127,3, + 6,6,12,24,56,48,96,224,255,3,14,14,6,2,253,224, + 128,128,128,128,128,128,128,128,128,128,128,128,224,4,12,12, + 6,1,255,128,128,128,64,64,64,32,32,32,32,16,16,3, + 14,14,6,1,253,224,32,32,32,32,32,32,32,32,32,32, + 32,32,224,7,10,10,15,4,0,16,16,40,40,72,68,68, + 130,130,130,8,1,1,8,0,254,255,2,3,3,3,0,9, + 128,192,64,6,8,8,8,1,0,120,204,4,124,196,132,140, + 116,7,11,11,9,1,0,128,128,128,188,198,134,130,130,134, + 196,184,6,8,8,8,1,0,120,204,132,128,128,132,204,120, + 7,11,11,9,1,0,2,2,2,122,198,134,130,130,134,198, + 58,6,8,8,8,1,0,120,196,132,252,128,132,204,120,5, + 11,11,7,1,0,56,32,32,248,32,32,32,32,32,32,32, + 7,11,11,9,1,253,122,198,134,130,130,134,198,122,6,198, + 120,6,11,11,8,1,0,128,128,128,184,204,132,132,132,132, + 132,132,1,11,11,3,1,0,128,0,0,128,128,128,128,128, + 128,128,128,2,14,14,4,1,253,64,0,0,64,64,64,64, + 64,64,64,64,64,64,192,6,11,11,7,1,0,128,128,128, + 136,144,160,224,160,176,152,140,1,11,11,3,1,0,128,128, + 128,128,128,128,128,128,128,128,128,11,8,16,13,1,0,185, + 192,206,96,132,32,132,32,132,32,132,32,132,32,132,32,6, + 8,8,8,1,0,184,204,132,132,132,132,132,132,7,8,8, + 9,1,0,120,196,134,130,130,134,196,120,7,11,11,9,1, + 253,188,198,134,130,130,134,198,188,128,128,128,7,11,11,9, + 1,253,122,198,134,130,130,134,198,122,2,2,2,4,8,8, + 5,1,0,240,192,128,128,128,128,128,128,6,8,8,8,1, + 0,120,140,128,240,28,4,140,120,4,10,10,6,1,0,32, + 32,240,32,32,32,32,32,32,48,6,8,8,8,1,0,132, + 132,132,132,132,132,204,116,8,8,8,8,0,0,195,66,102, + 36,36,60,24,24,12,8,16,12,0,0,198,48,70,48,79, + 32,105,32,41,96,41,192,56,192,16,192,7,8,8,8,1, + 0,196,76,120,48,48,120,204,134,8,11,11,8,0,253,195, + 66,102,38,52,60,24,24,24,16,48,5,8,8,7,1,0, + 248,24,16,32,96,64,192,248,5,15,15,7,1,252,24,48, + 32,32,32,32,96,192,96,32,32,32,32,48,24,1,16,16, + 6,3,252,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,5,15,15,7,1,252,192,96,32,32,32,32,48, + 24,48,32,32,32,32,96,192,8,2,2,8,0,3,115,206, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,0,0,0,5,0,0,1,11,11,5,2,253,128,0,0, + 128,128,128,128,128,128,128,128,6,12,12,8,1,254,8,8, + 120,220,148,144,160,164,236,120,64,64,7,11,11,9,1,0, + 60,102,64,64,248,64,64,64,64,64,254,8,9,9,10,1, + 2,129,90,36,66,66,66,36,90,129,8,11,11,9,0,0, + 65,99,34,231,20,28,255,8,8,8,8,1,14,14,6,3, + 253,128,128,128,128,128,128,0,0,128,128,128,128,128,128,5, + 14,14,7,1,253,120,136,128,192,112,216,136,152,240,48,24, + 8,24,240,4,1,1,4,0,10,144,11,11,22,13,1,0, + 31,0,127,128,115,64,225,96,160,32,160,32,161,32,179,96, + 94,64,96,128,31,0,6,8,8,6,0,3,56,72,120,72, + 88,104,0,252,6,6,6,8,1,1,36,72,216,216,72,36, + 8,3,3,10,1,4,255,1,1,255,11,11,22,13,1,0, + 31,0,127,128,81,64,209,96,158,32,147,32,145,32,209,96, + 64,64,97,128,31,0,4,1,1,4,0,10,240,3,4,4, + 5,1,7,224,160,160,224,9,10,20,15,3,0,8,0,8, + 0,8,0,255,128,8,0,8,0,8,0,0,0,0,0,255, + 128,4,6,6,6,1,5,112,144,48,96,192,240,5,6,6, + 6,0,5,120,200,24,48,136,112,3,3,3,3,1,9,96, + 64,128,255,7,14,14,9,1,253,126,244,244,244,244,116,20, + 20,20,20,20,20,20,20,1,2,2,4,2,4,128,128,4, + 3,3,5,1,253,48,16,224,3,6,6,5,1,5,96,160, + 32,32,32,32,5,8,8,7,1,3,112,216,136,136,216,112, + 0,248,6,6,6,8,1,1,216,72,36,36,72,216,10,11, + 22,12,1,0,97,0,162,0,34,0,36,0,36,0,41,128, + 9,128,18,128,51,192,32,128,96,128,11,11,22,13,1,0, + 96,128,161,0,34,0,34,0,36,0,37,192,9,32,24,96, + 16,192,33,128,97,224,11,11,22,12,0,0,120,128,9,128, + 49,0,27,0,138,0,116,192,4,192,9,64,11,224,16,64, + 48,64,6,11,11,8,1,253,16,0,16,16,48,96,192,128, + 132,236,120,11,16,32,11,0,0,24,0,8,0,4,0,0, + 0,0,0,6,0,14,0,10,0,27,0,25,0,49,128,49, + 128,63,192,96,192,64,64,192,96,11,16,32,11,0,0,3, + 0,2,0,4,0,0,0,0,0,6,0,14,0,10,0,27, + 0,25,0,49,128,49,128,63,192,96,192,64,64,192,96,11, + 16,32,11,0,0,4,0,14,0,9,0,0,0,0,0,6, + 0,14,0,10,0,27,0,25,0,49,128,49,128,63,192,96, + 192,64,64,192,96,11,15,30,11,0,0,13,0,22,0,0, + 0,0,0,6,0,14,0,10,0,27,0,25,0,49,128,49, + 128,63,192,96,192,64,64,192,96,11,14,28,11,0,0,9, + 0,0,0,0,0,6,0,14,0,11,0,27,0,25,0,17, + 128,48,128,63,192,96,192,64,96,192,96,11,16,32,11,0, + 0,14,0,10,0,14,0,0,0,0,0,4,0,12,0,10, + 0,10,0,17,0,17,0,49,128,63,128,96,192,64,64,192, + 96,13,11,22,14,0,0,3,248,5,0,13,0,13,0,25, + 0,25,248,49,0,63,0,97,0,65,0,193,248,8,15,15, + 10,1,252,62,97,193,128,128,128,128,128,193,67,62,12,6, + 2,28,6,16,16,9,1,0,64,32,16,0,0,252,128,128, + 128,128,252,128,128,128,128,252,6,16,16,9,1,0,8,16, + 16,0,0,252,128,128,128,128,252,128,128,128,128,252,6,16, + 16,9,1,0,48,48,72,0,0,252,128,128,128,128,252,128, + 128,128,128,252,6,15,15,8,1,0,72,0,0,0,252,128, + 128,128,128,252,128,128,128,128,252,3,16,16,3,255,0,192, + 64,32,0,0,32,32,32,32,32,32,32,32,32,32,32,3, + 16,16,3,1,0,96,192,128,0,0,128,128,128,128,128,128, + 128,128,128,128,128,3,16,16,3,0,0,64,224,160,0,0, + 64,64,64,64,64,64,64,64,64,64,64,4,14,14,4,0, + 0,144,0,0,64,64,64,64,64,64,64,64,64,64,64,10, + 11,22,11,0,0,62,0,33,128,32,128,32,192,32,64,248, + 64,32,64,32,192,32,128,33,128,62,0,8,15,15,10,1, + 0,52,44,0,0,193,225,225,177,177,153,137,141,133,135,131, + 9,16,32,11,1,0,48,0,16,0,8,0,0,0,0,0, + 62,0,99,0,193,128,129,128,128,128,128,128,128,128,129,128, + 193,0,99,0,62,0,9,16,32,11,1,0,4,0,12,0, + 8,0,0,0,0,0,62,0,99,0,193,128,129,128,128,128, + 128,128,128,128,129,128,193,0,99,0,62,0,9,16,32,11, + 1,0,8,0,28,0,20,0,0,0,0,0,62,0,99,0, + 193,128,129,128,128,128,128,128,128,128,129,128,193,0,99,0, + 62,0,9,15,30,11,1,0,24,0,44,0,0,0,0,0, + 62,0,99,0,193,128,128,128,128,128,128,128,128,128,129,128, + 193,0,119,0,62,0,9,15,30,11,1,0,18,0,0,0, + 0,0,0,0,62,0,99,0,193,128,129,128,128,128,128,128, + 128,128,129,128,193,0,99,0,62,0,7,7,7,15,4,1, + 130,68,40,16,40,68,130,9,13,26,11,1,255,0,128,63, + 0,99,0,195,128,134,128,140,128,136,128,152,128,177,128,225, + 0,99,0,254,0,128,0,8,16,16,10,1,0,32,16,24, + 0,0,129,129,129,129,129,129,129,129,195,230,60,8,16,16, + 10,1,0,12,8,16,0,0,129,129,129,129,129,129,129,129, + 195,230,60,8,16,16,10,1,0,24,24,36,0,0,129,129, + 129,129,129,129,129,129,195,230,60,8,15,15,10,1,0,36, + 0,0,0,129,129,129,129,129,129,129,129,131,194,60,9,16, + 32,10,1,0,6,0,4,0,8,0,0,0,0,0,193,128, + 65,0,99,0,38,0,52,0,28,0,8,0,8,0,8,0, + 8,0,8,0,7,11,11,9,1,0,128,128,252,134,130,130, + 134,252,128,128,128,7,11,11,8,1,0,120,204,132,140,144, + 144,156,134,130,178,156,6,12,12,8,1,0,32,16,16,0, + 120,204,4,124,196,132,140,116,6,13,13,8,1,0,24,16, + 48,32,0,120,204,4,124,196,132,140,116,6,12,12,8,1, + 0,48,104,72,0,120,204,4,124,196,132,140,116,6,11,11, + 8,1,0,120,0,0,120,204,4,124,196,132,140,116,6,11, + 11,8,1,0,72,0,0,120,204,4,124,196,132,140,116,6, + 13,13,8,1,0,48,72,72,48,0,120,196,4,124,196,132, + 140,116,12,8,16,13,1,0,251,192,138,32,4,48,127,240, + 196,0,140,48,202,96,113,192,6,12,12,8,1,252,120,204, + 132,128,128,132,204,120,48,24,8,48,6,13,13,8,1,0, + 64,32,32,16,0,120,196,132,252,128,132,204,120,6,13,13, + 8,1,0,8,16,16,32,0,120,196,132,252,128,132,204,120, + 6,12,12,8,1,0,48,104,72,0,120,196,132,252,128,132, + 204,120,6,11,11,8,1,0,72,0,0,120,204,132,252,128, + 132,204,120,2,12,12,3,0,0,128,64,64,0,64,64,64, + 64,64,64,64,64,3,12,12,3,0,0,32,64,128,0,64, + 64,64,64,64,64,64,64,5,12,12,3,255,0,112,80,136, + 0,32,32,32,32,32,32,32,32,4,11,11,4,0,0,144, + 0,0,64,64,64,64,64,64,64,64,7,11,11,9,1,0, + 104,112,136,124,198,134,130,130,134,196,120,6,11,11,8,1, + 0,120,0,0,184,204,132,132,132,132,132,132,7,13,13,9, + 1,0,96,32,16,16,0,120,196,134,130,130,134,196,120,7, + 13,13,9,1,0,12,24,16,32,0,120,196,134,130,130,134, + 196,120,7,12,12,9,1,0,56,40,68,0,120,196,134,130, + 130,134,196,120,7,11,11,9,1,0,120,0,0,120,196,134, + 130,130,134,196,120,7,11,11,9,1,0,72,0,0,120,196, + 134,130,130,134,196,120,9,7,14,15,3,1,8,0,8,0, + 0,0,255,128,0,0,8,0,8,0,8,10,10,9,0,255, + 1,62,98,71,73,89,83,98,124,192,6,13,13,8,1,0, + 64,32,32,16,0,132,132,132,132,132,132,204,116,6,13,13, + 8,1,0,24,16,48,32,0,132,132,132,132,132,132,204,116, + 6,12,12,8,1,0,48,80,72,0,132,132,132,132,132,132, + 204,116,6,11,11,8,1,0,72,0,0,132,132,132,132,132, + 132,204,116,8,15,15,8,0,253,4,8,16,0,195,66,102, + 38,52,60,24,24,24,80,112,7,14,14,9,1,253,128,128, + 128,188,198,134,130,130,134,198,188,128,128,128,8,14,14,8, + 0,253,36,0,0,195,66,102,36,36,60,24,24,24,16,48 + }; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--15-150-72-72-P-71-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 11 + Calculated Max Values w= 9 h=12 x= 3 y= 5 dx=15 dy= 0 ascent=11 len=18 + Font Bounding box w=20 h=20 x=-1 y=-4 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =11 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur11n[265] U8G_SECTION(".progmem.u8g_font_fur11n") = { + 0,20,20,255,252,11,0,0,0,0,42,57,0,11,254,11, + 0,6,5,5,10,2,5,72,48,252,48,120,9,9,18,15, + 3,0,8,0,8,0,8,0,8,0,255,128,8,0,8,0, + 8,0,8,0,2,4,4,4,1,254,192,192,128,128,4,1, + 1,6,1,3,240,1,2,2,4,2,0,128,128,4,12,12, + 6,1,255,16,16,16,32,32,32,64,64,64,64,128,128,6, + 11,11,8,1,0,120,200,140,132,132,132,132,132,140,200,120, + 4,11,11,8,2,0,48,112,208,16,16,16,16,16,16,16, + 16,6,11,11,8,1,0,120,204,196,4,12,24,16,48,96, + 192,252,7,11,11,8,0,0,60,70,194,6,24,4,6,2, + 194,70,60,7,11,11,8,1,0,12,28,20,36,100,68,196, + 254,4,4,4,6,11,11,8,1,0,248,128,128,184,204,132, + 4,4,140,200,112,7,11,11,8,1,0,60,198,134,128,188, + 198,130,130,130,198,60,7,11,11,8,1,0,254,6,6,4, + 12,8,24,24,16,48,48,6,11,11,8,1,0,120,204,132, + 204,112,200,132,132,132,204,120,7,11,11,8,1,0,124,198, + 130,130,198,122,2,6,134,204,120}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--15-150-72-72-P-71-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=14 h=16 x= 4 y= 9 dx=15 dy= 0 ascent=13 len=28 + Font Bounding box w=20 h=20 x=-1 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur11r[1729] U8G_SECTION(".progmem.u8g_font_fur11r") = { + 0,20,20,255,252,11,2,81,4,211,32,127,253,13,252,11, + 253,0,0,0,5,0,0,1,11,11,5,2,0,128,128,128, + 128,128,128,128,128,128,0,128,5,5,5,7,1,6,216,216, + 152,152,144,9,11,22,11,1,0,9,0,9,0,19,0,127, + 128,18,0,38,0,255,0,36,0,100,0,72,0,72,0,7, + 14,14,9,1,255,16,16,120,148,148,144,240,124,22,18,146, + 214,124,16,12,11,22,14,1,0,112,128,152,128,137,0,137, + 0,154,0,116,224,5,176,9,16,9,16,17,48,16,224,9, + 11,22,11,1,0,56,0,68,0,68,0,120,0,113,0,217, + 0,137,0,143,0,134,0,199,0,125,128,2,5,5,6,2, + 6,192,128,128,128,128,2,14,14,6,2,253,64,64,192,128, + 128,128,128,128,128,128,128,192,64,64,2,14,14,5,2,253, + 128,128,128,192,64,64,64,64,64,64,192,128,128,128,6,5, + 5,10,2,5,72,48,252,48,120,9,9,18,15,3,0,8, + 0,8,0,8,0,8,0,255,128,8,0,8,0,8,0,8, + 0,2,4,4,4,1,254,192,192,128,128,4,1,1,6,1, + 3,240,1,2,2,4,2,0,128,128,4,12,12,6,1,255, + 16,16,16,32,32,32,64,64,64,64,128,128,6,11,11,8, + 1,0,120,200,140,132,132,132,132,132,140,200,120,4,11,11, + 8,2,0,48,112,208,16,16,16,16,16,16,16,16,6,11, + 11,8,1,0,120,204,196,4,12,24,16,48,96,192,252,7, + 11,11,8,0,0,60,70,194,6,24,4,6,2,194,70,60, + 7,11,11,8,1,0,12,28,20,36,100,68,196,254,4,4, + 4,6,11,11,8,1,0,248,128,128,184,204,132,4,4,140, + 200,112,7,11,11,8,1,0,60,198,134,128,188,198,130,130, + 130,198,60,7,11,11,8,1,0,254,6,6,4,12,8,24, + 24,16,48,48,6,11,11,8,1,0,120,204,132,204,112,200, + 132,132,132,204,120,7,11,11,8,1,0,124,198,130,130,198, + 122,2,6,134,204,120,1,8,8,4,2,0,128,128,0,0, + 0,0,128,128,2,10,10,4,1,254,64,64,0,0,0,0, + 64,192,192,128,9,8,16,15,3,1,0,128,3,0,28,0, + 96,0,128,0,112,0,14,0,1,128,9,4,8,15,3,3, + 255,128,0,0,0,0,255,128,9,8,16,15,3,1,128,0, + 96,0,28,0,3,0,0,128,7,0,56,0,192,0,7,11, + 11,8,0,0,60,198,2,6,4,8,16,16,16,0,16,13, + 14,28,15,1,253,15,128,48,96,96,16,206,144,153,152,144, + 136,144,136,144,136,145,152,153,144,206,96,96,0,48,0,15, + 128,11,11,22,11,0,0,6,0,14,0,10,0,27,0,25, + 0,49,128,49,128,63,192,96,192,64,64,192,96,8,11,11, + 10,1,0,252,134,130,130,134,252,130,129,129,131,254,8,11, + 11,10,1,0,62,99,193,128,128,128,128,128,193,67,62,8, + 11,11,10,1,0,248,134,130,131,129,129,129,131,130,134,248, + 6,11,11,9,1,0,252,128,128,128,128,252,128,128,128,128, + 252,6,11,11,8,1,0,252,128,128,128,128,252,128,128,128, + 128,128,9,11,22,11,1,0,30,0,97,128,192,128,128,0, + 128,0,135,128,128,128,128,128,192,128,96,128,63,128,8,11, + 11,10,1,0,129,129,129,129,129,255,129,129,129,129,129,1, + 11,11,3,1,0,128,128,128,128,128,128,128,128,128,128,128, + 6,11,11,8,1,0,4,4,4,4,4,4,4,4,132,140, + 120,8,11,11,9,1,0,134,140,152,176,224,224,176,152,140, + 134,131,6,11,11,7,1,0,128,128,128,128,128,128,128,128, + 128,128,252,11,11,22,13,1,0,192,96,224,224,224,160,161, + 160,177,160,145,32,147,32,154,32,138,32,142,32,132,32,8, + 11,11,10,1,0,193,225,225,177,177,153,137,141,133,135,131, + 9,11,22,11,1,0,62,0,99,0,193,128,129,128,128,128, + 128,128,128,128,129,128,193,0,99,0,62,0,7,11,11,9, + 1,0,252,134,130,130,134,252,128,128,128,128,128,10,11,22, + 12,1,0,62,0,99,0,193,128,129,128,128,128,128,128,128, + 128,129,128,193,128,99,0,63,192,7,11,11,9,1,0,252, + 134,130,130,134,248,132,134,134,130,130,8,11,11,10,1,0, + 60,194,131,128,240,126,7,1,129,195,124,9,11,22,11,1, + 0,255,128,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,8,11,11,10,1,0,129,129,129, + 129,129,129,129,129,131,194,60,9,11,22,10,0,0,192,128, + 65,128,97,128,97,0,35,0,51,0,18,0,22,0,30,0, + 12,0,12,0,14,11,22,15,0,0,195,4,67,140,67,140, + 102,136,38,136,36,216,52,80,60,80,24,80,24,112,24,32, + 9,11,22,11,1,0,193,0,99,0,38,0,52,0,28,0, + 24,0,60,0,38,0,98,0,195,0,129,128,9,11,22,10, + 1,0,193,128,65,0,99,0,38,0,52,0,28,0,8,0, + 8,0,8,0,8,0,8,0,8,11,11,10,1,0,127,3, + 6,6,12,24,56,48,96,224,255,3,14,14,6,2,253,224, + 128,128,128,128,128,128,128,128,128,128,128,128,224,4,12,12, + 6,1,255,128,128,128,64,64,64,32,32,32,32,16,16,3, + 14,14,6,1,253,224,32,32,32,32,32,32,32,32,32,32, + 32,32,224,7,10,10,15,4,0,16,16,40,40,72,68,68, + 130,130,130,8,1,1,8,0,254,255,2,3,3,3,0,9, + 128,192,64,6,8,8,8,1,0,120,204,4,124,196,132,140, + 116,7,11,11,9,1,0,128,128,128,188,198,134,130,130,134, + 196,184,6,8,8,8,1,0,120,204,132,128,128,132,204,120, + 7,11,11,9,1,0,2,2,2,122,198,134,130,130,134,198, + 58,6,8,8,8,1,0,120,196,132,252,128,132,204,120,5, + 11,11,7,1,0,56,32,32,248,32,32,32,32,32,32,32, + 7,11,11,9,1,253,122,198,134,130,130,134,198,122,6,198, + 120,6,11,11,8,1,0,128,128,128,184,204,132,132,132,132, + 132,132,1,11,11,3,1,0,128,0,0,128,128,128,128,128, + 128,128,128,2,14,14,4,1,253,64,0,0,64,64,64,64, + 64,64,64,64,64,64,192,6,11,11,7,1,0,128,128,128, + 136,144,160,224,160,176,152,140,1,11,11,3,1,0,128,128, + 128,128,128,128,128,128,128,128,128,11,8,16,13,1,0,185, + 192,206,96,132,32,132,32,132,32,132,32,132,32,132,32,6, + 8,8,8,1,0,184,204,132,132,132,132,132,132,7,8,8, + 9,1,0,120,196,134,130,130,134,196,120,7,11,11,9,1, + 253,188,198,134,130,130,134,198,188,128,128,128,7,11,11,9, + 1,253,122,198,134,130,130,134,198,122,2,2,2,4,8,8, + 5,1,0,240,192,128,128,128,128,128,128,6,8,8,8,1, + 0,120,140,128,240,28,4,140,120,4,10,10,6,1,0,32, + 32,240,32,32,32,32,32,32,48,6,8,8,8,1,0,132, + 132,132,132,132,132,204,116,8,8,8,8,0,0,195,66,102, + 36,36,60,24,24,12,8,16,12,0,0,198,48,70,48,79, + 32,105,32,41,96,41,192,56,192,16,192,7,8,8,8,1, + 0,196,76,120,48,48,120,204,134,8,11,11,8,0,253,195, + 66,102,38,52,60,24,24,24,16,48,5,8,8,7,1,0, + 248,24,16,32,96,64,192,248,5,15,15,7,1,252,24,48, + 32,32,32,32,96,192,96,32,32,32,32,48,24,1,16,16, + 6,3,252,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,5,15,15,7,1,252,192,96,32,32,32,32,48, + 24,48,32,32,32,32,96,192,8,2,2,8,0,3,115,206, + 255}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--19-190-72-72-P-92-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=18 h=21 x= 5 y=13 dx=19 dy= 0 ascent=21 len=54 + Font Bounding box w=26 h=26 x=-1 y=-5 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =21 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur14[5349] U8G_SECTION(".progmem.u8g_font_fur14") = { + 0,26,26,255,251,14,3,59,6,250,32,255,252,21,251,14, + 252,0,0,0,6,0,0,2,14,14,8,3,0,192,192,192, + 192,192,192,192,192,192,192,192,0,0,192,6,6,6,9,1, + 8,204,204,76,76,68,68,12,14,28,14,1,0,6,96,4, + 64,4,64,12,192,127,240,8,128,25,128,25,0,255,224,19, + 0,51,0,34,0,34,0,102,0,9,18,36,11,1,254,8, + 0,8,0,62,0,107,0,201,128,200,0,200,0,248,0,126, + 0,15,0,9,128,9,128,201,128,201,128,107,0,62,0,8, + 0,8,0,16,14,28,18,1,0,120,16,108,16,198,32,198, + 96,198,64,204,128,124,128,1,60,3,102,2,99,6,99,4, + 99,8,102,8,60,12,14,28,14,1,0,30,0,51,0,97, + 0,99,0,51,0,60,0,60,96,108,96,198,96,195,96,193, + 192,192,192,99,224,62,48,1,6,6,7,3,8,128,128,128, + 128,128,128,3,17,17,7,2,253,32,96,96,64,192,192,192, + 192,192,192,192,192,192,64,96,96,32,3,17,17,7,2,253, + 128,128,192,192,64,64,96,96,96,96,96,96,64,192,192,128, + 128,8,7,7,12,2,7,36,36,24,255,24,60,102,11,12, + 24,19,4,0,6,0,6,0,6,0,6,0,6,0,6,0, + 255,224,6,0,6,0,6,0,6,0,6,0,3,5,5,5, + 1,254,96,96,192,192,128,5,1,1,7,1,4,248,2,2, + 2,5,2,0,192,192,6,15,15,8,1,255,12,8,8,24, + 16,16,48,48,32,32,96,64,64,192,128,9,14,28,11,1, + 0,60,0,103,0,67,0,193,0,193,128,193,128,193,128,193, + 128,193,128,193,128,193,0,67,0,119,0,60,0,5,14,14, + 11,2,0,56,120,248,152,24,24,24,24,24,24,24,24,24, + 24,8,14,14,11,1,0,60,102,195,195,3,3,6,12,28, + 56,48,96,192,255,9,14,28,11,1,0,62,0,119,0,97, + 128,193,128,1,128,3,0,28,0,7,0,3,0,1,128,193, + 128,193,128,99,0,62,0,9,14,28,11,1,0,7,0,7, + 0,15,0,27,0,19,0,51,0,99,0,99,0,195,0,255, + 128,255,128,3,0,3,0,3,0,9,14,28,11,1,0,255, + 0,192,0,192,0,192,0,222,0,243,0,193,0,193,128,1, + 128,1,128,193,128,195,0,102,0,60,0,9,14,28,11,1, + 0,30,0,99,0,65,128,192,0,192,0,222,0,255,0,195, + 0,193,128,193,128,193,128,65,0,103,0,30,0,8,14,14, + 11,1,0,255,3,3,2,6,6,12,12,12,24,24,24,48, + 48,9,14,28,11,1,0,62,0,99,0,193,128,193,128,193, + 128,99,0,62,0,99,0,193,128,193,128,193,128,193,128,99, + 0,62,0,9,14,28,11,1,0,62,0,99,0,193,0,193, + 128,193,128,193,128,99,128,125,128,1,128,1,128,193,0,67, + 0,102,0,60,0,2,10,10,5,2,0,192,192,0,0,0, + 0,0,0,192,192,3,12,12,5,1,254,96,96,0,0,0, + 0,0,96,96,64,192,192,12,10,20,19,4,1,0,48,0, + 224,7,0,28,0,224,0,192,0,56,0,14,0,1,192,0, + 48,11,5,10,19,4,4,255,224,0,0,0,0,0,0,255, + 224,12,10,20,19,4,1,128,0,112,0,28,0,3,128,0, + 96,0,112,1,192,14,0,112,0,192,0,8,14,14,9,0, + 0,60,126,195,3,3,2,6,12,24,24,24,0,0,24,17, + 18,54,19,1,252,7,240,0,28,60,0,48,6,0,96,3, + 0,99,243,0,198,113,0,196,49,128,204,49,128,204,49,128, + 204,49,128,204,49,128,196,51,0,70,95,0,99,158,0,96, + 0,0,48,0,0,30,16,0,7,240,0,14,14,28,14,0, + 0,3,0,7,128,7,128,4,192,12,192,12,192,24,96,24, + 96,31,240,63,240,48,24,96,24,96,24,192,12,10,14,28, + 13,2,0,255,0,193,128,192,192,192,192,192,192,193,128,254, + 0,195,128,192,192,192,192,192,192,192,192,195,128,255,0,11, + 14,28,13,1,0,31,128,57,192,96,96,64,96,192,0,192, + 0,192,0,192,0,192,0,192,0,64,96,96,96,49,192,31, + 0,11,14,28,14,2,0,254,0,195,128,192,192,192,192,192, + 96,192,96,192,96,192,96,192,96,192,96,192,192,192,192,195, + 128,254,0,9,14,28,12,2,0,255,128,192,0,192,0,192, + 0,192,0,192,0,255,128,192,0,192,0,192,0,192,0,192, + 0,192,0,255,128,8,14,14,11,2,0,255,192,192,192,192, + 192,255,192,192,192,192,192,192,192,12,14,28,14,1,0,15, + 128,56,224,96,48,64,0,192,0,192,0,193,240,192,48,192, + 48,192,48,96,48,96,48,56,112,15,224,10,14,28,14,2, + 0,192,192,192,192,192,192,192,192,192,192,192,192,255,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,2,14,14, + 5,2,0,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,8,14,14,11,1,0,3,3,3,3,3,3,3,3,3, + 3,195,195,102,60,10,14,28,13,2,0,193,128,195,0,198, + 0,204,0,216,0,240,0,240,0,216,0,220,0,206,0,199, + 0,195,0,193,128,192,192,8,14,14,11,2,0,192,192,192, + 192,192,192,192,192,192,192,192,192,255,255,14,14,28,18,2, + 0,224,28,224,28,240,60,240,60,216,108,216,108,216,108,204, + 204,204,204,196,140,199,140,199,140,195,12,195,12,11,14,28, + 14,2,0,224,96,224,96,240,96,248,96,216,96,220,96,204, + 96,198,96,198,96,195,96,195,96,193,224,193,224,192,224,12, + 14,28,14,1,0,31,128,57,192,96,96,64,32,192,48,192, + 48,192,48,192,48,192,48,192,48,64,32,96,96,57,192,15, + 0,9,14,28,12,2,0,254,0,195,0,193,128,193,128,193, + 128,193,128,195,0,254,0,192,0,192,0,192,0,192,0,192, + 0,192,0,14,14,28,15,1,0,31,128,57,192,96,96,64, + 32,192,48,192,48,192,48,192,48,192,48,192,48,64,32,96, + 96,57,192,15,252,9,14,28,12,2,0,254,0,195,0,193, + 128,193,128,193,128,195,0,254,0,195,0,195,0,193,0,193, + 128,193,128,193,128,193,128,10,14,28,12,1,0,63,0,97, + 128,192,192,192,0,192,0,240,0,127,0,31,128,1,192,0, + 192,192,192,192,192,97,128,62,0,11,14,28,13,1,0,255, + 224,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,11,14,28,15,2, + 0,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,96,192,113,192,31,0,12,14,28, + 12,0,0,224,48,96,112,96,96,48,96,48,96,48,192,24, + 192,24,192,25,128,13,128,13,0,15,0,7,0,6,0,18, + 14,42,18,0,0,192,224,192,96,224,192,97,225,128,97,161, + 128,33,177,128,49,49,128,51,51,0,51,19,0,27,27,0, + 26,26,0,30,30,0,14,14,0,12,14,0,12,12,0,12, + 14,28,13,1,0,224,96,96,192,49,192,57,128,27,0,15, + 0,14,0,15,0,27,0,25,128,49,192,96,192,224,224,192, + 112,12,14,28,12,0,0,224,112,96,96,112,192,48,192,25, + 128,25,128,15,0,14,0,6,0,6,0,6,0,6,0,6, + 0,6,0,10,14,28,12,1,0,127,192,0,192,1,128,3, + 128,3,0,6,0,14,0,28,0,24,0,56,0,112,0,96, + 0,224,0,255,192,4,18,18,8,2,252,240,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,240,5,15,15, + 8,1,255,128,192,64,64,64,96,32,32,48,16,16,16,24, + 8,8,4,18,18,8,2,252,240,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,240,9,12,24,19,5,0, + 8,0,8,0,20,0,20,0,34,0,34,0,34,0,65,0, + 65,0,193,128,128,128,128,128,10,1,2,10,0,254,255,192, + 3,4,4,4,0,12,128,192,96,32,8,10,10,10,1,0, + 62,103,195,3,63,99,195,195,231,123,9,14,28,11,1,0, + 192,0,192,0,192,0,192,0,222,0,227,0,193,128,193,128, + 193,128,193,128,193,128,193,0,227,0,222,0,8,10,10,10, + 1,0,62,103,195,192,192,192,192,195,103,60,9,14,28,11, + 1,0,1,128,1,128,1,128,1,128,61,128,103,128,195,128, + 193,128,193,128,193,128,193,128,65,128,99,128,29,128,9,10, + 20,11,1,0,62,0,99,0,193,0,193,128,255,128,192,0, + 192,0,67,0,103,0,62,0,6,14,14,8,1,0,28,48, + 48,48,252,48,48,48,48,48,48,48,48,48,9,14,28,11, + 1,252,61,128,99,128,193,128,193,128,193,128,193,128,193,128, + 193,128,99,128,61,128,1,128,65,128,115,0,62,0,8,14, + 14,10,1,0,192,192,192,192,222,231,195,195,195,195,195,195, + 195,195,2,14,14,4,1,0,192,0,0,0,192,192,192,192, + 192,192,192,192,192,192,3,18,18,5,1,252,96,0,0,0, + 96,96,96,96,96,96,96,96,96,96,96,96,96,192,7,14, + 14,9,1,0,192,192,192,192,198,204,216,240,240,248,216,204, + 198,198,2,14,14,4,1,0,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,14,10,20,17,1,0,222,120,231,156, + 195,12,195,12,195,12,195,12,195,12,195,12,195,12,195,12, + 8,10,10,10,1,0,222,231,195,195,195,195,195,195,195,195, + 9,10,20,11,1,0,62,0,99,0,193,128,193,128,193,128, + 193,128,193,128,193,128,99,0,62,0,9,14,28,11,1,252, + 222,0,227,0,193,128,193,128,193,128,193,128,193,128,193,128, + 227,0,222,0,192,0,192,0,192,0,192,0,9,14,28,11, + 1,252,61,128,99,128,193,128,193,128,193,128,193,128,193,128, + 193,128,99,128,61,128,1,128,1,128,1,128,1,128,5,10, + 10,7,1,0,248,224,192,192,192,192,192,192,192,192,8,10, + 10,10,1,0,124,231,195,192,124,30,3,195,230,124,6,13, + 13,8,1,0,16,48,48,252,48,48,48,48,48,48,48,48, + 28,8,10,10,10,1,0,195,195,195,195,195,195,195,195,231, + 123,10,10,20,10,0,0,192,192,96,128,97,128,49,128,51, + 0,51,0,26,0,30,0,14,0,12,0,15,10,20,15,0, + 0,195,134,99,134,99,196,98,204,38,76,54,72,52,120,28, + 120,28,48,24,48,9,10,20,10,1,0,195,0,99,0,118, + 0,60,0,24,0,28,0,60,0,102,0,195,0,195,128,10, + 14,28,10,0,252,192,192,97,128,97,128,49,128,51,0,19, + 0,26,0,30,0,14,0,12,0,12,0,12,0,24,0,24, + 0,7,10,10,9,1,0,254,6,12,28,24,48,96,96,192, + 254,6,19,19,10,2,251,12,24,16,48,48,48,48,48,96, + 224,224,48,48,48,48,16,16,24,28,1,21,21,7,3,251, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,6,19,19,10,2,251,224,112,48,48,48, + 48,48,16,24,12,28,16,48,48,48,48,48,48,224,10,2, + 4,10,0,4,120,192,207,128,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,0,0,0,6,0,0,2, + 14,14,7,3,252,192,192,0,0,192,192,192,192,192,192,192, + 192,192,192,8,14,14,10,1,254,2,4,60,102,203,200,200, + 208,208,211,102,60,32,64,10,14,28,11,1,0,31,0,49, + 128,96,192,96,0,96,0,252,0,96,0,96,0,96,0,96, + 0,96,0,96,0,96,0,255,128,10,10,20,12,1,3,128, + 64,94,128,51,0,65,128,64,128,64,128,64,128,33,0,94, + 128,128,64,10,14,28,12,1,0,192,192,96,128,97,128,49, + 0,243,192,27,0,30,0,255,192,12,0,12,0,12,0,12, + 0,12,0,12,0,1,18,18,7,3,252,128,128,128,128,128, + 128,128,128,0,0,128,128,128,128,128,128,128,128,7,17,17, + 9,1,253,60,100,192,192,96,56,124,198,198,206,124,60,14, + 6,6,140,248,6,1,1,6,0,13,204,14,14,28,16,1, + 0,15,192,28,224,39,144,76,200,216,108,152,4,152,4,152, + 4,152,100,140,204,71,200,32,16,16,32,15,192,7,10,10, + 8,1,4,120,204,4,124,196,132,124,0,0,254,7,8,8, + 11,2,1,38,100,204,216,152,204,100,38,10,5,10,12,1, + 3,255,192,0,64,0,64,0,64,0,64,255,14,14,28,16, + 1,0,15,192,28,224,47,208,76,104,204,108,140,100,143,132, + 140,68,140,100,204,108,76,104,32,16,28,224,15,192,6,1, + 1,6,0,13,252,4,5,5,6,1,9,96,240,144,144,96, + 11,12,24,19,4,0,6,0,6,0,6,0,6,0,255,224, + 6,0,6,0,6,0,0,0,0,0,0,0,255,224,6,8, + 8,7,1,6,120,220,12,12,24,48,192,252,6,8,8,7, + 1,6,120,204,12,48,24,140,204,120,4,4,4,4,1,12, + 48,96,64,192,255,9,18,36,11,1,252,63,128,121,0,249, + 0,249,0,249,0,249,0,121,0,25,0,9,0,9,0,9, + 0,9,0,9,0,9,0,9,0,9,0,9,0,9,0,2, + 2,2,5,2,5,192,192,6,5,5,5,0,251,64,120,12, + 12,248,4,7,7,6,1,7,112,240,48,48,48,48,48,6, + 10,10,8,1,4,120,72,132,132,132,132,204,120,0,252,7, + 8,8,11,2,1,152,204,100,102,102,100,204,152,13,14,28, + 15,1,0,112,64,240,192,48,128,49,128,49,0,51,0,50, + 48,54,112,12,112,8,176,25,176,17,248,48,48,32,48,13, + 14,28,15,1,0,112,64,240,192,48,128,49,128,49,0,50, + 0,50,112,52,216,12,24,8,24,24,48,16,96,48,192,32, + 248,14,14,28,16,1,0,120,48,204,32,12,96,48,192,12, + 128,141,128,121,24,3,56,2,120,4,88,12,152,8,252,24, + 24,16,24,8,14,14,10,1,252,12,12,0,12,12,12,24, + 48,96,192,192,193,127,62,14,20,40,14,0,0,12,0,6, + 0,2,0,3,0,0,0,0,0,3,0,7,128,7,128,4, + 192,12,192,12,192,24,96,24,96,31,240,63,240,48,24,96, + 24,96,24,192,12,14,20,40,14,0,0,0,192,0,128,1, + 128,1,0,0,0,0,0,3,0,7,128,7,128,4,192,12, + 192,12,192,24,96,24,96,31,240,63,240,48,24,96,24,96, + 24,192,12,14,20,40,14,0,0,3,0,3,128,6,128,4, + 192,0,0,0,0,3,0,7,128,7,128,4,192,12,192,12, + 192,24,96,24,96,31,240,63,240,48,24,96,24,96,24,192, + 12,14,18,36,14,0,0,7,192,0,0,0,0,0,0,3, + 0,7,128,7,128,4,192,12,192,12,192,24,96,24,96,31, + 240,63,240,48,24,96,24,96,24,192,12,13,18,36,15,1, + 0,12,192,0,0,0,0,0,0,7,0,7,0,13,128,13, + 128,12,192,24,192,24,192,48,96,63,224,63,240,96,48,96, + 24,192,24,192,24,13,21,42,14,1,0,6,0,13,0,9, + 0,9,0,6,0,0,0,0,0,6,0,7,0,15,0,13, + 0,25,128,25,128,16,192,48,192,63,224,127,224,96,32,192, + 48,192,48,192,24,17,14,42,19,1,0,1,255,128,3,192, + 0,2,192,0,6,192,0,14,192,0,12,192,0,28,255,128, + 24,192,0,56,192,0,63,192,0,96,192,0,96,192,0,192, + 192,0,192,255,128,11,18,36,13,1,252,31,128,57,192,96, + 96,64,96,192,0,192,0,192,0,192,0,192,0,192,0,64, + 96,96,96,49,192,31,0,4,0,7,0,1,128,15,128,9, + 20,40,12,2,0,96,0,48,0,24,0,8,0,0,0,0, + 0,255,128,192,0,192,0,192,0,192,0,192,0,255,128,192, + 0,192,0,192,0,192,0,192,0,192,0,255,128,9,20,40, + 12,2,0,6,0,4,0,12,0,24,0,0,0,0,0,255, + 128,192,0,192,0,192,0,192,0,192,0,255,128,192,0,192, + 0,192,0,192,0,192,0,192,0,255,128,9,20,40,12,2, + 0,24,0,28,0,52,0,38,0,0,0,0,0,255,128,192, + 0,192,0,192,0,192,0,192,0,255,128,192,0,192,0,192, + 0,192,0,192,0,192,0,255,128,9,18,36,12,2,0,102, + 0,0,0,0,0,0,0,255,128,192,0,192,0,192,0,192, + 0,192,0,255,128,192,0,192,0,192,0,192,0,192,0,192, + 0,255,128,4,20,20,5,0,0,192,96,32,48,0,0,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,4,20,20, + 5,2,0,48,96,64,128,0,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,5,20,20,5,0,0,48,112,88, + 200,0,0,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,6,18,18,6,0,0,204,0,0,0,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,13,14,28,14,0,0,127, + 128,97,224,96,112,96,48,96,16,96,24,254,24,96,24,96, + 24,96,16,96,48,96,96,97,224,127,128,11,18,36,14,2, + 0,31,0,0,0,0,0,0,0,224,96,224,96,240,96,248, + 96,216,96,220,96,204,96,198,96,198,96,195,96,195,96,193, + 224,193,224,192,224,12,20,40,14,1,0,24,0,12,0,6, + 0,2,0,0,0,0,0,31,128,57,192,96,96,64,32,192, + 48,192,48,192,48,192,48,192,48,192,48,64,32,96,96,57, + 192,15,0,12,20,40,14,1,0,1,128,3,0,6,0,4, + 0,0,0,0,0,31,128,57,192,96,96,64,32,192,48,192, + 48,192,48,192,48,192,48,192,48,64,32,96,96,57,192,15, + 0,12,20,40,14,1,0,6,0,15,0,9,0,16,128,0, + 0,0,0,31,128,57,192,96,96,64,32,192,48,192,48,192, + 48,192,48,192,48,192,48,64,32,96,96,57,192,15,0,12, + 19,38,14,1,0,12,128,31,0,0,0,0,0,0,0,31, + 128,57,192,96,96,64,32,192,48,192,48,192,48,192,48,192, + 48,192,48,96,96,112,224,63,192,15,0,12,18,36,14,1, + 0,13,128,0,0,0,0,0,0,31,128,57,192,96,96,64, + 32,192,48,192,48,192,48,192,48,192,48,192,48,64,32,96, + 96,57,192,15,0,11,10,20,19,4,1,192,96,96,192,49, + 128,27,0,14,0,14,0,27,0,49,128,96,192,64,96,12, + 16,32,14,1,255,0,48,31,224,56,224,96,224,65,176,193, + 176,195,48,198,48,198,48,204,48,220,48,88,32,112,96,57, + 192,127,0,192,0,11,20,40,15,2,0,24,0,8,0,4, + 0,6,0,0,0,0,0,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,96,192,127, + 192,31,0,11,20,40,15,2,0,3,0,2,0,4,0,12, + 0,0,0,0,0,192,96,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,96,192,127,192,31, + 0,11,20,40,15,2,0,14,0,14,0,27,0,17,0,0, + 0,0,0,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,96,192,127,192,31,0,11, + 18,36,15,2,0,25,128,0,0,0,0,0,0,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,96,96,192,113,192,31,0,12,20,40,12,0,0,1, + 128,3,0,2,0,4,0,0,0,0,0,224,112,96,96,112, + 192,48,192,25,128,25,128,15,0,14,0,6,0,6,0,6, + 0,6,0,6,0,6,0,9,14,28,12,2,0,192,0,192, + 0,192,0,254,0,195,0,193,128,193,128,193,128,195,128,254, + 0,192,0,192,0,192,0,192,0,10,14,28,11,1,0,62, + 0,103,0,195,0,195,0,198,0,204,0,204,0,206,0,199, + 128,193,128,192,192,216,192,220,128,199,128,8,15,15,10,1, + 0,48,24,8,0,0,62,103,195,3,63,99,195,195,231,123, + 8,16,16,10,1,0,6,12,24,16,0,0,62,103,195,3, + 63,99,195,195,231,123,8,16,16,10,1,0,24,28,36,38, + 0,0,62,103,195,3,63,99,195,195,231,123,8,14,14,10, + 1,0,62,0,0,0,62,103,195,3,63,115,195,195,231,123, + 8,14,14,10,1,0,102,0,0,0,62,103,195,3,63,99, + 195,195,231,123,8,16,16,10,1,0,28,34,34,28,0,0, + 62,99,193,1,63,113,193,193,231,61,16,10,20,18,1,0, + 62,124,227,198,193,131,1,131,63,255,225,128,193,128,195,131, + 230,238,124,60,8,14,14,10,1,252,62,103,195,192,192,192, + 192,195,102,60,16,28,6,62,9,16,32,11,1,0,48,0, + 48,0,24,0,8,0,0,0,0,0,62,0,99,0,193,0, + 193,128,255,128,192,0,192,0,67,0,103,0,62,0,9,16, + 32,11,1,0,6,0,12,0,8,0,24,0,0,0,0,0, + 62,0,99,0,193,0,193,128,255,128,192,0,192,0,67,0, + 103,0,62,0,9,16,32,11,1,0,24,0,28,0,52,0, + 34,0,0,0,0,0,62,0,99,0,193,0,193,128,255,128, + 192,0,192,0,67,0,103,0,62,0,9,14,28,11,1,0, + 102,0,0,0,0,0,0,0,62,0,99,0,193,0,193,128, + 255,128,192,0,192,0,67,0,103,0,62,0,3,15,15,4, + 0,0,128,192,96,32,0,96,96,96,96,96,96,96,96,96, + 96,3,15,15,4,1,0,96,64,192,128,0,192,192,192,192, + 192,192,192,192,192,192,6,15,15,4,255,0,48,120,72,132, + 0,48,48,48,48,48,48,48,48,48,48,6,14,14,5,0, + 0,204,0,0,0,48,48,48,48,48,48,48,48,48,48,9, + 14,28,11,1,0,102,0,24,0,108,0,6,0,63,0,99, + 0,193,128,193,128,193,128,193,128,193,128,193,128,99,0,62, + 0,8,14,14,10,1,0,52,124,0,0,222,231,195,195,195, + 195,195,195,195,195,9,16,32,11,1,0,48,0,16,0,24, + 0,8,0,0,0,0,0,62,0,99,0,193,128,193,128,193, + 128,193,128,193,128,193,128,99,0,62,0,9,16,32,11,1, + 0,6,0,4,0,12,0,8,0,0,0,0,0,62,0,99, + 0,193,128,193,128,193,128,193,128,193,128,193,128,99,0,62, + 0,9,16,32,11,1,0,8,0,28,0,20,0,34,0,0, + 0,0,0,62,0,99,0,193,128,193,128,193,128,193,128,193, + 128,193,128,99,0,62,0,9,14,28,11,1,0,62,0,0, + 0,0,0,0,0,62,0,99,0,193,128,193,128,193,128,193, + 128,193,128,193,128,99,0,62,0,9,14,28,11,1,0,51, + 0,0,0,0,0,0,0,62,0,115,0,193,128,192,128,192, + 128,192,128,192,128,193,128,115,0,62,0,11,8,16,19,4, + 2,6,0,6,0,0,0,0,0,255,224,0,0,6,0,6, + 0,9,12,24,11,1,0,1,128,63,0,99,0,199,128,197, + 128,201,128,217,128,209,128,225,128,99,0,254,0,128,0,8, + 16,16,10,1,0,96,48,16,8,0,0,195,195,195,195,195, + 195,195,195,231,123,8,16,16,10,1,0,4,12,8,16,0, + 0,195,195,195,195,195,195,195,195,231,123,8,16,16,10,1, + 0,24,24,52,36,0,0,195,195,195,195,195,195,195,195,231, + 123,8,14,14,10,1,0,102,0,0,0,195,195,195,195,195, + 195,195,195,231,123,10,19,38,10,0,252,3,0,6,0,4, + 0,8,0,0,0,192,192,97,128,97,128,49,128,51,0,19, + 0,26,0,30,0,14,0,12,0,12,0,12,0,120,0,120, + 0,9,18,36,11,1,252,192,0,192,0,192,0,192,0,222, + 0,227,0,193,128,193,128,193,128,193,128,193,128,193,128,227, + 0,222,0,192,0,192,0,192,0,192,0,10,18,36,10,0, + 252,51,0,0,0,0,0,0,0,192,192,97,128,97,128,97, + 0,51,0,51,0,30,0,30,0,30,0,12,0,12,0,24, + 0,24,0,24,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--19-190-72-72-P-92-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 14 + Calculated Max Values w=11 h=15 x= 4 y= 7 dx=19 dy= 0 ascent=14 len=28 + Font Bounding box w=26 h=26 x=-1 y=-5 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =14 descent= 0 + X Font ascent =14 descent= 0 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur14n[405] U8G_SECTION(".progmem.u8g_font_fur14n") = { + 0,26,26,255,251,14,0,0,0,0,42,57,0,14,254,14, + 0,8,7,7,12,2,7,36,36,24,255,24,60,102,11,12, + 24,19,4,0,6,0,6,0,6,0,6,0,6,0,6,0, + 255,224,6,0,6,0,6,0,6,0,6,0,3,5,5,5, + 1,254,96,96,192,192,128,5,1,1,7,1,4,248,2,2, + 2,5,2,0,192,192,6,15,15,8,1,255,12,8,8,24, + 16,16,48,48,32,32,96,64,64,192,128,9,14,28,11,1, + 0,60,0,103,0,67,0,193,0,193,128,193,128,193,128,193, + 128,193,128,193,128,193,0,67,0,119,0,60,0,5,14,14, + 11,2,0,56,120,248,152,24,24,24,24,24,24,24,24,24, + 24,8,14,14,11,1,0,60,102,195,195,3,3,6,12,28, + 56,48,96,192,255,9,14,28,11,1,0,62,0,119,0,97, + 128,193,128,1,128,3,0,28,0,7,0,3,0,1,128,193, + 128,193,128,99,0,62,0,9,14,28,11,1,0,7,0,7, + 0,15,0,27,0,19,0,51,0,99,0,99,0,195,0,255, + 128,255,128,3,0,3,0,3,0,9,14,28,11,1,0,255, + 0,192,0,192,0,192,0,222,0,243,0,193,0,193,128,1, + 128,1,128,193,128,195,0,102,0,60,0,9,14,28,11,1, + 0,30,0,99,0,65,128,192,0,192,0,222,0,255,0,195, + 0,193,128,193,128,193,128,65,0,103,0,30,0,8,14,14, + 11,1,0,255,3,3,2,6,6,12,12,12,24,24,24,48, + 48,9,14,28,11,1,0,62,0,99,0,193,128,193,128,193, + 128,99,0,62,0,99,0,193,128,193,128,193,128,193,128,99, + 0,62,0,9,14,28,11,1,0,62,0,99,0,193,0,193, + 128,193,128,193,128,99,128,125,128,1,128,1,128,193,0,67, + 0,102,0,60,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--19-190-72-72-P-92-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=18 h=21 x= 5 y=12 dx=19 dy= 0 ascent=16 len=54 + Font Bounding box w=26 h=26 x=-1 y=-5 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =16 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur14r[2489] U8G_SECTION(".progmem.u8g_font_fur14r") = { + 0,26,26,255,251,14,3,59,6,250,32,127,252,16,251,14, + 252,0,0,0,6,0,0,2,14,14,8,3,0,192,192,192, + 192,192,192,192,192,192,192,192,0,0,192,6,6,6,9,1, + 8,204,204,76,76,68,68,12,14,28,14,1,0,6,96,4, + 64,4,64,12,192,127,240,8,128,25,128,25,0,255,224,19, + 0,51,0,34,0,34,0,102,0,9,18,36,11,1,254,8, + 0,8,0,62,0,107,0,201,128,200,0,200,0,248,0,126, + 0,15,0,9,128,9,128,201,128,201,128,107,0,62,0,8, + 0,8,0,16,14,28,18,1,0,120,16,108,16,198,32,198, + 96,198,64,204,128,124,128,1,60,3,102,2,99,6,99,4, + 99,8,102,8,60,12,14,28,14,1,0,30,0,51,0,97, + 0,99,0,51,0,60,0,60,96,108,96,198,96,195,96,193, + 192,192,192,99,224,62,48,1,6,6,7,3,8,128,128,128, + 128,128,128,3,17,17,7,2,253,32,96,96,64,192,192,192, + 192,192,192,192,192,192,64,96,96,32,3,17,17,7,2,253, + 128,128,192,192,64,64,96,96,96,96,96,96,64,192,192,128, + 128,8,7,7,12,2,7,36,36,24,255,24,60,102,11,12, + 24,19,4,0,6,0,6,0,6,0,6,0,6,0,6,0, + 255,224,6,0,6,0,6,0,6,0,6,0,3,5,5,5, + 1,254,96,96,192,192,128,5,1,1,7,1,4,248,2,2, + 2,5,2,0,192,192,6,15,15,8,1,255,12,8,8,24, + 16,16,48,48,32,32,96,64,64,192,128,9,14,28,11,1, + 0,60,0,103,0,67,0,193,0,193,128,193,128,193,128,193, + 128,193,128,193,128,193,0,67,0,119,0,60,0,5,14,14, + 11,2,0,56,120,248,152,24,24,24,24,24,24,24,24,24, + 24,8,14,14,11,1,0,60,102,195,195,3,3,6,12,28, + 56,48,96,192,255,9,14,28,11,1,0,62,0,119,0,97, + 128,193,128,1,128,3,0,28,0,7,0,3,0,1,128,193, + 128,193,128,99,0,62,0,9,14,28,11,1,0,7,0,7, + 0,15,0,27,0,19,0,51,0,99,0,99,0,195,0,255, + 128,255,128,3,0,3,0,3,0,9,14,28,11,1,0,255, + 0,192,0,192,0,192,0,222,0,243,0,193,0,193,128,1, + 128,1,128,193,128,195,0,102,0,60,0,9,14,28,11,1, + 0,30,0,99,0,65,128,192,0,192,0,222,0,255,0,195, + 0,193,128,193,128,193,128,65,0,103,0,30,0,8,14,14, + 11,1,0,255,3,3,2,6,6,12,12,12,24,24,24,48, + 48,9,14,28,11,1,0,62,0,99,0,193,128,193,128,193, + 128,99,0,62,0,99,0,193,128,193,128,193,128,193,128,99, + 0,62,0,9,14,28,11,1,0,62,0,99,0,193,0,193, + 128,193,128,193,128,99,128,125,128,1,128,1,128,193,0,67, + 0,102,0,60,0,2,10,10,5,2,0,192,192,0,0,0, + 0,0,0,192,192,3,12,12,5,1,254,96,96,0,0,0, + 0,0,96,96,64,192,192,12,10,20,19,4,1,0,48,0, + 224,7,0,28,0,224,0,192,0,56,0,14,0,1,192,0, + 48,11,5,10,19,4,4,255,224,0,0,0,0,0,0,255, + 224,12,10,20,19,4,1,128,0,112,0,28,0,3,128,0, + 96,0,112,1,192,14,0,112,0,192,0,8,14,14,9,0, + 0,60,126,195,3,3,2,6,12,24,24,24,0,0,24,17, + 18,54,19,1,252,7,240,0,28,60,0,48,6,0,96,3, + 0,99,243,0,198,113,0,196,49,128,204,49,128,204,49,128, + 204,49,128,204,49,128,196,51,0,70,95,0,99,158,0,96, + 0,0,48,0,0,30,16,0,7,240,0,14,14,28,14,0, + 0,3,0,7,128,7,128,4,192,12,192,12,192,24,96,24, + 96,31,240,63,240,48,24,96,24,96,24,192,12,10,14,28, + 13,2,0,255,0,193,128,192,192,192,192,192,192,193,128,254, + 0,195,128,192,192,192,192,192,192,192,192,195,128,255,0,11, + 14,28,13,1,0,31,128,57,192,96,96,64,96,192,0,192, + 0,192,0,192,0,192,0,192,0,64,96,96,96,49,192,31, + 0,11,14,28,14,2,0,254,0,195,128,192,192,192,192,192, + 96,192,96,192,96,192,96,192,96,192,96,192,192,192,192,195, + 128,254,0,9,14,28,12,2,0,255,128,192,0,192,0,192, + 0,192,0,192,0,255,128,192,0,192,0,192,0,192,0,192, + 0,192,0,255,128,8,14,14,11,2,0,255,192,192,192,192, + 192,255,192,192,192,192,192,192,192,12,14,28,14,1,0,15, + 128,56,224,96,48,64,0,192,0,192,0,193,240,192,48,192, + 48,192,48,96,48,96,48,56,112,15,224,10,14,28,14,2, + 0,192,192,192,192,192,192,192,192,192,192,192,192,255,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,2,14,14, + 5,2,0,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,8,14,14,11,1,0,3,3,3,3,3,3,3,3,3, + 3,195,195,102,60,10,14,28,13,2,0,193,128,195,0,198, + 0,204,0,216,0,240,0,240,0,216,0,220,0,206,0,199, + 0,195,0,193,128,192,192,8,14,14,11,2,0,192,192,192, + 192,192,192,192,192,192,192,192,192,255,255,14,14,28,18,2, + 0,224,28,224,28,240,60,240,60,216,108,216,108,216,108,204, + 204,204,204,196,140,199,140,199,140,195,12,195,12,11,14,28, + 14,2,0,224,96,224,96,240,96,248,96,216,96,220,96,204, + 96,198,96,198,96,195,96,195,96,193,224,193,224,192,224,12, + 14,28,14,1,0,31,128,57,192,96,96,64,32,192,48,192, + 48,192,48,192,48,192,48,192,48,64,32,96,96,57,192,15, + 0,9,14,28,12,2,0,254,0,195,0,193,128,193,128,193, + 128,193,128,195,0,254,0,192,0,192,0,192,0,192,0,192, + 0,192,0,14,14,28,15,1,0,31,128,57,192,96,96,64, + 32,192,48,192,48,192,48,192,48,192,48,192,48,64,32,96, + 96,57,192,15,252,9,14,28,12,2,0,254,0,195,0,193, + 128,193,128,193,128,195,0,254,0,195,0,195,0,193,0,193, + 128,193,128,193,128,193,128,10,14,28,12,1,0,63,0,97, + 128,192,192,192,0,192,0,240,0,127,0,31,128,1,192,0, + 192,192,192,192,192,97,128,62,0,11,14,28,13,1,0,255, + 224,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,11,14,28,15,2, + 0,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,96,192,113,192,31,0,12,14,28, + 12,0,0,224,48,96,112,96,96,48,96,48,96,48,192,24, + 192,24,192,25,128,13,128,13,0,15,0,7,0,6,0,18, + 14,42,18,0,0,192,224,192,96,224,192,97,225,128,97,161, + 128,33,177,128,49,49,128,51,51,0,51,19,0,27,27,0, + 26,26,0,30,30,0,14,14,0,12,14,0,12,12,0,12, + 14,28,13,1,0,224,96,96,192,49,192,57,128,27,0,15, + 0,14,0,15,0,27,0,25,128,49,192,96,192,224,224,192, + 112,12,14,28,12,0,0,224,112,96,96,112,192,48,192,25, + 128,25,128,15,0,14,0,6,0,6,0,6,0,6,0,6, + 0,6,0,10,14,28,12,1,0,127,192,0,192,1,128,3, + 128,3,0,6,0,14,0,28,0,24,0,56,0,112,0,96, + 0,224,0,255,192,4,18,18,8,2,252,240,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,240,5,15,15, + 8,1,255,128,192,64,64,64,96,32,32,48,16,16,16,24, + 8,8,4,18,18,8,2,252,240,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,240,9,12,24,19,5,0, + 8,0,8,0,20,0,20,0,34,0,34,0,34,0,65,0, + 65,0,193,128,128,128,128,128,10,1,2,10,0,254,255,192, + 3,4,4,4,0,12,128,192,96,32,8,10,10,10,1,0, + 62,103,195,3,63,99,195,195,231,123,9,14,28,11,1,0, + 192,0,192,0,192,0,192,0,222,0,227,0,193,128,193,128, + 193,128,193,128,193,128,193,0,227,0,222,0,8,10,10,10, + 1,0,62,103,195,192,192,192,192,195,103,60,9,14,28,11, + 1,0,1,128,1,128,1,128,1,128,61,128,103,128,195,128, + 193,128,193,128,193,128,193,128,65,128,99,128,29,128,9,10, + 20,11,1,0,62,0,99,0,193,0,193,128,255,128,192,0, + 192,0,67,0,103,0,62,0,6,14,14,8,1,0,28,48, + 48,48,252,48,48,48,48,48,48,48,48,48,9,14,28,11, + 1,252,61,128,99,128,193,128,193,128,193,128,193,128,193,128, + 193,128,99,128,61,128,1,128,65,128,115,0,62,0,8,14, + 14,10,1,0,192,192,192,192,222,231,195,195,195,195,195,195, + 195,195,2,14,14,4,1,0,192,0,0,0,192,192,192,192, + 192,192,192,192,192,192,3,18,18,5,1,252,96,0,0,0, + 96,96,96,96,96,96,96,96,96,96,96,96,96,192,7,14, + 14,9,1,0,192,192,192,192,198,204,216,240,240,248,216,204, + 198,198,2,14,14,4,1,0,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,14,10,20,17,1,0,222,120,231,156, + 195,12,195,12,195,12,195,12,195,12,195,12,195,12,195,12, + 8,10,10,10,1,0,222,231,195,195,195,195,195,195,195,195, + 9,10,20,11,1,0,62,0,99,0,193,128,193,128,193,128, + 193,128,193,128,193,128,99,0,62,0,9,14,28,11,1,252, + 222,0,227,0,193,128,193,128,193,128,193,128,193,128,193,128, + 227,0,222,0,192,0,192,0,192,0,192,0,9,14,28,11, + 1,252,61,128,99,128,193,128,193,128,193,128,193,128,193,128, + 193,128,99,128,61,128,1,128,1,128,1,128,1,128,5,10, + 10,7,1,0,248,224,192,192,192,192,192,192,192,192,8,10, + 10,10,1,0,124,231,195,192,124,30,3,195,230,124,6,13, + 13,8,1,0,16,48,48,252,48,48,48,48,48,48,48,48, + 28,8,10,10,10,1,0,195,195,195,195,195,195,195,195,231, + 123,10,10,20,10,0,0,192,192,96,128,97,128,49,128,51, + 0,51,0,26,0,30,0,14,0,12,0,15,10,20,15,0, + 0,195,134,99,134,99,196,98,204,38,76,54,72,52,120,28, + 120,28,48,24,48,9,10,20,10,1,0,195,0,99,0,118, + 0,60,0,24,0,28,0,60,0,102,0,195,0,195,128,10, + 14,28,10,0,252,192,192,97,128,97,128,49,128,51,0,19, + 0,26,0,30,0,14,0,12,0,12,0,12,0,24,0,24, + 0,7,10,10,9,1,0,254,6,12,28,24,48,96,96,192, + 254,6,19,19,10,2,251,12,24,16,48,48,48,48,48,96, + 224,224,48,48,48,48,16,16,24,28,1,21,21,7,3,251, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,6,19,19,10,2,251,224,112,48,48,48, + 48,48,16,24,12,28,16,48,48,48,48,48,48,224,10,2, + 4,10,0,4,120,192,207,128,255}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--23-230-72-72-P-109-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=22 h=25 x= 6 y=15 dx=24 dy= 0 ascent=24 len=66 + Font Bounding box w=31 h=30 x=-2 y=-6 + Calculated Min Values x=-1 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =24 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur17[6799] U8G_SECTION(".progmem.u8g_font_fur17") = { + 0,31,30,254,250,17,4,5,8,170,32,255,251,24,250,17, + 251,0,0,0,7,0,0,2,17,17,8,3,0,192,192,192, + 192,192,192,192,192,192,192,192,192,192,0,0,192,192,7,7, + 7,10,2,10,206,206,198,198,196,196,196,15,17,34,17,1, + 0,1,24,3,24,3,24,3,48,6,48,63,254,6,32,4, + 96,12,96,12,64,255,248,24,192,24,128,17,128,49,128,49, + 128,49,0,11,21,42,13,1,254,4,0,4,0,63,0,127, + 128,196,192,196,192,196,0,196,0,244,0,127,0,63,192,5, + 224,4,224,4,96,196,96,196,96,228,96,127,192,63,128,4, + 0,4,0,19,17,51,21,1,0,60,2,0,126,4,0,227, + 12,0,195,8,0,195,24,0,195,16,0,195,48,0,102,96, + 0,62,71,128,0,207,192,0,152,96,1,152,96,1,24,96, + 2,24,96,6,24,96,4,15,192,12,7,128,15,17,34,17, + 1,0,15,0,63,128,48,192,48,192,49,192,59,128,31,0, + 28,24,118,24,103,24,227,152,193,216,192,240,224,112,96,120, + 123,252,31,142,2,7,7,8,3,10,192,192,192,192,192,192, + 64,4,20,20,8,2,253,48,48,96,96,96,224,192,192,192, + 192,192,192,192,192,224,96,96,96,48,48,4,20,20,8,2, + 253,192,64,96,96,96,48,48,48,48,48,48,48,48,48,48, + 96,96,96,64,192,9,9,18,15,3,8,34,0,54,0,22, + 0,28,0,255,128,156,128,20,0,54,0,34,0,14,14,28, + 24,5,0,2,0,2,0,2,0,2,0,2,0,2,0,255, + 252,2,0,2,0,2,0,2,0,2,0,2,0,2,0,4, + 6,6,6,1,253,112,112,96,96,192,192,6,1,1,8,1, + 5,252,2,3,3,6,2,0,192,192,192,7,18,18,9,1, + 255,6,6,4,12,12,8,8,24,24,16,48,48,32,32,96, + 96,64,192,10,17,34,13,1,0,30,0,63,128,97,128,96, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,97,192,97,128,63,128,30,0,5,17,17,13,3, + 0,56,120,248,216,24,24,24,24,24,24,24,24,24,24,24, + 24,24,10,17,34,13,1,0,30,0,127,128,97,128,224,192, + 224,192,0,192,1,192,3,128,3,128,7,0,14,0,28,0, + 56,0,112,0,96,0,224,0,255,192,10,17,34,13,1,0, + 31,0,127,128,96,192,224,192,0,192,0,192,3,128,14,0, + 7,128,1,192,0,192,0,192,192,192,224,192,97,192,127,128, + 30,0,11,17,34,13,1,0,3,128,3,128,7,128,13,128, + 13,128,25,128,57,128,49,128,97,128,97,128,193,128,255,224, + 255,224,1,128,1,128,1,128,1,128,10,17,34,13,1,0, + 127,128,96,0,96,0,96,0,96,0,111,0,127,128,97,128, + 64,192,0,192,0,192,0,192,0,192,192,192,225,128,127,0, + 30,0,11,17,34,13,1,0,31,0,59,128,96,192,224,192, + 192,0,192,0,207,0,223,192,241,192,224,224,192,96,192,96, + 192,96,192,96,96,192,59,192,31,0,10,17,34,13,1,0, + 255,192,0,192,0,192,1,128,1,128,3,128,3,0,3,0, + 7,0,6,0,6,0,14,0,12,0,12,0,28,0,24,0, + 56,0,11,17,34,13,1,0,31,0,59,128,96,192,96,192, + 96,192,96,192,49,128,31,0,59,128,96,192,192,96,192,96, + 192,96,192,96,96,224,123,192,31,0,11,17,34,13,1,0, + 31,0,127,192,96,192,192,224,192,96,192,96,192,224,224,224, + 113,224,63,96,0,96,0,96,0,224,96,192,97,192,127,128, + 31,0,2,12,12,6,2,0,192,192,192,0,0,0,0,0, + 0,192,192,192,3,15,15,6,1,253,96,96,96,0,0,0, + 0,0,0,96,96,96,192,192,192,14,12,24,24,5,1,0, + 12,0,60,1,224,7,0,56,0,224,0,224,0,60,0,7, + 0,1,224,0,60,0,12,14,5,10,24,5,4,255,252,0, + 0,0,0,0,0,255,252,14,12,24,24,5,1,192,0,240, + 0,30,0,3,128,0,112,0,28,0,28,0,240,3,128,30, + 0,240,0,192,0,9,17,34,11,1,0,60,0,255,0,195, + 128,129,128,1,128,1,128,3,0,7,0,14,0,28,0,24, + 0,24,0,24,0,0,0,0,0,24,0,24,0,20,22,66, + 23,1,251,1,252,0,7,255,0,30,7,128,56,1,192,48, + 0,224,97,236,96,99,252,112,227,28,48,198,12,48,198,12, + 48,198,12,48,198,12,48,198,12,48,198,12,48,227,28,96, + 99,31,224,97,231,192,48,0,0,56,0,0,28,0,0,7, + 220,0,1,252,0,16,17,34,17,1,0,3,128,3,128,7, + 192,6,192,14,224,12,96,12,112,24,48,24,48,56,56,63, + 248,63,252,96,12,96,12,224,6,192,6,192,7,12,17,34, + 16,2,0,255,128,195,224,192,112,192,48,192,48,192,48,192, + 112,192,224,255,128,193,224,192,112,192,48,192,48,192,48,192, + 112,195,224,255,128,13,17,34,15,1,0,15,192,63,240,48, + 56,96,24,96,24,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,96,0,96,24,48,48,63,240,15,192,13,17,34, + 17,2,0,255,0,199,192,192,96,192,48,192,48,192,24,192, + 24,192,24,192,24,192,24,192,24,192,24,192,48,192,48,192, + 224,199,192,255,0,11,17,34,14,2,0,255,224,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,255,192,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,255,224,10,17,34, + 13,2,0,255,192,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,255,128,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,14,17,34,17,1,0,7,224,31,248,48, + 28,96,12,96,0,192,0,192,0,192,0,192,252,192,12,192, + 12,224,12,96,12,112,12,56,12,31,252,7,248,12,17,34, + 16,2,0,192,48,192,48,192,48,192,48,192,48,192,48,192, + 48,192,48,255,240,192,48,192,48,192,48,192,48,192,48,192, + 48,192,48,192,48,2,17,17,6,2,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,10,17,34,13, + 1,0,0,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,192,192,225,128, + 127,128,62,0,12,17,34,15,2,0,192,96,192,192,193,128, + 195,0,199,0,206,0,220,0,248,0,220,0,222,0,206,0, + 199,0,195,128,193,192,192,224,192,224,192,112,10,17,34,12, + 2,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 255,192,255,192,17,17,51,21,2,0,240,7,128,240,7,128, + 240,7,128,216,13,128,216,13,128,220,29,128,204,25,128,204, + 25,128,206,57,128,198,49,128,198,49,128,195,97,128,195,97, + 128,195,97,128,193,193,128,193,193,128,193,193,128,13,17,34, + 17,2,0,224,24,240,24,248,24,248,24,220,24,220,24,206, + 24,198,24,199,24,195,24,195,152,193,216,193,216,192,248,192, + 248,192,120,192,56,15,17,34,17,1,0,7,192,30,240,48, + 24,96,12,96,12,192,6,192,6,192,6,192,6,192,6,192, + 6,224,14,96,12,96,12,48,24,30,240,7,192,11,17,34, + 14,2,0,255,0,199,192,192,224,192,96,192,96,192,96,192, + 224,193,192,255,128,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,16,17,34,18,1,0,7,192,30,240,48, + 24,96,12,96,12,192,6,192,6,192,6,192,6,192,6,192, + 6,224,14,96,12,96,12,48,24,30,248,7,255,11,17,34, + 15,2,0,255,0,199,192,192,224,192,96,192,96,192,96,192, + 96,193,192,255,0,193,192,192,192,192,192,192,224,192,96,192, + 96,192,96,192,96,12,17,34,15,1,0,31,128,63,224,96, + 112,192,48,192,0,224,0,240,0,127,128,63,224,3,240,0, + 112,0,48,192,48,192,48,96,112,123,224,31,128,13,17,34, + 15,1,0,255,248,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,13,17,34,17,2,0,192,24,192,24,192, + 24,192,24,192,24,192,24,192,24,192,24,192,24,192,24,192, + 24,192,24,192,24,96,56,96,48,61,224,31,192,14,17,34, + 15,1,0,192,28,192,24,224,56,96,48,96,48,112,112,48, + 96,48,96,56,224,24,192,24,192,29,192,13,128,13,128,15, + 128,7,0,7,0,22,17,51,22,0,0,224,56,28,96,120, + 28,96,120,24,112,120,24,48,108,56,48,204,48,48,204,48, + 24,206,48,24,198,112,25,134,96,29,134,96,13,131,96,13, + 131,192,15,3,192,7,3,192,7,1,192,6,1,128,14,17, + 34,16,1,0,112,24,112,56,56,48,28,96,28,224,14,192, + 7,128,7,128,7,128,7,192,13,192,28,224,24,112,48,112, + 112,56,96,28,224,28,14,17,34,15,0,0,224,28,112,24, + 112,56,56,48,24,112,28,96,12,192,14,192,7,128,3,128, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,12,17, + 34,14,1,0,127,240,0,48,0,112,0,224,1,192,1,192, + 3,128,7,0,7,0,14,0,28,0,60,0,56,0,112,0, + 240,0,224,0,255,240,4,22,22,9,2,251,240,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,240,7,18,18,9,1,255,192,192,64,96,96,32,48,48, + 16,16,24,24,8,12,12,4,4,6,4,22,22,10,3,251, + 240,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,240,11,14,28,23,6,0,4,0,14,0, + 10,0,27,0,17,0,17,0,49,128,32,128,32,128,96,192, + 64,64,192,96,128,32,128,32,12,1,2,12,0,253,255,240, + 4,4,4,5,0,14,192,96,96,48,10,12,24,13,1,0, + 31,0,123,128,96,192,96,192,0,192,63,192,120,192,224,192, + 192,192,193,192,119,192,60,192,11,17,34,14,2,0,192,0, + 192,0,192,0,192,0,192,0,207,0,223,192,224,192,224,224, + 192,96,192,96,192,96,192,96,224,224,224,192,251,128,207,0, + 10,12,24,12,1,0,31,0,127,128,97,192,192,192,192,0, + 192,0,192,0,192,0,192,192,97,192,127,128,31,0,11,17, + 34,14,1,0,0,96,0,96,0,96,0,96,0,96,30,96, + 127,224,97,224,224,224,192,96,192,96,192,96,192,96,224,224, + 96,224,59,224,30,96,10,12,24,13,1,0,31,0,127,128, + 96,192,192,192,192,192,255,192,192,0,192,0,192,192,96,192, + 63,128,31,0,7,17,17,9,1,0,30,62,48,48,48,254, + 48,48,48,48,48,48,48,48,48,48,48,11,17,34,14,1, + 251,31,96,63,224,96,224,224,224,192,96,192,96,192,96,192, + 96,224,224,96,224,123,224,30,96,0,96,96,224,96,192,63, + 128,31,0,10,17,34,14,2,0,192,0,192,0,192,0,192, + 0,192,0,207,0,251,128,225,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,2,17,17,5,1, + 0,192,192,0,0,0,192,192,192,192,192,192,192,192,192,192, + 192,192,3,22,22,7,2,251,96,96,0,0,0,96,96,96, + 96,96,96,96,96,96,96,96,96,96,96,96,224,192,9,17, + 34,12,2,0,192,0,192,0,192,0,192,0,192,0,195,128, + 199,0,206,0,220,0,216,0,248,0,216,0,204,0,206,0, + 199,0,195,0,195,128,2,17,17,6,2,0,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,18,12,36, + 21,2,0,207,31,0,255,191,128,225,225,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,10,12,24,14,2,0,223,0,255, + 128,225,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,11,12,24,13,1,0,31,0,63,192,96, + 192,224,224,192,96,192,96,192,96,192,96,224,224,96,192,63, + 192,31,0,11,17,34,14,2,251,207,0,251,192,224,192,224, + 224,192,96,192,96,192,96,192,96,224,224,224,192,251,192,207, + 0,192,0,192,0,192,0,192,0,192,0,11,17,34,14,1, + 251,30,96,123,224,96,224,224,224,192,96,192,96,192,96,192, + 96,224,224,96,224,123,224,30,96,0,96,0,96,0,96,0, + 96,0,96,7,12,12,9,2,0,222,252,224,192,192,192,192, + 192,192,192,192,192,9,12,24,11,1,0,62,0,127,128,193, + 128,192,0,224,0,126,0,31,128,3,128,193,128,193,128,119, + 0,62,0,7,15,15,9,1,0,48,48,48,254,48,48,48, + 48,48,48,48,48,48,58,30,10,12,24,14,2,0,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 225,192,127,192,60,192,11,12,24,12,1,0,192,96,192,192, + 224,192,97,192,97,128,49,128,51,0,59,0,27,0,30,0, + 30,0,12,0,18,12,36,19,0,0,224,224,192,96,224,192, + 97,161,192,113,177,128,49,177,128,51,49,128,51,27,0,27, + 27,0,30,27,0,30,14,0,14,14,0,12,14,0,11,12, + 24,13,1,0,224,192,113,192,49,128,59,0,31,0,14,0, + 30,0,31,0,51,128,113,128,97,192,192,224,11,17,34,12, + 1,251,192,96,192,192,224,192,97,192,113,128,49,128,51,128, + 59,0,27,0,30,0,14,0,14,0,12,0,12,0,28,0, + 24,0,24,0,8,12,12,10,1,0,255,3,7,14,12,24, + 56,48,96,224,192,255,8,23,23,11,2,251,15,14,24,24, + 24,24,24,24,24,56,112,224,240,48,24,24,24,24,24,24, + 24,12,15,1,25,25,8,4,250,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,8,23,23,11,2,251,224,112,56,24,24,24,24,24, + 24,28,14,7,14,28,24,24,24,24,24,24,24,48,240,12, + 2,4,12,0,5,62,112,231,224,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,0,0,0,7,0,0, + 2,17,17,8,3,251,192,192,0,0,0,192,192,192,192,192, + 192,192,192,192,192,192,192,10,18,36,14,2,253,1,0,1, + 0,1,0,31,0,127,128,98,192,198,192,196,0,196,0,204, + 0,200,0,200,192,121,192,127,128,31,0,32,0,32,0,32, + 0,11,17,34,13,1,0,15,128,29,192,48,96,48,0,48, + 0,48,0,254,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,255,224,11,14,28,13,1,3,0, + 32,128,32,95,64,123,128,96,128,64,64,64,64,64,64,64, + 64,96,128,113,128,95,64,128,32,0,32,12,17,34,14,1, + 0,192,48,96,96,96,96,48,224,48,192,249,240,25,128,15, + 128,15,0,255,240,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,1,22,22,8,4,251,128,128,128,128,128,128,128, + 128,128,0,0,0,0,128,128,128,128,128,128,128,128,128,8, + 21,21,10,1,252,62,126,192,192,192,112,120,62,119,227,195, + 199,238,124,30,7,3,3,3,142,252,7,2,2,7,0,15, + 198,198,17,17,51,19,1,0,3,224,0,15,120,0,56,14, + 0,35,242,0,71,57,0,78,25,0,140,0,128,140,0,128, + 140,0,128,140,0,128,140,24,128,70,57,0,67,241,0,32, + 2,0,48,6,0,12,24,0,3,224,0,9,11,22,9,0, + 6,62,0,127,0,97,0,1,0,63,0,113,0,65,0,67, + 0,61,0,0,0,255,128,9,9,18,13,2,1,49,128,51, + 0,99,0,230,0,204,0,230,0,99,0,51,0,17,128,12, + 5,10,14,1,5,255,240,0,16,0,16,0,16,0,16,255, + 17,17,51,19,1,0,3,224,0,15,120,0,56,14,0,39, + 242,0,70,57,0,70,25,0,134,24,128,135,224,128,134,48, + 128,134,16,128,134,24,128,70,25,0,70,25,0,32,2,0, + 56,14,0,15,120,0,3,224,0,7,1,1,7,0,15,254, + 5,6,6,7,1,11,112,216,136,136,216,112,14,14,28,24, + 5,0,2,0,2,0,2,0,2,0,255,252,2,0,2,0, + 2,0,2,0,2,0,0,0,0,0,0,0,255,252,7,9, + 9,9,1,8,60,126,198,6,12,24,48,224,254,7,9,9, + 9,1,8,60,126,198,14,24,14,6,206,124,3,4,4,5, + 2,14,96,96,192,128,255,10,21,42,13,1,252,31,192,60, + 128,124,128,252,128,252,128,252,128,124,128,124,128,60,128,4, + 128,4,128,4,128,4,128,4,128,4,128,4,128,4,128,4, + 128,4,128,4,128,4,128,2,3,3,6,2,7,192,192,192, + 6,5,5,6,1,250,64,120,12,12,252,3,9,9,7,2, + 8,96,224,32,32,32,32,32,32,32,8,11,11,10,1,6, + 60,126,195,193,193,193,195,98,124,0,255,9,9,18,13,2, + 1,204,0,102,0,99,0,51,0,57,128,51,0,99,0,102, + 0,204,0,15,17,34,18,2,0,96,48,224,32,32,96,32, + 64,32,192,32,128,33,0,35,0,34,24,6,24,4,40,12, + 72,8,200,16,254,48,8,32,8,96,8,16,17,34,19,2, + 0,96,16,224,48,32,32,32,96,32,192,32,128,33,128,33, + 0,35,62,6,119,4,99,12,3,8,6,24,28,16,48,32, + 96,96,127,17,17,51,19,1,0,124,4,0,254,12,0,6, + 8,0,24,16,0,30,48,0,6,32,0,198,96,0,206,64, + 0,124,198,0,1,134,0,1,10,0,3,26,0,2,50,0, + 6,63,128,4,2,0,8,2,0,24,2,0,10,17,34,12, + 1,251,6,0,6,0,0,0,0,0,6,0,6,0,6,0, + 14,0,28,0,112,0,96,0,192,0,192,0,192,192,241,192, + 127,128,31,0,16,23,46,17,1,0,14,0,6,0,3,0, + 1,0,0,0,0,0,3,128,3,128,7,192,6,192,14,224, + 12,96,12,112,24,48,24,48,56,56,63,248,63,252,96,12, + 96,12,224,6,192,6,192,7,16,23,46,17,1,0,0,96, + 0,192,0,128,1,0,0,0,0,0,3,128,3,128,7,192, + 6,192,14,224,12,96,12,112,24,48,24,48,56,56,63,248, + 63,252,96,12,96,12,224,6,192,6,192,7,16,23,46,17, + 1,0,3,128,3,192,6,192,4,96,0,0,0,0,3,128, + 3,128,7,192,6,192,14,224,12,96,12,112,24,48,24,48, + 56,56,63,248,63,252,96,12,96,12,224,6,192,6,192,7, + 16,22,44,17,1,0,7,96,13,192,0,0,0,0,0,0, + 3,128,3,128,7,192,6,192,14,224,12,96,12,112,24,48, + 24,48,56,56,63,248,63,252,96,12,96,12,224,6,192,6, + 192,7,16,22,44,18,1,0,6,48,6,48,0,0,0,0, + 0,0,1,192,3,192,3,224,7,96,6,96,6,112,12,48, + 12,56,28,24,24,28,63,252,63,252,48,6,96,6,96,7, + 224,3,192,3,16,24,48,17,1,0,3,128,6,192,4,64, + 4,64,3,128,0,0,0,0,3,128,3,128,7,192,6,192, + 6,224,12,96,12,112,28,48,24,48,24,24,63,248,63,252, + 96,12,96,12,224,6,192,6,192,7,21,17,51,23,1,0, + 0,255,248,0,240,0,1,240,0,1,176,0,3,176,0,3, + 48,0,7,48,0,6,48,0,14,63,248,12,48,0,28,48, + 0,31,240,0,56,48,0,48,48,0,112,48,0,96,48,0, + 192,63,248,13,22,44,15,1,251,15,192,63,240,48,56,96, + 24,96,24,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,96,0,96,24,112,48,63,240,15,192,2,0,3,192,0, + 224,0,96,7,224,11,23,46,14,2,0,48,0,24,0,12, + 0,4,0,0,0,0,0,255,224,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,255,192,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,255,224,11,23,46,14,2,0,3, + 0,6,0,6,0,12,0,0,0,0,0,255,224,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,255,192,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,255,224,11,23,46, + 14,2,0,30,0,30,0,51,0,33,0,0,0,0,0,255, + 224,192,0,192,0,192,0,192,0,192,0,192,0,192,0,255, + 192,192,0,192,0,192,0,192,0,192,0,192,0,192,0,255, + 224,11,22,44,14,2,0,51,0,51,0,0,0,0,0,0, + 0,255,224,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,255,192,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,255,224,4,23,23,6,0,0,192,96,48,16,0,0,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 4,23,23,6,2,0,48,96,64,192,0,0,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,6,23,23, + 6,0,0,56,120,76,196,0,0,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,7,22,22,7,0,0, + 198,198,0,0,0,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,15,17,34,17,0,0,63,192,49,240, + 48,56,48,12,48,12,48,6,48,6,48,6,255,6,48,6, + 48,6,48,6,48,12,48,28,48,56,49,240,63,192,13,22, + 44,17,2,0,14,192,31,128,0,0,0,0,0,0,224,24, + 240,24,248,24,248,24,220,24,220,24,206,24,198,24,199,24, + 195,24,195,152,193,216,193,216,192,248,192,248,192,120,192,56, + 15,24,48,17,1,0,14,0,6,0,3,0,1,0,1,128, + 0,0,0,0,7,192,30,240,48,24,96,12,96,12,192,6, + 192,6,192,6,192,6,192,6,192,6,224,14,96,12,96,12, + 48,24,30,240,7,192,15,24,48,17,1,0,0,224,0,192, + 1,128,1,0,3,0,0,0,0,0,7,192,30,240,48,24, + 96,12,96,12,192,6,192,6,192,6,192,6,192,6,192,6, + 224,14,96,12,96,12,48,24,30,240,7,192,15,24,48,17, + 1,0,3,128,3,128,6,192,4,64,12,32,0,0,0,0, + 7,192,30,240,48,24,96,12,96,12,192,6,192,6,192,6, + 192,6,192,6,192,6,224,14,96,12,96,12,48,24,30,240, + 7,192,15,22,44,17,1,0,7,96,13,192,0,0,0,0, + 0,0,7,192,30,240,48,24,96,12,96,12,192,6,192,6, + 192,6,192,6,192,6,192,6,224,14,96,12,112,28,56,56, + 31,240,7,192,15,22,44,17,1,0,6,96,6,96,0,0, + 0,0,0,0,7,192,30,240,48,24,96,12,96,12,192,6, + 192,6,192,6,192,6,192,6,192,6,224,14,96,12,96,12, + 48,24,30,240,7,192,13,12,24,23,5,1,192,24,96,48, + 48,96,24,192,13,128,7,0,7,0,13,128,24,192,48,96, + 96,48,192,24,15,21,42,17,1,254,0,4,0,14,7,236, + 30,248,48,60,96,60,96,110,192,230,192,198,193,198,195,134, + 195,6,199,6,238,14,108,12,124,12,120,24,62,240,111,192, + 224,0,64,0,13,24,48,17,2,0,28,0,12,0,6,0, + 2,0,1,0,0,0,0,0,192,24,192,24,192,24,192,24, + 192,24,192,24,192,24,192,24,192,24,192,24,192,24,192,24, + 224,24,96,56,112,112,63,224,31,192,13,24,48,17,2,0, + 1,192,1,128,3,0,2,0,6,0,0,0,0,0,192,24, + 192,24,192,24,192,24,192,24,192,24,192,24,192,24,192,24, + 192,24,192,24,192,24,224,24,96,56,112,112,63,224,31,192, + 13,24,48,17,2,0,7,0,7,0,13,128,8,128,24,64, + 0,0,0,0,192,24,192,24,192,24,192,24,192,24,192,24, + 192,24,192,24,192,24,192,24,192,24,192,24,224,24,96,56, + 112,112,63,224,31,192,13,22,44,17,2,0,12,192,12,192, + 0,0,0,0,0,0,192,24,192,24,192,24,192,24,192,24, + 192,24,192,24,192,24,192,24,192,24,192,24,192,24,192,24, + 96,56,96,48,61,224,31,192,14,23,46,15,0,0,0,192, + 1,128,1,128,3,0,0,0,0,0,224,28,112,24,112,56, + 56,48,24,112,28,96,12,192,14,192,7,128,3,128,3,0, + 3,0,3,0,3,0,3,0,3,0,3,0,11,17,34,14, + 2,0,192,0,192,0,192,0,192,0,255,128,193,192,192,224, + 192,96,192,96,192,96,193,192,255,128,192,0,192,0,192,0, + 192,0,192,0,12,17,34,13,1,0,31,0,127,128,224,192, + 192,192,193,192,195,128,199,0,198,0,198,0,195,128,193,224, + 192,112,192,48,192,48,204,48,207,96,195,192,10,18,36,13, + 1,0,24,0,12,0,4,0,6,0,0,0,0,0,31,0, + 123,128,96,192,96,192,0,192,63,192,120,192,224,192,192,192, + 193,192,119,192,60,192,10,19,38,13,1,0,3,0,6,0, + 6,0,12,0,8,0,0,0,0,0,31,0,123,128,96,192, + 96,192,0,192,63,192,120,192,224,192,192,192,193,192,119,192, + 60,192,10,19,38,13,1,0,14,0,14,0,27,0,51,0, + 33,128,0,0,0,0,31,0,123,128,96,192,96,192,0,192, + 63,192,120,192,224,192,192,192,193,192,119,192,60,192,10,17, + 34,13,1,0,29,128,63,0,0,0,0,0,0,0,31,0, + 123,128,96,192,0,192,7,192,63,192,112,192,192,192,193,192, + 193,192,119,192,60,192,10,17,34,13,1,0,49,128,49,128, + 0,0,0,0,0,0,31,0,123,128,96,192,96,192,0,192, + 63,192,120,192,224,192,192,192,193,192,119,192,60,192,10,20, + 40,13,1,0,14,0,27,0,17,0,17,0,27,0,14,0, + 0,0,0,0,31,0,123,128,96,192,96,192,0,192,63,192, + 120,192,224,192,192,192,193,192,119,192,62,192,18,12,36,20, + 1,0,30,31,0,127,191,128,97,225,128,0,224,192,0,192, + 192,63,255,192,120,192,0,224,192,0,192,224,192,193,225,128, + 127,63,128,62,31,0,10,17,34,12,1,251,31,0,127,128, + 97,192,192,192,192,0,192,0,192,0,192,0,192,192,97,192, + 127,128,31,0,8,0,15,0,3,128,1,128,31,0,10,19, + 38,13,1,0,48,0,24,0,8,0,12,0,6,0,0,0, + 0,0,31,0,127,128,96,192,192,192,192,192,255,192,192,0, + 192,0,192,192,96,192,63,128,31,0,10,19,38,13,1,0, + 3,0,7,0,6,0,12,0,8,0,0,0,0,0,31,0, + 127,128,96,192,192,192,192,192,255,192,192,0,192,0,192,192, + 96,192,63,128,31,0,10,19,38,13,1,0,12,0,30,0, + 26,0,51,0,33,0,0,0,0,0,31,0,127,128,96,192, + 192,192,192,192,255,192,192,0,192,0,192,192,96,192,63,128, + 31,0,11,17,34,13,1,0,49,128,49,128,0,0,0,0, + 0,0,31,0,59,192,96,192,224,96,192,96,255,224,192,0, + 192,0,192,96,96,192,59,192,31,0,4,18,18,6,0,0, + 192,96,48,16,0,0,48,48,48,48,48,48,48,48,48,48, + 48,48,4,18,18,6,2,0,48,96,192,128,0,0,192,192, + 192,192,192,192,192,192,192,192,192,192,6,18,18,6,0,0, + 120,120,204,132,0,0,48,48,48,48,48,48,48,48,48,48, + 48,48,6,17,17,5,255,0,204,204,0,0,0,48,48,48, + 48,48,48,48,48,48,48,48,48,11,17,34,13,1,0,97, + 128,63,0,30,0,119,0,3,128,31,192,127,192,96,224,224, + 96,192,96,192,96,192,96,192,96,224,96,96,192,63,192,31, + 0,10,17,34,14,2,0,25,0,63,0,0,0,0,0,0, + 0,223,0,255,128,225,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,11,19,38,13,1,0,56, + 0,24,0,12,0,4,0,2,0,0,0,0,0,31,0,63, + 192,96,192,224,224,192,96,192,96,192,96,192,96,224,224,96, + 192,63,192,31,0,11,19,38,13,1,0,3,128,3,0,6, + 0,4,0,12,0,0,0,0,0,31,0,63,192,96,192,224, + 224,192,96,192,96,192,96,192,96,224,224,96,192,63,192,31, + 0,11,19,38,13,1,0,14,0,14,0,27,0,17,0,49, + 128,0,0,0,0,31,0,63,192,96,192,224,224,192,96,192, + 96,192,96,192,96,224,224,96,192,63,192,31,0,11,17,34, + 13,1,0,29,128,63,0,0,0,0,0,0,0,31,0,63, + 192,96,192,224,224,192,96,192,96,192,96,192,96,224,224,96, + 192,63,192,31,0,11,17,34,13,1,0,49,128,49,128,0, + 0,0,0,0,0,31,0,63,192,96,192,224,224,192,96,192, + 96,192,96,192,96,224,224,96,192,63,192,31,0,14,10,20, + 24,5,2,3,0,3,0,3,0,0,0,0,0,255,252,0, + 0,3,0,3,0,3,0,11,15,30,13,1,254,0,32,0, + 96,31,192,63,192,97,192,227,224,194,96,198,96,204,96,216, + 96,248,224,112,192,123,192,95,0,192,0,10,19,38,14,2, + 0,48,0,24,0,24,0,12,0,4,0,0,0,0,0,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,225,192,119,192,60,192,10,19,38,14,2,0,3,0,6, + 0,6,0,12,0,8,0,0,0,0,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,225,192,119, + 192,60,192,10,19,38,14,2,0,12,0,30,0,30,0,51, + 0,33,0,0,0,0,0,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,225,192,119,192,60,192,10, + 17,34,14,2,0,51,0,51,0,0,0,0,0,0,0,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,225,192,127,192,60,192,11,23,46,12,1,251,3,0,3, + 0,6,0,12,0,0,0,0,0,192,96,192,192,224,192,97, + 192,113,128,49,128,51,128,59,0,27,0,30,0,14,0,14, + 0,12,0,12,0,220,0,248,0,112,0,11,22,44,14,2, + 251,192,0,192,0,192,0,192,0,192,0,207,0,251,192,224, + 192,224,224,192,96,192,96,192,96,192,96,224,224,224,192,251, + 192,207,0,192,0,192,0,192,0,192,0,192,0,11,22,44, + 13,1,251,49,128,49,128,0,0,0,0,0,0,192,96,224, + 96,96,224,96,192,113,192,49,128,57,128,27,128,27,0,31, + 0,14,0,14,0,14,0,12,0,12,0,28,0,24,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--23-230-72-72-P-109-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 17 + Calculated Max Values w=14 h=18 x= 5 y= 8 dx=24 dy= 0 ascent=17 len=34 + Font Bounding box w=31 h=30 x=-2 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =17 descent= 0 + X Font ascent =17 descent= 0 + Max Font ascent =17 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur17n[510] U8G_SECTION(".progmem.u8g_font_fur17n") = { + 0,31,30,254,250,17,0,0,0,0,42,57,0,17,253,17, + 0,9,9,18,15,3,8,34,0,54,0,22,0,28,0,255, + 128,156,128,20,0,54,0,34,0,14,14,28,24,5,0,2, + 0,2,0,2,0,2,0,2,0,2,0,255,252,2,0,2, + 0,2,0,2,0,2,0,2,0,2,0,4,6,6,6,1, + 253,112,112,96,96,192,192,6,1,1,8,1,5,252,2,3, + 3,6,2,0,192,192,192,7,18,18,9,1,255,6,6,4, + 12,12,8,8,24,24,16,48,48,32,32,96,96,64,192,10, + 17,34,13,1,0,30,0,63,128,97,128,96,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,97, + 192,97,128,63,128,30,0,5,17,17,13,3,0,56,120,248, + 216,24,24,24,24,24,24,24,24,24,24,24,24,24,10,17, + 34,13,1,0,30,0,127,128,97,128,224,192,224,192,0,192, + 1,192,3,128,3,128,7,0,14,0,28,0,56,0,112,0, + 96,0,224,0,255,192,10,17,34,13,1,0,31,0,127,128, + 96,192,224,192,0,192,0,192,3,128,14,0,7,128,1,192, + 0,192,0,192,192,192,224,192,97,192,127,128,30,0,11,17, + 34,13,1,0,3,128,3,128,7,128,13,128,13,128,25,128, + 57,128,49,128,97,128,97,128,193,128,255,224,255,224,1,128, + 1,128,1,128,1,128,10,17,34,13,1,0,127,128,96,0, + 96,0,96,0,96,0,111,0,127,128,97,128,64,192,0,192, + 0,192,0,192,0,192,192,192,225,128,127,0,30,0,11,17, + 34,13,1,0,31,0,59,128,96,192,224,192,192,0,192,0, + 207,0,223,192,241,192,224,224,192,96,192,96,192,96,192,96, + 96,192,59,192,31,0,10,17,34,13,1,0,255,192,0,192, + 0,192,1,128,1,128,3,128,3,0,3,0,7,0,6,0, + 6,0,14,0,12,0,12,0,28,0,24,0,56,0,11,17, + 34,13,1,0,31,0,59,128,96,192,96,192,96,192,96,192, + 49,128,31,0,59,128,96,192,192,96,192,96,192,96,192,96, + 96,224,123,192,31,0,11,17,34,13,1,0,31,0,127,192, + 96,192,192,224,192,96,192,96,192,224,224,224,113,224,63,96, + 0,96,0,96,0,224,96,192,97,192,127,128,31,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--23-230-72-72-P-109-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=22 h=25 x= 6 y=14 dx=24 dy= 0 ascent=19 len=66 + Font Bounding box w=31 h=30 x=-2 y=-6 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =19 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur17r[3146] U8G_SECTION(".progmem.u8g_font_fur17r") = { + 0,31,30,254,250,17,4,5,8,170,32,127,251,19,250,17, + 251,0,0,0,7,0,0,2,17,17,8,3,0,192,192,192, + 192,192,192,192,192,192,192,192,192,192,0,0,192,192,7,7, + 7,10,2,10,206,206,198,198,196,196,196,15,17,34,17,1, + 0,1,24,3,24,3,24,3,48,6,48,63,254,6,32,4, + 96,12,96,12,64,255,248,24,192,24,128,17,128,49,128,49, + 128,49,0,11,21,42,13,1,254,4,0,4,0,63,0,127, + 128,196,192,196,192,196,0,196,0,244,0,127,0,63,192,5, + 224,4,224,4,96,196,96,196,96,228,96,127,192,63,128,4, + 0,4,0,19,17,51,21,1,0,60,2,0,126,4,0,227, + 12,0,195,8,0,195,24,0,195,16,0,195,48,0,102,96, + 0,62,71,128,0,207,192,0,152,96,1,152,96,1,24,96, + 2,24,96,6,24,96,4,15,192,12,7,128,15,17,34,17, + 1,0,15,0,63,128,48,192,48,192,49,192,59,128,31,0, + 28,24,118,24,103,24,227,152,193,216,192,240,224,112,96,120, + 123,252,31,142,2,7,7,8,3,10,192,192,192,192,192,192, + 64,4,20,20,8,2,253,48,48,96,96,96,224,192,192,192, + 192,192,192,192,192,224,96,96,96,48,48,4,20,20,8,2, + 253,192,64,96,96,96,48,48,48,48,48,48,48,48,48,48, + 96,96,96,64,192,9,9,18,15,3,8,34,0,54,0,22, + 0,28,0,255,128,156,128,20,0,54,0,34,0,14,14,28, + 24,5,0,2,0,2,0,2,0,2,0,2,0,2,0,255, + 252,2,0,2,0,2,0,2,0,2,0,2,0,2,0,4, + 6,6,6,1,253,112,112,96,96,192,192,6,1,1,8,1, + 5,252,2,3,3,6,2,0,192,192,192,7,18,18,9,1, + 255,6,6,4,12,12,8,8,24,24,16,48,48,32,32,96, + 96,64,192,10,17,34,13,1,0,30,0,63,128,97,128,96, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,97,192,97,128,63,128,30,0,5,17,17,13,3, + 0,56,120,248,216,24,24,24,24,24,24,24,24,24,24,24, + 24,24,10,17,34,13,1,0,30,0,127,128,97,128,224,192, + 224,192,0,192,1,192,3,128,3,128,7,0,14,0,28,0, + 56,0,112,0,96,0,224,0,255,192,10,17,34,13,1,0, + 31,0,127,128,96,192,224,192,0,192,0,192,3,128,14,0, + 7,128,1,192,0,192,0,192,192,192,224,192,97,192,127,128, + 30,0,11,17,34,13,1,0,3,128,3,128,7,128,13,128, + 13,128,25,128,57,128,49,128,97,128,97,128,193,128,255,224, + 255,224,1,128,1,128,1,128,1,128,10,17,34,13,1,0, + 127,128,96,0,96,0,96,0,96,0,111,0,127,128,97,128, + 64,192,0,192,0,192,0,192,0,192,192,192,225,128,127,0, + 30,0,11,17,34,13,1,0,31,0,59,128,96,192,224,192, + 192,0,192,0,207,0,223,192,241,192,224,224,192,96,192,96, + 192,96,192,96,96,192,59,192,31,0,10,17,34,13,1,0, + 255,192,0,192,0,192,1,128,1,128,3,128,3,0,3,0, + 7,0,6,0,6,0,14,0,12,0,12,0,28,0,24,0, + 56,0,11,17,34,13,1,0,31,0,59,128,96,192,96,192, + 96,192,96,192,49,128,31,0,59,128,96,192,192,96,192,96, + 192,96,192,96,96,224,123,192,31,0,11,17,34,13,1,0, + 31,0,127,192,96,192,192,224,192,96,192,96,192,224,224,224, + 113,224,63,96,0,96,0,96,0,224,96,192,97,192,127,128, + 31,0,2,12,12,6,2,0,192,192,192,0,0,0,0,0, + 0,192,192,192,3,15,15,6,1,253,96,96,96,0,0,0, + 0,0,0,96,96,96,192,192,192,14,12,24,24,5,1,0, + 12,0,60,1,224,7,0,56,0,224,0,224,0,60,0,7, + 0,1,224,0,60,0,12,14,5,10,24,5,4,255,252,0, + 0,0,0,0,0,255,252,14,12,24,24,5,1,192,0,240, + 0,30,0,3,128,0,112,0,28,0,28,0,240,3,128,30, + 0,240,0,192,0,9,17,34,11,1,0,60,0,255,0,195, + 128,129,128,1,128,1,128,3,0,7,0,14,0,28,0,24, + 0,24,0,24,0,0,0,0,0,24,0,24,0,20,22,66, + 23,1,251,1,252,0,7,255,0,30,7,128,56,1,192,48, + 0,224,97,236,96,99,252,112,227,28,48,198,12,48,198,12, + 48,198,12,48,198,12,48,198,12,48,198,12,48,227,28,96, + 99,31,224,97,231,192,48,0,0,56,0,0,28,0,0,7, + 220,0,1,252,0,16,17,34,17,1,0,3,128,3,128,7, + 192,6,192,14,224,12,96,12,112,24,48,24,48,56,56,63, + 248,63,252,96,12,96,12,224,6,192,6,192,7,12,17,34, + 16,2,0,255,128,195,224,192,112,192,48,192,48,192,48,192, + 112,192,224,255,128,193,224,192,112,192,48,192,48,192,48,192, + 112,195,224,255,128,13,17,34,15,1,0,15,192,63,240,48, + 56,96,24,96,24,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,96,0,96,24,48,48,63,240,15,192,13,17,34, + 17,2,0,255,0,199,192,192,96,192,48,192,48,192,24,192, + 24,192,24,192,24,192,24,192,24,192,24,192,48,192,48,192, + 224,199,192,255,0,11,17,34,14,2,0,255,224,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,255,192,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,255,224,10,17,34, + 13,2,0,255,192,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,255,128,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,14,17,34,17,1,0,7,224,31,248,48, + 28,96,12,96,0,192,0,192,0,192,0,192,252,192,12,192, + 12,224,12,96,12,112,12,56,12,31,252,7,248,12,17,34, + 16,2,0,192,48,192,48,192,48,192,48,192,48,192,48,192, + 48,192,48,255,240,192,48,192,48,192,48,192,48,192,48,192, + 48,192,48,192,48,2,17,17,6,2,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,10,17,34,13, + 1,0,0,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,192,192,225,128, + 127,128,62,0,12,17,34,15,2,0,192,96,192,192,193,128, + 195,0,199,0,206,0,220,0,248,0,220,0,222,0,206,0, + 199,0,195,128,193,192,192,224,192,224,192,112,10,17,34,12, + 2,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 255,192,255,192,17,17,51,21,2,0,240,7,128,240,7,128, + 240,7,128,216,13,128,216,13,128,220,29,128,204,25,128,204, + 25,128,206,57,128,198,49,128,198,49,128,195,97,128,195,97, + 128,195,97,128,193,193,128,193,193,128,193,193,128,13,17,34, + 17,2,0,224,24,240,24,248,24,248,24,220,24,220,24,206, + 24,198,24,199,24,195,24,195,152,193,216,193,216,192,248,192, + 248,192,120,192,56,15,17,34,17,1,0,7,192,30,240,48, + 24,96,12,96,12,192,6,192,6,192,6,192,6,192,6,192, + 6,224,14,96,12,96,12,48,24,30,240,7,192,11,17,34, + 14,2,0,255,0,199,192,192,224,192,96,192,96,192,96,192, + 224,193,192,255,128,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,16,17,34,18,1,0,7,192,30,240,48, + 24,96,12,96,12,192,6,192,6,192,6,192,6,192,6,192, + 6,224,14,96,12,96,12,48,24,30,248,7,255,11,17,34, + 15,2,0,255,0,199,192,192,224,192,96,192,96,192,96,192, + 96,193,192,255,0,193,192,192,192,192,192,192,224,192,96,192, + 96,192,96,192,96,12,17,34,15,1,0,31,128,63,224,96, + 112,192,48,192,0,224,0,240,0,127,128,63,224,3,240,0, + 112,0,48,192,48,192,48,96,112,123,224,31,128,13,17,34, + 15,1,0,255,248,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,13,17,34,17,2,0,192,24,192,24,192, + 24,192,24,192,24,192,24,192,24,192,24,192,24,192,24,192, + 24,192,24,192,24,96,56,96,48,61,224,31,192,14,17,34, + 15,1,0,192,28,192,24,224,56,96,48,96,48,112,112,48, + 96,48,96,56,224,24,192,24,192,29,192,13,128,13,128,15, + 128,7,0,7,0,22,17,51,22,0,0,224,56,28,96,120, + 28,96,120,24,112,120,24,48,108,56,48,204,48,48,204,48, + 24,206,48,24,198,112,25,134,96,29,134,96,13,131,96,13, + 131,192,15,3,192,7,3,192,7,1,192,6,1,128,14,17, + 34,16,1,0,112,24,112,56,56,48,28,96,28,224,14,192, + 7,128,7,128,7,128,7,192,13,192,28,224,24,112,48,112, + 112,56,96,28,224,28,14,17,34,15,0,0,224,28,112,24, + 112,56,56,48,24,112,28,96,12,192,14,192,7,128,3,128, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,12,17, + 34,14,1,0,127,240,0,48,0,112,0,224,1,192,1,192, + 3,128,7,0,7,0,14,0,28,0,60,0,56,0,112,0, + 240,0,224,0,255,240,4,22,22,9,2,251,240,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,240,7,18,18,9,1,255,192,192,64,96,96,32,48,48, + 16,16,24,24,8,12,12,4,4,6,4,22,22,10,3,251, + 240,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,240,11,14,28,23,6,0,4,0,14,0, + 10,0,27,0,17,0,17,0,49,128,32,128,32,128,96,192, + 64,64,192,96,128,32,128,32,12,1,2,12,0,253,255,240, + 4,4,4,5,0,14,192,96,96,48,10,12,24,13,1,0, + 31,0,123,128,96,192,96,192,0,192,63,192,120,192,224,192, + 192,192,193,192,119,192,60,192,11,17,34,14,2,0,192,0, + 192,0,192,0,192,0,192,0,207,0,223,192,224,192,224,224, + 192,96,192,96,192,96,192,96,224,224,224,192,251,128,207,0, + 10,12,24,12,1,0,31,0,127,128,97,192,192,192,192,0, + 192,0,192,0,192,0,192,192,97,192,127,128,31,0,11,17, + 34,14,1,0,0,96,0,96,0,96,0,96,0,96,30,96, + 127,224,97,224,224,224,192,96,192,96,192,96,192,96,224,224, + 96,224,59,224,30,96,10,12,24,13,1,0,31,0,127,128, + 96,192,192,192,192,192,255,192,192,0,192,0,192,192,96,192, + 63,128,31,0,7,17,17,9,1,0,30,62,48,48,48,254, + 48,48,48,48,48,48,48,48,48,48,48,11,17,34,14,1, + 251,31,96,63,224,96,224,224,224,192,96,192,96,192,96,192, + 96,224,224,96,224,123,224,30,96,0,96,96,224,96,192,63, + 128,31,0,10,17,34,14,2,0,192,0,192,0,192,0,192, + 0,192,0,207,0,251,128,225,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,2,17,17,5,1, + 0,192,192,0,0,0,192,192,192,192,192,192,192,192,192,192, + 192,192,3,22,22,7,2,251,96,96,0,0,0,96,96,96, + 96,96,96,96,96,96,96,96,96,96,96,96,224,192,9,17, + 34,12,2,0,192,0,192,0,192,0,192,0,192,0,195,128, + 199,0,206,0,220,0,216,0,248,0,216,0,204,0,206,0, + 199,0,195,0,195,128,2,17,17,6,2,0,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,18,12,36, + 21,2,0,207,31,0,255,191,128,225,225,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,10,12,24,14,2,0,223,0,255, + 128,225,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,11,12,24,13,1,0,31,0,63,192,96, + 192,224,224,192,96,192,96,192,96,192,96,224,224,96,192,63, + 192,31,0,11,17,34,14,2,251,207,0,251,192,224,192,224, + 224,192,96,192,96,192,96,192,96,224,224,224,192,251,192,207, + 0,192,0,192,0,192,0,192,0,192,0,11,17,34,14,1, + 251,30,96,123,224,96,224,224,224,192,96,192,96,192,96,192, + 96,224,224,96,224,123,224,30,96,0,96,0,96,0,96,0, + 96,0,96,7,12,12,9,2,0,222,252,224,192,192,192,192, + 192,192,192,192,192,9,12,24,11,1,0,62,0,127,128,193, + 128,192,0,224,0,126,0,31,128,3,128,193,128,193,128,119, + 0,62,0,7,15,15,9,1,0,48,48,48,254,48,48,48, + 48,48,48,48,48,48,58,30,10,12,24,14,2,0,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 225,192,127,192,60,192,11,12,24,12,1,0,192,96,192,192, + 224,192,97,192,97,128,49,128,51,0,59,0,27,0,30,0, + 30,0,12,0,18,12,36,19,0,0,224,224,192,96,224,192, + 97,161,192,113,177,128,49,177,128,51,49,128,51,27,0,27, + 27,0,30,27,0,30,14,0,14,14,0,12,14,0,11,12, + 24,13,1,0,224,192,113,192,49,128,59,0,31,0,14,0, + 30,0,31,0,51,128,113,128,97,192,192,224,11,17,34,12, + 1,251,192,96,192,192,224,192,97,192,113,128,49,128,51,128, + 59,0,27,0,30,0,14,0,14,0,12,0,12,0,28,0, + 24,0,24,0,8,12,12,10,1,0,255,3,7,14,12,24, + 56,48,96,224,192,255,8,23,23,11,2,251,15,14,24,24, + 24,24,24,24,24,56,112,224,240,48,24,24,24,24,24,24, + 24,12,15,1,25,25,8,4,250,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,8,23,23,11,2,251,224,112,56,24,24,24,24,24, + 24,28,14,7,14,28,24,24,24,24,24,24,24,48,240,12, + 2,4,12,0,5,62,112,231,224,255}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--28-280-72-72-P-133-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 20, '1' Height: 20 + Calculated Max Values w=26 h=29 x= 7 y=17 dx=29 dy= 0 ascent=28 len=96 + Font Bounding box w=38 h=35 x=-2 y=-7 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =20 descent=-5 + X Font ascent =20 descent=-5 + Max Font ascent =28 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur20[8654] U8G_SECTION(".progmem.u8g_font_fur20") = { + 0,38,35,254,249,20,5,12,11,23,32,255,251,28,249,20, + 251,0,0,0,8,0,0,3,20,20,11,4,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,0,0,224,224, + 224,9,8,16,13,2,12,227,128,227,128,227,0,227,0,227, + 0,195,0,195,0,67,0,18,20,60,21,1,0,0,195,0, + 0,195,0,0,195,0,1,198,0,1,134,0,1,134,0,31, + 255,192,63,255,192,3,12,0,3,24,0,6,24,0,6,24, + 0,127,255,128,255,255,0,12,48,0,12,48,0,28,96,0, + 24,96,0,24,96,0,24,192,0,14,25,50,16,1,253,2, + 0,2,0,31,192,63,224,114,112,98,48,226,56,226,0,226, + 0,114,0,126,0,63,224,15,240,2,248,2,56,2,28,226, + 28,226,28,226,24,114,56,127,240,31,192,2,0,2,0,2, + 0,23,20,60,25,1,0,30,0,192,127,128,192,97,129,128, + 225,193,0,225,195,0,225,198,0,225,198,0,97,140,0,127, + 136,0,30,24,224,0,49,248,0,51,156,0,103,14,0,71, + 14,0,199,14,1,135,14,1,135,14,3,3,12,2,3,252, + 6,0,240,19,20,60,22,2,0,7,192,0,31,240,0,56, + 48,0,56,48,0,56,48,0,56,112,0,29,224,0,15,192, + 0,31,3,128,63,131,128,115,195,128,225,227,128,224,243,0, + 224,123,0,224,63,0,224,30,0,112,15,0,120,31,128,63, + 251,192,15,225,224,3,8,8,10,4,12,224,224,192,192,192, + 192,192,192,5,24,24,10,3,252,24,48,48,112,112,96,96, + 224,224,224,224,224,224,224,224,224,224,96,96,112,112,48,48, + 24,5,24,24,10,3,252,192,192,96,96,96,112,112,48,48, + 48,56,56,56,56,48,48,48,112,112,96,96,96,192,192,11, + 11,22,19,4,9,17,0,49,128,27,0,27,0,14,0,255, + 224,142,32,27,0,27,0,49,128,17,0,17,16,48,29,6, + 0,1,128,0,1,128,0,1,128,0,1,128,0,1,128,0, + 1,128,0,1,128,0,255,255,128,255,255,128,1,128,0,1, + 128,0,1,128,0,1,128,0,1,128,0,1,128,0,1,128, + 0,5,7,7,8,1,253,56,56,112,112,96,96,224,7,2, + 2,9,1,6,254,254,3,3,3,8,3,0,224,224,224,8, + 21,21,11,2,255,3,6,6,6,4,12,12,12,24,24,24, + 48,48,48,96,96,96,64,192,192,192,13,20,40,16,1,0, + 15,128,63,192,112,224,96,112,96,112,224,48,224,48,224,56, + 224,56,224,56,224,56,224,56,224,56,224,48,224,48,96,112, + 112,112,48,224,63,192,15,128,7,20,20,16,4,0,30,62, + 126,254,206,14,14,14,14,14,14,14,14,14,14,14,14,14, + 14,14,12,20,40,16,2,0,31,128,63,192,112,96,112,112, + 224,112,0,112,0,112,0,112,0,224,1,224,3,192,3,128, + 7,0,14,0,28,0,60,0,120,0,240,0,255,240,255,240, + 13,20,40,16,1,0,15,128,63,224,112,112,112,48,224,56, + 0,56,0,48,0,224,7,192,7,192,0,224,0,112,0,56, + 0,56,224,56,224,56,224,56,112,112,63,224,31,128,14,20, + 40,16,1,0,0,240,1,240,1,240,3,240,7,112,6,112, + 14,112,28,112,24,112,56,112,112,112,96,112,224,112,255,252, + 255,252,0,112,0,112,0,112,0,112,0,112,13,20,40,16, + 1,0,255,224,255,224,224,0,224,0,224,0,224,0,224,0, + 239,128,255,224,240,112,224,112,224,48,0,56,0,56,0,56, + 224,48,224,112,112,224,127,192,31,128,13,20,40,16,1,0, + 15,192,63,224,120,112,112,48,224,56,224,0,224,0,231,192, + 255,224,248,240,224,56,224,56,224,56,224,56,224,56,224,56, + 96,48,48,112,63,224,15,128,12,20,40,16,2,0,255,240, + 255,240,0,112,0,112,0,96,0,224,0,224,1,192,1,192, + 1,128,3,128,3,128,3,0,7,0,7,0,14,0,14,0, + 14,0,28,0,28,0,13,20,40,16,1,0,15,128,63,224, + 112,112,224,48,224,56,224,56,96,48,112,112,31,192,31,192, + 56,96,96,48,224,56,224,56,224,56,224,56,224,56,112,112, + 63,224,15,128,13,20,40,16,1,0,31,192,63,224,112,112, + 224,56,224,56,224,56,224,56,224,56,224,56,112,120,63,248, + 31,56,0,56,0,56,0,56,96,48,96,112,112,224,63,192, + 31,128,3,14,14,8,3,0,224,224,224,0,0,0,0,0, + 0,0,0,224,224,224,4,17,17,8,2,253,112,112,112,0, + 0,0,0,0,0,0,112,112,96,224,192,192,192,17,14,42, + 29,6,1,0,1,128,0,15,128,0,124,0,1,224,0,15, + 0,0,120,0,0,224,0,0,240,0,0,62,0,0,7,128, + 0,0,240,0,0,62,0,0,7,128,0,0,128,17,7,21, + 29,6,5,255,255,128,255,255,128,0,0,0,0,0,0,0, + 0,0,255,255,128,255,255,128,17,14,42,29,6,1,192,0, + 0,248,0,0,31,0,0,3,192,0,0,120,0,0,15,0, + 0,3,128,0,7,128,0,62,0,0,240,0,7,128,0,62, + 0,0,240,0,0,128,0,0,12,20,40,15,1,0,31,0, + 63,192,127,224,224,240,64,112,0,112,0,112,0,96,0,192, + 3,128,7,0,14,0,14,0,14,0,14,0,0,0,0,0, + 14,0,14,0,14,0,25,24,96,28,2,252,0,127,0,0, + 3,255,224,0,15,129,248,0,30,0,60,0,56,0,14,0, + 48,0,6,0,112,125,199,0,96,255,199,0,225,195,195,0, + 227,131,195,0,227,129,195,128,227,129,195,128,227,129,195,128, + 227,129,195,0,227,129,195,0,225,131,199,0,113,199,206,0, + 112,252,252,0,56,56,48,0,60,0,0,0,30,0,0,0, + 15,128,64,0,3,255,192,0,0,127,128,0,19,20,60,21, + 1,0,0,224,0,1,240,0,1,240,0,3,176,0,3,184, + 0,3,56,0,7,28,0,7,28,0,14,14,0,14,14,0, + 30,15,0,28,7,0,28,7,0,63,255,128,63,255,128,112, + 1,192,112,1,192,224,0,224,224,0,224,224,0,224,15,20, + 40,19,2,0,255,224,255,248,224,120,224,28,224,28,224,28, + 224,28,224,24,224,56,255,224,255,240,224,28,224,12,224,14, + 224,14,224,14,224,30,224,60,255,248,255,224,16,20,40,19, + 2,0,7,240,31,252,60,14,48,6,112,7,96,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,96,0, + 96,7,112,6,56,14,31,252,7,240,16,20,40,20,2,0, + 255,192,255,240,224,120,224,28,224,14,224,14,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,14,224,14, + 224,28,224,120,255,240,255,192,13,20,40,17,2,0,255,248, + 255,248,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 255,240,255,240,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,255,248,255,248,12,20,40,16,2,0,255,240,255,240, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,255,224, + 255,224,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,18,20,60,22,2,0,3,248,0,15,254,0, + 30,15,128,56,3,128,112,1,192,96,0,0,224,0,0,224, + 0,0,224,0,0,224,63,192,224,63,192,224,1,192,224,1, + 192,224,1,192,112,1,192,112,1,192,56,1,192,30,7,192, + 15,255,192,3,254,0,15,20,40,19,2,0,224,14,224,14, + 224,14,224,14,224,14,224,14,224,14,224,14,224,14,255,254, + 255,254,224,14,224,14,224,14,224,14,224,14,224,14,224,14, + 224,14,224,14,3,20,20,7,2,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,12,20, + 40,16,2,0,0,112,0,112,0,112,0,112,0,112,0,112, + 0,112,0,112,0,112,0,112,0,112,0,112,0,112,0,112, + 0,112,224,112,224,96,113,224,63,192,31,128,15,20,40,18, + 2,0,224,60,224,120,224,240,224,224,225,192,227,128,231,0, + 238,0,252,0,254,0,238,0,239,0,231,128,227,192,225,224, + 224,240,224,120,224,56,224,60,224,30,12,20,40,15,2,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,255,240,255,240,21,20,60,25,2,0,248,0, + 248,248,0,248,248,1,248,252,1,248,252,1,184,236,3,184, + 238,3,184,238,3,56,230,7,56,231,6,56,227,14,56,227, + 142,56,227,140,56,225,156,56,225,220,56,225,216,56,224,248, + 56,224,240,56,224,112,56,224,112,56,16,20,40,20,2,0, + 240,7,248,7,248,7,252,7,252,7,238,7,238,7,231,7, + 231,135,227,135,227,199,225,199,224,231,224,231,224,119,224,119, + 224,63,224,63,224,31,224,31,18,20,60,22,2,0,3,240, + 0,15,252,0,62,31,0,56,7,0,112,3,128,96,1,128, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,96,1,192,112,3,128,112,3,128,56,7, + 0,30,30,0,15,252,0,3,240,0,14,20,40,17,2,0, + 255,192,255,240,224,120,224,56,224,28,224,28,224,28,224,56, + 224,120,255,240,255,192,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,20,20,60,22,2,0,3,240, + 0,15,252,0,62,31,0,56,7,0,112,3,128,96,1,128, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,96,1,192,112,3,128,112,3,128,56,7, + 0,30,30,0,15,255,240,3,255,240,14,20,40,17,2,0, + 255,192,255,240,224,120,224,56,224,28,224,28,224,28,224,56, + 224,112,255,224,255,224,224,112,224,56,224,56,224,56,224,24, + 224,24,224,24,224,28,224,28,15,20,40,19,2,0,15,192, + 63,240,120,120,96,28,224,28,224,0,224,0,120,0,127,0, + 63,240,7,252,0,60,0,14,0,14,224,14,224,14,224,14, + 120,60,63,248,15,192,16,20,40,18,1,0,255,255,255,255, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,192,16,20,40,20,2,0,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,96,6,112,14,60,60,31,248, + 15,224,17,20,60,18,1,0,224,3,128,224,7,0,224,7, + 0,112,7,0,112,14,0,112,14,0,56,14,0,56,28,0, + 56,28,0,28,56,0,28,56,0,12,56,0,14,112,0,14, + 112,0,7,112,0,7,224,0,7,224,0,3,224,0,3,192, + 0,3,192,0,26,20,80,27,1,0,224,28,1,192,224,30, + 3,128,224,62,3,128,224,62,3,128,112,54,3,0,112,119, + 7,0,112,115,7,0,48,99,7,0,56,99,134,0,56,227, + 142,0,24,225,142,0,28,193,140,0,28,193,220,0,29,193, + 220,0,13,192,216,0,15,128,216,0,15,128,248,0,7,128, + 120,0,7,0,112,0,7,0,112,0,18,20,60,20,1,0, + 120,7,128,56,7,0,60,14,0,30,30,0,14,28,0,15, + 56,0,7,56,0,3,240,0,1,224,0,1,224,0,3,224, + 0,3,240,0,7,120,0,14,56,0,14,28,0,28,30,0, + 56,15,0,120,7,0,112,7,128,224,3,192,17,20,60,19, + 1,0,224,3,128,240,7,0,112,7,0,56,14,0,60,28, + 0,28,28,0,14,56,0,14,48,0,7,112,0,7,96,0, + 3,224,0,1,192,0,1,192,0,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,1,192,0,15,20, + 40,17,1,0,255,252,255,252,0,28,0,56,0,120,0,240, + 0,224,1,192,3,192,3,128,7,0,14,0,30,0,28,0, + 56,0,112,0,240,0,224,0,255,254,255,254,5,25,25,11, + 3,251,248,248,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,248,248,9,21,42,11,1, + 255,192,0,96,0,96,0,96,0,48,0,48,0,48,0,24, + 0,24,0,24,0,8,0,12,0,12,0,12,0,6,0,6, + 0,6,0,3,0,3,0,3,0,1,128,6,25,25,12,3, + 251,252,252,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,252,252,14,17,34,28,7,0, + 3,0,3,0,7,128,7,128,4,128,12,192,8,64,24,96, + 24,96,16,32,48,48,48,48,96,24,96,24,64,8,192,12, + 192,12,14,2,4,14,0,252,255,252,255,252,6,5,5,6, + 255,16,224,112,48,24,12,12,14,28,15,1,0,31,192,63, + 224,112,112,112,112,0,112,15,240,63,240,112,112,224,112,224, + 112,224,112,224,240,127,176,30,48,13,20,40,16,2,0,224, + 0,224,0,224,0,224,0,224,0,224,0,231,192,255,224,240, + 112,224,48,224,56,224,56,224,56,224,56,224,56,224,56,224, + 112,240,112,255,224,231,128,12,14,28,14,1,0,31,128,63, + 224,112,112,224,112,224,112,224,0,224,0,224,0,224,0,224, + 112,96,112,112,224,63,224,31,128,13,20,40,16,1,0,0, + 56,0,56,0,56,0,56,0,56,0,56,31,56,63,248,112, + 248,96,120,224,56,224,56,224,56,224,56,224,56,224,56,112, + 56,112,120,63,248,15,184,13,14,28,15,1,0,15,128,63, + 224,112,112,96,48,224,56,255,248,255,248,224,0,224,0,224, + 56,96,112,112,112,63,224,15,128,9,20,40,10,1,0,7, + 128,31,128,28,0,28,0,28,0,28,0,255,128,255,128,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,13,19,38,16,1,251,31,184,63, + 248,112,120,96,56,224,56,224,56,224,56,224,56,224,56,224, + 56,96,56,112,120,63,248,31,56,0,56,112,48,112,112,63, + 224,15,128,12,20,40,16,2,0,224,0,224,0,224,0,224, + 0,224,0,224,0,239,192,255,224,240,240,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,3,20,20,7,2,0,224,224,224,0,0,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,5,25,25,7,1, + 251,56,56,56,0,0,0,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,240,224,11,20,40,14,2,0, + 224,0,224,0,224,0,224,0,224,0,224,0,225,224,225,192, + 227,128,231,0,238,0,252,0,252,0,254,0,238,0,231,0, + 227,128,227,192,225,192,224,224,3,20,20,7,2,0,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,21,14,42,25,2,0,231,195,224,255,239,240,240,248, + 56,224,120,56,224,112,24,224,112,24,224,112,24,224,112,24, + 224,112,24,224,112,24,224,112,24,224,112,24,224,112,24,224, + 112,24,12,14,28,16,2,0,239,128,255,224,240,240,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,14,14,28,16,1,0,15,192,63,224,112,112, + 112,56,224,24,224,28,224,28,224,28,224,28,224,24,112,56, + 112,112,63,224,15,192,14,19,38,17,2,251,231,192,255,240, + 240,112,240,56,224,24,224,28,224,28,224,28,224,28,224,24, + 224,56,240,112,255,240,231,192,224,0,224,0,224,0,224,0, + 224,0,14,19,38,17,1,251,15,156,63,220,112,124,112,60, + 224,28,224,28,224,28,224,28,224,28,224,28,96,60,112,124, + 63,252,15,156,0,28,0,28,0,28,0,28,0,28,8,14, + 14,10,2,0,239,255,240,224,224,224,224,224,224,224,224,224, + 224,224,12,14,28,14,1,0,31,128,127,192,112,224,224,224, + 224,0,120,0,63,128,15,224,0,224,0,112,224,112,224,224, + 127,192,63,128,8,18,18,10,1,0,8,56,56,56,255,255, + 56,56,56,56,56,56,56,56,56,56,31,15,12,14,28,16, + 2,0,224,112,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,240,240,127,240,63,112,13,14, + 28,15,1,0,224,24,224,56,224,56,112,48,112,112,56,96, + 56,224,24,192,28,192,29,192,15,128,15,128,7,0,7,0, + 21,14,42,23,1,0,192,112,24,224,248,56,224,248,56,96, + 216,48,97,216,112,113,156,112,49,140,96,51,140,224,59,14, + 224,27,6,192,27,7,192,30,7,128,14,3,128,14,3,128, + 13,14,28,15,1,0,240,56,112,112,56,96,28,224,31,192, + 15,128,7,0,7,128,15,192,29,192,56,224,112,112,112,120, + 224,56,13,19,38,15,1,251,224,24,224,56,96,56,112,112, + 112,112,56,96,56,224,28,224,29,192,13,192,15,128,15,128, + 7,128,7,0,7,0,6,0,14,0,14,0,12,0,10,14, + 28,12,1,0,255,192,255,192,1,192,3,128,7,0,14,0, + 14,0,28,0,56,0,48,0,112,0,224,0,255,192,255,192, + 9,27,54,13,2,249,3,128,15,128,14,0,12,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,56,0,248,0, + 240,0,240,0,56,0,24,0,28,0,28,0,28,0,28,0, + 12,0,12,0,12,0,14,0,15,128,3,128,1,29,29,9, + 4,249,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,9, + 27,54,13,2,249,240,0,248,0,24,0,28,0,28,0,28, + 0,28,0,28,0,28,0,12,0,12,0,14,0,7,128,3, + 128,7,128,14,0,12,0,12,0,28,0,28,0,28,0,28, + 0,28,0,28,0,24,0,248,0,240,0,15,3,6,15,0, + 5,62,14,127,252,224,248,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,8,0,0,3,19, + 19,10,4,251,224,224,224,0,0,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,12,20,40,16,2,253,0,192,0, + 128,0,128,31,128,63,192,113,96,227,96,226,0,226,0,230, + 0,228,0,228,0,236,112,232,96,120,224,63,192,31,128,16, + 0,48,0,48,0,14,20,40,16,1,0,7,224,31,248,60, + 60,56,28,56,0,56,0,56,0,255,128,255,128,56,0,56, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,255, + 248,255,248,16,14,28,18,1,4,192,3,97,134,55,236,28, + 56,24,24,48,12,48,12,48,12,48,12,24,24,28,56,63, + 252,115,198,192,3,15,20,40,17,1,0,224,14,224,28,112, + 28,48,56,56,56,24,112,252,126,252,254,14,224,7,192,255, + 254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,1,25,25,9,4,251,128,128,128,128,128,128,128, + 128,128,128,128,0,0,0,128,128,128,128,128,128,128,128,128, + 128,128,10,25,50,12,1,251,31,0,63,128,112,0,224,0, + 224,0,112,0,120,0,62,0,31,0,127,128,113,192,225,192, + 225,192,225,128,247,128,126,0,31,0,7,128,3,192,1,192, + 1,192,1,192,131,128,255,0,60,0,8,3,3,8,0,17, + 231,231,231,21,20,60,25,2,0,1,252,0,7,255,0,28, + 3,128,56,112,192,35,254,96,103,142,48,199,7,16,134,7, + 24,142,0,8,142,0,8,142,0,8,134,0,8,134,7,24, + 199,7,16,67,254,16,32,248,32,48,0,64,28,1,128,7, + 143,0,1,252,0,10,13,26,12,1,7,63,0,127,128,97, + 128,1,128,31,128,127,128,225,128,193,128,227,128,127,128,24, + 0,0,0,255,192,11,11,22,16,2,2,12,96,24,224,56, + 192,113,128,99,128,227,0,99,128,113,128,56,192,24,224,12, + 96,15,6,12,18,2,6,255,254,255,254,0,6,0,6,0, + 6,0,6,255,21,20,60,25,2,0,1,252,0,7,255,0, + 28,3,128,59,252,192,35,254,96,99,3,48,195,3,16,131, + 3,24,131,254,8,131,252,8,131,6,8,131,6,8,131,3, + 24,195,3,16,67,3,48,35,3,96,56,0,192,28,3,128, + 7,255,0,1,252,0,8,2,2,8,0,17,255,255,6,6, + 6,8,1,14,120,204,132,132,204,120,17,17,51,29,6,0, + 1,128,0,1,128,0,1,128,0,1,128,0,1,128,0,255, + 255,128,255,255,128,1,128,0,1,128,0,1,128,0,1,128, + 0,1,128,0,0,0,0,0,0,0,0,0,0,255,255,128, + 255,255,128,9,11,22,11,1,9,62,0,127,0,227,128,3, + 128,3,0,7,0,28,0,56,0,112,0,255,128,255,128,8, + 11,11,10,1,9,62,127,195,3,30,30,7,3,195,126,60, + 5,5,5,6,2,16,56,48,96,224,192,255,13,24,48,16, + 1,252,15,248,62,32,126,32,126,32,254,32,254,32,254,32, + 126,32,62,32,30,32,2,32,2,32,2,32,2,32,2,32, + 2,32,2,32,2,32,2,32,2,32,2,32,2,32,2,32, + 2,32,3,3,3,7,2,8,224,224,224,7,7,7,7,1, + 249,32,32,60,14,6,254,248,4,10,10,8,2,10,112,240, + 176,48,48,48,48,48,48,48,10,12,24,12,1,8,30,0, + 99,128,193,128,192,192,192,192,192,192,192,192,193,128,99,128, + 30,0,0,0,255,192,12,11,22,16,2,2,227,0,99,128, + 49,128,56,192,24,224,28,112,24,224,56,192,49,128,99,128, + 227,0,18,20,60,22,2,0,112,12,0,240,12,0,176,24, + 0,48,24,0,48,48,0,48,96,0,48,96,0,48,192,0, + 48,192,0,49,131,0,49,7,0,3,15,0,6,31,0,6, + 27,0,12,51,0,12,99,0,24,127,192,16,3,0,48,3, + 0,96,3,0,18,20,60,22,2,0,112,12,0,240,24,0, + 176,24,0,48,48,0,48,48,0,48,96,0,48,64,0,48, + 192,0,48,128,0,49,143,0,51,31,128,3,49,192,6,1, + 192,6,1,192,12,3,128,8,7,0,24,14,0,16,24,0, + 48,63,192,96,63,192,20,20,60,22,1,0,62,1,128,127, + 3,0,195,3,0,3,6,0,28,6,0,30,12,0,3,24, + 0,195,24,0,199,48,0,126,48,192,56,97,192,0,99,192, + 0,198,192,1,134,192,1,140,192,3,24,192,3,31,240,6, + 0,192,12,0,192,12,0,192,12,19,38,15,2,251,7,0, + 7,0,7,0,0,0,0,0,7,0,7,0,7,0,15,0, + 30,0,56,0,112,0,224,0,224,0,224,0,224,112,127,224, + 63,224,31,128,19,27,81,21,1,0,7,0,0,3,128,0, + 1,128,0,0,192,0,0,96,0,0,0,0,0,0,0,0, + 224,0,1,240,0,1,240,0,3,176,0,3,184,0,3,56, + 0,7,28,0,7,28,0,14,14,0,14,14,0,30,15,0, + 28,7,0,28,7,0,63,255,128,63,255,128,112,1,192,112, + 1,192,224,0,224,224,0,224,224,0,224,19,27,81,21,1, + 0,0,28,0,0,56,0,0,48,0,0,96,0,0,192,0, + 0,0,0,0,0,0,0,224,0,1,240,0,1,240,0,3, + 176,0,3,184,0,3,56,0,7,28,0,7,28,0,14,14, + 0,14,14,0,30,15,0,28,7,0,28,7,0,63,255,128, + 63,255,128,112,1,192,112,1,192,224,0,224,224,0,224,224, + 0,224,19,27,81,21,1,0,0,224,0,1,240,0,1,176, + 0,3,24,0,6,12,0,0,0,0,0,0,0,0,224,0, + 1,240,0,1,240,0,3,176,0,3,184,0,3,56,0,7, + 28,0,7,28,0,14,14,0,14,14,0,30,15,0,28,7, + 0,28,7,0,63,255,128,63,255,128,112,1,192,112,1,192, + 224,0,224,224,0,224,224,0,224,19,26,78,21,1,0,1, + 140,0,3,248,0,6,112,0,0,0,0,0,0,0,0,0, + 0,0,224,0,1,240,0,1,240,0,3,176,0,3,184,0, + 3,56,0,7,28,0,7,28,0,14,14,0,14,14,0,30, + 15,0,28,7,0,28,7,0,63,255,128,63,255,128,112,1, + 192,112,1,192,224,0,224,224,0,224,224,0,224,19,26,78, + 21,1,0,3,156,0,3,156,0,3,156,0,0,0,0,0, + 0,0,0,0,0,0,224,0,0,240,0,1,240,0,1,184, + 0,3,184,0,3,152,0,7,28,0,7,28,0,7,14,0, + 14,14,0,14,15,0,28,7,0,28,7,0,63,255,128,63, + 255,128,56,1,192,112,1,192,112,0,224,224,0,224,224,0, + 224,20,28,84,21,0,0,0,240,0,1,152,0,1,8,0, + 1,8,0,1,152,0,0,240,0,0,0,0,0,0,0,0, + 240,0,0,240,0,0,248,0,1,248,0,1,220,0,3,156, + 0,3,158,0,7,14,0,7,14,0,7,7,0,14,7,0, + 14,7,128,30,3,128,31,255,192,31,255,192,56,1,192,56, + 0,224,112,0,224,112,0,112,224,0,112,25,20,80,28,1, + 0,0,63,255,128,0,127,255,128,0,126,0,0,0,238,0, + 0,0,238,0,0,1,206,0,0,1,206,0,0,3,206,0, + 0,3,142,0,0,7,143,255,128,7,15,255,128,15,14,0, + 0,14,14,0,0,31,254,0,0,63,254,0,0,56,14,0, + 0,120,14,0,0,112,14,0,0,224,15,255,128,224,15,255, + 128,16,27,54,19,2,249,7,240,31,252,60,14,48,6,112, + 7,96,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,96,0,96,7,48,6,56,14,31,252,7,240,0, + 128,0,224,0,248,0,24,0,24,3,248,1,224,13,27,54, + 17,2,0,24,0,28,0,14,0,6,0,3,0,0,0,0, + 0,255,248,255,248,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,255,240,255,240,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,255,248,255,248,13,27,54,17,2,0,1, + 192,1,128,3,0,6,0,4,0,0,0,0,0,255,248,255, + 248,224,0,224,0,224,0,224,0,224,0,224,0,224,0,255, + 240,255,240,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,255,248,255,248,13,27,54,17,2,0,15,0,15,0,25, + 128,16,192,48,192,0,0,0,0,255,248,255,248,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,255,240,255,240,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,255,248,255, + 248,13,26,52,17,2,0,56,224,56,224,56,224,0,0,0, + 0,0,0,255,248,255,248,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,255,240,255,240,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,255,248,255,248,5,27,27,7,0, + 0,224,96,48,48,24,0,0,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,5,27,27,7, + 2,0,56,112,96,192,128,0,0,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,8,27,27, + 7,255,0,28,62,118,99,193,0,0,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,8,26, + 26,8,0,0,227,227,227,0,0,0,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,19,20, + 60,20,0,0,63,240,0,63,254,0,56,31,0,56,7,128, + 56,3,128,56,1,192,56,1,192,56,0,192,56,0,224,255, + 192,224,255,192,224,56,0,224,56,0,192,56,1,192,56,1, + 192,56,3,128,56,7,128,56,31,0,63,254,0,63,240,0, + 16,26,52,20,2,0,6,48,15,224,9,224,0,0,0,0, + 0,0,240,7,248,7,248,7,252,7,252,7,238,7,238,7, + 231,7,231,135,227,135,227,199,225,199,224,231,224,231,224,119, + 224,119,224,63,224,63,224,31,224,31,18,28,84,22,2,0, + 7,0,0,3,128,0,1,128,0,0,192,0,0,64,0,0, + 0,0,0,0,0,0,0,0,3,240,0,15,252,0,62,31, + 0,56,7,0,112,3,128,96,1,128,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,96, + 1,192,112,3,128,112,3,128,56,7,0,30,30,0,15,252, + 0,3,240,0,18,28,84,22,2,0,0,56,0,0,112,0, + 0,96,0,0,192,0,0,128,0,0,0,0,0,0,0,0, + 0,0,3,240,0,15,252,0,62,31,0,56,7,0,112,3, + 128,96,1,128,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,96,1,192,112,3,128,112, + 3,128,56,7,0,30,30,0,15,252,0,3,240,0,18,28, + 84,22,2,0,1,224,0,1,224,0,3,240,0,3,48,0, + 6,24,0,0,0,0,0,0,0,0,0,0,3,240,0,15, + 252,0,62,31,0,56,7,0,112,3,128,96,1,128,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,96,1,192,112,3,128,112,3,128,56,7,0,30, + 30,0,15,252,0,3,240,0,18,26,78,22,2,0,3,152, + 0,7,248,0,6,112,0,0,0,0,0,0,0,0,0,0, + 3,240,0,15,252,0,62,31,0,56,7,0,112,3,128,96, + 1,128,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,96,1,192,112,3,128,112,3,128, + 56,7,0,31,62,0,15,252,0,3,240,0,18,26,78,22, + 2,0,7,28,0,7,28,0,7,28,0,0,0,0,0,0, + 0,0,0,0,3,240,0,15,252,0,62,31,0,56,7,0, + 112,3,128,96,1,128,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,96,1,192,112,3, + 128,112,3,128,56,7,0,30,30,0,15,252,0,3,240,0, + 16,15,30,28,6,1,64,2,224,7,112,14,56,28,12,56, + 6,96,3,192,1,128,3,192,6,96,12,48,24,24,48,12, + 96,6,64,2,18,24,72,22,2,254,0,0,128,0,1,192, + 3,251,128,15,255,0,62,31,0,56,15,128,112,31,128,96, + 29,128,224,57,192,224,113,192,224,113,192,224,225,192,225,193, + 192,227,193,192,227,129,192,231,1,128,111,3,128,126,3,128, + 60,7,0,62,30,0,63,252,0,115,240,0,224,0,0,96, + 0,0,16,28,56,20,2,0,14,0,7,0,3,0,1,128, + 0,128,0,0,0,0,0,0,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,96,14,112,14,62,124,31,248,15,224, + 16,28,56,20,2,0,0,112,0,224,0,192,1,128,1,0, + 0,0,0,0,0,0,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,96,14,112,14,62,124,31,248,15,224,16,28, + 56,20,2,0,3,192,3,192,7,224,6,96,12,48,0,0, + 0,0,0,0,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,96,14,112,14,62,124,31,248,15,224,16,26,52,20, + 2,0,14,56,14,56,14,56,0,0,0,0,0,0,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,96,6,112,14, + 60,60,31,248,15,224,17,27,81,19,1,0,0,112,0,0, + 96,0,0,192,0,0,128,0,1,128,0,0,0,0,0,0, + 0,224,3,128,240,7,0,112,7,0,56,14,0,60,28,0, + 28,28,0,14,56,0,14,48,0,7,112,0,7,96,0,3, + 224,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,1,192,0,14,20,40, + 17,2,0,224,0,224,0,224,0,224,0,255,192,255,240,224, + 120,224,56,224,28,224,28,224,28,224,56,224,120,255,240,255, + 192,224,0,224,0,224,0,224,0,224,0,14,20,40,15,1, + 0,15,128,63,224,112,112,224,112,224,112,224,112,225,224,227, + 128,231,0,231,0,227,128,227,224,224,248,224,56,224,28,224, + 28,238,28,230,28,231,248,225,240,12,21,42,15,1,0,12, + 0,14,0,6,0,3,0,1,128,0,0,0,0,31,192,63, + 224,112,112,112,112,0,112,15,240,63,240,112,112,224,112,224, + 112,224,112,224,240,127,176,30,48,12,22,44,15,1,0,1, + 192,1,128,3,0,3,0,6,0,12,0,0,0,0,0,31, + 192,63,224,112,112,112,112,0,112,15,240,63,240,112,112,224, + 112,224,112,224,112,224,240,127,176,30,48,12,22,44,15,1, + 0,7,0,15,0,13,128,29,128,24,192,48,64,0,0,0, + 0,31,192,63,224,112,112,112,112,0,112,15,240,63,240,112, + 112,224,112,224,112,224,112,224,240,127,176,30,48,12,20,40, + 15,1,0,30,64,31,192,49,128,0,0,0,0,0,0,31, + 192,63,224,112,112,112,112,0,112,15,240,63,240,112,112,224, + 112,224,112,224,112,224,240,127,176,30,48,12,20,40,15,1, + 0,56,224,56,224,56,224,0,0,0,0,0,0,31,192,63, + 224,112,112,112,112,0,112,15,240,63,240,112,112,224,112,224, + 112,224,112,224,240,127,176,30,48,12,23,46,15,1,0,15, + 0,25,128,16,128,16,128,25,128,15,0,0,0,0,0,0, + 0,31,192,63,224,112,112,112,112,0,112,15,240,63,240,112, + 112,224,112,224,112,224,112,224,240,127,176,30,48,23,14,42, + 25,1,0,31,131,240,63,207,248,112,108,28,112,56,12,0, + 56,14,15,255,254,63,255,254,120,56,0,224,56,0,224,56, + 14,224,120,12,240,236,28,127,199,248,31,3,240,12,21,42, + 14,1,249,31,128,63,224,112,112,224,112,224,112,224,0,224, + 0,224,0,224,0,224,112,224,112,112,224,63,224,31,128,4, + 0,7,128,7,192,0,96,0,96,31,192,15,0,13,22,44, + 15,1,0,56,0,28,0,12,0,6,0,6,0,3,0,0, + 0,0,0,15,128,63,224,112,112,96,48,224,56,255,248,255, + 248,224,0,224,0,224,56,96,112,112,112,63,224,15,128,13, + 22,44,15,1,0,1,192,1,128,3,128,3,0,6,0,4, + 0,0,0,0,0,15,128,63,224,112,112,96,48,224,56,255, + 248,255,248,224,0,224,0,224,56,96,112,112,112,63,224,15, + 128,13,22,44,15,1,0,7,0,15,0,15,128,25,128,24, + 192,48,64,0,0,0,0,15,128,63,224,112,112,96,48,224, + 56,255,248,255,248,224,0,224,0,224,56,96,112,112,112,63, + 224,15,128,13,20,40,15,1,0,56,224,56,224,56,224,0, + 0,0,0,0,0,15,192,63,224,112,112,96,56,224,56,255, + 248,255,248,224,0,224,0,224,56,96,56,112,112,63,224,15, + 128,5,21,21,7,0,0,224,96,48,48,24,0,0,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,5,21,21,7, + 2,0,56,112,96,192,128,0,0,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,8,21,21,7,255,0,60,62,118, + 99,193,0,0,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,8,20,20,7,255,0,227,227,227,0,0,0,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,14,20,40,16, + 1,0,48,32,57,224,15,0,31,128,113,192,0,224,15,240, + 63,240,120,120,112,56,224,24,224,28,224,28,224,28,224,28, + 224,24,96,56,112,112,63,224,15,192,12,20,40,16,2,0, + 28,192,63,192,51,128,0,0,0,0,0,0,239,128,255,224, + 240,240,224,112,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,14,22,44,16,1,0,28,0, + 12,0,14,0,6,0,3,0,1,0,0,0,0,0,15,192, + 63,224,112,112,112,56,224,24,224,28,224,28,224,28,224,28, + 224,24,112,56,112,112,63,224,15,192,14,22,44,16,1,0, + 0,224,1,192,1,128,3,0,3,0,6,0,0,0,0,0, + 15,192,63,224,112,112,112,56,224,24,224,28,224,28,224,28, + 224,28,224,24,112,56,112,112,63,224,15,192,14,22,44,16, + 1,0,7,0,7,128,15,128,12,192,24,192,24,96,0,0, + 0,0,15,192,63,224,112,112,112,56,224,24,224,28,224,28, + 224,28,224,28,224,24,112,56,112,112,63,224,15,192,14,20, + 40,16,1,0,14,96,31,192,17,128,0,0,0,0,0,0, + 15,192,63,224,112,112,112,56,224,24,224,28,224,28,224,28, + 224,28,224,24,112,56,112,112,63,224,15,192,14,20,40,16, + 1,0,28,224,28,224,28,224,0,0,0,0,0,0,15,192, + 63,224,112,112,112,56,224,24,224,28,224,28,224,28,224,28, + 224,24,112,56,112,112,63,224,15,192,17,12,36,29,6,2, + 1,192,0,1,192,0,1,192,0,0,0,0,0,0,0,255, + 255,128,255,255,128,0,0,0,0,0,0,1,192,0,1,192, + 0,1,192,0,14,18,36,16,1,254,0,8,0,24,15,248, + 63,240,112,112,112,248,225,216,225,152,227,28,230,28,238,28, + 236,24,120,56,112,112,127,224,111,192,192,0,128,0,12,22, + 44,16,2,0,56,0,24,0,12,0,12,0,6,0,3,0, + 0,0,0,0,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,240,240,127,240,63,112, + 12,22,44,16,2,0,1,192,1,128,3,0,7,0,6,0, + 12,0,0,0,0,0,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,240,240,127,240, + 63,112,12,22,44,16,2,0,6,0,15,0,15,0,25,128, + 16,128,48,192,0,0,0,0,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,224,112,240,240, + 127,240,63,112,12,20,40,16,2,0,57,192,57,192,57,192, + 0,0,0,0,0,0,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,240,240,127,240, + 63,112,13,27,54,15,1,251,0,224,1,192,1,128,3,0, + 2,0,0,0,0,0,0,0,224,24,224,56,96,56,112,112, + 112,112,56,96,56,224,28,224,29,192,13,192,15,128,7,128, + 7,128,7,0,7,0,6,0,238,0,252,0,120,0,14,25, + 50,17,2,251,224,0,224,0,224,0,224,0,224,0,224,0, + 231,192,255,240,240,112,240,56,224,24,224,28,224,28,224,28, + 224,28,224,24,224,56,240,112,255,240,231,192,224,0,224,0, + 224,0,224,0,224,0,14,25,50,14,0,251,28,224,28,224, + 28,224,0,0,0,0,0,0,224,28,112,24,112,56,48,56, + 56,112,56,112,28,96,28,224,14,224,14,192,7,192,7,128, + 3,128,3,128,3,0,7,0,6,0,6,0,14,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--28-280-72-72-P-133-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 20 + Calculated Max Values w=17 h=21 x= 6 y= 9 dx=29 dy= 0 ascent=20 len=48 + Font Bounding box w=38 h=35 x=-2 y=-7 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =20 descent= 0 + X Font ascent =20 descent= 0 + Max Font ascent =20 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur20n[596] U8G_SECTION(".progmem.u8g_font_fur20n") = { + 0,38,35,254,249,20,0,0,0,0,42,57,0,20,253,20, + 0,11,11,22,19,4,9,17,0,49,128,27,0,27,0,14, + 0,255,224,142,32,27,0,27,0,49,128,17,0,17,16,48, + 29,6,0,1,128,0,1,128,0,1,128,0,1,128,0,1, + 128,0,1,128,0,1,128,0,255,255,128,255,255,128,1,128, + 0,1,128,0,1,128,0,1,128,0,1,128,0,1,128,0, + 1,128,0,5,7,7,8,1,253,56,56,112,112,96,96,224, + 7,2,2,9,1,6,254,254,3,3,3,8,3,0,224,224, + 224,8,21,21,11,2,255,3,6,6,6,4,12,12,12,24, + 24,24,48,48,48,96,96,96,64,192,192,192,13,20,40,16, + 1,0,15,128,63,192,112,224,96,112,96,112,224,48,224,48, + 224,56,224,56,224,56,224,56,224,56,224,56,224,48,224,48, + 96,112,112,112,48,224,63,192,15,128,7,20,20,16,4,0, + 30,62,126,254,206,14,14,14,14,14,14,14,14,14,14,14, + 14,14,14,14,12,20,40,16,2,0,31,128,63,192,112,96, + 112,112,224,112,0,112,0,112,0,112,0,224,1,224,3,192, + 3,128,7,0,14,0,28,0,60,0,120,0,240,0,255,240, + 255,240,13,20,40,16,1,0,15,128,63,224,112,112,112,48, + 224,56,0,56,0,48,0,224,7,192,7,192,0,224,0,112, + 0,56,0,56,224,56,224,56,224,56,112,112,63,224,31,128, + 14,20,40,16,1,0,0,240,1,240,1,240,3,240,7,112, + 6,112,14,112,28,112,24,112,56,112,112,112,96,112,224,112, + 255,252,255,252,0,112,0,112,0,112,0,112,0,112,13,20, + 40,16,1,0,255,224,255,224,224,0,224,0,224,0,224,0, + 224,0,239,128,255,224,240,112,224,112,224,48,0,56,0,56, + 0,56,224,48,224,112,112,224,127,192,31,128,13,20,40,16, + 1,0,15,192,63,224,120,112,112,48,224,56,224,0,224,0, + 231,192,255,224,248,240,224,56,224,56,224,56,224,56,224,56, + 224,56,96,48,48,112,63,224,15,128,12,20,40,16,2,0, + 255,240,255,240,0,112,0,112,0,96,0,224,0,224,1,192, + 1,192,1,128,3,128,3,128,3,0,7,0,7,0,14,0, + 14,0,14,0,28,0,28,0,13,20,40,16,1,0,15,128, + 63,224,112,112,224,48,224,56,224,56,96,48,112,112,31,192, + 31,192,56,96,96,48,224,56,224,56,224,56,224,56,224,56, + 112,112,63,224,15,128,13,20,40,16,1,0,31,192,63,224, + 112,112,224,56,224,56,224,56,224,56,224,56,224,56,112,120, + 63,248,31,56,0,56,0,56,0,56,96,48,96,112,112,224, + 63,192,31,128}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--28-280-72-72-P-133-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 20, '1' Height: 20 + Calculated Max Values w=26 h=29 x= 7 y=16 dx=29 dy= 0 ascent=22 len=96 + Font Bounding box w=38 h=35 x=-2 y=-7 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =20 descent=-5 + X Font ascent =20 descent=-5 + Max Font ascent =22 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur20r[3976] U8G_SECTION(".progmem.u8g_font_fur20r") = { + 0,38,35,254,249,20,5,12,11,23,32,127,251,22,249,20, + 251,0,0,0,8,0,0,3,20,20,11,4,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,0,0,224,224, + 224,9,8,16,13,2,12,227,128,227,128,227,0,227,0,227, + 0,195,0,195,0,67,0,18,20,60,21,1,0,0,195,0, + 0,195,0,0,195,0,1,198,0,1,134,0,1,134,0,31, + 255,192,63,255,192,3,12,0,3,24,0,6,24,0,6,24, + 0,127,255,128,255,255,0,12,48,0,12,48,0,28,96,0, + 24,96,0,24,96,0,24,192,0,14,25,50,16,1,253,2, + 0,2,0,31,192,63,224,114,112,98,48,226,56,226,0,226, + 0,114,0,126,0,63,224,15,240,2,248,2,56,2,28,226, + 28,226,28,226,24,114,56,127,240,31,192,2,0,2,0,2, + 0,23,20,60,25,1,0,30,0,192,127,128,192,97,129,128, + 225,193,0,225,195,0,225,198,0,225,198,0,97,140,0,127, + 136,0,30,24,224,0,49,248,0,51,156,0,103,14,0,71, + 14,0,199,14,1,135,14,1,135,14,3,3,12,2,3,252, + 6,0,240,19,20,60,22,2,0,7,192,0,31,240,0,56, + 48,0,56,48,0,56,48,0,56,112,0,29,224,0,15,192, + 0,31,3,128,63,131,128,115,195,128,225,227,128,224,243,0, + 224,123,0,224,63,0,224,30,0,112,15,0,120,31,128,63, + 251,192,15,225,224,3,8,8,10,4,12,224,224,192,192,192, + 192,192,192,5,24,24,10,3,252,24,48,48,112,112,96,96, + 224,224,224,224,224,224,224,224,224,224,96,96,112,112,48,48, + 24,5,24,24,10,3,252,192,192,96,96,96,112,112,48,48, + 48,56,56,56,56,48,48,48,112,112,96,96,96,192,192,11, + 11,22,19,4,9,17,0,49,128,27,0,27,0,14,0,255, + 224,142,32,27,0,27,0,49,128,17,0,17,16,48,29,6, + 0,1,128,0,1,128,0,1,128,0,1,128,0,1,128,0, + 1,128,0,1,128,0,255,255,128,255,255,128,1,128,0,1, + 128,0,1,128,0,1,128,0,1,128,0,1,128,0,1,128, + 0,5,7,7,8,1,253,56,56,112,112,96,96,224,7,2, + 2,9,1,6,254,254,3,3,3,8,3,0,224,224,224,8, + 21,21,11,2,255,3,6,6,6,4,12,12,12,24,24,24, + 48,48,48,96,96,96,64,192,192,192,13,20,40,16,1,0, + 15,128,63,192,112,224,96,112,96,112,224,48,224,48,224,56, + 224,56,224,56,224,56,224,56,224,56,224,48,224,48,96,112, + 112,112,48,224,63,192,15,128,7,20,20,16,4,0,30,62, + 126,254,206,14,14,14,14,14,14,14,14,14,14,14,14,14, + 14,14,12,20,40,16,2,0,31,128,63,192,112,96,112,112, + 224,112,0,112,0,112,0,112,0,224,1,224,3,192,3,128, + 7,0,14,0,28,0,60,0,120,0,240,0,255,240,255,240, + 13,20,40,16,1,0,15,128,63,224,112,112,112,48,224,56, + 0,56,0,48,0,224,7,192,7,192,0,224,0,112,0,56, + 0,56,224,56,224,56,224,56,112,112,63,224,31,128,14,20, + 40,16,1,0,0,240,1,240,1,240,3,240,7,112,6,112, + 14,112,28,112,24,112,56,112,112,112,96,112,224,112,255,252, + 255,252,0,112,0,112,0,112,0,112,0,112,13,20,40,16, + 1,0,255,224,255,224,224,0,224,0,224,0,224,0,224,0, + 239,128,255,224,240,112,224,112,224,48,0,56,0,56,0,56, + 224,48,224,112,112,224,127,192,31,128,13,20,40,16,1,0, + 15,192,63,224,120,112,112,48,224,56,224,0,224,0,231,192, + 255,224,248,240,224,56,224,56,224,56,224,56,224,56,224,56, + 96,48,48,112,63,224,15,128,12,20,40,16,2,0,255,240, + 255,240,0,112,0,112,0,96,0,224,0,224,1,192,1,192, + 1,128,3,128,3,128,3,0,7,0,7,0,14,0,14,0, + 14,0,28,0,28,0,13,20,40,16,1,0,15,128,63,224, + 112,112,224,48,224,56,224,56,96,48,112,112,31,192,31,192, + 56,96,96,48,224,56,224,56,224,56,224,56,224,56,112,112, + 63,224,15,128,13,20,40,16,1,0,31,192,63,224,112,112, + 224,56,224,56,224,56,224,56,224,56,224,56,112,120,63,248, + 31,56,0,56,0,56,0,56,96,48,96,112,112,224,63,192, + 31,128,3,14,14,8,3,0,224,224,224,0,0,0,0,0, + 0,0,0,224,224,224,4,17,17,8,2,253,112,112,112,0, + 0,0,0,0,0,0,112,112,96,224,192,192,192,17,14,42, + 29,6,1,0,1,128,0,15,128,0,124,0,1,224,0,15, + 0,0,120,0,0,224,0,0,240,0,0,62,0,0,7,128, + 0,0,240,0,0,62,0,0,7,128,0,0,128,17,7,21, + 29,6,5,255,255,128,255,255,128,0,0,0,0,0,0,0, + 0,0,255,255,128,255,255,128,17,14,42,29,6,1,192,0, + 0,248,0,0,31,0,0,3,192,0,0,120,0,0,15,0, + 0,3,128,0,7,128,0,62,0,0,240,0,7,128,0,62, + 0,0,240,0,0,128,0,0,12,20,40,15,1,0,31,0, + 63,192,127,224,224,240,64,112,0,112,0,112,0,96,0,192, + 3,128,7,0,14,0,14,0,14,0,14,0,0,0,0,0, + 14,0,14,0,14,0,25,24,96,28,2,252,0,127,0,0, + 3,255,224,0,15,129,248,0,30,0,60,0,56,0,14,0, + 48,0,6,0,112,125,199,0,96,255,199,0,225,195,195,0, + 227,131,195,0,227,129,195,128,227,129,195,128,227,129,195,128, + 227,129,195,0,227,129,195,0,225,131,199,0,113,199,206,0, + 112,252,252,0,56,56,48,0,60,0,0,0,30,0,0,0, + 15,128,64,0,3,255,192,0,0,127,128,0,19,20,60,21, + 1,0,0,224,0,1,240,0,1,240,0,3,176,0,3,184, + 0,3,56,0,7,28,0,7,28,0,14,14,0,14,14,0, + 30,15,0,28,7,0,28,7,0,63,255,128,63,255,128,112, + 1,192,112,1,192,224,0,224,224,0,224,224,0,224,15,20, + 40,19,2,0,255,224,255,248,224,120,224,28,224,28,224,28, + 224,28,224,24,224,56,255,224,255,240,224,28,224,12,224,14, + 224,14,224,14,224,30,224,60,255,248,255,224,16,20,40,19, + 2,0,7,240,31,252,60,14,48,6,112,7,96,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,96,0, + 96,7,112,6,56,14,31,252,7,240,16,20,40,20,2,0, + 255,192,255,240,224,120,224,28,224,14,224,14,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,14,224,14, + 224,28,224,120,255,240,255,192,13,20,40,17,2,0,255,248, + 255,248,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 255,240,255,240,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,255,248,255,248,12,20,40,16,2,0,255,240,255,240, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,255,224, + 255,224,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,18,20,60,22,2,0,3,248,0,15,254,0, + 30,15,128,56,3,128,112,1,192,96,0,0,224,0,0,224, + 0,0,224,0,0,224,63,192,224,63,192,224,1,192,224,1, + 192,224,1,192,112,1,192,112,1,192,56,1,192,30,7,192, + 15,255,192,3,254,0,15,20,40,19,2,0,224,14,224,14, + 224,14,224,14,224,14,224,14,224,14,224,14,224,14,255,254, + 255,254,224,14,224,14,224,14,224,14,224,14,224,14,224,14, + 224,14,224,14,3,20,20,7,2,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,12,20, + 40,16,2,0,0,112,0,112,0,112,0,112,0,112,0,112, + 0,112,0,112,0,112,0,112,0,112,0,112,0,112,0,112, + 0,112,224,112,224,96,113,224,63,192,31,128,15,20,40,18, + 2,0,224,60,224,120,224,240,224,224,225,192,227,128,231,0, + 238,0,252,0,254,0,238,0,239,0,231,128,227,192,225,224, + 224,240,224,120,224,56,224,60,224,30,12,20,40,15,2,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,255,240,255,240,21,20,60,25,2,0,248,0, + 248,248,0,248,248,1,248,252,1,248,252,1,184,236,3,184, + 238,3,184,238,3,56,230,7,56,231,6,56,227,14,56,227, + 142,56,227,140,56,225,156,56,225,220,56,225,216,56,224,248, + 56,224,240,56,224,112,56,224,112,56,16,20,40,20,2,0, + 240,7,248,7,248,7,252,7,252,7,238,7,238,7,231,7, + 231,135,227,135,227,199,225,199,224,231,224,231,224,119,224,119, + 224,63,224,63,224,31,224,31,18,20,60,22,2,0,3,240, + 0,15,252,0,62,31,0,56,7,0,112,3,128,96,1,128, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,96,1,192,112,3,128,112,3,128,56,7, + 0,30,30,0,15,252,0,3,240,0,14,20,40,17,2,0, + 255,192,255,240,224,120,224,56,224,28,224,28,224,28,224,56, + 224,120,255,240,255,192,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,20,20,60,22,2,0,3,240, + 0,15,252,0,62,31,0,56,7,0,112,3,128,96,1,128, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,96,1,192,112,3,128,112,3,128,56,7, + 0,30,30,0,15,255,240,3,255,240,14,20,40,17,2,0, + 255,192,255,240,224,120,224,56,224,28,224,28,224,28,224,56, + 224,112,255,224,255,224,224,112,224,56,224,56,224,56,224,24, + 224,24,224,24,224,28,224,28,15,20,40,19,2,0,15,192, + 63,240,120,120,96,28,224,28,224,0,224,0,120,0,127,0, + 63,240,7,252,0,60,0,14,0,14,224,14,224,14,224,14, + 120,60,63,248,15,192,16,20,40,18,1,0,255,255,255,255, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,192,16,20,40,20,2,0,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,96,6,112,14,60,60,31,248, + 15,224,17,20,60,18,1,0,224,3,128,224,7,0,224,7, + 0,112,7,0,112,14,0,112,14,0,56,14,0,56,28,0, + 56,28,0,28,56,0,28,56,0,12,56,0,14,112,0,14, + 112,0,7,112,0,7,224,0,7,224,0,3,224,0,3,192, + 0,3,192,0,26,20,80,27,1,0,224,28,1,192,224,30, + 3,128,224,62,3,128,224,62,3,128,112,54,3,0,112,119, + 7,0,112,115,7,0,48,99,7,0,56,99,134,0,56,227, + 142,0,24,225,142,0,28,193,140,0,28,193,220,0,29,193, + 220,0,13,192,216,0,15,128,216,0,15,128,248,0,7,128, + 120,0,7,0,112,0,7,0,112,0,18,20,60,20,1,0, + 120,7,128,56,7,0,60,14,0,30,30,0,14,28,0,15, + 56,0,7,56,0,3,240,0,1,224,0,1,224,0,3,224, + 0,3,240,0,7,120,0,14,56,0,14,28,0,28,30,0, + 56,15,0,120,7,0,112,7,128,224,3,192,17,20,60,19, + 1,0,224,3,128,240,7,0,112,7,0,56,14,0,60,28, + 0,28,28,0,14,56,0,14,48,0,7,112,0,7,96,0, + 3,224,0,1,192,0,1,192,0,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,1,192,0,15,20, + 40,17,1,0,255,252,255,252,0,28,0,56,0,120,0,240, + 0,224,1,192,3,192,3,128,7,0,14,0,30,0,28,0, + 56,0,112,0,240,0,224,0,255,254,255,254,5,25,25,11, + 3,251,248,248,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,248,248,9,21,42,11,1, + 255,192,0,96,0,96,0,96,0,48,0,48,0,48,0,24, + 0,24,0,24,0,8,0,12,0,12,0,12,0,6,0,6, + 0,6,0,3,0,3,0,3,0,1,128,6,25,25,12,3, + 251,252,252,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,252,252,14,17,34,28,7,0, + 3,0,3,0,7,128,7,128,4,128,12,192,8,64,24,96, + 24,96,16,32,48,48,48,48,96,24,96,24,64,8,192,12, + 192,12,14,2,4,14,0,252,255,252,255,252,6,5,5,6, + 255,16,224,112,48,24,12,12,14,28,15,1,0,31,192,63, + 224,112,112,112,112,0,112,15,240,63,240,112,112,224,112,224, + 112,224,112,224,240,127,176,30,48,13,20,40,16,2,0,224, + 0,224,0,224,0,224,0,224,0,224,0,231,192,255,224,240, + 112,224,48,224,56,224,56,224,56,224,56,224,56,224,56,224, + 112,240,112,255,224,231,128,12,14,28,14,1,0,31,128,63, + 224,112,112,224,112,224,112,224,0,224,0,224,0,224,0,224, + 112,96,112,112,224,63,224,31,128,13,20,40,16,1,0,0, + 56,0,56,0,56,0,56,0,56,0,56,31,56,63,248,112, + 248,96,120,224,56,224,56,224,56,224,56,224,56,224,56,112, + 56,112,120,63,248,15,184,13,14,28,15,1,0,15,128,63, + 224,112,112,96,48,224,56,255,248,255,248,224,0,224,0,224, + 56,96,112,112,112,63,224,15,128,9,20,40,10,1,0,7, + 128,31,128,28,0,28,0,28,0,28,0,255,128,255,128,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,13,19,38,16,1,251,31,184,63, + 248,112,120,96,56,224,56,224,56,224,56,224,56,224,56,224, + 56,96,56,112,120,63,248,31,56,0,56,112,48,112,112,63, + 224,15,128,12,20,40,16,2,0,224,0,224,0,224,0,224, + 0,224,0,224,0,239,192,255,224,240,240,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,3,20,20,7,2,0,224,224,224,0,0,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,5,25,25,7,1, + 251,56,56,56,0,0,0,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,240,224,11,20,40,14,2,0, + 224,0,224,0,224,0,224,0,224,0,224,0,225,224,225,192, + 227,128,231,0,238,0,252,0,252,0,254,0,238,0,231,0, + 227,128,227,192,225,192,224,224,3,20,20,7,2,0,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,21,14,42,25,2,0,231,195,224,255,239,240,240,248, + 56,224,120,56,224,112,24,224,112,24,224,112,24,224,112,24, + 224,112,24,224,112,24,224,112,24,224,112,24,224,112,24,224, + 112,24,12,14,28,16,2,0,239,128,255,224,240,240,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,14,14,28,16,1,0,15,192,63,224,112,112, + 112,56,224,24,224,28,224,28,224,28,224,28,224,24,112,56, + 112,112,63,224,15,192,14,19,38,17,2,251,231,192,255,240, + 240,112,240,56,224,24,224,28,224,28,224,28,224,28,224,24, + 224,56,240,112,255,240,231,192,224,0,224,0,224,0,224,0, + 224,0,14,19,38,17,1,251,15,156,63,220,112,124,112,60, + 224,28,224,28,224,28,224,28,224,28,224,28,96,60,112,124, + 63,252,15,156,0,28,0,28,0,28,0,28,0,28,8,14, + 14,10,2,0,239,255,240,224,224,224,224,224,224,224,224,224, + 224,224,12,14,28,14,1,0,31,128,127,192,112,224,224,224, + 224,0,120,0,63,128,15,224,0,224,0,112,224,112,224,224, + 127,192,63,128,8,18,18,10,1,0,8,56,56,56,255,255, + 56,56,56,56,56,56,56,56,56,56,31,15,12,14,28,16, + 2,0,224,112,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,240,240,127,240,63,112,13,14, + 28,15,1,0,224,24,224,56,224,56,112,48,112,112,56,96, + 56,224,24,192,28,192,29,192,15,128,15,128,7,0,7,0, + 21,14,42,23,1,0,192,112,24,224,248,56,224,248,56,96, + 216,48,97,216,112,113,156,112,49,140,96,51,140,224,59,14, + 224,27,6,192,27,7,192,30,7,128,14,3,128,14,3,128, + 13,14,28,15,1,0,240,56,112,112,56,96,28,224,31,192, + 15,128,7,0,7,128,15,192,29,192,56,224,112,112,112,120, + 224,56,13,19,38,15,1,251,224,24,224,56,96,56,112,112, + 112,112,56,96,56,224,28,224,29,192,13,192,15,128,15,128, + 7,128,7,0,7,0,6,0,14,0,14,0,12,0,10,14, + 28,12,1,0,255,192,255,192,1,192,3,128,7,0,14,0, + 14,0,28,0,56,0,48,0,112,0,224,0,255,192,255,192, + 9,27,54,13,2,249,3,128,15,128,14,0,12,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,56,0,248,0, + 240,0,240,0,56,0,24,0,28,0,28,0,28,0,28,0, + 12,0,12,0,12,0,14,0,15,128,3,128,1,29,29,9, + 4,249,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,9, + 27,54,13,2,249,240,0,248,0,24,0,28,0,28,0,28, + 0,28,0,28,0,28,0,12,0,12,0,14,0,7,128,3, + 128,7,128,14,0,12,0,12,0,28,0,28,0,28,0,28, + 0,28,0,28,0,24,0,248,0,240,0,15,3,6,15,0, + 5,62,14,127,252,224,248,255}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--34-340-72-72-P-161-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 25, '1' Height: 25 + Calculated Max Values w=31 h=37 x= 8 y=22 dx=34 dy= 0 ascent=36 len=132 + Font Bounding box w=46 h=45 x=-2 y=-9 + Calculated Min Values x=-1 y=-9 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =36 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur25[11949] U8G_SECTION(".progmem.u8g_font_fur25") = { + 0,46,45,254,247,25,6,119,15,27,32,255,249,36,247,25, + 249,0,0,0,10,0,0,3,25,25,12,4,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 0,0,0,224,224,224,11,10,20,15,2,15,241,224,112,224, + 112,224,112,224,112,224,112,224,112,224,96,192,96,192,96,192, + 22,25,75,25,2,0,0,112,224,0,112,224,0,96,192,0, + 225,192,0,225,192,0,193,128,0,193,128,63,255,252,63,255, + 248,1,131,0,3,135,0,3,134,0,3,6,0,7,14,0, + 255,255,224,255,255,224,14,28,0,14,28,0,12,24,0,12, + 24,0,28,56,0,28,56,0,24,48,0,56,112,0,56,112, + 0,16,32,64,18,1,252,1,128,1,128,1,128,15,240,31, + 248,63,252,121,158,113,142,113,142,113,142,113,128,113,128,121, + 128,63,128,31,240,15,252,1,254,1,159,1,143,1,135,225, + 135,225,135,225,135,241,135,121,143,127,254,63,252,15,240,1, + 128,1,128,1,128,1,128,28,27,108,32,2,0,0,0,14, + 0,0,0,12,0,31,128,24,0,63,192,24,0,121,224,48, + 0,240,240,48,0,224,112,96,0,224,112,224,0,224,112,192, + 0,224,113,192,0,240,113,128,0,112,227,128,0,63,227,0, + 0,31,134,31,128,0,6,63,192,0,12,121,224,0,12,240, + 240,0,24,224,112,0,56,224,112,0,48,224,112,0,112,224, + 112,0,96,224,112,0,224,224,112,0,192,240,240,1,128,121, + 224,1,128,63,192,3,0,31,128,23,25,75,26,2,1,7, + 248,0,15,252,0,30,30,0,28,14,0,28,14,0,28,14, + 0,30,28,0,30,60,0,15,248,0,7,224,0,15,192,112, + 31,224,112,61,224,112,120,240,112,240,120,112,224,60,112,224, + 30,224,224,15,224,224,7,224,240,3,192,120,3,224,124,15, + 240,63,255,120,31,252,124,7,240,62,4,10,10,13,4,15, + 240,112,112,112,112,112,112,96,96,96,6,30,30,12,3,251, + 12,24,24,56,56,112,112,112,112,240,224,224,224,224,224,224, + 224,224,224,224,240,112,112,112,112,56,56,24,24,12,6,30, + 30,12,3,251,224,96,112,112,48,56,56,56,56,28,28,28, + 28,28,28,28,28,28,28,28,28,60,56,56,56,48,112,112, + 96,224,14,13,26,22,4,12,24,96,28,224,28,224,12,192, + 7,128,243,60,255,252,231,156,7,128,12,192,28,224,60,224, + 24,96,20,21,63,34,7,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,255,255,240,255,255,240,0,96,0,0,96,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,6,9,9,9,2,252,60,120,120, + 112,112,224,224,224,192,8,3,3,10,1,7,255,255,255,3, + 4,4,9,3,0,224,224,224,224,10,28,56,13,2,254,0, + 192,1,192,1,128,1,128,3,128,3,0,3,0,3,0,7, + 0,6,0,6,0,14,0,12,0,12,0,28,0,28,0,24, + 0,24,0,56,0,48,0,48,0,112,0,112,0,96,0,96, + 0,224,0,192,0,192,0,15,25,50,19,2,1,15,224,63, + 248,62,248,120,60,112,28,112,30,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,240, + 14,112,30,112,28,120,28,60,60,63,248,31,240,7,192,8, + 25,25,19,5,0,15,31,63,127,255,231,135,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,15,25, + 50,19,2,1,15,240,63,248,62,252,120,28,120,30,112,14, + 240,14,0,14,0,30,0,28,0,60,0,120,0,120,0,240, + 1,224,3,192,7,128,15,0,31,0,62,0,60,0,120,0, + 240,0,255,254,255,254,16,25,50,19,2,1,15,240,63,248, + 60,28,120,14,112,14,112,14,0,14,0,14,0,28,0,120, + 3,240,3,240,0,248,0,30,0,14,0,15,0,7,0,7, + 240,7,240,7,240,14,120,30,60,124,31,248,7,224,17,25, + 75,19,1,0,0,60,0,0,124,0,0,124,0,0,252,0, + 1,220,0,1,220,0,3,156,0,7,28,0,7,28,0,14, + 28,0,28,28,0,60,28,0,56,28,0,112,28,0,240,28, + 0,224,28,0,255,255,128,255,255,128,255,255,128,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,15, + 25,50,19,2,0,127,252,127,252,127,252,112,0,112,0,112, + 0,112,0,112,0,115,240,127,248,124,60,120,28,112,30,96, + 14,0,14,0,14,0,14,0,14,0,14,224,30,240,28,112, + 60,124,120,63,240,15,192,16,25,50,19,1,1,15,240,31, + 252,60,28,120,30,112,14,240,14,224,0,224,0,224,0,227, + 240,231,252,239,252,252,30,248,14,240,15,240,7,240,7,240, + 7,240,7,112,7,120,14,56,14,62,60,15,248,7,224,15, + 25,50,19,2,0,255,254,255,254,0,14,0,30,0,28,0, + 28,0,60,0,56,0,56,0,120,0,112,0,240,0,240,0, + 224,1,224,1,224,1,192,3,192,3,128,7,128,7,128,7, + 0,15,0,15,0,14,0,16,25,50,19,1,1,15,240,63, + 252,60,60,120,30,112,14,112,14,112,14,112,14,56,28,60, + 60,15,240,15,240,62,56,56,28,112,14,224,7,224,7,224, + 7,224,7,224,7,240,15,120,14,60,60,31,248,7,224,16, + 25,50,19,2,1,31,248,63,252,120,30,112,14,240,15,224, + 15,224,15,224,15,224,15,240,15,112,31,120,63,63,247,15, + 231,0,7,0,7,0,7,0,14,112,14,112,14,112,30,112, + 60,60,120,31,240,15,224,3,18,18,9,3,0,224,224,224, + 224,0,0,0,0,0,0,0,0,0,0,224,224,224,224,6, + 22,22,9,1,252,56,56,56,56,0,0,0,0,0,0,0, + 0,0,60,56,56,56,112,112,112,96,224,21,19,57,34,7, + 1,0,0,8,0,0,56,0,1,240,0,15,192,0,62,0, + 1,248,0,7,192,0,62,0,0,248,0,0,192,0,0,248, + 0,0,62,0,0,7,192,0,1,248,0,0,62,0,0,7, + 192,0,1,248,0,0,56,0,0,8,20,8,24,34,7,6, + 255,255,240,255,255,240,0,0,0,0,0,0,0,0,0,0, + 0,0,255,255,240,255,255,240,21,17,51,34,7,2,224,0, + 0,252,0,0,31,0,0,7,224,0,0,248,0,0,31,0, + 0,7,192,0,0,248,0,0,56,0,0,248,0,7,192,0, + 63,0,0,248,0,7,224,0,31,0,0,248,0,0,224,0, + 0,15,25,50,18,1,1,31,224,63,248,125,252,240,30,96, + 14,0,14,0,14,0,30,0,28,0,60,0,120,0,240,1, + 192,3,128,7,128,7,0,7,0,7,0,7,0,0,0,0, + 0,0,0,7,0,7,0,7,0,30,30,120,34,2,251,0, + 31,240,0,0,255,254,0,3,255,255,0,7,224,31,192,15, + 128,3,224,30,0,0,240,60,0,0,112,56,31,56,120,112, + 63,184,56,112,125,248,56,240,112,120,60,224,240,120,28,224, + 224,56,28,224,224,56,28,224,224,56,28,224,224,56,28,224, + 224,56,28,224,224,56,56,240,224,120,56,112,112,120,120,112, + 120,254,240,120,63,223,224,56,31,15,192,60,0,0,0,30, + 0,0,0,15,128,0,0,7,224,0,0,3,255,248,0,0, + 255,248,0,0,31,240,0,24,25,75,26,1,0,0,60,0, + 0,124,0,0,126,0,0,254,0,0,238,0,0,239,0,1, + 231,0,1,199,128,3,195,128,3,131,192,7,131,192,7,1, + 192,7,1,224,15,0,224,14,0,240,31,255,240,31,255,240, + 31,255,248,60,0,56,56,0,60,120,0,28,112,0,30,112, + 0,30,240,0,14,224,0,15,18,25,75,23,3,0,255,248, + 0,255,254,0,255,255,0,224,15,128,224,7,128,224,3,128, + 224,3,128,224,3,128,224,7,128,224,15,0,255,254,0,255, + 252,0,255,254,0,224,15,0,224,3,128,224,3,192,224,1, + 192,224,1,192,224,1,192,224,3,192,224,7,192,224,15,128, + 255,255,0,255,254,0,255,248,0,19,25,75,23,2,1,3, + 254,0,15,255,128,30,3,192,60,1,192,56,0,224,112,0, + 224,112,0,0,112,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,112,0,0,112,0,224,112,0,224,56,1,224,60,1, + 192,31,7,128,15,255,0,1,252,0,20,25,75,25,3,0, + 255,240,0,255,254,0,255,255,0,224,31,128,224,7,192,224, + 3,192,224,1,224,224,0,224,224,0,240,224,0,240,224,0, + 112,224,0,112,224,0,112,224,0,112,224,0,112,224,0,240, + 224,0,240,224,0,224,224,1,224,224,3,192,224,7,192,224, + 31,128,255,255,0,255,252,0,255,240,0,16,25,50,21,3, + 0,255,254,255,254,255,254,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,255,254,255,254,255,254,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,255,255,255, + 255,255,255,15,25,50,20,3,0,255,254,255,254,255,254,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,255, + 252,255,252,255,252,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,21,25,75,26,2, + 1,1,255,128,7,255,192,15,255,224,30,0,240,60,0,120, + 120,0,56,112,0,0,112,0,0,240,0,0,224,0,0,224, + 0,0,224,15,248,224,15,248,224,15,248,224,0,56,240,0, + 56,112,0,56,112,0,56,120,0,56,60,0,56,62,0,56, + 31,0,248,15,255,248,7,255,240,0,255,128,18,25,75,24, + 3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,3,25,25, + 9,3,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,14,25,50,19, + 2,0,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,224,28,224,28,240,60,120,120,127,240, + 63,224,15,192,18,25,75,23,3,0,224,7,128,224,15,0, + 224,30,0,224,60,0,224,120,0,224,240,0,225,224,0,227, + 192,0,231,128,0,239,0,0,254,0,0,255,0,0,239,128, + 0,231,128,0,231,192,0,227,224,0,225,240,0,224,248,0, + 224,120,0,224,60,0,224,62,0,224,31,0,224,15,128,224, + 7,192,224,3,192,15,25,50,19,3,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,255,254,255,254,255,254,25,25,100, + 31,3,0,248,0,15,128,252,0,31,128,252,0,31,128,252, + 0,31,128,238,0,59,128,238,0,59,128,239,0,123,128,231, + 0,115,128,231,0,115,128,231,128,243,128,227,128,227,128,227, + 128,227,128,225,193,195,128,225,193,195,128,225,193,195,128,224, + 227,131,128,224,227,131,128,224,247,131,128,224,119,3,128,224, + 119,3,128,224,127,3,128,224,62,3,128,224,62,3,128,224, + 28,3,128,224,28,3,128,19,25,75,25,3,0,248,0,224, + 248,0,224,252,0,224,254,0,224,254,0,224,239,0,224,239, + 0,224,231,128,224,231,128,224,227,192,224,227,192,224,225,224, + 224,224,224,224,224,240,224,224,120,224,224,120,224,224,60,224, + 224,60,224,224,30,224,224,30,224,224,15,224,224,15,224,224, + 7,224,224,3,224,224,3,224,22,25,75,26,2,1,3,255, + 0,15,255,192,31,255,224,62,1,240,56,0,112,120,0,120, + 112,0,56,240,0,56,240,0,28,224,0,28,224,0,28,224, + 0,28,224,0,28,224,0,28,224,0,28,240,0,60,112,0, + 56,112,0,56,120,0,120,56,0,112,60,0,240,31,3,224, + 15,255,192,7,255,128,0,252,0,16,25,50,21,3,0,255, + 224,255,252,255,254,224,30,224,15,224,7,224,7,224,7,224, + 7,224,15,224,30,255,254,255,252,255,224,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,24,25,75,27,2,1,3,255,0,15,255,192,31,255,224, + 62,1,240,56,0,112,120,0,120,112,0,56,240,0,56,240, + 0,28,224,0,28,224,0,28,224,0,28,224,0,28,224,0, + 28,224,0,28,240,0,60,112,0,56,112,0,56,120,0,120, + 56,0,112,60,0,240,31,3,224,15,255,255,7,255,255,0, + 255,255,17,25,75,21,3,0,255,240,0,255,252,0,255,254, + 0,224,31,0,224,15,0,224,7,0,224,7,0,224,7,0, + 224,15,0,224,30,0,255,252,0,255,240,0,255,252,0,224, + 60,0,224,30,0,224,14,0,224,14,0,224,14,0,224,15, + 0,224,7,0,224,7,0,224,7,0,224,7,0,224,7,0, + 224,7,128,18,25,75,22,2,1,7,252,0,31,254,0,63, + 255,0,120,7,128,112,3,128,112,3,128,112,0,0,112,0, + 0,120,0,0,124,0,0,63,192,0,31,252,0,7,255,0, + 0,63,128,0,7,128,0,3,192,0,1,192,224,1,192,224, + 1,192,240,1,192,112,3,192,124,15,128,63,255,0,31,254, + 0,7,240,0,19,25,75,21,1,0,255,255,224,255,255,224, + 255,255,224,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,19,25,75,25,3,0,224,0,224,224,0, + 224,224,0,224,224,0,224,224,0,224,224,0,224,224,0,224, + 224,0,224,224,0,224,224,0,224,224,0,224,224,0,224,224, + 0,224,224,0,224,224,0,224,224,0,224,224,0,224,240,0, + 224,240,1,224,112,1,192,120,3,192,62,7,192,63,255,128, + 31,255,0,3,248,0,21,25,75,22,1,0,240,0,120,240, + 0,240,240,0,240,120,0,240,120,1,224,120,1,224,60,1, + 192,60,3,192,60,3,192,28,3,128,30,7,128,14,7,128, + 14,7,0,15,15,0,7,15,0,7,14,0,7,158,0,3, + 158,0,3,156,0,3,252,0,1,252,0,1,248,0,1,248, + 0,0,248,0,0,240,0,31,25,100,33,1,0,224,7,192, + 14,240,7,192,14,240,7,192,30,112,7,192,30,112,14,224, + 28,120,14,224,60,120,14,224,60,56,14,240,56,56,28,112, + 56,60,28,112,120,28,28,112,120,28,60,56,112,28,56,56, + 112,30,56,56,240,14,56,56,224,14,112,28,224,14,112,28, + 224,7,112,29,192,7,112,29,192,7,224,15,192,7,224,15, + 192,3,224,15,128,3,224,7,128,3,192,7,128,1,192,7, + 0,22,25,75,24,1,0,124,0,120,60,0,240,30,1,224, + 31,1,224,15,3,192,7,135,128,7,135,128,3,207,0,1, + 238,0,1,254,0,0,252,0,0,120,0,0,252,0,0,252, + 0,1,222,0,3,207,0,3,143,0,7,135,128,15,3,192, + 14,3,192,30,1,224,60,1,240,56,0,240,120,0,120,240, + 0,124,21,25,75,23,1,0,240,0,120,120,0,112,120,0, + 240,60,1,224,30,1,224,30,3,192,15,3,128,15,7,128, + 7,135,0,3,143,0,3,206,0,1,252,0,1,252,0,0, + 248,0,0,120,0,0,112,0,0,112,0,0,112,0,0,112, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + 0,112,0,18,25,75,22,2,0,127,255,192,127,255,192,127, + 255,192,0,3,192,0,7,128,0,15,128,0,31,0,0,30, + 0,0,60,0,0,124,0,0,248,0,0,240,0,1,224,0, + 3,224,0,7,192,0,15,128,0,15,0,0,31,0,0,62, + 0,0,124,0,0,120,0,0,240,0,0,255,255,192,255,255, + 192,255,255,192,7,32,32,14,4,249,254,254,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,254,254,10,28,56,13,2,254, + 192,0,192,0,224,0,224,0,96,0,96,0,112,0,48,0, + 48,0,56,0,56,0,24,0,24,0,28,0,12,0,12,0, + 14,0,6,0,6,0,6,0,7,0,3,0,3,0,3,128, + 1,128,1,128,1,128,1,192,6,32,32,14,4,249,252,252, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,252,252,18,21, + 63,34,8,0,0,192,0,1,224,0,1,224,0,1,224,0, + 3,48,0,3,48,0,2,16,0,6,24,0,6,24,0,12, + 12,0,12,12,0,12,12,0,24,6,0,24,6,0,24,6, + 0,48,3,0,48,3,0,112,1,128,96,1,128,96,1,128, + 192,0,192,17,2,6,17,0,251,255,255,128,255,255,128,6, + 6,6,8,0,21,224,224,112,56,24,12,15,18,36,19,2, + 0,15,240,63,252,60,60,120,30,112,14,0,14,0,14,15, + 254,63,254,124,14,112,14,224,14,224,30,224,30,240,62,120, + 238,63,238,15,142,16,25,50,20,2,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,227,240,239,248,238,124,248, + 30,240,14,240,15,224,7,224,7,224,7,224,7,224,7,224, + 15,240,14,240,14,248,28,254,124,239,248,227,224,14,18,36, + 18,2,0,15,224,63,240,124,120,112,60,112,28,240,28,224, + 0,224,0,224,0,224,0,224,0,224,0,240,28,112,28,112, + 60,60,120,31,240,15,224,16,25,50,20,2,0,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,15,199,31,247,60, + 127,120,31,112,31,112,15,224,15,224,7,224,7,224,7,224, + 7,224,7,112,15,112,15,56,31,62,63,15,247,7,199,16, + 18,36,19,2,0,7,224,31,248,60,124,120,30,112,14,240, + 14,224,14,255,254,255,255,224,0,224,0,224,0,112,14,112, + 14,120,30,62,124,31,248,7,224,11,25,50,12,1,0,7, + 224,15,224,31,32,28,0,28,0,28,0,28,0,255,224,255, + 224,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,16,25,50,20,2,249,7,231,31,247,62,127,120,31,112, + 15,240,15,224,7,224,7,224,7,224,7,224,7,224,7,240, + 15,112,15,120,31,62,127,31,247,15,199,0,7,0,15,112, + 14,120,30,60,60,31,248,7,224,15,25,50,19,2,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,227,240,239, + 248,252,124,248,28,240,30,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,3,25,25,7,2,0,224,224,224,0,0,0,0,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 5,32,32,9,2,249,56,56,56,0,0,0,0,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,240,224,14,25,50,17,2,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,120,224,240,225,224, + 225,192,227,192,231,128,239,0,254,0,254,0,239,0,231,128, + 231,128,227,192,225,224,225,224,224,240,224,120,224,60,3,25, + 25,8,2,0,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,26,18,72, + 30,2,0,227,224,124,0,239,241,255,0,252,123,143,128,248, + 63,3,128,240,30,3,192,224,28,1,192,224,28,1,192,224, + 28,1,192,224,28,1,192,224,28,1,192,224,28,1,192,224, + 28,1,192,224,28,1,192,224,28,1,192,224,28,1,192,224, + 28,1,192,224,28,1,192,224,28,1,192,15,18,36,19,2, + 0,227,240,239,248,252,124,248,30,240,30,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,17,18,54,21,2,0,7,240,0,31,252, + 0,62,62,0,120,15,0,112,7,0,240,7,0,240,7,128, + 224,3,128,224,3,128,224,3,128,224,3,128,240,7,128,240, + 7,128,112,7,0,120,15,0,62,62,0,31,252,0,7,240, + 0,16,25,50,20,2,249,227,240,231,248,254,60,248,30,240, + 14,240,15,224,7,224,7,224,7,224,7,224,7,224,7,240, + 15,240,14,248,30,254,124,239,248,227,240,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,16,25,50,21,2,249,7, + 199,31,247,62,63,120,31,112,15,240,15,224,7,224,7,224, + 7,224,7,224,7,224,7,240,15,112,15,120,31,62,127,31, + 247,7,199,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,10,18,36,12,2,0,231,192,239,192,254,0,248,0,240, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,14,18,36,18,2, + 0,31,192,127,240,120,248,240,56,224,56,224,0,240,0,126, + 0,63,224,15,248,0,252,0,60,0,28,224,28,240,60,120, + 248,63,240,31,192,10,22,44,12,1,1,28,0,28,0,28, + 0,28,0,255,192,255,192,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,30,0,15,192,7,192,15,18,36,19,2,0,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,240,30,240,62,124,126,63,238,31, + 142,16,18,36,18,1,0,224,7,240,7,240,15,112,14,120, + 14,56,30,56,28,60,28,28,56,30,56,14,56,14,112,15, + 112,7,224,7,224,3,224,3,192,3,192,26,18,72,28,1, + 0,224,30,1,192,224,62,3,192,224,63,3,128,112,63,3, + 128,112,119,3,128,112,115,7,0,56,115,135,0,56,115,135, + 0,56,227,142,0,24,225,206,0,28,225,206,0,29,193,206, + 0,29,192,220,0,15,192,252,0,15,128,252,0,15,128,120, + 0,7,128,120,0,7,128,120,0,17,18,54,19,1,0,112, + 7,0,120,14,0,60,30,0,30,28,0,30,56,0,15,112, + 0,7,240,0,3,224,0,3,192,0,3,224,0,7,224,0, + 15,240,0,14,120,0,28,60,0,60,28,0,120,30,0,112, + 15,0,240,7,128,16,25,50,18,1,249,224,7,240,7,112, + 15,112,14,120,14,56,30,60,28,28,28,28,60,30,56,14, + 56,15,112,7,112,7,240,7,224,3,224,3,224,1,192,1, + 192,3,128,3,128,7,128,7,0,7,0,15,0,13,18,36, + 17,2,0,127,248,127,248,0,120,0,112,0,240,1,224,3, + 192,3,192,7,128,15,0,31,0,30,0,60,0,120,0,120, + 0,240,0,255,248,255,248,11,35,70,17,3,248,1,224,3, + 224,7,128,15,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,30,0,28,0,60,0,248,0,240, + 0,248,0,60,0,28,0,30,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,7,0,7,128,3, + 224,1,224,2,37,37,12,5,247,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,11,35, + 70,17,3,248,240,0,248,0,60,0,28,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,15,0, + 7,0,7,128,3,224,1,224,3,224,7,128,7,0,15,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,28,0,60,0,248,0,240,0,18,4,12,18,0,7, + 31,1,192,63,231,128,121,255,0,224,62,0,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0, + 10,0,0,3,25,25,13,5,249,224,224,224,0,0,0,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,14,26,52,19,2,252,0,48,0,48,0,32,0,96, + 15,224,63,240,124,248,112,220,112,156,241,156,225,128,225,128, + 227,0,227,0,227,0,226,0,246,28,118,28,124,60,60,120, + 63,240,15,192,24,0,24,0,16,0,48,0,17,26,78,19, + 1,0,0,64,0,7,252,0,15,254,0,30,15,0,60,7, + 128,56,3,128,56,0,0,56,0,0,56,0,0,56,0,0, + 255,224,0,255,224,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,255,255,0,255,255,0, + 18,19,57,20,1,6,64,0,128,224,1,192,113,227,128,63, + 255,0,31,62,0,28,14,0,24,6,0,48,3,0,48,3, + 0,48,3,0,48,3,0,48,3,0,24,6,0,28,14,0, + 31,62,0,55,251,0,113,225,128,224,1,192,64,0,128,18, + 25,75,20,1,0,240,1,192,112,3,192,120,3,128,56,7, + 128,60,7,0,28,15,0,30,14,0,254,15,192,255,31,192, + 7,28,0,7,184,0,3,184,0,3,240,0,255,255,192,255, + 255,192,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 2,33,33,12,5,249,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,0,0,0,0,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,12,31,62,16,2,251,31,224,63, + 224,56,32,112,0,112,0,112,0,120,0,124,0,62,0,31, + 128,15,192,63,224,120,240,240,112,224,112,224,112,224,240,241, + 224,127,192,63,128,31,128,7,224,1,224,0,240,0,112,0, + 112,0,112,0,240,65,224,127,192,63,128,10,3,6,10,0, + 22,225,192,225,192,225,192,26,25,100,30,2,1,0,255,192, + 0,3,255,240,0,7,128,120,0,14,0,28,0,28,127,14, + 0,57,255,135,0,115,227,195,0,99,129,225,128,103,128,225, + 128,199,0,0,192,199,0,0,192,199,0,0,192,199,0,0, + 192,199,0,0,192,199,0,0,192,199,0,224,128,99,129,225, + 128,99,195,193,128,49,255,131,0,48,127,7,0,24,0,14, + 0,14,0,28,0,7,128,120,0,1,255,224,0,0,127,128, + 0,12,17,34,14,1,8,31,128,63,192,120,224,96,96,0, + 96,7,224,63,224,56,96,96,96,96,96,96,224,113,224,63, + 96,30,96,0,0,0,0,255,240,13,14,28,19,3,2,14, + 56,28,56,56,112,56,224,112,224,113,192,227,192,227,192,113, + 192,112,224,56,224,24,112,28,56,14,56,18,8,24,21,2, + 7,255,255,192,255,255,192,0,0,192,0,0,192,0,0,192, + 0,0,192,0,0,192,0,0,192,255,26,25,100,30,2,1, + 0,255,192,0,3,255,240,0,7,128,120,0,14,255,156,0, + 24,255,206,0,48,193,231,0,112,192,99,0,96,192,97,128, + 96,192,97,128,192,192,192,192,192,255,128,192,192,255,128,192, + 192,193,192,192,192,192,192,192,192,192,192,192,192,192,225,128, + 96,192,97,128,96,192,97,128,48,192,99,0,56,0,7,0, + 28,0,14,0,15,0,60,0,7,193,248,0,1,255,224,0, + 0,127,128,0,10,2,4,10,0,22,255,192,255,192,7,7, + 7,11,2,18,56,196,130,130,130,196,120,20,21,63,34,7, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,255,255,240,255,255,240,0,96,0,0,96,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,96,0,0,0, + 0,0,0,0,0,0,0,0,0,0,255,255,240,255,255,240, + 10,13,26,12,1,13,63,128,127,128,97,192,225,192,1,192, + 3,128,7,128,14,0,28,0,56,0,240,0,255,192,255,192, + 10,14,28,13,2,12,127,128,255,192,193,192,1,192,7,128, + 14,0,15,128,3,192,0,192,192,192,192,192,227,128,127,128, + 62,0,6,6,6,8,2,21,28,60,56,112,96,192,255,16, + 31,62,20,2,250,7,255,31,140,63,140,127,140,255,140,255, + 140,255,140,255,140,255,140,127,140,127,140,31,140,7,140,1, + 140,1,140,1,140,1,140,1,140,1,140,1,140,1,140,1, + 140,1,140,1,140,1,140,1,140,1,140,1,140,1,140,1, + 140,1,140,3,4,4,9,3,10,224,224,224,224,8,9,9, + 9,2,247,32,32,60,62,7,3,135,255,252,5,13,13,10, + 2,12,56,120,248,152,24,24,24,24,24,24,24,24,24,12, + 16,32,14,1,9,31,128,63,192,112,224,224,96,192,112,192, + 48,192,48,192,48,192,112,224,112,112,224,63,192,31,128,0, + 0,0,0,255,240,13,14,28,19,3,2,227,128,225,192,112, + 192,56,224,56,112,28,112,28,56,30,56,28,112,56,112,56, + 224,112,192,225,192,227,128,23,27,81,27,2,0,56,0,192, + 120,1,192,248,1,128,216,3,128,24,3,0,24,7,0,24, + 6,0,24,14,0,24,12,0,24,24,0,24,24,0,24,48, + 0,24,112,0,24,96,112,0,224,112,0,192,240,1,193,176, + 1,129,48,3,131,48,3,6,48,7,12,48,6,15,254,14, + 15,254,12,0,48,24,0,48,24,0,48,48,0,48,23,27, + 81,27,2,0,56,0,224,120,1,192,248,1,128,216,3,128, + 24,3,0,24,7,0,24,6,0,24,14,0,24,12,0,24, + 28,0,24,24,0,24,56,0,24,48,0,24,112,248,0,227, + 252,0,195,142,1,199,6,1,128,6,3,128,14,3,0,12, + 7,0,56,6,0,112,14,0,224,12,3,192,28,7,128,24, + 7,254,48,7,254,24,26,78,27,2,0,0,0,24,127,128, + 56,255,192,112,193,192,96,3,128,224,14,0,192,15,129,192, + 3,193,128,0,195,128,192,199,0,192,198,0,227,142,0,127, + 140,28,62,28,60,0,24,60,0,48,108,0,112,204,0,97, + 204,0,227,140,0,195,12,1,199,255,1,135,255,3,0,12, + 7,0,12,6,0,12,14,0,12,15,25,50,18,2,249,1, + 192,1,192,1,192,0,0,0,0,0,0,1,192,1,192,1, + 192,1,192,3,192,7,128,15,0,62,0,124,0,120,0,240, + 0,224,0,224,0,224,8,240,14,120,60,63,252,31,248,7, + 224,24,35,105,26,1,0,1,192,0,1,224,0,0,224,0, + 0,112,0,0,48,0,0,24,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,60,0,0,124,0,0,126,0,0,254, + 0,0,238,0,0,239,0,1,231,0,1,199,128,3,195,128, + 3,131,192,7,131,192,7,1,192,7,1,224,15,0,224,14, + 0,240,31,255,240,31,255,240,31,255,248,60,0,56,56,0, + 60,120,0,28,112,0,30,112,0,30,240,0,14,224,0,15, + 24,35,105,26,1,0,0,7,128,0,7,0,0,14,0,0, + 12,0,0,28,0,0,24,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,60,0,0,124,0,0,126,0,0,254,0, + 0,238,0,0,239,0,1,231,0,1,199,128,3,195,128,3, + 131,192,7,131,192,7,1,192,7,1,224,15,0,224,14,0, + 240,31,255,240,31,255,240,31,255,248,60,0,56,56,0,60, + 120,0,28,112,0,30,112,0,30,240,0,14,224,0,15,24, + 35,105,26,1,0,0,60,0,0,124,0,0,110,0,0,230, + 0,0,195,0,1,131,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,60,0,0,124,0,0,126,0,0,254,0,0, + 238,0,0,239,0,1,231,0,1,199,128,3,195,128,3,131, + 192,7,131,192,7,1,192,7,1,224,15,0,224,14,0,240, + 31,255,240,31,255,240,31,255,248,60,0,56,56,0,60,120, + 0,28,112,0,30,112,0,30,240,0,14,224,0,15,24,33, + 99,26,1,0,0,241,128,1,255,0,1,159,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,60,0,0, + 124,0,0,126,0,0,254,0,0,238,0,0,239,0,1,231, + 0,1,199,128,3,195,128,3,131,192,7,131,192,7,1,192, + 7,1,224,15,0,224,14,0,240,31,255,240,31,255,240,31, + 255,248,60,0,56,56,0,60,120,0,28,112,0,30,112,0, + 30,240,0,14,224,0,15,25,33,132,25,0,0,0,225,192, + 0,0,225,192,0,0,225,192,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,62,0, + 0,0,62,0,0,0,62,0,0,0,127,0,0,0,119,0, + 0,0,247,128,0,0,227,128,0,0,227,192,0,1,227,192, + 0,1,193,192,0,3,193,224,0,3,128,224,0,7,128,240, + 0,7,0,112,0,7,0,112,0,15,255,248,0,15,255,248, + 0,31,255,252,0,28,0,28,0,28,0,30,0,60,0,14, + 0,56,0,14,0,120,0,15,0,112,0,7,0,240,0,7, + 128,24,36,108,25,1,0,0,56,0,0,196,0,0,130,0, + 0,130,0,0,130,0,0,196,0,0,124,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,60,0,0,124,0,0,126, + 0,0,254,0,0,238,0,0,239,0,1,231,0,1,199,128, + 3,195,128,3,131,128,7,131,192,7,129,192,7,1,224,15, + 0,224,14,0,240,31,255,240,31,255,240,31,255,248,60,0, + 56,56,0,60,120,0,60,120,0,28,112,0,30,240,0,14, + 224,0,15,31,25,100,34,1,0,0,7,255,252,0,15,255, + 252,0,15,255,252,0,31,192,0,0,29,192,0,0,61,192, + 0,0,57,192,0,0,121,192,0,0,241,192,0,0,241,192, + 0,1,225,192,0,1,225,255,252,3,193,255,252,3,193,255, + 252,7,129,192,0,7,255,192,0,15,255,192,0,15,255,192, + 0,30,1,192,0,28,1,192,0,60,1,192,0,56,1,192, + 0,120,1,255,254,112,1,255,254,240,1,255,254,19,33,99, + 23,2,249,3,254,0,15,255,128,30,3,192,60,1,192,56, + 0,224,112,0,224,112,0,0,112,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,112,0,0,112,0,224,112,0,224,56, + 1,224,60,1,192,31,7,128,15,255,0,3,252,0,0,64, + 0,0,120,0,0,124,0,0,30,0,0,6,0,0,6,0, + 1,254,0,1,252,0,16,35,70,21,3,0,28,0,14,0, + 7,0,7,0,3,128,1,128,0,0,0,0,0,0,0,0, + 255,254,255,254,255,254,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,255,254,255,254,255,254,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,255,255,255,255, + 255,255,16,35,70,21,3,0,0,112,0,240,0,224,1,192, + 1,128,3,0,0,0,0,0,0,0,0,0,255,254,255,254, + 255,254,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,255,254,255,254,255,254,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,255,255,255,255,255,255,16,35, + 70,21,3,0,7,192,7,192,14,224,12,96,28,112,24,48, + 0,0,0,0,0,0,0,0,255,254,255,254,255,254,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,255,254, + 255,254,255,254,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,255,255,255,255,255,255,16,33,66,21,3,0, + 28,112,28,112,28,112,0,0,0,0,0,0,0,0,0,0, + 255,254,255,254,255,254,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,255,254,255,254,255,254,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,255,255,255,255, + 255,255,6,35,35,9,0,0,240,112,56,24,28,12,0,0, + 0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,6,35,35,9,3, + 0,28,56,48,112,224,192,0,0,0,0,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,9,35,70,9,0,0,30,0,62,0,55,0, + 115,0,99,128,193,128,0,0,0,0,0,0,0,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 10,33,66,10,0,0,225,192,225,192,225,192,0,0,0,0, + 0,0,0,0,0,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,22,25,75,24,0,0,31,252, + 0,31,255,128,31,255,192,28,7,224,28,0,240,28,0,120, + 28,0,120,28,0,60,28,0,60,28,0,28,28,0,28,255, + 240,28,255,240,28,255,240,28,28,0,28,28,0,28,28,0, + 60,28,0,56,28,0,120,28,0,120,28,0,240,28,7,224, + 31,255,192,31,255,128,31,252,0,19,33,99,25,3,0,3, + 204,0,7,252,0,14,248,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,248,0,224,248,0,224,252,0,224, + 254,0,224,254,0,224,239,0,224,239,0,224,231,128,224,231, + 128,224,227,192,224,227,192,224,225,224,224,224,224,224,224,240, + 224,224,120,224,224,120,224,224,60,224,224,60,224,224,30,224, + 224,30,224,224,15,224,224,15,224,224,7,224,224,3,224,224, + 3,224,22,36,108,26,2,0,3,192,0,1,192,0,0,224, + 0,0,96,0,0,112,0,0,56,0,0,24,0,0,0,0, + 0,0,0,0,0,0,0,0,0,3,255,0,15,255,192,31, + 255,224,62,1,240,56,0,112,120,0,120,112,0,56,240,0, + 56,240,0,28,224,0,28,224,0,28,224,0,28,224,0,28, + 224,0,28,224,0,28,240,0,60,112,0,56,112,0,56,120, + 0,120,56,0,112,60,0,240,31,3,224,15,255,192,7,255, + 128,0,252,0,22,36,108,26,2,0,0,15,0,0,14,0, + 0,28,0,0,24,0,0,56,0,0,112,0,0,96,0,0, + 0,0,0,0,0,0,0,0,0,0,0,3,255,0,15,255, + 192,31,255,224,62,1,240,56,0,112,120,0,120,112,0,56, + 240,0,56,240,0,28,224,0,28,224,0,28,224,0,28,224, + 0,28,224,0,28,224,0,28,240,0,60,112,0,56,112,0, + 56,120,0,120,56,0,112,60,0,240,31,3,224,15,255,192, + 7,255,128,0,252,0,22,36,108,26,2,0,0,120,0,0, + 120,0,0,252,0,0,206,0,1,206,0,3,135,0,3,3, + 0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,0, + 15,255,192,31,255,224,62,1,240,56,0,112,120,0,120,112, + 0,56,240,0,56,240,0,28,224,0,28,224,0,28,224,0, + 28,224,0,28,224,0,28,224,0,28,240,0,60,112,0,56, + 112,0,56,120,0,120,56,0,112,60,0,240,31,3,224,15, + 255,192,7,255,128,0,252,0,22,33,99,26,2,0,1,243, + 0,3,255,0,3,30,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,3,255,0,15,255,192,31,255,224,62, + 1,240,56,0,112,120,0,120,112,0,56,240,0,56,240,0, + 28,224,0,28,224,0,28,224,0,28,224,0,28,224,0,28, + 224,0,28,240,0,60,112,0,56,112,0,56,120,0,120,56, + 0,112,60,0,240,31,3,224,15,255,192,7,255,128,0,252, + 0,22,33,99,26,2,0,1,195,128,1,195,128,1,195,128, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3, + 255,0,15,255,192,31,255,224,62,1,240,56,0,112,120,0, + 120,112,0,56,240,0,56,240,0,28,224,0,28,224,0,28, + 224,0,28,224,0,28,224,0,28,224,0,28,240,0,60,112, + 0,56,112,0,56,120,0,120,56,0,112,60,0,240,31,3, + 224,15,255,192,7,255,128,0,252,0,18,19,57,34,8,1, + 64,0,128,224,1,192,112,3,128,56,7,0,24,6,0,12, + 12,0,6,24,0,3,48,0,1,224,0,0,192,0,1,224, + 0,3,48,0,6,24,0,12,12,0,24,6,0,48,3,0, + 96,1,128,224,1,192,64,0,128,22,31,93,26,2,253,0, + 0,24,0,0,60,0,0,56,3,255,120,15,255,240,31,255, + 240,62,1,240,56,1,240,120,3,248,112,7,184,240,15,60, + 240,15,60,224,30,28,224,60,28,224,60,28,224,120,28,224, + 240,28,224,224,28,241,224,60,115,192,56,115,128,56,127,128, + 120,63,0,112,62,0,240,31,3,224,63,255,192,63,255,128, + 121,252,0,240,0,0,224,0,0,32,0,0,19,36,108,25, + 3,0,7,0,0,3,128,0,3,128,0,1,192,0,0,224, + 0,0,96,0,0,48,0,0,0,0,0,0,0,0,0,0, + 0,0,0,224,0,224,224,0,224,224,0,224,224,0,224,224, + 0,224,224,0,224,224,0,224,224,0,224,224,0,224,224,0, + 224,224,0,224,224,0,224,224,0,224,224,0,224,224,0,224, + 224,0,224,224,0,224,240,0,224,240,1,224,112,1,192,120, + 3,192,62,7,192,63,255,128,31,255,0,3,248,0,19,36, + 108,25,3,0,0,28,0,0,60,0,0,56,0,0,112,0, + 0,96,0,0,192,0,1,192,0,0,0,0,0,0,0,0, + 0,0,0,0,0,224,0,224,224,0,224,224,0,224,224,0, + 224,224,0,224,224,0,224,224,0,224,224,0,224,224,0,224, + 224,0,224,224,0,224,224,0,224,224,0,224,224,0,224,224, + 0,224,224,0,224,224,0,224,240,0,224,240,1,224,112,1, + 192,120,3,192,62,7,192,63,255,128,31,255,0,3,248,0, + 19,36,108,25,3,0,0,224,0,1,240,0,1,240,0,3, + 184,0,3,28,0,6,12,0,6,14,0,0,0,0,0,0, + 0,0,0,0,0,0,0,224,0,224,224,0,224,224,0,224, + 224,0,224,224,0,224,224,0,224,224,0,224,224,0,224,224, + 0,224,224,0,224,224,0,224,224,0,224,224,0,224,224,0, + 224,224,0,224,224,0,224,224,0,224,240,0,224,240,1,224, + 112,1,192,120,3,192,62,7,192,63,255,128,31,255,0,3, + 248,0,19,33,99,25,3,0,7,14,0,7,14,0,7,14, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 224,0,224,224,0,224,224,0,224,224,0,224,224,0,224,224, + 0,224,224,0,224,224,0,224,224,0,224,224,0,224,224,0, + 224,224,0,224,224,0,224,224,0,224,224,0,224,224,0,224, + 224,0,224,240,0,224,240,1,224,112,1,192,120,3,192,62, + 7,192,63,255,128,31,255,0,3,248,0,21,35,105,23,1, + 0,0,14,0,0,30,0,0,28,0,0,56,0,0,48,0, + 0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,240, + 0,120,120,0,112,120,0,240,60,1,224,30,1,224,30,3, + 192,15,3,128,15,7,128,7,135,0,3,143,0,3,206,0, + 1,252,0,1,252,0,0,248,0,0,120,0,0,112,0,0, + 112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112, + 0,0,112,0,0,112,0,0,112,0,16,25,50,21,3,0, + 224,0,224,0,224,0,224,0,255,224,255,252,255,254,224,62, + 224,15,224,7,224,7,224,7,224,7,224,7,224,15,224,62, + 255,254,255,252,255,224,224,0,224,0,224,0,224,0,224,0, + 224,0,17,25,75,19,2,0,7,224,0,31,248,0,126,124, + 0,112,60,0,240,28,0,224,28,0,224,28,0,224,56,0, + 224,248,0,225,224,0,225,192,0,225,192,0,225,224,0,225, + 240,0,224,252,0,224,63,0,224,15,0,224,7,128,224,3, + 128,224,3,128,231,3,128,227,131,128,227,231,128,225,255,0, + 224,124,0,15,27,54,19,2,0,14,0,7,0,3,128,3, + 128,1,192,0,192,0,0,0,0,0,0,15,240,63,252,60, + 60,120,30,112,14,0,14,0,14,15,254,63,254,124,14,112, + 14,224,14,224,30,224,30,240,62,120,238,63,238,15,142,15, + 28,56,19,2,0,0,112,0,224,0,224,1,192,3,128,3, + 0,6,0,0,0,0,0,0,0,15,240,63,252,60,60,120, + 30,112,14,0,14,0,14,15,254,63,254,124,14,112,14,224, + 14,224,30,224,30,240,62,120,238,63,238,15,142,15,28,56, + 19,2,0,3,192,7,192,7,224,14,224,12,112,28,48,24, + 24,0,0,0,0,0,0,15,240,63,252,60,60,120,30,112, + 14,0,14,0,14,15,254,63,254,124,14,112,14,224,14,224, + 30,224,30,240,62,120,238,63,238,15,142,15,25,50,19,2, + 0,15,152,31,240,25,224,0,0,0,0,0,0,0,0,15, + 240,63,252,60,60,120,30,112,14,0,14,0,14,15,254,63, + 254,124,14,112,14,224,14,224,30,224,30,240,62,120,238,63, + 238,15,142,15,25,50,19,2,0,28,56,28,56,28,56,0, + 0,0,0,0,0,0,0,15,240,63,252,60,60,120,30,112, + 14,0,14,0,14,15,254,63,254,124,14,112,14,224,14,224, + 30,224,30,240,62,120,238,63,238,15,142,15,29,58,19,2, + 0,3,128,12,64,8,32,8,32,8,32,12,64,7,192,0, + 0,0,0,0,0,0,0,15,240,63,252,60,124,120,30,112, + 30,0,30,0,30,15,254,63,254,124,14,112,14,224,14,224, + 30,224,30,240,62,120,238,63,238,15,142,27,18,72,31,2, + 0,15,224,126,0,63,241,255,0,124,121,199,128,112,31,129, + 192,112,15,1,192,0,15,0,224,0,14,0,224,15,255,255, + 224,63,255,255,224,124,14,0,0,240,14,0,0,224,14,0, + 0,224,31,0,224,224,27,1,192,240,59,131,192,124,241,239, + 128,63,225,255,128,31,192,126,0,14,26,52,18,2,248,15, + 224,63,248,60,120,112,60,112,28,240,28,224,0,224,0,224, + 0,224,0,224,0,224,0,240,28,112,28,112,60,60,120,31, + 240,7,224,1,0,1,224,1,240,0,120,0,24,0,24,7, + 240,7,224,16,28,56,19,2,0,28,0,14,0,14,0,7, + 0,3,128,1,128,0,192,0,0,0,0,0,0,7,224,31, + 248,60,124,120,30,112,14,240,14,224,14,255,254,255,255,224, + 0,224,0,224,0,112,14,112,14,120,30,62,124,31,248,7, + 224,16,28,56,19,2,0,0,120,0,240,0,224,1,192,1, + 128,3,128,3,0,0,0,0,0,0,0,7,224,31,248,60, + 124,120,30,112,14,240,14,224,14,255,254,255,255,224,0,224, + 0,224,0,112,14,112,14,120,30,62,124,31,248,7,224,16, + 28,56,19,2,0,3,192,7,192,7,224,14,224,12,112,24, + 48,24,24,0,0,0,0,0,0,7,224,31,248,60,124,120, + 30,112,14,240,14,224,14,255,254,255,255,224,0,224,0,224, + 0,112,14,112,14,120,30,62,124,31,248,7,224,16,25,50, + 19,2,0,28,56,28,56,28,56,0,0,0,0,0,0,0, + 0,7,224,31,248,60,60,120,14,112,14,240,14,224,6,255, + 254,255,255,224,0,224,0,224,0,112,14,112,14,120,30,62, + 60,31,248,7,224,6,27,27,8,255,0,240,112,56,24,28, + 12,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,6,27,27,8,2,0,28,56,112,112, + 224,192,0,0,0,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,9,27,54,8,255,0,62,0,62, + 0,119,0,115,0,227,128,193,128,0,0,0,0,0,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,10,25,50,8,255,0,227,192,227,192,227,192,0, + 0,0,0,0,0,0,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,17,26,78,21,2, + 0,16,4,0,56,28,0,30,248,0,7,192,0,15,192,0, + 60,240,0,112,120,0,0,60,0,7,252,0,31,254,0,62, + 63,0,120,15,0,112,7,0,240,7,128,240,3,128,224,3, + 128,224,3,128,224,3,128,224,3,128,224,3,128,240,7,0, + 112,7,0,120,15,0,62,62,0,31,252,0,7,240,0,15, + 25,50,19,2,0,15,48,31,240,27,224,0,0,0,0,0, + 0,0,0,227,240,239,248,252,124,248,30,240,30,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,17,28,84,21,2,0,14,0,0, + 15,0,0,7,0,0,3,128,0,1,128,0,0,192,0,0, + 224,0,0,0,0,0,0,0,0,0,0,7,240,0,31,252, + 0,62,62,0,120,15,0,112,7,0,240,7,0,240,7,128, + 224,3,128,224,3,128,224,3,128,224,3,128,240,7,128,240, + 7,128,112,7,0,120,15,0,62,62,0,31,252,0,7,240, + 0,17,28,84,21,2,0,0,56,0,0,120,0,0,112,0, + 0,224,0,0,192,0,1,128,0,3,0,0,0,0,0,0, + 0,0,0,0,0,7,240,0,31,252,0,62,62,0,120,15, + 0,112,7,0,240,7,0,240,7,128,224,3,128,224,3,128, + 224,3,128,224,3,128,240,7,128,240,7,128,112,7,0,120, + 15,0,62,62,0,31,252,0,7,240,0,17,28,84,21,2, + 0,1,192,0,3,224,0,3,224,0,7,112,0,14,56,0, + 12,24,0,28,28,0,0,0,0,0,0,0,0,0,0,7, + 240,0,31,252,0,62,62,0,120,15,0,112,7,0,240,7, + 0,240,7,128,224,3,128,224,3,128,224,3,128,224,3,128, + 240,7,128,240,7,128,112,7,0,120,15,0,62,62,0,31, + 252,0,7,240,0,17,25,75,21,2,0,7,152,0,15,248, + 0,12,240,0,0,0,0,0,0,0,0,0,0,0,0,0, + 7,240,0,31,252,0,62,62,0,120,15,0,112,7,0,240, + 7,0,240,7,128,224,3,128,224,3,128,224,3,128,224,3, + 128,240,7,128,240,7,128,112,7,0,120,15,0,62,62,0, + 31,252,0,7,240,0,17,25,75,21,2,0,28,56,0,28, + 56,0,28,56,0,0,0,0,0,0,0,0,0,0,0,0, + 0,7,240,0,31,252,0,62,62,0,120,15,0,112,7,0, + 240,7,0,240,7,128,224,3,128,224,3,128,224,3,128,224, + 3,128,240,7,128,240,7,128,112,7,0,120,15,0,62,62, + 0,31,252,0,7,240,0,20,15,45,34,7,3,0,96,0, + 0,240,0,0,240,0,0,96,0,0,0,0,0,0,0,0, + 0,0,255,255,240,255,255,240,0,0,0,0,0,0,0,96, + 0,0,240,0,0,240,0,0,96,0,17,23,69,21,2,254, + 0,1,0,0,1,128,0,3,128,7,247,0,31,254,0,62, + 62,0,120,31,0,112,63,0,240,55,128,240,119,128,224,227, + 128,225,195,128,225,131,128,227,131,128,231,7,128,254,7,128, + 124,7,0,124,15,0,62,62,0,127,252,0,103,240,0,224, + 0,0,192,0,0,15,28,56,19,2,0,28,0,30,0,14, + 0,7,0,3,0,1,128,1,128,0,0,0,0,0,0,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,240,30,240,30,124,126,63, + 238,31,142,15,28,56,19,2,0,0,112,0,240,0,224,1, + 192,1,128,3,0,7,0,0,0,0,0,0,0,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,240,30,240,30,124,126,63,238,31, + 142,15,28,56,19,2,0,3,128,7,192,7,192,14,224,12, + 96,24,48,24,48,0,0,0,0,0,0,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,240,30,240,30,124,126,63,238,31,142,15, + 25,50,19,2,0,56,112,56,112,56,112,0,0,0,0,0, + 0,0,0,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,240,30,240, + 62,124,126,63,238,31,142,16,34,68,18,1,249,0,56,0, + 112,0,96,0,224,1,192,1,128,0,0,0,0,0,0,224, + 7,240,7,112,15,112,14,120,14,56,30,60,28,28,28,28, + 60,30,56,14,120,15,112,7,112,7,240,7,224,3,224,3, + 224,1,192,1,192,3,128,3,128,231,128,255,0,127,0,62, + 0,16,32,64,20,2,249,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,227,240,231,248,254,60,248,30,240,14,240, + 15,224,7,224,7,224,7,224,7,224,7,224,7,240,15,240, + 14,248,30,254,124,239,248,227,240,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,16,32,64,18,1,249,28,56,28, + 56,28,56,0,0,0,0,0,0,0,0,224,7,224,7,240, + 15,112,14,120,14,56,30,60,28,60,28,28,56,30,56,14, + 120,15,112,15,112,7,240,7,224,3,224,3,192,3,192,3, + 192,3,128,3,128,7,128,7,0,7,0,15,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--34-340-72-72-P-161-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 25 + Calculated Max Values w=20 h=28 x= 7 y=12 dx=34 dy= 0 ascent=26 len=75 + Font Bounding box w=46 h=45 x=-2 y=-9 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =25 descent= 0 + X Font ascent =25 descent= 0 + Max Font ascent =26 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur25n[774] U8G_SECTION(".progmem.u8g_font_fur25n") = { + 0,46,45,254,247,25,0,0,0,0,42,57,0,26,252,25, + 0,14,13,26,22,4,12,24,96,28,224,28,224,12,192,7, + 128,243,60,255,252,231,156,7,128,12,192,28,224,60,224,24, + 96,20,21,63,34,7,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,96,0,0,96,0,0, + 96,0,255,255,240,255,255,240,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,6,9,9,9,2,252,60,120,120,112, + 112,224,224,224,192,8,3,3,10,1,7,255,255,255,3,4, + 4,9,3,0,224,224,224,224,10,28,56,13,2,254,0,192, + 1,192,1,128,1,128,3,128,3,0,3,0,3,0,7,0, + 6,0,6,0,14,0,12,0,12,0,28,0,28,0,24,0, + 24,0,56,0,48,0,48,0,112,0,112,0,96,0,96,0, + 224,0,192,0,192,0,15,25,50,19,2,1,15,224,63,248, + 62,248,120,60,112,28,112,30,224,14,224,14,224,14,224,14, + 224,14,224,14,224,14,224,14,224,14,224,14,224,14,240,14, + 112,30,112,28,120,28,60,60,63,248,31,240,7,192,8,25, + 25,19,5,0,15,31,63,127,255,231,135,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,7,7,15,25,50, + 19,2,1,15,240,63,248,62,252,120,28,120,30,112,14,240, + 14,0,14,0,30,0,28,0,60,0,120,0,120,0,240,1, + 224,3,192,7,128,15,0,31,0,62,0,60,0,120,0,240, + 0,255,254,255,254,16,25,50,19,2,1,15,240,63,248,60, + 28,120,14,112,14,112,14,0,14,0,14,0,28,0,120,3, + 240,3,240,0,248,0,30,0,14,0,15,0,7,0,7,240, + 7,240,7,240,14,120,30,60,124,31,248,7,224,17,25,75, + 19,1,0,0,60,0,0,124,0,0,124,0,0,252,0,1, + 220,0,1,220,0,3,156,0,7,28,0,7,28,0,14,28, + 0,28,28,0,60,28,0,56,28,0,112,28,0,240,28,0, + 224,28,0,255,255,128,255,255,128,255,255,128,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,15,25, + 50,19,2,0,127,252,127,252,127,252,112,0,112,0,112,0, + 112,0,112,0,115,240,127,248,124,60,120,28,112,30,96,14, + 0,14,0,14,0,14,0,14,0,14,224,30,240,28,112,60, + 124,120,63,240,15,192,16,25,50,19,1,1,15,240,31,252, + 60,28,120,30,112,14,240,14,224,0,224,0,224,0,227,240, + 231,252,239,252,252,30,248,14,240,15,240,7,240,7,240,7, + 240,7,112,7,120,14,56,14,62,60,15,248,7,224,15,25, + 50,19,2,0,255,254,255,254,0,14,0,30,0,28,0,28, + 0,60,0,56,0,56,0,120,0,112,0,240,0,240,0,224, + 1,224,1,224,1,192,3,192,3,128,7,128,7,128,7,0, + 15,0,15,0,14,0,16,25,50,19,1,1,15,240,63,252, + 60,60,120,30,112,14,112,14,112,14,112,14,56,28,60,60, + 15,240,15,240,62,56,56,28,112,14,224,7,224,7,224,7, + 224,7,224,7,240,15,120,14,60,60,31,248,7,224,16,25, + 50,19,2,1,31,248,63,252,120,30,112,14,240,15,224,15, + 224,15,224,15,224,15,240,15,112,31,120,63,63,247,15,231, + 0,7,0,7,0,7,0,14,112,14,112,14,112,30,112,60, + 60,120,31,240,15,224}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--34-340-72-72-P-161-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 25, '1' Height: 25 + Calculated Max Values w=31 h=37 x= 8 y=21 dx=34 dy= 0 ascent=28 len=120 + Font Bounding box w=46 h=45 x=-2 y=-9 + Calculated Min Values x= 0 y=-9 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =28 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur25r[5389] U8G_SECTION(".progmem.u8g_font_fur25r") = { + 0,46,45,254,247,25,6,119,15,27,32,127,249,28,247,25, + 249,0,0,0,10,0,0,3,25,25,12,4,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 0,0,0,224,224,224,11,10,20,15,2,15,241,224,112,224, + 112,224,112,224,112,224,112,224,112,224,96,192,96,192,96,192, + 22,25,75,25,2,0,0,112,224,0,112,224,0,96,192,0, + 225,192,0,225,192,0,193,128,0,193,128,63,255,252,63,255, + 248,1,131,0,3,135,0,3,134,0,3,6,0,7,14,0, + 255,255,224,255,255,224,14,28,0,14,28,0,12,24,0,12, + 24,0,28,56,0,28,56,0,24,48,0,56,112,0,56,112, + 0,16,32,64,18,1,252,1,128,1,128,1,128,15,240,31, + 248,63,252,121,158,113,142,113,142,113,142,113,128,113,128,121, + 128,63,128,31,240,15,252,1,254,1,159,1,143,1,135,225, + 135,225,135,225,135,241,135,121,143,127,254,63,252,15,240,1, + 128,1,128,1,128,1,128,28,27,108,32,2,0,0,0,14, + 0,0,0,12,0,31,128,24,0,63,192,24,0,121,224,48, + 0,240,240,48,0,224,112,96,0,224,112,224,0,224,112,192, + 0,224,113,192,0,240,113,128,0,112,227,128,0,63,227,0, + 0,31,134,31,128,0,6,63,192,0,12,121,224,0,12,240, + 240,0,24,224,112,0,56,224,112,0,48,224,112,0,112,224, + 112,0,96,224,112,0,224,224,112,0,192,240,240,1,128,121, + 224,1,128,63,192,3,0,31,128,23,25,75,26,2,1,7, + 248,0,15,252,0,30,30,0,28,14,0,28,14,0,28,14, + 0,30,28,0,30,60,0,15,248,0,7,224,0,15,192,112, + 31,224,112,61,224,112,120,240,112,240,120,112,224,60,112,224, + 30,224,224,15,224,224,7,224,240,3,192,120,3,224,124,15, + 240,63,255,120,31,252,124,7,240,62,4,10,10,13,4,15, + 240,112,112,112,112,112,112,96,96,96,6,30,30,12,3,251, + 12,24,24,56,56,112,112,112,112,240,224,224,224,224,224,224, + 224,224,224,224,240,112,112,112,112,56,56,24,24,12,6,30, + 30,12,3,251,224,96,112,112,48,56,56,56,56,28,28,28, + 28,28,28,28,28,28,28,28,28,60,56,56,56,48,112,112, + 96,224,14,13,26,22,4,12,24,96,28,224,28,224,12,192, + 7,128,243,60,255,252,231,156,7,128,12,192,28,224,60,224, + 24,96,20,21,63,34,7,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,255,255,240,255,255,240,0,96,0,0,96,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,6,9,9,9,2,252,60,120,120, + 112,112,224,224,224,192,8,3,3,10,1,7,255,255,255,3, + 4,4,9,3,0,224,224,224,224,10,28,56,13,2,254,0, + 192,1,192,1,128,1,128,3,128,3,0,3,0,3,0,7, + 0,6,0,6,0,14,0,12,0,12,0,28,0,28,0,24, + 0,24,0,56,0,48,0,48,0,112,0,112,0,96,0,96, + 0,224,0,192,0,192,0,15,25,50,19,2,1,15,224,63, + 248,62,248,120,60,112,28,112,30,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,240, + 14,112,30,112,28,120,28,60,60,63,248,31,240,7,192,8, + 25,25,19,5,0,15,31,63,127,255,231,135,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,15,25, + 50,19,2,1,15,240,63,248,62,252,120,28,120,30,112,14, + 240,14,0,14,0,30,0,28,0,60,0,120,0,120,0,240, + 1,224,3,192,7,128,15,0,31,0,62,0,60,0,120,0, + 240,0,255,254,255,254,16,25,50,19,2,1,15,240,63,248, + 60,28,120,14,112,14,112,14,0,14,0,14,0,28,0,120, + 3,240,3,240,0,248,0,30,0,14,0,15,0,7,0,7, + 240,7,240,7,240,14,120,30,60,124,31,248,7,224,17,25, + 75,19,1,0,0,60,0,0,124,0,0,124,0,0,252,0, + 1,220,0,1,220,0,3,156,0,7,28,0,7,28,0,14, + 28,0,28,28,0,60,28,0,56,28,0,112,28,0,240,28, + 0,224,28,0,255,255,128,255,255,128,255,255,128,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,15, + 25,50,19,2,0,127,252,127,252,127,252,112,0,112,0,112, + 0,112,0,112,0,115,240,127,248,124,60,120,28,112,30,96, + 14,0,14,0,14,0,14,0,14,0,14,224,30,240,28,112, + 60,124,120,63,240,15,192,16,25,50,19,1,1,15,240,31, + 252,60,28,120,30,112,14,240,14,224,0,224,0,224,0,227, + 240,231,252,239,252,252,30,248,14,240,15,240,7,240,7,240, + 7,240,7,112,7,120,14,56,14,62,60,15,248,7,224,15, + 25,50,19,2,0,255,254,255,254,0,14,0,30,0,28,0, + 28,0,60,0,56,0,56,0,120,0,112,0,240,0,240,0, + 224,1,224,1,224,1,192,3,192,3,128,7,128,7,128,7, + 0,15,0,15,0,14,0,16,25,50,19,1,1,15,240,63, + 252,60,60,120,30,112,14,112,14,112,14,112,14,56,28,60, + 60,15,240,15,240,62,56,56,28,112,14,224,7,224,7,224, + 7,224,7,224,7,240,15,120,14,60,60,31,248,7,224,16, + 25,50,19,2,1,31,248,63,252,120,30,112,14,240,15,224, + 15,224,15,224,15,224,15,240,15,112,31,120,63,63,247,15, + 231,0,7,0,7,0,7,0,14,112,14,112,14,112,30,112, + 60,60,120,31,240,15,224,3,18,18,9,3,0,224,224,224, + 224,0,0,0,0,0,0,0,0,0,0,224,224,224,224,6, + 22,22,9,1,252,56,56,56,56,0,0,0,0,0,0,0, + 0,0,60,56,56,56,112,112,112,96,224,21,19,57,34,7, + 1,0,0,8,0,0,56,0,1,240,0,15,192,0,62,0, + 1,248,0,7,192,0,62,0,0,248,0,0,192,0,0,248, + 0,0,62,0,0,7,192,0,1,248,0,0,62,0,0,7, + 192,0,1,248,0,0,56,0,0,8,20,8,24,34,7,6, + 255,255,240,255,255,240,0,0,0,0,0,0,0,0,0,0, + 0,0,255,255,240,255,255,240,21,17,51,34,7,2,224,0, + 0,252,0,0,31,0,0,7,224,0,0,248,0,0,31,0, + 0,7,192,0,0,248,0,0,56,0,0,248,0,7,192,0, + 63,0,0,248,0,7,224,0,31,0,0,248,0,0,224,0, + 0,15,25,50,18,1,1,31,224,63,248,125,252,240,30,96, + 14,0,14,0,14,0,30,0,28,0,60,0,120,0,240,1, + 192,3,128,7,128,7,0,7,0,7,0,7,0,0,0,0, + 0,0,0,7,0,7,0,7,0,30,30,120,34,2,251,0, + 31,240,0,0,255,254,0,3,255,255,0,7,224,31,192,15, + 128,3,224,30,0,0,240,60,0,0,112,56,31,56,120,112, + 63,184,56,112,125,248,56,240,112,120,60,224,240,120,28,224, + 224,56,28,224,224,56,28,224,224,56,28,224,224,56,28,224, + 224,56,28,224,224,56,56,240,224,120,56,112,112,120,120,112, + 120,254,240,120,63,223,224,56,31,15,192,60,0,0,0,30, + 0,0,0,15,128,0,0,7,224,0,0,3,255,248,0,0, + 255,248,0,0,31,240,0,24,25,75,26,1,0,0,60,0, + 0,124,0,0,126,0,0,254,0,0,238,0,0,239,0,1, + 231,0,1,199,128,3,195,128,3,131,192,7,131,192,7,1, + 192,7,1,224,15,0,224,14,0,240,31,255,240,31,255,240, + 31,255,248,60,0,56,56,0,60,120,0,28,112,0,30,112, + 0,30,240,0,14,224,0,15,18,25,75,23,3,0,255,248, + 0,255,254,0,255,255,0,224,15,128,224,7,128,224,3,128, + 224,3,128,224,3,128,224,7,128,224,15,0,255,254,0,255, + 252,0,255,254,0,224,15,0,224,3,128,224,3,192,224,1, + 192,224,1,192,224,1,192,224,3,192,224,7,192,224,15,128, + 255,255,0,255,254,0,255,248,0,19,25,75,23,2,1,3, + 254,0,15,255,128,30,3,192,60,1,192,56,0,224,112,0, + 224,112,0,0,112,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,112,0,0,112,0,224,112,0,224,56,1,224,60,1, + 192,31,7,128,15,255,0,1,252,0,20,25,75,25,3,0, + 255,240,0,255,254,0,255,255,0,224,31,128,224,7,192,224, + 3,192,224,1,224,224,0,224,224,0,240,224,0,240,224,0, + 112,224,0,112,224,0,112,224,0,112,224,0,112,224,0,240, + 224,0,240,224,0,224,224,1,224,224,3,192,224,7,192,224, + 31,128,255,255,0,255,252,0,255,240,0,16,25,50,21,3, + 0,255,254,255,254,255,254,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,255,254,255,254,255,254,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,255,255,255, + 255,255,255,15,25,50,20,3,0,255,254,255,254,255,254,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,255, + 252,255,252,255,252,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,21,25,75,26,2, + 1,1,255,128,7,255,192,15,255,224,30,0,240,60,0,120, + 120,0,56,112,0,0,112,0,0,240,0,0,224,0,0,224, + 0,0,224,15,248,224,15,248,224,15,248,224,0,56,240,0, + 56,112,0,56,112,0,56,120,0,56,60,0,56,62,0,56, + 31,0,248,15,255,248,7,255,240,0,255,128,18,25,75,24, + 3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,3,25,25, + 9,3,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,14,25,50,19, + 2,0,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,224,28,224,28,240,60,120,120,127,240, + 63,224,15,192,18,25,75,23,3,0,224,7,128,224,15,0, + 224,30,0,224,60,0,224,120,0,224,240,0,225,224,0,227, + 192,0,231,128,0,239,0,0,254,0,0,255,0,0,239,128, + 0,231,128,0,231,192,0,227,224,0,225,240,0,224,248,0, + 224,120,0,224,60,0,224,62,0,224,31,0,224,15,128,224, + 7,192,224,3,192,15,25,50,19,3,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,255,254,255,254,255,254,25,25,100, + 31,3,0,248,0,15,128,252,0,31,128,252,0,31,128,252, + 0,31,128,238,0,59,128,238,0,59,128,239,0,123,128,231, + 0,115,128,231,0,115,128,231,128,243,128,227,128,227,128,227, + 128,227,128,225,193,195,128,225,193,195,128,225,193,195,128,224, + 227,131,128,224,227,131,128,224,247,131,128,224,119,3,128,224, + 119,3,128,224,127,3,128,224,62,3,128,224,62,3,128,224, + 28,3,128,224,28,3,128,19,25,75,25,3,0,248,0,224, + 248,0,224,252,0,224,254,0,224,254,0,224,239,0,224,239, + 0,224,231,128,224,231,128,224,227,192,224,227,192,224,225,224, + 224,224,224,224,224,240,224,224,120,224,224,120,224,224,60,224, + 224,60,224,224,30,224,224,30,224,224,15,224,224,15,224,224, + 7,224,224,3,224,224,3,224,22,25,75,26,2,1,3,255, + 0,15,255,192,31,255,224,62,1,240,56,0,112,120,0,120, + 112,0,56,240,0,56,240,0,28,224,0,28,224,0,28,224, + 0,28,224,0,28,224,0,28,224,0,28,240,0,60,112,0, + 56,112,0,56,120,0,120,56,0,112,60,0,240,31,3,224, + 15,255,192,7,255,128,0,252,0,16,25,50,21,3,0,255, + 224,255,252,255,254,224,30,224,15,224,7,224,7,224,7,224, + 7,224,15,224,30,255,254,255,252,255,224,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,24,25,75,27,2,1,3,255,0,15,255,192,31,255,224, + 62,1,240,56,0,112,120,0,120,112,0,56,240,0,56,240, + 0,28,224,0,28,224,0,28,224,0,28,224,0,28,224,0, + 28,224,0,28,240,0,60,112,0,56,112,0,56,120,0,120, + 56,0,112,60,0,240,31,3,224,15,255,255,7,255,255,0, + 255,255,17,25,75,21,3,0,255,240,0,255,252,0,255,254, + 0,224,31,0,224,15,0,224,7,0,224,7,0,224,7,0, + 224,15,0,224,30,0,255,252,0,255,240,0,255,252,0,224, + 60,0,224,30,0,224,14,0,224,14,0,224,14,0,224,15, + 0,224,7,0,224,7,0,224,7,0,224,7,0,224,7,0, + 224,7,128,18,25,75,22,2,1,7,252,0,31,254,0,63, + 255,0,120,7,128,112,3,128,112,3,128,112,0,0,112,0, + 0,120,0,0,124,0,0,63,192,0,31,252,0,7,255,0, + 0,63,128,0,7,128,0,3,192,0,1,192,224,1,192,224, + 1,192,240,1,192,112,3,192,124,15,128,63,255,0,31,254, + 0,7,240,0,19,25,75,21,1,0,255,255,224,255,255,224, + 255,255,224,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,19,25,75,25,3,0,224,0,224,224,0, + 224,224,0,224,224,0,224,224,0,224,224,0,224,224,0,224, + 224,0,224,224,0,224,224,0,224,224,0,224,224,0,224,224, + 0,224,224,0,224,224,0,224,224,0,224,224,0,224,240,0, + 224,240,1,224,112,1,192,120,3,192,62,7,192,63,255,128, + 31,255,0,3,248,0,21,25,75,22,1,0,240,0,120,240, + 0,240,240,0,240,120,0,240,120,1,224,120,1,224,60,1, + 192,60,3,192,60,3,192,28,3,128,30,7,128,14,7,128, + 14,7,0,15,15,0,7,15,0,7,14,0,7,158,0,3, + 158,0,3,156,0,3,252,0,1,252,0,1,248,0,1,248, + 0,0,248,0,0,240,0,31,25,100,33,1,0,224,7,192, + 14,240,7,192,14,240,7,192,30,112,7,192,30,112,14,224, + 28,120,14,224,60,120,14,224,60,56,14,240,56,56,28,112, + 56,60,28,112,120,28,28,112,120,28,60,56,112,28,56,56, + 112,30,56,56,240,14,56,56,224,14,112,28,224,14,112,28, + 224,7,112,29,192,7,112,29,192,7,224,15,192,7,224,15, + 192,3,224,15,128,3,224,7,128,3,192,7,128,1,192,7, + 0,22,25,75,24,1,0,124,0,120,60,0,240,30,1,224, + 31,1,224,15,3,192,7,135,128,7,135,128,3,207,0,1, + 238,0,1,254,0,0,252,0,0,120,0,0,252,0,0,252, + 0,1,222,0,3,207,0,3,143,0,7,135,128,15,3,192, + 14,3,192,30,1,224,60,1,240,56,0,240,120,0,120,240, + 0,124,21,25,75,23,1,0,240,0,120,120,0,112,120,0, + 240,60,1,224,30,1,224,30,3,192,15,3,128,15,7,128, + 7,135,0,3,143,0,3,206,0,1,252,0,1,252,0,0, + 248,0,0,120,0,0,112,0,0,112,0,0,112,0,0,112, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + 0,112,0,18,25,75,22,2,0,127,255,192,127,255,192,127, + 255,192,0,3,192,0,7,128,0,15,128,0,31,0,0,30, + 0,0,60,0,0,124,0,0,248,0,0,240,0,1,224,0, + 3,224,0,7,192,0,15,128,0,15,0,0,31,0,0,62, + 0,0,124,0,0,120,0,0,240,0,0,255,255,192,255,255, + 192,255,255,192,7,32,32,14,4,249,254,254,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,254,254,10,28,56,13,2,254, + 192,0,192,0,224,0,224,0,96,0,96,0,112,0,48,0, + 48,0,56,0,56,0,24,0,24,0,28,0,12,0,12,0, + 14,0,6,0,6,0,6,0,7,0,3,0,3,0,3,128, + 1,128,1,128,1,128,1,192,6,32,32,14,4,249,252,252, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,252,252,18,21, + 63,34,8,0,0,192,0,1,224,0,1,224,0,1,224,0, + 3,48,0,3,48,0,2,16,0,6,24,0,6,24,0,12, + 12,0,12,12,0,12,12,0,24,6,0,24,6,0,24,6, + 0,48,3,0,48,3,0,112,1,128,96,1,128,96,1,128, + 192,0,192,17,2,6,17,0,251,255,255,128,255,255,128,6, + 6,6,8,0,21,224,224,112,56,24,12,15,18,36,19,2, + 0,15,240,63,252,60,60,120,30,112,14,0,14,0,14,15, + 254,63,254,124,14,112,14,224,14,224,30,224,30,240,62,120, + 238,63,238,15,142,16,25,50,20,2,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,227,240,239,248,238,124,248, + 30,240,14,240,15,224,7,224,7,224,7,224,7,224,7,224, + 15,240,14,240,14,248,28,254,124,239,248,227,224,14,18,36, + 18,2,0,15,224,63,240,124,120,112,60,112,28,240,28,224, + 0,224,0,224,0,224,0,224,0,224,0,240,28,112,28,112, + 60,60,120,31,240,15,224,16,25,50,20,2,0,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,15,199,31,247,60, + 127,120,31,112,31,112,15,224,15,224,7,224,7,224,7,224, + 7,224,7,112,15,112,15,56,31,62,63,15,247,7,199,16, + 18,36,19,2,0,7,224,31,248,60,124,120,30,112,14,240, + 14,224,14,255,254,255,255,224,0,224,0,224,0,112,14,112, + 14,120,30,62,124,31,248,7,224,11,25,50,12,1,0,7, + 224,15,224,31,32,28,0,28,0,28,0,28,0,255,224,255, + 224,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,16,25,50,20,2,249,7,231,31,247,62,127,120,31,112, + 15,240,15,224,7,224,7,224,7,224,7,224,7,224,7,240, + 15,112,15,120,31,62,127,31,247,15,199,0,7,0,15,112, + 14,120,30,60,60,31,248,7,224,15,25,50,19,2,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,227,240,239, + 248,252,124,248,28,240,30,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,3,25,25,7,2,0,224,224,224,0,0,0,0,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 5,32,32,9,2,249,56,56,56,0,0,0,0,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,240,224,14,25,50,17,2,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,120,224,240,225,224, + 225,192,227,192,231,128,239,0,254,0,254,0,239,0,231,128, + 231,128,227,192,225,224,225,224,224,240,224,120,224,60,3,25, + 25,8,2,0,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,26,18,72, + 30,2,0,227,224,124,0,239,241,255,0,252,123,143,128,248, + 63,3,128,240,30,3,192,224,28,1,192,224,28,1,192,224, + 28,1,192,224,28,1,192,224,28,1,192,224,28,1,192,224, + 28,1,192,224,28,1,192,224,28,1,192,224,28,1,192,224, + 28,1,192,224,28,1,192,224,28,1,192,15,18,36,19,2, + 0,227,240,239,248,252,124,248,30,240,30,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,17,18,54,21,2,0,7,240,0,31,252, + 0,62,62,0,120,15,0,112,7,0,240,7,0,240,7,128, + 224,3,128,224,3,128,224,3,128,224,3,128,240,7,128,240, + 7,128,112,7,0,120,15,0,62,62,0,31,252,0,7,240, + 0,16,25,50,20,2,249,227,240,231,248,254,60,248,30,240, + 14,240,15,224,7,224,7,224,7,224,7,224,7,224,7,240, + 15,240,14,248,30,254,124,239,248,227,240,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,16,25,50,21,2,249,7, + 199,31,247,62,63,120,31,112,15,240,15,224,7,224,7,224, + 7,224,7,224,7,224,7,240,15,112,15,120,31,62,127,31, + 247,7,199,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,10,18,36,12,2,0,231,192,239,192,254,0,248,0,240, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,14,18,36,18,2, + 0,31,192,127,240,120,248,240,56,224,56,224,0,240,0,126, + 0,63,224,15,248,0,252,0,60,0,28,224,28,240,60,120, + 248,63,240,31,192,10,22,44,12,1,1,28,0,28,0,28, + 0,28,0,255,192,255,192,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,30,0,15,192,7,192,15,18,36,19,2,0,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,240,30,240,62,124,126,63,238,31, + 142,16,18,36,18,1,0,224,7,240,7,240,15,112,14,120, + 14,56,30,56,28,60,28,28,56,30,56,14,56,14,112,15, + 112,7,224,7,224,3,224,3,192,3,192,26,18,72,28,1, + 0,224,30,1,192,224,62,3,192,224,63,3,128,112,63,3, + 128,112,119,3,128,112,115,7,0,56,115,135,0,56,115,135, + 0,56,227,142,0,24,225,206,0,28,225,206,0,29,193,206, + 0,29,192,220,0,15,192,252,0,15,128,252,0,15,128,120, + 0,7,128,120,0,7,128,120,0,17,18,54,19,1,0,112, + 7,0,120,14,0,60,30,0,30,28,0,30,56,0,15,112, + 0,7,240,0,3,224,0,3,192,0,3,224,0,7,224,0, + 15,240,0,14,120,0,28,60,0,60,28,0,120,30,0,112, + 15,0,240,7,128,16,25,50,18,1,249,224,7,240,7,112, + 15,112,14,120,14,56,30,60,28,28,28,28,60,30,56,14, + 56,15,112,7,112,7,240,7,224,3,224,3,224,1,192,1, + 192,3,128,3,128,7,128,7,0,7,0,15,0,13,18,36, + 17,2,0,127,248,127,248,0,120,0,112,0,240,1,224,3, + 192,3,192,7,128,15,0,31,0,30,0,60,0,120,0,120, + 0,240,0,255,248,255,248,11,35,70,17,3,248,1,224,3, + 224,7,128,15,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,30,0,28,0,60,0,248,0,240, + 0,248,0,60,0,28,0,30,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,7,0,7,128,3, + 224,1,224,2,37,37,12,5,247,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,11,35, + 70,17,3,248,240,0,248,0,60,0,28,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,15,0, + 7,0,7,128,3,224,1,224,3,224,7,128,7,0,15,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,28,0,60,0,248,0,240,0,18,4,12,18,0,7, + 31,1,192,63,231,128,121,255,0,224,62,0,255}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--40-400-72-72-P-189-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 30, '1' Height: 30 + Calculated Max Values w=37 h=43 x=10 y=26 dx=40 dy= 0 ascent=43 len=185 + Font Bounding box w=54 h=54 x=-3 y=-11 + Calculated Min Values x=-1 y=-11 dx= 0 dy= 0 + Pure Font ascent =30 descent=-7 + X Font ascent =31 descent=-8 + Max Font ascent =43 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur30[16505] U8G_SECTION(".progmem.u8g_font_fur30") = { + 0,54,54,253,245,30,9,94,20,223,32,255,249,43,245,31, + 248,0,0,0,12,0,0,4,30,30,14,5,0,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,0,0,0,240,240,240,240,12,12,24,18,3, + 18,240,240,240,240,240,240,240,240,240,240,240,240,240,112,224, + 112,224,112,96,112,96,112,96,96,26,30,120,30,2,0,0, + 28,14,0,0,28,28,0,0,28,28,0,0,28,28,0,0, + 56,24,0,0,56,56,0,0,56,56,0,0,112,56,0,0, + 112,112,0,31,255,255,192,31,255,255,128,31,255,255,128,0, + 224,224,0,0,224,224,0,1,192,224,0,1,193,192,0,1, + 193,192,0,127,255,254,0,255,255,254,0,255,255,254,0,3, + 3,128,0,7,7,0,0,7,7,0,0,7,7,0,0,14, + 7,0,0,14,14,0,0,14,14,0,0,14,14,0,0,28, + 28,0,0,28,28,0,0,20,37,111,22,1,252,0,96,0, + 0,96,0,0,96,0,3,252,0,15,254,0,63,255,0,63, + 255,128,124,103,128,120,99,192,240,99,192,240,99,192,240,96, + 0,240,96,0,240,96,0,120,96,0,127,96,0,63,240,0, + 31,254,0,15,255,128,1,255,192,0,111,224,0,97,224,0, + 96,240,0,96,240,0,96,240,240,96,240,240,96,240,240,96, + 240,120,96,240,124,97,224,63,255,192,31,255,128,15,255,0, + 0,96,0,0,96,0,0,96,0,0,96,0,33,31,155,37, + 2,0,0,0,0,224,0,15,192,0,192,0,31,240,1,192, + 0,63,248,1,128,0,120,60,3,0,0,240,60,7,0,0, + 240,30,6,0,0,240,30,14,0,0,240,30,12,0,0,240, + 30,28,0,0,240,30,24,0,0,240,28,56,0,0,112,60, + 48,0,0,120,124,112,0,0,63,248,224,0,0,31,240,192, + 96,0,3,129,195,252,0,0,1,135,254,0,0,3,143,15, + 0,0,3,14,7,0,0,7,30,7,128,0,6,30,7,128, + 0,14,30,7,128,0,28,30,7,128,0,28,30,7,128,0, + 56,30,7,128,0,56,30,7,128,0,112,15,15,0,0,96, + 15,254,0,0,224,7,252,0,0,192,1,248,0,27,30,120, + 30,2,1,3,254,0,0,7,255,0,0,15,143,128,0,15, + 3,192,0,30,3,192,0,30,3,192,0,30,3,192,0,30, + 3,192,0,31,7,128,0,15,15,128,0,15,191,0,0,7, + 252,0,0,3,248,0,0,7,224,15,0,15,240,15,0,63, + 248,15,0,124,124,15,0,120,62,15,0,248,31,15,0,240, + 15,142,0,240,7,206,0,240,3,254,0,240,1,254,0,240, + 0,252,0,248,0,124,0,124,0,126,0,126,1,255,0,63, + 255,255,128,31,255,207,192,7,255,3,224,4,12,12,15,5, + 18,240,240,240,240,112,112,112,112,112,112,112,112,7,36,36, + 15,4,251,14,14,28,28,60,56,56,120,120,120,112,112,240, + 240,240,240,240,240,240,240,240,240,240,240,112,112,120,120,120, + 56,56,60,28,28,14,14,7,36,36,14,4,251,224,224,96, + 112,112,120,56,56,60,60,60,28,28,28,30,30,30,30,30, + 30,30,30,28,28,60,60,60,60,56,56,120,112,112,224,224, + 224,16,15,30,26,5,15,12,48,28,56,14,112,14,112,7, + 224,3,192,253,191,255,255,243,207,3,192,6,96,14,112,30, + 120,28,56,12,48,24,25,75,40,8,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,255,255,255,255, + 255,255,255,255,255,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,7,10,10,11,2,251,62,60,60,124, + 120,120,112,112,224,224,10,3,6,14,2,8,255,192,255,192, + 255,192,4,5,5,11,4,0,240,240,240,240,240,12,33,66, + 16,2,254,0,112,0,112,0,96,0,224,0,224,0,224,0, + 192,1,192,1,192,1,128,3,128,3,128,3,128,7,0,7, + 0,7,0,6,0,14,0,14,0,14,0,28,0,28,0,28, + 0,24,0,56,0,56,0,56,0,112,0,112,0,112,0,96, + 0,224,0,224,0,18,30,90,22,2,1,7,248,0,31,254, + 0,63,255,0,60,15,0,120,7,128,120,7,128,112,7,128, + 112,3,128,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,112,3,192,112,3,128, + 120,7,128,120,7,128,56,7,0,60,15,0,31,254,0,15, + 254,0,7,248,0,10,30,60,22,5,0,7,192,15,192,31, + 192,63,192,127,192,251,192,243,192,195,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,17,30,90,22,2,1,15,248,0, + 31,252,0,63,254,0,124,15,0,120,7,0,120,7,128,120, + 7,128,240,7,128,0,7,128,0,7,128,0,7,128,0,15, + 0,0,31,0,0,30,0,0,62,0,0,124,0,0,248,0, + 0,248,0,1,240,0,3,224,0,7,192,0,15,128,0,31, + 0,0,31,0,0,62,0,0,124,0,0,248,0,0,255,255, + 128,255,255,128,255,255,128,18,30,90,22,2,1,7,248,0, + 31,254,0,62,31,0,60,7,128,124,3,128,120,3,192,120, + 3,192,120,3,192,0,3,192,0,3,128,0,7,128,0,15, + 0,0,62,0,3,252,0,3,248,0,3,254,0,0,63,0, + 0,15,128,0,7,128,0,3,192,0,3,192,0,3,192,240, + 3,192,240,3,192,248,3,192,120,7,128,124,15,128,62,31, + 0,31,254,0,15,248,0,20,30,90,22,1,0,0,15,128, + 0,31,128,0,31,128,0,63,128,0,127,128,0,127,128,0, + 247,128,1,231,128,1,231,128,3,199,128,3,135,128,7,135, + 128,15,7,128,14,7,128,30,7,128,60,7,128,60,7,128, + 120,7,128,240,7,128,240,7,128,255,255,240,255,255,240,255, + 255,240,0,7,128,0,7,128,0,7,128,0,7,128,0,7, + 128,0,7,128,0,7,128,18,30,90,22,2,0,127,255,0, + 127,255,0,127,255,0,120,0,0,120,0,0,120,0,0,120, + 0,0,120,0,0,120,0,0,120,0,0,120,96,0,123,252, + 0,127,254,0,126,31,0,124,7,128,120,7,128,112,3,128, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,240,3,192,240,7,128,240,7,128,120,15,0,127,254, + 0,31,252,0,15,248,0,19,30,90,22,2,1,3,252,0, + 15,255,0,31,255,0,63,15,128,62,7,128,124,3,192,120, + 3,192,120,3,192,240,0,0,240,0,0,240,0,0,240,0, + 0,241,252,0,243,255,0,247,255,128,254,7,128,252,3,192, + 252,3,192,248,1,192,248,1,224,248,1,224,248,1,224,248, + 1,224,248,1,224,120,1,192,124,3,192,60,7,128,31,15, + 128,15,255,0,7,252,0,18,30,90,22,2,0,255,255,192, + 255,255,192,255,255,192,0,3,192,0,3,192,0,7,128,0, + 7,128,0,7,128,0,15,0,0,15,0,0,31,0,0,30, + 0,0,30,0,0,60,0,0,60,0,0,60,0,0,120,0, + 0,120,0,0,248,0,0,240,0,0,240,0,1,240,0,1, + 224,0,1,224,0,3,192,0,3,192,0,7,192,0,7,128, + 0,7,128,0,15,128,0,19,30,90,22,2,1,7,252,0, + 31,254,0,62,15,128,60,7,128,120,3,192,120,3,192,120, + 3,192,120,3,192,120,3,192,120,3,192,56,3,128,60,7, + 128,30,15,0,15,254,0,7,252,0,31,254,0,60,7,128, + 120,3,128,112,1,192,240,1,192,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,120,3,192,120,3,192,62,15, + 128,31,255,0,7,252,0,19,30,90,22,2,1,7,252,0, + 31,255,0,62,31,128,120,7,128,120,3,192,112,3,192,240, + 3,192,240,3,224,240,1,224,240,1,224,240,3,224,240,3, + 224,240,3,224,112,3,224,120,7,224,60,15,224,63,253,224, + 31,249,224,7,241,224,0,1,192,0,1,192,0,1,192,0, + 3,192,112,3,192,112,3,128,120,7,128,56,15,0,62,31, + 0,31,254,0,15,248,0,4,20,20,11,4,0,240,240,240, + 240,240,0,0,0,0,0,0,0,0,0,0,240,240,240,240, + 240,6,26,26,11,2,250,60,60,60,60,60,0,0,0,0, + 0,0,0,0,0,0,0,60,60,60,56,120,112,112,112,224, + 224,24,21,63,40,8,2,0,0,1,0,0,15,0,0,63, + 0,1,252,0,7,224,0,63,0,1,252,0,7,224,0,63, + 0,0,252,0,0,224,0,0,248,0,0,126,0,0,15,192, + 0,3,248,0,0,126,0,0,31,192,0,3,240,0,0,126, + 0,0,31,0,0,3,24,10,30,40,8,7,255,255,255,255, + 255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0, + 0,255,255,255,255,255,255,255,255,255,24,21,63,40,8,2, + 128,0,0,240,0,0,252,0,0,63,128,0,7,224,0,0, + 252,0,0,63,0,0,7,224,0,0,252,0,0,63,0,0, + 7,0,0,31,0,0,126,0,3,240,0,31,192,0,126,0, + 3,248,0,15,192,0,126,0,0,248,0,0,192,0,0,18, + 30,90,21,1,1,15,248,0,31,254,0,63,255,0,126,127, + 128,248,7,128,112,3,192,0,3,192,0,3,192,0,3,192, + 0,7,128,0,7,128,0,15,0,0,30,0,0,60,0,0, + 120,0,1,240,0,1,224,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,3,192,0,0,0,0,0,0,0, + 0,0,0,3,192,0,3,192,0,3,192,0,3,192,0,35, + 37,185,39,2,249,0,7,252,0,0,0,63,255,128,0,0, + 255,255,240,0,1,255,255,248,0,7,248,3,252,0,15,224, + 0,126,0,15,128,0,31,0,31,0,0,15,128,62,0,0, + 7,128,60,0,0,7,192,120,7,231,131,192,120,15,247,131, + 192,112,31,255,129,224,240,62,31,129,224,240,60,15,129,224, + 240,120,7,129,224,240,120,7,129,224,240,120,7,129,224,240, + 120,7,129,224,240,120,7,129,224,240,120,7,129,224,240,120, + 7,129,192,240,120,7,129,192,112,56,15,131,192,120,60,15, + 135,128,120,30,27,255,0,124,31,251,255,0,60,15,240,252, + 0,62,1,128,48,0,31,0,0,0,0,31,128,0,0,0, + 15,224,0,0,0,7,248,0,128,0,3,255,255,128,0,0, + 255,255,128,0,0,63,255,128,0,0,7,254,0,0,28,30, + 120,30,1,0,0,15,0,0,0,31,128,0,0,31,128,0, + 0,63,192,0,0,63,192,0,0,127,192,0,0,121,224,0, + 0,121,224,0,0,241,240,0,0,240,240,0,1,240,240,0, + 1,224,248,0,1,224,120,0,3,224,124,0,3,192,60,0, + 7,192,60,0,7,128,62,0,7,128,30,0,15,128,31,0, + 15,255,255,0,31,255,255,128,31,255,255,128,30,0,7,128, + 60,0,3,192,60,0,3,192,124,0,3,224,120,0,1,224, + 120,0,1,224,240,0,0,240,240,0,0,240,21,30,90,26, + 3,0,255,254,0,255,255,128,255,255,192,255,255,224,240,7, + 224,240,1,240,240,0,240,240,0,240,240,0,240,240,0,240, + 240,0,224,240,1,224,240,7,192,255,255,128,255,255,0,255, + 255,192,240,3,224,240,0,240,240,0,112,240,0,120,240,0, + 120,240,0,120,240,0,120,240,0,248,240,1,248,240,7,240, + 255,255,224,255,255,224,255,255,128,255,254,0,22,30,90,26, + 2,1,1,255,128,7,255,224,15,255,240,31,0,248,62,0, + 120,60,0,60,120,0,60,120,0,60,120,0,0,112,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,112,0, + 0,112,0,0,120,0,60,120,0,60,60,0,60,60,0,120, + 31,0,248,15,255,240,7,255,224,1,255,128,23,30,90,28, + 3,0,255,248,0,255,255,0,255,255,192,255,255,224,240,15, + 240,240,1,248,240,0,248,240,0,124,240,0,60,240,0,60, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 60,240,0,60,240,0,124,240,0,248,240,1,240,240,7,240, + 255,255,224,255,255,192,255,255,0,255,248,0,19,30,90,24, + 3,0,255,255,192,255,255,192,255,255,192,255,255,192,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,255,255,192,255,255,192,255, + 255,192,255,255,192,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 255,255,224,255,255,224,255,255,224,255,255,224,17,30,90,23, + 3,0,255,255,128,255,255,128,255,255,128,255,255,128,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,255,255,0,255,255,0,255, + 255,0,255,255,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,25,30,120,30, + 2,1,0,255,224,0,3,255,248,0,7,255,252,0,15,255, + 254,0,31,128,63,0,62,0,15,0,60,0,7,128,120,0, + 7,128,120,0,0,0,112,0,0,0,240,0,0,0,240,0, + 0,0,240,0,0,0,240,0,0,0,240,3,255,128,240,3, + 255,128,240,3,255,128,240,3,255,128,240,0,7,128,240,0, + 7,128,120,0,7,128,120,0,7,128,124,0,7,128,62,0, + 7,128,62,0,7,128,31,128,7,128,15,255,255,128,7,255, + 255,128,3,255,255,0,0,255,248,0,22,30,90,28,3,0, + 240,0,60,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,255,255,252,255,255,252,255,255,252, + 255,255,252,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,240,0,60,4,30,30,10,3,0, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,17,30, + 90,22,2,0,0,7,128,0,7,128,0,7,128,0,7,128, + 0,7,128,0,7,128,0,7,128,0,7,128,0,7,128,0, + 7,128,0,7,128,0,7,128,0,7,128,0,7,128,0,7, + 128,0,7,128,0,7,128,0,7,128,0,7,128,0,7,128, + 0,7,128,0,7,128,240,7,128,240,7,128,240,15,128,120, + 31,0,127,255,0,63,254,0,31,252,0,15,240,0,22,30, + 90,26,3,0,240,1,240,240,3,224,240,7,192,240,15,128, + 240,31,0,240,30,0,240,60,0,240,124,0,240,248,0,241, + 240,0,243,224,0,247,192,0,255,128,0,255,128,0,255,192, + 0,247,192,0,243,224,0,243,240,0,241,248,0,240,252,0, + 240,124,0,240,62,0,240,31,0,240,31,128,240,15,192,240, + 7,192,240,3,224,240,1,240,240,1,248,240,0,252,17,30, + 90,21,3,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,255,255,128,255,255,128,255,255,128,255,255,128,30,30, + 120,36,3,0,252,0,0,252,254,0,1,252,254,0,1,252, + 254,0,1,252,255,0,3,252,255,0,3,252,247,128,7,188, + 247,128,7,188,247,128,7,188,243,192,15,60,243,192,15,60, + 243,192,14,60,241,224,30,60,241,224,30,60,240,224,28,60, + 240,240,60,60,240,240,60,60,240,120,120,60,240,120,120,60, + 240,120,120,60,240,60,240,60,240,60,240,60,240,28,224,60, + 240,31,224,60,240,31,224,60,240,15,192,60,240,15,192,60, + 240,15,192,60,240,7,128,60,240,7,128,60,22,30,90,28, + 3,0,252,0,60,252,0,60,254,0,60,254,0,60,255,0, + 60,255,0,60,255,128,60,247,128,60,247,192,60,243,192,60, + 243,224,60,241,224,60,241,240,60,240,240,60,240,248,60,240, + 120,60,240,124,60,240,60,60,240,62,60,240,30,60,240,31, + 60,240,15,60,240,15,188,240,7,188,240,3,252,240,3,252, + 240,1,252,240,1,252,240,0,252,240,0,252,26,30,120,30, + 2,1,1,255,224,0,3,255,240,0,15,255,252,0,31,255, + 254,0,31,0,62,0,62,0,31,0,60,0,15,0,120,0, + 7,128,120,0,7,128,112,0,3,128,240,0,3,192,240,0, + 3,192,240,0,3,192,240,0,3,192,240,0,3,192,240,0, + 3,192,240,0,3,192,240,0,3,192,240,0,3,192,112,0, + 3,128,120,0,7,128,120,0,7,128,120,0,15,128,60,0, + 15,0,62,0,31,0,31,128,126,0,15,255,252,0,7,255, + 248,0,3,255,240,0,0,255,192,0,19,30,90,24,3,0, + 255,248,0,255,254,0,255,255,128,255,255,192,240,15,192,240, + 3,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,3,224,240,15,192,255,255,192,255,255,128, + 255,254,0,255,248,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,28,30,120,31,2,1, + 0,255,192,0,3,255,240,0,15,255,252,0,31,255,254,0, + 31,0,62,0,62,0,31,0,60,0,15,128,120,0,7,128, + 120,0,7,128,112,0,3,192,240,0,3,192,240,0,3,192, + 240,0,3,192,240,0,3,192,240,0,3,192,240,0,3,192, + 240,0,3,192,240,0,3,192,240,0,3,192,112,0,3,128, + 120,0,7,128,120,0,7,128,120,0,15,0,60,0,15,0, + 62,0,30,0,31,128,126,0,15,255,255,240,7,255,255,240, + 3,255,255,240,0,255,255,240,20,30,90,25,3,0,255,252, + 0,255,255,0,255,255,192,255,255,224,240,7,224,240,1,224, + 240,0,240,240,0,240,240,0,240,240,0,240,240,0,224,240, + 1,224,240,7,192,255,255,128,255,255,0,255,255,0,255,255, + 128,240,7,192,240,3,192,240,3,192,240,1,224,240,1,224, + 240,1,224,240,1,224,240,0,224,240,0,224,240,0,240,240, + 0,240,240,0,240,240,0,112,22,30,90,26,2,1,3,255, + 0,15,255,192,63,255,224,63,255,240,124,0,240,120,0,120, + 240,0,120,240,0,120,240,0,0,240,0,0,120,0,0,124, + 0,0,63,128,0,31,252,0,15,255,128,0,255,224,0,7, + 240,0,0,248,0,0,120,0,0,56,0,0,60,240,0,60, + 240,0,60,240,0,60,120,0,120,124,0,248,63,255,240,63, + 255,240,31,255,192,7,255,0,23,30,90,25,1,0,255,255, + 254,255,255,254,255,255,254,255,255,254,0,120,0,0,120,0, + 0,120,0,0,120,0,0,120,0,0,120,0,0,120,0,0, + 120,0,0,120,0,0,120,0,0,120,0,0,120,0,0,120, + 0,0,120,0,0,120,0,0,120,0,0,120,0,0,120,0, + 0,120,0,0,120,0,0,120,0,0,120,0,0,120,0,0, + 120,0,0,120,0,0,120,0,23,30,90,29,3,0,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 120,0,60,120,0,60,124,0,124,62,0,248,63,255,248,31, + 255,240,15,255,224,3,255,128,24,30,90,26,1,0,240,0, + 15,248,0,15,248,0,31,120,0,30,124,0,30,124,0,62, + 60,0,60,62,0,60,30,0,124,30,0,120,31,0,120,15, + 0,248,15,0,240,15,0,240,7,129,240,7,129,224,7,129, + 224,3,195,224,3,195,192,3,195,192,1,231,192,1,231,128, + 1,231,128,0,255,128,0,255,0,0,255,0,0,126,0,0, + 126,0,0,126,0,0,60,0,37,30,150,39,1,0,240,0, + 248,0,120,240,0,248,0,120,240,1,248,0,248,120,1,252, + 0,240,120,1,252,0,240,120,1,220,0,240,124,3,222,1, + 224,60,3,222,1,224,60,3,222,1,224,60,3,142,1,224, + 30,7,143,3,192,30,7,143,3,192,30,7,15,3,192,30, + 7,7,3,128,15,15,7,135,128,15,15,7,135,128,15,14, + 3,135,128,7,14,3,135,0,7,158,3,207,0,7,158,3, + 207,0,7,156,1,206,0,3,156,1,222,0,3,252,1,254, + 0,3,252,1,254,0,1,248,0,252,0,1,248,0,252,0, + 1,248,0,252,0,1,240,0,248,0,0,240,0,120,0,0, + 240,0,120,0,26,30,120,28,1,0,62,0,15,0,62,0, + 31,0,31,0,30,0,15,128,60,0,15,128,124,0,7,192, + 120,0,3,224,240,0,3,224,240,0,1,241,224,0,0,243, + 224,0,0,251,192,0,0,127,128,0,0,63,128,0,0,63, + 0,0,0,63,0,0,0,63,128,0,0,127,128,0,0,247, + 192,0,0,243,224,0,1,227,224,0,3,225,240,0,3,192, + 248,0,7,128,248,0,15,128,124,0,15,0,62,0,31,0, + 62,0,62,0,31,0,60,0,31,0,124,0,15,128,248,0, + 7,192,24,30,90,26,1,0,248,0,15,248,0,31,124,0, + 30,124,0,60,62,0,124,30,0,120,31,0,248,15,0,240, + 15,129,224,7,129,224,3,195,192,3,227,192,1,231,128,1, + 247,0,0,255,0,0,254,0,0,126,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 60,0,21,30,90,25,2,0,127,255,248,127,255,248,127,255, + 248,127,255,248,0,0,248,0,1,248,0,1,240,0,3,224, + 0,7,192,0,15,128,0,31,128,0,31,0,0,62,0,0, + 124,0,0,252,0,0,248,0,1,240,0,3,224,0,7,192, + 0,15,192,0,15,128,0,31,0,0,62,0,0,126,0,0, + 252,0,0,248,0,0,255,255,248,255,255,248,255,255,248,255, + 255,248,8,38,38,16,4,248,255,255,255,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,255,255,255,12,33, + 66,16,2,254,224,0,224,0,224,0,96,0,112,0,112,0, + 48,0,56,0,56,0,56,0,28,0,28,0,28,0,12,0, + 14,0,14,0,6,0,7,0,7,0,7,0,3,0,3,128, + 3,128,1,128,1,192,1,192,1,192,0,192,0,224,0,224, + 0,96,0,112,0,112,8,38,38,16,4,248,255,255,255,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,255, + 255,255,20,25,75,40,10,0,0,96,0,0,240,0,0,240, + 0,0,240,0,1,248,0,1,152,0,3,156,0,3,12,0, + 3,12,0,7,14,0,6,6,0,6,6,0,14,7,0,12, + 3,0,28,3,128,28,1,128,24,1,128,56,1,192,48,0, + 192,48,0,192,112,0,224,96,0,96,224,0,112,224,0,112, + 192,0,48,20,3,9,20,0,251,255,255,240,255,255,240,255, + 255,240,8,7,7,9,255,25,240,120,56,28,14,14,7,18, + 20,60,23,2,1,15,254,0,63,255,0,62,15,128,120,7, + 128,120,3,192,0,3,192,0,3,192,3,255,192,15,255,192, + 63,255,192,126,3,192,120,3,192,240,3,192,240,3,192,240, + 7,192,240,7,192,248,15,192,124,63,192,63,251,192,31,227, + 192,19,30,90,24,3,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,243,252,0,247,255,0,255,15,128,252,7, + 128,248,3,192,248,3,192,240,1,192,240,1,224,240,1,224, + 240,1,224,240,1,224,240,1,224,240,1,192,240,3,192,240, + 3,192,248,7,128,252,7,128,254,31,0,247,254,0,243,252, + 0,17,20,60,21,2,1,15,252,0,31,254,0,62,31,0, + 120,15,128,120,7,128,240,7,128,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,7, + 128,112,7,128,120,7,128,120,15,0,62,31,0,31,254,0, + 15,252,0,19,30,90,24,2,0,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,15,249,224,31,253,224,62,31,224, + 60,7,224,120,7,224,120,3,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,120,3,224,120,3,224,60,7,224,31,15,224,15,255,224, + 7,249,224,18,20,60,22,2,1,7,252,0,31,254,0,62, + 31,0,60,7,128,120,3,128,112,3,192,240,3,192,240,3, + 192,255,255,192,255,255,192,255,255,192,240,0,0,240,0,0, + 240,0,0,112,3,192,120,7,128,56,7,128,62,31,0,31, + 254,0,7,252,0,13,30,60,14,1,0,1,248,3,248,7, + 248,15,128,15,0,15,0,15,0,15,0,15,0,15,0,255, + 240,255,240,255,240,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,19,28,84,24,2,249,15,249,224, + 31,253,224,62,31,224,120,7,224,120,3,224,112,3,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,3,224,120,3,224,124,7,224,62,15,224, + 31,253,224,15,249,224,0,129,224,0,1,224,0,3,192,120, + 3,192,120,3,192,60,7,128,63,255,0,15,254,0,3,248, + 0,18,30,90,24,3,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,243,254,0,247,255,0,254,31,128,248,7, + 128,240,7,128,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,4,30,30,8,2,0,240,240,240,240,0,0,0,0,0, + 0,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,7,38,38,11,2,248,30,30,30,30,0, + 0,0,0,0,0,30,30,30,30,30,30,30,30,30,30,30, + 30,30,30,30,30,30,30,30,30,30,30,30,30,30,254,252, + 248,16,30,60,20,3,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,30,240,62,240, + 124,240,248,241,240,243,224,247,192,255,128,255,0,255,0,247, + 128,247,192,243,224,241,240,240,240,240,248,240,124,240,62,240, + 30,240,31,4,30,30,10,3,0,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,30,20,80,36,3,1,243,252,31, + 224,247,254,63,240,254,31,112,248,252,15,224,120,248,7,192, + 60,240,7,128,60,240,7,128,60,240,7,128,60,240,7,128, + 60,240,7,128,60,240,7,128,60,240,7,128,60,240,7,128, + 60,240,7,128,60,240,7,128,60,240,7,128,60,240,7,128, + 60,240,7,128,60,240,7,128,60,240,7,128,60,18,20,60, + 24,3,1,243,254,0,247,255,0,254,31,128,248,7,128,248, + 7,128,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,20, + 20,60,24,2,1,7,252,0,15,255,0,63,15,128,60,3, + 192,120,3,224,120,1,224,240,1,224,240,0,240,240,0,240, + 240,0,240,240,0,240,240,0,240,240,0,240,240,1,224,120, + 1,224,120,3,224,60,3,192,63,15,128,15,255,0,7,254, + 0,19,28,84,24,3,249,243,254,0,247,255,0,254,15,128, + 252,7,192,248,3,192,248,3,192,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,248,3,192,248,3,192,252,7,192,254,15,128,247,255,0, + 243,254,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,19,28,84,24,2, + 249,15,249,224,31,253,224,62,15,224,124,7,224,120,3,224, + 120,3,224,240,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,120,3,224,120,3, + 224,124,7,224,62,15,224,31,253,224,15,249,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,11,20,40,15,3,0,243,224,247,224,255, + 224,254,0,248,0,248,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,16,20,40,20,2,1,31,248,63,254,124,62,248, + 31,240,15,240,0,240,0,124,0,127,192,63,248,15,254,0, + 126,0,31,0,15,240,15,240,15,240,31,124,62,127,252,31, + 248,12,25,50,14,1,1,14,0,30,0,30,0,30,0,30, + 0,255,240,255,240,255,240,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,15,0,15,240,7,240,18,20,60,24,3,0,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,7,192,120, + 15,192,126,31,192,63,251,192,31,243,192,20,20,60,21,1, + 0,240,0,240,240,1,224,120,1,224,120,1,192,124,3,192, + 60,3,192,60,7,128,30,7,128,30,7,0,15,15,0,15, + 14,0,15,14,0,7,158,0,7,156,0,3,252,0,3,248, + 0,3,248,0,1,248,0,1,240,0,0,240,0,31,20,80, + 33,1,0,240,7,192,30,240,15,192,28,240,15,192,60,120, + 15,224,60,120,30,224,56,120,30,224,120,56,28,240,120,60, + 28,112,112,60,60,112,112,28,56,120,240,30,56,56,224,30, + 120,56,224,14,112,57,224,15,112,29,192,15,240,29,192,7, + 224,31,192,7,224,31,128,7,224,15,128,3,192,15,128,3, + 192,15,0,20,20,60,22,1,0,120,1,224,60,3,192,62, + 3,192,31,7,128,15,15,0,7,158,0,7,222,0,3,252, + 0,1,248,0,0,240,0,1,248,0,3,252,0,3,188,0, + 7,158,0,15,31,0,30,15,128,62,7,128,60,3,192,120, + 3,224,240,1,240,20,28,84,21,1,248,240,0,240,240,1, + 224,120,1,224,120,1,192,60,3,192,60,3,192,62,7,128, + 30,7,128,30,7,128,15,15,0,15,15,0,15,158,0,7, + 158,0,7,158,0,3,252,0,3,252,0,1,248,0,1,248, + 0,1,248,0,0,240,0,0,240,0,0,224,0,1,224,0, + 1,224,0,1,192,0,3,192,0,3,128,0,7,128,0,15, + 20,40,19,2,0,127,254,127,254,127,254,0,62,0,124,0, + 120,0,240,1,240,3,224,3,192,7,128,15,128,31,0,30, + 0,60,0,124,0,248,0,255,254,255,254,255,254,13,41,82, + 19,3,246,0,24,1,248,3,248,3,224,7,128,7,128,7, + 128,7,0,7,0,7,0,7,0,7,128,7,128,7,0,7, + 0,7,0,15,0,31,0,62,0,252,0,248,0,252,0,126, + 0,30,0,15,0,15,0,7,0,7,0,7,0,7,128,7, + 128,7,0,7,0,7,0,7,0,7,128,7,128,3,192,3, + 248,1,248,0,120,2,43,43,14,6,245,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,13,41,82,19,3,246,192,0,252,0, + 254,0,30,0,15,0,15,0,7,0,7,0,7,0,7,0, + 7,0,7,128,7,128,7,128,7,128,7,128,7,128,3,192, + 3,224,1,248,0,248,1,248,1,240,3,192,3,192,7,128, + 7,128,7,128,7,128,7,128,7,128,7,0,7,0,7,0, + 7,0,7,0,15,0,31,0,254,0,252,0,240,0,21,5, + 15,21,0,8,2,0,56,31,240,120,63,255,240,120,127,224, + 240,15,128,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,0,0,0,12,0,0,4,28,28,14,5,248, + 240,240,240,240,0,0,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,17,31,93,23, + 3,250,0,12,0,0,12,0,0,24,0,0,24,0,0,24, + 0,15,248,0,63,254,0,62,63,0,120,119,0,120,103,0, + 240,103,128,240,96,0,240,192,0,240,192,0,240,192,0,241, + 128,0,241,128,0,241,128,0,243,7,128,243,7,128,123,7, + 0,126,15,0,62,30,0,31,254,0,15,248,0,12,0,0, + 12,0,0,28,0,0,24,0,0,24,0,0,8,0,0,20, + 31,93,23,2,0,0,16,0,1,255,0,7,255,192,15,135, + 224,15,1,224,30,0,240,30,0,240,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,255,248,0,255,248,0,255, + 248,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,255,255,224,255,255,224,255, + 255,224,21,22,66,25,2,7,192,0,24,224,0,56,96,48, + 48,51,254,96,63,255,224,31,7,192,28,1,192,24,0,192, + 56,0,224,48,0,96,48,0,96,48,0,96,48,0,96,56, + 0,224,24,0,192,28,1,192,14,3,128,31,255,192,59,254, + 224,112,248,112,224,0,56,192,0,24,21,30,90,23,1,0, + 240,0,120,248,0,120,120,0,240,124,0,240,60,1,240,62, + 1,224,30,1,224,30,3,192,15,3,192,15,7,128,255,135, + 248,255,143,248,255,207,248,3,207,0,1,254,0,1,252,0, + 255,255,248,255,255,248,255,255,248,0,120,0,0,120,0,0, + 120,0,0,120,0,0,120,0,0,120,0,0,120,0,0,120, + 0,0,120,0,0,120,0,0,120,0,2,38,38,14,6,248, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 0,0,0,0,0,0,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,15,37,74,19,2,250,15,248,31,248, + 62,24,60,0,120,0,120,0,120,0,120,0,60,0,63,0, + 31,128,15,224,15,240,63,248,124,124,120,62,240,30,240,30, + 240,30,240,60,248,120,127,240,63,224,31,224,7,240,1,248, + 0,124,0,60,0,30,0,30,0,30,0,28,0,60,96,248, + 127,240,127,224,3,0,12,4,8,12,0,26,240,240,240,240, + 240,240,240,240,30,30,120,34,2,1,0,63,240,0,0,255, + 252,0,3,240,63,0,7,128,7,128,15,0,3,192,28,3, + 0,224,56,63,240,112,56,127,248,112,112,248,124,56,97,240, + 30,24,97,224,30,24,225,224,30,28,195,192,0,12,195,192, + 0,12,195,192,0,12,195,192,0,12,195,192,0,12,195,192, + 0,12,193,192,30,12,97,224,30,24,97,224,30,24,96,240, + 60,56,48,255,252,48,56,63,248,112,28,15,224,224,14,0, + 1,192,7,0,3,128,3,192,15,0,1,255,252,0,0,63, + 240,0,14,19,38,16,1,11,15,192,63,240,56,120,112,56, + 0,56,0,56,15,248,63,248,120,56,224,56,224,56,224,120, + 240,248,127,184,31,56,0,0,0,0,255,252,255,252,16,16, + 32,22,3,2,7,7,15,14,14,14,28,28,60,60,56,120, + 120,112,240,240,240,240,120,112,56,120,60,60,28,28,14,14, + 15,14,7,7,21,10,30,25,2,8,255,255,248,255,255,248, + 255,255,248,0,0,24,0,0,24,0,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,255,30,30,120,34,2,1,0, + 63,240,0,0,255,252,0,3,240,63,0,7,128,7,128,14, + 0,1,192,28,127,240,224,56,127,248,112,48,127,252,48,112, + 112,30,56,96,112,14,24,96,112,14,24,192,112,14,12,192, + 112,28,12,192,127,248,12,192,127,240,12,192,127,248,12,192, + 112,28,12,192,112,28,12,192,112,28,12,96,112,12,24,96, + 112,12,24,112,112,14,56,48,112,14,48,56,112,14,112,28, + 0,0,224,14,0,1,192,7,128,7,128,3,240,63,0,1, + 255,252,0,0,63,240,0,12,3,6,12,0,26,255,240,255, + 240,255,240,9,9,18,13,2,21,62,0,127,0,227,128,193, + 128,193,128,193,128,227,128,127,0,62,0,24,24,72,40,8, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,255,255,255,255,255,255,255,255,255,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,0,0,0,0,0,0,0,0,0,0,0, + 255,255,255,255,255,255,255,255,255,12,16,32,14,1,15,31, + 192,127,224,120,240,112,112,224,112,0,112,0,224,1,224,3, + 192,7,128,14,0,60,0,120,0,255,240,255,240,255,240,12, + 16,32,14,1,15,63,192,127,224,112,240,96,112,0,112,0, + 240,7,224,7,128,7,224,0,240,0,112,224,112,224,112,127, + 224,127,192,31,128,8,7,7,9,2,25,15,30,28,56,56, + 112,224,255,18,36,108,22,2,250,3,255,192,15,255,192,63, + 195,0,127,195,0,127,195,0,255,195,0,255,195,0,255,195, + 0,255,195,0,255,195,0,255,195,0,127,195,0,127,195,0, + 63,195,0,15,195,0,0,195,0,0,195,0,0,195,0,0, + 195,0,0,195,0,0,195,0,0,195,0,0,195,0,0,195, + 0,0,195,0,0,195,0,0,195,0,0,195,0,0,195,0, + 0,195,0,0,195,0,0,195,0,0,195,0,0,195,0,0, + 195,0,0,195,0,4,5,5,10,3,11,240,240,240,240,240, + 10,10,20,10,2,246,48,0,48,0,62,0,63,128,7,128, + 1,192,1,192,3,192,255,128,254,0,7,16,16,12,2,14, + 30,62,254,238,142,14,14,14,14,14,14,14,14,14,14,14, + 14,19,38,16,1,10,15,192,63,224,120,112,112,56,224,56, + 224,28,224,28,224,28,224,28,224,28,224,56,112,56,56,112, + 31,224,7,128,0,0,0,0,255,252,255,252,16,16,32,22, + 3,2,224,224,112,112,120,120,56,56,28,60,30,30,15,14, + 15,15,15,15,15,14,30,30,28,60,56,56,120,120,112,112, + 224,224,28,30,120,32,2,0,30,0,12,0,62,0,28,0, + 254,0,56,0,238,0,56,0,142,0,112,0,14,0,112,0, + 14,0,224,0,14,0,192,0,14,1,192,0,14,3,128,0, + 14,3,128,0,14,7,0,0,14,7,0,0,14,14,0,0, + 14,12,7,128,14,28,7,128,0,56,15,128,0,56,31,128, + 0,112,27,128,0,112,59,128,0,224,115,128,0,224,99,128, + 1,192,195,128,1,129,195,128,3,129,255,240,7,1,255,240, + 7,0,3,128,14,0,3,128,14,0,3,128,28,0,3,128, + 28,30,120,32,2,0,30,0,28,0,62,0,28,0,254,0, + 56,0,238,0,56,0,142,0,112,0,14,0,112,0,14,0, + 224,0,14,0,224,0,14,1,192,0,14,3,128,0,14,3, + 128,0,14,7,0,0,14,7,0,0,14,14,0,0,14,14, + 31,128,14,28,63,224,0,56,121,224,0,56,112,112,0,112, + 240,112,0,112,0,112,0,224,0,240,0,224,0,224,1,192, + 3,192,1,128,7,128,3,128,15,0,7,0,60,0,7,0, + 120,0,14,0,255,240,14,0,255,240,28,0,255,240,30,31, + 124,32,1,0,0,0,1,192,63,192,3,128,127,224,3,128, + 112,240,7,0,96,112,6,0,0,112,14,0,0,240,28,0, + 7,224,28,0,7,128,56,0,7,224,56,0,0,240,112,0, + 0,112,112,0,224,112,224,0,224,113,192,0,127,225,192,0, + 127,195,129,224,31,131,129,224,0,7,3,224,0,7,7,224, + 0,14,6,224,0,12,12,224,0,28,28,224,0,56,24,224, + 0,56,48,224,0,112,112,224,0,112,127,252,0,224,127,252, + 0,224,0,224,1,192,0,224,1,128,0,224,3,128,0,224, + 17,28,84,21,2,248,0,240,0,0,240,0,0,240,0,0, + 240,0,0,0,0,0,0,0,0,0,0,0,240,0,0,240, + 0,0,240,0,0,240,0,1,240,0,1,224,0,7,192,0, + 15,128,0,31,0,0,60,0,0,120,0,0,240,0,0,240, + 0,0,240,0,0,240,3,0,240,3,128,124,15,128,127,255, + 0,63,254,0,31,252,0,3,240,0,28,41,164,30,1,0, + 0,240,0,0,0,240,0,0,0,120,0,0,0,56,0,0, + 0,28,0,0,0,14,0,0,0,14,0,0,0,7,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0, + 0,31,128,0,0,31,128,0,0,63,192,0,0,63,192,0, + 0,127,192,0,0,121,224,0,0,121,224,0,0,241,240,0, + 0,240,240,0,1,240,240,0,1,224,248,0,1,224,120,0, + 3,224,124,0,3,192,60,0,7,192,60,0,7,128,62,0, + 7,128,30,0,15,128,31,0,15,255,255,0,31,255,255,128, + 31,255,255,128,30,0,7,128,60,0,3,192,60,0,3,192, + 124,0,3,224,120,0,1,224,120,0,1,224,240,0,0,240, + 240,0,0,240,28,41,164,30,1,0,0,0,240,0,0,0, + 240,0,0,1,224,0,0,1,192,0,0,3,128,0,0,7, + 0,0,0,7,0,0,0,14,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,15,0,0,0,31,128,0,0,31, + 128,0,0,63,192,0,0,63,192,0,0,127,192,0,0,121, + 224,0,0,121,224,0,0,241,240,0,0,240,240,0,1,240, + 240,0,1,224,248,0,1,224,120,0,3,224,124,0,3,192, + 60,0,7,192,60,0,7,128,62,0,7,128,30,0,15,128, + 31,0,15,255,255,0,31,255,255,128,31,255,255,128,30,0, + 7,128,60,0,3,192,60,0,3,192,124,0,3,224,120,0, + 1,224,120,0,1,224,240,0,0,240,240,0,0,240,28,41, + 164,30,1,0,0,15,0,0,0,31,128,0,0,31,128,0, + 0,63,192,0,0,57,192,0,0,112,224,0,0,96,96,0, + 0,224,112,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,15,0,0,0,31,128,0,0,31,128,0,0,63,192,0, + 0,63,192,0,0,127,192,0,0,121,224,0,0,121,224,0, + 0,241,240,0,0,240,240,0,1,240,240,0,1,224,248,0, + 1,224,120,0,3,224,124,0,3,192,60,0,7,192,60,0, + 7,128,62,0,7,128,30,0,15,128,31,0,15,255,255,0, + 31,255,255,128,31,255,255,128,30,0,7,128,60,0,3,192, + 60,0,3,192,124,0,3,224,120,0,1,224,120,0,1,224, + 240,0,0,240,240,0,0,240,28,39,156,30,1,0,0,16, + 48,0,0,126,112,0,0,127,224,0,0,231,224,0,0,192, + 128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,15,0,0,0,31,128,0,0,31,128,0,0,63, + 192,0,0,63,192,0,0,127,192,0,0,121,224,0,0,121, + 224,0,0,241,240,0,0,240,240,0,1,240,240,0,1,224, + 248,0,1,224,120,0,3,224,124,0,3,192,60,0,7,192, + 60,0,7,128,62,0,7,128,30,0,15,128,31,0,15,255, + 255,0,31,255,255,128,31,255,255,128,30,0,7,128,60,0, + 3,192,60,0,3,192,124,0,3,224,120,0,1,224,120,0, + 1,224,240,0,0,240,240,0,0,240,29,39,156,30,1,0, + 0,120,120,0,0,120,120,0,0,120,120,0,0,120,120,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,15,128,0,0,15,128,0,0,31,128,0, + 0,31,192,0,0,63,192,0,0,61,224,0,0,125,224,0, + 0,121,240,0,0,120,240,0,0,240,240,0,0,240,248,0, + 1,240,120,0,1,224,124,0,1,224,60,0,3,224,60,0, + 3,192,62,0,7,192,30,0,7,128,31,0,7,128,15,0, + 15,255,255,128,15,255,255,128,31,255,255,128,30,0,3,192, + 30,0,3,192,60,0,3,224,60,0,1,224,120,0,1,224, + 120,0,0,240,120,0,0,240,240,0,0,248,28,43,172,30, + 1,0,0,14,0,0,0,63,0,0,0,49,128,0,0,96, + 192,0,0,96,192,0,0,96,192,0,0,96,192,0,0,49, + 128,0,0,63,128,0,0,14,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,31,0,0,0,31,0,0,0,31, + 128,0,0,63,128,0,0,63,192,0,0,123,192,0,0,123, + 192,0,0,121,224,0,0,241,224,0,0,241,240,0,1,224, + 240,0,1,224,248,0,1,224,120,0,3,192,120,0,3,192, + 124,0,7,192,60,0,7,128,62,0,15,128,30,0,15,0, + 30,0,15,255,255,0,31,255,255,0,31,255,255,128,60,0, + 7,128,60,0,7,192,60,0,3,192,120,0,3,192,120,0, + 1,224,240,0,1,224,240,0,1,240,240,0,0,240,37,30, + 150,39,0,0,0,1,255,255,240,0,1,255,255,240,0,3, + 255,255,240,0,3,255,255,240,0,7,252,0,0,0,7,188, + 0,0,0,15,188,0,0,0,15,60,0,0,0,31,60,0, + 0,0,30,60,0,0,0,62,60,0,0,0,60,60,0,0, + 0,124,60,0,0,0,120,63,255,240,0,248,63,255,240,0, + 240,63,255,240,1,240,63,255,240,1,224,60,0,0,3,224, + 60,0,0,3,255,252,0,0,7,255,252,0,0,7,255,252, + 0,0,15,0,60,0,0,31,0,60,0,0,30,0,60,0, + 0,62,0,60,0,0,60,0,63,255,248,124,0,63,255,248, + 120,0,63,255,248,248,0,63,255,248,22,40,120,26,2,247, + 1,255,128,7,255,224,15,255,240,31,0,248,62,0,120,60, + 0,60,120,0,60,120,0,60,120,0,0,112,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,112, + 0,0,120,0,60,120,0,60,60,0,60,60,0,120,31,0, + 248,15,255,240,7,255,224,3,255,128,0,48,0,0,48,0, + 0,62,0,0,63,128,0,63,192,0,1,192,0,1,192,0, + 1,192,0,255,128,0,254,0,19,41,123,24,3,0,30,0, + 0,15,0,0,7,0,0,3,128,0,3,128,0,1,192,0, + 0,224,0,0,96,0,0,0,0,0,0,0,0,0,0,255, + 255,192,255,255,192,255,255,192,255,255,192,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,255,255,192,255,255,192,255,255,192,255, + 255,192,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,255,255,224, + 255,255,224,255,255,224,255,255,224,19,41,123,24,3,0,0, + 30,0,0,60,0,0,56,0,0,120,0,0,240,0,0,224, + 0,1,192,0,1,128,0,0,0,0,0,0,0,0,0,0, + 255,255,192,255,255,192,255,255,192,255,255,192,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,255,255,192,255,255,192,255,255,192, + 255,255,192,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,255,255, + 224,255,255,224,255,255,224,255,255,224,19,41,123,24,3,0, + 1,224,0,3,240,0,7,240,0,7,120,0,15,56,0,14, + 28,0,28,28,0,24,14,0,0,0,0,0,0,0,0,0, + 0,255,255,192,255,255,192,255,255,192,255,255,192,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,255,255,192,255,255,192,255,255, + 192,255,255,192,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,255, + 255,224,255,255,224,255,255,224,255,255,224,19,39,117,24,3, + 0,30,30,0,30,30,0,30,30,0,30,30,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255, + 255,192,255,255,192,255,255,192,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,255,255,192,255,255,192,255,255,192,255,255,192,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,255,255,224,255,255,224, + 255,255,224,255,255,224,8,41,41,10,255,0,240,120,56,28, + 30,14,7,3,0,0,0,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,7,41,41,10,3,0,30,30,60,56,112, + 112,224,192,0,0,0,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,12,41,82,10,255,0,15,0,31,0,31,128, + 63,128,57,192,112,224,96,224,224,112,0,0,0,0,0,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,12,39,78,11, + 0,0,240,240,240,240,240,240,240,240,0,0,0,0,0,0, + 0,0,0,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 26,30,120,28,0,0,31,255,0,0,31,255,224,0,31,255, + 248,0,31,255,252,0,30,0,254,0,30,0,63,0,30,0, + 31,0,30,0,15,128,30,0,7,128,30,0,7,128,30,0, + 3,192,30,0,3,192,30,0,3,192,30,0,3,192,255,252, + 3,192,255,252,3,192,255,252,3,192,30,0,3,192,30,0, + 3,192,30,0,3,192,30,0,7,128,30,0,7,128,30,0, + 15,128,30,0,31,0,30,0,63,0,30,0,254,0,31,255, + 252,0,31,255,248,0,31,255,224,0,31,255,0,0,22,39, + 117,28,3,0,0,131,0,3,243,0,7,255,0,7,62,0, + 6,8,0,0,0,0,0,0,0,0,0,0,0,0,0,252, + 0,60,252,0,60,254,0,60,254,0,60,255,0,60,255,0, + 60,255,128,60,247,128,60,247,192,60,243,192,60,243,224,60, + 241,224,60,241,240,60,240,240,60,240,248,60,240,120,60,240, + 124,60,240,60,60,240,62,60,240,30,60,240,31,60,240,15, + 60,240,15,188,240,7,188,240,3,252,240,3,252,240,1,252, + 240,1,252,240,0,252,240,0,252,26,41,164,30,2,0,1, + 224,0,0,0,240,0,0,0,120,0,0,0,56,0,0,0, + 28,0,0,0,28,0,0,0,14,0,0,0,7,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,1,255,224,0,3, + 255,240,0,15,255,252,0,31,255,254,0,31,0,62,0,62, + 0,31,0,60,0,15,0,120,0,7,128,120,0,7,128,112, + 0,3,128,240,0,3,192,240,0,3,192,240,0,3,192,240, + 0,3,192,240,0,3,192,240,0,3,192,240,0,3,192,240, + 0,3,192,240,0,3,192,112,0,3,128,120,0,7,128,120, + 0,7,128,120,0,15,128,60,0,15,0,62,0,31,0,31, + 128,126,0,15,255,252,0,7,255,248,0,3,255,240,0,0, + 255,192,0,26,41,164,30,2,0,0,1,224,0,0,3,192, + 0,0,7,128,0,0,7,0,0,0,15,0,0,0,14,0, + 0,0,28,0,0,0,24,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,1,255,224,0,3,255,240,0,15,255,252, + 0,31,255,254,0,31,0,62,0,62,0,31,0,60,0,15, + 0,120,0,7,128,120,0,7,128,112,0,3,128,240,0,3, + 192,240,0,3,192,240,0,3,192,240,0,3,192,240,0,3, + 192,240,0,3,192,240,0,3,192,240,0,3,192,240,0,3, + 192,112,0,3,128,120,0,7,128,120,0,7,128,120,0,15, + 128,60,0,15,0,62,0,31,0,31,128,126,0,15,255,252, + 0,7,255,248,0,3,255,240,0,0,255,192,0,26,41,164, + 30,2,0,0,30,0,0,0,63,0,0,0,63,0,0,0, + 127,128,0,0,115,128,0,0,225,192,0,0,192,224,0,1, + 192,96,0,0,0,0,0,0,0,0,0,0,0,0,0,1, + 255,224,0,3,255,240,0,15,255,252,0,31,255,254,0,31, + 0,62,0,62,0,31,0,60,0,15,0,120,0,7,128,120, + 0,7,128,112,0,3,128,240,0,3,192,240,0,3,192,240, + 0,3,192,240,0,3,192,240,0,3,192,240,0,3,192,240, + 0,3,192,240,0,3,192,240,0,3,192,112,0,3,128,120, + 0,7,128,120,0,7,128,120,0,15,128,60,0,15,0,62, + 0,31,0,31,128,126,0,15,255,252,0,7,255,248,0,3, + 255,240,0,0,255,192,0,26,39,156,30,2,0,0,32,96, + 0,0,252,224,0,0,255,224,0,1,207,192,0,1,129,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,1,255,224,0,3,255,240,0,15,255,252,0,31,255,254, + 0,31,0,62,0,62,0,31,0,60,0,15,0,120,0,7, + 128,120,0,7,128,112,0,3,128,240,0,3,192,240,0,3, + 192,240,0,3,192,240,0,3,192,240,0,3,192,240,0,3, + 192,240,0,3,192,240,0,3,192,240,0,3,192,112,0,3, + 128,120,0,7,128,120,0,7,128,120,0,15,128,60,0,15, + 0,62,0,31,0,31,128,126,0,15,255,252,0,7,255,248, + 0,3,255,240,0,0,255,192,0,26,39,156,30,2,0,0, + 240,240,0,0,240,240,0,0,240,240,0,0,240,240,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,1,255,224,0,3,255,240,0,15,255,252,0,31, + 255,254,0,31,0,62,0,62,0,31,0,60,0,15,0,120, + 0,7,128,120,0,7,128,112,0,3,128,240,0,3,192,240, + 0,3,192,240,0,3,192,240,0,3,192,240,0,3,192,240, + 0,3,192,240,0,3,192,240,0,3,192,240,0,3,192,112, + 0,3,128,120,0,7,128,120,0,7,128,120,0,15,128,60, + 0,15,0,62,0,31,0,31,128,126,0,15,255,252,0,7, + 255,248,0,3,255,240,0,0,255,192,0,22,22,66,40,9, + 1,96,0,24,240,0,60,120,0,120,56,0,112,28,0,224, + 14,1,192,7,3,128,3,135,0,1,206,0,0,252,0,0, + 120,0,0,120,0,0,252,0,1,206,0,3,135,0,7,3, + 128,14,1,192,28,0,224,56,0,112,112,0,56,96,0,24, + 64,0,8,26,38,152,30,2,252,0,0,1,0,0,0,3, + 128,0,0,3,192,0,0,7,128,0,255,199,128,3,255,255, + 0,15,255,255,0,31,255,254,0,31,0,62,0,62,0,127, + 0,124,0,127,0,120,0,255,128,120,1,247,128,240,1,227, + 128,240,3,195,192,240,7,195,192,240,7,131,192,240,15,3, + 192,240,31,3,192,240,30,3,192,240,60,3,192,240,124,3, + 192,240,248,3,192,112,240,3,192,121,240,7,128,123,224,7, + 128,127,192,15,128,63,192,15,0,63,128,31,0,31,128,126, + 0,31,255,252,0,31,255,248,0,63,255,240,0,124,255,192, + 0,120,0,0,0,240,0,0,0,112,0,0,0,32,0,0, + 0,23,41,123,29,3,0,3,192,0,1,192,0,1,224,0, + 0,240,0,0,112,0,0,56,0,0,24,0,0,28,0,0, + 0,0,0,0,0,0,0,0,240,0,30,240,0,30,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 30,240,0,30,240,0,30,240,0,30,120,0,60,120,0,60, + 124,0,124,62,0,248,63,255,248,31,255,240,15,255,224,3, + 255,128,23,41,123,29,3,0,0,7,128,0,7,0,0,15, + 0,0,30,0,0,28,0,0,56,0,0,48,0,0,112,0, + 0,0,0,0,0,0,0,0,0,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,120,0,60,120,0, + 60,124,0,124,62,0,248,63,255,248,31,255,240,15,255,224, + 3,255,128,23,41,123,29,3,0,0,124,0,0,124,0,0, + 254,0,0,238,0,1,199,0,1,199,0,3,131,128,7,1, + 128,0,0,0,0,0,0,0,0,0,240,0,30,240,0,30, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 240,0,30,240,0,30,240,0,30,240,0,30,120,0,60,120, + 0,60,124,0,124,62,0,248,63,255,248,31,255,240,15,255, + 224,3,255,128,23,38,114,29,3,0,3,195,192,3,195,192, + 3,195,192,3,195,192,0,0,0,0,0,0,0,0,0,0, + 0,0,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 30,240,0,30,120,0,60,120,0,60,124,0,124,62,0,248, + 63,255,248,31,255,240,15,255,224,3,255,128,24,41,123,26, + 1,0,0,3,192,0,7,128,0,7,0,0,15,0,0,14, + 0,0,28,0,0,24,0,0,48,0,0,0,0,0,0,0, + 0,0,0,248,0,15,248,0,31,124,0,30,124,0,60,62, + 0,124,30,0,120,31,0,248,15,0,240,15,129,224,7,129, + 224,3,195,192,3,227,192,1,231,128,1,247,0,0,255,0, + 0,254,0,0,126,0,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,19,30,90, + 24,3,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,255,248,0,255,255,0,255,255,128,255,255, + 192,240,15,192,240,3,224,240,1,224,240,1,224,240,1,224, + 240,1,224,240,1,224,240,3,224,240,15,192,255,255,192,255, + 255,128,255,255,0,255,248,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,20,30,90, + 22,2,0,3,248,0,15,254,0,63,255,0,124,15,0,248, + 7,128,240,7,128,240,7,128,240,7,128,240,15,0,240,31, + 0,240,62,0,240,124,0,240,248,0,240,240,0,240,240,0, + 240,248,0,240,126,0,240,63,0,240,31,192,240,15,224,240, + 3,224,240,1,240,240,0,240,240,0,240,243,192,240,243,192, + 240,241,224,240,241,241,224,240,255,224,240,63,128,18,31,93, + 23,2,0,7,128,0,7,128,0,3,192,0,1,192,0,0, + 224,0,0,112,0,0,48,0,0,0,0,0,0,0,0,0, + 0,0,0,0,15,254,0,63,255,0,62,15,128,120,7,128, + 120,3,192,0,3,192,0,3,192,3,255,192,15,255,192,63, + 255,192,126,3,192,120,3,192,240,3,192,240,3,192,240,7, + 192,240,7,192,248,15,192,124,63,192,63,251,192,31,227,192, + 18,32,96,23,2,0,0,60,0,0,60,0,0,120,0,0, + 240,0,0,224,0,1,192,0,1,128,0,3,128,0,0,0, + 0,0,0,0,0,0,0,0,0,0,15,254,0,63,255,0, + 62,15,128,120,7,128,120,3,192,0,3,192,0,3,192,3, + 255,192,15,255,192,63,255,192,126,3,192,120,3,192,240,3, + 192,240,3,192,240,7,192,240,7,192,248,15,192,124,63,192, + 63,251,192,31,227,192,18,32,96,23,2,0,1,224,0,3, + 240,0,3,240,0,7,184,0,7,60,0,14,28,0,12,14, + 0,28,6,0,0,0,0,0,0,0,0,0,0,0,0,0, + 15,254,0,63,255,0,62,15,128,120,7,128,120,3,192,0, + 3,192,0,3,192,3,255,192,15,255,192,63,255,192,126,3, + 192,120,3,192,240,3,192,240,3,192,240,7,192,240,7,192, + 248,15,192,124,63,192,63,251,192,31,227,192,18,30,90,23, + 2,0,7,134,0,15,206,0,15,254,0,28,124,0,24,16, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 15,254,0,63,255,0,62,15,128,120,7,128,120,3,192,0, + 3,192,0,3,192,3,255,192,15,255,192,63,255,192,126,3, + 192,120,3,192,240,3,192,240,3,192,240,7,192,240,7,192, + 248,15,192,124,63,192,63,251,192,31,243,192,18,30,90,23, + 2,0,30,30,0,30,30,0,30,30,0,30,30,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 15,254,0,63,255,0,62,15,128,120,7,128,120,3,192,0, + 3,192,0,3,192,3,255,192,15,255,192,63,255,192,126,3, + 192,120,3,192,240,3,192,240,3,192,240,7,192,240,7,192, + 248,15,192,124,63,192,63,251,192,31,227,192,18,34,102,23, + 2,0,1,224,0,3,240,0,6,24,0,12,12,0,12,12, + 0,12,12,0,12,12,0,6,24,0,3,240,0,1,224,0, + 0,0,0,0,0,0,0,0,0,0,0,0,15,254,0,63, + 255,0,62,15,128,120,7,128,120,3,192,0,3,192,0,3, + 192,3,255,192,15,255,192,63,255,192,126,3,192,120,3,192, + 240,3,192,240,3,192,240,7,192,240,7,192,248,15,192,124, + 63,192,63,251,192,31,227,192,32,20,80,36,2,1,15,248, + 31,240,63,254,63,248,124,30,120,60,120,7,112,30,120,7, + 224,14,0,3,224,15,0,3,192,15,0,127,255,255,31,255, + 255,255,63,255,255,255,126,3,192,0,120,3,192,0,240,3, + 192,0,240,3,192,15,240,7,224,14,240,7,224,30,248,14, + 112,30,126,62,124,124,63,252,63,248,31,240,15,240,17,30, + 90,21,2,247,15,252,0,31,254,0,62,31,0,120,15,128, + 120,7,128,240,7,128,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,7,128,112,7, + 128,120,7,128,120,15,0,62,31,0,31,254,0,15,252,0, + 1,128,0,1,128,0,1,240,0,1,252,0,1,254,0,0, + 14,0,0,14,0,0,14,0,7,252,0,7,240,0,18,32, + 96,22,2,0,30,0,0,15,0,0,7,0,0,3,128,0, + 3,192,0,1,192,0,0,224,0,0,96,0,0,0,0,0, + 0,0,0,0,0,0,0,0,7,252,0,31,254,0,62,31, + 0,60,7,128,120,3,128,112,3,192,240,3,192,240,3,192, + 255,255,192,255,255,192,255,255,192,240,0,0,240,0,0,240, + 0,0,112,3,192,120,7,128,56,7,128,62,31,0,31,254, + 0,7,252,0,18,32,96,22,2,0,0,30,0,0,60,0, + 0,120,0,0,112,0,0,224,0,0,224,0,1,192,0,1, + 128,0,0,0,0,0,0,0,0,0,0,0,0,0,7,252, + 0,31,254,0,62,31,0,60,7,128,120,3,128,112,3,192, + 240,3,192,240,3,192,255,255,192,255,255,192,255,255,192,240, + 0,0,240,0,0,240,0,0,112,3,192,120,7,128,56,7, + 128,62,31,0,31,254,0,7,252,0,18,32,96,22,2,0, + 1,224,0,3,240,0,3,240,0,7,248,0,7,56,0,14, + 28,0,12,12,0,28,14,0,0,0,0,0,0,0,0,0, + 0,0,0,0,7,252,0,31,254,0,62,31,0,60,7,128, + 120,3,128,112,3,192,240,3,192,240,3,192,255,255,192,255, + 255,192,255,255,192,240,0,0,240,0,0,240,0,0,112,3, + 192,120,7,128,56,7,128,62,31,0,31,254,0,7,252,0, + 18,30,90,22,2,0,30,30,0,30,30,0,30,30,0,30, + 30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,7,252,0,31,254,0,62,15,0,60,7,128, + 120,3,128,112,3,192,240,3,192,240,3,192,255,255,192,255, + 255,192,255,255,192,240,0,0,240,0,0,240,0,0,112,3, + 192,120,3,128,60,7,128,62,15,0,31,254,0,7,252,0, + 8,32,32,10,255,0,240,120,56,28,30,14,7,3,0,0, + 0,0,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,9,32,64,10,2,0,15,128,15,0, + 30,0,28,0,56,0,56,0,112,0,224,0,0,0,0,0, + 0,0,0,0,120,0,120,0,120,0,120,0,120,0,120,0, + 120,0,120,0,120,0,120,0,120,0,120,0,120,0,120,0, + 120,0,120,0,120,0,120,0,120,0,120,0,12,32,64,10, + 255,0,15,0,31,128,31,128,59,192,57,192,112,224,224,96, + 192,112,0,0,0,0,0,0,0,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,12,30,60,10,255,0,240,240,240,240,240,240,240,240, + 0,0,0,0,0,0,0,0,0,0,0,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,20,30,90,24,2,0,16,1,0,60,7,0, + 30,31,0,7,252,0,3,240,0,7,240,0,62,120,0,120, + 60,0,96,30,0,0,15,0,7,255,128,31,255,192,63,15, + 192,60,3,192,120,1,224,120,1,224,240,1,224,240,0,240, + 240,0,240,240,0,240,240,0,240,240,0,240,240,0,240,240, + 1,224,120,1,224,120,3,224,60,3,192,63,15,128,31,255, + 0,7,254,0,18,30,90,24,3,0,7,14,0,15,204,0, + 31,252,0,28,248,0,24,16,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,243,254,0,247,255,0,254,31, + 128,248,7,128,248,7,128,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,20,32,96,24,2,0,15,0,0,7,128,0, + 3,128,0,1,192,0,1,192,0,0,224,0,0,112,0,0, + 48,0,0,0,0,0,0,0,0,0,0,0,0,0,7,252, + 0,15,255,0,63,15,128,60,3,192,120,3,224,120,1,224, + 240,1,224,240,0,240,240,0,240,240,0,240,240,0,240,240, + 0,240,240,0,240,240,1,224,120,1,224,120,3,224,60,3, + 192,63,15,128,15,255,0,7,254,0,20,32,96,24,2,0, + 0,30,0,0,30,0,0,60,0,0,56,0,0,112,0,0, + 96,0,0,224,0,1,192,0,0,0,0,0,0,0,0,0, + 0,0,0,0,7,252,0,15,255,0,63,15,128,60,3,192, + 120,3,224,120,1,224,240,1,224,240,0,240,240,0,240,240, + 0,240,240,0,240,240,0,240,240,0,240,240,1,224,120,1, + 224,120,3,224,60,3,192,63,15,128,15,255,0,7,254,0, + 20,32,96,24,2,0,0,240,0,1,248,0,1,248,0,3, + 188,0,3,156,0,7,14,0,6,6,0,12,7,0,0,0, + 0,0,0,0,0,0,0,0,0,0,7,252,0,15,255,0, + 63,15,128,60,3,192,120,3,224,120,1,224,240,1,224,240, + 0,240,240,0,240,240,0,240,240,0,240,240,0,240,240,0, + 240,240,1,224,120,1,224,120,3,224,60,3,192,63,15,128, + 15,255,0,7,254,0,20,30,90,24,2,0,3,135,0,7, + 230,0,15,254,0,14,124,0,12,8,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,7,252,0,15,255,0, + 63,15,128,60,3,192,120,3,224,120,1,224,240,1,224,240, + 0,240,240,0,240,240,0,240,240,0,240,240,0,240,240,0, + 240,240,1,224,120,1,224,120,3,224,60,3,192,63,15,128, + 15,255,0,7,254,0,20,30,90,24,2,0,15,15,0,15, + 15,0,15,15,0,15,15,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,7,252,0,15,255,0, + 63,15,128,60,3,192,120,3,224,120,1,224,240,1,224,240, + 0,240,240,0,240,240,0,240,240,0,240,240,0,240,240,0, + 240,240,1,224,120,1,224,120,3,224,60,3,192,63,15,128, + 15,255,0,7,254,0,24,19,57,40,8,2,0,16,0,0, + 56,0,0,124,0,0,124,0,0,124,0,0,0,0,0,0, + 0,0,0,0,255,255,255,255,255,255,255,255,255,0,0,0, + 0,0,0,0,0,0,0,56,0,0,124,0,0,124,0,0, + 124,0,0,56,0,21,26,78,24,1,254,0,0,56,0,0, + 120,0,0,112,3,255,224,7,255,192,31,135,192,30,3,224, + 60,7,240,60,15,240,120,14,240,120,28,120,120,56,120,120, + 120,120,120,112,120,120,224,120,121,192,120,123,192,240,63,128, + 240,63,1,240,30,1,224,15,135,192,31,255,128,59,255,0, + 112,0,0,240,0,0,96,0,0,18,32,96,24,3,0,30, + 0,0,15,0,0,7,0,0,3,128,0,3,192,0,1,192, + 0,0,224,0,0,96,0,0,0,0,0,0,0,0,0,0, + 0,0,0,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,7,192,120,7,192,124,31,192,63,251,192,31,243,192,18, + 32,96,24,3,0,0,62,0,0,60,0,0,120,0,0,112, + 0,0,224,0,0,224,0,1,192,0,3,128,0,0,0,0, + 0,0,0,0,0,0,0,0,0,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,7,192,120,7,192,124,31,192,63, + 251,192,31,243,192,18,32,96,24,3,0,1,224,0,3,240, + 0,3,240,0,7,120,0,7,56,0,14,28,0,28,12,0, + 24,14,0,0,0,0,0,0,0,0,0,0,0,0,0,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,7,192,120, + 7,192,124,31,192,63,251,192,31,243,192,18,30,90,24,3, + 0,30,30,0,30,30,0,30,30,0,30,30,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,7,192,120, + 15,192,126,31,192,63,251,192,31,243,192,20,40,120,21,1, + 248,0,15,0,0,30,0,0,28,0,0,56,0,0,112,0, + 0,112,0,0,224,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,240,0,240,240,1,224,120,1,224,120,1, + 192,60,3,192,60,3,192,62,7,128,30,7,128,30,7,0, + 15,15,0,15,15,0,15,158,0,7,158,0,7,156,0,3, + 252,0,3,252,0,1,248,0,1,248,0,1,248,0,0,240, + 0,0,240,0,0,224,0,1,224,0,33,224,0,243,192,0, + 127,192,0,127,128,0,31,0,0,19,38,114,24,3,248,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,243,254,0, + 247,255,0,254,15,128,252,7,192,248,3,192,248,3,192,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,1,224,248,3,192,248,3,192,252,7,192, + 254,15,128,247,255,0,243,254,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,20,38,114,22,1,248,15,15,0,15,15,0,15,15,0, + 15,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,240,0,240,248,0,224,120,1,224,120,1, + 224,60,3,192,60,3,192,62,3,128,30,7,128,30,7,128, + 15,15,0,15,15,0,7,143,0,7,158,0,7,222,0,3, + 252,0,3,252,0,1,252,0,1,248,0,0,248,0,0,240, + 0,0,240,0,0,240,0,1,224,0,1,224,0,1,192,0, + 3,192,0,3,192,0,3,128,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--40-400-72-72-P-189-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 30 + Calculated Max Values w=24 h=33 x= 8 y=15 dx=40 dy= 0 ascent=31 len=90 + Font Bounding box w=54 h=54 x=-3 y=-11 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =30 descent= 0 + X Font ascent =30 descent= 0 + Max Font ascent =31 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur30n[1175] U8G_SECTION(".progmem.u8g_font_fur30n") = { + 0,54,54,253,245,30,0,0,0,0,42,57,0,31,251,30, + 0,16,15,30,26,5,15,12,48,28,56,14,112,14,112,7, + 224,3,192,253,191,255,255,243,207,3,192,6,96,14,112,30, + 120,28,56,12,48,24,25,75,40,8,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,255,255,255,255, + 255,255,255,255,255,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,7,10,10,11,2,251,62,60,60,124, + 120,120,112,112,224,224,10,3,6,14,2,8,255,192,255,192, + 255,192,4,5,5,11,4,0,240,240,240,240,240,12,33,66, + 16,2,254,0,112,0,112,0,96,0,224,0,224,0,224,0, + 192,1,192,1,192,1,128,3,128,3,128,3,128,7,0,7, + 0,7,0,6,0,14,0,14,0,14,0,28,0,28,0,28, + 0,24,0,56,0,56,0,56,0,112,0,112,0,112,0,96, + 0,224,0,224,0,18,30,90,22,2,1,7,248,0,31,254, + 0,63,255,0,60,15,0,120,7,128,120,7,128,112,7,128, + 112,3,128,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,112,3,192,112,3,128, + 120,7,128,120,7,128,56,7,0,60,15,0,31,254,0,15, + 254,0,7,248,0,10,30,60,22,5,0,7,192,15,192,31, + 192,63,192,127,192,251,192,243,192,195,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,17,30,90,22,2,1,15,248,0, + 31,252,0,63,254,0,124,15,0,120,7,0,120,7,128,120, + 7,128,240,7,128,0,7,128,0,7,128,0,7,128,0,15, + 0,0,31,0,0,30,0,0,62,0,0,124,0,0,248,0, + 0,248,0,1,240,0,3,224,0,7,192,0,15,128,0,31, + 0,0,31,0,0,62,0,0,124,0,0,248,0,0,255,255, + 128,255,255,128,255,255,128,18,30,90,22,2,1,7,248,0, + 31,254,0,62,31,0,60,7,128,124,3,128,120,3,192,120, + 3,192,120,3,192,0,3,192,0,3,128,0,7,128,0,15, + 0,0,62,0,3,252,0,3,248,0,3,254,0,0,63,0, + 0,15,128,0,7,128,0,3,192,0,3,192,0,3,192,240, + 3,192,240,3,192,248,3,192,120,7,128,124,15,128,62,31, + 0,31,254,0,15,248,0,20,30,90,22,1,0,0,15,128, + 0,31,128,0,31,128,0,63,128,0,127,128,0,127,128,0, + 247,128,1,231,128,1,231,128,3,199,128,3,135,128,7,135, + 128,15,7,128,14,7,128,30,7,128,60,7,128,60,7,128, + 120,7,128,240,7,128,240,7,128,255,255,240,255,255,240,255, + 255,240,0,7,128,0,7,128,0,7,128,0,7,128,0,7, + 128,0,7,128,0,7,128,18,30,90,22,2,0,127,255,0, + 127,255,0,127,255,0,120,0,0,120,0,0,120,0,0,120, + 0,0,120,0,0,120,0,0,120,0,0,120,96,0,123,252, + 0,127,254,0,126,31,0,124,7,128,120,7,128,112,3,128, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,240,3,192,240,7,128,240,7,128,120,15,0,127,254, + 0,31,252,0,15,248,0,19,30,90,22,2,1,3,252,0, + 15,255,0,31,255,0,63,15,128,62,7,128,124,3,192,120, + 3,192,120,3,192,240,0,0,240,0,0,240,0,0,240,0, + 0,241,252,0,243,255,0,247,255,128,254,7,128,252,3,192, + 252,3,192,248,1,192,248,1,224,248,1,224,248,1,224,248, + 1,224,248,1,224,120,1,192,124,3,192,60,7,128,31,15, + 128,15,255,0,7,252,0,18,30,90,22,2,0,255,255,192, + 255,255,192,255,255,192,0,3,192,0,3,192,0,7,128,0, + 7,128,0,7,128,0,15,0,0,15,0,0,31,0,0,30, + 0,0,30,0,0,60,0,0,60,0,0,60,0,0,120,0, + 0,120,0,0,248,0,0,240,0,0,240,0,1,240,0,1, + 224,0,1,224,0,3,192,0,3,192,0,7,192,0,7,128, + 0,7,128,0,15,128,0,19,30,90,22,2,1,7,252,0, + 31,254,0,62,15,128,60,7,128,120,3,192,120,3,192,120, + 3,192,120,3,192,120,3,192,120,3,192,56,3,128,60,7, + 128,30,15,0,15,254,0,7,252,0,31,254,0,60,7,128, + 120,3,128,112,1,192,240,1,192,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,120,3,192,120,3,192,62,15, + 128,31,255,0,7,252,0,19,30,90,22,2,1,7,252,0, + 31,255,0,62,31,128,120,7,128,120,3,192,112,3,192,240, + 3,192,240,3,224,240,1,224,240,1,224,240,3,224,240,3, + 224,240,3,224,112,3,224,120,7,224,60,15,224,63,253,224, + 31,249,224,7,241,224,0,1,192,0,1,192,0,1,192,0, + 3,192,112,3,192,112,3,128,120,7,128,56,15,0,62,31, + 0,31,254,0,15,248,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--40-400-72-72-P-189-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 30, '1' Height: 30 + Calculated Max Values w=37 h=43 x=10 y=25 dx=40 dy= 0 ascent=33 len=185 + Font Bounding box w=54 h=54 x=-3 y=-11 + Calculated Min Values x=-1 y=-11 dx= 0 dy= 0 + Pure Font ascent =30 descent=-7 + X Font ascent =31 descent=-8 + Max Font ascent =33 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur30r[7380] U8G_SECTION(".progmem.u8g_font_fur30r") = { + 0,54,54,253,245,30,9,94,20,223,32,127,249,33,245,31, + 248,0,0,0,12,0,0,4,30,30,14,5,0,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,0,0,0,240,240,240,240,12,12,24,18,3, + 18,240,240,240,240,240,240,240,240,240,240,240,240,240,112,224, + 112,224,112,96,112,96,112,96,96,26,30,120,30,2,0,0, + 28,14,0,0,28,28,0,0,28,28,0,0,28,28,0,0, + 56,24,0,0,56,56,0,0,56,56,0,0,112,56,0,0, + 112,112,0,31,255,255,192,31,255,255,128,31,255,255,128,0, + 224,224,0,0,224,224,0,1,192,224,0,1,193,192,0,1, + 193,192,0,127,255,254,0,255,255,254,0,255,255,254,0,3, + 3,128,0,7,7,0,0,7,7,0,0,7,7,0,0,14, + 7,0,0,14,14,0,0,14,14,0,0,14,14,0,0,28, + 28,0,0,28,28,0,0,20,37,111,22,1,252,0,96,0, + 0,96,0,0,96,0,3,252,0,15,254,0,63,255,0,63, + 255,128,124,103,128,120,99,192,240,99,192,240,99,192,240,96, + 0,240,96,0,240,96,0,120,96,0,127,96,0,63,240,0, + 31,254,0,15,255,128,1,255,192,0,111,224,0,97,224,0, + 96,240,0,96,240,0,96,240,240,96,240,240,96,240,240,96, + 240,120,96,240,124,97,224,63,255,192,31,255,128,15,255,0, + 0,96,0,0,96,0,0,96,0,0,96,0,33,31,155,37, + 2,0,0,0,0,224,0,15,192,0,192,0,31,240,1,192, + 0,63,248,1,128,0,120,60,3,0,0,240,60,7,0,0, + 240,30,6,0,0,240,30,14,0,0,240,30,12,0,0,240, + 30,28,0,0,240,30,24,0,0,240,28,56,0,0,112,60, + 48,0,0,120,124,112,0,0,63,248,224,0,0,31,240,192, + 96,0,3,129,195,252,0,0,1,135,254,0,0,3,143,15, + 0,0,3,14,7,0,0,7,30,7,128,0,6,30,7,128, + 0,14,30,7,128,0,28,30,7,128,0,28,30,7,128,0, + 56,30,7,128,0,56,30,7,128,0,112,15,15,0,0,96, + 15,254,0,0,224,7,252,0,0,192,1,248,0,27,30,120, + 30,2,1,3,254,0,0,7,255,0,0,15,143,128,0,15, + 3,192,0,30,3,192,0,30,3,192,0,30,3,192,0,30, + 3,192,0,31,7,128,0,15,15,128,0,15,191,0,0,7, + 252,0,0,3,248,0,0,7,224,15,0,15,240,15,0,63, + 248,15,0,124,124,15,0,120,62,15,0,248,31,15,0,240, + 15,142,0,240,7,206,0,240,3,254,0,240,1,254,0,240, + 0,252,0,248,0,124,0,124,0,126,0,126,1,255,0,63, + 255,255,128,31,255,207,192,7,255,3,224,4,12,12,15,5, + 18,240,240,240,240,112,112,112,112,112,112,112,112,7,36,36, + 15,4,251,14,14,28,28,60,56,56,120,120,120,112,112,240, + 240,240,240,240,240,240,240,240,240,240,240,112,112,120,120,120, + 56,56,60,28,28,14,14,7,36,36,14,4,251,224,224,96, + 112,112,120,56,56,60,60,60,28,28,28,30,30,30,30,30, + 30,30,30,28,28,60,60,60,60,56,56,120,112,112,224,224, + 224,16,15,30,26,5,15,12,48,28,56,14,112,14,112,7, + 224,3,192,253,191,255,255,243,207,3,192,6,96,14,112,30, + 120,28,56,12,48,24,25,75,40,8,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,255,255,255,255, + 255,255,255,255,255,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,7,10,10,11,2,251,62,60,60,124, + 120,120,112,112,224,224,10,3,6,14,2,8,255,192,255,192, + 255,192,4,5,5,11,4,0,240,240,240,240,240,12,33,66, + 16,2,254,0,112,0,112,0,96,0,224,0,224,0,224,0, + 192,1,192,1,192,1,128,3,128,3,128,3,128,7,0,7, + 0,7,0,6,0,14,0,14,0,14,0,28,0,28,0,28, + 0,24,0,56,0,56,0,56,0,112,0,112,0,112,0,96, + 0,224,0,224,0,18,30,90,22,2,1,7,248,0,31,254, + 0,63,255,0,60,15,0,120,7,128,120,7,128,112,7,128, + 112,3,128,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,112,3,192,112,3,128, + 120,7,128,120,7,128,56,7,0,60,15,0,31,254,0,15, + 254,0,7,248,0,10,30,60,22,5,0,7,192,15,192,31, + 192,63,192,127,192,251,192,243,192,195,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,17,30,90,22,2,1,15,248,0, + 31,252,0,63,254,0,124,15,0,120,7,0,120,7,128,120, + 7,128,240,7,128,0,7,128,0,7,128,0,7,128,0,15, + 0,0,31,0,0,30,0,0,62,0,0,124,0,0,248,0, + 0,248,0,1,240,0,3,224,0,7,192,0,15,128,0,31, + 0,0,31,0,0,62,0,0,124,0,0,248,0,0,255,255, + 128,255,255,128,255,255,128,18,30,90,22,2,1,7,248,0, + 31,254,0,62,31,0,60,7,128,124,3,128,120,3,192,120, + 3,192,120,3,192,0,3,192,0,3,128,0,7,128,0,15, + 0,0,62,0,3,252,0,3,248,0,3,254,0,0,63,0, + 0,15,128,0,7,128,0,3,192,0,3,192,0,3,192,240, + 3,192,240,3,192,248,3,192,120,7,128,124,15,128,62,31, + 0,31,254,0,15,248,0,20,30,90,22,1,0,0,15,128, + 0,31,128,0,31,128,0,63,128,0,127,128,0,127,128,0, + 247,128,1,231,128,1,231,128,3,199,128,3,135,128,7,135, + 128,15,7,128,14,7,128,30,7,128,60,7,128,60,7,128, + 120,7,128,240,7,128,240,7,128,255,255,240,255,255,240,255, + 255,240,0,7,128,0,7,128,0,7,128,0,7,128,0,7, + 128,0,7,128,0,7,128,18,30,90,22,2,0,127,255,0, + 127,255,0,127,255,0,120,0,0,120,0,0,120,0,0,120, + 0,0,120,0,0,120,0,0,120,0,0,120,96,0,123,252, + 0,127,254,0,126,31,0,124,7,128,120,7,128,112,3,128, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,240,3,192,240,7,128,240,7,128,120,15,0,127,254, + 0,31,252,0,15,248,0,19,30,90,22,2,1,3,252,0, + 15,255,0,31,255,0,63,15,128,62,7,128,124,3,192,120, + 3,192,120,3,192,240,0,0,240,0,0,240,0,0,240,0, + 0,241,252,0,243,255,0,247,255,128,254,7,128,252,3,192, + 252,3,192,248,1,192,248,1,224,248,1,224,248,1,224,248, + 1,224,248,1,224,120,1,192,124,3,192,60,7,128,31,15, + 128,15,255,0,7,252,0,18,30,90,22,2,0,255,255,192, + 255,255,192,255,255,192,0,3,192,0,3,192,0,7,128,0, + 7,128,0,7,128,0,15,0,0,15,0,0,31,0,0,30, + 0,0,30,0,0,60,0,0,60,0,0,60,0,0,120,0, + 0,120,0,0,248,0,0,240,0,0,240,0,1,240,0,1, + 224,0,1,224,0,3,192,0,3,192,0,7,192,0,7,128, + 0,7,128,0,15,128,0,19,30,90,22,2,1,7,252,0, + 31,254,0,62,15,128,60,7,128,120,3,192,120,3,192,120, + 3,192,120,3,192,120,3,192,120,3,192,56,3,128,60,7, + 128,30,15,0,15,254,0,7,252,0,31,254,0,60,7,128, + 120,3,128,112,1,192,240,1,192,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,120,3,192,120,3,192,62,15, + 128,31,255,0,7,252,0,19,30,90,22,2,1,7,252,0, + 31,255,0,62,31,128,120,7,128,120,3,192,112,3,192,240, + 3,192,240,3,224,240,1,224,240,1,224,240,3,224,240,3, + 224,240,3,224,112,3,224,120,7,224,60,15,224,63,253,224, + 31,249,224,7,241,224,0,1,192,0,1,192,0,1,192,0, + 3,192,112,3,192,112,3,128,120,7,128,56,15,0,62,31, + 0,31,254,0,15,248,0,4,20,20,11,4,0,240,240,240, + 240,240,0,0,0,0,0,0,0,0,0,0,240,240,240,240, + 240,6,26,26,11,2,250,60,60,60,60,60,0,0,0,0, + 0,0,0,0,0,0,0,60,60,60,56,120,112,112,112,224, + 224,24,21,63,40,8,2,0,0,1,0,0,15,0,0,63, + 0,1,252,0,7,224,0,63,0,1,252,0,7,224,0,63, + 0,0,252,0,0,224,0,0,248,0,0,126,0,0,15,192, + 0,3,248,0,0,126,0,0,31,192,0,3,240,0,0,126, + 0,0,31,0,0,3,24,10,30,40,8,7,255,255,255,255, + 255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0, + 0,255,255,255,255,255,255,255,255,255,24,21,63,40,8,2, + 128,0,0,240,0,0,252,0,0,63,128,0,7,224,0,0, + 252,0,0,63,0,0,7,224,0,0,252,0,0,63,0,0, + 7,0,0,31,0,0,126,0,3,240,0,31,192,0,126,0, + 3,248,0,15,192,0,126,0,0,248,0,0,192,0,0,18, + 30,90,21,1,1,15,248,0,31,254,0,63,255,0,126,127, + 128,248,7,128,112,3,192,0,3,192,0,3,192,0,3,192, + 0,7,128,0,7,128,0,15,0,0,30,0,0,60,0,0, + 120,0,1,240,0,1,224,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,3,192,0,0,0,0,0,0,0, + 0,0,0,3,192,0,3,192,0,3,192,0,3,192,0,35, + 37,185,39,2,249,0,7,252,0,0,0,63,255,128,0,0, + 255,255,240,0,1,255,255,248,0,7,248,3,252,0,15,224, + 0,126,0,15,128,0,31,0,31,0,0,15,128,62,0,0, + 7,128,60,0,0,7,192,120,7,231,131,192,120,15,247,131, + 192,112,31,255,129,224,240,62,31,129,224,240,60,15,129,224, + 240,120,7,129,224,240,120,7,129,224,240,120,7,129,224,240, + 120,7,129,224,240,120,7,129,224,240,120,7,129,224,240,120, + 7,129,192,240,120,7,129,192,112,56,15,131,192,120,60,15, + 135,128,120,30,27,255,0,124,31,251,255,0,60,15,240,252, + 0,62,1,128,48,0,31,0,0,0,0,31,128,0,0,0, + 15,224,0,0,0,7,248,0,128,0,3,255,255,128,0,0, + 255,255,128,0,0,63,255,128,0,0,7,254,0,0,28,30, + 120,30,1,0,0,15,0,0,0,31,128,0,0,31,128,0, + 0,63,192,0,0,63,192,0,0,127,192,0,0,121,224,0, + 0,121,224,0,0,241,240,0,0,240,240,0,1,240,240,0, + 1,224,248,0,1,224,120,0,3,224,124,0,3,192,60,0, + 7,192,60,0,7,128,62,0,7,128,30,0,15,128,31,0, + 15,255,255,0,31,255,255,128,31,255,255,128,30,0,7,128, + 60,0,3,192,60,0,3,192,124,0,3,224,120,0,1,224, + 120,0,1,224,240,0,0,240,240,0,0,240,21,30,90,26, + 3,0,255,254,0,255,255,128,255,255,192,255,255,224,240,7, + 224,240,1,240,240,0,240,240,0,240,240,0,240,240,0,240, + 240,0,224,240,1,224,240,7,192,255,255,128,255,255,0,255, + 255,192,240,3,224,240,0,240,240,0,112,240,0,120,240,0, + 120,240,0,120,240,0,120,240,0,248,240,1,248,240,7,240, + 255,255,224,255,255,224,255,255,128,255,254,0,22,30,90,26, + 2,1,1,255,128,7,255,224,15,255,240,31,0,248,62,0, + 120,60,0,60,120,0,60,120,0,60,120,0,0,112,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,112,0, + 0,112,0,0,120,0,60,120,0,60,60,0,60,60,0,120, + 31,0,248,15,255,240,7,255,224,1,255,128,23,30,90,28, + 3,0,255,248,0,255,255,0,255,255,192,255,255,224,240,15, + 240,240,1,248,240,0,248,240,0,124,240,0,60,240,0,60, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 60,240,0,60,240,0,124,240,0,248,240,1,240,240,7,240, + 255,255,224,255,255,192,255,255,0,255,248,0,19,30,90,24, + 3,0,255,255,192,255,255,192,255,255,192,255,255,192,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,255,255,192,255,255,192,255, + 255,192,255,255,192,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 255,255,224,255,255,224,255,255,224,255,255,224,17,30,90,23, + 3,0,255,255,128,255,255,128,255,255,128,255,255,128,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,255,255,0,255,255,0,255, + 255,0,255,255,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,25,30,120,30, + 2,1,0,255,224,0,3,255,248,0,7,255,252,0,15,255, + 254,0,31,128,63,0,62,0,15,0,60,0,7,128,120,0, + 7,128,120,0,0,0,112,0,0,0,240,0,0,0,240,0, + 0,0,240,0,0,0,240,0,0,0,240,3,255,128,240,3, + 255,128,240,3,255,128,240,3,255,128,240,0,7,128,240,0, + 7,128,120,0,7,128,120,0,7,128,124,0,7,128,62,0, + 7,128,62,0,7,128,31,128,7,128,15,255,255,128,7,255, + 255,128,3,255,255,0,0,255,248,0,22,30,90,28,3,0, + 240,0,60,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,255,255,252,255,255,252,255,255,252, + 255,255,252,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,240,0,60,4,30,30,10,3,0, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,17,30, + 90,22,2,0,0,7,128,0,7,128,0,7,128,0,7,128, + 0,7,128,0,7,128,0,7,128,0,7,128,0,7,128,0, + 7,128,0,7,128,0,7,128,0,7,128,0,7,128,0,7, + 128,0,7,128,0,7,128,0,7,128,0,7,128,0,7,128, + 0,7,128,0,7,128,240,7,128,240,7,128,240,15,128,120, + 31,0,127,255,0,63,254,0,31,252,0,15,240,0,22,30, + 90,26,3,0,240,1,240,240,3,224,240,7,192,240,15,128, + 240,31,0,240,30,0,240,60,0,240,124,0,240,248,0,241, + 240,0,243,224,0,247,192,0,255,128,0,255,128,0,255,192, + 0,247,192,0,243,224,0,243,240,0,241,248,0,240,252,0, + 240,124,0,240,62,0,240,31,0,240,31,128,240,15,192,240, + 7,192,240,3,224,240,1,240,240,1,248,240,0,252,17,30, + 90,21,3,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,255,255,128,255,255,128,255,255,128,255,255,128,30,30, + 120,36,3,0,252,0,0,252,254,0,1,252,254,0,1,252, + 254,0,1,252,255,0,3,252,255,0,3,252,247,128,7,188, + 247,128,7,188,247,128,7,188,243,192,15,60,243,192,15,60, + 243,192,14,60,241,224,30,60,241,224,30,60,240,224,28,60, + 240,240,60,60,240,240,60,60,240,120,120,60,240,120,120,60, + 240,120,120,60,240,60,240,60,240,60,240,60,240,28,224,60, + 240,31,224,60,240,31,224,60,240,15,192,60,240,15,192,60, + 240,15,192,60,240,7,128,60,240,7,128,60,22,30,90,28, + 3,0,252,0,60,252,0,60,254,0,60,254,0,60,255,0, + 60,255,0,60,255,128,60,247,128,60,247,192,60,243,192,60, + 243,224,60,241,224,60,241,240,60,240,240,60,240,248,60,240, + 120,60,240,124,60,240,60,60,240,62,60,240,30,60,240,31, + 60,240,15,60,240,15,188,240,7,188,240,3,252,240,3,252, + 240,1,252,240,1,252,240,0,252,240,0,252,26,30,120,30, + 2,1,1,255,224,0,3,255,240,0,15,255,252,0,31,255, + 254,0,31,0,62,0,62,0,31,0,60,0,15,0,120,0, + 7,128,120,0,7,128,112,0,3,128,240,0,3,192,240,0, + 3,192,240,0,3,192,240,0,3,192,240,0,3,192,240,0, + 3,192,240,0,3,192,240,0,3,192,240,0,3,192,112,0, + 3,128,120,0,7,128,120,0,7,128,120,0,15,128,60,0, + 15,0,62,0,31,0,31,128,126,0,15,255,252,0,7,255, + 248,0,3,255,240,0,0,255,192,0,19,30,90,24,3,0, + 255,248,0,255,254,0,255,255,128,255,255,192,240,15,192,240, + 3,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,3,224,240,15,192,255,255,192,255,255,128, + 255,254,0,255,248,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,28,30,120,31,2,1, + 0,255,192,0,3,255,240,0,15,255,252,0,31,255,254,0, + 31,0,62,0,62,0,31,0,60,0,15,128,120,0,7,128, + 120,0,7,128,112,0,3,192,240,0,3,192,240,0,3,192, + 240,0,3,192,240,0,3,192,240,0,3,192,240,0,3,192, + 240,0,3,192,240,0,3,192,240,0,3,192,112,0,3,128, + 120,0,7,128,120,0,7,128,120,0,15,0,60,0,15,0, + 62,0,30,0,31,128,126,0,15,255,255,240,7,255,255,240, + 3,255,255,240,0,255,255,240,20,30,90,25,3,0,255,252, + 0,255,255,0,255,255,192,255,255,224,240,7,224,240,1,224, + 240,0,240,240,0,240,240,0,240,240,0,240,240,0,224,240, + 1,224,240,7,192,255,255,128,255,255,0,255,255,0,255,255, + 128,240,7,192,240,3,192,240,3,192,240,1,224,240,1,224, + 240,1,224,240,1,224,240,0,224,240,0,224,240,0,240,240, + 0,240,240,0,240,240,0,112,22,30,90,26,2,1,3,255, + 0,15,255,192,63,255,224,63,255,240,124,0,240,120,0,120, + 240,0,120,240,0,120,240,0,0,240,0,0,120,0,0,124, + 0,0,63,128,0,31,252,0,15,255,128,0,255,224,0,7, + 240,0,0,248,0,0,120,0,0,56,0,0,60,240,0,60, + 240,0,60,240,0,60,120,0,120,124,0,248,63,255,240,63, + 255,240,31,255,192,7,255,0,23,30,90,25,1,0,255,255, + 254,255,255,254,255,255,254,255,255,254,0,120,0,0,120,0, + 0,120,0,0,120,0,0,120,0,0,120,0,0,120,0,0, + 120,0,0,120,0,0,120,0,0,120,0,0,120,0,0,120, + 0,0,120,0,0,120,0,0,120,0,0,120,0,0,120,0, + 0,120,0,0,120,0,0,120,0,0,120,0,0,120,0,0, + 120,0,0,120,0,0,120,0,23,30,90,29,3,0,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 120,0,60,120,0,60,124,0,124,62,0,248,63,255,248,31, + 255,240,15,255,224,3,255,128,24,30,90,26,1,0,240,0, + 15,248,0,15,248,0,31,120,0,30,124,0,30,124,0,62, + 60,0,60,62,0,60,30,0,124,30,0,120,31,0,120,15, + 0,248,15,0,240,15,0,240,7,129,240,7,129,224,7,129, + 224,3,195,224,3,195,192,3,195,192,1,231,192,1,231,128, + 1,231,128,0,255,128,0,255,0,0,255,0,0,126,0,0, + 126,0,0,126,0,0,60,0,37,30,150,39,1,0,240,0, + 248,0,120,240,0,248,0,120,240,1,248,0,248,120,1,252, + 0,240,120,1,252,0,240,120,1,220,0,240,124,3,222,1, + 224,60,3,222,1,224,60,3,222,1,224,60,3,142,1,224, + 30,7,143,3,192,30,7,143,3,192,30,7,15,3,192,30, + 7,7,3,128,15,15,7,135,128,15,15,7,135,128,15,14, + 3,135,128,7,14,3,135,0,7,158,3,207,0,7,158,3, + 207,0,7,156,1,206,0,3,156,1,222,0,3,252,1,254, + 0,3,252,1,254,0,1,248,0,252,0,1,248,0,252,0, + 1,248,0,252,0,1,240,0,248,0,0,240,0,120,0,0, + 240,0,120,0,26,30,120,28,1,0,62,0,15,0,62,0, + 31,0,31,0,30,0,15,128,60,0,15,128,124,0,7,192, + 120,0,3,224,240,0,3,224,240,0,1,241,224,0,0,243, + 224,0,0,251,192,0,0,127,128,0,0,63,128,0,0,63, + 0,0,0,63,0,0,0,63,128,0,0,127,128,0,0,247, + 192,0,0,243,224,0,1,227,224,0,3,225,240,0,3,192, + 248,0,7,128,248,0,15,128,124,0,15,0,62,0,31,0, + 62,0,62,0,31,0,60,0,31,0,124,0,15,128,248,0, + 7,192,24,30,90,26,1,0,248,0,15,248,0,31,124,0, + 30,124,0,60,62,0,124,30,0,120,31,0,248,15,0,240, + 15,129,224,7,129,224,3,195,192,3,227,192,1,231,128,1, + 247,0,0,255,0,0,254,0,0,126,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 60,0,21,30,90,25,2,0,127,255,248,127,255,248,127,255, + 248,127,255,248,0,0,248,0,1,248,0,1,240,0,3,224, + 0,7,192,0,15,128,0,31,128,0,31,0,0,62,0,0, + 124,0,0,252,0,0,248,0,1,240,0,3,224,0,7,192, + 0,15,192,0,15,128,0,31,0,0,62,0,0,126,0,0, + 252,0,0,248,0,0,255,255,248,255,255,248,255,255,248,255, + 255,248,8,38,38,16,4,248,255,255,255,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,255,255,255,12,33, + 66,16,2,254,224,0,224,0,224,0,96,0,112,0,112,0, + 48,0,56,0,56,0,56,0,28,0,28,0,28,0,12,0, + 14,0,14,0,6,0,7,0,7,0,7,0,3,0,3,128, + 3,128,1,128,1,192,1,192,1,192,0,192,0,224,0,224, + 0,96,0,112,0,112,8,38,38,16,4,248,255,255,255,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,255, + 255,255,20,25,75,40,10,0,0,96,0,0,240,0,0,240, + 0,0,240,0,1,248,0,1,152,0,3,156,0,3,12,0, + 3,12,0,7,14,0,6,6,0,6,6,0,14,7,0,12, + 3,0,28,3,128,28,1,128,24,1,128,56,1,192,48,0, + 192,48,0,192,112,0,224,96,0,96,224,0,112,224,0,112, + 192,0,48,20,3,9,20,0,251,255,255,240,255,255,240,255, + 255,240,8,7,7,9,255,25,240,120,56,28,14,14,7,18, + 20,60,23,2,1,15,254,0,63,255,0,62,15,128,120,7, + 128,120,3,192,0,3,192,0,3,192,3,255,192,15,255,192, + 63,255,192,126,3,192,120,3,192,240,3,192,240,3,192,240, + 7,192,240,7,192,248,15,192,124,63,192,63,251,192,31,227, + 192,19,30,90,24,3,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,243,252,0,247,255,0,255,15,128,252,7, + 128,248,3,192,248,3,192,240,1,192,240,1,224,240,1,224, + 240,1,224,240,1,224,240,1,224,240,1,192,240,3,192,240, + 3,192,248,7,128,252,7,128,254,31,0,247,254,0,243,252, + 0,17,20,60,21,2,1,15,252,0,31,254,0,62,31,0, + 120,15,128,120,7,128,240,7,128,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,7, + 128,112,7,128,120,7,128,120,15,0,62,31,0,31,254,0, + 15,252,0,19,30,90,24,2,0,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,15,249,224,31,253,224,62,31,224, + 60,7,224,120,7,224,120,3,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,120,3,224,120,3,224,60,7,224,31,15,224,15,255,224, + 7,249,224,18,20,60,22,2,1,7,252,0,31,254,0,62, + 31,0,60,7,128,120,3,128,112,3,192,240,3,192,240,3, + 192,255,255,192,255,255,192,255,255,192,240,0,0,240,0,0, + 240,0,0,112,3,192,120,7,128,56,7,128,62,31,0,31, + 254,0,7,252,0,13,30,60,14,1,0,1,248,3,248,7, + 248,15,128,15,0,15,0,15,0,15,0,15,0,15,0,255, + 240,255,240,255,240,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,19,28,84,24,2,249,15,249,224, + 31,253,224,62,31,224,120,7,224,120,3,224,112,3,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,3,224,120,3,224,124,7,224,62,15,224, + 31,253,224,15,249,224,0,129,224,0,1,224,0,3,192,120, + 3,192,120,3,192,60,7,128,63,255,0,15,254,0,3,248, + 0,18,30,90,24,3,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,243,254,0,247,255,0,254,31,128,248,7, + 128,240,7,128,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,4,30,30,8,2,0,240,240,240,240,0,0,0,0,0, + 0,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,7,38,38,11,2,248,30,30,30,30,0, + 0,0,0,0,0,30,30,30,30,30,30,30,30,30,30,30, + 30,30,30,30,30,30,30,30,30,30,30,30,30,30,254,252, + 248,16,30,60,20,3,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,30,240,62,240, + 124,240,248,241,240,243,224,247,192,255,128,255,0,255,0,247, + 128,247,192,243,224,241,240,240,240,240,248,240,124,240,62,240, + 30,240,31,4,30,30,10,3,0,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,30,20,80,36,3,1,243,252,31, + 224,247,254,63,240,254,31,112,248,252,15,224,120,248,7,192, + 60,240,7,128,60,240,7,128,60,240,7,128,60,240,7,128, + 60,240,7,128,60,240,7,128,60,240,7,128,60,240,7,128, + 60,240,7,128,60,240,7,128,60,240,7,128,60,240,7,128, + 60,240,7,128,60,240,7,128,60,240,7,128,60,18,20,60, + 24,3,1,243,254,0,247,255,0,254,31,128,248,7,128,248, + 7,128,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,20, + 20,60,24,2,1,7,252,0,15,255,0,63,15,128,60,3, + 192,120,3,224,120,1,224,240,1,224,240,0,240,240,0,240, + 240,0,240,240,0,240,240,0,240,240,0,240,240,1,224,120, + 1,224,120,3,224,60,3,192,63,15,128,15,255,0,7,254, + 0,19,28,84,24,3,249,243,254,0,247,255,0,254,15,128, + 252,7,192,248,3,192,248,3,192,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,248,3,192,248,3,192,252,7,192,254,15,128,247,255,0, + 243,254,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,19,28,84,24,2, + 249,15,249,224,31,253,224,62,15,224,124,7,224,120,3,224, + 120,3,224,240,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,120,3,224,120,3, + 224,124,7,224,62,15,224,31,253,224,15,249,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,11,20,40,15,3,0,243,224,247,224,255, + 224,254,0,248,0,248,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,16,20,40,20,2,1,31,248,63,254,124,62,248, + 31,240,15,240,0,240,0,124,0,127,192,63,248,15,254,0, + 126,0,31,0,15,240,15,240,15,240,31,124,62,127,252,31, + 248,12,25,50,14,1,1,14,0,30,0,30,0,30,0,30, + 0,255,240,255,240,255,240,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,15,0,15,240,7,240,18,20,60,24,3,0,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,7,192,120, + 15,192,126,31,192,63,251,192,31,243,192,20,20,60,21,1, + 0,240,0,240,240,1,224,120,1,224,120,1,192,124,3,192, + 60,3,192,60,7,128,30,7,128,30,7,0,15,15,0,15, + 14,0,15,14,0,7,158,0,7,156,0,3,252,0,3,248, + 0,3,248,0,1,248,0,1,240,0,0,240,0,31,20,80, + 33,1,0,240,7,192,30,240,15,192,28,240,15,192,60,120, + 15,224,60,120,30,224,56,120,30,224,120,56,28,240,120,60, + 28,112,112,60,60,112,112,28,56,120,240,30,56,56,224,30, + 120,56,224,14,112,57,224,15,112,29,192,15,240,29,192,7, + 224,31,192,7,224,31,128,7,224,15,128,3,192,15,128,3, + 192,15,0,20,20,60,22,1,0,120,1,224,60,3,192,62, + 3,192,31,7,128,15,15,0,7,158,0,7,222,0,3,252, + 0,1,248,0,0,240,0,1,248,0,3,252,0,3,188,0, + 7,158,0,15,31,0,30,15,128,62,7,128,60,3,192,120, + 3,224,240,1,240,20,28,84,21,1,248,240,0,240,240,1, + 224,120,1,224,120,1,192,60,3,192,60,3,192,62,7,128, + 30,7,128,30,7,128,15,15,0,15,15,0,15,158,0,7, + 158,0,7,158,0,3,252,0,3,252,0,1,248,0,1,248, + 0,1,248,0,0,240,0,0,240,0,0,224,0,1,224,0, + 1,224,0,1,192,0,3,192,0,3,128,0,7,128,0,15, + 20,40,19,2,0,127,254,127,254,127,254,0,62,0,124,0, + 120,0,240,1,240,3,224,3,192,7,128,15,128,31,0,30, + 0,60,0,124,0,248,0,255,254,255,254,255,254,13,41,82, + 19,3,246,0,24,1,248,3,248,3,224,7,128,7,128,7, + 128,7,0,7,0,7,0,7,0,7,128,7,128,7,0,7, + 0,7,0,15,0,31,0,62,0,252,0,248,0,252,0,126, + 0,30,0,15,0,15,0,7,0,7,0,7,0,7,128,7, + 128,7,0,7,0,7,0,7,0,7,128,7,128,3,192,3, + 248,1,248,0,120,2,43,43,14,6,245,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,13,41,82,19,3,246,192,0,252,0, + 254,0,30,0,15,0,15,0,7,0,7,0,7,0,7,0, + 7,0,7,128,7,128,7,128,7,128,7,128,7,128,3,192, + 3,224,1,248,0,248,1,248,1,240,3,192,3,192,7,128, + 7,128,7,128,7,128,7,128,7,128,7,0,7,0,7,0, + 7,0,7,0,15,0,31,0,254,0,252,0,240,0,21,5, + 15,21,0,8,2,0,56,31,240,120,63,255,240,120,127,224, + 240,15,128,255}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--48-480-72-72-P-226-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 35 + Calculated Max Values w=29 h=39 x=10 y=16 dx=49 dy= 0 ascent=36 len=116 + Font Bounding box w=65 h=64 x=-4 y=-13 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =35 descent= 0 + X Font ascent =35 descent= 0 + Max Font ascent =36 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur35n[1417] U8G_SECTION(".progmem.u8g_font_fur35n") = { + 0,65,64,252,243,35,0,0,0,0,42,57,0,36,250,35, + 0,19,19,57,31,6,16,6,12,0,30,15,0,15,30,0, + 15,30,0,7,28,0,3,184,0,1,176,0,193,240,96,255, + 255,224,255,255,224,248,227,224,1,240,0,3,184,0,7,188, + 0,7,28,0,15,30,0,30,15,0,14,14,0,2,8,0, + 29,29,116,49,10,0,0,7,0,0,0,7,0,0,0,7, + 0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7, + 0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7, + 0,0,0,7,0,0,0,7,0,0,255,255,255,248,255,255, + 255,248,255,255,255,248,0,7,0,0,0,7,0,0,0,7, + 0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7, + 0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7, + 0,0,0,7,0,0,0,7,0,0,9,12,24,13,2,250, + 31,128,31,0,31,0,62,0,62,0,62,0,60,0,124,0, + 120,0,120,0,112,0,240,0,12,4,8,16,2,10,255,240, + 255,240,255,240,255,240,5,6,6,13,5,0,248,248,248,248, + 248,248,15,39,78,19,2,253,0,14,0,30,0,28,0,28, + 0,60,0,56,0,56,0,120,0,112,0,112,0,112,0,240, + 0,224,0,224,1,224,1,192,1,192,1,192,3,192,3,128, + 3,128,7,128,7,0,7,0,15,0,15,0,14,0,14,0, + 30,0,28,0,28,0,60,0,56,0,56,0,56,0,120,0, + 112,0,112,0,240,0,22,35,105,27,2,1,3,255,0,7, + 255,128,31,255,224,31,255,224,62,3,240,62,1,240,124,0, + 248,120,0,248,120,0,120,248,0,120,248,0,124,248,0,124, + 248,0,124,248,0,124,248,0,124,248,0,124,248,0,124,248, + 0,124,248,0,124,248,0,124,248,0,124,248,0,124,248,0, + 124,248,0,124,120,0,124,120,0,120,120,0,120,124,0,248, + 60,0,248,62,1,240,63,3,240,31,255,224,15,255,192,7, + 255,128,1,255,0,12,35,70,27,7,0,3,240,7,240,15, + 240,31,240,127,240,255,240,253,240,241,240,193,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,21,35,105,27,3,1,3,255,0,15,255,128,31,255,192, + 63,255,224,63,1,240,126,0,240,124,0,248,124,0,248,124, + 0,248,124,0,248,0,0,248,0,0,248,0,0,240,0,1, + 240,0,3,224,0,7,224,0,7,192,0,15,128,0,31,128, + 0,63,0,0,126,0,0,252,0,1,248,0,3,240,0,7, + 224,0,15,192,0,31,192,0,31,128,0,63,0,0,126,0, + 0,252,0,0,255,255,248,255,255,248,255,255,248,255,255,248, + 22,35,105,27,2,1,3,255,0,15,255,192,31,255,224,31, + 255,240,63,1,248,62,0,248,124,0,120,124,0,120,124,0, + 124,0,0,120,0,0,120,0,0,248,0,1,240,0,15,224, + 0,255,192,0,255,0,0,255,128,0,255,192,0,15,224,0, + 1,240,0,0,248,0,0,248,0,0,124,0,0,124,0,0, + 124,248,0,124,248,0,124,252,0,124,252,0,120,124,0,248, + 127,3,248,63,255,240,31,255,224,15,255,192,3,255,0,24, + 35,105,27,1,0,0,3,240,0,7,240,0,7,240,0,15, + 240,0,31,240,0,63,240,0,61,240,0,121,240,0,249,240, + 0,241,240,1,225,240,3,225,240,3,193,240,7,129,240,15, + 129,240,15,1,240,30,1,240,62,1,240,60,1,240,120,1, + 240,248,1,240,240,1,240,255,255,255,255,255,255,255,255,255, + 255,255,255,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,21,35, + 105,27,3,0,127,255,224,127,255,224,127,255,224,127,255,224, + 124,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,254,0,125,255,128,127,255, + 192,127,131,224,126,1,240,124,0,240,120,0,248,120,0,120, + 0,0,120,0,0,120,0,0,120,0,0,120,0,0,120,0, + 0,120,248,0,120,248,0,248,248,0,240,248,1,240,126,3, + 224,63,255,224,63,255,192,15,255,128,7,254,0,23,35,105, + 27,2,1,1,255,128,7,255,192,15,255,224,31,193,240,31, + 0,248,62,0,248,62,0,120,124,0,120,124,0,0,120,0, + 0,120,0,0,120,0,0,120,0,0,120,127,0,120,255,192, + 249,255,240,251,255,240,255,131,248,254,0,248,252,0,124,252, + 0,124,248,0,60,248,0,60,248,0,60,248,0,62,248,0, + 60,248,0,60,120,0,60,124,0,124,124,0,120,63,1,248, + 31,255,240,15,255,224,7,255,192,1,255,0,21,35,105,27, + 3,0,255,255,248,255,255,248,255,255,248,255,255,248,0,0, + 120,0,0,248,0,0,240,0,1,240,0,1,240,0,1,224, + 0,3,224,0,3,224,0,7,192,0,7,192,0,7,128,0, + 15,128,0,15,128,0,15,0,0,31,0,0,31,0,0,62, + 0,0,62,0,0,62,0,0,124,0,0,124,0,0,248,0, + 0,248,0,0,248,0,1,240,0,1,240,0,3,240,0,3, + 224,0,3,224,0,7,192,0,7,192,0,22,35,105,27,2, + 1,3,255,128,15,255,224,31,255,240,63,255,248,63,1,248, + 126,0,252,124,0,124,124,0,124,124,0,124,124,0,124,124, + 0,124,60,0,120,62,0,248,31,131,240,15,255,224,3,255, + 128,7,255,128,15,255,224,31,3,240,62,0,248,124,0,120, + 120,0,124,248,0,60,248,0,60,248,0,60,248,0,60,248, + 0,60,248,0,60,248,0,124,124,0,124,126,1,248,63,255, + 248,31,255,240,15,255,224,3,255,128,22,35,105,27,2,1, + 3,255,128,15,255,192,31,255,224,63,255,240,126,1,248,124, + 0,248,120,0,248,248,0,124,248,0,124,248,0,124,248,0, + 124,248,0,124,248,0,124,248,0,124,248,0,252,120,0,252, + 124,1,252,127,3,252,63,255,252,31,255,124,15,254,124,3, + 248,124,0,0,124,0,0,124,0,0,120,0,0,120,0,0, + 248,120,0,248,120,1,240,124,1,240,62,3,224,63,255,224, + 31,255,192,15,255,128,7,254,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--58-580-72-72-P-271-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 42 + Calculated Max Values w=35 h=46 x=12 y=20 dx=59 dy= 0 ascent=43 len=175 + Font Bounding box w=78 h=76 x=-4 y=-15 + Calculated Min Values x= 0 y=-7 dx= 0 dy= 0 + Pure Font ascent =42 descent= 0 + X Font ascent =42 descent= 0 + Max Font ascent =43 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur42n[2135] U8G_SECTION(".progmem.u8g_font_fur42n") = { + 0,78,76,252,241,42,0,0,0,0,42,57,0,43,249,42, + 0,23,22,66,37,7,20,3,1,128,7,131,192,15,131,224, + 7,131,192,7,199,192,3,199,128,1,239,0,0,238,0,0, + 254,0,254,124,254,255,255,254,255,255,254,254,124,254,0,124, + 0,0,238,0,1,239,0,3,199,128,3,199,128,7,195,192, + 15,131,224,15,131,224,3,1,128,35,35,175,59,12,0,0, + 1,224,0,0,0,1,224,0,0,0,1,224,0,0,0,1, + 224,0,0,0,1,224,0,0,0,1,224,0,0,0,1,224, + 0,0,0,1,224,0,0,0,1,224,0,0,0,1,224,0, + 0,0,1,224,0,0,0,1,224,0,0,0,1,224,0,0, + 0,1,224,0,0,0,1,224,0,0,255,255,255,255,224,255, + 255,255,255,224,255,255,255,255,224,255,255,255,255,224,0,1, + 224,0,0,0,1,224,0,0,0,1,224,0,0,0,1,224, + 0,0,0,1,224,0,0,0,1,224,0,0,0,1,224,0, + 0,0,1,224,0,0,0,1,224,0,0,0,1,224,0,0, + 0,1,224,0,0,0,1,224,0,0,0,1,224,0,0,0, + 1,224,0,0,0,1,224,0,0,0,1,224,0,0,10,15, + 30,16,3,249,31,192,31,192,31,128,63,128,63,0,63,0, + 62,0,62,0,126,0,124,0,124,0,120,0,248,0,248,0, + 240,0,14,5,10,18,2,12,255,252,255,252,255,252,255,252, + 255,252,6,7,7,16,6,0,252,252,252,252,252,252,252,17, + 46,138,23,3,253,0,7,128,0,7,128,0,7,128,0,15, + 0,0,15,0,0,15,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,60,0,0,60,0,0,60,0,0,120,0,0, + 120,0,0,120,0,0,240,0,0,240,0,0,240,0,0,240, + 0,1,224,0,1,224,0,1,224,0,3,192,0,3,192,0, + 3,192,0,7,128,0,7,128,0,7,128,0,7,128,0,15, + 0,0,15,0,0,15,0,0,30,0,0,30,0,0,30,0, + 0,62,0,0,60,0,0,60,0,0,60,0,0,120,0,0, + 120,0,0,120,0,0,240,0,0,240,0,0,240,0,0,26, + 42,168,32,3,1,0,255,224,0,3,255,240,0,7,255,252, + 0,15,255,254,0,31,255,254,0,63,128,127,0,63,0,63, + 0,62,0,31,128,126,0,31,128,124,0,15,128,124,0,15, + 192,124,0,15,192,252,0,15,192,252,0,7,192,248,0,7, + 192,248,0,7,192,248,0,7,192,248,0,7,192,248,0,7, + 192,248,0,7,192,248,0,7,192,248,0,7,192,248,0,7, + 192,248,0,7,192,252,0,7,192,252,0,7,192,252,0,7, + 192,252,0,7,192,252,0,15,192,124,0,15,192,124,0,15, + 192,126,0,15,192,126,0,15,128,62,0,31,128,63,0,31, + 128,63,0,63,0,31,192,127,0,31,255,254,0,15,255,252, + 0,7,255,252,0,3,255,240,0,0,255,192,0,14,42,84, + 32,8,0,0,252,1,252,3,252,7,252,15,252,63,252,127, + 252,255,124,254,124,248,124,224,124,128,124,0,124,0,124,0, + 124,0,124,0,124,0,124,0,124,0,124,0,124,0,124,0, + 124,0,124,0,124,0,124,0,124,0,124,0,124,0,124,0, + 124,0,124,0,124,0,124,0,124,0,124,0,124,0,124,0, + 124,0,124,0,124,0,124,25,42,168,32,4,1,1,255,192, + 0,7,255,240,0,15,255,248,0,31,255,252,0,31,255,254, + 0,63,128,127,0,63,0,63,0,127,0,31,128,126,0,31, + 128,126,0,31,128,126,0,15,128,126,0,15,128,0,0,31, + 128,0,0,31,128,0,0,31,0,0,0,63,0,0,0,63, + 0,0,0,126,0,0,0,252,0,0,1,252,0,0,3,248, + 0,0,7,240,0,0,7,224,0,0,15,224,0,0,31,192, + 0,0,63,128,0,0,127,0,0,0,254,0,0,1,252,0, + 0,3,248,0,0,7,240,0,0,15,224,0,0,31,224,0, + 0,63,192,0,0,63,128,0,0,127,0,0,0,254,0,0, + 0,255,255,255,128,255,255,255,128,255,255,255,128,255,255,255, + 128,255,255,255,128,26,42,168,32,3,1,1,255,192,0,7, + 255,240,0,15,255,252,0,31,255,254,0,63,255,255,0,63, + 128,127,0,127,0,31,128,126,0,31,128,126,0,15,128,126, + 0,15,128,252,0,15,128,0,0,15,128,0,0,15,128,0, + 0,31,128,0,0,63,0,0,0,126,0,0,3,252,0,0, + 127,248,0,0,127,240,0,0,127,224,0,0,127,240,0,0, + 127,252,0,0,3,254,0,0,0,127,0,0,0,63,128,0, + 0,31,128,0,0,15,192,0,0,15,192,0,0,7,192,0, + 0,7,192,252,0,7,192,252,0,7,192,252,0,7,192,252, + 0,15,192,254,0,31,192,127,0,63,128,127,128,127,128,63, + 255,255,0,63,255,254,0,31,255,252,0,7,255,248,0,1, + 255,224,0,29,42,168,32,2,0,0,0,127,0,0,0,127, + 0,0,0,255,0,0,1,255,0,0,3,255,0,0,3,255, + 0,0,7,223,0,0,15,223,0,0,15,159,0,0,31,31, + 0,0,63,31,0,0,62,31,0,0,124,31,0,0,252,31, + 0,0,248,31,0,1,240,31,0,3,240,31,0,3,224,31, + 0,7,192,31,0,15,192,31,0,15,128,31,0,31,0,31, + 0,63,0,31,0,126,0,31,0,124,0,31,0,252,0,31, + 0,248,0,31,0,255,255,255,248,255,255,255,248,255,255,255, + 248,255,255,255,248,255,255,255,248,0,0,31,0,0,0,31, + 0,0,0,31,0,0,0,31,0,0,0,31,0,0,0,31, + 0,0,0,31,0,0,0,31,0,0,0,31,0,0,0,31, + 0,26,42,168,32,3,0,127,255,255,0,127,255,255,0,127, + 255,255,0,127,255,255,0,127,255,255,0,124,0,0,0,124, + 0,0,0,124,0,0,0,124,0,0,0,124,0,0,0,124, + 0,0,0,124,0,0,0,124,0,0,0,124,0,0,0,124, + 31,192,0,124,127,240,0,124,255,252,0,125,255,254,0,127, + 224,254,0,127,128,63,0,127,0,31,0,126,0,31,128,126, + 0,15,128,124,0,15,128,0,0,15,192,0,0,15,192,0, + 0,7,192,0,0,7,192,0,0,7,192,0,0,15,192,0, + 0,15,192,252,0,15,192,252,0,15,128,252,0,31,128,254, + 0,31,128,126,0,63,0,127,128,126,0,63,255,254,0,63, + 255,252,0,15,255,248,0,7,255,224,0,1,255,192,0,27, + 42,168,32,3,1,0,127,240,0,1,255,252,0,3,255,254, + 0,15,240,127,0,15,192,63,128,31,128,31,128,63,0,15, + 192,63,0,15,192,62,0,15,192,126,0,0,0,126,0,0, + 0,124,0,0,0,124,0,0,0,124,0,0,0,124,0,0, + 0,124,15,224,0,124,63,248,0,124,255,254,0,124,255,255, + 0,125,255,255,128,127,224,127,128,127,192,31,192,255,128,15, + 192,255,0,7,192,255,0,7,224,254,0,7,224,254,0,7, + 224,254,0,3,224,254,0,3,224,254,0,3,224,254,0,7, + 224,254,0,7,224,126,0,7,224,127,0,7,192,127,0,15, + 192,63,128,15,192,31,192,63,128,31,255,255,0,15,255,255, + 0,7,255,254,0,1,255,248,0,0,127,224,0,26,42,168, + 32,3,0,255,255,255,192,255,255,255,192,255,255,255,192,255, + 255,255,192,255,255,255,192,0,0,7,192,0,0,15,192,0, + 0,15,128,0,0,31,128,0,0,31,128,0,0,31,0,0, + 0,63,0,0,0,63,0,0,0,126,0,0,0,126,0,0, + 0,124,0,0,0,252,0,0,0,252,0,0,1,248,0,0, + 1,248,0,0,1,248,0,0,3,240,0,0,3,240,0,0, + 7,224,0,0,7,224,0,0,15,224,0,0,15,192,0,0, + 15,192,0,0,31,128,0,0,31,128,0,0,63,128,0,0, + 63,0,0,0,63,0,0,0,127,0,0,0,126,0,0,0, + 254,0,0,0,252,0,0,0,252,0,0,1,252,0,0,1, + 248,0,0,3,248,0,0,3,240,0,0,27,42,168,32,2, + 1,0,255,224,0,3,255,252,0,15,255,254,0,31,255,255, + 0,63,255,255,128,63,128,63,192,127,0,31,192,126,0,15, + 192,126,0,7,192,126,0,7,192,124,0,7,192,124,0,7, + 192,126,0,7,192,62,0,15,192,63,0,15,128,31,128,31, + 0,15,224,127,0,7,255,254,0,3,255,248,0,0,255,240, + 0,3,255,248,0,15,255,254,0,31,224,127,0,63,128,31, + 128,62,0,15,192,126,0,7,192,124,0,7,224,252,0,3, + 224,252,0,3,224,248,0,3,224,248,0,3,224,252,0,3, + 224,252,0,3,224,252,0,7,224,254,0,7,224,127,0,15, + 224,127,128,31,192,63,255,255,128,31,255,255,128,15,255,255, + 0,3,255,252,0,0,255,240,0,27,42,168,32,3,1,1, + 255,240,0,7,255,252,0,15,255,254,0,31,255,255,0,63, + 255,255,128,63,128,63,128,126,0,31,192,126,0,15,192,252, + 0,15,192,252,0,7,224,252,0,7,224,248,0,7,224,248, + 0,7,224,248,0,7,224,252,0,7,224,252,0,7,224,252, + 0,15,224,124,0,15,224,126,0,31,224,63,0,63,224,63, + 192,123,224,31,255,243,224,15,255,243,224,3,255,195,224,0, + 255,7,224,0,0,7,224,0,0,7,224,0,0,7,224,0, + 0,7,192,0,0,7,192,0,0,7,192,124,0,15,192,124, + 0,15,128,126,0,31,128,62,0,31,128,63,0,63,0,63, + 128,255,0,31,255,254,0,31,255,252,0,15,255,248,0,7, + 255,240,0,1,255,192,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--68-680-72-72-P-317-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 49 + Calculated Max Values w=41 h=54 x=14 y=23 dx=69 dy= 0 ascent=50 len=250 + Font Bounding box w=92 h=89 x=-5 y=-18 + Calculated Min Values x= 0 y=-9 dx= 0 dy= 0 + Pure Font ascent =49 descent= 0 + X Font ascent =49 descent= 0 + Max Font ascent =50 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur49n[2643] U8G_SECTION(".progmem.u8g_font_fur49n") = { + 0,92,89,251,238,49,0,0,0,0,42,57,0,50,247,49, + 0,27,26,104,45,9,23,0,192,96,0,3,192,120,0,15, + 192,126,0,7,224,252,0,3,224,248,0,1,241,240,0,1, + 241,240,0,0,251,224,0,0,123,192,0,0,59,128,0,224, + 63,128,224,255,255,255,224,255,255,255,224,255,255,255,224,255, + 159,63,224,128,63,128,32,0,123,192,0,0,123,192,0,0, + 241,224,0,1,241,240,0,3,241,248,0,3,224,248,0,7, + 224,252,0,15,192,124,0,3,192,120,0,0,128,32,0,41, + 41,246,69,14,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,255,255,255,255,255,128,255,255,255, + 255,255,128,255,255,255,255,255,128,255,255,255,255,255,128,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,12,17,34,19,3, + 247,15,240,15,240,15,224,15,224,31,224,31,192,31,192,31, + 128,63,128,63,0,63,0,62,0,126,0,126,0,124,0,124, + 0,248,0,16,6,12,22,3,14,255,255,255,255,255,255,255, + 255,255,255,255,255,7,8,8,19,7,0,254,254,254,254,254, + 254,254,254,21,54,162,27,3,252,0,0,248,0,0,240,0, + 1,240,0,1,240,0,1,240,0,1,224,0,3,224,0,3, + 224,0,3,192,0,7,192,0,7,192,0,7,128,0,15,128, + 0,15,128,0,15,128,0,15,0,0,31,0,0,31,0,0, + 30,0,0,62,0,0,62,0,0,60,0,0,124,0,0,124, + 0,0,124,0,0,120,0,0,248,0,0,248,0,0,240,0, + 1,240,0,1,240,0,1,240,0,1,224,0,3,224,0,3, + 224,0,3,192,0,7,192,0,7,192,0,7,128,0,15,128, + 0,15,128,0,15,128,0,15,0,0,31,0,0,31,0,0, + 30,0,0,62,0,0,62,0,0,60,0,0,124,0,0,124, + 0,0,124,0,0,120,0,0,248,0,0,31,51,204,38,3, + 255,0,31,240,0,0,127,252,0,1,255,255,0,3,255,255, + 128,7,255,255,192,15,255,255,224,31,240,31,240,31,192,15, + 240,63,128,7,248,63,128,3,248,63,0,1,248,127,0,1, + 252,126,0,1,252,126,0,0,252,126,0,0,252,254,0,0, + 252,254,0,0,254,252,0,0,254,252,0,0,254,252,0,0, + 254,252,0,0,126,252,0,0,126,252,0,0,126,252,0,0, + 126,252,0,0,126,252,0,0,126,252,0,0,126,252,0,0, + 126,252,0,0,126,252,0,0,254,254,0,0,254,254,0,0, + 254,254,0,0,254,254,0,0,254,126,0,0,254,126,0,0, + 252,126,0,0,252,127,0,1,252,127,0,1,252,63,0,1, + 252,63,128,3,248,63,128,3,248,31,192,7,248,31,224,15, + 240,15,248,63,240,15,255,255,224,7,255,255,192,3,255,255, + 128,1,255,255,0,0,127,252,0,0,15,240,0,16,49,98, + 38,9,0,0,127,0,255,1,255,3,255,7,255,31,255,63, + 255,127,255,255,255,255,63,252,63,240,63,192,63,0,63,0, + 63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0, + 63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0, + 63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0, + 63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0, + 63,0,63,0,63,29,50,200,38,4,0,0,31,224,0,0, + 255,252,0,3,255,255,0,7,255,255,128,15,255,255,192,31, + 255,255,224,31,240,31,224,63,224,7,240,63,192,3,240,63, + 128,3,248,127,128,3,248,127,0,1,248,127,0,1,248,127, + 0,1,248,127,0,1,248,0,0,1,248,0,0,1,248,0, + 0,3,248,0,0,3,248,0,0,7,240,0,0,7,240,0, + 0,15,224,0,0,31,224,0,0,63,192,0,0,127,128,0, + 0,127,0,0,0,255,0,0,1,254,0,0,3,252,0,0, + 7,248,0,0,15,240,0,0,31,240,0,0,63,224,0,0, + 127,192,0,0,127,128,0,0,255,0,0,1,254,0,0,3, + 252,0,0,7,248,0,0,15,248,0,0,31,240,0,0,63, + 224,0,0,127,192,0,0,255,128,0,0,255,0,0,0,255, + 255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255, + 255,255,248,31,51,204,38,3,255,0,31,240,0,0,255,254, + 0,1,255,255,128,3,255,255,192,7,255,255,224,15,248,31, + 240,31,224,7,248,31,192,3,248,63,192,1,252,63,128,0, + 252,63,128,0,252,127,0,0,252,127,0,0,252,127,0,0, + 252,0,0,0,252,0,0,0,252,0,0,1,252,0,0,1, + 248,0,0,3,248,0,0,7,240,0,0,31,224,0,0,255, + 192,0,31,255,128,0,31,254,0,0,31,252,0,0,31,255, + 0,0,31,255,192,0,0,255,224,0,0,15,240,0,0,7, + 248,0,0,3,252,0,0,1,252,0,0,0,254,0,0,0, + 254,0,0,0,126,0,0,0,126,0,0,0,126,254,0,0, + 126,254,0,0,126,255,0,0,126,255,0,0,254,127,0,0, + 254,127,128,1,252,127,128,3,252,63,224,7,248,31,248,31, + 240,15,255,255,224,7,255,255,192,3,255,255,128,0,255,254, + 0,0,31,240,0,34,50,250,38,2,0,0,0,15,240,0, + 0,0,15,240,0,0,0,31,240,0,0,0,63,240,0,0, + 0,63,240,0,0,0,127,240,0,0,0,255,240,0,0,0, + 255,240,0,0,1,251,240,0,0,3,251,240,0,0,3,243, + 240,0,0,7,227,240,0,0,15,227,240,0,0,15,195,240, + 0,0,31,131,240,0,0,63,131,240,0,0,63,3,240,0, + 0,126,3,240,0,0,254,3,240,0,1,252,3,240,0,1, + 248,3,240,0,3,248,3,240,0,7,240,3,240,0,7,224, + 3,240,0,15,224,3,240,0,31,192,3,240,0,31,128,3, + 240,0,63,128,3,240,0,127,0,3,240,0,126,0,3,240, + 0,252,0,3,240,0,252,0,3,240,0,255,255,255,255,192, + 255,255,255,255,192,255,255,255,255,192,255,255,255,255,192,255, + 255,255,255,192,255,255,255,255,192,0,0,3,240,0,0,0, + 3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3, + 240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240, + 0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0, + 0,0,3,240,0,30,50,200,38,4,255,63,255,255,224,63, + 255,255,224,63,255,255,224,63,255,255,224,63,255,255,224,63, + 255,255,224,63,0,0,0,63,0,0,0,63,0,0,0,63, + 0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63, + 0,0,0,63,0,0,0,63,0,0,0,63,3,248,0,63, + 31,254,0,63,63,255,128,63,127,255,192,63,255,255,224,63, + 248,31,224,63,224,7,240,63,192,3,240,63,128,3,248,63, + 0,1,248,63,0,1,252,62,0,1,252,0,0,0,252,0, + 0,0,252,0,0,0,252,0,0,0,252,0,0,0,252,0, + 0,0,252,0,0,0,252,0,0,0,252,0,0,0,252,254, + 0,1,252,254,0,1,248,254,0,1,248,255,0,3,248,127, + 0,3,240,127,128,7,224,127,192,15,224,63,240,63,192,31, + 255,255,128,15,255,255,0,7,255,254,0,1,255,248,0,0, + 31,224,0,31,51,204,38,3,255,0,7,248,0,0,63,255, + 0,0,255,255,192,1,255,255,224,3,255,255,240,7,252,15, + 240,15,248,7,248,31,224,3,248,31,192,1,252,63,192,1, + 252,63,128,0,252,63,0,0,252,127,0,0,252,127,0,0, + 0,127,0,0,0,126,0,0,0,126,0,0,0,126,0,0, + 0,126,0,0,0,126,0,0,0,126,7,252,0,126,31,255, + 0,126,63,255,192,126,127,255,224,126,255,255,240,127,252,15, + 248,127,240,3,248,255,192,1,252,255,192,1,252,255,128,0, + 254,255,128,0,254,255,0,0,126,255,0,0,126,255,0,0, + 126,255,0,0,126,255,0,0,126,255,0,0,126,255,0,0, + 126,127,0,0,126,127,0,0,126,127,128,0,254,63,128,0, + 252,63,128,1,252,31,192,1,252,31,224,3,248,15,248,15, + 240,7,255,255,224,3,255,255,192,1,255,255,128,0,127,254, + 0,0,15,248,0,30,49,196,38,4,0,255,255,255,252,255, + 255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,0, + 0,0,252,0,0,1,252,0,0,1,252,0,0,1,248,0, + 0,3,248,0,0,3,240,0,0,7,240,0,0,7,240,0, + 0,7,224,0,0,15,224,0,0,15,224,0,0,31,192,0, + 0,31,192,0,0,31,128,0,0,63,128,0,0,63,128,0, + 0,127,0,0,0,127,0,0,0,127,0,0,0,254,0,0, + 0,254,0,0,0,254,0,0,1,252,0,0,1,252,0,0, + 3,248,0,0,3,248,0,0,3,248,0,0,7,240,0,0, + 7,240,0,0,15,240,0,0,15,224,0,0,15,224,0,0, + 31,192,0,0,31,192,0,0,63,192,0,0,63,128,0,0, + 63,128,0,0,127,128,0,0,127,0,0,0,127,0,0,0, + 254,0,0,0,254,0,0,1,254,0,0,1,252,0,0,32, + 51,204,38,3,255,0,15,248,0,0,127,255,0,1,255,255, + 128,3,255,255,224,7,255,255,240,15,248,31,248,31,224,7, + 252,31,192,1,252,63,128,1,252,63,128,0,254,63,0,0, + 254,63,0,0,254,63,0,0,126,63,0,0,126,63,0,0, + 126,63,0,0,254,63,0,0,252,31,128,0,252,31,128,1, + 248,15,192,3,248,15,224,7,240,7,248,31,224,3,255,255, + 192,0,255,255,128,0,127,254,0,1,255,255,128,3,255,255, + 192,15,248,15,240,31,192,3,248,31,128,1,248,63,0,0, + 252,127,0,0,126,126,0,0,126,126,0,0,126,254,0,0, + 127,252,0,0,63,252,0,0,63,252,0,0,63,254,0,0, + 127,254,0,0,127,254,0,0,127,254,0,0,127,127,0,0, + 254,127,128,1,254,63,192,3,252,63,240,15,252,31,255,255, + 248,15,255,255,240,3,255,255,192,0,255,255,0,0,15,248, + 0,31,51,204,38,3,255,0,31,248,0,0,255,255,0,3, + 255,255,192,7,255,255,224,15,255,255,240,31,240,31,248,63, + 192,7,248,63,128,3,252,127,0,1,252,126,0,1,252,126, + 0,0,254,254,0,0,254,254,0,0,254,252,0,0,254,252, + 0,0,254,252,0,0,254,252,0,0,254,252,0,0,254,254, + 0,0,254,254,0,0,254,254,0,0,254,126,0,1,254,127, + 0,1,254,63,128,3,254,63,192,7,254,31,240,31,254,31, + 255,255,126,15,255,254,126,7,255,252,126,1,255,248,126,0, + 63,224,126,0,0,0,126,0,0,0,126,0,0,0,126,0, + 0,0,254,0,0,0,252,0,0,0,252,0,0,0,252,126, + 0,0,252,127,0,1,248,63,0,1,248,63,0,3,248,63, + 0,7,240,63,128,7,240,31,192,31,224,31,224,63,224,15, + 255,255,192,7,255,255,128,3,255,255,0,1,255,252,0,0, + 63,224,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--18-180-72-72-P-89-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=15 h=19 x= 2 y=11 dx=16 dy= 0 ascent=16 len=34 + Font Bounding box w=27 h=26 x=-9 y=-6 + Calculated Min Values x=-3 y=-5 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =16 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb11[4313] U8G_SECTION(".progmem.u8g_font_gdb11") = { + 0,27,26,247,250,11,2,67,5,71,32,255,252,16,251,14, + 252,0,0,0,4,0,0,3,14,14,6,1,255,96,224,96, + 96,96,96,96,64,64,64,0,224,224,192,6,6,6,8,1, + 7,108,236,204,76,76,76,8,10,10,9,1,1,26,18,22, + 127,36,36,254,72,72,216,7,14,14,9,1,254,16,16,126, + 150,144,240,120,30,18,146,210,252,16,16,11,11,22,13,1, + 0,112,64,144,128,137,128,139,0,146,0,85,192,42,32,26, + 32,50,32,34,32,65,192,11,13,26,12,1,0,28,0,102, + 0,70,0,70,0,124,0,120,0,113,224,248,128,252,128,222, + 128,207,0,195,128,125,224,3,6,6,5,1,7,96,224,192, + 64,64,64,4,17,17,6,1,253,16,32,96,64,64,192,192, + 192,192,192,192,192,192,64,96,32,16,4,17,17,6,1,253, + 128,64,96,32,48,48,48,48,48,48,48,48,32,32,96,64, + 128,6,8,8,8,1,6,48,176,252,120,120,252,52,48,7, + 6,6,8,0,2,16,16,16,254,16,16,3,5,5,5,1, + 253,96,224,96,64,192,6,1,1,6,0,4,252,3,3,3, + 5,1,255,224,224,192,8,17,17,9,0,253,3,3,2,6, + 6,4,12,12,24,24,16,48,48,32,96,64,192,7,11,11, + 9,1,0,56,76,70,198,198,198,198,198,196,100,56,7,11, + 11,9,1,0,24,248,24,24,24,24,24,24,24,24,126,7, + 11,11,9,1,0,60,102,102,6,4,8,16,34,66,126,254, + 7,11,11,8,0,0,60,102,102,6,8,28,6,6,6,140, + 120,7,11,11,8,0,0,4,12,12,20,52,36,68,126,132, + 4,30,7,11,11,9,1,0,126,124,64,64,124,134,6,6, + 6,134,124,7,11,11,9,1,0,12,48,96,64,252,198,198, + 198,198,100,56,7,11,11,9,1,0,254,254,134,4,4,8, + 8,24,48,48,96,8,11,11,10,1,0,60,102,102,102,124, + 62,71,195,195,195,60,7,11,11,9,1,0,56,68,198,198, + 198,198,126,4,12,24,224,3,9,9,5,1,255,224,224,192, + 0,0,0,224,224,192,3,11,11,5,1,253,224,224,192,0, + 0,0,96,224,96,64,192,8,6,6,8,0,2,3,30,112, + 240,30,7,8,4,4,8,0,3,127,128,0,255,8,6,6, + 8,0,2,96,188,15,14,120,192,7,14,14,8,1,255,60, + 198,198,134,12,8,16,32,32,32,0,56,56,56,14,16,32, + 16,1,252,7,192,31,240,48,56,64,8,71,68,136,196,152, + 196,152,196,152,196,152,200,159,248,206,224,192,32,112,112,63, + 192,31,128,11,11,22,11,0,0,6,0,14,0,14,0,11, + 0,19,0,19,0,63,128,33,128,33,192,96,192,241,224,9, + 11,22,11,1,0,254,0,99,0,99,0,99,0,126,0,99, + 128,97,128,97,128,97,128,97,128,254,0,8,11,11,10,1, + 0,31,99,64,192,192,192,192,192,192,97,62,9,11,22,11, + 1,0,254,0,99,0,97,0,97,128,97,128,97,128,97,128, + 97,128,97,0,99,0,252,0,9,11,22,9,0,0,255,0, + 49,0,49,0,48,0,48,0,63,0,48,0,48,0,48,128, + 48,128,255,128,9,11,22,9,0,0,255,128,49,0,49,0, + 48,0,48,0,62,0,48,0,48,0,48,0,48,0,248,0, + 11,11,22,11,0,0,15,192,49,192,64,0,192,0,192,0, + 192,0,193,224,192,192,64,192,112,192,31,128,10,11,22,12, + 1,0,243,192,97,128,97,128,97,128,97,128,127,128,97,128, + 97,128,97,128,97,128,243,192,4,11,11,6,1,0,240,96, + 96,96,96,96,96,96,96,96,240,7,14,14,6,254,253,62, + 12,12,12,12,12,12,12,12,12,12,8,136,240,10,11,22, + 11,1,0,243,192,99,0,102,0,108,0,104,0,120,0,108, + 0,102,0,103,0,99,128,241,192,8,11,11,9,1,0,240, + 96,96,96,96,96,96,96,97,97,255,15,11,22,15,0,0, + 112,28,56,56,56,56,56,120,44,88,44,88,38,216,38,152, + 35,152,35,24,243,62,10,11,22,12,1,0,225,192,96,128, + 112,128,120,128,92,128,76,128,70,128,71,128,67,128,65,128, + 225,128,10,11,22,11,0,0,30,0,33,128,64,128,192,192, + 192,192,192,192,192,192,192,192,64,128,97,0,30,0,8,11, + 11,10,1,0,254,99,99,99,98,124,96,96,96,96,240,12, + 14,28,11,0,253,30,0,33,128,64,128,192,192,192,192,192, + 192,192,192,192,192,64,128,97,0,30,0,3,144,1,240,0, + 96,10,11,22,11,1,0,254,0,99,0,99,0,99,0,98, + 0,124,0,100,0,102,0,99,0,99,128,241,192,7,11,11, + 9,1,0,62,198,128,192,112,60,6,2,130,196,248,10,11, + 22,10,0,0,255,192,140,64,140,64,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,30,0,10,11,22,12,1,0, + 241,192,96,128,96,128,96,128,96,128,96,128,96,128,96,128, + 96,128,49,0,30,0,12,11,22,12,0,0,248,240,112,64, + 48,64,48,128,24,128,25,128,29,0,13,0,15,0,6,0, + 6,0,15,11,22,15,0,0,241,30,97,132,49,140,51,200, + 50,200,50,200,28,120,28,112,28,48,24,48,8,48,11,11, + 22,11,0,0,249,224,48,128,57,128,31,0,14,0,6,0, + 15,0,27,0,49,128,33,192,243,224,10,11,22,11,1,0, + 227,192,113,128,49,0,59,0,26,0,14,0,12,0,12,0, + 12,0,12,0,30,0,9,11,22,10,0,0,127,128,67,0, + 71,0,6,0,14,0,12,0,24,0,56,0,48,128,112,128, + 255,128,4,17,17,6,1,253,240,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,240,8,17,17,8,0,253,192, + 64,96,32,48,48,16,24,24,8,12,4,6,6,2,3,3, + 4,17,17,6,1,253,240,16,16,16,16,16,16,16,16,16, + 16,16,16,16,16,16,240,7,9,9,9,1,5,16,48,56, + 40,76,76,68,134,130,8,1,1,9,0,254,255,4,4,4, + 6,0,9,192,96,32,16,8,8,8,9,1,0,60,102,198, + 30,102,198,207,118,9,14,28,10,0,0,96,0,224,0,96, + 0,96,0,96,0,96,0,103,0,127,128,112,128,96,128,96, + 128,97,0,97,0,62,0,7,8,8,8,1,0,62,70,196, + 192,192,192,66,124,9,14,28,10,1,0,3,0,7,0,3, + 0,3,0,3,0,3,0,63,0,67,0,195,0,195,0,195, + 0,195,0,127,128,59,0,7,8,8,9,1,0,60,70,198, + 254,192,192,98,60,7,13,13,6,1,0,30,36,96,96,96, + 252,96,96,96,96,96,96,248,10,12,24,10,0,252,62,192, + 193,0,129,0,193,0,62,0,112,0,254,0,255,128,227,128, + 192,128,193,0,62,0,9,14,28,10,1,0,96,0,224,0, + 96,0,96,0,96,0,96,0,102,0,127,0,115,0,99,0, + 99,0,99,0,99,0,247,128,4,12,12,6,1,0,48,112, + 0,0,96,224,96,96,96,96,96,240,7,16,16,5,253,252, + 14,14,0,0,28,12,12,12,12,12,12,12,12,140,248,224, + 9,14,28,10,1,0,96,0,224,0,96,0,96,0,96,0, + 96,0,103,128,102,0,108,0,120,0,108,0,102,0,103,0, + 243,128,4,14,14,5,1,0,96,224,96,96,96,96,96,96, + 96,96,96,96,96,240,14,8,16,15,1,0,110,112,255,248, + 99,24,99,24,99,24,99,24,99,24,247,188,9,8,16,10, + 1,0,110,0,255,0,115,0,99,0,99,0,99,0,99,0, + 247,128,7,8,8,9,1,0,56,68,198,198,198,198,68,56, + 8,12,12,10,1,252,110,255,97,97,97,97,98,124,96,96, + 96,240,9,12,24,10,1,252,61,0,67,0,195,0,195,0, + 195,0,195,0,127,0,59,0,3,0,3,0,3,0,7,128, + 8,8,8,8,0,0,119,255,50,50,48,48,48,248,6,8, + 8,8,1,0,240,152,144,240,60,132,196,248,6,11,11,7, + 0,0,32,96,96,252,96,96,96,96,100,124,48,10,8,16, + 10,0,0,227,128,97,128,97,128,97,128,97,128,97,128,127, + 192,57,128,9,8,16,9,0,0,243,128,97,0,51,0,50, + 0,30,0,28,0,28,0,8,0,13,8,16,13,0,0,242, + 56,99,16,51,32,53,160,53,160,24,224,24,192,24,192,9, + 8,16,9,0,0,251,128,115,0,62,0,28,0,28,0,22, + 0,35,0,247,128,10,12,24,9,255,252,121,192,48,128,25, + 128,25,0,15,0,14,0,14,0,6,0,4,0,12,0,120, + 0,240,0,7,8,8,8,1,0,254,140,152,56,48,98,226, + 254,6,17,17,5,0,253,8,28,48,48,48,48,48,48,224, + 48,48,48,48,48,48,24,8,1,19,19,4,2,252,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,6,17,17,5,255,253,64,96,48,48,48,48,48,48,28, + 48,48,48,48,48,48,96,192,8,2,2,9,0,4,57,206, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,0,0,0,4,0,0,3,13,13,6,1,251,96,224,64, + 64,64,64,96,96,96,96,96,96,192,7,11,11,9,1,0, + 16,24,126,148,144,144,144,210,124,16,16,8,11,11,9,1, + 0,30,34,98,96,96,252,96,96,97,127,158,7,7,7,9, + 1,2,132,126,68,68,68,68,254,10,11,22,9,255,0,227, + 192,113,0,51,0,58,0,26,0,30,0,12,0,127,128,12, + 0,12,0,30,0,1,19,19,4,2,252,128,128,128,128,128, + 128,128,128,0,0,0,128,128,128,128,128,128,128,128,7,13, + 13,9,1,0,112,152,144,240,252,158,130,98,60,12,68,100, + 124,6,3,3,7,0,9,196,204,140,11,12,24,13,1,0, + 31,0,32,128,79,64,147,32,146,32,144,32,144,32,144,32, + 137,32,78,64,32,128,31,0,5,6,6,5,0,5,112,208, + 176,144,248,240,7,8,8,9,1,0,18,38,108,220,220,108, + 38,18,7,4,4,9,1,1,254,2,2,2,6,1,1,6, + 0,4,252,6,7,7,6,0,6,120,72,188,188,180,104,120, + 7,1,1,9,1,11,254,4,4,4,6,1,7,112,144,144, + 224,7,8,8,7,0,1,16,16,254,16,16,16,0,254,4, + 7,7,6,1,5,112,208,16,32,64,144,240,4,7,7,6, + 1,5,48,80,144,48,16,144,224,4,4,4,6,2,9,112, + 96,192,128,9,12,24,10,1,252,227,0,99,0,99,0,99, + 0,99,0,99,0,127,128,91,0,64,0,64,0,96,0,112, + 0,10,13,26,11,0,254,63,192,98,128,194,128,194,128,98, + 128,62,128,2,128,2,128,2,128,2,128,2,128,2,128,7, + 192,3,3,3,4,0,5,224,224,192,2,4,4,4,2,252, + 192,64,64,192,4,7,7,6,1,5,32,224,32,32,32,32, + 240,4,6,6,5,0,5,96,144,144,144,96,240,8,8,8, + 9,1,0,136,76,102,55,55,102,76,136,10,11,22,11,1, + 0,192,192,65,128,65,0,66,0,68,0,172,0,8,128,19, + 128,50,128,99,192,197,192,9,11,22,11,1,0,192,128,65, + 0,66,0,66,0,68,0,168,0,25,128,18,128,33,0,98, + 128,199,128,11,11,22,11,0,0,96,96,80,192,32,128,17, + 0,146,0,230,0,4,64,9,192,25,64,49,224,98,224,6, + 13,13,8,1,251,56,56,48,16,16,16,32,96,192,196,204, + 204,112,11,16,32,11,0,0,16,0,24,0,12,0,6,0, + 0,0,6,0,14,0,14,0,11,0,19,0,19,0,63,128, + 33,128,33,192,96,192,241,224,11,16,32,11,0,0,1,0, + 3,128,6,0,12,0,0,0,6,0,14,0,14,0,11,0, + 19,0,19,0,63,128,33,128,33,192,96,192,241,224,11,16, + 32,11,0,0,4,0,14,0,31,0,17,0,0,128,6,0, + 14,0,14,0,11,0,19,0,19,0,63,128,33,128,33,192, + 96,192,241,224,11,15,30,11,0,0,12,128,31,128,39,0, + 0,0,6,0,14,0,14,0,11,0,19,0,19,0,63,128, + 33,128,33,192,96,192,241,224,11,15,30,11,0,0,16,128, + 49,128,49,128,0,0,6,0,14,0,14,0,11,0,19,0, + 19,0,63,128,33,128,33,192,96,192,241,224,11,16,32,11, + 0,0,6,0,10,0,10,0,14,0,0,0,6,0,14,0, + 14,0,11,0,19,0,19,0,63,128,33,128,33,192,96,192, + 241,224,14,11,22,15,0,0,15,252,7,140,5,136,13,128, + 9,128,31,248,25,128,17,128,49,132,33,132,243,252,9,15, + 30,10,0,252,31,0,99,0,64,0,192,0,192,0,192,0, + 192,0,192,0,96,0,112,128,31,0,4,0,2,0,6,0, + 28,0,9,16,32,9,0,0,32,0,48,0,24,0,4,0, + 0,0,255,0,49,0,49,0,48,0,48,0,63,0,48,0, + 48,0,48,128,48,128,255,128,9,16,32,9,0,0,2,0, + 7,0,14,0,24,0,0,0,255,0,49,0,49,0,48,0, + 48,0,63,0,48,0,48,0,48,128,48,128,255,128,9,16, + 32,9,0,0,8,0,28,0,30,0,35,0,0,0,255,0, + 49,0,49,0,48,0,48,0,63,0,48,0,48,0,48,128, + 48,128,255,128,9,15,30,9,0,0,33,0,97,0,99,0, + 0,0,255,0,49,0,49,0,48,0,48,0,63,0,48,0, + 48,0,48,128,48,128,255,128,5,16,16,6,0,0,64,224, + 112,16,8,120,48,48,48,48,48,48,48,48,48,120,5,16, + 16,6,1,0,16,56,112,192,0,240,96,96,96,96,96,96, + 96,96,96,240,6,16,16,6,0,0,48,112,120,204,0,120, + 48,48,48,48,48,48,48,48,48,120,7,15,15,6,255,0, + 66,194,194,0,60,24,24,24,24,24,24,24,24,24,60,9, + 11,22,11,1,0,254,0,99,0,97,0,97,128,97,128,249, + 128,97,128,97,128,97,0,99,0,252,0,10,15,30,12,1, + 0,25,0,63,0,46,0,0,0,225,192,96,128,112,128,120, + 128,92,128,76,128,70,128,71,128,67,128,65,128,225,128,10, + 16,32,11,0,0,16,0,24,0,12,0,2,0,0,0,30, + 0,33,128,64,128,192,192,192,192,192,192,192,192,192,192,64, + 128,97,0,30,0,10,16,32,11,0,0,1,0,3,128,6, + 0,12,0,0,0,30,0,33,128,64,128,192,192,192,192,192, + 192,192,192,192,192,64,128,97,0,30,0,10,16,32,11,0, + 0,4,0,14,0,31,0,17,128,0,0,30,0,33,128,64, + 128,192,192,192,192,192,192,192,192,192,192,64,128,97,0,30, + 0,10,15,30,11,0,0,12,128,31,128,39,0,0,0,30, + 0,33,128,64,128,192,192,192,192,192,192,192,192,192,192,64, + 128,97,0,30,0,10,15,30,11,0,0,16,128,49,128,49, + 128,0,0,30,0,33,128,64,128,192,192,192,192,192,192,192, + 192,192,192,64,128,97,0,30,0,6,6,6,8,1,2,140, + 216,112,112,216,140,10,11,22,11,0,0,31,192,35,128,99, + 128,195,192,198,192,204,192,216,192,240,192,113,128,113,0,254, + 0,10,16,32,12,1,0,16,0,56,0,28,0,6,0,0, + 0,241,192,96,128,96,128,96,128,96,128,96,128,96,128,96, + 128,96,128,49,0,30,0,10,16,32,12,1,0,2,0,7, + 0,14,0,24,0,0,0,241,192,96,128,96,128,96,128,96, + 128,96,128,96,128,96,128,96,128,49,0,30,0,10,16,32, + 12,1,0,12,0,14,0,30,0,51,0,0,0,241,192,96, + 128,96,128,96,128,96,128,96,128,96,128,96,128,96,128,49, + 0,30,0,10,15,30,12,1,0,33,0,33,128,33,0,0, + 0,241,192,96,128,96,128,96,128,96,128,96,128,96,128,96, + 128,96,128,49,0,30,0,10,16,32,11,1,0,4,0,7, + 0,12,0,24,0,0,0,227,192,113,128,49,0,59,0,26, + 0,14,0,12,0,12,0,12,0,12,0,30,0,8,11,11, + 10,1,0,240,96,126,99,99,99,99,98,124,96,240,9,13, + 26,11,1,0,14,0,49,128,33,128,97,128,97,0,102,0, + 104,0,100,0,103,0,97,128,104,128,104,128,239,0,8,13, + 13,9,1,0,96,48,16,8,0,60,102,198,30,102,198,207, + 118,8,13,13,9,1,0,12,28,24,48,0,60,102,198,30, + 102,198,207,118,8,13,13,9,1,0,16,56,108,198,0,60, + 102,198,30,102,198,207,118,8,12,12,9,1,0,114,252,0, + 0,60,102,198,30,102,198,207,118,8,12,12,9,1,0,194, + 198,134,0,60,102,198,30,102,198,207,118,8,13,13,9,1, + 0,24,40,40,48,0,60,102,198,30,102,198,207,118,11,8, + 16,13,1,0,61,192,102,32,196,32,63,224,68,0,198,32, + 255,192,115,128,7,12,12,8,1,252,62,70,196,192,192,192, + 102,56,16,8,24,48,7,13,13,9,1,0,96,48,24,8, + 0,60,70,198,254,192,192,98,60,7,13,13,9,1,0,12, + 14,24,48,0,60,70,198,254,192,192,98,60,7,13,13,9, + 1,0,24,56,108,66,0,60,70,198,254,192,192,98,60,7, + 12,12,9,1,0,66,198,194,0,60,70,198,254,192,192,98, + 60,5,13,13,5,0,0,224,96,48,16,0,48,112,48,48, + 48,48,48,120,5,13,13,5,1,0,48,56,96,64,128,96, + 224,96,96,96,96,96,240,6,13,13,5,0,0,48,112,216, + 132,0,48,112,48,48,48,48,48,120,7,12,12,5,255,0, + 66,194,194,0,24,56,24,24,24,24,24,60,7,13,13,9, + 1,0,112,62,56,108,4,62,78,198,198,198,196,76,56,9, + 12,24,10,1,0,57,0,126,0,0,0,0,0,110,0,255, + 0,115,0,99,0,99,0,99,0,99,0,247,128,7,13,13, + 9,1,0,112,48,24,8,0,56,68,198,198,198,198,68,56, + 7,13,13,9,1,0,14,12,24,16,0,56,68,198,198,198, + 198,68,56,7,13,13,9,1,0,24,60,44,66,0,56,68, + 198,198,198,198,68,56,7,12,12,9,1,0,50,124,128,0, + 56,68,198,198,198,198,68,56,7,12,12,9,1,0,66,194, + 66,0,56,68,198,198,198,198,68,56,7,6,6,8,0,2, + 16,16,0,126,144,16,7,9,9,9,1,0,2,58,68,206, + 214,230,230,68,248,10,13,26,10,0,0,24,0,56,0,12, + 0,4,0,0,0,227,128,97,128,97,128,97,128,97,128,97, + 128,127,192,57,128,10,13,26,10,0,0,7,0,6,0,12, + 0,8,0,0,0,227,128,97,128,97,128,97,128,97,128,97, + 128,127,192,57,128,10,13,26,10,0,0,12,0,30,0,18, + 0,33,0,0,0,227,128,97,128,97,128,97,128,97,128,97, + 128,127,192,57,128,10,12,24,10,0,0,33,0,33,128,33, + 0,0,0,227,128,97,128,97,128,97,128,97,128,97,128,127, + 192,57,128,10,17,34,9,255,252,3,0,3,128,6,0,4, + 0,8,0,121,192,48,128,25,128,25,0,15,0,14,0,14, + 0,6,0,4,0,12,0,120,0,240,0,8,18,18,10,1, + 252,96,224,96,96,96,96,110,127,97,97,97,97,98,124,96, + 96,96,240,10,16,32,9,255,252,16,128,48,128,48,128,0, + 0,121,192,48,128,25,128,25,0,15,0,14,0,14,0,6, + 0,4,0,12,0,120,0,240,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--18-180-72-72-P-89-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 11 + Calculated Max Values w= 8 h=17 x= 1 y= 6 dx=10 dy= 0 ascent=14 len=17 + Font Bounding box w=27 h=26 x=-9 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb11n[263] U8G_SECTION(".progmem.u8g_font_gdb11n") = { + 0,27,26,247,250,11,0,0,0,0,42,57,0,14,253,11, + 0,6,8,8,8,1,6,48,176,252,120,120,252,52,48,7, + 6,6,8,0,2,16,16,16,254,16,16,3,5,5,5,1, + 253,96,224,96,64,192,6,1,1,6,0,4,252,3,3,3, + 5,1,255,224,224,192,8,17,17,9,0,253,3,3,2,6, + 6,4,12,12,24,24,16,48,48,32,96,64,192,7,11,11, + 9,1,0,56,76,70,198,198,198,198,198,196,100,56,7,11, + 11,9,1,0,24,248,24,24,24,24,24,24,24,24,126,7, + 11,11,9,1,0,60,102,102,6,4,8,16,34,66,126,254, + 7,11,11,8,0,0,60,102,102,6,8,28,6,6,6,140, + 120,7,11,11,8,0,0,4,12,12,20,52,36,68,126,132, + 4,30,7,11,11,9,1,0,126,124,64,64,124,134,6,6, + 6,134,124,7,11,11,9,1,0,12,48,96,64,252,198,198, + 198,198,100,56,7,11,11,9,1,0,254,254,134,4,4,8, + 8,24,48,48,96,8,11,11,10,1,0,60,102,102,102,124, + 62,71,195,195,195,60,7,11,11,9,1,0,56,68,198,198, + 198,198,126,4,12,24,224}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--18-180-72-72-P-89-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=15 h=19 x= 2 y= 9 dx=16 dy= 0 ascent=15 len=32 + Font Bounding box w=27 h=26 x=-9 y=-6 + Calculated Min Values x=-3 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =15 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb11r[2001] U8G_SECTION(".progmem.u8g_font_gdb11r") = { + 0,27,26,247,250,11,2,67,5,71,32,127,252,15,252,14, + 252,0,0,0,4,0,0,3,14,14,6,1,255,96,224,96, + 96,96,96,96,64,64,64,0,224,224,192,6,6,6,8,1, + 7,108,236,204,76,76,76,8,10,10,9,1,1,26,18,22, + 127,36,36,254,72,72,216,7,14,14,9,1,254,16,16,126, + 150,144,240,120,30,18,146,210,252,16,16,11,11,22,13,1, + 0,112,64,144,128,137,128,139,0,146,0,85,192,42,32,26, + 32,50,32,34,32,65,192,11,13,26,12,1,0,28,0,102, + 0,70,0,70,0,124,0,120,0,113,224,248,128,252,128,222, + 128,207,0,195,128,125,224,3,6,6,5,1,7,96,224,192, + 64,64,64,4,17,17,6,1,253,16,32,96,64,64,192,192, + 192,192,192,192,192,192,64,96,32,16,4,17,17,6,1,253, + 128,64,96,32,48,48,48,48,48,48,48,48,32,32,96,64, + 128,6,8,8,8,1,6,48,176,252,120,120,252,52,48,7, + 6,6,8,0,2,16,16,16,254,16,16,3,5,5,5,1, + 253,96,224,96,64,192,6,1,1,6,0,4,252,3,3,3, + 5,1,255,224,224,192,8,17,17,9,0,253,3,3,2,6, + 6,4,12,12,24,24,16,48,48,32,96,64,192,7,11,11, + 9,1,0,56,76,70,198,198,198,198,198,196,100,56,7,11, + 11,9,1,0,24,248,24,24,24,24,24,24,24,24,126,7, + 11,11,9,1,0,60,102,102,6,4,8,16,34,66,126,254, + 7,11,11,8,0,0,60,102,102,6,8,28,6,6,6,140, + 120,7,11,11,8,0,0,4,12,12,20,52,36,68,126,132, + 4,30,7,11,11,9,1,0,126,124,64,64,124,134,6,6, + 6,134,124,7,11,11,9,1,0,12,48,96,64,252,198,198, + 198,198,100,56,7,11,11,9,1,0,254,254,134,4,4,8, + 8,24,48,48,96,8,11,11,10,1,0,60,102,102,102,124, + 62,71,195,195,195,60,7,11,11,9,1,0,56,68,198,198, + 198,198,126,4,12,24,224,3,9,9,5,1,255,224,224,192, + 0,0,0,224,224,192,3,11,11,5,1,253,224,224,192,0, + 0,0,96,224,96,64,192,8,6,6,8,0,2,3,30,112, + 240,30,7,8,4,4,8,0,3,127,128,0,255,8,6,6, + 8,0,2,96,188,15,14,120,192,7,14,14,8,1,255,60, + 198,198,134,12,8,16,32,32,32,0,56,56,56,14,16,32, + 16,1,252,7,192,31,240,48,56,64,8,71,68,136,196,152, + 196,152,196,152,196,152,200,159,248,206,224,192,32,112,112,63, + 192,31,128,11,11,22,11,0,0,6,0,14,0,14,0,11, + 0,19,0,19,0,63,128,33,128,33,192,96,192,241,224,9, + 11,22,11,1,0,254,0,99,0,99,0,99,0,126,0,99, + 128,97,128,97,128,97,128,97,128,254,0,8,11,11,10,1, + 0,31,99,64,192,192,192,192,192,192,97,62,9,11,22,11, + 1,0,254,0,99,0,97,0,97,128,97,128,97,128,97,128, + 97,128,97,0,99,0,252,0,9,11,22,9,0,0,255,0, + 49,0,49,0,48,0,48,0,63,0,48,0,48,0,48,128, + 48,128,255,128,9,11,22,9,0,0,255,128,49,0,49,0, + 48,0,48,0,62,0,48,0,48,0,48,0,48,0,248,0, + 11,11,22,11,0,0,15,192,49,192,64,0,192,0,192,0, + 192,0,193,224,192,192,64,192,112,192,31,128,10,11,22,12, + 1,0,243,192,97,128,97,128,97,128,97,128,127,128,97,128, + 97,128,97,128,97,128,243,192,4,11,11,6,1,0,240,96, + 96,96,96,96,96,96,96,96,240,7,14,14,6,254,253,62, + 12,12,12,12,12,12,12,12,12,12,8,136,240,10,11,22, + 11,1,0,243,192,99,0,102,0,108,0,104,0,120,0,108, + 0,102,0,103,0,99,128,241,192,8,11,11,9,1,0,240, + 96,96,96,96,96,96,96,97,97,255,15,11,22,15,0,0, + 112,28,56,56,56,56,56,120,44,88,44,88,38,216,38,152, + 35,152,35,24,243,62,10,11,22,12,1,0,225,192,96,128, + 112,128,120,128,92,128,76,128,70,128,71,128,67,128,65,128, + 225,128,10,11,22,11,0,0,30,0,33,128,64,128,192,192, + 192,192,192,192,192,192,192,192,64,128,97,0,30,0,8,11, + 11,10,1,0,254,99,99,99,98,124,96,96,96,96,240,12, + 14,28,11,0,253,30,0,33,128,64,128,192,192,192,192,192, + 192,192,192,192,192,64,128,97,0,30,0,3,144,1,240,0, + 96,10,11,22,11,1,0,254,0,99,0,99,0,99,0,98, + 0,124,0,100,0,102,0,99,0,99,128,241,192,7,11,11, + 9,1,0,62,198,128,192,112,60,6,2,130,196,248,10,11, + 22,10,0,0,255,192,140,64,140,64,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,30,0,10,11,22,12,1,0, + 241,192,96,128,96,128,96,128,96,128,96,128,96,128,96,128, + 96,128,49,0,30,0,12,11,22,12,0,0,248,240,112,64, + 48,64,48,128,24,128,25,128,29,0,13,0,15,0,6,0, + 6,0,15,11,22,15,0,0,241,30,97,132,49,140,51,200, + 50,200,50,200,28,120,28,112,28,48,24,48,8,48,11,11, + 22,11,0,0,249,224,48,128,57,128,31,0,14,0,6,0, + 15,0,27,0,49,128,33,192,243,224,10,11,22,11,1,0, + 227,192,113,128,49,0,59,0,26,0,14,0,12,0,12,0, + 12,0,12,0,30,0,9,11,22,10,0,0,127,128,67,0, + 71,0,6,0,14,0,12,0,24,0,56,0,48,128,112,128, + 255,128,4,17,17,6,1,253,240,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,240,8,17,17,8,0,253,192, + 64,96,32,48,48,16,24,24,8,12,4,6,6,2,3,3, + 4,17,17,6,1,253,240,16,16,16,16,16,16,16,16,16, + 16,16,16,16,16,16,240,7,9,9,9,1,5,16,48,56, + 40,76,76,68,134,130,8,1,1,9,0,254,255,4,4,4, + 6,0,9,192,96,32,16,8,8,8,9,1,0,60,102,198, + 30,102,198,207,118,9,14,28,10,0,0,96,0,224,0,96, + 0,96,0,96,0,96,0,103,0,127,128,112,128,96,128,96, + 128,97,0,97,0,62,0,7,8,8,8,1,0,62,70,196, + 192,192,192,66,124,9,14,28,10,1,0,3,0,7,0,3, + 0,3,0,3,0,3,0,63,0,67,0,195,0,195,0,195, + 0,195,0,127,128,59,0,7,8,8,9,1,0,60,70,198, + 254,192,192,98,60,7,13,13,6,1,0,30,36,96,96,96, + 252,96,96,96,96,96,96,248,10,12,24,10,0,252,62,192, + 193,0,129,0,193,0,62,0,112,0,254,0,255,128,227,128, + 192,128,193,0,62,0,9,14,28,10,1,0,96,0,224,0, + 96,0,96,0,96,0,96,0,102,0,127,0,115,0,99,0, + 99,0,99,0,99,0,247,128,4,12,12,6,1,0,48,112, + 0,0,96,224,96,96,96,96,96,240,7,16,16,5,253,252, + 14,14,0,0,28,12,12,12,12,12,12,12,12,140,248,224, + 9,14,28,10,1,0,96,0,224,0,96,0,96,0,96,0, + 96,0,103,128,102,0,108,0,120,0,108,0,102,0,103,0, + 243,128,4,14,14,5,1,0,96,224,96,96,96,96,96,96, + 96,96,96,96,96,240,14,8,16,15,1,0,110,112,255,248, + 99,24,99,24,99,24,99,24,99,24,247,188,9,8,16,10, + 1,0,110,0,255,0,115,0,99,0,99,0,99,0,99,0, + 247,128,7,8,8,9,1,0,56,68,198,198,198,198,68,56, + 8,12,12,10,1,252,110,255,97,97,97,97,98,124,96,96, + 96,240,9,12,24,10,1,252,61,0,67,0,195,0,195,0, + 195,0,195,0,127,0,59,0,3,0,3,0,3,0,7,128, + 8,8,8,8,0,0,119,255,50,50,48,48,48,248,6,8, + 8,8,1,0,240,152,144,240,60,132,196,248,6,11,11,7, + 0,0,32,96,96,252,96,96,96,96,100,124,48,10,8,16, + 10,0,0,227,128,97,128,97,128,97,128,97,128,97,128,127, + 192,57,128,9,8,16,9,0,0,243,128,97,0,51,0,50, + 0,30,0,28,0,28,0,8,0,13,8,16,13,0,0,242, + 56,99,16,51,32,53,160,53,160,24,224,24,192,24,192,9, + 8,16,9,0,0,251,128,115,0,62,0,28,0,28,0,22, + 0,35,0,247,128,10,12,24,9,255,252,121,192,48,128,25, + 128,25,0,15,0,14,0,14,0,6,0,4,0,12,0,120, + 0,240,0,7,8,8,8,1,0,254,140,152,56,48,98,226, + 254,6,17,17,5,0,253,8,28,48,48,48,48,48,48,224, + 48,48,48,48,48,48,24,8,1,19,19,4,2,252,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,6,17,17,5,255,253,64,96,48,48,48,48,48,48,28, + 48,48,48,48,48,48,96,192,8,2,2,9,0,4,57,206, + 255}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--19-190-72-72-P-94-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=16 h=20 x= 2 y=11 dx=16 dy= 0 ascent=17 len=36 + Font Bounding box w=29 h=28 x=-10 y=-7 + Calculated Min Values x=-3 y=-5 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =15 descent=-4 + Max Font ascent =17 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb12[4626] U8G_SECTION(".progmem.u8g_font_gdb12") = { + 0,29,28,246,249,12,2,113,5,210,32,255,252,17,251,15, + 252,0,0,0,5,0,0,3,14,14,6,1,0,32,96,96, + 96,96,96,96,96,96,96,0,224,224,192,7,6,6,9,1, + 8,102,236,108,76,68,68,9,11,22,10,1,1,27,0,26, + 0,18,0,127,128,54,0,36,0,36,0,255,0,104,0,72, + 0,88,0,8,15,15,9,0,254,8,8,63,75,74,104,60, + 30,11,137,73,235,126,8,8,12,12,24,14,1,0,112,32, + 144,64,136,128,137,128,139,0,146,0,100,224,13,16,25,16, + 17,16,33,16,96,224,12,13,26,13,1,0,30,0,35,0, + 99,0,99,0,118,0,124,0,120,240,252,64,222,64,207,64, + 199,128,193,192,62,240,3,6,6,5,1,8,96,224,96,64, + 64,64,4,18,18,6,1,253,16,48,96,96,64,192,192,192, + 192,192,192,192,192,192,96,96,48,16,4,18,18,6,1,253, + 128,192,96,96,48,48,48,48,48,48,48,48,48,32,96,96, + 192,128,7,7,7,8,1,7,48,180,222,48,222,148,48,7, + 7,7,8,1,2,16,16,16,254,16,16,16,3,6,6,5, + 1,252,96,224,96,96,64,128,6,1,1,7,0,4,252,3, + 3,3,5,1,0,224,224,192,9,18,36,9,0,253,1,128, + 3,0,3,0,3,0,6,0,6,0,4,0,12,0,12,0, + 24,0,24,0,16,0,48,0,48,0,32,0,96,0,96,0, + 192,0,8,11,11,10,1,0,60,102,66,195,195,195,195,195, + 66,98,60,7,12,12,10,1,0,8,120,152,24,24,24,24, + 24,24,24,24,254,7,11,11,9,1,0,60,102,230,6,4, + 8,16,34,66,126,254,7,11,11,9,1,0,60,102,230,6, + 8,28,6,6,6,140,120,8,12,12,9,0,0,6,14,14, + 22,22,38,102,70,255,6,6,31,7,11,11,10,1,0,126, + 124,64,64,124,134,6,6,6,134,124,8,12,12,10,1,0, + 14,56,112,96,192,254,195,195,195,195,98,60,8,11,11,10, + 1,0,255,254,130,6,4,12,8,24,24,48,96,8,11,11, + 10,1,0,60,102,102,102,124,62,71,195,195,195,60,8,11, + 11,10,1,0,60,70,195,195,195,195,63,2,6,12,112,3, + 9,9,5,1,0,224,224,192,0,0,0,224,224,192,3,13, + 13,5,1,252,224,224,64,0,0,0,0,96,224,96,96,64, + 128,8,7,7,9,0,2,1,15,60,96,248,31,3,8,4, + 4,9,0,3,127,128,0,255,8,7,7,9,0,2,96,248, + 15,7,30,120,192,7,14,14,9,1,0,60,70,198,134,6, + 12,8,16,16,16,0,56,56,56,14,17,34,16,1,252,7, + 192,31,240,56,56,32,8,99,164,68,100,204,100,204,100,204, + 100,204,100,204,104,199,248,103,112,112,8,56,24,31,240,15, + 192,12,12,24,12,0,0,6,0,14,0,15,0,11,0,27, + 0,19,128,17,128,63,128,33,192,32,192,96,224,241,240,9, + 12,24,11,1,0,254,0,99,0,99,0,99,0,98,0,126, + 0,99,128,97,128,97,128,97,128,97,128,254,0,9,12,24, + 11,1,0,31,0,99,128,65,0,192,0,192,0,192,0,192, + 0,192,0,192,0,97,128,127,0,60,0,10,12,24,12,1, + 0,254,0,99,128,97,128,96,192,96,192,96,192,96,192,96, + 192,96,192,97,128,99,0,254,0,10,12,24,10,0,0,255, + 128,48,128,48,128,48,0,48,0,63,0,50,0,48,0,48, + 0,48,64,48,128,255,128,9,12,24,10,0,0,255,128,48, + 128,48,128,48,0,48,0,63,0,50,0,48,0,48,0,48, + 0,48,0,252,0,10,12,24,11,1,0,31,128,33,128,65, + 0,64,0,192,0,192,0,192,0,195,192,193,128,65,128,97, + 128,31,0,11,12,24,13,1,0,241,224,96,192,96,192,96, + 192,96,192,127,192,96,192,96,192,96,192,96,192,96,192,241, + 224,4,12,12,6,1,0,240,96,96,96,96,96,96,96,96, + 96,96,240,8,16,16,6,253,252,31,6,6,6,6,6,6, + 6,6,6,6,6,6,68,124,240,11,12,24,12,1,0,243, + 192,99,0,99,0,102,0,108,0,120,0,124,0,110,0,103, + 0,99,0,97,128,241,224,8,12,12,10,1,0,240,96,96, + 96,96,96,96,96,96,97,97,255,15,12,24,16,0,0,112, + 30,56,28,56,28,60,60,44,44,44,108,38,76,38,204,35, + 140,35,140,35,140,241,30,11,12,24,13,1,0,224,224,112, + 64,112,64,120,64,92,64,78,64,78,64,71,64,67,192,65, + 192,65,192,224,192,10,12,24,12,1,0,30,0,33,128,65, + 128,64,192,192,192,192,192,192,192,192,192,192,128,96,128,97, + 0,30,0,9,12,24,11,1,0,254,0,99,0,97,128,97, + 128,97,128,97,0,126,0,96,0,96,0,96,0,96,0,248, + 0,12,15,30,12,1,253,30,0,33,128,65,128,64,192,192, + 192,192,192,192,192,192,192,192,192,96,128,33,0,30,0,3, + 144,1,240,0,96,11,12,24,12,1,0,254,0,99,128,97, + 128,97,128,97,128,127,0,126,0,102,0,99,0,99,128,97, + 192,241,224,8,12,12,10,1,0,62,198,128,128,240,124,30, + 7,3,131,194,252,10,12,24,11,0,0,255,192,140,64,140, + 64,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,30,0,11,12,24,13,1,0,240,224,96,64,96,64,96, + 64,96,64,96,64,96,64,96,64,96,64,96,128,48,128,31, + 0,12,12,24,13,0,0,248,240,112,96,48,64,56,64,24, + 192,24,128,28,128,13,128,15,0,7,0,7,0,6,0,16, + 12,24,16,0,0,248,143,49,134,49,196,49,196,51,196,58, + 108,26,108,30,120,28,56,28,56,12,24,8,16,12,12,24, + 12,0,0,249,224,48,192,56,128,29,0,15,0,14,0,15, + 0,11,0,27,128,49,192,32,224,241,240,11,12,24,12,0, + 0,241,224,48,192,24,128,29,128,13,0,15,0,6,0,6, + 0,6,0,6,0,6,0,15,0,10,12,24,10,0,0,127, + 192,67,128,67,0,7,0,6,0,14,0,28,0,24,0,56, + 0,48,64,112,192,255,192,5,18,18,6,1,253,248,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,248,9, + 18,36,9,0,253,192,0,96,0,96,0,32,0,48,0,48, + 0,16,0,24,0,24,0,12,0,12,0,4,0,6,0,6, + 0,2,0,3,0,3,0,1,128,5,18,18,6,0,253,248, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 248,7,9,9,9,1,5,16,24,40,44,44,68,70,130,130, + 9,1,2,9,0,254,255,128,4,4,4,6,0,10,192,96, + 48,16,8,9,9,9,1,0,60,102,198,14,126,198,198,207, + 118,9,14,28,10,0,0,96,0,224,0,96,0,96,0,96, + 0,103,0,127,0,112,128,96,128,96,128,96,128,97,0,126, + 0,60,0,7,9,9,9,1,0,62,70,196,192,192,192,194, + 124,56,9,14,28,11,1,0,7,0,3,0,3,0,3,0, + 3,0,63,0,67,0,195,0,195,0,195,0,195,0,227,0, + 127,128,59,0,7,9,9,9,1,0,60,100,198,198,254,192, + 226,124,56,7,14,14,6,1,0,30,38,96,96,96,252,96, + 96,96,96,96,96,96,248,10,13,26,10,0,252,60,192,67, + 0,195,0,195,0,226,0,60,0,112,0,124,0,127,128,195, + 128,193,128,193,0,62,0,9,14,28,10,1,0,96,0,224, + 0,96,0,96,0,96,0,102,0,127,0,115,0,99,0,99, + 0,99,0,99,0,99,0,247,128,4,12,12,6,1,0,48, + 112,0,96,224,96,96,96,96,96,96,240,7,16,16,5,253, + 252,14,14,0,12,28,12,12,12,12,12,12,12,12,136,248, + 224,10,14,28,10,1,0,96,0,224,0,96,0,96,0,96, + 0,103,128,99,0,100,0,104,0,124,0,110,0,102,0,99, + 0,243,192,5,14,14,6,0,0,48,240,48,48,48,48,48, + 48,48,48,48,48,48,248,14,9,18,16,1,0,110,112,255, + 248,115,152,99,24,99,24,99,24,99,24,99,24,247,188,9, + 9,18,10,1,0,102,0,255,0,115,0,99,0,99,0,99, + 0,99,0,99,0,247,128,8,9,9,10,1,0,60,70,195, + 195,195,195,194,98,60,9,13,26,11,1,252,103,0,255,0, + 97,128,97,128,97,128,97,128,97,0,127,0,110,0,96,0, + 96,0,96,0,248,0,9,13,26,10,1,252,29,0,103,0, + 195,0,195,0,195,0,195,0,199,0,127,0,59,0,3,0, + 3,0,3,0,15,128,8,9,9,8,0,0,55,255,57,49, + 48,48,48,48,252,6,9,9,8,1,0,240,152,144,224,120, + 28,132,196,248,6,12,12,7,1,0,32,96,96,252,96,96, + 96,96,96,100,124,48,10,9,18,11,0,0,227,128,97,128, + 97,128,97,128,97,128,97,128,99,128,127,192,57,128,10,9, + 18,10,0,0,241,192,97,128,49,0,51,0,58,0,26,0, + 30,0,12,0,8,0,14,9,18,14,0,0,241,60,99,24, + 51,144,51,144,53,176,60,224,28,224,24,96,24,64,10,9, + 18,10,0,0,251,192,113,0,58,0,28,0,12,0,30,0, + 55,0,35,128,247,192,11,13,26,10,255,252,121,224,56,128, + 24,128,25,128,13,0,13,0,14,0,6,0,6,0,4,0, + 12,0,120,0,240,0,7,9,9,9,1,0,254,142,156,24, + 56,48,98,226,254,5,18,18,6,1,253,24,48,96,96,96, + 48,48,48,96,224,48,48,48,96,96,96,48,24,1,20,20, + 4,2,252,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,6,18,18,6,0,253,64,224,48, + 48,48,48,48,48,28,24,48,48,48,48,48,48,96,192,9, + 4,8,9,0,4,48,0,125,128,79,0,134,0,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0, + 0,5,0,0,3,14,14,6,1,251,96,224,64,0,96,96, + 96,96,96,96,96,96,96,64,7,12,12,10,2,0,16,16, + 62,86,144,144,144,144,86,124,16,16,9,11,22,10,0,0, + 15,128,49,128,49,0,112,0,112,0,254,0,112,0,112,0, + 96,128,123,128,255,0,8,7,7,10,1,2,255,66,66,66, + 66,102,255,10,11,22,10,0,0,227,192,113,0,51,0,26, + 0,26,0,12,0,127,128,12,0,12,0,12,0,30,0,1, + 20,20,4,2,252,128,128,128,128,128,128,128,128,128,0,0, + 128,128,128,128,128,128,128,128,128,8,13,13,10,1,0,120, + 152,136,240,190,135,193,113,62,14,34,50,62,6,3,3,7, + 0,10,236,252,220,12,13,26,14,1,0,15,0,48,192,64, + 32,143,32,145,16,145,16,144,16,144,16,144,16,136,160,79, + 32,32,64,31,128,5,7,7,5,0,5,112,208,112,144,248, + 0,240,8,9,9,10,1,0,17,34,102,204,220,204,102,34, + 17,8,4,4,10,1,2,255,1,1,1,6,1,1,7,0, + 4,252,7,7,7,7,0,7,56,68,186,170,178,108,56,8, + 2,2,9,1,11,255,254,5,5,5,7,1,7,112,136,136, + 136,112,8,9,9,8,0,1,8,8,8,127,8,8,8,0, + 255,4,7,7,7,2,6,112,208,16,32,64,144,240,5,7, + 7,6,0,6,56,104,8,24,8,136,112,4,4,4,6,2, + 10,48,96,192,128,10,13,26,11,1,252,99,0,227,0,99, + 0,99,0,99,0,99,0,103,0,127,128,91,64,64,0,64, + 0,96,0,112,0,9,14,28,11,1,254,63,128,101,0,197, + 0,197,0,197,0,101,0,61,0,5,0,5,0,5,0,5, + 0,5,0,5,0,15,128,3,3,3,4,0,5,224,224,192, + 3,4,4,4,1,252,64,96,96,192,5,7,7,7,1,6, + 32,224,32,32,32,32,248,4,7,7,5,0,5,96,144,144, + 144,96,0,240,8,9,9,10,1,0,136,76,102,55,51,55, + 102,76,136,11,11,22,12,1,0,64,64,192,128,65,0,67, + 0,70,0,228,0,8,192,25,64,50,64,35,224,192,224,10, + 11,22,12,1,0,64,64,192,128,65,0,65,0,66,0,228, + 192,9,64,26,128,16,128,33,64,99,192,11,11,22,11,0, + 0,96,32,208,64,32,128,145,128,227,0,2,0,4,192,13, + 64,25,64,19,224,96,224,7,14,14,9,1,251,56,56,48, + 0,16,16,16,32,96,192,194,198,196,120,12,16,32,12,0, + 0,24,0,28,0,3,0,0,0,6,0,14,0,15,0,11, + 0,27,0,19,128,17,128,63,128,33,192,32,192,96,224,241, + 240,12,16,32,12,0,0,1,0,7,128,12,0,0,0,6, + 0,14,0,15,0,11,0,27,0,19,128,17,128,63,128,33, + 192,32,192,96,224,241,240,12,16,32,12,0,0,6,0,15, + 0,16,128,0,0,6,0,14,0,15,0,11,0,27,0,19, + 128,17,128,63,128,33,192,32,192,96,224,241,240,12,16,32, + 12,0,0,12,192,31,128,35,0,0,0,6,0,14,0,15, + 0,11,0,27,0,19,128,17,128,63,128,33,192,32,192,96, + 224,241,240,12,16,32,12,0,0,27,0,27,128,27,0,0, + 0,6,0,14,0,15,0,11,0,27,0,19,128,17,128,63, + 128,33,192,32,192,96,224,241,240,12,17,34,12,0,0,6, + 0,9,0,17,0,14,0,0,0,6,0,14,0,15,0,11, + 0,27,0,19,128,17,128,63,128,33,192,32,192,96,224,241, + 240,15,12,24,15,0,0,31,252,5,132,5,132,13,128,9, + 128,31,248,17,144,17,128,49,128,33,130,97,132,243,252,9, + 16,32,11,1,252,31,0,99,128,65,0,192,0,192,0,192, + 0,192,0,192,0,192,0,96,128,59,128,30,0,8,0,6, + 0,14,0,28,0,10,16,32,10,0,0,48,0,56,0,6, + 0,0,0,255,128,48,128,48,128,48,0,48,0,63,0,50, + 0,48,0,48,0,48,64,48,128,255,128,10,16,32,10,0, + 0,3,0,7,0,24,0,0,0,255,128,48,128,48,128,48, + 0,48,0,63,0,50,0,48,0,48,0,48,64,48,128,255, + 128,10,16,32,10,0,0,12,0,30,0,33,0,0,0,255, + 128,48,128,48,128,48,0,48,0,63,0,50,0,48,0,48, + 0,48,64,48,128,255,128,10,16,32,10,0,0,51,0,63, + 0,54,0,0,0,255,128,48,128,48,128,48,0,48,0,63, + 0,50,0,48,0,48,0,48,64,48,128,255,128,5,16,16, + 6,0,0,192,224,24,0,120,48,48,48,48,48,48,48,48, + 48,48,120,5,16,16,6,1,0,24,56,192,0,240,96,96, + 96,96,96,96,96,96,96,96,240,6,16,16,6,0,0,48, + 120,132,0,120,48,48,48,48,48,48,48,48,48,48,120,6, + 16,16,6,0,0,204,252,216,0,120,48,48,48,48,48,48, + 48,48,48,48,120,10,12,24,12,1,0,254,0,99,128,97, + 128,96,192,96,192,248,192,96,192,96,192,96,192,97,128,99, + 0,254,0,11,16,32,13,1,0,28,128,63,0,39,0,0, + 0,224,224,112,64,112,64,120,64,92,64,78,64,78,64,71, + 64,67,192,65,192,65,192,224,192,10,16,32,12,1,0,48, + 0,56,0,6,0,0,0,30,0,33,128,65,128,64,192,192, + 192,192,192,192,192,192,192,192,128,96,128,97,0,30,0,10, + 16,32,12,1,0,2,0,15,0,24,0,0,0,30,0,33, + 128,65,128,64,192,192,192,192,192,192,192,192,192,192,128,96, + 128,97,0,30,0,10,16,32,12,1,0,12,0,30,0,33, + 0,0,0,30,0,33,128,65,128,64,192,192,192,192,192,192, + 192,192,192,192,128,96,128,97,0,30,0,10,16,32,12,1, + 0,25,128,63,0,70,0,0,0,30,0,33,128,65,128,64, + 192,192,192,192,192,192,192,192,192,192,128,96,128,97,0,30, + 0,10,16,32,12,1,0,55,0,55,0,54,0,0,0,30, + 0,33,128,65,128,64,192,192,192,192,192,192,192,192,192,192, + 128,96,128,97,0,30,0,6,6,6,8,1,2,132,72,48, + 48,72,132,10,12,24,12,1,0,30,192,33,128,97,128,67, + 192,198,192,196,192,200,192,216,192,240,128,97,128,97,0,222, + 0,11,16,32,13,1,0,16,0,60,0,6,0,0,0,240, + 224,96,64,96,64,96,64,96,64,96,64,96,64,96,64,96, + 64,96,128,48,128,31,0,11,16,32,13,1,0,3,0,7, + 128,12,0,0,0,240,224,96,64,96,64,96,64,96,64,96, + 64,96,64,96,64,96,64,96,128,48,128,31,0,11,16,32, + 13,1,0,12,0,30,0,49,0,0,128,240,224,96,64,96, + 64,96,64,96,64,96,64,96,64,96,64,96,64,96,128,48, + 128,31,0,11,16,32,13,1,0,27,0,63,0,51,0,0, + 0,240,224,96,64,96,64,96,64,96,64,96,64,96,64,96, + 64,96,64,96,128,48,128,31,0,11,16,32,12,0,0,1, + 0,7,128,12,0,0,0,241,224,48,192,24,128,29,128,13, + 0,15,0,6,0,6,0,6,0,6,0,6,0,15,0,9, + 12,24,11,1,0,248,0,96,0,126,0,99,0,97,128,97, + 128,97,128,97,128,113,0,110,0,96,0,248,0,9,14,28, + 12,1,0,14,0,51,0,33,128,97,128,97,128,103,0,108, + 0,108,0,102,0,99,0,97,128,104,128,104,128,239,0,8, + 14,14,9,1,0,112,48,24,8,0,60,102,198,14,126,198, + 198,207,118,8,14,14,9,1,0,14,12,24,48,0,60,102, + 198,14,126,198,198,207,118,8,14,14,9,1,0,24,60,108, + 66,0,60,102,198,14,126,198,198,207,118,8,13,13,9,1, + 0,114,126,140,0,60,102,198,14,126,198,198,207,118,8,13, + 13,9,1,0,108,110,108,0,60,102,198,14,126,198,198,207, + 118,8,14,14,9,1,0,56,68,72,56,0,60,102,198,14, + 126,198,198,207,118,12,9,18,14,1,0,29,192,111,32,198, + 48,166,48,63,240,70,0,199,16,251,224,113,192,8,13,13, + 9,1,252,62,70,196,192,192,192,194,127,60,16,12,28,48, + 7,14,14,9,1,0,112,48,24,8,0,60,100,198,198,254, + 192,226,124,56,7,14,14,9,1,0,14,12,24,16,0,60, + 100,198,198,254,192,226,124,56,7,14,14,9,1,0,24,60, + 100,66,0,60,100,198,198,254,192,226,124,56,7,13,13,9, + 1,0,110,126,108,0,60,100,198,198,254,192,226,124,56,5, + 14,14,6,0,0,224,96,48,16,0,48,112,48,48,48,48, + 48,48,120,5,14,14,6,1,0,56,48,96,64,0,96,224, + 96,96,96,96,96,96,240,6,14,14,6,0,0,48,120,200, + 132,0,48,112,48,48,48,48,48,48,120,6,13,13,6,0, + 0,220,220,216,0,48,112,48,48,48,48,48,48,120,8,14, + 14,10,1,0,48,255,28,102,6,63,71,195,195,195,195,194, + 102,60,9,13,26,11,1,0,57,0,63,0,78,0,0,0, + 102,0,255,0,115,0,99,0,99,0,99,0,99,0,99,0, + 247,128,8,14,14,10,1,0,48,112,24,12,0,60,70,195, + 195,195,195,194,98,60,8,14,14,10,1,0,6,12,24,16, + 0,60,70,195,195,195,195,194,98,60,8,14,14,10,1,0, + 24,60,38,66,0,60,70,195,195,195,195,194,98,60,8,13, + 13,10,1,0,57,126,76,0,60,70,195,195,195,195,194,98, + 60,8,13,13,10,1,0,118,126,108,0,60,70,195,195,195, + 195,194,98,60,8,7,7,8,0,2,8,8,0,127,128,8, + 8,8,9,9,10,1,0,63,102,71,203,219,211,226,102,252, + 10,14,28,11,0,0,24,0,60,0,12,0,6,0,0,0, + 227,128,97,128,97,128,97,128,97,128,97,128,99,128,127,192, + 57,128,10,14,28,11,0,0,3,0,7,0,4,0,8,0, + 0,0,227,128,97,128,97,128,97,128,97,128,97,128,99,128, + 127,192,57,128,10,14,28,11,0,0,12,0,14,0,27,0, + 33,0,0,0,227,128,97,128,97,128,97,128,97,128,97,128, + 99,128,127,192,57,128,10,13,26,11,0,0,27,0,63,0, + 51,0,0,0,227,128,97,128,97,128,97,128,97,128,97,128, + 99,128,127,192,57,128,11,18,36,10,255,252,3,128,3,0, + 6,0,4,0,0,0,121,224,56,128,24,128,25,128,13,0, + 13,0,14,0,6,0,6,0,4,0,12,0,120,0,240,0, + 9,18,36,11,1,252,96,0,224,0,96,0,96,0,96,0, + 103,0,111,0,113,128,97,128,97,128,97,128,97,0,127,0, + 110,0,96,0,96,0,96,0,248,0,11,17,34,10,255,252, + 25,128,31,128,27,0,0,0,121,224,56,128,24,128,25,128, + 13,0,13,0,14,0,6,0,6,0,4,0,12,0,120,0, + 240,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--19-190-72-72-P-94-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 12 + Calculated Max Values w= 9 h=18 x= 1 y= 7 dx=10 dy= 0 ascent=15 len=36 + Font Bounding box w=29 h=28 x=-10 y=-7 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =12 descent= 0 + X Font ascent =12 descent= 0 + Max Font ascent =15 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb12n[286] U8G_SECTION(".progmem.u8g_font_gdb12n") = { + 0,29,28,246,249,12,0,0,0,0,42,57,0,15,252,12, + 0,7,7,7,8,1,7,48,180,222,48,222,148,48,7,7, + 7,8,1,2,16,16,16,254,16,16,16,3,6,6,5,1, + 252,96,224,96,96,64,128,6,1,1,7,0,4,252,3,3, + 3,5,1,0,224,224,192,9,18,36,9,0,253,1,128,3, + 0,3,0,3,0,6,0,6,0,4,0,12,0,12,0,24, + 0,24,0,16,0,48,0,48,0,32,0,96,0,96,0,192, + 0,8,11,11,10,1,0,60,102,66,195,195,195,195,195,66, + 98,60,7,12,12,10,1,0,8,120,152,24,24,24,24,24, + 24,24,24,254,7,11,11,9,1,0,60,102,230,6,4,8, + 16,34,66,126,254,7,11,11,9,1,0,60,102,230,6,8, + 28,6,6,6,140,120,8,12,12,9,0,0,6,14,14,22, + 22,38,102,70,255,6,6,31,7,11,11,10,1,0,126,124, + 64,64,124,134,6,6,6,134,124,8,12,12,10,1,0,14, + 56,112,96,192,254,195,195,195,195,98,60,8,11,11,10,1, + 0,255,254,130,6,4,12,8,24,24,48,96,8,11,11,10, + 1,0,60,102,102,102,124,62,71,195,195,195,60,8,11,11, + 10,1,0,60,70,195,195,195,195,63,2,6,12,112}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--19-190-72-72-P-94-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=16 h=20 x= 2 y=10 dx=16 dy= 0 ascent=16 len=36 + Font Bounding box w=29 h=28 x=-10 y=-7 + Calculated Min Values x=-3 y=-4 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =15 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb12r[2190] U8G_SECTION(".progmem.u8g_font_gdb12r") = { + 0,29,28,246,249,12,2,113,5,210,32,127,252,16,252,15, + 252,0,0,0,5,0,0,3,14,14,6,1,0,32,96,96, + 96,96,96,96,96,96,96,0,224,224,192,7,6,6,9,1, + 8,102,236,108,76,68,68,9,11,22,10,1,1,27,0,26, + 0,18,0,127,128,54,0,36,0,36,0,255,0,104,0,72, + 0,88,0,8,15,15,9,0,254,8,8,63,75,74,104,60, + 30,11,137,73,235,126,8,8,12,12,24,14,1,0,112,32, + 144,64,136,128,137,128,139,0,146,0,100,224,13,16,25,16, + 17,16,33,16,96,224,12,13,26,13,1,0,30,0,35,0, + 99,0,99,0,118,0,124,0,120,240,252,64,222,64,207,64, + 199,128,193,192,62,240,3,6,6,5,1,8,96,224,96,64, + 64,64,4,18,18,6,1,253,16,48,96,96,64,192,192,192, + 192,192,192,192,192,192,96,96,48,16,4,18,18,6,1,253, + 128,192,96,96,48,48,48,48,48,48,48,48,48,32,96,96, + 192,128,7,7,7,8,1,7,48,180,222,48,222,148,48,7, + 7,7,8,1,2,16,16,16,254,16,16,16,3,6,6,5, + 1,252,96,224,96,96,64,128,6,1,1,7,0,4,252,3, + 3,3,5,1,0,224,224,192,9,18,36,9,0,253,1,128, + 3,0,3,0,3,0,6,0,6,0,4,0,12,0,12,0, + 24,0,24,0,16,0,48,0,48,0,32,0,96,0,96,0, + 192,0,8,11,11,10,1,0,60,102,66,195,195,195,195,195, + 66,98,60,7,12,12,10,1,0,8,120,152,24,24,24,24, + 24,24,24,24,254,7,11,11,9,1,0,60,102,230,6,4, + 8,16,34,66,126,254,7,11,11,9,1,0,60,102,230,6, + 8,28,6,6,6,140,120,8,12,12,9,0,0,6,14,14, + 22,22,38,102,70,255,6,6,31,7,11,11,10,1,0,126, + 124,64,64,124,134,6,6,6,134,124,8,12,12,10,1,0, + 14,56,112,96,192,254,195,195,195,195,98,60,8,11,11,10, + 1,0,255,254,130,6,4,12,8,24,24,48,96,8,11,11, + 10,1,0,60,102,102,102,124,62,71,195,195,195,60,8,11, + 11,10,1,0,60,70,195,195,195,195,63,2,6,12,112,3, + 9,9,5,1,0,224,224,192,0,0,0,224,224,192,3,13, + 13,5,1,252,224,224,64,0,0,0,0,96,224,96,96,64, + 128,8,7,7,9,0,2,1,15,60,96,248,31,3,8,4, + 4,9,0,3,127,128,0,255,8,7,7,9,0,2,96,248, + 15,7,30,120,192,7,14,14,9,1,0,60,70,198,134,6, + 12,8,16,16,16,0,56,56,56,14,17,34,16,1,252,7, + 192,31,240,56,56,32,8,99,164,68,100,204,100,204,100,204, + 100,204,100,204,104,199,248,103,112,112,8,56,24,31,240,15, + 192,12,12,24,12,0,0,6,0,14,0,15,0,11,0,27, + 0,19,128,17,128,63,128,33,192,32,192,96,224,241,240,9, + 12,24,11,1,0,254,0,99,0,99,0,99,0,98,0,126, + 0,99,128,97,128,97,128,97,128,97,128,254,0,9,12,24, + 11,1,0,31,0,99,128,65,0,192,0,192,0,192,0,192, + 0,192,0,192,0,97,128,127,0,60,0,10,12,24,12,1, + 0,254,0,99,128,97,128,96,192,96,192,96,192,96,192,96, + 192,96,192,97,128,99,0,254,0,10,12,24,10,0,0,255, + 128,48,128,48,128,48,0,48,0,63,0,50,0,48,0,48, + 0,48,64,48,128,255,128,9,12,24,10,0,0,255,128,48, + 128,48,128,48,0,48,0,63,0,50,0,48,0,48,0,48, + 0,48,0,252,0,10,12,24,11,1,0,31,128,33,128,65, + 0,64,0,192,0,192,0,192,0,195,192,193,128,65,128,97, + 128,31,0,11,12,24,13,1,0,241,224,96,192,96,192,96, + 192,96,192,127,192,96,192,96,192,96,192,96,192,96,192,241, + 224,4,12,12,6,1,0,240,96,96,96,96,96,96,96,96, + 96,96,240,8,16,16,6,253,252,31,6,6,6,6,6,6, + 6,6,6,6,6,6,68,124,240,11,12,24,12,1,0,243, + 192,99,0,99,0,102,0,108,0,120,0,124,0,110,0,103, + 0,99,0,97,128,241,224,8,12,12,10,1,0,240,96,96, + 96,96,96,96,96,96,97,97,255,15,12,24,16,0,0,112, + 30,56,28,56,28,60,60,44,44,44,108,38,76,38,204,35, + 140,35,140,35,140,241,30,11,12,24,13,1,0,224,224,112, + 64,112,64,120,64,92,64,78,64,78,64,71,64,67,192,65, + 192,65,192,224,192,10,12,24,12,1,0,30,0,33,128,65, + 128,64,192,192,192,192,192,192,192,192,192,192,128,96,128,97, + 0,30,0,9,12,24,11,1,0,254,0,99,0,97,128,97, + 128,97,128,97,0,126,0,96,0,96,0,96,0,96,0,248, + 0,12,15,30,12,1,253,30,0,33,128,65,128,64,192,192, + 192,192,192,192,192,192,192,192,192,96,128,33,0,30,0,3, + 144,1,240,0,96,11,12,24,12,1,0,254,0,99,128,97, + 128,97,128,97,128,127,0,126,0,102,0,99,0,99,128,97, + 192,241,224,8,12,12,10,1,0,62,198,128,128,240,124,30, + 7,3,131,194,252,10,12,24,11,0,0,255,192,140,64,140, + 64,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,30,0,11,12,24,13,1,0,240,224,96,64,96,64,96, + 64,96,64,96,64,96,64,96,64,96,64,96,128,48,128,31, + 0,12,12,24,13,0,0,248,240,112,96,48,64,56,64,24, + 192,24,128,28,128,13,128,15,0,7,0,7,0,6,0,16, + 12,24,16,0,0,248,143,49,134,49,196,49,196,51,196,58, + 108,26,108,30,120,28,56,28,56,12,24,8,16,12,12,24, + 12,0,0,249,224,48,192,56,128,29,0,15,0,14,0,15, + 0,11,0,27,128,49,192,32,224,241,240,11,12,24,12,0, + 0,241,224,48,192,24,128,29,128,13,0,15,0,6,0,6, + 0,6,0,6,0,6,0,15,0,10,12,24,10,0,0,127, + 192,67,128,67,0,7,0,6,0,14,0,28,0,24,0,56, + 0,48,64,112,192,255,192,5,18,18,6,1,253,248,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,248,9, + 18,36,9,0,253,192,0,96,0,96,0,32,0,48,0,48, + 0,16,0,24,0,24,0,12,0,12,0,4,0,6,0,6, + 0,2,0,3,0,3,0,1,128,5,18,18,6,0,253,248, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 248,7,9,9,9,1,5,16,24,40,44,44,68,70,130,130, + 9,1,2,9,0,254,255,128,4,4,4,6,0,10,192,96, + 48,16,8,9,9,9,1,0,60,102,198,14,126,198,198,207, + 118,9,14,28,10,0,0,96,0,224,0,96,0,96,0,96, + 0,103,0,127,0,112,128,96,128,96,128,96,128,97,0,126, + 0,60,0,7,9,9,9,1,0,62,70,196,192,192,192,194, + 124,56,9,14,28,11,1,0,7,0,3,0,3,0,3,0, + 3,0,63,0,67,0,195,0,195,0,195,0,195,0,227,0, + 127,128,59,0,7,9,9,9,1,0,60,100,198,198,254,192, + 226,124,56,7,14,14,6,1,0,30,38,96,96,96,252,96, + 96,96,96,96,96,96,248,10,13,26,10,0,252,60,192,67, + 0,195,0,195,0,226,0,60,0,112,0,124,0,127,128,195, + 128,193,128,193,0,62,0,9,14,28,10,1,0,96,0,224, + 0,96,0,96,0,96,0,102,0,127,0,115,0,99,0,99, + 0,99,0,99,0,99,0,247,128,4,12,12,6,1,0,48, + 112,0,96,224,96,96,96,96,96,96,240,7,16,16,5,253, + 252,14,14,0,12,28,12,12,12,12,12,12,12,12,136,248, + 224,10,14,28,10,1,0,96,0,224,0,96,0,96,0,96, + 0,103,128,99,0,100,0,104,0,124,0,110,0,102,0,99, + 0,243,192,5,14,14,6,0,0,48,240,48,48,48,48,48, + 48,48,48,48,48,48,248,14,9,18,16,1,0,110,112,255, + 248,115,152,99,24,99,24,99,24,99,24,99,24,247,188,9, + 9,18,10,1,0,102,0,255,0,115,0,99,0,99,0,99, + 0,99,0,99,0,247,128,8,9,9,10,1,0,60,70,195, + 195,195,195,194,98,60,9,13,26,11,1,252,103,0,255,0, + 97,128,97,128,97,128,97,128,97,0,127,0,110,0,96,0, + 96,0,96,0,248,0,9,13,26,10,1,252,29,0,103,0, + 195,0,195,0,195,0,195,0,199,0,127,0,59,0,3,0, + 3,0,3,0,15,128,8,9,9,8,0,0,55,255,57,49, + 48,48,48,48,252,6,9,9,8,1,0,240,152,144,224,120, + 28,132,196,248,6,12,12,7,1,0,32,96,96,252,96,96, + 96,96,96,100,124,48,10,9,18,11,0,0,227,128,97,128, + 97,128,97,128,97,128,97,128,99,128,127,192,57,128,10,9, + 18,10,0,0,241,192,97,128,49,0,51,0,58,0,26,0, + 30,0,12,0,8,0,14,9,18,14,0,0,241,60,99,24, + 51,144,51,144,53,176,60,224,28,224,24,96,24,64,10,9, + 18,10,0,0,251,192,113,0,58,0,28,0,12,0,30,0, + 55,0,35,128,247,192,11,13,26,10,255,252,121,224,56,128, + 24,128,25,128,13,0,13,0,14,0,6,0,6,0,4,0, + 12,0,120,0,240,0,7,9,9,9,1,0,254,142,156,24, + 56,48,98,226,254,5,18,18,6,1,253,24,48,96,96,96, + 48,48,48,96,224,48,48,48,96,96,96,48,24,1,20,20, + 4,2,252,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,6,18,18,6,0,253,64,224,48, + 48,48,48,48,48,28,24,48,48,48,48,48,48,96,192,9, + 4,8,9,0,4,48,0,125,128,79,0,134,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--23-230-72-72-P-114-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=19 h=24 x= 2 y=13 dx=20 dy= 0 ascent=20 len=60 + Font Bounding box w=36 h=33 x=-12 y=-8 + Calculated Min Values x=-3 y=-6 dx= 0 dy= 0 + Pure Font ascent =14 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =20 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb14[6044] U8G_SECTION(".progmem.u8g_font_gdb14") = { + 0,36,33,244,248,14,3,134,7,177,32,255,251,20,250,18, + 251,0,0,0,6,0,0,4,17,17,7,2,0,96,224,224, + 224,224,224,224,224,224,64,64,64,0,0,96,240,224,7,8, + 8,11,2,9,102,238,206,206,198,198,198,196,11,13,26,12, + 1,1,12,192,12,128,9,128,127,224,25,0,19,0,19,0, + 51,0,255,128,38,0,38,0,100,0,140,0,10,18,36,12, + 1,254,12,0,12,0,63,128,127,192,205,128,204,128,236,0, + 124,0,63,0,15,128,13,192,140,192,140,192,204,192,255,128, + 127,0,12,0,12,0,15,14,28,17,1,0,56,24,76,16, + 198,48,198,96,198,192,199,128,101,128,59,56,6,68,12,198, + 12,198,24,198,48,100,96,56,15,16,32,16,1,0,15,0, + 17,128,49,128,49,128,51,0,62,0,60,0,28,254,124,120, + 126,48,207,48,199,160,195,224,193,240,97,252,62,56,3,8, + 8,6,2,9,96,224,192,192,192,192,192,192,5,22,22,8, + 2,252,8,24,48,96,96,96,192,192,192,192,192,192,192,192, + 192,192,96,96,96,48,24,8,5,22,22,8,1,252,128,192, + 96,48,48,48,24,24,24,24,24,24,24,24,24,24,48,48, + 48,96,192,128,9,10,20,10,1,8,24,0,24,0,219,0, + 255,128,60,0,62,0,255,0,219,0,24,0,24,0,8,8, + 8,10,1,2,24,24,24,255,24,24,24,24,4,7,7,6, + 1,252,48,240,48,48,32,96,64,7,1,1,8,1,5,254, + 4,3,3,6,1,0,96,240,224,11,22,44,11,0,252,0, + 96,0,192,0,192,1,128,1,128,3,128,3,0,3,0,7, + 0,6,0,6,0,12,0,12,0,28,0,24,0,24,0,56, + 0,48,0,48,0,96,0,96,0,192,0,10,14,28,12,1, + 0,30,0,51,0,97,128,97,128,225,192,225,192,225,192,225, + 192,225,192,225,192,97,128,97,128,51,0,30,0,8,14,14, + 12,2,0,8,120,248,24,24,24,24,24,24,24,24,24,24, + 255,8,14,14,11,2,0,62,103,227,195,3,6,4,12,24, + 48,33,65,255,255,9,14,28,11,1,0,30,0,99,0,227, + 0,67,0,3,0,6,0,31,0,7,128,3,128,1,128,1, + 128,1,128,67,0,190,0,10,14,28,12,1,0,1,0,7, + 0,7,0,15,0,27,0,19,0,51,0,99,0,99,0,255, + 192,3,0,3,0,3,0,15,192,9,14,28,12,1,0,63, + 128,63,0,32,0,96,0,96,0,126,0,67,0,1,128,1, + 128,1,128,1,128,1,128,195,0,62,0,10,14,28,12,1, + 0,7,0,28,0,48,0,96,0,64,0,223,0,225,128,192, + 192,192,192,192,192,192,192,96,128,49,128,30,0,10,14,28, + 12,1,0,127,192,255,128,129,128,129,128,3,0,3,0,2, + 0,6,0,6,0,12,0,12,0,24,0,56,0,48,0,9, + 14,28,11,1,0,62,0,113,128,241,128,241,128,249,128,127, + 0,63,0,63,128,99,128,193,128,193,128,193,128,99,0,62, + 0,10,14,28,12,1,0,31,0,35,128,65,128,192,192,192, + 192,192,192,192,192,97,192,62,192,0,128,1,128,3,0,14, + 0,56,0,4,10,10,6,1,0,224,240,96,0,0,0,0, + 96,240,224,4,15,15,6,1,252,96,240,224,0,0,0,0, + 0,48,240,48,48,32,96,64,9,7,14,10,1,3,1,128, + 15,128,124,0,224,0,248,0,31,0,3,128,9,4,8,10, + 1,4,255,128,0,0,0,0,255,128,9,7,14,10,1,3, + 192,0,248,0,31,0,3,128,31,0,240,0,128,0,9,16, + 32,10,1,0,63,0,103,128,227,128,227,128,3,128,7,0, + 7,0,14,0,12,0,24,0,24,0,24,0,0,0,28,0, + 60,0,56,0,18,20,60,20,1,251,1,248,0,7,254,0, + 28,15,0,56,3,128,48,1,128,97,233,192,99,24,192,194, + 24,192,198,24,192,198,24,192,198,24,192,198,24,128,199,57, + 128,227,255,0,97,222,0,112,0,0,56,1,0,62,7,0, + 15,252,0,3,240,0,14,14,28,14,0,0,1,0,7,128, + 7,128,5,128,13,192,12,192,8,224,24,224,31,224,16,112, + 48,112,48,48,32,56,248,124,13,14,28,14,0,0,127,128, + 176,192,48,96,48,96,48,96,48,192,63,224,48,112,48,56, + 48,56,48,56,48,56,48,112,255,224,11,14,28,13,1,0, + 15,192,49,192,96,128,64,0,192,0,192,0,192,0,192,0, + 192,0,192,0,224,0,112,96,127,128,31,0,14,14,28,15, + 0,0,127,192,240,240,48,56,48,24,48,28,48,28,48,28, + 48,28,48,28,48,28,48,24,48,56,48,240,255,192,12,14, + 28,12,0,0,255,224,56,96,56,96,56,64,56,0,56,0, + 63,192,56,128,56,0,56,0,56,0,56,48,56,32,255,224, + 11,14,28,12,0,0,255,224,56,96,56,32,56,32,56,0, + 56,0,63,128,57,0,56,0,56,0,56,0,56,0,56,0, + 254,0,12,14,28,14,1,0,15,192,16,224,32,64,96,0, + 64,0,192,0,192,0,192,0,193,240,192,96,96,96,96,96, + 48,96,15,128,16,14,28,16,0,0,252,63,48,12,48,12, + 48,12,48,12,48,12,63,252,48,12,48,12,48,12,48,12, + 48,12,48,12,252,63,6,14,14,8,1,0,252,48,48,48, + 48,48,48,48,48,48,48,48,48,252,10,19,38,8,253,251, + 15,192,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 38,0,124,0,248,0,13,14,28,14,0,0,252,248,48,224, + 48,192,49,128,51,0,54,0,60,0,62,0,55,0,51,128, + 49,192,48,224,48,120,252,120,11,14,28,12,0,0,252,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,96,48,64,255,192,18,14,42,19,1,0, + 240,7,128,120,15,0,120,15,0,124,15,0,124,31,0,108, + 23,0,110,55,0,102,55,0,103,103,0,99,103,0,99,199, + 0,99,199,0,97,135,0,241,143,192,15,14,28,15,0,0, + 248,126,56,24,60,24,62,24,54,24,55,24,51,152,49,152, + 49,216,48,248,48,120,48,56,48,56,252,24,12,14,28,14, + 1,0,15,128,48,192,96,96,64,96,192,48,192,48,192,48, + 192,48,192,48,192,48,96,96,96,64,48,128,31,0,12,14, + 28,13,0,0,127,192,176,224,48,48,48,48,48,48,48,48, + 48,96,55,128,48,0,48,0,48,0,48,0,48,0,252,0, + 15,18,36,14,1,252,15,128,48,192,96,96,64,96,192,48, + 192,48,192,48,192,48,192,48,192,48,96,96,96,96,48,192, + 31,0,1,192,0,228,0,126,0,24,14,14,28,14,0,0, + 127,192,240,224,48,48,48,48,48,48,48,96,63,192,51,128, + 49,192,49,192,48,224,48,112,48,124,252,60,10,14,28,12, + 1,0,31,128,97,192,192,128,192,0,240,0,124,0,63,0, + 15,128,3,192,1,192,128,192,192,128,225,128,254,0,12,14, + 28,13,1,0,255,240,198,48,134,16,134,16,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,31,128, + 15,14,28,15,0,0,252,126,48,24,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,24,48,24,32, + 7,192,15,14,28,15,0,0,252,62,56,8,56,24,56,16, + 28,48,28,48,14,32,14,96,6,96,7,64,7,192,3,128, + 3,128,1,0,19,14,42,20,0,0,252,99,224,48,96,192, + 56,112,192,56,240,128,56,241,128,24,185,128,25,153,128,29, + 29,0,29,29,0,15,15,0,14,15,0,14,7,0,14,6, + 0,4,6,0,14,14,28,14,0,0,252,124,56,48,28,96, + 28,96,14,192,7,128,7,128,7,128,7,192,12,224,24,224, + 24,112,48,56,248,252,13,14,28,14,0,0,240,120,56,48, + 28,96,28,96,14,192,6,128,7,128,3,0,3,0,3,0, + 3,0,3,0,3,0,15,192,11,14,28,13,1,0,127,224, + 193,192,195,128,131,128,7,0,15,0,14,0,28,0,28,0, + 56,0,120,32,112,96,224,96,255,224,6,21,21,8,2,253, + 248,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,252,10,22,44,11,0,252,192,0,96,0,96, + 0,48,0,48,0,48,0,24,0,24,0,28,0,12,0,12, + 0,6,0,6,0,6,0,3,0,3,0,3,0,1,128,1, + 128,1,192,0,192,0,192,5,21,21,7,1,253,248,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,248,9,11,22,11,1,6,8,0,12,0,28,0,22,0, + 54,0,34,0,35,0,99,0,65,128,65,128,129,128,10,1, + 2,11,1,253,255,192,5,5,5,7,0,12,224,224,112,56, + 8,10,10,20,11,1,0,62,0,99,0,227,0,3,0,63, + 0,99,0,195,0,195,0,255,192,123,0,11,17,34,12,0, + 0,96,0,224,0,96,0,96,0,96,0,96,0,96,0,119, + 128,127,192,112,224,96,96,96,96,96,96,96,64,96,192,127, + 128,30,0,9,10,20,10,1,0,31,0,99,128,65,0,192, + 0,192,0,192,0,192,0,225,0,127,128,60,0,12,17,34, + 13,1,0,0,192,3,192,0,192,0,192,0,192,0,192,0, + 192,31,192,33,192,64,192,192,192,192,192,192,192,192,192,97, + 192,127,240,60,192,9,10,20,11,1,0,30,0,99,0,65, + 128,193,128,255,128,192,0,192,0,225,128,127,0,62,0,9, + 17,34,8,0,0,7,128,25,0,16,0,48,0,48,0,48, + 0,48,0,126,0,176,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,0,124,0,11,15,30,12,1,251,30,96,35, + 192,97,128,97,128,97,128,115,0,62,0,48,0,124,0,63, + 128,111,192,192,192,192,192,225,128,62,0,12,17,34,13,1, + 0,48,0,240,0,48,0,48,0,48,0,48,0,48,0,51, + 128,63,192,56,192,48,192,48,192,48,192,48,192,48,192,48, + 192,249,240,5,15,15,7,1,0,48,112,48,0,0,112,240, + 48,48,48,48,48,48,48,248,7,20,20,6,254,251,6,14, + 6,0,0,6,14,6,6,6,6,6,6,6,6,6,6,68, + 248,240,12,17,34,13,1,0,48,0,240,0,48,0,48,0, + 48,0,48,0,48,0,49,240,49,192,51,0,54,0,62,0, + 55,0,51,128,49,192,49,224,248,240,6,17,17,7,1,0, + 48,240,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 252,18,10,30,19,1,0,103,142,0,255,255,0,112,227,0, + 96,195,0,96,195,0,96,195,0,96,195,0,96,195,0,96, + 195,0,241,231,192,12,10,20,13,1,0,51,128,247,192,56, + 192,48,192,48,192,48,192,48,192,48,192,48,192,249,240,10, + 10,20,12,1,0,30,0,33,128,65,128,192,192,192,192,192, + 192,192,192,96,128,113,0,30,0,11,15,30,13,1,251,51, + 128,255,192,56,224,48,96,48,96,48,96,48,96,48,192,63, + 128,55,0,48,0,48,0,48,0,48,0,252,0,11,15,30, + 13,1,251,30,64,97,192,64,192,192,192,192,192,192,192,192, + 192,225,192,127,192,60,192,0,192,0,192,0,192,0,192,3, + 224,9,10,20,10,1,0,119,128,255,128,121,128,113,0,112, + 0,112,0,112,0,112,0,112,0,252,0,8,10,10,10,1, + 0,126,198,198,240,124,63,135,131,194,252,8,14,14,9,0, + 0,16,48,48,48,127,176,48,48,48,48,48,50,63,24,12, + 10,20,13,1,0,97,192,224,192,96,192,96,192,96,192,96, + 192,96,192,97,192,127,240,60,192,12,10,20,12,0,0,248, + 240,112,64,56,192,56,128,28,128,29,128,13,0,15,0,6, + 0,6,0,16,10,20,17,0,0,248,135,112,194,49,198,57, + 230,59,100,27,124,30,124,14,56,12,56,12,16,12,10,20, + 12,0,0,253,240,56,192,29,128,31,0,14,0,15,0,27, + 128,17,192,33,224,243,240,13,15,30,12,255,251,124,120,56, + 32,28,96,28,64,14,192,14,192,6,128,7,128,7,0,3, + 0,3,0,6,0,70,0,124,0,248,0,9,10,20,11,1, + 0,255,128,199,0,135,0,14,0,28,0,60,0,57,0,112, + 128,225,128,255,128,5,22,22,8,2,252,24,48,96,96,96, + 96,48,48,48,48,96,224,48,48,48,48,96,96,96,96,48, + 24,2,24,24,5,2,251,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,5, + 22,22,8,1,252,192,96,48,48,48,48,96,96,96,96,56, + 48,96,96,96,96,48,48,48,48,96,192,10,4,8,11,1, + 5,48,64,124,128,159,0,135,0,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,0,0,0,6,0,0, + 4,16,16,7,1,250,112,240,96,0,32,32,32,112,112,112, + 112,112,112,112,112,96,10,14,28,12,1,0,12,0,12,0, + 31,128,125,192,108,128,204,0,204,0,204,0,204,0,236,192, + 127,128,63,0,12,0,12,0,11,14,28,12,0,0,7,192, + 12,224,24,64,24,64,56,0,56,0,56,0,127,0,184,0, + 56,0,56,32,48,32,127,224,255,224,10,9,18,12,1,2, + 128,64,94,128,51,0,97,128,97,128,97,128,51,128,94,128, + 128,64,12,14,28,12,0,0,241,240,120,192,56,192,29,128, + 29,128,13,0,15,0,6,0,63,192,6,0,6,0,6,0, + 6,0,31,128,2,24,24,5,2,251,192,192,192,192,192,192, + 192,192,192,192,128,0,0,64,192,192,192,192,192,192,192,192, + 192,192,9,16,32,11,1,0,62,0,99,0,99,0,112,0, + 60,0,127,0,199,128,195,128,225,128,121,128,63,0,31,0, + 71,0,67,0,99,0,126,0,7,3,3,9,1,12,198,238, + 198,15,15,30,17,1,0,7,192,24,48,48,24,99,204,108, + 236,200,70,216,6,216,6,216,6,216,6,108,44,103,204,48, + 24,24,48,7,192,6,7,7,6,0,7,120,216,24,248,216, + 252,248,9,10,20,12,1,0,8,128,17,128,51,0,103,0, + 238,0,238,0,103,0,51,0,17,128,8,128,10,5,10,12, + 1,2,255,192,0,192,0,192,0,192,0,192,7,1,1,8, + 1,5,254,8,8,8,8,0,8,60,66,157,149,153,153,86, + 60,9,2,4,11,1,13,255,128,255,128,6,5,5,8,1, + 9,56,76,204,200,112,8,10,10,9,1,2,24,24,24,24, + 255,24,24,24,0,255,6,8,8,8,1,7,120,204,140,24, + 16,32,68,252,6,8,8,8,1,7,56,204,140,56,12,12, + 140,120,6,5,5,7,2,12,56,60,112,96,192,12,15,30, + 13,1,251,96,192,225,192,96,192,96,192,96,192,96,192,96, + 192,113,192,127,240,110,192,96,0,96,0,112,0,112,0,96, + 0,14,17,34,14,0,253,31,252,113,176,225,176,225,176,225, + 176,225,176,113,176,31,176,1,176,1,176,1,176,1,176,1, + 176,1,176,1,176,1,176,7,252,4,3,3,5,0,6,96, + 240,224,4,5,5,5,1,251,32,96,48,48,224,6,8,8, + 8,1,7,48,240,48,48,48,48,48,252,5,7,7,6,0, + 7,112,216,216,216,216,112,248,10,10,20,12,1,0,196,0, + 102,0,99,0,51,128,57,192,61,192,49,128,99,0,102,0, + 196,0,12,14,28,14,1,0,48,16,240,48,48,96,48,192, + 48,128,49,128,255,0,6,96,4,224,13,224,25,96,19,240, + 48,96,96,240,12,14,28,14,1,0,48,48,240,96,48,192, + 48,192,49,128,51,0,254,0,6,240,13,48,26,48,16,96, + 48,192,97,144,195,240,14,14,28,15,0,0,56,8,76,24, + 40,48,60,96,12,64,140,192,121,128,3,24,2,56,6,88, + 12,88,8,252,24,24,48,60,9,16,32,11,1,250,28,0, + 30,0,12,0,0,0,12,0,12,0,12,0,24,0,56,0, + 112,0,96,0,224,0,227,128,227,128,231,0,126,0,14,20, + 40,14,0,0,8,0,28,0,15,0,3,128,0,0,0,0, + 1,0,7,128,7,128,5,128,13,192,12,192,8,224,24,224, + 31,224,16,112,48,112,48,48,32,56,248,124,14,20,40,14, + 0,0,0,128,0,224,3,192,7,0,0,0,0,0,1,0, + 7,128,7,128,5,128,13,192,12,192,8,224,24,224,31,224, + 16,112,48,112,48,48,32,56,248,124,14,20,40,14,0,0, + 3,0,7,128,15,192,12,96,16,0,0,0,1,0,7,128, + 7,128,5,128,13,192,12,192,8,224,24,224,31,224,16,112, + 48,112,48,48,32,56,248,124,14,19,38,14,0,0,4,32, + 15,240,27,192,0,0,0,0,1,0,7,128,7,128,5,128, + 13,192,12,192,8,224,24,224,31,224,16,112,48,112,48,48, + 32,56,248,124,14,19,38,14,0,0,8,64,28,224,24,224, + 0,0,0,0,1,0,7,128,7,128,5,128,13,192,12,192, + 8,224,24,224,31,224,16,112,48,112,48,48,32,56,248,124, + 14,20,40,14,0,0,1,128,6,192,6,192,7,128,0,0, + 0,0,1,0,7,128,7,128,5,128,13,192,12,192,8,224, + 24,224,31,224,16,112,48,112,48,48,32,56,248,124,18,14, + 42,19,0,0,7,255,128,1,225,128,3,96,128,3,96,128, + 6,96,0,6,96,0,7,255,0,12,98,0,12,96,0,24, + 96,0,24,96,0,48,96,64,48,96,192,249,255,128,11,19, + 38,13,1,251,15,192,49,192,96,128,64,0,192,0,192,0, + 192,0,192,0,192,0,192,0,96,0,112,96,63,192,31,128, + 4,0,6,0,3,0,3,0,12,0,12,20,40,12,0,0, + 16,0,56,0,30,0,7,0,0,0,0,0,255,224,56,96, + 56,96,56,64,56,0,56,0,63,192,56,128,56,0,56,0, + 56,0,56,48,56,32,255,224,12,20,40,12,0,0,1,0, + 1,192,7,128,14,0,0,0,0,0,255,224,56,96,56,96, + 56,64,56,0,56,0,63,192,56,128,56,0,56,0,56,0, + 56,48,56,32,255,224,12,20,40,12,0,0,6,0,15,0, + 31,128,48,192,0,0,0,0,255,224,56,96,56,96,56,64, + 56,0,56,0,63,192,56,128,56,0,56,0,56,0,56,48, + 56,32,255,224,12,19,38,12,0,0,16,128,49,192,49,192, + 0,0,0,0,255,224,56,96,56,96,56,64,56,0,56,0, + 63,192,56,128,56,0,56,0,56,0,56,48,56,32,255,224, + 7,20,20,8,0,0,64,224,112,24,4,0,126,24,24,24, + 24,24,24,24,24,24,24,24,24,126,7,20,20,8,1,0, + 8,30,60,96,128,0,252,48,48,48,48,48,48,48,48,48, + 48,48,48,252,7,20,20,8,0,0,16,56,124,198,0,0, + 126,24,24,24,24,24,24,24,24,24,24,24,24,126,8,19, + 19,8,255,0,65,99,227,0,0,63,12,12,12,12,12,12, + 12,12,12,12,12,12,63,14,14,28,15,0,0,127,192,240, + 240,48,56,48,24,48,28,48,28,254,28,48,28,48,28,48, + 28,48,24,48,56,48,240,255,192,15,19,38,15,0,0,2, + 32,15,240,11,224,16,0,0,0,248,126,56,24,60,24,62, + 24,54,24,55,24,51,152,49,152,49,216,48,248,48,120,48, + 56,48,56,252,24,12,20,40,14,1,0,16,0,60,0,30, + 0,3,0,0,0,0,0,15,128,48,192,96,96,64,96,192, + 48,192,48,192,48,192,48,192,48,192,48,96,96,96,64,48, + 128,31,0,12,20,40,14,1,0,1,0,1,192,7,128,14, + 0,0,0,0,0,15,128,48,192,96,96,64,96,192,48,192, + 48,192,48,192,48,192,48,192,48,96,96,96,64,48,128,31, + 0,12,20,40,14,1,0,6,0,15,0,15,128,24,192,32, + 0,0,0,15,128,48,192,96,96,64,96,192,48,192,48,192, + 48,192,48,192,48,192,48,96,96,96,64,48,128,31,0,12, + 19,38,14,1,0,8,64,31,224,55,128,0,0,0,0,15, + 128,48,192,96,96,64,96,192,48,192,48,192,48,192,48,192, + 48,192,48,96,96,96,64,48,128,31,0,12,19,38,14,1, + 0,16,128,57,192,49,192,0,0,0,0,15,128,48,192,96, + 96,64,96,192,48,192,48,192,48,192,48,192,48,192,48,96, + 96,96,64,48,128,31,0,8,7,7,10,1,3,195,102,60, + 24,60,102,195,12,15,30,14,1,255,15,176,16,224,32,224, + 96,224,193,240,195,112,195,48,198,48,204,48,232,32,120,96, + 112,64,112,128,223,0,128,0,15,20,40,15,0,0,4,0, + 14,0,7,0,1,192,0,0,0,0,252,126,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,48,24,48,24, + 24,48,24,32,7,192,15,20,40,15,0,0,0,64,0,240, + 1,224,3,0,0,0,0,0,252,126,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,48,24,24,48, + 24,32,7,192,15,20,40,15,0,0,1,128,3,128,7,192, + 12,96,0,16,0,0,252,126,48,24,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,24,48,24,32, + 7,192,15,19,38,15,0,0,4,32,12,112,12,96,0,0, + 0,0,252,126,48,24,48,24,48,24,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,24,48,24,32,7,192,13,20, + 40,14,0,0,0,128,0,224,3,192,7,0,0,0,0,0, + 240,120,56,48,28,96,28,96,14,192,6,128,7,128,3,0, + 3,0,3,0,3,0,3,0,3,0,15,192,12,14,28,13, + 0,0,252,0,48,0,48,0,63,192,48,96,48,48,48,48, + 48,48,48,48,48,96,55,192,48,0,48,0,252,0,11,17, + 34,14,1,0,15,128,16,192,32,96,32,96,96,96,96,96, + 97,192,99,0,99,0,99,0,99,192,97,192,96,224,104,96, + 104,96,108,64,239,128,10,17,34,11,1,0,48,0,120,0, + 24,0,12,0,6,0,0,0,0,0,62,0,99,0,227,0, + 3,0,63,0,99,0,195,0,195,0,255,192,123,0,10,17, + 34,11,1,0,7,0,7,0,14,0,12,0,24,0,0,0, + 0,0,62,0,99,0,227,0,3,0,63,0,99,0,195,0, + 195,0,255,192,123,0,10,17,34,11,1,0,12,0,30,0, + 62,0,115,0,65,128,0,0,0,0,62,0,99,0,227,0, + 3,0,63,0,99,0,195,0,195,0,255,192,123,0,10,16, + 32,11,1,0,56,128,124,128,127,0,198,0,0,0,0,0, + 62,0,99,0,227,0,3,0,63,0,99,0,195,0,195,0, + 255,192,123,0,10,15,30,11,1,0,99,0,99,128,99,0, + 0,0,0,0,62,0,99,0,227,0,3,0,63,0,99,0, + 195,0,195,0,255,192,123,0,10,16,32,11,1,0,14,0, + 27,0,26,0,28,0,0,0,0,0,62,0,99,0,227,0, + 3,0,63,0,99,0,195,0,195,0,255,192,123,0,15,10, + 20,17,1,0,30,120,119,140,227,6,131,6,31,252,99,0, + 195,0,199,132,253,252,112,240,9,15,30,10,1,251,31,0, + 99,128,65,0,192,0,192,0,192,0,192,0,225,0,126,0, + 60,0,16,0,28,0,12,0,12,0,48,0,9,17,34,11, + 1,0,56,0,56,0,28,0,12,0,6,0,0,0,0,0, + 30,0,99,0,65,128,193,128,255,128,192,0,192,0,225,128, + 127,0,62,0,9,17,34,11,1,0,7,0,7,128,14,0, + 12,0,24,0,0,0,0,0,30,0,99,0,65,128,193,128, + 255,128,192,0,192,0,225,128,127,0,62,0,9,17,34,11, + 1,0,12,0,30,0,63,0,51,0,96,128,0,0,0,0, + 30,0,99,0,65,128,193,128,255,128,192,0,192,0,225,128, + 127,0,62,0,9,15,30,11,1,0,97,128,99,128,99,0, + 0,0,0,0,30,0,99,0,65,128,193,128,255,128,192,0, + 192,0,225,128,127,0,62,0,6,17,17,7,0,0,224,112, + 48,24,8,0,0,56,120,24,24,24,24,24,24,24,124,6, + 17,17,7,1,0,28,60,56,96,64,0,0,112,240,48,48, + 48,48,48,48,48,248,7,17,17,7,0,0,56,56,124,198, + 130,0,0,56,120,24,24,24,24,24,24,24,124,8,15,15, + 7,255,0,99,227,195,0,0,28,60,12,12,12,12,12,12, + 12,62,10,17,34,12,1,0,24,0,125,192,15,128,31,0, + 51,128,3,128,1,192,31,192,97,192,64,192,192,192,192,192, + 192,192,192,128,225,128,113,0,30,0,12,16,32,13,1,0, + 28,64,62,64,63,128,99,0,0,0,0,0,51,128,247,192, + 56,192,48,192,48,192,48,192,48,192,48,192,48,192,249,240, + 10,17,34,12,1,0,56,0,56,0,28,0,6,0,2,0, + 0,0,0,0,30,0,33,128,65,128,192,192,192,192,192,192, + 192,192,96,128,113,0,30,0,10,17,34,12,1,0,3,128, + 7,0,6,0,12,0,8,0,0,0,0,0,30,0,33,128, + 65,128,192,192,192,192,192,192,192,192,96,128,113,0,30,0, + 10,17,34,12,1,0,12,0,30,0,31,0,49,128,96,128, + 0,0,0,0,30,0,33,128,65,128,192,192,192,192,192,192, + 192,192,96,128,113,0,30,0,10,16,32,12,1,0,24,64, + 60,128,127,128,71,0,0,0,0,0,30,0,33,128,65,128, + 192,192,192,192,192,192,192,192,96,128,113,0,30,0,10,15, + 30,12,1,0,49,128,115,128,97,128,0,0,0,0,30,0, + 33,128,65,128,192,192,192,192,192,192,192,192,96,128,113,0, + 30,0,8,8,8,10,1,2,24,24,16,255,0,24,24,24, + 10,12,24,12,1,255,0,64,30,192,51,128,99,192,199,192, + 196,192,200,192,248,192,113,128,113,0,94,0,128,0,12,17, + 34,13,1,0,56,0,28,0,12,0,6,0,2,0,0,0, + 0,0,97,192,224,192,96,192,96,192,96,192,96,192,96,192, + 97,192,127,240,60,192,12,17,34,13,1,0,3,128,7,128, + 6,0,12,0,8,0,0,0,0,0,97,192,224,192,96,192, + 96,192,96,192,96,192,96,192,97,192,127,240,60,192,12,17, + 34,13,1,0,14,0,14,0,31,0,49,128,32,128,0,0, + 0,0,97,192,224,192,96,192,96,192,96,192,96,192,96,192, + 97,192,127,240,60,192,12,15,30,13,1,0,49,128,113,128, + 97,128,0,0,0,0,97,192,224,192,96,192,96,192,96,192, + 96,192,96,192,97,192,127,240,60,192,13,22,44,12,255,251, + 0,192,1,224,1,128,3,0,6,0,0,0,0,0,124,120, + 56,32,28,96,28,64,14,192,14,192,6,128,7,128,7,0, + 3,0,3,0,6,0,70,0,124,0,248,0,11,22,44,13, + 1,251,48,0,240,0,48,0,48,0,48,0,48,0,48,0, + 51,128,63,192,56,224,48,96,48,96,48,96,48,96,48,192, + 63,128,55,0,48,0,48,0,48,0,48,0,252,0,13,20, + 40,12,255,251,24,96,28,224,24,192,0,0,0,0,124,120, + 56,32,28,96,28,64,14,192,14,192,6,128,7,128,7,0, + 3,0,3,0,6,0,70,0,124,0,248,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--23-230-72-72-P-114-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 14 + Calculated Max Values w=11 h=22 x= 2 y= 8 dx=12 dy= 0 ascent=18 len=44 + Font Bounding box w=36 h=33 x=-12 y=-8 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent= 0 + X Font ascent =14 descent= 0 + Max Font ascent =18 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb14n[448] U8G_SECTION(".progmem.u8g_font_gdb14n") = { + 0,36,33,244,248,14,0,0,0,0,42,57,0,18,252,14, + 0,9,10,20,10,1,8,24,0,24,0,219,0,255,128,60, + 0,62,0,255,0,219,0,24,0,24,0,8,8,8,10,1, + 2,24,24,24,255,24,24,24,24,4,7,7,6,1,252,48, + 240,48,48,32,96,64,7,1,1,8,1,5,254,4,3,3, + 6,1,0,96,240,224,11,22,44,11,0,252,0,96,0,192, + 0,192,1,128,1,128,3,128,3,0,3,0,7,0,6,0, + 6,0,12,0,12,0,28,0,24,0,24,0,56,0,48,0, + 48,0,96,0,96,0,192,0,10,14,28,12,1,0,30,0, + 51,0,97,128,97,128,225,192,225,192,225,192,225,192,225,192, + 225,192,97,128,97,128,51,0,30,0,8,14,14,12,2,0, + 8,120,248,24,24,24,24,24,24,24,24,24,24,255,8,14, + 14,11,2,0,62,103,227,195,3,6,4,12,24,48,33,65, + 255,255,9,14,28,11,1,0,30,0,99,0,227,0,67,0, + 3,0,6,0,31,0,7,128,3,128,1,128,1,128,1,128, + 67,0,190,0,10,14,28,12,1,0,1,0,7,0,7,0, + 15,0,27,0,19,0,51,0,99,0,99,0,255,192,3,0, + 3,0,3,0,15,192,9,14,28,12,1,0,63,128,63,0, + 32,0,96,0,96,0,126,0,67,0,1,128,1,128,1,128, + 1,128,1,128,195,0,62,0,10,14,28,12,1,0,7,0, + 28,0,48,0,96,0,64,0,223,0,225,128,192,192,192,192, + 192,192,192,192,96,128,49,128,30,0,10,14,28,12,1,0, + 127,192,255,128,129,128,129,128,3,0,3,0,2,0,6,0, + 6,0,12,0,12,0,24,0,56,0,48,0,9,14,28,11, + 1,0,62,0,113,128,241,128,241,128,249,128,127,0,63,0, + 63,128,99,128,193,128,193,128,193,128,99,0,62,0,10,14, + 28,12,1,0,31,0,35,128,65,128,192,192,192,192,192,192, + 192,192,97,192,62,192,0,128,1,128,3,0,14,0,56,0 + }; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--23-230-72-72-P-114-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=19 h=24 x= 2 y=12 dx=20 dy= 0 ascent=19 len=60 + Font Bounding box w=36 h=33 x=-12 y=-8 + Calculated Min Values x=-3 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =19 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb14r[2842] U8G_SECTION(".progmem.u8g_font_gdb14r") = { + 0,36,33,244,248,14,3,134,7,177,32,127,251,19,251,18, + 251,0,0,0,6,0,0,4,17,17,7,2,0,96,224,224, + 224,224,224,224,224,224,64,64,64,0,0,96,240,224,7,8, + 8,11,2,9,102,238,206,206,198,198,198,196,11,13,26,12, + 1,1,12,192,12,128,9,128,127,224,25,0,19,0,19,0, + 51,0,255,128,38,0,38,0,100,0,140,0,10,18,36,12, + 1,254,12,0,12,0,63,128,127,192,205,128,204,128,236,0, + 124,0,63,0,15,128,13,192,140,192,140,192,204,192,255,128, + 127,0,12,0,12,0,15,14,28,17,1,0,56,24,76,16, + 198,48,198,96,198,192,199,128,101,128,59,56,6,68,12,198, + 12,198,24,198,48,100,96,56,15,16,32,16,1,0,15,0, + 17,128,49,128,49,128,51,0,62,0,60,0,28,254,124,120, + 126,48,207,48,199,160,195,224,193,240,97,252,62,56,3,8, + 8,6,2,9,96,224,192,192,192,192,192,192,5,22,22,8, + 2,252,8,24,48,96,96,96,192,192,192,192,192,192,192,192, + 192,192,96,96,96,48,24,8,5,22,22,8,1,252,128,192, + 96,48,48,48,24,24,24,24,24,24,24,24,24,24,48,48, + 48,96,192,128,9,10,20,10,1,8,24,0,24,0,219,0, + 255,128,60,0,62,0,255,0,219,0,24,0,24,0,8,8, + 8,10,1,2,24,24,24,255,24,24,24,24,4,7,7,6, + 1,252,48,240,48,48,32,96,64,7,1,1,8,1,5,254, + 4,3,3,6,1,0,96,240,224,11,22,44,11,0,252,0, + 96,0,192,0,192,1,128,1,128,3,128,3,0,3,0,7, + 0,6,0,6,0,12,0,12,0,28,0,24,0,24,0,56, + 0,48,0,48,0,96,0,96,0,192,0,10,14,28,12,1, + 0,30,0,51,0,97,128,97,128,225,192,225,192,225,192,225, + 192,225,192,225,192,97,128,97,128,51,0,30,0,8,14,14, + 12,2,0,8,120,248,24,24,24,24,24,24,24,24,24,24, + 255,8,14,14,11,2,0,62,103,227,195,3,6,4,12,24, + 48,33,65,255,255,9,14,28,11,1,0,30,0,99,0,227, + 0,67,0,3,0,6,0,31,0,7,128,3,128,1,128,1, + 128,1,128,67,0,190,0,10,14,28,12,1,0,1,0,7, + 0,7,0,15,0,27,0,19,0,51,0,99,0,99,0,255, + 192,3,0,3,0,3,0,15,192,9,14,28,12,1,0,63, + 128,63,0,32,0,96,0,96,0,126,0,67,0,1,128,1, + 128,1,128,1,128,1,128,195,0,62,0,10,14,28,12,1, + 0,7,0,28,0,48,0,96,0,64,0,223,0,225,128,192, + 192,192,192,192,192,192,192,96,128,49,128,30,0,10,14,28, + 12,1,0,127,192,255,128,129,128,129,128,3,0,3,0,2, + 0,6,0,6,0,12,0,12,0,24,0,56,0,48,0,9, + 14,28,11,1,0,62,0,113,128,241,128,241,128,249,128,127, + 0,63,0,63,128,99,128,193,128,193,128,193,128,99,0,62, + 0,10,14,28,12,1,0,31,0,35,128,65,128,192,192,192, + 192,192,192,192,192,97,192,62,192,0,128,1,128,3,0,14, + 0,56,0,4,10,10,6,1,0,224,240,96,0,0,0,0, + 96,240,224,4,15,15,6,1,252,96,240,224,0,0,0,0, + 0,48,240,48,48,32,96,64,9,7,14,10,1,3,1,128, + 15,128,124,0,224,0,248,0,31,0,3,128,9,4,8,10, + 1,4,255,128,0,0,0,0,255,128,9,7,14,10,1,3, + 192,0,248,0,31,0,3,128,31,0,240,0,128,0,9,16, + 32,10,1,0,63,0,103,128,227,128,227,128,3,128,7,0, + 7,0,14,0,12,0,24,0,24,0,24,0,0,0,28,0, + 60,0,56,0,18,20,60,20,1,251,1,248,0,7,254,0, + 28,15,0,56,3,128,48,1,128,97,233,192,99,24,192,194, + 24,192,198,24,192,198,24,192,198,24,192,198,24,128,199,57, + 128,227,255,0,97,222,0,112,0,0,56,1,0,62,7,0, + 15,252,0,3,240,0,14,14,28,14,0,0,1,0,7,128, + 7,128,5,128,13,192,12,192,8,224,24,224,31,224,16,112, + 48,112,48,48,32,56,248,124,13,14,28,14,0,0,127,128, + 176,192,48,96,48,96,48,96,48,192,63,224,48,112,48,56, + 48,56,48,56,48,56,48,112,255,224,11,14,28,13,1,0, + 15,192,49,192,96,128,64,0,192,0,192,0,192,0,192,0, + 192,0,192,0,224,0,112,96,127,128,31,0,14,14,28,15, + 0,0,127,192,240,240,48,56,48,24,48,28,48,28,48,28, + 48,28,48,28,48,28,48,24,48,56,48,240,255,192,12,14, + 28,12,0,0,255,224,56,96,56,96,56,64,56,0,56,0, + 63,192,56,128,56,0,56,0,56,0,56,48,56,32,255,224, + 11,14,28,12,0,0,255,224,56,96,56,32,56,32,56,0, + 56,0,63,128,57,0,56,0,56,0,56,0,56,0,56,0, + 254,0,12,14,28,14,1,0,15,192,16,224,32,64,96,0, + 64,0,192,0,192,0,192,0,193,240,192,96,96,96,96,96, + 48,96,15,128,16,14,28,16,0,0,252,63,48,12,48,12, + 48,12,48,12,48,12,63,252,48,12,48,12,48,12,48,12, + 48,12,48,12,252,63,6,14,14,8,1,0,252,48,48,48, + 48,48,48,48,48,48,48,48,48,252,10,19,38,8,253,251, + 15,192,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 38,0,124,0,248,0,13,14,28,14,0,0,252,248,48,224, + 48,192,49,128,51,0,54,0,60,0,62,0,55,0,51,128, + 49,192,48,224,48,120,252,120,11,14,28,12,0,0,252,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,96,48,64,255,192,18,14,42,19,1,0, + 240,7,128,120,15,0,120,15,0,124,15,0,124,31,0,108, + 23,0,110,55,0,102,55,0,103,103,0,99,103,0,99,199, + 0,99,199,0,97,135,0,241,143,192,15,14,28,15,0,0, + 248,126,56,24,60,24,62,24,54,24,55,24,51,152,49,152, + 49,216,48,248,48,120,48,56,48,56,252,24,12,14,28,14, + 1,0,15,128,48,192,96,96,64,96,192,48,192,48,192,48, + 192,48,192,48,192,48,96,96,96,64,48,128,31,0,12,14, + 28,13,0,0,127,192,176,224,48,48,48,48,48,48,48,48, + 48,96,55,128,48,0,48,0,48,0,48,0,48,0,252,0, + 15,18,36,14,1,252,15,128,48,192,96,96,64,96,192,48, + 192,48,192,48,192,48,192,48,192,48,96,96,96,96,48,192, + 31,0,1,192,0,228,0,126,0,24,14,14,28,14,0,0, + 127,192,240,224,48,48,48,48,48,48,48,96,63,192,51,128, + 49,192,49,192,48,224,48,112,48,124,252,60,10,14,28,12, + 1,0,31,128,97,192,192,128,192,0,240,0,124,0,63,0, + 15,128,3,192,1,192,128,192,192,128,225,128,254,0,12,14, + 28,13,1,0,255,240,198,48,134,16,134,16,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,31,128, + 15,14,28,15,0,0,252,126,48,24,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,24,48,24,32, + 7,192,15,14,28,15,0,0,252,62,56,8,56,24,56,16, + 28,48,28,48,14,32,14,96,6,96,7,64,7,192,3,128, + 3,128,1,0,19,14,42,20,0,0,252,99,224,48,96,192, + 56,112,192,56,240,128,56,241,128,24,185,128,25,153,128,29, + 29,0,29,29,0,15,15,0,14,15,0,14,7,0,14,6, + 0,4,6,0,14,14,28,14,0,0,252,124,56,48,28,96, + 28,96,14,192,7,128,7,128,7,128,7,192,12,224,24,224, + 24,112,48,56,248,252,13,14,28,14,0,0,240,120,56,48, + 28,96,28,96,14,192,6,128,7,128,3,0,3,0,3,0, + 3,0,3,0,3,0,15,192,11,14,28,13,1,0,127,224, + 193,192,195,128,131,128,7,0,15,0,14,0,28,0,28,0, + 56,0,120,32,112,96,224,96,255,224,6,21,21,8,2,253, + 248,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,252,10,22,44,11,0,252,192,0,96,0,96, + 0,48,0,48,0,48,0,24,0,24,0,28,0,12,0,12, + 0,6,0,6,0,6,0,3,0,3,0,3,0,1,128,1, + 128,1,192,0,192,0,192,5,21,21,7,1,253,248,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,248,9,11,22,11,1,6,8,0,12,0,28,0,22,0, + 54,0,34,0,35,0,99,0,65,128,65,128,129,128,10,1, + 2,11,1,253,255,192,5,5,5,7,0,12,224,224,112,56, + 8,10,10,20,11,1,0,62,0,99,0,227,0,3,0,63, + 0,99,0,195,0,195,0,255,192,123,0,11,17,34,12,0, + 0,96,0,224,0,96,0,96,0,96,0,96,0,96,0,119, + 128,127,192,112,224,96,96,96,96,96,96,96,64,96,192,127, + 128,30,0,9,10,20,10,1,0,31,0,99,128,65,0,192, + 0,192,0,192,0,192,0,225,0,127,128,60,0,12,17,34, + 13,1,0,0,192,3,192,0,192,0,192,0,192,0,192,0, + 192,31,192,33,192,64,192,192,192,192,192,192,192,192,192,97, + 192,127,240,60,192,9,10,20,11,1,0,30,0,99,0,65, + 128,193,128,255,128,192,0,192,0,225,128,127,0,62,0,9, + 17,34,8,0,0,7,128,25,0,16,0,48,0,48,0,48, + 0,48,0,126,0,176,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,0,124,0,11,15,30,12,1,251,30,96,35, + 192,97,128,97,128,97,128,115,0,62,0,48,0,124,0,63, + 128,111,192,192,192,192,192,225,128,62,0,12,17,34,13,1, + 0,48,0,240,0,48,0,48,0,48,0,48,0,48,0,51, + 128,63,192,56,192,48,192,48,192,48,192,48,192,48,192,48, + 192,249,240,5,15,15,7,1,0,48,112,48,0,0,112,240, + 48,48,48,48,48,48,48,248,7,20,20,6,254,251,6,14, + 6,0,0,6,14,6,6,6,6,6,6,6,6,6,6,68, + 248,240,12,17,34,13,1,0,48,0,240,0,48,0,48,0, + 48,0,48,0,48,0,49,240,49,192,51,0,54,0,62,0, + 55,0,51,128,49,192,49,224,248,240,6,17,17,7,1,0, + 48,240,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 252,18,10,30,19,1,0,103,142,0,255,255,0,112,227,0, + 96,195,0,96,195,0,96,195,0,96,195,0,96,195,0,96, + 195,0,241,231,192,12,10,20,13,1,0,51,128,247,192,56, + 192,48,192,48,192,48,192,48,192,48,192,48,192,249,240,10, + 10,20,12,1,0,30,0,33,128,65,128,192,192,192,192,192, + 192,192,192,96,128,113,0,30,0,11,15,30,13,1,251,51, + 128,255,192,56,224,48,96,48,96,48,96,48,96,48,192,63, + 128,55,0,48,0,48,0,48,0,48,0,252,0,11,15,30, + 13,1,251,30,64,97,192,64,192,192,192,192,192,192,192,192, + 192,225,192,127,192,60,192,0,192,0,192,0,192,0,192,3, + 224,9,10,20,10,1,0,119,128,255,128,121,128,113,0,112, + 0,112,0,112,0,112,0,112,0,252,0,8,10,10,10,1, + 0,126,198,198,240,124,63,135,131,194,252,8,14,14,9,0, + 0,16,48,48,48,127,176,48,48,48,48,48,50,63,24,12, + 10,20,13,1,0,97,192,224,192,96,192,96,192,96,192,96, + 192,96,192,97,192,127,240,60,192,12,10,20,12,0,0,248, + 240,112,64,56,192,56,128,28,128,29,128,13,0,15,0,6, + 0,6,0,16,10,20,17,0,0,248,135,112,194,49,198,57, + 230,59,100,27,124,30,124,14,56,12,56,12,16,12,10,20, + 12,0,0,253,240,56,192,29,128,31,0,14,0,15,0,27, + 128,17,192,33,224,243,240,13,15,30,12,255,251,124,120,56, + 32,28,96,28,64,14,192,14,192,6,128,7,128,7,0,3, + 0,3,0,6,0,70,0,124,0,248,0,9,10,20,11,1, + 0,255,128,199,0,135,0,14,0,28,0,60,0,57,0,112, + 128,225,128,255,128,5,22,22,8,2,252,24,48,96,96,96, + 96,48,48,48,48,96,224,48,48,48,48,96,96,96,96,48, + 24,2,24,24,5,2,251,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,5, + 22,22,8,1,252,192,96,48,48,48,48,96,96,96,96,56, + 48,96,96,96,96,48,48,48,48,96,192,10,4,8,11,1, + 5,48,64,124,128,159,0,135,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--27-270-72-72-P-135-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 17, '1' Height: 16 + Calculated Max Values w=23 h=27 x= 3 y=16 dx=23 dy= 0 ascent=23 len=69 + Font Bounding box w=42 h=39 x=-14 y=-10 + Calculated Min Values x=-4 y=-7 dx= 0 dy= 0 + Pure Font ascent =17 descent=-6 + X Font ascent =21 descent=-6 + Max Font ascent =23 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb17[7600] U8G_SECTION(".progmem.u8g_font_gdb17") = { + 0,42,39,242,246,17,4,81,9,172,32,255,250,23,249,21, + 250,0,0,0,7,0,0,4,21,21,8,2,255,48,240,240, + 240,240,112,112,96,96,96,96,96,96,96,64,0,0,112,240, + 240,224,9,9,18,13,2,11,113,128,231,128,231,128,231,128, + 227,0,227,0,99,0,99,0,99,0,13,15,30,14,1,2, + 2,32,6,96,6,96,6,96,12,96,63,248,76,192,24,128, + 25,128,255,224,51,0,51,0,51,0,35,0,102,0,11,20, + 40,13,1,254,6,0,6,0,31,128,127,224,230,224,198,96, + 198,0,246,0,126,0,63,128,7,192,6,224,6,96,198,96, + 198,96,246,192,255,192,31,0,6,0,6,0,18,17,51,20, + 1,0,0,1,0,60,6,0,102,14,0,195,12,0,195,24, + 0,195,48,0,195,112,0,195,96,0,102,192,0,61,143,0, + 3,144,128,3,48,192,6,48,192,12,48,192,24,48,192,56, + 25,128,48,15,0,17,19,57,18,1,0,7,128,0,25,224, + 0,16,224,0,48,224,0,48,224,0,49,192,0,63,128,0, + 63,0,0,30,0,0,62,63,128,127,29,0,127,140,0,239, + 140,0,231,204,0,227,248,0,225,248,0,96,252,0,112,255, + 0,31,14,128,4,9,9,7,2,11,112,224,224,224,224,224, + 96,96,96,7,25,25,9,2,252,4,14,28,56,48,112,112, + 112,224,224,224,224,224,224,224,224,224,96,112,112,48,56,28, + 12,6,7,25,25,9,0,252,64,224,112,56,24,28,28,28, + 14,14,14,14,14,14,14,14,14,28,28,28,56,56,112,96, + 192,10,12,24,12,1,9,12,0,12,0,204,128,237,192,255, + 192,63,0,63,0,255,192,237,192,76,128,12,0,12,0,10, + 10,20,11,1,2,12,0,12,0,12,0,12,0,255,192,12, + 0,12,0,12,0,12,0,12,0,5,8,8,7,1,251,48, + 248,120,56,48,48,96,192,8,1,1,10,1,6,255,4,4, + 4,7,2,255,112,240,240,224,12,25,50,13,0,252,0,48, + 0,112,0,112,0,96,0,224,0,192,1,192,1,192,1,128, + 3,128,3,128,3,0,7,0,6,0,14,0,14,0,12,0, + 28,0,24,0,56,0,56,0,48,0,112,0,96,0,224,0, + 12,16,32,14,1,0,15,0,49,192,48,224,96,224,96,96, + 224,112,224,112,224,112,224,112,224,112,224,112,96,96,112,96, + 112,192,56,192,15,0,10,16,32,14,2,0,6,0,62,0, + 254,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,31,0,255,192,11,16,32,14, + 1,0,15,128,57,192,112,224,112,224,128,224,0,192,1,192, + 3,128,3,0,7,0,14,0,28,32,56,32,48,32,127,224, + 255,224,11,16,32,14,1,0,31,0,115,128,113,192,225,192, + 1,192,3,128,7,128,15,192,3,192,1,224,0,224,0,224, + 0,224,128,192,193,192,63,0,11,16,32,14,2,0,0,128, + 3,128,7,128,7,128,13,128,13,128,25,128,49,128,49,128, + 97,128,255,224,1,128,1,128,1,128,3,192,15,224,11,16, + 32,14,1,0,63,224,63,192,32,0,32,0,96,0,96,0, + 127,0,99,192,1,192,0,224,0,224,0,224,0,224,1,192, + 193,192,63,0,12,16,32,14,1,0,1,192,7,0,28,0, + 56,0,112,0,96,0,239,128,240,224,224,224,224,112,224,112, + 224,112,112,112,112,96,56,192,15,128,12,16,32,14,1,0, + 127,240,127,224,192,96,128,192,0,192,1,192,1,128,1,128, + 3,0,3,0,7,0,6,0,14,0,28,0,28,0,56,0, + 11,16,32,13,1,0,15,128,57,192,112,224,112,224,120,224, + 125,192,63,128,31,128,63,192,115,224,225,224,224,224,224,224, + 224,192,113,128,31,0,12,17,34,14,1,255,15,128,49,192, + 96,224,224,224,224,112,224,112,224,112,240,112,112,240,31,112, + 0,96,0,224,0,224,1,192,3,128,30,0,56,0,4,13, + 13,7,2,255,112,240,240,224,0,0,0,0,0,112,240,240, + 224,5,17,17,7,1,251,56,120,120,48,0,0,0,0,0, + 48,248,120,56,48,48,96,192,11,9,18,12,1,3,0,96, + 3,192,31,128,252,0,240,0,248,0,63,0,7,192,0,224, + 11,5,10,12,1,5,255,224,0,0,0,0,0,0,255,224, + 11,9,18,12,1,3,192,0,248,0,63,0,7,192,1,224, + 15,192,126,0,240,0,192,0,9,20,40,12,1,255,63,0, + 119,128,227,128,227,128,195,128,3,128,3,0,7,0,6,0, + 14,0,12,0,12,0,12,0,12,0,0,0,0,0,28,0, + 60,0,60,0,56,0,20,23,69,23,2,251,0,252,0,3, + 255,0,14,7,128,24,1,192,48,0,224,32,0,96,96,242, + 112,97,142,48,195,14,48,195,14,48,199,14,48,199,14,48, + 199,14,48,199,14,96,199,158,96,227,255,192,99,239,128,113, + 199,0,120,0,0,60,0,64,31,3,192,15,255,0,3,252, + 0,17,17,51,17,0,0,0,192,0,1,192,0,3,192,0, + 3,224,0,2,224,0,6,240,0,6,112,0,6,112,0,12, + 120,0,12,56,0,15,248,0,24,28,0,24,28,0,16,28, + 0,48,14,0,48,14,0,252,63,128,13,17,34,16,1,0, + 127,192,248,224,56,112,56,112,56,112,56,112,56,224,63,192, + 56,240,56,112,56,56,56,56,56,56,56,56,56,48,56,112, + 255,192,13,17,34,15,1,0,7,240,24,120,48,48,112,0, + 96,0,96,0,224,0,224,0,224,0,224,0,224,0,240,0, + 112,0,120,8,60,56,31,224,15,128,16,17,34,17,0,0, + 127,224,248,120,56,60,56,30,56,30,56,15,56,15,56,15, + 56,15,56,15,56,15,56,15,56,30,56,30,56,60,56,120, + 255,224,13,17,34,14,1,0,255,240,120,48,120,48,120,32, + 120,32,120,0,120,0,120,0,127,192,120,128,120,0,120,0, + 120,0,120,16,120,24,120,48,255,240,12,17,34,14,1,0, + 255,240,120,48,120,48,120,48,120,32,120,0,120,0,120,0, + 127,192,120,128,120,0,120,0,120,0,120,0,120,0,120,0, + 254,0,14,17,34,16,1,0,3,240,12,120,48,48,48,0, + 112,0,96,0,224,0,224,0,224,0,224,252,224,56,224,56, + 112,56,112,56,60,56,31,240,7,192,17,17,51,18,0,0, + 254,63,128,60,30,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,63,254,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 254,63,128,7,17,17,9,1,0,254,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,254,12,22,44,9,252,251, + 7,240,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,128,1,128,51,0,126,0,252,0,16,17,34,17, + 1,0,254,126,56,56,56,48,56,112,56,224,57,192,59,128, + 63,0,63,0,59,128,57,192,57,224,56,240,56,120,56,60, + 56,31,254,30,13,17,34,14,1,0,254,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,8,56,24,56,24,255,240,21,17,51,23, + 1,0,248,1,248,56,1,224,60,1,224,60,3,224,62,3, + 224,62,6,224,63,6,224,55,12,224,39,140,224,35,156,224, + 35,152,224,33,216,224,33,240,224,97,240,224,96,224,224,112, + 224,224,248,67,248,18,17,51,18,0,0,248,15,192,124,3, + 0,60,3,0,62,3,0,63,3,0,55,131,0,51,195,0, + 51,195,0,49,227,0,48,243,0,48,123,0,48,123,0,48, + 63,0,48,31,0,48,15,0,48,7,0,252,3,0,15,17, + 34,17,1,0,7,192,24,112,48,56,48,28,96,28,96,14, + 224,14,224,14,224,14,224,14,224,14,224,12,112,28,112,24, + 56,24,28,32,7,192,14,17,34,15,0,0,127,224,248,120, + 56,56,56,28,56,28,56,28,56,28,56,56,60,112,59,224, + 56,0,56,0,56,0,56,0,56,0,56,0,254,0,18,22, + 66,17,1,251,7,192,0,24,112,0,48,56,0,48,28,0, + 96,28,0,96,14,0,224,14,0,224,14,0,224,14,0,224, + 14,0,224,14,0,224,14,0,112,28,0,112,28,0,56,24, + 0,28,48,0,7,192,0,0,112,0,0,60,64,0,31,192, + 0,15,128,0,3,0,16,17,34,16,0,0,63,192,248,112, + 56,56,56,56,56,56,56,56,56,112,63,240,63,192,57,192, + 56,224,56,224,56,112,56,120,56,60,56,63,254,30,12,17, + 34,14,1,0,15,240,48,240,64,32,192,0,224,0,248,0, + 126,0,63,128,31,192,7,224,0,240,0,112,0,48,192,48, + 192,32,240,64,255,128,15,17,34,16,0,0,255,254,195,134, + 195,134,131,134,131,132,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,7,192,15,224,17,17, + 51,18,0,0,254,31,128,56,6,0,56,6,0,56,6,0, + 56,6,0,56,6,0,56,6,0,56,6,0,56,6,0,56, + 6,0,56,6,0,56,6,0,56,6,0,56,4,0,28,12, + 0,14,24,0,3,224,0,18,17,51,18,0,0,254,15,192, + 56,7,0,60,6,0,28,6,0,28,6,0,30,12,0,14, + 12,0,15,24,0,7,24,0,7,24,0,7,176,0,3,176, + 0,3,176,0,1,224,0,1,224,0,1,224,0,0,128,0, + 23,17,51,23,0,0,254,24,126,56,24,24,56,56,24,56, + 60,16,28,60,48,28,110,48,28,110,48,28,110,48,14,199, + 96,14,199,96,14,135,96,15,131,224,15,131,224,7,1,192, + 7,1,192,7,1,192,6,0,128,17,17,51,17,0,0,255, + 63,0,60,12,0,28,24,0,30,24,0,15,48,0,7,112, + 0,7,224,0,3,192,0,1,192,0,3,224,0,3,240,0, + 6,112,0,12,120,0,12,60,0,24,28,0,56,30,0,252, + 63,128,16,17,34,17,0,0,248,31,60,14,28,12,14,24, + 15,24,7,48,7,48,3,224,3,224,1,192,1,192,1,192, + 1,192,1,192,1,192,1,192,7,240,13,17,34,15,1,0, + 127,248,96,240,64,240,193,224,1,192,3,192,7,128,7,128, + 15,0,15,0,30,0,60,0,60,0,120,24,120,24,240,24, + 255,248,6,25,25,9,3,252,252,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 252,11,25,50,13,1,252,192,0,192,0,224,0,96,0,112, + 0,112,0,48,0,56,0,24,0,24,0,28,0,12,0,14, + 0,6,0,6,0,7,0,3,0,3,0,3,128,1,128,1, + 192,0,192,0,192,0,224,0,96,6,25,25,8,0,252,252, + 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12, + 12,12,12,12,12,12,12,252,11,13,26,13,1,7,6,0, + 14,0,14,0,15,0,27,0,19,0,17,128,49,128,33,192, + 96,192,96,192,64,96,192,64,11,1,2,13,1,253,255,224, + 6,6,6,9,0,14,224,240,112,56,24,12,12,12,24,13, + 1,0,31,128,113,192,241,192,129,192,3,192,63,192,113,192, + 225,192,225,192,227,240,253,224,121,128,14,20,40,15,0,0, + 24,0,248,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,240,59,248,62,56,56,28,56,12,56,12,56,12,56,8, + 56,8,60,16,63,224,7,128,11,12,24,12,1,0,15,224, + 48,192,112,192,96,64,224,0,224,0,224,0,224,0,240,64, + 120,224,63,192,31,0,14,20,40,15,1,0,0,48,1,240, + 0,112,0,112,0,112,0,112,0,112,0,112,15,240,48,240, + 96,112,96,112,224,112,224,112,224,112,240,112,248,240,127,244, + 63,124,30,48,11,12,24,13,1,0,15,0,49,192,112,192, + 96,224,224,224,255,192,224,0,224,0,240,64,120,224,63,192, + 31,0,11,19,38,9,1,0,3,224,12,192,24,0,24,0, + 56,0,56,0,56,0,255,128,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,255,0,14,18, + 36,15,0,250,15,140,16,252,32,112,96,48,96,48,112,48, + 56,96,31,128,28,0,124,0,127,224,63,248,127,252,240,60, + 224,28,224,24,112,48,31,192,15,20,40,16,1,0,24,0, + 248,0,56,0,56,0,56,0,56,0,56,0,56,0,56,240, + 59,248,62,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,254,254,7,18,18,8,1,0,56,120,112,0, + 0,0,56,248,56,56,56,56,56,56,56,56,56,254,10,24, + 48,8,252,250,1,192,3,192,3,128,0,0,0,0,0,0, + 3,128,15,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,0,102,0, + 252,0,120,0,14,20,40,15,1,0,24,0,248,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,252,56,112,56,224, + 57,128,59,0,63,0,59,128,57,192,56,224,56,240,56,120, + 252,60,7,20,20,8,1,0,24,248,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,254,23,12,36,23, + 0,0,25,241,240,251,255,248,62,62,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,254,254,254,15,12,24,16,1,0,24,240,251,248, + 62,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,254,254,12,12,24,14,1,0,15,128,49,192,112,224, + 96,112,224,112,224,112,224,112,224,112,224,96,112,96,56,192, + 31,0,13,18,36,15,1,250,25,224,251,240,60,112,56,56, + 56,24,56,24,56,24,56,24,56,16,60,48,63,224,59,192, + 56,0,56,0,56,0,56,0,56,0,254,0,14,18,36,15, + 1,250,15,16,48,240,96,112,96,112,224,112,224,112,224,112, + 240,112,248,240,127,240,127,112,28,112,0,112,0,112,0,112, + 0,112,0,112,1,252,11,12,24,12,1,0,49,224,247,224, + 124,192,120,64,120,64,120,0,120,0,120,0,120,0,120,0, + 120,0,254,0,9,12,24,11,1,0,62,0,71,0,194,0, + 224,0,248,0,126,0,63,0,15,128,131,128,193,128,225,0, + 254,0,10,17,34,10,0,0,8,0,24,0,56,0,56,0, + 56,0,255,192,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,128,63,192,30,0,15,12,24,15,0,0, + 56,56,248,248,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,250,63,190,30,56,14,12,24,14,0,0,252,124, + 120,48,56,48,60,32,28,96,30,96,14,192,14,192,7,128, + 7,128,7,128,3,0,19,12,36,19,0,0,252,33,224,120, + 96,192,56,112,192,56,241,128,28,249,128,28,185,128,29,159, + 0,15,31,0,15,31,0,15,14,0,6,14,0,4,4,0, + 14,12,24,14,0,0,254,252,60,112,28,96,30,192,15,128, + 7,128,7,128,15,192,25,224,24,240,48,120,249,252,15,18, + 36,14,255,250,126,62,60,24,28,24,30,16,14,48,15,48, + 7,96,7,96,3,192,3,192,3,192,1,128,1,128,3,0, + 3,0,126,0,124,0,248,0,11,12,24,13,1,0,127,224, + 67,192,67,192,135,128,15,0,15,0,30,0,60,0,56,32, + 120,96,240,96,255,224,7,25,25,9,1,252,2,14,28,56, + 56,56,56,28,28,28,28,56,240,248,28,28,28,28,56,56, + 56,56,28,14,6,2,27,27,6,2,251,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,7,25,25,9,1,252,192,224,112,56, + 56,56,56,112,112,112,112,62,30,56,112,112,112,112,56,56, + 56,56,112,224,128,12,4,8,13,1,6,56,48,126,32,143, + 192,131,128,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,0,0,0,7,0,0,4,19,19,8,2,249, + 112,240,240,224,32,96,96,96,96,96,96,112,112,112,240,240, + 240,240,192,10,17,34,14,2,255,12,0,12,0,15,128,63, + 192,109,192,108,192,204,0,204,0,204,0,204,0,204,0,236, + 64,125,192,63,128,30,0,12,0,12,0,13,16,32,14,0, + 0,3,240,6,56,12,16,28,16,28,16,60,0,60,0,60, + 0,255,192,60,0,60,0,60,16,56,24,56,24,127,248,255, + 240,12,11,22,14,1,2,192,48,239,112,112,224,96,96,96, + 96,96,96,96,96,112,224,111,96,192,48,128,16,15,16,32, + 14,255,0,248,126,120,56,60,48,30,48,30,96,15,96,7, + 192,7,192,7,192,3,128,63,248,3,128,3,128,3,128,3, + 128,15,224,2,27,27,6,2,251,192,192,192,192,192,192,192, + 192,192,192,192,192,128,0,0,192,192,192,192,192,192,192,192, + 192,192,192,192,10,19,38,13,2,0,31,0,35,128,97,0, + 113,0,120,0,62,0,127,128,207,128,195,192,225,192,240,192, + 124,192,63,128,31,128,7,128,65,128,65,128,97,0,126,0, + 9,4,8,11,1,14,115,128,247,128,247,128,231,0,18,18, + 54,20,1,0,3,240,0,14,28,0,24,6,0,48,3,0, + 97,241,128,102,57,128,198,16,192,204,0,192,204,0,192,204, + 0,192,204,0,192,204,0,192,102,1,128,103,25,128,49,243, + 0,24,6,0,12,12,0,3,240,0,6,9,9,7,1,8, + 120,216,24,120,216,216,252,0,252,11,12,24,14,1,0,4, + 32,8,96,24,192,49,192,115,128,231,128,231,128,115,128,49, + 192,24,192,8,96,4,32,12,6,12,14,1,2,127,240,128, + 48,0,48,0,48,0,48,0,32,8,1,1,10,1,6,255, + 10,9,18,10,255,10,30,0,97,128,255,128,219,192,222,192, + 220,192,251,192,97,128,30,0,11,2,4,13,1,16,127,224, + 255,224,6,7,7,10,2,10,56,76,204,204,204,200,112,10, + 12,24,11,1,2,12,0,12,0,12,0,12,0,255,192,12, + 0,12,0,12,0,12,0,0,0,0,0,255,192,7,10,10, + 9,1,8,60,102,230,6,12,24,16,50,98,254,7,10,10, + 9,1,8,60,102,70,6,28,6,6,6,142,120,6,6,6, + 9,3,14,56,60,112,96,192,128,15,18,36,15,0,250,24, + 24,248,120,56,56,56,56,56,56,56,56,56,56,56,56,60, + 120,63,248,63,190,55,24,48,0,48,0,56,0,56,0,60, + 0,48,0,15,20,40,17,1,253,15,254,49,248,113,152,225, + 152,225,152,225,152,225,152,113,152,121,152,31,152,1,152,1, + 152,1,152,1,152,1,152,1,152,1,152,1,152,1,152,7, + 254,4,4,4,6,1,7,112,240,240,224,5,6,6,6,1, + 250,32,96,120,56,112,224,7,10,10,9,1,8,24,248,24, + 24,24,24,24,24,24,126,7,9,9,8,0,8,56,76,198, + 198,198,228,120,0,254,11,12,24,14,2,0,132,0,198,0, + 99,0,115,128,57,192,61,224,61,224,57,192,115,128,99,0, + 198,0,132,0,15,16,32,17,1,0,48,6,240,12,48,24, + 48,48,48,48,48,96,48,192,253,128,1,140,3,28,6,44, + 12,44,12,76,24,254,48,12,96,62,15,16,32,17,1,0, + 48,6,240,12,48,24,48,24,48,48,48,96,48,192,252,192, + 1,188,3,102,6,70,6,12,12,8,24,16,48,34,112,126, + 15,16,32,17,1,0,56,6,204,12,12,24,56,48,12,48, + 12,96,140,192,121,128,1,140,3,28,6,60,12,44,12,76, + 24,254,48,12,96,62,10,19,38,12,1,249,14,0,30,0, + 30,0,28,0,0,0,6,0,6,0,6,0,14,0,12,0, + 24,0,56,0,112,0,224,0,224,192,225,192,225,192,243,128, + 62,0,17,23,69,17,0,0,6,0,0,15,0,0,7,128, + 0,1,192,0,0,96,0,0,0,0,0,192,0,1,192,0, + 3,192,0,3,224,0,2,224,0,6,240,0,6,112,0,6, + 112,0,12,120,0,12,56,0,15,248,0,24,28,0,24,28, + 0,16,28,0,48,14,0,48,14,0,252,63,128,17,23,69, + 17,0,0,0,48,0,0,120,0,1,224,0,3,128,0,2, + 0,0,0,0,0,0,192,0,1,192,0,3,192,0,3,224, + 0,2,224,0,6,240,0,6,112,0,6,112,0,12,120,0, + 12,56,0,15,248,0,24,28,0,24,28,0,16,28,0,48, + 14,0,48,14,0,252,63,128,17,23,69,17,0,0,1,192, + 0,3,224,0,7,240,0,14,48,0,8,24,0,0,0,0, + 0,192,0,1,192,0,3,192,0,3,224,0,2,224,0,6, + 240,0,6,112,0,6,112,0,12,120,0,12,56,0,15,248, + 0,24,28,0,24,28,0,16,28,0,48,14,0,48,14,0, + 252,63,128,17,22,66,17,0,0,7,140,0,15,248,0,15, + 240,0,16,96,0,0,0,0,0,192,0,1,192,0,3,192, + 0,3,224,0,2,224,0,6,240,0,6,112,0,6,112,0, + 12,120,0,12,56,0,15,248,0,24,28,0,24,28,0,16, + 28,0,48,14,0,48,14,0,252,63,128,17,22,66,17,0, + 0,7,56,0,15,120,0,15,120,0,6,48,0,0,0,0, + 0,192,0,1,192,0,3,192,0,3,224,0,2,224,0,6, + 240,0,6,112,0,6,112,0,12,120,0,12,56,0,15,248, + 0,24,28,0,24,28,0,16,28,0,48,14,0,48,14,0, + 252,63,128,17,23,69,17,0,0,3,224,0,6,96,0,6, + 96,0,7,96,0,3,128,0,0,0,0,0,192,0,1,192, + 0,3,192,0,3,224,0,2,224,0,6,240,0,6,112,0, + 6,112,0,12,120,0,12,56,0,15,248,0,24,28,0,24, + 28,0,16,28,0,48,14,0,48,14,0,252,63,128,21,17, + 51,22,0,0,7,255,240,1,248,48,1,248,48,3,184,48, + 3,184,48,3,56,0,7,56,0,6,56,0,7,255,224,12, + 56,64,12,56,0,28,56,0,24,56,0,24,56,8,48,56, + 24,48,56,24,248,255,248,14,23,46,15,1,250,7,240,24, + 120,48,48,112,0,96,0,96,0,224,0,224,0,224,0,224, + 0,224,0,240,0,112,0,120,8,60,60,63,240,15,192,1, + 0,3,128,3,192,1,192,3,128,6,0,13,23,46,14,1, + 0,24,0,60,0,94,0,7,0,1,128,0,0,255,240,120, + 48,120,48,120,32,120,32,120,0,120,0,120,0,127,192,120, + 128,120,0,120,0,120,0,120,16,120,24,120,48,255,240,13, + 23,46,14,1,0,1,192,3,224,7,128,14,0,24,0,0, + 0,255,240,120,48,120,48,120,32,120,32,120,0,120,0,120, + 0,127,192,120,128,120,0,120,0,120,0,120,16,120,24,120, + 48,255,240,13,23,46,14,1,0,7,0,15,0,31,128,56, + 192,32,96,0,0,255,240,120,48,120,48,120,32,120,32,120, + 0,120,0,120,0,127,192,120,128,120,0,120,0,120,0,120, + 16,120,24,120,48,255,240,13,22,44,14,1,0,28,224,61, + 224,61,224,24,192,0,0,255,240,120,48,120,48,120,32,120, + 32,120,0,120,0,120,0,127,192,120,128,120,0,120,0,120, + 0,120,16,120,24,120,48,255,240,8,23,23,9,0,0,96, + 240,120,28,6,0,127,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,127,8,23,23,9,1,0,6,31,60,112, + 64,0,254,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,254,9,23,46,9,0,0,28,0,62,0,126,0,227, + 0,129,128,0,0,127,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,127,0,9,22,44,9,0,0,115,128,247, + 128,247,128,99,0,0,0,127,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,127,0,16,17,34,17,0,0,63, + 224,248,120,56,60,56,30,56,30,56,15,56,15,56,15,255, + 143,56,15,56,15,56,15,56,30,56,30,56,60,56,120,255, + 224,18,22,66,18,0,0,3,204,0,7,248,0,15,248,0, + 8,112,0,0,0,0,248,15,192,124,3,0,60,3,0,62, + 3,0,63,3,0,55,131,0,51,195,0,51,195,0,49,227, + 0,48,243,0,48,123,0,48,123,0,48,63,0,48,31,0, + 48,15,0,48,7,0,252,3,0,15,23,46,17,1,0,12, + 0,30,0,15,0,3,128,0,64,0,0,7,192,24,112,48, + 56,48,28,96,28,96,14,224,14,224,14,224,14,224,14,224, + 14,224,12,112,28,112,24,56,24,28,32,7,192,15,23,46, + 17,1,0,0,96,0,240,3,224,7,0,4,0,0,0,7, + 192,24,112,48,56,48,28,96,28,96,14,224,14,224,14,224, + 14,224,14,224,14,224,12,112,28,112,24,56,24,28,32,7, + 192,15,23,46,17,1,0,3,128,7,192,15,224,28,96,16, + 48,0,0,7,192,24,112,48,56,48,28,96,28,96,14,224, + 14,224,14,224,14,224,14,224,14,224,12,112,28,112,24,56, + 24,28,32,7,192,15,22,44,17,1,0,15,24,31,240,31, + 224,48,192,0,0,7,192,24,112,48,56,48,28,96,28,96, + 14,224,14,224,14,224,14,224,14,224,14,224,12,112,28,112, + 24,56,24,28,32,7,192,15,22,44,17,1,0,14,112,30, + 240,30,240,12,96,0,0,7,192,24,112,48,56,48,28,96, + 28,96,14,224,14,224,14,224,14,224,14,224,14,224,12,112, + 28,112,24,56,24,28,32,7,192,9,9,18,11,1,3,193, + 128,227,128,119,0,62,0,28,0,62,0,119,0,227,128,193, + 128,15,18,36,17,1,255,7,238,8,124,56,56,48,60,112, + 124,96,254,224,238,225,206,227,142,227,14,231,14,254,12,124, + 28,124,24,56,48,124,32,239,192,128,0,17,23,69,18,0, + 0,3,0,0,7,128,0,3,192,0,0,224,0,0,48,0, + 0,0,0,254,31,128,56,6,0,56,6,0,56,6,0,56, + 6,0,56,6,0,56,6,0,56,6,0,56,6,0,56,6, + 0,56,6,0,56,6,0,56,6,0,56,4,0,28,12,0, + 14,24,0,3,224,0,17,23,69,18,0,0,0,56,0,0, + 124,0,0,240,0,1,192,0,3,0,0,0,0,0,254,31, + 128,56,6,0,56,6,0,56,6,0,56,6,0,56,6,0, + 56,6,0,56,6,0,56,6,0,56,6,0,56,6,0,56, + 6,0,56,6,0,56,4,0,28,12,0,14,24,0,3,224, + 0,17,23,69,18,0,0,0,224,0,1,224,0,3,240,0, + 7,24,0,4,12,0,0,0,0,254,31,128,56,6,0,56, + 6,0,56,6,0,56,6,0,56,6,0,56,6,0,56,6, + 0,56,6,0,56,6,0,56,6,0,56,6,0,56,6,0, + 56,4,0,28,12,0,14,24,0,3,224,0,17,22,66,18, + 0,0,3,156,0,7,188,0,7,188,0,3,24,0,0,0, + 0,254,31,128,56,6,0,56,6,0,56,6,0,56,6,0, + 56,6,0,56,6,0,56,6,0,56,6,0,56,6,0,56, + 6,0,56,6,0,56,6,0,56,4,0,28,12,0,14,24, + 0,3,224,0,16,23,46,17,0,0,0,48,0,248,1,224, + 3,128,2,0,0,0,248,31,60,14,28,12,14,24,15,24, + 7,48,7,48,3,224,3,224,1,192,1,192,1,192,1,192, + 1,192,1,192,1,192,7,240,14,17,34,15,0,0,254,0, + 56,0,56,0,63,192,56,112,56,56,56,28,56,28,56,28, + 56,28,56,56,56,112,59,224,56,0,56,0,56,0,254,0, + 15,20,40,17,0,0,1,240,6,60,12,28,24,14,24,14, + 56,14,56,28,56,56,56,96,56,192,56,192,56,224,56,120, + 56,60,56,30,56,14,57,6,57,134,57,132,249,248,12,20, + 40,13,1,0,56,0,60,0,28,0,14,0,6,0,3,0, + 0,0,0,0,31,128,113,192,241,192,129,192,3,192,63,192, + 113,192,225,192,225,192,227,240,253,224,121,128,12,20,40,13, + 1,0,3,192,3,192,7,128,7,0,14,0,12,0,0,0, + 0,0,31,128,113,192,241,192,129,192,3,192,63,192,113,192, + 225,192,225,192,227,240,253,224,121,128,12,20,40,13,1,0, + 6,0,15,0,31,0,59,128,48,192,96,64,0,0,0,0, + 31,128,113,192,241,192,129,192,3,192,63,192,113,192,225,192, + 225,192,227,240,253,224,121,128,12,19,38,13,1,0,0,32, + 28,96,63,192,71,192,67,128,0,0,0,0,31,128,113,192, + 241,192,129,192,3,192,63,192,113,192,225,192,225,192,227,240, + 253,224,121,128,12,18,36,13,1,0,57,192,61,224,57,192, + 57,192,0,0,0,0,31,128,113,192,241,192,129,192,3,192, + 63,192,113,192,225,192,225,192,227,240,253,224,121,128,12,19, + 38,13,1,0,15,0,27,0,25,128,27,0,30,0,0,0, + 0,0,31,128,113,192,241,192,129,192,3,192,63,192,113,192, + 225,192,225,192,227,240,253,224,121,128,18,12,36,20,1,0, + 7,158,0,31,227,0,56,225,128,112,193,128,64,193,128,15, + 255,0,56,192,0,96,192,0,224,224,128,227,241,192,254,127, + 0,124,62,0,11,18,36,12,1,250,15,224,48,192,112,192, + 96,64,224,0,224,0,224,0,224,0,240,64,120,192,63,128, + 31,0,4,0,14,0,15,0,7,0,14,0,24,0,11,20, + 40,13,1,0,60,0,60,0,30,0,14,0,7,0,1,0, + 0,0,0,0,15,0,49,192,112,192,96,224,224,224,255,192, + 224,0,224,0,240,64,120,224,63,192,31,0,11,20,40,13, + 1,0,1,192,3,192,3,128,7,0,6,0,12,0,0,0, + 0,0,15,0,49,192,112,192,96,224,224,224,255,192,224,0, + 224,0,240,64,120,224,63,192,31,0,11,20,40,13,1,0, + 6,0,15,0,31,128,29,128,48,192,32,96,0,0,0,0, + 15,0,49,192,112,192,96,224,224,224,255,192,224,0,224,0, + 240,64,120,224,63,192,31,0,11,18,36,13,1,0,24,192, + 61,224,61,224,57,192,0,0,0,0,15,0,49,192,112,192, + 96,224,224,224,255,192,224,0,224,0,240,64,120,224,63,192, + 31,0,8,20,20,8,0,0,240,240,120,24,12,4,0,0, + 28,124,28,28,28,28,28,28,28,28,28,127,7,20,20,8, + 1,0,14,30,28,56,48,96,0,0,56,248,56,56,56,56, + 56,56,56,56,56,254,9,20,40,8,0,0,24,0,60,0, + 126,0,118,0,195,0,129,128,0,0,0,0,28,0,124,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,127,0,9,18,36,8,0,0,115,128,247,128,247,128, + 231,0,0,0,0,0,28,0,124,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,127,0,12,19, + 38,14,1,0,12,0,126,112,15,224,15,128,61,192,0,224, + 0,224,15,224,49,240,96,240,96,112,224,112,224,112,224,112, + 224,96,224,96,112,192,56,128,31,0,15,19,38,16,1,0, + 0,16,14,48,31,224,51,224,33,192,0,0,0,0,24,240, + 251,248,62,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,254,254,12,20,40,14,1,0,28,0,60,0, + 14,0,6,0,3,0,1,128,0,0,0,0,15,128,49,192, + 112,224,96,112,224,112,224,112,224,112,224,112,224,96,112,96, + 56,192,31,0,12,20,40,14,1,0,1,192,3,224,3,128, + 7,0,6,0,12,0,0,0,0,0,15,128,49,192,112,224, + 96,112,224,112,224,112,224,112,224,112,224,96,112,96,56,192, + 31,0,12,20,40,14,1,0,7,0,15,0,15,128,29,192, + 56,192,32,96,0,0,0,0,15,128,49,192,112,224,96,112, + 224,112,224,112,224,112,224,112,224,96,112,96,56,192,31,0, + 12,19,38,14,1,0,0,48,30,32,63,224,39,192,65,128, + 0,0,0,0,15,128,49,192,112,224,96,112,224,112,224,112, + 224,112,224,112,224,96,112,96,56,192,31,0,12,18,36,14, + 1,0,28,224,61,224,61,224,24,192,0,0,0,0,15,128, + 49,192,112,224,96,112,224,112,224,112,224,112,224,112,224,96, + 112,96,56,192,31,0,10,10,20,11,1,2,12,0,12,0, + 12,0,0,0,255,192,0,0,0,0,12,0,12,0,12,0, + 12,14,28,14,1,255,0,16,15,176,49,224,112,224,97,240, + 227,112,230,112,230,112,236,112,248,96,112,224,120,192,95,0, + 128,0,15,20,40,15,0,0,14,0,15,0,7,0,3,128, + 1,128,0,192,0,0,0,0,56,56,248,248,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,250,63,190,30,56, + 15,20,40,15,0,0,0,224,0,240,1,192,1,128,3,0, + 2,0,0,0,0,0,56,56,248,248,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,250,63,190,30,56,15,20, + 40,15,0,0,3,128,3,192,7,192,14,224,28,112,24,16, + 0,0,0,0,56,56,248,248,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,250,63,190,30,56,15,18,36,15, + 0,0,14,112,14,112,30,240,14,112,0,0,0,0,56,56, + 248,248,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,250,63,190,30,56,15,26,52,14,255,250,0,112,0,240, + 0,224,1,192,1,128,3,0,0,0,0,0,126,62,60,24, + 28,24,30,16,14,48,15,48,7,96,7,96,3,192,3,192, + 3,192,1,128,1,128,3,0,3,0,126,0,124,0,248,0, + 13,26,52,15,1,250,24,0,248,0,56,0,56,0,56,0, + 56,0,56,0,56,0,57,224,63,240,60,112,56,56,56,24, + 56,24,56,24,56,24,56,16,60,48,63,224,59,192,56,0, + 56,0,56,0,56,0,56,0,254,0,15,24,48,14,255,250, + 7,56,15,120,15,120,14,112,0,0,0,0,126,62,60,24, + 28,24,30,16,14,48,15,48,7,96,7,96,3,192,3,192, + 3,192,1,128,1,128,3,0,3,0,126,0,124,0,248,0 + }; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--27-270-72-72-P-135-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 16 + Calculated Max Values w=12 h=25 x= 2 y= 9 dx=14 dy= 0 ascent=21 len=50 + Font Bounding box w=42 h=39 x=-14 y=-10 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =16 descent= 0 + X Font ascent =16 descent= 0 + Max Font ascent =21 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb17n[542] U8G_SECTION(".progmem.u8g_font_gdb17n") = { + 0,42,39,242,246,16,0,0,0,0,42,57,0,21,251,16, + 0,10,12,24,12,1,9,12,0,12,0,204,128,237,192,255, + 192,63,0,63,0,255,192,237,192,76,128,12,0,12,0,10, + 10,20,11,1,2,12,0,12,0,12,0,12,0,255,192,12, + 0,12,0,12,0,12,0,12,0,5,8,8,7,1,251,48, + 248,120,56,48,48,96,192,8,1,1,10,1,6,255,4,4, + 4,7,2,255,112,240,240,224,12,25,50,13,0,252,0,48, + 0,112,0,112,0,96,0,224,0,192,1,192,1,192,1,128, + 3,128,3,128,3,0,7,0,6,0,14,0,14,0,12,0, + 28,0,24,0,56,0,56,0,48,0,112,0,96,0,224,0, + 12,16,32,14,1,0,15,0,49,192,48,224,96,224,96,96, + 224,112,224,112,224,112,224,112,224,112,224,112,96,96,112,96, + 112,192,56,192,15,0,10,16,32,14,2,0,6,0,62,0, + 254,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,31,0,255,192,11,16,32,14, + 1,0,15,128,57,192,112,224,112,224,128,224,0,192,1,192, + 3,128,3,0,7,0,14,0,28,32,56,32,48,32,127,224, + 255,224,11,16,32,14,1,0,31,0,115,128,113,192,225,192, + 1,192,3,128,7,128,15,192,3,192,1,224,0,224,0,224, + 0,224,128,192,193,192,63,0,11,16,32,14,2,0,0,128, + 3,128,7,128,7,128,13,128,13,128,25,128,49,128,49,128, + 97,128,255,224,1,128,1,128,1,128,3,192,15,224,11,16, + 32,14,1,0,63,224,63,192,32,0,32,0,96,0,96,0, + 127,0,99,192,1,192,0,224,0,224,0,224,0,224,1,192, + 193,192,63,0,12,16,32,14,1,0,1,192,7,0,28,0, + 56,0,112,0,96,0,239,128,240,224,224,224,224,112,224,112, + 224,112,112,112,112,96,56,192,15,128,12,16,32,14,1,0, + 127,240,127,224,192,96,128,192,0,192,1,192,1,128,1,128, + 3,0,3,0,7,0,6,0,14,0,28,0,28,0,56,0, + 11,16,32,13,1,0,15,128,57,192,112,224,112,224,120,224, + 125,192,63,128,31,128,63,192,115,224,225,224,224,224,224,224, + 224,192,113,128,31,0,12,17,34,14,1,255,15,128,49,192, + 96,224,224,224,224,112,224,112,224,112,240,112,112,240,31,112, + 0,96,0,224,0,224,1,192,3,128,30,0,56,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--27-270-72-72-P-135-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 17, '1' Height: 16 + Calculated Max Values w=23 h=27 x= 3 y=14 dx=23 dy= 0 ascent=22 len=69 + Font Bounding box w=42 h=39 x=-14 y=-10 + Calculated Min Values x=-4 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-6 + X Font ascent =21 descent=-6 + Max Font ascent =22 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb17r[3540] U8G_SECTION(".progmem.u8g_font_gdb17r") = { + 0,42,39,242,246,17,4,81,9,172,32,127,250,22,250,21, + 250,0,0,0,7,0,0,4,21,21,8,2,255,48,240,240, + 240,240,112,112,96,96,96,96,96,96,96,64,0,0,112,240, + 240,224,9,9,18,13,2,11,113,128,231,128,231,128,231,128, + 227,0,227,0,99,0,99,0,99,0,13,15,30,14,1,2, + 2,32,6,96,6,96,6,96,12,96,63,248,76,192,24,128, + 25,128,255,224,51,0,51,0,51,0,35,0,102,0,11,20, + 40,13,1,254,6,0,6,0,31,128,127,224,230,224,198,96, + 198,0,246,0,126,0,63,128,7,192,6,224,6,96,198,96, + 198,96,246,192,255,192,31,0,6,0,6,0,18,17,51,20, + 1,0,0,1,0,60,6,0,102,14,0,195,12,0,195,24, + 0,195,48,0,195,112,0,195,96,0,102,192,0,61,143,0, + 3,144,128,3,48,192,6,48,192,12,48,192,24,48,192,56, + 25,128,48,15,0,17,19,57,18,1,0,7,128,0,25,224, + 0,16,224,0,48,224,0,48,224,0,49,192,0,63,128,0, + 63,0,0,30,0,0,62,63,128,127,29,0,127,140,0,239, + 140,0,231,204,0,227,248,0,225,248,0,96,252,0,112,255, + 0,31,14,128,4,9,9,7,2,11,112,224,224,224,224,224, + 96,96,96,7,25,25,9,2,252,4,14,28,56,48,112,112, + 112,224,224,224,224,224,224,224,224,224,96,112,112,48,56,28, + 12,6,7,25,25,9,0,252,64,224,112,56,24,28,28,28, + 14,14,14,14,14,14,14,14,14,28,28,28,56,56,112,96, + 192,10,12,24,12,1,9,12,0,12,0,204,128,237,192,255, + 192,63,0,63,0,255,192,237,192,76,128,12,0,12,0,10, + 10,20,11,1,2,12,0,12,0,12,0,12,0,255,192,12, + 0,12,0,12,0,12,0,12,0,5,8,8,7,1,251,48, + 248,120,56,48,48,96,192,8,1,1,10,1,6,255,4,4, + 4,7,2,255,112,240,240,224,12,25,50,13,0,252,0,48, + 0,112,0,112,0,96,0,224,0,192,1,192,1,192,1,128, + 3,128,3,128,3,0,7,0,6,0,14,0,14,0,12,0, + 28,0,24,0,56,0,56,0,48,0,112,0,96,0,224,0, + 12,16,32,14,1,0,15,0,49,192,48,224,96,224,96,96, + 224,112,224,112,224,112,224,112,224,112,224,112,96,96,112,96, + 112,192,56,192,15,0,10,16,32,14,2,0,6,0,62,0, + 254,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,31,0,255,192,11,16,32,14, + 1,0,15,128,57,192,112,224,112,224,128,224,0,192,1,192, + 3,128,3,0,7,0,14,0,28,32,56,32,48,32,127,224, + 255,224,11,16,32,14,1,0,31,0,115,128,113,192,225,192, + 1,192,3,128,7,128,15,192,3,192,1,224,0,224,0,224, + 0,224,128,192,193,192,63,0,11,16,32,14,2,0,0,128, + 3,128,7,128,7,128,13,128,13,128,25,128,49,128,49,128, + 97,128,255,224,1,128,1,128,1,128,3,192,15,224,11,16, + 32,14,1,0,63,224,63,192,32,0,32,0,96,0,96,0, + 127,0,99,192,1,192,0,224,0,224,0,224,0,224,1,192, + 193,192,63,0,12,16,32,14,1,0,1,192,7,0,28,0, + 56,0,112,0,96,0,239,128,240,224,224,224,224,112,224,112, + 224,112,112,112,112,96,56,192,15,128,12,16,32,14,1,0, + 127,240,127,224,192,96,128,192,0,192,1,192,1,128,1,128, + 3,0,3,0,7,0,6,0,14,0,28,0,28,0,56,0, + 11,16,32,13,1,0,15,128,57,192,112,224,112,224,120,224, + 125,192,63,128,31,128,63,192,115,224,225,224,224,224,224,224, + 224,192,113,128,31,0,12,17,34,14,1,255,15,128,49,192, + 96,224,224,224,224,112,224,112,224,112,240,112,112,240,31,112, + 0,96,0,224,0,224,1,192,3,128,30,0,56,0,4,13, + 13,7,2,255,112,240,240,224,0,0,0,0,0,112,240,240, + 224,5,17,17,7,1,251,56,120,120,48,0,0,0,0,0, + 48,248,120,56,48,48,96,192,11,9,18,12,1,3,0,96, + 3,192,31,128,252,0,240,0,248,0,63,0,7,192,0,224, + 11,5,10,12,1,5,255,224,0,0,0,0,0,0,255,224, + 11,9,18,12,1,3,192,0,248,0,63,0,7,192,1,224, + 15,192,126,0,240,0,192,0,9,20,40,12,1,255,63,0, + 119,128,227,128,227,128,195,128,3,128,3,0,7,0,6,0, + 14,0,12,0,12,0,12,0,12,0,0,0,0,0,28,0, + 60,0,60,0,56,0,20,23,69,23,2,251,0,252,0,3, + 255,0,14,7,128,24,1,192,48,0,224,32,0,96,96,242, + 112,97,142,48,195,14,48,195,14,48,199,14,48,199,14,48, + 199,14,48,199,14,96,199,158,96,227,255,192,99,239,128,113, + 199,0,120,0,0,60,0,64,31,3,192,15,255,0,3,252, + 0,17,17,51,17,0,0,0,192,0,1,192,0,3,192,0, + 3,224,0,2,224,0,6,240,0,6,112,0,6,112,0,12, + 120,0,12,56,0,15,248,0,24,28,0,24,28,0,16,28, + 0,48,14,0,48,14,0,252,63,128,13,17,34,16,1,0, + 127,192,248,224,56,112,56,112,56,112,56,112,56,224,63,192, + 56,240,56,112,56,56,56,56,56,56,56,56,56,48,56,112, + 255,192,13,17,34,15,1,0,7,240,24,120,48,48,112,0, + 96,0,96,0,224,0,224,0,224,0,224,0,224,0,240,0, + 112,0,120,8,60,56,31,224,15,128,16,17,34,17,0,0, + 127,224,248,120,56,60,56,30,56,30,56,15,56,15,56,15, + 56,15,56,15,56,15,56,15,56,30,56,30,56,60,56,120, + 255,224,13,17,34,14,1,0,255,240,120,48,120,48,120,32, + 120,32,120,0,120,0,120,0,127,192,120,128,120,0,120,0, + 120,0,120,16,120,24,120,48,255,240,12,17,34,14,1,0, + 255,240,120,48,120,48,120,48,120,32,120,0,120,0,120,0, + 127,192,120,128,120,0,120,0,120,0,120,0,120,0,120,0, + 254,0,14,17,34,16,1,0,3,240,12,120,48,48,48,0, + 112,0,96,0,224,0,224,0,224,0,224,252,224,56,224,56, + 112,56,112,56,60,56,31,240,7,192,17,17,51,18,0,0, + 254,63,128,60,30,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,63,254,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 254,63,128,7,17,17,9,1,0,254,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,254,12,22,44,9,252,251, + 7,240,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,128,1,128,51,0,126,0,252,0,16,17,34,17, + 1,0,254,126,56,56,56,48,56,112,56,224,57,192,59,128, + 63,0,63,0,59,128,57,192,57,224,56,240,56,120,56,60, + 56,31,254,30,13,17,34,14,1,0,254,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,8,56,24,56,24,255,240,21,17,51,23, + 1,0,248,1,248,56,1,224,60,1,224,60,3,224,62,3, + 224,62,6,224,63,6,224,55,12,224,39,140,224,35,156,224, + 35,152,224,33,216,224,33,240,224,97,240,224,96,224,224,112, + 224,224,248,67,248,18,17,51,18,0,0,248,15,192,124,3, + 0,60,3,0,62,3,0,63,3,0,55,131,0,51,195,0, + 51,195,0,49,227,0,48,243,0,48,123,0,48,123,0,48, + 63,0,48,31,0,48,15,0,48,7,0,252,3,0,15,17, + 34,17,1,0,7,192,24,112,48,56,48,28,96,28,96,14, + 224,14,224,14,224,14,224,14,224,14,224,12,112,28,112,24, + 56,24,28,32,7,192,14,17,34,15,0,0,127,224,248,120, + 56,56,56,28,56,28,56,28,56,28,56,56,60,112,59,224, + 56,0,56,0,56,0,56,0,56,0,56,0,254,0,18,22, + 66,17,1,251,7,192,0,24,112,0,48,56,0,48,28,0, + 96,28,0,96,14,0,224,14,0,224,14,0,224,14,0,224, + 14,0,224,14,0,224,14,0,112,28,0,112,28,0,56,24, + 0,28,48,0,7,192,0,0,112,0,0,60,64,0,31,192, + 0,15,128,0,3,0,16,17,34,16,0,0,63,192,248,112, + 56,56,56,56,56,56,56,56,56,112,63,240,63,192,57,192, + 56,224,56,224,56,112,56,120,56,60,56,63,254,30,12,17, + 34,14,1,0,15,240,48,240,64,32,192,0,224,0,248,0, + 126,0,63,128,31,192,7,224,0,240,0,112,0,48,192,48, + 192,32,240,64,255,128,15,17,34,16,0,0,255,254,195,134, + 195,134,131,134,131,132,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,7,192,15,224,17,17, + 51,18,0,0,254,31,128,56,6,0,56,6,0,56,6,0, + 56,6,0,56,6,0,56,6,0,56,6,0,56,6,0,56, + 6,0,56,6,0,56,6,0,56,6,0,56,4,0,28,12, + 0,14,24,0,3,224,0,18,17,51,18,0,0,254,15,192, + 56,7,0,60,6,0,28,6,0,28,6,0,30,12,0,14, + 12,0,15,24,0,7,24,0,7,24,0,7,176,0,3,176, + 0,3,176,0,1,224,0,1,224,0,1,224,0,0,128,0, + 23,17,51,23,0,0,254,24,126,56,24,24,56,56,24,56, + 60,16,28,60,48,28,110,48,28,110,48,28,110,48,14,199, + 96,14,199,96,14,135,96,15,131,224,15,131,224,7,1,192, + 7,1,192,7,1,192,6,0,128,17,17,51,17,0,0,255, + 63,0,60,12,0,28,24,0,30,24,0,15,48,0,7,112, + 0,7,224,0,3,192,0,1,192,0,3,224,0,3,240,0, + 6,112,0,12,120,0,12,60,0,24,28,0,56,30,0,252, + 63,128,16,17,34,17,0,0,248,31,60,14,28,12,14,24, + 15,24,7,48,7,48,3,224,3,224,1,192,1,192,1,192, + 1,192,1,192,1,192,1,192,7,240,13,17,34,15,1,0, + 127,248,96,240,64,240,193,224,1,192,3,192,7,128,7,128, + 15,0,15,0,30,0,60,0,60,0,120,24,120,24,240,24, + 255,248,6,25,25,9,3,252,252,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 252,11,25,50,13,1,252,192,0,192,0,224,0,96,0,112, + 0,112,0,48,0,56,0,24,0,24,0,28,0,12,0,14, + 0,6,0,6,0,7,0,3,0,3,0,3,128,1,128,1, + 192,0,192,0,192,0,224,0,96,6,25,25,8,0,252,252, + 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12, + 12,12,12,12,12,12,12,252,11,13,26,13,1,7,6,0, + 14,0,14,0,15,0,27,0,19,0,17,128,49,128,33,192, + 96,192,96,192,64,96,192,64,11,1,2,13,1,253,255,224, + 6,6,6,9,0,14,224,240,112,56,24,12,12,12,24,13, + 1,0,31,128,113,192,241,192,129,192,3,192,63,192,113,192, + 225,192,225,192,227,240,253,224,121,128,14,20,40,15,0,0, + 24,0,248,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,240,59,248,62,56,56,28,56,12,56,12,56,12,56,8, + 56,8,60,16,63,224,7,128,11,12,24,12,1,0,15,224, + 48,192,112,192,96,64,224,0,224,0,224,0,224,0,240,64, + 120,224,63,192,31,0,14,20,40,15,1,0,0,48,1,240, + 0,112,0,112,0,112,0,112,0,112,0,112,15,240,48,240, + 96,112,96,112,224,112,224,112,224,112,240,112,248,240,127,244, + 63,124,30,48,11,12,24,13,1,0,15,0,49,192,112,192, + 96,224,224,224,255,192,224,0,224,0,240,64,120,224,63,192, + 31,0,11,19,38,9,1,0,3,224,12,192,24,0,24,0, + 56,0,56,0,56,0,255,128,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,255,0,14,18, + 36,15,0,250,15,140,16,252,32,112,96,48,96,48,112,48, + 56,96,31,128,28,0,124,0,127,224,63,248,127,252,240,60, + 224,28,224,24,112,48,31,192,15,20,40,16,1,0,24,0, + 248,0,56,0,56,0,56,0,56,0,56,0,56,0,56,240, + 59,248,62,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,254,254,7,18,18,8,1,0,56,120,112,0, + 0,0,56,248,56,56,56,56,56,56,56,56,56,254,10,24, + 48,8,252,250,1,192,3,192,3,128,0,0,0,0,0,0, + 3,128,15,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,0,102,0, + 252,0,120,0,14,20,40,15,1,0,24,0,248,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,252,56,112,56,224, + 57,128,59,0,63,0,59,128,57,192,56,224,56,240,56,120, + 252,60,7,20,20,8,1,0,24,248,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,254,23,12,36,23, + 0,0,25,241,240,251,255,248,62,62,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,254,254,254,15,12,24,16,1,0,24,240,251,248, + 62,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,254,254,12,12,24,14,1,0,15,128,49,192,112,224, + 96,112,224,112,224,112,224,112,224,112,224,96,112,96,56,192, + 31,0,13,18,36,15,1,250,25,224,251,240,60,112,56,56, + 56,24,56,24,56,24,56,24,56,16,60,48,63,224,59,192, + 56,0,56,0,56,0,56,0,56,0,254,0,14,18,36,15, + 1,250,15,16,48,240,96,112,96,112,224,112,224,112,224,112, + 240,112,248,240,127,240,127,112,28,112,0,112,0,112,0,112, + 0,112,0,112,1,252,11,12,24,12,1,0,49,224,247,224, + 124,192,120,64,120,64,120,0,120,0,120,0,120,0,120,0, + 120,0,254,0,9,12,24,11,1,0,62,0,71,0,194,0, + 224,0,248,0,126,0,63,0,15,128,131,128,193,128,225,0, + 254,0,10,17,34,10,0,0,8,0,24,0,56,0,56,0, + 56,0,255,192,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,128,63,192,30,0,15,12,24,15,0,0, + 56,56,248,248,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,250,63,190,30,56,14,12,24,14,0,0,252,124, + 120,48,56,48,60,32,28,96,30,96,14,192,14,192,7,128, + 7,128,7,128,3,0,19,12,36,19,0,0,252,33,224,120, + 96,192,56,112,192,56,241,128,28,249,128,28,185,128,29,159, + 0,15,31,0,15,31,0,15,14,0,6,14,0,4,4,0, + 14,12,24,14,0,0,254,252,60,112,28,96,30,192,15,128, + 7,128,7,128,15,192,25,224,24,240,48,120,249,252,15,18, + 36,14,255,250,126,62,60,24,28,24,30,16,14,48,15,48, + 7,96,7,96,3,192,3,192,3,192,1,128,1,128,3,0, + 3,0,126,0,124,0,248,0,11,12,24,13,1,0,127,224, + 67,192,67,192,135,128,15,0,15,0,30,0,60,0,56,32, + 120,96,240,96,255,224,7,25,25,9,1,252,2,14,28,56, + 56,56,56,28,28,28,28,56,240,248,28,28,28,28,56,56, + 56,56,28,14,6,2,27,27,6,2,251,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,7,25,25,9,1,252,192,224,112,56, + 56,56,56,112,112,112,112,62,30,56,112,112,112,112,56,56, + 56,56,112,224,128,12,4,8,13,1,6,56,48,126,32,143, + 192,131,128,255}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--32-320-72-72-P-159-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 20, '1' Height: 19 + Calculated Max Values w=27 h=32 x= 3 y=18 dx=28 dy= 0 ascent=28 len=112 + Font Bounding box w=49 h=47 x=-16 y=-12 + Calculated Min Values x=-5 y=-9 dx= 0 dy= 0 + Pure Font ascent =20 descent=-8 + X Font ascent =25 descent=-8 + Max Font ascent =28 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb20[10077] U8G_SECTION(".progmem.u8g_font_gdb20") = { + 0,49,47,240,244,20,5,86,12,137,32,255,248,28,247,25, + 248,0,0,0,8,0,0,5,24,24,10,2,255,24,120,120, + 120,120,120,120,120,120,112,112,112,112,48,48,48,48,0,0, + 112,248,248,248,112,11,10,20,15,2,13,56,224,243,224,241, + 224,241,192,113,192,113,192,113,192,113,192,112,192,96,192,15, + 18,36,16,1,2,1,140,3,152,3,24,3,24,3,56,63, + 254,63,254,6,112,14,96,12,96,12,96,127,252,255,248,24, + 192,24,192,57,128,49,128,49,128,14,25,50,16,1,253,3, + 0,3,0,3,0,31,240,63,248,115,120,227,56,227,16,243, + 0,255,0,127,0,63,224,15,240,3,248,3,124,3,28,195, + 28,195,28,227,28,251,120,255,240,63,224,3,0,3,0,3, + 0,21,20,60,23,1,0,0,0,96,30,0,192,115,129,192, + 97,131,128,225,195,0,225,198,0,225,206,0,225,220,0,97, + 152,0,115,176,0,30,113,224,0,231,112,1,198,48,1,142, + 56,3,142,56,7,14,56,14,14,56,12,6,48,28,7,48, + 56,3,192,21,23,69,22,1,0,1,240,0,7,120,0,14, + 60,0,14,60,0,30,60,0,30,124,0,30,120,0,31,240, + 0,31,224,0,15,192,0,15,128,0,31,143,248,63,195,160, + 123,225,128,123,241,128,241,249,128,240,251,0,240,127,0,240, + 126,0,248,63,0,120,31,240,63,247,240,15,195,192,5,10, + 10,9,2,13,56,240,240,240,112,112,112,112,112,96,9,30, + 60,11,2,251,1,0,3,128,6,0,14,0,28,0,60,0, + 56,0,120,0,120,0,112,0,112,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,112,0,120,0, + 120,0,56,0,60,0,28,0,30,0,14,0,7,0,1,128, + 9,30,60,11,0,251,64,0,240,0,56,0,60,0,28,0, + 30,0,14,0,15,0,15,0,15,0,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,0,15,0, + 15,0,15,0,14,0,30,0,28,0,56,0,48,0,96,0, + 192,0,12,13,26,14,1,11,3,0,15,0,70,64,102,112, + 246,240,63,192,15,0,63,224,254,240,230,112,70,32,7,0, + 14,0,12,12,24,13,1,3,6,0,6,0,6,0,6,0, + 6,0,127,240,255,224,6,0,6,0,6,0,6,0,6,0, + 6,10,10,9,2,250,56,252,252,60,60,56,56,112,96,192, + 10,2,4,11,1,7,255,192,255,128,5,5,5,9,2,255, + 112,248,248,248,112,14,30,60,15,1,251,0,28,0,56,0, + 56,0,120,0,112,0,112,0,224,0,224,0,224,1,192,1, + 192,3,128,3,128,3,128,7,0,7,0,7,0,14,0,14, + 0,28,0,28,0,28,0,56,0,56,0,120,0,112,0,112, + 0,224,0,224,0,192,0,14,18,36,16,1,0,7,192,24, + 224,56,112,112,120,112,120,240,60,240,60,240,60,240,60,240, + 60,240,60,240,60,240,56,112,56,120,56,56,112,28,96,15, + 128,13,19,38,16,2,0,1,128,15,128,127,128,239,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,63,224,127,248,13,19,38, + 16,1,0,15,224,56,240,120,120,240,120,112,120,0,120,0, + 240,0,240,1,224,1,192,3,128,7,0,14,0,28,8,28, + 8,56,24,127,248,255,248,255,248,13,19,38,16,1,0,31, + 128,121,224,112,240,240,240,64,240,0,240,1,224,7,192,15, + 192,3,240,0,240,0,120,0,120,0,120,0,120,128,240,192, + 240,127,224,31,128,14,19,38,17,1,0,0,48,1,240,1, + 240,3,240,7,240,6,240,12,240,12,240,24,240,56,240,48, + 240,96,240,255,252,255,248,0,240,0,240,0,240,1,248,7, + 252,13,19,38,16,1,0,63,248,63,240,63,224,112,0,112, + 0,96,0,96,0,127,128,127,224,97,240,0,248,0,120,0, + 120,0,120,0,120,0,112,128,240,193,224,127,128,14,20,40, + 16,1,0,0,112,3,240,7,128,15,0,28,0,60,0,120, + 0,120,0,115,224,255,240,252,120,240,124,240,60,240,60,240, + 60,112,60,120,56,56,56,28,112,7,192,13,19,38,16,2, + 0,255,248,255,248,255,240,192,48,128,96,128,96,0,224,0, + 192,1,192,1,128,3,128,3,128,7,0,7,0,14,0,14, + 0,30,0,28,0,56,0,14,19,38,16,1,0,15,192,24, + 240,48,120,112,120,112,120,120,120,126,240,63,192,31,224,15, + 240,63,248,120,252,248,124,240,60,240,60,240,56,112,56,56, + 112,31,192,14,20,40,16,1,255,7,192,24,240,56,120,112, + 120,240,60,240,60,240,60,240,60,248,60,124,124,63,252,31, + 60,0,56,0,120,0,112,0,240,1,224,7,128,63,0,56, + 0,5,16,16,9,2,255,112,248,248,248,112,0,0,0,0, + 0,0,112,248,248,248,112,6,21,21,9,2,250,112,248,248, + 248,112,0,0,0,0,0,0,56,252,252,60,60,56,56,112, + 96,192,13,10,20,15,1,4,0,24,0,240,7,240,63,128, + 252,0,248,0,127,0,15,224,1,248,0,48,13,7,14,15, + 1,5,255,248,255,240,0,0,0,0,0,0,255,248,255,240, + 13,10,20,15,1,4,96,0,252,0,63,128,7,240,0,248, + 1,240,15,224,127,0,248,0,192,0,12,24,48,15,1,255, + 31,192,121,224,240,240,240,240,240,240,192,240,0,240,1,224, + 1,192,3,192,3,128,7,0,7,0,6,0,6,0,6,0, + 0,0,0,0,0,0,14,0,31,0,31,0,31,0,14,0, + 26,28,112,28,1,249,0,31,192,0,0,255,248,0,3,255, + 252,0,7,224,62,0,15,128,15,0,30,0,7,128,60,30, + 35,128,60,49,225,128,120,97,225,192,120,225,224,192,240,225, + 224,192,241,225,224,192,241,225,224,192,241,225,224,192,241,225, + 224,192,241,225,225,128,241,225,225,128,248,243,227,0,120,255, + 254,0,120,125,252,0,124,56,240,0,62,0,0,0,62,0, + 2,0,31,128,6,0,15,224,63,0,7,255,248,0,1,255, + 240,0,0,63,128,0,20,20,60,20,0,0,0,32,0,0, + 240,0,0,240,0,1,248,0,1,248,0,1,248,0,3,188, + 0,3,60,0,3,60,0,7,30,0,6,30,0,14,31,0, + 15,255,0,12,7,0,28,7,128,24,7,128,24,3,128,56, + 3,192,56,3,192,254,15,240,17,20,60,19,1,0,63,224, + 0,252,120,0,60,60,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,60,0,60,120,0,63,248,0,60,30,0,60, + 15,0,60,15,0,60,7,128,60,7,128,60,7,128,60,7, + 128,60,15,0,124,30,0,255,248,0,16,20,40,18,1,0, + 1,254,6,31,28,14,56,4,56,0,112,0,112,0,240,0, + 240,0,240,0,240,0,240,0,240,0,248,0,120,0,124,3, + 63,14,31,252,15,248,3,224,18,20,60,20,1,0,63,240, + 0,252,60,0,60,14,0,60,15,0,60,7,128,60,7,128, + 60,3,192,60,3,192,60,3,192,60,3,192,60,3,192,60, + 3,192,60,3,192,60,3,128,60,7,128,60,7,128,60,15, + 0,60,14,0,124,28,0,255,240,0,15,20,40,17,1,0, + 255,252,124,12,60,12,60,12,60,12,60,0,60,0,60,0, + 60,0,63,240,60,32,60,0,60,0,60,0,60,0,60,0, + 60,2,60,6,124,14,255,254,14,20,40,16,1,0,255,252, + 124,12,60,12,60,12,60,12,60,0,60,0,60,0,60,0, + 63,240,60,32,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,126,0,255,0,18,20,60,19,1,0,1,254,0,6, + 15,0,28,6,0,56,4,0,56,0,0,120,0,0,112,0, + 0,240,0,0,240,0,0,240,0,0,240,127,192,240,127,192, + 240,15,0,240,15,0,120,15,0,120,15,0,60,15,0,30, + 15,0,15,254,0,3,240,0,20,20,60,22,1,0,255,15, + 240,126,7,224,60,3,192,60,3,192,60,3,192,60,3,192, + 60,3,192,60,3,192,60,3,192,63,255,192,60,3,192,60, + 3,192,60,3,192,60,3,192,60,3,192,60,3,192,60,3, + 192,60,3,192,126,7,224,255,15,240,8,20,20,10,1,0, + 255,126,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 60,60,126,255,14,27,54,11,252,249,7,252,1,248,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,224,1,224,49,192,127,128,255,0,60,0, + 19,20,60,20,1,0,255,31,192,126,15,0,60,14,0,60, + 28,0,60,56,0,60,112,0,60,224,0,60,224,0,61,192, + 0,63,128,0,63,192,0,61,224,0,60,240,0,60,120,0, + 60,60,0,60,62,0,60,31,0,60,15,128,126,7,224,255, + 3,128,15,20,40,16,1,0,255,0,126,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,2,60,6,124,14,255,254, + 25,20,80,27,1,0,252,0,31,128,62,0,62,0,62,0, + 62,0,62,0,126,0,63,0,126,0,55,0,254,0,55,128, + 222,0,55,129,222,0,51,193,158,0,51,195,158,0,49,195, + 158,0,49,227,30,0,48,231,30,0,48,246,30,0,48,254, + 30,0,48,124,30,0,48,124,30,0,48,56,30,0,120,56, + 63,0,252,24,127,128,19,20,60,21,1,0,248,7,224,124, + 3,192,60,1,128,62,1,128,63,1,128,63,129,128,55,129, + 128,51,193,128,51,225,128,49,225,128,48,241,128,48,249,128, + 48,125,128,48,61,128,48,31,128,48,31,128,48,15,128,48, + 7,128,120,7,128,252,1,128,18,20,60,20,1,0,3,240, + 0,12,28,0,28,14,0,56,7,0,56,7,128,112,7,128, + 112,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,248,3,128,120,7,128,120,7,0,60,15, + 0,30,30,0,15,248,0,3,224,0,16,20,40,18,1,0, + 63,240,252,60,60,30,60,15,60,15,60,15,60,15,60,15, + 60,14,60,30,62,60,61,240,60,0,60,0,60,0,60,0, + 60,0,60,0,126,0,255,128,21,25,75,20,1,251,3,240, + 0,14,28,0,28,14,0,56,15,0,56,7,128,112,7,128, + 112,3,128,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,128,120,3,128,120,7,128,60,7, + 0,28,14,0,14,28,0,3,248,0,0,60,0,0,15,8, + 0,7,248,0,3,240,0,0,224,18,20,60,19,1,0,63, + 224,0,252,120,0,60,60,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,60,0,60,252,0,63,240,0,63,224,0, + 60,240,0,60,112,0,60,120,0,60,60,0,60,62,0,60, + 30,0,60,15,0,126,15,192,255,7,128,13,20,40,16,2, + 0,15,224,48,224,96,96,224,0,224,0,240,0,252,0,127, + 0,127,192,31,224,15,240,3,248,0,248,0,120,128,120,192, + 120,192,112,224,224,255,192,63,0,18,20,60,19,0,0,255, + 255,192,193,225,192,193,224,192,193,224,192,129,224,128,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,3,240,0,7,248,0,19,20,60,21,1, + 0,255,7,224,126,3,192,60,1,128,60,1,128,60,1,128, + 60,1,128,60,1,128,60,1,128,60,1,128,60,1,128,60, + 1,128,60,1,128,60,1,128,60,1,128,60,1,128,60,3, + 0,30,3,0,15,6,0,7,252,0,3,240,0,21,20,60, + 21,0,0,255,3,248,60,0,224,60,0,192,30,0,192,30, + 1,128,15,1,128,15,3,128,15,3,0,7,131,0,7,135, + 0,3,198,0,3,198,0,3,206,0,1,236,0,1,236,0, + 0,248,0,0,248,0,0,248,0,0,112,0,0,96,0,27, + 20,80,27,0,0,255,6,15,224,60,6,3,192,28,15,3, + 128,28,15,3,0,28,15,3,0,30,31,131,0,30,27,131, + 0,14,27,199,0,14,59,198,0,15,49,198,0,15,49,230, + 0,7,112,238,0,7,96,252,0,7,224,252,0,7,192,124, + 0,3,192,124,0,3,192,60,0,3,128,56,0,3,128,56, + 0,3,0,16,0,20,20,60,20,0,0,127,143,224,62,3, + 128,30,7,0,15,6,0,15,142,0,7,140,0,3,220,0, + 3,248,0,1,240,0,0,240,0,0,248,0,1,248,0,3, + 188,0,3,190,0,7,30,0,6,15,0,14,15,128,28,7, + 128,60,7,192,254,31,240,19,20,60,20,0,0,252,7,224, + 60,3,192,30,3,128,15,3,0,15,7,0,7,134,0,3, + 142,0,3,204,0,1,220,0,1,248,0,0,248,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,1,248,0,3,252,0,15,20,40,17,1,0,127, + 254,96,62,96,124,64,124,64,248,0,240,1,240,1,224,3, + 224,7,192,7,192,15,128,15,0,31,0,62,0,62,2,124, + 2,124,6,248,6,255,254,9,30,60,11,2,251,255,128,255, + 128,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,255,128,255,128,13,30,60,15,1,251,192, + 0,224,0,224,0,112,0,112,0,48,0,56,0,56,0,28, + 0,28,0,28,0,14,0,14,0,6,0,7,0,7,0,3, + 128,3,128,3,128,1,192,1,192,0,192,0,224,0,224,0, + 112,0,112,0,112,0,56,0,56,0,24,9,30,60,11,0, + 251,255,128,255,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,255,128,255,128,12,15,30, + 16,2,9,2,0,6,0,15,0,15,0,27,0,27,128,17, + 128,49,192,49,192,96,192,96,224,96,96,192,112,192,48,128, + 32,14,2,4,15,1,252,255,252,255,248,7,8,8,10,0, + 16,112,240,120,56,60,28,14,6,14,15,30,16,1,0,31, + 192,112,224,240,240,192,240,0,240,3,240,31,240,63,240,120, + 240,240,240,240,240,240,240,251,252,126,248,56,96,16,24,48, + 17,0,0,12,0,252,0,124,0,60,0,60,0,60,0,60, + 0,60,0,60,0,60,120,61,252,63,254,63,30,60,15,60, + 7,60,7,60,7,60,7,60,6,60,14,62,28,63,248,31, + 240,7,192,13,15,30,15,1,0,3,248,12,120,56,48,112, + 16,112,0,240,0,240,0,240,0,240,0,248,0,248,8,124, + 56,63,240,31,224,15,128,16,24,48,18,1,0,0,28,0, + 252,0,60,0,60,0,60,0,60,0,60,0,60,0,60,7, + 252,24,124,56,60,112,60,112,60,240,60,240,60,240,60,240, + 60,248,60,248,60,124,124,127,255,63,190,30,24,13,15,30, + 15,1,0,7,192,24,224,56,112,112,120,112,120,240,120,255, + 240,240,0,240,0,240,0,248,8,124,56,127,240,63,224,15, + 128,13,24,48,11,1,0,1,240,7,248,14,112,28,32,28, + 0,60,0,60,0,60,0,60,0,255,192,60,128,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,127,0,255,128,16,23,46,17,0,248,7,227,28, + 127,56,126,120,60,120,60,120,60,120,60,60,56,60,112,15, + 192,14,0,28,0,31,192,63,252,15,254,31,255,120,127,240, + 15,240,14,240,14,120,28,63,248,15,192,17,24,72,18,1, + 0,12,0,0,252,0,0,124,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,120,0,61, + 252,0,63,254,0,63,30,0,62,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,126,63,0,255,127,128,8,21,21,10,1,0,28, + 62,62,28,0,0,28,252,124,60,60,60,60,60,60,60,60, + 60,60,126,255,12,29,58,9,251,248,0,224,1,240,1,240, + 0,224,0,0,0,0,0,224,7,224,3,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,192,1,192,99,128,255,0, + 254,0,120,0,17,24,72,18,1,0,12,0,0,252,0,0, + 124,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,63,128,60,30,0,60,60,0,60,112, + 0,60,224,0,61,192,0,63,192,0,63,224,0,61,224,0, + 60,240,0,60,120,0,60,60,0,60,62,0,126,31,128,255, + 15,0,8,24,24,10,1,0,12,252,124,60,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,126,255, + 26,15,60,28,1,0,28,120,60,0,252,252,254,0,127,255, + 255,0,63,31,143,0,60,30,15,0,60,30,15,0,60,30, + 15,0,60,30,15,0,60,30,15,0,60,30,15,0,60,30, + 15,0,60,30,15,0,60,30,15,0,126,63,31,128,255,127, + 191,192,17,15,45,18,1,0,12,60,0,252,252,0,127,254, + 0,63,30,0,62,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,126, + 63,0,255,127,128,15,15,30,17,1,0,7,224,24,112,56, + 56,112,60,112,30,240,30,240,30,240,30,240,30,240,30,240, + 28,120,28,56,56,28,48,15,192,16,23,46,18,1,248,12, + 120,252,252,127,254,62,62,60,31,60,15,60,15,60,15,60, + 15,60,15,60,14,62,30,63,252,61,248,60,240,60,0,60, + 0,60,0,60,0,60,0,60,0,127,0,255,128,17,23,69, + 18,1,248,3,194,0,12,54,0,56,30,0,112,30,0,112, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,248,30, + 0,248,30,0,124,126,0,127,254,0,63,222,0,15,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,63,0,0,255,128,13,15,30,14,1,0,24,240, + 249,248,123,248,62,48,60,48,60,48,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,126,0,255,0,11,15,30,13, + 1,0,31,192,97,192,225,128,224,128,248,0,254,0,127,128, + 127,192,31,224,7,224,129,224,192,224,192,192,224,192,255,0, + 11,20,40,12,0,0,4,0,28,0,60,0,60,0,60,0, + 255,224,60,64,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,96,63,224,31,128,14,0,17,15, + 45,18,0,0,28,14,0,252,126,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,126,0,63,255,128,31,223,0,15,12, + 0,16,15,30,16,0,0,254,31,124,14,60,12,60,12,30, + 28,30,24,15,24,15,48,7,48,7,240,7,224,3,224,3, + 192,1,192,1,128,23,15,45,23,0,0,254,24,62,124,24, + 28,60,28,24,60,60,24,28,62,48,30,126,48,30,111,48, + 14,111,112,15,199,96,15,199,224,7,195,224,7,131,192,7, + 131,192,3,1,192,2,1,128,16,15,30,17,0,0,255,63, + 62,28,30,24,15,48,15,240,7,224,3,192,3,224,3,224, + 6,240,14,248,28,120,24,60,120,62,252,127,17,23,69,16, + 255,248,127,15,128,62,7,0,30,6,0,30,6,0,15,14, + 0,15,12,0,7,140,0,7,152,0,7,152,0,3,248,0, + 3,240,0,1,240,0,1,240,0,1,224,0,0,224,0,0, + 192,0,0,192,0,1,192,0,1,128,0,39,128,0,127,0, + 0,254,0,0,120,0,0,13,15,30,15,1,0,127,248,96, + 248,65,240,65,224,3,224,7,192,7,128,15,128,15,0,31, + 0,62,16,60,24,124,24,248,24,255,248,9,30,60,12,2, + 251,1,0,7,128,14,0,28,0,60,0,60,0,60,0,60, + 0,62,0,30,0,30,0,30,0,30,0,60,0,120,0,252, + 0,60,0,30,0,30,0,30,0,30,0,62,0,60,0,60, + 0,60,0,60,0,28,0,30,0,7,0,1,128,2,32,32, + 7,3,250,64,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,128,9,30,60,12,1,251,64,0,240,0,60,0,28, + 0,30,0,30,0,30,0,30,0,62,0,60,0,60,0,60, + 0,60,0,30,0,31,128,15,0,30,0,60,0,60,0,60, + 0,60,0,62,0,30,0,30,0,30,0,30,0,28,0,56, + 0,112,0,192,0,14,6,12,16,1,7,28,8,62,12,127, + 136,71,240,131,240,128,224,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,8,0,0,5,24, + 24,10,2,247,112,248,248,248,112,0,0,48,48,48,48,112, + 112,112,112,120,120,120,120,120,120,120,120,96,13,20,40,16, + 2,255,3,0,3,0,3,0,15,248,31,248,59,56,115,16, + 227,0,227,0,227,0,227,0,227,0,227,0,115,24,123,48, + 63,224,31,192,3,0,3,0,3,0,14,19,38,16,1,0, + 1,252,6,60,14,28,28,12,28,8,60,0,60,0,60,0, + 60,0,255,224,60,0,60,0,60,0,60,4,56,4,56,12, + 127,252,255,252,128,48,12,13,26,16,2,3,192,48,239,112, + 112,224,48,192,96,96,96,96,96,96,96,96,112,224,57,192, + 111,96,192,48,128,16,18,19,57,16,255,0,248,31,192,252, + 15,128,62,6,0,30,14,0,31,12,0,15,156,0,7,152, + 0,7,248,0,3,240,0,3,240,0,3,240,0,1,224,0, + 63,255,0,1,224,0,1,224,0,1,224,0,1,224,0,3, + 240,0,7,248,0,2,32,32,7,3,250,64,192,192,192,192, + 192,192,192,192,192,192,192,192,192,128,0,0,64,192,192,192, + 192,192,192,192,192,192,192,192,192,192,128,12,22,44,16,2, + 0,15,192,49,224,112,224,112,64,124,0,126,0,63,128,127, + 192,99,224,225,240,224,240,240,112,252,112,127,112,63,224,31, + 192,7,224,65,224,64,224,224,224,240,192,127,0,11,5,10, + 13,1,17,112,224,241,224,241,224,241,224,225,192,21,21,63, + 23,1,0,1,252,0,7,7,0,12,1,128,24,0,192,48, + 126,96,96,199,48,97,134,48,195,2,24,199,0,24,199,0, + 24,199,0,24,199,0,24,199,0,24,199,128,24,99,199,48, + 97,252,48,48,248,96,16,0,64,8,1,128,6,3,0,1, + 252,0,7,11,11,9,1,9,60,204,140,60,108,204,206,252, + 0,0,254,14,15,30,16,1,0,2,8,6,28,12,56,28, + 112,56,112,120,224,241,224,243,192,241,224,120,224,56,112,28, + 112,12,56,6,24,2,12,13,7,14,16,2,3,255,248,255, + 248,0,24,0,24,0,24,0,24,0,16,10,2,4,11,1, + 7,255,192,255,128,12,11,22,11,0,11,31,128,48,192,126, + 96,219,48,219,48,222,48,219,48,217,48,100,224,48,192,31, + 128,14,3,6,16,1,18,127,248,127,252,255,248,7,8,8, + 11,2,12,60,126,70,198,198,204,252,120,12,15,30,13,1, + 2,6,0,6,0,6,0,6,0,6,0,127,240,255,224,6, + 0,6,0,6,0,6,0,4,0,0,0,255,240,255,224,8, + 11,11,11,2,10,62,115,227,3,6,6,12,24,49,97,255, + 9,11,22,11,1,10,62,0,231,0,231,0,7,0,28,0, + 63,0,7,128,3,128,3,128,199,0,126,0,8,8,8,10, + 3,16,28,30,63,60,120,112,224,192,18,23,69,19,1,248, + 28,6,0,252,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,62,62,0,63,255,128,63,223,192,51,142,0,48,0,0, + 48,0,0,56,0,0,56,0,0,56,0,0,60,0,0,62, + 0,0,48,0,0,17,24,72,19,1,252,15,255,128,60,127, + 0,120,102,0,112,102,0,240,102,0,240,102,0,240,102,0, + 240,102,0,120,102,0,120,102,0,60,102,0,15,230,0,0, + 102,0,0,102,0,0,102,0,0,102,0,0,102,0,0,102, + 0,0,102,0,0,102,0,0,102,0,0,102,0,0,255,0, + 1,255,128,5,5,5,7,1,8,112,248,248,248,112,7,7, + 7,7,0,249,24,48,60,62,30,60,240,8,11,11,11,2, + 10,8,248,24,24,24,24,24,24,24,24,255,7,11,11,9, + 1,9,56,76,198,198,198,198,198,108,56,0,254,13,15,30, + 16,2,0,129,0,195,128,97,128,112,192,56,224,60,112,30, + 120,30,120,30,120,60,112,56,224,112,192,97,192,193,128,131, + 0,17,19,57,20,2,0,48,3,128,240,3,0,48,6,0, + 48,12,0,48,28,0,48,24,0,48,48,0,48,96,0,120, + 224,0,132,193,0,1,135,0,3,15,0,7,11,0,6,19, + 0,12,51,0,24,63,128,56,67,0,48,3,0,224,15,128, + 17,19,57,20,2,0,48,1,128,240,3,0,48,7,0,48, + 6,0,48,12,0,48,24,0,48,56,0,48,48,0,120,96, + 0,132,192,0,1,207,0,1,153,128,3,49,128,7,1,0, + 14,3,0,12,6,0,24,12,0,56,24,128,112,63,128,18, + 19,57,20,1,0,60,1,192,102,1,128,70,3,0,12,6, + 0,28,14,0,6,12,0,6,24,0,134,48,0,124,112,0, + 0,96,128,0,195,128,1,135,128,3,133,128,3,9,128,6, + 25,128,12,31,192,28,33,128,24,1,128,112,7,192,13,23, + 46,15,1,248,7,0,15,128,15,128,15,128,7,0,0,0, + 0,0,3,0,3,0,3,0,7,0,6,0,14,0,28,0, + 60,0,120,0,112,0,240,24,240,120,240,120,240,120,120,240, + 63,192,20,28,84,20,0,0,3,0,0,7,128,0,7,192, + 0,15,224,0,1,224,0,0,112,0,0,24,0,0,0,0, + 0,32,0,0,240,0,0,240,0,1,248,0,1,248,0,1, + 248,0,3,188,0,3,60,0,3,60,0,7,30,0,6,30, + 0,14,31,0,15,255,0,12,7,0,28,7,128,24,7,128, + 24,3,128,56,3,192,56,3,192,254,15,240,20,28,84,20, + 0,0,0,8,0,0,30,0,0,62,0,0,124,0,0,240, + 0,1,224,0,1,128,0,0,0,0,0,32,0,0,240,0, + 0,240,0,1,248,0,1,248,0,1,248,0,3,188,0,3, + 60,0,3,60,0,7,30,0,6,30,0,14,31,0,15,255, + 0,12,7,0,28,7,128,24,7,128,24,3,128,56,3,192, + 56,3,192,254,15,240,20,27,81,20,0,0,0,224,0,0, + 240,0,1,248,0,3,252,0,7,14,0,4,6,0,0,0, + 0,0,32,0,0,240,0,0,240,0,1,248,0,1,248,0, + 1,248,0,3,188,0,3,60,0,3,60,0,7,30,0,6, + 30,0,14,31,0,15,255,0,12,7,0,28,7,128,24,7, + 128,24,3,128,56,3,192,56,3,192,254,15,240,20,26,78, + 20,0,0,3,195,0,7,254,0,7,254,0,12,124,0,8, + 0,0,0,0,0,0,32,0,0,240,0,0,240,0,1,248, + 0,1,248,0,1,248,0,3,188,0,3,60,0,3,60,0, + 7,30,0,6,30,0,14,31,0,15,255,0,12,7,0,28, + 7,128,24,7,128,24,3,128,56,3,192,56,3,192,254,15, + 240,20,26,78,20,0,0,6,12,0,15,30,0,15,30,0, + 15,30,0,14,28,0,0,0,0,0,32,0,0,240,0,0, + 240,0,1,248,0,1,248,0,1,248,0,3,188,0,3,60, + 0,3,60,0,7,30,0,6,30,0,14,31,0,15,255,0, + 12,7,0,28,7,128,24,7,128,24,3,128,56,3,192,56, + 3,192,254,15,240,20,27,81,20,0,0,0,112,0,1,152, + 0,1,152,0,1,144,0,0,224,0,0,0,0,0,0,0, + 0,32,0,0,240,0,0,240,0,1,248,0,1,248,0,1, + 248,0,3,188,0,3,60,0,3,60,0,7,30,0,6,30, + 0,14,31,0,15,255,0,12,7,0,28,7,128,24,7,128, + 24,3,128,56,3,192,56,3,192,254,15,240,25,20,80,26, + 0,0,3,255,255,0,0,255,3,0,0,255,3,0,0,239, + 3,0,0,239,3,0,1,207,0,0,1,207,0,0,3,143, + 0,0,3,143,0,0,3,255,254,0,7,15,4,0,6,15, + 0,0,14,15,0,0,14,15,0,0,12,15,0,0,28,15, + 0,0,24,15,0,128,24,15,1,128,56,31,1,128,254,63, + 255,128,16,27,54,18,1,249,1,254,6,31,28,14,56,4, + 56,0,112,0,112,0,240,0,240,0,240,0,240,0,240,0, + 240,0,248,0,120,0,124,1,126,7,63,254,31,252,15,240, + 0,192,1,192,1,240,0,240,0,240,1,224,3,128,15,28, + 56,17,1,0,8,0,28,0,62,0,31,0,7,128,1,192, + 0,64,0,0,255,252,124,12,60,12,60,12,60,12,60,0, + 60,0,60,0,60,0,63,240,60,32,60,0,60,0,60,0, + 60,0,60,0,60,2,60,6,124,14,255,254,15,28,56,17, + 1,0,0,96,0,240,1,248,1,240,3,192,7,0,12,0, + 0,0,255,252,124,12,60,12,60,12,60,12,60,0,60,0, + 60,0,60,0,63,240,60,32,60,0,60,0,60,0,60,0, + 60,0,60,2,60,6,124,14,255,254,15,27,54,17,1,0, + 3,128,7,192,15,192,31,224,28,112,48,24,0,0,255,252, + 124,12,60,12,60,12,60,12,60,0,60,0,60,0,60,0, + 63,240,60,32,60,0,60,0,60,0,60,0,60,0,60,2, + 60,6,124,14,255,254,15,26,52,17,1,0,56,112,56,112, + 120,240,120,240,48,96,0,0,255,252,124,12,60,12,60,12, + 60,12,60,0,60,0,60,0,60,0,63,240,60,32,60,0, + 60,0,60,0,60,0,60,0,60,2,60,6,124,14,255,254, + 9,28,56,10,0,0,32,0,240,0,248,0,124,0,30,0, + 15,0,3,0,0,0,127,128,63,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,63,0,127,128,10,28, + 56,10,1,0,2,0,7,128,15,192,31,0,62,0,120,0, + 96,0,0,0,255,0,126,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,126,0,255,0,10,27,54,10, + 0,0,12,0,30,0,63,0,127,128,225,192,192,64,0,0, + 127,128,63,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,63,0,127,128,11,26,52,10,255,0,112,224, + 241,224,241,224,241,224,96,192,0,0,63,192,31,128,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,31,128, + 63,192,18,20,60,20,1,0,63,240,0,252,60,0,60,14, + 0,60,15,0,60,7,128,60,7,128,60,3,192,60,3,192, + 60,3,192,255,195,192,60,3,192,60,3,192,60,3,192,60, + 3,128,60,7,128,60,7,128,60,15,0,60,14,0,124,28, + 0,255,240,0,19,26,78,21,1,0,3,195,0,7,254,0, + 15,252,0,12,120,0,24,0,0,0,0,0,248,7,224,124, + 3,192,60,1,128,62,1,128,63,1,128,63,129,128,55,129, + 128,51,193,128,51,225,128,49,225,128,48,241,128,48,249,128, + 48,125,128,48,61,128,48,31,128,48,31,128,48,15,128,48, + 7,128,120,7,128,252,1,128,18,28,84,20,1,0,2,0, + 0,15,0,0,15,128,0,7,192,0,3,224,0,0,240,0, + 0,48,0,0,0,0,3,240,0,12,28,0,28,14,0,56, + 7,0,56,7,128,112,7,128,112,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,248,3,128, + 120,7,128,120,7,0,60,15,0,30,30,0,15,248,0,3, + 224,0,18,28,84,20,1,0,0,16,0,0,60,0,0,124, + 0,0,248,0,1,224,0,3,192,0,3,0,0,0,0,0, + 3,240,0,12,28,0,28,14,0,56,7,0,56,7,128,112, + 7,128,112,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,248,3,128,120,7,128,120,7,0, + 60,15,0,30,30,0,15,248,0,3,224,0,18,27,81,20, + 1,0,0,192,0,1,224,0,3,240,0,7,248,0,14,28, + 0,8,12,0,0,0,0,3,240,0,12,28,0,28,14,0, + 56,7,0,56,7,128,112,7,128,112,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,248,3, + 128,120,7,128,120,7,0,60,15,0,30,30,0,15,248,0, + 3,224,0,18,26,78,20,1,0,3,198,0,15,252,0,15, + 252,0,24,120,0,16,0,0,0,0,0,3,240,0,12,28, + 0,28,14,0,56,7,0,56,7,128,112,7,128,112,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,248,3,128,120,7,128,120,7,0,60,15,0,30,30, + 0,15,248,0,3,224,0,18,26,78,20,1,0,14,28,0, + 30,60,0,30,60,0,30,60,0,28,56,0,0,0,0,3, + 240,0,12,28,0,28,14,0,56,7,0,56,7,128,112,7, + 128,112,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,248,3,128,120,7,128,120,7,0,60, + 15,0,30,30,0,15,248,0,3,224,0,11,10,20,13,1, + 4,96,96,240,224,57,192,31,128,15,0,15,0,31,128,57, + 192,112,224,224,96,18,21,63,20,1,255,3,241,192,12,31, + 128,28,15,0,56,15,0,56,31,128,112,63,128,112,63,192, + 240,123,192,240,243,192,240,227,192,241,195,192,241,195,192,243, + 131,192,247,3,128,126,7,128,126,7,0,60,7,0,62,14, + 0,127,248,0,227,224,0,128,0,0,19,28,84,21,1,0, + 3,0,0,7,128,0,15,192,0,7,192,0,1,224,0,0, + 112,0,0,24,0,0,0,0,255,7,224,126,3,192,60,1, + 128,60,1,128,60,1,128,60,1,128,60,1,128,60,1,128, + 60,1,128,60,1,128,60,1,128,60,1,128,60,1,128,60, + 1,128,60,1,128,60,3,0,30,3,0,15,6,0,7,252, + 0,3,240,0,19,28,84,21,1,0,0,8,0,0,30,0, + 0,62,0,0,124,0,0,240,0,1,192,0,1,128,0,0, + 0,0,255,7,224,126,3,192,60,1,128,60,1,128,60,1, + 128,60,1,128,60,1,128,60,1,128,60,1,128,60,1,128, + 60,1,128,60,1,128,60,1,128,60,1,128,60,1,128,60, + 3,0,30,3,0,15,6,0,7,252,0,3,240,0,19,27, + 81,21,1,0,0,224,0,0,240,0,1,248,0,3,252,0, + 7,14,0,12,6,0,0,0,0,255,7,224,126,3,192,60, + 1,128,60,1,128,60,1,128,60,1,128,60,1,128,60,1, + 128,60,1,128,60,1,128,60,1,128,60,1,128,60,1,128, + 60,1,128,60,1,128,60,3,0,30,3,0,15,6,0,7, + 252,0,3,240,0,19,26,78,21,1,0,6,12,0,15,30, + 0,15,30,0,15,30,0,14,28,0,0,0,0,255,7,224, + 126,3,192,60,1,128,60,1,128,60,1,128,60,1,128,60, + 1,128,60,1,128,60,1,128,60,1,128,60,1,128,60,1, + 128,60,1,128,60,1,128,60,1,128,60,3,0,30,3,0, + 15,6,0,7,252,0,3,240,0,19,28,84,20,0,0,0, + 8,0,0,30,0,0,62,0,0,124,0,0,240,0,1,192, + 0,1,128,0,0,0,0,252,7,224,60,3,192,30,3,128, + 15,3,0,15,7,0,7,134,0,3,142,0,3,204,0,1, + 220,0,1,248,0,0,248,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,1,248,0, + 3,252,0,16,20,40,18,1,0,255,128,126,0,60,0,60, + 0,63,240,60,60,60,30,60,15,60,15,60,15,60,15,60, + 14,60,30,60,60,63,240,60,0,60,0,60,0,126,0,255, + 128,18,24,72,21,1,0,0,248,0,3,254,0,15,31,0, + 14,15,128,28,7,128,28,7,128,60,7,128,60,7,128,60, + 15,0,60,60,0,60,112,0,60,224,0,60,224,0,60,240, + 0,60,252,0,60,127,0,60,63,128,60,15,192,60,7,192, + 61,3,192,60,129,192,60,193,128,124,225,128,252,254,0,14, + 24,48,16,1,0,28,0,62,0,30,0,15,0,7,0,3, + 128,1,128,0,192,0,0,31,192,112,224,240,240,192,240,0, + 240,3,240,31,240,63,240,120,240,240,240,240,240,240,240,251, + 252,126,248,56,96,14,24,48,16,1,0,0,224,1,240,1, + 224,3,192,3,128,3,0,7,0,6,0,0,0,31,192,112, + 224,240,240,192,240,0,240,3,240,31,240,63,240,120,240,240, + 240,240,240,240,240,251,252,126,248,56,96,14,23,46,16,1, + 0,3,128,7,128,15,192,31,224,28,224,56,48,32,16,0, + 0,31,192,112,224,240,240,192,240,0,240,3,240,31,240,63, + 240,120,240,240,240,240,240,240,240,251,252,126,248,56,96,14, + 22,44,16,1,0,14,8,31,24,63,240,99,240,64,224,0, + 0,0,0,31,192,112,224,240,240,192,240,0,240,3,240,31, + 240,63,240,120,240,240,240,240,240,240,240,251,252,126,248,56, + 96,14,22,44,16,1,0,56,112,120,240,120,240,120,240,48, + 96,0,0,0,0,31,192,112,224,240,240,192,240,0,240,3, + 240,31,240,63,240,120,240,240,240,240,240,240,240,251,252,126, + 248,56,96,14,22,44,16,1,0,3,128,4,192,12,192,12, + 192,7,128,0,0,0,0,31,192,112,224,240,240,192,240,0, + 240,3,240,31,240,63,240,120,240,240,240,240,240,240,240,251, + 252,126,248,56,96,22,15,45,23,1,0,3,227,224,31,252, + 112,60,252,56,120,120,60,112,120,60,128,120,60,7,255,248, + 28,120,0,120,120,0,112,120,0,240,124,8,249,254,28,255, + 191,248,127,31,240,60,7,192,14,22,44,15,1,249,3,248, + 12,120,56,48,112,16,112,0,240,0,240,0,240,0,240,0, + 240,0,248,8,124,28,63,248,31,240,15,192,3,0,3,192, + 3,224,5,224,1,224,3,192,14,0,13,24,48,15,1,0, + 14,0,30,0,31,0,15,0,7,128,3,128,1,192,0,192, + 0,0,7,192,24,224,56,112,112,120,112,120,240,120,255,240, + 240,0,240,0,240,0,248,8,124,56,127,240,63,224,15,128, + 13,24,48,15,1,0,0,224,0,240,1,240,1,224,3,192, + 3,128,7,0,6,0,0,0,7,192,24,224,56,112,112,120, + 112,120,240,120,255,240,240,0,240,0,240,0,248,8,124,56, + 127,240,63,224,15,128,13,23,46,15,1,0,3,128,7,192, + 15,192,15,224,28,112,56,48,48,24,0,0,7,192,24,224, + 56,112,112,120,112,120,240,120,255,240,240,0,240,0,240,0, + 248,8,124,56,127,240,63,224,15,128,13,22,44,15,1,0, + 56,112,56,112,120,240,120,240,48,96,0,0,0,0,7,192, + 24,224,56,112,112,120,112,120,240,120,255,240,240,0,240,0, + 240,0,248,8,124,56,127,240,63,224,15,128,9,24,48,10, + 0,0,112,0,248,0,120,0,60,0,28,0,14,0,6,0, + 2,0,0,0,14,0,126,0,62,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,63,0, + 127,128,9,24,48,10,1,0,7,0,15,128,15,0,30,0, + 28,0,56,0,48,0,32,0,0,0,28,0,252,0,124,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,126,0,255,0,10,23,46,10,0,0,28,0, + 30,0,63,0,127,0,115,128,193,192,128,64,0,0,14,0, + 126,0,62,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,63,0,127,128,11,22,44,10, + 255,0,112,224,241,224,241,224,241,224,225,192,0,0,0,0, + 7,0,63,0,31,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,31,128,63,192,14,23, + 46,16,1,0,14,0,63,28,95,248,3,224,15,224,60,224, + 0,112,0,56,15,248,24,248,56,124,112,60,112,60,240,60, + 240,60,240,60,240,60,240,56,240,56,120,112,120,112,60,96, + 15,128,17,22,66,19,1,0,7,6,0,15,204,0,31,252, + 0,17,248,0,48,112,0,0,0,0,0,0,0,12,60,0, + 252,252,0,127,254,0,63,30,0,62,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,126,63,0,255,127,128,15,24,48,17,1,0, + 14,0,31,0,15,0,7,0,3,128,1,128,0,192,0,192, + 0,0,7,224,24,112,56,56,112,60,112,30,240,30,240,30, + 240,30,240,30,240,30,240,28,120,28,56,56,28,48,15,192, + 15,24,48,17,1,0,0,240,0,248,0,240,1,224,1,192, + 3,128,3,0,6,0,0,0,7,224,24,112,56,56,112,60, + 112,30,240,30,240,30,240,30,240,30,240,30,240,28,120,28, + 56,56,28,48,15,192,15,23,46,17,1,0,3,128,3,192, + 7,224,15,224,30,112,24,56,48,24,0,0,7,224,24,112, + 56,56,112,60,112,30,240,30,240,30,240,30,240,30,240,30, + 240,28,120,28,56,56,28,48,15,192,15,22,44,17,1,0, + 14,12,31,136,31,248,49,240,32,224,0,0,0,0,7,224, + 24,112,56,56,112,60,112,30,240,30,240,30,240,30,240,30, + 240,30,240,28,120,28,56,56,28,48,15,192,15,22,44,17, + 1,0,24,48,60,120,60,120,56,112,56,112,0,0,0,0, + 7,224,24,112,56,56,112,60,112,30,240,30,240,30,240,30, + 240,30,240,30,240,28,120,28,56,56,28,48,15,192,12,12, + 24,13,1,3,6,0,14,0,14,0,12,0,0,0,255,240, + 255,224,0,0,6,0,14,0,14,0,12,0,15,16,32,17, + 1,255,7,238,24,124,56,60,112,124,112,254,240,254,241,222, + 243,158,243,158,247,30,254,28,124,28,124,56,124,48,111,192, + 128,0,17,24,72,18,0,0,7,0,0,15,128,0,7,128, + 0,3,192,0,1,192,0,0,224,0,0,96,0,0,48,0, + 0,0,0,28,14,0,252,126,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,126,0,63,255,128,31,223,0,15,12,0, + 17,24,72,18,0,0,0,56,0,0,124,0,0,120,0,0, + 240,0,0,224,0,0,192,0,1,128,0,1,128,0,0,0, + 0,28,14,0,252,126,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,126,0,63,255,128,31,223,0,15,12,0,17,23, + 69,18,0,0,0,192,0,1,224,0,3,240,0,7,248,0, + 7,56,0,14,12,0,8,4,0,0,0,0,28,14,0,252, + 126,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,126,0, + 63,255,128,31,223,0,15,12,0,17,22,66,18,0,0,14, + 28,0,30,60,0,30,60,0,30,60,0,12,24,0,0,0, + 0,0,0,0,28,14,0,252,126,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,126,0,63,255,128,31,223,0,15,12, + 0,17,32,96,16,255,248,0,56,0,0,62,0,0,124,0, + 0,120,0,0,240,0,0,224,0,0,192,0,1,128,0,0, + 0,0,127,15,128,62,7,0,30,6,0,30,6,0,15,14, + 0,15,12,0,7,140,0,7,152,0,7,152,0,3,248,0, + 3,240,0,1,240,0,1,240,0,1,224,0,0,224,0,0, + 192,0,0,192,0,1,192,0,1,128,0,39,128,0,127,0, + 0,254,0,0,120,0,0,16,32,64,18,1,248,12,0,252, + 0,124,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 120,61,252,63,254,62,62,60,31,60,15,60,15,60,15,60, + 15,60,15,60,14,63,30,63,252,61,248,60,240,60,0,60, + 0,60,0,60,0,60,0,60,0,127,0,255,128,17,30,90, + 16,255,248,6,12,0,15,30,0,15,30,0,14,28,0,14, + 28,0,0,0,0,0,0,0,127,15,128,62,7,0,30,6, + 0,30,6,0,15,14,0,15,12,0,7,140,0,7,152,0, + 7,152,0,3,248,0,3,240,0,1,240,0,1,240,0,1, + 224,0,0,224,0,0,192,0,0,192,0,1,192,0,1,128, + 0,39,128,0,127,0,0,254,0,0,120,0,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--32-320-72-72-P-159-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 19 + Calculated Max Values w=14 h=30 x= 2 y=11 dx=17 dy= 0 ascent=25 len=60 + Font Bounding box w=49 h=47 x=-16 y=-12 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =19 descent= 0 + X Font ascent =19 descent= 0 + Max Font ascent =25 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb20n[624] U8G_SECTION(".progmem.u8g_font_gdb20n") = { + 0,49,47,240,244,19,0,0,0,0,42,57,0,25,250,19, + 0,12,13,26,14,1,11,3,0,15,0,70,64,102,112,246, + 240,63,192,15,0,63,224,254,240,230,112,70,32,7,0,14, + 0,12,12,24,13,1,3,6,0,6,0,6,0,6,0,6, + 0,127,240,255,224,6,0,6,0,6,0,6,0,6,0,6, + 10,10,9,2,250,56,252,252,60,60,56,56,112,96,192,10, + 2,4,11,1,7,255,192,255,128,5,5,5,9,2,255,112, + 248,248,248,112,14,30,60,15,1,251,0,28,0,56,0,56, + 0,120,0,112,0,112,0,224,0,224,0,224,1,192,1,192, + 3,128,3,128,3,128,7,0,7,0,7,0,14,0,14,0, + 28,0,28,0,28,0,56,0,56,0,120,0,112,0,112,0, + 224,0,224,0,192,0,14,18,36,16,1,0,7,192,24,224, + 56,112,112,120,112,120,240,60,240,60,240,60,240,60,240,60, + 240,60,240,60,240,56,112,56,120,56,56,112,28,96,15,128, + 13,19,38,16,2,0,1,128,15,128,127,128,239,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,63,224,127,248,13,19,38,16, + 1,0,15,224,56,240,120,120,240,120,112,120,0,120,0,240, + 0,240,1,224,1,192,3,128,7,0,14,0,28,8,28,8, + 56,24,127,248,255,248,255,248,13,19,38,16,1,0,31,128, + 121,224,112,240,240,240,64,240,0,240,1,224,7,192,15,192, + 3,240,0,240,0,120,0,120,0,120,0,120,128,240,192,240, + 127,224,31,128,14,19,38,17,1,0,0,48,1,240,1,240, + 3,240,7,240,6,240,12,240,12,240,24,240,56,240,48,240, + 96,240,255,252,255,248,0,240,0,240,0,240,1,248,7,252, + 13,19,38,16,1,0,63,248,63,240,63,224,112,0,112,0, + 96,0,96,0,127,128,127,224,97,240,0,248,0,120,0,120, + 0,120,0,120,0,112,128,240,193,224,127,128,14,20,40,16, + 1,0,0,112,3,240,7,128,15,0,28,0,60,0,120,0, + 120,0,115,224,255,240,252,120,240,124,240,60,240,60,240,60, + 112,60,120,56,56,56,28,112,7,192,13,19,38,16,2,0, + 255,248,255,248,255,240,192,48,128,96,128,96,0,224,0,192, + 1,192,1,128,3,128,3,128,7,0,7,0,14,0,14,0, + 30,0,28,0,56,0,14,19,38,16,1,0,15,192,24,240, + 48,120,112,120,112,120,120,120,126,240,63,192,31,224,15,240, + 63,248,120,252,248,124,240,60,240,60,240,56,112,56,56,112, + 31,192,14,20,40,16,1,255,7,192,24,240,56,120,112,120, + 240,60,240,60,240,60,240,60,248,60,124,124,63,252,31,60, + 0,56,0,120,0,112,0,240,1,224,7,128,63,0,56,0 + }; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--32-320-72-72-P-159-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 20, '1' Height: 19 + Calculated Max Values w=27 h=32 x= 3 y=16 dx=28 dy= 0 ascent=26 len=112 + Font Bounding box w=49 h=47 x=-16 y=-12 + Calculated Min Values x=-5 y=-8 dx= 0 dy= 0 + Pure Font ascent =20 descent=-8 + X Font ascent =25 descent=-8 + Max Font ascent =26 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb20r[4680] U8G_SECTION(".progmem.u8g_font_gdb20r") = { + 0,49,47,240,244,20,5,86,12,137,32,127,248,26,248,25, + 248,0,0,0,8,0,0,5,24,24,10,2,255,24,120,120, + 120,120,120,120,120,120,112,112,112,112,48,48,48,48,0,0, + 112,248,248,248,112,11,10,20,15,2,13,56,224,243,224,241, + 224,241,192,113,192,113,192,113,192,113,192,112,192,96,192,15, + 18,36,16,1,2,1,140,3,152,3,24,3,24,3,56,63, + 254,63,254,6,112,14,96,12,96,12,96,127,252,255,248,24, + 192,24,192,57,128,49,128,49,128,14,25,50,16,1,253,3, + 0,3,0,3,0,31,240,63,248,115,120,227,56,227,16,243, + 0,255,0,127,0,63,224,15,240,3,248,3,124,3,28,195, + 28,195,28,227,28,251,120,255,240,63,224,3,0,3,0,3, + 0,21,20,60,23,1,0,0,0,96,30,0,192,115,129,192, + 97,131,128,225,195,0,225,198,0,225,206,0,225,220,0,97, + 152,0,115,176,0,30,113,224,0,231,112,1,198,48,1,142, + 56,3,142,56,7,14,56,14,14,56,12,6,48,28,7,48, + 56,3,192,21,23,69,22,1,0,1,240,0,7,120,0,14, + 60,0,14,60,0,30,60,0,30,124,0,30,120,0,31,240, + 0,31,224,0,15,192,0,15,128,0,31,143,248,63,195,160, + 123,225,128,123,241,128,241,249,128,240,251,0,240,127,0,240, + 126,0,248,63,0,120,31,240,63,247,240,15,195,192,5,10, + 10,9,2,13,56,240,240,240,112,112,112,112,112,96,9,30, + 60,11,2,251,1,0,3,128,6,0,14,0,28,0,60,0, + 56,0,120,0,120,0,112,0,112,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,112,0,120,0, + 120,0,56,0,60,0,28,0,30,0,14,0,7,0,1,128, + 9,30,60,11,0,251,64,0,240,0,56,0,60,0,28,0, + 30,0,14,0,15,0,15,0,15,0,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,0,15,0, + 15,0,15,0,14,0,30,0,28,0,56,0,48,0,96,0, + 192,0,12,13,26,14,1,11,3,0,15,0,70,64,102,112, + 246,240,63,192,15,0,63,224,254,240,230,112,70,32,7,0, + 14,0,12,12,24,13,1,3,6,0,6,0,6,0,6,0, + 6,0,127,240,255,224,6,0,6,0,6,0,6,0,6,0, + 6,10,10,9,2,250,56,252,252,60,60,56,56,112,96,192, + 10,2,4,11,1,7,255,192,255,128,5,5,5,9,2,255, + 112,248,248,248,112,14,30,60,15,1,251,0,28,0,56,0, + 56,0,120,0,112,0,112,0,224,0,224,0,224,1,192,1, + 192,3,128,3,128,3,128,7,0,7,0,7,0,14,0,14, + 0,28,0,28,0,28,0,56,0,56,0,120,0,112,0,112, + 0,224,0,224,0,192,0,14,18,36,16,1,0,7,192,24, + 224,56,112,112,120,112,120,240,60,240,60,240,60,240,60,240, + 60,240,60,240,60,240,56,112,56,120,56,56,112,28,96,15, + 128,13,19,38,16,2,0,1,128,15,128,127,128,239,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,63,224,127,248,13,19,38, + 16,1,0,15,224,56,240,120,120,240,120,112,120,0,120,0, + 240,0,240,1,224,1,192,3,128,7,0,14,0,28,8,28, + 8,56,24,127,248,255,248,255,248,13,19,38,16,1,0,31, + 128,121,224,112,240,240,240,64,240,0,240,1,224,7,192,15, + 192,3,240,0,240,0,120,0,120,0,120,0,120,128,240,192, + 240,127,224,31,128,14,19,38,17,1,0,0,48,1,240,1, + 240,3,240,7,240,6,240,12,240,12,240,24,240,56,240,48, + 240,96,240,255,252,255,248,0,240,0,240,0,240,1,248,7, + 252,13,19,38,16,1,0,63,248,63,240,63,224,112,0,112, + 0,96,0,96,0,127,128,127,224,97,240,0,248,0,120,0, + 120,0,120,0,120,0,112,128,240,193,224,127,128,14,20,40, + 16,1,0,0,112,3,240,7,128,15,0,28,0,60,0,120, + 0,120,0,115,224,255,240,252,120,240,124,240,60,240,60,240, + 60,112,60,120,56,56,56,28,112,7,192,13,19,38,16,2, + 0,255,248,255,248,255,240,192,48,128,96,128,96,0,224,0, + 192,1,192,1,128,3,128,3,128,7,0,7,0,14,0,14, + 0,30,0,28,0,56,0,14,19,38,16,1,0,15,192,24, + 240,48,120,112,120,112,120,120,120,126,240,63,192,31,224,15, + 240,63,248,120,252,248,124,240,60,240,60,240,56,112,56,56, + 112,31,192,14,20,40,16,1,255,7,192,24,240,56,120,112, + 120,240,60,240,60,240,60,240,60,248,60,124,124,63,252,31, + 60,0,56,0,120,0,112,0,240,1,224,7,128,63,0,56, + 0,5,16,16,9,2,255,112,248,248,248,112,0,0,0,0, + 0,0,112,248,248,248,112,6,21,21,9,2,250,112,248,248, + 248,112,0,0,0,0,0,0,56,252,252,60,60,56,56,112, + 96,192,13,10,20,15,1,4,0,24,0,240,7,240,63,128, + 252,0,248,0,127,0,15,224,1,248,0,48,13,7,14,15, + 1,5,255,248,255,240,0,0,0,0,0,0,255,248,255,240, + 13,10,20,15,1,4,96,0,252,0,63,128,7,240,0,248, + 1,240,15,224,127,0,248,0,192,0,12,24,48,15,1,255, + 31,192,121,224,240,240,240,240,240,240,192,240,0,240,1,224, + 1,192,3,192,3,128,7,0,7,0,6,0,6,0,6,0, + 0,0,0,0,0,0,14,0,31,0,31,0,31,0,14,0, + 26,28,112,28,1,249,0,31,192,0,0,255,248,0,3,255, + 252,0,7,224,62,0,15,128,15,0,30,0,7,128,60,30, + 35,128,60,49,225,128,120,97,225,192,120,225,224,192,240,225, + 224,192,241,225,224,192,241,225,224,192,241,225,224,192,241,225, + 224,192,241,225,225,128,241,225,225,128,248,243,227,0,120,255, + 254,0,120,125,252,0,124,56,240,0,62,0,0,0,62,0, + 2,0,31,128,6,0,15,224,63,0,7,255,248,0,1,255, + 240,0,0,63,128,0,20,20,60,20,0,0,0,32,0,0, + 240,0,0,240,0,1,248,0,1,248,0,1,248,0,3,188, + 0,3,60,0,3,60,0,7,30,0,6,30,0,14,31,0, + 15,255,0,12,7,0,28,7,128,24,7,128,24,3,128,56, + 3,192,56,3,192,254,15,240,17,20,60,19,1,0,63,224, + 0,252,120,0,60,60,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,60,0,60,120,0,63,248,0,60,30,0,60, + 15,0,60,15,0,60,7,128,60,7,128,60,7,128,60,7, + 128,60,15,0,124,30,0,255,248,0,16,20,40,18,1,0, + 1,254,6,31,28,14,56,4,56,0,112,0,112,0,240,0, + 240,0,240,0,240,0,240,0,240,0,248,0,120,0,124,3, + 63,14,31,252,15,248,3,224,18,20,60,20,1,0,63,240, + 0,252,60,0,60,14,0,60,15,0,60,7,128,60,7,128, + 60,3,192,60,3,192,60,3,192,60,3,192,60,3,192,60, + 3,192,60,3,192,60,3,128,60,7,128,60,7,128,60,15, + 0,60,14,0,124,28,0,255,240,0,15,20,40,17,1,0, + 255,252,124,12,60,12,60,12,60,12,60,0,60,0,60,0, + 60,0,63,240,60,32,60,0,60,0,60,0,60,0,60,0, + 60,2,60,6,124,14,255,254,14,20,40,16,1,0,255,252, + 124,12,60,12,60,12,60,12,60,0,60,0,60,0,60,0, + 63,240,60,32,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,126,0,255,0,18,20,60,19,1,0,1,254,0,6, + 15,0,28,6,0,56,4,0,56,0,0,120,0,0,112,0, + 0,240,0,0,240,0,0,240,0,0,240,127,192,240,127,192, + 240,15,0,240,15,0,120,15,0,120,15,0,60,15,0,30, + 15,0,15,254,0,3,240,0,20,20,60,22,1,0,255,15, + 240,126,7,224,60,3,192,60,3,192,60,3,192,60,3,192, + 60,3,192,60,3,192,60,3,192,63,255,192,60,3,192,60, + 3,192,60,3,192,60,3,192,60,3,192,60,3,192,60,3, + 192,60,3,192,126,7,224,255,15,240,8,20,20,10,1,0, + 255,126,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 60,60,126,255,14,27,54,11,252,249,7,252,1,248,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,224,1,224,49,192,127,128,255,0,60,0, + 19,20,60,20,1,0,255,31,192,126,15,0,60,14,0,60, + 28,0,60,56,0,60,112,0,60,224,0,60,224,0,61,192, + 0,63,128,0,63,192,0,61,224,0,60,240,0,60,120,0, + 60,60,0,60,62,0,60,31,0,60,15,128,126,7,224,255, + 3,128,15,20,40,16,1,0,255,0,126,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,2,60,6,124,14,255,254, + 25,20,80,27,1,0,252,0,31,128,62,0,62,0,62,0, + 62,0,62,0,126,0,63,0,126,0,55,0,254,0,55,128, + 222,0,55,129,222,0,51,193,158,0,51,195,158,0,49,195, + 158,0,49,227,30,0,48,231,30,0,48,246,30,0,48,254, + 30,0,48,124,30,0,48,124,30,0,48,56,30,0,120,56, + 63,0,252,24,127,128,19,20,60,21,1,0,248,7,224,124, + 3,192,60,1,128,62,1,128,63,1,128,63,129,128,55,129, + 128,51,193,128,51,225,128,49,225,128,48,241,128,48,249,128, + 48,125,128,48,61,128,48,31,128,48,31,128,48,15,128,48, + 7,128,120,7,128,252,1,128,18,20,60,20,1,0,3,240, + 0,12,28,0,28,14,0,56,7,0,56,7,128,112,7,128, + 112,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,248,3,128,120,7,128,120,7,0,60,15, + 0,30,30,0,15,248,0,3,224,0,16,20,40,18,1,0, + 63,240,252,60,60,30,60,15,60,15,60,15,60,15,60,15, + 60,14,60,30,62,60,61,240,60,0,60,0,60,0,60,0, + 60,0,60,0,126,0,255,128,21,25,75,20,1,251,3,240, + 0,14,28,0,28,14,0,56,15,0,56,7,128,112,7,128, + 112,3,128,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,128,120,3,128,120,7,128,60,7, + 0,28,14,0,14,28,0,3,248,0,0,60,0,0,15,8, + 0,7,248,0,3,240,0,0,224,18,20,60,19,1,0,63, + 224,0,252,120,0,60,60,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,60,0,60,252,0,63,240,0,63,224,0, + 60,240,0,60,112,0,60,120,0,60,60,0,60,62,0,60, + 30,0,60,15,0,126,15,192,255,7,128,13,20,40,16,2, + 0,15,224,48,224,96,96,224,0,224,0,240,0,252,0,127, + 0,127,192,31,224,15,240,3,248,0,248,0,120,128,120,192, + 120,192,112,224,224,255,192,63,0,18,20,60,19,0,0,255, + 255,192,193,225,192,193,224,192,193,224,192,129,224,128,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,3,240,0,7,248,0,19,20,60,21,1, + 0,255,7,224,126,3,192,60,1,128,60,1,128,60,1,128, + 60,1,128,60,1,128,60,1,128,60,1,128,60,1,128,60, + 1,128,60,1,128,60,1,128,60,1,128,60,1,128,60,3, + 0,30,3,0,15,6,0,7,252,0,3,240,0,21,20,60, + 21,0,0,255,3,248,60,0,224,60,0,192,30,0,192,30, + 1,128,15,1,128,15,3,128,15,3,0,7,131,0,7,135, + 0,3,198,0,3,198,0,3,206,0,1,236,0,1,236,0, + 0,248,0,0,248,0,0,248,0,0,112,0,0,96,0,27, + 20,80,27,0,0,255,6,15,224,60,6,3,192,28,15,3, + 128,28,15,3,0,28,15,3,0,30,31,131,0,30,27,131, + 0,14,27,199,0,14,59,198,0,15,49,198,0,15,49,230, + 0,7,112,238,0,7,96,252,0,7,224,252,0,7,192,124, + 0,3,192,124,0,3,192,60,0,3,128,56,0,3,128,56, + 0,3,0,16,0,20,20,60,20,0,0,127,143,224,62,3, + 128,30,7,0,15,6,0,15,142,0,7,140,0,3,220,0, + 3,248,0,1,240,0,0,240,0,0,248,0,1,248,0,3, + 188,0,3,190,0,7,30,0,6,15,0,14,15,128,28,7, + 128,60,7,192,254,31,240,19,20,60,20,0,0,252,7,224, + 60,3,192,30,3,128,15,3,0,15,7,0,7,134,0,3, + 142,0,3,204,0,1,220,0,1,248,0,0,248,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,1,248,0,3,252,0,15,20,40,17,1,0,127, + 254,96,62,96,124,64,124,64,248,0,240,1,240,1,224,3, + 224,7,192,7,192,15,128,15,0,31,0,62,0,62,2,124, + 2,124,6,248,6,255,254,9,30,60,11,2,251,255,128,255, + 128,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,255,128,255,128,13,30,60,15,1,251,192, + 0,224,0,224,0,112,0,112,0,48,0,56,0,56,0,28, + 0,28,0,28,0,14,0,14,0,6,0,7,0,7,0,3, + 128,3,128,3,128,1,192,1,192,0,192,0,224,0,224,0, + 112,0,112,0,112,0,56,0,56,0,24,9,30,60,11,0, + 251,255,128,255,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,255,128,255,128,12,15,30, + 16,2,9,2,0,6,0,15,0,15,0,27,0,27,128,17, + 128,49,192,49,192,96,192,96,224,96,96,192,112,192,48,128, + 32,14,2,4,15,1,252,255,252,255,248,7,8,8,10,0, + 16,112,240,120,56,60,28,14,6,14,15,30,16,1,0,31, + 192,112,224,240,240,192,240,0,240,3,240,31,240,63,240,120, + 240,240,240,240,240,240,240,251,252,126,248,56,96,16,24,48, + 17,0,0,12,0,252,0,124,0,60,0,60,0,60,0,60, + 0,60,0,60,0,60,120,61,252,63,254,63,30,60,15,60, + 7,60,7,60,7,60,7,60,6,60,14,62,28,63,248,31, + 240,7,192,13,15,30,15,1,0,3,248,12,120,56,48,112, + 16,112,0,240,0,240,0,240,0,240,0,248,0,248,8,124, + 56,63,240,31,224,15,128,16,24,48,18,1,0,0,28,0, + 252,0,60,0,60,0,60,0,60,0,60,0,60,0,60,7, + 252,24,124,56,60,112,60,112,60,240,60,240,60,240,60,240, + 60,248,60,248,60,124,124,127,255,63,190,30,24,13,15,30, + 15,1,0,7,192,24,224,56,112,112,120,112,120,240,120,255, + 240,240,0,240,0,240,0,248,8,124,56,127,240,63,224,15, + 128,13,24,48,11,1,0,1,240,7,248,14,112,28,32,28, + 0,60,0,60,0,60,0,60,0,255,192,60,128,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,127,0,255,128,16,23,46,17,0,248,7,227,28, + 127,56,126,120,60,120,60,120,60,120,60,60,56,60,112,15, + 192,14,0,28,0,31,192,63,252,15,254,31,255,120,127,240, + 15,240,14,240,14,120,28,63,248,15,192,17,24,72,18,1, + 0,12,0,0,252,0,0,124,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,120,0,61, + 252,0,63,254,0,63,30,0,62,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,126,63,0,255,127,128,8,21,21,10,1,0,28, + 62,62,28,0,0,28,252,124,60,60,60,60,60,60,60,60, + 60,60,126,255,12,29,58,9,251,248,0,224,1,240,1,240, + 0,224,0,0,0,0,0,224,7,224,3,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,192,1,192,99,128,255,0, + 254,0,120,0,17,24,72,18,1,0,12,0,0,252,0,0, + 124,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,63,128,60,30,0,60,60,0,60,112, + 0,60,224,0,61,192,0,63,192,0,63,224,0,61,224,0, + 60,240,0,60,120,0,60,60,0,60,62,0,126,31,128,255, + 15,0,8,24,24,10,1,0,12,252,124,60,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,126,255, + 26,15,60,28,1,0,28,120,60,0,252,252,254,0,127,255, + 255,0,63,31,143,0,60,30,15,0,60,30,15,0,60,30, + 15,0,60,30,15,0,60,30,15,0,60,30,15,0,60,30, + 15,0,60,30,15,0,60,30,15,0,126,63,31,128,255,127, + 191,192,17,15,45,18,1,0,12,60,0,252,252,0,127,254, + 0,63,30,0,62,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,126, + 63,0,255,127,128,15,15,30,17,1,0,7,224,24,112,56, + 56,112,60,112,30,240,30,240,30,240,30,240,30,240,30,240, + 28,120,28,56,56,28,48,15,192,16,23,46,18,1,248,12, + 120,252,252,127,254,62,62,60,31,60,15,60,15,60,15,60, + 15,60,15,60,14,62,30,63,252,61,248,60,240,60,0,60, + 0,60,0,60,0,60,0,60,0,127,0,255,128,17,23,69, + 18,1,248,3,194,0,12,54,0,56,30,0,112,30,0,112, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,248,30, + 0,248,30,0,124,126,0,127,254,0,63,222,0,15,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,63,0,0,255,128,13,15,30,14,1,0,24,240, + 249,248,123,248,62,48,60,48,60,48,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,126,0,255,0,11,15,30,13, + 1,0,31,192,97,192,225,128,224,128,248,0,254,0,127,128, + 127,192,31,224,7,224,129,224,192,224,192,192,224,192,255,0, + 11,20,40,12,0,0,4,0,28,0,60,0,60,0,60,0, + 255,224,60,64,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,96,63,224,31,128,14,0,17,15, + 45,18,0,0,28,14,0,252,126,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,126,0,63,255,128,31,223,0,15,12, + 0,16,15,30,16,0,0,254,31,124,14,60,12,60,12,30, + 28,30,24,15,24,15,48,7,48,7,240,7,224,3,224,3, + 192,1,192,1,128,23,15,45,23,0,0,254,24,62,124,24, + 28,60,28,24,60,60,24,28,62,48,30,126,48,30,111,48, + 14,111,112,15,199,96,15,199,224,7,195,224,7,131,192,7, + 131,192,3,1,192,2,1,128,16,15,30,17,0,0,255,63, + 62,28,30,24,15,48,15,240,7,224,3,192,3,224,3,224, + 6,240,14,248,28,120,24,60,120,62,252,127,17,23,69,16, + 255,248,127,15,128,62,7,0,30,6,0,30,6,0,15,14, + 0,15,12,0,7,140,0,7,152,0,7,152,0,3,248,0, + 3,240,0,1,240,0,1,240,0,1,224,0,0,224,0,0, + 192,0,0,192,0,1,192,0,1,128,0,39,128,0,127,0, + 0,254,0,0,120,0,0,13,15,30,15,1,0,127,248,96, + 248,65,240,65,224,3,224,7,192,7,128,15,128,15,0,31, + 0,62,16,60,24,124,24,248,24,255,248,9,30,60,12,2, + 251,1,0,7,128,14,0,28,0,60,0,60,0,60,0,60, + 0,62,0,30,0,30,0,30,0,30,0,60,0,120,0,252, + 0,60,0,30,0,30,0,30,0,30,0,62,0,60,0,60, + 0,60,0,60,0,28,0,30,0,7,0,1,128,2,32,32, + 7,3,250,64,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,128,9,30,60,12,1,251,64,0,240,0,60,0,28, + 0,30,0,30,0,30,0,30,0,62,0,60,0,60,0,60, + 0,60,0,30,0,31,128,15,0,30,0,60,0,60,0,60, + 0,60,0,62,0,30,0,30,0,30,0,30,0,28,0,56, + 0,112,0,192,0,14,6,12,16,1,7,28,8,62,12,127, + 136,71,240,131,240,128,224,255}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--40-400-72-72-P-200-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=34 h=41 x= 4 y=23 dx=35 dy= 0 ascent=34 len=136 + Font Bounding box w=61 h=57 x=-20 y=-14 + Calculated Min Values x=-6 y=-11 dx= 0 dy= 0 + Pure Font ascent =25 descent=-9 + X Font ascent =31 descent=-9 + Max Font ascent =34 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb25[14643] U8G_SECTION(".progmem.u8g_font_gdb25") = { + 0,61,57,236,242,25,7,167,18,92,32,255,247,34,245,31, + 247,0,0,0,10,0,0,6,30,30,12,3,255,12,60,252, + 252,252,124,120,120,120,120,120,120,120,120,120,120,120,120,56, + 48,48,32,0,0,56,124,252,252,252,120,13,13,26,19,3, + 16,24,56,248,248,248,248,248,248,248,248,248,248,248,240,112, + 240,112,112,112,112,112,112,112,112,112,112,19,23,69,20,1, + 2,0,97,192,0,227,128,0,227,128,0,195,128,1,195,0, + 1,199,0,31,255,224,31,255,224,35,142,0,3,142,0,3, + 14,0,7,12,0,7,28,0,7,28,0,127,255,128,255,255, + 128,14,56,0,12,56,0,28,48,0,28,112,0,24,112,0, + 24,112,0,32,224,0,17,30,90,21,2,253,0,192,0,1, + 192,0,1,192,0,3,240,0,31,254,0,63,255,128,113,223, + 0,225,207,0,225,199,0,225,194,0,241,192,0,255,192,0, + 127,192,0,63,248,0,15,252,0,3,254,0,1,255,0,1, + 223,128,1,207,128,193,199,128,193,199,128,225,199,128,241,207, + 0,253,207,0,255,254,0,63,252,0,7,224,0,1,192,0, + 1,192,0,1,128,0,26,25,100,28,1,0,0,0,3,0, + 15,128,15,0,63,192,14,0,113,224,28,0,112,224,56,0, + 224,112,120,0,224,112,112,0,224,112,224,0,224,113,192,0, + 224,115,192,0,96,103,128,0,112,103,0,0,48,206,62,0, + 31,28,99,0,0,60,195,128,0,56,193,128,0,113,193,192, + 0,225,193,192,1,225,193,192,1,193,193,192,3,129,193,192, + 7,0,225,128,15,0,227,128,14,0,127,0,28,0,62,0, + 27,28,112,28,1,0,0,126,0,0,1,255,128,0,3,143, + 128,0,7,7,192,0,7,7,192,0,15,7,192,0,15,7, + 192,0,15,15,128,0,15,159,0,0,15,191,0,0,7,254, + 0,0,7,248,0,0,7,240,0,0,15,240,255,224,31,241, + 255,192,63,248,61,128,125,252,60,0,124,254,28,0,248,254, + 28,0,248,127,28,0,248,63,184,0,248,31,248,0,248,15, + 240,0,252,7,248,0,124,3,252,0,63,7,255,192,31,254, + 127,128,7,240,28,0,5,13,13,11,3,16,24,248,248,248, + 248,248,248,112,112,112,112,112,112,11,37,74,13,2,250,0, + 64,1,224,3,192,7,128,15,0,15,0,30,0,30,0,60, + 0,60,0,124,0,124,0,120,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,120, + 0,124,0,124,0,124,0,60,0,62,0,30,0,31,0,15, + 0,7,128,3,192,1,224,0,64,11,37,74,13,0,250,64, + 0,240,0,120,0,60,0,30,0,31,0,15,0,15,128,7, + 128,7,192,7,192,7,192,7,192,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,192,7, + 192,7,192,7,192,7,128,15,128,15,0,15,0,30,0,30, + 0,60,0,120,0,240,0,64,0,16,16,32,18,1,14,0, + 192,3,192,3,192,99,140,123,158,125,191,127,252,15,224,7, + 224,63,252,253,190,249,158,51,142,3,192,3,192,3,0,15, + 14,28,17,1,4,1,128,3,128,3,128,3,128,3,128,3, + 128,127,254,255,252,3,128,3,128,3,128,3,128,3,128,3, + 0,8,12,12,11,2,249,30,127,255,127,31,31,30,30,60, + 56,112,96,12,2,4,14,1,9,127,240,255,240,6,6,6, + 11,3,255,56,124,252,252,252,120,17,38,114,19,1,249,0, + 1,128,0,7,128,0,7,128,0,15,0,0,15,0,0,15, + 0,0,30,0,0,30,0,0,28,0,0,60,0,0,60,0, + 0,120,0,0,120,0,0,120,0,0,240,0,0,240,0,0, + 224,0,1,224,0,1,224,0,3,192,0,3,192,0,3,192, + 0,7,128,0,7,128,0,7,0,0,15,0,0,15,0,0, + 30,0,0,30,0,0,30,0,0,60,0,0,60,0,0,56, + 0,0,120,0,0,120,0,0,240,0,0,240,0,0,192,0, + 0,18,24,72,20,1,0,3,240,0,7,252,0,30,62,0, + 28,31,0,60,15,0,120,15,128,120,15,128,120,7,128,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,248,7,192,248,7,192,120,7,128,124,7,128,124,15,128, + 60,15,0,62,14,0,31,30,0,15,248,0,3,224,0,16, + 24,48,20,2,0,0,96,3,224,31,224,255,224,99,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,7, + 240,127,255,127,255,16,24,48,20,2,0,3,248,15,252,60, + 62,124,63,120,31,248,31,112,31,0,31,0,62,0,60,0, + 124,0,120,0,240,1,224,3,224,3,192,7,128,15,1,30, + 3,60,3,120,3,127,255,255,255,255,255,16,24,48,20,2, + 0,7,240,31,248,60,124,120,62,248,62,248,62,64,62,0, + 60,0,124,0,240,7,240,7,252,0,254,0,62,0,63,0, + 31,0,31,0,31,0,31,0,30,192,62,240,124,127,248,15, + 192,17,24,72,20,1,0,0,12,0,0,124,0,0,124,0, + 0,252,0,1,252,0,1,252,0,3,188,0,7,188,0,7, + 60,0,14,60,0,14,60,0,28,60,0,56,60,0,56,60, + 0,112,60,0,255,255,128,255,255,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,3,255,128,3,255,128,17, + 24,72,20,1,0,31,255,0,31,255,128,31,254,0,31,252, + 0,24,0,0,56,0,0,56,0,0,56,0,0,56,0,0, + 63,240,0,63,252,0,48,126,0,96,31,0,0,31,0,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,31, + 0,96,31,0,248,126,0,63,252,0,7,224,0,17,24,72, + 20,2,0,0,14,0,0,126,0,1,240,0,7,192,0,15, + 128,0,30,0,0,62,0,0,60,0,0,124,0,0,121,248, + 0,127,254,0,254,63,0,252,31,0,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,124,15,128,124,15,0,60, + 31,0,31,30,0,15,252,0,3,240,0,17,24,72,20,2, + 0,127,255,128,127,255,0,255,255,0,255,255,0,224,6,0, + 192,14,0,128,12,0,0,28,0,0,28,0,0,56,0,0, + 56,0,0,112,0,0,112,0,0,240,0,0,224,0,1,224, + 0,1,192,0,3,192,0,3,192,0,7,128,0,7,128,0, + 15,128,0,31,0,0,28,0,0,17,24,72,21,2,0,3, + 240,0,15,252,0,28,62,0,24,31,0,56,31,0,56,31, + 0,56,31,0,60,62,0,63,60,0,31,248,0,15,240,0, + 7,252,0,14,254,0,62,63,0,124,31,128,120,31,128,248, + 15,128,248,15,128,248,15,128,248,15,0,124,31,0,126,62, + 0,63,252,0,7,224,0,17,25,75,20,2,255,3,240,0, + 15,252,0,30,62,0,60,30,0,120,31,0,120,31,0,248, + 15,128,248,15,128,248,15,128,248,15,128,248,15,128,124,31, + 128,126,63,128,63,255,128,15,207,0,0,15,0,0,31,0, + 0,30,0,0,62,0,0,124,0,0,248,0,1,240,0,15, + 192,0,63,0,0,56,0,0,6,19,19,11,3,255,56,124, + 252,252,252,120,0,0,0,0,0,0,0,56,124,252,252,252, + 120,8,26,26,11,2,249,8,62,126,126,126,124,0,0,0, + 0,0,0,0,0,30,127,255,127,31,31,30,30,60,56,112, + 96,16,13,26,18,1,5,0,3,0,31,0,255,3,252,31, + 224,127,128,252,0,254,0,127,192,15,248,1,255,0,63,0, + 6,16,8,16,18,1,7,127,255,255,255,0,0,0,0,0, + 0,0,0,127,255,255,255,16,13,26,18,1,5,112,0,252, + 0,255,128,31,240,3,254,0,127,0,63,0,255,7,248,63, + 224,127,0,248,0,192,0,15,30,60,18,1,255,7,240,31, + 248,60,124,120,126,248,62,248,62,248,62,224,62,0,62,0, + 124,0,124,0,248,0,240,1,240,1,224,1,192,3,192,3, + 128,3,128,3,128,3,128,0,0,0,0,0,0,3,128,7, + 192,15,192,15,192,15,192,7,128,31,34,136,35,2,248,0, + 7,248,0,0,63,255,0,0,255,255,192,1,248,15,224,3, + 192,1,240,7,128,0,248,15,0,0,120,30,0,0,60,60, + 3,195,60,56,15,238,28,120,30,126,30,120,60,62,14,112, + 120,62,14,240,120,62,14,240,248,62,14,240,248,62,14,240, + 248,62,14,240,248,62,14,240,248,62,12,240,248,62,28,240, + 252,62,28,248,124,126,56,120,127,255,240,120,127,191,224,124, + 63,159,192,60,30,15,0,62,0,0,0,31,0,0,0,31, + 128,0,48,15,224,0,240,7,248,7,224,1,255,255,192,0, + 127,255,0,0,15,248,0,25,25,100,25,0,0,0,4,0, + 0,0,30,0,0,0,62,0,0,0,126,0,0,0,127,0, + 0,0,111,0,0,0,239,128,0,0,239,128,0,0,199,128, + 0,1,199,192,0,1,199,192,0,1,131,192,0,3,131,224, + 0,3,131,224,0,3,255,224,0,7,255,240,0,7,0,240, + 0,6,0,248,0,14,0,248,0,14,0,120,0,12,0,124, + 0,28,0,124,0,28,0,124,0,255,129,255,0,255,129,255, + 128,22,25,75,24,0,0,15,254,0,255,255,128,223,15,224, + 31,3,240,31,1,240,31,1,240,31,1,240,31,1,240,31, + 1,224,31,3,224,31,15,128,31,255,0,31,255,224,31,3, + 240,31,1,248,31,0,248,31,0,124,31,0,124,31,0,124, + 31,0,124,31,0,124,31,0,248,31,3,240,127,255,224,255, + 255,0,20,25,75,22,1,0,0,127,128,3,255,240,7,135, + 224,15,1,224,30,0,192,60,0,64,60,0,0,124,0,0, + 120,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,252,0,0,124,0,0,124,0, + 0,126,0,32,63,0,112,31,193,224,15,255,192,7,255,0, + 1,252,0,22,25,75,25,1,0,15,252,0,255,255,128,255, + 15,192,31,3,224,31,1,240,31,1,248,31,0,248,31,0, + 248,31,0,124,31,0,124,31,0,124,31,0,124,31,0,124, + 31,0,124,31,0,124,31,0,124,31,0,120,31,0,248,31, + 0,248,31,1,240,31,1,240,31,3,224,31,7,192,127,255, + 128,255,252,0,19,25,75,21,1,0,255,255,192,255,255,192, + 62,1,192,30,1,192,30,1,128,30,1,128,30,0,128,30, + 0,0,30,0,0,30,0,0,30,0,0,31,255,0,31,254, + 0,30,6,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,96,30,0,96,30,0,224,63,1,224,255, + 255,224,255,255,192,18,25,75,20,1,0,255,255,192,255,255, + 192,62,1,192,30,1,192,30,1,192,30,0,192,30,0,128, + 30,0,0,30,0,0,30,0,0,30,0,0,31,254,0,31, + 254,0,30,4,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,62,0,0, + 255,192,0,255,224,0,22,25,75,24,1,0,0,127,128,1, + 255,240,7,131,240,15,1,224,30,0,224,60,0,64,60,0, + 0,124,0,0,120,0,0,248,0,0,248,0,0,248,0,0, + 248,15,252,248,15,252,248,1,240,248,1,240,252,1,240,124, + 1,240,124,1,240,126,1,240,63,1,240,31,129,240,15,255, + 192,7,255,128,0,252,0,25,25,100,27,1,0,255,227,255, + 128,127,227,255,128,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,31,255,252,0,31,255,252, + 0,31,0,124,0,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,127,195,255,128,255,227,255, + 128,11,25,50,13,1,0,255,224,127,224,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,127,192,255,224,18,33,99,13,251,248,3, + 255,192,1,255,128,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,60,0,0,60,0, + 0,56,0,16,120,0,56,112,0,127,224,0,255,128,0,62, + 0,0,24,25,75,25,0,0,255,227,254,127,193,254,31,0, + 240,31,1,224,31,3,192,31,7,128,31,15,0,31,14,0, + 31,28,0,31,60,0,31,120,0,31,240,0,31,248,0,31, + 124,0,31,60,0,31,62,0,31,31,0,31,15,128,31,7, + 192,31,3,224,31,3,240,31,1,248,31,0,255,127,224,127, + 255,224,60,20,25,75,20,0,0,255,224,0,127,224,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,48,31,0,96,31,0,96,31,128,224,127,255, + 224,255,255,224,31,25,100,34,1,0,255,0,1,254,127,0, + 1,254,31,128,1,240,31,128,3,240,31,192,3,240,31,192, + 7,240,31,192,7,240,31,224,14,240,29,224,14,240,29,240, + 30,240,28,240,28,240,28,248,28,240,28,248,56,240,28,124, + 56,248,28,124,112,248,28,60,112,248,28,62,224,248,28,30, + 224,248,28,31,224,248,28,31,192,248,28,15,192,248,28,15, + 128,248,28,7,128,248,255,7,7,254,255,3,7,254,25,25, + 100,27,1,0,254,0,255,128,255,0,127,0,31,0,28,0, + 31,128,28,0,31,192,28,0,31,192,28,0,31,224,28,0, + 29,240,28,0,29,248,28,0,28,248,28,0,28,124,28,0, + 28,126,28,0,28,62,28,0,28,31,28,0,28,15,156,0, + 28,15,156,0,28,7,220,0,28,3,252,0,28,3,252,0, + 28,1,252,0,28,0,252,0,28,0,252,0,28,0,124,0, + 127,0,60,0,255,128,12,0,23,25,75,25,1,0,0,126, + 0,3,255,192,7,135,224,14,1,240,30,0,248,60,0,248, + 60,0,124,124,0,124,120,0,126,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,252,0, + 60,124,0,124,124,0,120,62,0,120,62,0,240,31,1,224, + 15,195,192,7,255,0,0,252,0,21,25,75,23,1,0,15, + 254,0,255,255,192,255,7,224,31,3,240,31,1,248,31,0, + 248,31,0,248,31,0,248,31,0,248,31,0,248,31,1,240, + 31,1,240,31,135,224,31,127,128,31,62,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,127,224,0,255,224,0,27,31,124,25,1,250, + 0,126,0,0,3,255,192,0,7,135,224,0,14,1,240,0, + 30,0,248,0,60,0,248,0,60,0,124,0,124,0,124,0, + 120,0,124,0,248,0,62,0,248,0,62,0,248,0,62,0, + 248,0,62,0,248,0,62,0,248,0,62,0,248,0,62,0, + 252,0,60,0,124,0,124,0,124,0,120,0,62,0,120,0, + 62,0,240,0,31,1,224,0,15,195,192,0,7,255,128,0, + 0,255,0,0,0,7,224,0,0,1,248,96,0,0,255,224, + 0,0,127,192,0,0,31,128,0,0,7,0,23,25,75,24, + 1,0,15,252,0,255,255,128,255,15,192,31,7,192,31,3, + 224,31,3,224,31,3,224,31,3,224,31,3,224,31,7,192, + 31,7,128,31,255,0,31,254,0,31,124,0,31,30,0,31, + 15,0,31,15,0,31,7,128,31,7,192,31,3,224,31,3, + 224,31,1,240,31,1,254,127,192,254,255,224,248,17,25,75, + 21,2,0,3,252,0,31,255,0,60,63,0,112,14,0,240, + 6,0,240,0,0,248,0,0,252,0,0,254,0,0,127,128, + 0,63,224,0,31,248,0,7,254,0,1,255,0,0,127,0, + 0,31,128,0,15,128,0,7,128,192,7,128,192,7,128,224, + 7,0,240,14,0,252,28,0,255,248,0,31,224,0,23,25, + 75,23,0,0,127,255,252,127,255,254,96,124,14,224,124,12, + 192,124,12,192,124,12,192,124,12,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,0,124,0,0,124,0,3,255,128,3,255,128,25, + 25,100,27,1,0,255,224,255,128,127,224,255,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,24, + 0,15,128,56,0,15,128,56,0,7,192,112,0,3,224,224, + 0,1,255,192,0,0,127,0,0,26,25,100,27,0,0,255, + 192,63,192,127,192,63,192,31,0,14,0,31,0,14,0,15, + 128,28,0,15,128,28,0,15,128,28,0,7,192,56,0,7, + 192,56,0,3,224,48,0,3,224,112,0,3,224,112,0,1, + 240,224,0,1,240,224,0,0,240,224,0,0,249,192,0,0, + 249,192,0,0,125,192,0,0,127,128,0,0,63,128,0,0, + 63,0,0,0,63,0,0,0,31,0,0,0,30,0,0,0, + 8,0,0,34,25,125,34,0,0,255,192,224,127,192,127,128, + 224,63,192,30,0,224,14,0,31,1,240,14,0,31,1,240, + 12,0,15,1,248,28,0,15,3,248,28,0,15,131,248,28, + 0,15,131,252,28,0,7,135,60,24,0,7,135,60,56,0, + 7,134,62,56,0,7,206,30,56,0,3,206,31,56,0,3, + 204,15,48,0,3,220,15,112,0,3,252,15,240,0,3,248, + 7,240,0,1,248,7,224,0,1,248,7,224,0,1,240,3, + 224,0,1,240,3,224,0,0,240,1,224,0,0,224,1,192, + 0,0,192,1,128,0,25,25,100,25,0,0,127,225,255,0, + 127,225,255,0,31,128,124,0,15,128,112,0,15,192,240,0, + 7,224,224,0,3,225,192,0,1,243,192,0,1,251,128,0, + 0,255,0,0,0,127,0,0,0,126,0,0,0,62,0,0, + 0,127,0,0,0,127,128,0,0,239,192,0,1,231,192,0, + 1,195,224,0,3,131,240,0,7,129,240,0,7,0,248,0, + 14,0,252,0,30,0,254,0,255,131,255,128,255,131,255,128, + 24,25,75,25,0,0,126,0,255,255,0,255,31,0,56,15, + 128,56,15,192,112,7,192,112,3,224,224,3,224,224,1,241, + 192,1,241,192,0,251,128,0,251,128,0,127,0,0,127,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,1,255,192,1,255, + 192,19,25,75,22,1,0,63,255,224,63,255,224,120,7,192, + 112,15,192,96,15,128,96,31,128,32,63,0,0,62,0,0, + 126,0,0,124,0,0,252,0,1,248,0,1,240,0,3,240, + 0,3,224,0,7,224,0,15,192,0,15,128,0,31,128,32, + 31,0,96,63,0,96,126,0,96,124,0,224,255,255,224,255, + 255,224,11,37,74,14,2,250,255,224,255,224,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,255,224, + 255,224,17,38,114,19,1,249,192,0,0,240,0,0,112,0, + 0,112,0,0,120,0,0,56,0,0,60,0,0,60,0,0, + 28,0,0,30,0,0,30,0,0,14,0,0,15,0,0,7, + 0,0,7,128,0,7,128,0,3,128,0,3,192,0,3,192, + 0,1,192,0,1,224,0,0,224,0,0,224,0,0,240,0, + 0,112,0,0,120,0,0,120,0,0,56,0,0,60,0,0, + 60,0,0,28,0,0,30,0,0,14,0,0,15,0,0,15, + 0,0,7,0,0,7,128,0,1,128,10,37,74,13,1,250, + 255,192,255,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,255,192,255,192,16,19,38,20,2,11, + 0,128,3,128,3,192,3,192,7,224,6,224,14,224,12,112, + 12,112,28,120,24,56,24,56,48,28,48,28,112,28,96,14, + 96,14,224,7,128,6,17,2,6,19,1,251,127,255,128,255, + 255,128,9,10,20,13,0,20,56,0,248,0,252,0,124,0, + 62,0,30,0,15,0,7,0,3,128,1,0,19,18,54,20, + 1,0,1,248,0,15,254,0,62,63,0,124,31,0,124,31, + 0,112,31,0,0,31,0,1,255,0,15,255,0,63,31,0, + 124,31,0,120,31,0,248,31,0,248,31,32,248,127,224,255, + 223,192,127,159,128,62,14,0,20,30,90,21,0,0,6,0, + 0,254,0,0,254,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,31,0,62,127,192,63,255,192,63,199,224,63,1, + 224,62,1,240,62,0,240,62,0,240,62,0,240,62,0,240, + 62,0,240,62,0,224,62,1,224,62,1,192,63,131,128,63, + 255,0,15,252,0,1,240,0,16,18,36,18,1,0,1,252, + 7,255,31,31,60,15,60,7,120,6,120,0,248,0,248,0, + 248,0,248,0,248,0,124,0,126,3,63,7,63,254,15,252, + 3,240,21,30,90,22,1,0,0,1,192,0,63,192,0,63, + 192,0,7,192,0,7,192,0,7,192,0,7,192,0,7,192, + 0,7,192,0,7,192,0,7,192,0,7,192,3,247,192,15, + 255,192,30,31,192,60,15,192,124,7,192,120,7,192,248,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,252,7,192, + 252,15,192,126,31,192,127,255,248,63,247,248,31,231,224,7, + 131,128,17,18,54,19,1,0,1,240,0,15,252,0,30,62, + 0,60,31,0,120,15,0,120,15,128,248,15,128,255,255,128, + 255,254,0,248,0,0,248,0,0,248,0,0,252,0,0,126, + 1,128,127,7,0,63,254,0,31,252,0,7,240,0,17,29, + 87,14,0,0,0,63,0,0,255,128,3,143,0,7,134,0, + 7,0,0,15,0,0,15,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,127,252,0,255,248,0,31,16,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,127,240,0,255,240,0,21,27,81,22,0, + 247,1,248,24,15,255,248,30,31,240,60,15,128,124,7,192, + 124,7,192,124,7,192,124,7,192,62,7,128,63,15,0,31, + 254,0,3,248,0,7,128,0,15,128,0,31,192,0,31,255, + 0,31,255,224,7,255,240,30,255,248,124,3,248,120,0,248, + 248,0,248,248,0,240,252,1,224,127,3,192,31,255,0,3, + 248,0,22,30,90,23,1,0,6,0,0,254,0,0,254,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,15,128,62, + 63,192,62,127,224,62,255,224,63,199,224,63,3,224,62,3, + 224,62,3,224,62,3,224,62,3,224,62,3,224,62,3,224, + 62,3,224,62,3,224,62,3,224,62,3,224,255,143,248,255, + 223,252,10,27,54,12,1,0,30,0,63,0,63,0,63,0, + 30,0,0,0,0,0,0,0,0,0,14,0,254,0,254,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,255,128,255,192,15,36, + 72,11,250,247,0,60,0,126,0,126,0,126,0,60,0,0, + 0,0,0,0,0,0,0,28,3,252,3,252,0,124,0,124, + 0,124,0,124,0,124,0,124,0,124,0,124,0,124,0,124, + 0,124,0,124,0,124,0,124,0,124,0,124,0,124,0,120, + 0,120,32,240,120,224,255,192,255,128,60,0,21,30,90,22, + 1,0,6,0,0,254,0,0,254,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,15,240,62,7,240,62,7,128,62, + 15,0,62,62,0,62,120,0,62,240,0,63,224,0,63,240, + 0,62,248,0,62,124,0,62,62,0,62,31,0,62,31,128, + 62,15,192,62,7,224,255,131,248,255,129,224,10,30,60,12, + 1,0,6,0,254,0,254,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,255,128,255,192,34,18, + 90,34,0,0,6,15,192,248,0,255,63,227,252,0,255,127, + 255,254,0,31,227,252,126,0,31,129,248,62,0,31,1,240, + 62,0,31,1,240,62,0,31,1,240,62,0,31,1,240,62, + 0,31,1,240,62,0,31,1,240,62,0,31,1,240,62,0, + 31,1,240,62,0,31,1,240,62,0,31,1,240,62,0,31, + 1,240,62,0,127,199,252,255,128,255,199,252,255,192,22,18, + 54,23,1,0,14,15,128,254,63,192,254,255,224,63,255,224, + 63,199,224,63,3,224,62,3,224,62,3,224,62,3,224,62, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,62,3,224,255,143,248,255,223,252,19,18,54,21,1,0, + 1,248,0,7,254,0,30,31,128,60,15,128,124,7,192,120, + 7,192,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,192,124,3,192,124,7,128,62,7,128,63,15,0, + 15,252,0,3,240,0,20,27,81,22,1,247,14,31,0,254, + 127,128,254,255,192,63,135,224,63,3,224,62,1,240,62,0, + 240,62,0,240,62,0,240,62,0,240,62,0,240,62,0,224, + 62,0,224,62,1,192,63,195,192,63,255,128,62,255,0,62, + 60,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,255,192,0,255,192,0,21,27,81, + 22,1,247,1,240,64,7,252,224,14,31,192,60,15,192,60, + 7,192,120,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,248,7,192,252,7,192,252,15,192,126,31,192,127,255,192, + 63,247,192,31,231,192,7,135,192,0,7,192,0,7,192,0, + 7,192,0,7,192,0,7,192,0,7,192,0,7,192,0,63, + 240,0,63,248,16,18,36,18,1,0,14,30,254,127,254,255, + 63,255,63,207,31,135,31,6,30,6,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,62,0,255,192,255,224,14,18, + 36,17,2,0,15,192,63,248,120,248,240,112,240,48,248,48, + 254,0,127,128,63,224,15,248,3,248,192,252,192,124,224,60, + 224,60,248,120,255,240,63,192,15,25,50,15,0,0,3,0, + 7,0,15,0,31,0,31,0,31,0,31,0,127,254,255,252, + 31,8,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,140,31,254,31,248,15,224,7,128, + 22,18,54,23,1,0,14,0,224,254,31,224,126,7,224,62, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,62,3,224,62,3,224,62,3,224,62,3,224,62,7,224, + 63,31,252,31,251,252,31,243,240,15,193,192,20,18,54,20, + 0,0,255,131,240,127,3,240,62,1,192,31,1,192,31,1, + 128,15,3,128,15,131,0,15,135,0,7,199,0,7,206,0, + 3,238,0,3,236,0,1,252,0,1,252,0,0,248,0,0, + 248,0,0,240,0,0,96,0,28,18,72,29,0,0,255,131, + 3,240,127,3,129,240,62,3,128,192,30,7,193,192,31,7, + 193,192,31,15,193,192,15,15,227,128,15,157,227,128,15,157, + 243,128,7,153,243,0,7,248,255,0,7,240,255,0,3,240, + 126,0,3,240,126,0,3,224,62,0,1,224,60,0,1,192, + 28,0,1,128,24,0,21,18,54,21,0,0,255,199,240,255, + 199,240,63,131,192,15,131,128,15,199,0,7,238,0,3,252, + 0,1,248,0,1,248,0,0,252,0,1,254,0,3,190,0, + 7,31,0,6,31,128,12,15,192,28,7,224,127,31,248,255, + 31,248,21,27,81,20,255,247,127,193,248,63,129,248,31,0, + 224,15,128,224,15,129,192,7,193,192,7,193,128,7,195,128, + 3,227,128,3,231,0,1,247,0,1,246,0,0,254,0,0, + 254,0,0,252,0,0,124,0,0,120,0,0,56,0,0,56, + 0,0,112,0,0,112,0,0,224,0,33,224,0,127,192,0, + 127,128,0,255,0,0,124,0,0,16,18,36,19,1,0,63, + 255,63,255,112,62,112,126,96,124,96,248,1,248,1,240,3, + 224,7,224,7,192,15,128,31,129,31,3,62,3,124,3,127, + 255,255,255,11,37,74,14,2,250,0,96,1,224,3,192,7, + 128,15,0,31,0,31,0,31,0,31,0,31,0,31,128,15, + 128,15,128,15,128,15,128,15,0,31,0,62,0,252,0,255, + 0,31,0,15,128,15,128,15,128,15,128,15,128,31,128,31, + 0,31,0,31,0,31,0,31,0,15,0,15,128,7,192,1, + 224,0,96,3,41,41,9,3,248,96,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,192,11,37,74,14,1,250,192,0,240,0,124,0,62,0, + 30,0,31,0,31,0,31,0,31,0,31,0,63,0,62,0, + 62,0,62,0,62,0,62,0,31,0,31,224,7,224,15,128, + 31,0,30,0,62,0,62,0,62,0,62,0,63,0,31,0, + 31,0,31,0,31,0,31,0,30,0,60,0,120,0,240,0, + 192,0,18,6,18,20,1,9,15,0,192,31,192,128,63,225, + 0,99,255,0,192,254,0,128,56,0,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,0,0,0,10,0, + 0,6,29,29,12,3,245,120,252,252,252,248,112,0,16,48, + 56,56,120,120,120,120,120,120,120,120,120,120,120,124,124,252, + 252,252,248,192,16,25,50,20,2,255,0,192,1,192,1,192, + 1,248,7,255,31,255,61,223,121,198,121,198,113,192,241,192, + 241,192,241,192,241,192,241,192,241,192,121,195,125,199,63,206, + 31,252,15,248,3,192,1,192,1,192,1,128,19,25,75,20, + 1,255,0,127,0,1,255,192,3,199,192,7,131,192,7,1, + 192,15,1,128,15,1,128,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,127,252,0,255,248,0,31,0,0,31, + 0,0,31,0,0,31,0,0,30,0,96,30,0,192,30,0, + 192,63,255,192,127,255,192,255,255,192,64,31,128,17,16,48, + 20,1,4,64,0,128,224,1,128,115,243,128,63,255,0,30, + 30,0,28,14,0,56,7,0,56,7,0,56,7,0,56,7, + 0,56,7,0,28,14,0,62,31,0,127,255,128,243,243,128, + 96,1,128,22,24,72,20,254,0,254,3,252,255,3,252,31, + 0,240,31,128,224,15,193,192,7,193,192,7,227,128,3,227, + 128,3,247,128,1,247,0,0,255,0,0,254,0,0,254,0, + 0,124,0,31,255,240,31,255,224,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,0,124,0,3,255,128,3,255, + 128,3,41,41,9,3,248,96,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,128,0,0,0,64,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,192, + 16,28,56,20,2,0,7,224,31,252,60,124,120,56,120,24, + 124,24,127,0,63,192,63,240,127,248,243,252,240,254,240,63, + 240,31,248,15,126,15,127,15,63,206,15,254,3,252,0,254, + 48,126,48,62,48,30,56,30,60,60,63,248,15,224,14,6, + 12,16,1,21,112,56,120,60,248,124,248,124,240,120,112,56, + 27,26,104,30,1,0,0,63,128,0,1,255,240,0,7,192, + 124,0,15,0,30,0,30,0,15,0,60,31,135,128,56,127, + 227,128,112,225,193,192,113,193,193,192,225,192,193,224,227,128, + 128,224,227,128,0,224,227,128,0,224,227,128,0,224,227,128, + 0,224,227,128,0,224,225,192,1,224,113,224,33,192,112,240, + 113,192,56,127,227,128,60,31,7,128,30,0,15,0,15,0, + 30,0,7,192,124,0,1,255,240,0,0,63,128,0,9,14, + 28,11,1,11,30,0,62,0,103,0,231,0,7,0,63,0, + 103,0,231,0,231,0,255,128,119,0,0,0,255,128,255,128, + 17,18,54,21,1,0,0,128,128,1,129,128,3,3,0,7, + 7,0,14,14,0,30,30,0,60,60,0,124,124,0,248,248, + 0,252,248,0,124,124,0,60,60,0,30,30,0,14,14,0, + 7,7,0,3,3,0,1,129,128,0,128,128,17,9,27,20, + 2,3,255,255,128,255,255,128,0,3,128,0,3,128,0,3, + 128,0,3,128,0,3,128,0,3,128,0,3,0,12,2,4, + 14,1,9,127,240,255,240,13,15,30,14,1,14,15,128,31, + 192,48,96,96,48,95,16,137,136,137,136,143,136,139,8,137, + 8,73,144,124,240,48,96,31,192,15,128,16,3,6,20,2, + 23,255,255,255,255,255,254,10,10,20,14,2,15,15,0,63, + 128,115,192,97,192,225,192,225,192,225,128,243,128,127,0,60, + 0,15,18,36,16,1,3,1,128,3,128,3,128,3,128,3, + 128,3,128,127,254,255,252,3,128,3,128,3,128,3,128,3, + 128,3,0,0,0,0,0,127,254,255,252,11,15,30,13,1, + 12,7,192,31,224,56,224,120,224,112,224,0,192,1,192,3, + 128,3,0,6,0,12,0,24,32,48,96,127,224,255,224,11, + 15,30,13,0,12,7,128,31,224,56,224,56,224,32,224,1, + 192,3,128,7,192,0,224,0,224,0,224,128,224,225,192,127, + 192,31,0,9,10,20,13,4,20,14,0,31,128,31,128,63, + 0,62,0,60,0,120,0,112,0,224,0,64,0,22,27,81, + 23,1,247,14,0,96,254,7,224,254,3,224,62,3,224,62, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,62,3,224,62,3,224,63,7,224,63,143,224,63,255,228, + 63,251,252,59,241,248,57,225,224,56,0,0,56,0,0,60, + 0,0,60,0,0,60,0,0,62,0,0,63,0,0,62,0, + 0,48,0,0,22,30,90,24,1,251,3,255,252,31,255,252, + 63,29,240,124,28,224,124,28,224,248,28,224,248,28,224,248, + 28,224,248,28,224,248,28,224,124,28,224,126,28,224,63,28, + 224,31,252,224,3,252,224,0,28,224,0,28,224,0,28,224, + 0,28,224,0,28,224,0,28,224,0,28,224,0,28,224,0, + 28,224,0,28,224,0,28,224,0,28,224,0,28,224,0,127, + 248,0,255,252,6,6,6,8,1,11,56,124,252,252,252,120, + 8,9,9,9,1,247,24,56,60,63,127,31,30,252,224,10, + 15,30,14,2,12,6,0,62,0,254,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,63, + 0,255,192,9,14,28,11,1,11,30,0,63,0,119,0,227, + 128,227,128,227,128,227,128,227,128,119,0,126,0,60,0,0, + 0,255,128,255,128,17,18,54,21,2,0,64,64,0,224,224, + 0,112,112,0,56,56,0,60,60,0,30,30,0,31,31,0, + 15,143,128,15,143,128,15,143,128,15,143,128,31,31,0,30, + 30,0,60,60,0,56,56,0,112,112,0,96,96,0,192,192, + 0,22,24,72,25,2,0,12,0,24,252,0,56,28,0,112, + 28,0,224,28,1,192,28,1,192,28,3,128,28,7,0,28, + 6,0,28,14,0,62,28,0,255,184,0,0,56,112,0,112, + 240,0,225,240,1,193,112,1,195,112,3,134,112,7,4,112, + 14,15,252,14,31,248,28,0,112,56,0,112,112,1,252,21, + 24,72,25,2,0,12,0,56,252,0,112,28,0,112,28,0, + 224,28,1,192,28,3,128,28,3,128,28,7,0,28,14,0, + 28,28,0,62,28,0,255,184,0,0,113,240,0,227,248,0, + 230,56,1,206,56,3,128,48,7,0,96,7,0,224,14,0, + 192,28,1,136,60,7,8,56,15,248,112,15,248,23,24,72, + 25,1,0,31,0,12,63,128,28,115,128,56,227,128,112,7, + 0,224,31,0,224,3,129,192,3,131,128,3,131,0,135,135, + 0,255,14,0,60,28,0,0,28,56,0,56,120,0,112,248, + 0,224,184,0,225,184,1,195,56,3,130,56,7,7,254,7, + 15,252,14,0,56,28,0,56,56,0,254,16,29,58,18,1, + 245,3,192,7,224,7,224,7,224,7,192,3,128,0,0,0, + 0,1,192,1,192,1,192,1,192,3,192,3,128,7,128,15, + 0,31,0,62,0,60,0,124,0,248,0,248,7,248,31,248, + 31,248,31,252,30,126,60,63,248,15,224,25,34,136,25,0, + 0,0,192,0,0,3,224,0,0,3,240,0,0,3,248,0, + 0,0,252,0,0,0,62,0,0,0,15,0,0,0,2,0, + 0,0,0,0,0,0,4,0,0,0,30,0,0,0,62,0, + 0,0,126,0,0,0,127,0,0,0,111,0,0,0,239,128, + 0,0,239,128,0,0,199,128,0,1,199,192,0,1,199,192, + 0,1,131,192,0,3,131,224,0,3,131,224,0,3,255,224, + 0,7,255,240,0,7,0,240,0,6,0,248,0,14,0,248, + 0,14,0,120,0,12,0,124,0,28,0,124,0,28,0,124, + 0,255,129,255,0,255,129,255,128,25,34,136,25,0,0,0, + 1,128,0,0,3,192,0,0,7,224,0,0,15,192,0,0, + 31,0,0,0,124,0,0,0,240,0,0,0,64,0,0,0, + 0,0,0,0,4,0,0,0,30,0,0,0,62,0,0,0, + 126,0,0,0,127,0,0,0,111,0,0,0,239,128,0,0, + 239,128,0,0,199,128,0,1,199,192,0,1,199,192,0,1, + 131,192,0,3,131,224,0,3,131,224,0,3,255,224,0,7, + 255,240,0,7,0,240,0,6,0,248,0,14,0,248,0,14, + 0,120,0,12,0,124,0,28,0,124,0,28,0,124,0,255, + 129,255,0,255,129,255,128,25,34,136,25,0,0,0,28,0, + 0,0,62,0,0,0,127,0,0,0,255,128,0,1,255,128, + 0,1,227,192,0,3,128,224,0,2,0,64,0,0,0,0, + 0,0,4,0,0,0,30,0,0,0,62,0,0,0,126,0, + 0,0,127,0,0,0,111,0,0,0,239,128,0,0,239,128, + 0,0,199,128,0,1,199,192,0,1,199,192,0,1,131,192, + 0,3,131,224,0,3,131,224,0,3,255,224,0,7,255,240, + 0,7,0,240,0,6,0,248,0,14,0,248,0,14,0,120, + 0,12,0,124,0,28,0,124,0,28,0,124,0,255,129,255, + 0,255,129,255,128,25,33,132,25,0,0,0,248,48,0,1, + 254,240,0,3,255,224,0,3,255,192,0,6,31,128,0,6, + 3,0,0,4,0,0,0,0,0,0,0,0,4,0,0,0, + 30,0,0,0,62,0,0,0,126,0,0,0,127,0,0,0, + 111,0,0,0,239,128,0,0,239,128,0,0,199,128,0,1, + 199,192,0,1,199,192,0,1,131,192,0,3,131,224,0,3, + 131,224,0,3,255,224,0,7,255,240,0,7,0,240,0,6, + 0,248,0,14,0,248,0,14,0,120,0,12,0,124,0,28, + 0,124,0,28,0,124,0,255,129,255,0,255,129,255,128,25, + 32,128,25,0,0,1,192,224,0,3,193,224,0,7,195,224, + 0,7,195,224,0,3,193,224,0,1,129,192,0,0,0,0, + 0,0,4,0,0,0,30,0,0,0,62,0,0,0,126,0, + 0,0,127,0,0,0,111,0,0,0,239,128,0,0,239,128, + 0,0,199,128,0,1,199,192,0,1,199,192,0,1,131,192, + 0,3,131,224,0,3,131,224,0,3,255,224,0,7,255,240, + 0,7,0,240,0,6,0,248,0,14,0,248,0,14,0,120, + 0,12,0,124,0,28,0,124,0,28,0,124,0,255,129,255, + 0,255,129,255,128,25,34,136,25,0,0,0,30,0,0,0, + 127,0,0,0,119,0,0,0,103,0,0,0,231,0,0,0, + 119,0,0,0,126,0,0,0,56,0,0,0,0,0,0,0, + 4,0,0,0,30,0,0,0,62,0,0,0,126,0,0,0, + 127,0,0,0,111,0,0,0,239,128,0,0,239,128,0,0, + 199,128,0,1,199,192,0,1,199,192,0,1,131,192,0,3, + 131,224,0,3,131,224,0,3,255,224,0,7,255,240,0,7, + 0,240,0,6,0,248,0,14,0,248,0,14,0,120,0,12, + 0,124,0,28,0,124,0,28,0,124,0,255,129,255,0,255, + 129,255,128,32,25,100,32,0,0,0,255,255,252,0,255,255, + 252,0,31,240,28,0,61,240,12,0,61,240,12,0,57,240, + 12,0,121,240,12,0,113,240,0,0,241,240,0,0,225,240, + 0,0,225,240,0,1,255,255,240,1,255,255,240,3,193,240, + 32,3,129,240,0,3,129,240,0,7,129,240,0,7,1,240, + 0,15,1,240,0,14,1,240,3,14,1,240,3,30,1,240, + 6,28,1,240,14,255,7,255,254,255,15,255,254,20,34,102, + 22,1,247,0,127,128,3,255,240,7,135,224,15,1,224,30, + 0,192,60,0,64,60,0,0,124,0,0,120,0,0,120,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,252,0,0,124,0,0,126,0,0,127, + 0,96,63,129,224,31,255,192,15,255,0,7,254,0,1,240, + 0,0,224,0,0,248,0,0,252,0,1,252,0,0,124,0, + 0,120,0,1,240,0,1,192,0,19,34,102,21,1,0,6, + 0,0,31,0,0,31,128,0,31,192,0,7,224,0,1,240, + 0,0,120,0,0,16,0,0,0,0,255,255,192,255,255,192, + 62,1,192,30,1,192,30,1,128,30,1,128,30,0,128,30, + 0,0,30,0,0,30,0,0,30,0,0,31,255,0,31,254, + 0,30,6,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,96,30,0,96,30,0,224,63,1,224,255, + 255,224,255,255,192,19,34,102,21,1,0,0,12,0,0,31, + 0,0,63,0,0,126,0,0,248,0,1,224,0,3,128,0, + 2,0,0,0,0,0,255,255,192,255,255,192,62,1,192,30, + 1,192,30,1,128,30,1,128,30,0,128,30,0,0,30,0, + 0,30,0,0,30,0,0,31,255,0,31,254,0,30,6,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,96,30,0,96,30,0,224,63,1,224,255,255,224,255,255, + 192,19,34,102,21,1,0,0,224,0,1,240,0,3,248,0, + 7,252,0,15,252,0,15,30,0,28,7,0,16,2,0,0, + 0,0,255,255,192,255,255,192,62,1,192,30,1,192,30,1, + 128,30,1,128,30,0,128,30,0,0,30,0,0,30,0,0, + 30,0,0,31,255,0,31,254,0,30,6,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,96,30,0, + 96,30,0,224,63,1,224,255,255,224,255,255,192,19,32,96, + 21,1,0,14,7,0,30,15,0,31,15,128,30,15,0,30, + 15,0,12,6,0,0,0,0,255,255,192,255,255,192,62,1, + 192,30,1,192,30,1,128,30,1,128,30,0,128,30,0,0, + 30,0,0,30,0,0,30,0,0,31,255,0,31,254,0,30, + 6,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,96,30,0,96,30,0,224,63,1,224,255,255,224, + 255,255,192,12,34,68,13,0,0,48,0,248,0,252,0,254, + 0,63,0,15,128,3,192,0,128,0,0,127,240,63,240,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,63,224,127,240,12,34,68, + 13,1,0,0,192,1,224,3,240,7,224,31,128,62,0,120, + 0,32,0,0,0,255,224,127,224,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,127,192,255,224,13,34,68,13,0,0,7,0,15, + 128,31,192,63,224,127,224,248,240,224,56,128,16,0,0,127, + 240,63,240,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,63,224,127, + 240,14,32,64,13,255,0,56,28,120,60,248,124,248,124,120, + 60,112,56,0,0,63,248,31,248,7,192,7,192,7,192,7, + 192,7,192,7,192,7,192,7,192,7,192,7,192,7,192,7, + 192,7,192,7,192,7,192,7,192,7,192,7,192,7,192,7, + 192,7,192,31,240,63,248,22,25,75,25,1,0,15,252,0, + 255,255,128,255,15,192,31,3,224,31,1,240,31,1,248,31, + 0,248,31,0,248,31,0,124,31,0,124,31,0,124,255,248, + 124,255,248,124,31,0,124,31,0,124,31,0,124,31,0,120, + 31,0,248,31,0,248,31,1,240,31,1,240,31,3,224,31, + 7,192,127,255,128,255,252,0,25,33,132,27,1,0,0,240, + 48,0,1,254,224,0,3,255,224,0,3,255,192,0,6,31, + 128,0,6,3,0,0,4,0,0,0,0,0,0,0,254,0, + 255,128,255,0,127,0,31,0,28,0,31,128,28,0,31,192, + 28,0,31,192,28,0,31,224,28,0,29,240,28,0,29,248, + 28,0,28,248,28,0,28,124,28,0,28,126,28,0,28,62, + 28,0,28,31,28,0,28,15,156,0,28,15,156,0,28,7, + 220,0,28,3,252,0,28,3,252,0,28,1,252,0,28,0, + 252,0,28,0,252,0,28,0,124,0,127,0,60,0,255,128, + 12,0,23,34,102,25,1,0,1,128,0,7,192,0,7,224, + 0,7,240,0,1,248,0,0,124,0,0,30,0,0,4,0, + 0,0,0,0,126,0,3,255,192,7,135,224,14,1,240,30, + 0,248,60,0,248,60,0,124,124,0,124,120,0,126,248,0, + 62,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,252,0,60,124,0,124,124,0,120,62,0,120,62, + 0,240,31,1,224,15,195,192,7,255,0,0,252,0,23,34, + 102,25,1,0,0,3,0,0,7,192,0,15,192,0,31,128, + 0,62,0,0,120,0,0,224,0,0,128,0,0,0,0,0, + 126,0,3,255,192,7,135,224,14,1,240,30,0,248,60,0, + 248,60,0,124,124,0,124,120,0,126,248,0,62,248,0,62, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,252, + 0,60,124,0,124,124,0,120,62,0,120,62,0,240,31,1, + 224,15,195,192,7,255,0,0,252,0,23,34,102,25,1,0, + 0,56,0,0,124,0,0,254,0,1,255,0,3,255,0,3, + 199,128,7,1,192,4,0,128,0,0,0,0,126,0,3,255, + 192,7,135,224,14,1,240,30,0,248,60,0,248,60,0,124, + 124,0,124,120,0,126,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,252,0,60,124,0, + 124,124,0,120,62,0,120,62,0,240,31,1,224,15,195,192, + 7,255,0,0,252,0,23,33,99,25,1,0,1,240,96,3, + 252,224,7,255,192,7,255,128,14,63,128,12,6,0,8,0, + 0,0,0,0,0,126,0,3,255,192,7,135,224,14,1,240, + 30,0,248,60,0,248,60,0,124,124,0,124,120,0,126,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,248,0, + 62,248,0,62,252,0,60,124,0,124,124,0,120,62,0,120, + 62,0,240,31,1,224,15,195,192,7,255,0,0,252,0,23, + 32,96,25,1,0,3,129,192,7,131,192,7,195,224,7,131, + 192,7,131,192,3,1,128,0,0,0,0,126,0,3,255,192, + 7,135,224,14,1,240,30,0,248,60,0,248,60,0,124,124, + 0,124,120,0,126,248,0,62,248,0,62,248,0,62,248,0, + 62,248,0,62,248,0,62,248,0,62,252,0,60,124,0,124, + 124,0,120,62,0,120,62,0,240,31,1,224,15,195,192,7, + 255,0,0,252,0,13,12,24,17,2,5,96,48,240,120,120, + 240,61,224,31,192,15,128,15,128,31,192,57,224,120,240,240, + 120,96,48,23,26,78,25,1,255,0,126,30,3,255,252,7, + 135,248,14,3,240,30,1,248,60,1,252,60,3,252,124,7, + 252,120,15,254,248,15,126,248,30,62,248,62,62,248,60,62, + 248,120,62,248,240,62,248,240,62,253,224,60,127,192,124,127, + 128,120,127,128,120,63,0,240,31,129,224,63,195,192,127,255, + 0,240,252,0,192,0,0,25,34,136,27,1,0,0,192,0, + 0,3,224,0,0,3,240,0,0,3,248,0,0,0,252,0, + 0,0,30,0,0,0,7,0,0,0,2,0,0,0,0,0, + 0,255,224,255,128,127,224,255,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,24,0,15,128,56, + 0,15,128,56,0,7,192,112,0,3,224,224,0,1,255,192, + 0,0,127,0,0,25,34,136,27,1,0,0,1,128,0,0, + 3,224,0,0,7,224,0,0,15,192,0,0,31,0,0,0, + 60,0,0,0,112,0,0,0,64,0,0,0,0,0,0,255, + 224,255,128,127,224,255,0,31,0,28,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,28,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,28,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,28,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,24,0,15,128,56,0,15, + 128,56,0,7,192,112,0,3,224,224,0,1,255,192,0,0, + 127,0,0,25,34,136,27,1,0,0,28,0,0,0,62,0, + 0,0,127,0,0,0,255,128,0,1,255,192,0,1,227,192, + 0,3,128,224,0,2,0,64,0,0,0,0,0,255,224,255, + 128,127,224,255,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,24,0,15,128,56,0,15,128,56, + 0,7,192,112,0,3,224,224,0,1,255,192,0,0,127,0, + 0,25,32,128,27,1,0,1,192,224,0,3,225,240,0,3, + 225,240,0,3,193,224,0,3,193,224,0,1,128,192,0,0, + 0,0,0,255,224,255,128,127,224,255,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,28,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,28,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,28,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,28,0,31,0,24,0,15, + 128,56,0,15,128,56,0,7,192,112,0,3,224,224,0,1, + 255,192,0,0,127,0,0,24,34,102,25,0,0,0,1,128, + 0,3,192,0,7,224,0,31,192,0,63,0,0,124,0,0, + 240,0,0,64,0,0,0,0,126,0,255,255,0,255,31,0, + 56,15,128,56,15,192,112,7,192,112,3,224,224,3,224,224, + 1,241,192,1,241,192,0,251,128,0,251,128,0,127,0,0, + 127,0,0,62,0,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,62,0,1,255,192, + 1,255,192,21,25,75,23,1,0,255,224,0,127,224,0,31, + 0,0,31,0,0,31,0,0,31,254,0,31,255,192,31,7, + 224,31,3,240,31,1,248,31,0,248,31,0,248,31,0,248, + 31,0,248,31,0,248,31,1,240,31,1,240,31,135,224,31, + 127,128,31,62,0,31,0,0,31,0,0,31,0,0,127,224, + 0,255,224,0,23,30,90,25,0,0,0,31,128,0,255,224, + 1,195,240,3,128,248,7,128,248,15,0,124,15,0,124,15, + 0,124,31,0,124,31,0,248,31,1,248,31,7,240,31,15, + 128,31,31,0,31,30,0,31,30,0,31,31,0,31,31,128, + 31,15,224,31,7,248,31,3,252,31,0,252,31,0,126,31, + 48,62,31,48,30,31,48,30,31,56,28,31,60,60,127,63, + 248,255,15,224,19,30,90,20,1,0,7,0,0,31,128,0, + 15,128,0,15,192,0,7,192,0,3,224,0,1,224,0,0, + 224,0,0,112,0,0,48,0,0,0,0,0,0,0,1,248, + 0,15,254,0,62,63,0,124,31,0,124,31,0,112,31,0, + 0,31,0,1,255,0,15,255,0,63,31,0,124,31,0,120, + 31,0,248,31,0,248,31,32,248,127,224,255,223,192,127,159, + 128,62,14,0,19,30,90,20,1,0,0,56,0,0,62,0, + 0,126,0,0,124,0,0,248,0,0,240,0,1,224,0,1, + 192,0,3,128,0,1,0,0,0,0,0,0,0,0,1,248, + 0,15,254,0,62,63,0,124,31,0,124,31,0,112,31,0, + 0,31,0,1,255,0,15,255,0,63,31,0,124,31,0,120, + 31,0,248,31,0,248,31,32,248,127,224,255,223,192,127,159, + 128,62,14,0,19,29,87,20,1,0,1,224,0,1,224,0, + 3,240,0,7,248,0,7,252,0,15,60,0,30,30,0,56, + 7,0,16,2,0,0,0,0,0,0,0,1,248,0,15,254, + 0,62,63,0,124,31,0,124,31,0,112,31,0,0,31,0, + 1,255,0,15,255,0,63,31,0,124,31,0,120,31,0,248, + 31,0,248,31,32,248,127,224,255,223,192,127,159,128,62,14, + 0,19,27,81,20,1,0,7,129,128,15,227,0,31,255,0, + 63,254,0,49,252,0,96,56,0,0,0,0,0,0,0,0, + 0,0,1,248,0,15,254,0,62,63,0,124,31,0,124,31, + 0,112,31,0,0,31,0,1,255,0,15,255,0,63,31,0, + 124,31,0,120,31,0,248,31,0,248,31,32,248,127,224,255, + 223,192,127,159,128,62,14,0,19,27,81,20,1,0,12,6, + 0,30,15,0,62,31,0,62,31,0,62,31,0,28,14,0, + 0,0,0,0,0,0,0,0,0,1,248,0,15,254,0,62, + 63,0,124,31,0,124,31,0,112,31,0,0,31,0,1,255, + 0,15,255,0,63,31,0,124,31,0,120,31,0,248,31,0, + 248,31,32,248,127,224,255,223,192,127,159,128,62,14,0,19, + 28,84,20,1,0,0,240,0,3,248,0,3,184,0,7,56, + 0,7,56,0,7,56,0,3,240,0,1,224,0,0,0,0, + 0,0,0,1,248,0,15,254,0,62,63,0,124,31,0,124, + 31,0,112,31,0,0,31,0,1,255,0,15,255,0,63,31, + 0,124,31,0,120,31,0,248,31,0,248,31,32,248,127,224, + 255,223,192,127,159,128,62,14,0,27,18,72,29,1,0,0, + 252,62,0,7,254,255,128,15,191,199,128,30,15,131,192,62, + 15,129,192,124,15,1,224,0,15,1,224,0,255,255,224,15, + 255,255,192,31,15,0,0,124,15,0,0,120,15,0,0,248, + 15,128,0,248,31,128,96,252,127,225,224,255,227,255,192,127, + 193,255,0,63,0,124,0,17,27,81,18,1,247,1,252,0, + 7,255,0,31,31,0,60,15,0,60,7,0,120,6,0,120, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,252,0,0,126,1,0,127,7,128,63,254,0,31,252,0, + 7,240,0,1,192,0,1,192,0,1,240,0,3,248,0,0, + 248,0,0,248,0,1,240,0,3,224,0,7,0,0,17,30, + 90,19,1,0,3,128,0,15,128,0,31,192,0,7,192,0, + 3,192,0,1,224,0,0,224,0,0,112,0,0,48,0,0, + 56,0,0,0,0,0,0,0,1,240,0,15,252,0,30,62, + 0,60,31,0,120,15,0,120,15,128,248,15,128,255,255,128, + 255,254,0,248,0,0,248,0,0,248,0,0,252,0,0,126, + 1,128,127,7,0,63,254,0,31,252,0,7,240,0,17,30, + 90,19,1,0,0,60,0,0,63,0,0,62,0,0,124,0, + 0,120,0,0,240,0,0,240,0,1,224,0,1,192,0,1, + 128,0,0,0,0,0,0,0,1,240,0,15,252,0,30,62, + 0,60,31,0,120,15,0,120,15,128,248,15,128,255,255,128, + 255,254,0,248,0,0,248,0,0,248,0,0,252,0,0,126, + 1,128,127,7,0,63,254,0,31,252,0,7,240,0,17,29, + 87,19,1,0,0,224,0,1,240,0,3,248,0,3,248,0, + 7,252,0,15,30,0,14,14,0,28,7,0,24,3,0,0, + 0,0,0,0,0,1,240,0,15,252,0,30,62,0,60,31, + 0,120,15,0,120,15,128,248,15,128,255,255,128,255,254,0, + 248,0,0,248,0,0,248,0,0,252,0,0,126,1,128,127, + 7,0,63,254,0,31,252,0,7,240,0,17,27,81,19,1, + 0,14,7,0,30,15,0,31,15,128,30,15,0,30,15,0, + 28,14,0,0,0,0,0,0,0,0,0,0,1,240,0,15, + 252,0,30,62,0,60,31,0,120,15,0,120,15,128,248,15, + 128,255,255,128,255,254,0,248,0,0,248,0,0,248,0,0, + 252,0,0,126,1,128,127,7,0,63,254,0,31,252,0,7, + 240,0,11,30,60,12,0,0,56,0,252,0,124,0,62,0, + 62,0,31,0,15,0,7,128,3,128,1,128,0,0,0,0, + 7,0,127,0,127,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 127,192,127,224,11,30,60,12,1,0,3,128,3,224,7,224, + 7,192,15,128,15,0,30,0,28,0,24,0,48,0,0,0, + 0,0,14,0,254,0,254,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,255,128,255,192,14,29,58,12,255,0,7,128,7,192, + 15,192,31,224,31,240,60,240,120,120,112,28,192,8,0,0, + 0,0,3,128,63,128,63,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,63,224,63,240,14,27,54,12,255,0,48,24,120,60, + 248,124,248,124,248,124,112,56,0,0,0,0,0,0,3,128, + 63,128,63,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,63,224, + 63,240,18,29,87,20,1,0,3,0,0,31,192,0,63,231, + 192,3,255,0,0,252,0,3,252,0,15,252,0,30,30,0, + 0,31,0,0,15,0,0,15,128,3,231,128,15,255,128,30, + 63,192,60,31,192,124,15,192,120,7,192,248,7,192,248,7, + 192,248,7,192,248,7,192,248,7,128,248,7,128,124,15,128, + 124,15,0,126,14,0,63,28,0,15,248,0,3,224,0,22, + 27,81,23,1,0,1,192,64,3,248,224,7,255,192,15,255, + 128,12,127,0,24,30,0,0,0,0,0,0,0,0,0,0, + 14,15,128,254,63,192,254,255,224,63,255,224,63,199,224,63, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,62,3,224,62,3,224,62,3,224,62,3,224,62,3,224, + 255,143,248,255,223,252,19,30,90,21,1,0,3,128,0,15, + 192,0,15,192,0,7,192,0,3,224,0,1,224,0,0,240, + 0,0,112,0,0,56,0,0,16,0,0,0,0,0,0,0, + 1,248,0,7,254,0,30,31,128,60,15,128,124,7,192,120, + 7,192,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,192,124,3,192,124,7,128,62,7,128,63,15,0, + 15,252,0,3,240,0,19,30,90,21,1,0,0,28,0,0, + 63,0,0,63,0,0,62,0,0,124,0,0,120,0,0,240, + 0,0,224,0,1,192,0,0,128,0,0,0,0,0,0,0, + 1,248,0,7,254,0,30,31,128,60,15,128,124,7,192,120, + 7,192,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,192,124,3,192,124,7,128,62,7,128,63,15,0, + 15,252,0,3,240,0,19,29,87,21,1,0,0,240,0,0, + 240,0,1,248,0,3,252,0,7,252,0,7,158,0,15,15, + 0,28,3,0,8,1,128,0,0,0,0,0,0,1,248,0, + 7,254,0,30,31,128,60,15,128,124,7,192,120,7,192,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 192,124,3,192,124,7,128,62,7,128,63,15,0,15,252,0, + 3,240,0,19,27,81,21,1,0,3,128,128,7,241,192,15, + 255,128,31,255,0,24,254,0,48,60,0,0,0,0,0,0, + 0,0,0,0,1,248,0,7,254,0,30,31,128,60,15,128, + 124,7,192,120,7,192,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,192,124,3,192,124,7,128,62,7, + 128,63,15,0,15,252,0,3,240,0,19,27,81,21,1,0, + 14,7,0,15,7,128,31,15,128,31,15,128,30,15,0,14, + 7,0,0,0,0,0,0,0,0,0,0,1,248,0,7,254, + 0,30,31,128,60,15,128,124,7,192,120,7,192,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,192,124, + 3,192,124,7,128,62,7,128,63,15,0,15,252,0,3,240, + 0,15,15,30,17,1,3,3,0,7,0,7,0,7,0,6, + 0,0,0,127,254,255,252,0,0,0,0,3,0,7,0,7, + 0,7,0,6,0,19,20,60,21,1,255,0,0,32,1,248, + 224,7,255,192,30,31,128,60,15,192,60,31,192,120,31,224, + 120,59,224,248,115,224,248,227,224,249,227,224,249,195,224,251, + 131,192,127,3,192,126,7,128,62,7,128,63,15,0,63,252, + 0,99,240,0,192,0,0,22,30,90,23,1,0,3,128,0, + 7,192,0,15,192,0,3,224,0,1,224,0,0,240,0,0, + 240,0,0,120,0,0,56,0,0,24,0,0,0,0,0,0, + 0,14,0,224,254,31,224,126,7,224,62,3,224,62,3,224, + 62,3,224,62,3,224,62,3,224,62,3,224,62,3,224,62, + 3,224,62,3,224,62,3,224,62,7,224,63,31,252,31,251, + 252,31,243,240,15,193,192,22,30,90,23,1,0,0,30,0, + 0,31,0,0,63,128,0,62,0,0,124,0,0,120,0,0, + 112,0,0,224,0,0,224,0,1,192,0,0,0,0,0,0, + 0,14,0,224,254,31,224,126,7,224,62,3,224,62,3,224, + 62,3,224,62,3,224,62,3,224,62,3,224,62,3,224,62, + 3,224,62,3,224,62,3,224,62,7,224,63,31,252,31,251, + 252,31,243,240,15,193,192,22,29,87,23,1,0,0,112,0, + 0,248,0,1,248,0,3,252,0,3,254,0,7,158,0,15, + 7,0,14,3,128,8,1,0,0,0,0,0,0,0,14,0, + 224,254,31,224,126,7,224,62,3,224,62,3,224,62,3,224, + 62,3,224,62,3,224,62,3,224,62,3,224,62,3,224,62, + 3,224,62,3,224,62,7,224,63,31,252,31,251,252,31,243, + 240,15,193,192,22,27,81,23,1,0,7,3,128,15,7,128, + 31,15,128,31,15,128,31,15,128,14,7,0,0,0,0,0, + 0,0,0,0,0,14,0,224,254,31,224,126,7,224,62,3, + 224,62,3,224,62,3,224,62,3,224,62,3,224,62,3,224, + 62,3,224,62,3,224,62,3,224,62,3,224,62,7,224,63, + 31,252,31,251,252,31,243,240,15,193,192,21,39,117,20,255, + 247,0,7,0,0,15,192,0,15,128,0,31,0,0,31,0, + 0,62,0,0,60,0,0,120,0,0,112,0,0,96,0,0, + 0,0,0,0,0,127,193,248,63,129,248,31,0,224,15,128, + 224,15,129,192,7,193,192,7,193,128,7,195,128,3,227,128, + 3,231,0,1,247,0,1,246,0,0,254,0,0,254,0,0, + 252,0,0,124,0,0,120,0,0,56,0,0,56,0,0,112, + 0,0,112,0,0,224,0,33,224,0,127,192,0,127,128,0, + 255,0,0,124,0,0,20,39,117,22,1,247,6,0,0,254, + 0,0,254,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,31,0,62,127,128,62,255,192,63,135,224,63,3,224,62, + 1,240,62,0,240,62,0,240,62,0,240,62,0,240,62,0, + 240,62,0,224,62,0,224,62,1,192,63,195,192,63,255,128, + 62,255,0,62,60,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,255,192,0,255,192, + 0,21,36,108,20,255,247,3,129,192,7,195,224,7,195,224, + 7,195,224,7,131,192,7,3,128,0,0,0,0,0,0,0, + 0,0,127,193,248,63,129,248,31,0,224,15,128,224,15,129, + 192,7,193,192,7,193,128,7,195,128,3,227,128,3,231,0, + 1,247,0,1,246,0,0,254,0,0,254,0,0,252,0,0, + 124,0,0,120,0,0,56,0,0,56,0,0,112,0,0,112, + 0,0,224,0,33,224,0,127,192,0,127,128,0,255,0,0, + 124,0,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--40-400-72-72-P-200-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 24 + Calculated Max Values w=18 h=38 x= 3 y=14 dx=21 dy= 0 ascent=31 len=114 + Font Bounding box w=61 h=57 x=-20 y=-14 + Calculated Min Values x= 0 y=-7 dx= 0 dy= 0 + Pure Font ascent =24 descent= 0 + X Font ascent =24 descent= 0 + Max Font ascent =31 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb25n[960] U8G_SECTION(".progmem.u8g_font_gdb25n") = { + 0,61,57,236,242,24,0,0,0,0,42,57,0,31,249,24, + 0,16,16,32,18,1,14,0,192,3,192,3,192,99,140,123, + 158,125,191,127,252,15,224,7,224,63,252,253,190,249,158,51, + 142,3,192,3,192,3,0,15,14,28,17,1,4,1,128,3, + 128,3,128,3,128,3,128,3,128,127,254,255,252,3,128,3, + 128,3,128,3,128,3,128,3,0,8,12,12,11,2,249,30, + 127,255,127,31,31,30,30,60,56,112,96,12,2,4,14,1, + 9,127,240,255,240,6,6,6,11,3,255,56,124,252,252,252, + 120,17,38,114,19,1,249,0,1,128,0,7,128,0,7,128, + 0,15,0,0,15,0,0,15,0,0,30,0,0,30,0,0, + 28,0,0,60,0,0,60,0,0,120,0,0,120,0,0,120, + 0,0,240,0,0,240,0,0,224,0,1,224,0,1,224,0, + 3,192,0,3,192,0,3,192,0,7,128,0,7,128,0,7, + 0,0,15,0,0,15,0,0,30,0,0,30,0,0,30,0, + 0,60,0,0,60,0,0,56,0,0,120,0,0,120,0,0, + 240,0,0,240,0,0,192,0,0,18,24,72,20,1,0,3, + 240,0,7,252,0,30,62,0,28,31,0,60,15,0,120,15, + 128,120,15,128,120,7,128,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,120, + 7,128,124,7,128,124,15,128,60,15,0,62,14,0,31,30, + 0,15,248,0,3,224,0,16,24,48,20,2,0,0,96,3, + 224,31,224,255,224,99,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,7,240,127,255,127,255,16,24,48, + 20,2,0,3,248,15,252,60,62,124,63,120,31,248,31,112, + 31,0,31,0,62,0,60,0,124,0,120,0,240,1,224,3, + 224,3,192,7,128,15,1,30,3,60,3,120,3,127,255,255, + 255,255,255,16,24,48,20,2,0,7,240,31,248,60,124,120, + 62,248,62,248,62,64,62,0,60,0,124,0,240,7,240,7, + 252,0,254,0,62,0,63,0,31,0,31,0,31,0,31,0, + 30,192,62,240,124,127,248,15,192,17,24,72,20,1,0,0, + 12,0,0,124,0,0,124,0,0,252,0,1,252,0,1,252, + 0,3,188,0,7,188,0,7,60,0,14,60,0,14,60,0, + 28,60,0,56,60,0,56,60,0,112,60,0,255,255,128,255, + 255,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,3,255,128,3,255,128,17,24,72,20,1,0,31,255,0, + 31,255,128,31,254,0,31,252,0,24,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,63,240,0,63,252,0,48,126, + 0,96,31,0,0,31,0,0,15,128,0,15,128,0,15,128, + 0,15,128,0,15,128,0,31,0,96,31,0,248,126,0,63, + 252,0,7,224,0,17,24,72,20,2,0,0,14,0,0,126, + 0,1,240,0,7,192,0,15,128,0,30,0,0,62,0,0, + 60,0,0,124,0,0,121,248,0,127,254,0,254,63,0,252, + 31,0,248,15,128,248,15,128,248,15,128,248,15,128,248,15, + 128,124,15,128,124,15,0,60,31,0,31,30,0,15,252,0, + 3,240,0,17,24,72,20,2,0,127,255,128,127,255,0,255, + 255,0,255,255,0,224,6,0,192,14,0,128,12,0,0,28, + 0,0,28,0,0,56,0,0,56,0,0,112,0,0,112,0, + 0,240,0,0,224,0,1,224,0,1,192,0,3,192,0,3, + 192,0,7,128,0,7,128,0,15,128,0,31,0,0,28,0, + 0,17,24,72,21,2,0,3,240,0,15,252,0,28,62,0, + 24,31,0,56,31,0,56,31,0,56,31,0,60,62,0,63, + 60,0,31,248,0,15,240,0,7,252,0,14,254,0,62,63, + 0,124,31,128,120,31,128,248,15,128,248,15,128,248,15,128, + 248,15,0,124,31,0,126,62,0,63,252,0,7,224,0,17, + 25,75,20,2,255,3,240,0,15,252,0,30,62,0,60,30, + 0,120,31,0,120,31,0,248,15,128,248,15,128,248,15,128, + 248,15,128,248,15,128,124,31,128,126,63,128,63,255,128,15, + 207,0,0,15,0,0,31,0,0,30,0,0,62,0,0,124, + 0,0,248,0,1,240,0,15,192,0,63,0,0,56,0,0 + }; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--40-400-72-72-P-200-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=34 h=41 x= 3 y=20 dx=35 dy= 0 ascent=33 len=136 + Font Bounding box w=61 h=57 x=-20 y=-14 + Calculated Min Values x=-6 y=-9 dx= 0 dy= 0 + Pure Font ascent =25 descent=-9 + X Font ascent =31 descent=-9 + Max Font ascent =33 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb25r[6779] U8G_SECTION(".progmem.u8g_font_gdb25r") = { + 0,61,57,236,242,25,7,167,18,92,32,127,247,33,247,31, + 247,0,0,0,10,0,0,6,30,30,12,3,255,12,60,252, + 252,252,124,120,120,120,120,120,120,120,120,120,120,120,120,56, + 48,48,32,0,0,56,124,252,252,252,120,13,13,26,19,3, + 16,24,56,248,248,248,248,248,248,248,248,248,248,248,240,112, + 240,112,112,112,112,112,112,112,112,112,112,19,23,69,20,1, + 2,0,97,192,0,227,128,0,227,128,0,195,128,1,195,0, + 1,199,0,31,255,224,31,255,224,35,142,0,3,142,0,3, + 14,0,7,12,0,7,28,0,7,28,0,127,255,128,255,255, + 128,14,56,0,12,56,0,28,48,0,28,112,0,24,112,0, + 24,112,0,32,224,0,17,30,90,21,2,253,0,192,0,1, + 192,0,1,192,0,3,240,0,31,254,0,63,255,128,113,223, + 0,225,207,0,225,199,0,225,194,0,241,192,0,255,192,0, + 127,192,0,63,248,0,15,252,0,3,254,0,1,255,0,1, + 223,128,1,207,128,193,199,128,193,199,128,225,199,128,241,207, + 0,253,207,0,255,254,0,63,252,0,7,224,0,1,192,0, + 1,192,0,1,128,0,26,25,100,28,1,0,0,0,3,0, + 15,128,15,0,63,192,14,0,113,224,28,0,112,224,56,0, + 224,112,120,0,224,112,112,0,224,112,224,0,224,113,192,0, + 224,115,192,0,96,103,128,0,112,103,0,0,48,206,62,0, + 31,28,99,0,0,60,195,128,0,56,193,128,0,113,193,192, + 0,225,193,192,1,225,193,192,1,193,193,192,3,129,193,192, + 7,0,225,128,15,0,227,128,14,0,127,0,28,0,62,0, + 27,28,112,28,1,0,0,126,0,0,1,255,128,0,3,143, + 128,0,7,7,192,0,7,7,192,0,15,7,192,0,15,7, + 192,0,15,15,128,0,15,159,0,0,15,191,0,0,7,254, + 0,0,7,248,0,0,7,240,0,0,15,240,255,224,31,241, + 255,192,63,248,61,128,125,252,60,0,124,254,28,0,248,254, + 28,0,248,127,28,0,248,63,184,0,248,31,248,0,248,15, + 240,0,252,7,248,0,124,3,252,0,63,7,255,192,31,254, + 127,128,7,240,28,0,5,13,13,11,3,16,24,248,248,248, + 248,248,248,112,112,112,112,112,112,11,37,74,13,2,250,0, + 64,1,224,3,192,7,128,15,0,15,0,30,0,30,0,60, + 0,60,0,124,0,124,0,120,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,120, + 0,124,0,124,0,124,0,60,0,62,0,30,0,31,0,15, + 0,7,128,3,192,1,224,0,64,11,37,74,13,0,250,64, + 0,240,0,120,0,60,0,30,0,31,0,15,0,15,128,7, + 128,7,192,7,192,7,192,7,192,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,192,7, + 192,7,192,7,192,7,128,15,128,15,0,15,0,30,0,30, + 0,60,0,120,0,240,0,64,0,16,16,32,18,1,14,0, + 192,3,192,3,192,99,140,123,158,125,191,127,252,15,224,7, + 224,63,252,253,190,249,158,51,142,3,192,3,192,3,0,15, + 14,28,17,1,4,1,128,3,128,3,128,3,128,3,128,3, + 128,127,254,255,252,3,128,3,128,3,128,3,128,3,128,3, + 0,8,12,12,11,2,249,30,127,255,127,31,31,30,30,60, + 56,112,96,12,2,4,14,1,9,127,240,255,240,6,6,6, + 11,3,255,56,124,252,252,252,120,17,38,114,19,1,249,0, + 1,128,0,7,128,0,7,128,0,15,0,0,15,0,0,15, + 0,0,30,0,0,30,0,0,28,0,0,60,0,0,60,0, + 0,120,0,0,120,0,0,120,0,0,240,0,0,240,0,0, + 224,0,1,224,0,1,224,0,3,192,0,3,192,0,3,192, + 0,7,128,0,7,128,0,7,0,0,15,0,0,15,0,0, + 30,0,0,30,0,0,30,0,0,60,0,0,60,0,0,56, + 0,0,120,0,0,120,0,0,240,0,0,240,0,0,192,0, + 0,18,24,72,20,1,0,3,240,0,7,252,0,30,62,0, + 28,31,0,60,15,0,120,15,128,120,15,128,120,7,128,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,248,7,192,248,7,192,120,7,128,124,7,128,124,15,128, + 60,15,0,62,14,0,31,30,0,15,248,0,3,224,0,16, + 24,48,20,2,0,0,96,3,224,31,224,255,224,99,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,7, + 240,127,255,127,255,16,24,48,20,2,0,3,248,15,252,60, + 62,124,63,120,31,248,31,112,31,0,31,0,62,0,60,0, + 124,0,120,0,240,1,224,3,224,3,192,7,128,15,1,30, + 3,60,3,120,3,127,255,255,255,255,255,16,24,48,20,2, + 0,7,240,31,248,60,124,120,62,248,62,248,62,64,62,0, + 60,0,124,0,240,7,240,7,252,0,254,0,62,0,63,0, + 31,0,31,0,31,0,31,0,30,192,62,240,124,127,248,15, + 192,17,24,72,20,1,0,0,12,0,0,124,0,0,124,0, + 0,252,0,1,252,0,1,252,0,3,188,0,7,188,0,7, + 60,0,14,60,0,14,60,0,28,60,0,56,60,0,56,60, + 0,112,60,0,255,255,128,255,255,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,3,255,128,3,255,128,17, + 24,72,20,1,0,31,255,0,31,255,128,31,254,0,31,252, + 0,24,0,0,56,0,0,56,0,0,56,0,0,56,0,0, + 63,240,0,63,252,0,48,126,0,96,31,0,0,31,0,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,31, + 0,96,31,0,248,126,0,63,252,0,7,224,0,17,24,72, + 20,2,0,0,14,0,0,126,0,1,240,0,7,192,0,15, + 128,0,30,0,0,62,0,0,60,0,0,124,0,0,121,248, + 0,127,254,0,254,63,0,252,31,0,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,124,15,128,124,15,0,60, + 31,0,31,30,0,15,252,0,3,240,0,17,24,72,20,2, + 0,127,255,128,127,255,0,255,255,0,255,255,0,224,6,0, + 192,14,0,128,12,0,0,28,0,0,28,0,0,56,0,0, + 56,0,0,112,0,0,112,0,0,240,0,0,224,0,1,224, + 0,1,192,0,3,192,0,3,192,0,7,128,0,7,128,0, + 15,128,0,31,0,0,28,0,0,17,24,72,21,2,0,3, + 240,0,15,252,0,28,62,0,24,31,0,56,31,0,56,31, + 0,56,31,0,60,62,0,63,60,0,31,248,0,15,240,0, + 7,252,0,14,254,0,62,63,0,124,31,128,120,31,128,248, + 15,128,248,15,128,248,15,128,248,15,0,124,31,0,126,62, + 0,63,252,0,7,224,0,17,25,75,20,2,255,3,240,0, + 15,252,0,30,62,0,60,30,0,120,31,0,120,31,0,248, + 15,128,248,15,128,248,15,128,248,15,128,248,15,128,124,31, + 128,126,63,128,63,255,128,15,207,0,0,15,0,0,31,0, + 0,30,0,0,62,0,0,124,0,0,248,0,1,240,0,15, + 192,0,63,0,0,56,0,0,6,19,19,11,3,255,56,124, + 252,252,252,120,0,0,0,0,0,0,0,56,124,252,252,252, + 120,8,26,26,11,2,249,8,62,126,126,126,124,0,0,0, + 0,0,0,0,0,30,127,255,127,31,31,30,30,60,56,112, + 96,16,13,26,18,1,5,0,3,0,31,0,255,3,252,31, + 224,127,128,252,0,254,0,127,192,15,248,1,255,0,63,0, + 6,16,8,16,18,1,7,127,255,255,255,0,0,0,0,0, + 0,0,0,127,255,255,255,16,13,26,18,1,5,112,0,252, + 0,255,128,31,240,3,254,0,127,0,63,0,255,7,248,63, + 224,127,0,248,0,192,0,15,30,60,18,1,255,7,240,31, + 248,60,124,120,126,248,62,248,62,248,62,224,62,0,62,0, + 124,0,124,0,248,0,240,1,240,1,224,1,192,3,192,3, + 128,3,128,3,128,3,128,0,0,0,0,0,0,3,128,7, + 192,15,192,15,192,15,192,7,128,31,34,136,35,2,248,0, + 7,248,0,0,63,255,0,0,255,255,192,1,248,15,224,3, + 192,1,240,7,128,0,248,15,0,0,120,30,0,0,60,60, + 3,195,60,56,15,238,28,120,30,126,30,120,60,62,14,112, + 120,62,14,240,120,62,14,240,248,62,14,240,248,62,14,240, + 248,62,14,240,248,62,14,240,248,62,12,240,248,62,28,240, + 252,62,28,248,124,126,56,120,127,255,240,120,127,191,224,124, + 63,159,192,60,30,15,0,62,0,0,0,31,0,0,0,31, + 128,0,48,15,224,0,240,7,248,7,224,1,255,255,192,0, + 127,255,0,0,15,248,0,25,25,100,25,0,0,0,4,0, + 0,0,30,0,0,0,62,0,0,0,126,0,0,0,127,0, + 0,0,111,0,0,0,239,128,0,0,239,128,0,0,199,128, + 0,1,199,192,0,1,199,192,0,1,131,192,0,3,131,224, + 0,3,131,224,0,3,255,224,0,7,255,240,0,7,0,240, + 0,6,0,248,0,14,0,248,0,14,0,120,0,12,0,124, + 0,28,0,124,0,28,0,124,0,255,129,255,0,255,129,255, + 128,22,25,75,24,0,0,15,254,0,255,255,128,223,15,224, + 31,3,240,31,1,240,31,1,240,31,1,240,31,1,240,31, + 1,224,31,3,224,31,15,128,31,255,0,31,255,224,31,3, + 240,31,1,248,31,0,248,31,0,124,31,0,124,31,0,124, + 31,0,124,31,0,124,31,0,248,31,3,240,127,255,224,255, + 255,0,20,25,75,22,1,0,0,127,128,3,255,240,7,135, + 224,15,1,224,30,0,192,60,0,64,60,0,0,124,0,0, + 120,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,252,0,0,124,0,0,124,0, + 0,126,0,32,63,0,112,31,193,224,15,255,192,7,255,0, + 1,252,0,22,25,75,25,1,0,15,252,0,255,255,128,255, + 15,192,31,3,224,31,1,240,31,1,248,31,0,248,31,0, + 248,31,0,124,31,0,124,31,0,124,31,0,124,31,0,124, + 31,0,124,31,0,124,31,0,124,31,0,120,31,0,248,31, + 0,248,31,1,240,31,1,240,31,3,224,31,7,192,127,255, + 128,255,252,0,19,25,75,21,1,0,255,255,192,255,255,192, + 62,1,192,30,1,192,30,1,128,30,1,128,30,0,128,30, + 0,0,30,0,0,30,0,0,30,0,0,31,255,0,31,254, + 0,30,6,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,96,30,0,96,30,0,224,63,1,224,255, + 255,224,255,255,192,18,25,75,20,1,0,255,255,192,255,255, + 192,62,1,192,30,1,192,30,1,192,30,0,192,30,0,128, + 30,0,0,30,0,0,30,0,0,30,0,0,31,254,0,31, + 254,0,30,4,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,62,0,0, + 255,192,0,255,224,0,22,25,75,24,1,0,0,127,128,1, + 255,240,7,131,240,15,1,224,30,0,224,60,0,64,60,0, + 0,124,0,0,120,0,0,248,0,0,248,0,0,248,0,0, + 248,15,252,248,15,252,248,1,240,248,1,240,252,1,240,124, + 1,240,124,1,240,126,1,240,63,1,240,31,129,240,15,255, + 192,7,255,128,0,252,0,25,25,100,27,1,0,255,227,255, + 128,127,227,255,128,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,31,255,252,0,31,255,252, + 0,31,0,124,0,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,127,195,255,128,255,227,255, + 128,11,25,50,13,1,0,255,224,127,224,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,127,192,255,224,18,33,99,13,251,248,3, + 255,192,1,255,128,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,60,0,0,60,0, + 0,56,0,16,120,0,56,112,0,127,224,0,255,128,0,62, + 0,0,24,25,75,25,0,0,255,227,254,127,193,254,31,0, + 240,31,1,224,31,3,192,31,7,128,31,15,0,31,14,0, + 31,28,0,31,60,0,31,120,0,31,240,0,31,248,0,31, + 124,0,31,60,0,31,62,0,31,31,0,31,15,128,31,7, + 192,31,3,224,31,3,240,31,1,248,31,0,255,127,224,127, + 255,224,60,20,25,75,20,0,0,255,224,0,127,224,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,48,31,0,96,31,0,96,31,128,224,127,255, + 224,255,255,224,31,25,100,34,1,0,255,0,1,254,127,0, + 1,254,31,128,1,240,31,128,3,240,31,192,3,240,31,192, + 7,240,31,192,7,240,31,224,14,240,29,224,14,240,29,240, + 30,240,28,240,28,240,28,248,28,240,28,248,56,240,28,124, + 56,248,28,124,112,248,28,60,112,248,28,62,224,248,28,30, + 224,248,28,31,224,248,28,31,192,248,28,15,192,248,28,15, + 128,248,28,7,128,248,255,7,7,254,255,3,7,254,25,25, + 100,27,1,0,254,0,255,128,255,0,127,0,31,0,28,0, + 31,128,28,0,31,192,28,0,31,192,28,0,31,224,28,0, + 29,240,28,0,29,248,28,0,28,248,28,0,28,124,28,0, + 28,126,28,0,28,62,28,0,28,31,28,0,28,15,156,0, + 28,15,156,0,28,7,220,0,28,3,252,0,28,3,252,0, + 28,1,252,0,28,0,252,0,28,0,252,0,28,0,124,0, + 127,0,60,0,255,128,12,0,23,25,75,25,1,0,0,126, + 0,3,255,192,7,135,224,14,1,240,30,0,248,60,0,248, + 60,0,124,124,0,124,120,0,126,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,252,0, + 60,124,0,124,124,0,120,62,0,120,62,0,240,31,1,224, + 15,195,192,7,255,0,0,252,0,21,25,75,23,1,0,15, + 254,0,255,255,192,255,7,224,31,3,240,31,1,248,31,0, + 248,31,0,248,31,0,248,31,0,248,31,0,248,31,1,240, + 31,1,240,31,135,224,31,127,128,31,62,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,127,224,0,255,224,0,27,31,124,25,1,250, + 0,126,0,0,3,255,192,0,7,135,224,0,14,1,240,0, + 30,0,248,0,60,0,248,0,60,0,124,0,124,0,124,0, + 120,0,124,0,248,0,62,0,248,0,62,0,248,0,62,0, + 248,0,62,0,248,0,62,0,248,0,62,0,248,0,62,0, + 252,0,60,0,124,0,124,0,124,0,120,0,62,0,120,0, + 62,0,240,0,31,1,224,0,15,195,192,0,7,255,128,0, + 0,255,0,0,0,7,224,0,0,1,248,96,0,0,255,224, + 0,0,127,192,0,0,31,128,0,0,7,0,23,25,75,24, + 1,0,15,252,0,255,255,128,255,15,192,31,7,192,31,3, + 224,31,3,224,31,3,224,31,3,224,31,3,224,31,7,192, + 31,7,128,31,255,0,31,254,0,31,124,0,31,30,0,31, + 15,0,31,15,0,31,7,128,31,7,192,31,3,224,31,3, + 224,31,1,240,31,1,254,127,192,254,255,224,248,17,25,75, + 21,2,0,3,252,0,31,255,0,60,63,0,112,14,0,240, + 6,0,240,0,0,248,0,0,252,0,0,254,0,0,127,128, + 0,63,224,0,31,248,0,7,254,0,1,255,0,0,127,0, + 0,31,128,0,15,128,0,7,128,192,7,128,192,7,128,224, + 7,0,240,14,0,252,28,0,255,248,0,31,224,0,23,25, + 75,23,0,0,127,255,252,127,255,254,96,124,14,224,124,12, + 192,124,12,192,124,12,192,124,12,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,0,124,0,0,124,0,3,255,128,3,255,128,25, + 25,100,27,1,0,255,224,255,128,127,224,255,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,24, + 0,15,128,56,0,15,128,56,0,7,192,112,0,3,224,224, + 0,1,255,192,0,0,127,0,0,26,25,100,27,0,0,255, + 192,63,192,127,192,63,192,31,0,14,0,31,0,14,0,15, + 128,28,0,15,128,28,0,15,128,28,0,7,192,56,0,7, + 192,56,0,3,224,48,0,3,224,112,0,3,224,112,0,1, + 240,224,0,1,240,224,0,0,240,224,0,0,249,192,0,0, + 249,192,0,0,125,192,0,0,127,128,0,0,63,128,0,0, + 63,0,0,0,63,0,0,0,31,0,0,0,30,0,0,0, + 8,0,0,34,25,125,34,0,0,255,192,224,127,192,127,128, + 224,63,192,30,0,224,14,0,31,1,240,14,0,31,1,240, + 12,0,15,1,248,28,0,15,3,248,28,0,15,131,248,28, + 0,15,131,252,28,0,7,135,60,24,0,7,135,60,56,0, + 7,134,62,56,0,7,206,30,56,0,3,206,31,56,0,3, + 204,15,48,0,3,220,15,112,0,3,252,15,240,0,3,248, + 7,240,0,1,248,7,224,0,1,248,7,224,0,1,240,3, + 224,0,1,240,3,224,0,0,240,1,224,0,0,224,1,192, + 0,0,192,1,128,0,25,25,100,25,0,0,127,225,255,0, + 127,225,255,0,31,128,124,0,15,128,112,0,15,192,240,0, + 7,224,224,0,3,225,192,0,1,243,192,0,1,251,128,0, + 0,255,0,0,0,127,0,0,0,126,0,0,0,62,0,0, + 0,127,0,0,0,127,128,0,0,239,192,0,1,231,192,0, + 1,195,224,0,3,131,240,0,7,129,240,0,7,0,248,0, + 14,0,252,0,30,0,254,0,255,131,255,128,255,131,255,128, + 24,25,75,25,0,0,126,0,255,255,0,255,31,0,56,15, + 128,56,15,192,112,7,192,112,3,224,224,3,224,224,1,241, + 192,1,241,192,0,251,128,0,251,128,0,127,0,0,127,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,1,255,192,1,255, + 192,19,25,75,22,1,0,63,255,224,63,255,224,120,7,192, + 112,15,192,96,15,128,96,31,128,32,63,0,0,62,0,0, + 126,0,0,124,0,0,252,0,1,248,0,1,240,0,3,240, + 0,3,224,0,7,224,0,15,192,0,15,128,0,31,128,32, + 31,0,96,63,0,96,126,0,96,124,0,224,255,255,224,255, + 255,224,11,37,74,14,2,250,255,224,255,224,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,255,224, + 255,224,17,38,114,19,1,249,192,0,0,240,0,0,112,0, + 0,112,0,0,120,0,0,56,0,0,60,0,0,60,0,0, + 28,0,0,30,0,0,30,0,0,14,0,0,15,0,0,7, + 0,0,7,128,0,7,128,0,3,128,0,3,192,0,3,192, + 0,1,192,0,1,224,0,0,224,0,0,224,0,0,240,0, + 0,112,0,0,120,0,0,120,0,0,56,0,0,60,0,0, + 60,0,0,28,0,0,30,0,0,14,0,0,15,0,0,15, + 0,0,7,0,0,7,128,0,1,128,10,37,74,13,1,250, + 255,192,255,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,255,192,255,192,16,19,38,20,2,11, + 0,128,3,128,3,192,3,192,7,224,6,224,14,224,12,112, + 12,112,28,120,24,56,24,56,48,28,48,28,112,28,96,14, + 96,14,224,7,128,6,17,2,6,19,1,251,127,255,128,255, + 255,128,9,10,20,13,0,20,56,0,248,0,252,0,124,0, + 62,0,30,0,15,0,7,0,3,128,1,0,19,18,54,20, + 1,0,1,248,0,15,254,0,62,63,0,124,31,0,124,31, + 0,112,31,0,0,31,0,1,255,0,15,255,0,63,31,0, + 124,31,0,120,31,0,248,31,0,248,31,32,248,127,224,255, + 223,192,127,159,128,62,14,0,20,30,90,21,0,0,6,0, + 0,254,0,0,254,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,31,0,62,127,192,63,255,192,63,199,224,63,1, + 224,62,1,240,62,0,240,62,0,240,62,0,240,62,0,240, + 62,0,240,62,0,224,62,1,224,62,1,192,63,131,128,63, + 255,0,15,252,0,1,240,0,16,18,36,18,1,0,1,252, + 7,255,31,31,60,15,60,7,120,6,120,0,248,0,248,0, + 248,0,248,0,248,0,124,0,126,3,63,7,63,254,15,252, + 3,240,21,30,90,22,1,0,0,1,192,0,63,192,0,63, + 192,0,7,192,0,7,192,0,7,192,0,7,192,0,7,192, + 0,7,192,0,7,192,0,7,192,0,7,192,3,247,192,15, + 255,192,30,31,192,60,15,192,124,7,192,120,7,192,248,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,252,7,192, + 252,15,192,126,31,192,127,255,248,63,247,248,31,231,224,7, + 131,128,17,18,54,19,1,0,1,240,0,15,252,0,30,62, + 0,60,31,0,120,15,0,120,15,128,248,15,128,255,255,128, + 255,254,0,248,0,0,248,0,0,248,0,0,252,0,0,126, + 1,128,127,7,0,63,254,0,31,252,0,7,240,0,17,29, + 87,14,0,0,0,63,0,0,255,128,3,143,0,7,134,0, + 7,0,0,15,0,0,15,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,127,252,0,255,248,0,31,16,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,127,240,0,255,240,0,21,27,81,22,0, + 247,1,248,24,15,255,248,30,31,240,60,15,128,124,7,192, + 124,7,192,124,7,192,124,7,192,62,7,128,63,15,0,31, + 254,0,3,248,0,7,128,0,15,128,0,31,192,0,31,255, + 0,31,255,224,7,255,240,30,255,248,124,3,248,120,0,248, + 248,0,248,248,0,240,252,1,224,127,3,192,31,255,0,3, + 248,0,22,30,90,23,1,0,6,0,0,254,0,0,254,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,15,128,62, + 63,192,62,127,224,62,255,224,63,199,224,63,3,224,62,3, + 224,62,3,224,62,3,224,62,3,224,62,3,224,62,3,224, + 62,3,224,62,3,224,62,3,224,62,3,224,255,143,248,255, + 223,252,10,27,54,12,1,0,30,0,63,0,63,0,63,0, + 30,0,0,0,0,0,0,0,0,0,14,0,254,0,254,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,255,128,255,192,15,36, + 72,11,250,247,0,60,0,126,0,126,0,126,0,60,0,0, + 0,0,0,0,0,0,0,28,3,252,3,252,0,124,0,124, + 0,124,0,124,0,124,0,124,0,124,0,124,0,124,0,124, + 0,124,0,124,0,124,0,124,0,124,0,124,0,124,0,120, + 0,120,32,240,120,224,255,192,255,128,60,0,21,30,90,22, + 1,0,6,0,0,254,0,0,254,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,15,240,62,7,240,62,7,128,62, + 15,0,62,62,0,62,120,0,62,240,0,63,224,0,63,240, + 0,62,248,0,62,124,0,62,62,0,62,31,0,62,31,128, + 62,15,192,62,7,224,255,131,248,255,129,224,10,30,60,12, + 1,0,6,0,254,0,254,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,255,128,255,192,34,18, + 90,34,0,0,6,15,192,248,0,255,63,227,252,0,255,127, + 255,254,0,31,227,252,126,0,31,129,248,62,0,31,1,240, + 62,0,31,1,240,62,0,31,1,240,62,0,31,1,240,62, + 0,31,1,240,62,0,31,1,240,62,0,31,1,240,62,0, + 31,1,240,62,0,31,1,240,62,0,31,1,240,62,0,31, + 1,240,62,0,127,199,252,255,128,255,199,252,255,192,22,18, + 54,23,1,0,14,15,128,254,63,192,254,255,224,63,255,224, + 63,199,224,63,3,224,62,3,224,62,3,224,62,3,224,62, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,62,3,224,255,143,248,255,223,252,19,18,54,21,1,0, + 1,248,0,7,254,0,30,31,128,60,15,128,124,7,192,120, + 7,192,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,192,124,3,192,124,7,128,62,7,128,63,15,0, + 15,252,0,3,240,0,20,27,81,22,1,247,14,31,0,254, + 127,128,254,255,192,63,135,224,63,3,224,62,1,240,62,0, + 240,62,0,240,62,0,240,62,0,240,62,0,240,62,0,224, + 62,0,224,62,1,192,63,195,192,63,255,128,62,255,0,62, + 60,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,255,192,0,255,192,0,21,27,81, + 22,1,247,1,240,64,7,252,224,14,31,192,60,15,192,60, + 7,192,120,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,248,7,192,252,7,192,252,15,192,126,31,192,127,255,192, + 63,247,192,31,231,192,7,135,192,0,7,192,0,7,192,0, + 7,192,0,7,192,0,7,192,0,7,192,0,7,192,0,63, + 240,0,63,248,16,18,36,18,1,0,14,30,254,127,254,255, + 63,255,63,207,31,135,31,6,30,6,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,62,0,255,192,255,224,14,18, + 36,17,2,0,15,192,63,248,120,248,240,112,240,48,248,48, + 254,0,127,128,63,224,15,248,3,248,192,252,192,124,224,60, + 224,60,248,120,255,240,63,192,15,25,50,15,0,0,3,0, + 7,0,15,0,31,0,31,0,31,0,31,0,127,254,255,252, + 31,8,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,140,31,254,31,248,15,224,7,128, + 22,18,54,23,1,0,14,0,224,254,31,224,126,7,224,62, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,62,3,224,62,3,224,62,3,224,62,3,224,62,7,224, + 63,31,252,31,251,252,31,243,240,15,193,192,20,18,54,20, + 0,0,255,131,240,127,3,240,62,1,192,31,1,192,31,1, + 128,15,3,128,15,131,0,15,135,0,7,199,0,7,206,0, + 3,238,0,3,236,0,1,252,0,1,252,0,0,248,0,0, + 248,0,0,240,0,0,96,0,28,18,72,29,0,0,255,131, + 3,240,127,3,129,240,62,3,128,192,30,7,193,192,31,7, + 193,192,31,15,193,192,15,15,227,128,15,157,227,128,15,157, + 243,128,7,153,243,0,7,248,255,0,7,240,255,0,3,240, + 126,0,3,240,126,0,3,224,62,0,1,224,60,0,1,192, + 28,0,1,128,24,0,21,18,54,21,0,0,255,199,240,255, + 199,240,63,131,192,15,131,128,15,199,0,7,238,0,3,252, + 0,1,248,0,1,248,0,0,252,0,1,254,0,3,190,0, + 7,31,0,6,31,128,12,15,192,28,7,224,127,31,248,255, + 31,248,21,27,81,20,255,247,127,193,248,63,129,248,31,0, + 224,15,128,224,15,129,192,7,193,192,7,193,128,7,195,128, + 3,227,128,3,231,0,1,247,0,1,246,0,0,254,0,0, + 254,0,0,252,0,0,124,0,0,120,0,0,56,0,0,56, + 0,0,112,0,0,112,0,0,224,0,33,224,0,127,192,0, + 127,128,0,255,0,0,124,0,0,16,18,36,19,1,0,63, + 255,63,255,112,62,112,126,96,124,96,248,1,248,1,240,3, + 224,7,224,7,192,15,128,31,129,31,3,62,3,124,3,127, + 255,255,255,11,37,74,14,2,250,0,96,1,224,3,192,7, + 128,15,0,31,0,31,0,31,0,31,0,31,0,31,128,15, + 128,15,128,15,128,15,128,15,0,31,0,62,0,252,0,255, + 0,31,0,15,128,15,128,15,128,15,128,15,128,31,128,31, + 0,31,0,31,0,31,0,31,0,15,0,15,128,7,192,1, + 224,0,96,3,41,41,9,3,248,96,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,192,11,37,74,14,1,250,192,0,240,0,124,0,62,0, + 30,0,31,0,31,0,31,0,31,0,31,0,63,0,62,0, + 62,0,62,0,62,0,62,0,31,0,31,224,7,224,15,128, + 31,0,30,0,62,0,62,0,62,0,62,0,63,0,31,0, + 31,0,31,0,31,0,31,0,30,0,60,0,120,0,240,0, + 192,0,18,6,18,20,1,9,15,0,192,31,192,128,63,225, + 0,99,255,0,192,254,0,128,56,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--48-480-72-72-P-238-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 30, '1' Height: 29 + Calculated Max Values w=41 h=49 x= 5 y=27 dx=42 dy= 0 ascent=42 len=210 + Font Bounding box w=74 h=69 x=-24 y=-17 + Calculated Min Values x=-7 y=-13 dx= 0 dy= 0 + Pure Font ascent =30 descent=-11 + X Font ascent =38 descent=-11 + Max Font ascent =42 descent=-13 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb30[19508] U8G_SECTION(".progmem.u8g_font_gdb30") = { + 0,74,69,232,239,30,10,50,24,78,32,255,245,42,243,38, + 245,0,0,0,12,0,0,8,36,36,15,3,255,6,31,127, + 126,126,126,126,126,126,126,62,62,62,62,62,62,62,60,60, + 60,60,60,60,28,28,24,0,0,0,62,127,255,255,255,254, + 124,16,16,32,23,3,19,14,3,126,31,254,63,254,63,124, + 63,124,63,124,63,124,63,124,30,124,30,124,30,60,30,60, + 30,56,30,56,30,56,14,22,27,81,24,2,3,0,56,48, + 0,120,112,0,112,240,0,112,224,0,240,224,0,225,224,0, + 225,192,31,255,252,31,255,252,63,255,252,3,195,128,3,195, + 128,3,135,128,3,135,0,7,135,0,7,135,0,255,255,240, + 255,255,240,255,255,224,14,30,0,14,28,0,30,28,0,28, + 60,0,28,60,0,28,56,0,60,56,0,56,112,0,20,36, + 108,24,2,252,0,48,0,0,112,0,0,112,0,0,112,0, + 3,255,0,15,255,224,63,255,240,124,119,240,120,115,224,240, + 113,224,240,112,192,248,112,0,252,112,0,255,112,0,127,240, + 0,63,248,0,31,254,0,7,255,128,0,255,192,0,127,224, + 0,119,224,0,113,240,0,113,240,224,112,240,224,112,240,240, + 112,240,248,112,224,252,113,224,255,119,192,255,255,192,63,255, + 0,7,252,0,0,112,0,0,112,0,0,112,0,0,96,0, + 31,30,120,34,2,0,0,0,0,16,7,192,0,240,31,224, + 1,224,56,240,3,192,120,120,3,128,112,120,7,128,240,60, + 15,0,240,60,30,0,240,60,28,0,240,60,60,0,240,60, + 120,0,240,60,240,0,112,57,224,0,120,57,224,0,56,115, + 192,0,31,231,131,224,15,143,12,48,0,15,24,56,0,30, + 56,28,0,60,56,28,0,120,120,30,0,120,120,30,0,240, + 120,30,1,224,120,30,3,192,120,30,3,192,120,28,7,128, + 60,60,15,0,30,56,30,0,15,240,28,0,7,192,31,34, + 136,33,2,0,0,31,128,0,0,127,224,0,0,227,240,0, + 1,225,248,0,3,193,248,0,3,193,248,0,7,193,248,0, + 7,193,248,0,7,195,240,0,7,195,240,0,7,231,224,0, + 7,239,192,0,3,255,128,0,3,255,0,0,3,252,0,0, + 1,248,0,0,7,252,63,252,15,252,127,254,31,254,31,184, + 63,127,15,128,62,127,7,128,126,63,135,128,252,31,199,128, + 252,31,231,128,252,15,247,0,252,7,255,0,252,3,254,0, + 252,1,252,0,254,0,255,0,127,0,127,128,127,129,255,248, + 63,255,223,248,15,255,15,244,3,252,7,128,7,16,16,13, + 3,19,14,126,254,254,124,124,124,124,124,124,124,60,60,56, + 56,56,13,45,90,16,3,249,0,16,0,120,0,240,1,224, + 3,224,7,192,7,128,15,128,31,0,31,0,63,0,62,0, + 62,0,126,0,126,0,126,0,124,0,252,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 252,0,126,0,126,0,126,0,126,0,62,0,63,0,63,0, + 31,0,15,128,15,128,7,192,3,192,1,224,0,240,0,120, + 0,16,13,44,88,16,0,249,64,0,240,0,120,0,60,0, + 30,0,31,0,15,128,15,192,7,192,7,224,7,224,3,224, + 3,240,3,240,3,240,1,240,1,248,1,248,1,248,1,248, + 1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,240, + 3,240,3,240,3,240,3,224,3,224,7,224,7,192,7,192, + 15,128,15,0,31,0,62,0,60,0,120,0,240,0,64,0, + 19,20,60,21,1,17,0,48,0,1,240,0,1,240,0,32, + 240,0,112,225,128,120,227,192,126,231,224,127,255,224,31,255, + 0,3,248,0,3,248,0,31,255,0,127,255,192,254,231,192, + 124,227,192,48,225,192,0,240,128,0,240,0,1,240,0,0, + 192,0,18,18,54,20,1,4,0,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,127,255,192, + 255,255,192,255,255,128,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,192,0,10,15, + 30,13,1,247,7,0,63,128,255,192,127,192,63,192,15,192, + 15,192,15,128,15,128,15,0,31,0,30,0,60,0,120,0, + 48,0,15,3,6,17,1,11,127,254,127,252,255,252,8,7, + 7,13,3,255,62,127,255,255,255,254,124,21,46,138,23,1, + 248,0,0,56,0,0,248,0,0,240,0,1,240,0,1,240, + 0,1,224,0,3,224,0,3,224,0,3,192,0,7,192,0, + 7,128,0,15,128,0,15,128,0,15,0,0,31,0,0,31, + 0,0,30,0,0,62,0,0,60,0,0,124,0,0,124,0, + 0,120,0,0,248,0,0,248,0,0,240,0,1,240,0,1, + 224,0,3,224,0,3,224,0,3,192,0,7,192,0,7,192, + 0,7,128,0,15,128,0,15,0,0,31,0,0,31,0,0, + 30,0,0,62,0,0,62,0,0,60,0,0,124,0,0,120, + 0,0,248,0,0,248,0,0,192,0,0,22,29,87,24,1, + 0,0,252,0,3,255,0,7,143,192,15,7,224,30,3,224, + 62,1,240,62,1,240,124,1,248,124,1,248,124,0,248,252, + 0,252,252,0,252,252,0,252,252,0,252,252,0,252,252,0, + 252,252,0,252,252,0,252,252,0,252,124,0,248,124,0,248, + 126,0,248,62,1,240,62,1,240,31,1,224,31,3,192,15, + 135,128,3,255,0,0,252,0,19,29,87,24,3,0,0,16, + 0,0,248,0,7,248,0,63,248,0,255,248,0,225,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1, + 248,0,1,248,0,1,248,0,1,248,0,1,248,0,1,248, + 0,1,248,0,1,248,0,1,248,0,1,248,0,1,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,15,255,0,127, + 255,224,127,255,224,20,29,87,24,1,0,0,255,0,7,255, + 192,15,143,224,63,7,224,62,3,240,126,3,240,126,3,240, + 120,3,240,0,3,240,0,7,224,0,7,224,0,15,192,0, + 15,128,0,31,128,0,31,0,0,62,0,0,124,0,0,248, + 0,0,248,0,1,240,0,3,224,32,7,192,48,15,128,48, + 15,0,48,30,0,112,63,255,240,127,255,240,255,255,240,127, + 255,240,20,29,87,24,1,0,1,254,0,7,255,128,31,31, + 192,63,15,192,62,7,224,126,7,224,60,7,224,0,7,224, + 0,7,192,0,15,192,0,31,128,0,127,0,1,254,0,1, + 255,128,2,63,192,0,15,224,0,7,224,0,3,240,0,3, + 240,0,3,240,0,3,240,0,3,240,0,3,240,64,7,224, + 96,15,224,252,31,192,63,255,128,31,254,0,3,248,0,21, + 29,87,25,2,0,0,1,128,0,15,128,0,31,128,0,63, + 128,0,63,128,0,127,128,0,255,128,0,239,128,1,239,128, + 3,207,128,3,143,128,7,143,128,7,15,128,14,15,128,30, + 15,128,28,15,128,56,15,128,56,15,128,127,255,248,255,255, + 240,255,255,224,0,15,128,0,15,128,0,15,128,0,15,128, + 0,15,128,0,31,192,1,255,240,1,255,240,20,29,87,24, + 2,0,0,0,32,31,255,240,31,255,192,31,255,192,31,255, + 128,28,0,0,28,0,0,28,0,0,60,0,0,60,0,0, + 56,0,0,59,252,0,63,255,0,63,255,128,120,31,192,32, + 15,224,0,7,224,0,7,240,0,3,240,0,3,240,0,3, + 240,0,3,240,0,3,240,0,7,224,64,7,224,224,15,192, + 252,31,128,63,254,0,7,248,0,20,29,87,24,2,0,0, + 1,128,0,31,192,0,127,0,1,252,0,3,240,0,7,192, + 0,15,128,0,31,128,0,63,0,0,62,0,0,126,0,0, + 124,126,0,125,255,128,255,255,192,255,15,224,254,7,224,252, + 7,240,252,3,240,252,3,240,252,3,240,252,3,240,124,3, + 240,126,3,224,126,3,224,62,3,192,31,7,192,15,143,128, + 7,255,0,1,248,0,21,28,84,24,2,0,127,255,240,127, + 255,248,127,255,240,127,255,224,112,1,224,224,1,224,192,1, + 192,64,3,192,0,3,128,0,7,128,0,7,0,0,15,0, + 0,15,0,0,30,0,0,30,0,0,60,0,0,60,0,0, + 124,0,0,120,0,0,248,0,0,240,0,1,240,0,1,240, + 0,3,224,0,3,224,0,7,224,0,15,192,0,6,0,0, + 20,29,87,24,2,0,0,252,0,7,255,128,15,31,192,30, + 15,192,28,7,224,60,7,224,60,7,224,60,7,224,62,15, + 192,63,143,128,31,255,0,31,254,0,15,252,0,3,255,0, + 7,255,128,15,255,192,31,31,224,62,15,240,126,7,240,252, + 3,240,252,3,240,252,3,240,252,3,240,252,3,224,126,3, + 224,126,7,192,63,15,128,31,254,0,3,248,0,20,29,87, + 24,2,255,1,252,0,7,255,0,15,31,128,30,15,192,62, + 7,224,124,7,224,124,7,224,252,3,240,252,3,240,252,3, + 240,252,3,240,252,3,240,254,3,240,126,7,240,127,15,240, + 63,255,240,31,251,224,7,227,224,0,7,224,0,7,192,0, + 7,192,0,15,128,0,31,0,0,62,0,0,252,0,3,248, + 0,15,224,0,63,128,0,56,0,0,8,23,23,13,3,255, + 62,127,255,255,255,254,124,0,0,0,0,0,0,0,0,0, + 62,127,255,255,255,254,124,10,31,62,13,1,247,15,128,31, + 192,63,192,63,192,63,192,31,128,14,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,63, + 128,255,192,127,192,63,192,15,192,15,192,15,128,15,128,15, + 0,31,0,30,0,60,0,120,0,48,0,20,16,48,22,1, + 6,0,0,96,0,1,240,0,15,224,0,127,224,3,255,128, + 15,252,0,127,224,0,127,0,0,254,0,0,255,192,0,63, + 248,0,7,254,0,1,255,192,0,63,224,0,7,240,0,0, + 192,20,10,30,22,1,8,127,255,224,127,255,240,255,255,224, + 0,0,0,0,0,0,0,0,0,0,0,0,127,255,224,127, + 255,240,255,255,224,20,16,48,22,1,6,48,0,0,126,0, + 0,255,192,0,63,240,0,15,254,0,1,255,192,0,63,224, + 0,7,240,0,31,224,0,127,224,3,255,0,31,248,0,127, + 224,0,127,0,0,248,0,0,64,0,0,19,35,105,22,2, + 255,1,254,0,15,255,128,63,31,192,126,15,192,124,7,224, + 252,7,224,252,7,224,252,7,224,240,7,224,0,7,192,0, + 15,192,0,15,128,0,31,128,0,63,0,0,126,0,0,124, + 0,0,248,0,1,240,0,1,224,0,3,224,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,128,0,0,0,0,0, + 0,0,0,0,0,1,240,0,3,248,0,7,248,0,7,248, + 0,7,248,0,7,240,0,3,224,0,38,42,210,42,2,246, + 0,0,255,192,0,0,7,255,248,0,0,31,255,254,0,0, + 127,255,255,0,0,255,0,255,128,1,248,0,31,192,3,224, + 0,7,224,7,192,0,3,224,15,128,0,1,240,31,0,0, + 1,240,31,0,252,24,248,62,3,254,120,248,60,7,255,240, + 120,124,15,135,240,124,124,31,3,240,124,120,31,3,240,60, + 120,62,3,240,60,248,62,3,240,60,248,126,3,240,60,248, + 126,3,240,60,248,126,3,240,60,248,126,3,240,60,248,126, + 3,240,56,248,126,3,240,56,248,126,3,240,120,252,127,3, + 240,112,252,63,7,240,224,124,63,143,249,224,124,31,255,255, + 192,126,31,251,255,128,62,15,241,254,0,63,3,224,248,0, + 63,128,0,0,0,31,192,0,0,0,15,224,0,0,128,15, + 240,0,1,192,7,252,0,7,192,3,255,128,127,128,0,255, + 255,254,0,0,127,255,252,0,0,31,255,240,0,0,1,255, + 0,0,30,30,120,30,0,0,0,1,128,0,0,7,128,0, + 0,15,192,0,0,31,192,0,0,31,224,0,0,31,224,0, + 0,63,224,0,0,63,240,0,0,59,240,0,0,121,240,0, + 0,121,248,0,0,113,248,0,0,240,252,0,0,240,252,0, + 0,224,252,0,1,224,126,0,1,224,126,0,1,192,126,0, + 3,255,255,0,3,255,255,0,3,128,31,0,7,128,31,128, + 7,0,31,128,7,0,15,192,15,0,15,192,14,0,15,192, + 14,0,7,224,30,0,7,224,255,192,63,252,255,192,63,252, + 26,30,120,29,0,0,3,255,128,0,255,255,240,0,127,193, + 252,0,15,192,126,0,15,192,127,0,15,192,63,0,15,192, + 63,0,15,192,63,0,15,192,63,0,15,192,62,0,15,192, + 126,0,15,192,252,0,15,195,248,0,15,255,224,0,15,255, + 252,0,15,192,254,0,15,192,63,0,15,192,31,128,15,192, + 31,128,15,192,15,192,15,192,15,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,15,128,15,192,31,128,15,192, + 63,0,31,192,254,0,127,255,252,0,127,255,224,0,24,30, + 90,27,1,0,0,31,224,0,255,252,1,255,254,7,224,254, + 15,128,126,31,128,60,31,0,28,62,0,0,62,0,0,126, + 0,0,124,0,0,252,0,0,252,0,0,252,0,0,252,0, + 0,252,0,0,252,0,0,252,0,0,252,0,0,254,0,0, + 126,0,0,126,0,0,127,0,0,63,128,2,63,192,15,31, + 240,62,15,255,248,7,255,240,1,255,192,0,127,0,29,30, + 120,31,0,0,3,255,192,0,255,255,248,0,127,192,254,0, + 143,192,63,128,15,192,31,192,15,192,15,192,15,192,7,224, + 15,192,7,240,15,192,3,240,15,192,3,240,15,192,3,248, + 15,192,1,248,15,192,1,248,15,192,1,248,15,192,1,248, + 15,192,1,248,15,192,1,248,15,192,1,248,15,192,1,248, + 15,192,1,240,15,192,3,240,15,192,3,240,15,192,7,224, + 15,192,7,224,15,192,15,192,15,192,31,128,15,192,63,0, + 31,224,254,0,127,255,248,0,127,255,192,0,23,30,90,25, + 1,0,255,255,248,255,255,252,63,128,56,31,128,56,31,128, + 24,31,128,24,31,128,24,31,128,24,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,255,224,31,255,224,31, + 128,192,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,6,31,128,6,31,128,14, + 31,128,14,63,192,30,255,255,254,255,255,252,22,30,90,24, + 1,0,255,255,248,255,255,252,63,128,60,31,128,28,31,128, + 24,31,128,24,31,128,24,31,128,24,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,255,192,31,255,224,31, + 129,128,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,63,192,0,255,248,0,255,248,0,27,30,120,29, + 1,0,0,15,248,0,0,127,255,128,1,240,127,128,3,192, + 63,0,7,128,15,0,15,0,14,0,31,0,0,0,62,0, + 0,0,62,0,0,0,126,0,0,0,124,0,0,0,124,0, + 0,0,252,0,0,0,252,0,0,0,252,1,255,224,252,1, + 255,224,252,0,127,192,252,0,31,128,252,0,31,128,254,0, + 31,128,126,0,31,128,127,0,31,128,127,0,31,128,63,128, + 31,128,63,192,31,128,31,240,63,0,15,255,254,0,7,255, + 252,0,1,255,240,0,0,63,128,0,30,30,120,33,1,0, + 255,240,63,252,255,240,63,252,63,192,15,240,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,255,255,224,31,255,255,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,63,192,15,240, + 255,240,63,252,255,240,63,252,12,30,60,16,2,0,255,240, + 255,240,63,192,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,63,192,255,240,255,240,21,40,120,16,249,246, + 0,255,248,0,255,248,0,31,224,0,15,192,0,15,192,0, + 15,192,0,15,192,0,15,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,15,192,0,15,192,0,15,192, + 0,15,192,0,15,192,0,15,192,0,15,192,0,15,192,0, + 15,192,0,15,192,0,15,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,15,192,0,15,128,0,15,128, + 0,15,128,0,31,0,24,30,0,62,62,0,127,248,0,255, + 240,0,127,224,0,31,128,0,29,30,120,30,1,0,255,240, + 255,224,255,240,255,224,63,192,31,0,31,128,62,0,31,128, + 124,0,31,128,248,0,31,129,240,0,31,129,224,0,31,131, + 192,0,31,135,128,0,31,143,0,0,31,159,0,0,31,190, + 0,0,31,188,0,0,31,252,0,0,31,254,0,0,31,191, + 0,0,31,159,128,0,31,143,192,0,31,135,224,0,31,135, + 240,0,31,131,248,0,31,129,252,0,31,128,254,0,31,128, + 126,0,31,128,127,0,31,128,63,192,63,192,31,240,255,240, + 15,248,255,240,7,128,23,30,90,24,1,0,255,240,0,255, + 240,0,63,192,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,4,31,128,6,31,128,14,31,128,30,63,192,60, + 255,255,252,255,255,252,38,30,150,41,1,0,255,128,0,15, + 248,255,192,0,15,248,15,192,0,31,192,15,224,0,31,192, + 15,224,0,31,192,15,240,0,63,192,15,240,0,63,192,15, + 248,0,127,192,15,248,0,119,192,14,252,0,247,192,14,252, + 0,247,192,14,124,1,231,192,14,126,1,231,192,14,62,1, + 199,192,14,63,3,199,192,14,31,3,135,192,14,31,135,135, + 192,14,31,135,135,192,14,15,143,7,192,14,15,207,7,192, + 30,7,222,7,192,30,7,254,7,192,30,3,252,7,192,30, + 3,252,7,192,30,3,248,7,192,30,1,248,7,224,30,1, + 248,7,224,31,0,240,15,224,255,192,240,63,252,255,192,96, + 63,252,30,30,120,32,1,0,255,0,15,252,255,128,15,252, + 63,192,3,240,31,192,1,224,31,224,1,224,31,240,1,224, + 31,240,1,224,31,248,1,224,31,252,1,224,30,254,1,224, + 30,126,1,224,30,63,1,224,30,63,129,224,30,31,129,224, + 30,15,193,224,30,7,225,224,30,7,225,224,30,3,241,224, + 30,1,249,224,30,1,253,224,30,0,253,224,30,0,127,224, + 30,0,63,224,30,0,63,224,30,0,31,224,30,0,15,224, + 30,0,7,224,63,0,7,224,255,192,3,224,255,192,0,224, + 27,30,120,30,1,0,0,31,192,0,0,255,240,0,3,225, + 252,0,7,128,126,0,15,0,63,0,31,0,31,0,30,0, + 31,128,62,0,15,128,126,0,15,192,124,0,15,192,124,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,254,0,7,192,126,0,15,192,126,0,15,128,127,0, + 15,128,63,0,31,0,31,128,31,0,31,192,62,0,15,240, + 252,0,7,255,240,0,1,255,224,0,0,127,0,0,25,30, + 120,27,0,0,3,255,192,0,255,255,248,0,127,193,252,0, + 143,192,126,0,15,192,63,0,15,192,63,0,15,192,31,128, + 15,192,31,128,15,192,31,128,15,192,31,128,15,192,31,128, + 15,192,31,0,15,192,63,0,15,192,62,0,15,192,126,0, + 15,208,252,0,15,223,240,0,15,207,192,0,15,192,0,0, + 15,192,0,0,15,192,0,0,15,192,0,0,15,192,0,0, + 15,192,0,0,15,192,0,0,15,192,0,0,15,192,0,0, + 31,224,0,0,127,252,0,0,127,252,0,0,32,38,152,30, + 1,248,0,31,192,0,0,255,240,0,3,225,252,0,7,128, + 126,0,15,0,63,0,31,0,31,0,30,0,31,128,62,0, + 15,128,126,0,15,192,124,0,15,192,124,0,7,192,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,254,0, + 7,192,126,0,15,192,126,0,15,128,127,0,15,128,63,0, + 31,0,31,128,31,0,31,192,62,0,15,240,252,0,7,255, + 248,0,1,255,224,0,0,127,240,0,0,1,252,0,0,0, + 254,2,0,0,63,135,0,0,31,255,0,0,15,254,0,0, + 3,252,0,0,1,252,0,0,0,120,29,30,120,29,0,0, + 7,255,128,0,255,255,240,0,127,193,252,0,143,192,126,0, + 15,192,126,0,15,192,63,0,15,192,63,0,15,192,63,0, + 15,192,63,0,15,192,63,0,15,192,126,0,15,192,126,0, + 15,192,252,0,15,255,248,0,15,255,240,0,15,255,192,0, + 15,199,192,0,15,195,224,0,15,193,240,0,15,193,240,0, + 15,192,248,0,15,192,252,0,15,192,126,0,15,192,126,0, + 15,192,63,0,15,192,63,128,15,192,31,192,31,224,31,248, + 127,248,15,248,127,248,15,128,20,30,90,25,3,0,1,255, + 0,15,255,192,30,15,224,60,7,192,120,3,192,248,1,128, + 248,0,0,252,0,0,254,0,0,255,0,0,127,192,0,127, + 240,0,63,252,0,31,255,0,7,255,128,1,255,192,0,127, + 224,0,31,224,0,7,240,0,3,240,0,1,240,192,1,240, + 224,1,240,224,1,224,240,3,224,248,3,192,254,15,128,255, + 255,0,127,254,0,15,240,0,27,30,120,28,0,0,127,255, + 255,224,127,255,255,224,112,31,128,224,112,31,128,224,96,31, + 128,224,96,31,128,224,224,31,128,96,64,31,128,96,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,63,192,0,1,255, + 248,0,1,255,248,0,29,30,120,32,1,0,255,240,31,248, + 255,240,31,248,63,192,7,224,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,128,31,192,7,128,15,192,7,128,15,224,7,0, + 7,224,15,0,3,248,62,0,1,255,252,0,0,255,240,0, + 0,31,192,0,31,30,120,32,0,0,255,240,7,254,255,240, + 7,254,31,128,0,240,15,192,0,224,15,192,0,224,15,192, + 1,224,7,224,1,192,7,224,3,192,3,240,3,192,3,240, + 3,128,3,240,7,128,1,248,7,128,1,248,7,0,0,248, + 15,0,0,252,14,0,0,252,14,0,0,126,30,0,0,126, + 28,0,0,62,28,0,0,63,60,0,0,63,56,0,0,31, + 248,0,0,31,240,0,0,15,240,0,0,15,240,0,0,15, + 224,0,0,7,224,0,0,7,224,0,0,3,192,0,0,3, + 0,0,41,30,180,41,0,0,255,240,12,3,255,128,255,240, + 30,3,255,128,31,128,30,0,124,0,15,128,30,0,56,0, + 15,128,63,0,120,0,15,128,63,0,120,0,15,192,63,128, + 112,0,7,192,127,128,112,0,7,192,127,128,112,0,7,192, + 127,192,240,0,7,224,247,192,224,0,3,224,231,224,224,0, + 3,224,227,224,224,0,3,225,227,225,224,0,3,241,195,241, + 224,0,3,241,193,241,192,0,1,243,193,241,192,0,1,243, + 128,249,192,0,1,251,128,251,192,0,1,255,128,255,192,0, + 0,255,0,127,128,0,0,255,0,127,128,0,0,254,0,127, + 128,0,0,254,0,63,128,0,0,126,0,63,0,0,0,124, + 0,31,0,0,0,124,0,31,0,0,0,124,0,31,0,0, + 0,120,0,14,0,0,0,48,0,12,0,0,29,30,120,30, + 1,0,255,240,127,240,255,240,127,240,63,192,31,128,31,192, + 15,0,15,192,30,0,7,224,60,0,7,240,60,0,3,240, + 120,0,1,248,240,0,1,252,240,0,0,255,224,0,0,127, + 192,0,0,127,192,0,0,63,128,0,0,31,128,0,0,31, + 192,0,0,63,224,0,0,127,224,0,0,127,240,0,0,243, + 248,0,1,241,248,0,1,225,252,0,3,192,254,0,7,192, + 126,0,7,128,63,0,15,0,63,128,31,0,31,192,63,0, + 63,224,255,192,255,248,255,192,255,248,29,30,120,29,0,0, + 127,0,31,248,255,128,31,248,31,192,3,192,15,192,3,128, + 7,224,7,128,3,240,7,0,3,240,15,0,1,248,14,0, + 1,248,30,0,0,252,28,0,0,124,60,0,0,126,56,0, + 0,63,120,0,0,63,240,0,0,31,240,0,0,31,224,0, + 0,15,224,0,0,15,192,0,0,15,192,0,0,15,192,0, + 0,15,192,0,0,15,192,0,0,15,192,0,0,15,192,0, + 0,15,192,0,0,15,192,0,0,15,192,0,0,31,224,0, + 0,255,252,0,0,255,252,0,23,30,90,26,1,0,63,255, + 254,63,255,254,60,0,254,56,1,252,56,1,248,48,3,248, + 48,7,240,64,7,240,0,15,224,0,15,192,0,31,192,0, + 63,128,0,63,128,0,127,0,0,126,0,0,254,0,1,252, + 0,1,252,0,3,248,0,3,248,0,7,240,0,15,224,0, + 15,224,4,31,192,6,31,192,6,63,128,14,127,0,14,127, + 0,30,255,255,254,127,255,254,12,45,90,16,3,248,255,240, + 255,240,255,240,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,255,240,255,240,255,240,21,46,138,23,1,248,224,0, + 0,248,0,0,120,0,0,120,0,0,124,0,0,60,0,0, + 60,0,0,62,0,0,30,0,0,31,0,0,15,0,0,15, + 0,0,15,128,0,7,128,0,7,128,0,7,192,0,3,192, + 0,3,192,0,3,224,0,1,224,0,1,240,0,0,240,0, + 0,240,0,0,248,0,0,120,0,0,120,0,0,124,0,0, + 60,0,0,60,0,0,62,0,0,30,0,0,31,0,0,15, + 0,0,15,0,0,15,128,0,7,128,0,7,128,0,7,192, + 0,3,192,0,3,192,0,1,224,0,1,224,0,1,240,0, + 0,240,0,0,240,0,0,56,12,45,90,16,1,248,255,240, + 255,240,255,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,255,240,255,240,255,240,19,23,69,24,2,13,0,32, + 0,0,112,0,0,240,0,1,240,0,1,248,0,1,248,0, + 3,188,0,3,188,0,7,60,0,7,30,0,6,30,0,14, + 14,0,14,15,0,12,15,0,28,7,128,28,7,128,24,3, + 128,56,3,192,48,3,192,112,1,224,112,1,224,96,0,224, + 192,0,192,21,3,9,23,1,250,127,255,248,127,255,248,255, + 255,240,11,11,22,15,0,24,60,0,252,0,254,0,126,0, + 63,0,31,0,15,128,7,128,3,192,1,192,0,224,23,22, + 66,24,1,0,0,255,0,15,255,128,31,15,192,62,7,224, + 126,7,224,252,7,224,96,7,224,0,7,224,0,31,224,1, + 255,224,7,255,224,31,231,224,63,135,224,63,7,224,126,7, + 224,126,7,224,126,7,224,126,31,228,127,63,252,63,247,254, + 63,231,240,15,131,128,24,36,108,26,0,0,3,0,0,63, + 128,0,255,128,0,127,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,131,224,31,143,248,31,191,252,31, + 255,252,31,240,254,31,192,126,31,128,63,31,128,63,31,128, + 31,31,128,31,31,128,31,31,128,31,31,128,31,31,128,30, + 31,128,30,31,128,60,31,128,56,31,240,248,31,255,240,15, + 255,192,3,255,128,0,126,0,20,22,66,22,1,0,0,127, + 128,1,255,240,7,135,224,15,3,224,30,1,224,62,0,192, + 124,0,192,124,0,0,252,0,0,252,0,0,252,0,0,252, + 0,0,252,0,0,252,0,0,254,0,0,126,0,32,127,0, + 112,63,193,224,63,255,192,31,255,128,7,255,0,1,252,0, + 25,36,144,27,2,0,0,0,56,0,0,15,248,0,0,15, + 248,0,0,3,248,0,0,1,248,0,0,1,248,0,0,1, + 248,0,0,1,248,0,0,1,248,0,0,1,248,0,0,1, + 248,0,0,1,248,0,0,1,248,0,0,1,248,0,0,249, + 248,0,7,255,248,0,15,255,248,0,31,135,248,0,63,3, + 248,0,62,1,248,0,126,1,248,0,124,1,248,0,252,1, + 248,0,252,1,248,0,252,1,248,0,252,1,248,0,252,1, + 248,0,252,1,248,0,254,1,248,0,126,1,248,0,127,3, + 248,0,127,135,253,0,63,255,255,128,31,253,254,0,15,248, + 252,0,3,224,224,0,19,22,66,23,2,0,0,252,0,7, + 255,0,15,31,128,30,15,128,62,15,192,124,7,192,124,7, + 224,124,7,224,252,7,224,255,255,224,255,255,128,252,0,0, + 252,0,0,252,0,0,254,0,0,126,0,64,127,0,224,63, + 131,192,63,255,128,31,255,0,15,254,0,3,248,0,20,37, + 111,16,1,0,0,15,128,0,63,224,0,255,240,1,255,224, + 3,227,224,7,193,192,7,193,0,15,128,0,15,128,0,15, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,127,255,0,255,254,0,31,132,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,63,224,0,255,252,0, + 255,252,0,25,33,132,25,0,245,0,126,1,128,3,255,223, + 128,7,135,255,0,15,3,254,0,30,1,240,0,30,0,248, + 0,62,0,248,0,62,0,248,0,62,0,248,0,62,0,248, + 0,63,0,240,0,31,129,224,0,15,195,192,0,7,255,128, + 0,1,254,0,0,3,224,0,0,7,192,0,0,15,192,0, + 0,31,254,0,0,31,255,240,0,15,255,252,0,7,255,254, + 0,15,159,255,0,62,0,127,0,124,0,63,0,252,0,31, + 0,252,0,30,0,254,0,30,0,255,0,60,0,127,192,248, + 0,63,255,240,0,15,255,192,0,1,254,0,0,26,36,144, + 28,1,0,1,128,0,0,63,128,0,0,255,128,0,0,255, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,129,240,0,31, + 143,252,0,31,159,252,0,31,255,254,0,31,248,254,0,31, + 224,126,0,31,192,126,0,31,128,126,0,31,128,126,0,31, + 128,126,0,31,128,126,0,31,128,126,0,31,128,126,0,31, + 128,126,0,31,128,126,0,31,128,126,0,31,128,126,0,31, + 128,126,0,31,128,126,0,63,192,255,0,255,243,255,192,255, + 243,255,192,12,32,64,14,1,0,7,128,15,192,31,192,31, + 192,31,128,15,0,0,0,0,0,0,0,0,0,3,128,127, + 128,255,128,127,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,63,192,255,240,255,240,17,43,129,14,250,245,0, + 15,0,0,31,128,0,63,128,0,63,128,0,63,0,0,30, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,128, + 0,127,128,0,255,128,0,127,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,0,0,31,0,0,62,0,16,62, + 0,60,124,0,127,248,0,255,224,0,255,192,0,63,0,0, + 26,36,144,26,1,0,1,128,0,0,63,128,0,0,255,128, + 0,0,255,128,0,0,31,128,0,0,31,128,0,0,31,128, + 0,0,31,128,0,0,31,128,0,0,31,128,0,0,31,128, + 0,0,31,128,0,0,31,128,0,0,31,128,0,0,31,129, + 255,128,31,129,255,128,31,128,252,0,31,128,248,0,31,131, + 224,0,31,135,192,0,31,143,128,0,31,158,0,0,31,188, + 0,0,31,252,0,0,31,190,0,0,31,191,0,0,31,159, + 128,0,31,143,192,0,31,135,224,0,31,135,240,0,31,131, + 248,0,31,129,252,0,31,128,252,0,63,128,255,192,255,240, + 127,192,255,240,62,0,12,36,72,14,1,0,1,128,63,128, + 255,128,255,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,192, + 255,240,255,240,39,22,110,41,1,0,3,3,224,31,128,127, + 143,248,127,192,255,159,249,255,224,127,255,255,255,240,31,241, + 255,135,240,31,224,255,3,240,31,128,252,3,240,31,128,252, + 3,240,31,128,252,3,240,31,128,252,3,240,31,128,252,3, + 240,31,128,252,3,240,31,128,252,3,240,31,128,252,3,240, + 31,128,252,3,240,31,128,252,3,240,31,128,252,3,240,31, + 128,252,3,240,31,128,252,3,240,63,128,252,3,248,255,247, + 255,159,254,255,247,255,159,254,26,22,88,28,1,0,3,1, + 240,0,127,135,252,0,255,159,252,0,63,191,254,0,31,248, + 254,0,31,224,126,0,31,192,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,63,192,255,0,255,243, + 255,192,255,243,255,192,21,22,66,25,2,0,0,252,0,3, + 255,0,15,15,192,30,7,224,62,7,224,62,3,240,124,3, + 240,124,1,248,252,1,248,252,1,248,252,1,248,252,1,248, + 252,1,248,252,1,248,252,1,240,126,1,240,126,3,224,62, + 3,224,63,3,192,31,135,128,7,254,0,1,248,0,24,33, + 99,27,1,245,3,3,224,127,143,248,255,159,252,63,255,252, + 31,240,254,31,192,126,31,128,63,31,128,63,31,128,31,31, + 128,31,31,128,31,31,128,31,31,128,31,31,128,30,31,128, + 30,31,128,62,31,192,60,31,240,124,31,255,248,31,255,240, + 31,159,224,31,135,128,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,63,192, + 0,255,248,0,255,248,0,24,33,99,26,2,245,0,124,8, + 1,255,28,7,255,248,15,135,248,30,3,248,62,1,248,124, + 1,248,124,1,248,252,1,248,252,1,248,252,1,248,252,1, + 248,252,1,248,252,1,248,254,1,248,126,1,248,127,3,248, + 127,143,248,63,255,248,31,253,248,15,249,248,3,225,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1, + 248,0,1,248,0,1,248,0,3,248,0,31,255,0,31,255, + 20,22,66,21,1,0,3,7,192,127,143,240,255,191,240,63, + 255,224,31,241,224,31,224,224,31,192,224,31,128,192,31,128, + 192,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 192,0,255,248,0,255,248,0,16,22,44,20,2,0,7,248, + 31,254,60,62,120,30,248,14,248,12,252,0,255,0,127,192, + 127,240,63,248,15,254,3,254,0,255,128,127,192,63,224,31, + 224,31,240,30,248,60,255,248,63,224,18,30,90,18,255,0, + 0,192,0,1,192,0,7,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,63,255,192,255,255,128,15,193, + 0,15,192,0,15,192,0,15,192,0,15,192,0,15,192,0, + 15,192,0,15,192,0,15,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,15,192,128,15,227,192,15,255, + 128,7,255,0,3,252,0,1,240,0,26,22,88,27,1,0, + 3,128,28,0,255,135,252,0,255,135,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,129,252,0,31,199,252,128,31,255,255,128,15,254,255,192, + 7,248,126,0,3,224,112,0,24,22,66,24,0,0,255,224, + 255,255,224,255,63,128,60,31,128,60,31,128,56,15,192,120, + 15,192,112,7,192,112,7,224,240,7,224,224,3,241,224,3, + 241,192,1,249,192,1,251,128,0,255,128,0,255,128,0,127, + 0,0,127,0,0,126,0,0,62,0,0,60,0,0,24,0, + 34,22,110,34,0,0,255,224,96,63,192,255,224,112,63,192, + 63,0,240,7,0,31,0,248,15,0,31,128,248,14,0,15, + 129,252,14,0,15,129,252,30,0,15,195,252,28,0,7,195, + 254,28,0,7,195,190,28,0,7,231,63,60,0,3,231,31, + 56,0,3,239,31,184,0,3,254,31,248,0,1,254,15,240, + 0,1,252,15,240,0,1,252,7,240,0,0,252,7,224,0, + 0,248,3,224,0,0,248,3,224,0,0,112,1,192,0,0, + 96,1,128,0,25,22,88,25,0,0,127,241,255,0,127,241, + 255,0,31,192,124,0,15,224,112,0,7,224,224,0,7,241, + 224,0,3,251,192,0,1,255,128,0,0,255,0,0,0,254, + 0,0,0,127,0,0,0,127,0,0,0,127,128,0,0,255, + 192,0,1,207,224,0,3,199,224,0,7,131,240,0,7,3, + 248,0,14,1,252,0,30,1,254,0,255,135,255,128,255,135, + 255,128,25,33,132,24,255,245,127,240,127,128,127,240,127,128, + 31,192,30,0,15,192,28,0,15,192,28,0,7,224,60,0, + 7,224,56,0,3,240,56,0,3,240,112,0,1,240,112,0, + 1,248,240,0,1,248,224,0,0,252,224,0,0,253,224,0, + 0,125,192,0,0,127,192,0,0,127,128,0,0,63,128,0, + 0,63,128,0,0,31,0,0,0,31,0,0,0,14,0,0, + 0,14,0,0,0,30,0,0,0,28,0,0,0,60,0,0, + 0,120,0,0,32,248,0,0,63,240,0,0,127,224,0,0, + 255,192,0,0,255,128,0,0,126,0,0,0,20,22,66,22, + 1,0,63,255,240,63,255,240,56,15,224,56,15,192,48,31, + 192,48,31,128,32,63,0,0,127,0,0,126,0,0,252,0, + 1,252,0,1,248,0,3,240,0,7,240,0,7,224,0,15, + 224,48,31,192,48,31,128,112,63,128,112,127,0,240,127,255, + 240,255,255,224,14,45,90,17,2,249,0,8,0,60,0,248, + 1,240,3,224,7,224,7,192,15,192,15,192,15,192,15,192, + 15,192,15,224,7,224,7,224,7,224,7,224,7,224,7,192, + 15,192,15,128,63,0,254,0,255,128,31,192,7,192,7,224, + 7,224,7,224,7,224,7,224,7,224,15,224,15,192,15,192, + 15,192,15,192,15,192,15,192,7,192,7,224,3,240,0,248, + 0,124,0,8,4,49,49,11,4,246,48,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,192,14,44,88,17,1, + 249,64,0,248,0,124,0,63,0,31,128,15,128,15,192,15, + 192,15,192,15,192,15,192,15,192,31,192,31,128,31,128,31, + 128,31,128,31,128,31,128,15,192,15,252,7,252,1,248,7, + 224,15,192,15,128,31,128,31,128,31,128,31,128,31,128,31, + 192,15,192,15,192,15,192,15,192,15,192,15,128,31,128,31, + 0,62,0,124,0,240,0,64,0,21,8,24,23,1,11,7, + 128,8,15,224,24,31,240,16,63,252,48,49,255,224,96,127, + 192,64,31,128,192,15,0,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,12,0,0,8,35, + 35,15,3,243,62,127,255,255,255,254,124,0,0,12,28,28, + 28,60,60,60,60,60,62,62,62,62,62,62,62,62,126,126, + 126,126,126,127,126,120,96,21,30,90,24,2,255,0,24,0, + 0,56,0,0,56,0,0,56,0,0,127,192,3,255,240,7, + 255,248,31,187,240,62,56,240,60,56,96,124,56,32,120,56, + 0,248,56,0,248,56,0,248,56,0,248,56,0,248,56,0, + 248,56,0,252,56,0,124,56,16,126,56,56,63,56,240,31, + 251,224,15,255,192,7,255,128,1,252,0,0,56,0,0,56, + 0,0,56,0,0,48,0,22,29,87,24,1,0,0,31,192, + 0,255,248,1,225,248,3,192,248,7,192,120,7,128,112,15, + 128,48,15,128,48,15,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,255,255,0,255,255,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,16,31,0,12,31, + 0,24,30,0,56,62,0,120,63,255,248,127,255,248,255,255, + 248,128,15,240,20,20,60,24,2,4,64,0,32,224,0,96, + 113,248,240,63,255,192,31,15,128,30,7,128,28,3,128,56, + 1,192,56,1,192,56,1,192,56,1,192,56,1,192,60,3, + 192,30,7,128,31,15,128,31,255,128,57,249,192,112,0,224, + 224,0,112,64,0,32,27,28,112,24,254,0,127,0,127,224, + 255,128,127,224,127,192,15,0,15,224,30,0,15,224,30,0, + 7,240,60,0,3,240,60,0,3,248,56,0,1,252,120,0, + 0,252,112,0,0,254,240,0,0,126,224,0,0,127,224,0, + 0,63,192,0,0,63,192,0,0,31,192,0,0,31,128,0, + 15,255,255,0,15,255,254,0,0,31,128,0,0,31,128,0, + 0,31,128,0,0,31,128,0,0,31,128,0,0,31,128,0, + 0,63,192,0,1,255,248,0,1,255,248,0,4,49,49,11, + 4,246,48,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,224,0,0,0,0,0,112,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,192,18,34,102,23,3,0,3,252,0,15,255,0,30, + 31,0,60,15,0,124,7,0,124,6,0,126,2,0,127,128, + 0,63,224,0,63,240,0,63,252,0,127,254,0,123,255,0, + 240,255,128,240,63,128,240,31,192,240,7,192,248,7,192,124, + 3,192,127,3,192,63,195,192,31,243,128,15,255,128,7,255, + 0,1,255,0,0,127,128,96,63,128,96,31,128,112,15,128, + 112,15,128,120,15,0,126,30,0,127,252,0,15,240,0,17, + 7,21,19,1,26,56,7,0,124,15,128,252,31,128,252,31, + 128,252,31,128,248,31,0,112,14,0,31,31,124,35,2,0, + 0,31,224,0,0,127,252,0,1,240,31,0,7,192,7,128, + 15,0,1,224,30,0,0,224,28,3,240,112,56,31,254,56, + 56,60,124,56,112,120,60,28,112,240,28,28,240,240,24,28, + 224,224,0,14,225,224,0,14,225,224,0,14,225,224,0,14, + 225,224,0,14,225,224,0,14,225,240,0,14,240,240,0,30, + 112,248,6,28,112,126,30,28,56,127,252,56,56,31,240,56, + 28,7,192,112,14,0,0,224,15,0,1,224,7,192,7,128, + 1,240,31,0,0,127,252,0,0,31,240,0,12,16,32,13, + 1,14,15,0,63,128,99,192,227,192,131,192,7,192,63,192, + 123,192,243,192,243,192,247,224,255,240,115,128,0,0,255,224, + 255,224,20,22,66,25,2,0,0,192,32,1,192,112,1,192, + 224,3,129,224,7,131,192,15,7,192,31,15,128,62,15,128, + 126,31,0,252,63,0,252,126,0,252,126,0,252,63,0,126, + 31,0,62,15,128,31,15,128,15,7,192,7,131,192,3,129, + 224,1,192,224,0,192,112,0,192,32,21,11,33,24,2,4, + 127,255,248,255,255,248,255,255,248,0,0,120,0,0,120,0, + 0,120,0,0,120,0,0,120,0,0,120,0,0,120,0,0, + 96,15,3,6,17,1,11,127,254,127,252,255,252,17,17,51, + 17,0,17,3,224,0,15,248,0,60,30,0,48,6,0,103, + 227,0,99,51,0,195,49,128,195,49,128,195,225,128,195,65, + 128,195,97,128,99,35,0,99,51,0,55,158,0,60,30,0, + 15,248,0,3,224,0,20,4,12,24,2,27,127,255,240,255, + 255,240,255,255,224,255,255,224,11,13,26,17,3,17,15,0, + 31,192,63,192,123,224,113,224,241,224,241,224,241,224,241,192, + 251,192,127,128,127,0,30,0,18,22,66,20,1,3,0,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,127,255,192,255,255,192,255,255,128,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,192, + 0,0,0,0,0,0,0,127,255,192,127,255,192,255,255,128, + 13,17,34,17,2,15,7,224,31,240,120,248,120,120,248,120, + 0,120,0,240,0,224,1,224,3,192,7,128,15,0,30,8, + 60,8,120,24,255,248,255,248,13,18,36,17,1,14,7,224, + 31,240,60,248,120,120,124,120,0,120,0,240,1,224,7,240, + 5,240,0,120,0,120,0,120,0,120,128,120,224,240,127,224, + 31,128,11,11,22,15,5,24,15,0,15,192,31,224,31,128, + 63,0,62,0,124,0,120,0,240,0,224,0,64,0,27,33, + 132,28,1,245,3,0,6,0,255,128,254,0,255,128,126,0, + 63,128,126,0,31,128,126,0,31,128,126,0,31,128,126,0, + 31,128,126,0,31,128,126,0,31,128,126,0,31,128,126,0, + 31,128,126,0,31,128,126,0,31,128,126,0,31,128,126,0, + 31,192,254,0,31,227,254,0,31,255,254,64,31,255,127,224, + 30,254,127,192,30,124,63,128,30,56,28,0,30,0,0,0, + 30,0,0,0,31,0,0,0,31,0,0,0,31,0,0,0, + 31,0,0,0,31,128,0,0,31,128,0,0,31,192,0,0, + 31,0,0,0,24,0,0,0,26,36,144,29,1,250,1,255, + 255,192,7,255,255,192,31,195,255,0,63,3,222,0,126,3, + 222,0,124,3,222,0,252,3,222,0,252,3,222,0,252,3, + 222,0,252,3,222,0,252,3,222,0,126,3,222,0,127,3, + 222,0,63,3,222,0,31,195,222,0,7,255,222,0,1,255, + 222,0,0,3,222,0,0,3,222,0,0,3,222,0,0,3, + 222,0,0,3,222,0,0,3,222,0,0,3,222,0,0,3, + 222,0,0,3,222,0,0,3,222,0,0,3,222,0,0,3, + 222,0,0,3,222,0,0,3,222,0,0,3,222,0,0,3, + 222,0,0,7,255,0,0,31,255,192,0,31,255,192,7,7, + 7,10,1,13,60,126,254,254,254,252,120,10,10,20,11,1, + 246,14,0,28,0,30,0,63,128,63,192,15,192,15,192,31, + 128,254,0,112,0,13,17,34,17,2,15,1,128,15,128,255, + 128,71,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,63,240,127,248,11,16,32, + 13,1,14,15,0,63,128,123,192,113,192,241,224,241,224,241, + 224,241,224,241,224,241,192,123,192,63,128,30,0,0,0,255, + 224,255,224,20,22,66,25,3,0,64,32,0,224,112,0,112, + 56,0,120,28,0,56,30,0,60,15,0,30,15,128,31,7, + 192,31,135,224,15,199,240,15,227,240,15,227,240,15,199,240, + 31,135,224,31,7,192,30,15,128,60,15,0,56,30,0,120, + 28,0,112,56,0,224,48,0,64,96,0,27,29,116,30,2, + 0,3,0,1,192,63,0,3,128,255,0,7,128,15,0,15, + 0,15,0,14,0,15,0,28,0,15,0,60,0,15,0,120, + 0,15,0,112,0,15,0,240,0,15,1,224,0,15,1,192, + 0,31,131,128,0,255,231,128,0,0,15,0,0,0,14,1, + 0,0,28,15,128,0,60,15,128,0,120,31,128,0,112,55, + 128,0,224,55,128,1,224,103,128,3,192,199,128,3,129,199, + 128,7,129,255,224,15,3,255,192,30,0,7,128,28,0,7, + 128,60,0,63,224,26,29,116,30,2,0,3,0,1,192,63, + 0,7,128,255,0,7,128,15,0,15,0,15,0,30,0,15, + 0,60,0,15,0,60,0,15,0,120,0,15,0,240,0,15, + 0,224,0,15,1,224,0,15,3,192,0,31,135,128,0,255, + 231,0,0,0,15,0,0,0,30,63,0,0,60,127,192,0, + 56,231,192,0,121,195,192,0,241,131,192,1,224,3,128,1, + 192,7,0,3,192,14,0,7,128,28,0,15,0,56,0,14, + 0,112,64,30,0,224,64,60,1,255,192,120,3,255,192,28, + 29,116,30,1,0,15,128,0,224,63,192,1,192,115,224,3, + 192,241,224,7,128,129,192,7,0,3,128,14,0,15,192,30, + 0,15,224,60,0,1,240,56,0,0,240,120,0,0,240,240, + 0,0,240,224,0,225,225,192,0,127,195,192,0,31,7,128, + 0,0,7,0,128,0,14,7,192,0,30,7,192,0,60,11, + 192,0,56,27,192,0,112,19,192,0,240,51,192,1,224,99, + 192,1,192,227,192,3,192,255,240,7,129,255,224,15,0,3, + 192,14,0,3,192,30,0,31,240,18,35,105,22,2,243,0, + 248,0,1,252,0,3,252,0,3,252,0,3,252,0,3,248, + 0,1,240,0,0,0,0,0,0,0,0,0,0,0,112,0, + 0,240,0,0,240,0,0,240,0,0,240,0,1,240,0,1, + 224,0,3,224,0,7,192,0,15,192,0,15,128,0,31,0, + 0,63,0,0,126,0,0,126,0,0,252,0,0,252,3,192, + 252,15,192,252,15,192,252,15,192,252,15,128,126,31,128,127, + 31,0,63,254,0,15,240,0,30,42,168,30,0,0,0,32, + 0,0,0,112,0,0,0,248,0,0,1,252,0,0,1,254, + 0,0,0,255,0,0,0,63,128,0,0,15,192,0,0,3, + 224,0,0,0,224,0,0,0,64,0,0,0,0,0,0,1, + 128,0,0,7,128,0,0,15,192,0,0,31,192,0,0,31, + 224,0,0,31,224,0,0,63,224,0,0,63,240,0,0,59, + 240,0,0,121,240,0,0,121,248,0,0,113,248,0,0,240, + 252,0,0,240,252,0,0,224,252,0,1,224,126,0,1,224, + 126,0,1,192,126,0,3,255,255,0,3,255,255,0,3,128, + 31,0,7,128,31,128,7,0,31,128,7,0,15,192,15,0, + 15,192,14,0,15,192,14,0,7,224,30,0,7,224,255,192, + 63,252,255,192,63,252,30,42,168,30,0,0,0,0,32,0, + 0,0,48,0,0,0,124,0,0,0,254,0,0,1,254,0, + 0,3,248,0,0,7,224,0,0,15,128,0,0,31,0,0, + 0,60,0,0,0,16,0,0,0,0,0,0,0,1,128,0, + 0,7,128,0,0,15,192,0,0,31,192,0,0,31,224,0, + 0,31,224,0,0,63,224,0,0,63,240,0,0,59,240,0, + 0,121,240,0,0,121,248,0,0,113,248,0,0,240,252,0, + 0,240,252,0,0,224,252,0,1,224,126,0,1,224,126,0, + 1,192,126,0,3,255,255,0,3,255,255,0,3,128,31,0, + 7,128,31,128,7,0,31,128,7,0,15,192,15,0,15,192, + 14,0,15,192,14,0,7,224,30,0,7,224,255,192,63,252, + 255,192,63,252,30,41,164,30,0,0,0,7,0,0,0,7, + 128,0,0,15,192,0,0,31,224,0,0,63,240,0,0,127, + 248,0,0,248,248,0,1,240,60,0,1,192,14,0,1,0, + 8,0,0,0,0,0,0,1,128,0,0,7,128,0,0,15, + 192,0,0,31,192,0,0,31,224,0,0,31,224,0,0,63, + 224,0,0,63,240,0,0,59,240,0,0,121,240,0,0,121, + 248,0,0,113,248,0,0,240,252,0,0,240,252,0,0,224, + 252,0,1,224,126,0,1,224,126,0,1,192,126,0,3,255, + 255,0,3,255,255,0,3,128,31,0,7,128,31,128,7,0, + 31,128,7,0,15,192,15,0,15,192,14,0,15,192,14,0, + 7,224,30,0,7,224,255,192,63,252,255,192,63,252,30,40, + 160,30,0,0,0,16,4,0,0,127,7,0,0,255,254,0, + 1,255,254,0,1,255,252,0,3,255,248,0,3,3,240,0, + 2,0,64,0,0,0,0,0,0,0,0,0,0,1,128,0, + 0,7,128,0,0,15,192,0,0,31,192,0,0,31,224,0, + 0,31,224,0,0,63,224,0,0,63,240,0,0,59,240,0, + 0,121,240,0,0,121,248,0,0,113,248,0,0,240,252,0, + 0,240,252,0,0,224,252,0,1,224,126,0,1,224,126,0, + 1,192,126,0,3,255,255,0,3,255,255,0,3,128,31,0, + 7,128,31,128,7,0,31,128,7,0,15,192,15,0,15,192, + 14,0,15,192,14,0,7,224,30,0,7,224,255,192,63,252, + 255,192,63,252,30,40,160,30,0,0,0,64,16,0,0,240, + 60,0,1,248,126,0,1,248,126,0,1,248,126,0,1,240, + 124,0,1,240,124,0,0,64,32,0,0,0,0,0,0,0, + 0,0,0,1,128,0,0,7,128,0,0,15,192,0,0,31, + 192,0,0,31,224,0,0,31,224,0,0,63,224,0,0,63, + 240,0,0,59,240,0,0,121,240,0,0,121,248,0,0,113, + 248,0,0,240,252,0,0,240,252,0,0,224,252,0,1,224, + 126,0,1,224,126,0,1,192,126,0,3,255,255,0,3,255, + 255,0,3,128,31,0,7,128,31,128,7,0,31,128,7,0, + 15,192,15,0,15,192,14,0,15,192,14,0,7,224,30,0, + 7,224,255,192,63,252,255,192,63,252,30,42,168,30,0,0, + 0,1,0,0,0,15,224,0,0,31,224,0,0,28,240,0, + 0,60,240,0,0,60,240,0,0,60,224,0,0,63,224,0, + 0,31,128,0,0,4,0,0,0,0,0,0,0,0,0,0, + 0,1,128,0,0,7,128,0,0,15,192,0,0,31,192,0, + 0,31,224,0,0,31,224,0,0,63,224,0,0,63,240,0, + 0,59,240,0,0,121,240,0,0,121,248,0,0,113,248,0, + 0,240,252,0,0,240,252,0,0,224,252,0,1,224,126,0, + 1,224,126,0,1,192,126,0,3,255,255,0,3,255,255,0, + 3,128,31,0,7,128,31,128,7,0,31,128,7,0,15,192, + 15,0,15,192,14,0,15,192,14,0,7,224,30,0,7,224, + 255,192,63,252,255,192,63,252,38,30,150,39,0,0,0,127, + 255,255,240,0,127,255,255,248,0,15,255,0,112,0,7,255, + 0,112,0,15,63,0,112,0,15,63,0,48,0,15,63,0, + 48,0,30,63,0,48,0,30,63,0,0,0,60,63,0,0, + 0,60,63,0,0,0,60,63,0,0,0,120,63,0,0,0, + 127,255,255,192,0,255,255,255,128,0,240,63,1,128,0,224, + 63,0,0,1,224,63,0,0,1,224,63,0,0,3,192,63, + 0,0,3,192,63,0,0,3,128,63,0,0,7,128,63,0, + 0,7,128,63,0,12,15,0,63,0,12,15,0,63,0,28, + 14,0,63,0,28,31,0,127,128,124,255,193,255,255,248,255, + 193,255,255,248,24,40,120,27,1,246,0,31,224,0,255,252, + 1,255,254,7,224,254,15,192,126,31,128,60,31,0,28,62, + 0,0,62,0,0,126,0,0,124,0,0,124,0,0,252,0, + 0,252,0,0,252,0,0,252,0,0,252,0,0,252,0,0, + 252,0,0,252,0,0,254,0,0,126,0,0,127,0,0,63, + 128,2,63,128,7,31,224,15,15,252,254,7,255,248,3,255, + 240,0,255,192,0,30,0,0,28,0,0,31,0,0,63,192, + 0,63,192,0,15,192,0,15,128,0,31,128,0,254,0,0, + 112,0,23,42,126,25,1,0,1,0,0,3,128,0,15,192, + 0,15,224,0,31,240,0,7,248,0,1,252,0,0,126,0, + 0,31,0,0,7,0,0,2,0,0,0,0,255,255,248,255, + 255,252,63,128,56,31,128,56,31,128,24,31,128,24,31,128, + 24,31,128,24,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,255,224,31,255,224,31,128,192,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,6,31,128,6,31,128,14,31,128,14,63,192,30, + 255,255,254,255,255,252,23,42,126,25,1,0,0,2,0,0, + 3,128,0,7,224,0,15,240,0,31,240,0,63,192,0,127, + 0,0,252,0,1,240,0,1,192,0,1,0,0,0,0,0, + 255,255,248,255,255,252,63,128,56,31,128,56,31,128,24,31, + 128,24,31,128,24,31,128,24,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,255,224,31,255,224,31,128,192, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,6,31,128,6,31,128,14,31,128, + 14,63,192,30,255,255,254,255,255,252,23,41,123,25,1,0, + 0,56,0,0,124,0,0,254,0,0,255,0,1,255,0,3, + 255,128,7,199,192,15,1,224,14,0,224,8,0,64,0,0, + 0,255,255,248,255,255,252,63,128,56,31,128,56,31,128,24, + 31,128,24,31,128,24,31,128,24,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,255,224,31,255,224,31,128, + 192,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,6,31,128,6,31,128,14,31, + 128,14,63,192,30,255,255,254,255,255,252,23,40,120,25,1, + 0,2,0,128,7,129,224,15,195,240,15,195,240,15,195,240, + 15,131,224,15,3,192,4,1,0,0,0,0,0,0,0,255, + 255,248,255,255,252,63,128,56,31,128,56,31,128,24,31,128, + 24,31,128,24,31,128,24,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,255,224,31,255,224,31,128,192,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,6,31,128,6,31,128,14,31,128,14, + 63,192,30,255,255,254,255,255,252,15,42,84,16,255,0,8, + 0,28,0,62,0,127,0,127,128,191,192,15,224,3,240,0, + 248,0,56,0,16,0,0,31,254,31,254,7,248,3,240,3, + 240,3,240,3,240,3,240,3,240,3,240,3,240,3,240,3, + 240,3,240,3,240,3,240,3,240,3,240,3,240,3,240,3, + 240,3,240,3,240,3,240,3,240,3,240,3,240,7,248,31, + 254,31,254,14,42,84,16,2,0,0,128,0,224,1,248,3, + 252,7,252,15,240,31,192,63,0,124,0,112,0,32,0,0, + 0,255,240,255,240,63,192,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,63,192,255,240,255,240,16,41,82, + 16,0,0,3,128,7,192,15,224,15,240,31,240,63,248,124, + 124,240,30,224,15,128,4,0,0,63,252,63,252,15,240,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,15, + 240,63,252,63,252,16,40,80,16,0,0,32,8,120,30,252, + 63,252,63,252,63,248,62,240,60,64,16,0,0,0,0,63, + 252,63,252,15,240,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,15,240,63,252,63,252,29,30,120,31,0, + 0,3,255,192,0,255,255,248,0,127,192,254,0,143,192,63, + 128,15,192,31,192,15,192,15,192,15,192,7,224,15,192,7, + 240,15,192,3,240,15,192,3,240,15,192,3,248,15,192,1, + 248,15,192,1,248,127,255,1,248,255,255,1,248,15,192,1, + 248,15,192,1,248,15,192,1,248,15,192,1,248,15,192,1, + 240,15,192,3,240,15,192,3,240,15,192,7,224,15,192,7, + 224,15,192,15,192,15,192,31,128,15,192,63,0,31,224,254, + 0,127,255,248,0,127,255,192,0,30,40,160,32,1,0,0, + 16,4,0,0,127,7,0,0,255,255,0,0,255,254,0,1, + 255,252,0,3,255,252,0,3,3,248,0,2,0,64,0,0, + 0,0,0,0,0,0,0,255,0,15,252,255,128,15,252,63, + 192,3,240,31,192,1,224,31,224,1,224,31,240,1,224,31, + 240,1,224,31,248,1,224,31,252,1,224,30,254,1,224,30, + 126,1,224,30,63,1,224,30,63,129,224,30,31,129,224,30, + 15,193,224,30,7,225,224,30,7,225,224,30,3,241,224,30, + 1,249,224,30,1,253,224,30,0,253,224,30,0,127,224,30, + 0,63,224,30,0,63,224,30,0,31,224,30,0,15,224,30, + 0,7,224,63,0,7,224,255,192,3,224,255,192,0,224,27, + 42,168,30,1,0,0,64,0,0,0,224,0,0,1,240,0, + 0,3,248,0,0,3,252,0,0,1,254,0,0,0,127,0, + 0,0,31,128,0,0,7,192,0,0,1,192,0,0,0,128, + 0,0,0,0,0,0,31,192,0,0,255,240,0,3,225,252, + 0,7,128,126,0,15,0,63,0,31,0,31,0,30,0,31, + 128,62,0,15,128,126,0,15,192,124,0,15,192,124,0,7, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,254,0,7,192,126,0,15,192,126,0,15,128,127,0,15, + 128,63,0,31,0,31,128,31,0,31,192,62,0,15,240,252, + 0,7,255,240,0,1,255,224,0,0,127,0,0,27,42,168, + 30,1,0,0,0,64,0,0,0,96,0,0,0,248,0,0, + 1,252,0,0,3,252,0,0,7,240,0,0,15,192,0,0, + 31,128,0,0,62,0,0,0,120,0,0,0,32,0,0,0, + 0,0,0,0,31,192,0,0,255,240,0,3,225,252,0,7, + 128,126,0,15,0,63,0,31,0,31,0,30,0,31,128,62, + 0,15,128,126,0,15,192,124,0,15,192,124,0,7,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,254, + 0,7,192,126,0,15,192,126,0,15,128,127,0,15,128,63, + 0,31,0,31,128,31,0,31,192,62,0,15,240,252,0,7, + 255,240,0,1,255,224,0,0,127,0,0,27,41,164,30,1, + 0,0,6,0,0,0,15,0,0,0,31,128,0,0,63,192, + 0,0,127,224,0,0,255,240,0,1,249,248,0,3,224,120, + 0,3,128,28,0,2,0,8,0,0,0,0,0,0,31,192, + 0,0,255,240,0,3,225,252,0,7,128,126,0,15,0,63, + 0,31,0,31,0,30,0,31,128,62,0,15,128,126,0,15, + 192,124,0,15,192,124,0,7,224,252,0,7,224,252,0,7, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,7,224,252,0,7,224,254,0,7,192,126,0,15, + 192,126,0,15,128,127,0,15,128,63,0,31,0,31,128,31, + 0,31,192,62,0,15,240,252,0,7,255,240,0,1,255,224, + 0,0,127,0,0,27,40,160,30,1,0,0,32,8,0,0, + 254,14,0,1,255,254,0,1,255,252,0,3,255,248,0,7, + 255,248,0,6,7,240,0,2,0,128,0,0,0,0,0,0, + 0,0,0,0,31,192,0,0,255,240,0,3,225,252,0,7, + 128,126,0,15,0,63,0,31,0,31,0,30,0,31,128,62, + 0,15,128,126,0,15,192,124,0,15,192,124,0,7,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,254, + 0,7,192,126,0,15,192,126,0,15,128,127,0,15,128,63, + 0,31,0,31,128,31,0,31,192,62,0,15,240,252,0,7, + 255,240,0,1,255,224,0,0,127,0,0,27,40,160,30,1, + 0,0,128,32,0,1,240,124,0,1,240,124,0,3,240,252, + 0,3,240,252,0,3,240,252,0,3,224,248,0,0,128,32, + 0,0,0,0,0,0,0,0,0,0,31,192,0,0,255,240, + 0,3,225,252,0,7,128,126,0,15,0,63,0,31,0,31, + 0,30,0,31,128,62,0,15,128,126,0,15,192,124,0,15, + 192,124,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,7,224,254,0,7,192,126,0,15,192,126,0,15, + 128,127,0,15,128,63,0,31,0,31,128,31,0,31,192,62, + 0,15,240,252,0,7,255,240,0,1,255,224,0,0,127,0, + 0,16,15,30,20,2,6,96,6,240,15,120,31,60,62,30, + 124,15,248,7,240,3,192,7,224,15,248,30,124,60,62,120, + 31,240,15,96,6,27,31,124,30,1,255,0,31,195,224,0, + 255,247,192,3,225,255,128,7,128,127,0,15,0,63,0,31, + 0,63,128,30,0,127,128,62,0,255,192,126,0,255,192,124, + 1,255,192,124,3,239,224,252,3,231,224,252,7,199,224,252, + 15,135,224,252,15,7,224,252,31,7,224,252,62,7,224,252, + 60,7,224,252,120,7,192,254,248,7,192,127,240,15,192,127, + 224,15,128,127,192,15,128,63,128,31,0,63,128,31,0,31, + 192,62,0,31,240,252,0,63,255,240,0,121,255,224,0,248, + 127,0,0,192,0,0,0,29,42,168,32,1,0,0,32,0, + 0,0,48,0,0,0,248,0,0,1,252,0,0,1,254,0, + 0,0,127,0,0,0,31,128,0,0,15,192,0,0,3,224, + 0,0,0,240,0,0,0,64,0,0,0,0,0,255,240,31, + 248,255,240,31,248,63,192,7,224,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,128,31,192,7,128,15,192,7,128,15,224,7, + 0,7,224,15,0,3,248,62,0,1,255,252,0,0,255,240, + 0,0,31,192,0,29,42,168,32,1,0,0,0,32,0,0, + 0,56,0,0,0,124,0,0,0,254,0,0,1,254,0,0, + 3,252,0,0,7,240,0,0,15,192,0,0,31,0,0,0, + 28,0,0,0,16,0,0,0,0,0,0,255,240,31,248,255, + 240,31,248,63,192,7,224,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,128,31,192,7,128,15,192,7,128,15,224,7,0,7, + 224,15,0,3,248,62,0,1,255,252,0,0,255,240,0,0, + 31,192,0,29,41,164,32,1,0,0,3,128,0,0,7,128, + 0,0,15,192,0,0,31,224,0,0,63,240,0,0,127,248, + 0,0,124,124,0,0,240,62,0,1,192,14,0,0,128,4, + 0,0,0,0,0,255,240,31,248,255,240,31,248,63,192,7, + 224,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,128,31,192,7, + 128,15,192,7,128,15,224,7,0,7,224,15,0,3,248,62, + 0,1,255,252,0,0,255,240,0,0,31,192,0,29,40,160, + 32,1,0,0,32,8,0,0,248,62,0,0,248,62,0,1, + 248,126,0,1,248,126,0,1,248,126,0,0,240,60,0,0, + 64,16,0,0,0,0,0,0,0,0,0,255,240,31,248,255, + 240,31,248,63,192,7,224,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,128,31,192,7,128,15,192,7,128,15,224,7,0,7, + 224,15,0,3,248,62,0,1,255,252,0,0,255,240,0,0, + 31,192,0,29,42,168,29,0,0,0,0,32,0,0,0,48, + 0,0,0,124,0,0,1,254,0,0,3,254,0,0,7,248, + 0,0,15,224,0,0,31,128,0,0,62,0,0,0,60,0, + 0,0,16,0,0,0,0,0,0,127,0,31,248,255,128,31, + 248,31,192,3,192,15,192,3,128,7,224,7,128,3,240,7, + 0,3,240,15,0,1,248,14,0,1,248,30,0,0,252,28, + 0,0,124,60,0,0,126,56,0,0,63,120,0,0,63,240, + 0,0,31,240,0,0,31,224,0,0,15,224,0,0,15,192, + 0,0,15,192,0,0,15,192,0,0,15,192,0,0,15,192, + 0,0,15,192,0,0,15,192,0,0,15,192,0,0,15,192, + 0,0,15,192,0,0,31,224,0,0,255,252,0,0,255,252, + 0,24,30,90,27,1,0,255,248,0,255,248,0,63,192,0, + 31,128,0,31,128,0,31,128,0,31,255,128,31,255,240,31, + 131,248,31,128,252,31,128,126,31,128,127,31,128,63,31,128, + 63,31,128,63,31,128,63,31,128,63,31,128,62,31,128,126, + 31,128,252,31,129,248,31,191,240,31,191,128,31,128,0,31, + 128,0,31,128,0,31,128,0,63,192,0,255,248,0,255,248, + 0,28,36,144,31,1,0,0,7,240,0,0,63,252,0,0, + 255,254,0,1,240,255,0,3,224,63,128,7,192,31,128,7, + 192,31,192,15,128,15,192,15,128,15,192,31,128,15,192,31, + 128,15,192,31,128,31,128,31,128,63,0,31,128,126,0,31, + 129,248,0,31,135,224,0,31,135,128,0,31,143,128,0,31, + 143,128,0,31,143,192,0,31,143,224,0,31,135,248,0,31, + 135,254,0,31,131,255,128,31,128,255,192,31,128,63,224,31, + 128,31,240,31,128,7,240,31,140,3,240,31,142,1,240,31, + 142,1,240,31,142,1,240,31,143,1,224,63,143,195,192,255, + 143,255,128,255,129,254,0,23,35,105,24,1,0,1,192,0, + 15,192,0,15,224,0,7,240,0,3,240,0,1,248,0,0, + 248,0,0,124,0,0,60,0,0,30,0,0,12,0,0,0, + 0,0,0,0,0,255,0,15,255,128,31,15,192,62,7,224, + 126,7,224,252,7,224,96,7,224,0,7,224,0,31,224,1, + 255,224,7,255,224,31,231,224,63,135,224,63,7,224,126,7, + 224,126,7,224,126,7,224,126,31,228,127,63,252,63,247,254, + 63,231,240,15,131,128,23,35,105,24,1,0,0,15,0,0, + 15,192,0,31,224,0,31,128,0,63,0,0,62,0,0,124, + 0,0,120,0,0,240,0,0,224,0,0,192,0,0,0,0, + 0,0,0,0,255,0,15,255,128,31,15,192,62,7,224,126, + 7,224,252,7,224,96,7,224,0,7,224,0,31,224,1,255, + 224,7,255,224,31,231,224,63,135,224,63,7,224,126,7,224, + 126,7,224,126,7,224,126,31,228,127,63,252,63,247,254,63, + 231,240,15,131,128,23,35,105,24,1,0,0,120,0,0,252, + 0,0,252,0,1,254,0,3,255,0,3,255,0,7,207,128, + 15,135,192,15,1,192,28,0,224,8,0,64,0,0,0,0, + 0,0,0,255,0,15,255,128,31,15,192,62,7,224,126,7, + 224,252,7,224,96,7,224,0,7,224,0,31,224,1,255,224, + 7,255,224,31,231,224,63,135,224,63,7,224,126,7,224,126, + 7,224,126,7,224,126,31,228,127,63,252,63,247,254,63,231, + 240,15,131,128,23,33,99,24,1,0,3,192,48,7,240,48, + 15,252,96,31,255,224,31,255,192,56,127,128,48,15,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,255,0,15,255, + 128,31,15,192,62,7,224,126,7,224,252,7,224,96,7,224, + 0,7,224,0,31,224,1,255,224,7,255,224,31,231,224,63, + 135,224,63,7,224,126,7,224,126,7,224,126,7,224,126,31, + 228,127,63,252,63,247,254,63,231,240,15,131,128,23,33,99, + 24,1,0,7,1,192,15,131,224,31,135,224,31,135,224,31, + 135,224,31,7,192,14,3,128,0,0,0,0,0,0,0,0, + 0,0,0,0,0,255,0,15,255,128,31,15,192,62,7,224, + 126,7,224,252,7,224,96,7,224,0,7,224,0,31,224,1, + 255,224,7,255,224,31,231,224,63,135,224,63,7,224,126,7, + 224,126,7,224,126,7,224,126,31,228,127,63,252,63,247,254, + 63,231,240,15,131,128,23,34,102,24,1,0,0,60,0,0, + 254,0,1,239,0,3,207,0,3,207,0,3,207,0,3,238, + 0,1,252,0,0,248,0,0,0,0,0,0,0,0,0,0, + 0,255,0,15,255,128,31,15,192,62,7,224,126,7,224,252, + 7,224,96,7,224,0,7,224,0,31,224,1,255,224,7,255, + 224,31,231,224,63,135,224,63,7,224,126,7,224,126,7,224, + 126,7,224,126,31,228,127,63,252,63,247,254,63,231,240,15, + 131,128,33,22,110,35,1,0,0,63,3,224,0,1,255,159, + 248,0,7,255,252,62,0,15,135,248,30,0,31,3,240,31, + 0,63,3,240,15,0,127,3,224,15,128,120,3,224,15,128, + 0,3,224,15,128,0,127,255,255,128,3,255,255,254,0,15, + 195,224,0,0,63,3,224,0,0,126,3,224,0,0,124,3, + 240,0,0,252,3,240,1,0,252,7,248,7,0,254,31,252, + 31,0,255,252,255,254,0,127,248,127,252,0,127,224,63,240, + 0,31,128,15,192,0,20,32,96,22,2,246,0,127,128,1, + 255,240,7,135,224,15,3,224,30,1,224,62,0,192,124,0, + 192,124,0,0,252,0,0,252,0,0,252,0,0,252,0,0, + 252,0,0,252,0,0,254,0,0,126,0,0,127,0,96,127, + 129,224,63,255,192,31,255,128,15,254,0,3,252,0,0,240, + 0,0,224,0,0,252,0,1,254,0,0,254,0,0,126,0, + 0,124,0,0,252,0,3,240,0,1,128,0,19,35,105,23, + 2,0,3,128,0,15,192,0,31,224,0,7,224,0,3,240, + 0,1,240,0,0,248,0,0,120,0,0,60,0,0,28,0, + 0,8,0,0,0,0,0,0,0,0,252,0,7,255,0,15, + 31,128,30,15,128,62,15,192,124,7,192,124,7,224,124,7, + 224,252,7,224,255,255,224,255,255,128,252,0,0,252,0,0, + 252,0,0,254,0,0,126,0,64,127,0,224,63,131,192,63, + 255,128,31,255,0,15,254,0,3,248,0,19,35,105,23,2, + 0,0,14,0,0,31,192,0,31,192,0,63,128,0,63,0, + 0,126,0,0,124,0,0,248,0,0,240,0,1,224,0,0, + 192,0,0,0,0,0,0,0,0,252,0,7,255,0,15,31, + 128,30,15,128,62,15,192,124,7,192,124,7,224,124,7,224, + 252,7,224,255,255,224,255,255,128,252,0,0,252,0,0,252, + 0,0,254,0,0,126,0,64,127,0,224,63,131,192,63,255, + 128,31,255,0,15,254,0,3,248,0,19,35,105,23,2,0, + 0,120,0,0,248,0,1,252,0,1,254,0,3,254,0,7, + 255,0,15,223,128,15,7,128,30,3,192,60,1,224,24,0, + 64,0,0,0,0,0,0,0,252,0,7,255,0,15,31,128, + 30,15,128,62,15,192,124,7,192,124,7,224,124,7,224,252, + 7,224,255,255,224,255,255,128,252,0,0,252,0,0,252,0, + 0,254,0,0,126,0,64,127,0,224,63,131,192,63,255,128, + 31,255,0,15,254,0,3,248,0,19,33,99,23,2,0,15, + 3,192,31,7,192,31,135,224,31,135,224,31,7,192,31,7, + 192,14,3,128,0,0,0,0,0,0,0,0,0,0,0,0, + 0,252,0,7,255,0,15,31,128,30,15,128,62,15,192,124, + 7,192,124,7,224,124,7,224,252,7,224,255,255,224,255,255, + 128,252,0,0,252,0,0,252,0,0,254,0,0,126,0,64, + 127,0,224,63,131,192,63,255,128,31,255,0,15,254,0,3, + 248,0,13,35,70,14,0,0,28,0,126,0,254,0,127,0, + 31,0,15,128,7,128,3,192,1,192,0,224,0,64,0,0, + 0,0,1,192,63,192,127,192,63,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,15,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,31,224,127,248,127,248,14,35, + 70,14,1,0,0,224,1,252,1,252,3,248,3,240,7,224, + 7,192,15,128,15,0,30,0,8,0,0,0,0,0,3,128, + 127,128,255,128,127,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,63,192,255,240,255,240,16,35,70,14,255,0, + 3,192,3,224,7,240,15,240,15,248,31,252,62,124,60,30, + 120,15,240,7,64,3,0,0,0,0,0,224,31,224,63,224, + 31,224,7,224,7,224,7,224,7,224,7,224,7,224,7,224, + 7,224,7,224,7,224,7,224,7,224,7,224,7,224,7,224, + 15,240,63,252,63,252,16,33,66,14,255,0,56,14,124,31, + 124,31,252,63,252,63,124,31,120,30,0,0,0,0,0,0, + 0,0,0,224,31,224,63,224,31,224,7,224,7,224,7,224, + 7,224,7,224,7,224,7,224,7,224,7,224,7,224,7,224, + 7,224,7,224,7,224,7,224,15,240,63,252,63,252,21,34, + 102,25,2,0,1,192,0,15,224,0,63,240,248,31,255,248, + 0,255,192,0,126,0,1,255,0,7,239,128,31,143,128,2, + 7,192,0,3,224,0,3,224,1,251,240,7,253,240,15,255, + 240,31,15,248,62,7,248,62,3,248,124,3,248,124,1,248, + 252,1,248,252,1,248,252,1,248,252,1,248,252,1,240,252, + 1,240,252,1,240,126,3,224,126,3,224,63,3,192,63,7, + 128,31,143,0,7,254,0,1,248,0,26,33,132,28,1,0, + 0,240,12,0,1,252,12,0,3,255,28,0,3,255,248,0, + 7,255,240,0,14,31,224,0,12,3,192,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,3,1,240,0, + 127,135,252,0,255,159,252,0,63,191,254,0,31,248,254,0, + 31,224,126,0,31,192,126,0,31,128,126,0,31,128,126,0, + 31,128,126,0,31,128,126,0,31,128,126,0,31,128,126,0, + 31,128,126,0,31,128,126,0,31,128,126,0,31,128,126,0, + 31,128,126,0,31,128,126,0,63,192,255,0,255,243,255,192, + 255,243,255,192,21,35,105,25,2,0,1,192,0,15,224,0, + 15,224,0,7,240,0,3,240,0,1,248,0,0,248,0,0, + 124,0,0,60,0,0,30,0,0,12,0,0,0,0,0,0, + 0,0,252,0,3,255,0,15,15,192,30,7,224,62,7,224, + 62,3,240,124,3,240,124,1,248,252,1,248,252,1,248,252, + 1,248,252,1,248,252,1,248,252,1,248,252,1,240,126,1, + 240,126,3,224,62,3,224,63,3,192,31,135,128,7,254,0, + 1,248,0,21,35,105,25,2,0,0,15,0,0,15,192,0, + 31,224,0,31,128,0,63,0,0,62,0,0,124,0,0,120, + 0,0,240,0,0,224,0,0,192,0,0,0,0,0,0,0, + 0,252,0,3,255,0,15,15,192,30,7,224,62,7,224,62, + 3,240,124,3,240,124,1,248,252,1,248,252,1,248,252,1, + 248,252,1,248,252,1,248,252,1,248,252,1,240,126,1,240, + 126,3,224,62,3,224,63,3,192,31,135,128,7,254,0,1, + 248,0,21,35,105,25,2,0,0,120,0,0,252,0,0,252, + 0,1,254,0,3,255,0,3,255,0,7,207,128,15,135,192, + 15,1,192,28,0,224,8,0,64,0,0,0,0,0,0,0, + 252,0,3,255,0,15,15,192,30,7,224,62,7,224,62,3, + 240,124,3,240,124,1,248,252,1,248,252,1,248,252,1,248, + 252,1,248,252,1,248,252,1,248,252,1,240,126,1,240,126, + 3,224,62,3,224,63,3,192,31,135,128,7,254,0,1,248, + 0,21,33,99,25,2,0,3,192,48,7,240,48,15,252,96, + 31,255,224,31,255,192,56,127,128,48,15,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,252,0,3,255,0,15,15, + 192,30,7,224,62,7,224,62,3,240,124,3,240,124,1,248, + 252,1,248,252,1,248,252,1,248,252,1,248,252,1,248,252, + 1,248,252,1,240,126,1,240,126,3,224,62,3,224,63,3, + 192,31,135,128,7,254,0,1,248,0,21,33,99,25,2,0, + 7,1,192,15,131,224,31,135,224,31,135,224,31,135,224,31, + 7,192,14,3,128,0,0,0,0,0,0,0,0,0,0,0, + 0,0,252,0,3,255,0,15,15,192,30,7,224,62,7,224, + 62,3,240,124,3,240,124,1,248,252,1,248,252,1,248,252, + 1,248,252,1,248,252,1,248,252,1,248,252,1,240,126,1, + 240,126,3,224,62,3,224,63,3,192,31,135,128,7,254,0, + 1,248,0,18,18,54,20,1,4,0,192,0,1,224,0,1, + 224,0,1,224,0,1,224,0,0,192,0,0,0,0,127,255, + 192,127,255,192,255,255,128,0,0,0,0,0,0,0,192,0, + 1,224,0,1,224,0,1,224,0,1,224,0,0,192,0,21, + 24,72,25,2,255,0,0,24,0,252,56,3,255,240,15,15, + 224,30,7,224,62,3,240,60,7,240,124,15,240,124,31,248, + 252,29,248,252,57,248,252,121,248,252,241,248,252,225,248,253, + 193,248,255,193,240,127,129,240,127,1,224,62,3,224,63,3, + 192,63,135,128,127,254,0,113,248,0,192,0,0,26,35,140, + 27,1,0,0,224,0,0,3,240,0,0,7,240,0,0,1, + 248,0,0,0,248,0,0,0,124,0,0,0,62,0,0,0, + 30,0,0,0,15,0,0,0,7,0,0,0,2,0,0,0, + 0,0,0,0,0,0,0,3,128,28,0,255,135,252,0,255, + 135,252,0,31,128,252,0,31,128,252,0,31,128,252,0,31, + 128,252,0,31,128,252,0,31,128,252,0,31,128,252,0,31, + 128,252,0,31,128,252,0,31,128,252,0,31,128,252,0,31, + 128,252,0,31,128,252,0,31,129,252,0,31,199,252,128,31, + 255,255,128,15,254,255,192,7,248,126,0,3,224,112,0,26, + 35,140,27,1,0,0,3,128,0,0,7,240,0,0,7,240, + 0,0,15,224,0,0,15,192,0,0,31,128,0,0,31,0, + 0,0,62,0,0,0,60,0,0,0,120,0,0,0,48,0, + 0,0,0,0,0,0,0,0,0,3,128,28,0,255,135,252, + 0,255,135,252,0,31,128,252,0,31,128,252,0,31,128,252, + 0,31,128,252,0,31,128,252,0,31,128,252,0,31,128,252, + 0,31,128,252,0,31,128,252,0,31,128,252,0,31,128,252, + 0,31,128,252,0,31,128,252,0,31,129,252,0,31,199,252, + 128,31,255,255,128,15,254,255,192,7,248,126,0,3,224,112, + 0,26,35,140,27,1,0,0,30,0,0,0,62,0,0,0, + 127,0,0,0,255,128,0,0,255,128,0,1,255,192,0,3, + 247,224,0,3,193,224,0,7,128,240,0,15,0,112,0,6, + 0,48,0,0,0,0,0,0,0,0,0,3,128,28,0,255, + 135,252,0,255,135,252,0,31,128,252,0,31,128,252,0,31, + 128,252,0,31,128,252,0,31,128,252,0,31,128,252,0,31, + 128,252,0,31,128,252,0,31,128,252,0,31,128,252,0,31, + 128,252,0,31,128,252,0,31,128,252,0,31,129,252,0,31, + 199,252,128,31,255,255,128,15,254,255,192,7,248,126,0,3, + 224,112,0,26,33,132,27,1,0,3,192,240,0,7,193,240, + 0,7,225,248,0,7,225,248,0,7,193,240,0,7,193,240, + 0,7,129,224,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,3,128,28,0,255,135,252,0,255,135,252, + 0,31,128,252,0,31,128,252,0,31,128,252,0,31,128,252, + 0,31,128,252,0,31,128,252,0,31,128,252,0,31,128,252, + 0,31,128,252,0,31,128,252,0,31,128,252,0,31,128,252, + 0,31,128,252,0,31,129,252,0,31,199,252,128,31,255,255, + 128,15,254,255,192,7,248,126,0,3,224,112,0,25,46,184, + 24,255,245,0,1,224,0,0,3,248,0,0,3,248,0,0, + 3,240,0,0,7,224,0,0,7,192,0,0,15,128,0,0, + 15,0,0,0,30,0,0,0,28,0,0,0,56,0,0,0, + 0,0,0,0,0,0,0,127,240,127,128,127,240,127,128,31, + 192,30,0,15,192,28,0,15,192,28,0,7,224,60,0,7, + 224,56,0,3,240,56,0,3,240,112,0,1,240,112,0,1, + 248,240,0,1,248,224,0,0,252,224,0,0,253,224,0,0, + 125,192,0,0,127,192,0,0,127,128,0,0,63,128,0,0, + 63,128,0,0,31,0,0,0,31,0,0,0,14,0,0,0, + 14,0,0,0,30,0,0,0,28,0,0,0,60,0,0,0, + 120,0,0,32,248,0,0,63,240,0,0,127,224,0,0,255, + 192,0,0,255,128,0,0,126,0,0,0,24,47,141,27,1, + 245,3,0,0,63,128,0,255,128,0,255,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,131,224,31,143, + 248,31,191,252,31,255,252,31,240,254,31,192,126,31,128,63, + 31,128,63,31,128,31,31,128,31,31,128,31,31,128,31,31, + 128,31,31,128,30,31,128,30,31,128,62,31,192,60,31,240, + 124,31,255,248,31,255,240,31,159,224,31,135,128,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,63,192,0,255,248,0,255,248,0,25,44, + 176,24,255,245,0,224,56,0,1,240,124,0,3,240,252,0, + 3,240,252,0,3,240,252,0,3,224,248,0,1,192,112,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 127,240,127,128,127,240,127,128,31,192,30,0,15,192,28,0, + 15,192,28,0,7,224,60,0,7,224,56,0,3,240,56,0, + 3,240,112,0,1,240,112,0,1,248,240,0,1,248,224,0, + 0,252,224,0,0,253,224,0,0,125,192,0,0,127,192,0, + 0,127,128,0,0,63,128,0,0,63,128,0,0,31,0,0, + 0,31,0,0,0,14,0,0,0,14,0,0,0,30,0,0, + 0,28,0,0,0,60,0,0,0,120,0,0,32,248,0,0, + 63,240,0,0,127,224,0,0,255,192,0,0,255,128,0,0, + 126,0,0,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--48-480-72-72-P-238-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 29 + Calculated Max Values w=22 h=46 x= 3 y=17 dx=25 dy= 0 ascent=38 len=138 + Font Bounding box w=74 h=69 x=-24 y=-17 + Calculated Min Values x= 0 y=-9 dx= 0 dy= 0 + Pure Font ascent =29 descent= 0 + X Font ascent =29 descent= 0 + Max Font ascent =38 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb30n[1275] U8G_SECTION(".progmem.u8g_font_gdb30n") = { + 0,74,69,232,239,29,0,0,0,0,42,57,0,38,247,29, + 0,19,20,60,21,1,17,0,48,0,1,240,0,1,240,0, + 32,240,0,112,225,128,120,227,192,126,231,224,127,255,224,31, + 255,0,3,248,0,3,248,0,31,255,0,127,255,192,254,231, + 192,124,227,192,48,225,192,0,240,128,0,240,0,1,240,0, + 0,192,0,18,18,54,20,1,4,0,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,127,255, + 192,255,255,192,255,255,128,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,192,0,10, + 15,30,13,1,247,7,0,63,128,255,192,127,192,63,192,15, + 192,15,192,15,128,15,128,15,0,31,0,30,0,60,0,120, + 0,48,0,15,3,6,17,1,11,127,254,127,252,255,252,8, + 7,7,13,3,255,62,127,255,255,255,254,124,21,46,138,23, + 1,248,0,0,56,0,0,248,0,0,240,0,1,240,0,1, + 240,0,1,224,0,3,224,0,3,224,0,3,192,0,7,192, + 0,7,128,0,15,128,0,15,128,0,15,0,0,31,0,0, + 31,0,0,30,0,0,62,0,0,60,0,0,124,0,0,124, + 0,0,120,0,0,248,0,0,248,0,0,240,0,1,240,0, + 1,224,0,3,224,0,3,224,0,3,192,0,7,192,0,7, + 192,0,7,128,0,15,128,0,15,0,0,31,0,0,31,0, + 0,30,0,0,62,0,0,62,0,0,60,0,0,124,0,0, + 120,0,0,248,0,0,248,0,0,192,0,0,22,29,87,24, + 1,0,0,252,0,3,255,0,7,143,192,15,7,224,30,3, + 224,62,1,240,62,1,240,124,1,248,124,1,248,124,0,248, + 252,0,252,252,0,252,252,0,252,252,0,252,252,0,252,252, + 0,252,252,0,252,252,0,252,252,0,252,124,0,248,124,0, + 248,126,0,248,62,1,240,62,1,240,31,1,224,31,3,192, + 15,135,128,3,255,0,0,252,0,19,29,87,24,3,0,0, + 16,0,0,248,0,7,248,0,63,248,0,255,248,0,225,248, + 0,1,248,0,1,248,0,1,248,0,1,248,0,1,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1, + 248,0,1,248,0,1,248,0,1,248,0,1,248,0,1,248, + 0,1,248,0,1,248,0,1,248,0,1,248,0,15,255,0, + 127,255,224,127,255,224,20,29,87,24,1,0,0,255,0,7, + 255,192,15,143,224,63,7,224,62,3,240,126,3,240,126,3, + 240,120,3,240,0,3,240,0,7,224,0,7,224,0,15,192, + 0,15,128,0,31,128,0,31,0,0,62,0,0,124,0,0, + 248,0,0,248,0,1,240,0,3,224,32,7,192,48,15,128, + 48,15,0,48,30,0,112,63,255,240,127,255,240,255,255,240, + 127,255,240,20,29,87,24,1,0,1,254,0,7,255,128,31, + 31,192,63,15,192,62,7,224,126,7,224,60,7,224,0,7, + 224,0,7,192,0,15,192,0,31,128,0,127,0,1,254,0, + 1,255,128,2,63,192,0,15,224,0,7,224,0,3,240,0, + 3,240,0,3,240,0,3,240,0,3,240,0,3,240,64,7, + 224,96,15,224,252,31,192,63,255,128,31,254,0,3,248,0, + 21,29,87,25,2,0,0,1,128,0,15,128,0,31,128,0, + 63,128,0,63,128,0,127,128,0,255,128,0,239,128,1,239, + 128,3,207,128,3,143,128,7,143,128,7,15,128,14,15,128, + 30,15,128,28,15,128,56,15,128,56,15,128,127,255,248,255, + 255,240,255,255,224,0,15,128,0,15,128,0,15,128,0,15, + 128,0,15,128,0,31,192,1,255,240,1,255,240,20,29,87, + 24,2,0,0,0,32,31,255,240,31,255,192,31,255,192,31, + 255,128,28,0,0,28,0,0,28,0,0,60,0,0,60,0, + 0,56,0,0,59,252,0,63,255,0,63,255,128,120,31,192, + 32,15,224,0,7,224,0,7,240,0,3,240,0,3,240,0, + 3,240,0,3,240,0,3,240,0,7,224,64,7,224,224,15, + 192,252,31,128,63,254,0,7,248,0,20,29,87,24,2,0, + 0,1,128,0,31,192,0,127,0,1,252,0,3,240,0,7, + 192,0,15,128,0,31,128,0,63,0,0,62,0,0,126,0, + 0,124,126,0,125,255,128,255,255,192,255,15,224,254,7,224, + 252,7,240,252,3,240,252,3,240,252,3,240,252,3,240,124, + 3,240,126,3,224,126,3,224,62,3,192,31,7,192,15,143, + 128,7,255,0,1,248,0,21,28,84,24,2,0,127,255,240, + 127,255,248,127,255,240,127,255,224,112,1,224,224,1,224,192, + 1,192,64,3,192,0,3,128,0,7,128,0,7,0,0,15, + 0,0,15,0,0,30,0,0,30,0,0,60,0,0,60,0, + 0,124,0,0,120,0,0,248,0,0,240,0,1,240,0,1, + 240,0,3,224,0,3,224,0,7,224,0,15,192,0,6,0, + 0,20,29,87,24,2,0,0,252,0,7,255,128,15,31,192, + 30,15,192,28,7,224,60,7,224,60,7,224,60,7,224,62, + 15,192,63,143,128,31,255,0,31,254,0,15,252,0,3,255, + 0,7,255,128,15,255,192,31,31,224,62,15,240,126,7,240, + 252,3,240,252,3,240,252,3,240,252,3,240,252,3,224,126, + 3,224,126,7,192,63,15,128,31,254,0,3,248,0,20,29, + 87,24,2,255,1,252,0,7,255,0,15,31,128,30,15,192, + 62,7,224,124,7,224,124,7,224,252,3,240,252,3,240,252, + 3,240,252,3,240,252,3,240,254,3,240,126,7,240,127,15, + 240,63,255,240,31,251,224,7,227,224,0,7,224,0,7,192, + 0,7,192,0,15,128,0,31,0,0,62,0,0,252,0,3, + 248,0,15,224,0,63,128,0,56,0,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--48-480-72-72-P-238-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 30, '1' Height: 29 + Calculated Max Values w=41 h=49 x= 4 y=24 dx=42 dy= 0 ascent=39 len=210 + Font Bounding box w=74 h=69 x=-24 y=-17 + Calculated Min Values x=-7 y=-11 dx= 0 dy= 0 + Pure Font ascent =30 descent=-11 + X Font ascent =38 descent=-11 + Max Font ascent =39 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb30r[9112] U8G_SECTION(".progmem.u8g_font_gdb30r") = { + 0,74,69,232,239,30,10,50,24,78,32,127,245,39,245,38, + 245,0,0,0,12,0,0,8,36,36,15,3,255,6,31,127, + 126,126,126,126,126,126,126,62,62,62,62,62,62,62,60,60, + 60,60,60,60,28,28,24,0,0,0,62,127,255,255,255,254, + 124,16,16,32,23,3,19,14,3,126,31,254,63,254,63,124, + 63,124,63,124,63,124,63,124,30,124,30,124,30,60,30,60, + 30,56,30,56,30,56,14,22,27,81,24,2,3,0,56,48, + 0,120,112,0,112,240,0,112,224,0,240,224,0,225,224,0, + 225,192,31,255,252,31,255,252,63,255,252,3,195,128,3,195, + 128,3,135,128,3,135,0,7,135,0,7,135,0,255,255,240, + 255,255,240,255,255,224,14,30,0,14,28,0,30,28,0,28, + 60,0,28,60,0,28,56,0,60,56,0,56,112,0,20,36, + 108,24,2,252,0,48,0,0,112,0,0,112,0,0,112,0, + 3,255,0,15,255,224,63,255,240,124,119,240,120,115,224,240, + 113,224,240,112,192,248,112,0,252,112,0,255,112,0,127,240, + 0,63,248,0,31,254,0,7,255,128,0,255,192,0,127,224, + 0,119,224,0,113,240,0,113,240,224,112,240,224,112,240,240, + 112,240,248,112,224,252,113,224,255,119,192,255,255,192,63,255, + 0,7,252,0,0,112,0,0,112,0,0,112,0,0,96,0, + 31,30,120,34,2,0,0,0,0,16,7,192,0,240,31,224, + 1,224,56,240,3,192,120,120,3,128,112,120,7,128,240,60, + 15,0,240,60,30,0,240,60,28,0,240,60,60,0,240,60, + 120,0,240,60,240,0,112,57,224,0,120,57,224,0,56,115, + 192,0,31,231,131,224,15,143,12,48,0,15,24,56,0,30, + 56,28,0,60,56,28,0,120,120,30,0,120,120,30,0,240, + 120,30,1,224,120,30,3,192,120,30,3,192,120,28,7,128, + 60,60,15,0,30,56,30,0,15,240,28,0,7,192,31,34, + 136,33,2,0,0,31,128,0,0,127,224,0,0,227,240,0, + 1,225,248,0,3,193,248,0,3,193,248,0,7,193,248,0, + 7,193,248,0,7,195,240,0,7,195,240,0,7,231,224,0, + 7,239,192,0,3,255,128,0,3,255,0,0,3,252,0,0, + 1,248,0,0,7,252,63,252,15,252,127,254,31,254,31,184, + 63,127,15,128,62,127,7,128,126,63,135,128,252,31,199,128, + 252,31,231,128,252,15,247,0,252,7,255,0,252,3,254,0, + 252,1,252,0,254,0,255,0,127,0,127,128,127,129,255,248, + 63,255,223,248,15,255,15,244,3,252,7,128,7,16,16,13, + 3,19,14,126,254,254,124,124,124,124,124,124,124,60,60,56, + 56,56,13,45,90,16,3,249,0,16,0,120,0,240,1,224, + 3,224,7,192,7,128,15,128,31,0,31,0,63,0,62,0, + 62,0,126,0,126,0,126,0,124,0,252,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 252,0,126,0,126,0,126,0,126,0,62,0,63,0,63,0, + 31,0,15,128,15,128,7,192,3,192,1,224,0,240,0,120, + 0,16,13,44,88,16,0,249,64,0,240,0,120,0,60,0, + 30,0,31,0,15,128,15,192,7,192,7,224,7,224,3,224, + 3,240,3,240,3,240,1,240,1,248,1,248,1,248,1,248, + 1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,240, + 3,240,3,240,3,240,3,224,3,224,7,224,7,192,7,192, + 15,128,15,0,31,0,62,0,60,0,120,0,240,0,64,0, + 19,20,60,21,1,17,0,48,0,1,240,0,1,240,0,32, + 240,0,112,225,128,120,227,192,126,231,224,127,255,224,31,255, + 0,3,248,0,3,248,0,31,255,0,127,255,192,254,231,192, + 124,227,192,48,225,192,0,240,128,0,240,0,1,240,0,0, + 192,0,18,18,54,20,1,4,0,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,127,255,192, + 255,255,192,255,255,128,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,192,0,10,15, + 30,13,1,247,7,0,63,128,255,192,127,192,63,192,15,192, + 15,192,15,128,15,128,15,0,31,0,30,0,60,0,120,0, + 48,0,15,3,6,17,1,11,127,254,127,252,255,252,8,7, + 7,13,3,255,62,127,255,255,255,254,124,21,46,138,23,1, + 248,0,0,56,0,0,248,0,0,240,0,1,240,0,1,240, + 0,1,224,0,3,224,0,3,224,0,3,192,0,7,192,0, + 7,128,0,15,128,0,15,128,0,15,0,0,31,0,0,31, + 0,0,30,0,0,62,0,0,60,0,0,124,0,0,124,0, + 0,120,0,0,248,0,0,248,0,0,240,0,1,240,0,1, + 224,0,3,224,0,3,224,0,3,192,0,7,192,0,7,192, + 0,7,128,0,15,128,0,15,0,0,31,0,0,31,0,0, + 30,0,0,62,0,0,62,0,0,60,0,0,124,0,0,120, + 0,0,248,0,0,248,0,0,192,0,0,22,29,87,24,1, + 0,0,252,0,3,255,0,7,143,192,15,7,224,30,3,224, + 62,1,240,62,1,240,124,1,248,124,1,248,124,0,248,252, + 0,252,252,0,252,252,0,252,252,0,252,252,0,252,252,0, + 252,252,0,252,252,0,252,252,0,252,124,0,248,124,0,248, + 126,0,248,62,1,240,62,1,240,31,1,224,31,3,192,15, + 135,128,3,255,0,0,252,0,19,29,87,24,3,0,0,16, + 0,0,248,0,7,248,0,63,248,0,255,248,0,225,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1, + 248,0,1,248,0,1,248,0,1,248,0,1,248,0,1,248, + 0,1,248,0,1,248,0,1,248,0,1,248,0,1,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,15,255,0,127, + 255,224,127,255,224,20,29,87,24,1,0,0,255,0,7,255, + 192,15,143,224,63,7,224,62,3,240,126,3,240,126,3,240, + 120,3,240,0,3,240,0,7,224,0,7,224,0,15,192,0, + 15,128,0,31,128,0,31,0,0,62,0,0,124,0,0,248, + 0,0,248,0,1,240,0,3,224,32,7,192,48,15,128,48, + 15,0,48,30,0,112,63,255,240,127,255,240,255,255,240,127, + 255,240,20,29,87,24,1,0,1,254,0,7,255,128,31,31, + 192,63,15,192,62,7,224,126,7,224,60,7,224,0,7,224, + 0,7,192,0,15,192,0,31,128,0,127,0,1,254,0,1, + 255,128,2,63,192,0,15,224,0,7,224,0,3,240,0,3, + 240,0,3,240,0,3,240,0,3,240,0,3,240,64,7,224, + 96,15,224,252,31,192,63,255,128,31,254,0,3,248,0,21, + 29,87,25,2,0,0,1,128,0,15,128,0,31,128,0,63, + 128,0,63,128,0,127,128,0,255,128,0,239,128,1,239,128, + 3,207,128,3,143,128,7,143,128,7,15,128,14,15,128,30, + 15,128,28,15,128,56,15,128,56,15,128,127,255,248,255,255, + 240,255,255,224,0,15,128,0,15,128,0,15,128,0,15,128, + 0,15,128,0,31,192,1,255,240,1,255,240,20,29,87,24, + 2,0,0,0,32,31,255,240,31,255,192,31,255,192,31,255, + 128,28,0,0,28,0,0,28,0,0,60,0,0,60,0,0, + 56,0,0,59,252,0,63,255,0,63,255,128,120,31,192,32, + 15,224,0,7,224,0,7,240,0,3,240,0,3,240,0,3, + 240,0,3,240,0,3,240,0,7,224,64,7,224,224,15,192, + 252,31,128,63,254,0,7,248,0,20,29,87,24,2,0,0, + 1,128,0,31,192,0,127,0,1,252,0,3,240,0,7,192, + 0,15,128,0,31,128,0,63,0,0,62,0,0,126,0,0, + 124,126,0,125,255,128,255,255,192,255,15,224,254,7,224,252, + 7,240,252,3,240,252,3,240,252,3,240,252,3,240,124,3, + 240,126,3,224,126,3,224,62,3,192,31,7,192,15,143,128, + 7,255,0,1,248,0,21,28,84,24,2,0,127,255,240,127, + 255,248,127,255,240,127,255,224,112,1,224,224,1,224,192,1, + 192,64,3,192,0,3,128,0,7,128,0,7,0,0,15,0, + 0,15,0,0,30,0,0,30,0,0,60,0,0,60,0,0, + 124,0,0,120,0,0,248,0,0,240,0,1,240,0,1,240, + 0,3,224,0,3,224,0,7,224,0,15,192,0,6,0,0, + 20,29,87,24,2,0,0,252,0,7,255,128,15,31,192,30, + 15,192,28,7,224,60,7,224,60,7,224,60,7,224,62,15, + 192,63,143,128,31,255,0,31,254,0,15,252,0,3,255,0, + 7,255,128,15,255,192,31,31,224,62,15,240,126,7,240,252, + 3,240,252,3,240,252,3,240,252,3,240,252,3,224,126,3, + 224,126,7,192,63,15,128,31,254,0,3,248,0,20,29,87, + 24,2,255,1,252,0,7,255,0,15,31,128,30,15,192,62, + 7,224,124,7,224,124,7,224,252,3,240,252,3,240,252,3, + 240,252,3,240,252,3,240,254,3,240,126,7,240,127,15,240, + 63,255,240,31,251,224,7,227,224,0,7,224,0,7,192,0, + 7,192,0,15,128,0,31,0,0,62,0,0,252,0,3,248, + 0,15,224,0,63,128,0,56,0,0,8,23,23,13,3,255, + 62,127,255,255,255,254,124,0,0,0,0,0,0,0,0,0, + 62,127,255,255,255,254,124,10,31,62,13,1,247,15,128,31, + 192,63,192,63,192,63,192,31,128,14,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,63, + 128,255,192,127,192,63,192,15,192,15,192,15,128,15,128,15, + 0,31,0,30,0,60,0,120,0,48,0,20,16,48,22,1, + 6,0,0,96,0,1,240,0,15,224,0,127,224,3,255,128, + 15,252,0,127,224,0,127,0,0,254,0,0,255,192,0,63, + 248,0,7,254,0,1,255,192,0,63,224,0,7,240,0,0, + 192,20,10,30,22,1,8,127,255,224,127,255,240,255,255,224, + 0,0,0,0,0,0,0,0,0,0,0,0,127,255,224,127, + 255,240,255,255,224,20,16,48,22,1,6,48,0,0,126,0, + 0,255,192,0,63,240,0,15,254,0,1,255,192,0,63,224, + 0,7,240,0,31,224,0,127,224,3,255,0,31,248,0,127, + 224,0,127,0,0,248,0,0,64,0,0,19,35,105,22,2, + 255,1,254,0,15,255,128,63,31,192,126,15,192,124,7,224, + 252,7,224,252,7,224,252,7,224,240,7,224,0,7,192,0, + 15,192,0,15,128,0,31,128,0,63,0,0,126,0,0,124, + 0,0,248,0,1,240,0,1,224,0,3,224,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,128,0,0,0,0,0, + 0,0,0,0,0,1,240,0,3,248,0,7,248,0,7,248, + 0,7,248,0,7,240,0,3,224,0,38,42,210,42,2,246, + 0,0,255,192,0,0,7,255,248,0,0,31,255,254,0,0, + 127,255,255,0,0,255,0,255,128,1,248,0,31,192,3,224, + 0,7,224,7,192,0,3,224,15,128,0,1,240,31,0,0, + 1,240,31,0,252,24,248,62,3,254,120,248,60,7,255,240, + 120,124,15,135,240,124,124,31,3,240,124,120,31,3,240,60, + 120,62,3,240,60,248,62,3,240,60,248,126,3,240,60,248, + 126,3,240,60,248,126,3,240,60,248,126,3,240,60,248,126, + 3,240,56,248,126,3,240,56,248,126,3,240,120,252,127,3, + 240,112,252,63,7,240,224,124,63,143,249,224,124,31,255,255, + 192,126,31,251,255,128,62,15,241,254,0,63,3,224,248,0, + 63,128,0,0,0,31,192,0,0,0,15,224,0,0,128,15, + 240,0,1,192,7,252,0,7,192,3,255,128,127,128,0,255, + 255,254,0,0,127,255,252,0,0,31,255,240,0,0,1,255, + 0,0,30,30,120,30,0,0,0,1,128,0,0,7,128,0, + 0,15,192,0,0,31,192,0,0,31,224,0,0,31,224,0, + 0,63,224,0,0,63,240,0,0,59,240,0,0,121,240,0, + 0,121,248,0,0,113,248,0,0,240,252,0,0,240,252,0, + 0,224,252,0,1,224,126,0,1,224,126,0,1,192,126,0, + 3,255,255,0,3,255,255,0,3,128,31,0,7,128,31,128, + 7,0,31,128,7,0,15,192,15,0,15,192,14,0,15,192, + 14,0,7,224,30,0,7,224,255,192,63,252,255,192,63,252, + 26,30,120,29,0,0,3,255,128,0,255,255,240,0,127,193, + 252,0,15,192,126,0,15,192,127,0,15,192,63,0,15,192, + 63,0,15,192,63,0,15,192,63,0,15,192,62,0,15,192, + 126,0,15,192,252,0,15,195,248,0,15,255,224,0,15,255, + 252,0,15,192,254,0,15,192,63,0,15,192,31,128,15,192, + 31,128,15,192,15,192,15,192,15,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,15,128,15,192,31,128,15,192, + 63,0,31,192,254,0,127,255,252,0,127,255,224,0,24,30, + 90,27,1,0,0,31,224,0,255,252,1,255,254,7,224,254, + 15,128,126,31,128,60,31,0,28,62,0,0,62,0,0,126, + 0,0,124,0,0,252,0,0,252,0,0,252,0,0,252,0, + 0,252,0,0,252,0,0,252,0,0,252,0,0,254,0,0, + 126,0,0,126,0,0,127,0,0,63,128,2,63,192,15,31, + 240,62,15,255,248,7,255,240,1,255,192,0,127,0,29,30, + 120,31,0,0,3,255,192,0,255,255,248,0,127,192,254,0, + 143,192,63,128,15,192,31,192,15,192,15,192,15,192,7,224, + 15,192,7,240,15,192,3,240,15,192,3,240,15,192,3,248, + 15,192,1,248,15,192,1,248,15,192,1,248,15,192,1,248, + 15,192,1,248,15,192,1,248,15,192,1,248,15,192,1,248, + 15,192,1,240,15,192,3,240,15,192,3,240,15,192,7,224, + 15,192,7,224,15,192,15,192,15,192,31,128,15,192,63,0, + 31,224,254,0,127,255,248,0,127,255,192,0,23,30,90,25, + 1,0,255,255,248,255,255,252,63,128,56,31,128,56,31,128, + 24,31,128,24,31,128,24,31,128,24,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,255,224,31,255,224,31, + 128,192,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,6,31,128,6,31,128,14, + 31,128,14,63,192,30,255,255,254,255,255,252,22,30,90,24, + 1,0,255,255,248,255,255,252,63,128,60,31,128,28,31,128, + 24,31,128,24,31,128,24,31,128,24,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,255,192,31,255,224,31, + 129,128,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,63,192,0,255,248,0,255,248,0,27,30,120,29, + 1,0,0,15,248,0,0,127,255,128,1,240,127,128,3,192, + 63,0,7,128,15,0,15,0,14,0,31,0,0,0,62,0, + 0,0,62,0,0,0,126,0,0,0,124,0,0,0,124,0, + 0,0,252,0,0,0,252,0,0,0,252,1,255,224,252,1, + 255,224,252,0,127,192,252,0,31,128,252,0,31,128,254,0, + 31,128,126,0,31,128,127,0,31,128,127,0,31,128,63,128, + 31,128,63,192,31,128,31,240,63,0,15,255,254,0,7,255, + 252,0,1,255,240,0,0,63,128,0,30,30,120,33,1,0, + 255,240,63,252,255,240,63,252,63,192,15,240,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,255,255,224,31,255,255,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,63,192,15,240, + 255,240,63,252,255,240,63,252,12,30,60,16,2,0,255,240, + 255,240,63,192,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,63,192,255,240,255,240,21,40,120,16,249,246, + 0,255,248,0,255,248,0,31,224,0,15,192,0,15,192,0, + 15,192,0,15,192,0,15,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,15,192,0,15,192,0,15,192, + 0,15,192,0,15,192,0,15,192,0,15,192,0,15,192,0, + 15,192,0,15,192,0,15,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,15,192,0,15,128,0,15,128, + 0,15,128,0,31,0,24,30,0,62,62,0,127,248,0,255, + 240,0,127,224,0,31,128,0,29,30,120,30,1,0,255,240, + 255,224,255,240,255,224,63,192,31,0,31,128,62,0,31,128, + 124,0,31,128,248,0,31,129,240,0,31,129,224,0,31,131, + 192,0,31,135,128,0,31,143,0,0,31,159,0,0,31,190, + 0,0,31,188,0,0,31,252,0,0,31,254,0,0,31,191, + 0,0,31,159,128,0,31,143,192,0,31,135,224,0,31,135, + 240,0,31,131,248,0,31,129,252,0,31,128,254,0,31,128, + 126,0,31,128,127,0,31,128,63,192,63,192,31,240,255,240, + 15,248,255,240,7,128,23,30,90,24,1,0,255,240,0,255, + 240,0,63,192,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,4,31,128,6,31,128,14,31,128,30,63,192,60, + 255,255,252,255,255,252,38,30,150,41,1,0,255,128,0,15, + 248,255,192,0,15,248,15,192,0,31,192,15,224,0,31,192, + 15,224,0,31,192,15,240,0,63,192,15,240,0,63,192,15, + 248,0,127,192,15,248,0,119,192,14,252,0,247,192,14,252, + 0,247,192,14,124,1,231,192,14,126,1,231,192,14,62,1, + 199,192,14,63,3,199,192,14,31,3,135,192,14,31,135,135, + 192,14,31,135,135,192,14,15,143,7,192,14,15,207,7,192, + 30,7,222,7,192,30,7,254,7,192,30,3,252,7,192,30, + 3,252,7,192,30,3,248,7,192,30,1,248,7,224,30,1, + 248,7,224,31,0,240,15,224,255,192,240,63,252,255,192,96, + 63,252,30,30,120,32,1,0,255,0,15,252,255,128,15,252, + 63,192,3,240,31,192,1,224,31,224,1,224,31,240,1,224, + 31,240,1,224,31,248,1,224,31,252,1,224,30,254,1,224, + 30,126,1,224,30,63,1,224,30,63,129,224,30,31,129,224, + 30,15,193,224,30,7,225,224,30,7,225,224,30,3,241,224, + 30,1,249,224,30,1,253,224,30,0,253,224,30,0,127,224, + 30,0,63,224,30,0,63,224,30,0,31,224,30,0,15,224, + 30,0,7,224,63,0,7,224,255,192,3,224,255,192,0,224, + 27,30,120,30,1,0,0,31,192,0,0,255,240,0,3,225, + 252,0,7,128,126,0,15,0,63,0,31,0,31,0,30,0, + 31,128,62,0,15,128,126,0,15,192,124,0,15,192,124,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,254,0,7,192,126,0,15,192,126,0,15,128,127,0, + 15,128,63,0,31,0,31,128,31,0,31,192,62,0,15,240, + 252,0,7,255,240,0,1,255,224,0,0,127,0,0,25,30, + 120,27,0,0,3,255,192,0,255,255,248,0,127,193,252,0, + 143,192,126,0,15,192,63,0,15,192,63,0,15,192,31,128, + 15,192,31,128,15,192,31,128,15,192,31,128,15,192,31,128, + 15,192,31,0,15,192,63,0,15,192,62,0,15,192,126,0, + 15,208,252,0,15,223,240,0,15,207,192,0,15,192,0,0, + 15,192,0,0,15,192,0,0,15,192,0,0,15,192,0,0, + 15,192,0,0,15,192,0,0,15,192,0,0,15,192,0,0, + 31,224,0,0,127,252,0,0,127,252,0,0,32,38,152,30, + 1,248,0,31,192,0,0,255,240,0,3,225,252,0,7,128, + 126,0,15,0,63,0,31,0,31,0,30,0,31,128,62,0, + 15,128,126,0,15,192,124,0,15,192,124,0,7,192,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,254,0, + 7,192,126,0,15,192,126,0,15,128,127,0,15,128,63,0, + 31,0,31,128,31,0,31,192,62,0,15,240,252,0,7,255, + 248,0,1,255,224,0,0,127,240,0,0,1,252,0,0,0, + 254,2,0,0,63,135,0,0,31,255,0,0,15,254,0,0, + 3,252,0,0,1,252,0,0,0,120,29,30,120,29,0,0, + 7,255,128,0,255,255,240,0,127,193,252,0,143,192,126,0, + 15,192,126,0,15,192,63,0,15,192,63,0,15,192,63,0, + 15,192,63,0,15,192,63,0,15,192,126,0,15,192,126,0, + 15,192,252,0,15,255,248,0,15,255,240,0,15,255,192,0, + 15,199,192,0,15,195,224,0,15,193,240,0,15,193,240,0, + 15,192,248,0,15,192,252,0,15,192,126,0,15,192,126,0, + 15,192,63,0,15,192,63,128,15,192,31,192,31,224,31,248, + 127,248,15,248,127,248,15,128,20,30,90,25,3,0,1,255, + 0,15,255,192,30,15,224,60,7,192,120,3,192,248,1,128, + 248,0,0,252,0,0,254,0,0,255,0,0,127,192,0,127, + 240,0,63,252,0,31,255,0,7,255,128,1,255,192,0,127, + 224,0,31,224,0,7,240,0,3,240,0,1,240,192,1,240, + 224,1,240,224,1,224,240,3,224,248,3,192,254,15,128,255, + 255,0,127,254,0,15,240,0,27,30,120,28,0,0,127,255, + 255,224,127,255,255,224,112,31,128,224,112,31,128,224,96,31, + 128,224,96,31,128,224,224,31,128,96,64,31,128,96,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,63,192,0,1,255, + 248,0,1,255,248,0,29,30,120,32,1,0,255,240,31,248, + 255,240,31,248,63,192,7,224,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,128,31,192,7,128,15,192,7,128,15,224,7,0, + 7,224,15,0,3,248,62,0,1,255,252,0,0,255,240,0, + 0,31,192,0,31,30,120,32,0,0,255,240,7,254,255,240, + 7,254,31,128,0,240,15,192,0,224,15,192,0,224,15,192, + 1,224,7,224,1,192,7,224,3,192,3,240,3,192,3,240, + 3,128,3,240,7,128,1,248,7,128,1,248,7,0,0,248, + 15,0,0,252,14,0,0,252,14,0,0,126,30,0,0,126, + 28,0,0,62,28,0,0,63,60,0,0,63,56,0,0,31, + 248,0,0,31,240,0,0,15,240,0,0,15,240,0,0,15, + 224,0,0,7,224,0,0,7,224,0,0,3,192,0,0,3, + 0,0,41,30,180,41,0,0,255,240,12,3,255,128,255,240, + 30,3,255,128,31,128,30,0,124,0,15,128,30,0,56,0, + 15,128,63,0,120,0,15,128,63,0,120,0,15,192,63,128, + 112,0,7,192,127,128,112,0,7,192,127,128,112,0,7,192, + 127,192,240,0,7,224,247,192,224,0,3,224,231,224,224,0, + 3,224,227,224,224,0,3,225,227,225,224,0,3,241,195,241, + 224,0,3,241,193,241,192,0,1,243,193,241,192,0,1,243, + 128,249,192,0,1,251,128,251,192,0,1,255,128,255,192,0, + 0,255,0,127,128,0,0,255,0,127,128,0,0,254,0,127, + 128,0,0,254,0,63,128,0,0,126,0,63,0,0,0,124, + 0,31,0,0,0,124,0,31,0,0,0,124,0,31,0,0, + 0,120,0,14,0,0,0,48,0,12,0,0,29,30,120,30, + 1,0,255,240,127,240,255,240,127,240,63,192,31,128,31,192, + 15,0,15,192,30,0,7,224,60,0,7,240,60,0,3,240, + 120,0,1,248,240,0,1,252,240,0,0,255,224,0,0,127, + 192,0,0,127,192,0,0,63,128,0,0,31,128,0,0,31, + 192,0,0,63,224,0,0,127,224,0,0,127,240,0,0,243, + 248,0,1,241,248,0,1,225,252,0,3,192,254,0,7,192, + 126,0,7,128,63,0,15,0,63,128,31,0,31,192,63,0, + 63,224,255,192,255,248,255,192,255,248,29,30,120,29,0,0, + 127,0,31,248,255,128,31,248,31,192,3,192,15,192,3,128, + 7,224,7,128,3,240,7,0,3,240,15,0,1,248,14,0, + 1,248,30,0,0,252,28,0,0,124,60,0,0,126,56,0, + 0,63,120,0,0,63,240,0,0,31,240,0,0,31,224,0, + 0,15,224,0,0,15,192,0,0,15,192,0,0,15,192,0, + 0,15,192,0,0,15,192,0,0,15,192,0,0,15,192,0, + 0,15,192,0,0,15,192,0,0,15,192,0,0,31,224,0, + 0,255,252,0,0,255,252,0,23,30,90,26,1,0,63,255, + 254,63,255,254,60,0,254,56,1,252,56,1,248,48,3,248, + 48,7,240,64,7,240,0,15,224,0,15,192,0,31,192,0, + 63,128,0,63,128,0,127,0,0,126,0,0,254,0,1,252, + 0,1,252,0,3,248,0,3,248,0,7,240,0,15,224,0, + 15,224,4,31,192,6,31,192,6,63,128,14,127,0,14,127, + 0,30,255,255,254,127,255,254,12,45,90,16,3,248,255,240, + 255,240,255,240,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,255,240,255,240,255,240,21,46,138,23,1,248,224,0, + 0,248,0,0,120,0,0,120,0,0,124,0,0,60,0,0, + 60,0,0,62,0,0,30,0,0,31,0,0,15,0,0,15, + 0,0,15,128,0,7,128,0,7,128,0,7,192,0,3,192, + 0,3,192,0,3,224,0,1,224,0,1,240,0,0,240,0, + 0,240,0,0,248,0,0,120,0,0,120,0,0,124,0,0, + 60,0,0,60,0,0,62,0,0,30,0,0,31,0,0,15, + 0,0,15,0,0,15,128,0,7,128,0,7,128,0,7,192, + 0,3,192,0,3,192,0,1,224,0,1,224,0,1,240,0, + 0,240,0,0,240,0,0,56,12,45,90,16,1,248,255,240, + 255,240,255,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,255,240,255,240,255,240,19,23,69,24,2,13,0,32, + 0,0,112,0,0,240,0,1,240,0,1,248,0,1,248,0, + 3,188,0,3,188,0,7,60,0,7,30,0,6,30,0,14, + 14,0,14,15,0,12,15,0,28,7,128,28,7,128,24,3, + 128,56,3,192,48,3,192,112,1,224,112,1,224,96,0,224, + 192,0,192,21,3,9,23,1,250,127,255,248,127,255,248,255, + 255,240,11,11,22,15,0,24,60,0,252,0,254,0,126,0, + 63,0,31,0,15,128,7,128,3,192,1,192,0,224,23,22, + 66,24,1,0,0,255,0,15,255,128,31,15,192,62,7,224, + 126,7,224,252,7,224,96,7,224,0,7,224,0,31,224,1, + 255,224,7,255,224,31,231,224,63,135,224,63,7,224,126,7, + 224,126,7,224,126,7,224,126,31,228,127,63,252,63,247,254, + 63,231,240,15,131,128,24,36,108,26,0,0,3,0,0,63, + 128,0,255,128,0,127,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,131,224,31,143,248,31,191,252,31, + 255,252,31,240,254,31,192,126,31,128,63,31,128,63,31,128, + 31,31,128,31,31,128,31,31,128,31,31,128,31,31,128,30, + 31,128,30,31,128,60,31,128,56,31,240,248,31,255,240,15, + 255,192,3,255,128,0,126,0,20,22,66,22,1,0,0,127, + 128,1,255,240,7,135,224,15,3,224,30,1,224,62,0,192, + 124,0,192,124,0,0,252,0,0,252,0,0,252,0,0,252, + 0,0,252,0,0,252,0,0,254,0,0,126,0,32,127,0, + 112,63,193,224,63,255,192,31,255,128,7,255,0,1,252,0, + 25,36,144,27,2,0,0,0,56,0,0,15,248,0,0,15, + 248,0,0,3,248,0,0,1,248,0,0,1,248,0,0,1, + 248,0,0,1,248,0,0,1,248,0,0,1,248,0,0,1, + 248,0,0,1,248,0,0,1,248,0,0,1,248,0,0,249, + 248,0,7,255,248,0,15,255,248,0,31,135,248,0,63,3, + 248,0,62,1,248,0,126,1,248,0,124,1,248,0,252,1, + 248,0,252,1,248,0,252,1,248,0,252,1,248,0,252,1, + 248,0,252,1,248,0,254,1,248,0,126,1,248,0,127,3, + 248,0,127,135,253,0,63,255,255,128,31,253,254,0,15,248, + 252,0,3,224,224,0,19,22,66,23,2,0,0,252,0,7, + 255,0,15,31,128,30,15,128,62,15,192,124,7,192,124,7, + 224,124,7,224,252,7,224,255,255,224,255,255,128,252,0,0, + 252,0,0,252,0,0,254,0,0,126,0,64,127,0,224,63, + 131,192,63,255,128,31,255,0,15,254,0,3,248,0,20,37, + 111,16,1,0,0,15,128,0,63,224,0,255,240,1,255,224, + 3,227,224,7,193,192,7,193,0,15,128,0,15,128,0,15, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,127,255,0,255,254,0,31,132,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,63,224,0,255,252,0, + 255,252,0,25,33,132,25,0,245,0,126,1,128,3,255,223, + 128,7,135,255,0,15,3,254,0,30,1,240,0,30,0,248, + 0,62,0,248,0,62,0,248,0,62,0,248,0,62,0,248, + 0,63,0,240,0,31,129,224,0,15,195,192,0,7,255,128, + 0,1,254,0,0,3,224,0,0,7,192,0,0,15,192,0, + 0,31,254,0,0,31,255,240,0,15,255,252,0,7,255,254, + 0,15,159,255,0,62,0,127,0,124,0,63,0,252,0,31, + 0,252,0,30,0,254,0,30,0,255,0,60,0,127,192,248, + 0,63,255,240,0,15,255,192,0,1,254,0,0,26,36,144, + 28,1,0,1,128,0,0,63,128,0,0,255,128,0,0,255, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,129,240,0,31, + 143,252,0,31,159,252,0,31,255,254,0,31,248,254,0,31, + 224,126,0,31,192,126,0,31,128,126,0,31,128,126,0,31, + 128,126,0,31,128,126,0,31,128,126,0,31,128,126,0,31, + 128,126,0,31,128,126,0,31,128,126,0,31,128,126,0,31, + 128,126,0,31,128,126,0,63,192,255,0,255,243,255,192,255, + 243,255,192,12,32,64,14,1,0,7,128,15,192,31,192,31, + 192,31,128,15,0,0,0,0,0,0,0,0,0,3,128,127, + 128,255,128,127,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,63,192,255,240,255,240,17,43,129,14,250,245,0, + 15,0,0,31,128,0,63,128,0,63,128,0,63,0,0,30, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,128, + 0,127,128,0,255,128,0,127,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,0,0,31,0,0,62,0,16,62, + 0,60,124,0,127,248,0,255,224,0,255,192,0,63,0,0, + 26,36,144,26,1,0,1,128,0,0,63,128,0,0,255,128, + 0,0,255,128,0,0,31,128,0,0,31,128,0,0,31,128, + 0,0,31,128,0,0,31,128,0,0,31,128,0,0,31,128, + 0,0,31,128,0,0,31,128,0,0,31,128,0,0,31,129, + 255,128,31,129,255,128,31,128,252,0,31,128,248,0,31,131, + 224,0,31,135,192,0,31,143,128,0,31,158,0,0,31,188, + 0,0,31,252,0,0,31,190,0,0,31,191,0,0,31,159, + 128,0,31,143,192,0,31,135,224,0,31,135,240,0,31,131, + 248,0,31,129,252,0,31,128,252,0,63,128,255,192,255,240, + 127,192,255,240,62,0,12,36,72,14,1,0,1,128,63,128, + 255,128,255,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,192, + 255,240,255,240,39,22,110,41,1,0,3,3,224,31,128,127, + 143,248,127,192,255,159,249,255,224,127,255,255,255,240,31,241, + 255,135,240,31,224,255,3,240,31,128,252,3,240,31,128,252, + 3,240,31,128,252,3,240,31,128,252,3,240,31,128,252,3, + 240,31,128,252,3,240,31,128,252,3,240,31,128,252,3,240, + 31,128,252,3,240,31,128,252,3,240,31,128,252,3,240,31, + 128,252,3,240,31,128,252,3,240,63,128,252,3,248,255,247, + 255,159,254,255,247,255,159,254,26,22,88,28,1,0,3,1, + 240,0,127,135,252,0,255,159,252,0,63,191,254,0,31,248, + 254,0,31,224,126,0,31,192,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,63,192,255,0,255,243, + 255,192,255,243,255,192,21,22,66,25,2,0,0,252,0,3, + 255,0,15,15,192,30,7,224,62,7,224,62,3,240,124,3, + 240,124,1,248,252,1,248,252,1,248,252,1,248,252,1,248, + 252,1,248,252,1,248,252,1,240,126,1,240,126,3,224,62, + 3,224,63,3,192,31,135,128,7,254,0,1,248,0,24,33, + 99,27,1,245,3,3,224,127,143,248,255,159,252,63,255,252, + 31,240,254,31,192,126,31,128,63,31,128,63,31,128,31,31, + 128,31,31,128,31,31,128,31,31,128,31,31,128,30,31,128, + 30,31,128,62,31,192,60,31,240,124,31,255,248,31,255,240, + 31,159,224,31,135,128,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,63,192, + 0,255,248,0,255,248,0,24,33,99,26,2,245,0,124,8, + 1,255,28,7,255,248,15,135,248,30,3,248,62,1,248,124, + 1,248,124,1,248,252,1,248,252,1,248,252,1,248,252,1, + 248,252,1,248,252,1,248,254,1,248,126,1,248,127,3,248, + 127,143,248,63,255,248,31,253,248,15,249,248,3,225,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1, + 248,0,1,248,0,1,248,0,3,248,0,31,255,0,31,255, + 20,22,66,21,1,0,3,7,192,127,143,240,255,191,240,63, + 255,224,31,241,224,31,224,224,31,192,224,31,128,192,31,128, + 192,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 192,0,255,248,0,255,248,0,16,22,44,20,2,0,7,248, + 31,254,60,62,120,30,248,14,248,12,252,0,255,0,127,192, + 127,240,63,248,15,254,3,254,0,255,128,127,192,63,224,31, + 224,31,240,30,248,60,255,248,63,224,18,30,90,18,255,0, + 0,192,0,1,192,0,7,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,63,255,192,255,255,128,15,193, + 0,15,192,0,15,192,0,15,192,0,15,192,0,15,192,0, + 15,192,0,15,192,0,15,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,15,192,128,15,227,192,15,255, + 128,7,255,0,3,252,0,1,240,0,26,22,88,27,1,0, + 3,128,28,0,255,135,252,0,255,135,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,129,252,0,31,199,252,128,31,255,255,128,15,254,255,192, + 7,248,126,0,3,224,112,0,24,22,66,24,0,0,255,224, + 255,255,224,255,63,128,60,31,128,60,31,128,56,15,192,120, + 15,192,112,7,192,112,7,224,240,7,224,224,3,241,224,3, + 241,192,1,249,192,1,251,128,0,255,128,0,255,128,0,127, + 0,0,127,0,0,126,0,0,62,0,0,60,0,0,24,0, + 34,22,110,34,0,0,255,224,96,63,192,255,224,112,63,192, + 63,0,240,7,0,31,0,248,15,0,31,128,248,14,0,15, + 129,252,14,0,15,129,252,30,0,15,195,252,28,0,7,195, + 254,28,0,7,195,190,28,0,7,231,63,60,0,3,231,31, + 56,0,3,239,31,184,0,3,254,31,248,0,1,254,15,240, + 0,1,252,15,240,0,1,252,7,240,0,0,252,7,224,0, + 0,248,3,224,0,0,248,3,224,0,0,112,1,192,0,0, + 96,1,128,0,25,22,88,25,0,0,127,241,255,0,127,241, + 255,0,31,192,124,0,15,224,112,0,7,224,224,0,7,241, + 224,0,3,251,192,0,1,255,128,0,0,255,0,0,0,254, + 0,0,0,127,0,0,0,127,0,0,0,127,128,0,0,255, + 192,0,1,207,224,0,3,199,224,0,7,131,240,0,7,3, + 248,0,14,1,252,0,30,1,254,0,255,135,255,128,255,135, + 255,128,25,33,132,24,255,245,127,240,127,128,127,240,127,128, + 31,192,30,0,15,192,28,0,15,192,28,0,7,224,60,0, + 7,224,56,0,3,240,56,0,3,240,112,0,1,240,112,0, + 1,248,240,0,1,248,224,0,0,252,224,0,0,253,224,0, + 0,125,192,0,0,127,192,0,0,127,128,0,0,63,128,0, + 0,63,128,0,0,31,0,0,0,31,0,0,0,14,0,0, + 0,14,0,0,0,30,0,0,0,28,0,0,0,60,0,0, + 0,120,0,0,32,248,0,0,63,240,0,0,127,224,0,0, + 255,192,0,0,255,128,0,0,126,0,0,0,20,22,66,22, + 1,0,63,255,240,63,255,240,56,15,224,56,15,192,48,31, + 192,48,31,128,32,63,0,0,127,0,0,126,0,0,252,0, + 1,252,0,1,248,0,3,240,0,7,240,0,7,224,0,15, + 224,48,31,192,48,31,128,112,63,128,112,127,0,240,127,255, + 240,255,255,224,14,45,90,17,2,249,0,8,0,60,0,248, + 1,240,3,224,7,224,7,192,15,192,15,192,15,192,15,192, + 15,192,15,224,7,224,7,224,7,224,7,224,7,224,7,192, + 15,192,15,128,63,0,254,0,255,128,31,192,7,192,7,224, + 7,224,7,224,7,224,7,224,7,224,15,224,15,192,15,192, + 15,192,15,192,15,192,15,192,7,192,7,224,3,240,0,248, + 0,124,0,8,4,49,49,11,4,246,48,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,192,14,44,88,17,1, + 249,64,0,248,0,124,0,63,0,31,128,15,128,15,192,15, + 192,15,192,15,192,15,192,15,192,31,192,31,128,31,128,31, + 128,31,128,31,128,31,128,15,192,15,252,7,252,1,248,7, + 224,15,192,15,128,31,128,31,128,31,128,31,128,31,128,31, + 192,15,192,15,192,15,192,15,192,15,192,15,128,31,128,31, + 0,62,0,124,0,240,0,64,0,21,8,24,23,1,11,7, + 128,8,15,224,24,31,240,16,63,252,48,49,255,224,96,127, + 192,64,31,128,192,15,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--17-170-72-72-P-77-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=14 h=17 x= 2 y= 9 dx=14 dy= 0 ascent=15 len=30 + Font Bounding box w=25 h=24 x=-9 y=-6 + Calculated Min Values x=-2 y=-5 dx= 0 dy= 0 + Pure Font ascent =10 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =15 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr10[3670] U8G_SECTION(".progmem.u8g_font_gdr10") = { + 0,25,24,247,250,10,2,30,4,177,32,255,252,15,251,13, + 252,0,0,0,4,0,0,2,12,12,5,1,0,64,192,64, + 64,64,64,64,64,64,0,64,64,5,5,5,7,1,7,216, + 216,88,72,72,7,9,9,8,1,1,20,36,126,40,72,252, + 80,80,144,7,12,12,8,0,255,16,56,84,80,112,56,30, + 18,146,212,120,16,10,10,20,12,1,0,96,128,145,0,146, + 0,150,0,164,0,105,128,18,64,50,64,34,64,65,128,10, + 12,24,11,1,0,28,0,36,0,36,0,36,0,40,0,51, + 192,81,0,153,0,141,0,134,0,135,0,121,192,2,5,5, + 4,1,7,192,192,64,64,64,3,16,16,5,1,253,32,64, + 64,128,128,128,128,128,128,128,128,128,128,64,64,32,3,16, + 16,5,1,253,128,64,64,32,32,32,32,32,32,32,32,32, + 32,64,64,128,6,7,7,8,1,6,32,168,236,48,252,164, + 32,6,6,6,7,1,2,32,32,32,252,32,32,2,4,4, + 4,1,253,192,64,64,128,4,1,1,6,1,4,240,1,2, + 2,4,2,0,128,128,8,16,16,8,0,253,3,2,6,4, + 4,12,8,8,16,16,48,32,32,96,64,192,6,10,10,8, + 1,0,56,72,132,132,132,132,132,132,72,112,5,10,10,8, + 2,0,32,224,32,32,32,32,32,32,32,248,5,10,10,8, + 2,0,56,200,136,8,16,32,32,64,136,248,6,10,10,8, + 1,0,112,136,136,16,48,8,4,4,140,120,6,10,10,8, + 1,0,8,24,40,40,72,136,252,8,8,60,6,10,10,8, + 1,0,124,64,64,120,140,4,4,4,132,120,6,10,10,8, + 1,0,24,32,64,128,248,132,132,132,72,56,6,10,10,8, + 1,0,252,132,8,8,8,16,16,32,32,64,6,10,10,8, + 1,0,120,196,196,200,56,204,132,132,132,120,6,10,10,8, + 1,0,56,200,132,132,132,124,4,8,16,96,1,8,8,4, + 2,0,128,128,0,0,0,0,128,128,2,11,11,4,1,253, + 64,64,0,0,0,0,0,192,64,64,128,6,5,5,7,1, + 2,12,112,128,112,12,6,3,3,7,1,3,252,0,252,6, + 5,5,7,1,2,192,56,12,112,128,6,12,12,7,1,0, + 56,68,132,4,4,8,16,32,32,32,32,32,12,14,28,14, + 1,253,15,128,16,64,96,32,71,144,136,144,144,144,144,144, + 144,144,144,144,137,160,78,192,96,0,48,96,15,128,10,10, + 20,10,0,0,4,0,12,0,20,0,18,0,18,0,30,0, + 33,0,33,0,65,128,227,192,7,10,10,9,1,0,248,68, + 68,68,124,70,66,66,66,252,7,10,10,9,1,0,62,66, + 128,128,128,128,128,128,66,60,8,10,10,10,1,0,252,70, + 65,65,65,65,65,66,66,252,7,10,10,8,1,0,252,68, + 64,64,124,64,64,64,66,254,7,10,10,8,1,0,254,68, + 64,64,120,64,64,64,64,224,9,10,20,10,1,0,30,0, + 99,0,128,0,128,0,128,0,135,128,129,0,129,0,97,0, + 62,0,9,10,20,11,1,0,227,128,65,0,65,0,65,0, + 127,0,65,0,65,0,65,0,65,0,227,128,3,10,10,5, + 1,0,224,64,64,64,64,64,64,64,64,224,6,13,13,5, + 254,253,60,8,8,8,8,8,8,8,8,8,8,16,224,9, + 10,20,10,1,0,231,0,68,0,72,0,80,0,96,0,80, + 0,88,0,76,0,70,0,227,128,7,10,10,8,1,0,224, + 64,64,64,64,64,64,64,66,254,12,10,20,14,1,0,192, + 112,96,96,96,224,112,224,81,96,89,32,74,32,78,32,68, + 32,228,240,9,10,20,11,1,0,195,128,97,0,97,0,81, + 0,73,0,77,0,69,0,67,0,67,0,225,0,8,10,10, + 10,1,0,60,66,129,129,129,129,129,130,66,60,7,10,10, + 9,1,0,252,70,66,66,70,120,64,64,64,224,10,12,24, + 10,1,254,60,0,66,0,129,0,129,0,129,0,129,0,129, + 0,130,0,66,0,60,0,6,128,3,192,9,10,20,10,1, + 0,252,0,70,0,66,0,66,0,68,0,120,0,76,0,68, + 0,70,0,227,128,6,10,10,8,1,0,120,140,128,192,112, + 8,4,132,132,248,9,10,20,9,0,0,255,128,136,128,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,28,0,9, + 10,20,11,1,0,227,128,65,0,65,0,65,0,65,0,65, + 0,65,0,65,0,34,0,60,0,11,10,20,11,0,0,241, + 224,32,128,32,128,49,0,17,0,25,0,10,0,10,0,14, + 0,4,0,14,10,20,14,0,0,241,28,99,8,35,16,35, + 144,36,144,52,144,20,80,24,96,24,96,24,32,10,10,20, + 10,0,0,243,192,33,0,51,0,26,0,12,0,12,0,18, + 0,49,0,33,128,243,192,9,10,20,10,1,0,195,128,97, + 0,50,0,22,0,28,0,8,0,8,0,8,0,8,0,28, + 0,8,10,10,9,0,0,127,66,70,4,8,24,16,33,97, + 255,4,16,16,5,1,253,240,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,240,8,16,16,8,0,253,192,64,64, + 32,32,48,16,16,8,8,12,4,4,6,2,3,4,16,16, + 5,0,253,240,16,16,16,16,16,16,16,16,16,16,16,16, + 16,16,240,7,8,8,8,1,5,16,48,56,72,72,76,132, + 134,6,1,1,8,1,254,252,4,3,3,5,0,9,192,96, + 48,7,8,8,8,1,0,28,100,4,28,100,132,140,118,8, + 13,13,9,0,0,64,192,64,64,64,78,115,65,65,65,65, + 66,60,6,8,8,7,1,0,60,72,128,128,128,128,196,120, + 8,13,13,9,1,0,6,2,2,2,2,62,66,130,130,130, + 130,70,59,6,8,8,8,1,0,56,68,132,252,128,128,68, + 120,6,13,13,5,1,0,28,40,64,64,64,240,64,64,64, + 64,64,64,240,8,12,12,8,0,252,63,70,130,130,196,56, + 96,60,195,129,194,124,8,13,13,9,1,0,64,192,64,64, + 64,78,82,98,66,66,66,66,231,3,11,11,5,1,0,64, + 192,0,64,192,64,64,64,64,64,224,5,15,15,4,254,252, + 8,24,0,8,24,8,8,8,8,8,8,8,8,16,224,8, + 13,13,9,1,0,64,192,64,64,64,78,72,80,96,80,72, + 76,231,3,13,13,5,1,0,64,192,64,64,64,64,64,64, + 64,64,64,64,224,11,8,16,12,1,0,221,192,102,64,68, + 64,68,64,68,64,68,64,68,64,238,224,8,8,8,9,1, + 0,78,210,98,66,66,66,66,231,7,8,8,9,1,0,56, + 68,130,130,130,130,68,56,7,12,12,9,1,252,92,230,66, + 66,66,66,68,120,64,64,64,224,8,12,12,9,1,252,62, + 66,130,130,130,130,70,58,2,2,2,7,6,8,8,7,1, + 0,220,104,64,64,64,64,64,224,5,8,8,7,1,0,112, + 136,128,96,24,136,136,240,5,10,10,6,1,0,64,64,248, + 64,64,64,64,64,64,120,9,8,16,9,0,0,195,0,65, + 0,65,0,65,0,65,0,65,0,67,0,61,128,8,8,8, + 8,0,0,227,98,34,36,52,20,24,8,12,8,16,12,0, + 0,226,112,102,32,38,32,39,64,41,64,57,64,24,128,16, + 128,8,8,8,9,0,0,247,34,52,24,28,36,66,231,8, + 12,12,8,0,252,231,98,34,36,52,20,24,8,8,16,160, + 192,6,8,8,8,1,0,252,136,16,48,32,64,196,252,4, + 16,16,6,1,253,48,64,64,64,96,32,32,64,224,32,32, + 96,64,64,64,32,1,17,17,4,2,253,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,5,16,16,5, + 0,253,64,32,32,32,32,32,32,56,48,32,32,32,32,32, + 32,192,8,2,2,8,0,4,57,206,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,0,0,0,4,0, + 0,2,13,13,5,1,251,64,64,0,0,64,64,64,64,64, + 64,64,192,192,6,10,10,8,1,0,16,28,116,144,144,144, + 144,116,56,16,7,11,11,8,1,255,60,68,68,64,64,240, + 64,64,66,134,252,4,6,6,8,2,2,144,240,144,144,240, + 144,9,10,20,8,255,0,231,128,34,0,22,0,20,0,8, + 0,62,0,8,0,8,0,8,0,28,0,1,17,17,4,2, + 253,128,128,128,128,128,128,128,128,0,128,128,128,128,128,128, + 128,128,6,12,12,8,1,0,112,152,128,96,184,140,196,100, + 24,136,200,112,5,2,2,7,1,9,136,136,10,10,20,12, + 1,0,30,0,127,128,114,128,160,64,160,64,160,64,176,64, + 94,128,97,128,30,0,4,6,6,4,0,5,96,160,96,160, + 240,240,6,8,8,8,1,0,36,72,72,144,144,72,72,36, + 7,3,3,8,0,2,254,2,2,4,1,1,6,1,4,240, + 6,6,6,6,0,6,120,132,180,180,180,120,6,1,1,8, + 1,9,252,4,4,4,6,1,6,112,144,144,224,6,8,8, + 7,1,1,32,32,32,252,32,32,64,248,4,7,7,6,1, + 5,112,144,16,32,64,144,240,4,7,7,5,0,5,112,144, + 16,48,16,144,224,3,3,3,5,2,9,96,64,128,9,12, + 24,9,0,252,195,0,65,0,65,0,65,0,65,0,65,0, + 99,0,125,128,64,0,64,0,96,0,96,0,8,12,12,10, + 1,254,63,202,138,138,202,122,10,10,10,10,10,31,1,2, + 2,2,1,5,128,128,2,4,4,4,1,252,128,192,64,128, + 4,6,6,6,0,5,96,160,32,32,32,112,4,6,6,5, + 0,5,96,144,144,144,96,240,7,8,8,8,1,0,144,72, + 108,36,54,108,72,144,9,10,20,10,1,0,193,0,66,0, + 66,0,68,0,72,0,169,0,23,0,37,0,39,128,67,128, + 8,10,10,10,1,0,193,66,68,68,72,171,21,34,37,79, + 10,11,22,10,0,0,112,0,80,128,33,0,18,0,18,0, + 228,0,8,128,11,128,18,128,19,192,33,192,6,13,13,8, + 1,251,32,32,0,32,32,32,64,64,128,128,132,136,112,10, + 15,30,10,0,0,32,0,24,0,12,0,0,0,0,0,4, + 0,12,0,20,0,18,0,18,0,30,0,33,0,33,0,65, + 128,227,192,10,15,30,10,0,0,2,0,7,0,12,0,16, + 0,0,0,4,0,12,0,20,0,18,0,18,0,30,0,33, + 0,33,0,65,128,227,192,10,15,30,10,0,0,12,0,12, + 0,18,0,33,0,0,0,4,0,12,0,20,0,18,0,18, + 0,30,0,33,0,33,0,65,128,227,192,10,14,28,10,0, + 0,10,0,25,0,38,0,0,0,4,0,12,0,20,0,18, + 0,18,0,30,0,33,0,33,0,65,128,227,192,10,13,26, + 10,0,0,34,0,34,0,0,0,4,0,12,0,20,0,18, + 0,18,0,30,0,33,0,33,0,65,128,227,192,10,15,30, + 10,0,0,12,0,20,0,28,0,0,0,0,0,4,0,12, + 0,20,0,18,0,18,0,30,0,33,0,33,0,65,128,227, + 192,12,10,20,13,1,0,31,224,10,32,10,0,18,0,31, + 224,50,0,34,0,34,0,66,16,231,240,7,14,14,9,1, + 252,62,66,128,128,128,128,128,128,66,102,24,24,8,16,7, + 15,15,8,1,0,64,224,16,8,0,252,68,64,64,124,64, + 64,64,66,254,7,15,15,8,1,0,8,28,48,0,0,252, + 68,64,64,124,64,64,64,66,254,7,15,15,8,1,0,16, + 56,72,4,0,252,68,64,64,124,64,64,64,66,254,7,13, + 13,8,1,0,136,136,0,252,68,64,64,124,64,64,64,66, + 254,4,15,15,5,0,0,128,192,32,16,0,112,32,32,32, + 32,32,32,32,32,112,4,15,15,5,1,0,32,48,64,128, + 0,224,64,64,64,64,64,64,64,64,224,5,15,15,5,0, + 0,32,112,136,0,0,112,32,32,32,32,32,32,32,32,112, + 5,13,13,5,0,0,136,136,0,112,32,32,32,32,32,32, + 32,32,112,8,10,10,10,1,0,252,70,65,65,241,65,65, + 66,66,252,9,14,28,11,1,0,18,0,58,0,4,0,0, + 0,195,128,97,0,97,0,81,0,73,0,77,0,69,0,67, + 0,67,0,225,0,8,15,15,10,1,0,32,112,8,4,0, + 60,66,129,129,129,129,129,130,66,60,8,15,15,10,1,0, + 4,14,24,0,0,60,66,129,129,129,129,129,130,66,60,8, + 15,15,10,1,0,8,28,36,66,0,60,66,129,129,129,129, + 129,130,66,60,8,14,14,10,1,0,18,50,76,0,60,66, + 129,129,129,129,129,130,66,60,8,13,13,10,1,0,68,68, + 0,60,66,129,129,129,129,129,130,66,60,5,5,5,7,1, + 2,136,80,32,80,136,8,10,10,10,1,0,29,98,131,133, + 137,145,161,194,66,188,9,15,30,11,1,0,32,0,48,0, + 12,0,0,0,0,0,227,128,65,0,65,0,65,0,65,0, + 65,0,65,0,65,0,34,0,60,0,9,15,30,11,1,0, + 2,0,6,0,8,0,16,0,0,0,227,128,65,0,65,0, + 65,0,65,0,65,0,65,0,65,0,34,0,60,0,9,15, + 30,11,1,0,8,0,28,0,34,0,0,0,0,0,227,128, + 65,0,65,0,65,0,65,0,65,0,65,0,65,0,34,0, + 60,0,9,13,26,11,1,0,34,0,34,0,0,0,227,128, + 65,0,65,0,65,0,65,0,65,0,65,0,65,0,34,0, + 60,0,9,15,30,10,1,0,4,0,14,0,24,0,0,0, + 0,0,195,128,97,0,50,0,22,0,28,0,8,0,8,0, + 8,0,8,0,28,0,7,10,10,9,1,0,224,64,124,70, + 66,66,66,124,64,224,8,13,13,10,1,0,28,38,66,66, + 68,72,80,88,78,67,81,81,206,7,12,12,8,1,0,64, + 32,16,0,28,100,4,28,100,132,140,118,7,12,12,8,1, + 0,8,16,32,0,28,100,4,28,100,132,140,118,7,12,12, + 8,1,0,48,72,136,4,28,100,4,28,100,132,140,118,7, + 11,11,8,1,0,100,152,0,28,100,4,28,100,132,140,118, + 7,11,11,8,1,0,136,136,0,28,100,4,28,100,132,140, + 118,7,12,12,8,1,0,48,80,112,0,28,100,4,28,100, + 132,140,118,10,8,16,12,1,0,59,128,204,64,136,64,63, + 192,72,0,136,0,156,192,231,0,6,12,12,7,1,252,60, + 72,128,128,128,128,196,120,32,48,16,32,6,12,12,8,1, + 0,96,32,16,0,56,68,132,252,128,128,68,120,6,12,12, + 8,1,0,12,24,32,0,56,68,132,252,128,128,68,120,6, + 12,12,8,1,0,48,72,132,0,56,68,132,252,128,128,68, + 120,6,11,11,8,1,0,132,136,0,56,68,132,252,128,128, + 68,120,4,12,12,5,0,0,192,64,32,0,32,96,32,32, + 32,32,32,112,4,12,12,5,1,0,48,96,64,0,64,192, + 64,64,64,64,64,224,5,12,12,5,0,0,32,80,136,0, + 32,96,32,32,32,32,32,112,5,11,11,5,0,0,136,136, + 0,32,96,32,32,32,32,32,112,6,12,12,8,1,0,104, + 28,120,8,52,204,132,132,132,132,72,112,8,11,11,9,1, + 0,54,76,0,78,210,98,66,66,66,66,231,7,12,12,9, + 1,0,96,32,16,0,56,68,130,130,130,130,68,56,7,12, + 12,9,1,0,12,8,16,0,56,68,130,130,130,130,68,56, + 7,12,12,9,1,0,16,40,68,0,56,68,130,130,130,130, + 68,56,7,11,11,9,1,0,52,216,0,56,68,130,130,130, + 130,68,56,7,11,11,9,1,0,132,132,0,56,68,130,130, + 130,130,68,56,5,6,6,7,1,2,32,32,0,248,32,32, + 7,8,8,9,1,0,62,68,142,146,146,226,68,248,9,12, + 24,9,0,0,48,0,24,0,8,0,0,0,195,0,65,0, + 65,0,65,0,65,0,65,0,67,0,61,128,9,12,24,9, + 0,0,6,0,4,0,8,0,0,0,195,0,65,0,65,0, + 65,0,65,0,65,0,67,0,61,128,9,12,24,9,0,0, + 8,0,20,0,34,0,0,0,195,0,65,0,65,0,65,0, + 65,0,65,0,67,0,61,128,9,11,22,9,0,0,34,0, + 66,0,0,0,195,0,65,0,65,0,65,0,65,0,65,0, + 67,0,61,128,8,16,16,8,0,252,6,12,8,0,231,98, + 34,36,52,20,24,8,8,16,160,192,7,17,17,9,1,252, + 64,192,64,64,64,92,102,66,66,66,66,100,120,64,64,64, + 224,8,15,15,8,0,252,66,66,0,231,98,34,36,52,20, + 24,8,8,16,160,192}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--17-170-72-72-P-77-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 10 + Calculated Max Values w= 8 h=16 x= 2 y= 6 dx= 8 dy= 0 ascent=13 len=16 + Font Bounding box w=25 h=24 x=-9 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =13 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr10n[249] U8G_SECTION(".progmem.u8g_font_gdr10n") = { + 0,25,24,247,250,10,0,0,0,0,42,57,0,13,253,10, + 0,6,7,7,8,1,6,32,168,236,48,252,164,32,6,6, + 6,7,1,2,32,32,32,252,32,32,2,4,4,4,1,253, + 192,64,64,128,4,1,1,6,1,4,240,1,2,2,4,2, + 0,128,128,8,16,16,8,0,253,3,2,6,4,4,12,8, + 8,16,16,48,32,32,96,64,192,6,10,10,8,1,0,56, + 72,132,132,132,132,132,132,72,112,5,10,10,8,2,0,32, + 224,32,32,32,32,32,32,32,248,5,10,10,8,2,0,56, + 200,136,8,16,32,32,64,136,248,6,10,10,8,1,0,112, + 136,136,16,48,8,4,4,140,120,6,10,10,8,1,0,8, + 24,40,40,72,136,252,8,8,60,6,10,10,8,1,0,124, + 64,64,120,140,4,4,4,132,120,6,10,10,8,1,0,24, + 32,64,128,248,132,132,132,72,56,6,10,10,8,1,0,252, + 132,8,8,8,16,16,32,32,64,6,10,10,8,1,0,120, + 196,196,200,56,204,132,132,132,120,6,10,10,8,1,0,56, + 200,132,132,132,124,4,8,16,96}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--17-170-72-72-P-77-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=14 h=17 x= 2 y= 9 dx=14 dy= 0 ascent=14 len=28 + Font Bounding box w=25 h=24 x=-9 y=-6 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =10 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =14 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr10r[1723] U8G_SECTION(".progmem.u8g_font_gdr10r") = { + 0,25,24,247,250,10,2,30,4,177,32,127,252,14,252,13, + 252,0,0,0,4,0,0,2,12,12,5,1,0,64,192,64, + 64,64,64,64,64,64,0,64,64,5,5,5,7,1,7,216, + 216,88,72,72,7,9,9,8,1,1,20,36,126,40,72,252, + 80,80,144,7,12,12,8,0,255,16,56,84,80,112,56,30, + 18,146,212,120,16,10,10,20,12,1,0,96,128,145,0,146, + 0,150,0,164,0,105,128,18,64,50,64,34,64,65,128,10, + 12,24,11,1,0,28,0,36,0,36,0,36,0,40,0,51, + 192,81,0,153,0,141,0,134,0,135,0,121,192,2,5,5, + 4,1,7,192,192,64,64,64,3,16,16,5,1,253,32,64, + 64,128,128,128,128,128,128,128,128,128,128,64,64,32,3,16, + 16,5,1,253,128,64,64,32,32,32,32,32,32,32,32,32, + 32,64,64,128,6,7,7,8,1,6,32,168,236,48,252,164, + 32,6,6,6,7,1,2,32,32,32,252,32,32,2,4,4, + 4,1,253,192,64,64,128,4,1,1,6,1,4,240,1,2, + 2,4,2,0,128,128,8,16,16,8,0,253,3,2,6,4, + 4,12,8,8,16,16,48,32,32,96,64,192,6,10,10,8, + 1,0,56,72,132,132,132,132,132,132,72,112,5,10,10,8, + 2,0,32,224,32,32,32,32,32,32,32,248,5,10,10,8, + 2,0,56,200,136,8,16,32,32,64,136,248,6,10,10,8, + 1,0,112,136,136,16,48,8,4,4,140,120,6,10,10,8, + 1,0,8,24,40,40,72,136,252,8,8,60,6,10,10,8, + 1,0,124,64,64,120,140,4,4,4,132,120,6,10,10,8, + 1,0,24,32,64,128,248,132,132,132,72,56,6,10,10,8, + 1,0,252,132,8,8,8,16,16,32,32,64,6,10,10,8, + 1,0,120,196,196,200,56,204,132,132,132,120,6,10,10,8, + 1,0,56,200,132,132,132,124,4,8,16,96,1,8,8,4, + 2,0,128,128,0,0,0,0,128,128,2,11,11,4,1,253, + 64,64,0,0,0,0,0,192,64,64,128,6,5,5,7,1, + 2,12,112,128,112,12,6,3,3,7,1,3,252,0,252,6, + 5,5,7,1,2,192,56,12,112,128,6,12,12,7,1,0, + 56,68,132,4,4,8,16,32,32,32,32,32,12,14,28,14, + 1,253,15,128,16,64,96,32,71,144,136,144,144,144,144,144, + 144,144,144,144,137,160,78,192,96,0,48,96,15,128,10,10, + 20,10,0,0,4,0,12,0,20,0,18,0,18,0,30,0, + 33,0,33,0,65,128,227,192,7,10,10,9,1,0,248,68, + 68,68,124,70,66,66,66,252,7,10,10,9,1,0,62,66, + 128,128,128,128,128,128,66,60,8,10,10,10,1,0,252,70, + 65,65,65,65,65,66,66,252,7,10,10,8,1,0,252,68, + 64,64,124,64,64,64,66,254,7,10,10,8,1,0,254,68, + 64,64,120,64,64,64,64,224,9,10,20,10,1,0,30,0, + 99,0,128,0,128,0,128,0,135,128,129,0,129,0,97,0, + 62,0,9,10,20,11,1,0,227,128,65,0,65,0,65,0, + 127,0,65,0,65,0,65,0,65,0,227,128,3,10,10,5, + 1,0,224,64,64,64,64,64,64,64,64,224,6,13,13,5, + 254,253,60,8,8,8,8,8,8,8,8,8,8,16,224,9, + 10,20,10,1,0,231,0,68,0,72,0,80,0,96,0,80, + 0,88,0,76,0,70,0,227,128,7,10,10,8,1,0,224, + 64,64,64,64,64,64,64,66,254,12,10,20,14,1,0,192, + 112,96,96,96,224,112,224,81,96,89,32,74,32,78,32,68, + 32,228,240,9,10,20,11,1,0,195,128,97,0,97,0,81, + 0,73,0,77,0,69,0,67,0,67,0,225,0,8,10,10, + 10,1,0,60,66,129,129,129,129,129,130,66,60,7,10,10, + 9,1,0,252,70,66,66,70,120,64,64,64,224,10,12,24, + 10,1,254,60,0,66,0,129,0,129,0,129,0,129,0,129, + 0,130,0,66,0,60,0,6,128,3,192,9,10,20,10,1, + 0,252,0,70,0,66,0,66,0,68,0,120,0,76,0,68, + 0,70,0,227,128,6,10,10,8,1,0,120,140,128,192,112, + 8,4,132,132,248,9,10,20,9,0,0,255,128,136,128,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,28,0,9, + 10,20,11,1,0,227,128,65,0,65,0,65,0,65,0,65, + 0,65,0,65,0,34,0,60,0,11,10,20,11,0,0,241, + 224,32,128,32,128,49,0,17,0,25,0,10,0,10,0,14, + 0,4,0,14,10,20,14,0,0,241,28,99,8,35,16,35, + 144,36,144,52,144,20,80,24,96,24,96,24,32,10,10,20, + 10,0,0,243,192,33,0,51,0,26,0,12,0,12,0,18, + 0,49,0,33,128,243,192,9,10,20,10,1,0,195,128,97, + 0,50,0,22,0,28,0,8,0,8,0,8,0,8,0,28, + 0,8,10,10,9,0,0,127,66,70,4,8,24,16,33,97, + 255,4,16,16,5,1,253,240,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,240,8,16,16,8,0,253,192,64,64, + 32,32,48,16,16,8,8,12,4,4,6,2,3,4,16,16, + 5,0,253,240,16,16,16,16,16,16,16,16,16,16,16,16, + 16,16,240,7,8,8,8,1,5,16,48,56,72,72,76,132, + 134,6,1,1,8,1,254,252,4,3,3,5,0,9,192,96, + 48,7,8,8,8,1,0,28,100,4,28,100,132,140,118,8, + 13,13,9,0,0,64,192,64,64,64,78,115,65,65,65,65, + 66,60,6,8,8,7,1,0,60,72,128,128,128,128,196,120, + 8,13,13,9,1,0,6,2,2,2,2,62,66,130,130,130, + 130,70,59,6,8,8,8,1,0,56,68,132,252,128,128,68, + 120,6,13,13,5,1,0,28,40,64,64,64,240,64,64,64, + 64,64,64,240,8,12,12,8,0,252,63,70,130,130,196,56, + 96,60,195,129,194,124,8,13,13,9,1,0,64,192,64,64, + 64,78,82,98,66,66,66,66,231,3,11,11,5,1,0,64, + 192,0,64,192,64,64,64,64,64,224,5,15,15,4,254,252, + 8,24,0,8,24,8,8,8,8,8,8,8,8,16,224,8, + 13,13,9,1,0,64,192,64,64,64,78,72,80,96,80,72, + 76,231,3,13,13,5,1,0,64,192,64,64,64,64,64,64, + 64,64,64,64,224,11,8,16,12,1,0,221,192,102,64,68, + 64,68,64,68,64,68,64,68,64,238,224,8,8,8,9,1, + 0,78,210,98,66,66,66,66,231,7,8,8,9,1,0,56, + 68,130,130,130,130,68,56,7,12,12,9,1,252,92,230,66, + 66,66,66,68,120,64,64,64,224,8,12,12,9,1,252,62, + 66,130,130,130,130,70,58,2,2,2,7,6,8,8,7,1, + 0,220,104,64,64,64,64,64,224,5,8,8,7,1,0,112, + 136,128,96,24,136,136,240,5,10,10,6,1,0,64,64,248, + 64,64,64,64,64,64,120,9,8,16,9,0,0,195,0,65, + 0,65,0,65,0,65,0,65,0,67,0,61,128,8,8,8, + 8,0,0,227,98,34,36,52,20,24,8,12,8,16,12,0, + 0,226,112,102,32,38,32,39,64,41,64,57,64,24,128,16, + 128,8,8,8,9,0,0,247,34,52,24,28,36,66,231,8, + 12,12,8,0,252,231,98,34,36,52,20,24,8,8,16,160, + 192,6,8,8,8,1,0,252,136,16,48,32,64,196,252,4, + 16,16,6,1,253,48,64,64,64,96,32,32,64,224,32,32, + 96,64,64,64,32,1,17,17,4,2,253,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,5,16,16,5, + 0,253,64,32,32,32,32,32,32,56,48,32,32,32,32,32, + 32,192,8,2,2,8,0,4,57,206,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--18-180-72-72-P-81-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=15 h=19 x= 2 y=10 dx=15 dy= 0 ascent=16 len=34 + Font Bounding box w=26 h=25 x=-9 y=-6 + Calculated Min Values x=-2 y=-5 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =16 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr11[3977] U8G_SECTION(".progmem.u8g_font_gdr11") = { + 0,26,25,247,250,11,2,61,5,21,32,255,252,16,251,14, + 252,0,0,0,4,0,0,2,13,13,5,1,0,64,64,64, + 64,64,64,64,64,64,64,0,192,128,5,6,6,8,1,7, + 200,200,72,72,72,72,8,10,10,8,1,1,18,20,20,127, + 36,40,254,72,80,144,7,14,14,8,1,254,16,16,126,148, + 144,240,56,28,20,148,148,248,16,16,11,11,22,13,1,0, + 96,192,161,128,145,0,146,0,166,0,101,192,10,32,18,32, + 50,32,34,32,65,192,11,13,26,12,1,0,28,0,34,0, + 34,0,34,0,36,0,56,0,49,224,216,128,156,128,142,128, + 135,0,135,128,124,224,2,6,6,5,1,7,192,192,64,64, + 64,64,3,17,17,6,1,253,32,64,64,128,128,128,128,128, + 128,128,128,128,128,128,64,64,32,3,17,17,6,1,253,128, + 64,64,32,32,32,32,32,32,32,32,32,32,32,64,64,128, + 6,8,8,8,1,6,48,16,164,120,120,164,16,48,7,6, + 6,7,0,2,16,16,16,254,16,16,2,5,5,4,1,253, + 64,192,64,64,128,5,1,1,6,1,4,248,2,2,2,4, + 1,0,192,128,8,17,17,8,0,253,1,2,2,6,4,4, + 12,8,8,16,16,48,32,32,96,64,192,6,11,11,8,1, + 0,48,72,132,132,132,132,132,132,132,72,48,6,11,11,8, + 1,0,16,240,16,16,16,16,16,16,16,16,124,6,11,11, + 8,1,0,28,100,68,4,8,8,16,32,68,68,252,6,11, + 11,7,0,0,56,68,68,4,24,12,4,4,4,140,120,7, + 11,11,8,0,0,4,12,12,20,36,36,68,254,4,4,30, + 6,11,11,8,1,0,124,64,64,64,120,132,4,4,4,132, + 120,6,11,11,8,1,0,12,48,64,192,184,196,132,132,132, + 72,56,7,11,11,8,1,0,254,132,4,8,8,8,16,16, + 32,32,96,7,11,11,9,1,0,120,196,196,196,120,60,194, + 130,130,130,124,6,11,11,8,1,0,56,200,132,132,132,132, + 124,4,8,16,224,2,8,8,4,1,0,192,128,0,0,0, + 0,192,128,2,11,11,4,1,253,192,128,0,0,0,0,64, + 192,64,64,128,6,6,6,8,1,2,4,56,224,192,56,12, + 6,4,4,8,1,3,252,0,0,252,6,6,6,8,1,2, + 192,112,12,28,112,128,6,13,13,8,1,0,56,68,132,132, + 4,8,16,32,32,32,0,48,32,13,15,30,15,1,253,7, + 192,24,96,32,16,64,16,135,136,136,136,144,136,144,136,144, + 136,144,144,137,144,78,224,96,16,48,32,15,192,11,11,22, + 11,0,0,4,0,12,0,14,0,18,0,18,0,19,0,31, + 0,33,0,33,128,32,128,241,224,8,11,11,10,1,0,252, + 66,66,68,126,67,65,65,65,67,254,8,11,11,10,1,0, + 62,66,128,128,128,128,128,128,128,67,60,9,11,22,11,1, + 0,252,0,67,0,65,0,64,128,64,128,64,128,64,128,64, + 128,65,0,67,0,252,0,7,11,11,9,1,0,254,66,64, + 64,124,64,64,64,66,66,254,7,11,11,9,1,0,254,66, + 64,64,124,64,64,64,64,64,240,10,11,22,11,1,0,15, + 0,49,128,64,0,128,0,128,0,128,0,131,192,128,128,64, + 128,96,128,31,0,10,11,22,12,1,0,225,192,64,128,64, + 128,64,128,64,128,127,128,64,128,64,128,64,128,64,128,225, + 192,3,11,11,5,1,0,224,64,64,64,64,64,64,64,64, + 64,224,6,14,14,6,254,253,60,8,8,8,8,8,8,8, + 8,8,8,8,144,224,9,11,22,10,1,0,231,128,70,0, + 76,0,72,0,80,0,112,0,88,0,72,0,68,0,70,0, + 227,128,7,11,11,9,1,0,224,64,64,64,64,64,64,64, + 66,66,254,13,11,22,15,1,0,224,56,96,96,96,96,80, + 160,80,160,88,160,73,32,77,48,70,48,70,48,228,120,10, + 11,22,12,1,0,193,192,96,128,112,128,80,128,72,128,76, + 128,70,128,66,128,65,128,65,128,224,128,9,11,22,11,1, + 0,30,0,99,0,129,0,128,128,128,128,128,128,128,128,128, + 128,65,0,98,0,60,0,7,11,11,9,1,0,252,66,66, + 66,66,92,96,64,64,64,240,10,14,28,11,1,253,30,0, + 99,0,129,0,128,128,128,128,128,128,128,128,128,128,65,0, + 98,0,60,0,6,0,3,64,1,192,9,11,22,10,1,0, + 252,0,70,0,66,0,66,0,68,0,72,0,120,0,76,0, + 70,0,66,0,227,128,7,11,11,9,1,0,60,198,128,128, + 112,28,6,2,130,196,248,9,11,22,10,0,0,255,128,136, + 128,136,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,28,0,10,11,22,12,1,0,225,192,64,128,64,128,64, + 128,64,128,64,128,64,128,64,128,64,128,33,0,30,0,11, + 11,22,12,0,0,240,224,32,64,32,128,48,128,16,128,25, + 0,9,0,9,0,14,0,6,0,4,0,15,11,22,15,0, + 0,241,30,33,8,33,136,34,136,50,136,50,200,20,80,20, + 112,20,48,24,48,8,32,11,11,22,11,0,0,243,192,32, + 128,49,0,26,0,14,0,4,0,14,0,19,0,49,128,32, + 192,241,224,10,11,22,11,0,0,225,192,48,128,17,0,25, + 0,10,0,14,0,4,0,4,0,4,0,4,0,14,0,8, + 11,11,9,1,0,255,134,132,12,24,16,48,32,65,193,255, + 4,17,17,6,1,253,240,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,240,8,17,17,8,0,253,192,64,96, + 32,32,48,16,16,8,8,12,4,4,6,2,2,1,4,17, + 17,5,0,253,240,16,16,16,16,16,16,16,16,16,16,16, + 16,16,16,16,240,7,9,9,9,1,5,16,48,56,40,76, + 76,68,134,130,7,1,1,8,1,254,254,4,4,4,6,0, + 9,192,96,32,16,7,8,8,8,1,0,60,68,132,28,100, + 132,140,118,8,14,14,9,0,0,64,192,64,64,64,64,78, + 115,65,65,65,65,66,60,6,8,8,8,1,0,60,68,128, + 128,128,128,196,120,7,14,14,9,1,0,12,4,4,4,4, + 4,60,196,132,132,132,132,76,118,6,8,8,8,1,0,56, + 68,132,252,128,128,68,120,6,14,14,6,1,0,28,40,64, + 64,64,64,248,64,64,64,64,64,64,240,9,12,24,8,0, + 252,61,128,194,0,130,0,194,0,124,0,32,0,112,0,63, + 0,193,0,129,0,130,0,124,0,8,14,14,10,1,0,64, + 192,64,64,64,64,78,114,98,66,66,66,66,231,3,12,12, + 5,1,0,192,192,0,0,64,192,64,64,64,64,64,224,5, + 16,16,5,254,252,24,24,0,0,8,24,8,8,8,8,8, + 8,8,8,16,224,8,14,14,9,1,0,64,192,64,64,64, + 64,79,72,80,112,80,72,68,231,3,14,14,5,1,0,64, + 192,64,64,64,64,64,64,64,64,64,64,64,224,13,8,16, + 15,1,0,206,112,115,144,98,16,66,16,66,16,66,16,66, + 16,231,56,8,8,8,10,1,0,78,210,98,66,66,66,66, + 231,7,8,8,9,1,0,56,196,130,130,130,130,68,56,8, + 12,12,10,1,252,206,115,65,65,65,65,98,92,64,64,64, + 224,8,12,12,9,1,252,62,66,130,130,130,130,70,58,2, + 2,2,15,6,8,8,7,1,0,220,100,64,64,64,64,64, + 224,5,8,8,7,1,0,112,136,128,96,24,136,136,240,5, + 11,11,6,1,0,64,64,64,248,64,64,64,64,64,64,120, + 8,8,8,10,1,0,198,66,66,66,66,66,70,59,9,8, + 16,9,0,0,243,128,98,0,34,0,50,0,20,0,20,0, + 28,0,8,0,13,8,16,13,0,0,242,56,98,32,39,32, + 37,32,53,160,24,192,24,192,16,192,9,8,16,9,0,0, + 247,128,34,0,20,0,24,0,28,0,38,0,35,0,247,128, + 9,12,24,9,0,252,243,128,97,0,34,0,50,0,20,0, + 20,0,28,0,8,0,8,0,16,0,176,0,224,0,6,8, + 8,8,1,0,252,136,24,16,32,64,196,252,5,17,17,6, + 1,253,24,32,32,32,32,32,32,32,192,32,32,32,32,32, + 32,32,24,1,19,19,4,2,252,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,5,17,17,6, + 0,253,64,160,32,32,32,32,32,32,24,32,32,32,32,32, + 32,64,192,8,2,2,9,0,4,57,206,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,4, + 0,0,2,13,13,5,1,251,64,192,0,64,64,64,64,64, + 64,64,64,64,64,7,11,11,8,1,0,16,24,118,144,144, + 144,144,212,126,16,16,7,11,11,8,1,0,60,68,68,64, + 64,240,64,64,66,130,254,6,6,6,8,1,2,248,76,72, + 72,120,132,9,11,22,8,0,0,231,128,98,0,50,0,20, + 0,28,0,8,0,127,0,8,0,8,0,8,0,28,0,1, + 19,19,4,2,252,128,128,128,128,128,128,128,128,0,0,0, + 128,128,128,128,128,128,128,128,7,13,13,9,1,0,112,152, + 128,224,248,142,130,66,60,12,132,196,120,5,2,2,7,1, + 10,136,136,11,11,22,13,1,0,31,0,32,128,94,64,162, + 32,160,32,160,32,160,32,177,32,94,64,32,128,31,0,5, + 6,6,5,0,5,48,80,112,144,248,240,7,8,8,9,1, + 0,38,36,72,152,152,72,36,38,7,3,3,8,1,2,254, + 2,2,5,1,1,6,1,4,248,6,7,7,6,0,6,120, + 72,188,188,180,104,120,6,1,1,9,1,10,252,4,4,4, + 6,1,7,112,144,144,224,7,8,8,7,0,1,16,16,254, + 16,16,16,0,126,4,7,7,6,1,5,112,144,16,32,64, + 144,240,5,7,7,6,0,5,56,72,8,24,8,136,112,3, + 4,4,6,2,9,32,96,64,128,8,12,12,10,1,252,198, + 66,66,66,66,66,102,123,64,64,64,96,8,13,13,10,1, + 254,63,202,138,138,138,202,122,10,10,10,10,10,31,1,2, + 2,3,1,5,128,128,2,4,4,4,1,252,192,64,192,128, + 4,7,7,6,1,5,32,224,32,32,32,32,240,4,6,6, + 5,0,5,96,144,144,144,96,240,7,8,8,9,1,0,144, + 72,100,54,54,100,72,144,10,11,22,11,1,0,192,128,65, + 0,65,0,66,0,70,0,164,0,8,128,27,128,18,128,35, + 192,101,192,9,11,22,11,1,0,193,0,65,0,66,0,68, + 0,68,0,168,0,11,128,20,128,33,0,34,128,71,128,10, + 11,22,10,0,0,96,128,144,128,33,0,17,0,18,0,228, + 0,4,128,11,128,18,128,19,192,37,192,6,13,13,8,1, + 251,16,48,0,16,16,16,32,64,128,132,132,136,112,11,15, + 30,11,0,0,16,0,56,0,4,0,2,0,4,0,12,0, + 14,0,18,0,18,0,19,0,31,0,33,0,33,128,32,128, + 241,224,11,15,30,11,0,0,1,0,7,0,12,0,0,0, + 4,0,12,0,14,0,18,0,18,0,19,0,31,0,33,0, + 33,128,32,128,241,224,11,15,30,11,0,0,4,0,14,0, + 17,0,32,0,4,0,12,0,14,0,18,0,18,0,19,0, + 31,0,33,0,33,128,32,128,241,224,11,15,30,11,0,0, + 9,0,29,0,34,0,0,0,4,0,12,0,14,0,18,0, + 18,0,19,0,31,0,33,0,33,128,32,128,241,224,11,14, + 28,11,0,0,33,0,33,0,0,0,4,0,12,0,14,0, + 18,0,18,0,19,0,31,0,33,0,33,128,32,128,241,224, + 11,16,32,11,0,0,4,0,10,0,18,0,12,0,0,0, + 4,0,12,0,14,0,18,0,18,0,19,0,31,0,33,0, + 33,128,32,128,241,224,13,11,22,14,0,0,15,248,5,8, + 5,0,9,0,15,240,17,0,17,0,17,0,33,8,33,8, + 243,248,9,15,30,10,1,252,62,0,66,0,128,0,128,0, + 128,0,128,0,128,0,128,0,192,0,97,128,62,0,8,0, + 12,0,4,0,8,0,7,15,15,9,1,0,64,224,24,0, + 254,66,64,64,124,64,64,64,66,66,254,7,15,15,9,1, + 0,4,12,48,0,254,66,64,64,124,64,64,64,66,66,254, + 7,15,15,9,1,0,16,40,68,0,254,66,64,64,124,64, + 64,64,66,66,254,7,14,14,9,1,0,68,68,0,254,66, + 64,64,124,64,64,64,66,66,254,4,15,15,5,0,0,128, + 192,48,0,112,32,32,32,32,32,32,32,32,32,112,5,15, + 15,5,1,0,16,56,192,0,224,64,64,64,64,64,64,64, + 64,64,224,5,15,15,5,0,0,32,80,136,0,112,32,32, + 32,32,32,32,32,32,32,112,5,14,14,5,0,0,136,136, + 0,112,32,32,32,32,32,32,32,32,32,112,9,11,22,11, + 1,0,252,0,67,0,65,0,64,128,64,128,240,128,64,128, + 64,128,65,0,67,0,252,0,10,15,30,12,1,0,25,0, + 57,0,38,0,0,0,193,192,96,128,112,128,80,128,72,128, + 76,128,70,128,66,128,65,128,65,128,224,128,9,15,30,11, + 1,0,32,0,112,0,12,0,0,0,30,0,99,0,129,0, + 128,128,128,128,128,128,128,128,128,128,65,0,98,0,60,0, + 9,15,30,11,1,0,2,0,6,0,24,0,0,0,30,0, + 99,0,129,0,128,128,128,128,128,128,128,128,128,128,65,0, + 98,0,60,0,9,15,30,11,1,0,8,0,20,0,34,0, + 0,0,30,0,99,0,129,0,128,128,128,128,128,128,128,128, + 128,128,65,0,98,0,60,0,9,15,30,11,1,0,18,0, + 58,0,68,0,0,0,30,0,99,0,129,0,128,128,128,128, + 128,128,128,128,128,128,65,0,98,0,60,0,9,14,28,11, + 1,0,34,0,34,0,0,0,30,0,99,0,129,0,128,128, + 128,128,128,128,128,128,128,128,65,0,98,0,60,0,6,6, + 6,7,1,2,140,88,48,48,88,140,9,11,22,11,1,0, + 30,128,35,0,67,0,134,128,132,128,136,128,144,128,176,128, + 97,0,98,0,188,0,10,15,30,12,1,0,32,0,24,0, + 4,0,2,0,225,192,64,128,64,128,64,128,64,128,64,128, + 64,128,64,128,64,128,33,0,30,0,10,15,30,12,1,0, + 2,0,7,0,8,0,16,0,225,192,64,128,64,128,64,128, + 64,128,64,128,64,128,64,128,64,128,33,0,30,0,10,15, + 30,12,1,0,12,0,30,0,34,0,1,0,225,192,64,128, + 64,128,64,128,64,128,64,128,64,128,64,128,64,128,33,0, + 30,0,10,14,28,12,1,0,34,0,34,0,0,0,225,192, + 64,128,64,128,64,128,64,128,64,128,64,128,64,128,64,128, + 33,0,30,0,10,15,30,11,0,0,1,0,7,0,12,0, + 0,0,225,192,48,128,17,0,25,0,10,0,14,0,4,0, + 4,0,4,0,4,0,14,0,7,11,11,9,1,0,240,64, + 124,70,66,66,66,68,124,64,240,8,14,14,10,1,0,28, + 38,66,66,66,76,80,80,76,71,65,81,81,222,7,13,13, + 8,1,0,64,96,48,16,0,60,68,132,28,100,132,140,118, + 7,13,13,8,1,0,12,8,16,32,0,60,68,132,28,100, + 132,140,118,7,13,13,8,1,0,48,56,72,132,0,60,68, + 132,28,100,132,140,118,7,12,12,8,1,0,116,152,0,0, + 60,68,132,28,100,132,140,118,7,12,12,8,1,0,132,132, + 0,0,60,68,132,28,100,132,140,118,7,13,13,8,1,0, + 48,72,72,48,0,60,68,132,28,100,132,140,118,11,8,16, + 12,1,0,29,192,102,32,68,32,159,224,100,0,132,0,142, + 32,115,192,7,12,12,8,1,252,60,68,128,128,128,128,194, + 124,16,24,8,16,6,13,13,8,1,0,96,32,16,16,0, + 56,68,132,252,128,128,68,120,6,13,13,8,1,0,12,8, + 16,16,0,56,68,132,252,128,128,68,120,6,13,13,8,1, + 0,16,56,108,68,0,56,68,132,252,128,128,68,120,6,12, + 12,8,1,0,68,68,0,0,56,68,132,252,128,128,68,120, + 4,13,13,5,0,0,192,64,32,32,16,32,96,32,32,32, + 32,32,112,4,13,13,5,1,0,48,32,64,64,0,64,192, + 64,64,64,64,64,224,5,13,13,5,0,0,32,112,216,136, + 0,32,96,32,32,32,32,32,112,5,12,12,5,0,0,136, + 136,0,0,32,96,32,32,32,32,32,112,7,13,13,9,1, + 0,96,30,56,68,4,62,198,130,130,130,132,68,56,8,12, + 12,10,1,0,50,76,0,0,78,210,98,66,66,66,66,231, + 7,13,13,9,1,0,96,32,16,8,0,56,196,130,130,130, + 130,68,56,7,13,13,9,1,0,4,12,24,16,0,56,196, + 130,130,130,130,68,56,7,13,13,9,1,0,16,56,36,68, + 0,56,196,130,130,130,130,68,56,7,12,12,9,1,0,50, + 92,0,0,56,196,130,130,130,130,68,56,7,12,12,9,1, + 0,68,68,0,0,56,196,130,130,130,130,68,56,6,6,6, + 7,1,2,32,32,0,252,32,32,7,9,9,9,1,0,2, + 62,68,138,146,162,226,68,248,8,13,13,10,1,0,96,48, + 16,8,0,198,66,66,66,66,66,70,59,8,13,13,10,1, + 0,4,12,8,16,0,198,66,66,66,66,66,70,59,8,13, + 13,10,1,0,24,56,36,66,0,198,66,66,66,66,66,70, + 59,8,12,12,10,1,0,68,68,0,0,198,66,66,66,66, + 66,70,59,9,17,34,9,0,252,2,0,4,0,12,0,8, + 0,0,0,243,128,97,0,34,0,50,0,20,0,20,0,28, + 0,8,0,8,0,16,0,176,0,224,0,8,18,18,10,1, + 252,64,192,64,64,64,64,78,115,65,65,65,65,98,124,64, + 64,64,240,9,16,32,9,0,252,34,0,34,0,0,0,0, + 0,243,128,97,0,34,0,50,0,20,0,20,0,28,0,8, + 0,8,0,16,0,176,0,224,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--18-180-72-72-P-81-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 11 + Calculated Max Values w= 8 h=17 x= 1 y= 6 dx= 9 dy= 0 ascent=14 len=17 + Font Bounding box w=26 h=25 x=-9 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr11n[262] U8G_SECTION(".progmem.u8g_font_gdr11n") = { + 0,26,25,247,250,11,0,0,0,0,42,57,0,14,253,11, + 0,6,8,8,8,1,6,48,16,164,120,120,164,16,48,7, + 6,6,7,0,2,16,16,16,254,16,16,2,5,5,4,1, + 253,64,192,64,64,128,5,1,1,6,1,4,248,2,2,2, + 4,1,0,192,128,8,17,17,8,0,253,1,2,2,6,4, + 4,12,8,8,16,16,48,32,32,96,64,192,6,11,11,8, + 1,0,48,72,132,132,132,132,132,132,132,72,48,6,11,11, + 8,1,0,16,240,16,16,16,16,16,16,16,16,124,6,11, + 11,8,1,0,28,100,68,4,8,8,16,32,68,68,252,6, + 11,11,7,0,0,56,68,68,4,24,12,4,4,4,140,120, + 7,11,11,8,0,0,4,12,12,20,36,36,68,254,4,4, + 30,6,11,11,8,1,0,124,64,64,64,120,132,4,4,4, + 132,120,6,11,11,8,1,0,12,48,64,192,184,196,132,132, + 132,72,56,7,11,11,8,1,0,254,132,4,8,8,8,16, + 16,32,32,96,7,11,11,9,1,0,120,196,196,196,120,60, + 194,130,130,130,124,6,11,11,8,1,0,56,200,132,132,132, + 132,124,4,8,16,224}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--18-180-72-72-P-81-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=15 h=19 x= 2 y= 9 dx=15 dy= 0 ascent=15 len=30 + Font Bounding box w=26 h=25 x=-9 y=-6 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =15 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr11r[1868] U8G_SECTION(".progmem.u8g_font_gdr11r") = { + 0,26,25,247,250,11,2,61,5,21,32,127,252,15,252,14, + 252,0,0,0,4,0,0,2,13,13,5,1,0,64,64,64, + 64,64,64,64,64,64,64,0,192,128,5,6,6,8,1,7, + 200,200,72,72,72,72,8,10,10,8,1,1,18,20,20,127, + 36,40,254,72,80,144,7,14,14,8,1,254,16,16,126,148, + 144,240,56,28,20,148,148,248,16,16,11,11,22,13,1,0, + 96,192,161,128,145,0,146,0,166,0,101,192,10,32,18,32, + 50,32,34,32,65,192,11,13,26,12,1,0,28,0,34,0, + 34,0,34,0,36,0,56,0,49,224,216,128,156,128,142,128, + 135,0,135,128,124,224,2,6,6,5,1,7,192,192,64,64, + 64,64,3,17,17,6,1,253,32,64,64,128,128,128,128,128, + 128,128,128,128,128,128,64,64,32,3,17,17,6,1,253,128, + 64,64,32,32,32,32,32,32,32,32,32,32,32,64,64,128, + 6,8,8,8,1,6,48,16,164,120,120,164,16,48,7,6, + 6,7,0,2,16,16,16,254,16,16,2,5,5,4,1,253, + 64,192,64,64,128,5,1,1,6,1,4,248,2,2,2,4, + 1,0,192,128,8,17,17,8,0,253,1,2,2,6,4,4, + 12,8,8,16,16,48,32,32,96,64,192,6,11,11,8,1, + 0,48,72,132,132,132,132,132,132,132,72,48,6,11,11,8, + 1,0,16,240,16,16,16,16,16,16,16,16,124,6,11,11, + 8,1,0,28,100,68,4,8,8,16,32,68,68,252,6,11, + 11,7,0,0,56,68,68,4,24,12,4,4,4,140,120,7, + 11,11,8,0,0,4,12,12,20,36,36,68,254,4,4,30, + 6,11,11,8,1,0,124,64,64,64,120,132,4,4,4,132, + 120,6,11,11,8,1,0,12,48,64,192,184,196,132,132,132, + 72,56,7,11,11,8,1,0,254,132,4,8,8,8,16,16, + 32,32,96,7,11,11,9,1,0,120,196,196,196,120,60,194, + 130,130,130,124,6,11,11,8,1,0,56,200,132,132,132,132, + 124,4,8,16,224,2,8,8,4,1,0,192,128,0,0,0, + 0,192,128,2,11,11,4,1,253,192,128,0,0,0,0,64, + 192,64,64,128,6,6,6,8,1,2,4,56,224,192,56,12, + 6,4,4,8,1,3,252,0,0,252,6,6,6,8,1,2, + 192,112,12,28,112,128,6,13,13,8,1,0,56,68,132,132, + 4,8,16,32,32,32,0,48,32,13,15,30,15,1,253,7, + 192,24,96,32,16,64,16,135,136,136,136,144,136,144,136,144, + 136,144,144,137,144,78,224,96,16,48,32,15,192,11,11,22, + 11,0,0,4,0,12,0,14,0,18,0,18,0,19,0,31, + 0,33,0,33,128,32,128,241,224,8,11,11,10,1,0,252, + 66,66,68,126,67,65,65,65,67,254,8,11,11,10,1,0, + 62,66,128,128,128,128,128,128,128,67,60,9,11,22,11,1, + 0,252,0,67,0,65,0,64,128,64,128,64,128,64,128,64, + 128,65,0,67,0,252,0,7,11,11,9,1,0,254,66,64, + 64,124,64,64,64,66,66,254,7,11,11,9,1,0,254,66, + 64,64,124,64,64,64,64,64,240,10,11,22,11,1,0,15, + 0,49,128,64,0,128,0,128,0,128,0,131,192,128,128,64, + 128,96,128,31,0,10,11,22,12,1,0,225,192,64,128,64, + 128,64,128,64,128,127,128,64,128,64,128,64,128,64,128,225, + 192,3,11,11,5,1,0,224,64,64,64,64,64,64,64,64, + 64,224,6,14,14,6,254,253,60,8,8,8,8,8,8,8, + 8,8,8,8,144,224,9,11,22,10,1,0,231,128,70,0, + 76,0,72,0,80,0,112,0,88,0,72,0,68,0,70,0, + 227,128,7,11,11,9,1,0,224,64,64,64,64,64,64,64, + 66,66,254,13,11,22,15,1,0,224,56,96,96,96,96,80, + 160,80,160,88,160,73,32,77,48,70,48,70,48,228,120,10, + 11,22,12,1,0,193,192,96,128,112,128,80,128,72,128,76, + 128,70,128,66,128,65,128,65,128,224,128,9,11,22,11,1, + 0,30,0,99,0,129,0,128,128,128,128,128,128,128,128,128, + 128,65,0,98,0,60,0,7,11,11,9,1,0,252,66,66, + 66,66,92,96,64,64,64,240,10,14,28,11,1,253,30,0, + 99,0,129,0,128,128,128,128,128,128,128,128,128,128,65,0, + 98,0,60,0,6,0,3,64,1,192,9,11,22,10,1,0, + 252,0,70,0,66,0,66,0,68,0,72,0,120,0,76,0, + 70,0,66,0,227,128,7,11,11,9,1,0,60,198,128,128, + 112,28,6,2,130,196,248,9,11,22,10,0,0,255,128,136, + 128,136,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,28,0,10,11,22,12,1,0,225,192,64,128,64,128,64, + 128,64,128,64,128,64,128,64,128,64,128,33,0,30,0,11, + 11,22,12,0,0,240,224,32,64,32,128,48,128,16,128,25, + 0,9,0,9,0,14,0,6,0,4,0,15,11,22,15,0, + 0,241,30,33,8,33,136,34,136,50,136,50,200,20,80,20, + 112,20,48,24,48,8,32,11,11,22,11,0,0,243,192,32, + 128,49,0,26,0,14,0,4,0,14,0,19,0,49,128,32, + 192,241,224,10,11,22,11,0,0,225,192,48,128,17,0,25, + 0,10,0,14,0,4,0,4,0,4,0,4,0,14,0,8, + 11,11,9,1,0,255,134,132,12,24,16,48,32,65,193,255, + 4,17,17,6,1,253,240,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,240,8,17,17,8,0,253,192,64,96, + 32,32,48,16,16,8,8,12,4,4,6,2,2,1,4,17, + 17,5,0,253,240,16,16,16,16,16,16,16,16,16,16,16, + 16,16,16,16,240,7,9,9,9,1,5,16,48,56,40,76, + 76,68,134,130,7,1,1,8,1,254,254,4,4,4,6,0, + 9,192,96,32,16,7,8,8,8,1,0,60,68,132,28,100, + 132,140,118,8,14,14,9,0,0,64,192,64,64,64,64,78, + 115,65,65,65,65,66,60,6,8,8,8,1,0,60,68,128, + 128,128,128,196,120,7,14,14,9,1,0,12,4,4,4,4, + 4,60,196,132,132,132,132,76,118,6,8,8,8,1,0,56, + 68,132,252,128,128,68,120,6,14,14,6,1,0,28,40,64, + 64,64,64,248,64,64,64,64,64,64,240,9,12,24,8,0, + 252,61,128,194,0,130,0,194,0,124,0,32,0,112,0,63, + 0,193,0,129,0,130,0,124,0,8,14,14,10,1,0,64, + 192,64,64,64,64,78,114,98,66,66,66,66,231,3,12,12, + 5,1,0,192,192,0,0,64,192,64,64,64,64,64,224,5, + 16,16,5,254,252,24,24,0,0,8,24,8,8,8,8,8, + 8,8,8,16,224,8,14,14,9,1,0,64,192,64,64,64, + 64,79,72,80,112,80,72,68,231,3,14,14,5,1,0,64, + 192,64,64,64,64,64,64,64,64,64,64,64,224,13,8,16, + 15,1,0,206,112,115,144,98,16,66,16,66,16,66,16,66, + 16,231,56,8,8,8,10,1,0,78,210,98,66,66,66,66, + 231,7,8,8,9,1,0,56,196,130,130,130,130,68,56,8, + 12,12,10,1,252,206,115,65,65,65,65,98,92,64,64,64, + 224,8,12,12,9,1,252,62,66,130,130,130,130,70,58,2, + 2,2,15,6,8,8,7,1,0,220,100,64,64,64,64,64, + 224,5,8,8,7,1,0,112,136,128,96,24,136,136,240,5, + 11,11,6,1,0,64,64,64,248,64,64,64,64,64,64,120, + 8,8,8,10,1,0,198,66,66,66,66,66,70,59,9,8, + 16,9,0,0,243,128,98,0,34,0,50,0,20,0,20,0, + 28,0,8,0,13,8,16,13,0,0,242,56,98,32,39,32, + 37,32,53,160,24,192,24,192,16,192,9,8,16,9,0,0, + 247,128,34,0,20,0,24,0,28,0,38,0,35,0,247,128, + 9,12,24,9,0,252,243,128,97,0,34,0,50,0,20,0, + 20,0,28,0,8,0,8,0,16,0,176,0,224,0,6,8, + 8,8,1,0,252,136,24,16,32,64,196,252,5,17,17,6, + 1,253,24,32,32,32,32,32,32,32,192,32,32,32,32,32, + 32,32,24,1,19,19,4,2,252,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,5,17,17,6, + 0,253,64,160,32,32,32,32,32,32,24,32,32,32,32,32, + 32,64,192,8,2,2,9,0,4,57,206,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--19-190-72-72-P-84-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=16 h=20 x= 2 y=11 dx=16 dy= 0 ascent=17 len=36 + Font Bounding box w=28 h=28 x=-10 y=-7 + Calculated Min Values x=-2 y=-5 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =15 descent=-4 + Max Font ascent =17 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr12[4200] U8G_SECTION(".progmem.u8g_font_gdr12") = { + 0,28,28,246,249,12,2,80,5,85,32,255,252,17,251,15, + 252,0,0,0,4,0,0,2,15,15,5,2,255,128,128,128, + 128,128,128,128,128,128,128,0,0,192,192,128,6,6,6,8, + 1,8,204,76,72,72,72,72,8,11,11,9,1,1,26,18, + 18,127,36,36,36,254,72,72,80,7,15,15,9,1,254,16, + 16,126,148,144,208,112,28,22,18,146,146,252,16,16,11,11, + 22,13,1,0,112,64,144,128,137,128,139,0,146,0,117,192, + 10,32,26,32,18,32,34,32,65,192,11,13,26,12,1,0, + 28,0,34,0,34,0,34,0,36,0,56,0,49,224,216,128, + 140,128,140,128,135,0,199,128,60,224,2,6,6,5,1,8, + 192,64,64,64,64,64,4,18,18,6,1,253,48,96,64,64, + 128,128,128,128,128,128,128,128,128,128,192,64,96,48,4,18, + 18,6,1,253,192,96,32,48,16,16,16,16,16,16,16,16, + 16,16,32,32,96,128,7,7,7,8,1,7,16,148,222,48, + 252,146,16,7,7,7,8,0,2,16,16,16,254,16,16,16, + 2,5,5,4,1,253,64,192,64,64,128,5,1,1,6,1, + 4,248,2,3,3,4,1,255,192,192,128,8,18,18,9,0, + 253,1,1,3,2,6,4,4,12,8,8,24,16,48,32,32, + 96,64,192,7,11,11,9,1,0,56,68,130,130,130,130,130, + 130,132,68,56,6,12,12,9,1,0,16,112,144,16,16,16, + 16,16,16,16,16,252,6,12,12,8,1,0,60,68,196,4, + 4,8,16,16,32,68,132,252,7,12,12,8,0,0,28,38, + 98,2,4,28,2,2,2,2,134,124,7,12,12,9,1,0, + 4,12,12,20,20,36,68,68,254,4,4,30,6,11,11,9, + 2,0,124,64,64,64,120,132,4,4,4,132,120,7,12,12, + 9,1,0,12,48,64,64,128,252,198,130,130,130,68,56,7, + 11,11,9,1,0,254,130,4,4,8,8,24,16,48,32,96, + 7,12,12,9,1,0,120,196,196,196,232,60,78,130,130,130, + 194,124,7,11,11,9,1,0,56,68,130,130,130,198,122,2, + 4,8,112,2,10,10,4,1,255,128,192,128,0,0,0,0, + 192,192,128,2,12,12,4,1,253,128,192,128,0,0,0,0, + 64,192,64,64,128,7,6,6,8,1,2,6,28,224,192,56, + 6,7,4,4,8,1,3,254,0,0,254,7,6,6,8,1, + 2,192,112,14,28,112,128,6,15,15,8,1,255,56,68,132, + 132,4,8,16,16,32,32,32,0,48,48,32,14,15,30,16, + 1,253,7,224,24,48,32,8,71,200,136,68,144,68,144,68, + 144,68,144,68,144,72,136,200,71,112,32,8,24,48,15,192, + 11,12,24,11,0,0,4,0,6,0,14,0,10,0,11,0, + 17,0,17,0,31,128,33,128,32,128,32,192,241,224,8,12, + 12,10,1,0,252,66,66,66,68,126,67,65,65,65,67,254, + 8,12,12,10,1,0,30,99,128,128,128,128,128,128,128,192, + 99,60,9,12,24,11,1,0,252,0,67,0,65,0,64,128, + 64,128,64,128,64,128,64,128,64,128,65,0,66,0,252,0, + 8,12,12,9,1,0,254,66,64,64,64,124,72,64,64,66, + 67,254,7,12,12,9,1,0,254,66,64,64,64,124,72,64, + 64,64,64,240,10,12,24,11,1,0,15,0,49,128,64,0, + 128,0,128,0,128,0,131,192,128,128,128,128,64,128,96,128, + 31,0,10,12,24,12,1,0,225,192,64,128,64,128,64,128, + 64,128,127,128,64,128,64,128,64,128,64,128,64,128,225,192, + 3,12,12,6,1,0,224,64,64,64,64,64,64,64,64,64, + 64,224,6,15,15,6,255,253,60,8,8,8,8,8,8,8, + 8,8,8,8,8,144,224,10,12,24,11,1,0,231,128,66, + 0,68,0,72,0,80,0,96,0,80,0,88,0,76,0,70, + 0,67,0,225,192,7,12,12,9,1,0,224,64,64,64,64, + 64,64,64,64,66,66,254,14,12,24,15,1,0,224,56,96, + 48,112,112,80,80,80,80,88,144,72,144,77,16,69,16,71, + 16,66,16,226,124,10,12,24,12,1,0,193,192,96,128,112, + 128,80,128,88,128,76,128,68,128,70,128,67,128,65,128,65, + 128,224,128,9,12,24,11,1,0,30,0,99,0,129,0,128, + 128,128,128,128,128,128,128,128,128,128,128,65,0,98,0,60, + 0,8,12,12,10,1,0,252,66,65,65,65,66,92,64,64, + 64,64,240,11,15,30,11,1,253,30,0,99,0,129,0,128, + 128,128,128,128,128,128,128,128,128,128,128,65,0,98,0,60, + 0,6,0,3,32,0,192,10,12,24,11,1,0,252,0,67, + 0,65,0,65,0,65,0,66,0,124,0,76,0,70,0,67, + 0,67,0,225,192,7,12,12,9,1,0,60,198,128,128,224, + 56,12,2,2,130,196,248,9,12,24,10,1,0,255,128,136, + 128,136,128,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,62,0,10,12,24,12,1,0,225,192,64,128,64, + 128,64,128,64,128,64,128,64,128,64,128,64,128,64,128,33, + 0,30,0,12,12,24,12,0,0,240,240,32,64,48,64,48, + 64,16,128,24,128,9,128,9,0,13,0,7,0,6,0,6, + 0,16,12,24,16,0,0,241,15,33,132,33,132,33,132,50, + 196,50,72,18,104,20,104,28,40,28,56,8,48,8,16,11, + 12,24,12,0,0,249,224,32,128,49,128,25,0,14,0,6, + 0,6,0,11,0,25,128,48,128,32,192,241,224,11,12,24, + 11,0,0,225,224,48,128,49,128,25,0,10,0,14,0,4, + 0,4,0,4,0,4,0,4,0,31,0,8,12,12,10,1, + 0,255,130,134,4,12,24,16,48,96,65,193,255,4,18,18, + 6,1,253,240,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,240,7,18,18,9,1,253,128,128,192,64,64, + 32,32,48,16,16,24,8,8,4,4,6,2,2,4,18,18, + 5,0,253,240,16,16,16,16,16,16,16,16,16,16,16,16, + 16,16,16,16,240,7,9,9,9,1,5,16,24,40,44,44, + 68,70,130,130,7,1,1,9,1,254,254,4,4,4,6,0, + 10,192,96,32,16,7,9,9,9,1,0,60,68,132,4,60, + 196,132,140,118,9,14,28,10,0,0,64,0,192,0,64,0, + 64,0,64,0,70,0,89,0,96,128,64,128,64,128,64,128, + 65,0,97,0,62,0,6,9,9,8,1,0,60,68,128,128, + 128,128,128,196,120,8,14,14,10,1,0,6,2,2,2,2, + 62,66,130,130,130,130,130,70,59,7,9,9,9,1,0,60, + 68,130,130,254,128,128,66,60,6,14,14,6,1,0,28,36, + 64,64,64,248,64,64,64,64,64,64,64,240,10,13,26,10, + 0,252,62,192,67,0,129,0,129,0,194,0,60,0,48,0, + 120,0,39,128,192,128,128,128,193,0,62,0,8,14,14,10, + 1,0,64,192,64,64,64,76,82,98,66,66,66,66,66,231, + 3,12,12,5,1,0,192,192,0,64,192,64,64,64,64,64, + 64,224,5,16,16,5,254,252,24,24,0,8,24,8,8,8, + 8,8,8,8,8,8,16,224,8,14,14,10,1,0,64,192, + 64,64,64,79,68,72,112,112,88,76,70,231,3,14,14,5, + 1,0,64,192,64,64,64,64,64,64,64,64,64,64,64,224, + 13,9,18,15,1,0,204,96,82,144,99,16,66,16,66,16, + 66,16,66,16,66,16,231,56,8,9,9,10,1,0,76,210, + 98,66,66,66,66,66,231,8,9,9,10,1,0,60,66,129, + 129,129,129,130,66,60,8,13,13,10,1,252,206,114,65,65, + 65,65,66,98,92,64,64,64,240,9,13,26,10,1,252,29, + 0,99,0,129,0,129,0,129,0,129,0,129,0,71,0,57, + 0,1,0,1,0,1,0,7,128,6,9,9,8,1,0,92, + 228,96,64,64,64,64,64,240,5,9,9,7,1,0,112,136, + 128,192,48,8,136,136,240,5,12,12,7,1,0,64,64,64, + 248,64,64,64,64,64,64,72,112,8,9,9,10,1,0,198, + 66,66,66,66,66,66,70,59,9,9,18,9,0,0,243,128, + 97,0,33,0,50,0,18,0,18,0,28,0,12,0,8,0, + 13,9,18,13,0,0,242,56,99,16,35,16,37,16,53,160, + 20,160,24,224,24,192,24,64,9,9,18,10,0,0,243,128, + 33,0,50,0,28,0,12,0,22,0,34,0,33,0,243,128, + 9,13,26,9,0,252,243,128,97,0,33,0,50,0,18,0, + 20,0,28,0,12,0,8,0,8,0,16,0,176,0,224,0, + 7,9,9,8,1,0,254,132,8,24,48,32,98,194,254,5, + 18,18,6,1,253,8,16,32,32,32,32,32,32,64,224,32, + 32,32,32,32,32,32,24,1,20,20,4,2,252,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,5,18,18,6,0,253,192,32,32,32,32,32,32,32,56, + 16,32,32,32,32,32,32,64,128,9,4,8,9,0,4,48, + 0,125,128,79,0,134,0,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,4,0,0,2,14, + 14,5,2,251,64,192,64,128,128,128,128,128,128,128,128,128, + 128,128,7,12,12,9,1,0,16,16,62,212,144,144,144,144, + 210,124,16,16,7,12,12,9,1,0,60,70,68,64,64,64, + 240,64,64,66,66,254,7,6,6,9,1,3,132,126,68,68, + 68,254,9,11,22,9,0,0,231,128,99,0,50,0,20,0, + 28,0,8,0,127,0,8,0,8,0,8,0,62,0,1,20, + 20,4,2,252,128,128,128,128,128,128,128,128,128,0,0,128, + 128,128,128,128,128,128,128,128,7,13,13,9,1,0,112,152, + 128,224,184,134,130,98,60,12,132,196,120,5,2,2,7,1, + 10,136,136,12,12,24,14,1,0,15,0,48,192,94,32,146, + 32,160,16,160,16,160,16,160,16,144,160,79,32,32,64,31, + 128,5,7,7,5,0,5,48,208,112,208,176,72,240,7,8, + 8,9,1,0,34,36,76,216,216,76,36,34,8,4,4,9, + 0,2,255,1,1,1,5,1,1,6,1,4,248,7,6,6, + 7,0,7,56,238,170,178,238,56,6,1,1,9,2,11,252, + 5,5,5,7,1,7,112,136,136,136,112,7,9,9,8,0, + 1,16,16,16,254,16,16,16,0,126,4,7,7,6,1,6, + 112,144,16,32,64,144,240,5,8,8,6,0,5,56,72,8, + 16,8,8,136,112,4,4,4,6,2,10,48,96,64,128,8, + 13,13,10,1,252,194,70,66,66,66,66,102,126,91,64,64, + 64,96,8,14,14,10,1,254,63,70,134,134,134,70,62,6, + 6,6,6,6,6,15,1,2,2,3,1,5,128,128,2,4, + 4,4,2,252,192,192,64,128,5,7,7,6,1,6,32,224, + 32,32,32,32,248,4,7,7,5,0,5,96,144,144,144,144, + 96,240,7,8,8,9,1,0,136,72,36,50,50,36,72,136, + 10,11,22,11,1,0,192,128,65,0,65,0,66,0,68,0, + 228,0,9,128,18,128,18,128,39,192,65,192,9,11,22,11, + 1,0,192,128,65,0,66,0,66,0,68,0,239,128,12,128, + 17,0,49,0,34,128,71,128,10,12,24,11,1,0,96,0, + 144,128,33,0,18,0,146,0,228,0,8,0,9,128,18,128, + 50,128,39,192,65,192,6,14,14,8,1,251,16,48,16,16, + 16,16,32,32,64,128,132,132,136,112,11,16,32,11,0,0, + 16,0,60,0,2,0,0,0,4,0,6,0,14,0,10,0, + 11,0,17,0,17,0,31,128,33,128,32,128,32,192,241,224, + 11,16,32,11,0,0,1,0,7,128,8,0,0,0,4,0, + 6,0,14,0,10,0,11,0,17,0,17,0,31,128,33,128, + 32,128,32,192,241,224,11,16,32,11,0,0,4,0,10,0, + 17,0,0,0,4,0,6,0,14,0,10,0,11,0,17,0, + 17,0,31,128,33,128,32,128,32,192,241,224,11,15,30,11, + 0,0,29,128,39,0,0,0,4,0,6,0,14,0,10,0, + 11,0,17,0,17,0,31,128,33,128,32,128,32,192,241,224, + 11,15,30,11,0,0,33,0,33,0,0,0,4,0,6,0, + 14,0,10,0,11,0,17,0,17,0,31,128,33,128,32,128, + 32,192,241,224,11,17,34,11,0,0,14,0,18,0,18,0, + 12,0,0,0,4,0,6,0,14,0,10,0,11,0,17,0, + 17,0,31,128,33,128,32,128,32,192,241,224,14,12,24,15, + 0,0,31,248,5,8,5,0,9,0,9,0,31,240,17,32, + 17,0,33,0,33,8,97,12,243,248,9,16,32,10,1,252, + 30,0,99,0,128,0,128,0,128,0,128,0,128,0,128,0, + 128,0,65,0,97,128,62,0,8,0,12,0,4,0,8,0, + 8,16,16,9,1,0,64,48,8,0,254,66,64,64,64,124, + 72,64,64,66,67,254,8,16,16,9,1,0,4,14,48,0, + 254,66,64,64,64,124,72,64,64,66,67,254,8,16,16,9, + 1,0,24,44,68,2,254,66,64,64,64,124,72,64,64,66, + 67,254,8,15,15,9,1,0,132,132,0,254,66,64,64,64, + 124,72,64,64,66,67,254,4,16,16,6,0,0,128,96,16, + 0,112,32,32,32,32,32,32,32,32,32,32,112,5,16,16, + 6,1,0,24,48,192,0,224,64,64,64,64,64,64,64,64, + 64,64,224,6,16,16,6,0,0,48,88,132,0,112,32,32, + 32,32,32,32,32,32,32,32,112,6,15,15,6,0,0,132, + 136,0,112,32,32,32,32,32,32,32,32,32,32,112,10,12, + 24,11,0,0,126,0,33,128,32,128,32,64,32,64,124,64, + 160,64,32,64,32,64,32,128,33,0,126,0,10,15,30,12, + 1,0,25,0,38,0,0,0,193,192,96,128,112,128,80,128, + 88,128,76,128,68,128,70,128,67,128,65,128,65,128,224,128, + 9,16,32,11,1,0,32,0,24,0,4,0,0,0,30,0, + 99,0,129,0,128,128,128,128,128,128,128,128,128,128,128,128, + 65,0,98,0,60,0,9,16,32,11,1,0,3,0,6,0, + 24,0,0,0,30,0,99,0,129,0,128,128,128,128,128,128, + 128,128,128,128,128,128,65,0,98,0,60,0,9,16,32,11, + 1,0,12,0,22,0,34,0,1,0,30,0,99,0,129,0, + 128,128,128,128,128,128,128,128,128,128,128,128,65,0,98,0, + 60,0,9,15,30,11,1,0,25,0,110,0,0,0,30,0, + 99,0,129,0,128,128,128,128,128,128,128,128,128,128,128,128, + 65,0,98,0,60,0,9,15,30,11,1,0,66,0,66,0, + 0,0,30,0,99,0,129,0,128,128,128,128,128,128,128,128, + 128,128,128,128,65,0,98,0,60,0,6,6,6,8,1,2, + 132,72,48,48,72,132,9,12,24,11,1,0,30,128,35,0, + 67,0,131,128,132,128,136,128,136,128,144,128,225,0,97,0, + 98,0,188,0,10,16,32,12,1,0,48,0,24,0,6,0, + 0,0,225,192,64,128,64,128,64,128,64,128,64,128,64,128, + 64,128,64,128,64,128,33,0,30,0,10,16,32,12,1,0, + 1,0,6,0,8,0,0,0,225,192,64,128,64,128,64,128, + 64,128,64,128,64,128,64,128,64,128,64,128,33,0,30,0, + 10,16,32,12,1,0,12,0,26,0,33,0,0,0,225,192, + 64,128,64,128,64,128,64,128,64,128,64,128,64,128,64,128, + 64,128,33,0,30,0,10,15,30,12,1,0,33,0,33,0, + 0,0,225,192,64,128,64,128,64,128,64,128,64,128,64,128, + 64,128,64,128,64,128,33,0,30,0,11,16,32,11,0,0, + 1,0,3,128,12,0,0,0,225,224,48,128,49,128,25,0, + 10,0,14,0,4,0,4,0,4,0,4,0,4,0,31,0, + 8,12,12,10,1,0,240,64,124,66,65,65,65,65,98,92, + 64,240,9,14,28,11,1,0,30,0,35,0,65,0,65,0, + 65,0,70,0,72,0,72,0,70,0,67,128,64,128,72,128, + 72,128,207,0,7,14,14,9,1,0,96,32,16,16,8,60, + 68,132,4,60,196,132,140,118,7,14,14,9,1,0,12,8, + 16,16,0,60,68,132,4,60,196,132,140,118,7,14,14,9, + 1,0,16,56,76,132,0,60,68,132,4,60,196,132,140,118, + 7,13,13,9,1,0,34,116,152,0,60,68,132,4,60,196, + 132,140,118,7,12,12,9,1,0,132,132,0,60,68,132,4, + 60,196,132,140,118,7,14,14,9,1,0,56,72,72,48,0, + 60,68,132,4,60,196,132,140,118,11,9,18,13,1,0,57, + 192,70,64,196,32,4,32,31,224,100,0,132,0,142,32,115, + 192,7,13,13,8,1,252,60,68,128,128,128,128,128,98,60, + 16,24,8,16,7,14,14,9,1,0,96,32,16,8,0,60, + 68,130,130,254,128,128,66,60,7,14,14,9,1,0,4,14, + 8,16,0,60,68,130,130,254,128,128,66,60,7,14,14,9, + 1,0,24,56,36,66,0,60,68,130,130,254,128,128,66,60, + 7,12,12,9,1,0,130,132,0,60,68,130,130,254,128,128, + 66,60,4,14,14,5,0,0,192,64,32,16,0,32,96,32, + 32,32,32,32,32,112,4,14,14,5,1,0,16,48,96,64, + 0,64,192,64,64,64,64,64,64,224,6,14,14,5,0,0, + 32,112,200,132,0,32,96,32,32,32,32,32,32,112,6,12, + 12,5,255,0,132,132,0,16,48,16,16,16,16,16,16,56, + 7,13,13,9,1,0,96,30,56,68,60,70,130,130,130,130, + 132,68,56,8,13,13,10,1,0,51,58,76,0,76,210,98, + 66,66,66,66,66,231,8,14,14,10,1,0,96,48,16,8, + 0,60,66,129,129,129,129,130,66,60,8,14,14,10,1,0, + 6,12,8,16,0,60,66,129,129,129,129,130,66,60,8,14, + 14,10,1,0,24,56,36,66,0,60,66,129,129,129,129,130, + 66,60,8,13,13,10,1,0,50,122,76,0,60,66,129,129, + 129,129,130,66,60,8,12,12,10,1,0,130,130,0,60,66, + 129,129,129,129,130,66,60,6,6,6,8,1,2,32,32,252, + 0,32,32,8,9,9,10,1,0,29,102,135,137,153,145,226, + 98,252,8,14,14,10,1,0,96,48,16,8,0,198,66,66, + 66,66,66,66,70,59,8,14,14,10,1,0,6,12,8,16, + 0,198,66,66,66,66,66,66,70,59,8,14,14,10,1,0, + 24,28,36,66,0,198,66,66,66,66,66,66,70,59,8,12, + 12,10,1,0,130,130,0,198,66,66,66,66,66,66,70,59, + 9,18,36,9,0,252,3,0,6,0,4,0,8,0,0,0, + 243,128,97,0,33,0,50,0,18,0,20,0,28,0,12,0, + 8,0,8,0,16,0,176,0,224,0,8,18,18,10,1,252, + 64,192,64,64,64,78,114,65,65,65,65,66,98,124,64,64, + 64,240,9,16,32,9,0,252,65,0,65,0,0,0,243,128, + 97,0,33,0,50,0,18,0,20,0,28,0,12,0,8,0, + 8,0,16,0,176,0,224,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--19-190-72-72-P-84-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 12 + Calculated Max Values w= 8 h=18 x= 2 y= 7 dx= 9 dy= 0 ascent=15 len=18 + Font Bounding box w=28 h=28 x=-10 y=-7 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =12 descent= 0 + X Font ascent =12 descent= 0 + Max Font ascent =15 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr12n[270] U8G_SECTION(".progmem.u8g_font_gdr12n") = { + 0,28,28,246,249,12,0,0,0,0,42,57,0,15,253,12, + 0,7,7,7,8,1,7,16,148,222,48,252,146,16,7,7, + 7,8,0,2,16,16,16,254,16,16,16,2,5,5,4,1, + 253,64,192,64,64,128,5,1,1,6,1,4,248,2,3,3, + 4,1,255,192,192,128,8,18,18,9,0,253,1,1,3,2, + 6,4,4,12,8,8,24,16,48,32,32,96,64,192,7,11, + 11,9,1,0,56,68,130,130,130,130,130,130,132,68,56,6, + 12,12,9,1,0,16,112,144,16,16,16,16,16,16,16,16, + 252,6,12,12,8,1,0,60,68,196,4,4,8,16,16,32, + 68,132,252,7,12,12,8,0,0,28,38,98,2,4,28,2, + 2,2,2,134,124,7,12,12,9,1,0,4,12,12,20,20, + 36,68,68,254,4,4,30,6,11,11,9,2,0,124,64,64, + 64,120,132,4,4,4,132,120,7,12,12,9,1,0,12,48, + 64,64,128,252,198,130,130,130,68,56,7,11,11,9,1,0, + 254,130,4,4,8,8,24,16,48,32,96,7,12,12,9,1, + 0,120,196,196,196,232,60,78,130,130,130,194,124,7,11,11, + 9,1,0,56,68,130,130,130,198,122,2,4,8,112}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--19-190-72-72-P-84-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=16 h=20 x= 2 y=10 dx=16 dy= 0 ascent=16 len=30 + Font Bounding box w=28 h=28 x=-10 y=-7 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =15 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr12r[1992] U8G_SECTION(".progmem.u8g_font_gdr12r") = { + 0,28,28,246,249,12,2,80,5,85,32,127,252,16,252,15, + 252,0,0,0,4,0,0,2,15,15,5,2,255,128,128,128, + 128,128,128,128,128,128,128,0,0,192,192,128,6,6,6,8, + 1,8,204,76,72,72,72,72,8,11,11,9,1,1,26,18, + 18,127,36,36,36,254,72,72,80,7,15,15,9,1,254,16, + 16,126,148,144,208,112,28,22,18,146,146,252,16,16,11,11, + 22,13,1,0,112,64,144,128,137,128,139,0,146,0,117,192, + 10,32,26,32,18,32,34,32,65,192,11,13,26,12,1,0, + 28,0,34,0,34,0,34,0,36,0,56,0,49,224,216,128, + 140,128,140,128,135,0,199,128,60,224,2,6,6,5,1,8, + 192,64,64,64,64,64,4,18,18,6,1,253,48,96,64,64, + 128,128,128,128,128,128,128,128,128,128,192,64,96,48,4,18, + 18,6,1,253,192,96,32,48,16,16,16,16,16,16,16,16, + 16,16,32,32,96,128,7,7,7,8,1,7,16,148,222,48, + 252,146,16,7,7,7,8,0,2,16,16,16,254,16,16,16, + 2,5,5,4,1,253,64,192,64,64,128,5,1,1,6,1, + 4,248,2,3,3,4,1,255,192,192,128,8,18,18,9,0, + 253,1,1,3,2,6,4,4,12,8,8,24,16,48,32,32, + 96,64,192,7,11,11,9,1,0,56,68,130,130,130,130,130, + 130,132,68,56,6,12,12,9,1,0,16,112,144,16,16,16, + 16,16,16,16,16,252,6,12,12,8,1,0,60,68,196,4, + 4,8,16,16,32,68,132,252,7,12,12,8,0,0,28,38, + 98,2,4,28,2,2,2,2,134,124,7,12,12,9,1,0, + 4,12,12,20,20,36,68,68,254,4,4,30,6,11,11,9, + 2,0,124,64,64,64,120,132,4,4,4,132,120,7,12,12, + 9,1,0,12,48,64,64,128,252,198,130,130,130,68,56,7, + 11,11,9,1,0,254,130,4,4,8,8,24,16,48,32,96, + 7,12,12,9,1,0,120,196,196,196,232,60,78,130,130,130, + 194,124,7,11,11,9,1,0,56,68,130,130,130,198,122,2, + 4,8,112,2,10,10,4,1,255,128,192,128,0,0,0,0, + 192,192,128,2,12,12,4,1,253,128,192,128,0,0,0,0, + 64,192,64,64,128,7,6,6,8,1,2,6,28,224,192,56, + 6,7,4,4,8,1,3,254,0,0,254,7,6,6,8,1, + 2,192,112,14,28,112,128,6,15,15,8,1,255,56,68,132, + 132,4,8,16,16,32,32,32,0,48,48,32,14,15,30,16, + 1,253,7,224,24,48,32,8,71,200,136,68,144,68,144,68, + 144,68,144,68,144,72,136,200,71,112,32,8,24,48,15,192, + 11,12,24,11,0,0,4,0,6,0,14,0,10,0,11,0, + 17,0,17,0,31,128,33,128,32,128,32,192,241,224,8,12, + 12,10,1,0,252,66,66,66,68,126,67,65,65,65,67,254, + 8,12,12,10,1,0,30,99,128,128,128,128,128,128,128,192, + 99,60,9,12,24,11,1,0,252,0,67,0,65,0,64,128, + 64,128,64,128,64,128,64,128,64,128,65,0,66,0,252,0, + 8,12,12,9,1,0,254,66,64,64,64,124,72,64,64,66, + 67,254,7,12,12,9,1,0,254,66,64,64,64,124,72,64, + 64,64,64,240,10,12,24,11,1,0,15,0,49,128,64,0, + 128,0,128,0,128,0,131,192,128,128,128,128,64,128,96,128, + 31,0,10,12,24,12,1,0,225,192,64,128,64,128,64,128, + 64,128,127,128,64,128,64,128,64,128,64,128,64,128,225,192, + 3,12,12,6,1,0,224,64,64,64,64,64,64,64,64,64, + 64,224,6,15,15,6,255,253,60,8,8,8,8,8,8,8, + 8,8,8,8,8,144,224,10,12,24,11,1,0,231,128,66, + 0,68,0,72,0,80,0,96,0,80,0,88,0,76,0,70, + 0,67,0,225,192,7,12,12,9,1,0,224,64,64,64,64, + 64,64,64,64,66,66,254,14,12,24,15,1,0,224,56,96, + 48,112,112,80,80,80,80,88,144,72,144,77,16,69,16,71, + 16,66,16,226,124,10,12,24,12,1,0,193,192,96,128,112, + 128,80,128,88,128,76,128,68,128,70,128,67,128,65,128,65, + 128,224,128,9,12,24,11,1,0,30,0,99,0,129,0,128, + 128,128,128,128,128,128,128,128,128,128,128,65,0,98,0,60, + 0,8,12,12,10,1,0,252,66,65,65,65,66,92,64,64, + 64,64,240,11,15,30,11,1,253,30,0,99,0,129,0,128, + 128,128,128,128,128,128,128,128,128,128,128,65,0,98,0,60, + 0,6,0,3,32,0,192,10,12,24,11,1,0,252,0,67, + 0,65,0,65,0,65,0,66,0,124,0,76,0,70,0,67, + 0,67,0,225,192,7,12,12,9,1,0,60,198,128,128,224, + 56,12,2,2,130,196,248,9,12,24,10,1,0,255,128,136, + 128,136,128,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,62,0,10,12,24,12,1,0,225,192,64,128,64, + 128,64,128,64,128,64,128,64,128,64,128,64,128,64,128,33, + 0,30,0,12,12,24,12,0,0,240,240,32,64,48,64,48, + 64,16,128,24,128,9,128,9,0,13,0,7,0,6,0,6, + 0,16,12,24,16,0,0,241,15,33,132,33,132,33,132,50, + 196,50,72,18,104,20,104,28,40,28,56,8,48,8,16,11, + 12,24,12,0,0,249,224,32,128,49,128,25,0,14,0,6, + 0,6,0,11,0,25,128,48,128,32,192,241,224,11,12,24, + 11,0,0,225,224,48,128,49,128,25,0,10,0,14,0,4, + 0,4,0,4,0,4,0,4,0,31,0,8,12,12,10,1, + 0,255,130,134,4,12,24,16,48,96,65,193,255,4,18,18, + 6,1,253,240,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,240,7,18,18,9,1,253,128,128,192,64,64, + 32,32,48,16,16,24,8,8,4,4,6,2,2,4,18,18, + 5,0,253,240,16,16,16,16,16,16,16,16,16,16,16,16, + 16,16,16,16,240,7,9,9,9,1,5,16,24,40,44,44, + 68,70,130,130,7,1,1,9,1,254,254,4,4,4,6,0, + 10,192,96,32,16,7,9,9,9,1,0,60,68,132,4,60, + 196,132,140,118,9,14,28,10,0,0,64,0,192,0,64,0, + 64,0,64,0,70,0,89,0,96,128,64,128,64,128,64,128, + 65,0,97,0,62,0,6,9,9,8,1,0,60,68,128,128, + 128,128,128,196,120,8,14,14,10,1,0,6,2,2,2,2, + 62,66,130,130,130,130,130,70,59,7,9,9,9,1,0,60, + 68,130,130,254,128,128,66,60,6,14,14,6,1,0,28,36, + 64,64,64,248,64,64,64,64,64,64,64,240,10,13,26,10, + 0,252,62,192,67,0,129,0,129,0,194,0,60,0,48,0, + 120,0,39,128,192,128,128,128,193,0,62,0,8,14,14,10, + 1,0,64,192,64,64,64,76,82,98,66,66,66,66,66,231, + 3,12,12,5,1,0,192,192,0,64,192,64,64,64,64,64, + 64,224,5,16,16,5,254,252,24,24,0,8,24,8,8,8, + 8,8,8,8,8,8,16,224,8,14,14,10,1,0,64,192, + 64,64,64,79,68,72,112,112,88,76,70,231,3,14,14,5, + 1,0,64,192,64,64,64,64,64,64,64,64,64,64,64,224, + 13,9,18,15,1,0,204,96,82,144,99,16,66,16,66,16, + 66,16,66,16,66,16,231,56,8,9,9,10,1,0,76,210, + 98,66,66,66,66,66,231,8,9,9,10,1,0,60,66,129, + 129,129,129,130,66,60,8,13,13,10,1,252,206,114,65,65, + 65,65,66,98,92,64,64,64,240,9,13,26,10,1,252,29, + 0,99,0,129,0,129,0,129,0,129,0,129,0,71,0,57, + 0,1,0,1,0,1,0,7,128,6,9,9,8,1,0,92, + 228,96,64,64,64,64,64,240,5,9,9,7,1,0,112,136, + 128,192,48,8,136,136,240,5,12,12,7,1,0,64,64,64, + 248,64,64,64,64,64,64,72,112,8,9,9,10,1,0,198, + 66,66,66,66,66,66,70,59,9,9,18,9,0,0,243,128, + 97,0,33,0,50,0,18,0,18,0,28,0,12,0,8,0, + 13,9,18,13,0,0,242,56,99,16,35,16,37,16,53,160, + 20,160,24,224,24,192,24,64,9,9,18,10,0,0,243,128, + 33,0,50,0,28,0,12,0,22,0,34,0,33,0,243,128, + 9,13,26,9,0,252,243,128,97,0,33,0,50,0,18,0, + 20,0,28,0,12,0,8,0,8,0,16,0,176,0,224,0, + 7,9,9,8,1,0,254,132,8,24,48,32,98,194,254,5, + 18,18,6,1,253,8,16,32,32,32,32,32,32,64,224,32, + 32,32,32,32,32,32,24,1,20,20,4,2,252,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,5,18,18,6,0,253,192,32,32,32,32,32,32,32,56, + 16,32,32,32,32,32,32,64,128,9,4,8,9,0,4,48, + 0,125,128,79,0,134,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--23-230-72-72-P-110-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=24 x= 2 y=13 dx=20 dy= 0 ascent=20 len=57 + Font Bounding box w=35 h=33 x=-12 y=-8 + Calculated Min Values x=-3 y=-6 dx= 0 dy= 0 + Pure Font ascent =14 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =20 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr14[5942] U8G_SECTION(".progmem.u8g_font_gdr14") = { + 0,35,33,244,248,14,3,95,7,136,32,255,251,20,250,18, + 251,0,0,0,5,0,0,2,17,17,6,2,0,64,192,192, + 192,192,192,192,192,192,192,192,192,128,0,192,192,192,6,8, + 8,10,2,9,204,204,204,204,204,204,204,140,10,13,26,11, + 1,1,12,128,9,128,9,0,9,0,127,192,19,0,18,0, + 50,0,255,128,36,0,100,0,68,0,76,0,9,18,36,11, + 1,254,12,0,12,0,63,128,109,128,205,0,204,0,236,0, + 124,0,63,0,15,0,13,128,13,128,141,128,205,128,239,0, + 126,0,12,0,12,0,14,14,28,16,1,0,56,24,72,48, + 204,96,204,64,204,192,205,128,75,0,114,56,6,76,12,204, + 8,204,16,204,48,200,96,112,14,16,32,16,1,0,15,0, + 25,128,49,128,49,128,49,0,51,0,60,0,60,252,124,112, + 102,48,199,48,195,176,193,224,192,224,96,176,63,28,2,8, + 8,6,2,9,192,192,192,192,192,192,192,128,6,22,22,7, + 1,252,12,24,16,32,96,96,64,192,192,192,192,192,192,192, + 192,64,96,96,32,48,24,12,6,22,22,7,0,252,192,96, + 48,16,24,24,8,12,12,12,12,12,12,12,12,8,24,24, + 16,32,96,192,9,10,20,10,1,8,24,0,24,0,137,0, + 235,128,60,0,60,0,235,0,137,0,24,0,24,0,8,8, + 8,9,1,2,24,24,24,255,24,24,24,24,4,6,6,5, + 0,253,112,240,48,48,32,64,6,1,1,8,1,5,252,2, + 3,3,5,2,0,192,192,192,9,22,44,11,1,252,0,128, + 1,128,1,0,3,0,3,0,2,0,6,0,6,0,12,0, + 12,0,8,0,24,0,24,0,16,0,48,0,48,0,96,0, + 96,0,64,0,192,0,192,0,128,0,9,14,28,11,1,0, + 28,0,39,0,99,0,67,128,193,128,193,128,193,128,193,128, + 193,128,193,128,193,0,97,0,98,0,28,0,8,14,14,11, + 2,0,24,120,152,24,24,24,24,24,24,24,24,24,24,255, + 8,14,14,11,1,0,60,103,195,131,3,6,6,12,24,24, + 48,97,193,255,9,14,28,12,1,0,30,0,103,0,195,0, + 3,0,2,0,4,0,30,0,3,0,1,128,1,128,1,128, + 1,128,195,0,60,0,10,14,28,11,0,0,3,0,7,0, + 7,0,11,0,27,0,19,0,35,0,99,0,67,0,255,192, + 3,0,3,0,3,0,15,192,9,14,28,11,0,0,0,128, + 63,0,32,0,32,0,96,0,126,0,67,0,1,128,1,128, + 1,128,1,128,1,0,195,0,60,0,9,14,28,11,1,0, + 3,0,12,0,48,0,32,0,96,0,222,0,227,0,193,128, + 193,128,193,128,193,128,97,0,99,0,30,0,9,13,26,11, + 1,0,127,128,129,0,129,0,3,0,2,0,6,0,4,0, + 12,0,8,0,24,0,24,0,48,0,32,0,9,14,28,11, + 1,0,62,0,71,0,195,0,195,0,195,0,118,0,30,0, + 39,0,99,128,193,128,193,128,193,128,99,0,60,0,9,14, + 28,11,1,0,30,0,99,0,67,0,193,128,193,128,193,128, + 193,128,99,128,61,128,1,0,3,0,6,0,8,0,112,0, + 2,11,11,5,2,0,192,192,192,0,0,0,0,0,192,192, + 192,4,14,14,5,0,253,48,48,48,0,0,0,0,0,112, + 240,48,48,32,64,8,7,7,10,1,3,1,15,120,192,112, + 30,3,8,4,4,10,1,4,255,0,0,255,8,7,7,10, + 1,3,192,120,15,3,30,240,128,8,17,17,10,1,0,62, + 103,195,195,3,3,6,12,12,24,24,24,16,0,24,24,24, + 17,19,57,19,1,252,1,240,0,6,28,0,24,6,0,48, + 3,0,32,3,0,97,211,128,66,49,128,196,49,128,204,49, + 128,204,49,128,204,49,128,204,49,0,236,51,0,102,114,0, + 99,156,0,48,0,0,56,2,0,14,15,0,3,240,0,13, + 14,28,14,0,0,2,0,3,0,5,0,5,128,5,128,8, + 128,8,192,8,192,31,192,16,96,16,96,32,48,32,48,248, + 120,11,14,28,12,0,0,127,0,177,192,48,192,48,192,48, + 192,49,128,63,128,49,192,48,224,48,96,48,96,48,96,48, + 192,255,128,11,14,28,12,1,0,7,192,24,96,32,0,96, + 0,64,0,192,0,192,0,192,0,192,0,192,0,96,0,96, + 32,56,64,15,128,13,14,28,14,0,0,127,128,176,224,48, + 112,48,48,48,24,48,24,48,24,48,24,48,24,48,24,48, + 48,48,112,48,224,255,128,11,14,28,11,0,0,255,192,48, + 64,48,64,48,0,48,0,48,0,63,128,49,0,48,0,48, + 0,48,0,48,32,48,96,255,192,10,14,28,11,0,0,255, + 192,48,64,48,64,48,0,48,0,48,0,63,128,49,0,48, + 0,48,0,48,0,48,0,48,0,252,0,11,14,28,13,1, + 0,15,128,16,192,32,0,96,0,192,0,192,0,192,0,195, + 224,192,192,192,192,96,192,96,192,48,192,31,0,15,14,28, + 15,0,0,252,126,48,24,48,24,48,24,48,24,48,24,63, + 248,48,24,48,24,48,24,48,24,48,24,48,24,252,126,6, + 14,14,7,0,0,252,48,48,48,48,48,48,48,48,48,48, + 48,48,252,9,18,36,7,254,252,31,128,6,0,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,4,0,72,0,240,0,13,14,28, + 13,0,0,252,240,48,64,48,128,49,0,50,0,54,0,60, + 0,54,0,54,0,51,0,49,128,48,192,48,96,252,56,11, + 14,28,11,0,0,252,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,32,48,64,255, + 192,17,14,42,19,1,0,240,7,0,112,14,0,112,14,0, + 120,30,0,104,22,0,108,22,0,108,38,0,102,38,0,102, + 102,0,99,70,0,99,198,0,97,134,0,97,134,0,241,15, + 128,15,14,28,15,0,0,240,126,48,24,56,24,60,24,52, + 24,50,24,51,24,49,152,48,152,48,216,48,120,48,56,48, + 56,252,24,12,14,28,14,1,0,15,128,48,192,32,96,96, + 96,192,48,192,48,192,48,192,48,192,48,192,48,96,96,96, + 64,48,128,31,0,11,14,28,12,0,0,127,128,176,192,48, + 96,48,96,48,96,48,96,48,192,63,0,48,0,48,0,48, + 0,48,0,48,0,252,0,14,17,34,14,1,253,15,128,48, + 192,32,96,96,96,192,48,192,48,192,48,192,48,192,48,192, + 48,96,96,96,96,48,192,31,0,1,128,0,196,0,56,13, + 14,28,13,0,0,127,0,177,128,48,192,48,192,48,192,48, + 128,49,0,62,0,51,0,49,0,49,128,48,192,48,192,252, + 120,9,14,28,11,1,0,62,0,99,0,192,0,192,0,224, + 0,120,0,62,0,15,0,3,128,1,128,129,128,129,0,195, + 0,124,0,12,14,28,13,0,0,255,240,134,16,134,16,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,31,128,15,14,28,15,0,0,252,126,48,24,48, + 24,48,24,48,24,48,24,48,24,48,24,48,24,48,24,48, + 24,24,48,28,96,7,192,14,14,28,15,0,0,248,60,48, + 24,48,16,24,16,24,48,24,32,12,96,12,64,4,64,6, + 192,6,128,3,128,3,128,1,0,19,14,42,20,0,0,248, + 67,224,48,96,128,48,96,128,48,224,128,16,177,128,16,177, + 0,25,145,0,25,25,0,25,25,0,11,11,0,14,14,0, + 14,14,0,14,6,0,4,6,0,14,14,28,14,0,0,252, + 248,48,48,24,96,28,192,12,128,7,128,3,0,3,128,5, + 128,12,192,24,96,16,112,48,48,248,124,14,14,28,14,0, + 0,224,124,48,48,24,32,24,96,12,64,6,192,7,128,3, + 0,3,0,3,0,3,0,3,0,3,0,15,192,10,14,28, + 12,1,0,127,192,65,128,129,128,3,0,6,0,6,0,12, + 0,28,0,24,0,48,0,48,0,96,64,192,64,255,192,5, + 22,22,7,1,252,248,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,248,9,22,44,11,1, + 252,128,0,192,0,192,0,64,0,96,0,32,0,48,0,48, + 0,16,0,24,0,24,0,8,0,12,0,4,0,4,0,6, + 0,2,0,3,0,3,0,1,0,1,128,0,128,5,22,22, + 8,1,252,248,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,248,9,11,22,11,1,6,8, + 0,12,0,28,0,22,0,54,0,34,0,35,0,99,0,65, + 128,65,128,129,128,9,1,2,11,1,253,255,128,5,5,5, + 7,0,12,224,96,48,16,8,10,10,20,11,1,0,30,0, + 99,0,195,0,3,0,31,0,99,0,195,0,195,0,199,0, + 123,192,10,17,34,12,1,0,96,0,224,0,96,0,96,0, + 96,0,96,0,96,0,103,0,121,128,113,192,96,192,96,192, + 96,192,96,192,96,128,113,0,30,0,9,10,20,10,1,0, + 15,0,49,128,96,0,192,0,192,0,192,0,192,0,96,0, + 113,128,30,0,11,17,34,12,1,0,1,128,7,128,1,128, + 1,128,1,128,1,128,1,128,31,128,35,128,65,128,193,128, + 193,128,193,128,193,128,225,128,103,160,57,192,9,10,20,11, + 1,0,30,0,33,0,65,128,255,128,192,0,192,0,192,0, + 224,0,113,128,62,0,9,17,34,7,0,0,7,128,9,0, + 16,0,48,0,48,0,48,0,48,0,126,0,176,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,252,0,12,15, + 30,12,0,251,31,48,49,192,96,192,96,192,96,192,49,128, + 31,0,24,0,56,0,31,192,96,112,192,48,192,48,96,96, + 63,128,13,17,34,13,0,0,48,0,240,0,48,0,48,0, + 48,0,48,0,48,0,51,192,52,96,56,96,48,96,48,96, + 48,96,48,96,48,96,48,96,253,248,6,15,15,6,0,0, + 48,48,48,0,0,48,240,48,48,48,48,48,48,48,252,7, + 20,20,6,253,251,6,6,6,0,0,6,30,6,6,6,6, + 6,6,6,6,6,6,4,8,240,12,17,34,12,0,0,48, + 0,240,0,48,0,48,0,48,0,48,0,48,0,49,224,49, + 128,51,0,52,0,60,0,54,0,51,0,49,128,48,192,248, + 240,6,17,17,6,0,0,48,240,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,252,20,10,30,20,0,0,113,199, + 128,182,104,192,56,112,192,48,96,192,48,96,192,48,96,192, + 48,96,192,48,96,192,48,96,192,253,251,240,13,10,20,13, + 0,0,113,192,182,96,56,96,48,96,48,96,48,96,48,96, + 48,96,48,96,253,248,10,10,20,12,1,0,30,0,35,128, + 65,128,192,192,192,192,192,192,192,192,224,128,113,0,30,0, + 11,15,30,12,0,251,115,128,188,192,56,224,48,96,48,96, + 48,96,48,96,48,64,56,192,55,0,48,0,48,0,48,0, + 48,0,252,0,11,15,30,12,1,251,30,128,35,128,97,128, + 193,128,193,128,193,128,193,128,225,128,99,128,61,128,1,128, + 1,128,1,128,1,128,7,224,9,10,20,9,0,0,51,128, + 252,128,56,0,48,0,48,0,48,0,48,0,48,0,48,0, + 252,0,7,10,10,9,1,0,124,204,192,224,120,30,6,134, + 134,248,8,14,14,8,0,0,16,48,48,48,127,176,48,48, + 48,48,48,48,49,30,11,10,20,12,1,0,97,128,231,128, + 97,128,97,128,97,128,97,128,97,128,97,128,103,160,57,192, + 11,10,20,11,0,0,249,224,32,64,48,128,48,128,25,128, + 25,0,9,0,14,0,6,0,4,0,16,10,20,16,0,0, + 248,143,33,130,49,196,49,196,19,100,26,108,26,40,12,56, + 12,56,12,16,11,10,20,12,0,0,249,224,48,128,25,0, + 15,0,6,0,14,0,11,0,17,128,32,192,241,224,12,15, + 30,11,255,251,124,240,16,32,24,64,24,64,12,192,12,128, + 4,128,7,0,3,0,3,0,2,0,6,0,4,0,120,0, + 240,0,8,10,10,10,1,0,255,131,134,12,8,24,48,97, + 65,255,6,22,22,8,1,252,4,24,16,48,48,48,56,24, + 24,24,48,240,24,24,24,24,48,48,48,48,24,4,2,24, + 24,5,2,251,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,6,22,22,8, + 1,252,128,96,48,48,48,48,96,96,96,96,60,16,32,96, + 96,112,48,48,48,32,96,128,10,4,8,11,1,5,48,64, + 124,128,159,0,135,0,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,0,0,5,0,0,2,16,16, + 6,2,250,192,192,128,64,192,192,192,192,192,192,192,192,192, + 192,192,128,9,14,28,11,1,0,12,0,12,0,31,128,109, + 128,76,0,204,0,204,0,204,0,204,0,236,128,125,128,63, + 0,12,0,12,0,10,14,28,11,0,0,7,128,24,192,16, + 128,48,128,48,0,48,0,48,0,126,0,48,0,48,0,48, + 0,32,64,32,64,255,192,9,7,14,11,1,3,221,128,119, + 0,99,0,99,0,115,0,127,0,128,128,12,14,28,11,255, + 0,225,240,48,64,48,192,25,128,29,128,15,0,7,0,6, + 0,63,192,6,0,6,0,6,0,6,0,31,128,2,24,24, + 5,2,251,192,192,192,192,192,192,192,192,192,192,128,0,0, + 64,192,192,192,192,192,192,192,192,192,192,9,16,32,11,1, + 0,30,0,99,0,98,0,112,0,56,0,94,0,199,0,195, + 128,225,128,113,128,63,0,15,0,7,0,67,0,99,0,62, + 0,7,3,3,9,1,12,198,198,198,15,14,28,16,0,0, + 7,192,24,48,49,248,98,44,198,6,204,6,204,6,204,6, + 204,6,206,38,102,76,51,152,24,48,7,192,6,8,8,6, + 0,6,112,152,24,56,120,124,0,124,9,10,20,11,1,0, + 17,128,17,0,34,0,102,0,204,0,204,0,102,0,34,0, + 17,0,17,128,10,5,10,11,0,2,255,192,0,192,0,192, + 0,192,0,192,6,1,1,8,1,5,252,8,8,8,8,0, + 8,60,66,189,149,153,153,86,60,7,1,1,11,2,13,254, + 4,5,5,8,2,9,96,240,240,240,96,8,10,10,9,1, + 2,24,24,24,24,255,24,24,24,0,255,6,8,8,8,1, + 7,120,140,140,8,16,32,68,252,7,8,8,7,255,7,60, + 102,6,28,6,6,134,120,5,5,5,7,2,12,24,48,32, + 64,192,12,15,30,13,1,251,96,192,224,192,96,192,96,192, + 96,192,96,192,96,192,113,192,127,208,92,224,64,0,64,0, + 96,0,96,0,112,0,13,17,34,14,0,253,31,248,99,96, + 195,96,195,96,195,96,227,96,115,96,63,96,3,96,3,96, + 3,96,3,96,3,96,3,96,3,96,3,96,15,248,2,3, + 3,3,1,6,192,192,192,4,5,5,5,1,251,96,96,112, + 48,192,6,8,8,8,1,7,48,240,48,48,48,48,48,252, + 4,8,8,6,1,6,96,240,240,240,240,96,0,240,8,10, + 10,11,2,0,136,140,68,98,51,51,102,68,140,136,12,14, + 28,13,0,0,24,96,120,192,24,192,25,128,27,0,27,0, + 126,0,4,96,12,224,25,96,18,96,51,240,96,96,192,240, + 13,14,28,14,0,0,48,16,240,32,48,96,48,64,48,128, + 48,128,249,0,3,120,2,152,4,24,12,48,8,32,16,72, + 49,248,12,14,28,14,1,0,112,32,152,64,24,64,56,128, + 77,128,141,0,114,0,6,96,4,224,9,96,25,96,19,240, + 32,96,96,240,8,16,16,10,1,250,24,24,16,4,12,12, + 12,24,48,96,96,192,195,195,230,124,13,20,40,14,0,0, + 16,0,28,0,14,0,3,0,0,128,0,0,2,0,3,0, + 5,0,5,128,5,128,8,128,8,192,8,192,31,192,16,96, + 16,96,32,48,32,48,248,120,13,20,40,14,0,0,0,128, + 0,192,3,160,6,0,0,0,0,0,2,0,3,0,5,0, + 5,128,5,128,8,128,8,192,8,192,31,192,16,96,16,96, + 32,48,32,48,248,120,13,20,40,14,0,0,2,0,7,0, + 13,128,8,64,16,0,0,0,2,0,3,0,5,0,5,128, + 5,128,8,128,8,192,8,192,31,192,16,96,16,96,32,48, + 32,48,248,120,13,19,38,14,0,0,4,64,14,96,19,192, + 0,0,0,0,2,0,3,0,5,0,5,128,5,128,8,128, + 8,192,8,192,31,192,16,96,16,96,32,48,32,48,248,120, + 13,18,36,14,0,0,8,64,12,96,8,64,0,0,2,0, + 3,0,5,0,5,128,5,128,8,128,8,192,8,192,31,192, + 16,96,16,96,32,48,32,48,248,120,13,20,40,14,0,0, + 2,0,7,0,7,128,7,0,0,0,0,0,2,0,3,0, + 5,0,5,128,5,128,8,128,8,192,8,192,31,192,16,96, + 16,96,32,48,32,48,248,120,18,14,42,18,0,0,7,255, + 128,1,96,128,3,96,128,2,96,0,6,96,0,6,96,0, + 7,255,0,12,98,0,8,96,0,24,96,0,16,96,0,16, + 96,64,48,96,64,249,255,128,11,19,38,12,1,251,7,192, + 24,96,32,0,96,0,64,0,192,0,192,0,192,0,192,0, + 192,0,224,0,96,128,113,192,62,0,8,0,4,0,14,0, + 6,0,24,0,11,20,40,11,0,0,32,0,56,0,28,0, + 6,0,1,0,0,0,255,192,48,64,48,64,48,0,48,0, + 48,0,63,128,49,0,48,0,48,0,48,0,48,32,48,96, + 255,192,11,20,40,11,0,0,1,0,1,128,7,0,12,0, + 0,0,0,0,255,192,48,64,48,64,48,0,48,0,48,0, + 63,128,49,0,48,0,48,0,48,0,48,32,48,96,255,192, + 11,20,40,11,0,0,4,0,14,0,27,0,48,128,0,0, + 0,0,255,192,48,64,48,64,48,0,48,0,48,0,63,128, + 49,0,48,0,48,0,48,0,48,32,48,96,255,192,11,18, + 36,11,0,0,16,128,49,128,49,128,0,0,255,192,48,64, + 48,64,48,0,48,0,48,0,63,128,49,0,48,0,48,0, + 48,0,48,32,48,96,255,192,6,20,20,7,0,0,128,192, + 112,24,0,0,252,48,48,48,48,48,48,48,48,48,48,48, + 48,252,7,20,20,7,0,0,4,14,28,48,64,0,252,48, + 48,48,48,48,48,48,48,48,48,48,48,252,7,20,20,7, + 0,0,16,56,108,134,0,0,252,48,48,48,48,48,48,48, + 48,48,48,48,48,252,7,18,18,7,0,0,66,198,198,0, + 252,48,48,48,48,48,48,48,48,48,48,48,48,252,13,14, + 28,14,0,0,127,128,176,224,48,112,48,48,48,24,48,24, + 254,24,48,24,48,24,48,24,48,48,48,112,48,224,255,128, + 15,19,38,15,0,0,2,32,7,32,9,192,0,0,0,0, + 240,126,48,24,56,24,60,24,52,24,50,24,51,24,49,152, + 48,152,48,216,48,120,48,56,48,56,252,24,12,20,40,14, + 1,0,16,0,56,0,12,0,2,0,1,0,0,0,15,128, + 48,192,32,96,96,96,192,48,192,48,192,48,192,48,192,48, + 192,48,96,96,96,64,48,128,31,0,12,20,40,14,1,0, + 1,0,1,192,3,0,12,0,0,0,0,0,15,128,48,192, + 32,96,96,96,192,48,192,48,192,48,192,48,192,48,192,48, + 96,96,96,64,48,128,31,0,12,20,40,14,1,0,6,0, + 14,0,11,0,16,128,32,0,0,0,15,128,48,192,32,96, + 96,96,192,48,192,48,192,48,192,48,192,48,192,48,96,96, + 96,64,48,128,31,0,12,19,38,14,1,0,8,128,28,64, + 55,128,0,0,0,0,15,128,48,192,32,96,96,96,192,48, + 192,48,192,48,192,48,192,48,192,48,96,96,96,64,48,128, + 31,0,12,18,36,14,1,0,16,128,24,192,16,128,0,0, + 15,128,48,192,32,96,96,96,192,48,192,48,192,48,192,48, + 192,48,192,48,96,96,96,64,48,128,31,0,7,7,7,9, + 1,3,194,102,60,24,60,102,194,12,15,30,14,1,255,15, + 48,48,224,32,224,64,224,193,176,195,48,194,48,198,48,204, + 48,200,48,88,32,112,64,112,128,207,0,128,0,15,20,40, + 15,0,0,8,0,14,0,7,0,1,128,0,64,0,0,252, + 126,48,24,48,24,48,24,48,24,48,24,48,24,48,24,48, + 24,48,24,48,24,24,48,28,96,7,192,15,20,40,15,0, + 0,0,64,0,96,1,192,3,0,0,0,0,0,252,126,48, + 24,48,24,48,24,48,24,48,24,48,24,48,24,48,24,48, + 24,48,24,24,48,28,96,7,192,15,20,40,15,0,0,1, + 0,3,128,6,192,12,96,0,0,0,0,252,126,48,24,48, + 24,48,24,48,24,48,24,48,24,48,24,48,24,48,24,48, + 24,24,48,28,96,7,192,15,18,36,15,0,0,4,32,12, + 96,12,96,0,0,252,126,48,24,48,24,48,24,48,24,48, + 24,48,24,48,24,48,24,48,24,48,24,24,48,28,96,7, + 192,14,20,40,14,0,0,0,128,0,224,1,128,6,0,0, + 0,0,0,224,124,48,48,24,32,24,96,12,64,6,192,7, + 128,3,0,3,0,3,0,3,0,3,0,3,0,15,192,11, + 14,28,12,0,0,252,0,48,0,48,0,63,128,48,192,48, + 96,48,96,48,96,48,96,48,192,63,128,48,0,48,0,252, + 0,13,17,34,13,0,0,7,128,8,192,16,96,48,96,48, + 96,48,224,51,192,55,0,54,0,55,0,51,192,48,240,48, + 56,48,24,52,24,50,16,243,224,10,17,34,11,1,0,96, + 0,48,0,16,0,8,0,4,0,0,0,0,0,30,0,99, + 0,195,0,3,0,31,0,99,0,195,0,195,0,199,0,123, + 192,10,17,34,11,1,0,3,0,6,0,12,0,8,0,16, + 0,0,0,0,0,30,0,99,0,195,0,3,0,31,0,99, + 0,195,0,195,0,199,0,123,192,10,17,34,11,1,0,24, + 0,28,0,54,0,98,0,65,0,0,0,0,0,30,0,99, + 0,195,0,3,0,31,0,99,0,195,0,195,0,199,0,123, + 192,10,15,30,11,1,0,57,0,78,0,0,0,0,0,0, + 0,30,0,99,0,195,0,3,0,31,0,99,0,195,0,195, + 0,199,0,123,192,10,15,30,11,1,0,33,0,99,0,99, + 0,0,0,0,0,30,0,99,0,195,0,3,0,31,0,99, + 0,195,0,195,0,199,0,123,192,10,16,32,11,1,0,28, + 0,60,0,60,0,24,0,0,0,0,0,30,0,99,0,195, + 0,3,0,31,0,99,0,195,0,195,0,199,0,123,192,14, + 10,20,16,1,0,30,112,99,152,195,12,131,12,31,252,115, + 0,195,0,195,0,197,132,120,248,9,15,30,10,1,251,15, + 0,49,128,96,0,192,0,192,0,192,0,192,0,192,0,99, + 0,124,0,16,0,8,0,28,0,12,0,48,0,9,17,34, + 11,1,0,48,0,112,0,24,0,8,0,4,0,0,0,0, + 0,30,0,33,0,65,128,255,128,192,0,192,0,192,0,224, + 0,113,128,62,0,9,17,34,11,1,0,3,0,6,0,6, + 0,12,0,8,0,0,0,0,0,30,0,33,0,65,128,255, + 128,192,0,192,0,192,0,224,0,113,128,62,0,9,17,34, + 11,1,0,12,0,28,0,54,0,35,0,65,0,0,0,0, + 0,30,0,33,0,65,128,255,128,192,0,192,0,192,0,224, + 0,113,128,62,0,9,15,30,11,1,0,33,0,49,128,33, + 0,0,0,0,0,30,0,33,0,65,128,255,128,192,0,192, + 0,192,0,224,0,113,128,62,0,6,17,17,6,0,0,192, + 96,32,48,16,0,0,48,240,48,48,48,48,48,48,48,252, + 7,17,17,6,0,0,12,14,24,16,32,0,0,48,240,48, + 48,48,48,48,48,48,252,7,17,17,6,0,0,48,56,104, + 196,130,0,0,48,240,48,48,48,48,48,48,48,252,7,15, + 15,6,0,0,198,198,198,0,0,48,240,48,48,48,48,48, + 48,48,252,9,16,32,11,1,0,48,0,91,128,12,0,50, + 0,3,0,1,0,31,128,99,128,67,128,193,128,193,128,193, + 128,193,0,227,0,98,0,60,0,13,15,30,13,0,0,14, + 64,19,128,0,0,0,0,0,0,113,192,182,96,56,96,48, + 96,48,96,48,96,48,96,48,96,48,96,253,248,10,17,34, + 12,1,0,48,0,48,0,24,0,12,0,4,0,0,0,0, + 0,30,0,35,128,65,128,192,192,192,192,192,192,192,192,224, + 128,113,0,30,0,10,17,34,12,1,0,3,0,3,0,6, + 0,4,0,8,0,0,0,0,0,30,0,35,128,65,128,192, + 192,192,192,192,192,192,192,224,128,113,0,30,0,10,17,34, + 12,1,0,12,0,30,0,18,0,33,0,64,128,0,0,0, + 0,30,0,35,128,65,128,192,192,192,192,192,192,192,192,224, + 128,113,0,30,0,10,15,30,12,1,0,56,128,71,0,0, + 0,0,0,0,0,30,0,35,128,65,128,192,192,192,192,192, + 192,192,192,224,128,113,0,30,0,10,15,30,12,1,0,49, + 128,49,128,33,0,0,0,0,0,30,0,35,128,65,128,192, + 192,192,192,192,192,192,192,224,128,113,0,30,0,8,7,7, + 9,1,3,24,24,0,255,0,24,24,10,12,24,12,1,255, + 0,64,30,192,35,128,67,192,194,192,196,192,200,192,216,192, + 240,128,113,0,222,0,128,0,11,17,34,12,1,0,48,0, + 24,0,24,0,12,0,4,0,0,0,0,0,97,128,231,128, + 97,128,97,128,97,128,97,128,97,128,97,128,103,160,57,192, + 11,17,34,12,1,0,3,0,3,128,6,0,4,0,8,0, + 0,0,0,0,97,128,231,128,97,128,97,128,97,128,97,128, + 97,128,97,128,103,160,57,192,11,17,34,12,1,0,12,0, + 14,0,26,0,49,0,32,128,0,0,0,0,97,128,231,128, + 97,128,97,128,97,128,97,128,97,128,97,128,103,160,57,192, + 11,15,30,12,1,0,49,128,49,128,49,128,0,0,0,0, + 97,128,231,128,97,128,97,128,97,128,97,128,97,128,97,128, + 103,160,57,192,12,22,44,11,255,251,0,192,0,192,1,128, + 3,0,2,0,0,0,0,0,124,240,16,32,24,64,24,64, + 12,192,12,128,4,128,7,0,3,0,3,0,2,0,6,0, + 4,0,120,0,240,0,11,22,44,12,0,251,48,0,240,0, + 48,0,48,0,48,0,48,0,48,0,51,128,60,192,56,224, + 48,96,48,96,48,96,48,96,48,64,56,128,55,0,48,0, + 48,0,48,0,48,0,252,0,12,20,40,11,255,251,12,96, + 12,96,8,64,0,0,0,0,124,240,16,32,24,64,24,64, + 12,192,12,128,4,128,7,0,3,0,3,0,2,0,6,0, + 4,0,120,0,240,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--23-230-72-72-P-110-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 14 + Calculated Max Values w=10 h=22 x= 2 y= 8 dx=12 dy= 0 ascent=18 len=44 + Font Bounding box w=35 h=33 x=-12 y=-8 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent= 0 + X Font ascent =14 descent= 0 + Max Font ascent =18 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr14n[445] U8G_SECTION(".progmem.u8g_font_gdr14n") = { + 0,35,33,244,248,14,0,0,0,0,42,57,0,18,252,14, + 0,9,10,20,10,1,8,24,0,24,0,137,0,235,128,60, + 0,60,0,235,0,137,0,24,0,24,0,8,8,8,9,1, + 2,24,24,24,255,24,24,24,24,4,6,6,5,0,253,112, + 240,48,48,32,64,6,1,1,8,1,5,252,2,3,3,5, + 2,0,192,192,192,9,22,44,11,1,252,0,128,1,128,1, + 0,3,0,3,0,2,0,6,0,6,0,12,0,12,0,8, + 0,24,0,24,0,16,0,48,0,48,0,96,0,96,0,64, + 0,192,0,192,0,128,0,9,14,28,11,1,0,28,0,39, + 0,99,0,67,128,193,128,193,128,193,128,193,128,193,128,193, + 128,193,0,97,0,98,0,28,0,8,14,14,11,2,0,24, + 120,152,24,24,24,24,24,24,24,24,24,24,255,8,14,14, + 11,1,0,60,103,195,131,3,6,6,12,24,24,48,97,193, + 255,9,14,28,12,1,0,30,0,103,0,195,0,3,0,2, + 0,4,0,30,0,3,0,1,128,1,128,1,128,1,128,195, + 0,60,0,10,14,28,11,0,0,3,0,7,0,7,0,11, + 0,27,0,19,0,35,0,99,0,67,0,255,192,3,0,3, + 0,3,0,15,192,9,14,28,11,0,0,0,128,63,0,32, + 0,32,0,96,0,126,0,67,0,1,128,1,128,1,128,1, + 128,1,0,195,0,60,0,9,14,28,11,1,0,3,0,12, + 0,48,0,32,0,96,0,222,0,227,0,193,128,193,128,193, + 128,193,128,97,0,99,0,30,0,9,13,26,11,1,0,127, + 128,129,0,129,0,3,0,2,0,6,0,4,0,12,0,8, + 0,24,0,24,0,48,0,32,0,9,14,28,11,1,0,62, + 0,71,0,195,0,195,0,195,0,118,0,30,0,39,0,99, + 128,193,128,193,128,193,128,99,0,60,0,9,14,28,11,1, + 0,30,0,99,0,67,0,193,128,193,128,193,128,193,128,99, + 128,61,128,1,0,3,0,6,0,8,0,112,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--23-230-72-72-P-110-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=24 x= 2 y=12 dx=20 dy= 0 ascent=19 len=57 + Font Bounding box w=35 h=33 x=-12 y=-8 + Calculated Min Values x=-3 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =19 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr14r[2791] U8G_SECTION(".progmem.u8g_font_gdr14r") = { + 0,35,33,244,248,14,3,95,7,136,32,127,251,19,251,18, + 251,0,0,0,5,0,0,2,17,17,6,2,0,64,192,192, + 192,192,192,192,192,192,192,192,192,128,0,192,192,192,6,8, + 8,10,2,9,204,204,204,204,204,204,204,140,10,13,26,11, + 1,1,12,128,9,128,9,0,9,0,127,192,19,0,18,0, + 50,0,255,128,36,0,100,0,68,0,76,0,9,18,36,11, + 1,254,12,0,12,0,63,128,109,128,205,0,204,0,236,0, + 124,0,63,0,15,0,13,128,13,128,141,128,205,128,239,0, + 126,0,12,0,12,0,14,14,28,16,1,0,56,24,72,48, + 204,96,204,64,204,192,205,128,75,0,114,56,6,76,12,204, + 8,204,16,204,48,200,96,112,14,16,32,16,1,0,15,0, + 25,128,49,128,49,128,49,0,51,0,60,0,60,252,124,112, + 102,48,199,48,195,176,193,224,192,224,96,176,63,28,2,8, + 8,6,2,9,192,192,192,192,192,192,192,128,6,22,22,7, + 1,252,12,24,16,32,96,96,64,192,192,192,192,192,192,192, + 192,64,96,96,32,48,24,12,6,22,22,7,0,252,192,96, + 48,16,24,24,8,12,12,12,12,12,12,12,12,8,24,24, + 16,32,96,192,9,10,20,10,1,8,24,0,24,0,137,0, + 235,128,60,0,60,0,235,0,137,0,24,0,24,0,8,8, + 8,9,1,2,24,24,24,255,24,24,24,24,4,6,6,5, + 0,253,112,240,48,48,32,64,6,1,1,8,1,5,252,2, + 3,3,5,2,0,192,192,192,9,22,44,11,1,252,0,128, + 1,128,1,0,3,0,3,0,2,0,6,0,6,0,12,0, + 12,0,8,0,24,0,24,0,16,0,48,0,48,0,96,0, + 96,0,64,0,192,0,192,0,128,0,9,14,28,11,1,0, + 28,0,39,0,99,0,67,128,193,128,193,128,193,128,193,128, + 193,128,193,128,193,0,97,0,98,0,28,0,8,14,14,11, + 2,0,24,120,152,24,24,24,24,24,24,24,24,24,24,255, + 8,14,14,11,1,0,60,103,195,131,3,6,6,12,24,24, + 48,97,193,255,9,14,28,12,1,0,30,0,103,0,195,0, + 3,0,2,0,4,0,30,0,3,0,1,128,1,128,1,128, + 1,128,195,0,60,0,10,14,28,11,0,0,3,0,7,0, + 7,0,11,0,27,0,19,0,35,0,99,0,67,0,255,192, + 3,0,3,0,3,0,15,192,9,14,28,11,0,0,0,128, + 63,0,32,0,32,0,96,0,126,0,67,0,1,128,1,128, + 1,128,1,128,1,0,195,0,60,0,9,14,28,11,1,0, + 3,0,12,0,48,0,32,0,96,0,222,0,227,0,193,128, + 193,128,193,128,193,128,97,0,99,0,30,0,9,13,26,11, + 1,0,127,128,129,0,129,0,3,0,2,0,6,0,4,0, + 12,0,8,0,24,0,24,0,48,0,32,0,9,14,28,11, + 1,0,62,0,71,0,195,0,195,0,195,0,118,0,30,0, + 39,0,99,128,193,128,193,128,193,128,99,0,60,0,9,14, + 28,11,1,0,30,0,99,0,67,0,193,128,193,128,193,128, + 193,128,99,128,61,128,1,0,3,0,6,0,8,0,112,0, + 2,11,11,5,2,0,192,192,192,0,0,0,0,0,192,192, + 192,4,14,14,5,0,253,48,48,48,0,0,0,0,0,112, + 240,48,48,32,64,8,7,7,10,1,3,1,15,120,192,112, + 30,3,8,4,4,10,1,4,255,0,0,255,8,7,7,10, + 1,3,192,120,15,3,30,240,128,8,17,17,10,1,0,62, + 103,195,195,3,3,6,12,12,24,24,24,16,0,24,24,24, + 17,19,57,19,1,252,1,240,0,6,28,0,24,6,0,48, + 3,0,32,3,0,97,211,128,66,49,128,196,49,128,204,49, + 128,204,49,128,204,49,128,204,49,0,236,51,0,102,114,0, + 99,156,0,48,0,0,56,2,0,14,15,0,3,240,0,13, + 14,28,14,0,0,2,0,3,0,5,0,5,128,5,128,8, + 128,8,192,8,192,31,192,16,96,16,96,32,48,32,48,248, + 120,11,14,28,12,0,0,127,0,177,192,48,192,48,192,48, + 192,49,128,63,128,49,192,48,224,48,96,48,96,48,96,48, + 192,255,128,11,14,28,12,1,0,7,192,24,96,32,0,96, + 0,64,0,192,0,192,0,192,0,192,0,192,0,96,0,96, + 32,56,64,15,128,13,14,28,14,0,0,127,128,176,224,48, + 112,48,48,48,24,48,24,48,24,48,24,48,24,48,24,48, + 48,48,112,48,224,255,128,11,14,28,11,0,0,255,192,48, + 64,48,64,48,0,48,0,48,0,63,128,49,0,48,0,48, + 0,48,0,48,32,48,96,255,192,10,14,28,11,0,0,255, + 192,48,64,48,64,48,0,48,0,48,0,63,128,49,0,48, + 0,48,0,48,0,48,0,48,0,252,0,11,14,28,13,1, + 0,15,128,16,192,32,0,96,0,192,0,192,0,192,0,195, + 224,192,192,192,192,96,192,96,192,48,192,31,0,15,14,28, + 15,0,0,252,126,48,24,48,24,48,24,48,24,48,24,63, + 248,48,24,48,24,48,24,48,24,48,24,48,24,252,126,6, + 14,14,7,0,0,252,48,48,48,48,48,48,48,48,48,48, + 48,48,252,9,18,36,7,254,252,31,128,6,0,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,4,0,72,0,240,0,13,14,28, + 13,0,0,252,240,48,64,48,128,49,0,50,0,54,0,60, + 0,54,0,54,0,51,0,49,128,48,192,48,96,252,56,11, + 14,28,11,0,0,252,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,32,48,64,255, + 192,17,14,42,19,1,0,240,7,0,112,14,0,112,14,0, + 120,30,0,104,22,0,108,22,0,108,38,0,102,38,0,102, + 102,0,99,70,0,99,198,0,97,134,0,97,134,0,241,15, + 128,15,14,28,15,0,0,240,126,48,24,56,24,60,24,52, + 24,50,24,51,24,49,152,48,152,48,216,48,120,48,56,48, + 56,252,24,12,14,28,14,1,0,15,128,48,192,32,96,96, + 96,192,48,192,48,192,48,192,48,192,48,192,48,96,96,96, + 64,48,128,31,0,11,14,28,12,0,0,127,128,176,192,48, + 96,48,96,48,96,48,96,48,192,63,0,48,0,48,0,48, + 0,48,0,48,0,252,0,14,17,34,14,1,253,15,128,48, + 192,32,96,96,96,192,48,192,48,192,48,192,48,192,48,192, + 48,96,96,96,96,48,192,31,0,1,128,0,196,0,56,13, + 14,28,13,0,0,127,0,177,128,48,192,48,192,48,192,48, + 128,49,0,62,0,51,0,49,0,49,128,48,192,48,192,252, + 120,9,14,28,11,1,0,62,0,99,0,192,0,192,0,224, + 0,120,0,62,0,15,0,3,128,1,128,129,128,129,0,195, + 0,124,0,12,14,28,13,0,0,255,240,134,16,134,16,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,31,128,15,14,28,15,0,0,252,126,48,24,48, + 24,48,24,48,24,48,24,48,24,48,24,48,24,48,24,48, + 24,24,48,28,96,7,192,14,14,28,15,0,0,248,60,48, + 24,48,16,24,16,24,48,24,32,12,96,12,64,4,64,6, + 192,6,128,3,128,3,128,1,0,19,14,42,20,0,0,248, + 67,224,48,96,128,48,96,128,48,224,128,16,177,128,16,177, + 0,25,145,0,25,25,0,25,25,0,11,11,0,14,14,0, + 14,14,0,14,6,0,4,6,0,14,14,28,14,0,0,252, + 248,48,48,24,96,28,192,12,128,7,128,3,0,3,128,5, + 128,12,192,24,96,16,112,48,48,248,124,14,14,28,14,0, + 0,224,124,48,48,24,32,24,96,12,64,6,192,7,128,3, + 0,3,0,3,0,3,0,3,0,3,0,15,192,10,14,28, + 12,1,0,127,192,65,128,129,128,3,0,6,0,6,0,12, + 0,28,0,24,0,48,0,48,0,96,64,192,64,255,192,5, + 22,22,7,1,252,248,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,248,9,22,44,11,1, + 252,128,0,192,0,192,0,64,0,96,0,32,0,48,0,48, + 0,16,0,24,0,24,0,8,0,12,0,4,0,4,0,6, + 0,2,0,3,0,3,0,1,0,1,128,0,128,5,22,22, + 8,1,252,248,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,248,9,11,22,11,1,6,8, + 0,12,0,28,0,22,0,54,0,34,0,35,0,99,0,65, + 128,65,128,129,128,9,1,2,11,1,253,255,128,5,5,5, + 7,0,12,224,96,48,16,8,10,10,20,11,1,0,30,0, + 99,0,195,0,3,0,31,0,99,0,195,0,195,0,199,0, + 123,192,10,17,34,12,1,0,96,0,224,0,96,0,96,0, + 96,0,96,0,96,0,103,0,121,128,113,192,96,192,96,192, + 96,192,96,192,96,128,113,0,30,0,9,10,20,10,1,0, + 15,0,49,128,96,0,192,0,192,0,192,0,192,0,96,0, + 113,128,30,0,11,17,34,12,1,0,1,128,7,128,1,128, + 1,128,1,128,1,128,1,128,31,128,35,128,65,128,193,128, + 193,128,193,128,193,128,225,128,103,160,57,192,9,10,20,11, + 1,0,30,0,33,0,65,128,255,128,192,0,192,0,192,0, + 224,0,113,128,62,0,9,17,34,7,0,0,7,128,9,0, + 16,0,48,0,48,0,48,0,48,0,126,0,176,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,252,0,12,15, + 30,12,0,251,31,48,49,192,96,192,96,192,96,192,49,128, + 31,0,24,0,56,0,31,192,96,112,192,48,192,48,96,96, + 63,128,13,17,34,13,0,0,48,0,240,0,48,0,48,0, + 48,0,48,0,48,0,51,192,52,96,56,96,48,96,48,96, + 48,96,48,96,48,96,48,96,253,248,6,15,15,6,0,0, + 48,48,48,0,0,48,240,48,48,48,48,48,48,48,252,7, + 20,20,6,253,251,6,6,6,0,0,6,30,6,6,6,6, + 6,6,6,6,6,6,4,8,240,12,17,34,12,0,0,48, + 0,240,0,48,0,48,0,48,0,48,0,48,0,49,224,49, + 128,51,0,52,0,60,0,54,0,51,0,49,128,48,192,248, + 240,6,17,17,6,0,0,48,240,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,252,20,10,30,20,0,0,113,199, + 128,182,104,192,56,112,192,48,96,192,48,96,192,48,96,192, + 48,96,192,48,96,192,48,96,192,253,251,240,13,10,20,13, + 0,0,113,192,182,96,56,96,48,96,48,96,48,96,48,96, + 48,96,48,96,253,248,10,10,20,12,1,0,30,0,35,128, + 65,128,192,192,192,192,192,192,192,192,224,128,113,0,30,0, + 11,15,30,12,0,251,115,128,188,192,56,224,48,96,48,96, + 48,96,48,96,48,64,56,192,55,0,48,0,48,0,48,0, + 48,0,252,0,11,15,30,12,1,251,30,128,35,128,97,128, + 193,128,193,128,193,128,193,128,225,128,99,128,61,128,1,128, + 1,128,1,128,1,128,7,224,9,10,20,9,0,0,51,128, + 252,128,56,0,48,0,48,0,48,0,48,0,48,0,48,0, + 252,0,7,10,10,9,1,0,124,204,192,224,120,30,6,134, + 134,248,8,14,14,8,0,0,16,48,48,48,127,176,48,48, + 48,48,48,48,49,30,11,10,20,12,1,0,97,128,231,128, + 97,128,97,128,97,128,97,128,97,128,97,128,103,160,57,192, + 11,10,20,11,0,0,249,224,32,64,48,128,48,128,25,128, + 25,0,9,0,14,0,6,0,4,0,16,10,20,16,0,0, + 248,143,33,130,49,196,49,196,19,100,26,108,26,40,12,56, + 12,56,12,16,11,10,20,12,0,0,249,224,48,128,25,0, + 15,0,6,0,14,0,11,0,17,128,32,192,241,224,12,15, + 30,11,255,251,124,240,16,32,24,64,24,64,12,192,12,128, + 4,128,7,0,3,0,3,0,2,0,6,0,4,0,120,0, + 240,0,8,10,10,10,1,0,255,131,134,12,8,24,48,97, + 65,255,6,22,22,8,1,252,4,24,16,48,48,48,56,24, + 24,24,48,240,24,24,24,24,48,48,48,48,24,4,2,24, + 24,5,2,251,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,6,22,22,8, + 1,252,128,96,48,48,48,48,96,96,96,96,60,16,32,96, + 96,112,48,48,48,32,96,128,10,4,8,11,1,5,48,64, + 124,128,159,0,135,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--27-270-72-72-P-125-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 17, '1' Height: 16 + Calculated Max Values w=22 h=27 x= 3 y=16 dx=23 dy= 0 ascent=23 len=66 + Font Bounding box w=40 h=38 x=-14 y=-9 + Calculated Min Values x=-3 y=-7 dx= 0 dy= 0 + Pure Font ascent =17 descent=-6 + X Font ascent =21 descent=-6 + Max Font ascent =23 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr17[7056] U8G_SECTION(".progmem.u8g_font_gdr17") = { + 0,40,38,242,247,17,4,64,9,46,32,255,250,23,249,21, + 250,0,0,0,6,0,0,3,21,21,7,2,255,96,224,224, + 224,224,96,96,96,96,96,64,64,64,64,64,0,0,96,224, + 224,192,7,9,9,11,2,11,102,230,230,198,198,70,70,70, + 70,12,15,30,13,1,2,6,96,6,96,4,64,4,64,12, + 192,63,240,8,128,25,128,17,0,255,224,51,0,34,0,34, + 0,102,0,68,0,11,20,40,12,0,254,6,0,6,0,15, + 128,55,224,102,64,102,0,102,0,118,0,62,0,31,128,7, + 192,6,224,6,96,134,96,198,96,230,192,127,192,31,0,6, + 0,6,0,17,16,48,19,1,0,56,6,0,108,12,0,198, + 24,0,198,24,0,198,48,0,198,96,0,198,192,0,108,192, + 0,57,158,0,3,51,0,6,97,128,6,97,128,12,97,128, + 24,97,128,48,51,0,32,30,0,17,19,57,18,1,0,3, + 192,0,12,224,0,8,96,0,24,96,0,24,96,0,24,192, + 0,29,192,0,31,128,0,14,0,0,62,63,128,119,29,0, + 103,12,0,195,140,0,193,204,0,193,232,0,192,248,0,96, + 120,0,112,222,0,31,7,128,3,9,9,7,2,11,96,224, + 224,192,192,64,64,64,64,6,25,25,9,2,252,4,8,24, + 48,32,96,96,96,192,192,192,192,192,192,192,192,192,224,96, + 96,96,48,24,8,4,6,25,25,9,1,252,128,64,96,48, + 24,24,24,24,12,12,12,12,12,12,12,12,12,24,24,24, + 48,48,96,64,128,10,12,24,12,1,9,12,0,12,0,140, + 0,204,192,119,128,30,0,30,0,119,128,204,192,12,128,12, + 0,12,0,10,9,18,11,1,3,12,0,12,0,12,0,12, + 0,255,192,12,0,12,0,12,0,12,0,4,7,7,6,1, + 252,112,240,48,48,32,96,64,7,1,1,9,1,6,254,3, + 4,4,6,2,255,96,224,224,192,11,25,50,13,1,252,0, + 96,0,96,0,192,0,192,1,128,1,128,1,128,3,0,3, + 0,6,0,6,0,6,0,12,0,12,0,12,0,24,0,24, + 0,48,0,48,0,48,0,96,0,96,0,224,0,192,0,192, + 0,11,16,32,13,1,0,15,0,49,128,96,192,64,192,64, + 224,192,96,192,96,192,96,192,96,192,96,192,96,192,64,96, + 64,96,192,49,128,30,0,9,16,32,13,2,0,12,0,60, + 0,252,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,255,128,10,16,32, + 13,1,0,15,0,49,128,96,192,96,192,0,192,0,192,1, + 128,1,128,3,0,6,0,12,0,28,0,24,0,48,64,96, + 64,255,192,10,16,32,13,1,0,30,0,99,0,97,128,193, + 128,1,128,3,0,6,0,31,0,3,128,1,192,0,192,0, + 192,0,192,1,128,193,128,62,0,11,16,32,13,1,0,1, + 128,3,128,7,128,5,128,13,128,25,128,17,128,49,128,97, + 128,65,128,255,224,1,128,1,128,1,128,1,128,15,224,10, + 16,32,13,1,0,63,192,32,0,32,0,32,0,96,0,96, + 0,127,0,67,128,1,192,0,192,0,192,0,192,0,192,1, + 128,193,128,62,0,11,16,32,13,1,0,3,128,14,0,24, + 0,48,0,96,0,96,0,207,0,241,192,192,224,192,96,192, + 96,192,96,96,96,96,64,48,128,31,0,11,16,32,13,1, + 0,127,224,64,192,128,192,0,128,1,128,1,128,3,0,3, + 0,6,0,6,0,4,0,12,0,12,0,24,0,24,0,48, + 0,11,16,32,13,1,0,31,0,113,128,224,192,224,192,224, + 192,241,128,63,0,15,128,51,192,96,224,192,96,192,96,192, + 96,192,64,96,128,31,0,11,17,34,13,1,255,31,0,49, + 128,96,192,192,192,192,96,192,96,192,96,224,96,113,224,30, + 96,0,224,0,192,0,192,1,128,3,0,14,0,48,0,3, + 14,14,6,2,255,64,224,224,224,0,0,0,0,0,0,96, + 224,224,192,4,17,17,6,1,252,32,112,112,112,0,0,0, + 0,0,0,112,240,48,48,32,96,64,10,9,18,12,1,3, + 0,192,3,192,31,0,120,0,224,0,248,0,30,0,7,192, + 0,192,10,5,10,12,1,5,255,192,0,0,0,0,0,0, + 255,192,10,9,18,12,1,3,192,0,248,0,30,0,7,192, + 1,192,7,128,60,0,240,0,128,0,10,20,40,12,1,255, + 31,0,97,128,192,192,192,192,192,192,0,192,1,128,1,128, + 3,0,6,0,6,0,12,0,12,0,12,0,8,0,0,0, + 12,0,28,0,28,0,24,0,20,22,66,22,1,251,0,252, + 0,3,7,0,12,1,192,24,0,192,48,0,96,32,244,96, + 97,28,112,67,12,48,194,12,48,198,12,48,198,12,48,198, + 12,48,198,12,32,198,12,96,227,12,64,99,60,128,97,199, + 0,48,0,0,56,0,0,28,0,64,7,3,128,1,252,0, + 16,17,34,16,0,0,0,128,1,128,3,128,3,192,2,192, + 6,192,6,96,4,96,12,112,12,48,15,240,24,24,24,24, + 16,24,48,12,48,12,248,63,12,17,34,14,1,0,127,128, + 176,192,48,96,48,96,48,96,48,64,49,128,63,192,48,224, + 48,96,48,48,48,48,48,48,48,48,48,96,48,224,255,128, + 12,17,34,14,1,0,7,224,24,112,48,0,32,0,96,0, + 64,0,192,0,192,0,192,0,192,0,192,0,192,0,96,0, + 96,0,48,16,24,32,15,192,14,17,34,16,1,0,127,128, + 176,224,48,48,48,24,48,24,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,48,24,48,24,48,48,48,96,255,128, + 12,17,34,13,1,0,255,224,48,32,48,32,48,0,48,0, + 48,0,48,0,63,192,48,128,48,0,48,0,48,0,48,0, + 48,0,48,16,48,48,255,224,11,17,34,13,1,0,255,224, + 48,32,48,32,48,0,48,0,48,0,48,0,63,128,49,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,252,0, + 14,17,34,16,1,0,3,240,12,56,16,0,32,0,96,0, + 64,0,192,0,192,0,192,0,192,252,192,24,192,24,96,24, + 96,24,48,24,24,24,7,224,16,17,34,18,1,0,252,63, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,63,252, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,252,63, + 6,17,17,8,1,0,252,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,252,10,22,44,8,253,251,31,192,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,2,0,6,0,68,0,248,0,15,17,34,16,1,0,252, + 252,48,48,48,96,48,192,49,128,51,0,54,0,52,0,62, + 0,54,0,51,0,49,128,49,192,48,224,48,112,48,56,252, + 30,12,17,34,13,1,0,252,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,16,48,48,255,224,20,17,51,22,1,0,240, + 1,224,56,1,192,56,3,192,44,2,192,44,6,192,44,6, + 192,38,4,192,38,12,192,35,8,192,35,24,192,35,152,192, + 33,144,192,33,176,192,32,224,192,32,224,192,32,64,192,248, + 67,240,16,17,34,18,1,0,240,63,48,12,56,12,60,12, + 52,12,54,12,51,12,51,12,49,140,48,204,48,204,48,108, + 48,60,48,60,48,28,48,28,252,12,14,17,34,16,1,0, + 7,192,24,96,48,48,96,24,96,24,64,12,192,12,192,12, + 192,12,192,12,192,12,192,8,96,24,96,16,48,48,24,96, + 15,128,12,17,34,14,1,0,127,128,176,224,48,96,48,48, + 48,48,48,48,48,48,48,96,48,192,63,128,48,0,48,0, + 48,0,48,0,48,0,48,0,252,0,16,21,42,16,1,252, + 7,192,24,96,48,48,96,24,96,24,64,12,192,12,192,12, + 192,12,192,12,192,12,192,12,96,24,96,24,48,48,24,96, + 15,192,0,192,0,96,0,49,0,14,14,17,34,15,1,0, + 127,0,177,192,48,96,48,96,48,96,48,96,48,192,49,192, + 63,0,51,0,49,128,49,128,48,192,48,224,48,96,48,112, + 252,60,10,17,34,13,2,0,31,0,99,128,193,0,192,0, + 224,0,240,0,124,0,126,0,31,128,7,128,1,192,0,192, + 0,192,128,192,128,128,193,0,126,0,14,17,34,15,0,0, + 255,252,131,4,131,4,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 15,192,16,17,34,18,1,0,252,63,48,12,48,12,48,12, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,48,12, + 48,12,48,24,24,24,12,48,7,224,17,17,51,18,0,0, + 252,15,128,48,6,0,24,6,0,24,4,0,24,12,0,12, + 12,0,12,8,0,14,24,0,6,24,0,6,16,0,3,48, + 0,3,32,0,3,96,0,1,224,0,1,192,0,1,192,0, + 0,128,0,22,17,51,23,0,0,252,16,124,48,16,16,48, + 56,16,24,56,48,24,56,48,24,108,48,24,108,32,24,76, + 32,12,198,96,12,198,96,12,134,96,13,131,64,7,131,64, + 7,3,192,7,1,192,7,1,192,6,1,128,16,17,34,17, + 0,0,124,63,56,28,24,24,12,48,14,48,7,96,3,192, + 3,192,1,192,3,192,3,224,6,112,12,48,12,24,24,28, + 56,14,252,63,15,17,34,16,0,0,240,62,56,12,24,24, + 28,24,14,48,6,32,7,96,3,192,3,192,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,7,224,12,17,34,14, + 1,0,127,240,64,96,64,224,128,192,1,192,3,128,3,0, + 7,0,6,0,14,0,28,0,24,0,56,0,48,16,112,16, + 224,48,255,240,6,25,25,8,2,252,252,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,252,11,25,50,13,1,252,128,0,192,0,64,0,96, + 0,96,0,48,0,48,0,48,0,24,0,24,0,8,0,12, + 0,12,0,6,0,6,0,2,0,3,0,3,0,1,128,1, + 128,1,128,0,192,0,192,0,64,0,96,6,25,25,9,1, + 252,252,12,12,12,12,12,12,12,12,12,12,12,12,12,12, + 12,12,12,12,12,12,12,12,12,252,11,13,26,13,1,7, + 6,0,14,0,14,0,15,0,27,0,19,0,17,128,49,128, + 33,192,96,192,96,192,64,96,192,64,11,1,2,13,1,253, + 255,224,6,6,6,9,0,14,96,224,48,24,8,4,11,12, + 24,12,1,0,31,0,97,128,225,128,1,128,1,128,31,128, + 121,128,225,128,193,128,193,128,199,128,121,224,13,20,40,14, + 0,0,48,0,240,0,48,0,48,0,48,0,48,0,48,0, + 48,0,49,224,54,112,56,48,48,56,48,24,48,24,48,24, + 48,24,48,16,48,48,56,96,15,128,10,12,24,12,1,0, + 15,192,48,192,96,128,64,0,192,0,192,0,192,0,192,0, + 192,0,96,64,48,192,31,0,13,20,40,14,1,0,0,96, + 1,224,0,96,0,96,0,96,0,96,0,96,0,96,15,224, + 48,224,96,96,64,96,192,96,192,96,192,96,192,96,192,96, + 96,224,49,120,30,96,10,12,24,12,1,0,15,0,49,128, + 96,192,64,192,255,192,192,0,192,0,192,0,224,0,96,64, + 48,128,31,0,10,20,40,8,1,0,3,192,12,128,24,0, + 16,0,48,0,48,0,48,0,48,0,255,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 254,0,13,18,36,13,0,250,15,24,48,240,32,96,96,96, + 96,96,96,96,56,192,31,0,24,0,56,0,63,128,31,240, + 48,120,192,24,192,24,192,16,112,96,31,128,14,20,40,15, + 1,0,48,0,240,0,48,0,48,0,48,0,48,0,48,0, + 48,0,49,224,50,48,52,48,56,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,252,252,6,18,18,7,1,0, + 48,112,48,0,0,0,48,240,48,48,48,48,48,48,48,48, + 48,252,8,24,24,7,253,250,3,7,3,0,0,0,3,15, + 3,3,3,3,3,3,3,3,3,3,3,3,2,2,4,248, + 13,20,40,14,1,0,48,0,240,0,48,0,48,0,48,0, + 48,0,48,0,48,0,49,240,48,192,49,128,51,0,52,0, + 60,0,54,0,51,0,49,128,48,192,48,224,248,120,6,20, + 20,7,1,0,48,240,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,252,20,12,36,21,1,0,113,195, + 128,182,108,192,56,112,192,56,112,192,48,96,192,48,96,192, + 48,96,192,48,96,192,48,96,192,48,96,192,48,96,192,253, + 251,240,14,12,24,15,1,0,113,224,178,48,52,48,56,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,252,252, + 12,12,24,14,1,0,15,128,48,192,96,96,64,112,192,48, + 192,48,192,48,192,48,224,32,96,96,48,192,31,0,12,18, + 36,14,1,250,113,192,182,224,56,96,48,48,48,48,48,48, + 48,48,48,48,48,32,48,96,56,64,55,128,48,0,48,0, + 48,0,48,0,48,0,252,0,13,18,36,14,1,250,15,32, + 48,224,96,96,64,96,192,96,192,96,192,96,192,96,192,96, + 96,224,49,96,30,96,0,96,0,96,0,96,0,96,0,96, + 1,248,10,12,24,11,1,0,51,192,244,128,56,128,56,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,252,0, + 8,12,12,10,1,0,62,70,194,224,240,124,30,7,131,131, + 198,124,9,17,34,9,0,0,16,0,48,0,48,0,48,0, + 48,0,255,128,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,49,0,30,128,14,12,24,14,0,0, + 48,48,240,240,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,112,56,188,31,48,13,12,24,13,0,0,248,120, + 48,48,48,32,24,96,24,64,28,64,12,192,12,128,7,128, + 7,0,7,0,2,0,19,12,36,19,0,0,248,99,224,48, + 96,128,48,96,128,48,241,128,24,177,128,25,177,0,25,153, + 0,13,27,0,15,26,0,14,14,0,6,14,0,4,4,0, + 13,12,24,14,0,0,252,248,56,96,24,64,12,128,7,128, + 7,0,7,128,13,128,8,192,16,96,48,112,248,248,14,18, + 36,13,255,250,124,60,24,24,24,16,12,48,12,32,14,32, + 6,96,6,64,3,192,3,128,3,128,1,128,1,0,3,0, + 2,0,6,0,124,0,240,0,10,12,24,12,1,0,127,192, + 65,128,131,128,3,0,6,0,12,0,28,0,24,0,48,0, + 112,64,96,64,255,192,6,25,25,9,2,252,4,8,24,48, + 48,48,48,24,24,24,24,48,224,56,24,24,24,24,48,48, + 48,48,16,24,4,2,27,27,6,2,251,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,6,25,25,9,1,252,128,96,32,48, + 48,48,48,96,96,96,96,48,28,48,96,96,96,96,48,48, + 48,48,96,64,128,12,4,8,13,1,6,56,48,126,32,143, + 192,131,128,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,0,0,0,6,0,0,3,19,19,7,2,249, + 96,224,224,192,64,64,64,64,64,96,96,96,96,224,224,224, + 224,224,192,11,17,34,13,1,255,6,0,6,0,7,128,31, + 224,38,64,102,0,198,0,198,0,198,0,198,0,198,0,230, + 32,118,64,63,128,15,0,6,0,6,0,11,16,32,13,1, + 0,7,192,24,224,16,64,48,64,48,0,48,0,48,0,48, + 0,255,0,48,0,48,0,48,0,48,32,32,32,96,96,255, + 224,9,8,16,13,2,4,128,128,93,0,119,0,99,0,99, + 0,119,0,93,0,128,128,14,16,32,13,255,0,240,124,48, + 48,24,96,28,96,12,192,14,192,7,128,3,128,3,0,63, + 240,3,0,3,0,3,0,3,0,3,0,15,192,2,27,27, + 6,2,251,192,192,192,192,192,192,192,192,192,192,192,192,128, + 0,0,192,192,192,192,192,192,192,192,192,192,192,192,10,19, + 38,13,1,0,31,0,35,128,97,0,96,0,112,0,60,0, + 127,0,199,128,195,192,193,192,224,192,120,192,63,128,15,0, + 3,128,65,128,65,128,97,0,62,0,9,3,6,11,1,15, + 193,128,193,128,193,128,17,17,51,19,1,0,3,224,0,12, + 24,0,48,6,0,48,246,0,99,27,0,102,1,0,204,1, + 128,204,1,128,204,1,128,204,1,128,204,1,128,70,19,0, + 103,19,0,49,230,0,48,6,0,12,24,0,3,224,0,7, + 8,8,7,0,8,56,76,140,60,108,108,126,126,10,12,24, + 13,1,0,8,64,24,192,16,128,49,128,99,0,230,0,231, + 0,99,0,49,128,16,128,8,192,8,64,11,6,12,13,1, + 2,255,224,0,96,0,96,0,96,0,96,0,96,7,1,1, + 9,1,6,254,9,9,18,10,0,10,62,0,99,0,255,128, + 146,128,156,128,152,128,213,128,107,0,62,0,9,1,2,13, + 2,16,255,128,6,6,6,10,2,10,56,76,204,204,200,112, + 10,12,24,11,1,2,12,0,12,0,12,0,12,0,255,192, + 12,0,12,0,12,0,12,0,0,0,0,0,255,128,7,10, + 10,9,1,8,60,70,198,6,12,24,16,32,66,254,8,10, + 10,9,255,8,30,35,67,2,14,3,3,3,198,60,5,6, + 6,9,3,14,24,56,48,96,192,128,14,18,36,14,0,250, + 48,48,240,112,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,56,240,63,188,55,56,48,0,48,0,48,0,48,0, + 56,0,48,0,13,20,40,15,1,253,31,248,49,224,97,224, + 193,224,193,224,193,224,193,224,97,224,113,224,31,224,1,224, + 1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224, + 7,248,2,3,3,4,1,8,192,192,192,5,6,6,6,0, + 250,48,32,56,88,16,224,7,10,10,9,1,8,24,248,24, + 24,24,24,24,24,24,126,6,8,8,8,1,8,56,76,204, + 204,204,200,112,252,10,12,24,13,2,0,132,0,198,0,98, + 0,35,0,49,128,24,192,25,192,49,128,35,0,98,0,198, + 0,132,0,14,16,32,16,1,0,48,24,240,56,48,48,48, + 96,48,192,48,192,49,128,255,0,3,24,6,56,12,88,12, + 88,24,152,17,252,48,24,96,60,13,16,32,15,1,0,48, + 8,240,16,48,48,48,32,48,96,48,192,48,128,253,128,3, + 112,2,152,7,24,4,16,8,48,24,96,16,200,49,248,14, + 16,32,16,1,0,56,24,204,16,12,48,56,32,12,64,12, + 192,140,128,113,128,3,24,2,56,6,88,12,88,8,152,25, + 252,16,24,48,60,10,19,38,12,1,249,6,0,14,0,14, + 0,12,0,2,0,6,0,6,0,6,0,12,0,28,0,56, + 0,112,0,96,0,192,0,192,192,192,192,192,192,97,128,62, + 0,16,23,46,16,0,0,12,0,30,0,7,0,1,128,0, + 64,0,0,0,128,1,128,3,128,3,192,2,192,6,192,6, + 96,4,96,12,112,12,48,15,240,24,24,24,24,16,24,48, + 12,48,12,248,63,16,23,46,16,0,0,0,48,0,112,1, + 192,3,128,2,0,0,0,0,128,1,128,3,128,3,192,2, + 192,6,192,6,96,4,96,12,112,12,48,15,240,24,24,24, + 24,16,24,48,12,48,12,248,63,16,22,44,16,0,0,3, + 128,6,192,12,32,8,16,0,0,0,128,1,128,3,128,3, + 192,2,192,6,192,6,96,4,96,12,112,12,48,15,240,24, + 24,24,24,16,24,48,12,48,12,248,63,16,22,44,16,0, + 0,0,16,7,176,9,224,16,192,0,0,0,128,1,128,3, + 128,3,192,2,192,6,192,6,96,4,96,12,112,12,48,15, + 240,24,24,24,24,16,24,48,12,48,12,248,63,16,21,42, + 16,0,0,12,48,12,48,8,32,0,0,0,128,1,128,3, + 128,3,192,2,192,6,192,6,96,4,96,12,112,12,48,15, + 240,24,24,24,24,16,24,48,12,48,12,248,63,16,23,46, + 16,0,0,1,192,3,96,3,96,3,192,1,128,0,0,0, + 128,1,128,3,128,3,192,2,192,6,192,6,96,4,96,12, + 112,12,48,15,240,24,24,24,24,16,24,48,12,48,12,248, + 63,20,17,51,21,0,0,7,255,224,1,176,32,1,176,32, + 1,48,0,3,48,0,3,48,0,6,48,0,7,255,192,4, + 48,128,12,48,0,12,48,0,24,48,0,24,48,0,16,48, + 0,48,48,16,48,48,48,248,255,240,12,23,46,14,1,250, + 7,224,24,112,48,0,32,0,96,0,64,0,192,0,192,0, + 192,0,192,0,192,0,192,0,224,0,96,32,112,32,61,192, + 31,128,4,0,4,0,7,0,3,0,2,0,28,0,12,23, + 46,13,1,0,48,0,120,0,28,0,6,0,1,0,0,0, + 255,224,48,32,48,32,48,0,48,0,48,0,48,0,63,192, + 48,128,48,0,48,0,48,0,48,0,48,0,48,16,48,48, + 255,224,12,23,46,13,1,0,0,192,3,192,7,0,12,0, + 16,0,0,0,255,224,48,32,48,32,48,0,48,0,48,0, + 48,0,63,192,48,128,48,0,48,0,48,0,48,0,48,0, + 48,16,48,48,255,224,12,22,44,13,1,0,14,0,27,0, + 48,128,64,64,0,0,255,224,48,32,48,32,48,0,48,0, + 48,0,48,0,63,192,48,128,48,0,48,0,48,0,48,0, + 48,0,48,16,48,48,255,224,12,21,42,13,1,0,32,128, + 97,128,32,128,0,0,255,224,48,32,48,32,48,0,48,0, + 48,0,48,0,63,192,48,128,48,0,48,0,48,0,48,0, + 48,0,48,16,48,48,255,224,8,23,23,8,255,0,96,240, + 56,12,2,0,63,12,12,12,12,12,12,12,12,12,12,12, + 12,12,12,12,63,7,23,23,8,1,0,6,14,56,112,64, + 0,252,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,252,8,22,22,8,0,0,56,108,194,129,0,126,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,126,8,21, + 21,8,0,0,195,195,130,0,126,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,126,14,17,34,16,1,0,127, + 128,176,224,48,48,48,24,48,24,48,12,48,12,48,12,255, + 12,48,12,48,12,48,12,48,24,48,24,48,48,48,96,255, + 128,16,22,44,18,1,0,0,16,7,176,9,224,16,192,0, + 0,240,63,48,12,56,12,60,12,52,12,54,12,51,12,51, + 12,49,140,48,204,48,204,48,108,48,60,48,60,48,28,48, + 28,252,12,14,23,46,16,1,0,24,0,28,0,7,0,3, + 128,0,128,0,0,7,192,24,96,48,48,96,24,96,24,64, + 12,192,12,192,12,192,12,192,12,192,12,192,8,96,24,96, + 16,48,48,24,96,15,128,14,23,46,16,1,0,0,96,0, + 240,1,192,3,0,4,0,0,0,7,192,24,96,48,48,96, + 24,96,24,64,12,192,12,192,12,192,12,192,12,192,12,192, + 8,96,24,96,16,48,48,24,96,15,128,14,22,44,16,1, + 0,3,128,4,192,8,96,16,32,0,0,7,192,24,96,48, + 48,96,24,96,24,64,12,192,12,192,12,192,12,192,12,192, + 12,192,8,96,24,96,16,48,48,24,96,15,128,14,22,44, + 16,1,0,0,32,15,48,19,224,32,128,0,0,7,192,24, + 96,48,48,96,24,96,24,64,12,192,12,192,12,192,12,192, + 12,192,12,192,8,96,24,96,16,48,48,24,96,15,128,14, + 21,42,16,1,0,24,96,24,96,16,64,0,0,7,192,24, + 96,48,48,96,24,96,24,64,12,192,12,192,12,192,12,192, + 12,192,12,192,8,96,24,96,16,48,48,24,96,15,128,9, + 9,18,11,1,3,193,128,99,0,54,0,28,0,28,0,28, + 0,54,0,99,0,193,128,14,18,36,16,1,255,7,204,24, + 120,48,48,32,120,96,120,64,220,193,204,193,140,195,12,199, + 12,198,12,204,8,104,24,120,16,48,48,120,96,207,128,128, + 0,16,23,46,18,1,0,12,0,30,0,7,0,1,192,0, + 64,0,0,252,63,48,12,48,12,48,12,48,12,48,12,48, + 12,48,12,48,12,48,12,48,12,48,12,48,12,48,24,24, + 24,12,48,7,224,16,23,46,18,1,0,0,48,0,112,1, + 192,3,128,2,0,0,0,252,63,48,12,48,12,48,12,48, + 12,48,12,48,12,48,12,48,12,48,12,48,12,48,12,48, + 12,48,24,24,24,12,48,7,224,16,22,44,18,1,0,1, + 128,2,64,4,32,8,16,0,0,252,63,48,12,48,12,48, + 12,48,12,48,12,48,12,48,12,48,12,48,12,48,12,48, + 12,48,12,48,24,24,24,12,48,7,224,16,21,42,18,1, + 0,12,48,12,48,8,32,0,0,252,63,48,12,48,12,48, + 12,48,12,48,12,48,12,48,12,48,12,48,12,48,12,48, + 12,48,12,48,24,24,24,12,48,7,224,15,23,46,16,0, + 0,0,48,0,112,0,192,3,128,2,0,0,0,240,62,56, + 12,24,24,28,24,14,48,6,32,7,96,3,192,3,192,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,7,224,12, + 17,34,14,1,0,252,0,48,0,48,0,63,128,48,224,48, + 96,48,48,48,48,48,48,48,48,48,48,48,96,56,192,55, + 128,48,0,48,0,252,0,14,20,40,15,1,0,3,192,12, + 224,24,112,16,48,48,48,48,48,48,96,49,192,51,0,54, + 0,54,0,55,128,51,224,48,248,48,60,48,28,50,12,50, + 12,51,24,243,240,11,20,40,12,1,0,48,0,120,0,24, + 0,12,0,4,0,2,0,0,0,0,0,31,0,97,128,225, + 128,1,128,1,128,31,128,121,128,225,128,193,128,193,128,199, + 128,121,224,11,20,40,12,1,0,1,128,3,128,3,0,6, + 0,4,0,8,0,0,0,0,0,31,0,97,128,225,128,1, + 128,1,128,31,128,121,128,225,128,193,128,193,128,199,128,121, + 224,11,19,38,12,1,0,12,0,30,0,19,0,33,128,64, + 192,0,0,0,0,31,0,97,128,225,128,1,128,1,128,31, + 128,121,128,225,128,193,128,193,128,199,128,121,224,11,18,36, + 12,1,0,24,64,60,128,71,0,0,0,0,0,0,0,31, + 0,97,128,225,128,1,128,1,128,31,128,121,128,225,128,193, + 128,193,128,199,128,121,224,11,18,36,12,1,0,97,128,97, + 128,97,128,0,0,0,0,0,0,31,0,97,128,225,128,1, + 128,1,128,31,128,121,128,225,128,193,128,193,128,199,128,121, + 224,11,19,38,12,1,0,14,0,11,0,27,0,27,0,14, + 0,0,0,0,0,31,0,97,128,225,128,1,128,1,128,31, + 128,121,128,225,128,193,128,193,128,199,128,121,224,17,12,36, + 19,1,0,31,62,0,97,195,0,97,193,128,193,129,128,15, + 255,128,57,128,0,97,128,0,193,128,0,193,128,0,193,193, + 0,198,227,0,120,124,0,10,18,36,12,1,250,15,192,48, + 192,96,128,64,0,192,0,192,0,192,0,192,0,224,0,96, + 64,120,192,63,0,12,0,4,0,7,0,3,0,2,0,28, + 0,10,20,40,12,1,0,48,0,56,0,24,0,12,0,6, + 0,2,0,0,0,0,0,15,0,49,128,96,192,64,192,255, + 192,192,0,192,0,192,0,224,0,96,64,48,128,31,0,10, + 20,40,12,1,0,1,192,1,128,3,0,2,0,4,0,12, + 0,0,0,0,0,15,0,49,128,96,192,64,192,255,192,192, + 0,192,0,192,0,224,0,96,64,48,128,31,0,10,19,38, + 12,1,0,6,0,15,0,25,0,48,128,32,64,0,0,0, + 0,15,0,49,128,96,192,64,192,255,192,192,0,192,0,192, + 0,224,0,96,64,48,128,31,0,10,18,36,12,1,0,32, + 128,48,192,32,128,0,0,0,0,0,0,15,0,49,128,96, + 192,64,192,255,192,192,0,192,0,192,0,224,0,96,64,48, + 128,31,0,7,20,20,7,0,0,192,224,112,48,24,8,0, + 0,24,120,24,24,24,24,24,24,24,24,24,126,7,20,20, + 7,1,0,14,12,24,16,48,96,0,0,48,240,48,48,48, + 48,48,48,48,48,48,252,8,19,19,7,0,0,24,60,100, + 194,129,0,0,24,120,24,24,24,24,24,24,24,24,24,126, + 8,18,18,7,0,0,130,195,130,0,0,0,24,120,24,24, + 24,24,24,24,24,24,24,126,11,19,38,13,1,0,24,0, + 60,224,7,128,31,0,49,128,0,192,0,192,15,192,49,224, + 96,224,64,96,192,96,192,96,192,96,192,64,224,192,96,192, + 49,128,30,0,14,18,36,15,1,0,12,32,31,64,35,128, + 0,0,0,0,0,0,113,224,178,48,52,48,56,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,252,252,12,20, + 40,14,1,0,56,0,24,0,12,0,4,0,6,0,3,0, + 0,0,0,0,15,128,48,192,96,96,64,112,192,48,192,48, + 192,48,192,48,224,32,96,96,48,192,31,0,12,20,40,14, + 1,0,0,192,1,128,3,128,3,0,6,0,4,0,0,0, + 0,0,15,128,48,192,96,96,64,112,192,48,192,48,192,48, + 192,48,224,32,96,96,48,192,31,0,12,19,38,14,1,0, + 6,0,15,0,25,128,16,128,32,64,0,0,0,0,15,128, + 48,192,96,96,64,112,192,48,192,48,192,48,192,48,224,32, + 96,96,48,192,31,0,12,18,36,14,1,0,28,96,62,64, + 35,128,0,0,0,0,0,0,15,128,48,192,96,96,64,112, + 192,48,192,48,192,48,192,48,224,32,96,96,48,192,31,0, + 12,18,36,14,1,0,48,192,48,192,48,192,0,0,0,0, + 0,0,15,128,48,192,96,96,64,112,192,48,192,48,192,48, + 192,48,224,32,96,96,48,192,31,0,9,9,18,11,1,3, + 12,0,12,0,0,0,0,0,255,128,0,0,0,0,12,0, + 12,0,12,14,28,14,1,255,0,16,15,176,49,224,96,224, + 65,240,195,48,198,48,198,48,204,48,248,32,112,96,120,192, + 223,0,128,0,14,20,40,14,0,0,28,0,12,0,6,0, + 3,0,1,0,1,128,0,0,0,0,48,48,240,240,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,112,56,188, + 31,48,14,20,40,14,0,0,0,96,0,224,0,192,1,128, + 3,0,2,0,0,0,0,0,48,48,240,240,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,112,56,188,31,48, + 14,19,38,14,0,0,3,0,7,128,4,192,8,96,16,32, + 0,0,0,0,48,48,240,240,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,112,56,188,31,48,14,18,36,14, + 0,0,24,96,24,96,24,96,0,0,0,0,0,0,48,48, + 240,240,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,112,56,188,31,48,14,26,52,13,255,250,0,112,0,96, + 0,224,0,192,1,128,1,0,0,0,0,0,124,60,24,24, + 24,16,12,48,12,32,14,32,6,96,6,64,3,192,3,128, + 3,128,1,128,1,0,3,0,2,0,6,0,124,0,240,0, + 12,26,52,14,1,250,48,0,240,0,48,0,48,0,48,0, + 48,0,48,0,48,0,51,192,52,224,56,96,48,48,48,48, + 48,48,48,48,48,48,48,32,48,96,56,64,55,128,48,0, + 48,0,48,0,48,0,48,0,252,0,14,24,48,13,255,250, + 12,48,12,48,8,32,0,0,0,0,0,0,124,60,24,24, + 24,16,12,48,12,32,14,32,6,96,6,64,3,192,3,128, + 3,128,1,128,1,0,3,0,2,0,6,0,124,0,240,0 + }; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--27-270-72-72-P-125-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 16 + Calculated Max Values w=11 h=25 x= 2 y= 9 dx=13 dy= 0 ascent=21 len=50 + Font Bounding box w=40 h=38 x=-14 y=-9 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =16 descent= 0 + X Font ascent =16 descent= 0 + Max Font ascent =21 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr17n[539] U8G_SECTION(".progmem.u8g_font_gdr17n") = { + 0,40,38,242,247,16,0,0,0,0,42,57,0,21,252,16, + 0,10,12,24,12,1,9,12,0,12,0,140,0,204,192,119, + 128,30,0,30,0,119,128,204,192,12,128,12,0,12,0,10, + 9,18,11,1,3,12,0,12,0,12,0,12,0,255,192,12, + 0,12,0,12,0,12,0,4,7,7,6,1,252,112,240,48, + 48,32,96,64,7,1,1,9,1,6,254,3,4,4,6,2, + 255,96,224,224,192,11,25,50,13,1,252,0,96,0,96,0, + 192,0,192,1,128,1,128,1,128,3,0,3,0,6,0,6, + 0,6,0,12,0,12,0,12,0,24,0,24,0,48,0,48, + 0,48,0,96,0,96,0,224,0,192,0,192,0,11,16,32, + 13,1,0,15,0,49,128,96,192,64,192,64,224,192,96,192, + 96,192,96,192,96,192,96,192,96,192,64,96,64,96,192,49, + 128,30,0,9,16,32,13,2,0,12,0,60,0,252,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,255,128,10,16,32,13,1,0,15, + 0,49,128,96,192,96,192,0,192,0,192,1,128,1,128,3, + 0,6,0,12,0,28,0,24,0,48,64,96,64,255,192,10, + 16,32,13,1,0,30,0,99,0,97,128,193,128,1,128,3, + 0,6,0,31,0,3,128,1,192,0,192,0,192,0,192,1, + 128,193,128,62,0,11,16,32,13,1,0,1,128,3,128,7, + 128,5,128,13,128,25,128,17,128,49,128,97,128,65,128,255, + 224,1,128,1,128,1,128,1,128,15,224,10,16,32,13,1, + 0,63,192,32,0,32,0,32,0,96,0,96,0,127,0,67, + 128,1,192,0,192,0,192,0,192,0,192,1,128,193,128,62, + 0,11,16,32,13,1,0,3,128,14,0,24,0,48,0,96, + 0,96,0,207,0,241,192,192,224,192,96,192,96,192,96,96, + 96,96,64,48,128,31,0,11,16,32,13,1,0,127,224,64, + 192,128,192,0,128,1,128,1,128,3,0,3,0,6,0,6, + 0,4,0,12,0,12,0,24,0,24,0,48,0,11,16,32, + 13,1,0,31,0,113,128,224,192,224,192,224,192,241,128,63, + 0,15,128,51,192,96,224,192,96,192,96,192,96,192,64,96, + 128,31,0,11,17,34,13,1,255,31,0,49,128,96,192,192, + 192,192,96,192,96,192,96,224,96,113,224,30,96,0,224,0, + 192,0,192,1,128,3,0,14,0,48,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--27-270-72-72-P-125-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 17, '1' Height: 16 + Calculated Max Values w=22 h=27 x= 2 y=14 dx=23 dy= 0 ascent=22 len=66 + Font Bounding box w=40 h=38 x=-14 y=-9 + Calculated Min Values x=-3 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-6 + X Font ascent =21 descent=-6 + Max Font ascent =22 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr17r[3380] U8G_SECTION(".progmem.u8g_font_gdr17r") = { + 0,40,38,242,247,17,4,64,9,46,32,127,250,22,250,21, + 250,0,0,0,6,0,0,3,21,21,7,2,255,96,224,224, + 224,224,96,96,96,96,96,64,64,64,64,64,0,0,96,224, + 224,192,7,9,9,11,2,11,102,230,230,198,198,70,70,70, + 70,12,15,30,13,1,2,6,96,6,96,4,64,4,64,12, + 192,63,240,8,128,25,128,17,0,255,224,51,0,34,0,34, + 0,102,0,68,0,11,20,40,12,0,254,6,0,6,0,15, + 128,55,224,102,64,102,0,102,0,118,0,62,0,31,128,7, + 192,6,224,6,96,134,96,198,96,230,192,127,192,31,0,6, + 0,6,0,17,16,48,19,1,0,56,6,0,108,12,0,198, + 24,0,198,24,0,198,48,0,198,96,0,198,192,0,108,192, + 0,57,158,0,3,51,0,6,97,128,6,97,128,12,97,128, + 24,97,128,48,51,0,32,30,0,17,19,57,18,1,0,3, + 192,0,12,224,0,8,96,0,24,96,0,24,96,0,24,192, + 0,29,192,0,31,128,0,14,0,0,62,63,128,119,29,0, + 103,12,0,195,140,0,193,204,0,193,232,0,192,248,0,96, + 120,0,112,222,0,31,7,128,3,9,9,7,2,11,96,224, + 224,192,192,64,64,64,64,6,25,25,9,2,252,4,8,24, + 48,32,96,96,96,192,192,192,192,192,192,192,192,192,224,96, + 96,96,48,24,8,4,6,25,25,9,1,252,128,64,96,48, + 24,24,24,24,12,12,12,12,12,12,12,12,12,24,24,24, + 48,48,96,64,128,10,12,24,12,1,9,12,0,12,0,140, + 0,204,192,119,128,30,0,30,0,119,128,204,192,12,128,12, + 0,12,0,10,9,18,11,1,3,12,0,12,0,12,0,12, + 0,255,192,12,0,12,0,12,0,12,0,4,7,7,6,1, + 252,112,240,48,48,32,96,64,7,1,1,9,1,6,254,3, + 4,4,6,2,255,96,224,224,192,11,25,50,13,1,252,0, + 96,0,96,0,192,0,192,1,128,1,128,1,128,3,0,3, + 0,6,0,6,0,6,0,12,0,12,0,12,0,24,0,24, + 0,48,0,48,0,48,0,96,0,96,0,224,0,192,0,192, + 0,11,16,32,13,1,0,15,0,49,128,96,192,64,192,64, + 224,192,96,192,96,192,96,192,96,192,96,192,96,192,64,96, + 64,96,192,49,128,30,0,9,16,32,13,2,0,12,0,60, + 0,252,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,255,128,10,16,32, + 13,1,0,15,0,49,128,96,192,96,192,0,192,0,192,1, + 128,1,128,3,0,6,0,12,0,28,0,24,0,48,64,96, + 64,255,192,10,16,32,13,1,0,30,0,99,0,97,128,193, + 128,1,128,3,0,6,0,31,0,3,128,1,192,0,192,0, + 192,0,192,1,128,193,128,62,0,11,16,32,13,1,0,1, + 128,3,128,7,128,5,128,13,128,25,128,17,128,49,128,97, + 128,65,128,255,224,1,128,1,128,1,128,1,128,15,224,10, + 16,32,13,1,0,63,192,32,0,32,0,32,0,96,0,96, + 0,127,0,67,128,1,192,0,192,0,192,0,192,0,192,1, + 128,193,128,62,0,11,16,32,13,1,0,3,128,14,0,24, + 0,48,0,96,0,96,0,207,0,241,192,192,224,192,96,192, + 96,192,96,96,96,96,64,48,128,31,0,11,16,32,13,1, + 0,127,224,64,192,128,192,0,128,1,128,1,128,3,0,3, + 0,6,0,6,0,4,0,12,0,12,0,24,0,24,0,48, + 0,11,16,32,13,1,0,31,0,113,128,224,192,224,192,224, + 192,241,128,63,0,15,128,51,192,96,224,192,96,192,96,192, + 96,192,64,96,128,31,0,11,17,34,13,1,255,31,0,49, + 128,96,192,192,192,192,96,192,96,192,96,224,96,113,224,30, + 96,0,224,0,192,0,192,1,128,3,0,14,0,48,0,3, + 14,14,6,2,255,64,224,224,224,0,0,0,0,0,0,96, + 224,224,192,4,17,17,6,1,252,32,112,112,112,0,0,0, + 0,0,0,112,240,48,48,32,96,64,10,9,18,12,1,3, + 0,192,3,192,31,0,120,0,224,0,248,0,30,0,7,192, + 0,192,10,5,10,12,1,5,255,192,0,0,0,0,0,0, + 255,192,10,9,18,12,1,3,192,0,248,0,30,0,7,192, + 1,192,7,128,60,0,240,0,128,0,10,20,40,12,1,255, + 31,0,97,128,192,192,192,192,192,192,0,192,1,128,1,128, + 3,0,6,0,6,0,12,0,12,0,12,0,8,0,0,0, + 12,0,28,0,28,0,24,0,20,22,66,22,1,251,0,252, + 0,3,7,0,12,1,192,24,0,192,48,0,96,32,244,96, + 97,28,112,67,12,48,194,12,48,198,12,48,198,12,48,198, + 12,48,198,12,32,198,12,96,227,12,64,99,60,128,97,199, + 0,48,0,0,56,0,0,28,0,64,7,3,128,1,252,0, + 16,17,34,16,0,0,0,128,1,128,3,128,3,192,2,192, + 6,192,6,96,4,96,12,112,12,48,15,240,24,24,24,24, + 16,24,48,12,48,12,248,63,12,17,34,14,1,0,127,128, + 176,192,48,96,48,96,48,96,48,64,49,128,63,192,48,224, + 48,96,48,48,48,48,48,48,48,48,48,96,48,224,255,128, + 12,17,34,14,1,0,7,224,24,112,48,0,32,0,96,0, + 64,0,192,0,192,0,192,0,192,0,192,0,192,0,96,0, + 96,0,48,16,24,32,15,192,14,17,34,16,1,0,127,128, + 176,224,48,48,48,24,48,24,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,48,24,48,24,48,48,48,96,255,128, + 12,17,34,13,1,0,255,224,48,32,48,32,48,0,48,0, + 48,0,48,0,63,192,48,128,48,0,48,0,48,0,48,0, + 48,0,48,16,48,48,255,224,11,17,34,13,1,0,255,224, + 48,32,48,32,48,0,48,0,48,0,48,0,63,128,49,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,252,0, + 14,17,34,16,1,0,3,240,12,56,16,0,32,0,96,0, + 64,0,192,0,192,0,192,0,192,252,192,24,192,24,96,24, + 96,24,48,24,24,24,7,224,16,17,34,18,1,0,252,63, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,63,252, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,252,63, + 6,17,17,8,1,0,252,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,252,10,22,44,8,253,251,31,192,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,2,0,6,0,68,0,248,0,15,17,34,16,1,0,252, + 252,48,48,48,96,48,192,49,128,51,0,54,0,52,0,62, + 0,54,0,51,0,49,128,49,192,48,224,48,112,48,56,252, + 30,12,17,34,13,1,0,252,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,16,48,48,255,224,20,17,51,22,1,0,240, + 1,224,56,1,192,56,3,192,44,2,192,44,6,192,44,6, + 192,38,4,192,38,12,192,35,8,192,35,24,192,35,152,192, + 33,144,192,33,176,192,32,224,192,32,224,192,32,64,192,248, + 67,240,16,17,34,18,1,0,240,63,48,12,56,12,60,12, + 52,12,54,12,51,12,51,12,49,140,48,204,48,204,48,108, + 48,60,48,60,48,28,48,28,252,12,14,17,34,16,1,0, + 7,192,24,96,48,48,96,24,96,24,64,12,192,12,192,12, + 192,12,192,12,192,12,192,8,96,24,96,16,48,48,24,96, + 15,128,12,17,34,14,1,0,127,128,176,224,48,96,48,48, + 48,48,48,48,48,48,48,96,48,192,63,128,48,0,48,0, + 48,0,48,0,48,0,48,0,252,0,16,21,42,16,1,252, + 7,192,24,96,48,48,96,24,96,24,64,12,192,12,192,12, + 192,12,192,12,192,12,192,12,96,24,96,24,48,48,24,96, + 15,192,0,192,0,96,0,49,0,14,14,17,34,15,1,0, + 127,0,177,192,48,96,48,96,48,96,48,96,48,192,49,192, + 63,0,51,0,49,128,49,128,48,192,48,224,48,96,48,112, + 252,60,10,17,34,13,2,0,31,0,99,128,193,0,192,0, + 224,0,240,0,124,0,126,0,31,128,7,128,1,192,0,192, + 0,192,128,192,128,128,193,0,126,0,14,17,34,15,0,0, + 255,252,131,4,131,4,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 15,192,16,17,34,18,1,0,252,63,48,12,48,12,48,12, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,48,12, + 48,12,48,24,24,24,12,48,7,224,17,17,51,18,0,0, + 252,15,128,48,6,0,24,6,0,24,4,0,24,12,0,12, + 12,0,12,8,0,14,24,0,6,24,0,6,16,0,3,48, + 0,3,32,0,3,96,0,1,224,0,1,192,0,1,192,0, + 0,128,0,22,17,51,23,0,0,252,16,124,48,16,16,48, + 56,16,24,56,48,24,56,48,24,108,48,24,108,32,24,76, + 32,12,198,96,12,198,96,12,134,96,13,131,64,7,131,64, + 7,3,192,7,1,192,7,1,192,6,1,128,16,17,34,17, + 0,0,124,63,56,28,24,24,12,48,14,48,7,96,3,192, + 3,192,1,192,3,192,3,224,6,112,12,48,12,24,24,28, + 56,14,252,63,15,17,34,16,0,0,240,62,56,12,24,24, + 28,24,14,48,6,32,7,96,3,192,3,192,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,7,224,12,17,34,14, + 1,0,127,240,64,96,64,224,128,192,1,192,3,128,3,0, + 7,0,6,0,14,0,28,0,24,0,56,0,48,16,112,16, + 224,48,255,240,6,25,25,8,2,252,252,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,252,11,25,50,13,1,252,128,0,192,0,64,0,96, + 0,96,0,48,0,48,0,48,0,24,0,24,0,8,0,12, + 0,12,0,6,0,6,0,2,0,3,0,3,0,1,128,1, + 128,1,128,0,192,0,192,0,64,0,96,6,25,25,9,1, + 252,252,12,12,12,12,12,12,12,12,12,12,12,12,12,12, + 12,12,12,12,12,12,12,12,12,252,11,13,26,13,1,7, + 6,0,14,0,14,0,15,0,27,0,19,0,17,128,49,128, + 33,192,96,192,96,192,64,96,192,64,11,1,2,13,1,253, + 255,224,6,6,6,9,0,14,96,224,48,24,8,4,11,12, + 24,12,1,0,31,0,97,128,225,128,1,128,1,128,31,128, + 121,128,225,128,193,128,193,128,199,128,121,224,13,20,40,14, + 0,0,48,0,240,0,48,0,48,0,48,0,48,0,48,0, + 48,0,49,224,54,112,56,48,48,56,48,24,48,24,48,24, + 48,24,48,16,48,48,56,96,15,128,10,12,24,12,1,0, + 15,192,48,192,96,128,64,0,192,0,192,0,192,0,192,0, + 192,0,96,64,48,192,31,0,13,20,40,14,1,0,0,96, + 1,224,0,96,0,96,0,96,0,96,0,96,0,96,15,224, + 48,224,96,96,64,96,192,96,192,96,192,96,192,96,192,96, + 96,224,49,120,30,96,10,12,24,12,1,0,15,0,49,128, + 96,192,64,192,255,192,192,0,192,0,192,0,224,0,96,64, + 48,128,31,0,10,20,40,8,1,0,3,192,12,128,24,0, + 16,0,48,0,48,0,48,0,48,0,255,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 254,0,13,18,36,13,0,250,15,24,48,240,32,96,96,96, + 96,96,96,96,56,192,31,0,24,0,56,0,63,128,31,240, + 48,120,192,24,192,24,192,16,112,96,31,128,14,20,40,15, + 1,0,48,0,240,0,48,0,48,0,48,0,48,0,48,0, + 48,0,49,224,50,48,52,48,56,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,252,252,6,18,18,7,1,0, + 48,112,48,0,0,0,48,240,48,48,48,48,48,48,48,48, + 48,252,8,24,24,7,253,250,3,7,3,0,0,0,3,15, + 3,3,3,3,3,3,3,3,3,3,3,3,2,2,4,248, + 13,20,40,14,1,0,48,0,240,0,48,0,48,0,48,0, + 48,0,48,0,48,0,49,240,48,192,49,128,51,0,52,0, + 60,0,54,0,51,0,49,128,48,192,48,224,248,120,6,20, + 20,7,1,0,48,240,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,252,20,12,36,21,1,0,113,195, + 128,182,108,192,56,112,192,56,112,192,48,96,192,48,96,192, + 48,96,192,48,96,192,48,96,192,48,96,192,48,96,192,253, + 251,240,14,12,24,15,1,0,113,224,178,48,52,48,56,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,252,252, + 12,12,24,14,1,0,15,128,48,192,96,96,64,112,192,48, + 192,48,192,48,192,48,224,32,96,96,48,192,31,0,12,18, + 36,14,1,250,113,192,182,224,56,96,48,48,48,48,48,48, + 48,48,48,48,48,32,48,96,56,64,55,128,48,0,48,0, + 48,0,48,0,48,0,252,0,13,18,36,14,1,250,15,32, + 48,224,96,96,64,96,192,96,192,96,192,96,192,96,192,96, + 96,224,49,96,30,96,0,96,0,96,0,96,0,96,0,96, + 1,248,10,12,24,11,1,0,51,192,244,128,56,128,56,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,252,0, + 8,12,12,10,1,0,62,70,194,224,240,124,30,7,131,131, + 198,124,9,17,34,9,0,0,16,0,48,0,48,0,48,0, + 48,0,255,128,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,49,0,30,128,14,12,24,14,0,0, + 48,48,240,240,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,112,56,188,31,48,13,12,24,13,0,0,248,120, + 48,48,48,32,24,96,24,64,28,64,12,192,12,128,7,128, + 7,0,7,0,2,0,19,12,36,19,0,0,248,99,224,48, + 96,128,48,96,128,48,241,128,24,177,128,25,177,0,25,153, + 0,13,27,0,15,26,0,14,14,0,6,14,0,4,4,0, + 13,12,24,14,0,0,252,248,56,96,24,64,12,128,7,128, + 7,0,7,128,13,128,8,192,16,96,48,112,248,248,14,18, + 36,13,255,250,124,60,24,24,24,16,12,48,12,32,14,32, + 6,96,6,64,3,192,3,128,3,128,1,128,1,0,3,0, + 2,0,6,0,124,0,240,0,10,12,24,12,1,0,127,192, + 65,128,131,128,3,0,6,0,12,0,28,0,24,0,48,0, + 112,64,96,64,255,192,6,25,25,9,2,252,4,8,24,48, + 48,48,48,24,24,24,24,48,224,56,24,24,24,24,48,48, + 48,48,16,24,4,2,27,27,6,2,251,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,6,25,25,9,1,252,128,96,32,48, + 48,48,48,96,96,96,96,48,28,48,96,96,96,96,48,48, + 48,48,96,64,128,12,4,8,13,1,6,56,48,126,32,143, + 192,131,128,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--32-320-72-72-P-146-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 20, '1' Height: 19 + Calculated Max Values w=27 h=32 x= 3 y=19 dx=27 dy= 0 ascent=27 len=81 + Font Bounding box w=47 h=44 x=-16 y=-10 + Calculated Min Values x=-4 y=-9 dx= 0 dy= 0 + Pure Font ascent =20 descent=-8 + X Font ascent =25 descent=-8 + Max Font ascent =27 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr20[9119] U8G_SECTION(".progmem.u8g_font_gdr20") = { + 0,47,44,240,246,20,4,220,11,144,32,255,248,27,247,25, + 248,0,0,0,7,0,0,4,23,23,9,2,0,48,112,112, + 112,112,112,112,112,112,96,96,96,96,96,96,96,96,64,0, + 112,240,240,224,8,10,10,14,3,13,227,199,199,199,199,195, + 195,195,195,194,14,18,36,15,1,2,1,24,3,24,3,16, + 2,48,6,48,63,252,4,96,12,96,12,96,12,64,8,192, + 255,248,24,128,17,128,49,128,49,128,49,0,35,0,12,25, + 50,15,1,253,6,0,6,0,6,0,31,192,63,240,102,96, + 102,0,102,0,102,0,118,0,62,0,31,128,7,192,7,224, + 6,112,6,48,6,48,134,48,198,48,230,96,255,192,127,128, + 6,0,6,0,6,0,20,20,60,22,1,255,30,0,192,99, + 1,128,67,3,128,193,131,0,193,134,0,193,140,0,193,156, + 0,97,24,0,99,48,0,60,115,192,0,108,96,0,200,96, + 1,152,48,3,152,48,3,24,48,6,24,48,14,8,32,28, + 12,96,24,7,128,48,0,0,19,22,66,21,2,0,3,192, + 0,4,224,0,8,96,0,24,96,0,24,96,0,24,96,0, + 24,192,0,29,128,0,15,0,0,12,0,0,28,63,224,62, + 14,128,119,6,0,99,134,0,193,134,0,193,198,0,192,236, + 0,192,124,0,192,60,0,96,30,0,48,47,192,31,195,128, + 3,10,10,8,3,13,224,192,192,192,192,192,192,192,192,192, + 7,30,30,10,2,251,2,12,24,24,48,48,96,96,96,96, + 192,192,192,192,192,192,192,192,192,192,224,96,96,96,112,48, + 56,24,12,2,7,30,30,10,1,251,128,96,48,56,24,28, + 12,12,12,14,6,6,6,6,6,6,6,6,6,6,12,12, + 12,12,24,24,48,48,96,128,12,13,26,14,1,11,6,0, + 6,0,134,0,102,48,242,240,27,128,6,0,27,128,114,240, + 230,48,6,32,6,0,6,0,12,11,22,13,1,3,6,0, + 6,0,6,0,6,0,6,0,255,240,6,0,6,0,6,0, + 6,0,6,0,4,8,8,7,2,251,112,240,48,48,48,32, + 64,192,9,1,2,11,1,8,255,128,4,4,4,7,2,0, + 112,240,240,224,13,30,60,15,1,251,0,24,0,56,0,48, + 0,48,0,112,0,96,0,96,0,224,0,192,1,192,1,128, + 1,128,3,128,3,0,7,0,6,0,6,0,14,0,12,0, + 12,0,28,0,24,0,56,0,48,0,48,0,112,0,96,0, + 96,0,224,0,192,0,13,19,38,15,1,0,7,128,24,192, + 32,96,96,48,64,48,64,56,192,24,192,24,192,24,192,24, + 192,24,192,24,192,24,192,16,96,16,96,48,48,32,24,64, + 15,128,11,19,38,15,2,0,2,0,30,0,126,0,134,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,15,0,127,224,11,19, + 38,15,2,0,15,128,48,192,96,96,96,96,96,96,0,96, + 0,96,0,192,0,192,1,128,3,0,7,0,6,0,12,0, + 24,0,48,32,112,32,224,32,255,224,11,19,38,15,2,0, + 31,0,113,128,96,192,224,192,0,192,0,192,1,128,3,0, + 15,0,3,192,0,192,0,224,0,96,0,96,0,96,0,96, + 128,192,193,128,127,0,12,19,38,15,1,0,0,64,1,192, + 3,192,3,192,6,192,12,192,12,192,24,192,48,192,48,192, + 96,192,224,192,255,240,0,192,0,192,0,192,0,192,0,192, + 7,240,11,19,38,15,2,0,63,224,32,0,32,0,96,0, + 96,0,96,0,96,0,127,0,97,192,0,192,0,96,0,96, + 0,96,0,96,0,96,0,64,128,192,193,128,63,0,12,20, + 40,15,2,0,0,192,7,0,14,0,24,0,48,0,112,0, + 96,0,96,0,207,128,240,224,224,96,192,112,192,48,192,48, + 192,48,96,48,96,32,32,96,48,64,15,128,12,19,38,15, + 2,0,255,240,128,96,128,96,0,224,0,192,0,192,1,128, + 1,128,3,0,3,0,7,0,6,0,6,0,12,0,12,0, + 28,0,24,0,56,0,48,0,12,19,38,15,2,0,31,128, + 48,192,96,96,224,96,224,96,224,96,248,192,127,128,31,128, + 31,192,49,224,96,112,192,112,192,48,192,48,192,32,96,32, + 112,64,31,128,12,20,40,15,2,255,15,128,49,192,32,224, + 64,96,192,112,192,48,192,48,192,48,192,48,96,112,48,176, + 31,48,0,96,0,96,0,96,0,192,1,128,7,0,30,0, + 48,0,4,15,15,7,2,0,112,240,240,96,0,0,0,0, + 0,0,0,112,240,240,224,4,20,20,7,2,251,112,240,240, + 96,0,0,0,0,0,0,0,0,112,240,48,48,48,32,64, + 192,12,10,20,14,1,4,0,48,0,240,7,192,62,0,248, + 0,240,0,126,0,15,128,1,240,0,112,12,6,12,14,1, + 6,255,240,0,0,0,0,0,0,0,0,255,240,12,10,20, + 14,1,4,96,0,248,0,31,0,7,224,0,240,1,240,7, + 192,62,0,240,0,192,0,10,23,46,14,2,0,31,0,99, + 128,65,192,192,192,192,192,128,192,0,192,1,128,1,128,3, + 0,3,0,6,0,14,0,12,0,12,0,12,0,12,0,0, + 0,0,0,14,0,30,0,30,0,28,0,24,25,75,26,1, + 251,0,63,128,1,192,224,2,0,56,12,0,28,24,0,12, + 16,60,142,32,67,134,96,129,135,65,129,131,193,1,131,195, + 1,131,195,1,131,195,1,131,195,1,131,195,1,131,195,1, + 130,225,129,134,97,131,132,112,197,200,48,120,240,56,0,0, + 28,0,4,15,0,28,3,192,112,0,127,128,19,20,60,19, + 0,0,0,64,0,0,224,0,0,224,0,1,224,0,1,240, + 0,1,176,0,3,48,0,3,56,0,3,24,0,6,28,0, + 6,28,0,6,12,0,15,254,0,12,6,0,8,6,0,24, + 7,0,24,3,0,16,3,0,48,3,128,254,15,224,14,20, + 40,17,1,0,63,192,240,112,48,56,48,24,48,24,48,24, + 48,24,48,48,48,224,63,224,48,112,48,56,48,28,48,12, + 48,12,48,12,48,12,48,24,48,48,255,192,14,20,40,17, + 1,0,3,248,12,28,16,8,48,0,96,0,96,0,64,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,96,0, + 96,0,112,0,56,4,28,24,7,224,17,20,60,19,1,0, + 63,224,0,240,56,0,48,12,0,48,6,0,48,3,0,48, + 3,0,48,3,128,48,1,128,48,1,128,48,1,128,48,1, + 128,48,1,128,48,1,128,48,3,0,48,3,0,48,3,0, + 48,6,0,48,12,0,48,56,0,255,224,0,13,20,40,16, + 1,0,255,240,48,16,48,16,48,16,48,0,48,0,48,0, + 48,0,48,0,63,224,48,64,48,0,48,0,48,0,48,0, + 48,0,48,8,48,8,48,24,255,248,12,20,40,15,1,0, + 255,240,48,16,48,16,48,16,48,0,48,0,48,0,48,0, + 48,0,63,192,48,128,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,254,0,18,20,60,19,1,0,1,254, + 0,6,15,0,8,0,0,16,0,0,32,0,0,96,0,0, + 64,0,0,192,0,0,192,0,0,192,0,0,192,0,0,192, + 31,192,192,7,0,192,3,0,96,3,0,96,3,0,48,3, + 0,24,3,0,12,3,0,3,252,0,19,20,60,21,1,0, + 252,7,224,48,1,128,48,1,128,48,1,128,48,1,128,48, + 1,128,48,1,128,48,1,128,48,1,128,63,255,128,48,1, + 128,48,1,128,48,1,128,48,1,128,48,1,128,48,1,128, + 48,1,128,48,1,128,48,1,128,252,7,224,6,20,20,10, + 2,0,252,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,252,11,25,50,10,253,251,15,224,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,1,0,1,0,3,0,98,0,252,0,17,20, + 60,19,1,0,252,127,0,48,24,0,48,48,0,48,96,0, + 48,224,0,49,192,0,49,128,0,51,0,0,54,0,0,62, + 0,0,54,0,0,55,0,0,51,128,0,49,192,0,48,224, + 0,48,112,0,48,120,0,48,60,0,48,30,0,252,15,128, + 13,20,40,15,1,0,252,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,8,48,8,48,24,255,248,24,20, + 60,26,1,0,248,0,62,60,0,56,60,0,120,62,0,120, + 54,0,216,54,0,216,55,0,152,51,1,152,51,129,152,49, + 131,24,49,195,24,49,198,24,48,198,24,48,230,24,48,108, + 24,48,124,24,48,56,24,48,56,24,48,56,24,252,16,255, + 19,20,60,21,1,0,240,7,224,56,1,128,60,1,128,60, + 1,128,62,1,128,55,1,128,51,129,128,51,129,128,49,193, + 128,48,225,128,48,97,128,48,113,128,48,57,128,48,29,128, + 48,13,128,48,15,128,48,7,128,48,3,128,48,3,128,252, + 1,128,17,20,60,19,1,0,3,240,0,12,24,0,16,12, + 0,48,6,0,32,3,0,96,3,0,64,3,128,192,1,128, + 192,1,128,192,1,128,192,1,128,192,1,128,192,1,128,224, + 1,0,96,3,0,96,2,0,48,6,0,56,4,0,12,24, + 0,7,224,0,15,20,40,17,1,0,63,224,240,56,48,28, + 48,14,48,6,48,6,48,6,48,6,48,12,48,12,52,56, + 51,224,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 254,0,19,25,75,19,1,251,3,240,0,12,24,0,16,12, + 0,48,6,0,32,3,0,96,3,0,64,3,128,192,1,128, + 192,1,128,192,1,128,192,1,128,192,1,128,192,1,128,224, + 1,0,96,3,0,96,3,0,48,6,0,24,4,0,12,24, + 0,7,240,0,0,112,0,0,24,0,0,14,32,0,7,192, + 0,1,128,18,20,60,18,1,0,63,192,0,240,112,0,48, + 24,0,48,12,0,48,12,0,48,12,0,48,12,0,48,24, + 0,48,112,0,63,224,0,63,192,0,49,192,0,48,224,0, + 48,112,0,48,112,0,48,56,0,48,60,0,48,28,0,48, + 15,0,252,15,192,12,20,40,15,2,0,15,224,48,224,64, + 64,192,0,192,0,224,0,248,0,126,0,127,0,31,192,7, + 224,1,240,0,240,0,112,0,48,0,48,128,32,192,96,224, + 192,127,0,16,20,40,18,1,0,255,255,129,131,129,129,129, + 129,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,15, + 240,19,20,60,21,1,0,252,7,224,48,1,128,48,1,128, + 48,1,128,48,1,128,48,1,128,48,1,128,48,1,128,48, + 1,128,48,1,128,48,1,128,48,1,128,48,1,128,48,1, + 128,48,1,128,48,1,0,24,3,0,28,6,0,14,12,0, + 3,240,0,20,20,60,21,0,0,254,3,240,56,0,192,24, + 0,128,28,1,128,12,1,128,14,3,0,14,3,0,6,3, + 0,7,6,0,7,6,0,3,6,0,3,140,0,1,140,0, + 1,204,0,1,216,0,0,216,0,0,248,0,0,240,0,0, + 112,0,0,96,0,27,20,80,27,0,0,254,4,15,224,56, + 4,3,0,24,14,3,0,24,14,3,0,28,15,3,0,28, + 27,2,0,12,27,6,0,12,27,134,0,12,49,134,0,14, + 49,134,0,14,49,196,0,6,96,204,0,6,96,204,0,7, + 96,236,0,7,192,108,0,3,192,120,0,3,192,120,0,3, + 128,56,0,3,128,56,0,3,0,48,0,19,20,60,20,0, + 0,127,31,192,60,7,0,28,6,0,14,6,0,7,12,0, + 7,28,0,3,152,0,1,240,0,1,240,0,0,224,0,0, + 240,0,1,240,0,1,184,0,3,28,0,7,12,0,6,14, + 0,12,7,0,28,3,128,56,3,192,255,15,224,18,20,60, + 19,0,0,240,31,192,56,7,0,28,6,0,12,12,0,14, + 12,0,7,24,0,7,24,0,3,48,0,3,176,0,1,224, + 0,1,224,0,0,192,0,0,192,0,0,192,0,0,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,7,248,0,14, + 20,40,17,1,0,127,252,96,28,64,56,64,120,0,112,0, + 224,0,224,1,192,3,192,3,128,7,0,7,0,14,0,30, + 0,28,0,56,0,56,4,112,4,240,12,255,252,7,30,30, + 10,2,251,254,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 254,13,30,60,15,1,251,192,0,192,0,96,0,96,0,112, + 0,48,0,48,0,24,0,24,0,28,0,12,0,12,0,14, + 0,6,0,6,0,3,0,3,0,3,128,1,128,1,128,0, + 192,0,192,0,192,0,96,0,96,0,112,0,48,0,48,0, + 24,0,24,7,30,30,10,1,251,254,6,6,6,6,6,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,6,254,12,15,30,16,2,9,2,0,6, + 0,15,0,15,0,27,0,27,128,17,128,49,192,49,192,96, + 192,96,224,96,96,192,112,192,48,128,32,13,1,2,15,1, + 253,255,248,7,7,7,10,0,16,96,240,56,24,12,4,2, + 13,15,30,15,1,0,15,192,48,224,112,96,96,96,0,96, + 0,96,15,224,63,224,126,96,240,96,224,96,192,96,192,96, + 65,224,62,120,15,24,48,16,0,0,48,0,240,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,240,49,248, + 54,28,60,12,56,14,48,6,48,6,48,6,48,6,48,6, + 48,4,48,12,48,8,28,16,7,224,12,15,30,14,1,0, + 7,224,24,96,32,32,96,0,64,0,192,0,192,0,192,0, + 192,0,192,0,192,0,96,0,112,32,56,112,31,128,15,24, + 48,17,1,0,0,24,0,120,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,7,248,24,56,32,24,96,24,64,24, + 192,24,192,24,192,24,192,24,192,24,192,24,96,24,112,56, + 56,222,15,24,13,15,30,15,1,0,7,192,24,96,32,48, + 96,24,64,24,192,24,255,240,192,0,192,0,192,0,224,0, + 96,0,112,8,56,48,15,192,11,24,48,10,1,0,3,224, + 4,192,24,0,16,0,48,0,48,0,48,0,48,0,48,0, + 255,0,50,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,254,0,15,23, + 46,16,1,248,7,134,24,252,32,96,96,48,96,48,96,48, + 96,48,112,96,56,64,31,128,8,0,16,0,60,0,63,224, + 15,248,63,252,112,124,224,12,192,12,192,8,96,16,112,32, + 31,192,16,24,48,18,1,0,16,0,240,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,112,49,136,54,12, + 56,12,56,12,48,12,48,12,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,252,63,6,21,21,9,1,0,48,112, + 112,96,0,0,48,240,48,48,48,48,48,48,48,48,48,48, + 48,48,252,9,29,58,8,252,248,1,128,3,128,3,128,3, + 0,0,0,0,0,1,128,7,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,0,3,0,2,0,124, + 0,248,0,15,24,48,16,1,0,16,0,240,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,252,48,112,48, + 224,49,128,51,0,54,0,62,0,54,0,55,0,51,128,49, + 192,48,224,48,112,48,120,252,62,6,24,24,9,1,0,16, + 240,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,252,24,15,45,26,1,0,240,240,120, + 51,25,140,52,26,12,56,28,12,56,28,12,48,24,12,48, + 24,12,48,24,12,48,24,12,48,24,12,48,24,12,48,24, + 12,48,24,12,48,24,12,252,126,63,16,15,30,18,1,0, + 112,112,177,136,54,12,56,12,56,12,48,12,48,12,48,12, + 48,12,48,12,48,12,48,12,48,12,48,12,252,63,14,15, + 30,16,1,0,7,192,24,112,32,56,96,24,64,28,192,12, + 192,12,192,12,192,12,192,12,224,8,96,24,112,16,56,32, + 15,192,15,23,46,17,1,248,112,240,179,24,52,28,56,12, + 48,14,48,6,48,6,48,6,48,6,48,6,48,4,48,12, + 48,8,60,16,55,224,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,254,0,14,23,46,16,1,248,7,144,24,112, + 32,48,96,48,64,48,192,48,192,48,192,48,192,48,192,48, + 192,48,96,48,96,112,48,176,31,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,1,252,11,15,30,13,1,0, + 49,224,243,224,52,64,56,64,56,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,254,0,9,15, + 30,12,2,0,63,0,67,0,193,0,192,0,224,0,248,0, + 126,0,63,0,15,128,3,128,1,128,129,128,129,0,195,0, + 252,0,10,20,40,11,1,0,16,0,48,0,48,0,48,0, + 48,0,255,192,49,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,128,31,64, + 15,15,30,17,1,0,48,24,240,120,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,48,24,48,56, + 24,222,15,24,15,15,30,16,0,0,252,62,56,12,56,8, + 24,24,28,24,12,16,12,48,14,48,6,32,7,96,7,64, + 3,64,3,192,1,128,1,0,22,15,45,23,0,0,252,16, + 124,48,24,24,56,56,16,24,56,48,24,60,48,28,108,48, + 12,110,32,12,78,96,12,198,96,14,199,64,6,131,64,7, + 131,192,7,131,192,3,1,128,2,1,0,16,15,30,16,0, + 0,254,63,60,28,28,16,14,48,6,96,7,192,3,192,1, + 192,3,192,6,224,12,112,12,56,24,24,56,28,252,63,16, + 23,46,16,255,248,126,31,28,6,28,4,12,12,14,12,14, + 8,6,24,7,24,3,16,3,48,3,176,1,160,1,224,1, + 224,0,192,0,192,0,128,1,128,1,128,3,0,126,0,124, + 0,248,0,12,15,30,14,1,0,127,240,64,96,64,224,1, + 192,1,128,3,128,7,0,6,0,14,0,28,0,28,0,56, + 16,112,16,112,48,255,240,8,30,30,11,2,251,3,6,12, + 8,24,24,24,24,28,12,12,12,12,24,48,248,28,12,12, + 12,12,28,24,24,24,24,24,12,6,3,2,32,32,7,3, + 250,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,8,30,30,11,1,251,192,96,48,24,24,24,24,24,56, + 48,48,48,48,56,31,12,24,48,48,48,48,56,24,24,24, + 24,16,48,96,192,14,6,12,16,1,7,28,8,62,12,127, + 136,71,240,131,240,128,224,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,7,0,0,4,24, + 24,9,2,247,112,240,240,224,0,0,32,96,96,96,96,96, + 96,96,96,96,112,112,112,112,112,112,112,64,12,20,40,15, + 2,255,6,0,6,0,6,0,15,224,54,224,102,96,102,0, + 198,0,198,0,198,0,198,0,198,0,198,0,230,32,118,48, + 63,192,31,128,6,0,6,0,6,0,13,19,38,15,1,0, + 7,224,8,112,16,48,16,32,48,32,48,0,48,0,48,0, + 48,0,255,0,48,0,48,0,48,0,48,0,48,8,32,24, + 96,48,127,240,131,240,11,10,20,15,2,4,192,96,127,192, + 49,192,96,192,96,192,96,192,113,192,63,128,64,64,128,32, + 16,19,38,15,255,0,240,63,56,28,28,24,28,56,14,48, + 6,112,7,96,3,192,3,192,1,128,1,128,63,252,1,128, + 1,128,1,128,1,128,1,128,1,128,15,240,2,32,32,7, + 3,250,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 128,0,0,64,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,11,22,44,15,2,0,31,128,49,192,96,128,96,0, + 112,0,120,0,62,0,111,128,199,192,193,224,192,224,224,96, + 240,96,124,96,63,192,15,128,3,192,1,192,64,192,64,192, + 96,128,63,0,9,4,8,13,2,17,97,128,227,128,227,128, + 195,0,21,20,60,24,1,0,1,252,0,6,3,0,24,0, + 192,48,0,96,48,124,96,97,134,48,99,0,48,194,0,24, + 198,0,24,198,0,24,198,0,24,198,0,24,199,0,24,99, + 0,48,97,198,48,48,248,96,48,0,96,24,0,192,6,3, + 0,1,252,0,7,10,10,8,1,9,56,204,140,28,108,204, + 220,238,0,254,12,14,28,16,1,0,6,16,4,48,8,96, + 24,96,48,192,113,192,227,128,227,128,113,192,48,192,24,96, + 8,96,4,48,6,16,13,6,12,15,1,3,255,248,0,24, + 0,24,0,24,0,24,0,24,9,1,2,11,1,8,255,128, + 10,11,22,11,1,11,30,0,97,0,126,128,147,64,151,64, + 156,64,148,64,146,64,105,128,33,0,30,0,10,1,2,16, + 3,19,255,192,7,7,7,11,2,12,60,110,198,198,198,236, + 120,12,14,28,13,1,2,6,0,6,0,6,0,6,0,6, + 0,255,240,6,0,6,0,6,0,6,0,4,0,0,0,0, + 0,255,224,8,11,11,10,1,10,62,99,195,3,6,6,12, + 24,50,97,255,9,12,24,11,0,9,31,0,51,128,97,128, + 1,128,3,0,15,0,1,128,1,128,1,128,1,128,195,0, + 62,0,7,7,7,10,3,16,12,30,24,48,48,96,192,15, + 23,46,17,1,248,48,8,240,56,48,24,48,24,48,24,48, + 24,48,24,48,24,48,24,48,24,56,56,56,120,63,248,55, + 222,51,152,48,0,48,0,48,0,48,0,56,0,56,0,56, + 0,48,0,15,24,48,18,1,252,15,254,48,252,96,216,64, + 216,192,216,192,216,192,216,192,216,224,216,112,216,56,216,15, + 216,0,216,0,216,0,216,0,216,0,216,0,216,0,216,0, + 216,0,216,0,216,0,216,3,254,3,4,4,5,1,9,96, + 224,224,192,5,7,7,7,1,249,48,32,48,120,24,48,224, + 8,11,11,11,2,10,24,248,24,24,24,24,24,24,24,24, + 255,7,10,10,9,1,9,56,108,198,198,198,198,108,56,0, + 254,12,14,28,16,2,0,130,0,65,0,97,128,48,192,56, + 224,28,96,12,112,28,112,30,96,56,224,48,192,97,128,65, + 0,130,0,16,19,38,19,2,0,48,6,240,14,48,12,48, + 24,48,56,48,48,48,96,48,224,48,192,205,130,1,142,3, + 30,6,22,6,38,12,70,24,127,24,134,48,6,96,31,15, + 19,38,18,2,0,48,6,240,12,48,8,48,24,48,48,48, + 48,48,96,48,192,48,192,205,128,1,28,3,102,6,70,4, + 6,12,12,24,24,24,48,48,98,96,254,17,19,57,19,1, + 0,60,3,0,70,6,0,6,4,0,28,12,0,6,24,0, + 6,16,0,6,48,0,142,96,0,120,96,0,0,193,0,1, + 135,0,1,143,0,3,11,0,2,19,0,6,35,0,12,63, + 128,12,67,0,24,3,0,48,15,128,10,24,48,13,2,247, + 14,0,30,0,30,0,28,0,0,0,0,0,0,0,12,0, + 12,0,12,0,12,0,28,0,24,0,48,0,48,0,96,0, + 96,0,192,0,192,64,192,192,192,192,224,128,97,128,62,0, + 19,27,81,19,0,0,6,0,0,15,0,0,7,128,0,1, + 192,0,0,96,0,0,16,0,0,0,0,0,64,0,0,224, + 0,0,224,0,1,224,0,1,240,0,1,176,0,3,48,0, + 3,56,0,3,24,0,6,28,0,6,28,0,6,12,0,15, + 254,0,12,6,0,8,6,0,24,7,0,24,3,0,16,3, + 0,48,3,128,254,15,224,19,27,81,19,0,0,0,8,0, + 0,30,0,0,60,0,0,112,0,1,192,0,1,0,0,0, + 0,0,0,64,0,0,224,0,0,224,0,1,224,0,1,240, + 0,1,176,0,3,48,0,3,56,0,3,24,0,6,28,0, + 6,28,0,6,12,0,15,254,0,12,6,0,8,6,0,24, + 7,0,24,3,0,16,3,0,48,3,128,254,15,224,19,27, + 81,19,0,0,0,224,0,1,224,0,1,240,0,3,56,0, + 6,12,0,12,4,0,0,0,0,0,64,0,0,224,0,0, + 224,0,1,224,0,1,240,0,1,176,0,3,48,0,3,56, + 0,3,24,0,6,28,0,6,28,0,6,12,0,15,254,0, + 12,6,0,8,6,0,24,7,0,24,3,0,16,3,0,48, + 3,128,254,15,224,19,26,78,19,0,0,3,132,0,7,230, + 0,4,252,0,8,56,0,0,0,0,0,0,0,0,64,0, + 0,224,0,0,224,0,1,224,0,1,240,0,1,176,0,3, + 48,0,3,56,0,3,24,0,6,28,0,6,28,0,6,12, + 0,15,254,0,12,6,0,8,6,0,24,7,0,24,3,0, + 16,3,0,48,3,128,254,15,224,19,25,75,19,0,0,6, + 12,0,6,12,0,14,28,0,6,12,0,0,0,0,0,64, + 0,0,224,0,0,224,0,1,224,0,1,240,0,1,176,0, + 3,48,0,3,56,0,3,24,0,6,28,0,6,28,0,6, + 12,0,15,254,0,12,6,0,8,6,0,24,7,0,24,3, + 0,16,3,0,48,3,128,254,15,224,19,27,81,19,0,0, + 0,224,0,1,176,0,1,48,0,3,48,0,1,176,0,1, + 224,0,0,0,0,0,64,0,0,224,0,0,224,0,1,224, + 0,1,240,0,1,176,0,3,48,0,3,56,0,3,24,0, + 6,28,0,6,28,0,6,12,0,15,254,0,12,6,0,8, + 6,0,24,7,0,24,3,0,16,3,0,48,3,128,254,15, + 224,23,20,60,25,0,0,3,255,252,0,124,4,0,108,4, + 0,236,4,0,204,0,1,204,0,1,140,0,1,140,0,3, + 140,0,3,255,248,7,12,16,6,12,0,6,12,0,12,12, + 0,12,12,0,28,12,0,24,12,2,24,12,2,48,12,6, + 252,63,254,15,27,54,17,1,249,3,248,12,28,16,8,48, + 0,96,0,96,0,64,0,192,0,192,0,192,0,192,0,192, + 0,192,0,224,0,96,0,112,0,120,2,60,12,31,248,15, + 240,0,128,0,128,1,224,0,224,0,96,0,192,3,0,13, + 27,54,16,1,0,16,0,56,0,28,0,15,0,3,128,0, + 192,0,0,255,240,48,16,48,16,48,16,48,0,48,0,48, + 0,48,0,48,0,63,224,48,64,48,0,48,0,48,0,48, + 0,48,0,48,8,48,8,48,24,255,248,13,27,54,16,1, + 0,0,32,0,240,1,224,3,128,7,0,12,0,0,0,255, + 240,48,16,48,16,48,16,48,0,48,0,48,0,48,0,48, + 0,63,224,48,64,48,0,48,0,48,0,48,0,48,0,48, + 8,48,8,48,24,255,248,13,27,54,16,1,0,3,0,7, + 128,15,192,28,192,56,96,32,48,0,0,255,240,48,16,48, + 16,48,16,48,0,48,0,48,0,48,0,48,0,63,224,48, + 64,48,0,48,0,48,0,48,0,48,0,48,8,48,8,48, + 24,255,248,13,25,50,16,1,0,24,48,56,112,56,112,48, + 96,0,0,255,240,48,16,48,16,48,16,48,0,48,0,48, + 0,48,0,48,0,63,224,48,64,48,0,48,0,48,0,48, + 0,48,0,48,8,48,8,48,24,255,248,9,27,54,10,255, + 0,96,0,240,0,120,0,28,0,7,0,1,0,0,0,31, + 128,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,31,128,8,27,27,10,2,0,6,15,30, + 56,96,128,0,252,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,252,10,27,54,10,0,0,28,0, + 30,0,62,0,115,0,193,128,128,192,0,0,63,0,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,63,0,10,25,50,10,0,0,193,128,225,192,225,192, + 193,128,0,0,63,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,63,0,18,20,60,19, + 0,0,31,240,0,120,28,0,24,6,0,24,3,0,24,1, + 128,24,1,128,24,1,192,24,0,192,24,0,192,255,128,192, + 24,0,192,24,0,192,24,0,192,24,1,128,24,1,128,24, + 1,128,24,3,0,24,6,0,24,28,0,127,240,0,19,26, + 78,21,1,0,3,132,0,7,230,0,4,124,0,8,56,0, + 0,0,0,0,0,0,240,7,224,56,1,128,60,1,128,60, + 1,128,62,1,128,55,1,128,51,129,128,51,129,128,49,193, + 128,48,225,128,48,97,128,48,113,128,48,57,128,48,29,128, + 48,13,128,48,15,128,48,7,128,48,3,128,48,3,128,252, + 1,128,17,27,81,19,1,0,12,0,0,30,0,0,15,0, + 0,3,128,0,0,224,0,0,32,0,0,0,0,3,240,0, + 12,24,0,16,12,0,48,6,0,32,3,0,96,3,0,64, + 3,128,192,1,128,192,1,128,192,1,128,192,1,128,192,1, + 128,192,1,128,224,1,0,96,3,0,96,2,0,48,6,0, + 56,4,0,12,24,0,7,224,0,17,27,81,19,1,0,0, + 24,0,0,60,0,0,120,0,0,224,0,1,128,0,2,0, + 0,0,0,0,3,240,0,12,24,0,16,12,0,48,6,0, + 32,3,0,96,3,0,64,3,128,192,1,128,192,1,128,192, + 1,128,192,1,128,192,1,128,192,1,128,224,1,0,96,3, + 0,96,2,0,48,6,0,56,4,0,12,24,0,7,224,0, + 17,27,81,19,1,0,1,192,0,1,224,0,3,224,0,7, + 48,0,12,24,0,8,12,0,0,0,0,3,240,0,12,24, + 0,16,12,0,48,6,0,32,3,0,96,3,0,64,3,128, + 192,1,128,192,1,128,192,1,128,192,1,128,192,1,128,192, + 1,128,224,1,0,96,3,0,96,2,0,48,6,0,56,4, + 0,12,24,0,7,224,0,17,26,78,19,1,0,3,4,0, + 7,204,0,8,248,0,16,112,0,0,0,0,0,0,0,3, + 240,0,12,24,0,16,12,0,48,6,0,32,3,0,96,3, + 0,64,3,128,192,1,128,192,1,128,192,1,128,192,1,128, + 192,1,128,192,1,128,224,1,0,96,3,0,96,2,0,48, + 6,0,56,4,0,12,24,0,7,224,0,17,25,75,19,1, + 0,12,24,0,14,28,0,14,28,0,12,24,0,0,0,0, + 3,240,0,12,24,0,16,12,0,48,6,0,32,3,0,96, + 3,0,64,3,128,192,1,128,192,1,128,192,1,128,192,1, + 128,192,1,128,192,1,128,224,1,0,96,3,0,96,2,0, + 48,6,0,56,4,0,12,24,0,7,224,0,11,10,20,13, + 1,4,192,96,96,192,49,128,27,0,14,0,14,0,27,0, + 49,128,96,192,192,96,17,21,63,19,1,255,3,241,128,4, + 31,0,24,14,0,48,30,0,32,31,0,96,63,0,64,59, + 128,192,115,128,192,225,128,192,225,128,193,193,128,195,129,128, + 195,1,128,231,1,0,110,3,0,124,2,0,124,6,0,56, + 4,0,124,24,0,199,224,0,128,0,0,19,27,81,21,1, + 0,6,0,0,15,0,0,7,128,0,1,192,0,0,96,0, + 0,16,0,0,0,0,252,7,224,48,1,128,48,1,128,48, + 1,128,48,1,128,48,1,128,48,1,128,48,1,128,48,1, + 128,48,1,128,48,1,128,48,1,128,48,1,128,48,1,128, + 48,1,128,48,1,0,24,3,0,28,6,0,14,12,0,3, + 240,0,19,27,81,21,1,0,0,12,0,0,30,0,0,60, + 0,0,112,0,0,192,0,1,0,0,0,0,0,252,7,224, + 48,1,128,48,1,128,48,1,128,48,1,128,48,1,128,48, + 1,128,48,1,128,48,1,128,48,1,128,48,1,128,48,1, + 128,48,1,128,48,1,128,48,1,128,48,1,0,24,3,0, + 28,6,0,14,12,0,3,240,0,19,27,81,21,1,0,0, + 224,0,0,240,0,1,240,0,3,152,0,6,12,0,4,6, + 0,0,0,0,252,7,224,48,1,128,48,1,128,48,1,128, + 48,1,128,48,1,128,48,1,128,48,1,128,48,1,128,48, + 1,128,48,1,128,48,1,128,48,1,128,48,1,128,48,1, + 128,48,1,0,24,3,0,28,6,0,14,12,0,3,240,0, + 19,25,75,21,1,0,6,12,0,7,14,0,7,14,0,6, + 12,0,0,0,0,252,7,224,48,1,128,48,1,128,48,1, + 128,48,1,128,48,1,128,48,1,128,48,1,128,48,1,128, + 48,1,128,48,1,128,48,1,128,48,1,128,48,1,128,48, + 1,128,48,1,0,24,3,0,28,6,0,14,12,0,3,240, + 0,18,27,81,19,0,0,0,12,0,0,30,0,0,60,0, + 0,112,0,0,192,0,1,0,0,0,0,0,240,31,192,56, + 7,0,28,6,0,12,12,0,14,12,0,7,24,0,7,24, + 0,3,48,0,3,176,0,1,224,0,1,224,0,0,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,7,248,0,15,20,40,17,1,0,254,0, + 48,0,48,0,48,0,63,224,48,120,48,28,48,14,48,6, + 48,6,48,6,48,6,48,12,48,12,52,56,51,224,48,0, + 48,0,48,0,254,0,16,24,48,18,1,0,1,224,6,56, + 8,24,16,28,16,12,48,12,48,12,48,28,48,56,48,240, + 49,192,49,128,49,128,49,192,48,240,48,124,48,62,48,15, + 48,7,48,3,49,3,49,3,49,134,241,248,13,23,46,15, + 1,0,56,0,56,0,28,0,14,0,6,0,3,0,1,0, + 0,0,15,192,48,224,112,96,96,96,0,96,0,96,15,224, + 63,224,126,96,240,96,224,96,192,96,192,96,65,224,62,120, + 13,23,46,15,1,0,0,224,0,224,1,192,1,128,3,0, + 2,0,4,0,0,0,15,192,48,224,112,96,96,96,0,96, + 0,96,15,224,63,224,126,96,240,96,224,96,192,96,192,96, + 65,224,62,120,13,23,46,15,1,0,7,0,7,0,15,128, + 29,192,24,192,48,96,32,32,0,0,15,192,48,224,112,96, + 96,96,0,96,0,96,15,224,63,224,126,96,240,96,224,96, + 192,96,192,96,65,224,62,120,13,21,42,15,1,0,28,16, + 63,32,35,192,64,0,0,0,0,0,15,192,48,224,112,96, + 96,96,0,96,0,96,15,224,63,224,126,96,240,96,224,96, + 192,96,192,96,65,224,62,120,13,21,42,15,1,0,48,96, + 56,112,48,96,48,96,0,0,0,0,15,192,48,224,112,96, + 96,96,0,96,0,96,15,224,63,224,126,96,240,96,224,96, + 192,96,192,96,65,224,62,120,13,22,44,15,1,0,7,128, + 13,128,12,192,12,128,13,128,15,0,0,0,15,192,48,224, + 112,96,96,96,0,96,0,96,15,224,63,224,126,96,240,96, + 224,96,192,96,192,96,65,224,62,120,19,15,45,22,2,0, + 31,143,0,113,176,192,96,224,192,224,224,96,128,192,96,0, + 192,96,7,255,192,28,192,0,112,192,0,96,192,0,192,192, + 0,192,224,0,193,96,64,194,112,224,124,31,0,12,22,44, + 14,1,249,7,224,24,96,32,32,96,0,64,0,192,0,192, + 0,192,0,192,0,192,0,224,0,112,16,120,96,63,192,31, + 128,2,0,2,0,7,128,3,128,1,128,3,0,12,0,13, + 23,46,15,1,0,24,0,60,0,12,0,6,0,3,0,1, + 0,1,128,0,0,7,192,24,96,32,48,96,24,64,24,192, + 24,255,240,192,0,192,0,192,0,224,0,96,0,112,8,56, + 48,15,192,13,23,46,15,1,0,0,96,0,240,0,192,1, + 128,1,128,3,0,6,0,0,0,7,192,24,96,32,48,96, + 24,64,24,192,24,255,240,192,0,192,0,192,0,224,0,96, + 0,112,8,56,48,15,192,13,23,46,15,1,0,3,0,7, + 128,15,128,12,192,24,96,16,32,32,16,0,0,7,192,24, + 96,32,48,96,24,64,24,192,24,255,240,192,0,192,0,192, + 0,224,0,96,0,112,8,56,48,15,192,13,21,42,15,1, + 0,24,48,56,112,56,112,48,96,0,0,0,0,7,192,24, + 96,32,48,96,24,64,24,192,24,255,240,192,0,192,0,192, + 0,224,0,96,0,112,8,56,48,15,192,7,23,23,9,0, + 0,224,224,112,48,24,12,4,0,24,120,24,24,24,24,24, + 24,24,24,24,24,24,24,126,8,23,23,9,1,0,7,7, + 14,12,24,48,32,0,48,240,48,48,48,48,48,48,48,48, + 48,48,48,48,252,9,23,46,9,0,0,28,0,28,0,62, + 0,119,0,99,0,193,128,128,128,0,0,24,0,120,0,24, + 0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,0,126,0,10,21,42,9,0,0,193, + 128,193,128,227,192,193,128,0,0,0,0,24,0,120,0,24, + 0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,0,126,0,14,23,46,16,1,0,12, + 0,62,24,3,240,3,192,30,224,48,96,0,112,0,56,7, + 152,24,120,32,60,96,28,64,12,192,12,192,12,192,12,192, + 12,192,8,224,24,96,16,112,48,56,96,15,128,16,21,42, + 18,1,0,7,8,15,144,24,224,16,0,0,0,0,0,112, + 112,177,136,54,12,56,12,56,12,48,12,48,12,48,12,48, + 12,48,12,48,12,48,12,48,12,48,12,252,63,14,23,46, + 16,1,0,28,0,28,0,14,0,6,0,3,0,1,128,0, + 128,0,0,7,192,24,112,32,56,96,24,64,28,192,12,192, + 12,192,12,192,12,192,12,224,8,96,24,112,16,56,32,15, + 192,14,23,46,16,1,0,0,112,0,112,0,224,1,192,1, + 128,3,0,2,0,0,0,7,192,24,112,32,56,96,24,64, + 28,192,12,192,12,192,12,192,12,192,12,224,8,96,24,112, + 16,56,32,15,192,14,23,46,16,1,0,3,128,3,128,7, + 192,14,192,12,96,24,48,48,16,0,0,7,192,24,112,32, + 56,96,24,64,28,192,12,192,12,192,12,192,12,192,12,224, + 8,96,24,112,16,56,32,15,192,14,21,42,16,1,0,14, + 8,31,144,17,224,32,0,0,0,0,0,7,192,24,112,32, + 56,96,24,64,28,192,12,192,12,192,12,192,12,192,12,224, + 8,96,24,112,16,56,32,15,192,14,21,42,16,1,0,24, + 48,24,48,56,112,24,48,0,0,0,0,7,192,24,112,32, + 56,96,24,64,28,192,12,192,12,192,12,192,12,192,12,224, + 8,96,24,112,16,56,32,15,192,11,10,20,13,1,4,6, + 0,6,0,6,0,0,0,0,0,255,224,0,0,6,0,6, + 0,6,0,14,16,32,16,1,255,7,204,24,120,32,120,96, + 120,64,252,193,220,193,140,195,140,199,12,198,12,236,8,124, + 24,120,16,120,32,207,192,128,0,15,23,46,17,1,0,28, + 0,28,0,14,0,7,0,3,0,1,128,0,128,0,0,48, + 24,240,120,48,24,48,24,48,24,48,24,48,24,48,24,48, + 24,48,24,48,24,48,24,48,56,24,222,15,24,15,23,46, + 17,1,0,0,112,0,112,0,224,0,192,1,128,1,0,2, + 0,0,0,48,24,240,120,48,24,48,24,48,24,48,24,48, + 24,48,24,48,24,48,24,48,24,48,24,48,56,24,222,15, + 24,15,23,46,17,1,0,3,128,3,128,7,192,14,224,12, + 96,24,48,16,16,0,0,48,24,240,120,48,24,48,24,48, + 24,48,24,48,24,48,24,48,24,48,24,48,24,48,24,48, + 56,24,222,15,24,15,21,42,17,1,0,24,48,28,56,24, + 48,24,48,0,0,0,0,48,24,240,120,48,24,48,24,48, + 24,48,24,48,24,48,24,48,24,48,24,48,24,48,24,48, + 56,24,222,15,24,16,31,62,16,255,248,0,28,0,28,0, + 56,0,112,0,96,0,192,0,128,0,0,126,31,28,6,28, + 4,12,12,14,12,14,8,6,24,7,24,3,16,3,48,3, + 176,1,160,1,224,1,224,0,192,0,192,0,128,1,128,1, + 128,3,0,126,0,124,0,248,0,15,32,64,17,1,248,16, + 0,240,0,48,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,240,51,24,52,28,56,12,48,14,48,6,48,6,48, + 6,48,6,48,6,48,4,48,12,56,8,60,16,55,224,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,254,0,16, + 29,58,16,255,248,6,12,14,28,14,28,6,12,0,0,0, + 0,126,31,28,6,28,4,12,12,14,12,14,8,6,24,7, + 24,3,16,3,48,3,176,1,160,1,224,1,224,0,192,0, + 192,0,128,1,128,1,128,3,0,126,0,124,0,248,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--32-320-72-72-P-146-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 19 + Calculated Max Values w=13 h=30 x= 2 y=11 dx=15 dy= 0 ascent=25 len=60 + Font Bounding box w=47 h=44 x=-16 y=-10 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =19 descent= 0 + X Font ascent =19 descent= 0 + Max Font ascent =25 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr20n[619] U8G_SECTION(".progmem.u8g_font_gdr20n") = { + 0,47,44,240,246,19,0,0,0,0,42,57,0,25,251,19, + 0,12,13,26,14,1,11,6,0,6,0,134,0,102,48,242, + 240,27,128,6,0,27,128,114,240,230,48,6,32,6,0,6, + 0,12,11,22,13,1,3,6,0,6,0,6,0,6,0,6, + 0,255,240,6,0,6,0,6,0,6,0,6,0,4,8,8, + 7,2,251,112,240,48,48,48,32,64,192,9,1,2,11,1, + 8,255,128,4,4,4,7,2,0,112,240,240,224,13,30,60, + 15,1,251,0,24,0,56,0,48,0,48,0,112,0,96,0, + 96,0,224,0,192,1,192,1,128,1,128,3,128,3,0,7, + 0,6,0,6,0,14,0,12,0,12,0,28,0,24,0,56, + 0,48,0,48,0,112,0,96,0,96,0,224,0,192,0,13, + 19,38,15,1,0,7,128,24,192,32,96,96,48,64,48,64, + 56,192,24,192,24,192,24,192,24,192,24,192,24,192,24,192, + 16,96,16,96,48,48,32,24,64,15,128,11,19,38,15,2, + 0,2,0,30,0,126,0,134,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,15,0,127,224,11,19,38,15,2,0,15,128,48, + 192,96,96,96,96,96,96,0,96,0,96,0,192,0,192,1, + 128,3,0,7,0,6,0,12,0,24,0,48,32,112,32,224, + 32,255,224,11,19,38,15,2,0,31,0,113,128,96,192,224, + 192,0,192,0,192,1,128,3,0,15,0,3,192,0,192,0, + 224,0,96,0,96,0,96,0,96,128,192,193,128,127,0,12, + 19,38,15,1,0,0,64,1,192,3,192,3,192,6,192,12, + 192,12,192,24,192,48,192,48,192,96,192,224,192,255,240,0, + 192,0,192,0,192,0,192,0,192,7,240,11,19,38,15,2, + 0,63,224,32,0,32,0,96,0,96,0,96,0,96,0,127, + 0,97,192,0,192,0,96,0,96,0,96,0,96,0,96,0, + 64,128,192,193,128,63,0,12,20,40,15,2,0,0,192,7, + 0,14,0,24,0,48,0,112,0,96,0,96,0,207,128,240, + 224,224,96,192,112,192,48,192,48,192,48,96,48,96,32,32, + 96,48,64,15,128,12,19,38,15,2,0,255,240,128,96,128, + 96,0,224,0,192,0,192,1,128,1,128,3,0,3,0,7, + 0,6,0,6,0,12,0,12,0,28,0,24,0,56,0,48, + 0,12,19,38,15,2,0,31,128,48,192,96,96,224,96,224, + 96,224,96,248,192,127,128,31,128,31,192,49,224,96,112,192, + 112,192,48,192,48,192,32,96,32,112,64,31,128,12,20,40, + 15,2,255,15,128,49,192,32,224,64,96,192,112,192,48,192, + 48,192,48,192,48,96,112,48,176,31,48,0,96,0,96,0, + 96,0,192,1,128,7,0,30,0,48,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--32-320-72-72-P-146-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 20, '1' Height: 19 + Calculated Max Values w=27 h=32 x= 3 y=16 dx=27 dy= 0 ascent=26 len=80 + Font Bounding box w=47 h=44 x=-16 y=-10 + Calculated Min Values x=-4 y=-8 dx= 0 dy= 0 + Pure Font ascent =20 descent=-8 + X Font ascent =25 descent=-8 + Max Font ascent =26 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr20r[4232] U8G_SECTION(".progmem.u8g_font_gdr20r") = { + 0,47,44,240,246,20,4,220,11,144,32,127,248,26,248,25, + 248,0,0,0,7,0,0,4,23,23,9,2,0,48,112,112, + 112,112,112,112,112,112,96,96,96,96,96,96,96,96,64,0, + 112,240,240,224,8,10,10,14,3,13,227,199,199,199,199,195, + 195,195,195,194,14,18,36,15,1,2,1,24,3,24,3,16, + 2,48,6,48,63,252,4,96,12,96,12,96,12,64,8,192, + 255,248,24,128,17,128,49,128,49,128,49,0,35,0,12,25, + 50,15,1,253,6,0,6,0,6,0,31,192,63,240,102,96, + 102,0,102,0,102,0,118,0,62,0,31,128,7,192,7,224, + 6,112,6,48,6,48,134,48,198,48,230,96,255,192,127,128, + 6,0,6,0,6,0,20,20,60,22,1,255,30,0,192,99, + 1,128,67,3,128,193,131,0,193,134,0,193,140,0,193,156, + 0,97,24,0,99,48,0,60,115,192,0,108,96,0,200,96, + 1,152,48,3,152,48,3,24,48,6,24,48,14,8,32,28, + 12,96,24,7,128,48,0,0,19,22,66,21,2,0,3,192, + 0,4,224,0,8,96,0,24,96,0,24,96,0,24,96,0, + 24,192,0,29,128,0,15,0,0,12,0,0,28,63,224,62, + 14,128,119,6,0,99,134,0,193,134,0,193,198,0,192,236, + 0,192,124,0,192,60,0,96,30,0,48,47,192,31,195,128, + 3,10,10,8,3,13,224,192,192,192,192,192,192,192,192,192, + 7,30,30,10,2,251,2,12,24,24,48,48,96,96,96,96, + 192,192,192,192,192,192,192,192,192,192,224,96,96,96,112,48, + 56,24,12,2,7,30,30,10,1,251,128,96,48,56,24,28, + 12,12,12,14,6,6,6,6,6,6,6,6,6,6,12,12, + 12,12,24,24,48,48,96,128,12,13,26,14,1,11,6,0, + 6,0,134,0,102,48,242,240,27,128,6,0,27,128,114,240, + 230,48,6,32,6,0,6,0,12,11,22,13,1,3,6,0, + 6,0,6,0,6,0,6,0,255,240,6,0,6,0,6,0, + 6,0,6,0,4,8,8,7,2,251,112,240,48,48,48,32, + 64,192,9,1,2,11,1,8,255,128,4,4,4,7,2,0, + 112,240,240,224,13,30,60,15,1,251,0,24,0,56,0,48, + 0,48,0,112,0,96,0,96,0,224,0,192,1,192,1,128, + 1,128,3,128,3,0,7,0,6,0,6,0,14,0,12,0, + 12,0,28,0,24,0,56,0,48,0,48,0,112,0,96,0, + 96,0,224,0,192,0,13,19,38,15,1,0,7,128,24,192, + 32,96,96,48,64,48,64,56,192,24,192,24,192,24,192,24, + 192,24,192,24,192,24,192,16,96,16,96,48,48,32,24,64, + 15,128,11,19,38,15,2,0,2,0,30,0,126,0,134,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,15,0,127,224,11,19, + 38,15,2,0,15,128,48,192,96,96,96,96,96,96,0,96, + 0,96,0,192,0,192,1,128,3,0,7,0,6,0,12,0, + 24,0,48,32,112,32,224,32,255,224,11,19,38,15,2,0, + 31,0,113,128,96,192,224,192,0,192,0,192,1,128,3,0, + 15,0,3,192,0,192,0,224,0,96,0,96,0,96,0,96, + 128,192,193,128,127,0,12,19,38,15,1,0,0,64,1,192, + 3,192,3,192,6,192,12,192,12,192,24,192,48,192,48,192, + 96,192,224,192,255,240,0,192,0,192,0,192,0,192,0,192, + 7,240,11,19,38,15,2,0,63,224,32,0,32,0,96,0, + 96,0,96,0,96,0,127,0,97,192,0,192,0,96,0,96, + 0,96,0,96,0,96,0,64,128,192,193,128,63,0,12,20, + 40,15,2,0,0,192,7,0,14,0,24,0,48,0,112,0, + 96,0,96,0,207,128,240,224,224,96,192,112,192,48,192,48, + 192,48,96,48,96,32,32,96,48,64,15,128,12,19,38,15, + 2,0,255,240,128,96,128,96,0,224,0,192,0,192,1,128, + 1,128,3,0,3,0,7,0,6,0,6,0,12,0,12,0, + 28,0,24,0,56,0,48,0,12,19,38,15,2,0,31,128, + 48,192,96,96,224,96,224,96,224,96,248,192,127,128,31,128, + 31,192,49,224,96,112,192,112,192,48,192,48,192,32,96,32, + 112,64,31,128,12,20,40,15,2,255,15,128,49,192,32,224, + 64,96,192,112,192,48,192,48,192,48,192,48,96,112,48,176, + 31,48,0,96,0,96,0,96,0,192,1,128,7,0,30,0, + 48,0,4,15,15,7,2,0,112,240,240,96,0,0,0,0, + 0,0,0,112,240,240,224,4,20,20,7,2,251,112,240,240, + 96,0,0,0,0,0,0,0,0,112,240,48,48,48,32,64, + 192,12,10,20,14,1,4,0,48,0,240,7,192,62,0,248, + 0,240,0,126,0,15,128,1,240,0,112,12,6,12,14,1, + 6,255,240,0,0,0,0,0,0,0,0,255,240,12,10,20, + 14,1,4,96,0,248,0,31,0,7,224,0,240,1,240,7, + 192,62,0,240,0,192,0,10,23,46,14,2,0,31,0,99, + 128,65,192,192,192,192,192,128,192,0,192,1,128,1,128,3, + 0,3,0,6,0,14,0,12,0,12,0,12,0,12,0,0, + 0,0,0,14,0,30,0,30,0,28,0,24,25,75,26,1, + 251,0,63,128,1,192,224,2,0,56,12,0,28,24,0,12, + 16,60,142,32,67,134,96,129,135,65,129,131,193,1,131,195, + 1,131,195,1,131,195,1,131,195,1,131,195,1,131,195,1, + 130,225,129,134,97,131,132,112,197,200,48,120,240,56,0,0, + 28,0,4,15,0,28,3,192,112,0,127,128,19,20,60,19, + 0,0,0,64,0,0,224,0,0,224,0,1,224,0,1,240, + 0,1,176,0,3,48,0,3,56,0,3,24,0,6,28,0, + 6,28,0,6,12,0,15,254,0,12,6,0,8,6,0,24, + 7,0,24,3,0,16,3,0,48,3,128,254,15,224,14,20, + 40,17,1,0,63,192,240,112,48,56,48,24,48,24,48,24, + 48,24,48,48,48,224,63,224,48,112,48,56,48,28,48,12, + 48,12,48,12,48,12,48,24,48,48,255,192,14,20,40,17, + 1,0,3,248,12,28,16,8,48,0,96,0,96,0,64,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,96,0, + 96,0,112,0,56,4,28,24,7,224,17,20,60,19,1,0, + 63,224,0,240,56,0,48,12,0,48,6,0,48,3,0,48, + 3,0,48,3,128,48,1,128,48,1,128,48,1,128,48,1, + 128,48,1,128,48,1,128,48,3,0,48,3,0,48,3,0, + 48,6,0,48,12,0,48,56,0,255,224,0,13,20,40,16, + 1,0,255,240,48,16,48,16,48,16,48,0,48,0,48,0, + 48,0,48,0,63,224,48,64,48,0,48,0,48,0,48,0, + 48,0,48,8,48,8,48,24,255,248,12,20,40,15,1,0, + 255,240,48,16,48,16,48,16,48,0,48,0,48,0,48,0, + 48,0,63,192,48,128,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,254,0,18,20,60,19,1,0,1,254, + 0,6,15,0,8,0,0,16,0,0,32,0,0,96,0,0, + 64,0,0,192,0,0,192,0,0,192,0,0,192,0,0,192, + 31,192,192,7,0,192,3,0,96,3,0,96,3,0,48,3, + 0,24,3,0,12,3,0,3,252,0,19,20,60,21,1,0, + 252,7,224,48,1,128,48,1,128,48,1,128,48,1,128,48, + 1,128,48,1,128,48,1,128,48,1,128,63,255,128,48,1, + 128,48,1,128,48,1,128,48,1,128,48,1,128,48,1,128, + 48,1,128,48,1,128,48,1,128,252,7,224,6,20,20,10, + 2,0,252,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,252,11,25,50,10,253,251,15,224,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,1,0,1,0,3,0,98,0,252,0,17,20, + 60,19,1,0,252,127,0,48,24,0,48,48,0,48,96,0, + 48,224,0,49,192,0,49,128,0,51,0,0,54,0,0,62, + 0,0,54,0,0,55,0,0,51,128,0,49,192,0,48,224, + 0,48,112,0,48,120,0,48,60,0,48,30,0,252,15,128, + 13,20,40,15,1,0,252,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,8,48,8,48,24,255,248,24,20, + 60,26,1,0,248,0,62,60,0,56,60,0,120,62,0,120, + 54,0,216,54,0,216,55,0,152,51,1,152,51,129,152,49, + 131,24,49,195,24,49,198,24,48,198,24,48,230,24,48,108, + 24,48,124,24,48,56,24,48,56,24,48,56,24,252,16,255, + 19,20,60,21,1,0,240,7,224,56,1,128,60,1,128,60, + 1,128,62,1,128,55,1,128,51,129,128,51,129,128,49,193, + 128,48,225,128,48,97,128,48,113,128,48,57,128,48,29,128, + 48,13,128,48,15,128,48,7,128,48,3,128,48,3,128,252, + 1,128,17,20,60,19,1,0,3,240,0,12,24,0,16,12, + 0,48,6,0,32,3,0,96,3,0,64,3,128,192,1,128, + 192,1,128,192,1,128,192,1,128,192,1,128,192,1,128,224, + 1,0,96,3,0,96,2,0,48,6,0,56,4,0,12,24, + 0,7,224,0,15,20,40,17,1,0,63,224,240,56,48,28, + 48,14,48,6,48,6,48,6,48,6,48,12,48,12,52,56, + 51,224,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 254,0,19,25,75,19,1,251,3,240,0,12,24,0,16,12, + 0,48,6,0,32,3,0,96,3,0,64,3,128,192,1,128, + 192,1,128,192,1,128,192,1,128,192,1,128,192,1,128,224, + 1,0,96,3,0,96,3,0,48,6,0,24,4,0,12,24, + 0,7,240,0,0,112,0,0,24,0,0,14,32,0,7,192, + 0,1,128,18,20,60,18,1,0,63,192,0,240,112,0,48, + 24,0,48,12,0,48,12,0,48,12,0,48,12,0,48,24, + 0,48,112,0,63,224,0,63,192,0,49,192,0,48,224,0, + 48,112,0,48,112,0,48,56,0,48,60,0,48,28,0,48, + 15,0,252,15,192,12,20,40,15,2,0,15,224,48,224,64, + 64,192,0,192,0,224,0,248,0,126,0,127,0,31,192,7, + 224,1,240,0,240,0,112,0,48,0,48,128,32,192,96,224, + 192,127,0,16,20,40,18,1,0,255,255,129,131,129,129,129, + 129,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,15, + 240,19,20,60,21,1,0,252,7,224,48,1,128,48,1,128, + 48,1,128,48,1,128,48,1,128,48,1,128,48,1,128,48, + 1,128,48,1,128,48,1,128,48,1,128,48,1,128,48,1, + 128,48,1,128,48,1,0,24,3,0,28,6,0,14,12,0, + 3,240,0,20,20,60,21,0,0,254,3,240,56,0,192,24, + 0,128,28,1,128,12,1,128,14,3,0,14,3,0,6,3, + 0,7,6,0,7,6,0,3,6,0,3,140,0,1,140,0, + 1,204,0,1,216,0,0,216,0,0,248,0,0,240,0,0, + 112,0,0,96,0,27,20,80,27,0,0,254,4,15,224,56, + 4,3,0,24,14,3,0,24,14,3,0,28,15,3,0,28, + 27,2,0,12,27,6,0,12,27,134,0,12,49,134,0,14, + 49,134,0,14,49,196,0,6,96,204,0,6,96,204,0,7, + 96,236,0,7,192,108,0,3,192,120,0,3,192,120,0,3, + 128,56,0,3,128,56,0,3,0,48,0,19,20,60,20,0, + 0,127,31,192,60,7,0,28,6,0,14,6,0,7,12,0, + 7,28,0,3,152,0,1,240,0,1,240,0,0,224,0,0, + 240,0,1,240,0,1,184,0,3,28,0,7,12,0,6,14, + 0,12,7,0,28,3,128,56,3,192,255,15,224,18,20,60, + 19,0,0,240,31,192,56,7,0,28,6,0,12,12,0,14, + 12,0,7,24,0,7,24,0,3,48,0,3,176,0,1,224, + 0,1,224,0,0,192,0,0,192,0,0,192,0,0,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,7,248,0,14, + 20,40,17,1,0,127,252,96,28,64,56,64,120,0,112,0, + 224,0,224,1,192,3,192,3,128,7,0,7,0,14,0,30, + 0,28,0,56,0,56,4,112,4,240,12,255,252,7,30,30, + 10,2,251,254,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 254,13,30,60,15,1,251,192,0,192,0,96,0,96,0,112, + 0,48,0,48,0,24,0,24,0,28,0,12,0,12,0,14, + 0,6,0,6,0,3,0,3,0,3,128,1,128,1,128,0, + 192,0,192,0,192,0,96,0,96,0,112,0,48,0,48,0, + 24,0,24,7,30,30,10,1,251,254,6,6,6,6,6,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,6,254,12,15,30,16,2,9,2,0,6, + 0,15,0,15,0,27,0,27,128,17,128,49,192,49,192,96, + 192,96,224,96,96,192,112,192,48,128,32,13,1,2,15,1, + 253,255,248,7,7,7,10,0,16,96,240,56,24,12,4,2, + 13,15,30,15,1,0,15,192,48,224,112,96,96,96,0,96, + 0,96,15,224,63,224,126,96,240,96,224,96,192,96,192,96, + 65,224,62,120,15,24,48,16,0,0,48,0,240,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,240,49,248, + 54,28,60,12,56,14,48,6,48,6,48,6,48,6,48,6, + 48,4,48,12,48,8,28,16,7,224,12,15,30,14,1,0, + 7,224,24,96,32,32,96,0,64,0,192,0,192,0,192,0, + 192,0,192,0,192,0,96,0,112,32,56,112,31,128,15,24, + 48,17,1,0,0,24,0,120,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,7,248,24,56,32,24,96,24,64,24, + 192,24,192,24,192,24,192,24,192,24,192,24,96,24,112,56, + 56,222,15,24,13,15,30,15,1,0,7,192,24,96,32,48, + 96,24,64,24,192,24,255,240,192,0,192,0,192,0,224,0, + 96,0,112,8,56,48,15,192,11,24,48,10,1,0,3,224, + 4,192,24,0,16,0,48,0,48,0,48,0,48,0,48,0, + 255,0,50,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,254,0,15,23, + 46,16,1,248,7,134,24,252,32,96,96,48,96,48,96,48, + 96,48,112,96,56,64,31,128,8,0,16,0,60,0,63,224, + 15,248,63,252,112,124,224,12,192,12,192,8,96,16,112,32, + 31,192,16,24,48,18,1,0,16,0,240,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,112,49,136,54,12, + 56,12,56,12,48,12,48,12,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,252,63,6,21,21,9,1,0,48,112, + 112,96,0,0,48,240,48,48,48,48,48,48,48,48,48,48, + 48,48,252,9,29,58,8,252,248,1,128,3,128,3,128,3, + 0,0,0,0,0,1,128,7,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,0,3,0,2,0,124, + 0,248,0,15,24,48,16,1,0,16,0,240,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,252,48,112,48, + 224,49,128,51,0,54,0,62,0,54,0,55,0,51,128,49, + 192,48,224,48,112,48,120,252,62,6,24,24,9,1,0,16, + 240,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,252,24,15,45,26,1,0,240,240,120, + 51,25,140,52,26,12,56,28,12,56,28,12,48,24,12,48, + 24,12,48,24,12,48,24,12,48,24,12,48,24,12,48,24, + 12,48,24,12,48,24,12,252,126,63,16,15,30,18,1,0, + 112,112,177,136,54,12,56,12,56,12,48,12,48,12,48,12, + 48,12,48,12,48,12,48,12,48,12,48,12,252,63,14,15, + 30,16,1,0,7,192,24,112,32,56,96,24,64,28,192,12, + 192,12,192,12,192,12,192,12,224,8,96,24,112,16,56,32, + 15,192,15,23,46,17,1,248,112,240,179,24,52,28,56,12, + 48,14,48,6,48,6,48,6,48,6,48,6,48,4,48,12, + 48,8,60,16,55,224,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,254,0,14,23,46,16,1,248,7,144,24,112, + 32,48,96,48,64,48,192,48,192,48,192,48,192,48,192,48, + 192,48,96,48,96,112,48,176,31,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,1,252,11,15,30,13,1,0, + 49,224,243,224,52,64,56,64,56,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,254,0,9,15, + 30,12,2,0,63,0,67,0,193,0,192,0,224,0,248,0, + 126,0,63,0,15,128,3,128,1,128,129,128,129,0,195,0, + 252,0,10,20,40,11,1,0,16,0,48,0,48,0,48,0, + 48,0,255,192,49,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,128,31,64, + 15,15,30,17,1,0,48,24,240,120,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,48,24,48,56, + 24,222,15,24,15,15,30,16,0,0,252,62,56,12,56,8, + 24,24,28,24,12,16,12,48,14,48,6,32,7,96,7,64, + 3,64,3,192,1,128,1,0,22,15,45,23,0,0,252,16, + 124,48,24,24,56,56,16,24,56,48,24,60,48,28,108,48, + 12,110,32,12,78,96,12,198,96,14,199,64,6,131,64,7, + 131,192,7,131,192,3,1,128,2,1,0,16,15,30,16,0, + 0,254,63,60,28,28,16,14,48,6,96,7,192,3,192,1, + 192,3,192,6,224,12,112,12,56,24,24,56,28,252,63,16, + 23,46,16,255,248,126,31,28,6,28,4,12,12,14,12,14, + 8,6,24,7,24,3,16,3,48,3,176,1,160,1,224,1, + 224,0,192,0,192,0,128,1,128,1,128,3,0,126,0,124, + 0,248,0,12,15,30,14,1,0,127,240,64,96,64,224,1, + 192,1,128,3,128,7,0,6,0,14,0,28,0,28,0,56, + 16,112,16,112,48,255,240,8,30,30,11,2,251,3,6,12, + 8,24,24,24,24,28,12,12,12,12,24,48,248,28,12,12, + 12,12,28,24,24,24,24,24,12,6,3,2,32,32,7,3, + 250,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,8,30,30,11,1,251,192,96,48,24,24,24,24,24,56, + 48,48,48,48,56,31,12,24,48,48,48,48,56,24,24,24, + 24,16,48,96,192,14,6,12,16,1,7,28,8,62,12,127, + 136,71,240,131,240,128,224,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--40-400-72-72-P-182-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=33 h=41 x= 4 y=23 dx=34 dy= 0 ascent=34 len=132 + Font Bounding box w=59 h=57 x=-20 y=-14 + Calculated Min Values x=-4 y=-11 dx= 0 dy= 0 + Pure Font ascent =25 descent=-9 + X Font ascent =31 descent=-9 + Max Font ascent =34 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr25[13042] U8G_SECTION(".progmem.u8g_font_gdr25") = { + 0,59,57,236,242,25,6,209,16,163,32,255,247,34,245,31, + 247,0,0,0,9,0,0,5,30,30,11,3,255,48,112,240, + 112,112,112,112,112,112,112,112,112,112,112,112,112,112,112,112, + 96,96,96,0,0,0,112,248,248,248,112,11,13,26,17,3, + 16,112,224,241,224,241,224,241,224,241,224,112,224,96,192,96, + 192,96,192,96,192,96,192,96,192,96,192,17,23,69,19,2, + 2,0,194,0,1,134,0,1,134,0,1,142,0,3,140,0, + 3,12,0,3,12,0,63,255,128,63,255,128,6,24,0,6, + 56,0,14,48,0,12,48,0,12,48,0,255,254,0,255,254, + 0,24,96,0,24,224,0,48,192,0,48,192,0,48,192,0, + 113,192,0,97,128,0,16,30,60,19,1,253,1,128,1,128, + 1,128,3,224,15,252,57,254,49,156,113,136,113,128,113,128, + 121,128,61,128,63,128,31,224,7,248,1,252,1,190,1,143, + 1,143,1,135,193,135,193,135,225,142,241,142,255,252,63,240, + 15,192,1,128,1,128,1,128,25,25,100,27,1,255,15,128, + 6,0,63,192,28,0,113,224,56,0,112,224,56,0,224,112, + 112,0,224,112,224,0,224,112,224,0,224,113,192,0,224,115, + 128,0,112,231,0,0,120,231,0,0,63,206,60,0,31,28, + 254,0,0,29,207,0,0,57,199,0,0,115,131,128,0,227, + 131,128,0,227,131,128,1,195,131,128,3,131,131,128,3,131, + 131,128,7,1,199,0,14,1,199,0,28,0,254,0,24,0, + 120,0,24,28,84,27,2,0,0,248,0,1,252,0,3,30, + 0,7,14,0,14,14,0,14,14,0,14,14,0,14,12,0, + 14,28,0,15,56,0,7,112,0,7,192,0,7,131,255,15, + 135,255,29,193,242,57,224,240,112,240,112,112,112,112,224,120, + 112,224,60,112,224,30,224,224,15,224,224,7,192,240,3,192, + 120,3,240,60,30,248,31,252,127,7,224,56,4,13,13,10, + 3,16,112,240,240,240,240,112,96,96,96,96,96,96,96,9, + 37,74,13,3,250,0,128,3,128,7,0,14,0,12,0,28, + 0,24,0,56,0,56,0,112,0,112,0,112,0,112,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,112,0,112,0,112,0,112,0,56, + 0,56,0,28,0,28,0,14,0,7,0,3,128,0,128,9, + 37,74,13,1,250,128,0,224,0,112,0,56,0,28,0,28, + 0,14,0,14,0,14,0,7,0,7,0,7,0,7,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,3,128,7,0,7,0,7,0,7,0,14,0,14, + 0,12,0,28,0,24,0,56,0,112,0,224,0,128,0,16, + 16,32,18,1,14,1,128,1,128,1,128,97,132,113,142,121, + 159,31,248,7,192,3,192,31,248,121,158,241,142,33,134,1, + 128,1,128,1,128,15,14,28,16,1,4,3,128,3,128,3, + 128,3,128,3,128,3,128,255,254,255,254,3,128,3,128,3, + 128,3,128,3,128,3,128,6,10,10,9,2,250,60,252,60, + 28,28,24,24,48,32,64,11,2,4,13,1,9,127,224,255, + 224,5,5,5,9,2,255,112,248,248,248,112,17,38,114,19, + 1,249,0,1,128,0,7,0,0,7,0,0,7,0,0,14, + 0,0,14,0,0,14,0,0,28,0,0,28,0,0,56,0, + 0,56,0,0,56,0,0,112,0,0,112,0,0,112,0,0, + 224,0,0,224,0,1,192,0,1,192,0,1,192,0,3,128, + 0,3,128,0,3,128,0,7,0,0,7,0,0,14,0,0, + 14,0,0,14,0,0,28,0,0,28,0,0,28,0,0,56, + 0,0,56,0,0,112,0,0,112,0,0,112,0,0,224,0, + 0,192,0,0,17,24,72,19,1,0,3,224,0,15,248,0, + 28,60,0,56,30,0,48,14,0,112,7,0,96,7,0,96, + 7,128,224,3,128,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,224,3,128,224,3,128,240,3,0,112,7,0, + 112,7,0,120,6,0,60,14,0,30,28,0,15,248,0,7, + 224,0,14,24,48,19,3,0,1,128,7,128,63,128,255,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,15,224,127,252,14,24,48,19,2,0,3,224, + 15,248,24,120,48,60,112,28,96,28,224,28,0,28,0,24, + 0,56,0,48,0,112,0,224,1,192,1,128,3,128,7,0, + 14,0,28,0,24,4,48,4,112,12,255,252,255,252,15,24, + 48,19,1,0,3,224,15,248,28,120,56,60,112,28,112,28, + 0,28,0,24,0,48,0,96,3,224,3,248,0,60,0,28, + 0,14,0,14,0,14,0,14,0,14,0,28,64,28,240,120, + 63,240,15,192,16,24,48,19,1,0,0,24,0,120,0,120, + 0,248,1,248,1,184,3,56,7,56,6,56,12,56,28,56, + 24,56,48,56,112,56,96,56,255,255,255,254,0,56,0,56, + 0,56,0,56,0,56,0,124,3,255,15,24,48,19,1,0, + 0,4,31,252,31,248,24,0,24,0,24,0,48,0,48,0, + 48,0,63,224,63,248,48,124,64,28,0,30,0,14,0,14, + 0,14,0,14,0,14,0,28,64,28,240,120,63,240,15,192, + 15,24,48,19,2,0,0,56,0,240,3,192,7,0,14,0, + 28,0,56,0,112,0,112,0,99,224,239,248,248,60,240,28, + 224,30,224,14,224,14,224,14,224,14,112,14,112,12,56,28, + 60,56,31,240,7,192,15,23,46,19,2,0,127,254,255,254, + 192,12,192,12,128,28,0,24,0,56,0,48,0,112,0,96, + 0,96,0,224,0,192,1,192,1,128,3,128,3,0,7,0, + 7,0,14,0,14,0,28,0,56,0,15,24,48,19,2,0, + 15,192,63,240,120,120,112,60,240,28,224,28,224,28,240,24, + 120,48,62,96,31,192,7,240,24,120,48,60,112,30,96,14, + 224,14,224,14,224,14,224,12,112,28,124,56,63,240,15,192, + 15,25,50,19,2,255,7,192,15,240,56,120,48,60,112,28, + 96,28,224,14,224,14,224,14,224,14,240,14,112,30,120,62, + 63,238,15,140,0,28,0,28,0,24,0,56,0,112,0,224, + 1,192,7,128,30,0,48,0,5,19,19,9,2,255,120,248, + 248,248,96,0,0,0,0,0,0,0,0,0,112,248,248,248, + 112,6,24,24,9,2,250,120,248,248,248,96,0,0,0,0, + 0,0,0,0,0,60,252,60,28,28,24,24,48,32,64,15, + 13,26,18,1,5,0,2,0,30,0,254,3,240,31,192,126, + 0,240,0,252,0,63,128,7,224,1,252,0,62,0,12,15, + 8,16,18,1,7,127,254,255,254,0,0,0,0,0,0,0, + 0,127,254,255,254,15,13,26,18,1,5,96,0,252,0,63, + 0,15,224,1,252,0,126,0,30,0,126,3,240,31,192,126, + 0,248,0,192,0,14,30,60,17,2,255,7,224,31,240,56, + 120,112,56,224,28,224,28,224,28,192,28,0,28,0,56,0, + 56,0,112,0,240,0,224,1,192,3,128,3,128,7,0,7, + 0,7,0,7,0,7,0,0,0,0,0,0,0,7,0,15, + 128,15,128,15,128,7,0,30,33,132,32,1,249,0,7,248, + 0,0,63,254,0,0,240,31,128,1,192,7,192,3,0,1, + 224,6,0,0,240,12,0,0,112,24,0,0,120,56,3,198, + 56,48,15,252,56,112,28,60,60,112,56,28,28,96,112,28, + 28,224,96,28,28,224,224,28,28,224,224,28,28,224,224,28, + 28,224,224,28,28,224,224,28,28,224,224,28,24,240,240,28, + 56,112,112,28,48,112,120,60,96,120,60,94,224,56,31,143, + 128,60,15,15,0,30,0,0,0,31,0,0,0,15,128,0, + 32,7,192,0,192,1,248,15,128,0,255,254,0,0,31,240, + 0,23,25,75,24,0,0,0,8,0,0,56,0,0,60,0, + 0,60,0,0,108,0,0,110,0,0,110,0,0,198,0,0, + 199,0,0,199,0,1,131,0,1,131,128,1,131,128,3,1, + 128,3,255,192,3,255,192,6,0,224,6,0,224,6,0,224, + 12,0,112,12,0,112,12,0,112,24,0,56,28,0,120,255, + 1,254,19,25,75,22,1,0,31,240,0,255,254,0,28,31, + 0,28,7,128,28,3,128,28,3,128,28,3,128,28,3,128, + 28,7,0,28,6,0,28,28,0,31,254,0,31,255,0,28, + 15,128,28,3,192,28,1,224,28,0,224,28,0,224,28,0, + 224,28,0,224,28,1,224,28,1,192,28,7,128,63,255,0, + 255,252,0,19,25,75,21,1,0,0,254,0,3,255,192,7, + 7,192,12,1,128,24,0,0,56,0,0,112,0,0,112,0, + 0,112,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,112,0,0,112, + 0,0,120,0,0,60,0,64,30,1,224,15,135,128,7,254, + 0,1,248,0,21,25,75,24,1,0,31,248,0,255,255,0, + 28,15,128,28,3,192,28,1,224,28,0,240,28,0,112,28, + 0,112,28,0,120,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,112,28,0,112, + 28,0,112,28,0,224,28,1,224,28,3,192,28,15,128,63, + 254,0,255,248,0,18,25,75,20,1,0,255,255,0,63,255, + 0,28,3,0,28,1,0,28,1,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,31,252,0,31,252,0,28, + 8,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,64,28,0,192,28,1,128, + 63,255,128,255,255,128,17,25,75,19,1,0,255,255,128,63, + 255,128,28,3,0,28,1,0,28,1,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,31,252,0,31,248,0, + 28,24,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,62,0,0,255,128,0,21,25,75,23,1,0,0,127,0, + 1,255,192,7,3,224,14,0,192,28,0,0,56,0,0,48, + 0,0,112,0,0,112,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,15,248,224,1,224,224,0,224,224,0,224, + 112,0,224,112,0,224,120,0,224,60,0,224,30,0,224,15, + 129,192,7,255,128,1,252,0,24,25,75,26,1,0,255,129, + 255,62,0,124,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,31, + 255,248,31,255,248,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,62,0,124,255,129,255,9,25,50,12,1,0,255, + 128,62,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,62,0,255, + 128,15,32,64,12,252,249,7,254,0,248,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,96,0,96,0,224,0, + 192,49,128,127,0,252,0,22,25,75,23,1,0,255,135,248, + 62,1,192,28,3,128,28,7,0,28,14,0,28,12,0,28, + 24,0,28,56,0,28,112,0,28,224,0,29,192,0,31,128, + 0,31,192,0,29,224,0,28,224,0,28,112,0,28,56,0, + 28,60,0,28,30,0,28,15,0,28,7,128,28,3,192,28, + 3,224,62,1,252,255,128,240,18,25,75,19,1,0,255,128, + 0,62,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,192,28,0,128, + 30,1,128,63,255,128,255,255,128,30,25,100,32,1,0,254, + 0,1,248,30,0,3,224,31,0,3,224,31,0,3,224,31, + 0,7,224,27,128,6,224,27,128,14,224,25,192,12,224,25, + 192,12,224,24,224,28,224,24,224,24,224,24,224,56,224,24, + 112,48,224,24,112,112,224,24,56,96,224,24,56,96,224,24, + 28,224,224,24,28,192,224,24,31,192,224,24,15,128,224,24, + 15,128,224,24,7,128,224,24,7,0,224,60,7,1,224,255, + 2,7,252,24,25,75,26,1,0,248,1,255,60,0,124,30, + 0,56,30,0,56,31,0,56,31,128,56,29,128,56,29,192, + 56,28,224,56,28,96,56,28,112,56,28,56,56,28,28,56, + 28,28,56,28,14,56,28,7,56,28,7,56,28,3,184,28, + 3,248,28,1,248,28,0,248,28,0,248,28,0,120,62,0, + 56,255,128,24,21,25,75,24,1,0,0,252,0,3,255,0, + 7,7,128,12,3,192,24,1,224,56,0,224,112,0,112,112, + 0,112,96,0,120,224,0,56,224,0,56,224,0,56,224,0, + 56,224,0,56,224,0,56,224,0,56,240,0,48,112,0,112, + 112,0,96,120,0,224,60,0,192,30,1,128,15,7,0,7, + 254,0,1,248,0,18,25,75,21,1,0,31,248,0,255,254, + 0,28,31,0,28,7,128,28,3,192,28,1,192,28,1,192, + 28,1,192,28,1,192,28,1,192,28,3,128,28,7,128,28, + 15,0,29,254,0,28,248,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 62,0,0,255,128,0,24,31,93,24,1,250,0,252,0,3, + 255,0,7,7,128,12,3,192,24,1,224,56,0,224,112,0, + 112,112,0,112,96,0,120,224,0,56,224,0,56,224,0,56, + 224,0,56,224,0,56,224,0,56,224,0,56,240,0,48,112, + 0,112,112,0,112,56,0,224,60,0,192,30,1,192,15,7, + 128,7,254,0,1,252,0,0,14,0,0,7,0,0,3,130, + 0,1,227,0,0,254,0,0,60,21,25,75,22,1,0,31, + 240,0,255,254,0,28,31,0,28,7,0,28,7,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,7,0,28,6,0, + 28,28,0,31,240,0,28,112,0,28,56,0,28,56,0,28, + 28,0,28,30,0,28,14,0,28,7,0,28,7,128,28,3, + 128,28,3,192,62,1,248,255,129,240,15,25,50,19,2,0, + 7,224,31,248,120,124,112,24,224,0,224,0,224,0,240,0, + 248,0,126,0,63,128,31,224,7,248,1,252,0,124,0,30, + 0,30,0,14,128,14,128,14,192,28,224,28,240,120,255,240, + 31,128,21,25,75,22,0,0,127,255,248,255,255,248,192,112, + 24,192,112,24,128,112,16,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,248,0, + 3,254,0,24,25,75,26,1,0,255,129,255,62,0,124,28, + 0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28, + 0,112,14,0,112,14,0,112,15,0,224,7,193,192,3,255, + 128,0,126,0,25,25,100,26,0,0,255,128,127,128,28,0, + 14,0,30,0,12,0,14,0,28,0,14,0,24,0,15,0, + 24,0,7,0,56,0,7,0,48,0,3,128,48,0,3,128, + 112,0,3,192,96,0,1,192,224,0,1,192,224,0,1,224, + 192,0,0,225,192,0,0,225,128,0,0,113,128,0,0,115, + 128,0,0,123,0,0,0,59,0,0,0,63,0,0,0,62, + 0,0,0,30,0,0,0,30,0,0,0,8,0,0,33,25, + 125,34,0,0,255,128,192,127,128,28,0,192,14,0,28,0, + 192,12,0,28,1,224,12,0,14,1,224,28,0,14,1,224, + 28,0,14,3,240,24,0,14,3,112,24,0,7,3,48,24, + 0,7,7,56,56,0,7,6,56,56,0,7,6,24,48,0, + 7,14,28,48,0,3,140,28,48,0,3,140,14,112,0,3, + 156,14,96,0,3,152,14,96,0,1,216,7,96,0,1,248, + 7,96,0,1,240,7,224,0,1,240,3,192,0,1,240,3, + 192,0,0,224,3,192,0,0,224,1,192,0,0,192,1,128, + 0,23,25,75,25,1,0,255,135,252,60,0,240,28,0,224, + 30,1,192,15,1,128,7,3,128,7,135,0,3,198,0,1, + 238,0,0,252,0,0,252,0,0,120,0,0,120,0,0,124, + 0,0,254,0,1,206,0,1,207,0,3,135,128,3,3,128, + 7,3,192,14,1,224,12,0,224,28,0,240,60,0,248,255, + 3,254,23,25,75,24,0,0,248,1,254,60,0,120,30,0, + 96,14,0,224,7,0,192,7,129,192,3,129,128,3,195,128, + 1,195,0,0,231,0,0,238,0,0,126,0,0,124,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,124,0, + 1,255,0,18,25,75,21,1,0,63,255,192,63,255,192,48, + 3,128,32,7,128,96,15,0,96,14,0,0,30,0,0,28, + 0,0,56,0,0,120,0,0,112,0,0,240,0,1,224,0, + 1,192,0,3,192,0,3,128,0,7,0,0,15,0,0,14, + 0,0,30,0,64,60,0,64,56,0,192,120,0,192,127,255, + 192,255,255,192,9,37,74,12,3,250,255,128,255,128,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 255,128,255,128,17,38,114,19,1,249,192,0,0,224,0,0, + 112,0,0,112,0,0,48,0,0,56,0,0,56,0,0,24, + 0,0,28,0,0,28,0,0,14,0,0,14,0,0,6,0, + 0,7,0,0,7,0,0,3,0,0,3,128,0,3,128,0, + 1,192,0,1,192,0,0,192,0,0,224,0,0,224,0,0, + 96,0,0,112,0,0,112,0,0,56,0,0,56,0,0,24, + 0,0,28,0,0,28,0,0,12,0,0,14,0,0,14,0, + 0,7,0,0,7,0,0,3,0,0,1,128,9,37,74,13, + 1,250,255,128,255,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,255,128,255,128,16,19,38,20, + 2,11,0,128,3,128,3,192,3,192,7,224,6,224,14,224, + 12,112,12,112,28,120,24,56,24,56,48,28,48,28,112,28, + 96,14,96,14,224,7,128,6,17,2,6,19,1,251,127,255, + 128,255,255,0,8,9,9,13,1,20,224,240,112,56,56,28, + 14,6,3,16,18,36,18,2,0,3,224,31,240,56,120,112, + 56,240,56,192,56,0,56,0,120,7,248,28,56,112,56,96, + 56,224,56,224,56,224,120,241,185,127,63,60,24,18,30,90, + 20,0,0,12,0,0,124,0,0,188,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,60,0,28,255,0,29,143,0, + 31,7,128,30,3,128,28,3,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,128,28,1,128,28,3, + 128,30,3,0,31,134,0,7,252,0,1,240,0,15,18,36, + 17,2,0,1,248,7,254,28,28,56,12,112,4,112,0,224, + 0,224,0,224,0,224,0,224,0,224,0,240,0,112,4,120, + 6,62,28,31,248,7,224,19,30,90,21,2,0,0,3,0, + 0,63,0,0,15,0,0,7,0,0,7,0,0,7,0,0, + 7,0,0,7,0,0,7,0,0,7,0,0,7,0,0,7, + 0,3,247,0,15,255,0,28,31,0,56,15,0,48,7,0, + 112,7,0,96,7,0,224,7,0,224,7,0,224,7,0,224, + 7,0,224,7,0,240,7,0,112,15,0,120,31,0,60,55, + 224,31,231,192,7,131,0,14,18,36,18,2,0,3,192,15, + 240,28,120,48,56,112,28,96,28,224,28,255,252,255,248,224, + 0,224,0,224,0,240,0,112,4,120,12,60,56,31,240,7, + 192,15,30,60,12,1,0,0,120,1,254,3,28,6,8,14, + 0,12,0,12,0,28,0,28,0,28,0,28,0,28,0,127, + 240,255,224,28,64,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,62, + 0,255,192,18,27,81,19,1,247,3,224,192,15,255,192,28, + 63,0,56,28,0,112,14,0,112,14,0,112,14,0,112,14, + 0,120,28,0,60,56,0,31,240,0,7,192,0,6,0,0, + 12,0,0,28,0,0,31,224,0,15,254,0,12,63,128,24, + 3,192,112,1,192,224,1,192,224,1,192,224,3,128,240,3, + 128,124,15,0,63,252,0,7,240,0,21,30,90,22,1,0, + 12,0,0,252,0,0,124,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,31,0,28,63,128,28,227,192,29,129,192, + 31,1,192,30,1,192,30,1,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,192,62,3,192,255,143,248,9,27,54,11,1,0, + 28,0,60,0,60,0,60,0,24,0,0,0,0,0,0,0, + 0,0,12,0,252,0,60,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,60,0,255,128,11,36,72,10,252,247,0,224,1,224, + 1,224,1,224,0,192,0,0,0,0,0,0,0,0,0,96, + 7,224,1,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,192,0,192,1,192,1,128,35,0, + 254,0,248,0,19,30,90,20,1,0,12,0,0,252,0,0, + 60,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,31, + 224,28,7,0,28,14,0,28,28,0,28,48,0,28,224,0, + 29,192,0,31,128,0,29,192,0,29,224,0,28,240,0,28, + 120,0,28,56,0,28,28,0,28,30,0,28,15,0,60,7, + 128,255,3,224,9,30,60,11,1,0,12,0,252,0,124,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,60,0,255,128,31,18,72,32,1,0,12,30,3,192, + 252,127,15,224,60,199,152,240,29,131,176,112,31,3,224,112, + 30,3,192,112,28,3,128,112,28,3,128,112,28,3,128,112, + 28,3,128,112,28,3,128,112,28,3,128,112,28,3,128,112, + 28,3,128,112,28,3,128,112,28,3,128,112,60,7,192,240, + 255,159,243,254,21,18,54,22,1,0,12,15,0,252,63,128, + 60,99,192,29,129,192,29,1,192,30,1,192,30,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,192,28,1,192,28,1,192,62,3,192,255,143,248, + 16,18,36,20,2,0,3,224,15,248,28,60,48,30,112,14, + 96,15,224,7,224,7,224,7,224,7,224,7,224,7,240,6, + 112,14,120,12,62,56,31,240,7,192,18,27,81,21,1,247, + 12,28,0,252,127,0,60,143,128,29,7,128,30,3,128,30, + 3,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,128,28,1,128,28,3,128,30,3,0,31,6,0, + 29,252,0,28,120,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,62,0,0,255,128, + 0,19,27,81,21,2,247,1,241,128,7,251,0,28,31,0, + 56,15,0,48,7,0,112,7,0,96,7,0,224,7,0,224, + 7,0,224,7,0,224,7,0,224,7,0,240,7,0,112,15, + 0,120,31,0,60,55,0,31,231,0,7,135,0,0,7,0, + 0,7,0,0,7,0,0,7,0,0,7,0,0,7,0,0, + 7,0,0,7,0,0,63,224,14,18,36,16,1,0,12,60, + 252,252,61,140,29,12,31,4,30,0,30,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,30,0, + 255,128,11,18,36,15,2,0,31,0,127,128,115,192,225,128, + 224,128,240,0,248,0,126,0,31,0,15,192,3,224,1,224, + 128,224,128,224,192,224,225,192,255,128,62,0,13,25,50,14, + 0,0,4,0,12,0,28,0,28,0,28,0,28,0,28,0, + 127,248,255,240,28,32,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,30,56, + 15,240,7,128,21,18,54,21,0,0,12,0,192,252,15,192, + 28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,3,192,28,7,192,30,29,200,15,241,240,7,192,192, + 19,18,54,20,0,0,255,7,224,60,1,192,28,1,128,28, + 3,128,14,3,0,14,3,0,14,6,0,7,6,0,7,6, + 0,3,140,0,3,140,0,3,156,0,1,216,0,1,216,0, + 0,240,0,0,240,0,0,240,0,0,64,0,28,18,72,28, + 0,0,255,3,7,240,60,7,0,192,28,7,0,192,28,7, + 129,128,28,15,129,128,14,15,129,128,14,13,195,128,14,25, + 195,0,6,25,195,0,7,24,227,0,7,48,230,0,3,48, + 118,0,3,176,118,0,3,224,124,0,1,224,60,0,1,224, + 60,0,1,192,60,0,1,128,16,0,20,18,54,20,0,0, + 127,143,224,30,3,128,14,3,0,7,6,0,7,140,0,3, + 156,0,1,216,0,0,240,0,0,240,0,0,240,0,1,184, + 0,1,156,0,3,30,0,6,14,0,14,7,0,12,3,128, + 60,3,192,255,15,240,20,27,81,20,255,247,127,131,240,30, + 0,224,14,0,192,14,0,192,7,1,128,7,1,128,7,3, + 0,3,131,0,3,131,0,1,198,0,1,198,0,1,198,0, + 0,236,0,0,236,0,0,120,0,0,120,0,0,120,0,0, + 48,0,0,48,0,0,96,0,0,96,0,0,224,0,1,192, + 0,67,128,0,127,0,0,254,0,0,124,0,0,15,18,36, + 18,1,0,63,254,63,254,96,28,96,56,64,56,0,112,0, + 224,1,192,1,192,3,128,7,0,7,0,14,0,28,2,56, + 2,56,6,127,254,255,254,11,37,74,14,2,250,0,64,1, + 224,3,128,7,0,6,0,14,0,14,0,14,0,14,0,14, + 0,15,0,7,0,7,0,7,0,7,0,7,0,14,0,28, + 0,124,0,254,0,15,0,7,0,7,0,7,0,7,0,7, + 0,15,0,14,0,14,0,14,0,14,0,14,0,14,0,7, + 0,3,0,1,192,0,64,3,41,41,9,3,248,96,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,192,11,37,74,14,1,250,64,0,112,0, + 56,0,28,0,12,0,14,0,14,0,14,0,14,0,14,0, + 30,0,28,0,28,0,28,0,28,0,28,0,14,0,15,192, + 3,224,7,0,14,0,12,0,28,0,28,0,28,0,28,0, + 30,0,14,0,14,0,14,0,14,0,14,0,12,0,28,0, + 56,0,112,0,192,0,18,6,18,20,1,9,15,0,192,31, + 192,128,63,225,0,99,255,0,192,254,0,128,56,0,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0, + 0,0,9,0,0,5,29,29,11,3,245,112,248,248,248,112, + 0,0,96,96,96,96,112,112,112,112,112,112,112,112,112,112, + 112,112,112,112,240,240,240,192,15,25,50,19,2,255,1,128, + 1,128,1,128,1,240,7,252,31,254,57,140,113,132,113,128, + 97,128,225,128,225,128,225,128,225,128,225,128,241,128,113,128, + 121,134,61,140,63,248,31,240,3,192,1,128,1,128,1,128, + 17,25,75,19,1,255,0,252,0,3,255,0,7,15,0,14, + 7,0,12,6,0,12,2,0,28,2,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,127,224,0,255,224,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,24, + 0,128,24,1,0,24,3,0,63,223,0,127,255,0,192,255, + 0,13,13,26,19,3,5,192,24,239,184,127,240,56,224,96, + 112,96,48,96,48,96,48,120,240,63,224,111,176,192,24,128, + 8,21,24,72,19,255,0,120,7,248,252,1,248,62,1,224, + 31,3,128,15,3,128,7,135,0,7,135,0,3,206,0,1, + 206,0,1,252,0,0,248,0,0,248,0,0,112,0,0,112, + 0,15,255,192,31,255,128,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,248,0,3,254,0,3, + 41,41,9,3,248,96,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,128,0,0,0,64,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,192,15,28, + 56,19,2,0,7,224,15,248,28,120,56,24,56,8,56,0, + 60,0,31,0,31,128,63,224,99,248,224,252,224,124,224,30, + 240,30,120,14,62,14,31,14,15,220,3,248,0,248,0,60, + 32,28,32,28,48,28,60,56,63,240,7,192,12,5,10,16, + 2,22,96,48,224,112,224,112,224,112,192,96,25,25,100,29, + 2,0,0,127,0,0,3,255,224,0,7,128,240,0,14,0, + 56,0,28,31,28,0,56,127,206,0,112,225,199,0,97,192, + 131,0,99,128,3,0,195,0,1,128,199,0,1,128,199,0, + 1,128,199,0,1,128,199,0,1,128,199,0,1,128,199,128, + 1,128,99,128,3,0,99,192,67,0,113,241,135,0,56,255, + 14,0,28,60,28,0,14,0,56,0,7,128,240,0,3,255, + 224,0,0,127,0,0,8,14,14,10,1,11,28,60,70,198, + 6,30,102,198,198,206,119,0,255,255,15,18,36,19,2,0, + 2,6,6,4,12,12,12,24,24,56,56,112,112,224,241,224, + 225,192,225,192,241,224,112,240,56,112,24,56,12,24,12,12, + 6,4,2,6,17,8,24,19,1,4,255,255,128,255,255,128, + 0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + 3,0,11,2,4,13,1,9,127,224,255,224,13,14,28,14, + 1,14,15,128,63,224,112,96,127,48,200,152,136,136,143,8, + 138,8,137,8,201,152,92,240,112,112,63,224,15,128,13,2, + 4,20,3,23,127,248,255,248,8,9,9,14,3,15,28,62, + 103,231,231,231,230,124,56,15,18,36,16,1,3,3,128,3, + 128,3,128,3,128,3,128,3,128,255,254,255,254,3,128,3, + 128,3,128,3,128,3,128,3,0,0,0,0,0,127,252,255, + 252,11,15,30,14,1,12,15,128,31,192,49,224,96,224,64, + 224,0,192,1,192,1,128,3,0,6,0,12,0,24,32,48, + 32,127,224,255,224,11,16,32,13,1,11,31,0,63,128,99, + 192,225,192,1,192,1,128,7,0,31,128,1,192,0,224,0, + 224,0,224,0,224,193,192,127,128,30,0,8,9,9,13,4, + 20,7,15,30,28,56,48,112,96,192,20,27,81,21,1,247, + 12,1,128,252,7,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,3,128,28,3, + 128,28,3,128,28,3,128,30,7,128,31,31,128,31,251,144, + 27,243,224,25,225,128,24,0,0,24,0,0,24,0,0,28, + 0,0,28,0,0,28,0,0,30,0,0,30,0,0,24,0, + 0,20,30,90,22,1,251,3,255,240,28,63,192,48,59,128, + 112,59,128,96,59,128,224,59,128,224,59,128,224,59,128,224, + 59,128,240,59,128,112,59,128,120,59,128,62,59,128,31,251, + 128,7,251,128,0,59,128,0,59,128,0,59,128,0,59,128, + 0,59,128,0,59,128,0,59,128,0,59,128,0,59,128,0, + 59,128,0,59,128,0,59,128,0,59,128,0,127,192,1,255, + 240,3,5,5,6,1,11,96,224,224,224,192,7,9,9,9, + 1,247,24,16,56,60,62,14,12,56,224,10,15,30,13,2, + 12,6,0,62,0,254,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,255,192,9, + 14,28,11,1,11,30,0,63,0,103,0,67,128,193,128,193, + 128,193,128,193,128,225,0,115,0,126,0,60,0,255,128,255, + 128,15,18,36,19,3,0,129,0,193,128,96,192,112,96,48, + 112,56,48,28,56,30,28,15,30,15,30,30,28,28,56,56, + 56,48,112,112,224,96,192,193,128,129,0,19,24,72,23,2, + 0,12,0,192,252,1,224,28,1,128,28,3,128,28,3,0, + 28,6,0,28,14,0,28,12,0,28,24,0,28,56,0,28, + 48,0,255,224,0,0,224,0,0,192,192,1,193,192,1,130, + 192,3,2,192,7,4,192,6,8,192,12,16,192,28,31,224, + 24,63,224,48,0,192,112,3,224,20,24,72,24,2,0,12, + 0,96,252,0,192,28,0,192,28,1,128,28,3,0,28,3, + 0,28,6,0,28,14,0,28,12,0,28,24,0,28,56,0, + 255,176,0,0,97,224,0,99,240,0,196,112,1,204,112,1, + 128,96,3,0,224,7,0,192,6,1,128,12,3,32,28,6, + 16,24,15,240,48,31,240,20,25,75,23,1,0,30,0,0, + 63,0,48,103,128,96,195,128,224,3,0,192,6,1,128,31, + 129,128,3,195,0,0,231,0,0,230,0,97,204,0,63,220, + 0,15,24,0,0,48,0,0,48,96,0,96,224,0,225,96, + 0,195,96,1,130,96,3,132,96,3,12,112,6,31,240,14, + 0,96,12,0,96,24,1,240,14,29,58,18,2,245,3,128, + 7,192,7,192,7,192,3,128,0,0,0,0,3,128,3,128, + 3,128,3,128,3,128,7,0,7,0,14,0,28,0,60,0, + 56,0,112,0,112,0,224,0,224,12,224,28,224,28,224,28, + 240,56,120,112,63,224,31,128,23,34,102,24,0,0,3,0, + 0,7,128,0,7,224,0,1,240,0,0,120,0,0,60,0, + 0,14,0,0,2,0,0,0,0,0,8,0,0,56,0,0, + 60,0,0,60,0,0,108,0,0,110,0,0,110,0,0,198, + 0,0,199,0,0,199,0,1,131,0,1,131,128,1,131,128, + 3,1,128,3,255,192,3,255,192,6,0,224,6,0,224,6, + 0,224,12,0,112,12,0,112,12,0,112,24,0,56,28,0, + 120,255,1,254,23,34,102,24,0,0,0,1,128,0,3,192, + 0,7,192,0,15,0,0,30,0,0,56,0,0,96,0,0, + 192,0,0,0,0,0,8,0,0,56,0,0,60,0,0,60, + 0,0,108,0,0,110,0,0,110,0,0,198,0,0,199,0, + 0,199,0,1,131,0,1,131,128,1,131,128,3,1,128,3, + 255,192,3,255,192,6,0,224,6,0,224,6,0,224,12,0, + 112,12,0,112,12,0,112,24,0,56,28,0,120,255,1,254, + 23,33,99,24,0,0,0,56,0,0,124,0,0,254,0,1, + 231,0,1,131,128,3,1,192,6,0,128,0,0,0,0,8, + 0,0,56,0,0,60,0,0,60,0,0,108,0,0,110,0, + 0,110,0,0,198,0,0,199,0,0,199,0,1,131,0,1, + 131,128,1,131,128,3,1,128,3,255,192,3,255,192,6,0, + 224,6,0,224,6,0,224,12,0,112,12,0,112,12,0,112, + 24,0,56,28,0,120,255,1,254,23,32,96,24,0,0,0, + 224,64,1,248,192,3,253,128,6,31,0,4,6,0,0,0, + 0,0,0,0,0,8,0,0,56,0,0,60,0,0,60,0, + 0,108,0,0,110,0,0,110,0,0,198,0,0,199,0,0, + 199,0,1,131,0,1,131,128,1,131,128,3,1,128,3,255, + 192,3,255,192,6,0,224,6,0,224,6,0,224,12,0,112, + 12,0,112,12,0,112,24,0,56,28,0,120,255,1,254,23, + 31,93,24,0,0,3,129,192,3,129,192,3,129,192,3,1, + 128,3,1,128,0,0,0,0,8,0,0,56,0,0,60,0, + 0,60,0,0,108,0,0,110,0,0,110,0,0,198,0,0, + 199,0,0,199,0,1,131,0,1,131,128,1,131,128,3,1, + 128,3,255,192,3,255,192,6,0,224,6,0,224,6,0,224, + 12,0,112,12,0,112,12,0,112,24,0,56,28,0,120,255, + 1,254,23,34,102,24,0,0,0,62,0,0,126,0,0,199, + 0,0,195,0,0,195,0,0,230,0,0,252,0,0,48,0, + 0,0,0,0,8,0,0,56,0,0,60,0,0,60,0,0, + 108,0,0,110,0,0,110,0,0,198,0,0,199,0,0,199, + 0,1,131,0,1,131,128,1,131,128,3,1,128,3,255,192, + 3,255,192,6,0,224,6,0,224,6,0,224,12,0,112,12, + 0,112,12,0,112,24,0,56,28,0,120,255,1,254,30,25, + 100,31,0,0,1,255,255,240,0,63,255,240,0,25,192,48, + 0,25,192,16,0,57,192,16,0,49,192,0,0,113,192,0, + 0,97,192,0,0,97,192,0,0,225,192,0,0,255,255,192, + 1,255,255,192,1,193,192,128,1,129,192,0,3,129,192,0, + 3,1,192,0,7,1,192,0,7,1,192,0,6,1,192,0, + 14,1,192,0,12,1,192,4,28,1,192,12,28,1,192,24, + 60,3,255,248,255,15,255,248,18,34,102,21,1,247,0,126, + 0,3,255,192,7,7,192,14,1,128,28,0,0,56,0,0, + 48,0,0,112,0,0,112,0,0,96,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,240,0,0,112,0,0,120,0,0,56,0,64,60,0,192, + 30,3,128,15,254,0,7,252,0,1,240,0,0,64,0,0, + 96,0,0,240,0,0,120,0,0,56,0,0,48,0,0,224, + 0,3,128,0,18,34,102,20,1,0,12,0,0,62,0,0, + 63,0,0,15,128,0,3,192,0,0,224,0,0,112,0,0, + 16,0,0,0,0,255,255,0,63,255,0,28,3,0,28,1, + 0,28,1,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,31,252,0,31,252,0,28,8,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,64,28,0,192,28,1,128,63,255,128,255,255,128, + 18,34,102,20,1,0,0,12,0,0,30,0,0,62,0,0, + 120,0,0,240,0,1,192,0,3,0,0,6,0,0,0,0, + 0,255,255,0,63,255,0,28,3,0,28,1,0,28,1,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,31, + 252,0,31,252,0,28,8,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,64, + 28,0,192,28,1,128,63,255,128,255,255,128,18,33,99,20, + 1,0,1,192,0,3,224,0,7,240,0,7,56,0,12,28, + 0,24,14,0,16,2,0,0,0,0,255,255,0,63,255,0, + 28,3,0,28,1,0,28,1,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,31,252,0,31,252,0,28,8, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,64,28,0,192,28,1,128,63, + 255,128,255,255,128,18,31,93,20,1,0,28,14,0,28,14, + 0,28,14,0,28,14,0,24,12,0,0,0,0,255,255,0, + 63,255,0,28,3,0,28,1,0,28,1,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,31,252,0,31,252, + 0,28,8,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,64,28,0,192,28, + 1,128,63,255,128,255,255,128,11,34,68,12,255,0,96,0, + 248,0,252,0,62,0,15,0,3,128,1,192,0,64,0,0, + 63,224,15,128,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,15,128, + 63,224,11,34,68,12,1,0,0,192,1,224,3,224,7,128, + 15,0,28,0,48,0,96,0,0,0,255,128,62,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,62,0,255,128,12,33,66,12, + 0,0,14,0,31,0,63,128,57,192,96,224,192,112,128,32, + 0,0,127,192,31,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 31,0,127,192,12,31,62,12,0,0,224,112,224,112,224,112, + 224,112,192,96,0,0,127,192,31,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,31,0,127,192,21,25,75,24,1,0,31,248, + 0,255,255,0,28,15,128,28,3,192,28,1,224,28,0,240, + 28,0,112,28,0,112,28,0,120,28,0,56,28,0,56,255, + 240,56,255,224,56,28,0,56,28,0,56,28,0,56,28,0, + 112,28,0,112,28,0,112,28,0,224,28,1,224,28,3,192, + 28,15,128,63,254,0,255,248,0,24,32,96,26,1,0,0, + 240,64,1,248,96,3,252,192,2,31,128,6,6,0,0,0, + 0,0,0,0,248,1,255,60,0,124,30,0,56,30,0,56, + 31,0,56,31,128,56,29,128,56,29,192,56,28,224,56,28, + 96,56,28,112,56,28,56,56,28,28,56,28,28,56,28,14, + 56,28,7,56,28,7,56,28,3,184,28,3,248,28,1,248, + 28,0,248,28,0,248,28,0,120,62,0,56,255,128,24,21, + 34,102,24,1,0,3,0,0,7,128,0,15,192,0,3,224, + 0,0,240,0,0,56,0,0,28,0,0,4,0,0,0,0, + 0,252,0,3,255,0,7,7,128,12,3,192,24,1,224,56, + 0,224,112,0,112,112,0,112,96,0,120,224,0,56,224,0, + 56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56, + 240,0,48,112,0,112,112,0,96,120,0,224,60,0,192,30, + 1,128,15,7,0,7,254,0,1,248,0,21,34,102,24,1, + 0,0,3,0,0,7,128,0,15,192,0,31,0,0,60,0, + 0,112,0,0,224,0,0,128,0,0,0,0,0,252,0,3, + 255,0,7,7,128,12,3,192,24,1,224,56,0,224,112,0, + 112,112,0,112,96,0,120,224,0,56,224,0,56,224,0,56, + 224,0,56,224,0,56,224,0,56,224,0,56,240,0,48,112, + 0,112,112,0,96,120,0,224,60,0,192,30,1,128,15,7, + 0,7,254,0,1,248,0,21,33,99,24,1,0,0,120,0, + 0,252,0,0,252,0,1,206,0,3,135,0,6,1,128,4, + 0,128,0,0,0,0,252,0,3,255,0,7,7,128,12,3, + 192,24,1,224,56,0,224,112,0,112,112,0,112,96,0,120, + 224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224, + 0,56,224,0,56,240,0,48,112,0,112,112,0,96,120,0, + 224,60,0,192,30,1,128,15,7,0,7,254,0,1,248,0, + 21,32,96,24,1,0,1,224,128,3,240,192,7,249,128,6, + 63,0,12,12,0,0,0,0,0,0,0,0,252,0,3,255, + 0,7,7,128,12,3,192,24,1,224,56,0,224,112,0,112, + 112,0,112,96,0,120,224,0,56,224,0,56,224,0,56,224, + 0,56,224,0,56,224,0,56,224,0,56,240,0,48,112,0, + 112,112,0,96,120,0,224,60,0,192,30,1,128,15,7,0, + 7,254,0,1,248,0,21,31,93,24,1,0,3,1,128,7, + 3,128,7,3,128,7,3,128,2,1,0,0,0,0,0,252, + 0,3,255,0,7,7,128,12,3,192,24,1,224,56,0,224, + 112,0,112,112,0,112,96,0,120,224,0,56,224,0,56,224, + 0,56,224,0,56,224,0,56,224,0,56,224,0,56,240,0, + 48,112,0,112,112,0,96,120,0,224,60,0,192,30,1,128, + 15,7,0,7,254,0,1,248,0,13,12,24,16,2,5,192, + 48,224,120,112,224,57,192,31,128,15,0,15,0,31,128,57, + 192,112,224,224,112,192,56,21,26,78,24,1,255,0,252,56, + 3,255,112,7,7,224,12,3,224,24,1,224,56,3,240,48, + 7,240,112,7,112,96,14,120,224,28,56,224,28,56,224,56, + 56,224,112,56,224,112,56,224,224,56,225,192,56,243,128,48, + 115,128,112,119,0,96,126,0,224,60,0,192,62,1,128,63, + 7,0,119,254,0,225,248,0,128,0,0,24,34,102,26,1, + 0,1,128,0,3,192,0,3,224,0,0,240,0,0,120,0, + 0,28,0,0,6,0,0,3,0,0,0,0,255,129,255,62, + 0,124,28,0,56,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28, + 0,56,28,0,112,14,0,112,14,0,112,15,0,224,7,193, + 192,3,255,128,0,126,0,24,34,102,26,1,0,0,1,128, + 0,3,224,0,7,224,0,15,128,0,30,0,0,56,0,0, + 112,0,0,64,0,0,0,0,255,129,255,62,0,124,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28, + 0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0, + 112,14,0,112,14,0,112,15,0,224,7,193,192,3,255,128, + 0,126,0,24,33,99,26,1,0,0,28,0,0,62,0,0, + 127,0,0,231,0,1,193,128,3,128,192,2,0,64,0,0, + 0,255,129,255,62,0,124,28,0,56,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28, + 0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,112,14,0,112,14,0,112, + 15,0,224,7,193,192,3,255,128,0,126,0,24,31,93,26, + 1,0,1,128,192,3,129,192,3,129,192,3,129,192,1,0, + 128,0,0,0,255,129,255,62,0,124,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28, + 0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,112,14,0,112, + 14,0,112,15,0,224,7,193,192,3,255,128,0,126,0,23, + 34,102,24,0,0,0,1,128,0,3,192,0,7,192,0,15, + 0,0,30,0,0,56,0,0,96,0,0,192,0,0,0,0, + 248,1,254,60,0,120,30,0,96,14,0,224,7,0,192,7, + 129,192,3,129,128,3,195,128,1,195,0,0,231,0,0,238, + 0,0,126,0,0,124,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,124,0,1,255,0,18,25,75,21,1, + 0,255,128,0,60,0,0,28,0,0,28,0,0,31,248,0, + 31,254,0,28,31,0,28,7,128,28,3,128,28,3,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,3, + 128,28,7,128,28,15,0,29,254,0,28,248,0,28,0,0, + 28,0,0,28,0,0,62,0,0,255,128,0,20,30,90,23, + 1,0,0,124,0,1,255,0,3,15,128,6,3,128,14,3, + 192,12,1,192,12,1,192,28,1,192,28,1,192,28,3,128, + 28,7,128,28,31,0,28,120,0,28,240,0,28,224,0,28, + 224,0,28,240,0,28,124,0,28,63,0,28,31,192,28,7, + 224,28,1,224,28,0,240,28,0,112,28,128,112,28,128,112, + 28,192,96,28,224,224,60,255,192,252,63,0,16,29,58,18, + 2,0,56,0,60,0,28,0,14,0,14,0,7,0,3,128, + 1,128,0,192,0,0,0,0,3,224,31,240,56,120,112,56, + 240,56,192,56,0,56,0,120,7,248,28,56,112,56,96,56, + 224,56,224,56,224,120,241,185,127,63,60,24,16,29,58,18, + 2,0,0,56,0,120,0,112,0,224,0,192,1,192,3,128, + 3,0,6,0,0,0,0,0,3,224,31,240,56,120,112,56, + 240,56,192,56,0,56,0,120,7,248,28,56,112,56,96,56, + 224,56,224,56,224,120,241,185,127,63,60,24,16,29,58,18, + 2,0,3,128,7,128,7,192,15,224,30,224,28,112,56,56, + 48,24,96,12,0,0,0,0,3,224,31,240,56,120,112,56, + 240,56,192,56,0,56,0,120,7,248,28,56,112,56,96,56, + 224,56,224,56,224,120,241,185,127,63,60,24,16,27,54,18, + 2,0,14,4,31,12,63,152,99,240,64,224,0,0,0,0, + 0,0,0,0,3,224,31,240,56,120,112,56,240,56,192,56, + 0,56,0,120,7,248,28,56,112,56,96,56,224,56,224,56, + 224,120,241,185,127,63,60,24,16,27,54,18,2,0,48,24, + 48,24,112,56,112,56,48,24,0,0,0,0,0,0,0,0, + 3,224,31,240,56,120,112,56,240,56,192,56,0,56,0,120, + 7,248,28,56,112,56,96,56,224,56,224,56,224,120,241,185, + 127,63,60,24,16,28,56,18,2,0,3,192,7,224,12,96, + 12,96,24,96,12,96,15,192,7,128,0,0,0,0,3,224, + 31,240,56,120,112,56,240,56,192,56,0,56,0,120,7,248, + 28,56,112,56,96,56,224,56,224,56,224,120,241,185,127,63, + 60,24,24,18,54,28,2,0,3,225,240,15,243,252,56,119, + 30,112,60,14,224,60,7,240,56,7,192,56,7,1,255,255, + 15,255,254,30,56,0,120,56,0,112,56,0,224,56,0,224, + 60,2,224,92,3,241,159,14,127,15,248,60,3,224,15,27, + 54,17,2,247,1,248,7,254,28,28,56,12,48,4,112,0, + 96,0,224,0,224,0,224,0,224,0,224,0,224,0,240,0, + 112,8,120,24,63,240,31,224,15,128,2,0,2,0,3,128, + 7,192,1,192,1,128,7,0,28,0,14,29,58,18,2,0, + 28,0,60,0,30,0,14,0,7,0,3,128,1,128,0,192, + 0,64,0,0,0,0,3,192,15,240,28,120,48,56,112,28, + 96,28,224,28,255,252,255,248,224,0,224,0,224,0,240,0, + 112,4,120,12,60,56,31,240,7,192,14,29,58,18,2,0, + 0,56,0,60,0,120,0,112,0,224,0,192,1,128,1,0, + 3,0,0,0,0,0,3,192,15,240,28,120,48,56,112,28, + 96,28,224,28,255,252,255,248,224,0,224,0,224,0,240,0, + 112,4,120,12,60,56,31,240,7,192,14,29,58,18,2,0, + 1,128,3,192,7,224,7,224,14,112,28,56,24,24,48,12, + 32,4,0,0,0,0,3,192,15,240,28,120,48,56,112,28, + 96,28,224,28,255,252,255,248,224,0,224,0,224,0,240,0, + 112,4,120,12,60,56,31,240,7,192,14,27,54,18,2,0, + 24,12,56,28,56,28,56,28,48,24,0,0,0,0,0,0, + 0,0,3,192,15,240,28,120,48,56,112,28,96,28,224,28, + 255,252,255,248,224,0,224,0,224,0,240,0,112,4,120,12, + 60,56,31,240,7,192,10,29,58,11,0,0,224,0,240,0, + 120,0,56,0,28,0,12,0,14,0,6,0,3,0,0,0, + 0,0,6,0,126,0,30,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,30,0,127,192,10,29,58,11,1,0,1,192,3,192, + 3,128,7,128,7,0,14,0,12,0,24,0,16,0,0,0, + 0,0,12,0,252,0,60,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,60,0,255,128,13,29,58,11,255,0,7,0,7,128, + 15,128,31,192,29,192,56,224,112,112,96,48,192,24,0,0, + 0,0,3,0,63,0,15,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,15,0,63,224,12,27,54,11,0,0,192,96,224,112, + 224,112,192,96,192,96,0,0,0,0,0,0,0,0,6,0, + 126,0,30,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,30,0, + 127,192,16,28,56,20,2,0,6,0,63,6,7,159,1,248, + 3,224,15,112,28,56,0,28,0,28,0,14,3,206,15,254, + 28,127,48,31,112,15,96,15,224,7,224,7,224,7,224,7, + 224,6,224,6,240,14,112,12,120,28,60,56,31,240,7,192, + 21,27,81,22,1,0,1,192,128,7,225,0,7,243,0,12, + 126,0,8,28,0,0,0,0,0,0,0,0,0,0,0,0, + 0,12,15,0,252,63,128,60,99,192,29,129,192,29,1,192, + 30,1,192,30,1,192,28,1,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,62,3,192,255,143,248,16,29,58,20,2,0,28,0,30, + 0,14,0,7,0,3,128,3,128,1,192,0,192,0,96,0, + 0,0,0,3,224,15,248,28,60,48,30,112,14,96,15,224, + 7,224,7,224,7,224,7,224,7,224,7,240,6,112,14,120, + 12,62,56,31,240,7,192,16,29,58,20,2,0,0,28,0, + 60,0,56,0,112,0,112,0,224,0,192,1,128,3,0,0, + 0,0,0,3,224,15,248,28,60,48,30,112,14,96,15,224, + 7,224,7,224,7,224,7,224,7,224,7,240,6,112,14,120, + 12,62,56,31,240,7,192,16,29,58,20,2,0,1,192,3, + 192,3,224,7,240,7,112,14,56,28,28,24,12,48,6,0, + 0,0,0,3,224,15,248,28,60,48,30,112,14,96,15,224, + 7,224,7,224,7,224,7,224,7,224,7,240,6,112,14,120, + 12,62,56,31,240,7,192,16,27,54,20,2,0,7,2,15, + 134,31,204,49,248,32,112,0,0,0,0,0,0,0,0,3, + 224,15,248,28,60,48,30,112,14,96,15,224,7,224,7,224, + 7,224,7,224,7,224,7,240,6,112,14,120,12,62,56,31, + 240,7,192,16,27,54,20,2,0,24,12,24,12,28,14,24, + 12,24,12,0,0,0,0,0,0,0,0,3,224,15,248,28, + 60,48,30,112,14,96,15,224,7,224,7,224,7,224,7,224, + 7,224,7,240,6,112,14,120,12,62,56,31,240,7,192,14, + 14,28,16,1,4,1,128,3,128,3,128,3,0,0,0,0, + 0,127,252,255,252,0,0,0,0,1,128,3,128,3,128,3, + 0,16,20,40,20,2,255,0,1,3,227,15,254,28,60,48, + 30,112,30,96,63,224,103,224,199,224,135,225,135,227,7,230, + 7,252,6,120,14,120,12,60,56,127,240,199,192,128,0,21, + 29,87,21,0,0,7,0,0,7,128,0,3,192,0,1,192, + 0,0,224,0,0,96,0,0,48,0,0,48,0,0,24,0, + 0,0,0,0,0,0,12,0,192,252,15,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,192,28,1,192,28,1,192,28,1,192,28,3,192, + 28,7,192,30,29,200,15,241,240,7,192,192,21,29,87,21, + 0,0,0,7,0,0,15,128,0,14,0,0,30,0,0,28, + 0,0,56,0,0,48,0,0,96,0,0,64,0,0,0,0, + 0,0,0,12,0,192,252,15,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,192,28,1,192,28,1,192,28,3,192,28,7,192, + 30,29,200,15,241,240,7,192,192,21,29,87,21,0,0,0, + 112,0,0,120,0,0,248,0,1,252,0,1,222,0,3,142, + 0,7,7,0,6,3,0,12,1,128,0,0,0,0,0,0, + 12,0,192,252,15,192,28,1,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,192,28,1,192,28,3,192,28,7,192,30,29,200, + 15,241,240,7,192,192,21,27,81,21,0,0,6,3,0,7, + 3,128,7,3,128,6,3,0,6,3,0,0,0,0,0,0, + 0,0,0,0,0,0,0,12,0,192,252,15,192,28,1,192, + 28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,3, + 192,28,7,192,30,29,200,15,241,240,7,192,192,20,38,114, + 20,255,247,0,3,128,0,7,128,0,7,0,0,14,0,0, + 12,0,0,28,0,0,56,0,0,48,0,0,96,0,0,0, + 0,0,0,0,127,131,240,30,0,224,14,0,192,14,0,192, + 7,1,128,7,1,128,7,3,0,3,131,0,3,131,0,1, + 198,0,1,198,0,1,198,0,0,236,0,0,236,0,0,120, + 0,0,120,0,0,120,0,0,48,0,0,48,0,0,96,0, + 0,96,0,0,224,0,1,192,0,67,128,0,127,0,0,254, + 0,0,124,0,0,18,39,117,21,1,247,12,0,0,252,0, + 0,60,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 60,0,28,255,0,29,143,0,31,7,128,30,3,128,28,3, + 192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192, + 28,1,128,28,1,128,28,3,128,30,3,0,31,134,0,31, + 252,0,28,240,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,62,0,0,255,128,0, + 20,36,108,20,255,247,3,1,128,3,1,128,7,3,128,7, + 3,128,3,1,128,0,0,0,0,0,0,0,0,0,0,0, + 0,127,131,240,30,0,224,14,0,192,14,0,192,7,1,128, + 7,1,128,7,3,0,3,131,0,3,131,0,1,198,0,1, + 198,0,1,198,0,0,236,0,0,236,0,0,120,0,0,120, + 0,0,120,0,0,48,0,0,48,0,0,96,0,0,96,0, + 0,224,0,1,192,0,67,128,0,127,0,0,254,0,0,124, + 0,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--40-400-72-72-P-182-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 24 + Calculated Max Values w=17 h=38 x= 3 y=14 dx=19 dy= 0 ascent=31 len=114 + Font Bounding box w=59 h=57 x=-20 y=-14 + Calculated Min Values x= 0 y=-7 dx= 0 dy= 0 + Pure Font ascent =24 descent= 0 + X Font ascent =24 descent= 0 + Max Font ascent =31 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr25n[810] U8G_SECTION(".progmem.u8g_font_gdr25n") = { + 0,59,57,236,242,24,0,0,0,0,42,57,0,31,249,24, + 0,16,16,32,18,1,14,1,128,1,128,1,128,97,132,113, + 142,121,159,31,248,7,192,3,192,31,248,121,158,241,142,33, + 134,1,128,1,128,1,128,15,14,28,16,1,4,3,128,3, + 128,3,128,3,128,3,128,3,128,255,254,255,254,3,128,3, + 128,3,128,3,128,3,128,3,128,6,10,10,9,2,250,60, + 252,60,28,28,24,24,48,32,64,11,2,4,13,1,9,127, + 224,255,224,5,5,5,9,2,255,112,248,248,248,112,17,38, + 114,19,1,249,0,1,128,0,7,0,0,7,0,0,7,0, + 0,14,0,0,14,0,0,14,0,0,28,0,0,28,0,0, + 56,0,0,56,0,0,56,0,0,112,0,0,112,0,0,112, + 0,0,224,0,0,224,0,1,192,0,1,192,0,1,192,0, + 3,128,0,3,128,0,3,128,0,7,0,0,7,0,0,14, + 0,0,14,0,0,14,0,0,28,0,0,28,0,0,28,0, + 0,56,0,0,56,0,0,112,0,0,112,0,0,112,0,0, + 224,0,0,192,0,0,17,24,72,19,1,0,3,224,0,15, + 248,0,28,60,0,56,30,0,48,14,0,112,7,0,96,7, + 0,96,7,128,224,3,128,224,3,128,224,3,128,224,3,128, + 224,3,128,224,3,128,224,3,128,224,3,128,240,3,0,112, + 7,0,112,7,0,120,6,0,60,14,0,30,28,0,15,248, + 0,7,224,0,14,24,48,19,3,0,1,128,7,128,63,128, + 255,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,15,224,127,252,14,24,48,19,2,0, + 3,224,15,248,24,120,48,60,112,28,96,28,224,28,0,28, + 0,24,0,56,0,48,0,112,0,224,1,192,1,128,3,128, + 7,0,14,0,28,0,24,4,48,4,112,12,255,252,255,252, + 15,24,48,19,1,0,3,224,15,248,28,120,56,60,112,28, + 112,28,0,28,0,24,0,48,0,96,3,224,3,248,0,60, + 0,28,0,14,0,14,0,14,0,14,0,14,0,28,64,28, + 240,120,63,240,15,192,16,24,48,19,1,0,0,24,0,120, + 0,120,0,248,1,248,1,184,3,56,7,56,6,56,12,56, + 28,56,24,56,48,56,112,56,96,56,255,255,255,254,0,56, + 0,56,0,56,0,56,0,56,0,124,3,255,15,24,48,19, + 1,0,0,4,31,252,31,248,24,0,24,0,24,0,48,0, + 48,0,48,0,63,224,63,248,48,124,64,28,0,30,0,14, + 0,14,0,14,0,14,0,14,0,28,64,28,240,120,63,240, + 15,192,15,24,48,19,2,0,0,56,0,240,3,192,7,0, + 14,0,28,0,56,0,112,0,112,0,99,224,239,248,248,60, + 240,28,224,30,224,14,224,14,224,14,224,14,112,14,112,12, + 56,28,60,56,31,240,7,192,15,23,46,19,2,0,127,254, + 255,254,192,12,192,12,128,28,0,24,0,56,0,48,0,112, + 0,96,0,96,0,224,0,192,1,192,1,128,3,128,3,0, + 7,0,7,0,14,0,14,0,28,0,56,0,15,24,48,19, + 2,0,15,192,63,240,120,120,112,60,240,28,224,28,224,28, + 240,24,120,48,62,96,31,192,7,240,24,120,48,60,112,30, + 96,14,224,14,224,14,224,14,224,12,112,28,124,56,63,240, + 15,192,15,25,50,19,2,255,7,192,15,240,56,120,48,60, + 112,28,96,28,224,14,224,14,224,14,224,14,240,14,112,30, + 120,62,63,238,15,140,0,28,0,28,0,24,0,56,0,112, + 0,224,1,192,7,128,30,0,48,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--40-400-72-72-P-182-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=33 h=41 x= 3 y=20 dx=34 dy= 0 ascent=33 len=132 + Font Bounding box w=59 h=57 x=-20 y=-14 + Calculated Min Values x=-4 y=-9 dx= 0 dy= 0 + Pure Font ascent =25 descent=-9 + X Font ascent =31 descent=-9 + Max Font ascent =33 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr25r[6239] U8G_SECTION(".progmem.u8g_font_gdr25r") = { + 0,59,57,236,242,25,6,209,16,163,32,127,247,33,247,31, + 247,0,0,0,9,0,0,5,30,30,11,3,255,48,112,240, + 112,112,112,112,112,112,112,112,112,112,112,112,112,112,112,112, + 96,96,96,0,0,0,112,248,248,248,112,11,13,26,17,3, + 16,112,224,241,224,241,224,241,224,241,224,112,224,96,192,96, + 192,96,192,96,192,96,192,96,192,96,192,17,23,69,19,2, + 2,0,194,0,1,134,0,1,134,0,1,142,0,3,140,0, + 3,12,0,3,12,0,63,255,128,63,255,128,6,24,0,6, + 56,0,14,48,0,12,48,0,12,48,0,255,254,0,255,254, + 0,24,96,0,24,224,0,48,192,0,48,192,0,48,192,0, + 113,192,0,97,128,0,16,30,60,19,1,253,1,128,1,128, + 1,128,3,224,15,252,57,254,49,156,113,136,113,128,113,128, + 121,128,61,128,63,128,31,224,7,248,1,252,1,190,1,143, + 1,143,1,135,193,135,193,135,225,142,241,142,255,252,63,240, + 15,192,1,128,1,128,1,128,25,25,100,27,1,255,15,128, + 6,0,63,192,28,0,113,224,56,0,112,224,56,0,224,112, + 112,0,224,112,224,0,224,112,224,0,224,113,192,0,224,115, + 128,0,112,231,0,0,120,231,0,0,63,206,60,0,31,28, + 254,0,0,29,207,0,0,57,199,0,0,115,131,128,0,227, + 131,128,0,227,131,128,1,195,131,128,3,131,131,128,3,131, + 131,128,7,1,199,0,14,1,199,0,28,0,254,0,24,0, + 120,0,24,28,84,27,2,0,0,248,0,1,252,0,3,30, + 0,7,14,0,14,14,0,14,14,0,14,14,0,14,12,0, + 14,28,0,15,56,0,7,112,0,7,192,0,7,131,255,15, + 135,255,29,193,242,57,224,240,112,240,112,112,112,112,224,120, + 112,224,60,112,224,30,224,224,15,224,224,7,192,240,3,192, + 120,3,240,60,30,248,31,252,127,7,224,56,4,13,13,10, + 3,16,112,240,240,240,240,112,96,96,96,96,96,96,96,9, + 37,74,13,3,250,0,128,3,128,7,0,14,0,12,0,28, + 0,24,0,56,0,56,0,112,0,112,0,112,0,112,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,112,0,112,0,112,0,112,0,56, + 0,56,0,28,0,28,0,14,0,7,0,3,128,0,128,9, + 37,74,13,1,250,128,0,224,0,112,0,56,0,28,0,28, + 0,14,0,14,0,14,0,7,0,7,0,7,0,7,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,3,128,7,0,7,0,7,0,7,0,14,0,14, + 0,12,0,28,0,24,0,56,0,112,0,224,0,128,0,16, + 16,32,18,1,14,1,128,1,128,1,128,97,132,113,142,121, + 159,31,248,7,192,3,192,31,248,121,158,241,142,33,134,1, + 128,1,128,1,128,15,14,28,16,1,4,3,128,3,128,3, + 128,3,128,3,128,3,128,255,254,255,254,3,128,3,128,3, + 128,3,128,3,128,3,128,6,10,10,9,2,250,60,252,60, + 28,28,24,24,48,32,64,11,2,4,13,1,9,127,224,255, + 224,5,5,5,9,2,255,112,248,248,248,112,17,38,114,19, + 1,249,0,1,128,0,7,0,0,7,0,0,7,0,0,14, + 0,0,14,0,0,14,0,0,28,0,0,28,0,0,56,0, + 0,56,0,0,56,0,0,112,0,0,112,0,0,112,0,0, + 224,0,0,224,0,1,192,0,1,192,0,1,192,0,3,128, + 0,3,128,0,3,128,0,7,0,0,7,0,0,14,0,0, + 14,0,0,14,0,0,28,0,0,28,0,0,28,0,0,56, + 0,0,56,0,0,112,0,0,112,0,0,112,0,0,224,0, + 0,192,0,0,17,24,72,19,1,0,3,224,0,15,248,0, + 28,60,0,56,30,0,48,14,0,112,7,0,96,7,0,96, + 7,128,224,3,128,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,224,3,128,224,3,128,240,3,0,112,7,0, + 112,7,0,120,6,0,60,14,0,30,28,0,15,248,0,7, + 224,0,14,24,48,19,3,0,1,128,7,128,63,128,255,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,15,224,127,252,14,24,48,19,2,0,3,224, + 15,248,24,120,48,60,112,28,96,28,224,28,0,28,0,24, + 0,56,0,48,0,112,0,224,1,192,1,128,3,128,7,0, + 14,0,28,0,24,4,48,4,112,12,255,252,255,252,15,24, + 48,19,1,0,3,224,15,248,28,120,56,60,112,28,112,28, + 0,28,0,24,0,48,0,96,3,224,3,248,0,60,0,28, + 0,14,0,14,0,14,0,14,0,14,0,28,64,28,240,120, + 63,240,15,192,16,24,48,19,1,0,0,24,0,120,0,120, + 0,248,1,248,1,184,3,56,7,56,6,56,12,56,28,56, + 24,56,48,56,112,56,96,56,255,255,255,254,0,56,0,56, + 0,56,0,56,0,56,0,124,3,255,15,24,48,19,1,0, + 0,4,31,252,31,248,24,0,24,0,24,0,48,0,48,0, + 48,0,63,224,63,248,48,124,64,28,0,30,0,14,0,14, + 0,14,0,14,0,14,0,28,64,28,240,120,63,240,15,192, + 15,24,48,19,2,0,0,56,0,240,3,192,7,0,14,0, + 28,0,56,0,112,0,112,0,99,224,239,248,248,60,240,28, + 224,30,224,14,224,14,224,14,224,14,112,14,112,12,56,28, + 60,56,31,240,7,192,15,23,46,19,2,0,127,254,255,254, + 192,12,192,12,128,28,0,24,0,56,0,48,0,112,0,96, + 0,96,0,224,0,192,1,192,1,128,3,128,3,0,7,0, + 7,0,14,0,14,0,28,0,56,0,15,24,48,19,2,0, + 15,192,63,240,120,120,112,60,240,28,224,28,224,28,240,24, + 120,48,62,96,31,192,7,240,24,120,48,60,112,30,96,14, + 224,14,224,14,224,14,224,12,112,28,124,56,63,240,15,192, + 15,25,50,19,2,255,7,192,15,240,56,120,48,60,112,28, + 96,28,224,14,224,14,224,14,224,14,240,14,112,30,120,62, + 63,238,15,140,0,28,0,28,0,24,0,56,0,112,0,224, + 1,192,7,128,30,0,48,0,5,19,19,9,2,255,120,248, + 248,248,96,0,0,0,0,0,0,0,0,0,112,248,248,248, + 112,6,24,24,9,2,250,120,248,248,248,96,0,0,0,0, + 0,0,0,0,0,60,252,60,28,28,24,24,48,32,64,15, + 13,26,18,1,5,0,2,0,30,0,254,3,240,31,192,126, + 0,240,0,252,0,63,128,7,224,1,252,0,62,0,12,15, + 8,16,18,1,7,127,254,255,254,0,0,0,0,0,0,0, + 0,127,254,255,254,15,13,26,18,1,5,96,0,252,0,63, + 0,15,224,1,252,0,126,0,30,0,126,3,240,31,192,126, + 0,248,0,192,0,14,30,60,17,2,255,7,224,31,240,56, + 120,112,56,224,28,224,28,224,28,192,28,0,28,0,56,0, + 56,0,112,0,240,0,224,1,192,3,128,3,128,7,0,7, + 0,7,0,7,0,7,0,0,0,0,0,0,0,7,0,15, + 128,15,128,15,128,7,0,30,33,132,32,1,249,0,7,248, + 0,0,63,254,0,0,240,31,128,1,192,7,192,3,0,1, + 224,6,0,0,240,12,0,0,112,24,0,0,120,56,3,198, + 56,48,15,252,56,112,28,60,60,112,56,28,28,96,112,28, + 28,224,96,28,28,224,224,28,28,224,224,28,28,224,224,28, + 28,224,224,28,28,224,224,28,28,224,224,28,24,240,240,28, + 56,112,112,28,48,112,120,60,96,120,60,94,224,56,31,143, + 128,60,15,15,0,30,0,0,0,31,0,0,0,15,128,0, + 32,7,192,0,192,1,248,15,128,0,255,254,0,0,31,240, + 0,23,25,75,24,0,0,0,8,0,0,56,0,0,60,0, + 0,60,0,0,108,0,0,110,0,0,110,0,0,198,0,0, + 199,0,0,199,0,1,131,0,1,131,128,1,131,128,3,1, + 128,3,255,192,3,255,192,6,0,224,6,0,224,6,0,224, + 12,0,112,12,0,112,12,0,112,24,0,56,28,0,120,255, + 1,254,19,25,75,22,1,0,31,240,0,255,254,0,28,31, + 0,28,7,128,28,3,128,28,3,128,28,3,128,28,3,128, + 28,7,0,28,6,0,28,28,0,31,254,0,31,255,0,28, + 15,128,28,3,192,28,1,224,28,0,224,28,0,224,28,0, + 224,28,0,224,28,1,224,28,1,192,28,7,128,63,255,0, + 255,252,0,19,25,75,21,1,0,0,254,0,3,255,192,7, + 7,192,12,1,128,24,0,0,56,0,0,112,0,0,112,0, + 0,112,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,112,0,0,112, + 0,0,120,0,0,60,0,64,30,1,224,15,135,128,7,254, + 0,1,248,0,21,25,75,24,1,0,31,248,0,255,255,0, + 28,15,128,28,3,192,28,1,224,28,0,240,28,0,112,28, + 0,112,28,0,120,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,112,28,0,112, + 28,0,112,28,0,224,28,1,224,28,3,192,28,15,128,63, + 254,0,255,248,0,18,25,75,20,1,0,255,255,0,63,255, + 0,28,3,0,28,1,0,28,1,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,31,252,0,31,252,0,28, + 8,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,64,28,0,192,28,1,128, + 63,255,128,255,255,128,17,25,75,19,1,0,255,255,128,63, + 255,128,28,3,0,28,1,0,28,1,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,31,252,0,31,248,0, + 28,24,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,62,0,0,255,128,0,21,25,75,23,1,0,0,127,0, + 1,255,192,7,3,224,14,0,192,28,0,0,56,0,0,48, + 0,0,112,0,0,112,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,15,248,224,1,224,224,0,224,224,0,224, + 112,0,224,112,0,224,120,0,224,60,0,224,30,0,224,15, + 129,192,7,255,128,1,252,0,24,25,75,26,1,0,255,129, + 255,62,0,124,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,31, + 255,248,31,255,248,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,62,0,124,255,129,255,9,25,50,12,1,0,255, + 128,62,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,62,0,255, + 128,15,32,64,12,252,249,7,254,0,248,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,96,0,96,0,224,0, + 192,49,128,127,0,252,0,22,25,75,23,1,0,255,135,248, + 62,1,192,28,3,128,28,7,0,28,14,0,28,12,0,28, + 24,0,28,56,0,28,112,0,28,224,0,29,192,0,31,128, + 0,31,192,0,29,224,0,28,224,0,28,112,0,28,56,0, + 28,60,0,28,30,0,28,15,0,28,7,128,28,3,192,28, + 3,224,62,1,252,255,128,240,18,25,75,19,1,0,255,128, + 0,62,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,192,28,0,128, + 30,1,128,63,255,128,255,255,128,30,25,100,32,1,0,254, + 0,1,248,30,0,3,224,31,0,3,224,31,0,3,224,31, + 0,7,224,27,128,6,224,27,128,14,224,25,192,12,224,25, + 192,12,224,24,224,28,224,24,224,24,224,24,224,56,224,24, + 112,48,224,24,112,112,224,24,56,96,224,24,56,96,224,24, + 28,224,224,24,28,192,224,24,31,192,224,24,15,128,224,24, + 15,128,224,24,7,128,224,24,7,0,224,60,7,1,224,255, + 2,7,252,24,25,75,26,1,0,248,1,255,60,0,124,30, + 0,56,30,0,56,31,0,56,31,128,56,29,128,56,29,192, + 56,28,224,56,28,96,56,28,112,56,28,56,56,28,28,56, + 28,28,56,28,14,56,28,7,56,28,7,56,28,3,184,28, + 3,248,28,1,248,28,0,248,28,0,248,28,0,120,62,0, + 56,255,128,24,21,25,75,24,1,0,0,252,0,3,255,0, + 7,7,128,12,3,192,24,1,224,56,0,224,112,0,112,112, + 0,112,96,0,120,224,0,56,224,0,56,224,0,56,224,0, + 56,224,0,56,224,0,56,224,0,56,240,0,48,112,0,112, + 112,0,96,120,0,224,60,0,192,30,1,128,15,7,0,7, + 254,0,1,248,0,18,25,75,21,1,0,31,248,0,255,254, + 0,28,31,0,28,7,128,28,3,192,28,1,192,28,1,192, + 28,1,192,28,1,192,28,1,192,28,3,128,28,7,128,28, + 15,0,29,254,0,28,248,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 62,0,0,255,128,0,24,31,93,24,1,250,0,252,0,3, + 255,0,7,7,128,12,3,192,24,1,224,56,0,224,112,0, + 112,112,0,112,96,0,120,224,0,56,224,0,56,224,0,56, + 224,0,56,224,0,56,224,0,56,224,0,56,240,0,48,112, + 0,112,112,0,112,56,0,224,60,0,192,30,1,192,15,7, + 128,7,254,0,1,252,0,0,14,0,0,7,0,0,3,130, + 0,1,227,0,0,254,0,0,60,21,25,75,22,1,0,31, + 240,0,255,254,0,28,31,0,28,7,0,28,7,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,7,0,28,6,0, + 28,28,0,31,240,0,28,112,0,28,56,0,28,56,0,28, + 28,0,28,30,0,28,14,0,28,7,0,28,7,128,28,3, + 128,28,3,192,62,1,248,255,129,240,15,25,50,19,2,0, + 7,224,31,248,120,124,112,24,224,0,224,0,224,0,240,0, + 248,0,126,0,63,128,31,224,7,248,1,252,0,124,0,30, + 0,30,0,14,128,14,128,14,192,28,224,28,240,120,255,240, + 31,128,21,25,75,22,0,0,127,255,248,255,255,248,192,112, + 24,192,112,24,128,112,16,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,248,0, + 3,254,0,24,25,75,26,1,0,255,129,255,62,0,124,28, + 0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28, + 0,112,14,0,112,14,0,112,15,0,224,7,193,192,3,255, + 128,0,126,0,25,25,100,26,0,0,255,128,127,128,28,0, + 14,0,30,0,12,0,14,0,28,0,14,0,24,0,15,0, + 24,0,7,0,56,0,7,0,48,0,3,128,48,0,3,128, + 112,0,3,192,96,0,1,192,224,0,1,192,224,0,1,224, + 192,0,0,225,192,0,0,225,128,0,0,113,128,0,0,115, + 128,0,0,123,0,0,0,59,0,0,0,63,0,0,0,62, + 0,0,0,30,0,0,0,30,0,0,0,8,0,0,33,25, + 125,34,0,0,255,128,192,127,128,28,0,192,14,0,28,0, + 192,12,0,28,1,224,12,0,14,1,224,28,0,14,1,224, + 28,0,14,3,240,24,0,14,3,112,24,0,7,3,48,24, + 0,7,7,56,56,0,7,6,56,56,0,7,6,24,48,0, + 7,14,28,48,0,3,140,28,48,0,3,140,14,112,0,3, + 156,14,96,0,3,152,14,96,0,1,216,7,96,0,1,248, + 7,96,0,1,240,7,224,0,1,240,3,192,0,1,240,3, + 192,0,0,224,3,192,0,0,224,1,192,0,0,192,1,128, + 0,23,25,75,25,1,0,255,135,252,60,0,240,28,0,224, + 30,1,192,15,1,128,7,3,128,7,135,0,3,198,0,1, + 238,0,0,252,0,0,252,0,0,120,0,0,120,0,0,124, + 0,0,254,0,1,206,0,1,207,0,3,135,128,3,3,128, + 7,3,192,14,1,224,12,0,224,28,0,240,60,0,248,255, + 3,254,23,25,75,24,0,0,248,1,254,60,0,120,30,0, + 96,14,0,224,7,0,192,7,129,192,3,129,128,3,195,128, + 1,195,0,0,231,0,0,238,0,0,126,0,0,124,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,124,0, + 1,255,0,18,25,75,21,1,0,63,255,192,63,255,192,48, + 3,128,32,7,128,96,15,0,96,14,0,0,30,0,0,28, + 0,0,56,0,0,120,0,0,112,0,0,240,0,1,224,0, + 1,192,0,3,192,0,3,128,0,7,0,0,15,0,0,14, + 0,0,30,0,64,60,0,64,56,0,192,120,0,192,127,255, + 192,255,255,192,9,37,74,12,3,250,255,128,255,128,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 255,128,255,128,17,38,114,19,1,249,192,0,0,224,0,0, + 112,0,0,112,0,0,48,0,0,56,0,0,56,0,0,24, + 0,0,28,0,0,28,0,0,14,0,0,14,0,0,6,0, + 0,7,0,0,7,0,0,3,0,0,3,128,0,3,128,0, + 1,192,0,1,192,0,0,192,0,0,224,0,0,224,0,0, + 96,0,0,112,0,0,112,0,0,56,0,0,56,0,0,24, + 0,0,28,0,0,28,0,0,12,0,0,14,0,0,14,0, + 0,7,0,0,7,0,0,3,0,0,1,128,9,37,74,13, + 1,250,255,128,255,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,255,128,255,128,16,19,38,20, + 2,11,0,128,3,128,3,192,3,192,7,224,6,224,14,224, + 12,112,12,112,28,120,24,56,24,56,48,28,48,28,112,28, + 96,14,96,14,224,7,128,6,17,2,6,19,1,251,127,255, + 128,255,255,0,8,9,9,13,1,20,224,240,112,56,56,28, + 14,6,3,16,18,36,18,2,0,3,224,31,240,56,120,112, + 56,240,56,192,56,0,56,0,120,7,248,28,56,112,56,96, + 56,224,56,224,56,224,120,241,185,127,63,60,24,18,30,90, + 20,0,0,12,0,0,124,0,0,188,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,60,0,28,255,0,29,143,0, + 31,7,128,30,3,128,28,3,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,128,28,1,128,28,3, + 128,30,3,0,31,134,0,7,252,0,1,240,0,15,18,36, + 17,2,0,1,248,7,254,28,28,56,12,112,4,112,0,224, + 0,224,0,224,0,224,0,224,0,224,0,240,0,112,4,120, + 6,62,28,31,248,7,224,19,30,90,21,2,0,0,3,0, + 0,63,0,0,15,0,0,7,0,0,7,0,0,7,0,0, + 7,0,0,7,0,0,7,0,0,7,0,0,7,0,0,7, + 0,3,247,0,15,255,0,28,31,0,56,15,0,48,7,0, + 112,7,0,96,7,0,224,7,0,224,7,0,224,7,0,224, + 7,0,224,7,0,240,7,0,112,15,0,120,31,0,60,55, + 224,31,231,192,7,131,0,14,18,36,18,2,0,3,192,15, + 240,28,120,48,56,112,28,96,28,224,28,255,252,255,248,224, + 0,224,0,224,0,240,0,112,4,120,12,60,56,31,240,7, + 192,15,30,60,12,1,0,0,120,1,254,3,28,6,8,14, + 0,12,0,12,0,28,0,28,0,28,0,28,0,28,0,127, + 240,255,224,28,64,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,62, + 0,255,192,18,27,81,19,1,247,3,224,192,15,255,192,28, + 63,0,56,28,0,112,14,0,112,14,0,112,14,0,112,14, + 0,120,28,0,60,56,0,31,240,0,7,192,0,6,0,0, + 12,0,0,28,0,0,31,224,0,15,254,0,12,63,128,24, + 3,192,112,1,192,224,1,192,224,1,192,224,3,128,240,3, + 128,124,15,0,63,252,0,7,240,0,21,30,90,22,1,0, + 12,0,0,252,0,0,124,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,31,0,28,63,128,28,227,192,29,129,192, + 31,1,192,30,1,192,30,1,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,192,62,3,192,255,143,248,9,27,54,11,1,0, + 28,0,60,0,60,0,60,0,24,0,0,0,0,0,0,0, + 0,0,12,0,252,0,60,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,60,0,255,128,11,36,72,10,252,247,0,224,1,224, + 1,224,1,224,0,192,0,0,0,0,0,0,0,0,0,96, + 7,224,1,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,192,0,192,1,192,1,128,35,0, + 254,0,248,0,19,30,90,20,1,0,12,0,0,252,0,0, + 60,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,31, + 224,28,7,0,28,14,0,28,28,0,28,48,0,28,224,0, + 29,192,0,31,128,0,29,192,0,29,224,0,28,240,0,28, + 120,0,28,56,0,28,28,0,28,30,0,28,15,0,60,7, + 128,255,3,224,9,30,60,11,1,0,12,0,252,0,124,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,60,0,255,128,31,18,72,32,1,0,12,30,3,192, + 252,127,15,224,60,199,152,240,29,131,176,112,31,3,224,112, + 30,3,192,112,28,3,128,112,28,3,128,112,28,3,128,112, + 28,3,128,112,28,3,128,112,28,3,128,112,28,3,128,112, + 28,3,128,112,28,3,128,112,28,3,128,112,60,7,192,240, + 255,159,243,254,21,18,54,22,1,0,12,15,0,252,63,128, + 60,99,192,29,129,192,29,1,192,30,1,192,30,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,192,28,1,192,28,1,192,62,3,192,255,143,248, + 16,18,36,20,2,0,3,224,15,248,28,60,48,30,112,14, + 96,15,224,7,224,7,224,7,224,7,224,7,224,7,240,6, + 112,14,120,12,62,56,31,240,7,192,18,27,81,21,1,247, + 12,28,0,252,127,0,60,143,128,29,7,128,30,3,128,30, + 3,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,128,28,1,128,28,3,128,30,3,0,31,6,0, + 29,252,0,28,120,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,62,0,0,255,128, + 0,19,27,81,21,2,247,1,241,128,7,251,0,28,31,0, + 56,15,0,48,7,0,112,7,0,96,7,0,224,7,0,224, + 7,0,224,7,0,224,7,0,224,7,0,240,7,0,112,15, + 0,120,31,0,60,55,0,31,231,0,7,135,0,0,7,0, + 0,7,0,0,7,0,0,7,0,0,7,0,0,7,0,0, + 7,0,0,7,0,0,63,224,14,18,36,16,1,0,12,60, + 252,252,61,140,29,12,31,4,30,0,30,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,30,0, + 255,128,11,18,36,15,2,0,31,0,127,128,115,192,225,128, + 224,128,240,0,248,0,126,0,31,0,15,192,3,224,1,224, + 128,224,128,224,192,224,225,192,255,128,62,0,13,25,50,14, + 0,0,4,0,12,0,28,0,28,0,28,0,28,0,28,0, + 127,248,255,240,28,32,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,30,56, + 15,240,7,128,21,18,54,21,0,0,12,0,192,252,15,192, + 28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,3,192,28,7,192,30,29,200,15,241,240,7,192,192, + 19,18,54,20,0,0,255,7,224,60,1,192,28,1,128,28, + 3,128,14,3,0,14,3,0,14,6,0,7,6,0,7,6, + 0,3,140,0,3,140,0,3,156,0,1,216,0,1,216,0, + 0,240,0,0,240,0,0,240,0,0,64,0,28,18,72,28, + 0,0,255,3,7,240,60,7,0,192,28,7,0,192,28,7, + 129,128,28,15,129,128,14,15,129,128,14,13,195,128,14,25, + 195,0,6,25,195,0,7,24,227,0,7,48,230,0,3,48, + 118,0,3,176,118,0,3,224,124,0,1,224,60,0,1,224, + 60,0,1,192,60,0,1,128,16,0,20,18,54,20,0,0, + 127,143,224,30,3,128,14,3,0,7,6,0,7,140,0,3, + 156,0,1,216,0,0,240,0,0,240,0,0,240,0,1,184, + 0,1,156,0,3,30,0,6,14,0,14,7,0,12,3,128, + 60,3,192,255,15,240,20,27,81,20,255,247,127,131,240,30, + 0,224,14,0,192,14,0,192,7,1,128,7,1,128,7,3, + 0,3,131,0,3,131,0,1,198,0,1,198,0,1,198,0, + 0,236,0,0,236,0,0,120,0,0,120,0,0,120,0,0, + 48,0,0,48,0,0,96,0,0,96,0,0,224,0,1,192, + 0,67,128,0,127,0,0,254,0,0,124,0,0,15,18,36, + 18,1,0,63,254,63,254,96,28,96,56,64,56,0,112,0, + 224,1,192,1,192,3,128,7,0,7,0,14,0,28,2,56, + 2,56,6,127,254,255,254,11,37,74,14,2,250,0,64,1, + 224,3,128,7,0,6,0,14,0,14,0,14,0,14,0,14, + 0,15,0,7,0,7,0,7,0,7,0,7,0,14,0,28, + 0,124,0,254,0,15,0,7,0,7,0,7,0,7,0,7, + 0,15,0,14,0,14,0,14,0,14,0,14,0,14,0,7, + 0,3,0,1,192,0,64,3,41,41,9,3,248,96,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,192,11,37,74,14,1,250,64,0,112,0, + 56,0,28,0,12,0,14,0,14,0,14,0,14,0,14,0, + 30,0,28,0,28,0,28,0,28,0,28,0,14,0,15,192, + 3,224,7,0,14,0,12,0,28,0,28,0,28,0,28,0, + 30,0,14,0,14,0,14,0,14,0,14,0,12,0,28,0, + 56,0,112,0,192,0,18,6,18,20,1,9,15,0,192,31, + 192,128,63,225,0,99,255,0,192,254,0,128,56,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--48-480-72-72-P-218-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 30, '1' Height: 29 + Calculated Max Values w=40 h=49 x= 5 y=28 dx=41 dy= 0 ascent=42 len=195 + Font Bounding box w=71 h=68 x=-24 y=-17 + Calculated Min Values x=-5 y=-13 dx= 0 dy= 0 + Pure Font ascent =30 descent=-11 + X Font ascent =38 descent=-11 + Max Font ascent =42 descent=-13 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr30[18369] U8G_SECTION(".progmem.u8g_font_gdr30") = { + 0,71,68,232,239,30,9,231,23,124,32,255,245,42,243,38, + 245,0,0,0,11,0,0,6,36,36,13,3,255,12,60,124, + 124,124,124,124,120,120,120,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,0,0,0,0,56,124,252,252,248, + 112,13,16,32,20,4,19,48,56,240,248,240,248,240,240,240, + 240,240,240,240,112,240,112,240,112,240,112,112,112,112,112,96, + 112,96,112,96,112,96,112,21,27,81,23,2,3,0,48,96, + 0,112,224,0,96,192,0,224,192,0,225,192,0,225,192,0, + 193,128,1,195,128,31,255,248,31,255,248,3,135,0,3,135, + 0,3,7,0,3,6,0,7,14,0,7,14,0,6,14,0, + 255,255,192,255,255,192,12,28,0,12,24,0,28,56,0,28, + 56,0,24,48,0,56,112,0,56,112,0,48,96,0,20,36, + 108,23,1,252,0,96,0,0,96,0,0,96,0,0,96,0, + 3,254,0,15,255,128,62,127,192,120,103,128,112,99,128,240, + 96,0,240,96,0,240,96,0,248,96,0,126,96,0,127,224, + 0,63,240,0,15,254,0,1,255,0,0,127,192,0,111,224, + 0,99,224,0,97,240,0,96,240,0,96,240,64,96,240,96, + 96,240,112,96,224,120,97,224,124,99,192,127,255,128,31,255, + 0,7,248,0,0,96,0,0,96,0,0,96,0,0,96,0, + 31,30,120,34,1,255,7,192,0,96,31,224,1,240,60,240, + 1,192,120,120,3,192,112,120,7,128,240,60,7,0,240,60, + 14,0,240,60,30,0,240,60,60,0,240,60,56,0,240,60, + 120,0,120,56,240,0,120,120,224,0,60,241,192,0,31,227, + 195,224,15,135,143,240,0,7,30,120,0,15,60,60,0,30, + 56,60,0,28,120,30,0,56,120,30,0,120,120,30,0,240, + 120,30,0,224,120,30,1,192,120,30,3,192,60,28,3,128, + 60,60,7,0,30,120,15,0,15,240,12,0,7,192,30,34, + 136,32,2,0,0,63,0,0,0,255,128,0,1,199,192,0, + 3,131,224,0,7,1,224,0,7,1,224,0,15,1,224,0, + 15,1,224,0,15,3,224,0,15,3,192,0,15,135,192,0, + 15,143,128,0,7,191,0,0,7,254,0,0,7,248,0,0, + 7,240,0,0,15,240,63,248,31,240,127,252,62,120,30,48, + 60,124,15,0,124,60,15,0,120,30,7,0,240,31,7,0, + 240,15,135,0,240,7,198,0,240,3,198,0,240,3,236,0, + 240,1,252,0,248,0,252,0,120,0,126,0,60,0,255,0, + 63,3,143,200,15,255,7,240,3,248,3,192,4,16,16,12, + 4,19,48,240,240,240,240,240,240,240,240,240,112,112,96,96, + 96,96,11,45,90,15,3,249,0,32,0,224,1,192,3,128, + 3,128,7,0,14,0,14,0,28,0,28,0,60,0,56,0, + 56,0,120,0,120,0,120,0,112,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,240,0, + 240,0,120,0,120,0,120,0,120,0,56,0,60,0,60,0, + 28,0,30,0,14,0,15,0,7,0,3,128,1,192,0,224, + 0,32,11,45,90,15,1,249,128,0,224,0,112,0,56,0, + 28,0,30,0,14,0,15,0,7,0,7,128,7,128,3,128, + 3,192,3,192,3,192,3,192,1,224,1,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224, + 1,192,3,192,3,192,3,192,3,128,3,128,7,128,7,0, + 15,0,14,0,14,0,28,0,56,0,56,0,112,0,224,0, + 128,0,18,20,60,21,2,17,0,192,0,1,192,0,1,192, + 0,1,192,0,193,193,0,240,195,192,248,207,192,124,223,0, + 15,252,0,3,224,0,3,224,0,15,252,0,60,223,0,248, + 207,128,240,195,128,64,193,128,1,192,0,1,192,0,1,192, + 0,1,128,0,17,17,51,20,1,5,0,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1, + 192,0,255,255,128,255,255,128,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,1,128,0,7,13,13, + 11,2,249,8,60,254,254,30,30,30,28,28,56,48,96,64, + 14,2,4,16,1,11,127,252,255,248,6,6,6,11,3,255, + 56,124,252,252,248,112,20,46,138,23,1,248,0,0,48,0, + 0,240,0,0,240,0,0,224,0,1,224,0,1,192,0,1, + 192,0,3,192,0,3,128,0,7,128,0,7,128,0,7,0, + 0,15,0,0,15,0,0,14,0,0,30,0,0,28,0,0, + 28,0,0,60,0,0,56,0,0,120,0,0,120,0,0,112, + 0,0,240,0,0,224,0,0,224,0,1,224,0,1,192,0, + 3,192,0,3,192,0,3,128,0,7,128,0,7,128,0,7, + 0,0,15,0,0,14,0,0,30,0,0,30,0,0,28,0, + 0,60,0,0,60,0,0,56,0,0,120,0,0,112,0,0, + 240,0,0,192,0,0,19,29,87,23,2,0,1,248,0,7, + 252,0,14,30,0,28,15,0,24,7,128,56,7,128,56,3, + 192,112,3,192,112,3,192,112,3,224,240,1,224,240,1,224, + 240,1,224,240,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,192,120,1,192,120,3,192,120,3, + 128,60,3,128,60,3,0,30,7,0,15,14,0,7,252,0, + 3,240,0,17,29,87,23,3,0,0,96,0,1,224,0,15, + 224,0,127,224,0,255,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,3,240,0,63,254,0,127,255,128, + 17,29,87,22,2,0,1,248,0,7,254,0,28,31,0,56, + 15,0,120,15,128,112,7,128,240,7,128,224,7,128,0,7, + 128,0,7,128,0,15,0,0,15,0,0,30,0,0,30,0, + 0,60,0,0,120,0,0,240,0,0,240,0,1,224,0,3, + 192,0,7,128,0,15,0,0,15,0,0,30,0,128,60,0, + 128,120,0,128,240,1,128,255,255,128,255,255,128,18,29,87, + 22,1,0,1,248,0,7,254,0,30,31,0,60,15,0,56, + 7,128,120,7,128,112,7,128,0,7,128,0,7,0,0,15, + 0,0,30,0,0,60,0,0,248,0,3,254,0,0,63,0, + 0,15,128,0,7,128,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,7,128,128,7,128,224,15, + 0,120,62,0,63,252,0,7,224,0,19,29,87,23,1,0, + 0,3,0,0,15,0,0,31,0,0,63,0,0,127,0,0, + 127,0,0,239,0,0,207,0,1,207,0,3,143,0,3,143, + 0,7,15,0,14,15,0,14,15,0,28,15,0,24,15,0, + 56,15,0,112,15,0,112,15,0,255,255,224,255,255,192,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,63,128,1,255,224,18,29,87,23,2,0,0,0,128, + 0,1,128,31,255,0,31,254,0,24,0,0,24,0,0,24, + 0,0,24,0,0,56,0,0,56,0,0,56,0,0,63,240, + 0,63,252,0,120,63,0,32,15,0,0,7,128,0,7,192, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,128,0,7,128,128,7,128,224,15,0,120,62,0,63,252, + 0,7,240,0,18,29,87,23,3,0,0,7,0,0,63,0, + 0,248,0,1,224,0,3,192,0,15,0,0,14,0,0,30, + 0,0,60,0,0,56,0,0,120,0,0,120,248,0,119,254, + 0,254,31,0,248,15,128,240,7,128,240,7,192,240,3,192, + 240,3,192,240,3,192,240,3,192,248,3,192,120,3,128,120, + 3,128,60,7,128,60,7,0,31,14,0,15,252,0,3,240, + 0,19,27,81,23,2,0,127,255,192,127,255,224,96,1,192, + 64,3,192,192,3,128,0,3,128,0,7,0,0,7,0,0, + 14,0,0,14,0,0,28,0,0,28,0,0,56,0,0,56, + 0,0,56,0,0,112,0,0,112,0,0,224,0,0,224,0, + 1,192,0,1,192,0,3,192,0,7,128,0,7,128,0,15, + 0,0,15,0,0,28,0,0,18,29,87,22,2,0,3,248, + 0,15,254,0,28,31,0,56,15,0,48,7,128,112,7,128, + 112,7,128,112,7,128,112,7,0,120,15,0,62,30,0,31, + 188,0,15,240,0,3,252,0,7,254,0,30,63,0,60,15, + 128,120,7,192,112,7,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,128,120,7,128,124,7,0,62,14,0,31, + 252,0,7,224,0,19,30,90,23,2,255,1,248,0,7,254, + 0,14,31,0,28,15,128,56,7,128,120,3,192,112,3,192, + 240,3,224,240,1,224,240,1,224,240,1,224,240,1,224,248, + 1,224,120,3,224,124,7,224,62,13,224,31,249,224,7,225, + 192,0,3,192,0,3,192,0,7,128,0,7,128,0,15,0, + 0,30,0,0,60,0,0,120,0,0,240,0,3,224,0,31, + 128,0,56,0,0,6,23,23,11,3,255,56,124,252,252,248, + 112,0,0,0,0,0,0,0,0,0,0,0,56,124,252,252, + 248,112,7,29,29,11,2,249,28,62,126,126,124,56,0,0, + 0,0,0,0,0,0,0,0,8,60,254,254,30,30,30,28, + 28,56,48,96,64,19,15,45,21,1,6,0,0,96,0,3, + 192,0,31,192,0,127,0,3,252,0,31,224,0,127,0,0, + 124,0,0,254,0,0,63,192,0,7,240,0,1,254,0,0, + 63,192,0,7,224,0,1,128,19,9,27,21,1,9,127,255, + 224,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,127,255,224,255,255,192,19,15,45,21,1,6,48, + 0,0,252,0,0,127,128,0,15,240,0,3,254,0,0,127, + 128,0,15,224,0,3,192,0,31,192,0,255,0,3,248,0, + 31,192,0,127,0,0,120,0,0,192,0,0,17,36,108,21, + 2,255,3,248,0,15,254,0,60,63,0,120,15,0,120,15, + 128,240,7,128,240,7,128,240,7,128,224,7,128,0,7,128, + 0,15,0,0,15,0,0,30,0,0,30,0,0,60,0,0, + 120,0,0,112,0,0,224,0,1,224,0,1,192,0,3,192, + 0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + 0,0,0,0,0,0,0,0,0,0,0,0,1,192,0,3, + 224,0,7,224,0,7,224,0,7,192,0,3,128,0,36,39, + 195,39,1,248,0,0,255,128,0,0,7,255,224,0,0,31, + 1,248,0,0,120,0,62,0,0,224,0,31,0,1,192,0, + 15,0,7,128,0,7,128,7,0,0,3,192,14,0,0,1, + 192,28,0,124,33,224,28,1,255,96,224,56,3,135,224,224, + 56,7,3,224,224,120,14,1,224,240,112,14,1,224,112,112, + 30,1,224,112,240,28,1,224,112,240,60,1,224,112,240,60, + 1,224,112,240,60,1,224,112,240,60,1,224,112,240,60,1, + 224,112,240,60,1,224,96,248,60,1,224,224,248,62,1,224, + 192,120,30,1,224,192,120,31,3,225,128,124,15,5,225,0, + 60,15,141,242,0,62,7,248,252,0,31,1,224,112,0,31, + 0,0,0,0,15,128,0,0,0,7,192,0,1,0,3,240, + 0,3,128,1,248,0,14,0,0,127,0,252,0,0,31,255, + 240,0,0,3,255,0,0,28,30,120,29,0,0,0,2,0, + 0,0,7,0,0,0,15,0,0,0,15,0,0,0,31,128, + 0,0,31,128,0,0,27,128,0,0,59,192,0,0,57,192, + 0,0,49,224,0,0,113,224,0,0,112,224,0,0,96,240, + 0,0,224,240,0,0,224,112,0,0,192,120,0,1,192,120, + 0,1,192,56,0,1,255,252,0,3,255,252,0,3,128,30, + 0,3,0,30,0,7,0,30,0,7,0,15,0,6,0,15, + 0,14,0,15,0,14,0,7,128,12,0,7,128,62,0,7, + 192,255,192,63,240,24,30,90,27,0,0,7,254,0,255,255, + 192,111,7,224,15,1,240,15,0,248,15,0,120,15,0,120, + 15,0,120,15,0,120,15,0,112,15,0,240,15,1,224,15, + 7,192,15,255,192,15,255,240,15,1,248,15,0,124,15,0, + 62,15,0,30,15,0,31,15,0,15,15,0,15,15,0,15, + 15,0,15,15,0,14,15,0,30,15,0,60,15,0,248,63, + 255,240,127,255,128,23,30,90,26,1,0,0,31,224,0,255, + 252,1,192,252,7,128,56,14,0,16,14,0,0,28,0,0, + 56,0,0,56,0,0,120,0,0,112,0,0,112,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,120,0,0,120,0,0,124,0,0, + 60,0,0,30,0,4,31,0,14,15,128,56,7,224,240,1, + 255,192,0,127,0,25,30,120,28,1,0,7,254,0,0,255, + 255,192,0,111,3,240,0,15,0,248,0,15,0,124,0,15, + 0,62,0,15,0,30,0,15,0,31,0,15,0,15,0,15, + 0,15,0,15,0,15,128,15,0,7,128,15,0,7,128,15, + 0,7,128,15,0,7,128,15,0,7,128,15,0,7,128,15, + 0,7,128,15,0,7,128,15,0,7,0,15,0,15,0,15, + 0,15,0,15,0,30,0,15,0,30,0,15,0,60,0,15, + 0,124,0,15,0,248,0,15,3,224,0,63,255,192,0,127, + 254,0,0,21,30,90,24,1,0,255,255,224,127,255,240,30, + 0,96,30,0,96,30,0,96,30,0,96,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 31,255,128,31,255,128,30,3,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,8,30,0,24,30,0,24,31,0,56,127,255,240, + 255,255,240,20,30,90,23,1,0,255,255,240,127,255,240,30, + 0,96,30,0,96,30,0,32,30,0,32,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 31,255,0,31,255,0,30,6,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,127,128,0, + 255,224,0,24,30,90,28,2,0,0,31,224,0,255,248,1, + 192,252,7,128,56,15,0,16,30,0,0,28,0,0,56,0, + 0,56,0,0,120,0,0,112,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,7,255,240,0,254,240, + 0,60,240,0,60,248,0,60,120,0,60,120,0,60,60,0, + 60,62,0,60,30,0,60,15,0,60,7,192,248,3,255,224, + 0,127,0,27,30,120,31,2,0,255,192,127,224,127,128,63, + 192,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,31,255,255,0,31,255,255,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,127,0,31,192,255,192,127, + 224,10,30,60,14,2,0,255,192,127,128,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,127, + 128,255,192,17,38,114,15,252,248,7,255,128,0,255,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,56,0,0,56,0,0,56,0,0,112,0,0,112,0,0, + 224,0,112,192,0,255,0,0,124,0,0,26,30,120,28,1, + 0,255,193,255,128,127,128,124,0,30,0,120,0,30,0,240, + 0,30,1,224,0,30,1,192,0,30,3,128,0,30,7,0, + 0,30,14,0,0,30,28,0,0,30,56,0,0,30,120,0, + 0,30,112,0,0,30,224,0,0,31,224,0,0,30,240,0, + 0,30,120,0,0,30,124,0,0,30,62,0,0,30,30,0, + 0,30,15,0,0,30,7,128,0,30,7,192,0,30,3,224, + 0,30,1,240,0,30,0,248,0,30,0,124,0,30,0,126, + 0,127,128,63,192,255,192,31,0,21,30,90,23,1,0,255, + 192,0,127,128,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,8,30,0,24,30,0,24, + 31,0,48,127,255,240,255,255,240,36,30,150,39,1,0,127, + 0,0,15,224,31,128,0,31,128,15,128,0,31,0,15,128, + 0,63,0,15,192,0,63,0,15,192,0,55,0,15,224,0, + 119,0,14,224,0,119,0,14,240,0,231,0,14,240,0,231, + 0,14,120,0,199,0,14,120,1,199,0,14,56,1,199,0, + 14,60,3,135,0,14,28,3,135,0,14,30,7,7,0,14, + 30,7,7,0,14,15,6,7,0,14,15,14,7,0,14,7, + 14,7,0,14,7,156,7,0,14,3,156,7,0,14,3,216, + 7,0,14,3,248,7,0,14,1,248,7,0,14,1,240,7, + 0,14,0,240,7,0,14,0,224,7,0,63,0,224,31,192, + 255,192,96,127,240,27,30,120,31,2,0,252,0,63,224,124, + 0,15,128,30,0,7,0,31,0,7,0,31,0,7,0,31, + 128,7,0,31,192,7,0,29,192,7,0,28,224,7,0,28, + 240,7,0,28,120,7,0,28,56,7,0,28,60,7,0,28, + 30,7,0,28,14,7,0,28,15,7,0,28,7,135,0,28, + 7,135,0,28,3,199,0,28,1,231,0,28,1,231,0,28, + 0,247,0,28,0,127,0,28,0,127,0,28,0,63,0,28, + 0,31,0,28,0,31,0,28,0,15,0,62,0,7,0,255, + 128,3,0,25,30,120,29,2,0,0,63,0,0,0,255,224, + 0,3,193,240,0,7,0,248,0,14,0,124,0,28,0,62, + 0,60,0,30,0,56,0,31,0,120,0,15,0,120,0,15, + 0,112,0,15,128,240,0,7,128,240,0,7,128,240,0,7, + 128,240,0,7,128,240,0,7,128,240,0,7,128,240,0,7, + 128,240,0,7,128,248,0,7,0,120,0,15,0,120,0,15, + 0,124,0,14,0,60,0,28,0,62,0,28,0,31,0,56, + 0,15,128,112,0,7,193,224,0,3,255,128,0,0,254,0, + 0,22,30,90,25,1,0,7,254,0,255,255,192,111,7,224, + 15,1,240,15,0,248,15,0,124,15,0,60,15,0,60,15, + 0,60,15,0,60,15,0,60,15,0,60,15,0,120,15,0, + 120,15,0,240,15,131,224,15,127,192,15,62,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,63,192,0,127,240, + 0,28,37,148,29,2,249,0,63,0,0,0,255,224,0,3, + 193,240,0,7,0,248,0,14,0,124,0,28,0,62,0,60, + 0,30,0,56,0,31,0,120,0,15,0,120,0,15,0,112, + 0,15,128,240,0,7,128,240,0,7,128,240,0,7,128,240, + 0,7,128,240,0,7,128,240,0,7,128,240,0,7,128,240, + 0,7,128,248,0,7,0,120,0,15,0,120,0,15,0,124, + 0,14,0,60,0,30,0,62,0,28,0,31,0,56,0,15, + 128,112,0,7,193,224,0,3,255,192,0,0,127,128,0,0, + 3,192,0,0,1,224,0,0,0,248,16,0,0,124,48,0, + 0,31,224,0,0,15,224,0,0,3,128,26,30,120,27,1, + 0,7,254,0,0,255,255,192,0,111,7,224,0,15,1,240, + 0,15,0,240,0,15,0,120,0,15,0,120,0,15,0,120, + 0,15,0,120,0,15,0,120,0,15,0,112,0,15,0,240, + 0,15,1,224,0,15,3,192,0,15,255,0,0,15,254,0, + 0,15,14,0,0,15,7,0,0,15,7,128,0,15,3,128, + 0,15,3,192,0,15,1,192,0,15,1,224,0,15,0,240, + 0,15,0,240,0,15,0,120,0,15,0,124,0,15,0,62, + 0,63,192,63,192,127,224,31,0,18,30,90,23,3,0,3, + 248,0,31,254,0,60,63,0,120,14,0,112,4,0,240,0, + 0,240,0,0,240,0,0,248,0,0,252,0,0,127,0,0, + 127,192,0,63,240,0,31,248,0,7,254,0,1,255,0,0, + 127,128,0,31,128,0,15,192,0,7,192,0,3,192,0,3, + 192,0,3,192,128,3,128,192,3,128,224,7,0,240,15,0, + 252,62,0,255,248,0,15,224,0,26,30,120,26,0,0,127, + 255,255,192,127,255,255,192,96,30,1,128,192,30,1,128,192, + 30,1,128,128,30,0,128,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 127,128,0,1,255,224,0,27,30,120,31,2,0,255,192,127, + 224,127,128,63,192,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,30,0,15,0,30,0,15,0,30, + 0,7,128,60,0,7,192,120,0,3,224,240,0,1,255,224, + 0,0,63,128,0,30,30,120,31,0,0,255,224,15,252,31, + 0,1,240,15,0,0,224,15,0,1,192,7,0,1,192,7, + 128,1,192,7,128,3,128,3,192,3,128,3,192,3,128,3, + 192,7,0,1,224,7,0,1,224,6,0,0,224,14,0,0, + 240,14,0,0,240,12,0,0,120,28,0,0,120,28,0,0, + 120,56,0,0,60,56,0,0,60,56,0,0,28,112,0,0, + 30,112,0,0,30,112,0,0,15,224,0,0,15,224,0,0, + 15,224,0,0,7,192,0,0,7,192,0,0,3,128,0,0, + 3,0,0,40,30,150,41,0,0,255,224,24,3,255,63,0, + 24,0,252,14,0,28,0,48,15,0,60,0,112,15,0,60, + 0,112,15,0,62,0,112,7,0,126,0,96,7,0,127,0, + 224,7,128,127,0,224,7,128,103,0,224,7,128,231,128,224, + 3,128,231,128,192,3,192,195,129,192,3,193,195,193,192,3, + 193,195,193,192,1,193,129,193,192,1,195,129,225,128,1,227, + 129,227,128,1,227,0,227,128,1,231,0,243,128,0,231,0, + 243,128,0,246,0,115,0,0,254,0,127,0,0,254,0,63, + 0,0,124,0,63,0,0,124,0,62,0,0,124,0,30,0, + 0,124,0,30,0,0,120,0,30,0,0,48,0,8,0,28, + 30,120,30,1,0,255,224,255,224,255,224,255,224,63,0,31, + 0,31,0,30,0,15,128,28,0,7,128,56,0,3,192,120, + 0,3,224,112,0,1,224,224,0,0,241,224,0,0,249,192, + 0,0,127,128,0,0,63,128,0,0,31,0,0,0,31,0, + 0,0,31,0,0,0,63,128,0,0,63,192,0,0,115,224, + 0,0,241,224,0,0,224,240,0,1,192,248,0,3,192,120, + 0,3,128,60,0,7,0,62,0,15,0,31,0,14,0,15, + 0,62,0,15,192,255,192,127,240,255,192,127,240,28,30,120, + 29,0,0,252,0,63,240,254,0,63,240,31,0,15,128,15, + 0,7,0,15,128,14,0,7,192,14,0,3,192,28,0,3, + 224,60,0,1,224,56,0,0,240,120,0,0,248,112,0,0, + 120,224,0,0,125,224,0,0,61,192,0,0,63,192,0,0, + 31,128,0,0,31,128,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,63,192,0,0,255,240,0,22,30,90,25,1, + 0,63,255,252,63,255,252,56,0,120,48,0,248,48,1,240, + 32,1,224,32,3,224,0,3,192,0,7,128,0,15,128,0, + 15,0,0,31,0,0,30,0,0,60,0,0,124,0,0,120, + 0,0,248,0,1,240,0,1,224,0,3,224,0,3,192,0, + 7,128,0,15,128,0,15,0,4,31,0,12,62,0,12,60, + 0,12,124,0,28,127,255,252,255,255,252,11,45,90,15,3, + 248,255,224,255,224,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,255,224,255,224,20,46,138,23,1, + 248,224,0,0,112,0,0,112,0,0,120,0,0,56,0,0, + 56,0,0,28,0,0,28,0,0,30,0,0,14,0,0,14, + 0,0,15,0,0,7,0,0,7,0,0,7,128,0,3,128, + 0,3,192,0,1,192,0,1,192,0,1,224,0,0,224,0, + 0,224,0,0,240,0,0,112,0,0,112,0,0,56,0,0, + 56,0,0,60,0,0,28,0,0,28,0,0,30,0,0,14, + 0,0,14,0,0,7,0,0,7,0,0,7,128,0,3,128, + 0,3,128,0,3,192,0,1,192,0,1,192,0,1,224,0, + 0,224,0,0,240,0,0,112,0,0,48,11,45,90,15,1, + 248,255,224,255,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,255,224,255,224,19,23,69,24,2, + 13,0,32,0,0,112,0,0,240,0,1,240,0,1,248,0, + 1,248,0,3,188,0,3,188,0,7,60,0,7,30,0,6, + 30,0,14,14,0,14,15,0,12,15,0,28,7,128,28,7, + 128,24,3,128,56,3,192,48,3,192,112,1,224,112,1,224, + 96,0,224,192,0,192,20,2,6,23,1,251,127,255,240,255, + 255,240,9,10,20,15,1,25,240,0,248,0,120,0,60,0, + 28,0,14,0,7,0,3,0,1,128,1,128,20,22,66,22, + 2,0,1,248,0,15,254,0,28,30,0,120,15,0,112,15, + 0,240,15,0,128,15,0,0,15,0,0,15,0,0,255,0, + 7,255,0,31,143,0,62,15,0,120,15,0,248,15,0,240, + 15,0,240,15,0,240,31,0,240,63,0,120,239,32,127,143, + 240,30,7,128,22,36,108,24,0,0,6,0,0,126,0,0, + 254,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,15,128,30,63,224,30,127,240,30,227,240, + 31,192,248,31,128,248,31,0,124,30,0,124,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 56,30,0,56,30,0,112,30,0,96,31,0,224,15,193,192, + 3,255,0,0,252,0,18,22,66,21,2,0,0,127,0,3, + 255,192,7,7,192,14,1,128,28,0,128,56,0,0,120,0, + 0,112,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,248,0,0,120,0,0,120,0,0,60, + 0,64,62,1,192,31,131,128,7,254,0,1,248,0,23,36, + 108,25,2,0,0,0,224,0,15,224,0,15,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,253, + 224,3,255,224,15,15,224,28,3,224,60,1,224,56,1,224, + 120,1,224,112,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,120,1,224,120,1, + 224,124,3,224,62,5,228,31,25,254,15,240,248,7,192,224, + 18,22,66,22,2,0,0,248,0,7,254,0,14,15,0,28, + 7,128,56,7,128,56,3,192,112,3,192,112,3,192,255,255, + 192,255,255,128,240,0,0,240,0,0,240,0,0,240,0,0, + 248,0,0,120,0,0,120,0,0,124,0,192,62,1,128,31, + 7,0,15,254,0,3,248,0,19,36,108,15,0,0,0,15, + 128,0,63,224,0,99,192,1,193,128,3,128,0,3,128,0, + 7,128,0,7,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,63,254,0,255,252,0,15,8, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,31,224,0,127,248,0,24,33,99,24,0,245, + 0,252,2,3,255,126,7,7,252,14,3,224,30,1,224,28, + 1,240,60,0,240,60,0,240,60,0,240,60,0,240,62,0, + 224,31,1,192,15,131,128,7,255,0,1,252,0,3,192,0, + 7,128,0,15,128,0,15,224,0,7,255,128,3,255,240,7, + 191,252,14,0,254,60,0,31,120,0,15,240,0,15,240,0, + 15,240,0,14,248,0,28,124,0,56,63,128,240,15,255,192, + 1,254,0,23,36,108,26,2,0,6,0,0,126,0,0,254, + 0,0,62,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,7,128,28,31,224,28,49,224,28,96,240,28, + 192,240,29,128,240,31,0,240,31,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,63, + 131,248,255,199,254,10,32,64,13,2,0,28,0,30,0,62, + 0,62,0,28,0,0,0,0,0,0,0,0,0,0,0,6, + 0,126,0,254,0,62,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,63,0,255,192,14,43,86,12,251, + 245,0,56,0,60,0,124,0,124,0,56,0,0,0,0,0, + 0,0,0,0,0,0,12,0,252,1,252,0,124,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,56,0,56,0,120,0,112,0,112,48, + 224,127,128,255,0,124,0,23,36,108,24,1,0,6,0,0, + 126,0,0,254,0,0,62,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,7,252,30,1,240,30,1,192, + 30,3,128,30,7,0,30,14,0,30,56,0,30,112,0,30, + 224,0,31,224,0,30,240,0,30,248,0,30,120,0,30,60, + 0,30,30,0,30,15,0,30,15,128,30,7,192,30,3,224, + 30,1,224,63,0,254,255,192,124,12,36,72,13,1,0,3, + 0,63,0,127,0,31,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,31,128,255,240,36,22,110,39,2,0,12,7,192, + 124,0,254,31,224,255,0,62,49,227,143,0,30,96,247,7, + 128,30,192,254,7,128,31,128,252,7,128,31,0,248,7,128, + 31,0,248,7,128,30,0,240,7,128,30,0,240,7,128,30, + 0,240,7,128,30,0,240,7,128,30,0,240,7,128,30,0, + 240,7,128,30,0,240,7,128,30,0,240,7,128,30,0,240, + 7,128,30,0,240,7,128,30,0,240,7,128,30,0,240,7, + 128,127,131,252,31,192,255,199,254,63,240,23,22,66,26,2, + 0,12,7,192,254,15,224,62,49,224,30,96,240,30,192,240, + 30,128,240,31,0,240,31,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,127,131,248, + 255,199,254,20,22,66,24,2,0,0,252,0,7,255,0,14, + 15,128,28,7,192,56,3,192,56,3,224,112,1,224,112,1, + 240,240,0,240,240,0,240,240,0,240,240,0,240,240,0,240, + 240,0,240,248,0,224,120,1,224,124,1,192,60,1,192,62, + 3,128,31,7,0,15,254,0,3,240,0,21,33,99,25,2, + 245,12,7,128,254,31,192,62,35,224,30,65,240,30,129,240, + 31,0,240,31,0,248,30,0,248,30,0,120,30,0,120,30, + 0,120,30,0,120,30,0,120,30,0,120,30,0,112,30,0, + 112,30,0,224,30,0,224,31,1,192,31,195,128,30,255,0, + 30,62,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,127,0, + 0,255,224,0,22,33,99,25,2,245,0,252,48,3,255,96, + 7,15,224,30,3,224,28,1,224,56,1,224,120,1,224,112, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,1,224,120,1,224,120,1,224,124,3,224, + 62,7,224,31,29,224,15,249,224,3,225,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,3,240,0,31,252,17,22,66, + 19,1,0,4,15,0,126,63,128,254,127,128,30,227,128,30, + 195,128,31,129,0,31,128,0,31,0,0,31,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,63, + 128,0,255,224,0,15,22,44,19,2,0,15,192,63,248,120, + 120,112,56,240,16,240,0,248,0,252,0,127,0,63,192,31, + 240,7,248,1,252,0,126,0,62,128,30,128,30,192,30,224, + 60,240,120,255,240,31,192,16,30,60,17,0,0,3,0,7, + 0,15,0,15,0,15,0,15,0,15,0,15,0,63,255,255, + 255,15,4,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,1,7,135,7,254,3,240,24,22,66,25,1,0,6, + 0,112,254,7,240,126,7,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,1,240,31,2,240,15,12,255,15,248,252,3,224, + 112,23,22,66,24,0,0,255,192,254,62,0,60,30,0,56, + 30,0,48,15,0,112,15,0,112,7,0,96,7,128,224,7, + 128,192,3,193,192,3,193,192,1,193,128,1,227,128,1,227, + 0,0,243,0,0,247,0,0,118,0,0,126,0,0,126,0, + 0,60,0,0,60,0,0,16,0,33,22,110,34,0,0,255, + 192,96,63,128,62,0,224,15,0,30,0,224,14,0,30,0, + 240,14,0,14,1,240,12,0,15,1,240,12,0,15,1,248, + 28,0,7,3,248,28,0,7,3,56,24,0,7,131,60,24, + 0,3,135,28,56,0,3,134,30,48,0,3,198,30,48,0, + 1,206,14,112,0,1,204,15,96,0,1,252,15,96,0,1, + 252,7,96,0,0,248,7,224,0,0,248,7,192,0,0,240, + 3,192,0,0,112,3,192,0,0,96,3,0,0,24,22,66, + 24,0,0,127,227,254,127,227,254,31,128,248,15,128,224,7, + 128,192,3,193,192,1,227,128,0,247,0,0,254,0,0,124, + 0,0,60,0,0,62,0,0,127,0,0,239,0,1,199,128, + 3,131,192,3,1,224,7,0,240,14,0,248,62,0,252,255, + 131,255,255,131,255,24,33,99,24,255,245,127,224,255,31,0, + 62,15,0,28,15,0,24,7,128,56,7,128,56,3,128,48, + 3,192,112,3,192,96,1,224,224,1,224,224,0,224,192,0, + 241,192,0,241,192,0,121,128,0,123,128,0,59,0,0,63, + 0,0,63,0,0,30,0,0,30,0,0,12,0,0,12,0, + 0,28,0,0,24,0,0,56,0,0,112,0,0,112,0,0, + 224,0,63,192,0,127,128,0,255,0,0,124,0,0,17,22, + 66,21,2,0,127,255,128,127,255,128,96,15,0,96,15,0, + 64,30,0,64,60,0,0,60,0,0,120,0,0,240,0,0, + 240,0,1,224,0,3,192,0,3,192,0,7,128,0,15,0, + 0,14,0,0,30,0,128,60,0,128,120,0,128,120,1,128, + 255,255,128,255,255,128,13,45,90,16,2,249,0,8,0,56, + 0,112,1,224,1,192,3,128,3,128,7,128,7,128,7,128, + 7,128,7,128,7,192,3,192,3,192,3,192,3,192,3,192, + 3,128,7,128,7,0,30,0,126,0,255,0,7,128,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,7,192,7,128, + 7,128,7,128,7,128,7,128,7,128,3,128,3,192,1,192, + 0,224,0,120,0,24,4,49,49,11,4,246,112,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,224,13,45,90, + 16,1,249,192,0,240,0,56,0,28,0,30,0,14,0,15, + 0,15,0,15,0,15,0,15,0,15,0,31,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,15,0,7,240,3, + 248,3,192,7,0,15,0,14,0,30,0,30,0,30,0,30, + 0,30,0,31,0,15,0,15,0,15,0,15,0,15,0,14, + 0,30,0,28,0,56,0,112,0,224,0,128,0,21,8,24, + 23,1,11,7,128,8,15,224,24,31,240,16,63,252,48,49, + 255,224,96,127,192,64,31,128,192,15,0,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,11, + 0,0,6,35,35,13,3,243,56,124,252,252,252,248,112,0, + 16,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 120,120,120,120,120,124,124,124,124,120,96,18,30,90,23,2, + 255,0,96,0,0,96,0,0,96,0,0,96,0,0,255,0, + 3,255,128,15,255,192,30,99,128,60,97,128,56,97,0,120, + 96,0,112,96,0,240,96,0,240,96,0,240,96,0,240,96, + 0,240,96,0,240,96,0,248,96,0,120,96,0,124,96,192, + 62,97,128,63,231,128,31,255,0,15,252,0,3,248,0,0, + 96,0,0,96,0,0,96,0,0,96,0,19,29,87,23,2, + 0,0,127,0,1,255,224,3,131,224,7,1,192,6,0,192, + 14,0,192,14,0,192,30,0,64,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,255,248,0,255,248, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 28,0,0,28,0,32,28,0,32,24,0,96,56,0,224,63, + 255,224,127,255,224,192,255,224,15,15,30,23,4,7,128,2, + 192,6,103,204,63,248,56,56,112,28,96,12,96,12,96,12, + 96,12,48,24,56,56,127,252,231,206,192,6,25,28,112,23, + 254,0,126,0,255,128,254,0,63,128,31,0,30,0,15,128, + 60,0,7,192,120,0,3,192,112,0,3,224,240,0,1,224, + 224,0,0,241,224,0,0,241,192,0,0,123,192,0,0,127, + 128,0,0,63,0,0,0,63,0,0,0,30,0,0,0,30, + 0,0,15,255,252,0,15,255,252,0,0,30,0,0,0,30, + 0,0,0,30,0,0,0,30,0,0,0,30,0,0,0,30, + 0,0,0,30,0,0,0,30,0,0,0,127,128,0,1,255, + 224,0,4,49,49,11,4,246,112,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,224,0,0, + 0,0,0,112,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,224,19,34,102,24,2,0,1, + 248,0,7,254,0,30,31,0,60,7,0,60,6,0,60,0, + 0,62,0,0,63,0,0,31,128,0,31,224,0,31,248,0, + 63,252,0,121,255,0,240,127,128,240,63,192,240,15,192,240, + 7,224,248,3,224,124,1,224,126,1,224,63,129,192,31,225, + 192,7,251,128,3,255,0,0,255,0,0,63,128,0,15,128, + 16,7,128,16,7,128,24,7,128,28,7,0,30,15,0,31, + 254,0,3,240,0,15,5,10,19,2,27,112,14,240,30,240, + 30,240,30,224,28,30,30,120,34,2,0,0,31,224,0,0, + 255,252,0,1,224,30,0,7,128,7,128,14,0,1,192,28, + 3,240,224,24,15,252,96,48,60,60,48,112,112,8,56,96, + 224,0,24,97,224,0,24,193,224,0,12,195,192,0,12,195, + 192,0,12,195,192,0,12,195,192,0,12,195,192,0,12,195, + 192,0,12,195,224,0,12,97,224,0,24,97,240,8,24,112, + 248,12,56,48,124,48,48,24,63,224,96,28,15,128,224,14, + 0,1,192,7,128,7,128,1,224,30,0,0,255,252,0,0, + 31,224,0,11,15,30,12,1,14,15,0,31,0,51,128,97, + 128,97,128,3,128,29,128,97,128,193,128,193,128,239,128,253, + 224,121,128,255,192,255,192,18,21,63,23,2,0,0,128,64, + 1,128,192,3,1,128,7,3,0,14,7,0,14,14,0,28, + 30,0,60,60,0,120,60,0,240,120,0,240,120,0,248,120, + 0,120,60,0,60,60,0,28,30,0,14,14,0,14,7,0, + 7,3,0,3,1,128,1,128,192,0,128,64,20,10,30,23, + 1,4,127,255,240,255,255,240,0,0,112,0,0,112,0,0, + 112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,96, + 14,2,4,16,1,11,127,252,255,248,15,17,34,17,1,17, + 7,192,31,240,56,56,96,12,79,132,196,70,132,66,132,194, + 135,130,133,130,132,130,196,198,68,100,106,60,56,56,31,240, + 7,192,16,2,4,24,4,28,127,255,255,254,11,11,22,17, + 3,18,15,0,63,192,113,224,96,224,224,224,224,224,224,224, + 224,192,241,128,127,0,62,0,17,22,66,20,1,3,0,192, + 0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,255,255,128,255,255,128,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + 0,0,0,0,0,0,0,0,0,0,127,255,128,255,255,128, + 13,17,34,17,2,15,7,192,31,240,112,248,96,120,224,120, + 0,120,0,112,0,224,1,224,3,192,7,128,15,0,30,0, + 60,8,120,24,255,248,255,248,14,18,36,16,1,14,15,128, + 63,224,113,240,224,240,192,240,0,240,1,224,7,128,15,224, + 1,240,0,120,0,60,0,60,0,60,128,120,224,248,63,224, + 15,128,10,10,20,15,5,25,7,128,7,192,15,0,15,0, + 30,0,60,0,56,0,112,0,96,0,192,0,25,33,132,26, + 1,245,6,0,24,0,254,0,248,0,126,0,120,0,30,0, + 120,0,30,0,120,0,30,0,120,0,30,0,120,0,30,0, + 120,0,30,0,120,0,30,0,120,0,30,0,120,0,30,0, + 120,0,30,0,120,0,30,0,120,0,30,0,120,0,31,0, + 248,0,31,1,248,0,31,131,248,0,31,255,121,0,27,254, + 127,128,25,252,126,0,24,240,56,0,24,0,0,0,24,0, + 0,0,24,0,0,0,28,0,0,0,28,0,0,0,28,0, + 0,0,30,0,0,0,30,0,0,0,31,0,0,0,31,0, + 0,0,24,0,0,0,23,36,108,26,1,250,1,255,254,15, + 255,254,31,7,252,60,7,112,120,7,112,120,7,112,240,7, + 112,240,7,112,240,7,112,240,7,112,240,7,112,248,7,112, + 120,7,112,124,7,112,62,7,112,31,135,112,15,255,112,1, + 255,112,0,7,112,0,7,112,0,7,112,0,7,112,0,7, + 112,0,7,112,0,7,112,0,7,112,0,7,112,0,7,112, + 0,7,112,0,7,112,0,7,112,0,7,112,0,7,112,0, + 7,112,0,31,248,0,63,254,4,5,5,7,2,14,112,240, + 240,240,224,8,10,10,11,2,246,24,56,48,62,127,15,15, + 30,120,224,13,17,34,16,2,15,3,128,31,128,255,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,15,192,127,248,12,15,30,14,1, + 14,15,128,63,192,49,224,96,96,192,112,192,48,192,48,192, + 48,224,48,224,96,120,192,63,128,31,0,255,240,255,240,18, + 21,63,23,3,0,64,64,0,224,96,0,96,48,0,48,24, + 0,56,28,0,28,14,0,14,15,0,15,7,128,7,135,128, + 7,195,192,3,195,192,7,195,192,7,135,128,15,7,128,30, + 15,0,28,14,0,56,28,0,48,56,0,112,48,0,96,96, + 0,192,64,0,24,29,87,28,2,0,4,0,4,60,0,14, + 204,0,24,12,0,56,12,0,48,12,0,112,12,0,224,12, + 0,192,12,1,192,12,3,128,12,3,0,12,7,0,12,6, + 0,127,142,0,0,28,0,0,24,4,0,56,28,0,112,28, + 0,96,44,0,224,108,1,192,76,1,192,140,3,129,12,3, + 3,12,7,3,255,14,7,254,12,0,12,28,0,12,56,0, + 127,24,29,87,28,2,0,4,0,6,60,0,14,204,0,28, + 12,0,24,12,0,56,12,0,112,12,0,112,12,0,224,12, + 0,192,12,1,192,12,3,128,12,3,0,12,7,0,127,142, + 0,0,14,0,0,28,60,0,24,255,0,57,199,0,115,131, + 0,99,3,0,224,2,1,192,4,1,128,8,3,128,16,7, + 0,32,7,0,65,14,0,129,12,1,255,28,1,255,25,29, + 116,28,1,0,15,128,3,0,31,192,7,0,49,192,14,0, + 112,192,12,0,0,192,28,0,1,128,24,0,15,0,56,0, + 1,192,112,0,0,192,96,0,0,192,224,0,0,193,192,0, + 0,193,128,0,193,195,128,0,127,135,0,0,30,7,0,0, + 0,14,2,0,0,12,14,0,0,28,14,0,0,56,22,0, + 0,48,38,0,0,112,102,0,0,224,198,0,0,224,134,0, + 1,193,134,128,3,131,255,0,3,128,6,0,7,0,6,0, + 6,0,6,0,14,0,63,128,17,35,105,21,2,243,0,224, + 0,1,240,0,3,240,0,3,240,0,3,224,0,1,192,0, + 0,0,0,0,0,0,0,0,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,1,224,0,1,192,0,3,192, + 0,3,128,0,7,0,0,15,0,0,30,0,0,60,0,0, + 60,0,0,120,0,0,120,0,0,240,0,0,240,3,128,240, + 7,128,240,7,128,240,7,128,248,15,0,120,15,0,126,30, + 0,63,248,0,15,224,0,28,41,164,29,0,0,0,128,0, + 0,1,192,0,0,3,240,0,0,1,248,0,0,0,124,0, + 0,0,31,0,0,0,7,128,0,0,1,192,0,0,0,128, + 0,0,0,0,0,0,0,0,0,0,2,0,0,0,7,0, + 0,0,15,0,0,0,15,0,0,0,31,128,0,0,31,128, + 0,0,27,128,0,0,59,192,0,0,57,192,0,0,49,224, + 0,0,113,224,0,0,112,224,0,0,96,240,0,0,224,240, + 0,0,224,112,0,0,192,120,0,1,192,120,0,1,192,56, + 0,1,255,252,0,3,255,252,0,3,128,30,0,3,0,30, + 0,7,0,30,0,7,0,15,0,6,0,15,0,14,0,15, + 0,14,0,7,128,12,0,7,128,62,0,7,192,255,192,63, + 240,28,41,164,29,0,0,0,0,32,0,0,0,56,0,0, + 0,252,0,0,1,248,0,0,3,224,0,0,15,128,0,0, + 30,0,0,0,56,0,0,0,32,0,0,0,0,0,0,0, + 0,0,0,0,2,0,0,0,7,0,0,0,15,0,0,0, + 15,0,0,0,31,128,0,0,31,128,0,0,27,128,0,0, + 59,192,0,0,57,192,0,0,49,224,0,0,113,224,0,0, + 112,224,0,0,96,240,0,0,224,240,0,0,224,112,0,0, + 192,120,0,1,192,120,0,1,192,56,0,1,255,252,0,3, + 255,252,0,3,128,30,0,3,0,30,0,7,0,30,0,7, + 0,15,0,6,0,15,0,14,0,15,0,14,0,7,128,12, + 0,7,128,62,0,7,192,255,192,63,240,28,41,164,29,0, + 0,0,6,0,0,0,15,0,0,0,31,128,0,0,63,192, + 0,0,121,224,0,0,240,240,0,1,192,56,0,1,128,24, + 0,1,0,16,0,0,0,0,0,0,0,0,0,0,2,0, + 0,0,7,0,0,0,15,0,0,0,15,0,0,0,31,128, + 0,0,31,128,0,0,27,128,0,0,59,192,0,0,57,192, + 0,0,49,224,0,0,113,224,0,0,112,224,0,0,96,240, + 0,0,224,240,0,0,224,112,0,0,192,120,0,1,192,120, + 0,1,192,56,0,1,255,252,0,3,255,252,0,3,128,30, + 0,3,0,30,0,7,0,30,0,7,0,15,0,6,0,15, + 0,14,0,15,0,14,0,7,128,12,0,7,128,62,0,7, + 192,255,192,63,240,28,39,156,29,0,0,0,16,8,0,0, + 124,12,0,0,254,28,0,1,255,248,0,1,135,240,0,3, + 3,224,0,2,1,0,0,0,0,0,0,0,0,0,0,0, + 2,0,0,0,7,0,0,0,15,0,0,0,15,0,0,0, + 31,128,0,0,31,128,0,0,27,128,0,0,59,192,0,0, + 57,192,0,0,49,224,0,0,113,224,0,0,112,224,0,0, + 96,240,0,0,224,240,0,0,224,112,0,0,192,120,0,1, + 192,120,0,1,192,56,0,1,255,252,0,3,255,252,0,3, + 128,30,0,3,0,30,0,7,0,30,0,7,0,15,0,6, + 0,15,0,14,0,15,0,14,0,7,128,12,0,7,128,62, + 0,7,192,255,192,63,240,28,38,152,29,0,0,0,128,32, + 0,0,224,56,0,1,224,120,0,1,224,120,0,1,224,120, + 0,0,128,32,0,0,0,0,0,0,0,0,0,0,2,0, + 0,0,7,0,0,0,15,0,0,0,15,0,0,0,31,128, + 0,0,31,128,0,0,27,128,0,0,59,192,0,0,57,192, + 0,0,49,224,0,0,113,224,0,0,112,224,0,0,96,240, + 0,0,224,240,0,0,224,112,0,0,192,120,0,1,192,120, + 0,1,192,56,0,1,255,252,0,3,255,252,0,3,128,30, + 0,3,0,30,0,7,0,30,0,7,0,15,0,6,0,15, + 0,14,0,15,0,14,0,7,128,12,0,7,128,62,0,7, + 192,255,192,63,240,28,42,168,29,0,0,0,2,0,0,0, + 15,128,0,0,31,192,0,0,24,192,0,0,48,192,0,0, + 48,192,0,0,48,192,0,0,63,128,0,0,31,0,0,0, + 8,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0, + 7,0,0,0,15,0,0,0,15,0,0,0,31,128,0,0, + 31,128,0,0,27,128,0,0,59,192,0,0,57,192,0,0, + 49,224,0,0,113,224,0,0,112,224,0,0,96,240,0,0, + 224,240,0,0,224,112,0,0,192,120,0,1,192,120,0,1, + 192,56,0,1,255,252,0,3,255,252,0,3,128,30,0,3, + 0,30,0,7,0,30,0,7,0,15,0,6,0,15,0,14, + 0,15,0,14,0,7,128,12,0,7,128,62,0,7,192,255, + 192,63,240,36,30,150,37,0,0,0,127,255,255,192,0,31, + 255,255,224,0,7,252,0,192,0,7,60,0,192,0,7,60, + 0,192,0,14,60,0,192,0,14,60,0,0,0,30,60,0, + 0,0,28,60,0,0,0,28,60,0,0,0,60,60,0,0, + 0,56,60,0,0,0,120,60,0,0,0,127,255,255,0,0, + 127,255,255,0,0,240,60,6,0,0,224,60,0,0,1,224, + 60,0,0,1,192,60,0,0,1,192,60,0,0,3,128,60, + 0,0,3,128,60,0,0,7,128,60,0,0,7,0,60,0, + 0,7,0,60,0,16,14,0,60,0,48,14,0,60,0,48, + 30,0,62,0,112,62,0,127,255,224,255,193,255,255,224,22, + 40,120,26,2,246,0,31,224,0,255,252,1,192,252,7,128, + 56,14,0,16,14,0,0,28,0,0,56,0,0,56,0,0, + 120,0,0,112,0,0,112,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,248,0,0,120,0,0,124,0,0,60,0,0,62,0,8, + 31,0,60,15,128,240,15,255,224,3,255,128,0,254,0,0, + 24,0,0,16,0,0,28,0,0,62,0,0,63,0,0,15, + 0,0,15,0,0,30,0,0,120,0,1,192,0,21,41,123, + 24,1,0,4,0,0,14,0,0,31,0,0,15,192,0,3, + 224,0,0,240,0,0,60,0,0,14,0,0,4,0,0,0, + 0,0,0,0,255,255,224,127,255,240,30,0,96,30,0,96, + 30,0,96,30,0,96,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,31,255,128,31,255, + 128,30,3,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,8,30, + 0,24,30,0,24,31,0,56,127,255,240,255,255,240,21,41, + 123,24,1,0,0,1,0,0,3,192,0,7,224,0,15,192, + 0,63,0,0,124,0,0,240,0,1,192,0,1,0,0,0, + 0,0,0,0,0,255,255,224,127,255,240,30,0,96,30,0, + 96,30,0,96,30,0,96,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,31,255,128,31, + 255,128,30,3,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,8, + 30,0,24,30,0,24,31,0,56,127,255,240,255,255,240,21, + 41,123,24,1,0,0,48,0,0,120,0,0,252,0,1,254, + 0,3,207,0,7,7,0,14,1,128,28,0,192,16,0,128, + 0,0,0,0,0,0,255,255,224,127,255,240,30,0,96,30, + 0,96,30,0,96,30,0,96,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,31,255,128, + 31,255,128,30,3,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 8,30,0,24,30,0,24,31,0,56,127,255,240,255,255,240, + 21,38,114,24,1,0,4,1,0,15,3,192,15,3,192,15, + 3,192,14,3,128,4,1,0,0,0,0,0,0,0,255,255, + 224,127,255,240,30,0,96,30,0,96,30,0,96,30,0,96, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,31,255,128,31,255,128,30,3,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,8,30,0,24,30,0,24,31, + 0,56,127,255,240,255,255,240,13,41,82,14,255,0,32,0, + 112,0,252,0,126,0,31,0,7,128,1,224,0,112,0,32, + 0,0,0,0,31,248,15,240,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,15,240,31,248, + 13,41,82,14,2,0,0,64,0,112,1,248,3,240,7,192, + 31,0,60,0,112,0,64,0,0,0,0,0,255,192,127,128, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,127,128,255,192,15,41,82,14,255,0,1,128, + 3,192,7,224,15,240,30,120,56,60,112,12,224,6,64,4, + 0,0,0,0,31,248,15,240,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,15,240,31,248, + 14,38,76,14,0,0,64,16,112,28,240,60,240,60,224,56, + 64,16,0,0,0,0,63,240,31,224,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,31,224, + 63,240,25,30,120,28,1,0,7,254,0,0,255,255,192,0, + 127,3,240,0,15,0,248,0,15,0,124,0,15,0,62,0, + 15,0,30,0,15,0,31,0,15,0,15,0,15,0,15,0, + 15,0,15,128,15,0,7,128,15,0,7,128,15,0,7,128, + 255,254,7,128,255,252,7,128,15,0,7,128,15,0,7,128, + 15,0,7,128,15,0,7,0,15,0,15,0,15,0,15,0, + 15,0,30,0,15,0,30,0,15,0,60,0,15,0,124,0, + 15,0,248,0,15,3,224,0,31,255,192,0,127,254,0,0, + 27,39,156,31,2,0,0,32,16,0,0,124,12,0,0,254, + 24,0,1,255,240,0,3,15,240,0,3,3,224,0,2,1, + 0,0,0,0,0,0,0,0,0,0,252,0,63,224,124,0, + 15,128,30,0,7,0,31,0,7,0,31,0,7,0,31,128, + 7,0,31,192,7,0,29,192,7,0,28,224,7,0,28,240, + 7,0,28,120,7,0,28,56,7,0,28,60,7,0,28,30, + 7,0,28,14,7,0,28,15,7,0,28,7,135,0,28,7, + 135,0,28,3,199,0,28,1,231,0,28,1,231,0,28,0, + 247,0,28,0,127,0,28,0,127,0,28,0,63,0,28,0, + 31,0,28,0,31,0,28,0,15,0,62,0,7,0,255,128, + 3,0,25,41,164,29,2,0,2,0,0,0,3,128,0,0, + 7,192,0,0,7,224,0,0,1,248,0,0,0,124,0,0, + 0,30,0,0,0,7,128,0,0,1,0,0,0,0,0,0, + 0,0,0,0,0,63,0,0,0,255,224,0,3,193,240,0, + 7,0,248,0,14,0,124,0,28,0,62,0,60,0,30,0, + 56,0,31,0,120,0,15,0,120,0,15,0,112,0,15,128, + 240,0,7,128,240,0,7,128,240,0,7,128,240,0,7,128, + 240,0,7,128,240,0,7,128,240,0,7,128,240,0,7,128, + 248,0,7,0,120,0,15,0,120,0,15,0,124,0,14,0, + 60,0,28,0,62,0,28,0,31,0,56,0,15,128,112,0, + 7,193,224,0,3,255,128,0,0,254,0,0,25,41,164,29, + 2,0,0,0,128,0,0,0,224,0,0,1,240,0,0,7, + 240,0,0,15,192,0,0,30,0,0,0,56,0,0,0,224, + 0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,63, + 0,0,0,255,224,0,3,193,240,0,7,0,248,0,14,0, + 124,0,28,0,62,0,60,0,30,0,56,0,31,0,120,0, + 15,0,120,0,15,0,112,0,15,128,240,0,7,128,240,0, + 7,128,240,0,7,128,240,0,7,128,240,0,7,128,240,0, + 7,128,240,0,7,128,240,0,7,128,248,0,7,0,120,0, + 15,0,120,0,15,0,124,0,14,0,60,0,28,0,62,0, + 28,0,31,0,56,0,15,128,112,0,7,193,224,0,3,255, + 128,0,0,254,0,0,25,41,164,29,2,0,0,28,0,0, + 0,62,0,0,0,126,0,0,0,127,0,0,0,227,128,0, + 1,193,192,0,3,128,224,0,6,0,112,0,4,0,32,0, + 0,0,0,0,0,0,0,0,0,63,0,0,0,255,224,0, + 3,193,240,0,7,0,248,0,14,0,124,0,28,0,62,0, + 60,0,30,0,56,0,31,0,120,0,15,0,120,0,15,0, + 112,0,15,128,240,0,7,128,240,0,7,128,240,0,7,128, + 240,0,7,128,240,0,7,128,240,0,7,128,240,0,7,128, + 240,0,7,128,248,0,7,0,120,0,15,0,120,0,15,0, + 124,0,14,0,60,0,28,0,62,0,28,0,31,0,56,0, + 15,128,112,0,7,193,224,0,3,255,128,0,0,254,0,0, + 25,39,156,29,2,0,0,64,32,0,1,248,48,0,3,252, + 48,0,3,255,224,0,6,31,192,0,4,15,128,0,12,2, + 0,0,0,0,0,0,0,0,0,0,0,63,0,0,0,255, + 224,0,3,193,240,0,7,0,248,0,14,0,124,0,28,0, + 62,0,60,0,30,0,56,0,31,0,120,0,15,0,120,0, + 15,0,112,0,15,128,240,0,7,128,240,0,7,128,240,0, + 7,128,240,0,7,128,240,0,7,128,240,0,7,128,240,0, + 7,128,240,0,7,128,248,0,7,0,120,0,15,0,120,0, + 15,0,124,0,14,0,60,0,28,0,62,0,28,0,31,0, + 56,0,15,128,112,0,7,193,224,0,3,255,128,0,0,254, + 0,0,25,38,152,29,2,0,1,0,64,0,3,128,224,0, + 3,128,224,0,7,129,224,0,3,128,224,0,2,0,128,0, + 0,0,0,0,0,0,0,0,0,63,0,0,0,255,224,0, + 3,193,240,0,7,0,248,0,14,0,124,0,28,0,62,0, + 60,0,30,0,56,0,31,0,120,0,15,0,120,0,15,0, + 112,0,15,128,240,0,7,128,240,0,7,128,240,0,7,128, + 240,0,7,128,240,0,7,128,240,0,7,128,240,0,7,128, + 240,0,7,128,248,0,7,0,120,0,15,0,120,0,15,0, + 124,0,14,0,60,0,28,0,62,0,28,0,31,0,56,0, + 15,128,112,0,7,193,224,0,3,255,128,0,0,254,0,0, + 15,14,28,20,2,6,96,6,240,14,120,28,60,56,30,112, + 15,224,7,192,7,192,15,224,30,112,60,56,120,28,240,14, + 96,6,25,31,124,29,2,255,0,63,7,128,1,255,207,0, + 3,193,254,0,7,0,126,0,14,0,60,0,28,0,126,0, + 56,0,126,0,56,0,255,0,120,1,239,0,120,1,239,0, + 112,3,207,128,240,7,135,128,240,7,7,128,240,15,7,128, + 240,30,7,128,240,60,7,128,240,60,7,128,240,120,7,128, + 240,240,7,128,240,224,7,0,121,224,7,0,123,192,15,0, + 123,128,14,0,63,128,12,0,63,0,28,0,30,0,56,0, + 31,0,112,0,63,193,224,0,121,255,128,0,240,126,0,0, + 192,0,0,0,27,41,164,31,2,0,0,128,0,0,1,192, + 0,0,3,240,0,0,1,248,0,0,0,124,0,0,0,30, + 0,0,0,7,128,0,0,1,192,0,0,0,128,0,0,0, + 0,0,0,0,0,0,255,192,127,224,127,128,63,192,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 30,0,15,0,30,0,15,0,30,0,7,128,60,0,7,192, + 120,0,3,224,240,0,1,255,224,0,0,63,128,0,27,41, + 164,31,2,0,0,0,32,0,0,0,120,0,0,0,252,0, + 0,1,248,0,0,3,224,0,0,15,128,0,0,30,0,0, + 0,56,0,0,0,32,0,0,0,0,0,0,0,0,0,0, + 255,192,127,224,127,128,63,192,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,30,0,15,0,30,0, + 15,0,30,0,7,128,60,0,7,192,120,0,3,224,240,0, + 1,255,224,0,0,63,128,0,27,41,164,31,2,0,0,6, + 0,0,0,15,0,0,0,31,128,0,0,63,192,0,0,121, + 224,0,0,224,240,0,1,192,48,0,3,128,24,0,1,0, + 16,0,0,0,0,0,0,0,0,0,255,192,127,224,127,128, + 63,192,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,30,0,15,0,30,0,15,0,30,0,7,128, + 60,0,7,192,120,0,3,224,240,0,1,255,224,0,0,63, + 128,0,27,38,152,31,2,0,0,128,32,0,0,224,56,0, + 1,224,120,0,1,224,120,0,1,192,112,0,0,128,32,0, + 0,0,0,0,0,0,0,0,255,192,127,224,127,128,63,192, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,30,0,15,0,30,0,15,0,30,0,7,128,60,0, + 7,192,120,0,3,224,240,0,1,255,224,0,0,63,128,0, + 28,41,164,29,0,0,0,0,32,0,0,0,56,0,0,0, + 252,0,0,1,248,0,0,3,224,0,0,7,128,0,0,30, + 0,0,0,56,0,0,0,32,0,0,0,0,0,0,0,0, + 0,0,252,0,63,240,254,0,63,240,31,0,15,128,15,0, + 7,0,15,128,14,0,7,192,14,0,3,192,28,0,3,224, + 60,0,1,224,56,0,0,240,120,0,0,248,112,0,0,120, + 224,0,0,125,224,0,0,61,192,0,0,63,192,0,0,31, + 128,0,0,31,128,0,0,15,0,0,0,15,0,0,0,15, + 0,0,0,15,0,0,0,15,0,0,0,15,0,0,0,15, + 0,0,0,15,0,0,0,15,0,0,0,15,0,0,0,15, + 0,0,0,63,192,0,0,255,240,0,21,30,90,25,2,0, + 255,224,0,127,128,0,30,0,0,30,0,0,30,0,0,30, + 0,0,31,254,0,31,255,128,30,15,192,30,3,224,30,1, + 240,30,0,248,30,0,120,30,0,120,30,0,120,30,0,120, + 30,0,120,30,0,120,30,0,240,30,0,240,30,1,224,31, + 7,192,30,255,128,30,124,0,30,0,0,30,0,0,30,0, + 0,30,0,0,127,128,0,255,224,0,25,36,144,27,1,0, + 0,31,128,0,0,127,224,0,1,195,240,0,3,128,248,0, + 7,0,120,0,7,0,124,0,14,0,60,0,14,0,60,0, + 14,0,60,0,30,0,60,0,30,0,60,0,30,0,120,0, + 30,1,248,0,30,7,240,0,30,15,192,0,30,31,0,0, + 30,60,0,0,30,60,0,0,30,60,0,0,30,62,0,0, + 30,63,0,0,30,31,192,0,30,15,240,0,30,3,252,0, + 30,0,254,0,30,0,127,0,30,0,31,128,30,0,15,128, + 30,0,7,128,30,32,7,128,30,48,7,128,30,48,7,0, + 30,56,15,0,30,60,30,0,62,63,252,0,254,7,224,0, + 20,35,105,22,2,0,30,0,0,62,0,0,31,0,0,15, + 0,0,7,128,0,3,192,0,1,192,0,0,224,0,0,96, + 0,0,48,0,0,0,0,0,0,0,0,0,0,1,248,0, + 15,254,0,28,30,0,120,15,0,112,15,0,240,15,0,128, + 15,0,0,15,0,0,15,0,0,255,0,7,255,0,31,143, + 0,62,15,0,120,15,0,248,15,0,240,15,0,240,15,0, + 240,31,0,240,63,0,120,239,32,127,143,240,30,7,128,20, + 35,105,22,2,0,0,15,0,0,31,0,0,30,0,0,60, + 0,0,56,0,0,112,0,0,112,0,0,224,0,1,192,0, + 1,128,0,0,0,0,0,0,0,0,0,0,1,248,0,15, + 254,0,28,30,0,120,15,0,112,15,0,240,15,0,128,15, + 0,0,15,0,0,15,0,0,255,0,7,255,0,31,143,0, + 62,15,0,120,15,0,248,15,0,240,15,0,240,15,0,240, + 31,0,240,63,0,120,239,32,127,143,240,30,7,128,20,34, + 102,22,2,0,0,224,0,1,240,0,3,240,0,7,56,0, + 6,28,0,12,14,0,24,6,0,48,3,0,32,1,128,0, + 0,0,0,0,0,0,0,0,1,248,0,15,254,0,28,30, + 0,120,15,0,112,15,0,240,15,0,128,15,0,0,15,0, + 0,15,0,0,255,0,7,255,0,31,143,0,62,15,0,120, + 15,0,248,15,0,240,15,0,240,15,0,240,31,0,240,63, + 0,120,239,32,127,143,240,30,7,128,20,32,96,22,2,0, + 7,0,128,15,193,128,31,193,0,63,243,0,48,254,0,96, + 56,0,0,0,0,0,0,0,0,0,0,0,0,0,1,248, + 0,15,254,0,28,30,0,120,15,0,112,15,0,240,15,0, + 128,15,0,0,15,0,0,15,0,0,255,0,7,255,0,31, + 143,0,62,15,0,120,15,0,248,15,0,240,15,0,240,15, + 0,240,31,0,240,63,0,120,239,32,127,143,240,30,7,128, + 20,32,96,22,2,0,28,7,0,28,7,0,60,15,0,60, + 15,0,24,6,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,1,248,0,15,254,0,28,30,0,120,15,0, + 112,15,0,240,15,0,128,15,0,0,15,0,0,15,0,0, + 255,0,7,255,0,31,143,0,62,15,0,120,15,0,248,15, + 0,240,15,0,240,15,0,240,31,0,240,63,0,120,239,32, + 127,143,240,30,7,128,20,34,102,22,2,0,0,240,0,1, + 248,0,3,24,0,3,24,0,6,24,0,6,24,0,7,56, + 0,3,240,0,1,192,0,0,0,0,0,0,0,0,0,0, + 1,248,0,15,254,0,28,30,0,120,15,0,112,15,0,240, + 15,0,128,15,0,0,15,0,0,15,0,0,255,0,7,255, + 0,31,143,0,62,15,0,120,15,0,248,15,0,240,15,0, + 240,15,0,240,31,0,240,63,0,120,239,32,127,143,240,30, + 7,128,29,22,88,33,2,0,1,248,31,128,7,252,127,192, + 28,62,225,224,56,31,192,240,112,15,128,112,240,15,128,120, + 240,15,0,120,192,15,0,120,0,127,255,248,3,255,255,240, + 15,143,0,0,30,15,0,0,60,15,0,0,120,15,0,0, + 240,15,0,0,240,15,128,0,240,31,128,24,240,63,192,48, + 248,243,224,240,127,227,255,192,127,128,255,128,30,0,126,0, + 18,32,96,21,2,246,0,127,0,1,255,192,7,7,192,14, + 1,128,28,0,128,56,0,0,120,0,0,112,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,248,0,0,120,1,0,124,3,128,62,7,0,31, + 254,0,31,248,0,7,240,0,0,192,0,0,128,0,0,224, + 0,0,240,0,1,248,0,0,120,0,0,120,0,0,240,0, + 3,192,0,14,0,0,18,35,105,22,2,0,14,0,0,31, + 0,0,15,128,0,7,128,0,3,192,0,1,192,0,0,224, + 0,0,112,0,0,48,0,0,24,0,0,0,0,0,0,0, + 0,0,0,0,248,0,7,254,0,14,15,0,28,7,128,56, + 7,128,56,3,192,112,3,192,112,3,192,255,255,192,255,255, + 128,240,0,0,240,0,0,240,0,0,240,0,0,248,0,0, + 120,0,0,120,0,0,124,0,192,62,1,128,31,7,0,15, + 254,0,3,248,0,18,35,105,22,2,0,0,7,0,0,15, + 128,0,15,0,0,30,0,0,60,0,0,56,0,0,112,0, + 0,96,0,0,192,0,0,128,0,0,0,0,0,0,0,0, + 0,0,0,248,0,7,254,0,14,15,0,28,7,128,56,7, + 128,56,3,192,112,3,192,112,3,192,255,255,192,255,255,128, + 240,0,0,240,0,0,240,0,0,240,0,0,248,0,0,120, + 0,0,120,0,0,124,0,192,62,1,128,31,7,0,15,254, + 0,3,248,0,18,34,102,22,2,0,0,240,0,0,240,0, + 1,248,0,3,156,0,7,14,0,14,6,0,12,3,0,24, + 1,128,16,0,128,0,0,0,0,0,0,0,0,0,0,248, + 0,7,254,0,14,15,0,28,7,128,56,7,128,56,3,192, + 112,3,192,112,3,192,255,255,192,255,255,128,240,0,0,240, + 0,0,240,0,0,240,0,0,248,0,0,120,0,0,120,0, + 0,124,0,192,62,1,128,31,7,0,15,254,0,3,248,0, + 18,32,96,22,2,0,14,3,128,30,7,128,30,7,128,30, + 7,128,28,7,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,248,0,7,254,0,14,15,0,28,7,128, + 56,7,128,56,3,192,112,3,192,112,3,192,255,255,192,255, + 255,128,240,0,0,240,0,0,240,0,0,240,0,0,248,0, + 0,120,0,0,120,0,0,124,0,192,62,1,128,31,7,0, + 15,254,0,3,248,0,12,35,70,13,0,0,240,0,248,0, + 120,0,60,0,28,0,14,0,7,0,3,0,1,128,0,128, + 0,0,0,0,0,0,1,128,31,128,63,128,15,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,15,192, + 63,240,12,35,70,13,2,0,0,224,1,240,3,224,3,192, + 7,128,7,0,14,0,28,0,24,0,48,0,0,0,0,0, + 0,0,6,0,126,0,254,0,62,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,63,0,255,192,15,34, + 68,13,255,0,3,128,7,192,7,224,14,240,28,112,56,56, + 112,12,96,6,192,2,0,0,0,0,0,0,0,192,15,192, + 31,192,7,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,7,224,31,248,14,32,64,13,0,0,96,24, + 240,60,240,60,224,56,224,56,0,0,0,0,0,0,0,0, + 0,0,1,128,31,128,63,128,15,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,15,192,63,240,20,34, + 102,24,2,0,3,0,0,31,192,128,31,225,224,1,255,192, + 0,126,0,0,252,0,3,254,0,15,143,0,4,7,128,0, + 3,128,0,3,192,0,1,192,1,241,224,7,255,224,14,31, + 224,28,7,240,56,3,240,56,1,240,120,1,240,112,0,240, + 240,0,240,240,0,240,240,0,240,240,0,240,240,0,224,240, + 0,224,248,1,224,120,1,192,124,1,192,124,3,128,62,7, + 0,31,14,0,15,252,0,3,240,0,23,32,96,26,2,0, + 1,224,32,3,240,48,7,248,96,7,252,192,14,63,128,8, + 15,0,0,0,0,0,0,0,0,0,0,0,0,0,12,7, + 192,254,15,224,62,49,224,30,96,240,30,192,240,30,128,240, + 31,0,240,31,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,127,131,248,255,199,254, + 20,35,105,24,2,0,15,0,0,15,0,0,7,128,0,3, + 192,0,1,192,0,0,224,0,0,112,0,0,112,0,0,56, + 0,0,24,0,0,0,0,0,0,0,0,0,0,0,252,0, + 7,255,0,14,15,128,28,7,192,56,3,192,56,3,224,112, + 1,224,112,1,240,240,0,240,240,0,240,240,0,240,240,0, + 240,240,0,240,240,0,240,248,0,224,120,1,224,124,1,192, + 60,1,192,62,3,128,31,7,0,15,254,0,3,240,0,20, + 35,105,24,2,0,0,7,128,0,7,192,0,15,128,0,15, + 0,0,30,0,0,60,0,0,56,0,0,112,0,0,96,0, + 0,192,0,0,0,0,0,0,0,0,0,0,0,252,0,7, + 255,0,14,15,128,28,7,192,56,3,192,56,3,224,112,1, + 224,112,1,240,240,0,240,240,0,240,240,0,240,240,0,240, + 240,0,240,240,0,240,248,0,224,120,1,224,124,1,192,60, + 1,192,62,3,128,31,7,0,15,254,0,3,240,0,20,34, + 102,24,2,0,0,112,0,0,248,0,1,252,0,1,220,0, + 3,142,0,7,7,0,14,3,128,12,1,192,24,0,192,0, + 0,0,0,0,0,0,0,0,0,252,0,7,255,0,14,15, + 128,28,7,192,56,3,192,56,3,224,112,1,224,112,1,240, + 240,0,240,240,0,240,240,0,240,240,0,240,240,0,240,240, + 0,240,248,0,224,120,1,224,124,1,192,60,1,192,62,3, + 128,31,7,0,15,254,0,3,240,0,20,32,96,24,2,0, + 3,192,64,7,224,96,15,240,192,15,249,128,28,127,0,16, + 30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252, + 0,7,255,0,14,15,128,28,7,192,56,3,192,56,3,224, + 112,1,224,112,1,240,240,0,240,240,0,240,240,0,240,240, + 0,240,240,0,240,240,0,240,248,0,224,120,1,224,124,1, + 192,60,1,192,62,3,128,31,7,0,15,254,0,3,240,0, + 20,32,96,24,2,0,6,1,128,15,3,192,15,3,192,14, + 3,128,14,3,128,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,252,0,7,255,0,14,15,128,28,7,192, + 56,3,192,56,3,224,112,1,224,112,1,240,240,0,240,240, + 0,240,240,0,240,240,0,240,240,0,240,240,0,240,248,0, + 224,120,1,224,124,1,192,60,1,192,62,3,128,31,7,0, + 15,254,0,3,240,0,17,15,45,20,1,6,0,224,0,1, + 224,0,1,224,0,1,192,0,0,0,0,0,0,0,0,0, + 0,127,255,128,255,255,128,0,0,0,0,0,0,0,224,0, + 1,224,0,1,224,0,1,192,0,20,24,72,24,2,255,0, + 0,48,1,248,112,7,254,224,14,15,192,28,7,192,56,3, + 224,56,7,224,112,15,224,112,28,240,240,24,240,240,56,240, + 240,112,240,240,224,240,240,192,240,241,192,240,243,128,224,255, + 0,224,126,1,192,126,1,192,62,3,128,63,7,0,119,254, + 0,225,248,0,128,0,0,24,35,105,25,1,0,3,128,0, + 7,192,0,3,192,0,1,224,0,0,240,0,0,112,0,0, + 56,0,0,24,0,0,12,0,0,4,0,0,0,0,0,0, + 0,0,0,0,6,0,112,254,7,240,126,7,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,1,240,31,2,240,15,12,255, + 15,248,252,3,224,112,24,35,105,25,1,0,0,1,192,0, + 3,224,0,7,192,0,7,128,0,15,0,0,14,0,0,28, + 0,0,56,0,0,48,0,0,96,0,0,0,0,0,0,0, + 0,0,0,6,0,112,254,7,240,126,7,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,1,240,31,2,240,15,12,255,15, + 248,252,3,224,112,24,34,102,25,1,0,0,56,0,0,124, + 0,0,126,0,0,231,0,1,195,0,3,129,128,3,0,192, + 6,0,96,12,0,32,0,0,0,0,0,0,0,0,0,6, + 0,112,254,7,240,126,7,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,1,240,31,2,240,15,12,255,15,248,252,3,224, + 112,24,32,96,25,1,0,3,0,192,7,129,224,7,129,224, + 7,129,224,7,1,192,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,6,0,112,254,7,240,126,7,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,1,240,31,2,240,15,12, + 255,15,248,252,3,224,112,24,46,138,24,255,245,0,0,240, + 0,0,248,0,1,224,0,3,224,0,3,192,0,7,128,0, + 7,0,0,14,0,0,12,0,0,24,0,0,0,0,0,0, + 0,0,0,0,127,224,255,31,0,62,15,0,28,15,0,24, + 7,128,56,7,128,56,3,128,48,3,192,112,3,192,96,1, + 224,224,1,224,224,0,224,192,0,241,192,0,241,192,0,121, + 128,0,123,128,0,59,0,0,63,0,0,63,0,0,30,0, + 0,30,0,0,12,0,0,12,0,0,28,0,0,24,0,0, + 56,0,0,112,0,0,112,0,0,224,0,63,192,0,127,128, + 0,255,0,0,124,0,0,21,47,141,25,2,245,6,0,0, + 126,0,0,254,0,0,62,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,15,0,28,63,192,28,99,224, + 28,193,224,29,129,240,31,0,240,31,0,248,30,0,248,30, + 0,120,30,0,120,30,0,120,30,0,120,30,0,120,30,0, + 120,30,0,112,30,0,112,30,0,224,30,0,224,31,129,192, + 31,195,128,31,255,0,30,124,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,63,0,0,255,224,0,24,43,129,24,255,245, + 0,192,48,1,192,112,1,224,120,3,192,240,1,128,96,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,224, + 255,31,0,62,15,0,28,15,0,24,7,128,56,7,128,56, + 3,128,48,3,192,112,3,192,96,1,224,224,1,224,224,0, + 224,192,0,241,192,0,241,192,0,121,128,0,123,128,0,59, + 0,0,63,0,0,63,0,0,30,0,0,30,0,0,12,0, + 0,12,0,0,28,0,0,24,0,0,56,0,0,112,0,0, + 112,0,0,224,0,63,192,0,127,128,0,255,0,0,124,0, + 0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--48-480-72-72-P-218-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 29 + Calculated Max Values w=20 h=46 x= 3 y=17 dx=23 dy= 0 ascent=38 len=138 + Font Bounding box w=71 h=68 x=-24 y=-17 + Calculated Min Values x= 0 y=-8 dx= 0 dy= 0 + Pure Font ascent =29 descent= 0 + X Font ascent =29 descent= 0 + Max Font ascent =38 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr30n[1252] U8G_SECTION(".progmem.u8g_font_gdr30n") = { + 0,71,68,232,239,29,0,0,0,0,42,57,0,38,248,29, + 0,18,20,60,21,2,17,0,192,0,1,192,0,1,192,0, + 1,192,0,193,193,0,240,195,192,248,207,192,124,223,0,15, + 252,0,3,224,0,3,224,0,15,252,0,60,223,0,248,207, + 128,240,195,128,64,193,128,1,192,0,1,192,0,1,192,0, + 1,128,0,17,17,51,20,1,5,0,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + 0,255,255,128,255,255,128,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,1,128,0,7,13,13,11, + 2,249,8,60,254,254,30,30,30,28,28,56,48,96,64,14, + 2,4,16,1,11,127,252,255,248,6,6,6,11,3,255,56, + 124,252,252,248,112,20,46,138,23,1,248,0,0,48,0,0, + 240,0,0,240,0,0,224,0,1,224,0,1,192,0,1,192, + 0,3,192,0,3,128,0,7,128,0,7,128,0,7,0,0, + 15,0,0,15,0,0,14,0,0,30,0,0,28,0,0,28, + 0,0,60,0,0,56,0,0,120,0,0,120,0,0,112,0, + 0,240,0,0,224,0,0,224,0,1,224,0,1,192,0,3, + 192,0,3,192,0,3,128,0,7,128,0,7,128,0,7,0, + 0,15,0,0,14,0,0,30,0,0,30,0,0,28,0,0, + 60,0,0,60,0,0,56,0,0,120,0,0,112,0,0,240, + 0,0,192,0,0,19,29,87,23,2,0,1,248,0,7,252, + 0,14,30,0,28,15,0,24,7,128,56,7,128,56,3,192, + 112,3,192,112,3,192,112,3,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,1,192,120,1,192,120,3,192,120,3,128, + 60,3,128,60,3,0,30,7,0,15,14,0,7,252,0,3, + 240,0,17,29,87,23,3,0,0,96,0,1,224,0,15,224, + 0,127,224,0,255,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,3,240,0,63,254,0,127,255,128,17, + 29,87,22,2,0,1,248,0,7,254,0,28,31,0,56,15, + 0,120,15,128,112,7,128,240,7,128,224,7,128,0,7,128, + 0,7,128,0,15,0,0,15,0,0,30,0,0,30,0,0, + 60,0,0,120,0,0,240,0,0,240,0,1,224,0,3,192, + 0,7,128,0,15,0,0,15,0,0,30,0,128,60,0,128, + 120,0,128,240,1,128,255,255,128,255,255,128,18,29,87,22, + 1,0,1,248,0,7,254,0,30,31,0,60,15,0,56,7, + 128,120,7,128,112,7,128,0,7,128,0,7,0,0,15,0, + 0,30,0,0,60,0,0,248,0,3,254,0,0,63,0,0, + 15,128,0,7,128,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,7,128,128,7,128,224,15,0, + 120,62,0,63,252,0,7,224,0,19,29,87,23,1,0,0, + 3,0,0,15,0,0,31,0,0,63,0,0,127,0,0,127, + 0,0,239,0,0,207,0,1,207,0,3,143,0,3,143,0, + 7,15,0,14,15,0,14,15,0,28,15,0,24,15,0,56, + 15,0,112,15,0,112,15,0,255,255,224,255,255,192,0,15, + 0,0,15,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,63,128,1,255,224,18,29,87,23,2,0,0,0,128,0, + 1,128,31,255,0,31,254,0,24,0,0,24,0,0,24,0, + 0,24,0,0,56,0,0,56,0,0,56,0,0,63,240,0, + 63,252,0,120,63,0,32,15,0,0,7,128,0,7,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 128,0,7,128,128,7,128,224,15,0,120,62,0,63,252,0, + 7,240,0,18,29,87,23,3,0,0,7,0,0,63,0,0, + 248,0,1,224,0,3,192,0,15,0,0,14,0,0,30,0, + 0,60,0,0,56,0,0,120,0,0,120,248,0,119,254,0, + 254,31,0,248,15,128,240,7,128,240,7,192,240,3,192,240, + 3,192,240,3,192,240,3,192,248,3,192,120,3,128,120,3, + 128,60,7,128,60,7,0,31,14,0,15,252,0,3,240,0, + 19,27,81,23,2,0,127,255,192,127,255,224,96,1,192,64, + 3,192,192,3,128,0,3,128,0,7,0,0,7,0,0,14, + 0,0,14,0,0,28,0,0,28,0,0,56,0,0,56,0, + 0,56,0,0,112,0,0,112,0,0,224,0,0,224,0,1, + 192,0,1,192,0,3,192,0,7,128,0,7,128,0,15,0, + 0,15,0,0,28,0,0,18,29,87,22,2,0,3,248,0, + 15,254,0,28,31,0,56,15,0,48,7,128,112,7,128,112, + 7,128,112,7,128,112,7,0,120,15,0,62,30,0,31,188, + 0,15,240,0,3,252,0,7,254,0,30,63,0,60,15,128, + 120,7,192,112,7,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,128,120,7,128,124,7,0,62,14,0,31,252, + 0,7,224,0,19,30,90,23,2,255,1,248,0,7,254,0, + 14,31,0,28,15,128,56,7,128,120,3,192,112,3,192,240, + 3,224,240,1,224,240,1,224,240,1,224,240,1,224,248,1, + 224,120,3,224,124,7,224,62,13,224,31,249,224,7,225,192, + 0,3,192,0,3,192,0,7,128,0,7,128,0,15,0,0, + 30,0,0,60,0,0,120,0,0,240,0,3,224,0,31,128, + 0,56,0,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--48-480-72-72-P-218-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 30, '1' Height: 29 + Calculated Max Values w=40 h=49 x= 4 y=25 dx=41 dy= 0 ascent=39 len=195 + Font Bounding box w=71 h=68 x=-24 y=-17 + Calculated Min Values x=-5 y=-11 dx= 0 dy= 0 + Pure Font ascent =30 descent=-11 + X Font ascent =38 descent=-11 + Max Font ascent =39 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr30r[8588] U8G_SECTION(".progmem.u8g_font_gdr30r") = { + 0,71,68,232,239,30,9,231,23,124,32,127,245,39,245,38, + 245,0,0,0,11,0,0,6,36,36,13,3,255,12,60,124, + 124,124,124,124,120,120,120,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,0,0,0,0,56,124,252,252,248, + 112,13,16,32,20,4,19,48,56,240,248,240,248,240,240,240, + 240,240,240,240,112,240,112,240,112,240,112,112,112,112,112,96, + 112,96,112,96,112,96,112,21,27,81,23,2,3,0,48,96, + 0,112,224,0,96,192,0,224,192,0,225,192,0,225,192,0, + 193,128,1,195,128,31,255,248,31,255,248,3,135,0,3,135, + 0,3,7,0,3,6,0,7,14,0,7,14,0,6,14,0, + 255,255,192,255,255,192,12,28,0,12,24,0,28,56,0,28, + 56,0,24,48,0,56,112,0,56,112,0,48,96,0,20,36, + 108,23,1,252,0,96,0,0,96,0,0,96,0,0,96,0, + 3,254,0,15,255,128,62,127,192,120,103,128,112,99,128,240, + 96,0,240,96,0,240,96,0,248,96,0,126,96,0,127,224, + 0,63,240,0,15,254,0,1,255,0,0,127,192,0,111,224, + 0,99,224,0,97,240,0,96,240,0,96,240,64,96,240,96, + 96,240,112,96,224,120,97,224,124,99,192,127,255,128,31,255, + 0,7,248,0,0,96,0,0,96,0,0,96,0,0,96,0, + 31,30,120,34,1,255,7,192,0,96,31,224,1,240,60,240, + 1,192,120,120,3,192,112,120,7,128,240,60,7,0,240,60, + 14,0,240,60,30,0,240,60,60,0,240,60,56,0,240,60, + 120,0,120,56,240,0,120,120,224,0,60,241,192,0,31,227, + 195,224,15,135,143,240,0,7,30,120,0,15,60,60,0,30, + 56,60,0,28,120,30,0,56,120,30,0,120,120,30,0,240, + 120,30,0,224,120,30,1,192,120,30,3,192,60,28,3,128, + 60,60,7,0,30,120,15,0,15,240,12,0,7,192,30,34, + 136,32,2,0,0,63,0,0,0,255,128,0,1,199,192,0, + 3,131,224,0,7,1,224,0,7,1,224,0,15,1,224,0, + 15,1,224,0,15,3,224,0,15,3,192,0,15,135,192,0, + 15,143,128,0,7,191,0,0,7,254,0,0,7,248,0,0, + 7,240,0,0,15,240,63,248,31,240,127,252,62,120,30,48, + 60,124,15,0,124,60,15,0,120,30,7,0,240,31,7,0, + 240,15,135,0,240,7,198,0,240,3,198,0,240,3,236,0, + 240,1,252,0,248,0,252,0,120,0,126,0,60,0,255,0, + 63,3,143,200,15,255,7,240,3,248,3,192,4,16,16,12, + 4,19,48,240,240,240,240,240,240,240,240,240,112,112,96,96, + 96,96,11,45,90,15,3,249,0,32,0,224,1,192,3,128, + 3,128,7,0,14,0,14,0,28,0,28,0,60,0,56,0, + 56,0,120,0,120,0,120,0,112,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,240,0, + 240,0,120,0,120,0,120,0,120,0,56,0,60,0,60,0, + 28,0,30,0,14,0,15,0,7,0,3,128,1,192,0,224, + 0,32,11,45,90,15,1,249,128,0,224,0,112,0,56,0, + 28,0,30,0,14,0,15,0,7,0,7,128,7,128,3,128, + 3,192,3,192,3,192,3,192,1,224,1,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224, + 1,192,3,192,3,192,3,192,3,128,3,128,7,128,7,0, + 15,0,14,0,14,0,28,0,56,0,56,0,112,0,224,0, + 128,0,18,20,60,21,2,17,0,192,0,1,192,0,1,192, + 0,1,192,0,193,193,0,240,195,192,248,207,192,124,223,0, + 15,252,0,3,224,0,3,224,0,15,252,0,60,223,0,248, + 207,128,240,195,128,64,193,128,1,192,0,1,192,0,1,192, + 0,1,128,0,17,17,51,20,1,5,0,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1, + 192,0,255,255,128,255,255,128,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,1,128,0,7,13,13, + 11,2,249,8,60,254,254,30,30,30,28,28,56,48,96,64, + 14,2,4,16,1,11,127,252,255,248,6,6,6,11,3,255, + 56,124,252,252,248,112,20,46,138,23,1,248,0,0,48,0, + 0,240,0,0,240,0,0,224,0,1,224,0,1,192,0,1, + 192,0,3,192,0,3,128,0,7,128,0,7,128,0,7,0, + 0,15,0,0,15,0,0,14,0,0,30,0,0,28,0,0, + 28,0,0,60,0,0,56,0,0,120,0,0,120,0,0,112, + 0,0,240,0,0,224,0,0,224,0,1,224,0,1,192,0, + 3,192,0,3,192,0,3,128,0,7,128,0,7,128,0,7, + 0,0,15,0,0,14,0,0,30,0,0,30,0,0,28,0, + 0,60,0,0,60,0,0,56,0,0,120,0,0,112,0,0, + 240,0,0,192,0,0,19,29,87,23,2,0,1,248,0,7, + 252,0,14,30,0,28,15,0,24,7,128,56,7,128,56,3, + 192,112,3,192,112,3,192,112,3,224,240,1,224,240,1,224, + 240,1,224,240,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,192,120,1,192,120,3,192,120,3, + 128,60,3,128,60,3,0,30,7,0,15,14,0,7,252,0, + 3,240,0,17,29,87,23,3,0,0,96,0,1,224,0,15, + 224,0,127,224,0,255,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,3,240,0,63,254,0,127,255,128, + 17,29,87,22,2,0,1,248,0,7,254,0,28,31,0,56, + 15,0,120,15,128,112,7,128,240,7,128,224,7,128,0,7, + 128,0,7,128,0,15,0,0,15,0,0,30,0,0,30,0, + 0,60,0,0,120,0,0,240,0,0,240,0,1,224,0,3, + 192,0,7,128,0,15,0,0,15,0,0,30,0,128,60,0, + 128,120,0,128,240,1,128,255,255,128,255,255,128,18,29,87, + 22,1,0,1,248,0,7,254,0,30,31,0,60,15,0,56, + 7,128,120,7,128,112,7,128,0,7,128,0,7,0,0,15, + 0,0,30,0,0,60,0,0,248,0,3,254,0,0,63,0, + 0,15,128,0,7,128,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,7,128,128,7,128,224,15, + 0,120,62,0,63,252,0,7,224,0,19,29,87,23,1,0, + 0,3,0,0,15,0,0,31,0,0,63,0,0,127,0,0, + 127,0,0,239,0,0,207,0,1,207,0,3,143,0,3,143, + 0,7,15,0,14,15,0,14,15,0,28,15,0,24,15,0, + 56,15,0,112,15,0,112,15,0,255,255,224,255,255,192,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,63,128,1,255,224,18,29,87,23,2,0,0,0,128, + 0,1,128,31,255,0,31,254,0,24,0,0,24,0,0,24, + 0,0,24,0,0,56,0,0,56,0,0,56,0,0,63,240, + 0,63,252,0,120,63,0,32,15,0,0,7,128,0,7,192, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,128,0,7,128,128,7,128,224,15,0,120,62,0,63,252, + 0,7,240,0,18,29,87,23,3,0,0,7,0,0,63,0, + 0,248,0,1,224,0,3,192,0,15,0,0,14,0,0,30, + 0,0,60,0,0,56,0,0,120,0,0,120,248,0,119,254, + 0,254,31,0,248,15,128,240,7,128,240,7,192,240,3,192, + 240,3,192,240,3,192,240,3,192,248,3,192,120,3,128,120, + 3,128,60,7,128,60,7,0,31,14,0,15,252,0,3,240, + 0,19,27,81,23,2,0,127,255,192,127,255,224,96,1,192, + 64,3,192,192,3,128,0,3,128,0,7,0,0,7,0,0, + 14,0,0,14,0,0,28,0,0,28,0,0,56,0,0,56, + 0,0,56,0,0,112,0,0,112,0,0,224,0,0,224,0, + 1,192,0,1,192,0,3,192,0,7,128,0,7,128,0,15, + 0,0,15,0,0,28,0,0,18,29,87,22,2,0,3,248, + 0,15,254,0,28,31,0,56,15,0,48,7,128,112,7,128, + 112,7,128,112,7,128,112,7,0,120,15,0,62,30,0,31, + 188,0,15,240,0,3,252,0,7,254,0,30,63,0,60,15, + 128,120,7,192,112,7,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,128,120,7,128,124,7,0,62,14,0,31, + 252,0,7,224,0,19,30,90,23,2,255,1,248,0,7,254, + 0,14,31,0,28,15,128,56,7,128,120,3,192,112,3,192, + 240,3,224,240,1,224,240,1,224,240,1,224,240,1,224,248, + 1,224,120,3,224,124,7,224,62,13,224,31,249,224,7,225, + 192,0,3,192,0,3,192,0,7,128,0,7,128,0,15,0, + 0,30,0,0,60,0,0,120,0,0,240,0,3,224,0,31, + 128,0,56,0,0,6,23,23,11,3,255,56,124,252,252,248, + 112,0,0,0,0,0,0,0,0,0,0,0,56,124,252,252, + 248,112,7,29,29,11,2,249,28,62,126,126,124,56,0,0, + 0,0,0,0,0,0,0,0,8,60,254,254,30,30,30,28, + 28,56,48,96,64,19,15,45,21,1,6,0,0,96,0,3, + 192,0,31,192,0,127,0,3,252,0,31,224,0,127,0,0, + 124,0,0,254,0,0,63,192,0,7,240,0,1,254,0,0, + 63,192,0,7,224,0,1,128,19,9,27,21,1,9,127,255, + 224,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,127,255,224,255,255,192,19,15,45,21,1,6,48, + 0,0,252,0,0,127,128,0,15,240,0,3,254,0,0,127, + 128,0,15,224,0,3,192,0,31,192,0,255,0,3,248,0, + 31,192,0,127,0,0,120,0,0,192,0,0,17,36,108,21, + 2,255,3,248,0,15,254,0,60,63,0,120,15,0,120,15, + 128,240,7,128,240,7,128,240,7,128,224,7,128,0,7,128, + 0,15,0,0,15,0,0,30,0,0,30,0,0,60,0,0, + 120,0,0,112,0,0,224,0,1,224,0,1,192,0,3,192, + 0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + 0,0,0,0,0,0,0,0,0,0,0,0,1,192,0,3, + 224,0,7,224,0,7,224,0,7,192,0,3,128,0,36,39, + 195,39,1,248,0,0,255,128,0,0,7,255,224,0,0,31, + 1,248,0,0,120,0,62,0,0,224,0,31,0,1,192,0, + 15,0,7,128,0,7,128,7,0,0,3,192,14,0,0,1, + 192,28,0,124,33,224,28,1,255,96,224,56,3,135,224,224, + 56,7,3,224,224,120,14,1,224,240,112,14,1,224,112,112, + 30,1,224,112,240,28,1,224,112,240,60,1,224,112,240,60, + 1,224,112,240,60,1,224,112,240,60,1,224,112,240,60,1, + 224,112,240,60,1,224,96,248,60,1,224,224,248,62,1,224, + 192,120,30,1,224,192,120,31,3,225,128,124,15,5,225,0, + 60,15,141,242,0,62,7,248,252,0,31,1,224,112,0,31, + 0,0,0,0,15,128,0,0,0,7,192,0,1,0,3,240, + 0,3,128,1,248,0,14,0,0,127,0,252,0,0,31,255, + 240,0,0,3,255,0,0,28,30,120,29,0,0,0,2,0, + 0,0,7,0,0,0,15,0,0,0,15,0,0,0,31,128, + 0,0,31,128,0,0,27,128,0,0,59,192,0,0,57,192, + 0,0,49,224,0,0,113,224,0,0,112,224,0,0,96,240, + 0,0,224,240,0,0,224,112,0,0,192,120,0,1,192,120, + 0,1,192,56,0,1,255,252,0,3,255,252,0,3,128,30, + 0,3,0,30,0,7,0,30,0,7,0,15,0,6,0,15, + 0,14,0,15,0,14,0,7,128,12,0,7,128,62,0,7, + 192,255,192,63,240,24,30,90,27,0,0,7,254,0,255,255, + 192,111,7,224,15,1,240,15,0,248,15,0,120,15,0,120, + 15,0,120,15,0,120,15,0,112,15,0,240,15,1,224,15, + 7,192,15,255,192,15,255,240,15,1,248,15,0,124,15,0, + 62,15,0,30,15,0,31,15,0,15,15,0,15,15,0,15, + 15,0,15,15,0,14,15,0,30,15,0,60,15,0,248,63, + 255,240,127,255,128,23,30,90,26,1,0,0,31,224,0,255, + 252,1,192,252,7,128,56,14,0,16,14,0,0,28,0,0, + 56,0,0,56,0,0,120,0,0,112,0,0,112,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,120,0,0,120,0,0,124,0,0, + 60,0,0,30,0,4,31,0,14,15,128,56,7,224,240,1, + 255,192,0,127,0,25,30,120,28,1,0,7,254,0,0,255, + 255,192,0,111,3,240,0,15,0,248,0,15,0,124,0,15, + 0,62,0,15,0,30,0,15,0,31,0,15,0,15,0,15, + 0,15,0,15,0,15,128,15,0,7,128,15,0,7,128,15, + 0,7,128,15,0,7,128,15,0,7,128,15,0,7,128,15, + 0,7,128,15,0,7,128,15,0,7,0,15,0,15,0,15, + 0,15,0,15,0,30,0,15,0,30,0,15,0,60,0,15, + 0,124,0,15,0,248,0,15,3,224,0,63,255,192,0,127, + 254,0,0,21,30,90,24,1,0,255,255,224,127,255,240,30, + 0,96,30,0,96,30,0,96,30,0,96,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 31,255,128,31,255,128,30,3,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,8,30,0,24,30,0,24,31,0,56,127,255,240, + 255,255,240,20,30,90,23,1,0,255,255,240,127,255,240,30, + 0,96,30,0,96,30,0,32,30,0,32,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 31,255,0,31,255,0,30,6,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,127,128,0, + 255,224,0,24,30,90,28,2,0,0,31,224,0,255,248,1, + 192,252,7,128,56,15,0,16,30,0,0,28,0,0,56,0, + 0,56,0,0,120,0,0,112,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,7,255,240,0,254,240, + 0,60,240,0,60,248,0,60,120,0,60,120,0,60,60,0, + 60,62,0,60,30,0,60,15,0,60,7,192,248,3,255,224, + 0,127,0,27,30,120,31,2,0,255,192,127,224,127,128,63, + 192,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,31,255,255,0,31,255,255,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,127,0,31,192,255,192,127, + 224,10,30,60,14,2,0,255,192,127,128,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,127, + 128,255,192,17,38,114,15,252,248,7,255,128,0,255,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,56,0,0,56,0,0,56,0,0,112,0,0,112,0,0, + 224,0,112,192,0,255,0,0,124,0,0,26,30,120,28,1, + 0,255,193,255,128,127,128,124,0,30,0,120,0,30,0,240, + 0,30,1,224,0,30,1,192,0,30,3,128,0,30,7,0, + 0,30,14,0,0,30,28,0,0,30,56,0,0,30,120,0, + 0,30,112,0,0,30,224,0,0,31,224,0,0,30,240,0, + 0,30,120,0,0,30,124,0,0,30,62,0,0,30,30,0, + 0,30,15,0,0,30,7,128,0,30,7,192,0,30,3,224, + 0,30,1,240,0,30,0,248,0,30,0,124,0,30,0,126, + 0,127,128,63,192,255,192,31,0,21,30,90,23,1,0,255, + 192,0,127,128,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,8,30,0,24,30,0,24, + 31,0,48,127,255,240,255,255,240,36,30,150,39,1,0,127, + 0,0,15,224,31,128,0,31,128,15,128,0,31,0,15,128, + 0,63,0,15,192,0,63,0,15,192,0,55,0,15,224,0, + 119,0,14,224,0,119,0,14,240,0,231,0,14,240,0,231, + 0,14,120,0,199,0,14,120,1,199,0,14,56,1,199,0, + 14,60,3,135,0,14,28,3,135,0,14,30,7,7,0,14, + 30,7,7,0,14,15,6,7,0,14,15,14,7,0,14,7, + 14,7,0,14,7,156,7,0,14,3,156,7,0,14,3,216, + 7,0,14,3,248,7,0,14,1,248,7,0,14,1,240,7, + 0,14,0,240,7,0,14,0,224,7,0,63,0,224,31,192, + 255,192,96,127,240,27,30,120,31,2,0,252,0,63,224,124, + 0,15,128,30,0,7,0,31,0,7,0,31,0,7,0,31, + 128,7,0,31,192,7,0,29,192,7,0,28,224,7,0,28, + 240,7,0,28,120,7,0,28,56,7,0,28,60,7,0,28, + 30,7,0,28,14,7,0,28,15,7,0,28,7,135,0,28, + 7,135,0,28,3,199,0,28,1,231,0,28,1,231,0,28, + 0,247,0,28,0,127,0,28,0,127,0,28,0,63,0,28, + 0,31,0,28,0,31,0,28,0,15,0,62,0,7,0,255, + 128,3,0,25,30,120,29,2,0,0,63,0,0,0,255,224, + 0,3,193,240,0,7,0,248,0,14,0,124,0,28,0,62, + 0,60,0,30,0,56,0,31,0,120,0,15,0,120,0,15, + 0,112,0,15,128,240,0,7,128,240,0,7,128,240,0,7, + 128,240,0,7,128,240,0,7,128,240,0,7,128,240,0,7, + 128,240,0,7,128,248,0,7,0,120,0,15,0,120,0,15, + 0,124,0,14,0,60,0,28,0,62,0,28,0,31,0,56, + 0,15,128,112,0,7,193,224,0,3,255,128,0,0,254,0, + 0,22,30,90,25,1,0,7,254,0,255,255,192,111,7,224, + 15,1,240,15,0,248,15,0,124,15,0,60,15,0,60,15, + 0,60,15,0,60,15,0,60,15,0,60,15,0,120,15,0, + 120,15,0,240,15,131,224,15,127,192,15,62,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,63,192,0,127,240, + 0,28,37,148,29,2,249,0,63,0,0,0,255,224,0,3, + 193,240,0,7,0,248,0,14,0,124,0,28,0,62,0,60, + 0,30,0,56,0,31,0,120,0,15,0,120,0,15,0,112, + 0,15,128,240,0,7,128,240,0,7,128,240,0,7,128,240, + 0,7,128,240,0,7,128,240,0,7,128,240,0,7,128,240, + 0,7,128,248,0,7,0,120,0,15,0,120,0,15,0,124, + 0,14,0,60,0,30,0,62,0,28,0,31,0,56,0,15, + 128,112,0,7,193,224,0,3,255,192,0,0,127,128,0,0, + 3,192,0,0,1,224,0,0,0,248,16,0,0,124,48,0, + 0,31,224,0,0,15,224,0,0,3,128,26,30,120,27,1, + 0,7,254,0,0,255,255,192,0,111,7,224,0,15,1,240, + 0,15,0,240,0,15,0,120,0,15,0,120,0,15,0,120, + 0,15,0,120,0,15,0,120,0,15,0,112,0,15,0,240, + 0,15,1,224,0,15,3,192,0,15,255,0,0,15,254,0, + 0,15,14,0,0,15,7,0,0,15,7,128,0,15,3,128, + 0,15,3,192,0,15,1,192,0,15,1,224,0,15,0,240, + 0,15,0,240,0,15,0,120,0,15,0,124,0,15,0,62, + 0,63,192,63,192,127,224,31,0,18,30,90,23,3,0,3, + 248,0,31,254,0,60,63,0,120,14,0,112,4,0,240,0, + 0,240,0,0,240,0,0,248,0,0,252,0,0,127,0,0, + 127,192,0,63,240,0,31,248,0,7,254,0,1,255,0,0, + 127,128,0,31,128,0,15,192,0,7,192,0,3,192,0,3, + 192,0,3,192,128,3,128,192,3,128,224,7,0,240,15,0, + 252,62,0,255,248,0,15,224,0,26,30,120,26,0,0,127, + 255,255,192,127,255,255,192,96,30,1,128,192,30,1,128,192, + 30,1,128,128,30,0,128,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 127,128,0,1,255,224,0,27,30,120,31,2,0,255,192,127, + 224,127,128,63,192,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,30,0,15,0,30,0,15,0,30, + 0,7,128,60,0,7,192,120,0,3,224,240,0,1,255,224, + 0,0,63,128,0,30,30,120,31,0,0,255,224,15,252,31, + 0,1,240,15,0,0,224,15,0,1,192,7,0,1,192,7, + 128,1,192,7,128,3,128,3,192,3,128,3,192,3,128,3, + 192,7,0,1,224,7,0,1,224,6,0,0,224,14,0,0, + 240,14,0,0,240,12,0,0,120,28,0,0,120,28,0,0, + 120,56,0,0,60,56,0,0,60,56,0,0,28,112,0,0, + 30,112,0,0,30,112,0,0,15,224,0,0,15,224,0,0, + 15,224,0,0,7,192,0,0,7,192,0,0,3,128,0,0, + 3,0,0,40,30,150,41,0,0,255,224,24,3,255,63,0, + 24,0,252,14,0,28,0,48,15,0,60,0,112,15,0,60, + 0,112,15,0,62,0,112,7,0,126,0,96,7,0,127,0, + 224,7,128,127,0,224,7,128,103,0,224,7,128,231,128,224, + 3,128,231,128,192,3,192,195,129,192,3,193,195,193,192,3, + 193,195,193,192,1,193,129,193,192,1,195,129,225,128,1,227, + 129,227,128,1,227,0,227,128,1,231,0,243,128,0,231,0, + 243,128,0,246,0,115,0,0,254,0,127,0,0,254,0,63, + 0,0,124,0,63,0,0,124,0,62,0,0,124,0,30,0, + 0,124,0,30,0,0,120,0,30,0,0,48,0,8,0,28, + 30,120,30,1,0,255,224,255,224,255,224,255,224,63,0,31, + 0,31,0,30,0,15,128,28,0,7,128,56,0,3,192,120, + 0,3,224,112,0,1,224,224,0,0,241,224,0,0,249,192, + 0,0,127,128,0,0,63,128,0,0,31,0,0,0,31,0, + 0,0,31,0,0,0,63,128,0,0,63,192,0,0,115,224, + 0,0,241,224,0,0,224,240,0,1,192,248,0,3,192,120, + 0,3,128,60,0,7,0,62,0,15,0,31,0,14,0,15, + 0,62,0,15,192,255,192,127,240,255,192,127,240,28,30,120, + 29,0,0,252,0,63,240,254,0,63,240,31,0,15,128,15, + 0,7,0,15,128,14,0,7,192,14,0,3,192,28,0,3, + 224,60,0,1,224,56,0,0,240,120,0,0,248,112,0,0, + 120,224,0,0,125,224,0,0,61,192,0,0,63,192,0,0, + 31,128,0,0,31,128,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,63,192,0,0,255,240,0,22,30,90,25,1, + 0,63,255,252,63,255,252,56,0,120,48,0,248,48,1,240, + 32,1,224,32,3,224,0,3,192,0,7,128,0,15,128,0, + 15,0,0,31,0,0,30,0,0,60,0,0,124,0,0,120, + 0,0,248,0,1,240,0,1,224,0,3,224,0,3,192,0, + 7,128,0,15,128,0,15,0,4,31,0,12,62,0,12,60, + 0,12,124,0,28,127,255,252,255,255,252,11,45,90,15,3, + 248,255,224,255,224,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,255,224,255,224,20,46,138,23,1, + 248,224,0,0,112,0,0,112,0,0,120,0,0,56,0,0, + 56,0,0,28,0,0,28,0,0,30,0,0,14,0,0,14, + 0,0,15,0,0,7,0,0,7,0,0,7,128,0,3,128, + 0,3,192,0,1,192,0,1,192,0,1,224,0,0,224,0, + 0,224,0,0,240,0,0,112,0,0,112,0,0,56,0,0, + 56,0,0,60,0,0,28,0,0,28,0,0,30,0,0,14, + 0,0,14,0,0,7,0,0,7,0,0,7,128,0,3,128, + 0,3,128,0,3,192,0,1,192,0,1,192,0,1,224,0, + 0,224,0,0,240,0,0,112,0,0,48,11,45,90,15,1, + 248,255,224,255,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,255,224,255,224,19,23,69,24,2, + 13,0,32,0,0,112,0,0,240,0,1,240,0,1,248,0, + 1,248,0,3,188,0,3,188,0,7,60,0,7,30,0,6, + 30,0,14,14,0,14,15,0,12,15,0,28,7,128,28,7, + 128,24,3,128,56,3,192,48,3,192,112,1,224,112,1,224, + 96,0,224,192,0,192,20,2,6,23,1,251,127,255,240,255, + 255,240,9,10,20,15,1,25,240,0,248,0,120,0,60,0, + 28,0,14,0,7,0,3,0,1,128,1,128,20,22,66,22, + 2,0,1,248,0,15,254,0,28,30,0,120,15,0,112,15, + 0,240,15,0,128,15,0,0,15,0,0,15,0,0,255,0, + 7,255,0,31,143,0,62,15,0,120,15,0,248,15,0,240, + 15,0,240,15,0,240,31,0,240,63,0,120,239,32,127,143, + 240,30,7,128,22,36,108,24,0,0,6,0,0,126,0,0, + 254,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,15,128,30,63,224,30,127,240,30,227,240, + 31,192,248,31,128,248,31,0,124,30,0,124,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 56,30,0,56,30,0,112,30,0,96,31,0,224,15,193,192, + 3,255,0,0,252,0,18,22,66,21,2,0,0,127,0,3, + 255,192,7,7,192,14,1,128,28,0,128,56,0,0,120,0, + 0,112,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,248,0,0,120,0,0,120,0,0,60, + 0,64,62,1,192,31,131,128,7,254,0,1,248,0,23,36, + 108,25,2,0,0,0,224,0,15,224,0,15,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,253, + 224,3,255,224,15,15,224,28,3,224,60,1,224,56,1,224, + 120,1,224,112,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,120,1,224,120,1, + 224,124,3,224,62,5,228,31,25,254,15,240,248,7,192,224, + 18,22,66,22,2,0,0,248,0,7,254,0,14,15,0,28, + 7,128,56,7,128,56,3,192,112,3,192,112,3,192,255,255, + 192,255,255,128,240,0,0,240,0,0,240,0,0,240,0,0, + 248,0,0,120,0,0,120,0,0,124,0,192,62,1,128,31, + 7,0,15,254,0,3,248,0,19,36,108,15,0,0,0,15, + 128,0,63,224,0,99,192,1,193,128,3,128,0,3,128,0, + 7,128,0,7,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,63,254,0,255,252,0,15,8, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,31,224,0,127,248,0,24,33,99,24,0,245, + 0,252,2,3,255,126,7,7,252,14,3,224,30,1,224,28, + 1,240,60,0,240,60,0,240,60,0,240,60,0,240,62,0, + 224,31,1,192,15,131,128,7,255,0,1,252,0,3,192,0, + 7,128,0,15,128,0,15,224,0,7,255,128,3,255,240,7, + 191,252,14,0,254,60,0,31,120,0,15,240,0,15,240,0, + 15,240,0,14,248,0,28,124,0,56,63,128,240,15,255,192, + 1,254,0,23,36,108,26,2,0,6,0,0,126,0,0,254, + 0,0,62,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,7,128,28,31,224,28,49,224,28,96,240,28, + 192,240,29,128,240,31,0,240,31,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,63, + 131,248,255,199,254,10,32,64,13,2,0,28,0,30,0,62, + 0,62,0,28,0,0,0,0,0,0,0,0,0,0,0,6, + 0,126,0,254,0,62,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,63,0,255,192,14,43,86,12,251, + 245,0,56,0,60,0,124,0,124,0,56,0,0,0,0,0, + 0,0,0,0,0,0,12,0,252,1,252,0,124,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,56,0,56,0,120,0,112,0,112,48, + 224,127,128,255,0,124,0,23,36,108,24,1,0,6,0,0, + 126,0,0,254,0,0,62,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,7,252,30,1,240,30,1,192, + 30,3,128,30,7,0,30,14,0,30,56,0,30,112,0,30, + 224,0,31,224,0,30,240,0,30,248,0,30,120,0,30,60, + 0,30,30,0,30,15,0,30,15,128,30,7,192,30,3,224, + 30,1,224,63,0,254,255,192,124,12,36,72,13,1,0,3, + 0,63,0,127,0,31,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,31,128,255,240,36,22,110,39,2,0,12,7,192, + 124,0,254,31,224,255,0,62,49,227,143,0,30,96,247,7, + 128,30,192,254,7,128,31,128,252,7,128,31,0,248,7,128, + 31,0,248,7,128,30,0,240,7,128,30,0,240,7,128,30, + 0,240,7,128,30,0,240,7,128,30,0,240,7,128,30,0, + 240,7,128,30,0,240,7,128,30,0,240,7,128,30,0,240, + 7,128,30,0,240,7,128,30,0,240,7,128,30,0,240,7, + 128,127,131,252,31,192,255,199,254,63,240,23,22,66,26,2, + 0,12,7,192,254,15,224,62,49,224,30,96,240,30,192,240, + 30,128,240,31,0,240,31,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,127,131,248, + 255,199,254,20,22,66,24,2,0,0,252,0,7,255,0,14, + 15,128,28,7,192,56,3,192,56,3,224,112,1,224,112,1, + 240,240,0,240,240,0,240,240,0,240,240,0,240,240,0,240, + 240,0,240,248,0,224,120,1,224,124,1,192,60,1,192,62, + 3,128,31,7,0,15,254,0,3,240,0,21,33,99,25,2, + 245,12,7,128,254,31,192,62,35,224,30,65,240,30,129,240, + 31,0,240,31,0,248,30,0,248,30,0,120,30,0,120,30, + 0,120,30,0,120,30,0,120,30,0,120,30,0,112,30,0, + 112,30,0,224,30,0,224,31,1,192,31,195,128,30,255,0, + 30,62,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,127,0, + 0,255,224,0,22,33,99,25,2,245,0,252,48,3,255,96, + 7,15,224,30,3,224,28,1,224,56,1,224,120,1,224,112, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,1,224,120,1,224,120,1,224,124,3,224, + 62,7,224,31,29,224,15,249,224,3,225,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,3,240,0,31,252,17,22,66, + 19,1,0,4,15,0,126,63,128,254,127,128,30,227,128,30, + 195,128,31,129,0,31,128,0,31,0,0,31,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,63, + 128,0,255,224,0,15,22,44,19,2,0,15,192,63,248,120, + 120,112,56,240,16,240,0,248,0,252,0,127,0,63,192,31, + 240,7,248,1,252,0,126,0,62,128,30,128,30,192,30,224, + 60,240,120,255,240,31,192,16,30,60,17,0,0,3,0,7, + 0,15,0,15,0,15,0,15,0,15,0,15,0,63,255,255, + 255,15,4,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,1,7,135,7,254,3,240,24,22,66,25,1,0,6, + 0,112,254,7,240,126,7,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,1,240,31,2,240,15,12,255,15,248,252,3,224, + 112,23,22,66,24,0,0,255,192,254,62,0,60,30,0,56, + 30,0,48,15,0,112,15,0,112,7,0,96,7,128,224,7, + 128,192,3,193,192,3,193,192,1,193,128,1,227,128,1,227, + 0,0,243,0,0,247,0,0,118,0,0,126,0,0,126,0, + 0,60,0,0,60,0,0,16,0,33,22,110,34,0,0,255, + 192,96,63,128,62,0,224,15,0,30,0,224,14,0,30,0, + 240,14,0,14,1,240,12,0,15,1,240,12,0,15,1,248, + 28,0,7,3,248,28,0,7,3,56,24,0,7,131,60,24, + 0,3,135,28,56,0,3,134,30,48,0,3,198,30,48,0, + 1,206,14,112,0,1,204,15,96,0,1,252,15,96,0,1, + 252,7,96,0,0,248,7,224,0,0,248,7,192,0,0,240, + 3,192,0,0,112,3,192,0,0,96,3,0,0,24,22,66, + 24,0,0,127,227,254,127,227,254,31,128,248,15,128,224,7, + 128,192,3,193,192,1,227,128,0,247,0,0,254,0,0,124, + 0,0,60,0,0,62,0,0,127,0,0,239,0,1,199,128, + 3,131,192,3,1,224,7,0,240,14,0,248,62,0,252,255, + 131,255,255,131,255,24,33,99,24,255,245,127,224,255,31,0, + 62,15,0,28,15,0,24,7,128,56,7,128,56,3,128,48, + 3,192,112,3,192,96,1,224,224,1,224,224,0,224,192,0, + 241,192,0,241,192,0,121,128,0,123,128,0,59,0,0,63, + 0,0,63,0,0,30,0,0,30,0,0,12,0,0,12,0, + 0,28,0,0,24,0,0,56,0,0,112,0,0,112,0,0, + 224,0,63,192,0,127,128,0,255,0,0,124,0,0,17,22, + 66,21,2,0,127,255,128,127,255,128,96,15,0,96,15,0, + 64,30,0,64,60,0,0,60,0,0,120,0,0,240,0,0, + 240,0,1,224,0,3,192,0,3,192,0,7,128,0,15,0, + 0,14,0,0,30,0,128,60,0,128,120,0,128,120,1,128, + 255,255,128,255,255,128,13,45,90,16,2,249,0,8,0,56, + 0,112,1,224,1,192,3,128,3,128,7,128,7,128,7,128, + 7,128,7,128,7,192,3,192,3,192,3,192,3,192,3,192, + 3,128,7,128,7,0,30,0,126,0,255,0,7,128,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,7,192,7,128, + 7,128,7,128,7,128,7,128,7,128,3,128,3,192,1,192, + 0,224,0,120,0,24,4,49,49,11,4,246,112,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,224,13,45,90, + 16,1,249,192,0,240,0,56,0,28,0,30,0,14,0,15, + 0,15,0,15,0,15,0,15,0,15,0,31,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,15,0,7,240,3, + 248,3,192,7,0,15,0,14,0,30,0,30,0,30,0,30, + 0,30,0,31,0,15,0,15,0,15,0,15,0,15,0,14, + 0,30,0,28,0,56,0,112,0,224,0,128,0,21,8,24, + 23,1,11,7,128,8,15,224,24,31,240,16,63,252,48,49, + 255,224,96,127,192,64,31,128,192,15,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--15-150-72-72-P-70-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w=12 h=15 x= 2 y= 8 dx=13 dy= 0 ascent=13 len=26 + Font Bounding box w=23 h=21 x=-8 y=-5 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr9[3248] U8G_SECTION(".progmem.u8g_font_gdr9") = { + 0,23,21,248,251,9,1,255,4,54,32,255,252,13,252,12, + 252,0,0,0,3,0,0,2,11,11,4,1,0,192,192,192, + 192,192,64,128,128,0,128,128,4,5,5,6,1,6,208,144, + 144,144,144,6,8,8,7,1,1,44,40,252,72,80,248,80, + 160,6,11,11,7,0,255,16,60,84,80,112,24,20,148,212, + 120,16,9,9,18,11,1,0,97,0,146,0,148,0,152,0, + 107,0,20,128,36,128,68,128,195,0,9,11,22,10,1,0, + 56,0,72,0,72,0,72,0,112,0,103,128,162,0,146,0, + 138,0,134,0,123,0,2,5,5,4,1,6,192,128,128,128, + 128,3,14,14,5,1,254,32,64,64,128,128,128,128,128,128, + 128,128,64,64,32,3,14,14,5,1,254,128,64,64,32,32, + 32,32,32,32,32,32,64,64,128,5,6,6,7,1,5,32, + 168,112,112,168,32,5,5,5,6,1,2,32,32,248,32,32, + 2,4,4,3,1,254,64,192,64,128,5,1,1,5,0,3, + 248,1,2,2,3,1,0,128,128,7,14,14,7,0,254,6, + 4,4,8,8,8,16,16,32,32,32,64,64,192,5,9,9, + 7,1,0,112,144,136,136,136,136,136,80,112,5,9,9,7, + 1,0,32,224,32,32,32,32,32,32,248,5,9,9,7,1, + 0,56,72,136,8,16,32,64,136,248,6,9,9,7,0,0, + 48,72,136,16,120,4,4,132,120,6,9,9,7,0,0,8, + 24,40,40,72,72,252,8,60,5,9,9,7,1,0,120,128, + 128,240,136,8,8,136,112,5,9,9,7,1,0,24,96,64, + 176,200,136,136,136,112,5,9,9,7,1,0,248,136,8,16, + 16,32,32,96,64,5,9,9,7,1,0,112,200,136,208,112, + 136,136,136,112,5,9,9,7,1,0,112,152,136,136,136,120, + 16,16,224,1,7,7,3,1,0,128,128,0,0,0,128,128, + 2,9,9,3,1,254,128,128,0,0,0,64,192,64,128,6, + 5,5,7,0,2,4,56,64,176,12,6,3,3,7,0,3, + 124,128,252,6,5,5,7,0,2,192,56,4,56,192,5,11, + 11,7,1,0,112,136,136,8,16,16,32,32,32,32,32,11, + 13,26,13,1,253,15,0,48,192,64,64,142,32,178,32,162, + 32,162,32,162,32,162,64,95,128,64,0,48,192,31,0,9, + 9,18,9,0,0,8,0,8,0,20,0,20,0,36,0,62, + 0,34,0,67,0,227,128,7,9,9,9,1,0,248,68,68, + 124,70,66,66,66,252,7,9,9,8,1,0,60,68,128,128, + 128,128,128,70,56,8,9,9,9,0,0,252,66,65,65,65, + 65,65,66,252,6,9,9,7,1,0,252,68,64,120,64,64, + 64,68,252,6,9,9,7,1,0,252,68,64,120,64,64,64, + 64,224,8,9,9,9,1,0,30,100,128,128,143,130,130,66, + 60,9,9,18,10,0,0,227,128,65,0,65,0,65,0,127, + 0,65,0,65,0,65,0,227,128,3,9,9,4,1,0,224, + 64,64,64,64,64,64,64,224,5,12,12,5,255,253,56,16, + 16,16,16,16,16,16,16,16,32,192,8,9,9,9,1,0, + 239,68,72,80,96,80,72,68,231,6,9,9,7,1,0,224, + 64,64,64,64,64,64,68,252,12,9,18,12,0,0,96,96, + 32,192,80,192,81,64,73,64,73,64,70,64,70,64,228,240, + 10,9,18,10,0,0,193,192,96,128,80,128,88,128,76,128, + 70,128,67,128,65,128,224,128,7,9,9,9,1,0,56,68, + 130,130,130,130,130,68,56,7,9,9,8,0,0,252,66,66, + 66,92,96,64,64,224,8,11,11,9,1,254,56,68,130,130, + 130,130,130,68,56,13,3,8,9,9,8,0,0,248,68,68, + 68,88,104,72,68,231,5,9,9,7,1,0,112,152,128,64, + 48,8,136,136,240,7,9,9,8,1,0,254,146,16,16,16, + 16,16,16,56,9,9,18,10,0,0,227,128,65,0,65,0, + 65,0,65,0,65,0,65,0,98,0,60,0,9,9,18,10, + 0,0,227,128,97,0,33,0,34,0,18,0,18,0,28,0, + 12,0,8,0,12,9,18,13,0,0,226,112,66,32,38,32, + 37,32,41,32,41,192,56,192,16,192,16,192,9,9,18,9, + 0,0,247,128,98,0,54,0,28,0,8,0,20,0,34,0, + 35,0,243,128,9,9,18,9,0,0,227,128,98,0,50,0, + 20,0,28,0,8,0,8,0,8,0,28,0,7,9,9,8, + 0,0,126,68,4,8,16,16,34,66,254,3,15,15,5,1, + 253,224,128,128,128,128,128,128,128,128,128,128,128,128,128,224, + 7,14,14,7,0,254,192,64,64,32,32,32,16,16,8,8, + 8,4,4,6,3,15,15,5,1,253,224,32,32,32,32,32, + 32,32,32,32,32,32,32,32,224,6,7,7,7,1,4,32, + 48,80,80,136,136,140,7,1,1,7,0,254,254,3,3,3, + 5,0,8,192,64,32,6,7,7,7,1,0,56,72,136,56, + 200,136,252,7,11,11,8,0,0,192,64,64,64,92,98,66, + 66,66,68,56,5,7,7,7,1,0,120,136,128,128,128,200, + 112,7,11,11,8,1,0,12,4,4,4,60,196,132,132,132, + 204,118,5,7,7,7,1,0,112,72,136,248,128,200,112,5, + 11,11,5,1,0,24,104,64,64,240,64,64,64,64,64,240, + 7,11,11,7,0,252,126,132,132,196,120,96,120,70,130,134, + 120,8,11,11,8,0,0,192,64,64,64,78,114,66,66,66, + 66,231,3,10,10,4,1,0,64,64,0,192,64,64,64,64, + 64,224,4,14,14,4,255,252,16,16,0,48,16,16,16,16, + 16,16,16,16,32,192,7,11,11,8,0,0,192,64,64,64, + 78,72,112,112,80,72,230,3,11,11,4,1,0,192,64,64, + 64,64,64,64,64,64,64,224,11,7,14,11,0,0,221,192, + 102,64,68,64,68,64,68,64,68,64,238,224,8,7,7,8, + 0,0,78,242,66,66,66,66,231,6,7,7,8,1,0,56, + 204,132,132,132,200,112,7,11,11,8,0,252,92,230,66,66, + 66,68,120,64,64,64,224,7,11,11,8,1,252,60,68,132, + 132,132,204,116,4,4,4,14,5,7,7,6,0,0,216,104, + 64,64,64,64,224,4,7,7,6,1,0,96,176,128,96,16, + 144,224,5,9,9,5,0,0,64,64,248,64,64,64,64,64, + 120,8,7,7,8,0,0,198,66,66,66,66,70,59,7,7, + 7,7,0,0,230,68,36,40,56,24,16,10,7,14,11,0, + 0,228,192,68,128,110,128,42,128,50,128,49,0,17,0,7, + 7,7,8,0,0,238,100,56,24,40,68,238,7,11,11,7, + 0,252,230,68,36,36,40,24,16,16,16,32,192,5,7,7, + 7,1,0,248,144,32,32,64,136,248,3,14,14,5,1,254, + 32,64,64,64,32,32,64,224,32,32,64,64,64,32,1,15, + 15,3,1,253,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,3,14,14,5,1,254,128,64,64,64,128,128,192, + 96,128,128,64,64,64,128,7,3,3,7,0,3,50,220,128, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,0,0,0,3,0,0,2,11,11,4,1,252,128,128,0, + 128,128,128,192,192,192,192,192,5,9,9,7,1,0,32,56, + 232,160,160,160,232,112,32,6,9,9,7,1,0,56,68,72, + 64,240,64,64,68,252,3,5,5,7,2,2,160,224,160,160, + 224,7,9,9,7,0,0,206,100,40,56,16,124,16,16,56, + 1,15,15,3,1,253,128,128,128,128,128,128,128,0,128,128, + 128,128,128,128,128,6,11,11,8,1,0,112,144,128,224,184, + 132,68,56,136,136,112,4,2,2,6,1,8,144,144,9,9, + 18,11,1,0,62,0,93,0,166,128,160,128,160,128,160,128, + 182,128,93,0,62,0,4,5,5,4,0,4,96,160,224,224, + 240,5,7,7,7,1,0,104,72,144,176,144,72,104,6,4, + 4,7,1,1,252,4,4,4,5,1,1,5,0,3,248,5, + 6,6,5,0,5,112,136,184,168,168,112,5,1,1,7,1, + 8,248,3,4,4,5,1,5,96,160,160,192,6,7,7,6, + 0,1,16,16,124,16,16,0,252,4,6,6,5,0,4,48, + 208,32,32,80,240,4,6,6,5,0,4,48,80,32,16,144, + 96,3,3,3,5,2,8,96,128,128,8,11,11,8,0,252, + 198,66,66,66,66,70,123,64,64,64,96,8,11,11,9,0, + 254,127,138,138,202,122,10,10,10,10,10,31,1,2,2,2, + 1,4,128,128,2,3,3,3,1,253,128,64,192,3,5,5, + 5,1,5,192,64,64,64,224,3,5,5,4,0,4,96,160, + 160,192,224,6,7,7,7,1,0,160,80,72,44,72,80,160, + 8,9,9,9,1,0,194,68,68,72,178,22,42,79,199,7, + 9,9,9,1,0,194,68,72,72,182,26,36,74,206,9,9, + 18,9,0,0,49,0,82,0,52,0,20,0,233,0,11,0, + 21,0,39,128,99,128,5,11,11,7,1,252,32,32,32,32, + 32,64,128,128,136,136,112,9,12,24,9,0,0,48,0,12, + 0,0,0,8,0,8,0,20,0,20,0,36,0,62,0,34, + 0,67,0,227,128,9,12,24,9,0,0,6,0,24,0,0, + 0,8,0,8,0,20,0,20,0,36,0,62,0,34,0,67, + 0,227,128,9,12,24,9,0,0,28,0,34,0,0,0,8, + 0,8,0,20,0,20,0,36,0,62,0,34,0,67,0,227, + 128,9,12,24,9,0,0,58,0,60,0,0,0,8,0,8, + 0,20,0,20,0,36,0,62,0,34,0,67,0,227,128,9, + 11,22,9,0,0,36,0,36,0,8,0,8,0,20,0,20, + 0,36,0,62,0,34,0,67,0,227,128,9,13,26,9,0, + 0,12,0,20,0,20,0,8,0,8,0,8,0,20,0,20, + 0,36,0,62,0,34,0,67,0,227,128,11,9,18,12,0, + 0,31,224,10,32,18,0,31,192,18,0,34,0,34,0,34, + 32,231,224,6,12,12,8,1,253,60,68,128,128,128,128,128, + 68,120,32,16,48,6,12,12,7,1,0,224,16,0,252,68, + 64,120,64,64,64,68,252,6,12,12,7,1,0,24,96,0, + 252,68,64,120,64,64,64,68,252,6,12,12,7,1,0,112, + 136,0,252,68,64,120,64,64,64,68,252,6,11,11,7,1, + 0,144,144,124,68,64,120,64,64,64,68,252,4,12,12,4, + 0,0,192,32,0,112,32,32,32,32,32,32,32,112,4,12, + 12,4,1,0,112,128,0,224,64,64,64,64,64,64,64,224, + 4,12,12,4,0,0,96,144,0,112,32,32,32,32,32,32, + 32,112,4,11,11,4,0,0,144,144,96,32,32,32,32,32, + 32,32,112,8,9,9,9,0,0,252,66,65,65,241,65,65, + 66,252,10,12,24,10,0,0,26,0,60,0,0,0,193,192, + 96,128,80,128,88,128,76,128,70,128,67,128,65,128,224,128, + 7,12,12,9,1,0,96,24,0,56,68,130,130,130,130,130, + 68,56,7,12,12,9,1,0,12,48,0,56,68,130,130,130, + 130,130,68,56,7,12,12,9,1,0,56,68,0,56,68,130, + 130,130,130,130,68,56,7,12,12,9,1,0,52,120,0,56, + 68,130,130,130,130,130,68,56,7,11,11,9,1,0,72,72, + 56,68,130,130,130,130,130,68,56,4,4,4,6,1,2,144, + 96,96,144,7,9,9,9,1,0,58,68,138,138,146,162,194, + 68,184,9,12,24,10,0,0,56,0,4,0,0,0,227,128, + 65,0,65,0,65,0,65,0,65,0,65,0,98,0,60,0, + 9,12,24,10,0,0,6,0,24,0,0,0,227,128,65,0, + 65,0,65,0,65,0,65,0,65,0,98,0,60,0,9,12, + 24,10,0,0,28,0,34,0,0,0,227,128,65,0,65,0, + 65,0,65,0,65,0,65,0,98,0,60,0,9,11,22,10, + 0,0,34,0,36,0,195,128,65,0,65,0,65,0,65,0, + 65,0,65,0,98,0,60,0,9,12,24,9,0,0,6,0, + 24,0,0,0,227,128,98,0,50,0,20,0,28,0,8,0, + 8,0,8,0,28,0,7,9,9,8,0,0,224,124,70,66, + 66,66,100,92,224,8,11,11,8,0,0,28,34,66,66,68, + 72,76,67,65,73,206,6,11,11,7,1,0,192,96,32,0, + 56,72,136,56,200,136,252,6,11,11,7,1,0,24,16,32, + 0,56,72,136,56,200,136,252,6,11,11,7,1,0,32,80, + 136,0,56,72,136,56,200,136,252,6,10,10,7,1,0,104, + 176,0,56,72,136,56,200,136,252,6,10,10,7,1,0,144, + 144,0,56,72,136,56,200,136,252,6,11,11,7,1,0,48, + 80,80,48,56,72,136,56,200,136,252,9,7,14,10,1,0, + 63,0,76,128,136,128,63,128,200,0,136,128,247,0,5,10, + 10,7,1,253,120,136,128,128,128,200,112,32,16,48,5,11, + 11,7,1,0,64,32,32,16,112,72,136,248,128,200,112,5, + 11,11,7,1,0,24,16,32,0,112,72,136,248,128,200,112, + 5,11,11,7,1,0,32,80,136,0,112,72,136,248,128,200, + 112,5,10,10,7,1,0,144,152,0,112,72,136,248,128,200, + 112,4,11,11,4,0,0,128,64,32,0,96,32,32,32,32, + 32,112,3,11,11,4,1,0,32,64,128,0,192,64,64,64, + 64,64,224,4,11,11,4,0,0,96,80,144,0,96,32,32, + 32,32,32,112,4,10,10,4,0,0,144,144,0,96,32,32, + 32,32,32,112,5,11,11,7,1,0,200,48,80,16,120,136, + 136,136,136,144,112,8,10,10,8,0,0,18,108,0,78,242, + 66,66,66,66,231,6,11,11,8,1,0,64,32,16,0,56, + 204,132,132,132,200,112,6,11,11,8,1,0,8,16,32,0, + 56,204,132,132,132,200,112,6,11,11,8,1,0,48,80,136, + 0,56,204,132,132,132,200,112,6,10,10,8,1,0,104,152, + 0,56,204,132,132,132,200,112,6,10,10,8,1,0,136,136, + 0,56,204,132,132,132,200,112,6,4,4,6,0,2,16,124, + 128,16,6,7,7,8,1,0,60,204,148,164,164,200,240,8, + 11,11,8,0,0,32,16,8,0,198,66,66,66,66,70,59, + 8,11,11,8,0,0,4,8,16,0,198,66,66,66,66,70, + 59,8,11,11,8,0,0,24,24,36,0,198,66,66,66,66, + 70,59,8,10,10,8,0,0,36,68,0,198,66,66,66,66, + 70,59,7,15,15,7,0,252,4,8,16,0,230,68,36,36, + 40,24,16,16,16,32,192,7,15,15,8,0,252,192,64,64, + 64,76,114,66,66,66,68,120,64,64,64,224,7,14,14,7, + 0,252,68,68,0,230,68,36,36,40,24,16,16,16,32,192 + }; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--15-150-72-72-P-70-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 9 + Calculated Max Values w= 7 h=14 x= 1 y= 5 dx= 7 dy= 0 ascent=12 len=14 + Font Bounding box w=23 h=21 x=-8 y=-5 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent =12 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr9n[235] U8G_SECTION(".progmem.u8g_font_gdr9n") = { + 0,23,21,248,251,9,0,0,0,0,42,57,0,12,254,9, + 0,5,6,6,7,1,5,32,168,112,112,168,32,5,5,5, + 6,1,2,32,32,248,32,32,2,4,4,3,1,254,64,192, + 64,128,5,1,1,5,0,3,248,1,2,2,3,1,0,128, + 128,7,14,14,7,0,254,6,4,4,8,8,8,16,16,32, + 32,32,64,64,192,5,9,9,7,1,0,112,144,136,136,136, + 136,136,80,112,5,9,9,7,1,0,32,224,32,32,32,32, + 32,32,248,5,9,9,7,1,0,56,72,136,8,16,32,64, + 136,248,6,9,9,7,0,0,48,72,136,16,120,4,4,132, + 120,6,9,9,7,0,0,8,24,40,40,72,72,252,8,60, + 5,9,9,7,1,0,120,128,128,240,136,8,8,136,112,5, + 9,9,7,1,0,24,96,64,176,200,136,136,136,112,5,9, + 9,7,1,0,248,136,8,16,16,32,32,96,64,5,9,9, + 7,1,0,112,200,136,208,112,136,136,136,112,5,9,9,7, + 1,0,112,152,136,136,136,120,16,16,224}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--15-150-72-72-P-70-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w=12 h=15 x= 1 y= 8 dx=13 dy= 0 ascent=12 len=26 + Font Bounding box w=23 h=21 x=-8 y=-5 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =12 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr9r[1553] U8G_SECTION(".progmem.u8g_font_gdr9r") = { + 0,23,21,248,251,9,1,255,4,54,32,127,252,12,252,12, + 252,0,0,0,3,0,0,2,11,11,4,1,0,192,192,192, + 192,192,64,128,128,0,128,128,4,5,5,6,1,6,208,144, + 144,144,144,6,8,8,7,1,1,44,40,252,72,80,248,80, + 160,6,11,11,7,0,255,16,60,84,80,112,24,20,148,212, + 120,16,9,9,18,11,1,0,97,0,146,0,148,0,152,0, + 107,0,20,128,36,128,68,128,195,0,9,11,22,10,1,0, + 56,0,72,0,72,0,72,0,112,0,103,128,162,0,146,0, + 138,0,134,0,123,0,2,5,5,4,1,6,192,128,128,128, + 128,3,14,14,5,1,254,32,64,64,128,128,128,128,128,128, + 128,128,64,64,32,3,14,14,5,1,254,128,64,64,32,32, + 32,32,32,32,32,32,64,64,128,5,6,6,7,1,5,32, + 168,112,112,168,32,5,5,5,6,1,2,32,32,248,32,32, + 2,4,4,3,1,254,64,192,64,128,5,1,1,5,0,3, + 248,1,2,2,3,1,0,128,128,7,14,14,7,0,254,6, + 4,4,8,8,8,16,16,32,32,32,64,64,192,5,9,9, + 7,1,0,112,144,136,136,136,136,136,80,112,5,9,9,7, + 1,0,32,224,32,32,32,32,32,32,248,5,9,9,7,1, + 0,56,72,136,8,16,32,64,136,248,6,9,9,7,0,0, + 48,72,136,16,120,4,4,132,120,6,9,9,7,0,0,8, + 24,40,40,72,72,252,8,60,5,9,9,7,1,0,120,128, + 128,240,136,8,8,136,112,5,9,9,7,1,0,24,96,64, + 176,200,136,136,136,112,5,9,9,7,1,0,248,136,8,16, + 16,32,32,96,64,5,9,9,7,1,0,112,200,136,208,112, + 136,136,136,112,5,9,9,7,1,0,112,152,136,136,136,120, + 16,16,224,1,7,7,3,1,0,128,128,0,0,0,128,128, + 2,9,9,3,1,254,128,128,0,0,0,64,192,64,128,6, + 5,5,7,0,2,4,56,64,176,12,6,3,3,7,0,3, + 124,128,252,6,5,5,7,0,2,192,56,4,56,192,5,11, + 11,7,1,0,112,136,136,8,16,16,32,32,32,32,32,11, + 13,26,13,1,253,15,0,48,192,64,64,142,32,178,32,162, + 32,162,32,162,32,162,64,95,128,64,0,48,192,31,0,9, + 9,18,9,0,0,8,0,8,0,20,0,20,0,36,0,62, + 0,34,0,67,0,227,128,7,9,9,9,1,0,248,68,68, + 124,70,66,66,66,252,7,9,9,8,1,0,60,68,128,128, + 128,128,128,70,56,8,9,9,9,0,0,252,66,65,65,65, + 65,65,66,252,6,9,9,7,1,0,252,68,64,120,64,64, + 64,68,252,6,9,9,7,1,0,252,68,64,120,64,64,64, + 64,224,8,9,9,9,1,0,30,100,128,128,143,130,130,66, + 60,9,9,18,10,0,0,227,128,65,0,65,0,65,0,127, + 0,65,0,65,0,65,0,227,128,3,9,9,4,1,0,224, + 64,64,64,64,64,64,64,224,5,12,12,5,255,253,56,16, + 16,16,16,16,16,16,16,16,32,192,8,9,9,9,1,0, + 239,68,72,80,96,80,72,68,231,6,9,9,7,1,0,224, + 64,64,64,64,64,64,68,252,12,9,18,12,0,0,96,96, + 32,192,80,192,81,64,73,64,73,64,70,64,70,64,228,240, + 10,9,18,10,0,0,193,192,96,128,80,128,88,128,76,128, + 70,128,67,128,65,128,224,128,7,9,9,9,1,0,56,68, + 130,130,130,130,130,68,56,7,9,9,8,0,0,252,66,66, + 66,92,96,64,64,224,8,11,11,9,1,254,56,68,130,130, + 130,130,130,68,56,13,3,8,9,9,8,0,0,248,68,68, + 68,88,104,72,68,231,5,9,9,7,1,0,112,152,128,64, + 48,8,136,136,240,7,9,9,8,1,0,254,146,16,16,16, + 16,16,16,56,9,9,18,10,0,0,227,128,65,0,65,0, + 65,0,65,0,65,0,65,0,98,0,60,0,9,9,18,10, + 0,0,227,128,97,0,33,0,34,0,18,0,18,0,28,0, + 12,0,8,0,12,9,18,13,0,0,226,112,66,32,38,32, + 37,32,41,32,41,192,56,192,16,192,16,192,9,9,18,9, + 0,0,247,128,98,0,54,0,28,0,8,0,20,0,34,0, + 35,0,243,128,9,9,18,9,0,0,227,128,98,0,50,0, + 20,0,28,0,8,0,8,0,8,0,28,0,7,9,9,8, + 0,0,126,68,4,8,16,16,34,66,254,3,15,15,5,1, + 253,224,128,128,128,128,128,128,128,128,128,128,128,128,128,224, + 7,14,14,7,0,254,192,64,64,32,32,32,16,16,8,8, + 8,4,4,6,3,15,15,5,1,253,224,32,32,32,32,32, + 32,32,32,32,32,32,32,32,224,6,7,7,7,1,4,32, + 48,80,80,136,136,140,7,1,1,7,0,254,254,3,3,3, + 5,0,8,192,64,32,6,7,7,7,1,0,56,72,136,56, + 200,136,252,7,11,11,8,0,0,192,64,64,64,92,98,66, + 66,66,68,56,5,7,7,7,1,0,120,136,128,128,128,200, + 112,7,11,11,8,1,0,12,4,4,4,60,196,132,132,132, + 204,118,5,7,7,7,1,0,112,72,136,248,128,200,112,5, + 11,11,5,1,0,24,104,64,64,240,64,64,64,64,64,240, + 7,11,11,7,0,252,126,132,132,196,120,96,120,70,130,134, + 120,8,11,11,8,0,0,192,64,64,64,78,114,66,66,66, + 66,231,3,10,10,4,1,0,64,64,0,192,64,64,64,64, + 64,224,4,14,14,4,255,252,16,16,0,48,16,16,16,16, + 16,16,16,16,32,192,7,11,11,8,0,0,192,64,64,64, + 78,72,112,112,80,72,230,3,11,11,4,1,0,192,64,64, + 64,64,64,64,64,64,64,224,11,7,14,11,0,0,221,192, + 102,64,68,64,68,64,68,64,68,64,238,224,8,7,7,8, + 0,0,78,242,66,66,66,66,231,6,7,7,8,1,0,56, + 204,132,132,132,200,112,7,11,11,8,0,252,92,230,66,66, + 66,68,120,64,64,64,224,7,11,11,8,1,252,60,68,132, + 132,132,204,116,4,4,4,14,5,7,7,6,0,0,216,104, + 64,64,64,64,224,4,7,7,6,1,0,96,176,128,96,16, + 144,224,5,9,9,5,0,0,64,64,248,64,64,64,64,64, + 120,8,7,7,8,0,0,198,66,66,66,66,70,59,7,7, + 7,7,0,0,230,68,36,40,56,24,16,10,7,14,11,0, + 0,228,192,68,128,110,128,42,128,50,128,49,0,17,0,7, + 7,7,8,0,0,238,100,56,24,40,68,238,7,11,11,7, + 0,252,230,68,36,36,40,24,16,16,16,32,192,5,7,7, + 7,1,0,248,144,32,32,64,136,248,3,14,14,5,1,254, + 32,64,64,64,32,32,64,224,32,32,64,64,64,32,1,15, + 15,3,1,253,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,3,14,14,5,1,254,128,64,64,64,128,128,192, + 96,128,128,64,64,64,128,7,3,3,7,0,3,50,220,128, + 255}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--11-80-100-100-P-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=10 h=11 x= 1 y= 7 dx=11 dy= 0 ascent=11 len=18 + Font Bounding box w=12 h=19 x=-1 y=-5 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB08[2677] U8G_SECTION(".progmem.u8g_font_helvB08") = { + 0,12,19,255,251,8,1,182,3,122,32,255,254,11,254,8, + 254,0,0,0,3,0,1,2,8,8,4,1,0,192,192,192, + 192,128,128,0,192,3,3,3,5,1,5,160,160,160,7,7, + 7,6,255,0,40,40,126,40,252,80,80,5,10,10,6,0, + 255,32,112,168,224,112,56,40,168,112,32,7,8,8,8,0, + 0,98,180,104,16,16,44,86,140,7,8,8,8,0,0,112, + 216,216,112,222,204,220,118,1,3,3,3,1,5,128,128,128, + 3,10,10,4,0,254,32,96,64,192,192,192,192,64,96,32, + 3,10,10,4,0,254,128,192,64,96,96,96,96,64,192,128, + 3,3,3,4,0,5,160,64,160,6,5,5,6,0,1,48, + 48,252,48,48,2,4,4,3,0,254,192,192,64,128,4,1, + 1,5,0,3,240,2,2,2,3,0,0,192,192,4,8,8, + 4,0,0,16,16,32,32,64,64,128,128,5,8,8,6,0, + 0,112,216,216,216,216,216,216,112,3,8,8,6,1,0,96, + 224,96,96,96,96,96,96,5,8,8,6,0,0,112,216,24, + 24,48,96,192,248,5,8,8,6,0,0,112,216,24,48,24, + 24,216,112,6,8,8,6,0,0,8,24,56,88,152,252,24, + 24,5,8,8,6,0,0,248,192,192,240,24,152,216,112,5, + 8,8,6,0,0,112,216,192,240,216,216,216,112,5,8,8, + 6,0,0,248,24,24,48,48,96,96,96,5,8,8,6,0, + 0,112,216,216,112,216,216,216,112,5,8,8,6,0,0,112, + 216,216,216,120,24,216,112,2,6,6,3,0,0,192,192,0, + 0,192,192,2,8,8,3,0,254,192,192,0,0,192,192,64, + 128,4,5,5,5,0,1,48,96,192,96,48,5,3,3,6, + 0,2,248,0,248,4,5,5,5,0,1,192,96,48,96,192, + 5,8,8,6,0,0,112,216,24,48,96,96,0,96,10,9, + 18,11,0,255,31,0,96,128,77,64,146,64,162,64,164,128, + 155,0,64,0,62,0,7,8,8,8,0,0,56,56,108,108, + 108,254,198,198,6,8,8,7,0,0,248,204,204,248,204,204, + 204,248,7,8,8,8,0,0,60,102,194,192,192,194,102,60, + 6,8,8,7,0,0,240,216,204,204,204,204,216,240,5,8, + 8,6,0,0,248,192,192,248,192,192,192,248,5,8,8,6, + 0,0,248,192,192,240,192,192,192,192,7,8,8,8,0,0, + 60,102,194,192,206,198,102,58,6,8,8,7,0,0,204,204, + 204,252,204,204,204,204,2,8,8,3,0,0,192,192,192,192, + 192,192,192,192,5,8,8,6,0,0,24,24,24,24,24,24, + 216,112,7,8,8,7,0,0,204,216,240,224,240,216,204,198, + 5,8,8,6,0,0,192,192,192,192,192,192,192,248,9,8, + 16,10,0,0,193,128,227,128,227,128,247,128,213,128,221,128, + 201,128,201,128,7,8,8,8,0,0,198,230,230,214,214,206, + 206,198,7,8,8,8,0,0,56,108,198,198,198,198,108,56, + 6,8,8,7,0,0,248,204,204,204,248,192,192,192,7,9, + 9,8,0,255,56,108,198,198,198,214,108,60,2,6,8,8, + 7,0,0,248,204,204,204,248,204,204,204,6,8,8,7,0, + 0,120,204,224,120,28,140,204,120,6,8,8,7,0,0,252, + 48,48,48,48,48,48,48,6,8,8,7,0,0,204,204,204, + 204,204,204,204,120,7,8,8,8,0,0,198,198,108,108,108, + 56,56,16,10,8,16,11,0,0,204,192,204,192,204,192,109, + 128,109,128,127,128,51,0,51,0,7,8,8,8,0,0,198, + 198,108,56,56,108,198,198,8,8,8,9,0,0,195,195,102, + 102,60,24,24,24,6,8,8,7,0,0,252,12,24,48,112, + 96,192,252,3,10,10,4,0,254,224,192,192,192,192,192,192, + 192,192,224,4,8,8,4,0,0,128,128,64,64,32,32,16, + 16,3,10,10,4,0,254,224,96,96,96,96,96,96,96,96, + 224,4,4,4,5,0,4,96,240,144,144,6,1,1,6,0, + 254,252,2,2,2,3,0,7,128,64,6,6,6,6,0,0, + 112,152,120,216,216,108,5,8,8,6,0,0,192,192,240,216, + 216,216,216,240,4,6,6,5,0,0,112,208,192,192,208,112, + 5,8,8,6,0,0,24,24,120,216,216,216,216,120,5,6, + 6,6,0,0,112,216,248,192,216,112,5,8,8,4,255,0, + 56,96,240,96,96,96,96,96,5,8,8,6,0,254,104,216, + 216,216,216,120,24,112,5,8,8,6,0,0,192,192,240,216, + 216,216,216,216,2,8,8,3,0,0,192,0,192,192,192,192, + 192,192,3,10,10,3,255,254,96,0,96,96,96,96,96,96, + 96,192,6,8,8,6,0,0,192,192,216,240,224,240,216,204, + 2,8,8,3,0,0,192,192,192,192,192,192,192,192,8,6, + 6,9,0,0,182,219,219,219,219,219,5,6,6,6,0,0, + 176,216,216,216,216,216,5,6,6,6,0,0,112,216,216,216, + 216,112,5,8,8,6,0,254,176,216,216,216,216,240,192,192, + 5,8,8,6,0,254,104,216,216,216,216,120,24,24,4,6, + 6,4,0,0,176,224,192,192,192,192,5,6,6,6,0,0, + 112,216,112,24,216,112,4,8,8,4,255,0,96,96,240,96, + 96,96,96,48,5,6,6,6,0,0,216,216,216,216,216,104, + 5,6,6,6,0,0,216,216,216,80,112,32,7,6,6,8, + 0,0,214,214,214,108,108,108,6,6,6,7,0,0,204,120, + 48,120,204,204,5,8,8,6,0,254,216,216,216,216,120,48, + 48,96,5,6,6,6,0,0,248,24,48,96,192,248,4,10, + 10,5,0,254,48,96,96,96,192,96,96,96,96,48,1,10, + 10,3,1,254,128,128,128,128,128,128,128,128,128,128,4,10, + 10,5,0,254,192,96,96,96,48,96,96,96,96,192,5,2, + 2,6,0,3,104,176,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,0,0,3,0,1,2,8,8, + 4,1,254,192,0,64,64,192,192,192,192,5,8,8,6,0, + 255,16,112,216,160,160,216,112,64,5,8,8,6,0,0,56, + 104,96,240,96,96,104,216,6,6,6,6,0,1,132,120,72, + 72,120,132,6,8,8,7,0,0,132,132,204,72,252,48,252, + 48,1,10,10,3,1,254,128,128,128,128,0,0,128,128,128, + 128,5,10,10,6,0,254,112,200,224,112,152,200,112,56,152, + 112,3,1,1,3,0,7,160,8,8,8,10,1,0,60,66, + 153,165,161,157,66,60,3,5,5,5,1,3,224,32,160,0, + 224,6,3,3,7,0,1,108,216,108,5,3,3,7,1,2, + 248,8,8,4,1,1,5,0,3,240,8,8,8,10,1,0, + 60,66,189,165,185,165,66,60,3,1,1,3,0,7,224,3, + 3,3,4,0,5,96,160,192,6,7,7,6,0,0,48,48, + 252,48,48,0,252,3,4,4,3,0,4,96,160,64,224,3, + 4,4,3,0,4,224,64,32,192,2,2,2,3,0,7,64, + 128,5,8,8,6,0,254,216,216,216,216,216,232,192,192,6, + 10,10,6,0,254,124,232,232,232,104,40,40,40,40,40,2, + 1,1,3,0,3,192,2,2,2,3,0,254,64,192,2,4, + 4,3,0,4,64,192,64,64,3,5,5,5,1,3,224,160, + 224,0,224,6,3,3,7,0,1,216,108,216,8,8,8,9, + 0,0,68,196,72,72,18,38,47,66,7,8,8,9,0,0, + 68,196,72,72,22,42,36,78,8,8,8,9,0,0,228,68, + 40,200,18,38,47,66,5,8,8,6,0,254,48,0,48,48, + 96,192,216,112,7,11,11,8,0,0,32,16,0,56,56,108, + 108,108,254,198,198,7,11,11,8,0,0,8,16,0,56,56, + 108,108,108,254,198,198,7,11,11,8,0,0,16,40,0,56, + 56,108,108,108,254,198,198,7,11,11,8,0,0,20,40,0, + 56,56,108,108,108,254,198,198,7,10,10,8,0,0,40,0, + 56,56,108,108,108,254,198,198,7,11,11,8,0,0,16,40, + 16,56,56,108,108,108,254,198,198,9,8,16,10,0,0,63, + 128,60,0,108,0,111,128,108,0,252,0,204,0,207,128,7, + 10,10,8,0,254,60,102,194,192,192,194,102,60,16,48,5, + 11,11,6,0,0,64,32,0,248,192,192,248,192,192,192,248, + 5,11,11,6,0,0,16,32,0,248,192,192,248,192,192,192, + 248,5,11,11,6,0,0,32,80,0,248,192,192,248,192,192, + 192,248,5,10,10,6,0,0,80,0,248,192,192,248,192,192, + 192,248,2,11,11,3,0,0,128,64,0,192,192,192,192,192, + 192,192,192,2,11,11,3,0,0,64,128,0,192,192,192,192, + 192,192,192,192,3,11,11,3,255,0,64,160,0,96,96,96, + 96,96,96,96,96,4,10,10,3,255,0,144,0,96,96,96, + 96,96,96,96,96,7,8,8,7,255,0,120,108,102,246,102, + 102,108,120,7,11,11,8,0,0,20,40,0,198,230,230,214, + 214,206,206,198,7,11,11,8,0,0,16,8,0,56,108,198, + 198,198,198,108,56,7,11,11,8,0,0,8,16,0,56,108, + 198,198,198,198,108,56,7,11,11,8,0,0,16,40,0,56, + 108,198,198,198,198,108,56,7,11,11,8,0,0,20,40,0, + 56,108,198,198,198,198,108,56,7,10,10,8,0,0,40,0, + 56,108,198,198,198,198,108,56,6,5,5,6,0,1,204,120, + 48,120,204,7,8,8,8,0,0,58,108,206,214,214,230,108, + 184,6,11,11,7,0,0,32,16,0,204,204,204,204,204,204, + 204,120,6,11,11,7,0,0,8,16,0,204,204,204,204,204, + 204,204,120,6,11,11,7,0,0,32,80,0,204,204,204,204, + 204,204,204,120,6,10,10,7,0,0,72,0,204,204,204,204, + 204,204,204,120,8,11,11,9,0,0,4,8,0,195,195,102, + 102,60,24,24,24,6,8,8,7,0,0,192,248,204,204,204, + 248,192,192,5,8,8,6,0,0,112,200,200,208,200,200,200, + 208,6,9,9,6,0,0,32,16,0,112,152,120,216,216,108, + 6,9,9,6,0,0,16,32,0,112,152,120,216,216,108,6, + 9,9,6,0,0,32,80,0,112,152,120,216,216,108,6,9, + 9,6,0,0,40,80,0,112,152,120,216,216,108,6,8,8, + 6,0,0,80,0,112,152,120,216,216,108,6,9,9,6,0, + 0,32,80,32,112,152,120,216,216,108,8,6,6,9,0,0, + 126,155,127,216,219,110,4,8,8,5,0,254,112,208,192,192, + 208,112,32,96,5,9,9,6,0,0,64,32,0,112,216,248, + 192,216,112,5,9,9,6,0,0,16,32,0,112,216,248,192, + 216,112,5,9,9,6,0,0,32,80,0,112,216,248,192,216, + 112,5,8,8,6,0,0,80,0,112,216,248,192,216,112,2, + 9,9,3,0,0,128,64,0,192,192,192,192,192,192,2,9, + 9,3,0,0,64,128,0,192,192,192,192,192,192,3,9,9, + 3,0,0,64,160,0,192,192,192,192,192,192,3,8,8,3, + 0,0,160,0,192,192,192,192,192,192,5,9,9,6,0,0, + 80,96,160,112,216,216,216,216,112,5,9,9,6,0,0,80, + 160,0,176,216,216,216,216,216,5,9,9,6,0,0,64,32, + 0,112,216,216,216,216,112,5,9,9,6,0,0,16,32,0, + 112,216,216,216,216,112,5,9,9,6,0,0,32,80,0,112, + 216,216,216,216,112,5,9,9,6,0,0,80,160,0,112,216, + 216,216,216,112,5,8,8,6,0,0,80,0,112,216,216,216, + 216,112,6,5,5,6,0,1,48,0,252,0,48,7,6,6, + 6,255,0,58,108,124,108,108,184,5,9,9,6,0,0,64, + 32,0,216,216,216,216,216,104,5,9,9,6,0,0,16,32, + 0,216,216,216,216,216,104,5,9,9,6,0,0,32,80,0, + 216,216,216,216,216,104,5,8,8,6,0,0,80,0,216,216, + 216,216,216,104,5,11,11,6,0,254,16,32,0,216,216,216, + 216,120,48,48,96,5,10,10,6,0,254,192,192,240,216,200, + 200,216,240,192,192,5,10,10,6,0,254,80,0,216,216,216, + 216,120,48,48,96}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--11-80-100-100-P-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=10 h=10 x= 1 y= 7 dx=11 dy= 0 ascent= 9 len=18 + Font Bounding box w=12 h=19 x=-1 y=-5 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB08r[1287] U8G_SECTION(".progmem.u8g_font_helvB08r") = { + 0,12,19,255,251,8,1,182,3,122,32,127,254,9,254,8, + 254,0,0,0,3,0,1,2,8,8,4,1,0,192,192,192, + 192,128,128,0,192,3,3,3,5,1,5,160,160,160,7,7, + 7,6,255,0,40,40,126,40,252,80,80,5,10,10,6,0, + 255,32,112,168,224,112,56,40,168,112,32,7,8,8,8,0, + 0,98,180,104,16,16,44,86,140,7,8,8,8,0,0,112, + 216,216,112,222,204,220,118,1,3,3,3,1,5,128,128,128, + 3,10,10,4,0,254,32,96,64,192,192,192,192,64,96,32, + 3,10,10,4,0,254,128,192,64,96,96,96,96,64,192,128, + 3,3,3,4,0,5,160,64,160,6,5,5,6,0,1,48, + 48,252,48,48,2,4,4,3,0,254,192,192,64,128,4,1, + 1,5,0,3,240,2,2,2,3,0,0,192,192,4,8,8, + 4,0,0,16,16,32,32,64,64,128,128,5,8,8,6,0, + 0,112,216,216,216,216,216,216,112,3,8,8,6,1,0,96, + 224,96,96,96,96,96,96,5,8,8,6,0,0,112,216,24, + 24,48,96,192,248,5,8,8,6,0,0,112,216,24,48,24, + 24,216,112,6,8,8,6,0,0,8,24,56,88,152,252,24, + 24,5,8,8,6,0,0,248,192,192,240,24,152,216,112,5, + 8,8,6,0,0,112,216,192,240,216,216,216,112,5,8,8, + 6,0,0,248,24,24,48,48,96,96,96,5,8,8,6,0, + 0,112,216,216,112,216,216,216,112,5,8,8,6,0,0,112, + 216,216,216,120,24,216,112,2,6,6,3,0,0,192,192,0, + 0,192,192,2,8,8,3,0,254,192,192,0,0,192,192,64, + 128,4,5,5,5,0,1,48,96,192,96,48,5,3,3,6, + 0,2,248,0,248,4,5,5,5,0,1,192,96,48,96,192, + 5,8,8,6,0,0,112,216,24,48,96,96,0,96,10,9, + 18,11,0,255,31,0,96,128,77,64,146,64,162,64,164,128, + 155,0,64,0,62,0,7,8,8,8,0,0,56,56,108,108, + 108,254,198,198,6,8,8,7,0,0,248,204,204,248,204,204, + 204,248,7,8,8,8,0,0,60,102,194,192,192,194,102,60, + 6,8,8,7,0,0,240,216,204,204,204,204,216,240,5,8, + 8,6,0,0,248,192,192,248,192,192,192,248,5,8,8,6, + 0,0,248,192,192,240,192,192,192,192,7,8,8,8,0,0, + 60,102,194,192,206,198,102,58,6,8,8,7,0,0,204,204, + 204,252,204,204,204,204,2,8,8,3,0,0,192,192,192,192, + 192,192,192,192,5,8,8,6,0,0,24,24,24,24,24,24, + 216,112,7,8,8,7,0,0,204,216,240,224,240,216,204,198, + 5,8,8,6,0,0,192,192,192,192,192,192,192,248,9,8, + 16,10,0,0,193,128,227,128,227,128,247,128,213,128,221,128, + 201,128,201,128,7,8,8,8,0,0,198,230,230,214,214,206, + 206,198,7,8,8,8,0,0,56,108,198,198,198,198,108,56, + 6,8,8,7,0,0,248,204,204,204,248,192,192,192,7,9, + 9,8,0,255,56,108,198,198,198,214,108,60,2,6,8,8, + 7,0,0,248,204,204,204,248,204,204,204,6,8,8,7,0, + 0,120,204,224,120,28,140,204,120,6,8,8,7,0,0,252, + 48,48,48,48,48,48,48,6,8,8,7,0,0,204,204,204, + 204,204,204,204,120,7,8,8,8,0,0,198,198,108,108,108, + 56,56,16,10,8,16,11,0,0,204,192,204,192,204,192,109, + 128,109,128,127,128,51,0,51,0,7,8,8,8,0,0,198, + 198,108,56,56,108,198,198,8,8,8,9,0,0,195,195,102, + 102,60,24,24,24,6,8,8,7,0,0,252,12,24,48,112, + 96,192,252,3,10,10,4,0,254,224,192,192,192,192,192,192, + 192,192,224,4,8,8,4,0,0,128,128,64,64,32,32,16, + 16,3,10,10,4,0,254,224,96,96,96,96,96,96,96,96, + 224,4,4,4,5,0,4,96,240,144,144,6,1,1,6,0, + 254,252,2,2,2,3,0,7,128,64,6,6,6,6,0,0, + 112,152,120,216,216,108,5,8,8,6,0,0,192,192,240,216, + 216,216,216,240,4,6,6,5,0,0,112,208,192,192,208,112, + 5,8,8,6,0,0,24,24,120,216,216,216,216,120,5,6, + 6,6,0,0,112,216,248,192,216,112,5,8,8,4,255,0, + 56,96,240,96,96,96,96,96,5,8,8,6,0,254,104,216, + 216,216,216,120,24,112,5,8,8,6,0,0,192,192,240,216, + 216,216,216,216,2,8,8,3,0,0,192,0,192,192,192,192, + 192,192,3,10,10,3,255,254,96,0,96,96,96,96,96,96, + 96,192,6,8,8,6,0,0,192,192,216,240,224,240,216,204, + 2,8,8,3,0,0,192,192,192,192,192,192,192,192,8,6, + 6,9,0,0,182,219,219,219,219,219,5,6,6,6,0,0, + 176,216,216,216,216,216,5,6,6,6,0,0,112,216,216,216, + 216,112,5,8,8,6,0,254,176,216,216,216,216,240,192,192, + 5,8,8,6,0,254,104,216,216,216,216,120,24,24,4,6, + 6,4,0,0,176,224,192,192,192,192,5,6,6,6,0,0, + 112,216,112,24,216,112,4,8,8,4,255,0,96,96,240,96, + 96,96,96,48,5,6,6,6,0,0,216,216,216,216,216,104, + 5,6,6,6,0,0,216,216,216,80,112,32,7,6,6,8, + 0,0,214,214,214,108,108,108,6,6,6,7,0,0,204,120, + 48,120,204,204,5,8,8,6,0,254,216,216,216,216,120,48, + 48,96,5,6,6,6,0,0,248,24,48,96,192,248,4,10, + 10,5,0,254,48,96,96,96,192,96,96,96,96,48,1,10, + 10,3,1,254,128,128,128,128,128,128,128,128,128,128,4,10, + 10,5,0,254,192,96,96,96,48,96,96,96,96,192,5,2, + 2,6,0,3,104,176,255}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--14-100-100-100-P-82-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=14 h=14 x= 2 y= 9 dx=15 dy= 0 ascent=14 len=28 + Font Bounding box w=17 h=23 x=-1 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB10[3692] U8G_SECTION(".progmem.u8g_font_helvB10") = { + 0,17,23,255,250,11,2,27,4,205,32,255,253,14,253,11, + 253,0,0,0,4,0,1,2,11,11,4,1,0,192,192,192, + 192,192,192,128,128,0,192,192,5,3,3,7,1,8,216,216, + 144,9,10,20,9,0,0,27,0,27,0,27,0,127,128,54, + 0,54,0,255,0,108,0,108,0,108,0,7,14,14,8,0, + 254,16,124,214,214,208,240,120,28,22,214,214,124,16,16,12, + 11,22,13,0,0,120,64,204,192,205,128,121,0,3,0,6, + 0,4,0,13,224,11,48,27,48,17,224,9,10,20,11,1, + 0,56,0,108,0,108,0,56,0,115,0,251,0,206,0,198, + 0,207,0,125,128,2,3,3,4,1,8,192,192,128,4,14, + 14,5,1,253,48,96,96,192,192,192,192,192,192,192,192,96, + 96,48,4,14,14,5,0,253,192,96,96,48,48,48,48,48, + 48,48,48,96,96,192,5,4,4,6,0,7,32,248,112,216, + 8,7,7,9,0,1,24,24,24,255,24,24,24,3,3,3, + 4,0,255,96,96,192,3,1,1,4,0,4,224,2,2,2, + 4,1,0,192,192,4,11,11,4,0,0,16,16,48,32,32, + 96,64,64,192,128,128,7,11,11,8,0,0,56,108,198,198, + 198,198,198,198,198,108,56,4,11,11,8,1,0,48,240,48, + 48,48,48,48,48,48,48,48,7,11,11,8,0,0,124,198, + 198,6,14,12,24,48,96,192,254,7,11,11,8,0,0,124, + 198,198,6,6,60,6,6,198,198,124,8,11,11,8,0,0, + 6,14,30,54,102,198,198,255,6,6,6,7,11,11,8,0, + 0,126,96,96,192,252,14,6,6,198,204,120,7,11,11,8, + 0,0,60,102,102,192,220,230,198,198,198,198,124,7,11,11, + 8,0,0,254,6,12,12,24,24,48,48,96,96,96,7,11, + 11,8,0,0,124,198,198,198,198,124,198,198,198,198,124,7, + 11,11,8,0,0,124,198,198,198,198,198,126,6,198,204,120, + 2,8,8,5,2,0,192,192,0,0,0,0,192,192,3,9, + 9,5,1,255,96,96,0,0,0,0,96,96,192,6,5,5, + 8,1,2,28,112,192,112,28,7,3,3,9,1,3,254,0, + 254,6,5,5,8,1,2,224,56,12,56,224,7,11,11,9, + 1,0,124,198,198,6,12,24,48,48,0,48,48,13,12,24, + 14,0,255,15,128,56,224,112,112,102,176,205,152,217,152,219, + 24,219,48,206,224,96,0,49,128,31,0,10,11,22,10,0, + 0,12,0,12,0,30,0,18,0,51,0,51,0,97,128,127, + 128,97,128,192,192,192,192,8,11,11,10,1,0,254,199,195, + 195,198,252,198,195,195,199,254,9,11,22,11,1,0,31,0, + 123,128,96,128,192,0,192,0,192,0,192,0,192,0,96,128, + 123,128,31,0,9,11,22,11,1,0,252,0,199,0,195,0, + 193,128,193,128,193,128,193,128,193,128,195,0,199,0,252,0, + 7,11,11,9,1,0,254,192,192,192,192,254,192,192,192,192, + 254,7,11,11,9,1,0,254,192,192,192,192,252,192,192,192, + 192,192,9,11,22,11,1,0,31,0,123,128,96,128,192,0, + 192,0,199,128,193,128,193,128,97,128,123,128,30,128,8,11, + 11,10,1,0,195,195,195,195,195,255,195,195,195,195,195,2, + 11,11,4,1,0,192,192,192,192,192,192,192,192,192,192,192, + 7,11,11,8,0,0,6,6,6,6,6,6,6,198,198,238, + 124,9,11,22,10,1,0,195,0,198,0,204,0,216,0,240, + 0,240,0,216,0,204,0,198,0,195,0,193,128,7,11,11, + 8,1,0,192,192,192,192,192,192,192,192,192,192,254,11,11, + 22,13,1,0,192,96,192,96,224,224,224,224,241,224,209,96, + 209,96,219,96,202,96,206,96,196,96,9,11,22,11,1,0, + 193,128,225,128,225,128,209,128,217,128,201,128,205,128,197,128, + 195,128,195,128,193,128,10,11,22,12,1,0,30,0,115,128, + 97,128,192,192,192,192,192,192,192,192,192,192,97,128,115,128, + 30,0,8,11,11,10,1,0,254,199,195,195,199,254,192,192, + 192,192,192,10,11,22,12,1,0,30,0,115,128,97,128,192, + 192,192,192,192,192,192,192,198,192,99,128,115,128,30,192,9, + 11,22,11,1,0,254,0,199,0,195,0,195,0,198,0,254, + 0,199,0,195,0,195,0,195,0,193,128,8,11,11,10,1, + 0,126,231,195,224,120,30,7,3,195,238,124,8,11,11,8, + 0,0,255,24,24,24,24,24,24,24,24,24,24,9,11,22, + 11,1,0,193,128,193,128,193,128,193,128,193,128,193,128,193, + 128,193,128,193,128,99,0,62,0,10,11,22,10,0,0,192, + 192,192,192,97,128,97,128,115,128,51,0,51,0,30,0,30, + 0,12,0,12,0,14,11,22,14,0,0,195,12,195,12,195, + 12,103,152,100,152,100,152,108,216,44,208,56,112,24,96,24, + 96,9,11,22,9,0,0,193,128,193,128,99,0,54,0,28, + 0,28,0,54,0,99,0,99,0,193,128,193,128,10,11,22, + 10,0,0,192,192,97,128,97,128,51,0,51,0,30,0,30, + 0,12,0,12,0,12,0,12,0,8,11,11,9,0,0,255, + 3,6,12,28,24,48,112,96,192,255,4,14,14,5,1,253, + 240,192,192,192,192,192,192,192,192,192,192,192,192,240,4,11, + 11,4,0,0,128,128,192,64,64,96,32,32,48,16,16,4, + 14,14,5,0,253,240,48,48,48,48,48,48,48,48,48,48, + 48,48,240,6,5,5,8,1,6,48,120,72,204,204,8,1, + 1,8,0,253,255,3,2,2,5,1,9,192,96,7,8,8, + 8,1,0,120,204,12,124,204,204,220,118,7,11,11,9,1, + 0,192,192,192,216,236,198,198,198,198,236,216,6,8,8,8, + 1,0,56,108,204,192,192,204,108,56,7,11,11,9,1,0, + 6,6,6,54,110,198,198,198,198,110,54,6,8,8,8,1, + 0,120,204,204,252,192,192,236,120,5,11,11,4,0,0,56, + 96,96,240,96,96,96,96,96,96,96,7,11,11,9,1,253, + 58,110,198,198,198,198,110,54,6,206,124,7,11,11,9,1, + 0,192,192,192,220,238,198,198,198,198,198,198,2,11,11,4, + 1,0,192,192,0,192,192,192,192,192,192,192,192,3,14,14, + 4,0,253,96,96,0,96,96,96,96,96,96,96,96,96,224, + 192,6,11,11,8,1,0,192,192,192,204,216,240,240,216,216, + 204,204,2,11,11,4,1,0,192,192,192,192,192,192,192,192, + 192,192,192,10,8,16,12,1,0,219,128,238,192,204,192,204, + 192,204,192,204,192,204,192,204,192,7,8,8,9,1,0,220, + 238,198,198,198,198,198,198,7,8,8,9,1,0,56,108,198, + 198,198,198,108,56,7,11,11,9,1,253,216,236,198,198,198, + 198,236,216,192,192,192,7,11,11,9,1,253,54,110,198,198, + 198,198,110,54,6,6,6,5,8,8,6,1,0,216,248,192, + 192,192,192,192,192,6,8,8,8,1,0,120,204,224,120,28, + 12,236,120,5,10,10,5,0,0,96,96,248,96,96,96,96, + 96,104,48,7,8,8,9,1,0,198,198,198,198,198,198,238, + 118,8,8,8,8,0,0,195,195,102,102,36,60,24,24,10, + 8,16,10,0,0,204,192,204,192,204,192,109,128,109,128,51, + 0,51,0,51,0,7,8,8,7,0,0,198,198,108,56,56, + 108,198,198,8,11,11,8,0,253,195,195,102,102,36,60,24, + 24,24,48,112,6,8,8,6,0,0,252,12,24,48,48,96, + 192,252,5,14,14,6,0,253,24,48,48,48,48,96,192,96, + 48,48,48,48,48,24,1,14,14,4,2,253,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,5,14,14,6,1,253, + 192,96,96,96,96,48,24,48,96,96,96,96,96,192,7,3, + 3,9,1,3,114,222,140,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,4,0,1,2,11, + 11,4,1,253,192,192,0,64,64,192,192,192,192,192,192,7, + 10,10,8,0,255,4,60,110,200,208,208,230,102,124,64,8, + 11,11,8,0,0,60,102,102,96,252,48,48,48,96,251,222, + 7,7,7,8,0,2,130,124,108,108,108,124,130,8,11,11, + 9,0,0,195,195,195,102,102,60,126,24,126,24,24,1,14, + 14,4,2,253,128,128,128,128,128,128,0,0,128,128,128,128, + 128,128,6,14,14,8,1,253,120,204,204,224,120,220,204,204, + 236,120,28,204,204,120,5,2,2,5,0,9,216,216,10,11, + 22,12,1,0,30,0,97,128,76,128,210,192,144,64,144,64, + 144,64,146,64,76,128,97,128,30,0,5,7,7,6,0,4, + 112,144,112,208,248,0,248,7,5,5,9,1,2,54,108,216, + 108,54,7,4,4,9,1,2,254,254,2,2,3,1,1,4, + 0,4,224,10,11,22,12,1,0,30,0,97,128,92,128,146, + 64,146,64,156,64,146,64,146,64,82,128,97,128,30,0,5, + 1,1,5,0,9,248,4,4,4,6,1,7,96,144,144,96, + 8,9,9,9,0,0,24,24,24,255,24,24,24,0,255,4, + 6,6,5,0,5,96,176,48,96,192,240,4,6,6,5,0, + 5,96,176,96,48,176,96,3,2,2,5,1,9,96,192,7, + 11,11,9,1,253,198,198,198,198,198,198,238,246,192,192,192, + 8,14,14,8,0,253,63,122,250,250,250,122,58,10,10,10, + 10,10,10,10,2,2,2,4,1,3,192,192,5,3,3,5, + 0,253,24,216,112,3,6,6,4,0,5,96,224,96,96,96, + 96,5,7,7,6,0,4,112,216,216,216,112,0,248,7,5, + 5,9,1,2,216,108,54,108,216,12,11,22,12,0,0,97, + 128,225,128,99,0,99,0,102,0,102,32,6,96,12,224,13, + 96,25,240,24,96,11,11,22,12,0,0,97,128,225,128,99, + 0,99,0,102,0,102,192,7,96,12,96,12,192,25,128,25, + 224,12,11,22,12,0,0,97,128,177,128,99,0,51,0,182, + 0,102,32,6,96,12,224,13,96,25,240,24,96,7,11,11, + 9,1,253,24,24,0,24,24,48,96,192,198,198,124,10,14, + 28,10,0,0,24,0,12,0,0,0,12,0,12,0,30,0, + 18,0,51,0,51,0,97,128,127,128,97,128,192,192,192,192, + 10,14,28,10,0,0,6,0,12,0,0,0,12,0,12,0, + 30,0,18,0,51,0,51,0,97,128,127,128,97,128,192,192, + 192,192,10,14,28,10,0,0,14,0,27,0,0,0,12,0, + 12,0,30,0,18,0,51,0,51,0,97,128,127,128,97,128, + 192,192,192,192,10,14,28,10,0,0,13,0,22,0,0,0, + 12,0,12,0,30,0,18,0,51,0,51,0,97,128,127,128, + 97,128,192,192,192,192,10,14,28,10,0,0,51,0,51,0, + 0,0,12,0,12,0,30,0,18,0,51,0,51,0,97,128, + 127,128,97,128,192,192,192,192,10,14,28,10,0,0,12,0, + 18,0,12,0,12,0,12,0,30,0,18,0,51,0,51,0, + 97,128,127,128,97,128,192,192,192,192,14,11,22,15,0,0, + 15,252,15,0,27,0,19,0,51,0,51,248,99,0,127,0, + 99,0,195,0,195,252,9,14,28,11,1,253,31,0,123,128, + 96,128,192,0,192,0,192,0,192,0,192,0,96,128,123,128, + 31,0,6,0,54,0,28,0,7,14,14,9,1,0,48,24, + 0,254,192,192,192,192,254,192,192,192,192,254,7,14,14,9, + 1,0,12,24,0,254,192,192,192,192,254,192,192,192,192,254, + 7,14,14,9,1,0,28,54,0,254,192,192,192,192,254,192, + 192,192,192,254,7,14,14,9,1,0,108,108,0,254,192,192, + 192,192,254,192,192,192,192,254,3,14,14,4,0,0,192,96, + 0,96,96,96,96,96,96,96,96,96,96,96,3,14,14,4, + 1,0,96,192,0,192,192,192,192,192,192,192,192,192,192,192, + 5,14,14,4,0,0,112,216,0,96,96,96,96,96,96,96, + 96,96,96,96,5,14,14,4,0,0,216,216,0,96,96,96, + 96,96,96,96,96,96,96,96,10,11,22,11,0,0,126,0, + 99,128,97,128,96,192,96,192,248,192,96,192,96,192,97,128, + 99,128,126,0,9,14,28,11,1,0,26,0,44,0,0,0, + 193,128,225,128,225,128,209,128,217,128,201,128,205,128,197,128, + 195,128,195,128,193,128,10,14,28,12,1,0,24,0,12,0, + 0,0,30,0,115,128,97,128,192,192,192,192,192,192,192,192, + 192,192,97,128,115,128,30,0,10,14,28,12,1,0,6,0, + 12,0,0,0,30,0,115,128,97,128,192,192,192,192,192,192, + 192,192,192,192,97,128,115,128,30,0,10,14,28,12,1,0, + 14,0,27,0,0,0,30,0,115,128,97,128,192,192,192,192, + 192,192,192,192,192,192,97,128,115,128,30,0,10,14,28,12, + 1,0,13,0,22,0,0,0,30,0,115,128,97,128,192,192, + 192,192,192,192,192,192,192,192,97,128,115,128,30,0,10,14, + 28,12,1,0,51,0,51,0,0,0,30,0,115,128,97,128, + 192,192,192,192,192,192,192,192,192,192,97,128,115,128,30,0, + 8,7,7,9,0,1,195,102,60,24,60,102,195,12,11,22, + 12,0,0,15,48,57,224,48,192,97,224,99,96,102,96,108, + 96,120,96,48,192,121,192,207,0,9,14,28,11,1,0,24, + 0,12,0,0,0,193,128,193,128,193,128,193,128,193,128,193, + 128,193,128,193,128,193,128,99,0,62,0,9,14,28,11,1, + 0,6,0,12,0,0,0,193,128,193,128,193,128,193,128,193, + 128,193,128,193,128,193,128,193,128,99,0,62,0,9,14,28, + 11,1,0,28,0,54,0,0,0,193,128,193,128,193,128,193, + 128,193,128,193,128,193,128,193,128,193,128,99,0,62,0,9, + 14,28,11,1,0,99,0,99,0,0,0,193,128,193,128,193, + 128,193,128,193,128,193,128,193,128,193,128,193,128,99,0,62, + 0,10,14,28,10,0,0,6,0,12,0,0,0,192,192,97, + 128,97,128,51,0,51,0,30,0,30,0,12,0,12,0,12, + 0,12,0,8,11,11,10,1,0,192,192,254,199,195,195,199, + 254,192,192,192,6,11,11,8,1,0,120,204,204,204,216,216, + 204,204,204,204,216,7,11,11,8,1,0,48,24,0,120,204, + 12,124,204,204,220,118,7,11,11,8,1,0,24,48,0,120, + 204,12,124,204,204,220,118,7,11,11,8,1,0,56,108,0, + 120,204,12,124,204,204,220,118,7,11,11,8,1,0,52,88, + 0,120,204,12,124,204,204,220,118,7,11,11,8,1,0,108, + 108,0,120,204,12,124,204,204,220,118,7,11,11,8,1,0, + 48,72,48,120,204,12,124,204,204,220,118,11,8,16,13,1, + 0,123,192,206,96,12,96,127,224,204,0,204,0,222,96,119, + 192,7,11,11,9,1,253,60,102,198,192,192,198,102,60,24, + 88,112,6,11,11,8,1,0,96,48,0,120,204,204,252,192, + 192,236,120,6,11,11,8,1,0,24,48,0,120,204,204,252, + 192,192,236,120,6,11,11,8,1,0,56,108,0,120,204,204, + 252,192,192,236,120,6,11,11,8,1,0,108,108,0,120,204, + 204,252,192,192,236,120,3,11,11,4,0,0,192,96,0,96, + 96,96,96,96,96,96,96,3,11,11,4,1,0,96,192,0, + 192,192,192,192,192,192,192,192,5,11,11,4,0,0,112,216, + 0,96,96,96,96,96,96,96,96,5,11,11,4,0,0,216, + 216,0,96,96,96,96,96,96,96,96,7,11,11,9,1,0, + 108,56,72,60,108,198,198,198,198,108,56,7,11,11,9,1, + 0,52,88,0,220,238,198,198,198,198,198,198,7,11,11,9, + 1,0,48,24,0,56,108,198,198,198,198,108,56,7,11,11, + 9,1,0,24,48,0,56,108,198,198,198,198,108,56,7,11, + 11,9,1,0,56,108,0,56,108,198,198,198,198,108,56,7, + 11,11,9,1,0,52,88,0,56,108,198,198,198,198,108,56, + 7,11,11,9,1,0,108,108,0,56,108,198,198,198,198,108, + 56,8,7,7,9,0,1,24,24,0,255,0,24,24,7,8, + 8,9,1,0,58,108,206,214,214,230,108,184,7,11,11,9, + 1,0,48,24,0,198,198,198,198,198,198,238,118,7,11,11, + 9,1,0,12,24,0,198,198,198,198,198,198,238,118,7,11, + 11,9,1,0,56,108,0,198,198,198,198,198,198,238,118,7, + 11,11,9,1,0,108,108,0,198,198,198,198,198,198,238,118, + 8,14,14,8,0,253,12,24,0,195,195,102,102,36,60,24, + 24,24,48,112,7,14,14,9,1,253,192,192,192,216,236,198, + 198,198,198,236,216,192,192,192,8,14,14,8,0,253,54,54, + 0,195,195,102,102,36,60,24,24,24,48,112}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--14-100-100-100-P-82-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=14 h=14 x= 2 y= 9 dx=14 dy= 0 ascent=12 len=24 + Font Bounding box w=17 h=23 x=-1 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB10r[1720] U8G_SECTION(".progmem.u8g_font_helvB10r") = { + 0,17,23,255,250,11,2,27,4,205,32,127,253,12,253,11, + 253,0,0,0,4,0,1,2,11,11,4,1,0,192,192,192, + 192,192,192,128,128,0,192,192,5,3,3,7,1,8,216,216, + 144,9,10,20,9,0,0,27,0,27,0,27,0,127,128,54, + 0,54,0,255,0,108,0,108,0,108,0,7,14,14,8,0, + 254,16,124,214,214,208,240,120,28,22,214,214,124,16,16,12, + 11,22,13,0,0,120,64,204,192,205,128,121,0,3,0,6, + 0,4,0,13,224,11,48,27,48,17,224,9,10,20,11,1, + 0,56,0,108,0,108,0,56,0,115,0,251,0,206,0,198, + 0,207,0,125,128,2,3,3,4,1,8,192,192,128,4,14, + 14,5,1,253,48,96,96,192,192,192,192,192,192,192,192,96, + 96,48,4,14,14,5,0,253,192,96,96,48,48,48,48,48, + 48,48,48,96,96,192,5,4,4,6,0,7,32,248,112,216, + 8,7,7,9,0,1,24,24,24,255,24,24,24,3,3,3, + 4,0,255,96,96,192,3,1,1,4,0,4,224,2,2,2, + 4,1,0,192,192,4,11,11,4,0,0,16,16,48,32,32, + 96,64,64,192,128,128,7,11,11,8,0,0,56,108,198,198, + 198,198,198,198,198,108,56,4,11,11,8,1,0,48,240,48, + 48,48,48,48,48,48,48,48,7,11,11,8,0,0,124,198, + 198,6,14,12,24,48,96,192,254,7,11,11,8,0,0,124, + 198,198,6,6,60,6,6,198,198,124,8,11,11,8,0,0, + 6,14,30,54,102,198,198,255,6,6,6,7,11,11,8,0, + 0,126,96,96,192,252,14,6,6,198,204,120,7,11,11,8, + 0,0,60,102,102,192,220,230,198,198,198,198,124,7,11,11, + 8,0,0,254,6,12,12,24,24,48,48,96,96,96,7,11, + 11,8,0,0,124,198,198,198,198,124,198,198,198,198,124,7, + 11,11,8,0,0,124,198,198,198,198,198,126,6,198,204,120, + 2,8,8,5,2,0,192,192,0,0,0,0,192,192,3,9, + 9,5,1,255,96,96,0,0,0,0,96,96,192,6,5,5, + 8,1,2,28,112,192,112,28,7,3,3,9,1,3,254,0, + 254,6,5,5,8,1,2,224,56,12,56,224,7,11,11,9, + 1,0,124,198,198,6,12,24,48,48,0,48,48,13,12,24, + 14,0,255,15,128,56,224,112,112,102,176,205,152,217,152,219, + 24,219,48,206,224,96,0,49,128,31,0,10,11,22,10,0, + 0,12,0,12,0,30,0,18,0,51,0,51,0,97,128,127, + 128,97,128,192,192,192,192,8,11,11,10,1,0,254,199,195, + 195,198,252,198,195,195,199,254,9,11,22,11,1,0,31,0, + 123,128,96,128,192,0,192,0,192,0,192,0,192,0,96,128, + 123,128,31,0,9,11,22,11,1,0,252,0,199,0,195,0, + 193,128,193,128,193,128,193,128,193,128,195,0,199,0,252,0, + 7,11,11,9,1,0,254,192,192,192,192,254,192,192,192,192, + 254,7,11,11,9,1,0,254,192,192,192,192,252,192,192,192, + 192,192,9,11,22,11,1,0,31,0,123,128,96,128,192,0, + 192,0,199,128,193,128,193,128,97,128,123,128,30,128,8,11, + 11,10,1,0,195,195,195,195,195,255,195,195,195,195,195,2, + 11,11,4,1,0,192,192,192,192,192,192,192,192,192,192,192, + 7,11,11,8,0,0,6,6,6,6,6,6,6,198,198,238, + 124,9,11,22,10,1,0,195,0,198,0,204,0,216,0,240, + 0,240,0,216,0,204,0,198,0,195,0,193,128,7,11,11, + 8,1,0,192,192,192,192,192,192,192,192,192,192,254,11,11, + 22,13,1,0,192,96,192,96,224,224,224,224,241,224,209,96, + 209,96,219,96,202,96,206,96,196,96,9,11,22,11,1,0, + 193,128,225,128,225,128,209,128,217,128,201,128,205,128,197,128, + 195,128,195,128,193,128,10,11,22,12,1,0,30,0,115,128, + 97,128,192,192,192,192,192,192,192,192,192,192,97,128,115,128, + 30,0,8,11,11,10,1,0,254,199,195,195,199,254,192,192, + 192,192,192,10,11,22,12,1,0,30,0,115,128,97,128,192, + 192,192,192,192,192,192,192,198,192,99,128,115,128,30,192,9, + 11,22,11,1,0,254,0,199,0,195,0,195,0,198,0,254, + 0,199,0,195,0,195,0,195,0,193,128,8,11,11,10,1, + 0,126,231,195,224,120,30,7,3,195,238,124,8,11,11,8, + 0,0,255,24,24,24,24,24,24,24,24,24,24,9,11,22, + 11,1,0,193,128,193,128,193,128,193,128,193,128,193,128,193, + 128,193,128,193,128,99,0,62,0,10,11,22,10,0,0,192, + 192,192,192,97,128,97,128,115,128,51,0,51,0,30,0,30, + 0,12,0,12,0,14,11,22,14,0,0,195,12,195,12,195, + 12,103,152,100,152,100,152,108,216,44,208,56,112,24,96,24, + 96,9,11,22,9,0,0,193,128,193,128,99,0,54,0,28, + 0,28,0,54,0,99,0,99,0,193,128,193,128,10,11,22, + 10,0,0,192,192,97,128,97,128,51,0,51,0,30,0,30, + 0,12,0,12,0,12,0,12,0,8,11,11,9,0,0,255, + 3,6,12,28,24,48,112,96,192,255,4,14,14,5,1,253, + 240,192,192,192,192,192,192,192,192,192,192,192,192,240,4,11, + 11,4,0,0,128,128,192,64,64,96,32,32,48,16,16,4, + 14,14,5,0,253,240,48,48,48,48,48,48,48,48,48,48, + 48,48,240,6,5,5,8,1,6,48,120,72,204,204,8,1, + 1,8,0,253,255,3,2,2,5,1,9,192,96,7,8,8, + 8,1,0,120,204,12,124,204,204,220,118,7,11,11,9,1, + 0,192,192,192,216,236,198,198,198,198,236,216,6,8,8,8, + 1,0,56,108,204,192,192,204,108,56,7,11,11,9,1,0, + 6,6,6,54,110,198,198,198,198,110,54,6,8,8,8,1, + 0,120,204,204,252,192,192,236,120,5,11,11,4,0,0,56, + 96,96,240,96,96,96,96,96,96,96,7,11,11,9,1,253, + 58,110,198,198,198,198,110,54,6,206,124,7,11,11,9,1, + 0,192,192,192,220,238,198,198,198,198,198,198,2,11,11,4, + 1,0,192,192,0,192,192,192,192,192,192,192,192,3,14,14, + 4,0,253,96,96,0,96,96,96,96,96,96,96,96,96,224, + 192,6,11,11,8,1,0,192,192,192,204,216,240,240,216,216, + 204,204,2,11,11,4,1,0,192,192,192,192,192,192,192,192, + 192,192,192,10,8,16,12,1,0,219,128,238,192,204,192,204, + 192,204,192,204,192,204,192,204,192,7,8,8,9,1,0,220, + 238,198,198,198,198,198,198,7,8,8,9,1,0,56,108,198, + 198,198,198,108,56,7,11,11,9,1,253,216,236,198,198,198, + 198,236,216,192,192,192,7,11,11,9,1,253,54,110,198,198, + 198,198,110,54,6,6,6,5,8,8,6,1,0,216,248,192, + 192,192,192,192,192,6,8,8,8,1,0,120,204,224,120,28, + 12,236,120,5,10,10,5,0,0,96,96,248,96,96,96,96, + 96,104,48,7,8,8,9,1,0,198,198,198,198,198,198,238, + 118,8,8,8,8,0,0,195,195,102,102,36,60,24,24,10, + 8,16,10,0,0,204,192,204,192,204,192,109,128,109,128,51, + 0,51,0,51,0,7,8,8,7,0,0,198,198,108,56,56, + 108,198,198,8,11,11,8,0,253,195,195,102,102,36,60,24, + 24,24,48,112,6,8,8,6,0,0,252,12,24,48,48,96, + 192,252,5,14,14,6,0,253,24,48,48,48,48,96,192,96, + 48,48,48,48,48,24,1,14,14,4,2,253,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,5,14,14,6,1,253, + 192,96,96,96,96,48,24,48,96,96,96,96,96,192,7,3, + 3,9,1,3,114,222,140,255}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--17-120-100-100-P-92-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=14 h=17 x= 2 y=10 dx=16 dy= 0 ascent=16 len=32 + Font Bounding box w=20 h=27 x=-2 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB12[4077] U8G_SECTION(".progmem.u8g_font_helvB12") = { + 0,20,27,254,249,12,2,74,5,106,32,255,252,16,252,12, + 252,0,0,0,5,0,1,2,12,12,6,2,0,192,192,192, + 192,192,192,128,128,128,0,192,192,5,4,4,8,1,8,216, + 216,216,72,9,12,24,9,0,0,27,0,27,0,27,0,127, + 128,127,128,54,0,54,0,255,0,255,0,108,0,108,0,108, + 0,7,14,14,9,1,255,16,124,254,214,208,240,120,60,30, + 22,214,254,124,16,13,12,24,14,0,0,48,64,120,128,204, + 128,205,0,121,0,50,0,2,96,4,240,5,152,9,152,8, + 240,16,96,10,12,24,12,1,0,60,0,126,0,102,0,102, + 0,60,0,56,192,125,192,207,128,199,0,199,0,127,128,57, + 192,2,4,4,4,1,8,192,192,192,64,4,15,15,6,1, + 253,48,112,96,192,192,192,192,192,192,192,192,192,96,112,48, + 4,15,15,6,0,253,192,224,96,48,48,48,48,48,48,48, + 48,48,96,224,192,5,5,5,6,0,7,32,168,112,112,136, + 8,8,8,10,1,0,24,24,24,255,255,24,24,24,2,5, + 5,4,1,253,192,192,64,64,128,4,2,2,5,0,3,240, + 240,2,2,2,4,1,0,192,192,4,12,12,5,0,0,16, + 16,48,32,32,96,64,64,192,128,128,128,8,12,12,9,0, + 0,60,126,231,195,195,195,195,195,195,231,126,60,5,12,12, + 9,1,0,8,24,248,248,24,24,24,24,24,24,24,24,8, + 12,12,9,0,0,60,126,231,195,195,7,14,28,56,112,255, + 255,8,12,12,9,0,0,60,126,231,195,7,30,30,7,195, + 231,126,60,8,12,12,9,0,0,14,30,54,54,102,102,198, + 255,255,6,6,6,8,12,12,9,0,0,63,63,48,48,124, + 126,71,3,3,231,126,60,8,12,12,9,0,0,60,126,231, + 192,220,254,231,195,195,231,126,60,8,12,12,9,0,0,255, + 255,6,6,12,12,24,24,24,48,48,48,8,12,12,9,0, + 0,60,126,231,195,102,60,126,231,195,231,126,60,8,12,12, + 9,0,0,60,126,231,195,195,231,127,59,3,231,126,60,2, + 8,8,5,2,0,192,192,0,0,0,0,192,192,2,11,11, + 5,2,253,192,192,0,0,0,0,192,192,64,64,128,8,8, + 8,10,1,0,3,15,60,224,224,60,15,3,8,6,6,10, + 1,1,255,255,0,0,255,255,8,8,8,10,1,0,192,240, + 60,7,7,60,240,192,7,12,12,10,1,0,124,254,198,198, + 6,14,12,24,24,0,24,24,13,14,28,16,1,254,15,192, + 56,96,96,16,71,216,204,72,136,200,152,200,152,136,153,152, + 201,144,70,96,96,0,56,192,15,128,11,12,24,12,0,0, + 14,0,14,0,31,0,27,0,59,128,49,128,113,192,96,192, + 127,192,255,224,192,96,192,96,9,12,24,11,1,0,254,0, + 255,0,195,128,193,128,195,128,255,0,255,0,195,128,193,128, + 195,128,255,0,254,0,10,12,24,12,1,0,31,0,63,128, + 113,192,96,192,224,0,192,0,192,0,224,0,96,192,113,192, + 63,128,31,0,10,12,24,12,1,0,252,0,255,0,195,128, + 193,128,193,192,192,192,192,192,193,192,193,128,195,128,255,0, + 252,0,8,12,12,10,1,0,255,255,192,192,192,254,254,192, + 192,192,255,255,8,12,12,10,1,0,255,255,192,192,192,254, + 254,192,192,192,192,192,10,12,24,12,1,0,31,0,63,128, + 113,192,96,192,224,0,192,0,195,192,227,192,96,192,113,192, + 63,192,30,192,10,12,24,12,1,0,192,192,192,192,192,192, + 192,192,255,192,255,192,192,192,192,192,192,192,192,192,192,192, + 192,192,2,12,12,4,1,0,192,192,192,192,192,192,192,192, + 192,192,192,192,7,12,12,9,1,0,6,6,6,6,6,6, + 6,6,198,198,254,124,11,12,24,12,1,0,193,192,195,128, + 199,0,206,0,220,0,248,0,252,0,206,0,199,0,195,128, + 193,192,192,224,8,12,12,10,1,0,192,192,192,192,192,192, + 192,192,192,192,255,255,11,12,24,13,1,0,224,224,224,224, + 224,224,241,224,241,224,209,96,219,96,219,96,202,96,206,96, + 206,96,196,96,10,12,24,12,1,0,224,192,240,192,240,192, + 216,192,216,192,204,192,204,192,198,192,198,192,195,192,195,192, + 193,192,11,12,24,13,1,0,31,0,63,128,113,192,96,192, + 224,224,192,96,192,96,224,224,96,192,113,192,63,128,31,0, + 9,12,24,11,1,0,254,0,255,0,195,128,193,128,193,128, + 195,128,255,0,254,0,192,0,192,0,192,0,192,0,11,13, + 26,13,1,255,31,0,63,128,113,192,96,192,224,224,192,96, + 192,96,226,96,103,192,115,192,63,128,31,192,0,128,10,12, + 24,12,1,0,255,0,255,128,193,128,193,128,195,128,255,0, + 255,0,195,128,193,128,193,128,193,192,193,192,9,12,24,11, + 1,0,62,0,127,0,227,128,193,128,240,0,126,0,31,0, + 3,128,193,128,227,128,127,0,62,0,10,12,24,10,0,0, + 255,192,255,192,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,10,12,24,12,1,0,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 225,192,127,128,63,0,10,12,24,11,0,0,192,192,192,192, + 97,128,97,128,97,128,51,0,51,0,51,0,30,0,30,0, + 12,0,12,0,14,12,24,15,0,0,195,12,195,12,195,12, + 99,24,103,152,103,152,52,176,60,240,60,240,24,96,24,96, + 24,96,9,12,24,11,1,0,193,128,227,128,99,0,54,0, + 62,0,28,0,28,0,62,0,54,0,99,0,227,128,193,128, + 10,12,24,11,0,0,192,192,225,192,97,128,51,0,51,0, + 30,0,30,0,12,0,12,0,12,0,12,0,12,0,8,12, + 12,10,1,0,255,255,7,6,12,28,56,48,96,224,255,255, + 4,15,15,6,1,253,240,240,192,192,192,192,192,192,192,192, + 192,192,192,240,240,4,12,12,5,0,0,128,128,192,64,64, + 96,32,32,48,16,16,16,4,15,15,6,0,253,240,240,48, + 48,48,48,48,48,48,48,48,48,48,240,240,8,7,7,10, + 1,5,24,24,60,102,102,195,195,9,1,2,9,0,253,255, + 128,3,3,3,6,2,10,128,192,32,8,9,9,9,1,0, + 124,254,198,14,126,230,198,254,119,8,12,12,10,1,0,192, + 192,192,220,254,231,195,195,195,231,254,220,8,9,9,9,1, + 0,60,126,231,192,192,192,231,126,60,8,12,12,10,1,0, + 3,3,3,63,127,231,195,195,195,231,127,59,8,9,9,10, + 1,0,60,126,195,255,255,192,231,126,60,4,12,12,6,1, + 0,48,112,96,240,240,96,96,96,96,96,96,96,8,13,13, + 10,1,252,59,127,231,195,195,195,231,127,59,3,231,126,60, + 8,12,12,10,1,0,192,192,192,222,255,227,195,195,195,195, + 195,195,2,12,12,4,1,0,192,192,0,192,192,192,192,192, + 192,192,192,192,3,16,16,5,1,252,96,96,0,96,96,96, + 96,96,96,96,96,96,96,96,224,192,8,12,12,9,1,0, + 192,192,192,199,206,220,248,252,236,206,198,199,2,12,12,4, + 1,0,192,192,192,192,192,192,192,192,192,192,192,192,12,9, + 18,14,1,0,222,224,255,240,231,48,198,48,198,48,198,48, + 198,48,198,48,198,48,8,9,9,10,1,0,222,255,227,195, + 195,195,195,195,195,8,9,9,10,1,0,60,126,231,195,195, + 195,231,126,60,8,13,13,10,1,252,220,254,231,195,195,195, + 231,254,220,192,192,192,192,8,13,13,10,1,252,59,127,231, + 195,195,195,231,127,59,3,3,3,3,5,9,9,6,1,0, + 216,248,224,192,192,192,192,192,192,7,9,9,9,1,0,124, + 254,198,240,124,14,198,254,124,4,11,11,6,1,0,96,96, + 240,240,96,96,96,96,96,112,48,8,9,9,10,1,0,195, + 195,195,195,195,195,199,255,123,8,9,9,9,0,0,195,195, + 102,102,102,60,60,24,24,12,9,18,13,0,0,198,48,198, + 48,102,96,102,96,111,96,63,192,57,192,25,128,25,128,7, + 9,9,9,1,0,198,198,108,124,56,124,108,198,198,8,13, + 13,9,0,252,195,195,99,102,54,54,60,28,24,24,24,112, + 96,7,9,9,8,0,0,254,254,14,28,24,56,112,254,254, + 4,15,15,6,1,253,48,112,96,96,96,96,96,192,96,96, + 96,96,96,112,48,1,16,16,4,1,252,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,4,15,15,6,1, + 253,192,224,96,96,96,96,96,48,96,96,96,96,96,224,192, + 8,3,3,10,1,3,113,153,142,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,0,0,0,5,0,1, + 2,12,12,6,1,253,192,192,0,64,64,64,192,192,192,192, + 192,192,8,11,11,9,0,255,4,60,126,239,200,216,208,247, + 126,60,32,8,12,12,9,0,0,28,62,99,99,96,48,124, + 48,48,32,127,255,7,7,7,9,1,2,186,124,198,198,198, + 124,186,8,12,12,9,0,0,195,195,102,102,60,24,126,24, + 126,24,24,24,1,16,16,5,2,252,128,128,128,128,128,128, + 128,0,0,128,128,128,128,128,128,128,8,15,15,9,0,253, + 60,126,102,96,120,126,199,195,243,126,30,6,102,126,60,5, + 2,2,6,0,10,216,216,12,12,24,12,0,0,15,0,57, + 192,96,96,79,32,217,176,144,16,144,16,217,176,79,32,96, + 32,57,192,15,0,5,7,7,6,1,5,96,144,112,144,120, + 0,248,8,6,6,9,0,2,51,102,204,204,102,51,8,5, + 5,10,0,2,255,255,3,3,3,4,2,2,5,0,3,240, + 240,12,12,24,12,0,0,15,0,57,192,96,96,95,32,217, + 176,153,144,158,16,219,48,91,32,96,96,57,192,15,0,5, + 1,1,6,0,10,248,4,5,5,7,1,7,96,144,144,144, + 96,8,11,11,10,1,0,24,24,24,255,255,24,24,24,0, + 255,255,5,7,7,6,0,5,112,216,216,48,96,248,248,5, + 7,7,6,0,5,112,216,24,48,24,216,112,3,3,3,6, + 1,10,32,96,128,8,12,12,10,1,253,195,195,195,195,195, + 195,199,255,251,192,192,192,8,15,15,9,0,253,127,242,242, + 242,242,242,114,18,18,18,18,18,18,18,18,2,2,2,5, + 1,4,192,192,5,4,4,6,0,252,32,48,152,112,4,7, + 7,6,1,5,48,240,240,48,48,48,48,5,7,7,6,0, + 5,112,216,136,216,112,0,248,8,6,6,9,1,2,204,102, + 51,51,102,204,13,12,24,14,1,0,48,192,240,128,241,128, + 49,0,51,48,50,112,54,240,4,176,13,176,9,248,24,48, + 16,48,12,12,24,14,0,0,48,128,241,128,241,0,51,0, + 50,0,54,224,53,176,13,176,8,96,24,192,17,240,49,240, + 13,12,24,14,0,0,112,64,216,192,24,128,49,128,25,48, + 219,112,114,240,6,176,5,176,13,248,8,48,24,48,7,12, + 12,10,1,253,48,48,0,48,48,96,224,192,198,198,254,124, + 11,16,32,12,0,0,16,0,24,0,4,0,0,0,14,0, + 14,0,31,0,27,0,59,128,49,128,113,192,96,192,127,192, + 255,224,192,96,192,96,11,16,32,12,0,0,2,0,6,0, + 8,0,0,0,14,0,14,0,31,0,27,0,59,128,49,128, + 113,192,96,192,127,192,255,224,192,96,192,96,11,16,32,12, + 0,0,4,0,14,0,17,0,0,0,14,0,14,0,31,0, + 27,0,59,128,49,128,113,192,96,192,127,192,255,224,192,96, + 192,96,11,15,30,12,0,0,14,128,23,0,0,0,14,0, + 14,0,31,0,27,0,59,128,49,128,113,192,96,192,127,192, + 255,224,192,96,192,96,11,15,30,12,0,0,49,128,49,128, + 0,0,14,0,14,0,31,0,27,0,59,128,49,128,113,192, + 96,192,127,192,255,224,192,96,192,96,11,16,32,12,0,0, + 12,0,18,0,18,0,12,0,14,0,14,0,31,0,27,0, + 59,128,49,128,113,192,96,192,127,192,255,224,192,96,192,96, + 14,12,24,15,0,0,31,252,31,252,27,0,51,0,51,0, + 51,248,99,248,127,0,127,0,195,0,195,252,195,252,10,16, + 32,12,1,252,31,0,63,128,113,192,96,192,224,0,192,0, + 192,0,224,0,96,192,113,192,63,128,31,0,4,0,6,0, + 19,0,14,0,8,16,16,10,1,0,32,48,8,0,255,255, + 192,192,192,254,254,192,192,192,255,255,8,16,16,10,1,0, + 4,12,16,0,255,255,192,192,192,254,254,192,192,192,255,255, + 8,16,16,10,1,0,8,28,34,0,255,255,192,192,192,254, + 254,192,192,192,255,255,8,15,15,10,1,0,102,102,0,255, + 255,192,192,192,254,254,192,192,192,255,255,3,16,16,4,0, + 0,128,192,32,0,96,96,96,96,96,96,96,96,96,96,96, + 96,3,16,16,4,1,0,32,96,128,0,192,192,192,192,192, + 192,192,192,192,192,192,192,5,16,16,4,0,0,32,112,136, + 0,96,96,96,96,96,96,96,96,96,96,96,96,6,15,15, + 4,255,0,204,204,0,48,48,48,48,48,48,48,48,48,48, + 48,48,12,12,24,12,0,0,63,0,63,192,48,224,48,96, + 48,112,252,48,252,48,48,112,48,96,48,224,63,192,63,0, + 10,15,30,12,1,0,29,0,46,0,0,0,224,192,240,192, + 240,192,216,192,216,192,204,192,204,192,198,192,198,192,195,192, + 195,192,193,192,11,16,32,13,1,0,8,0,12,0,2,0, + 0,0,31,0,63,128,113,192,96,192,224,224,192,96,192,96, + 224,224,96,192,113,192,63,128,31,0,11,16,32,13,1,0, + 1,0,3,0,4,0,0,0,31,0,63,128,113,192,96,192, + 224,224,192,96,192,96,224,224,96,192,113,192,63,128,31,0, + 11,16,32,13,1,0,4,0,14,0,17,0,0,0,31,0, + 63,128,113,192,96,192,224,224,192,96,192,96,224,224,96,192, + 113,192,63,128,31,0,11,15,30,13,1,0,14,128,23,0, + 0,0,31,0,63,128,113,192,96,192,224,224,192,96,192,96, + 224,224,96,192,113,192,63,128,31,0,11,15,30,13,1,0, + 25,128,25,128,0,0,31,0,63,128,113,192,96,192,224,224, + 192,96,192,96,224,224,96,192,113,192,63,128,31,0,9,9, + 18,10,0,0,65,0,227,128,119,0,62,0,28,0,62,0, + 119,0,227,128,65,0,11,12,24,13,1,0,31,32,63,192, + 112,192,97,192,227,96,198,96,204,96,216,224,112,192,97,192, + 127,128,159,0,10,16,32,12,1,0,16,0,24,0,4,0, + 0,0,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,225,192,127,128,63,0,10,16,32,12,1,0, + 2,0,6,0,8,0,0,0,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,225,192,127,128,63,0, + 10,16,32,12,1,0,4,0,14,0,17,0,0,0,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 225,192,127,128,63,0,10,15,30,12,1,0,51,0,51,0, + 0,0,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,225,192,127,128,63,0,10,16,32,11,0,0, + 2,0,6,0,8,0,0,0,192,192,225,192,97,128,51,0, + 51,0,30,0,30,0,12,0,12,0,12,0,12,0,12,0, + 9,12,24,11,1,0,192,0,254,0,255,0,195,128,193,128, + 193,128,195,128,255,0,254,0,192,0,192,0,192,0,8,12, + 12,10,1,0,124,254,198,198,220,222,195,195,195,195,222,220, + 8,13,13,9,1,0,32,48,8,0,124,254,198,14,126,230, + 198,254,119,8,13,13,9,1,0,4,12,16,0,124,254,198, + 14,126,230,198,254,119,8,13,13,9,1,0,16,56,68,0, + 124,254,198,14,126,230,198,254,119,8,12,12,9,1,0,58, + 92,0,124,254,198,14,126,230,198,254,119,8,12,12,9,1, + 0,108,108,0,124,254,198,14,126,230,198,254,119,8,13,13, + 9,1,0,24,36,36,24,124,254,198,14,126,230,198,254,119, + 13,9,18,15,1,0,125,224,255,240,198,24,15,248,127,248, + 230,0,207,56,255,240,121,224,8,13,13,9,1,252,60,126, + 231,192,192,192,231,126,60,16,24,76,56,8,13,13,10,1, + 0,32,48,8,0,60,126,195,255,255,192,231,126,60,8,13, + 13,10,1,0,4,12,16,0,60,126,195,255,255,192,231,126, + 60,8,13,13,10,1,0,8,28,34,0,60,126,195,255,255, + 192,231,126,60,8,12,12,10,1,0,54,54,0,60,126,195, + 255,255,192,231,126,60,3,13,13,4,0,0,128,192,32,0, + 96,96,96,96,96,96,96,96,96,3,13,13,4,1,0,32, + 96,128,0,192,192,192,192,192,192,192,192,192,5,13,13,4, + 0,0,32,112,136,0,96,96,96,96,96,96,96,96,96,5, + 12,12,4,0,0,216,216,0,96,96,96,96,96,96,96,96, + 96,8,12,12,10,1,0,96,124,248,28,126,231,195,195,195, + 231,126,60,8,12,12,10,1,0,58,92,0,222,255,227,195, + 195,195,195,195,195,8,13,13,10,1,0,32,48,8,0,60, + 126,231,195,195,195,231,126,60,8,13,13,10,1,0,8,24, + 32,0,60,126,231,195,195,195,231,126,60,8,13,13,10,1, + 0,16,56,68,0,60,126,231,195,195,195,231,126,60,8,12, + 12,10,1,0,58,92,0,60,126,231,195,195,195,231,126,60, + 8,12,12,10,1,0,108,108,0,60,126,231,195,195,195,231, + 126,60,8,8,8,10,1,0,24,24,0,255,255,0,24,24, + 8,9,9,10,1,0,61,127,231,207,219,243,231,254,188,8, + 13,13,10,1,0,32,48,8,0,195,195,195,195,195,195,199, + 255,123,8,13,13,10,1,0,8,24,32,0,195,195,195,195, + 195,195,199,255,123,8,13,13,10,1,0,16,56,68,0,195, + 195,195,195,195,195,199,255,123,8,12,12,10,1,0,108,108, + 0,195,195,195,195,195,195,199,255,123,8,17,17,9,0,252, + 4,12,16,0,195,195,99,102,54,54,60,28,24,24,24,112, + 96,8,16,16,10,1,252,192,192,192,220,254,231,195,195,195, + 231,254,220,192,192,192,192,8,16,16,9,0,252,54,54,0, + 195,195,99,102,54,54,60,28,24,24,24,112,96}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--17-120-100-100-P-92-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=14 h=16 x= 2 y=10 dx=16 dy= 0 ascent=13 len=28 + Font Bounding box w=20 h=27 x=-2 y=-7 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB12r[1914] U8G_SECTION(".progmem.u8g_font_helvB12r") = { + 0,20,27,254,249,12,2,74,5,106,32,127,252,13,252,12, + 252,0,0,0,5,0,1,2,12,12,6,2,0,192,192,192, + 192,192,192,128,128,128,0,192,192,5,4,4,8,1,8,216, + 216,216,72,9,12,24,9,0,0,27,0,27,0,27,0,127, + 128,127,128,54,0,54,0,255,0,255,0,108,0,108,0,108, + 0,7,14,14,9,1,255,16,124,254,214,208,240,120,60,30, + 22,214,254,124,16,13,12,24,14,0,0,48,64,120,128,204, + 128,205,0,121,0,50,0,2,96,4,240,5,152,9,152,8, + 240,16,96,10,12,24,12,1,0,60,0,126,0,102,0,102, + 0,60,0,56,192,125,192,207,128,199,0,199,0,127,128,57, + 192,2,4,4,4,1,8,192,192,192,64,4,15,15,6,1, + 253,48,112,96,192,192,192,192,192,192,192,192,192,96,112,48, + 4,15,15,6,0,253,192,224,96,48,48,48,48,48,48,48, + 48,48,96,224,192,5,5,5,6,0,7,32,168,112,112,136, + 8,8,8,10,1,0,24,24,24,255,255,24,24,24,2,5, + 5,4,1,253,192,192,64,64,128,4,2,2,5,0,3,240, + 240,2,2,2,4,1,0,192,192,4,12,12,5,0,0,16, + 16,48,32,32,96,64,64,192,128,128,128,8,12,12,9,0, + 0,60,126,231,195,195,195,195,195,195,231,126,60,5,12,12, + 9,1,0,8,24,248,248,24,24,24,24,24,24,24,24,8, + 12,12,9,0,0,60,126,231,195,195,7,14,28,56,112,255, + 255,8,12,12,9,0,0,60,126,231,195,7,30,30,7,195, + 231,126,60,8,12,12,9,0,0,14,30,54,54,102,102,198, + 255,255,6,6,6,8,12,12,9,0,0,63,63,48,48,124, + 126,71,3,3,231,126,60,8,12,12,9,0,0,60,126,231, + 192,220,254,231,195,195,231,126,60,8,12,12,9,0,0,255, + 255,6,6,12,12,24,24,24,48,48,48,8,12,12,9,0, + 0,60,126,231,195,102,60,126,231,195,231,126,60,8,12,12, + 9,0,0,60,126,231,195,195,231,127,59,3,231,126,60,2, + 8,8,5,2,0,192,192,0,0,0,0,192,192,2,11,11, + 5,2,253,192,192,0,0,0,0,192,192,64,64,128,8,8, + 8,10,1,0,3,15,60,224,224,60,15,3,8,6,6,10, + 1,1,255,255,0,0,255,255,8,8,8,10,1,0,192,240, + 60,7,7,60,240,192,7,12,12,10,1,0,124,254,198,198, + 6,14,12,24,24,0,24,24,13,14,28,16,1,254,15,192, + 56,96,96,16,71,216,204,72,136,200,152,200,152,136,153,152, + 201,144,70,96,96,0,56,192,15,128,11,12,24,12,0,0, + 14,0,14,0,31,0,27,0,59,128,49,128,113,192,96,192, + 127,192,255,224,192,96,192,96,9,12,24,11,1,0,254,0, + 255,0,195,128,193,128,195,128,255,0,255,0,195,128,193,128, + 195,128,255,0,254,0,10,12,24,12,1,0,31,0,63,128, + 113,192,96,192,224,0,192,0,192,0,224,0,96,192,113,192, + 63,128,31,0,10,12,24,12,1,0,252,0,255,0,195,128, + 193,128,193,192,192,192,192,192,193,192,193,128,195,128,255,0, + 252,0,8,12,12,10,1,0,255,255,192,192,192,254,254,192, + 192,192,255,255,8,12,12,10,1,0,255,255,192,192,192,254, + 254,192,192,192,192,192,10,12,24,12,1,0,31,0,63,128, + 113,192,96,192,224,0,192,0,195,192,227,192,96,192,113,192, + 63,192,30,192,10,12,24,12,1,0,192,192,192,192,192,192, + 192,192,255,192,255,192,192,192,192,192,192,192,192,192,192,192, + 192,192,2,12,12,4,1,0,192,192,192,192,192,192,192,192, + 192,192,192,192,7,12,12,9,1,0,6,6,6,6,6,6, + 6,6,198,198,254,124,11,12,24,12,1,0,193,192,195,128, + 199,0,206,0,220,0,248,0,252,0,206,0,199,0,195,128, + 193,192,192,224,8,12,12,10,1,0,192,192,192,192,192,192, + 192,192,192,192,255,255,11,12,24,13,1,0,224,224,224,224, + 224,224,241,224,241,224,209,96,219,96,219,96,202,96,206,96, + 206,96,196,96,10,12,24,12,1,0,224,192,240,192,240,192, + 216,192,216,192,204,192,204,192,198,192,198,192,195,192,195,192, + 193,192,11,12,24,13,1,0,31,0,63,128,113,192,96,192, + 224,224,192,96,192,96,224,224,96,192,113,192,63,128,31,0, + 9,12,24,11,1,0,254,0,255,0,195,128,193,128,193,128, + 195,128,255,0,254,0,192,0,192,0,192,0,192,0,11,13, + 26,13,1,255,31,0,63,128,113,192,96,192,224,224,192,96, + 192,96,226,96,103,192,115,192,63,128,31,192,0,128,10,12, + 24,12,1,0,255,0,255,128,193,128,193,128,195,128,255,0, + 255,0,195,128,193,128,193,128,193,192,193,192,9,12,24,11, + 1,0,62,0,127,0,227,128,193,128,240,0,126,0,31,0, + 3,128,193,128,227,128,127,0,62,0,10,12,24,10,0,0, + 255,192,255,192,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,10,12,24,12,1,0,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 225,192,127,128,63,0,10,12,24,11,0,0,192,192,192,192, + 97,128,97,128,97,128,51,0,51,0,51,0,30,0,30,0, + 12,0,12,0,14,12,24,15,0,0,195,12,195,12,195,12, + 99,24,103,152,103,152,52,176,60,240,60,240,24,96,24,96, + 24,96,9,12,24,11,1,0,193,128,227,128,99,0,54,0, + 62,0,28,0,28,0,62,0,54,0,99,0,227,128,193,128, + 10,12,24,11,0,0,192,192,225,192,97,128,51,0,51,0, + 30,0,30,0,12,0,12,0,12,0,12,0,12,0,8,12, + 12,10,1,0,255,255,7,6,12,28,56,48,96,224,255,255, + 4,15,15,6,1,253,240,240,192,192,192,192,192,192,192,192, + 192,192,192,240,240,4,12,12,5,0,0,128,128,192,64,64, + 96,32,32,48,16,16,16,4,15,15,6,0,253,240,240,48, + 48,48,48,48,48,48,48,48,48,48,240,240,8,7,7,10, + 1,5,24,24,60,102,102,195,195,9,1,2,9,0,253,255, + 128,3,3,3,6,2,10,128,192,32,8,9,9,9,1,0, + 124,254,198,14,126,230,198,254,119,8,12,12,10,1,0,192, + 192,192,220,254,231,195,195,195,231,254,220,8,9,9,9,1, + 0,60,126,231,192,192,192,231,126,60,8,12,12,10,1,0, + 3,3,3,63,127,231,195,195,195,231,127,59,8,9,9,10, + 1,0,60,126,195,255,255,192,231,126,60,4,12,12,6,1, + 0,48,112,96,240,240,96,96,96,96,96,96,96,8,13,13, + 10,1,252,59,127,231,195,195,195,231,127,59,3,231,126,60, + 8,12,12,10,1,0,192,192,192,222,255,227,195,195,195,195, + 195,195,2,12,12,4,1,0,192,192,0,192,192,192,192,192, + 192,192,192,192,3,16,16,5,1,252,96,96,0,96,96,96, + 96,96,96,96,96,96,96,96,224,192,8,12,12,9,1,0, + 192,192,192,199,206,220,248,252,236,206,198,199,2,12,12,4, + 1,0,192,192,192,192,192,192,192,192,192,192,192,192,12,9, + 18,14,1,0,222,224,255,240,231,48,198,48,198,48,198,48, + 198,48,198,48,198,48,8,9,9,10,1,0,222,255,227,195, + 195,195,195,195,195,8,9,9,10,1,0,60,126,231,195,195, + 195,231,126,60,8,13,13,10,1,252,220,254,231,195,195,195, + 231,254,220,192,192,192,192,8,13,13,10,1,252,59,127,231, + 195,195,195,231,127,59,3,3,3,3,5,9,9,6,1,0, + 216,248,224,192,192,192,192,192,192,7,9,9,9,1,0,124, + 254,198,240,124,14,198,254,124,4,11,11,6,1,0,96,96, + 240,240,96,96,96,96,96,112,48,8,9,9,10,1,0,195, + 195,195,195,195,195,199,255,123,8,9,9,9,0,0,195,195, + 102,102,102,60,60,24,24,12,9,18,13,0,0,198,48,198, + 48,102,96,102,96,111,96,63,192,57,192,25,128,25,128,7, + 9,9,9,1,0,198,198,108,124,56,124,108,198,198,8,13, + 13,9,0,252,195,195,99,102,54,54,60,28,24,24,24,112, + 96,7,9,9,8,0,0,254,254,14,28,24,56,112,254,254, + 4,15,15,6,1,253,48,112,96,96,96,96,96,192,96,96, + 96,96,96,112,48,1,16,16,4,1,252,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,4,15,15,6,1, + 253,192,224,96,96,96,96,96,48,96,96,96,96,96,224,192, + 8,3,3,10,1,3,113,153,142,255}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--20-140-100-100-P-105-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 13 + Calculated Max Values w=16 h=19 x= 2 y=12 dx=18 dy= 0 ascent=18 len=38 + Font Bounding box w=22 h=29 x=-2 y=-7 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =18 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB14[5489] U8G_SECTION(".progmem.u8g_font_helvB14") = { + 0,22,29,254,249,14,3,23,6,234,32,255,252,18,251,14, + 252,0,0,0,5,0,1,3,14,14,5,1,0,224,224,224, + 224,224,224,224,224,192,192,0,224,224,224,5,5,5,7,1, + 9,216,216,216,216,144,11,13,26,11,0,0,13,128,13,128, + 13,128,127,224,127,224,27,0,27,0,27,0,255,192,255,192, + 54,0,54,0,54,0,10,16,32,10,0,254,4,0,63,0, + 127,128,229,128,228,0,228,0,124,0,63,0,15,128,9,192, + 233,192,233,192,127,128,63,0,8,0,8,0,13,13,26,16, + 1,0,120,96,252,96,204,192,204,128,253,128,123,0,2,0, + 6,240,13,248,9,152,25,152,49,248,48,240,13,14,28,14, + 1,0,30,0,63,0,115,128,97,128,115,0,62,0,28,96, + 126,96,231,224,195,192,193,192,227,224,127,112,62,56,2,5, + 5,4,1,9,192,192,192,192,128,6,18,18,7,1,252,28, + 56,48,112,96,224,224,224,224,224,224,224,224,96,112,48,56, + 28,6,18,18,7,0,252,224,112,48,56,24,28,28,28,28, + 28,28,28,28,24,56,48,112,224,7,6,6,9,1,8,16, + 214,124,56,108,68,8,8,8,11,1,1,24,24,24,255,255, + 24,24,24,3,6,6,5,1,253,224,224,224,96,192,128,5, + 3,3,6,0,4,248,248,248,3,3,3,5,1,0,224,224, + 224,5,14,14,5,0,0,24,24,24,56,48,48,48,112,96, + 96,224,192,192,192,9,13,26,10,0,0,28,0,127,0,119, + 0,227,128,227,128,227,128,227,128,227,128,227,128,227,128,119, + 0,127,0,28,0,6,13,13,10,1,0,28,60,252,252,28, + 28,28,28,28,28,28,28,28,9,13,26,10,0,0,62,0, + 127,0,227,128,227,128,3,128,7,0,31,0,62,0,120,0, + 112,0,224,0,255,128,255,128,9,13,26,10,0,0,62,0, + 127,0,231,0,227,0,7,0,30,0,31,0,7,128,3,128, + 227,128,231,128,127,0,62,0,9,13,26,10,0,0,7,0, + 15,0,31,0,63,0,55,0,119,0,103,0,231,0,255,128, + 255,128,7,0,7,0,7,0,9,13,26,10,0,0,255,0, + 255,0,224,0,224,0,254,0,255,0,231,128,3,128,3,128, + 227,128,231,128,255,0,126,0,9,13,26,10,0,0,63,0, + 127,128,113,128,224,0,238,0,255,0,243,128,225,128,225,128, + 225,128,243,128,127,0,62,0,9,13,26,10,0,0,255,128, + 255,128,3,128,7,0,14,0,14,0,28,0,28,0,56,0, + 56,0,112,0,112,0,112,0,9,13,26,10,0,0,62,0, + 127,0,227,128,227,128,227,128,127,0,62,0,119,0,227,128, + 227,128,227,128,127,0,62,0,9,13,26,10,0,0,62,0, + 127,0,231,128,195,128,195,128,195,128,231,128,127,128,59,128, + 3,128,199,0,255,0,126,0,3,10,10,6,1,0,224,224, + 224,0,0,0,0,224,224,224,3,13,13,6,1,253,224,224, + 224,0,0,0,0,224,224,224,96,192,128,9,9,18,11,1, + 0,3,128,15,128,62,0,120,0,224,0,120,0,62,0,15, + 128,3,128,9,5,10,11,1,3,255,128,255,128,0,0,255, + 128,255,128,9,9,18,11,1,0,224,0,248,0,62,0,15, + 0,3,128,15,0,62,0,248,0,224,0,8,14,14,10,1, + 0,126,255,231,231,14,30,28,56,56,56,0,56,56,56,16, + 17,34,18,1,253,7,240,31,252,60,30,112,6,99,183,231, + 243,198,99,204,99,204,195,204,198,204,198,239,252,231,184,112, + 0,60,0,31,240,7,240,12,14,28,14,1,0,15,0,15, + 0,31,128,25,128,25,128,57,192,57,192,48,192,112,224,127, + 224,127,224,224,112,224,112,224,112,11,14,28,14,2,0,254, + 0,255,128,227,192,225,192,225,192,227,128,255,128,255,192,225, + 224,224,224,224,224,225,224,255,192,255,0,12,14,28,14,1, + 0,15,128,63,224,120,224,112,112,240,112,224,0,224,0,224, + 0,224,0,240,112,112,112,120,224,63,224,15,128,12,14,28, + 14,1,0,255,0,255,192,225,224,224,224,224,112,224,112,224, + 112,224,112,224,112,224,112,224,224,225,224,255,192,255,0,10, + 14,28,13,2,0,255,192,255,192,224,0,224,0,224,0,224, + 0,255,128,255,128,224,0,224,0,224,0,224,0,255,192,255, + 192,10,14,28,12,1,0,255,192,255,192,224,0,224,0,224, + 0,224,0,255,128,255,128,224,0,224,0,224,0,224,0,224, + 0,224,0,12,14,28,15,1,0,15,128,63,224,120,224,112, + 112,240,112,224,0,224,0,227,240,227,240,240,112,112,112,120, + 240,63,240,31,176,12,14,28,14,1,0,224,112,224,112,224, + 112,224,112,224,112,224,112,255,240,255,240,224,112,224,112,224, + 112,224,112,224,112,224,112,3,14,14,5,1,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,9,14,28,10,0, + 0,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,227,128,227,128,247,128,127,0,62,0,13,14,28, + 14,1,0,224,240,225,224,227,192,231,128,239,0,254,0,252, + 0,254,0,239,0,231,128,227,192,225,224,224,240,224,120,9, + 14,28,11,1,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,255,128,255, + 128,14,14,28,16,1,0,224,28,224,28,240,60,240,60,248, + 124,248,124,248,124,236,220,236,220,236,220,231,156,231,156,227, + 28,227,28,12,14,28,14,1,0,224,112,240,112,240,112,248, + 112,252,112,236,112,238,112,230,112,231,112,227,112,225,240,225, + 240,224,240,224,112,13,14,28,15,1,0,15,128,63,224,120, + 240,112,112,240,120,224,56,224,56,224,56,224,56,240,120,112, + 112,120,240,63,224,15,128,11,14,28,13,1,0,255,0,255, + 192,225,224,224,224,224,224,224,224,225,224,255,192,255,0,224, + 0,224,0,224,0,224,0,224,0,13,15,30,15,1,255,15, + 128,63,224,120,240,112,112,240,120,224,56,224,56,224,56,224, + 56,243,120,115,240,121,240,63,224,15,240,0,48,12,14,28, + 14,1,0,255,0,255,192,225,224,224,224,224,224,225,224,255, + 192,255,128,225,192,224,224,224,224,224,224,224,224,224,240,11, + 14,28,13,1,0,63,128,127,192,241,224,224,224,240,0,126, + 0,63,128,15,192,1,224,224,224,224,224,241,224,127,192,63, + 128,11,14,28,11,0,0,255,224,255,224,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,12,14,28,14,1,0,224,112,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,112, + 224,127,224,31,128,13,14,28,13,0,0,224,56,224,56,112, + 112,112,112,48,96,56,224,56,224,29,192,29,192,13,128,15, + 128,15,128,7,0,7,0,15,14,28,17,1,0,227,142,227, + 142,227,142,227,142,115,156,115,156,115,156,118,220,54,216,54, + 216,62,248,28,112,28,112,28,112,12,14,28,12,0,0,224, + 112,224,112,112,224,121,224,25,128,31,128,15,0,31,128,25, + 128,57,192,112,224,112,224,224,112,224,112,13,14,28,13,0, + 0,224,56,224,56,112,112,56,224,56,224,29,192,29,192,15, + 128,7,0,7,0,7,0,7,0,7,0,7,0,10,14,28, + 12,1,0,255,192,255,192,1,192,3,128,7,0,7,0,14, + 0,28,0,56,0,56,0,112,0,224,0,255,192,255,192,5, + 18,18,6,1,252,248,248,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,248,248,5,14,14,5,0,0,192,192,192, + 224,96,96,96,112,48,48,56,24,24,24,5,18,18,6,0, + 252,248,248,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,248,248,10,7,14,10,0,6,12,0,30,0,30,0,51, + 0,115,128,97,128,225,192,10,2,4,10,0,252,255,192,255, + 192,5,3,3,5,0,11,224,112,56,10,10,20,11,1,0, + 62,0,127,0,99,128,7,128,63,128,123,128,227,128,231,128, + 251,128,123,192,10,14,28,12,1,0,224,0,224,0,224,0, + 224,0,239,0,255,128,243,128,225,192,225,192,225,192,225,192, + 243,128,255,128,239,0,9,10,20,11,1,0,30,0,127,128, + 115,128,224,0,224,0,224,0,224,0,115,128,127,128,30,0, + 10,14,28,12,1,0,1,192,1,192,1,192,1,192,61,192, + 127,192,115,192,225,192,225,192,225,192,225,192,115,192,127,192, + 61,192,9,10,20,11,1,0,30,0,127,0,115,128,225,128, + 255,128,255,128,224,0,115,128,127,128,30,0,7,14,14,7, + 0,0,30,62,56,56,254,254,56,56,56,56,56,56,56,56, + 10,14,28,12,1,252,61,192,127,192,115,192,225,192,225,192, + 225,192,225,192,115,192,127,192,61,192,1,192,115,128,127,128, + 30,0,9,14,28,11,1,0,224,0,224,0,224,0,224,0, + 239,0,255,128,243,128,227,128,227,128,227,128,227,128,227,128, + 227,128,227,128,3,14,14,5,1,0,224,224,224,0,224,224, + 224,224,224,224,224,224,224,224,5,18,18,5,255,252,56,56, + 56,0,56,56,56,56,56,56,56,56,56,56,56,56,248,240, + 9,14,28,10,1,0,224,0,224,0,224,0,224,0,231,0, + 238,0,252,0,248,0,248,0,252,0,238,0,231,0,231,128, + 227,128,3,14,14,5,1,0,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,15,10,20,17,1,0,239,60,255,254, + 243,206,227,142,227,142,227,142,227,142,227,142,227,142,227,142, + 9,10,20,11,1,0,239,0,255,128,243,128,227,128,227,128, + 227,128,227,128,227,128,227,128,227,128,10,10,20,12,1,0, + 30,0,127,128,115,128,225,192,225,192,225,192,225,192,115,128, + 127,128,30,0,10,14,28,12,1,252,239,0,255,128,243,128, + 225,192,225,192,225,192,225,192,243,128,255,128,239,0,224,0, + 224,0,224,0,224,0,10,14,28,12,1,252,61,192,127,192, + 115,192,225,192,225,192,225,192,225,192,115,192,127,192,61,192, + 1,192,1,192,1,192,1,192,6,10,10,7,1,0,236,252, + 252,224,224,224,224,224,224,224,9,10,20,11,1,0,63,0, + 127,128,227,128,224,0,255,0,63,128,3,128,227,128,255,0, + 126,0,6,13,13,6,0,0,112,112,112,252,252,112,112,112, + 112,112,112,124,60,9,10,20,11,1,0,227,128,227,128,227, + 128,227,128,227,128,227,128,227,128,231,128,255,128,123,128,9, + 10,20,9,0,0,227,128,227,128,227,128,119,0,119,0,119, + 0,62,0,62,0,28,0,28,0,15,10,20,15,0,0,227, + 142,227,142,227,142,115,156,119,220,118,220,62,248,60,120,28, + 112,28,112,9,10,20,11,1,0,227,128,227,128,119,0,62, + 0,28,0,62,0,119,0,119,0,227,128,227,128,9,14,28, + 11,1,252,227,128,227,128,227,128,119,0,119,0,119,0,62, + 0,62,0,28,0,28,0,28,0,24,0,120,0,112,0,8, + 10,10,10,1,0,255,255,7,14,28,56,112,224,255,255,7, + 18,18,8,1,252,14,28,56,56,56,56,56,112,224,112,56, + 56,56,56,56,56,28,14,2,18,18,5,1,252,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,7, + 18,18,8,0,252,224,112,56,56,56,56,56,28,14,28,56, + 56,56,56,56,56,112,224,9,3,6,11,1,4,121,128,255, + 128,207,0,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,0,0,0,5,0,1,3,14,14,6,2,252, + 224,224,224,0,96,96,224,224,224,224,224,224,224,224,8,14, + 14,10,1,254,2,2,62,127,231,200,200,208,208,227,127,126, + 64,64,10,13,26,11,0,0,31,0,63,192,113,192,112,0, + 112,0,56,0,127,0,28,0,28,0,56,0,112,192,255,192, + 239,128,9,8,16,11,1,2,193,128,255,128,119,0,99,0, + 99,0,119,0,255,128,193,128,9,13,26,10,0,0,227,128, + 227,128,227,128,119,0,119,0,62,0,255,128,28,0,255,128, + 28,0,28,0,28,0,28,0,2,18,18,5,1,252,192,192, + 192,192,192,192,192,192,0,0,192,192,192,192,192,192,192,192, + 9,18,36,10,0,252,62,0,127,0,227,128,227,128,240,0, + 124,0,254,0,199,0,195,128,225,128,113,128,63,128,15,0, + 7,128,227,128,227,128,127,0,62,0,5,2,2,7,1,12, + 216,216,14,14,28,15,1,0,15,192,56,112,96,24,199,140, + 207,204,152,196,152,4,152,4,152,68,207,204,199,140,96,24, + 56,112,15,192,6,9,9,8,1,5,120,140,124,204,204,116, + 0,252,252,10,8,16,11,0,1,29,192,59,128,119,0,238, + 0,238,0,119,0,59,128,29,192,9,5,10,11,1,3,255, + 128,255,128,1,128,1,128,1,128,5,3,3,6,0,4,248, + 248,248,13,14,28,15,1,0,15,128,48,96,96,16,95,144, + 153,200,152,200,153,200,159,8,153,136,153,136,88,208,96,48, + 56,224,15,128,5,2,2,7,1,12,248,248,6,6,6,7, + 0,7,120,252,204,204,252,120,9,9,18,11,1,0,28,0, + 28,0,255,128,255,128,28,0,28,0,0,0,255,128,255,128, + 6,8,8,6,0,5,120,252,204,28,120,224,252,252,6,8, + 8,6,0,5,120,252,204,56,60,204,252,120,5,3,3,5, + 0,11,56,112,224,9,14,28,11,1,252,227,128,227,128,227, + 128,227,128,227,128,227,128,227,128,231,128,255,128,251,128,224, + 0,224,0,224,0,224,0,9,18,36,10,0,252,63,128,123, + 0,251,0,251,0,251,0,251,0,251,0,123,0,59,0,27, + 0,27,0,27,0,27,0,27,0,27,0,27,0,27,0,27, + 0,2,2,2,5,1,6,192,192,5,5,5,7,1,251,96, + 112,24,248,240,4,8,8,6,0,5,48,240,240,48,48,48, + 48,48,6,9,9,8,1,5,120,204,204,204,204,120,0,252, + 252,10,8,16,11,0,1,238,0,119,0,59,128,29,192,29, + 192,59,128,119,0,238,0,14,13,26,15,0,0,48,96,240, + 96,240,192,48,192,49,128,49,152,51,56,54,56,6,120,12, + 216,12,252,24,24,24,24,15,13,26,15,0,0,48,96,240, + 96,240,192,48,192,49,128,49,188,51,126,54,102,6,14,12, + 60,12,112,24,126,24,126,14,13,26,15,0,0,120,48,252, + 48,204,96,56,96,60,192,204,216,253,184,123,56,3,120,6, + 216,6,252,12,24,12,24,8,14,14,10,1,252,28,28,28, + 0,28,28,28,56,120,112,231,231,255,126,12,18,36,14,1, + 0,56,0,28,0,6,0,0,0,15,0,15,0,31,128,25, + 128,25,128,57,192,57,192,48,192,112,224,127,224,127,224,224, + 112,224,112,224,112,12,18,36,14,1,0,1,192,3,128,6, + 0,0,0,15,0,15,0,31,128,25,128,25,128,57,192,57, + 192,48,192,112,224,127,224,127,224,224,112,224,112,224,112,12, + 18,36,14,1,0,7,0,15,128,29,192,0,0,15,0,15, + 0,31,128,25,128,25,128,57,192,57,192,48,192,112,224,127, + 224,127,224,224,112,224,112,224,112,12,18,36,14,1,0,14, + 32,31,192,35,128,0,0,15,0,15,0,31,128,25,128,25, + 128,57,192,57,192,48,192,112,224,127,224,127,224,224,112,224, + 112,224,112,12,18,36,14,1,0,25,128,25,128,25,128,0, + 0,15,0,15,0,31,128,25,128,25,128,57,192,57,192,48, + 192,112,224,127,224,127,224,224,112,224,112,224,112,12,18,36, + 14,1,0,15,0,25,128,25,128,15,0,15,0,15,0,31, + 128,25,128,25,128,57,192,57,192,48,192,112,224,127,224,127, + 224,224,112,224,112,224,112,16,14,28,18,1,0,15,255,15, + 255,31,128,27,128,59,128,59,128,51,254,115,254,115,128,127, + 128,255,128,227,128,227,255,227,255,12,19,38,14,1,251,15, + 128,63,224,120,224,112,112,240,112,224,0,224,0,224,0,224, + 0,240,112,112,112,120,224,63,224,15,128,12,0,14,0,3, + 0,31,0,30,0,10,18,36,13,2,0,56,0,28,0,6, + 0,0,0,255,192,255,192,224,0,224,0,224,0,224,0,255, + 128,255,128,224,0,224,0,224,0,224,0,255,192,255,192,10, + 18,36,13,2,0,3,128,7,0,12,0,0,0,255,192,255, + 192,224,0,224,0,224,0,224,0,255,128,255,128,224,0,224, + 0,224,0,224,0,255,192,255,192,10,18,36,13,2,0,14, + 0,31,0,59,128,0,0,255,192,255,192,224,0,224,0,224, + 0,224,0,255,128,255,128,224,0,224,0,224,0,224,0,255, + 192,255,192,10,18,36,13,2,0,51,0,51,0,51,0,0, + 0,255,192,255,192,224,0,224,0,224,0,224,0,255,128,255, + 128,224,0,224,0,224,0,224,0,255,192,255,192,5,18,18, + 5,255,0,224,112,24,0,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,5,18,18,5,1,0,56,112,192,0,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,7,18,18, + 5,255,0,56,124,238,0,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,6,18,18,5,0,0,204,204,204,0,112, + 112,112,112,112,112,112,112,112,112,112,112,112,112,14,14,28, + 14,255,0,63,192,63,240,56,120,56,56,56,28,56,28,255, + 28,255,28,56,28,56,28,56,56,56,120,63,240,63,192,12, + 18,36,14,1,0,14,32,31,192,35,128,0,0,224,112,240, + 112,240,112,248,112,252,112,236,112,238,112,230,112,231,112,227, + 112,225,240,225,240,224,240,224,112,13,18,36,15,1,0,28, + 0,14,0,3,0,0,0,15,128,63,224,120,240,112,112,240, + 120,224,56,224,56,224,56,224,56,240,120,112,112,120,240,63, + 224,15,128,13,18,36,15,1,0,1,192,3,128,6,0,0, + 0,15,128,63,224,120,240,112,112,240,120,224,56,224,56,224, + 56,224,56,240,120,112,112,120,240,63,224,15,128,13,18,36, + 15,1,0,7,0,15,128,29,192,0,0,15,128,63,224,120, + 240,112,112,240,120,224,56,224,56,224,56,224,56,240,120,112, + 112,120,240,63,224,15,128,13,18,36,15,1,0,7,16,15, + 224,17,192,0,0,15,128,63,224,120,240,112,112,240,120,224, + 56,224,56,224,56,224,56,240,120,112,112,120,240,63,224,15, + 128,13,18,36,15,1,0,12,192,12,192,12,192,0,0,15, + 128,63,224,120,240,112,112,240,120,224,56,224,56,224,56,224, + 56,240,120,112,112,120,240,63,224,15,128,10,8,16,11,0, + 1,225,192,115,128,63,0,30,0,30,0,63,0,115,128,225, + 192,15,14,28,15,0,0,7,198,31,252,60,56,56,120,120, + 220,113,156,113,28,115,28,118,28,124,60,56,56,60,120,127, + 240,199,192,12,18,36,14,1,0,28,0,14,0,3,0,0, + 0,224,112,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,112,224,112,112,224,127,224,31,128,12,18,36, + 14,1,0,1,192,3,128,6,0,0,0,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,112,224,127,224,31,128,12,18,36,14,1,0,7,0,15, + 128,29,192,0,0,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,112,224,127,224,31, + 128,12,18,36,14,1,0,25,128,25,128,25,128,0,0,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,112,112,224,127,224,31,128,13,18,36,13,0, + 0,1,192,3,128,6,0,0,0,224,56,224,56,112,112,56, + 224,56,224,29,192,29,192,15,128,7,0,7,0,7,0,7, + 0,7,0,7,0,11,14,28,13,1,0,224,0,224,0,224, + 0,255,0,255,192,225,224,224,224,224,224,225,224,255,192,255, + 0,224,0,224,0,224,0,8,14,14,10,1,0,60,126,231, + 231,231,231,238,238,231,231,231,231,239,238,10,14,28,11,1, + 0,112,0,56,0,12,0,0,0,62,0,127,0,115,128,7, + 128,63,128,123,128,227,128,231,128,251,128,123,192,10,14,28, + 11,1,0,3,128,7,0,12,0,0,0,62,0,127,0,115, + 128,7,128,63,128,123,128,227,128,231,128,251,128,123,192,10, + 14,28,11,1,0,28,0,62,0,119,0,0,0,62,0,127, + 0,115,128,7,128,63,128,123,128,227,128,231,128,251,128,123, + 192,10,14,28,11,1,0,59,0,127,0,110,0,0,0,62, + 0,127,0,115,128,7,128,63,128,123,128,227,128,231,128,251, + 128,123,192,10,14,28,11,1,0,51,0,51,0,51,0,0, + 0,62,0,127,0,115,128,7,128,63,128,123,128,227,128,231, + 128,251,128,123,192,10,14,28,11,1,0,60,0,102,0,102, + 0,60,0,62,0,127,0,115,128,7,128,63,128,123,128,227, + 128,231,128,251,128,123,192,14,10,20,16,1,0,61,240,127, + 248,103,28,15,28,63,252,119,0,231,0,239,156,255,252,121, + 240,9,15,30,10,1,251,30,0,127,128,115,128,224,0,224, + 0,224,0,224,0,115,128,127,128,30,0,24,0,28,0,6, + 0,62,0,60,0,9,14,28,11,1,0,112,0,56,0,12, + 0,0,0,30,0,127,0,115,128,225,128,255,128,255,128,224, + 0,115,128,127,128,30,0,9,14,28,11,1,0,3,128,7, + 0,12,0,0,0,30,0,127,0,115,128,225,128,255,128,255, + 128,224,0,115,128,127,128,30,0,9,14,28,11,1,0,28, + 0,62,0,119,0,0,0,30,0,127,0,115,128,225,128,255, + 128,255,128,224,0,115,128,127,128,30,0,9,14,28,11,1, + 0,51,0,51,0,51,0,0,0,30,0,127,0,115,128,225, + 128,255,128,255,128,224,0,115,128,127,128,30,0,5,14,14, + 5,255,0,224,112,24,0,56,56,56,56,56,56,56,56,56, + 56,5,14,14,5,1,0,56,112,192,0,224,224,224,224,224, + 224,224,224,224,224,7,14,14,5,255,0,56,124,238,0,56, + 56,56,56,56,56,56,56,56,56,5,14,14,5,0,0,216, + 216,216,0,112,112,112,112,112,112,112,112,112,112,10,14,28, + 12,1,0,96,0,55,0,60,0,102,0,31,0,127,128,115, + 128,225,192,225,192,225,192,225,192,115,128,127,128,30,0,9, + 14,28,11,1,0,59,0,127,0,110,0,0,0,239,0,255, + 128,243,128,227,128,227,128,227,128,227,128,227,128,227,128,227, + 128,10,14,28,12,1,0,112,0,56,0,12,0,0,0,30, + 0,127,128,115,128,225,192,225,192,225,192,225,192,115,128,127, + 128,30,0,10,14,28,12,1,0,3,128,7,0,12,0,0, + 0,30,0,127,128,115,128,225,192,225,192,225,192,225,192,115, + 128,127,128,30,0,10,14,28,12,1,0,28,0,62,0,119, + 0,0,0,30,0,127,128,115,128,225,192,225,192,225,192,225, + 192,115,128,127,128,30,0,10,14,28,12,1,0,59,0,127, + 0,110,0,0,0,30,0,127,128,115,128,225,192,225,192,225, + 192,225,192,115,128,127,128,30,0,10,14,28,12,1,0,51, + 0,51,0,51,0,0,0,30,0,127,128,115,128,225,192,225, + 192,225,192,225,192,115,128,127,128,30,0,9,8,16,11,1, + 1,28,0,28,0,0,0,255,128,255,128,0,0,28,0,28, + 0,12,10,20,12,0,0,15,48,63,224,57,192,115,224,119, + 224,126,224,124,224,57,192,127,192,207,0,9,14,28,11,1, + 0,112,0,56,0,12,0,0,0,227,128,227,128,227,128,227, + 128,227,128,227,128,227,128,231,128,255,128,123,128,9,14,28, + 11,1,0,3,128,7,0,12,0,0,0,227,128,227,128,227, + 128,227,128,227,128,227,128,227,128,231,128,255,128,123,128,9, + 14,28,11,1,0,28,0,62,0,119,0,0,0,227,128,227, + 128,227,128,227,128,227,128,227,128,227,128,231,128,255,128,123, + 128,9,14,28,11,1,0,51,0,51,0,51,0,0,0,227, + 128,227,128,227,128,227,128,227,128,227,128,227,128,231,128,255, + 128,123,128,9,18,36,11,1,252,7,0,14,0,24,0,0, + 0,227,128,227,128,227,128,119,0,119,0,119,0,62,0,62, + 0,28,0,28,0,28,0,24,0,120,0,112,0,10,18,36, + 12,1,252,224,0,224,0,224,0,224,0,239,0,255,128,243, + 128,225,192,225,192,225,192,225,192,243,128,255,128,239,0,224, + 0,224,0,224,0,224,0,9,18,36,11,1,252,51,0,51, + 0,51,0,0,0,227,128,227,128,227,128,119,0,119,0,119, + 0,62,0,62,0,28,0,28,0,28,0,24,0,120,0,112, + 0}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--20-140-100-100-P-105-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 13 + Calculated Max Values w=16 h=18 x= 2 y=11 dx=18 dy= 0 ascent=14 len=34 + Font Bounding box w=22 h=29 x=-2 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =14 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB14r[2548] U8G_SECTION(".progmem.u8g_font_helvB14r") = { + 0,22,29,254,249,14,3,23,6,234,32,127,252,14,252,14, + 252,0,0,0,5,0,1,3,14,14,5,1,0,224,224,224, + 224,224,224,224,224,192,192,0,224,224,224,5,5,5,7,1, + 9,216,216,216,216,144,11,13,26,11,0,0,13,128,13,128, + 13,128,127,224,127,224,27,0,27,0,27,0,255,192,255,192, + 54,0,54,0,54,0,10,16,32,10,0,254,4,0,63,0, + 127,128,229,128,228,0,228,0,124,0,63,0,15,128,9,192, + 233,192,233,192,127,128,63,0,8,0,8,0,13,13,26,16, + 1,0,120,96,252,96,204,192,204,128,253,128,123,0,2,0, + 6,240,13,248,9,152,25,152,49,248,48,240,13,14,28,14, + 1,0,30,0,63,0,115,128,97,128,115,0,62,0,28,96, + 126,96,231,224,195,192,193,192,227,224,127,112,62,56,2,5, + 5,4,1,9,192,192,192,192,128,6,18,18,7,1,252,28, + 56,48,112,96,224,224,224,224,224,224,224,224,96,112,48,56, + 28,6,18,18,7,0,252,224,112,48,56,24,28,28,28,28, + 28,28,28,28,24,56,48,112,224,7,6,6,9,1,8,16, + 214,124,56,108,68,8,8,8,11,1,1,24,24,24,255,255, + 24,24,24,3,6,6,5,1,253,224,224,224,96,192,128,5, + 3,3,6,0,4,248,248,248,3,3,3,5,1,0,224,224, + 224,5,14,14,5,0,0,24,24,24,56,48,48,48,112,96, + 96,224,192,192,192,9,13,26,10,0,0,28,0,127,0,119, + 0,227,128,227,128,227,128,227,128,227,128,227,128,227,128,119, + 0,127,0,28,0,6,13,13,10,1,0,28,60,252,252,28, + 28,28,28,28,28,28,28,28,9,13,26,10,0,0,62,0, + 127,0,227,128,227,128,3,128,7,0,31,0,62,0,120,0, + 112,0,224,0,255,128,255,128,9,13,26,10,0,0,62,0, + 127,0,231,0,227,0,7,0,30,0,31,0,7,128,3,128, + 227,128,231,128,127,0,62,0,9,13,26,10,0,0,7,0, + 15,0,31,0,63,0,55,0,119,0,103,0,231,0,255,128, + 255,128,7,0,7,0,7,0,9,13,26,10,0,0,255,0, + 255,0,224,0,224,0,254,0,255,0,231,128,3,128,3,128, + 227,128,231,128,255,0,126,0,9,13,26,10,0,0,63,0, + 127,128,113,128,224,0,238,0,255,0,243,128,225,128,225,128, + 225,128,243,128,127,0,62,0,9,13,26,10,0,0,255,128, + 255,128,3,128,7,0,14,0,14,0,28,0,28,0,56,0, + 56,0,112,0,112,0,112,0,9,13,26,10,0,0,62,0, + 127,0,227,128,227,128,227,128,127,0,62,0,119,0,227,128, + 227,128,227,128,127,0,62,0,9,13,26,10,0,0,62,0, + 127,0,231,128,195,128,195,128,195,128,231,128,127,128,59,128, + 3,128,199,0,255,0,126,0,3,10,10,6,1,0,224,224, + 224,0,0,0,0,224,224,224,3,13,13,6,1,253,224,224, + 224,0,0,0,0,224,224,224,96,192,128,9,9,18,11,1, + 0,3,128,15,128,62,0,120,0,224,0,120,0,62,0,15, + 128,3,128,9,5,10,11,1,3,255,128,255,128,0,0,255, + 128,255,128,9,9,18,11,1,0,224,0,248,0,62,0,15, + 0,3,128,15,0,62,0,248,0,224,0,8,14,14,10,1, + 0,126,255,231,231,14,30,28,56,56,56,0,56,56,56,16, + 17,34,18,1,253,7,240,31,252,60,30,112,6,99,183,231, + 243,198,99,204,99,204,195,204,198,204,198,239,252,231,184,112, + 0,60,0,31,240,7,240,12,14,28,14,1,0,15,0,15, + 0,31,128,25,128,25,128,57,192,57,192,48,192,112,224,127, + 224,127,224,224,112,224,112,224,112,11,14,28,14,2,0,254, + 0,255,128,227,192,225,192,225,192,227,128,255,128,255,192,225, + 224,224,224,224,224,225,224,255,192,255,0,12,14,28,14,1, + 0,15,128,63,224,120,224,112,112,240,112,224,0,224,0,224, + 0,224,0,240,112,112,112,120,224,63,224,15,128,12,14,28, + 14,1,0,255,0,255,192,225,224,224,224,224,112,224,112,224, + 112,224,112,224,112,224,112,224,224,225,224,255,192,255,0,10, + 14,28,13,2,0,255,192,255,192,224,0,224,0,224,0,224, + 0,255,128,255,128,224,0,224,0,224,0,224,0,255,192,255, + 192,10,14,28,12,1,0,255,192,255,192,224,0,224,0,224, + 0,224,0,255,128,255,128,224,0,224,0,224,0,224,0,224, + 0,224,0,12,14,28,15,1,0,15,128,63,224,120,224,112, + 112,240,112,224,0,224,0,227,240,227,240,240,112,112,112,120, + 240,63,240,31,176,12,14,28,14,1,0,224,112,224,112,224, + 112,224,112,224,112,224,112,255,240,255,240,224,112,224,112,224, + 112,224,112,224,112,224,112,3,14,14,5,1,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,9,14,28,10,0, + 0,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,227,128,227,128,247,128,127,0,62,0,13,14,28, + 14,1,0,224,240,225,224,227,192,231,128,239,0,254,0,252, + 0,254,0,239,0,231,128,227,192,225,224,224,240,224,120,9, + 14,28,11,1,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,255,128,255, + 128,14,14,28,16,1,0,224,28,224,28,240,60,240,60,248, + 124,248,124,248,124,236,220,236,220,236,220,231,156,231,156,227, + 28,227,28,12,14,28,14,1,0,224,112,240,112,240,112,248, + 112,252,112,236,112,238,112,230,112,231,112,227,112,225,240,225, + 240,224,240,224,112,13,14,28,15,1,0,15,128,63,224,120, + 240,112,112,240,120,224,56,224,56,224,56,224,56,240,120,112, + 112,120,240,63,224,15,128,11,14,28,13,1,0,255,0,255, + 192,225,224,224,224,224,224,224,224,225,224,255,192,255,0,224, + 0,224,0,224,0,224,0,224,0,13,15,30,15,1,255,15, + 128,63,224,120,240,112,112,240,120,224,56,224,56,224,56,224, + 56,243,120,115,240,121,240,63,224,15,240,0,48,12,14,28, + 14,1,0,255,0,255,192,225,224,224,224,224,224,225,224,255, + 192,255,128,225,192,224,224,224,224,224,224,224,224,224,240,11, + 14,28,13,1,0,63,128,127,192,241,224,224,224,240,0,126, + 0,63,128,15,192,1,224,224,224,224,224,241,224,127,192,63, + 128,11,14,28,11,0,0,255,224,255,224,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,12,14,28,14,1,0,224,112,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,112, + 224,127,224,31,128,13,14,28,13,0,0,224,56,224,56,112, + 112,112,112,48,96,56,224,56,224,29,192,29,192,13,128,15, + 128,15,128,7,0,7,0,15,14,28,17,1,0,227,142,227, + 142,227,142,227,142,115,156,115,156,115,156,118,220,54,216,54, + 216,62,248,28,112,28,112,28,112,12,14,28,12,0,0,224, + 112,224,112,112,224,121,224,25,128,31,128,15,0,31,128,25, + 128,57,192,112,224,112,224,224,112,224,112,13,14,28,13,0, + 0,224,56,224,56,112,112,56,224,56,224,29,192,29,192,15, + 128,7,0,7,0,7,0,7,0,7,0,7,0,10,14,28, + 12,1,0,255,192,255,192,1,192,3,128,7,0,7,0,14, + 0,28,0,56,0,56,0,112,0,224,0,255,192,255,192,5, + 18,18,6,1,252,248,248,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,248,248,5,14,14,5,0,0,192,192,192, + 224,96,96,96,112,48,48,56,24,24,24,5,18,18,6,0, + 252,248,248,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,248,248,10,7,14,10,0,6,12,0,30,0,30,0,51, + 0,115,128,97,128,225,192,10,2,4,10,0,252,255,192,255, + 192,5,3,3,5,0,11,224,112,56,10,10,20,11,1,0, + 62,0,127,0,99,128,7,128,63,128,123,128,227,128,231,128, + 251,128,123,192,10,14,28,12,1,0,224,0,224,0,224,0, + 224,0,239,0,255,128,243,128,225,192,225,192,225,192,225,192, + 243,128,255,128,239,0,9,10,20,11,1,0,30,0,127,128, + 115,128,224,0,224,0,224,0,224,0,115,128,127,128,30,0, + 10,14,28,12,1,0,1,192,1,192,1,192,1,192,61,192, + 127,192,115,192,225,192,225,192,225,192,225,192,115,192,127,192, + 61,192,9,10,20,11,1,0,30,0,127,0,115,128,225,128, + 255,128,255,128,224,0,115,128,127,128,30,0,7,14,14,7, + 0,0,30,62,56,56,254,254,56,56,56,56,56,56,56,56, + 10,14,28,12,1,252,61,192,127,192,115,192,225,192,225,192, + 225,192,225,192,115,192,127,192,61,192,1,192,115,128,127,128, + 30,0,9,14,28,11,1,0,224,0,224,0,224,0,224,0, + 239,0,255,128,243,128,227,128,227,128,227,128,227,128,227,128, + 227,128,227,128,3,14,14,5,1,0,224,224,224,0,224,224, + 224,224,224,224,224,224,224,224,5,18,18,5,255,252,56,56, + 56,0,56,56,56,56,56,56,56,56,56,56,56,56,248,240, + 9,14,28,10,1,0,224,0,224,0,224,0,224,0,231,0, + 238,0,252,0,248,0,248,0,252,0,238,0,231,0,231,128, + 227,128,3,14,14,5,1,0,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,15,10,20,17,1,0,239,60,255,254, + 243,206,227,142,227,142,227,142,227,142,227,142,227,142,227,142, + 9,10,20,11,1,0,239,0,255,128,243,128,227,128,227,128, + 227,128,227,128,227,128,227,128,227,128,10,10,20,12,1,0, + 30,0,127,128,115,128,225,192,225,192,225,192,225,192,115,128, + 127,128,30,0,10,14,28,12,1,252,239,0,255,128,243,128, + 225,192,225,192,225,192,225,192,243,128,255,128,239,0,224,0, + 224,0,224,0,224,0,10,14,28,12,1,252,61,192,127,192, + 115,192,225,192,225,192,225,192,225,192,115,192,127,192,61,192, + 1,192,1,192,1,192,1,192,6,10,10,7,1,0,236,252, + 252,224,224,224,224,224,224,224,9,10,20,11,1,0,63,0, + 127,128,227,128,224,0,255,0,63,128,3,128,227,128,255,0, + 126,0,6,13,13,6,0,0,112,112,112,252,252,112,112,112, + 112,112,112,124,60,9,10,20,11,1,0,227,128,227,128,227, + 128,227,128,227,128,227,128,227,128,231,128,255,128,123,128,9, + 10,20,9,0,0,227,128,227,128,227,128,119,0,119,0,119, + 0,62,0,62,0,28,0,28,0,15,10,20,15,0,0,227, + 142,227,142,227,142,115,156,119,220,118,220,62,248,60,120,28, + 112,28,112,9,10,20,11,1,0,227,128,227,128,119,0,62, + 0,28,0,62,0,119,0,119,0,227,128,227,128,9,14,28, + 11,1,252,227,128,227,128,227,128,119,0,119,0,119,0,62, + 0,62,0,28,0,28,0,28,0,24,0,120,0,112,0,8, + 10,10,10,1,0,255,255,7,14,28,56,112,224,255,255,7, + 18,18,8,1,252,14,28,56,56,56,56,56,112,224,112,56, + 56,56,56,56,56,28,14,2,18,18,5,1,252,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,7, + 18,18,8,0,252,224,112,56,56,56,56,56,28,14,28,56, + 56,56,56,56,56,112,224,9,3,6,11,1,4,121,128,255, + 128,207,0,255}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--25-180-100-100-P-138-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 19, '1' Height: 18 + Calculated Max Values w=22 h=24 x= 3 y=17 dx=24 dy= 0 ascent=24 len=72 + Font Bounding box w=28 h=37 x=-2 y=-8 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =19 descent=-5 + X Font ascent =19 descent=-5 + Max Font ascent =24 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB18[7527] U8G_SECTION(".progmem.u8g_font_helvB18") = { + 0,28,37,254,248,19,4,35,9,107,32,255,251,24,251,19, + 251,0,0,0,6,0,1,3,19,19,7,2,0,224,224,224, + 224,224,224,224,224,224,224,224,192,192,192,0,0,224,224,224, + 5,6,6,9,2,13,216,216,216,216,216,144,12,18,36,14, + 1,0,12,192,12,192,12,192,12,192,12,192,127,240,127,240, + 25,128,25,128,25,128,25,128,255,224,255,224,51,0,51,0, + 51,0,51,0,51,0,12,21,42,13,0,254,6,0,63,128, + 127,224,246,224,230,112,230,112,246,0,126,0,62,0,15,0, + 7,192,7,224,6,240,230,112,230,112,230,112,246,240,127,224, + 31,192,6,0,6,0,21,18,54,22,0,0,0,7,0,62, + 7,0,127,14,0,227,142,0,193,156,0,193,156,0,227,184, + 0,127,56,0,62,112,0,0,112,0,0,227,224,0,231,240, + 1,206,56,1,204,24,3,140,24,3,142,56,7,7,240,7, + 3,224,16,18,36,18,1,0,15,128,31,192,61,224,56,224, + 56,224,56,224,29,192,15,128,31,0,63,156,123,220,113,252, + 224,248,224,112,224,248,241,252,127,206,31,135,2,6,6,6, + 2,13,192,192,192,192,192,128,6,24,24,8,1,251,12,28, + 56,56,112,112,96,224,224,224,224,224,224,224,224,224,224,96, + 112,112,56,56,28,12,6,24,24,8,1,251,192,224,112,112, + 56,56,24,28,28,28,28,28,28,28,28,28,28,24,56,56, + 112,112,224,192,8,7,7,10,1,12,24,24,219,255,60,102, + 102,12,12,24,15,1,1,6,0,6,0,6,0,6,0,6, + 0,255,240,255,240,6,0,6,0,6,0,6,0,6,0,3, + 6,6,7,2,253,224,224,224,96,96,192,7,3,3,8,0, + 6,254,254,254,3,3,3,7,2,0,224,224,224,7,19,19, + 8,1,0,6,6,6,12,12,12,24,24,24,24,48,48,48, + 96,96,96,192,192,192,12,18,36,13,0,0,31,128,63,192, + 121,224,112,224,112,224,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,112,224,112,224,121,224,63,192,31,128, + 7,18,18,13,2,0,14,14,30,254,254,14,14,14,14,14, + 14,14,14,14,14,14,14,14,12,18,36,13,0,0,31,0, + 127,192,113,224,224,224,224,112,224,112,0,112,0,224,1,224, + 3,192,7,128,31,0,60,0,120,0,240,0,224,0,255,240, + 255,240,12,18,36,13,0,0,31,0,127,192,113,192,224,224, + 224,224,224,224,0,224,1,192,15,128,15,224,0,224,0,112, + 0,112,224,112,224,240,113,224,127,224,31,128,12,18,36,13, + 0,0,1,192,3,192,3,192,7,192,7,192,13,192,29,192, + 25,192,49,192,113,192,97,192,225,192,255,240,255,240,1,192, + 1,192,1,192,1,192,12,18,36,13,0,0,127,224,127,224, + 112,0,112,0,112,0,112,0,127,128,127,192,113,224,0,224, + 0,112,0,112,0,112,224,112,224,240,241,224,127,192,31,128, + 12,18,36,13,0,0,15,128,63,224,120,224,112,112,224,112, + 224,0,224,0,239,0,255,192,249,224,240,224,224,112,224,112, + 224,112,112,224,121,224,63,192,31,128,12,18,36,13,0,0, + 255,240,255,240,0,240,0,224,1,192,1,192,3,128,3,128, + 7,0,7,0,14,0,14,0,30,0,28,0,28,0,60,0, + 56,0,56,0,12,18,36,13,0,0,15,0,63,192,57,192, + 112,224,112,224,112,224,112,224,57,192,31,128,63,192,112,224, + 224,112,224,112,224,112,224,112,112,224,127,224,31,128,12,18, + 36,13,0,0,31,128,127,192,121,224,240,224,224,112,224,112, + 224,112,224,112,240,240,121,240,127,240,31,112,0,112,0,112, + 224,224,243,224,127,192,31,0,3,14,14,7,2,0,224,224, + 224,0,0,0,0,0,0,0,0,224,224,224,3,17,17,7, + 2,253,224,224,224,0,0,0,0,0,0,0,0,224,224,224, + 96,96,192,13,12,24,15,0,1,0,56,0,248,3,224,15, + 128,62,0,240,0,240,0,62,0,15,128,3,224,0,248,0, + 56,10,5,10,14,2,5,255,192,255,192,0,0,255,192,255, + 192,13,12,24,14,1,1,224,0,248,0,62,0,15,128,3, + 224,0,120,0,120,3,224,15,128,62,0,248,0,224,0,11, + 19,38,15,2,0,31,128,127,192,121,224,240,224,224,224,225, + 224,1,192,3,192,7,128,7,0,14,0,14,0,14,0,14, + 0,0,0,0,0,14,0,14,0,14,0,22,22,66,24,1, + 252,1,255,0,7,255,192,15,129,240,30,0,120,60,0,56, + 120,125,156,112,255,156,241,199,28,227,135,28,227,14,28,231, + 14,56,231,12,56,231,28,112,231,28,112,227,157,224,243,255, + 192,113,247,0,120,0,0,60,0,0,31,7,0,15,255,0, + 3,252,0,16,19,38,18,1,0,3,192,3,192,7,224,7, + 224,14,96,14,112,14,112,28,56,28,56,28,56,56,28,56, + 28,63,252,127,254,112,14,112,14,224,7,224,7,224,7,15, + 19,38,18,2,0,255,224,255,248,224,120,224,28,224,28,224, + 28,224,28,224,56,255,240,255,248,224,28,224,14,224,14,224, + 14,224,14,224,30,224,124,255,248,255,224,16,19,38,18,1, + 0,7,240,31,252,62,62,120,15,112,7,240,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,240,7,112,7,120, + 15,62,62,31,252,7,240,16,19,38,19,2,0,255,224,255, + 248,224,124,224,30,224,14,224,15,224,7,224,7,224,7,224, + 7,224,7,224,7,224,7,224,15,224,14,224,30,224,124,255, + 248,255,224,13,19,38,16,2,0,255,240,255,240,224,0,224, + 0,224,0,224,0,224,0,224,0,255,224,255,224,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,255,248,255,248,12, + 19,38,15,2,0,255,240,255,240,224,0,224,0,224,0,224, + 0,224,0,224,0,255,224,255,224,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,17,19,57,19,1, + 0,7,240,0,31,252,0,62,62,0,120,15,0,112,7,0, + 240,0,0,224,0,0,224,0,0,224,0,0,224,127,128,224, + 127,128,224,3,128,224,3,128,240,3,128,112,7,128,120,15, + 128,62,63,128,31,251,128,7,243,128,15,19,38,19,2,0, + 224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14, + 255,254,255,254,224,14,224,14,224,14,224,14,224,14,224,14, + 224,14,224,14,224,14,3,19,19,7,2,0,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,11, + 19,38,14,1,0,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,224,224,224, + 224,224,224,224,224,113,224,127,192,63,128,14,19,38,18,2, + 0,224,60,224,120,224,240,225,224,227,192,231,128,239,0,254, + 0,254,0,255,0,247,128,227,128,225,192,225,224,224,224,224, + 112,224,120,224,56,224,60,12,19,38,15,2,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,255, + 240,255,240,19,19,57,23,2,0,224,0,224,240,1,224,240, + 1,224,248,3,224,248,3,224,252,7,224,236,6,224,238,14, + 224,230,12,224,231,28,224,231,28,224,227,24,224,227,184,224, + 227,184,224,225,240,224,225,240,224,224,224,224,224,224,224,224, + 224,224,15,19,38,19,2,0,224,14,240,14,240,14,248,14, + 248,14,252,14,238,14,238,14,231,14,227,142,227,142,225,206, + 224,206,224,238,224,126,224,62,224,62,224,30,224,14,17,19, + 57,19,1,0,7,240,0,31,252,0,62,62,0,120,15,0, + 112,7,0,240,7,128,224,3,128,224,3,128,224,3,128,224, + 3,128,224,3,128,224,3,128,224,3,128,240,7,128,112,7, + 0,120,15,0,62,62,0,31,252,0,7,240,0,14,19,38, + 17,2,0,255,224,255,248,224,56,224,28,224,28,224,28,224, + 28,224,56,255,248,255,240,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,17,20,60,19,1,255,7, + 240,0,31,252,0,62,62,0,120,15,0,112,7,0,240,7, + 128,224,3,128,224,3,128,224,3,128,224,3,128,224,3,128, + 224,3,128,224,3,128,240,39,128,112,119,0,120,63,0,62, + 30,0,31,254,0,7,247,0,0,2,0,14,19,38,17,2, + 0,255,224,255,248,224,56,224,28,224,28,224,28,224,28,224, + 56,255,248,255,240,224,120,224,56,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,14,19,38,17,2,0,15,192,63, + 240,120,248,240,56,224,56,224,0,240,0,124,0,63,192,7, + 240,0,248,0,60,0,28,224,28,224,28,224,60,248,248,127, + 240,31,192,15,19,38,15,0,0,255,254,255,254,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,15, + 19,38,19,2,0,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,240,30,112,28,124,124,63,248,15,224,16,19,38,18,1, + 0,224,7,224,7,240,15,112,14,120,30,56,28,56,28,60, + 60,28,56,28,56,30,120,14,112,14,112,14,112,7,224,7, + 224,3,192,3,192,3,192,21,19,57,23,1,0,224,112,56, + 224,112,56,224,112,56,224,112,56,112,248,112,112,248,112,112, + 216,112,113,220,112,49,220,96,57,220,224,57,140,224,59,142, + 224,27,142,192,27,142,192,31,7,192,31,7,192,14,3,128, + 14,3,128,14,3,128,16,19,38,18,1,0,224,7,240,15, + 120,30,56,28,28,56,14,112,15,240,7,224,3,192,3,192, + 7,224,15,240,14,112,28,56,60,60,56,28,112,14,240,15, + 224,7,15,19,38,17,1,0,224,14,240,14,112,28,120,28, + 56,56,60,56,28,112,28,112,14,224,14,224,7,192,7,192, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,14,19, + 38,16,1,0,255,252,255,252,0,60,0,120,0,240,1,224, + 1,224,3,192,7,128,7,128,15,0,30,0,30,0,60,0, + 56,0,120,0,240,0,255,252,255,252,5,24,24,8,1,251, + 248,248,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,248,248,7,19,19,8,0,0,192,192, + 192,96,96,96,48,48,48,48,24,24,24,12,12,12,6,6, + 6,5,24,24,8,2,251,248,248,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,248,248,11, + 9,18,14,1,10,14,0,14,0,31,0,27,0,59,128,113, + 192,113,192,224,224,224,224,14,2,4,14,0,251,255,252,255, + 252,6,4,4,8,1,15,224,112,56,28,12,14,28,14,1, + 0,31,128,63,192,113,224,112,224,0,224,7,224,63,224,124, + 224,240,224,224,224,225,224,243,224,127,240,62,112,12,19,38, + 15,2,0,224,0,224,0,224,0,224,0,224,0,239,128,255, + 192,249,224,240,224,224,112,224,112,224,112,224,112,224,112,224, + 112,240,224,249,224,255,192,239,128,11,14,28,13,1,0,31, + 128,63,192,121,224,112,224,224,0,224,0,224,0,224,0,224, + 0,224,0,112,224,121,224,63,192,31,128,12,19,38,15,1, + 0,0,112,0,112,0,112,0,112,0,112,31,112,63,240,121, + 240,112,240,224,112,224,112,224,112,224,112,224,112,224,112,112, + 240,121,240,63,240,31,112,12,14,28,14,1,0,15,0,63, + 192,121,224,112,224,224,112,224,112,255,240,255,240,224,0,224, + 0,112,112,120,240,63,224,15,128,7,19,19,9,1,0,30, + 62,56,56,56,254,254,56,56,56,56,56,56,56,56,56,56, + 56,56,12,19,38,15,1,251,31,112,63,240,121,240,112,240, + 224,112,224,112,224,112,224,112,224,112,224,112,112,240,121,240, + 63,240,31,112,0,112,224,112,240,224,127,224,31,128,11,19, + 38,15,2,0,224,0,224,0,224,0,224,0,224,0,239,0, + 255,192,241,192,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,3,19,19,7,2,0, + 224,224,224,0,0,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,5,24,24,7,0,251,56,56,56,0,0,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,248, + 240,11,19,38,14,2,0,224,0,224,0,224,0,224,0,224, + 0,225,192,227,192,231,128,239,0,254,0,252,0,254,0,239, + 0,231,0,231,128,227,192,225,192,225,224,224,224,3,19,19, + 7,2,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,17,14,42,21,2,0,239,62,0,255, + 255,0,243,231,128,225,195,128,225,195,128,225,195,128,225,195, + 128,225,195,128,225,195,128,225,195,128,225,195,128,225,195,128, + 225,195,128,225,195,128,11,14,28,15,2,0,239,128,255,192, + 241,192,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,12,14,28,14,1,0,15,0, + 63,192,121,224,112,224,224,112,224,112,224,112,224,112,224,112, + 224,112,112,224,121,224,63,192,15,0,12,19,38,15,2,251, + 239,128,255,192,249,224,240,224,224,112,224,112,224,112,224,112, + 224,112,224,112,240,224,249,224,255,192,239,128,224,0,224,0, + 224,0,224,0,224,0,12,19,38,15,1,251,31,112,63,240, + 121,240,112,240,224,112,224,112,224,112,224,112,224,112,224,112, + 112,240,121,240,63,240,31,112,0,112,0,112,0,112,0,112, + 0,112,7,14,14,10,2,0,238,254,254,240,224,224,224,224, + 224,224,224,224,224,224,11,14,28,13,1,0,63,0,127,128, + 243,192,225,192,224,0,252,0,127,128,15,192,1,224,224,224, + 224,224,241,224,127,192,63,128,7,18,18,9,1,0,56,56, + 56,56,254,254,56,56,56,56,56,56,56,56,56,56,62,30, + 11,14,28,15,2,0,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,225,224,115,224,126,224, + 28,224,12,14,28,14,1,0,224,112,224,112,224,112,112,224, + 112,224,112,224,57,192,57,192,57,192,31,128,31,128,15,0, + 15,0,15,0,19,14,42,19,0,0,224,224,224,224,224,224, + 96,224,192,113,241,192,113,241,192,49,177,128,51,185,128,59, + 187,128,27,27,0,31,31,0,31,31,0,14,14,0,14,14, + 0,14,14,0,11,14,28,13,1,0,224,224,241,224,113,192, + 59,128,63,128,31,0,14,0,31,0,31,0,59,128,123,192, + 113,192,241,224,224,224,13,19,38,15,1,251,224,56,224,56, + 112,56,120,112,56,112,60,240,28,224,28,224,15,192,15,192, + 7,192,7,128,3,128,3,128,7,0,7,0,14,0,62,0, + 60,0,11,14,28,13,1,0,255,224,255,224,1,192,3,128, + 7,128,15,0,14,0,30,0,60,0,56,0,112,0,240,0, + 255,224,255,224,7,24,24,10,1,251,14,28,56,56,56,56, + 56,56,56,56,112,224,224,112,56,56,56,56,56,56,56,56, + 28,14,2,24,24,7,3,251,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 7,24,24,10,2,251,224,112,56,56,56,56,56,56,56,56, + 28,14,14,28,56,56,56,56,56,56,56,56,112,224,11,4, + 8,14,1,5,120,224,254,224,239,224,227,192,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0, + 6,0,1,3,19,19,7,2,251,224,224,224,0,0,96,96, + 96,224,224,224,224,224,224,224,224,224,224,224,11,18,36,14, + 1,254,1,128,1,128,31,128,63,192,123,224,115,96,227,0, + 230,0,230,0,230,0,230,0,236,0,236,224,125,224,127,192, + 63,128,24,0,24,0,13,18,36,14,1,0,31,128,63,192, + 112,224,112,224,112,0,120,0,56,0,28,0,255,192,255,192, + 28,0,28,0,28,0,56,0,56,0,127,56,255,248,241,240, + 12,12,24,14,1,3,192,48,239,112,127,224,57,192,112,224, + 112,224,112,224,112,224,57,192,127,224,239,112,192,48,13,18, + 36,14,0,0,224,56,224,56,112,112,112,112,56,224,56,224, + 29,192,29,192,127,240,127,240,7,0,127,240,127,240,7,0, + 7,0,7,0,7,0,7,0,2,24,24,7,3,251,192,192, + 192,192,192,192,192,192,192,192,0,0,0,0,192,192,192,192, + 192,192,192,192,192,192,12,24,48,14,1,251,31,128,63,192, + 121,224,112,224,120,224,60,0,30,0,127,0,247,128,227,192, + 225,224,224,224,112,112,120,112,60,112,30,224,15,192,7,128, + 3,192,113,224,112,224,121,224,63,192,31,128,7,2,2,9, + 1,16,238,238,19,19,57,19,0,0,1,240,0,15,254,0, + 30,15,0,56,3,128,112,1,192,97,240,192,227,184,224,198, + 12,96,198,0,96,198,0,96,198,0,96,198,12,96,227,184, + 224,97,240,192,112,1,192,56,3,128,30,15,0,15,254,0, + 1,240,0,8,12,12,10,1,7,124,254,198,30,126,230,198, + 255,123,0,255,255,10,8,16,13,1,3,29,192,59,128,119, + 0,238,0,238,0,119,0,59,128,29,192,12,7,14,15,1, + 4,255,240,255,240,0,48,0,48,0,48,0,48,0,48,7, + 3,3,8,0,6,254,254,254,19,19,57,19,0,0,3,248, + 0,15,254,0,28,15,0,56,3,128,115,249,192,99,28,192, + 227,12,224,195,12,96,195,24,96,195,240,96,195,48,96,195, + 24,96,227,24,96,99,12,224,112,0,192,56,1,192,30,3, + 128,15,254,0,3,248,0,7,2,2,9,1,17,254,254,8, + 7,7,9,0,11,60,102,195,195,195,102,60,11,13,26,15, + 2,0,14,0,14,0,14,0,14,0,255,224,255,224,14,0, + 14,0,14,0,14,0,0,0,255,224,255,224,6,10,10,7, + 0,8,120,252,204,12,28,120,224,192,252,252,6,10,10,7, + 0,8,120,252,204,12,56,56,12,204,252,120,6,4,4,8, + 1,15,28,56,112,224,11,19,38,15,2,251,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 225,224,243,224,254,224,236,224,224,0,224,0,224,0,224,0, + 224,0,11,24,48,13,1,251,15,224,63,224,124,192,124,192, + 252,192,252,192,252,192,252,192,252,192,124,192,124,192,60,192, + 28,192,12,192,12,192,12,192,12,192,12,192,12,192,12,192, + 12,192,12,192,12,192,12,192,3,3,3,7,2,6,224,224, + 224,6,6,6,8,1,251,112,120,28,28,252,120,4,10,10, + 7,1,8,48,48,240,240,48,48,48,48,48,48,8,12,12, + 10,1,7,60,126,231,195,195,195,231,126,60,0,255,255,10, + 8,16,13,1,3,238,0,119,0,59,128,29,192,29,192,59, + 128,119,0,238,0,17,18,54,19,1,0,48,24,0,48,24, + 0,240,48,0,240,48,0,48,96,0,48,96,0,48,192,0, + 48,192,0,49,134,0,49,142,0,3,30,0,3,30,0,6, + 54,0,6,102,0,12,127,128,12,127,128,24,6,0,24,6, + 0,16,18,36,19,1,0,48,24,48,24,240,48,240,48,48, + 96,48,96,48,192,48,192,49,158,49,191,3,51,3,3,6, + 7,6,30,12,56,12,48,24,63,24,63,17,18,54,19,1, + 0,120,24,0,252,24,0,204,48,0,12,48,0,56,96,0, + 56,96,0,12,192,0,204,192,0,253,134,0,121,142,0,3, + 30,0,3,30,0,6,54,0,6,102,0,12,127,128,12,127, + 128,24,6,0,24,6,0,11,19,38,15,2,251,14,0,14, + 0,14,0,0,0,0,0,14,0,14,0,14,0,14,0,28, + 0,60,0,120,0,112,0,240,224,224,224,225,224,243,192,127, + 192,63,0,16,24,48,18,1,0,14,0,7,0,3,128,1, + 192,0,0,3,192,3,192,7,224,7,224,14,96,14,112,14, + 112,28,56,28,56,28,56,56,28,56,28,63,252,127,254,112, + 14,112,14,224,7,224,7,224,7,16,24,48,18,1,0,0, + 112,0,224,1,192,3,128,0,0,3,192,3,192,7,224,7, + 224,14,96,14,112,14,112,28,56,28,56,28,56,56,28,56, + 28,63,252,127,254,112,14,112,14,224,7,224,7,224,7,16, + 24,48,18,1,0,1,192,3,224,7,112,14,56,0,0,3, + 192,3,192,7,224,7,224,14,96,14,112,14,112,28,56,28, + 56,28,56,56,28,56,28,63,252,127,254,112,14,112,14,224, + 7,224,7,224,7,16,23,46,18,1,0,7,152,15,248,12, + 240,0,0,3,192,3,192,7,224,7,224,14,96,14,112,14, + 112,28,56,28,56,28,56,56,28,56,28,63,252,127,254,112, + 14,112,14,224,7,224,7,224,7,16,23,46,18,1,0,14, + 112,14,112,0,0,0,0,3,192,3,192,7,224,7,224,14, + 96,14,112,14,112,28,56,28,56,28,56,56,28,56,28,63, + 252,127,254,112,14,112,14,224,7,224,7,224,7,16,24,48, + 18,1,0,3,192,6,96,4,32,6,96,3,192,3,192,3, + 192,7,224,7,224,14,96,14,112,14,112,28,56,28,56,28, + 56,56,28,56,28,63,252,127,254,112,14,112,14,224,7,224, + 7,224,7,22,19,57,24,1,0,3,255,248,3,255,248,7, + 112,0,7,112,0,14,112,0,14,112,0,14,112,0,28,112, + 0,28,127,240,28,127,240,56,112,0,56,112,0,63,240,0, + 127,240,0,112,112,0,112,112,0,224,112,0,224,127,252,224, + 127,252,16,24,48,18,1,251,7,240,31,252,62,62,120,15, + 112,7,240,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,240,7,112,7,120,15,62,62,31,252,7,240,3,192, + 0,224,0,224,7,224,3,192,13,24,48,16,2,0,56,0, + 28,0,14,0,7,0,0,0,255,240,255,240,224,0,224,0, + 224,0,224,0,224,0,224,0,255,224,255,224,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,255,248,255,248,13,24, + 48,16,2,0,1,192,3,128,7,0,14,0,0,0,255,240, + 255,240,224,0,224,0,224,0,224,0,224,0,224,0,255,224, + 255,224,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 255,248,255,248,13,24,48,16,2,0,7,0,15,128,29,192, + 56,224,0,0,255,240,255,240,224,0,224,0,224,0,224,0, + 224,0,224,0,255,224,255,224,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,255,248,255,248,13,23,46,16,2,0, + 56,224,56,224,0,0,0,0,255,240,255,240,224,0,224,0, + 224,0,224,0,224,0,224,0,255,224,255,224,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,255,248,255,248,6,24, + 24,7,0,0,224,112,56,28,0,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,6,24,24,7, + 1,0,28,56,112,224,0,112,112,112,112,112,112,112,112,112, + 112,112,112,112,112,112,112,112,112,112,9,24,48,7,255,0, + 28,0,62,0,119,0,227,128,0,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 7,23,23,7,0,0,238,238,0,0,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,19,19,57, + 19,255,0,31,252,0,31,255,0,28,15,128,28,3,192,28, + 1,192,28,1,224,28,0,224,28,0,224,255,192,224,255,192, + 224,28,0,224,28,0,224,28,0,224,28,1,224,28,1,192, + 28,3,192,28,15,128,31,255,0,31,252,0,15,23,46,19, + 2,0,15,48,31,240,25,224,0,0,224,14,240,14,240,14, + 248,14,248,14,252,14,238,14,238,14,231,14,227,142,227,142, + 225,206,224,206,224,238,224,126,224,62,224,62,224,30,224,14, + 17,24,72,19,1,0,14,0,0,7,0,0,3,128,0,1, + 192,0,0,0,0,7,240,0,31,252,0,62,62,0,120,15, + 0,112,7,0,240,7,128,224,3,128,224,3,128,224,3,128, + 224,3,128,224,3,128,224,3,128,224,3,128,240,7,128,112, + 7,0,120,15,0,62,62,0,31,252,0,7,240,0,17,24, + 72,19,1,0,0,56,0,0,112,0,0,224,0,1,192,0, + 0,0,0,7,240,0,31,252,0,62,62,0,120,15,0,112, + 7,0,240,7,128,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,224,3,128,224,3,128,240,7,128,112,7,0, + 120,15,0,62,62,0,31,252,0,7,240,0,17,24,72,19, + 1,0,1,192,0,3,224,0,7,112,0,14,56,0,0,0, + 0,7,240,0,31,252,0,62,62,0,120,15,0,112,7,0, + 240,7,128,224,3,128,224,3,128,224,3,128,224,3,128,224, + 3,128,224,3,128,224,3,128,240,7,128,112,7,0,120,15, + 0,62,62,0,31,252,0,7,240,0,17,23,69,19,1,0, + 7,152,0,15,248,0,12,240,0,0,0,0,7,240,0,31, + 252,0,62,62,0,120,15,0,112,7,0,240,7,128,224,3, + 128,224,3,128,224,3,128,224,3,128,224,3,128,224,3,128, + 224,3,128,240,7,128,112,7,0,120,15,0,62,62,0,31, + 252,0,7,240,0,17,23,69,19,1,0,14,56,0,14,56, + 0,0,0,0,0,0,0,7,240,0,31,252,0,62,62,0, + 120,15,0,112,7,0,240,7,128,224,3,128,224,3,128,224, + 3,128,224,3,128,224,3,128,224,3,128,224,3,128,240,7, + 128,112,7,0,120,15,0,62,62,0,31,252,0,7,240,0, + 12,12,24,15,1,1,64,32,224,112,112,224,57,192,31,128, + 15,0,15,0,31,128,57,192,112,224,224,112,64,32,19,19, + 57,19,0,0,3,248,96,15,254,224,31,31,192,60,3,128, + 56,7,128,120,15,192,112,29,192,112,57,192,112,113,192,112, + 225,192,113,193,192,115,129,192,119,1,192,126,3,192,60,3, + 128,60,7,128,127,31,0,239,254,0,195,248,0,15,24,48, + 19,2,0,14,0,7,0,3,128,1,192,0,0,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,240,30,112,28,124,124,63, + 248,15,224,15,24,48,19,2,0,0,112,0,224,1,192,3, + 128,0,0,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,240, + 30,112,28,124,124,63,248,15,224,15,24,48,19,2,0,3, + 128,7,192,14,224,28,112,0,0,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,240,30,112,28,124,124,63,248,15,224,15, + 23,46,19,2,0,28,112,28,112,0,0,0,0,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,240,30,112,28,124,124,63, + 248,15,224,15,24,48,17,1,0,0,112,0,224,1,192,3, + 128,0,0,224,14,240,30,112,28,120,60,56,56,60,120,28, + 112,30,240,14,224,15,224,7,192,7,192,3,128,3,128,3, + 128,3,128,3,128,3,128,3,128,14,19,38,17,2,0,224, + 0,224,0,224,0,224,0,255,224,255,248,224,56,224,28,224, + 28,224,28,224,28,224,56,255,248,255,240,224,0,224,0,224, + 0,224,0,224,0,11,19,38,14,2,0,30,0,127,128,243, + 128,225,192,225,192,225,192,225,192,227,128,239,0,239,128,227, + 192,225,192,224,224,224,224,224,224,224,224,225,192,239,192,239, + 128,12,19,38,14,1,0,28,0,14,0,7,0,3,128,0, + 0,31,128,63,192,113,224,112,224,0,224,7,224,63,224,124, + 224,240,224,224,224,225,224,243,224,127,240,62,112,12,19,38, + 14,1,0,1,192,3,128,7,0,14,0,0,0,31,128,63, + 192,113,224,112,224,0,224,7,224,63,224,124,224,240,224,224, + 224,225,224,243,224,127,240,62,112,12,19,38,14,1,0,7, + 0,15,128,29,192,56,224,0,0,31,128,63,192,113,224,112, + 224,0,224,7,224,63,224,124,224,240,224,224,224,225,224,243, + 224,127,240,62,112,12,19,38,14,1,0,60,192,127,192,103, + 128,0,0,0,0,31,128,63,192,113,224,112,224,0,224,7, + 224,63,224,124,224,240,224,224,224,225,224,243,224,127,240,62, + 112,12,18,36,14,1,0,57,192,57,192,0,0,0,0,31, + 128,63,192,113,224,112,224,0,224,7,224,63,224,124,224,240, + 224,224,224,225,224,243,224,127,240,62,112,12,19,38,14,1, + 0,7,0,13,128,8,128,13,128,7,0,31,128,63,192,113, + 224,112,224,0,224,7,224,63,224,124,224,240,224,224,224,225, + 224,243,224,127,240,62,112,20,14,42,22,1,0,31,143,0, + 63,255,192,113,249,224,112,240,224,0,224,112,7,224,112,63, + 255,240,124,255,240,240,224,0,224,224,0,225,240,112,243,248, + 240,127,63,224,62,15,128,11,19,38,13,1,251,31,128,63, + 192,121,224,112,224,224,0,224,0,224,0,224,0,224,0,224, + 0,112,224,121,224,63,192,31,128,30,0,7,0,7,0,63, + 0,30,0,12,19,38,14,1,0,28,0,14,0,7,0,3, + 128,0,0,15,0,63,192,121,224,112,224,224,112,224,112,255, + 240,255,240,224,0,224,0,112,112,120,240,63,224,15,128,12, + 19,38,14,1,0,3,128,7,0,14,0,28,0,0,0,15, + 0,63,192,121,224,112,224,224,112,224,112,255,240,255,240,224, + 0,224,0,112,112,120,240,63,224,15,128,12,19,38,14,1, + 0,7,0,15,128,29,192,56,224,0,0,15,0,63,192,121, + 224,112,224,224,112,224,112,255,240,255,240,224,0,224,0,112, + 112,120,240,63,224,15,128,12,18,36,14,1,0,57,192,57, + 192,0,0,0,0,15,0,63,192,121,224,112,224,224,112,224, + 112,255,240,255,240,224,0,224,0,112,112,120,240,63,224,15, + 128,6,19,19,7,0,0,224,112,56,28,0,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,6,19,19,7,1,0, + 28,56,112,224,0,112,112,112,112,112,112,112,112,112,112,112, + 112,112,112,9,19,38,7,255,0,28,0,62,0,119,0,227, + 128,0,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,7, + 18,18,7,0,0,238,238,0,0,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,12,19,38,14,1,0,112,0,29, + 192,7,0,31,0,97,128,15,192,63,192,121,224,112,224,224, + 112,224,112,224,112,224,112,224,112,224,112,112,224,121,224,63, + 192,15,0,11,19,38,15,2,0,60,192,127,192,103,128,0, + 0,0,0,239,128,255,192,241,192,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,12, + 19,38,14,1,0,28,0,14,0,7,0,3,128,0,0,15, + 0,63,192,121,224,112,224,224,112,224,112,224,112,224,112,224, + 112,224,112,112,224,121,224,63,192,15,0,12,19,38,14,1, + 0,3,128,7,0,14,0,28,0,0,0,15,0,63,192,121, + 224,112,224,224,112,224,112,224,112,224,112,224,112,224,112,112, + 224,121,224,63,192,15,0,12,19,38,14,1,0,14,0,31, + 0,59,128,113,192,0,0,15,0,63,192,121,224,112,224,224, + 112,224,112,224,112,224,112,224,112,224,112,112,224,121,224,63, + 192,15,0,12,19,38,14,1,0,60,192,127,192,103,128,0, + 0,0,0,15,0,63,192,121,224,112,224,224,112,224,112,224, + 112,224,112,224,112,224,112,112,224,121,224,63,192,15,0,12, + 18,36,14,1,0,57,192,57,192,0,0,0,0,15,0,63, + 192,121,224,112,224,224,112,224,112,224,112,224,112,224,112,224, + 112,112,224,121,224,63,192,15,0,11,12,24,15,2,1,14, + 0,14,0,14,0,0,0,0,0,255,224,255,224,0,0,0, + 0,14,0,14,0,14,0,14,14,28,14,0,0,7,140,31, + 252,60,248,56,112,112,248,113,248,115,184,119,56,126,56,124, + 56,56,112,124,240,255,224,199,128,11,19,38,15,2,0,56, + 0,28,0,14,0,7,0,0,0,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,225,224,115, + 224,126,224,28,224,11,19,38,15,2,0,3,128,7,0,14, + 0,28,0,0,0,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,225,224,115,224,126,224,28, + 224,11,19,38,15,2,0,14,0,31,0,59,128,113,192,0, + 0,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,225,224,115,224,126,224,28,224,11,18,36, + 15,2,0,57,192,57,192,0,0,0,0,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,225, + 224,115,224,126,224,28,224,13,24,48,15,1,251,0,224,1, + 192,3,128,7,0,0,0,224,56,224,56,112,56,120,112,56, + 112,60,240,28,224,28,224,15,192,15,192,7,192,7,128,3, + 128,3,128,7,0,7,0,14,0,62,0,60,0,12,24,48, + 15,2,251,224,0,224,0,224,0,224,0,224,0,239,128,255, + 192,249,224,240,224,224,112,224,112,224,112,224,112,224,112,224, + 112,240,224,249,224,255,192,239,128,224,0,224,0,224,0,224, + 0,224,0,13,23,46,15,1,251,28,224,28,224,0,0,0, + 0,224,56,224,56,112,56,120,112,56,112,60,240,28,224,28, + 224,15,192,15,192,7,192,7,128,3,128,3,128,7,0,7, + 0,14,0,62,0,60,0}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--25-180-100-100-P-138-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 19, '1' Height: 18 + Calculated Max Values w=22 h=24 x= 3 y=15 dx=24 dy= 0 ascent=19 len=66 + Font Bounding box w=28 h=37 x=-2 y=-8 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =19 descent=-5 + X Font ascent =19 descent=-5 + Max Font ascent =19 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB18r[3453] U8G_SECTION(".progmem.u8g_font_helvB18r") = { + 0,28,37,254,248,19,4,35,9,107,32,127,251,19,251,19, + 251,0,0,0,6,0,1,3,19,19,7,2,0,224,224,224, + 224,224,224,224,224,224,224,224,192,192,192,0,0,224,224,224, + 5,6,6,9,2,13,216,216,216,216,216,144,12,18,36,14, + 1,0,12,192,12,192,12,192,12,192,12,192,127,240,127,240, + 25,128,25,128,25,128,25,128,255,224,255,224,51,0,51,0, + 51,0,51,0,51,0,12,21,42,13,0,254,6,0,63,128, + 127,224,246,224,230,112,230,112,246,0,126,0,62,0,15,0, + 7,192,7,224,6,240,230,112,230,112,230,112,246,240,127,224, + 31,192,6,0,6,0,21,18,54,22,0,0,0,7,0,62, + 7,0,127,14,0,227,142,0,193,156,0,193,156,0,227,184, + 0,127,56,0,62,112,0,0,112,0,0,227,224,0,231,240, + 1,206,56,1,204,24,3,140,24,3,142,56,7,7,240,7, + 3,224,16,18,36,18,1,0,15,128,31,192,61,224,56,224, + 56,224,56,224,29,192,15,128,31,0,63,156,123,220,113,252, + 224,248,224,112,224,248,241,252,127,206,31,135,2,6,6,6, + 2,13,192,192,192,192,192,128,6,24,24,8,1,251,12,28, + 56,56,112,112,96,224,224,224,224,224,224,224,224,224,224,96, + 112,112,56,56,28,12,6,24,24,8,1,251,192,224,112,112, + 56,56,24,28,28,28,28,28,28,28,28,28,28,24,56,56, + 112,112,224,192,8,7,7,10,1,12,24,24,219,255,60,102, + 102,12,12,24,15,1,1,6,0,6,0,6,0,6,0,6, + 0,255,240,255,240,6,0,6,0,6,0,6,0,6,0,3, + 6,6,7,2,253,224,224,224,96,96,192,7,3,3,8,0, + 6,254,254,254,3,3,3,7,2,0,224,224,224,7,19,19, + 8,1,0,6,6,6,12,12,12,24,24,24,24,48,48,48, + 96,96,96,192,192,192,12,18,36,13,0,0,31,128,63,192, + 121,224,112,224,112,224,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,112,224,112,224,121,224,63,192,31,128, + 7,18,18,13,2,0,14,14,30,254,254,14,14,14,14,14, + 14,14,14,14,14,14,14,14,12,18,36,13,0,0,31,0, + 127,192,113,224,224,224,224,112,224,112,0,112,0,224,1,224, + 3,192,7,128,31,0,60,0,120,0,240,0,224,0,255,240, + 255,240,12,18,36,13,0,0,31,0,127,192,113,192,224,224, + 224,224,224,224,0,224,1,192,15,128,15,224,0,224,0,112, + 0,112,224,112,224,240,113,224,127,224,31,128,12,18,36,13, + 0,0,1,192,3,192,3,192,7,192,7,192,13,192,29,192, + 25,192,49,192,113,192,97,192,225,192,255,240,255,240,1,192, + 1,192,1,192,1,192,12,18,36,13,0,0,127,224,127,224, + 112,0,112,0,112,0,112,0,127,128,127,192,113,224,0,224, + 0,112,0,112,0,112,224,112,224,240,241,224,127,192,31,128, + 12,18,36,13,0,0,15,128,63,224,120,224,112,112,224,112, + 224,0,224,0,239,0,255,192,249,224,240,224,224,112,224,112, + 224,112,112,224,121,224,63,192,31,128,12,18,36,13,0,0, + 255,240,255,240,0,240,0,224,1,192,1,192,3,128,3,128, + 7,0,7,0,14,0,14,0,30,0,28,0,28,0,60,0, + 56,0,56,0,12,18,36,13,0,0,15,0,63,192,57,192, + 112,224,112,224,112,224,112,224,57,192,31,128,63,192,112,224, + 224,112,224,112,224,112,224,112,112,224,127,224,31,128,12,18, + 36,13,0,0,31,128,127,192,121,224,240,224,224,112,224,112, + 224,112,224,112,240,240,121,240,127,240,31,112,0,112,0,112, + 224,224,243,224,127,192,31,0,3,14,14,7,2,0,224,224, + 224,0,0,0,0,0,0,0,0,224,224,224,3,17,17,7, + 2,253,224,224,224,0,0,0,0,0,0,0,0,224,224,224, + 96,96,192,13,12,24,15,0,1,0,56,0,248,3,224,15, + 128,62,0,240,0,240,0,62,0,15,128,3,224,0,248,0, + 56,10,5,10,14,2,5,255,192,255,192,0,0,255,192,255, + 192,13,12,24,14,1,1,224,0,248,0,62,0,15,128,3, + 224,0,120,0,120,3,224,15,128,62,0,248,0,224,0,11, + 19,38,15,2,0,31,128,127,192,121,224,240,224,224,224,225, + 224,1,192,3,192,7,128,7,0,14,0,14,0,14,0,14, + 0,0,0,0,0,14,0,14,0,14,0,22,22,66,24,1, + 252,1,255,0,7,255,192,15,129,240,30,0,120,60,0,56, + 120,125,156,112,255,156,241,199,28,227,135,28,227,14,28,231, + 14,56,231,12,56,231,28,112,231,28,112,227,157,224,243,255, + 192,113,247,0,120,0,0,60,0,0,31,7,0,15,255,0, + 3,252,0,16,19,38,18,1,0,3,192,3,192,7,224,7, + 224,14,96,14,112,14,112,28,56,28,56,28,56,56,28,56, + 28,63,252,127,254,112,14,112,14,224,7,224,7,224,7,15, + 19,38,18,2,0,255,224,255,248,224,120,224,28,224,28,224, + 28,224,28,224,56,255,240,255,248,224,28,224,14,224,14,224, + 14,224,14,224,30,224,124,255,248,255,224,16,19,38,18,1, + 0,7,240,31,252,62,62,120,15,112,7,240,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,240,7,112,7,120, + 15,62,62,31,252,7,240,16,19,38,19,2,0,255,224,255, + 248,224,124,224,30,224,14,224,15,224,7,224,7,224,7,224, + 7,224,7,224,7,224,7,224,15,224,14,224,30,224,124,255, + 248,255,224,13,19,38,16,2,0,255,240,255,240,224,0,224, + 0,224,0,224,0,224,0,224,0,255,224,255,224,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,255,248,255,248,12, + 19,38,15,2,0,255,240,255,240,224,0,224,0,224,0,224, + 0,224,0,224,0,255,224,255,224,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,17,19,57,19,1, + 0,7,240,0,31,252,0,62,62,0,120,15,0,112,7,0, + 240,0,0,224,0,0,224,0,0,224,0,0,224,127,128,224, + 127,128,224,3,128,224,3,128,240,3,128,112,7,128,120,15, + 128,62,63,128,31,251,128,7,243,128,15,19,38,19,2,0, + 224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14, + 255,254,255,254,224,14,224,14,224,14,224,14,224,14,224,14, + 224,14,224,14,224,14,3,19,19,7,2,0,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,11, + 19,38,14,1,0,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,224,224,224, + 224,224,224,224,224,113,224,127,192,63,128,14,19,38,18,2, + 0,224,60,224,120,224,240,225,224,227,192,231,128,239,0,254, + 0,254,0,255,0,247,128,227,128,225,192,225,224,224,224,224, + 112,224,120,224,56,224,60,12,19,38,15,2,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,255, + 240,255,240,19,19,57,23,2,0,224,0,224,240,1,224,240, + 1,224,248,3,224,248,3,224,252,7,224,236,6,224,238,14, + 224,230,12,224,231,28,224,231,28,224,227,24,224,227,184,224, + 227,184,224,225,240,224,225,240,224,224,224,224,224,224,224,224, + 224,224,15,19,38,19,2,0,224,14,240,14,240,14,248,14, + 248,14,252,14,238,14,238,14,231,14,227,142,227,142,225,206, + 224,206,224,238,224,126,224,62,224,62,224,30,224,14,17,19, + 57,19,1,0,7,240,0,31,252,0,62,62,0,120,15,0, + 112,7,0,240,7,128,224,3,128,224,3,128,224,3,128,224, + 3,128,224,3,128,224,3,128,224,3,128,240,7,128,112,7, + 0,120,15,0,62,62,0,31,252,0,7,240,0,14,19,38, + 17,2,0,255,224,255,248,224,56,224,28,224,28,224,28,224, + 28,224,56,255,248,255,240,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,17,20,60,19,1,255,7, + 240,0,31,252,0,62,62,0,120,15,0,112,7,0,240,7, + 128,224,3,128,224,3,128,224,3,128,224,3,128,224,3,128, + 224,3,128,224,3,128,240,39,128,112,119,0,120,63,0,62, + 30,0,31,254,0,7,247,0,0,2,0,14,19,38,17,2, + 0,255,224,255,248,224,56,224,28,224,28,224,28,224,28,224, + 56,255,248,255,240,224,120,224,56,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,14,19,38,17,2,0,15,192,63, + 240,120,248,240,56,224,56,224,0,240,0,124,0,63,192,7, + 240,0,248,0,60,0,28,224,28,224,28,224,60,248,248,127, + 240,31,192,15,19,38,15,0,0,255,254,255,254,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,15, + 19,38,19,2,0,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,240,30,112,28,124,124,63,248,15,224,16,19,38,18,1, + 0,224,7,224,7,240,15,112,14,120,30,56,28,56,28,60, + 60,28,56,28,56,30,120,14,112,14,112,14,112,7,224,7, + 224,3,192,3,192,3,192,21,19,57,23,1,0,224,112,56, + 224,112,56,224,112,56,224,112,56,112,248,112,112,248,112,112, + 216,112,113,220,112,49,220,96,57,220,224,57,140,224,59,142, + 224,27,142,192,27,142,192,31,7,192,31,7,192,14,3,128, + 14,3,128,14,3,128,16,19,38,18,1,0,224,7,240,15, + 120,30,56,28,28,56,14,112,15,240,7,224,3,192,3,192, + 7,224,15,240,14,112,28,56,60,60,56,28,112,14,240,15, + 224,7,15,19,38,17,1,0,224,14,240,14,112,28,120,28, + 56,56,60,56,28,112,28,112,14,224,14,224,7,192,7,192, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,14,19, + 38,16,1,0,255,252,255,252,0,60,0,120,0,240,1,224, + 1,224,3,192,7,128,7,128,15,0,30,0,30,0,60,0, + 56,0,120,0,240,0,255,252,255,252,5,24,24,8,1,251, + 248,248,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,248,248,7,19,19,8,0,0,192,192, + 192,96,96,96,48,48,48,48,24,24,24,12,12,12,6,6, + 6,5,24,24,8,2,251,248,248,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,248,248,11, + 9,18,14,1,10,14,0,14,0,31,0,27,0,59,128,113, + 192,113,192,224,224,224,224,14,2,4,14,0,251,255,252,255, + 252,6,4,4,8,1,15,224,112,56,28,12,14,28,14,1, + 0,31,128,63,192,113,224,112,224,0,224,7,224,63,224,124, + 224,240,224,224,224,225,224,243,224,127,240,62,112,12,19,38, + 15,2,0,224,0,224,0,224,0,224,0,224,0,239,128,255, + 192,249,224,240,224,224,112,224,112,224,112,224,112,224,112,224, + 112,240,224,249,224,255,192,239,128,11,14,28,13,1,0,31, + 128,63,192,121,224,112,224,224,0,224,0,224,0,224,0,224, + 0,224,0,112,224,121,224,63,192,31,128,12,19,38,15,1, + 0,0,112,0,112,0,112,0,112,0,112,31,112,63,240,121, + 240,112,240,224,112,224,112,224,112,224,112,224,112,224,112,112, + 240,121,240,63,240,31,112,12,14,28,14,1,0,15,0,63, + 192,121,224,112,224,224,112,224,112,255,240,255,240,224,0,224, + 0,112,112,120,240,63,224,15,128,7,19,19,9,1,0,30, + 62,56,56,56,254,254,56,56,56,56,56,56,56,56,56,56, + 56,56,12,19,38,15,1,251,31,112,63,240,121,240,112,240, + 224,112,224,112,224,112,224,112,224,112,224,112,112,240,121,240, + 63,240,31,112,0,112,224,112,240,224,127,224,31,128,11,19, + 38,15,2,0,224,0,224,0,224,0,224,0,224,0,239,0, + 255,192,241,192,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,3,19,19,7,2,0, + 224,224,224,0,0,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,5,24,24,7,0,251,56,56,56,0,0,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,248, + 240,11,19,38,14,2,0,224,0,224,0,224,0,224,0,224, + 0,225,192,227,192,231,128,239,0,254,0,252,0,254,0,239, + 0,231,0,231,128,227,192,225,192,225,224,224,224,3,19,19, + 7,2,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,17,14,42,21,2,0,239,62,0,255, + 255,0,243,231,128,225,195,128,225,195,128,225,195,128,225,195, + 128,225,195,128,225,195,128,225,195,128,225,195,128,225,195,128, + 225,195,128,225,195,128,11,14,28,15,2,0,239,128,255,192, + 241,192,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,12,14,28,14,1,0,15,0, + 63,192,121,224,112,224,224,112,224,112,224,112,224,112,224,112, + 224,112,112,224,121,224,63,192,15,0,12,19,38,15,2,251, + 239,128,255,192,249,224,240,224,224,112,224,112,224,112,224,112, + 224,112,224,112,240,224,249,224,255,192,239,128,224,0,224,0, + 224,0,224,0,224,0,12,19,38,15,1,251,31,112,63,240, + 121,240,112,240,224,112,224,112,224,112,224,112,224,112,224,112, + 112,240,121,240,63,240,31,112,0,112,0,112,0,112,0,112, + 0,112,7,14,14,10,2,0,238,254,254,240,224,224,224,224, + 224,224,224,224,224,224,11,14,28,13,1,0,63,0,127,128, + 243,192,225,192,224,0,252,0,127,128,15,192,1,224,224,224, + 224,224,241,224,127,192,63,128,7,18,18,9,1,0,56,56, + 56,56,254,254,56,56,56,56,56,56,56,56,56,56,62,30, + 11,14,28,15,2,0,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,225,224,115,224,126,224, + 28,224,12,14,28,14,1,0,224,112,224,112,224,112,112,224, + 112,224,112,224,57,192,57,192,57,192,31,128,31,128,15,0, + 15,0,15,0,19,14,42,19,0,0,224,224,224,224,224,224, + 96,224,192,113,241,192,113,241,192,49,177,128,51,185,128,59, + 187,128,27,27,0,31,31,0,31,31,0,14,14,0,14,14, + 0,14,14,0,11,14,28,13,1,0,224,224,241,224,113,192, + 59,128,63,128,31,0,14,0,31,0,31,0,59,128,123,192, + 113,192,241,224,224,224,13,19,38,15,1,251,224,56,224,56, + 112,56,120,112,56,112,60,240,28,224,28,224,15,192,15,192, + 7,192,7,128,3,128,3,128,7,0,7,0,14,0,62,0, + 60,0,11,14,28,13,1,0,255,224,255,224,1,192,3,128, + 7,128,15,0,14,0,30,0,60,0,56,0,112,0,240,0, + 255,224,255,224,7,24,24,10,1,251,14,28,56,56,56,56, + 56,56,56,56,112,224,224,112,56,56,56,56,56,56,56,56, + 28,14,2,24,24,7,3,251,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 7,24,24,10,2,251,224,112,56,56,56,56,56,56,56,56, + 28,14,14,28,56,56,56,56,56,56,56,56,112,224,11,4, + 8,14,1,5,120,224,254,224,239,224,227,192,255}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--34-240-100-100-P-182-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 23 + Calculated Max Values w=31 h=32 x= 4 y=21 dx=33 dy= 0 ascent=31 len=120 + Font Bounding box w=40 h=49 x=-6 y=-12 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =31 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB24[11554] U8G_SECTION(".progmem.u8g_font_helvB24") = { + 0,40,49,250,244,25,5,252,14,144,32,255,249,31,249,25, + 249,0,0,0,9,0,1,5,25,25,11,3,0,248,248,248, + 248,248,248,248,248,248,248,248,112,112,112,112,112,112,112,0, + 0,248,248,248,248,248,11,9,18,16,2,16,241,224,241,224, + 241,224,241,224,241,224,241,224,241,224,96,192,96,192,18,25, + 75,19,0,255,3,199,0,3,199,0,3,143,0,3,143,0, + 7,143,0,7,142,0,7,142,0,127,255,192,127,255,192,127, + 255,192,127,255,192,15,28,0,14,28,0,14,28,0,14,60, + 0,255,255,128,255,255,128,255,255,128,255,255,128,28,120,0, + 60,120,0,60,112,0,60,112,0,56,240,0,56,240,0,16, + 28,56,18,1,253,1,128,1,128,15,240,63,252,127,254,253, + 190,249,159,241,159,241,143,249,128,255,128,127,192,63,240,15, + 252,1,254,1,255,1,159,1,143,241,143,241,159,249,159,127, + 254,127,254,63,248,7,224,1,128,1,128,1,128,26,23,92, + 29,1,0,14,0,48,0,63,128,112,0,127,192,96,0,113, + 192,224,0,224,224,192,0,224,225,192,0,224,227,128,0,224, + 227,128,0,113,199,0,0,127,198,0,0,63,142,0,0,14, + 12,28,0,0,28,127,0,0,24,255,128,0,56,227,128,0, + 49,193,192,0,113,193,192,0,97,193,192,0,225,193,192,1, + 192,227,128,1,192,255,128,3,128,127,0,3,0,28,0,20, + 25,75,24,2,0,3,224,0,15,248,0,31,252,0,31,252, + 0,30,60,0,62,60,0,62,60,0,31,60,0,31,248,0, + 15,248,0,15,240,0,15,224,0,63,241,224,127,241,224,124, + 249,192,248,255,192,240,127,192,240,63,128,240,31,0,248,15, + 128,252,63,192,127,255,224,127,251,224,31,241,240,7,192,0, + 4,9,9,8,2,16,240,240,240,240,240,240,240,96,96,8, + 31,31,11,1,250,7,15,30,30,60,60,56,120,120,120,240, + 240,240,240,240,240,240,240,240,248,120,120,120,120,60,60,28, + 30,14,15,7,8,31,31,11,1,250,224,240,120,120,60,60, + 28,30,30,30,15,15,15,15,15,15,15,15,15,31,30,30, + 30,28,60,60,56,120,112,240,224,10,11,22,13,1,13,12, + 0,12,0,76,128,237,192,255,192,127,128,30,0,63,0,127, + 128,115,128,33,0,16,16,32,19,1,0,3,192,3,192,3, + 192,3,192,3,192,3,192,255,255,255,255,255,255,255,255,3, + 192,3,192,3,192,3,192,3,192,3,192,5,11,11,9,2, + 250,248,248,248,248,248,24,24,56,112,224,128,9,5,10,11, + 1,7,255,128,255,128,255,128,255,128,255,128,5,5,5,9, + 2,0,248,248,248,248,248,8,25,25,9,0,0,3,3,3, + 3,6,6,6,14,12,12,12,28,24,24,24,48,48,48,112, + 96,96,96,192,192,192,15,24,48,18,1,0,15,224,31,240, + 63,248,127,252,124,124,248,62,248,62,248,62,240,30,240,30, + 240,30,240,30,240,30,240,30,240,30,240,30,248,62,248,62, + 248,62,124,124,127,252,63,248,31,240,15,224,10,23,46,18, + 2,0,1,192,3,192,7,192,31,192,255,192,255,192,255,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 16,24,48,18,1,0,15,224,63,248,127,252,127,254,252,126, + 248,63,248,31,240,31,240,31,0,63,0,62,0,126,0,252, + 1,248,7,240,15,224,31,128,63,0,126,0,252,0,255,255, + 255,255,255,255,255,255,16,24,48,18,1,0,15,224,63,248, + 127,252,127,252,248,62,240,62,240,30,240,30,0,62,0,124, + 3,248,3,240,3,252,0,126,0,63,0,31,240,31,240,31, + 240,63,248,62,127,254,127,252,63,248,15,224,16,24,48,18, + 1,0,0,248,0,248,1,248,3,248,3,248,7,248,15,120, + 14,120,30,120,28,120,60,120,120,120,112,120,240,120,224,120, + 255,255,255,255,255,255,255,255,0,120,0,120,0,120,0,120, + 0,120,15,24,48,18,1,0,63,252,63,252,63,252,63,252, + 56,0,120,0,120,0,120,0,123,224,127,248,127,252,127,252, + 120,126,0,62,0,62,0,30,0,30,240,62,240,62,248,124, + 127,252,127,248,63,240,15,192,15,24,48,18,1,0,7,224, + 31,248,63,252,63,254,124,62,120,30,240,0,240,0,243,224, + 247,248,255,252,255,252,252,126,248,62,240,30,240,30,240,30, + 240,30,248,62,124,124,127,252,63,248,31,240,7,192,16,24, + 48,18,1,0,255,255,255,255,255,255,255,255,0,30,0,62, + 0,60,0,120,0,248,0,240,1,240,1,224,3,224,3,192, + 7,192,7,192,7,128,15,128,15,128,15,128,31,0,31,0, + 31,0,31,0,17,24,72,18,0,0,7,240,0,31,252,0, + 63,254,0,62,62,0,124,31,0,120,15,0,120,15,0,120, + 15,0,124,31,0,62,62,0,31,252,0,31,252,0,63,254, + 0,124,31,0,248,15,128,240,7,128,240,7,128,240,7,128, + 248,15,128,126,63,0,127,254,0,63,254,0,31,252,0,7, + 240,0,15,24,48,18,1,0,7,192,31,240,63,248,127,252, + 124,124,248,62,240,30,240,30,240,30,240,30,248,62,252,126, + 127,254,127,254,63,222,7,158,0,30,0,30,240,60,248,124, + 127,248,127,248,31,240,7,192,5,17,17,11,3,0,248,248, + 248,248,248,0,0,0,0,0,0,0,248,248,248,248,248,5, + 23,23,11,3,250,248,248,248,248,248,0,0,0,0,0,0, + 0,248,248,248,248,248,24,24,56,112,224,128,16,16,32,19, + 1,0,0,3,0,31,0,127,3,255,15,254,127,248,255,192, + 254,0,254,0,255,192,127,240,15,254,3,255,0,127,0,31, + 0,3,15,12,24,19,2,2,255,254,255,254,255,254,255,254, + 0,0,0,0,0,0,0,0,255,254,255,254,255,254,255,254, + 16,16,32,19,1,0,192,0,240,0,254,0,255,192,127,240, + 31,254,3,255,0,127,0,127,3,255,31,254,127,240,255,192, + 254,0,240,0,192,0,16,25,50,20,2,0,15,224,63,248, + 127,252,127,254,252,126,248,63,248,31,240,31,240,31,0,63, + 0,126,0,254,1,252,1,248,3,224,3,192,7,192,7,192, + 0,0,0,0,7,192,7,192,7,192,7,192,7,192,29,30, + 120,33,1,251,0,15,224,0,0,127,252,0,1,255,254,0, + 3,240,63,128,7,192,7,192,15,0,3,192,30,0,1,224, + 28,0,0,240,60,7,220,112,56,31,252,112,112,60,252,56, + 112,120,120,56,240,240,56,56,224,224,56,56,225,224,56,56, + 225,192,112,120,225,192,112,112,225,192,112,112,225,224,240,224, + 241,225,241,224,112,255,255,192,120,127,63,128,56,62,30,0, + 60,0,0,0,30,0,0,0,15,128,0,0,15,240,60,0, + 3,255,252,0,1,255,252,0,0,127,224,0,22,25,75,23, + 0,0,0,252,0,0,252,0,1,254,0,1,254,0,1,254, + 0,3,255,0,3,255,0,3,255,0,7,207,128,7,207,128, + 7,207,128,15,135,128,15,135,192,15,135,192,31,3,192,31, + 3,224,31,255,224,31,255,224,63,255,240,63,255,240,62,1, + 240,124,0,248,124,0,248,252,0,252,248,0,124,19,25,75, + 24,3,0,255,252,0,255,255,0,255,255,128,255,255,128,248, + 15,192,248,7,192,248,7,192,248,7,192,248,7,192,248,15, + 128,255,255,0,255,255,0,255,255,128,255,255,192,248,7,192, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 7,224,255,255,192,255,255,192,255,255,128,255,254,0,21,25, + 75,24,1,0,1,254,0,7,255,128,15,255,192,31,255,224, + 63,135,240,62,1,240,124,1,248,124,0,248,124,0,248,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,124,0,248,124,0,248,126,1,248,62,1,240, + 63,135,240,31,255,224,15,255,192,7,255,128,1,254,0,21, + 25,75,24,2,0,255,248,0,255,255,0,255,255,128,255,255, + 192,248,15,224,248,3,224,248,3,240,248,1,240,248,1,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,1,248,248,1,240,248,3,240,248,3, + 224,248,15,224,255,255,192,255,255,128,255,255,0,255,248,0, + 18,25,75,22,2,0,255,255,128,255,255,128,255,255,128,255, + 255,128,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,255,255,0,255,255,0,255,255,0,255,255,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,255,255,192,255,255,192,255,255,192,255,255, + 192,16,25,50,20,2,0,255,255,255,255,255,255,255,255,248, + 0,248,0,248,0,248,0,248,0,248,0,255,254,255,254,255, + 254,255,254,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,22,25,75,25,1,0,0, + 255,0,3,255,192,15,255,224,31,255,240,31,195,248,63,0, + 248,126,0,124,124,0,124,252,0,0,248,0,0,248,0,0, + 248,0,0,248,15,252,248,15,252,248,15,252,248,15,252,252, + 0,124,124,0,124,126,0,124,126,0,252,63,131,252,63,255, + 252,31,255,220,7,255,156,3,254,28,19,25,75,23,2,0, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,255,255, + 224,255,255,224,255,255,224,255,255,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,5,25,25,9,2, + 0,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,15,25,50,18,1,0, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,248,62, + 248,62,248,62,248,62,248,62,252,126,255,252,127,252,63,248, + 15,224,20,25,75,24,2,0,248,7,224,248,7,224,248,15, + 192,248,31,128,248,63,0,248,126,0,248,252,0,248,248,0, + 249,248,0,251,240,0,255,224,0,255,224,0,255,240,0,255, + 240,0,255,248,0,252,252,0,248,126,0,248,126,0,248,63, + 0,248,31,128,248,15,128,248,15,192,248,7,224,248,3,240, + 248,3,240,16,25,50,20,2,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,255,255,255,255,255,255,255,255,23,25,75,27,2, + 0,254,0,254,254,0,254,255,1,254,255,1,254,255,1,254, + 255,1,254,255,131,254,255,131,254,251,131,190,251,131,190,251, + 199,190,251,199,190,251,199,190,249,199,62,249,239,62,249,239, + 62,249,239,62,249,239,62,248,238,62,248,254,62,248,254,62, + 248,254,62,248,124,62,248,124,62,248,124,62,19,25,75,24, + 2,0,248,3,224,252,3,224,252,3,224,254,3,224,254,3, + 224,255,3,224,255,3,224,255,131,224,255,195,224,251,195,224, + 251,227,224,249,227,224,249,243,224,248,243,224,248,251,224,248, + 123,224,248,63,224,248,63,224,248,31,224,248,31,224,248,15, + 224,248,15,224,248,7,224,248,7,224,248,3,224,23,25,75, + 25,1,0,1,255,0,7,255,192,15,255,224,31,255,240,63, + 199,248,63,1,248,126,0,252,124,0,124,124,0,124,248,0, + 62,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,124,0,124,124,0,124,126,0,252,63,1,248,63, + 199,248,31,255,240,15,255,224,7,255,192,1,255,0,18,25, + 75,22,2,0,255,248,0,255,254,0,255,255,0,255,255,128, + 248,31,128,248,15,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,15,192,248,31,128,255,255,128,255,255,0,255,252, + 0,255,240,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,23, + 26,78,26,1,255,1,255,0,7,255,192,15,255,224,31,255, + 240,63,199,248,63,1,248,126,0,252,124,0,124,252,0,126, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,2,62,252,7,62,124,15,188,126,15,252,63,7, + 248,63,195,240,31,255,248,15,255,252,7,255,254,1,255,60, + 0,0,24,19,25,75,24,2,0,255,254,0,255,255,128,255, + 255,192,255,255,192,248,7,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,7,192,248,15,192,255,255,128,255,255,0, + 255,255,0,255,255,128,248,15,192,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 224,248,3,224,19,25,75,22,1,0,3,248,0,15,254,0, + 31,255,0,63,255,128,62,31,128,124,7,192,120,7,192,120, + 3,192,124,0,0,127,0,0,63,240,0,63,254,0,31,255, + 128,3,255,192,0,63,192,0,7,224,0,3,224,248,3,224, + 248,3,224,124,3,224,126,15,192,63,255,192,31,255,128,15, + 255,0,3,248,0,19,25,75,20,0,0,255,255,224,255,255, + 224,255,255,224,255,255,224,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,19,25,75,24,2,0,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,248,3,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,252,7,224,127,31,192,127,255,192,63,255, + 128,31,255,0,7,252,0,20,25,75,22,1,0,248,1,240, + 248,1,240,124,3,224,124,3,224,124,3,224,60,3,192,62, + 7,192,62,7,192,30,7,128,31,15,128,31,15,128,15,15, + 0,15,15,0,15,15,0,7,158,0,7,158,0,7,158,0, + 7,254,0,3,252,0,3,252,0,3,252,0,1,248,0,1, + 248,0,1,248,0,0,240,0,29,25,100,31,1,0,248,31, + 129,248,248,31,129,248,120,31,129,240,120,31,129,240,120,31, + 129,240,124,63,195,224,124,63,195,224,124,63,195,224,60,63, + 195,224,60,57,195,192,62,121,227,192,62,121,231,192,30,121, + 231,192,30,121,231,128,30,112,231,128,30,112,231,128,15,240, + 255,0,15,240,255,0,15,240,255,0,15,224,127,0,7,224, + 126,0,7,224,126,0,7,224,126,0,3,192,60,0,3,192, + 60,0,20,25,75,22,1,0,252,3,224,126,7,224,126,7, + 192,63,15,192,31,15,128,31,159,0,15,159,0,15,190,0, + 7,254,0,7,252,0,3,252,0,3,248,0,1,248,0,3, + 248,0,3,252,0,7,252,0,7,254,0,15,191,0,31,159, + 0,31,31,128,63,15,128,62,15,192,126,7,192,252,7,224, + 252,3,240,20,25,75,22,1,0,252,3,240,252,3,224,126, + 7,224,62,7,192,63,15,192,63,15,128,31,15,128,31,159, + 0,15,159,0,15,254,0,7,254,0,7,252,0,3,252,0, + 3,248,0,3,248,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,17,25,75,20,1,0,255,255,128,255,255,128, + 255,255,128,255,255,128,0,15,128,0,31,128,0,63,0,0, + 126,0,0,124,0,0,252,0,1,248,0,3,240,0,3,240, + 0,7,224,0,15,192,0,15,128,0,31,128,0,63,0,0, + 126,0,0,126,0,0,252,0,0,255,255,128,255,255,128,255, + 255,128,255,255,128,8,31,31,11,2,250,255,255,255,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,255,255,255,9,25,50,9,0,0, + 192,0,192,0,224,0,96,0,96,0,112,0,112,0,48,0, + 56,0,56,0,24,0,28,0,28,0,12,0,12,0,14,0, + 14,0,6,0,7,0,7,0,3,0,3,128,3,128,1,128, + 1,128,8,31,31,11,0,250,255,255,255,15,15,15,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,255,255,255,14,14,28,19,2,9,7,128,15, + 192,15,192,15,192,31,224,31,224,60,240,60,240,56,112,120, + 120,120,120,112,60,240,60,240,60,18,2,6,18,0,250,255, + 255,192,255,255,192,5,5,5,11,2,20,224,240,112,120,56, + 15,18,36,18,1,0,15,240,63,252,127,252,124,62,248,30, + 248,30,0,254,15,254,63,254,127,30,248,30,248,30,240,62, + 248,126,255,254,255,254,127,222,63,30,16,25,50,20,2,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,243,240, + 247,252,255,252,255,254,252,62,248,31,240,31,240,15,240,15, + 240,15,240,15,240,31,240,31,248,62,255,254,255,252,247,248, + 241,240,15,18,36,18,1,0,7,224,31,248,63,252,63,252, + 124,62,120,62,240,30,240,0,240,0,240,0,240,0,240,30, + 248,30,124,62,127,252,63,248,31,248,7,224,16,25,50,20, + 1,0,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 15,207,31,239,63,255,127,255,124,63,248,31,240,15,240,15, + 240,15,240,15,240,15,240,15,248,31,124,63,127,255,63,239, + 31,239,15,143,16,18,36,18,1,0,7,224,31,248,63,252, + 127,254,124,62,248,31,240,31,255,255,255,255,255,255,240,0, + 240,0,248,30,124,62,127,252,63,252,31,240,7,192,10,25, + 50,11,0,0,7,192,15,192,31,192,31,0,30,0,30,0, + 30,0,255,192,255,192,255,192,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,16,25,50,20,1,249,15,207,31,239, + 63,255,127,255,124,63,248,31,248,31,240,15,240,15,240,15, + 240,15,248,31,248,31,124,63,127,255,63,255,31,239,15,207, + 0,15,248,31,248,31,126,126,127,254,63,252,15,240,15,25, + 50,20,2,0,240,0,240,0,240,0,240,0,240,0,240,0, + 240,0,241,224,247,248,255,252,255,252,252,62,248,30,248,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,4,25,25,9,2,0,240,240,240,240, + 0,0,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,6,32,32,9,0,249,60,60,60,60,0, + 0,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,252,252,248,248,15,25,50,19,2, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 62,240,124,240,248,241,240,243,224,247,192,255,128,255,192,255, + 192,255,224,255,224,249,240,241,240,240,248,240,120,240,124,240, + 62,240,62,4,25,25,9,2,0,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,24,18,54,30,2,0,241,224,248,247,251,254,255,255, + 254,255,255,255,252,127,31,248,62,15,240,60,15,240,60,15, + 240,60,15,240,60,15,240,60,15,240,60,15,240,60,15,240, + 60,15,240,60,15,240,60,15,240,60,15,240,60,15,15,18, + 36,20,2,0,241,240,247,252,255,252,255,254,252,62,248,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,240,30,17,18,54,20,1,0,7,240, + 0,31,252,0,63,254,0,127,255,0,124,31,0,248,15,128, + 248,15,128,240,7,128,240,7,128,240,7,128,240,7,128,248, + 15,128,248,15,128,124,31,0,127,255,0,63,254,0,31,252, + 0,7,240,0,16,25,50,20,2,249,241,240,247,248,255,252, + 255,254,252,62,248,31,248,31,240,15,240,15,240,15,240,15, + 248,31,248,31,252,62,255,254,255,252,247,248,241,240,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,16,25,50,20, + 1,249,7,207,31,239,63,255,127,255,124,63,248,31,240,15, + 240,15,240,15,240,15,240,15,240,15,248,31,124,63,127,255, + 63,255,63,239,15,207,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,10,18,36,13,2,0,240,192,243,192,247,192, + 255,192,255,192,252,0,248,0,248,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,16,18, + 36,19,1,0,7,240,31,252,63,254,124,62,120,31,120,31, + 124,0,127,192,63,248,15,254,3,255,0,63,248,15,248,15, + 124,31,127,254,63,252,15,240,9,22,44,11,1,0,60,0, + 60,0,60,0,60,0,255,128,255,128,255,128,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,63,128,63,128,31,128,15,128,15,18,36,20,2,0, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,240,30,248,62,248,126,255,254,127,254, + 127,222,31,30,17,18,54,19,0,0,248,15,128,248,15,128, + 124,31,0,124,31,0,60,30,0,60,30,0,62,62,0,30, + 60,0,30,60,0,30,60,0,15,120,0,15,120,0,15,120, + 0,7,240,0,7,240,0,7,240,0,3,224,0,3,224,0, + 25,18,72,26,0,0,248,62,15,128,248,62,15,128,120,62, + 15,0,124,62,31,0,124,127,31,0,60,127,30,0,60,127, + 30,0,60,119,30,0,60,247,158,0,30,227,188,0,30,227, + 188,0,30,227,188,0,31,227,252,0,15,193,248,0,15,193, + 248,0,15,193,248,0,7,128,240,0,7,128,240,0,16,18, + 36,19,1,0,248,31,252,63,124,62,62,124,62,120,31,248, + 15,240,7,224,3,192,7,224,15,224,15,240,31,248,62,120, + 62,124,124,62,252,63,248,31,16,25,50,19,1,249,248,31, + 248,31,248,30,120,62,124,62,124,60,60,60,62,124,62,120, + 30,120,30,120,31,240,15,240,15,240,15,224,7,224,7,224, + 7,192,7,192,7,192,15,128,63,128,63,0,63,0,60,0, + 14,18,36,17,1,0,255,252,255,252,255,252,255,252,0,248, + 1,240,3,240,7,224,15,192,31,128,31,0,62,0,124,0, + 248,0,255,252,255,252,255,252,255,252,9,32,64,13,2,249, + 15,128,31,128,63,128,62,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,124,0,120,0, + 224,0,120,0,124,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,63,128,31,128,15,128, + 3,31,31,9,3,250,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,9,32,64,13,2,249,248,0,252,0,254, + 0,62,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,31,0,15,0,3,128,15,0,31, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,254,0,252,0,248,0,14,6,12,19,2, + 5,56,0,126,12,255,156,231,252,193,248,0,112,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0, + 0,9,0,1,5,24,24,11,2,250,248,248,248,248,248,0, + 0,112,112,112,112,112,112,248,248,248,248,248,248,248,248,248, + 248,248,15,24,48,18,1,253,0,32,0,32,0,96,7,240, + 31,248,63,252,127,252,124,190,248,158,249,158,241,128,241,128, + 243,0,243,0,243,30,250,30,126,62,127,252,63,248,31,240, + 15,192,12,0,8,0,8,0,17,24,72,18,0,0,3,240, + 0,31,252,0,63,254,0,63,255,0,126,31,0,124,15,128, + 124,15,128,124,7,128,124,0,0,126,0,0,62,0,0,255, + 240,0,255,240,0,31,0,0,15,0,0,15,0,0,15,0, + 0,31,0,0,30,0,0,61,227,0,127,255,128,255,255,128, + 255,255,0,96,126,0,15,15,30,18,1,4,224,14,247,222, + 255,254,127,252,60,120,120,60,112,28,112,28,112,28,120,60, + 60,120,127,252,255,254,247,222,224,14,18,24,72,18,0,0, + 248,7,192,248,7,192,124,15,128,60,15,0,30,30,0,30, + 30,0,15,60,0,15,60,0,7,248,0,7,248,0,3,240, + 0,1,224,0,63,255,0,63,255,0,1,224,0,1,224,0, + 63,255,0,63,255,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,3,31,31,9,3,250,224,224, + 224,224,224,224,224,224,224,224,224,224,224,0,0,0,0,0, + 0,224,224,224,224,224,224,224,224,224,224,224,224,16,32,64, + 18,1,249,15,240,31,248,63,248,126,124,124,60,124,60,126, + 0,127,0,63,192,31,224,63,248,127,252,113,254,240,255,240, + 63,248,31,252,15,127,15,127,159,63,254,31,248,7,252,1, + 254,0,126,0,62,120,30,120,30,124,62,63,252,63,252,31, + 248,7,224,10,4,8,11,0,21,243,192,243,192,243,192,243, + 192,26,25,100,24,0,0,0,127,128,0,3,255,224,0,7, + 128,248,0,31,0,60,0,28,0,14,0,56,0,7,0,112, + 63,3,0,112,127,131,128,224,243,193,128,225,192,225,192,193, + 192,224,192,195,128,0,192,195,128,0,192,195,128,0,192,195, + 128,0,192,193,192,224,192,225,192,225,192,224,243,195,128,96, + 127,131,128,112,63,7,0,56,0,14,0,30,0,60,0,15, + 128,248,0,7,255,224,0,1,255,128,0,9,16,32,12,1, + 9,62,0,127,0,227,128,195,128,31,128,127,128,243,128,227, + 128,227,128,255,128,123,128,0,0,0,0,255,128,255,128,255, + 128,12,13,26,18,3,2,8,16,24,48,56,112,120,240,241, + 224,225,192,225,192,241,224,249,240,120,240,56,112,24,48,8, + 16,16,10,20,19,1,4,255,255,255,255,255,255,255,255,0, + 15,0,15,0,15,0,15,0,15,0,15,9,5,10,11,1, + 7,255,128,255,128,255,128,255,128,255,128,26,25,100,24,0, + 0,0,255,128,0,3,255,224,0,7,128,248,0,30,0,60, + 0,28,0,14,0,56,255,135,0,112,255,195,0,112,225,227, + 128,224,224,225,128,224,224,225,128,192,224,225,192,192,225,193, + 192,192,255,129,192,192,255,1,192,192,227,129,192,192,227,193, + 192,224,225,193,128,224,224,227,128,112,224,243,128,112,224,119, + 0,56,0,14,0,30,0,28,0,15,128,120,0,7,255,224, + 0,1,255,128,0,10,3,6,11,0,21,255,192,255,192,255, + 192,9,10,20,13,2,14,62,0,127,0,99,0,193,128,193, + 128,193,128,193,128,99,0,127,0,62,0,16,22,44,19,1, + 0,3,192,3,192,3,192,3,192,3,192,3,192,255,255,255, + 255,255,255,255,255,3,192,3,192,3,192,3,192,3,192,3, + 192,0,0,0,0,255,255,255,255,255,255,255,255,10,15,30, + 11,0,9,63,0,127,128,243,192,225,192,225,192,1,192,3, + 192,7,128,15,0,62,0,120,0,112,0,255,192,255,192,255, + 192,10,15,30,11,0,9,30,0,127,128,243,192,225,192,225, + 192,3,192,15,128,15,128,3,192,1,192,225,192,225,192,243, + 192,127,128,62,0,6,5,5,11,4,20,60,120,112,224,224, + 15,25,50,20,2,249,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,248,62, + 248,126,255,254,255,254,255,222,247,158,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,17,31,93,18,0,250,15,255, + 128,31,255,128,63,140,0,127,140,0,127,140,0,255,140,0, + 255,140,0,255,140,0,255,140,0,255,140,0,127,140,0,127, + 140,0,63,140,0,63,140,0,15,140,0,1,140,0,1,140, + 0,1,140,0,1,140,0,1,140,0,1,140,0,1,140,0, + 1,140,0,1,140,0,1,140,0,1,140,0,1,140,0,1, + 140,0,1,140,0,1,140,0,1,140,0,4,5,5,9,2, + 11,96,240,240,240,96,7,8,8,11,2,249,48,48,48,124, + 30,14,252,248,6,15,15,11,2,9,28,60,252,252,28,28, + 28,28,28,28,28,28,28,28,28,10,16,32,12,1,9,63, + 0,127,128,115,128,225,192,225,192,225,192,225,192,225,192,115, + 128,127,128,63,0,0,0,0,0,255,192,255,192,255,192,12, + 12,24,18,3,3,129,0,193,128,225,192,241,224,120,240,56, + 112,56,112,120,240,241,224,225,192,193,128,129,0,26,24,96, + 28,0,0,0,0,56,0,6,0,112,0,30,0,112,0,254, + 0,224,0,254,1,192,0,14,1,192,0,14,3,128,0,14, + 3,128,0,14,7,0,0,14,7,0,0,14,14,7,0,14, + 28,15,0,14,28,31,0,14,56,31,0,0,56,55,0,0, + 112,103,0,0,112,231,0,0,224,199,0,1,193,135,0,1, + 193,255,192,3,129,255,192,3,128,7,0,7,0,7,0,7, + 0,7,0,25,24,96,28,1,0,0,0,224,0,12,1,192, + 0,28,1,192,0,252,3,128,0,252,3,128,0,28,7,0, + 0,28,14,0,0,28,14,0,0,28,28,0,0,28,28,0, + 0,28,56,126,0,28,48,255,0,28,113,231,128,28,225,195, + 128,0,225,195,128,1,192,7,128,1,192,15,0,3,128,30, + 0,7,0,60,0,7,0,120,0,14,0,240,0,14,1,255, + 128,28,1,255,128,28,1,255,128,25,24,96,27,1,0,63, + 0,28,0,127,128,56,0,243,192,56,0,225,192,112,0,225, + 192,224,0,3,192,224,0,15,129,192,0,15,129,192,0,15, + 195,128,0,1,199,0,0,225,199,14,0,225,206,30,0,243, + 206,30,0,127,156,62,0,63,28,126,0,0,56,238,0,0, + 112,206,0,0,113,142,0,0,227,142,0,0,227,255,128,1, + 195,255,128,1,192,14,0,3,128,14,0,3,128,14,0,16, + 24,48,20,1,250,3,224,3,224,3,224,3,224,0,0,0, + 0,3,192,3,192,3,192,7,192,31,128,63,128,127,0,126, + 0,252,0,248,15,248,15,248,15,252,31,126,127,127,254,63, + 254,63,252,15,240,22,31,93,23,0,0,3,192,0,1,224, + 0,0,240,0,0,120,0,0,60,0,0,0,0,0,252,0, + 0,252,0,1,254,0,1,254,0,1,254,0,3,255,0,3, + 255,0,3,255,0,7,207,128,7,207,128,7,207,128,15,135, + 128,15,135,192,15,135,192,31,3,192,31,3,224,31,255,224, + 31,255,224,63,255,240,63,255,240,62,1,240,124,0,248,124, + 0,248,252,0,252,248,0,124,22,31,93,23,0,0,0,15, + 0,0,30,0,0,60,0,0,120,0,0,240,0,0,0,0, + 0,252,0,0,252,0,1,254,0,1,254,0,1,254,0,3, + 255,0,3,255,0,3,255,0,7,207,128,7,207,128,7,207, + 128,15,135,128,15,135,192,15,135,192,31,3,192,31,3,224, + 31,255,224,31,255,224,63,255,240,63,255,240,62,1,240,124, + 0,248,124,0,248,252,0,252,248,0,124,22,31,93,23,0, + 0,0,48,0,0,120,0,0,252,0,1,206,0,3,135,0, + 0,0,0,0,252,0,0,252,0,1,254,0,1,254,0,1, + 254,0,3,255,0,3,255,0,3,255,0,7,207,128,7,207, + 128,7,207,128,15,135,128,15,135,192,15,135,192,31,3,192, + 31,3,224,31,255,224,31,255,224,63,255,240,63,255,240,62, + 1,240,124,0,248,124,0,248,252,0,252,248,0,124,22,30, + 90,23,0,0,0,241,128,1,255,128,3,255,0,3,30,0, + 0,0,0,0,252,0,0,252,0,1,254,0,1,254,0,1, + 254,0,3,255,0,3,255,0,3,255,0,7,207,128,7,207, + 128,7,207,128,15,135,128,15,135,192,15,135,192,31,3,192, + 31,3,224,31,255,224,31,255,224,63,255,240,63,255,240,62, + 1,240,124,0,248,124,0,248,252,0,252,248,0,124,22,31, + 93,23,0,0,3,207,0,3,207,0,3,207,0,3,207,0, + 0,0,0,0,0,0,0,252,0,0,252,0,1,254,0,1, + 254,0,1,254,0,3,255,0,3,255,0,3,255,0,7,207, + 128,7,207,128,7,207,128,15,135,128,15,135,192,15,135,192, + 31,3,192,31,3,224,31,255,224,31,255,224,63,255,240,63, + 255,240,62,1,240,124,0,248,124,0,248,252,0,252,248,0, + 124,22,31,93,23,0,0,0,120,0,0,204,0,0,132,0, + 0,132,0,0,204,0,0,120,0,0,0,0,0,252,0,1, + 254,0,1,254,0,1,254,0,3,255,0,3,255,0,3,255, + 0,7,207,128,7,207,128,7,207,128,15,135,128,15,135,192, + 15,135,192,31,3,192,31,3,224,31,255,224,31,255,224,63, + 255,240,63,255,240,62,1,240,124,0,248,124,0,248,252,0, + 252,248,0,124,31,25,100,32,0,0,0,255,255,252,0,255, + 255,252,0,255,255,252,1,255,255,252,1,243,192,0,1,227, + 192,0,3,227,192,0,3,227,192,0,3,195,192,0,7,195, + 192,0,7,195,192,0,7,195,255,248,15,131,255,248,15,131, + 255,248,15,131,255,248,31,3,192,0,31,255,192,0,31,255, + 192,0,63,255,192,0,63,255,192,0,62,3,192,0,124,3, + 255,254,124,3,255,254,248,3,255,254,248,3,255,254,21,32, + 96,23,1,249,1,254,0,7,255,128,15,255,192,31,255,224, + 63,135,240,62,1,240,124,1,240,124,0,248,124,0,248,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,124,0,248,124,0,248,126,1,248,62,1,240, + 63,135,240,31,255,224,15,255,192,7,255,128,1,252,0,0, + 96,0,0,96,0,0,248,0,0,28,0,0,28,0,1,248, + 0,1,240,0,18,31,93,22,2,0,30,0,0,15,0,0, + 7,128,0,3,192,0,1,224,0,0,0,0,255,255,128,255, + 255,128,255,255,128,255,255,128,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,255,255,0,255,255,0, + 255,255,0,255,255,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,255,255,192,255,255, + 192,255,255,192,255,255,192,18,31,93,22,2,0,0,120,0, + 0,240,0,1,224,0,3,192,0,7,128,0,0,0,0,255, + 255,128,255,255,128,255,255,128,255,255,128,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,255,255,0, + 255,255,0,255,255,0,255,255,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,255,255, + 192,255,255,192,255,255,192,255,255,192,18,31,93,22,2,0, + 0,192,0,1,224,0,3,240,0,7,56,0,14,28,0,0, + 0,0,255,255,128,255,255,128,255,255,128,255,255,128,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 255,255,0,255,255,0,255,255,0,255,255,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,255,255,192,255,255,192,255,255,192,255,255,192,18,31,93, + 22,2,0,30,60,0,30,60,0,30,60,0,30,60,0,0, + 0,0,0,0,0,255,255,128,255,255,128,255,255,128,255,255, + 128,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,255,255,0,255,255,0,255,255,0,255,255,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,255,255,192,255,255,192,255,255,192,255,255,192, + 8,31,31,9,0,0,240,120,60,30,15,0,62,62,62,62, + 62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62, + 62,62,62,62,62,8,31,31,9,2,0,15,30,60,120,240, + 0,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,10,31,62,9,0,0, + 12,0,30,0,63,0,115,128,225,192,0,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,10,31, + 62,9,0,0,243,192,243,192,243,192,243,192,0,0,0,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,23,25,75,23,255,0,31,255,128,31,255,224,31,255, + 240,31,255,248,31,7,248,31,0,252,31,0,252,31,0,124, + 31,0,126,31,0,62,31,0,62,255,240,62,255,240,62,255, + 240,62,31,0,62,31,0,62,31,0,124,31,0,124,31,0, + 124,31,0,248,31,3,248,31,255,240,31,255,240,31,255,192, + 31,255,128,19,30,90,24,2,0,3,198,0,7,254,0,15, + 252,0,12,120,0,0,0,0,248,3,224,252,3,224,252,3, + 224,254,3,224,254,3,224,255,3,224,255,3,224,255,131,224, + 255,195,224,251,195,224,251,227,224,249,227,224,249,243,224,248, + 243,224,248,251,224,248,123,224,248,63,224,248,63,224,248,31, + 224,248,31,224,248,15,224,248,15,224,248,7,224,248,7,224, + 248,3,224,23,31,93,25,1,0,1,224,0,0,240,0,0, + 120,0,0,60,0,0,30,0,0,0,0,1,255,0,7,255, + 192,15,255,224,31,255,240,63,199,248,63,1,248,126,0,252, + 124,0,124,124,0,124,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,124,0,124,124,0, + 124,126,0,252,63,1,248,63,199,248,31,255,240,15,255,224, + 7,255,192,1,255,0,23,31,93,25,1,0,0,7,128,0, + 15,0,0,30,0,0,60,0,0,120,0,0,0,0,1,255, + 0,7,255,192,15,255,224,31,255,240,63,199,248,63,1,248, + 126,0,252,124,0,124,124,0,124,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,124,0, + 124,124,0,124,126,0,252,63,1,248,63,199,248,31,255,240, + 15,255,224,7,255,192,1,255,0,23,31,93,25,1,0,0, + 24,0,0,60,0,0,126,0,0,231,0,1,195,128,0,0, + 0,1,255,0,7,255,192,15,255,224,31,255,240,63,199,248, + 63,1,248,126,0,252,124,0,124,124,0,124,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,248,0, + 62,124,0,124,124,0,124,126,0,252,63,1,248,63,199,248, + 31,255,240,15,255,224,7,255,192,1,255,0,23,30,90,25, + 1,0,0,120,192,0,255,192,1,255,128,1,143,0,0,0, + 0,1,255,0,7,255,192,15,255,224,31,255,240,63,199,248, + 63,1,248,126,0,252,124,0,124,124,0,124,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,248,0, + 62,124,0,124,124,0,124,126,0,252,63,1,248,63,199,248, + 31,255,240,15,255,224,7,255,192,1,255,0,23,31,93,25, + 1,0,1,231,128,1,231,128,1,231,128,1,231,128,0,0, + 0,0,0,0,1,255,0,7,255,192,15,255,224,31,255,240, + 63,199,248,63,1,248,126,0,252,124,0,124,124,0,124,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,248,0, + 62,248,0,62,124,0,124,124,0,124,126,0,252,63,1,248, + 63,199,248,31,255,240,15,255,224,7,255,192,1,255,0,15, + 16,32,19,2,0,32,8,112,28,248,62,252,126,126,252,63, + 248,31,240,15,224,15,224,31,240,63,248,126,252,252,126,248, + 62,112,28,32,8,24,25,75,25,1,0,1,255,7,7,255, + 206,15,255,252,31,255,248,63,199,248,63,0,248,126,1,252, + 124,3,252,124,7,188,248,7,62,248,14,62,248,28,62,248, + 56,62,248,112,62,248,224,62,248,224,62,125,192,124,127,128, + 124,127,0,252,63,1,248,63,199,248,63,255,240,63,255,224, + 119,255,192,225,255,0,19,31,93,24,2,0,7,128,0,3, + 192,0,1,224,0,0,240,0,0,120,0,0,0,0,248,3, + 224,248,3,224,248,3,224,248,3,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,252,7,224,127,31,192,127,255,192, + 63,255,128,31,255,0,7,252,0,19,31,93,24,2,0,0, + 30,0,0,60,0,0,120,0,0,240,0,1,224,0,0,0, + 0,248,3,224,248,3,224,248,3,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,248,3,224,252,7,224,127,31,192, + 127,255,192,63,255,128,31,255,0,7,252,0,19,31,93,24, + 2,0,0,96,0,0,240,0,1,248,0,3,156,0,7,14, + 0,0,0,0,248,3,224,248,3,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,248,3,224,248,3,224,252,7,224, + 127,31,192,127,255,192,63,255,128,31,255,0,7,252,0,19, + 31,93,24,2,0,15,30,0,15,30,0,15,30,0,15,30, + 0,0,0,0,0,0,0,248,3,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,248,3,224,248,3,224,248,3,224, + 252,7,224,127,31,192,127,255,192,63,255,128,31,255,0,7, + 252,0,20,31,93,22,1,0,0,30,0,0,60,0,0,120, + 0,0,240,0,1,224,0,0,0,0,252,3,240,252,3,240, + 126,7,224,62,7,192,63,15,192,63,15,128,31,15,128,31, + 159,0,15,159,0,15,254,0,7,254,0,7,252,0,3,252, + 0,3,248,0,3,248,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,18,25,75,22,2,0,248,0,0,248,0, + 0,248,0,0,255,248,0,255,254,0,255,255,0,255,255,128, + 248,31,128,248,15,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,15,192,248,31,128,255,255,128,255,255,0,255,254, + 0,255,252,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,17,25,75,20,2,0,15,192,0,63, + 240,0,127,252,0,255,252,0,248,126,0,248,62,0,240,62, + 0,240,62,0,240,124,0,240,252,0,241,248,0,241,252,0, + 241,254,0,240,127,0,240,31,0,240,31,128,240,15,128,240, + 15,128,240,15,128,240,31,128,240,63,0,241,255,0,241,254, + 0,241,252,0,241,240,0,15,25,50,18,1,0,15,0,7, + 128,3,128,1,192,0,224,0,0,0,0,15,240,63,252,127, + 252,124,62,248,30,248,30,1,254,15,254,63,254,127,30,248, + 30,240,30,240,62,248,126,255,254,255,254,127,222,63,30,15, + 25,50,18,1,0,0,120,0,240,0,224,1,192,3,128,0, + 0,0,0,15,240,63,252,127,252,124,62,248,30,248,30,1, + 254,15,254,63,254,127,30,248,30,240,30,240,62,248,126,255, + 254,255,254,127,222,63,30,15,25,50,18,1,0,1,128,3, + 192,7,224,14,112,28,56,0,0,0,0,15,240,63,252,127, + 252,124,62,248,30,248,30,1,254,15,254,63,254,127,30,248, + 30,240,30,240,62,248,126,255,254,255,254,127,222,63,30,15, + 24,48,18,1,0,7,140,15,252,31,248,24,240,0,0,0, + 0,15,240,63,252,127,252,124,62,248,30,248,30,1,254,15, + 254,63,254,127,30,248,30,240,30,240,62,248,126,255,254,255, + 254,127,222,63,30,15,24,48,18,1,0,30,120,30,120,30, + 120,30,120,0,0,0,0,15,240,63,252,127,252,124,62,248, + 30,248,30,1,254,15,254,63,254,127,30,248,30,240,30,240, + 62,248,126,255,254,255,254,127,222,63,30,15,25,50,18,1, + 0,3,192,6,96,4,32,4,32,6,96,3,192,0,0,15, + 240,63,252,127,252,124,62,248,30,248,30,1,254,15,254,63, + 254,127,30,248,30,248,30,240,62,248,126,255,254,255,254,127, + 222,63,30,26,19,76,29,1,0,7,224,248,0,31,251,254, + 0,63,255,255,0,63,255,255,0,124,63,15,128,120,30,7, + 128,120,30,7,192,0,62,7,192,7,255,255,192,63,255,255, + 192,127,255,255,192,124,30,0,0,248,30,0,0,248,30,7, + 192,252,63,15,192,255,255,255,128,127,247,255,0,63,227,254, + 0,15,129,248,0,15,25,50,18,1,249,7,224,31,248,63, + 252,63,252,124,62,120,30,248,30,240,0,240,0,240,0,240, + 0,248,30,248,30,124,62,127,252,63,248,31,248,7,224,3, + 0,3,0,7,192,0,224,0,224,15,192,15,128,16,25,50, + 18,1,0,15,0,7,128,3,128,1,192,0,224,0,0,0, + 0,7,224,31,248,63,252,127,254,124,62,248,30,240,31,255, + 255,255,255,255,255,240,0,240,0,248,30,124,62,127,254,63, + 252,31,240,7,192,16,25,50,18,1,0,0,120,0,240,0, + 224,1,192,3,128,0,0,0,0,7,224,31,248,63,252,127, + 254,124,62,248,30,240,31,255,255,255,255,255,255,240,0,240, + 0,248,30,124,62,127,254,63,252,31,240,7,192,16,25,50, + 18,1,0,1,128,3,192,7,224,14,112,28,56,0,0,0, + 0,7,224,31,248,63,252,127,254,124,62,248,30,240,31,255, + 255,255,255,255,255,240,0,240,0,248,30,124,62,127,254,63, + 252,31,240,7,192,16,24,48,18,1,0,30,120,30,120,30, + 120,30,120,0,0,0,0,7,224,31,248,63,252,127,254,124, + 62,248,30,240,31,255,255,255,255,255,255,240,0,240,0,248, + 30,124,62,127,254,63,252,31,240,7,192,7,25,25,9,1, + 0,240,120,56,28,14,0,0,30,30,30,30,30,30,30,30, + 30,30,30,30,30,30,30,30,30,30,6,25,25,9,2,0, + 60,56,112,112,224,0,0,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,10,25,50,9,255,0,12, + 0,30,0,63,0,115,128,225,192,0,0,0,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,10,24,48,9,255,0,243,192,243,192,243,192,243,192,0, + 0,0,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,17,26,78,20,1,0,48,0,0, + 120,32,0,124,240,0,63,224,0,31,192,0,63,224,0,115, + 240,0,33,248,0,7,252,0,31,254,0,63,254,0,127,255, + 0,124,31,0,248,15,128,248,15,128,240,7,128,240,7,128, + 240,7,128,248,15,128,248,15,128,252,31,128,126,63,0,127, + 255,0,63,254,0,31,252,0,7,240,0,15,24,48,20,2, + 0,15,24,31,248,63,240,49,224,0,0,0,0,243,240,247, + 248,255,252,255,254,252,62,248,62,240,30,240,30,240,30,240, + 30,240,30,240,30,240,30,240,30,240,30,240,30,240,30,240, + 30,17,25,75,20,1,0,7,128,0,3,192,0,1,192,0, + 1,224,0,0,240,0,0,0,0,0,0,0,7,240,0,31, + 252,0,63,254,0,127,255,0,124,31,0,248,15,128,248,15, + 128,240,7,128,240,7,128,240,7,128,240,7,128,248,15,128, + 248,15,128,124,31,0,127,255,0,63,254,0,31,252,0,7, + 240,0,17,25,75,20,1,0,0,120,0,0,240,0,0,224, + 0,1,192,0,3,192,0,0,0,0,0,0,0,7,240,0, + 31,252,0,63,254,0,127,255,0,124,31,0,248,15,128,248, + 15,128,240,7,128,240,7,128,240,7,128,240,7,128,248,15, + 128,248,15,128,124,31,0,127,255,0,63,254,0,31,252,0, + 7,240,0,17,25,75,20,1,0,0,192,0,1,224,0,3, + 240,0,7,56,0,14,28,0,0,0,0,0,0,0,7,240, + 0,31,252,0,63,254,0,127,255,0,124,31,0,248,15,128, + 248,15,128,240,7,128,240,7,128,240,7,128,240,7,128,248, + 15,128,248,15,128,124,31,0,127,255,0,63,254,0,31,252, + 0,7,240,0,17,24,72,20,1,0,7,140,0,15,252,0, + 31,248,0,24,240,0,0,0,0,0,0,0,7,240,0,31, + 252,0,63,254,0,127,255,0,124,31,0,248,15,128,248,15, + 128,240,7,128,240,7,128,240,7,128,240,7,128,248,15,128, + 248,15,128,124,31,0,127,255,0,63,254,0,31,252,0,7, + 240,0,17,24,72,20,1,0,30,60,0,30,60,0,30,60, + 0,30,60,0,0,0,0,0,0,0,7,240,0,31,252,0, + 63,254,0,127,255,0,124,31,0,248,15,128,248,15,128,240, + 7,128,240,7,128,240,7,128,240,7,128,248,15,128,248,15, + 128,124,31,0,127,255,0,63,254,0,31,252,0,7,240,0, + 16,16,32,19,1,0,3,192,3,192,3,192,3,192,0,0, + 0,0,255,255,255,255,255,255,255,255,0,0,0,0,3,192, + 3,192,3,192,3,192,21,18,54,20,255,0,1,252,56,7, + 255,112,15,255,224,31,255,192,31,143,192,62,7,224,62,15, + 224,60,29,224,60,57,224,60,113,224,62,227,224,63,131,224, + 63,7,224,31,143,192,31,255,192,63,255,128,119,255,0,225, + 252,0,15,25,50,20,2,0,30,0,15,0,7,0,3,128, + 1,192,0,0,0,0,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,248,62, + 248,126,255,254,127,254,127,222,31,30,15,25,50,20,2,0, + 0,240,1,224,1,192,3,128,7,0,0,0,0,0,240,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,248,62,248,126,255,254,127,254,127,222, + 31,30,15,25,50,20,2,0,3,0,7,128,15,192,28,224, + 56,112,0,0,0,0,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,248,62, + 248,126,255,254,127,254,127,222,31,30,15,25,50,20,2,0, + 60,120,60,120,60,120,60,120,0,0,0,0,0,0,240,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,248,62,248,126,255,254,127,254,127,222, + 31,30,16,32,64,19,1,249,0,120,0,240,1,224,1,192, + 3,128,0,0,0,0,248,31,248,31,248,31,120,30,124,62, + 124,60,60,60,60,60,62,120,62,120,30,120,31,240,31,240, + 15,240,15,224,7,224,7,224,7,192,7,192,7,192,15,128, + 63,128,63,0,63,0,60,0,16,32,64,20,2,249,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,243,240,247,252, + 255,254,255,254,252,63,248,31,248,31,240,15,240,15,240,15, + 240,15,248,31,248,31,252,62,255,254,255,252,247,248,241,240, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,16,31, + 62,19,1,249,30,120,30,120,30,120,30,120,0,0,0,0, + 248,31,248,31,248,31,120,62,124,62,124,60,124,60,62,124, + 62,120,62,120,30,120,31,240,31,240,15,240,15,224,7,224, + 7,224,7,192,7,192,7,192,15,128,63,128,63,0,63,0, + 60,0}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--34-240-100-100-P-182-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 23 + Calculated Max Values w=17 h=25 x= 2 y=13 dx=19 dy= 0 ascent=25 len=72 + Font Bounding box w=40 h=49 x=-6 y=-12 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =23 descent= 0 + X Font ascent =23 descent= 0 + Max Font ascent =25 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB24n[720] U8G_SECTION(".progmem.u8g_font_helvB24n") = { + 0,40,49,250,244,23,0,0,0,0,42,57,0,25,250,23, + 0,10,11,22,13,1,13,12,0,12,0,76,128,237,192,255, + 192,127,128,30,0,63,0,127,128,115,128,33,0,16,16,32, + 19,1,0,3,192,3,192,3,192,3,192,3,192,3,192,255, + 255,255,255,255,255,255,255,3,192,3,192,3,192,3,192,3, + 192,3,192,5,11,11,9,2,250,248,248,248,248,248,24,24, + 56,112,224,128,9,5,10,11,1,7,255,128,255,128,255,128, + 255,128,255,128,5,5,5,9,2,0,248,248,248,248,248,8, + 25,25,9,0,0,3,3,3,3,6,6,6,14,12,12,12, + 28,24,24,24,48,48,48,112,96,96,96,192,192,192,15,24, + 48,18,1,0,15,224,31,240,63,248,127,252,124,124,248,62, + 248,62,248,62,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,248,62,248,62,248,62,124,124,127,252,63,248, + 31,240,15,224,10,23,46,18,2,0,1,192,3,192,7,192, + 31,192,255,192,255,192,255,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,16,24,48,18,1,0,15,224, + 63,248,127,252,127,254,252,126,248,63,248,31,240,31,240,31, + 0,63,0,62,0,126,0,252,1,248,7,240,15,224,31,128, + 63,0,126,0,252,0,255,255,255,255,255,255,255,255,16,24, + 48,18,1,0,15,224,63,248,127,252,127,252,248,62,240,62, + 240,30,240,30,0,62,0,124,3,248,3,240,3,252,0,126, + 0,63,0,31,240,31,240,31,240,63,248,62,127,254,127,252, + 63,248,15,224,16,24,48,18,1,0,0,248,0,248,1,248, + 3,248,3,248,7,248,15,120,14,120,30,120,28,120,60,120, + 120,120,112,120,240,120,224,120,255,255,255,255,255,255,255,255, + 0,120,0,120,0,120,0,120,0,120,15,24,48,18,1,0, + 63,252,63,252,63,252,63,252,56,0,120,0,120,0,120,0, + 123,224,127,248,127,252,127,252,120,126,0,62,0,62,0,30, + 0,30,240,62,240,62,248,124,127,252,127,248,63,240,15,192, + 15,24,48,18,1,0,7,224,31,248,63,252,63,254,124,62, + 120,30,240,0,240,0,243,224,247,248,255,252,255,252,252,126, + 248,62,240,30,240,30,240,30,240,30,248,62,124,124,127,252, + 63,248,31,240,7,192,16,24,48,18,1,0,255,255,255,255, + 255,255,255,255,0,30,0,62,0,60,0,120,0,248,0,240, + 1,240,1,224,3,224,3,192,7,192,7,192,7,128,15,128, + 15,128,15,128,31,0,31,0,31,0,31,0,17,24,72,18, + 0,0,7,240,0,31,252,0,63,254,0,62,62,0,124,31, + 0,120,15,0,120,15,0,120,15,0,124,31,0,62,62,0, + 31,252,0,31,252,0,63,254,0,124,31,0,248,15,128,240, + 7,128,240,7,128,240,7,128,248,15,128,126,63,0,127,254, + 0,63,254,0,31,252,0,7,240,0,15,24,48,18,1,0, + 7,192,31,240,63,248,127,252,124,124,248,62,240,30,240,30, + 240,30,240,30,248,62,252,126,127,254,127,254,63,222,7,158, + 0,30,0,30,240,60,248,124,127,248,127,248,31,240,7,192 + }; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--34-240-100-100-P-182-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 23 + Calculated Max Values w=29 h=32 x= 3 y=20 dx=33 dy= 0 ascent=25 len=120 + Font Bounding box w=40 h=49 x=-6 y=-12 + Calculated Min Values x= 0 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =25 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB24r[5214] U8G_SECTION(".progmem.u8g_font_helvB24r") = { + 0,40,49,250,244,25,5,252,14,144,32,127,249,25,249,25, + 249,0,0,0,9,0,1,5,25,25,11,3,0,248,248,248, + 248,248,248,248,248,248,248,248,112,112,112,112,112,112,112,0, + 0,248,248,248,248,248,11,9,18,16,2,16,241,224,241,224, + 241,224,241,224,241,224,241,224,241,224,96,192,96,192,18,25, + 75,19,0,255,3,199,0,3,199,0,3,143,0,3,143,0, + 7,143,0,7,142,0,7,142,0,127,255,192,127,255,192,127, + 255,192,127,255,192,15,28,0,14,28,0,14,28,0,14,60, + 0,255,255,128,255,255,128,255,255,128,255,255,128,28,120,0, + 60,120,0,60,112,0,60,112,0,56,240,0,56,240,0,16, + 28,56,18,1,253,1,128,1,128,15,240,63,252,127,254,253, + 190,249,159,241,159,241,143,249,128,255,128,127,192,63,240,15, + 252,1,254,1,255,1,159,1,143,241,143,241,159,249,159,127, + 254,127,254,63,248,7,224,1,128,1,128,1,128,26,23,92, + 29,1,0,14,0,48,0,63,128,112,0,127,192,96,0,113, + 192,224,0,224,224,192,0,224,225,192,0,224,227,128,0,224, + 227,128,0,113,199,0,0,127,198,0,0,63,142,0,0,14, + 12,28,0,0,28,127,0,0,24,255,128,0,56,227,128,0, + 49,193,192,0,113,193,192,0,97,193,192,0,225,193,192,1, + 192,227,128,1,192,255,128,3,128,127,0,3,0,28,0,20, + 25,75,24,2,0,3,224,0,15,248,0,31,252,0,31,252, + 0,30,60,0,62,60,0,62,60,0,31,60,0,31,248,0, + 15,248,0,15,240,0,15,224,0,63,241,224,127,241,224,124, + 249,192,248,255,192,240,127,192,240,63,128,240,31,0,248,15, + 128,252,63,192,127,255,224,127,251,224,31,241,240,7,192,0, + 4,9,9,8,2,16,240,240,240,240,240,240,240,96,96,8, + 31,31,11,1,250,7,15,30,30,60,60,56,120,120,120,240, + 240,240,240,240,240,240,240,240,248,120,120,120,120,60,60,28, + 30,14,15,7,8,31,31,11,1,250,224,240,120,120,60,60, + 28,30,30,30,15,15,15,15,15,15,15,15,15,31,30,30, + 30,28,60,60,56,120,112,240,224,10,11,22,13,1,13,12, + 0,12,0,76,128,237,192,255,192,127,128,30,0,63,0,127, + 128,115,128,33,0,16,16,32,19,1,0,3,192,3,192,3, + 192,3,192,3,192,3,192,255,255,255,255,255,255,255,255,3, + 192,3,192,3,192,3,192,3,192,3,192,5,11,11,9,2, + 250,248,248,248,248,248,24,24,56,112,224,128,9,5,10,11, + 1,7,255,128,255,128,255,128,255,128,255,128,5,5,5,9, + 2,0,248,248,248,248,248,8,25,25,9,0,0,3,3,3, + 3,6,6,6,14,12,12,12,28,24,24,24,48,48,48,112, + 96,96,96,192,192,192,15,24,48,18,1,0,15,224,31,240, + 63,248,127,252,124,124,248,62,248,62,248,62,240,30,240,30, + 240,30,240,30,240,30,240,30,240,30,240,30,248,62,248,62, + 248,62,124,124,127,252,63,248,31,240,15,224,10,23,46,18, + 2,0,1,192,3,192,7,192,31,192,255,192,255,192,255,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 16,24,48,18,1,0,15,224,63,248,127,252,127,254,252,126, + 248,63,248,31,240,31,240,31,0,63,0,62,0,126,0,252, + 1,248,7,240,15,224,31,128,63,0,126,0,252,0,255,255, + 255,255,255,255,255,255,16,24,48,18,1,0,15,224,63,248, + 127,252,127,252,248,62,240,62,240,30,240,30,0,62,0,124, + 3,248,3,240,3,252,0,126,0,63,0,31,240,31,240,31, + 240,63,248,62,127,254,127,252,63,248,15,224,16,24,48,18, + 1,0,0,248,0,248,1,248,3,248,3,248,7,248,15,120, + 14,120,30,120,28,120,60,120,120,120,112,120,240,120,224,120, + 255,255,255,255,255,255,255,255,0,120,0,120,0,120,0,120, + 0,120,15,24,48,18,1,0,63,252,63,252,63,252,63,252, + 56,0,120,0,120,0,120,0,123,224,127,248,127,252,127,252, + 120,126,0,62,0,62,0,30,0,30,240,62,240,62,248,124, + 127,252,127,248,63,240,15,192,15,24,48,18,1,0,7,224, + 31,248,63,252,63,254,124,62,120,30,240,0,240,0,243,224, + 247,248,255,252,255,252,252,126,248,62,240,30,240,30,240,30, + 240,30,248,62,124,124,127,252,63,248,31,240,7,192,16,24, + 48,18,1,0,255,255,255,255,255,255,255,255,0,30,0,62, + 0,60,0,120,0,248,0,240,1,240,1,224,3,224,3,192, + 7,192,7,192,7,128,15,128,15,128,15,128,31,0,31,0, + 31,0,31,0,17,24,72,18,0,0,7,240,0,31,252,0, + 63,254,0,62,62,0,124,31,0,120,15,0,120,15,0,120, + 15,0,124,31,0,62,62,0,31,252,0,31,252,0,63,254, + 0,124,31,0,248,15,128,240,7,128,240,7,128,240,7,128, + 248,15,128,126,63,0,127,254,0,63,254,0,31,252,0,7, + 240,0,15,24,48,18,1,0,7,192,31,240,63,248,127,252, + 124,124,248,62,240,30,240,30,240,30,240,30,248,62,252,126, + 127,254,127,254,63,222,7,158,0,30,0,30,240,60,248,124, + 127,248,127,248,31,240,7,192,5,17,17,11,3,0,248,248, + 248,248,248,0,0,0,0,0,0,0,248,248,248,248,248,5, + 23,23,11,3,250,248,248,248,248,248,0,0,0,0,0,0, + 0,248,248,248,248,248,24,24,56,112,224,128,16,16,32,19, + 1,0,0,3,0,31,0,127,3,255,15,254,127,248,255,192, + 254,0,254,0,255,192,127,240,15,254,3,255,0,127,0,31, + 0,3,15,12,24,19,2,2,255,254,255,254,255,254,255,254, + 0,0,0,0,0,0,0,0,255,254,255,254,255,254,255,254, + 16,16,32,19,1,0,192,0,240,0,254,0,255,192,127,240, + 31,254,3,255,0,127,0,127,3,255,31,254,127,240,255,192, + 254,0,240,0,192,0,16,25,50,20,2,0,15,224,63,248, + 127,252,127,254,252,126,248,63,248,31,240,31,240,31,0,63, + 0,126,0,254,1,252,1,248,3,224,3,192,7,192,7,192, + 0,0,0,0,7,192,7,192,7,192,7,192,7,192,29,30, + 120,33,1,251,0,15,224,0,0,127,252,0,1,255,254,0, + 3,240,63,128,7,192,7,192,15,0,3,192,30,0,1,224, + 28,0,0,240,60,7,220,112,56,31,252,112,112,60,252,56, + 112,120,120,56,240,240,56,56,224,224,56,56,225,224,56,56, + 225,192,112,120,225,192,112,112,225,192,112,112,225,224,240,224, + 241,225,241,224,112,255,255,192,120,127,63,128,56,62,30,0, + 60,0,0,0,30,0,0,0,15,128,0,0,15,240,60,0, + 3,255,252,0,1,255,252,0,0,127,224,0,22,25,75,23, + 0,0,0,252,0,0,252,0,1,254,0,1,254,0,1,254, + 0,3,255,0,3,255,0,3,255,0,7,207,128,7,207,128, + 7,207,128,15,135,128,15,135,192,15,135,192,31,3,192,31, + 3,224,31,255,224,31,255,224,63,255,240,63,255,240,62,1, + 240,124,0,248,124,0,248,252,0,252,248,0,124,19,25,75, + 24,3,0,255,252,0,255,255,0,255,255,128,255,255,128,248, + 15,192,248,7,192,248,7,192,248,7,192,248,7,192,248,15, + 128,255,255,0,255,255,0,255,255,128,255,255,192,248,7,192, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 7,224,255,255,192,255,255,192,255,255,128,255,254,0,21,25, + 75,24,1,0,1,254,0,7,255,128,15,255,192,31,255,224, + 63,135,240,62,1,240,124,1,248,124,0,248,124,0,248,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,124,0,248,124,0,248,126,1,248,62,1,240, + 63,135,240,31,255,224,15,255,192,7,255,128,1,254,0,21, + 25,75,24,2,0,255,248,0,255,255,0,255,255,128,255,255, + 192,248,15,224,248,3,224,248,3,240,248,1,240,248,1,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,1,248,248,1,240,248,3,240,248,3, + 224,248,15,224,255,255,192,255,255,128,255,255,0,255,248,0, + 18,25,75,22,2,0,255,255,128,255,255,128,255,255,128,255, + 255,128,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,255,255,0,255,255,0,255,255,0,255,255,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,255,255,192,255,255,192,255,255,192,255,255, + 192,16,25,50,20,2,0,255,255,255,255,255,255,255,255,248, + 0,248,0,248,0,248,0,248,0,248,0,255,254,255,254,255, + 254,255,254,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,22,25,75,25,1,0,0, + 255,0,3,255,192,15,255,224,31,255,240,31,195,248,63,0, + 248,126,0,124,124,0,124,252,0,0,248,0,0,248,0,0, + 248,0,0,248,15,252,248,15,252,248,15,252,248,15,252,252, + 0,124,124,0,124,126,0,124,126,0,252,63,131,252,63,255, + 252,31,255,220,7,255,156,3,254,28,19,25,75,23,2,0, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,255,255, + 224,255,255,224,255,255,224,255,255,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,5,25,25,9,2, + 0,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,15,25,50,18,1,0, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,248,62, + 248,62,248,62,248,62,248,62,252,126,255,252,127,252,63,248, + 15,224,20,25,75,24,2,0,248,7,224,248,7,224,248,15, + 192,248,31,128,248,63,0,248,126,0,248,252,0,248,248,0, + 249,248,0,251,240,0,255,224,0,255,224,0,255,240,0,255, + 240,0,255,248,0,252,252,0,248,126,0,248,126,0,248,63, + 0,248,31,128,248,15,128,248,15,192,248,7,224,248,3,240, + 248,3,240,16,25,50,20,2,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,255,255,255,255,255,255,255,255,23,25,75,27,2, + 0,254,0,254,254,0,254,255,1,254,255,1,254,255,1,254, + 255,1,254,255,131,254,255,131,254,251,131,190,251,131,190,251, + 199,190,251,199,190,251,199,190,249,199,62,249,239,62,249,239, + 62,249,239,62,249,239,62,248,238,62,248,254,62,248,254,62, + 248,254,62,248,124,62,248,124,62,248,124,62,19,25,75,24, + 2,0,248,3,224,252,3,224,252,3,224,254,3,224,254,3, + 224,255,3,224,255,3,224,255,131,224,255,195,224,251,195,224, + 251,227,224,249,227,224,249,243,224,248,243,224,248,251,224,248, + 123,224,248,63,224,248,63,224,248,31,224,248,31,224,248,15, + 224,248,15,224,248,7,224,248,7,224,248,3,224,23,25,75, + 25,1,0,1,255,0,7,255,192,15,255,224,31,255,240,63, + 199,248,63,1,248,126,0,252,124,0,124,124,0,124,248,0, + 62,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,124,0,124,124,0,124,126,0,252,63,1,248,63, + 199,248,31,255,240,15,255,224,7,255,192,1,255,0,18,25, + 75,22,2,0,255,248,0,255,254,0,255,255,0,255,255,128, + 248,31,128,248,15,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,15,192,248,31,128,255,255,128,255,255,0,255,252, + 0,255,240,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,23, + 26,78,26,1,255,1,255,0,7,255,192,15,255,224,31,255, + 240,63,199,248,63,1,248,126,0,252,124,0,124,252,0,126, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,2,62,252,7,62,124,15,188,126,15,252,63,7, + 248,63,195,240,31,255,248,15,255,252,7,255,254,1,255,60, + 0,0,24,19,25,75,24,2,0,255,254,0,255,255,128,255, + 255,192,255,255,192,248,7,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,7,192,248,15,192,255,255,128,255,255,0, + 255,255,0,255,255,128,248,15,192,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 224,248,3,224,19,25,75,22,1,0,3,248,0,15,254,0, + 31,255,0,63,255,128,62,31,128,124,7,192,120,7,192,120, + 3,192,124,0,0,127,0,0,63,240,0,63,254,0,31,255, + 128,3,255,192,0,63,192,0,7,224,0,3,224,248,3,224, + 248,3,224,124,3,224,126,15,192,63,255,192,31,255,128,15, + 255,0,3,248,0,19,25,75,20,0,0,255,255,224,255,255, + 224,255,255,224,255,255,224,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,19,25,75,24,2,0,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,248,3,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,252,7,224,127,31,192,127,255,192,63,255, + 128,31,255,0,7,252,0,20,25,75,22,1,0,248,1,240, + 248,1,240,124,3,224,124,3,224,124,3,224,60,3,192,62, + 7,192,62,7,192,30,7,128,31,15,128,31,15,128,15,15, + 0,15,15,0,15,15,0,7,158,0,7,158,0,7,158,0, + 7,254,0,3,252,0,3,252,0,3,252,0,1,248,0,1, + 248,0,1,248,0,0,240,0,29,25,100,31,1,0,248,31, + 129,248,248,31,129,248,120,31,129,240,120,31,129,240,120,31, + 129,240,124,63,195,224,124,63,195,224,124,63,195,224,60,63, + 195,224,60,57,195,192,62,121,227,192,62,121,231,192,30,121, + 231,192,30,121,231,128,30,112,231,128,30,112,231,128,15,240, + 255,0,15,240,255,0,15,240,255,0,15,224,127,0,7,224, + 126,0,7,224,126,0,7,224,126,0,3,192,60,0,3,192, + 60,0,20,25,75,22,1,0,252,3,224,126,7,224,126,7, + 192,63,15,192,31,15,128,31,159,0,15,159,0,15,190,0, + 7,254,0,7,252,0,3,252,0,3,248,0,1,248,0,3, + 248,0,3,252,0,7,252,0,7,254,0,15,191,0,31,159, + 0,31,31,128,63,15,128,62,15,192,126,7,192,252,7,224, + 252,3,240,20,25,75,22,1,0,252,3,240,252,3,224,126, + 7,224,62,7,192,63,15,192,63,15,128,31,15,128,31,159, + 0,15,159,0,15,254,0,7,254,0,7,252,0,3,252,0, + 3,248,0,3,248,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,17,25,75,20,1,0,255,255,128,255,255,128, + 255,255,128,255,255,128,0,15,128,0,31,128,0,63,0,0, + 126,0,0,124,0,0,252,0,1,248,0,3,240,0,3,240, + 0,7,224,0,15,192,0,15,128,0,31,128,0,63,0,0, + 126,0,0,126,0,0,252,0,0,255,255,128,255,255,128,255, + 255,128,255,255,128,8,31,31,11,2,250,255,255,255,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,255,255,255,9,25,50,9,0,0, + 192,0,192,0,224,0,96,0,96,0,112,0,112,0,48,0, + 56,0,56,0,24,0,28,0,28,0,12,0,12,0,14,0, + 14,0,6,0,7,0,7,0,3,0,3,128,3,128,1,128, + 1,128,8,31,31,11,0,250,255,255,255,15,15,15,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,255,255,255,14,14,28,19,2,9,7,128,15, + 192,15,192,15,192,31,224,31,224,60,240,60,240,56,112,120, + 120,120,120,112,60,240,60,240,60,18,2,6,18,0,250,255, + 255,192,255,255,192,5,5,5,11,2,20,224,240,112,120,56, + 15,18,36,18,1,0,15,240,63,252,127,252,124,62,248,30, + 248,30,0,254,15,254,63,254,127,30,248,30,248,30,240,62, + 248,126,255,254,255,254,127,222,63,30,16,25,50,20,2,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,243,240, + 247,252,255,252,255,254,252,62,248,31,240,31,240,15,240,15, + 240,15,240,15,240,31,240,31,248,62,255,254,255,252,247,248, + 241,240,15,18,36,18,1,0,7,224,31,248,63,252,63,252, + 124,62,120,62,240,30,240,0,240,0,240,0,240,0,240,30, + 248,30,124,62,127,252,63,248,31,248,7,224,16,25,50,20, + 1,0,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 15,207,31,239,63,255,127,255,124,63,248,31,240,15,240,15, + 240,15,240,15,240,15,240,15,248,31,124,63,127,255,63,239, + 31,239,15,143,16,18,36,18,1,0,7,224,31,248,63,252, + 127,254,124,62,248,31,240,31,255,255,255,255,255,255,240,0, + 240,0,248,30,124,62,127,252,63,252,31,240,7,192,10,25, + 50,11,0,0,7,192,15,192,31,192,31,0,30,0,30,0, + 30,0,255,192,255,192,255,192,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,16,25,50,20,1,249,15,207,31,239, + 63,255,127,255,124,63,248,31,248,31,240,15,240,15,240,15, + 240,15,248,31,248,31,124,63,127,255,63,255,31,239,15,207, + 0,15,248,31,248,31,126,126,127,254,63,252,15,240,15,25, + 50,20,2,0,240,0,240,0,240,0,240,0,240,0,240,0, + 240,0,241,224,247,248,255,252,255,252,252,62,248,30,248,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,4,25,25,9,2,0,240,240,240,240, + 0,0,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,6,32,32,9,0,249,60,60,60,60,0, + 0,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,252,252,248,248,15,25,50,19,2, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 62,240,124,240,248,241,240,243,224,247,192,255,128,255,192,255, + 192,255,224,255,224,249,240,241,240,240,248,240,120,240,124,240, + 62,240,62,4,25,25,9,2,0,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,24,18,54,30,2,0,241,224,248,247,251,254,255,255, + 254,255,255,255,252,127,31,248,62,15,240,60,15,240,60,15, + 240,60,15,240,60,15,240,60,15,240,60,15,240,60,15,240, + 60,15,240,60,15,240,60,15,240,60,15,240,60,15,15,18, + 36,20,2,0,241,240,247,252,255,252,255,254,252,62,248,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,240,30,17,18,54,20,1,0,7,240, + 0,31,252,0,63,254,0,127,255,0,124,31,0,248,15,128, + 248,15,128,240,7,128,240,7,128,240,7,128,240,7,128,248, + 15,128,248,15,128,124,31,0,127,255,0,63,254,0,31,252, + 0,7,240,0,16,25,50,20,2,249,241,240,247,248,255,252, + 255,254,252,62,248,31,248,31,240,15,240,15,240,15,240,15, + 248,31,248,31,252,62,255,254,255,252,247,248,241,240,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,16,25,50,20, + 1,249,7,207,31,239,63,255,127,255,124,63,248,31,240,15, + 240,15,240,15,240,15,240,15,240,15,248,31,124,63,127,255, + 63,255,63,239,15,207,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,10,18,36,13,2,0,240,192,243,192,247,192, + 255,192,255,192,252,0,248,0,248,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,16,18, + 36,19,1,0,7,240,31,252,63,254,124,62,120,31,120,31, + 124,0,127,192,63,248,15,254,3,255,0,63,248,15,248,15, + 124,31,127,254,63,252,15,240,9,22,44,11,1,0,60,0, + 60,0,60,0,60,0,255,128,255,128,255,128,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,63,128,63,128,31,128,15,128,15,18,36,20,2,0, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,240,30,248,62,248,126,255,254,127,254, + 127,222,31,30,17,18,54,19,0,0,248,15,128,248,15,128, + 124,31,0,124,31,0,60,30,0,60,30,0,62,62,0,30, + 60,0,30,60,0,30,60,0,15,120,0,15,120,0,15,120, + 0,7,240,0,7,240,0,7,240,0,3,224,0,3,224,0, + 25,18,72,26,0,0,248,62,15,128,248,62,15,128,120,62, + 15,0,124,62,31,0,124,127,31,0,60,127,30,0,60,127, + 30,0,60,119,30,0,60,247,158,0,30,227,188,0,30,227, + 188,0,30,227,188,0,31,227,252,0,15,193,248,0,15,193, + 248,0,15,193,248,0,7,128,240,0,7,128,240,0,16,18, + 36,19,1,0,248,31,252,63,124,62,62,124,62,120,31,248, + 15,240,7,224,3,192,7,224,15,224,15,240,31,248,62,120, + 62,124,124,62,252,63,248,31,16,25,50,19,1,249,248,31, + 248,31,248,30,120,62,124,62,124,60,60,60,62,124,62,120, + 30,120,30,120,31,240,15,240,15,240,15,224,7,224,7,224, + 7,192,7,192,7,192,15,128,63,128,63,0,63,0,60,0, + 14,18,36,17,1,0,255,252,255,252,255,252,255,252,0,248, + 1,240,3,240,7,224,15,192,31,128,31,0,62,0,124,0, + 248,0,255,252,255,252,255,252,255,252,9,32,64,13,2,249, + 15,128,31,128,63,128,62,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,124,0,120,0, + 224,0,120,0,124,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,63,128,31,128,15,128, + 3,31,31,9,3,250,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,9,32,64,13,2,249,248,0,252,0,254, + 0,62,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,31,0,15,0,3,128,15,0,31, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,254,0,252,0,248,0,14,6,12,19,2, + 5,56,0,126,12,255,156,231,252,193,248,0,112,255}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--11-80-100-100-P-56-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=10 h=11 x= 1 y= 7 dx=11 dy= 0 ascent=11 len=18 + Font Bounding box w=13 h=18 x=-2 y=-4 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR08[2687] U8G_SECTION(".progmem.u8g_font_helvR08") = { + 0,13,18,254,252,8,1,178,3,111,32,255,254,11,254,8, + 254,0,0,0,3,0,1,1,8,8,3,1,0,128,128,128, + 128,128,128,0,128,3,2,2,4,1,6,160,160,6,7,7, + 6,0,0,40,40,124,40,248,80,80,5,10,10,6,0,255, + 32,112,168,160,112,40,40,168,112,32,8,8,8,9,0,0, + 100,148,104,8,16,22,41,38,6,8,8,8,1,0,96,144, + 144,96,148,136,152,100,1,2,2,2,0,6,128,128,3,10, + 10,4,0,254,32,64,64,128,128,128,128,64,64,32,3,10, + 10,4,1,254,128,64,64,32,32,32,32,64,64,128,3,3, + 3,4,0,5,160,64,160,5,5,5,6,0,1,32,32,248, + 32,32,2,3,3,3,0,254,64,64,128,3,1,1,4,0, + 3,224,1,1,1,3,1,0,128,3,8,8,3,0,0,32, + 32,64,64,64,64,128,128,5,8,8,6,0,0,112,136,136, + 136,136,136,136,112,2,8,8,6,1,0,64,192,64,64,64, + 64,64,64,5,8,8,6,0,0,112,136,8,8,48,64,128, + 248,5,8,8,6,0,0,112,136,8,48,8,8,136,112,5, + 8,8,6,0,0,16,48,80,80,144,248,16,16,5,8,8, + 6,0,0,120,64,64,112,8,8,136,112,5,8,8,6,0, + 0,112,136,128,240,136,136,136,112,5,8,8,6,0,0,248, + 8,16,32,32,64,64,64,5,8,8,6,0,0,112,136,136, + 112,136,136,136,112,5,8,8,6,0,0,112,136,136,136,120, + 8,136,112,1,6,6,3,1,0,128,0,0,0,0,128,2, + 8,8,3,0,254,64,0,0,0,0,64,64,128,3,5,5, + 6,1,1,32,64,128,64,32,4,3,3,5,0,2,240,0, + 240,3,5,5,6,1,1,128,64,32,64,128,4,8,8,6, + 1,0,96,144,16,32,64,64,0,64,10,9,18,11,0,255, + 31,0,32,128,77,64,146,64,162,64,164,128,155,0,64,0, + 62,0,7,8,8,7,0,0,16,16,40,40,68,124,130,130, + 5,8,8,7,1,0,240,136,136,240,136,136,136,240,6,8, + 8,8,1,0,120,132,128,128,128,128,132,120,6,8,8,8, + 1,0,240,136,132,132,132,132,136,240,5,8,8,7,1,0, + 248,128,128,248,128,128,128,248,5,8,8,6,1,0,248,128, + 128,240,128,128,128,128,6,8,8,8,1,0,120,132,128,128, + 140,132,132,124,6,8,8,8,1,0,132,132,132,252,132,132, + 132,132,1,8,8,3,1,0,128,128,128,128,128,128,128,128, + 4,8,8,5,0,0,16,16,16,16,16,16,144,96,5,8, + 8,7,1,0,136,144,160,224,144,144,136,136,4,8,8,6, + 1,0,128,128,128,128,128,128,128,240,7,8,8,9,1,0, + 130,198,198,170,170,146,146,146,6,8,8,8,1,0,196,196, + 164,164,148,148,140,140,6,8,8,8,1,0,120,132,132,132, + 132,132,132,120,5,8,8,7,1,0,240,136,136,240,128,128, + 128,128,7,9,9,8,1,255,120,132,132,132,132,148,140,124, + 2,5,8,8,7,1,0,240,136,136,240,136,136,136,136,5, + 8,8,7,1,0,112,136,128,112,8,136,136,112,5,8,8, + 5,0,0,248,32,32,32,32,32,32,32,6,8,8,8,1, + 0,132,132,132,132,132,132,132,120,7,8,8,7,0,0,130, + 130,68,68,68,40,40,16,9,8,16,9,0,0,136,128,136, + 128,73,0,73,0,85,0,34,0,34,0,34,0,5,8,8, + 7,1,0,136,136,80,32,80,80,136,136,7,8,8,7,0, + 0,130,68,68,40,40,16,16,16,5,8,8,7,1,0,248, + 8,16,32,32,64,128,248,2,10,10,3,1,254,192,128,128, + 128,128,128,128,128,128,192,3,8,8,3,0,0,128,128,64, + 64,64,64,32,32,2,10,10,3,0,254,192,64,64,64,64, + 64,64,64,64,192,5,5,5,6,0,3,32,32,80,80,136, + 6,1,1,6,0,254,252,2,2,2,3,0,7,128,64,5, + 6,6,5,0,0,224,16,112,144,144,104,5,8,8,6,0, + 0,128,128,176,200,136,136,200,176,4,6,6,5,0,0,96, + 144,128,128,144,96,5,8,8,6,0,0,8,8,104,152,136, + 136,152,104,4,6,6,5,0,0,96,144,240,128,144,96,4, + 8,8,4,0,0,48,64,224,64,64,64,64,64,5,8,8, + 6,0,254,104,152,136,136,152,104,8,112,5,8,8,6,0, + 0,128,128,176,200,136,136,136,136,1,8,8,2,0,0,128, + 0,128,128,128,128,128,128,2,10,10,2,255,254,64,0,64, + 64,64,64,64,64,64,128,4,8,8,5,0,0,128,128,144, + 160,192,160,144,144,1,8,8,2,0,0,128,128,128,128,128, + 128,128,128,7,6,6,8,0,0,236,146,146,146,146,146,5, + 6,6,6,0,0,176,200,136,136,136,136,5,6,6,6,0, + 0,112,136,136,136,136,112,5,8,8,6,0,254,176,200,136, + 136,200,176,128,128,5,8,8,6,0,254,104,152,136,136,152, + 104,8,8,3,6,6,4,0,0,160,192,128,128,128,128,4, + 6,6,5,0,0,96,144,96,16,144,96,3,8,8,4,0, + 0,64,64,224,64,64,64,64,96,4,6,6,5,0,0,144, + 144,144,144,144,112,5,6,6,6,0,0,136,136,80,80,32, + 32,7,6,6,8,0,0,146,146,84,84,40,40,5,6,6, + 6,0,0,136,80,32,80,136,136,5,8,8,5,255,254,72, + 72,80,80,48,32,32,192,4,6,6,5,0,0,240,16,32, + 64,128,240,3,10,10,3,0,254,32,64,64,64,128,64,64, + 64,64,32,1,10,10,3,1,254,128,128,128,128,128,128,128, + 128,128,128,3,10,10,3,0,254,128,64,64,64,32,64,64, + 64,64,128,6,2,2,7,0,3,100,152,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,3, + 0,1,1,8,8,3,1,254,128,0,128,128,128,128,128,128, + 5,8,8,6,1,255,16,112,168,160,160,168,112,64,5,8, + 8,6,0,0,48,72,64,224,64,64,72,176,4,6,6,5, + 0,1,144,96,144,144,96,144,5,8,8,6,0,0,136,136, + 136,80,248,32,248,32,1,10,10,3,1,254,128,128,128,128, + 0,0,128,128,128,128,5,10,10,6,0,254,112,136,192,112, + 152,200,112,24,136,112,3,1,1,3,0,7,160,7,7,7, + 9,1,0,56,68,154,162,154,68,56,3,5,5,4,0,3, + 224,32,160,0,224,5,5,5,6,0,0,40,80,160,80,40, + 5,3,3,7,1,2,248,8,8,3,1,1,4,0,3,224, + 7,7,7,9,1,0,56,68,186,178,170,68,56,3,1,1, + 3,0,7,224,4,4,4,4,0,4,96,144,144,96,5,7, + 7,6,0,0,32,32,248,32,32,0,248,3,4,4,3,0, + 4,96,160,64,224,3,4,4,3,0,4,224,64,32,192,2, + 2,2,3,0,7,64,128,4,8,8,5,0,254,144,144,144, + 144,144,240,128,128,6,10,10,6,0,254,124,232,232,232,104, + 40,40,40,40,40,2,1,1,3,0,3,192,2,2,2,3, + 0,254,64,192,2,4,4,3,0,4,64,192,64,64,3,5, + 5,4,0,3,224,160,224,0,224,5,5,5,6,0,0,160, + 80,40,80,160,9,8,16,9,0,0,68,0,196,0,72,0, + 72,0,17,0,19,0,39,128,33,0,8,8,8,9,0,0, + 68,196,72,72,19,21,34,39,9,8,16,9,0,0,224,0, + 68,0,36,0,200,0,9,0,19,0,23,128,33,0,4,8, + 8,6,1,254,32,0,32,32,64,128,144,96,7,11,11,7, + 0,0,32,16,0,16,16,40,40,68,124,130,130,7,11,11, + 7,0,0,8,16,0,16,16,40,40,68,124,130,130,7,11, + 11,7,0,0,16,40,0,16,16,40,40,68,124,130,130,7, + 11,11,7,0,0,20,40,0,16,16,40,40,68,124,130,130, + 7,10,10,7,0,0,40,0,16,16,40,40,68,124,130,130, + 7,11,11,7,0,0,16,40,16,16,16,40,40,68,124,130, + 130,9,8,16,10,0,0,31,128,24,0,40,0,47,128,72, + 0,120,0,136,0,143,128,6,10,10,8,1,254,120,132,128, + 128,128,128,132,120,16,48,5,11,11,7,1,0,64,32,0, + 248,128,128,248,128,128,128,248,5,11,11,7,1,0,16,32, + 0,248,128,128,248,128,128,128,248,5,11,11,7,1,0,32, + 80,0,248,128,128,248,128,128,128,248,5,10,10,7,1,0, + 80,0,248,128,128,248,128,128,128,248,2,11,11,3,0,0, + 128,64,0,64,64,64,64,64,64,64,64,2,11,11,3,1, + 0,64,128,0,128,128,128,128,128,128,128,128,3,11,11,3, + 0,0,64,160,0,64,64,64,64,64,64,64,64,3,10,10, + 3,0,0,160,0,64,64,64,64,64,64,64,64,7,8,8, + 8,0,0,120,68,66,242,66,66,68,120,6,11,11,8,1, + 0,40,80,0,196,196,164,164,148,148,140,140,6,11,11,8, + 1,0,32,16,0,120,132,132,132,132,132,132,120,6,11,11, + 8,1,0,8,16,0,120,132,132,132,132,132,132,120,6,11, + 11,8,1,0,32,80,0,120,132,132,132,132,132,132,120,6, + 11,11,8,1,0,40,80,0,120,132,132,132,132,132,132,120, + 6,10,10,8,1,0,72,0,120,132,132,132,132,132,132,120, + 5,5,5,6,0,1,136,80,32,80,136,6,10,10,8,1, + 255,4,120,140,148,148,164,164,196,120,128,6,11,11,8,1, + 0,32,16,0,132,132,132,132,132,132,132,120,6,11,11,8, + 1,0,8,16,0,132,132,132,132,132,132,132,120,6,11,11, + 8,1,0,32,80,0,132,132,132,132,132,132,132,120,6,10, + 10,8,1,0,72,0,132,132,132,132,132,132,132,120,7,11, + 11,7,0,0,8,16,0,130,68,68,40,40,16,16,16,5, + 8,8,7,1,0,128,128,240,136,136,240,128,128,4,8,8, + 5,0,0,96,144,144,160,144,144,144,160,5,9,9,5,0, + 0,64,32,0,224,16,112,144,144,104,5,9,9,5,0,0, + 32,64,0,224,16,112,144,144,104,5,9,9,5,0,0,32, + 80,0,224,16,112,144,144,104,5,9,9,5,0,0,80,160, + 0,224,16,112,144,144,104,5,8,8,5,0,0,80,0,224, + 16,112,144,144,104,5,9,9,5,0,0,32,80,32,224,16, + 112,144,144,104,7,6,6,8,0,0,236,18,126,144,146,108, + 4,8,8,5,0,254,96,144,128,128,144,96,32,96,4,9, + 9,5,0,0,64,32,0,96,144,240,128,144,96,4,9,9, + 5,0,0,32,64,0,96,144,240,128,144,96,4,9,9,5, + 0,0,64,160,0,96,144,240,128,144,96,4,8,8,5,0, + 0,160,0,96,144,240,128,144,96,2,9,9,2,255,0,128, + 64,0,64,64,64,64,64,64,2,9,9,2,0,0,64,128, + 0,128,128,128,128,128,128,3,9,9,2,255,0,64,160,0, + 64,64,64,64,64,64,3,8,8,2,255,0,160,0,64,64, + 64,64,64,64,5,9,9,6,0,0,64,120,144,120,136,136, + 136,136,112,4,9,9,5,0,0,80,160,0,224,144,144,144, + 144,144,5,9,9,6,0,0,64,32,0,112,136,136,136,136, + 112,5,9,9,6,0,0,16,32,0,112,136,136,136,136,112, + 5,9,9,6,0,0,32,80,0,112,136,136,136,136,112,5, + 9,9,6,0,0,40,80,0,112,136,136,136,136,112,5,8, + 8,6,0,0,80,0,112,136,136,136,136,112,5,5,5,6, + 0,1,32,0,248,0,32,7,6,6,6,255,0,58,76,84, + 100,68,184,4,9,9,5,0,0,64,32,0,144,144,144,144, + 144,112,4,9,9,5,0,0,16,32,0,144,144,144,144,144, + 112,4,9,9,5,0,0,64,160,0,144,144,144,144,144,112, + 4,8,8,5,0,0,160,0,144,144,144,144,144,112,5,11, + 11,5,255,254,8,16,0,72,72,80,80,48,32,32,192,5, + 10,10,6,0,254,128,128,176,200,136,136,200,176,128,128,5, + 10,10,5,255,254,80,0,72,72,80,80,48,32,32,192}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--11-80-100-100-P-56-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=10 h=10 x= 1 y= 7 dx=11 dy= 0 ascent= 9 len=18 + Font Bounding box w=13 h=18 x=-2 y=-4 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR08r[1276] U8G_SECTION(".progmem.u8g_font_helvR08r") = { + 0,13,18,254,252,8,1,178,3,111,32,127,254,9,254,8, + 254,0,0,0,3,0,1,1,8,8,3,1,0,128,128,128, + 128,128,128,0,128,3,2,2,4,1,6,160,160,6,7,7, + 6,0,0,40,40,124,40,248,80,80,5,10,10,6,0,255, + 32,112,168,160,112,40,40,168,112,32,8,8,8,9,0,0, + 100,148,104,8,16,22,41,38,6,8,8,8,1,0,96,144, + 144,96,148,136,152,100,1,2,2,2,0,6,128,128,3,10, + 10,4,0,254,32,64,64,128,128,128,128,64,64,32,3,10, + 10,4,1,254,128,64,64,32,32,32,32,64,64,128,3,3, + 3,4,0,5,160,64,160,5,5,5,6,0,1,32,32,248, + 32,32,2,3,3,3,0,254,64,64,128,3,1,1,4,0, + 3,224,1,1,1,3,1,0,128,3,8,8,3,0,0,32, + 32,64,64,64,64,128,128,5,8,8,6,0,0,112,136,136, + 136,136,136,136,112,2,8,8,6,1,0,64,192,64,64,64, + 64,64,64,5,8,8,6,0,0,112,136,8,8,48,64,128, + 248,5,8,8,6,0,0,112,136,8,48,8,8,136,112,5, + 8,8,6,0,0,16,48,80,80,144,248,16,16,5,8,8, + 6,0,0,120,64,64,112,8,8,136,112,5,8,8,6,0, + 0,112,136,128,240,136,136,136,112,5,8,8,6,0,0,248, + 8,16,32,32,64,64,64,5,8,8,6,0,0,112,136,136, + 112,136,136,136,112,5,8,8,6,0,0,112,136,136,136,120, + 8,136,112,1,6,6,3,1,0,128,0,0,0,0,128,2, + 8,8,3,0,254,64,0,0,0,0,64,64,128,3,5,5, + 6,1,1,32,64,128,64,32,4,3,3,5,0,2,240,0, + 240,3,5,5,6,1,1,128,64,32,64,128,4,8,8,6, + 1,0,96,144,16,32,64,64,0,64,10,9,18,11,0,255, + 31,0,32,128,77,64,146,64,162,64,164,128,155,0,64,0, + 62,0,7,8,8,7,0,0,16,16,40,40,68,124,130,130, + 5,8,8,7,1,0,240,136,136,240,136,136,136,240,6,8, + 8,8,1,0,120,132,128,128,128,128,132,120,6,8,8,8, + 1,0,240,136,132,132,132,132,136,240,5,8,8,7,1,0, + 248,128,128,248,128,128,128,248,5,8,8,6,1,0,248,128, + 128,240,128,128,128,128,6,8,8,8,1,0,120,132,128,128, + 140,132,132,124,6,8,8,8,1,0,132,132,132,252,132,132, + 132,132,1,8,8,3,1,0,128,128,128,128,128,128,128,128, + 4,8,8,5,0,0,16,16,16,16,16,16,144,96,5,8, + 8,7,1,0,136,144,160,224,144,144,136,136,4,8,8,6, + 1,0,128,128,128,128,128,128,128,240,7,8,8,9,1,0, + 130,198,198,170,170,146,146,146,6,8,8,8,1,0,196,196, + 164,164,148,148,140,140,6,8,8,8,1,0,120,132,132,132, + 132,132,132,120,5,8,8,7,1,0,240,136,136,240,128,128, + 128,128,7,9,9,8,1,255,120,132,132,132,132,148,140,124, + 2,5,8,8,7,1,0,240,136,136,240,136,136,136,136,5, + 8,8,7,1,0,112,136,128,112,8,136,136,112,5,8,8, + 5,0,0,248,32,32,32,32,32,32,32,6,8,8,8,1, + 0,132,132,132,132,132,132,132,120,7,8,8,7,0,0,130, + 130,68,68,68,40,40,16,9,8,16,9,0,0,136,128,136, + 128,73,0,73,0,85,0,34,0,34,0,34,0,5,8,8, + 7,1,0,136,136,80,32,80,80,136,136,7,8,8,7,0, + 0,130,68,68,40,40,16,16,16,5,8,8,7,1,0,248, + 8,16,32,32,64,128,248,2,10,10,3,1,254,192,128,128, + 128,128,128,128,128,128,192,3,8,8,3,0,0,128,128,64, + 64,64,64,32,32,2,10,10,3,0,254,192,64,64,64,64, + 64,64,64,64,192,5,5,5,6,0,3,32,32,80,80,136, + 6,1,1,6,0,254,252,2,2,2,3,0,7,128,64,5, + 6,6,5,0,0,224,16,112,144,144,104,5,8,8,6,0, + 0,128,128,176,200,136,136,200,176,4,6,6,5,0,0,96, + 144,128,128,144,96,5,8,8,6,0,0,8,8,104,152,136, + 136,152,104,4,6,6,5,0,0,96,144,240,128,144,96,4, + 8,8,4,0,0,48,64,224,64,64,64,64,64,5,8,8, + 6,0,254,104,152,136,136,152,104,8,112,5,8,8,6,0, + 0,128,128,176,200,136,136,136,136,1,8,8,2,0,0,128, + 0,128,128,128,128,128,128,2,10,10,2,255,254,64,0,64, + 64,64,64,64,64,64,128,4,8,8,5,0,0,128,128,144, + 160,192,160,144,144,1,8,8,2,0,0,128,128,128,128,128, + 128,128,128,7,6,6,8,0,0,236,146,146,146,146,146,5, + 6,6,6,0,0,176,200,136,136,136,136,5,6,6,6,0, + 0,112,136,136,136,136,112,5,8,8,6,0,254,176,200,136, + 136,200,176,128,128,5,8,8,6,0,254,104,152,136,136,152, + 104,8,8,3,6,6,4,0,0,160,192,128,128,128,128,4, + 6,6,5,0,0,96,144,96,16,144,96,3,8,8,4,0, + 0,64,64,224,64,64,64,64,96,4,6,6,5,0,0,144, + 144,144,144,144,112,5,6,6,6,0,0,136,136,80,80,32, + 32,7,6,6,8,0,0,146,146,84,84,40,40,5,6,6, + 6,0,0,136,80,32,80,136,136,5,8,8,5,255,254,72, + 72,80,80,48,32,32,192,4,6,6,5,0,0,240,16,32, + 64,128,240,3,10,10,3,0,254,32,64,64,64,128,64,64, + 64,64,32,1,10,10,3,1,254,128,128,128,128,128,128,128, + 128,128,128,3,10,10,3,0,254,128,64,64,64,32,64,64, + 64,64,128,6,2,2,7,0,3,100,152,255}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--14-100-100-100-P-76-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=13 h=14 x= 2 y= 9 dx=14 dy= 0 ascent=14 len=28 + Font Bounding box w=17 h=22 x=-2 y=-5 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR10[3527] U8G_SECTION(".progmem.u8g_font_helvR10") = { + 0,17,22,254,251,11,2,10,4,133,32,255,253,14,253,11, + 253,0,0,0,4,0,1,1,11,11,4,2,0,128,128,128, + 128,128,128,128,128,0,128,128,3,3,3,5,1,8,160,160, + 160,7,10,10,8,0,0,20,20,20,126,40,40,252,80,80, + 80,7,14,14,8,0,254,16,124,146,146,144,80,56,20,18, + 146,146,124,16,16,11,11,22,12,0,0,112,128,137,0,137, + 0,114,0,2,0,4,0,8,0,9,192,18,32,18,32,33, + 192,8,10,10,10,1,0,48,72,72,48,32,82,138,132,138, + 113,1,3,3,3,1,8,128,128,128,3,14,14,5,1,253, + 32,64,64,128,128,128,128,128,128,128,128,64,64,32,3,14, + 14,5,1,253,128,64,64,32,32,32,32,32,32,32,32,64, + 64,128,5,5,5,7,1,6,32,168,112,168,32,7,7,7, + 9,1,1,16,16,16,254,16,16,16,2,4,4,3,0,254, + 64,64,64,128,3,1,1,4,0,4,224,1,2,2,3,1, + 0,128,128,4,11,11,4,0,0,16,16,32,32,32,64,64, + 64,128,128,128,6,11,11,8,1,0,120,132,132,132,132,132, + 132,132,132,132,120,3,11,11,8,2,0,32,224,32,32,32, + 32,32,32,32,32,32,6,11,11,8,1,0,120,132,132,4, + 8,16,32,64,128,128,252,6,11,11,8,1,0,120,132,132, + 4,4,56,4,4,132,132,120,7,11,11,8,1,0,4,12, + 20,36,68,132,132,254,4,4,4,6,11,11,8,1,0,252, + 128,128,128,248,4,4,4,132,132,120,6,11,11,8,1,0, + 120,132,128,128,184,196,132,132,132,132,120,6,11,11,8,1, + 0,252,4,8,8,16,16,32,32,64,64,64,6,11,11,8, + 1,0,120,132,132,132,132,120,132,132,132,132,120,6,11,11, + 8,1,0,120,132,132,132,132,124,4,4,132,132,120,1,8, + 8,3,1,0,128,128,0,0,0,0,128,128,2,10,10,4, + 0,254,64,64,0,0,0,0,64,64,64,128,6,5,5,8, + 1,2,12,48,192,48,12,6,3,3,9,1,3,252,0,252, + 6,5,5,8,1,2,192,48,12,48,192,6,11,11,8,1, + 0,48,204,132,132,4,8,16,32,0,32,32,11,12,24,13, + 1,255,15,0,48,192,64,32,70,160,137,32,145,32,145,32, + 147,64,141,128,64,0,96,128,31,0,9,11,22,9,0,0, + 8,0,28,0,20,0,20,0,34,0,34,0,65,0,127,0, + 65,0,128,128,128,128,7,11,11,9,1,0,252,134,130,130, + 132,248,132,130,130,134,252,8,11,11,10,1,0,28,99,65, + 128,128,128,128,128,65,99,28,8,11,11,10,1,0,248,134, + 130,129,129,129,129,129,130,134,248,7,11,11,9,1,0,254, + 128,128,128,128,252,128,128,128,128,254,7,11,11,8,1,0, + 254,128,128,128,128,252,128,128,128,128,128,9,11,22,11,1, + 0,30,0,97,128,64,128,128,0,128,0,135,128,128,128,128, + 128,64,128,99,128,28,128,8,11,11,10,1,0,129,129,129, + 129,129,255,129,129,129,129,129,1,11,11,4,2,0,128,128, + 128,128,128,128,128,128,128,128,128,6,11,11,7,0,0,4, + 4,4,4,4,4,4,4,132,132,120,8,11,11,9,1,0, + 130,132,136,144,160,224,144,136,132,130,129,6,11,11,8,2, + 0,128,128,128,128,128,128,128,128,128,128,252,11,11,22,12, + 0,0,128,32,192,96,192,96,160,160,160,160,145,32,145,32, + 138,32,138,32,132,32,132,32,8,11,11,10,1,0,193,161, + 161,145,145,137,137,133,133,131,131,9,11,22,11,1,0,28, + 0,99,0,65,0,128,128,128,128,128,128,128,128,128,128,65, + 0,99,0,28,0,7,11,11,9,1,0,252,134,130,130,134, + 252,128,128,128,128,128,9,11,22,11,1,0,28,0,99,0, + 65,0,128,128,128,128,128,128,136,128,132,128,67,0,99,0, + 28,128,8,11,11,10,1,0,254,131,129,129,130,252,130,129, + 129,129,129,7,11,11,9,1,0,56,198,130,128,96,24,6, + 2,130,198,56,9,11,22,9,0,0,255,128,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,11,11,10,1,0,129,129,129,129,129,129,129,129,129,66, + 60,9,11,22,9,0,0,128,128,128,128,65,0,65,0,99, + 0,34,0,34,0,20,0,20,0,8,0,8,0,13,11,22, + 13,0,0,130,8,130,8,133,8,69,16,69,16,69,16,40, + 160,40,160,40,160,16,64,16,64,9,11,22,9,0,0,128, + 128,65,0,34,0,20,0,8,0,8,0,20,0,34,0,65, + 0,65,0,128,128,9,11,22,9,0,0,128,128,193,128,65, + 0,34,0,34,0,20,0,28,0,8,0,8,0,8,0,8, + 0,7,11,11,9,1,0,254,2,4,8,24,16,32,96,64, + 128,254,3,14,14,4,1,253,224,128,128,128,128,128,128,128, + 128,128,128,128,128,224,4,11,11,4,0,0,128,128,64,64, + 64,32,32,32,16,16,16,3,14,14,4,0,253,224,32,32, + 32,32,32,32,32,32,32,32,32,32,224,5,5,5,7,1, + 6,32,80,80,136,136,8,1,1,8,0,253,255,2,2,2, + 5,1,9,128,64,7,8,8,8,1,0,120,204,4,124,196, + 132,204,118,6,11,11,7,1,0,128,128,128,184,204,132,132, + 132,132,204,184,6,8,8,7,1,0,120,204,128,128,128,132, + 204,120,6,11,11,8,1,0,4,4,4,116,204,132,132,132, + 132,204,116,6,8,8,8,1,0,120,204,132,252,128,128,204, + 120,4,11,11,4,0,0,48,64,64,224,64,64,64,64,64, + 64,64,6,11,11,8,1,253,116,204,132,132,132,132,204,116, + 4,204,120,6,11,11,8,1,0,128,128,128,184,204,132,132, + 132,132,132,132,1,11,11,3,1,0,128,128,0,128,128,128, + 128,128,128,128,128,3,14,14,3,255,253,32,32,0,32,32, + 32,32,32,32,32,32,32,32,192,6,11,11,7,1,0,128, + 128,128,136,144,160,192,160,144,136,132,1,11,11,3,1,0, + 128,128,128,128,128,128,128,128,128,128,128,9,8,16,11,1, + 0,179,0,204,128,136,128,136,128,136,128,136,128,136,128,136, + 128,6,8,8,8,1,0,184,204,132,132,132,132,132,132,6, + 8,8,8,1,0,120,204,132,132,132,132,204,120,6,11,11, + 8,1,253,184,204,132,132,132,132,204,184,128,128,128,6,11, + 11,8,1,253,116,204,132,132,132,132,204,116,4,4,4,4, + 8,8,5,1,0,176,192,128,128,128,128,128,128,5,8,8, + 7,1,0,112,136,192,112,24,8,136,112,4,10,10,4,0, + 0,64,64,224,64,64,64,64,64,64,48,6,8,8,7,1, + 0,132,132,132,132,132,132,204,116,7,8,8,7,0,0,130, + 130,68,68,68,40,40,16,9,8,16,10,0,0,136,128,136, + 128,136,128,73,0,73,0,85,0,34,0,34,0,7,8,8, + 7,0,0,198,68,40,16,16,40,68,198,7,11,11,7,0, + 253,130,194,68,68,36,40,24,16,16,48,96,6,8,8,7, + 0,0,252,4,8,16,32,64,128,252,5,14,14,5,0,253, + 24,32,32,32,32,64,128,64,32,32,32,32,32,24,1,14, + 14,3,1,253,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,5,14,14,5,0,253,192,32,32,32,32,16,8,16, + 32,32,32,32,32,192,6,3,3,8,1,3,100,180,152,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 0,0,0,4,0,1,1,11,11,4,1,253,128,128,0,128, + 128,128,128,128,128,128,128,6,10,10,8,1,255,4,120,204, + 144,144,160,164,204,120,128,7,11,11,8,0,0,56,68,64, + 64,248,32,32,32,64,98,220,6,6,6,8,1,2,132,120, + 72,72,120,132,7,11,11,7,0,0,130,130,130,68,68,40, + 254,16,254,16,16,1,14,14,3,1,253,128,128,128,128,128, + 128,0,0,128,128,128,128,128,128,5,14,14,8,2,253,112, + 216,136,192,112,152,136,136,200,112,24,136,216,112,5,1,1, + 5,0,9,216,10,11,22,12,1,0,30,0,97,128,92,128, + 162,192,162,64,160,64,162,64,156,64,64,128,97,128,30,0, + 4,7,7,6,1,4,224,16,112,144,208,0,240,6,5,5, + 8,1,2,36,72,144,72,36,7,4,4,9,1,2,254,2, + 2,2,3,1,1,4,0,4,224,10,11,22,12,1,0,30, + 0,97,128,92,128,146,64,146,64,156,64,146,64,146,64,64, + 128,97,128,30,0,4,1,1,4,0,9,240,4,4,4,6, + 1,7,96,144,144,96,7,9,9,9,1,0,16,16,16,254, + 16,16,16,0,254,4,6,6,5,0,5,96,144,16,32,64, + 240,4,6,6,5,0,5,96,144,32,16,144,96,2,2,2, + 5,2,9,64,128,6,11,11,8,1,253,132,132,132,132,132, + 132,204,180,128,128,128,7,14,14,8,0,253,62,116,244,244, + 244,116,52,20,20,20,20,20,20,20,2,1,1,4,1,4, + 192,4,3,3,5,0,253,32,144,96,2,6,6,5,1,5, + 64,192,64,64,64,64,4,7,7,6,1,4,96,144,144,144, + 96,0,240,6,5,5,8,1,2,144,72,36,72,144,10,11, + 22,12,1,0,66,0,194,0,68,0,68,0,72,0,72,128, + 9,128,18,128,20,128,39,192,32,128,9,11,22,12,1,0, + 66,0,194,0,68,0,68,0,72,0,75,0,20,128,16,128, + 17,0,34,0,39,128,11,11,22,12,0,0,97,0,145,0, + 34,0,18,0,148,0,100,64,4,192,9,64,10,64,19,224, + 16,64,6,11,11,8,1,253,16,16,0,16,32,64,128,132, + 132,204,48,9,14,28,9,0,0,16,0,8,0,0,0,8, + 0,28,0,20,0,20,0,34,0,34,0,65,0,127,0,65, + 0,128,128,128,128,9,14,28,9,0,0,4,0,8,0,0, + 0,8,0,28,0,20,0,20,0,34,0,34,0,65,0,127, + 0,65,0,128,128,128,128,9,14,28,9,0,0,12,0,18, + 0,0,0,8,0,28,0,20,0,20,0,34,0,34,0,65, + 0,127,0,65,0,128,128,128,128,9,14,28,9,0,0,26, + 0,44,0,0,0,8,0,28,0,20,0,20,0,34,0,34, + 0,65,0,127,0,65,0,128,128,128,128,9,13,26,9,0, + 0,54,0,0,0,8,0,28,0,20,0,20,0,34,0,34, + 0,65,0,127,0,65,0,128,128,128,128,9,14,28,9,0, + 0,12,0,18,0,18,0,12,0,12,0,20,0,20,0,34, + 0,34,0,65,0,127,0,65,0,128,128,128,128,12,11,22, + 14,1,0,31,240,18,0,18,0,34,0,34,0,35,240,126, + 0,66,0,66,0,130,0,131,240,8,14,14,10,1,253,28, + 99,65,128,128,128,128,128,65,99,28,8,36,24,7,14,14, + 9,1,0,32,16,0,254,128,128,128,128,252,128,128,128,128, + 254,7,14,14,9,1,0,8,16,0,254,128,128,128,128,252, + 128,128,128,128,254,7,14,14,9,1,0,24,36,0,254,128, + 128,128,128,252,128,128,128,128,254,7,13,13,9,1,0,108, + 0,254,128,128,128,128,252,128,128,128,128,254,2,14,14,4, + 1,0,128,64,0,64,64,64,64,64,64,64,64,64,64,64, + 2,14,14,4,2,0,64,128,0,128,128,128,128,128,128,128, + 128,128,128,128,4,14,14,4,1,0,96,144,0,64,64,64, + 64,64,64,64,64,64,64,64,5,13,13,4,0,0,216,0, + 32,32,32,32,32,32,32,32,32,32,32,9,11,22,10,0, + 0,124,0,67,0,65,0,64,128,64,128,240,128,64,128,64, + 128,65,0,67,0,124,0,8,14,14,10,1,0,26,44,0, + 193,161,161,145,145,137,137,133,133,131,131,9,14,28,11,1, + 0,16,0,8,0,0,0,28,0,99,0,65,0,128,128,128, + 128,128,128,128,128,128,128,65,0,99,0,28,0,9,14,28, + 11,1,0,4,0,8,0,0,0,28,0,99,0,65,0,128, + 128,128,128,128,128,128,128,128,128,65,0,99,0,28,0,9, + 14,28,11,1,0,12,0,18,0,0,0,28,0,99,0,65, + 0,128,128,128,128,128,128,128,128,128,128,65,0,99,0,28, + 0,9,14,28,11,1,0,26,0,44,0,0,0,28,0,99, + 0,65,0,128,128,128,128,128,128,128,128,128,128,65,0,99, + 0,28,0,9,13,26,11,1,0,51,0,0,0,28,0,99, + 0,65,0,128,128,128,128,128,128,128,128,128,128,65,0,99, + 0,28,0,7,7,7,9,1,1,130,68,40,16,40,68,130, + 11,11,22,11,0,0,14,32,49,192,32,128,65,64,66,64, + 68,64,72,64,80,64,32,128,113,128,142,0,8,14,14,10, + 1,0,16,8,0,129,129,129,129,129,129,129,129,129,66,60, + 8,14,14,10,1,0,4,8,0,129,129,129,129,129,129,129, + 129,129,66,60,8,14,14,10,1,0,24,36,0,129,129,129, + 129,129,129,129,129,129,66,60,8,13,13,10,1,0,102,0, + 129,129,129,129,129,129,129,129,129,66,60,9,14,28,9,0, + 0,4,0,8,0,0,0,128,128,193,128,65,0,34,0,34, + 0,20,0,28,0,8,0,8,0,8,0,8,0,7,11,11, + 9,1,0,128,128,252,134,130,130,134,252,128,128,128,5,11, + 11,7,1,0,112,136,136,136,176,144,136,136,136,136,176,7, + 11,11,8,1,0,32,16,0,120,204,4,124,196,132,204,118, + 7,11,11,8,1,0,16,32,0,120,204,4,124,196,132,204, + 118,7,11,11,8,1,0,48,72,0,120,204,4,124,196,132, + 204,118,7,11,11,8,1,0,52,88,0,120,204,4,124,196, + 132,204,118,7,11,11,8,1,0,72,72,0,120,204,4,124, + 196,132,204,118,7,12,12,8,1,0,48,72,48,0,120,204, + 4,124,196,132,204,118,11,8,16,13,1,0,123,192,198,96, + 4,32,127,224,196,0,132,0,206,96,123,192,6,11,11,8, + 1,253,120,204,128,128,128,132,204,120,16,72,48,6,11,11, + 8,1,0,32,16,0,120,204,132,252,128,128,204,120,6,11, + 11,8,1,0,16,32,0,120,204,132,252,128,128,204,120,6, + 11,11,8,1,0,48,72,0,120,204,132,252,128,128,204,120, + 6,11,11,8,1,0,72,72,0,120,204,132,252,128,128,204, + 120,2,11,11,3,1,0,128,64,0,128,128,128,128,128,128, + 128,128,2,11,11,3,1,0,64,128,0,128,128,128,128,128, + 128,128,128,4,11,11,3,0,0,96,144,0,64,64,64,64, + 64,64,64,64,3,11,11,3,0,0,160,160,0,64,64,64, + 64,64,64,64,64,6,11,11,8,1,0,216,112,144,120,204, + 132,132,132,132,204,120,6,11,11,8,1,0,104,176,0,184, + 204,132,132,132,132,132,132,6,11,11,8,1,0,32,16,0, + 120,204,132,132,132,132,204,120,6,11,11,8,1,0,16,32, + 0,120,204,132,132,132,132,204,120,6,11,11,8,1,0,48, + 72,0,120,204,132,132,132,132,204,120,6,11,11,8,1,0, + 104,176,0,120,204,132,132,132,132,204,120,6,11,11,8,1, + 0,72,72,0,120,204,132,132,132,132,204,120,7,7,7,9, + 1,1,16,16,0,254,0,16,16,8,8,8,8,0,0,61, + 98,70,74,82,98,70,188,6,11,11,8,1,0,32,16,0, + 132,132,132,132,132,132,204,116,6,11,11,8,1,0,16,32, + 0,132,132,132,132,132,132,204,116,6,11,11,8,1,0,48, + 72,0,132,132,132,132,132,132,204,116,6,11,11,8,1,0, + 72,72,0,132,132,132,132,132,132,204,116,7,14,14,7,0, + 253,8,16,0,130,194,68,68,36,40,24,16,16,48,96,6, + 14,14,8,1,253,128,128,128,184,204,132,132,132,132,204,184, + 128,128,128,7,14,14,7,0,253,36,36,0,130,194,68,68, + 36,40,24,16,16,48,96}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--14-100-100-100-P-76-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=13 h=14 x= 2 y= 9 dx=13 dy= 0 ascent=12 len=24 + Font Bounding box w=17 h=22 x=-2 y=-5 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR10r[1648] U8G_SECTION(".progmem.u8g_font_helvR10r") = { + 0,17,22,254,251,11,2,10,4,133,32,127,253,12,253,11, + 253,0,0,0,4,0,1,1,11,11,4,2,0,128,128,128, + 128,128,128,128,128,0,128,128,3,3,3,5,1,8,160,160, + 160,7,10,10,8,0,0,20,20,20,126,40,40,252,80,80, + 80,7,14,14,8,0,254,16,124,146,146,144,80,56,20,18, + 146,146,124,16,16,11,11,22,12,0,0,112,128,137,0,137, + 0,114,0,2,0,4,0,8,0,9,192,18,32,18,32,33, + 192,8,10,10,10,1,0,48,72,72,48,32,82,138,132,138, + 113,1,3,3,3,1,8,128,128,128,3,14,14,5,1,253, + 32,64,64,128,128,128,128,128,128,128,128,64,64,32,3,14, + 14,5,1,253,128,64,64,32,32,32,32,32,32,32,32,64, + 64,128,5,5,5,7,1,6,32,168,112,168,32,7,7,7, + 9,1,1,16,16,16,254,16,16,16,2,4,4,3,0,254, + 64,64,64,128,3,1,1,4,0,4,224,1,2,2,3,1, + 0,128,128,4,11,11,4,0,0,16,16,32,32,32,64,64, + 64,128,128,128,6,11,11,8,1,0,120,132,132,132,132,132, + 132,132,132,132,120,3,11,11,8,2,0,32,224,32,32,32, + 32,32,32,32,32,32,6,11,11,8,1,0,120,132,132,4, + 8,16,32,64,128,128,252,6,11,11,8,1,0,120,132,132, + 4,4,56,4,4,132,132,120,7,11,11,8,1,0,4,12, + 20,36,68,132,132,254,4,4,4,6,11,11,8,1,0,252, + 128,128,128,248,4,4,4,132,132,120,6,11,11,8,1,0, + 120,132,128,128,184,196,132,132,132,132,120,6,11,11,8,1, + 0,252,4,8,8,16,16,32,32,64,64,64,6,11,11,8, + 1,0,120,132,132,132,132,120,132,132,132,132,120,6,11,11, + 8,1,0,120,132,132,132,132,124,4,4,132,132,120,1,8, + 8,3,1,0,128,128,0,0,0,0,128,128,2,10,10,4, + 0,254,64,64,0,0,0,0,64,64,64,128,6,5,5,8, + 1,2,12,48,192,48,12,6,3,3,9,1,3,252,0,252, + 6,5,5,8,1,2,192,48,12,48,192,6,11,11,8,1, + 0,48,204,132,132,4,8,16,32,0,32,32,11,12,24,13, + 1,255,15,0,48,192,64,32,70,160,137,32,145,32,145,32, + 147,64,141,128,64,0,96,128,31,0,9,11,22,9,0,0, + 8,0,28,0,20,0,20,0,34,0,34,0,65,0,127,0, + 65,0,128,128,128,128,7,11,11,9,1,0,252,134,130,130, + 132,248,132,130,130,134,252,8,11,11,10,1,0,28,99,65, + 128,128,128,128,128,65,99,28,8,11,11,10,1,0,248,134, + 130,129,129,129,129,129,130,134,248,7,11,11,9,1,0,254, + 128,128,128,128,252,128,128,128,128,254,7,11,11,8,1,0, + 254,128,128,128,128,252,128,128,128,128,128,9,11,22,11,1, + 0,30,0,97,128,64,128,128,0,128,0,135,128,128,128,128, + 128,64,128,99,128,28,128,8,11,11,10,1,0,129,129,129, + 129,129,255,129,129,129,129,129,1,11,11,4,2,0,128,128, + 128,128,128,128,128,128,128,128,128,6,11,11,7,0,0,4, + 4,4,4,4,4,4,4,132,132,120,8,11,11,9,1,0, + 130,132,136,144,160,224,144,136,132,130,129,6,11,11,8,2, + 0,128,128,128,128,128,128,128,128,128,128,252,11,11,22,12, + 0,0,128,32,192,96,192,96,160,160,160,160,145,32,145,32, + 138,32,138,32,132,32,132,32,8,11,11,10,1,0,193,161, + 161,145,145,137,137,133,133,131,131,9,11,22,11,1,0,28, + 0,99,0,65,0,128,128,128,128,128,128,128,128,128,128,65, + 0,99,0,28,0,7,11,11,9,1,0,252,134,130,130,134, + 252,128,128,128,128,128,9,11,22,11,1,0,28,0,99,0, + 65,0,128,128,128,128,128,128,136,128,132,128,67,0,99,0, + 28,128,8,11,11,10,1,0,254,131,129,129,130,252,130,129, + 129,129,129,7,11,11,9,1,0,56,198,130,128,96,24,6, + 2,130,198,56,9,11,22,9,0,0,255,128,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,11,11,10,1,0,129,129,129,129,129,129,129,129,129,66, + 60,9,11,22,9,0,0,128,128,128,128,65,0,65,0,99, + 0,34,0,34,0,20,0,20,0,8,0,8,0,13,11,22, + 13,0,0,130,8,130,8,133,8,69,16,69,16,69,16,40, + 160,40,160,40,160,16,64,16,64,9,11,22,9,0,0,128, + 128,65,0,34,0,20,0,8,0,8,0,20,0,34,0,65, + 0,65,0,128,128,9,11,22,9,0,0,128,128,193,128,65, + 0,34,0,34,0,20,0,28,0,8,0,8,0,8,0,8, + 0,7,11,11,9,1,0,254,2,4,8,24,16,32,96,64, + 128,254,3,14,14,4,1,253,224,128,128,128,128,128,128,128, + 128,128,128,128,128,224,4,11,11,4,0,0,128,128,64,64, + 64,32,32,32,16,16,16,3,14,14,4,0,253,224,32,32, + 32,32,32,32,32,32,32,32,32,32,224,5,5,5,7,1, + 6,32,80,80,136,136,8,1,1,8,0,253,255,2,2,2, + 5,1,9,128,64,7,8,8,8,1,0,120,204,4,124,196, + 132,204,118,6,11,11,7,1,0,128,128,128,184,204,132,132, + 132,132,204,184,6,8,8,7,1,0,120,204,128,128,128,132, + 204,120,6,11,11,8,1,0,4,4,4,116,204,132,132,132, + 132,204,116,6,8,8,8,1,0,120,204,132,252,128,128,204, + 120,4,11,11,4,0,0,48,64,64,224,64,64,64,64,64, + 64,64,6,11,11,8,1,253,116,204,132,132,132,132,204,116, + 4,204,120,6,11,11,8,1,0,128,128,128,184,204,132,132, + 132,132,132,132,1,11,11,3,1,0,128,128,0,128,128,128, + 128,128,128,128,128,3,14,14,3,255,253,32,32,0,32,32, + 32,32,32,32,32,32,32,32,192,6,11,11,7,1,0,128, + 128,128,136,144,160,192,160,144,136,132,1,11,11,3,1,0, + 128,128,128,128,128,128,128,128,128,128,128,9,8,16,11,1, + 0,179,0,204,128,136,128,136,128,136,128,136,128,136,128,136, + 128,6,8,8,8,1,0,184,204,132,132,132,132,132,132,6, + 8,8,8,1,0,120,204,132,132,132,132,204,120,6,11,11, + 8,1,253,184,204,132,132,132,132,204,184,128,128,128,6,11, + 11,8,1,253,116,204,132,132,132,132,204,116,4,4,4,4, + 8,8,5,1,0,176,192,128,128,128,128,128,128,5,8,8, + 7,1,0,112,136,192,112,24,8,136,112,4,10,10,4,0, + 0,64,64,224,64,64,64,64,64,64,48,6,8,8,7,1, + 0,132,132,132,132,132,132,204,116,7,8,8,7,0,0,130, + 130,68,68,68,40,40,16,9,8,16,10,0,0,136,128,136, + 128,136,128,73,0,73,0,85,0,34,0,34,0,7,8,8, + 7,0,0,198,68,40,16,16,40,68,198,7,11,11,7,0, + 253,130,194,68,68,36,40,24,16,16,48,96,6,8,8,7, + 0,0,252,4,8,16,32,64,128,252,5,14,14,5,0,253, + 24,32,32,32,32,64,128,64,32,32,32,32,32,24,1,14, + 14,3,1,253,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,5,14,14,5,0,253,192,32,32,32,32,16,8,16, + 32,32,32,32,32,192,6,3,3,8,1,3,100,180,152,255 + }; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--17-120-100-100-P-88-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=14 h=16 x= 3 y=10 dx=17 dy= 0 ascent=16 len=32 + Font Bounding box w=20 h=26 x=-2 y=-6 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR12[4077] U8G_SECTION(".progmem.u8g_font_helvR12") = { + 0,20,26,254,250,12,2,91,5,99,32,255,252,16,252,12, + 252,0,0,0,5,0,1,1,12,12,5,2,0,128,128,128, + 128,128,128,128,128,128,0,128,128,4,4,4,6,1,8,144, + 144,144,144,8,11,11,9,0,0,18,18,18,127,36,36,36, + 254,72,72,72,7,15,15,9,1,254,16,124,146,146,144,80, + 48,24,20,18,146,146,124,16,16,12,12,24,14,0,0,112, + 64,136,128,136,128,137,0,114,0,2,0,4,0,4,224,9, + 16,17,16,17,16,32,224,10,12,24,11,0,0,24,0,36, + 0,66,0,66,0,36,0,24,0,41,0,69,0,130,0,131, + 0,68,128,56,64,2,4,4,3,0,8,192,192,64,64,3, + 16,16,6,1,252,32,64,64,64,128,128,128,128,128,128,128, + 128,64,64,64,32,3,16,16,6,1,252,128,64,64,64,32, + 32,32,32,32,32,32,32,64,64,64,128,5,5,5,6,0, + 7,32,168,112,80,136,9,9,18,10,0,0,8,0,8,0, + 8,0,8,0,255,128,8,0,8,0,8,0,8,0,2,4, + 4,4,1,254,64,64,64,128,4,1,1,5,0,4,240,1, + 2,2,4,2,0,128,128,4,12,12,5,0,0,16,16,32, + 32,32,32,64,64,64,128,128,128,7,12,12,9,1,0,56, + 68,68,130,130,130,130,130,130,68,68,56,3,12,12,9,3, + 0,32,32,96,160,32,32,32,32,32,32,32,32,7,12,12, + 9,1,0,56,68,130,130,2,4,8,48,64,128,128,254,7, + 12,12,9,1,0,56,68,130,130,4,56,4,2,130,130,68, + 56,8,12,12,9,0,0,12,20,20,36,36,68,68,132,255, + 4,4,4,7,12,12,9,1,0,62,32,32,64,120,68,2, + 2,2,130,68,56,7,12,12,9,1,0,60,66,130,128,184, + 196,130,130,130,130,68,56,8,12,12,9,0,0,255,1,2, + 4,4,8,8,16,16,16,32,32,7,12,12,9,1,0,56, + 68,130,130,68,56,68,130,130,130,68,56,7,12,12,9,1, + 0,56,68,130,130,130,130,70,58,2,130,132,120,1,9,9, + 4,2,0,128,128,0,0,0,0,0,128,128,2,11,11,4, + 1,254,64,64,0,0,0,0,0,64,64,64,128,9,9,18, + 10,0,0,1,128,6,0,24,0,96,0,128,0,96,0,24, + 0,6,0,1,128,8,4,4,10,0,2,255,0,0,255,9, + 9,18,10,1,0,192,0,48,0,12,0,3,0,0,128,3, + 0,12,0,48,0,192,0,7,12,12,9,1,0,56,68,130, + 130,2,4,8,16,16,0,16,16,13,14,28,17,1,254,7, + 128,24,96,32,16,67,208,76,72,136,72,144,136,144,136,144, + 144,153,144,78,96,64,0,48,96,15,128,10,12,24,11,0, + 0,12,0,12,0,18,0,18,0,18,0,33,0,33,0,127, + 128,64,128,64,128,128,64,128,64,9,12,24,11,1,0,252, + 0,130,0,129,0,129,0,130,0,254,0,129,0,128,128,128, + 128,128,128,129,0,254,0,10,12,24,12,1,0,15,0,48, + 128,64,64,64,0,128,0,128,0,128,0,128,0,64,0,64, + 64,48,128,15,0,10,12,24,12,1,0,252,0,131,0,128, + 128,128,128,128,64,128,64,128,64,128,64,128,128,128,128,131, + 0,252,0,8,12,12,11,1,0,255,128,128,128,128,255,128, + 128,128,128,128,255,7,12,12,10,1,0,254,128,128,128,128, + 254,128,128,128,128,128,128,10,12,24,13,1,0,14,0,49, + 128,64,64,64,0,128,0,128,0,135,192,128,64,64,64,64, + 192,49,64,14,64,9,12,24,12,1,0,128,128,128,128,128, + 128,128,128,128,128,255,128,128,128,128,128,128,128,128,128,128, + 128,128,128,1,12,12,4,1,0,128,128,128,128,128,128,128, + 128,128,128,128,128,6,12,12,8,0,0,4,4,4,4,4, + 4,4,4,132,132,132,120,8,12,12,11,1,0,129,130,132, + 136,144,176,200,136,132,130,130,129,7,12,12,9,1,0,128, + 128,128,128,128,128,128,128,128,128,128,254,11,12,24,13,1, + 0,128,32,192,96,192,96,160,160,160,160,160,160,145,32,145, + 32,145,32,138,32,138,32,132,32,9,12,24,12,1,0,128, + 128,192,128,160,128,160,128,144,128,136,128,136,128,132,128,130, + 128,130,128,129,128,128,128,11,12,24,13,1,0,14,0,49, + 128,64,64,64,64,128,32,128,32,128,32,128,32,64,64,64, + 64,49,128,14,0,8,12,12,11,2,0,252,130,129,129,130, + 252,128,128,128,128,128,128,11,13,26,13,1,255,14,0,49, + 128,64,64,64,64,128,32,128,32,128,32,128,32,64,64,66, + 64,49,128,14,128,0,64,9,12,24,12,2,0,252,0,130, + 0,129,0,129,0,130,0,252,0,130,0,129,0,129,0,129, + 0,129,0,128,128,9,12,24,11,1,0,62,0,65,0,128, + 128,128,128,64,0,48,0,14,0,1,0,128,128,128,128,65, + 0,62,0,9,12,24,10,0,0,255,128,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,9,12,24,12,1,0,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,65,0,62,0,10, + 12,24,11,0,0,128,64,128,64,64,128,64,128,64,128,33, + 0,33,0,18,0,18,0,18,0,12,0,12,0,13,12,24, + 15,1,0,130,8,130,8,130,8,69,16,69,16,69,16,40, + 160,40,160,40,160,16,64,16,64,16,64,8,12,12,11,1, + 0,129,66,66,36,36,24,24,36,36,66,66,129,9,12,24, + 11,1,0,128,128,65,0,65,0,34,0,34,0,20,0,28, + 0,8,0,8,0,8,0,8,0,8,0,9,12,24,10,0, + 0,127,128,1,0,3,0,2,0,4,0,12,0,8,0,16, + 0,48,0,32,0,64,0,255,128,3,15,15,5,1,253,224, + 128,128,128,128,128,128,128,128,128,128,128,128,128,224,4,12, + 12,5,0,0,128,128,64,64,64,64,32,32,32,16,16,16, + 3,15,15,5,0,253,224,32,32,32,32,32,32,32,32,32, + 32,32,32,32,224,7,7,7,8,0,5,16,40,40,68,68, + 130,130,9,1,2,9,0,253,255,128,3,3,3,6,0,10, + 128,192,32,8,9,9,9,1,0,124,130,2,6,122,130,130, + 134,123,7,12,12,9,1,0,128,128,128,184,196,130,130,130, + 130,130,196,184,7,9,9,8,1,0,56,68,130,128,128,128, + 130,68,56,7,12,12,9,1,0,2,2,2,58,70,130,130, + 130,130,130,70,58,7,9,9,9,1,0,56,68,130,130,254, + 128,130,68,56,4,12,12,5,1,0,48,64,64,240,64,64, + 64,64,64,64,64,64,7,13,13,9,1,252,58,70,130,130, + 130,130,130,70,58,2,130,132,120,7,12,12,9,1,0,128, + 128,128,188,194,130,130,130,130,130,130,130,1,12,12,3,1, + 0,128,128,0,128,128,128,128,128,128,128,128,128,3,16,16, + 4,255,252,32,32,0,32,32,32,32,32,32,32,32,32,32, + 32,32,192,7,12,12,8,0,0,128,128,128,132,136,144,160, + 224,144,136,132,130,1,12,12,3,1,0,128,128,128,128,128, + 128,128,128,128,128,128,128,11,9,18,14,2,0,185,192,198, + 32,132,32,132,32,132,32,132,32,132,32,132,32,132,32,7, + 9,9,9,1,0,188,194,130,130,130,130,130,130,130,7,9, + 9,9,1,0,56,68,130,130,130,130,130,68,56,7,13,13, + 9,1,252,184,196,130,130,130,130,130,196,184,128,128,128,128, + 7,13,13,9,1,252,58,70,130,130,130,130,130,70,58,2, + 2,2,2,4,9,9,5,1,0,176,192,128,128,128,128,128, + 128,128,6,9,9,8,1,0,120,132,132,192,48,12,132,132, + 120,4,11,11,5,1,0,64,64,240,64,64,64,64,64,64, + 64,48,7,9,9,9,1,0,130,130,130,130,130,130,130,134, + 122,7,9,9,8,0,0,130,130,68,68,68,40,40,56,16, + 11,9,18,12,0,0,132,32,132,32,68,64,78,64,74,64, + 42,128,42,128,17,0,17,0,7,9,9,8,0,0,130,68, + 68,40,16,40,68,68,130,7,12,12,8,0,253,130,130,68, + 68,40,40,56,16,16,32,32,192,6,9,9,8,1,0,252, + 4,8,16,32,32,64,128,252,3,16,16,6,1,252,32,64, + 64,64,64,64,64,128,64,64,64,64,64,64,64,32,1,16, + 16,4,1,252,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,3,16,16,6,1,252,128,64,64,64,64,64, + 64,32,64,64,64,64,64,64,64,128,8,2,2,10,1,4, + 113,142,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,5,0,1,1,12,12,6,2,253,128, + 128,0,128,128,128,128,128,128,128,128,128,7,13,13,9,1, + 254,4,4,56,76,138,144,144,144,162,100,56,64,64,8,12, + 12,9,0,0,14,17,33,32,32,16,126,8,16,32,121,134, + 8,7,7,9,0,3,189,102,66,66,66,102,189,9,12,24, + 9,0,0,128,128,65,0,65,0,34,0,34,0,20,0,127, + 0,8,0,127,0,8,0,8,0,8,0,1,16,16,4,1, + 252,128,128,128,128,128,128,0,0,0,0,128,128,128,128,128, + 128,7,15,15,9,1,253,56,68,70,96,152,140,134,194,98, + 50,28,4,196,68,56,3,2,2,5,1,10,160,160,12,12, + 24,12,0,0,15,0,48,192,71,32,72,160,144,16,144,16, + 144,16,144,16,72,160,71,32,48,192,15,0,5,7,7,6, + 1,5,96,144,112,144,120,0,248,6,6,6,9,1,2,36, + 72,144,144,72,36,8,5,5,10,0,1,255,1,1,1,1, + 4,1,1,5,0,4,240,12,12,24,12,0,0,15,0,48, + 192,64,32,79,32,136,144,136,144,143,16,138,16,73,32,72, + 160,48,192,15,0,5,1,1,6,0,10,248,5,5,5,7, + 1,7,112,136,136,136,112,9,11,22,10,0,0,8,0,8, + 0,8,0,8,0,255,128,8,0,8,0,8,0,8,0,0, + 0,255,128,5,7,7,6,0,5,112,136,136,16,96,128,248, + 5,7,7,6,0,5,112,136,8,48,8,136,112,3,3,3, + 6,1,10,32,96,128,7,13,13,9,1,252,130,130,130,130, + 130,130,130,134,250,128,128,128,128,7,15,15,9,1,253,62, + 116,244,244,244,244,116,52,20,20,20,20,20,20,20,1,2, + 2,5,2,4,128,128,4,4,4,6,0,252,32,32,144,96, + 3,7,7,6,0,5,32,224,32,32,32,32,32,4,7,7, + 6,1,5,96,144,144,144,96,0,240,6,6,6,9,1,2, + 144,72,36,36,72,144,12,12,24,14,0,0,32,64,224,128, + 32,128,33,0,34,0,34,32,36,96,4,160,9,32,17,240, + 16,32,32,32,12,13,26,14,0,0,0,64,32,128,224,128, + 33,0,34,0,34,0,36,224,37,16,9,16,8,32,16,192, + 33,0,33,240,13,12,24,14,0,0,112,64,136,64,8,128, + 48,128,9,0,137,16,114,48,2,80,4,144,4,248,8,16, + 8,16,7,12,12,10,1,253,16,16,0,16,16,32,64,128, + 130,130,68,56,10,16,32,11,0,0,16,0,24,0,4,0, + 0,0,12,0,12,0,18,0,18,0,18,0,33,0,33,0, + 127,128,64,128,64,128,128,64,128,64,10,16,32,11,0,0, + 2,0,6,0,8,0,0,0,12,0,12,0,18,0,18,0, + 18,0,33,0,33,0,127,128,64,128,64,128,128,64,128,64, + 10,16,32,11,0,0,4,0,14,0,17,0,0,0,12,0, + 12,0,18,0,18,0,18,0,33,0,33,0,127,128,64,128, + 64,128,128,64,128,64,10,15,30,11,0,0,26,0,44,0, + 0,0,12,0,12,0,18,0,18,0,18,0,33,0,33,0, + 127,128,64,128,64,128,128,64,128,64,10,15,30,11,0,0, + 18,0,18,0,0,0,12,0,12,0,18,0,18,0,18,0, + 33,0,33,0,127,128,64,128,64,128,128,64,128,64,10,15, + 30,11,0,0,12,0,18,0,18,0,12,0,12,0,18,0, + 18,0,18,0,33,0,33,0,127,128,64,128,64,128,128,64, + 128,64,14,12,24,16,0,0,7,252,9,0,9,0,17,0, + 17,0,33,252,33,0,127,0,65,0,65,0,129,0,129,252, + 10,16,32,12,1,252,15,0,48,128,64,64,64,0,128,0, + 128,0,128,0,128,0,64,0,64,64,48,128,15,0,4,0, + 4,0,18,0,12,0,8,16,16,11,1,0,32,48,8,0, + 255,128,128,128,128,255,128,128,128,128,128,255,8,16,16,11, + 1,0,4,12,16,0,255,128,128,128,128,255,128,128,128,128, + 128,255,8,16,16,11,1,0,16,56,68,0,255,128,128,128, + 128,255,128,128,128,128,128,255,8,15,15,11,1,0,36,36, + 0,255,128,128,128,128,255,128,128,128,128,128,255,3,16,16, + 4,0,0,128,192,32,0,64,64,64,64,64,64,64,64,64, + 64,64,64,3,16,16,4,0,0,32,96,128,0,64,64,64, + 64,64,64,64,64,64,64,64,64,5,16,16,4,255,0,32, + 112,136,0,32,32,32,32,32,32,32,32,32,32,32,32,3, + 15,15,4,0,0,160,160,0,64,64,64,64,64,64,64,64, + 64,64,64,64,12,12,24,12,0,0,63,0,32,192,32,32, + 32,32,32,16,248,16,32,16,32,16,32,32,32,32,32,192, + 63,0,9,15,30,12,1,0,26,0,44,0,0,0,128,128, + 192,128,160,128,160,128,144,128,136,128,136,128,132,128,130,128, + 130,128,129,128,128,128,11,16,32,13,1,0,8,0,12,0, + 2,0,0,0,14,0,49,128,64,64,64,64,128,32,128,32, + 128,32,128,32,64,64,64,64,49,128,14,0,11,16,32,13, + 1,0,1,0,3,0,4,0,0,0,14,0,49,128,64,64, + 64,64,128,32,128,32,128,32,128,32,64,64,64,64,49,128, + 14,0,11,16,32,13,1,0,4,0,14,0,17,0,0,0, + 14,0,49,128,64,64,64,64,128,32,128,32,128,32,128,32, + 64,64,64,64,49,128,14,0,11,15,30,13,1,0,13,0, + 22,0,0,0,14,0,49,128,64,64,64,64,128,32,128,32, + 128,32,128,32,64,64,64,64,49,128,14,0,11,15,30,13, + 1,0,17,0,17,0,0,0,14,0,49,128,64,64,64,64, + 128,32,128,32,128,32,128,32,64,64,64,64,49,128,14,0, + 8,8,8,10,1,0,129,66,36,24,24,36,66,129,11,14, + 28,13,1,255,0,64,14,128,49,128,65,64,66,64,130,32, + 132,32,132,32,136,32,72,64,80,64,49,128,46,0,64,0, + 9,16,32,12,1,0,32,0,48,0,8,0,0,0,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,65,0,62,0,9,16,32,12,1,0,2,0,6,0, + 8,0,0,0,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,65,0,62,0,9,16,32,12, + 1,0,8,0,28,0,34,0,0,0,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,65,0, + 62,0,9,15,30,12,1,0,34,0,34,0,0,0,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,65,0,62,0,9,16,32,11,1,0,2,0,6,0, + 8,0,0,0,128,128,65,0,65,0,34,0,34,0,20,0, + 28,0,8,0,8,0,8,0,8,0,8,0,8,12,12,11, + 2,0,128,128,252,130,129,129,130,252,128,128,128,128,7,12, + 12,10,2,0,120,132,130,130,132,188,134,130,130,130,132,184, + 8,13,13,9,1,0,32,48,8,0,124,130,2,6,122,130, + 130,134,123,8,13,13,9,1,0,4,12,16,0,124,130,2, + 6,122,130,130,134,123,8,13,13,9,1,0,16,56,68,0, + 124,130,2,6,122,130,130,134,123,8,12,12,9,1,0,52, + 88,0,124,130,2,6,122,130,130,134,123,8,12,12,9,1, + 0,40,40,0,124,130,2,6,122,130,130,134,123,8,13,13, + 9,1,0,16,40,16,0,124,130,2,6,122,130,130,134,123, + 13,9,18,15,1,0,124,224,131,16,2,8,6,8,123,248, + 130,0,130,8,135,16,120,224,7,13,13,8,1,252,56,68, + 130,128,128,128,130,68,56,16,16,72,48,7,13,13,9,1, + 0,64,96,16,0,56,68,130,130,254,128,130,68,56,7,13, + 13,9,1,0,8,24,32,0,56,68,130,130,254,128,130,68, + 56,7,13,13,9,1,0,16,56,68,0,56,68,130,130,254, + 128,130,68,56,7,12,12,9,1,0,40,40,0,56,68,130, + 130,254,128,130,68,56,3,13,13,4,1,0,128,192,32,0, + 64,64,64,64,64,64,64,64,64,3,13,13,4,1,0,32, + 96,128,0,64,64,64,64,64,64,64,64,64,5,13,13,4, + 0,0,32,112,136,0,32,32,32,32,32,32,32,32,32,3, + 12,12,4,1,0,160,160,0,64,64,64,64,64,64,64,64, + 64,7,12,12,9,1,0,72,48,88,60,68,130,130,130,130, + 130,68,56,7,12,12,9,1,0,52,88,0,188,194,130,130, + 130,130,130,130,130,7,13,13,9,1,0,32,48,8,0,56, + 68,130,130,130,130,130,68,56,7,13,13,9,1,0,8,24, + 32,0,56,68,130,130,130,130,130,68,56,7,13,13,9,1, + 0,16,56,68,0,56,68,130,130,130,130,130,68,56,7,12, + 12,9,1,0,52,88,0,56,68,130,130,130,130,130,68,56, + 7,12,12,9,1,0,40,40,0,56,68,130,130,130,130,130, + 68,56,7,9,9,10,1,0,16,16,0,0,254,0,0,16, + 16,7,10,10,10,1,0,2,60,68,138,146,146,162,162,68, + 184,7,13,13,9,1,0,32,48,8,0,130,130,130,130,130, + 130,130,134,122,7,13,13,9,1,0,4,12,16,0,130,130, + 130,130,130,130,130,134,122,7,13,13,9,1,0,16,56,68, + 0,130,130,130,130,130,130,130,134,122,7,12,12,9,1,0, + 40,40,0,130,130,130,130,130,130,130,134,122,7,16,16,8, + 0,253,8,24,32,0,130,130,68,68,40,40,56,16,16,32, + 32,192,7,16,16,9,1,252,128,128,128,184,196,130,130,130, + 130,130,196,184,128,128,128,128,7,15,15,8,0,253,40,40, + 0,130,130,68,68,40,40,56,16,16,32,32,192}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--17-120-100-100-P-88-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=13 h=16 x= 3 y=10 dx=17 dy= 0 ascent=13 len=28 + Font Bounding box w=20 h=26 x=-2 y=-6 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR12r[1907] U8G_SECTION(".progmem.u8g_font_helvR12r") = { + 0,20,26,254,250,12,2,91,5,99,32,127,252,13,252,12, + 252,0,0,0,5,0,1,1,12,12,5,2,0,128,128,128, + 128,128,128,128,128,128,0,128,128,4,4,4,6,1,8,144, + 144,144,144,8,11,11,9,0,0,18,18,18,127,36,36,36, + 254,72,72,72,7,15,15,9,1,254,16,124,146,146,144,80, + 48,24,20,18,146,146,124,16,16,12,12,24,14,0,0,112, + 64,136,128,136,128,137,0,114,0,2,0,4,0,4,224,9, + 16,17,16,17,16,32,224,10,12,24,11,0,0,24,0,36, + 0,66,0,66,0,36,0,24,0,41,0,69,0,130,0,131, + 0,68,128,56,64,2,4,4,3,0,8,192,192,64,64,3, + 16,16,6,1,252,32,64,64,64,128,128,128,128,128,128,128, + 128,64,64,64,32,3,16,16,6,1,252,128,64,64,64,32, + 32,32,32,32,32,32,32,64,64,64,128,5,5,5,6,0, + 7,32,168,112,80,136,9,9,18,10,0,0,8,0,8,0, + 8,0,8,0,255,128,8,0,8,0,8,0,8,0,2,4, + 4,4,1,254,64,64,64,128,4,1,1,5,0,4,240,1, + 2,2,4,2,0,128,128,4,12,12,5,0,0,16,16,32, + 32,32,32,64,64,64,128,128,128,7,12,12,9,1,0,56, + 68,68,130,130,130,130,130,130,68,68,56,3,12,12,9,3, + 0,32,32,96,160,32,32,32,32,32,32,32,32,7,12,12, + 9,1,0,56,68,130,130,2,4,8,48,64,128,128,254,7, + 12,12,9,1,0,56,68,130,130,4,56,4,2,130,130,68, + 56,8,12,12,9,0,0,12,20,20,36,36,68,68,132,255, + 4,4,4,7,12,12,9,1,0,62,32,32,64,120,68,2, + 2,2,130,68,56,7,12,12,9,1,0,60,66,130,128,184, + 196,130,130,130,130,68,56,8,12,12,9,0,0,255,1,2, + 4,4,8,8,16,16,16,32,32,7,12,12,9,1,0,56, + 68,130,130,68,56,68,130,130,130,68,56,7,12,12,9,1, + 0,56,68,130,130,130,130,70,58,2,130,132,120,1,9,9, + 4,2,0,128,128,0,0,0,0,0,128,128,2,11,11,4, + 1,254,64,64,0,0,0,0,0,64,64,64,128,9,9,18, + 10,0,0,1,128,6,0,24,0,96,0,128,0,96,0,24, + 0,6,0,1,128,8,4,4,10,0,2,255,0,0,255,9, + 9,18,10,1,0,192,0,48,0,12,0,3,0,0,128,3, + 0,12,0,48,0,192,0,7,12,12,9,1,0,56,68,130, + 130,2,4,8,16,16,0,16,16,13,14,28,17,1,254,7, + 128,24,96,32,16,67,208,76,72,136,72,144,136,144,136,144, + 144,153,144,78,96,64,0,48,96,15,128,10,12,24,11,0, + 0,12,0,12,0,18,0,18,0,18,0,33,0,33,0,127, + 128,64,128,64,128,128,64,128,64,9,12,24,11,1,0,252, + 0,130,0,129,0,129,0,130,0,254,0,129,0,128,128,128, + 128,128,128,129,0,254,0,10,12,24,12,1,0,15,0,48, + 128,64,64,64,0,128,0,128,0,128,0,128,0,64,0,64, + 64,48,128,15,0,10,12,24,12,1,0,252,0,131,0,128, + 128,128,128,128,64,128,64,128,64,128,64,128,128,128,128,131, + 0,252,0,8,12,12,11,1,0,255,128,128,128,128,255,128, + 128,128,128,128,255,7,12,12,10,1,0,254,128,128,128,128, + 254,128,128,128,128,128,128,10,12,24,13,1,0,14,0,49, + 128,64,64,64,0,128,0,128,0,135,192,128,64,64,64,64, + 192,49,64,14,64,9,12,24,12,1,0,128,128,128,128,128, + 128,128,128,128,128,255,128,128,128,128,128,128,128,128,128,128, + 128,128,128,1,12,12,4,1,0,128,128,128,128,128,128,128, + 128,128,128,128,128,6,12,12,8,0,0,4,4,4,4,4, + 4,4,4,132,132,132,120,8,12,12,11,1,0,129,130,132, + 136,144,176,200,136,132,130,130,129,7,12,12,9,1,0,128, + 128,128,128,128,128,128,128,128,128,128,254,11,12,24,13,1, + 0,128,32,192,96,192,96,160,160,160,160,160,160,145,32,145, + 32,145,32,138,32,138,32,132,32,9,12,24,12,1,0,128, + 128,192,128,160,128,160,128,144,128,136,128,136,128,132,128,130, + 128,130,128,129,128,128,128,11,12,24,13,1,0,14,0,49, + 128,64,64,64,64,128,32,128,32,128,32,128,32,64,64,64, + 64,49,128,14,0,8,12,12,11,2,0,252,130,129,129,130, + 252,128,128,128,128,128,128,11,13,26,13,1,255,14,0,49, + 128,64,64,64,64,128,32,128,32,128,32,128,32,64,64,66, + 64,49,128,14,128,0,64,9,12,24,12,2,0,252,0,130, + 0,129,0,129,0,130,0,252,0,130,0,129,0,129,0,129, + 0,129,0,128,128,9,12,24,11,1,0,62,0,65,0,128, + 128,128,128,64,0,48,0,14,0,1,0,128,128,128,128,65, + 0,62,0,9,12,24,10,0,0,255,128,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,9,12,24,12,1,0,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,65,0,62,0,10, + 12,24,11,0,0,128,64,128,64,64,128,64,128,64,128,33, + 0,33,0,18,0,18,0,18,0,12,0,12,0,13,12,24, + 15,1,0,130,8,130,8,130,8,69,16,69,16,69,16,40, + 160,40,160,40,160,16,64,16,64,16,64,8,12,12,11,1, + 0,129,66,66,36,36,24,24,36,36,66,66,129,9,12,24, + 11,1,0,128,128,65,0,65,0,34,0,34,0,20,0,28, + 0,8,0,8,0,8,0,8,0,8,0,9,12,24,10,0, + 0,127,128,1,0,3,0,2,0,4,0,12,0,8,0,16, + 0,48,0,32,0,64,0,255,128,3,15,15,5,1,253,224, + 128,128,128,128,128,128,128,128,128,128,128,128,128,224,4,12, + 12,5,0,0,128,128,64,64,64,64,32,32,32,16,16,16, + 3,15,15,5,0,253,224,32,32,32,32,32,32,32,32,32, + 32,32,32,32,224,7,7,7,8,0,5,16,40,40,68,68, + 130,130,9,1,2,9,0,253,255,128,3,3,3,6,0,10, + 128,192,32,8,9,9,9,1,0,124,130,2,6,122,130,130, + 134,123,7,12,12,9,1,0,128,128,128,184,196,130,130,130, + 130,130,196,184,7,9,9,8,1,0,56,68,130,128,128,128, + 130,68,56,7,12,12,9,1,0,2,2,2,58,70,130,130, + 130,130,130,70,58,7,9,9,9,1,0,56,68,130,130,254, + 128,130,68,56,4,12,12,5,1,0,48,64,64,240,64,64, + 64,64,64,64,64,64,7,13,13,9,1,252,58,70,130,130, + 130,130,130,70,58,2,130,132,120,7,12,12,9,1,0,128, + 128,128,188,194,130,130,130,130,130,130,130,1,12,12,3,1, + 0,128,128,0,128,128,128,128,128,128,128,128,128,3,16,16, + 4,255,252,32,32,0,32,32,32,32,32,32,32,32,32,32, + 32,32,192,7,12,12,8,0,0,128,128,128,132,136,144,160, + 224,144,136,132,130,1,12,12,3,1,0,128,128,128,128,128, + 128,128,128,128,128,128,128,11,9,18,14,2,0,185,192,198, + 32,132,32,132,32,132,32,132,32,132,32,132,32,132,32,7, + 9,9,9,1,0,188,194,130,130,130,130,130,130,130,7,9, + 9,9,1,0,56,68,130,130,130,130,130,68,56,7,13,13, + 9,1,252,184,196,130,130,130,130,130,196,184,128,128,128,128, + 7,13,13,9,1,252,58,70,130,130,130,130,130,70,58,2, + 2,2,2,4,9,9,5,1,0,176,192,128,128,128,128,128, + 128,128,6,9,9,8,1,0,120,132,132,192,48,12,132,132, + 120,4,11,11,5,1,0,64,64,240,64,64,64,64,64,64, + 64,48,7,9,9,9,1,0,130,130,130,130,130,130,130,134, + 122,7,9,9,8,0,0,130,130,68,68,68,40,40,56,16, + 11,9,18,12,0,0,132,32,132,32,68,64,78,64,74,64, + 42,128,42,128,17,0,17,0,7,9,9,8,0,0,130,68, + 68,40,16,40,68,68,130,7,12,12,8,0,253,130,130,68, + 68,40,40,56,16,16,32,32,192,6,9,9,8,1,0,252, + 4,8,16,32,32,64,128,252,3,16,16,6,1,252,32,64, + 64,64,64,64,64,128,64,64,64,64,64,64,64,32,1,16, + 16,4,1,252,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,3,16,16,6,1,252,128,64,64,64,64,64, + 64,32,64,64,64,64,64,64,64,128,8,2,2,10,1,4, + 113,142,255}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--20-140-100-100-P-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 13 + Calculated Max Values w=16 h=18 x= 2 y=12 dx=18 dy= 0 ascent=18 len=36 + Font Bounding box w=22 h=29 x=-2 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =18 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR14[4920] U8G_SECTION(".progmem.u8g_font_helvR14") = { + 0,22,29,254,249,14,2,149,6,82,32,255,252,18,252,14, + 252,0,0,0,5,0,1,2,14,14,6,2,0,192,192,192, + 192,192,192,192,192,128,128,0,0,192,192,5,5,5,5,0, + 9,216,216,216,216,216,10,13,26,10,0,0,9,0,9,0, + 9,0,127,192,127,192,18,0,18,0,18,0,255,128,255,128, + 36,0,36,0,36,0,9,16,32,10,1,254,8,0,62,0, + 127,0,203,0,200,0,232,0,120,0,62,0,15,0,9,128, + 201,128,235,128,127,0,62,0,8,0,8,0,14,13,26,16, + 1,0,120,96,204,192,204,192,205,128,205,128,123,0,3,0, + 6,120,6,204,12,204,12,204,24,204,24,120,12,13,26,13, + 1,0,60,0,126,0,102,0,102,0,60,0,124,0,238,192, + 198,192,195,192,195,128,231,192,126,224,60,112,1,5,5,3, + 1,9,128,128,128,128,128,4,18,18,6,0,252,16,48,96, + 96,192,192,192,192,192,192,192,192,192,192,96,96,48,16,4, + 18,18,6,1,252,128,192,96,96,48,48,48,48,48,48,48, + 48,48,48,96,96,192,128,5,7,7,7,1,7,32,168,248, + 32,248,168,32,8,10,10,10,1,0,24,24,24,24,255,255, + 24,24,24,24,2,5,5,5,1,253,192,192,64,64,128,5, + 1,1,6,0,5,248,2,2,2,5,1,0,192,192,5,14, + 14,5,0,0,24,24,24,24,48,48,48,96,96,96,192,192, + 192,192,8,13,13,10,1,0,60,126,102,195,195,195,195,195, + 195,195,102,126,60,5,13,13,10,2,0,24,248,248,24,24, + 24,24,24,24,24,24,24,24,8,13,13,10,1,0,60,254, + 195,3,7,14,28,56,112,224,192,255,255,8,13,13,10,1, + 0,62,127,195,195,6,28,30,7,3,195,199,126,60,9,13, + 26,10,0,0,3,0,7,0,15,0,27,0,51,0,51,0, + 99,0,195,0,255,128,255,128,3,0,3,0,3,0,8,13, + 13,10,1,0,254,254,192,192,252,254,199,3,3,195,199,254, + 124,8,13,13,10,1,0,60,127,99,192,192,220,254,195,195, + 195,227,126,60,8,13,13,10,1,0,255,255,3,6,12,12, + 24,24,48,48,96,96,96,8,13,13,10,1,0,60,126,231, + 195,195,102,126,231,195,195,231,126,60,8,13,13,10,1,0, + 60,126,199,195,195,195,127,59,3,3,198,254,124,2,10,10, + 5,1,0,192,192,0,0,0,0,0,0,192,192,2,13,13, + 5,1,253,192,192,0,0,0,0,0,0,192,192,64,64,128, + 8,9,9,10,1,0,3,15,60,112,192,112,60,15,3,7, + 5,5,11,2,2,254,254,0,254,254,8,9,9,10,1,0, + 192,240,60,14,3,14,60,240,192,7,14,14,10,1,0,124, + 254,198,198,14,28,56,48,48,48,0,0,48,48,16,17,34, + 18,1,253,3,240,15,252,28,14,48,6,99,211,103,115,198, + 51,204,99,204,102,204,102,204,204,207,248,103,112,112,0,56, + 0,31,240,7,224,12,14,28,13,0,0,6,0,6,0,15, + 0,15,0,25,128,25,128,48,192,48,192,63,192,127,224,96, + 96,96,96,192,48,192,48,11,14,28,13,1,0,255,0,255, + 128,193,192,192,192,192,192,193,128,255,128,255,192,192,224,192, + 96,192,96,192,224,255,192,255,128,12,14,28,14,1,0,15, + 128,63,224,112,112,96,48,224,0,192,0,192,0,192,0,192, + 0,224,0,96,48,112,112,63,224,15,128,12,14,28,14,1, + 0,255,128,255,192,192,224,192,96,192,48,192,48,192,48,192, + 48,192,48,192,48,192,96,192,224,255,192,255,128,10,14,28, + 13,2,0,255,192,255,192,192,0,192,0,192,0,192,0,255, + 128,255,128,192,0,192,0,192,0,192,0,255,192,255,192,9, + 14,28,12,2,0,255,128,255,128,192,0,192,0,192,0,192, + 0,255,0,255,0,192,0,192,0,192,0,192,0,192,0,192, + 0,13,14,28,15,1,0,15,192,63,240,112,56,96,24,224, + 24,192,0,192,0,192,248,192,248,224,24,96,24,112,56,63, + 248,15,216,11,14,28,14,1,0,192,96,192,96,192,96,192, + 96,192,96,192,96,255,224,255,224,192,96,192,96,192,96,192, + 96,192,96,192,96,2,14,14,6,2,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,8,14,14,10,0,0,3, + 3,3,3,3,3,3,3,3,195,195,231,126,60,12,14,28, + 13,2,0,192,224,193,192,195,128,199,0,206,0,220,0,248, + 0,252,0,206,0,199,0,195,128,193,192,192,224,192,112,9, + 14,28,11,1,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,255,128,255, + 128,14,14,28,16,1,0,192,12,192,12,224,28,224,28,240, + 60,240,60,216,108,216,108,204,204,204,204,196,140,199,140,195, + 12,195,12,11,14,28,14,1,0,192,96,224,96,240,96,240, + 96,216,96,204,96,204,96,198,96,198,96,195,96,193,224,193, + 224,192,224,192,96,13,14,28,15,1,0,15,128,63,224,112, + 112,96,48,224,56,192,24,192,24,192,24,192,24,224,56,96, + 48,112,112,63,224,15,128,10,14,28,13,2,0,255,0,255, + 128,193,192,192,192,192,192,193,192,255,128,255,0,192,0,192, + 0,192,0,192,0,192,0,192,0,13,15,30,15,1,255,15, + 128,63,224,112,112,96,48,224,56,192,24,192,24,192,24,192, + 24,225,184,97,176,112,240,63,224,15,176,0,48,11,14,28, + 14,1,0,255,128,255,192,192,224,192,96,192,96,192,224,255, + 192,255,128,192,192,192,192,192,96,192,96,192,96,192,96,10, + 14,28,13,1,0,30,0,127,128,225,192,192,192,224,0,124, + 0,31,0,3,128,1,192,0,192,192,192,225,192,127,128,63, + 0,10,14,28,12,1,0,255,192,255,192,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,11,14,28,14,1,0,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,96,96, + 192,127,192,31,0,12,14,28,13,0,0,192,48,192,48,96, + 96,96,96,96,96,48,192,48,192,48,192,25,128,25,128,25, + 128,15,0,15,0,6,0,16,14,28,18,1,0,193,131,193, + 131,193,131,195,195,99,198,98,70,102,102,102,102,54,108,54, + 108,52,44,28,56,24,24,24,24,11,14,28,13,1,0,192, + 96,192,96,96,192,113,192,49,128,27,0,14,0,14,0,27, + 0,49,128,113,192,96,192,192,96,192,96,12,14,28,13,0, + 0,192,48,192,48,96,96,96,96,48,192,57,192,25,128,15, + 0,6,0,6,0,6,0,6,0,6,0,6,0,10,14,28, + 12,1,0,255,192,255,192,0,192,1,128,3,0,6,0,12, + 0,28,0,24,0,48,0,96,0,192,0,255,192,255,192,4, + 18,18,5,0,252,240,240,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,240,240,5,14,14,5,0,0,192,192,192, + 96,96,96,48,48,48,48,24,24,24,24,4,18,18,5,0, + 252,240,240,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,240,240,7,6,6,9,1,7,16,56,108,108,198,198,11, + 2,4,11,0,252,255,224,255,224,4,3,3,4,0,11,192, + 96,48,9,10,20,11,1,0,126,0,231,0,195,0,7,0, + 127,0,227,0,195,0,195,0,231,128,121,128,9,14,28,11, + 1,0,192,0,192,0,192,0,192,0,222,0,255,0,227,0, + 193,128,193,128,193,128,193,128,227,0,255,0,222,0,8,10, + 10,10,1,0,62,127,99,192,192,192,192,99,127,62,9,14, + 28,11,1,0,1,128,1,128,1,128,1,128,61,128,127,128, + 99,128,193,128,193,128,193,128,193,128,99,128,127,128,61,128, + 8,10,10,10,1,0,60,126,195,195,255,192,192,227,127,60, + 6,14,14,6,0,0,28,60,48,48,252,252,48,48,48,48, + 48,48,48,48,9,14,28,11,1,252,61,128,127,128,97,128, + 193,128,193,128,193,128,193,128,99,128,127,128,61,128,1,128, + 99,0,127,0,28,0,8,14,14,10,1,0,192,192,192,192, + 222,255,227,195,195,195,195,195,195,195,2,14,14,4,1,0, + 192,192,0,0,192,192,192,192,192,192,192,192,192,192,4,18, + 18,4,255,252,48,48,0,0,48,48,48,48,48,48,48,48, + 48,48,48,48,240,224,8,14,14,9,1,0,192,192,192,192, + 198,204,216,240,248,216,204,206,198,199,2,14,14,4,1,0, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,14,10, + 20,16,1,0,222,120,255,252,227,140,195,12,195,12,195,12, + 195,12,195,12,195,12,195,12,8,10,10,10,1,0,222,255, + 227,195,195,195,195,195,195,195,9,10,20,11,1,0,62,0, + 127,0,99,0,193,128,193,128,193,128,193,128,99,0,127,0, + 62,0,9,14,28,11,1,252,222,0,255,0,227,0,193,128, + 193,128,193,128,193,128,227,0,255,0,222,0,192,0,192,0, + 192,0,192,0,9,14,28,11,1,252,61,128,127,128,99,128, + 193,128,193,128,193,128,193,128,99,128,127,128,61,128,1,128, + 1,128,1,128,1,128,5,10,10,6,1,0,216,216,224,192, + 192,192,192,192,192,192,7,10,10,9,1,0,60,126,198,192, + 252,62,6,198,252,120,6,13,13,6,0,0,48,48,48,252, + 252,48,48,48,48,48,48,60,28,8,10,10,10,1,0,195, + 195,195,195,195,195,195,199,255,123,8,10,10,10,1,0,195, + 195,195,102,102,102,36,60,24,24,12,10,20,14,1,0,198, + 48,198,48,198,48,102,96,102,96,105,96,41,64,57,192,25, + 128,25,128,8,10,10,10,1,0,195,231,102,60,24,24,60, + 102,231,195,8,14,14,10,1,252,195,195,195,102,102,102,36, + 60,24,24,24,24,112,112,7,10,10,9,1,0,254,254,6, + 12,24,48,96,192,254,254,6,18,18,6,255,252,12,24,48, + 48,48,48,48,96,192,96,48,48,48,48,48,48,24,12,2, + 18,18,5,1,252,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,6,18,18,6,0,252,192,96,48, + 48,48,48,48,24,12,24,48,48,48,48,48,48,96,192,8, + 3,3,10,1,4,115,255,206,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,0,0,0,5,0,1,2, + 14,14,6,2,252,192,192,0,0,64,64,192,192,192,192,192, + 192,192,192,8,14,14,10,1,254,4,4,62,127,107,200,200, + 200,200,107,127,62,16,16,9,13,26,10,0,0,30,0,63, + 0,97,128,97,128,96,0,48,0,126,0,24,0,24,0,48, + 0,96,128,255,128,223,0,8,7,7,10,1,3,195,255,102, + 102,102,255,195,8,13,13,10,1,0,195,195,102,102,102,60, + 255,24,255,24,24,24,24,2,18,18,5,1,252,192,192,192, + 192,192,192,192,0,0,0,0,192,192,192,192,192,192,192,8, + 18,18,10,1,252,60,126,195,195,240,124,110,199,195,227,115, + 62,14,7,195,195,126,60,5,2,2,6,0,12,216,216,13, + 14,28,15,1,0,15,128,48,96,64,16,71,16,136,136,144, + 136,144,8,144,8,144,8,136,136,71,16,64,16,48,96,15, + 128,5,8,8,7,1,6,112,152,56,72,216,104,0,248,7, + 6,6,9,1,2,54,108,216,216,108,54,9,5,10,11,1, + 3,255,128,255,128,1,128,1,128,1,128,5,1,1,6,0, + 5,248,13,14,28,14,0,0,15,128,48,96,64,16,79,144, + 136,72,136,72,136,72,143,136,137,8,136,136,72,80,64,16, + 48,96,15,128,5,1,1,5,0,12,248,5,5,5,7,1, + 8,112,216,136,216,112,8,11,11,10,1,0,24,24,24,255, + 255,24,24,24,0,255,255,5,8,8,6,0,5,112,248,152, + 24,48,96,248,248,5,8,8,6,0,5,112,248,152,48,48, + 152,248,112,4,3,3,4,0,11,48,96,192,8,14,14,10, + 1,252,195,195,195,195,195,195,195,231,255,219,192,192,192,192, + 8,18,18,10,1,252,63,114,242,242,242,242,242,114,50,18, + 18,18,18,18,18,18,18,18,2,2,2,4,1,4,192,192, + 5,5,5,5,0,252,96,112,24,216,240,4,8,8,6,0, + 5,48,240,240,48,48,48,48,48,5,8,8,7,1,6,112, + 216,136,136,216,112,0,248,7,6,6,9,1,2,216,108,54, + 54,108,216,14,13,26,15,0,0,48,48,240,48,240,96,48, + 192,48,192,49,136,49,24,51,56,6,120,6,216,12,252,24, + 24,24,24,14,13,26,15,0,0,48,48,240,48,240,96,48, + 192,48,192,49,184,49,124,51,76,6,12,6,24,12,48,24, + 124,24,124,14,13,26,15,0,0,112,48,248,48,152,96,48, + 192,48,192,153,136,249,24,115,56,6,120,6,216,12,252,24, + 24,24,24,7,14,14,10,1,252,24,24,0,0,24,24,24, + 56,112,224,198,198,254,124,12,18,36,13,0,0,24,0,12, + 0,6,0,0,0,6,0,6,0,15,0,15,0,25,128,25, + 128,48,192,48,192,63,192,127,224,96,96,96,96,192,48,192, + 48,12,18,36,13,0,0,1,128,3,0,6,0,0,0,6, + 0,6,0,15,0,15,0,25,128,25,128,48,192,48,192,63, + 192,127,224,96,96,96,96,192,48,192,48,12,18,36,13,0, + 0,6,0,15,0,25,128,0,0,6,0,6,0,15,0,15, + 0,25,128,25,128,48,192,48,192,63,192,127,224,96,96,96, + 96,192,48,192,48,12,18,36,13,0,0,12,128,22,128,19, + 0,0,0,6,0,6,0,15,0,15,0,25,128,25,128,48, + 192,48,192,63,192,127,224,96,96,96,96,192,48,192,48,12, + 17,34,13,0,0,25,128,25,128,0,0,6,0,6,0,15, + 0,15,0,25,128,25,128,48,192,48,192,63,192,127,224,96, + 96,96,96,192,48,192,48,12,17,34,13,0,0,6,0,9, + 0,9,0,6,0,6,0,15,0,15,0,25,128,25,128,48, + 192,48,192,63,192,127,224,96,96,96,96,192,48,192,48,16, + 14,28,18,1,0,7,255,7,255,13,128,13,128,25,128,25, + 128,49,254,49,254,63,128,127,128,97,128,97,128,193,255,193, + 255,12,18,36,14,1,252,15,128,63,224,112,112,96,48,224, + 0,192,0,192,0,192,0,192,0,224,0,96,48,112,112,63, + 224,15,128,6,0,3,0,27,0,30,0,10,18,36,13,2, + 0,48,0,24,0,12,0,0,0,255,192,255,192,192,0,192, + 0,192,0,192,0,255,128,255,128,192,0,192,0,192,0,192, + 0,255,192,255,192,10,18,36,13,2,0,3,0,6,0,12, + 0,0,0,255,192,255,192,192,0,192,0,192,0,192,0,255, + 128,255,128,192,0,192,0,192,0,192,0,255,192,255,192,10, + 18,36,13,2,0,12,0,30,0,51,0,0,0,255,192,255, + 192,192,0,192,0,192,0,192,0,255,128,255,128,192,0,192, + 0,192,0,192,0,255,192,255,192,10,17,34,13,2,0,51, + 0,51,0,0,0,255,192,255,192,192,0,192,0,192,0,192, + 0,255,128,255,128,192,0,192,0,192,0,192,0,255,192,255, + 192,4,18,18,6,0,0,192,96,48,0,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,4,18,18,6,2,0,48, + 96,192,0,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,6,18,18,6,0,0,48,120,132,0,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,6,17,17,6,0,0,204, + 204,0,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 14,14,28,14,255,0,63,224,63,240,48,56,48,24,48,12, + 48,12,254,12,254,12,48,12,48,12,48,24,48,56,63,240, + 63,224,11,18,36,14,1,0,12,128,22,128,19,0,0,0, + 192,96,224,96,240,96,240,96,216,96,204,96,204,96,198,96, + 198,96,195,96,193,224,193,224,192,224,192,96,13,18,36,15, + 1,0,24,0,12,0,6,0,0,0,15,128,63,224,112,112, + 96,48,224,56,192,24,192,24,192,24,192,24,224,56,96,48, + 112,112,63,224,15,128,13,18,36,15,1,0,1,128,3,0, + 6,0,0,0,15,128,63,224,112,112,96,48,224,56,192,24, + 192,24,192,24,192,24,224,56,96,48,112,112,63,224,15,128, + 13,18,36,15,1,0,3,0,7,128,12,192,0,0,15,128, + 63,224,112,112,96,48,224,56,192,24,192,24,192,24,192,24, + 224,56,96,48,112,112,63,224,15,128,13,18,36,15,1,0, + 6,64,11,64,9,128,0,0,15,128,63,224,112,112,96,48, + 224,56,192,24,192,24,192,24,192,24,224,56,96,48,112,112, + 63,224,15,128,13,17,34,15,1,0,12,192,12,192,0,0, + 15,128,63,224,112,112,96,48,224,56,192,24,192,24,192,24, + 192,24,224,56,96,48,112,112,63,224,15,128,10,9,18,10, + 0,0,192,192,97,128,51,0,30,0,12,0,30,0,51,0, + 97,128,192,192,14,14,28,15,0,0,7,204,31,248,56,48, + 48,120,112,220,97,140,99,12,98,12,102,12,108,28,56,24, + 56,56,111,240,199,192,11,18,36,14,1,0,24,0,12,0, + 6,0,0,0,192,96,192,96,192,96,192,96,192,96,192,96, + 192,96,192,96,192,96,192,96,192,96,96,192,127,192,31,0, + 11,18,36,14,1,0,3,0,6,0,12,0,0,0,192,96, + 192,96,192,96,192,96,192,96,192,96,192,96,192,96,192,96, + 192,96,192,96,96,192,127,192,31,0,11,18,36,14,1,0, + 6,0,15,0,25,128,0,0,192,96,192,96,192,96,192,96, + 192,96,192,96,192,96,192,96,192,96,192,96,192,96,96,192, + 127,192,31,0,11,17,34,14,1,0,49,128,49,128,0,0, + 192,96,192,96,192,96,192,96,192,96,192,96,192,96,192,96, + 192,96,192,96,192,96,96,192,127,192,31,0,12,18,36,13, + 0,0,1,128,3,0,6,0,0,0,192,48,192,48,96,96, + 96,96,48,192,57,192,25,128,15,0,6,0,6,0,6,0, + 6,0,6,0,6,0,10,14,28,12,1,0,192,0,192,0, + 192,0,255,0,255,128,193,192,192,192,192,192,193,192,255,128, + 255,0,192,0,192,0,192,0,7,14,14,9,1,0,56,124, + 198,198,198,198,220,220,198,198,198,198,222,220,9,14,28,11, + 1,0,48,0,24,0,12,0,0,0,126,0,231,0,195,0, + 7,0,127,0,227,0,195,0,195,0,231,128,121,128,9,14, + 28,11,1,0,12,0,24,0,48,0,0,0,126,0,231,0, + 195,0,7,0,127,0,227,0,195,0,195,0,231,128,121,128, + 9,14,28,11,1,0,24,0,60,0,102,0,0,0,126,0, + 231,0,195,0,7,0,127,0,227,0,195,0,195,0,231,128, + 121,128,9,14,28,11,1,0,50,0,90,0,76,0,0,0, + 126,0,231,0,195,0,7,0,127,0,227,0,195,0,195,0, + 231,128,121,128,9,14,28,11,1,0,102,0,102,0,0,0, + 0,0,126,0,231,0,195,0,7,0,127,0,227,0,195,0, + 195,0,231,128,121,128,9,14,28,11,1,0,24,0,36,0, + 36,0,24,0,126,0,231,0,195,0,7,0,127,0,227,0, + 195,0,195,0,231,128,121,128,14,10,20,17,2,0,126,240, + 231,248,195,12,7,12,127,252,227,0,195,0,195,140,231,252, + 122,240,8,14,14,10,1,252,62,127,99,192,192,192,192,99, + 127,62,24,12,108,120,8,14,14,10,1,0,48,24,12,0, + 60,126,195,195,255,192,192,227,127,60,8,14,14,10,1,0, + 12,24,48,0,60,126,195,195,255,192,192,227,127,60,8,14, + 14,10,1,0,24,60,102,0,60,126,195,195,255,192,192,227, + 127,60,8,14,14,10,1,0,102,102,0,0,60,126,195,195, + 255,192,192,227,127,60,4,14,14,4,0,0,192,96,48,0, + 96,96,96,96,96,96,96,96,96,96,4,14,14,4,0,0, + 48,96,192,0,96,96,96,96,96,96,96,96,96,96,6,14, + 14,4,255,0,48,120,204,0,48,48,48,48,48,48,48,48, + 48,48,5,14,14,4,0,0,216,216,0,0,96,96,96,96, + 96,96,96,96,96,96,9,14,28,11,1,0,96,0,54,0, + 56,0,76,0,62,0,127,0,99,0,193,128,193,128,193,128, + 193,128,99,0,127,0,62,0,8,14,14,10,1,0,50,90, + 76,0,222,255,227,195,195,195,195,195,195,195,9,14,28,11, + 1,0,48,0,24,0,12,0,0,0,62,0,127,0,99,0, + 193,128,193,128,193,128,193,128,99,0,127,0,62,0,9,14, + 28,11,1,0,6,0,12,0,24,0,0,0,62,0,127,0, + 99,0,193,128,193,128,193,128,193,128,99,0,127,0,62,0, + 9,14,28,11,1,0,24,0,60,0,102,0,0,0,62,0, + 127,0,99,0,193,128,193,128,193,128,193,128,99,0,127,0, + 62,0,9,14,28,11,1,0,50,0,90,0,76,0,0,0, + 62,0,127,0,99,0,193,128,193,128,193,128,193,128,99,0, + 127,0,62,0,9,14,28,11,1,0,51,0,51,0,0,0, + 0,0,62,0,127,0,99,0,193,128,193,128,193,128,193,128, + 99,0,127,0,62,0,8,8,8,10,1,1,24,24,0,255, + 255,0,24,24,11,10,20,11,0,0,14,96,63,192,49,128, + 99,192,102,192,108,192,120,192,49,128,127,128,206,0,8,14, + 14,10,1,0,48,24,12,0,195,195,195,195,195,195,195,199, + 255,123,8,14,14,10,1,0,6,12,24,0,195,195,195,195, + 195,195,195,199,255,123,8,14,14,10,1,0,24,60,102,0, + 195,195,195,195,195,195,195,199,255,123,8,14,14,10,1,0, + 102,102,0,0,195,195,195,195,195,195,195,199,255,123,8,18, + 18,10,1,252,6,12,24,0,195,195,195,102,102,102,36,60, + 24,24,24,24,112,112,9,18,36,11,1,252,192,0,192,0, + 192,0,192,0,222,0,255,0,227,0,193,128,193,128,193,128, + 193,128,227,0,255,0,222,0,192,0,192,0,192,0,192,0, + 8,18,18,10,1,252,102,102,0,0,195,195,195,102,102,102, + 36,60,24,24,24,24,112,112}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--20-140-100-100-P-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 13 + Calculated Max Values w=16 h=18 x= 2 y=11 dx=18 dy= 0 ascent=14 len=34 + Font Bounding box w=22 h=29 x=-2 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =14 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR14r[2281] U8G_SECTION(".progmem.u8g_font_helvR14r") = { + 0,22,29,254,249,14,2,149,6,82,32,127,252,14,252,14, + 252,0,0,0,5,0,1,2,14,14,6,2,0,192,192,192, + 192,192,192,192,192,128,128,0,0,192,192,5,5,5,5,0, + 9,216,216,216,216,216,10,13,26,10,0,0,9,0,9,0, + 9,0,127,192,127,192,18,0,18,0,18,0,255,128,255,128, + 36,0,36,0,36,0,9,16,32,10,1,254,8,0,62,0, + 127,0,203,0,200,0,232,0,120,0,62,0,15,0,9,128, + 201,128,235,128,127,0,62,0,8,0,8,0,14,13,26,16, + 1,0,120,96,204,192,204,192,205,128,205,128,123,0,3,0, + 6,120,6,204,12,204,12,204,24,204,24,120,12,13,26,13, + 1,0,60,0,126,0,102,0,102,0,60,0,124,0,238,192, + 198,192,195,192,195,128,231,192,126,224,60,112,1,5,5,3, + 1,9,128,128,128,128,128,4,18,18,6,0,252,16,48,96, + 96,192,192,192,192,192,192,192,192,192,192,96,96,48,16,4, + 18,18,6,1,252,128,192,96,96,48,48,48,48,48,48,48, + 48,48,48,96,96,192,128,5,7,7,7,1,7,32,168,248, + 32,248,168,32,8,10,10,10,1,0,24,24,24,24,255,255, + 24,24,24,24,2,5,5,5,1,253,192,192,64,64,128,5, + 1,1,6,0,5,248,2,2,2,5,1,0,192,192,5,14, + 14,5,0,0,24,24,24,24,48,48,48,96,96,96,192,192, + 192,192,8,13,13,10,1,0,60,126,102,195,195,195,195,195, + 195,195,102,126,60,5,13,13,10,2,0,24,248,248,24,24, + 24,24,24,24,24,24,24,24,8,13,13,10,1,0,60,254, + 195,3,7,14,28,56,112,224,192,255,255,8,13,13,10,1, + 0,62,127,195,195,6,28,30,7,3,195,199,126,60,9,13, + 26,10,0,0,3,0,7,0,15,0,27,0,51,0,51,0, + 99,0,195,0,255,128,255,128,3,0,3,0,3,0,8,13, + 13,10,1,0,254,254,192,192,252,254,199,3,3,195,199,254, + 124,8,13,13,10,1,0,60,127,99,192,192,220,254,195,195, + 195,227,126,60,8,13,13,10,1,0,255,255,3,6,12,12, + 24,24,48,48,96,96,96,8,13,13,10,1,0,60,126,231, + 195,195,102,126,231,195,195,231,126,60,8,13,13,10,1,0, + 60,126,199,195,195,195,127,59,3,3,198,254,124,2,10,10, + 5,1,0,192,192,0,0,0,0,0,0,192,192,2,13,13, + 5,1,253,192,192,0,0,0,0,0,0,192,192,64,64,128, + 8,9,9,10,1,0,3,15,60,112,192,112,60,15,3,7, + 5,5,11,2,2,254,254,0,254,254,8,9,9,10,1,0, + 192,240,60,14,3,14,60,240,192,7,14,14,10,1,0,124, + 254,198,198,14,28,56,48,48,48,0,0,48,48,16,17,34, + 18,1,253,3,240,15,252,28,14,48,6,99,211,103,115,198, + 51,204,99,204,102,204,102,204,204,207,248,103,112,112,0,56, + 0,31,240,7,224,12,14,28,13,0,0,6,0,6,0,15, + 0,15,0,25,128,25,128,48,192,48,192,63,192,127,224,96, + 96,96,96,192,48,192,48,11,14,28,13,1,0,255,0,255, + 128,193,192,192,192,192,192,193,128,255,128,255,192,192,224,192, + 96,192,96,192,224,255,192,255,128,12,14,28,14,1,0,15, + 128,63,224,112,112,96,48,224,0,192,0,192,0,192,0,192, + 0,224,0,96,48,112,112,63,224,15,128,12,14,28,14,1, + 0,255,128,255,192,192,224,192,96,192,48,192,48,192,48,192, + 48,192,48,192,48,192,96,192,224,255,192,255,128,10,14,28, + 13,2,0,255,192,255,192,192,0,192,0,192,0,192,0,255, + 128,255,128,192,0,192,0,192,0,192,0,255,192,255,192,9, + 14,28,12,2,0,255,128,255,128,192,0,192,0,192,0,192, + 0,255,0,255,0,192,0,192,0,192,0,192,0,192,0,192, + 0,13,14,28,15,1,0,15,192,63,240,112,56,96,24,224, + 24,192,0,192,0,192,248,192,248,224,24,96,24,112,56,63, + 248,15,216,11,14,28,14,1,0,192,96,192,96,192,96,192, + 96,192,96,192,96,255,224,255,224,192,96,192,96,192,96,192, + 96,192,96,192,96,2,14,14,6,2,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,8,14,14,10,0,0,3, + 3,3,3,3,3,3,3,3,195,195,231,126,60,12,14,28, + 13,2,0,192,224,193,192,195,128,199,0,206,0,220,0,248, + 0,252,0,206,0,199,0,195,128,193,192,192,224,192,112,9, + 14,28,11,1,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,255,128,255, + 128,14,14,28,16,1,0,192,12,192,12,224,28,224,28,240, + 60,240,60,216,108,216,108,204,204,204,204,196,140,199,140,195, + 12,195,12,11,14,28,14,1,0,192,96,224,96,240,96,240, + 96,216,96,204,96,204,96,198,96,198,96,195,96,193,224,193, + 224,192,224,192,96,13,14,28,15,1,0,15,128,63,224,112, + 112,96,48,224,56,192,24,192,24,192,24,192,24,224,56,96, + 48,112,112,63,224,15,128,10,14,28,13,2,0,255,0,255, + 128,193,192,192,192,192,192,193,192,255,128,255,0,192,0,192, + 0,192,0,192,0,192,0,192,0,13,15,30,15,1,255,15, + 128,63,224,112,112,96,48,224,56,192,24,192,24,192,24,192, + 24,225,184,97,176,112,240,63,224,15,176,0,48,11,14,28, + 14,1,0,255,128,255,192,192,224,192,96,192,96,192,224,255, + 192,255,128,192,192,192,192,192,96,192,96,192,96,192,96,10, + 14,28,13,1,0,30,0,127,128,225,192,192,192,224,0,124, + 0,31,0,3,128,1,192,0,192,192,192,225,192,127,128,63, + 0,10,14,28,12,1,0,255,192,255,192,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,11,14,28,14,1,0,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,96,96, + 192,127,192,31,0,12,14,28,13,0,0,192,48,192,48,96, + 96,96,96,96,96,48,192,48,192,48,192,25,128,25,128,25, + 128,15,0,15,0,6,0,16,14,28,18,1,0,193,131,193, + 131,193,131,195,195,99,198,98,70,102,102,102,102,54,108,54, + 108,52,44,28,56,24,24,24,24,11,14,28,13,1,0,192, + 96,192,96,96,192,113,192,49,128,27,0,14,0,14,0,27, + 0,49,128,113,192,96,192,192,96,192,96,12,14,28,13,0, + 0,192,48,192,48,96,96,96,96,48,192,57,192,25,128,15, + 0,6,0,6,0,6,0,6,0,6,0,6,0,10,14,28, + 12,1,0,255,192,255,192,0,192,1,128,3,0,6,0,12, + 0,28,0,24,0,48,0,96,0,192,0,255,192,255,192,4, + 18,18,5,0,252,240,240,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,240,240,5,14,14,5,0,0,192,192,192, + 96,96,96,48,48,48,48,24,24,24,24,4,18,18,5,0, + 252,240,240,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,240,240,7,6,6,9,1,7,16,56,108,108,198,198,11, + 2,4,11,0,252,255,224,255,224,4,3,3,4,0,11,192, + 96,48,9,10,20,11,1,0,126,0,231,0,195,0,7,0, + 127,0,227,0,195,0,195,0,231,128,121,128,9,14,28,11, + 1,0,192,0,192,0,192,0,192,0,222,0,255,0,227,0, + 193,128,193,128,193,128,193,128,227,0,255,0,222,0,8,10, + 10,10,1,0,62,127,99,192,192,192,192,99,127,62,9,14, + 28,11,1,0,1,128,1,128,1,128,1,128,61,128,127,128, + 99,128,193,128,193,128,193,128,193,128,99,128,127,128,61,128, + 8,10,10,10,1,0,60,126,195,195,255,192,192,227,127,60, + 6,14,14,6,0,0,28,60,48,48,252,252,48,48,48,48, + 48,48,48,48,9,14,28,11,1,252,61,128,127,128,97,128, + 193,128,193,128,193,128,193,128,99,128,127,128,61,128,1,128, + 99,0,127,0,28,0,8,14,14,10,1,0,192,192,192,192, + 222,255,227,195,195,195,195,195,195,195,2,14,14,4,1,0, + 192,192,0,0,192,192,192,192,192,192,192,192,192,192,4,18, + 18,4,255,252,48,48,0,0,48,48,48,48,48,48,48,48, + 48,48,48,48,240,224,8,14,14,9,1,0,192,192,192,192, + 198,204,216,240,248,216,204,206,198,199,2,14,14,4,1,0, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,14,10, + 20,16,1,0,222,120,255,252,227,140,195,12,195,12,195,12, + 195,12,195,12,195,12,195,12,8,10,10,10,1,0,222,255, + 227,195,195,195,195,195,195,195,9,10,20,11,1,0,62,0, + 127,0,99,0,193,128,193,128,193,128,193,128,99,0,127,0, + 62,0,9,14,28,11,1,252,222,0,255,0,227,0,193,128, + 193,128,193,128,193,128,227,0,255,0,222,0,192,0,192,0, + 192,0,192,0,9,14,28,11,1,252,61,128,127,128,99,128, + 193,128,193,128,193,128,193,128,99,128,127,128,61,128,1,128, + 1,128,1,128,1,128,5,10,10,6,1,0,216,216,224,192, + 192,192,192,192,192,192,7,10,10,9,1,0,60,126,198,192, + 252,62,6,198,252,120,6,13,13,6,0,0,48,48,48,252, + 252,48,48,48,48,48,48,60,28,8,10,10,10,1,0,195, + 195,195,195,195,195,195,199,255,123,8,10,10,10,1,0,195, + 195,195,102,102,102,36,60,24,24,12,10,20,14,1,0,198, + 48,198,48,198,48,102,96,102,96,105,96,41,64,57,192,25, + 128,25,128,8,10,10,10,1,0,195,231,102,60,24,24,60, + 102,231,195,8,14,14,10,1,252,195,195,195,102,102,102,36, + 60,24,24,24,24,112,112,7,10,10,9,1,0,254,254,6, + 12,24,48,96,192,254,254,6,18,18,6,255,252,12,24,48, + 48,48,48,48,96,192,96,48,48,48,48,48,48,24,12,2, + 18,18,5,1,252,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,6,18,18,6,0,252,192,96,48, + 48,48,48,48,24,12,24,48,48,48,48,48,48,96,192,8, + 3,3,10,1,4,115,255,206,255}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--25-180-100-100-P-130-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 19, '1' Height: 18 + Calculated Max Values w=22 h=24 x= 3 y=16 dx=25 dy= 0 ascent=24 len=69 + Font Bounding box w=28 h=37 x=-3 y=-8 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =19 descent=-5 + X Font ascent =19 descent=-5 + Max Font ascent =24 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR18[7307] U8G_SECTION(".progmem.u8g_font_helvR18") = { + 0,28,37,253,248,19,4,37,9,49,32,255,251,24,251,19, + 251,0,0,0,6,0,1,2,19,19,6,2,0,192,192,192, + 192,192,192,192,192,192,192,192,192,128,128,0,0,192,192,192, + 6,6,6,8,1,13,204,204,204,204,204,68,11,17,34,14, + 2,0,12,192,12,192,12,192,25,128,255,224,255,224,25,128, + 25,128,51,0,51,0,255,224,255,224,51,0,51,0,102,0, + 102,0,102,0,11,22,44,13,1,254,6,0,6,0,31,128, + 63,192,118,224,102,96,102,96,102,0,118,0,62,0,62,0, + 15,128,7,192,6,224,6,96,198,96,198,96,230,224,127,192, + 63,128,6,0,6,0,19,18,54,22,1,0,0,6,0,60, + 12,0,126,12,0,195,24,0,195,24,0,195,48,0,195,48, + 0,126,96,0,60,96,0,0,192,0,0,199,128,1,143,192, + 1,152,96,3,24,96,3,24,96,6,24,96,6,15,192,4, + 7,128,14,18,36,17,2,0,15,0,31,128,57,192,48,192, + 48,192,48,192,25,128,15,0,30,0,63,24,115,152,97,216, + 192,240,192,96,192,240,225,216,127,156,30,0,2,6,6,6, + 2,13,192,192,192,192,192,64,5,24,24,8,2,251,24,24, + 48,48,96,96,96,192,192,192,192,192,192,192,192,192,192,96, + 96,96,48,48,24,24,5,24,24,8,1,251,192,192,96,96, + 48,48,48,24,24,24,24,24,24,24,24,24,24,48,48,48, + 96,96,192,192,7,7,7,10,1,12,16,16,214,124,56,108, + 68,12,12,24,14,1,1,6,0,6,0,6,0,6,0,6, + 0,255,240,255,240,6,0,6,0,6,0,6,0,6,0,2, + 6,6,6,2,253,192,192,192,64,64,128,6,2,2,8,1, + 6,252,252,2,3,3,6,2,0,192,192,192,7,19,19,7, + 0,0,6,4,12,12,8,24,24,16,16,48,48,32,96,96, + 64,192,192,128,128,11,18,36,13,1,0,31,0,63,128,113, + 192,96,192,96,192,224,224,192,96,192,96,192,96,192,96,192, + 96,192,96,224,224,96,192,96,192,113,192,63,128,31,0,6, + 18,18,13,2,0,12,12,28,252,252,12,12,12,12,12,12, + 12,12,12,12,12,12,12,11,18,36,13,1,0,30,0,127, + 128,97,192,192,192,192,96,192,96,0,224,0,192,1,192,3, + 128,15,0,28,0,56,0,112,0,224,0,192,0,255,224,255, + 224,11,18,36,13,1,0,31,0,127,128,97,128,192,192,192, + 192,192,192,0,192,1,128,15,0,15,192,0,192,0,96,0, + 96,192,96,192,192,97,192,127,128,31,0,11,18,36,13,1, + 0,1,128,3,128,3,128,7,128,15,128,13,128,25,128,57, + 128,49,128,97,128,225,128,193,128,255,224,255,224,1,128,1, + 128,1,128,1,128,11,18,36,13,1,0,127,192,127,192,96, + 0,96,0,96,0,96,0,126,0,127,128,113,192,0,192,0, + 224,0,96,0,96,192,224,192,192,225,192,127,128,30,0,11, + 18,36,13,1,0,15,0,63,192,112,192,96,96,224,96,192, + 0,192,0,207,0,223,128,241,192,224,192,192,96,192,96,192, + 96,224,224,113,192,127,192,31,0,11,18,36,13,1,0,255, + 224,255,224,0,224,0,192,1,128,1,128,3,0,3,0,6, + 0,6,0,12,0,12,0,28,0,24,0,24,0,56,0,48, + 0,48,0,11,18,36,13,1,0,14,0,63,128,49,128,96, + 192,96,192,96,192,49,128,31,0,63,128,113,192,96,192,192, + 96,192,96,192,96,192,96,96,192,127,192,31,0,11,18,36, + 13,1,0,31,0,127,192,113,192,224,192,192,96,192,96,192, + 96,192,96,224,224,113,224,127,96,30,96,0,96,0,224,192, + 192,225,192,127,128,30,0,2,14,14,6,2,0,192,192,192, + 0,0,0,0,0,0,0,0,192,192,192,2,17,17,6,2, + 253,192,192,192,0,0,0,0,0,0,0,0,192,192,192,64, + 64,128,12,12,24,15,1,1,0,48,0,240,3,192,15,0, + 60,0,224,0,224,0,60,0,15,0,3,192,0,240,0,48, + 10,5,10,15,2,5,255,192,255,192,0,0,255,192,255,192, + 12,12,24,15,1,1,192,0,240,0,60,0,15,0,3,192, + 0,112,0,112,3,192,15,0,60,0,240,0,192,0,10,19, + 38,12,1,0,31,0,127,128,113,192,224,192,192,192,193,192, + 1,128,3,128,7,0,6,0,12,0,12,0,12,0,12,0, + 0,0,0,0,12,0,12,0,12,0,22,23,69,25,2,252, + 0,255,0,3,255,192,15,1,224,28,0,112,56,0,24,48, + 0,24,96,115,12,96,251,12,193,199,12,195,134,12,195,6, + 12,198,6,12,198,12,28,198,12,24,198,12,56,231,28,112, + 99,247,224,113,227,128,56,0,0,28,0,0,15,3,0,7, + 255,0,0,252,0,15,19,38,17,1,0,3,128,3,128,6, + 192,6,192,12,64,12,96,12,96,24,48,24,48,24,48,48, + 24,63,248,63,248,96,12,96,12,96,12,192,6,192,6,192, + 6,14,19,38,17,2,0,255,192,255,240,192,112,192,24,192, + 24,192,24,192,24,192,48,255,224,255,240,192,24,192,12,192, + 12,192,12,192,12,192,28,192,120,255,240,255,192,15,19,38, + 18,1,0,7,224,31,248,60,60,112,14,96,6,224,6,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,224,6,96, + 6,112,14,60,60,31,248,7,224,15,19,38,18,2,0,255, + 192,255,240,192,120,192,28,192,12,192,14,192,6,192,6,192, + 6,192,6,192,6,192,6,192,6,192,14,192,12,192,28,192, + 120,255,240,255,192,12,19,38,16,2,0,255,240,255,240,192, + 0,192,0,192,0,192,0,192,0,192,0,255,224,255,224,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,255,240,255, + 240,11,19,38,14,2,0,255,224,255,224,192,0,192,0,192, + 0,192,0,192,0,192,0,255,192,255,192,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,16,19,38, + 19,1,0,7,224,31,248,60,60,112,14,96,6,224,6,192, + 0,192,0,192,0,192,127,192,127,192,3,192,3,224,3,96, + 7,112,15,60,63,31,251,7,227,14,19,38,18,2,0,192, + 12,192,12,192,12,192,12,192,12,192,12,192,12,192,12,255, + 252,255,252,192,12,192,12,192,12,192,12,192,12,192,12,192, + 12,192,12,192,12,2,19,19,8,3,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,10,19, + 38,13,1,0,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,192,192,192,192, + 192,192,192,192,97,128,127,128,63,0,13,19,38,18,3,0, + 192,56,192,112,192,224,193,192,195,128,199,0,206,0,220,0, + 252,0,254,0,231,0,195,128,193,128,193,192,192,224,192,96, + 192,112,192,56,192,24,11,19,38,14,2,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,255,224, + 255,224,17,19,57,21,2,0,192,1,128,224,3,128,224,3, + 128,240,7,128,240,7,128,216,13,128,216,13,128,216,13,128, + 204,25,128,204,25,128,204,25,128,198,49,128,198,49,128,198, + 49,128,195,97,128,195,97,128,195,97,128,193,193,128,193,193, + 128,14,19,38,18,2,0,224,12,240,12,240,12,216,12,220, + 12,204,12,206,12,198,12,199,12,195,12,195,140,193,140,193, + 204,192,204,192,236,192,108,192,60,192,60,192,28,16,19,38, + 18,1,0,7,224,31,248,60,60,112,14,96,6,224,7,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,224,7,96, + 6,112,14,60,60,31,248,7,224,13,19,38,16,2,0,255, + 224,255,240,192,48,192,24,192,24,192,24,192,24,192,48,255, + 240,255,224,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,16,19,38,18,1,0,7,224,31,248,60, + 60,112,14,96,6,224,7,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,224,7,96,230,112,126,60,28,31,254,7, + 231,13,19,38,17,2,0,255,224,255,240,192,48,192,24,192, + 24,192,24,192,24,192,48,255,240,255,224,192,112,192,48,192, + 24,192,24,192,24,192,24,192,24,192,24,192,24,13,19,38, + 16,2,0,15,128,63,224,96,96,192,48,192,48,192,0,224, + 0,124,0,63,128,7,224,0,240,0,56,0,24,0,24,192, + 24,192,56,240,112,127,224,31,128,14,19,38,16,1,0,255, + 252,255,252,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,14,19,38,18,2,0,192,12,192,12,192, + 12,192,12,192,12,192,12,192,12,192,12,192,12,192,12,192, + 12,192,12,192,12,192,12,192,12,96,24,112,56,63,240,15, + 192,15,19,38,17,1,0,192,6,192,6,224,14,96,12,112, + 28,48,24,48,24,56,56,24,48,24,48,28,112,12,96,12, + 96,14,224,6,192,6,192,3,128,3,128,3,128,20,19,57, + 22,1,0,192,96,48,192,96,48,192,96,48,192,240,48,96, + 240,96,97,152,96,97,152,96,97,152,96,97,152,96,49,152, + 192,51,12,192,51,12,192,51,12,192,27,13,128,27,13,128, + 30,7,128,14,7,0,12,3,0,12,3,0,15,19,38,17, + 1,0,192,6,224,14,112,28,48,24,24,48,28,112,14,224, + 7,192,3,128,3,128,7,192,14,224,12,96,28,112,56,56, + 48,24,96,12,224,14,192,6,14,19,38,16,1,0,192,12, + 224,28,96,24,112,56,48,48,56,112,24,96,28,224,12,192, + 15,192,7,128,7,128,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,13,19,38,15,1,0,255,248,255,248,0,56, + 0,112,0,224,1,192,1,192,3,128,7,0,7,0,14,0, + 28,0,28,0,56,0,112,0,112,0,224,0,255,248,255,248, + 4,24,24,7,2,251,240,240,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,240,240,8,19, + 19,7,0,0,192,64,64,96,32,32,48,16,16,16,24,8, + 8,12,4,4,6,2,3,4,24,24,7,1,251,240,240,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,240,240,10,9,18,12,1,10,12,0,12,0,30, + 0,18,0,51,0,97,128,97,128,192,192,192,192,14,2,4, + 14,0,251,255,252,255,252,5,4,4,7,1,15,192,96,48, + 24,11,14,28,13,1,0,31,0,63,128,97,192,96,192,0, + 192,7,192,63,192,120,192,224,192,192,192,193,192,227,192,126, + 224,60,96,11,19,38,14,2,0,192,0,192,0,192,0,192, + 0,192,0,207,0,223,128,241,192,224,192,192,224,192,96,192, + 96,192,96,192,96,192,224,224,192,241,192,223,128,207,0,10, + 14,28,12,1,0,31,0,63,128,113,192,96,192,224,0,192, + 0,192,0,192,0,192,0,224,0,96,192,113,192,63,128,31, + 0,11,19,38,14,1,0,0,96,0,96,0,96,0,96,0, + 96,30,96,63,96,113,224,96,224,224,96,192,96,192,96,192, + 96,192,96,224,96,96,224,113,224,63,96,30,96,11,14,28, + 13,1,0,14,0,63,128,113,192,96,192,192,96,192,96,255, + 224,255,224,192,0,192,0,96,96,112,224,63,192,15,0,6, + 19,19,8,1,0,28,60,48,48,48,252,252,48,48,48,48, + 48,48,48,48,48,48,48,48,11,19,38,14,1,251,30,96, + 63,96,113,224,96,224,224,96,192,96,192,96,192,96,192,96, + 224,96,96,224,113,224,63,96,30,96,0,96,192,96,224,192, + 127,192,31,0,10,19,38,13,2,0,192,0,192,0,192,0, + 192,0,192,0,206,0,223,128,241,128,224,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 2,19,19,6,2,0,192,192,192,0,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,4,24,24,6,0,251,48, + 48,48,0,0,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,240,224,10,19,38,12,2,0,192,0,192, + 0,192,0,192,0,192,0,193,128,195,128,199,0,206,0,220, + 0,248,0,252,0,206,0,198,0,199,0,195,128,193,128,193, + 192,192,192,2,19,19,6,2,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,16,14,28,20, + 2,0,206,60,255,126,227,199,193,131,193,131,193,131,193,131, + 193,131,193,131,193,131,193,131,193,131,193,131,193,131,10,14, + 28,14,2,0,206,0,223,128,241,128,224,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 11,14,28,13,1,0,31,0,63,128,113,192,96,192,224,224, + 192,96,192,96,192,96,192,96,224,224,96,192,113,192,63,128, + 31,0,11,19,38,14,2,251,207,0,223,128,241,192,224,192, + 192,224,192,96,192,96,192,96,192,96,192,224,224,192,241,192, + 223,128,207,0,192,0,192,0,192,0,192,0,192,0,11,19, + 38,14,1,251,30,96,63,96,113,224,96,224,224,96,192,96, + 192,96,192,96,192,96,224,96,96,224,113,224,63,96,30,96, + 0,96,0,96,0,96,0,96,0,96,6,14,14,9,2,0, + 204,220,248,240,224,192,192,192,192,192,192,192,192,192,10,14, + 28,12,1,0,63,0,127,128,225,192,192,192,192,0,248,0, + 127,0,15,128,1,192,192,192,192,192,225,192,127,128,63,0, + 6,18,18,8,1,0,48,48,48,48,252,252,48,48,48,48, + 48,48,48,48,48,48,60,28,10,14,28,14,2,0,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,193,192,99,192,126,192,28,192,11,14,28,13,1,0, + 192,96,192,96,192,96,96,192,96,192,113,192,49,128,49,128, + 27,0,27,0,27,0,14,0,14,0,14,0,18,14,42,18, + 0,0,192,192,192,192,192,192,97,225,128,97,225,128,97,225, + 128,49,35,0,51,51,0,51,51,0,27,54,0,26,22,0, + 30,30,0,14,28,0,12,12,0,12,12,0,10,14,28,12, + 1,0,192,192,225,192,97,128,51,0,30,0,30,0,12,0, + 30,0,30,0,51,0,115,128,97,128,192,192,192,192,12,19, + 38,13,0,251,192,48,192,48,96,48,112,96,48,96,56,224, + 24,192,24,192,13,128,13,128,7,128,7,0,3,0,3,0, + 6,0,6,0,12,0,60,0,56,0,10,14,28,12,1,0, + 255,192,255,192,1,128,3,0,7,0,14,0,12,0,28,0, + 56,0,48,0,96,0,224,0,255,192,255,192,6,24,24,8, + 1,251,12,24,48,48,48,48,48,48,48,48,96,192,192,96, + 48,48,48,48,48,48,48,48,24,12,1,24,24,6,2,251, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,6,24,24,8,1,251,192,96, + 48,48,48,48,48,48,48,48,24,12,12,24,48,48,48,48, + 48,48,48,48,96,192,10,4,8,14,2,5,112,192,252,192, + 207,192,195,128,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,6,0,1,2,19,19,6,2, + 251,192,192,192,0,0,64,64,192,192,192,192,192,192,192,192, + 192,192,192,192,10,18,36,13,1,254,1,128,1,128,31,0, + 63,128,115,192,102,192,198,0,204,0,204,0,204,0,216,0, + 216,0,216,192,113,192,127,128,63,0,96,0,96,0,12,18, + 36,14,1,0,31,128,63,224,112,112,96,48,96,0,112,0, + 48,0,24,0,255,128,255,128,24,0,24,0,24,0,48,0, + 48,0,103,48,255,240,240,224,11,12,24,13,1,3,192,96, + 238,224,127,192,49,128,96,192,96,192,96,192,96,192,49,128, + 127,192,238,224,192,96,14,18,36,14,0,0,224,28,96,24, + 112,56,48,48,56,112,24,96,28,224,12,192,63,240,63,240, + 3,0,63,240,63,240,3,0,3,0,3,0,3,0,3,0, + 2,24,24,6,2,251,192,192,192,192,192,192,192,192,192,192, + 0,0,0,0,192,192,192,192,192,192,192,192,192,192,11,24, + 48,13,1,251,31,0,63,128,113,192,96,192,112,192,56,0, + 28,0,126,0,231,0,195,128,193,192,192,192,96,96,112,96, + 56,96,28,192,15,128,7,0,3,128,97,192,96,192,113,192, + 63,128,31,0,6,2,2,8,1,16,204,204,19,19,57,19, + 1,0,3,248,0,14,14,0,48,1,128,96,0,192,65,240, + 64,195,24,96,134,12,32,132,0,32,132,0,32,132,0,32, + 132,0,32,134,12,32,195,24,96,65,240,64,96,0,192,48, + 1,128,24,3,0,14,14,0,3,248,0,7,12,12,9,1, + 7,120,204,204,28,108,204,204,220,118,0,254,254,9,8,16, + 14,2,3,25,128,51,0,102,0,204,0,204,0,102,0,51, + 0,25,128,13,8,16,15,1,2,255,248,255,248,0,24,0, + 24,0,24,0,24,0,24,0,24,6,2,2,8,1,6,252, + 252,18,19,57,19,1,0,7,248,0,28,14,0,48,3,0, + 96,1,128,67,240,128,194,24,192,130,8,64,130,8,64,130, + 8,64,130,16,64,131,240,64,130,32,64,130,16,64,194,16, + 192,66,8,128,96,1,128,48,3,0,28,14,0,7,248,0, + 6,2,2,8,1,16,252,252,8,7,7,9,0,11,60,102, + 195,195,195,102,60,12,13,26,14,1,0,6,0,6,0,6, + 0,6,0,255,240,255,240,6,0,6,0,6,0,6,0,0, + 0,255,240,255,240,7,10,10,7,0,8,60,126,198,6,12, + 24,48,96,254,254,7,10,10,7,0,8,124,254,198,6,60, + 60,6,198,254,124,5,4,4,7,1,15,24,48,96,192,10, + 19,38,14,2,251,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,193,192,227,192,254,192,220, + 192,192,0,192,0,192,0,192,0,192,0,10,24,48,12,1, + 251,31,192,127,192,125,128,253,128,253,128,253,128,253,128,253, + 128,253,128,125,128,125,128,61,128,13,128,13,128,13,128,13, + 128,13,128,13,128,13,128,13,128,13,128,13,128,13,128,13, + 128,2,3,3,6,2,6,192,192,192,5,6,6,7,1,251, + 96,112,24,24,248,112,4,10,10,7,0,8,48,48,240,240, + 48,48,48,48,48,48,7,12,12,9,1,7,56,108,198,198, + 198,198,198,108,56,0,254,254,9,8,16,14,3,3,204,0, + 102,0,51,0,25,128,25,128,51,0,102,0,204,0,18,18, + 54,19,1,0,48,24,0,48,24,0,240,48,0,240,48,0, + 48,96,0,48,96,0,48,192,0,48,192,0,49,131,0,49, + 135,0,3,15,0,3,15,0,6,27,0,6,51,0,12,127, + 192,12,127,192,24,3,0,24,3,0,18,18,54,19,1,0, + 48,24,0,48,24,0,240,48,0,240,48,0,48,96,0,48, + 96,0,48,192,0,48,192,0,49,135,128,49,143,192,3,24, + 192,3,0,192,6,1,128,6,3,0,12,6,0,12,12,0, + 24,31,192,24,31,192,19,18,54,19,0,0,124,12,0,254, + 12,0,198,24,0,6,24,0,60,48,0,60,48,0,6,96, + 0,198,96,0,254,193,128,124,195,128,1,135,128,1,135,128, + 3,13,128,3,25,128,6,63,224,6,63,224,12,1,128,12, + 1,128,10,19,38,12,1,251,12,0,12,0,12,0,0,0, + 0,0,12,0,12,0,12,0,12,0,24,0,56,0,112,0, + 96,0,224,192,192,192,193,192,227,128,127,128,62,0,15,24, + 48,17,1,0,12,0,6,0,3,0,1,128,0,0,3,128, + 3,128,6,192,6,192,12,64,12,96,12,96,24,48,24,48, + 24,48,48,24,63,248,63,248,96,12,96,12,96,12,192,6, + 192,6,192,6,15,24,48,17,1,0,0,96,0,192,1,128, + 3,0,0,0,3,128,3,128,6,192,6,192,12,64,12,96, + 12,96,24,48,24,48,24,48,48,24,63,248,63,248,96,12, + 96,12,96,12,192,6,192,6,192,6,15,24,48,17,1,0, + 1,128,3,192,6,96,12,48,0,0,3,128,3,128,6,192, + 6,192,12,64,12,96,12,96,24,48,24,48,24,48,48,24, + 63,248,63,248,96,12,96,12,96,12,192,6,192,6,192,6, + 15,23,46,17,1,0,7,16,13,176,8,224,0,0,3,128, + 3,128,6,192,6,192,12,64,12,96,12,96,24,48,24,48, + 24,48,48,24,63,248,63,248,96,12,96,12,96,12,192,6, + 192,6,192,6,15,23,46,17,1,0,12,96,12,96,0,0, + 0,0,3,128,3,128,6,192,6,192,12,64,12,96,12,96, + 24,48,24,48,24,48,48,24,63,248,63,248,96,12,96,12, + 96,12,192,6,192,6,192,6,15,24,48,17,1,0,3,128, + 4,64,4,64,3,128,0,0,3,128,3,128,6,192,6,192, + 12,64,12,96,12,96,24,48,24,48,24,48,48,24,63,248, + 63,248,96,12,96,12,96,12,192,6,192,6,192,6,21,19, + 57,23,1,0,3,255,248,3,255,248,6,96,0,6,96,0, + 12,96,0,12,96,0,12,96,0,24,96,0,24,127,248,24, + 127,248,48,96,0,63,224,0,63,224,0,96,96,0,96,96, + 0,96,96,0,192,96,0,192,127,248,192,127,248,15,24,48, + 18,1,251,7,224,31,248,60,60,112,14,96,6,224,6,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,224,6,96, + 6,112,14,60,60,31,248,7,224,1,128,0,192,0,192,7, + 192,3,128,12,24,48,16,2,0,48,0,24,0,12,0,6, + 0,0,0,255,240,255,240,192,0,192,0,192,0,192,0,192, + 0,192,0,255,224,255,224,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,255,240,255,240,12,24,48,16,2,0,1, + 128,3,0,6,0,12,0,0,0,255,240,255,240,192,0,192, + 0,192,0,192,0,192,0,192,0,255,224,255,224,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,255,240,255,240,12, + 24,48,16,2,0,6,0,15,0,25,128,48,192,0,0,255, + 240,255,240,192,0,192,0,192,0,192,0,192,0,192,0,255, + 224,255,224,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,255,240,255,240,12,23,46,16,2,0,24,192,24,192,0, + 0,0,0,255,240,255,240,192,0,192,0,192,0,192,0,192, + 0,192,0,255,224,255,224,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,255,240,255,240,5,24,24,8,1,0,192, + 96,48,24,0,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,5,24,24,8,2,0,24,48,96, + 192,0,96,96,96,96,96,96,96,96,96,96,96,96,96,96, + 96,96,96,96,96,8,24,24,8,0,0,24,60,102,195,0, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,6,23,23,8,1,0,204,204,0,0,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 18,19,57,18,255,0,31,248,0,31,254,0,24,15,0,24, + 3,128,24,1,128,24,1,192,24,0,192,24,0,192,255,128, + 192,255,128,192,24,0,192,24,0,192,24,0,192,24,1,192, + 24,1,128,24,3,128,24,15,0,31,254,0,31,248,0,14, + 23,46,18,2,0,14,32,27,96,17,192,0,0,224,12,240, + 12,240,12,216,12,220,12,204,12,206,12,198,12,199,12,195, + 12,195,140,193,140,193,204,192,204,192,236,192,108,192,60,192, + 60,192,28,16,24,48,18,1,0,12,0,6,0,3,0,1, + 128,0,0,7,224,31,248,60,60,112,14,96,6,224,7,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,224,7,96, + 6,112,14,60,60,31,248,7,224,16,24,48,18,1,0,0, + 48,0,96,0,192,1,128,0,0,7,224,31,248,60,60,112, + 14,96,6,224,7,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,224,7,96,6,112,14,60,60,31,248,7,224,16, + 24,48,18,1,0,0,192,1,224,3,48,6,24,0,0,7, + 224,31,248,60,60,112,14,96,6,224,7,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,224,7,96,6,112,14,60, + 60,31,248,7,224,16,23,46,18,1,0,3,136,6,216,4, + 112,0,0,7,224,31,248,60,60,112,14,96,6,224,7,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,224,7,96, + 6,112,14,60,60,31,248,7,224,16,23,46,18,1,0,6, + 48,6,48,0,0,0,0,7,224,31,248,60,60,112,14,96, + 6,224,7,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,224,7,96,6,112,14,60,60,31,248,7,224,13,12,24, + 14,0,1,192,24,96,48,48,96,24,192,13,128,7,0,7, + 0,13,128,24,192,48,96,96,48,192,24,18,19,57,18,0, + 0,3,240,192,15,253,192,30,31,128,56,7,0,48,15,0, + 112,29,128,96,57,128,96,113,128,96,225,128,97,193,128,99, + 129,128,103,1,128,110,1,128,124,3,128,56,3,0,56,7, + 0,126,30,0,239,252,0,195,240,0,14,24,48,18,2,0, + 24,0,12,0,6,0,3,0,0,0,192,12,192,12,192,12, + 192,12,192,12,192,12,192,12,192,12,192,12,192,12,192,12, + 192,12,192,12,192,12,192,12,96,24,112,56,63,240,15,192, + 14,24,48,18,2,0,0,96,0,192,1,128,3,0,0,0, + 192,12,192,12,192,12,192,12,192,12,192,12,192,12,192,12, + 192,12,192,12,192,12,192,12,192,12,192,12,192,12,96,24, + 112,56,63,240,15,192,14,24,48,18,2,0,3,0,7,128, + 12,192,24,96,0,0,192,12,192,12,192,12,192,12,192,12, + 192,12,192,12,192,12,192,12,192,12,192,12,192,12,192,12, + 192,12,192,12,96,24,112,56,63,240,15,192,14,23,46,18, + 2,0,24,192,24,192,0,0,0,0,192,12,192,12,192,12, + 192,12,192,12,192,12,192,12,192,12,192,12,192,12,192,12, + 192,12,192,12,192,12,192,12,96,24,112,56,63,240,15,192, + 14,24,48,16,1,0,0,96,0,192,1,128,3,0,0,0, + 192,12,224,28,96,24,112,56,48,48,56,112,24,96,28,224, + 12,192,15,192,7,128,7,128,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,13,19,38,16,2,0,192,0,192,0, + 192,0,192,0,255,224,255,240,192,48,192,24,192,24,192,24, + 192,24,192,48,255,240,255,224,192,0,192,0,192,0,192,0, + 192,0,10,19,38,15,3,0,28,0,127,0,227,0,193,128, + 193,128,193,128,195,0,199,0,206,0,207,0,195,128,193,128, + 192,192,192,192,192,192,193,128,195,128,207,0,206,0,11,19, + 38,13,1,0,24,0,12,0,6,0,3,0,0,0,31,0, + 63,128,97,192,96,192,0,192,7,192,63,192,120,192,224,192, + 192,192,193,192,227,192,126,224,60,96,11,19,38,13,1,0, + 1,128,3,0,6,0,12,0,0,0,31,0,63,128,97,192, + 96,192,0,192,7,192,63,192,120,192,224,192,192,192,193,192, + 227,192,126,224,60,96,11,19,38,13,1,0,12,0,30,0, + 51,0,97,128,0,0,31,0,63,128,97,192,96,192,0,192, + 7,192,63,192,120,192,224,192,192,192,193,192,227,192,126,224, + 60,96,11,18,36,13,1,0,28,64,54,192,35,128,0,0, + 31,0,63,128,97,192,96,192,0,192,7,192,63,192,120,192, + 224,192,192,192,193,192,227,192,126,224,60,96,11,18,36,13, + 1,0,51,0,51,0,0,0,0,0,31,0,63,128,97,192, + 96,192,0,192,7,192,63,192,120,192,224,192,192,192,193,192, + 227,192,126,224,60,96,11,19,38,13,1,0,6,0,9,0, + 9,0,6,0,0,0,31,0,63,128,97,192,96,192,0,192, + 7,192,63,192,120,192,224,192,192,192,193,192,227,192,126,224, + 60,96,19,14,42,21,1,0,31,14,0,63,191,128,97,241, + 192,96,224,192,0,192,96,7,192,96,63,255,224,120,255,224, + 224,192,0,192,192,0,193,224,96,227,240,224,126,63,192,60, + 15,0,10,19,38,12,1,251,31,0,63,128,113,192,96,192, + 224,0,192,0,192,0,192,0,192,0,224,0,96,192,113,192, + 63,128,31,0,12,0,6,0,6,0,62,0,28,0,11,19, + 38,13,1,0,24,0,12,0,6,0,3,0,0,0,14,0, + 63,128,113,192,96,192,192,96,192,96,255,224,255,224,192,0, + 192,0,96,96,112,224,63,192,15,0,11,19,38,13,1,0, + 3,0,6,0,12,0,24,0,0,0,14,0,63,128,113,192, + 96,192,192,96,192,96,255,224,255,224,192,0,192,0,96,96, + 112,224,63,192,15,0,11,19,38,13,1,0,12,0,30,0, + 51,0,97,128,0,0,14,0,63,128,113,192,96,192,192,96, + 192,96,255,224,255,224,192,0,192,0,96,96,112,224,63,192, + 15,0,11,18,36,13,1,0,51,0,51,0,0,0,0,0, + 14,0,63,128,113,192,96,192,192,96,192,96,255,224,255,224, + 192,0,192,0,96,96,112,224,63,192,15,0,5,19,19,6, + 0,0,192,96,48,24,0,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,5,19,19,6,1,0,24,48,96,192,0, + 96,96,96,96,96,96,96,96,96,96,96,96,96,96,8,19, + 19,6,255,0,24,60,102,195,0,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,6,18,18,6,0,0,204,204,0, + 0,48,48,48,48,48,48,48,48,48,48,48,48,48,48,11, + 19,38,13,1,0,96,0,57,128,14,0,30,0,99,0,31, + 128,63,128,113,192,96,192,224,224,192,96,192,96,192,96,192, + 96,224,224,96,192,113,192,63,128,31,0,10,18,36,14,2, + 0,56,128,109,128,71,0,0,0,206,0,223,128,241,128,224, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,11,19,38,13,1,0,24,0,12,0,6, + 0,3,0,0,0,31,0,63,128,113,192,96,192,224,224,192, + 96,192,96,192,96,192,96,224,224,96,192,113,192,63,128,31, + 0,11,19,38,13,1,0,3,0,6,0,12,0,24,0,0, + 0,31,0,63,128,113,192,96,192,224,224,192,96,192,96,192, + 96,192,96,224,224,96,192,113,192,63,128,31,0,11,19,38, + 13,1,0,12,0,30,0,51,0,97,128,0,0,31,0,63, + 128,113,192,96,192,224,224,192,96,192,96,192,96,192,96,224, + 224,96,192,113,192,63,128,31,0,11,18,36,13,1,0,28, + 64,54,192,35,128,0,0,31,0,63,128,113,192,96,192,224, + 224,192,96,192,96,192,96,192,96,224,224,96,192,113,192,63, + 128,31,0,11,18,36,13,1,0,51,0,51,0,0,0,0, + 0,31,0,63,128,113,192,96,192,224,224,192,96,192,96,192, + 96,192,96,224,224,96,192,113,192,63,128,31,0,12,12,24, + 14,1,1,6,0,6,0,6,0,0,0,0,0,255,240,255, + 240,0,0,0,0,6,0,6,0,6,0,13,14,28,13,0, + 0,15,152,31,248,56,112,48,224,113,240,99,176,99,48,102, + 48,108,48,124,112,56,96,112,224,255,192,207,128,10,19,38, + 14,2,0,48,0,24,0,12,0,6,0,0,0,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,193,192,99,192,126,192,28,192,10,19,38,14,2,0,3, + 0,6,0,12,0,24,0,0,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,193,192,99, + 192,126,192,28,192,10,19,38,14,2,0,12,0,30,0,51, + 0,97,128,0,0,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,193,192,99,192,126,192,28, + 192,10,18,36,14,2,0,51,0,51,0,0,0,0,0,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,193,192,99,192,126,192,28,192,12,24,48,13,0, + 251,0,192,1,128,3,0,6,0,0,0,192,48,192,48,96, + 48,112,96,48,96,56,224,24,192,24,192,13,128,13,128,7, + 128,7,0,3,0,3,0,6,0,6,0,12,0,60,0,56, + 0,11,24,48,14,2,251,192,0,192,0,192,0,192,0,192, + 0,207,0,223,128,241,192,224,192,192,224,192,96,192,96,192, + 96,192,96,192,224,224,192,241,192,223,128,207,0,192,0,192, + 0,192,0,192,0,192,0,12,23,46,13,0,251,25,128,25, + 128,0,0,0,0,192,48,192,48,96,48,112,96,48,96,56, + 224,24,192,24,192,13,128,13,128,7,128,7,0,3,0,3, + 0,6,0,6,0,12,0,60,0,56,0}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--25-180-100-100-P-130-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 19, '1' Height: 18 + Calculated Max Values w=22 h=24 x= 3 y=15 dx=25 dy= 0 ascent=20 len=69 + Font Bounding box w=28 h=37 x=-3 y=-8 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =19 descent=-5 + X Font ascent =19 descent=-5 + Max Font ascent =20 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR18r[3381] U8G_SECTION(".progmem.u8g_font_helvR18r") = { + 0,28,37,253,248,19,4,37,9,49,32,127,251,20,251,19, + 251,0,0,0,6,0,1,2,19,19,6,2,0,192,192,192, + 192,192,192,192,192,192,192,192,192,128,128,0,0,192,192,192, + 6,6,6,8,1,13,204,204,204,204,204,68,11,17,34,14, + 2,0,12,192,12,192,12,192,25,128,255,224,255,224,25,128, + 25,128,51,0,51,0,255,224,255,224,51,0,51,0,102,0, + 102,0,102,0,11,22,44,13,1,254,6,0,6,0,31,128, + 63,192,118,224,102,96,102,96,102,0,118,0,62,0,62,0, + 15,128,7,192,6,224,6,96,198,96,198,96,230,224,127,192, + 63,128,6,0,6,0,19,18,54,22,1,0,0,6,0,60, + 12,0,126,12,0,195,24,0,195,24,0,195,48,0,195,48, + 0,126,96,0,60,96,0,0,192,0,0,199,128,1,143,192, + 1,152,96,3,24,96,3,24,96,6,24,96,6,15,192,4, + 7,128,14,18,36,17,2,0,15,0,31,128,57,192,48,192, + 48,192,48,192,25,128,15,0,30,0,63,24,115,152,97,216, + 192,240,192,96,192,240,225,216,127,156,30,0,2,6,6,6, + 2,13,192,192,192,192,192,64,5,24,24,8,2,251,24,24, + 48,48,96,96,96,192,192,192,192,192,192,192,192,192,192,96, + 96,96,48,48,24,24,5,24,24,8,1,251,192,192,96,96, + 48,48,48,24,24,24,24,24,24,24,24,24,24,48,48,48, + 96,96,192,192,7,7,7,10,1,12,16,16,214,124,56,108, + 68,12,12,24,14,1,1,6,0,6,0,6,0,6,0,6, + 0,255,240,255,240,6,0,6,0,6,0,6,0,6,0,2, + 6,6,6,2,253,192,192,192,64,64,128,6,2,2,8,1, + 6,252,252,2,3,3,6,2,0,192,192,192,7,19,19,7, + 0,0,6,4,12,12,8,24,24,16,16,48,48,32,96,96, + 64,192,192,128,128,11,18,36,13,1,0,31,0,63,128,113, + 192,96,192,96,192,224,224,192,96,192,96,192,96,192,96,192, + 96,192,96,224,224,96,192,96,192,113,192,63,128,31,0,6, + 18,18,13,2,0,12,12,28,252,252,12,12,12,12,12,12, + 12,12,12,12,12,12,12,11,18,36,13,1,0,30,0,127, + 128,97,192,192,192,192,96,192,96,0,224,0,192,1,192,3, + 128,15,0,28,0,56,0,112,0,224,0,192,0,255,224,255, + 224,11,18,36,13,1,0,31,0,127,128,97,128,192,192,192, + 192,192,192,0,192,1,128,15,0,15,192,0,192,0,96,0, + 96,192,96,192,192,97,192,127,128,31,0,11,18,36,13,1, + 0,1,128,3,128,3,128,7,128,15,128,13,128,25,128,57, + 128,49,128,97,128,225,128,193,128,255,224,255,224,1,128,1, + 128,1,128,1,128,11,18,36,13,1,0,127,192,127,192,96, + 0,96,0,96,0,96,0,126,0,127,128,113,192,0,192,0, + 224,0,96,0,96,192,224,192,192,225,192,127,128,30,0,11, + 18,36,13,1,0,15,0,63,192,112,192,96,96,224,96,192, + 0,192,0,207,0,223,128,241,192,224,192,192,96,192,96,192, + 96,224,224,113,192,127,192,31,0,11,18,36,13,1,0,255, + 224,255,224,0,224,0,192,1,128,1,128,3,0,3,0,6, + 0,6,0,12,0,12,0,28,0,24,0,24,0,56,0,48, + 0,48,0,11,18,36,13,1,0,14,0,63,128,49,128,96, + 192,96,192,96,192,49,128,31,0,63,128,113,192,96,192,192, + 96,192,96,192,96,192,96,96,192,127,192,31,0,11,18,36, + 13,1,0,31,0,127,192,113,192,224,192,192,96,192,96,192, + 96,192,96,224,224,113,224,127,96,30,96,0,96,0,224,192, + 192,225,192,127,128,30,0,2,14,14,6,2,0,192,192,192, + 0,0,0,0,0,0,0,0,192,192,192,2,17,17,6,2, + 253,192,192,192,0,0,0,0,0,0,0,0,192,192,192,64, + 64,128,12,12,24,15,1,1,0,48,0,240,3,192,15,0, + 60,0,224,0,224,0,60,0,15,0,3,192,0,240,0,48, + 10,5,10,15,2,5,255,192,255,192,0,0,255,192,255,192, + 12,12,24,15,1,1,192,0,240,0,60,0,15,0,3,192, + 0,112,0,112,3,192,15,0,60,0,240,0,192,0,10,19, + 38,12,1,0,31,0,127,128,113,192,224,192,192,192,193,192, + 1,128,3,128,7,0,6,0,12,0,12,0,12,0,12,0, + 0,0,0,0,12,0,12,0,12,0,22,23,69,25,2,252, + 0,255,0,3,255,192,15,1,224,28,0,112,56,0,24,48, + 0,24,96,115,12,96,251,12,193,199,12,195,134,12,195,6, + 12,198,6,12,198,12,28,198,12,24,198,12,56,231,28,112, + 99,247,224,113,227,128,56,0,0,28,0,0,15,3,0,7, + 255,0,0,252,0,15,19,38,17,1,0,3,128,3,128,6, + 192,6,192,12,64,12,96,12,96,24,48,24,48,24,48,48, + 24,63,248,63,248,96,12,96,12,96,12,192,6,192,6,192, + 6,14,19,38,17,2,0,255,192,255,240,192,112,192,24,192, + 24,192,24,192,24,192,48,255,224,255,240,192,24,192,12,192, + 12,192,12,192,12,192,28,192,120,255,240,255,192,15,19,38, + 18,1,0,7,224,31,248,60,60,112,14,96,6,224,6,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,224,6,96, + 6,112,14,60,60,31,248,7,224,15,19,38,18,2,0,255, + 192,255,240,192,120,192,28,192,12,192,14,192,6,192,6,192, + 6,192,6,192,6,192,6,192,6,192,14,192,12,192,28,192, + 120,255,240,255,192,12,19,38,16,2,0,255,240,255,240,192, + 0,192,0,192,0,192,0,192,0,192,0,255,224,255,224,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,255,240,255, + 240,11,19,38,14,2,0,255,224,255,224,192,0,192,0,192, + 0,192,0,192,0,192,0,255,192,255,192,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,16,19,38, + 19,1,0,7,224,31,248,60,60,112,14,96,6,224,6,192, + 0,192,0,192,0,192,127,192,127,192,3,192,3,224,3,96, + 7,112,15,60,63,31,251,7,227,14,19,38,18,2,0,192, + 12,192,12,192,12,192,12,192,12,192,12,192,12,192,12,255, + 252,255,252,192,12,192,12,192,12,192,12,192,12,192,12,192, + 12,192,12,192,12,2,19,19,8,3,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,10,19, + 38,13,1,0,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,192,192,192,192, + 192,192,192,192,97,128,127,128,63,0,13,19,38,18,3,0, + 192,56,192,112,192,224,193,192,195,128,199,0,206,0,220,0, + 252,0,254,0,231,0,195,128,193,128,193,192,192,224,192,96, + 192,112,192,56,192,24,11,19,38,14,2,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,255,224, + 255,224,17,19,57,21,2,0,192,1,128,224,3,128,224,3, + 128,240,7,128,240,7,128,216,13,128,216,13,128,216,13,128, + 204,25,128,204,25,128,204,25,128,198,49,128,198,49,128,198, + 49,128,195,97,128,195,97,128,195,97,128,193,193,128,193,193, + 128,14,19,38,18,2,0,224,12,240,12,240,12,216,12,220, + 12,204,12,206,12,198,12,199,12,195,12,195,140,193,140,193, + 204,192,204,192,236,192,108,192,60,192,60,192,28,16,19,38, + 18,1,0,7,224,31,248,60,60,112,14,96,6,224,7,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,224,7,96, + 6,112,14,60,60,31,248,7,224,13,19,38,16,2,0,255, + 224,255,240,192,48,192,24,192,24,192,24,192,24,192,48,255, + 240,255,224,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,16,19,38,18,1,0,7,224,31,248,60, + 60,112,14,96,6,224,7,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,224,7,96,230,112,126,60,28,31,254,7, + 231,13,19,38,17,2,0,255,224,255,240,192,48,192,24,192, + 24,192,24,192,24,192,48,255,240,255,224,192,112,192,48,192, + 24,192,24,192,24,192,24,192,24,192,24,192,24,13,19,38, + 16,2,0,15,128,63,224,96,96,192,48,192,48,192,0,224, + 0,124,0,63,128,7,224,0,240,0,56,0,24,0,24,192, + 24,192,56,240,112,127,224,31,128,14,19,38,16,1,0,255, + 252,255,252,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,14,19,38,18,2,0,192,12,192,12,192, + 12,192,12,192,12,192,12,192,12,192,12,192,12,192,12,192, + 12,192,12,192,12,192,12,192,12,96,24,112,56,63,240,15, + 192,15,19,38,17,1,0,192,6,192,6,224,14,96,12,112, + 28,48,24,48,24,56,56,24,48,24,48,28,112,12,96,12, + 96,14,224,6,192,6,192,3,128,3,128,3,128,20,19,57, + 22,1,0,192,96,48,192,96,48,192,96,48,192,240,48,96, + 240,96,97,152,96,97,152,96,97,152,96,97,152,96,49,152, + 192,51,12,192,51,12,192,51,12,192,27,13,128,27,13,128, + 30,7,128,14,7,0,12,3,0,12,3,0,15,19,38,17, + 1,0,192,6,224,14,112,28,48,24,24,48,28,112,14,224, + 7,192,3,128,3,128,7,192,14,224,12,96,28,112,56,56, + 48,24,96,12,224,14,192,6,14,19,38,16,1,0,192,12, + 224,28,96,24,112,56,48,48,56,112,24,96,28,224,12,192, + 15,192,7,128,7,128,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,13,19,38,15,1,0,255,248,255,248,0,56, + 0,112,0,224,1,192,1,192,3,128,7,0,7,0,14,0, + 28,0,28,0,56,0,112,0,112,0,224,0,255,248,255,248, + 4,24,24,7,2,251,240,240,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,240,240,8,19, + 19,7,0,0,192,64,64,96,32,32,48,16,16,16,24,8, + 8,12,4,4,6,2,3,4,24,24,7,1,251,240,240,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,240,240,10,9,18,12,1,10,12,0,12,0,30, + 0,18,0,51,0,97,128,97,128,192,192,192,192,14,2,4, + 14,0,251,255,252,255,252,5,4,4,7,1,15,192,96,48, + 24,11,14,28,13,1,0,31,0,63,128,97,192,96,192,0, + 192,7,192,63,192,120,192,224,192,192,192,193,192,227,192,126, + 224,60,96,11,19,38,14,2,0,192,0,192,0,192,0,192, + 0,192,0,207,0,223,128,241,192,224,192,192,224,192,96,192, + 96,192,96,192,96,192,224,224,192,241,192,223,128,207,0,10, + 14,28,12,1,0,31,0,63,128,113,192,96,192,224,0,192, + 0,192,0,192,0,192,0,224,0,96,192,113,192,63,128,31, + 0,11,19,38,14,1,0,0,96,0,96,0,96,0,96,0, + 96,30,96,63,96,113,224,96,224,224,96,192,96,192,96,192, + 96,192,96,224,96,96,224,113,224,63,96,30,96,11,14,28, + 13,1,0,14,0,63,128,113,192,96,192,192,96,192,96,255, + 224,255,224,192,0,192,0,96,96,112,224,63,192,15,0,6, + 19,19,8,1,0,28,60,48,48,48,252,252,48,48,48,48, + 48,48,48,48,48,48,48,48,11,19,38,14,1,251,30,96, + 63,96,113,224,96,224,224,96,192,96,192,96,192,96,192,96, + 224,96,96,224,113,224,63,96,30,96,0,96,192,96,224,192, + 127,192,31,0,10,19,38,13,2,0,192,0,192,0,192,0, + 192,0,192,0,206,0,223,128,241,128,224,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 2,19,19,6,2,0,192,192,192,0,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,4,24,24,6,0,251,48, + 48,48,0,0,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,240,224,10,19,38,12,2,0,192,0,192, + 0,192,0,192,0,192,0,193,128,195,128,199,0,206,0,220, + 0,248,0,252,0,206,0,198,0,199,0,195,128,193,128,193, + 192,192,192,2,19,19,6,2,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,16,14,28,20, + 2,0,206,60,255,126,227,199,193,131,193,131,193,131,193,131, + 193,131,193,131,193,131,193,131,193,131,193,131,193,131,10,14, + 28,14,2,0,206,0,223,128,241,128,224,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 11,14,28,13,1,0,31,0,63,128,113,192,96,192,224,224, + 192,96,192,96,192,96,192,96,224,224,96,192,113,192,63,128, + 31,0,11,19,38,14,2,251,207,0,223,128,241,192,224,192, + 192,224,192,96,192,96,192,96,192,96,192,224,224,192,241,192, + 223,128,207,0,192,0,192,0,192,0,192,0,192,0,11,19, + 38,14,1,251,30,96,63,96,113,224,96,224,224,96,192,96, + 192,96,192,96,192,96,224,96,96,224,113,224,63,96,30,96, + 0,96,0,96,0,96,0,96,0,96,6,14,14,9,2,0, + 204,220,248,240,224,192,192,192,192,192,192,192,192,192,10,14, + 28,12,1,0,63,0,127,128,225,192,192,192,192,0,248,0, + 127,0,15,128,1,192,192,192,192,192,225,192,127,128,63,0, + 6,18,18,8,1,0,48,48,48,48,252,252,48,48,48,48, + 48,48,48,48,48,48,60,28,10,14,28,14,2,0,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,193,192,99,192,126,192,28,192,11,14,28,13,1,0, + 192,96,192,96,192,96,96,192,96,192,113,192,49,128,49,128, + 27,0,27,0,27,0,14,0,14,0,14,0,18,14,42,18, + 0,0,192,192,192,192,192,192,97,225,128,97,225,128,97,225, + 128,49,35,0,51,51,0,51,51,0,27,54,0,26,22,0, + 30,30,0,14,28,0,12,12,0,12,12,0,10,14,28,12, + 1,0,192,192,225,192,97,128,51,0,30,0,30,0,12,0, + 30,0,30,0,51,0,115,128,97,128,192,192,192,192,12,19, + 38,13,0,251,192,48,192,48,96,48,112,96,48,96,56,224, + 24,192,24,192,13,128,13,128,7,128,7,0,3,0,3,0, + 6,0,6,0,12,0,60,0,56,0,10,14,28,12,1,0, + 255,192,255,192,1,128,3,0,7,0,14,0,12,0,28,0, + 56,0,48,0,96,0,224,0,255,192,255,192,6,24,24,8, + 1,251,12,24,48,48,48,48,48,48,48,48,96,192,192,96, + 48,48,48,48,48,48,48,48,24,12,1,24,24,6,2,251, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,6,24,24,8,1,251,192,96, + 48,48,48,48,48,48,48,48,24,12,12,24,48,48,48,48, + 48,48,48,48,96,192,10,4,8,14,2,5,112,192,252,192, + 207,192,195,128,255}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--34-240-100-100-P-176-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=29 h=32 x= 4 y=22 dx=34 dy= 0 ascent=31 len=120 + Font Bounding box w=39 h=48 x=-5 y=-11 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =31 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR24[10931] U8G_SECTION(".progmem.u8g_font_helvR24") = { + 0,39,48,251,245,25,5,215,14,105,32,255,249,31,249,25, + 249,0,0,0,9,0,1,3,25,25,9,4,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,64,64, + 0,0,224,224,224,224,8,8,8,12,2,15,231,231,231,231, + 231,231,66,66,17,23,69,19,1,0,3,135,0,3,135,0, + 3,6,0,3,6,0,7,14,0,7,14,0,127,255,128,127, + 255,128,127,255,128,14,28,0,14,28,0,12,24,0,28,56, + 0,28,56,0,255,255,0,255,255,0,255,255,0,56,112,0, + 56,112,0,48,96,0,48,96,0,112,224,0,112,224,0,16, + 31,62,18,1,252,1,128,1,128,1,128,15,240,31,248,61, + 188,113,142,113,142,225,142,225,128,225,128,113,128,125,128,63, + 192,31,240,7,252,1,254,1,158,1,143,1,135,225,135,225, + 135,113,142,113,142,61,188,63,248,15,240,1,128,1,128,1, + 128,1,128,26,24,96,29,1,0,0,0,48,0,31,0,112, + 0,127,128,96,0,115,192,224,0,224,192,192,0,192,225,192, + 0,192,225,128,0,192,227,128,0,224,195,0,0,115,199,0, + 0,127,134,0,0,31,14,0,0,0,12,0,0,0,28,62, + 0,0,24,127,128,0,56,243,128,0,48,193,192,0,113,192, + 192,0,97,192,192,0,225,192,192,0,192,193,192,1,192,227, + 128,1,128,127,128,3,128,62,0,18,23,69,22,2,0,7, + 192,0,15,224,0,30,112,0,60,56,0,56,56,0,56,56, + 0,60,112,0,30,240,0,15,224,0,7,192,0,15,128,0, + 63,192,0,121,199,0,112,231,0,224,246,0,224,126,0,224, + 60,0,224,28,0,240,62,0,120,127,0,127,247,128,63,227, + 192,15,0,0,3,8,8,6,2,15,224,224,224,224,224,224, + 224,64,7,31,31,11,2,249,6,12,12,24,24,56,48,112, + 112,112,96,224,224,224,224,224,224,224,224,224,96,112,112,112, + 48,56,24,24,12,12,6,7,31,31,11,1,249,192,96,96, + 48,48,56,24,28,28,28,12,14,14,14,14,14,14,14,14, + 12,12,28,28,24,24,56,48,112,96,96,192,10,11,22,13, + 1,15,12,0,12,0,76,128,237,192,127,128,63,0,30,0, + 63,0,115,128,225,192,64,128,17,16,48,19,1,1,1,192, + 0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,255,255,128,255,255,128,255,255,128,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,1,192,0,3,9, + 9,9,3,251,224,224,224,224,32,96,96,192,128,8,2,2, + 11,1,8,255,255,3,4,4,9,3,0,224,224,224,224,9, + 24,48,9,0,0,1,128,1,128,1,128,3,0,3,0,3, + 0,6,0,6,0,6,0,12,0,12,0,12,0,8,0,24, + 0,24,0,24,0,48,0,48,0,48,0,96,0,96,0,96, + 0,192,0,192,0,15,24,48,18,1,0,7,192,31,240,63, + 248,60,120,120,60,112,28,112,28,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,112,28,112, + 28,112,60,60,120,63,248,31,240,7,192,8,24,24,18,3, + 0,3,7,7,15,63,255,255,7,7,7,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,15,24,48,18,1,0,7, + 192,31,240,63,248,120,60,112,28,240,14,224,14,224,14,0, + 14,0,28,0,60,0,120,0,240,3,224,7,192,31,0,60, + 0,120,0,112,0,224,0,224,0,255,254,255,254,255,254,15, + 24,48,18,1,0,7,192,31,240,63,248,56,56,112,28,112, + 28,112,28,112,28,0,28,0,56,3,248,3,240,3,248,0, + 60,0,30,0,14,224,14,224,14,224,14,112,28,120,60,63, + 248,31,240,7,192,16,24,48,18,0,0,0,24,0,56,0, + 120,0,120,0,248,1,248,3,184,3,184,7,56,14,56,14, + 56,28,56,56,56,56,56,112,56,224,56,255,255,255,255,255, + 255,0,56,0,56,0,56,0,56,0,56,15,24,48,18,1, + 0,63,252,63,252,63,252,56,0,56,0,56,0,112,0,112, + 0,119,192,127,240,127,248,120,124,112,28,0,30,0,14,0, + 14,0,14,224,14,224,30,240,28,120,124,127,248,63,240,15, + 128,15,24,48,18,1,0,3,192,15,240,31,248,60,56,56, + 28,112,28,112,0,112,0,96,0,227,192,239,240,255,248,248, + 60,240,28,240,14,224,14,224,14,96,14,112,14,112,28,56, + 60,63,248,31,240,7,192,15,24,48,18,1,0,255,254,255, + 254,255,254,0,14,0,28,0,24,0,56,0,112,0,112,0, + 224,0,224,1,192,1,192,3,128,3,128,7,0,7,0,7, + 0,14,0,14,0,14,0,28,0,28,0,28,0,15,24,48, + 18,1,0,7,192,31,240,63,248,56,60,112,28,112,28,112, + 28,112,28,120,60,60,120,31,240,15,224,63,248,120,60,112, + 28,224,14,224,14,224,14,224,14,240,28,120,60,63,248,31, + 240,7,192,15,24,48,18,1,0,7,192,31,240,63,248,120, + 124,112,60,240,28,224,30,224,14,224,14,224,14,224,30,224, + 30,112,62,127,254,63,238,15,206,0,14,0,28,224,28,240, + 60,120,120,63,240,63,224,15,128,3,18,18,9,4,0,224, + 224,224,224,0,0,0,0,0,0,0,0,0,0,224,224,224, + 224,3,22,22,9,4,251,224,224,224,224,0,0,0,0,0, + 0,0,0,0,224,224,224,224,32,96,96,192,128,16,16,32, + 19,2,0,0,3,0,15,0,63,1,252,7,224,31,128,254, + 0,240,0,240,0,254,0,31,128,7,224,1,252,0,127,0, + 15,0,3,15,9,18,19,2,4,255,254,255,254,255,254,0, + 0,0,0,0,0,255,254,255,254,255,254,16,16,32,19,1, + 0,192,0,240,0,254,0,63,128,7,224,1,248,0,127,0, + 15,0,15,0,127,1,248,7,224,63,128,254,0,240,0,192, + 0,14,25,50,18,2,0,7,192,31,240,63,248,120,56,112, + 28,240,28,224,28,224,28,0,28,0,56,0,56,0,112,0, + 224,1,224,1,192,3,128,3,128,3,128,3,128,0,0,0, + 0,3,128,3,128,3,128,3,128,29,30,120,34,1,251,0, + 7,192,0,0,63,248,0,0,255,254,0,3,240,63,128,7, + 192,7,192,15,0,3,224,30,0,1,224,28,0,0,240,56, + 15,140,112,56,31,220,56,112,60,252,56,112,112,124,56,96, + 224,56,24,224,224,56,24,225,224,56,24,225,192,112,56,225, + 192,112,56,225,192,112,112,225,192,224,112,225,224,224,224,112, + 243,243,192,112,255,127,128,120,62,127,0,60,0,0,0,30, + 0,0,0,31,0,0,0,15,128,0,0,3,224,120,0,1, + 255,248,0,0,127,224,0,20,25,75,22,1,0,0,240,0, + 0,240,0,0,248,0,1,248,0,1,248,0,3,156,0,3, + 156,0,3,156,0,7,158,0,7,14,0,7,14,0,15,15, + 0,15,15,0,14,7,0,30,7,128,31,255,128,31,255,128, + 63,255,192,60,3,192,56,1,192,120,1,224,120,1,224,112, + 0,224,240,0,240,240,0,240,17,25,75,22,3,0,255,240, + 0,255,252,0,255,254,0,224,62,0,224,15,0,224,15,0, + 224,7,0,224,7,0,224,15,0,224,14,0,224,62,0,255, + 252,0,255,252,0,255,254,0,224,31,0,224,7,128,224,3, + 128,224,3,128,224,3,128,224,3,128,224,7,128,224,15,0, + 255,254,0,255,254,0,255,248,0,20,25,75,24,2,0,1, + 252,0,7,255,0,15,255,128,31,7,192,60,1,224,56,0, + 224,112,0,240,112,0,112,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,112,240,0,112,112,0,240,120,0,224,60,1,224,63,7, + 192,31,255,128,7,254,0,1,248,0,18,25,75,24,3,0, + 255,240,0,255,252,0,255,254,0,224,31,0,224,15,0,224, + 7,128,224,3,128,224,3,128,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,3,192,224,3,128,224,3,128,224,7,128,224,15,0,224, + 30,0,255,254,0,255,252,0,255,240,0,17,25,75,22,3, + 0,255,255,0,255,255,0,255,255,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,255,255,0,255,255,0,255,255,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,255,255,128,255,255,128,255,255,128,16,25,50,20, + 3,0,255,255,255,255,255,255,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,255,252,255,252,255,252,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,22,25,75,25,1,0,0,254,0,3,255,128, + 15,255,192,31,131,240,62,0,240,60,0,120,120,0,56,112, + 0,56,240,0,0,224,0,0,224,0,0,224,0,0,224,15, + 252,224,15,252,224,15,252,224,0,28,240,0,28,112,0,28, + 120,0,60,56,0,60,60,0,252,31,1,252,15,255,220,7, + 255,28,1,252,28,18,25,75,24,3,0,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255, + 255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,3,25,25,9,3,0,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,13,25,50,16,1,0,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,224,56,224,56,224, + 56,224,56,240,120,120,240,127,240,63,224,31,128,20,25,75, + 22,3,0,224,3,192,224,7,128,224,15,0,224,30,0,224, + 60,0,224,120,0,224,240,0,225,224,0,227,192,0,231,192, + 0,239,128,0,255,192,0,255,192,0,249,224,0,240,240,0, + 224,112,0,224,120,0,224,60,0,224,28,0,224,30,0,224, + 15,0,224,7,128,224,3,192,224,3,224,224,1,240,14,25, + 50,18,3,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 255,252,255,252,255,252,21,25,75,27,3,0,240,0,120,240, + 0,120,248,0,248,248,0,248,252,1,248,252,1,248,252,1, + 248,236,1,184,238,3,184,238,3,184,230,3,56,231,7,56, + 231,7,56,227,6,56,227,142,56,227,142,56,227,142,56,225, + 140,56,225,220,56,225,220,56,224,216,56,224,248,56,224,248, + 56,224,112,56,224,112,56,19,25,75,24,2,0,240,0,224, + 240,0,224,248,0,224,252,0,224,252,0,224,254,0,224,239, + 0,224,231,0,224,231,128,224,227,192,224,227,192,224,225,224, + 224,224,224,224,224,240,224,224,120,224,224,56,224,224,60,224, + 224,28,224,224,30,224,224,15,224,224,7,224,224,7,224,224, + 3,224,224,1,224,224,1,224,23,25,75,25,1,0,0,254, + 0,3,255,128,15,239,224,31,1,240,62,0,248,60,0,120, + 120,0,60,112,0,28,240,0,30,224,0,14,224,0,14,224, + 0,14,224,0,14,224,0,14,224,0,14,224,0,14,240,0, + 30,240,0,30,120,0,60,60,0,120,62,0,248,31,1,240, + 15,239,224,3,255,128,0,254,0,17,25,75,22,3,0,255, + 248,0,255,254,0,255,255,0,224,15,0,224,7,128,224,3, + 128,224,3,128,224,3,128,224,3,128,224,3,128,224,7,128, + 224,15,0,255,255,0,255,254,0,255,248,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,23,26,78,26,1,255, + 0,254,0,3,255,128,15,239,224,31,1,240,62,0,248,60, + 0,120,120,0,60,112,0,28,240,0,30,224,0,14,224,0, + 14,224,0,14,224,0,14,224,0,14,224,0,14,224,0,14, + 240,0,30,240,2,30,120,7,60,60,7,184,62,3,248,31, + 1,240,15,239,248,3,255,188,0,254,30,0,0,12,19,25, + 75,24,3,0,255,252,0,255,255,0,255,255,128,224,7,128, + 224,3,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 3,192,224,3,128,224,15,128,255,255,0,255,254,0,255,255, + 0,224,15,128,224,7,128,224,3,128,224,3,192,224,3,192, + 224,3,192,224,1,192,224,1,192,224,1,192,224,1,224,19, + 25,75,22,1,0,3,248,0,15,254,0,31,255,0,60,15, + 128,56,3,192,112,1,192,112,1,192,112,0,0,120,0,0, + 124,0,0,63,192,0,31,248,0,7,255,0,0,127,128,0, + 15,192,0,1,224,0,0,224,224,0,224,240,0,224,112,1, + 224,120,1,192,62,7,192,63,255,128,15,254,0,3,248,0, + 19,25,75,20,0,0,255,255,224,255,255,224,255,255,224,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,18,25,75,24,3,0,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 240,3,192,120,7,128,124,15,128,63,255,0,31,254,0,3, + 240,0,19,25,75,22,1,0,240,1,224,240,1,224,240,1, + 224,112,1,192,120,3,192,120,3,192,56,3,128,56,3,128, + 60,7,128,28,7,0,28,7,0,30,15,0,14,14,0,14, + 14,0,15,14,0,7,28,0,7,28,0,7,156,0,3,184, + 0,3,184,0,3,184,0,1,240,0,1,240,0,0,224,0, + 0,224,0,29,25,100,31,1,0,240,7,0,120,240,7,0, + 120,240,15,128,120,112,15,128,112,112,15,128,112,120,29,192, + 240,120,29,192,240,56,29,192,224,56,29,192,224,56,56,224, + 224,60,56,225,224,28,56,225,192,28,48,225,192,28,112,113, + 192,28,112,113,192,14,112,115,128,14,224,59,128,14,224,59, + 128,14,224,59,128,7,224,63,128,7,192,31,0,7,192,31, + 0,7,192,31,0,3,128,14,0,3,128,14,0,20,25,75, + 22,1,0,248,0,240,120,1,224,60,3,192,28,3,192,30, + 7,128,15,7,0,15,15,0,7,158,0,3,156,0,3,252, + 0,1,248,0,0,240,0,0,240,0,1,248,0,1,248,0, + 3,156,0,7,158,0,7,14,0,15,15,0,30,7,128,30, + 7,128,60,3,192,120,1,224,120,1,224,240,0,240,21,25, + 75,22,0,0,240,0,120,120,0,240,120,0,224,60,1,224, + 28,1,192,30,3,192,14,7,128,15,7,128,7,143,0,3, + 142,0,3,222,0,1,220,0,1,252,0,0,248,0,0,248, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,18, + 25,75,20,1,0,127,255,192,127,255,192,127,255,192,0,7, + 128,0,15,128,0,15,0,0,30,0,0,60,0,0,60,0, + 0,120,0,0,240,0,1,224,0,1,224,0,3,192,0,7, + 128,0,7,128,0,15,0,0,30,0,0,60,0,0,60,0, + 0,120,0,0,240,0,0,255,255,192,255,255,192,255,255,192, + 6,32,32,9,2,249,252,252,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,252,252,9,24,48,9,0,0,192,0,192,0, + 96,0,96,0,96,0,48,0,48,0,48,0,16,0,24,0, + 24,0,24,0,12,0,12,0,12,0,6,0,6,0,6,0, + 2,0,3,0,3,0,3,0,1,128,1,128,6,32,32,9, + 1,249,252,252,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 252,252,12,13,26,16,1,11,6,0,15,0,15,0,31,128, + 25,128,25,128,57,192,48,192,112,224,96,96,96,96,224,112, + 192,48,18,2,6,18,0,250,255,255,192,255,255,192,6,5, + 5,11,1,20,224,240,112,56,28,16,18,36,18,1,0,15, + 224,63,248,60,120,112,60,112,28,0,28,0,60,1,252,31, + 252,126,28,120,28,240,28,224,28,224,60,224,124,121,254,127, + 223,63,143,15,25,50,18,2,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,227,224,239,240,255,248,248,60,240, + 28,240,30,224,14,224,14,224,14,224,14,224,14,224,14,240, + 30,240,28,252,60,255,248,239,240,231,224,14,18,36,16,1, + 0,7,192,31,240,63,248,56,60,112,28,112,28,224,0,224, + 0,224,0,224,0,224,0,224,28,224,28,112,28,120,56,63, + 248,31,240,7,192,15,25,50,18,1,0,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,7,206,31,238,63,254,124, + 62,112,30,240,30,224,14,224,14,224,14,224,14,224,14,224, + 14,240,30,240,30,120,62,127,254,63,238,15,206,15,18,36, + 18,2,0,7,192,31,240,63,248,120,60,112,28,240,14,224, + 14,224,14,255,254,255,254,224,0,224,0,240,14,112,30,120, + 60,63,248,31,240,7,192,8,25,25,9,1,0,15,31,60, + 56,56,56,56,255,255,255,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,15,25,50,18,1,249,7,206,31,238, + 63,254,124,62,112,30,240,30,224,14,224,14,224,14,224,14, + 224,14,224,14,240,30,112,62,120,62,63,254,31,238,7,142, + 0,14,224,14,224,28,240,28,124,120,63,248,31,224,14,25, + 50,18,2,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,227,224,239,240,255,248,248,60,240,28,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,3,25,25,7,2,0,224,224,224,224, + 0,0,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,6,32,32,7,255,249,28,28,28,28,0, + 0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,60,252,248,15,25,50,16,1, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 120,224,240,225,224,227,192,231,128,239,0,255,0,255,0,251, + 128,243,192,225,192,225,224,224,224,224,240,224,120,224,56,224, + 60,224,30,3,25,25,7,2,0,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,23,18,54,27,2,0,227,192,240,239,243,252,255,247, + 252,248,126,30,240,60,14,224,56,14,224,56,14,224,56,14, + 224,56,14,224,56,14,224,56,14,224,56,14,224,56,14,224, + 56,14,224,56,14,224,56,14,224,56,14,224,56,14,14,18, + 36,18,2,0,227,224,239,248,255,248,248,60,240,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,15,18,36,18,1,0,7,192, + 31,240,63,248,120,60,112,28,240,30,224,14,224,14,224,14, + 224,14,224,14,224,14,240,30,112,28,120,60,63,248,31,240, + 7,192,15,25,50,18,2,249,3,192,239,240,255,248,248,60, + 240,28,240,30,224,14,224,14,224,14,224,14,224,14,224,14, + 240,30,240,28,248,60,255,248,239,240,231,224,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,15,25,50,18,1,249, + 7,192,31,238,63,254,124,62,112,30,240,30,224,14,224,14, + 224,14,224,14,224,14,224,14,240,30,112,30,120,62,63,254, + 31,238,15,206,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,8,18,18,11,2,0,231,239,255,252,240,240,224,224, + 224,224,224,224,224,224,224,224,224,224,13,18,36,16,2,0, + 15,128,63,224,127,224,112,240,224,112,224,0,112,0,126,0, + 63,192,7,240,0,240,0,120,224,56,224,56,240,112,127,240, + 127,224,31,128,8,22,22,9,1,0,56,56,56,56,255,255, + 255,56,56,56,56,56,56,56,56,56,56,56,56,60,63,31, + 14,18,36,18,2,0,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,60,240,124,127,252,127,220,31,28,15,18,36,16,0,0, + 224,14,224,14,112,28,112,28,112,28,56,56,56,56,56,56, + 28,112,28,112,28,112,14,224,14,224,14,224,7,192,7,192, + 3,128,3,128,23,18,54,23,0,0,224,56,14,224,56,14, + 112,124,28,112,124,28,112,108,28,56,238,28,56,238,56,56, + 238,56,56,198,56,24,198,48,29,199,112,29,199,112,29,199, + 112,13,131,96,15,131,224,15,131,224,7,1,192,7,1,192, + 15,18,36,16,0,0,240,30,120,28,56,56,60,112,28,112, + 14,224,15,224,7,192,3,128,7,192,7,192,15,224,30,224, + 28,112,56,120,56,56,112,28,240,30,14,25,50,16,1,249, + 224,28,224,28,240,56,112,56,112,56,112,112,56,112,56,112, + 56,224,60,224,28,224,29,192,29,192,15,192,15,128,15,128, + 7,0,7,0,7,0,14,0,14,0,28,0,124,0,120,0, + 112,0,14,18,36,16,1,0,127,248,127,248,127,248,0,120, + 0,240,0,224,1,192,3,192,7,128,7,0,14,0,28,0, + 60,0,120,0,112,0,255,252,255,252,255,252,8,32,32,11, + 1,249,15,31,28,24,24,24,24,24,24,24,24,24,56,56, + 112,224,224,112,56,56,24,24,24,24,24,24,24,24,24,28, + 31,15,2,31,31,9,3,249,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,8,32,32,11,1,249,240,248,56, + 24,24,24,24,24,24,24,24,24,28,28,14,7,7,14,28, + 28,24,24,24,24,24,24,24,24,24,56,248,240,14,6,12, + 19,2,9,24,0,124,12,127,12,199,220,193,248,0,240,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 0,0,0,9,0,1,3,25,25,11,4,249,224,224,224,224, + 0,0,64,64,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,14,25,50,19,2,252,0,32,0,96,0, + 64,7,224,31,240,60,248,120,188,112,156,112,156,225,128,225, + 0,225,0,227,0,227,0,226,12,226,28,118,28,124,60,60, + 120,31,240,15,224,8,0,24,0,16,0,16,0,15,24,48, + 19,1,0,3,192,15,248,31,252,60,60,120,30,112,14,112, + 14,112,0,112,0,56,0,56,0,255,192,255,192,12,0,14, + 0,14,0,12,0,28,0,24,0,56,0,115,134,255,254,255, + 254,96,124,12,13,26,18,3,5,230,48,255,240,127,240,112, + 224,96,96,224,112,224,112,224,112,96,96,112,224,127,240,255, + 240,230,48,16,24,48,18,1,0,224,7,224,7,112,14,112, + 14,56,28,56,28,28,56,28,56,14,112,14,112,7,224,127, + 254,127,254,127,254,1,192,1,192,127,254,127,254,127,254,1, + 192,1,192,1,192,1,192,1,192,2,32,32,9,3,249,192, + 192,192,192,192,192,192,192,192,192,192,192,192,0,0,0,0, + 0,0,192,192,192,192,192,192,192,192,192,192,192,192,192,15, + 32,64,18,1,249,3,192,15,240,31,248,28,120,56,60,56, + 28,56,28,60,0,30,0,31,128,63,224,113,240,224,248,224, + 124,224,28,224,30,112,14,124,14,62,14,31,28,15,156,3, + 248,1,240,0,240,0,120,112,56,112,56,120,56,56,112,63, + 240,31,224,7,128,8,3,3,11,1,22,231,231,231,24,25, + 75,25,0,0,0,254,0,3,255,128,7,1,224,12,0,112, + 24,0,24,48,126,12,96,255,134,97,193,198,195,128,195,195, + 0,3,199,0,3,134,0,1,134,0,1,134,0,1,134,0, + 1,199,0,3,195,128,195,97,225,198,96,255,134,48,62,12, + 24,0,24,28,0,56,7,1,224,3,255,128,0,254,0,10, + 15,30,12,1,10,63,0,119,128,97,128,1,128,7,128,127, + 128,225,128,193,128,195,128,231,128,125,192,0,0,0,0,255, + 192,255,192,12,9,18,18,3,5,28,112,56,224,113,192,227, + 128,195,0,227,128,113,192,56,224,28,112,16,9,18,19,1, + 3,255,255,255,255,255,255,0,7,0,7,0,7,0,7,0, + 7,0,7,8,2,2,11,1,8,255,255,24,25,75,25,0, + 0,0,126,0,3,255,128,7,1,224,12,0,112,24,0,24, + 48,0,12,97,255,6,97,255,134,193,129,195,193,128,195,193, + 128,195,129,129,129,129,255,1,129,252,1,129,142,1,193,134, + 3,193,131,3,97,129,134,97,129,198,48,0,12,24,0,24, + 28,0,56,7,1,224,3,255,128,0,126,0,9,2,4,11, + 1,22,255,128,255,128,9,9,18,13,2,15,62,0,127,0, + 227,128,193,128,193,128,193,128,227,128,127,0,62,0,17,21, + 63,19,1,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,255,255,128,255,255,128,255, + 255,128,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + 0,1,192,0,0,0,0,0,0,0,255,255,128,255,255,128, + 255,255,128,9,15,30,11,1,9,30,0,127,0,99,0,193, + 128,193,128,1,128,3,0,7,0,30,0,56,0,112,0,224, + 0,192,0,255,128,255,128,9,15,30,11,1,9,62,0,127, + 0,227,128,193,128,193,128,3,128,15,0,15,0,3,128,1, + 128,193,128,193,128,227,128,127,0,62,0,7,5,5,11,3, + 22,30,60,56,112,224,14,24,48,19,2,250,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,60,240,124,255,252,255,220,255,28, + 224,0,224,0,224,0,224,0,224,0,224,0,16,30,60,17, + 1,251,7,255,31,255,63,140,63,140,127,140,127,140,255,140, + 255,140,255,140,255,140,127,140,127,140,63,140,63,140,31,140, + 3,140,1,140,1,140,1,140,1,140,1,140,1,140,1,140, + 1,140,1,140,1,140,1,140,1,140,1,140,1,140,4,4, + 4,9,3,11,96,240,240,96,7,7,7,11,2,249,24,24, + 60,14,6,206,124,5,15,15,11,2,9,24,56,248,248,24, + 24,24,24,24,24,24,24,24,24,24,10,15,30,12,1,10, + 30,0,127,128,97,128,225,192,192,192,192,192,192,192,192,192, + 225,192,97,128,127,128,30,0,0,0,255,192,255,192,12,9, + 18,18,3,5,227,128,113,192,56,224,28,112,12,48,28,112, + 56,224,113,192,227,128,25,25,100,28,1,0,0,0,48,0, + 24,0,112,0,56,0,96,0,248,0,224,0,248,1,192,0, + 24,1,128,0,24,3,128,0,24,3,0,0,24,7,0,0, + 24,14,0,0,24,12,0,0,24,28,6,0,24,24,14,0, + 24,56,30,0,24,112,62,0,24,96,118,0,0,224,102,0, + 1,192,198,0,1,129,198,0,3,131,134,0,3,3,255,128, + 7,3,255,128,6,0,6,0,14,0,6,0,12,0,6,0, + 25,25,100,28,1,0,0,0,96,0,24,0,224,0,56,0, + 192,0,248,1,128,0,248,3,128,0,24,3,0,0,24,6, + 0,0,24,14,0,0,24,12,0,0,24,28,0,0,24,24, + 0,0,24,56,60,0,24,48,255,0,24,112,195,128,24,97, + 129,128,24,193,129,128,1,192,3,128,1,128,7,0,3,128, + 14,0,3,0,60,0,6,0,112,0,14,0,224,0,12,1, + 192,0,28,1,255,128,24,1,255,128,25,24,96,28,1,0, + 62,0,14,0,127,0,12,0,99,128,24,0,193,128,56,0, + 193,128,48,0,3,128,96,0,15,0,224,0,15,128,192,0, + 1,193,128,0,0,195,128,0,192,195,6,0,192,199,14,0, + 97,206,30,0,127,140,62,0,30,24,118,0,0,56,102,0, + 0,48,198,0,0,97,198,0,0,227,134,0,1,195,255,128, + 1,131,255,128,3,0,6,0,7,0,6,0,6,0,6,0, + 14,25,50,19,3,249,3,128,3,128,3,128,3,128,0,0, + 0,0,3,128,3,128,3,128,7,128,7,0,15,0,30,0, + 60,0,120,0,112,0,240,0,224,28,224,28,224,28,240,60, + 120,120,127,240,63,224,7,128,20,31,93,22,1,0,3,192, + 0,1,224,0,0,224,0,0,112,0,0,56,0,0,0,0, + 0,240,0,0,240,0,0,240,0,1,248,0,1,248,0,3, + 252,0,3,156,0,3,156,0,7,158,0,7,14,0,7,14, + 0,15,15,0,14,15,0,14,7,0,30,7,128,31,255,128, + 31,255,128,63,255,192,60,3,192,56,1,192,120,1,224,120, + 1,224,112,0,224,240,0,240,240,0,240,20,31,93,22,1, + 0,0,60,0,0,120,0,0,112,0,0,224,0,1,192,0, + 0,0,0,0,240,0,0,240,0,0,240,0,1,248,0,1, + 248,0,3,252,0,3,156,0,3,156,0,7,158,0,7,14, + 0,7,14,0,15,15,0,15,15,0,14,7,0,30,7,128, + 31,255,128,31,255,128,63,255,192,60,3,192,120,1,192,120, + 1,224,120,1,224,112,0,224,240,0,240,240,0,240,20,31, + 93,22,1,0,0,64,0,0,224,0,1,240,0,3,184,0, + 7,28,0,0,0,0,0,240,0,0,240,0,0,240,0,1, + 248,0,1,248,0,3,252,0,3,156,0,3,156,0,7,158, + 0,7,14,0,7,14,0,15,15,0,15,15,0,14,7,0, + 30,7,128,31,255,128,31,255,128,63,255,192,60,3,192,56, + 1,192,120,1,224,120,1,224,112,0,224,240,0,240,240,0, + 240,20,30,90,22,1,0,1,198,0,3,254,0,7,252,0, + 6,56,0,0,0,0,0,240,0,0,240,0,0,240,0,1, + 248,0,1,248,0,3,252,0,3,156,0,3,156,0,7,158, + 0,7,14,0,7,14,0,15,15,0,15,15,0,14,7,0, + 30,7,128,31,255,128,31,255,128,63,255,192,60,3,192,56, + 1,192,120,1,224,120,1,224,112,0,224,240,0,240,240,0, + 240,20,30,90,22,1,0,3,156,0,3,156,0,3,156,0, + 0,0,0,0,0,0,0,240,0,0,240,0,0,240,0,1, + 248,0,1,248,0,3,252,0,3,156,0,3,156,0,7,158, + 0,7,14,0,7,14,0,15,15,0,15,15,0,14,7,0, + 30,7,128,31,255,128,31,255,128,63,255,192,60,3,192,56, + 1,192,120,1,224,120,1,224,112,0,224,240,0,240,240,0, + 240,20,31,93,22,1,0,0,240,0,1,152,0,1,8,0, + 1,8,0,1,152,0,0,240,0,0,0,0,0,240,0,0, + 240,0,1,248,0,1,248,0,3,252,0,3,156,0,3,156, + 0,7,158,0,7,14,0,7,14,0,15,15,0,14,15,0, + 14,7,0,30,7,128,31,255,128,31,255,128,63,255,192,60, + 3,192,56,1,192,120,1,224,120,1,224,112,0,224,240,0, + 240,240,0,240,29,25,100,32,1,0,0,127,255,248,0,127, + 255,248,0,255,255,248,0,227,128,0,1,195,128,0,1,195, + 128,0,3,195,128,0,3,131,128,0,3,131,128,0,7,131, + 128,0,7,3,128,0,7,3,255,240,15,3,255,240,14,3, + 255,240,30,3,128,0,31,255,128,0,31,255,128,0,63,255, + 128,0,56,3,128,0,120,3,128,0,120,3,128,0,112,3, + 128,0,240,3,255,248,224,3,255,248,224,3,255,248,20,32, + 96,23,2,249,1,248,0,7,254,0,15,255,128,31,7,128, + 60,3,192,120,1,224,112,0,224,112,0,224,240,0,0,240, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,240,0,112,240,0,112,112,0,240,112,0,224,120,1,224, + 60,3,192,31,7,192,15,255,128,7,254,0,1,248,0,0, + 96,0,0,96,0,0,240,0,0,56,0,0,24,0,3,56, + 0,1,240,0,17,31,93,22,3,0,15,0,0,7,128,0, + 3,128,0,1,192,0,0,224,0,0,0,0,255,255,0,255, + 255,0,255,255,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,0, + 255,255,0,255,255,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255, + 128,255,255,128,255,255,128,17,31,93,22,3,0,0,120,0, + 0,240,0,0,224,0,1,192,0,3,128,0,0,0,0,255, + 255,0,255,255,0,255,255,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 255,255,0,255,255,0,255,255,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,255,255,128,255,255,128,255,255,128,17,31,93,22,3,0, + 0,128,0,1,192,0,3,224,0,7,112,0,14,56,0,0, + 0,0,255,255,0,255,255,0,255,255,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,255,255,0,255,255,0,255,255,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,255,255,128,255,255,128,255,255,128,17,30,90, + 22,3,0,28,56,0,28,56,0,28,56,0,0,0,0,0, + 0,0,255,255,0,255,255,0,255,255,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,255,255,0,255,255,0,255,255,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,255,255,128,255,255,128,255,255,128,7,31,31, + 9,0,0,240,120,56,28,14,0,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,7,31,31,9,2,0,30,60,56,112,224,0,112,112, + 112,112,112,112,112,112,112,112,112,112,112,112,112,112,112,112, + 112,112,112,112,112,112,112,9,31,62,9,0,0,8,0,28, + 0,62,0,119,0,227,128,0,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,9,30,60,9,0, + 0,227,128,227,128,227,128,0,0,0,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,21,25,75, + 23,0,0,31,254,0,31,255,128,31,255,192,28,3,224,28, + 0,224,28,0,240,28,0,112,28,0,112,28,0,56,28,0, + 56,28,0,56,255,192,56,255,192,56,28,0,56,28,0,56, + 28,0,56,28,0,120,28,0,112,28,0,112,28,0,240,28, + 0,224,28,3,192,31,255,192,31,255,128,31,254,0,19,30, + 90,24,2,0,1,198,0,3,254,0,7,252,0,6,56,0, + 0,0,0,240,0,224,248,0,224,248,0,224,252,0,224,252, + 0,224,254,0,224,239,0,224,231,0,224,231,128,224,227,192, + 224,227,192,224,225,224,224,224,224,224,224,240,224,224,120,224, + 224,56,224,224,60,224,224,28,224,224,30,224,224,15,224,224, + 7,224,224,7,224,224,3,224,224,1,224,224,1,224,23,31, + 93,25,1,0,0,240,0,0,120,0,0,56,0,0,28,0, + 0,14,0,0,0,0,0,254,0,3,255,128,15,255,224,31, + 1,240,62,0,248,60,0,120,120,0,60,112,0,28,112,0, + 28,240,0,30,224,0,14,224,0,14,224,0,14,224,0,14, + 224,0,14,240,0,30,240,0,30,112,0,28,120,0,60,60, + 0,120,62,0,248,31,1,240,15,255,224,3,255,128,0,254, + 0,23,31,93,25,1,0,0,15,0,0,30,0,0,28,0, + 0,56,0,0,112,0,0,0,0,0,254,0,3,255,128,15, + 255,224,31,1,240,62,0,248,60,0,120,120,0,60,112,0, + 28,112,0,28,240,0,30,224,0,14,224,0,14,224,0,14, + 224,0,14,224,0,14,240,0,30,240,0,30,112,0,28,120, + 0,60,60,0,120,62,0,248,31,1,240,15,255,224,3,255, + 128,0,254,0,23,31,93,25,1,0,0,16,0,0,56,0, + 0,124,0,0,238,0,1,199,0,0,0,0,0,254,0,3, + 255,128,15,255,224,31,1,240,62,0,248,60,0,120,120,0, + 60,112,0,28,112,0,28,240,0,30,224,0,14,224,0,14, + 224,0,14,224,0,14,224,0,14,240,0,30,240,0,30,112, + 0,28,120,0,60,60,0,120,62,0,248,31,1,240,15,255, + 224,3,255,128,0,254,0,23,30,90,25,1,0,0,113,128, + 0,255,128,1,255,0,1,142,0,0,0,0,0,254,0,3, + 255,128,15,255,224,31,1,240,62,0,248,60,0,120,120,0, + 60,112,0,28,112,0,28,240,0,30,224,0,14,224,0,14, + 224,0,14,224,0,14,224,0,14,240,0,30,240,0,30,112, + 0,28,120,0,60,60,0,120,62,0,248,31,1,240,15,255, + 224,3,255,128,0,254,0,23,29,87,25,1,0,1,195,128, + 1,195,128,1,195,128,0,0,0,0,254,0,3,255,128,15, + 255,224,31,1,240,62,0,248,60,0,120,120,0,60,112,0, + 28,112,0,28,240,0,30,224,0,14,224,0,14,224,0,14, + 224,0,14,224,0,14,240,0,30,240,0,30,112,0,28,120, + 0,60,60,0,120,62,0,248,31,1,240,15,255,224,3,255, + 128,0,254,0,15,15,30,19,2,1,64,4,224,14,240,30, + 120,60,60,120,31,240,15,224,7,192,7,192,15,224,30,240, + 60,120,120,60,240,30,96,12,23,25,75,25,1,0,0,254, + 6,3,255,140,15,255,248,31,1,240,62,0,248,60,0,248, + 120,1,188,112,3,28,112,6,28,240,6,30,224,12,14,224, + 24,14,224,48,14,224,96,14,224,192,14,225,128,30,243,0, + 30,118,0,28,124,0,60,60,0,120,62,0,248,63,1,240, + 111,255,224,195,255,128,0,254,0,18,31,93,24,3,0,7, + 128,0,3,192,0,1,192,0,0,224,0,0,112,0,0,0, + 0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,240,3,192,120,7,128, + 124,15,128,63,255,0,31,254,0,3,240,0,18,31,93,24, + 3,0,0,120,0,0,240,0,0,224,0,1,192,0,3,128, + 0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,240,3,192, + 120,7,128,124,15,128,63,255,0,31,254,0,3,240,0,18, + 31,93,24,3,0,0,64,0,0,224,0,1,240,0,3,184, + 0,7,28,0,0,0,0,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 240,3,192,120,7,128,124,15,128,63,255,0,31,254,0,3, + 240,0,18,30,90,24,3,0,14,28,0,14,28,0,14,28, + 0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 240,3,192,120,7,128,124,15,128,63,255,0,31,254,0,3, + 240,0,19,31,93,22,1,0,0,60,0,0,120,0,0,112, + 0,0,224,0,1,192,0,0,0,0,224,0,224,240,1,224, + 112,1,192,120,3,192,56,3,128,60,7,128,28,15,0,30, + 15,0,15,30,0,7,28,0,7,188,0,3,184,0,3,248, + 0,1,240,0,1,240,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,17,25,75,22,3,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,255,248,0,255,254,0, + 255,255,0,224,15,0,224,7,0,224,7,128,224,3,128,224, + 3,128,224,7,128,224,7,0,224,15,0,255,254,0,255,252, + 0,255,248,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,14,25,50,20,4,0,15,128,63,224, + 127,240,120,240,240,120,224,56,224,56,224,56,224,120,224,240, + 227,224,227,224,227,240,224,120,224,60,224,28,224,28,224,28, + 224,28,224,28,224,56,224,120,231,240,231,224,231,128,16,25, + 50,18,1,0,15,0,7,128,3,128,1,192,0,224,0,0, + 0,0,15,224,63,248,60,124,112,28,112,28,0,28,0,28, + 0,252,31,252,127,156,120,28,240,28,224,28,224,60,224,124, + 121,252,127,223,63,143,16,25,50,18,1,0,0,240,1,224, + 1,192,3,128,7,0,0,0,0,0,15,224,63,248,60,124, + 112,28,112,28,0,28,0,28,0,252,31,252,127,156,120,28, + 240,28,224,28,224,60,224,124,120,252,127,223,63,143,16,25, + 50,18,1,0,1,0,3,128,7,192,14,224,28,112,0,0, + 0,0,15,224,63,248,60,124,112,28,112,28,0,28,0,28, + 0,252,31,252,127,156,120,28,240,28,224,28,224,60,224,124, + 120,252,127,223,63,143,16,24,48,18,1,0,7,24,15,248, + 31,240,24,224,0,0,0,0,15,224,63,248,60,124,112,28, + 112,28,0,28,0,28,0,252,31,252,127,156,120,28,240,28, + 224,28,224,60,224,124,120,252,127,223,63,143,16,23,46,18, + 1,0,14,112,14,112,14,112,0,0,0,0,15,224,63,248, + 60,252,112,28,112,28,0,28,0,28,0,252,31,252,127,156, + 120,28,240,28,224,28,224,60,224,124,121,252,127,223,63,143, + 16,25,50,18,1,0,3,128,6,192,4,64,4,64,6,192, + 3,128,0,0,15,224,63,248,60,124,112,28,112,28,0,28, + 0,28,0,252,31,252,127,156,120,28,240,28,224,28,224,60, + 224,124,120,252,127,223,63,143,26,18,72,29,1,0,7,192, + 248,0,31,241,254,0,60,127,143,0,112,62,3,128,112,30, + 3,128,0,28,1,192,0,28,1,192,0,252,1,192,15,255, + 255,192,63,255,255,192,126,31,255,192,240,28,0,0,224,28, + 1,192,224,30,1,192,224,126,3,128,248,247,143,0,127,231, + 255,0,63,129,252,0,14,25,50,17,1,249,7,192,31,240, + 63,248,56,56,112,28,112,28,224,0,224,0,224,0,224,0, + 224,0,224,28,224,28,112,56,120,120,63,240,31,224,7,128, + 3,0,3,0,7,128,1,192,0,192,25,192,15,128,15,25, + 50,18,1,0,30,0,15,0,7,0,3,128,1,192,0,0, + 0,0,7,192,31,240,62,120,120,28,112,28,240,14,224,14, + 224,14,255,254,255,254,224,0,224,0,224,14,112,14,120,28, + 60,124,31,240,15,224,15,25,50,18,1,0,1,224,3,192, + 3,128,7,0,14,0,0,0,0,0,7,192,31,240,60,120, + 120,28,112,28,240,14,224,14,224,14,255,254,255,254,224,0, + 224,0,224,14,112,14,120,28,60,124,31,240,15,224,15,25, + 50,18,1,0,1,0,3,128,7,192,14,224,28,112,0,0, + 0,0,7,192,31,240,60,120,120,28,112,28,240,14,224,14, + 224,14,255,254,255,254,224,0,224,0,224,14,112,14,120,28, + 60,124,31,240,7,192,15,23,46,18,1,0,28,112,28,112, + 28,112,0,0,0,0,7,192,31,240,60,120,120,28,112,28, + 240,14,224,14,224,14,255,254,255,254,224,0,224,0,224,14, + 112,14,120,28,60,124,31,240,7,192,7,25,25,9,0,0, + 240,120,56,28,14,0,0,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,7,25,25,9,2,0,30, + 60,56,112,224,0,0,112,112,112,112,112,112,112,112,112,112, + 112,112,112,112,112,112,112,112,9,25,50,9,0,0,8,0, + 28,0,62,0,119,0,227,128,0,0,0,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 8,23,23,9,1,0,231,231,231,0,0,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,15,25,50, + 19,1,0,120,64,60,224,31,192,15,128,31,128,59,192,17, + 224,7,240,31,248,63,248,120,60,112,28,112,28,224,14,224, + 14,224,14,224,14,224,14,224,14,112,28,112,28,120,60,63, + 248,31,240,7,192,14,24,48,18,2,0,14,48,31,240,63, + 224,49,192,0,0,0,0,3,192,239,240,255,248,248,60,240, + 28,240,28,224,28,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,224,28,224,28,15,25,50,19,1, + 0,30,0,15,0,7,0,3,128,1,192,0,0,0,0,7, + 192,31,240,63,248,120,60,112,28,112,28,224,14,224,14,224, + 14,224,14,224,14,224,14,112,28,112,28,120,60,63,248,31, + 240,7,192,15,25,50,19,1,0,1,224,3,192,3,128,7, + 0,14,0,0,0,0,0,7,192,31,240,63,248,120,60,112, + 28,112,28,224,14,224,14,224,14,224,14,224,14,224,14,112, + 28,112,28,120,60,63,248,31,240,7,192,15,25,50,19,1, + 0,1,0,3,128,7,192,14,224,28,112,0,0,0,0,7, + 192,31,240,63,248,120,60,112,28,112,28,224,14,224,14,224, + 14,224,14,224,14,224,14,112,28,112,28,120,60,63,248,31, + 240,7,192,15,24,48,19,1,0,14,48,31,240,63,224,49, + 192,0,0,0,0,7,192,31,240,63,248,120,60,112,28,112, + 28,224,14,224,14,224,14,224,14,224,14,224,14,112,28,112, + 28,120,60,63,248,31,240,7,192,15,23,46,19,1,0,28, + 112,28,112,28,112,0,0,0,0,7,192,31,240,63,248,120, + 60,112,28,112,28,224,14,224,14,224,14,224,14,224,14,224, + 14,112,28,112,28,120,60,63,248,31,240,7,192,15,15,30, + 19,2,1,3,128,3,128,3,128,0,0,0,0,0,0,255, + 254,255,254,255,254,0,0,0,0,0,0,3,128,3,128,3, + 128,16,18,36,19,2,0,7,195,31,246,63,252,120,120,112, + 28,112,60,224,110,224,206,225,142,227,14,230,14,236,14,120, + 28,112,28,56,60,127,248,223,240,135,192,14,25,50,19,2, + 0,30,0,15,0,7,0,3,128,1,192,0,0,0,0,224, + 28,224,28,224,28,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,224,60,224,60,240,252,127,252,63, + 220,15,0,14,25,50,19,2,0,1,224,3,192,3,128,7, + 0,14,0,0,0,0,0,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,224,28,224,28,224,28,224,28,224, + 60,224,60,240,252,127,252,63,220,15,0,14,25,50,19,2, + 0,1,0,3,128,7,192,14,224,28,112,0,0,0,0,224, + 28,224,28,224,28,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,224,60,224,60,240,252,127,252,63, + 220,15,0,14,23,46,19,2,0,28,224,28,224,28,224,0, + 0,0,0,224,28,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,224,28,224,28,224,60,224,60,240, + 252,127,252,63,220,15,0,14,32,64,17,1,249,0,240,1, + 224,1,192,3,128,7,0,0,0,0,0,224,28,224,28,224, + 60,112,56,112,56,112,56,120,112,56,112,56,240,60,224,28, + 224,29,192,29,192,15,192,15,128,15,128,7,0,7,0,7, + 0,14,0,14,0,30,0,124,0,124,0,112,0,15,31,62, + 19,2,250,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,231,224,239,240,255,248,248,60,240,28,240,30,224,14,224, + 14,224,14,224,14,224,14,224,14,240,28,240,28,248,60,255, + 248,239,240,227,192,224,0,224,0,224,0,224,0,224,0,224, + 0,14,30,60,17,1,249,28,112,28,112,28,112,0,0,0, + 0,224,28,224,28,224,60,112,56,112,56,112,120,120,112,56, + 112,56,240,60,224,28,224,29,192,29,192,15,192,15,128,15, + 128,7,0,7,0,7,0,14,0,14,0,30,0,124,0,124, + 0,112,0}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--34-240-100-100-P-176-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 24 + Calculated Max Values w=17 h=24 x= 3 y=15 dx=19 dy= 0 ascent=26 len=48 + Font Bounding box w=39 h=48 x=-5 y=-11 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =24 descent= 0 + X Font ascent =24 descent= 0 + Max Font ascent =26 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR24n[702] U8G_SECTION(".progmem.u8g_font_helvR24n") = { + 0,39,48,251,245,24,0,0,0,0,42,57,0,26,251,24, + 0,10,11,22,13,1,15,12,0,12,0,76,128,237,192,127, + 128,63,0,30,0,63,0,115,128,225,192,64,128,17,16,48, + 19,1,1,1,192,0,1,192,0,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,255,255,128,255,255,128,255,255, + 128,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,3,9,9,9,3,251,224,224,224,224,32,96,96, + 192,128,8,2,2,11,1,8,255,255,3,4,4,9,3,0, + 224,224,224,224,9,24,48,9,0,0,1,128,1,128,1,128, + 3,0,3,0,3,0,6,0,6,0,6,0,12,0,12,0, + 12,0,8,0,24,0,24,0,24,0,48,0,48,0,48,0, + 96,0,96,0,96,0,192,0,192,0,15,24,48,18,1,0, + 7,192,31,240,63,248,60,120,120,60,112,28,112,28,224,14, + 224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14, + 224,14,112,28,112,28,112,60,60,120,63,248,31,240,7,192, + 8,24,24,18,3,0,3,7,7,15,63,255,255,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,15,24, + 48,18,1,0,7,192,31,240,63,248,120,60,112,28,240,14, + 224,14,224,14,0,14,0,28,0,60,0,120,0,240,3,224, + 7,192,31,0,60,0,120,0,112,0,224,0,224,0,255,254, + 255,254,255,254,15,24,48,18,1,0,7,192,31,240,63,248, + 56,56,112,28,112,28,112,28,112,28,0,28,0,56,3,248, + 3,240,3,248,0,60,0,30,0,14,224,14,224,14,224,14, + 112,28,120,60,63,248,31,240,7,192,16,24,48,18,0,0, + 0,24,0,56,0,120,0,120,0,248,1,248,3,184,3,184, + 7,56,14,56,14,56,28,56,56,56,56,56,112,56,224,56, + 255,255,255,255,255,255,0,56,0,56,0,56,0,56,0,56, + 15,24,48,18,1,0,63,252,63,252,63,252,56,0,56,0, + 56,0,112,0,112,0,119,192,127,240,127,248,120,124,112,28, + 0,30,0,14,0,14,0,14,224,14,224,30,240,28,120,124, + 127,248,63,240,15,128,15,24,48,18,1,0,3,192,15,240, + 31,248,60,56,56,28,112,28,112,0,112,0,96,0,227,192, + 239,240,255,248,248,60,240,28,240,14,224,14,224,14,96,14, + 112,14,112,28,56,60,63,248,31,240,7,192,15,24,48,18, + 1,0,255,254,255,254,255,254,0,14,0,28,0,24,0,56, + 0,112,0,112,0,224,0,224,1,192,1,192,3,128,3,128, + 7,0,7,0,7,0,14,0,14,0,14,0,28,0,28,0, + 28,0,15,24,48,18,1,0,7,192,31,240,63,248,56,60, + 112,28,112,28,112,28,112,28,120,60,60,120,31,240,15,224, + 63,248,120,60,112,28,224,14,224,14,224,14,224,14,240,28, + 120,60,63,248,31,240,7,192,15,24,48,18,1,0,7,192, + 31,240,63,248,120,124,112,60,240,28,224,30,224,14,224,14, + 224,14,224,30,224,30,112,62,127,254,63,238,15,206,0,14, + 0,28,224,28,240,60,120,120,63,240,63,224,15,128}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--34-240-100-100-P-176-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=29 h=32 x= 4 y=20 dx=34 dy= 0 ascent=27 len=120 + Font Bounding box w=39 h=48 x=-5 y=-11 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =27 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR24r[4992] U8G_SECTION(".progmem.u8g_font_helvR24r") = { + 0,39,48,251,245,25,5,215,14,105,32,127,249,27,249,25, + 249,0,0,0,9,0,1,3,25,25,9,4,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,64,64, + 0,0,224,224,224,224,8,8,8,12,2,15,231,231,231,231, + 231,231,66,66,17,23,69,19,1,0,3,135,0,3,135,0, + 3,6,0,3,6,0,7,14,0,7,14,0,127,255,128,127, + 255,128,127,255,128,14,28,0,14,28,0,12,24,0,28,56, + 0,28,56,0,255,255,0,255,255,0,255,255,0,56,112,0, + 56,112,0,48,96,0,48,96,0,112,224,0,112,224,0,16, + 31,62,18,1,252,1,128,1,128,1,128,15,240,31,248,61, + 188,113,142,113,142,225,142,225,128,225,128,113,128,125,128,63, + 192,31,240,7,252,1,254,1,158,1,143,1,135,225,135,225, + 135,113,142,113,142,61,188,63,248,15,240,1,128,1,128,1, + 128,1,128,26,24,96,29,1,0,0,0,48,0,31,0,112, + 0,127,128,96,0,115,192,224,0,224,192,192,0,192,225,192, + 0,192,225,128,0,192,227,128,0,224,195,0,0,115,199,0, + 0,127,134,0,0,31,14,0,0,0,12,0,0,0,28,62, + 0,0,24,127,128,0,56,243,128,0,48,193,192,0,113,192, + 192,0,97,192,192,0,225,192,192,0,192,193,192,1,192,227, + 128,1,128,127,128,3,128,62,0,18,23,69,22,2,0,7, + 192,0,15,224,0,30,112,0,60,56,0,56,56,0,56,56, + 0,60,112,0,30,240,0,15,224,0,7,192,0,15,128,0, + 63,192,0,121,199,0,112,231,0,224,246,0,224,126,0,224, + 60,0,224,28,0,240,62,0,120,127,0,127,247,128,63,227, + 192,15,0,0,3,8,8,6,2,15,224,224,224,224,224,224, + 224,64,7,31,31,11,2,249,6,12,12,24,24,56,48,112, + 112,112,96,224,224,224,224,224,224,224,224,224,96,112,112,112, + 48,56,24,24,12,12,6,7,31,31,11,1,249,192,96,96, + 48,48,56,24,28,28,28,12,14,14,14,14,14,14,14,14, + 12,12,28,28,24,24,56,48,112,96,96,192,10,11,22,13, + 1,15,12,0,12,0,76,128,237,192,127,128,63,0,30,0, + 63,0,115,128,225,192,64,128,17,16,48,19,1,1,1,192, + 0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,255,255,128,255,255,128,255,255,128,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,1,192,0,3,9, + 9,9,3,251,224,224,224,224,32,96,96,192,128,8,2,2, + 11,1,8,255,255,3,4,4,9,3,0,224,224,224,224,9, + 24,48,9,0,0,1,128,1,128,1,128,3,0,3,0,3, + 0,6,0,6,0,6,0,12,0,12,0,12,0,8,0,24, + 0,24,0,24,0,48,0,48,0,48,0,96,0,96,0,96, + 0,192,0,192,0,15,24,48,18,1,0,7,192,31,240,63, + 248,60,120,120,60,112,28,112,28,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,112,28,112, + 28,112,60,60,120,63,248,31,240,7,192,8,24,24,18,3, + 0,3,7,7,15,63,255,255,7,7,7,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,15,24,48,18,1,0,7, + 192,31,240,63,248,120,60,112,28,240,14,224,14,224,14,0, + 14,0,28,0,60,0,120,0,240,3,224,7,192,31,0,60, + 0,120,0,112,0,224,0,224,0,255,254,255,254,255,254,15, + 24,48,18,1,0,7,192,31,240,63,248,56,56,112,28,112, + 28,112,28,112,28,0,28,0,56,3,248,3,240,3,248,0, + 60,0,30,0,14,224,14,224,14,224,14,112,28,120,60,63, + 248,31,240,7,192,16,24,48,18,0,0,0,24,0,56,0, + 120,0,120,0,248,1,248,3,184,3,184,7,56,14,56,14, + 56,28,56,56,56,56,56,112,56,224,56,255,255,255,255,255, + 255,0,56,0,56,0,56,0,56,0,56,15,24,48,18,1, + 0,63,252,63,252,63,252,56,0,56,0,56,0,112,0,112, + 0,119,192,127,240,127,248,120,124,112,28,0,30,0,14,0, + 14,0,14,224,14,224,30,240,28,120,124,127,248,63,240,15, + 128,15,24,48,18,1,0,3,192,15,240,31,248,60,56,56, + 28,112,28,112,0,112,0,96,0,227,192,239,240,255,248,248, + 60,240,28,240,14,224,14,224,14,96,14,112,14,112,28,56, + 60,63,248,31,240,7,192,15,24,48,18,1,0,255,254,255, + 254,255,254,0,14,0,28,0,24,0,56,0,112,0,112,0, + 224,0,224,1,192,1,192,3,128,3,128,7,0,7,0,7, + 0,14,0,14,0,14,0,28,0,28,0,28,0,15,24,48, + 18,1,0,7,192,31,240,63,248,56,60,112,28,112,28,112, + 28,112,28,120,60,60,120,31,240,15,224,63,248,120,60,112, + 28,224,14,224,14,224,14,224,14,240,28,120,60,63,248,31, + 240,7,192,15,24,48,18,1,0,7,192,31,240,63,248,120, + 124,112,60,240,28,224,30,224,14,224,14,224,14,224,30,224, + 30,112,62,127,254,63,238,15,206,0,14,0,28,224,28,240, + 60,120,120,63,240,63,224,15,128,3,18,18,9,4,0,224, + 224,224,224,0,0,0,0,0,0,0,0,0,0,224,224,224, + 224,3,22,22,9,4,251,224,224,224,224,0,0,0,0,0, + 0,0,0,0,224,224,224,224,32,96,96,192,128,16,16,32, + 19,2,0,0,3,0,15,0,63,1,252,7,224,31,128,254, + 0,240,0,240,0,254,0,31,128,7,224,1,252,0,127,0, + 15,0,3,15,9,18,19,2,4,255,254,255,254,255,254,0, + 0,0,0,0,0,255,254,255,254,255,254,16,16,32,19,1, + 0,192,0,240,0,254,0,63,128,7,224,1,248,0,127,0, + 15,0,15,0,127,1,248,7,224,63,128,254,0,240,0,192, + 0,14,25,50,18,2,0,7,192,31,240,63,248,120,56,112, + 28,240,28,224,28,224,28,0,28,0,56,0,56,0,112,0, + 224,1,224,1,192,3,128,3,128,3,128,3,128,0,0,0, + 0,3,128,3,128,3,128,3,128,29,30,120,34,1,251,0, + 7,192,0,0,63,248,0,0,255,254,0,3,240,63,128,7, + 192,7,192,15,0,3,224,30,0,1,224,28,0,0,240,56, + 15,140,112,56,31,220,56,112,60,252,56,112,112,124,56,96, + 224,56,24,224,224,56,24,225,224,56,24,225,192,112,56,225, + 192,112,56,225,192,112,112,225,192,224,112,225,224,224,224,112, + 243,243,192,112,255,127,128,120,62,127,0,60,0,0,0,30, + 0,0,0,31,0,0,0,15,128,0,0,3,224,120,0,1, + 255,248,0,0,127,224,0,20,25,75,22,1,0,0,240,0, + 0,240,0,0,248,0,1,248,0,1,248,0,3,156,0,3, + 156,0,3,156,0,7,158,0,7,14,0,7,14,0,15,15, + 0,15,15,0,14,7,0,30,7,128,31,255,128,31,255,128, + 63,255,192,60,3,192,56,1,192,120,1,224,120,1,224,112, + 0,224,240,0,240,240,0,240,17,25,75,22,3,0,255,240, + 0,255,252,0,255,254,0,224,62,0,224,15,0,224,15,0, + 224,7,0,224,7,0,224,15,0,224,14,0,224,62,0,255, + 252,0,255,252,0,255,254,0,224,31,0,224,7,128,224,3, + 128,224,3,128,224,3,128,224,3,128,224,7,128,224,15,0, + 255,254,0,255,254,0,255,248,0,20,25,75,24,2,0,1, + 252,0,7,255,0,15,255,128,31,7,192,60,1,224,56,0, + 224,112,0,240,112,0,112,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,112,240,0,112,112,0,240,120,0,224,60,1,224,63,7, + 192,31,255,128,7,254,0,1,248,0,18,25,75,24,3,0, + 255,240,0,255,252,0,255,254,0,224,31,0,224,15,0,224, + 7,128,224,3,128,224,3,128,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,3,192,224,3,128,224,3,128,224,7,128,224,15,0,224, + 30,0,255,254,0,255,252,0,255,240,0,17,25,75,22,3, + 0,255,255,0,255,255,0,255,255,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,255,255,0,255,255,0,255,255,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,255,255,128,255,255,128,255,255,128,16,25,50,20, + 3,0,255,255,255,255,255,255,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,255,252,255,252,255,252,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,22,25,75,25,1,0,0,254,0,3,255,128, + 15,255,192,31,131,240,62,0,240,60,0,120,120,0,56,112, + 0,56,240,0,0,224,0,0,224,0,0,224,0,0,224,15, + 252,224,15,252,224,15,252,224,0,28,240,0,28,112,0,28, + 120,0,60,56,0,60,60,0,252,31,1,252,15,255,220,7, + 255,28,1,252,28,18,25,75,24,3,0,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255, + 255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,3,25,25,9,3,0,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,13,25,50,16,1,0,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,224,56,224,56,224, + 56,224,56,240,120,120,240,127,240,63,224,31,128,20,25,75, + 22,3,0,224,3,192,224,7,128,224,15,0,224,30,0,224, + 60,0,224,120,0,224,240,0,225,224,0,227,192,0,231,192, + 0,239,128,0,255,192,0,255,192,0,249,224,0,240,240,0, + 224,112,0,224,120,0,224,60,0,224,28,0,224,30,0,224, + 15,0,224,7,128,224,3,192,224,3,224,224,1,240,14,25, + 50,18,3,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 255,252,255,252,255,252,21,25,75,27,3,0,240,0,120,240, + 0,120,248,0,248,248,0,248,252,1,248,252,1,248,252,1, + 248,236,1,184,238,3,184,238,3,184,230,3,56,231,7,56, + 231,7,56,227,6,56,227,142,56,227,142,56,227,142,56,225, + 140,56,225,220,56,225,220,56,224,216,56,224,248,56,224,248, + 56,224,112,56,224,112,56,19,25,75,24,2,0,240,0,224, + 240,0,224,248,0,224,252,0,224,252,0,224,254,0,224,239, + 0,224,231,0,224,231,128,224,227,192,224,227,192,224,225,224, + 224,224,224,224,224,240,224,224,120,224,224,56,224,224,60,224, + 224,28,224,224,30,224,224,15,224,224,7,224,224,7,224,224, + 3,224,224,1,224,224,1,224,23,25,75,25,1,0,0,254, + 0,3,255,128,15,239,224,31,1,240,62,0,248,60,0,120, + 120,0,60,112,0,28,240,0,30,224,0,14,224,0,14,224, + 0,14,224,0,14,224,0,14,224,0,14,224,0,14,240,0, + 30,240,0,30,120,0,60,60,0,120,62,0,248,31,1,240, + 15,239,224,3,255,128,0,254,0,17,25,75,22,3,0,255, + 248,0,255,254,0,255,255,0,224,15,0,224,7,128,224,3, + 128,224,3,128,224,3,128,224,3,128,224,3,128,224,7,128, + 224,15,0,255,255,0,255,254,0,255,248,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,23,26,78,26,1,255, + 0,254,0,3,255,128,15,239,224,31,1,240,62,0,248,60, + 0,120,120,0,60,112,0,28,240,0,30,224,0,14,224,0, + 14,224,0,14,224,0,14,224,0,14,224,0,14,224,0,14, + 240,0,30,240,2,30,120,7,60,60,7,184,62,3,248,31, + 1,240,15,239,248,3,255,188,0,254,30,0,0,12,19,25, + 75,24,3,0,255,252,0,255,255,0,255,255,128,224,7,128, + 224,3,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 3,192,224,3,128,224,15,128,255,255,0,255,254,0,255,255, + 0,224,15,128,224,7,128,224,3,128,224,3,192,224,3,192, + 224,3,192,224,1,192,224,1,192,224,1,192,224,1,224,19, + 25,75,22,1,0,3,248,0,15,254,0,31,255,0,60,15, + 128,56,3,192,112,1,192,112,1,192,112,0,0,120,0,0, + 124,0,0,63,192,0,31,248,0,7,255,0,0,127,128,0, + 15,192,0,1,224,0,0,224,224,0,224,240,0,224,112,1, + 224,120,1,192,62,7,192,63,255,128,15,254,0,3,248,0, + 19,25,75,20,0,0,255,255,224,255,255,224,255,255,224,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,18,25,75,24,3,0,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 240,3,192,120,7,128,124,15,128,63,255,0,31,254,0,3, + 240,0,19,25,75,22,1,0,240,1,224,240,1,224,240,1, + 224,112,1,192,120,3,192,120,3,192,56,3,128,56,3,128, + 60,7,128,28,7,0,28,7,0,30,15,0,14,14,0,14, + 14,0,15,14,0,7,28,0,7,28,0,7,156,0,3,184, + 0,3,184,0,3,184,0,1,240,0,1,240,0,0,224,0, + 0,224,0,29,25,100,31,1,0,240,7,0,120,240,7,0, + 120,240,15,128,120,112,15,128,112,112,15,128,112,120,29,192, + 240,120,29,192,240,56,29,192,224,56,29,192,224,56,56,224, + 224,60,56,225,224,28,56,225,192,28,48,225,192,28,112,113, + 192,28,112,113,192,14,112,115,128,14,224,59,128,14,224,59, + 128,14,224,59,128,7,224,63,128,7,192,31,0,7,192,31, + 0,7,192,31,0,3,128,14,0,3,128,14,0,20,25,75, + 22,1,0,248,0,240,120,1,224,60,3,192,28,3,192,30, + 7,128,15,7,0,15,15,0,7,158,0,3,156,0,3,252, + 0,1,248,0,0,240,0,0,240,0,1,248,0,1,248,0, + 3,156,0,7,158,0,7,14,0,15,15,0,30,7,128,30, + 7,128,60,3,192,120,1,224,120,1,224,240,0,240,21,25, + 75,22,0,0,240,0,120,120,0,240,120,0,224,60,1,224, + 28,1,192,30,3,192,14,7,128,15,7,128,7,143,0,3, + 142,0,3,222,0,1,220,0,1,252,0,0,248,0,0,248, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,18, + 25,75,20,1,0,127,255,192,127,255,192,127,255,192,0,7, + 128,0,15,128,0,15,0,0,30,0,0,60,0,0,60,0, + 0,120,0,0,240,0,1,224,0,1,224,0,3,192,0,7, + 128,0,7,128,0,15,0,0,30,0,0,60,0,0,60,0, + 0,120,0,0,240,0,0,255,255,192,255,255,192,255,255,192, + 6,32,32,9,2,249,252,252,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,252,252,9,24,48,9,0,0,192,0,192,0, + 96,0,96,0,96,0,48,0,48,0,48,0,16,0,24,0, + 24,0,24,0,12,0,12,0,12,0,6,0,6,0,6,0, + 2,0,3,0,3,0,3,0,1,128,1,128,6,32,32,9, + 1,249,252,252,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 252,252,12,13,26,16,1,11,6,0,15,0,15,0,31,128, + 25,128,25,128,57,192,48,192,112,224,96,96,96,96,224,112, + 192,48,18,2,6,18,0,250,255,255,192,255,255,192,6,5, + 5,11,1,20,224,240,112,56,28,16,18,36,18,1,0,15, + 224,63,248,60,120,112,60,112,28,0,28,0,60,1,252,31, + 252,126,28,120,28,240,28,224,28,224,60,224,124,121,254,127, + 223,63,143,15,25,50,18,2,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,227,224,239,240,255,248,248,60,240, + 28,240,30,224,14,224,14,224,14,224,14,224,14,224,14,240, + 30,240,28,252,60,255,248,239,240,231,224,14,18,36,16,1, + 0,7,192,31,240,63,248,56,60,112,28,112,28,224,0,224, + 0,224,0,224,0,224,0,224,28,224,28,112,28,120,56,63, + 248,31,240,7,192,15,25,50,18,1,0,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,7,206,31,238,63,254,124, + 62,112,30,240,30,224,14,224,14,224,14,224,14,224,14,224, + 14,240,30,240,30,120,62,127,254,63,238,15,206,15,18,36, + 18,2,0,7,192,31,240,63,248,120,60,112,28,240,14,224, + 14,224,14,255,254,255,254,224,0,224,0,240,14,112,30,120, + 60,63,248,31,240,7,192,8,25,25,9,1,0,15,31,60, + 56,56,56,56,255,255,255,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,15,25,50,18,1,249,7,206,31,238, + 63,254,124,62,112,30,240,30,224,14,224,14,224,14,224,14, + 224,14,224,14,240,30,112,62,120,62,63,254,31,238,7,142, + 0,14,224,14,224,28,240,28,124,120,63,248,31,224,14,25, + 50,18,2,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,227,224,239,240,255,248,248,60,240,28,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,3,25,25,7,2,0,224,224,224,224, + 0,0,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,6,32,32,7,255,249,28,28,28,28,0, + 0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,60,252,248,15,25,50,16,1, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 120,224,240,225,224,227,192,231,128,239,0,255,0,255,0,251, + 128,243,192,225,192,225,224,224,224,224,240,224,120,224,56,224, + 60,224,30,3,25,25,7,2,0,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,23,18,54,27,2,0,227,192,240,239,243,252,255,247, + 252,248,126,30,240,60,14,224,56,14,224,56,14,224,56,14, + 224,56,14,224,56,14,224,56,14,224,56,14,224,56,14,224, + 56,14,224,56,14,224,56,14,224,56,14,224,56,14,14,18, + 36,18,2,0,227,224,239,248,255,248,248,60,240,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,15,18,36,18,1,0,7,192, + 31,240,63,248,120,60,112,28,240,30,224,14,224,14,224,14, + 224,14,224,14,224,14,240,30,112,28,120,60,63,248,31,240, + 7,192,15,25,50,18,2,249,3,192,239,240,255,248,248,60, + 240,28,240,30,224,14,224,14,224,14,224,14,224,14,224,14, + 240,30,240,28,248,60,255,248,239,240,231,224,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,15,25,50,18,1,249, + 7,192,31,238,63,254,124,62,112,30,240,30,224,14,224,14, + 224,14,224,14,224,14,224,14,240,30,112,30,120,62,63,254, + 31,238,15,206,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,8,18,18,11,2,0,231,239,255,252,240,240,224,224, + 224,224,224,224,224,224,224,224,224,224,13,18,36,16,2,0, + 15,128,63,224,127,224,112,240,224,112,224,0,112,0,126,0, + 63,192,7,240,0,240,0,120,224,56,224,56,240,112,127,240, + 127,224,31,128,8,22,22,9,1,0,56,56,56,56,255,255, + 255,56,56,56,56,56,56,56,56,56,56,56,56,60,63,31, + 14,18,36,18,2,0,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,60,240,124,127,252,127,220,31,28,15,18,36,16,0,0, + 224,14,224,14,112,28,112,28,112,28,56,56,56,56,56,56, + 28,112,28,112,28,112,14,224,14,224,14,224,7,192,7,192, + 3,128,3,128,23,18,54,23,0,0,224,56,14,224,56,14, + 112,124,28,112,124,28,112,108,28,56,238,28,56,238,56,56, + 238,56,56,198,56,24,198,48,29,199,112,29,199,112,29,199, + 112,13,131,96,15,131,224,15,131,224,7,1,192,7,1,192, + 15,18,36,16,0,0,240,30,120,28,56,56,60,112,28,112, + 14,224,15,224,7,192,3,128,7,192,7,192,15,224,30,224, + 28,112,56,120,56,56,112,28,240,30,14,25,50,16,1,249, + 224,28,224,28,240,56,112,56,112,56,112,112,56,112,56,112, + 56,224,60,224,28,224,29,192,29,192,15,192,15,128,15,128, + 7,0,7,0,7,0,14,0,14,0,28,0,124,0,120,0, + 112,0,14,18,36,16,1,0,127,248,127,248,127,248,0,120, + 0,240,0,224,1,192,3,192,7,128,7,0,14,0,28,0, + 60,0,120,0,112,0,255,252,255,252,255,252,8,32,32,11, + 1,249,15,31,28,24,24,24,24,24,24,24,24,24,56,56, + 112,224,224,112,56,56,24,24,24,24,24,24,24,24,24,28, + 31,15,2,31,31,9,3,249,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,8,32,32,11,1,249,240,248,56, + 24,24,24,24,24,24,24,24,24,28,28,14,7,7,14,28, + 28,24,24,24,24,24,24,24,24,24,56,248,240,14,6,12, + 19,2,9,24,0,124,12,127,12,199,220,193,248,0,240,255 + }; +/* + Fontname: -FreeType-Lucasfont Alternate-Medium-R-Normal--8-80-72-72-P-50-ISO10646-1 + Copyright: Copyright Patrick Lauke 2012 Lucasfont Alternate is based on Lucasfont by Patrick Lauke (http://fontstruct.com/fontstructors/redux) + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 9 h=10 x= 1 y= 4 dx=10 dy= 0 ascent=10 len=14 + Font Bounding box w= 9 h=11 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-1 + X Font ascent = 7 descent=-1 + Max Font ascent =10 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_lucasfont_alternate[2193] U8G_SECTION(".progmem.u8g_font_lucasfont_alternate") = { + 0,9,11,0,255,7,1,148,3,22,32,255,255,10,255,7, + 255,0,0,0,4,0,0,1,7,7,2,0,0,128,128,128, + 128,0,0,128,3,3,3,4,0,4,160,160,160,5,7,7, + 6,0,0,80,80,248,80,248,80,80,5,7,7,6,0,0, + 32,120,128,248,8,240,32,7,7,7,8,0,0,2,68,8, + 16,32,68,128,6,7,7,7,0,0,96,144,144,96,148,136, + 116,1,3,3,2,0,4,128,128,128,3,7,7,4,0,0, + 32,64,128,128,128,64,32,3,7,7,4,0,0,128,64,32, + 32,32,64,128,7,5,5,8,0,1,68,40,254,40,68,5, + 5,5,6,0,1,32,32,248,32,32,2,3,3,3,0,255, + 64,64,128,6,1,1,7,0,3,252,1,2,2,2,0,0, + 128,128,7,7,7,8,0,0,2,4,8,16,32,64,128,5, + 7,7,6,0,0,112,136,136,136,136,136,112,5,7,7,6, + 0,0,32,96,32,32,32,32,248,5,7,7,6,0,0,112, + 136,8,16,32,64,248,5,7,7,6,0,0,240,8,8,120, + 8,8,240,5,7,7,6,0,0,16,48,80,144,248,16,16, + 5,7,7,6,0,0,248,128,112,8,8,136,112,5,7,7, + 6,0,0,112,136,128,240,136,136,112,5,7,7,6,0,0, + 248,8,16,32,32,32,32,5,7,7,6,0,0,112,136,136, + 112,136,136,112,5,7,7,6,0,0,112,136,136,120,8,136, + 112,1,4,4,2,0,1,128,0,0,128,2,6,6,3,0, + 255,64,0,0,64,64,128,4,7,7,5,0,0,16,32,64, + 128,64,32,16,5,3,3,6,0,2,248,0,248,4,7,7, + 5,0,0,128,64,32,16,32,64,128,5,7,7,6,0,0, + 112,136,8,16,32,0,32,7,7,7,8,0,0,124,130,154, + 170,190,128,124,5,7,7,6,0,0,112,136,136,248,136,136, + 136,5,7,7,6,0,0,240,136,136,240,136,136,240,5,7, + 7,6,0,0,120,128,128,128,128,128,120,5,7,7,6,0, + 0,240,136,136,136,136,136,240,5,7,7,6,0,0,248,128, + 128,240,128,128,248,5,7,7,6,0,0,248,128,128,240,128, + 128,128,5,7,7,6,0,0,112,136,128,184,136,136,112,5, + 7,7,6,0,0,136,136,136,248,136,136,136,1,7,7,2, + 0,0,128,128,128,128,128,128,128,5,7,7,6,0,0,8, + 8,8,8,8,136,112,5,7,7,6,0,0,136,144,160,192, + 160,144,136,5,7,7,6,0,0,128,128,128,128,128,128,248, + 7,7,7,8,0,0,130,198,170,146,130,130,130,6,7,7, + 7,0,0,132,196,164,148,140,132,132,5,7,7,6,0,0, + 112,136,136,136,136,136,112,5,7,7,6,0,0,240,136,136, + 240,128,128,128,5,7,7,6,0,0,112,136,136,136,168,144, + 104,5,7,7,6,0,0,240,136,136,240,160,144,136,5,7, + 7,6,0,0,112,136,128,112,8,136,112,5,7,7,6,0, + 0,248,32,32,32,32,32,32,5,7,7,6,0,0,136,136, + 136,136,136,136,112,5,7,7,6,0,0,136,136,136,136,136, + 80,32,7,7,7,8,0,0,130,130,130,146,170,198,130,5, + 7,7,6,0,0,136,136,80,32,80,136,136,5,7,7,6, + 0,0,136,136,136,80,32,32,32,5,7,7,6,0,0,248, + 8,16,32,64,128,248,3,7,7,4,0,0,224,128,128,128, + 128,128,224,7,7,7,8,0,0,128,64,32,16,8,4,2, + 3,7,7,4,0,0,224,32,32,32,32,32,224,255,7,1, + 1,8,0,0,254,255,5,5,5,6,0,0,112,8,120,136, + 120,5,6,6,6,0,0,128,128,240,136,136,240,4,5,5, + 5,0,0,112,128,128,128,112,5,6,6,6,0,0,8,8, + 120,136,136,120,5,5,5,6,0,0,112,136,240,128,120,4, + 6,6,5,0,0,48,64,240,64,64,64,5,6,6,6,0, + 255,112,136,136,120,8,112,5,6,6,6,0,0,128,128,240, + 136,136,136,1,6,6,2,0,0,128,0,128,128,128,128,3, + 7,7,4,0,255,32,0,32,32,32,32,192,4,6,6,5, + 0,0,128,128,144,224,160,144,2,6,6,3,0,0,192,64, + 64,64,64,64,7,5,5,8,0,0,252,146,146,146,146,5, + 5,5,6,0,0,240,136,136,136,136,5,5,5,6,0,0, + 112,136,136,136,112,5,6,6,6,0,255,240,136,136,240,128, + 128,5,6,6,6,0,255,120,136,136,120,8,8,5,5,5, + 6,0,0,240,136,128,128,128,5,5,5,6,0,0,120,128, + 112,8,240,5,6,6,6,0,0,32,248,32,32,32,16,5, + 5,5,6,0,0,136,136,136,136,120,5,5,5,6,0,0, + 136,136,136,80,32,7,5,5,8,0,0,146,146,146,146,126, + 5,5,5,6,0,0,136,80,32,80,136,5,6,6,6,0, + 255,136,136,136,120,8,112,5,5,5,6,0,0,248,16,32, + 64,248,4,7,7,5,0,0,48,64,64,128,64,64,48,1, + 7,7,2,0,0,128,128,128,128,128,128,128,4,7,7,5, + 0,0,192,32,32,16,32,32,192,6,2,2,7,0,3,100, + 152,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,1,7,7,2,0,0,128,0,0,128,128,128,128, + 5,7,7,6,0,0,32,112,168,160,168,112,32,5,7,7, + 6,0,0,56,64,64,240,64,64,248,255,5,7,7,6,0, + 0,136,136,80,32,248,32,32,1,7,7,2,0,0,128,128, + 128,0,128,128,128,255,255,8,8,8,9,0,255,60,66,153, + 161,161,153,66,60,255,6,5,5,7,0,1,36,72,144,72, + 36,5,3,3,6,0,1,248,8,8,5,1,1,6,0,3, + 248,255,255,255,5,7,7,6,0,0,32,32,248,32,32,0, + 248,255,255,255,255,6,7,7,7,0,0,124,244,244,116,20, + 20,20,1,1,1,2,0,3,128,255,255,255,6,5,5,7, + 0,1,144,72,36,72,144,255,255,255,5,7,7,6,0,0, + 32,0,32,64,128,136,112,5,10,10,6,0,0,64,32,0, + 112,136,136,248,136,136,136,5,10,10,6,0,0,16,32,0, + 112,136,136,248,136,136,136,5,10,10,6,0,0,32,80,0, + 112,136,136,248,136,136,136,5,10,10,6,0,0,104,144,0, + 112,136,136,248,136,136,136,5,9,9,6,0,0,80,0,112, + 136,136,248,136,136,136,5,10,10,6,0,0,32,80,32,112, + 136,136,248,136,136,136,9,7,14,10,0,0,119,128,136,0, + 136,0,255,0,136,0,136,0,143,128,255,5,10,10,6,0, + 0,64,32,0,248,128,128,240,128,128,248,5,10,10,6,0, + 0,16,32,0,248,128,128,240,128,128,248,5,10,10,6,0, + 0,32,80,0,248,128,128,240,128,128,248,5,9,9,6,0, + 0,80,0,248,128,128,240,128,128,248,2,10,10,3,0,0, + 128,64,0,64,64,64,64,64,64,64,2,10,10,4,1,0, + 64,128,0,128,128,128,128,128,128,128,3,10,10,4,0,0, + 64,160,0,64,64,64,64,64,64,64,3,9,9,4,0,0, + 160,0,64,64,64,64,64,64,64,6,7,7,7,0,0,120, + 68,68,244,68,68,120,6,10,10,7,0,0,100,152,0,132, + 196,164,148,140,132,132,5,10,10,6,0,0,64,32,0,112, + 136,136,136,136,136,112,5,10,10,6,0,0,16,32,0,112, + 136,136,136,136,136,112,5,10,10,6,0,0,32,80,0,112, + 136,136,136,136,136,112,5,10,10,6,0,0,104,144,0,112, + 136,136,136,136,136,112,5,8,8,6,0,0,136,112,136,136, + 136,136,136,112,5,5,5,6,0,1,136,80,32,80,136,255, + 5,10,10,6,0,0,64,32,0,136,136,136,136,136,136,112, + 5,10,10,6,0,0,16,32,0,136,136,136,136,136,136,112, + 5,10,10,6,0,0,32,80,0,136,136,136,136,136,136,112, + 5,8,8,6,0,0,136,0,136,136,136,136,136,112,5,10, + 10,6,0,0,16,32,0,136,136,136,80,32,32,32,255,4, + 8,8,5,0,255,96,144,144,160,144,144,160,128,5,8,8, + 6,0,0,64,32,0,112,8,120,136,120,5,8,8,6,0, + 0,16,32,0,112,8,120,136,120,5,8,8,6,0,0,32, + 80,0,112,8,120,136,120,5,8,8,6,0,0,104,144,0, + 112,8,120,136,120,5,7,7,6,0,0,80,0,112,8,120, + 136,120,5,9,9,6,0,0,32,80,32,0,112,8,120,136, + 120,9,5,10,10,0,0,119,0,8,128,127,0,136,0,119, + 128,255,5,8,8,6,0,0,64,32,0,112,136,240,128,120, + 5,8,8,6,0,0,16,32,0,112,136,240,128,120,5,8, + 8,6,0,0,32,80,0,112,136,240,128,120,5,7,7,6, + 0,0,80,0,112,136,240,128,120,2,7,7,3,0,0,128, + 64,0,64,64,64,64,2,7,7,3,0,0,64,128,0,128, + 128,128,128,3,7,7,4,0,0,64,160,0,64,64,64,64, + 3,6,6,4,0,0,160,0,64,64,64,64,255,5,8,8, + 6,0,0,104,144,0,240,136,136,136,136,5,8,8,6,0, + 0,64,32,0,112,136,136,136,112,5,8,8,6,0,0,16, + 32,0,112,136,136,136,112,5,8,8,6,0,0,32,80,0, + 112,136,136,136,112,5,8,8,6,0,0,104,144,0,112,136, + 136,136,112,5,7,7,6,0,0,80,0,112,136,136,136,112, + 5,5,5,6,0,1,32,0,248,0,32,255,5,8,8,6, + 0,0,64,32,0,136,136,136,136,120,5,8,8,6,0,0, + 16,32,0,136,136,136,136,120,5,8,8,6,0,0,32,80, + 0,136,136,136,136,120,5,7,7,6,0,0,80,0,136,136, + 136,136,120,5,9,9,6,0,255,16,32,0,136,136,136,120, + 8,112,255,5,8,8,6,0,255,80,0,136,136,136,120,8, + 112}; +/* + Fontname: -FreeType-Lucasfont Alternate-Medium-R-Normal--8-80-72-72-P-50-ISO10646-1 + Copyright: Copyright Patrick Lauke 2012 Lucasfont Alternate is based on Lucasfont by Patrick Lauke (http://fontstruct.com/fontstructors/redux) + Capital A Height: 0, '1' Height: 7 + Calculated Max Values w= 7 h= 7 x= 0 y= 3 dx= 8 dy= 0 ascent= 7 len= 7 + Font Bounding box w= 9 h=11 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 7 descent= 0 + X Font ascent = 7 descent= 0 + Max Font ascent = 7 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_lucasfont_alternaten[206] U8G_SECTION(".progmem.u8g_font_lucasfont_alternaten") = { + 0,9,11,0,255,7,0,0,0,0,42,57,0,7,255,7, + 0,7,5,5,8,0,1,68,40,254,40,68,5,5,5,6, + 0,1,32,32,248,32,32,2,3,3,3,0,255,64,64,128, + 6,1,1,7,0,3,252,1,2,2,2,0,0,128,128,7, + 7,7,8,0,0,2,4,8,16,32,64,128,5,7,7,6, + 0,0,112,136,136,136,136,136,112,5,7,7,6,0,0,32, + 96,32,32,32,32,248,5,7,7,6,0,0,112,136,8,16, + 32,64,248,5,7,7,6,0,0,240,8,8,120,8,8,240, + 5,7,7,6,0,0,16,48,80,144,248,16,16,5,7,7, + 6,0,0,248,128,112,8,8,136,112,5,7,7,6,0,0, + 112,136,128,240,136,136,112,5,7,7,6,0,0,248,8,16, + 32,32,32,32,5,7,7,6,0,0,112,136,136,112,136,136, + 112,5,7,7,6,0,0,112,136,136,120,8,136,112}; +/* + Fontname: -FreeType-Lucasfont Alternate-Medium-R-Normal--8-80-72-72-P-50-ISO10646-1 + Copyright: Copyright Patrick Lauke 2012 Lucasfont Alternate is based on Lucasfont by Patrick Lauke (http://fontstruct.com/fontstructors/redux) + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 7 h= 7 x= 0 y= 4 dx= 8 dy= 0 ascent= 7 len= 7 + Font Bounding box w= 9 h=11 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-1 + X Font ascent = 7 descent=-1 + Max Font ascent = 7 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_lucasfont_alternater[1138] U8G_SECTION(".progmem.u8g_font_lucasfont_alternater") = { + 0,9,11,0,255,7,1,148,3,22,32,127,255,7,255,7, + 255,0,0,0,4,0,0,1,7,7,2,0,0,128,128,128, + 128,0,0,128,3,3,3,4,0,4,160,160,160,5,7,7, + 6,0,0,80,80,248,80,248,80,80,5,7,7,6,0,0, + 32,120,128,248,8,240,32,7,7,7,8,0,0,2,68,8, + 16,32,68,128,6,7,7,7,0,0,96,144,144,96,148,136, + 116,1,3,3,2,0,4,128,128,128,3,7,7,4,0,0, + 32,64,128,128,128,64,32,3,7,7,4,0,0,128,64,32, + 32,32,64,128,7,5,5,8,0,1,68,40,254,40,68,5, + 5,5,6,0,1,32,32,248,32,32,2,3,3,3,0,255, + 64,64,128,6,1,1,7,0,3,252,1,2,2,2,0,0, + 128,128,7,7,7,8,0,0,2,4,8,16,32,64,128,5, + 7,7,6,0,0,112,136,136,136,136,136,112,5,7,7,6, + 0,0,32,96,32,32,32,32,248,5,7,7,6,0,0,112, + 136,8,16,32,64,248,5,7,7,6,0,0,240,8,8,120, + 8,8,240,5,7,7,6,0,0,16,48,80,144,248,16,16, + 5,7,7,6,0,0,248,128,112,8,8,136,112,5,7,7, + 6,0,0,112,136,128,240,136,136,112,5,7,7,6,0,0, + 248,8,16,32,32,32,32,5,7,7,6,0,0,112,136,136, + 112,136,136,112,5,7,7,6,0,0,112,136,136,120,8,136, + 112,1,4,4,2,0,1,128,0,0,128,2,6,6,3,0, + 255,64,0,0,64,64,128,4,7,7,5,0,0,16,32,64, + 128,64,32,16,5,3,3,6,0,2,248,0,248,4,7,7, + 5,0,0,128,64,32,16,32,64,128,5,7,7,6,0,0, + 112,136,8,16,32,0,32,7,7,7,8,0,0,124,130,154, + 170,190,128,124,5,7,7,6,0,0,112,136,136,248,136,136, + 136,5,7,7,6,0,0,240,136,136,240,136,136,240,5,7, + 7,6,0,0,120,128,128,128,128,128,120,5,7,7,6,0, + 0,240,136,136,136,136,136,240,5,7,7,6,0,0,248,128, + 128,240,128,128,248,5,7,7,6,0,0,248,128,128,240,128, + 128,128,5,7,7,6,0,0,112,136,128,184,136,136,112,5, + 7,7,6,0,0,136,136,136,248,136,136,136,1,7,7,2, + 0,0,128,128,128,128,128,128,128,5,7,7,6,0,0,8, + 8,8,8,8,136,112,5,7,7,6,0,0,136,144,160,192, + 160,144,136,5,7,7,6,0,0,128,128,128,128,128,128,248, + 7,7,7,8,0,0,130,198,170,146,130,130,130,6,7,7, + 7,0,0,132,196,164,148,140,132,132,5,7,7,6,0,0, + 112,136,136,136,136,136,112,5,7,7,6,0,0,240,136,136, + 240,128,128,128,5,7,7,6,0,0,112,136,136,136,168,144, + 104,5,7,7,6,0,0,240,136,136,240,160,144,136,5,7, + 7,6,0,0,112,136,128,112,8,136,112,5,7,7,6,0, + 0,248,32,32,32,32,32,32,5,7,7,6,0,0,136,136, + 136,136,136,136,112,5,7,7,6,0,0,136,136,136,136,136, + 80,32,7,7,7,8,0,0,130,130,130,146,170,198,130,5, + 7,7,6,0,0,136,136,80,32,80,136,136,5,7,7,6, + 0,0,136,136,136,80,32,32,32,5,7,7,6,0,0,248, + 8,16,32,64,128,248,3,7,7,4,0,0,224,128,128,128, + 128,128,224,7,7,7,8,0,0,128,64,32,16,8,4,2, + 3,7,7,4,0,0,224,32,32,32,32,32,224,255,7,1, + 1,8,0,0,254,255,5,5,5,6,0,0,112,8,120,136, + 120,5,6,6,6,0,0,128,128,240,136,136,240,4,5,5, + 5,0,0,112,128,128,128,112,5,6,6,6,0,0,8,8, + 120,136,136,120,5,5,5,6,0,0,112,136,240,128,120,4, + 6,6,5,0,0,48,64,240,64,64,64,5,6,6,6,0, + 255,112,136,136,120,8,112,5,6,6,6,0,0,128,128,240, + 136,136,136,1,6,6,2,0,0,128,0,128,128,128,128,3, + 7,7,4,0,255,32,0,32,32,32,32,192,4,6,6,5, + 0,0,128,128,144,224,160,144,2,6,6,3,0,0,192,64, + 64,64,64,64,7,5,5,8,0,0,252,146,146,146,146,5, + 5,5,6,0,0,240,136,136,136,136,5,5,5,6,0,0, + 112,136,136,136,112,5,6,6,6,0,255,240,136,136,240,128, + 128,5,6,6,6,0,255,120,136,136,120,8,8,5,5,5, + 6,0,0,240,136,128,128,128,5,5,5,6,0,0,120,128, + 112,8,240,5,6,6,6,0,0,32,248,32,32,32,16,5, + 5,5,6,0,0,136,136,136,136,120,5,5,5,6,0,0, + 136,136,136,80,32,7,5,5,8,0,0,146,146,146,146,126, + 5,5,5,6,0,0,136,80,32,80,136,5,6,6,6,0, + 255,136,136,136,120,8,112,5,5,5,6,0,0,248,16,32, + 64,248,4,7,7,5,0,0,48,64,64,128,64,64,48,1, + 7,7,2,0,0,128,128,128,128,128,128,128,4,7,7,5, + 0,0,192,32,32,16,32,32,192,6,2,2,7,0,3,100, + 152,255}; +/* + Fontname: m2icon5 + Copyright: public domain + Capital A Height: 5, '1' Height: 0 + Calculated Max Values w= 9 h= 6 x= 0 y= 0 dx=10 dy= 0 ascent= 5 len=10 + Font Bounding box w= 9 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_m2icon_5[221] U8G_SECTION(".progmem.u8g_font_m2icon_5") = { + 1,9,6,0,255,5,0,17,0,172,65,104,255,5,255,5, + 255,2,117,149,28,254,130,130,254,2,69,133,112,208,144,144, + 240,2,84,100,216,112,112,216,2,117,133,6,12,216,112,32, + 2,68,84,240,144,144,240,2,68,84,240,144,208,240,2,68, + 84,240,240,240,240,2,85,101,248,136,136,136,248,2,85,101, + 248,136,168,136,248,2,85,101,248,248,248,248,248,2,68,84, + 224,176,240,112,2,68,84,224,176,240,112,2,68,84,224,240, + 240,112,2,85,101,240,152,152,248,120,2,85,101,240,152,216, + 248,120,2,85,101,240,248,248,248,120,2,68,84,96,144,144, + 96,2,68,84,96,144,208,96,2,68,84,96,240,240,96,255, + 255,255,255,255,255,255,255,255,255,255,255,255,2,117,133,32, + 64,254,64,32,2,85,101,32,112,168,32,32,255,255,255,2, + 149,170,28,0,254,0,130,0,191,128,255,0,1,22,38,128, + 128,128,128,128,128,2,85,101,32,32,248,32,32}; +/* + Fontname: m2icon_7 + Copyright: public domain + Capital A Height: 7, '1' Height: 0 + Calculated Max Values w=12 h= 8 x= 0 y= 1 dx=13 dy= 0 ascent= 7 len=14 + Font Bounding box w=12 h= 8 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-1 + X Font ascent = 7 descent=-1 + Max Font ascent = 7 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_m2icon_7[275] U8G_SECTION(".progmem.u8g_font_m2icon_7") = { + 1,12,8,0,255,7,0,17,0,214,65,104,255,7,255,7, + 255,2,151,174,15,0,255,128,128,128,128,128,128,128,128,128, + 255,128,2,87,103,56,104,232,136,136,136,248,3,84,100,216, + 112,112,216,2,134,150,3,6,12,216,112,32,2,102,118,252, + 132,132,132,132,252,2,102,118,252,132,180,180,132,252,2,102, + 118,252,252,252,252,252,252,2,119,151,254,130,130,130,130,130, + 254,2,119,151,254,130,186,186,186,130,254,2,119,151,254,254, + 254,254,254,254,254,2,102,118,248,140,140,140,252,124,2,102, + 118,248,140,172,140,252,124,2,102,134,248,252,252,252,252,124, + 2,119,151,252,134,134,134,134,254,126,2,119,151,252,134,182, + 182,134,254,126,2,119,151,252,254,254,254,254,254,126,2,102, + 118,120,204,132,132,204,120,2,102,118,120,204,180,180,204,120, + 2,102,118,120,252,252,252,252,120,255,255,255,255,255,255,255, + 255,255,255,255,255,255,2,135,151,16,48,95,129,95,48,16, + 2,119,135,16,40,68,238,40,40,56,255,255,255,2,199,222, + 15,0,255,128,128,128,159,240,160,32,192,64,255,128,1,24, + 40,128,128,128,128,128,128,128,128,2,119,199,16,0,16,186, + 16,0,16}; +/* + Fontname: m2icon_9 + Copyright: public domain + Capital A Height: 8, '1' Height: 0 + Calculated Max Values w=13 h=11 x= 0 y= 1 dx=12 dy= 0 ascent= 9 len=18 + Font Bounding box w=13 h=11 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_m2icon_9[471] U8G_SECTION(".progmem.u8g_font_m2icon_9") = { + 0,13,11,0,254,8,0,17,1,111,65,105,254,9,254,8, + 254,10,8,16,11,0,0,15,128,255,192,128,64,128,64,128, + 64,128,64,128,64,255,192,6,8,8,7,0,0,60,84,148, + 244,132,132,132,252,6,5,5,7,0,1,204,120,48,120,204, + 10,7,14,12,0,0,0,192,1,128,3,0,198,0,108,0, + 56,0,16,0,8,8,8,9,0,0,255,129,129,129,129,129, + 129,255,8,8,8,9,0,0,255,129,189,189,189,189,129,255, + 8,8,8,9,0,0,255,255,255,255,255,255,255,255,9,9, + 18,10,0,0,255,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,255,128,9,9,18,10,0,0,255,128,128,128, + 190,128,190,128,190,128,190,128,190,128,128,128,255,128,9,9, + 18,11,0,0,255,128,255,128,255,128,255,128,255,128,255,128, + 255,128,255,128,255,128,8,8,8,8,0,0,254,131,131,131, + 131,131,255,127,8,8,8,9,0,0,254,131,187,187,187,131, + 255,127,8,8,8,9,0,0,254,255,255,255,255,255,255,127, + 9,9,18,10,0,0,255,0,129,128,129,128,129,128,129,128, + 129,128,129,128,255,128,127,128,9,9,18,10,0,0,255,0, + 129,128,189,128,189,128,189,128,189,128,129,128,255,128,127,128, + 9,9,18,10,0,0,255,0,255,128,255,128,255,128,255,128, + 255,128,255,128,255,128,127,128,8,8,8,9,0,0,60,66, + 129,129,129,129,66,60,8,8,8,9,0,0,60,66,153,189, + 189,153,66,60,8,8,8,9,0,0,60,126,255,255,255,255, + 126,60,255,255,255,255,255,255,255,255,255,255,255,255,255,10, + 8,16,11,0,0,24,0,40,0,79,192,128,64,128,64,79, + 192,40,0,24,0,8,9,9,9,0,0,24,36,66,129,231, + 36,36,36,60,255,255,255,13,8,16,11,0,0,15,128,255, + 192,128,64,128,64,159,248,160,16,192,32,255,192,1,11,11, + 2,0,254,128,128,128,128,128,128,128,128,128,128,128,9,9, + 18,10,0,0,8,0,0,0,8,0,8,0,190,128,8,0, + 8,0,0,0,8,0,255}; +/* + Fontname: micro + Copyright: Public domain font. Share and enjoy. + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 3 h= 5 x= 1 y= 5 dx= 4 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 4 h= 5 x= 0 y= 0 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_micro[855] U8G_SECTION(".progmem.u8g_font_micro") = { + 1,4,5,0,0,5,0,255,1,245,32,255,0,5,0,5, + 0,7,0,64,2,37,69,192,192,192,0,192,5,50,66,160, + 160,2,53,69,160,224,160,224,160,2,53,69,64,224,192,96, + 224,3,52,68,160,96,192,160,2,53,69,64,64,224,192,64, + 21,34,66,64,192,18,37,69,64,128,128,128,64,2,37,69, + 128,64,64,64,128,2,53,69,160,64,224,64,160,3,51,67, + 64,224,64,2,34,66,64,192,4,49,65,224,2,34,66,192, + 192,2,53,69,32,32,64,64,128,2,53,69,64,160,160,160, + 64,2,37,69,64,192,64,64,64,2,53,69,192,32,64,128, + 224,2,53,69,192,32,96,32,224,2,53,69,160,160,160,224, + 32,2,53,69,224,128,192,32,192,2,53,69,96,128,224,160, + 224,2,53,69,224,32,32,64,64,2,53,69,224,160,224,160, + 224,2,53,69,224,160,224,32,192,2,37,69,192,192,0,192, + 192,2,37,69,192,192,0,64,192,2,53,69,32,64,128,64, + 32,3,51,67,224,0,224,2,53,69,128,64,32,64,128,2, + 53,69,224,32,96,0,64,2,53,69,96,160,192,128,96,2, + 53,69,224,160,224,160,160,2,53,69,224,160,192,160,224,2, + 53,69,224,128,128,128,224,2,53,69,192,160,160,160,192,2, + 53,69,224,128,224,128,224,2,53,69,224,128,224,128,128,2, + 53,69,224,128,160,160,224,2,53,69,160,160,224,160,160,2, + 53,69,224,64,64,64,224,2,53,69,32,32,32,160,224,2, + 53,69,160,160,192,160,160,2,53,69,128,128,128,128,224,2, + 53,69,160,224,160,160,160,2,53,69,224,160,160,160,160,2, + 53,69,224,160,160,160,224,2,53,69,224,160,224,128,128,2, + 53,69,224,160,160,192,96,2,53,69,224,160,192,160,160,2, + 53,69,224,128,224,32,224,2,53,69,224,64,64,64,64,2, + 53,69,160,160,160,160,224,2,53,69,160,160,160,160,64,2, + 53,69,160,160,160,224,160,2,53,69,160,224,64,224,160,2, + 53,69,160,160,224,64,64,2,53,69,224,32,64,128,224,18, + 37,69,192,128,128,128,192,2,53,69,128,128,64,64,32,2, + 37,69,192,64,64,64,192,5,50,66,64,160,2,49,65,224, + 21,34,66,128,192,2,52,68,224,96,160,224,2,53,69,128, + 224,160,160,224,2,52,68,224,128,128,224,2,53,69,32,224, + 160,160,224,2,52,68,224,160,192,224,2,53,69,96,128,192, + 128,128,2,52,68,224,160,96,224,2,53,69,128,224,160,160, + 160,18,20,68,128,128,128,128,2,52,68,32,32,160,224,2, + 53,69,128,160,192,192,160,2,37,69,192,64,64,64,64,2, + 52,68,160,224,160,160,2,52,68,224,160,160,160,2,52,68, + 224,160,160,224,2,52,68,224,160,224,128,2,52,68,224,160, + 224,32,2,52,68,224,160,128,128,2,52,68,224,192,96,224, + 2,53,69,64,224,64,64,96,2,52,68,160,160,160,224,2, + 52,68,160,160,160,64,2,52,68,160,160,224,160,2,52,68, + 160,64,64,160,2,52,68,160,160,96,192,2,52,68,224,96, + 192,224,2,53,69,96,64,192,64,96,18,21,69,128,128,128, + 128,128,2,53,69,192,64,96,64,192,4,50,66,192,96,2, + 53,69,96,64,64,64,192,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--11-80-100-100-P-66-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=11 h=11 x= 2 y= 6 dx=12 dy= 0 ascent=11 len=22 + Font Bounding box w=17 h=19 x=-2 y=-5 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB08[2760] U8G_SECTION(".progmem.u8g_font_ncenB08") = { + 0,17,19,254,251,8,1,193,3,159,32,255,254,11,254,8, + 254,0,0,0,3,0,1,2,8,8,3,0,0,192,192,192, + 128,128,0,192,192,3,3,3,6,1,5,160,160,160,7,8, + 8,8,0,0,20,20,126,40,40,252,80,80,5,10,10,6, + 0,255,32,120,168,160,240,120,40,168,240,32,10,8,16,11, + 0,0,102,0,218,0,212,0,213,128,107,64,11,64,19,64, + 17,128,8,8,8,9,0,0,48,104,104,48,88,204,207,118, + 1,3,3,4,1,5,128,128,128,4,10,10,5,0,254,16, + 32,96,192,192,192,192,96,32,16,4,10,10,5,0,254,128, + 64,96,48,48,48,48,96,64,128,5,5,5,6,0,3,32, + 168,112,168,32,5,5,5,6,0,1,32,32,248,32,32,2, + 4,4,3,0,254,192,192,64,128,3,1,1,4,0,3,224, + 2,2,2,3,0,0,192,192,4,8,8,5,0,0,16,16, + 32,32,64,64,128,128,5,8,8,6,0,0,112,216,216,216, + 216,216,216,112,4,8,8,6,1,0,96,224,96,96,96,96, + 96,240,5,8,8,6,0,0,112,216,216,24,48,64,248,248, + 5,8,8,6,0,0,112,216,216,48,24,216,216,112,5,8, + 8,6,0,0,56,56,88,88,152,248,24,56,5,8,8,6, + 0,0,248,240,128,240,24,216,216,112,5,8,8,6,0,0, + 112,216,192,240,216,216,216,112,4,8,8,6,0,0,240,240, + 16,32,32,96,96,96,5,8,8,6,0,0,112,216,216,112, + 216,216,216,112,5,8,8,6,0,0,112,216,216,216,120,24, + 216,112,2,5,5,3,0,0,192,192,0,192,192,2,7,7, + 3,0,254,192,192,0,192,192,64,128,6,5,5,7,0,1, + 12,48,192,48,12,5,3,3,6,0,2,248,0,248,6,5, + 5,7,0,1,192,48,12,48,192,5,8,8,6,0,0,112, + 216,24,48,64,0,96,96,9,10,20,10,0,255,28,0,99, + 0,65,0,158,128,182,128,182,128,155,0,64,0,96,0,30, + 0,9,8,16,8,255,0,8,0,28,0,28,0,38,0,38, + 0,127,0,67,0,231,128,7,8,8,8,0,0,252,102,102, + 124,102,102,102,252,7,8,8,8,0,0,58,70,194,192,192, + 194,66,60,8,8,8,9,0,0,252,98,99,99,99,99,98, + 252,6,8,8,7,0,0,252,100,104,120,104,100,100,252,6, + 8,8,7,0,0,252,100,100,104,120,104,96,240,7,8,8, + 8,0,0,58,70,194,192,206,198,70,58,9,8,16,10,0, + 0,247,128,99,0,99,0,127,0,99,0,99,0,99,0,247, + 128,4,8,8,5,0,0,240,96,96,96,96,96,96,240,6, + 8,8,7,0,0,60,24,24,24,216,216,152,112,9,8,16, + 9,0,0,243,0,98,0,100,0,104,0,124,0,102,0,99, + 0,243,128,6,8,8,7,0,0,240,96,96,96,96,100,100, + 252,11,8,16,12,0,0,241,224,113,192,90,192,90,192,90, + 192,76,192,76,192,237,224,8,8,8,9,0,0,199,98,114, + 122,94,78,70,226,7,8,8,8,0,0,56,68,198,198,198, + 198,68,56,7,8,8,8,0,0,252,102,102,102,124,96,96, + 240,8,9,9,8,0,255,56,68,198,198,198,246,108,61,6, + 8,8,8,9,0,0,252,102,102,100,124,102,102,247,6,8, + 8,7,0,0,116,204,196,240,60,140,204,184,6,8,8,7, + 0,0,252,180,180,48,48,48,48,120,8,8,8,9,0,0, + 247,98,98,98,98,98,98,60,8,8,8,9,0,0,247,98, + 98,52,52,52,24,24,11,8,16,12,0,0,246,224,102,64, + 102,64,107,64,107,64,59,128,49,128,49,128,8,8,8,9, + 0,0,247,98,116,56,28,46,70,239,8,8,8,9,0,0, + 247,98,52,52,24,24,24,60,6,8,8,7,0,0,252,140, + 28,56,112,224,196,252,3,10,10,4,0,254,224,192,192,192, + 192,192,192,192,192,224,4,8,8,5,0,0,128,128,64,64, + 32,32,16,16,3,10,10,4,0,254,224,96,96,96,96,96, + 96,96,96,224,5,6,6,6,0,2,32,32,112,80,136,136, + 6,1,1,6,0,254,252,3,2,2,4,0,6,192,96,4, + 5,5,5,0,0,224,48,112,176,240,6,8,8,7,0,0, + 192,192,192,216,236,204,204,184,5,5,5,6,0,0,112,200, + 192,200,112,6,8,8,7,0,0,28,12,12,124,204,204,220, + 108,5,5,5,6,0,0,112,216,248,192,120,5,8,8,5, + 0,0,56,104,96,240,96,96,96,240,6,8,8,6,0,254, + 8,112,216,216,112,124,140,248,6,8,8,7,0,0,192,192, + 192,216,236,204,204,204,4,8,8,5,0,0,96,96,0,224, + 96,96,96,240,3,10,10,5,0,254,96,96,0,224,96,96, + 96,96,96,192,6,8,8,6,0,0,192,192,192,216,240,240, + 216,220,4,8,8,5,0,0,224,96,96,96,96,96,96,240, + 10,5,10,11,0,0,217,128,238,192,204,192,204,192,204,192, + 6,5,5,7,0,0,216,236,204,204,204,6,5,5,7,0, + 0,120,204,204,204,120,6,7,7,7,0,254,216,236,204,204, + 248,192,224,7,7,7,7,0,254,124,204,204,220,108,12,30, + 4,5,5,5,0,0,208,240,192,192,192,4,5,5,5,0, + 0,112,192,240,48,224,3,7,7,4,0,0,64,192,224,192, + 192,192,96,6,5,5,7,0,0,204,204,204,220,108,6,5, + 5,7,0,0,236,104,104,48,48,9,5,10,10,0,0,237, + 128,109,0,109,0,54,0,54,0,6,5,5,7,0,0,236, + 104,48,88,220,6,7,7,7,0,254,236,104,104,48,48,224, + 192,5,5,5,6,0,0,248,176,96,200,248,4,10,10,5, + 0,254,48,96,96,96,192,96,96,96,96,48,1,8,8,6, + 2,0,128,128,128,128,128,128,128,128,4,10,10,5,0,254, + 192,96,96,96,48,96,96,96,96,192,6,2,2,7,0,3, + 116,184,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,3,0,1,2,8,8,3,0,254,192, + 192,0,64,64,192,192,192,5,7,7,6,0,255,8,120,208, + 208,232,112,64,7,8,8,8,0,0,60,100,96,252,48,98, + 190,220,7,5,5,8,0,1,186,108,108,108,186,8,8,8, + 9,0,0,247,98,52,54,24,62,24,60,1,8,8,6,2, + 0,128,128,128,0,128,128,128,128,4,10,10,5,0,254,112, + 144,192,96,176,208,96,48,144,224,3,2,2,4,0,6,160, + 160,8,8,8,9,0,0,60,66,157,165,161,157,66,60,3, + 6,6,4,0,2,192,32,224,160,0,224,6,5,5,7,0, + 0,36,108,216,108,36,5,3,3,6,0,2,248,8,8,3, + 1,1,4,0,3,224,8,8,8,9,0,0,60,66,189,165, + 185,173,66,60,4,1,1,5,0,6,240,3,4,4,4,0, + 4,64,160,160,64,5,5,5,6,0,1,32,248,32,0,248, + 3,4,4,3,0,4,96,160,64,224,3,4,4,3,0,4, + 224,64,32,192,3,2,2,4,0,6,96,192,6,7,7,7, + 0,254,204,204,204,220,236,192,192,7,8,8,8,0,0,126, + 244,244,116,20,20,20,62,2,2,2,3,0,3,192,192,2, + 3,3,4,1,254,128,64,192,3,4,4,3,0,4,64,192, + 64,224,4,6,6,5,0,2,96,144,144,96,0,240,6,5, + 5,7,0,0,144,216,108,216,144,8,8,8,9,0,0,68, + 196,72,232,18,22,47,34,8,8,8,9,0,0,68,196,72, + 232,19,21,34,39,8,8,8,9,0,0,228,68,40,200,18, + 22,47,34,5,8,8,6,0,254,48,48,0,16,96,192,216, + 112,9,11,22,8,255,0,48,0,24,0,0,0,8,0,28, + 0,28,0,38,0,38,0,127,0,67,0,231,128,9,11,22, + 8,255,0,6,0,12,0,0,0,8,0,28,0,28,0,38, + 0,38,0,127,0,67,0,231,128,9,11,22,8,255,0,28, + 0,54,0,0,0,8,0,28,0,28,0,38,0,38,0,127, + 0,67,0,231,128,9,11,22,8,255,0,26,0,44,0,0, + 0,8,0,28,0,28,0,38,0,38,0,127,0,67,0,231, + 128,9,11,22,8,255,0,20,0,20,0,0,0,8,0,28, + 0,28,0,38,0,38,0,127,0,67,0,231,128,9,11,22, + 8,255,0,24,0,36,0,24,0,8,0,28,0,28,0,38, + 0,38,0,127,0,67,0,231,128,10,8,16,11,0,0,63, + 192,22,64,22,128,39,128,62,128,70,64,70,64,239,192,7, + 10,10,8,0,254,58,70,194,192,192,194,66,60,16,48,6, + 11,11,7,0,0,96,48,0,252,100,104,120,104,100,100,252, + 6,11,11,7,0,0,24,48,0,252,100,104,120,104,100,100, + 252,6,11,11,7,0,0,56,108,0,252,100,104,120,104,100, + 100,252,6,11,11,7,0,0,40,40,0,252,100,104,120,104, + 100,100,252,4,11,11,5,0,0,192,96,0,240,96,96,96, + 96,96,96,240,4,11,11,5,0,0,48,96,0,240,96,96, + 96,96,96,96,240,5,11,11,5,0,0,112,216,0,240,96, + 96,96,96,96,96,240,4,11,11,5,0,0,80,80,0,240, + 96,96,96,96,96,96,240,8,8,8,9,0,0,252,98,99, + 243,99,99,98,252,8,11,11,9,0,0,26,44,0,199,98, + 114,122,94,78,70,226,7,11,11,8,0,0,48,24,0,56, + 68,198,198,198,198,68,56,7,11,11,8,0,0,24,48,0, + 56,68,198,198,198,198,68,56,7,11,11,8,0,0,56,108, + 0,56,68,198,198,198,198,68,56,7,11,11,8,0,0,52, + 88,0,56,68,198,198,198,198,68,56,7,11,11,8,0,0, + 40,40,0,56,68,198,198,198,198,68,56,5,5,5,6,0, + 1,216,112,32,112,216,7,8,8,8,0,0,58,68,206,214, + 214,230,68,184,8,11,11,9,0,0,48,24,0,247,98,98, + 98,98,98,98,60,8,11,11,9,0,0,12,24,0,247,98, + 98,98,98,98,98,60,8,11,11,9,0,0,28,54,0,247, + 98,98,98,98,98,98,60,8,11,11,9,0,0,20,20,0, + 247,98,98,98,98,98,98,60,8,11,11,9,0,0,12,24, + 0,247,98,52,52,24,24,24,60,7,8,8,8,0,0,224, + 124,102,102,102,124,96,240,7,8,8,8,0,0,60,102,102, + 108,102,102,102,236,4,8,8,5,0,0,192,96,0,224,48, + 112,176,240,4,8,8,5,0,0,48,96,0,224,48,112,176, + 240,5,9,9,5,0,0,32,112,216,0,224,48,112,176,240, + 5,8,8,5,0,0,104,176,0,224,48,112,176,240,4,8, + 8,5,0,0,160,160,0,224,48,112,176,240,4,8,8,5, + 0,0,96,144,96,224,48,112,176,240,8,5,5,9,0,0, + 238,155,127,216,239,5,7,7,6,0,254,112,200,192,200,112, + 32,96,5,8,8,6,0,0,96,48,0,112,216,248,192,120, + 5,8,8,6,0,0,48,96,0,112,216,248,192,120,5,9, + 9,6,0,0,32,112,216,0,112,216,248,192,120,5,8,8, + 6,0,0,80,80,0,112,216,248,192,120,4,8,8,5,0, + 0,192,96,0,224,96,96,96,240,4,8,8,5,0,0,48, + 96,0,224,96,96,96,240,5,9,9,5,0,0,32,112,216, + 0,224,96,96,96,240,4,8,8,5,0,0,160,160,0,224, + 96,96,96,240,6,8,8,7,0,0,200,112,144,120,204,204, + 204,120,6,8,8,7,0,0,104,176,0,216,236,204,204,204, + 6,8,8,7,0,0,96,48,0,120,204,204,204,120,6,8, + 8,7,0,0,24,48,0,120,204,204,204,120,6,9,9,7, + 0,0,32,112,216,0,120,204,204,204,120,6,8,8,7,0, + 0,52,88,0,120,204,204,204,120,6,8,8,7,0,0,80, + 80,0,120,204,204,204,120,5,5,5,6,0,1,32,0,248, + 0,32,6,7,7,7,0,255,4,120,220,236,204,120,128,6, + 8,8,7,0,0,96,48,0,204,204,204,220,108,6,8,8, + 7,0,0,24,48,0,204,204,204,220,108,6,9,9,7,0, + 0,32,112,216,0,204,204,204,220,108,6,8,8,7,0,0, + 80,80,0,204,204,204,220,108,6,10,10,7,0,254,24,48, + 0,236,104,104,48,48,224,192,6,10,10,7,0,254,192,192, + 192,216,236,204,204,248,192,224,6,10,10,7,0,254,80,80, + 0,236,104,104,48,48,224,192}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--11-80-100-100-P-66-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=11 h=10 x= 2 y= 6 dx=12 dy= 0 ascent= 9 len=20 + Font Bounding box w=17 h=19 x=-2 y=-5 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB08r[1315] U8G_SECTION(".progmem.u8g_font_ncenB08r") = { + 0,17,19,254,251,8,1,193,3,159,32,127,254,9,254,8, + 254,0,0,0,3,0,1,2,8,8,3,0,0,192,192,192, + 128,128,0,192,192,3,3,3,6,1,5,160,160,160,7,8, + 8,8,0,0,20,20,126,40,40,252,80,80,5,10,10,6, + 0,255,32,120,168,160,240,120,40,168,240,32,10,8,16,11, + 0,0,102,0,218,0,212,0,213,128,107,64,11,64,19,64, + 17,128,8,8,8,9,0,0,48,104,104,48,88,204,207,118, + 1,3,3,4,1,5,128,128,128,4,10,10,5,0,254,16, + 32,96,192,192,192,192,96,32,16,4,10,10,5,0,254,128, + 64,96,48,48,48,48,96,64,128,5,5,5,6,0,3,32, + 168,112,168,32,5,5,5,6,0,1,32,32,248,32,32,2, + 4,4,3,0,254,192,192,64,128,3,1,1,4,0,3,224, + 2,2,2,3,0,0,192,192,4,8,8,5,0,0,16,16, + 32,32,64,64,128,128,5,8,8,6,0,0,112,216,216,216, + 216,216,216,112,4,8,8,6,1,0,96,224,96,96,96,96, + 96,240,5,8,8,6,0,0,112,216,216,24,48,64,248,248, + 5,8,8,6,0,0,112,216,216,48,24,216,216,112,5,8, + 8,6,0,0,56,56,88,88,152,248,24,56,5,8,8,6, + 0,0,248,240,128,240,24,216,216,112,5,8,8,6,0,0, + 112,216,192,240,216,216,216,112,4,8,8,6,0,0,240,240, + 16,32,32,96,96,96,5,8,8,6,0,0,112,216,216,112, + 216,216,216,112,5,8,8,6,0,0,112,216,216,216,120,24, + 216,112,2,5,5,3,0,0,192,192,0,192,192,2,7,7, + 3,0,254,192,192,0,192,192,64,128,6,5,5,7,0,1, + 12,48,192,48,12,5,3,3,6,0,2,248,0,248,6,5, + 5,7,0,1,192,48,12,48,192,5,8,8,6,0,0,112, + 216,24,48,64,0,96,96,9,10,20,10,0,255,28,0,99, + 0,65,0,158,128,182,128,182,128,155,0,64,0,96,0,30, + 0,9,8,16,8,255,0,8,0,28,0,28,0,38,0,38, + 0,127,0,67,0,231,128,7,8,8,8,0,0,252,102,102, + 124,102,102,102,252,7,8,8,8,0,0,58,70,194,192,192, + 194,66,60,8,8,8,9,0,0,252,98,99,99,99,99,98, + 252,6,8,8,7,0,0,252,100,104,120,104,100,100,252,6, + 8,8,7,0,0,252,100,100,104,120,104,96,240,7,8,8, + 8,0,0,58,70,194,192,206,198,70,58,9,8,16,10,0, + 0,247,128,99,0,99,0,127,0,99,0,99,0,99,0,247, + 128,4,8,8,5,0,0,240,96,96,96,96,96,96,240,6, + 8,8,7,0,0,60,24,24,24,216,216,152,112,9,8,16, + 9,0,0,243,0,98,0,100,0,104,0,124,0,102,0,99, + 0,243,128,6,8,8,7,0,0,240,96,96,96,96,100,100, + 252,11,8,16,12,0,0,241,224,113,192,90,192,90,192,90, + 192,76,192,76,192,237,224,8,8,8,9,0,0,199,98,114, + 122,94,78,70,226,7,8,8,8,0,0,56,68,198,198,198, + 198,68,56,7,8,8,8,0,0,252,102,102,102,124,96,96, + 240,8,9,9,8,0,255,56,68,198,198,198,246,108,61,6, + 8,8,8,9,0,0,252,102,102,100,124,102,102,247,6,8, + 8,7,0,0,116,204,196,240,60,140,204,184,6,8,8,7, + 0,0,252,180,180,48,48,48,48,120,8,8,8,9,0,0, + 247,98,98,98,98,98,98,60,8,8,8,9,0,0,247,98, + 98,52,52,52,24,24,11,8,16,12,0,0,246,224,102,64, + 102,64,107,64,107,64,59,128,49,128,49,128,8,8,8,9, + 0,0,247,98,116,56,28,46,70,239,8,8,8,9,0,0, + 247,98,52,52,24,24,24,60,6,8,8,7,0,0,252,140, + 28,56,112,224,196,252,3,10,10,4,0,254,224,192,192,192, + 192,192,192,192,192,224,4,8,8,5,0,0,128,128,64,64, + 32,32,16,16,3,10,10,4,0,254,224,96,96,96,96,96, + 96,96,96,224,5,6,6,6,0,2,32,32,112,80,136,136, + 6,1,1,6,0,254,252,3,2,2,4,0,6,192,96,4, + 5,5,5,0,0,224,48,112,176,240,6,8,8,7,0,0, + 192,192,192,216,236,204,204,184,5,5,5,6,0,0,112,200, + 192,200,112,6,8,8,7,0,0,28,12,12,124,204,204,220, + 108,5,5,5,6,0,0,112,216,248,192,120,5,8,8,5, + 0,0,56,104,96,240,96,96,96,240,6,8,8,6,0,254, + 8,112,216,216,112,124,140,248,6,8,8,7,0,0,192,192, + 192,216,236,204,204,204,4,8,8,5,0,0,96,96,0,224, + 96,96,96,240,3,10,10,5,0,254,96,96,0,224,96,96, + 96,96,96,192,6,8,8,6,0,0,192,192,192,216,240,240, + 216,220,4,8,8,5,0,0,224,96,96,96,96,96,96,240, + 10,5,10,11,0,0,217,128,238,192,204,192,204,192,204,192, + 6,5,5,7,0,0,216,236,204,204,204,6,5,5,7,0, + 0,120,204,204,204,120,6,7,7,7,0,254,216,236,204,204, + 248,192,224,7,7,7,7,0,254,124,204,204,220,108,12,30, + 4,5,5,5,0,0,208,240,192,192,192,4,5,5,5,0, + 0,112,192,240,48,224,3,7,7,4,0,0,64,192,224,192, + 192,192,96,6,5,5,7,0,0,204,204,204,220,108,6,5, + 5,7,0,0,236,104,104,48,48,9,5,10,10,0,0,237, + 128,109,0,109,0,54,0,54,0,6,5,5,7,0,0,236, + 104,48,88,220,6,7,7,7,0,254,236,104,104,48,48,224, + 192,5,5,5,6,0,0,248,176,96,200,248,4,10,10,5, + 0,254,48,96,96,96,192,96,96,96,96,48,1,8,8,6, + 2,0,128,128,128,128,128,128,128,128,4,10,10,5,0,254, + 192,96,96,96,48,96,96,96,96,192,6,2,2,7,0,3, + 116,184,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--14-100-100-100-P-87-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=15 h=15 x= 3 y= 8 dx=15 dy= 0 ascent=15 len=30 + Font Bounding box w=20 h=25 x=-2 y=-6 + Calculated Min Values x=-2 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =15 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB10[4003] U8G_SECTION(".progmem.u8g_font_ncenB10") = { + 0,20,25,254,250,11,2,24,5,41,32,255,253,15,253,11, + 253,0,0,0,4,0,1,2,11,11,4,1,0,192,192,192, + 192,192,128,128,0,192,192,192,3,4,4,5,1,7,160,160, + 160,160,7,10,10,8,0,0,20,20,20,126,40,40,252,80, + 80,80,7,13,13,8,0,255,16,124,214,150,208,240,124,30, + 22,210,214,124,16,12,11,22,13,0,0,48,128,111,0,201, + 0,202,0,210,0,100,96,4,208,9,144,9,144,17,160,16, + 192,12,11,22,13,0,0,30,0,51,0,51,0,50,0,28, + 0,60,224,78,64,199,128,195,144,227,224,124,192,1,4,4, + 3,1,7,128,128,128,128,4,13,13,5,0,254,16,32,96, + 64,192,192,192,192,192,64,96,32,16,4,13,13,5,0,254, + 128,64,96,32,48,48,48,48,48,32,96,64,128,5,5,5, + 6,0,6,32,168,112,168,32,7,7,7,8,0,1,16,16, + 16,254,16,16,16,2,5,5,4,1,254,192,192,192,64,128, + 4,2,2,5,0,3,240,240,2,3,3,4,1,0,192,192, + 192,4,11,11,5,0,0,16,16,16,32,32,32,64,64,64, + 128,128,7,11,11,8,0,0,56,108,198,198,198,198,198,198, + 198,108,56,5,11,11,8,1,0,48,240,48,48,48,48,48, + 48,48,48,120,7,11,11,8,0,0,120,206,198,6,6,12, + 24,48,98,254,254,7,11,11,8,0,0,120,206,198,6,12, + 60,6,6,198,206,120,7,11,11,8,0,0,12,28,28,44, + 44,76,76,254,12,12,30,7,11,11,8,0,0,126,124,64, + 64,92,110,6,6,198,206,120,7,11,11,8,0,0,60,102, + 198,192,220,238,198,198,198,230,120,7,11,11,8,0,0,254, + 254,132,140,12,24,24,24,48,48,48,7,11,11,8,0,0, + 120,230,198,198,244,60,94,198,198,206,60,7,11,11,8,0, + 0,60,206,198,198,198,238,118,6,198,204,120,2,7,7,4, + 1,0,192,192,192,0,192,192,192,2,9,9,4,1,254,192, + 192,192,0,192,192,192,64,128,7,7,7,8,0,1,2,14, + 56,224,56,14,2,7,3,3,8,0,3,254,0,254,7,7, + 7,8,0,1,128,224,56,14,56,224,128,6,11,11,7,0, + 0,120,204,204,12,24,48,32,0,48,48,48,13,11,22,14, + 0,0,15,192,56,112,99,152,108,216,204,216,217,152,217,176, + 219,176,205,192,96,16,63,224,10,11,22,11,0,0,12,0, + 12,0,22,0,22,0,18,0,35,0,35,0,63,0,65,128, + 65,128,227,192,9,11,22,10,0,0,254,0,99,0,99,0, + 99,0,102,0,127,0,97,128,97,128,97,128,99,128,254,0, + 10,11,22,11,0,0,31,64,112,192,96,64,192,64,192,0, + 192,0,192,0,192,0,96,64,112,192,31,0,11,11,22,12, + 0,0,255,0,97,192,96,192,96,96,96,96,96,96,96,96, + 96,96,96,192,97,192,255,0,9,11,22,10,0,0,255,128, + 97,128,96,128,100,128,100,0,124,0,100,0,100,128,96,128, + 97,128,255,128,9,11,22,10,0,0,255,128,97,128,96,128, + 100,128,100,0,124,0,100,0,100,0,96,0,96,0,240,0, + 11,11,22,12,0,0,31,64,112,192,96,64,192,64,192,0, + 192,0,195,224,192,192,96,192,113,192,30,64,11,11,22,12, + 0,0,241,224,96,192,96,192,96,192,96,192,127,192,96,192, + 96,192,96,192,96,192,241,224,4,11,11,7,1,0,240,96, + 96,96,96,96,96,96,96,96,240,7,11,11,9,0,0,30, + 12,12,12,12,12,12,204,204,156,112,11,11,22,12,0,0, + 243,192,97,0,98,0,100,0,104,0,124,0,110,0,103,0, + 99,128,97,192,243,224,9,11,22,10,0,0,240,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,128,96,128,97,128, + 255,128,13,11,22,14,0,0,240,120,112,112,112,112,88,176, + 88,176,88,176,77,48,77,48,77,48,70,48,230,120,11,11, + 22,12,0,0,224,224,112,64,120,64,92,64,76,64,70,64, + 71,64,67,192,65,192,64,192,224,64,11,11,22,12,0,0, + 31,0,113,192,96,192,192,96,192,96,192,96,192,96,192,96, + 96,192,113,192,31,0,9,11,22,10,0,0,255,0,99,128, + 97,128,97,128,99,128,126,0,96,0,96,0,96,0,96,0, + 240,0,11,14,28,12,0,253,31,0,113,192,96,192,192,96, + 192,96,192,96,192,96,220,96,102,192,115,192,31,0,3,32, + 3,160,1,192,11,11,22,12,0,0,255,0,99,128,97,128, + 97,128,99,0,126,0,99,0,99,0,97,128,97,160,241,192, + 9,11,22,10,0,0,61,0,227,0,193,0,193,0,240,0, + 126,0,15,128,129,128,129,128,195,128,190,0,10,11,22,11, + 0,0,255,192,204,192,140,64,140,64,12,0,12,0,12,0, + 12,0,12,0,12,0,30,0,11,11,22,12,0,0,240,224, + 96,64,96,64,96,64,96,64,96,64,96,64,96,64,96,64, + 48,128,31,0,10,11,22,11,0,0,241,192,96,128,96,128, + 49,0,49,0,49,0,26,0,26,0,26,0,12,0,12,0, + 13,11,22,14,0,0,247,184,99,16,99,16,99,16,53,160, + 53,160,53,160,53,160,24,192,24,192,24,192,11,11,22,12, + 0,0,249,224,112,192,48,128,25,0,13,0,14,0,22,0, + 19,0,33,128,97,192,243,224,10,11,22,11,0,0,241,192, + 96,128,49,0,49,0,26,0,26,0,12,0,12,0,12,0, + 12,0,30,0,8,11,11,9,0,0,255,195,135,142,12,24, + 48,113,225,195,255,4,13,13,5,0,254,240,192,192,192,192, + 192,192,192,192,192,192,192,240,6,11,11,7,0,0,128,128, + 64,64,32,32,16,16,8,8,4,4,13,13,5,0,254,240, + 48,48,48,48,48,48,48,48,48,48,48,240,7,7,7,8, + 0,4,16,16,56,40,108,68,198,7,1,1,7,0,254,254, + 4,3,3,6,1,8,192,96,16,8,7,7,9,0,0,60, + 102,6,62,198,206,119,9,11,22,10,0,0,224,0,96,0, + 96,0,96,0,110,0,115,0,97,128,97,128,97,128,99,0, + 94,0,7,7,7,8,0,0,60,102,198,192,194,102,60,9, + 11,22,10,0,0,7,0,3,0,3,0,3,0,59,0,103, + 0,195,0,195,0,195,0,103,0,59,128,8,7,7,9,0, + 0,60,102,195,255,192,99,62,6,11,11,6,0,0,56,108, + 108,96,248,96,96,96,96,96,240,7,11,11,8,0,253,6, + 124,198,198,124,128,252,126,130,134,124,9,11,22,10,0,0, + 224,0,96,0,96,0,96,0,110,0,115,0,99,0,99,0, + 99,0,99,0,247,128,4,10,10,5,0,0,96,96,0,224, + 96,96,96,96,96,240,5,13,13,5,254,253,24,24,0,56, + 24,24,24,24,24,24,24,216,112,8,11,11,9,0,0,224, + 96,96,96,103,102,108,120,108,102,231,4,11,11,5,0,0, + 224,96,96,96,96,96,96,96,96,96,240,14,7,14,15,0, + 0,238,112,115,152,99,24,99,24,99,24,99,24,247,188,9, + 7,14,10,0,0,238,0,115,0,99,0,99,0,99,0,99, + 0,247,128,8,7,7,9,0,0,60,102,195,195,195,102,60, + 9,10,20,10,0,253,238,0,115,0,97,128,97,128,97,128, + 115,0,110,0,96,0,96,0,240,0,9,10,20,9,0,253, + 61,0,103,0,195,0,195,0,195,0,103,0,59,0,3,0, + 3,0,7,128,7,7,7,7,0,0,238,118,96,96,96,96, + 240,6,7,7,7,0,0,124,196,224,120,28,140,248,6,10, + 10,6,0,0,32,32,96,248,96,96,96,100,100,56,9,7, + 14,10,0,0,231,0,99,0,99,0,99,0,99,0,103,0, + 59,128,8,7,7,7,255,0,247,98,98,52,52,24,24,13, + 7,14,12,255,0,247,184,99,16,99,16,53,160,53,160,24, + 192,24,192,8,7,7,9,0,0,231,102,60,24,60,70,231, + 8,10,10,7,255,253,247,98,98,52,52,24,24,16,208,224, + 6,7,7,7,0,0,252,140,24,48,96,196,252,5,13,13, + 6,0,254,24,32,96,96,96,64,128,64,96,96,96,32,24, + 1,11,11,8,3,0,128,128,128,128,128,128,128,128,128,128, + 128,5,13,13,6,0,254,192,32,48,48,48,16,8,16,48, + 48,48,32,192,7,2,2,8,0,4,118,220,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0, + 4,0,1,2,11,11,5,1,253,192,192,192,0,64,64,192, + 192,192,192,192,7,9,9,8,0,255,4,60,110,206,208,210, + 118,60,32,8,11,11,9,0,0,28,38,102,96,252,48,48, + 32,225,191,222,8,8,8,9,0,2,153,126,102,195,195,102, + 126,153,10,11,22,11,0,0,241,192,96,128,49,0,49,0, + 26,0,26,0,63,0,12,0,63,0,12,0,30,0,1,11, + 11,8,3,0,128,128,128,128,0,0,128,128,128,128,128,6, + 13,13,7,0,254,56,108,76,96,120,156,204,228,120,28,204, + 200,112,5,2,2,7,1,8,216,216,11,11,22,12,0,0, + 14,0,49,128,64,64,79,64,153,32,144,32,153,32,78,64, + 64,64,49,128,14,0,5,7,7,6,0,4,224,48,112,176, + 216,0,248,7,5,5,8,0,1,54,108,216,108,54,7,4, + 4,8,0,2,254,2,2,2,4,2,2,5,0,3,240,240, + 11,11,22,12,0,0,14,0,49,128,64,64,94,64,137,32, + 142,32,138,32,91,64,64,64,49,128,14,0,5,1,1,7, + 1,8,248,4,4,4,6,1,7,96,144,144,96,7,7,7, + 8,0,1,16,16,254,16,16,0,254,5,6,6,5,255,5, + 112,152,24,48,96,248,5,6,6,5,255,5,112,152,48,24, + 152,112,4,3,3,6,1,8,48,96,128,9,10,20,10,0, + 253,247,0,99,0,99,0,99,0,99,0,103,0,123,128,64, + 0,96,0,96,0,9,11,22,10,0,0,127,128,251,0,251, + 0,251,0,251,0,123,0,27,0,27,0,27,0,27,0,63, + 128,2,2,2,5,1,4,192,192,3,3,3,5,1,253,64, + 32,224,4,6,6,5,0,5,96,224,96,96,96,240,5,7, + 7,6,0,4,112,216,216,216,112,0,248,7,5,5,8,0, + 1,216,108,54,108,216,11,11,22,12,0,0,97,0,227,0, + 98,0,102,0,100,0,252,192,9,192,26,192,20,192,55,224, + 32,192,11,11,22,12,0,0,97,0,227,0,98,0,102,0, + 100,0,253,192,10,96,24,96,16,192,49,128,35,224,12,11, + 22,12,255,0,112,128,153,128,49,0,27,0,154,0,118,96, + 4,224,13,96,10,96,27,240,16,96,6,11,11,7,0,253, + 48,48,48,0,16,48,96,192,204,204,120,10,15,30,11,0, + 0,48,0,24,0,4,0,0,0,12,0,12,0,22,0,22, + 0,18,0,35,0,35,0,63,0,65,128,65,128,227,192,10, + 15,30,11,0,0,3,0,6,0,8,0,0,0,12,0,12, + 0,22,0,22,0,18,0,35,0,35,0,63,0,65,128,65, + 128,227,192,10,15,30,11,0,0,4,0,14,0,17,0,0, + 0,12,0,12,0,22,0,22,0,18,0,35,0,35,0,63, + 0,65,128,65,128,227,192,10,14,28,11,0,0,29,0,46, + 0,0,0,12,0,12,0,22,0,22,0,18,0,35,0,35, + 0,63,0,65,128,65,128,227,192,10,14,28,11,0,0,51, + 0,51,0,0,0,12,0,12,0,22,0,22,0,18,0,35, + 0,35,0,63,0,65,128,65,128,227,192,10,15,30,11,0, + 0,12,0,18,0,12,0,0,0,12,0,12,0,22,0,22, + 0,18,0,35,0,35,0,63,0,65,128,65,128,227,192,15, + 11,22,15,255,0,15,254,5,134,5,130,9,146,9,144,17, + 240,31,144,33,146,33,130,65,134,227,254,10,14,28,11,0, + 253,31,64,112,192,96,64,192,64,192,0,192,0,192,0,192, + 0,96,64,112,192,31,0,4,0,2,0,14,0,9,15,30, + 10,0,0,24,0,12,0,2,0,0,0,255,128,97,128,96, + 128,100,128,100,0,124,0,100,0,100,128,96,128,97,128,255, + 128,9,15,30,10,0,0,3,0,6,0,8,0,0,0,255, + 128,97,128,96,128,100,128,100,0,124,0,100,0,100,128,96, + 128,97,128,255,128,9,15,30,10,0,0,4,0,14,0,17, + 0,0,0,255,128,97,128,96,128,100,128,100,0,124,0,100, + 0,100,128,96,128,97,128,255,128,9,14,28,10,0,0,51, + 0,51,0,0,0,255,128,97,128,96,128,100,128,100,0,124, + 0,100,0,100,128,96,128,97,128,255,128,4,15,15,7,1, + 0,192,96,16,0,240,96,96,96,96,96,96,96,96,96,240, + 5,15,15,7,1,0,24,48,64,0,240,96,96,96,96,96, + 96,96,96,96,240,5,15,15,7,1,0,32,112,136,0,240, + 96,96,96,96,96,96,96,96,96,240,6,14,14,7,0,0, + 204,204,0,120,48,48,48,48,48,48,48,48,48,120,11,11, + 22,12,0,0,255,0,97,192,96,192,96,96,96,96,248,96, + 96,96,96,96,96,192,97,192,255,0,11,14,28,12,0,0, + 14,128,23,0,0,0,224,224,112,64,120,64,92,64,76,64, + 70,64,71,64,67,192,65,192,64,192,224,64,11,15,30,12, + 0,0,24,0,12,0,2,0,0,0,31,0,113,192,96,192, + 192,96,192,96,192,96,192,96,192,96,96,192,113,192,31,0, + 11,15,30,12,0,0,0,192,1,128,2,0,0,0,31,0, + 113,192,96,192,192,96,192,96,192,96,192,96,192,96,96,192, + 113,192,31,0,11,15,30,12,0,0,4,0,14,0,17,0, + 0,0,31,0,113,192,96,192,192,96,192,96,192,96,192,96, + 192,96,96,192,113,192,31,0,11,14,28,12,0,0,14,128, + 23,0,0,0,31,0,113,192,96,192,192,96,192,96,192,96, + 192,96,192,96,96,192,113,192,31,0,11,14,28,12,0,0, + 25,128,25,128,0,0,31,0,113,192,96,192,192,96,192,96, + 192,96,192,96,192,96,96,192,113,192,31,0,8,7,7,8, + 0,1,195,102,60,24,60,102,195,11,11,22,12,0,0,31, + 32,113,192,96,192,193,96,194,96,196,96,200,96,208,96,96, + 192,113,192,159,0,11,15,30,12,0,0,12,0,6,0,1, + 0,0,0,240,224,96,64,96,64,96,64,96,64,96,64,96, + 64,96,64,96,64,48,128,31,0,11,15,30,12,0,0,1, + 128,3,0,4,0,0,0,240,224,96,64,96,64,96,64,96, + 64,96,64,96,64,96,64,96,64,48,128,31,0,11,15,30, + 12,0,0,4,0,14,0,17,0,0,0,240,224,96,64,96, + 64,96,64,96,64,96,64,96,64,96,64,96,64,48,128,31, + 0,11,14,28,12,0,0,25,128,25,128,0,0,240,224,96, + 64,96,64,96,64,96,64,96,64,96,64,96,64,96,64,48, + 128,31,0,10,15,30,11,0,0,1,128,3,0,4,0,0, + 0,241,192,96,128,49,0,49,0,26,0,26,0,12,0,12, + 0,12,0,12,0,30,0,9,11,22,10,0,0,240,0,96, + 0,127,0,99,128,97,128,97,128,99,128,126,0,96,0,96, + 0,240,0,8,11,11,9,0,0,30,35,99,98,108,98,99, + 99,99,99,238,8,11,11,9,0,0,48,24,4,0,60,102, + 6,62,198,206,119,8,11,11,9,0,0,12,24,32,0,60, + 102,6,62,198,206,119,8,11,11,9,0,0,16,56,108,0, + 60,102,6,62,198,206,119,8,10,10,9,0,0,52,88,0, + 60,102,6,62,198,206,119,8,10,10,9,0,0,108,108,0, + 60,102,6,62,198,206,119,8,11,11,9,0,0,24,36,24, + 0,60,102,6,62,198,206,119,13,7,14,14,0,0,57,224, + 103,48,6,24,63,248,198,0,199,24,121,240,7,10,10,8, + 0,253,60,102,198,192,194,102,60,16,8,56,8,11,11,9, + 0,0,48,24,4,0,60,102,195,255,192,99,62,8,11,11, + 9,0,0,12,24,32,0,60,102,195,255,192,99,62,8,11, + 11,9,0,0,16,56,108,0,60,102,195,255,192,99,62,8, + 10,10,9,0,0,108,108,0,60,102,195,255,192,99,62,4, + 11,11,5,0,0,192,96,16,0,224,96,96,96,96,96,240, + 4,11,11,5,0,0,48,96,128,0,224,96,96,96,96,96, + 240,5,11,11,5,0,0,32,112,216,0,224,96,96,96,96, + 96,240,5,10,10,5,0,0,216,216,0,224,96,96,96,96, + 96,240,8,11,11,9,0,0,198,56,120,140,62,102,195,195, + 195,102,60,9,10,20,10,0,0,26,0,44,0,0,0,238, + 0,115,0,99,0,99,0,99,0,99,0,247,128,8,11,11, + 9,0,0,48,24,4,0,60,102,195,195,195,102,60,8,11, + 11,9,0,0,12,24,32,0,60,102,195,195,195,102,60,8, + 11,11,9,0,0,16,56,108,0,60,102,195,195,195,102,60, + 8,10,10,9,0,0,52,88,0,60,102,195,195,195,102,60, + 8,10,10,9,0,0,108,108,0,60,102,195,195,195,102,60, + 8,7,7,8,0,1,24,24,0,255,0,24,24,8,9,9, + 9,0,255,2,60,110,203,211,211,102,60,64,9,11,22,10, + 0,0,48,0,24,0,4,0,0,0,247,128,99,0,99,0, + 99,0,99,0,103,0,59,128,9,11,22,10,0,0,12,0, + 24,0,32,0,0,0,247,128,99,0,99,0,99,0,99,0, + 103,0,59,128,9,11,22,10,0,0,8,0,28,0,54,0, + 0,0,247,128,99,0,99,0,99,0,99,0,103,0,59,128, + 9,10,20,10,0,0,54,0,54,0,0,0,247,128,99,0, + 99,0,99,0,99,0,103,0,59,128,8,14,14,7,255,253, + 6,12,16,0,247,98,98,52,52,24,24,16,208,224,9,14, + 28,10,0,253,224,0,96,0,96,0,96,0,110,0,115,0, + 97,128,97,128,97,128,115,0,110,0,96,0,96,0,240,0, + 8,13,13,7,255,253,54,54,0,247,98,98,52,52,24,24, + 16,208,224}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--14-100-100-100-P-87-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=14 h=14 x= 3 y= 8 dx=15 dy= 0 ascent=12 len=28 + Font Bounding box w=20 h=25 x=-2 y=-6 + Calculated Min Values x=-2 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB10r[1853] U8G_SECTION(".progmem.u8g_font_ncenB10r") = { + 0,20,25,254,250,11,2,24,5,41,32,127,253,12,253,11, + 253,0,0,0,4,0,1,2,11,11,4,1,0,192,192,192, + 192,192,128,128,0,192,192,192,3,4,4,5,1,7,160,160, + 160,160,7,10,10,8,0,0,20,20,20,126,40,40,252,80, + 80,80,7,13,13,8,0,255,16,124,214,150,208,240,124,30, + 22,210,214,124,16,12,11,22,13,0,0,48,128,111,0,201, + 0,202,0,210,0,100,96,4,208,9,144,9,144,17,160,16, + 192,12,11,22,13,0,0,30,0,51,0,51,0,50,0,28, + 0,60,224,78,64,199,128,195,144,227,224,124,192,1,4,4, + 3,1,7,128,128,128,128,4,13,13,5,0,254,16,32,96, + 64,192,192,192,192,192,64,96,32,16,4,13,13,5,0,254, + 128,64,96,32,48,48,48,48,48,32,96,64,128,5,5,5, + 6,0,6,32,168,112,168,32,7,7,7,8,0,1,16,16, + 16,254,16,16,16,2,5,5,4,1,254,192,192,192,64,128, + 4,2,2,5,0,3,240,240,2,3,3,4,1,0,192,192, + 192,4,11,11,5,0,0,16,16,16,32,32,32,64,64,64, + 128,128,7,11,11,8,0,0,56,108,198,198,198,198,198,198, + 198,108,56,5,11,11,8,1,0,48,240,48,48,48,48,48, + 48,48,48,120,7,11,11,8,0,0,120,206,198,6,6,12, + 24,48,98,254,254,7,11,11,8,0,0,120,206,198,6,12, + 60,6,6,198,206,120,7,11,11,8,0,0,12,28,28,44, + 44,76,76,254,12,12,30,7,11,11,8,0,0,126,124,64, + 64,92,110,6,6,198,206,120,7,11,11,8,0,0,60,102, + 198,192,220,238,198,198,198,230,120,7,11,11,8,0,0,254, + 254,132,140,12,24,24,24,48,48,48,7,11,11,8,0,0, + 120,230,198,198,244,60,94,198,198,206,60,7,11,11,8,0, + 0,60,206,198,198,198,238,118,6,198,204,120,2,7,7,4, + 1,0,192,192,192,0,192,192,192,2,9,9,4,1,254,192, + 192,192,0,192,192,192,64,128,7,7,7,8,0,1,2,14, + 56,224,56,14,2,7,3,3,8,0,3,254,0,254,7,7, + 7,8,0,1,128,224,56,14,56,224,128,6,11,11,7,0, + 0,120,204,204,12,24,48,32,0,48,48,48,13,11,22,14, + 0,0,15,192,56,112,99,152,108,216,204,216,217,152,217,176, + 219,176,205,192,96,16,63,224,10,11,22,11,0,0,12,0, + 12,0,22,0,22,0,18,0,35,0,35,0,63,0,65,128, + 65,128,227,192,9,11,22,10,0,0,254,0,99,0,99,0, + 99,0,102,0,127,0,97,128,97,128,97,128,99,128,254,0, + 10,11,22,11,0,0,31,64,112,192,96,64,192,64,192,0, + 192,0,192,0,192,0,96,64,112,192,31,0,11,11,22,12, + 0,0,255,0,97,192,96,192,96,96,96,96,96,96,96,96, + 96,96,96,192,97,192,255,0,9,11,22,10,0,0,255,128, + 97,128,96,128,100,128,100,0,124,0,100,0,100,128,96,128, + 97,128,255,128,9,11,22,10,0,0,255,128,97,128,96,128, + 100,128,100,0,124,0,100,0,100,0,96,0,96,0,240,0, + 11,11,22,12,0,0,31,64,112,192,96,64,192,64,192,0, + 192,0,195,224,192,192,96,192,113,192,30,64,11,11,22,12, + 0,0,241,224,96,192,96,192,96,192,96,192,127,192,96,192, + 96,192,96,192,96,192,241,224,4,11,11,7,1,0,240,96, + 96,96,96,96,96,96,96,96,240,7,11,11,9,0,0,30, + 12,12,12,12,12,12,204,204,156,112,11,11,22,12,0,0, + 243,192,97,0,98,0,100,0,104,0,124,0,110,0,103,0, + 99,128,97,192,243,224,9,11,22,10,0,0,240,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,128,96,128,97,128, + 255,128,13,11,22,14,0,0,240,120,112,112,112,112,88,176, + 88,176,88,176,77,48,77,48,77,48,70,48,230,120,11,11, + 22,12,0,0,224,224,112,64,120,64,92,64,76,64,70,64, + 71,64,67,192,65,192,64,192,224,64,11,11,22,12,0,0, + 31,0,113,192,96,192,192,96,192,96,192,96,192,96,192,96, + 96,192,113,192,31,0,9,11,22,10,0,0,255,0,99,128, + 97,128,97,128,99,128,126,0,96,0,96,0,96,0,96,0, + 240,0,11,14,28,12,0,253,31,0,113,192,96,192,192,96, + 192,96,192,96,192,96,220,96,102,192,115,192,31,0,3,32, + 3,160,1,192,11,11,22,12,0,0,255,0,99,128,97,128, + 97,128,99,0,126,0,99,0,99,0,97,128,97,160,241,192, + 9,11,22,10,0,0,61,0,227,0,193,0,193,0,240,0, + 126,0,15,128,129,128,129,128,195,128,190,0,10,11,22,11, + 0,0,255,192,204,192,140,64,140,64,12,0,12,0,12,0, + 12,0,12,0,12,0,30,0,11,11,22,12,0,0,240,224, + 96,64,96,64,96,64,96,64,96,64,96,64,96,64,96,64, + 48,128,31,0,10,11,22,11,0,0,241,192,96,128,96,128, + 49,0,49,0,49,0,26,0,26,0,26,0,12,0,12,0, + 13,11,22,14,0,0,247,184,99,16,99,16,99,16,53,160, + 53,160,53,160,53,160,24,192,24,192,24,192,11,11,22,12, + 0,0,249,224,112,192,48,128,25,0,13,0,14,0,22,0, + 19,0,33,128,97,192,243,224,10,11,22,11,0,0,241,192, + 96,128,49,0,49,0,26,0,26,0,12,0,12,0,12,0, + 12,0,30,0,8,11,11,9,0,0,255,195,135,142,12,24, + 48,113,225,195,255,4,13,13,5,0,254,240,192,192,192,192, + 192,192,192,192,192,192,192,240,6,11,11,7,0,0,128,128, + 64,64,32,32,16,16,8,8,4,4,13,13,5,0,254,240, + 48,48,48,48,48,48,48,48,48,48,48,240,7,7,7,8, + 0,4,16,16,56,40,108,68,198,7,1,1,7,0,254,254, + 4,3,3,6,1,8,192,96,16,8,7,7,9,0,0,60, + 102,6,62,198,206,119,9,11,22,10,0,0,224,0,96,0, + 96,0,96,0,110,0,115,0,97,128,97,128,97,128,99,0, + 94,0,7,7,7,8,0,0,60,102,198,192,194,102,60,9, + 11,22,10,0,0,7,0,3,0,3,0,3,0,59,0,103, + 0,195,0,195,0,195,0,103,0,59,128,8,7,7,9,0, + 0,60,102,195,255,192,99,62,6,11,11,6,0,0,56,108, + 108,96,248,96,96,96,96,96,240,7,11,11,8,0,253,6, + 124,198,198,124,128,252,126,130,134,124,9,11,22,10,0,0, + 224,0,96,0,96,0,96,0,110,0,115,0,99,0,99,0, + 99,0,99,0,247,128,4,10,10,5,0,0,96,96,0,224, + 96,96,96,96,96,240,5,13,13,5,254,253,24,24,0,56, + 24,24,24,24,24,24,24,216,112,8,11,11,9,0,0,224, + 96,96,96,103,102,108,120,108,102,231,4,11,11,5,0,0, + 224,96,96,96,96,96,96,96,96,96,240,14,7,14,15,0, + 0,238,112,115,152,99,24,99,24,99,24,99,24,247,188,9, + 7,14,10,0,0,238,0,115,0,99,0,99,0,99,0,99, + 0,247,128,8,7,7,9,0,0,60,102,195,195,195,102,60, + 9,10,20,10,0,253,238,0,115,0,97,128,97,128,97,128, + 115,0,110,0,96,0,96,0,240,0,9,10,20,9,0,253, + 61,0,103,0,195,0,195,0,195,0,103,0,59,0,3,0, + 3,0,7,128,7,7,7,7,0,0,238,118,96,96,96,96, + 240,6,7,7,7,0,0,124,196,224,120,28,140,248,6,10, + 10,6,0,0,32,32,96,248,96,96,96,100,100,56,9,7, + 14,10,0,0,231,0,99,0,99,0,99,0,99,0,103,0, + 59,128,8,7,7,7,255,0,247,98,98,52,52,24,24,13, + 7,14,12,255,0,247,184,99,16,99,16,53,160,53,160,24, + 192,24,192,8,7,7,9,0,0,231,102,60,24,60,70,231, + 8,10,10,7,255,253,247,98,98,52,52,24,24,16,208,224, + 6,7,7,7,0,0,252,140,24,48,96,196,252,5,13,13, + 6,0,254,24,32,96,96,96,64,128,64,96,96,96,32,24, + 1,11,11,8,3,0,128,128,128,128,128,128,128,128,128,128, + 128,5,13,13,6,0,254,192,32,48,48,48,16,8,16,48, + 48,48,32,192,7,2,2,8,0,4,118,220,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--17-120-100-100-P-99-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=16 h=16 x= 4 y=10 dx=16 dy= 0 ascent=16 len=32 + Font Bounding box w=22 h=27 x=-3 y=-7 + Calculated Min Values x=-2 y=-3 dx= 0 dy= 0 + Pure Font ascent =12 descent=-3 + X Font ascent =12 descent=-3 + Max Font ascent =16 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB12[4735] U8G_SECTION(".progmem.u8g_font_ncenB12") = { + 0,22,27,253,249,12,2,152,5,246,32,255,253,16,253,12, + 253,0,0,0,4,1,1,3,12,12,5,1,0,64,224,224, + 224,224,64,64,0,64,224,224,64,5,5,5,6,0,7,216, + 216,216,144,144,10,12,24,10,0,0,25,128,25,128,25,128, + 127,192,127,192,51,0,51,0,255,128,255,128,102,0,102,0, + 102,0,9,15,30,10,0,255,8,0,8,0,62,0,105,0, + 203,128,201,0,252,0,127,0,31,128,73,128,233,128,201,128, + 107,0,62,0,8,0,12,12,24,14,1,0,56,128,119,128, + 101,0,197,0,202,0,202,224,117,208,5,144,11,16,11,32, + 19,32,17,192,12,12,24,14,1,0,15,0,25,128,25,128, + 25,0,30,0,60,240,110,96,231,64,199,128,227,144,243,240, + 124,224,2,5,5,4,1,7,192,192,192,128,128,4,14,14, + 6,1,254,16,32,96,96,192,192,192,192,192,192,96,96,32, + 16,4,14,14,6,0,254,128,64,96,96,48,48,48,48,48, + 48,96,96,64,128,7,7,7,8,0,5,16,84,214,56,214, + 84,16,8,8,8,10,1,0,24,24,24,255,255,24,24,24, + 4,6,6,5,0,253,96,240,112,32,96,128,4,2,2,5, + 0,3,240,240,4,3,3,5,0,0,96,240,96,5,12,12, + 5,0,0,8,8,16,16,16,32,32,64,64,64,128,128,9, + 12,24,10,0,0,28,0,54,0,99,0,99,0,227,128,227, + 128,227,128,227,128,99,0,99,0,54,0,28,0,7,12,12, + 10,1,0,24,248,56,56,56,56,56,56,56,56,56,254,8, + 12,12,10,1,0,60,70,231,231,71,14,12,24,49,97,255, + 255,9,12,24,10,0,0,62,0,103,0,115,0,35,0,6, + 0,31,0,7,0,3,128,99,128,243,128,103,0,62,0,9, + 12,24,10,0,0,2,0,6,0,14,0,30,0,46,0,46, + 0,78,0,142,0,255,128,14,0,14,0,63,128,8,12,12, + 10,1,0,127,126,64,64,124,78,7,71,231,231,206,124,9, + 12,24,10,0,0,31,0,51,128,103,128,99,0,224,0,238, + 0,247,0,227,128,227,128,99,128,119,0,30,0,8,12,12, + 10,1,0,255,254,134,134,132,12,12,24,24,56,56,16,8, + 12,12,10,1,0,60,102,231,231,102,60,102,231,231,231,102, + 60,9,12,24,10,0,0,60,0,119,0,227,0,227,128,227, + 128,119,128,59,128,3,128,99,0,243,0,230,0,124,0,4, + 8,8,5,0,0,96,240,96,0,0,96,240,96,4,11,11, + 5,0,253,96,240,96,0,0,96,240,112,32,96,128,8,8, + 8,10,1,1,3,15,60,240,240,60,15,3,8,6,6,10, + 1,1,255,255,0,0,255,255,8,8,8,10,1,1,192,240, + 60,15,15,60,240,192,8,12,12,8,0,0,60,102,247,103, + 14,12,16,0,16,56,56,16,12,13,26,12,0,255,15,128, + 56,224,96,32,70,176,205,144,153,144,153,144,153,176,219,160, + 76,64,96,48,56,224,15,128,13,12,24,13,0,0,6,0, + 7,0,7,0,15,0,11,128,27,128,17,192,63,192,49,192, + 32,224,96,224,241,248,12,12,24,13,0,0,255,192,56,224, + 56,112,56,112,56,224,63,192,56,224,56,112,56,112,56,112, + 56,224,255,192,11,12,24,13,1,0,15,160,56,224,112,96, + 112,32,224,32,224,0,224,0,224,32,112,32,112,64,56,192, + 15,0,13,12,24,14,0,0,255,128,56,224,56,112,56,112, + 56,56,56,56,56,56,56,56,56,112,56,112,56,224,255,128, + 11,12,24,12,0,0,255,224,56,96,56,96,57,32,59,0, + 63,0,59,0,57,32,56,32,56,96,56,96,255,224,11,12, + 24,12,0,0,255,224,56,96,56,96,57,32,59,0,63,0, + 59,0,57,0,56,0,56,0,56,0,254,0,13,12,24,14, + 1,0,15,160,56,224,112,96,112,32,224,32,224,0,227,248, + 224,224,112,224,112,224,57,224,15,32,14,12,24,15,0,0, + 254,252,56,112,56,112,56,112,56,112,63,240,56,112,56,112, + 56,112,56,112,56,112,254,252,7,12,12,7,0,0,254,56, + 56,56,56,56,56,56,56,56,56,254,10,12,24,11,0,0, + 31,192,7,0,7,0,7,0,7,0,7,0,103,0,247,0, + 231,0,135,0,206,0,124,0,14,12,24,13,0,0,254,248, + 56,96,56,192,57,128,59,0,63,128,63,128,59,192,57,224, + 56,240,56,120,254,252,11,12,24,12,0,0,254,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,32,56,32,56,96, + 56,96,255,224,16,12,24,16,0,0,252,63,60,60,46,60, + 46,92,46,92,39,92,39,156,39,156,35,156,35,28,33,28, + 249,63,14,12,24,14,0,0,240,124,56,16,60,16,62,16, + 47,16,39,144,35,208,33,240,32,240,32,112,32,48,248,16, + 12,12,24,14,1,0,15,0,57,192,112,224,112,224,224,112, + 224,112,224,112,224,112,112,224,112,224,57,192,15,0,12,12, + 24,13,0,0,255,192,56,224,56,112,56,112,56,112,56,224, + 63,192,56,0,56,0,56,0,56,0,254,0,12,15,30,14, + 1,253,15,0,57,192,112,224,112,224,224,112,224,112,224,112, + 230,112,105,96,121,224,57,192,15,128,1,208,1,240,0,224, + 13,12,24,14,0,0,255,192,56,224,56,112,56,112,56,224, + 63,192,57,128,57,192,56,224,56,232,56,248,252,112,9,12, + 24,11,1,0,62,128,67,128,193,128,192,128,248,128,126,0, + 63,0,143,128,129,128,193,128,225,0,190,0,11,12,24,12, + 0,0,255,224,206,96,142,32,142,32,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,63,128,14,12,24,14,0,0, + 254,124,56,16,56,16,56,16,56,16,56,16,56,16,56,16, + 56,16,28,32,30,96,7,128,13,12,24,13,255,0,254,120, + 56,48,60,32,28,32,28,64,14,64,14,128,15,128,7,128, + 7,0,3,0,3,0,15,12,24,16,0,0,251,222,113,140, + 49,136,57,200,57,216,59,208,26,208,30,240,28,224,12,96, + 12,96,12,96,12,12,24,12,0,0,249,240,112,96,56,64, + 28,128,31,0,15,0,15,0,15,128,19,192,33,192,96,224, + 249,240,13,12,24,12,255,0,254,248,56,96,28,64,28,128, + 14,128,15,0,7,0,7,0,7,0,7,0,7,0,31,192, + 9,12,24,11,1,0,255,128,195,128,135,0,135,0,14,0, + 28,0,28,0,56,128,112,128,113,128,227,128,255,128,4,14, + 14,6,1,254,240,192,192,192,192,192,192,192,192,192,192,192, + 192,240,7,12,12,10,1,0,192,192,96,96,48,48,24,24, + 12,12,6,6,4,14,14,7,1,254,240,48,48,48,48,48, + 48,48,48,48,48,48,48,240,8,7,7,10,1,5,24,24, + 60,102,102,195,195,8,2,2,8,0,254,255,255,4,3,3, + 6,0,9,192,224,48,9,8,16,10,0,0,126,0,231,0, + 199,0,31,0,103,0,231,0,239,0,119,128,11,12,24,11, + 255,0,248,0,56,0,56,0,56,0,59,128,61,192,56,224, + 56,224,56,224,56,224,61,192,43,128,8,8,8,9,0,0, + 62,115,231,224,224,227,118,60,11,12,24,11,0,0,7,128, + 3,128,3,128,3,128,59,128,119,128,227,128,227,128,227,128, + 227,128,119,128,58,224,9,8,16,10,0,0,62,0,119,0, + 227,128,255,128,224,0,225,128,115,0,62,0,9,12,24,7, + 255,0,15,0,27,128,59,0,56,0,254,0,56,0,56,0, + 56,0,56,0,56,0,56,0,254,0,9,12,24,10,0,253, + 1,128,63,128,119,0,227,128,227,128,247,0,124,0,96,0, + 127,0,255,128,195,128,255,0,11,12,24,11,255,0,240,0, + 112,0,112,0,112,0,119,128,121,192,121,192,113,192,113,192, + 113,192,113,192,251,224,5,12,12,6,0,0,96,240,96,0, + 240,112,112,112,112,112,112,248,6,15,15,6,254,253,24,60, + 24,0,124,28,28,28,28,28,28,28,220,216,112,11,12,24, + 11,0,0,240,0,112,0,112,0,112,0,119,192,115,128,119, + 0,126,0,127,0,115,128,113,192,251,224,5,12,12,6,0, + 0,240,112,112,112,112,112,112,112,112,112,112,248,15,8,16, + 16,0,0,247,56,123,220,115,156,115,156,115,156,115,156,115, + 156,251,190,11,8,16,11,255,0,247,128,121,192,113,192,113, + 192,113,192,113,192,113,192,251,224,10,8,16,11,0,0,30, + 0,115,128,225,192,225,192,225,192,225,192,115,128,30,0,10, + 11,22,11,255,253,247,0,123,128,113,192,113,192,113,192,113, + 192,123,128,119,0,112,0,112,0,248,0,10,11,22,10,255, + 253,62,128,115,128,227,128,227,128,227,128,227,128,115,128,63, + 128,3,128,3,128,7,192,9,8,16,9,0,0,247,0,123, + 128,115,0,112,0,112,0,112,0,112,0,248,0,7,8,8, + 8,0,0,122,198,226,252,126,142,198,188,6,11,11,7,0, + 0,16,16,48,252,112,112,112,112,116,124,56,11,8,16,11, + 255,0,243,192,113,192,113,192,113,192,113,192,113,192,123,192, + 62,224,10,8,16,10,0,0,251,192,113,128,115,0,59,0, + 58,0,30,0,28,0,12,0,15,8,16,15,0,0,251,222, + 113,140,57,200,59,216,30,240,30,240,12,96,12,96,9,8, + 16,10,0,0,251,128,113,0,62,0,28,0,28,0,62,0, + 71,0,239,128,10,11,22,10,255,253,251,192,113,128,57,128, + 57,0,31,0,14,0,14,0,6,0,52,0,116,0,56,0, + 7,8,8,9,0,0,254,204,156,56,48,114,230,254,4,14, + 14,6,1,254,48,96,96,96,96,96,192,96,96,96,96,96, + 96,48,2,12,12,10,4,0,192,192,192,192,192,192,192,192, + 192,192,192,192,4,14,14,6,0,254,192,96,96,96,96,96, + 48,96,96,96,96,96,96,192,8,3,3,10,1,3,114,255, + 78,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,0,0,0,4,1,1,3,12,12,5,1,253,64,224, + 224,64,0,64,64,224,224,224,224,64,8,12,12,10,0,254, + 1,2,62,115,231,231,232,233,114,60,32,64,9,12,24,10, + 0,0,31,0,57,128,115,128,115,128,113,0,56,0,254,0, + 24,0,24,0,120,128,191,0,110,0,8,8,8,10,1,2, + 90,255,102,195,195,102,255,90,10,12,24,10,0,0,251,192, + 113,128,49,0,59,0,26,0,30,0,63,0,12,0,63,0, + 12,0,12,0,63,0,2,12,12,10,4,0,192,192,192,192, + 192,0,0,192,192,192,192,192,6,15,15,9,1,253,56,76, + 76,96,48,120,140,132,196,120,48,24,200,200,112,5,2,2, + 6,0,9,216,216,12,12,24,12,0,0,31,128,57,192,96, + 96,207,176,217,48,152,16,152,16,217,176,207,48,96,96,57, + 192,31,128,6,7,7,6,0,5,112,152,120,216,108,0,248, + 6,5,5,8,1,2,36,108,216,108,36,8,5,5,10,0, + 2,255,255,3,3,3,4,2,2,5,0,3,240,240,12,12, + 24,12,0,0,31,128,57,192,96,96,223,48,201,48,142,16, + 139,16,201,176,221,240,96,96,57,192,31,128,5,1,1,6, + 0,10,248,5,5,5,7,1,7,112,216,136,216,112,8,9, + 9,10,1,0,24,24,255,255,24,24,0,255,255,5,7,7, + 6,0,5,112,152,216,16,32,120,248,6,7,7,6,0,5, + 120,204,76,24,76,204,120,4,3,3,6,1,9,48,112,192, + 11,11,22,11,0,253,243,192,113,192,113,192,113,192,113,192, + 113,192,123,192,110,224,96,0,112,0,112,0,11,12,24,12, + 0,0,127,224,249,128,249,128,249,128,249,128,121,128,25,128, + 25,128,25,128,25,128,25,128,127,224,4,3,3,5,0,3, + 96,240,96,4,4,4,6,0,253,64,96,48,224,4,7,7, + 6,1,5,32,224,96,96,96,96,240,5,7,7,6,0,5, + 112,216,216,216,112,0,248,6,5,5,8,1,2,144,216,108, + 216,144,12,12,24,14,1,0,32,64,224,192,97,128,97,0, + 99,0,98,32,246,96,12,224,9,32,27,240,48,96,32,240, + 12,12,24,14,1,0,32,64,224,192,97,128,97,0,99,0, + 98,224,247,48,13,176,8,32,24,64,48,240,33,240,13,12, + 24,14,0,0,120,32,204,96,76,192,24,128,77,128,205,16, + 123,48,6,112,4,144,13,248,24,48,16,120,8,12,12,8, + 0,253,8,28,28,8,0,8,48,112,230,239,102,60,13,16, + 32,13,0,0,24,0,28,0,6,0,0,0,6,0,7,0, + 7,0,15,0,11,128,27,128,17,192,63,192,49,192,32,224, + 96,224,241,248,13,16,32,13,0,0,1,128,3,128,6,0, + 0,0,6,0,7,0,7,0,15,0,11,128,27,128,17,192, + 63,192,49,192,32,224,96,224,241,248,13,16,32,13,0,0, + 2,0,7,0,13,128,0,0,6,0,7,0,7,0,15,0, + 11,128,27,128,17,192,63,192,49,192,32,224,96,224,241,248, + 13,15,30,13,0,0,14,128,23,0,0,0,6,0,7,0, + 7,0,15,0,11,128,27,128,17,192,63,192,49,192,32,224, + 96,224,241,248,13,15,30,13,0,0,25,128,25,128,0,0, + 6,0,7,0,7,0,15,0,11,128,27,128,17,192,63,192, + 49,192,32,224,96,224,241,248,13,16,32,13,0,0,6,0, + 11,0,6,0,0,0,6,0,7,0,7,0,15,0,11,128, + 27,128,17,192,63,192,49,192,32,224,96,224,241,248,16,12, + 24,16,255,0,31,255,7,195,5,195,5,201,9,216,9,248, + 17,216,31,201,33,193,33,195,97,195,247,255,11,15,30,13, + 1,253,15,160,56,224,112,96,112,32,224,32,224,0,224,0, + 224,32,112,32,112,64,56,192,15,0,12,0,6,0,28,0, + 11,16,32,12,0,0,24,0,28,0,6,0,0,0,255,224, + 56,96,56,96,57,32,59,0,63,0,59,0,57,32,56,32, + 56,96,56,96,255,224,11,16,32,12,0,0,1,128,3,128, + 6,0,0,0,255,224,56,96,56,96,57,32,59,0,63,0, + 59,0,57,32,56,32,56,96,56,96,255,224,11,16,32,12, + 0,0,2,0,7,0,13,128,0,0,255,224,56,96,56,96, + 57,32,59,0,63,0,59,0,57,32,56,32,56,96,56,96, + 255,224,11,15,30,12,0,0,25,128,25,128,0,0,255,224, + 56,96,56,96,57,32,59,0,63,0,59,0,57,32,56,32, + 56,96,56,96,255,224,7,16,16,7,0,0,96,112,24,0, + 254,56,56,56,56,56,56,56,56,56,56,254,7,16,16,7, + 0,0,12,28,48,0,254,56,56,56,56,56,56,56,56,56, + 56,254,7,16,16,7,0,0,16,56,108,0,254,56,56,56, + 56,56,56,56,56,56,56,254,7,15,15,7,0,0,108,108, + 0,254,56,56,56,56,56,56,56,56,56,56,254,13,12,24, + 14,0,0,255,128,56,224,56,112,56,112,56,56,126,56,56, + 56,56,56,56,112,56,112,56,224,255,128,14,15,30,14,0, + 0,7,64,11,128,0,0,240,124,56,16,60,16,62,16,47, + 16,39,144,35,208,33,240,32,240,32,112,32,48,248,16,12, + 16,32,14,1,0,24,0,28,0,6,0,0,0,15,0,57, + 192,112,224,112,224,224,112,224,112,224,112,224,112,112,224,112, + 224,57,192,15,0,12,16,32,14,1,0,1,128,3,128,6, + 0,0,0,15,0,57,192,112,224,112,224,224,112,224,112,224, + 112,224,112,112,224,112,224,57,192,15,0,12,16,32,14,1, + 0,6,0,15,0,25,128,0,0,15,0,57,192,112,224,112, + 224,224,112,224,112,224,112,224,112,112,224,112,224,57,192,15, + 0,12,15,30,14,1,0,14,128,23,0,0,0,15,0,57, + 192,112,224,112,224,224,112,224,112,224,112,224,112,112,224,112, + 224,57,192,15,0,12,15,30,14,1,0,25,128,25,128,0, + 0,15,0,57,192,112,224,112,224,224,112,224,112,224,112,224, + 112,112,224,112,224,57,192,15,0,8,8,8,10,1,0,66, + 231,126,56,28,126,231,66,12,14,28,14,1,255,0,16,15, + 32,57,192,112,224,112,224,225,112,226,112,228,112,232,112,112, + 224,112,224,57,192,79,0,128,0,14,16,32,14,0,0,6, + 0,7,0,1,128,0,0,254,124,56,16,56,16,56,16,56, + 16,56,16,56,16,56,16,56,16,28,32,30,96,7,128,14, + 16,32,14,0,0,0,96,0,224,1,128,0,0,254,124,56, + 16,56,16,56,16,56,16,56,16,56,16,56,16,56,16,28, + 32,30,96,7,128,14,16,32,14,0,0,1,128,3,192,6, + 96,0,0,254,124,56,16,56,16,56,16,56,16,56,16,56, + 16,56,16,56,16,28,32,30,96,7,128,14,15,30,14,0, + 0,6,96,6,96,0,0,254,124,56,16,56,16,56,16,56, + 16,56,16,56,16,56,16,56,16,28,32,30,96,7,128,13, + 16,32,12,255,0,0,192,1,192,3,0,0,0,254,248,56, + 96,28,64,28,128,14,128,15,0,7,0,7,0,7,0,7, + 0,7,0,31,192,12,12,24,13,0,0,254,0,56,0,63, + 192,56,224,56,112,56,112,56,112,56,224,63,192,56,0,56, + 0,254,0,10,12,24,10,0,0,31,0,51,128,115,128,115, + 128,115,0,119,0,113,128,113,192,113,192,113,192,123,128,247, + 0,9,12,24,10,0,0,96,0,112,0,24,0,0,0,126, + 0,231,0,199,0,31,0,103,0,231,0,239,0,119,128,9, + 12,24,10,0,0,6,0,14,0,24,0,0,0,126,0,231, + 0,199,0,31,0,103,0,231,0,239,0,119,128,9,12,24, + 10,0,0,16,0,56,0,108,0,0,0,126,0,231,0,199, + 0,31,0,103,0,231,0,239,0,119,128,9,11,22,10,0, + 0,58,0,92,0,0,0,126,0,231,0,199,0,31,0,103, + 0,231,0,239,0,119,128,9,11,22,10,0,0,108,0,108, + 0,0,0,126,0,231,0,199,0,31,0,103,0,231,0,239, + 0,119,128,9,12,24,10,0,0,24,0,44,0,24,0,0, + 0,126,0,231,0,199,0,31,0,103,0,231,0,239,0,119, + 128,13,8,16,15,0,0,125,224,231,48,199,56,63,248,103, + 0,231,24,239,48,123,224,8,11,11,9,0,253,62,115,231, + 227,224,227,118,60,24,12,56,9,12,24,10,0,0,48,0, + 56,0,12,0,0,0,62,0,119,0,227,128,255,128,224,0, + 225,128,115,0,62,0,9,12,24,10,0,0,6,0,14,0, + 24,0,0,0,62,0,119,0,227,128,255,128,224,0,225,128, + 115,0,62,0,9,12,24,10,0,0,8,0,28,0,54,0, + 0,0,62,0,119,0,227,128,255,128,224,0,225,128,115,0, + 62,0,9,11,22,10,0,0,54,0,54,0,0,0,62,0, + 119,0,227,128,255,128,224,0,225,128,115,0,62,0,5,12, + 12,6,0,0,192,224,48,0,240,112,112,112,112,112,112,248, + 5,12,12,6,0,0,24,56,96,0,240,112,112,112,112,112, + 112,248,5,12,12,6,0,0,32,112,216,0,240,112,112,112, + 112,112,112,248,5,11,11,6,0,0,216,216,0,240,112,112, + 112,112,112,112,248,9,13,26,11,0,0,96,0,59,0,28, + 0,54,0,7,0,31,0,119,128,227,128,227,128,227,128,227, + 128,119,0,28,0,11,11,22,11,255,0,14,128,23,0,0, + 0,247,128,121,192,113,192,113,192,113,192,113,192,113,192,251, + 224,10,12,24,11,0,0,24,0,28,0,6,0,0,0,63, + 0,115,128,225,192,225,192,225,192,225,192,115,128,63,0,10, + 12,24,11,0,0,3,0,7,0,12,0,0,0,63,0,115, + 128,225,192,225,192,225,192,225,192,115,128,63,0,10,12,24, + 11,0,0,12,0,30,0,51,0,0,0,63,0,115,128,225, + 192,225,192,225,192,225,192,115,128,63,0,10,11,22,11,0, + 0,29,0,46,0,0,0,63,0,115,128,225,192,225,192,225, + 192,225,192,115,128,63,0,10,11,22,11,0,0,54,0,54, + 0,0,0,63,0,115,128,225,192,225,192,225,192,225,192,115, + 128,63,0,8,8,8,10,1,0,24,24,0,255,255,0,24, + 24,9,12,24,10,0,254,0,128,1,0,30,0,115,0,231, + 128,235,128,235,128,243,128,103,0,60,0,64,0,128,0,11, + 12,24,11,255,0,24,0,28,0,6,0,0,0,243,192,113, + 192,113,192,113,192,113,192,113,192,123,192,62,224,11,12,24, + 11,255,0,3,0,7,0,12,0,0,0,243,192,113,192,113, + 192,113,192,113,192,113,192,123,192,62,224,11,12,24,11,255, + 0,4,0,14,0,27,0,0,0,243,192,113,192,113,192,113, + 192,113,192,113,192,123,192,62,224,11,11,22,11,255,0,27, + 0,27,0,0,0,243,192,113,192,113,192,113,192,113,192,113, + 192,123,192,62,224,11,15,30,10,255,253,3,0,7,0,12, + 0,0,0,251,224,112,192,56,128,25,128,29,0,15,0,14, + 0,6,0,52,0,116,0,56,0,10,15,30,11,255,253,240, + 0,112,0,112,0,112,0,119,0,123,128,113,192,113,192,113, + 192,113,192,123,128,119,0,112,0,112,0,252,0,11,14,28, + 10,255,253,27,0,27,0,0,0,251,224,48,192,56,128,25, + 128,29,0,15,0,14,0,6,0,52,0,116,0,56,0}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--17-120-100-100-P-99-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=16 h=15 x= 4 y= 9 dx=16 dy= 0 ascent=14 len=30 + Font Bounding box w=22 h=27 x=-3 y=-7 + Calculated Min Values x=-2 y=-3 dx= 0 dy= 0 + Pure Font ascent =12 descent=-3 + X Font ascent =12 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB12r[2194] U8G_SECTION(".progmem.u8g_font_ncenB12r") = { + 0,22,27,253,249,12,2,152,5,246,32,127,253,14,253,12, + 253,0,0,0,4,1,1,3,12,12,5,1,0,64,224,224, + 224,224,64,64,0,64,224,224,64,5,5,5,6,0,7,216, + 216,216,144,144,10,12,24,10,0,0,25,128,25,128,25,128, + 127,192,127,192,51,0,51,0,255,128,255,128,102,0,102,0, + 102,0,9,15,30,10,0,255,8,0,8,0,62,0,105,0, + 203,128,201,0,252,0,127,0,31,128,73,128,233,128,201,128, + 107,0,62,0,8,0,12,12,24,14,1,0,56,128,119,128, + 101,0,197,0,202,0,202,224,117,208,5,144,11,16,11,32, + 19,32,17,192,12,12,24,14,1,0,15,0,25,128,25,128, + 25,0,30,0,60,240,110,96,231,64,199,128,227,144,243,240, + 124,224,2,5,5,4,1,7,192,192,192,128,128,4,14,14, + 6,1,254,16,32,96,96,192,192,192,192,192,192,96,96,32, + 16,4,14,14,6,0,254,128,64,96,96,48,48,48,48,48, + 48,96,96,64,128,7,7,7,8,0,5,16,84,214,56,214, + 84,16,8,8,8,10,1,0,24,24,24,255,255,24,24,24, + 4,6,6,5,0,253,96,240,112,32,96,128,4,2,2,5, + 0,3,240,240,4,3,3,5,0,0,96,240,96,5,12,12, + 5,0,0,8,8,16,16,16,32,32,64,64,64,128,128,9, + 12,24,10,0,0,28,0,54,0,99,0,99,0,227,128,227, + 128,227,128,227,128,99,0,99,0,54,0,28,0,7,12,12, + 10,1,0,24,248,56,56,56,56,56,56,56,56,56,254,8, + 12,12,10,1,0,60,70,231,231,71,14,12,24,49,97,255, + 255,9,12,24,10,0,0,62,0,103,0,115,0,35,0,6, + 0,31,0,7,0,3,128,99,128,243,128,103,0,62,0,9, + 12,24,10,0,0,2,0,6,0,14,0,30,0,46,0,46, + 0,78,0,142,0,255,128,14,0,14,0,63,128,8,12,12, + 10,1,0,127,126,64,64,124,78,7,71,231,231,206,124,9, + 12,24,10,0,0,31,0,51,128,103,128,99,0,224,0,238, + 0,247,0,227,128,227,128,99,128,119,0,30,0,8,12,12, + 10,1,0,255,254,134,134,132,12,12,24,24,56,56,16,8, + 12,12,10,1,0,60,102,231,231,102,60,102,231,231,231,102, + 60,9,12,24,10,0,0,60,0,119,0,227,0,227,128,227, + 128,119,128,59,128,3,128,99,0,243,0,230,0,124,0,4, + 8,8,5,0,0,96,240,96,0,0,96,240,96,4,11,11, + 5,0,253,96,240,96,0,0,96,240,112,32,96,128,8,8, + 8,10,1,1,3,15,60,240,240,60,15,3,8,6,6,10, + 1,1,255,255,0,0,255,255,8,8,8,10,1,1,192,240, + 60,15,15,60,240,192,8,12,12,8,0,0,60,102,247,103, + 14,12,16,0,16,56,56,16,12,13,26,12,0,255,15,128, + 56,224,96,32,70,176,205,144,153,144,153,144,153,176,219,160, + 76,64,96,48,56,224,15,128,13,12,24,13,0,0,6,0, + 7,0,7,0,15,0,11,128,27,128,17,192,63,192,49,192, + 32,224,96,224,241,248,12,12,24,13,0,0,255,192,56,224, + 56,112,56,112,56,224,63,192,56,224,56,112,56,112,56,112, + 56,224,255,192,11,12,24,13,1,0,15,160,56,224,112,96, + 112,32,224,32,224,0,224,0,224,32,112,32,112,64,56,192, + 15,0,13,12,24,14,0,0,255,128,56,224,56,112,56,112, + 56,56,56,56,56,56,56,56,56,112,56,112,56,224,255,128, + 11,12,24,12,0,0,255,224,56,96,56,96,57,32,59,0, + 63,0,59,0,57,32,56,32,56,96,56,96,255,224,11,12, + 24,12,0,0,255,224,56,96,56,96,57,32,59,0,63,0, + 59,0,57,0,56,0,56,0,56,0,254,0,13,12,24,14, + 1,0,15,160,56,224,112,96,112,32,224,32,224,0,227,248, + 224,224,112,224,112,224,57,224,15,32,14,12,24,15,0,0, + 254,252,56,112,56,112,56,112,56,112,63,240,56,112,56,112, + 56,112,56,112,56,112,254,252,7,12,12,7,0,0,254,56, + 56,56,56,56,56,56,56,56,56,254,10,12,24,11,0,0, + 31,192,7,0,7,0,7,0,7,0,7,0,103,0,247,0, + 231,0,135,0,206,0,124,0,14,12,24,13,0,0,254,248, + 56,96,56,192,57,128,59,0,63,128,63,128,59,192,57,224, + 56,240,56,120,254,252,11,12,24,12,0,0,254,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,32,56,32,56,96, + 56,96,255,224,16,12,24,16,0,0,252,63,60,60,46,60, + 46,92,46,92,39,92,39,156,39,156,35,156,35,28,33,28, + 249,63,14,12,24,14,0,0,240,124,56,16,60,16,62,16, + 47,16,39,144,35,208,33,240,32,240,32,112,32,48,248,16, + 12,12,24,14,1,0,15,0,57,192,112,224,112,224,224,112, + 224,112,224,112,224,112,112,224,112,224,57,192,15,0,12,12, + 24,13,0,0,255,192,56,224,56,112,56,112,56,112,56,224, + 63,192,56,0,56,0,56,0,56,0,254,0,12,15,30,14, + 1,253,15,0,57,192,112,224,112,224,224,112,224,112,224,112, + 230,112,105,96,121,224,57,192,15,128,1,208,1,240,0,224, + 13,12,24,14,0,0,255,192,56,224,56,112,56,112,56,224, + 63,192,57,128,57,192,56,224,56,232,56,248,252,112,9,12, + 24,11,1,0,62,128,67,128,193,128,192,128,248,128,126,0, + 63,0,143,128,129,128,193,128,225,0,190,0,11,12,24,12, + 0,0,255,224,206,96,142,32,142,32,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,63,128,14,12,24,14,0,0, + 254,124,56,16,56,16,56,16,56,16,56,16,56,16,56,16, + 56,16,28,32,30,96,7,128,13,12,24,13,255,0,254,120, + 56,48,60,32,28,32,28,64,14,64,14,128,15,128,7,128, + 7,0,3,0,3,0,15,12,24,16,0,0,251,222,113,140, + 49,136,57,200,57,216,59,208,26,208,30,240,28,224,12,96, + 12,96,12,96,12,12,24,12,0,0,249,240,112,96,56,64, + 28,128,31,0,15,0,15,0,15,128,19,192,33,192,96,224, + 249,240,13,12,24,12,255,0,254,248,56,96,28,64,28,128, + 14,128,15,0,7,0,7,0,7,0,7,0,7,0,31,192, + 9,12,24,11,1,0,255,128,195,128,135,0,135,0,14,0, + 28,0,28,0,56,128,112,128,113,128,227,128,255,128,4,14, + 14,6,1,254,240,192,192,192,192,192,192,192,192,192,192,192, + 192,240,7,12,12,10,1,0,192,192,96,96,48,48,24,24, + 12,12,6,6,4,14,14,7,1,254,240,48,48,48,48,48, + 48,48,48,48,48,48,48,240,8,7,7,10,1,5,24,24, + 60,102,102,195,195,8,2,2,8,0,254,255,255,4,3,3, + 6,0,9,192,224,48,9,8,16,10,0,0,126,0,231,0, + 199,0,31,0,103,0,231,0,239,0,119,128,11,12,24,11, + 255,0,248,0,56,0,56,0,56,0,59,128,61,192,56,224, + 56,224,56,224,56,224,61,192,43,128,8,8,8,9,0,0, + 62,115,231,224,224,227,118,60,11,12,24,11,0,0,7,128, + 3,128,3,128,3,128,59,128,119,128,227,128,227,128,227,128, + 227,128,119,128,58,224,9,8,16,10,0,0,62,0,119,0, + 227,128,255,128,224,0,225,128,115,0,62,0,9,12,24,7, + 255,0,15,0,27,128,59,0,56,0,254,0,56,0,56,0, + 56,0,56,0,56,0,56,0,254,0,9,12,24,10,0,253, + 1,128,63,128,119,0,227,128,227,128,247,0,124,0,96,0, + 127,0,255,128,195,128,255,0,11,12,24,11,255,0,240,0, + 112,0,112,0,112,0,119,128,121,192,121,192,113,192,113,192, + 113,192,113,192,251,224,5,12,12,6,0,0,96,240,96,0, + 240,112,112,112,112,112,112,248,6,15,15,6,254,253,24,60, + 24,0,124,28,28,28,28,28,28,28,220,216,112,11,12,24, + 11,0,0,240,0,112,0,112,0,112,0,119,192,115,128,119, + 0,126,0,127,0,115,128,113,192,251,224,5,12,12,6,0, + 0,240,112,112,112,112,112,112,112,112,112,112,248,15,8,16, + 16,0,0,247,56,123,220,115,156,115,156,115,156,115,156,115, + 156,251,190,11,8,16,11,255,0,247,128,121,192,113,192,113, + 192,113,192,113,192,113,192,251,224,10,8,16,11,0,0,30, + 0,115,128,225,192,225,192,225,192,225,192,115,128,30,0,10, + 11,22,11,255,253,247,0,123,128,113,192,113,192,113,192,113, + 192,123,128,119,0,112,0,112,0,248,0,10,11,22,10,255, + 253,62,128,115,128,227,128,227,128,227,128,227,128,115,128,63, + 128,3,128,3,128,7,192,9,8,16,9,0,0,247,0,123, + 128,115,0,112,0,112,0,112,0,112,0,248,0,7,8,8, + 8,0,0,122,198,226,252,126,142,198,188,6,11,11,7,0, + 0,16,16,48,252,112,112,112,112,116,124,56,11,8,16,11, + 255,0,243,192,113,192,113,192,113,192,113,192,113,192,123,192, + 62,224,10,8,16,10,0,0,251,192,113,128,115,0,59,0, + 58,0,30,0,28,0,12,0,15,8,16,15,0,0,251,222, + 113,140,57,200,59,216,30,240,30,240,12,96,12,96,9,8, + 16,10,0,0,251,128,113,0,62,0,28,0,28,0,62,0, + 71,0,239,128,10,11,22,10,255,253,251,192,113,128,57,128, + 57,0,31,0,14,0,14,0,6,0,52,0,116,0,56,0, + 7,8,8,9,0,0,254,204,156,56,48,114,230,254,4,14, + 14,6,1,254,48,96,96,96,96,96,192,96,96,96,96,96, + 96,48,2,12,12,10,4,0,192,192,192,192,192,192,192,192, + 192,192,192,192,4,14,14,6,0,254,192,96,96,96,96,96, + 48,96,96,96,96,96,96,192,8,3,3,10,1,3,114,255, + 78,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--20-140-100-100-P-113-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=19 x= 4 y=11 dx=21 dy= 0 ascent=19 len=42 + Font Bounding box w=24 h=32 x=-3 y=-8 + Calculated Min Values x=-3 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =19 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB14[5558] U8G_SECTION(".progmem.u8g_font_ncenB14") = { + 0,24,32,253,248,14,3,71,7,51,32,255,252,19,252,14, + 252,0,0,0,5,0,1,4,14,14,6,1,0,96,240,240, + 240,240,240,96,96,96,0,96,240,240,96,5,5,5,8,1, + 9,216,216,216,216,216,11,12,24,12,0,1,13,128,13,128, + 13,128,127,224,127,224,27,0,27,0,255,192,255,192,54,0, + 54,0,54,0,9,18,36,11,1,254,8,0,8,0,62,0, + 107,128,203,128,201,128,232,0,252,0,255,0,127,128,31,128, + 11,128,201,128,233,128,235,0,62,0,8,0,8,0,14,15, + 30,15,0,255,56,192,103,64,196,192,196,128,197,128,201,0, + 115,0,2,56,6,100,4,196,12,196,8,196,24,200,16,112, + 16,0,16,14,28,17,1,0,7,128,12,192,24,192,24,192, + 29,128,31,0,14,62,63,24,119,144,227,224,225,224,224,241, + 241,254,127,28,2,5,5,5,1,9,192,192,192,192,192,5, + 16,16,6,0,254,24,48,112,96,224,192,192,192,192,192,192, + 224,96,112,48,24,5,16,16,6,0,254,192,96,112,48,56, + 24,24,24,24,24,24,56,48,112,96,192,7,7,7,8,0, + 7,56,146,214,56,214,146,56,10,10,20,11,0,0,12,0, + 12,0,12,0,12,0,255,192,255,192,12,0,12,0,12,0, + 12,0,4,7,7,5,0,253,96,240,240,112,32,64,128,5, + 3,3,6,0,3,248,248,248,4,4,4,5,0,0,96,240, + 240,96,6,14,14,7,0,0,12,12,8,24,24,16,48,48, + 32,96,96,64,192,192,9,14,28,11,1,0,28,0,119,0, + 99,0,227,128,227,128,227,128,227,128,227,128,227,128,227,128, + 227,128,99,0,119,0,28,0,7,14,14,11,2,0,24,56, + 248,56,56,56,56,56,56,56,56,56,56,254,9,14,28,11, + 1,0,30,0,103,0,227,128,227,128,99,128,3,128,7,0, + 7,0,14,0,24,0,48,0,96,128,255,128,255,128,9,14, + 28,11,1,0,30,0,103,0,227,128,227,128,99,128,3,0, + 28,0,3,0,3,128,99,128,227,128,227,128,103,0,62,0, + 9,14,28,11,1,0,1,0,3,0,7,0,15,0,15,0, + 23,0,39,0,71,0,71,0,135,0,255,128,7,0,7,0, + 15,128,9,14,28,11,1,0,127,128,127,0,64,0,64,0, + 64,0,126,0,71,0,3,128,3,128,99,128,227,128,227,128, + 103,0,62,0,9,14,28,11,1,0,31,0,115,128,99,128, + 227,0,224,0,238,0,247,0,227,128,227,128,227,128,227,128, + 99,128,115,0,28,0,9,14,28,11,1,0,255,128,255,128, + 129,128,131,0,6,0,6,0,12,0,12,0,28,0,28,0, + 56,0,56,0,56,0,56,0,9,14,28,11,1,0,28,0, + 99,0,193,128,193,128,225,128,251,0,126,0,63,0,79,128, + 195,128,193,128,193,128,227,0,60,0,9,14,28,11,1,0, + 28,0,103,0,227,0,227,128,227,128,227,128,227,128,119,128, + 59,128,3,128,99,128,227,0,231,0,124,0,4,9,9,6, + 1,0,96,240,240,96,0,96,240,240,96,4,12,12,6,1, + 253,96,240,240,96,0,96,240,240,112,32,64,128,10,10,20, + 11,0,0,0,192,3,192,15,0,60,0,240,0,240,0,60, + 0,15,0,3,192,0,192,9,6,12,11,1,2,255,128,255, + 128,0,0,0,0,255,128,255,128,10,10,20,11,0,0,192, + 0,240,0,60,0,15,0,3,192,3,192,15,0,60,0,240, + 0,192,0,9,14,28,10,0,0,31,0,103,128,227,128,227, + 128,99,128,3,0,6,0,12,0,24,0,0,0,24,0,60, + 0,60,0,24,0,15,14,28,16,0,0,7,240,28,12,48, + 4,99,230,102,102,204,102,204,102,216,204,216,204,217,216,206, + 240,96,8,112,48,31,224,14,14,28,14,255,0,1,0,1, + 128,3,128,3,192,5,192,4,192,8,224,8,224,16,112,31, + 240,32,112,32,56,96,56,240,124,12,14,28,14,0,0,255, + 192,113,224,112,224,112,224,112,224,113,192,127,128,112,224,112, + 112,112,112,112,112,112,112,112,224,255,128,12,14,28,14,0, + 0,15,144,60,240,112,48,112,48,224,16,224,16,224,0,224, + 0,224,0,224,16,112,16,112,32,60,96,15,128,14,14,28, + 16,0,0,255,192,112,240,112,56,112,56,112,28,112,28,112, + 28,112,28,112,28,112,28,112,56,112,56,112,240,255,192,11, + 14,28,13,0,0,255,224,112,224,112,96,113,32,113,32,115, + 0,127,0,115,0,113,0,113,32,112,32,112,96,112,224,255, + 224,11,14,28,13,0,0,255,224,112,224,112,96,113,32,113, + 32,115,0,127,0,115,0,113,0,113,0,112,0,112,0,112, + 0,252,0,13,14,28,15,0,0,15,144,60,240,112,48,112, + 48,224,16,224,16,224,0,224,0,224,248,224,112,112,112,112, + 112,60,240,15,144,14,14,28,16,0,0,248,124,112,56,112, + 56,112,56,112,56,112,56,127,248,112,56,112,56,112,56,112, + 56,112,56,112,56,248,124,5,14,14,9,1,0,248,112,112, + 112,112,112,112,112,112,112,112,112,112,248,10,14,28,12,255, + 0,7,192,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,99,128,243,128,243,128,195,128,103,0,60,0,14,14,28, + 16,0,0,248,248,112,96,112,192,113,128,115,0,118,0,126, + 0,127,0,119,128,115,192,113,224,112,240,112,120,248,252,10, + 14,28,12,0,0,248,0,112,0,112,0,112,0,112,0,112, + 0,112,0,112,0,112,0,112,64,112,64,112,192,113,192,255, + 192,17,14,42,19,0,0,252,15,128,60,15,0,62,15,0, + 46,23,0,39,23,0,39,23,0,39,39,0,35,167,0,35, + 167,0,35,199,0,33,199,0,33,199,0,112,135,0,248,143, + 128,14,14,28,16,0,0,240,124,120,56,60,16,60,16,62, + 16,47,16,39,144,35,208,33,240,32,240,32,240,32,112,112, + 48,248,16,14,14,28,16,0,0,15,192,60,240,112,56,112, + 56,224,28,224,28,224,28,224,28,224,28,224,28,112,56,112, + 56,60,240,15,192,12,14,28,14,0,0,255,128,113,224,112, + 240,112,240,112,240,112,240,113,224,127,128,112,0,112,0,112, + 0,112,0,112,0,248,0,14,18,36,16,0,252,15,192,60, + 240,112,56,112,56,224,28,224,28,224,28,224,28,224,28,239, + 28,115,152,113,184,61,240,15,192,0,192,0,232,0,248,0, + 112,13,14,28,16,0,0,255,224,112,240,112,112,112,112,112, + 112,112,224,127,128,113,192,113,192,113,224,112,224,112,224,112, + 232,248,112,10,14,28,12,0,0,30,128,115,128,225,128,224, + 128,240,0,252,0,127,0,31,128,7,192,131,192,129,192,193, + 192,243,128,159,0,11,14,28,13,0,0,255,224,206,96,142, + 32,142,32,142,32,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,31,0,14,14,28,16,0,0,248,124,112, + 56,112,16,112,16,112,16,112,16,112,16,112,16,112,16,112, + 16,112,16,112,16,56,96,15,192,15,14,28,14,255,0,252, + 62,120,28,56,8,60,16,28,16,28,16,14,32,14,32,7, + 64,7,64,3,128,3,128,1,0,1,0,20,14,42,19,255, + 0,253,249,240,120,240,224,56,112,64,60,120,128,28,120,128, + 28,120,128,30,189,0,14,157,0,14,157,0,15,30,0,7, + 14,0,7,14,0,2,4,0,2,4,0,15,14,28,17,0, + 0,126,124,60,56,30,48,14,96,15,192,7,128,3,192,7, + 192,7,224,12,240,24,112,56,120,112,60,248,126,13,14,28, + 15,0,0,252,120,120,48,56,32,60,96,28,64,30,128,15, + 128,7,0,7,0,7,0,7,0,7,0,7,0,31,192,12, + 14,28,13,0,0,255,240,224,112,192,224,129,224,131,192,7, + 128,7,0,15,0,30,0,60,16,120,16,112,48,224,112,255, + 240,4,16,16,6,1,254,240,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,240,8,14,14,9,0,0,192,192,96, + 96,48,48,24,24,12,12,6,6,3,3,4,16,16,6,0, + 254,240,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 240,8,8,8,9,0,6,24,24,60,60,102,102,195,195,9, + 2,4,9,0,253,255,128,255,128,5,4,4,7,1,10,192, + 224,112,24,10,9,18,11,0,0,127,0,227,128,195,128,7, + 128,59,128,227,128,227,128,231,128,121,192,12,14,28,12,255, + 0,240,0,112,0,112,0,112,0,112,0,119,128,120,224,112, + 112,112,112,112,112,112,112,112,112,120,224,111,128,9,9,18, + 10,0,0,31,0,115,128,225,128,224,0,224,0,224,0,224, + 128,113,128,30,0,12,14,28,13,0,0,1,224,0,224,0, + 224,0,224,0,224,30,224,113,224,224,224,224,224,224,224,224, + 224,224,224,113,224,30,240,10,9,18,11,0,0,30,0,115, + 128,225,192,225,192,255,192,224,0,224,64,112,192,31,0,8, + 14,14,7,0,0,30,55,119,112,112,252,112,112,112,112,112, + 112,112,248,11,15,30,11,0,252,0,96,0,224,63,0,115, + 128,97,128,97,128,115,128,63,0,96,0,127,128,63,192,193, + 192,192,192,225,128,127,0,12,14,28,13,0,0,240,0,112, + 0,112,0,112,0,112,0,119,192,121,224,112,224,112,224,112, + 224,112,224,112,224,112,224,249,240,5,14,14,6,0,0,112, + 112,112,0,0,240,112,112,112,112,112,112,112,248,7,18,18, + 6,253,252,14,14,14,0,0,30,14,14,14,14,14,14,14, + 14,14,238,236,120,12,14,28,13,0,0,240,0,112,0,112, + 0,112,0,112,0,115,224,113,128,114,0,118,0,127,0,119, + 128,115,192,113,224,251,240,5,14,14,6,0,0,240,112,112, + 112,112,112,112,112,112,112,112,112,112,248,19,9,27,20,0, + 0,247,223,128,121,243,192,112,225,192,112,225,192,112,225,192, + 112,225,192,112,225,192,112,225,192,249,243,224,12,9,18,13, + 0,0,247,192,121,224,112,224,112,224,112,224,112,224,112,224, + 112,224,249,240,11,9,18,12,0,0,31,0,113,192,224,224, + 224,224,224,224,224,224,224,224,113,192,31,0,12,13,26,12, + 255,252,231,128,120,224,112,112,112,112,112,112,112,112,112,112, + 120,224,119,128,112,0,112,0,112,0,248,0,12,13,26,12, + 0,252,30,96,113,224,224,224,224,224,224,224,224,224,224,224, + 113,224,30,224,0,224,0,224,0,224,1,240,8,9,9,9, + 0,0,246,123,115,112,112,112,112,112,248,9,9,18,10,0, + 0,61,0,99,0,225,0,252,0,127,0,15,128,131,128,195, + 0,190,0,7,13,13,8,0,0,16,16,48,112,252,112,112, + 112,112,112,114,114,60,12,9,18,13,0,0,249,224,112,224, + 112,224,112,224,112,224,112,224,112,224,121,224,62,240,10,9, + 18,9,255,0,249,192,112,128,112,128,57,0,57,0,30,0, + 30,0,12,0,12,0,16,9,18,15,255,0,251,231,113,194, + 113,194,57,228,57,228,30,120,30,120,12,48,12,48,11,9, + 18,12,0,0,253,224,120,192,61,128,31,0,14,0,31,0, + 55,128,99,192,247,224,11,13,26,12,0,252,248,224,112,64, + 112,64,56,128,56,128,29,0,29,0,14,0,14,0,4,0, + 196,0,232,0,112,0,9,9,18,10,0,0,255,128,199,128, + 143,0,30,0,60,0,120,128,240,128,225,128,255,128,5,16, + 16,6,0,254,24,48,112,112,112,112,96,192,96,112,112,112, + 112,112,48,24,2,14,14,11,4,0,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,5,16,16,6,0,254,192,96, + 112,112,112,112,48,24,48,112,112,112,112,112,96,192,10,3, + 6,12,1,4,57,192,127,128,231,0,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,0,0,0,5,0, + 1,4,14,14,7,1,252,96,240,240,96,0,96,96,96,240, + 240,240,240,240,96,9,13,26,11,1,254,0,128,0,128,31, + 0,115,128,227,128,228,0,228,0,232,0,232,128,113,128,30, + 0,32,0,32,0,10,14,28,11,0,0,31,0,49,128,115, + 128,115,128,112,0,112,0,56,0,255,128,28,0,28,0,24, + 64,112,192,159,192,239,128,9,9,18,10,0,2,221,128,255, + 128,99,0,193,128,193,128,193,128,99,0,255,128,221,128,14, + 14,28,15,0,0,252,60,120,24,56,16,28,48,30,32,14, + 96,7,192,31,240,3,128,31,240,3,128,3,128,3,128,15, + 224,2,14,14,11,4,0,192,192,192,192,192,192,0,0,192, + 192,192,192,192,192,7,16,16,8,0,254,120,204,140,192,112, + 124,158,134,194,242,124,28,4,196,204,120,6,2,2,10,2, + 11,204,204,14,14,28,15,0,0,7,128,24,96,32,16,71, + 200,76,200,152,68,152,4,152,4,152,4,76,72,71,136,32, + 16,24,96,7,128,7,8,8,8,0,6,120,204,60,204,220, + 110,0,254,8,5,5,9,0,3,51,102,204,102,51,9,6, + 12,10,0,2,255,128,255,128,1,128,1,128,1,128,1,128, + 5,3,3,6,0,3,248,248,248,14,14,28,15,0,0,7, + 128,24,96,32,16,95,136,76,200,140,196,140,196,143,132,141, + 132,76,200,94,232,32,16,24,96,7,128,6,2,2,8,1, + 11,252,252,6,6,6,7,0,8,120,204,132,132,204,120,10, + 11,22,11,0,0,12,0,12,0,12,0,255,192,255,192,12, + 0,12,0,12,0,0,0,255,192,255,192,6,8,8,6,0, + 6,120,204,204,24,48,96,196,252,6,8,8,6,0,6,120, + 204,12,56,12,204,204,120,5,4,4,7,1,11,24,56,112, + 192,12,13,26,13,0,252,249,240,112,224,112,224,112,224,112, + 224,112,224,112,224,121,224,110,240,96,0,240,0,240,0,96, + 0,13,14,28,14,0,0,63,248,126,112,254,112,254,112,254, + 112,254,112,126,112,62,112,14,112,14,112,14,112,14,112,14, + 112,31,248,4,4,4,5,0,3,96,240,240,96,4,4,4, + 6,1,252,64,112,48,224,6,8,8,6,0,6,48,240,48, + 48,48,48,48,252,6,8,8,7,0,6,120,204,204,204,204, + 120,0,252,8,5,5,9,0,3,204,102,51,102,204,14,14, + 28,15,0,0,48,96,240,96,48,192,48,192,49,128,49,128, + 51,24,255,56,6,120,6,216,13,152,13,252,24,24,24,60, + 14,14,28,15,0,0,48,96,240,96,48,192,48,192,49,128, + 49,128,51,120,255,204,6,204,6,24,12,48,12,96,24,196, + 24,252,14,14,28,15,0,0,120,96,204,96,12,192,56,192, + 13,128,205,128,207,24,123,56,6,120,6,216,13,152,13,252, + 24,24,24,60,9,14,28,10,0,252,12,0,30,0,30,0, + 12,0,0,0,12,0,24,0,48,0,96,0,227,0,227,128, + 227,128,243,0,124,0,14,19,38,14,255,0,12,0,14,0, + 7,0,1,128,0,0,1,0,1,128,3,128,3,192,5,192, + 4,192,8,224,8,224,16,112,31,240,32,112,32,56,96,56, + 240,124,14,19,38,14,255,0,0,96,0,224,1,192,3,0, + 0,0,1,0,1,128,3,128,3,192,5,192,4,192,8,224, + 8,224,16,112,31,240,32,112,32,56,96,56,240,124,14,19, + 38,14,255,0,1,128,3,192,6,96,12,48,0,0,1,0, + 1,128,3,128,3,192,5,192,4,192,8,224,8,224,16,112, + 31,240,32,112,32,56,96,56,240,124,14,18,36,14,255,0, + 3,144,7,224,9,192,0,0,1,0,1,128,3,128,3,192, + 5,192,4,192,8,224,8,224,16,112,31,240,32,112,32,56, + 96,56,240,124,14,17,34,14,255,0,6,96,6,96,0,0, + 1,0,1,128,3,128,3,192,5,192,4,192,8,224,8,224, + 16,112,31,240,32,112,32,56,96,56,240,124,14,19,38,14, + 255,0,1,128,2,64,2,64,1,128,0,0,1,0,1,128, + 3,128,3,192,5,192,4,192,8,224,8,224,16,112,31,240, + 32,112,32,56,96,56,240,124,20,14,42,21,0,0,3,255, + 240,0,248,112,0,184,48,1,56,144,1,56,144,2,57,128, + 4,63,128,4,57,128,15,248,128,16,56,144,16,56,16,32, + 56,48,96,56,112,240,255,240,12,18,36,14,0,252,15,144, + 60,112,112,48,112,48,224,16,224,16,224,0,224,0,224,0, + 224,16,240,16,112,32,60,96,15,128,2,0,3,128,1,128, + 7,0,11,19,38,13,0,0,48,0,56,0,28,0,6,0, + 0,0,255,224,112,224,112,96,113,32,113,32,115,0,127,0, + 115,0,113,0,113,32,112,32,112,96,112,224,255,224,11,19, + 38,13,0,0,1,128,3,128,7,0,12,0,0,0,255,224, + 112,224,112,96,113,32,113,32,115,0,127,0,115,0,113,0, + 113,32,112,32,112,96,112,224,255,224,11,19,38,13,0,0, + 6,0,15,0,25,128,48,192,0,0,255,224,112,224,112,96, + 113,32,113,32,115,0,127,0,115,0,113,0,113,32,112,32, + 112,96,112,224,255,224,11,17,34,13,0,0,25,128,25,128, + 0,0,255,224,112,224,112,96,113,32,113,32,115,0,127,0, + 115,0,113,0,113,32,112,32,112,96,112,224,255,224,6,19, + 19,9,0,0,192,224,112,24,0,124,56,56,56,56,56,56, + 56,56,56,56,56,56,124,6,19,19,9,1,0,12,28,56, + 96,0,248,112,112,112,112,112,112,112,112,112,112,112,112,248, + 8,19,19,9,0,0,24,60,102,195,0,124,56,56,56,56, + 56,56,56,56,56,56,56,56,124,6,17,17,9,1,0,204, + 204,0,248,112,112,112,112,112,112,112,112,112,112,112,112,248, + 14,14,28,16,0,0,255,192,112,240,112,56,112,56,112,28, + 112,28,252,28,112,28,112,28,112,28,112,56,112,56,112,240, + 255,192,14,18,36,16,0,0,7,32,15,192,19,128,0,0, + 240,124,120,56,60,16,60,16,62,16,47,16,39,144,35,208, + 33,240,32,240,32,240,32,112,112,48,248,16,14,19,38,16, + 0,0,12,0,14,0,7,0,1,128,0,0,15,192,60,240, + 112,56,112,56,224,28,224,28,224,28,224,28,224,28,224,28, + 112,56,112,56,60,240,15,192,14,19,38,16,0,0,0,192, + 1,192,3,128,6,0,0,0,15,192,60,240,112,56,112,56, + 224,28,224,28,224,28,224,28,224,28,224,28,112,56,112,56, + 60,240,15,192,14,19,38,16,0,0,3,0,7,128,12,192, + 24,96,0,0,15,192,60,240,112,56,112,56,224,28,224,28, + 224,28,224,28,224,28,224,28,112,56,112,56,60,240,15,192, + 14,18,36,16,0,0,7,32,15,192,19,128,0,0,15,192, + 60,240,112,56,112,56,224,28,224,28,224,28,224,28,224,28, + 224,28,112,56,112,56,60,240,15,192,14,17,34,16,0,0, + 12,192,12,192,0,0,15,192,60,240,112,56,112,56,224,28, + 224,28,224,28,224,28,224,28,224,28,112,56,112,56,60,240, + 15,192,10,10,20,11,0,0,64,128,225,192,115,128,63,0, + 30,0,30,0,63,0,115,128,225,192,64,128,14,15,30,16, + 0,0,0,8,15,208,60,240,112,56,112,88,224,156,225,28, + 225,28,226,28,228,28,232,28,112,56,48,56,60,240,79,192, + 14,19,38,16,0,0,12,0,14,0,7,0,1,128,0,0, + 248,124,112,56,112,16,112,16,112,16,112,16,112,16,112,16, + 112,16,112,16,112,16,112,16,56,96,31,192,14,19,38,16, + 0,0,0,96,0,224,1,192,3,0,0,0,248,124,112,56, + 112,16,112,16,112,16,112,16,112,16,112,16,112,16,112,16, + 112,16,112,16,56,96,31,192,14,19,38,16,0,0,3,0, + 7,128,12,192,24,96,0,0,248,124,112,56,112,16,112,16, + 112,16,112,16,112,16,112,16,112,16,112,16,112,16,112,16, + 56,96,31,192,14,17,34,16,0,0,12,192,12,192,0,0, + 248,124,112,56,112,16,112,16,112,16,112,16,112,16,112,16, + 112,16,112,16,112,16,112,16,56,96,31,192,13,19,38,15, + 0,0,0,96,0,224,1,192,3,0,0,0,252,120,120,48, + 56,32,60,96,28,64,30,128,15,128,7,0,7,0,7,0, + 7,0,7,0,7,0,31,192,12,14,28,14,1,0,248,0, + 112,0,112,0,127,192,113,224,112,240,112,240,112,240,112,240, + 113,224,127,128,112,0,112,0,248,0,11,14,28,12,0,0, + 30,0,51,128,113,192,113,192,113,192,113,128,119,0,113,192, + 112,224,112,224,112,224,112,224,113,192,247,0,10,14,28,11, + 0,0,48,0,56,0,28,0,6,0,0,0,127,0,227,128, + 195,128,7,128,59,128,227,128,227,128,231,128,121,192,10,14, + 28,11,0,0,3,0,7,0,14,0,24,0,0,0,127,0, + 227,128,195,128,7,128,59,128,227,128,227,128,231,128,121,192, + 10,14,28,11,0,0,12,0,30,0,51,0,97,128,0,0, + 127,0,227,128,195,128,7,128,59,128,227,128,227,128,231,128, + 121,192,10,13,26,11,0,0,24,128,63,0,70,0,0,0, + 127,0,227,128,195,128,7,128,59,128,227,128,227,128,231,128, + 121,192,10,12,24,11,0,0,51,0,51,0,0,0,127,0, + 227,128,195,128,7,128,59,128,227,128,227,128,231,128,121,192, + 10,14,28,11,0,0,12,0,18,0,18,0,12,0,0,0, + 127,0,227,128,195,128,7,128,59,128,227,128,227,128,231,128, + 121,192,16,9,18,17,0,0,63,120,99,206,227,135,7,135, + 59,255,227,128,227,129,231,195,120,252,9,13,26,10,0,252, + 31,0,115,128,225,128,224,0,224,0,224,0,224,128,113,128, + 30,0,8,0,14,0,6,0,28,0,10,14,28,11,0,0, + 48,0,56,0,28,0,6,0,0,0,30,0,115,128,225,192, + 225,192,255,192,224,0,224,64,112,192,31,0,10,14,28,11, + 0,0,3,0,7,0,14,0,24,0,0,0,30,0,115,128, + 225,192,225,192,255,192,224,0,224,64,112,192,31,0,10,14, + 28,11,0,0,12,0,30,0,51,0,97,128,0,0,30,0, + 115,128,225,192,225,192,255,192,224,0,224,64,112,192,31,0, + 10,12,24,11,0,0,51,0,51,0,0,0,30,0,115,128, + 225,192,225,192,255,192,224,0,224,64,112,192,31,0,6,14, + 14,6,255,0,192,224,112,24,0,120,56,56,56,56,56,56, + 56,124,6,14,14,6,0,0,12,28,56,96,0,240,112,112, + 112,112,112,112,112,248,8,14,14,6,255,0,24,60,102,195, + 0,120,56,56,56,56,56,56,56,124,5,12,12,6,0,0, + 216,216,0,240,112,112,112,112,112,112,112,248,11,14,28,12, + 0,0,192,0,51,0,28,0,102,0,3,0,31,128,113,192, + 224,224,224,224,224,224,224,224,224,224,113,192,31,0,12,13, + 26,13,0,0,12,64,31,128,35,0,0,0,247,192,121,224, + 112,224,112,224,112,224,112,224,112,224,112,224,249,240,11,14, + 28,12,0,0,48,0,56,0,28,0,6,0,0,0,31,0, + 113,192,224,224,224,224,224,224,224,224,224,224,113,192,31,0, + 11,14,28,12,0,0,1,128,3,128,7,0,12,0,0,0, + 31,0,113,192,224,224,224,224,224,224,224,224,224,224,113,192, + 31,0,11,14,28,12,0,0,6,0,15,0,25,128,48,192, + 0,0,31,0,113,192,224,224,224,224,224,224,224,224,224,224, + 113,192,31,0,11,13,26,12,0,0,24,128,63,0,70,0, + 0,0,31,0,113,192,224,224,224,224,224,224,224,224,224,224, + 113,192,31,0,11,12,24,12,0,0,51,0,51,0,0,0, + 31,0,113,192,224,224,224,224,224,224,224,224,224,224,113,192, + 31,0,10,10,20,11,0,0,12,0,12,0,0,0,0,0, + 255,192,255,192,0,0,0,0,12,0,12,0,10,11,22,11, + 0,255,1,0,31,0,115,128,227,192,229,192,229,192,233,192, + 233,192,115,128,62,0,32,0,12,14,28,13,0,0,24,0, + 28,0,14,0,3,0,0,0,249,240,112,224,112,224,112,224, + 112,224,112,224,112,224,121,224,62,240,12,14,28,13,0,0, + 3,0,7,0,14,0,24,0,0,0,249,240,112,224,112,224, + 112,224,112,224,112,224,112,224,121,224,62,240,12,14,28,13, + 0,0,6,0,15,0,25,128,48,192,0,0,249,240,112,224, + 112,224,112,224,112,224,112,224,112,224,121,224,62,240,12,12, + 24,13,0,0,25,128,25,128,0,0,249,240,112,224,112,224, + 112,224,112,224,112,224,112,224,121,224,62,240,11,18,36,12, + 0,252,1,128,3,128,7,0,12,0,0,0,248,224,112,64, + 112,64,56,128,56,128,29,0,29,0,14,0,14,0,4,0, + 196,0,232,0,112,0,12,18,36,12,255,252,240,0,112,0, + 112,0,112,0,112,0,119,128,120,224,112,112,112,112,112,112, + 112,112,112,112,120,224,119,128,112,0,112,0,112,0,248,0, + 11,16,32,12,0,252,25,128,25,128,0,0,248,224,112,64, + 112,64,56,128,56,128,29,0,29,0,14,0,14,0,4,0, + 196,0,232,0,112,0}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--20-140-100-100-P-113-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=18 x= 4 y=10 dx=20 dy= 0 ascent=16 len=42 + Font Bounding box w=24 h=32 x=-3 y=-8 + Calculated Min Values x=-3 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB14r[2603] U8G_SECTION(".progmem.u8g_font_ncenB14r") = { + 0,24,32,253,248,14,3,71,7,51,32,127,252,16,252,14, + 252,0,0,0,5,0,1,4,14,14,6,1,0,96,240,240, + 240,240,240,96,96,96,0,96,240,240,96,5,5,5,8,1, + 9,216,216,216,216,216,11,12,24,12,0,1,13,128,13,128, + 13,128,127,224,127,224,27,0,27,0,255,192,255,192,54,0, + 54,0,54,0,9,18,36,11,1,254,8,0,8,0,62,0, + 107,128,203,128,201,128,232,0,252,0,255,0,127,128,31,128, + 11,128,201,128,233,128,235,0,62,0,8,0,8,0,14,15, + 30,15,0,255,56,192,103,64,196,192,196,128,197,128,201,0, + 115,0,2,56,6,100,4,196,12,196,8,196,24,200,16,112, + 16,0,16,14,28,17,1,0,7,128,12,192,24,192,24,192, + 29,128,31,0,14,62,63,24,119,144,227,224,225,224,224,241, + 241,254,127,28,2,5,5,5,1,9,192,192,192,192,192,5, + 16,16,6,0,254,24,48,112,96,224,192,192,192,192,192,192, + 224,96,112,48,24,5,16,16,6,0,254,192,96,112,48,56, + 24,24,24,24,24,24,56,48,112,96,192,7,7,7,8,0, + 7,56,146,214,56,214,146,56,10,10,20,11,0,0,12,0, + 12,0,12,0,12,0,255,192,255,192,12,0,12,0,12,0, + 12,0,4,7,7,5,0,253,96,240,240,112,32,64,128,5, + 3,3,6,0,3,248,248,248,4,4,4,5,0,0,96,240, + 240,96,6,14,14,7,0,0,12,12,8,24,24,16,48,48, + 32,96,96,64,192,192,9,14,28,11,1,0,28,0,119,0, + 99,0,227,128,227,128,227,128,227,128,227,128,227,128,227,128, + 227,128,99,0,119,0,28,0,7,14,14,11,2,0,24,56, + 248,56,56,56,56,56,56,56,56,56,56,254,9,14,28,11, + 1,0,30,0,103,0,227,128,227,128,99,128,3,128,7,0, + 7,0,14,0,24,0,48,0,96,128,255,128,255,128,9,14, + 28,11,1,0,30,0,103,0,227,128,227,128,99,128,3,0, + 28,0,3,0,3,128,99,128,227,128,227,128,103,0,62,0, + 9,14,28,11,1,0,1,0,3,0,7,0,15,0,15,0, + 23,0,39,0,71,0,71,0,135,0,255,128,7,0,7,0, + 15,128,9,14,28,11,1,0,127,128,127,0,64,0,64,0, + 64,0,126,0,71,0,3,128,3,128,99,128,227,128,227,128, + 103,0,62,0,9,14,28,11,1,0,31,0,115,128,99,128, + 227,0,224,0,238,0,247,0,227,128,227,128,227,128,227,128, + 99,128,115,0,28,0,9,14,28,11,1,0,255,128,255,128, + 129,128,131,0,6,0,6,0,12,0,12,0,28,0,28,0, + 56,0,56,0,56,0,56,0,9,14,28,11,1,0,28,0, + 99,0,193,128,193,128,225,128,251,0,126,0,63,0,79,128, + 195,128,193,128,193,128,227,0,60,0,9,14,28,11,1,0, + 28,0,103,0,227,0,227,128,227,128,227,128,227,128,119,128, + 59,128,3,128,99,128,227,0,231,0,124,0,4,9,9,6, + 1,0,96,240,240,96,0,96,240,240,96,4,12,12,6,1, + 253,96,240,240,96,0,96,240,240,112,32,64,128,10,10,20, + 11,0,0,0,192,3,192,15,0,60,0,240,0,240,0,60, + 0,15,0,3,192,0,192,9,6,12,11,1,2,255,128,255, + 128,0,0,0,0,255,128,255,128,10,10,20,11,0,0,192, + 0,240,0,60,0,15,0,3,192,3,192,15,0,60,0,240, + 0,192,0,9,14,28,10,0,0,31,0,103,128,227,128,227, + 128,99,128,3,0,6,0,12,0,24,0,0,0,24,0,60, + 0,60,0,24,0,15,14,28,16,0,0,7,240,28,12,48, + 4,99,230,102,102,204,102,204,102,216,204,216,204,217,216,206, + 240,96,8,112,48,31,224,14,14,28,14,255,0,1,0,1, + 128,3,128,3,192,5,192,4,192,8,224,8,224,16,112,31, + 240,32,112,32,56,96,56,240,124,12,14,28,14,0,0,255, + 192,113,224,112,224,112,224,112,224,113,192,127,128,112,224,112, + 112,112,112,112,112,112,112,112,224,255,128,12,14,28,14,0, + 0,15,144,60,240,112,48,112,48,224,16,224,16,224,0,224, + 0,224,0,224,16,112,16,112,32,60,96,15,128,14,14,28, + 16,0,0,255,192,112,240,112,56,112,56,112,28,112,28,112, + 28,112,28,112,28,112,28,112,56,112,56,112,240,255,192,11, + 14,28,13,0,0,255,224,112,224,112,96,113,32,113,32,115, + 0,127,0,115,0,113,0,113,32,112,32,112,96,112,224,255, + 224,11,14,28,13,0,0,255,224,112,224,112,96,113,32,113, + 32,115,0,127,0,115,0,113,0,113,0,112,0,112,0,112, + 0,252,0,13,14,28,15,0,0,15,144,60,240,112,48,112, + 48,224,16,224,16,224,0,224,0,224,248,224,112,112,112,112, + 112,60,240,15,144,14,14,28,16,0,0,248,124,112,56,112, + 56,112,56,112,56,112,56,127,248,112,56,112,56,112,56,112, + 56,112,56,112,56,248,124,5,14,14,9,1,0,248,112,112, + 112,112,112,112,112,112,112,112,112,112,248,10,14,28,12,255, + 0,7,192,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,99,128,243,128,243,128,195,128,103,0,60,0,14,14,28, + 16,0,0,248,248,112,96,112,192,113,128,115,0,118,0,126, + 0,127,0,119,128,115,192,113,224,112,240,112,120,248,252,10, + 14,28,12,0,0,248,0,112,0,112,0,112,0,112,0,112, + 0,112,0,112,0,112,0,112,64,112,64,112,192,113,192,255, + 192,17,14,42,19,0,0,252,15,128,60,15,0,62,15,0, + 46,23,0,39,23,0,39,23,0,39,39,0,35,167,0,35, + 167,0,35,199,0,33,199,0,33,199,0,112,135,0,248,143, + 128,14,14,28,16,0,0,240,124,120,56,60,16,60,16,62, + 16,47,16,39,144,35,208,33,240,32,240,32,240,32,112,112, + 48,248,16,14,14,28,16,0,0,15,192,60,240,112,56,112, + 56,224,28,224,28,224,28,224,28,224,28,224,28,112,56,112, + 56,60,240,15,192,12,14,28,14,0,0,255,128,113,224,112, + 240,112,240,112,240,112,240,113,224,127,128,112,0,112,0,112, + 0,112,0,112,0,248,0,14,18,36,16,0,252,15,192,60, + 240,112,56,112,56,224,28,224,28,224,28,224,28,224,28,239, + 28,115,152,113,184,61,240,15,192,0,192,0,232,0,248,0, + 112,13,14,28,16,0,0,255,224,112,240,112,112,112,112,112, + 112,112,224,127,128,113,192,113,192,113,224,112,224,112,224,112, + 232,248,112,10,14,28,12,0,0,30,128,115,128,225,128,224, + 128,240,0,252,0,127,0,31,128,7,192,131,192,129,192,193, + 192,243,128,159,0,11,14,28,13,0,0,255,224,206,96,142, + 32,142,32,142,32,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,31,0,14,14,28,16,0,0,248,124,112, + 56,112,16,112,16,112,16,112,16,112,16,112,16,112,16,112, + 16,112,16,112,16,56,96,15,192,15,14,28,14,255,0,252, + 62,120,28,56,8,60,16,28,16,28,16,14,32,14,32,7, + 64,7,64,3,128,3,128,1,0,1,0,20,14,42,19,255, + 0,253,249,240,120,240,224,56,112,64,60,120,128,28,120,128, + 28,120,128,30,189,0,14,157,0,14,157,0,15,30,0,7, + 14,0,7,14,0,2,4,0,2,4,0,15,14,28,17,0, + 0,126,124,60,56,30,48,14,96,15,192,7,128,3,192,7, + 192,7,224,12,240,24,112,56,120,112,60,248,126,13,14,28, + 15,0,0,252,120,120,48,56,32,60,96,28,64,30,128,15, + 128,7,0,7,0,7,0,7,0,7,0,7,0,31,192,12, + 14,28,13,0,0,255,240,224,112,192,224,129,224,131,192,7, + 128,7,0,15,0,30,0,60,16,120,16,112,48,224,112,255, + 240,4,16,16,6,1,254,240,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,240,8,14,14,9,0,0,192,192,96, + 96,48,48,24,24,12,12,6,6,3,3,4,16,16,6,0, + 254,240,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 240,8,8,8,9,0,6,24,24,60,60,102,102,195,195,9, + 2,4,9,0,253,255,128,255,128,5,4,4,7,1,10,192, + 224,112,24,10,9,18,11,0,0,127,0,227,128,195,128,7, + 128,59,128,227,128,227,128,231,128,121,192,12,14,28,12,255, + 0,240,0,112,0,112,0,112,0,112,0,119,128,120,224,112, + 112,112,112,112,112,112,112,112,112,120,224,111,128,9,9,18, + 10,0,0,31,0,115,128,225,128,224,0,224,0,224,0,224, + 128,113,128,30,0,12,14,28,13,0,0,1,224,0,224,0, + 224,0,224,0,224,30,224,113,224,224,224,224,224,224,224,224, + 224,224,224,113,224,30,240,10,9,18,11,0,0,30,0,115, + 128,225,192,225,192,255,192,224,0,224,64,112,192,31,0,8, + 14,14,7,0,0,30,55,119,112,112,252,112,112,112,112,112, + 112,112,248,11,15,30,11,0,252,0,96,0,224,63,0,115, + 128,97,128,97,128,115,128,63,0,96,0,127,128,63,192,193, + 192,192,192,225,128,127,0,12,14,28,13,0,0,240,0,112, + 0,112,0,112,0,112,0,119,192,121,224,112,224,112,224,112, + 224,112,224,112,224,112,224,249,240,5,14,14,6,0,0,112, + 112,112,0,0,240,112,112,112,112,112,112,112,248,7,18,18, + 6,253,252,14,14,14,0,0,30,14,14,14,14,14,14,14, + 14,14,238,236,120,12,14,28,13,0,0,240,0,112,0,112, + 0,112,0,112,0,115,224,113,128,114,0,118,0,127,0,119, + 128,115,192,113,224,251,240,5,14,14,6,0,0,240,112,112, + 112,112,112,112,112,112,112,112,112,112,248,19,9,27,20,0, + 0,247,223,128,121,243,192,112,225,192,112,225,192,112,225,192, + 112,225,192,112,225,192,112,225,192,249,243,224,12,9,18,13, + 0,0,247,192,121,224,112,224,112,224,112,224,112,224,112,224, + 112,224,249,240,11,9,18,12,0,0,31,0,113,192,224,224, + 224,224,224,224,224,224,224,224,113,192,31,0,12,13,26,12, + 255,252,231,128,120,224,112,112,112,112,112,112,112,112,112,112, + 120,224,119,128,112,0,112,0,112,0,248,0,12,13,26,12, + 0,252,30,96,113,224,224,224,224,224,224,224,224,224,224,224, + 113,224,30,224,0,224,0,224,0,224,1,240,8,9,9,9, + 0,0,246,123,115,112,112,112,112,112,248,9,9,18,10,0, + 0,61,0,99,0,225,0,252,0,127,0,15,128,131,128,195, + 0,190,0,7,13,13,8,0,0,16,16,48,112,252,112,112, + 112,112,112,114,114,60,12,9,18,13,0,0,249,224,112,224, + 112,224,112,224,112,224,112,224,112,224,121,224,62,240,10,9, + 18,9,255,0,249,192,112,128,112,128,57,0,57,0,30,0, + 30,0,12,0,12,0,16,9,18,15,255,0,251,231,113,194, + 113,194,57,228,57,228,30,120,30,120,12,48,12,48,11,9, + 18,12,0,0,253,224,120,192,61,128,31,0,14,0,31,0, + 55,128,99,192,247,224,11,13,26,12,0,252,248,224,112,64, + 112,64,56,128,56,128,29,0,29,0,14,0,14,0,4,0, + 196,0,232,0,112,0,9,9,18,10,0,0,255,128,199,128, + 143,0,30,0,60,0,120,128,240,128,225,128,255,128,5,16, + 16,6,0,254,24,48,112,112,112,112,96,192,96,112,112,112, + 112,112,48,24,2,14,14,11,4,0,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,5,16,16,6,0,254,192,96, + 112,112,112,112,48,24,48,112,112,112,112,112,96,192,10,3, + 6,12,1,4,57,192,127,128,231,0,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--25-180-100-100-P-149-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=26 h=24 x= 6 y=15 dx=26 dy= 0 ascent=24 len=72 + Font Bounding box w=33 h=40 x=-4 y=-10 + Calculated Min Values x=-3 y=-5 dx= 0 dy= 0 + Pure Font ascent =18 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =24 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB18[8114] U8G_SECTION(".progmem.u8g_font_ncenB18") = { + 0,33,40,252,246,18,4,68,10,106,32,255,251,24,251,18, + 251,0,0,0,7,0,1,5,18,18,7,1,0,112,248,248, + 248,112,112,112,112,112,112,32,32,0,0,112,248,248,112,6, + 6,6,8,1,12,204,204,204,204,204,136,12,18,36,14,1, + 0,12,192,12,192,12,192,12,192,12,192,127,240,127,240,25, + 128,25,128,25,128,25,128,255,224,255,224,51,0,51,0,51, + 0,51,0,51,0,12,23,46,14,1,253,4,0,4,0,31, + 192,116,96,100,240,228,240,228,240,244,96,252,0,255,0,127, + 192,31,224,7,240,5,240,100,240,244,112,244,112,244,96,100, + 224,63,128,4,0,4,0,4,0,19,18,54,21,1,0,30, + 14,0,123,54,0,113,204,0,241,12,0,225,24,0,226,24, + 0,226,48,0,100,48,0,56,96,0,0,99,192,0,207,96, + 0,206,32,1,158,32,1,156,32,3,28,64,3,28,64,6, + 12,128,6,7,0,20,18,54,22,1,0,1,240,0,7,56, + 0,14,24,0,14,24,0,14,24,0,15,48,0,15,224,0, + 7,192,0,15,192,0,57,227,240,113,241,192,240,241,128,240, + 121,0,240,127,0,240,62,16,120,31,16,124,63,224,31,199, + 192,2,6,6,6,2,12,192,192,192,192,192,192,6,21,21, + 8,1,253,4,12,24,48,48,96,96,224,224,224,224,224,224, + 224,96,96,48,48,24,12,4,6,21,21,8,1,253,128,192, + 96,48,48,24,24,28,28,28,28,28,28,28,24,24,48,48, + 96,192,128,9,10,20,11,1,8,28,0,28,0,201,128,235, + 128,62,0,62,0,235,128,201,128,28,0,28,0,12,12,24, + 14,1,1,6,0,6,0,6,0,6,0,6,0,255,240,255, + 240,6,0,6,0,6,0,6,0,6,0,5,8,8,7,1, + 252,112,248,248,120,48,32,64,128,6,3,3,8,1,5,252, + 252,252,5,4,4,7,1,0,112,248,248,112,7,18,18,9, + 1,0,6,6,6,12,12,12,24,24,24,48,48,48,96,96, + 96,192,192,192,12,18,36,14,1,0,15,0,57,192,112,224, + 112,224,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,112,224,112,224,57,192,15,0,10,18, + 36,14,2,0,30,0,254,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,63,0,255,192,11,18,36,14,1,0,31,0, + 99,192,225,224,241,224,241,224,241,224,97,224,1,192,3,192, + 3,128,7,0,14,0,24,32,48,32,112,96,255,224,255,224, + 255,224,12,18,36,14,1,0,15,128,49,224,112,224,120,240, + 120,240,120,240,48,224,1,192,15,0,1,192,0,224,96,240, + 240,240,240,240,240,240,224,224,97,224,31,128,12,18,36,14, + 1,0,0,192,1,192,3,192,7,192,7,192,15,192,27,192, + 19,192,51,192,99,192,99,192,195,192,255,240,255,240,3,192, + 3,192,3,192,15,240,12,18,36,14,1,0,127,240,127,224, + 127,192,64,0,64,0,64,0,95,0,113,192,96,224,0,240, + 0,240,0,240,96,240,240,240,240,240,240,224,97,192,63,0, + 12,18,36,14,1,0,15,128,56,192,113,224,113,224,241,224, + 240,192,240,0,247,128,249,224,240,224,240,240,240,240,240,240, + 240,240,240,240,112,224,121,224,31,128,12,18,36,14,1,0, + 255,240,255,240,255,224,192,96,128,192,129,192,3,128,3,128, + 7,0,7,0,15,0,15,0,30,0,30,0,30,0,30,0, + 30,0,12,0,12,18,36,14,1,0,15,0,57,192,112,224, + 112,224,112,224,120,224,124,192,63,128,31,128,63,192,119,224, + 225,240,224,240,224,112,224,112,224,96,112,192,31,128,12,18, + 36,14,1,0,31,128,121,224,112,224,240,240,240,240,240,240, + 240,240,240,240,112,240,121,240,30,240,0,240,48,240,120,240, + 120,224,120,224,49,192,31,0,5,12,12,7,1,0,112,248, + 248,112,0,0,0,0,112,248,248,112,5,16,16,7,1,252, + 112,248,248,112,0,0,0,0,112,248,248,120,48,32,64,128, + 12,12,24,14,1,1,0,48,0,240,3,192,15,0,60,0, + 240,0,240,0,60,0,15,0,3,192,0,240,0,48,12,6, + 12,14,1,4,255,240,255,240,0,0,0,0,255,240,255,240, + 12,12,24,14,1,1,192,0,240,0,60,0,15,0,3,192, + 0,240,0,240,3,192,15,0,60,0,240,0,192,0,11,18, + 36,13,1,0,63,0,99,192,241,224,241,224,97,224,1,224, + 1,192,3,128,7,0,12,0,24,0,24,0,0,0,0,0, + 28,0,62,0,62,0,28,0,19,18,54,20,1,0,1,252, + 0,15,6,0,12,1,128,48,0,192,48,220,192,99,188,96, + 103,28,96,199,28,96,206,28,96,206,56,96,206,56,64,206, + 56,192,206,121,128,103,191,0,96,0,0,56,1,0,28,7, + 0,7,252,0,19,18,54,19,0,0,0,96,0,0,96,0, + 0,240,0,0,240,0,1,120,0,1,120,0,3,60,0,2, + 60,0,2,60,0,6,30,0,4,30,0,7,254,0,12,15, + 0,8,15,0,8,15,0,24,7,128,56,7,128,254,31,224, + 17,18,54,19,1,0,255,248,0,60,62,0,60,31,0,60, + 31,0,60,31,0,60,31,0,60,30,0,60,60,0,63,248, + 0,60,30,0,60,15,0,60,15,128,60,15,128,60,15,128, + 60,15,128,60,15,128,60,31,0,255,252,0,17,18,54,19, + 1,0,3,249,128,15,15,128,60,3,128,60,1,128,120,1, + 128,120,0,128,248,0,128,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,120,0,128,120,0,128,60,1,0,60, + 1,0,15,6,0,3,248,0,18,18,54,20,1,0,255,240, + 0,60,60,0,60,15,0,60,15,0,60,7,128,60,7,128, + 60,7,192,60,7,192,60,7,192,60,7,192,60,7,192,60, + 7,192,60,7,128,60,7,128,60,15,0,60,15,0,60,60, + 0,255,240,0,15,18,36,18,1,0,255,254,60,30,60,6, + 60,2,60,2,60,34,60,32,60,96,63,224,60,96,60,32, + 60,32,60,2,60,2,60,2,60,6,60,30,255,254,15,18, + 36,17,1,0,255,254,60,30,60,6,60,2,60,2,60,34, + 60,32,60,96,63,224,60,96,60,32,60,32,60,0,60,0, + 60,0,60,0,60,0,255,0,18,18,54,20,1,0,3,249, + 128,15,15,128,60,3,128,60,1,128,120,1,128,120,0,128, + 248,0,128,248,0,0,248,0,0,248,0,0,248,15,192,248, + 7,128,120,7,128,120,7,128,60,7,128,60,7,128,15,13, + 128,3,248,128,19,18,54,21,1,0,255,31,224,60,7,128, + 60,7,128,60,7,128,60,7,128,60,7,128,60,7,128,60, + 7,128,63,255,128,60,7,128,60,7,128,60,7,128,60,7, + 128,60,7,128,60,7,128,60,7,128,60,7,128,255,31,224, + 8,18,18,10,1,0,255,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,255,14,18,36,16,0,0,3,252, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,96,240,240,240,240,240,224,240,192,224,97,224, + 63,128,20,18,54,21,1,0,255,15,192,60,3,0,60,6, + 0,60,12,0,60,24,0,60,48,0,60,96,0,60,224,0, + 61,240,0,63,248,0,62,248,0,60,124,0,60,62,0,60, + 31,0,60,31,0,60,15,128,60,7,192,255,15,240,15,18, + 36,17,1,0,255,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,2,60,2, + 60,2,60,6,60,30,255,254,22,18,54,24,1,0,252,1, + 252,60,1,240,62,3,240,62,2,240,46,2,240,47,6,240, + 39,4,240,39,132,240,39,140,240,35,136,240,35,200,240,35, + 216,240,33,208,240,33,240,240,32,224,240,32,224,240,112,96, + 240,248,67,252,20,18,54,22,1,0,252,7,240,62,1,192, + 31,0,128,31,128,128,31,192,128,23,224,128,19,240,128,17, + 240,128,16,248,128,16,124,128,16,126,128,16,63,128,16,31, + 128,16,15,128,16,7,128,16,3,128,56,1,128,254,0,128, + 19,18,54,21,1,0,3,248,0,15,30,0,60,7,128,60, + 7,128,120,3,192,120,3,192,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,248,3,224,120,3,192,120,3,192, + 60,7,128,60,7,128,15,30,0,3,248,0,17,18,54,18, + 1,0,255,252,0,60,31,0,60,15,0,60,15,128,60,15, + 128,60,15,128,60,15,128,60,15,0,60,31,0,63,248,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,255,128,0,19,23,69,21,1,251,3,248, + 0,15,30,0,60,7,128,60,7,128,120,3,192,120,3,192, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,251, + 227,224,126,115,192,124,51,192,60,51,128,60,27,128,15,30, + 0,3,254,0,0,14,0,0,15,32,0,7,192,0,7,192, + 0,3,128,19,18,54,21,1,0,255,248,0,60,62,0,60, + 31,0,60,31,0,60,31,0,60,31,0,60,30,0,60,60, + 0,63,224,0,60,120,0,60,60,0,60,60,0,60,62,0, + 60,30,0,60,31,32,60,15,32,60,15,192,255,135,128,14, + 18,36,16,1,0,15,200,56,120,96,24,224,24,224,8,240, + 8,254,0,255,192,127,240,63,248,15,252,1,252,128,60,128, + 28,192,28,192,24,240,112,159,192,16,18,36,18,1,0,255, + 255,227,199,195,195,131,193,131,193,131,193,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,15,240,19,18,54,21,1,0,255,15,224,60,3,128,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,2,0,30,2,0,31,140,0,7,248,0,19, + 18,54,19,0,0,255,15,224,60,3,128,60,3,0,30,2, + 0,30,2,0,30,6,0,15,4,0,15,4,0,15,12,0, + 7,136,0,7,136,0,7,152,0,3,208,0,3,208,0,1, + 224,0,1,224,0,0,192,0,0,192,0,26,18,72,26,0, + 0,255,127,159,192,60,30,7,0,60,30,6,0,30,15,4, + 0,30,15,4,0,30,15,12,0,15,31,136,0,15,23,136, + 0,15,23,152,0,7,179,208,0,7,163,208,0,7,163,240, + 0,3,225,224,0,3,193,224,0,3,193,224,0,1,192,192, + 0,1,128,192,0,1,128,192,0,20,18,54,20,0,0,255, + 135,224,62,1,128,31,3,0,31,134,0,15,140,0,7,216, + 0,3,240,0,3,224,0,1,240,0,0,248,0,1,248,0, + 3,124,0,6,62,0,4,31,0,12,31,0,24,15,128,48, + 7,192,252,31,240,18,18,54,18,0,0,255,15,192,60,3, + 0,30,2,0,30,6,0,15,4,0,15,12,0,7,136,0, + 7,152,0,3,208,0,3,240,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,7,248, + 0,15,18,36,17,1,0,127,254,112,62,96,124,64,120,64, + 248,0,240,1,224,3,224,3,192,7,128,15,128,15,0,30, + 0,62,2,60,2,120,6,248,14,255,254,6,21,21,8,1, + 253,252,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,252,10,18,36,12,1,0,192,0,224,0, + 224,0,112,0,112,0,56,0,56,0,28,0,28,0,14,0, + 14,0,7,0,7,0,3,128,3,128,1,192,1,192,0,192, + 6,21,21,8,1,253,252,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,252,10,10,20,15,2, + 8,12,0,12,0,30,0,30,0,51,0,51,0,97,128,97, + 128,192,192,192,192,12,2,4,12,0,252,255,240,255,240,5, + 5,5,7,1,13,224,224,112,48,24,14,12,24,15,0,0, + 127,128,241,224,240,240,96,240,1,240,14,240,120,240,240,240, + 240,240,240,240,249,252,126,56,16,18,36,16,255,0,252,0, + 60,0,60,0,60,0,60,0,60,0,61,240,63,28,62,30, + 60,14,60,15,60,15,60,15,60,15,60,14,60,30,62,28, + 39,240,13,12,24,14,0,0,15,240,56,120,120,120,112,48, + 240,0,240,0,240,0,240,0,120,8,120,8,60,48,31,224, + 16,18,36,17,0,0,0,252,0,60,0,60,0,60,0,60, + 0,60,15,188,56,252,120,124,112,60,240,60,240,60,240,60, + 240,60,112,60,120,124,56,252,15,191,14,12,24,15,0,0, + 15,192,56,112,120,120,112,56,240,60,255,252,240,0,240,0, + 120,8,120,8,60,48,15,224,12,18,36,10,0,0,7,224, + 28,240,28,240,60,96,60,0,60,0,255,128,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 255,0,13,18,36,15,1,251,0,56,31,248,121,224,240,240, + 240,240,240,240,240,240,121,224,63,128,96,0,224,0,255,192, + 127,240,127,248,96,56,192,24,224,48,127,224,17,18,54,18, + 0,0,252,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,248,0,61,252,0,62,62,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,254,63,128,8,18,18,9,0,0,24,60, + 60,24,0,0,252,60,60,60,60,60,60,60,60,60,60,255, + 8,23,23,7,253,251,6,15,15,6,0,0,63,15,15,15, + 15,15,15,15,15,15,15,15,15,15,206,206,120,17,18,54, + 17,0,0,252,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,254,0,60,56,0,60,48,0,60,96, + 0,60,192,0,63,192,0,63,224,0,60,240,0,60,120,0, + 60,60,0,60,30,0,255,127,128,8,18,18,9,0,0,252, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 255,24,12,36,25,0,0,252,240,240,61,249,248,62,126,124, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,60,254,126,127,17,12,36,18,0, + 0,252,248,0,61,252,0,62,62,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,254,63,128,14,12,24,15,0,0,15,192,56,112,120, + 120,112,56,240,60,240,60,240,60,240,60,112,56,120,120,56, + 112,15,192,16,17,34,16,255,251,253,240,63,28,60,30,60, + 14,60,15,60,15,60,15,60,15,60,14,62,30,63,28,61, + 240,60,0,60,0,60,0,60,0,255,0,16,17,34,16,0, + 251,15,132,60,236,120,60,112,60,240,60,240,60,240,60,240, + 60,112,60,120,124,56,252,15,188,0,60,0,60,0,60,0, + 60,0,255,12,12,24,12,0,0,252,224,61,240,62,240,60, + 96,60,0,60,0,60,0,60,0,60,0,60,0,60,0,255, + 0,10,12,24,11,0,0,62,128,99,128,193,128,224,128,252, + 0,255,128,127,192,15,192,129,192,192,192,225,128,191,0,10, + 17,34,10,0,0,4,0,12,0,12,0,28,0,60,0,255, + 128,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 64,60,64,31,128,15,0,17,12,36,18,0,0,254,126,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,62,62,0,31,222,0,15,159, + 128,16,12,24,15,255,0,255,31,60,4,30,12,30,8,15, + 24,15,16,7,176,7,160,3,224,3,192,1,192,1,128,23, + 12,36,22,255,0,255,63,62,60,30,8,60,30,8,30,63, + 24,30,47,16,30,47,16,15,103,176,15,71,160,7,195,224, + 7,131,192,3,129,192,3,1,128,17,12,36,16,255,0,255, + 31,0,62,12,0,31,24,0,15,176,0,7,224,0,3,192, + 0,1,224,0,3,240,0,6,248,0,12,124,0,24,62,0, + 124,127,128,16,17,34,15,255,251,254,63,60,12,30,8,30, + 24,15,16,15,48,7,160,7,224,3,192,3,192,1,192,1, + 128,1,128,97,0,243,0,254,0,120,0,11,12,24,12,0, + 0,255,224,225,224,195,224,135,192,143,128,15,0,30,0,62, + 32,124,32,248,96,240,224,255,224,6,21,21,8,1,253,28, + 48,112,112,112,112,112,112,112,96,192,96,112,112,112,112,112, + 112,112,48,28,3,18,18,15,6,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,6,21,21,8, + 1,253,224,48,56,56,56,56,56,56,56,24,12,24,56,56, + 56,56,56,56,56,48,224,12,5,10,15,1,4,56,32,126, + 112,255,240,231,224,65,192,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,7,0,1,5,18, + 18,7,1,251,112,248,248,112,0,0,32,32,112,112,112,112, + 112,112,248,248,248,112,12,15,30,14,1,255,0,32,0,64, + 15,192,56,240,121,240,113,96,242,0,242,0,244,0,244,0, + 120,16,120,16,60,96,47,192,64,0,14,18,36,15,0,0, + 3,224,15,48,14,120,30,120,30,48,30,0,30,0,30,0, + 127,224,15,0,15,0,15,0,7,0,7,4,126,12,207,252, + 207,248,113,240,12,12,24,14,1,2,207,48,255,240,127,224, + 112,224,224,112,224,112,224,112,224,112,112,224,127,224,255,240, + 207,48,19,18,54,19,0,0,255,143,224,62,3,0,62,3, + 0,31,6,0,31,6,0,15,140,0,15,140,0,7,216,0, + 7,248,0,31,254,0,1,224,0,1,224,0,31,254,0,1, + 224,0,1,224,0,1,224,0,3,240,0,15,252,0,3,18, + 18,14,6,0,224,224,224,224,224,224,224,0,0,0,224,224, + 224,224,224,224,224,224,11,20,40,13,1,254,31,0,35,128, + 99,128,99,0,120,0,62,0,63,128,71,192,193,224,224,224, + 240,96,124,96,63,64,15,128,3,128,1,128,48,128,112,128, + 113,0,62,0,10,4,8,12,1,14,97,128,243,192,243,192, + 97,128,19,18,54,21,1,0,3,248,0,15,254,0,60,7, + 128,48,1,128,97,248,192,103,24,192,198,8,96,206,0,96, + 206,0,96,206,0,96,206,0,96,199,4,96,103,136,192,97, + 240,192,48,1,128,60,7,128,15,254,0,3,248,0,8,10, + 10,10,1,8,120,206,6,126,198,206,119,0,0,255,11,7, + 14,13,1,3,28,224,57,192,115,128,231,0,115,128,57,192, + 28,224,11,6,12,13,1,4,255,224,255,224,0,96,0,96, + 0,96,0,96,6,3,3,8,1,5,252,252,252,19,18,54, + 21,1,0,3,248,0,15,254,0,60,7,128,48,1,128,103, + 240,192,99,24,192,195,24,96,195,24,96,195,240,96,195,96, + 96,195,48,96,195,48,96,99,24,192,103,156,192,48,1,128, + 60,7,128,15,254,0,3,248,0,8,2,2,10,1,15,255, + 255,8,7,7,9,0,11,60,102,195,195,195,102,60,12,11, + 22,14,1,1,6,0,6,0,6,0,255,240,255,240,6,0, + 6,0,6,0,0,0,255,240,255,240,7,11,11,8,0,7, + 124,206,198,198,14,12,24,48,98,254,254,7,11,11,8,0, + 7,124,206,198,6,12,60,14,6,198,206,124,5,5,5,7, + 1,14,24,56,112,96,192,17,17,51,18,0,251,254,63,128, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,62,62,0,63,222,0,39,159, + 128,48,0,0,48,0,0,120,0,0,120,0,0,48,0,0, + 16,18,36,18,1,0,31,255,127,156,127,156,255,156,255,156, + 255,156,127,156,127,156,31,156,3,156,3,156,3,156,3,156, + 3,156,3,156,3,156,3,156,15,255,3,4,4,7,2,5, + 224,224,224,224,5,6,6,7,1,251,16,32,112,56,24,240, + 6,11,11,8,0,7,48,240,48,48,48,48,48,48,48,48, + 252,9,10,20,11,1,8,28,0,99,0,227,128,227,128,227, + 128,99,0,28,0,0,0,0,0,255,128,11,7,14,13,1, + 3,231,0,115,128,57,192,28,224,57,192,115,128,231,0,18, + 18,54,21,1,0,48,6,0,240,6,0,48,12,0,48,24, + 0,48,24,0,48,48,0,48,96,0,48,99,0,48,199,0, + 49,135,0,253,143,0,3,27,0,6,19,0,6,51,0,12, + 99,0,24,127,192,24,3,0,48,7,128,18,18,54,21,1, + 0,48,6,0,240,6,0,48,12,0,48,24,0,48,24,0, + 48,48,0,48,96,0,48,111,128,48,201,192,49,152,192,253, + 152,192,3,1,192,6,1,128,6,3,0,12,6,0,24,12, + 64,24,31,192,48,31,192,19,18,54,21,0,0,124,3,0, + 206,3,0,198,6,0,6,12,0,12,12,0,56,24,0,12, + 48,0,6,49,128,198,99,128,206,195,128,124,197,128,1,141, + 128,3,25,128,3,25,128,6,49,128,12,63,224,12,1,128, + 24,3,192,11,18,36,13,1,251,7,0,15,128,15,128,7, + 0,0,0,0,0,3,0,3,0,6,0,28,0,56,0,112, + 0,240,0,240,192,241,224,241,224,120,192,31,128,19,24,72, + 19,0,0,6,0,0,7,0,0,3,128,0,1,192,0,0, + 96,0,0,0,0,0,96,0,0,96,0,0,240,0,0,240, + 0,1,120,0,1,120,0,3,60,0,2,60,0,2,60,0, + 6,30,0,4,30,0,7,254,0,12,15,0,8,15,0,8, + 15,0,24,7,128,56,7,128,254,31,224,19,24,72,19,0, + 0,0,6,0,0,14,0,0,28,0,0,48,0,0,96,0, + 0,0,0,0,96,0,0,96,0,0,240,0,0,240,0,1, + 120,0,1,120,0,3,60,0,2,60,0,2,60,0,6,30, + 0,4,30,0,7,254,0,12,15,0,8,15,0,8,15,0, + 24,7,128,56,7,128,254,31,224,19,23,69,19,0,0,0, + 96,0,0,240,0,1,152,0,3,12,0,0,0,0,0,96, + 0,0,96,0,0,240,0,0,240,0,1,120,0,1,120,0, + 3,60,0,2,60,0,2,60,0,6,30,0,4,30,0,7, + 254,0,12,15,0,8,15,0,8,15,0,24,7,128,56,7, + 128,254,31,224,19,22,66,19,0,0,0,226,0,1,252,0, + 2,56,0,0,0,0,0,96,0,0,96,0,0,240,0,0, + 240,0,1,120,0,1,120,0,3,60,0,2,60,0,2,60, + 0,6,30,0,4,30,0,7,254,0,12,15,0,8,15,0, + 8,15,0,24,7,128,56,7,128,254,31,224,19,23,69,19, + 0,0,3,156,0,3,156,0,3,156,0,0,0,0,0,0, + 0,0,96,0,0,96,0,0,240,0,0,240,0,1,120,0, + 1,120,0,3,60,0,2,60,0,2,60,0,6,30,0,4, + 30,0,7,254,0,12,15,0,8,15,0,8,15,0,24,7, + 128,56,7,128,254,31,224,19,24,72,19,0,0,0,240,0, + 1,152,0,1,8,0,1,152,0,0,240,0,0,0,0,0, + 96,0,0,96,0,0,240,0,0,240,0,1,120,0,1,120, + 0,3,60,0,2,60,0,2,60,0,6,30,0,4,30,0, + 7,254,0,12,15,0,8,15,0,8,15,0,24,7,128,56, + 7,128,254,31,224,25,18,72,26,0,0,1,255,255,128,0, + 111,3,128,0,111,1,128,0,207,0,128,0,207,0,128,1, + 143,8,128,1,143,8,0,3,15,24,0,3,15,248,0,6, + 15,24,0,7,255,8,0,12,15,8,0,12,15,0,128,24, + 15,0,128,24,15,0,128,48,15,1,128,112,15,3,128,252, + 63,255,128,17,23,69,19,1,251,3,249,128,15,15,128,60, + 3,128,60,1,128,120,1,128,120,0,128,248,0,128,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,120,0,128, + 120,0,128,60,1,0,60,1,0,15,6,0,3,248,0,0, + 128,0,1,192,0,0,224,0,0,96,0,3,192,0,15,24, + 48,18,1,0,12,0,14,0,7,0,1,128,0,192,0,0, + 255,254,60,30,60,6,60,2,60,2,60,34,60,32,60,96, + 63,224,60,96,60,32,60,32,60,2,60,2,60,2,60,6, + 60,30,255,254,15,24,48,18,1,0,0,24,0,56,0,112, + 0,192,1,128,0,0,255,254,60,30,60,6,60,2,60,2, + 60,34,60,32,60,96,63,224,60,96,60,32,60,32,60,2, + 60,2,60,2,60,6,60,30,255,254,15,23,46,18,1,0, + 1,128,3,192,6,96,12,48,0,0,255,254,60,30,60,6, + 60,2,60,2,60,34,60,32,60,96,63,224,60,96,60,32, + 60,32,60,2,60,2,60,2,60,6,60,30,255,254,15,23, + 46,18,1,0,14,112,14,112,14,112,0,0,0,0,255,254, + 60,30,60,6,60,2,60,2,60,34,60,32,60,96,63,224, + 60,96,60,32,60,32,60,2,60,2,60,2,60,6,60,30, + 255,254,8,24,24,10,1,0,192,224,112,24,12,0,255,60, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,255, + 8,24,24,10,1,0,3,7,14,24,48,0,255,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,60,255,8,23, + 23,10,1,0,24,60,102,195,0,255,60,60,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,255,8,23,23,10,1, + 0,231,231,231,0,0,255,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,255,18,18,54,20,1,0,255,240, + 0,60,60,0,60,15,0,60,15,0,60,7,128,60,7,128, + 60,7,192,60,7,192,255,135,192,60,7,192,60,7,192,60, + 7,192,60,7,128,60,7,128,60,15,0,60,15,0,60,60, + 0,255,240,0,20,22,66,22,1,0,0,226,0,1,252,0, + 2,56,0,0,0,0,252,7,240,62,1,192,31,0,128,31, + 128,128,31,192,128,23,224,128,19,240,128,17,240,128,16,248, + 128,16,124,128,16,126,128,16,63,128,16,31,128,16,15,128, + 16,7,128,16,3,128,56,1,128,254,0,128,19,24,72,21, + 1,0,6,0,0,7,0,0,3,128,0,0,192,0,0,96, + 0,0,0,0,3,248,0,15,30,0,60,7,128,60,7,128, + 120,3,192,120,3,192,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,120,3,192,120,3,192,60,7, + 128,60,7,128,15,30,0,3,248,0,19,23,69,21,1,0, + 0,24,0,0,56,0,0,96,0,0,192,0,0,0,0,3, + 248,0,15,30,0,60,7,128,60,7,128,120,3,192,120,3, + 192,248,3,224,248,3,224,248,3,224,248,3,224,248,3,224, + 248,3,224,120,3,192,120,3,192,60,7,128,60,7,128,15, + 30,0,3,248,0,19,23,69,21,1,0,0,96,0,0,240, + 0,1,152,0,3,12,0,0,0,0,3,248,0,15,30,0, + 60,7,128,60,7,128,120,3,192,120,3,192,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,120,3, + 192,120,3,192,60,7,128,60,7,128,15,30,0,3,248,0, + 19,22,66,21,1,0,0,226,0,1,252,0,2,56,0,0, + 0,0,3,248,0,15,30,0,60,7,128,60,7,128,120,3, + 192,120,3,192,248,3,224,248,3,224,248,3,224,248,3,224, + 248,3,224,248,3,224,120,3,192,120,3,192,60,7,128,60, + 7,128,15,30,0,3,248,0,19,23,69,21,1,0,7,28, + 0,7,28,0,7,28,0,0,0,0,0,0,0,3,248,0, + 15,30,0,60,7,128,60,7,128,120,3,192,120,3,192,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,120,3,192,120,3,192,60,7,128,60,7,128,15,30,0, + 3,248,0,12,12,24,14,1,1,192,48,224,112,112,224,57, + 192,31,128,15,0,15,0,31,128,57,192,112,224,224,112,192, + 48,20,18,54,21,0,0,1,252,48,7,143,96,30,3,192, + 30,3,192,60,7,224,60,13,224,124,25,240,124,49,240,124, + 97,240,124,193,240,125,129,240,127,1,240,62,1,224,60,1, + 224,62,3,192,126,3,192,199,143,0,129,252,0,19,24,72, + 21,1,0,3,0,0,3,128,0,1,192,0,0,96,0,0, + 48,0,0,0,0,255,15,224,60,3,128,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,60,1,0,60,1,0,60,1,0,60, + 1,0,30,2,0,31,142,0,7,248,0,19,24,72,21,1, + 0,0,6,0,0,14,0,0,28,0,0,48,0,0,96,0, + 0,0,0,255,15,224,60,3,128,60,1,0,60,1,0,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,60,1,0, + 30,2,0,31,142,0,7,248,0,19,23,69,21,1,0,0, + 96,0,0,240,0,1,152,0,3,12,0,0,0,0,255,15, + 224,60,3,128,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,60,1,0,60,1,0,60,1,0,60, + 1,0,60,1,0,60,1,0,60,1,0,30,2,0,31,142, + 0,7,248,0,19,23,69,21,1,0,7,28,0,7,28,0, + 7,28,0,0,0,0,0,0,0,255,15,224,60,3,128,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,30,2,0,31,142,0,7,248,0,18, + 24,72,18,0,0,0,6,0,0,14,0,0,28,0,0,48, + 0,0,96,0,0,0,0,255,15,192,60,3,0,30,6,0, + 30,6,0,15,12,0,15,12,0,7,152,0,7,152,0,3, + 240,0,3,240,0,1,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,7,248,0,16,18,36, + 18,1,0,255,128,60,0,60,0,60,0,63,248,60,62,60, + 30,60,31,60,31,60,31,60,31,60,30,60,62,63,240,60, + 0,60,0,60,0,255,128,15,18,36,15,255,0,7,224,30, + 120,28,60,60,60,60,60,60,56,60,112,61,224,60,60,60, + 30,60,30,60,30,60,30,60,30,60,30,60,28,61,60,253, + 240,14,18,36,15,0,0,12,0,14,0,7,0,3,0,1, + 128,0,0,127,128,241,224,240,240,96,240,1,240,14,240,120, + 240,240,240,240,240,240,240,249,252,126,56,14,18,36,15,0, + 0,1,128,3,128,7,0,6,0,12,0,0,0,127,128,241, + 224,240,240,96,240,1,240,14,240,120,240,240,240,240,240,240, + 240,249,252,126,56,14,18,36,15,0,0,2,0,7,0,15, + 128,24,192,48,96,0,0,127,128,241,224,240,240,96,240,1, + 240,14,240,120,240,240,240,240,240,240,240,249,252,126,56,14, + 17,34,15,0,0,14,32,31,192,35,128,0,0,0,0,127, + 128,241,224,240,240,96,240,1,240,14,240,120,240,240,240,240, + 240,240,240,249,252,126,56,14,17,34,15,0,0,56,224,56, + 224,56,224,0,0,0,0,127,128,241,224,240,240,96,240,1, + 240,14,240,120,240,240,240,240,240,240,240,249,252,126,56,14, + 18,36,15,0,0,7,0,13,128,8,128,13,128,7,0,0, + 0,127,128,241,224,240,240,96,240,1,240,14,240,120,240,240, + 240,240,240,240,240,249,252,126,56,22,12,36,23,0,0,31, + 207,192,121,248,112,112,248,120,112,240,56,1,240,60,14,255, + 252,120,240,0,240,240,0,240,248,8,240,248,8,249,188,48, + 126,15,224,13,17,34,14,0,251,15,240,56,120,120,120,112, + 48,240,0,240,0,240,0,240,0,120,8,120,8,60,48,31, + 224,2,0,7,0,3,128,1,128,15,0,14,18,36,15,0, + 0,12,0,14,0,7,0,3,0,1,128,0,0,15,192,56, + 112,120,120,112,56,240,60,255,252,240,0,240,0,120,8,120, + 8,60,48,15,224,14,18,36,15,0,0,0,96,0,224,1, + 192,3,128,6,0,0,0,15,192,56,112,120,120,112,56,240, + 60,255,252,240,0,240,0,120,8,120,8,60,48,15,224,14, + 18,36,15,0,0,2,0,7,0,15,128,24,192,48,96,0, + 0,15,192,56,112,120,120,112,56,240,60,255,252,240,0,240, + 0,120,8,120,8,60,48,15,224,14,17,34,15,0,0,28, + 112,28,112,28,112,0,0,0,0,15,192,56,112,120,120,112, + 56,240,60,255,252,240,0,240,0,120,8,120,8,60,48,15, + 224,8,18,18,9,0,0,96,112,56,24,12,0,252,60,60, + 60,60,60,60,60,60,60,60,255,8,18,18,9,0,0,12, + 28,56,48,96,0,252,60,60,60,60,60,60,60,60,60,60, + 255,9,18,36,9,0,0,8,0,28,0,62,0,99,0,193, + 128,0,0,252,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,60,0,60,0,255,0,8,17,17,9,0, + 0,231,231,231,0,0,252,60,60,60,60,60,60,60,60,60, + 60,255,14,18,36,15,0,0,192,0,57,192,15,0,15,0, + 49,192,0,224,15,240,56,112,120,120,112,56,240,60,240,60, + 240,60,240,60,112,56,120,120,56,112,15,192,17,17,51,18, + 0,0,3,136,0,7,240,0,8,224,0,0,0,0,0,0, + 0,252,248,0,61,252,0,62,62,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,254,63,128,14,18,36,15,0,0,12,0,14,0,7, + 0,3,0,1,128,0,0,15,192,56,112,120,120,112,56,240, + 60,240,60,240,60,240,60,112,56,120,120,56,112,15,192,14, + 18,36,15,0,0,0,96,0,224,1,192,3,0,6,0,0, + 0,15,192,56,112,120,120,112,56,240,60,240,60,240,60,240, + 60,112,56,120,120,56,112,15,192,14,18,36,15,0,0,2, + 0,7,0,15,128,24,192,48,96,0,0,15,192,56,112,120, + 120,112,56,240,60,240,60,240,60,240,60,112,56,120,120,56, + 112,15,192,14,17,34,15,0,0,7,16,15,224,17,192,0, + 0,0,0,15,192,56,112,120,120,112,56,240,60,240,60,240, + 60,240,60,112,56,120,120,56,112,15,192,14,17,34,15,0, + 0,56,224,56,224,56,224,0,0,0,0,15,192,56,112,120, + 120,112,56,240,60,240,60,240,60,240,60,112,56,120,120,56, + 112,15,192,12,12,24,14,1,1,6,0,6,0,6,0,0, + 0,0,0,255,240,255,240,0,0,0,0,6,0,6,0,6, + 0,14,18,36,15,0,253,0,16,0,16,0,32,15,224,56, + 112,120,120,112,184,240,188,241,60,241,60,242,60,114,56,124, + 120,60,112,15,192,8,0,16,0,16,0,17,18,54,18,0, + 0,3,0,0,3,128,0,1,192,0,0,192,0,0,96,0, + 0,0,0,254,63,128,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,62,62, + 0,31,222,0,15,159,128,17,18,54,18,0,0,0,96,0, + 0,224,0,1,192,0,1,128,0,3,0,0,0,0,0,254, + 63,128,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,62,62,0,31,222,0, + 15,159,128,17,18,54,18,0,0,0,128,0,1,192,0,3, + 224,0,6,48,0,12,24,0,0,0,0,254,63,128,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,62,62,0,31,222,0,15,159,128,17, + 17,51,18,0,0,14,56,0,14,56,0,14,56,0,0,0, + 0,0,0,0,254,63,128,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,62, + 62,0,31,222,0,15,159,128,16,23,46,15,255,251,0,48, + 0,112,0,224,0,192,1,128,0,0,254,63,60,12,30,8, + 30,24,15,16,15,48,7,160,7,224,3,192,3,192,1,192, + 1,128,1,128,97,0,243,0,254,0,120,0,16,23,46,16, + 255,251,252,0,60,0,60,0,60,0,60,0,60,0,61,240, + 63,28,60,30,60,14,60,15,60,15,60,15,60,15,60,14, + 62,30,63,28,61,240,60,0,60,0,60,0,60,0,255,0, + 16,22,44,15,255,251,14,56,14,56,14,56,0,0,0,0, + 254,63,60,12,30,8,30,24,15,16,15,48,7,160,7,224, + 3,192,3,192,1,192,1,128,1,128,97,0,243,0,254,0, + 120,0}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--25-180-100-100-P-149-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=26 h=23 x= 6 y=13 dx=26 dy= 0 ascent=20 len=72 + Font Bounding box w=33 h=40 x=-4 y=-10 + Calculated Min Values x=-3 y=-5 dx= 0 dy= 0 + Pure Font ascent =18 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =20 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB18r[3736] U8G_SECTION(".progmem.u8g_font_ncenB18r") = { + 0,33,40,252,246,18,4,68,10,106,32,127,251,20,251,18, + 251,0,0,0,7,0,1,5,18,18,7,1,0,112,248,248, + 248,112,112,112,112,112,112,32,32,0,0,112,248,248,112,6, + 6,6,8,1,12,204,204,204,204,204,136,12,18,36,14,1, + 0,12,192,12,192,12,192,12,192,12,192,127,240,127,240,25, + 128,25,128,25,128,25,128,255,224,255,224,51,0,51,0,51, + 0,51,0,51,0,12,23,46,14,1,253,4,0,4,0,31, + 192,116,96,100,240,228,240,228,240,244,96,252,0,255,0,127, + 192,31,224,7,240,5,240,100,240,244,112,244,112,244,96,100, + 224,63,128,4,0,4,0,4,0,19,18,54,21,1,0,30, + 14,0,123,54,0,113,204,0,241,12,0,225,24,0,226,24, + 0,226,48,0,100,48,0,56,96,0,0,99,192,0,207,96, + 0,206,32,1,158,32,1,156,32,3,28,64,3,28,64,6, + 12,128,6,7,0,20,18,54,22,1,0,1,240,0,7,56, + 0,14,24,0,14,24,0,14,24,0,15,48,0,15,224,0, + 7,192,0,15,192,0,57,227,240,113,241,192,240,241,128,240, + 121,0,240,127,0,240,62,16,120,31,16,124,63,224,31,199, + 192,2,6,6,6,2,12,192,192,192,192,192,192,6,21,21, + 8,1,253,4,12,24,48,48,96,96,224,224,224,224,224,224, + 224,96,96,48,48,24,12,4,6,21,21,8,1,253,128,192, + 96,48,48,24,24,28,28,28,28,28,28,28,24,24,48,48, + 96,192,128,9,10,20,11,1,8,28,0,28,0,201,128,235, + 128,62,0,62,0,235,128,201,128,28,0,28,0,12,12,24, + 14,1,1,6,0,6,0,6,0,6,0,6,0,255,240,255, + 240,6,0,6,0,6,0,6,0,6,0,5,8,8,7,1, + 252,112,248,248,120,48,32,64,128,6,3,3,8,1,5,252, + 252,252,5,4,4,7,1,0,112,248,248,112,7,18,18,9, + 1,0,6,6,6,12,12,12,24,24,24,48,48,48,96,96, + 96,192,192,192,12,18,36,14,1,0,15,0,57,192,112,224, + 112,224,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,112,224,112,224,57,192,15,0,10,18, + 36,14,2,0,30,0,254,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,63,0,255,192,11,18,36,14,1,0,31,0, + 99,192,225,224,241,224,241,224,241,224,97,224,1,192,3,192, + 3,128,7,0,14,0,24,32,48,32,112,96,255,224,255,224, + 255,224,12,18,36,14,1,0,15,128,49,224,112,224,120,240, + 120,240,120,240,48,224,1,192,15,0,1,192,0,224,96,240, + 240,240,240,240,240,240,224,224,97,224,31,128,12,18,36,14, + 1,0,0,192,1,192,3,192,7,192,7,192,15,192,27,192, + 19,192,51,192,99,192,99,192,195,192,255,240,255,240,3,192, + 3,192,3,192,15,240,12,18,36,14,1,0,127,240,127,224, + 127,192,64,0,64,0,64,0,95,0,113,192,96,224,0,240, + 0,240,0,240,96,240,240,240,240,240,240,224,97,192,63,0, + 12,18,36,14,1,0,15,128,56,192,113,224,113,224,241,224, + 240,192,240,0,247,128,249,224,240,224,240,240,240,240,240,240, + 240,240,240,240,112,224,121,224,31,128,12,18,36,14,1,0, + 255,240,255,240,255,224,192,96,128,192,129,192,3,128,3,128, + 7,0,7,0,15,0,15,0,30,0,30,0,30,0,30,0, + 30,0,12,0,12,18,36,14,1,0,15,0,57,192,112,224, + 112,224,112,224,120,224,124,192,63,128,31,128,63,192,119,224, + 225,240,224,240,224,112,224,112,224,96,112,192,31,128,12,18, + 36,14,1,0,31,128,121,224,112,224,240,240,240,240,240,240, + 240,240,240,240,112,240,121,240,30,240,0,240,48,240,120,240, + 120,224,120,224,49,192,31,0,5,12,12,7,1,0,112,248, + 248,112,0,0,0,0,112,248,248,112,5,16,16,7,1,252, + 112,248,248,112,0,0,0,0,112,248,248,120,48,32,64,128, + 12,12,24,14,1,1,0,48,0,240,3,192,15,0,60,0, + 240,0,240,0,60,0,15,0,3,192,0,240,0,48,12,6, + 12,14,1,4,255,240,255,240,0,0,0,0,255,240,255,240, + 12,12,24,14,1,1,192,0,240,0,60,0,15,0,3,192, + 0,240,0,240,3,192,15,0,60,0,240,0,192,0,11,18, + 36,13,1,0,63,0,99,192,241,224,241,224,97,224,1,224, + 1,192,3,128,7,0,12,0,24,0,24,0,0,0,0,0, + 28,0,62,0,62,0,28,0,19,18,54,20,1,0,1,252, + 0,15,6,0,12,1,128,48,0,192,48,220,192,99,188,96, + 103,28,96,199,28,96,206,28,96,206,56,96,206,56,64,206, + 56,192,206,121,128,103,191,0,96,0,0,56,1,0,28,7, + 0,7,252,0,19,18,54,19,0,0,0,96,0,0,96,0, + 0,240,0,0,240,0,1,120,0,1,120,0,3,60,0,2, + 60,0,2,60,0,6,30,0,4,30,0,7,254,0,12,15, + 0,8,15,0,8,15,0,24,7,128,56,7,128,254,31,224, + 17,18,54,19,1,0,255,248,0,60,62,0,60,31,0,60, + 31,0,60,31,0,60,31,0,60,30,0,60,60,0,63,248, + 0,60,30,0,60,15,0,60,15,128,60,15,128,60,15,128, + 60,15,128,60,15,128,60,31,0,255,252,0,17,18,54,19, + 1,0,3,249,128,15,15,128,60,3,128,60,1,128,120,1, + 128,120,0,128,248,0,128,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,120,0,128,120,0,128,60,1,0,60, + 1,0,15,6,0,3,248,0,18,18,54,20,1,0,255,240, + 0,60,60,0,60,15,0,60,15,0,60,7,128,60,7,128, + 60,7,192,60,7,192,60,7,192,60,7,192,60,7,192,60, + 7,192,60,7,128,60,7,128,60,15,0,60,15,0,60,60, + 0,255,240,0,15,18,36,18,1,0,255,254,60,30,60,6, + 60,2,60,2,60,34,60,32,60,96,63,224,60,96,60,32, + 60,32,60,2,60,2,60,2,60,6,60,30,255,254,15,18, + 36,17,1,0,255,254,60,30,60,6,60,2,60,2,60,34, + 60,32,60,96,63,224,60,96,60,32,60,32,60,0,60,0, + 60,0,60,0,60,0,255,0,18,18,54,20,1,0,3,249, + 128,15,15,128,60,3,128,60,1,128,120,1,128,120,0,128, + 248,0,128,248,0,0,248,0,0,248,0,0,248,15,192,248, + 7,128,120,7,128,120,7,128,60,7,128,60,7,128,15,13, + 128,3,248,128,19,18,54,21,1,0,255,31,224,60,7,128, + 60,7,128,60,7,128,60,7,128,60,7,128,60,7,128,60, + 7,128,63,255,128,60,7,128,60,7,128,60,7,128,60,7, + 128,60,7,128,60,7,128,60,7,128,60,7,128,255,31,224, + 8,18,18,10,1,0,255,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,255,14,18,36,16,0,0,3,252, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,96,240,240,240,240,240,224,240,192,224,97,224, + 63,128,20,18,54,21,1,0,255,15,192,60,3,0,60,6, + 0,60,12,0,60,24,0,60,48,0,60,96,0,60,224,0, + 61,240,0,63,248,0,62,248,0,60,124,0,60,62,0,60, + 31,0,60,31,0,60,15,128,60,7,192,255,15,240,15,18, + 36,17,1,0,255,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,2,60,2, + 60,2,60,6,60,30,255,254,22,18,54,24,1,0,252,1, + 252,60,1,240,62,3,240,62,2,240,46,2,240,47,6,240, + 39,4,240,39,132,240,39,140,240,35,136,240,35,200,240,35, + 216,240,33,208,240,33,240,240,32,224,240,32,224,240,112,96, + 240,248,67,252,20,18,54,22,1,0,252,7,240,62,1,192, + 31,0,128,31,128,128,31,192,128,23,224,128,19,240,128,17, + 240,128,16,248,128,16,124,128,16,126,128,16,63,128,16,31, + 128,16,15,128,16,7,128,16,3,128,56,1,128,254,0,128, + 19,18,54,21,1,0,3,248,0,15,30,0,60,7,128,60, + 7,128,120,3,192,120,3,192,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,248,3,224,120,3,192,120,3,192, + 60,7,128,60,7,128,15,30,0,3,248,0,17,18,54,18, + 1,0,255,252,0,60,31,0,60,15,0,60,15,128,60,15, + 128,60,15,128,60,15,128,60,15,0,60,31,0,63,248,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,255,128,0,19,23,69,21,1,251,3,248, + 0,15,30,0,60,7,128,60,7,128,120,3,192,120,3,192, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,251, + 227,224,126,115,192,124,51,192,60,51,128,60,27,128,15,30, + 0,3,254,0,0,14,0,0,15,32,0,7,192,0,7,192, + 0,3,128,19,18,54,21,1,0,255,248,0,60,62,0,60, + 31,0,60,31,0,60,31,0,60,31,0,60,30,0,60,60, + 0,63,224,0,60,120,0,60,60,0,60,60,0,60,62,0, + 60,30,0,60,31,32,60,15,32,60,15,192,255,135,128,14, + 18,36,16,1,0,15,200,56,120,96,24,224,24,224,8,240, + 8,254,0,255,192,127,240,63,248,15,252,1,252,128,60,128, + 28,192,28,192,24,240,112,159,192,16,18,36,18,1,0,255, + 255,227,199,195,195,131,193,131,193,131,193,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,15,240,19,18,54,21,1,0,255,15,224,60,3,128,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,2,0,30,2,0,31,140,0,7,248,0,19, + 18,54,19,0,0,255,15,224,60,3,128,60,3,0,30,2, + 0,30,2,0,30,6,0,15,4,0,15,4,0,15,12,0, + 7,136,0,7,136,0,7,152,0,3,208,0,3,208,0,1, + 224,0,1,224,0,0,192,0,0,192,0,26,18,72,26,0, + 0,255,127,159,192,60,30,7,0,60,30,6,0,30,15,4, + 0,30,15,4,0,30,15,12,0,15,31,136,0,15,23,136, + 0,15,23,152,0,7,179,208,0,7,163,208,0,7,163,240, + 0,3,225,224,0,3,193,224,0,3,193,224,0,1,192,192, + 0,1,128,192,0,1,128,192,0,20,18,54,20,0,0,255, + 135,224,62,1,128,31,3,0,31,134,0,15,140,0,7,216, + 0,3,240,0,3,224,0,1,240,0,0,248,0,1,248,0, + 3,124,0,6,62,0,4,31,0,12,31,0,24,15,128,48, + 7,192,252,31,240,18,18,54,18,0,0,255,15,192,60,3, + 0,30,2,0,30,6,0,15,4,0,15,12,0,7,136,0, + 7,152,0,3,208,0,3,240,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,7,248, + 0,15,18,36,17,1,0,127,254,112,62,96,124,64,120,64, + 248,0,240,1,224,3,224,3,192,7,128,15,128,15,0,30, + 0,62,2,60,2,120,6,248,14,255,254,6,21,21,8,1, + 253,252,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,252,10,18,36,12,1,0,192,0,224,0, + 224,0,112,0,112,0,56,0,56,0,28,0,28,0,14,0, + 14,0,7,0,7,0,3,128,3,128,1,192,1,192,0,192, + 6,21,21,8,1,253,252,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,252,10,10,20,15,2, + 8,12,0,12,0,30,0,30,0,51,0,51,0,97,128,97, + 128,192,192,192,192,12,2,4,12,0,252,255,240,255,240,5, + 5,5,7,1,13,224,224,112,48,24,14,12,24,15,0,0, + 127,128,241,224,240,240,96,240,1,240,14,240,120,240,240,240, + 240,240,240,240,249,252,126,56,16,18,36,16,255,0,252,0, + 60,0,60,0,60,0,60,0,60,0,61,240,63,28,62,30, + 60,14,60,15,60,15,60,15,60,15,60,14,60,30,62,28, + 39,240,13,12,24,14,0,0,15,240,56,120,120,120,112,48, + 240,0,240,0,240,0,240,0,120,8,120,8,60,48,31,224, + 16,18,36,17,0,0,0,252,0,60,0,60,0,60,0,60, + 0,60,15,188,56,252,120,124,112,60,240,60,240,60,240,60, + 240,60,112,60,120,124,56,252,15,191,14,12,24,15,0,0, + 15,192,56,112,120,120,112,56,240,60,255,252,240,0,240,0, + 120,8,120,8,60,48,15,224,12,18,36,10,0,0,7,224, + 28,240,28,240,60,96,60,0,60,0,255,128,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 255,0,13,18,36,15,1,251,0,56,31,248,121,224,240,240, + 240,240,240,240,240,240,121,224,63,128,96,0,224,0,255,192, + 127,240,127,248,96,56,192,24,224,48,127,224,17,18,54,18, + 0,0,252,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,248,0,61,252,0,62,62,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,254,63,128,8,18,18,9,0,0,24,60, + 60,24,0,0,252,60,60,60,60,60,60,60,60,60,60,255, + 8,23,23,7,253,251,6,15,15,6,0,0,63,15,15,15, + 15,15,15,15,15,15,15,15,15,15,206,206,120,17,18,54, + 17,0,0,252,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,254,0,60,56,0,60,48,0,60,96, + 0,60,192,0,63,192,0,63,224,0,60,240,0,60,120,0, + 60,60,0,60,30,0,255,127,128,8,18,18,9,0,0,252, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 255,24,12,36,25,0,0,252,240,240,61,249,248,62,126,124, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,60,254,126,127,17,12,36,18,0, + 0,252,248,0,61,252,0,62,62,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,254,63,128,14,12,24,15,0,0,15,192,56,112,120, + 120,112,56,240,60,240,60,240,60,240,60,112,56,120,120,56, + 112,15,192,16,17,34,16,255,251,253,240,63,28,60,30,60, + 14,60,15,60,15,60,15,60,15,60,14,62,30,63,28,61, + 240,60,0,60,0,60,0,60,0,255,0,16,17,34,16,0, + 251,15,132,60,236,120,60,112,60,240,60,240,60,240,60,240, + 60,112,60,120,124,56,252,15,188,0,60,0,60,0,60,0, + 60,0,255,12,12,24,12,0,0,252,224,61,240,62,240,60, + 96,60,0,60,0,60,0,60,0,60,0,60,0,60,0,255, + 0,10,12,24,11,0,0,62,128,99,128,193,128,224,128,252, + 0,255,128,127,192,15,192,129,192,192,192,225,128,191,0,10, + 17,34,10,0,0,4,0,12,0,12,0,28,0,60,0,255, + 128,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 64,60,64,31,128,15,0,17,12,36,18,0,0,254,126,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,62,62,0,31,222,0,15,159, + 128,16,12,24,15,255,0,255,31,60,4,30,12,30,8,15, + 24,15,16,7,176,7,160,3,224,3,192,1,192,1,128,23, + 12,36,22,255,0,255,63,62,60,30,8,60,30,8,30,63, + 24,30,47,16,30,47,16,15,103,176,15,71,160,7,195,224, + 7,131,192,3,129,192,3,1,128,17,12,36,16,255,0,255, + 31,0,62,12,0,31,24,0,15,176,0,7,224,0,3,192, + 0,1,224,0,3,240,0,6,248,0,12,124,0,24,62,0, + 124,127,128,16,17,34,15,255,251,254,63,60,12,30,8,30, + 24,15,16,15,48,7,160,7,224,3,192,3,192,1,192,1, + 128,1,128,97,0,243,0,254,0,120,0,11,12,24,12,0, + 0,255,224,225,224,195,224,135,192,143,128,15,0,30,0,62, + 32,124,32,248,96,240,224,255,224,6,21,21,8,1,253,28, + 48,112,112,112,112,112,112,112,96,192,96,112,112,112,112,112, + 112,112,48,28,3,18,18,15,6,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,6,21,21,8, + 1,253,224,48,56,56,56,56,56,56,56,24,12,24,56,56, + 56,56,56,56,56,48,224,12,5,10,15,1,4,56,32,126, + 112,255,240,231,224,65,192,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--34-240-100-100-P-193-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=32 h=33 x= 8 y=18 dx=33 dy= 0 ascent=33 len=132 + Font Bounding box w=39 h=53 x=-4 y=-13 + Calculated Min Values x=-3 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =33 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB24[12964] U8G_SECTION(".progmem.u8g_font_ncenB24") = { + 0,39,53,252,243,25,6,143,16,147,32,255,249,33,249,25, + 249,0,0,0,9,1,1,6,25,25,10,2,0,120,252,252, + 252,252,252,252,120,120,120,120,48,48,48,48,48,48,0,0, + 120,252,252,252,252,120,11,11,22,11,0,14,96,192,241,224, + 241,224,241,224,241,224,241,224,241,224,96,192,96,192,96,192, + 96,192,16,25,50,19,1,255,7,28,7,28,7,28,7,28, + 14,56,14,56,14,56,127,255,127,255,127,255,14,56,12,48, + 28,112,28,112,255,254,255,254,255,254,28,112,28,112,56,224, + 56,224,56,224,56,224,56,224,56,224,17,30,90,19,1,252, + 1,128,0,1,128,0,1,128,0,7,240,0,31,252,0,57, + 158,0,113,143,0,113,159,0,241,159,0,241,142,0,253,128, + 0,255,128,0,127,240,0,127,252,0,63,254,0,15,255,0, + 1,255,128,1,191,128,113,143,128,249,135,128,249,135,128,249, + 135,0,241,143,0,121,158,0,63,252,0,7,224,0,1,128, + 0,1,128,0,1,128,0,1,128,0,26,24,96,27,0,0, + 0,0,24,0,7,192,48,0,15,96,112,0,30,57,224,0, + 60,31,96,0,60,16,192,0,120,16,128,0,120,17,128,0, + 240,49,0,0,240,35,0,0,240,98,0,0,240,198,31,0, + 123,140,61,128,63,12,120,192,0,24,240,64,0,17,240,64, + 0,49,224,64,0,33,224,192,0,99,224,192,0,195,193,128, + 0,195,193,128,1,131,195,0,1,129,230,0,3,0,252,0, + 24,25,75,28,2,0,0,124,0,1,255,0,3,199,0,7, + 135,128,7,131,128,7,131,128,7,199,128,7,199,0,7,239, + 0,7,252,0,3,248,0,7,241,255,15,249,255,61,248,124, + 120,252,56,120,254,112,248,126,96,248,63,224,252,63,192,252, + 31,193,254,15,227,255,15,243,127,255,254,63,243,254,15,128, + 252,4,11,11,8,2,14,96,240,240,240,240,240,240,96,96, + 96,96,9,27,54,13,2,253,3,128,7,0,14,0,28,0, + 28,0,56,0,56,0,120,0,120,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,112,0,120,0, + 56,0,56,0,28,0,28,0,14,0,7,0,3,128,9,27, + 54,13,1,253,224,0,48,0,56,0,28,0,28,0,14,0, + 14,0,15,0,7,0,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,15,0,15,0,14,0,14,0, + 28,0,28,0,56,0,112,0,192,0,12,15,30,17,2,10, + 6,0,14,0,14,0,230,112,230,112,246,240,63,192,15,0, + 127,224,246,240,230,112,230,112,7,0,7,0,6,0,16,16, + 32,20,2,1,3,192,3,192,3,192,3,192,3,192,3,192, + 255,255,255,255,255,255,255,255,3,192,3,192,3,192,3,192, + 3,192,3,192,6,11,11,9,2,251,120,248,252,252,252,124, + 28,24,48,112,224,8,4,4,11,1,6,255,255,255,255,6, + 6,6,9,1,0,120,252,252,252,252,120,10,25,50,9,255, + 0,0,192,1,192,1,192,1,128,3,128,3,128,3,0,7, + 0,7,0,6,0,14,0,14,0,12,0,28,0,28,0,24, + 0,56,0,56,0,48,0,112,0,112,0,96,0,224,0,224, + 0,192,0,16,24,48,19,1,0,3,192,15,240,30,120,60, + 60,124,62,120,30,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,248,31,120,30,120,30,124, + 62,60,60,30,120,15,240,3,192,13,24,48,19,3,0,1, + 128,7,128,255,128,255,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,255,248,255,248,17, + 24,72,19,1,0,15,240,0,63,252,0,120,126,0,240,63, + 0,248,31,0,252,31,0,252,31,0,252,31,0,124,63,0, + 56,62,0,0,124,0,0,248,0,0,240,0,1,224,0,3, + 192,0,3,129,128,7,1,128,14,1,128,28,3,128,63,255, + 128,127,255,0,127,255,0,255,255,0,255,255,0,16,24,48, + 19,1,0,15,224,63,248,120,124,248,62,252,62,252,62,252, + 62,120,62,0,124,0,112,7,224,7,192,0,248,0,126,0, + 62,0,63,120,31,252,31,252,31,252,63,248,62,120,126,63, + 248,7,224,17,24,72,19,0,0,0,4,0,0,12,0,0, + 28,0,0,60,0,0,124,0,0,252,0,1,252,0,1,252, + 0,3,124,0,6,124,0,12,124,0,28,124,0,56,124,0, + 112,124,0,224,124,0,192,124,0,255,255,128,255,255,128,0, + 124,0,0,124,0,0,124,0,0,124,0,3,255,128,3,255, + 128,16,24,48,19,1,0,31,255,63,254,63,254,63,252,63, + 240,48,0,48,0,48,0,48,0,55,224,63,248,56,124,48, + 62,32,62,0,31,0,31,56,31,124,31,252,31,252,62,120, + 62,112,252,63,240,15,192,17,24,72,19,1,0,3,240,0, + 15,252,0,31,30,0,62,62,0,60,62,0,124,62,0,120, + 28,0,248,0,0,248,0,0,248,0,0,249,248,0,255,254, + 0,255,127,0,252,31,0,248,31,128,248,15,128,248,15,128, + 248,15,128,248,15,128,124,31,0,124,31,0,62,62,0,31, + 252,0,7,240,0,16,24,48,19,2,0,255,255,255,254,255, + 254,255,252,255,252,192,24,192,24,192,56,128,112,0,112,0, + 240,0,224,1,224,1,224,3,224,3,192,7,192,7,192,15, + 192,15,192,15,192,15,192,15,192,7,128,17,24,72,19,1, + 0,7,240,0,15,252,0,60,62,0,56,31,0,120,15,0, + 120,15,0,120,15,0,124,15,0,126,30,0,127,252,0,63, + 240,0,31,252,0,15,254,0,63,255,0,120,127,0,248,31, + 128,240,15,128,240,15,128,240,15,0,240,15,0,248,30,0, + 124,60,0,63,240,0,7,192,0,17,24,72,19,1,0,3, + 192,0,31,248,0,62,124,0,124,62,0,252,31,0,248,31, + 0,248,15,128,248,15,128,248,15,128,252,31,128,252,63,128, + 127,111,128,63,207,128,31,143,128,0,15,128,0,15,128,112, + 15,0,248,31,0,252,31,0,248,30,0,248,62,0,112,252, + 0,63,240,0,15,192,0,6,16,16,9,2,0,120,252,252, + 252,252,120,0,0,0,0,120,252,252,252,252,120,6,21,21, + 9,2,251,120,252,252,252,252,120,0,0,0,0,120,248,252, + 252,252,124,28,24,48,112,224,16,18,36,20,2,0,0,3, + 0,15,0,127,1,255,7,252,31,240,127,128,254,0,248,0, + 252,0,255,128,63,224,15,248,3,254,0,127,0,31,0,7, + 0,1,16,10,20,20,2,3,255,255,255,255,255,255,255,255, + 0,0,0,0,255,255,255,255,255,255,255,255,16,18,36,20, + 2,0,192,0,240,0,254,0,255,128,63,224,15,248,1,254, + 0,127,0,31,0,63,1,255,7,252,31,240,127,192,254,0, + 248,0,224,0,128,0,14,25,50,16,1,0,15,192,63,240, + 113,248,240,248,248,252,248,252,248,252,112,252,0,248,1,248, + 1,240,3,224,3,128,7,0,7,0,6,0,6,0,0,0, + 0,0,15,0,31,128,31,128,31,128,31,128,15,0,23,25, + 75,25,0,0,0,127,0,1,255,192,7,227,240,15,0,120, + 30,0,28,28,0,12,56,60,6,48,255,230,113,227,230,113, + 227,198,99,195,198,227,131,198,231,135,134,231,135,140,231,7, + 140,231,15,28,231,15,24,227,31,112,115,247,224,48,227,204, + 56,0,28,28,0,120,15,1,240,7,255,224,1,255,0,25, + 25,100,25,0,0,0,28,0,0,0,28,0,0,0,30,0, + 0,0,62,0,0,0,63,0,0,0,127,0,0,0,127,128, + 0,0,127,128,0,0,255,128,0,0,207,192,0,1,207,192, + 0,1,143,192,0,1,135,224,0,3,135,224,0,3,7,240, + 0,7,3,240,0,7,255,240,0,7,255,248,0,14,1,248, + 0,12,1,252,0,28,0,252,0,28,0,254,0,62,0,254, + 0,255,131,255,128,255,131,255,128,23,25,75,25,1,0,255, + 255,128,255,255,224,31,131,240,31,129,248,31,129,248,31,128, + 252,31,128,252,31,128,252,31,128,248,31,129,248,31,129,240, + 31,135,224,31,255,0,31,255,192,31,131,240,31,128,252,31, + 128,252,31,128,254,31,128,126,31,128,254,31,128,252,31,128, + 252,31,131,248,255,255,240,255,255,192,22,25,75,24,1,0, + 0,126,24,3,255,184,7,193,248,31,128,248,31,0,120,62, + 0,56,126,0,56,126,0,24,254,0,24,252,0,8,252,0, + 0,252,0,0,252,0,0,252,0,0,252,0,0,254,0,0, + 254,0,12,254,0,28,126,0,24,126,0,56,63,0,48,31, + 128,112,15,193,224,7,255,192,0,255,0,24,25,75,26,1, + 0,255,255,0,255,255,224,31,131,240,31,129,248,31,128,252, + 31,128,126,31,128,126,31,128,127,31,128,63,31,128,63,31, + 128,63,31,128,63,31,128,63,31,128,63,31,128,63,31,128, + 63,31,128,127,31,128,126,31,128,126,31,128,126,31,128,252, + 31,129,248,31,131,240,255,255,224,255,255,0,21,25,75,23, + 1,0,255,255,248,255,255,248,31,129,248,31,128,248,31,128, + 120,31,128,56,31,128,56,31,134,24,31,134,24,31,142,0, + 31,142,0,31,158,0,31,254,0,31,254,0,31,158,0,31, + 142,0,31,134,24,31,134,24,31,134,24,31,128,56,31,128, + 56,31,128,120,31,129,248,255,255,248,255,255,248,21,25,75, + 23,1,0,255,255,248,255,255,248,31,193,248,31,128,248,31, + 128,120,31,128,56,31,128,24,31,131,24,31,131,24,31,135, + 8,31,135,0,31,159,0,31,255,0,31,255,0,31,143,0, + 31,135,0,31,131,0,31,131,0,31,131,0,31,128,0,31, + 128,0,31,128,0,31,128,0,255,248,0,255,248,0,25,25, + 100,26,1,0,0,126,12,0,3,255,220,0,7,193,252,0, + 15,128,124,0,31,0,60,0,63,0,28,0,126,0,28,0, + 126,0,12,0,254,0,12,0,254,0,4,0,254,0,0,0, + 252,0,0,0,252,0,0,0,252,0,0,0,252,7,255,128, + 252,7,255,128,252,0,124,0,254,0,124,0,126,0,124,0, + 126,0,124,0,63,0,252,0,31,0,252,0,15,129,220,0, + 7,255,28,0,0,252,12,0,26,25,100,28,1,0,255,243, + 255,192,255,243,255,192,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,255, + 254,0,31,255,254,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,255,243,255,192,255,243, + 255,192,12,25,50,14,1,0,255,240,255,240,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,255,240,255,240,20,25,75,20,0,0, + 0,255,240,0,255,240,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,24,31,128,126,31,128,126,31,128, + 254,31,128,254,31,128,254,31,128,252,31,0,96,63,0,96, + 62,0,56,254,0,63,248,0,15,224,0,25,25,100,27,1, + 0,255,243,255,128,255,243,255,128,31,128,126,0,31,128,120, + 0,31,128,240,0,31,129,224,0,31,129,192,0,31,131,128, + 0,31,135,0,0,31,143,0,0,31,159,0,0,31,191,128, + 0,31,255,192,0,31,239,192,0,31,239,224,0,31,199,224, + 0,31,135,240,0,31,131,248,0,31,129,248,0,31,129,252, + 0,31,128,252,0,31,128,254,0,31,128,255,0,255,243,255, + 128,255,243,255,128,21,25,75,23,1,0,255,240,0,255,240, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,24,31,128, + 24,31,128,24,31,128,56,31,128,56,31,128,120,31,129,248, + 255,255,248,255,255,248,31,25,100,32,0,0,127,224,7,254, + 127,240,15,254,15,240,15,240,15,240,15,240,13,248,27,240, + 13,248,27,240,13,248,27,240,12,252,59,240,12,252,51,240, + 12,252,51,240,12,124,115,240,12,126,99,240,12,126,99,240, + 12,62,227,240,12,63,195,240,12,63,195,240,12,31,195,240, + 12,31,131,240,12,31,131,240,12,15,131,240,12,15,3,240, + 12,15,3,240,30,15,3,240,255,198,31,254,255,198,31,254, + 27,25,100,27,0,0,255,128,127,224,255,192,127,224,63,224, + 15,0,15,224,6,0,15,240,6,0,15,248,6,0,15,252, + 6,0,13,254,6,0,12,254,6,0,12,255,6,0,12,127, + 134,0,12,63,198,0,12,31,230,0,12,15,230,0,12,15, + 246,0,12,7,254,0,12,3,254,0,12,1,254,0,12,0, + 254,0,12,0,126,0,12,0,126,0,12,0,62,0,30,0, + 30,0,255,192,14,0,255,192,6,0,24,25,75,26,1,0, + 0,126,0,3,255,192,15,193,240,31,128,248,63,0,252,62, + 0,124,126,0,126,126,0,126,252,0,63,252,0,63,252,0, + 63,252,0,63,252,0,63,252,0,63,252,0,63,252,0,63, + 252,0,63,126,0,126,126,0,126,62,0,124,63,0,252,31, + 128,248,15,193,240,3,255,192,0,126,0,22,25,75,24,1, + 0,255,255,128,255,255,224,31,131,240,31,129,248,31,128,252, + 31,128,252,31,128,252,31,128,252,31,128,252,31,128,252,31, + 129,248,31,131,240,31,255,224,31,255,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,255,240,0,255,240,0,25,31,124,26, + 1,250,0,126,0,0,3,255,192,0,15,193,240,0,31,128, + 248,0,63,0,252,0,62,0,124,0,126,0,126,0,126,0, + 126,0,252,0,63,0,252,0,63,0,252,0,63,0,252,0, + 63,0,252,0,63,0,252,0,63,0,252,0,63,0,252,60, + 63,0,252,254,63,0,127,135,126,0,127,131,254,0,63,3, + 252,0,63,3,252,0,31,131,248,0,15,195,240,0,3,255, + 224,0,0,127,224,0,0,3,225,128,0,3,225,128,0,1, + 243,128,0,1,255,0,0,0,254,0,0,0,60,0,25,25, + 100,27,1,0,255,255,128,0,255,255,240,0,31,131,248,0, + 31,129,248,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,129,248,0,31,129,240,0, + 31,135,192,0,31,255,0,0,31,255,192,0,31,135,224,0, + 31,131,224,0,31,131,240,0,31,131,240,0,31,131,240,0, + 31,131,249,128,31,129,249,128,31,129,251,0,31,129,255,0, + 255,240,254,0,255,240,124,0,19,25,75,21,1,0,3,240, + 192,31,253,192,60,31,192,120,7,192,112,3,192,240,1,192, + 240,0,192,248,0,192,255,0,192,255,240,0,127,254,0,127, + 255,0,63,255,128,15,255,192,7,255,224,64,127,224,96,7, + 224,96,3,224,112,1,224,120,1,224,120,1,192,126,3,192, + 127,7,128,103,255,0,97,252,0,21,25,75,23,1,0,255, + 255,248,255,255,248,241,248,120,225,248,56,225,248,56,193,248, + 24,193,248,24,193,248,24,129,248,8,129,248,8,1,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1, + 248,0,1,248,0,1,248,0,1,248,0,1,248,0,1,248, + 0,1,248,0,15,255,128,15,255,128,26,25,100,28,1,0, + 255,240,255,192,255,240,255,192,31,128,30,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,28,0, + 15,192,24,0,15,224,56,0,7,248,240,0,3,255,224,0, + 0,255,192,0,25,25,100,25,0,0,255,224,255,128,255,224, + 255,128,63,128,62,0,31,128,28,0,31,128,28,0,31,192, + 24,0,15,192,56,0,15,192,48,0,7,224,112,0,7,224, + 112,0,7,240,96,0,3,240,224,0,3,240,192,0,1,248, + 192,0,1,249,192,0,1,249,128,0,0,255,128,0,0,255, + 0,0,0,255,0,0,0,127,0,0,0,126,0,0,0,62, + 0,0,0,62,0,0,0,60,0,0,0,28,0,0,32,25, + 100,32,0,0,255,223,249,255,255,223,249,255,63,7,224,124, + 63,7,224,56,31,131,224,48,31,131,240,112,31,131,240,112, + 15,193,240,96,15,195,248,96,15,195,248,224,7,195,248,192, + 7,231,248,192,7,230,252,192,7,230,253,128,3,254,125,128, + 3,252,127,128,3,252,127,128,1,252,63,0,1,248,63,0, + 1,248,63,0,0,248,62,0,0,248,30,0,0,240,30,0, + 0,112,28,0,0,112,12,0,24,25,75,24,0,0,255,227, + 255,255,227,255,63,128,252,31,192,120,31,192,112,15,224,224, + 7,224,192,7,241,192,3,255,128,3,255,0,1,255,0,0, + 254,0,0,254,0,0,127,0,0,127,128,0,255,128,1,223, + 192,3,143,224,3,143,224,7,7,240,14,3,240,30,3,248, + 63,3,252,255,239,255,255,239,255,24,25,75,24,0,0,255, + 241,255,255,241,255,63,128,124,31,192,56,31,192,112,15,224, + 112,15,224,224,7,240,192,3,241,192,3,249,128,1,251,128, + 1,255,0,0,255,0,0,126,0,0,126,0,0,126,0,0, + 126,0,0,126,0,0,126,0,0,126,0,0,126,0,0,126, + 0,0,126,0,3,255,192,3,255,192,19,25,75,21,1,0, + 127,255,224,127,255,224,126,15,224,120,15,224,112,31,192,112, + 31,128,96,63,128,96,127,0,64,126,0,0,254,0,1,252, + 0,1,252,0,3,248,0,3,240,0,7,240,0,15,224,32, + 15,224,96,31,192,96,31,128,96,63,128,224,127,0,224,127, + 1,224,254,7,224,255,255,224,255,255,224,8,29,29,13,3, + 252,255,255,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,255,255,16,25, + 50,20,2,0,240,0,248,0,120,0,124,0,60,0,62,0, + 30,0,31,0,15,0,15,128,7,128,7,192,3,192,3,224, + 1,224,1,240,0,240,0,248,0,120,0,124,0,60,0,62, + 0,30,0,30,0,15,8,29,29,13,1,252,255,255,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,255,255,16,14,28,20,2,11,3, + 192,7,224,7,224,15,240,15,240,15,240,30,120,30,120,60, + 60,60,60,124,62,120,30,248,31,240,15,16,3,6,16,0, + 251,255,255,255,255,255,255,7,6,6,11,2,17,96,240,248, + 124,30,6,18,16,48,20,1,0,15,240,0,63,252,0,120, + 126,0,124,62,0,124,62,0,56,62,0,0,62,0,3,254, + 0,31,190,0,126,62,0,124,62,0,252,62,0,252,62,0, + 252,127,64,127,255,192,63,143,128,19,25,75,21,0,0,255, + 0,0,255,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,63,0,31,255,128, + 31,207,192,31,135,192,31,3,224,31,3,224,31,3,224,31, + 3,224,31,3,224,31,3,224,31,3,224,31,3,192,31,7, + 192,31,143,128,29,255,0,24,124,0,15,16,32,17,1,0, + 3,240,15,252,62,62,124,62,124,62,248,28,248,0,248,0, + 248,0,248,0,252,2,252,6,126,6,63,28,31,248,7,224, + 20,25,75,22,1,0,0,127,128,0,127,128,0,31,128,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,15,207,128,31,239,128,62,63,128,124,31,128,120,31,128, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,31,128,124,31,128,124,127,128,63,239,240,15,143, + 240,16,16,32,18,1,0,3,224,15,248,60,60,120,30,120, + 30,248,31,248,31,255,255,255,255,248,0,248,0,252,3,124, + 6,63,14,31,252,7,240,15,25,50,13,0,0,0,240,3, + 252,7,158,15,62,15,62,31,28,31,0,31,0,31,0,255, + 240,255,240,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,255,224,255,224,20, + 25,75,20,1,249,0,1,224,0,3,240,7,255,240,31,124, + 224,62,62,0,124,31,0,124,31,0,124,31,0,124,31,0, + 124,31,0,62,62,0,31,126,0,31,248,0,124,0,0,248, + 0,0,255,252,0,255,255,0,63,255,0,31,255,128,127,255, + 128,240,7,128,240,7,128,248,15,0,127,254,0,15,240,0, + 20,25,75,22,1,0,254,0,0,254,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,62,0,62,255,128,63,255,128,63,143,192,63,7,192, + 63,7,192,62,7,192,62,7,192,62,7,192,62,7,192,62, + 7,192,62,7,192,62,7,192,62,7,192,255,159,240,255,159, + 240,9,25,50,12,2,0,28,0,62,0,62,0,62,0,28, + 0,0,0,0,0,0,0,0,0,254,0,254,0,62,0,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,255,128,255,128,12,32,64,12,253,249,0, + 224,1,240,1,240,1,240,0,224,0,0,0,0,0,0,0, + 0,7,240,7,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,113,240,249,224,249,224,251,192,127,128,30,0,20, + 25,75,22,1,0,254,0,0,254,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,63,224,62,63,224,62,15,0,62,14,0,62,60,0,62, + 112,0,62,248,0,63,252,0,63,254,0,63,126,0,62,63, + 0,62,31,128,62,31,192,62,15,224,255,191,240,255,191,240, + 10,25,50,12,1,0,254,0,254,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,255,192,255,192,29,16,64,31,1,0,254,126, + 31,0,254,255,63,192,63,255,255,192,63,159,231,224,63,15, + 195,224,62,15,131,224,62,15,131,224,62,15,131,224,62,15, + 131,224,62,15,131,224,62,15,131,224,62,15,131,224,62,15, + 131,224,62,15,131,224,255,191,239,248,255,191,239,248,20,16, + 48,22,1,0,254,62,0,254,255,128,63,255,128,63,143,192, + 63,7,192,62,7,192,62,7,192,62,7,192,62,7,192,62, + 7,192,62,7,192,62,7,192,62,7,192,62,7,192,255,159, + 240,255,159,240,17,16,48,19,1,0,3,224,0,15,248,0, + 62,62,0,124,31,0,124,31,0,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,124,31,0,124,31, + 0,62,62,0,15,248,0,3,224,0,19,23,69,21,1,249, + 254,126,0,254,255,128,63,143,192,63,7,192,63,7,224,62, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,63,7,192,63,7,192,63,143,128,63,255,0,62,126,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,0,0,255, + 128,0,255,128,0,20,23,69,20,1,249,7,225,128,31,249, + 128,62,31,128,124,31,128,124,15,128,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,124,31,128,124, + 31,128,62,63,128,31,239,128,7,207,128,0,15,128,0,15, + 128,0,15,128,0,15,128,0,15,128,0,127,240,0,127,240, + 15,16,32,16,1,0,252,124,252,254,61,254,61,190,63,62, + 62,28,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,255,192,255,192,14,16,32,16,1,0,15,216,60,248, + 112,56,240,24,254,8,255,192,255,240,127,248,63,248,15,252, + 192,252,192,60,224,56,248,120,255,240,207,192,12,23,46,14, + 1,0,6,0,6,0,14,0,14,0,14,0,30,0,62,0, + 255,224,255,224,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,48,62,48,62,48,62,96,63,224,31,192,15,128, + 20,16,48,22,1,0,254,31,192,254,31,192,62,7,192,62, + 7,192,62,7,192,62,7,192,62,7,192,62,7,192,62,7, + 192,62,7,192,62,15,192,62,15,192,63,31,192,31,255,192, + 31,247,240,7,199,240,19,16,48,19,0,0,255,143,224,255, + 143,224,63,3,192,63,3,128,31,3,0,31,135,0,15,134, + 0,15,198,0,7,204,0,7,236,0,3,248,0,3,248,0, + 1,248,0,1,240,0,0,240,0,0,224,0,27,16,64,29, + 1,0,255,191,239,224,255,191,239,224,126,31,131,192,62,15, + 131,128,63,15,131,0,31,15,195,0,31,143,198,0,15,159, + 230,0,15,155,230,0,15,251,236,0,7,241,252,0,7,241, + 248,0,3,225,248,0,3,224,240,0,1,192,240,0,1,192, + 96,0,19,16,48,19,0,0,255,223,224,255,223,224,63,7, + 0,31,142,0,31,220,0,15,248,0,7,240,0,3,240,0, + 1,248,0,3,252,0,7,254,0,14,126,0,28,63,0,60, + 63,128,255,127,224,255,127,224,19,23,69,19,0,249,255,143, + 224,255,143,224,63,3,128,63,3,128,31,3,0,31,135,0, + 15,134,0,15,198,0,7,204,0,7,236,0,3,248,0,3, + 248,0,1,248,0,1,240,0,0,240,0,0,224,0,0,96, + 0,112,192,0,248,192,0,249,128,0,255,0,0,127,0,0, + 60,0,0,14,16,32,16,1,0,127,252,127,252,112,252,97, + 248,97,248,67,240,7,224,7,224,15,192,31,128,31,12,63, + 12,126,28,124,28,255,252,255,252,8,30,30,13,3,252,3, + 14,28,60,60,60,60,60,60,60,60,60,60,56,240,248,60, + 60,60,60,60,60,60,60,60,60,60,28,14,3,4,25,25, + 20,8,0,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,8,28,28,13, + 1,253,224,120,60,60,60,60,60,60,60,60,60,60,28,15, + 31,60,60,60,60,60,60,60,60,60,60,60,120,224,16,6, + 12,20,2,6,14,4,63,142,127,255,255,254,113,252,32,112, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,0,0,0,9,1,1,6,25,25,10,2,249,120,252,252, + 252,252,120,0,0,48,48,48,48,48,48,120,120,120,120,124, + 252,252,252,252,252,120,15,22,44,19,1,253,0,6,0,6, + 0,12,3,252,14,124,60,62,124,62,120,126,248,126,248,220, + 248,192,249,128,253,128,255,2,255,6,126,6,63,28,31,248, + 15,224,24,0,24,0,48,0,17,24,72,19,1,0,1,248, + 0,7,252,0,15,142,0,15,15,0,31,31,0,31,31,0, + 31,31,0,31,14,0,15,0,0,15,0,0,7,128,0,127, + 248,0,127,248,0,7,128,0,7,128,0,7,128,0,3,128, + 0,3,129,128,123,3,128,255,199,0,199,255,0,199,254,0, + 253,254,0,120,124,0,16,16,32,19,1,3,99,198,247,239, + 255,254,127,252,60,62,120,30,112,14,112,14,112,14,112,14, + 120,30,60,60,127,254,255,255,247,239,99,198,19,24,72,19, + 0,0,255,31,224,255,31,224,124,7,128,62,7,0,62,7, + 0,31,6,0,31,14,0,15,140,0,15,140,0,7,216,0, + 7,216,0,3,240,0,31,254,0,31,254,0,1,224,0,1, + 224,0,31,254,0,31,254,0,1,224,0,1,224,0,1,224, + 0,1,224,0,15,252,0,15,252,0,4,25,25,20,8,0, + 240,240,240,240,240,240,240,240,240,240,0,0,0,0,0,240, + 240,240,240,240,240,240,240,240,240,12,29,58,16,2,253,31, + 0,115,128,99,192,227,192,227,192,241,128,120,0,124,0,62, + 0,30,0,63,0,111,128,199,192,227,224,225,224,240,240,120, + 112,124,112,62,96,31,192,15,128,7,192,3,224,97,224,240, + 224,240,224,240,224,121,192,63,0,11,5,10,11,0,18,96, + 192,241,224,241,224,241,224,96,192,24,25,75,25,1,0,0, + 255,0,3,255,192,7,129,224,30,0,112,24,0,24,48,0, + 12,112,127,14,96,243,134,97,193,134,227,193,135,195,128,131, + 195,128,3,195,128,3,195,128,3,195,128,3,195,128,7,193, + 192,134,225,225,134,96,255,12,112,60,28,56,0,56,28,0, + 112,15,129,192,3,255,128,0,254,0,11,15,30,12,0,10, + 63,0,227,192,241,192,227,192,15,192,113,192,225,192,227,192, + 247,224,253,224,0,0,0,0,0,0,255,224,255,224,12,11, + 22,16,2,3,4,16,12,48,24,96,56,224,113,192,243,192, + 113,192,56,224,24,96,12,48,4,16,16,10,20,20,2,3, + 255,255,255,255,255,255,255,255,0,15,0,15,0,15,0,15, + 0,15,0,15,8,4,4,11,1,6,255,255,255,255,23,25, + 75,24,0,0,0,254,0,3,255,128,7,1,224,12,0,112, + 24,0,56,48,0,24,97,254,12,96,231,12,192,227,142,192, + 227,134,192,227,134,192,231,6,192,252,6,192,238,6,192,231, + 6,192,231,6,192,227,134,96,227,140,99,241,204,48,0,24, + 24,0,24,28,0,112,7,0,224,3,255,128,0,252,0,11, + 3,6,11,0,18,255,224,255,224,255,224,9,10,20,13,2, + 13,62,0,127,0,99,0,193,128,193,128,193,128,193,128,99, + 0,127,0,62,0,16,17,34,20,2,0,3,192,3,192,3, + 192,3,192,255,255,255,255,255,255,255,255,3,192,3,192,3, + 192,3,192,0,0,255,255,255,255,255,255,255,255,10,14,28, + 11,0,9,63,0,99,128,193,192,241,192,241,192,113,192,3, + 128,7,0,14,0,24,64,48,64,127,192,255,192,255,192,11, + 14,28,11,0,9,63,0,115,192,113,192,33,192,1,192,3, + 128,31,0,3,192,1,224,113,224,241,224,225,224,99,192,63, + 0,7,6,6,11,2,17,12,30,62,124,240,192,20,23,69, + 22,1,249,254,63,192,254,63,192,62,7,192,62,7,192,62, + 7,192,62,7,192,62,7,192,62,7,192,62,7,192,62,7, + 192,62,15,192,62,15,192,63,31,192,63,255,192,63,247,240, + 55,199,240,48,0,0,48,0,0,120,0,0,120,0,0,120, + 0,0,120,0,0,48,0,0,21,25,75,25,1,0,15,255, + 248,63,255,248,127,227,192,127,227,192,255,227,192,255,227,192, + 255,227,192,255,227,192,127,227,192,127,227,192,63,227,192,31, + 227,192,7,227,192,1,227,192,1,227,192,1,227,192,1,227, + 192,1,227,192,1,227,192,1,227,192,1,227,192,1,227,192, + 1,227,192,15,255,248,15,255,248,6,6,6,9,1,5,120, + 252,252,252,252,120,7,7,7,11,1,249,24,48,124,14,14, + 220,120,9,14,28,11,1,9,12,0,252,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,255,128,11,15,30,12,0,10,14,0,63,128,113,192, + 241,224,224,224,224,224,224,224,241,224,113,192,63,128,14,0, + 0,0,0,0,127,224,127,224,12,11,22,16,2,3,130,0, + 195,0,97,128,113,192,56,224,60,240,56,224,113,192,97,128, + 195,0,130,0,25,23,92,28,1,0,12,0,56,0,252,0, + 48,0,28,0,112,0,28,0,224,0,28,0,192,0,28,1, + 192,0,28,1,128,0,28,3,128,0,28,7,0,0,28,7, + 2,0,28,14,6,0,28,12,14,0,28,28,30,0,255,184, + 62,0,0,56,110,0,0,112,206,0,0,97,142,0,0,227, + 14,0,0,195,255,128,1,192,14,0,3,128,14,0,3,0, + 14,0,7,0,63,128,25,23,92,28,1,0,12,0,56,0, + 252,0,112,0,28,0,112,0,28,0,224,0,28,0,192,0, + 28,1,192,0,28,1,128,0,28,3,128,0,28,7,0,0, + 28,6,126,0,28,14,199,0,28,13,135,128,28,29,227,128, + 255,185,231,128,0,56,231,128,0,112,15,0,0,96,14,0, + 0,224,28,0,1,192,48,128,1,192,96,128,3,128,255,128, + 3,1,255,128,7,1,255,128,26,23,92,28,0,0,63,0, + 28,0,115,192,56,0,113,192,56,0,33,192,112,0,1,192, + 96,0,3,128,224,0,31,0,192,0,3,193,192,0,1,227, + 128,0,113,227,129,0,241,231,3,0,225,230,7,0,99,206, + 15,0,63,28,31,0,0,28,55,0,0,56,103,0,0,48, + 199,0,0,113,135,0,0,97,255,192,0,224,7,0,1,192, + 7,0,1,192,7,0,3,128,31,192,15,25,50,16,1,249, + 3,192,7,224,7,224,7,224,7,224,3,192,0,0,0,0, + 1,128,1,128,1,128,3,128,7,0,31,0,62,0,126,0, + 124,0,252,124,252,124,252,126,252,124,124,60,126,60,63,240, + 15,192,25,31,124,25,0,0,0,48,0,0,0,120,0,0, + 0,124,0,0,0,62,0,0,0,15,0,0,0,3,0,0, + 0,0,0,0,0,28,0,0,0,30,0,0,0,62,0,0, + 0,63,0,0,0,127,0,0,0,127,128,0,0,127,128,0, + 0,255,128,0,0,207,192,0,1,207,192,0,1,143,192,0, + 1,135,224,0,3,135,224,0,3,7,240,0,7,3,240,0, + 7,255,240,0,7,255,248,0,14,1,248,0,12,1,252,0, + 28,0,252,0,28,0,254,0,62,0,254,0,255,131,255,128, + 255,131,255,128,25,32,128,25,0,0,0,1,128,0,0,3, + 192,0,0,7,192,0,0,15,128,0,0,30,0,0,0,24, + 0,0,0,0,0,0,0,28,0,0,0,28,0,0,0,30, + 0,0,0,62,0,0,0,63,0,0,0,127,0,0,0,127, + 128,0,0,127,128,0,0,255,128,0,0,207,192,0,1,207, + 192,0,1,143,192,0,1,135,224,0,3,135,224,0,3,7, + 240,0,7,3,240,0,7,255,240,0,7,255,248,0,14,1, + 248,0,12,1,252,0,28,0,252,0,28,0,254,0,62,0, + 254,0,255,131,255,128,255,131,255,128,25,31,124,25,0,0, + 0,28,0,0,0,62,0,0,0,127,0,0,0,227,128,0, + 1,128,192,0,0,0,0,0,0,28,0,0,0,28,0,0, + 0,30,0,0,0,62,0,0,0,63,0,0,0,127,0,0, + 0,127,128,0,0,127,128,0,0,255,128,0,0,207,192,0, + 1,207,192,0,1,143,192,0,1,135,224,0,3,135,224,0, + 3,7,240,0,7,3,240,0,7,255,240,0,7,255,248,0, + 14,1,248,0,12,1,252,0,28,0,252,0,28,0,254,0, + 62,0,254,0,255,131,255,128,255,131,255,128,25,31,124,25, + 0,0,0,56,96,0,0,127,224,0,0,255,192,0,0,195, + 128,0,0,0,0,0,0,0,0,0,0,28,0,0,0,28, + 0,0,0,30,0,0,0,62,0,0,0,63,0,0,0,127, + 0,0,0,127,128,0,0,127,128,0,0,255,128,0,0,207, + 192,0,1,207,192,0,1,143,192,0,1,135,224,0,3,135, + 224,0,3,7,240,0,7,3,240,0,7,255,240,0,7,255, + 248,0,14,1,248,0,12,1,252,0,28,0,252,0,28,0, + 254,0,62,0,254,0,255,131,255,128,255,131,255,128,25,31, + 124,25,0,0,0,193,128,0,1,227,192,0,1,227,192,0, + 1,227,192,0,0,193,128,0,0,0,0,0,0,28,0,0, + 0,28,0,0,0,30,0,0,0,62,0,0,0,63,0,0, + 0,127,0,0,0,127,128,0,0,127,128,0,0,255,128,0, + 0,207,192,0,1,207,192,0,1,143,192,0,1,135,224,0, + 3,135,224,0,3,7,240,0,7,3,240,0,7,255,240,0, + 7,255,248,0,14,1,248,0,12,1,252,0,28,0,252,0, + 28,0,254,0,62,0,254,0,255,131,255,128,255,131,255,128, + 25,33,132,25,0,0,0,62,0,0,0,119,0,0,0,99, + 0,0,0,99,0,0,0,119,0,0,0,62,0,0,0,0, + 0,0,0,0,0,0,0,28,0,0,0,28,0,0,0,30, + 0,0,0,62,0,0,0,63,0,0,0,127,0,0,0,127, + 128,0,0,127,128,0,0,255,128,0,0,207,192,0,1,207, + 192,0,1,143,192,0,1,135,224,0,3,135,224,0,3,7, + 240,0,7,3,240,0,7,255,240,0,7,255,248,0,14,1, + 248,0,12,1,252,0,28,0,252,0,28,0,254,0,62,0, + 254,0,255,131,255,128,255,131,255,128,31,25,100,33,255,0, + 1,255,255,254,1,255,255,254,0,123,240,126,0,59,240,62, + 0,51,240,30,0,51,240,14,0,115,240,6,0,99,240,198, + 0,227,240,198,0,195,241,194,1,195,241,192,1,131,243,192, + 3,131,255,192,3,3,255,192,7,255,243,192,7,255,241,192, + 14,3,240,198,14,3,240,198,12,3,240,198,28,3,240,14, + 24,3,240,14,56,3,240,30,124,3,240,126,255,31,255,254, + 255,31,255,254,22,32,96,24,1,249,0,126,24,3,255,184, + 7,193,248,31,128,248,31,0,120,62,0,56,126,0,56,126, + 0,24,254,0,24,252,0,8,252,0,0,252,0,0,252,0, + 0,252,0,0,252,0,0,254,0,0,254,0,12,254,0,28, + 126,0,24,126,0,56,63,0,48,31,128,112,15,193,224,7, + 255,192,0,255,0,0,48,0,0,96,0,0,248,0,0,28, + 0,0,28,0,1,184,0,0,240,0,21,32,96,23,1,0, + 0,192,0,1,224,0,1,240,0,0,248,0,0,60,0,0, + 12,0,0,0,0,255,255,248,255,255,248,31,129,248,31,128, + 248,31,128,120,31,128,56,31,128,56,31,134,24,31,134,24, + 31,142,0,31,142,0,31,158,0,31,254,0,31,254,0,31, + 158,0,31,142,0,31,134,24,31,134,24,31,134,24,31,128, + 56,31,128,56,31,128,120,31,129,248,255,255,248,255,255,248, + 21,32,96,23,1,0,0,3,0,0,7,128,0,15,128,0, + 31,0,0,60,0,0,48,0,0,0,0,255,255,248,255,255, + 248,31,129,248,31,128,248,31,128,120,31,128,56,31,128,56, + 31,134,24,31,134,24,31,142,0,31,142,0,31,158,0,31, + 254,0,31,254,0,31,158,0,31,142,0,31,134,24,31,134, + 24,31,134,24,31,128,56,31,128,56,31,128,120,31,129,248, + 255,255,248,255,255,248,21,32,96,23,1,0,0,56,0,0, + 124,0,0,254,0,1,199,0,3,1,128,0,0,0,0,0, + 0,255,255,248,255,255,248,31,129,248,31,128,248,31,128,120, + 31,128,56,31,128,56,31,134,24,31,134,24,31,142,0,31, + 142,0,31,158,0,31,254,0,31,254,0,31,158,0,31,142, + 0,31,134,24,31,134,24,31,134,24,31,128,56,31,128,56, + 31,128,120,31,129,248,255,255,248,255,255,248,21,32,96,23, + 1,0,1,131,0,3,199,128,3,199,128,3,199,128,1,131, + 0,0,0,0,0,0,0,255,255,248,255,255,248,31,129,248, + 31,128,248,31,128,120,31,128,56,31,128,56,31,134,24,31, + 134,24,31,142,0,31,142,0,31,158,0,31,254,0,31,254, + 0,31,158,0,31,142,0,31,134,24,31,134,24,31,134,24, + 31,128,56,31,128,56,31,128,120,31,129,248,255,255,248,255, + 255,248,12,33,66,14,1,0,48,0,120,0,124,0,62,0, + 15,0,3,0,0,0,0,0,255,240,255,240,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,255,240,255,240,12,33,66,14,1,0, + 0,192,1,224,3,224,7,192,15,0,12,0,0,0,0,0, + 255,240,255,240,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,255,240, + 255,240,12,32,64,14,1,0,7,0,15,128,31,192,56,224, + 96,48,0,0,0,0,255,240,255,240,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,255,240,255,240,12,32,64,14,1,0,48,96, + 120,240,120,240,120,240,48,96,0,0,0,0,255,240,255,240, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,255,240,255,240,24,25, + 75,26,1,0,255,255,0,255,255,224,31,131,240,31,129,248, + 31,128,252,31,128,124,31,128,126,31,128,126,31,128,127,31, + 128,63,31,128,63,31,128,63,255,248,63,255,248,63,31,128, + 63,31,128,63,31,128,63,31,128,127,31,128,126,31,128,126, + 31,128,252,31,128,248,31,131,240,255,255,224,255,255,0,27, + 31,124,27,0,0,0,56,96,0,0,127,224,0,0,255,192, + 0,0,195,128,0,0,0,0,0,0,0,0,0,255,128,127, + 224,255,192,127,224,63,224,15,0,15,224,6,0,15,240,6, + 0,15,248,6,0,15,252,6,0,13,254,6,0,12,254,6, + 0,12,255,6,0,12,127,134,0,12,63,198,0,12,31,230, + 0,12,15,230,0,12,15,246,0,12,7,254,0,12,3,254, + 0,12,1,254,0,12,0,254,0,12,0,126,0,12,0,126, + 0,12,0,62,0,30,0,30,0,255,192,14,0,255,192,6, + 0,24,32,96,26,1,0,1,128,0,3,192,0,3,224,0, + 1,240,0,0,120,0,0,24,0,0,0,0,0,126,0,3, + 255,192,15,193,240,31,128,248,63,0,252,62,0,124,126,0, + 126,126,0,126,252,0,63,252,0,63,252,0,63,252,0,63, + 252,0,63,252,0,63,252,0,63,252,0,63,252,0,63,126, + 0,126,126,0,126,62,0,124,63,0,252,31,128,248,15,193, + 240,3,255,192,0,126,0,24,32,96,26,1,0,0,0,192, + 0,1,224,0,3,224,0,7,192,0,15,0,0,12,0,0, + 0,0,0,126,0,3,255,192,15,193,240,31,128,248,63,0, + 252,62,0,124,126,0,126,126,0,126,252,0,63,252,0,63, + 252,0,63,252,0,63,252,0,63,252,0,63,252,0,63,252, + 0,63,252,0,63,126,0,126,126,0,126,62,0,124,63,0, + 252,31,128,248,15,193,240,3,255,192,0,126,0,24,32,96, + 26,1,0,0,28,0,0,62,0,0,127,0,0,227,128,1, + 128,192,0,0,0,0,0,0,0,126,0,3,255,192,15,193, + 240,31,128,248,63,0,252,62,0,124,126,0,126,126,0,126, + 252,0,63,252,0,63,252,0,63,252,0,63,252,0,63,252, + 0,63,252,0,63,252,0,63,252,0,63,126,0,126,126,0, + 126,62,0,124,63,0,252,31,128,248,15,193,240,3,255,192, + 0,126,0,24,31,93,26,1,0,0,112,192,0,255,192,1, + 255,128,1,135,0,0,0,0,0,0,0,0,126,0,3,255, + 192,15,193,240,31,128,248,63,0,252,62,0,124,126,0,126, + 126,0,126,252,0,63,252,0,63,252,0,63,252,0,63,252, + 0,63,252,0,63,252,0,63,252,0,63,252,0,63,126,0, + 126,126,0,126,62,0,124,63,0,252,31,128,248,15,193,240, + 3,255,192,0,126,0,24,32,96,26,1,0,0,193,128,1, + 227,192,1,227,192,1,227,192,0,193,128,0,0,0,0,0, + 0,0,126,0,3,255,192,15,193,240,31,128,248,63,0,252, + 62,0,124,126,0,126,126,0,126,252,0,63,252,0,63,252, + 0,63,252,0,63,252,0,63,252,0,63,252,0,63,252,0, + 63,252,0,63,126,0,126,126,0,126,62,0,124,63,0,252, + 31,128,248,15,193,240,3,255,192,0,126,0,16,17,34,20, + 2,0,32,4,112,14,248,31,252,63,126,126,63,252,31,248, + 15,240,7,224,15,240,31,248,63,252,126,126,252,63,248,31, + 112,14,32,4,24,27,81,26,1,255,0,0,12,0,126,24, + 3,255,248,7,195,240,31,128,248,31,0,248,62,0,252,126, + 1,254,126,3,126,254,7,127,252,6,63,252,12,63,252,28, + 63,252,24,63,252,48,63,252,96,63,252,224,63,254,192,127, + 127,128,126,127,128,126,63,0,124,31,0,248,31,128,248,15, + 193,224,27,255,192,48,126,0,48,0,0,26,32,128,28,1, + 0,0,48,0,0,0,120,0,0,0,124,0,0,0,62,0, + 0,0,15,0,0,0,3,0,0,0,0,0,0,255,240,255, + 192,255,240,255,192,31,128,30,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,12,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,12,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,12,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,12,0,31,128,28,0,15,192,24, + 0,15,224,56,0,7,248,240,0,3,255,224,0,0,255,192, + 0,26,32,128,28,1,0,0,0,96,0,0,0,240,0,0, + 1,240,0,0,3,224,0,0,7,128,0,0,6,0,0,0, + 0,0,0,255,240,255,192,255,240,255,192,31,128,30,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,12,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,12,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,12,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,12,0,31, + 128,28,0,15,192,24,0,15,224,56,0,7,248,240,0,3, + 255,224,0,0,255,192,0,26,32,128,28,1,0,0,14,0, + 0,0,31,0,0,0,63,128,0,0,113,192,0,0,192,96, + 0,0,0,0,0,0,0,0,0,255,240,255,192,255,240,255, + 192,31,128,30,0,31,128,12,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,12,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,12,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,12,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,28,0,15,192,24,0,15,224,56, + 0,7,248,240,0,3,255,224,0,0,255,192,0,26,32,128, + 28,1,0,0,48,96,0,0,120,240,0,0,120,240,0,0, + 120,240,0,0,48,96,0,0,0,0,0,0,0,0,0,255, + 240,255,192,255,240,255,192,31,128,30,0,31,128,12,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,12,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,12,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,12,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,28,0,15, + 192,24,0,15,224,56,0,7,248,240,0,3,255,224,0,0, + 255,192,0,24,33,99,24,0,0,0,0,96,0,0,240,0, + 1,240,0,3,224,0,7,128,0,6,0,0,0,0,0,0, + 0,255,241,255,255,241,255,63,128,124,31,192,56,31,192,112, + 15,224,112,15,224,224,7,240,192,3,241,192,3,249,128,1, + 251,128,1,255,0,0,255,0,0,126,0,0,126,0,0,126, + 0,0,126,0,0,126,0,0,126,0,0,126,0,0,126,0, + 0,126,0,0,126,0,3,255,192,3,255,192,22,25,75,24, + 1,0,255,240,0,255,240,0,31,128,0,31,128,0,31,128, + 0,31,255,128,31,255,224,31,131,240,31,129,248,31,128,252, + 31,128,252,31,128,252,31,128,252,31,128,252,31,128,252,31, + 129,248,31,131,240,31,255,224,31,255,0,31,128,0,31,128, + 0,31,128,0,31,128,0,255,240,0,255,240,0,18,25,75, + 20,0,0,3,252,0,7,190,0,15,15,0,15,15,0,31, + 15,128,31,15,128,31,15,128,31,15,0,31,15,0,31,14, + 0,31,28,0,31,126,0,31,15,128,31,15,128,31,7,192, + 31,7,192,31,7,192,31,7,192,31,7,192,31,7,192,31, + 7,128,31,7,128,31,79,0,255,254,0,255,120,0,18,23, + 69,20,1,0,3,0,0,7,128,0,7,192,0,3,224,0, + 0,240,0,0,48,0,0,0,0,15,240,0,63,252,0,120, + 62,0,124,62,0,124,62,0,56,62,0,0,62,0,3,254, + 0,31,190,0,126,62,0,124,62,0,252,62,0,252,62,0, + 252,127,64,127,255,192,63,143,128,18,23,69,20,1,0,0, + 96,0,0,240,0,1,240,0,3,224,0,7,128,0,6,0, + 0,0,0,0,15,240,0,63,252,0,120,62,0,124,62,0, + 124,62,0,56,62,0,0,62,0,3,254,0,31,190,0,126, + 62,0,124,62,0,252,62,0,252,62,0,252,127,64,127,255, + 192,63,143,128,18,22,66,20,1,0,1,192,0,3,224,0, + 7,240,0,14,56,0,24,12,0,0,0,0,15,240,0,63, + 252,0,120,62,0,124,62,0,124,62,0,56,62,0,0,62, + 0,3,254,0,31,190,0,126,62,0,124,62,0,252,62,0, + 252,62,0,252,127,64,127,255,192,63,143,128,18,22,66,20, + 1,0,7,12,0,15,252,0,31,248,0,24,112,0,0,0, + 0,0,0,0,15,240,0,63,252,0,120,62,0,124,62,0, + 124,62,0,56,62,0,0,62,0,3,254,0,31,190,0,126, + 62,0,124,62,0,252,62,0,252,62,0,252,127,64,127,255, + 192,63,143,128,18,23,69,20,1,0,12,24,0,30,60,0, + 30,60,0,30,60,0,12,24,0,0,0,0,0,0,0,15, + 240,0,63,252,0,120,62,0,124,62,0,124,62,0,56,62, + 0,0,62,0,3,254,0,31,190,0,126,62,0,124,62,0, + 252,62,0,252,62,0,252,127,64,127,255,192,63,143,128,18, + 23,69,20,1,0,3,224,0,7,112,0,6,48,0,6,48, + 0,7,112,0,3,224,0,0,0,0,15,240,0,63,252,0, + 120,62,0,124,62,0,124,62,0,56,62,0,0,62,0,3, + 254,0,31,190,0,126,62,0,124,62,0,252,62,0,252,62, + 0,252,127,64,127,255,192,63,143,128,26,16,64,28,1,0, + 7,224,248,0,30,123,222,0,56,63,15,0,124,63,15,128, + 124,62,7,128,120,62,7,192,49,254,7,192,15,255,255,192, + 63,255,255,192,126,62,0,0,252,62,0,0,248,63,0,192, + 248,127,1,128,252,239,131,128,127,199,255,0,63,1,252,0, + 15,23,46,17,1,249,3,240,14,60,62,62,124,62,124,62, + 248,28,248,0,248,0,248,0,248,0,252,2,252,6,126,6, + 63,28,31,248,7,240,1,128,3,0,7,192,0,224,0,224, + 13,192,7,128,16,23,46,18,1,0,6,0,15,0,15,128, + 7,192,1,224,0,96,0,0,3,224,14,120,60,60,124,30, + 124,30,248,31,248,31,255,255,255,255,248,0,248,0,252,3, + 124,6,63,14,31,252,7,240,16,23,46,18,1,0,0,48, + 0,120,0,248,1,240,3,192,3,0,0,0,3,224,14,120, + 60,60,124,30,124,30,248,31,248,31,255,255,255,255,248,0, + 248,0,252,3,124,6,63,14,31,252,7,240,16,22,44,18, + 1,0,1,192,3,224,7,240,14,56,24,12,0,0,3,224, + 14,120,60,60,124,30,124,30,248,31,248,31,255,255,255,255, + 248,0,248,0,252,3,124,6,63,14,31,252,7,240,16,23, + 46,18,1,0,12,24,30,60,30,60,30,60,12,24,0,0, + 0,0,3,224,14,120,60,60,124,30,124,30,248,31,248,31, + 255,255,255,255,248,0,248,0,252,3,124,6,63,14,31,252, + 7,240,9,23,46,11,1,0,96,0,240,0,248,0,124,0, + 30,0,6,0,0,0,254,0,254,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,255,128,255,128,9,23,46,11,1,0,6,0,15,0, + 31,0,62,0,120,0,96,0,0,0,254,0,254,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,255,128,255,128,11,22,44,11,255,0, + 14,0,31,0,63,128,113,192,192,96,0,0,63,128,63,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,63,224,63,224,11,23,46,11, + 0,0,96,192,241,224,241,224,241,224,96,192,0,0,0,0, + 127,0,127,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,127,192,127,192, + 17,26,78,20,1,0,0,4,0,14,14,0,15,156,0,3, + 248,0,1,240,0,3,248,0,7,120,0,14,60,0,4,62, + 0,0,30,0,3,255,0,15,63,0,60,31,0,124,31,128, + 120,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,124,31,0,124,31,0,62,62,0,15,248, + 0,3,224,0,20,22,66,22,1,0,3,134,0,7,254,0, + 15,252,0,12,56,0,0,0,0,0,0,0,254,62,0,254, + 255,128,63,255,128,63,143,192,63,7,192,63,7,192,62,7, + 192,62,7,192,62,7,192,62,7,192,62,7,192,62,7,192, + 62,7,192,62,7,192,255,159,240,255,159,240,17,23,69,19, + 1,0,6,0,0,15,0,0,15,128,0,7,192,0,1,224, + 0,0,96,0,0,0,0,3,224,0,15,248,0,62,62,0, + 124,31,0,124,31,0,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,124,31,0,124,31,0,62,62, + 0,15,248,0,3,224,0,17,23,69,19,1,0,0,24,0, + 0,60,0,0,124,0,0,248,0,1,224,0,1,128,0,0, + 0,0,3,224,0,15,248,0,62,62,0,124,31,0,124,31, + 0,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 248,15,128,124,31,0,124,31,0,62,62,0,15,248,0,3, + 224,0,17,22,66,19,1,0,1,192,0,3,224,0,7,240, + 0,14,56,0,24,12,0,0,0,0,3,224,0,15,248,0, + 62,62,0,124,31,0,124,31,0,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,124,31,0,124,31, + 0,62,62,0,15,248,0,3,224,0,17,22,66,19,1,0, + 3,134,0,7,254,0,15,252,0,12,56,0,0,0,0,0, + 0,0,3,224,0,15,248,0,62,62,0,124,31,0,124,31, + 0,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 248,15,128,124,31,0,124,31,0,62,62,0,15,248,0,3, + 224,0,17,23,69,19,1,0,12,24,0,30,60,0,30,60, + 0,30,60,0,12,24,0,0,0,0,0,0,0,3,224,0, + 15,248,0,62,62,0,124,31,0,124,31,0,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,248,15,128,124,31, + 0,124,31,0,62,62,0,15,248,0,3,224,0,17,17,51, + 20,2,0,1,192,0,3,224,0,3,224,0,3,224,0,1, + 192,0,0,0,0,255,255,128,255,255,128,255,255,128,255,255, + 128,0,0,0,0,0,0,1,192,0,3,224,0,3,224,0, + 3,224,0,1,192,0,17,22,66,19,1,253,0,2,0,0, + 6,0,0,12,0,3,236,0,15,248,0,62,62,0,124,63, + 0,124,111,0,248,79,128,248,207,128,248,143,128,249,143,128, + 251,15,128,250,15,128,126,31,0,124,31,0,62,62,0,31, + 248,0,27,224,0,48,0,0,48,0,0,32,0,0,20,23, + 69,22,1,0,3,0,0,7,128,0,7,192,0,3,224,0, + 0,240,0,0,48,0,0,0,0,254,31,192,254,31,192,62, + 7,192,62,7,192,62,7,192,62,7,192,62,7,192,62,7, + 192,62,7,192,62,7,192,62,15,192,62,15,192,63,31,192, + 31,255,192,31,247,240,7,199,240,20,23,69,22,1,0,0, + 24,0,0,60,0,0,124,0,0,248,0,1,224,0,1,128, + 0,0,0,0,254,31,192,254,31,192,62,7,192,62,7,192, + 62,7,192,62,7,192,62,7,192,62,7,192,62,7,192,62, + 7,192,62,15,192,62,15,192,63,31,192,31,255,192,31,247, + 240,7,199,240,20,22,66,22,1,0,0,224,0,1,240,0, + 3,248,0,7,28,0,12,6,0,0,0,0,254,31,192,254, + 31,192,62,7,192,62,7,192,62,7,192,62,7,192,62,7, + 192,62,7,192,62,7,192,62,7,192,62,15,192,62,15,192, + 63,31,192,31,255,192,31,247,240,7,199,240,20,23,69,22, + 1,0,6,12,0,15,30,0,15,30,0,15,30,0,6,12, + 0,0,0,0,0,0,0,254,31,192,254,31,192,62,7,192, + 62,7,192,62,7,192,62,7,192,62,7,192,62,7,192,62, + 7,192,62,7,192,62,15,192,62,15,192,63,31,192,31,255, + 192,31,247,240,7,199,240,19,30,90,19,0,249,0,12,0, + 0,30,0,0,62,0,0,124,0,0,240,0,0,192,0,0, + 0,0,255,143,224,255,143,224,63,3,128,63,3,128,31,3, + 0,31,135,0,15,134,0,15,198,0,7,204,0,7,236,0, + 3,248,0,3,248,0,1,248,0,1,240,0,0,240,0,0, + 224,0,0,96,0,112,192,0,248,192,0,249,128,0,255,0, + 0,127,0,0,60,0,0,20,29,87,22,0,249,255,0,0, + 255,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 63,0,31,127,192,31,199,224,31,131,224,31,131,240,31,3, + 240,31,3,240,31,1,240,31,1,240,31,1,240,31,3,240, + 31,131,224,31,131,224,31,199,192,31,255,128,31,63,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,127,224, + 0,127,224,0,19,30,90,19,0,249,3,6,0,7,143,0, + 7,143,0,7,143,0,3,6,0,0,0,0,0,0,0,255, + 143,224,255,143,224,63,3,128,63,3,128,31,3,0,31,135, + 0,15,134,0,15,198,0,7,204,0,7,236,0,3,248,0, + 3,248,0,1,248,0,1,240,0,0,240,0,0,224,0,0, + 96,0,112,192,0,248,192,0,249,128,0,255,0,0,127,0, + 0,60,0,0}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--34-240-100-100-P-193-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 24 + Calculated Max Values w=17 h=25 x= 3 y=10 dx=20 dy= 0 ascent=25 len=72 + Font Bounding box w=39 h=53 x=-4 y=-13 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =24 descent= 0 + X Font ascent =24 descent= 0 + Max Font ascent =25 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB24n[846] U8G_SECTION(".progmem.u8g_font_ncenB24n") = { + 0,39,53,252,243,24,0,0,0,0,42,57,0,25,251,24, + 0,12,15,30,17,2,10,6,0,14,0,14,0,230,112,230, + 112,246,240,63,192,15,0,127,224,246,240,230,112,230,112,7, + 0,7,0,6,0,16,16,32,20,2,1,3,192,3,192,3, + 192,3,192,3,192,3,192,255,255,255,255,255,255,255,255,3, + 192,3,192,3,192,3,192,3,192,3,192,6,11,11,9,2, + 251,120,248,252,252,252,124,28,24,48,112,224,8,4,4,11, + 1,6,255,255,255,255,6,6,6,9,1,0,120,252,252,252, + 252,120,10,25,50,9,255,0,0,192,1,192,1,192,1,128, + 3,128,3,128,3,0,7,0,7,0,6,0,14,0,14,0, + 12,0,28,0,28,0,24,0,56,0,56,0,48,0,112,0, + 112,0,96,0,224,0,224,0,192,0,16,24,48,19,1,0, + 3,192,15,240,30,120,60,60,124,62,120,30,248,31,248,31, + 248,31,248,31,248,31,248,31,248,31,248,31,248,31,248,31, + 248,31,120,30,120,30,124,62,60,60,30,120,15,240,3,192, + 13,24,48,19,3,0,1,128,7,128,255,128,255,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,255,248,255,248,17,24,72,19,1,0,15,240,0,63, + 252,0,120,126,0,240,63,0,248,31,0,252,31,0,252,31, + 0,252,31,0,124,63,0,56,62,0,0,124,0,0,248,0, + 0,240,0,1,224,0,3,192,0,3,129,128,7,1,128,14, + 1,128,28,3,128,63,255,128,127,255,0,127,255,0,255,255, + 0,255,255,0,16,24,48,19,1,0,15,224,63,248,120,124, + 248,62,252,62,252,62,252,62,120,62,0,124,0,112,7,224, + 7,192,0,248,0,126,0,62,0,63,120,31,252,31,252,31, + 252,63,248,62,120,126,63,248,7,224,17,24,72,19,0,0, + 0,4,0,0,12,0,0,28,0,0,60,0,0,124,0,0, + 252,0,1,252,0,1,252,0,3,124,0,6,124,0,12,124, + 0,28,124,0,56,124,0,112,124,0,224,124,0,192,124,0, + 255,255,128,255,255,128,0,124,0,0,124,0,0,124,0,0, + 124,0,3,255,128,3,255,128,16,24,48,19,1,0,31,255, + 63,254,63,254,63,252,63,240,48,0,48,0,48,0,48,0, + 55,224,63,248,56,124,48,62,32,62,0,31,0,31,56,31, + 124,31,252,31,252,62,120,62,112,252,63,240,15,192,17,24, + 72,19,1,0,3,240,0,15,252,0,31,30,0,62,62,0, + 60,62,0,124,62,0,120,28,0,248,0,0,248,0,0,248, + 0,0,249,248,0,255,254,0,255,127,0,252,31,0,248,31, + 128,248,15,128,248,15,128,248,15,128,248,15,128,124,31,0, + 124,31,0,62,62,0,31,252,0,7,240,0,16,24,48,19, + 2,0,255,255,255,254,255,254,255,252,255,252,192,24,192,24, + 192,56,128,112,0,112,0,240,0,224,1,224,1,224,3,224, + 3,192,7,192,7,192,15,192,15,192,15,192,15,192,15,192, + 7,128,17,24,72,19,1,0,7,240,0,15,252,0,60,62, + 0,56,31,0,120,15,0,120,15,0,120,15,0,124,15,0, + 126,30,0,127,252,0,63,240,0,31,252,0,15,254,0,63, + 255,0,120,127,0,248,31,128,240,15,128,240,15,128,240,15, + 0,240,15,0,248,30,0,124,60,0,63,240,0,7,192,0, + 17,24,72,19,1,0,3,192,0,31,248,0,62,124,0,124, + 62,0,252,31,0,248,31,0,248,15,128,248,15,128,248,15, + 128,252,31,128,252,63,128,127,111,128,63,207,128,31,143,128, + 0,15,128,0,15,128,112,15,0,248,31,0,252,31,0,248, + 30,0,248,62,0,112,252,0,63,240,0,15,192,0}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--34-240-100-100-P-193-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=32 h=32 x= 8 y=17 dx=32 dy= 0 ascent=26 len=124 + Font Bounding box w=39 h=53 x=-4 y=-13 + Calculated Min Values x=-3 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =26 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB24r[5937] U8G_SECTION(".progmem.u8g_font_ncenB24r") = { + 0,39,53,252,243,25,6,143,16,147,32,127,249,26,249,25, + 249,0,0,0,9,1,1,6,25,25,10,2,0,120,252,252, + 252,252,252,252,120,120,120,120,48,48,48,48,48,48,0,0, + 120,252,252,252,252,120,11,11,22,11,0,14,96,192,241,224, + 241,224,241,224,241,224,241,224,241,224,96,192,96,192,96,192, + 96,192,16,25,50,19,1,255,7,28,7,28,7,28,7,28, + 14,56,14,56,14,56,127,255,127,255,127,255,14,56,12,48, + 28,112,28,112,255,254,255,254,255,254,28,112,28,112,56,224, + 56,224,56,224,56,224,56,224,56,224,17,30,90,19,1,252, + 1,128,0,1,128,0,1,128,0,7,240,0,31,252,0,57, + 158,0,113,143,0,113,159,0,241,159,0,241,142,0,253,128, + 0,255,128,0,127,240,0,127,252,0,63,254,0,15,255,0, + 1,255,128,1,191,128,113,143,128,249,135,128,249,135,128,249, + 135,0,241,143,0,121,158,0,63,252,0,7,224,0,1,128, + 0,1,128,0,1,128,0,1,128,0,26,24,96,27,0,0, + 0,0,24,0,7,192,48,0,15,96,112,0,30,57,224,0, + 60,31,96,0,60,16,192,0,120,16,128,0,120,17,128,0, + 240,49,0,0,240,35,0,0,240,98,0,0,240,198,31,0, + 123,140,61,128,63,12,120,192,0,24,240,64,0,17,240,64, + 0,49,224,64,0,33,224,192,0,99,224,192,0,195,193,128, + 0,195,193,128,1,131,195,0,1,129,230,0,3,0,252,0, + 24,25,75,28,2,0,0,124,0,1,255,0,3,199,0,7, + 135,128,7,131,128,7,131,128,7,199,128,7,199,0,7,239, + 0,7,252,0,3,248,0,7,241,255,15,249,255,61,248,124, + 120,252,56,120,254,112,248,126,96,248,63,224,252,63,192,252, + 31,193,254,15,227,255,15,243,127,255,254,63,243,254,15,128, + 252,4,11,11,8,2,14,96,240,240,240,240,240,240,96,96, + 96,96,9,27,54,13,2,253,3,128,7,0,14,0,28,0, + 28,0,56,0,56,0,120,0,120,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,112,0,120,0, + 56,0,56,0,28,0,28,0,14,0,7,0,3,128,9,27, + 54,13,1,253,224,0,48,0,56,0,28,0,28,0,14,0, + 14,0,15,0,7,0,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,15,0,15,0,14,0,14,0, + 28,0,28,0,56,0,112,0,192,0,12,15,30,17,2,10, + 6,0,14,0,14,0,230,112,230,112,246,240,63,192,15,0, + 127,224,246,240,230,112,230,112,7,0,7,0,6,0,16,16, + 32,20,2,1,3,192,3,192,3,192,3,192,3,192,3,192, + 255,255,255,255,255,255,255,255,3,192,3,192,3,192,3,192, + 3,192,3,192,6,11,11,9,2,251,120,248,252,252,252,124, + 28,24,48,112,224,8,4,4,11,1,6,255,255,255,255,6, + 6,6,9,1,0,120,252,252,252,252,120,10,25,50,9,255, + 0,0,192,1,192,1,192,1,128,3,128,3,128,3,0,7, + 0,7,0,6,0,14,0,14,0,12,0,28,0,28,0,24, + 0,56,0,56,0,48,0,112,0,112,0,96,0,224,0,224, + 0,192,0,16,24,48,19,1,0,3,192,15,240,30,120,60, + 60,124,62,120,30,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,248,31,120,30,120,30,124, + 62,60,60,30,120,15,240,3,192,13,24,48,19,3,0,1, + 128,7,128,255,128,255,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,255,248,255,248,17, + 24,72,19,1,0,15,240,0,63,252,0,120,126,0,240,63, + 0,248,31,0,252,31,0,252,31,0,252,31,0,124,63,0, + 56,62,0,0,124,0,0,248,0,0,240,0,1,224,0,3, + 192,0,3,129,128,7,1,128,14,1,128,28,3,128,63,255, + 128,127,255,0,127,255,0,255,255,0,255,255,0,16,24,48, + 19,1,0,15,224,63,248,120,124,248,62,252,62,252,62,252, + 62,120,62,0,124,0,112,7,224,7,192,0,248,0,126,0, + 62,0,63,120,31,252,31,252,31,252,63,248,62,120,126,63, + 248,7,224,17,24,72,19,0,0,0,4,0,0,12,0,0, + 28,0,0,60,0,0,124,0,0,252,0,1,252,0,1,252, + 0,3,124,0,6,124,0,12,124,0,28,124,0,56,124,0, + 112,124,0,224,124,0,192,124,0,255,255,128,255,255,128,0, + 124,0,0,124,0,0,124,0,0,124,0,3,255,128,3,255, + 128,16,24,48,19,1,0,31,255,63,254,63,254,63,252,63, + 240,48,0,48,0,48,0,48,0,55,224,63,248,56,124,48, + 62,32,62,0,31,0,31,56,31,124,31,252,31,252,62,120, + 62,112,252,63,240,15,192,17,24,72,19,1,0,3,240,0, + 15,252,0,31,30,0,62,62,0,60,62,0,124,62,0,120, + 28,0,248,0,0,248,0,0,248,0,0,249,248,0,255,254, + 0,255,127,0,252,31,0,248,31,128,248,15,128,248,15,128, + 248,15,128,248,15,128,124,31,0,124,31,0,62,62,0,31, + 252,0,7,240,0,16,24,48,19,2,0,255,255,255,254,255, + 254,255,252,255,252,192,24,192,24,192,56,128,112,0,112,0, + 240,0,224,1,224,1,224,3,224,3,192,7,192,7,192,15, + 192,15,192,15,192,15,192,15,192,7,128,17,24,72,19,1, + 0,7,240,0,15,252,0,60,62,0,56,31,0,120,15,0, + 120,15,0,120,15,0,124,15,0,126,30,0,127,252,0,63, + 240,0,31,252,0,15,254,0,63,255,0,120,127,0,248,31, + 128,240,15,128,240,15,128,240,15,0,240,15,0,248,30,0, + 124,60,0,63,240,0,7,192,0,17,24,72,19,1,0,3, + 192,0,31,248,0,62,124,0,124,62,0,252,31,0,248,31, + 0,248,15,128,248,15,128,248,15,128,252,31,128,252,63,128, + 127,111,128,63,207,128,31,143,128,0,15,128,0,15,128,112, + 15,0,248,31,0,252,31,0,248,30,0,248,62,0,112,252, + 0,63,240,0,15,192,0,6,16,16,9,2,0,120,252,252, + 252,252,120,0,0,0,0,120,252,252,252,252,120,6,21,21, + 9,2,251,120,252,252,252,252,120,0,0,0,0,120,248,252, + 252,252,124,28,24,48,112,224,16,18,36,20,2,0,0,3, + 0,15,0,127,1,255,7,252,31,240,127,128,254,0,248,0, + 252,0,255,128,63,224,15,248,3,254,0,127,0,31,0,7, + 0,1,16,10,20,20,2,3,255,255,255,255,255,255,255,255, + 0,0,0,0,255,255,255,255,255,255,255,255,16,18,36,20, + 2,0,192,0,240,0,254,0,255,128,63,224,15,248,1,254, + 0,127,0,31,0,63,1,255,7,252,31,240,127,192,254,0, + 248,0,224,0,128,0,14,25,50,16,1,0,15,192,63,240, + 113,248,240,248,248,252,248,252,248,252,112,252,0,248,1,248, + 1,240,3,224,3,128,7,0,7,0,6,0,6,0,0,0, + 0,0,15,0,31,128,31,128,31,128,31,128,15,0,23,25, + 75,25,0,0,0,127,0,1,255,192,7,227,240,15,0,120, + 30,0,28,28,0,12,56,60,6,48,255,230,113,227,230,113, + 227,198,99,195,198,227,131,198,231,135,134,231,135,140,231,7, + 140,231,15,28,231,15,24,227,31,112,115,247,224,48,227,204, + 56,0,28,28,0,120,15,1,240,7,255,224,1,255,0,25, + 25,100,25,0,0,0,28,0,0,0,28,0,0,0,30,0, + 0,0,62,0,0,0,63,0,0,0,127,0,0,0,127,128, + 0,0,127,128,0,0,255,128,0,0,207,192,0,1,207,192, + 0,1,143,192,0,1,135,224,0,3,135,224,0,3,7,240, + 0,7,3,240,0,7,255,240,0,7,255,248,0,14,1,248, + 0,12,1,252,0,28,0,252,0,28,0,254,0,62,0,254, + 0,255,131,255,128,255,131,255,128,23,25,75,25,1,0,255, + 255,128,255,255,224,31,131,240,31,129,248,31,129,248,31,128, + 252,31,128,252,31,128,252,31,128,248,31,129,248,31,129,240, + 31,135,224,31,255,0,31,255,192,31,131,240,31,128,252,31, + 128,252,31,128,254,31,128,126,31,128,254,31,128,252,31,128, + 252,31,131,248,255,255,240,255,255,192,22,25,75,24,1,0, + 0,126,24,3,255,184,7,193,248,31,128,248,31,0,120,62, + 0,56,126,0,56,126,0,24,254,0,24,252,0,8,252,0, + 0,252,0,0,252,0,0,252,0,0,252,0,0,254,0,0, + 254,0,12,254,0,28,126,0,24,126,0,56,63,0,48,31, + 128,112,15,193,224,7,255,192,0,255,0,24,25,75,26,1, + 0,255,255,0,255,255,224,31,131,240,31,129,248,31,128,252, + 31,128,126,31,128,126,31,128,127,31,128,63,31,128,63,31, + 128,63,31,128,63,31,128,63,31,128,63,31,128,63,31,128, + 63,31,128,127,31,128,126,31,128,126,31,128,126,31,128,252, + 31,129,248,31,131,240,255,255,224,255,255,0,21,25,75,23, + 1,0,255,255,248,255,255,248,31,129,248,31,128,248,31,128, + 120,31,128,56,31,128,56,31,134,24,31,134,24,31,142,0, + 31,142,0,31,158,0,31,254,0,31,254,0,31,158,0,31, + 142,0,31,134,24,31,134,24,31,134,24,31,128,56,31,128, + 56,31,128,120,31,129,248,255,255,248,255,255,248,21,25,75, + 23,1,0,255,255,248,255,255,248,31,193,248,31,128,248,31, + 128,120,31,128,56,31,128,24,31,131,24,31,131,24,31,135, + 8,31,135,0,31,159,0,31,255,0,31,255,0,31,143,0, + 31,135,0,31,131,0,31,131,0,31,131,0,31,128,0,31, + 128,0,31,128,0,31,128,0,255,248,0,255,248,0,25,25, + 100,26,1,0,0,126,12,0,3,255,220,0,7,193,252,0, + 15,128,124,0,31,0,60,0,63,0,28,0,126,0,28,0, + 126,0,12,0,254,0,12,0,254,0,4,0,254,0,0,0, + 252,0,0,0,252,0,0,0,252,0,0,0,252,7,255,128, + 252,7,255,128,252,0,124,0,254,0,124,0,126,0,124,0, + 126,0,124,0,63,0,252,0,31,0,252,0,15,129,220,0, + 7,255,28,0,0,252,12,0,26,25,100,28,1,0,255,243, + 255,192,255,243,255,192,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,255, + 254,0,31,255,254,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,255,243,255,192,255,243, + 255,192,12,25,50,14,1,0,255,240,255,240,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,255,240,255,240,20,25,75,20,0,0, + 0,255,240,0,255,240,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,24,31,128,126,31,128,126,31,128, + 254,31,128,254,31,128,254,31,128,252,31,0,96,63,0,96, + 62,0,56,254,0,63,248,0,15,224,0,25,25,100,27,1, + 0,255,243,255,128,255,243,255,128,31,128,126,0,31,128,120, + 0,31,128,240,0,31,129,224,0,31,129,192,0,31,131,128, + 0,31,135,0,0,31,143,0,0,31,159,0,0,31,191,128, + 0,31,255,192,0,31,239,192,0,31,239,224,0,31,199,224, + 0,31,135,240,0,31,131,248,0,31,129,248,0,31,129,252, + 0,31,128,252,0,31,128,254,0,31,128,255,0,255,243,255, + 128,255,243,255,128,21,25,75,23,1,0,255,240,0,255,240, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,24,31,128, + 24,31,128,24,31,128,56,31,128,56,31,128,120,31,129,248, + 255,255,248,255,255,248,31,25,100,32,0,0,127,224,7,254, + 127,240,15,254,15,240,15,240,15,240,15,240,13,248,27,240, + 13,248,27,240,13,248,27,240,12,252,59,240,12,252,51,240, + 12,252,51,240,12,124,115,240,12,126,99,240,12,126,99,240, + 12,62,227,240,12,63,195,240,12,63,195,240,12,31,195,240, + 12,31,131,240,12,31,131,240,12,15,131,240,12,15,3,240, + 12,15,3,240,30,15,3,240,255,198,31,254,255,198,31,254, + 27,25,100,27,0,0,255,128,127,224,255,192,127,224,63,224, + 15,0,15,224,6,0,15,240,6,0,15,248,6,0,15,252, + 6,0,13,254,6,0,12,254,6,0,12,255,6,0,12,127, + 134,0,12,63,198,0,12,31,230,0,12,15,230,0,12,15, + 246,0,12,7,254,0,12,3,254,0,12,1,254,0,12,0, + 254,0,12,0,126,0,12,0,126,0,12,0,62,0,30,0, + 30,0,255,192,14,0,255,192,6,0,24,25,75,26,1,0, + 0,126,0,3,255,192,15,193,240,31,128,248,63,0,252,62, + 0,124,126,0,126,126,0,126,252,0,63,252,0,63,252,0, + 63,252,0,63,252,0,63,252,0,63,252,0,63,252,0,63, + 252,0,63,126,0,126,126,0,126,62,0,124,63,0,252,31, + 128,248,15,193,240,3,255,192,0,126,0,22,25,75,24,1, + 0,255,255,128,255,255,224,31,131,240,31,129,248,31,128,252, + 31,128,252,31,128,252,31,128,252,31,128,252,31,128,252,31, + 129,248,31,131,240,31,255,224,31,255,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,255,240,0,255,240,0,25,31,124,26, + 1,250,0,126,0,0,3,255,192,0,15,193,240,0,31,128, + 248,0,63,0,252,0,62,0,124,0,126,0,126,0,126,0, + 126,0,252,0,63,0,252,0,63,0,252,0,63,0,252,0, + 63,0,252,0,63,0,252,0,63,0,252,0,63,0,252,60, + 63,0,252,254,63,0,127,135,126,0,127,131,254,0,63,3, + 252,0,63,3,252,0,31,131,248,0,15,195,240,0,3,255, + 224,0,0,127,224,0,0,3,225,128,0,3,225,128,0,1, + 243,128,0,1,255,0,0,0,254,0,0,0,60,0,25,25, + 100,27,1,0,255,255,128,0,255,255,240,0,31,131,248,0, + 31,129,248,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,129,248,0,31,129,240,0, + 31,135,192,0,31,255,0,0,31,255,192,0,31,135,224,0, + 31,131,224,0,31,131,240,0,31,131,240,0,31,131,240,0, + 31,131,249,128,31,129,249,128,31,129,251,0,31,129,255,0, + 255,240,254,0,255,240,124,0,19,25,75,21,1,0,3,240, + 192,31,253,192,60,31,192,120,7,192,112,3,192,240,1,192, + 240,0,192,248,0,192,255,0,192,255,240,0,127,254,0,127, + 255,0,63,255,128,15,255,192,7,255,224,64,127,224,96,7, + 224,96,3,224,112,1,224,120,1,224,120,1,192,126,3,192, + 127,7,128,103,255,0,97,252,0,21,25,75,23,1,0,255, + 255,248,255,255,248,241,248,120,225,248,56,225,248,56,193,248, + 24,193,248,24,193,248,24,129,248,8,129,248,8,1,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1, + 248,0,1,248,0,1,248,0,1,248,0,1,248,0,1,248, + 0,1,248,0,15,255,128,15,255,128,26,25,100,28,1,0, + 255,240,255,192,255,240,255,192,31,128,30,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,28,0, + 15,192,24,0,15,224,56,0,7,248,240,0,3,255,224,0, + 0,255,192,0,25,25,100,25,0,0,255,224,255,128,255,224, + 255,128,63,128,62,0,31,128,28,0,31,128,28,0,31,192, + 24,0,15,192,56,0,15,192,48,0,7,224,112,0,7,224, + 112,0,7,240,96,0,3,240,224,0,3,240,192,0,1,248, + 192,0,1,249,192,0,1,249,128,0,0,255,128,0,0,255, + 0,0,0,255,0,0,0,127,0,0,0,126,0,0,0,62, + 0,0,0,62,0,0,0,60,0,0,0,28,0,0,32,25, + 100,32,0,0,255,223,249,255,255,223,249,255,63,7,224,124, + 63,7,224,56,31,131,224,48,31,131,240,112,31,131,240,112, + 15,193,240,96,15,195,248,96,15,195,248,224,7,195,248,192, + 7,231,248,192,7,230,252,192,7,230,253,128,3,254,125,128, + 3,252,127,128,3,252,127,128,1,252,63,0,1,248,63,0, + 1,248,63,0,0,248,62,0,0,248,30,0,0,240,30,0, + 0,112,28,0,0,112,12,0,24,25,75,24,0,0,255,227, + 255,255,227,255,63,128,252,31,192,120,31,192,112,15,224,224, + 7,224,192,7,241,192,3,255,128,3,255,0,1,255,0,0, + 254,0,0,254,0,0,127,0,0,127,128,0,255,128,1,223, + 192,3,143,224,3,143,224,7,7,240,14,3,240,30,3,248, + 63,3,252,255,239,255,255,239,255,24,25,75,24,0,0,255, + 241,255,255,241,255,63,128,124,31,192,56,31,192,112,15,224, + 112,15,224,224,7,240,192,3,241,192,3,249,128,1,251,128, + 1,255,0,0,255,0,0,126,0,0,126,0,0,126,0,0, + 126,0,0,126,0,0,126,0,0,126,0,0,126,0,0,126, + 0,0,126,0,3,255,192,3,255,192,19,25,75,21,1,0, + 127,255,224,127,255,224,126,15,224,120,15,224,112,31,192,112, + 31,128,96,63,128,96,127,0,64,126,0,0,254,0,1,252, + 0,1,252,0,3,248,0,3,240,0,7,240,0,15,224,32, + 15,224,96,31,192,96,31,128,96,63,128,224,127,0,224,127, + 1,224,254,7,224,255,255,224,255,255,224,8,29,29,13,3, + 252,255,255,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,255,255,16,25, + 50,20,2,0,240,0,248,0,120,0,124,0,60,0,62,0, + 30,0,31,0,15,0,15,128,7,128,7,192,3,192,3,224, + 1,224,1,240,0,240,0,248,0,120,0,124,0,60,0,62, + 0,30,0,30,0,15,8,29,29,13,1,252,255,255,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,255,255,16,14,28,20,2,11,3, + 192,7,224,7,224,15,240,15,240,15,240,30,120,30,120,60, + 60,60,60,124,62,120,30,248,31,240,15,16,3,6,16,0, + 251,255,255,255,255,255,255,7,6,6,11,2,17,96,240,248, + 124,30,6,18,16,48,20,1,0,15,240,0,63,252,0,120, + 126,0,124,62,0,124,62,0,56,62,0,0,62,0,3,254, + 0,31,190,0,126,62,0,124,62,0,252,62,0,252,62,0, + 252,127,64,127,255,192,63,143,128,19,25,75,21,0,0,255, + 0,0,255,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,63,0,31,255,128, + 31,207,192,31,135,192,31,3,224,31,3,224,31,3,224,31, + 3,224,31,3,224,31,3,224,31,3,224,31,3,192,31,7, + 192,31,143,128,29,255,0,24,124,0,15,16,32,17,1,0, + 3,240,15,252,62,62,124,62,124,62,248,28,248,0,248,0, + 248,0,248,0,252,2,252,6,126,6,63,28,31,248,7,224, + 20,25,75,22,1,0,0,127,128,0,127,128,0,31,128,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,15,207,128,31,239,128,62,63,128,124,31,128,120,31,128, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,31,128,124,31,128,124,127,128,63,239,240,15,143, + 240,16,16,32,18,1,0,3,224,15,248,60,60,120,30,120, + 30,248,31,248,31,255,255,255,255,248,0,248,0,252,3,124, + 6,63,14,31,252,7,240,15,25,50,13,0,0,0,240,3, + 252,7,158,15,62,15,62,31,28,31,0,31,0,31,0,255, + 240,255,240,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,255,224,255,224,20, + 25,75,20,1,249,0,1,224,0,3,240,7,255,240,31,124, + 224,62,62,0,124,31,0,124,31,0,124,31,0,124,31,0, + 124,31,0,62,62,0,31,126,0,31,248,0,124,0,0,248, + 0,0,255,252,0,255,255,0,63,255,0,31,255,128,127,255, + 128,240,7,128,240,7,128,248,15,0,127,254,0,15,240,0, + 20,25,75,22,1,0,254,0,0,254,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,62,0,62,255,128,63,255,128,63,143,192,63,7,192, + 63,7,192,62,7,192,62,7,192,62,7,192,62,7,192,62, + 7,192,62,7,192,62,7,192,62,7,192,255,159,240,255,159, + 240,9,25,50,12,2,0,28,0,62,0,62,0,62,0,28, + 0,0,0,0,0,0,0,0,0,254,0,254,0,62,0,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,255,128,255,128,12,32,64,12,253,249,0, + 224,1,240,1,240,1,240,0,224,0,0,0,0,0,0,0, + 0,7,240,7,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,113,240,249,224,249,224,251,192,127,128,30,0,20, + 25,75,22,1,0,254,0,0,254,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,63,224,62,63,224,62,15,0,62,14,0,62,60,0,62, + 112,0,62,248,0,63,252,0,63,254,0,63,126,0,62,63, + 0,62,31,128,62,31,192,62,15,224,255,191,240,255,191,240, + 10,25,50,12,1,0,254,0,254,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,255,192,255,192,29,16,64,31,1,0,254,126, + 31,0,254,255,63,192,63,255,255,192,63,159,231,224,63,15, + 195,224,62,15,131,224,62,15,131,224,62,15,131,224,62,15, + 131,224,62,15,131,224,62,15,131,224,62,15,131,224,62,15, + 131,224,62,15,131,224,255,191,239,248,255,191,239,248,20,16, + 48,22,1,0,254,62,0,254,255,128,63,255,128,63,143,192, + 63,7,192,62,7,192,62,7,192,62,7,192,62,7,192,62, + 7,192,62,7,192,62,7,192,62,7,192,62,7,192,255,159, + 240,255,159,240,17,16,48,19,1,0,3,224,0,15,248,0, + 62,62,0,124,31,0,124,31,0,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,124,31,0,124,31, + 0,62,62,0,15,248,0,3,224,0,19,23,69,21,1,249, + 254,126,0,254,255,128,63,143,192,63,7,192,63,7,224,62, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,63,7,192,63,7,192,63,143,128,63,255,0,62,126,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,0,0,255, + 128,0,255,128,0,20,23,69,20,1,249,7,225,128,31,249, + 128,62,31,128,124,31,128,124,15,128,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,124,31,128,124, + 31,128,62,63,128,31,239,128,7,207,128,0,15,128,0,15, + 128,0,15,128,0,15,128,0,15,128,0,127,240,0,127,240, + 15,16,32,16,1,0,252,124,252,254,61,254,61,190,63,62, + 62,28,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,255,192,255,192,14,16,32,16,1,0,15,216,60,248, + 112,56,240,24,254,8,255,192,255,240,127,248,63,248,15,252, + 192,252,192,60,224,56,248,120,255,240,207,192,12,23,46,14, + 1,0,6,0,6,0,14,0,14,0,14,0,30,0,62,0, + 255,224,255,224,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,48,62,48,62,48,62,96,63,224,31,192,15,128, + 20,16,48,22,1,0,254,31,192,254,31,192,62,7,192,62, + 7,192,62,7,192,62,7,192,62,7,192,62,7,192,62,7, + 192,62,7,192,62,15,192,62,15,192,63,31,192,31,255,192, + 31,247,240,7,199,240,19,16,48,19,0,0,255,143,224,255, + 143,224,63,3,192,63,3,128,31,3,0,31,135,0,15,134, + 0,15,198,0,7,204,0,7,236,0,3,248,0,3,248,0, + 1,248,0,1,240,0,0,240,0,0,224,0,27,16,64,29, + 1,0,255,191,239,224,255,191,239,224,126,31,131,192,62,15, + 131,128,63,15,131,0,31,15,195,0,31,143,198,0,15,159, + 230,0,15,155,230,0,15,251,236,0,7,241,252,0,7,241, + 248,0,3,225,248,0,3,224,240,0,1,192,240,0,1,192, + 96,0,19,16,48,19,0,0,255,223,224,255,223,224,63,7, + 0,31,142,0,31,220,0,15,248,0,7,240,0,3,240,0, + 1,248,0,3,252,0,7,254,0,14,126,0,28,63,0,60, + 63,128,255,127,224,255,127,224,19,23,69,19,0,249,255,143, + 224,255,143,224,63,3,128,63,3,128,31,3,0,31,135,0, + 15,134,0,15,198,0,7,204,0,7,236,0,3,248,0,3, + 248,0,1,248,0,1,240,0,0,240,0,0,224,0,0,96, + 0,112,192,0,248,192,0,249,128,0,255,0,0,127,0,0, + 60,0,0,14,16,32,16,1,0,127,252,127,252,112,252,97, + 248,97,248,67,240,7,224,7,224,15,192,31,128,31,12,63, + 12,126,28,124,28,255,252,255,252,8,30,30,13,3,252,3, + 14,28,60,60,60,60,60,60,60,60,60,60,56,240,248,60, + 60,60,60,60,60,60,60,60,60,60,28,14,3,4,25,25, + 20,8,0,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,8,28,28,13, + 1,253,224,120,60,60,60,60,60,60,60,60,60,60,28,15, + 31,60,60,60,60,60,60,60,60,60,60,60,120,224,16,6, + 12,20,2,6,14,4,63,142,127,255,255,254,113,252,32,112, + 255}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--11-80-100-100-P-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=11 h=11 x= 2 y= 6 dx=12 dy= 0 ascent=11 len=16 + Font Bounding box w=14 h=18 x=-2 y=-4 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR08[2642] U8G_SECTION(".progmem.u8g_font_ncenR08") = { + 0,14,18,254,252,8,1,180,3,120,32,255,254,11,254,8, + 254,0,0,0,3,0,1,1,8,8,4,1,0,128,128,128, + 128,128,0,128,128,3,3,3,6,1,5,160,160,160,7,8, + 8,8,0,0,20,20,126,40,40,252,80,80,4,10,10,5, + 0,255,32,112,160,160,96,80,80,80,224,64,8,8,8,9, + 0,0,100,148,152,104,22,25,41,38,9,8,16,10,0,0, + 48,0,72,0,80,0,38,0,84,0,136,0,140,128,115,0, + 1,3,3,4,1,5,128,128,128,3,9,9,4,0,255,32, + 64,64,128,128,128,64,64,32,3,9,9,4,0,255,128,64, + 64,32,32,32,64,64,128,5,5,5,6,0,3,32,168,112, + 168,32,5,5,5,6,0,0,32,32,248,32,32,2,3,3, + 3,0,254,64,64,128,3,1,1,4,0,2,224,1,2,2, + 4,1,0,128,128,3,9,9,4,0,255,32,32,32,64,64, + 64,128,128,128,4,8,8,5,0,0,96,144,144,144,144,144, + 144,96,3,8,8,5,1,0,64,192,64,64,64,64,64,224, + 4,8,8,5,0,0,96,144,144,16,32,64,144,240,4,8, + 8,5,0,0,96,144,16,96,16,144,144,96,5,8,8,5, + 0,0,16,48,80,80,144,248,16,56,4,8,8,5,0,0, + 240,128,128,224,16,16,144,96,4,8,8,5,0,0,112,144, + 128,224,144,144,144,96,4,8,8,5,0,0,240,144,32,32, + 32,64,64,64,4,8,8,5,0,0,96,144,144,96,144,144, + 144,96,4,8,8,5,0,0,96,144,144,144,112,16,144,224, + 1,5,5,4,1,0,128,128,0,128,128,2,6,6,4,0, + 255,64,64,0,64,64,128,6,5,5,7,0,0,12,48,192, + 48,12,5,3,3,6,0,1,248,0,248,6,5,5,7,0, + 0,192,48,12,48,192,4,8,8,5,0,0,96,144,16,32, + 64,0,64,64,8,10,10,9,0,255,60,66,129,157,165,173, + 182,128,64,60,7,8,8,8,0,0,16,16,40,40,68,124, + 68,238,6,8,8,7,0,0,248,68,68,120,68,68,68,248, + 6,8,8,7,0,0,60,68,128,128,128,128,68,56,7,8, + 8,8,0,0,248,68,66,66,66,66,68,248,6,8,8,7, + 0,0,252,68,84,112,80,68,68,252,6,8,8,7,0,0, + 252,68,84,112,80,64,64,224,7,8,8,8,0,0,60,68, + 128,128,142,132,68,56,8,8,8,9,0,0,231,66,66,126, + 66,66,66,231,3,8,8,4,0,0,224,64,64,64,64,64, + 64,224,4,8,8,5,0,0,112,32,32,32,32,160,160,192, + 7,8,8,8,0,0,230,68,72,80,112,72,68,238,6,8, + 8,7,0,0,224,64,64,64,64,68,68,252,9,8,16,10, + 0,0,193,128,99,0,99,0,85,0,85,0,85,0,73,0, + 235,128,8,8,8,9,0,0,231,98,82,82,74,74,70,230, + 7,8,8,8,0,0,56,68,130,130,130,130,68,56,6,8, + 8,7,0,0,248,68,68,68,120,64,64,224,7,9,9,8, + 0,255,56,68,130,130,130,178,76,56,6,7,8,8,8,0, + 0,248,68,68,72,120,68,68,198,5,8,8,6,0,0,120, + 136,128,224,24,8,136,240,7,8,8,8,0,0,254,146,146, + 16,16,16,16,56,7,8,8,8,0,0,238,68,68,68,68, + 68,68,56,7,8,8,8,0,0,238,68,68,68,40,40,16, + 16,11,8,16,12,0,0,238,224,68,64,68,64,42,128,42, + 128,42,128,17,0,17,0,6,8,8,7,0,0,204,72,72, + 48,48,72,72,204,7,8,8,8,0,0,198,68,40,40,16, + 16,16,56,5,8,8,6,0,0,248,136,144,32,32,72,136, + 248,2,9,9,3,0,255,192,128,128,128,128,128,128,128,192, + 4,8,8,5,0,0,128,128,64,64,32,32,16,16,2,9, + 9,3,0,255,192,64,64,64,64,64,64,64,192,5,6,6, + 6,0,2,32,32,80,80,136,136,6,1,1,6,0,254,252, + 2,2,2,3,0,6,128,64,5,5,5,6,0,0,96,144, + 112,144,248,5,8,8,5,255,0,192,64,64,112,72,72,72, + 112,4,5,5,5,0,0,112,144,128,144,96,5,8,8,6, + 0,0,48,16,16,112,144,144,144,120,4,5,5,5,0,0, + 96,144,240,128,112,4,8,8,4,0,0,48,80,64,224,64, + 64,64,224,5,7,7,6,0,254,120,144,160,64,120,136,112, + 6,8,8,6,255,0,192,64,64,112,72,72,72,236,3,7, + 7,4,0,0,64,0,192,64,64,64,224,2,9,9,4,0, + 254,64,0,192,64,64,64,64,64,128,6,8,8,7,0,0, + 192,64,64,88,80,112,72,236,3,8,8,4,0,0,192,64, + 64,64,64,64,64,224,9,5,10,10,0,0,182,0,73,0, + 73,0,73,0,237,128,6,5,5,7,0,0,176,72,72,72, + 236,4,5,5,5,0,0,96,144,144,144,96,4,7,7,5, + 0,254,96,144,144,144,224,128,192,5,7,7,6,0,254,104, + 144,144,144,112,16,56,4,5,5,5,0,0,208,96,64,64, + 224,4,5,5,5,0,0,112,128,96,16,224,3,7,7,3, + 0,0,128,128,192,128,128,128,96,5,5,5,6,0,0,144, + 144,144,144,104,6,5,5,6,0,0,220,136,80,80,32,8, + 5,5,8,0,0,147,170,170,68,68,5,5,5,6,0,0, + 216,80,32,80,216,6,7,7,6,0,254,220,136,80,80,32, + 32,192,4,5,5,5,0,0,240,32,64,128,240,3,9,9, + 4,0,255,32,64,64,64,128,64,64,64,32,1,8,8,6, + 2,0,128,128,128,128,128,128,128,128,3,9,9,4,0,255, + 128,64,64,64,32,64,64,64,128,6,2,2,7,0,2,100, + 152,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,0,0,0,3,0,1,1,8,8,4,1,254,128,128, + 0,128,128,128,128,128,5,7,7,6,0,255,16,120,168,160, + 200,112,64,6,8,8,7,0,0,56,72,64,248,32,32,68, + 248,6,6,6,7,0,1,132,120,72,72,120,132,7,8,8, + 8,0,0,198,68,40,108,16,124,16,56,1,8,8,6,2, + 0,128,128,128,0,0,128,128,128,4,10,10,5,0,254,112, + 144,128,96,144,144,96,16,144,224,3,1,1,4,0,6,160, + 9,8,16,10,0,0,62,0,65,0,156,128,164,128,160,128, + 156,128,65,0,62,0,4,6,6,5,0,2,224,32,96,176, + 0,240,5,3,3,6,0,1,72,144,72,5,3,3,6,0, + 1,248,8,8,3,1,1,4,0,2,224,9,8,16,10,0, + 0,62,0,65,0,188,128,148,128,152,128,182,128,65,0,62, + 0,4,1,1,5,0,6,240,3,4,4,4,0,4,64,160, + 160,64,5,5,5,6,0,0,32,248,32,0,248,3,4,4, + 3,0,4,96,160,64,224,3,4,4,3,0,4,224,64,32, + 192,2,2,2,3,0,6,64,128,5,7,7,6,0,254,144, + 144,144,144,232,128,128,6,10,10,7,0,254,124,168,168,168, + 104,40,40,40,40,124,1,2,2,4,1,2,128,128,2,3, + 3,3,0,254,128,64,192,3,4,4,3,0,4,64,192,64, + 224,4,6,6,5,0,2,96,144,144,96,0,240,5,3,3, + 6,0,1,144,72,144,7,8,8,7,0,0,72,200,80,240, + 36,44,94,68,6,8,8,7,0,0,72,200,80,240,44,52, + 72,92,7,8,8,7,0,0,232,72,48,208,36,44,94,68, + 4,8,8,5,0,254,32,32,0,32,64,128,144,96,7,11, + 11,8,0,0,32,16,0,16,16,40,40,68,124,68,238,7, + 11,11,8,0,0,8,16,0,16,16,40,40,68,124,68,238, + 7,11,11,8,0,0,16,40,0,16,16,40,40,68,124,68, + 238,7,11,11,8,0,0,20,40,0,16,16,40,40,68,124, + 68,238,7,10,10,8,0,0,40,0,16,16,40,40,68,124, + 68,238,7,11,11,8,0,0,16,40,16,16,16,40,40,68, + 124,68,238,10,8,16,11,0,0,31,192,12,64,21,64,23, + 0,61,0,36,64,68,64,231,192,6,10,10,7,0,254,60, + 68,128,128,128,128,68,56,16,48,6,11,11,7,0,0,32, + 16,0,252,68,84,112,80,68,68,252,6,11,11,7,0,0, + 8,16,0,252,68,84,112,80,68,68,252,6,11,11,7,0, + 0,16,40,0,252,68,84,112,80,68,68,252,6,10,10,7, + 0,0,40,0,252,68,84,112,80,68,68,252,3,11,11,4, + 0,0,128,64,0,224,64,64,64,64,64,64,224,3,11,11, + 4,0,0,32,64,0,224,64,64,64,64,64,64,224,3,11, + 11,4,0,0,64,160,0,224,64,64,64,64,64,64,224,3, + 10,10,4,0,0,160,0,224,64,64,64,64,64,64,224,7, + 8,8,8,0,0,248,68,66,226,66,66,68,248,8,11,11, + 9,0,0,20,40,0,231,98,82,82,74,74,70,230,7,11, + 11,8,0,0,32,16,0,56,68,130,130,130,130,68,56,7, + 11,11,8,0,0,8,16,0,56,68,130,130,130,130,68,56, + 7,11,11,8,0,0,16,40,0,56,68,130,130,130,130,68, + 56,7,11,11,8,0,0,20,40,0,56,68,130,130,130,130, + 68,56,7,10,10,8,0,0,40,0,56,68,130,130,130,130, + 68,56,5,5,5,6,0,0,136,80,32,80,136,8,8,8, + 8,255,0,29,34,69,73,81,97,98,156,7,11,11,8,0, + 0,32,16,0,238,68,68,68,68,68,68,56,7,11,11,8, + 0,0,8,16,0,238,68,68,68,68,68,68,56,7,11,11, + 8,0,0,16,40,0,238,68,68,68,68,68,68,56,7,10, + 10,8,0,0,40,0,238,68,68,68,68,68,68,56,7,11, + 11,8,0,0,8,16,0,198,68,40,40,16,16,16,56,6, + 8,8,7,0,0,192,120,68,68,68,120,64,224,6,8,8, + 7,0,0,48,72,72,88,68,68,84,216,5,8,8,6,0, + 0,64,32,0,96,144,112,144,248,5,8,8,6,0,0,32, + 64,0,96,144,112,144,248,5,8,8,6,0,0,32,80,0, + 96,144,112,144,248,5,8,8,6,0,0,80,160,0,96,144, + 112,144,248,5,7,7,6,0,0,80,0,96,144,112,144,248, + 5,8,8,6,0,0,32,80,32,96,144,112,144,248,7,5, + 5,8,0,0,108,146,126,144,238,4,7,7,5,0,254,112, + 144,128,144,96,32,96,4,8,8,5,0,0,64,32,0,96, + 144,240,128,112,4,8,8,5,0,0,32,64,0,96,144,240, + 128,112,4,8,8,5,0,0,32,80,0,96,144,240,128,112, + 4,7,7,5,0,0,80,0,96,144,240,128,112,3,8,8, + 4,0,0,128,64,0,192,64,64,64,224,3,8,8,4,0, + 0,32,64,0,192,64,64,64,224,3,8,8,4,0,0,64, + 160,0,192,64,64,64,224,3,7,7,4,0,0,160,0,192, + 64,64,64,224,4,8,8,5,0,0,80,96,160,96,144,144, + 144,96,6,8,8,7,0,0,40,80,0,176,72,72,72,236, + 4,8,8,5,0,0,64,32,0,96,144,144,144,96,4,8, + 8,5,0,0,32,64,0,96,144,144,144,96,4,8,8,5, + 0,0,32,80,0,96,144,144,144,96,4,8,8,5,0,0, + 80,160,0,96,144,144,144,96,4,7,7,5,0,0,80,0, + 96,144,144,144,96,5,5,5,6,0,0,32,0,248,0,32, + 5,6,6,5,0,255,104,144,176,208,96,128,5,8,8,6, + 0,0,64,32,0,144,144,144,144,104,5,8,8,6,0,0, + 32,64,0,144,144,144,144,104,5,8,8,6,0,0,32,80, + 0,144,144,144,144,104,5,7,7,6,0,0,80,0,144,144, + 144,144,104,6,10,10,6,0,254,16,32,0,220,136,80,80, + 32,32,192,5,10,10,5,255,254,192,64,64,112,72,72,72, + 112,64,224,6,9,9,6,0,254,80,0,220,136,80,80,32, + 32,192}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--11-80-100-100-P-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=11 h=10 x= 2 y= 6 dx=12 dy= 0 ascent= 9 len=16 + Font Bounding box w=14 h=18 x=-2 y=-4 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR08r[1266] U8G_SECTION(".progmem.u8g_font_ncenR08r") = { + 0,14,18,254,252,8,1,180,3,120,32,127,254,9,254,8, + 254,0,0,0,3,0,1,1,8,8,4,1,0,128,128,128, + 128,128,0,128,128,3,3,3,6,1,5,160,160,160,7,8, + 8,8,0,0,20,20,126,40,40,252,80,80,4,10,10,5, + 0,255,32,112,160,160,96,80,80,80,224,64,8,8,8,9, + 0,0,100,148,152,104,22,25,41,38,9,8,16,10,0,0, + 48,0,72,0,80,0,38,0,84,0,136,0,140,128,115,0, + 1,3,3,4,1,5,128,128,128,3,9,9,4,0,255,32, + 64,64,128,128,128,64,64,32,3,9,9,4,0,255,128,64, + 64,32,32,32,64,64,128,5,5,5,6,0,3,32,168,112, + 168,32,5,5,5,6,0,0,32,32,248,32,32,2,3,3, + 3,0,254,64,64,128,3,1,1,4,0,2,224,1,2,2, + 4,1,0,128,128,3,9,9,4,0,255,32,32,32,64,64, + 64,128,128,128,4,8,8,5,0,0,96,144,144,144,144,144, + 144,96,3,8,8,5,1,0,64,192,64,64,64,64,64,224, + 4,8,8,5,0,0,96,144,144,16,32,64,144,240,4,8, + 8,5,0,0,96,144,16,96,16,144,144,96,5,8,8,5, + 0,0,16,48,80,80,144,248,16,56,4,8,8,5,0,0, + 240,128,128,224,16,16,144,96,4,8,8,5,0,0,112,144, + 128,224,144,144,144,96,4,8,8,5,0,0,240,144,32,32, + 32,64,64,64,4,8,8,5,0,0,96,144,144,96,144,144, + 144,96,4,8,8,5,0,0,96,144,144,144,112,16,144,224, + 1,5,5,4,1,0,128,128,0,128,128,2,6,6,4,0, + 255,64,64,0,64,64,128,6,5,5,7,0,0,12,48,192, + 48,12,5,3,3,6,0,1,248,0,248,6,5,5,7,0, + 0,192,48,12,48,192,4,8,8,5,0,0,96,144,16,32, + 64,0,64,64,8,10,10,9,0,255,60,66,129,157,165,173, + 182,128,64,60,7,8,8,8,0,0,16,16,40,40,68,124, + 68,238,6,8,8,7,0,0,248,68,68,120,68,68,68,248, + 6,8,8,7,0,0,60,68,128,128,128,128,68,56,7,8, + 8,8,0,0,248,68,66,66,66,66,68,248,6,8,8,7, + 0,0,252,68,84,112,80,68,68,252,6,8,8,7,0,0, + 252,68,84,112,80,64,64,224,7,8,8,8,0,0,60,68, + 128,128,142,132,68,56,8,8,8,9,0,0,231,66,66,126, + 66,66,66,231,3,8,8,4,0,0,224,64,64,64,64,64, + 64,224,4,8,8,5,0,0,112,32,32,32,32,160,160,192, + 7,8,8,8,0,0,230,68,72,80,112,72,68,238,6,8, + 8,7,0,0,224,64,64,64,64,68,68,252,9,8,16,10, + 0,0,193,128,99,0,99,0,85,0,85,0,85,0,73,0, + 235,128,8,8,8,9,0,0,231,98,82,82,74,74,70,230, + 7,8,8,8,0,0,56,68,130,130,130,130,68,56,6,8, + 8,7,0,0,248,68,68,68,120,64,64,224,7,9,9,8, + 0,255,56,68,130,130,130,178,76,56,6,7,8,8,8,0, + 0,248,68,68,72,120,68,68,198,5,8,8,6,0,0,120, + 136,128,224,24,8,136,240,7,8,8,8,0,0,254,146,146, + 16,16,16,16,56,7,8,8,8,0,0,238,68,68,68,68, + 68,68,56,7,8,8,8,0,0,238,68,68,68,40,40,16, + 16,11,8,16,12,0,0,238,224,68,64,68,64,42,128,42, + 128,42,128,17,0,17,0,6,8,8,7,0,0,204,72,72, + 48,48,72,72,204,7,8,8,8,0,0,198,68,40,40,16, + 16,16,56,5,8,8,6,0,0,248,136,144,32,32,72,136, + 248,2,9,9,3,0,255,192,128,128,128,128,128,128,128,192, + 4,8,8,5,0,0,128,128,64,64,32,32,16,16,2,9, + 9,3,0,255,192,64,64,64,64,64,64,64,192,5,6,6, + 6,0,2,32,32,80,80,136,136,6,1,1,6,0,254,252, + 2,2,2,3,0,6,128,64,5,5,5,6,0,0,96,144, + 112,144,248,5,8,8,5,255,0,192,64,64,112,72,72,72, + 112,4,5,5,5,0,0,112,144,128,144,96,5,8,8,6, + 0,0,48,16,16,112,144,144,144,120,4,5,5,5,0,0, + 96,144,240,128,112,4,8,8,4,0,0,48,80,64,224,64, + 64,64,224,5,7,7,6,0,254,120,144,160,64,120,136,112, + 6,8,8,6,255,0,192,64,64,112,72,72,72,236,3,7, + 7,4,0,0,64,0,192,64,64,64,224,2,9,9,4,0, + 254,64,0,192,64,64,64,64,64,128,6,8,8,7,0,0, + 192,64,64,88,80,112,72,236,3,8,8,4,0,0,192,64, + 64,64,64,64,64,224,9,5,10,10,0,0,182,0,73,0, + 73,0,73,0,237,128,6,5,5,7,0,0,176,72,72,72, + 236,4,5,5,5,0,0,96,144,144,144,96,4,7,7,5, + 0,254,96,144,144,144,224,128,192,5,7,7,6,0,254,104, + 144,144,144,112,16,56,4,5,5,5,0,0,208,96,64,64, + 224,4,5,5,5,0,0,112,128,96,16,224,3,7,7,3, + 0,0,128,128,192,128,128,128,96,5,5,5,6,0,0,144, + 144,144,144,104,6,5,5,6,0,0,220,136,80,80,32,8, + 5,5,8,0,0,147,170,170,68,68,5,5,5,6,0,0, + 216,80,32,80,216,6,7,7,6,0,254,220,136,80,80,32, + 32,192,4,5,5,5,0,0,240,32,64,128,240,3,9,9, + 4,0,255,32,64,64,64,128,64,64,64,32,1,8,8,6, + 2,0,128,128,128,128,128,128,128,128,3,9,9,4,0,255, + 128,64,64,64,32,64,64,64,128,6,2,2,7,0,2,100, + 152,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--14-100-100-100-P-82-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=17 h=14 x= 4 y= 8 dx=16 dy= 0 ascent=14 len=33 + Font Bounding box w=18 h=24 x=-2 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR10[3813] U8G_SECTION(".progmem.u8g_font_ncenR10") = { + 0,18,24,254,250,11,2,24,5,38,32,255,253,14,253,11, + 253,0,0,0,4,0,1,1,11,11,3,1,0,128,128,128, + 128,128,128,128,128,0,128,128,3,4,4,5,1,7,160,160, + 160,160,8,11,11,8,0,0,18,18,18,127,36,36,36,254, + 72,72,72,6,14,14,8,1,254,32,120,164,172,160,224,120, + 28,20,212,148,120,16,16,11,11,22,12,0,0,51,0,77, + 0,138,0,138,0,148,0,100,192,9,32,10,32,18,32,18, + 64,33,128,11,11,22,13,1,0,28,0,50,0,34,0,52, + 0,24,0,57,224,76,128,135,0,131,32,197,192,120,192,1, + 4,4,3,1,7,128,128,128,128,4,13,13,5,0,254,16, + 32,64,64,128,128,128,128,128,64,64,32,16,4,13,13,6, + 1,254,128,64,32,32,16,16,16,16,16,32,32,64,128,5, + 5,5,7,1,6,32,168,112,168,32,7,7,7,9,1,0, + 16,16,16,254,16,16,16,2,4,4,4,0,254,192,64,64, + 128,4,1,1,5,0,3,240,1,2,2,4,1,0,128,128, + 4,11,11,4,0,0,16,16,16,32,32,32,64,64,64,128, + 128,6,11,11,8,1,0,120,204,132,132,132,132,132,132,132, + 204,120,5,11,11,8,1,0,32,224,32,32,32,32,32,32, + 32,32,248,6,11,11,8,1,0,120,140,196,4,4,8,16, + 32,68,132,252,6,11,11,8,1,0,120,140,196,4,8,56, + 12,4,196,140,120,7,11,11,8,0,0,12,28,20,36,68, + 68,132,254,4,4,14,6,11,11,8,1,0,252,128,128,184, + 204,132,4,4,196,140,120,6,11,11,8,1,0,56,68,140, + 128,184,204,132,132,132,204,120,6,11,11,8,1,0,252,132, + 136,8,16,16,16,32,32,32,32,6,11,11,8,1,0,120, + 204,132,196,104,120,140,132,132,204,120,6,11,11,8,1,0, + 120,204,132,132,132,204,116,4,196,136,112,1,7,7,4,1, + 0,128,128,0,0,0,128,128,2,9,9,4,0,254,64,64, + 0,0,0,192,64,64,128,8,7,7,10,1,0,3,12,48, + 192,48,12,3,7,4,4,9,1,2,254,0,0,254,8,7, + 7,10,1,0,192,48,12,3,12,48,192,5,11,11,6,0, + 0,112,152,136,8,16,32,32,32,0,32,32,12,11,22,13, + 0,0,31,224,32,16,70,144,137,144,144,144,145,16,145,16, + 147,48,141,192,64,16,63,224,11,11,22,10,255,0,4,0, + 4,0,10,0,10,0,10,0,17,0,17,0,63,128,32,128, + 32,128,251,224,9,11,22,10,0,0,254,0,35,0,33,0, + 33,0,34,0,63,0,33,128,32,128,32,128,33,128,255,0, + 9,11,22,11,1,0,30,128,97,128,64,128,192,128,128,0, + 128,0,128,0,192,128,64,128,97,0,30,0,10,11,22,11, + 0,0,255,0,32,128,32,192,32,64,32,64,32,64,32,64, + 32,64,32,192,32,128,255,0,9,11,22,10,0,0,255,128, + 32,128,32,128,36,0,36,0,60,0,36,0,36,0,32,128, + 32,128,255,128,9,11,22,10,0,0,255,128,32,128,32,128, + 36,0,36,0,60,0,36,0,36,0,32,0,32,0,248,0, + 10,11,22,11,0,0,30,128,97,128,64,128,192,128,128,0, + 128,0,135,192,192,128,64,128,97,128,30,128,11,11,22,12, + 0,0,251,224,32,128,32,128,32,128,32,128,63,128,32,128, + 32,128,32,128,32,128,251,224,5,11,11,6,0,0,248,32, + 32,32,32,32,32,32,32,32,248,7,11,11,7,0,0,62, + 8,8,8,8,8,8,200,136,136,112,11,11,22,11,0,0, + 251,192,33,0,34,0,36,0,40,0,56,0,52,0,38,0, + 35,0,33,128,251,224,9,11,22,10,0,0,248,0,32,0, + 32,0,32,0,32,0,32,0,32,0,32,0,32,128,32,128, + 255,128,15,11,22,16,0,0,240,30,48,24,40,40,40,40, + 44,72,36,72,38,136,34,136,35,136,33,8,249,62,12,11, + 22,13,0,0,225,240,48,64,56,64,40,64,44,64,38,64, + 35,64,33,64,33,192,32,192,248,64,10,11,22,11,0,0, + 30,0,97,128,64,128,192,192,128,64,128,64,128,64,192,192, + 64,128,97,128,30,0,9,11,22,10,0,0,255,0,33,128, + 32,128,32,128,33,0,62,0,32,0,32,0,32,0,32,0, + 248,0,11,13,26,11,0,254,30,0,97,128,64,128,192,192, + 128,64,128,64,128,64,220,192,98,128,99,128,31,0,1,32, + 0,192,11,11,22,11,0,0,255,0,33,128,32,128,32,128, + 33,0,62,0,35,0,33,0,33,32,33,160,248,192,7,11, + 11,8,0,0,122,198,130,130,224,56,14,130,130,198,188,9, + 11,22,10,0,0,255,128,136,128,136,128,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,62,0,12,11,22,13,0, + 0,249,240,32,64,32,64,32,64,32,64,32,64,32,64,32, + 64,32,64,48,128,31,0,11,11,22,10,255,0,251,224,32, + 128,48,128,17,0,17,0,25,0,10,0,10,0,10,0,4, + 0,4,0,17,11,33,16,255,0,251,239,128,32,131,0,48, + 194,0,17,194,0,17,68,0,25,100,0,11,40,0,10,40, + 0,14,56,0,6,16,0,4,16,0,12,11,22,13,0,0, + 253,240,48,64,24,128,13,0,5,0,6,0,11,0,9,0, + 17,128,32,192,251,240,11,11,22,10,255,0,251,224,96,128, + 49,0,17,0,26,0,10,0,4,0,4,0,4,0,4,0, + 31,0,8,11,11,9,0,0,255,131,134,12,8,24,48,32, + 97,193,255,3,13,13,4,0,254,224,128,128,128,128,128,128, + 128,128,128,128,128,224,6,11,11,8,1,0,128,128,64,64, + 32,32,16,16,8,8,4,3,13,13,4,0,254,224,32,32, + 32,32,32,32,32,32,32,32,32,224,5,6,6,7,1,5, + 32,32,80,80,136,136,7,1,1,7,0,254,254,3,3,3, + 5,1,8,128,64,32,7,7,7,8,0,0,56,76,4,60, + 196,140,118,7,11,11,7,255,0,192,64,64,64,92,102,66, + 66,66,102,92,6,7,7,7,0,0,120,204,128,128,128,196, + 120,7,11,11,8,0,0,12,4,4,4,116,204,132,132,132, + 204,118,6,7,7,7,0,0,120,204,132,252,128,196,120,5, + 11,11,5,0,0,56,72,64,64,240,64,64,64,64,64,224, + 7,10,10,8,0,253,118,204,132,204,120,128,124,198,130,124, + 8,11,11,9,0,0,192,64,64,64,92,102,66,66,66,66, + 231,3,10,10,4,0,0,64,64,0,192,64,64,64,64,64, + 224,3,13,13,4,255,253,32,32,0,96,32,32,32,32,32, + 32,32,160,192,8,11,11,9,0,0,192,64,64,64,94,72, + 80,120,76,70,239,3,11,11,4,0,0,192,64,64,64,64, + 64,64,64,64,64,224,13,7,14,14,0,0,220,224,103,48, + 66,16,66,16,66,16,66,16,231,56,8,7,7,9,0,0, + 220,102,66,66,66,66,231,6,7,7,7,0,0,120,204,132, + 132,132,204,120,7,10,10,8,0,253,220,102,66,66,66,102, + 92,64,64,224,7,10,10,7,0,253,116,204,132,132,132,204, + 116,4,4,14,6,7,7,7,0,0,220,100,64,64,64,64, + 224,5,7,7,6,0,0,120,136,192,112,24,136,240,5,9, + 9,5,0,0,64,64,240,64,64,64,64,72,48,8,7,7, + 9,0,0,231,66,66,66,66,102,59,7,7,7,8,0,0, + 238,68,68,40,40,16,16,11,7,14,12,0,0,238,224,68, + 64,68,64,42,128,42,128,17,0,17,0,7,7,7,8,0, + 0,206,100,56,16,56,76,230,7,10,10,8,0,253,238,68, + 68,40,40,16,16,32,160,192,6,7,7,7,0,0,252,140, + 152,48,100,196,252,3,13,13,4,0,254,32,64,64,64,64, + 64,128,64,64,64,64,64,32,1,11,11,9,4,0,128,128, + 128,128,128,128,128,128,128,128,128,3,13,13,5,1,254,128, + 64,64,64,64,64,32,64,64,64,64,64,128,7,2,2,9, + 1,3,114,140,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,4,0,1,1,11,11,4,1, + 253,128,128,0,128,128,128,128,128,128,128,128,6,11,11,8, + 1,254,4,4,120,204,144,144,160,228,120,128,128,7,11,11, + 8,0,0,60,98,70,64,32,252,16,16,96,178,206,7,7, + 7,8,0,2,186,68,130,130,130,68,186,9,11,22,8,0, + 0,227,128,65,0,34,0,34,0,20,0,20,0,62,0,8, + 0,62,0,8,0,28,0,1,11,11,9,4,0,128,128,128, + 128,0,0,128,128,128,128,128,5,13,13,7,1,254,120,136, + 128,192,112,152,136,200,112,24,8,136,240,4,2,2,6,1, + 8,144,144,12,11,22,14,1,0,15,0,48,192,79,32,89, + 32,144,16,144,16,152,144,79,32,64,32,48,192,15,0,5, + 7,7,6,0,4,96,144,112,144,248,0,248,6,5,5,7, + 0,1,36,72,144,72,36,7,4,4,9,0,1,254,2,2, + 2,4,1,1,5,0,3,240,12,11,22,14,1,0,15,0, + 48,192,94,32,73,32,137,16,142,16,139,16,89,160,64,32, + 48,192,15,0,5,1,1,5,0,8,248,4,4,4,6,1, + 7,96,144,144,96,7,7,7,9,1,0,16,16,254,16,16, + 0,254,4,6,6,5,0,5,96,144,32,64,144,240,4,6, + 6,5,0,5,96,144,32,16,144,96,3,3,3,5,1,8, + 32,64,128,8,10,10,9,0,253,231,66,66,66,66,102,123, + 64,96,64,7,13,13,9,1,254,126,212,212,212,212,116,20, + 20,20,20,20,20,62,2,2,2,4,1,3,192,192,3,4, + 4,5,0,253,64,64,32,192,3,6,6,5,1,5,64,192, + 64,64,64,224,4,7,7,5,0,4,96,144,144,144,96,0, + 240,6,5,5,7,0,1,144,72,36,72,144,10,11,22,12, + 0,0,65,0,193,0,66,0,66,0,68,0,228,128,9,128, + 18,128,20,128,39,192,32,128,10,11,22,12,0,0,65,0, + 193,0,66,0,66,0,68,0,229,128,10,64,16,128,17,0, + 34,64,35,192,10,11,22,12,0,0,97,0,145,0,34,0, + 18,0,148,0,100,128,9,128,18,128,20,128,39,192,32,128, + 5,11,11,6,0,253,32,32,0,32,32,32,64,128,136,200, + 112,11,14,28,10,255,0,8,0,4,0,0,0,4,0,4, + 0,10,0,10,0,10,0,17,0,17,0,63,128,32,128,32, + 128,251,224,11,14,28,10,255,0,2,0,4,0,0,0,4, + 0,4,0,10,0,10,0,10,0,17,0,17,0,63,128,32, + 128,32,128,251,224,11,14,28,10,255,0,4,0,10,0,17, + 0,4,0,4,0,10,0,10,0,10,0,17,0,17,0,63, + 128,32,128,32,128,251,224,11,14,28,10,255,0,12,128,19, + 0,0,0,4,0,4,0,10,0,10,0,10,0,17,0,17, + 0,63,128,32,128,32,128,251,224,11,13,26,10,255,0,17, + 0,17,0,4,0,4,0,10,0,10,0,10,0,17,0,17, + 0,63,128,32,128,32,128,251,224,11,14,28,10,255,0,12, + 0,18,0,12,0,4,0,4,0,10,0,10,0,10,0,17, + 0,17,0,63,128,32,128,32,128,251,224,14,11,22,15,0, + 0,15,252,5,4,9,4,9,32,17,32,17,224,63,32,33, + 32,65,4,65,4,227,252,9,14,28,11,1,253,30,128,97, + 128,64,128,192,128,128,0,128,0,128,0,192,128,64,128,97, + 0,30,0,8,0,4,0,24,0,9,14,28,10,0,0,16, + 0,8,0,0,0,255,128,32,128,32,128,36,0,36,0,60, + 0,36,0,36,0,32,128,32,128,255,128,9,14,28,10,0, + 0,4,0,8,0,0,0,255,128,32,128,32,128,36,0,36, + 0,60,0,36,0,36,0,32,128,32,128,255,128,9,14,28, + 10,0,0,12,0,18,0,0,0,255,128,32,128,32,128,36, + 0,36,0,60,0,36,0,36,0,32,128,32,128,255,128,9, + 14,28,10,0,0,18,0,18,0,0,0,255,128,32,128,32, + 128,36,0,36,0,60,0,36,0,36,0,32,128,32,128,255, + 128,5,14,14,6,0,0,64,32,0,248,32,32,32,32,32, + 32,32,32,32,248,5,14,14,6,0,0,16,32,0,248,32, + 32,32,32,32,32,32,32,32,248,5,14,14,6,0,0,48, + 72,0,248,32,32,32,32,32,32,32,32,32,248,5,14,14, + 6,0,0,80,80,0,248,32,32,32,32,32,32,32,32,32, + 248,10,11,22,11,0,0,255,0,32,128,32,192,32,64,32, + 64,248,64,32,64,32,64,32,192,32,128,255,0,12,14,28, + 13,0,0,12,128,19,0,0,0,225,240,48,64,48,64,40, + 64,44,64,38,64,35,64,33,64,32,192,32,64,248,64,10, + 14,28,11,0,0,8,0,4,0,0,0,30,0,97,128,64, + 128,192,192,128,64,128,64,128,64,192,192,64,128,97,128,30, + 0,10,14,28,11,0,0,2,0,4,0,0,0,30,0,97, + 128,64,128,192,192,128,64,128,64,128,64,192,192,64,128,97, + 128,30,0,10,14,28,11,0,0,12,0,18,0,0,0,30, + 0,97,128,64,128,192,192,128,64,128,64,128,64,192,192,64, + 128,97,128,30,0,10,14,28,11,0,0,25,0,38,0,0, + 0,30,0,97,128,64,128,192,192,128,64,128,64,128,64,192, + 192,64,128,97,128,30,0,10,14,28,11,0,0,18,0,18, + 0,0,0,30,0,97,128,64,128,192,192,128,64,128,64,128, + 64,192,192,64,128,97,128,30,0,7,7,7,9,1,0,130, + 68,40,16,40,68,130,11,11,22,11,255,0,15,32,48,192, + 32,192,97,96,66,32,68,32,72,32,112,96,32,64,112,192, + 143,0,12,14,28,13,0,0,8,0,4,0,0,0,249,240, + 32,64,32,64,32,64,32,64,32,64,32,64,32,64,32,64, + 48,128,31,0,12,14,28,13,0,0,1,0,2,0,0,0, + 249,240,32,64,32,64,32,64,32,64,32,64,32,64,32,64, + 32,64,48,128,31,0,12,14,28,13,0,0,6,0,9,0, + 0,0,249,240,32,64,32,64,32,64,32,64,32,64,32,64, + 32,64,32,64,48,128,31,0,12,14,28,13,0,0,9,0, + 9,0,0,0,249,240,32,64,32,64,32,64,32,64,32,64, + 32,64,32,64,32,64,48,128,31,0,11,14,28,10,255,0, + 2,0,4,0,0,0,251,224,96,128,49,0,17,0,26,0, + 10,0,4,0,4,0,4,0,4,0,31,0,9,11,22,10, + 0,0,248,0,32,0,63,0,33,128,32,128,32,128,33,0, + 62,0,32,0,32,0,248,0,7,11,11,8,0,0,56,100, + 68,76,88,68,66,66,66,86,220,7,11,11,8,0,0,32, + 16,8,0,56,76,4,60,196,140,118,7,11,11,8,0,0, + 8,16,32,0,56,76,4,60,196,140,118,7,11,11,8,0, + 0,16,40,68,0,56,76,4,60,196,140,118,7,10,10,8, + 0,0,50,76,0,56,76,4,60,196,140,118,7,10,10,8, + 0,0,72,72,0,56,76,4,60,196,140,118,7,11,11,8, + 0,0,48,72,48,0,56,76,4,60,196,140,118,11,7,14, + 12,0,0,59,192,78,96,4,32,63,224,196,0,142,32,115, + 192,6,10,10,7,0,253,120,204,128,128,128,196,120,32,16, + 96,6,11,11,7,0,0,64,32,16,0,120,204,132,252,128, + 196,120,6,11,11,7,0,0,8,16,32,0,120,204,132,252, + 128,196,120,6,11,11,7,0,0,16,40,68,0,120,204,132, + 252,128,196,120,6,10,10,7,0,0,72,72,0,120,204,132, + 252,128,196,120,3,11,11,4,0,0,128,64,32,0,192,64, + 64,64,64,64,224,3,11,11,4,0,0,32,64,128,0,192, + 64,64,64,64,64,224,5,11,11,4,255,0,32,80,136,0, + 96,32,32,32,32,32,112,4,10,10,4,255,0,144,144,0, + 96,32,32,32,32,32,112,7,11,11,7,255,0,76,48,208, + 8,60,102,66,66,66,102,60,8,10,10,9,0,0,50,76, + 0,220,102,66,66,66,66,231,6,11,11,7,0,0,64,32, + 16,0,120,204,132,132,132,204,120,6,11,11,7,0,0,16, + 32,64,0,120,204,132,132,132,204,120,6,11,11,7,0,0, + 32,80,136,0,120,204,132,132,132,204,120,6,10,10,7,0, + 0,100,152,0,120,204,132,132,132,204,120,6,10,10,7,0, + 0,72,72,0,120,204,132,132,132,204,120,7,7,7,9,1, + 0,16,16,0,254,0,16,16,6,9,9,7,0,255,8,120, + 220,148,164,164,204,120,64,8,11,11,9,0,0,32,16,8, + 0,231,66,66,66,66,102,59,8,11,11,9,0,0,2,4, + 8,0,231,66,66,66,66,102,59,8,11,11,9,0,0,8, + 20,34,0,231,66,66,66,66,102,59,8,10,10,9,0,0, + 36,36,0,231,66,66,66,66,102,59,7,14,14,8,0,253, + 4,8,16,0,238,68,68,40,40,16,16,32,160,192,7,14, + 14,8,0,253,192,64,64,64,92,102,66,66,66,102,92,64, + 64,224,7,13,13,8,0,253,72,72,0,238,68,68,40,40, + 16,16,32,160,192}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--14-100-100-100-P-82-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=17 h=14 x= 4 y= 8 dx=16 dy= 0 ascent=12 len=33 + Font Bounding box w=18 h=24 x=-2 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR10r[1781] U8G_SECTION(".progmem.u8g_font_ncenR10r") = { + 0,18,24,254,250,11,2,24,5,38,32,127,253,12,253,11, + 253,0,0,0,4,0,1,1,11,11,3,1,0,128,128,128, + 128,128,128,128,128,0,128,128,3,4,4,5,1,7,160,160, + 160,160,8,11,11,8,0,0,18,18,18,127,36,36,36,254, + 72,72,72,6,14,14,8,1,254,32,120,164,172,160,224,120, + 28,20,212,148,120,16,16,11,11,22,12,0,0,51,0,77, + 0,138,0,138,0,148,0,100,192,9,32,10,32,18,32,18, + 64,33,128,11,11,22,13,1,0,28,0,50,0,34,0,52, + 0,24,0,57,224,76,128,135,0,131,32,197,192,120,192,1, + 4,4,3,1,7,128,128,128,128,4,13,13,5,0,254,16, + 32,64,64,128,128,128,128,128,64,64,32,16,4,13,13,6, + 1,254,128,64,32,32,16,16,16,16,16,32,32,64,128,5, + 5,5,7,1,6,32,168,112,168,32,7,7,7,9,1,0, + 16,16,16,254,16,16,16,2,4,4,4,0,254,192,64,64, + 128,4,1,1,5,0,3,240,1,2,2,4,1,0,128,128, + 4,11,11,4,0,0,16,16,16,32,32,32,64,64,64,128, + 128,6,11,11,8,1,0,120,204,132,132,132,132,132,132,132, + 204,120,5,11,11,8,1,0,32,224,32,32,32,32,32,32, + 32,32,248,6,11,11,8,1,0,120,140,196,4,4,8,16, + 32,68,132,252,6,11,11,8,1,0,120,140,196,4,8,56, + 12,4,196,140,120,7,11,11,8,0,0,12,28,20,36,68, + 68,132,254,4,4,14,6,11,11,8,1,0,252,128,128,184, + 204,132,4,4,196,140,120,6,11,11,8,1,0,56,68,140, + 128,184,204,132,132,132,204,120,6,11,11,8,1,0,252,132, + 136,8,16,16,16,32,32,32,32,6,11,11,8,1,0,120, + 204,132,196,104,120,140,132,132,204,120,6,11,11,8,1,0, + 120,204,132,132,132,204,116,4,196,136,112,1,7,7,4,1, + 0,128,128,0,0,0,128,128,2,9,9,4,0,254,64,64, + 0,0,0,192,64,64,128,8,7,7,10,1,0,3,12,48, + 192,48,12,3,7,4,4,9,1,2,254,0,0,254,8,7, + 7,10,1,0,192,48,12,3,12,48,192,5,11,11,6,0, + 0,112,152,136,8,16,32,32,32,0,32,32,12,11,22,13, + 0,0,31,224,32,16,70,144,137,144,144,144,145,16,145,16, + 147,48,141,192,64,16,63,224,11,11,22,10,255,0,4,0, + 4,0,10,0,10,0,10,0,17,0,17,0,63,128,32,128, + 32,128,251,224,9,11,22,10,0,0,254,0,35,0,33,0, + 33,0,34,0,63,0,33,128,32,128,32,128,33,128,255,0, + 9,11,22,11,1,0,30,128,97,128,64,128,192,128,128,0, + 128,0,128,0,192,128,64,128,97,0,30,0,10,11,22,11, + 0,0,255,0,32,128,32,192,32,64,32,64,32,64,32,64, + 32,64,32,192,32,128,255,0,9,11,22,10,0,0,255,128, + 32,128,32,128,36,0,36,0,60,0,36,0,36,0,32,128, + 32,128,255,128,9,11,22,10,0,0,255,128,32,128,32,128, + 36,0,36,0,60,0,36,0,36,0,32,0,32,0,248,0, + 10,11,22,11,0,0,30,128,97,128,64,128,192,128,128,0, + 128,0,135,192,192,128,64,128,97,128,30,128,11,11,22,12, + 0,0,251,224,32,128,32,128,32,128,32,128,63,128,32,128, + 32,128,32,128,32,128,251,224,5,11,11,6,0,0,248,32, + 32,32,32,32,32,32,32,32,248,7,11,11,7,0,0,62, + 8,8,8,8,8,8,200,136,136,112,11,11,22,11,0,0, + 251,192,33,0,34,0,36,0,40,0,56,0,52,0,38,0, + 35,0,33,128,251,224,9,11,22,10,0,0,248,0,32,0, + 32,0,32,0,32,0,32,0,32,0,32,0,32,128,32,128, + 255,128,15,11,22,16,0,0,240,30,48,24,40,40,40,40, + 44,72,36,72,38,136,34,136,35,136,33,8,249,62,12,11, + 22,13,0,0,225,240,48,64,56,64,40,64,44,64,38,64, + 35,64,33,64,33,192,32,192,248,64,10,11,22,11,0,0, + 30,0,97,128,64,128,192,192,128,64,128,64,128,64,192,192, + 64,128,97,128,30,0,9,11,22,10,0,0,255,0,33,128, + 32,128,32,128,33,0,62,0,32,0,32,0,32,0,32,0, + 248,0,11,13,26,11,0,254,30,0,97,128,64,128,192,192, + 128,64,128,64,128,64,220,192,98,128,99,128,31,0,1,32, + 0,192,11,11,22,11,0,0,255,0,33,128,32,128,32,128, + 33,0,62,0,35,0,33,0,33,32,33,160,248,192,7,11, + 11,8,0,0,122,198,130,130,224,56,14,130,130,198,188,9, + 11,22,10,0,0,255,128,136,128,136,128,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,62,0,12,11,22,13,0, + 0,249,240,32,64,32,64,32,64,32,64,32,64,32,64,32, + 64,32,64,48,128,31,0,11,11,22,10,255,0,251,224,32, + 128,48,128,17,0,17,0,25,0,10,0,10,0,10,0,4, + 0,4,0,17,11,33,16,255,0,251,239,128,32,131,0,48, + 194,0,17,194,0,17,68,0,25,100,0,11,40,0,10,40, + 0,14,56,0,6,16,0,4,16,0,12,11,22,13,0,0, + 253,240,48,64,24,128,13,0,5,0,6,0,11,0,9,0, + 17,128,32,192,251,240,11,11,22,10,255,0,251,224,96,128, + 49,0,17,0,26,0,10,0,4,0,4,0,4,0,4,0, + 31,0,8,11,11,9,0,0,255,131,134,12,8,24,48,32, + 97,193,255,3,13,13,4,0,254,224,128,128,128,128,128,128, + 128,128,128,128,128,224,6,11,11,8,1,0,128,128,64,64, + 32,32,16,16,8,8,4,3,13,13,4,0,254,224,32,32, + 32,32,32,32,32,32,32,32,32,224,5,6,6,7,1,5, + 32,32,80,80,136,136,7,1,1,7,0,254,254,3,3,3, + 5,1,8,128,64,32,7,7,7,8,0,0,56,76,4,60, + 196,140,118,7,11,11,7,255,0,192,64,64,64,92,102,66, + 66,66,102,92,6,7,7,7,0,0,120,204,128,128,128,196, + 120,7,11,11,8,0,0,12,4,4,4,116,204,132,132,132, + 204,118,6,7,7,7,0,0,120,204,132,252,128,196,120,5, + 11,11,5,0,0,56,72,64,64,240,64,64,64,64,64,224, + 7,10,10,8,0,253,118,204,132,204,120,128,124,198,130,124, + 8,11,11,9,0,0,192,64,64,64,92,102,66,66,66,66, + 231,3,10,10,4,0,0,64,64,0,192,64,64,64,64,64, + 224,3,13,13,4,255,253,32,32,0,96,32,32,32,32,32, + 32,32,160,192,8,11,11,9,0,0,192,64,64,64,94,72, + 80,120,76,70,239,3,11,11,4,0,0,192,64,64,64,64, + 64,64,64,64,64,224,13,7,14,14,0,0,220,224,103,48, + 66,16,66,16,66,16,66,16,231,56,8,7,7,9,0,0, + 220,102,66,66,66,66,231,6,7,7,7,0,0,120,204,132, + 132,132,204,120,7,10,10,8,0,253,220,102,66,66,66,102, + 92,64,64,224,7,10,10,7,0,253,116,204,132,132,132,204, + 116,4,4,14,6,7,7,7,0,0,220,100,64,64,64,64, + 224,5,7,7,6,0,0,120,136,192,112,24,136,240,5,9, + 9,5,0,0,64,64,240,64,64,64,64,72,48,8,7,7, + 9,0,0,231,66,66,66,66,102,59,7,7,7,8,0,0, + 238,68,68,40,40,16,16,11,7,14,12,0,0,238,224,68, + 64,68,64,42,128,42,128,17,0,17,0,7,7,7,8,0, + 0,206,100,56,16,56,76,230,7,10,10,8,0,253,238,68, + 68,40,40,16,16,32,160,192,6,7,7,7,0,0,252,140, + 152,48,100,196,252,3,13,13,4,0,254,32,64,64,64,64, + 64,128,64,64,64,64,64,32,1,11,11,9,4,0,128,128, + 128,128,128,128,128,128,128,128,128,3,13,13,5,1,254,128, + 64,64,64,64,64,32,64,64,64,64,64,128,7,2,2,9, + 1,3,114,140,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--17-120-100-100-P-91-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=16 h=16 x= 4 y= 9 dx=17 dy= 0 ascent=16 len=32 + Font Bounding box w=21 h=26 x=-3 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =12 descent=-3 + X Font ascent =12 descent=-3 + Max Font ascent =16 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR12[4247] U8G_SECTION(".progmem.u8g_font_ncenR12") = { + 0,21,26,253,250,12,2,59,5,140,32,255,253,16,253,12, + 253,0,0,0,4,1,1,2,12,12,5,1,0,192,192,192, + 192,192,128,128,128,128,0,192,192,4,4,4,6,1,8,144, + 144,144,144,8,12,12,9,0,0,18,18,18,18,127,36,36, + 254,72,72,72,72,7,15,15,9,1,254,16,16,60,82,150, + 150,240,124,30,210,210,148,120,16,16,12,12,24,14,1,0, + 56,128,103,128,69,0,197,0,138,0,138,224,117,144,5,16, + 11,16,10,32,18,32,17,192,12,12,24,13,0,0,30,0, + 51,0,49,0,51,0,26,0,28,240,44,96,102,64,198,128, + 195,144,231,144,124,224,1,4,4,3,1,8,128,128,128,128, + 4,14,14,6,1,254,16,32,64,64,128,128,128,128,128,128, + 64,64,32,16,4,14,14,6,0,254,128,64,32,32,16,16, + 16,16,16,16,32,32,64,128,7,7,7,8,0,5,16,84, + 214,56,214,84,16,7,9,9,10,1,0,16,16,16,16,254, + 16,16,16,16,2,5,5,4,1,253,192,192,64,64,128,4, + 1,1,5,0,3,240,2,2,2,4,1,0,192,192,5,12, + 12,5,0,0,8,8,16,16,16,32,32,64,64,64,128,128, + 8,12,12,9,0,0,60,102,66,195,195,195,195,195,195,66, + 102,60,6,12,12,9,1,0,16,240,48,48,48,48,48,48, + 48,48,48,252,7,12,12,9,1,0,56,68,134,198,198,12, + 8,16,34,66,254,254,7,12,12,9,1,0,120,140,198,198, + 12,56,12,6,198,198,140,120,8,12,12,9,0,0,4,12, + 28,44,44,76,76,140,255,12,12,63,7,12,12,9,1,0, + 126,120,64,64,120,204,134,6,198,198,140,120,8,12,12,9, + 0,0,60,102,70,192,192,252,230,195,195,195,102,60,7,12, + 12,9,1,0,254,254,132,132,8,8,16,16,16,48,48,48, + 8,12,12,9,0,0,60,102,66,98,118,60,110,199,195,195, + 102,60,8,12,12,9,0,0,60,102,195,195,195,103,63,3, + 3,98,102,56,2,8,8,4,1,0,192,192,0,0,0,0, + 192,192,2,11,11,4,1,253,192,192,0,0,0,0,192,192, + 64,64,128,8,8,8,10,1,0,3,12,48,192,192,48,12, + 3,8,4,4,10,1,2,255,0,0,255,8,8,8,10,0, + 0,192,48,12,3,3,12,48,192,7,12,12,7,0,0,56, + 76,230,70,6,12,24,16,16,0,48,48,13,13,26,12,255, + 255,7,128,24,96,32,16,70,208,77,144,152,144,153,144,145, + 32,155,32,76,200,64,16,48,96,15,128,11,12,24,12,0, + 0,4,0,4,0,14,0,14,0,22,0,19,0,19,0,63, + 128,33,128,65,128,64,192,243,224,11,12,24,12,0,0,255, + 128,49,192,48,192,48,192,49,128,63,192,48,224,48,96,48, + 96,48,96,48,192,255,128,10,12,24,12,1,0,31,64,112, + 192,96,64,224,64,192,64,192,0,192,0,192,0,224,64,96, + 64,112,128,31,0,12,12,24,13,0,0,255,0,49,192,48, + 96,48,96,48,48,48,48,48,48,48,48,48,96,48,96,49, + 192,255,0,10,12,24,12,0,0,255,192,48,192,48,64,50, + 64,50,0,62,0,54,0,50,0,50,64,48,64,48,192,255, + 192,10,12,24,11,0,0,255,192,48,192,48,64,50,64,50, + 0,62,0,54,0,50,0,50,0,48,0,48,0,252,0,11, + 12,24,13,1,0,31,64,112,192,96,64,224,64,192,64,192, + 0,195,224,192,192,224,192,96,192,113,192,30,64,13,12,24, + 14,0,0,253,248,48,96,48,96,48,96,48,96,63,224,48, + 96,48,96,48,96,48,96,48,96,253,248,6,12,12,7,0, + 0,252,48,48,48,48,48,48,48,48,48,48,252,9,12,24, + 9,0,0,31,128,6,0,6,0,6,0,6,0,6,0,6, + 0,70,0,230,0,198,0,132,0,120,0,12,12,24,13,0, + 0,253,240,48,192,48,128,49,0,50,0,54,0,59,0,51, + 128,49,128,48,192,48,224,253,240,10,12,24,11,0,0,252, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,64,48, + 64,48,64,48,192,255,192,15,12,24,16,0,0,248,62,56, + 56,56,56,44,88,44,88,46,88,38,152,38,152,35,152,35, + 24,35,24,249,62,13,12,24,13,0,0,240,248,56,32,60, + 32,44,32,46,32,39,32,35,160,33,160,32,224,32,224,32, + 96,248,32,11,12,24,13,1,0,14,0,49,128,96,192,96, + 192,192,96,192,96,192,96,192,96,96,192,96,192,49,128,14, + 0,11,12,24,11,0,0,255,128,48,192,48,96,48,96,48, + 96,48,192,63,128,48,0,48,0,48,0,48,0,252,0,11, + 15,30,13,1,253,14,0,49,128,96,192,96,192,192,96,192, + 96,192,96,204,96,82,64,115,192,51,128,15,0,3,64,3, + 64,1,128,12,12,24,12,0,0,255,0,48,192,48,96,48, + 96,48,192,63,0,51,128,48,192,48,192,48,208,48,208,252, + 96,8,12,12,10,1,0,61,99,193,193,224,124,62,135,131, + 131,198,188,10,12,24,11,0,0,255,192,204,192,140,64,140, + 64,140,64,12,0,12,0,12,0,12,0,12,0,12,0,63, + 0,13,12,24,13,0,0,252,248,48,32,48,32,48,32,48, + 32,48,32,48,32,48,32,48,32,48,32,24,64,15,128,11, + 12,24,12,0,0,248,224,112,64,48,64,48,128,24,128,25, + 0,25,0,13,0,14,0,14,0,4,0,4,0,15,12,24, + 16,0,0,247,206,99,4,99,4,49,136,49,136,57,200,26, + 208,26,208,10,80,12,96,4,32,4,32,11,12,24,11,0, + 0,241,224,96,192,48,128,25,0,30,0,12,0,6,0,15, + 0,19,0,33,128,96,192,241,224,12,12,24,12,0,0,252, + 240,48,64,24,128,24,128,13,0,13,0,6,0,6,0,6, + 0,6,0,6,0,31,128,9,12,24,10,0,0,127,128,97, + 128,67,0,67,0,6,0,12,0,12,0,24,128,48,128,48, + 128,97,128,255,128,3,14,14,6,1,254,224,128,128,128,128, + 128,128,128,128,128,128,128,128,224,6,12,12,10,2,0,128, + 128,64,64,32,32,16,16,8,8,4,4,3,14,14,6,1, + 254,224,32,32,32,32,32,32,32,32,32,32,32,32,224,8, + 7,7,10,1,5,24,24,60,36,102,66,195,8,1,1,8, + 0,254,255,3,3,3,5,0,9,128,64,32,7,8,8,9, + 1,0,120,204,204,28,108,204,204,118,8,12,12,9,0,0, + 224,96,96,96,124,102,99,99,99,99,102,92,6,8,8,7, + 0,0,56,108,204,192,192,192,108,56,8,12,12,10,1,0, + 14,6,6,6,62,102,198,198,198,198,102,59,7,8,8,8, + 0,0,56,68,198,254,192,192,102,60,6,12,12,6,0,0, + 56,108,96,96,248,96,96,96,96,96,96,248,9,11,22,9, + 0,253,61,128,102,128,102,0,102,0,102,0,60,0,64,0, + 126,0,195,0,195,0,126,0,9,12,24,10,0,0,224,0, + 96,0,96,0,96,0,110,0,119,0,99,0,99,0,99,0, + 99,0,99,0,247,128,4,12,12,5,0,0,96,96,0,0, + 224,96,96,96,96,96,96,240,4,15,15,5,255,253,48,48, + 0,0,112,48,48,48,48,48,48,48,48,176,224,9,12,24, + 10,0,0,224,0,96,0,96,0,96,0,111,128,102,0,108, + 0,120,0,124,0,102,0,99,0,247,128,4,12,12,5,0, + 0,224,96,96,96,96,96,96,96,96,96,96,240,14,8,16, + 15,0,0,238,112,115,152,99,24,99,24,99,24,99,24,99, + 24,247,188,9,8,16,10,0,0,238,0,115,0,99,0,99, + 0,99,0,99,0,99,0,247,128,7,8,8,8,0,0,56, + 108,198,198,198,198,108,56,8,11,11,9,0,253,220,102,99, + 99,99,99,102,124,96,96,240,8,11,11,9,0,253,57,102, + 198,198,198,198,102,62,6,6,15,7,8,8,7,0,0,236, + 118,102,96,96,96,96,240,6,8,8,8,0,0,116,204,196, + 112,56,140,204,184,6,11,11,7,0,0,32,32,96,248,96, + 96,96,96,100,100,56,9,8,16,10,0,0,231,0,99,0, + 99,0,99,0,99,0,99,0,99,0,61,128,9,8,16,9, + 0,0,247,128,99,0,50,0,54,0,28,0,28,0,8,0, + 8,0,13,8,16,13,0,0,239,120,102,48,51,32,51,96, + 29,192,29,192,8,128,8,128,8,8,8,9,0,0,247,98, + 52,56,28,44,70,239,8,11,11,9,0,253,247,98,54,52, + 28,28,8,8,24,208,224,6,8,8,8,1,0,252,140,152, + 48,48,100,196,252,3,14,14,6,1,254,32,64,64,64,64, + 64,128,64,64,64,64,64,64,32,1,12,12,10,4,0,128, + 128,128,128,128,128,128,128,128,128,128,128,3,14,14,6,1, + 254,128,64,64,64,64,64,32,64,64,64,64,64,64,128,8, + 2,2,10,1,3,115,206,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,4,1,1,2,12, + 12,5,1,253,192,192,0,64,64,64,64,192,192,192,192,192, + 6,12,12,9,1,254,4,4,56,76,204,144,144,228,100,56, + 64,64,9,12,24,9,0,0,30,0,49,0,35,0,35,0, + 48,0,16,0,254,0,16,0,16,0,112,128,191,0,78,0, + 7,8,8,9,1,2,186,108,198,130,130,198,108,186,9,12, + 24,9,0,0,243,128,97,0,34,0,50,0,20,0,20,0, + 62,0,8,0,62,0,8,0,8,0,62,0,1,12,12,10, + 4,0,128,128,128,128,128,0,0,128,128,128,128,128,6,15, + 15,8,1,253,56,72,64,96,48,88,140,132,196,104,48,24, + 8,72,112,5,2,2,5,0,9,216,216,12,12,24,12,0, + 0,31,128,48,192,71,32,205,176,152,144,144,16,144,16,152, + 144,205,176,71,32,48,192,31,128,5,7,7,6,0,5,224, + 144,112,144,232,0,240,6,5,5,7,0,1,36,72,216,72, + 36,8,5,5,10,1,1,255,1,1,1,1,4,1,1,5, + 0,3,240,12,12,24,12,0,0,31,128,48,192,95,32,201, + 176,137,144,143,16,137,16,137,144,200,176,92,224,48,192,31, + 128,5,1,1,5,0,9,248,5,5,5,7,1,7,112,136, + 136,136,112,7,9,9,10,1,0,16,16,16,254,16,16,16, + 0,254,5,7,7,6,0,5,112,216,136,16,32,72,248,5, + 7,7,6,0,5,112,216,136,48,136,216,112,3,3,3,5, + 0,9,32,96,128,10,11,22,10,0,253,231,0,99,0,99, + 0,99,0,99,0,99,0,99,0,125,192,96,0,96,0,96, + 0,8,15,15,10,0,253,127,234,202,202,202,234,122,10,10, + 10,10,10,10,10,31,2,2,2,5,1,3,192,192,3,4, + 4,5,1,253,64,64,32,192,3,7,7,6,1,5,64,192, + 64,64,64,64,224,4,7,7,5,0,5,96,144,144,144,96, + 0,240,6,5,5,7,0,1,144,72,108,72,144,11,12,24, + 14,1,0,64,64,192,192,65,128,65,0,66,0,70,64,236, + 192,9,64,18,64,51,224,96,64,64,224,11,12,24,13,1, + 0,64,128,193,128,67,0,66,0,68,0,77,192,251,96,18, + 32,32,192,97,0,195,32,131,224,13,12,24,14,0,0,112, + 24,216,48,136,96,48,192,136,128,217,144,115,48,6,80,4, + 144,12,248,24,16,48,56,7,12,12,7,0,253,24,24,0, + 16,16,48,96,192,196,206,100,56,11,16,32,12,0,0,24, + 0,12,0,2,0,0,0,4,0,4,0,14,0,14,0,22, + 0,19,0,19,0,63,128,33,128,65,128,64,192,243,224,11, + 16,32,12,0,0,3,0,6,0,8,0,0,0,4,0,4, + 0,14,0,14,0,22,0,19,0,19,0,63,128,33,128,65, + 128,64,192,243,224,11,16,32,12,0,0,4,0,14,0,17, + 0,0,0,4,0,4,0,14,0,14,0,22,0,19,0,19, + 0,63,128,33,128,65,128,64,192,243,224,11,15,30,12,0, + 0,29,0,46,0,0,0,4,0,4,0,14,0,14,0,22, + 0,19,0,19,0,63,128,33,128,65,128,64,192,243,224,11, + 15,30,12,0,0,18,0,18,0,0,0,4,0,4,0,14, + 0,14,0,22,0,19,0,19,0,63,128,33,128,65,128,64, + 192,243,224,11,16,32,12,0,0,12,0,18,0,12,0,0, + 0,4,0,4,0,14,0,14,0,22,0,19,0,19,0,63, + 128,33,128,65,128,64,192,243,224,16,12,24,17,0,0,15, + 255,2,195,2,193,4,193,4,200,8,248,8,216,31,201,16, + 193,32,193,32,195,251,255,10,15,30,12,1,253,31,64,112, + 192,96,64,224,64,192,64,192,0,192,0,192,0,224,64,96, + 64,112,128,31,0,8,0,4,0,24,0,10,16,32,12,0, + 0,24,0,12,0,2,0,0,0,255,192,48,192,48,64,48, + 64,50,0,62,0,54,0,50,0,48,64,48,64,48,192,255, + 192,10,16,32,12,0,0,3,0,6,0,8,0,0,0,255, + 192,48,192,48,64,48,64,50,0,62,0,54,0,50,0,48, + 64,48,64,48,192,255,192,10,16,32,12,0,0,4,0,14, + 0,17,0,0,0,255,192,48,192,48,64,48,64,50,0,62, + 0,54,0,50,0,48,64,48,64,48,192,255,192,10,15,30, + 12,0,0,17,0,17,0,0,0,255,192,48,192,48,64,48, + 64,50,0,62,0,54,0,50,0,48,64,48,64,48,192,255, + 192,6,16,16,7,0,0,192,96,16,0,252,48,48,48,48, + 48,48,48,48,48,48,252,6,16,16,7,0,0,12,24,32, + 0,252,48,48,48,48,48,48,48,48,48,48,252,6,16,16, + 7,0,0,32,112,136,0,252,48,48,48,48,48,48,48,48, + 48,48,252,6,15,15,7,0,0,72,72,0,252,48,48,48, + 48,48,48,48,48,48,48,252,12,12,24,13,0,0,255,0, + 49,192,48,96,48,96,48,48,124,48,48,48,48,48,48,96, + 48,96,49,192,255,0,13,15,30,13,0,0,14,64,19,128, + 0,0,240,248,56,32,60,32,44,32,46,32,39,32,35,160, + 33,160,32,224,32,224,32,96,248,32,11,16,32,13,1,0, + 24,0,12,0,2,0,0,0,14,0,49,128,96,192,96,192, + 192,96,192,96,192,96,192,96,96,192,96,192,49,128,14,0, + 11,16,32,13,1,0,1,128,3,0,4,0,0,0,14,0, + 49,128,96,192,96,192,192,96,192,96,192,96,192,96,96,192, + 96,192,49,128,14,0,11,16,32,13,1,0,4,0,14,0, + 17,0,0,0,14,0,49,128,96,192,96,192,192,96,192,96, + 192,96,192,96,96,192,96,192,49,128,14,0,11,15,30,13, + 1,0,14,128,23,0,0,0,14,0,49,128,96,192,96,192, + 192,96,192,96,192,96,192,96,96,192,96,192,49,128,14,0, + 11,15,30,13,1,0,17,0,17,0,0,0,14,0,49,128, + 96,192,96,192,192,96,192,96,192,96,192,96,96,192,96,192, + 49,128,14,0,8,8,8,10,1,0,129,66,36,24,24,36, + 66,129,11,14,28,13,1,255,0,32,14,64,49,128,97,192, + 97,64,194,96,196,96,196,96,200,96,80,192,112,192,49,128, + 78,0,128,0,13,16,32,13,0,0,12,0,6,0,1,0, + 0,0,252,248,48,32,48,32,48,32,48,32,48,32,48,32, + 48,32,48,32,48,32,24,64,15,128,13,16,32,13,0,0, + 0,192,1,128,2,0,0,0,252,248,48,32,48,32,48,32, + 48,32,48,32,48,32,48,32,48,32,48,32,24,64,15,128, + 13,16,32,13,0,0,2,0,7,0,8,128,0,0,252,248, + 48,32,48,32,48,32,48,32,48,32,48,32,48,32,48,32, + 48,32,24,64,15,128,13,15,30,13,0,0,8,128,8,128, + 0,0,252,248,48,32,48,32,48,32,48,32,48,32,48,32, + 48,32,48,32,48,32,24,64,15,128,12,16,32,12,0,0, + 1,128,3,0,4,0,0,0,252,240,48,64,24,128,24,128, + 13,0,13,0,6,0,6,0,6,0,6,0,6,0,31,128, + 11,12,24,11,0,0,252,0,48,0,48,0,63,128,48,192, + 48,96,48,96,48,192,63,128,48,0,48,0,252,0,8,12, + 12,10,1,0,60,102,99,99,102,124,102,99,99,99,118,236, + 7,12,12,9,1,0,64,96,16,0,120,204,204,28,108,204, + 204,118,7,12,12,9,1,0,4,12,16,0,120,204,204,28, + 108,204,204,118,7,12,12,9,1,0,16,56,68,0,120,204, + 204,28,108,204,204,118,7,11,11,9,1,0,52,88,0,120, + 204,204,28,108,204,204,118,7,11,11,9,1,0,72,72,0, + 120,204,204,28,108,204,204,118,7,13,13,9,1,0,48,72, + 72,48,0,120,204,204,28,108,204,204,118,12,8,16,13,0, + 0,121,192,206,32,198,48,31,240,102,0,198,16,207,32,121, + 192,6,11,11,7,0,253,56,108,204,192,192,196,108,56,32, + 16,96,7,12,12,8,0,0,32,48,8,0,56,68,198,254, + 192,192,102,60,7,12,12,8,0,0,4,12,16,0,56,68, + 198,254,192,192,102,60,7,12,12,8,0,0,16,56,68,0, + 56,68,198,254,192,192,102,60,7,11,11,8,0,0,36,36, + 0,56,68,198,254,192,192,102,60,4,12,12,5,0,0,128, + 192,32,0,224,96,96,96,96,96,96,240,4,12,12,5,0, + 0,16,48,64,0,224,96,96,96,96,96,96,240,5,12,12, + 5,255,0,32,112,136,0,112,48,48,48,48,48,48,120,4, + 11,11,5,0,0,144,144,0,224,96,96,96,96,96,96,240, + 7,13,13,8,0,0,64,38,24,104,12,60,110,198,198,198, + 198,108,56,9,11,22,10,0,0,26,0,44,0,0,0,238, + 0,115,0,99,0,99,0,99,0,99,0,99,0,247,128,7, + 12,12,8,0,0,64,96,16,0,56,108,198,198,198,198,108, + 56,7,12,12,8,0,0,4,12,16,0,56,108,198,198,198, + 198,108,56,7,12,12,8,0,0,16,56,68,0,56,108,198, + 198,198,198,108,56,7,11,11,8,0,0,52,88,0,56,108, + 198,198,198,198,108,56,7,11,11,8,0,0,72,72,0,56, + 108,198,198,198,198,108,56,8,7,7,10,1,1,24,24,0, + 255,0,24,24,7,10,10,8,0,255,2,60,100,206,214,214, + 230,76,120,128,9,12,24,10,0,0,32,0,48,0,8,0, + 0,0,231,0,99,0,99,0,99,0,99,0,99,0,99,0, + 61,128,9,12,24,10,0,0,2,0,6,0,8,0,0,0, + 231,0,99,0,99,0,99,0,99,0,99,0,99,0,61,128, + 9,12,24,10,0,0,8,0,28,0,34,0,0,0,231,0, + 99,0,99,0,99,0,99,0,99,0,99,0,61,128,9,11, + 22,10,0,0,36,0,36,0,0,0,231,0,99,0,99,0, + 99,0,99,0,99,0,99,0,61,128,8,15,15,9,0,253, + 2,6,8,0,247,98,54,52,28,24,8,24,16,208,224,8, + 14,14,9,0,253,224,96,96,124,102,99,99,99,99,102,124, + 96,96,240,8,14,14,9,0,253,36,36,0,247,98,54,52, + 28,24,8,24,16,208,224}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--17-120-100-100-P-91-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=15 h=15 x= 4 y= 9 dx=16 dy= 0 ascent=13 len=30 + Font Bounding box w=21 h=26 x=-3 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =12 descent=-3 + X Font ascent =12 descent=-3 + Max Font ascent =13 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR12r[1976] U8G_SECTION(".progmem.u8g_font_ncenR12r") = { + 0,21,26,253,250,12,2,59,5,140,32,127,253,13,253,12, + 253,0,0,0,4,1,1,2,12,12,5,1,0,192,192,192, + 192,192,128,128,128,128,0,192,192,4,4,4,6,1,8,144, + 144,144,144,8,12,12,9,0,0,18,18,18,18,127,36,36, + 254,72,72,72,72,7,15,15,9,1,254,16,16,60,82,150, + 150,240,124,30,210,210,148,120,16,16,12,12,24,14,1,0, + 56,128,103,128,69,0,197,0,138,0,138,224,117,144,5,16, + 11,16,10,32,18,32,17,192,12,12,24,13,0,0,30,0, + 51,0,49,0,51,0,26,0,28,240,44,96,102,64,198,128, + 195,144,231,144,124,224,1,4,4,3,1,8,128,128,128,128, + 4,14,14,6,1,254,16,32,64,64,128,128,128,128,128,128, + 64,64,32,16,4,14,14,6,0,254,128,64,32,32,16,16, + 16,16,16,16,32,32,64,128,7,7,7,8,0,5,16,84, + 214,56,214,84,16,7,9,9,10,1,0,16,16,16,16,254, + 16,16,16,16,2,5,5,4,1,253,192,192,64,64,128,4, + 1,1,5,0,3,240,2,2,2,4,1,0,192,192,5,12, + 12,5,0,0,8,8,16,16,16,32,32,64,64,64,128,128, + 8,12,12,9,0,0,60,102,66,195,195,195,195,195,195,66, + 102,60,6,12,12,9,1,0,16,240,48,48,48,48,48,48, + 48,48,48,252,7,12,12,9,1,0,56,68,134,198,198,12, + 8,16,34,66,254,254,7,12,12,9,1,0,120,140,198,198, + 12,56,12,6,198,198,140,120,8,12,12,9,0,0,4,12, + 28,44,44,76,76,140,255,12,12,63,7,12,12,9,1,0, + 126,120,64,64,120,204,134,6,198,198,140,120,8,12,12,9, + 0,0,60,102,70,192,192,252,230,195,195,195,102,60,7,12, + 12,9,1,0,254,254,132,132,8,8,16,16,16,48,48,48, + 8,12,12,9,0,0,60,102,66,98,118,60,110,199,195,195, + 102,60,8,12,12,9,0,0,60,102,195,195,195,103,63,3, + 3,98,102,56,2,8,8,4,1,0,192,192,0,0,0,0, + 192,192,2,11,11,4,1,253,192,192,0,0,0,0,192,192, + 64,64,128,8,8,8,10,1,0,3,12,48,192,192,48,12, + 3,8,4,4,10,1,2,255,0,0,255,8,8,8,10,0, + 0,192,48,12,3,3,12,48,192,7,12,12,7,0,0,56, + 76,230,70,6,12,24,16,16,0,48,48,13,13,26,12,255, + 255,7,128,24,96,32,16,70,208,77,144,152,144,153,144,145, + 32,155,32,76,200,64,16,48,96,15,128,11,12,24,12,0, + 0,4,0,4,0,14,0,14,0,22,0,19,0,19,0,63, + 128,33,128,65,128,64,192,243,224,11,12,24,12,0,0,255, + 128,49,192,48,192,48,192,49,128,63,192,48,224,48,96,48, + 96,48,96,48,192,255,128,10,12,24,12,1,0,31,64,112, + 192,96,64,224,64,192,64,192,0,192,0,192,0,224,64,96, + 64,112,128,31,0,12,12,24,13,0,0,255,0,49,192,48, + 96,48,96,48,48,48,48,48,48,48,48,48,96,48,96,49, + 192,255,0,10,12,24,12,0,0,255,192,48,192,48,64,50, + 64,50,0,62,0,54,0,50,0,50,64,48,64,48,192,255, + 192,10,12,24,11,0,0,255,192,48,192,48,64,50,64,50, + 0,62,0,54,0,50,0,50,0,48,0,48,0,252,0,11, + 12,24,13,1,0,31,64,112,192,96,64,224,64,192,64,192, + 0,195,224,192,192,224,192,96,192,113,192,30,64,13,12,24, + 14,0,0,253,248,48,96,48,96,48,96,48,96,63,224,48, + 96,48,96,48,96,48,96,48,96,253,248,6,12,12,7,0, + 0,252,48,48,48,48,48,48,48,48,48,48,252,9,12,24, + 9,0,0,31,128,6,0,6,0,6,0,6,0,6,0,6, + 0,70,0,230,0,198,0,132,0,120,0,12,12,24,13,0, + 0,253,240,48,192,48,128,49,0,50,0,54,0,59,0,51, + 128,49,128,48,192,48,224,253,240,10,12,24,11,0,0,252, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,64,48, + 64,48,64,48,192,255,192,15,12,24,16,0,0,248,62,56, + 56,56,56,44,88,44,88,46,88,38,152,38,152,35,152,35, + 24,35,24,249,62,13,12,24,13,0,0,240,248,56,32,60, + 32,44,32,46,32,39,32,35,160,33,160,32,224,32,224,32, + 96,248,32,11,12,24,13,1,0,14,0,49,128,96,192,96, + 192,192,96,192,96,192,96,192,96,96,192,96,192,49,128,14, + 0,11,12,24,11,0,0,255,128,48,192,48,96,48,96,48, + 96,48,192,63,128,48,0,48,0,48,0,48,0,252,0,11, + 15,30,13,1,253,14,0,49,128,96,192,96,192,192,96,192, + 96,192,96,204,96,82,64,115,192,51,128,15,0,3,64,3, + 64,1,128,12,12,24,12,0,0,255,0,48,192,48,96,48, + 96,48,192,63,0,51,128,48,192,48,192,48,208,48,208,252, + 96,8,12,12,10,1,0,61,99,193,193,224,124,62,135,131, + 131,198,188,10,12,24,11,0,0,255,192,204,192,140,64,140, + 64,140,64,12,0,12,0,12,0,12,0,12,0,12,0,63, + 0,13,12,24,13,0,0,252,248,48,32,48,32,48,32,48, + 32,48,32,48,32,48,32,48,32,48,32,24,64,15,128,11, + 12,24,12,0,0,248,224,112,64,48,64,48,128,24,128,25, + 0,25,0,13,0,14,0,14,0,4,0,4,0,15,12,24, + 16,0,0,247,206,99,4,99,4,49,136,49,136,57,200,26, + 208,26,208,10,80,12,96,4,32,4,32,11,12,24,11,0, + 0,241,224,96,192,48,128,25,0,30,0,12,0,6,0,15, + 0,19,0,33,128,96,192,241,224,12,12,24,12,0,0,252, + 240,48,64,24,128,24,128,13,0,13,0,6,0,6,0,6, + 0,6,0,6,0,31,128,9,12,24,10,0,0,127,128,97, + 128,67,0,67,0,6,0,12,0,12,0,24,128,48,128,48, + 128,97,128,255,128,3,14,14,6,1,254,224,128,128,128,128, + 128,128,128,128,128,128,128,128,224,6,12,12,10,2,0,128, + 128,64,64,32,32,16,16,8,8,4,4,3,14,14,6,1, + 254,224,32,32,32,32,32,32,32,32,32,32,32,32,224,8, + 7,7,10,1,5,24,24,60,36,102,66,195,8,1,1,8, + 0,254,255,3,3,3,5,0,9,128,64,32,7,8,8,9, + 1,0,120,204,204,28,108,204,204,118,8,12,12,9,0,0, + 224,96,96,96,124,102,99,99,99,99,102,92,6,8,8,7, + 0,0,56,108,204,192,192,192,108,56,8,12,12,10,1,0, + 14,6,6,6,62,102,198,198,198,198,102,59,7,8,8,8, + 0,0,56,68,198,254,192,192,102,60,6,12,12,6,0,0, + 56,108,96,96,248,96,96,96,96,96,96,248,9,11,22,9, + 0,253,61,128,102,128,102,0,102,0,102,0,60,0,64,0, + 126,0,195,0,195,0,126,0,9,12,24,10,0,0,224,0, + 96,0,96,0,96,0,110,0,119,0,99,0,99,0,99,0, + 99,0,99,0,247,128,4,12,12,5,0,0,96,96,0,0, + 224,96,96,96,96,96,96,240,4,15,15,5,255,253,48,48, + 0,0,112,48,48,48,48,48,48,48,48,176,224,9,12,24, + 10,0,0,224,0,96,0,96,0,96,0,111,128,102,0,108, + 0,120,0,124,0,102,0,99,0,247,128,4,12,12,5,0, + 0,224,96,96,96,96,96,96,96,96,96,96,240,14,8,16, + 15,0,0,238,112,115,152,99,24,99,24,99,24,99,24,99, + 24,247,188,9,8,16,10,0,0,238,0,115,0,99,0,99, + 0,99,0,99,0,99,0,247,128,7,8,8,8,0,0,56, + 108,198,198,198,198,108,56,8,11,11,9,0,253,220,102,99, + 99,99,99,102,124,96,96,240,8,11,11,9,0,253,57,102, + 198,198,198,198,102,62,6,6,15,7,8,8,7,0,0,236, + 118,102,96,96,96,96,240,6,8,8,8,0,0,116,204,196, + 112,56,140,204,184,6,11,11,7,0,0,32,32,96,248,96, + 96,96,96,100,100,56,9,8,16,10,0,0,231,0,99,0, + 99,0,99,0,99,0,99,0,99,0,61,128,9,8,16,9, + 0,0,247,128,99,0,50,0,54,0,28,0,28,0,8,0, + 8,0,13,8,16,13,0,0,239,120,102,48,51,32,51,96, + 29,192,29,192,8,128,8,128,8,8,8,9,0,0,247,98, + 52,56,28,44,70,239,8,11,11,9,0,253,247,98,54,52, + 28,28,8,8,24,208,224,6,8,8,8,1,0,252,140,152, + 48,48,100,196,252,3,14,14,6,1,254,32,64,64,64,64, + 64,128,64,64,64,64,64,64,32,1,12,12,10,4,0,128, + 128,128,128,128,128,128,128,128,128,128,128,3,14,14,6,1, + 254,128,64,64,64,64,64,32,64,64,64,64,64,64,128,8, + 2,2,10,1,3,115,206,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--20-140-100-100-P-103-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=19 x= 4 y=11 dx=19 dy= 0 ascent=19 len=42 + Font Bounding box w=27 h=30 x=-4 y=-7 + Calculated Min Values x=-3 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =19 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR14[5319] U8G_SECTION(".progmem.u8g_font_ncenR14") = { + 0,27,30,252,249,14,3,41,7,30,32,255,252,19,252,14, + 252,0,0,0,5,0,1,2,14,14,5,1,0,192,192,192, + 192,192,192,192,128,128,128,0,0,192,192,4,5,5,7,1, + 9,144,144,144,144,144,10,13,26,11,0,0,9,0,9,0, + 9,0,9,0,127,192,18,0,18,0,18,0,255,128,36,0, + 36,0,36,0,36,0,9,17,34,10,0,254,8,0,8,0, + 63,0,105,128,201,128,200,0,232,0,120,0,30,0,15,0, + 11,128,9,128,201,128,203,0,126,0,8,0,8,0,15,14, + 28,16,0,0,28,32,50,32,99,192,98,64,196,128,196,128, + 201,28,113,50,2,98,2,98,4,196,4,196,8,200,8,112, + 13,14,28,14,0,0,30,0,51,0,33,0,35,0,54,0, + 28,0,57,248,124,96,238,64,199,128,195,128,193,200,227,240, + 124,96,1,5,5,4,1,9,128,128,128,128,128,6,17,17, + 7,0,253,4,24,48,96,96,192,192,192,192,192,192,192,96, + 96,48,24,4,6,17,17,7,0,253,128,96,48,24,24,12, + 12,12,12,12,12,12,24,24,48,96,128,7,7,7,10,1, + 7,16,146,214,56,214,146,16,9,9,18,10,0,1,8,0, + 8,0,8,0,8,0,255,128,8,0,8,0,8,0,8,0, + 3,5,5,5,0,253,96,96,32,64,128,5,1,1,6,0, + 5,248,2,2,2,5,1,0,192,192,5,14,14,6,0,0, + 8,8,8,16,16,16,32,32,32,64,64,64,128,128,9,14, + 28,10,0,0,28,0,99,0,99,0,193,128,193,128,193,128, + 193,128,193,128,193,128,193,128,193,128,99,0,99,0,28,0, + 8,14,14,10,1,0,24,248,24,24,24,24,24,24,24,24, + 24,24,24,255,9,14,28,10,0,0,30,0,99,0,193,128, + 193,128,1,128,1,128,3,0,6,0,12,0,24,0,48,128, + 96,128,255,128,255,128,9,14,28,10,0,0,62,0,99,0, + 97,128,1,128,1,128,3,0,30,0,3,0,1,128,1,128, + 1,128,193,128,195,0,126,0,10,14,28,10,0,0,3,0, + 7,0,11,0,11,0,19,0,19,0,35,0,35,0,67,0, + 67,0,255,192,3,0,3,0,15,128,9,14,28,10,0,0, + 127,128,127,0,64,0,64,0,64,0,94,0,99,0,65,128, + 1,128,1,128,1,128,193,128,195,0,126,0,9,14,28,10, + 0,0,15,0,49,128,97,128,96,0,192,0,206,0,223,0, + 227,128,193,128,193,128,193,128,193,128,99,0,62,0,9,14, + 28,10,0,0,255,128,255,128,129,0,131,0,2,0,6,0, + 6,0,12,0,12,0,24,0,24,0,24,0,24,0,24,0, + 9,14,28,10,0,0,62,0,99,0,65,0,65,0,97,0, + 114,0,62,0,47,0,67,128,193,128,193,128,193,128,99,0, + 62,0,9,14,28,10,0,0,62,0,99,0,193,128,193,128, + 193,128,193,128,227,128,125,128,57,128,1,128,3,0,195,0, + 198,0,120,0,2,9,9,5,1,0,192,192,0,0,0,0, + 0,192,192,3,12,12,5,0,253,96,96,0,0,0,0,0, + 96,96,32,64,128,9,9,18,10,0,1,0,128,3,128,14, + 0,56,0,224,0,56,0,14,0,3,128,0,128,9,4,8, + 10,0,4,255,128,0,0,0,0,255,128,9,9,18,10,0, + 1,128,0,224,0,56,0,14,0,3,128,14,0,56,0,224, + 0,128,0,7,14,14,8,0,0,60,206,198,6,6,4,8, + 8,16,16,0,0,48,48,13,14,28,14,0,0,7,128,24, + 96,32,16,70,208,77,200,140,200,152,200,153,144,153,144,155, + 160,76,192,64,16,32,96,31,128,14,14,28,13,255,0,3, + 0,3,0,3,0,5,128,5,128,5,128,8,192,8,192,31, + 224,16,96,16,96,32,48,32,48,248,252,12,14,28,13,0, + 0,255,128,48,192,48,96,48,96,48,96,48,192,63,128,48, + 96,48,48,48,48,48,48,48,48,48,96,255,192,12,14,28, + 13,0,0,15,144,56,112,96,48,96,16,192,16,192,0,192, + 0,192,0,192,0,192,0,96,16,96,16,56,96,15,192,14, + 14,28,15,0,0,255,192,48,112,48,24,48,24,48,12,48, + 12,48,12,48,12,48,12,48,12,48,24,48,24,48,112,255, + 192,11,14,28,12,0,0,255,224,48,96,48,32,48,32,49, + 32,49,0,63,0,49,0,49,0,48,32,48,32,48,32,48, + 96,255,224,11,14,28,12,0,0,255,224,48,96,48,32,48, + 32,49,32,49,0,63,0,49,0,49,0,48,0,48,0,48, + 0,48,0,252,0,14,14,28,15,0,0,15,200,56,120,96, + 24,96,8,192,8,192,0,192,0,192,0,192,124,192,24,96, + 24,96,24,56,120,15,200,15,14,28,16,0,0,252,126,48, + 24,48,24,48,24,48,24,48,24,63,248,48,24,48,24,48, + 24,48,24,48,24,48,24,252,126,6,14,14,7,0,0,252, + 48,48,48,48,48,48,48,48,48,48,48,48,252,9,14,28, + 10,0,0,31,128,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,198,0,198,0,132,0,120,0,15, + 14,28,15,0,0,252,248,48,96,48,64,48,128,49,0,50, + 0,54,0,63,0,51,128,49,192,48,224,48,112,48,56,252, + 254,11,14,28,12,0,0,252,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,32,48,32,48,32,48, + 96,255,224,17,14,42,18,0,0,248,15,128,56,14,0,44, + 22,0,44,22,0,44,22,0,38,38,0,38,38,0,38,38, + 0,35,70,0,35,70,0,35,70,0,33,134,0,33,134,0, + 249,159,128,14,14,28,15,0,0,240,124,48,16,56,16,60, + 16,46,16,38,16,35,16,35,144,33,144,32,208,32,240,32, + 112,32,48,248,16,14,14,28,15,0,0,15,192,56,112,96, + 24,96,24,192,12,192,12,192,12,192,12,192,12,192,12,96, + 24,96,24,56,112,15,192,11,14,28,12,0,0,255,128,48, + 192,48,96,48,96,48,96,48,96,48,192,63,0,48,0,48, + 0,48,0,48,0,48,0,252,0,15,18,36,15,0,252,15, + 192,56,112,96,24,96,24,192,12,192,12,192,12,192,12,192, + 12,207,12,113,152,96,152,56,240,15,224,0,96,0,114,0, + 62,0,28,14,14,28,14,0,0,255,128,48,192,48,96,48, + 96,48,96,48,192,63,0,49,128,48,192,48,192,48,224,48, + 96,48,116,248,56,10,14,28,11,0,0,62,128,97,128,192, + 128,192,128,192,0,240,0,126,0,31,128,3,192,128,192,128, + 192,192,192,225,128,191,0,12,14,28,13,0,0,255,240,198, + 48,134,16,134,16,134,16,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,31,128,14,14,28,15,0,0,252, + 124,48,16,48,16,48,16,48,16,48,16,48,16,48,16,48, + 16,48,16,48,16,48,16,24,32,15,192,14,14,28,13,255, + 0,252,124,48,16,48,16,24,32,24,32,24,32,12,64,12, + 64,12,64,6,128,6,128,6,128,3,0,3,0,20,14,42, + 19,255,0,253,249,240,48,96,64,48,96,64,24,112,128,24, + 112,128,24,112,128,12,153,0,12,153,0,12,153,0,5,9, + 0,7,14,0,7,14,0,3,6,0,3,6,0,13,14,28, + 14,1,0,248,240,48,64,56,192,24,128,13,128,15,0,6, + 0,7,0,15,128,9,128,16,192,48,224,32,96,249,248,14, + 14,28,13,255,0,252,124,48,16,24,32,24,32,12,64,12, + 64,6,128,7,128,3,0,3,0,3,0,3,0,3,0,15, + 192,10,14,28,11,0,0,255,192,192,192,129,128,131,128,131, + 0,6,0,14,0,28,0,24,0,48,64,112,64,96,64,192, + 192,255,192,4,17,17,6,1,253,240,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,240,7,14,14,10,1,0, + 128,128,192,64,96,32,48,16,24,8,12,4,6,2,4,17, + 17,6,0,253,240,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,240,9,9,18,10,0,5,8,0,8,0,28, + 0,20,0,54,0,34,0,99,0,65,0,193,128,9,1,2, + 9,0,254,255,128,4,3,3,6,1,10,192,96,16,9,9, + 18,10,0,0,28,0,98,0,99,0,3,0,31,0,99,0, + 195,0,199,0,121,128,10,14,28,10,255,0,224,0,96,0, + 96,0,96,0,96,0,111,0,113,128,96,192,96,192,96,192, + 96,192,96,192,113,128,79,0,8,9,9,9,0,0,60,99, + 195,192,192,192,193,99,62,10,14,28,11,0,0,3,128,1, + 128,1,128,1,128,1,128,61,128,99,128,193,128,193,128,193, + 128,193,128,193,128,99,128,61,192,8,9,9,9,0,0,60, + 102,195,195,255,192,193,99,62,8,14,14,7,0,0,14,27, + 51,48,48,252,48,48,48,48,48,48,48,120,10,14,28,11, + 0,252,0,192,31,192,51,0,97,128,97,128,51,0,62,0, + 64,0,127,0,63,128,65,192,128,192,193,128,127,0,10,14, + 28,11,0,0,224,0,96,0,96,0,96,0,96,0,111,0, + 115,128,97,128,97,128,97,128,97,128,97,128,97,128,243,192, + 4,13,13,5,0,0,96,96,0,0,224,96,96,96,96,96, + 96,96,240,6,17,17,5,253,252,12,12,0,0,28,12,12, + 12,12,12,12,12,12,12,204,200,112,10,14,28,10,0,0, + 224,0,96,0,96,0,96,0,96,0,103,128,98,0,100,0, + 104,0,120,0,108,0,102,0,99,0,247,192,4,14,14,5, + 0,0,224,96,96,96,96,96,96,96,96,96,96,96,96,240, + 16,9,18,17,0,0,239,60,115,206,97,134,97,134,97,134, + 97,134,97,134,97,134,243,207,10,9,18,11,0,0,239,0, + 115,128,97,128,97,128,97,128,97,128,97,128,97,128,243,192, + 9,9,18,10,0,0,62,0,99,0,193,128,193,128,193,128, + 193,128,193,128,99,0,62,0,10,13,26,11,0,252,239,0, + 113,128,96,192,96,192,96,192,96,192,96,192,113,128,111,0, + 96,0,96,0,96,0,240,0,10,13,26,10,0,252,60,128, + 99,128,193,128,193,128,193,128,193,128,193,128,99,128,61,128, + 1,128,1,128,1,128,3,192,7,9,9,8,0,0,230,110, + 114,96,96,96,96,96,240,7,9,9,8,0,0,122,198,130, + 224,124,14,130,198,188,6,12,12,6,0,0,96,96,96,248, + 96,96,96,96,96,96,100,56,10,9,18,11,0,0,227,128, + 97,128,97,128,97,128,97,128,97,128,97,128,115,128,61,192, + 10,9,18,11,0,0,241,192,96,128,96,128,49,0,49,0, + 26,0,30,0,12,0,12,0,15,9,18,16,0,0,247,222, + 97,132,97,132,50,200,50,200,52,208,28,112,28,112,8,32, + 9,9,18,10,0,0,243,128,97,0,50,0,28,0,8,0, + 28,0,38,0,67,0,231,128,10,13,26,11,0,252,241,192, + 96,128,49,0,49,0,26,0,26,0,12,0,12,0,8,0, + 8,0,16,0,208,0,224,0,7,9,9,8,0,0,254,134, + 140,24,24,48,98,198,254,5,17,17,6,0,253,24,32,96, + 96,96,96,96,64,128,64,96,96,96,96,96,32,24,2,14, + 14,11,4,0,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,5,17,17,6,0,253,192,32,48,48,48,48,48,16, + 8,16,48,48,48,48,48,32,192,10,3,6,11,0,4,56, + 192,109,128,199,0,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,0,0,0,5,0,1,2,14,14,5, + 1,252,192,192,0,0,64,64,64,192,192,192,192,192,192,192, + 8,13,13,10,1,254,2,2,30,103,203,200,200,208,208,115, + 62,32,32,10,14,28,11,0,0,15,0,25,128,49,128,48, + 0,48,0,24,0,255,128,12,0,12,0,12,0,12,0,120, + 64,158,64,247,128,9,9,18,12,1,3,156,128,255,128,99, + 0,193,128,193,128,193,128,99,0,255,128,156,128,14,14,28, + 15,0,0,252,124,48,16,24,32,24,32,12,64,12,64,6, + 128,31,224,3,0,3,0,31,224,3,0,3,0,15,192,2, + 14,14,10,4,0,192,192,192,192,192,0,0,0,192,192,192, + 192,192,192,8,17,17,9,0,253,60,102,70,64,96,120,62, + 79,195,227,122,60,14,6,98,102,60,6,2,2,7,0,10, + 204,204,14,14,28,15,0,0,7,128,24,96,32,16,71,136, + 72,200,144,68,144,4,144,4,144,4,72,72,71,136,32,16, + 24,96,7,128,6,8,8,7,0,6,112,136,56,200,152,108, + 0,252,8,7,7,9,0,2,17,51,102,204,102,51,17,9, + 5,10,10,0,3,255,128,0,128,0,128,0,128,0,128,5, + 1,1,6,0,5,248,14,14,28,15,0,0,7,128,24,96, + 32,16,79,136,68,200,132,68,132,196,135,132,132,132,68,72, + 78,104,32,16,24,96,7,128,6,1,1,7,0,10,252,6, + 6,6,7,0,8,120,204,132,132,204,120,9,9,18,10,0, + 1,8,0,8,0,8,0,255,128,8,0,8,0,8,0,0, + 0,255,128,6,8,8,6,0,6,120,204,140,24,48,96,196, + 252,6,8,8,6,0,6,120,204,140,56,12,140,204,120,4, + 3,3,6,1,11,48,96,128,10,13,26,11,0,252,227,192, + 97,128,97,128,97,128,97,128,97,128,97,128,115,128,125,192, + 64,0,64,0,96,0,96,0,10,17,34,11,0,253,63,192, + 233,0,201,0,201,0,201,0,201,0,233,0,57,0,9,0, + 9,0,9,0,9,0,9,0,9,0,9,0,9,0,63,192, + 2,2,2,5,1,5,192,192,4,4,4,6,0,252,64,112, + 16,224,6,8,8,6,0,6,48,240,48,48,48,48,48,252, + 5,8,8,6,0,6,112,216,136,136,216,112,0,248,8,7, + 7,9,0,2,136,204,102,51,102,204,136,15,14,28,15,0, + 0,48,32,240,32,48,64,48,64,48,128,48,128,49,24,253, + 56,2,40,2,88,4,152,4,254,8,24,8,60,14,14,28, + 15,0,0,48,32,240,32,48,64,48,64,48,128,48,128,49, + 120,253,204,2,140,2,24,4,48,4,96,8,196,8,252,15, + 14,28,15,0,0,120,32,204,32,140,64,56,64,12,128,140, + 128,205,24,121,56,2,40,2,88,4,152,4,254,8,24,8, + 60,7,14,14,8,0,252,24,24,0,0,16,16,32,32,64, + 192,192,198,230,120,14,18,36,13,255,0,12,0,6,0,1, + 0,0,0,3,0,3,0,3,0,5,128,5,128,5,128,8, + 192,8,192,31,224,16,96,16,96,32,48,32,48,248,252,14, + 18,36,13,255,0,0,192,1,128,2,0,0,0,3,0,3, + 0,3,0,5,128,5,128,5,128,8,192,8,192,31,224,16, + 96,16,96,32,48,32,48,248,252,14,18,36,13,255,0,3, + 0,7,128,8,64,0,0,3,0,3,0,3,0,5,128,5, + 128,5,128,8,192,8,192,31,224,16,96,16,96,32,48,32, + 48,248,252,14,17,34,13,255,0,7,64,11,128,0,0,3, + 0,3,0,3,0,5,128,5,128,5,128,8,192,8,192,31, + 224,16,96,16,96,32,48,32,48,248,252,14,17,34,13,255, + 0,12,192,12,192,0,0,3,0,3,0,3,0,5,128,5, + 128,5,128,8,192,8,192,31,224,16,96,16,96,32,48,32, + 48,248,252,14,19,38,13,255,0,3,0,4,128,4,128,3, + 0,0,0,3,0,3,0,3,0,5,128,5,128,5,128,8, + 192,8,192,31,224,16,96,16,96,32,48,32,48,248,252,18, + 14,42,18,255,0,7,255,192,1,96,192,2,96,64,2,96, + 64,4,98,64,4,98,0,8,126,0,8,98,0,31,226,0, + 16,96,64,32,96,64,32,96,64,96,96,192,241,255,192,12, + 18,36,13,0,252,15,144,56,112,96,48,96,16,192,16,192, + 0,192,0,192,0,192,0,192,0,96,16,96,16,56,96,15, + 192,4,0,7,0,1,0,14,0,11,18,36,12,0,0,24, + 0,12,0,2,0,0,0,255,224,48,96,48,32,48,32,49, + 32,49,0,63,0,49,0,49,0,48,32,48,32,48,32,48, + 96,255,224,11,18,36,12,0,0,3,0,6,0,8,0,0, + 0,255,224,48,96,48,32,48,32,49,32,49,0,63,0,49, + 0,49,0,48,32,48,32,48,32,48,96,255,224,11,18,36, + 12,0,0,6,0,15,0,16,128,0,0,255,224,48,96,48, + 32,48,32,49,32,49,0,63,0,49,0,49,0,48,32,48, + 32,48,32,48,96,255,224,11,17,34,12,0,0,25,128,25, + 128,0,0,255,224,48,96,48,32,48,32,49,32,49,0,63, + 0,49,0,49,0,48,32,48,32,48,32,48,96,255,224,6, + 18,18,7,0,0,192,96,16,0,252,48,48,48,48,48,48, + 48,48,48,48,48,48,252,6,18,18,7,0,0,12,24,32, + 0,252,48,48,48,48,48,48,48,48,48,48,48,48,252,6, + 18,18,7,0,0,48,120,132,0,252,48,48,48,48,48,48, + 48,48,48,48,48,48,252,6,17,17,7,0,0,204,204,0, + 252,48,48,48,48,48,48,48,48,48,48,48,48,252,14,14, + 28,15,0,0,255,192,48,112,48,24,48,24,48,12,48,12, + 254,12,48,12,48,12,48,12,48,24,48,24,48,112,255,192, + 14,17,34,15,0,0,7,64,11,128,0,0,240,124,48,16, + 56,16,60,16,46,16,38,16,35,16,35,144,33,144,32,208, + 32,240,32,112,32,48,248,16,14,18,36,15,0,0,12,0, + 6,0,1,0,0,0,15,192,56,112,96,24,96,24,192,12, + 192,12,192,12,192,12,192,12,192,12,96,24,96,24,56,112, + 15,192,14,18,36,15,0,0,0,192,1,128,2,0,0,0, + 15,192,56,112,96,24,96,24,192,12,192,12,192,12,192,12, + 192,12,192,12,96,24,96,24,56,112,15,192,14,18,36,15, + 0,0,3,0,7,128,8,64,0,0,15,192,56,112,96,24, + 96,24,192,12,192,12,192,12,192,12,192,12,192,12,96,24, + 96,24,56,112,15,192,14,17,34,15,0,0,7,64,11,128, + 0,0,15,192,56,112,96,24,96,24,192,12,192,12,192,12, + 192,12,192,12,192,12,96,24,96,24,56,112,15,192,14,17, + 34,15,0,0,12,192,12,192,0,0,15,192,56,112,96,24, + 96,24,192,12,192,12,192,12,192,12,192,12,192,12,96,24, + 96,24,56,112,15,192,10,9,18,10,0,1,192,192,97,128, + 51,0,30,0,12,0,30,0,51,0,97,128,192,192,15,14, + 28,15,255,0,7,228,28,56,48,28,48,44,96,70,96,134, + 97,6,98,6,100,6,104,6,48,12,48,12,92,56,135,224, + 14,18,36,15,0,0,6,0,3,0,0,128,0,0,252,124, + 48,16,48,16,48,16,48,16,48,16,48,16,48,16,48,16, + 48,16,48,16,48,16,24,32,15,192,14,18,36,15,0,0, + 0,192,1,128,2,0,0,0,252,124,48,16,48,16,48,16, + 48,16,48,16,48,16,48,16,48,16,48,16,48,16,48,16, + 24,32,15,192,14,18,36,15,0,0,3,0,7,128,8,64, + 0,0,252,124,48,16,48,16,48,16,48,16,48,16,48,16, + 48,16,48,16,48,16,48,16,48,16,24,32,15,192,14,17, + 34,15,0,0,12,96,12,96,0,0,252,124,48,16,48,16, + 48,16,48,16,48,16,48,16,48,16,48,16,48,16,48,16, + 48,16,24,32,15,192,14,18,36,13,255,0,0,96,0,192, + 1,0,0,0,252,124,48,16,24,32,24,32,12,64,12,64, + 6,128,7,128,3,0,3,0,3,0,3,0,3,0,15,192, + 11,14,28,12,0,0,252,0,48,0,48,0,63,128,48,192, + 48,96,48,96,48,96,48,96,48,192,63,0,48,0,48,0, + 252,0,9,14,28,10,0,0,30,0,35,0,97,0,97,0, + 99,0,110,0,99,0,97,128,97,128,97,128,97,128,109,128, + 109,0,230,0,9,13,26,10,0,0,48,0,24,0,4,0, + 0,0,28,0,98,0,99,0,3,0,31,0,99,0,195,0, + 199,0,121,128,9,13,26,10,0,0,6,0,12,0,16,0, + 0,0,28,0,98,0,99,0,3,0,31,0,99,0,195,0, + 199,0,121,128,9,13,26,10,0,0,24,0,60,0,66,0, + 0,0,28,0,98,0,99,0,3,0,31,0,99,0,195,0, + 199,0,121,128,9,12,24,10,0,0,58,0,92,0,0,0, + 28,0,98,0,99,0,3,0,31,0,99,0,195,0,199,0, + 121,128,9,12,24,10,0,0,102,0,102,0,0,0,28,0, + 98,0,99,0,3,0,31,0,99,0,195,0,199,0,121,128, + 9,14,28,10,0,0,24,0,36,0,36,0,24,0,0,0, + 28,0,98,0,99,0,3,0,31,0,99,0,195,0,199,0, + 121,128,15,9,18,16,0,0,28,248,99,140,99,6,3,6, + 31,254,99,0,195,0,197,134,120,252,8,13,13,9,0,252, + 60,99,195,192,192,192,193,99,62,16,28,4,56,8,13,13, + 9,0,0,96,48,8,0,60,102,195,195,255,192,193,99,62, + 8,13,13,9,0,0,6,12,16,0,60,102,195,195,255,192, + 193,99,62,8,13,13,9,0,0,24,60,66,0,60,102,195, + 195,255,192,193,99,62,8,12,12,9,0,0,102,102,0,60, + 102,195,195,255,192,193,99,62,5,13,13,5,255,0,192,96, + 16,0,112,48,48,48,48,48,48,48,120,5,13,13,5,0, + 0,24,48,64,0,224,96,96,96,96,96,96,96,240,6,13, + 13,5,255,0,48,120,132,0,112,48,48,48,48,48,48,48, + 120,6,12,12,5,255,0,204,204,0,112,48,48,48,48,48, + 48,48,120,9,14,28,10,0,0,192,0,54,0,56,0,204, + 0,6,0,63,0,99,0,193,128,193,128,193,128,193,128,193, + 128,99,0,62,0,10,12,24,11,0,0,60,128,79,0,0, + 0,239,0,115,128,97,128,97,128,97,128,97,128,97,128,97, + 128,243,192,9,13,26,10,0,0,96,0,48,0,8,0,0, + 0,62,0,99,0,193,128,193,128,193,128,193,128,193,128,99, + 0,62,0,9,13,26,10,0,0,3,0,6,0,8,0,0, + 0,62,0,99,0,193,128,193,128,193,128,193,128,193,128,99, + 0,62,0,9,13,26,10,0,0,24,0,60,0,66,0,0, + 0,62,0,99,0,193,128,193,128,193,128,193,128,193,128,99, + 0,62,0,9,12,24,10,0,0,58,0,92,0,0,0,62, + 0,99,0,193,128,193,128,193,128,193,128,193,128,99,0,62, + 0,9,12,24,10,0,0,99,0,99,0,0,0,62,0,99, + 0,193,128,193,128,193,128,193,128,193,128,99,0,62,0,10, + 7,14,10,0,2,12,0,12,0,0,0,255,192,0,0,12, + 0,12,0,9,12,24,10,0,254,0,128,62,128,99,0,197, + 128,197,128,201,128,201,128,209,128,115,0,62,0,64,0,64, + 0,10,13,26,11,0,0,48,0,24,0,4,0,0,0,227, + 192,97,128,97,128,97,128,97,128,97,128,97,128,115,128,61, + 192,10,13,26,11,0,0,3,0,6,0,8,0,0,0,227, + 192,97,128,97,128,97,128,97,128,97,128,97,128,115,128,61, + 192,10,13,26,11,0,0,12,0,30,0,33,0,0,0,227, + 192,97,128,97,128,97,128,97,128,97,128,97,128,115,128,61, + 192,10,12,24,11,0,0,51,0,51,0,0,0,227,192,97, + 128,97,128,97,128,97,128,97,128,97,128,115,128,61,192,10, + 17,34,11,0,252,3,0,6,0,8,0,0,0,241,192,96, + 128,49,0,49,0,26,0,26,0,12,0,12,0,8,0,8, + 0,16,0,208,0,224,0,10,18,36,11,0,252,224,0,96, + 0,96,0,96,0,96,0,111,0,113,128,96,192,96,192,96, + 192,96,192,96,192,113,128,111,0,96,0,96,0,96,0,240, + 0,10,16,32,11,0,252,51,0,51,0,0,0,241,192,96, + 128,49,0,49,0,26,0,26,0,12,0,12,0,8,0,8, + 0,16,0,208,0,224,0}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--20-140-100-100-P-103-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=18 x= 4 y=10 dx=19 dy= 0 ascent=15 len=42 + Font Bounding box w=27 h=30 x=-4 y=-7 + Calculated Min Values x=-3 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =15 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR14r[2534] U8G_SECTION(".progmem.u8g_font_ncenR14r") = { + 0,27,30,252,249,14,3,41,7,30,32,127,252,15,252,14, + 252,0,0,0,5,0,1,2,14,14,5,1,0,192,192,192, + 192,192,192,192,128,128,128,0,0,192,192,4,5,5,7,1, + 9,144,144,144,144,144,10,13,26,11,0,0,9,0,9,0, + 9,0,9,0,127,192,18,0,18,0,18,0,255,128,36,0, + 36,0,36,0,36,0,9,17,34,10,0,254,8,0,8,0, + 63,0,105,128,201,128,200,0,232,0,120,0,30,0,15,0, + 11,128,9,128,201,128,203,0,126,0,8,0,8,0,15,14, + 28,16,0,0,28,32,50,32,99,192,98,64,196,128,196,128, + 201,28,113,50,2,98,2,98,4,196,4,196,8,200,8,112, + 13,14,28,14,0,0,30,0,51,0,33,0,35,0,54,0, + 28,0,57,248,124,96,238,64,199,128,195,128,193,200,227,240, + 124,96,1,5,5,4,1,9,128,128,128,128,128,6,17,17, + 7,0,253,4,24,48,96,96,192,192,192,192,192,192,192,96, + 96,48,24,4,6,17,17,7,0,253,128,96,48,24,24,12, + 12,12,12,12,12,12,24,24,48,96,128,7,7,7,10,1, + 7,16,146,214,56,214,146,16,9,9,18,10,0,1,8,0, + 8,0,8,0,8,0,255,128,8,0,8,0,8,0,8,0, + 3,5,5,5,0,253,96,96,32,64,128,5,1,1,6,0, + 5,248,2,2,2,5,1,0,192,192,5,14,14,6,0,0, + 8,8,8,16,16,16,32,32,32,64,64,64,128,128,9,14, + 28,10,0,0,28,0,99,0,99,0,193,128,193,128,193,128, + 193,128,193,128,193,128,193,128,193,128,99,0,99,0,28,0, + 8,14,14,10,1,0,24,248,24,24,24,24,24,24,24,24, + 24,24,24,255,9,14,28,10,0,0,30,0,99,0,193,128, + 193,128,1,128,1,128,3,0,6,0,12,0,24,0,48,128, + 96,128,255,128,255,128,9,14,28,10,0,0,62,0,99,0, + 97,128,1,128,1,128,3,0,30,0,3,0,1,128,1,128, + 1,128,193,128,195,0,126,0,10,14,28,10,0,0,3,0, + 7,0,11,0,11,0,19,0,19,0,35,0,35,0,67,0, + 67,0,255,192,3,0,3,0,15,128,9,14,28,10,0,0, + 127,128,127,0,64,0,64,0,64,0,94,0,99,0,65,128, + 1,128,1,128,1,128,193,128,195,0,126,0,9,14,28,10, + 0,0,15,0,49,128,97,128,96,0,192,0,206,0,223,0, + 227,128,193,128,193,128,193,128,193,128,99,0,62,0,9,14, + 28,10,0,0,255,128,255,128,129,0,131,0,2,0,6,0, + 6,0,12,0,12,0,24,0,24,0,24,0,24,0,24,0, + 9,14,28,10,0,0,62,0,99,0,65,0,65,0,97,0, + 114,0,62,0,47,0,67,128,193,128,193,128,193,128,99,0, + 62,0,9,14,28,10,0,0,62,0,99,0,193,128,193,128, + 193,128,193,128,227,128,125,128,57,128,1,128,3,0,195,0, + 198,0,120,0,2,9,9,5,1,0,192,192,0,0,0,0, + 0,192,192,3,12,12,5,0,253,96,96,0,0,0,0,0, + 96,96,32,64,128,9,9,18,10,0,1,0,128,3,128,14, + 0,56,0,224,0,56,0,14,0,3,128,0,128,9,4,8, + 10,0,4,255,128,0,0,0,0,255,128,9,9,18,10,0, + 1,128,0,224,0,56,0,14,0,3,128,14,0,56,0,224, + 0,128,0,7,14,14,8,0,0,60,206,198,6,6,4,8, + 8,16,16,0,0,48,48,13,14,28,14,0,0,7,128,24, + 96,32,16,70,208,77,200,140,200,152,200,153,144,153,144,155, + 160,76,192,64,16,32,96,31,128,14,14,28,13,255,0,3, + 0,3,0,3,0,5,128,5,128,5,128,8,192,8,192,31, + 224,16,96,16,96,32,48,32,48,248,252,12,14,28,13,0, + 0,255,128,48,192,48,96,48,96,48,96,48,192,63,128,48, + 96,48,48,48,48,48,48,48,48,48,96,255,192,12,14,28, + 13,0,0,15,144,56,112,96,48,96,16,192,16,192,0,192, + 0,192,0,192,0,192,0,96,16,96,16,56,96,15,192,14, + 14,28,15,0,0,255,192,48,112,48,24,48,24,48,12,48, + 12,48,12,48,12,48,12,48,12,48,24,48,24,48,112,255, + 192,11,14,28,12,0,0,255,224,48,96,48,32,48,32,49, + 32,49,0,63,0,49,0,49,0,48,32,48,32,48,32,48, + 96,255,224,11,14,28,12,0,0,255,224,48,96,48,32,48, + 32,49,32,49,0,63,0,49,0,49,0,48,0,48,0,48, + 0,48,0,252,0,14,14,28,15,0,0,15,200,56,120,96, + 24,96,8,192,8,192,0,192,0,192,0,192,124,192,24,96, + 24,96,24,56,120,15,200,15,14,28,16,0,0,252,126,48, + 24,48,24,48,24,48,24,48,24,63,248,48,24,48,24,48, + 24,48,24,48,24,48,24,252,126,6,14,14,7,0,0,252, + 48,48,48,48,48,48,48,48,48,48,48,48,252,9,14,28, + 10,0,0,31,128,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,198,0,198,0,132,0,120,0,15, + 14,28,15,0,0,252,248,48,96,48,64,48,128,49,0,50, + 0,54,0,63,0,51,128,49,192,48,224,48,112,48,56,252, + 254,11,14,28,12,0,0,252,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,32,48,32,48,32,48, + 96,255,224,17,14,42,18,0,0,248,15,128,56,14,0,44, + 22,0,44,22,0,44,22,0,38,38,0,38,38,0,38,38, + 0,35,70,0,35,70,0,35,70,0,33,134,0,33,134,0, + 249,159,128,14,14,28,15,0,0,240,124,48,16,56,16,60, + 16,46,16,38,16,35,16,35,144,33,144,32,208,32,240,32, + 112,32,48,248,16,14,14,28,15,0,0,15,192,56,112,96, + 24,96,24,192,12,192,12,192,12,192,12,192,12,192,12,96, + 24,96,24,56,112,15,192,11,14,28,12,0,0,255,128,48, + 192,48,96,48,96,48,96,48,96,48,192,63,0,48,0,48, + 0,48,0,48,0,48,0,252,0,15,18,36,15,0,252,15, + 192,56,112,96,24,96,24,192,12,192,12,192,12,192,12,192, + 12,207,12,113,152,96,152,56,240,15,224,0,96,0,114,0, + 62,0,28,14,14,28,14,0,0,255,128,48,192,48,96,48, + 96,48,96,48,192,63,0,49,128,48,192,48,192,48,224,48, + 96,48,116,248,56,10,14,28,11,0,0,62,128,97,128,192, + 128,192,128,192,0,240,0,126,0,31,128,3,192,128,192,128, + 192,192,192,225,128,191,0,12,14,28,13,0,0,255,240,198, + 48,134,16,134,16,134,16,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,31,128,14,14,28,15,0,0,252, + 124,48,16,48,16,48,16,48,16,48,16,48,16,48,16,48, + 16,48,16,48,16,48,16,24,32,15,192,14,14,28,13,255, + 0,252,124,48,16,48,16,24,32,24,32,24,32,12,64,12, + 64,12,64,6,128,6,128,6,128,3,0,3,0,20,14,42, + 19,255,0,253,249,240,48,96,64,48,96,64,24,112,128,24, + 112,128,24,112,128,12,153,0,12,153,0,12,153,0,5,9, + 0,7,14,0,7,14,0,3,6,0,3,6,0,13,14,28, + 14,1,0,248,240,48,64,56,192,24,128,13,128,15,0,6, + 0,7,0,15,128,9,128,16,192,48,224,32,96,249,248,14, + 14,28,13,255,0,252,124,48,16,24,32,24,32,12,64,12, + 64,6,128,7,128,3,0,3,0,3,0,3,0,3,0,15, + 192,10,14,28,11,0,0,255,192,192,192,129,128,131,128,131, + 0,6,0,14,0,28,0,24,0,48,64,112,64,96,64,192, + 192,255,192,4,17,17,6,1,253,240,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,240,7,14,14,10,1,0, + 128,128,192,64,96,32,48,16,24,8,12,4,6,2,4,17, + 17,6,0,253,240,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,240,9,9,18,10,0,5,8,0,8,0,28, + 0,20,0,54,0,34,0,99,0,65,0,193,128,9,1,2, + 9,0,254,255,128,4,3,3,6,1,10,192,96,16,9,9, + 18,10,0,0,28,0,98,0,99,0,3,0,31,0,99,0, + 195,0,199,0,121,128,10,14,28,10,255,0,224,0,96,0, + 96,0,96,0,96,0,111,0,113,128,96,192,96,192,96,192, + 96,192,96,192,113,128,79,0,8,9,9,9,0,0,60,99, + 195,192,192,192,193,99,62,10,14,28,11,0,0,3,128,1, + 128,1,128,1,128,1,128,61,128,99,128,193,128,193,128,193, + 128,193,128,193,128,99,128,61,192,8,9,9,9,0,0,60, + 102,195,195,255,192,193,99,62,8,14,14,7,0,0,14,27, + 51,48,48,252,48,48,48,48,48,48,48,120,10,14,28,11, + 0,252,0,192,31,192,51,0,97,128,97,128,51,0,62,0, + 64,0,127,0,63,128,65,192,128,192,193,128,127,0,10,14, + 28,11,0,0,224,0,96,0,96,0,96,0,96,0,111,0, + 115,128,97,128,97,128,97,128,97,128,97,128,97,128,243,192, + 4,13,13,5,0,0,96,96,0,0,224,96,96,96,96,96, + 96,96,240,6,17,17,5,253,252,12,12,0,0,28,12,12, + 12,12,12,12,12,12,12,204,200,112,10,14,28,10,0,0, + 224,0,96,0,96,0,96,0,96,0,103,128,98,0,100,0, + 104,0,120,0,108,0,102,0,99,0,247,192,4,14,14,5, + 0,0,224,96,96,96,96,96,96,96,96,96,96,96,96,240, + 16,9,18,17,0,0,239,60,115,206,97,134,97,134,97,134, + 97,134,97,134,97,134,243,207,10,9,18,11,0,0,239,0, + 115,128,97,128,97,128,97,128,97,128,97,128,97,128,243,192, + 9,9,18,10,0,0,62,0,99,0,193,128,193,128,193,128, + 193,128,193,128,99,0,62,0,10,13,26,11,0,252,239,0, + 113,128,96,192,96,192,96,192,96,192,96,192,113,128,111,0, + 96,0,96,0,96,0,240,0,10,13,26,10,0,252,60,128, + 99,128,193,128,193,128,193,128,193,128,193,128,99,128,61,128, + 1,128,1,128,1,128,3,192,7,9,9,8,0,0,230,110, + 114,96,96,96,96,96,240,7,9,9,8,0,0,122,198,130, + 224,124,14,130,198,188,6,12,12,6,0,0,96,96,96,248, + 96,96,96,96,96,96,100,56,10,9,18,11,0,0,227,128, + 97,128,97,128,97,128,97,128,97,128,97,128,115,128,61,192, + 10,9,18,11,0,0,241,192,96,128,96,128,49,0,49,0, + 26,0,30,0,12,0,12,0,15,9,18,16,0,0,247,222, + 97,132,97,132,50,200,50,200,52,208,28,112,28,112,8,32, + 9,9,18,10,0,0,243,128,97,0,50,0,28,0,8,0, + 28,0,38,0,67,0,231,128,10,13,26,11,0,252,241,192, + 96,128,49,0,49,0,26,0,26,0,12,0,12,0,8,0, + 8,0,16,0,208,0,224,0,7,9,9,8,0,0,254,134, + 140,24,24,48,98,198,254,5,17,17,6,0,253,24,32,96, + 96,96,96,96,64,128,64,96,96,96,96,96,32,24,2,14, + 14,11,4,0,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,5,17,17,6,0,253,192,32,48,48,48,48,48,16, + 8,16,48,48,48,48,48,32,192,10,3,6,11,0,4,56, + 192,109,128,199,0,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--25-180-100-100-P-136-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=25 h=24 x= 6 y=15 dx=25 dy= 0 ascent=24 len=72 + Font Bounding box w=31 h=37 x=-3 y=-8 + Calculated Min Values x=-2 y=-5 dx= 0 dy= 0 + Pure Font ascent =18 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =24 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR18[7488] U8G_SECTION(".progmem.u8g_font_ncenR18") = { + 0,31,37,253,248,18,4,33,9,197,32,255,251,24,251,18, + 251,0,0,0,7,0,1,3,18,18,7,2,0,64,224,224, + 224,224,224,224,224,224,224,224,64,64,64,0,224,224,224,6, + 6,6,10,2,12,204,204,204,204,204,204,13,16,32,15,1, + 1,12,96,12,96,12,96,12,96,12,96,127,248,24,192,24, + 192,24,192,24,192,255,240,49,128,49,128,49,128,49,128,49, + 128,11,22,44,13,1,254,4,0,4,0,31,0,101,128,68, + 192,196,192,197,192,197,128,228,0,252,0,127,0,31,192,7, + 192,4,224,100,96,228,96,196,96,196,64,100,192,63,0,4, + 0,4,0,18,19,57,20,1,255,30,24,0,51,40,0,97, + 216,0,97,16,0,193,48,0,193,32,0,194,96,0,194,64, + 0,196,199,128,120,140,192,1,152,64,1,24,64,3,48,64, + 2,48,64,6,48,128,4,48,128,12,49,0,8,30,0,8, + 0,0,18,18,54,20,1,0,7,192,0,12,224,0,24,96, + 0,24,96,0,24,96,0,24,192,0,13,128,0,14,0,0, + 30,63,128,103,30,0,99,140,0,193,200,0,192,232,0,192, + 112,0,224,56,64,112,124,64,127,207,128,31,7,0,2,6, + 6,6,2,12,192,192,192,192,192,192,7,21,21,9,1,253, + 2,12,24,48,48,96,96,192,192,192,192,192,192,192,96,96, + 48,48,24,12,2,7,21,21,8,0,253,128,96,48,24,24, + 12,12,6,6,6,6,6,6,6,12,12,24,24,48,96,128, + 7,9,9,9,1,9,16,56,146,214,56,214,146,56,16,12, + 12,24,14,1,1,6,0,6,0,6,0,6,0,6,0,255, + 240,255,240,6,0,6,0,6,0,6,0,6,0,4,7,7, + 6,1,252,96,240,240,48,32,64,128,6,2,2,8,1,6, + 252,252,3,3,3,7,2,0,224,224,224,7,18,18,8,0, + 0,6,6,6,12,12,12,24,24,24,48,48,48,96,96,96, + 192,192,192,11,18,36,13,1,0,14,0,17,0,49,128,32, + 128,96,192,96,192,224,224,224,224,224,224,224,224,224,224,224, + 224,96,192,96,192,32,128,49,128,17,0,14,0,8,18,18, + 13,3,0,8,56,248,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,255,11,18,36,13,1,0,31,0,113,192,64, + 192,224,224,224,224,64,224,0,192,1,192,1,128,3,0,6, + 0,12,0,24,0,48,32,96,32,192,96,255,224,255,224,11, + 18,36,13,1,0,31,0,99,128,193,192,225,192,225,192,65, + 128,1,128,3,0,31,0,1,128,0,192,0,224,64,224,224, + 224,224,192,193,192,97,128,30,0,12,18,36,13,0,0,0, + 64,0,192,1,192,3,192,6,192,12,192,8,192,24,192,48, + 192,96,192,64,192,192,192,128,192,255,240,0,192,0,192,0, + 192,3,240,11,18,36,13,1,0,127,192,127,128,64,0,64, + 0,64,0,64,0,64,0,95,0,99,128,0,192,0,192,0, + 224,96,224,224,224,224,192,64,192,97,128,31,0,11,18,36, + 13,1,0,15,128,56,224,32,224,96,96,96,0,96,0,224, + 0,239,0,241,128,224,192,224,192,224,224,224,224,96,224,96, + 192,96,192,49,128,31,0,10,18,36,13,2,0,255,192,255, + 192,128,128,129,128,1,0,3,0,3,0,2,0,6,0,6, + 0,4,0,12,0,12,0,12,0,28,0,28,0,28,0,8, + 0,11,18,36,13,1,0,31,0,49,128,32,128,96,192,96, + 192,112,192,57,128,63,0,31,0,55,128,97,192,192,224,192, + 96,192,96,192,96,96,192,113,192,31,0,11,18,36,13,1, + 0,31,0,49,128,112,192,96,192,224,224,224,224,224,224,96, + 224,112,224,49,224,30,224,0,224,0,192,0,192,193,192,225, + 128,227,128,62,0,3,12,12,7,2,0,224,224,224,0,0, + 0,0,0,0,224,224,224,4,16,16,7,2,252,224,224,224, + 0,0,0,0,0,0,96,240,240,48,32,64,128,12,12,24, + 14,1,1,0,48,0,240,3,192,15,0,60,0,240,0,240, + 0,60,0,15,0,3,192,0,240,0,48,12,6,12,15,1, + 4,255,240,255,240,0,0,0,0,255,240,255,240,12,12,24, + 14,1,1,192,0,240,0,60,0,15,0,3,192,0,240,0, + 240,3,192,15,0,60,0,240,0,192,0,10,18,36,12,1, + 0,30,0,99,128,193,192,225,192,225,192,1,192,3,128,7, + 0,14,0,12,0,24,0,16,0,16,0,0,0,0,0,56, + 0,56,0,56,0,17,18,54,19,1,0,1,248,0,6,6, + 0,24,3,0,16,1,128,96,216,128,99,56,128,198,24,128, + 198,24,128,204,24,128,204,49,0,204,49,0,204,114,0,196, + 180,0,195,56,0,96,1,0,96,2,0,24,12,0,31,248, + 0,19,18,54,19,0,0,0,64,0,0,96,0,0,224,0, + 0,240,0,1,48,0,1,56,0,2,24,0,2,28,0,4, + 12,0,4,12,0,8,14,0,15,254,0,16,6,0,16,7, + 0,32,3,0,32,3,128,96,3,128,248,15,224,14,18,36, + 18,2,0,255,192,48,112,48,48,48,56,48,56,48,56,48, + 48,48,96,63,240,48,56,48,24,48,28,48,28,48,28,48, + 28,48,24,48,56,255,224,15,18,36,17,1,0,7,242,28, + 30,56,6,48,2,112,2,96,2,224,0,224,0,224,0,224, + 0,224,0,224,0,96,2,112,2,48,6,56,4,28,28,7, + 240,16,18,36,20,2,0,255,224,48,56,48,12,48,12,48, + 6,48,6,48,7,48,7,48,7,48,7,48,7,48,7,48, + 6,48,6,48,12,48,12,48,56,255,224,13,18,36,16,1, + 0,255,248,48,56,48,24,48,8,48,8,48,136,48,128,49, + 128,63,128,49,128,48,128,48,128,48,8,48,8,48,8,48, + 24,48,56,255,248,13,18,36,16,1,0,255,248,48,56,48, + 24,48,8,48,8,48,136,48,128,49,128,63,128,49,128,48, + 128,48,128,48,0,48,0,48,0,48,0,48,0,252,0,17, + 18,54,18,1,0,7,250,0,28,30,0,48,6,0,48,6, + 0,112,2,0,96,2,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,63,128,224,6,0,96,6,0,112,6,0,48, + 6,0,48,14,0,28,30,0,7,242,0,17,18,54,21,2, + 0,252,31,128,48,6,0,48,6,0,48,6,0,48,6,0, + 48,6,0,48,6,0,48,6,0,63,254,0,48,6,0,48, + 6,0,48,6,0,48,6,0,48,6,0,48,6,0,48,6, + 0,48,6,0,252,31,128,6,18,18,9,2,0,252,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,252,11, + 18,36,14,1,0,7,224,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,97,128,241,128,225, + 128,193,128,193,128,99,0,62,0,18,18,54,20,2,0,252, + 127,0,48,28,0,48,24,0,48,48,0,48,96,0,48,192, + 0,49,128,0,51,0,0,55,0,0,63,128,0,57,192,0, + 48,224,0,48,112,0,48,56,0,48,28,0,48,14,0,48, + 7,0,252,31,192,13,18,36,16,2,0,254,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,8,48,8,48,8,48,24,48,56,255,248,20, + 18,54,23,1,0,252,1,240,60,1,192,30,3,192,22,2, + 192,23,2,192,19,2,192,19,4,192,19,132,192,17,132,192, + 17,136,192,17,200,192,16,200,192,16,208,192,16,240,192,16, + 112,192,16,96,192,56,96,192,254,35,240,19,18,54,21,1, + 0,248,15,224,60,3,128,28,1,0,30,1,0,23,1,0, + 19,129,0,17,129,0,16,193,0,16,225,0,16,97,0,16, + 49,0,16,57,0,16,29,0,16,15,0,16,7,0,16,7, + 0,56,3,0,254,1,0,17,18,54,19,1,0,7,240,0, + 28,28,0,48,6,0,48,6,0,112,7,0,96,3,0,224, + 3,128,224,3,128,224,3,128,224,3,128,224,3,128,224,3, + 128,96,3,0,112,7,0,48,6,0,48,6,0,28,28,0, + 7,240,0,13,18,36,16,2,0,255,192,48,112,48,48,48, + 56,48,56,48,56,48,56,48,48,48,112,63,192,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,252,0,17,22,66, + 19,1,252,7,240,0,28,28,0,48,6,0,48,6,0,112, + 7,0,96,3,0,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,227,195,128,100,99,0,104,39,0,56,54,0, + 56,22,0,28,28,0,7,248,0,0,24,128,0,12,128,0, + 15,0,0,6,0,15,18,36,18,2,0,255,192,48,112,48, + 48,48,56,48,56,48,56,48,48,48,96,63,128,49,192,48, + 224,48,96,48,112,48,112,48,50,48,50,48,60,252,28,13, + 18,36,15,1,0,31,144,112,240,64,48,192,48,192,16,224, + 16,120,0,62,0,15,128,3,224,0,240,0,56,128,24,128, + 24,192,24,192,48,240,112,159,192,14,18,36,17,1,0,255, + 252,227,28,195,12,131,4,131,4,131,4,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,31,224,16,18,36,19,2,0,252,31,48,14,48,4,48, + 4,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,56,12,24,8,30,56,7,224,18,18,54, + 18,0,0,254,7,192,56,1,0,24,1,0,28,2,0,28, + 2,0,12,2,0,14,4,0,6,4,0,7,8,0,7,8, + 0,3,8,0,3,144,0,1,144,0,1,160,0,1,224,0, + 0,224,0,0,192,0,0,64,0,25,18,72,25,0,0,254, + 63,143,128,56,14,2,0,56,14,2,0,24,14,2,0,24, + 22,4,0,28,23,4,0,12,19,4,0,12,19,4,0,14, + 35,136,0,6,33,136,0,6,33,136,0,7,65,208,0,3, + 64,208,0,3,192,240,0,3,128,240,0,1,128,96,0,1, + 128,96,0,0,128,32,0,19,18,54,19,0,0,127,143,128, + 30,6,0,14,4,0,7,8,0,7,16,0,3,144,0,1, + 160,0,1,192,0,0,224,0,0,224,0,1,112,0,1,56, + 0,2,28,0,4,28,0,4,14,0,8,7,0,24,7,128, + 252,31,224,16,18,36,17,0,0,252,63,56,12,24,8,28, + 24,12,16,14,48,6,32,7,96,3,64,3,192,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,7,224,14,18,36, + 16,1,0,127,252,112,24,96,56,64,48,64,96,0,224,0, + 192,1,128,3,128,3,0,6,0,14,0,28,0,24,4,48, + 4,112,12,96,28,255,252,5,21,21,7,2,253,248,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,248,10,18,36,11,0,0,192,0,192,0,96,0,96,0, + 48,0,48,0,24,0,24,0,12,0,12,0,6,0,6,0, + 3,0,3,0,1,128,1,128,0,192,0,192,5,21,21,7, + 0,253,248,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,248,10,10,20,12,1,8,12,0,12, + 0,30,0,30,0,51,0,51,0,97,128,97,128,192,192,192, + 192,12,2,4,12,0,253,255,240,255,240,5,4,4,8,1, + 14,192,224,48,8,12,12,24,13,1,0,31,0,113,128,112, + 192,96,192,0,192,7,192,56,192,96,192,192,192,192,192,225, + 240,126,96,13,18,36,14,0,0,240,0,48,0,48,0,48, + 0,48,0,48,0,55,192,60,112,56,48,48,56,48,24,48, + 24,48,24,48,24,48,56,56,48,60,112,39,192,10,12,24, + 12,1,0,31,0,113,192,97,192,224,192,192,0,192,0,192, + 0,192,0,224,0,96,64,112,192,31,128,13,18,36,14,1, + 0,1,224,0,96,0,96,0,96,0,96,0,96,30,96,113, + 224,96,224,224,96,192,96,192,96,192,96,192,96,224,96,96, + 224,113,224,31,120,11,12,24,13,1,0,31,0,113,192,96, + 192,224,224,192,96,255,224,192,0,192,0,224,0,96,64,112, + 192,31,128,9,18,36,8,1,0,15,0,25,128,49,128,48, + 0,48,0,48,0,252,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,252,0,13,17,34, + 12,0,251,31,56,49,216,96,192,96,192,96,192,96,192,49, + 128,31,0,48,0,96,0,63,0,31,192,96,224,192,96,192, + 96,224,192,127,128,14,18,36,14,0,0,240,0,48,0,48, + 0,48,0,48,0,48,0,49,192,55,224,56,112,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,252,252,6, + 18,18,8,1,0,48,48,48,0,0,0,240,48,48,48,48, + 48,48,48,48,48,48,252,7,23,23,8,254,251,6,6,6, + 0,0,0,30,6,6,6,6,6,6,6,6,6,6,6,6, + 6,198,204,120,14,18,36,15,1,0,240,0,48,0,48,0, + 48,0,48,0,48,0,51,240,48,192,49,128,51,0,54,0, + 62,0,55,0,51,128,49,192,48,224,48,112,252,252,6,18, + 18,8,1,0,240,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,252,22,12,36,22,0,0,241,193,192,55, + 231,224,56,120,112,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,252,252,252, + 14,12,24,14,0,0,241,192,55,224,56,112,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,252,252,11,12, + 24,13,1,0,31,0,113,192,96,192,224,224,192,96,192,96, + 192,96,192,96,224,224,96,192,113,192,31,0,13,17,34,14, + 0,251,247,192,60,112,56,48,48,56,48,24,48,24,48,24, + 48,24,48,56,56,48,60,112,55,192,48,0,48,0,48,0, + 48,0,252,0,13,17,34,14,1,251,30,32,113,224,96,224, + 224,96,192,96,192,96,192,96,192,96,224,96,96,224,113,224, + 31,96,0,96,0,96,0,96,0,96,1,248,10,12,24,10, + 0,0,243,128,53,192,56,192,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,252,0,9,12,24,11,1,0, + 61,0,103,0,195,0,193,0,224,0,124,0,31,0,3,128, + 129,128,193,128,227,0,190,0,8,16,16,10,1,0,16,16, + 48,112,255,48,48,48,48,48,48,48,49,49,57,30,14,12, + 24,14,0,0,240,240,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,56,112,31,176,14,60,15,12,24,13, + 255,0,252,126,48,24,48,16,56,48,24,32,28,96,12,64, + 14,192,6,128,7,128,3,0,3,0,19,12,36,17,255,0, + 252,243,224,48,96,128,48,96,128,48,112,128,56,177,0,24, + 177,0,24,177,0,29,58,0,13,26,0,13,26,0,14,28, + 0,6,12,0,13,12,24,12,0,0,248,240,112,96,56,192, + 25,128,15,0,7,0,7,0,13,128,24,192,48,224,96,112, + 240,248,13,17,34,12,255,251,120,56,48,16,56,32,24,32, + 24,96,28,64,12,192,14,128,6,128,7,128,3,0,3,0, + 2,0,2,0,196,0,236,0,120,0,9,12,24,11,1,0, + 255,128,195,128,135,0,134,0,12,0,28,0,24,0,48,0, + 112,128,224,128,193,128,255,128,6,21,21,8,1,253,12,16, + 48,48,48,48,48,48,48,32,192,32,48,48,48,48,48,48, + 48,16,12,2,18,18,15,6,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,6,21,21,7,1, + 253,192,32,48,48,48,48,48,48,48,16,12,16,48,48,48, + 48,48,48,48,32,192,12,4,8,14,1,6,60,48,126,112, + 231,224,195,192,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,7,0,1,3,19,19,7,2, + 251,224,224,224,0,0,64,64,64,224,224,224,224,224,224,224, + 224,224,224,64,10,18,36,14,2,253,0,64,0,64,0,128, + 31,128,113,192,97,192,226,192,194,0,196,0,196,0,200,0, + 232,0,112,64,112,192,63,0,32,0,64,0,64,0,13,18, + 36,14,0,0,3,192,14,48,12,112,28,112,28,32,28,0, + 28,0,14,0,127,192,7,0,7,0,7,0,7,0,7,0, + 118,8,140,8,143,240,115,224,13,12,24,15,1,4,71,16, + 255,248,112,112,32,32,96,48,96,48,96,48,96,48,32,32, + 112,112,255,248,71,16,16,18,36,17,0,0,252,63,56,12, + 24,8,28,24,12,16,14,48,6,32,7,96,3,64,3,192, + 31,248,1,128,1,128,31,248,1,128,1,128,1,128,15,240, + 2,18,18,15,6,0,192,192,192,192,192,192,192,0,0,0, + 192,192,192,192,192,192,192,192,10,22,44,12,1,252,31,0, + 35,128,97,128,97,128,120,0,60,0,31,0,47,128,67,192, + 193,192,192,192,224,192,240,192,124,128,63,0,15,0,3,128, + 1,128,97,128,97,128,113,0,62,0,6,2,2,8,1,15, + 204,204,18,18,54,20,1,0,3,240,0,12,12,0,16,2, + 0,32,1,0,67,240,128,70,24,128,140,8,64,140,0,64, + 140,0,64,140,0,64,140,0,64,140,8,64,70,24,128,67, + 224,128,32,1,0,16,2,0,12,12,0,3,240,0,7,10, + 10,9,1,8,120,76,4,124,196,204,118,0,0,254,10,7, + 14,12,1,3,24,192,49,128,99,0,198,0,99,0,49,128, + 24,192,12,7,14,14,1,3,255,240,255,240,0,48,0,48, + 0,48,0,48,0,48,6,2,2,8,1,6,252,252,18,18, + 54,20,1,0,3,240,0,12,12,0,16,2,0,32,1,0, + 71,240,128,67,24,128,131,24,64,131,24,64,131,16,64,131, + 224,64,131,48,64,131,24,64,67,12,128,71,142,128,32,1, + 0,16,2,0,12,12,0,3,240,0,7,1,1,9,1,15, + 254,8,7,7,9,0,11,60,102,195,195,195,102,60,12,11, + 22,14,1,2,6,0,6,0,6,0,255,240,255,240,6,0, + 6,0,6,0,0,0,255,240,255,240,7,11,11,8,0,7, + 124,198,198,6,12,24,48,96,192,194,254,7,11,11,8,0, + 7,124,198,198,6,12,60,6,6,198,198,124,5,4,4,8, + 2,15,24,56,96,128,14,17,34,14,0,251,240,240,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,56,112, + 63,176,46,60,32,0,32,0,112,0,112,0,32,0,13,22, + 44,15,1,252,31,248,115,48,227,48,227,48,227,48,227,48, + 227,48,227,48,115,48,31,48,3,48,3,48,3,48,3,48, + 3,48,3,48,3,48,3,48,3,48,3,48,3,48,7,248, + 3,3,3,7,2,5,224,224,224,4,4,4,7,1,252,64, + 112,16,224,6,11,11,8,1,7,16,48,240,48,48,48,48, + 48,48,48,252,7,10,10,9,1,8,56,68,198,198,198,68, + 56,0,0,254,10,7,14,12,1,3,198,0,99,0,49,128, + 24,192,49,128,99,0,198,0,18,18,54,19,0,0,16,4, + 0,48,12,0,240,8,0,48,24,0,48,16,0,48,48,0, + 48,32,0,48,99,0,48,71,0,48,207,0,252,139,0,1, + 155,0,1,19,0,3,51,0,2,99,0,6,127,192,4,3, + 0,12,7,128,18,18,54,19,0,0,16,8,0,48,24,0, + 240,16,0,48,48,0,48,32,0,48,96,0,48,64,0,48, + 207,128,48,152,192,49,152,192,253,0,192,3,1,128,2,3, + 0,6,6,0,4,12,0,12,24,0,8,24,64,24,31,192, + 18,18,54,19,0,0,124,4,0,198,12,0,198,8,0,6, + 24,0,12,16,0,60,48,0,6,32,0,6,99,0,198,71, + 0,198,207,0,124,139,0,1,155,0,1,19,0,3,51,0, + 2,99,0,6,127,192,4,3,0,12,7,128,10,18,36,12, + 1,252,7,0,7,0,7,0,0,0,0,0,2,0,2,0, + 6,0,12,0,28,0,56,0,112,0,224,0,225,192,225,192, + 224,192,113,128,30,0,19,23,69,19,0,0,3,0,0,3, + 128,0,0,192,0,0,32,0,0,0,0,0,64,0,0,96, + 0,0,224,0,0,240,0,1,48,0,1,56,0,2,24,0, + 2,28,0,4,12,0,4,12,0,8,14,0,15,254,0,16, + 6,0,16,7,0,32,3,0,32,3,128,96,3,128,248,15, + 224,19,23,69,19,0,0,0,24,0,0,56,0,0,96,0, + 0,128,0,0,0,0,0,64,0,0,96,0,0,224,0,0, + 240,0,1,48,0,1,56,0,2,24,0,2,28,0,4,12, + 0,4,12,0,8,14,0,15,254,0,16,6,0,16,7,0, + 32,3,0,32,3,128,96,3,128,248,15,224,19,23,69,19, + 0,0,0,96,0,0,240,0,1,152,0,2,4,0,0,0, + 0,0,64,0,0,96,0,0,224,0,0,240,0,1,48,0, + 1,56,0,2,24,0,2,28,0,4,12,0,4,12,0,8, + 14,0,15,254,0,16,6,0,16,7,0,32,3,0,32,3, + 128,96,3,128,248,15,224,19,22,66,19,0,0,1,196,0, + 3,248,0,4,112,0,0,0,0,0,64,0,0,96,0,0, + 224,0,0,240,0,1,48,0,1,56,0,2,24,0,2,28, + 0,4,12,0,4,12,0,8,14,0,15,254,0,16,6,0, + 16,7,0,32,3,0,32,3,128,96,3,128,248,15,224,19, + 22,66,19,0,0,3,24,0,3,24,0,0,0,0,0,0, + 0,0,64,0,0,96,0,0,224,0,0,240,0,1,48,0, + 1,56,0,2,24,0,2,28,0,4,12,0,4,12,0,8, + 14,0,15,254,0,16,6,0,16,7,0,32,3,0,32,3, + 128,96,3,128,248,15,224,19,24,72,19,0,0,0,224,0, + 1,16,0,1,16,0,1,16,0,0,224,0,0,0,0,0, + 64,0,0,96,0,0,224,0,0,240,0,1,48,0,1,56, + 0,2,24,0,2,28,0,4,12,0,4,12,0,8,14,0, + 15,254,0,16,6,0,16,7,0,32,3,0,32,3,128,96, + 3,128,248,15,224,24,18,54,25,0,0,1,255,255,0,38, + 7,0,102,3,0,70,1,0,198,1,0,134,17,1,134,16, + 1,6,48,3,7,240,2,6,48,7,254,16,4,6,16,12, + 6,1,8,6,1,24,6,1,16,6,3,48,6,7,252,31, + 255,15,23,46,17,1,251,7,242,28,30,56,6,48,2,112, + 2,96,2,224,0,224,0,224,0,224,0,224,0,224,0,96, + 2,112,2,48,6,56,4,28,28,7,240,3,224,1,0,1, + 192,0,64,3,128,13,23,46,16,1,0,24,0,28,0,6, + 0,1,0,0,0,255,248,48,56,48,24,48,8,48,8,48, + 136,48,128,49,128,63,128,49,128,48,128,48,128,48,8,48, + 8,48,8,48,24,48,56,255,248,13,23,46,16,1,0,0, + 96,0,224,1,128,2,0,0,0,255,248,48,56,48,24,48, + 8,48,8,48,136,48,128,49,128,63,128,49,128,48,128,48, + 128,48,8,48,8,48,8,48,24,48,56,255,248,13,23,46, + 16,1,0,3,0,7,128,12,192,16,32,0,0,255,248,48, + 56,48,24,48,8,48,8,48,136,48,128,49,128,63,128,49, + 128,48,128,48,128,48,8,48,8,48,8,48,24,48,56,255, + 248,13,22,44,16,1,0,12,96,12,96,0,0,0,0,255, + 248,48,56,48,24,48,8,48,8,48,136,48,128,49,128,63, + 128,49,128,48,128,48,128,48,8,48,8,48,8,48,24,48, + 56,255,248,6,23,23,9,2,0,192,224,48,8,0,252,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,252, + 7,23,23,9,2,0,6,14,24,32,0,252,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,252,8,23,23, + 9,1,0,24,60,102,129,0,126,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,24,126,7,22,22,9,2,0, + 198,198,0,0,252,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,252,16,18,36,20,2,0,255,224,48,56, + 48,12,48,12,48,6,48,6,48,7,48,7,254,7,48,7, + 48,7,48,7,48,6,48,6,48,12,48,12,48,56,255,224, + 19,22,66,21,1,0,1,196,0,3,248,0,4,112,0,0, + 0,0,248,15,224,60,3,128,28,1,0,30,1,0,23,1, + 0,19,129,0,17,129,0,16,193,0,16,225,0,16,97,0, + 16,49,0,16,57,0,16,29,0,16,15,0,16,7,0,16, + 7,0,56,3,0,254,1,0,17,23,69,19,1,0,12,0, + 0,14,0,0,3,0,0,0,128,0,0,0,0,7,240,0, + 28,28,0,48,6,0,48,6,0,112,7,0,96,3,0,224, + 3,128,224,3,128,224,3,128,224,3,128,224,3,128,224,3, + 128,96,3,0,112,7,0,48,6,0,48,6,0,28,28,0, + 7,240,0,17,23,69,19,1,0,0,24,0,0,56,0,0, + 96,0,0,128,0,0,0,0,7,240,0,28,28,0,48,6, + 0,48,6,0,112,7,0,96,3,0,224,3,128,224,3,128, + 224,3,128,224,3,128,224,3,128,224,3,128,96,3,0,112, + 7,0,48,6,0,48,6,0,28,28,0,7,240,0,17,23, + 69,19,1,0,0,192,0,1,224,0,3,48,0,4,8,0, + 0,0,0,7,240,0,28,28,0,48,6,0,48,6,0,112, + 7,0,96,3,0,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,224,3,128,96,3,0,112,7,0,48,6,0, + 48,6,0,28,28,0,7,240,0,17,22,66,19,1,0,3, + 136,0,7,240,0,8,224,0,0,0,0,7,240,0,28,28, + 0,48,6,0,48,6,0,112,7,0,96,3,0,224,3,128, + 224,3,128,224,3,128,224,3,128,224,3,128,224,3,128,96, + 3,0,112,7,0,48,6,0,48,6,0,28,28,0,7,240, + 0,17,22,66,19,1,0,6,48,0,6,48,0,0,0,0, + 0,0,0,7,240,0,28,28,0,48,6,0,48,6,0,112, + 7,0,96,3,0,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,224,3,128,96,3,0,112,7,0,48,6,0, + 48,6,0,28,28,0,7,240,0,13,12,24,14,1,1,192, + 24,96,48,48,96,24,192,13,128,7,0,7,0,13,128,24, + 192,48,96,96,48,192,24,17,19,57,19,1,0,0,3,0, + 7,246,0,28,28,0,48,14,0,48,30,0,96,51,0,96, + 99,0,224,67,128,224,195,128,225,131,128,227,3,128,226,3, + 128,230,3,128,108,3,0,120,3,0,48,6,0,48,6,0, + 124,28,0,199,240,0,16,23,46,19,2,0,6,0,7,0, + 1,128,0,64,0,0,252,31,48,14,48,4,48,4,48,4, + 48,4,48,4,48,4,48,4,48,4,48,4,48,4,48,4, + 48,4,56,12,24,8,30,56,7,224,16,23,46,19,2,0, + 0,48,0,112,0,192,1,0,0,0,252,31,48,14,48,4, + 48,4,48,4,48,4,48,4,48,4,48,4,48,4,48,4, + 48,4,48,4,48,4,56,12,24,8,30,56,7,224,16,23, + 46,19,2,0,1,128,3,192,6,96,8,16,0,0,252,31, + 48,14,48,4,48,4,48,4,48,4,48,4,48,4,48,4, + 48,4,48,4,48,4,48,4,48,4,56,12,24,8,30,56, + 7,224,16,22,44,19,2,0,6,48,6,48,0,0,0,0, + 252,31,48,14,48,4,48,4,48,4,48,4,48,4,48,4, + 48,4,48,4,48,4,48,4,48,4,48,4,56,12,24,8, + 30,56,7,224,16,23,46,17,0,0,0,48,0,112,0,192, + 1,0,0,0,252,63,56,12,24,8,28,24,12,16,14,48, + 6,32,7,96,3,64,3,192,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,7,224,13,18,36,16,2,0,252,0, + 48,0,48,0,48,0,63,128,48,224,48,48,48,56,48,56, + 48,56,48,56,48,48,48,224,63,128,48,0,48,0,48,0, + 252,0,12,18,36,14,1,0,15,128,24,192,48,96,48,96, + 48,96,48,96,48,192,51,192,48,96,48,48,48,48,48,48, + 48,48,48,48,54,48,54,48,54,96,243,192,12,18,36,13, + 1,0,24,0,28,0,6,0,1,0,0,0,0,0,31,0, + 113,128,112,192,96,192,0,192,7,192,56,192,96,192,192,192, + 192,192,225,240,126,96,12,18,36,13,1,0,1,128,3,128, + 6,0,8,0,0,0,0,0,31,0,113,128,112,192,96,192, + 0,192,7,192,56,192,96,192,192,192,192,192,225,240,126,96, + 12,18,36,13,1,0,6,0,15,0,25,128,32,64,0,0, + 0,0,31,0,113,128,112,192,96,192,0,192,7,192,56,192, + 96,192,192,192,192,192,225,240,126,96,12,17,34,13,1,0, + 28,64,63,128,71,0,0,0,0,0,31,0,113,128,112,192, + 96,192,0,192,7,192,56,192,96,192,192,192,192,192,225,240, + 126,96,12,16,32,13,1,0,25,128,25,128,0,0,0,0, + 31,0,113,128,112,192,96,192,0,192,7,192,56,192,96,192, + 192,192,192,192,225,240,126,96,12,19,38,13,1,0,14,0, + 17,0,17,0,17,0,14,0,0,0,0,0,31,0,113,128, + 112,192,96,192,0,192,7,192,56,192,96,192,192,192,192,192, + 225,240,126,96,19,12,36,21,1,0,31,31,0,113,241,192, + 96,224,192,0,224,224,0,192,96,7,255,224,56,192,0,96, + 192,0,192,224,0,192,224,64,227,112,192,124,31,128,10,16, + 32,12,1,252,31,0,113,192,97,192,224,192,192,0,192,0, + 192,0,192,0,224,0,96,64,112,192,31,128,8,0,14,0, + 2,0,28,0,11,18,36,13,1,0,24,0,28,0,6,0, + 1,0,0,0,0,0,31,0,113,192,96,192,224,224,192,96, + 255,224,192,0,192,0,224,0,96,64,112,192,31,128,11,18, + 36,13,1,0,1,128,3,128,6,0,8,0,0,0,0,0, + 31,0,113,192,96,192,224,224,192,96,255,224,192,0,192,0, + 224,0,96,64,112,192,31,128,11,18,36,13,1,0,6,0, + 15,0,25,128,32,64,0,0,0,0,31,0,113,192,96,192, + 224,224,192,96,255,224,192,0,192,0,224,0,96,64,112,192, + 31,128,11,16,32,13,1,0,49,128,49,128,0,0,0,0, + 31,0,113,192,96,192,224,224,192,96,255,224,192,0,192,0, + 224,0,96,64,112,192,31,128,6,18,18,8,1,0,192,224, + 48,8,0,0,240,48,48,48,48,48,48,48,48,48,48,252, + 6,18,18,8,1,0,24,56,96,128,0,0,240,48,48,48, + 48,48,48,48,48,48,48,252,8,18,18,8,0,0,24,60, + 102,129,0,0,120,24,24,24,24,24,24,24,24,24,24,126, + 6,16,16,8,1,0,204,204,0,0,240,48,48,48,48,48, + 48,48,48,48,48,252,11,18,36,13,1,0,192,0,51,0, + 28,0,28,0,102,0,3,0,31,128,113,192,96,192,224,224, + 192,96,192,96,192,96,192,96,224,224,96,192,113,192,31,0, + 14,17,34,14,0,0,7,16,15,224,17,192,0,0,0,0, + 241,192,55,224,56,112,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,252,252,11,18,36,13,1,0,24,0, + 28,0,6,0,1,0,0,0,0,0,31,0,113,192,96,192, + 224,224,192,96,192,96,192,96,192,96,224,224,96,192,113,192, + 31,0,11,18,36,13,1,0,1,128,3,128,6,0,8,0, + 0,0,0,0,31,0,113,192,96,192,224,224,192,96,192,96, + 192,96,192,96,224,224,96,192,113,192,31,0,11,18,36,13, + 1,0,14,0,31,0,49,128,64,64,0,0,0,0,31,0, + 113,192,96,192,224,224,192,96,192,96,192,96,192,96,224,224, + 96,192,113,192,31,0,11,17,34,13,1,0,28,64,63,128, + 71,0,0,0,0,0,31,0,113,192,96,192,224,224,192,96, + 192,96,192,96,192,96,224,224,96,192,113,192,31,0,11,16, + 32,13,1,0,49,128,49,128,0,0,0,0,31,0,113,192, + 96,192,224,224,192,96,192,96,192,96,192,96,224,224,96,192, + 113,192,31,0,12,10,20,14,1,2,6,0,6,0,0,0, + 0,0,255,240,255,240,0,0,0,0,6,0,6,0,11,16, + 32,13,1,254,0,64,0,128,31,128,113,192,98,192,226,224, + 196,96,196,96,196,96,200,96,200,224,80,192,113,192,63,0, + 32,0,64,0,14,18,36,14,0,0,12,0,14,0,3,0, + 0,128,0,0,0,0,240,240,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,56,112,31,176,14,60,14,18, + 36,14,0,0,0,192,1,192,3,0,4,0,0,0,0,0, + 240,240,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,56,112,31,176,14,60,14,18,36,14,0,0,3,0, + 7,128,12,192,16,32,0,0,0,0,240,240,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,56,112,31,176, + 14,60,14,16,32,14,0,0,12,192,12,192,0,0,0,0, + 240,240,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,56,112,31,176,14,60,13,23,46,12,255,251,0,96, + 0,224,1,128,2,0,0,0,0,0,120,56,48,16,56,48, + 24,32,24,32,12,96,12,64,6,192,6,128,7,128,3,0, + 3,0,2,0,2,0,196,0,236,0,120,0,13,23,46,14, + 0,251,240,0,48,0,48,0,48,0,48,0,48,0,55,192, + 60,112,56,48,48,56,48,24,48,24,48,24,48,24,48,56, + 56,48,60,112,55,192,48,0,48,0,48,0,48,0,252,0, + 13,21,42,12,255,251,12,96,12,96,0,0,0,0,120,56, + 48,16,56,48,24,32,24,32,12,96,12,64,6,192,6,128, + 7,128,3,0,3,0,2,0,2,0,196,0,236,0,120,0 + }; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--25-180-100-100-P-136-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=25 h=23 x= 6 y=14 dx=25 dy= 0 ascent=20 len=72 + Font Bounding box w=31 h=37 x=-3 y=-8 + Calculated Min Values x=-2 y=-5 dx= 0 dy= 0 + Pure Font ascent =18 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =20 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR18r[3477] U8G_SECTION(".progmem.u8g_font_ncenR18r") = { + 0,31,37,253,248,18,4,33,9,197,32,127,251,20,251,18, + 251,0,0,0,7,0,1,3,18,18,7,2,0,64,224,224, + 224,224,224,224,224,224,224,224,64,64,64,0,224,224,224,6, + 6,6,10,2,12,204,204,204,204,204,204,13,16,32,15,1, + 1,12,96,12,96,12,96,12,96,12,96,127,248,24,192,24, + 192,24,192,24,192,255,240,49,128,49,128,49,128,49,128,49, + 128,11,22,44,13,1,254,4,0,4,0,31,0,101,128,68, + 192,196,192,197,192,197,128,228,0,252,0,127,0,31,192,7, + 192,4,224,100,96,228,96,196,96,196,64,100,192,63,0,4, + 0,4,0,18,19,57,20,1,255,30,24,0,51,40,0,97, + 216,0,97,16,0,193,48,0,193,32,0,194,96,0,194,64, + 0,196,199,128,120,140,192,1,152,64,1,24,64,3,48,64, + 2,48,64,6,48,128,4,48,128,12,49,0,8,30,0,8, + 0,0,18,18,54,20,1,0,7,192,0,12,224,0,24,96, + 0,24,96,0,24,96,0,24,192,0,13,128,0,14,0,0, + 30,63,128,103,30,0,99,140,0,193,200,0,192,232,0,192, + 112,0,224,56,64,112,124,64,127,207,128,31,7,0,2,6, + 6,6,2,12,192,192,192,192,192,192,7,21,21,9,1,253, + 2,12,24,48,48,96,96,192,192,192,192,192,192,192,96,96, + 48,48,24,12,2,7,21,21,8,0,253,128,96,48,24,24, + 12,12,6,6,6,6,6,6,6,12,12,24,24,48,96,128, + 7,9,9,9,1,9,16,56,146,214,56,214,146,56,16,12, + 12,24,14,1,1,6,0,6,0,6,0,6,0,6,0,255, + 240,255,240,6,0,6,0,6,0,6,0,6,0,4,7,7, + 6,1,252,96,240,240,48,32,64,128,6,2,2,8,1,6, + 252,252,3,3,3,7,2,0,224,224,224,7,18,18,8,0, + 0,6,6,6,12,12,12,24,24,24,48,48,48,96,96,96, + 192,192,192,11,18,36,13,1,0,14,0,17,0,49,128,32, + 128,96,192,96,192,224,224,224,224,224,224,224,224,224,224,224, + 224,96,192,96,192,32,128,49,128,17,0,14,0,8,18,18, + 13,3,0,8,56,248,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,255,11,18,36,13,1,0,31,0,113,192,64, + 192,224,224,224,224,64,224,0,192,1,192,1,128,3,0,6, + 0,12,0,24,0,48,32,96,32,192,96,255,224,255,224,11, + 18,36,13,1,0,31,0,99,128,193,192,225,192,225,192,65, + 128,1,128,3,0,31,0,1,128,0,192,0,224,64,224,224, + 224,224,192,193,192,97,128,30,0,12,18,36,13,0,0,0, + 64,0,192,1,192,3,192,6,192,12,192,8,192,24,192,48, + 192,96,192,64,192,192,192,128,192,255,240,0,192,0,192,0, + 192,3,240,11,18,36,13,1,0,127,192,127,128,64,0,64, + 0,64,0,64,0,64,0,95,0,99,128,0,192,0,192,0, + 224,96,224,224,224,224,192,64,192,97,128,31,0,11,18,36, + 13,1,0,15,128,56,224,32,224,96,96,96,0,96,0,224, + 0,239,0,241,128,224,192,224,192,224,224,224,224,96,224,96, + 192,96,192,49,128,31,0,10,18,36,13,2,0,255,192,255, + 192,128,128,129,128,1,0,3,0,3,0,2,0,6,0,6, + 0,4,0,12,0,12,0,12,0,28,0,28,0,28,0,8, + 0,11,18,36,13,1,0,31,0,49,128,32,128,96,192,96, + 192,112,192,57,128,63,0,31,0,55,128,97,192,192,224,192, + 96,192,96,192,96,96,192,113,192,31,0,11,18,36,13,1, + 0,31,0,49,128,112,192,96,192,224,224,224,224,224,224,96, + 224,112,224,49,224,30,224,0,224,0,192,0,192,193,192,225, + 128,227,128,62,0,3,12,12,7,2,0,224,224,224,0,0, + 0,0,0,0,224,224,224,4,16,16,7,2,252,224,224,224, + 0,0,0,0,0,0,96,240,240,48,32,64,128,12,12,24, + 14,1,1,0,48,0,240,3,192,15,0,60,0,240,0,240, + 0,60,0,15,0,3,192,0,240,0,48,12,6,12,15,1, + 4,255,240,255,240,0,0,0,0,255,240,255,240,12,12,24, + 14,1,1,192,0,240,0,60,0,15,0,3,192,0,240,0, + 240,3,192,15,0,60,0,240,0,192,0,10,18,36,12,1, + 0,30,0,99,128,193,192,225,192,225,192,1,192,3,128,7, + 0,14,0,12,0,24,0,16,0,16,0,0,0,0,0,56, + 0,56,0,56,0,17,18,54,19,1,0,1,248,0,6,6, + 0,24,3,0,16,1,128,96,216,128,99,56,128,198,24,128, + 198,24,128,204,24,128,204,49,0,204,49,0,204,114,0,196, + 180,0,195,56,0,96,1,0,96,2,0,24,12,0,31,248, + 0,19,18,54,19,0,0,0,64,0,0,96,0,0,224,0, + 0,240,0,1,48,0,1,56,0,2,24,0,2,28,0,4, + 12,0,4,12,0,8,14,0,15,254,0,16,6,0,16,7, + 0,32,3,0,32,3,128,96,3,128,248,15,224,14,18,36, + 18,2,0,255,192,48,112,48,48,48,56,48,56,48,56,48, + 48,48,96,63,240,48,56,48,24,48,28,48,28,48,28,48, + 28,48,24,48,56,255,224,15,18,36,17,1,0,7,242,28, + 30,56,6,48,2,112,2,96,2,224,0,224,0,224,0,224, + 0,224,0,224,0,96,2,112,2,48,6,56,4,28,28,7, + 240,16,18,36,20,2,0,255,224,48,56,48,12,48,12,48, + 6,48,6,48,7,48,7,48,7,48,7,48,7,48,7,48, + 6,48,6,48,12,48,12,48,56,255,224,13,18,36,16,1, + 0,255,248,48,56,48,24,48,8,48,8,48,136,48,128,49, + 128,63,128,49,128,48,128,48,128,48,8,48,8,48,8,48, + 24,48,56,255,248,13,18,36,16,1,0,255,248,48,56,48, + 24,48,8,48,8,48,136,48,128,49,128,63,128,49,128,48, + 128,48,128,48,0,48,0,48,0,48,0,48,0,252,0,17, + 18,54,18,1,0,7,250,0,28,30,0,48,6,0,48,6, + 0,112,2,0,96,2,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,63,128,224,6,0,96,6,0,112,6,0,48, + 6,0,48,14,0,28,30,0,7,242,0,17,18,54,21,2, + 0,252,31,128,48,6,0,48,6,0,48,6,0,48,6,0, + 48,6,0,48,6,0,48,6,0,63,254,0,48,6,0,48, + 6,0,48,6,0,48,6,0,48,6,0,48,6,0,48,6, + 0,48,6,0,252,31,128,6,18,18,9,2,0,252,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,252,11, + 18,36,14,1,0,7,224,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,97,128,241,128,225, + 128,193,128,193,128,99,0,62,0,18,18,54,20,2,0,252, + 127,0,48,28,0,48,24,0,48,48,0,48,96,0,48,192, + 0,49,128,0,51,0,0,55,0,0,63,128,0,57,192,0, + 48,224,0,48,112,0,48,56,0,48,28,0,48,14,0,48, + 7,0,252,31,192,13,18,36,16,2,0,254,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,8,48,8,48,8,48,24,48,56,255,248,20, + 18,54,23,1,0,252,1,240,60,1,192,30,3,192,22,2, + 192,23,2,192,19,2,192,19,4,192,19,132,192,17,132,192, + 17,136,192,17,200,192,16,200,192,16,208,192,16,240,192,16, + 112,192,16,96,192,56,96,192,254,35,240,19,18,54,21,1, + 0,248,15,224,60,3,128,28,1,0,30,1,0,23,1,0, + 19,129,0,17,129,0,16,193,0,16,225,0,16,97,0,16, + 49,0,16,57,0,16,29,0,16,15,0,16,7,0,16,7, + 0,56,3,0,254,1,0,17,18,54,19,1,0,7,240,0, + 28,28,0,48,6,0,48,6,0,112,7,0,96,3,0,224, + 3,128,224,3,128,224,3,128,224,3,128,224,3,128,224,3, + 128,96,3,0,112,7,0,48,6,0,48,6,0,28,28,0, + 7,240,0,13,18,36,16,2,0,255,192,48,112,48,48,48, + 56,48,56,48,56,48,56,48,48,48,112,63,192,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,252,0,17,22,66, + 19,1,252,7,240,0,28,28,0,48,6,0,48,6,0,112, + 7,0,96,3,0,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,227,195,128,100,99,0,104,39,0,56,54,0, + 56,22,0,28,28,0,7,248,0,0,24,128,0,12,128,0, + 15,0,0,6,0,15,18,36,18,2,0,255,192,48,112,48, + 48,48,56,48,56,48,56,48,48,48,96,63,128,49,192,48, + 224,48,96,48,112,48,112,48,50,48,50,48,60,252,28,13, + 18,36,15,1,0,31,144,112,240,64,48,192,48,192,16,224, + 16,120,0,62,0,15,128,3,224,0,240,0,56,128,24,128, + 24,192,24,192,48,240,112,159,192,14,18,36,17,1,0,255, + 252,227,28,195,12,131,4,131,4,131,4,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,31,224,16,18,36,19,2,0,252,31,48,14,48,4,48, + 4,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,56,12,24,8,30,56,7,224,18,18,54, + 18,0,0,254,7,192,56,1,0,24,1,0,28,2,0,28, + 2,0,12,2,0,14,4,0,6,4,0,7,8,0,7,8, + 0,3,8,0,3,144,0,1,144,0,1,160,0,1,224,0, + 0,224,0,0,192,0,0,64,0,25,18,72,25,0,0,254, + 63,143,128,56,14,2,0,56,14,2,0,24,14,2,0,24, + 22,4,0,28,23,4,0,12,19,4,0,12,19,4,0,14, + 35,136,0,6,33,136,0,6,33,136,0,7,65,208,0,3, + 64,208,0,3,192,240,0,3,128,240,0,1,128,96,0,1, + 128,96,0,0,128,32,0,19,18,54,19,0,0,127,143,128, + 30,6,0,14,4,0,7,8,0,7,16,0,3,144,0,1, + 160,0,1,192,0,0,224,0,0,224,0,1,112,0,1,56, + 0,2,28,0,4,28,0,4,14,0,8,7,0,24,7,128, + 252,31,224,16,18,36,17,0,0,252,63,56,12,24,8,28, + 24,12,16,14,48,6,32,7,96,3,64,3,192,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,7,224,14,18,36, + 16,1,0,127,252,112,24,96,56,64,48,64,96,0,224,0, + 192,1,128,3,128,3,0,6,0,14,0,28,0,24,4,48, + 4,112,12,96,28,255,252,5,21,21,7,2,253,248,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,248,10,18,36,11,0,0,192,0,192,0,96,0,96,0, + 48,0,48,0,24,0,24,0,12,0,12,0,6,0,6,0, + 3,0,3,0,1,128,1,128,0,192,0,192,5,21,21,7, + 0,253,248,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,248,10,10,20,12,1,8,12,0,12, + 0,30,0,30,0,51,0,51,0,97,128,97,128,192,192,192, + 192,12,2,4,12,0,253,255,240,255,240,5,4,4,8,1, + 14,192,224,48,8,12,12,24,13,1,0,31,0,113,128,112, + 192,96,192,0,192,7,192,56,192,96,192,192,192,192,192,225, + 240,126,96,13,18,36,14,0,0,240,0,48,0,48,0,48, + 0,48,0,48,0,55,192,60,112,56,48,48,56,48,24,48, + 24,48,24,48,24,48,56,56,48,60,112,39,192,10,12,24, + 12,1,0,31,0,113,192,97,192,224,192,192,0,192,0,192, + 0,192,0,224,0,96,64,112,192,31,128,13,18,36,14,1, + 0,1,224,0,96,0,96,0,96,0,96,0,96,30,96,113, + 224,96,224,224,96,192,96,192,96,192,96,192,96,224,96,96, + 224,113,224,31,120,11,12,24,13,1,0,31,0,113,192,96, + 192,224,224,192,96,255,224,192,0,192,0,224,0,96,64,112, + 192,31,128,9,18,36,8,1,0,15,0,25,128,49,128,48, + 0,48,0,48,0,252,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,252,0,13,17,34, + 12,0,251,31,56,49,216,96,192,96,192,96,192,96,192,49, + 128,31,0,48,0,96,0,63,0,31,192,96,224,192,96,192, + 96,224,192,127,128,14,18,36,14,0,0,240,0,48,0,48, + 0,48,0,48,0,48,0,49,192,55,224,56,112,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,252,252,6, + 18,18,8,1,0,48,48,48,0,0,0,240,48,48,48,48, + 48,48,48,48,48,48,252,7,23,23,8,254,251,6,6,6, + 0,0,0,30,6,6,6,6,6,6,6,6,6,6,6,6, + 6,198,204,120,14,18,36,15,1,0,240,0,48,0,48,0, + 48,0,48,0,48,0,51,240,48,192,49,128,51,0,54,0, + 62,0,55,0,51,128,49,192,48,224,48,112,252,252,6,18, + 18,8,1,0,240,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,252,22,12,36,22,0,0,241,193,192,55, + 231,224,56,120,112,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,252,252,252, + 14,12,24,14,0,0,241,192,55,224,56,112,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,252,252,11,12, + 24,13,1,0,31,0,113,192,96,192,224,224,192,96,192,96, + 192,96,192,96,224,224,96,192,113,192,31,0,13,17,34,14, + 0,251,247,192,60,112,56,48,48,56,48,24,48,24,48,24, + 48,24,48,56,56,48,60,112,55,192,48,0,48,0,48,0, + 48,0,252,0,13,17,34,14,1,251,30,32,113,224,96,224, + 224,96,192,96,192,96,192,96,192,96,224,96,96,224,113,224, + 31,96,0,96,0,96,0,96,0,96,1,248,10,12,24,10, + 0,0,243,128,53,192,56,192,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,252,0,9,12,24,11,1,0, + 61,0,103,0,195,0,193,0,224,0,124,0,31,0,3,128, + 129,128,193,128,227,0,190,0,8,16,16,10,1,0,16,16, + 48,112,255,48,48,48,48,48,48,48,49,49,57,30,14,12, + 24,14,0,0,240,240,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,56,112,31,176,14,60,15,12,24,13, + 255,0,252,126,48,24,48,16,56,48,24,32,28,96,12,64, + 14,192,6,128,7,128,3,0,3,0,19,12,36,17,255,0, + 252,243,224,48,96,128,48,96,128,48,112,128,56,177,0,24, + 177,0,24,177,0,29,58,0,13,26,0,13,26,0,14,28, + 0,6,12,0,13,12,24,12,0,0,248,240,112,96,56,192, + 25,128,15,0,7,0,7,0,13,128,24,192,48,224,96,112, + 240,248,13,17,34,12,255,251,120,56,48,16,56,32,24,32, + 24,96,28,64,12,192,14,128,6,128,7,128,3,0,3,0, + 2,0,2,0,196,0,236,0,120,0,9,12,24,11,1,0, + 255,128,195,128,135,0,134,0,12,0,28,0,24,0,48,0, + 112,128,224,128,193,128,255,128,6,21,21,8,1,253,12,16, + 48,48,48,48,48,48,48,32,192,32,48,48,48,48,48,48, + 48,16,12,2,18,18,15,6,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,6,21,21,7,1, + 253,192,32,48,48,48,48,48,48,48,16,12,16,48,48,48, + 48,48,48,48,32,192,12,4,8,14,1,6,60,48,126,112, + 231,224,195,192,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--34-240-100-100-P-181-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=31 h=32 x= 9 y=19 dx=32 dy= 0 ascent=32 len=128 + Font Bounding box w=39 h=50 x=-6 y=-11 + Calculated Min Values x=-2 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =32 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR24[11729] U8G_SECTION(".progmem.u8g_font_ncenR24") = { + 0,39,50,250,245,25,5,159,15,28,32,255,249,32,249,25, + 249,0,0,0,9,1,1,4,25,25,10,3,0,96,240,240, + 240,240,240,240,96,96,96,96,96,96,96,96,96,96,96,0, + 0,0,96,240,240,96,9,8,16,13,2,17,227,128,227,128, + 227,128,227,128,65,0,65,0,65,0,65,0,16,23,46,19, + 2,0,3,12,3,12,3,12,7,28,6,24,6,24,6,24, + 127,255,127,255,6,24,14,56,12,56,12,48,255,254,255,254, + 12,48,12,48,28,112,28,112,24,96,24,96,24,96,24,96, + 14,31,62,18,2,252,2,0,2,0,2,0,15,192,63,240, + 114,112,226,56,194,120,194,120,194,48,194,0,226,0,250,0, + 127,0,63,192,31,240,3,248,2,124,2,60,98,28,242,12, + 242,12,226,28,194,24,226,120,127,240,31,192,2,0,2,0, + 2,0,2,0,24,25,75,27,1,255,3,128,32,15,192,224, + 28,227,192,56,127,192,56,97,128,112,97,128,112,99,0,240, + 99,0,224,102,0,224,196,0,224,204,0,225,136,28,115,24, + 126,62,16,227,0,49,195,0,99,195,0,99,131,0,199,131, + 0,199,3,1,135,6,1,135,6,3,7,12,2,3,152,6, + 1,240,4,0,0,22,25,75,27,2,0,1,248,0,7,188, + 0,6,28,0,14,14,0,14,14,0,14,14,0,14,12,0, + 14,28,0,15,56,0,15,112,0,7,224,0,7,128,0,15, + 199,252,59,193,240,113,224,224,113,240,192,224,240,192,224,249, + 128,224,125,128,240,63,4,240,30,4,248,15,12,126,63,248, + 63,243,248,31,193,224,3,8,8,7,2,17,224,224,224,224, + 64,64,64,64,8,29,29,11,2,252,1,7,6,12,24,48, + 48,48,96,96,96,96,224,224,224,224,224,96,96,96,96,48, + 48,16,24,12,6,7,3,8,29,29,11,2,252,192,224,96, + 48,24,8,12,12,6,6,6,6,7,7,7,7,7,6,6, + 6,6,12,12,28,24,48,96,192,192,12,14,28,17,2,11, + 6,0,6,0,6,0,198,112,230,112,127,224,31,128,31,0, + 127,192,230,112,198,112,6,0,6,0,6,0,16,17,34,20, + 2,255,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 255,255,255,255,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,5,10,10,9,2,250,112,248,248,120,24,24, + 48,96,224,128,8,3,3,11,1,7,255,255,255,4,4,4, + 9,2,0,96,240,240,96,10,25,50,9,255,0,0,192,0, + 192,0,192,1,128,1,128,1,128,3,0,3,0,3,0,6, + 0,6,0,6,0,12,0,12,0,12,0,24,0,24,0,24, + 0,48,0,48,0,48,0,96,0,96,0,96,0,192,0,16, + 24,48,18,2,0,3,192,15,240,28,56,24,24,56,28,120, + 30,112,14,240,15,240,15,240,15,240,15,240,15,240,15,240, + 15,240,15,240,15,240,15,112,14,120,30,56,28,24,24,28, + 56,15,240,3,192,13,24,48,18,3,0,3,0,7,0,255, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,15,128,255,248,15,24,48,18,1, + 0,7,224,31,248,56,28,96,30,112,14,120,14,120,14,120, + 14,48,30,0,28,0,28,0,56,0,120,0,112,0,224,1, + 192,3,128,7,2,14,2,28,6,56,6,127,254,255,254,255, + 254,15,24,48,18,1,0,7,224,31,248,56,56,112,28,120, + 28,120,28,48,28,0,28,0,56,0,112,1,224,15,240,0, + 248,0,60,0,28,0,30,96,14,240,14,240,14,240,30,224, + 28,120,124,63,240,15,192,16,24,48,18,1,0,0,48,0, + 48,0,112,0,240,1,240,1,240,3,112,6,112,6,112,12, + 112,24,112,24,112,48,112,96,112,96,112,192,112,255,255,255, + 255,0,112,0,112,0,112,0,112,0,248,3,254,14,24,48, + 18,2,0,56,8,63,248,63,240,63,224,48,0,48,0,32, + 0,96,0,99,192,111,240,124,120,112,56,96,60,0,28,0, + 28,0,28,96,28,240,28,240,28,240,60,224,56,112,120,127, + 240,31,128,15,24,48,18,1,0,3,240,15,252,28,62,56, + 30,56,30,48,12,112,0,112,0,112,0,241,224,247,248,254, + 60,252,28,248,30,240,14,240,14,240,14,112,14,112,14,112, + 30,56,28,56,60,31,240,7,192,13,24,48,18,3,0,255, + 248,255,248,255,248,192,16,192,48,128,32,128,96,128,64,0, + 192,0,192,1,128,1,128,1,128,3,0,3,0,3,0,7, + 0,7,0,7,0,15,0,15,0,15,0,15,0,6,0,15, + 24,48,18,1,0,7,224,31,248,60,56,56,28,112,28,112, + 12,112,12,120,24,60,56,63,112,31,224,7,240,7,248,29, + 252,56,124,112,30,112,30,224,14,224,14,224,14,112,28,120, + 60,63,248,15,224,15,24,48,18,1,0,15,192,63,240,120, + 120,112,56,240,60,224,28,224,28,224,30,224,30,240,30,240, + 62,120,126,120,126,63,222,31,158,0,30,0,28,0,28,96, + 56,240,56,240,112,241,224,127,192,63,0,4,16,16,9,3, + 0,96,240,240,96,0,0,0,0,0,0,0,0,96,240,240, + 96,5,21,21,9,1,251,48,120,120,48,0,0,0,0,0, + 0,0,0,48,120,120,56,24,16,48,96,192,16,18,36,20, + 2,255,0,1,0,7,0,31,0,124,1,240,7,192,31,0, + 124,0,240,0,240,0,124,0,31,0,7,192,1,240,0,124, + 0,31,0,7,0,1,16,8,16,20,2,4,255,255,255,255, + 0,0,0,0,0,0,0,0,255,255,255,255,16,18,36,20, + 2,255,128,0,224,0,248,0,62,0,15,128,3,224,0,248, + 0,62,0,15,0,15,0,62,0,248,3,224,15,128,62,0, + 248,0,224,0,128,0,12,25,50,14,1,0,63,128,115,224, + 192,224,192,240,224,112,224,112,224,112,0,240,0,240,1,224, + 1,192,3,128,3,0,6,0,4,0,4,0,12,0,12,0, + 0,0,0,0,0,0,12,0,30,0,30,0,12,0,22,25, + 75,25,1,0,0,254,0,3,255,128,15,135,192,30,0,224, + 28,0,112,48,0,56,48,0,24,96,251,152,97,207,140,227, + 143,140,199,135,140,199,7,12,207,7,12,207,15,8,206,15, + 24,206,14,24,206,30,48,102,62,96,103,126,192,51,231,152, + 56,0,56,28,0,112,15,129,224,7,255,128,0,254,0,23, + 25,75,23,0,0,0,16,0,0,56,0,0,56,0,0,120, + 0,0,124,0,0,124,0,0,220,0,0,222,0,1,158,0, + 1,142,0,1,143,0,3,7,0,3,7,128,3,7,128,6, + 3,128,7,255,192,7,255,192,12,1,192,12,1,224,12,1, + 224,24,0,240,24,0,240,56,0,248,124,1,252,254,3,254, + 20,25,75,23,1,0,255,254,0,63,255,128,14,7,192,14, + 1,192,14,1,224,14,1,224,14,1,224,14,1,224,14,1, + 192,14,1,192,14,3,128,15,255,0,15,252,0,14,15,128, + 14,3,192,14,1,224,14,0,240,14,0,240,14,0,240,14, + 0,240,14,0,240,14,1,224,14,3,224,63,255,192,255,255, + 0,20,25,75,22,1,0,1,252,96,7,255,96,14,3,224, + 28,1,224,60,0,224,56,0,224,120,0,96,120,0,96,240, + 0,32,240,0,32,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,48,120,0,48,120,0,48, + 120,0,96,60,0,96,28,0,192,15,3,128,7,255,0,1, + 252,0,22,25,75,25,1,0,255,254,0,63,255,192,14,3, + 224,14,0,240,14,0,112,14,0,120,14,0,120,14,0,60, + 14,0,60,14,0,60,14,0,60,14,0,60,14,0,60,14, + 0,60,14,0,60,14,0,60,14,0,60,14,0,60,14,0, + 56,14,0,120,14,0,112,14,0,224,14,3,224,63,255,192, + 255,254,0,20,25,75,24,1,0,255,255,240,63,255,240,14, + 1,240,14,0,112,14,0,112,14,0,48,14,4,48,14,4, + 16,14,4,16,14,12,0,14,60,0,15,252,0,15,252,0, + 14,60,0,14,12,0,14,12,0,14,4,16,14,4,16,14, + 0,16,14,0,48,14,0,48,14,0,112,14,1,240,63,255, + 240,255,255,240,20,25,75,22,1,0,255,255,240,63,255,240, + 14,1,240,14,0,112,14,0,48,14,0,48,14,0,16,14, + 4,16,14,4,16,14,12,0,14,12,0,14,60,0,15,252, + 0,15,252,0,14,28,0,14,12,0,14,4,0,14,4,0, + 14,4,0,14,0,0,14,0,0,14,0,0,14,0,0,63, + 128,0,255,224,0,24,25,75,24,1,0,1,254,48,7,255, + 176,15,3,240,30,0,240,60,0,112,56,0,112,120,0,48, + 112,0,48,112,0,16,240,0,16,240,0,0,240,0,0,240, + 0,0,240,0,0,240,7,255,240,0,248,240,0,112,112,0, + 112,112,0,112,120,0,112,56,0,240,28,0,240,15,1,176, + 7,255,48,1,254,16,25,25,100,27,1,0,255,227,255,128, + 63,128,254,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,15,255,248,0,15,255,248,0, + 14,0,56,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,63,128,254,0,255,227,255,128, + 11,25,50,13,1,0,255,224,63,128,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,63,128,255,224,17,25,75,18,0,0,3,255, + 128,0,124,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,112,56, + 0,248,56,0,248,56,0,248,56,0,240,56,0,192,120,0, + 224,112,0,127,240,0,31,192,0,25,25,100,25,1,0,255, + 227,255,0,63,129,252,0,14,0,240,0,14,0,224,0,14, + 1,192,0,14,1,128,0,14,3,0,0,14,6,0,0,14, + 14,0,0,14,28,0,0,14,56,0,0,14,124,0,0,14, + 254,0,0,15,222,0,0,15,143,0,0,15,7,128,0,14, + 7,192,0,14,3,192,0,14,1,224,0,14,1,240,0,14, + 0,240,0,14,0,120,0,14,0,124,0,63,0,62,0,255, + 192,255,128,20,25,75,22,1,0,255,224,0,63,128,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,16,14,0,16,14, + 0,16,14,0,48,14,0,48,14,0,112,14,1,240,63,255, + 224,255,255,224,29,25,100,30,0,0,127,128,15,248,31,128, + 15,192,15,128,15,128,15,192,15,128,13,192,27,128,13,192, + 27,128,13,224,19,128,12,224,51,128,12,224,51,128,12,240, + 35,128,12,112,99,128,12,112,99,128,12,120,99,128,12,56, + 195,128,12,56,195,128,12,60,195,128,12,28,131,128,12,29, + 131,128,12,31,131,128,12,31,3,128,12,15,3,128,12,15, + 3,128,12,14,3,128,63,6,15,224,255,198,63,248,26,25, + 100,28,1,0,255,0,255,192,31,0,63,0,15,128,12,0, + 15,192,12,0,15,192,12,0,13,224,12,0,13,240,12,0, + 12,248,12,0,12,120,12,0,12,124,12,0,12,62,12,0, + 12,30,12,0,12,31,12,0,12,15,140,0,12,7,140,0, + 12,7,204,0,12,3,204,0,12,1,236,0,12,0,236,0, + 12,0,252,0,12,0,124,0,12,0,60,0,12,0,60,0, + 63,0,28,0,255,192,12,0,22,25,75,24,1,0,1,254, + 0,7,255,128,15,3,192,28,0,224,60,0,240,56,0,112, + 120,0,120,112,0,56,240,0,60,240,0,60,224,0,28,224, + 0,28,224,0,28,224,0,28,224,0,28,240,0,60,240,0, + 56,112,0,56,120,0,120,56,0,112,60,0,240,28,0,224, + 15,3,192,7,255,128,1,254,0,20,25,75,22,1,0,255, + 254,0,63,255,128,14,7,192,14,1,224,14,0,240,14,0, + 240,14,0,112,14,0,112,14,0,240,14,0,240,14,1,224, + 14,7,192,15,255,128,15,254,0,14,0,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,63,128,0,255,224,0,23,31,93,24,1,250, + 0,254,0,3,255,128,15,1,224,30,0,240,60,0,120,56, + 0,56,120,0,60,112,0,28,240,0,30,240,0,30,224,0, + 14,224,0,14,224,0,14,224,0,14,240,0,30,240,0,30, + 112,124,28,121,222,60,121,135,56,61,3,112,29,3,112,31, + 3,224,15,131,192,3,255,128,0,255,192,0,3,198,0,1, + 198,0,1,228,0,1,252,0,0,248,0,0,112,21,25,75, + 23,1,0,255,254,0,63,255,128,14,7,192,14,1,192,14, + 1,224,14,0,224,14,0,224,14,1,224,14,1,224,14,1, + 192,14,3,192,14,15,0,15,252,0,15,254,0,14,15,0, + 14,7,0,14,7,128,14,3,128,14,3,128,14,3,136,14, + 3,136,14,3,136,14,3,216,63,129,240,255,225,224,17,25, + 75,20,2,0,15,241,0,63,251,0,112,31,0,96,7,0, + 224,7,0,224,3,0,224,1,0,240,1,0,240,0,0,126, + 0,0,127,224,0,31,252,0,7,254,0,0,127,0,0,15, + 128,128,7,128,128,3,128,192,3,128,192,3,128,192,3,128, + 224,7,128,240,7,0,248,14,0,223,252,0,135,240,0,19, + 25,75,21,1,0,255,255,224,255,255,224,240,227,224,224,224, + 224,192,224,96,192,224,96,128,224,32,128,224,32,128,224,32, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,3,248,0,15,254,0, + 26,25,100,26,0,0,255,224,255,192,63,128,63,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,15,0,24,0,7,0,24,0,7,128,48,0,3,224, + 240,0,1,255,192,0,0,127,0,0,23,25,75,23,0,0, + 255,195,254,62,0,248,30,0,112,30,0,112,14,0,96,15, + 0,96,15,0,64,7,0,192,7,128,192,7,128,128,3,129, + 128,3,193,128,3,193,0,1,195,0,1,227,0,1,226,0, + 0,230,0,0,246,0,0,244,0,0,124,0,0,124,0,0, + 56,0,0,56,0,0,56,0,0,16,0,31,25,100,31,0, + 0,255,31,241,254,126,7,192,124,60,3,128,56,28,3,128, + 48,30,3,192,48,30,3,192,96,14,3,192,96,14,3,224, + 96,15,3,224,96,7,6,224,192,7,6,224,192,7,132,240, + 192,7,140,112,192,3,140,113,128,3,140,121,128,3,200,57, + 128,1,216,57,0,1,248,63,0,1,248,31,0,0,240,31, + 0,0,240,30,0,0,240,30,0,0,224,14,0,0,96,12, + 0,0,96,12,0,23,25,75,22,0,0,255,199,252,63,1, + 240,31,0,224,15,1,192,15,129,128,7,131,128,3,195,0, + 3,230,0,1,238,0,0,252,0,0,248,0,0,120,0,0, + 124,0,0,124,0,0,254,0,1,223,0,1,143,0,3,135, + 128,3,7,128,6,3,192,14,3,224,12,1,224,28,0,240, + 62,0,248,255,135,254,23,25,75,23,0,0,255,131,254,126, + 0,248,62,0,112,30,0,96,15,0,224,15,0,192,7,129, + 128,7,193,128,3,195,0,3,227,0,1,230,0,0,246,0, + 0,252,0,0,124,0,0,120,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,254,0,3,255,128,17,25,75,19,1,0,127,255,128, + 127,255,128,120,15,0,112,15,0,96,30,0,96,62,0,96, + 60,0,64,124,0,64,120,0,0,240,0,0,240,0,1,224, + 0,3,224,0,3,192,0,7,128,0,7,128,128,15,0,128, + 31,0,128,30,1,128,62,1,128,60,1,128,120,3,128,120, + 7,128,255,255,128,255,255,128,7,29,29,11,3,252,254,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,254,15,25,50,20,2, + 0,224,0,112,0,112,0,56,0,56,0,28,0,28,0,14, + 0,14,0,7,0,7,0,3,128,3,128,3,128,1,192,1, + 192,0,224,0,224,0,112,0,112,0,56,0,56,0,28,0, + 28,0,14,7,29,29,11,1,252,254,6,6,6,6,6,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,254,16,13,26,20,2,12,3,192,3,192, + 7,224,7,224,14,112,14,112,28,56,28,56,56,28,56,28, + 112,14,112,14,224,7,16,2,4,16,0,252,255,255,255,255, + 7,6,6,11,1,17,192,224,112,56,12,6,16,16,32,17, + 1,0,15,192,63,240,120,120,112,56,96,56,0,56,1,248, + 15,248,60,56,112,56,224,56,224,56,224,120,241,253,127,159, + 62,14,15,25,50,17,0,0,24,0,248,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,57,224,59,248,62,28, + 60,28,60,14,56,14,56,14,56,14,56,14,56,14,56,14, + 60,14,60,28,62,28,55,248,33,224,12,16,32,14,1,0, + 7,128,31,224,56,112,112,240,112,240,224,96,224,0,224,0, + 224,0,224,0,224,0,112,16,112,48,56,96,63,192,15,128, + 16,25,50,18,1,0,0,12,0,124,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,7,156,31,220,56,124,112,60, + 112,60,224,28,224,28,224,28,224,28,224,28,224,28,240,60, + 112,60,120,124,31,220,7,159,14,16,32,16,1,0,7,192, + 31,240,56,120,112,56,96,28,224,28,224,28,255,252,224,0, + 224,0,224,0,240,4,112,12,120,56,63,240,15,192,14,25, + 50,11,0,0,1,248,7,28,14,28,12,28,28,8,28,0, + 28,0,28,0,28,0,255,192,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,255,192,16,23,46,17,1,249,7,159,31,251, + 56,115,112,56,112,56,112,56,112,56,112,56,56,112,31,224, + 55,128,96,0,96,0,127,224,127,248,63,252,48,62,96,14, + 224,14,224,14,248,60,127,248,15,192,19,25,75,20,0,0, + 12,0,0,252,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,112,0,29,252, + 0,31,30,0,30,14,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,255,63,224,9,24,48,10,1, + 0,24,0,60,0,60,0,24,0,0,0,0,0,0,0,0, + 0,28,0,252,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,255, + 128,9,31,62,10,254,249,3,0,7,128,7,128,3,0,0, + 0,0,0,0,0,0,0,3,128,31,128,3,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,67,128,227,0,227, + 0,230,0,124,0,19,25,75,20,0,0,12,0,0,252,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,127,128,28,30,0,28,24,0,28, + 48,0,28,96,0,28,192,0,29,192,0,31,224,0,30,240, + 0,28,120,0,28,60,0,28,28,0,28,14,0,28,15,0, + 28,7,128,255,31,224,9,25,50,11,1,0,12,0,28,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,255,128,27,16, + 64,27,0,0,28,240,120,0,253,252,254,0,31,29,142,0, + 30,15,7,0,30,15,7,0,28,14,7,0,28,14,7,0, + 28,14,7,0,28,14,7,0,28,14,7,0,28,14,7,0, + 28,14,7,0,28,14,7,0,28,14,7,0,28,14,7,0, + 255,63,159,224,19,16,48,19,0,0,28,120,0,253,254,0, + 31,142,0,30,7,0,30,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,255,31,224,14,16,32,16,1,0, + 7,128,31,224,56,112,112,56,112,56,224,28,224,28,224,28, + 224,28,224,28,224,28,112,56,112,56,56,112,31,224,7,128, + 16,23,46,19,1,249,25,240,251,252,62,30,60,14,60,7, + 56,7,56,7,56,7,56,7,56,7,56,7,60,14,60,14, + 62,28,59,252,57,240,56,0,56,0,56,0,56,0,56,0, + 124,0,255,0,16,23,46,17,1,249,7,196,31,236,56,60, + 112,60,112,28,224,28,224,28,224,28,224,28,224,28,224,28, + 240,60,112,60,56,124,63,220,15,156,0,28,0,28,0,28, + 0,28,0,28,0,62,0,255,14,16,32,15,0,0,28,120, + 253,252,31,60,30,60,30,24,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,255,128,11,16, + 32,15,2,0,30,192,127,192,225,192,192,192,192,192,240,64, + 254,0,127,128,63,192,7,224,128,224,192,96,192,96,224,224, + 255,192,159,0,12,23,46,13,0,0,4,0,4,0,12,0, + 12,0,28,0,28,0,60,0,255,224,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,16,28,16,28,48, + 28,48,30,96,15,224,7,192,18,16,48,20,0,0,28,7, + 0,252,63,0,28,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,28, + 15,0,28,15,0,30,63,0,15,247,192,7,199,0,17,16, + 48,17,0,0,255,31,128,124,7,0,60,6,0,30,6,0, + 30,12,0,14,12,0,15,8,0,7,24,0,7,24,0,7, + 176,0,3,176,0,3,224,0,1,224,0,1,224,0,0,192, + 0,0,192,0,24,16,48,24,0,0,254,127,63,120,60,14, + 56,28,12,60,28,28,28,30,24,28,30,24,14,54,16,14, + 39,48,15,103,48,7,103,96,7,67,96,3,195,192,3,195, + 192,3,129,192,1,129,128,1,129,128,16,16,32,19,1,0, + 255,127,60,28,30,24,14,48,15,48,7,96,3,192,3,192, + 1,224,3,224,6,112,12,120,28,56,56,60,120,30,254,127, + 18,23,69,20,1,249,255,31,192,60,7,0,60,6,0,28, + 6,0,30,12,0,14,12,0,15,8,0,7,24,0,7,24, + 0,7,176,0,3,176,0,3,224,0,1,224,0,1,224,0, + 0,192,0,0,192,0,1,128,0,1,128,0,99,0,0,243, + 0,0,230,0,0,252,0,0,112,0,0,13,16,32,15,1, + 0,127,248,120,120,96,240,96,224,65,224,67,192,3,128,7, + 128,15,0,14,0,30,8,60,8,56,24,120,56,240,248,255, + 248,6,30,30,11,3,252,12,28,56,48,48,48,48,48,48, + 48,48,48,48,112,224,224,112,48,48,48,48,48,48,48,48, + 48,48,56,28,12,2,25,25,20,9,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,6,30,30,11,2,252,192,224,112,48,48,48, + 48,48,48,48,48,48,48,56,28,28,56,48,48,48,48,48, + 48,48,48,48,48,112,224,192,16,4,8,20,2,6,30,3, + 127,135,225,254,192,120,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,0,0,9,1,1,4,25,25, + 10,3,249,96,240,240,96,0,0,0,96,96,96,96,96,96, + 96,96,96,96,96,240,240,240,240,240,240,96,13,24,48,18, + 2,252,0,24,0,24,0,16,0,48,7,224,31,240,56,112, + 112,112,112,240,224,224,224,128,225,128,225,0,227,0,227,0, + 242,16,118,48,60,96,31,224,15,128,8,0,24,0,16,0, + 16,0,16,23,46,19,1,0,1,240,7,252,14,14,12,14, + 28,30,28,30,28,28,28,0,30,0,14,0,14,0,255,248, + 15,0,7,0,7,0,7,0,6,0,6,0,126,3,223,7, + 143,142,223,252,112,240,16,17,34,19,1,3,67,194,239,247, + 127,254,60,60,112,14,112,14,224,7,224,7,224,7,224,7, + 224,7,112,14,112,14,60,60,127,254,239,247,3,192,17,23, + 69,19,0,0,255,31,128,60,15,0,28,6,0,30,6,0, + 14,4,0,15,12,0,7,8,0,7,24,0,3,144,0,3, + 176,0,1,224,0,0,224,0,7,252,0,7,252,0,0,224, + 0,0,224,0,7,252,0,7,252,0,0,224,0,0,224,0, + 0,224,0,7,248,0,7,248,0,2,25,25,20,9,0,192, + 192,192,192,192,192,192,192,192,192,0,0,0,0,0,192,192, + 192,192,192,192,192,192,192,192,12,30,60,17,2,251,15,0, + 57,192,48,192,113,192,113,192,112,128,56,0,60,0,30,0, + 15,0,63,128,99,192,193,224,192,240,192,112,224,48,240,48, + 120,48,60,96,31,192,15,0,7,128,3,192,1,192,16,224, + 56,224,56,224,48,192,57,192,15,0,9,3,6,11,1,19, + 99,0,247,128,99,0,24,25,75,25,0,0,0,126,0,3, + 255,128,7,129,224,14,0,112,24,0,56,48,0,28,48,127, + 12,96,227,134,97,129,134,67,128,134,195,0,131,199,0,3, + 199,0,3,199,0,3,199,0,3,195,0,3,67,128,6,97, + 193,134,97,227,140,48,126,12,24,0,24,28,0,112,7,1, + 224,3,255,128,0,126,0,11,14,28,11,0,11,63,0,99, + 128,97,128,99,128,15,128,121,128,225,128,193,128,227,128,125, + 224,0,0,0,0,0,0,255,192,11,11,22,14,1,2,4, + 32,12,96,24,192,49,128,115,128,231,0,115,128,49,128,24, + 192,12,96,4,32,16,9,18,20,1,3,255,255,255,255,0, + 3,0,3,0,3,0,3,0,3,0,3,0,3,8,3,3, + 11,1,7,255,255,255,24,24,72,25,0,0,0,126,0,3, + 255,192,15,1,240,28,0,56,56,0,24,51,252,12,96,199, + 14,96,195,6,64,195,6,192,195,3,192,198,3,192,252,3, + 192,204,3,192,206,3,192,198,3,96,199,6,96,195,6,96, + 195,142,51,227,204,24,0,24,28,0,112,7,0,224,3,255, + 192,0,126,0,10,2,4,11,0,19,255,192,255,192,9,9, + 18,13,2,14,62,0,119,0,193,128,193,128,128,128,193,128, + 193,128,119,0,62,0,16,16,32,20,2,0,1,128,1,128, + 1,128,1,128,255,255,255,255,1,128,1,128,1,128,1,128, + 1,128,0,0,0,0,0,0,255,255,255,255,10,14,28,11, + 0,9,63,0,115,128,97,128,113,128,113,128,1,128,3,0, + 7,0,14,0,28,0,56,64,112,64,255,192,255,192,9,14, + 28,11,1,9,62,0,99,0,113,128,97,128,1,128,7,0, + 62,0,7,0,3,0,97,128,225,128,195,128,231,0,126,0, + 7,6,6,11,2,19,6,14,28,56,96,192,17,23,69,20, + 1,249,56,14,0,248,62,0,56,14,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,30,0,56,30,0,60,126,0,63,238,0,47, + 143,128,32,0,0,32,0,0,112,0,0,112,0,0,112,0, + 0,112,0,0,32,0,0,17,30,90,20,2,251,15,255,128, + 63,255,128,120,198,0,240,198,0,240,198,0,240,198,0,240, + 198,0,240,198,0,240,198,0,240,198,0,120,198,0,124,198, + 0,63,198,0,15,198,0,0,198,0,0,198,0,0,198,0, + 0,198,0,0,198,0,0,198,0,0,198,0,0,198,0,0, + 198,0,0,198,0,0,198,0,0,198,0,0,198,0,0,198, + 0,3,255,128,3,255,128,4,4,4,9,2,6,96,240,240, + 96,6,7,7,11,1,249,16,32,120,12,12,140,120,8,14, + 14,11,1,9,56,248,24,24,24,24,24,24,24,24,24,24, + 24,255,11,14,28,10,255,11,14,0,59,128,96,192,224,224, + 192,96,192,96,224,224,96,192,59,128,14,0,0,0,0,0, + 0,0,127,192,11,11,22,14,1,2,132,0,198,0,99,0, + 49,128,57,192,28,224,57,192,49,128,99,0,198,0,132,0, + 25,23,92,28,1,0,56,0,24,0,248,0,48,0,24,0, + 48,0,24,0,96,0,24,0,192,0,24,0,128,0,24,1, + 128,0,24,3,0,0,24,6,0,0,24,6,4,0,24,12, + 12,0,24,24,28,0,24,24,60,0,255,48,108,0,0,96, + 76,0,0,192,204,0,0,193,140,0,1,131,12,0,3,3, + 255,128,3,0,12,0,6,0,12,0,12,0,12,0,8,0, + 63,0,25,23,92,28,1,0,56,0,24,0,248,0,48,0, + 24,0,32,0,24,0,96,0,24,0,192,0,24,1,128,0, + 24,1,128,0,24,3,0,0,24,6,0,0,24,6,62,0, + 24,12,99,0,24,24,193,128,24,48,193,128,255,48,225,128, + 0,96,195,0,0,192,7,0,0,192,14,0,1,128,28,0, + 3,0,56,0,3,0,112,128,6,0,224,128,12,1,255,128, + 8,1,255,128,25,23,92,28,1,0,62,0,8,0,99,0, + 24,0,113,128,48,0,97,128,48,0,1,128,96,0,7,0, + 192,0,30,1,128,0,7,1,128,0,3,131,0,0,97,134, + 4,0,225,134,12,0,195,140,28,0,231,24,60,0,126,48, + 108,0,0,48,204,0,0,96,204,0,0,193,140,0,0,195, + 12,0,1,131,255,128,3,0,12,0,6,0,12,0,6,0, + 12,0,12,0,63,0,12,25,50,14,1,249,3,0,7,128, + 7,128,3,0,0,0,0,0,0,0,3,0,3,0,2,0, + 2,0,6,0,12,0,28,0,56,0,120,0,112,0,240,0, + 224,112,224,112,224,112,240,48,112,48,60,224,31,192,23,32, + 96,23,0,0,6,0,0,7,0,0,3,128,0,1,192,0, + 0,96,0,0,48,0,0,0,0,0,16,0,0,56,0,0, + 56,0,0,120,0,0,124,0,0,124,0,0,220,0,0,222, + 0,1,158,0,1,142,0,1,143,0,3,7,0,3,7,128, + 3,7,128,6,3,128,7,255,192,7,255,192,12,1,192,12, + 1,224,12,1,224,24,0,240,24,0,240,56,0,248,124,1, + 252,254,3,254,23,32,96,23,0,0,0,1,128,0,3,128, + 0,7,0,0,14,0,0,24,0,0,48,0,0,0,0,0, + 16,0,0,56,0,0,56,0,0,120,0,0,124,0,0,124, + 0,0,220,0,0,222,0,1,158,0,1,142,0,1,143,0, + 3,7,0,3,7,128,3,7,128,6,3,128,7,255,192,7, + 255,192,12,1,192,12,1,224,12,1,224,24,0,240,24,0, + 240,56,0,248,124,1,252,254,3,254,23,31,93,23,0,0, + 0,24,0,0,60,0,0,126,0,0,195,0,1,129,128,0, + 0,0,0,16,0,0,56,0,0,56,0,0,120,0,0,124, + 0,0,124,0,0,220,0,0,222,0,1,158,0,1,142,0, + 1,143,0,3,7,0,3,7,128,3,7,128,6,3,128,7, + 255,192,7,255,192,12,1,192,12,1,224,12,1,224,24,0, + 240,24,0,240,56,0,248,124,1,252,254,3,254,23,30,90, + 23,0,0,0,241,128,1,255,0,3,30,0,0,0,0,0, + 0,0,0,16,0,0,56,0,0,56,0,0,120,0,0,124, + 0,0,124,0,0,220,0,0,222,0,1,158,0,1,142,0, + 1,143,0,3,7,0,3,7,128,3,7,128,6,3,128,7, + 255,192,7,255,192,12,1,192,12,1,224,12,1,224,24,0, + 240,24,0,240,56,0,248,124,1,252,254,3,254,23,30,90, + 23,0,0,1,134,0,3,207,0,1,134,0,0,0,0,0, + 0,0,0,16,0,0,56,0,0,56,0,0,120,0,0,124, + 0,0,124,0,0,220,0,0,222,0,1,158,0,1,142,0, + 1,143,0,3,7,0,3,7,128,3,7,128,6,3,128,7, + 255,192,7,255,192,12,1,192,12,1,224,12,1,224,24,0, + 240,24,0,240,56,0,248,124,1,252,254,3,254,23,32,96, + 23,0,0,0,120,0,0,204,0,0,132,0,0,132,0,0, + 204,0,0,120,0,0,0,0,0,16,0,0,56,0,0,56, + 0,0,120,0,0,124,0,0,124,0,0,220,0,0,222,0, + 1,158,0,1,142,0,1,143,0,3,7,0,3,7,128,3, + 7,128,6,3,128,7,255,192,7,255,192,12,1,192,12,1, + 224,12,1,224,24,0,240,24,0,240,56,0,248,124,1,252, + 254,3,254,30,25,100,32,0,0,1,255,255,252,0,127,255, + 252,0,29,192,124,0,25,192,28,0,25,192,28,0,49,192, + 12,0,49,192,140,0,97,192,132,0,97,193,132,0,193,193, + 128,0,193,195,128,1,129,255,128,1,129,255,128,3,1,195, + 128,3,255,193,128,7,255,193,128,6,1,192,132,12,1,192, + 132,12,1,192,4,24,1,192,12,24,1,192,12,48,1,192, + 28,48,1,192,124,120,7,255,252,254,31,255,252,20,32,96, + 22,1,249,0,248,96,3,255,96,15,7,224,28,1,224,60, + 0,224,56,0,224,120,0,96,120,0,96,240,0,96,240,0, + 32,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,48,120,0,48,120,0,32,120,0,96,60, + 0,96,28,0,192,14,1,128,7,207,0,1,254,0,0,32, + 0,0,64,0,0,240,0,0,24,0,0,24,0,1,24,0, + 0,240,0,20,32,96,24,1,0,3,0,0,3,128,0,1, + 192,0,0,224,0,0,48,0,0,24,0,0,0,0,255,255, + 240,63,255,240,14,1,240,14,0,112,14,0,112,14,0,48, + 14,4,48,14,4,16,14,4,16,14,12,0,14,60,0,15, + 252,0,15,252,0,14,60,0,14,12,0,14,12,0,14,4, + 16,14,4,16,14,0,16,14,0,48,14,0,48,14,0,112, + 14,1,240,63,255,240,255,255,240,20,32,96,24,1,0,0, + 1,128,0,3,128,0,7,0,0,14,0,0,24,0,0,48, + 0,0,0,0,255,255,240,63,255,240,14,1,240,14,0,112, + 14,0,112,14,0,48,14,4,48,14,4,16,14,4,16,14, + 12,0,14,60,0,15,252,0,15,252,0,14,60,0,14,12, + 0,14,12,0,14,4,16,14,4,16,14,0,16,14,0,48, + 14,0,48,14,0,112,14,1,240,63,255,240,255,255,240,20, + 32,96,24,1,0,0,48,0,0,120,0,0,252,0,1,134, + 0,3,3,0,0,0,0,0,0,0,255,255,240,63,255,240, + 14,1,240,14,0,112,14,0,112,14,0,48,14,4,48,14, + 4,16,14,4,16,14,12,0,14,60,0,15,252,0,15,252, + 0,14,60,0,14,12,0,14,12,0,14,4,16,14,4,16, + 14,0,16,14,0,48,14,0,48,14,0,112,14,1,240,63, + 255,240,255,255,240,20,30,90,24,1,0,0,198,0,1,239, + 0,0,198,0,0,0,0,0,0,0,255,255,240,63,255,240, + 14,1,240,14,0,112,14,0,112,14,0,48,14,4,48,14, + 4,16,14,4,16,14,12,0,14,60,0,15,252,0,15,252, + 0,14,60,0,14,12,0,14,12,0,14,4,16,14,4,16, + 14,0,16,14,0,48,14,0,48,14,0,112,14,1,240,63, + 255,240,255,255,240,11,32,64,13,1,0,96,0,112,0,56, + 0,28,0,6,0,3,0,0,0,255,224,63,128,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,63,128,255,224,11,32,64,13,1, + 0,0,192,1,192,3,128,7,0,12,0,24,0,0,0,255, + 224,63,128,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,63,128,255, + 224,11,31,62,13,1,0,6,0,15,0,31,128,48,192,96, + 96,0,0,255,224,63,128,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,63,128,255,224,11,30,60,13,1,0,49,128,123,192,49, + 128,0,0,0,0,255,224,63,128,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,63,128,255,224,22,25,75,24,1,0,255,252,0, + 255,255,128,30,7,192,14,1,224,14,0,240,14,0,112,14, + 0,120,14,0,120,14,0,56,14,0,60,14,0,60,14,0, + 60,127,224,60,127,224,60,14,0,60,14,0,60,14,0,60, + 14,0,56,14,0,120,14,0,120,14,0,112,14,0,224,14, + 1,192,255,255,128,255,254,0,26,30,120,28,1,0,0,30, + 48,0,0,63,224,0,0,99,192,0,0,0,0,0,0,0, + 0,0,255,0,255,192,31,0,63,0,15,128,12,0,15,192, + 12,0,15,192,12,0,13,224,12,0,13,240,12,0,12,248, + 12,0,12,120,12,0,12,124,12,0,12,62,12,0,12,30, + 12,0,12,31,12,0,12,15,140,0,12,7,140,0,12,7, + 204,0,12,3,204,0,12,1,236,0,12,0,236,0,12,0, + 252,0,12,0,124,0,12,0,60,0,12,0,60,0,63,0, + 28,0,255,192,12,0,22,32,96,24,1,0,6,0,0,7, + 0,0,3,128,0,1,192,0,0,96,0,0,48,0,0,0, + 0,1,254,0,7,255,128,15,3,192,28,0,224,60,0,240, + 56,0,112,120,0,120,120,0,120,240,0,60,240,0,60,240, + 0,60,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,56,120,0,120,120,0,120,56,0,112,60,0,240, + 28,0,224,15,3,192,7,255,128,1,254,0,22,32,96,24, + 1,0,0,3,0,0,7,0,0,14,0,0,28,0,0,48, + 0,0,96,0,0,0,0,1,254,0,7,255,128,15,3,192, + 28,0,224,60,0,240,56,0,112,120,0,120,120,0,120,240, + 0,60,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,240,0,56,120,0,120,120,0,120, + 56,0,112,60,0,240,28,0,224,15,3,192,7,255,128,1, + 254,0,22,31,93,24,1,0,0,48,0,0,120,0,0,252, + 0,1,134,0,3,3,0,0,0,0,1,254,0,7,255,128, + 15,3,192,28,0,224,60,0,240,56,0,112,120,0,120,120, + 0,120,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,240,0,60,240,0,56,120,0,120, + 120,0,120,56,0,112,60,0,240,28,0,224,15,3,192,7, + 255,128,1,254,0,22,30,90,24,1,0,0,241,128,1,255, + 0,3,30,0,0,0,0,0,0,0,1,254,0,7,255,128, + 15,3,192,28,0,224,60,0,240,56,0,112,120,0,120,120, + 0,120,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,240,0,60,240,0,56,120,0,120, + 120,0,120,56,0,112,60,0,240,28,0,224,15,3,192,7, + 255,128,1,254,0,22,30,90,24,1,0,0,198,0,1,239, + 0,0,198,0,0,0,0,0,0,0,1,254,0,7,255,128, + 15,3,192,28,0,224,60,0,240,56,0,112,120,0,120,120, + 0,120,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,240,0,60,240,0,56,120,0,120, + 120,0,120,56,0,112,60,0,240,28,0,224,15,3,192,7, + 255,128,1,254,0,17,15,45,20,2,1,224,3,128,112,7, + 0,56,14,0,28,28,0,14,56,0,7,112,0,3,224,0, + 1,192,0,3,224,0,7,112,0,14,56,0,28,28,0,56, + 14,0,112,7,0,224,3,128,22,28,84,24,1,254,0,0, + 24,1,254,48,7,255,176,14,3,224,28,0,224,60,1,240, + 56,1,240,120,3,120,120,6,120,240,6,60,240,12,60,240, + 24,60,240,56,60,240,48,60,240,96,60,240,224,60,240,192, + 60,113,128,56,123,0,120,123,0,120,62,0,112,60,0,240, + 30,1,224,31,3,192,55,255,128,113,254,0,96,0,0,192, + 0,0,26,32,128,26,0,0,0,48,0,0,0,56,0,0, + 0,28,0,0,0,14,0,0,0,3,0,0,0,1,128,0, + 0,0,0,0,255,224,255,192,63,128,63,0,14,0,12,0, + 14,0,12,0,14,0,12,0,14,0,12,0,14,0,12,0, + 14,0,12,0,14,0,12,0,14,0,12,0,14,0,12,0, + 14,0,12,0,14,0,12,0,14,0,12,0,14,0,12,0, + 14,0,12,0,14,0,12,0,14,0,12,0,14,0,12,0, + 15,0,24,0,7,0,24,0,7,128,48,0,3,224,240,0, + 1,255,192,0,0,127,0,0,26,32,128,26,0,0,0,0, + 48,0,0,0,112,0,0,0,224,0,0,1,192,0,0,3, + 0,0,0,6,0,0,0,0,0,0,255,224,255,192,63,128, + 63,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,15,0,24,0,7,0,24,0,7,128, + 48,0,3,224,240,0,1,255,192,0,0,127,0,0,26,31, + 124,26,0,0,0,6,0,0,0,15,0,0,0,31,128,0, + 0,48,192,0,0,96,96,0,0,0,0,0,255,224,255,192, + 63,128,63,0,14,0,12,0,14,0,12,0,14,0,12,0, + 14,0,12,0,14,0,12,0,14,0,12,0,14,0,12,0, + 14,0,12,0,14,0,12,0,14,0,12,0,14,0,12,0, + 14,0,12,0,14,0,12,0,14,0,12,0,14,0,12,0, + 14,0,12,0,14,0,12,0,15,0,24,0,7,0,24,0, + 7,128,48,0,3,224,240,0,1,255,192,0,0,127,0,0, + 26,30,120,26,0,0,0,48,192,0,0,121,224,0,0,48, + 192,0,0,0,0,0,0,0,0,0,255,224,255,192,63,128, + 63,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,15,0,24,0,7,0,24,0,7,128, + 48,0,3,224,240,0,1,255,192,0,0,127,0,0,23,32, + 96,23,0,0,0,1,128,0,3,128,0,7,0,0,14,0, + 0,24,0,0,48,0,0,0,0,255,131,254,126,0,248,62, + 0,112,30,0,96,15,0,224,15,0,192,7,129,128,7,193, + 128,3,195,0,3,227,0,1,230,0,0,246,0,0,252,0, + 0,124,0,0,120,0,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,254, + 0,3,255,128,20,25,75,22,1,0,255,224,0,31,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,15,254,0,15, + 255,128,14,3,192,14,1,224,14,0,240,14,0,240,14,0, + 240,14,0,240,14,0,240,14,1,224,14,3,224,15,255,192, + 15,255,0,14,0,0,14,0,0,14,0,0,14,0,0,31, + 0,0,255,224,0,17,26,78,19,0,255,3,248,0,7,156, + 0,14,14,0,14,15,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,14,0,28,14,0,28,248,0,28,248,0,28, + 14,0,28,7,0,28,7,0,28,7,128,28,3,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,231,128,28,231,0, + 60,231,0,252,254,0,0,56,0,16,23,46,17,1,0,12, + 0,14,0,7,0,3,128,0,192,0,96,0,0,7,192,31, + 240,120,120,112,56,112,56,112,56,1,248,15,248,60,56,112, + 56,224,56,224,56,224,120,240,253,127,159,63,14,16,23,46, + 17,1,0,0,48,0,112,0,224,1,192,3,0,6,0,0, + 0,7,192,31,240,120,120,112,56,112,56,112,56,1,248,15, + 248,60,56,112,56,224,56,224,56,224,120,240,253,127,159,63, + 14,16,22,44,17,1,0,3,0,7,128,15,192,24,96,48, + 48,0,0,7,192,31,240,120,120,112,56,112,56,112,56,1, + 248,15,248,60,56,112,56,224,56,224,56,224,120,240,253,127, + 159,62,14,16,21,42,17,1,0,15,24,31,240,49,224,0, + 0,0,0,7,192,31,240,120,120,112,56,112,56,112,56,1, + 248,15,248,60,56,112,56,224,56,224,56,224,120,240,253,127, + 159,62,14,16,21,42,17,1,0,12,96,30,240,12,96,0, + 0,0,0,7,192,31,240,120,120,112,56,112,56,112,56,1, + 248,15,248,60,56,112,56,224,56,224,56,224,120,240,253,127, + 159,62,14,16,23,46,17,1,0,7,128,12,192,8,64,8, + 64,12,192,7,128,0,0,7,192,31,240,120,120,112,56,112, + 56,112,56,1,248,15,248,60,56,112,56,224,56,224,56,224, + 120,240,253,127,159,62,14,23,16,48,25,1,0,15,195,224, + 63,231,248,112,124,28,112,60,12,112,56,14,112,56,14,1, + 248,14,15,255,254,60,56,0,112,56,0,240,56,0,224,60, + 2,224,124,6,240,254,28,127,207,248,63,3,240,12,23,46, + 14,1,249,7,128,31,224,56,112,112,240,112,240,224,96,224, + 0,224,0,224,0,224,0,240,0,240,16,120,48,124,96,63, + 192,15,0,2,0,4,0,15,0,1,128,1,128,17,128,15, + 0,14,23,46,16,1,0,24,0,28,0,14,0,7,0,1, + 128,0,192,0,0,7,192,31,240,56,56,112,24,112,28,240, + 28,240,28,255,252,224,0,224,0,240,0,240,4,120,12,60, + 56,31,240,7,192,14,23,46,16,1,0,0,24,0,56,0, + 112,0,224,1,128,3,0,0,0,7,192,31,240,56,120,112, + 56,96,28,224,28,224,28,255,252,224,0,224,0,240,0,240, + 4,120,12,60,56,31,240,7,192,14,22,44,16,1,0,3, + 0,7,128,15,192,24,96,48,48,0,0,7,192,31,240,56, + 56,112,24,112,28,240,28,240,28,255,252,224,0,224,0,240, + 0,240,4,120,12,60,56,31,240,7,192,14,21,42,16,1, + 0,12,96,30,240,12,96,0,0,0,0,7,192,31,240,56, + 56,112,24,112,28,240,28,240,28,255,252,224,0,224,0,240, + 0,240,4,120,12,60,24,31,240,7,192,9,23,46,11,1, + 0,192,0,224,0,112,0,56,0,12,0,6,0,0,0,252, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,255,128,9, + 23,46,11,1,0,1,128,3,128,7,0,14,0,24,0,48, + 0,0,0,252,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,255,128,10,22,44,11,0,0,12,0,30,0,63,0,97, + 128,192,192,0,0,126,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,127,192,9,21,42,11,1,0,99,0,247,128,99, + 0,0,0,0,0,252,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,255,128,14,25,50,17,1,0,48,0,60,0,14, + 224,7,192,15,128,13,192,0,224,0,240,0,112,7,248,31, + 248,56,120,112,60,112,60,224,28,224,28,224,28,224,28,224, + 28,224,28,240,60,112,56,120,120,63,240,15,192,19,21,63, + 19,0,0,3,198,0,7,252,0,12,120,0,0,0,0,0, + 0,0,28,120,0,253,254,0,31,158,0,30,15,0,30,7, + 0,28,7,0,28,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,255, + 31,224,14,23,46,16,1,0,48,0,56,0,28,0,14,0, + 3,0,1,128,0,0,7,128,31,224,56,112,112,56,112,56, + 224,28,224,28,224,28,224,28,224,28,224,28,240,60,112,56, + 120,120,31,224,7,128,14,23,46,16,1,0,0,24,0,56, + 0,112,0,224,1,128,3,0,0,0,7,128,31,224,56,112, + 112,56,112,56,224,28,224,28,224,28,224,28,224,28,224,28, + 240,60,112,56,120,120,31,224,7,128,14,22,44,16,1,0, + 3,0,7,128,15,192,24,96,48,48,0,0,7,128,31,224, + 56,112,112,56,112,56,224,28,224,28,224,28,224,28,224,28, + 224,28,112,56,112,56,56,112,31,224,7,128,14,21,42,16, + 1,0,15,24,31,240,49,224,0,0,0,0,7,128,31,224, + 56,112,112,56,112,56,224,28,224,28,224,28,224,28,224,28, + 224,28,112,56,112,56,56,112,31,224,7,128,14,21,42,16, + 1,0,24,192,61,224,24,192,0,0,0,0,7,128,31,224, + 56,112,112,56,112,56,224,28,224,28,224,28,224,28,224,28, + 224,28,112,56,112,56,56,112,31,224,7,128,16,16,32,20, + 2,0,1,128,3,192,3,192,1,128,0,0,0,0,0,0, + 255,255,255,255,0,0,0,0,0,0,1,128,3,192,3,192, + 1,128,14,22,44,16,1,253,0,24,0,24,0,48,7,240, + 31,240,56,112,112,248,112,216,225,156,225,156,227,28,227,28, + 230,28,230,28,236,56,124,56,120,112,63,224,63,128,48,0, + 96,0,96,0,18,23,69,20,0,0,6,0,0,7,0,0, + 3,128,0,1,192,0,0,96,0,0,48,0,0,0,0,28, + 7,0,252,63,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,28,7,0,28,7,0,28,7,0, + 28,15,0,28,15,0,14,63,0,15,247,192,7,199,0,18, + 23,69,20,0,0,0,12,0,0,28,0,0,56,0,0,112, + 0,0,192,0,1,128,0,0,0,0,28,7,0,252,63,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,7,0,28,15,0,28,15, + 0,14,63,0,15,247,192,7,199,0,18,22,66,20,0,0, + 0,192,0,1,224,0,3,240,0,6,24,0,12,12,0,0, + 0,0,28,7,0,252,63,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,15,0,28,15,0,14,63,0,15,247,192,7, + 199,0,18,21,63,20,0,0,3,24,0,7,188,0,3,24, + 0,0,0,0,0,0,0,28,7,0,252,63,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,15,0,28,15,0,14,63, + 0,15,247,192,7,199,0,17,30,90,19,1,249,0,12,0, + 0,28,0,0,56,0,0,112,0,0,192,0,1,128,0,0, + 0,0,255,31,128,124,7,0,60,6,0,28,6,0,30,12, + 0,14,12,0,15,8,0,7,24,0,7,24,0,7,176,0, + 3,176,0,3,224,0,1,224,0,1,224,0,0,192,0,0, + 192,0,1,128,0,1,128,0,99,0,0,227,0,0,230,0, + 0,252,0,0,112,0,0,16,29,58,19,1,249,56,0,248, + 0,56,0,56,0,56,0,56,0,56,240,59,252,63,30,60, + 14,60,15,56,7,56,7,56,7,56,7,56,7,56,7,60, + 15,60,14,62,30,59,252,57,240,56,0,56,0,56,0,56, + 0,56,0,56,0,255,0,18,28,84,20,1,249,3,24,0, + 7,188,0,3,24,0,0,0,0,0,0,0,255,31,192,124, + 7,0,60,6,0,28,6,0,30,12,0,14,12,0,15,8, + 0,7,24,0,7,24,0,7,176,0,3,176,0,3,224,0, + 1,224,0,1,224,0,0,192,0,0,192,0,1,128,0,1, + 128,0,99,0,0,227,0,0,230,0,0,252,0,0,112,0, + 0}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--34-240-100-100-P-181-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 24 + Calculated Max Values w=16 h=25 x= 3 y=11 dx=20 dy= 0 ascent=25 len=50 + Font Bounding box w=39 h=50 x=-6 y=-11 + Calculated Min Values x=-1 y=-6 dx= 0 dy= 0 + Pure Font ascent =24 descent= 0 + X Font ascent =24 descent= 0 + Max Font ascent =25 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR24n[722] U8G_SECTION(".progmem.u8g_font_ncenR24n") = { + 0,39,50,250,245,24,0,0,0,0,42,57,0,25,250,24, + 0,12,14,28,17,2,11,6,0,6,0,6,0,198,112,230, + 112,127,224,31,128,31,0,127,192,230,112,198,112,6,0,6, + 0,6,0,16,17,34,20,2,255,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,255,255,255,255,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,5,10,10,9,2, + 250,112,248,248,120,24,24,48,96,224,128,8,3,3,11,1, + 7,255,255,255,4,4,4,9,2,0,96,240,240,96,10,25, + 50,9,255,0,0,192,0,192,0,192,1,128,1,128,1,128, + 3,0,3,0,3,0,6,0,6,0,6,0,12,0,12,0, + 12,0,24,0,24,0,24,0,48,0,48,0,48,0,96,0, + 96,0,96,0,192,0,16,24,48,18,2,0,3,192,15,240, + 28,56,24,24,56,28,120,30,112,14,240,15,240,15,240,15, + 240,15,240,15,240,15,240,15,240,15,240,15,240,15,112,14, + 120,30,56,28,24,24,28,56,15,240,3,192,13,24,48,18, + 3,0,3,0,7,0,255,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,15,128, + 255,248,15,24,48,18,1,0,7,224,31,248,56,28,96,30, + 112,14,120,14,120,14,120,14,48,30,0,28,0,28,0,56, + 0,120,0,112,0,224,1,192,3,128,7,2,14,2,28,6, + 56,6,127,254,255,254,255,254,15,24,48,18,1,0,7,224, + 31,248,56,56,112,28,120,28,120,28,48,28,0,28,0,56, + 0,112,1,224,15,240,0,248,0,60,0,28,0,30,96,14, + 240,14,240,14,240,30,224,28,120,124,63,240,15,192,16,24, + 48,18,1,0,0,48,0,48,0,112,0,240,1,240,1,240, + 3,112,6,112,6,112,12,112,24,112,24,112,48,112,96,112, + 96,112,192,112,255,255,255,255,0,112,0,112,0,112,0,112, + 0,248,3,254,14,24,48,18,2,0,56,8,63,248,63,240, + 63,224,48,0,48,0,32,0,96,0,99,192,111,240,124,120, + 112,56,96,60,0,28,0,28,0,28,96,28,240,28,240,28, + 240,60,224,56,112,120,127,240,31,128,15,24,48,18,1,0, + 3,240,15,252,28,62,56,30,56,30,48,12,112,0,112,0, + 112,0,241,224,247,248,254,60,252,28,248,30,240,14,240,14, + 240,14,112,14,112,14,112,30,56,28,56,60,31,240,7,192, + 13,24,48,18,3,0,255,248,255,248,255,248,192,16,192,48, + 128,32,128,96,128,64,0,192,0,192,1,128,1,128,1,128, + 3,0,3,0,3,0,7,0,7,0,7,0,15,0,15,0, + 15,0,15,0,6,0,15,24,48,18,1,0,7,224,31,248, + 60,56,56,28,112,28,112,12,112,12,120,24,60,56,63,112, + 31,224,7,240,7,248,29,252,56,124,112,30,112,30,224,14, + 224,14,224,14,112,28,120,60,63,248,15,224,15,24,48,18, + 1,0,15,192,63,240,120,120,112,56,240,60,224,28,224,28, + 224,30,224,30,240,30,240,62,120,126,120,126,63,222,31,158, + 0,30,0,28,0,28,96,56,240,56,240,112,241,224,127,192, + 63,0}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--34-240-100-100-P-181-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=31 h=31 x= 9 y=17 dx=31 dy= 0 ascent=27 len=100 + Font Bounding box w=39 h=50 x=-6 y=-11 + Calculated Min Values x=-2 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =27 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR24r[5367] U8G_SECTION(".progmem.u8g_font_ncenR24r") = { + 0,39,50,250,245,25,5,159,15,28,32,127,249,27,249,25, + 249,0,0,0,9,1,1,4,25,25,10,3,0,96,240,240, + 240,240,240,240,96,96,96,96,96,96,96,96,96,96,96,0, + 0,0,96,240,240,96,9,8,16,13,2,17,227,128,227,128, + 227,128,227,128,65,0,65,0,65,0,65,0,16,23,46,19, + 2,0,3,12,3,12,3,12,7,28,6,24,6,24,6,24, + 127,255,127,255,6,24,14,56,12,56,12,48,255,254,255,254, + 12,48,12,48,28,112,28,112,24,96,24,96,24,96,24,96, + 14,31,62,18,2,252,2,0,2,0,2,0,15,192,63,240, + 114,112,226,56,194,120,194,120,194,48,194,0,226,0,250,0, + 127,0,63,192,31,240,3,248,2,124,2,60,98,28,242,12, + 242,12,226,28,194,24,226,120,127,240,31,192,2,0,2,0, + 2,0,2,0,24,25,75,27,1,255,3,128,32,15,192,224, + 28,227,192,56,127,192,56,97,128,112,97,128,112,99,0,240, + 99,0,224,102,0,224,196,0,224,204,0,225,136,28,115,24, + 126,62,16,227,0,49,195,0,99,195,0,99,131,0,199,131, + 0,199,3,1,135,6,1,135,6,3,7,12,2,3,152,6, + 1,240,4,0,0,22,25,75,27,2,0,1,248,0,7,188, + 0,6,28,0,14,14,0,14,14,0,14,14,0,14,12,0, + 14,28,0,15,56,0,15,112,0,7,224,0,7,128,0,15, + 199,252,59,193,240,113,224,224,113,240,192,224,240,192,224,249, + 128,224,125,128,240,63,4,240,30,4,248,15,12,126,63,248, + 63,243,248,31,193,224,3,8,8,7,2,17,224,224,224,224, + 64,64,64,64,8,29,29,11,2,252,1,7,6,12,24,48, + 48,48,96,96,96,96,224,224,224,224,224,96,96,96,96,48, + 48,16,24,12,6,7,3,8,29,29,11,2,252,192,224,96, + 48,24,8,12,12,6,6,6,6,7,7,7,7,7,6,6, + 6,6,12,12,28,24,48,96,192,192,12,14,28,17,2,11, + 6,0,6,0,6,0,198,112,230,112,127,224,31,128,31,0, + 127,192,230,112,198,112,6,0,6,0,6,0,16,17,34,20, + 2,255,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 255,255,255,255,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,5,10,10,9,2,250,112,248,248,120,24,24, + 48,96,224,128,8,3,3,11,1,7,255,255,255,4,4,4, + 9,2,0,96,240,240,96,10,25,50,9,255,0,0,192,0, + 192,0,192,1,128,1,128,1,128,3,0,3,0,3,0,6, + 0,6,0,6,0,12,0,12,0,12,0,24,0,24,0,24, + 0,48,0,48,0,48,0,96,0,96,0,96,0,192,0,16, + 24,48,18,2,0,3,192,15,240,28,56,24,24,56,28,120, + 30,112,14,240,15,240,15,240,15,240,15,240,15,240,15,240, + 15,240,15,240,15,240,15,112,14,120,30,56,28,24,24,28, + 56,15,240,3,192,13,24,48,18,3,0,3,0,7,0,255, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,15,128,255,248,15,24,48,18,1, + 0,7,224,31,248,56,28,96,30,112,14,120,14,120,14,120, + 14,48,30,0,28,0,28,0,56,0,120,0,112,0,224,1, + 192,3,128,7,2,14,2,28,6,56,6,127,254,255,254,255, + 254,15,24,48,18,1,0,7,224,31,248,56,56,112,28,120, + 28,120,28,48,28,0,28,0,56,0,112,1,224,15,240,0, + 248,0,60,0,28,0,30,96,14,240,14,240,14,240,30,224, + 28,120,124,63,240,15,192,16,24,48,18,1,0,0,48,0, + 48,0,112,0,240,1,240,1,240,3,112,6,112,6,112,12, + 112,24,112,24,112,48,112,96,112,96,112,192,112,255,255,255, + 255,0,112,0,112,0,112,0,112,0,248,3,254,14,24,48, + 18,2,0,56,8,63,248,63,240,63,224,48,0,48,0,32, + 0,96,0,99,192,111,240,124,120,112,56,96,60,0,28,0, + 28,0,28,96,28,240,28,240,28,240,60,224,56,112,120,127, + 240,31,128,15,24,48,18,1,0,3,240,15,252,28,62,56, + 30,56,30,48,12,112,0,112,0,112,0,241,224,247,248,254, + 60,252,28,248,30,240,14,240,14,240,14,112,14,112,14,112, + 30,56,28,56,60,31,240,7,192,13,24,48,18,3,0,255, + 248,255,248,255,248,192,16,192,48,128,32,128,96,128,64,0, + 192,0,192,1,128,1,128,1,128,3,0,3,0,3,0,7, + 0,7,0,7,0,15,0,15,0,15,0,15,0,6,0,15, + 24,48,18,1,0,7,224,31,248,60,56,56,28,112,28,112, + 12,112,12,120,24,60,56,63,112,31,224,7,240,7,248,29, + 252,56,124,112,30,112,30,224,14,224,14,224,14,112,28,120, + 60,63,248,15,224,15,24,48,18,1,0,15,192,63,240,120, + 120,112,56,240,60,224,28,224,28,224,30,224,30,240,30,240, + 62,120,126,120,126,63,222,31,158,0,30,0,28,0,28,96, + 56,240,56,240,112,241,224,127,192,63,0,4,16,16,9,3, + 0,96,240,240,96,0,0,0,0,0,0,0,0,96,240,240, + 96,5,21,21,9,1,251,48,120,120,48,0,0,0,0,0, + 0,0,0,48,120,120,56,24,16,48,96,192,16,18,36,20, + 2,255,0,1,0,7,0,31,0,124,1,240,7,192,31,0, + 124,0,240,0,240,0,124,0,31,0,7,192,1,240,0,124, + 0,31,0,7,0,1,16,8,16,20,2,4,255,255,255,255, + 0,0,0,0,0,0,0,0,255,255,255,255,16,18,36,20, + 2,255,128,0,224,0,248,0,62,0,15,128,3,224,0,248, + 0,62,0,15,0,15,0,62,0,248,3,224,15,128,62,0, + 248,0,224,0,128,0,12,25,50,14,1,0,63,128,115,224, + 192,224,192,240,224,112,224,112,224,112,0,240,0,240,1,224, + 1,192,3,128,3,0,6,0,4,0,4,0,12,0,12,0, + 0,0,0,0,0,0,12,0,30,0,30,0,12,0,22,25, + 75,25,1,0,0,254,0,3,255,128,15,135,192,30,0,224, + 28,0,112,48,0,56,48,0,24,96,251,152,97,207,140,227, + 143,140,199,135,140,199,7,12,207,7,12,207,15,8,206,15, + 24,206,14,24,206,30,48,102,62,96,103,126,192,51,231,152, + 56,0,56,28,0,112,15,129,224,7,255,128,0,254,0,23, + 25,75,23,0,0,0,16,0,0,56,0,0,56,0,0,120, + 0,0,124,0,0,124,0,0,220,0,0,222,0,1,158,0, + 1,142,0,1,143,0,3,7,0,3,7,128,3,7,128,6, + 3,128,7,255,192,7,255,192,12,1,192,12,1,224,12,1, + 224,24,0,240,24,0,240,56,0,248,124,1,252,254,3,254, + 20,25,75,23,1,0,255,254,0,63,255,128,14,7,192,14, + 1,192,14,1,224,14,1,224,14,1,224,14,1,224,14,1, + 192,14,1,192,14,3,128,15,255,0,15,252,0,14,15,128, + 14,3,192,14,1,224,14,0,240,14,0,240,14,0,240,14, + 0,240,14,0,240,14,1,224,14,3,224,63,255,192,255,255, + 0,20,25,75,22,1,0,1,252,96,7,255,96,14,3,224, + 28,1,224,60,0,224,56,0,224,120,0,96,120,0,96,240, + 0,32,240,0,32,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,48,120,0,48,120,0,48, + 120,0,96,60,0,96,28,0,192,15,3,128,7,255,0,1, + 252,0,22,25,75,25,1,0,255,254,0,63,255,192,14,3, + 224,14,0,240,14,0,112,14,0,120,14,0,120,14,0,60, + 14,0,60,14,0,60,14,0,60,14,0,60,14,0,60,14, + 0,60,14,0,60,14,0,60,14,0,60,14,0,60,14,0, + 56,14,0,120,14,0,112,14,0,224,14,3,224,63,255,192, + 255,254,0,20,25,75,24,1,0,255,255,240,63,255,240,14, + 1,240,14,0,112,14,0,112,14,0,48,14,4,48,14,4, + 16,14,4,16,14,12,0,14,60,0,15,252,0,15,252,0, + 14,60,0,14,12,0,14,12,0,14,4,16,14,4,16,14, + 0,16,14,0,48,14,0,48,14,0,112,14,1,240,63,255, + 240,255,255,240,20,25,75,22,1,0,255,255,240,63,255,240, + 14,1,240,14,0,112,14,0,48,14,0,48,14,0,16,14, + 4,16,14,4,16,14,12,0,14,12,0,14,60,0,15,252, + 0,15,252,0,14,28,0,14,12,0,14,4,0,14,4,0, + 14,4,0,14,0,0,14,0,0,14,0,0,14,0,0,63, + 128,0,255,224,0,24,25,75,24,1,0,1,254,48,7,255, + 176,15,3,240,30,0,240,60,0,112,56,0,112,120,0,48, + 112,0,48,112,0,16,240,0,16,240,0,0,240,0,0,240, + 0,0,240,0,0,240,7,255,240,0,248,240,0,112,112,0, + 112,112,0,112,120,0,112,56,0,240,28,0,240,15,1,176, + 7,255,48,1,254,16,25,25,100,27,1,0,255,227,255,128, + 63,128,254,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,15,255,248,0,15,255,248,0, + 14,0,56,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,63,128,254,0,255,227,255,128, + 11,25,50,13,1,0,255,224,63,128,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,63,128,255,224,17,25,75,18,0,0,3,255, + 128,0,124,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,112,56, + 0,248,56,0,248,56,0,248,56,0,240,56,0,192,120,0, + 224,112,0,127,240,0,31,192,0,25,25,100,25,1,0,255, + 227,255,0,63,129,252,0,14,0,240,0,14,0,224,0,14, + 1,192,0,14,1,128,0,14,3,0,0,14,6,0,0,14, + 14,0,0,14,28,0,0,14,56,0,0,14,124,0,0,14, + 254,0,0,15,222,0,0,15,143,0,0,15,7,128,0,14, + 7,192,0,14,3,192,0,14,1,224,0,14,1,240,0,14, + 0,240,0,14,0,120,0,14,0,124,0,63,0,62,0,255, + 192,255,128,20,25,75,22,1,0,255,224,0,63,128,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,16,14,0,16,14, + 0,16,14,0,48,14,0,48,14,0,112,14,1,240,63,255, + 224,255,255,224,29,25,100,30,0,0,127,128,15,248,31,128, + 15,192,15,128,15,128,15,192,15,128,13,192,27,128,13,192, + 27,128,13,224,19,128,12,224,51,128,12,224,51,128,12,240, + 35,128,12,112,99,128,12,112,99,128,12,120,99,128,12,56, + 195,128,12,56,195,128,12,60,195,128,12,28,131,128,12,29, + 131,128,12,31,131,128,12,31,3,128,12,15,3,128,12,15, + 3,128,12,14,3,128,63,6,15,224,255,198,63,248,26,25, + 100,28,1,0,255,0,255,192,31,0,63,0,15,128,12,0, + 15,192,12,0,15,192,12,0,13,224,12,0,13,240,12,0, + 12,248,12,0,12,120,12,0,12,124,12,0,12,62,12,0, + 12,30,12,0,12,31,12,0,12,15,140,0,12,7,140,0, + 12,7,204,0,12,3,204,0,12,1,236,0,12,0,236,0, + 12,0,252,0,12,0,124,0,12,0,60,0,12,0,60,0, + 63,0,28,0,255,192,12,0,22,25,75,24,1,0,1,254, + 0,7,255,128,15,3,192,28,0,224,60,0,240,56,0,112, + 120,0,120,112,0,56,240,0,60,240,0,60,224,0,28,224, + 0,28,224,0,28,224,0,28,224,0,28,240,0,60,240,0, + 56,112,0,56,120,0,120,56,0,112,60,0,240,28,0,224, + 15,3,192,7,255,128,1,254,0,20,25,75,22,1,0,255, + 254,0,63,255,128,14,7,192,14,1,224,14,0,240,14,0, + 240,14,0,112,14,0,112,14,0,240,14,0,240,14,1,224, + 14,7,192,15,255,128,15,254,0,14,0,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,63,128,0,255,224,0,23,31,93,24,1,250, + 0,254,0,3,255,128,15,1,224,30,0,240,60,0,120,56, + 0,56,120,0,60,112,0,28,240,0,30,240,0,30,224,0, + 14,224,0,14,224,0,14,224,0,14,240,0,30,240,0,30, + 112,124,28,121,222,60,121,135,56,61,3,112,29,3,112,31, + 3,224,15,131,192,3,255,128,0,255,192,0,3,198,0,1, + 198,0,1,228,0,1,252,0,0,248,0,0,112,21,25,75, + 23,1,0,255,254,0,63,255,128,14,7,192,14,1,192,14, + 1,224,14,0,224,14,0,224,14,1,224,14,1,224,14,1, + 192,14,3,192,14,15,0,15,252,0,15,254,0,14,15,0, + 14,7,0,14,7,128,14,3,128,14,3,128,14,3,136,14, + 3,136,14,3,136,14,3,216,63,129,240,255,225,224,17,25, + 75,20,2,0,15,241,0,63,251,0,112,31,0,96,7,0, + 224,7,0,224,3,0,224,1,0,240,1,0,240,0,0,126, + 0,0,127,224,0,31,252,0,7,254,0,0,127,0,0,15, + 128,128,7,128,128,3,128,192,3,128,192,3,128,192,3,128, + 224,7,128,240,7,0,248,14,0,223,252,0,135,240,0,19, + 25,75,21,1,0,255,255,224,255,255,224,240,227,224,224,224, + 224,192,224,96,192,224,96,128,224,32,128,224,32,128,224,32, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,3,248,0,15,254,0, + 26,25,100,26,0,0,255,224,255,192,63,128,63,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,15,0,24,0,7,0,24,0,7,128,48,0,3,224, + 240,0,1,255,192,0,0,127,0,0,23,25,75,23,0,0, + 255,195,254,62,0,248,30,0,112,30,0,112,14,0,96,15, + 0,96,15,0,64,7,0,192,7,128,192,7,128,128,3,129, + 128,3,193,128,3,193,0,1,195,0,1,227,0,1,226,0, + 0,230,0,0,246,0,0,244,0,0,124,0,0,124,0,0, + 56,0,0,56,0,0,56,0,0,16,0,31,25,100,31,0, + 0,255,31,241,254,126,7,192,124,60,3,128,56,28,3,128, + 48,30,3,192,48,30,3,192,96,14,3,192,96,14,3,224, + 96,15,3,224,96,7,6,224,192,7,6,224,192,7,132,240, + 192,7,140,112,192,3,140,113,128,3,140,121,128,3,200,57, + 128,1,216,57,0,1,248,63,0,1,248,31,0,0,240,31, + 0,0,240,30,0,0,240,30,0,0,224,14,0,0,96,12, + 0,0,96,12,0,23,25,75,22,0,0,255,199,252,63,1, + 240,31,0,224,15,1,192,15,129,128,7,131,128,3,195,0, + 3,230,0,1,238,0,0,252,0,0,248,0,0,120,0,0, + 124,0,0,124,0,0,254,0,1,223,0,1,143,0,3,135, + 128,3,7,128,6,3,192,14,3,224,12,1,224,28,0,240, + 62,0,248,255,135,254,23,25,75,23,0,0,255,131,254,126, + 0,248,62,0,112,30,0,96,15,0,224,15,0,192,7,129, + 128,7,193,128,3,195,0,3,227,0,1,230,0,0,246,0, + 0,252,0,0,124,0,0,120,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,254,0,3,255,128,17,25,75,19,1,0,127,255,128, + 127,255,128,120,15,0,112,15,0,96,30,0,96,62,0,96, + 60,0,64,124,0,64,120,0,0,240,0,0,240,0,1,224, + 0,3,224,0,3,192,0,7,128,0,7,128,128,15,0,128, + 31,0,128,30,1,128,62,1,128,60,1,128,120,3,128,120, + 7,128,255,255,128,255,255,128,7,29,29,11,3,252,254,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,254,15,25,50,20,2, + 0,224,0,112,0,112,0,56,0,56,0,28,0,28,0,14, + 0,14,0,7,0,7,0,3,128,3,128,3,128,1,192,1, + 192,0,224,0,224,0,112,0,112,0,56,0,56,0,28,0, + 28,0,14,7,29,29,11,1,252,254,6,6,6,6,6,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,254,16,13,26,20,2,12,3,192,3,192, + 7,224,7,224,14,112,14,112,28,56,28,56,56,28,56,28, + 112,14,112,14,224,7,16,2,4,16,0,252,255,255,255,255, + 7,6,6,11,1,17,192,224,112,56,12,6,16,16,32,17, + 1,0,15,192,63,240,120,120,112,56,96,56,0,56,1,248, + 15,248,60,56,112,56,224,56,224,56,224,120,241,253,127,159, + 62,14,15,25,50,17,0,0,24,0,248,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,57,224,59,248,62,28, + 60,28,60,14,56,14,56,14,56,14,56,14,56,14,56,14, + 60,14,60,28,62,28,55,248,33,224,12,16,32,14,1,0, + 7,128,31,224,56,112,112,240,112,240,224,96,224,0,224,0, + 224,0,224,0,224,0,112,16,112,48,56,96,63,192,15,128, + 16,25,50,18,1,0,0,12,0,124,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,7,156,31,220,56,124,112,60, + 112,60,224,28,224,28,224,28,224,28,224,28,224,28,240,60, + 112,60,120,124,31,220,7,159,14,16,32,16,1,0,7,192, + 31,240,56,120,112,56,96,28,224,28,224,28,255,252,224,0, + 224,0,224,0,240,4,112,12,120,56,63,240,15,192,14,25, + 50,11,0,0,1,248,7,28,14,28,12,28,28,8,28,0, + 28,0,28,0,28,0,255,192,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,255,192,16,23,46,17,1,249,7,159,31,251, + 56,115,112,56,112,56,112,56,112,56,112,56,56,112,31,224, + 55,128,96,0,96,0,127,224,127,248,63,252,48,62,96,14, + 224,14,224,14,248,60,127,248,15,192,19,25,75,20,0,0, + 12,0,0,252,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,112,0,29,252, + 0,31,30,0,30,14,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,255,63,224,9,24,48,10,1, + 0,24,0,60,0,60,0,24,0,0,0,0,0,0,0,0, + 0,28,0,252,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,255, + 128,9,31,62,10,254,249,3,0,7,128,7,128,3,0,0, + 0,0,0,0,0,0,0,3,128,31,128,3,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,67,128,227,0,227, + 0,230,0,124,0,19,25,75,20,0,0,12,0,0,252,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,127,128,28,30,0,28,24,0,28, + 48,0,28,96,0,28,192,0,29,192,0,31,224,0,30,240, + 0,28,120,0,28,60,0,28,28,0,28,14,0,28,15,0, + 28,7,128,255,31,224,9,25,50,11,1,0,12,0,28,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,255,128,27,16, + 64,27,0,0,28,240,120,0,253,252,254,0,31,29,142,0, + 30,15,7,0,30,15,7,0,28,14,7,0,28,14,7,0, + 28,14,7,0,28,14,7,0,28,14,7,0,28,14,7,0, + 28,14,7,0,28,14,7,0,28,14,7,0,28,14,7,0, + 255,63,159,224,19,16,48,19,0,0,28,120,0,253,254,0, + 31,142,0,30,7,0,30,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,255,31,224,14,16,32,16,1,0, + 7,128,31,224,56,112,112,56,112,56,224,28,224,28,224,28, + 224,28,224,28,224,28,112,56,112,56,56,112,31,224,7,128, + 16,23,46,19,1,249,25,240,251,252,62,30,60,14,60,7, + 56,7,56,7,56,7,56,7,56,7,56,7,60,14,60,14, + 62,28,59,252,57,240,56,0,56,0,56,0,56,0,56,0, + 124,0,255,0,16,23,46,17,1,249,7,196,31,236,56,60, + 112,60,112,28,224,28,224,28,224,28,224,28,224,28,224,28, + 240,60,112,60,56,124,63,220,15,156,0,28,0,28,0,28, + 0,28,0,28,0,62,0,255,14,16,32,15,0,0,28,120, + 253,252,31,60,30,60,30,24,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,255,128,11,16, + 32,15,2,0,30,192,127,192,225,192,192,192,192,192,240,64, + 254,0,127,128,63,192,7,224,128,224,192,96,192,96,224,224, + 255,192,159,0,12,23,46,13,0,0,4,0,4,0,12,0, + 12,0,28,0,28,0,60,0,255,224,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,16,28,16,28,48, + 28,48,30,96,15,224,7,192,18,16,48,20,0,0,28,7, + 0,252,63,0,28,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,28, + 15,0,28,15,0,30,63,0,15,247,192,7,199,0,17,16, + 48,17,0,0,255,31,128,124,7,0,60,6,0,30,6,0, + 30,12,0,14,12,0,15,8,0,7,24,0,7,24,0,7, + 176,0,3,176,0,3,224,0,1,224,0,1,224,0,0,192, + 0,0,192,0,24,16,48,24,0,0,254,127,63,120,60,14, + 56,28,12,60,28,28,28,30,24,28,30,24,14,54,16,14, + 39,48,15,103,48,7,103,96,7,67,96,3,195,192,3,195, + 192,3,129,192,1,129,128,1,129,128,16,16,32,19,1,0, + 255,127,60,28,30,24,14,48,15,48,7,96,3,192,3,192, + 1,224,3,224,6,112,12,120,28,56,56,60,120,30,254,127, + 18,23,69,20,1,249,255,31,192,60,7,0,60,6,0,28, + 6,0,30,12,0,14,12,0,15,8,0,7,24,0,7,24, + 0,7,176,0,3,176,0,3,224,0,1,224,0,1,224,0, + 0,192,0,0,192,0,1,128,0,1,128,0,99,0,0,243, + 0,0,230,0,0,252,0,0,112,0,0,13,16,32,15,1, + 0,127,248,120,120,96,240,96,224,65,224,67,192,3,128,7, + 128,15,0,14,0,30,8,60,8,56,24,120,56,240,248,255, + 248,6,30,30,11,3,252,12,28,56,48,48,48,48,48,48, + 48,48,48,48,112,224,224,112,48,48,48,48,48,48,48,48, + 48,48,56,28,12,2,25,25,20,9,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,6,30,30,11,2,252,192,224,112,48,48,48, + 48,48,48,48,48,48,48,56,28,28,56,48,48,48,48,48, + 48,48,48,48,48,112,224,192,16,4,8,20,2,6,30,3, + 127,135,225,254,192,120,255}; +/* + Fontname: -FreeType-Org_v01-Medium-R-Normal--8-80-72-72-P-43-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w=11 h= 9 x= 1 y= 4 dx=12 dy= 0 ascent= 9 len=10 + Font Bounding box w=11 h=11 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_orgv01[1535] U8G_SECTION(".progmem.u8g_font_orgv01") = { + 1,11,11,0,254,5,0,249,1,238,32,255,255,9,254,5, + 255,2,0,64,2,21,37,128,128,128,0,128,6,49,65,160, + 2,85,101,80,248,80,248,80,2,85,101,248,160,248,40,248, + 2,85,101,136,16,32,64,136,2,85,101,240,144,248,144,232, + 6,17,33,128,2,37,53,64,128,128,128,64,2,37,53,128, + 64,64,64,128,3,51,67,160,64,160,3,51,67,64,224,64, + 1,18,34,128,128,4,65,81,240,2,17,33,128,2,85,101, + 8,16,32,64,128,2,85,101,248,136,136,136,248,2,21,37, + 128,128,128,128,128,2,85,101,248,8,248,128,248,2,85,101, + 248,8,248,8,248,2,85,101,136,136,248,8,8,2,85,101, + 248,128,248,8,248,2,85,101,248,128,248,136,248,2,85,101, + 248,8,8,8,8,2,85,101,248,136,248,136,248,2,85,101, + 248,136,248,8,248,2,20,36,128,0,0,128,2,20,36,128, + 0,128,128,2,53,69,32,64,128,64,32,3,67,83,240,0, + 240,2,53,69,128,64,32,64,128,2,85,101,248,8,56,0, + 32,2,85,101,248,168,184,128,248,2,85,101,248,136,248,136, + 136,2,85,101,240,136,240,136,240,2,85,101,248,128,128,128, + 248,2,85,101,240,136,136,136,240,2,85,101,248,128,248,128, + 248,2,85,101,248,128,248,128,128,2,85,101,248,128,184,136, + 248,2,85,101,136,136,248,136,136,2,85,101,248,32,32,32, + 248,2,85,101,120,16,16,144,248,2,85,101,136,176,192,176, + 136,2,85,101,128,128,128,128,248,2,85,101,248,168,168,168, + 168,2,85,101,248,136,136,136,136,2,85,101,248,136,136,136, + 248,2,85,101,248,136,248,128,128,2,85,101,248,136,136,152, + 248,2,85,101,248,136,248,144,144,2,85,101,248,128,248,8, + 248,2,85,101,248,32,32,32,32,2,85,101,136,136,136,136, + 248,2,85,101,136,136,136,80,32,2,85,101,168,168,168,168, + 248,2,85,101,136,80,32,80,136,2,85,101,136,136,80,32, + 32,2,85,101,248,8,248,128,248,2,37,53,192,128,128,128, + 192,2,85,101,128,64,32,16,8,2,37,53,192,64,64,64, + 192,5,50,66,64,160,1,81,97,248,6,17,33,128,2,68, + 84,240,16,240,240,2,69,85,128,240,144,144,240,2,68,84, + 240,128,128,240,2,69,85,16,240,144,144,240,2,68,84,240, + 240,128,240,2,53,69,96,64,224,64,64,1,69,85,240,144, + 144,240,16,2,69,85,128,240,144,144,144,2,20,36,128,128, + 128,128,1,37,53,64,64,64,64,192,2,69,85,128,160,240, + 144,144,2,21,37,128,128,128,128,128,2,84,100,248,168,136, + 136,2,68,84,240,144,144,144,2,68,84,240,144,144,240,1, + 69,85,240,144,144,240,128,1,69,85,240,144,144,240,32,2, + 68,84,240,128,128,128,2,68,84,64,112,16,240,2,85,101, + 32,248,32,32,32,2,68,84,144,144,144,240,2,68,84,144, + 144,144,112,2,84,100,136,136,168,248,2,68,84,144,96,96, + 144,1,69,85,144,144,144,240,16,2,68,84,32,224,128,240, + 2,53,69,32,64,192,64,32,2,21,37,128,128,128,128,128, + 2,53,69,128,64,96,64,128,3,83,99,8,248,128,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 2,20,36,128,0,128,128,2,85,101,32,248,160,248,32,2, + 85,101,64,224,64,72,120,2,85,101,136,112,80,112,136,2, + 85,101,136,248,32,112,32,2,21,37,128,128,0,128,128,2, + 86,102,248,128,248,248,8,248,4,81,97,248,18,85,117,248, + 168,200,168,248,2,181,202,251,224,138,0,251,224,136,32,139, + 224,19,83,115,72,144,72,3,66,82,240,16,255,2,85,101, + 248,248,200,200,248,6,81,97,248,2,0,112,2,0,112,2, + 0,112,2,0,112,2,0,112,2,0,112,2,0,112,2,0, + 112,2,0,112,2,0,112,2,0,112,4,83,99,144,72,144, + 2,0,112,2,0,112,2,0,112,18,85,117,32,0,224,128, + 248,2,88,104,64,32,0,248,136,248,136,136,2,88,104,16, + 32,0,248,136,248,136,136,2,88,104,32,80,0,248,136,248, + 136,136,2,89,105,8,248,128,0,248,136,248,136,136,2,87, + 103,80,0,248,136,248,136,136,2,87,103,32,0,248,136,248, + 136,136,2,85,101,248,160,248,160,184,0,87,103,248,128,128, + 128,248,16,48,2,88,104,64,32,0,248,128,248,128,248,2, + 88,104,16,32,0,248,128,248,128,248,2,88,104,32,80,0, + 248,128,248,128,248,2,86,102,80,248,128,248,128,248,2,88, + 104,64,32,0,248,32,32,32,248,2,88,104,16,32,0,248, + 32,32,32,248,2,88,104,32,80,0,248,32,32,32,248,2, + 87,103,80,0,248,32,32,32,248,2,85,101,240,136,232,136, + 240,2,89,105,8,248,128,0,248,136,136,136,136,2,88,104, + 64,32,0,248,136,136,136,248,2,88,104,16,32,0,248,136, + 136,136,248,2,88,104,32,80,0,248,136,136,136,248,2,89, + 105,8,248,128,0,248,136,136,136,248,2,87,103,80,0,248, + 136,136,136,248,3,51,67,160,64,160,2,85,101,248,152,168, + 200,248,2,87,103,64,32,136,136,136,136,248,2,87,103,16, + 32,136,136,136,136,248,2,86,102,32,80,136,136,136,248,2, + 86,102,80,0,136,136,136,248,2,88,104,16,32,0,136,136, + 80,32,32,18,85,117,128,240,136,240,128,1,86,102,240,136, + 176,136,176,128,2,68,84,240,16,240,240,2,71,87,64,32, + 0,240,16,240,240,2,71,87,32,64,0,240,16,240,240,2, + 71,87,96,144,0,240,16,240,240,2,70,86,144,0,240,16, + 240,240,2,70,86,32,0,240,16,240,240,2,116,132,254,30, + 240,254,0,70,86,240,128,128,240,32,96,2,71,87,64,32, + 0,240,240,128,240,2,71,87,32,64,0,240,240,128,240,2, + 71,87,96,144,0,240,240,128,240,2,70,86,144,0,240,240, + 128,240,2,39,39,128,64,0,64,64,64,64,2,39,39,64, + 128,0,128,128,128,128,2,55,39,64,160,0,64,64,64,64, + 2,54,38,160,0,64,64,64,64,2,85,85,56,16,240,144, + 240,2,71,87,80,160,0,240,144,144,144,2,71,87,64,32, + 0,240,144,144,240,2,71,87,32,64,0,240,144,144,240,2, + 71,87,96,144,0,240,144,144,240,2,71,87,80,160,0,240, + 144,144,240,2,70,86,144,0,240,144,144,240,2,85,101,32, + 0,248,0,32,2,68,84,240,176,208,240,2,71,87,64,32, + 0,144,144,144,240,2,71,87,32,64,0,144,144,144,240,2, + 71,87,96,144,0,144,144,144,240,2,70,86,144,0,144,144, + 144,240,1,72,88,32,64,0,144,144,144,240,16,18,85,117, + 128,240,136,240,128,1,71,87,144,0,144,144,144,240,16}; +/* + Fontname: -FreeType-Org_v01-Medium-R-Normal--8-80-72-72-P-43-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 2 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w=11 h=11 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_orgv01n[130] U8G_SECTION(".progmem.u8g_font_orgv01n") = { + 1,11,11,0,254,5,0,0,0,0,42,57,0,5,255,5, + 0,3,51,67,160,64,160,3,51,67,64,224,64,1,18,34, + 128,128,4,65,81,240,2,17,33,128,2,85,101,8,16,32, + 64,128,2,85,101,248,136,136,136,248,2,21,37,128,128,128, + 128,128,2,85,101,248,8,248,128,248,2,85,101,248,8,248, + 8,248,2,85,101,136,136,248,8,8,2,85,101,248,128,248, + 8,248,2,85,101,248,128,248,136,248,2,85,101,248,8,8, + 8,8,2,85,101,248,136,248,136,248,2,85,101,248,136,248, + 8,248}; +/* + Fontname: -FreeType-Org_v01-Medium-R-Normal--8-80-72-72-P-43-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 4 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w=11 h=11 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_orgv01r[719] U8G_SECTION(".progmem.u8g_font_orgv01r") = { + 1,11,11,0,254,5,0,249,1,238,32,127,255,5,255,5, + 255,2,0,64,2,21,37,128,128,128,0,128,6,49,65,160, + 2,85,101,80,248,80,248,80,2,85,101,248,160,248,40,248, + 2,85,101,136,16,32,64,136,2,85,101,240,144,248,144,232, + 6,17,33,128,2,37,53,64,128,128,128,64,2,37,53,128, + 64,64,64,128,3,51,67,160,64,160,3,51,67,64,224,64, + 1,18,34,128,128,4,65,81,240,2,17,33,128,2,85,101, + 8,16,32,64,128,2,85,101,248,136,136,136,248,2,21,37, + 128,128,128,128,128,2,85,101,248,8,248,128,248,2,85,101, + 248,8,248,8,248,2,85,101,136,136,248,8,8,2,85,101, + 248,128,248,8,248,2,85,101,248,128,248,136,248,2,85,101, + 248,8,8,8,8,2,85,101,248,136,248,136,248,2,85,101, + 248,136,248,8,248,2,20,36,128,0,0,128,2,20,36,128, + 0,128,128,2,53,69,32,64,128,64,32,3,67,83,240,0, + 240,2,53,69,128,64,32,64,128,2,85,101,248,8,56,0, + 32,2,85,101,248,168,184,128,248,2,85,101,248,136,248,136, + 136,2,85,101,240,136,240,136,240,2,85,101,248,128,128,128, + 248,2,85,101,240,136,136,136,240,2,85,101,248,128,248,128, + 248,2,85,101,248,128,248,128,128,2,85,101,248,128,184,136, + 248,2,85,101,136,136,248,136,136,2,85,101,248,32,32,32, + 248,2,85,101,120,16,16,144,248,2,85,101,136,176,192,176, + 136,2,85,101,128,128,128,128,248,2,85,101,248,168,168,168, + 168,2,85,101,248,136,136,136,136,2,85,101,248,136,136,136, + 248,2,85,101,248,136,248,128,128,2,85,101,248,136,136,152, + 248,2,85,101,248,136,248,144,144,2,85,101,248,128,248,8, + 248,2,85,101,248,32,32,32,32,2,85,101,136,136,136,136, + 248,2,85,101,136,136,136,80,32,2,85,101,168,168,168,168, + 248,2,85,101,136,80,32,80,136,2,85,101,136,136,80,32, + 32,2,85,101,248,8,248,128,248,2,37,53,192,128,128,128, + 192,2,85,101,128,64,32,16,8,2,37,53,192,64,64,64, + 192,5,50,66,64,160,1,81,97,248,6,17,33,128,2,68, + 84,240,16,240,240,2,69,85,128,240,144,144,240,2,68,84, + 240,128,128,240,2,69,85,16,240,144,144,240,2,68,84,240, + 240,128,240,2,53,69,96,64,224,64,64,1,69,85,240,144, + 144,240,16,2,69,85,128,240,144,144,144,2,20,36,128,128, + 128,128,1,37,53,64,64,64,64,192,2,69,85,128,160,240, + 144,144,2,21,37,128,128,128,128,128,2,84,100,248,168,136, + 136,2,68,84,240,144,144,144,2,68,84,240,144,144,240,1, + 69,85,240,144,144,240,128,1,69,85,240,144,144,240,32,2, + 68,84,240,128,128,128,2,68,84,64,112,16,240,2,85,101, + 32,248,32,32,32,2,68,84,144,144,144,240,2,68,84,144, + 144,144,112,2,84,100,136,136,168,248,2,68,84,144,96,96, + 144,1,69,85,144,144,144,240,16,2,68,84,32,224,128,240, + 2,53,69,32,64,192,64,32,2,21,37,128,128,128,128,128, + 2,53,69,128,64,96,64,128,3,83,99,8,248,128,255}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--25-250-72-72-P-136-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=26 h=24 x= 5 y=14 dx=27 dy= 0 ascent=24 len=72 + Font Bounding box w=70 h=31 x=-22 y=-7 + Calculated Min Values x=-1 y=-6 dx= 0 dy= 0 + Pure Font ascent =18 descent=-6 + X Font ascent =18 descent=-6 + Max Font ascent =24 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb18[7637] U8G_SECTION(".progmem.u8g_font_osb18") = { + 0,70,31,234,249,18,4,190,10,54,32,255,250,24,250,18, + 250,0,0,0,7,0,0,4,18,18,6,1,0,96,240,240, + 240,240,240,96,96,96,96,96,64,0,0,96,240,240,96,6, + 6,6,10,2,12,204,204,204,204,204,204,15,18,36,19,2, + 0,6,24,6,24,4,16,4,16,12,48,255,254,255,254,12, + 48,8,32,8,32,24,96,24,96,255,254,255,254,16,64,16, + 64,48,192,48,192,11,22,44,14,2,254,9,0,9,0,31, + 128,105,64,73,32,201,32,201,96,249,224,249,64,127,0,63, + 128,31,192,15,192,73,224,233,224,201,96,137,96,137,96,73, + 192,63,128,9,0,9,0,17,18,54,21,2,0,56,4,0, + 68,12,0,198,8,0,198,24,0,198,48,0,198,32,0,198, + 96,0,76,64,0,56,192,0,1,142,0,1,27,0,3,49, + 128,2,49,128,4,49,128,12,49,128,8,49,128,24,17,0, + 16,14,0,17,18,54,19,1,0,3,192,0,4,32,0,12, + 32,0,12,32,0,12,32,0,14,64,0,15,128,0,7,0, + 0,15,143,128,27,195,0,49,194,0,96,226,0,224,244,0, + 224,120,0,240,56,0,240,60,0,126,223,128,63,15,0,2, + 6,6,6,2,12,192,192,192,192,192,192,7,23,23,9,1, + 251,2,4,8,16,48,96,96,96,224,224,224,224,224,224,224, + 96,96,96,48,16,8,4,2,7,23,23,9,0,251,128,64, + 32,16,24,12,12,14,14,14,14,14,14,14,14,14,12,12, + 24,16,32,64,128,9,10,20,13,2,8,24,0,24,0,201, + 128,235,128,28,0,44,0,235,128,217,128,24,0,24,0,21, + 21,63,23,1,253,0,48,0,0,48,0,0,48,0,0,48, + 0,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 0,48,0,255,255,248,255,255,248,0,48,0,0,48,0,0, + 48,0,0,48,0,0,48,0,0,48,0,0,48,0,0,48, + 0,0,48,0,4,9,9,7,2,251,224,240,240,240,16,32, + 32,64,128,6,3,3,8,1,5,252,252,252,4,4,4,8, + 2,0,96,240,240,96,9,23,46,11,1,251,1,128,1,128, + 1,0,3,0,3,0,2,0,6,0,6,0,4,0,12,0, + 12,0,8,0,24,0,24,0,24,0,16,0,48,0,48,0, + 32,0,96,0,96,0,64,0,192,0,12,18,36,15,1,0, + 15,0,25,128,48,192,112,224,112,224,240,224,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,112,224,112,224,48,192, + 25,128,15,0,8,18,18,15,3,0,24,56,248,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,255,11,18,36,15, + 2,0,31,0,113,192,96,224,224,224,240,224,248,224,121,192, + 1,192,3,0,6,0,8,0,48,32,64,32,64,32,255,224, + 191,224,143,192,135,128,12,18,36,15,1,0,31,0,49,192, + 96,224,112,224,120,224,120,224,0,192,1,128,62,0,1,192, + 0,224,0,240,112,240,248,240,240,240,192,224,65,192,63,0, + 11,18,36,15,2,0,3,0,7,0,7,0,15,0,15,0, + 23,0,55,0,39,0,103,0,71,0,199,0,135,0,255,224, + 7,0,7,0,7,0,7,0,63,224,11,18,36,15,2,0, + 65,128,127,128,126,0,120,0,64,0,64,0,95,0,99,128, + 65,192,65,224,1,224,33,224,241,224,241,224,225,192,193,192, + 67,128,62,0,11,18,36,15,2,0,7,128,24,64,48,224, + 113,224,113,224,240,0,240,0,247,128,249,192,240,224,240,224, + 240,224,240,224,112,224,112,224,48,192,57,192,15,0,11,18, + 36,15,2,0,156,64,190,96,255,32,255,224,128,32,128,64, + 128,64,0,128,1,128,3,0,7,0,6,0,14,0,30,0, + 30,0,30,0,30,0,12,0,12,18,36,15,1,0,31,128, + 32,64,64,32,192,32,192,32,240,32,252,64,127,128,127,192, + 63,224,103,240,193,240,192,112,192,48,192,48,96,32,112,64, + 31,128,12,18,36,15,2,0,31,0,113,128,96,192,224,224, + 224,224,224,240,224,240,96,240,113,240,30,240,0,240,0,240, + 56,224,120,224,120,224,97,192,33,128,30,0,4,12,12,8, + 2,0,96,240,240,96,0,0,0,0,96,240,240,96,4,17, + 17,7,2,251,96,240,240,96,0,0,0,0,224,240,240,240, + 16,32,32,64,128,19,21,63,24,2,252,0,0,96,0,1, + 224,0,7,128,0,14,0,0,56,0,0,224,0,3,128,0, + 15,0,0,60,0,0,112,0,0,224,0,0,120,0,0,28, + 0,0,7,0,0,1,192,0,0,112,0,0,60,0,0,15, + 0,0,3,128,0,0,224,0,0,32,21,7,21,23,1,3, + 255,255,248,255,255,248,0,0,0,0,0,0,0,0,0,255, + 255,248,255,255,248,19,21,63,24,2,252,192,0,0,240,0, + 0,60,0,0,14,0,0,3,128,0,0,224,0,0,56,0, + 0,30,0,0,7,128,0,1,192,0,0,224,0,3,192,0, + 7,0,0,28,0,0,112,0,1,192,0,7,128,0,30,0, + 0,56,0,0,224,0,0,128,0,0,8,18,18,12,2,0, + 60,78,135,135,135,78,12,24,16,32,36,36,24,0,24,60, + 60,24,18,18,54,20,1,0,3,240,0,12,12,0,24,3, + 0,48,237,0,97,173,128,99,28,128,199,28,192,207,24,192, + 206,24,192,206,56,192,206,56,192,206,56,128,78,49,128,110, + 91,0,35,156,0,48,0,0,12,4,0,3,248,0,17,18, + 54,19,1,0,0,192,0,0,192,0,0,192,0,1,224,0, + 1,224,0,1,224,0,2,240,0,2,240,0,4,112,0,4, + 120,0,4,120,0,8,56,0,15,252,0,8,60,0,16,28, + 0,16,30,0,48,30,0,252,127,128,15,18,36,18,2,0, + 255,224,56,56,56,56,56,28,56,28,56,28,56,56,56,48, + 63,192,56,56,56,28,56,30,56,30,56,30,56,30,56,28, + 56,56,255,240,13,18,36,17,2,0,7,136,24,120,48,56, + 112,24,112,24,240,8,240,8,240,8,240,0,240,0,240,0, + 240,8,240,8,112,8,112,8,56,16,24,32,7,192,16,18, + 36,19,2,0,255,224,56,56,56,28,56,14,56,14,56,14, + 56,15,56,15,56,15,56,15,56,15,56,15,56,14,56,14, + 56,12,56,28,56,56,255,224,14,18,36,18,2,0,255,252, + 56,28,56,12,56,12,56,4,56,68,56,64,56,192,56,192, + 63,192,56,192,56,68,56,68,56,4,56,4,56,12,56,28, + 255,252,14,18,36,17,2,0,255,252,56,60,56,28,56,12, + 56,4,56,68,56,68,56,192,56,192,63,192,56,192,56,64, + 56,64,56,0,56,0,56,0,56,0,255,0,15,18,36,18, + 2,0,7,136,24,104,48,56,112,24,112,8,112,8,240,8, + 240,0,240,0,241,254,240,56,240,56,240,56,112,56,112,56, + 48,40,24,72,15,136,17,18,54,20,2,0,255,127,128,56, + 14,0,56,14,0,56,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,63,254,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,255, + 127,128,8,18,18,11,2,0,255,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,255,11,18,36,13,1,0, + 31,224,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,115,128,243,128,243,128,227,128,195,128, + 67,0,60,0,17,18,54,19,2,0,254,127,0,56,24,0, + 56,16,0,56,32,0,56,64,0,56,192,0,57,128,0,59, + 192,0,59,192,0,61,224,0,57,240,0,56,240,0,56,248, + 0,56,120,0,56,124,0,56,60,0,56,62,0,254,127,128, + 14,18,36,17,2,0,255,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,4,56,4,56,4, + 56,12,56,12,56,28,56,60,255,252,20,18,54,22,1,0, + 254,3,240,30,3,192,30,3,192,31,5,192,31,5,192,23, + 5,192,23,133,192,23,137,192,19,201,192,19,201,192,17,209, + 192,17,241,192,17,241,192,16,241,192,16,225,192,16,225,192, + 56,97,192,254,111,240,17,18,54,18,1,0,252,63,128,60, + 14,0,62,4,0,31,4,0,31,4,0,31,132,0,23,196, + 0,19,196,0,17,228,0,17,244,0,16,244,0,16,124,0, + 16,124,0,16,60,0,16,28,0,16,28,0,56,12,0,254, + 4,0,15,18,36,18,2,0,7,192,8,32,56,48,48,24, + 112,28,112,28,240,30,240,30,240,30,240,30,240,30,240,30, + 112,28,112,28,48,24,48,56,8,32,7,192,15,18,36,18, + 2,0,255,240,56,56,56,28,56,30,56,30,56,30,56,30, + 56,28,56,56,63,224,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,255,128,15,24,48,18,2,250,7,192,8,32, + 56,56,48,24,112,28,112,28,240,30,240,30,240,30,240,30, + 240,30,240,30,112,28,112,28,51,152,52,176,28,226,7,194, + 0,194,0,194,0,230,0,254,0,124,0,56,16,18,36,19, + 2,0,255,224,56,120,56,56,56,60,56,60,56,60,56,56, + 56,112,63,192,56,96,56,48,56,56,56,56,56,57,56,57, + 56,57,56,57,255,158,12,18,36,15,2,0,30,32,97,160, + 192,224,192,96,224,32,240,32,252,0,126,0,63,128,15,192, + 135,224,129,240,128,240,192,48,192,48,224,32,176,96,143,128, + 15,18,36,18,2,0,255,254,231,30,199,14,135,14,135,6, + 135,6,7,2,7,2,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,31,224,18,18,54,20,2,0, + 255,31,192,56,7,0,56,2,0,56,2,0,56,2,0,56, + 2,0,56,2,0,56,2,0,56,2,0,56,2,0,56,2, + 0,56,2,0,56,2,0,56,2,0,24,2,0,28,4,0, + 14,8,0,3,240,0,17,18,54,19,2,0,255,63,128,60, + 6,0,60,4,0,30,4,0,30,8,0,30,8,0,15,8, + 0,15,16,0,7,144,0,7,144,0,7,160,0,3,224,0, + 3,224,0,3,192,0,1,192,0,1,192,0,1,192,0,0, + 128,0,26,18,72,27,1,0,255,191,223,192,30,15,6,0, + 30,15,6,0,15,15,4,0,15,15,132,0,15,15,132,0, + 7,143,140,0,7,139,200,0,7,147,200,0,3,211,200,0, + 3,209,240,0,3,225,240,0,1,225,240,0,1,224,240,0, + 1,224,224,0,0,192,224,0,0,192,96,0,0,192,64,0, + 16,18,36,19,2,0,255,63,62,24,30,16,31,16,15,32, + 15,224,7,192,7,192,3,192,3,224,3,224,2,240,4,240, + 8,120,8,120,16,60,48,60,252,255,16,18,36,19,2,0, + 254,127,60,12,60,8,30,16,30,16,30,16,15,32,15,32, + 7,64,7,192,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,15,240,13,18,36,16,2,0,127,248,112,120,96,240, + 97,240,65,224,67,224,3,192,7,192,7,128,15,0,15,0, + 30,0,30,8,60,8,124,24,120,24,248,56,255,248,6,22, + 22,10,2,252,252,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,252,9,23,46,11,1,251, + 192,0,64,0,96,0,96,0,32,0,48,0,48,0,16,0, + 24,0,24,0,24,0,8,0,12,0,12,0,4,0,6,0, + 6,0,2,0,3,0,3,0,1,0,1,128,1,128,6,22, + 22,10,2,252,252,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,252,11,9,18,15,2,9, + 4,0,12,0,30,0,27,0,51,0,49,128,96,192,192,192, + 192,96,13,2,4,13,0,252,255,248,255,248,4,4,4,11, + 2,13,192,224,96,48,11,12,24,13,1,0,30,0,99,0, + 99,128,115,128,35,128,31,128,115,128,227,128,227,160,227,160, + 247,160,121,192,12,18,36,13,0,0,248,0,56,0,56,0, + 56,0,56,0,56,0,59,128,60,224,60,224,56,112,56,112, + 56,112,56,112,56,112,56,112,60,224,36,192,35,128,9,12, + 24,12,1,0,30,0,49,0,113,128,227,128,227,128,224,0, + 224,0,224,0,224,128,112,128,49,0,30,0,12,18,36,13, + 1,0,7,192,1,192,1,192,1,192,1,192,1,192,29,192, + 115,192,99,192,225,192,225,192,225,192,225,192,225,192,225,192, + 99,192,115,192,29,240,9,12,24,12,1,0,30,0,51,0, + 99,128,227,128,227,128,255,128,224,0,224,0,224,128,112,128, + 49,0,30,0,9,18,36,9,1,0,15,0,29,128,59,128, + 59,128,57,0,56,0,252,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,252,0,12,18, + 36,14,1,250,30,112,51,176,113,240,113,192,113,192,113,192, + 51,128,30,0,96,0,127,128,127,192,63,224,96,224,128,96, + 128,96,128,64,64,192,63,0,12,18,36,13,0,0,248,0, + 56,0,56,0,56,0,56,0,56,0,57,192,62,224,60,224, + 56,224,56,224,56,224,56,224,56,224,56,224,56,224,56,224, + 253,240,5,18,18,7,1,0,112,112,112,32,0,0,240,112, + 112,112,112,112,112,112,112,112,112,248,7,24,24,8,255,250, + 14,14,14,4,0,0,62,14,14,14,14,14,14,14,14,14, + 14,14,14,110,238,238,204,120,13,18,36,13,0,0,248,0, + 56,0,56,0,56,0,56,0,56,0,57,240,56,192,56,128, + 57,0,57,0,59,128,63,128,57,192,57,192,56,224,56,224, + 255,248,7,18,18,8,0,0,248,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,254,18,12,36,19,1,0, + 243,142,0,125,247,0,121,231,0,113,199,0,113,199,0,113, + 199,0,113,199,0,113,199,0,113,199,0,113,199,0,113,199, + 0,251,239,192,11,12,24,13,1,0,243,128,125,192,121,192, + 113,192,113,192,113,192,113,192,113,192,113,192,113,192,113,192, + 251,224,10,12,24,12,1,0,30,0,51,0,97,128,225,192, + 225,192,225,192,225,192,225,192,225,192,97,128,51,0,30,0, + 12,18,36,13,0,250,251,128,60,192,60,224,56,112,56,112, + 56,112,56,112,56,112,56,112,60,224,60,224,59,192,56,0, + 56,0,56,0,56,0,56,0,254,0,11,18,36,13,1,250, + 28,64,50,64,99,192,225,192,225,192,225,192,225,192,225,192, + 225,192,99,192,115,192,61,192,1,192,1,192,1,192,1,192, + 1,192,7,224,9,12,24,11,1,0,243,0,117,128,123,128, + 123,128,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 248,0,9,12,24,11,1,0,57,0,199,0,195,0,225,0, + 240,0,124,0,63,0,143,128,131,128,193,128,225,0,158,0, + 8,17,17,10,1,0,16,16,16,48,112,254,112,112,112,112, + 112,113,113,113,113,114,60,12,12,24,13,0,0,249,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,224,56,224,57, + 224,58,224,28,240,12,12,24,13,1,0,253,240,112,64,56, + 64,56,128,28,128,28,128,29,0,15,0,14,0,14,0,6, + 0,4,0,19,12,36,19,0,0,253,251,224,56,112,128,28, + 112,128,28,113,0,28,121,0,14,185,0,14,154,0,14,158, + 0,7,28,0,7,12,0,2,12,0,2,8,0,12,12,24, + 13,0,0,253,240,56,64,28,128,31,0,15,0,15,0,7, + 0,7,128,11,192,17,192,17,224,253,240,12,18,36,12,0, + 250,252,240,112,64,56,64,56,128,28,128,28,128,29,0,15, + 0,15,0,7,0,6,0,6,0,2,0,4,0,116,0,116, + 0,104,0,56,0,10,12,24,12,1,0,127,192,99,128,71, + 128,71,0,15,0,14,0,28,0,60,64,56,64,120,64,112, + 192,255,192,8,23,23,10,1,251,3,28,56,56,56,56,56, + 56,56,56,48,192,48,56,56,56,56,56,56,56,56,28,3, + 2,23,23,8,3,251,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,8,23,23, + 11,2,251,192,112,56,56,56,56,56,56,56,56,28,7,28, + 56,56,56,56,56,56,56,56,112,192,14,5,10,16,1,4, + 120,8,255,4,143,196,131,252,64,120,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,0,0,0,7,0, + 0,4,18,18,6,1,250,96,240,240,96,0,0,64,96,96, + 96,96,96,240,240,240,240,240,96,9,18,36,15,3,253,4, + 0,4,0,4,0,30,0,53,0,117,128,231,128,231,128,228, + 0,228,0,228,0,228,0,100,128,116,128,31,0,4,0,4, + 0,4,0,16,18,36,19,2,0,0,248,1,132,3,6,7, + 14,7,14,7,0,7,0,63,0,7,240,7,128,3,128,3, + 128,3,128,3,1,123,2,143,204,135,252,120,240,12,12,24, + 14,1,3,132,16,223,176,112,224,96,96,192,48,192,48,192, + 48,192,48,64,96,96,96,127,224,207,48,14,18,36,14,0, + 0,254,124,56,16,60,16,60,32,30,32,30,64,14,64,15, + 128,7,128,127,240,7,0,127,240,7,0,7,0,7,0,7, + 0,7,0,31,224,2,22,22,8,3,252,192,192,192,192,192, + 192,192,192,192,0,0,0,0,192,192,192,192,192,192,192,192, + 192,11,23,46,15,1,251,15,0,48,128,96,192,97,192,97, + 192,112,128,124,0,63,0,223,128,143,192,129,224,192,96,248, + 32,126,32,63,64,15,128,3,192,49,192,112,192,112,192,96, + 128,33,128,30,0,8,3,3,12,2,14,231,231,231,18,18, + 54,20,1,0,3,240,0,12,12,0,16,2,0,33,201,0, + 67,56,128,70,24,128,142,8,64,142,8,64,142,0,64,142, + 0,64,142,8,64,142,8,64,70,8,128,67,16,128,33,225, + 0,16,2,0,12,12,0,3,240,0,7,9,9,10,1,9, + 120,204,204,60,76,204,206,126,254,7,10,10,12,3,1,32, + 100,68,204,204,204,204,196,100,34,13,7,14,15,1,4,255, + 248,255,248,0,24,0,24,0,24,0,24,0,24,6,3,3, + 8,1,5,252,252,252,18,18,54,20,1,0,3,240,0,12, + 12,0,16,2,0,47,225,0,71,48,128,71,56,128,135,56, + 64,135,48,64,135,192,64,135,48,64,135,56,64,135,56,64, + 71,58,128,71,58,128,47,157,0,16,2,0,12,12,0,3, + 240,0,7,2,2,11,2,14,254,254,8,7,7,14,3,11, + 60,102,131,129,129,194,126,21,18,54,23,1,254,0,48,0, + 0,48,0,0,48,0,0,48,0,0,48,0,0,48,0,255, + 255,248,255,255,248,0,48,0,0,48,0,0,48,0,0,48, + 0,0,48,0,0,48,0,0,48,0,0,0,0,255,255,248, + 255,255,248,7,11,11,11,2,7,124,206,206,238,28,48,98, + 66,254,190,8,8,11,11,12,2,7,60,198,231,231,6,56, + 6,103,231,199,60,4,4,4,11,5,13,48,112,96,192,13, + 18,36,15,1,250,97,128,225,192,225,192,225,192,225,192,225, + 192,225,192,64,136,64,136,65,248,127,120,94,48,64,0,96, + 0,96,0,112,0,112,0,112,0,13,21,42,15,1,253,31, + 248,126,96,126,96,254,96,254,96,254,96,254,96,126,96,62, + 96,14,96,6,96,6,96,6,96,6,96,6,96,6,96,6, + 96,6,96,6,96,6,96,6,96,4,4,4,8,2,6,96, + 240,240,96,5,5,5,11,3,250,32,96,24,24,240,6,11, + 11,11,3,7,48,240,112,112,112,112,112,112,112,112,252,7, + 9,9,9,1,9,56,68,198,198,198,198,68,56,254,7,10, + 10,13,3,1,152,140,68,102,102,102,102,70,76,136,18,18, + 54,22,3,0,48,8,0,240,8,0,112,16,0,112,48,0, + 112,32,0,112,96,0,112,64,0,112,195,0,112,135,0,113, + 143,0,253,15,0,3,23,0,2,39,0,4,39,0,12,63, + 192,8,7,0,24,7,0,16,31,192,18,18,54,23,3,0, + 48,4,0,240,8,0,112,24,0,112,16,0,112,48,0,112, + 32,0,112,96,0,112,79,0,112,147,192,113,177,192,253,57, + 192,3,3,128,2,6,0,6,8,0,4,16,64,8,63,192, + 24,47,192,16,39,128,20,18,54,23,2,0,124,2,0,199, + 6,0,231,4,0,6,12,0,56,8,0,6,16,0,7,16, + 0,231,33,192,231,97,192,198,67,192,60,133,192,0,133,192, + 1,9,192,1,9,192,2,31,240,6,1,192,4,1,192,8, + 7,240,8,18,18,12,2,250,48,120,120,48,56,68,68,4, + 8,24,48,114,97,225,225,225,114,60,17,23,69,19,1,1, + 7,0,0,7,0,0,1,128,0,0,128,0,0,0,0,0, + 192,0,0,192,0,1,192,0,1,224,0,1,224,0,3,224, + 0,2,240,0,2,240,0,4,240,0,4,120,0,4,120,0, + 8,56,0,15,252,0,8,60,0,16,28,0,16,30,0,48, + 30,0,252,255,128,17,23,69,19,1,1,0,56,0,0,48, + 0,0,96,0,0,192,0,0,0,0,0,192,0,0,192,0, + 0,192,0,1,224,0,1,224,0,1,224,0,2,240,0,2, + 240,0,4,112,0,4,120,0,4,120,0,8,56,0,15,252, + 0,8,60,0,16,28,0,16,30,0,48,30,0,252,127,128, + 17,23,69,19,1,0,0,192,0,1,192,0,3,96,0,6, + 24,0,0,0,0,0,192,0,0,192,0,0,192,0,1,224, + 0,1,224,0,1,224,0,2,240,0,2,240,0,4,112,0, + 4,120,0,4,120,0,8,56,0,15,252,0,8,60,0,16, + 28,0,16,30,0,48,30,0,252,127,128,17,23,69,19,1, + 0,1,8,0,7,240,0,4,240,0,0,0,0,0,0,0, + 0,192,0,0,192,0,1,192,0,1,224,0,1,224,0,3, + 224,0,2,240,0,2,240,0,4,240,0,4,120,0,4,120, + 0,8,56,0,15,252,0,8,60,0,16,28,0,16,30,0, + 48,30,0,252,255,128,16,23,46,18,1,0,14,112,14,112, + 14,112,0,0,0,0,1,128,1,128,1,128,3,192,3,192, + 3,192,5,224,5,224,4,224,8,240,8,240,8,112,31,248, + 16,120,16,60,48,60,48,60,252,255,18,23,69,19,1,0, + 1,224,0,2,16,0,2,16,0,1,224,0,0,0,0,0, + 192,0,0,192,0,0,224,0,1,224,0,1,224,0,1,240, + 0,2,240,0,2,240,0,4,120,0,4,120,0,4,120,0, + 8,60,0,15,252,0,8,28,0,16,30,0,16,30,0,48, + 30,0,252,127,192,23,18,54,25,1,0,0,127,254,0,60, + 14,0,60,6,0,124,6,0,92,2,0,220,34,0,156,32, + 1,156,96,1,28,96,3,31,224,2,28,96,6,28,34,7, + 252,34,8,28,2,8,28,2,24,28,6,56,28,14,254,127, + 254,13,24,48,17,2,250,7,136,24,120,48,56,112,24,112, + 24,240,8,240,8,240,8,240,0,240,0,240,0,240,8,240, + 8,112,8,112,8,56,16,24,32,7,192,2,0,3,128,0, + 192,0,192,8,192,7,128,14,23,46,18,2,1,28,0,12, + 0,6,0,1,0,0,0,255,252,56,28,56,12,56,12,56, + 4,56,68,56,64,56,192,56,192,63,192,56,192,56,68,56, + 68,56,4,56,4,56,12,56,28,255,252,14,23,46,18,2, + 1,0,224,0,192,1,128,2,0,0,0,255,252,56,28,56, + 12,56,12,56,4,56,68,56,64,56,192,56,192,63,192,56, + 192,56,68,56,68,56,4,56,4,56,12,56,28,255,252,14, + 23,46,18,2,0,3,0,7,128,12,192,16,32,0,0,255, + 252,56,28,56,12,56,12,56,4,56,68,56,64,56,192,56, + 192,63,192,56,192,56,68,56,68,56,4,56,4,56,12,56, + 28,255,252,14,23,46,18,2,0,28,224,28,224,28,224,0, + 0,0,0,255,252,56,28,56,12,56,12,56,4,56,68,56, + 64,56,192,56,192,63,192,56,192,56,68,56,68,56,4,56, + 12,56,12,56,28,255,252,8,23,23,11,2,1,192,96,48, + 16,0,255,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,255,8,23,23,11,2,1,7,14,8,16,0,255, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 255,8,23,23,11,2,0,16,56,108,130,0,255,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,255,8,23, + 23,11,2,0,231,231,231,0,0,255,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,255,16,18,36,19,2, + 0,255,224,56,56,56,28,56,14,56,14,56,14,56,15,56, + 15,255,15,56,15,56,15,56,15,56,14,56,14,56,12,56, + 28,56,56,255,224,17,23,69,18,1,0,3,136,0,3,240, + 0,4,96,0,0,0,0,0,0,0,252,63,128,60,14,0, + 62,4,0,31,4,0,31,4,0,23,132,0,23,196,0,19, + 196,0,17,228,0,17,244,0,16,244,0,16,124,0,16,124, + 0,16,60,0,16,28,0,16,28,0,56,12,0,254,4,0, + 15,24,48,18,2,0,12,0,12,0,14,0,3,0,1,0, + 0,0,7,192,8,32,56,48,48,24,112,28,112,28,240,30, + 240,30,240,30,240,30,240,30,240,30,112,28,112,28,48,24, + 48,56,8,32,7,192,15,24,48,18,2,0,0,96,0,96, + 0,224,1,128,1,0,0,0,7,192,8,32,56,48,48,24, + 112,28,112,28,240,30,240,30,240,30,240,30,240,30,240,30, + 112,28,112,28,48,24,48,56,8,32,7,192,15,24,48,18, + 2,0,1,0,3,128,7,128,14,192,24,48,0,0,7,192, + 8,32,56,48,48,24,112,28,112,28,240,30,240,30,240,30, + 240,30,240,30,240,30,112,28,112,28,48,24,48,56,8,32, + 7,192,15,23,46,18,2,0,7,32,15,224,16,192,0,0, + 0,0,7,192,8,32,56,48,48,24,112,28,112,28,240,30, + 240,30,240,30,240,30,240,30,240,30,112,28,112,28,48,24, + 48,56,8,32,7,192,15,23,46,18,2,0,28,224,28,224, + 28,224,0,0,0,0,7,192,8,32,56,48,48,24,112,28, + 112,28,240,30,240,30,240,30,240,30,240,30,240,30,112,28, + 112,28,48,24,48,56,8,32,7,192,16,15,30,24,4,0, + 192,3,96,6,48,12,24,24,12,48,6,96,3,192,1,128, + 3,192,6,96,12,48,56,24,112,12,224,6,192,3,15,18, + 36,18,2,0,7,194,8,116,48,60,48,56,112,60,112,124, + 240,94,240,222,241,158,243,30,246,30,244,30,124,28,120,28, + 56,24,120,24,92,32,135,192,18,24,72,20,2,0,6,0, + 0,7,0,0,3,0,0,1,128,0,0,0,0,0,0,0, + 255,31,192,56,7,0,56,2,0,56,2,0,56,2,0,56, + 2,0,56,2,0,56,2,0,56,2,0,56,2,0,56,2, + 0,56,2,0,56,2,0,56,2,0,24,2,0,28,4,0, + 14,8,0,3,240,0,18,24,72,20,2,0,0,24,0,0, + 56,0,0,112,0,0,192,0,0,128,0,0,0,0,255,31, + 192,56,7,0,56,2,0,56,2,0,56,2,0,56,2,0, + 56,2,0,56,2,0,56,2,0,56,2,0,56,2,0,56, + 2,0,56,2,0,56,2,0,24,2,0,28,4,0,14,8, + 0,3,240,0,18,24,72,20,2,0,0,128,0,1,192,0, + 1,224,0,6,48,0,8,8,0,0,0,0,255,31,192,56, + 7,0,56,2,0,56,2,0,56,2,0,56,2,0,56,2, + 0,56,2,0,56,2,0,56,2,0,56,2,0,56,2,0, + 56,2,0,56,2,0,24,2,0,28,4,0,14,8,0,3, + 240,0,18,23,69,20,2,0,7,56,0,7,56,0,7,56, + 0,0,0,0,0,0,0,255,31,192,56,7,0,56,2,0, + 56,2,0,56,2,0,56,2,0,56,2,0,56,2,0,56, + 2,0,56,2,0,56,2,0,56,2,0,56,2,0,56,2, + 0,24,2,0,28,4,0,14,8,0,3,240,0,16,23,46, + 19,2,1,0,112,0,96,0,192,1,0,0,0,254,127,60, + 12,60,8,30,16,30,16,30,16,15,32,15,32,7,64,7, + 192,3,128,3,128,3,128,3,128,3,128,3,128,3,128,15, + 240,15,18,36,18,2,0,255,128,56,0,56,0,63,224,56, + 56,56,28,56,30,56,30,56,30,56,30,56,28,56,56,63, + 224,56,0,56,0,56,0,56,0,255,128,12,18,36,13,0, + 0,7,128,12,192,24,224,56,224,56,224,56,224,56,192,59, + 0,56,192,56,96,56,112,56,112,56,112,56,112,56,112,63, + 112,63,96,251,192,11,18,36,13,1,0,32,0,48,0,48, + 0,24,0,4,0,0,0,30,0,99,0,99,128,115,128,7, + 128,27,128,115,128,227,128,227,160,227,160,247,160,121,192,11, + 18,36,13,1,0,3,0,3,0,6,0,4,0,8,0,0, + 0,30,0,99,0,99,128,115,128,35,128,31,128,115,128,227, + 128,227,160,227,160,247,160,121,192,11,18,36,13,1,0,12, + 0,12,0,30,0,50,0,65,0,0,0,30,0,99,0,99, + 128,115,128,35,128,31,128,115,128,227,128,227,160,227,160,247, + 160,121,192,11,17,34,13,1,0,57,0,127,0,70,0,0, + 0,0,0,30,0,99,0,99,128,115,128,35,128,31,128,115, + 128,227,128,227,160,227,160,247,160,121,192,11,17,34,13,1, + 0,119,0,119,0,119,0,0,0,0,0,30,0,99,0,99, + 128,115,128,35,128,31,128,115,128,227,128,227,160,227,160,247, + 160,121,192,11,18,36,13,1,0,28,0,38,0,34,0,34, + 0,28,0,0,0,30,0,99,0,99,128,115,128,35,128,31, + 128,115,128,227,128,227,160,227,160,231,160,121,192,15,12,24, + 18,1,0,62,248,99,140,99,142,115,142,7,142,27,254,115, + 128,227,128,227,130,227,130,247,196,120,120,9,18,36,12,1, + 250,30,0,49,0,113,128,227,128,227,128,224,0,224,0,224, + 0,224,128,112,128,49,0,30,0,8,0,8,0,6,0,6, + 0,6,0,28,0,9,18,36,12,1,0,32,0,112,0,48, + 0,24,0,4,0,0,0,30,0,51,0,99,128,227,128,227, + 128,255,128,224,0,224,0,224,128,112,128,49,0,30,0,9, + 18,36,12,1,0,3,0,7,0,6,0,12,0,8,0,0, + 0,30,0,51,0,99,128,227,128,227,128,255,128,224,0,224, + 0,224,128,112,128,49,0,30,0,9,18,36,12,1,0,12, + 0,28,0,28,0,50,0,65,0,0,0,30,0,51,0,99, + 128,227,128,227,128,255,128,224,0,224,0,224,128,112,128,49, + 0,30,0,9,17,34,12,1,0,115,128,115,128,115,128,0, + 0,0,0,30,0,51,0,99,128,227,128,227,128,255,128,224, + 0,224,0,224,0,112,128,49,0,30,0,7,18,18,8,1, + 0,192,224,112,16,8,0,120,56,56,56,56,56,56,56,56, + 56,56,126,6,18,18,8,1,0,12,28,24,48,0,0,240, + 112,112,112,112,112,112,112,112,112,112,248,7,18,18,7,0, + 0,56,56,108,198,0,0,120,56,56,56,56,56,56,56,56, + 56,56,126,7,17,17,8,1,0,238,238,238,0,0,120,56, + 56,56,56,56,56,56,56,56,56,126,10,18,36,12,1,0, + 57,128,30,0,14,0,31,0,39,0,3,128,31,128,51,192, + 97,192,225,192,225,192,225,192,225,192,225,192,225,192,97,128, + 51,128,30,0,11,17,34,13,1,0,24,128,63,128,39,0, + 0,0,0,0,243,128,125,192,121,192,113,192,113,192,113,192, + 113,192,113,192,113,192,113,192,113,192,251,224,10,18,36,12, + 1,0,48,0,48,0,24,0,12,0,4,0,0,0,30,0, + 51,0,97,128,225,192,225,192,225,192,225,192,225,192,225,192, + 97,128,51,0,30,0,10,18,36,12,1,0,3,0,3,0, + 7,0,4,0,8,0,0,0,30,0,51,0,97,128,225,192, + 225,192,225,192,225,192,225,192,225,192,97,128,51,0,30,0, + 10,18,36,12,1,0,12,0,14,0,30,0,51,0,96,128, + 0,0,30,0,51,0,97,128,225,192,225,192,225,192,225,192, + 225,192,225,192,97,128,51,0,30,0,10,17,34,12,1,0, + 56,128,63,0,70,0,0,0,0,0,30,0,51,0,97,128, + 225,192,225,192,225,192,225,192,225,192,225,192,97,128,51,0, + 30,0,10,17,34,12,1,0,115,128,115,128,115,128,0,0, + 0,0,30,0,51,0,97,128,225,192,225,192,225,192,225,192, + 225,192,225,192,97,128,51,0,30,0,21,17,51,23,1,254, + 0,48,0,0,120,0,0,120,0,0,48,0,0,0,0,0, + 0,0,0,0,0,0,0,0,255,255,248,255,255,248,0,0, + 0,0,0,0,0,0,0,0,48,0,0,120,0,0,120,0, + 0,48,0,10,12,24,12,1,0,30,64,51,128,97,128,225, + 192,227,192,229,192,233,192,241,192,241,192,97,128,115,0,158, + 0,12,18,36,13,0,0,24,0,24,0,12,0,6,0,2, + 0,0,0,249,224,56,224,56,224,56,224,56,224,56,224,56, + 224,56,224,56,224,57,224,58,224,28,240,12,18,36,13,0, + 0,1,128,1,128,3,0,2,0,0,0,0,0,249,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,224,56,224,57, + 224,58,224,28,240,12,18,36,13,0,0,6,0,6,0,15, + 0,25,128,0,0,0,0,249,224,56,224,56,224,56,224,56, + 224,56,224,56,224,56,224,56,224,57,224,58,224,28,240,12, + 17,34,13,0,0,57,192,57,192,57,192,0,0,0,0,249, + 224,56,224,56,224,56,224,56,224,56,224,56,224,56,224,56, + 224,57,224,58,224,28,240,12,24,48,12,0,250,1,128,1, + 128,3,0,6,0,4,0,0,0,252,240,112,64,56,64,56, + 128,28,128,28,128,29,0,15,0,15,0,7,0,6,0,6, + 0,2,0,4,0,116,0,116,0,104,0,56,0,12,23,46, + 13,0,250,24,0,120,0,184,0,56,0,56,0,57,224,58, + 240,60,112,60,112,56,112,56,96,56,224,56,192,56,128,57, + 0,58,0,60,0,56,0,56,0,56,0,56,0,96,0,128, + 0,13,23,46,13,0,250,28,224,28,224,28,224,0,0,0, + 0,254,120,56,32,60,64,28,64,30,64,14,64,14,128,7, + 128,7,128,7,0,3,0,3,0,2,0,2,0,58,0,60, + 0,52,0,56,0}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--25-250-72-72-P-136-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 18 + Calculated Max Values w=21 h=23 x= 3 y= 8 dx=23 dy= 0 ascent=18 len=63 + Font Bounding box w=70 h=31 x=-22 y=-7 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =18 descent= 0 + X Font ascent =18 descent= 0 + Max Font ascent =18 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb18n[600] U8G_SECTION(".progmem.u8g_font_osb18n") = { + 0,70,31,234,249,18,0,0,0,0,42,57,0,18,251,18, + 0,9,10,20,13,2,8,24,0,24,0,201,128,235,128,28, + 0,44,0,235,128,217,128,24,0,24,0,21,21,63,23,1, + 253,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 0,48,0,0,48,0,0,48,0,0,48,0,0,48,0,255, + 255,248,255,255,248,0,48,0,0,48,0,0,48,0,0,48, + 0,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 4,9,9,7,2,251,224,240,240,240,16,32,32,64,128,6, + 3,3,8,1,5,252,252,252,4,4,4,8,2,0,96,240, + 240,96,9,23,46,11,1,251,1,128,1,128,1,0,3,0, + 3,0,2,0,6,0,6,0,4,0,12,0,12,0,8,0, + 24,0,24,0,24,0,16,0,48,0,48,0,32,0,96,0, + 96,0,64,0,192,0,12,18,36,15,1,0,15,0,25,128, + 48,192,112,224,112,224,240,224,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,112,224,112,224,48,192,25,128,15,0, + 8,18,18,15,3,0,24,56,248,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,255,11,18,36,15,2,0,31,0, + 113,192,96,224,224,224,240,224,248,224,121,192,1,192,3,0, + 6,0,8,0,48,32,64,32,64,32,255,224,191,224,143,192, + 135,128,12,18,36,15,1,0,31,0,49,192,96,224,112,224, + 120,224,120,224,0,192,1,128,62,0,1,192,0,224,0,240, + 112,240,248,240,240,240,192,224,65,192,63,0,11,18,36,15, + 2,0,3,0,7,0,7,0,15,0,15,0,23,0,55,0, + 39,0,103,0,71,0,199,0,135,0,255,224,7,0,7,0, + 7,0,7,0,63,224,11,18,36,15,2,0,65,128,127,128, + 126,0,120,0,64,0,64,0,95,0,99,128,65,192,65,224, + 1,224,33,224,241,224,241,224,225,192,193,192,67,128,62,0, + 11,18,36,15,2,0,7,128,24,64,48,224,113,224,113,224, + 240,0,240,0,247,128,249,192,240,224,240,224,240,224,240,224, + 112,224,112,224,48,192,57,192,15,0,11,18,36,15,2,0, + 156,64,190,96,255,32,255,224,128,32,128,64,128,64,0,128, + 1,128,3,0,7,0,6,0,14,0,30,0,30,0,30,0, + 30,0,12,0,12,18,36,15,1,0,31,128,32,64,64,32, + 192,32,192,32,240,32,252,64,127,128,127,192,63,224,103,240, + 193,240,192,112,192,48,192,48,96,32,112,64,31,128,12,18, + 36,15,2,0,31,0,113,128,96,192,224,224,224,224,224,240, + 224,240,96,240,113,240,30,240,0,240,0,240,56,224,120,224, + 120,224,97,192,33,128,30,0}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--25-250-72-72-P-136-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=26 h=24 x= 3 y=13 dx=27 dy= 0 ascent=20 len=72 + Font Bounding box w=70 h=31 x=-22 y=-7 + Calculated Min Values x=-1 y=-6 dx= 0 dy= 0 + Pure Font ascent =18 descent=-6 + X Font ascent =18 descent=-6 + Max Font ascent =20 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb18r[3611] U8G_SECTION(".progmem.u8g_font_osb18r") = { + 0,70,31,234,249,18,4,190,10,54,32,127,250,20,250,18, + 250,0,0,0,7,0,0,4,18,18,6,1,0,96,240,240, + 240,240,240,96,96,96,96,96,64,0,0,96,240,240,96,6, + 6,6,10,2,12,204,204,204,204,204,204,15,18,36,19,2, + 0,6,24,6,24,4,16,4,16,12,48,255,254,255,254,12, + 48,8,32,8,32,24,96,24,96,255,254,255,254,16,64,16, + 64,48,192,48,192,11,22,44,14,2,254,9,0,9,0,31, + 128,105,64,73,32,201,32,201,96,249,224,249,64,127,0,63, + 128,31,192,15,192,73,224,233,224,201,96,137,96,137,96,73, + 192,63,128,9,0,9,0,17,18,54,21,2,0,56,4,0, + 68,12,0,198,8,0,198,24,0,198,48,0,198,32,0,198, + 96,0,76,64,0,56,192,0,1,142,0,1,27,0,3,49, + 128,2,49,128,4,49,128,12,49,128,8,49,128,24,17,0, + 16,14,0,17,18,54,19,1,0,3,192,0,4,32,0,12, + 32,0,12,32,0,12,32,0,14,64,0,15,128,0,7,0, + 0,15,143,128,27,195,0,49,194,0,96,226,0,224,244,0, + 224,120,0,240,56,0,240,60,0,126,223,128,63,15,0,2, + 6,6,6,2,12,192,192,192,192,192,192,7,23,23,9,1, + 251,2,4,8,16,48,96,96,96,224,224,224,224,224,224,224, + 96,96,96,48,16,8,4,2,7,23,23,9,0,251,128,64, + 32,16,24,12,12,14,14,14,14,14,14,14,14,14,12,12, + 24,16,32,64,128,9,10,20,13,2,8,24,0,24,0,201, + 128,235,128,28,0,44,0,235,128,217,128,24,0,24,0,21, + 21,63,23,1,253,0,48,0,0,48,0,0,48,0,0,48, + 0,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 0,48,0,255,255,248,255,255,248,0,48,0,0,48,0,0, + 48,0,0,48,0,0,48,0,0,48,0,0,48,0,0,48, + 0,0,48,0,4,9,9,7,2,251,224,240,240,240,16,32, + 32,64,128,6,3,3,8,1,5,252,252,252,4,4,4,8, + 2,0,96,240,240,96,9,23,46,11,1,251,1,128,1,128, + 1,0,3,0,3,0,2,0,6,0,6,0,4,0,12,0, + 12,0,8,0,24,0,24,0,24,0,16,0,48,0,48,0, + 32,0,96,0,96,0,64,0,192,0,12,18,36,15,1,0, + 15,0,25,128,48,192,112,224,112,224,240,224,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,112,224,112,224,48,192, + 25,128,15,0,8,18,18,15,3,0,24,56,248,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,255,11,18,36,15, + 2,0,31,0,113,192,96,224,224,224,240,224,248,224,121,192, + 1,192,3,0,6,0,8,0,48,32,64,32,64,32,255,224, + 191,224,143,192,135,128,12,18,36,15,1,0,31,0,49,192, + 96,224,112,224,120,224,120,224,0,192,1,128,62,0,1,192, + 0,224,0,240,112,240,248,240,240,240,192,224,65,192,63,0, + 11,18,36,15,2,0,3,0,7,0,7,0,15,0,15,0, + 23,0,55,0,39,0,103,0,71,0,199,0,135,0,255,224, + 7,0,7,0,7,0,7,0,63,224,11,18,36,15,2,0, + 65,128,127,128,126,0,120,0,64,0,64,0,95,0,99,128, + 65,192,65,224,1,224,33,224,241,224,241,224,225,192,193,192, + 67,128,62,0,11,18,36,15,2,0,7,128,24,64,48,224, + 113,224,113,224,240,0,240,0,247,128,249,192,240,224,240,224, + 240,224,240,224,112,224,112,224,48,192,57,192,15,0,11,18, + 36,15,2,0,156,64,190,96,255,32,255,224,128,32,128,64, + 128,64,0,128,1,128,3,0,7,0,6,0,14,0,30,0, + 30,0,30,0,30,0,12,0,12,18,36,15,1,0,31,128, + 32,64,64,32,192,32,192,32,240,32,252,64,127,128,127,192, + 63,224,103,240,193,240,192,112,192,48,192,48,96,32,112,64, + 31,128,12,18,36,15,2,0,31,0,113,128,96,192,224,224, + 224,224,224,240,224,240,96,240,113,240,30,240,0,240,0,240, + 56,224,120,224,120,224,97,192,33,128,30,0,4,12,12,8, + 2,0,96,240,240,96,0,0,0,0,96,240,240,96,4,17, + 17,7,2,251,96,240,240,96,0,0,0,0,224,240,240,240, + 16,32,32,64,128,19,21,63,24,2,252,0,0,96,0,1, + 224,0,7,128,0,14,0,0,56,0,0,224,0,3,128,0, + 15,0,0,60,0,0,112,0,0,224,0,0,120,0,0,28, + 0,0,7,0,0,1,192,0,0,112,0,0,60,0,0,15, + 0,0,3,128,0,0,224,0,0,32,21,7,21,23,1,3, + 255,255,248,255,255,248,0,0,0,0,0,0,0,0,0,255, + 255,248,255,255,248,19,21,63,24,2,252,192,0,0,240,0, + 0,60,0,0,14,0,0,3,128,0,0,224,0,0,56,0, + 0,30,0,0,7,128,0,1,192,0,0,224,0,3,192,0, + 7,0,0,28,0,0,112,0,1,192,0,7,128,0,30,0, + 0,56,0,0,224,0,0,128,0,0,8,18,18,12,2,0, + 60,78,135,135,135,78,12,24,16,32,36,36,24,0,24,60, + 60,24,18,18,54,20,1,0,3,240,0,12,12,0,24,3, + 0,48,237,0,97,173,128,99,28,128,199,28,192,207,24,192, + 206,24,192,206,56,192,206,56,192,206,56,128,78,49,128,110, + 91,0,35,156,0,48,0,0,12,4,0,3,248,0,17,18, + 54,19,1,0,0,192,0,0,192,0,0,192,0,1,224,0, + 1,224,0,1,224,0,2,240,0,2,240,0,4,112,0,4, + 120,0,4,120,0,8,56,0,15,252,0,8,60,0,16,28, + 0,16,30,0,48,30,0,252,127,128,15,18,36,18,2,0, + 255,224,56,56,56,56,56,28,56,28,56,28,56,56,56,48, + 63,192,56,56,56,28,56,30,56,30,56,30,56,30,56,28, + 56,56,255,240,13,18,36,17,2,0,7,136,24,120,48,56, + 112,24,112,24,240,8,240,8,240,8,240,0,240,0,240,0, + 240,8,240,8,112,8,112,8,56,16,24,32,7,192,16,18, + 36,19,2,0,255,224,56,56,56,28,56,14,56,14,56,14, + 56,15,56,15,56,15,56,15,56,15,56,15,56,14,56,14, + 56,12,56,28,56,56,255,224,14,18,36,18,2,0,255,252, + 56,28,56,12,56,12,56,4,56,68,56,64,56,192,56,192, + 63,192,56,192,56,68,56,68,56,4,56,4,56,12,56,28, + 255,252,14,18,36,17,2,0,255,252,56,60,56,28,56,12, + 56,4,56,68,56,68,56,192,56,192,63,192,56,192,56,64, + 56,64,56,0,56,0,56,0,56,0,255,0,15,18,36,18, + 2,0,7,136,24,104,48,56,112,24,112,8,112,8,240,8, + 240,0,240,0,241,254,240,56,240,56,240,56,112,56,112,56, + 48,40,24,72,15,136,17,18,54,20,2,0,255,127,128,56, + 14,0,56,14,0,56,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,63,254,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,255, + 127,128,8,18,18,11,2,0,255,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,255,11,18,36,13,1,0, + 31,224,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,115,128,243,128,243,128,227,128,195,128, + 67,0,60,0,17,18,54,19,2,0,254,127,0,56,24,0, + 56,16,0,56,32,0,56,64,0,56,192,0,57,128,0,59, + 192,0,59,192,0,61,224,0,57,240,0,56,240,0,56,248, + 0,56,120,0,56,124,0,56,60,0,56,62,0,254,127,128, + 14,18,36,17,2,0,255,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,4,56,4,56,4, + 56,12,56,12,56,28,56,60,255,252,20,18,54,22,1,0, + 254,3,240,30,3,192,30,3,192,31,5,192,31,5,192,23, + 5,192,23,133,192,23,137,192,19,201,192,19,201,192,17,209, + 192,17,241,192,17,241,192,16,241,192,16,225,192,16,225,192, + 56,97,192,254,111,240,17,18,54,18,1,0,252,63,128,60, + 14,0,62,4,0,31,4,0,31,4,0,31,132,0,23,196, + 0,19,196,0,17,228,0,17,244,0,16,244,0,16,124,0, + 16,124,0,16,60,0,16,28,0,16,28,0,56,12,0,254, + 4,0,15,18,36,18,2,0,7,192,8,32,56,48,48,24, + 112,28,112,28,240,30,240,30,240,30,240,30,240,30,240,30, + 112,28,112,28,48,24,48,56,8,32,7,192,15,18,36,18, + 2,0,255,240,56,56,56,28,56,30,56,30,56,30,56,30, + 56,28,56,56,63,224,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,255,128,15,24,48,18,2,250,7,192,8,32, + 56,56,48,24,112,28,112,28,240,30,240,30,240,30,240,30, + 240,30,240,30,112,28,112,28,51,152,52,176,28,226,7,194, + 0,194,0,194,0,230,0,254,0,124,0,56,16,18,36,19, + 2,0,255,224,56,120,56,56,56,60,56,60,56,60,56,56, + 56,112,63,192,56,96,56,48,56,56,56,56,56,57,56,57, + 56,57,56,57,255,158,12,18,36,15,2,0,30,32,97,160, + 192,224,192,96,224,32,240,32,252,0,126,0,63,128,15,192, + 135,224,129,240,128,240,192,48,192,48,224,32,176,96,143,128, + 15,18,36,18,2,0,255,254,231,30,199,14,135,14,135,6, + 135,6,7,2,7,2,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,31,224,18,18,54,20,2,0, + 255,31,192,56,7,0,56,2,0,56,2,0,56,2,0,56, + 2,0,56,2,0,56,2,0,56,2,0,56,2,0,56,2, + 0,56,2,0,56,2,0,56,2,0,24,2,0,28,4,0, + 14,8,0,3,240,0,17,18,54,19,2,0,255,63,128,60, + 6,0,60,4,0,30,4,0,30,8,0,30,8,0,15,8, + 0,15,16,0,7,144,0,7,144,0,7,160,0,3,224,0, + 3,224,0,3,192,0,1,192,0,1,192,0,1,192,0,0, + 128,0,26,18,72,27,1,0,255,191,223,192,30,15,6,0, + 30,15,6,0,15,15,4,0,15,15,132,0,15,15,132,0, + 7,143,140,0,7,139,200,0,7,147,200,0,3,211,200,0, + 3,209,240,0,3,225,240,0,1,225,240,0,1,224,240,0, + 1,224,224,0,0,192,224,0,0,192,96,0,0,192,64,0, + 16,18,36,19,2,0,255,63,62,24,30,16,31,16,15,32, + 15,224,7,192,7,192,3,192,3,224,3,224,2,240,4,240, + 8,120,8,120,16,60,48,60,252,255,16,18,36,19,2,0, + 254,127,60,12,60,8,30,16,30,16,30,16,15,32,15,32, + 7,64,7,192,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,15,240,13,18,36,16,2,0,127,248,112,120,96,240, + 97,240,65,224,67,224,3,192,7,192,7,128,15,0,15,0, + 30,0,30,8,60,8,124,24,120,24,248,56,255,248,6,22, + 22,10,2,252,252,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,252,9,23,46,11,1,251, + 192,0,64,0,96,0,96,0,32,0,48,0,48,0,16,0, + 24,0,24,0,24,0,8,0,12,0,12,0,4,0,6,0, + 6,0,2,0,3,0,3,0,1,0,1,128,1,128,6,22, + 22,10,2,252,252,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,252,11,9,18,15,2,9, + 4,0,12,0,30,0,27,0,51,0,49,128,96,192,192,192, + 192,96,13,2,4,13,0,252,255,248,255,248,4,4,4,11, + 2,13,192,224,96,48,11,12,24,13,1,0,30,0,99,0, + 99,128,115,128,35,128,31,128,115,128,227,128,227,160,227,160, + 247,160,121,192,12,18,36,13,0,0,248,0,56,0,56,0, + 56,0,56,0,56,0,59,128,60,224,60,224,56,112,56,112, + 56,112,56,112,56,112,56,112,60,224,36,192,35,128,9,12, + 24,12,1,0,30,0,49,0,113,128,227,128,227,128,224,0, + 224,0,224,0,224,128,112,128,49,0,30,0,12,18,36,13, + 1,0,7,192,1,192,1,192,1,192,1,192,1,192,29,192, + 115,192,99,192,225,192,225,192,225,192,225,192,225,192,225,192, + 99,192,115,192,29,240,9,12,24,12,1,0,30,0,51,0, + 99,128,227,128,227,128,255,128,224,0,224,0,224,128,112,128, + 49,0,30,0,9,18,36,9,1,0,15,0,29,128,59,128, + 59,128,57,0,56,0,252,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,252,0,12,18, + 36,14,1,250,30,112,51,176,113,240,113,192,113,192,113,192, + 51,128,30,0,96,0,127,128,127,192,63,224,96,224,128,96, + 128,96,128,64,64,192,63,0,12,18,36,13,0,0,248,0, + 56,0,56,0,56,0,56,0,56,0,57,192,62,224,60,224, + 56,224,56,224,56,224,56,224,56,224,56,224,56,224,56,224, + 253,240,5,18,18,7,1,0,112,112,112,32,0,0,240,112, + 112,112,112,112,112,112,112,112,112,248,7,24,24,8,255,250, + 14,14,14,4,0,0,62,14,14,14,14,14,14,14,14,14, + 14,14,14,110,238,238,204,120,13,18,36,13,0,0,248,0, + 56,0,56,0,56,0,56,0,56,0,57,240,56,192,56,128, + 57,0,57,0,59,128,63,128,57,192,57,192,56,224,56,224, + 255,248,7,18,18,8,0,0,248,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,254,18,12,36,19,1,0, + 243,142,0,125,247,0,121,231,0,113,199,0,113,199,0,113, + 199,0,113,199,0,113,199,0,113,199,0,113,199,0,113,199, + 0,251,239,192,11,12,24,13,1,0,243,128,125,192,121,192, + 113,192,113,192,113,192,113,192,113,192,113,192,113,192,113,192, + 251,224,10,12,24,12,1,0,30,0,51,0,97,128,225,192, + 225,192,225,192,225,192,225,192,225,192,97,128,51,0,30,0, + 12,18,36,13,0,250,251,128,60,192,60,224,56,112,56,112, + 56,112,56,112,56,112,56,112,60,224,60,224,59,192,56,0, + 56,0,56,0,56,0,56,0,254,0,11,18,36,13,1,250, + 28,64,50,64,99,192,225,192,225,192,225,192,225,192,225,192, + 225,192,99,192,115,192,61,192,1,192,1,192,1,192,1,192, + 1,192,7,224,9,12,24,11,1,0,243,0,117,128,123,128, + 123,128,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 248,0,9,12,24,11,1,0,57,0,199,0,195,0,225,0, + 240,0,124,0,63,0,143,128,131,128,193,128,225,0,158,0, + 8,17,17,10,1,0,16,16,16,48,112,254,112,112,112,112, + 112,113,113,113,113,114,60,12,12,24,13,0,0,249,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,224,56,224,57, + 224,58,224,28,240,12,12,24,13,1,0,253,240,112,64,56, + 64,56,128,28,128,28,128,29,0,15,0,14,0,14,0,6, + 0,4,0,19,12,36,19,0,0,253,251,224,56,112,128,28, + 112,128,28,113,0,28,121,0,14,185,0,14,154,0,14,158, + 0,7,28,0,7,12,0,2,12,0,2,8,0,12,12,24, + 13,0,0,253,240,56,64,28,128,31,0,15,0,15,0,7, + 0,7,128,11,192,17,192,17,224,253,240,12,18,36,12,0, + 250,252,240,112,64,56,64,56,128,28,128,28,128,29,0,15, + 0,15,0,7,0,6,0,6,0,2,0,4,0,116,0,116, + 0,104,0,56,0,10,12,24,12,1,0,127,192,99,128,71, + 128,71,0,15,0,14,0,28,0,60,64,56,64,120,64,112, + 192,255,192,8,23,23,10,1,251,3,28,56,56,56,56,56, + 56,56,56,48,192,48,56,56,56,56,56,56,56,56,28,3, + 2,23,23,8,3,251,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,8,23,23, + 11,2,251,192,112,56,56,56,56,56,56,56,56,28,7,28, + 56,56,56,56,56,56,56,56,112,192,14,5,10,16,1,4, + 120,8,255,4,143,196,131,252,64,120,255}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--28-280-72-72-P-153-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 21, '1' Height: 21 + Calculated Max Values w=28 h=29 x= 5 y=17 dx=31 dy= 0 ascent=28 len=87 + Font Bounding box w=77 h=36 x=-24 y=-8 + Calculated Min Values x=-1 y=-8 dx= 0 dy= 0 + Pure Font ascent =21 descent=-7 + X Font ascent =21 descent=-7 + Max Font ascent =28 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb21[9612] U8G_SECTION(".progmem.u8g_font_osb21") = { + 0,77,36,232,248,21,5,141,12,241,32,255,249,28,248,21, + 249,0,0,0,8,0,0,5,21,21,9,2,1,240,248,248, + 248,248,112,112,112,112,32,32,32,32,32,32,0,0,112,248, + 248,112,7,6,6,11,2,16,238,238,238,238,198,68,16,21, + 42,20,2,0,6,12,6,12,6,12,6,8,6,24,6,24, + 255,255,255,255,12,24,12,24,12,48,12,48,12,48,8,48, + 255,255,255,255,24,32,24,96,24,96,16,96,48,96,13,25, + 50,16,2,254,9,0,11,0,61,192,105,48,73,8,201,8, + 201,56,233,120,249,112,253,0,127,0,127,0,63,192,15,224, + 15,240,73,248,233,248,233,56,201,24,137,24,137,16,73,32, + 57,192,15,0,9,0,19,22,66,25,3,0,0,1,0,60, + 3,0,102,2,0,231,4,0,231,4,0,231,8,0,231,8, + 0,231,16,0,231,48,0,102,32,0,102,96,0,24,64,0, + 0,195,0,0,140,192,1,140,192,1,28,224,2,28,224,2, + 28,224,4,28,224,4,28,224,8,12,192,24,7,128,20,21, + 63,22,1,1,3,224,0,6,16,0,14,16,0,14,16,0, + 14,16,0,14,48,0,15,32,0,15,64,0,7,128,0,3, + 192,0,7,195,240,9,224,192,48,224,128,112,240,128,112,121, + 0,240,59,0,240,62,0,240,30,0,248,31,16,126,111,160, + 63,199,192,3,6,6,7,2,16,224,224,224,224,192,64,8, + 27,27,10,2,250,1,2,4,8,24,48,48,112,112,240,240, + 240,240,240,240,240,240,112,112,112,48,48,24,8,4,2,1, + 8,26,26,10,1,250,128,192,96,48,24,24,12,12,14,14, + 14,14,15,15,15,14,14,14,14,12,12,24,24,48,96,192, + 11,12,24,14,2,9,14,0,14,0,78,192,228,224,245,192, + 14,0,14,0,245,192,228,192,78,192,14,0,14,0,24,25, + 75,26,1,252,0,24,0,0,24,0,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0, + 24,0,0,24,0,0,24,0,255,255,255,255,255,255,0,24, + 0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,5, + 10,10,7,1,251,112,248,248,248,120,8,16,16,32,192,7, + 3,3,11,2,6,254,254,254,4,4,4,8,2,0,96,240, + 240,96,9,27,54,13,2,250,1,128,1,128,1,128,3,0, + 3,0,3,0,2,0,6,0,6,0,6,0,12,0,12,0, + 12,0,24,0,24,0,24,0,16,0,48,0,48,0,48,0, + 96,0,96,0,96,0,192,0,192,0,192,0,128,0,14,21, + 42,16,1,1,15,192,24,96,56,112,56,112,120,120,120,120, + 248,120,248,124,248,124,248,124,248,124,248,124,248,124,248,124, + 248,120,120,120,120,120,56,112,56,112,24,96,15,192,9,21, + 42,16,3,0,6,0,14,0,30,0,254,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,255,128,12,21, + 42,16,2,1,63,192,97,224,96,224,224,240,224,240,240,240, + 248,240,121,224,49,224,3,192,7,128,14,0,28,0,48,16, + 96,16,64,16,192,16,255,240,255,224,143,224,135,192,13,21, + 42,16,2,1,63,192,96,224,96,224,224,240,240,240,248,240, + 120,240,112,240,0,224,1,192,31,0,0,224,0,240,0,112, + 112,120,248,120,248,120,240,120,224,112,96,240,59,192,13,21, + 42,16,1,0,1,192,1,192,3,192,3,192,7,192,7,192, + 15,192,27,192,27,192,51,192,35,192,99,192,67,192,195,192, + 255,248,3,192,3,192,3,192,3,192,3,192,31,248,13,21, + 42,16,2,0,96,224,127,192,127,128,127,0,120,0,64,0, + 64,0,64,0,79,0,113,224,64,240,64,240,0,248,0,248, + 112,248,248,248,248,248,240,240,224,240,97,224,59,192,13,21, + 42,16,2,1,15,224,24,32,56,48,48,240,112,240,112,240, + 240,96,240,0,240,0,247,128,248,224,240,112,240,112,240,112, + 240,120,112,120,112,112,112,112,48,112,56,96,13,192,11,21, + 42,16,3,0,156,64,190,96,255,32,255,32,199,224,129,160, + 128,64,128,64,0,128,0,128,1,0,3,0,7,0,6,0, + 14,0,14,0,30,0,30,0,30,0,30,0,30,0,14,21, + 42,16,2,1,31,192,48,32,96,48,96,16,224,16,240,16, + 248,32,254,32,127,192,63,192,31,240,31,248,99,248,64,248, + 192,60,192,24,192,24,192,24,96,16,112,48,31,192,13,21, + 42,16,2,1,31,128,48,192,112,96,112,112,240,112,240,112, + 240,120,240,120,240,120,112,120,112,120,56,248,15,120,0,120, + 0,120,56,112,120,112,120,96,112,224,96,192,63,128,4,14, + 14,8,2,0,96,240,240,240,96,0,0,0,0,0,96,240, + 240,96,5,19,19,8,2,251,96,240,240,240,96,0,0,0, + 0,112,240,248,248,248,8,16,16,32,192,21,24,72,26,2, + 252,0,0,24,0,0,56,0,0,240,0,3,192,0,15,0, + 0,28,0,0,120,0,1,224,0,7,128,0,14,0,0,60, + 0,0,240,0,0,224,0,0,120,0,0,30,0,0,7,128, + 0,1,192,0,0,240,0,0,60,0,0,15,0,0,3,128, + 0,1,224,0,0,120,0,0,24,24,8,24,26,1,4,255, + 255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0, + 0,255,255,255,255,255,255,21,24,72,26,3,252,128,0,0, + 224,0,0,120,0,0,30,0,0,7,128,0,1,192,0,0, + 240,0,0,60,0,0,15,0,0,3,128,0,1,224,0,0, + 120,0,0,56,0,0,240,0,3,192,0,15,0,0,28,0, + 0,120,0,1,224,0,7,128,0,14,0,0,60,0,0,240, + 0,0,192,0,0,9,21,42,13,2,1,126,0,71,0,135, + 128,135,128,135,128,135,128,71,0,14,0,12,0,28,0,16, + 0,48,0,34,0,34,0,34,0,28,0,0,0,12,0,30, + 0,30,0,12,0,20,22,66,22,1,0,0,32,0,3,222, + 0,12,3,0,24,0,128,48,0,192,48,112,96,97,207,96, + 99,142,48,199,142,48,199,14,48,199,14,48,207,14,48,207, + 28,48,207,28,32,207,28,96,79,60,64,103,44,128,99,199, + 0,48,0,0,24,0,0,12,2,0,3,252,0,19,21,63, + 22,2,0,0,64,0,0,96,0,0,224,0,0,224,0,0, + 240,0,1,240,0,1,240,0,1,248,0,2,120,0,2,120, + 0,2,124,0,4,60,0,4,60,0,4,62,0,15,254,0, + 8,30,0,8,31,0,16,15,0,16,15,0,48,15,128,254, + 127,224,17,21,63,19,1,0,255,240,0,30,28,0,30,14, + 0,30,15,0,30,15,0,30,15,0,30,15,0,30,14,0, + 30,14,0,30,24,0,31,224,0,30,28,0,30,15,0,30, + 7,0,30,7,128,30,7,128,30,7,128,30,7,128,30,7, + 0,30,14,0,255,248,0,15,21,42,18,2,1,15,230,28, + 30,56,30,56,14,120,14,120,6,248,6,248,6,248,2,248, + 0,248,0,248,0,248,0,248,2,248,2,120,2,120,4,56, + 4,60,12,28,8,15,240,19,21,63,21,1,0,255,248,0, + 30,14,0,30,7,0,30,3,128,30,3,192,30,3,192,30, + 3,192,30,3,224,30,3,224,30,3,224,30,3,224,30,3, + 224,30,3,224,30,3,224,30,3,192,30,3,192,30,3,192, + 30,3,128,30,7,0,30,14,0,255,248,0,16,21,42,19, + 1,0,255,255,30,15,30,7,30,3,30,3,30,1,30,17, + 30,16,30,48,30,48,31,240,30,48,30,48,30,17,30,17, + 30,1,30,1,30,3,30,7,30,15,255,255,17,21,63,19, + 1,0,255,255,128,30,15,128,30,7,128,30,3,128,30,1, + 128,30,1,128,30,17,128,30,17,128,30,48,0,30,48,0, + 31,240,0,30,48,0,30,48,0,30,16,0,30,16,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,255,192, + 0,17,22,66,20,2,0,0,128,0,7,114,0,28,30,0, + 24,14,0,56,6,0,120,6,0,120,6,0,120,2,0,248, + 2,0,248,0,0,248,0,0,248,0,0,248,255,128,248,30, + 0,248,30,0,248,30,0,120,30,0,120,30,0,56,30,0, + 56,22,0,28,34,0,14,194,0,20,21,63,22,1,0,255, + 223,240,30,3,192,30,3,192,30,3,192,30,3,192,30,3, + 192,30,3,192,30,3,192,30,3,192,30,3,192,31,255,192, + 30,3,192,30,3,192,30,3,192,30,3,192,30,3,192,30, + 3,192,30,3,192,30,3,192,30,3,192,255,223,240,9,21, + 42,11,1,0,255,128,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,255,128,13,21, + 42,15,1,0,15,248,1,224,1,224,1,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,224,1,224,1,224,113,224, + 249,224,249,224,249,192,225,192,193,192,65,128,55,0,19,21, + 63,21,1,0,255,159,192,30,7,0,30,6,0,30,12,0, + 30,8,0,30,16,0,30,32,0,30,96,0,30,240,0,31, + 240,0,31,248,0,30,248,0,30,124,0,30,124,0,30,62, + 0,30,30,0,30,31,0,30,15,0,30,15,128,30,15,128, + 255,159,224,17,21,63,19,1,0,255,128,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,1,0, + 30,1,128,30,1,128,30,1,128,30,3,128,30,3,128,30, + 7,128,30,15,128,255,255,128,23,21,63,25,1,0,254,0, + 254,30,0,240,31,1,240,31,1,240,31,1,240,31,129,240, + 23,130,240,23,194,240,23,194,240,19,196,240,19,228,240,17, + 228,240,17,228,240,17,248,240,16,248,240,16,248,240,16,248, + 240,16,112,240,16,112,240,56,48,240,254,35,254,21,21,63, + 22,1,0,254,15,248,31,1,192,31,0,128,15,128,128,15, + 192,128,15,192,128,11,224,128,11,240,128,9,248,128,8,248, + 128,8,252,128,8,126,128,8,62,128,8,31,128,8,31,128, + 8,15,128,8,7,128,8,7,128,8,3,128,28,1,128,255, + 129,128,17,22,66,20,2,0,0,128,0,7,112,0,12,24, + 0,24,12,0,56,14,0,120,14,0,120,15,0,120,15,0, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,120,15,0,120,15,0,120,15,0,56,14, + 0,24,12,0,12,24,0,7,112,0,17,21,63,19,1,0, + 255,248,0,30,14,0,30,7,0,30,7,128,30,7,128,30, + 7,128,30,7,128,30,7,128,30,15,0,30,14,0,31,248, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,255,192,0,17, + 29,87,20,2,249,0,128,0,7,112,0,12,24,0,24,12, + 0,56,14,0,120,14,0,120,15,0,120,15,0,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,120,15,0,120,15,0,121,142,0,58,78,0,30,124, + 0,30,120,128,6,112,128,1,224,128,0,96,128,0,113,128, + 0,127,128,0,127,0,0,63,0,0,30,0,19,21,63,21, + 1,0,255,240,0,30,28,0,30,14,0,30,15,0,30,15, + 0,30,15,0,30,15,0,30,14,0,30,28,0,31,224,0, + 30,48,0,30,28,0,30,28,0,30,28,0,30,30,0,30, + 30,0,30,30,32,30,30,32,30,30,32,30,14,64,255,207, + 192,13,22,44,17,3,0,4,0,59,144,64,240,192,112,192, + 112,224,48,240,48,248,16,254,16,127,0,63,128,31,224,15, + 240,131,240,129,248,128,120,192,56,192,24,224,24,224,16,240, + 48,159,192,17,21,63,20,2,0,255,255,128,227,207,128,195, + 199,128,195,195,128,131,195,128,131,193,128,131,193,128,3,193, + 128,3,192,128,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,31,248,0,19,21,63,22,2,0,255,15, + 224,60,3,128,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,60,1,0,60,1,0,60,1,0,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,28,1,0,28,2,0,14,4,0,7,248,0,20,21,63, + 22,1,0,255,207,240,30,1,128,31,1,0,31,1,0,15, + 1,0,15,130,0,15,130,0,7,130,0,7,196,0,7,196, + 0,3,196,0,3,232,0,3,232,0,1,232,0,1,248,0, + 0,240,0,0,240,0,0,240,0,0,96,0,0,96,0,0, + 96,0,28,21,84,31,2,0,255,191,231,240,62,15,129,192, + 30,7,129,128,30,7,129,128,31,7,193,0,15,7,193,0, + 15,7,193,0,15,143,226,0,7,137,226,0,7,137,226,0, + 7,201,246,0,3,208,244,0,3,208,244,0,3,240,252,0, + 1,240,124,0,1,224,120,0,1,224,120,0,0,224,56,0, + 0,192,48,0,0,192,48,0,0,64,16,0,19,21,63,20, + 1,0,255,159,192,63,6,0,31,6,0,15,4,0,15,136, + 0,7,152,0,7,208,0,3,240,0,3,224,0,1,240,0, + 1,240,0,0,248,0,1,248,0,3,124,0,2,124,0,6, + 62,0,4,62,0,8,30,0,24,31,0,24,31,128,254,63, + 224,18,21,63,21,2,0,255,31,192,62,7,0,30,6,0, + 30,4,0,31,4,0,15,4,0,15,136,0,7,136,0,7, + 144,0,7,208,0,3,240,0,3,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,7,248,0,15,21,42,19,2,0,127,254,120,62, + 112,124,96,124,96,248,64,248,65,240,1,240,3,224,3,224, + 7,192,7,128,15,128,31,2,31,2,62,2,62,6,124,6, + 124,14,248,30,255,254,7,26,26,11,2,251,254,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,254,10,27,54,13,1,250,192,0,96,0, + 96,0,96,0,32,0,48,0,48,0,48,0,24,0,24,0, + 24,0,12,0,12,0,12,0,4,0,6,0,6,0,6,0, + 3,0,3,0,3,0,1,128,1,128,1,128,0,128,0,192, + 0,192,7,26,26,11,2,251,254,30,30,30,30,30,30,30, + 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30, + 30,254,12,10,20,16,2,12,6,0,7,0,15,0,29,128, + 25,128,48,192,48,224,96,96,224,48,192,48,15,2,4,15, + 0,251,255,254,255,254,5,5,5,12,2,16,192,224,112,48, + 24,12,14,28,14,1,0,30,0,99,128,99,192,243,192,115, + 192,35,192,15,192,51,192,115,192,243,192,243,208,243,208,243, + 208,125,224,13,21,42,14,0,0,252,0,60,0,60,0,60, + 0,60,0,60,0,60,0,61,192,62,96,60,112,60,112,60, + 120,60,120,60,120,60,120,60,120,60,120,60,112,52,112,38, + 96,35,192,10,14,28,13,1,0,15,0,56,128,112,192,113, + 192,243,192,243,128,240,0,240,0,240,0,240,0,112,64,112, + 64,56,128,15,0,13,21,42,15,1,0,3,224,1,224,1, + 224,1,224,1,224,1,224,1,224,29,224,51,224,113,224,113, + 224,241,224,241,224,241,224,241,224,241,224,241,224,113,224,113, + 224,51,224,29,248,11,14,28,13,1,0,15,0,51,128,113, + 192,113,192,241,192,241,224,255,224,240,0,240,0,240,32,112, + 64,112,64,56,128,15,0,11,21,42,10,1,0,7,128,12, + 192,28,192,61,224,61,192,60,0,60,0,254,0,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,254,0,14,21,42,16,1,249,15,24,57, + 236,121,252,121,248,121,224,121,224,57,192,57,192,15,0,112, + 0,192,0,255,0,255,224,127,240,63,248,64,56,128,24,128, + 16,128,48,96,96,31,128,14,21,42,16,1,0,252,0,60, + 0,60,0,60,0,60,0,60,0,60,0,61,224,62,112,60, + 112,60,120,60,120,60,120,60,120,60,120,60,120,60,120,60, + 120,60,120,60,120,254,252,6,21,21,8,1,0,48,120,120, + 48,0,0,0,248,120,120,120,120,120,120,120,120,120,120,120, + 120,252,8,28,28,8,255,249,6,15,15,6,0,0,0,31, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,79,255, + 239,238,206,56,14,21,42,16,1,0,252,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,248,60,96,60,64,60,128, + 60,128,61,128,63,128,63,192,61,224,60,224,60,240,60,112, + 60,120,254,252,8,21,21,9,1,0,252,60,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,255,20, + 14,42,23,2,0,249,199,128,126,233,192,120,241,192,120,241, + 224,120,241,224,120,241,224,120,241,224,120,241,224,120,241,224, + 120,241,224,120,241,224,120,241,224,120,241,224,253,251,240,13, + 14,28,16,2,0,251,192,124,224,120,224,120,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,253, + 248,12,14,28,14,1,0,15,0,49,128,112,192,112,224,240, + 224,240,224,240,240,240,240,240,224,240,224,112,224,112,192,49, + 128,15,0,13,21,42,15,1,249,253,192,62,96,60,112,60, + 112,60,120,60,120,60,120,60,120,60,120,60,120,60,112,60, + 112,62,96,61,192,60,0,60,0,60,0,60,0,60,0,60, + 0,254,0,13,21,42,14,1,249,30,32,51,32,113,96,113, + 224,241,224,241,224,241,224,241,224,241,224,241,224,113,224,113, + 224,51,224,29,224,1,224,1,224,1,224,1,224,1,224,1, + 224,3,248,10,14,28,12,2,0,251,128,125,128,123,192,123, + 128,121,128,120,0,120,0,120,0,120,0,120,0,120,0,120, + 0,120,0,252,0,10,14,28,13,2,0,60,128,67,128,193, + 128,193,128,224,128,248,0,126,0,63,128,143,128,131,192,192, + 192,224,192,240,128,143,0,9,20,40,10,0,0,8,0,8, + 0,8,0,24,0,24,0,56,0,255,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,128,56,128,56,128,56,128,57, + 128,57,0,14,0,14,14,28,15,0,0,253,248,60,120,60, + 120,60,120,60,120,60,120,60,120,60,120,60,120,60,120,60, + 120,60,248,29,120,14,124,13,14,28,15,1,0,252,248,120, + 32,56,32,60,32,28,64,28,64,30,64,14,128,14,128,15, + 0,7,0,7,0,6,0,2,0,20,14,42,22,1,0,253, + 253,240,120,120,64,56,120,64,60,56,64,28,120,128,28,124, + 128,30,92,128,14,157,0,14,159,0,15,143,0,7,14,0, + 7,14,0,6,6,0,2,4,0,13,14,28,15,1,0,254, + 248,60,96,60,64,30,128,30,128,15,0,7,0,7,128,7, + 192,11,192,9,224,16,224,48,240,253,248,13,21,42,15,1, + 249,252,248,120,32,56,32,60,64,28,64,28,64,30,64,14, + 128,15,128,7,128,7,128,7,0,3,0,3,0,2,0,2, + 0,50,0,122,0,116,0,116,0,56,0,11,14,28,13,1, + 0,127,224,97,224,67,192,67,128,71,128,15,0,15,0,30, + 0,30,32,60,32,56,32,120,96,240,224,255,224,9,27,54, + 12,1,250,0,128,7,0,14,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,28,0,28,0,56,0,224,0,56, + 0,28,0,28,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,14,0,7,0,0,128,2,27,27,8,3,250,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,9,27,54,13,2,250, + 192,0,56,0,28,0,28,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,14,0,1,128,14,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,28,0, + 28,0,56,0,192,0,16,6,12,18,1,5,124,2,127,1, + 143,193,131,241,128,254,64,62,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,0,0,0,8,0,0,5, + 21,21,9,2,249,112,248,248,112,0,0,32,32,32,32,32, + 112,112,112,112,248,248,248,248,248,112,10,21,42,16,3,253, + 2,0,2,0,2,0,15,0,26,128,50,192,114,192,243,192, + 243,192,242,0,242,0,242,0,242,0,242,64,114,64,50,64, + 30,128,15,0,2,0,2,0,2,0,17,21,63,20,2,1, + 0,254,0,1,131,0,3,131,0,3,135,128,7,135,128,7, + 135,0,7,128,0,7,128,0,7,128,0,31,128,0,39,248, + 0,7,128,0,7,192,0,3,192,0,3,128,0,3,128,0, + 3,128,128,123,1,128,143,135,0,135,254,0,121,252,0,13, + 13,26,17,2,3,207,152,255,248,112,112,96,48,192,24,192, + 24,192,24,192,24,192,24,96,48,112,112,255,248,207,152,15, + 21,42,16,1,0,254,126,124,24,124,24,60,16,60,16,30, + 32,30,32,30,64,15,64,15,128,7,128,127,248,7,128,127, + 248,7,128,7,128,7,128,7,128,7,128,7,128,63,240,2, + 26,26,8,3,251,192,192,192,192,192,192,192,192,192,192,0, + 0,0,0,0,0,192,192,192,192,192,192,192,192,192,192,13, + 27,54,18,1,250,15,128,16,64,32,96,96,224,97,224,97, + 224,112,128,124,0,63,0,95,192,79,240,195,240,192,248,224, + 56,248,24,126,16,127,144,31,224,7,224,1,224,48,224,120, + 96,120,96,112,96,96,192,48,128,31,0,9,4,8,13,2, + 16,99,0,247,128,247,128,99,0,20,21,63,22,1,1,3, + 252,0,12,3,0,16,0,128,32,0,64,32,244,64,65,140, + 32,67,132,32,131,132,16,135,132,16,135,132,16,135,128,16, + 135,128,16,135,128,16,135,130,16,67,132,32,67,132,32,33, + 136,64,32,240,64,16,0,128,12,3,0,3,252,0,8,11, + 11,10,1,10,56,76,108,108,60,204,205,205,118,0,255,7, + 11,11,13,3,2,34,68,196,204,204,204,204,204,68,98,34, + 14,8,16,16,1,4,255,252,255,252,0,12,0,12,0,12, + 0,12,0,12,0,12,7,3,3,11,2,6,254,254,254,20, + 21,63,22,1,1,3,252,0,12,3,0,16,0,128,32,0, + 64,47,248,64,67,206,32,67,206,32,131,207,16,131,206,16, + 131,206,16,131,240,16,131,204,16,131,206,16,131,206,16,67, + 206,160,67,206,160,35,206,192,47,231,64,16,0,128,12,3, + 0,3,252,0,7,2,2,13,3,17,254,254,9,10,20,17, + 4,12,8,0,62,0,119,0,193,128,193,128,193,128,193,128, + 99,0,127,0,28,0,24,22,66,26,1,254,0,24,0,0, + 24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24, + 0,0,24,0,255,255,255,255,255,255,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0, + 24,0,0,0,0,0,0,0,255,255,255,255,255,255,9,12, + 24,13,2,9,62,0,71,0,199,128,231,0,111,0,12,0, + 24,0,33,0,65,128,255,0,159,0,142,0,10,13,26,13, + 2,8,62,0,67,0,195,128,227,128,99,128,3,0,60,0, + 7,0,3,128,243,192,227,128,199,128,62,0,5,5,5,12, + 5,16,24,56,112,96,192,14,22,44,17,2,248,96,192,224, + 224,241,224,241,224,225,224,225,224,224,224,224,224,96,192,64, + 196,64,196,65,252,127,124,78,56,64,0,64,0,96,0,224, + 0,240,0,240,0,112,0,96,0,13,25,50,17,2,252,31, + 248,126,96,254,96,254,96,254,96,254,96,254,96,254,96,254, + 96,126,96,62,96,6,96,6,96,6,96,6,96,6,96,6, + 96,6,96,6,96,6,96,6,96,6,96,6,96,6,96,6, + 96,4,4,4,8,2,7,96,240,240,96,5,6,6,13,4, + 249,32,64,48,24,24,240,7,12,12,13,3,9,28,252,60, + 60,60,60,60,60,60,60,60,254,8,11,11,11,2,10,60, + 102,230,231,231,231,230,102,60,0,255,7,11,11,13,3,2, + 136,68,102,102,102,102,102,102,68,140,136,22,21,63,26,3, + 0,12,1,128,28,1,0,252,3,0,60,2,0,60,6,0, + 60,12,0,60,12,0,60,24,0,60,16,0,60,48,112,60, + 32,240,60,97,240,254,65,240,0,194,240,0,130,240,1,132, + 240,3,8,240,3,15,252,6,0,240,4,0,240,12,3,248, + 21,22,66,26,3,0,0,1,128,28,1,0,252,3,0,60, + 2,0,60,6,0,60,4,0,60,12,0,60,24,0,60,24, + 0,60,51,224,60,36,112,60,108,120,60,78,120,254,206,120, + 0,134,112,1,128,192,1,1,0,3,2,8,2,4,8,6, + 15,248,4,11,240,12,8,224,22,21,63,25,2,0,62,0, + 128,67,1,128,195,129,0,227,131,0,99,130,0,3,6,0, + 60,4,0,7,8,0,3,152,0,243,208,112,227,176,112,199, + 160,240,62,97,240,0,65,240,0,194,240,0,130,240,1,132, + 240,1,7,252,3,0,240,2,0,240,6,3,252,9,22,44, + 13,2,249,24,0,60,0,60,0,60,0,24,0,0,0,28, + 0,34,0,34,0,34,0,6,0,12,0,28,0,56,0,112, + 0,113,0,240,128,240,128,240,128,240,128,113,0,62,0,19, + 27,81,22,2,1,3,0,0,3,128,0,1,128,0,0,192, + 0,0,64,0,0,0,0,0,64,0,0,96,0,0,224,0, + 0,224,0,0,240,0,1,240,0,1,240,0,1,248,0,2, + 120,0,2,120,0,2,124,0,4,60,0,4,60,0,4,62, + 0,15,254,0,8,30,0,8,31,0,16,15,0,16,15,0, + 48,15,128,254,127,224,19,27,81,21,2,1,0,24,0,0, + 56,0,0,48,0,0,96,0,0,64,0,0,0,0,0,64, + 0,0,96,0,0,224,0,0,224,0,0,240,0,1,240,0, + 1,240,0,1,248,0,2,120,0,2,120,0,2,124,0,4, + 60,0,4,60,0,8,60,0,15,254,0,8,30,0,16,30, + 0,16,15,0,16,15,0,48,15,128,254,127,224,19,27,81, + 22,2,0,0,64,0,0,224,0,1,240,0,3,24,0,4, + 4,0,0,0,0,0,64,0,0,96,0,0,224,0,0,224, + 0,0,240,0,1,240,0,1,240,0,1,248,0,2,120,0, + 2,120,0,2,124,0,4,60,0,4,60,0,4,62,0,15, + 254,0,8,30,0,8,31,0,16,15,0,16,15,0,48,15, + 128,254,127,224,19,27,81,21,2,0,0,4,0,1,200,0, + 3,248,0,4,112,0,0,0,0,0,0,0,0,64,0,0, + 96,0,0,224,0,0,224,0,0,240,0,1,240,0,1,240, + 0,1,248,0,2,120,0,2,120,0,2,124,0,4,60,0, + 4,60,0,4,60,0,15,254,0,8,30,0,24,30,0,16, + 15,0,16,15,0,48,15,128,254,127,224,19,27,81,22,2, + 0,3,12,0,7,158,0,7,158,0,3,12,0,0,0,0, + 0,0,0,0,96,0,0,96,0,0,224,0,0,240,0,0, + 240,0,1,240,0,1,248,0,1,120,0,2,120,0,2,124, + 0,2,60,0,4,60,0,4,62,0,4,30,0,15,254,0, + 8,31,0,8,15,0,16,15,0,16,15,0,48,15,128,254, + 127,224,19,27,81,21,1,0,0,240,0,1,8,0,1,8, + 0,1,8,0,0,240,0,0,0,0,0,96,0,0,96,0, + 0,240,0,0,240,0,0,240,0,1,248,0,1,248,0,1, + 120,0,1,120,0,2,124,0,2,60,0,2,60,0,4,62, + 0,4,30,0,7,254,0,8,31,0,8,15,0,8,15,0, + 24,15,0,24,15,128,254,63,224,26,21,84,28,0,0,0, + 63,255,192,0,15,131,192,0,15,129,192,0,31,128,192,0, + 23,128,192,0,55,128,64,0,39,132,64,0,103,132,0,0, + 71,140,0,0,199,156,0,0,135,252,0,1,135,156,0,1, + 7,140,0,3,7,132,64,3,255,132,64,6,7,128,64,4, + 7,128,64,12,7,128,192,12,7,129,192,28,7,131,192,255, + 63,255,192,15,28,56,18,2,250,15,230,28,30,56,30,56, + 14,120,14,120,6,248,6,248,6,248,2,248,0,248,0,248, + 0,248,0,248,2,120,2,120,2,120,4,56,4,60,12,28, + 8,6,48,1,192,1,0,1,192,0,96,0,96,4,96,3, + 192,16,27,54,19,1,1,6,0,7,0,3,0,1,128,0, + 0,0,0,255,255,30,15,30,7,30,3,30,3,30,1,30, + 17,30,16,30,48,30,48,31,240,30,48,30,48,30,17,30, + 17,30,1,30,1,30,3,30,7,30,15,255,255,16,27,54, + 19,1,1,0,56,0,120,0,96,0,192,0,0,0,0,255, + 255,30,15,30,7,30,3,30,3,30,1,30,17,30,16,30, + 48,30,48,31,240,30,48,30,48,30,17,30,17,30,1,30, + 1,30,3,30,7,30,15,255,255,16,27,54,19,1,0,0, + 128,1,192,3,96,6,56,8,0,0,0,255,255,30,15,30, + 7,30,3,30,3,30,1,30,17,30,16,30,48,30,48,31, + 240,30,48,30,48,30,17,30,17,30,1,30,1,30,3,30, + 7,30,15,255,255,16,27,54,19,1,0,6,24,15,60,15, + 60,6,24,0,0,0,0,255,255,30,15,30,7,30,3,30, + 3,30,1,30,17,30,16,30,48,30,48,31,240,30,48,30, + 48,30,17,30,17,30,1,30,1,30,3,30,7,30,15,255, + 255,9,27,54,11,1,1,96,0,112,0,56,0,8,0,0, + 0,0,0,255,128,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,255,128,10,27,54, + 12,1,1,3,128,3,128,6,0,12,0,8,0,0,0,255, + 192,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,255,192,9,27,54,11,1,0,12, + 0,28,0,62,0,99,0,0,128,0,0,255,128,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,255,128,10,27,54,13,2,0,97,128,243,192,243, + 192,97,128,0,0,0,0,255,192,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,255, + 192,19,21,63,22,2,0,255,248,0,30,14,0,30,7,0, + 30,3,128,30,3,192,30,3,192,30,3,192,30,3,224,30, + 3,224,30,3,224,255,131,224,30,3,224,30,3,224,30,3, + 224,30,3,192,30,3,192,30,3,128,30,3,128,30,7,0, + 30,14,0,255,248,0,21,26,78,22,1,1,0,226,0,1, + 254,0,2,28,0,0,0,0,0,0,0,254,15,248,31,1, + 192,31,0,128,15,128,128,15,192,128,15,192,128,11,224,128, + 11,240,128,9,248,128,8,248,128,8,252,128,8,126,128,8, + 62,128,8,31,128,8,31,128,8,15,128,8,7,128,8,7, + 128,8,3,128,28,1,128,255,129,128,17,27,81,20,2,1, + 14,0,0,7,0,0,3,0,0,1,128,0,0,0,0,0, + 128,0,7,112,0,12,24,0,24,12,0,56,14,0,120,14, + 0,120,15,0,120,15,0,248,15,128,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,120,15,0,120, + 15,0,120,15,0,56,14,0,24,12,0,12,24,0,7,112, + 0,17,27,81,20,2,1,0,56,0,0,112,0,0,96,0, + 0,192,0,0,0,0,0,128,0,7,112,0,12,24,0,24, + 12,0,56,14,0,120,14,0,120,15,0,120,15,0,248,15, + 128,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 248,15,128,120,15,0,120,15,0,120,15,0,56,14,0,24, + 12,0,12,24,0,7,112,0,17,27,81,20,2,0,0,128, + 0,1,192,0,3,96,0,6,48,0,8,8,0,0,128,0, + 7,112,0,12,24,0,24,12,0,56,14,0,120,14,0,120, + 15,0,120,15,0,248,15,128,248,15,128,248,15,128,248,15, + 128,248,15,128,248,15,128,248,15,128,120,15,0,120,15,0, + 120,15,0,56,14,0,24,12,0,12,24,0,7,112,0,17, + 27,81,20,2,0,0,8,0,7,136,0,7,240,0,8,224, + 0,0,0,0,0,128,0,7,112,0,12,24,0,24,12,0, + 56,14,0,120,14,0,120,15,0,120,15,0,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,248,15,128,248,15, + 128,120,15,0,120,15,0,120,15,0,56,14,0,24,12,0, + 12,24,0,7,112,0,17,27,81,20,2,0,12,48,0,30, + 120,0,30,120,0,12,48,0,0,0,0,0,128,0,7,112, + 0,12,24,0,24,12,0,56,14,0,120,14,0,120,15,0, + 120,15,0,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,120,15,0,120,15,0,120,15, + 0,56,14,0,24,12,0,12,24,0,7,112,0,18,19,57, + 26,4,254,64,0,64,224,0,192,112,1,128,56,3,0,28, + 6,0,14,12,0,7,24,0,3,176,0,1,224,0,0,224, + 0,1,240,0,3,56,0,6,28,0,12,12,0,24,6,0, + 48,3,0,112,1,128,224,0,192,64,0,0,17,22,66,20, + 2,0,0,128,0,7,113,128,12,27,0,24,14,0,56,14, + 0,56,14,0,120,31,0,120,31,0,248,47,128,248,111,128, + 248,79,128,248,143,128,249,15,128,251,15,128,250,15,128,124, + 15,0,124,15,0,120,14,0,56,14,0,56,12,0,108,24, + 0,199,112,0,19,27,81,22,2,1,7,0,0,3,128,0, + 1,128,0,0,192,0,0,0,0,0,0,0,255,15,224,60, + 3,128,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,60,1,0,60,1,0,60,1,0,28, + 1,0,28,2,0,14,4,0,7,248,0,19,27,81,22,2, + 1,0,28,0,0,56,0,0,48,0,0,96,0,0,0,0, + 0,0,0,255,15,224,60,3,128,60,1,0,60,1,0,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,28,1,0,28,2,0,14,4,0,7, + 248,0,19,27,81,22,2,0,0,192,0,0,224,0,1,240, + 0,6,24,0,0,4,0,0,0,0,255,15,224,60,3,128, + 60,1,0,60,1,0,60,1,0,60,1,0,60,1,0,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,28,3,0, + 28,2,0,14,4,0,7,248,0,19,27,81,22,2,0,3, + 12,0,7,158,0,7,158,0,3,12,0,0,0,0,0,0, + 0,255,143,224,60,3,128,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,60,1,0,60,1,0,60,1,0,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,28,1,0,28,2,0,14,4,0,7,248,0, + 19,27,81,21,2,1,0,28,0,0,60,0,0,48,0,0, + 96,0,0,0,0,0,0,0,255,31,224,62,7,0,30,6, + 0,30,6,0,31,4,0,15,4,0,15,136,0,7,136,0, + 7,144,0,7,208,0,3,240,0,3,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,7,248,0,17,21,63,19,1,0,255,192,0, + 30,0,0,30,0,0,30,0,0,31,248,0,30,14,0,30, + 15,0,30,7,128,30,7,128,30,7,128,30,7,128,30,7, + 128,30,15,0,30,14,0,31,248,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,255,192,0,14,21,42,16, + 1,0,7,192,12,96,28,112,28,112,60,112,60,112,60,112, + 60,96,61,128,60,96,60,48,60,56,60,56,60,56,60,60, + 60,60,60,56,63,184,63,184,63,48,253,224,12,21,42,14, + 1,0,96,0,112,0,56,0,24,0,12,0,4,0,0,0, + 30,0,99,128,99,192,243,192,115,192,7,192,27,192,115,192, + 115,192,243,192,243,208,243,208,243,208,125,224,12,21,42,14, + 1,0,1,128,3,128,3,0,6,0,12,0,8,0,0,0, + 30,0,99,128,99,192,243,192,115,192,35,192,15,192,51,192, + 115,192,243,192,243,208,243,208,243,208,125,224,12,21,42,14, + 1,0,12,0,12,0,30,0,19,0,33,128,64,128,0,0, + 30,0,99,128,99,192,243,192,115,192,35,192,15,192,51,192, + 115,192,243,192,243,208,243,208,243,208,125,224,12,20,40,14, + 1,0,56,128,127,128,71,0,0,0,0,0,0,0,30,0, + 99,128,99,192,243,192,115,192,3,192,31,192,51,192,115,192, + 243,192,243,208,243,208,245,208,121,224,12,20,40,14,1,0, + 97,128,243,192,243,192,97,128,0,0,0,0,30,0,99,128, + 99,192,243,192,115,192,35,192,15,192,51,192,115,192,243,192, + 243,208,243,208,243,208,125,224,12,21,42,14,1,1,30,0, + 33,0,33,0,33,0,50,0,12,0,0,0,31,0,99,128, + 97,192,241,192,113,192,33,192,15,192,49,192,97,192,225,192, + 225,208,225,208,227,208,124,224,17,14,42,19,1,0,62,60, + 0,99,230,0,99,199,0,243,199,128,115,199,128,7,199,128, + 27,255,128,115,192,0,115,192,0,243,192,128,243,192,128,243, + 225,0,242,225,0,124,62,0,10,21,42,13,1,249,15,0, + 56,128,112,192,113,192,243,192,243,128,240,0,240,0,240,0, + 240,0,112,64,112,64,56,128,31,0,4,0,8,0,6,0, + 3,0,3,0,3,0,30,0,11,21,42,13,1,0,48,0, + 48,0,56,0,24,0,12,0,0,0,0,0,15,0,51,128, + 113,192,113,192,241,192,241,224,255,224,240,0,240,0,240,32, + 112,64,112,64,56,128,15,0,11,21,42,13,1,0,1,128, + 3,128,3,128,6,0,4,0,8,0,0,0,15,0,51,128, + 113,192,113,192,241,192,241,224,255,224,240,0,240,0,240,32, + 112,64,112,64,56,128,15,0,11,21,42,13,1,0,12,0, + 14,0,30,0,27,0,49,128,64,0,0,0,15,0,51,128, + 113,192,113,192,241,192,241,224,255,224,240,0,240,0,240,32, + 112,64,112,64,56,128,15,0,11,20,40,13,1,0,49,128, + 123,192,123,192,49,128,0,0,0,0,15,0,51,128,113,192, + 113,192,241,192,241,224,255,224,240,0,240,0,240,32,112,64, + 112,64,56,128,15,0,7,21,21,9,1,0,192,224,112,48, + 24,8,0,124,60,60,60,60,60,60,60,60,60,60,60,60, + 126,6,21,21,9,2,0,12,12,28,56,32,0,0,248,120, + 120,120,120,120,120,120,120,120,120,120,120,252,8,21,21,8, + 1,0,56,56,124,110,131,0,0,252,60,60,60,60,60,60, + 60,60,60,60,60,60,254,8,20,20,9,1,0,102,255,255, + 102,0,0,124,60,60,60,60,60,60,60,60,60,60,60,60, + 126,12,21,42,14,1,0,60,64,31,128,15,0,15,0,55, + 128,3,128,3,192,31,192,49,224,113,224,112,224,240,224,240, + 240,240,240,240,240,240,224,240,224,112,224,113,192,49,192,15, + 0,13,19,38,16,2,1,30,64,63,192,35,128,0,0,0, + 0,251,192,124,224,120,224,120,240,120,240,120,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,253,248,12,21,42, + 14,1,0,48,0,56,0,56,0,12,0,6,0,2,0,0, + 0,15,0,49,128,112,192,112,224,240,224,240,224,240,240,240, + 240,240,224,240,224,112,224,112,192,49,128,15,0,12,21,42, + 14,1,0,1,128,1,192,3,128,3,0,6,0,4,0,0, + 0,15,0,49,128,112,192,112,224,240,224,240,224,240,240,240, + 240,240,224,240,224,112,224,112,192,49,128,15,0,12,21,42, + 14,1,0,6,0,14,0,15,0,27,0,48,128,32,64,0, + 0,15,0,49,128,112,192,112,224,240,224,240,224,240,240,240, + 240,240,224,240,224,112,224,112,192,49,128,15,0,12,20,40, + 14,1,0,28,64,63,192,71,128,0,0,0,0,0,0,15, + 0,49,128,112,192,112,224,240,224,240,224,240,240,240,240,240, + 224,240,224,112,224,112,192,49,128,15,0,12,20,40,14,1, + 0,49,128,123,192,123,192,49,128,0,0,0,0,15,0,49, + 128,112,192,112,224,240,224,240,224,240,240,240,240,240,224,240, + 224,112,224,112,192,49,128,15,0,24,19,57,26,1,254,0, + 24,0,0,60,0,0,60,0,0,24,0,0,0,0,0,0, + 0,0,0,0,0,0,0,255,255,255,255,255,255,0,0,0, + 0,0,0,0,0,0,0,0,0,0,24,0,0,60,0,0, + 60,0,0,60,0,0,24,0,12,14,28,14,1,0,15,16, + 49,160,113,192,112,224,241,224,243,224,242,240,244,240,248,224, + 240,224,112,224,112,192,121,128,143,0,14,21,42,15,0,0, + 24,0,28,0,12,0,6,0,3,0,0,0,0,0,253,248, + 60,120,60,120,60,120,60,120,60,120,60,120,60,120,60,120, + 60,120,60,248,60,248,29,120,14,124,14,21,42,15,0,0, + 0,192,0,192,1,192,1,128,3,0,0,0,0,0,253,248, + 60,120,60,120,60,120,60,120,60,120,60,120,60,120,60,120, + 60,120,60,120,60,248,29,120,14,124,14,21,42,15,0,0, + 3,0,7,0,7,128,12,128,24,64,0,0,0,0,253,248, + 60,120,60,120,60,120,60,120,60,120,60,120,60,120,60,120, + 60,120,60,120,60,248,29,120,14,124,14,20,40,15,0,0, + 24,192,61,224,61,224,24,192,0,0,0,0,253,248,60,120, + 60,120,60,120,60,120,60,120,60,120,60,120,60,120,60,120, + 60,120,60,248,29,120,14,124,13,28,56,15,1,249,0,192, + 0,192,1,192,3,128,2,0,0,0,0,0,252,248,120,32, + 56,32,60,64,28,64,28,64,30,64,14,128,15,128,7,128, + 7,0,7,0,3,0,3,0,2,0,2,0,50,0,124,0, + 116,0,116,0,56,0,13,26,52,15,1,250,28,0,124,0, + 188,0,60,0,60,0,60,0,60,240,63,120,60,120,60,120, + 60,120,60,120,60,112,60,112,60,96,60,192,60,128,61,0, + 62,0,60,0,60,0,60,0,60,0,60,0,48,0,192,0, + 13,27,54,15,1,249,24,96,60,240,60,240,24,96,0,0, + 0,0,254,120,120,48,56,32,60,32,28,32,30,64,30,64, + 14,64,15,128,7,128,7,128,7,0,3,0,3,0,1,0, + 2,0,50,0,122,0,116,0,116,0,56,0}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--28-280-72-72-P-153-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 21 + Calculated Max Values w=24 h=27 x= 3 y= 9 dx=26 dy= 0 ascent=22 len=75 + Font Bounding box w=77 h=36 x=-24 y=-8 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =21 descent= 0 + X Font ascent =21 descent= 0 + Max Font ascent =22 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb21n[703] U8G_SECTION(".progmem.u8g_font_osb21n") = { + 0,77,36,232,248,21,0,0,0,0,42,57,0,22,250,21, + 0,11,12,24,14,2,9,14,0,14,0,78,192,228,224,245, + 192,14,0,14,0,245,192,228,192,78,192,14,0,14,0,24, + 25,75,26,1,252,0,24,0,0,24,0,0,24,0,0,24, + 0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,0,255,255,255,255,255,255,0, + 24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24, + 0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0, + 5,10,10,7,1,251,112,248,248,248,120,8,16,16,32,192, + 7,3,3,11,2,6,254,254,254,4,4,4,8,2,0,96, + 240,240,96,9,27,54,13,2,250,1,128,1,128,1,128,3, + 0,3,0,3,0,2,0,6,0,6,0,6,0,12,0,12, + 0,12,0,24,0,24,0,24,0,16,0,48,0,48,0,48, + 0,96,0,96,0,96,0,192,0,192,0,192,0,128,0,14, + 21,42,16,1,1,15,192,24,96,56,112,56,112,120,120,120, + 120,248,120,248,124,248,124,248,124,248,124,248,124,248,124,248, + 124,248,120,120,120,120,120,56,112,56,112,24,96,15,192,9, + 21,42,16,3,0,6,0,14,0,30,0,254,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,255,128,12, + 21,42,16,2,1,63,192,97,224,96,224,224,240,224,240,240, + 240,248,240,121,224,49,224,3,192,7,128,14,0,28,0,48, + 16,96,16,64,16,192,16,255,240,255,224,143,224,135,192,13, + 21,42,16,2,1,63,192,96,224,96,224,224,240,240,240,248, + 240,120,240,112,240,0,224,1,192,31,0,0,224,0,240,0, + 112,112,120,248,120,248,120,240,120,224,112,96,240,59,192,13, + 21,42,16,1,0,1,192,1,192,3,192,3,192,7,192,7, + 192,15,192,27,192,27,192,51,192,35,192,99,192,67,192,195, + 192,255,248,3,192,3,192,3,192,3,192,3,192,31,248,13, + 21,42,16,2,0,96,224,127,192,127,128,127,0,120,0,64, + 0,64,0,64,0,79,0,113,224,64,240,64,240,0,248,0, + 248,112,248,248,248,248,248,240,240,224,240,97,224,59,192,13, + 21,42,16,2,1,15,224,24,32,56,48,48,240,112,240,112, + 240,240,96,240,0,240,0,247,128,248,224,240,112,240,112,240, + 112,240,120,112,120,112,112,112,112,48,112,56,96,13,192,11, + 21,42,16,3,0,156,64,190,96,255,32,255,32,199,224,129, + 160,128,64,128,64,0,128,0,128,1,0,3,0,7,0,6, + 0,14,0,14,0,30,0,30,0,30,0,30,0,30,0,14, + 21,42,16,2,1,31,192,48,32,96,48,96,16,224,16,240, + 16,248,32,254,32,127,192,63,192,31,240,31,248,99,248,64, + 248,192,60,192,24,192,24,192,24,96,16,112,48,31,192,13, + 21,42,16,2,1,31,128,48,192,112,96,112,112,240,112,240, + 112,240,120,240,120,240,120,112,120,112,120,56,248,15,120,0, + 120,0,120,56,112,120,112,120,96,112,224,96,192,63,128}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--28-280-72-72-P-153-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 21, '1' Height: 21 + Calculated Max Values w=28 h=29 x= 3 y=16 dx=31 dy= 0 ascent=23 len=87 + Font Bounding box w=77 h=36 x=-24 y=-8 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =21 descent=-7 + X Font ascent =21 descent=-7 + Max Font ascent =23 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb21r[4521] U8G_SECTION(".progmem.u8g_font_osb21r") = { + 0,77,36,232,248,21,5,141,12,241,32,127,249,23,249,21, + 249,0,0,0,8,0,0,5,21,21,9,2,1,240,248,248, + 248,248,112,112,112,112,32,32,32,32,32,32,0,0,112,248, + 248,112,7,6,6,11,2,16,238,238,238,238,198,68,16,21, + 42,20,2,0,6,12,6,12,6,12,6,8,6,24,6,24, + 255,255,255,255,12,24,12,24,12,48,12,48,12,48,8,48, + 255,255,255,255,24,32,24,96,24,96,16,96,48,96,13,25, + 50,16,2,254,9,0,11,0,61,192,105,48,73,8,201,8, + 201,56,233,120,249,112,253,0,127,0,127,0,63,192,15,224, + 15,240,73,248,233,248,233,56,201,24,137,24,137,16,73,32, + 57,192,15,0,9,0,19,22,66,25,3,0,0,1,0,60, + 3,0,102,2,0,231,4,0,231,4,0,231,8,0,231,8, + 0,231,16,0,231,48,0,102,32,0,102,96,0,24,64,0, + 0,195,0,0,140,192,1,140,192,1,28,224,2,28,224,2, + 28,224,4,28,224,4,28,224,8,12,192,24,7,128,20,21, + 63,22,1,1,3,224,0,6,16,0,14,16,0,14,16,0, + 14,16,0,14,48,0,15,32,0,15,64,0,7,128,0,3, + 192,0,7,195,240,9,224,192,48,224,128,112,240,128,112,121, + 0,240,59,0,240,62,0,240,30,0,248,31,16,126,111,160, + 63,199,192,3,6,6,7,2,16,224,224,224,224,192,64,8, + 27,27,10,2,250,1,2,4,8,24,48,48,112,112,240,240, + 240,240,240,240,240,240,112,112,112,48,48,24,8,4,2,1, + 8,26,26,10,1,250,128,192,96,48,24,24,12,12,14,14, + 14,14,15,15,15,14,14,14,14,12,12,24,24,48,96,192, + 11,12,24,14,2,9,14,0,14,0,78,192,228,224,245,192, + 14,0,14,0,245,192,228,192,78,192,14,0,14,0,24,25, + 75,26,1,252,0,24,0,0,24,0,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0, + 24,0,0,24,0,0,24,0,255,255,255,255,255,255,0,24, + 0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,5, + 10,10,7,1,251,112,248,248,248,120,8,16,16,32,192,7, + 3,3,11,2,6,254,254,254,4,4,4,8,2,0,96,240, + 240,96,9,27,54,13,2,250,1,128,1,128,1,128,3,0, + 3,0,3,0,2,0,6,0,6,0,6,0,12,0,12,0, + 12,0,24,0,24,0,24,0,16,0,48,0,48,0,48,0, + 96,0,96,0,96,0,192,0,192,0,192,0,128,0,14,21, + 42,16,1,1,15,192,24,96,56,112,56,112,120,120,120,120, + 248,120,248,124,248,124,248,124,248,124,248,124,248,124,248,124, + 248,120,120,120,120,120,56,112,56,112,24,96,15,192,9,21, + 42,16,3,0,6,0,14,0,30,0,254,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,255,128,12,21, + 42,16,2,1,63,192,97,224,96,224,224,240,224,240,240,240, + 248,240,121,224,49,224,3,192,7,128,14,0,28,0,48,16, + 96,16,64,16,192,16,255,240,255,224,143,224,135,192,13,21, + 42,16,2,1,63,192,96,224,96,224,224,240,240,240,248,240, + 120,240,112,240,0,224,1,192,31,0,0,224,0,240,0,112, + 112,120,248,120,248,120,240,120,224,112,96,240,59,192,13,21, + 42,16,1,0,1,192,1,192,3,192,3,192,7,192,7,192, + 15,192,27,192,27,192,51,192,35,192,99,192,67,192,195,192, + 255,248,3,192,3,192,3,192,3,192,3,192,31,248,13,21, + 42,16,2,0,96,224,127,192,127,128,127,0,120,0,64,0, + 64,0,64,0,79,0,113,224,64,240,64,240,0,248,0,248, + 112,248,248,248,248,248,240,240,224,240,97,224,59,192,13,21, + 42,16,2,1,15,224,24,32,56,48,48,240,112,240,112,240, + 240,96,240,0,240,0,247,128,248,224,240,112,240,112,240,112, + 240,120,112,120,112,112,112,112,48,112,56,96,13,192,11,21, + 42,16,3,0,156,64,190,96,255,32,255,32,199,224,129,160, + 128,64,128,64,0,128,0,128,1,0,3,0,7,0,6,0, + 14,0,14,0,30,0,30,0,30,0,30,0,30,0,14,21, + 42,16,2,1,31,192,48,32,96,48,96,16,224,16,240,16, + 248,32,254,32,127,192,63,192,31,240,31,248,99,248,64,248, + 192,60,192,24,192,24,192,24,96,16,112,48,31,192,13,21, + 42,16,2,1,31,128,48,192,112,96,112,112,240,112,240,112, + 240,120,240,120,240,120,112,120,112,120,56,248,15,120,0,120, + 0,120,56,112,120,112,120,96,112,224,96,192,63,128,4,14, + 14,8,2,0,96,240,240,240,96,0,0,0,0,0,96,240, + 240,96,5,19,19,8,2,251,96,240,240,240,96,0,0,0, + 0,112,240,248,248,248,8,16,16,32,192,21,24,72,26,2, + 252,0,0,24,0,0,56,0,0,240,0,3,192,0,15,0, + 0,28,0,0,120,0,1,224,0,7,128,0,14,0,0,60, + 0,0,240,0,0,224,0,0,120,0,0,30,0,0,7,128, + 0,1,192,0,0,240,0,0,60,0,0,15,0,0,3,128, + 0,1,224,0,0,120,0,0,24,24,8,24,26,1,4,255, + 255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0, + 0,255,255,255,255,255,255,21,24,72,26,3,252,128,0,0, + 224,0,0,120,0,0,30,0,0,7,128,0,1,192,0,0, + 240,0,0,60,0,0,15,0,0,3,128,0,1,224,0,0, + 120,0,0,56,0,0,240,0,3,192,0,15,0,0,28,0, + 0,120,0,1,224,0,7,128,0,14,0,0,60,0,0,240, + 0,0,192,0,0,9,21,42,13,2,1,126,0,71,0,135, + 128,135,128,135,128,135,128,71,0,14,0,12,0,28,0,16, + 0,48,0,34,0,34,0,34,0,28,0,0,0,12,0,30, + 0,30,0,12,0,20,22,66,22,1,0,0,32,0,3,222, + 0,12,3,0,24,0,128,48,0,192,48,112,96,97,207,96, + 99,142,48,199,142,48,199,14,48,199,14,48,207,14,48,207, + 28,48,207,28,32,207,28,96,79,60,64,103,44,128,99,199, + 0,48,0,0,24,0,0,12,2,0,3,252,0,19,21,63, + 22,2,0,0,64,0,0,96,0,0,224,0,0,224,0,0, + 240,0,1,240,0,1,240,0,1,248,0,2,120,0,2,120, + 0,2,124,0,4,60,0,4,60,0,4,62,0,15,254,0, + 8,30,0,8,31,0,16,15,0,16,15,0,48,15,128,254, + 127,224,17,21,63,19,1,0,255,240,0,30,28,0,30,14, + 0,30,15,0,30,15,0,30,15,0,30,15,0,30,14,0, + 30,14,0,30,24,0,31,224,0,30,28,0,30,15,0,30, + 7,0,30,7,128,30,7,128,30,7,128,30,7,128,30,7, + 0,30,14,0,255,248,0,15,21,42,18,2,1,15,230,28, + 30,56,30,56,14,120,14,120,6,248,6,248,6,248,2,248, + 0,248,0,248,0,248,0,248,2,248,2,120,2,120,4,56, + 4,60,12,28,8,15,240,19,21,63,21,1,0,255,248,0, + 30,14,0,30,7,0,30,3,128,30,3,192,30,3,192,30, + 3,192,30,3,224,30,3,224,30,3,224,30,3,224,30,3, + 224,30,3,224,30,3,224,30,3,192,30,3,192,30,3,192, + 30,3,128,30,7,0,30,14,0,255,248,0,16,21,42,19, + 1,0,255,255,30,15,30,7,30,3,30,3,30,1,30,17, + 30,16,30,48,30,48,31,240,30,48,30,48,30,17,30,17, + 30,1,30,1,30,3,30,7,30,15,255,255,17,21,63,19, + 1,0,255,255,128,30,15,128,30,7,128,30,3,128,30,1, + 128,30,1,128,30,17,128,30,17,128,30,48,0,30,48,0, + 31,240,0,30,48,0,30,48,0,30,16,0,30,16,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,255,192, + 0,17,22,66,20,2,0,0,128,0,7,114,0,28,30,0, + 24,14,0,56,6,0,120,6,0,120,6,0,120,2,0,248, + 2,0,248,0,0,248,0,0,248,0,0,248,255,128,248,30, + 0,248,30,0,248,30,0,120,30,0,120,30,0,56,30,0, + 56,22,0,28,34,0,14,194,0,20,21,63,22,1,0,255, + 223,240,30,3,192,30,3,192,30,3,192,30,3,192,30,3, + 192,30,3,192,30,3,192,30,3,192,30,3,192,31,255,192, + 30,3,192,30,3,192,30,3,192,30,3,192,30,3,192,30, + 3,192,30,3,192,30,3,192,30,3,192,255,223,240,9,21, + 42,11,1,0,255,128,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,255,128,13,21, + 42,15,1,0,15,248,1,224,1,224,1,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,224,1,224,1,224,113,224, + 249,224,249,224,249,192,225,192,193,192,65,128,55,0,19,21, + 63,21,1,0,255,159,192,30,7,0,30,6,0,30,12,0, + 30,8,0,30,16,0,30,32,0,30,96,0,30,240,0,31, + 240,0,31,248,0,30,248,0,30,124,0,30,124,0,30,62, + 0,30,30,0,30,31,0,30,15,0,30,15,128,30,15,128, + 255,159,224,17,21,63,19,1,0,255,128,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,1,0, + 30,1,128,30,1,128,30,1,128,30,3,128,30,3,128,30, + 7,128,30,15,128,255,255,128,23,21,63,25,1,0,254,0, + 254,30,0,240,31,1,240,31,1,240,31,1,240,31,129,240, + 23,130,240,23,194,240,23,194,240,19,196,240,19,228,240,17, + 228,240,17,228,240,17,248,240,16,248,240,16,248,240,16,248, + 240,16,112,240,16,112,240,56,48,240,254,35,254,21,21,63, + 22,1,0,254,15,248,31,1,192,31,0,128,15,128,128,15, + 192,128,15,192,128,11,224,128,11,240,128,9,248,128,8,248, + 128,8,252,128,8,126,128,8,62,128,8,31,128,8,31,128, + 8,15,128,8,7,128,8,7,128,8,3,128,28,1,128,255, + 129,128,17,22,66,20,2,0,0,128,0,7,112,0,12,24, + 0,24,12,0,56,14,0,120,14,0,120,15,0,120,15,0, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,120,15,0,120,15,0,120,15,0,56,14, + 0,24,12,0,12,24,0,7,112,0,17,21,63,19,1,0, + 255,248,0,30,14,0,30,7,0,30,7,128,30,7,128,30, + 7,128,30,7,128,30,7,128,30,15,0,30,14,0,31,248, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,255,192,0,17, + 29,87,20,2,249,0,128,0,7,112,0,12,24,0,24,12, + 0,56,14,0,120,14,0,120,15,0,120,15,0,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,120,15,0,120,15,0,121,142,0,58,78,0,30,124, + 0,30,120,128,6,112,128,1,224,128,0,96,128,0,113,128, + 0,127,128,0,127,0,0,63,0,0,30,0,19,21,63,21, + 1,0,255,240,0,30,28,0,30,14,0,30,15,0,30,15, + 0,30,15,0,30,15,0,30,14,0,30,28,0,31,224,0, + 30,48,0,30,28,0,30,28,0,30,28,0,30,30,0,30, + 30,0,30,30,32,30,30,32,30,30,32,30,14,64,255,207, + 192,13,22,44,17,3,0,4,0,59,144,64,240,192,112,192, + 112,224,48,240,48,248,16,254,16,127,0,63,128,31,224,15, + 240,131,240,129,248,128,120,192,56,192,24,224,24,224,16,240, + 48,159,192,17,21,63,20,2,0,255,255,128,227,207,128,195, + 199,128,195,195,128,131,195,128,131,193,128,131,193,128,3,193, + 128,3,192,128,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,31,248,0,19,21,63,22,2,0,255,15, + 224,60,3,128,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,60,1,0,60,1,0,60,1,0,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,28,1,0,28,2,0,14,4,0,7,248,0,20,21,63, + 22,1,0,255,207,240,30,1,128,31,1,0,31,1,0,15, + 1,0,15,130,0,15,130,0,7,130,0,7,196,0,7,196, + 0,3,196,0,3,232,0,3,232,0,1,232,0,1,248,0, + 0,240,0,0,240,0,0,240,0,0,96,0,0,96,0,0, + 96,0,28,21,84,31,2,0,255,191,231,240,62,15,129,192, + 30,7,129,128,30,7,129,128,31,7,193,0,15,7,193,0, + 15,7,193,0,15,143,226,0,7,137,226,0,7,137,226,0, + 7,201,246,0,3,208,244,0,3,208,244,0,3,240,252,0, + 1,240,124,0,1,224,120,0,1,224,120,0,0,224,56,0, + 0,192,48,0,0,192,48,0,0,64,16,0,19,21,63,20, + 1,0,255,159,192,63,6,0,31,6,0,15,4,0,15,136, + 0,7,152,0,7,208,0,3,240,0,3,224,0,1,240,0, + 1,240,0,0,248,0,1,248,0,3,124,0,2,124,0,6, + 62,0,4,62,0,8,30,0,24,31,0,24,31,128,254,63, + 224,18,21,63,21,2,0,255,31,192,62,7,0,30,6,0, + 30,4,0,31,4,0,15,4,0,15,136,0,7,136,0,7, + 144,0,7,208,0,3,240,0,3,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,7,248,0,15,21,42,19,2,0,127,254,120,62, + 112,124,96,124,96,248,64,248,65,240,1,240,3,224,3,224, + 7,192,7,128,15,128,31,2,31,2,62,2,62,6,124,6, + 124,14,248,30,255,254,7,26,26,11,2,251,254,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,254,10,27,54,13,1,250,192,0,96,0, + 96,0,96,0,32,0,48,0,48,0,48,0,24,0,24,0, + 24,0,12,0,12,0,12,0,4,0,6,0,6,0,6,0, + 3,0,3,0,3,0,1,128,1,128,1,128,0,128,0,192, + 0,192,7,26,26,11,2,251,254,30,30,30,30,30,30,30, + 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30, + 30,254,12,10,20,16,2,12,6,0,7,0,15,0,29,128, + 25,128,48,192,48,224,96,96,224,48,192,48,15,2,4,15, + 0,251,255,254,255,254,5,5,5,12,2,16,192,224,112,48, + 24,12,14,28,14,1,0,30,0,99,128,99,192,243,192,115, + 192,35,192,15,192,51,192,115,192,243,192,243,208,243,208,243, + 208,125,224,13,21,42,14,0,0,252,0,60,0,60,0,60, + 0,60,0,60,0,60,0,61,192,62,96,60,112,60,112,60, + 120,60,120,60,120,60,120,60,120,60,120,60,112,52,112,38, + 96,35,192,10,14,28,13,1,0,15,0,56,128,112,192,113, + 192,243,192,243,128,240,0,240,0,240,0,240,0,112,64,112, + 64,56,128,15,0,13,21,42,15,1,0,3,224,1,224,1, + 224,1,224,1,224,1,224,1,224,29,224,51,224,113,224,113, + 224,241,224,241,224,241,224,241,224,241,224,241,224,113,224,113, + 224,51,224,29,248,11,14,28,13,1,0,15,0,51,128,113, + 192,113,192,241,192,241,224,255,224,240,0,240,0,240,32,112, + 64,112,64,56,128,15,0,11,21,42,10,1,0,7,128,12, + 192,28,192,61,224,61,192,60,0,60,0,254,0,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,254,0,14,21,42,16,1,249,15,24,57, + 236,121,252,121,248,121,224,121,224,57,192,57,192,15,0,112, + 0,192,0,255,0,255,224,127,240,63,248,64,56,128,24,128, + 16,128,48,96,96,31,128,14,21,42,16,1,0,252,0,60, + 0,60,0,60,0,60,0,60,0,60,0,61,224,62,112,60, + 112,60,120,60,120,60,120,60,120,60,120,60,120,60,120,60, + 120,60,120,60,120,254,252,6,21,21,8,1,0,48,120,120, + 48,0,0,0,248,120,120,120,120,120,120,120,120,120,120,120, + 120,252,8,28,28,8,255,249,6,15,15,6,0,0,0,31, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,79,255, + 239,238,206,56,14,21,42,16,1,0,252,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,248,60,96,60,64,60,128, + 60,128,61,128,63,128,63,192,61,224,60,224,60,240,60,112, + 60,120,254,252,8,21,21,9,1,0,252,60,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,255,20, + 14,42,23,2,0,249,199,128,126,233,192,120,241,192,120,241, + 224,120,241,224,120,241,224,120,241,224,120,241,224,120,241,224, + 120,241,224,120,241,224,120,241,224,120,241,224,253,251,240,13, + 14,28,16,2,0,251,192,124,224,120,224,120,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,253, + 248,12,14,28,14,1,0,15,0,49,128,112,192,112,224,240, + 224,240,224,240,240,240,240,240,224,240,224,112,224,112,192,49, + 128,15,0,13,21,42,15,1,249,253,192,62,96,60,112,60, + 112,60,120,60,120,60,120,60,120,60,120,60,120,60,112,60, + 112,62,96,61,192,60,0,60,0,60,0,60,0,60,0,60, + 0,254,0,13,21,42,14,1,249,30,32,51,32,113,96,113, + 224,241,224,241,224,241,224,241,224,241,224,241,224,113,224,113, + 224,51,224,29,224,1,224,1,224,1,224,1,224,1,224,1, + 224,3,248,10,14,28,12,2,0,251,128,125,128,123,192,123, + 128,121,128,120,0,120,0,120,0,120,0,120,0,120,0,120, + 0,120,0,252,0,10,14,28,13,2,0,60,128,67,128,193, + 128,193,128,224,128,248,0,126,0,63,128,143,128,131,192,192, + 192,224,192,240,128,143,0,9,20,40,10,0,0,8,0,8, + 0,8,0,24,0,24,0,56,0,255,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,128,56,128,56,128,56,128,57, + 128,57,0,14,0,14,14,28,15,0,0,253,248,60,120,60, + 120,60,120,60,120,60,120,60,120,60,120,60,120,60,120,60, + 120,60,248,29,120,14,124,13,14,28,15,1,0,252,248,120, + 32,56,32,60,32,28,64,28,64,30,64,14,128,14,128,15, + 0,7,0,7,0,6,0,2,0,20,14,42,22,1,0,253, + 253,240,120,120,64,56,120,64,60,56,64,28,120,128,28,124, + 128,30,92,128,14,157,0,14,159,0,15,143,0,7,14,0, + 7,14,0,6,6,0,2,4,0,13,14,28,15,1,0,254, + 248,60,96,60,64,30,128,30,128,15,0,7,0,7,128,7, + 192,11,192,9,224,16,224,48,240,253,248,13,21,42,15,1, + 249,252,248,120,32,56,32,60,64,28,64,28,64,30,64,14, + 128,15,128,7,128,7,128,7,0,3,0,3,0,2,0,2, + 0,50,0,122,0,116,0,116,0,56,0,11,14,28,13,1, + 0,127,224,97,224,67,192,67,128,71,128,15,0,15,0,30, + 0,30,32,60,32,56,32,120,96,240,224,255,224,9,27,54, + 12,1,250,0,128,7,0,14,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,28,0,28,0,56,0,224,0,56, + 0,28,0,28,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,14,0,7,0,0,128,2,27,27,8,3,250,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,9,27,54,13,2,250, + 192,0,56,0,28,0,28,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,14,0,1,128,14,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,28,0, + 28,0,56,0,192,0,16,6,12,18,1,5,124,2,127,1, + 143,193,131,241,128,254,64,62,255}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--34-340-72-72-P-184-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 26, '1' Height: 25 + Calculated Max Values w=34 h=33 x= 6 y=20 dx=36 dy= 0 ascent=34 len=125 + Font Bounding box w=95 h=44 x=-29 y=-10 + Calculated Min Values x=-2 y=-10 dx= 0 dy= 0 + Pure Font ascent =26 descent=-8 + X Font ascent =26 descent=-8 + Max Font ascent =34 descent=-10 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb26[12640] U8G_SECTION(".progmem.u8g_font_osb26") = { + 0,95,44,227,246,26,7,105,16,163,32,255,248,34,246,26, + 248,0,0,0,10,0,0,6,25,25,10,2,1,120,252,252, + 252,252,252,120,120,120,120,48,48,48,48,48,48,48,0,0, + 0,120,252,252,252,120,8,8,8,12,2,18,231,231,231,231, + 231,231,66,66,20,25,75,24,2,0,3,131,0,3,131,0, + 3,3,0,3,3,0,3,3,0,3,7,0,3,7,0,255, + 255,240,255,255,240,6,6,0,6,6,0,6,6,0,6,14, + 0,6,14,0,14,12,0,12,12,0,12,12,0,255,255,224, + 255,255,224,12,28,0,12,24,0,28,24,0,24,24,0,24, + 24,0,24,24,0,16,31,62,20,2,253,2,32,2,32,2, + 32,15,248,26,38,50,34,114,35,114,35,114,47,122,47,126, + 46,126,46,63,160,63,224,31,240,15,248,7,252,3,254,2, + 126,114,63,250,47,250,47,242,39,226,39,194,38,98,38,50, + 44,30,56,3,224,2,32,2,32,23,26,78,29,3,0,8, + 0,48,54,0,32,99,0,96,99,0,192,227,128,192,227,129, + 128,227,129,0,227,131,0,227,130,0,227,134,0,99,12,0, + 54,8,0,28,24,0,0,16,112,0,48,216,0,97,140,0, + 97,140,0,195,142,0,131,142,1,131,142,1,3,142,3,3, + 142,6,3,142,4,1,140,12,1,140,8,0,248,24,25,75, + 26,1,1,1,252,0,3,4,0,3,2,0,7,2,0,7, + 2,0,7,6,0,7,132,0,7,200,0,3,240,0,3,224, + 0,1,240,0,3,240,127,6,248,28,12,124,8,24,60,24, + 56,62,16,112,31,16,240,15,32,240,15,224,248,7,192,248, + 3,192,252,3,225,126,7,242,127,253,254,31,240,124,3,8, + 8,7,2,18,224,224,224,224,224,224,64,64,10,31,62,12, + 2,250,0,192,1,0,2,0,6,0,12,0,24,0,56,0, + 56,0,120,0,112,0,112,0,240,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,112,0,112,0,112,0, + 56,0,56,0,24,0,28,0,12,0,6,0,3,0,1,128, + 9,32,64,12,1,250,192,0,96,0,48,0,24,0,28,0, + 12,0,14,0,6,0,7,0,7,0,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,0,7,0,7,0,14,0,14,0,12,0,24,0,48,0, + 96,0,192,0,128,0,12,14,28,17,3,11,14,0,14,0, + 14,0,196,112,228,240,245,224,14,0,14,0,245,224,228,240, + 196,112,14,0,14,0,14,0,29,30,120,31,1,251,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,255,255,255,248,255,255,255,248,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,7,11,11,10,2,249,120,252,254,254, + 126,6,4,12,8,48,224,9,4,8,13,2,7,255,128,255, + 128,255,128,255,128,5,5,5,9,2,0,112,248,248,248,112, + 12,33,66,15,2,249,0,112,0,96,0,96,0,224,0,192, + 0,192,1,192,1,192,1,128,1,128,3,128,3,0,3,0, + 7,0,6,0,6,0,6,0,14,0,12,0,12,0,28,0, + 24,0,24,0,56,0,56,0,48,0,48,0,112,0,96,0, + 96,0,224,0,192,0,192,0,16,25,50,20,2,1,7,224, + 14,112,28,56,60,60,60,60,124,62,124,62,124,62,252,63, + 252,63,252,63,252,63,252,63,252,63,252,63,252,63,252,63, + 124,62,124,62,124,62,60,60,60,60,28,56,14,112,7,224, + 12,25,50,20,4,0,7,0,7,0,31,0,255,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,255,240,15,25,50,20,2,1,31,240, + 48,120,96,60,96,62,224,62,240,62,248,62,252,62,124,124, + 56,124,0,248,1,240,1,224,3,128,7,0,12,2,24,2, + 48,2,32,2,76,6,127,254,127,252,71,252,67,252,65,248, + 15,26,52,20,2,0,1,0,14,240,56,120,48,60,112,62, + 120,62,124,62,124,62,60,62,24,60,0,120,0,112,31,192, + 0,240,0,120,0,60,0,60,56,62,124,62,252,62,252,62, + 248,62,224,60,96,124,96,120,31,224,16,25,50,20,2,0, + 0,120,0,120,0,248,1,248,1,248,3,248,3,248,6,248, + 6,248,12,248,12,248,24,248,56,248,48,248,96,248,96,248, + 192,248,255,255,0,248,0,248,0,248,0,248,0,248,0,248, + 15,255,15,26,52,20,3,0,0,8,48,56,63,240,63,224, + 63,128,62,0,32,0,32,0,32,0,32,0,39,192,56,112, + 48,120,32,60,32,60,0,62,0,62,56,62,120,62,252,62, + 248,62,248,60,224,60,96,120,112,112,31,224,16,25,50,20, + 2,1,7,240,12,8,28,12,56,60,56,124,120,124,120,120, + 120,48,248,0,248,0,251,224,252,56,252,60,248,30,248,31, + 248,31,248,31,248,31,120,31,120,31,120,31,56,30,28,30, + 12,60,7,240,15,25,50,20,3,0,79,28,95,156,127,198, + 127,230,127,254,224,246,192,4,192,12,128,12,128,24,0,16, + 0,48,0,96,0,224,1,192,1,192,3,192,7,128,7,128, + 15,128,15,128,15,128,15,128,15,128,7,0,17,25,75,20, + 2,1,7,240,0,24,12,0,48,12,0,48,6,0,112,6, + 0,112,6,0,120,6,0,124,4,0,127,12,0,127,152,0, + 63,224,0,31,248,0,15,252,0,15,254,0,49,255,0,96, + 127,0,64,31,0,192,15,128,192,7,0,192,7,0,192,3, + 0,96,6,0,96,6,0,56,12,0,14,240,0,15,25,50, + 20,2,1,31,192,60,112,120,48,120,56,248,60,248,60,248, + 60,248,62,248,62,248,62,248,62,120,62,124,126,60,126,15, + 190,0,62,0,62,12,60,30,60,62,60,62,56,60,56,48, + 112,16,96,15,192,5,17,17,9,2,0,112,248,248,248,112, + 0,0,0,0,0,0,0,112,248,248,248,112,6,23,23,9, + 2,249,112,248,248,248,112,0,0,0,0,0,0,0,112,248, + 252,252,252,12,12,8,16,48,192,26,29,116,32,3,251,0, + 0,1,192,0,0,3,192,0,0,15,0,0,0,62,0,0, + 0,248,0,0,1,224,0,0,7,128,0,0,31,0,0,0, + 124,0,0,0,240,0,0,3,192,0,0,15,128,0,0,62, + 0,0,0,120,0,0,0,224,0,0,0,120,0,0,0,62, + 0,0,0,15,128,0,0,3,192,0,0,0,240,0,0,0, + 124,0,0,0,31,0,0,0,7,128,0,0,1,224,0,0, + 0,248,0,0,0,62,0,0,0,15,0,0,0,3,192,0, + 0,1,192,29,9,36,33,2,5,255,255,255,248,255,255,255, + 248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,255,255,255,248,255,255,255,248,26,29,116, + 32,3,251,224,0,0,0,240,0,0,0,60,0,0,0,31, + 0,0,0,7,192,0,0,1,224,0,0,0,120,0,0,0, + 62,0,0,0,15,128,0,0,3,192,0,0,0,240,0,0, + 0,124,0,0,0,31,0,0,0,7,128,0,0,1,192,0, + 0,7,128,0,0,31,0,0,0,124,0,0,0,240,0,0, + 3,192,0,0,15,128,0,0,62,0,0,0,120,0,0,1, + 224,0,0,7,192,0,0,31,0,0,0,60,0,0,0,240, + 0,0,0,224,0,0,0,11,25,50,16,2,1,63,128,67, + 192,129,224,129,224,129,224,131,224,195,192,67,192,3,128,7, + 0,6,0,12,0,8,0,24,0,17,0,17,0,17,0,14, + 0,0,0,0,0,14,0,31,0,31,0,31,0,14,0,25, + 25,100,27,1,1,0,255,192,0,3,0,48,0,6,0,24, + 0,12,0,12,0,24,0,6,0,48,30,243,0,48,114,243, + 0,96,225,227,0,97,225,225,128,227,193,225,128,195,193,225, + 128,195,193,193,128,199,131,193,128,199,131,193,128,199,131,195, + 0,199,131,195,0,231,135,130,0,103,135,134,0,99,139,204, + 0,49,240,240,0,48,0,0,0,24,0,0,0,12,0,0, + 0,7,0,96,0,1,255,192,0,23,26,78,25,1,0,0, + 16,0,0,24,0,0,56,0,0,56,0,0,60,0,0,124, + 0,0,124,0,0,126,0,0,254,0,0,254,0,0,158,0, + 1,159,0,1,159,0,1,31,0,3,15,128,3,15,128,3, + 15,128,6,7,192,7,255,192,6,7,192,4,7,224,12,3, + 224,12,3,224,28,3,240,28,3,240,255,159,254,20,25,75, + 24,2,0,255,254,0,31,7,128,31,7,192,31,3,192,31, + 3,224,31,3,224,31,3,224,31,3,224,31,3,192,31,7, + 128,31,7,0,31,248,0,31,7,0,31,3,192,31,1,224, + 31,1,224,31,1,240,31,1,240,31,1,240,31,1,240,31, + 1,240,31,1,224,31,3,192,31,7,128,255,254,0,19,25, + 75,22,2,1,3,248,64,14,6,192,30,3,192,60,3,192, + 60,1,192,124,1,192,124,0,192,124,0,192,252,0,192,252, + 0,64,252,0,64,252,0,0,252,0,0,252,0,0,252,0, + 0,252,0,0,252,0,96,124,0,64,124,0,64,124,0,64, + 60,0,192,30,0,128,30,1,0,15,3,0,3,252,0,23, + 25,75,27,2,0,255,255,0,31,3,192,31,0,224,31,0, + 240,31,0,120,31,0,120,31,0,124,31,0,124,31,0,126, + 31,0,126,31,0,126,31,0,126,31,0,126,31,0,126,31, + 0,126,31,0,126,31,0,124,31,0,124,31,0,124,31,0, + 120,31,0,120,31,0,240,31,0,224,31,3,192,255,255,0, + 20,25,75,23,2,0,255,255,224,31,1,224,31,0,224,31, + 0,224,31,0,96,31,0,96,31,0,32,31,4,32,31,4, + 0,31,12,0,31,12,0,31,28,0,31,252,0,31,28,0, + 31,12,0,31,12,48,31,4,48,31,4,48,31,0,48,31, + 0,112,31,0,112,31,0,240,31,1,240,31,3,240,255,255, + 240,20,25,75,23,2,0,255,255,240,31,3,240,31,0,240, + 31,0,240,31,0,112,31,0,112,31,0,48,31,4,48,31, + 4,48,31,12,48,31,12,0,31,28,0,31,252,0,31,28, + 0,31,12,0,31,12,0,31,4,0,31,4,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,255, + 240,0,21,26,78,24,2,0,0,32,0,3,220,32,7,3, + 96,14,1,224,28,1,224,60,0,224,60,0,224,124,0,96, + 124,0,96,252,0,32,252,0,32,252,0,0,252,0,0,252, + 63,248,252,3,224,252,3,224,252,3,224,252,3,224,124,3, + 224,124,3,224,124,3,224,60,3,224,60,3,96,30,6,96, + 14,12,96,3,184,32,25,25,100,28,2,0,255,231,255,128, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,255,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,255,231,255,128, + 11,25,50,14,2,0,255,224,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,255,224,16,25,50,18,1,0,7,255, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,120,248, + 248,248,248,248,248,248,240,248,224,240,64,240,97,224,63,192, + 24,25,75,27,2,0,255,227,252,31,0,224,31,0,192,31, + 0,128,31,1,128,31,3,0,31,6,0,31,12,0,31,28, + 0,31,28,0,31,62,0,31,126,0,31,255,0,31,191,0, + 31,31,128,31,31,128,31,15,192,31,15,192,31,7,224,31, + 7,224,31,3,240,31,1,240,31,1,248,31,1,252,255,231, + 255,20,25,75,23,2,0,255,224,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,48,31,0,48,31,0,48,31,0,48,31,0,112, + 31,0,112,31,0,240,31,0,240,31,1,240,31,3,240,255, + 255,240,27,25,100,30,2,0,255,0,63,224,15,0,63,0, + 15,128,63,0,15,128,63,0,15,128,127,0,15,192,95,0, + 15,192,95,0,11,224,95,0,11,224,223,0,11,224,159,0, + 9,240,159,0,9,240,159,0,9,241,31,0,8,249,31,0, + 8,249,31,0,8,249,31,0,8,126,31,0,8,126,31,0, + 8,62,31,0,8,62,31,0,8,60,31,0,8,28,31,0, + 24,28,31,0,60,28,31,0,255,8,255,224,24,25,75,27, + 2,0,255,3,255,31,128,124,31,128,56,15,192,16,7,224, + 16,7,240,16,7,240,16,5,248,16,5,252,16,4,252,16, + 4,126,16,4,127,16,4,63,16,4,31,144,4,31,208,4, + 15,208,4,7,240,4,7,240,4,3,240,4,1,240,4,1, + 240,4,0,240,14,0,112,31,0,48,255,192,48,20,25,75, + 24,2,1,3,252,0,6,6,0,14,7,0,28,3,128,60, + 3,192,60,3,192,124,3,224,124,3,224,124,3,224,252,3, + 240,252,3,240,252,3,240,252,3,240,252,3,240,252,3,240, + 252,3,240,124,3,224,124,3,224,124,3,224,60,3,192,60, + 3,192,28,3,128,14,7,0,6,6,0,3,252,0,20,25, + 75,24,2,0,255,254,0,31,3,128,31,3,192,31,1,224, + 31,1,240,31,1,240,31,1,240,31,1,240,31,1,240,31, + 1,224,31,3,192,31,7,128,31,254,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,255,240,0,20, + 33,99,24,2,249,3,252,0,6,6,0,14,7,0,28,3, + 128,60,3,192,60,3,192,124,3,224,124,3,224,124,3,224, + 252,3,240,252,3,240,252,3,240,252,3,240,252,3,240,252, + 3,240,252,3,240,124,3,240,124,3,224,124,3,224,60,243, + 192,61,155,192,29,11,128,15,15,128,7,15,16,3,156,16, + 0,108,16,0,12,16,0,12,48,0,14,48,0,15,240,0, + 15,224,0,7,224,0,3,128,22,25,75,25,2,0,255,252, + 0,31,7,128,31,7,192,31,3,192,31,3,224,31,3,224, + 31,3,224,31,3,224,31,3,192,31,7,192,31,15,0,31, + 248,0,31,14,0,31,15,0,31,7,128,31,7,192,31,7, + 192,31,7,192,31,7,192,31,7,196,31,7,196,31,7,196, + 31,7,196,31,3,200,255,241,248,16,25,50,21,3,1,31, + 198,32,118,96,62,224,30,224,14,240,6,248,6,252,6,255, + 2,127,128,127,192,63,240,15,248,7,252,129,254,128,254,192, + 127,192,31,192,15,224,7,224,7,240,6,248,6,220,12,135, + 120,21,25,75,25,3,0,255,255,248,248,248,248,240,248,120, + 224,248,120,192,248,56,192,248,56,128,248,24,128,248,24,128, + 248,24,128,248,24,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,15, + 255,0,23,25,75,26,2,0,255,225,254,31,0,120,31,0, + 48,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,16,15,0,32,15,0,32,7,128,64,3,192,192, + 1,255,0,24,25,75,27,2,0,255,241,255,31,128,56,15, + 128,48,15,192,48,15,192,48,7,192,32,7,224,32,7,224, + 96,3,224,64,3,240,64,1,240,192,1,240,128,1,248,128, + 0,249,128,0,249,128,0,253,0,0,125,0,0,127,0,0, + 126,0,0,62,0,0,62,0,0,60,0,0,28,0,0,28, + 0,0,24,0,34,25,125,36,1,0,255,231,255,127,192,31, + 129,248,14,0,15,128,248,14,0,15,128,252,12,0,15,192, + 124,12,0,7,192,124,12,0,7,192,124,8,0,7,224,254, + 24,0,3,224,190,24,0,3,224,190,24,0,3,241,159,16, + 0,1,241,159,48,0,1,241,31,48,0,1,249,15,32,0, + 1,251,15,160,0,0,250,15,224,0,0,254,15,224,0,0, + 254,7,192,0,0,126,7,192,0,0,124,7,192,0,0,124, + 3,192,0,0,60,3,128,0,0,56,3,128,0,0,56,1, + 128,0,0,24,1,128,0,23,25,75,26,2,0,255,231,252, + 31,193,224,15,192,192,15,193,128,7,225,128,7,227,0,3, + 242,0,3,246,0,1,244,0,1,248,0,0,248,0,0,252, + 0,0,124,0,0,62,0,0,126,0,0,127,0,0,159,0, + 1,159,128,1,15,128,3,15,192,6,7,224,4,7,224,12, + 3,240,28,7,240,255,143,254,23,25,75,26,2,0,255,225, + 254,31,128,112,31,128,96,15,128,96,15,192,64,7,192,192, + 7,224,192,7,224,128,3,225,128,3,241,0,1,241,0,1, + 251,0,0,250,0,0,254,0,0,252,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,0,124,0,3,255,128,18,25,75,22,2,0,127, + 255,192,124,15,192,120,31,128,112,31,128,96,63,0,96,63, + 0,64,126,0,64,126,0,64,252,0,0,252,0,1,248,0, + 1,240,0,3,240,0,7,224,0,7,224,0,15,192,64,15, + 192,64,31,128,64,31,128,64,63,0,192,63,1,192,126,1, + 192,126,3,192,252,15,192,255,255,192,8,31,31,14,3,250, + 255,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,255,11, + 33,66,15,2,249,192,0,192,0,224,0,96,0,96,0,96, + 0,112,0,48,0,48,0,56,0,24,0,24,0,28,0,12, + 0,12,0,12,0,14,0,6,0,6,0,7,0,3,0,3, + 0,3,0,3,128,1,128,1,128,1,192,0,192,0,192,0, + 224,0,96,0,96,0,96,8,31,31,13,2,250,255,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,15,15,15,15,255,16,12,24,20, + 2,14,1,128,3,128,3,192,7,224,14,96,14,112,28,56, + 24,56,56,28,112,12,96,14,224,7,18,2,6,18,0,250, + 255,255,192,255,255,192,6,7,7,15,3,18,224,224,240,120, + 24,12,4,15,17,34,18,2,0,15,128,49,224,96,240,112, + 240,120,240,120,240,32,240,7,240,28,240,56,240,120,240,240, + 240,240,242,240,242,240,242,121,252,62,120,15,25,50,18,1, + 0,252,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,240,61,56,62,60,62,28,62,30,62,30,60,30,60, + 30,60,30,60,30,60,30,62,30,62,30,62,28,50,60,35, + 56,33,224,13,17,34,16,2,0,7,128,28,96,56,32,120, + 112,120,240,248,240,240,224,240,64,240,0,240,0,240,0,240, + 8,120,16,120,16,56,16,28,32,7,192,17,25,75,20,2, + 0,1,252,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,15,60,0,28,188,0,56, + 124,0,120,124,0,120,60,0,240,60,0,240,60,0,240,60, + 0,240,60,0,240,60,0,240,60,0,240,60,0,120,60,0, + 120,124,0,56,124,0,28,188,0,15,63,128,13,17,34,17, + 2,0,7,128,24,224,56,240,120,240,120,240,240,120,240,120, + 240,120,255,248,240,0,240,0,240,8,120,8,120,24,56,16, + 28,32,7,192,12,25,50,12,1,0,3,192,14,112,30,112, + 28,240,60,240,60,240,60,0,60,0,255,128,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,255,128,17,25,75,19, + 1,248,7,199,0,28,249,128,60,115,128,120,123,128,120,123, + 0,120,120,0,120,120,0,120,120,0,60,112,0,28,224,0, + 7,192,0,56,0,0,96,0,0,127,192,0,127,248,0,127, + 252,0,63,254,0,63,254,0,64,14,0,128,6,0,128,6, + 0,128,4,0,64,12,0,32,56,0,31,224,0,17,25,75, + 19,1,0,252,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,120,0,61,188, + 0,61,28,0,62,30,0,62,30,0,62,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,255,127,128,8,25, + 25,11,2,0,56,124,124,124,56,0,0,0,252,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,255,10,33,66, + 10,254,248,3,128,7,192,7,192,7,192,3,128,0,0,0, + 0,0,0,31,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,99,192,243,192,243,192,243,128,231, + 128,103,0,62,0,17,25,75,19,1,0,252,0,0,60,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,127,0,60,24,0,60,16,0,60,48,0,60, + 32,0,60,64,0,60,192,0,60,224,0,61,224,0,62,240, + 0,62,240,0,60,120,0,60,124,0,60,60,0,60,62,0, + 60,62,0,255,127,128,9,25,50,11,1,0,252,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,255,128,25,17, + 68,28,1,0,252,120,120,0,61,188,158,0,61,31,30,0, + 62,31,30,0,62,30,31,0,62,30,31,0,60,30,31,0, + 60,30,31,0,60,30,31,0,60,30,31,0,60,30,31,0, + 60,30,31,0,60,30,31,0,60,30,31,0,60,30,31,0, + 60,30,31,0,255,127,191,128,17,17,51,19,1,0,252,120, + 0,61,188,0,61,28,0,62,30,0,62,30,0,62,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,255,127, + 128,14,17,34,18,2,0,7,128,28,224,56,112,120,120,120, + 120,240,60,240,60,240,60,240,60,240,60,240,60,240,60,120, + 120,120,120,56,112,24,224,7,128,15,25,50,18,1,248,252, + 240,61,56,62,60,62,28,62,30,62,30,60,30,60,30,60, + 30,60,30,60,30,62,30,62,30,62,28,62,60,61,56,60, + 240,60,0,60,0,60,0,60,0,60,0,60,0,60,0,255, + 128,16,25,50,19,2,248,15,132,28,196,56,100,120,124,120, + 60,240,60,240,60,240,60,240,60,240,60,240,60,240,60,120, + 124,120,124,56,124,28,188,15,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,1,255,12,17,34,14,1,0,252, + 224,61,112,62,240,62,240,62,240,62,96,60,0,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,255, + 0,11,17,34,14,2,0,60,64,99,64,193,192,192,192,224, + 192,240,64,252,0,127,0,63,128,31,192,135,224,129,224,192, + 224,224,96,224,96,144,192,143,128,11,24,48,13,1,0,12, + 0,12,0,12,0,12,0,12,0,28,0,60,0,255,192,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 32,60,32,60,32,60,32,60,96,60,64,31,192,15,128,17, + 17,51,19,1,0,252,126,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,62,0,60,62,0,60,62,0,60, + 94,0,30,158,0,15,31,128,17,17,51,18,0,0,255,159, + 128,30,6,0,30,4,0,30,4,0,15,12,0,15,8,0, + 15,8,0,7,152,0,7,144,0,3,208,0,3,240,0,3, + 224,0,1,224,0,1,192,0,1,192,0,0,192,0,0,128, + 0,25,17,68,26,0,0,255,63,207,128,30,15,6,0,30, + 15,6,0,30,15,4,0,15,7,132,0,15,15,132,0,7, + 143,136,0,7,139,200,0,7,147,200,0,3,211,208,0,3, + 209,240,0,3,225,240,0,1,225,224,0,1,224,224,0,1, + 192,224,0,0,192,192,0,0,192,64,0,16,17,34,18,1, + 0,255,126,62,24,30,16,31,16,15,32,15,192,7,192,3, + 192,3,192,1,224,3,240,2,240,4,248,8,120,8,124,24, + 126,254,127,17,25,75,18,0,248,255,159,128,62,6,0,30, + 4,0,31,4,0,15,8,0,15,8,0,15,136,0,7,136, + 0,7,144,0,3,208,0,3,208,0,3,224,0,1,224,0, + 1,224,0,0,224,0,0,192,0,0,64,0,0,64,0,0, + 128,0,28,128,0,60,128,0,60,128,0,57,0,0,59,0, + 0,30,0,0,13,17,34,16,1,0,127,248,112,248,96,240, + 97,224,67,224,67,192,7,192,7,128,15,128,15,0,31,8, + 30,8,60,24,124,24,120,56,248,120,255,248,11,33,66,15, + 2,249,0,32,3,192,7,0,15,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 56,0,224,0,56,0,28,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,14,0,7,0, + 3,192,0,32,2,32,32,10,4,249,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,11,33,66,15,3,249, + 128,0,240,0,60,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,15,0,7,0, + 1,224,7,0,15,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,60,0,240,0, + 128,0,19,7,21,23,2,6,62,0,64,127,128,32,255,240, + 32,135,252,32,129,255,224,128,63,192,64,15,128,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0, + 0,10,0,0,6,26,26,10,2,248,120,252,252,252,120,0, + 0,0,32,48,48,48,48,48,48,120,120,120,120,252,252,252, + 252,252,252,120,13,25,50,19,3,252,1,0,1,0,1,0, + 1,0,15,192,29,32,57,48,121,112,121,112,249,112,241,96, + 241,0,241,0,241,0,241,0,241,8,121,16,121,16,57,16, + 29,32,15,192,1,0,1,0,1,0,1,0,21,26,78,24, + 2,0,0,2,0,0,61,192,0,112,96,0,240,112,1,224, + 112,1,224,240,3,224,240,3,224,224,3,224,0,3,224,0, + 3,224,0,31,224,0,35,225,0,1,254,0,1,240,0,1, + 240,0,0,240,0,0,240,0,0,240,0,0,224,0,0,224, + 8,60,192,16,199,192,48,131,255,224,131,255,192,124,63,128, + 18,17,51,20,1,3,64,0,128,227,241,192,127,255,128,60, + 15,0,56,7,0,48,3,0,112,3,128,96,1,128,96,1, + 128,96,1,128,96,1,128,112,3,128,48,3,0,56,7,0, + 62,31,0,127,255,128,99,241,128,18,25,75,20,1,0,255, + 143,192,63,3,128,63,3,0,31,3,0,31,130,0,15,130, + 0,15,196,0,15,196,0,7,196,0,7,232,0,3,232,0, + 3,248,0,3,240,0,63,255,128,1,240,0,1,240,0,63, + 255,128,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,31,254,0,2,32,32,10,4,250, + 192,192,192,192,192,192,192,192,192,192,192,192,192,0,0,0, + 0,0,0,192,192,192,192,192,192,192,192,192,192,192,192,192, + 15,32,64,22,2,249,7,224,28,24,56,24,48,28,112,124, + 112,124,112,124,120,56,124,0,63,0,31,224,127,240,71,252, + 193,252,192,126,224,30,248,14,254,6,127,134,63,228,31,248, + 7,248,1,248,0,124,60,60,60,28,124,28,124,28,112,24, + 48,56,24,112,15,192,11,4,8,15,2,19,113,192,241,224, + 241,224,113,192,24,25,75,28,2,1,1,255,128,6,0,64, + 12,0,48,24,0,24,48,60,136,32,227,132,65,193,134,65, + 193,130,195,192,130,131,192,131,131,192,129,131,192,1,131,192, + 1,131,192,1,131,192,65,131,192,131,195,192,130,65,192,130, + 65,193,134,32,227,4,48,60,8,16,0,24,12,0,48,6, + 0,64,1,255,128,10,13,26,13,1,12,60,0,70,0,199, + 0,231,0,71,0,63,0,103,0,231,0,231,64,231,64,123, + 128,0,0,255,128,9,15,30,17,4,1,8,0,24,128,48, + 128,97,0,99,0,227,0,227,0,227,0,227,0,227,0,227, + 0,97,0,49,128,48,128,8,0,16,9,18,20,2,5,255, + 255,255,255,0,3,0,3,0,3,0,3,0,3,0,3,0, + 3,9,4,8,13,2,7,255,128,255,128,255,128,255,128,24, + 25,75,28,2,1,1,255,128,6,0,64,12,0,48,24,0, + 24,55,254,8,33,227,132,65,227,198,65,227,194,193,227,194, + 129,227,195,129,231,129,129,252,1,129,231,1,129,227,129,129, + 227,193,129,227,195,193,227,210,65,227,210,65,227,214,33,227, + 212,55,249,232,16,0,24,12,0,48,6,0,64,1,255,128, + 9,2,4,15,3,20,255,128,255,128,11,10,20,19,4,16, + 63,128,123,192,224,192,192,96,192,96,192,96,192,224,97,192, + 63,128,31,0,29,26,104,33,2,254,0,6,0,0,0,6, + 0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6, + 0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6, + 0,0,255,255,255,248,255,255,255,248,0,6,0,0,0,6, + 0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6, + 0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6, + 0,0,0,0,0,0,0,0,0,0,255,255,255,240,255,255, + 255,240,10,16,32,15,3,9,31,0,103,128,195,192,195,192, + 227,192,243,128,7,128,14,0,28,0,48,64,64,64,64,64, + 255,192,255,192,159,128,135,0,11,16,32,15,2,9,31,0, + 35,128,99,192,115,192,115,192,51,128,3,0,28,0,3,128, + 3,192,97,224,241,224,241,224,227,224,99,192,63,0,6,7, + 7,15,6,18,28,28,60,120,96,192,128,17,27,81,20,2, + 246,96,48,0,112,120,0,240,120,0,240,120,0,240,120,0, + 240,120,0,240,120,0,240,120,0,240,120,0,96,56,0,96, + 48,128,96,48,128,96,113,128,32,127,128,48,255,128,95,207, + 0,71,143,0,64,0,0,96,0,0,96,0,0,112,0,0, + 112,0,0,120,0,0,120,0,0,120,0,0,120,0,0,48, + 0,0,17,30,90,20,2,251,15,255,128,63,140,0,127,140, + 0,127,140,0,255,140,0,255,140,0,255,140,0,255,140,0, + 255,140,0,127,140,0,127,140,0,63,140,0,31,140,0,1, + 140,0,1,140,0,1,140,0,1,140,0,1,140,0,1,140, + 0,1,140,0,1,140,0,1,140,0,1,140,0,1,140,0, + 1,140,0,1,140,0,1,140,0,1,140,0,1,140,0,1, + 140,0,5,5,5,9,2,9,112,248,248,248,112,7,7,7, + 15,4,249,32,32,24,14,14,14,252,8,15,15,16,4,10, + 12,28,252,60,60,60,60,60,60,60,60,60,60,60,255,9, + 13,26,13,2,12,28,0,103,0,99,0,227,128,227,128,227, + 128,227,128,227,128,99,0,103,0,28,0,0,0,255,128,9, + 14,28,17,4,2,132,0,198,0,99,0,99,0,115,128,115, + 128,115,128,115,128,115,128,99,128,99,0,195,0,134,0,12, + 0,25,26,104,31,4,0,0,0,48,0,12,0,48,0,28, + 0,96,0,252,0,96,0,60,0,192,0,60,0,128,0,60, + 1,128,0,60,3,0,0,60,3,0,0,60,6,0,0,60, + 6,0,0,60,12,14,0,60,12,30,0,60,24,30,0,60, + 16,62,0,255,48,62,0,0,96,94,0,0,96,158,0,0, + 192,158,0,0,193,30,0,1,131,30,0,1,131,255,128,3, + 0,30,0,2,0,30,0,6,0,30,0,12,0,255,128,25, + 26,104,31,4,0,0,0,48,0,28,0,32,0,252,0,96, + 0,60,0,64,0,60,0,192,0,60,1,128,0,60,1,128, + 0,60,3,0,0,60,3,0,0,60,6,0,0,60,4,62, + 0,60,12,207,0,60,9,135,128,60,25,135,128,60,49,199, + 128,255,49,231,0,0,96,207,0,0,96,28,0,0,192,56, + 0,0,128,96,0,1,128,64,128,3,0,128,128,3,1,255, + 128,6,1,255,128,6,1,63,0,12,1,14,0,26,26,104, + 30,2,0,0,0,24,0,31,0,24,0,35,128,48,0,99, + 192,48,0,115,192,96,0,115,192,64,0,51,128,192,0,3, + 0,128,0,28,1,128,0,3,131,0,0,3,195,0,0,113, + 230,7,0,241,228,15,0,227,236,15,0,99,200,31,0,63, + 24,31,0,0,16,47,0,0,48,79,0,0,96,79,0,0, + 96,143,0,0,192,143,0,0,129,255,192,1,128,15,0,1, + 0,15,0,3,0,15,0,2,0,127,192,11,26,52,16,2, + 248,28,0,62,0,62,0,62,0,28,0,0,0,0,0,30, + 0,49,0,33,0,33,0,1,0,2,0,6,0,14,0,28, + 0,60,0,120,192,120,64,248,32,240,32,240,32,240,32,120, + 64,120,64,31,128,23,33,99,25,1,0,1,128,0,1,192, + 0,0,224,0,0,96,0,0,48,0,0,16,0,0,0,0, + 0,16,0,0,24,0,0,56,0,0,56,0,0,60,0,0, + 124,0,0,124,0,0,126,0,0,254,0,0,254,0,0,158, + 0,1,159,0,1,159,0,1,31,0,3,15,128,3,15,128, + 3,15,128,6,7,192,7,255,192,6,7,192,4,7,224,12, + 3,224,12,3,224,28,3,240,28,3,240,255,159,254,23,33, + 99,25,1,0,0,3,0,0,7,128,0,7,0,0,14,0, + 0,28,0,0,16,0,0,0,0,0,16,0,0,24,0,0, + 56,0,0,56,0,0,60,0,0,124,0,0,124,0,0,126, + 0,0,254,0,0,254,0,0,159,0,1,159,0,1,159,0, + 1,31,128,3,15,128,3,15,128,3,15,128,6,7,192,7, + 255,192,6,7,192,12,7,224,12,3,224,12,3,224,28,3, + 240,60,3,248,255,159,254,23,33,99,25,1,0,0,16,0, + 0,56,0,0,56,0,0,124,0,0,199,0,1,129,128,0, + 0,0,0,16,0,0,24,0,0,56,0,0,56,0,0,60, + 0,0,124,0,0,124,0,0,126,0,0,254,0,0,254,0, + 0,158,0,1,159,0,1,159,0,1,31,0,3,15,128,3, + 15,128,3,15,128,6,7,192,7,255,192,6,7,192,4,7, + 224,12,3,224,12,3,224,28,3,240,28,3,240,255,159,254, + 23,32,96,25,1,0,0,112,128,0,249,0,1,191,0,1, + 14,0,0,0,0,0,0,0,0,0,0,0,24,0,0,56, + 0,0,56,0,0,60,0,0,124,0,0,124,0,0,126,0, + 0,254,0,0,254,0,0,159,0,1,159,0,1,159,0,1, + 31,128,3,15,128,3,15,128,3,15,128,6,7,192,7,255, + 192,6,7,192,12,7,224,12,3,224,12,3,224,28,3,240, + 60,3,248,255,159,254,23,32,96,25,1,0,1,195,128,3, + 199,128,3,199,128,1,195,128,0,0,0,0,0,0,0,24, + 0,0,56,0,0,56,0,0,56,0,0,60,0,0,124,0, + 0,124,0,0,126,0,0,254,0,0,254,0,0,159,0,1, + 159,0,1,159,0,1,15,128,3,15,128,2,15,128,2,15, + 192,6,7,192,7,255,192,4,7,192,4,3,224,8,3,224, + 8,3,224,24,1,240,24,3,240,255,159,254,23,33,99,25, + 1,0,0,60,0,0,126,0,0,195,0,0,195,0,0,199, + 0,0,126,0,0,60,0,0,0,0,0,24,0,0,56,0, + 0,56,0,0,60,0,0,124,0,0,124,0,0,126,0,0, + 254,0,0,254,0,0,159,0,1,159,0,1,159,0,1,15, + 0,3,15,128,3,15,128,2,15,128,2,7,192,7,255,192, + 4,7,192,4,3,224,12,3,224,8,3,224,24,1,240,28, + 1,240,255,159,254,32,25,100,34,1,0,0,15,255,255,0, + 3,240,31,0,7,240,15,0,7,240,7,0,5,240,7,0, + 13,240,3,0,9,240,3,0,25,240,35,0,25,240,32,0, + 49,240,96,0,49,240,96,0,97,240,224,0,97,255,224,0, + 193,240,224,0,193,240,96,1,129,240,96,1,129,240,33,3, + 255,240,33,3,1,240,3,6,1,240,3,6,1,240,7,12, + 1,240,7,12,1,240,15,62,1,240,63,255,143,255,255,19, + 33,99,22,2,249,3,248,192,14,6,192,30,3,192,60,3, + 192,60,1,192,124,1,192,124,0,192,124,0,192,252,0,192, + 252,0,64,252,0,64,252,0,0,252,0,0,252,0,0,252, + 0,0,252,0,0,252,0,96,124,0,64,124,0,64,124,0, + 64,60,0,192,62,0,128,30,1,0,15,2,0,3,156,0, + 0,224,0,0,128,0,0,240,0,0,56,0,0,56,0,0, + 56,0,2,48,0,1,224,0,20,33,99,23,2,0,3,0, + 0,7,128,0,3,128,0,1,192,0,0,224,0,0,32,0, + 0,0,0,0,0,0,255,255,224,31,1,224,31,0,224,31, + 0,224,31,0,96,31,0,96,31,0,32,31,4,32,31,4, + 0,31,12,0,31,12,0,31,28,0,31,252,0,31,28,0, + 31,12,0,31,12,48,31,4,48,31,4,48,31,0,48,31, + 0,112,31,0,112,31,0,240,31,1,240,31,3,240,255,255, + 240,20,33,99,23,2,0,0,6,0,0,14,0,0,30,0, + 0,28,0,0,48,0,0,96,0,0,0,0,0,0,0,255, + 255,224,31,1,224,31,0,224,31,0,224,31,0,96,31,0, + 96,31,0,32,31,4,32,31,4,0,31,12,0,31,12,0, + 31,28,0,31,252,0,31,28,0,31,12,0,31,12,48,31, + 4,48,31,4,48,31,0,48,31,0,112,31,0,112,31,0, + 240,31,0,240,31,3,240,255,255,240,20,33,99,23,2,0, + 0,32,0,0,96,0,0,240,0,1,248,0,3,140,0,6, + 3,0,0,0,0,0,0,0,255,255,224,31,1,224,31,0, + 224,31,0,224,31,0,96,31,0,96,31,0,32,31,4,32, + 31,4,0,31,12,0,31,12,0,31,28,0,31,252,0,31, + 28,0,31,12,0,31,12,48,31,4,48,31,4,48,31,0, + 48,31,0,112,31,0,112,31,0,240,31,1,240,31,3,240, + 255,255,240,20,32,96,23,2,0,7,14,0,7,143,0,7, + 143,0,7,14,0,0,0,0,0,0,0,0,0,0,255,255, + 224,31,1,224,31,0,224,31,0,224,31,0,96,31,0,96, + 31,0,32,31,4,32,31,4,0,31,12,0,31,12,0,31, + 28,0,31,252,0,31,28,0,31,12,0,31,12,48,31,4, + 48,31,4,48,31,0,48,31,0,112,31,0,112,31,0,240, + 31,0,240,31,3,240,255,255,240,11,33,66,14,2,0,96, + 0,112,0,120,0,56,0,28,0,4,0,0,0,0,0,255, + 224,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,255, + 224,11,33,66,14,2,0,0,192,1,192,3,192,3,128,7, + 0,4,0,0,0,0,0,255,224,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,255,224,11,33,66,14,2,0,4, + 0,14,0,14,0,31,0,113,128,192,96,0,0,0,0,255, + 224,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,255, + 224,11,32,64,15,2,0,112,224,241,224,241,224,112,224,0, + 0,0,0,0,0,255,224,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,255,224,23,25,75,27,2,0,255,255,0, + 31,3,192,31,0,224,31,0,240,31,0,120,31,0,120,31, + 0,124,31,0,124,31,0,126,31,0,126,31,0,126,255,224, + 126,31,0,126,31,0,126,31,0,126,31,0,126,31,0,124, + 31,0,124,31,0,124,31,0,120,31,0,120,31,0,240,31, + 0,224,31,3,192,255,255,0,24,32,96,27,2,0,0,112, + 64,0,252,192,0,159,128,0,135,0,0,0,0,0,0,0, + 0,0,0,255,3,255,31,128,124,31,128,56,15,192,16,7, + 224,16,7,240,16,7,240,16,5,248,16,5,252,16,4,252, + 16,4,126,16,4,127,16,4,63,16,4,31,144,4,31,208, + 4,15,208,4,7,240,4,7,240,4,3,240,4,1,240,4, + 1,240,4,0,240,14,0,112,31,0,48,255,192,48,20,33, + 99,24,2,1,7,0,0,7,128,0,3,128,0,1,192,0, + 0,192,0,0,96,0,0,0,0,0,0,0,3,252,0,6, + 6,0,14,7,0,28,3,128,60,3,192,60,3,192,124,3, + 224,124,3,224,124,3,224,252,3,240,252,3,240,252,3,240, + 252,3,240,252,3,240,252,3,240,252,3,240,124,3,224,124, + 3,224,124,3,224,60,3,192,60,3,192,28,3,128,14,7, + 0,6,6,0,3,252,0,20,33,99,24,2,1,0,14,0, + 0,30,0,0,28,0,0,56,0,0,48,0,0,96,0,0, + 0,0,0,0,0,3,252,0,6,6,0,14,7,0,28,3, + 128,60,3,192,60,3,192,124,3,224,124,3,224,124,3,224, + 252,3,240,252,3,240,252,3,240,252,3,240,252,3,240,252, + 3,240,252,3,240,124,3,224,124,3,224,124,3,224,60,3, + 192,60,3,192,28,3,128,14,7,0,6,6,0,3,252,0, + 20,33,99,24,2,0,0,96,0,0,96,0,0,240,0,1, + 248,0,3,156,0,6,6,0,0,0,0,0,0,0,3,252, + 0,6,6,0,14,7,0,28,3,128,60,3,192,60,3,192, + 124,3,224,124,3,224,124,3,224,252,3,240,252,3,240,252, + 3,240,252,3,240,252,3,240,252,3,240,252,3,240,124,3, + 224,124,3,224,124,3,224,60,3,192,60,3,192,28,3,128, + 14,7,0,6,6,0,3,252,0,20,32,96,24,2,0,1, + 194,0,3,230,0,6,124,0,4,56,0,0,0,0,0,0, + 0,0,0,0,3,252,0,6,6,0,14,7,0,28,3,128, + 60,3,192,60,3,192,124,3,224,124,3,224,124,3,224,252, + 3,240,252,3,240,252,3,240,252,3,240,252,3,240,252,3, + 240,252,3,240,124,3,224,124,3,224,124,3,224,60,3,192, + 60,3,192,28,3,128,14,7,0,6,6,0,3,252,0,20, + 32,96,24,2,0,7,14,0,7,143,0,7,143,0,7,14, + 0,0,0,0,0,0,0,0,0,0,3,252,0,6,6,0, + 14,7,0,28,3,128,60,3,192,60,3,192,124,3,224,124, + 3,224,124,3,224,252,3,240,252,3,240,252,3,240,252,3, + 240,252,3,240,252,3,240,252,3,240,124,3,224,124,3,224, + 124,3,224,60,3,192,60,3,192,28,3,128,14,7,0,6, + 6,0,3,252,0,22,23,69,32,5,254,64,0,8,224,0, + 28,240,0,60,120,0,120,56,0,240,28,0,224,14,1,192, + 7,3,128,3,135,0,1,206,0,0,252,0,0,120,0,0, + 120,0,0,252,0,1,206,0,3,135,0,7,3,128,14,1, + 192,28,0,224,56,0,112,112,0,56,224,0,28,64,0,8, + 20,25,75,24,2,1,3,252,48,6,6,96,14,3,192,28, + 3,128,60,3,192,60,3,192,124,3,224,124,7,224,124,15, + 224,252,11,240,252,19,240,252,35,240,252,99,240,252,67,240, + 252,131,240,253,3,240,127,3,224,126,3,224,124,3,224,60, + 3,192,60,3,192,28,3,128,60,7,0,102,6,0,195,252, + 0,23,33,99,26,2,1,1,192,0,1,224,0,0,224,0, + 0,112,0,0,56,0,0,8,0,0,0,0,0,0,0,255, + 225,254,31,0,120,31,0,48,31,0,16,31,0,16,31,0, + 16,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,15,0,32,15,0, + 32,7,128,64,3,192,192,1,255,0,23,33,99,26,2,1, + 0,3,128,0,3,128,0,7,128,0,14,0,0,12,0,0, + 24,0,0,0,0,0,0,0,255,225,254,31,0,120,31,0, + 48,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,16,15,0,32,15,0,32,7,128,64,3,192,192, + 1,255,0,23,33,99,26,2,0,0,8,0,0,24,0,0, + 60,0,0,126,0,0,227,0,1,128,192,0,0,0,0,0, + 0,255,225,254,31,0,120,31,0,48,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,16,31,0,16,31,0,16,31,0,16,15,0,48, + 15,128,32,7,128,64,3,192,192,1,255,0,23,32,96,26, + 2,0,1,195,128,1,227,192,1,227,192,1,195,128,0,0, + 0,0,0,0,0,0,0,255,225,254,31,0,120,31,0,48, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,15,0,32,15,0,32,7,128,64,3,192,192,1, + 255,0,23,33,99,26,2,0,0,1,128,0,3,128,0,7, + 128,0,7,0,0,12,0,0,8,0,0,0,0,0,0,0, + 255,225,254,31,128,112,31,128,96,15,128,96,15,192,64,7, + 192,192,7,224,192,7,224,128,3,225,128,3,241,0,1,241, + 0,1,251,0,0,250,0,0,254,0,0,252,0,0,124,0, + 0,124,0,0,124,0,0,124,0,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,3,255,128,20,25,75,24,2, + 0,255,240,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,254,0,31,7,128,31,3,192,31,1,224,31,1,240,31, + 1,240,31,1,240,31,1,240,31,1,240,31,1,224,31,3, + 192,31,7,128,31,254,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,255,240,0,16,25,50,19, + 1,0,3,224,6,120,14,60,30,60,28,60,60,60,60,60, + 60,56,60,112,61,192,60,48,60,28,60,30,60,30,60,15, + 60,15,60,15,60,15,60,15,60,15,61,207,63,222,63,158, + 61,156,252,248,15,25,50,18,2,0,48,0,56,0,60,0, + 28,0,14,0,2,0,0,0,0,0,15,128,49,224,96,240, + 112,240,120,240,120,240,48,240,3,240,28,240,56,240,120,240, + 240,240,240,242,240,242,240,242,121,252,62,120,15,25,50,18, + 2,0,0,224,0,224,1,224,1,192,3,0,6,0,4,0, + 0,0,15,128,49,224,96,240,112,240,120,240,120,240,32,240, + 7,240,28,240,56,240,120,240,240,240,240,242,240,242,240,242, + 121,252,62,120,15,25,50,18,2,0,7,0,7,0,15,0, + 13,128,24,192,112,96,0,0,0,0,15,128,49,224,96,240, + 112,240,120,240,120,240,32,240,7,240,28,240,56,240,120,240, + 240,240,240,242,240,242,240,242,121,252,62,120,15,24,48,18, + 2,0,28,32,63,32,103,224,65,192,0,0,0,0,0,0, + 15,128,49,224,96,240,112,240,120,240,120,240,48,240,7,240, + 28,240,56,240,120,240,240,240,240,242,240,242,240,242,121,252, + 62,120,15,24,48,18,2,0,112,224,120,240,120,240,112,224, + 0,0,0,0,0,0,15,128,49,224,96,240,112,240,120,240, + 120,240,32,240,7,240,28,240,56,240,120,240,240,240,240,242, + 240,242,240,242,121,252,62,120,15,25,50,18,2,1,15,128, + 25,192,16,192,16,192,24,192,15,128,7,0,0,0,15,128, + 49,224,96,240,112,240,120,240,120,240,32,240,7,240,24,240, + 56,240,112,240,240,240,240,242,240,242,240,242,121,252,62,120, + 21,17,51,25,2,0,31,143,128,49,248,224,96,248,240,112, + 248,112,120,248,120,120,240,120,48,240,120,3,240,120,28,255, + 248,56,240,0,120,240,0,240,240,8,240,248,8,240,248,8, + 240,248,16,121,188,48,62,15,192,13,24,48,16,2,249,7, + 128,28,96,56,32,120,112,120,240,248,240,240,224,240,64,240, + 0,240,0,240,0,240,8,120,16,120,16,56,16,28,32,15, + 192,2,0,4,0,3,128,1,192,1,192,17,192,15,128,13, + 25,50,17,2,0,48,0,56,0,60,0,28,0,6,0,3, + 0,0,0,0,0,7,128,24,224,56,240,120,240,120,240,240, + 120,240,120,240,120,255,248,240,0,240,0,240,8,120,8,120, + 24,56,16,28,32,7,192,13,25,50,17,2,0,0,96,0, + 224,1,224,1,192,3,128,6,0,0,0,0,0,7,128,24, + 224,56,240,120,240,120,240,240,120,240,120,240,120,255,248,240, + 0,240,0,240,8,120,8,120,24,56,16,28,32,7,192,13, + 25,50,17,2,0,7,0,7,0,15,128,13,128,24,192,48, + 112,0,0,0,0,7,128,24,224,56,240,120,240,120,240,240, + 120,240,120,240,120,255,248,240,0,240,0,240,8,120,8,120, + 24,56,16,28,32,7,192,13,24,48,17,2,0,56,224,120, + 240,120,240,56,224,0,0,0,0,0,0,7,128,24,224,56, + 240,120,240,120,240,240,120,240,120,240,120,255,248,240,0,240, + 0,240,8,120,8,120,24,56,16,28,32,7,192,8,25,25, + 10,1,0,192,224,240,112,24,12,0,0,252,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,255,8,25,25,10, + 1,0,3,7,7,14,28,16,0,0,252,60,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,255,10,25,50,10,0, + 0,28,0,30,0,30,0,55,0,97,128,192,192,0,0,0, + 0,126,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,127,128,10,24,48,11,1,0,115,128,243,192,243,192,115, + 128,0,0,0,0,0,0,126,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,127,128,14,25,50,18,2,0,30, + 48,15,96,15,128,7,128,15,192,49,224,1,224,0,240,15, + 248,28,248,56,120,120,120,120,124,240,124,240,60,240,60,240, + 60,240,60,240,60,240,124,120,120,120,120,56,112,28,224,7, + 192,17,23,69,19,1,1,7,136,0,15,248,0,16,240,0, + 0,0,0,0,0,0,0,0,0,252,120,0,61,188,0,61, + 28,0,62,30,0,62,30,0,62,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,255,127,128,14,25,50,18, + 2,0,24,0,60,0,28,0,14,0,7,0,3,0,0,0, + 0,0,7,128,28,224,56,112,120,120,120,120,240,60,240,60, + 240,60,240,60,240,60,240,60,240,60,120,120,120,120,56,112, + 24,224,7,128,14,25,50,18,2,0,0,96,0,240,0,224, + 1,192,3,128,3,0,0,0,0,0,7,128,28,224,56,112, + 120,120,120,120,240,60,240,60,240,60,240,60,240,60,240,60, + 240,60,120,120,120,120,56,112,24,224,7,128,14,25,50,18, + 2,0,3,0,7,128,7,128,15,192,28,224,48,48,32,16, + 0,0,7,128,28,224,56,112,120,120,120,120,240,60,240,60, + 240,60,240,60,240,60,240,60,240,60,120,120,120,120,56,112, + 24,224,7,128,14,24,48,18,2,0,14,16,31,144,39,224, + 33,224,0,0,0,0,0,0,7,128,28,224,56,112,120,120, + 120,120,240,60,240,60,240,60,240,60,240,60,240,60,240,60, + 120,120,120,120,56,112,24,224,7,128,14,24,48,18,2,0, + 56,112,60,240,60,240,56,112,0,0,0,0,0,0,7,128, + 28,224,56,112,120,120,120,120,240,60,240,60,240,60,240,60, + 240,60,240,60,240,60,120,120,120,120,56,112,24,224,7,128, + 29,23,92,31,1,254,0,7,0,0,0,15,128,0,0,15, + 128,0,0,15,128,0,0,7,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255, + 255,248,255,255,255,248,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7, + 0,0,0,15,128,0,0,15,128,0,0,15,128,0,0,7, + 0,0,14,17,34,18,2,0,7,132,24,232,56,120,120,120, + 120,120,240,124,240,188,241,188,243,60,246,60,244,60,248,60, + 120,120,120,120,120,112,92,96,135,128,17,25,75,19,1,0, + 12,0,0,30,0,0,14,0,0,7,0,0,3,0,0,0, + 128,0,0,0,0,0,0,0,252,126,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,62,0,60,62,0,60, + 62,0,60,94,0,30,158,0,15,31,128,17,25,75,19,1, + 0,0,48,0,0,112,0,0,112,0,0,224,0,1,192,0, + 1,0,0,0,0,0,0,0,0,252,126,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,62,0,60,62,0, + 60,62,0,60,94,0,30,158,0,15,31,128,17,25,75,19, + 1,0,1,128,0,3,192,0,3,192,0,7,224,0,12,48, + 0,24,24,0,0,0,0,0,0,0,252,126,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,62,0,60,62, + 0,60,62,0,60,94,0,30,158,0,15,31,128,17,24,72, + 19,1,0,28,112,0,30,120,0,30,120,0,28,112,0,0, + 0,0,0,0,0,0,0,0,252,126,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,62,0,60,62,0,60, + 62,0,60,94,0,30,158,0,15,31,128,17,33,99,18,0, + 248,0,28,0,0,28,0,0,60,0,0,112,0,0,96,0, + 0,192,0,0,0,0,0,0,0,255,159,128,62,6,0,30, + 4,0,31,4,0,15,4,0,15,8,0,15,136,0,7,136, + 0,7,152,0,3,208,0,3,208,0,3,240,0,1,224,0, + 1,224,0,0,224,0,0,192,0,0,64,0,0,64,0,0, + 64,0,28,128,0,60,128,0,60,128,0,57,0,0,59,0, + 0,30,0,0,15,32,64,18,1,247,12,0,28,0,124,0, + 188,0,60,0,60,0,60,0,60,120,60,252,61,30,63,30, + 62,30,62,30,62,30,60,30,60,28,60,28,60,56,60,56, + 60,48,60,96,60,192,61,0,62,0,60,0,60,0,60,0, + 60,0,60,0,60,0,48,0,192,0,17,32,96,18,0,248, + 14,28,0,15,60,0,15,60,0,14,28,0,0,0,0,0, + 0,0,0,0,0,255,159,128,62,6,0,30,4,0,30,4, + 0,15,8,0,15,8,0,15,8,0,7,136,0,7,144,0, + 3,208,0,3,208,0,3,224,0,1,224,0,1,224,0,0, + 224,0,0,192,0,0,192,0,0,64,0,0,128,0,28,128, + 0,60,128,0,61,0,0,57,0,0,59,0,0,30,0,0 + }; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--34-340-72-72-P-184-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 25 + Calculated Max Values w=29 h=33 x= 4 y=11 dx=31 dy= 0 ascent=26 len=120 + Font Bounding box w=95 h=44 x=-29 y=-10 + Calculated Min Values x= 0 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent= 0 + X Font ascent =25 descent= 0 + Max Font ascent =26 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb26n[880] U8G_SECTION(".progmem.u8g_font_osb26n") = { + 0,95,44,227,246,25,0,0,0,0,42,57,0,26,249,25, + 0,12,14,28,17,3,11,14,0,14,0,14,0,196,112,228, + 240,245,224,14,0,14,0,245,224,228,240,196,112,14,0,14, + 0,14,0,29,30,120,31,1,251,0,3,0,0,0,3,0, + 0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0, + 0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0, + 0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0, + 0,255,255,255,248,255,255,255,248,0,3,0,0,0,3,0, + 0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0, + 0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0, + 0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0, + 0,7,11,11,10,2,249,120,252,254,254,126,6,4,12,8, + 48,224,9,4,8,13,2,7,255,128,255,128,255,128,255,128, + 5,5,5,9,2,0,112,248,248,248,112,12,33,66,15,2, + 249,0,112,0,96,0,96,0,224,0,192,0,192,1,192,1, + 192,1,128,1,128,3,128,3,0,3,0,7,0,6,0,6, + 0,6,0,14,0,12,0,12,0,28,0,24,0,24,0,56, + 0,56,0,48,0,48,0,112,0,96,0,96,0,224,0,192, + 0,192,0,16,25,50,20,2,1,7,224,14,112,28,56,60, + 60,60,60,124,62,124,62,124,62,252,63,252,63,252,63,252, + 63,252,63,252,63,252,63,252,63,252,63,124,62,124,62,124, + 62,60,60,60,60,28,56,14,112,7,224,12,25,50,20,4, + 0,7,0,7,0,31,0,255,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,255,240,15,25,50,20,2,1,31,240,48,120,96,60,96, + 62,224,62,240,62,248,62,252,62,124,124,56,124,0,248,1, + 240,1,224,3,128,7,0,12,2,24,2,48,2,32,2,76, + 6,127,254,127,252,71,252,67,252,65,248,15,26,52,20,2, + 0,1,0,14,240,56,120,48,60,112,62,120,62,124,62,124, + 62,60,62,24,60,0,120,0,112,31,192,0,240,0,120,0, + 60,0,60,56,62,124,62,252,62,252,62,248,62,224,60,96, + 124,96,120,31,224,16,25,50,20,2,0,0,120,0,120,0, + 248,1,248,1,248,3,248,3,248,6,248,6,248,12,248,12, + 248,24,248,56,248,48,248,96,248,96,248,192,248,255,255,0, + 248,0,248,0,248,0,248,0,248,0,248,15,255,15,26,52, + 20,3,0,0,8,48,56,63,240,63,224,63,128,62,0,32, + 0,32,0,32,0,32,0,39,192,56,112,48,120,32,60,32, + 60,0,62,0,62,56,62,120,62,252,62,248,62,248,60,224, + 60,96,120,112,112,31,224,16,25,50,20,2,1,7,240,12, + 8,28,12,56,60,56,124,120,124,120,120,120,48,248,0,248, + 0,251,224,252,56,252,60,248,30,248,31,248,31,248,31,248, + 31,120,31,120,31,120,31,56,30,28,30,12,60,7,240,15, + 25,50,20,3,0,79,28,95,156,127,198,127,230,127,254,224, + 246,192,4,192,12,128,12,128,24,0,16,0,48,0,96,0, + 224,1,192,1,192,3,192,7,128,7,128,15,128,15,128,15, + 128,15,128,15,128,7,0,17,25,75,20,2,1,7,240,0, + 24,12,0,48,12,0,48,6,0,112,6,0,112,6,0,120, + 6,0,124,4,0,127,12,0,127,152,0,63,224,0,31,248, + 0,15,252,0,15,254,0,49,255,0,96,127,0,64,31,0, + 192,15,128,192,7,0,192,7,0,192,3,0,96,6,0,96, + 6,0,56,12,0,14,240,0,15,25,50,20,2,1,31,192, + 60,112,120,48,120,56,248,60,248,60,248,60,248,62,248,62, + 248,62,248,62,120,62,124,126,60,126,15,190,0,62,0,62, + 12,60,30,60,62,60,62,56,60,56,48,112,16,96,15,192 + }; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--34-340-72-72-P-184-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 26, '1' Height: 25 + Calculated Max Values w=34 h=33 x= 4 y=18 dx=36 dy= 0 ascent=28 len=125 + Font Bounding box w=95 h=44 x=-29 y=-10 + Calculated Min Values x=-2 y=-8 dx= 0 dy= 0 + Pure Font ascent =26 descent=-8 + X Font ascent =26 descent=-8 + Max Font ascent =28 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb26r[5950] U8G_SECTION(".progmem.u8g_font_osb26r") = { + 0,95,44,227,246,26,7,105,16,163,32,127,248,28,248,26, + 248,0,0,0,10,0,0,6,25,25,10,2,1,120,252,252, + 252,252,252,120,120,120,120,48,48,48,48,48,48,48,0,0, + 0,120,252,252,252,120,8,8,8,12,2,18,231,231,231,231, + 231,231,66,66,20,25,75,24,2,0,3,131,0,3,131,0, + 3,3,0,3,3,0,3,3,0,3,7,0,3,7,0,255, + 255,240,255,255,240,6,6,0,6,6,0,6,6,0,6,14, + 0,6,14,0,14,12,0,12,12,0,12,12,0,255,255,224, + 255,255,224,12,28,0,12,24,0,28,24,0,24,24,0,24, + 24,0,24,24,0,16,31,62,20,2,253,2,32,2,32,2, + 32,15,248,26,38,50,34,114,35,114,35,114,47,122,47,126, + 46,126,46,63,160,63,224,31,240,15,248,7,252,3,254,2, + 126,114,63,250,47,250,47,242,39,226,39,194,38,98,38,50, + 44,30,56,3,224,2,32,2,32,23,26,78,29,3,0,8, + 0,48,54,0,32,99,0,96,99,0,192,227,128,192,227,129, + 128,227,129,0,227,131,0,227,130,0,227,134,0,99,12,0, + 54,8,0,28,24,0,0,16,112,0,48,216,0,97,140,0, + 97,140,0,195,142,0,131,142,1,131,142,1,3,142,3,3, + 142,6,3,142,4,1,140,12,1,140,8,0,248,24,25,75, + 26,1,1,1,252,0,3,4,0,3,2,0,7,2,0,7, + 2,0,7,6,0,7,132,0,7,200,0,3,240,0,3,224, + 0,1,240,0,3,240,127,6,248,28,12,124,8,24,60,24, + 56,62,16,112,31,16,240,15,32,240,15,224,248,7,192,248, + 3,192,252,3,225,126,7,242,127,253,254,31,240,124,3,8, + 8,7,2,18,224,224,224,224,224,224,64,64,10,31,62,12, + 2,250,0,192,1,0,2,0,6,0,12,0,24,0,56,0, + 56,0,120,0,112,0,112,0,240,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,112,0,112,0,112,0, + 56,0,56,0,24,0,28,0,12,0,6,0,3,0,1,128, + 9,32,64,12,1,250,192,0,96,0,48,0,24,0,28,0, + 12,0,14,0,6,0,7,0,7,0,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,0,7,0,7,0,14,0,14,0,12,0,24,0,48,0, + 96,0,192,0,128,0,12,14,28,17,3,11,14,0,14,0, + 14,0,196,112,228,240,245,224,14,0,14,0,245,224,228,240, + 196,112,14,0,14,0,14,0,29,30,120,31,1,251,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,255,255,255,248,255,255,255,248,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,7,11,11,10,2,249,120,252,254,254, + 126,6,4,12,8,48,224,9,4,8,13,2,7,255,128,255, + 128,255,128,255,128,5,5,5,9,2,0,112,248,248,248,112, + 12,33,66,15,2,249,0,112,0,96,0,96,0,224,0,192, + 0,192,1,192,1,192,1,128,1,128,3,128,3,0,3,0, + 7,0,6,0,6,0,6,0,14,0,12,0,12,0,28,0, + 24,0,24,0,56,0,56,0,48,0,48,0,112,0,96,0, + 96,0,224,0,192,0,192,0,16,25,50,20,2,1,7,224, + 14,112,28,56,60,60,60,60,124,62,124,62,124,62,252,63, + 252,63,252,63,252,63,252,63,252,63,252,63,252,63,252,63, + 124,62,124,62,124,62,60,60,60,60,28,56,14,112,7,224, + 12,25,50,20,4,0,7,0,7,0,31,0,255,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,255,240,15,25,50,20,2,1,31,240, + 48,120,96,60,96,62,224,62,240,62,248,62,252,62,124,124, + 56,124,0,248,1,240,1,224,3,128,7,0,12,2,24,2, + 48,2,32,2,76,6,127,254,127,252,71,252,67,252,65,248, + 15,26,52,20,2,0,1,0,14,240,56,120,48,60,112,62, + 120,62,124,62,124,62,60,62,24,60,0,120,0,112,31,192, + 0,240,0,120,0,60,0,60,56,62,124,62,252,62,252,62, + 248,62,224,60,96,124,96,120,31,224,16,25,50,20,2,0, + 0,120,0,120,0,248,1,248,1,248,3,248,3,248,6,248, + 6,248,12,248,12,248,24,248,56,248,48,248,96,248,96,248, + 192,248,255,255,0,248,0,248,0,248,0,248,0,248,0,248, + 15,255,15,26,52,20,3,0,0,8,48,56,63,240,63,224, + 63,128,62,0,32,0,32,0,32,0,32,0,39,192,56,112, + 48,120,32,60,32,60,0,62,0,62,56,62,120,62,252,62, + 248,62,248,60,224,60,96,120,112,112,31,224,16,25,50,20, + 2,1,7,240,12,8,28,12,56,60,56,124,120,124,120,120, + 120,48,248,0,248,0,251,224,252,56,252,60,248,30,248,31, + 248,31,248,31,248,31,120,31,120,31,120,31,56,30,28,30, + 12,60,7,240,15,25,50,20,3,0,79,28,95,156,127,198, + 127,230,127,254,224,246,192,4,192,12,128,12,128,24,0,16, + 0,48,0,96,0,224,1,192,1,192,3,192,7,128,7,128, + 15,128,15,128,15,128,15,128,15,128,7,0,17,25,75,20, + 2,1,7,240,0,24,12,0,48,12,0,48,6,0,112,6, + 0,112,6,0,120,6,0,124,4,0,127,12,0,127,152,0, + 63,224,0,31,248,0,15,252,0,15,254,0,49,255,0,96, + 127,0,64,31,0,192,15,128,192,7,0,192,7,0,192,3, + 0,96,6,0,96,6,0,56,12,0,14,240,0,15,25,50, + 20,2,1,31,192,60,112,120,48,120,56,248,60,248,60,248, + 60,248,62,248,62,248,62,248,62,120,62,124,126,60,126,15, + 190,0,62,0,62,12,60,30,60,62,60,62,56,60,56,48, + 112,16,96,15,192,5,17,17,9,2,0,112,248,248,248,112, + 0,0,0,0,0,0,0,112,248,248,248,112,6,23,23,9, + 2,249,112,248,248,248,112,0,0,0,0,0,0,0,112,248, + 252,252,252,12,12,8,16,48,192,26,29,116,32,3,251,0, + 0,1,192,0,0,3,192,0,0,15,0,0,0,62,0,0, + 0,248,0,0,1,224,0,0,7,128,0,0,31,0,0,0, + 124,0,0,0,240,0,0,3,192,0,0,15,128,0,0,62, + 0,0,0,120,0,0,0,224,0,0,0,120,0,0,0,62, + 0,0,0,15,128,0,0,3,192,0,0,0,240,0,0,0, + 124,0,0,0,31,0,0,0,7,128,0,0,1,224,0,0, + 0,248,0,0,0,62,0,0,0,15,0,0,0,3,192,0, + 0,1,192,29,9,36,33,2,5,255,255,255,248,255,255,255, + 248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,255,255,255,248,255,255,255,248,26,29,116, + 32,3,251,224,0,0,0,240,0,0,0,60,0,0,0,31, + 0,0,0,7,192,0,0,1,224,0,0,0,120,0,0,0, + 62,0,0,0,15,128,0,0,3,192,0,0,0,240,0,0, + 0,124,0,0,0,31,0,0,0,7,128,0,0,1,192,0, + 0,7,128,0,0,31,0,0,0,124,0,0,0,240,0,0, + 3,192,0,0,15,128,0,0,62,0,0,0,120,0,0,1, + 224,0,0,7,192,0,0,31,0,0,0,60,0,0,0,240, + 0,0,0,224,0,0,0,11,25,50,16,2,1,63,128,67, + 192,129,224,129,224,129,224,131,224,195,192,67,192,3,128,7, + 0,6,0,12,0,8,0,24,0,17,0,17,0,17,0,14, + 0,0,0,0,0,14,0,31,0,31,0,31,0,14,0,25, + 25,100,27,1,1,0,255,192,0,3,0,48,0,6,0,24, + 0,12,0,12,0,24,0,6,0,48,30,243,0,48,114,243, + 0,96,225,227,0,97,225,225,128,227,193,225,128,195,193,225, + 128,195,193,193,128,199,131,193,128,199,131,193,128,199,131,195, + 0,199,131,195,0,231,135,130,0,103,135,134,0,99,139,204, + 0,49,240,240,0,48,0,0,0,24,0,0,0,12,0,0, + 0,7,0,96,0,1,255,192,0,23,26,78,25,1,0,0, + 16,0,0,24,0,0,56,0,0,56,0,0,60,0,0,124, + 0,0,124,0,0,126,0,0,254,0,0,254,0,0,158,0, + 1,159,0,1,159,0,1,31,0,3,15,128,3,15,128,3, + 15,128,6,7,192,7,255,192,6,7,192,4,7,224,12,3, + 224,12,3,224,28,3,240,28,3,240,255,159,254,20,25,75, + 24,2,0,255,254,0,31,7,128,31,7,192,31,3,192,31, + 3,224,31,3,224,31,3,224,31,3,224,31,3,192,31,7, + 128,31,7,0,31,248,0,31,7,0,31,3,192,31,1,224, + 31,1,224,31,1,240,31,1,240,31,1,240,31,1,240,31, + 1,240,31,1,224,31,3,192,31,7,128,255,254,0,19,25, + 75,22,2,1,3,248,64,14,6,192,30,3,192,60,3,192, + 60,1,192,124,1,192,124,0,192,124,0,192,252,0,192,252, + 0,64,252,0,64,252,0,0,252,0,0,252,0,0,252,0, + 0,252,0,0,252,0,96,124,0,64,124,0,64,124,0,64, + 60,0,192,30,0,128,30,1,0,15,3,0,3,252,0,23, + 25,75,27,2,0,255,255,0,31,3,192,31,0,224,31,0, + 240,31,0,120,31,0,120,31,0,124,31,0,124,31,0,126, + 31,0,126,31,0,126,31,0,126,31,0,126,31,0,126,31, + 0,126,31,0,126,31,0,124,31,0,124,31,0,124,31,0, + 120,31,0,120,31,0,240,31,0,224,31,3,192,255,255,0, + 20,25,75,23,2,0,255,255,224,31,1,224,31,0,224,31, + 0,224,31,0,96,31,0,96,31,0,32,31,4,32,31,4, + 0,31,12,0,31,12,0,31,28,0,31,252,0,31,28,0, + 31,12,0,31,12,48,31,4,48,31,4,48,31,0,48,31, + 0,112,31,0,112,31,0,240,31,1,240,31,3,240,255,255, + 240,20,25,75,23,2,0,255,255,240,31,3,240,31,0,240, + 31,0,240,31,0,112,31,0,112,31,0,48,31,4,48,31, + 4,48,31,12,48,31,12,0,31,28,0,31,252,0,31,28, + 0,31,12,0,31,12,0,31,4,0,31,4,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,255, + 240,0,21,26,78,24,2,0,0,32,0,3,220,32,7,3, + 96,14,1,224,28,1,224,60,0,224,60,0,224,124,0,96, + 124,0,96,252,0,32,252,0,32,252,0,0,252,0,0,252, + 63,248,252,3,224,252,3,224,252,3,224,252,3,224,124,3, + 224,124,3,224,124,3,224,60,3,224,60,3,96,30,6,96, + 14,12,96,3,184,32,25,25,100,28,2,0,255,231,255,128, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,255,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,255,231,255,128, + 11,25,50,14,2,0,255,224,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,255,224,16,25,50,18,1,0,7,255, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,120,248, + 248,248,248,248,248,248,240,248,224,240,64,240,97,224,63,192, + 24,25,75,27,2,0,255,227,252,31,0,224,31,0,192,31, + 0,128,31,1,128,31,3,0,31,6,0,31,12,0,31,28, + 0,31,28,0,31,62,0,31,126,0,31,255,0,31,191,0, + 31,31,128,31,31,128,31,15,192,31,15,192,31,7,224,31, + 7,224,31,3,240,31,1,240,31,1,248,31,1,252,255,231, + 255,20,25,75,23,2,0,255,224,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,48,31,0,48,31,0,48,31,0,48,31,0,112, + 31,0,112,31,0,240,31,0,240,31,1,240,31,3,240,255, + 255,240,27,25,100,30,2,0,255,0,63,224,15,0,63,0, + 15,128,63,0,15,128,63,0,15,128,127,0,15,192,95,0, + 15,192,95,0,11,224,95,0,11,224,223,0,11,224,159,0, + 9,240,159,0,9,240,159,0,9,241,31,0,8,249,31,0, + 8,249,31,0,8,249,31,0,8,126,31,0,8,126,31,0, + 8,62,31,0,8,62,31,0,8,60,31,0,8,28,31,0, + 24,28,31,0,60,28,31,0,255,8,255,224,24,25,75,27, + 2,0,255,3,255,31,128,124,31,128,56,15,192,16,7,224, + 16,7,240,16,7,240,16,5,248,16,5,252,16,4,252,16, + 4,126,16,4,127,16,4,63,16,4,31,144,4,31,208,4, + 15,208,4,7,240,4,7,240,4,3,240,4,1,240,4,1, + 240,4,0,240,14,0,112,31,0,48,255,192,48,20,25,75, + 24,2,1,3,252,0,6,6,0,14,7,0,28,3,128,60, + 3,192,60,3,192,124,3,224,124,3,224,124,3,224,252,3, + 240,252,3,240,252,3,240,252,3,240,252,3,240,252,3,240, + 252,3,240,124,3,224,124,3,224,124,3,224,60,3,192,60, + 3,192,28,3,128,14,7,0,6,6,0,3,252,0,20,25, + 75,24,2,0,255,254,0,31,3,128,31,3,192,31,1,224, + 31,1,240,31,1,240,31,1,240,31,1,240,31,1,240,31, + 1,224,31,3,192,31,7,128,31,254,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,255,240,0,20, + 33,99,24,2,249,3,252,0,6,6,0,14,7,0,28,3, + 128,60,3,192,60,3,192,124,3,224,124,3,224,124,3,224, + 252,3,240,252,3,240,252,3,240,252,3,240,252,3,240,252, + 3,240,252,3,240,124,3,240,124,3,224,124,3,224,60,243, + 192,61,155,192,29,11,128,15,15,128,7,15,16,3,156,16, + 0,108,16,0,12,16,0,12,48,0,14,48,0,15,240,0, + 15,224,0,7,224,0,3,128,22,25,75,25,2,0,255,252, + 0,31,7,128,31,7,192,31,3,192,31,3,224,31,3,224, + 31,3,224,31,3,224,31,3,192,31,7,192,31,15,0,31, + 248,0,31,14,0,31,15,0,31,7,128,31,7,192,31,7, + 192,31,7,192,31,7,192,31,7,196,31,7,196,31,7,196, + 31,7,196,31,3,200,255,241,248,16,25,50,21,3,1,31, + 198,32,118,96,62,224,30,224,14,240,6,248,6,252,6,255, + 2,127,128,127,192,63,240,15,248,7,252,129,254,128,254,192, + 127,192,31,192,15,224,7,224,7,240,6,248,6,220,12,135, + 120,21,25,75,25,3,0,255,255,248,248,248,248,240,248,120, + 224,248,120,192,248,56,192,248,56,128,248,24,128,248,24,128, + 248,24,128,248,24,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,15, + 255,0,23,25,75,26,2,0,255,225,254,31,0,120,31,0, + 48,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,16,15,0,32,15,0,32,7,128,64,3,192,192, + 1,255,0,24,25,75,27,2,0,255,241,255,31,128,56,15, + 128,48,15,192,48,15,192,48,7,192,32,7,224,32,7,224, + 96,3,224,64,3,240,64,1,240,192,1,240,128,1,248,128, + 0,249,128,0,249,128,0,253,0,0,125,0,0,127,0,0, + 126,0,0,62,0,0,62,0,0,60,0,0,28,0,0,28, + 0,0,24,0,34,25,125,36,1,0,255,231,255,127,192,31, + 129,248,14,0,15,128,248,14,0,15,128,252,12,0,15,192, + 124,12,0,7,192,124,12,0,7,192,124,8,0,7,224,254, + 24,0,3,224,190,24,0,3,224,190,24,0,3,241,159,16, + 0,1,241,159,48,0,1,241,31,48,0,1,249,15,32,0, + 1,251,15,160,0,0,250,15,224,0,0,254,15,224,0,0, + 254,7,192,0,0,126,7,192,0,0,124,7,192,0,0,124, + 3,192,0,0,60,3,128,0,0,56,3,128,0,0,56,1, + 128,0,0,24,1,128,0,23,25,75,26,2,0,255,231,252, + 31,193,224,15,192,192,15,193,128,7,225,128,7,227,0,3, + 242,0,3,246,0,1,244,0,1,248,0,0,248,0,0,252, + 0,0,124,0,0,62,0,0,126,0,0,127,0,0,159,0, + 1,159,128,1,15,128,3,15,192,6,7,224,4,7,224,12, + 3,240,28,7,240,255,143,254,23,25,75,26,2,0,255,225, + 254,31,128,112,31,128,96,15,128,96,15,192,64,7,192,192, + 7,224,192,7,224,128,3,225,128,3,241,0,1,241,0,1, + 251,0,0,250,0,0,254,0,0,252,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,0,124,0,3,255,128,18,25,75,22,2,0,127, + 255,192,124,15,192,120,31,128,112,31,128,96,63,0,96,63, + 0,64,126,0,64,126,0,64,252,0,0,252,0,1,248,0, + 1,240,0,3,240,0,7,224,0,7,224,0,15,192,64,15, + 192,64,31,128,64,31,128,64,63,0,192,63,1,192,126,1, + 192,126,3,192,252,15,192,255,255,192,8,31,31,14,3,250, + 255,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,255,11, + 33,66,15,2,249,192,0,192,0,224,0,96,0,96,0,96, + 0,112,0,48,0,48,0,56,0,24,0,24,0,28,0,12, + 0,12,0,12,0,14,0,6,0,6,0,7,0,3,0,3, + 0,3,0,3,128,1,128,1,128,1,192,0,192,0,192,0, + 224,0,96,0,96,0,96,8,31,31,13,2,250,255,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,15,15,15,15,255,16,12,24,20, + 2,14,1,128,3,128,3,192,7,224,14,96,14,112,28,56, + 24,56,56,28,112,12,96,14,224,7,18,2,6,18,0,250, + 255,255,192,255,255,192,6,7,7,15,3,18,224,224,240,120, + 24,12,4,15,17,34,18,2,0,15,128,49,224,96,240,112, + 240,120,240,120,240,32,240,7,240,28,240,56,240,120,240,240, + 240,240,242,240,242,240,242,121,252,62,120,15,25,50,18,1, + 0,252,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,240,61,56,62,60,62,28,62,30,62,30,60,30,60, + 30,60,30,60,30,60,30,62,30,62,30,62,28,50,60,35, + 56,33,224,13,17,34,16,2,0,7,128,28,96,56,32,120, + 112,120,240,248,240,240,224,240,64,240,0,240,0,240,0,240, + 8,120,16,120,16,56,16,28,32,7,192,17,25,75,20,2, + 0,1,252,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,15,60,0,28,188,0,56, + 124,0,120,124,0,120,60,0,240,60,0,240,60,0,240,60, + 0,240,60,0,240,60,0,240,60,0,240,60,0,120,60,0, + 120,124,0,56,124,0,28,188,0,15,63,128,13,17,34,17, + 2,0,7,128,24,224,56,240,120,240,120,240,240,120,240,120, + 240,120,255,248,240,0,240,0,240,8,120,8,120,24,56,16, + 28,32,7,192,12,25,50,12,1,0,3,192,14,112,30,112, + 28,240,60,240,60,240,60,0,60,0,255,128,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,255,128,17,25,75,19, + 1,248,7,199,0,28,249,128,60,115,128,120,123,128,120,123, + 0,120,120,0,120,120,0,120,120,0,60,112,0,28,224,0, + 7,192,0,56,0,0,96,0,0,127,192,0,127,248,0,127, + 252,0,63,254,0,63,254,0,64,14,0,128,6,0,128,6, + 0,128,4,0,64,12,0,32,56,0,31,224,0,17,25,75, + 19,1,0,252,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,120,0,61,188, + 0,61,28,0,62,30,0,62,30,0,62,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,255,127,128,8,25, + 25,11,2,0,56,124,124,124,56,0,0,0,252,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,255,10,33,66, + 10,254,248,3,128,7,192,7,192,7,192,3,128,0,0,0, + 0,0,0,31,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,99,192,243,192,243,192,243,128,231, + 128,103,0,62,0,17,25,75,19,1,0,252,0,0,60,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,127,0,60,24,0,60,16,0,60,48,0,60, + 32,0,60,64,0,60,192,0,60,224,0,61,224,0,62,240, + 0,62,240,0,60,120,0,60,124,0,60,60,0,60,62,0, + 60,62,0,255,127,128,9,25,50,11,1,0,252,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,255,128,25,17, + 68,28,1,0,252,120,120,0,61,188,158,0,61,31,30,0, + 62,31,30,0,62,30,31,0,62,30,31,0,60,30,31,0, + 60,30,31,0,60,30,31,0,60,30,31,0,60,30,31,0, + 60,30,31,0,60,30,31,0,60,30,31,0,60,30,31,0, + 60,30,31,0,255,127,191,128,17,17,51,19,1,0,252,120, + 0,61,188,0,61,28,0,62,30,0,62,30,0,62,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,255,127, + 128,14,17,34,18,2,0,7,128,28,224,56,112,120,120,120, + 120,240,60,240,60,240,60,240,60,240,60,240,60,240,60,120, + 120,120,120,56,112,24,224,7,128,15,25,50,18,1,248,252, + 240,61,56,62,60,62,28,62,30,62,30,60,30,60,30,60, + 30,60,30,60,30,62,30,62,30,62,28,62,60,61,56,60, + 240,60,0,60,0,60,0,60,0,60,0,60,0,60,0,255, + 128,16,25,50,19,2,248,15,132,28,196,56,100,120,124,120, + 60,240,60,240,60,240,60,240,60,240,60,240,60,240,60,120, + 124,120,124,56,124,28,188,15,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,1,255,12,17,34,14,1,0,252, + 224,61,112,62,240,62,240,62,240,62,96,60,0,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,255, + 0,11,17,34,14,2,0,60,64,99,64,193,192,192,192,224, + 192,240,64,252,0,127,0,63,128,31,192,135,224,129,224,192, + 224,224,96,224,96,144,192,143,128,11,24,48,13,1,0,12, + 0,12,0,12,0,12,0,12,0,28,0,60,0,255,192,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 32,60,32,60,32,60,32,60,96,60,64,31,192,15,128,17, + 17,51,19,1,0,252,126,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,62,0,60,62,0,60,62,0,60, + 94,0,30,158,0,15,31,128,17,17,51,18,0,0,255,159, + 128,30,6,0,30,4,0,30,4,0,15,12,0,15,8,0, + 15,8,0,7,152,0,7,144,0,3,208,0,3,240,0,3, + 224,0,1,224,0,1,192,0,1,192,0,0,192,0,0,128, + 0,25,17,68,26,0,0,255,63,207,128,30,15,6,0,30, + 15,6,0,30,15,4,0,15,7,132,0,15,15,132,0,7, + 143,136,0,7,139,200,0,7,147,200,0,3,211,208,0,3, + 209,240,0,3,225,240,0,1,225,224,0,1,224,224,0,1, + 192,224,0,0,192,192,0,0,192,64,0,16,17,34,18,1, + 0,255,126,62,24,30,16,31,16,15,32,15,192,7,192,3, + 192,3,192,1,224,3,240,2,240,4,248,8,120,8,124,24, + 126,254,127,17,25,75,18,0,248,255,159,128,62,6,0,30, + 4,0,31,4,0,15,8,0,15,8,0,15,136,0,7,136, + 0,7,144,0,3,208,0,3,208,0,3,224,0,1,224,0, + 1,224,0,0,224,0,0,192,0,0,64,0,0,64,0,0, + 128,0,28,128,0,60,128,0,60,128,0,57,0,0,59,0, + 0,30,0,0,13,17,34,16,1,0,127,248,112,248,96,240, + 97,224,67,224,67,192,7,192,7,128,15,128,15,0,31,8, + 30,8,60,24,124,24,120,56,248,120,255,248,11,33,66,15, + 2,249,0,32,3,192,7,0,15,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 56,0,224,0,56,0,28,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,14,0,7,0, + 3,192,0,32,2,32,32,10,4,249,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,11,33,66,15,3,249, + 128,0,240,0,60,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,15,0,7,0, + 1,224,7,0,15,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,60,0,240,0, + 128,0,19,7,21,23,2,6,62,0,64,127,128,32,255,240, + 32,135,252,32,129,255,224,128,63,192,64,15,128,255}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--38-380-72-72-P-206-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 29, '1' Height: 28 + Calculated Max Values w=38 h=37 x= 7 y=23 dx=41 dy= 0 ascent=38 len=165 + Font Bounding box w=107 h=49 x=-33 y=-11 + Calculated Min Values x=-2 y=-11 dx= 0 dy= 0 + Pure Font ascent =29 descent=-9 + X Font ascent =29 descent=-9 + Max Font ascent =38 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb29[15818] U8G_SECTION(".progmem.u8g_font_osb29") = { + 0,107,49,223,245,29,9,166,21,115,32,255,247,38,245,29, + 247,0,0,0,11,0,0,6,28,28,10,2,1,120,252,252, + 252,252,252,252,120,120,120,120,120,48,48,48,48,48,48,48, + 48,0,0,120,252,252,252,252,120,10,9,18,16,3,20,243, + 192,243,192,243,192,243,192,243,192,243,192,97,128,97,128,97, + 128,22,28,84,28,3,0,1,192,224,1,192,224,1,192,224, + 1,192,224,1,128,192,1,128,192,1,128,192,3,129,252,255, + 255,252,255,255,252,3,129,128,3,1,128,3,1,128,7,3, + 128,7,3,128,7,3,128,7,3,128,6,3,0,255,255,252, + 255,255,252,255,255,252,14,7,0,14,7,0,14,6,0,12, + 6,0,12,6,0,28,14,0,28,14,0,18,34,102,22,2, + 253,1,16,0,1,16,0,1,16,0,7,252,0,29,19,0, + 57,17,128,49,16,192,113,16,192,113,17,192,113,19,192,121, + 23,192,127,23,128,127,19,0,63,144,0,63,240,0,31,240, + 0,15,252,0,7,254,0,1,255,0,1,255,128,1,63,128, + 121,31,192,249,23,192,249,19,192,249,17,192,225,17,192,193, + 17,192,97,17,128,97,19,0,57,22,0,15,60,0,1,208, + 0,1,16,0,1,16,0,26,29,116,32,3,0,4,0,12, + 0,27,0,8,0,49,128,24,0,113,192,16,0,113,192,48, + 0,241,224,96,0,241,224,96,0,241,224,192,0,241,224,128, + 0,241,225,128,0,241,225,0,0,113,195,0,0,113,194,0, + 0,59,134,0,0,30,12,0,0,0,12,28,0,0,24,119, + 0,0,16,227,128,0,48,227,128,0,33,227,192,0,97,227, + 192,0,65,227,192,0,193,227,192,1,129,227,192,1,129,227, + 192,3,1,227,128,2,0,227,128,6,0,99,0,4,0,62, + 0,27,28,112,31,2,1,0,254,0,0,1,195,0,0,3, + 129,0,0,7,129,128,0,7,129,128,0,7,129,128,0,7, + 131,128,0,7,195,0,0,7,198,0,0,3,236,0,0,3, + 248,0,0,1,240,0,0,0,248,0,0,1,252,31,224,7, + 124,3,128,14,62,3,0,28,63,3,0,56,31,134,0,120, + 15,134,0,120,7,196,0,248,7,232,0,248,3,248,0,248, + 1,240,0,252,1,248,0,254,0,248,32,127,1,252,64,63, + 254,127,192,31,248,31,128,4,9,9,10,3,20,240,240,240, + 240,240,240,96,96,96,11,35,70,13,2,249,0,96,0,192, + 1,128,3,0,6,0,12,0,28,0,24,0,56,0,56,0, + 120,0,120,0,120,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,120,0,120,0,120,0,120,0, + 56,0,56,0,28,0,12,0,14,0,7,0,3,0,1,128, + 0,96,11,36,72,14,1,249,192,0,96,0,48,0,24,0, + 12,0,14,0,7,0,7,0,3,128,3,128,3,192,3,192, + 3,192,3,192,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,192,3,192,3,192,3,128,3,128,7,0, + 7,0,6,0,12,0,28,0,56,0,112,0,192,0,128,0, + 14,16,32,19,3,12,3,0,7,128,7,128,199,24,227,60, + 242,124,122,248,7,128,7,128,250,248,242,124,227,60,199,24, + 7,128,7,128,3,0,33,33,165,37,2,251,0,1,192,0, + 0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + 0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0, + 1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1, + 192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192, + 0,0,0,1,192,0,0,255,255,255,255,128,255,255,255,255, + 128,255,255,255,255,128,0,1,192,0,0,0,1,192,0,0, + 0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0, + 1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1, + 192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192, + 0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0, + 0,7,13,13,10,2,249,120,252,252,254,254,126,6,4,4, + 8,24,96,192,10,4,8,14,2,8,255,192,255,192,255,192, + 255,192,6,6,6,10,2,0,120,252,252,252,252,120,13,37, + 74,17,2,248,0,24,0,56,0,56,0,48,0,112,0,112, + 0,96,0,96,0,224,0,224,0,192,1,192,1,192,1,128, + 3,128,3,128,3,128,3,0,7,0,7,0,6,0,14,0, + 14,0,12,0,12,0,28,0,28,0,24,0,56,0,56,0, + 48,0,112,0,112,0,112,0,96,0,224,0,224,0,18,28, + 84,22,2,1,3,240,0,14,28,0,14,28,0,28,14,0, + 60,15,0,60,15,0,124,15,128,124,15,128,124,15,128,252, + 15,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15, + 192,252,15,192,252,15,192,252,15,192,252,15,192,124,15,128, + 124,15,128,124,15,128,60,15,0,60,15,0,28,14,0,12, + 28,0,14,28,0,3,240,0,13,28,56,22,5,0,3,128, + 7,128,15,128,255,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,255,248,17,28,84,22,2,1,15,248,0,24, + 62,0,48,63,0,112,31,0,240,31,128,240,31,128,252,31, + 128,252,31,128,254,31,128,126,63,0,60,63,0,0,126,0, + 0,252,0,0,248,0,1,224,0,3,128,0,6,0,0,12, + 0,128,24,0,128,16,0,128,32,0,128,47,1,128,127,255, + 128,127,255,128,71,255,0,67,255,0,65,254,0,64,252,0, + 17,28,84,22,2,1,15,248,0,24,62,0,48,63,0,48, + 31,0,112,31,128,120,31,128,124,31,128,124,31,128,124,31, + 128,60,31,0,0,31,0,0,62,0,0,120,0,15,192,0, + 0,120,0,0,62,0,0,63,0,0,31,0,16,31,128,124, + 31,128,252,31,128,252,31,128,252,31,128,248,31,128,240,63, + 0,112,62,0,56,124,0,31,248,0,18,28,84,22,2,0, + 0,124,0,0,124,0,0,252,0,0,252,0,1,252,0,1, + 252,0,3,252,0,3,252,0,6,252,0,6,252,0,12,252, + 0,12,252,0,24,252,0,24,252,0,48,252,0,48,252,0, + 96,252,0,96,252,0,192,252,0,255,255,192,0,252,0,0, + 252,0,0,252,0,0,252,0,0,252,0,0,252,0,0,252, + 0,15,255,192,17,29,87,22,3,0,0,6,0,112,28,0, + 127,252,0,127,248,0,127,224,0,127,192,0,126,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,103,224,0,104,120, + 0,112,62,0,96,62,0,96,31,0,0,31,0,0,31,128, + 0,31,128,56,31,128,124,31,128,252,31,128,252,31,128,248, + 31,0,240,31,0,224,30,0,96,62,0,48,124,0,31,240, + 0,18,29,87,22,3,0,0,32,0,3,220,0,7,6,0, + 14,6,0,30,15,0,60,31,0,60,63,0,124,63,0,124, + 62,0,124,28,0,252,0,0,252,0,0,252,0,0,253,248, + 0,255,30,0,254,31,0,252,15,128,252,15,128,252,15,192, + 252,15,192,252,15,192,124,15,192,124,15,192,124,15,192,60, + 15,128,28,15,128,30,15,0,14,30,0,3,252,0,17,28, + 84,22,3,0,103,135,0,111,199,0,127,227,128,127,241,128, + 127,249,128,127,255,128,96,125,128,64,1,0,64,3,0,64, + 3,0,192,6,0,0,4,0,0,12,0,0,24,0,0,56, + 0,0,112,0,0,112,0,0,240,0,1,240,0,3,224,0, + 3,224,0,3,224,0,7,224,0,7,224,0,7,224,0,7, + 224,0,7,224,0,3,192,0,19,29,87,22,2,0,0,64, + 0,7,184,0,28,6,0,56,3,0,112,1,0,112,1,128, + 240,1,128,240,1,128,248,1,128,252,3,0,255,2,0,127, + 196,0,127,248,0,63,252,0,31,255,0,15,255,128,27,255, + 128,48,255,192,96,63,192,96,15,192,224,3,224,224,1,192, + 224,1,192,224,1,192,224,1,192,112,1,128,56,1,0,28, + 6,0,15,252,0,18,28,84,22,3,1,15,240,0,30,28, + 0,60,30,0,124,14,0,124,15,0,252,15,128,252,15,128, + 252,15,128,252,15,128,252,15,192,252,15,192,124,15,192,124, + 15,192,62,31,192,30,63,192,7,239,192,0,15,192,0,15, + 192,0,15,192,30,15,128,31,15,128,63,15,128,63,15,0, + 62,15,0,56,30,0,24,28,0,24,56,0,15,240,0,6, + 19,19,10,2,0,120,252,252,252,252,120,0,0,0,0,0, + 0,0,120,252,252,252,252,120,7,26,26,10,2,249,120,252, + 252,252,252,120,0,0,0,0,0,0,0,120,252,252,254,254, + 126,6,4,4,8,16,96,192,29,33,132,36,3,250,0,0, + 0,24,0,0,0,120,0,0,1,240,0,0,7,192,0,0, + 31,128,0,0,62,0,0,0,248,0,0,3,224,0,0,15, + 192,0,0,31,0,0,0,124,0,0,1,240,0,0,7,192, + 0,0,15,128,0,0,62,0,0,0,248,0,0,0,240,0, + 0,0,124,0,0,0,62,0,0,0,15,128,0,0,3,224, + 0,0,0,248,0,0,0,124,0,0,0,31,0,0,0,7, + 192,0,0,1,240,0,0,0,252,0,0,0,62,0,0,0, + 15,128,0,0,3,224,0,0,1,248,0,0,0,120,0,0, + 0,16,32,11,44,36,2,5,255,255,255,255,255,255,255,255, + 255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255, + 255,255,255,255,29,33,132,36,4,250,192,0,0,0,240,0, + 0,0,124,0,0,0,31,0,0,0,15,192,0,0,3,224, + 0,0,0,248,0,0,0,62,0,0,0,31,128,0,0,7, + 192,0,0,1,240,0,0,0,124,0,0,0,31,0,0,0, + 15,128,0,0,3,224,0,0,0,248,0,0,0,120,0,0, + 1,240,0,0,3,224,0,0,15,128,0,0,62,0,0,0, + 248,0,0,1,240,0,0,7,192,0,0,31,0,0,0,124, + 0,0,1,248,0,0,3,224,0,0,15,128,0,0,62,0, + 0,0,252,0,0,0,240,0,0,0,64,0,0,0,12,28, + 56,18,3,1,63,128,119,224,65,224,129,240,129,240,129,240, + 129,240,129,224,193,224,67,192,3,128,7,0,6,0,12,0, + 8,0,24,0,16,64,16,64,16,64,24,128,15,0,0,0, + 7,128,15,192,15,192,15,192,15,192,7,128,28,29,116,32, + 2,0,0,2,0,0,0,125,240,0,1,192,28,0,3,0, + 6,0,6,0,3,0,12,0,1,128,24,15,61,192,56,28, + 188,192,48,56,248,224,112,112,120,224,112,240,120,96,225,224, + 120,112,225,224,248,112,225,224,240,112,227,224,240,112,227,192, + 240,112,227,192,240,112,227,193,224,96,227,193,224,224,99,193, + 224,192,99,195,224,192,115,194,225,128,49,228,227,0,56,120, + 124,0,28,0,0,0,12,0,0,0,7,0,0,0,3,128, + 24,0,0,255,224,0,26,29,116,29,2,0,0,4,0,0, + 0,6,0,0,0,14,0,0,0,14,0,0,0,15,0,0, + 0,31,0,0,0,31,0,0,0,31,128,0,0,63,128,0, + 0,47,128,0,0,47,192,0,0,111,192,0,0,79,192,0, + 0,71,192,0,0,199,224,0,0,135,224,0,0,131,224,0, + 1,131,240,0,1,3,240,0,3,1,240,0,3,255,248,0, + 2,1,248,0,6,0,248,0,6,0,252,0,4,0,252,0, + 12,0,252,0,12,0,124,0,30,0,254,0,255,199,255,192, + 22,28,84,27,3,0,255,255,0,31,131,192,31,131,224,31, + 129,240,31,129,248,31,129,248,31,129,248,31,129,248,31,129, + 248,31,129,240,31,129,240,31,131,192,31,131,128,31,252,0, + 31,131,128,31,129,224,31,128,240,31,128,248,31,128,252,31, + 128,252,31,128,252,31,128,252,31,128,252,31,128,248,31,128, + 248,31,129,240,31,131,224,255,255,128,21,28,84,26,3,1, + 1,254,48,7,3,48,14,1,240,30,0,240,60,0,240,60, + 0,112,124,0,112,124,0,48,124,0,48,252,0,48,252,0, + 48,252,0,16,252,0,0,252,0,0,252,0,0,252,0,0, + 252,0,0,252,0,24,252,0,24,124,0,16,124,0,16,124, + 0,16,60,0,48,60,0,32,30,0,96,14,0,192,7,1, + 128,1,254,0,25,28,112,30,3,0,255,255,128,0,31,128, + 224,0,31,128,112,0,31,128,56,0,31,128,60,0,31,128, + 30,0,31,128,30,0,31,128,31,0,31,128,31,0,31,128, + 31,0,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,0,31,128,31,0,31,128,31,0,31,128, + 30,0,31,128,30,0,31,128,60,0,31,128,56,0,31,128, + 112,0,31,128,224,0,255,255,128,0,22,28,84,26,2,0, + 255,255,252,15,192,124,15,192,60,15,192,28,15,192,28,15, + 192,12,15,192,12,15,192,12,15,193,4,15,193,0,15,195, + 0,15,195,0,15,199,0,15,255,0,15,199,0,15,195,0, + 15,195,0,15,193,4,15,193,4,15,193,4,15,192,12,15, + 192,12,15,192,12,15,192,28,15,192,28,15,192,60,15,192, + 252,255,255,252,22,28,84,25,2,0,255,255,252,31,128,252, + 31,128,124,31,128,60,31,128,28,31,128,28,31,128,28,31, + 128,12,31,129,12,31,129,12,31,131,12,31,131,0,31,135, + 0,31,255,0,31,143,0,31,135,0,31,131,0,31,129,0, + 31,129,0,31,129,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,255,252,0,24,29, + 87,28,3,0,0,16,0,1,239,24,3,3,152,14,0,248, + 30,0,248,28,0,120,60,0,56,60,0,56,124,0,24,124, + 0,24,124,0,24,252,0,8,252,0,0,252,0,0,252,0, + 0,252,31,255,252,1,248,252,1,248,252,1,248,252,1,248, + 124,1,248,124,1,248,124,1,248,60,1,248,60,1,248,30, + 3,152,14,3,24,7,6,24,1,220,24,27,28,112,31,2, + 0,255,251,255,224,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,255,255,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,255,251,255, + 224,13,28,56,17,2,0,255,248,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,255,248,18, + 28,84,20,1,0,7,255,192,0,126,0,0,126,0,0,126, + 0,0,126,0,0,126,0,0,126,0,0,126,0,0,126,0, + 0,126,0,0,126,0,0,126,0,0,126,0,0,126,0,0, + 126,0,0,126,0,0,126,0,16,126,0,124,126,0,252,126, + 0,252,126,0,252,126,0,248,126,0,240,124,0,224,124,0, + 96,120,0,32,240,0,31,224,0,26,28,112,29,2,0,255, + 241,255,0,31,128,120,0,31,128,112,0,31,128,96,0,31, + 128,64,0,31,128,192,0,31,129,128,0,31,131,0,0,31, + 134,0,0,31,134,0,0,31,142,0,0,31,159,0,0,31, + 191,0,0,31,255,128,0,31,223,128,0,31,159,192,0,31, + 143,192,0,31,143,224,0,31,135,224,0,31,135,240,0,31, + 131,240,0,31,131,248,0,31,129,248,0,31,129,252,0,31, + 128,252,0,31,128,254,0,31,128,254,0,255,243,255,192,22, + 28,84,25,2,0,255,248,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,12,31,128,12,31,128,12,31,128, + 12,31,128,28,31,128,28,31,128,60,31,128,60,31,128,124, + 31,128,252,31,129,252,255,255,252,31,28,112,34,2,0,255, + 128,15,254,15,128,15,224,15,192,15,224,15,192,15,224,15, + 192,15,224,15,224,23,224,15,224,23,224,15,240,23,224,13, + 240,23,224,13,240,39,224,13,248,39,224,12,248,39,224,12, + 248,39,224,12,252,71,224,12,124,71,224,12,124,71,224,12, + 126,71,224,12,62,135,224,12,63,135,224,12,63,135,224,12, + 31,135,224,12,31,7,224,12,31,7,224,12,15,7,224,12, + 15,7,224,28,14,7,224,62,6,7,224,255,134,63,254,27, + 28,112,30,2,0,255,128,255,224,31,192,63,0,31,192,30, + 0,15,224,12,0,7,240,12,0,7,240,12,0,7,248,12, + 0,7,248,12,0,6,252,12,0,6,254,12,0,6,126,12, + 0,6,63,12,0,6,63,140,0,6,31,140,0,6,31,204, + 0,6,15,236,0,6,7,236,0,6,7,252,0,6,3,252, + 0,6,1,252,0,6,1,252,0,6,0,252,0,6,0,252, + 0,6,0,124,0,6,0,60,0,15,0,60,0,31,128,28, + 0,255,224,12,0,22,28,84,27,3,1,1,254,0,3,3, + 0,6,1,128,14,1,192,28,0,224,60,0,240,60,0,240, + 124,0,248,124,0,248,124,0,248,252,0,252,252,0,252,252, + 0,252,252,0,252,252,0,252,252,0,252,252,0,252,252,0, + 252,124,0,248,124,0,248,124,0,248,60,0,240,60,0,240, + 28,0,224,14,1,192,6,1,128,3,3,0,1,254,0,23, + 28,84,27,2,0,255,255,128,31,129,240,31,128,248,31,128, + 252,31,128,124,31,128,126,31,128,126,31,128,126,31,128,126, + 31,128,126,31,128,124,31,128,252,31,128,248,31,129,224,31, + 255,128,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,255,248,0,22,37,111,27,3,248,1, + 254,0,3,3,0,6,1,128,14,1,192,28,0,224,60,0, + 240,60,0,240,124,0,248,124,0,248,124,0,248,252,0,252, + 252,0,252,252,0,252,252,0,252,252,0,252,252,0,252,252, + 0,252,252,0,252,124,0,248,124,0,248,124,0,248,60,56, + 240,60,76,240,30,133,224,14,135,224,7,135,192,3,135,132, + 1,238,4,0,22,4,0,6,4,0,7,12,0,7,12,0, + 7,252,0,7,248,0,7,248,0,3,240,0,1,224,25,28, + 112,28,2,0,255,255,0,0,31,135,192,0,31,131,224,0, + 31,129,240,0,31,129,248,0,31,129,248,0,31,129,248,0, + 31,129,248,0,31,129,248,0,31,129,240,0,31,131,224,0, + 31,135,192,0,31,254,0,0,31,135,128,0,31,131,192,0, + 31,129,240,0,31,129,240,0,31,129,248,0,31,129,248,0, + 31,129,248,0,31,129,248,0,31,129,248,128,31,129,248,128, + 31,129,248,128,31,129,248,128,31,129,249,0,31,128,249,0, + 255,248,126,0,18,29,87,23,3,0,1,0,0,31,225,128, + 48,57,128,96,31,128,96,15,128,224,7,128,240,3,128,240, + 3,128,248,1,128,254,1,128,255,1,128,127,192,0,127,224, + 0,63,248,0,31,252,0,7,255,0,3,255,0,128,255,128, + 128,127,128,192,31,192,192,15,192,192,7,192,224,3,192,224, + 1,192,240,1,128,248,1,128,248,3,0,206,2,0,135,188, + 0,24,28,84,27,2,0,255,255,255,252,126,63,248,126,31, + 240,126,15,224,126,15,224,126,7,192,126,7,192,126,3,192, + 126,3,192,126,3,128,126,3,128,126,2,0,126,0,0,126, + 0,0,126,0,0,126,0,0,126,0,0,126,0,0,126,0, + 0,126,0,0,126,0,0,126,0,0,126,0,0,126,0,0, + 126,0,0,126,0,0,126,0,7,255,224,26,28,112,30,3, + 0,255,240,127,192,31,128,31,0,31,128,14,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,15,128,12,0,15,192,12, + 0,7,192,24,0,7,224,56,0,1,252,240,0,0,255,192, + 0,27,28,112,30,2,0,255,248,127,224,31,192,15,0,15, + 192,6,0,15,192,6,0,7,224,4,0,7,224,12,0,7, + 224,8,0,3,240,8,0,3,240,8,0,3,240,24,0,1, + 248,16,0,1,248,16,0,1,252,48,0,0,252,32,0,0, + 252,32,0,0,254,96,0,0,126,64,0,0,126,64,0,0, + 127,192,0,0,63,128,0,0,63,128,0,0,63,128,0,0, + 31,0,0,0,31,0,0,0,31,0,0,0,14,0,0,0, + 14,0,0,0,14,0,0,38,28,140,41,2,0,255,243,255, + 207,252,31,192,126,1,224,15,192,126,0,192,15,192,62,0, + 192,7,192,63,0,128,7,224,63,0,128,7,224,63,1,128, + 7,224,63,129,0,3,240,63,129,0,3,240,127,131,0,3, + 240,111,195,0,1,248,79,194,0,1,248,207,194,0,1,248, + 199,230,0,0,252,135,230,0,0,252,135,228,0,0,253,131, + 244,0,0,127,131,252,0,0,127,3,248,0,0,127,3,248, + 0,0,127,1,248,0,0,63,1,248,0,0,62,1,240,0, + 0,62,0,240,0,0,30,0,240,0,0,28,0,240,0,0, + 28,0,96,0,0,12,0,96,0,26,28,112,29,2,0,255, + 241,255,128,31,224,124,0,15,224,56,0,15,224,48,0,7, + 240,96,0,7,240,96,0,3,248,192,0,3,248,128,0,1, + 253,128,0,0,255,0,0,0,254,0,0,0,126,0,0,0, + 127,0,0,0,63,0,0,0,63,128,0,0,31,128,0,0, + 63,192,0,0,111,192,0,0,79,224,0,0,199,224,0,1, + 135,240,0,1,131,240,0,3,3,248,0,2,1,248,0,6, + 1,252,0,14,0,252,0,30,1,254,0,255,199,255,192,25, + 28,112,28,2,0,255,240,255,128,31,192,60,0,31,192,24, + 0,15,192,24,0,15,224,24,0,7,224,16,0,7,224,48, + 0,3,240,32,0,3,240,32,0,1,248,96,0,1,248,64, + 0,1,252,64,0,0,252,192,0,0,254,128,0,0,127,128, + 0,0,127,128,0,0,63,0,0,0,63,0,0,0,63,0, + 0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0, + 0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0, + 0,1,255,224,0,20,28,84,25,3,0,127,255,240,126,7, + 240,124,7,224,120,15,224,112,15,192,96,31,192,96,31,128, + 96,63,128,64,63,0,64,127,0,0,254,0,0,254,0,1, + 252,0,1,248,0,3,248,0,3,240,0,7,240,0,7,224, + 16,15,224,16,15,192,16,31,192,48,31,128,48,63,128,112, + 63,0,112,127,0,240,126,1,240,254,7,240,255,255,240,9, + 35,70,15,3,249,255,128,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,255,128,13,37,74,17,2, + 248,192,0,224,0,224,0,96,0,112,0,112,0,48,0,56, + 0,56,0,24,0,24,0,28,0,28,0,12,0,14,0,14, + 0,6,0,6,0,7,0,7,0,3,0,3,128,3,128,1, + 128,1,192,1,192,0,192,0,192,0,224,0,224,0,96,0, + 112,0,112,0,48,0,48,0,56,0,56,9,35,70,15,3, + 249,255,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,255,128,18,14,42,22,2,15,0,192,0, + 0,192,0,1,224,0,3,240,0,3,240,0,7,56,0,7, + 56,0,14,28,0,28,14,0,28,14,0,56,7,0,56,7, + 0,112,3,128,224,1,192,20,3,9,20,0,249,255,255,240, + 255,255,240,255,255,240,7,7,7,17,3,21,224,240,240,120, + 60,12,6,17,19,57,20,2,0,15,192,0,24,240,0,48, + 120,0,112,120,0,124,124,0,124,124,0,124,124,0,0,252, + 0,7,124,0,28,124,0,56,124,0,120,124,0,248,124,0, + 248,124,128,248,124,128,248,124,128,252,253,128,127,191,0,62, + 30,0,18,28,84,20,0,0,255,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,60,0,31,78,0,31,143,0,31,135,128,31, + 7,128,31,7,128,31,7,192,31,7,192,31,7,192,31,7, + 192,31,7,192,31,7,192,31,7,192,31,7,128,31,7,128, + 31,135,0,25,143,0,16,206,0,16,120,0,14,19,38,18, + 2,0,7,224,14,48,60,24,60,28,120,60,120,124,248,124, + 248,120,248,48,248,0,248,0,248,0,248,0,120,4,120,4, + 56,4,28,8,14,16,7,224,18,28,84,21,2,0,0,254, + 0,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,15,62,0,28,190,0,60, + 126,0,120,126,0,120,62,0,120,62,0,248,62,0,248,62, + 0,248,62,0,248,62,0,248,62,0,248,62,0,248,62,0, + 120,62,0,120,62,0,120,126,0,60,126,0,28,190,0,15, + 63,192,14,19,38,18,2,0,7,192,28,224,56,112,56,120, + 120,120,120,124,248,124,248,124,248,124,255,252,248,0,248,0, + 248,0,120,4,120,4,56,8,60,8,30,16,7,224,14,28, + 56,13,1,0,1,240,7,24,15,28,30,60,30,124,62,124, + 62,56,62,0,62,0,255,192,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,255,192,19,28,84,22, + 2,247,7,225,192,30,118,96,60,60,224,60,60,224,124,62, + 192,124,62,0,124,62,0,124,62,0,60,60,0,60,60,0, + 30,120,0,7,224,0,56,0,0,96,0,0,96,0,0,127, + 224,0,127,254,0,127,255,0,63,255,128,31,255,128,96,7, + 128,192,3,128,128,3,128,128,3,0,128,3,0,64,6,0, + 48,28,0,15,240,0,20,28,84,22,1,0,255,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,30,0,31,111,0,31,135,128, + 31,135,192,31,135,192,31,7,192,31,7,192,31,7,192,31, + 7,192,31,7,192,31,7,192,31,7,192,31,7,192,31,7, + 192,31,7,192,31,7,192,31,7,192,31,7,192,255,223,240, + 8,28,28,12,2,0,60,126,126,126,126,60,0,0,0,252, + 124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124, + 124,255,12,37,74,13,254,247,1,224,3,240,3,240,3,240, + 3,240,1,224,0,0,0,0,0,0,15,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,123,224,251,224,251,224,243,192,227,192,103,128, + 30,0,20,28,84,21,1,0,255,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,31,192,31,7,0,31,6,0,31,4,0,31, + 8,0,31,16,0,31,16,0,31,48,0,31,120,0,31,248, + 0,31,188,0,31,60,0,31,30,0,31,31,0,31,15,0, + 31,15,128,31,15,128,31,15,192,255,223,240,11,28,56,12, + 1,0,255,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,255,224,27,19,76,30,2,0, + 254,60,30,0,62,222,111,0,63,31,143,0,63,31,143,128, + 63,31,143,128,62,31,15,128,62,31,15,128,62,31,15,128, + 62,31,15,128,62,31,15,128,62,31,15,128,62,31,15,128, + 62,31,15,128,62,31,15,128,62,31,15,128,62,31,15,128, + 62,31,15,128,62,31,15,128,255,63,223,224,19,19,57,22, + 2,0,254,60,0,62,222,0,63,15,0,63,15,128,63,15, + 128,62,15,128,62,15,128,62,15,128,62,15,128,62,15,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 15,128,62,15,128,62,15,128,255,191,224,16,19,38,20,2, + 0,7,192,12,112,28,56,56,60,120,30,120,30,248,30,248, + 31,248,31,248,31,248,31,248,31,248,30,120,30,120,30,56, + 60,28,56,12,112,7,192,18,28,84,21,1,247,255,60,0, + 31,78,0,31,143,0,31,135,128,31,7,128,31,7,128,31, + 7,192,31,7,192,31,7,192,31,7,192,31,7,192,31,7, + 192,31,7,192,31,7,128,31,7,128,31,135,128,31,143,0, + 31,78,0,31,60,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,255,192, + 0,17,28,84,20,2,247,7,130,0,28,194,0,60,102,0, + 120,126,0,120,62,0,120,62,0,248,62,0,248,62,0,248, + 62,0,248,62,0,248,62,0,248,62,0,248,62,0,120,62, + 0,120,62,0,120,126,0,60,126,0,28,190,0,15,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,255,128,14,19,38,17,2, + 0,254,48,62,120,62,188,63,60,63,124,62,124,62,56,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,255,128,13,19,38,16,2,0,31,16,97, + 208,96,112,224,48,224,48,240,16,248,0,126,0,127,128,63, + 224,15,240,135,240,193,248,192,120,224,56,224,24,240,16,156, + 48,135,192,12,27,54,14,1,0,6,0,6,0,6,0,6, + 0,6,0,14,0,30,0,62,0,255,224,62,0,62,0,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,16,62, + 16,62,16,62,16,62,16,62,32,62,32,31,192,7,128,19, + 19,57,21,1,0,254,63,128,62,15,128,62,15,128,62,15, + 128,62,15,128,62,15,128,62,15,128,62,15,128,62,15,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 31,128,62,31,128,30,47,128,30,79,128,7,143,224,18,19, + 57,20,1,0,255,143,192,62,3,0,30,2,0,30,2,0, + 31,2,0,15,4,0,15,4,0,15,132,0,7,136,0,7, + 200,0,7,216,0,3,208,0,3,240,0,3,240,0,1,224, + 0,1,224,0,0,224,0,0,192,0,0,192,0,28,19,76, + 30,1,0,255,63,231,240,62,15,129,192,30,7,129,128,30, + 7,129,128,31,7,193,0,15,7,193,0,15,7,195,0,15, + 143,226,0,7,137,226,0,7,137,230,0,7,217,244,0,3, + 208,244,0,3,240,248,0,3,240,248,0,1,224,248,0,1, + 224,112,0,1,192,112,0,0,192,112,0,0,192,32,0,18, + 19,57,20,1,0,255,63,128,126,14,0,62,12,0,31,8, + 0,31,16,0,15,176,0,15,160,0,7,192,0,3,192,0, + 3,224,0,1,240,0,3,240,0,2,248,0,4,248,0,12, + 124,0,8,126,0,24,62,0,56,63,0,254,127,192,19,28, + 84,20,0,247,255,207,224,63,3,128,31,3,0,31,2,0, + 15,2,0,15,130,0,15,130,0,7,196,0,7,196,0,3, + 196,0,3,232,0,3,232,0,1,248,0,1,248,0,0,240, + 0,0,240,0,0,112,0,0,96,0,0,96,0,0,32,0, + 0,64,0,12,64,0,30,64,0,62,64,0,62,128,0,60, + 128,0,29,0,0,14,0,0,14,19,38,17,1,0,127,252, + 120,124,112,248,96,248,65,240,65,224,67,224,3,192,7,192, + 7,128,15,128,31,4,31,4,62,4,62,12,124,12,120,28, + 248,60,255,252,12,35,70,16,2,249,1,240,7,128,15,0, + 15,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,30,0,30,0,56,0,224,0,56,0, + 30,0,30,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,15,0,15,0,7,128,1,240, + 3,36,36,11,4,248,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,12,37,74,16,2,248, + 128,0,240,0,28,0,15,0,15,0,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 7,128,3,192,0,112,3,192,7,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,0,15,0,28,0,248,0,128,0,21,8,24,25,2,6, + 62,0,48,127,192,16,255,240,8,135,252,8,129,255,24,128, + 127,248,192,31,240,96,3,224,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,0,0,0,11,0,0,6, + 29,29,10,2,247,120,252,252,252,252,120,0,0,32,48,48, + 48,48,48,48,48,112,120,120,120,120,252,252,252,252,252,252, + 120,120,14,28,56,22,4,251,1,128,1,128,1,128,1,128, + 3,192,15,176,29,152,61,152,121,184,121,184,249,184,249,184, + 249,128,249,128,249,128,249,128,249,128,249,132,121,132,121,132, + 61,136,29,152,15,176,3,192,1,128,1,128,1,128,1,128, + 23,29,87,27,2,0,0,1,0,0,30,224,0,120,16,0, + 248,24,0,240,28,1,240,60,1,240,124,3,240,124,3,240, + 120,3,240,0,3,240,0,3,240,0,3,240,0,31,240,64, + 1,255,128,1,248,0,0,248,0,0,248,0,0,248,0,0, + 120,0,0,120,0,0,112,0,0,112,6,60,112,4,127,224, + 28,131,255,248,129,255,240,195,63,224,124,31,192,18,20,60, + 21,2,3,0,0,128,195,225,128,239,249,192,255,255,128,120, + 15,0,112,7,0,96,3,0,224,1,128,192,1,128,192,1, + 128,192,1,128,192,1,128,224,1,128,96,3,0,112,7,0, + 120,15,0,255,255,128,239,249,192,195,225,128,0,0,128,21, + 28,84,23,1,0,255,195,248,63,0,224,63,0,192,31,128, + 192,31,128,128,31,192,128,15,193,0,15,193,0,7,227,0, + 7,226,0,7,246,0,3,244,0,3,252,0,1,248,0,63, + 255,192,1,248,0,1,248,0,1,248,0,63,255,192,1,248, + 0,1,248,0,1,248,0,1,248,0,1,248,0,1,248,0, + 1,248,0,1,248,0,15,255,128,3,35,35,11,4,249,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,0,0,0, + 0,0,0,0,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,17,36,108,24,2,248,1,240,0,6,12,0,12,6, + 0,24,7,0,56,31,0,56,63,0,56,63,0,56,62,0, + 60,28,0,63,0,0,63,192,0,31,224,0,63,248,0,103, + 254,0,67,255,0,192,255,0,192,63,128,224,15,128,248,3, + 128,254,1,128,127,129,128,127,225,0,63,249,0,15,254,0, + 3,254,0,0,254,0,0,63,0,14,15,0,31,7,0,63, + 7,0,63,7,0,62,7,0,56,6,0,24,12,0,12,24, + 0,7,240,0,12,5,10,16,2,22,112,224,249,240,249,240, + 249,240,112,224,28,28,112,32,2,1,0,127,224,0,1,128, + 24,0,6,0,12,0,12,0,3,0,24,0,1,0,16,30, + 33,128,48,113,160,192,96,224,224,64,97,224,96,96,97,224, + 96,96,193,224,32,32,195,224,32,48,195,224,32,48,195,224, + 0,48,195,224,0,48,195,224,0,48,195,224,16,48,193,224, + 16,32,65,224,48,96,97,224,32,96,96,240,96,64,48,112, + 192,192,16,31,1,128,24,0,1,0,12,0,3,0,6,0, + 12,0,1,128,24,0,0,127,224,0,11,14,28,15,2,14, + 30,0,35,0,99,128,115,128,115,128,15,128,51,128,99,128, + 227,128,227,160,227,160,125,192,0,0,255,224,10,16,32,18, + 4,1,24,64,48,192,112,128,97,128,225,128,227,128,227,128, + 227,128,227,128,227,128,227,128,97,128,97,128,48,192,24,64, + 8,0,19,11,33,22,2,5,255,255,224,255,255,224,255,255, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,10,4,8,14,2,8,255, + 192,255,192,255,192,255,192,28,28,112,32,2,1,0,127,224, + 0,1,128,24,0,6,0,12,0,12,0,3,0,24,0,1, + 0,19,255,193,128,48,249,224,192,96,248,240,64,96,248,248, + 96,96,248,248,96,192,248,248,32,192,248,240,48,192,249,224, + 48,192,254,0,48,192,249,192,48,192,249,224,48,192,249,240, + 48,192,249,240,32,64,249,242,96,96,249,242,96,96,249,242, + 64,48,249,246,192,19,254,253,128,24,0,121,0,12,0,3, + 0,6,0,12,0,1,128,24,0,0,127,224,0,10,3,6, + 16,3,23,255,192,255,192,255,192,12,11,22,22,5,18,31, + 128,127,224,112,96,224,48,192,48,192,48,192,48,224,112,112, + 224,63,192,31,128,32,29,116,36,2,254,0,1,192,0,0, + 1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0, + 1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0, + 1,192,0,255,255,255,255,255,255,255,255,255,255,255,255,0, + 1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0, + 1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0, + 1,192,0,0,1,192,0,0,1,192,0,0,0,0,0,0, + 0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,11, + 17,34,17,3,11,31,0,99,192,225,224,225,224,241,224,241, + 224,115,192,7,128,14,0,28,0,48,32,96,32,64,96,255, + 224,255,224,143,192,135,128,12,18,36,16,2,10,31,0,51, + 192,97,224,113,224,121,224,121,224,1,192,3,128,30,0,3, + 192,1,224,1,240,121,240,249,240,241,240,225,224,99,192,31, + 0,7,7,7,17,7,21,14,30,30,60,120,96,192,19,30, + 90,22,2,245,112,28,0,112,28,0,248,62,0,248,62,0, + 248,62,0,248,62,0,248,62,0,240,62,0,240,62,0,240, + 62,0,112,28,0,112,28,0,96,28,32,96,24,32,32,56, + 96,32,127,224,61,255,192,47,231,192,39,195,192,32,0,0, + 32,0,0,112,0,0,112,0,0,120,0,0,120,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,56,0,0,18,33, + 99,23,3,251,15,255,192,63,206,0,127,206,0,127,206,0, + 255,206,0,255,206,0,255,206,0,255,206,0,255,206,0,255, + 206,0,255,206,0,255,206,0,127,206,0,63,206,0,7,206, + 0,1,206,0,1,206,0,1,206,0,1,206,0,1,206,0, + 1,206,0,1,206,0,1,206,0,1,206,0,1,206,0,1, + 206,0,1,206,0,1,206,0,1,206,0,1,206,0,1,206, + 0,1,206,0,1,206,0,6,6,6,10,2,10,120,252,252, + 252,252,120,7,8,8,17,5,248,32,32,56,12,14,14,14, + 252,8,17,17,16,4,11,12,28,252,60,60,60,60,60,60, + 60,60,60,60,60,60,60,255,10,14,28,14,2,14,30,0, + 51,0,115,128,243,192,243,192,243,192,243,192,243,192,243,192, + 115,128,51,0,30,0,0,0,255,192,10,16,32,18,4,1, + 6,0,131,0,195,0,97,128,97,128,113,192,113,192,113,192, + 113,192,113,192,97,192,97,128,65,128,195,0,134,0,4,0, + 28,29,116,34,4,0,0,0,12,0,12,0,12,0,28,0, + 24,0,252,0,24,0,60,0,48,0,60,0,32,0,60,0, + 96,0,60,0,192,0,60,0,192,0,60,1,128,0,60,1, + 128,0,60,3,0,0,60,2,3,128,60,6,3,128,60,12, + 7,128,60,12,15,128,60,24,15,128,255,24,31,128,0,48, + 23,128,0,32,39,128,0,96,103,128,0,192,71,128,0,192, + 199,128,1,128,255,240,1,128,7,128,3,0,7,128,2,0, + 7,128,6,0,7,128,12,0,63,240,27,29,116,34,4,0, + 0,0,12,0,12,0,24,0,28,0,24,0,252,0,48,0, + 60,0,48,0,60,0,96,0,60,0,96,0,60,0,192,0, + 60,1,128,0,60,1,128,0,60,3,0,0,60,3,31,0, + 60,6,115,192,60,6,225,224,60,12,225,224,60,8,241,224, + 255,24,241,224,0,48,115,192,0,48,3,128,0,96,7,0, + 0,96,14,0,0,192,24,0,0,128,48,32,1,128,64,32, + 3,0,64,96,3,0,191,224,6,0,255,224,6,0,159,192, + 12,0,135,128,30,29,116,34,2,0,0,0,3,0,31,0, + 3,0,51,192,6,0,97,224,4,0,113,224,12,0,121,224, + 8,0,121,224,24,0,1,192,48,0,3,128,48,0,30,0, + 96,0,3,192,64,0,1,224,192,0,49,240,128,224,249,241, + 128,224,249,243,1,224,225,226,3,224,99,230,3,224,63,132, + 5,224,0,12,5,224,0,8,9,224,0,16,25,224,0,48, + 17,224,0,32,49,224,0,96,63,252,0,64,1,224,0,192, + 1,224,0,128,1,224,1,0,1,224,3,0,15,252,12,29, + 58,18,3,247,30,0,63,0,63,0,63,0,63,0,30,0, + 0,0,14,0,17,0,32,128,32,128,32,128,1,128,3,0, + 3,0,6,0,14,0,28,0,60,96,120,32,120,48,248,16, + 248,16,248,16,248,16,248,48,124,96,63,192,31,128,26,37, + 148,29,2,0,0,224,0,0,0,240,0,0,0,240,0,0, + 0,120,0,0,0,56,0,0,0,12,0,0,0,6,0,0, + 0,0,0,0,0,4,0,0,0,6,0,0,0,14,0,0, + 0,14,0,0,0,15,0,0,0,31,0,0,0,31,0,0, + 0,31,128,0,0,63,128,0,0,47,128,0,0,47,192,0, + 0,111,192,0,0,79,192,0,0,71,192,0,0,199,224,0, + 0,135,224,0,0,131,224,0,1,131,240,0,1,3,240,0, + 3,1,240,0,3,255,248,0,2,1,248,0,6,0,248,0, + 6,0,252,0,4,0,252,0,12,0,252,0,12,0,124,0, + 30,0,254,0,255,199,255,192,26,37,148,29,2,0,0,0, + 224,0,0,0,224,0,0,1,224,0,0,3,192,0,0,3, + 128,0,0,6,0,0,0,12,0,0,0,0,0,0,0,4, + 0,0,0,6,0,0,0,14,0,0,0,14,0,0,0,31, + 0,0,0,31,0,0,0,31,0,0,0,63,128,0,0,63, + 128,0,0,47,128,0,0,111,192,0,0,111,192,0,0,79, + 192,0,0,199,192,0,0,199,224,0,0,135,224,0,1,131, + 224,0,1,131,240,0,1,3,240,0,3,1,240,0,3,255, + 248,0,2,1,248,0,6,0,248,0,6,0,252,0,4,0, + 252,0,12,0,252,0,12,0,126,0,62,0,255,0,255,199, + 255,192,26,37,148,29,2,0,0,4,0,0,0,14,0,0, + 0,14,0,0,0,31,0,0,0,59,128,0,0,224,192,0, + 1,128,48,0,0,0,0,0,0,4,0,0,0,6,0,0, + 0,14,0,0,0,14,0,0,0,15,0,0,0,31,0,0, + 0,31,0,0,0,31,128,0,0,63,128,0,0,47,128,0, + 0,47,192,0,0,111,192,0,0,79,192,0,0,71,192,0, + 0,199,224,0,0,135,224,0,0,131,224,0,1,131,240,0, + 1,3,240,0,3,1,240,0,3,255,248,0,2,1,248,0, + 6,0,248,0,6,0,252,0,4,0,252,0,12,0,252,0, + 12,0,124,0,30,0,254,0,255,199,255,192,26,36,144,29, + 2,0,0,56,32,0,0,126,32,0,0,255,224,0,0,143, + 192,0,0,131,128,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,6,0,0,0,14,0,0,0,14,0,0,0,15, + 0,0,0,31,0,0,0,31,0,0,0,63,128,0,0,63, + 128,0,0,47,128,0,0,111,192,0,0,111,192,0,0,79, + 192,0,0,199,192,0,0,199,224,0,0,135,224,0,1,131, + 224,0,1,131,240,0,1,3,240,0,3,1,240,0,3,255, + 248,0,2,1,248,0,6,0,248,0,6,0,252,0,4,0, + 252,0,12,0,252,0,12,0,126,0,62,0,255,0,255,199, + 255,192,26,36,144,29,2,0,0,224,224,0,1,241,240,0, + 1,241,240,0,1,241,240,0,0,224,224,0,0,0,0,0, + 0,0,0,0,0,4,0,0,0,14,0,0,0,14,0,0, + 0,14,0,0,0,31,0,0,0,31,0,0,0,31,0,0, + 0,63,128,0,0,63,128,0,0,63,128,0,0,111,192,0, + 0,111,192,0,0,79,192,0,0,199,192,0,0,199,224,0, + 0,135,224,0,1,131,224,0,1,131,240,0,1,3,240,0, + 3,1,240,0,3,255,248,0,2,1,248,0,6,0,248,0, + 6,0,252,0,4,0,252,0,12,0,124,0,12,0,124,0, + 30,0,126,0,255,199,255,192,26,37,148,29,2,0,0,31, + 0,0,0,63,128,0,0,97,192,0,0,96,192,0,0,96, + 192,0,0,113,192,0,0,63,128,0,0,30,0,0,0,0, + 0,0,0,6,0,0,0,14,0,0,0,14,0,0,0,15, + 0,0,0,31,0,0,0,31,0,0,0,31,128,0,0,63, + 128,0,0,63,128,0,0,47,128,0,0,111,192,0,0,79, + 192,0,0,71,192,0,0,135,224,0,0,135,224,0,0,131, + 224,0,1,3,240,0,1,3,240,0,3,1,240,0,3,255, + 248,0,2,1,248,0,6,0,248,0,4,0,252,0,4,0, + 252,0,12,0,252,0,12,0,124,0,28,0,254,0,255,199, + 255,192,36,28,140,38,1,0,0,7,255,255,224,0,1,254, + 3,224,0,1,254,1,224,0,1,254,0,224,0,1,254,0, + 224,0,3,126,0,96,0,3,126,0,96,0,6,126,0,32, + 0,6,126,4,32,0,12,126,4,0,0,12,126,12,0,0, + 24,126,12,0,0,24,126,28,0,0,48,127,252,0,0,48, + 126,60,0,0,96,126,28,0,0,96,126,12,0,0,192,126, + 4,48,0,192,126,4,48,1,255,254,4,48,1,128,126,0, + 48,3,0,126,0,112,3,0,126,0,112,6,0,126,0,240, + 6,0,126,0,240,14,0,126,1,240,63,0,126,7,240,255, + 199,255,255,240,21,37,111,26,3,248,1,254,48,7,3,48, + 14,1,240,30,0,240,60,0,240,60,0,112,124,0,112,124, + 0,48,124,0,48,252,0,48,252,0,48,252,0,16,252,0, + 0,252,0,0,252,0,0,252,0,0,252,0,0,252,0,24, + 252,0,24,124,0,16,124,0,16,124,0,16,60,0,48,60, + 0,32,30,0,96,14,0,192,7,1,128,1,254,0,0,32, + 0,0,96,0,0,120,0,0,28,0,0,14,0,0,14,0, + 0,14,0,2,28,0,1,248,0,22,37,111,26,2,0,1, + 128,0,1,192,0,1,224,0,0,224,0,0,112,0,0,24, + 0,0,8,0,0,0,0,0,0,0,255,255,252,15,192,124, + 15,192,60,15,192,28,15,192,28,15,192,12,15,192,12,15, + 192,12,15,193,4,15,193,0,15,195,0,15,195,0,15,199, + 0,15,255,0,15,199,0,15,195,0,15,195,0,15,193,4, + 15,193,4,15,193,4,15,192,12,15,192,12,15,192,12,15, + 192,28,15,192,28,15,192,60,15,192,252,255,255,252,22,37, + 111,26,2,0,0,1,192,0,3,192,0,3,192,0,7,128, + 0,14,0,0,12,0,0,24,0,0,0,0,0,0,0,255, + 255,252,15,192,124,15,192,60,15,192,28,15,192,28,15,192, + 12,15,192,12,15,192,4,15,193,4,15,193,0,15,195,0, + 15,195,0,15,199,0,15,255,0,15,199,0,15,195,0,15, + 195,0,15,193,4,15,193,4,15,193,4,15,192,4,15,192, + 12,15,192,12,15,192,28,15,192,28,15,192,60,15,192,252, + 255,255,252,22,37,111,26,2,0,0,8,0,0,24,0,0, + 60,0,0,126,0,0,231,0,1,193,128,3,0,64,0,0, + 0,0,0,0,255,255,252,15,192,124,15,192,60,15,192,28, + 15,192,28,15,192,12,15,192,12,15,192,12,15,193,4,15, + 193,0,15,195,0,15,195,0,15,199,0,15,255,0,15,199, + 0,15,195,0,15,195,0,15,193,4,15,193,4,15,193,4, + 15,192,12,15,192,12,15,192,12,15,192,28,15,192,28,15, + 192,60,15,192,252,255,255,252,22,36,108,26,2,0,1,193, + 192,3,227,224,3,227,224,3,227,224,1,193,192,0,0,0, + 0,0,0,0,0,0,255,255,252,15,192,124,15,192,60,15, + 192,28,15,192,28,15,192,12,15,192,12,15,192,4,15,193, + 4,15,193,0,15,195,0,15,195,0,15,199,0,15,255,0, + 15,199,0,15,195,0,15,195,0,15,193,4,15,193,4,15, + 193,4,15,192,4,15,192,12,15,192,12,15,192,28,15,192, + 28,15,192,60,15,192,252,255,255,252,13,37,74,17,2,0, + 96,0,112,0,120,0,56,0,28,0,14,0,2,0,0,0, + 0,0,255,248,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,255,248,13,37,74,17,2,0, + 0,112,0,240,1,240,1,224,3,128,7,0,4,0,0,0, + 0,0,255,248,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,255,248,13,37,74,17,2,0, + 6,0,6,0,15,0,31,128,57,192,112,112,192,24,0,0, + 0,0,255,248,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,255,248,13,36,72,16,2,0, + 112,112,248,248,248,248,248,248,112,112,0,0,0,0,0,0, + 255,248,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,255,248,25,28,112,29,2,0,255,255, + 128,0,31,128,224,0,31,128,112,0,31,128,56,0,31,128, + 60,0,31,128,30,0,31,128,30,0,31,128,31,0,31,128, + 31,0,31,128,31,0,31,128,31,128,31,128,31,128,31,128, + 31,128,255,248,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,0,31,128,31,0,31,128, + 31,0,31,128,30,0,31,128,30,0,31,128,60,0,31,128, + 56,0,31,128,112,0,31,128,224,0,255,255,128,0,27,36, + 144,30,2,0,0,24,0,0,0,62,32,0,0,127,224,0, + 0,71,192,0,0,1,128,0,0,0,0,0,0,0,0,0, + 0,0,0,0,255,128,255,224,31,192,63,0,31,192,30,0, + 15,224,12,0,7,240,12,0,7,240,12,0,7,248,12,0, + 7,248,12,0,6,252,12,0,6,254,12,0,6,126,12,0, + 6,63,12,0,6,63,140,0,6,31,140,0,6,31,204,0, + 6,15,236,0,6,7,236,0,6,7,252,0,6,3,252,0, + 6,1,252,0,6,1,252,0,6,0,252,0,6,0,252,0, + 6,0,124,0,6,0,60,0,15,0,60,0,31,128,28,0, + 255,224,12,0,22,37,111,27,3,1,7,128,0,7,128,0, + 3,192,0,1,192,0,0,224,0,0,112,0,0,16,0,0, + 0,0,0,0,0,1,254,0,3,3,0,6,1,128,14,1, + 192,28,0,224,60,0,240,60,0,240,124,0,248,124,0,248, + 124,0,248,252,0,252,252,0,252,252,0,252,252,0,252,252, + 0,252,252,0,252,252,0,252,252,0,252,124,0,248,124,0, + 248,124,0,248,60,0,240,60,0,240,28,0,224,14,1,192, + 6,1,128,3,3,0,1,254,0,22,37,111,27,3,1,0, + 7,128,0,7,128,0,15,0,0,14,0,0,28,0,0,56, + 0,0,32,0,0,0,0,0,0,0,1,254,0,3,3,0, + 6,1,128,14,1,192,28,0,224,60,0,240,60,0,240,124, + 0,248,124,0,248,124,0,248,252,0,252,252,0,252,252,0, + 252,252,0,252,252,0,252,252,0,252,252,0,252,252,0,252, + 124,0,248,124,0,248,124,0,248,60,0,240,60,0,240,28, + 0,224,14,1,192,6,1,128,3,3,0,1,254,0,22,37, + 111,27,3,0,0,48,0,0,48,0,0,120,0,0,252,0, + 1,206,0,3,135,0,6,1,128,0,0,0,0,0,0,1, + 254,0,3,3,0,6,1,128,14,1,192,28,0,224,60,0, + 240,60,0,240,124,0,248,124,0,248,124,0,248,252,0,252, + 252,0,252,252,0,252,252,0,252,252,0,252,252,0,252,252, + 0,252,252,0,252,124,0,248,124,0,248,124,0,248,60,0, + 240,60,0,240,28,0,224,14,1,192,6,1,128,3,3,0, + 1,254,0,22,36,108,27,3,0,1,192,128,3,241,128,3, + 255,0,4,63,0,4,12,0,0,0,0,0,0,0,0,0, + 0,1,254,0,3,3,0,6,1,128,14,1,192,28,0,224, + 60,0,240,60,0,240,124,0,248,124,0,248,124,0,248,252, + 0,252,252,0,252,252,0,252,252,0,252,252,0,252,252,0, + 252,252,0,252,252,0,252,124,0,248,124,0,248,124,0,248, + 60,0,240,60,0,240,28,0,224,14,1,192,6,1,128,3, + 3,0,1,254,0,22,36,108,27,3,0,3,131,128,7,199, + 192,7,199,192,7,199,192,3,131,128,0,0,0,0,0,0, + 0,0,0,1,254,0,3,3,0,6,1,128,14,1,192,28, + 0,224,60,0,240,60,0,240,124,0,248,124,0,248,124,0, + 248,252,0,252,252,0,252,252,0,252,252,0,252,252,0,252, + 252,0,252,252,0,252,252,0,252,124,0,248,124,0,248,124, + 0,248,60,0,240,60,0,240,28,0,224,14,1,192,6,1, + 128,3,3,0,1,254,0,24,25,75,36,6,254,64,0,2, + 224,0,7,240,0,14,120,0,28,60,0,60,30,0,120,15, + 0,240,7,129,224,3,195,192,1,231,128,0,239,0,0,126, + 0,0,60,0,0,124,0,0,254,0,1,231,0,3,195,128, + 7,129,192,15,0,224,30,0,112,60,0,56,120,0,28,112, + 0,14,224,0,7,192,0,2,22,28,84,27,3,1,1,254, + 12,3,3,152,6,3,208,14,1,240,28,1,224,60,1,240, + 60,1,240,124,1,248,124,3,248,124,6,248,252,14,252,252, + 12,252,252,24,252,252,56,252,252,112,252,252,96,252,252,192, + 252,253,192,252,125,128,248,127,0,248,126,0,248,62,0,240, + 62,0,240,30,0,224,62,1,192,46,1,128,103,3,0,193, + 254,0,26,37,148,30,3,1,0,224,0,0,0,240,0,0, + 0,120,0,0,0,56,0,0,0,28,0,0,0,12,0,0, + 0,6,0,0,0,0,0,0,0,0,0,0,255,240,127,192, + 31,128,31,0,31,128,14,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,15,128,12,0,15,192,12,0,7,192,24,0, + 7,224,56,0,1,252,240,0,0,255,192,0,26,37,148,30, + 3,1,0,0,224,0,0,1,224,0,0,1,224,0,0,3, + 192,0,0,7,0,0,0,6,0,0,0,12,0,0,0,0, + 0,0,0,0,0,0,255,240,127,192,31,128,31,0,31,128, + 14,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,15,128, + 12,0,15,192,12,0,7,192,24,0,7,224,56,0,1,252, + 240,0,0,255,192,0,26,37,148,30,3,0,0,4,0,0, + 0,14,0,0,0,31,0,0,0,31,128,0,0,59,192,0, + 0,224,224,0,1,128,48,0,0,0,0,0,0,0,0,0, + 255,240,127,192,31,128,31,0,31,128,14,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,15,128,4,0,15,128,12,0, + 7,192,24,0,7,224,24,0,1,240,112,0,0,255,192,0, + 26,36,144,30,3,0,0,224,224,0,1,241,240,0,1,241, + 240,0,1,241,240,0,0,224,224,0,0,0,0,0,0,0, + 0,0,0,0,0,0,255,240,127,192,31,128,31,0,31,128, + 14,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,15,128, + 12,0,15,192,12,0,7,192,24,0,7,224,56,0,1,252, + 240,0,0,255,192,0,25,37,148,28,2,0,0,0,224,0, + 0,0,224,0,0,1,224,0,0,3,192,0,0,3,128,0, + 0,6,0,0,0,12,0,0,0,0,0,0,0,0,0,0, + 255,240,255,128,31,192,60,0,31,192,24,0,15,192,24,0, + 15,224,24,0,7,224,16,0,7,224,48,0,3,240,32,0, + 3,240,32,0,1,248,96,0,1,248,64,0,1,252,64,0, + 0,252,192,0,0,254,128,0,0,127,128,0,0,127,128,0, + 0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0, + 0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0, + 0,63,0,0,0,63,0,0,0,63,0,0,1,255,224,0, + 23,28,84,27,2,0,255,248,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,255,128,31,129,224,31,128,248,31,128, + 252,31,128,124,31,128,126,31,128,126,31,128,126,31,128,126, + 31,128,126,31,128,124,31,128,252,31,128,248,31,129,224,31, + 255,128,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,255,248,0,19,28,84,22,1,0, + 0,248,0,3,156,0,7,142,0,15,15,0,15,15,0,15, + 15,0,31,15,0,31,15,0,31,14,0,31,28,0,31,112, + 0,31,12,0,31,7,0,31,7,128,31,3,192,31,3,192, + 31,3,192,31,3,224,31,3,224,31,3,224,31,3,224,31, + 3,224,31,115,224,31,243,192,31,243,192,31,227,128,31,103, + 0,255,62,0,17,28,84,20,2,0,56,0,0,60,0,0, + 60,0,0,30,0,0,14,0,0,3,0,0,1,0,0,0, + 0,0,0,0,0,15,192,0,24,240,0,48,120,0,112,120, + 0,124,124,0,124,124,0,56,124,0,1,252,0,14,124,0, + 28,124,0,56,124,0,120,124,0,248,124,0,248,124,128,248, + 124,128,248,124,128,252,253,128,127,191,0,62,30,0,17,28, + 84,20,2,0,0,48,0,0,112,0,0,240,0,0,224,0, + 1,192,0,1,128,0,3,0,0,0,0,0,0,0,0,15, + 192,0,24,240,0,48,120,0,112,120,0,124,124,0,124,124, + 0,124,124,0,0,252,0,7,124,0,28,124,0,56,124,0, + 120,124,0,248,124,0,248,124,128,248,124,128,248,124,128,252, + 253,128,127,191,0,62,30,0,17,28,84,20,2,0,3,0, + 0,3,128,0,7,128,0,7,192,0,12,224,0,24,112,0, + 48,24,0,0,0,0,0,0,0,15,192,0,24,240,0,48, + 120,0,112,120,0,124,124,0,124,124,0,124,124,0,0,252, + 0,7,124,0,28,124,0,56,124,0,120,124,0,248,124,0, + 248,124,128,248,124,128,248,124,128,252,253,128,127,191,0,62, + 30,0,17,27,81,20,2,0,14,8,0,31,152,0,63,240, + 0,35,240,0,32,224,0,0,0,0,0,0,0,0,0,0, + 15,192,0,24,240,0,48,120,0,112,120,0,124,124,0,124, + 124,0,124,124,0,0,252,0,7,124,0,28,124,0,56,124, + 0,120,124,0,248,124,0,248,124,128,248,124,128,248,124,128, + 252,253,128,127,191,0,62,30,0,17,27,81,20,2,0,56, + 112,0,124,248,0,124,248,0,124,248,0,56,112,0,0,0, + 0,0,0,0,0,0,0,15,192,0,24,240,0,48,120,0, + 112,120,0,124,124,0,124,124,0,124,124,0,0,252,0,7, + 124,0,28,124,0,56,124,0,120,124,0,248,124,0,248,124, + 128,248,124,128,248,124,128,252,253,128,127,191,0,62,30,0, + 17,28,84,20,2,1,15,192,0,12,192,0,24,96,0,24, + 96,0,24,96,0,28,224,0,15,192,0,7,128,0,0,0, + 0,15,192,0,16,240,0,48,120,0,112,120,0,120,124,0, + 124,124,0,124,124,0,0,252,0,7,124,0,28,124,0,56, + 124,0,120,124,0,248,124,0,248,124,128,248,124,128,248,124, + 128,252,253,128,127,255,0,62,62,0,23,19,57,27,2,0, + 15,195,224,24,238,112,48,124,56,112,124,60,120,124,60,124, + 124,62,124,124,62,24,124,62,3,252,62,14,127,254,60,124, + 0,120,124,0,248,124,2,248,124,2,248,124,2,248,124,4, + 252,222,4,127,143,8,63,3,240,14,27,54,18,2,248,7, + 224,14,48,60,24,60,28,120,60,120,124,248,124,248,120,248, + 48,248,0,248,0,248,0,248,0,120,4,120,4,56,4,60, + 8,30,16,7,224,2,0,2,0,3,128,0,192,0,224,0, + 224,0,224,7,128,14,28,56,18,2,0,56,0,56,0,60, + 0,30,0,14,0,7,0,1,0,0,0,0,0,7,192,28, + 224,56,112,56,120,120,120,120,124,248,124,248,124,248,124,255, + 252,248,0,248,0,248,4,120,4,120,4,56,8,60,24,30, + 48,7,192,14,28,56,18,2,0,0,112,0,112,0,240,1, + 224,1,192,3,128,2,0,0,0,0,0,7,192,28,224,56, + 112,56,120,120,120,120,124,248,124,248,124,255,252,248,0,248, + 0,248,0,248,4,120,4,120,12,56,8,60,24,30,48,7, + 192,14,28,56,18,2,0,3,0,7,128,7,128,15,192,12, + 192,24,96,48,56,0,0,0,0,7,192,28,224,56,112,56, + 120,120,120,120,124,248,124,248,124,248,124,255,252,248,0,248, + 0,248,0,120,4,120,4,56,8,60,8,30,16,7,224,14, + 27,54,18,2,0,56,112,124,248,124,248,124,248,56,112,0, + 0,0,0,0,0,7,192,28,224,56,112,56,120,120,120,120, + 124,248,124,248,124,248,124,255,252,248,0,248,0,248,0,120, + 4,120,12,56,8,60,24,30,48,7,192,10,28,56,12,1, + 0,224,0,240,0,248,0,120,0,28,0,14,0,2,0,0, + 0,0,0,127,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,127,192,9,28,56,12,2,0,1, + 128,3,128,7,128,15,0,14,0,28,0,16,0,0,0,0, + 0,254,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,255,128,11,28,56,11,1,0,14,0,30, + 0,31,0,63,0,115,128,224,192,128,96,0,0,0,0,127, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,127,192,11,27,54,12,1,0,113,192,251,224,251, + 224,251,224,113,192,0,0,0,0,0,0,127,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,127, + 192,16,28,56,20,2,0,31,8,15,184,7,224,7,224,7, + 224,13,240,16,248,0,248,0,124,7,252,30,126,60,62,56, + 62,120,30,120,31,248,31,248,31,248,31,248,31,248,31,248, + 31,248,30,120,30,120,30,56,60,60,60,12,112,7,224,19, + 27,81,22,2,0,0,2,0,7,194,0,15,254,0,15,252, + 0,8,120,0,0,0,0,0,0,0,0,0,0,254,60,0, + 62,222,0,63,15,0,63,15,128,63,15,128,62,15,128,62, + 15,128,62,15,128,62,15,128,62,15,128,62,15,128,62,15, + 128,62,15,128,62,15,128,62,15,128,62,15,128,62,15,128, + 62,15,128,255,191,224,16,28,56,20,2,0,24,0,28,0, + 30,0,15,0,7,0,3,128,0,192,0,0,0,0,7,192, + 12,112,28,56,56,60,120,30,120,30,248,30,248,31,248,31, + 248,31,248,31,248,31,248,30,120,30,120,30,56,60,28,56, + 12,112,7,192,16,28,56,20,2,0,0,56,0,56,0,120, + 0,240,0,224,1,192,3,0,0,0,0,0,7,192,12,112, + 28,56,56,60,120,30,120,30,248,30,248,31,248,31,248,31, + 248,31,248,31,248,30,120,30,120,30,56,60,28,56,12,112, + 7,192,16,28,56,20,2,0,3,128,3,192,3,192,7,224, + 14,112,28,56,48,12,0,0,0,0,7,192,12,112,28,56, + 56,60,120,30,120,30,248,30,248,31,248,31,248,31,248,31, + 248,31,248,30,120,30,120,30,56,60,28,56,12,112,7,192, + 16,27,54,20,2,0,14,4,31,140,31,248,35,248,32,112, + 0,0,0,0,0,0,7,192,12,112,28,56,56,60,120,30, + 120,30,248,30,248,31,248,31,248,31,248,31,248,31,248,30, + 120,30,120,30,56,60,28,56,12,112,7,192,16,27,54,20, + 2,0,28,56,62,124,62,124,62,124,28,56,0,0,0,0, + 0,0,7,192,12,112,28,56,56,60,120,30,120,30,248,30, + 248,31,248,31,248,31,248,31,248,31,248,30,120,30,120,30, + 56,60,28,56,12,112,7,192,33,26,130,37,2,253,0,3, + 192,0,0,0,7,224,0,0,0,7,224,0,0,0,7,224, + 0,0,0,7,224,0,0,0,3,192,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,255,255,255,255,128,255,255,255,255,128,255, + 255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,3,192,0,0,0,7,224,0,0,0,7,224,0, + 0,0,7,224,0,0,0,7,224,0,0,0,3,192,0,0, + 16,19,38,20,2,0,7,225,12,114,28,60,56,60,120,62, + 120,62,248,126,248,95,248,223,249,159,251,31,254,31,252,30, + 124,30,120,30,60,28,124,56,78,48,135,192,19,28,84,21, + 1,0,12,0,0,30,0,0,15,0,0,7,0,0,3,128, + 0,1,192,0,0,64,0,0,0,0,0,0,0,254,63,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 15,128,62,15,128,62,15,128,62,15,128,62,15,128,62,15, + 128,62,15,128,62,15,128,62,31,128,62,31,128,30,47,128, + 31,79,128,7,143,224,19,28,84,21,1,0,0,28,0,0, + 60,0,0,60,0,0,120,0,0,224,0,0,192,0,1,128, + 0,0,0,0,0,0,0,254,63,128,62,15,128,62,15,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 15,128,62,15,128,62,15,128,62,15,128,62,15,128,62,15, + 128,62,31,128,62,31,128,30,47,128,30,79,128,7,143,224, + 19,28,84,21,1,0,1,192,0,1,224,0,3,224,0,3, + 240,0,7,56,0,12,28,0,24,4,0,0,0,0,0,0, + 0,254,63,128,62,15,128,62,15,128,62,15,128,62,15,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 15,128,62,15,128,62,15,128,62,15,128,62,31,128,62,31, + 128,30,47,128,30,79,128,7,143,224,19,27,81,21,1,0, + 28,28,0,62,62,0,62,62,0,62,62,0,28,28,0,0, + 0,0,0,0,0,0,0,0,254,63,128,62,15,128,62,15, + 128,62,15,128,62,15,128,62,15,128,62,15,128,62,15,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 15,128,62,31,128,62,31,128,30,47,128,30,79,128,7,143, + 224,18,37,111,19,0,247,0,14,0,0,30,0,0,30,0, + 0,60,0,0,48,0,0,96,0,0,192,0,0,0,0,0, + 0,0,255,207,192,63,3,0,31,3,0,31,2,0,15,2, + 0,15,130,0,15,132,0,7,196,0,7,196,0,3,196,0, + 3,232,0,3,232,0,1,248,0,1,240,0,0,240,0,0, + 240,0,0,96,0,0,96,0,0,96,0,0,32,0,0,64, + 0,12,64,0,30,64,0,62,128,0,62,128,0,60,128,0, + 29,0,0,14,0,0,18,36,108,20,0,247,3,0,0,15, + 0,0,63,0,0,223,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,31,0,31,63,128,31,71,128,31,135,192, + 31,135,192,31,7,192,31,7,192,31,7,192,31,7,128,31, + 7,128,31,15,0,31,15,0,31,14,0,31,12,0,31,24, + 0,31,48,0,31,96,0,31,128,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,30, + 0,0,56,0,0,224,0,0,19,36,108,20,0,247,7,14, + 0,15,159,0,15,159,0,15,159,0,7,14,0,0,0,0, + 0,0,0,0,0,0,255,207,224,63,3,0,31,3,0,31, + 2,0,15,2,0,15,130,0,15,132,0,7,196,0,7,196, + 0,3,196,0,3,232,0,3,232,0,1,248,0,1,240,0, + 0,240,0,0,240,0,0,240,0,0,96,0,0,96,0,0, + 32,0,0,64,0,12,64,0,30,64,0,62,64,0,62,128, + 0,60,128,0,29,0,0,14,0,0}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--38-380-72-72-P-206-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 28 + Calculated Max Values w=33 h=37 x= 5 y=12 dx=37 dy= 0 ascent=29 len=165 + Font Bounding box w=107 h=49 x=-33 y=-11 + Calculated Min Values x= 0 y=-8 dx= 0 dy= 0 + Pure Font ascent =28 descent= 0 + X Font ascent =28 descent= 0 + Max Font ascent =29 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb29n[1232] U8G_SECTION(".progmem.u8g_font_osb29n") = { + 0,107,49,223,245,28,0,0,0,0,42,57,0,29,248,28, + 0,14,16,32,19,3,12,3,0,7,128,7,128,199,24,227, + 60,242,124,122,248,7,128,7,128,250,248,242,124,227,60,199, + 24,7,128,7,128,3,0,33,33,165,37,2,251,0,1,192, + 0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0, + 0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + 0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0, + 1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1, + 192,0,0,0,1,192,0,0,255,255,255,255,128,255,255,255, + 255,128,255,255,255,255,128,0,1,192,0,0,0,1,192,0, + 0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + 0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0, + 1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1, + 192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192, + 0,0,7,13,13,10,2,249,120,252,252,254,254,126,6,4, + 4,8,24,96,192,10,4,8,14,2,8,255,192,255,192,255, + 192,255,192,6,6,6,10,2,0,120,252,252,252,252,120,13, + 37,74,17,2,248,0,24,0,56,0,56,0,48,0,112,0, + 112,0,96,0,96,0,224,0,224,0,192,1,192,1,192,1, + 128,3,128,3,128,3,128,3,0,7,0,7,0,6,0,14, + 0,14,0,12,0,12,0,28,0,28,0,24,0,56,0,56, + 0,48,0,112,0,112,0,112,0,96,0,224,0,224,0,18, + 28,84,22,2,1,3,240,0,14,28,0,14,28,0,28,14, + 0,60,15,0,60,15,0,124,15,128,124,15,128,124,15,128, + 252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,252, + 15,192,252,15,192,252,15,192,252,15,192,252,15,192,124,15, + 128,124,15,128,124,15,128,60,15,0,60,15,0,28,14,0, + 12,28,0,14,28,0,3,240,0,13,28,56,22,5,0,3, + 128,7,128,15,128,255,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,255,248,17,28,84,22,2,1,15,248,0, + 24,62,0,48,63,0,112,31,0,240,31,128,240,31,128,252, + 31,128,252,31,128,254,31,128,126,63,0,60,63,0,0,126, + 0,0,252,0,0,248,0,1,224,0,3,128,0,6,0,0, + 12,0,128,24,0,128,16,0,128,32,0,128,47,1,128,127, + 255,128,127,255,128,71,255,0,67,255,0,65,254,0,64,252, + 0,17,28,84,22,2,1,15,248,0,24,62,0,48,63,0, + 48,31,0,112,31,128,120,31,128,124,31,128,124,31,128,124, + 31,128,60,31,0,0,31,0,0,62,0,0,120,0,15,192, + 0,0,120,0,0,62,0,0,63,0,0,31,0,16,31,128, + 124,31,128,252,31,128,252,31,128,252,31,128,248,31,128,240, + 63,0,112,62,0,56,124,0,31,248,0,18,28,84,22,2, + 0,0,124,0,0,124,0,0,252,0,0,252,0,1,252,0, + 1,252,0,3,252,0,3,252,0,6,252,0,6,252,0,12, + 252,0,12,252,0,24,252,0,24,252,0,48,252,0,48,252, + 0,96,252,0,96,252,0,192,252,0,255,255,192,0,252,0, + 0,252,0,0,252,0,0,252,0,0,252,0,0,252,0,0, + 252,0,15,255,192,17,29,87,22,3,0,0,6,0,112,28, + 0,127,252,0,127,248,0,127,224,0,127,192,0,126,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,103,224,0,104, + 120,0,112,62,0,96,62,0,96,31,0,0,31,0,0,31, + 128,0,31,128,56,31,128,124,31,128,252,31,128,252,31,128, + 248,31,0,240,31,0,224,30,0,96,62,0,48,124,0,31, + 240,0,18,29,87,22,3,0,0,32,0,3,220,0,7,6, + 0,14,6,0,30,15,0,60,31,0,60,63,0,124,63,0, + 124,62,0,124,28,0,252,0,0,252,0,0,252,0,0,253, + 248,0,255,30,0,254,31,0,252,15,128,252,15,128,252,15, + 192,252,15,192,252,15,192,124,15,192,124,15,192,124,15,192, + 60,15,128,28,15,128,30,15,0,14,30,0,3,252,0,17, + 28,84,22,3,0,103,135,0,111,199,0,127,227,128,127,241, + 128,127,249,128,127,255,128,96,125,128,64,1,0,64,3,0, + 64,3,0,192,6,0,0,4,0,0,12,0,0,24,0,0, + 56,0,0,112,0,0,112,0,0,240,0,1,240,0,3,224, + 0,3,224,0,3,224,0,7,224,0,7,224,0,7,224,0, + 7,224,0,7,224,0,3,192,0,19,29,87,22,2,0,0, + 64,0,7,184,0,28,6,0,56,3,0,112,1,0,112,1, + 128,240,1,128,240,1,128,248,1,128,252,3,0,255,2,0, + 127,196,0,127,248,0,63,252,0,31,255,0,15,255,128,27, + 255,128,48,255,192,96,63,192,96,15,192,224,3,224,224,1, + 192,224,1,192,224,1,192,224,1,192,112,1,128,56,1,0, + 28,6,0,15,252,0,18,28,84,22,3,1,15,240,0,30, + 28,0,60,30,0,124,14,0,124,15,0,252,15,128,252,15, + 128,252,15,128,252,15,128,252,15,192,252,15,192,124,15,192, + 124,15,192,62,31,192,30,63,192,7,239,192,0,15,192,0, + 15,192,0,15,192,30,15,128,31,15,128,63,15,128,63,15, + 0,62,15,0,56,30,0,24,28,0,24,56,0,15,240,0 + }; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--38-380-72-72-P-206-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 29, '1' Height: 28 + Calculated Max Values w=38 h=37 x= 5 y=21 dx=41 dy= 0 ascent=31 len=165 + Font Bounding box w=107 h=49 x=-33 y=-11 + Calculated Min Values x=-2 y=-9 dx= 0 dy= 0 + Pure Font ascent =29 descent=-9 + X Font ascent =29 descent=-9 + Max Font ascent =31 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb29r[7481] U8G_SECTION(".progmem.u8g_font_osb29r") = { + 0,107,49,223,245,29,9,166,21,115,32,127,247,31,247,29, + 247,0,0,0,11,0,0,6,28,28,10,2,1,120,252,252, + 252,252,252,252,120,120,120,120,120,48,48,48,48,48,48,48, + 48,0,0,120,252,252,252,252,120,10,9,18,16,3,20,243, + 192,243,192,243,192,243,192,243,192,243,192,97,128,97,128,97, + 128,22,28,84,28,3,0,1,192,224,1,192,224,1,192,224, + 1,192,224,1,128,192,1,128,192,1,128,192,3,129,252,255, + 255,252,255,255,252,3,129,128,3,1,128,3,1,128,7,3, + 128,7,3,128,7,3,128,7,3,128,6,3,0,255,255,252, + 255,255,252,255,255,252,14,7,0,14,7,0,14,6,0,12, + 6,0,12,6,0,28,14,0,28,14,0,18,34,102,22,2, + 253,1,16,0,1,16,0,1,16,0,7,252,0,29,19,0, + 57,17,128,49,16,192,113,16,192,113,17,192,113,19,192,121, + 23,192,127,23,128,127,19,0,63,144,0,63,240,0,31,240, + 0,15,252,0,7,254,0,1,255,0,1,255,128,1,63,128, + 121,31,192,249,23,192,249,19,192,249,17,192,225,17,192,193, + 17,192,97,17,128,97,19,0,57,22,0,15,60,0,1,208, + 0,1,16,0,1,16,0,26,29,116,32,3,0,4,0,12, + 0,27,0,8,0,49,128,24,0,113,192,16,0,113,192,48, + 0,241,224,96,0,241,224,96,0,241,224,192,0,241,224,128, + 0,241,225,128,0,241,225,0,0,113,195,0,0,113,194,0, + 0,59,134,0,0,30,12,0,0,0,12,28,0,0,24,119, + 0,0,16,227,128,0,48,227,128,0,33,227,192,0,97,227, + 192,0,65,227,192,0,193,227,192,1,129,227,192,1,129,227, + 192,3,1,227,128,2,0,227,128,6,0,99,0,4,0,62, + 0,27,28,112,31,2,1,0,254,0,0,1,195,0,0,3, + 129,0,0,7,129,128,0,7,129,128,0,7,129,128,0,7, + 131,128,0,7,195,0,0,7,198,0,0,3,236,0,0,3, + 248,0,0,1,240,0,0,0,248,0,0,1,252,31,224,7, + 124,3,128,14,62,3,0,28,63,3,0,56,31,134,0,120, + 15,134,0,120,7,196,0,248,7,232,0,248,3,248,0,248, + 1,240,0,252,1,248,0,254,0,248,32,127,1,252,64,63, + 254,127,192,31,248,31,128,4,9,9,10,3,20,240,240,240, + 240,240,240,96,96,96,11,35,70,13,2,249,0,96,0,192, + 1,128,3,0,6,0,12,0,28,0,24,0,56,0,56,0, + 120,0,120,0,120,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,120,0,120,0,120,0,120,0, + 56,0,56,0,28,0,12,0,14,0,7,0,3,0,1,128, + 0,96,11,36,72,14,1,249,192,0,96,0,48,0,24,0, + 12,0,14,0,7,0,7,0,3,128,3,128,3,192,3,192, + 3,192,3,192,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,192,3,192,3,192,3,128,3,128,7,0, + 7,0,6,0,12,0,28,0,56,0,112,0,192,0,128,0, + 14,16,32,19,3,12,3,0,7,128,7,128,199,24,227,60, + 242,124,122,248,7,128,7,128,250,248,242,124,227,60,199,24, + 7,128,7,128,3,0,33,33,165,37,2,251,0,1,192,0, + 0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + 0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0, + 1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1, + 192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192, + 0,0,0,1,192,0,0,255,255,255,255,128,255,255,255,255, + 128,255,255,255,255,128,0,1,192,0,0,0,1,192,0,0, + 0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0, + 1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1, + 192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192, + 0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0, + 0,7,13,13,10,2,249,120,252,252,254,254,126,6,4,4, + 8,24,96,192,10,4,8,14,2,8,255,192,255,192,255,192, + 255,192,6,6,6,10,2,0,120,252,252,252,252,120,13,37, + 74,17,2,248,0,24,0,56,0,56,0,48,0,112,0,112, + 0,96,0,96,0,224,0,224,0,192,1,192,1,192,1,128, + 3,128,3,128,3,128,3,0,7,0,7,0,6,0,14,0, + 14,0,12,0,12,0,28,0,28,0,24,0,56,0,56,0, + 48,0,112,0,112,0,112,0,96,0,224,0,224,0,18,28, + 84,22,2,1,3,240,0,14,28,0,14,28,0,28,14,0, + 60,15,0,60,15,0,124,15,128,124,15,128,124,15,128,252, + 15,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15, + 192,252,15,192,252,15,192,252,15,192,252,15,192,124,15,128, + 124,15,128,124,15,128,60,15,0,60,15,0,28,14,0,12, + 28,0,14,28,0,3,240,0,13,28,56,22,5,0,3,128, + 7,128,15,128,255,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,255,248,17,28,84,22,2,1,15,248,0,24, + 62,0,48,63,0,112,31,0,240,31,128,240,31,128,252,31, + 128,252,31,128,254,31,128,126,63,0,60,63,0,0,126,0, + 0,252,0,0,248,0,1,224,0,3,128,0,6,0,0,12, + 0,128,24,0,128,16,0,128,32,0,128,47,1,128,127,255, + 128,127,255,128,71,255,0,67,255,0,65,254,0,64,252,0, + 17,28,84,22,2,1,15,248,0,24,62,0,48,63,0,48, + 31,0,112,31,128,120,31,128,124,31,128,124,31,128,124,31, + 128,60,31,0,0,31,0,0,62,0,0,120,0,15,192,0, + 0,120,0,0,62,0,0,63,0,0,31,0,16,31,128,124, + 31,128,252,31,128,252,31,128,252,31,128,248,31,128,240,63, + 0,112,62,0,56,124,0,31,248,0,18,28,84,22,2,0, + 0,124,0,0,124,0,0,252,0,0,252,0,1,252,0,1, + 252,0,3,252,0,3,252,0,6,252,0,6,252,0,12,252, + 0,12,252,0,24,252,0,24,252,0,48,252,0,48,252,0, + 96,252,0,96,252,0,192,252,0,255,255,192,0,252,0,0, + 252,0,0,252,0,0,252,0,0,252,0,0,252,0,0,252, + 0,15,255,192,17,29,87,22,3,0,0,6,0,112,28,0, + 127,252,0,127,248,0,127,224,0,127,192,0,126,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,103,224,0,104,120, + 0,112,62,0,96,62,0,96,31,0,0,31,0,0,31,128, + 0,31,128,56,31,128,124,31,128,252,31,128,252,31,128,248, + 31,0,240,31,0,224,30,0,96,62,0,48,124,0,31,240, + 0,18,29,87,22,3,0,0,32,0,3,220,0,7,6,0, + 14,6,0,30,15,0,60,31,0,60,63,0,124,63,0,124, + 62,0,124,28,0,252,0,0,252,0,0,252,0,0,253,248, + 0,255,30,0,254,31,0,252,15,128,252,15,128,252,15,192, + 252,15,192,252,15,192,124,15,192,124,15,192,124,15,192,60, + 15,128,28,15,128,30,15,0,14,30,0,3,252,0,17,28, + 84,22,3,0,103,135,0,111,199,0,127,227,128,127,241,128, + 127,249,128,127,255,128,96,125,128,64,1,0,64,3,0,64, + 3,0,192,6,0,0,4,0,0,12,0,0,24,0,0,56, + 0,0,112,0,0,112,0,0,240,0,1,240,0,3,224,0, + 3,224,0,3,224,0,7,224,0,7,224,0,7,224,0,7, + 224,0,7,224,0,3,192,0,19,29,87,22,2,0,0,64, + 0,7,184,0,28,6,0,56,3,0,112,1,0,112,1,128, + 240,1,128,240,1,128,248,1,128,252,3,0,255,2,0,127, + 196,0,127,248,0,63,252,0,31,255,0,15,255,128,27,255, + 128,48,255,192,96,63,192,96,15,192,224,3,224,224,1,192, + 224,1,192,224,1,192,224,1,192,112,1,128,56,1,0,28, + 6,0,15,252,0,18,28,84,22,3,1,15,240,0,30,28, + 0,60,30,0,124,14,0,124,15,0,252,15,128,252,15,128, + 252,15,128,252,15,128,252,15,192,252,15,192,124,15,192,124, + 15,192,62,31,192,30,63,192,7,239,192,0,15,192,0,15, + 192,0,15,192,30,15,128,31,15,128,63,15,128,63,15,0, + 62,15,0,56,30,0,24,28,0,24,56,0,15,240,0,6, + 19,19,10,2,0,120,252,252,252,252,120,0,0,0,0,0, + 0,0,120,252,252,252,252,120,7,26,26,10,2,249,120,252, + 252,252,252,120,0,0,0,0,0,0,0,120,252,252,254,254, + 126,6,4,4,8,16,96,192,29,33,132,36,3,250,0,0, + 0,24,0,0,0,120,0,0,1,240,0,0,7,192,0,0, + 31,128,0,0,62,0,0,0,248,0,0,3,224,0,0,15, + 192,0,0,31,0,0,0,124,0,0,1,240,0,0,7,192, + 0,0,15,128,0,0,62,0,0,0,248,0,0,0,240,0, + 0,0,124,0,0,0,62,0,0,0,15,128,0,0,3,224, + 0,0,0,248,0,0,0,124,0,0,0,31,0,0,0,7, + 192,0,0,1,240,0,0,0,252,0,0,0,62,0,0,0, + 15,128,0,0,3,224,0,0,1,248,0,0,0,120,0,0, + 0,16,32,11,44,36,2,5,255,255,255,255,255,255,255,255, + 255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255, + 255,255,255,255,29,33,132,36,4,250,192,0,0,0,240,0, + 0,0,124,0,0,0,31,0,0,0,15,192,0,0,3,224, + 0,0,0,248,0,0,0,62,0,0,0,31,128,0,0,7, + 192,0,0,1,240,0,0,0,124,0,0,0,31,0,0,0, + 15,128,0,0,3,224,0,0,0,248,0,0,0,120,0,0, + 1,240,0,0,3,224,0,0,15,128,0,0,62,0,0,0, + 248,0,0,1,240,0,0,7,192,0,0,31,0,0,0,124, + 0,0,1,248,0,0,3,224,0,0,15,128,0,0,62,0, + 0,0,252,0,0,0,240,0,0,0,64,0,0,0,12,28, + 56,18,3,1,63,128,119,224,65,224,129,240,129,240,129,240, + 129,240,129,224,193,224,67,192,3,128,7,0,6,0,12,0, + 8,0,24,0,16,64,16,64,16,64,24,128,15,0,0,0, + 7,128,15,192,15,192,15,192,15,192,7,128,28,29,116,32, + 2,0,0,2,0,0,0,125,240,0,1,192,28,0,3,0, + 6,0,6,0,3,0,12,0,1,128,24,15,61,192,56,28, + 188,192,48,56,248,224,112,112,120,224,112,240,120,96,225,224, + 120,112,225,224,248,112,225,224,240,112,227,224,240,112,227,192, + 240,112,227,192,240,112,227,193,224,96,227,193,224,224,99,193, + 224,192,99,195,224,192,115,194,225,128,49,228,227,0,56,120, + 124,0,28,0,0,0,12,0,0,0,7,0,0,0,3,128, + 24,0,0,255,224,0,26,29,116,29,2,0,0,4,0,0, + 0,6,0,0,0,14,0,0,0,14,0,0,0,15,0,0, + 0,31,0,0,0,31,0,0,0,31,128,0,0,63,128,0, + 0,47,128,0,0,47,192,0,0,111,192,0,0,79,192,0, + 0,71,192,0,0,199,224,0,0,135,224,0,0,131,224,0, + 1,131,240,0,1,3,240,0,3,1,240,0,3,255,248,0, + 2,1,248,0,6,0,248,0,6,0,252,0,4,0,252,0, + 12,0,252,0,12,0,124,0,30,0,254,0,255,199,255,192, + 22,28,84,27,3,0,255,255,0,31,131,192,31,131,224,31, + 129,240,31,129,248,31,129,248,31,129,248,31,129,248,31,129, + 248,31,129,240,31,129,240,31,131,192,31,131,128,31,252,0, + 31,131,128,31,129,224,31,128,240,31,128,248,31,128,252,31, + 128,252,31,128,252,31,128,252,31,128,252,31,128,248,31,128, + 248,31,129,240,31,131,224,255,255,128,21,28,84,26,3,1, + 1,254,48,7,3,48,14,1,240,30,0,240,60,0,240,60, + 0,112,124,0,112,124,0,48,124,0,48,252,0,48,252,0, + 48,252,0,16,252,0,0,252,0,0,252,0,0,252,0,0, + 252,0,0,252,0,24,252,0,24,124,0,16,124,0,16,124, + 0,16,60,0,48,60,0,32,30,0,96,14,0,192,7,1, + 128,1,254,0,25,28,112,30,3,0,255,255,128,0,31,128, + 224,0,31,128,112,0,31,128,56,0,31,128,60,0,31,128, + 30,0,31,128,30,0,31,128,31,0,31,128,31,0,31,128, + 31,0,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,0,31,128,31,0,31,128,31,0,31,128, + 30,0,31,128,30,0,31,128,60,0,31,128,56,0,31,128, + 112,0,31,128,224,0,255,255,128,0,22,28,84,26,2,0, + 255,255,252,15,192,124,15,192,60,15,192,28,15,192,28,15, + 192,12,15,192,12,15,192,12,15,193,4,15,193,0,15,195, + 0,15,195,0,15,199,0,15,255,0,15,199,0,15,195,0, + 15,195,0,15,193,4,15,193,4,15,193,4,15,192,12,15, + 192,12,15,192,12,15,192,28,15,192,28,15,192,60,15,192, + 252,255,255,252,22,28,84,25,2,0,255,255,252,31,128,252, + 31,128,124,31,128,60,31,128,28,31,128,28,31,128,28,31, + 128,12,31,129,12,31,129,12,31,131,12,31,131,0,31,135, + 0,31,255,0,31,143,0,31,135,0,31,131,0,31,129,0, + 31,129,0,31,129,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,255,252,0,24,29, + 87,28,3,0,0,16,0,1,239,24,3,3,152,14,0,248, + 30,0,248,28,0,120,60,0,56,60,0,56,124,0,24,124, + 0,24,124,0,24,252,0,8,252,0,0,252,0,0,252,0, + 0,252,31,255,252,1,248,252,1,248,252,1,248,252,1,248, + 124,1,248,124,1,248,124,1,248,60,1,248,60,1,248,30, + 3,152,14,3,24,7,6,24,1,220,24,27,28,112,31,2, + 0,255,251,255,224,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,255,255,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,255,251,255, + 224,13,28,56,17,2,0,255,248,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,255,248,18, + 28,84,20,1,0,7,255,192,0,126,0,0,126,0,0,126, + 0,0,126,0,0,126,0,0,126,0,0,126,0,0,126,0, + 0,126,0,0,126,0,0,126,0,0,126,0,0,126,0,0, + 126,0,0,126,0,0,126,0,16,126,0,124,126,0,252,126, + 0,252,126,0,252,126,0,248,126,0,240,124,0,224,124,0, + 96,120,0,32,240,0,31,224,0,26,28,112,29,2,0,255, + 241,255,0,31,128,120,0,31,128,112,0,31,128,96,0,31, + 128,64,0,31,128,192,0,31,129,128,0,31,131,0,0,31, + 134,0,0,31,134,0,0,31,142,0,0,31,159,0,0,31, + 191,0,0,31,255,128,0,31,223,128,0,31,159,192,0,31, + 143,192,0,31,143,224,0,31,135,224,0,31,135,240,0,31, + 131,240,0,31,131,248,0,31,129,248,0,31,129,252,0,31, + 128,252,0,31,128,254,0,31,128,254,0,255,243,255,192,22, + 28,84,25,2,0,255,248,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,12,31,128,12,31,128,12,31,128, + 12,31,128,28,31,128,28,31,128,60,31,128,60,31,128,124, + 31,128,252,31,129,252,255,255,252,31,28,112,34,2,0,255, + 128,15,254,15,128,15,224,15,192,15,224,15,192,15,224,15, + 192,15,224,15,224,23,224,15,224,23,224,15,240,23,224,13, + 240,23,224,13,240,39,224,13,248,39,224,12,248,39,224,12, + 248,39,224,12,252,71,224,12,124,71,224,12,124,71,224,12, + 126,71,224,12,62,135,224,12,63,135,224,12,63,135,224,12, + 31,135,224,12,31,7,224,12,31,7,224,12,15,7,224,12, + 15,7,224,28,14,7,224,62,6,7,224,255,134,63,254,27, + 28,112,30,2,0,255,128,255,224,31,192,63,0,31,192,30, + 0,15,224,12,0,7,240,12,0,7,240,12,0,7,248,12, + 0,7,248,12,0,6,252,12,0,6,254,12,0,6,126,12, + 0,6,63,12,0,6,63,140,0,6,31,140,0,6,31,204, + 0,6,15,236,0,6,7,236,0,6,7,252,0,6,3,252, + 0,6,1,252,0,6,1,252,0,6,0,252,0,6,0,252, + 0,6,0,124,0,6,0,60,0,15,0,60,0,31,128,28, + 0,255,224,12,0,22,28,84,27,3,1,1,254,0,3,3, + 0,6,1,128,14,1,192,28,0,224,60,0,240,60,0,240, + 124,0,248,124,0,248,124,0,248,252,0,252,252,0,252,252, + 0,252,252,0,252,252,0,252,252,0,252,252,0,252,252,0, + 252,124,0,248,124,0,248,124,0,248,60,0,240,60,0,240, + 28,0,224,14,1,192,6,1,128,3,3,0,1,254,0,23, + 28,84,27,2,0,255,255,128,31,129,240,31,128,248,31,128, + 252,31,128,124,31,128,126,31,128,126,31,128,126,31,128,126, + 31,128,126,31,128,124,31,128,252,31,128,248,31,129,224,31, + 255,128,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,255,248,0,22,37,111,27,3,248,1, + 254,0,3,3,0,6,1,128,14,1,192,28,0,224,60,0, + 240,60,0,240,124,0,248,124,0,248,124,0,248,252,0,252, + 252,0,252,252,0,252,252,0,252,252,0,252,252,0,252,252, + 0,252,252,0,252,124,0,248,124,0,248,124,0,248,60,56, + 240,60,76,240,30,133,224,14,135,224,7,135,192,3,135,132, + 1,238,4,0,22,4,0,6,4,0,7,12,0,7,12,0, + 7,252,0,7,248,0,7,248,0,3,240,0,1,224,25,28, + 112,28,2,0,255,255,0,0,31,135,192,0,31,131,224,0, + 31,129,240,0,31,129,248,0,31,129,248,0,31,129,248,0, + 31,129,248,0,31,129,248,0,31,129,240,0,31,131,224,0, + 31,135,192,0,31,254,0,0,31,135,128,0,31,131,192,0, + 31,129,240,0,31,129,240,0,31,129,248,0,31,129,248,0, + 31,129,248,0,31,129,248,0,31,129,248,128,31,129,248,128, + 31,129,248,128,31,129,248,128,31,129,249,0,31,128,249,0, + 255,248,126,0,18,29,87,23,3,0,1,0,0,31,225,128, + 48,57,128,96,31,128,96,15,128,224,7,128,240,3,128,240, + 3,128,248,1,128,254,1,128,255,1,128,127,192,0,127,224, + 0,63,248,0,31,252,0,7,255,0,3,255,0,128,255,128, + 128,127,128,192,31,192,192,15,192,192,7,192,224,3,192,224, + 1,192,240,1,128,248,1,128,248,3,0,206,2,0,135,188, + 0,24,28,84,27,2,0,255,255,255,252,126,63,248,126,31, + 240,126,15,224,126,15,224,126,7,192,126,7,192,126,3,192, + 126,3,192,126,3,128,126,3,128,126,2,0,126,0,0,126, + 0,0,126,0,0,126,0,0,126,0,0,126,0,0,126,0, + 0,126,0,0,126,0,0,126,0,0,126,0,0,126,0,0, + 126,0,0,126,0,0,126,0,7,255,224,26,28,112,30,3, + 0,255,240,127,192,31,128,31,0,31,128,14,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,15,128,12,0,15,192,12, + 0,7,192,24,0,7,224,56,0,1,252,240,0,0,255,192, + 0,27,28,112,30,2,0,255,248,127,224,31,192,15,0,15, + 192,6,0,15,192,6,0,7,224,4,0,7,224,12,0,7, + 224,8,0,3,240,8,0,3,240,8,0,3,240,24,0,1, + 248,16,0,1,248,16,0,1,252,48,0,0,252,32,0,0, + 252,32,0,0,254,96,0,0,126,64,0,0,126,64,0,0, + 127,192,0,0,63,128,0,0,63,128,0,0,63,128,0,0, + 31,0,0,0,31,0,0,0,31,0,0,0,14,0,0,0, + 14,0,0,0,14,0,0,38,28,140,41,2,0,255,243,255, + 207,252,31,192,126,1,224,15,192,126,0,192,15,192,62,0, + 192,7,192,63,0,128,7,224,63,0,128,7,224,63,1,128, + 7,224,63,129,0,3,240,63,129,0,3,240,127,131,0,3, + 240,111,195,0,1,248,79,194,0,1,248,207,194,0,1,248, + 199,230,0,0,252,135,230,0,0,252,135,228,0,0,253,131, + 244,0,0,127,131,252,0,0,127,3,248,0,0,127,3,248, + 0,0,127,1,248,0,0,63,1,248,0,0,62,1,240,0, + 0,62,0,240,0,0,30,0,240,0,0,28,0,240,0,0, + 28,0,96,0,0,12,0,96,0,26,28,112,29,2,0,255, + 241,255,128,31,224,124,0,15,224,56,0,15,224,48,0,7, + 240,96,0,7,240,96,0,3,248,192,0,3,248,128,0,1, + 253,128,0,0,255,0,0,0,254,0,0,0,126,0,0,0, + 127,0,0,0,63,0,0,0,63,128,0,0,31,128,0,0, + 63,192,0,0,111,192,0,0,79,224,0,0,199,224,0,1, + 135,240,0,1,131,240,0,3,3,248,0,2,1,248,0,6, + 1,252,0,14,0,252,0,30,1,254,0,255,199,255,192,25, + 28,112,28,2,0,255,240,255,128,31,192,60,0,31,192,24, + 0,15,192,24,0,15,224,24,0,7,224,16,0,7,224,48, + 0,3,240,32,0,3,240,32,0,1,248,96,0,1,248,64, + 0,1,252,64,0,0,252,192,0,0,254,128,0,0,127,128, + 0,0,127,128,0,0,63,0,0,0,63,0,0,0,63,0, + 0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0, + 0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0, + 0,1,255,224,0,20,28,84,25,3,0,127,255,240,126,7, + 240,124,7,224,120,15,224,112,15,192,96,31,192,96,31,128, + 96,63,128,64,63,0,64,127,0,0,254,0,0,254,0,1, + 252,0,1,248,0,3,248,0,3,240,0,7,240,0,7,224, + 16,15,224,16,15,192,16,31,192,48,31,128,48,63,128,112, + 63,0,112,127,0,240,126,1,240,254,7,240,255,255,240,9, + 35,70,15,3,249,255,128,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,255,128,13,37,74,17,2, + 248,192,0,224,0,224,0,96,0,112,0,112,0,48,0,56, + 0,56,0,24,0,24,0,28,0,28,0,12,0,14,0,14, + 0,6,0,6,0,7,0,7,0,3,0,3,128,3,128,1, + 128,1,192,1,192,0,192,0,192,0,224,0,224,0,96,0, + 112,0,112,0,48,0,48,0,56,0,56,9,35,70,15,3, + 249,255,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,255,128,18,14,42,22,2,15,0,192,0, + 0,192,0,1,224,0,3,240,0,3,240,0,7,56,0,7, + 56,0,14,28,0,28,14,0,28,14,0,56,7,0,56,7, + 0,112,3,128,224,1,192,20,3,9,20,0,249,255,255,240, + 255,255,240,255,255,240,7,7,7,17,3,21,224,240,240,120, + 60,12,6,17,19,57,20,2,0,15,192,0,24,240,0,48, + 120,0,112,120,0,124,124,0,124,124,0,124,124,0,0,252, + 0,7,124,0,28,124,0,56,124,0,120,124,0,248,124,0, + 248,124,128,248,124,128,248,124,128,252,253,128,127,191,0,62, + 30,0,18,28,84,20,0,0,255,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,60,0,31,78,0,31,143,0,31,135,128,31, + 7,128,31,7,128,31,7,192,31,7,192,31,7,192,31,7, + 192,31,7,192,31,7,192,31,7,192,31,7,128,31,7,128, + 31,135,0,25,143,0,16,206,0,16,120,0,14,19,38,18, + 2,0,7,224,14,48,60,24,60,28,120,60,120,124,248,124, + 248,120,248,48,248,0,248,0,248,0,248,0,120,4,120,4, + 56,4,28,8,14,16,7,224,18,28,84,21,2,0,0,254, + 0,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,15,62,0,28,190,0,60, + 126,0,120,126,0,120,62,0,120,62,0,248,62,0,248,62, + 0,248,62,0,248,62,0,248,62,0,248,62,0,248,62,0, + 120,62,0,120,62,0,120,126,0,60,126,0,28,190,0,15, + 63,192,14,19,38,18,2,0,7,192,28,224,56,112,56,120, + 120,120,120,124,248,124,248,124,248,124,255,252,248,0,248,0, + 248,0,120,4,120,4,56,8,60,8,30,16,7,224,14,28, + 56,13,1,0,1,240,7,24,15,28,30,60,30,124,62,124, + 62,56,62,0,62,0,255,192,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,255,192,19,28,84,22, + 2,247,7,225,192,30,118,96,60,60,224,60,60,224,124,62, + 192,124,62,0,124,62,0,124,62,0,60,60,0,60,60,0, + 30,120,0,7,224,0,56,0,0,96,0,0,96,0,0,127, + 224,0,127,254,0,127,255,0,63,255,128,31,255,128,96,7, + 128,192,3,128,128,3,128,128,3,0,128,3,0,64,6,0, + 48,28,0,15,240,0,20,28,84,22,1,0,255,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,30,0,31,111,0,31,135,128, + 31,135,192,31,135,192,31,7,192,31,7,192,31,7,192,31, + 7,192,31,7,192,31,7,192,31,7,192,31,7,192,31,7, + 192,31,7,192,31,7,192,31,7,192,31,7,192,255,223,240, + 8,28,28,12,2,0,60,126,126,126,126,60,0,0,0,252, + 124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124, + 124,255,12,37,74,13,254,247,1,224,3,240,3,240,3,240, + 3,240,1,224,0,0,0,0,0,0,15,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,123,224,251,224,251,224,243,192,227,192,103,128, + 30,0,20,28,84,21,1,0,255,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,31,192,31,7,0,31,6,0,31,4,0,31, + 8,0,31,16,0,31,16,0,31,48,0,31,120,0,31,248, + 0,31,188,0,31,60,0,31,30,0,31,31,0,31,15,0, + 31,15,128,31,15,128,31,15,192,255,223,240,11,28,56,12, + 1,0,255,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,255,224,27,19,76,30,2,0, + 254,60,30,0,62,222,111,0,63,31,143,0,63,31,143,128, + 63,31,143,128,62,31,15,128,62,31,15,128,62,31,15,128, + 62,31,15,128,62,31,15,128,62,31,15,128,62,31,15,128, + 62,31,15,128,62,31,15,128,62,31,15,128,62,31,15,128, + 62,31,15,128,62,31,15,128,255,63,223,224,19,19,57,22, + 2,0,254,60,0,62,222,0,63,15,0,63,15,128,63,15, + 128,62,15,128,62,15,128,62,15,128,62,15,128,62,15,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 15,128,62,15,128,62,15,128,255,191,224,16,19,38,20,2, + 0,7,192,12,112,28,56,56,60,120,30,120,30,248,30,248, + 31,248,31,248,31,248,31,248,31,248,30,120,30,120,30,56, + 60,28,56,12,112,7,192,18,28,84,21,1,247,255,60,0, + 31,78,0,31,143,0,31,135,128,31,7,128,31,7,128,31, + 7,192,31,7,192,31,7,192,31,7,192,31,7,192,31,7, + 192,31,7,192,31,7,128,31,7,128,31,135,128,31,143,0, + 31,78,0,31,60,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,255,192, + 0,17,28,84,20,2,247,7,130,0,28,194,0,60,102,0, + 120,126,0,120,62,0,120,62,0,248,62,0,248,62,0,248, + 62,0,248,62,0,248,62,0,248,62,0,248,62,0,120,62, + 0,120,62,0,120,126,0,60,126,0,28,190,0,15,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,255,128,14,19,38,17,2, + 0,254,48,62,120,62,188,63,60,63,124,62,124,62,56,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,255,128,13,19,38,16,2,0,31,16,97, + 208,96,112,224,48,224,48,240,16,248,0,126,0,127,128,63, + 224,15,240,135,240,193,248,192,120,224,56,224,24,240,16,156, + 48,135,192,12,27,54,14,1,0,6,0,6,0,6,0,6, + 0,6,0,14,0,30,0,62,0,255,224,62,0,62,0,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,16,62, + 16,62,16,62,16,62,16,62,32,62,32,31,192,7,128,19, + 19,57,21,1,0,254,63,128,62,15,128,62,15,128,62,15, + 128,62,15,128,62,15,128,62,15,128,62,15,128,62,15,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 31,128,62,31,128,30,47,128,30,79,128,7,143,224,18,19, + 57,20,1,0,255,143,192,62,3,0,30,2,0,30,2,0, + 31,2,0,15,4,0,15,4,0,15,132,0,7,136,0,7, + 200,0,7,216,0,3,208,0,3,240,0,3,240,0,1,224, + 0,1,224,0,0,224,0,0,192,0,0,192,0,28,19,76, + 30,1,0,255,63,231,240,62,15,129,192,30,7,129,128,30, + 7,129,128,31,7,193,0,15,7,193,0,15,7,195,0,15, + 143,226,0,7,137,226,0,7,137,230,0,7,217,244,0,3, + 208,244,0,3,240,248,0,3,240,248,0,1,224,248,0,1, + 224,112,0,1,192,112,0,0,192,112,0,0,192,32,0,18, + 19,57,20,1,0,255,63,128,126,14,0,62,12,0,31,8, + 0,31,16,0,15,176,0,15,160,0,7,192,0,3,192,0, + 3,224,0,1,240,0,3,240,0,2,248,0,4,248,0,12, + 124,0,8,126,0,24,62,0,56,63,0,254,127,192,19,28, + 84,20,0,247,255,207,224,63,3,128,31,3,0,31,2,0, + 15,2,0,15,130,0,15,130,0,7,196,0,7,196,0,3, + 196,0,3,232,0,3,232,0,1,248,0,1,248,0,0,240, + 0,0,240,0,0,112,0,0,96,0,0,96,0,0,32,0, + 0,64,0,12,64,0,30,64,0,62,64,0,62,128,0,60, + 128,0,29,0,0,14,0,0,14,19,38,17,1,0,127,252, + 120,124,112,248,96,248,65,240,65,224,67,224,3,192,7,192, + 7,128,15,128,31,4,31,4,62,4,62,12,124,12,120,28, + 248,60,255,252,12,35,70,16,2,249,1,240,7,128,15,0, + 15,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,30,0,30,0,56,0,224,0,56,0, + 30,0,30,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,15,0,15,0,7,128,1,240, + 3,36,36,11,4,248,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,12,37,74,16,2,248, + 128,0,240,0,28,0,15,0,15,0,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 7,128,3,192,0,112,3,192,7,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,0,15,0,28,0,248,0,128,0,21,8,24,25,2,6, + 62,0,48,127,192,16,255,240,8,135,252,8,129,255,24,128, + 127,248,192,31,240,96,3,224,255}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--48-480-72-72-P-258-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 35, '1' Height: 34 + Calculated Max Values w=49 h=46 x= 9 y=28 dx=52 dy= 0 ascent=45 len=246 + Font Bounding box w=133 h=60 x=-41 y=-14 + Calculated Min Values x=-2 y=-12 dx= 0 dy= 0 + Pure Font ascent =35 descent=-10 + X Font ascent =35 descent=-10 + Max Font ascent =45 descent=-12 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb35[22095] U8G_SECTION(".progmem.u8g_font_osb35") = { + 0,133,60,215,242,35,12,218,29,222,32,255,246,45,244,35, + 246,0,0,0,13,0,0,8,34,34,14,3,1,126,126,255, + 255,255,255,255,255,126,126,126,126,60,60,60,60,60,24,24, + 24,24,24,24,24,24,0,0,0,126,255,255,255,255,126,12, + 12,24,18,3,23,32,64,241,224,249,240,249,240,249,240,249, + 240,249,240,112,224,112,224,112,224,112,224,112,224,28,34,136, + 34,3,0,0,112,14,0,0,112,14,0,0,112,14,0,0, + 112,14,0,0,240,30,0,0,224,28,0,0,224,28,0,0, + 224,28,0,0,224,28,0,255,255,255,240,255,255,255,240,255, + 255,255,240,1,192,56,0,1,192,56,0,1,192,56,0,1, + 192,56,0,3,192,56,0,3,128,120,0,3,128,112,0,3, + 128,112,0,3,128,112,0,3,128,112,0,255,255,255,224,255, + 255,255,224,255,255,255,224,7,0,224,0,7,0,224,0,7, + 0,224,0,7,0,224,0,15,1,224,0,14,1,224,0,14, + 1,192,0,14,1,192,0,14,1,192,0,23,42,126,28,2, + 252,0,195,0,0,195,0,0,195,0,0,195,0,3,255,192, + 7,195,112,28,195,24,60,195,12,56,195,14,120,195,14,120, + 195,30,120,195,62,124,195,126,126,195,126,127,195,124,127,195, + 56,63,243,0,63,251,0,31,255,0,31,255,128,7,255,192, + 3,255,240,0,255,248,0,255,248,0,223,252,0,199,252,124, + 195,254,124,195,254,252,195,126,252,195,62,248,195,30,240,195, + 30,224,195,28,96,195,28,112,195,56,56,195,56,28,195,96, + 7,255,192,0,195,0,0,195,0,0,195,0,0,195,0,33, + 35,175,41,4,0,0,0,0,48,0,15,192,0,96,0,60, + 240,0,224,0,56,112,0,192,0,120,120,1,128,0,120,120, + 1,128,0,248,124,3,0,0,248,124,7,0,0,248,124,6, + 0,0,248,124,14,0,0,248,124,12,0,0,248,124,24,0, + 0,120,120,24,0,0,120,120,48,0,0,56,240,112,0,0, + 28,224,96,0,0,15,192,192,0,0,0,0,192,0,0,0, + 1,128,240,0,0,3,131,156,0,0,3,7,158,0,0,7, + 15,15,0,0,6,15,15,0,0,12,31,15,128,0,12,31, + 15,128,0,24,31,15,128,0,56,31,15,128,0,48,31,15, + 128,0,96,31,15,128,0,96,31,15,128,0,192,15,15,0, + 1,192,15,15,0,1,128,7,14,0,3,128,7,158,0,3, + 0,1,248,0,33,34,170,37,2,1,0,31,224,0,0,0, + 112,112,0,0,0,224,48,0,0,0,224,24,0,0,1,224, + 24,0,0,1,224,24,0,0,1,224,24,0,0,1,240,56, + 0,0,1,240,48,0,0,1,248,96,0,0,1,248,192,0, + 0,0,255,128,0,0,0,255,0,0,0,0,126,0,0,0, + 0,63,0,0,0,0,255,129,255,128,1,223,128,62,0,3, + 143,192,28,0,7,15,224,24,0,14,7,224,56,0,30,3, + 240,48,0,60,1,248,48,0,124,1,248,96,0,124,0,252, + 96,0,252,0,126,192,0,252,0,127,128,0,252,0,63,128, + 0,254,0,31,128,0,255,0,31,128,0,255,0,15,193,128, + 127,192,63,225,0,63,248,247,243,0,31,255,195,254,0,15, + 254,0,252,0,5,12,12,11,3,23,32,240,248,248,248,248, + 248,112,112,112,112,112,14,43,86,18,3,248,0,28,0,56, + 0,112,0,224,1,192,3,128,7,0,15,0,14,0,30,0, + 30,0,60,0,60,0,124,0,124,0,124,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 124,0,124,0,124,0,124,0,60,0,60,0,30,0,30,0, + 14,0,15,0,7,0,3,128,1,192,0,224,0,112,0,56, + 0,12,13,43,86,17,1,248,192,0,224,0,48,0,24,0, + 28,0,14,0,7,0,7,128,3,128,3,192,1,224,1,224, + 1,224,1,240,1,240,1,240,1,248,1,248,1,248,1,248, + 1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,240, + 1,240,1,240,1,224,1,224,3,192,3,192,3,128,7,128, + 7,0,14,0,28,0,56,0,112,0,224,0,128,0,17,19, + 57,24,4,13,1,128,0,3,192,0,3,192,0,227,195,0, + 241,135,128,248,143,128,252,159,128,126,191,0,3,192,0,3, + 192,0,126,191,0,252,159,128,248,143,128,241,135,128,225,195, + 0,3,192,0,3,192,0,3,192,0,1,128,0,41,41,246, + 45,2,249,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,255,255,255,255,255,128,255,255,255,255,255, + 128,255,255,255,255,255,128,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,9,15,30,13,2,248,126, + 0,255,0,255,128,255,128,255,128,127,128,1,128,1,128,1, + 128,3,0,2,0,6,0,28,0,56,0,96,0,12,5,10, + 18,3,10,255,240,255,240,255,240,255,240,255,240,8,6,6, + 14,3,1,126,255,255,255,255,126,16,44,88,22,3,247,0, + 7,0,15,0,14,0,14,0,14,0,30,0,28,0,28,0, + 60,0,56,0,56,0,120,0,112,0,112,0,240,0,224,0, + 224,0,224,1,224,1,192,1,192,3,192,3,128,3,128,7, + 128,7,0,7,0,15,0,14,0,14,0,14,0,30,0,28, + 0,28,0,60,0,56,0,56,0,120,0,112,0,112,0,240, + 0,224,0,224,0,224,0,23,35,105,28,2,0,0,16,0, + 0,254,0,3,199,128,7,131,192,15,1,224,15,1,224,31, + 1,240,63,1,248,63,1,248,127,1,248,127,1,252,127,1, + 252,127,1,252,255,1,254,255,1,254,255,1,254,255,1,254, + 255,1,254,255,1,254,255,1,254,255,1,254,255,1,254,255, + 1,254,127,1,252,127,1,252,127,1,252,127,1,252,63,1, + 248,63,1,248,31,1,240,15,1,224,15,1,224,7,131,192, + 3,199,128,0,254,0,16,34,68,28,6,0,0,240,0,240, + 1,240,7,240,255,240,7,240,7,240,7,240,7,240,7,240, + 7,240,7,240,7,240,7,240,7,240,7,240,7,240,7,240, + 7,240,7,240,7,240,7,240,7,240,7,240,7,240,7,240, + 7,240,7,240,7,240,7,240,7,240,7,240,255,255,255,255, + 21,34,102,28,3,1,7,255,0,14,15,192,28,7,224,56, + 7,240,120,3,240,120,3,248,248,3,248,252,3,248,255,3, + 248,255,3,248,255,7,248,127,7,240,63,15,240,12,15,224, + 0,31,192,0,63,128,0,127,0,0,252,0,1,240,0,3, + 192,0,7,128,0,14,0,24,12,0,24,24,0,24,48,0, + 24,96,0,24,111,192,56,127,255,248,255,255,240,239,255,240, + 195,255,240,193,255,224,192,255,192,192,63,128,22,34,102,28, + 3,1,7,255,0,14,15,192,28,7,224,56,7,240,120,3, + 240,124,3,248,126,3,248,127,3,248,127,3,248,127,3,248, + 63,3,240,30,3,240,0,7,224,0,7,192,0,15,0,7, + 248,0,0,31,128,0,15,192,0,7,224,0,7,240,0,3, + 248,0,3,248,62,3,252,127,3,252,255,3,252,255,3,252, + 255,3,252,254,3,252,252,3,248,248,7,248,120,7,240,56, + 15,224,30,31,192,15,255,0,23,34,102,28,2,0,0,7, + 192,0,15,192,0,15,192,0,31,192,0,63,192,0,63,192, + 0,127,192,0,127,192,0,255,192,0,223,192,1,223,192,1, + 159,192,3,159,192,7,31,192,6,31,192,14,31,192,12,31, + 192,28,31,192,24,31,192,56,31,192,112,31,192,96,31,192, + 224,31,192,255,255,254,0,31,192,0,31,192,0,31,192,0, + 31,192,0,31,192,0,31,192,0,31,192,0,31,192,7,255, + 252,7,255,252,21,34,102,28,4,0,32,0,192,60,7,128, + 63,255,128,63,255,0,63,254,0,63,248,0,63,224,0,63, + 0,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 0,49,252,0,54,63,0,60,15,192,56,15,224,48,15,224, + 32,7,240,0,7,240,0,7,248,0,7,248,8,7,248,62, + 7,248,126,7,248,254,7,248,254,7,248,254,7,240,248,7, + 240,240,7,224,112,15,192,48,15,192,28,31,0,15,252,0, + 22,34,102,28,3,1,0,255,128,3,192,192,7,192,96,15, + 128,240,31,131,240,31,7,240,63,15,240,63,15,240,127,15, + 224,127,7,192,127,3,0,127,0,0,255,0,0,255,0,0, + 255,63,0,255,255,192,255,195,224,255,131,240,255,3,248,255, + 1,248,255,1,252,255,1,252,255,1,252,127,1,252,127,1, + 252,127,1,252,127,1,252,63,1,248,63,1,248,31,1,248, + 15,129,240,7,131,224,3,195,192,1,255,0,20,34,102,28, + 5,1,71,224,224,207,240,224,223,248,112,255,252,48,255,254, + 48,255,255,240,255,255,240,224,31,176,192,0,32,192,0,96, + 128,0,96,128,0,192,128,1,192,0,1,128,0,3,128,0, + 7,0,0,15,0,0,14,0,0,30,0,0,60,0,0,124, + 0,0,252,0,1,252,0,1,248,0,3,248,0,3,248,0, + 7,248,0,7,248,0,7,248,0,7,248,0,7,248,0,7, + 248,0,3,248,0,3,240,0,23,34,102,28,3,1,1,255, + 128,7,0,192,12,0,96,28,0,48,56,0,24,56,0,24, + 120,0,24,120,0,24,124,0,24,126,0,24,127,0,48,127, + 192,32,127,240,96,63,255,128,63,255,0,31,255,192,15,255, + 240,7,255,248,15,255,248,24,63,252,48,15,252,112,3,254, + 96,0,254,224,0,126,224,0,62,224,0,30,224,0,30,224, + 0,12,240,0,28,112,0,24,56,0,24,28,0,48,15,0, + 192,3,255,0,22,34,102,28,3,1,3,254,0,15,15,0, + 31,7,128,62,7,192,126,3,224,126,3,240,126,3,240,254, + 3,248,254,3,248,254,3,248,254,3,248,254,3,252,254,3, + 252,254,3,252,126,3,252,127,7,252,63,7,252,31,15,252, + 15,255,252,3,243,252,0,3,252,0,3,252,0,3,248,7, + 3,248,31,131,248,31,195,248,63,195,240,63,195,240,63,131, + 224,62,7,224,60,7,192,28,15,128,14,31,0,7,252,0, + 8,22,22,14,3,1,126,255,255,255,255,126,0,0,0,0, + 0,0,0,0,0,0,126,255,255,255,255,126,9,31,62,13, + 2,248,63,0,127,128,127,128,127,128,127,128,63,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,126,0,255,0,255,128,255,128,255,128,127,128,1,128, + 1,128,1,128,3,0,3,0,6,0,28,0,56,0,96,0, + 37,40,200,45,4,249,0,0,0,0,48,0,0,0,0,240, + 0,0,0,1,248,0,0,0,7,224,0,0,0,31,128,0, + 0,0,126,0,0,0,1,252,0,0,0,7,240,0,0,0, + 15,192,0,0,0,63,0,0,0,0,252,0,0,0,3,240, + 0,0,0,15,224,0,0,0,63,128,0,0,0,126,0,0, + 0,1,248,0,0,0,7,224,0,0,0,31,128,0,0,0, + 127,0,0,0,0,252,0,0,0,0,248,0,0,0,0,126, + 0,0,0,0,31,128,0,0,0,15,224,0,0,0,3,248, + 0,0,0,0,252,0,0,0,0,63,0,0,0,0,15,192, + 0,0,0,3,240,0,0,0,1,252,0,0,0,0,127,0, + 0,0,0,31,192,0,0,0,7,224,0,0,0,1,248,0, + 0,0,0,126,0,0,0,0,63,128,0,0,0,15,224,0, + 0,0,3,248,0,0,0,0,248,0,0,0,0,48,41,13, + 78,45,2,6,255,255,255,255,255,128,255,255,255,255,255,128, + 255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 255,255,255,255,255,128,255,255,255,255,255,128,255,255,255,255, + 255,128,37,40,200,45,4,249,96,0,0,0,0,120,0,0, + 0,0,252,0,0,0,0,63,0,0,0,0,15,192,0,0, + 0,3,240,0,0,0,1,252,0,0,0,0,127,0,0,0, + 0,31,128,0,0,0,7,224,0,0,0,1,248,0,0,0, + 0,126,0,0,0,0,63,128,0,0,0,15,224,0,0,0, + 3,240,0,0,0,0,252,0,0,0,0,63,0,0,0,0, + 15,192,0,0,0,7,240,0,0,0,1,248,0,0,0,0, + 248,0,0,0,3,240,0,0,0,15,192,0,0,0,63,128, + 0,0,0,254,0,0,0,1,248,0,0,0,7,224,0,0, + 0,31,128,0,0,0,126,0,0,0,1,252,0,0,0,7, + 240,0,0,0,31,192,0,0,0,63,0,0,0,0,252,0, + 0,0,3,240,0,0,0,15,224,0,0,0,63,128,0,0, + 0,254,0,0,0,0,248,0,0,0,0,96,0,0,0,0, + 15,34,68,22,3,1,31,240,59,248,96,252,96,252,192,126, + 192,126,192,126,192,126,192,126,64,252,96,252,48,248,1,240, + 1,224,3,192,3,128,7,0,7,0,14,0,12,16,12,16, + 12,16,12,16,6,32,3,192,0,0,0,0,0,128,3,224, + 7,240,7,240,7,240,7,240,3,224,35,34,170,39,2,1, + 0,15,255,0,0,0,56,1,224,0,0,224,0,112,0,1, + 128,0,28,0,7,0,0,14,0,14,0,0,7,0,12,0, + 248,3,0,28,3,205,243,128,56,7,135,241,128,56,15,7, + 225,192,112,31,7,225,192,112,62,7,224,224,112,62,7,224, + 224,224,124,7,192,224,224,124,7,192,224,224,124,7,192,224, + 224,252,15,192,224,224,248,15,128,224,224,248,15,128,224,224, + 248,15,129,192,224,248,31,129,192,224,248,31,129,128,112,248, + 31,3,128,112,248,63,3,0,112,120,111,6,0,56,60,199, + 140,0,56,31,3,240,0,28,0,0,0,0,14,0,0,0, + 0,7,0,0,0,0,3,128,0,0,0,1,192,0,96,0, + 0,120,1,192,0,0,31,255,0,0,33,35,175,36,2,0, + 0,0,192,0,0,0,1,192,0,0,0,1,224,0,0,0, + 1,224,0,0,0,3,224,0,0,0,3,240,0,0,0,3, + 240,0,0,0,7,240,0,0,0,7,248,0,0,0,7,248, + 0,0,0,15,248,0,0,0,15,252,0,0,0,15,252,0, + 0,0,25,252,0,0,0,25,254,0,0,0,25,254,0,0, + 0,48,254,0,0,0,48,255,0,0,0,32,255,0,0,0, + 96,127,0,0,0,96,127,128,0,0,64,127,128,0,0,192, + 63,128,0,0,192,63,192,0,0,255,255,192,0,1,255,255, + 192,0,1,128,31,224,0,1,0,31,224,0,3,0,15,224, + 0,3,0,15,240,0,2,0,15,240,0,6,0,7,240,0, + 15,0,7,248,0,31,0,15,252,0,255,240,255,255,128,28, + 34,136,33,3,0,255,255,240,0,15,224,126,0,15,224,31, + 0,15,224,31,128,15,224,15,192,15,224,15,192,15,224,15, + 224,15,224,15,224,15,224,15,224,15,224,15,224,15,224,15, + 224,15,224,15,192,15,224,15,192,15,224,31,128,15,224,30, + 0,15,224,60,0,15,255,224,0,15,224,124,0,15,224,63, + 0,15,224,31,128,15,224,15,192,15,224,15,224,15,224,15, + 240,15,224,15,240,15,224,15,240,15,224,15,240,15,224,15, + 240,15,224,15,240,15,224,15,224,15,224,15,224,15,224,31, + 192,15,224,31,128,15,224,126,0,255,255,248,0,26,34,136, + 31,3,1,0,127,193,128,1,224,241,128,3,192,63,128,15, + 128,31,128,15,128,15,128,31,0,15,128,63,0,7,128,63, + 0,7,128,127,0,3,128,127,0,3,128,127,0,3,128,127, + 0,1,128,255,0,1,128,255,0,1,128,255,0,1,128,255, + 0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255, + 0,0,0,255,0,0,0,255,0,0,192,127,0,0,192,127, + 0,0,192,127,0,0,128,63,0,1,128,63,0,1,128,63, + 0,1,128,31,128,3,0,15,128,3,0,7,128,6,0,3, + 192,12,0,1,224,56,0,0,127,224,0,32,34,136,37,3, + 0,255,255,248,0,15,224,31,0,15,224,7,128,15,224,3, + 224,15,224,1,240,15,224,1,240,15,224,0,248,15,224,0, + 252,15,224,0,252,15,224,0,254,15,224,0,254,15,224,0, + 254,15,224,0,255,15,224,0,255,15,224,0,255,15,224,0, + 255,15,224,0,255,15,224,0,255,15,224,0,255,15,224,0, + 255,15,224,0,255,15,224,0,254,15,224,0,254,15,224,0, + 254,15,224,0,254,15,224,0,252,15,224,0,252,15,224,0, + 248,15,224,1,240,15,224,1,224,15,224,3,192,15,224,7, + 128,15,224,30,0,255,255,248,0,27,34,136,33,3,0,255, + 255,255,224,15,224,31,224,15,224,7,224,15,224,3,224,15, + 224,1,224,15,224,1,224,15,224,0,224,15,224,0,224,15, + 224,0,96,15,224,48,96,15,224,48,96,15,224,48,0,15, + 224,112,0,15,224,112,0,15,224,240,0,15,225,240,0,15, + 255,240,0,15,225,240,0,15,224,240,0,15,224,112,0,15, + 224,112,32,15,224,48,96,15,224,48,96,15,224,48,96,15, + 224,0,96,15,224,0,96,15,224,0,224,15,224,0,224,15, + 224,1,224,15,224,3,224,15,224,3,224,15,224,15,224,255, + 255,255,224,255,255,255,224,28,34,136,32,3,0,255,255,255, + 240,7,240,15,240,7,240,3,240,7,240,1,240,7,240,1, + 240,7,240,0,240,7,240,0,240,7,240,0,112,7,240,0, + 112,7,240,24,48,7,240,24,48,7,240,24,48,7,240,56, + 48,7,240,56,0,7,240,120,0,7,240,248,0,7,255,248, + 0,7,240,248,0,7,240,120,0,7,240,56,0,7,240,56, + 0,7,240,24,0,7,240,24,0,7,240,24,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,255,255,128,0,30,34,136,35,3,1,0,127,224,192,0, + 224,120,192,3,192,31,192,7,128,15,192,15,128,7,192,31, + 0,7,192,31,0,3,192,63,0,3,192,63,0,1,192,127, + 0,1,192,127,0,1,192,127,0,0,192,255,0,0,192,255, + 0,0,192,255,0,0,0,255,0,0,0,255,0,0,0,255, + 3,255,252,255,3,255,252,255,0,31,192,255,0,31,192,255, + 0,31,192,127,0,31,192,127,0,31,192,127,0,31,192,127, + 0,31,192,63,0,31,192,63,0,31,192,31,0,31,192,15, + 128,57,192,15,128,49,192,7,192,96,192,1,224,192,192,0, + 127,128,192,34,34,170,39,3,0,255,255,63,255,192,7,240, + 1,252,0,7,240,1,252,0,7,240,1,252,0,7,240,1, + 252,0,7,240,1,252,0,7,240,1,252,0,7,240,1,252, + 0,7,240,1,252,0,7,240,1,252,0,7,240,1,252,0, + 7,240,1,252,0,7,240,1,252,0,7,240,1,252,0,7, + 240,1,252,0,7,240,1,252,0,7,255,255,252,0,7,240, + 1,252,0,7,240,1,252,0,7,240,1,252,0,7,240,1, + 252,0,7,240,1,252,0,7,240,1,252,0,7,240,1,252, + 0,7,240,1,252,0,7,240,1,252,0,7,240,1,252,0, + 7,240,1,252,0,7,240,1,252,0,7,240,1,252,0,7, + 240,1,252,0,7,240,1,252,0,7,240,1,252,0,255,255, + 63,255,192,16,34,68,21,3,0,255,255,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,255,255,23,34,102, + 26,2,0,1,255,254,0,15,224,0,15,224,0,15,224,0, + 15,224,0,15,224,0,15,224,0,15,224,0,15,224,0,15, + 224,0,15,224,0,15,224,0,15,224,0,15,224,0,15,224, + 0,15,224,0,15,224,0,15,224,0,15,224,0,15,224,0, + 15,224,30,15,224,126,15,224,127,15,224,255,15,224,255,15, + 224,254,15,224,254,15,224,248,15,192,112,15,192,96,15,128, + 48,31,0,24,30,0,15,248,0,33,34,170,37,3,0,255, + 255,31,254,0,7,240,7,240,0,7,240,3,192,0,7,240, + 3,128,0,7,240,3,0,0,7,240,7,0,0,7,240,14, + 0,0,7,240,12,0,0,7,240,24,0,0,7,240,48,0, + 0,7,240,96,0,0,7,240,224,0,0,7,240,224,0,0, + 7,241,240,0,0,7,243,240,0,0,7,247,248,0,0,7, + 255,252,0,0,7,255,252,0,0,7,249,254,0,0,7,241, + 254,0,0,7,240,255,0,0,7,240,255,0,0,7,240,127, + 128,0,7,240,127,128,0,7,240,63,192,0,7,240,63,192, + 0,7,240,31,224,0,7,240,31,224,0,7,240,15,240,0, + 7,240,15,240,0,7,240,7,248,0,7,240,7,248,0,7, + 240,7,252,0,255,255,63,255,128,28,34,136,32,3,0,255, + 255,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,48,7, + 240,0,48,7,240,0,48,7,240,0,112,7,240,0,112,7, + 240,0,112,7,240,0,240,7,240,0,240,7,240,0,240,7, + 240,1,240,7,240,3,240,7,240,3,240,7,240,7,240,255, + 255,255,240,255,255,255,240,39,34,170,43,2,0,255,240,0, + 63,254,7,240,0,63,192,7,248,0,63,192,7,248,0,63, + 192,7,248,0,127,192,7,252,0,127,192,7,252,0,95,192, + 7,252,0,95,192,7,254,0,223,192,6,254,0,223,192,6, + 255,0,159,192,6,127,0,159,192,6,127,1,159,192,6,127, + 129,159,192,6,63,129,31,192,6,63,129,31,192,6,63,195, + 31,192,6,31,194,31,192,6,31,226,31,192,6,15,226,31, + 192,6,15,230,31,192,6,15,244,31,192,6,7,244,31,192, + 6,7,244,31,192,6,7,252,31,192,6,3,248,31,192,6, + 3,248,31,192,6,1,248,31,192,6,1,248,31,192,6,1, + 240,31,192,6,0,240,31,192,15,0,240,31,192,63,192,240, + 31,192,255,240,97,255,254,34,35,175,37,2,255,255,224,15, + 255,192,31,240,3,255,0,15,240,0,252,0,15,248,0,120, + 0,7,252,0,48,0,3,254,0,48,0,3,254,0,48,0, + 3,255,0,48,0,3,255,128,48,0,3,255,128,48,0,3, + 127,192,48,0,3,63,224,48,0,3,31,224,48,0,3,31, + 240,48,0,3,15,248,48,0,3,7,248,48,0,3,7,252, + 48,0,3,3,254,48,0,3,1,255,48,0,3,1,255,48, + 0,3,0,255,176,0,3,0,127,240,0,3,0,127,240,0, + 3,0,63,240,0,3,0,31,240,0,3,0,15,240,0,3, + 0,15,240,0,3,0,7,240,0,3,0,3,240,0,3,0, + 3,240,0,7,128,1,240,0,15,192,0,240,0,63,240,0, + 240,0,255,252,0,112,0,0,0,0,48,0,28,34,136,33, + 3,1,0,63,192,0,0,224,112,0,3,192,56,0,7,128, + 30,0,15,128,30,0,15,0,15,0,31,0,15,128,63,0, + 15,192,63,0,15,192,127,0,15,192,127,0,15,224,127,0, + 15,224,127,0,15,224,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,127,0,15,224,127,0,15,224,127,0, + 15,224,127,0,15,192,63,0,15,192,63,0,15,192,31,0, + 15,128,15,0,15,0,15,128,31,0,7,128,30,0,3,192, + 60,0,0,224,112,0,0,63,192,0,29,34,136,34,3,0, + 255,255,248,0,7,240,63,0,7,240,15,192,7,240,15,224, + 7,240,15,240,7,240,7,240,7,240,7,248,7,240,7,248, + 7,240,7,248,7,240,7,248,7,240,7,248,7,240,7,248, + 7,240,7,240,7,240,15,240,7,240,15,224,7,240,15,192, + 7,240,31,0,7,255,252,0,7,240,0,0,7,240,0,0, + 7,240,0,0,7,240,0,0,7,240,0,0,7,240,0,0, + 7,240,0,0,7,240,0,0,7,240,0,0,7,240,0,0, + 7,240,0,0,7,240,0,0,7,240,0,0,7,240,0,0, + 7,240,0,0,255,255,128,0,28,45,180,33,3,246,0,63, + 192,0,0,224,112,0,3,192,56,0,7,128,30,0,15,128, + 30,0,15,0,15,0,31,0,15,128,63,0,15,128,63,0, + 15,192,127,0,15,192,127,0,15,224,127,0,15,224,127,0, + 15,224,255,0,15,240,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,127,0,15,224,127,0,15,224,127,0, + 15,224,63,0,15,192,63,15,15,192,31,17,143,128,15,160, + 223,0,15,160,223,0,7,160,254,0,3,224,252,16,0,240, + 248,16,0,127,224,16,0,0,224,16,0,0,224,16,0,0, + 224,48,0,0,240,48,0,0,248,112,0,0,255,240,0,0, + 255,224,0,0,127,224,0,0,127,192,0,0,63,128,0,0, + 31,0,32,36,144,36,3,254,255,255,240,0,7,240,126,0, + 7,240,63,0,7,240,63,128,7,240,31,192,7,240,31,192, + 7,240,31,224,7,240,31,224,7,240,31,224,7,240,31,224, + 7,240,31,224,7,240,31,192,7,240,63,192,7,240,63,0, + 7,240,126,0,7,255,240,0,7,240,240,0,7,240,62,0, + 7,240,63,0,7,240,31,128,7,240,31,128,7,240,31,192, + 7,240,31,192,7,240,31,192,7,240,31,192,7,240,31,195, + 7,240,31,195,7,240,31,195,7,240,31,195,7,240,31,195, + 7,240,31,198,7,240,31,198,7,240,15,238,255,255,135,252, + 0,0,3,248,0,0,0,96,23,34,102,29,4,1,7,252, + 24,24,15,24,56,3,248,112,1,248,112,0,248,240,0,120, + 248,0,120,248,0,56,252,0,24,254,0,24,255,128,24,255, + 224,8,127,240,0,127,252,0,63,254,0,31,255,128,15,255, + 192,3,255,240,1,255,248,128,127,248,192,31,252,192,15,252, + 192,3,254,224,1,254,224,0,126,224,0,62,240,0,30,248, + 0,30,248,0,28,252,0,28,254,0,24,239,0,48,195,128, + 96,193,255,128,29,34,136,34,3,0,255,255,255,248,255,63, + 231,248,252,31,193,248,248,31,192,248,248,31,192,248,240,31, + 192,120,224,31,192,56,224,31,192,56,224,31,192,56,192,31, + 192,24,192,31,192,24,192,31,192,24,192,31,192,24,128,31, + 192,8,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,3,255, + 254,0,33,34,170,38,3,0,255,255,7,255,128,15,224,1, + 254,0,15,224,0,120,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,15,224,0,48,0,15, + 224,0,48,0,15,224,0,48,0,15,224,0,48,0,15,224, + 0,48,0,15,224,0,48,0,15,224,0,48,0,15,224,0, + 48,0,15,224,0,48,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,7,224,0,48,0,7, + 224,0,96,0,7,240,0,96,0,3,240,0,192,0,1,248, + 1,192,0,0,252,3,128,0,0,127,159,0,0,0,31,252, + 0,0,34,34,170,37,2,0,255,255,135,255,192,15,248,0, + 126,0,7,248,0,56,0,7,248,0,56,0,3,248,0,48, + 0,3,252,0,48,0,3,252,0,48,0,1,254,0,96,0, + 1,254,0,96,0,0,254,0,96,0,0,255,0,192,0,0, + 255,0,192,0,0,127,0,192,0,0,127,129,128,0,0,127, + 129,128,0,0,63,129,128,0,0,63,195,0,0,0,63,195, + 0,0,0,31,195,0,0,0,31,230,0,0,0,15,230,0, + 0,0,15,246,0,0,0,15,252,0,0,0,7,252,0,0, + 0,7,252,0,0,0,7,248,0,0,0,3,248,0,0,0, + 3,248,0,0,0,3,240,0,0,0,1,240,0,0,0,1, + 240,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224, + 0,0,49,34,238,52,2,0,255,255,63,255,207,255,128,31, + 252,7,254,0,252,0,7,248,3,252,0,112,0,7,248,1, + 252,0,112,0,3,248,1,254,0,96,0,3,252,1,254,0, + 96,0,3,252,0,254,0,96,0,1,252,0,254,0,192,0, + 1,254,1,255,0,192,0,1,254,1,255,0,192,0,0,254, + 1,255,1,128,0,0,255,3,127,129,128,0,0,255,3,63, + 129,128,0,0,127,3,63,129,128,0,0,127,135,63,195,0, + 0,0,127,134,31,195,0,0,0,63,134,31,195,0,0,0, + 63,198,31,231,0,0,0,31,204,15,230,0,0,0,31,204, + 15,230,0,0,0,31,236,15,246,0,0,0,15,248,7,252, + 0,0,0,15,248,7,252,0,0,0,15,248,7,252,0,0, + 0,7,248,3,252,0,0,0,7,240,3,248,0,0,0,7, + 240,3,248,0,0,0,3,240,1,248,0,0,0,3,224,1, + 240,0,0,0,3,224,1,240,0,0,0,1,224,0,240,0, + 0,0,1,192,0,240,0,0,0,1,192,0,224,0,0,0, + 0,192,0,96,0,0,33,34,170,36,2,0,127,255,31,254, + 0,31,252,3,240,0,7,248,3,192,0,3,248,3,128,0, + 3,252,3,128,0,1,252,3,0,0,1,254,7,0,0,0, + 255,6,0,0,0,255,12,0,0,0,127,140,0,0,0,127, + 152,0,0,0,63,240,0,0,0,63,240,0,0,0,31,224, + 0,0,0,31,224,0,0,0,15,240,0,0,0,15,248,0, + 0,0,7,248,0,0,0,7,252,0,0,0,7,252,0,0, + 0,15,254,0,0,0,29,254,0,0,0,24,255,0,0,0, + 56,255,0,0,0,48,127,128,0,0,96,127,128,0,0,224, + 63,192,0,0,192,63,224,0,1,128,31,224,0,3,128,31, + 240,0,3,128,15,240,0,7,128,15,248,0,31,128,31,252, + 0,255,240,127,255,128,32,34,136,35,2,0,255,254,15,255, + 31,248,1,248,15,248,0,240,7,248,0,224,7,248,0,192, + 3,252,0,192,3,252,0,192,1,252,1,128,1,254,1,128, + 0,254,3,0,0,255,3,0,0,255,3,0,0,127,134,0, + 0,127,134,0,0,63,196,0,0,63,204,0,0,31,204,0, + 0,31,248,0,0,15,248,0,0,15,248,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,255,255,0,25,34,136,31,3,0,127,255,255,128,127,128, + 127,128,126,0,255,0,124,0,255,0,120,1,254,0,120,3, + 254,0,112,3,252,0,112,7,252,0,96,7,248,0,96,15, + 248,0,96,15,240,0,64,31,224,0,0,31,224,0,0,63, + 192,0,0,63,192,0,0,127,128,0,0,127,128,0,0,255, + 0,0,0,255,0,0,1,254,0,0,3,254,0,128,3,252, + 0,128,7,248,0,128,7,248,0,128,15,240,1,128,15,240, + 1,128,31,224,3,128,31,224,3,128,63,192,7,128,63,192, + 15,128,127,128,31,128,127,128,63,128,255,255,255,128,255,255, + 255,128,11,42,84,18,4,248,255,224,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,255,224,16,44,88,22, + 3,247,224,0,224,0,224,0,240,0,112,0,112,0,120,0, + 56,0,56,0,60,0,28,0,28,0,30,0,14,0,14,0, + 14,0,15,0,7,0,7,0,7,128,3,128,3,128,3,192, + 1,192,1,192,1,224,0,224,0,224,0,224,0,240,0,112, + 0,112,0,120,0,56,0,56,0,60,0,28,0,28,0,30, + 0,14,0,14,0,14,0,15,0,7,11,42,84,18,3,248, + 255,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,255,224,22,17,51,28,3,18,0,48,0,0,112,0, + 0,120,0,0,252,0,0,252,0,1,254,0,3,207,0,3, + 143,0,7,135,128,15,3,128,15,3,192,30,1,224,60,0, + 224,60,0,240,120,0,120,112,0,56,240,0,60,25,3,12, + 25,0,248,255,255,255,128,255,255,255,128,255,255,255,128,8, + 9,9,21,4,25,96,240,248,124,60,30,15,3,1,21,22, + 66,24,2,1,15,248,0,24,62,0,56,63,0,120,31,0, + 124,31,128,126,31,128,126,31,128,62,31,128,8,63,128,1, + 255,128,7,159,128,30,31,128,62,31,128,124,31,128,124,31, + 128,252,31,128,252,31,136,252,31,136,252,31,152,254,63,144, + 127,127,240,63,143,224,22,34,102,25,1,0,255,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,159,128,31,179,224,31,225,224,31,193,240,31,193,248,31, + 192,248,31,192,248,31,128,252,31,128,252,31,128,252,31,128, + 252,31,128,252,31,128,252,31,128,252,31,128,252,31,128,248, + 31,192,248,31,193,248,29,193,240,24,225,224,24,99,192,16, + 63,128,18,22,66,22,2,1,3,252,0,15,6,0,31,3, + 0,62,3,128,62,7,128,126,15,128,124,31,128,252,31,128, + 252,31,0,252,14,0,252,0,0,252,0,0,252,0,0,252, + 0,0,252,0,0,124,0,64,124,0,192,62,0,128,62,0, + 128,30,1,0,15,130,0,3,252,0,23,34,102,26,2,0, + 0,63,224,0,7,224,0,7,224,0,7,224,0,7,224,0, + 7,224,0,7,224,0,7,224,0,7,224,0,7,224,0,7, + 224,0,7,224,7,231,224,31,23,224,30,31,224,62,15,224, + 126,15,224,124,15,224,124,7,224,252,7,224,252,7,224,252, + 7,224,252,7,224,252,7,224,252,7,224,252,7,224,252,7, + 224,124,7,224,124,15,224,126,15,224,62,15,224,30,31,224, + 15,23,224,7,231,254,18,22,66,23,2,1,3,252,0,14, + 30,0,30,31,0,62,15,128,60,15,128,124,15,128,124,15, + 192,252,15,192,252,15,192,252,15,192,255,255,192,252,0,0, + 252,0,0,252,0,0,252,0,64,124,0,64,124,0,192,62, + 0,192,62,0,128,31,1,0,15,131,0,3,252,0,18,34, + 102,16,1,1,0,255,0,1,199,128,7,199,128,7,199,192, + 15,143,192,15,143,192,31,143,192,31,143,128,31,135,128,31, + 128,0,31,128,0,31,128,0,255,240,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,255,240,0,24,33,99,27,2,246, + 7,254,62,31,15,71,63,7,143,62,7,207,126,7,238,126, + 7,228,126,7,224,126,7,224,126,7,224,62,7,192,31,15, + 128,15,15,0,3,252,0,12,0,0,48,0,0,48,0,0, + 112,0,0,112,0,0,127,255,128,127,255,224,63,255,240,31, + 255,240,7,255,248,60,1,248,96,0,120,192,0,56,192,0, + 56,192,0,48,192,0,112,96,0,96,48,1,192,30,7,128, + 3,252,0,24,34,102,27,1,0,255,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,143,224, + 31,145,240,31,160,248,31,160,252,31,192,252,31,192,252,31, + 192,252,31,128,252,31,128,252,31,128,252,31,128,252,31,128, + 252,31,128,252,31,128,252,31,128,252,31,128,252,31,128,252, + 31,128,252,31,128,252,31,128,252,31,128,252,255,227,255,11, + 35,70,15,2,0,4,0,31,0,63,128,63,128,63,128,63, + 128,31,0,4,0,0,0,0,0,0,0,0,0,0,0,255, + 0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63, + 0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63, + 0,63,0,63,0,63,0,63,0,255,224,15,46,92,16,254, + 245,0,16,0,124,0,254,0,254,0,254,0,254,0,124,0, + 16,0,0,0,0,0,0,0,0,0,0,7,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,56,252,124,252,252, + 252,252,252,248,248,248,248,113,240,49,224,31,128,25,34,136, + 27,1,0,255,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,131,254,0,31,128,240,0,31,128,96,0,31, + 128,192,0,31,128,128,0,31,129,128,0,31,131,0,0,31, + 134,0,0,31,143,0,0,31,159,0,0,31,159,128,0,31, + 191,128,0,31,239,192,0,31,199,224,0,31,135,224,0,31, + 131,240,0,31,129,248,0,31,129,248,0,31,128,252,0,31, + 128,252,0,31,128,254,0,255,243,255,128,12,34,68,14,1, + 0,255,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,255,240,34,22,110,37,2,1,255,31,193,248,0, + 63,35,230,124,0,63,67,228,62,0,63,131,248,63,0,63, + 131,248,63,0,63,131,248,63,0,63,3,240,63,0,63,3, + 240,63,0,63,3,240,63,0,63,3,240,63,0,63,3,240, + 63,0,63,3,240,63,0,63,3,240,63,0,63,3,240,63, + 0,63,3,240,63,0,63,3,240,63,0,63,3,240,63,0, + 63,3,240,63,0,63,3,240,63,0,63,3,240,63,0,63, + 3,240,63,0,255,207,252,255,192,23,22,66,27,2,1,255, + 31,192,63,35,224,63,65,240,63,65,248,63,129,248,63,129, + 248,63,1,248,63,1,248,63,1,248,63,1,248,63,1,248, + 63,1,248,63,1,248,63,1,248,63,1,248,63,1,248,63, + 1,248,63,1,248,63,1,248,63,1,248,63,1,248,255,199, + 254,20,22,66,24,2,1,3,252,0,15,15,0,30,7,128, + 62,7,192,62,7,192,124,3,224,124,3,224,252,3,240,252, + 3,240,252,3,240,252,3,240,252,3,240,252,3,240,252,3, + 240,252,3,240,124,3,224,124,3,224,62,7,192,62,7,192, + 30,7,128,15,15,0,3,252,0,22,33,99,25,1,246,255, + 159,128,31,163,192,31,225,224,31,193,240,31,192,248,31,192, + 248,31,192,248,31,128,252,31,128,252,31,128,252,31,128,252, + 31,128,252,31,128,252,31,128,252,31,128,252,31,192,252,31, + 192,248,31,192,248,31,193,240,31,225,240,31,179,224,31,159, + 128,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,255, + 240,0,22,33,99,25,2,246,7,240,32,15,24,96,30,28, + 96,62,14,224,126,15,224,124,15,224,124,7,224,252,7,224, + 252,7,224,252,7,224,252,7,224,252,7,224,252,7,224,252, + 7,224,252,7,224,124,7,224,124,15,224,126,15,224,62,15, + 224,30,31,224,31,23,224,7,231,224,0,7,224,0,7,224, + 0,7,224,0,7,224,0,7,224,0,7,224,0,7,224,0, + 7,224,0,7,224,0,7,224,0,63,252,17,22,66,20,2, + 1,255,31,0,63,63,128,63,79,128,63,79,128,63,159,128, + 63,159,128,63,159,0,63,14,0,63,0,0,63,0,0,63, + 0,0,63,0,0,63,0,0,63,0,0,63,0,0,63,0, + 0,63,0,0,63,0,0,63,0,0,63,0,0,63,0,0, + 255,192,0,16,22,44,21,3,1,31,196,48,116,96,60,224, + 28,224,28,240,12,248,4,254,4,127,128,127,224,63,240,31, + 252,7,254,129,254,192,127,192,31,224,15,224,7,240,7,248, + 6,204,14,135,248,15,32,64,17,1,0,1,128,1,128,1, + 128,1,128,1,128,3,128,3,128,7,128,15,128,63,128,255, + 248,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,130,31,130,31,130,31,130,31, + 134,31,134,31,132,15,196,15,248,7,240,24,22,66,26,1, + 0,255,143,248,31,129,248,31,129,248,31,129,248,31,129,248, + 31,129,248,31,129,248,31,129,248,31,129,248,31,129,248,31, + 129,248,31,129,248,31,129,248,31,129,248,31,129,248,31,129, + 248,31,131,248,31,131,248,31,133,248,15,133,248,15,201,248, + 7,241,255,23,23,69,25,1,255,255,241,254,63,192,120,31, + 128,48,15,192,48,15,192,32,7,192,96,7,224,96,7,224, + 64,3,224,192,3,240,128,3,240,128,1,241,128,1,249,0, + 0,249,0,0,255,0,0,254,0,0,126,0,0,126,0,0, + 124,0,0,60,0,0,60,0,0,24,0,0,24,0,35,23, + 115,37,1,255,255,231,255,31,224,63,129,252,7,128,31,128, + 252,3,0,15,128,252,2,0,15,192,124,2,0,15,192,124, + 6,0,7,192,126,4,0,7,224,254,4,0,3,224,191,12, + 0,3,224,191,8,0,3,241,159,24,0,1,241,31,144,0, + 1,241,31,144,0,1,251,31,176,0,0,250,15,224,0,0, + 250,15,224,0,0,254,15,224,0,0,124,7,192,0,0,124, + 7,192,0,0,60,7,192,0,0,56,3,128,0,0,56,3, + 128,0,0,24,3,0,0,23,22,66,25,1,0,255,231,252, + 63,192,240,31,192,224,15,192,192,15,225,128,7,227,0,3, + 242,0,3,254,0,1,252,0,1,252,0,0,252,0,0,126, + 0,0,127,0,0,127,0,0,223,128,1,159,192,3,15,192, + 2,15,224,6,7,224,14,7,240,30,7,248,255,207,254,23, + 33,99,25,1,245,255,241,254,63,192,120,31,128,48,15,192, + 32,15,192,32,15,192,96,7,224,64,7,224,64,3,240,192, + 3,240,128,1,248,128,1,249,128,0,249,0,0,253,0,0, + 253,0,0,126,0,0,126,0,0,62,0,0,60,0,0,28, + 0,0,28,0,0,12,0,0,8,0,0,8,0,0,8,0, + 15,16,0,31,16,0,63,144,0,63,32,0,62,32,0,62, + 64,0,31,192,0,15,0,0,18,22,66,22,2,0,127,255, + 192,124,15,192,120,31,128,112,63,0,96,63,0,96,126,0, + 64,126,0,64,252,0,1,248,0,1,248,0,3,240,0,3, + 240,0,7,224,64,15,192,64,15,192,64,31,128,192,31,0, + 192,63,1,192,126,1,192,126,3,192,252,15,192,255,255,192, + 14,43,86,20,3,247,0,60,0,240,3,192,7,128,7,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,0,15,0,28,0, + 240,0,60,0,30,0,15,0,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,7,128,7,128,3,192,0,240,0,60,3,44,44,13, + 5,247,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,15,43, + 86,20,3,247,240,0,60,0,15,0,7,128,7,128,7,192, + 7,192,7,192,7,192,7,192,7,192,7,192,7,192,7,192, + 7,192,7,192,7,192,7,192,3,192,3,192,0,240,0,62, + 0,240,1,224,3,192,7,192,7,192,7,192,7,192,7,192, + 7,192,7,192,7,192,7,192,7,192,7,192,7,192,7,192, + 7,128,7,128,15,0,60,0,240,0,27,9,36,31,2,8, + 31,128,1,128,63,240,0,192,127,254,0,96,255,255,128,96, + 193,255,240,96,192,63,255,224,192,15,255,192,96,1,255,128, + 48,0,63,0,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,13,0,0,8,35,35,14,3, + 245,60,126,255,255,255,126,60,0,0,0,24,24,24,24,24, + 24,24,24,60,60,60,60,126,126,126,126,254,255,255,255,255, + 255,255,126,60,18,34,102,28,5,250,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,1,240,0,7,236,0,15, + 103,0,30,99,0,62,99,128,126,103,128,126,111,128,124,111, + 128,252,111,128,252,103,0,252,96,0,252,96,0,252,96,0, + 252,96,0,252,96,0,252,96,0,124,96,192,124,96,192,62, + 96,128,62,97,128,30,97,0,15,99,0,7,252,0,0,248, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 29,34,136,34,3,1,0,1,255,0,0,7,129,192,0,31, + 0,224,0,31,0,224,0,63,0,240,0,126,1,240,0,126, + 3,240,0,254,3,240,0,254,3,224,0,254,1,192,0,254, + 0,0,0,254,0,0,0,254,0,0,0,254,0,0,15,254, + 0,0,24,126,6,0,0,127,252,0,0,127,0,0,0,63, + 0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,31, + 0,0,0,31,0,0,0,30,0,0,0,30,0,24,30,28, + 0,56,127,220,0,112,195,248,0,224,128,255,255,224,128,127, + 255,192,128,255,255,128,193,207,255,0,127,3,252,0,24,22, + 66,28,2,5,96,126,6,243,255,207,127,255,254,63,129,252, + 30,0,120,60,0,60,56,0,28,56,0,28,112,0,14,112, + 0,14,112,0,14,112,0,14,112,0,14,112,0,14,56,0, + 28,56,0,28,60,0,60,30,0,120,63,129,252,127,255,254, + 243,255,207,96,126,6,26,34,136,28,1,0,255,248,63,192, + 63,224,15,0,31,224,14,0,31,224,12,0,31,224,12,0, + 15,240,8,0,15,240,8,0,7,240,24,0,7,248,16,0, + 3,248,48,0,3,252,32,0,3,252,96,0,1,254,64,0, + 1,254,192,0,0,254,128,0,0,255,128,0,0,255,0,0, + 63,255,254,0,0,127,0,0,0,127,0,0,0,127,0,0, + 0,127,0,0,63,255,254,0,0,127,0,0,0,127,0,0, + 0,127,0,0,0,127,0,0,0,127,0,0,0,127,0,0, + 0,127,0,0,0,127,0,0,0,127,0,0,0,127,0,0, + 7,255,248,0,3,42,42,13,5,248,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,0,0,0,0,0, + 0,0,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,22,43,129,30,2,248,1,255,0,7,1,192, + 14,0,224,28,0,224,28,1,240,60,3,240,60,7,240,60, + 7,240,62,7,224,62,3,192,63,0,0,31,192,0,31,248, + 0,15,254,0,31,255,128,55,255,192,97,255,240,96,127,248, + 224,31,248,224,7,252,240,1,252,252,0,124,255,0,60,255, + 192,28,127,240,24,63,252,24,31,255,16,15,255,160,3,255, + 192,0,255,224,0,63,224,0,15,240,6,3,240,31,129,240, + 63,128,240,63,128,240,63,128,240,63,0,240,62,0,224,28, + 1,192,28,3,192,15,7,0,3,252,0,15,6,12,21,3, + 26,120,60,252,126,252,126,252,126,252,126,120,60,35,34,170, + 39,2,1,0,15,254,0,0,0,112,3,192,0,0,192,0, + 96,0,3,128,0,56,0,6,0,0,28,0,12,0,0,6, + 0,24,3,225,134,0,24,15,25,131,0,48,30,15,129,128, + 48,62,7,129,128,96,60,3,128,192,96,124,3,128,192,96, + 124,1,128,192,192,252,1,128,96,192,252,1,128,96,192,252, + 0,0,96,192,252,0,0,96,192,252,0,0,96,192,252,0, + 0,96,192,252,0,128,96,192,252,0,128,96,64,124,0,128, + 192,96,124,1,128,192,96,60,1,0,192,48,62,3,1,128, + 48,30,2,1,128,24,15,12,3,0,24,3,248,6,0,12, + 0,0,6,0,6,0,0,12,0,3,128,0,56,0,0,192, + 0,96,0,0,112,1,192,0,0,15,254,0,0,14,17,34, + 18,2,17,31,0,51,192,97,224,113,224,121,224,57,224,7, + 224,57,224,113,224,241,224,241,228,241,228,241,228,126,248,0, + 0,127,252,127,252,13,20,40,23,5,1,4,0,28,24,24, + 48,56,112,112,96,112,224,241,224,241,224,241,224,241,224,241, + 224,241,224,241,224,112,224,112,224,112,96,56,48,24,16,12, + 0,4,0,23,13,39,27,2,6,255,255,254,255,255,254,255, + 255,254,0,0,14,0,0,14,0,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14, + 12,5,10,18,3,10,255,240,255,240,255,240,255,240,255,240, + 35,34,170,39,2,1,0,15,254,0,0,0,112,3,192,0, + 0,192,0,96,0,3,128,0,56,0,6,0,0,28,0,12, + 0,0,6,0,24,255,252,6,0,24,62,31,3,0,48,62, + 15,129,128,48,62,15,193,128,96,62,15,192,192,96,62,15, + 192,192,96,62,15,192,192,192,62,15,128,96,192,62,31,0, + 96,192,63,248,0,96,192,62,60,0,96,192,62,30,0,96, + 192,62,15,0,96,192,62,15,128,96,192,62,15,128,96,64, + 62,15,128,192,96,62,15,136,192,96,62,15,136,192,48,62, + 15,137,128,48,62,15,145,128,24,255,231,243,0,24,0,3, + 230,0,12,0,0,6,0,6,0,0,12,0,3,128,0,56, + 0,0,192,0,96,0,0,112,1,192,0,0,15,254,0,0, + 12,3,6,20,4,28,255,240,255,240,255,240,16,15,30,28, + 6,20,15,240,31,248,62,124,120,30,240,14,224,7,224,7, + 224,7,224,7,224,14,112,14,124,60,63,252,31,240,3,192, + 41,36,216,45,2,253,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0, + 0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,255,255,255,255,255,128, + 255,255,255,255,255,128,255,255,255,255,255,128,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0, + 0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255, + 255,0,255,255,255,255,255,0,255,255,255,255,255,0,14,21, + 42,21,4,14,31,240,48,248,96,124,224,124,240,124,248,124, + 248,120,120,248,1,240,1,224,3,128,6,0,12,4,16,4, + 32,4,32,12,127,252,127,252,79,248,71,248,1,224,16,21, + 42,22,3,14,31,224,48,248,112,124,112,124,124,124,124,124, + 60,124,0,120,0,224,15,128,0,240,0,124,0,62,16,63, + 124,63,252,63,252,63,240,63,112,126,112,252,31,240,8,9, + 9,21,9,25,6,15,31,62,60,120,240,192,128,24,35,105, + 29,3,244,120,3,192,124,3,192,252,7,224,252,7,224,252, + 7,224,252,7,224,252,7,224,252,7,224,252,7,224,248,7, + 224,248,7,224,120,7,192,112,3,192,112,3,193,112,3,129, + 48,3,131,48,7,135,48,7,255,56,15,254,62,62,254,47, + 252,126,35,248,60,32,0,0,48,0,0,112,0,0,112,0, + 0,120,0,0,120,0,0,124,0,0,124,0,0,126,0,0, + 126,0,0,126,0,0,62,0,0,28,0,0,23,41,123,28, + 3,249,3,255,254,15,240,224,63,240,224,127,240,224,127,240, + 224,255,240,224,255,240,224,255,240,224,255,240,224,255,240,224, + 255,240,224,255,240,224,255,240,224,255,240,224,127,240,224,63, + 240,224,31,240,224,7,240,224,0,112,224,0,112,224,0,112, + 224,0,112,224,0,112,224,0,112,224,0,112,224,0,112,224, + 0,112,224,0,112,224,0,112,224,0,112,224,0,112,224,0, + 112,224,0,112,224,0,112,224,0,112,224,0,112,224,0,112, + 224,0,112,224,0,112,224,0,112,224,0,112,224,8,7,7, + 14,3,12,60,126,255,255,255,126,60,10,10,20,21,5,246, + 8,0,8,0,24,0,15,0,7,128,3,192,3,192,3,192, + 199,128,63,0,11,20,40,21,5,14,7,0,15,0,255,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 255,224,13,17,34,19,3,17,15,128,24,192,56,224,112,112, + 112,112,240,120,240,120,240,120,240,120,240,120,240,120,112,112, + 112,224,56,224,15,128,0,0,255,248,13,20,40,23,5,1, + 1,0,193,128,96,192,112,224,48,112,56,112,56,120,60,120, + 60,120,60,120,60,120,60,120,60,120,56,112,56,112,48,112, + 96,224,64,192,1,128,1,0,36,36,180,44,5,255,0,0, + 0,48,0,7,0,0,48,0,7,0,0,96,0,31,0,0, + 224,0,255,0,0,192,0,31,0,1,192,0,31,0,1,128, + 0,31,0,3,0,0,31,0,7,0,0,31,0,6,0,0, + 31,0,14,0,0,31,0,12,0,0,31,0,24,0,0,31, + 0,24,0,0,31,0,48,0,0,31,0,112,15,0,31,0, + 96,31,0,31,0,224,31,0,31,0,192,63,0,31,1,128, + 127,0,255,227,128,127,0,0,3,0,223,0,0,7,1,159, + 0,0,6,1,159,0,0,12,3,31,0,0,12,2,31,0, + 0,24,6,31,0,0,56,12,31,0,0,48,15,255,240,0, + 112,0,31,0,0,96,0,31,0,0,192,0,31,0,1,192, + 0,31,0,1,128,0,31,0,3,128,1,255,224,3,0,0, + 0,0,35,36,180,43,5,255,0,0,0,56,0,7,0,0, + 48,0,7,0,0,112,0,31,0,0,224,0,255,0,0,192, + 0,31,0,1,192,0,31,0,1,128,0,31,0,3,128,0, + 31,0,3,0,0,31,0,7,0,0,31,0,14,0,0,31, + 0,12,0,0,31,0,28,0,0,31,0,24,0,0,31,0, + 56,126,0,31,0,113,143,128,31,0,99,7,192,31,0,231, + 3,224,31,0,199,3,224,31,1,199,131,224,255,227,135,195, + 224,0,3,3,199,192,0,7,1,135,128,0,6,0,15,0, + 0,14,0,30,0,0,12,0,56,0,0,24,0,96,0,0, + 56,0,128,32,0,48,1,0,32,0,112,2,0,32,0,96, + 2,255,224,0,192,7,255,224,1,192,6,255,192,1,128,4, + 127,192,3,128,4,63,128,3,0,0,0,0,38,36,180,44, + 3,255,0,0,0,12,0,31,224,0,12,0,48,248,0,24, + 0,112,124,0,56,0,112,124,0,48,0,124,124,0,112,0, + 124,124,0,96,0,60,124,0,192,0,0,120,1,192,0,0, + 224,1,128,0,15,128,3,128,0,0,240,3,0,0,0,124, + 7,0,0,0,62,6,0,0,16,63,12,0,0,124,63,28, + 3,192,252,63,24,7,192,252,63,56,7,192,240,63,48,15, + 192,112,126,112,31,192,112,252,224,31,192,31,240,192,55,192, + 0,1,192,103,192,0,1,128,103,192,0,3,128,199,192,0, + 3,0,135,192,0,6,1,135,192,0,14,3,7,192,0,12, + 3,255,252,0,28,0,7,192,0,24,0,7,192,0,56,0, + 7,192,0,112,0,7,192,0,96,0,7,192,0,224,0,127, + 248,0,192,0,0,0,16,35,70,23,3,245,7,0,15,128, + 31,192,31,192,31,192,15,128,7,0,0,0,0,0,7,128, + 12,224,16,48,16,48,16,48,16,48,0,96,0,224,0,192, + 3,192,7,128,15,128,31,0,31,4,62,4,126,6,124,2, + 252,3,252,3,252,3,252,3,252,6,126,6,63,12,31,248, + 7,224,33,45,225,36,2,0,0,56,0,0,0,0,60,0, + 0,0,0,62,0,0,0,0,62,0,0,0,0,31,0,0, + 0,0,7,0,0,0,0,3,128,0,0,0,1,192,0,0, + 0,0,64,0,0,0,0,0,0,0,0,0,192,0,0,0, + 1,192,0,0,0,1,224,0,0,0,1,224,0,0,0,3, + 224,0,0,0,3,240,0,0,0,3,240,0,0,0,7,240, + 0,0,0,7,248,0,0,0,7,248,0,0,0,15,248,0, + 0,0,15,252,0,0,0,15,252,0,0,0,25,252,0,0, + 0,25,254,0,0,0,25,254,0,0,0,48,254,0,0,0, + 48,255,0,0,0,32,255,0,0,0,96,127,0,0,0,96, + 127,128,0,0,64,127,128,0,0,192,63,128,0,0,192,63, + 192,0,0,255,255,192,0,1,255,255,192,0,1,128,31,224, + 0,1,0,31,224,0,3,0,15,224,0,3,0,15,240,0, + 2,0,15,240,0,6,0,7,240,0,15,0,7,248,0,31, + 0,15,252,0,255,240,255,255,128,33,45,225,36,2,0,0, + 0,14,0,0,0,0,15,0,0,0,0,31,0,0,0,0, + 62,0,0,0,0,60,0,0,0,0,120,0,0,0,0,240, + 0,0,0,0,192,0,0,0,0,128,0,0,0,0,0,0, + 0,0,0,192,0,0,0,1,192,0,0,0,1,224,0,0, + 0,1,224,0,0,0,3,224,0,0,0,3,240,0,0,0, + 3,240,0,0,0,7,240,0,0,0,7,248,0,0,0,7, + 248,0,0,0,15,248,0,0,0,15,252,0,0,0,15,252, + 0,0,0,25,252,0,0,0,25,254,0,0,0,25,254,0, + 0,0,48,254,0,0,0,48,255,0,0,0,32,255,0,0, + 0,96,127,0,0,0,96,127,128,0,0,64,127,128,0,0, + 192,63,128,0,0,192,63,192,0,0,255,255,192,0,1,255, + 255,192,0,1,128,31,224,0,1,0,31,224,0,3,0,15, + 224,0,3,0,15,240,0,6,0,15,240,0,6,0,7,240, + 0,15,0,7,248,0,255,240,255,255,128,255,240,255,255,128, + 33,44,220,36,2,0,0,1,192,0,0,0,1,224,0,0, + 0,3,224,0,0,0,7,240,0,0,0,15,120,0,0,0, + 30,30,0,0,0,120,7,0,0,0,64,1,128,0,0,0, + 0,0,0,0,0,192,0,0,0,1,192,0,0,0,1,224, + 0,0,0,1,224,0,0,0,3,224,0,0,0,3,240,0, + 0,0,3,240,0,0,0,7,240,0,0,0,7,248,0,0, + 0,7,248,0,0,0,15,248,0,0,0,15,252,0,0,0, + 15,252,0,0,0,25,252,0,0,0,25,254,0,0,0,25, + 254,0,0,0,48,254,0,0,0,48,255,0,0,0,32,255, + 0,0,0,96,127,0,0,0,96,127,128,0,0,64,127,128, + 0,0,192,63,128,0,0,192,63,192,0,0,255,255,192,0, + 1,255,255,192,0,1,128,31,224,0,1,0,31,224,0,3, + 0,15,224,0,3,0,15,240,0,2,0,15,240,0,6,0, + 7,240,0,15,0,7,248,0,31,0,15,252,0,255,240,255, + 255,128,33,43,215,36,2,0,0,15,1,0,0,0,31,227, + 0,0,0,63,254,0,0,0,33,254,0,0,0,32,124,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,192,0,0,0,1,192,0,0,0,1,224,0,0,0, + 1,224,0,0,0,3,224,0,0,0,3,240,0,0,0,3, + 240,0,0,0,7,240,0,0,0,7,248,0,0,0,7,248, + 0,0,0,15,248,0,0,0,15,252,0,0,0,15,252,0, + 0,0,25,252,0,0,0,25,254,0,0,0,25,254,0,0, + 0,48,254,0,0,0,48,255,0,0,0,32,255,0,0,0, + 96,127,0,0,0,96,127,128,0,0,64,127,128,0,0,192, + 63,128,0,0,192,63,192,0,0,255,255,192,0,1,255,255, + 192,0,1,128,31,224,0,1,0,31,224,0,3,0,15,224, + 0,3,0,15,240,0,6,0,15,240,0,6,0,7,240,0, + 15,0,7,248,0,255,240,255,255,128,255,240,255,255,128,33, + 43,215,36,2,0,0,60,15,0,0,0,126,31,128,0,0, + 126,31,128,0,0,126,31,128,0,0,126,31,128,0,0,60, + 15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,192,0,0,0,1,224,0,0,0,1,224,0, + 0,0,1,224,0,0,0,3,240,0,0,0,3,240,0,0, + 0,3,240,0,0,0,7,248,0,0,0,7,248,0,0,0, + 7,248,0,0,0,15,252,0,0,0,15,252,0,0,0,25, + 252,0,0,0,25,254,0,0,0,24,254,0,0,0,48,254, + 0,0,0,48,255,0,0,0,48,127,0,0,0,96,127,0, + 0,0,96,127,128,0,0,96,63,128,0,0,192,63,128,0, + 0,192,63,192,0,0,255,255,192,0,1,255,255,192,0,1, + 128,31,224,0,1,128,15,224,0,3,0,15,224,0,3,0, + 15,240,0,3,0,7,240,0,7,0,7,240,0,15,0,7, + 248,0,31,128,15,252,0,255,240,255,255,128,33,45,225,36, + 2,0,0,1,224,0,0,0,7,248,0,0,0,14,28,0, + 0,0,12,12,0,0,0,12,12,0,0,0,12,12,0,0, + 0,14,28,0,0,0,7,248,0,0,0,3,240,0,0,0, + 0,0,0,0,0,0,192,0,0,0,1,192,0,0,0,1, + 224,0,0,0,1,224,0,0,0,3,224,0,0,0,3,240, + 0,0,0,3,240,0,0,0,7,240,0,0,0,7,248,0, + 0,0,7,248,0,0,0,15,248,0,0,0,13,252,0,0, + 0,13,252,0,0,0,29,252,0,0,0,25,254,0,0,0, + 24,254,0,0,0,56,254,0,0,0,48,255,0,0,0,48, + 127,0,0,0,112,127,0,0,0,96,127,128,0,0,96,63, + 128,0,0,224,63,128,0,0,192,63,192,0,0,255,255,192, + 0,1,255,255,192,0,1,128,31,224,0,1,128,31,224,0, + 3,0,15,224,0,3,0,15,240,0,3,0,15,240,0,7, + 0,7,240,0,15,0,7,248,0,31,128,15,252,0,255,240, + 255,255,128,45,34,204,48,1,0,0,0,127,255,255,240,0, + 0,31,248,7,240,0,0,15,248,1,240,0,0,15,248,0, + 240,0,0,31,248,0,240,0,0,27,248,0,112,0,0,59, + 248,0,112,0,0,51,248,0,48,0,0,115,248,0,48,0, + 0,99,248,12,48,0,0,227,248,12,16,0,0,195,248,12, + 0,0,1,195,248,28,0,0,1,131,248,28,0,0,3,131, + 248,60,0,0,3,3,248,124,0,0,7,3,255,252,0,0, + 6,3,248,124,0,0,14,3,248,60,0,0,12,3,248,28, + 0,0,28,3,248,28,0,0,24,3,248,12,24,0,56,3, + 248,12,24,0,63,255,248,12,24,0,96,3,248,0,56,0, + 224,3,248,0,56,0,192,3,248,0,56,1,192,3,248,0, + 120,1,128,3,248,0,120,3,128,3,248,0,248,7,128,3, + 248,1,248,15,128,3,248,3,248,255,248,127,255,255,248,255, + 248,127,255,255,248,26,45,180,31,3,246,0,127,193,128,1, + 224,241,128,3,192,63,128,7,128,31,128,15,128,15,128,31, + 0,15,128,63,0,7,128,63,0,7,128,63,0,3,128,127, + 0,3,128,127,0,1,128,127,0,1,128,255,0,1,128,255, + 0,1,128,255,0,1,128,255,0,0,0,255,0,0,0,255, + 0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255, + 0,0,192,127,0,0,192,127,0,0,192,127,0,0,128,63, + 0,0,128,63,0,1,128,63,0,1,128,31,128,3,0,15, + 128,3,0,7,128,6,0,3,192,12,0,1,224,56,0,0, + 127,224,0,0,12,0,0,0,8,0,0,0,30,0,0,0, + 31,128,0,0,3,192,0,0,1,224,0,0,1,224,0,0, + 1,224,0,0,129,192,0,0,199,192,0,0,63,0,0,27, + 45,180,33,3,0,0,224,0,0,1,240,0,0,1,240,0, + 0,0,248,0,0,0,124,0,0,0,60,0,0,0,14,0, + 0,0,6,0,0,0,2,0,0,0,0,0,0,0,0,0, + 0,255,255,255,224,15,224,31,224,15,224,7,224,15,224,3, + 224,15,224,1,224,15,224,1,224,15,224,0,224,15,224,0, + 224,15,224,0,96,15,224,48,96,15,224,48,96,15,224,48, + 0,15,224,112,0,15,224,112,0,15,224,240,0,15,225,240, + 0,15,255,240,0,15,225,240,0,15,224,240,0,15,224,112, + 0,15,224,112,32,15,224,48,96,15,224,48,96,15,224,48, + 96,15,224,0,96,15,224,0,96,15,224,0,224,15,224,0, + 224,15,224,1,224,15,224,3,224,15,224,3,224,15,224,15, + 224,255,255,255,224,255,255,255,224,27,45,180,33,3,0,0, + 0,56,0,0,0,120,0,0,0,248,0,0,0,248,0,0, + 1,240,0,0,3,192,0,0,3,128,0,0,6,0,0,0, + 4,0,0,0,0,0,0,0,0,0,0,255,255,255,224,15, + 224,31,224,15,224,7,224,15,224,3,224,15,224,1,224,15, + 224,1,224,15,224,0,224,15,224,0,224,15,224,0,96,15, + 224,48,96,15,224,48,96,15,224,48,0,15,224,112,0,15, + 224,112,0,15,224,240,0,15,225,240,0,15,255,240,0,15, + 225,240,0,15,224,240,0,15,224,112,0,15,224,112,32,15, + 224,48,96,15,224,48,96,15,224,48,96,15,224,0,96,15, + 224,0,224,15,224,0,224,15,224,0,224,15,224,1,224,15, + 224,3,224,15,224,3,224,15,224,15,224,255,255,255,224,255, + 255,255,224,27,44,176,33,3,0,0,6,0,0,0,15,0, + 0,0,15,128,0,0,31,192,0,0,57,224,0,0,240,112, + 0,3,192,28,0,0,0,4,0,0,0,0,0,0,0,0, + 0,255,255,255,224,15,224,31,224,15,224,7,224,15,224,3, + 224,15,224,1,224,15,224,1,224,15,224,0,224,15,224,0, + 224,15,224,0,96,15,224,48,96,15,224,48,96,15,224,48, + 0,15,224,112,0,15,224,112,0,15,224,240,0,15,225,240, + 0,15,255,240,0,15,225,240,0,15,224,240,0,15,224,112, + 0,15,224,112,32,15,224,48,96,15,224,48,96,15,224,48, + 96,15,224,0,96,15,224,0,96,15,224,0,224,15,224,0, + 224,15,224,1,224,15,224,3,224,15,224,3,224,15,224,15, + 224,255,255,255,224,255,255,255,224,27,43,172,33,3,0,1, + 224,120,0,3,240,252,0,3,240,252,0,3,240,252,0,3, + 240,252,0,1,224,120,0,0,0,0,0,0,0,0,0,0, + 0,0,0,255,255,255,224,15,224,31,224,15,224,7,224,15, + 224,3,224,15,224,1,224,15,224,1,224,15,224,0,224,15, + 224,0,224,15,224,0,224,15,224,48,96,15,224,48,96,15, + 224,48,0,15,224,112,0,15,224,112,0,15,224,240,0,15, + 225,240,0,15,255,240,0,15,225,240,0,15,224,240,0,15, + 224,112,0,15,224,112,96,15,224,48,96,15,224,48,96,15, + 224,48,96,15,224,0,96,15,224,0,224,15,224,0,224,15, + 224,0,224,15,224,1,224,15,224,3,224,15,224,3,224,15, + 224,15,224,255,255,255,224,255,255,255,224,16,45,90,21,3, + 0,56,0,124,0,124,0,62,0,31,0,15,0,3,128,1, + 192,0,0,0,0,0,0,255,255,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,255,255,16,45,90,21,3, + 0,0,14,0,30,0,62,0,60,0,120,0,240,0,224,1, + 192,0,0,0,0,0,0,255,255,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,255,255,16,44,88,21,3, + 0,1,192,3,192,3,224,7,240,31,120,60,28,240,7,0, + 1,0,0,0,0,255,255,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,255,255,255,255,16,43,86,21,3,0,120, + 30,252,63,252,63,252,63,252,63,120,30,0,0,0,0,0, + 0,255,255,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,255,255,32,34,136,37,3,0,255,255,248,0,7, + 240,31,0,7,240,7,128,7,240,3,224,7,240,1,240,7, + 240,1,240,7,240,0,248,7,240,0,252,7,240,0,252,7, + 240,0,254,7,240,0,254,7,240,0,254,7,240,0,255,7, + 240,0,255,7,240,0,255,7,240,0,255,255,255,0,255,7, + 240,0,255,7,240,0,255,7,240,0,255,7,240,0,255,7, + 240,0,254,7,240,0,254,7,240,0,254,7,240,0,254,7, + 240,0,252,7,240,0,252,7,240,0,248,7,240,1,240,7, + 240,1,224,7,240,3,192,7,240,7,128,7,240,31,0,255, + 255,248,0,34,44,220,37,2,255,0,7,128,128,0,0,15, + 241,128,0,0,31,255,0,0,0,16,255,0,0,0,16,60, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,255,224,15,255,192,31,240,3,255,0, + 15,240,0,252,0,15,248,0,120,0,7,252,0,48,0,3, + 254,0,48,0,3,254,0,48,0,3,255,0,48,0,3,255, + 128,48,0,3,255,128,48,0,3,127,192,48,0,3,63,224, + 48,0,3,31,224,48,0,3,31,240,48,0,3,15,248,48, + 0,3,7,248,48,0,3,7,252,48,0,3,3,254,48,0, + 3,1,255,48,0,3,1,255,48,0,3,0,255,176,0,3, + 0,127,240,0,3,0,127,240,0,3,0,63,240,0,3,0, + 31,240,0,3,0,15,240,0,3,0,15,240,0,3,0,7, + 240,0,3,0,3,240,0,3,0,3,240,0,7,128,1,240, + 0,15,192,0,240,0,63,240,0,240,0,255,252,0,112,0, + 0,0,0,48,0,28,45,180,33,3,0,0,192,0,0,1, + 224,0,0,1,240,0,0,0,248,0,0,0,120,0,0,0, + 60,0,0,0,28,0,0,0,6,0,0,0,2,0,0,0, + 0,0,0,0,0,0,0,0,63,192,0,0,224,112,0,3, + 192,56,0,7,128,30,0,15,128,30,0,15,0,15,0,31, + 0,15,128,63,0,15,192,63,0,15,192,127,0,15,192,127, + 0,15,224,127,0,15,224,127,0,15,224,255,0,15,240,255, + 0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255, + 0,15,240,255,0,15,240,255,0,15,240,127,0,15,224,127, + 0,15,224,127,0,15,224,127,0,15,192,63,0,15,192,63, + 0,15,192,31,0,15,128,15,0,15,0,15,128,31,0,7, + 128,30,0,3,192,60,0,0,224,112,0,0,63,192,0,28, + 45,180,33,3,0,0,0,48,0,0,0,120,0,0,0,248, + 0,0,1,240,0,0,1,224,0,0,3,192,0,0,3,128, + 0,0,6,0,0,0,4,0,0,0,0,0,0,0,0,0, + 0,0,63,192,0,0,224,112,0,3,192,56,0,7,128,30, + 0,15,128,30,0,15,0,15,0,31,0,15,128,63,0,15, + 192,63,0,15,192,127,0,15,192,127,0,15,224,127,0,15, + 224,127,0,15,224,255,0,15,240,255,0,15,240,255,0,15, + 240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15, + 240,255,0,15,240,127,0,15,224,127,0,15,224,127,0,15, + 224,127,0,15,192,63,0,15,192,63,0,15,192,31,0,15, + 128,15,0,15,0,15,128,31,0,7,128,30,0,3,192,60, + 0,0,224,112,0,0,63,192,0,28,45,180,33,3,0,0, + 6,0,0,0,14,0,0,0,15,0,0,0,31,128,0,0, + 63,192,0,0,121,224,0,0,240,240,0,3,192,60,0,3, + 0,12,0,0,0,0,0,0,0,0,0,0,63,192,0,0, + 224,112,0,3,192,56,0,7,128,30,0,15,128,30,0,15, + 0,15,0,31,0,15,128,63,0,15,192,63,0,15,192,127, + 0,15,192,127,0,15,224,127,0,15,224,127,0,15,224,255, + 0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255, + 0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,127, + 0,15,224,127,0,15,224,127,0,15,224,127,0,15,192,63, + 0,15,192,63,0,15,192,31,0,15,128,15,0,15,0,15, + 128,31,0,7,128,30,0,3,192,60,0,0,224,112,0,0, + 63,192,0,28,44,176,33,3,0,0,0,8,0,0,126,24, + 0,0,255,248,0,1,255,240,0,1,7,224,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,63,192,0,0,224,112,0,3,192,56,0,7,128,30, + 0,15,128,30,0,15,0,15,0,31,0,15,128,63,0,15, + 192,63,0,15,192,127,0,15,192,127,0,15,224,127,0,15, + 224,127,0,15,224,255,0,15,240,255,0,15,240,255,0,15, + 240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15, + 240,255,0,15,240,127,0,15,224,127,0,15,224,127,0,15, + 224,127,0,15,192,63,0,15,192,63,0,15,192,31,0,15, + 128,15,0,15,0,15,128,31,0,7,128,30,0,3,192,60, + 0,0,224,112,0,0,63,192,0,28,44,176,33,3,0,1, + 224,120,0,3,240,252,0,3,240,252,0,3,240,252,0,3, + 240,252,0,1,224,120,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,63,192,0,0,224,112,0,3, + 192,56,0,7,128,30,0,15,128,30,0,15,0,15,0,31, + 0,15,128,63,0,15,192,63,0,15,192,127,0,15,192,127, + 0,15,224,127,0,15,224,127,0,15,224,255,0,15,240,255, + 0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255, + 0,15,240,255,0,15,240,255,0,15,240,127,0,15,224,127, + 0,15,224,127,0,15,224,127,0,15,192,63,0,15,192,63, + 0,15,192,31,0,15,128,15,0,15,0,15,128,31,0,7, + 128,30,0,3,192,60,0,0,224,112,0,0,63,192,0,31, + 30,120,45,7,253,32,0,0,0,112,0,0,12,248,0,0, + 30,124,0,0,60,62,0,0,120,31,0,1,240,15,128,3, + 224,7,192,7,192,3,224,15,128,1,240,31,0,0,248,62, + 0,0,124,124,0,0,62,248,0,0,31,240,0,0,15,224, + 0,0,7,192,0,0,15,224,0,0,31,240,0,0,62,248, + 0,0,124,60,0,0,248,30,0,1,240,15,0,3,224,7, + 128,7,192,3,192,15,128,1,224,31,0,0,240,62,0,0, + 120,124,0,0,60,248,0,0,30,112,0,0,12,28,34,136, + 33,3,1,0,63,224,48,0,224,112,96,1,192,60,192,7, + 128,31,192,15,128,31,128,15,0,15,0,31,0,15,128,63, + 0,15,192,63,0,31,192,63,0,31,224,127,0,63,224,127, + 0,111,224,127,0,239,224,255,0,207,240,255,1,143,240,255, + 3,15,240,255,7,15,240,255,14,15,240,255,12,15,240,255, + 24,15,240,255,48,15,240,255,112,15,224,127,96,15,224,127, + 192,15,224,127,128,15,192,63,128,15,192,63,0,15,192,31, + 0,15,128,15,0,15,0,31,128,30,0,63,128,30,0,51, + 192,56,0,96,224,112,0,192,127,192,0,33,45,225,38,3, + 0,0,24,0,0,0,0,60,0,0,0,0,62,0,0,0, + 0,31,0,0,0,0,15,128,0,0,0,7,128,0,0,0, + 1,192,0,0,0,0,224,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,255,255,7,255,128,15,224,1, + 254,0,15,224,0,120,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,15,224,0,48,0,15, + 224,0,48,0,15,224,0,48,0,15,224,0,48,0,15,224, + 0,48,0,15,224,0,48,0,15,224,0,48,0,15,224,0, + 48,0,15,224,0,48,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,7,224,0,48,0,7, + 224,0,96,0,7,240,0,96,0,3,240,0,192,0,1,248, + 1,192,0,0,252,3,128,0,0,127,159,0,0,0,31,252, + 0,0,33,45,225,38,3,0,0,0,7,0,0,0,0,15, + 0,0,0,0,15,0,0,0,0,31,0,0,0,0,60,0, + 0,0,0,56,0,0,0,0,112,0,0,0,0,224,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,7,255,128,15,224,1,254,0,15,224,0,120,0,15,224, + 0,48,0,15,224,0,48,0,15,224,0,48,0,15,224,0, + 48,0,15,224,0,48,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,15,224,0,48,0,15, + 224,0,48,0,15,224,0,48,0,15,224,0,48,0,15,224, + 0,48,0,15,224,0,48,0,15,224,0,48,0,15,224,0, + 48,0,15,224,0,48,0,15,224,0,48,0,15,224,0,48, + 0,7,224,0,48,0,7,224,0,96,0,7,240,0,96,0, + 3,240,0,192,0,1,248,1,192,0,0,252,3,128,0,0, + 127,159,0,0,0,31,252,0,0,33,45,225,38,3,0,0, + 0,64,0,0,0,0,224,0,0,0,1,240,0,0,0,3, + 240,0,0,0,7,248,0,0,0,15,28,0,0,0,30,15, + 0,0,0,112,3,128,0,0,0,0,128,0,0,0,0,0, + 0,0,0,0,0,0,255,255,7,255,128,15,224,1,254,0, + 15,224,0,120,0,15,224,0,48,0,15,224,0,48,0,15, + 224,0,48,0,15,224,0,48,0,15,224,0,48,0,15,224, + 0,48,0,15,224,0,48,0,15,224,0,48,0,15,224,0, + 48,0,15,224,0,48,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,15,224,0,48,0,15, + 224,0,48,0,15,224,0,48,0,15,224,0,48,0,15,224, + 0,48,0,15,224,0,48,0,7,224,0,48,0,7,224,0, + 96,0,7,240,0,96,0,3,240,0,192,0,1,248,1,192, + 0,0,252,3,128,0,0,127,159,0,0,0,31,252,0,0, + 33,44,220,38,3,0,0,60,15,0,0,0,126,31,128,0, + 0,126,31,128,0,0,126,31,128,0,0,126,31,128,0,0, + 60,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,255,254,7,255,128,15,224,1, + 254,0,15,224,0,120,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,15,224,0,48,0,15, + 224,0,48,0,15,224,0,48,0,15,224,0,48,0,15,224, + 0,48,0,15,224,0,48,0,15,224,0,48,0,15,224,0, + 48,0,15,224,0,48,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,7,224,0,48,0,7, + 224,0,96,0,7,240,0,96,0,3,240,0,192,0,1,248, + 1,192,0,0,252,3,128,0,0,127,159,0,0,0,31,252, + 0,0,32,45,180,35,2,0,0,0,7,0,0,0,15,0, + 0,0,31,0,0,0,31,0,0,0,60,0,0,0,120,0, + 0,0,112,0,0,0,192,0,0,0,128,0,0,0,0,0, + 0,0,0,0,255,254,15,255,31,248,1,248,15,248,0,240, + 7,248,0,224,7,248,0,192,3,252,0,192,3,252,0,192, + 1,252,1,128,1,254,1,128,0,254,3,0,0,255,3,0, + 0,255,3,0,0,127,134,0,0,127,134,0,0,63,196,0, + 0,63,204,0,0,31,204,0,0,31,248,0,0,15,248,0, + 0,15,248,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,255,255,0,29,34,136,34, + 3,0,255,255,128,0,7,240,0,0,7,240,0,0,7,240, + 0,0,7,240,0,0,7,240,0,0,7,255,248,0,7,240, + 63,0,7,240,15,192,7,240,15,224,7,240,15,240,7,240, + 7,240,7,240,7,248,7,240,7,248,7,240,7,248,7,240, + 7,248,7,240,7,248,7,240,7,248,7,240,7,240,7,240, + 15,240,7,240,15,224,7,240,15,192,7,240,31,0,7,255, + 252,0,7,240,0,0,7,240,0,0,7,240,0,0,7,240, + 0,0,7,240,0,0,7,240,0,0,7,240,0,0,7,240, + 0,0,7,240,0,0,255,255,128,0,23,34,102,27,2,0, + 0,127,0,1,227,128,3,195,224,7,193,224,7,193,240,15, + 129,240,15,129,240,15,129,240,31,129,240,31,129,224,31,129, + 224,31,129,192,31,131,128,31,188,0,31,131,0,31,129,192, + 31,128,240,31,128,248,31,128,248,31,128,124,31,128,124,31, + 128,126,31,128,126,31,128,126,31,128,126,31,128,126,31,128, + 126,31,184,126,31,252,124,31,252,124,31,248,252,31,248,248, + 31,184,240,255,159,224,21,34,102,24,2,0,24,0,0,60, + 0,0,62,0,0,30,0,0,15,0,0,7,128,0,3,128, + 0,1,192,0,0,192,0,0,0,0,0,0,0,0,0,0, + 15,248,0,24,62,0,56,63,0,120,31,0,124,31,128,126, + 31,128,126,31,128,60,31,128,0,127,128,3,223,128,15,31, + 128,30,31,128,62,31,128,124,31,128,252,31,128,252,31,128, + 252,31,136,252,31,136,252,31,152,254,63,144,127,127,240,63, + 143,224,21,34,102,24,2,0,0,12,0,0,30,0,0,62, + 0,0,62,0,0,124,0,0,120,0,0,224,0,0,192,0, + 1,128,0,0,0,0,0,0,0,0,0,0,15,248,0,24, + 62,0,56,63,0,120,31,0,124,31,128,126,31,128,126,31, + 128,62,31,128,8,63,128,1,255,128,7,159,128,30,31,128, + 62,31,128,124,31,128,124,31,128,252,31,128,252,31,136,252, + 31,136,252,31,152,254,63,144,127,127,240,63,143,224,21,34, + 102,24,2,0,1,192,0,1,224,0,3,224,0,3,224,0, + 7,240,0,7,56,0,14,28,0,28,14,0,48,7,0,0, + 0,0,0,0,0,0,0,0,15,248,0,24,62,0,56,63, + 0,120,31,0,124,31,128,126,31,128,126,31,128,62,31,128, + 8,63,128,1,255,128,7,159,128,30,31,128,62,31,128,124, + 31,128,124,31,128,252,31,128,252,31,136,252,31,136,252,31, + 152,254,63,144,127,127,240,63,143,224,21,32,96,24,2,0, + 15,3,0,31,195,0,63,254,0,49,252,0,32,120,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,248, + 0,24,62,0,56,63,0,120,31,0,124,31,128,126,31,128, + 126,31,128,62,31,128,8,63,128,1,255,128,7,159,128,30, + 31,128,62,31,128,124,31,128,124,31,128,252,31,128,252,31, + 136,252,31,136,252,31,152,254,63,144,127,127,240,63,143,224, + 21,32,96,24,2,0,60,30,0,126,63,0,126,63,0,126, + 63,0,126,63,0,60,30,0,0,0,0,0,0,0,0,0, + 0,0,0,0,15,248,0,24,62,0,56,63,0,120,31,0, + 124,31,128,126,31,128,126,31,128,62,31,128,8,63,128,1, + 255,128,7,159,128,30,31,128,62,31,128,124,31,128,124,31, + 128,252,31,128,252,31,136,252,31,136,252,31,152,254,63,144, + 127,127,240,63,143,224,21,34,102,24,2,1,3,240,0,7, + 248,0,14,28,0,12,12,0,12,12,0,12,12,0,14,28, + 0,7,248,0,1,224,0,0,0,0,0,0,0,0,0,0, + 15,248,0,24,62,0,56,63,0,120,31,0,124,31,128,126, + 31,128,126,31,128,62,31,128,8,63,128,1,255,128,7,31, + 128,30,31,128,62,31,128,124,31,128,124,31,128,252,31,128, + 252,31,136,252,31,136,252,31,152,254,63,144,127,111,240,63, + 199,224,29,22,88,34,2,1,15,240,255,128,24,63,195,192, + 56,63,195,224,120,31,131,240,124,31,129,240,126,31,129,240, + 126,31,129,248,62,31,129,248,0,63,129,248,1,255,129,248, + 7,31,255,248,30,31,128,0,62,31,128,0,124,31,128,0, + 124,31,128,8,252,31,128,8,252,31,128,24,252,31,192,16, + 252,31,192,16,254,51,192,32,127,97,240,64,63,192,255,128, + 18,32,96,22,2,247,3,252,0,15,6,0,31,7,0,62, + 7,128,62,7,128,126,15,128,124,31,128,252,31,128,252,31, + 0,252,14,0,252,0,0,252,0,0,252,0,0,252,0,0, + 252,0,0,124,0,64,124,0,192,62,0,128,62,1,128,30, + 1,0,15,130,0,3,252,0,0,128,0,0,128,0,1,128, + 0,0,240,0,0,56,0,0,60,0,0,60,0,0,60,0, + 4,120,0,3,240,0,18,34,102,23,2,0,28,0,0,30, + 0,0,30,0,0,31,0,0,15,128,0,7,128,0,3,192, + 0,0,192,0,0,96,0,0,0,0,0,0,0,0,0,0, + 3,252,0,14,30,0,30,31,0,62,15,128,60,15,128,124, + 15,128,124,15,192,252,15,192,252,15,192,252,15,192,255,255, + 192,252,0,0,252,0,0,252,0,0,252,0,64,124,0,64, + 124,0,192,62,0,192,62,1,128,31,1,0,15,135,0,3, + 252,0,18,34,102,23,2,0,0,14,0,0,31,0,0,31, + 0,0,62,0,0,60,0,0,120,0,0,240,0,0,224,0, + 1,128,0,0,0,0,0,0,0,0,0,0,3,252,0,14, + 30,0,30,31,0,62,15,128,60,15,128,124,15,128,124,15, + 192,252,15,192,252,15,192,252,15,192,255,255,192,252,0,0, + 252,0,0,252,0,0,252,0,64,124,0,64,124,0,192,62, + 0,192,62,0,128,31,1,0,15,131,0,3,252,0,18,34, + 102,23,2,0,1,224,0,1,224,0,1,240,0,3,240,0, + 3,248,0,7,56,0,14,28,0,28,14,0,56,3,0,0, + 0,0,0,0,0,0,0,0,3,252,0,14,30,0,30,31, + 0,62,15,128,60,15,128,124,15,128,124,15,192,252,15,192, + 252,15,192,252,15,192,255,255,192,252,0,0,252,0,0,252, + 0,0,252,0,64,124,0,64,124,0,192,62,0,192,62,0, + 128,31,1,0,15,131,0,3,252,0,18,32,96,23,2,0, + 30,15,0,63,31,128,63,31,128,63,31,128,63,31,128,30, + 15,0,0,0,0,0,0,0,0,0,0,0,0,0,3,252, + 0,14,30,0,30,31,0,62,15,128,60,15,128,124,15,128, + 124,15,192,252,15,192,252,15,192,252,15,192,255,255,192,252, + 0,0,252,0,0,252,0,0,252,0,64,124,0,64,124,0, + 192,62,0,192,62,0,128,31,1,0,15,131,0,3,252,0, + 12,34,68,15,1,0,96,0,240,0,248,0,248,0,124,0, + 28,0,14,0,7,0,3,0,0,0,0,0,0,0,127,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,127,240,12,34,68,15,2,0, + 0,224,1,240,1,240,3,224,7,192,7,128,15,0,28,0, + 24,0,0,0,0,0,0,0,255,0,63,0,63,0,63,0, + 63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0, + 63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0, + 63,0,255,224,14,34,68,14,0,0,7,128,15,128,15,128, + 15,192,31,224,60,224,56,112,112,60,192,12,0,0,0,0, + 0,0,63,192,15,192,15,192,15,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,15,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,15,192,15,192,63,248,14,32, + 64,14,1,0,120,120,252,252,252,252,252,252,252,252,120,120, + 0,0,0,0,0,0,0,0,63,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,15,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,15,192,15,192,15,192,15,192, + 15,192,63,248,20,34,102,24,2,0,15,193,128,15,227,0, + 7,254,0,3,248,0,1,248,0,1,252,0,3,254,0,14, + 126,0,24,63,0,0,63,128,0,31,128,0,15,192,7,255, + 192,15,15,224,30,7,224,62,7,224,62,7,224,124,7,240, + 124,3,240,252,3,240,252,3,240,252,3,240,252,3,240,252, + 3,240,252,3,240,252,3,240,252,3,240,124,3,224,124,7, + 224,62,7,192,62,7,192,30,7,128,15,15,0,3,252,0, + 23,32,96,27,2,0,3,224,96,7,248,64,15,255,192,12, + 127,128,8,15,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,255,31,192,63,35,224,63,65,240,63,65,248, + 63,129,248,63,129,248,63,1,248,63,1,248,63,1,248,63, + 1,248,63,1,248,63,1,248,63,1,248,63,1,248,63,1, + 248,63,1,248,63,1,248,63,1,248,63,1,248,63,1,248, + 63,1,248,255,199,254,20,34,102,24,2,0,14,0,0,31, + 0,0,31,0,0,15,128,0,7,192,0,3,192,0,1,224, + 0,0,96,0,0,48,0,0,0,0,0,0,0,0,0,0, + 3,252,0,15,15,0,30,7,128,62,7,192,62,7,192,124, + 3,224,124,3,224,252,3,240,252,3,240,252,3,240,252,3, + 240,252,3,240,252,3,240,252,3,240,252,3,240,124,3,224, + 124,3,224,62,7,192,62,7,192,30,7,128,15,15,0,3, + 252,0,20,34,102,24,2,0,0,7,0,0,15,128,0,15, + 128,0,31,0,0,62,0,0,60,0,0,120,0,0,224,0, + 0,192,0,0,0,0,0,0,0,0,0,0,3,252,0,15, + 15,0,30,7,128,62,7,192,62,7,192,124,3,224,124,3, + 224,252,3,240,252,3,240,252,3,240,252,3,240,252,3,240, + 252,3,240,252,3,240,252,3,240,124,3,224,124,3,224,62, + 7,192,62,7,192,30,7,128,15,15,0,3,252,0,20,34, + 102,24,2,0,0,240,0,0,240,0,1,248,0,1,248,0, + 3,252,0,3,156,0,7,14,0,14,7,0,24,1,128,0, + 0,0,0,0,0,0,0,0,3,252,0,15,15,0,30,7, + 128,62,7,192,62,7,192,124,3,224,124,3,224,252,3,240, + 252,3,240,252,3,240,252,3,240,252,3,240,252,3,240,252, + 3,240,252,3,240,124,3,224,124,3,224,62,7,192,62,7, + 192,30,7,128,15,15,0,3,252,0,20,32,96,24,2,0, + 7,192,128,15,240,128,31,255,128,16,255,0,16,62,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,252, + 0,15,15,0,30,7,128,62,7,192,62,7,192,124,3,224, + 124,3,224,252,3,240,252,3,240,252,3,240,252,3,240,252, + 3,240,252,3,240,252,3,240,252,3,240,124,3,224,124,3, + 224,62,7,192,62,7,192,30,7,128,15,15,0,3,252,0, + 20,32,96,24,2,0,30,15,0,63,31,128,63,31,128,63, + 31,128,63,31,128,30,15,0,0,0,0,0,0,0,0,0, + 0,0,0,0,3,252,0,15,15,0,30,7,128,62,7,192, + 62,7,192,124,3,224,124,3,224,252,3,240,252,3,240,252, + 3,240,252,3,240,252,3,240,252,3,240,252,3,240,252,3, + 240,124,3,224,124,3,224,62,7,192,62,7,192,30,7,128, + 15,15,0,3,252,0,41,32,192,45,2,253,0,0,28,0, + 0,0,0,0,62,0,0,0,0,0,127,0,0,0,0,0, + 127,0,0,0,0,0,127,0,0,0,0,0,62,0,0,0, + 0,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 255,255,255,255,255,128,255,255,255,255,255,128,255,255,255,255, + 255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,28,0,0,0,0,0,62,0,0,0,0,0, + 127,0,0,0,0,0,127,0,0,0,0,0,127,0,0,0, + 0,0,62,0,0,0,0,0,28,0,0,0,20,22,66,24, + 2,1,3,252,48,15,15,96,30,15,192,62,7,192,62,7, + 192,124,7,224,124,7,224,252,15,240,252,27,240,252,51,240, + 252,115,240,252,227,240,252,195,240,253,131,240,255,3,240,126, + 3,224,126,3,224,62,7,192,62,7,192,63,7,128,111,15, + 0,195,252,0,24,34,102,26,1,0,7,0,0,7,128,0, + 7,192,0,7,192,0,3,224,0,1,224,0,0,112,0,0, + 48,0,0,24,0,0,0,0,0,0,0,0,0,0,255,143, + 248,31,129,248,31,129,248,31,129,248,31,129,248,31,129,248, + 31,129,248,31,129,248,31,129,248,31,129,248,31,129,248,31, + 129,248,31,129,248,31,129,248,31,129,248,31,129,248,31,131, + 248,31,131,248,31,133,248,15,133,248,15,201,248,7,241,255, + 24,34,102,26,1,0,0,3,128,0,3,128,0,7,128,0, + 15,128,0,15,0,0,30,0,0,28,0,0,56,0,0,48, + 0,0,0,0,0,0,0,0,0,0,255,143,248,31,129,248, + 31,129,248,31,129,248,31,129,248,31,129,248,31,129,248,31, + 129,248,31,129,248,31,129,248,31,129,248,31,129,248,31,129, + 248,31,129,248,31,129,248,31,129,248,31,131,248,31,131,248, + 31,133,248,15,133,248,15,201,248,7,241,255,24,34,102,26, + 1,0,0,56,0,0,120,0,0,124,0,0,252,0,0,254, + 0,1,206,0,3,135,0,7,3,128,14,0,192,0,0,0, + 0,0,0,0,0,0,255,143,248,31,129,248,31,129,248,31, + 129,248,31,129,248,31,129,248,31,129,248,31,129,248,31,129, + 248,31,129,248,31,129,248,31,129,248,31,129,248,31,129,248, + 31,129,248,31,129,248,31,131,248,31,131,248,31,133,248,15, + 133,248,15,201,248,7,241,255,24,32,96,26,1,0,7,131, + 192,15,199,224,15,199,224,15,199,224,15,199,224,7,131,192, + 0,0,0,0,0,0,0,0,0,0,0,0,255,135,248,31, + 129,248,31,129,248,31,129,248,31,129,248,31,129,248,31,129, + 248,31,129,248,31,129,248,31,129,248,31,129,248,31,129,248, + 31,129,248,31,129,248,31,129,248,31,129,248,31,131,248,31, + 131,248,31,133,248,15,133,248,15,201,248,7,241,255,23,45, + 135,25,1,245,0,1,192,0,1,224,0,3,224,0,7,192, + 0,7,128,0,15,0,0,14,0,0,28,0,0,24,0,0, + 0,0,0,0,0,0,0,0,255,241,254,63,192,120,31,128, + 48,15,192,32,15,192,32,15,192,96,7,224,64,7,224,64, + 3,240,192,3,240,128,1,248,128,1,249,128,0,249,0,0, + 253,0,0,253,0,0,126,0,0,126,0,0,62,0,0,60, + 0,0,28,0,0,28,0,0,12,0,0,8,0,0,8,0, + 0,8,0,15,16,0,31,16,0,63,144,0,63,32,0,62, + 32,0,62,64,0,31,192,0,15,0,0,22,44,132,25,1, + 244,3,128,0,15,128,0,63,128,0,255,128,0,223,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 135,240,31,159,248,31,177,248,31,160,252,31,192,252,31,192, + 252,31,192,252,31,128,252,31,128,252,31,128,248,31,129,248, + 31,129,240,31,129,240,31,129,224,31,131,192,31,131,128,31, + 135,128,31,134,0,31,140,0,31,152,0,31,224,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,30,0,0,120,0,0,224, + 0,0,128,0,0,23,44,132,25,1,245,3,193,224,7,227, + 240,7,227,240,7,227,240,7,227,240,3,193,224,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,255,241,254,63, + 192,120,31,128,48,15,192,32,15,192,32,15,192,96,7,224, + 64,7,224,64,3,240,192,3,240,128,1,240,128,1,249,128, + 0,249,0,0,253,0,0,253,0,0,126,0,0,126,0,0, + 62,0,0,60,0,0,28,0,0,28,0,0,12,0,0,8, + 0,0,8,0,0,8,0,15,16,0,31,16,0,63,144,0, + 63,32,0,62,32,0,62,64,0,31,192,0,15,0,0}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--48-480-72-72-P-258-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 34 + Calculated Max Values w=41 h=44 x= 6 y=13 dx=45 dy= 0 ascent=35 len=246 + Font Bounding box w=133 h=60 x=-41 y=-14 + Calculated Min Values x= 0 y=-9 dx= 0 dy= 0 + Pure Font ascent =34 descent= 0 + X Font ascent =34 descent= 0 + Max Font ascent =35 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb35n[1539] U8G_SECTION(".progmem.u8g_font_osb35n") = { + 0,133,60,215,242,34,0,0,0,0,42,57,0,35,247,34, + 0,17,19,57,24,4,13,1,128,0,3,192,0,3,192,0, + 227,195,0,241,135,128,248,143,128,252,159,128,126,191,0,3, + 192,0,3,192,0,126,191,0,252,159,128,248,143,128,241,135, + 128,225,195,0,3,192,0,3,192,0,3,192,0,1,128,0, + 41,41,246,45,2,249,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0, + 0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0, + 0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,255,255,255,255,255,128,255,255, + 255,255,255,128,255,255,255,255,255,128,0,0,28,0,0,0, + 0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0, + 0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0, + 0,0,28,0,0,0,0,0,28,0,0,0,9,15,30,13, + 2,248,126,0,255,0,255,128,255,128,255,128,127,128,1,128, + 1,128,1,128,3,0,2,0,6,0,28,0,56,0,96,0, + 12,5,10,18,3,10,255,240,255,240,255,240,255,240,255,240, + 8,6,6,14,3,1,126,255,255,255,255,126,16,44,88,22, + 3,247,0,7,0,15,0,14,0,14,0,14,0,30,0,28, + 0,28,0,60,0,56,0,56,0,120,0,112,0,112,0,240, + 0,224,0,224,0,224,1,224,1,192,1,192,3,192,3,128, + 3,128,7,128,7,0,7,0,15,0,14,0,14,0,14,0, + 30,0,28,0,28,0,60,0,56,0,56,0,120,0,112,0, + 112,0,240,0,224,0,224,0,224,0,23,35,105,28,2,0, + 0,16,0,0,254,0,3,199,128,7,131,192,15,1,224,15, + 1,224,31,1,240,63,1,248,63,1,248,127,1,248,127,1, + 252,127,1,252,127,1,252,255,1,254,255,1,254,255,1,254, + 255,1,254,255,1,254,255,1,254,255,1,254,255,1,254,255, + 1,254,255,1,254,127,1,252,127,1,252,127,1,252,127,1, + 252,63,1,248,63,1,248,31,1,240,15,1,224,15,1,224, + 7,131,192,3,199,128,0,254,0,16,34,68,28,6,0,0, + 240,0,240,1,240,7,240,255,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,255, + 255,255,255,21,34,102,28,3,1,7,255,0,14,15,192,28, + 7,224,56,7,240,120,3,240,120,3,248,248,3,248,252,3, + 248,255,3,248,255,3,248,255,7,248,127,7,240,63,15,240, + 12,15,224,0,31,192,0,63,128,0,127,0,0,252,0,1, + 240,0,3,192,0,7,128,0,14,0,24,12,0,24,24,0, + 24,48,0,24,96,0,24,111,192,56,127,255,248,255,255,240, + 239,255,240,195,255,240,193,255,224,192,255,192,192,63,128,22, + 34,102,28,3,1,7,255,0,14,15,192,28,7,224,56,7, + 240,120,3,240,124,3,248,126,3,248,127,3,248,127,3,248, + 127,3,248,63,3,240,30,3,240,0,7,224,0,7,192,0, + 15,0,7,248,0,0,31,128,0,15,192,0,7,224,0,7, + 240,0,3,248,0,3,248,62,3,252,127,3,252,255,3,252, + 255,3,252,255,3,252,254,3,252,252,3,248,248,7,248,120, + 7,240,56,15,224,30,31,192,15,255,0,23,34,102,28,2, + 0,0,7,192,0,15,192,0,15,192,0,31,192,0,63,192, + 0,63,192,0,127,192,0,127,192,0,255,192,0,223,192,1, + 223,192,1,159,192,3,159,192,7,31,192,6,31,192,14,31, + 192,12,31,192,28,31,192,24,31,192,56,31,192,112,31,192, + 96,31,192,224,31,192,255,255,254,0,31,192,0,31,192,0, + 31,192,0,31,192,0,31,192,0,31,192,0,31,192,0,31, + 192,7,255,252,7,255,252,21,34,102,28,4,0,32,0,192, + 60,7,128,63,255,128,63,255,0,63,254,0,63,248,0,63, + 224,0,63,0,0,48,0,0,48,0,0,48,0,0,48,0, + 0,48,0,0,49,252,0,54,63,0,60,15,192,56,15,224, + 48,15,224,32,7,240,0,7,240,0,7,248,0,7,248,8, + 7,248,62,7,248,126,7,248,254,7,248,254,7,248,254,7, + 240,248,7,240,240,7,224,112,15,192,48,15,192,28,31,0, + 15,252,0,22,34,102,28,3,1,0,255,128,3,192,192,7, + 192,96,15,128,240,31,131,240,31,7,240,63,15,240,63,15, + 240,127,15,224,127,7,192,127,3,0,127,0,0,255,0,0, + 255,0,0,255,63,0,255,255,192,255,195,224,255,131,240,255, + 3,248,255,1,248,255,1,252,255,1,252,255,1,252,127,1, + 252,127,1,252,127,1,252,127,1,252,63,1,248,63,1,248, + 31,1,248,15,129,240,7,131,224,3,195,192,1,255,0,20, + 34,102,28,5,1,71,224,224,207,240,224,223,248,112,255,252, + 48,255,254,48,255,255,240,255,255,240,224,31,176,192,0,32, + 192,0,96,128,0,96,128,0,192,128,1,192,0,1,128,0, + 3,128,0,7,0,0,15,0,0,14,0,0,30,0,0,60, + 0,0,124,0,0,252,0,1,252,0,1,248,0,3,248,0, + 3,248,0,7,248,0,7,248,0,7,248,0,7,248,0,7, + 248,0,7,248,0,3,248,0,3,240,0,23,34,102,28,3, + 1,1,255,128,7,0,192,12,0,96,28,0,48,56,0,24, + 56,0,24,120,0,24,120,0,24,124,0,24,126,0,24,127, + 0,48,127,192,32,127,240,96,63,255,128,63,255,0,31,255, + 192,15,255,240,7,255,248,15,255,248,24,63,252,48,15,252, + 112,3,254,96,0,254,224,0,126,224,0,62,224,0,30,224, + 0,30,224,0,12,240,0,28,112,0,24,56,0,24,28,0, + 48,15,0,192,3,255,0,22,34,102,28,3,1,3,254,0, + 15,15,0,31,7,128,62,7,192,126,3,224,126,3,240,126, + 3,240,254,3,248,254,3,248,254,3,248,254,3,248,254,3, + 252,254,3,252,254,3,252,126,3,252,127,7,252,63,7,252, + 31,15,252,15,255,252,3,243,252,0,3,252,0,3,252,0, + 3,248,7,3,248,31,131,248,31,195,248,63,195,240,63,195, + 240,63,131,224,62,7,224,60,7,192,28,15,128,14,31,0, + 7,252,0}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--48-480-72-72-P-258-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 35, '1' Height: 34 + Calculated Max Values w=49 h=46 x= 6 y=25 dx=52 dy= 0 ascent=38 len=246 + Font Bounding box w=133 h=60 x=-41 y=-14 + Calculated Min Values x=-2 y=-11 dx= 0 dy= 0 + Pure Font ascent =35 descent=-10 + X Font ascent =35 descent=-10 + Max Font ascent =38 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb35r[10245] U8G_SECTION(".progmem.u8g_font_osb35r") = { + 0,133,60,215,242,35,12,218,29,222,32,127,246,38,245,35, + 246,0,0,0,13,0,0,8,34,34,14,3,1,126,126,255, + 255,255,255,255,255,126,126,126,126,60,60,60,60,60,24,24, + 24,24,24,24,24,24,0,0,0,126,255,255,255,255,126,12, + 12,24,18,3,23,32,64,241,224,249,240,249,240,249,240,249, + 240,249,240,112,224,112,224,112,224,112,224,112,224,28,34,136, + 34,3,0,0,112,14,0,0,112,14,0,0,112,14,0,0, + 112,14,0,0,240,30,0,0,224,28,0,0,224,28,0,0, + 224,28,0,0,224,28,0,255,255,255,240,255,255,255,240,255, + 255,255,240,1,192,56,0,1,192,56,0,1,192,56,0,1, + 192,56,0,3,192,56,0,3,128,120,0,3,128,112,0,3, + 128,112,0,3,128,112,0,3,128,112,0,255,255,255,224,255, + 255,255,224,255,255,255,224,7,0,224,0,7,0,224,0,7, + 0,224,0,7,0,224,0,15,1,224,0,14,1,224,0,14, + 1,192,0,14,1,192,0,14,1,192,0,23,42,126,28,2, + 252,0,195,0,0,195,0,0,195,0,0,195,0,3,255,192, + 7,195,112,28,195,24,60,195,12,56,195,14,120,195,14,120, + 195,30,120,195,62,124,195,126,126,195,126,127,195,124,127,195, + 56,63,243,0,63,251,0,31,255,0,31,255,128,7,255,192, + 3,255,240,0,255,248,0,255,248,0,223,252,0,199,252,124, + 195,254,124,195,254,252,195,126,252,195,62,248,195,30,240,195, + 30,224,195,28,96,195,28,112,195,56,56,195,56,28,195,96, + 7,255,192,0,195,0,0,195,0,0,195,0,0,195,0,33, + 35,175,41,4,0,0,0,0,48,0,15,192,0,96,0,60, + 240,0,224,0,56,112,0,192,0,120,120,1,128,0,120,120, + 1,128,0,248,124,3,0,0,248,124,7,0,0,248,124,6, + 0,0,248,124,14,0,0,248,124,12,0,0,248,124,24,0, + 0,120,120,24,0,0,120,120,48,0,0,56,240,112,0,0, + 28,224,96,0,0,15,192,192,0,0,0,0,192,0,0,0, + 1,128,240,0,0,3,131,156,0,0,3,7,158,0,0,7, + 15,15,0,0,6,15,15,0,0,12,31,15,128,0,12,31, + 15,128,0,24,31,15,128,0,56,31,15,128,0,48,31,15, + 128,0,96,31,15,128,0,96,31,15,128,0,192,15,15,0, + 1,192,15,15,0,1,128,7,14,0,3,128,7,158,0,3, + 0,1,248,0,33,34,170,37,2,1,0,31,224,0,0,0, + 112,112,0,0,0,224,48,0,0,0,224,24,0,0,1,224, + 24,0,0,1,224,24,0,0,1,224,24,0,0,1,240,56, + 0,0,1,240,48,0,0,1,248,96,0,0,1,248,192,0, + 0,0,255,128,0,0,0,255,0,0,0,0,126,0,0,0, + 0,63,0,0,0,0,255,129,255,128,1,223,128,62,0,3, + 143,192,28,0,7,15,224,24,0,14,7,224,56,0,30,3, + 240,48,0,60,1,248,48,0,124,1,248,96,0,124,0,252, + 96,0,252,0,126,192,0,252,0,127,128,0,252,0,63,128, + 0,254,0,31,128,0,255,0,31,128,0,255,0,15,193,128, + 127,192,63,225,0,63,248,247,243,0,31,255,195,254,0,15, + 254,0,252,0,5,12,12,11,3,23,32,240,248,248,248,248, + 248,112,112,112,112,112,14,43,86,18,3,248,0,28,0,56, + 0,112,0,224,1,192,3,128,7,0,15,0,14,0,30,0, + 30,0,60,0,60,0,124,0,124,0,124,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 124,0,124,0,124,0,124,0,60,0,60,0,30,0,30,0, + 14,0,15,0,7,0,3,128,1,192,0,224,0,112,0,56, + 0,12,13,43,86,17,1,248,192,0,224,0,48,0,24,0, + 28,0,14,0,7,0,7,128,3,128,3,192,1,224,1,224, + 1,224,1,240,1,240,1,240,1,248,1,248,1,248,1,248, + 1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,240, + 1,240,1,240,1,224,1,224,3,192,3,192,3,128,7,128, + 7,0,14,0,28,0,56,0,112,0,224,0,128,0,17,19, + 57,24,4,13,1,128,0,3,192,0,3,192,0,227,195,0, + 241,135,128,248,143,128,252,159,128,126,191,0,3,192,0,3, + 192,0,126,191,0,252,159,128,248,143,128,241,135,128,225,195, + 0,3,192,0,3,192,0,3,192,0,1,128,0,41,41,246, + 45,2,249,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,255,255,255,255,255,128,255,255,255,255,255, + 128,255,255,255,255,255,128,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,9,15,30,13,2,248,126, + 0,255,0,255,128,255,128,255,128,127,128,1,128,1,128,1, + 128,3,0,2,0,6,0,28,0,56,0,96,0,12,5,10, + 18,3,10,255,240,255,240,255,240,255,240,255,240,8,6,6, + 14,3,1,126,255,255,255,255,126,16,44,88,22,3,247,0, + 7,0,15,0,14,0,14,0,14,0,30,0,28,0,28,0, + 60,0,56,0,56,0,120,0,112,0,112,0,240,0,224,0, + 224,0,224,1,224,1,192,1,192,3,192,3,128,3,128,7, + 128,7,0,7,0,15,0,14,0,14,0,14,0,30,0,28, + 0,28,0,60,0,56,0,56,0,120,0,112,0,112,0,240, + 0,224,0,224,0,224,0,23,35,105,28,2,0,0,16,0, + 0,254,0,3,199,128,7,131,192,15,1,224,15,1,224,31, + 1,240,63,1,248,63,1,248,127,1,248,127,1,252,127,1, + 252,127,1,252,255,1,254,255,1,254,255,1,254,255,1,254, + 255,1,254,255,1,254,255,1,254,255,1,254,255,1,254,255, + 1,254,127,1,252,127,1,252,127,1,252,127,1,252,63,1, + 248,63,1,248,31,1,240,15,1,224,15,1,224,7,131,192, + 3,199,128,0,254,0,16,34,68,28,6,0,0,240,0,240, + 1,240,7,240,255,240,7,240,7,240,7,240,7,240,7,240, + 7,240,7,240,7,240,7,240,7,240,7,240,7,240,7,240, + 7,240,7,240,7,240,7,240,7,240,7,240,7,240,7,240, + 7,240,7,240,7,240,7,240,7,240,7,240,255,255,255,255, + 21,34,102,28,3,1,7,255,0,14,15,192,28,7,224,56, + 7,240,120,3,240,120,3,248,248,3,248,252,3,248,255,3, + 248,255,3,248,255,7,248,127,7,240,63,15,240,12,15,224, + 0,31,192,0,63,128,0,127,0,0,252,0,1,240,0,3, + 192,0,7,128,0,14,0,24,12,0,24,24,0,24,48,0, + 24,96,0,24,111,192,56,127,255,248,255,255,240,239,255,240, + 195,255,240,193,255,224,192,255,192,192,63,128,22,34,102,28, + 3,1,7,255,0,14,15,192,28,7,224,56,7,240,120,3, + 240,124,3,248,126,3,248,127,3,248,127,3,248,127,3,248, + 63,3,240,30,3,240,0,7,224,0,7,192,0,15,0,7, + 248,0,0,31,128,0,15,192,0,7,224,0,7,240,0,3, + 248,0,3,248,62,3,252,127,3,252,255,3,252,255,3,252, + 255,3,252,254,3,252,252,3,248,248,7,248,120,7,240,56, + 15,224,30,31,192,15,255,0,23,34,102,28,2,0,0,7, + 192,0,15,192,0,15,192,0,31,192,0,63,192,0,63,192, + 0,127,192,0,127,192,0,255,192,0,223,192,1,223,192,1, + 159,192,3,159,192,7,31,192,6,31,192,14,31,192,12,31, + 192,28,31,192,24,31,192,56,31,192,112,31,192,96,31,192, + 224,31,192,255,255,254,0,31,192,0,31,192,0,31,192,0, + 31,192,0,31,192,0,31,192,0,31,192,0,31,192,7,255, + 252,7,255,252,21,34,102,28,4,0,32,0,192,60,7,128, + 63,255,128,63,255,0,63,254,0,63,248,0,63,224,0,63, + 0,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 0,49,252,0,54,63,0,60,15,192,56,15,224,48,15,224, + 32,7,240,0,7,240,0,7,248,0,7,248,8,7,248,62, + 7,248,126,7,248,254,7,248,254,7,248,254,7,240,248,7, + 240,240,7,224,112,15,192,48,15,192,28,31,0,15,252,0, + 22,34,102,28,3,1,0,255,128,3,192,192,7,192,96,15, + 128,240,31,131,240,31,7,240,63,15,240,63,15,240,127,15, + 224,127,7,192,127,3,0,127,0,0,255,0,0,255,0,0, + 255,63,0,255,255,192,255,195,224,255,131,240,255,3,248,255, + 1,248,255,1,252,255,1,252,255,1,252,127,1,252,127,1, + 252,127,1,252,127,1,252,63,1,248,63,1,248,31,1,248, + 15,129,240,7,131,224,3,195,192,1,255,0,20,34,102,28, + 5,1,71,224,224,207,240,224,223,248,112,255,252,48,255,254, + 48,255,255,240,255,255,240,224,31,176,192,0,32,192,0,96, + 128,0,96,128,0,192,128,1,192,0,1,128,0,3,128,0, + 7,0,0,15,0,0,14,0,0,30,0,0,60,0,0,124, + 0,0,252,0,1,252,0,1,248,0,3,248,0,3,248,0, + 7,248,0,7,248,0,7,248,0,7,248,0,7,248,0,7, + 248,0,3,248,0,3,240,0,23,34,102,28,3,1,1,255, + 128,7,0,192,12,0,96,28,0,48,56,0,24,56,0,24, + 120,0,24,120,0,24,124,0,24,126,0,24,127,0,48,127, + 192,32,127,240,96,63,255,128,63,255,0,31,255,192,15,255, + 240,7,255,248,15,255,248,24,63,252,48,15,252,112,3,254, + 96,0,254,224,0,126,224,0,62,224,0,30,224,0,30,224, + 0,12,240,0,28,112,0,24,56,0,24,28,0,48,15,0, + 192,3,255,0,22,34,102,28,3,1,3,254,0,15,15,0, + 31,7,128,62,7,192,126,3,224,126,3,240,126,3,240,254, + 3,248,254,3,248,254,3,248,254,3,248,254,3,252,254,3, + 252,254,3,252,126,3,252,127,7,252,63,7,252,31,15,252, + 15,255,252,3,243,252,0,3,252,0,3,252,0,3,248,7, + 3,248,31,131,248,31,195,248,63,195,240,63,195,240,63,131, + 224,62,7,224,60,7,192,28,15,128,14,31,0,7,252,0, + 8,22,22,14,3,1,126,255,255,255,255,126,0,0,0,0, + 0,0,0,0,0,0,126,255,255,255,255,126,9,31,62,13, + 2,248,63,0,127,128,127,128,127,128,127,128,63,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,126,0,255,0,255,128,255,128,255,128,127,128,1,128, + 1,128,1,128,3,0,3,0,6,0,28,0,56,0,96,0, + 37,40,200,45,4,249,0,0,0,0,48,0,0,0,0,240, + 0,0,0,1,248,0,0,0,7,224,0,0,0,31,128,0, + 0,0,126,0,0,0,1,252,0,0,0,7,240,0,0,0, + 15,192,0,0,0,63,0,0,0,0,252,0,0,0,3,240, + 0,0,0,15,224,0,0,0,63,128,0,0,0,126,0,0, + 0,1,248,0,0,0,7,224,0,0,0,31,128,0,0,0, + 127,0,0,0,0,252,0,0,0,0,248,0,0,0,0,126, + 0,0,0,0,31,128,0,0,0,15,224,0,0,0,3,248, + 0,0,0,0,252,0,0,0,0,63,0,0,0,0,15,192, + 0,0,0,3,240,0,0,0,1,252,0,0,0,0,127,0, + 0,0,0,31,192,0,0,0,7,224,0,0,0,1,248,0, + 0,0,0,126,0,0,0,0,63,128,0,0,0,15,224,0, + 0,0,3,248,0,0,0,0,248,0,0,0,0,48,41,13, + 78,45,2,6,255,255,255,255,255,128,255,255,255,255,255,128, + 255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 255,255,255,255,255,128,255,255,255,255,255,128,255,255,255,255, + 255,128,37,40,200,45,4,249,96,0,0,0,0,120,0,0, + 0,0,252,0,0,0,0,63,0,0,0,0,15,192,0,0, + 0,3,240,0,0,0,1,252,0,0,0,0,127,0,0,0, + 0,31,128,0,0,0,7,224,0,0,0,1,248,0,0,0, + 0,126,0,0,0,0,63,128,0,0,0,15,224,0,0,0, + 3,240,0,0,0,0,252,0,0,0,0,63,0,0,0,0, + 15,192,0,0,0,7,240,0,0,0,1,248,0,0,0,0, + 248,0,0,0,3,240,0,0,0,15,192,0,0,0,63,128, + 0,0,0,254,0,0,0,1,248,0,0,0,7,224,0,0, + 0,31,128,0,0,0,126,0,0,0,1,252,0,0,0,7, + 240,0,0,0,31,192,0,0,0,63,0,0,0,0,252,0, + 0,0,3,240,0,0,0,15,224,0,0,0,63,128,0,0, + 0,254,0,0,0,0,248,0,0,0,0,96,0,0,0,0, + 15,34,68,22,3,1,31,240,59,248,96,252,96,252,192,126, + 192,126,192,126,192,126,192,126,64,252,96,252,48,248,1,240, + 1,224,3,192,3,128,7,0,7,0,14,0,12,16,12,16, + 12,16,12,16,6,32,3,192,0,0,0,0,0,128,3,224, + 7,240,7,240,7,240,7,240,3,224,35,34,170,39,2,1, + 0,15,255,0,0,0,56,1,224,0,0,224,0,112,0,1, + 128,0,28,0,7,0,0,14,0,14,0,0,7,0,12,0, + 248,3,0,28,3,205,243,128,56,7,135,241,128,56,15,7, + 225,192,112,31,7,225,192,112,62,7,224,224,112,62,7,224, + 224,224,124,7,192,224,224,124,7,192,224,224,124,7,192,224, + 224,252,15,192,224,224,248,15,128,224,224,248,15,128,224,224, + 248,15,129,192,224,248,31,129,192,224,248,31,129,128,112,248, + 31,3,128,112,248,63,3,0,112,120,111,6,0,56,60,199, + 140,0,56,31,3,240,0,28,0,0,0,0,14,0,0,0, + 0,7,0,0,0,0,3,128,0,0,0,1,192,0,96,0, + 0,120,1,192,0,0,31,255,0,0,33,35,175,36,2,0, + 0,0,192,0,0,0,1,192,0,0,0,1,224,0,0,0, + 1,224,0,0,0,3,224,0,0,0,3,240,0,0,0,3, + 240,0,0,0,7,240,0,0,0,7,248,0,0,0,7,248, + 0,0,0,15,248,0,0,0,15,252,0,0,0,15,252,0, + 0,0,25,252,0,0,0,25,254,0,0,0,25,254,0,0, + 0,48,254,0,0,0,48,255,0,0,0,32,255,0,0,0, + 96,127,0,0,0,96,127,128,0,0,64,127,128,0,0,192, + 63,128,0,0,192,63,192,0,0,255,255,192,0,1,255,255, + 192,0,1,128,31,224,0,1,0,31,224,0,3,0,15,224, + 0,3,0,15,240,0,2,0,15,240,0,6,0,7,240,0, + 15,0,7,248,0,31,0,15,252,0,255,240,255,255,128,28, + 34,136,33,3,0,255,255,240,0,15,224,126,0,15,224,31, + 0,15,224,31,128,15,224,15,192,15,224,15,192,15,224,15, + 224,15,224,15,224,15,224,15,224,15,224,15,224,15,224,15, + 224,15,224,15,192,15,224,15,192,15,224,31,128,15,224,30, + 0,15,224,60,0,15,255,224,0,15,224,124,0,15,224,63, + 0,15,224,31,128,15,224,15,192,15,224,15,224,15,224,15, + 240,15,224,15,240,15,224,15,240,15,224,15,240,15,224,15, + 240,15,224,15,240,15,224,15,224,15,224,15,224,15,224,31, + 192,15,224,31,128,15,224,126,0,255,255,248,0,26,34,136, + 31,3,1,0,127,193,128,1,224,241,128,3,192,63,128,15, + 128,31,128,15,128,15,128,31,0,15,128,63,0,7,128,63, + 0,7,128,127,0,3,128,127,0,3,128,127,0,3,128,127, + 0,1,128,255,0,1,128,255,0,1,128,255,0,1,128,255, + 0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255, + 0,0,0,255,0,0,0,255,0,0,192,127,0,0,192,127, + 0,0,192,127,0,0,128,63,0,1,128,63,0,1,128,63, + 0,1,128,31,128,3,0,15,128,3,0,7,128,6,0,3, + 192,12,0,1,224,56,0,0,127,224,0,32,34,136,37,3, + 0,255,255,248,0,15,224,31,0,15,224,7,128,15,224,3, + 224,15,224,1,240,15,224,1,240,15,224,0,248,15,224,0, + 252,15,224,0,252,15,224,0,254,15,224,0,254,15,224,0, + 254,15,224,0,255,15,224,0,255,15,224,0,255,15,224,0, + 255,15,224,0,255,15,224,0,255,15,224,0,255,15,224,0, + 255,15,224,0,255,15,224,0,254,15,224,0,254,15,224,0, + 254,15,224,0,254,15,224,0,252,15,224,0,252,15,224,0, + 248,15,224,1,240,15,224,1,224,15,224,3,192,15,224,7, + 128,15,224,30,0,255,255,248,0,27,34,136,33,3,0,255, + 255,255,224,15,224,31,224,15,224,7,224,15,224,3,224,15, + 224,1,224,15,224,1,224,15,224,0,224,15,224,0,224,15, + 224,0,96,15,224,48,96,15,224,48,96,15,224,48,0,15, + 224,112,0,15,224,112,0,15,224,240,0,15,225,240,0,15, + 255,240,0,15,225,240,0,15,224,240,0,15,224,112,0,15, + 224,112,32,15,224,48,96,15,224,48,96,15,224,48,96,15, + 224,0,96,15,224,0,96,15,224,0,224,15,224,0,224,15, + 224,1,224,15,224,3,224,15,224,3,224,15,224,15,224,255, + 255,255,224,255,255,255,224,28,34,136,32,3,0,255,255,255, + 240,7,240,15,240,7,240,3,240,7,240,1,240,7,240,1, + 240,7,240,0,240,7,240,0,240,7,240,0,112,7,240,0, + 112,7,240,24,48,7,240,24,48,7,240,24,48,7,240,56, + 48,7,240,56,0,7,240,120,0,7,240,248,0,7,255,248, + 0,7,240,248,0,7,240,120,0,7,240,56,0,7,240,56, + 0,7,240,24,0,7,240,24,0,7,240,24,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,255,255,128,0,30,34,136,35,3,1,0,127,224,192,0, + 224,120,192,3,192,31,192,7,128,15,192,15,128,7,192,31, + 0,7,192,31,0,3,192,63,0,3,192,63,0,1,192,127, + 0,1,192,127,0,1,192,127,0,0,192,255,0,0,192,255, + 0,0,192,255,0,0,0,255,0,0,0,255,0,0,0,255, + 3,255,252,255,3,255,252,255,0,31,192,255,0,31,192,255, + 0,31,192,127,0,31,192,127,0,31,192,127,0,31,192,127, + 0,31,192,63,0,31,192,63,0,31,192,31,0,31,192,15, + 128,57,192,15,128,49,192,7,192,96,192,1,224,192,192,0, + 127,128,192,34,34,170,39,3,0,255,255,63,255,192,7,240, + 1,252,0,7,240,1,252,0,7,240,1,252,0,7,240,1, + 252,0,7,240,1,252,0,7,240,1,252,0,7,240,1,252, + 0,7,240,1,252,0,7,240,1,252,0,7,240,1,252,0, + 7,240,1,252,0,7,240,1,252,0,7,240,1,252,0,7, + 240,1,252,0,7,240,1,252,0,7,255,255,252,0,7,240, + 1,252,0,7,240,1,252,0,7,240,1,252,0,7,240,1, + 252,0,7,240,1,252,0,7,240,1,252,0,7,240,1,252, + 0,7,240,1,252,0,7,240,1,252,0,7,240,1,252,0, + 7,240,1,252,0,7,240,1,252,0,7,240,1,252,0,7, + 240,1,252,0,7,240,1,252,0,7,240,1,252,0,255,255, + 63,255,192,16,34,68,21,3,0,255,255,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,255,255,23,34,102, + 26,2,0,1,255,254,0,15,224,0,15,224,0,15,224,0, + 15,224,0,15,224,0,15,224,0,15,224,0,15,224,0,15, + 224,0,15,224,0,15,224,0,15,224,0,15,224,0,15,224, + 0,15,224,0,15,224,0,15,224,0,15,224,0,15,224,0, + 15,224,30,15,224,126,15,224,127,15,224,255,15,224,255,15, + 224,254,15,224,254,15,224,248,15,192,112,15,192,96,15,128, + 48,31,0,24,30,0,15,248,0,33,34,170,37,3,0,255, + 255,31,254,0,7,240,7,240,0,7,240,3,192,0,7,240, + 3,128,0,7,240,3,0,0,7,240,7,0,0,7,240,14, + 0,0,7,240,12,0,0,7,240,24,0,0,7,240,48,0, + 0,7,240,96,0,0,7,240,224,0,0,7,240,224,0,0, + 7,241,240,0,0,7,243,240,0,0,7,247,248,0,0,7, + 255,252,0,0,7,255,252,0,0,7,249,254,0,0,7,241, + 254,0,0,7,240,255,0,0,7,240,255,0,0,7,240,127, + 128,0,7,240,127,128,0,7,240,63,192,0,7,240,63,192, + 0,7,240,31,224,0,7,240,31,224,0,7,240,15,240,0, + 7,240,15,240,0,7,240,7,248,0,7,240,7,248,0,7, + 240,7,252,0,255,255,63,255,128,28,34,136,32,3,0,255, + 255,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,48,7, + 240,0,48,7,240,0,48,7,240,0,112,7,240,0,112,7, + 240,0,112,7,240,0,240,7,240,0,240,7,240,0,240,7, + 240,1,240,7,240,3,240,7,240,3,240,7,240,7,240,255, + 255,255,240,255,255,255,240,39,34,170,43,2,0,255,240,0, + 63,254,7,240,0,63,192,7,248,0,63,192,7,248,0,63, + 192,7,248,0,127,192,7,252,0,127,192,7,252,0,95,192, + 7,252,0,95,192,7,254,0,223,192,6,254,0,223,192,6, + 255,0,159,192,6,127,0,159,192,6,127,1,159,192,6,127, + 129,159,192,6,63,129,31,192,6,63,129,31,192,6,63,195, + 31,192,6,31,194,31,192,6,31,226,31,192,6,15,226,31, + 192,6,15,230,31,192,6,15,244,31,192,6,7,244,31,192, + 6,7,244,31,192,6,7,252,31,192,6,3,248,31,192,6, + 3,248,31,192,6,1,248,31,192,6,1,248,31,192,6,1, + 240,31,192,6,0,240,31,192,15,0,240,31,192,63,192,240, + 31,192,255,240,97,255,254,34,35,175,37,2,255,255,224,15, + 255,192,31,240,3,255,0,15,240,0,252,0,15,248,0,120, + 0,7,252,0,48,0,3,254,0,48,0,3,254,0,48,0, + 3,255,0,48,0,3,255,128,48,0,3,255,128,48,0,3, + 127,192,48,0,3,63,224,48,0,3,31,224,48,0,3,31, + 240,48,0,3,15,248,48,0,3,7,248,48,0,3,7,252, + 48,0,3,3,254,48,0,3,1,255,48,0,3,1,255,48, + 0,3,0,255,176,0,3,0,127,240,0,3,0,127,240,0, + 3,0,63,240,0,3,0,31,240,0,3,0,15,240,0,3, + 0,15,240,0,3,0,7,240,0,3,0,3,240,0,3,0, + 3,240,0,7,128,1,240,0,15,192,0,240,0,63,240,0, + 240,0,255,252,0,112,0,0,0,0,48,0,28,34,136,33, + 3,1,0,63,192,0,0,224,112,0,3,192,56,0,7,128, + 30,0,15,128,30,0,15,0,15,0,31,0,15,128,63,0, + 15,192,63,0,15,192,127,0,15,192,127,0,15,224,127,0, + 15,224,127,0,15,224,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,127,0,15,224,127,0,15,224,127,0, + 15,224,127,0,15,192,63,0,15,192,63,0,15,192,31,0, + 15,128,15,0,15,0,15,128,31,0,7,128,30,0,3,192, + 60,0,0,224,112,0,0,63,192,0,29,34,136,34,3,0, + 255,255,248,0,7,240,63,0,7,240,15,192,7,240,15,224, + 7,240,15,240,7,240,7,240,7,240,7,248,7,240,7,248, + 7,240,7,248,7,240,7,248,7,240,7,248,7,240,7,248, + 7,240,7,240,7,240,15,240,7,240,15,224,7,240,15,192, + 7,240,31,0,7,255,252,0,7,240,0,0,7,240,0,0, + 7,240,0,0,7,240,0,0,7,240,0,0,7,240,0,0, + 7,240,0,0,7,240,0,0,7,240,0,0,7,240,0,0, + 7,240,0,0,7,240,0,0,7,240,0,0,7,240,0,0, + 7,240,0,0,255,255,128,0,28,45,180,33,3,246,0,63, + 192,0,0,224,112,0,3,192,56,0,7,128,30,0,15,128, + 30,0,15,0,15,0,31,0,15,128,63,0,15,128,63,0, + 15,192,127,0,15,192,127,0,15,224,127,0,15,224,127,0, + 15,224,255,0,15,240,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,127,0,15,224,127,0,15,224,127,0, + 15,224,63,0,15,192,63,15,15,192,31,17,143,128,15,160, + 223,0,15,160,223,0,7,160,254,0,3,224,252,16,0,240, + 248,16,0,127,224,16,0,0,224,16,0,0,224,16,0,0, + 224,48,0,0,240,48,0,0,248,112,0,0,255,240,0,0, + 255,224,0,0,127,224,0,0,127,192,0,0,63,128,0,0, + 31,0,32,36,144,36,3,254,255,255,240,0,7,240,126,0, + 7,240,63,0,7,240,63,128,7,240,31,192,7,240,31,192, + 7,240,31,224,7,240,31,224,7,240,31,224,7,240,31,224, + 7,240,31,224,7,240,31,192,7,240,63,192,7,240,63,0, + 7,240,126,0,7,255,240,0,7,240,240,0,7,240,62,0, + 7,240,63,0,7,240,31,128,7,240,31,128,7,240,31,192, + 7,240,31,192,7,240,31,192,7,240,31,192,7,240,31,195, + 7,240,31,195,7,240,31,195,7,240,31,195,7,240,31,195, + 7,240,31,198,7,240,31,198,7,240,15,238,255,255,135,252, + 0,0,3,248,0,0,0,96,23,34,102,29,4,1,7,252, + 24,24,15,24,56,3,248,112,1,248,112,0,248,240,0,120, + 248,0,120,248,0,56,252,0,24,254,0,24,255,128,24,255, + 224,8,127,240,0,127,252,0,63,254,0,31,255,128,15,255, + 192,3,255,240,1,255,248,128,127,248,192,31,252,192,15,252, + 192,3,254,224,1,254,224,0,126,224,0,62,240,0,30,248, + 0,30,248,0,28,252,0,28,254,0,24,239,0,48,195,128, + 96,193,255,128,29,34,136,34,3,0,255,255,255,248,255,63, + 231,248,252,31,193,248,248,31,192,248,248,31,192,248,240,31, + 192,120,224,31,192,56,224,31,192,56,224,31,192,56,192,31, + 192,24,192,31,192,24,192,31,192,24,192,31,192,24,128,31, + 192,8,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,3,255, + 254,0,33,34,170,38,3,0,255,255,7,255,128,15,224,1, + 254,0,15,224,0,120,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,15,224,0,48,0,15, + 224,0,48,0,15,224,0,48,0,15,224,0,48,0,15,224, + 0,48,0,15,224,0,48,0,15,224,0,48,0,15,224,0, + 48,0,15,224,0,48,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,7,224,0,48,0,7, + 224,0,96,0,7,240,0,96,0,3,240,0,192,0,1,248, + 1,192,0,0,252,3,128,0,0,127,159,0,0,0,31,252, + 0,0,34,34,170,37,2,0,255,255,135,255,192,15,248,0, + 126,0,7,248,0,56,0,7,248,0,56,0,3,248,0,48, + 0,3,252,0,48,0,3,252,0,48,0,1,254,0,96,0, + 1,254,0,96,0,0,254,0,96,0,0,255,0,192,0,0, + 255,0,192,0,0,127,0,192,0,0,127,129,128,0,0,127, + 129,128,0,0,63,129,128,0,0,63,195,0,0,0,63,195, + 0,0,0,31,195,0,0,0,31,230,0,0,0,15,230,0, + 0,0,15,246,0,0,0,15,252,0,0,0,7,252,0,0, + 0,7,252,0,0,0,7,248,0,0,0,3,248,0,0,0, + 3,248,0,0,0,3,240,0,0,0,1,240,0,0,0,1, + 240,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224, + 0,0,49,34,238,52,2,0,255,255,63,255,207,255,128,31, + 252,7,254,0,252,0,7,248,3,252,0,112,0,7,248,1, + 252,0,112,0,3,248,1,254,0,96,0,3,252,1,254,0, + 96,0,3,252,0,254,0,96,0,1,252,0,254,0,192,0, + 1,254,1,255,0,192,0,1,254,1,255,0,192,0,0,254, + 1,255,1,128,0,0,255,3,127,129,128,0,0,255,3,63, + 129,128,0,0,127,3,63,129,128,0,0,127,135,63,195,0, + 0,0,127,134,31,195,0,0,0,63,134,31,195,0,0,0, + 63,198,31,231,0,0,0,31,204,15,230,0,0,0,31,204, + 15,230,0,0,0,31,236,15,246,0,0,0,15,248,7,252, + 0,0,0,15,248,7,252,0,0,0,15,248,7,252,0,0, + 0,7,248,3,252,0,0,0,7,240,3,248,0,0,0,7, + 240,3,248,0,0,0,3,240,1,248,0,0,0,3,224,1, + 240,0,0,0,3,224,1,240,0,0,0,1,224,0,240,0, + 0,0,1,192,0,240,0,0,0,1,192,0,224,0,0,0, + 0,192,0,96,0,0,33,34,170,36,2,0,127,255,31,254, + 0,31,252,3,240,0,7,248,3,192,0,3,248,3,128,0, + 3,252,3,128,0,1,252,3,0,0,1,254,7,0,0,0, + 255,6,0,0,0,255,12,0,0,0,127,140,0,0,0,127, + 152,0,0,0,63,240,0,0,0,63,240,0,0,0,31,224, + 0,0,0,31,224,0,0,0,15,240,0,0,0,15,248,0, + 0,0,7,248,0,0,0,7,252,0,0,0,7,252,0,0, + 0,15,254,0,0,0,29,254,0,0,0,24,255,0,0,0, + 56,255,0,0,0,48,127,128,0,0,96,127,128,0,0,224, + 63,192,0,0,192,63,224,0,1,128,31,224,0,3,128,31, + 240,0,3,128,15,240,0,7,128,15,248,0,31,128,31,252, + 0,255,240,127,255,128,32,34,136,35,2,0,255,254,15,255, + 31,248,1,248,15,248,0,240,7,248,0,224,7,248,0,192, + 3,252,0,192,3,252,0,192,1,252,1,128,1,254,1,128, + 0,254,3,0,0,255,3,0,0,255,3,0,0,127,134,0, + 0,127,134,0,0,63,196,0,0,63,204,0,0,31,204,0, + 0,31,248,0,0,15,248,0,0,15,248,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,255,255,0,25,34,136,31,3,0,127,255,255,128,127,128, + 127,128,126,0,255,0,124,0,255,0,120,1,254,0,120,3, + 254,0,112,3,252,0,112,7,252,0,96,7,248,0,96,15, + 248,0,96,15,240,0,64,31,224,0,0,31,224,0,0,63, + 192,0,0,63,192,0,0,127,128,0,0,127,128,0,0,255, + 0,0,0,255,0,0,1,254,0,0,3,254,0,128,3,252, + 0,128,7,248,0,128,7,248,0,128,15,240,1,128,15,240, + 1,128,31,224,3,128,31,224,3,128,63,192,7,128,63,192, + 15,128,127,128,31,128,127,128,63,128,255,255,255,128,255,255, + 255,128,11,42,84,18,4,248,255,224,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,255,224,16,44,88,22, + 3,247,224,0,224,0,224,0,240,0,112,0,112,0,120,0, + 56,0,56,0,60,0,28,0,28,0,30,0,14,0,14,0, + 14,0,15,0,7,0,7,0,7,128,3,128,3,128,3,192, + 1,192,1,192,1,224,0,224,0,224,0,224,0,240,0,112, + 0,112,0,120,0,56,0,56,0,60,0,28,0,28,0,30, + 0,14,0,14,0,14,0,15,0,7,11,42,84,18,3,248, + 255,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,255,224,22,17,51,28,3,18,0,48,0,0,112,0, + 0,120,0,0,252,0,0,252,0,1,254,0,3,207,0,3, + 143,0,7,135,128,15,3,128,15,3,192,30,1,224,60,0, + 224,60,0,240,120,0,120,112,0,56,240,0,60,25,3,12, + 25,0,248,255,255,255,128,255,255,255,128,255,255,255,128,8, + 9,9,21,4,25,96,240,248,124,60,30,15,3,1,21,22, + 66,24,2,1,15,248,0,24,62,0,56,63,0,120,31,0, + 124,31,128,126,31,128,126,31,128,62,31,128,8,63,128,1, + 255,128,7,159,128,30,31,128,62,31,128,124,31,128,124,31, + 128,252,31,128,252,31,136,252,31,136,252,31,152,254,63,144, + 127,127,240,63,143,224,22,34,102,25,1,0,255,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,159,128,31,179,224,31,225,224,31,193,240,31,193,248,31, + 192,248,31,192,248,31,128,252,31,128,252,31,128,252,31,128, + 252,31,128,252,31,128,252,31,128,252,31,128,252,31,128,248, + 31,192,248,31,193,248,29,193,240,24,225,224,24,99,192,16, + 63,128,18,22,66,22,2,1,3,252,0,15,6,0,31,3, + 0,62,3,128,62,7,128,126,15,128,124,31,128,252,31,128, + 252,31,0,252,14,0,252,0,0,252,0,0,252,0,0,252, + 0,0,252,0,0,124,0,64,124,0,192,62,0,128,62,0, + 128,30,1,0,15,130,0,3,252,0,23,34,102,26,2,0, + 0,63,224,0,7,224,0,7,224,0,7,224,0,7,224,0, + 7,224,0,7,224,0,7,224,0,7,224,0,7,224,0,7, + 224,0,7,224,7,231,224,31,23,224,30,31,224,62,15,224, + 126,15,224,124,15,224,124,7,224,252,7,224,252,7,224,252, + 7,224,252,7,224,252,7,224,252,7,224,252,7,224,252,7, + 224,124,7,224,124,15,224,126,15,224,62,15,224,30,31,224, + 15,23,224,7,231,254,18,22,66,23,2,1,3,252,0,14, + 30,0,30,31,0,62,15,128,60,15,128,124,15,128,124,15, + 192,252,15,192,252,15,192,252,15,192,255,255,192,252,0,0, + 252,0,0,252,0,0,252,0,64,124,0,64,124,0,192,62, + 0,192,62,0,128,31,1,0,15,131,0,3,252,0,18,34, + 102,16,1,1,0,255,0,1,199,128,7,199,128,7,199,192, + 15,143,192,15,143,192,31,143,192,31,143,128,31,135,128,31, + 128,0,31,128,0,31,128,0,255,240,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,255,240,0,24,33,99,27,2,246, + 7,254,62,31,15,71,63,7,143,62,7,207,126,7,238,126, + 7,228,126,7,224,126,7,224,126,7,224,62,7,192,31,15, + 128,15,15,0,3,252,0,12,0,0,48,0,0,48,0,0, + 112,0,0,112,0,0,127,255,128,127,255,224,63,255,240,31, + 255,240,7,255,248,60,1,248,96,0,120,192,0,56,192,0, + 56,192,0,48,192,0,112,96,0,96,48,1,192,30,7,128, + 3,252,0,24,34,102,27,1,0,255,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,143,224, + 31,145,240,31,160,248,31,160,252,31,192,252,31,192,252,31, + 192,252,31,128,252,31,128,252,31,128,252,31,128,252,31,128, + 252,31,128,252,31,128,252,31,128,252,31,128,252,31,128,252, + 31,128,252,31,128,252,31,128,252,31,128,252,255,227,255,11, + 35,70,15,2,0,4,0,31,0,63,128,63,128,63,128,63, + 128,31,0,4,0,0,0,0,0,0,0,0,0,0,0,255, + 0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63, + 0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63, + 0,63,0,63,0,63,0,63,0,255,224,15,46,92,16,254, + 245,0,16,0,124,0,254,0,254,0,254,0,254,0,124,0, + 16,0,0,0,0,0,0,0,0,0,0,7,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,56,252,124,252,252, + 252,252,252,248,248,248,248,113,240,49,224,31,128,25,34,136, + 27,1,0,255,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,131,254,0,31,128,240,0,31,128,96,0,31, + 128,192,0,31,128,128,0,31,129,128,0,31,131,0,0,31, + 134,0,0,31,143,0,0,31,159,0,0,31,159,128,0,31, + 191,128,0,31,239,192,0,31,199,224,0,31,135,224,0,31, + 131,240,0,31,129,248,0,31,129,248,0,31,128,252,0,31, + 128,252,0,31,128,254,0,255,243,255,128,12,34,68,14,1, + 0,255,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,255,240,34,22,110,37,2,1,255,31,193,248,0, + 63,35,230,124,0,63,67,228,62,0,63,131,248,63,0,63, + 131,248,63,0,63,131,248,63,0,63,3,240,63,0,63,3, + 240,63,0,63,3,240,63,0,63,3,240,63,0,63,3,240, + 63,0,63,3,240,63,0,63,3,240,63,0,63,3,240,63, + 0,63,3,240,63,0,63,3,240,63,0,63,3,240,63,0, + 63,3,240,63,0,63,3,240,63,0,63,3,240,63,0,63, + 3,240,63,0,255,207,252,255,192,23,22,66,27,2,1,255, + 31,192,63,35,224,63,65,240,63,65,248,63,129,248,63,129, + 248,63,1,248,63,1,248,63,1,248,63,1,248,63,1,248, + 63,1,248,63,1,248,63,1,248,63,1,248,63,1,248,63, + 1,248,63,1,248,63,1,248,63,1,248,63,1,248,255,199, + 254,20,22,66,24,2,1,3,252,0,15,15,0,30,7,128, + 62,7,192,62,7,192,124,3,224,124,3,224,252,3,240,252, + 3,240,252,3,240,252,3,240,252,3,240,252,3,240,252,3, + 240,252,3,240,124,3,224,124,3,224,62,7,192,62,7,192, + 30,7,128,15,15,0,3,252,0,22,33,99,25,1,246,255, + 159,128,31,163,192,31,225,224,31,193,240,31,192,248,31,192, + 248,31,192,248,31,128,252,31,128,252,31,128,252,31,128,252, + 31,128,252,31,128,252,31,128,252,31,128,252,31,192,252,31, + 192,248,31,192,248,31,193,240,31,225,240,31,179,224,31,159, + 128,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,255, + 240,0,22,33,99,25,2,246,7,240,32,15,24,96,30,28, + 96,62,14,224,126,15,224,124,15,224,124,7,224,252,7,224, + 252,7,224,252,7,224,252,7,224,252,7,224,252,7,224,252, + 7,224,252,7,224,124,7,224,124,15,224,126,15,224,62,15, + 224,30,31,224,31,23,224,7,231,224,0,7,224,0,7,224, + 0,7,224,0,7,224,0,7,224,0,7,224,0,7,224,0, + 7,224,0,7,224,0,7,224,0,63,252,17,22,66,20,2, + 1,255,31,0,63,63,128,63,79,128,63,79,128,63,159,128, + 63,159,128,63,159,0,63,14,0,63,0,0,63,0,0,63, + 0,0,63,0,0,63,0,0,63,0,0,63,0,0,63,0, + 0,63,0,0,63,0,0,63,0,0,63,0,0,63,0,0, + 255,192,0,16,22,44,21,3,1,31,196,48,116,96,60,224, + 28,224,28,240,12,248,4,254,4,127,128,127,224,63,240,31, + 252,7,254,129,254,192,127,192,31,224,15,224,7,240,7,248, + 6,204,14,135,248,15,32,64,17,1,0,1,128,1,128,1, + 128,1,128,1,128,3,128,3,128,7,128,15,128,63,128,255, + 248,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,130,31,130,31,130,31,130,31, + 134,31,134,31,132,15,196,15,248,7,240,24,22,66,26,1, + 0,255,143,248,31,129,248,31,129,248,31,129,248,31,129,248, + 31,129,248,31,129,248,31,129,248,31,129,248,31,129,248,31, + 129,248,31,129,248,31,129,248,31,129,248,31,129,248,31,129, + 248,31,131,248,31,131,248,31,133,248,15,133,248,15,201,248, + 7,241,255,23,23,69,25,1,255,255,241,254,63,192,120,31, + 128,48,15,192,48,15,192,32,7,192,96,7,224,96,7,224, + 64,3,224,192,3,240,128,3,240,128,1,241,128,1,249,0, + 0,249,0,0,255,0,0,254,0,0,126,0,0,126,0,0, + 124,0,0,60,0,0,60,0,0,24,0,0,24,0,35,23, + 115,37,1,255,255,231,255,31,224,63,129,252,7,128,31,128, + 252,3,0,15,128,252,2,0,15,192,124,2,0,15,192,124, + 6,0,7,192,126,4,0,7,224,254,4,0,3,224,191,12, + 0,3,224,191,8,0,3,241,159,24,0,1,241,31,144,0, + 1,241,31,144,0,1,251,31,176,0,0,250,15,224,0,0, + 250,15,224,0,0,254,15,224,0,0,124,7,192,0,0,124, + 7,192,0,0,60,7,192,0,0,56,3,128,0,0,56,3, + 128,0,0,24,3,0,0,23,22,66,25,1,0,255,231,252, + 63,192,240,31,192,224,15,192,192,15,225,128,7,227,0,3, + 242,0,3,254,0,1,252,0,1,252,0,0,252,0,0,126, + 0,0,127,0,0,127,0,0,223,128,1,159,192,3,15,192, + 2,15,224,6,7,224,14,7,240,30,7,248,255,207,254,23, + 33,99,25,1,245,255,241,254,63,192,120,31,128,48,15,192, + 32,15,192,32,15,192,96,7,224,64,7,224,64,3,240,192, + 3,240,128,1,248,128,1,249,128,0,249,0,0,253,0,0, + 253,0,0,126,0,0,126,0,0,62,0,0,60,0,0,28, + 0,0,28,0,0,12,0,0,8,0,0,8,0,0,8,0, + 15,16,0,31,16,0,63,144,0,63,32,0,62,32,0,62, + 64,0,31,192,0,15,0,0,18,22,66,22,2,0,127,255, + 192,124,15,192,120,31,128,112,63,0,96,63,0,96,126,0, + 64,126,0,64,252,0,1,248,0,1,248,0,3,240,0,3, + 240,0,7,224,64,15,192,64,15,192,64,31,128,192,31,0, + 192,63,1,192,126,1,192,126,3,192,252,15,192,255,255,192, + 14,43,86,20,3,247,0,60,0,240,3,192,7,128,7,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,0,15,0,28,0, + 240,0,60,0,30,0,15,0,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,7,128,7,128,3,192,0,240,0,60,3,44,44,13, + 5,247,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,15,43, + 86,20,3,247,240,0,60,0,15,0,7,128,7,128,7,192, + 7,192,7,192,7,192,7,192,7,192,7,192,7,192,7,192, + 7,192,7,192,7,192,7,192,3,192,3,192,0,240,0,62, + 0,240,1,224,3,192,7,192,7,192,7,192,7,192,7,192, + 7,192,7,192,7,192,7,192,7,192,7,192,7,192,7,192, + 7,128,7,128,15,0,60,0,240,0,27,9,36,31,2,8, + 31,128,1,128,63,240,0,192,127,254,0,96,255,255,128,96, + 193,255,240,96,192,63,255,224,192,15,255,192,96,1,255,128, + 48,0,63,0,255}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--26-260-72-72-P-138-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=26 h=24 x= 5 y=15 dx=28 dy= 0 ascent=25 len=72 + Font Bounding box w=68 h=33 x=-21 y=-8 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =18 descent=-6 + X Font ascent =19 descent=-6 + Max Font ascent =25 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr18[7816] U8G_SECTION(".progmem.u8g_font_osr18") = { + 0,68,33,235,248,18,4,197,10,125,32,255,250,25,249,19, + 250,0,0,0,7,0,0,3,18,18,7,2,0,224,224,224, + 224,224,224,64,64,64,64,64,64,64,64,0,224,224,224,6, + 5,5,10,2,13,204,204,204,204,72,14,18,36,18,2,0, + 4,32,4,32,4,32,4,32,4,32,255,252,8,64,8,64, + 8,64,8,64,8,64,24,64,255,252,16,128,16,128,16,128, + 16,128,16,128,11,22,44,15,2,254,9,0,9,0,31,128, + 41,64,73,32,73,32,73,96,73,96,105,0,61,0,31,128, + 15,192,9,192,9,96,233,32,233,32,201,32,201,64,105,64, + 31,128,9,0,9,0,18,18,54,22,2,0,56,2,0,68, + 4,0,198,8,0,198,8,0,198,16,0,198,32,0,198,32, + 0,68,64,0,56,64,0,0,134,0,1,25,128,1,48,128, + 2,48,192,4,48,192,4,48,192,8,48,192,8,24,128,16, + 15,0,18,18,54,20,1,0,7,128,0,8,64,0,24,64, + 0,24,64,0,24,192,0,28,128,0,15,0,0,6,31,192, + 15,6,0,23,6,0,35,132,0,97,196,0,192,232,0,192, + 240,0,192,112,0,224,120,128,96,220,128,63,15,0,2,5, + 5,7,2,13,192,192,192,192,64,6,23,23,10,3,252,8, + 16,48,32,64,64,192,128,128,128,128,128,128,128,128,192,64, + 64,96,32,16,24,12,6,23,23,9,1,252,64,32,48,16, + 24,8,8,12,4,4,4,4,4,4,12,8,8,8,16,16, + 32,64,192,10,10,20,14,2,8,12,0,12,0,204,192,201, + 192,42,0,30,0,235,192,201,192,12,0,12,0,22,22,66, + 24,1,252,0,16,0,0,16,0,0,16,0,0,16,0,0, + 16,0,0,16,0,0,16,0,0,16,0,0,16,0,0,16, + 0,255,255,252,0,16,0,0,16,0,0,16,0,0,16,0, + 0,16,0,0,16,0,0,16,0,0,16,0,0,16,0,0, + 16,0,0,16,0,3,8,8,7,2,252,192,224,224,32,32, + 64,64,128,7,1,1,11,2,6,254,3,3,3,7,2,0, + 224,224,224,8,24,24,12,2,250,1,1,2,2,2,4,4, + 4,12,8,8,24,16,16,16,32,32,32,64,64,64,128,128, + 128,12,18,36,15,1,0,15,0,16,192,32,64,96,96,96, + 32,192,48,192,48,192,48,192,48,192,48,192,48,192,48,192, + 48,96,32,96,96,32,64,16,192,15,0,9,18,36,15,3, + 0,8,0,8,0,24,0,248,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,255,128,10,18,36,15,2,0,30,0,99,128,129, + 192,128,192,128,192,224,192,240,192,32,192,1,128,3,0,6, + 0,8,0,16,0,32,0,64,64,192,64,255,192,255,192,11, + 18,36,15,2,0,63,0,97,128,192,192,224,192,240,192,0, + 192,0,192,1,128,62,0,1,128,0,192,0,96,96,96,240, + 96,240,96,192,192,65,128,63,0,12,18,36,15,2,0,1, + 0,3,0,3,0,7,0,15,0,11,0,19,0,51,0,35, + 0,67,0,195,0,131,0,255,224,3,0,3,0,3,0,3, + 0,31,240,11,18,36,15,2,0,96,192,127,128,126,0,64, + 0,64,0,64,0,95,0,97,128,64,192,64,224,0,96,0, + 96,96,96,240,96,224,192,192,192,65,128,62,0,11,18,36, + 15,2,0,15,0,24,128,48,64,96,192,96,192,64,0,192, + 0,207,0,209,192,224,192,224,224,224,96,224,96,224,96,96, + 224,96,192,49,128,15,0,10,18,36,15,3,0,255,192,255, + 192,128,64,128,64,128,128,0,128,1,0,1,0,2,0,6, + 0,6,0,12,0,12,0,30,0,30,0,30,0,30,0,14, + 0,12,18,36,15,2,0,31,128,48,224,96,96,192,48,192, + 48,224,48,240,32,124,64,63,128,55,224,96,240,192,112,192, + 48,192,48,192,48,96,96,112,192,31,128,11,18,36,15,2, + 0,30,0,49,128,96,192,224,192,192,64,192,96,192,96,192, + 224,96,224,113,96,30,96,0,96,0,64,96,192,96,192,64, + 128,65,0,62,0,3,12,12,7,2,0,224,224,224,0,0, + 0,0,0,0,224,224,224,4,16,16,8,2,252,96,240,240, + 0,0,0,0,0,96,240,240,16,16,32,32,64,20,21,63, + 24,2,253,0,0,48,0,0,192,0,3,0,0,12,0,0, + 48,0,0,224,0,3,128,0,14,0,0,24,0,0,96,0, + 0,192,0,0,48,0,0,12,0,0,7,0,0,1,192,0, + 0,112,0,0,24,0,0,6,0,0,1,128,0,0,96,0, + 0,16,22,6,18,24,1,4,255,255,252,0,0,0,0,0, + 0,0,0,0,0,0,0,255,255,252,20,21,63,24,2,253, + 192,0,0,48,0,0,12,0,0,3,0,0,0,192,0,0, + 112,0,0,28,0,0,7,0,0,1,128,0,0,96,0,0, + 48,0,0,192,0,3,0,0,14,0,0,56,0,0,224,0, + 1,128,0,6,0,0,24,0,0,96,0,0,128,0,0,9, + 18,36,12,2,0,62,0,67,0,129,128,129,128,225,128,97, + 128,3,0,6,0,12,0,16,0,48,0,34,0,34,0,28, + 0,0,0,28,0,28,0,28,0,18,18,54,20,1,0,3, + 248,0,12,6,0,16,109,0,33,156,128,67,12,128,70,8, + 64,142,8,64,142,24,64,140,24,64,140,16,64,140,48,128, + 140,48,128,140,241,0,71,30,0,96,0,0,32,0,0,24, + 12,0,7,240,0,18,18,54,20,2,0,0,128,0,0,192, + 0,1,192,0,1,192,0,1,224,0,3,224,0,2,96,0, + 2,112,0,6,112,0,4,48,0,4,56,0,12,56,0,15, + 248,0,24,28,0,16,12,0,16,12,0,48,14,0,254,63, + 192,15,18,36,17,1,0,255,240,24,28,24,12,24,6,24, + 6,24,6,24,12,24,24,31,224,24,24,24,12,24,6,24, + 6,24,6,24,6,24,12,24,28,255,240,14,18,36,18,2, + 0,7,132,24,108,32,60,96,28,96,12,192,12,192,4,192, + 0,192,0,192,0,192,0,192,4,96,4,96,4,32,8,48, + 24,24,48,7,192,17,18,54,20,1,0,255,240,0,24,12, + 0,24,6,0,24,3,0,24,3,0,24,1,128,24,1,128, + 24,1,128,24,1,128,24,1,128,24,1,128,24,1,128,24, + 1,128,24,3,0,24,3,0,24,6,0,24,12,0,255,240, + 0,15,18,36,18,1,0,255,254,24,6,24,2,24,2,24, + 2,24,34,24,32,24,96,31,224,24,96,24,32,24,32,24, + 34,24,2,24,2,24,6,24,14,255,254,15,18,36,17,1, + 0,255,254,24,6,24,2,24,2,24,2,24,34,24,32,24, + 96,31,224,24,96,24,32,24,32,24,32,24,0,24,0,24, + 0,24,0,127,0,17,18,54,19,2,0,7,196,0,24,100, + 0,48,28,0,96,28,0,96,12,0,96,4,0,192,4,0, + 192,0,0,192,127,128,192,28,0,192,28,0,192,28,0,192, + 28,0,96,28,0,96,28,0,48,52,0,24,100,0,7,132, + 0,18,18,54,20,1,0,255,63,192,24,6,0,24,6,0, + 24,6,0,24,6,0,24,6,0,24,6,0,24,6,0,31, + 254,0,24,6,0,24,6,0,24,6,0,24,6,0,24,6, + 0,24,6,0,24,6,0,24,6,0,255,63,192,8,18,18, + 10,1,0,255,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,255,12,18,36,14,1,0,7,240,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,97,128,241,128,225,128,193,128,67,0,62,0,17, + 18,54,19,1,0,255,63,128,24,14,0,24,8,0,24,16, + 0,24,32,0,24,64,0,24,128,0,25,192,0,26,192,0, + 28,224,0,24,96,0,24,112,0,24,56,0,24,56,0,24, + 28,0,24,28,0,24,14,0,255,127,128,15,18,36,17,1, + 0,255,0,24,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,0,24,2,24,2,24,2,24,6,24, + 6,24,14,255,254,20,18,54,22,1,0,252,3,240,28,3, + 128,30,5,128,22,5,128,22,5,128,23,5,128,19,9,128, + 19,9,128,19,137,128,19,145,128,17,145,128,17,209,128,17, + 209,128,16,225,128,16,225,128,16,225,128,16,65,128,254,79, + 240,18,18,54,19,1,0,252,15,192,28,2,0,30,2,0, + 22,2,0,23,2,0,19,130,0,17,130,0,17,194,0,16, + 226,0,16,226,0,16,114,0,16,50,0,16,58,0,16,30, + 0,16,14,0,16,14,0,16,6,0,254,2,0,15,18,36, + 18,2,0,7,192,24,48,48,24,32,8,96,12,96,12,192, + 6,192,6,192,6,192,6,192,6,192,6,96,12,96,12,32, + 8,48,24,24,48,7,192,15,18,36,17,1,0,255,240,24, + 28,24,12,24,6,24,6,24,6,24,12,24,24,31,240,24, + 0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,255, + 0,15,22,44,18,2,252,7,192,24,48,48,24,32,8,96, + 12,96,12,192,6,192,6,192,6,192,6,192,6,192,6,96, + 12,99,140,36,76,52,120,28,114,7,226,0,98,0,118,0, + 60,0,24,17,18,54,19,1,0,255,240,0,24,24,0,24, + 12,0,24,12,0,24,12,0,24,12,0,24,24,0,31,224, + 0,24,48,0,24,56,0,24,24,0,24,24,0,24,24,0, + 24,28,128,24,28,128,24,28,128,24,31,0,255,15,0,13, + 18,36,16,2,0,30,32,97,160,192,96,192,96,192,32,192, + 32,224,0,124,0,63,128,15,224,129,240,128,112,128,24,192, + 24,192,24,224,16,152,32,135,192,15,18,36,18,2,0,255, + 254,195,14,131,6,131,2,3,2,3,2,3,2,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,31,240,19,18,54,21,1,0,255,15,224,24,1,0,24, + 1,0,24,1,0,24,1,0,24,1,0,24,1,0,24,1, + 0,24,1,0,24,1,0,24,1,0,24,1,0,24,1,0, + 24,1,0,12,1,0,12,2,0,6,4,0,1,248,0,18, + 18,54,20,1,0,255,31,192,28,3,0,28,2,0,12,2, + 0,14,6,0,6,4,0,7,4,0,7,8,0,3,8,0, + 3,136,0,3,144,0,1,144,0,1,208,0,0,224,0,0, + 224,0,0,224,0,0,64,0,0,64,0,26,18,72,28,1, + 0,255,63,159,192,28,14,3,0,12,6,2,0,12,14,2, + 0,14,15,6,0,14,15,4,0,6,19,4,0,7,19,140, + 0,7,19,136,0,3,49,136,0,3,161,216,0,3,161,208, + 0,1,160,208,0,1,192,240,0,1,192,224,0,0,192,96, + 0,0,128,96,0,0,128,64,0,18,18,54,20,1,0,127, + 191,128,14,12,0,14,12,0,7,8,0,7,16,0,3,176, + 0,1,160,0,1,192,0,0,192,0,0,224,0,1,96,0, + 3,112,0,2,56,0,4,56,0,12,28,0,8,12,0,24, + 14,0,254,63,192,17,18,54,19,1,0,255,31,128,28,6, + 0,28,4,0,14,4,0,6,8,0,7,8,0,3,144,0, + 3,160,0,1,224,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,0,192,0,0,192,0,0,192,0,7,252, + 0,14,18,36,17,2,0,127,252,112,56,96,48,64,112,64, + 224,128,192,1,192,3,128,3,0,7,0,14,0,12,4,28, + 4,56,4,48,12,112,28,224,56,255,248,5,23,23,10,3, + 251,248,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,248,8,24,24,12,2,250,128,128, + 128,64,64,64,32,32,32,16,16,16,16,8,8,8,4,4, + 4,2,2,2,1,1,5,23,23,10,2,251,248,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,248,11,9,18,15,2,9,4,0,14,0,10,0,17, + 0,49,128,32,128,64,64,64,96,128,32,14,1,2,14,0, + 252,255,252,4,4,4,11,2,13,192,224,96,16,11,12,24, + 13,1,0,30,0,99,0,65,128,97,128,33,128,15,128,113, + 128,193,128,195,160,195,160,197,160,121,192,11,18,36,13,0, + 0,240,0,48,0,48,0,48,0,48,0,48,0,51,128,52, + 192,56,96,56,96,48,96,48,96,48,96,48,96,48,96,56, + 96,40,192,39,128,9,12,24,11,1,0,30,0,33,0,96, + 128,193,128,193,128,192,0,192,0,192,0,192,128,96,128,33, + 0,30,0,12,18,36,14,1,0,7,192,0,192,0,192,0, + 192,0,192,0,192,28,192,98,192,97,192,193,192,192,192,192, + 192,192,192,192,192,192,192,97,192,97,192,30,240,9,12,24, + 12,1,0,30,0,35,0,97,128,193,128,193,128,255,128,192, + 0,192,0,192,128,96,128,33,0,30,0,9,18,36,9,1, + 0,15,0,24,128,49,128,49,0,48,0,48,0,254,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,0,254,0,12,18,36,15,2,250,30,112,97,176,225, + 240,192,192,192,192,192,192,225,128,97,128,30,0,224,0,255, + 0,127,192,64,96,128,32,128,32,128,32,192,64,63,128,13, + 18,36,15,1,0,240,0,48,0,48,0,48,0,48,0,48, + 0,51,192,52,192,56,96,56,96,48,96,48,96,48,96,48, + 96,48,96,48,96,48,96,253,248,6,18,18,8,1,0,112, + 112,32,0,0,0,240,48,48,48,48,48,48,48,48,48,48, + 252,7,24,24,8,255,250,6,6,0,0,0,0,62,6,6, + 6,6,6,6,6,6,6,6,6,6,6,198,198,140,120,12, + 18,36,14,1,0,240,0,48,0,48,0,48,0,48,0,48, + 0,49,240,48,128,49,0,50,0,50,0,54,0,59,0,51, + 0,49,128,49,192,48,224,253,240,6,18,18,8,1,0,240, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 252,19,12,36,21,1,0,243,199,0,52,249,128,56,113,192, + 56,97,192,48,97,192,48,97,192,48,97,192,48,97,192,48, + 97,192,48,97,192,48,97,192,253,251,224,13,12,24,15,1, + 0,243,192,52,192,56,96,56,96,48,96,48,96,48,96,48, + 96,48,96,48,96,48,96,253,248,10,12,24,13,1,0,30, + 0,33,128,97,128,192,192,192,192,192,192,192,192,192,192,192, + 192,97,128,33,128,30,0,11,18,36,14,1,250,243,128,52, + 192,56,96,56,96,48,96,48,96,48,96,48,96,48,96,56, + 96,56,192,55,128,48,0,48,0,48,0,48,0,48,0,252, + 0,12,18,36,13,1,250,28,64,98,64,97,192,192,192,192, + 192,192,192,192,192,192,192,192,192,97,192,97,192,30,192,0, + 192,0,192,0,192,0,192,0,192,3,240,9,12,24,11,1, + 0,243,128,52,128,57,128,56,128,56,0,48,0,48,0,48, + 0,48,0,48,0,48,0,252,0,9,12,24,11,1,0,125, + 0,131,0,129,0,193,0,240,0,124,0,31,0,131,128,128, + 128,192,128,224,128,159,0,8,17,17,10,1,0,16,16,16, + 48,48,254,48,48,48,48,48,48,48,49,49,51,30,13,12, + 24,14,0,0,241,224,48,96,48,96,48,96,48,96,48,96, + 48,96,48,96,48,224,48,224,57,96,30,120,13,12,24,14, + 1,0,252,248,48,96,48,64,24,64,24,128,12,128,12,128, + 13,0,7,0,7,0,2,0,2,0,19,12,36,21,1,0, + 253,251,224,48,96,128,48,96,128,24,113,0,24,177,0,12, + 177,0,12,154,0,13,26,0,7,28,0,7,12,0,2,12, + 0,2,8,0,12,12,24,14,1,0,249,224,48,128,57,0, + 25,0,14,0,14,0,6,0,11,0,19,0,17,128,33,192, + 243,240,13,18,36,14,0,250,252,248,56,32,24,32,24,64, + 12,64,12,64,12,128,6,128,6,128,7,0,3,0,3,0, + 2,0,2,0,34,0,98,0,100,0,56,0,9,12,24,12, + 1,0,255,128,195,128,131,0,134,0,142,0,12,0,24,0, + 56,0,48,128,96,128,96,128,255,128,6,23,23,12,3,251, + 12,16,48,48,48,48,56,24,24,24,16,224,48,16,24,24, + 56,48,48,48,48,16,12,1,24,24,7,3,250,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,6,23,23,11,3,251,192,32,48,48,48, + 112,96,96,96,96,32,28,48,96,96,96,96,112,48,48,48, + 32,192,15,5,10,17,1,4,32,4,254,2,143,194,129,254, + 64,124,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,7,0,0,3,18,18,7,2,250,224, + 224,224,0,64,64,64,64,64,64,64,64,224,224,224,224,224, + 224,9,18,36,15,3,253,4,0,4,0,4,0,31,0,53, + 0,100,128,229,128,197,128,196,0,196,0,196,0,228,128,100, + 128,53,0,31,0,4,0,4,0,4,0,14,18,36,19,2, + 0,0,248,1,132,3,4,2,12,6,0,6,0,6,0,62, + 0,7,224,6,0,6,0,6,0,6,0,6,0,116,4,140, + 4,139,248,112,240,11,11,22,15,2,2,159,32,113,192,64, + 64,128,96,128,32,128,32,128,32,128,32,64,64,96,192,159, + 32,15,18,36,15,0,0,252,126,56,24,24,16,28,16,12, + 32,14,64,6,64,7,128,3,128,63,240,3,0,3,0,63, + 240,3,0,3,0,3,0,3,0,31,224,1,23,23,7,3, + 251,128,128,128,128,128,128,128,128,128,0,0,0,0,0,128, + 128,128,128,128,128,128,128,128,10,23,46,17,3,251,30,0, + 33,0,35,0,35,0,32,0,48,0,28,0,46,0,71,0, + 131,128,129,192,192,192,224,64,112,64,56,128,29,0,6,0, + 3,0,3,0,49,0,49,0,34,0,28,0,7,2,2,11, + 2,15,198,198,19,18,54,21,1,0,3,248,0,12,6,0, + 16,225,0,33,28,128,67,12,64,70,4,64,134,4,32,134, + 0,32,134,0,32,134,0,32,134,0,32,134,8,32,67,8, + 64,67,8,64,32,240,128,16,1,0,12,6,0,3,248,0, + 7,8,8,11,2,10,240,200,24,104,136,154,100,252,6,10, + 10,12,3,1,32,68,136,136,136,136,136,136,68,32,13,6, + 12,15,1,3,255,248,0,8,0,8,0,8,0,8,0,8, + 7,1,1,11,2,6,254,19,18,54,21,1,0,3,248,0, + 12,6,0,31,225,0,35,24,128,67,24,64,67,24,64,131, + 24,32,131,24,32,131,224,32,131,16,32,131,24,32,131,24, + 32,67,26,64,67,26,64,47,142,128,16,1,0,12,6,0, + 3,248,0,7,1,1,11,2,15,254,7,7,7,15,4,11, + 56,68,130,130,130,68,56,22,18,54,24,1,255,0,16,0, + 0,16,0,0,16,0,0,16,0,0,16,0,0,16,0,0, + 16,0,255,255,252,0,16,0,0,16,0,0,16,0,0,16, + 0,0,16,0,0,16,0,0,16,0,0,0,0,0,0,0, + 255,255,252,7,10,10,11,2,8,124,134,134,230,6,8,16, + 96,66,254,7,11,11,12,3,7,120,132,198,198,4,120,14, + 70,198,134,120,4,4,4,11,5,13,48,48,96,128,14,19, + 38,17,2,249,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,64,192,64,128,64,132,163,252,159,28,128,0,128,0, + 192,0,192,0,192,0,224,0,64,0,11,22,44,14,2,252, + 63,224,120,128,248,128,248,128,248,128,248,128,248,128,120,128, + 8,128,8,128,8,128,8,128,8,128,8,128,8,128,8,128, + 8,128,8,128,8,128,8,128,8,128,8,128,3,3,3,7, + 2,7,224,224,224,5,5,5,11,3,251,64,48,24,24,240, + 6,11,11,12,3,7,16,16,240,48,48,48,48,48,48,48, + 252,6,9,9,10,2,9,112,136,132,132,132,132,72,48,252, + 7,10,10,13,3,1,8,68,68,34,34,34,34,68,68,136, + 18,18,54,23,3,0,16,4,0,240,12,0,48,8,0,48, + 16,0,48,16,0,48,32,0,48,96,0,48,67,0,48,135, + 0,48,139,0,253,11,0,3,19,0,2,19,0,6,35,0, + 4,63,192,8,3,0,24,3,0,16,15,192,17,18,54,22, + 3,0,16,4,0,240,8,0,48,8,0,48,16,0,48,16, + 0,48,32,0,48,64,0,48,78,0,48,179,128,48,161,128, + 253,49,128,3,17,128,2,3,0,4,6,0,4,8,0,8, + 16,128,24,49,128,16,63,128,18,18,54,23,3,0,120,4, + 0,134,12,0,198,8,0,4,16,0,120,16,0,12,32,0, + 6,96,0,198,67,0,198,135,0,142,139,0,121,11,0,2, + 19,0,2,19,0,4,35,0,12,63,192,8,3,0,16,3, + 0,16,15,192,9,18,36,12,1,250,28,0,28,0,28,0, + 0,0,28,0,34,0,34,0,6,0,4,0,24,0,48,0, + 96,0,227,0,195,128,192,128,224,128,97,0,62,0,18,24, + 72,20,2,0,6,0,0,6,0,0,3,0,0,0,128,0, + 0,0,0,0,0,0,0,128,0,0,192,0,1,192,0,1, + 192,0,1,224,0,3,224,0,2,96,0,2,112,0,6,112, + 0,4,48,0,4,56,0,12,24,0,15,248,0,24,28,0, + 16,12,0,16,14,0,48,14,0,254,63,192,18,24,72,20, + 2,0,0,16,0,0,48,0,0,96,0,0,64,0,0,128, + 0,0,0,0,0,128,0,0,192,0,1,192,0,1,192,0, + 1,224,0,3,224,0,2,96,0,2,112,0,6,112,0,4, + 48,0,4,56,0,12,56,0,15,248,0,24,28,0,16,12, + 0,16,14,0,48,14,0,254,63,192,18,24,72,20,2,0, + 0,128,0,0,192,0,1,96,0,2,48,0,4,8,0,0, + 0,0,0,128,0,0,192,0,1,192,0,1,192,0,1,224, + 0,3,224,0,2,96,0,2,112,0,6,112,0,4,48,0, + 4,56,0,12,56,0,15,248,0,24,28,0,16,12,0,16, + 12,0,48,14,0,254,63,192,18,23,69,20,2,0,3,144, + 0,5,240,0,0,0,0,0,0,0,0,0,0,0,128,0, + 0,128,0,1,192,0,1,192,0,1,224,0,3,224,0,2, + 96,0,2,112,0,6,112,0,4,48,0,12,56,0,12,56, + 0,15,248,0,24,28,0,16,28,0,16,12,0,48,14,0, + 254,63,192,18,23,69,20,1,0,6,24,0,6,24,0,2, + 16,0,0,0,0,0,0,0,0,192,0,0,192,0,0,192, + 0,1,224,0,1,224,0,1,96,0,2,112,0,2,112,0, + 2,48,0,4,56,0,4,24,0,12,24,0,15,252,0,8, + 12,0,24,12,0,24,14,0,56,6,0,254,63,192,17,24, + 72,20,2,0,1,192,0,2,32,0,2,32,0,2,32,0, + 1,192,0,0,0,0,0,128,0,0,128,0,1,192,0,1, + 192,0,1,192,0,2,224,0,2,96,0,2,96,0,4,112, + 0,4,112,0,12,48,0,8,56,0,15,248,0,24,28,0, + 16,28,0,16,12,0,48,14,0,254,127,128,24,18,54,26, + 0,0,0,127,255,0,28,7,0,28,3,0,44,1,0,44, + 1,0,76,17,0,76,16,0,140,48,0,143,240,1,12,48, + 3,12,16,2,12,17,7,252,17,4,12,1,8,12,1,8, + 12,3,24,12,7,254,63,255,14,24,48,18,2,250,7,132, + 24,108,32,60,96,28,96,12,192,12,192,4,192,0,192,0, + 192,0,192,0,192,4,96,4,96,4,96,8,48,24,24,48, + 7,192,2,0,3,128,0,192,0,192,8,192,7,128,15,24, + 48,18,1,0,4,0,6,0,3,0,1,128,0,0,0,0, + 255,254,24,6,24,2,24,2,24,2,24,34,24,32,24,96, + 31,224,24,96,24,32,24,32,24,34,24,2,24,2,24,6, + 24,14,255,254,15,24,48,18,1,0,0,48,0,48,0,96, + 0,192,0,0,0,0,255,254,24,14,24,6,24,2,24,2, + 24,34,24,32,24,96,31,224,24,96,24,32,24,32,24,34, + 24,2,24,2,24,6,24,14,255,254,15,24,48,18,1,0, + 0,128,1,192,3,64,6,48,8,8,0,0,255,254,24,6, + 24,2,24,2,24,2,24,34,24,32,24,96,31,224,24,96, + 24,32,24,32,24,34,24,2,24,2,24,6,24,14,255,254, + 15,23,46,18,1,0,6,48,6,48,4,16,0,0,0,0, + 255,254,24,14,24,6,24,2,24,2,24,34,24,32,24,96, + 31,224,24,96,24,32,24,32,24,34,24,2,24,2,24,6, + 24,14,255,254,8,24,24,10,1,0,64,96,48,16,8,0, + 255,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,255,8,24,24,10,1,0,3,3,6,8,0,0,255,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,255, + 8,24,24,10,1,0,8,24,52,66,129,0,255,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,255,8,23, + 23,10,1,0,195,195,66,0,0,255,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,24,24,255,17,18,54,19,1, + 0,255,240,0,24,12,0,24,6,0,24,3,0,24,3,0, + 24,1,128,24,1,128,24,1,128,127,1,128,24,1,128,24, + 1,128,24,1,128,24,1,128,24,3,0,24,3,0,24,6, + 0,24,12,0,255,240,0,18,24,72,19,1,0,3,200,0, + 2,248,0,0,0,0,0,0,0,0,0,0,0,0,0,252, + 15,192,28,2,0,30,2,0,22,2,0,23,2,0,19,130, + 0,17,130,0,17,194,0,16,226,0,16,226,0,16,114,0, + 16,50,0,16,58,0,16,30,0,16,14,0,16,14,0,16, + 6,0,252,2,0,15,24,48,18,2,1,28,0,12,0,6, + 0,2,0,1,0,0,0,7,192,24,48,48,24,32,8,96, + 12,96,12,192,6,192,6,192,6,192,6,192,6,192,6,96, + 12,96,12,32,8,48,24,24,48,7,192,15,24,48,18,2, + 1,0,112,0,96,0,192,0,128,1,0,0,0,7,192,24, + 48,48,24,32,8,96,12,96,12,192,6,192,6,192,6,192, + 6,192,6,192,6,96,12,96,12,32,8,48,24,24,48,7, + 192,15,24,48,18,2,0,1,0,3,128,6,192,12,96,16, + 16,0,0,7,192,24,48,48,24,32,8,96,12,96,12,192, + 6,192,6,192,6,192,6,192,6,192,6,96,12,96,12,32, + 8,48,24,24,48,7,192,15,24,48,18,2,0,15,16,19, + 224,0,0,0,0,0,0,0,0,7,192,24,48,48,24,32, + 8,96,12,96,12,192,6,192,6,192,6,192,6,192,6,192, + 6,96,12,96,12,32,8,48,24,24,48,7,192,15,24,48, + 18,2,0,8,0,12,96,12,96,0,0,0,0,0,0,7, + 192,24,48,48,24,32,8,96,12,96,12,192,6,192,6,192, + 6,192,6,192,6,192,6,96,12,96,12,32,8,48,24,24, + 48,7,192,16,16,32,24,4,255,0,1,64,3,32,6,16, + 12,8,24,4,48,2,96,1,192,1,128,3,64,6,32,12, + 16,24,8,48,4,96,2,192,1,15,18,36,18,2,0,7, + 194,24,52,48,28,32,12,96,28,96,44,192,70,192,198,193, + 134,195,6,198,6,196,6,232,12,112,12,96,8,112,24,88, + 48,135,192,19,24,72,21,1,1,3,0,0,3,128,0,0, + 128,0,0,64,0,0,0,0,0,0,0,255,15,224,24,1, + 0,24,1,0,24,1,0,24,1,0,24,1,0,24,1,0, + 24,1,0,24,1,0,24,1,0,24,1,0,24,1,0,24, + 1,0,24,1,0,12,1,0,12,2,0,6,4,0,1,248, + 0,19,24,72,21,1,1,0,28,0,0,24,0,0,48,0, + 0,32,0,0,64,0,0,0,0,255,15,224,24,1,0,24, + 1,0,24,1,0,24,1,0,24,1,0,24,1,0,24,1, + 0,24,1,0,24,1,0,24,1,0,24,1,0,24,1,0, + 24,1,0,12,1,0,12,2,0,6,4,0,1,248,0,19, + 24,72,21,1,0,0,96,0,0,224,0,1,176,0,3,8, + 0,0,4,0,0,0,0,255,15,224,24,1,0,24,1,0, + 24,1,0,24,1,0,24,1,0,24,1,0,24,1,0,24, + 1,0,24,1,0,24,1,0,24,1,0,24,1,0,24,1, + 0,12,1,0,12,2,0,6,4,0,1,248,0,19,23,69, + 21,1,1,3,24,0,3,24,0,0,0,0,0,0,0,0, + 0,0,255,15,224,24,1,0,24,1,0,24,1,0,24,1, + 0,24,1,0,24,1,0,24,1,0,24,1,0,24,1,0, + 24,1,0,24,1,0,24,1,0,24,1,0,12,1,0,12, + 2,0,6,4,0,1,248,0,17,24,72,19,1,0,0,24, + 0,0,56,0,0,48,0,0,64,0,0,0,0,0,0,0, + 255,31,128,28,6,0,28,4,0,14,4,0,6,8,0,7, + 8,0,3,144,0,3,160,0,1,224,0,0,192,0,0,192, + 0,0,192,0,0,192,0,0,192,0,0,192,0,0,192,0, + 0,192,0,7,252,0,15,18,36,17,1,0,255,0,24,0, + 24,0,31,224,24,24,24,12,24,6,24,6,24,6,24,14, + 24,12,24,24,31,240,24,0,24,0,24,0,24,0,255,0, + 12,18,36,14,1,0,7,128,24,224,24,96,48,96,48,192, + 48,128,55,0,49,128,48,64,48,96,48,112,48,48,48,48, + 48,48,54,48,54,112,52,96,243,192,11,18,36,13,1,0, + 96,0,96,0,48,0,24,0,8,0,0,0,30,0,99,0, + 65,128,97,128,33,128,15,128,113,128,193,128,195,160,195,160, + 197,160,121,192,11,18,36,13,1,0,1,128,3,128,3,0, + 4,0,8,0,0,0,62,0,65,0,65,128,97,128,33,128, + 15,128,113,128,193,128,193,160,195,160,197,160,120,192,11,18, + 36,13,1,0,8,0,12,0,28,0,50,0,65,0,0,0, + 30,0,99,0,65,128,97,128,33,128,15,128,113,128,193,128, + 195,160,195,160,197,160,121,192,11,17,34,13,1,0,56,128, + 79,0,0,0,0,0,0,0,30,0,99,0,65,128,97,128, + 33,128,15,128,113,128,193,128,195,160,195,160,197,160,121,192, + 11,17,34,13,1,0,99,0,99,0,1,0,0,0,0,0, + 60,0,67,0,67,0,99,0,3,0,15,0,115,0,195,0, + 195,32,199,32,203,32,121,192,11,18,36,13,1,0,28,0, + 34,0,34,0,34,0,28,0,0,0,60,0,67,0,67,0, + 99,0,35,0,15,0,115,0,195,0,195,32,199,32,199,32, + 121,192,16,12,24,18,1,0,30,120,99,198,65,134,97,131, + 1,131,31,255,97,128,193,128,195,129,195,130,196,194,120,124, + 9,18,36,11,1,250,30,0,33,0,96,128,193,128,193,128, + 192,0,192,0,192,0,192,0,96,128,33,0,30,0,8,0, + 12,0,2,0,3,0,3,0,30,0,9,18,36,12,1,0, + 96,0,112,0,48,0,8,0,0,0,0,0,30,0,35,0, + 97,128,193,128,193,128,255,128,192,0,192,0,192,128,96,128, + 33,0,30,0,9,18,36,12,1,0,1,0,3,0,2,0, + 4,0,8,0,0,0,30,0,35,0,97,128,193,128,193,128, + 255,128,192,0,192,0,192,128,96,128,33,0,30,0,9,18, + 36,12,1,0,8,0,12,0,28,0,18,0,33,0,0,0, + 30,0,35,0,97,128,193,128,193,128,255,128,192,0,192,0, + 192,128,96,128,33,0,30,0,9,17,34,12,1,0,51,0, + 51,0,1,0,0,0,0,0,30,0,35,0,97,128,193,128, + 193,128,255,128,192,0,192,0,192,128,96,128,33,0,30,0, + 7,18,18,8,0,0,192,224,96,16,8,0,120,24,24,24, + 24,24,24,24,24,24,24,126,6,18,18,7,1,0,4,12, + 24,16,32,0,240,48,48,48,48,48,48,48,48,48,48,252, + 8,17,17,8,0,0,24,56,36,195,0,120,24,24,24,24, + 24,24,24,24,24,24,126,7,17,17,9,1,0,4,198,198, + 0,0,120,24,24,24,24,24,24,24,24,24,24,124,10,18, + 36,13,1,0,56,128,27,0,12,0,22,0,35,0,3,0, + 31,128,33,128,97,192,192,192,192,192,192,192,192,192,192,192, + 192,192,97,128,33,128,30,0,13,17,34,15,1,0,14,64, + 19,192,0,0,0,0,0,0,243,192,52,192,56,96,56,96, + 48,96,48,96,48,96,48,96,48,96,48,96,48,96,253,248, + 10,18,36,13,1,0,96,0,48,0,16,0,8,0,4,0, + 0,0,30,0,33,128,97,128,192,192,192,192,192,192,192,192, + 192,192,192,192,97,128,33,128,30,0,10,18,36,13,1,0, + 1,128,3,128,3,0,4,0,0,0,0,0,30,0,33,128, + 97,128,192,192,192,192,192,192,192,192,192,192,192,192,97,128, + 33,128,30,0,10,18,36,13,1,0,4,0,12,0,14,0, + 18,0,33,0,0,0,30,0,33,128,97,128,192,192,192,192, + 192,192,192,192,192,192,192,192,97,128,33,128,30,0,10,17, + 34,13,1,0,60,128,47,0,0,0,0,0,0,0,30,0, + 33,128,97,128,192,192,192,192,192,192,192,192,192,192,192,192, + 97,128,33,128,30,0,10,17,34,13,1,0,49,128,49,128, + 1,0,0,0,0,0,30,0,33,128,97,128,192,192,192,192, + 192,192,192,192,192,192,192,192,97,128,33,128,30,0,22,16, + 48,24,1,255,0,112,0,0,112,0,0,112,0,0,0,0, + 0,0,0,0,0,0,0,0,0,255,255,252,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,112,0,0,112, + 0,0,112,0,10,12,24,13,1,0,30,64,33,128,96,128, + 193,192,194,192,196,192,200,192,208,192,208,192,97,128,97,128, + 158,0,13,18,36,14,0,0,16,0,24,0,12,0,4,0, + 2,0,0,0,241,224,48,96,48,96,48,96,48,96,48,96, + 48,96,48,96,48,224,48,224,57,96,30,120,13,18,36,14, + 0,0,0,192,0,192,1,128,2,0,0,0,0,0,241,224, + 48,96,48,96,48,96,48,96,48,96,48,96,48,96,48,224, + 48,224,57,96,30,120,13,18,36,14,0,0,2,0,6,0, + 5,0,8,128,16,0,0,0,241,224,48,96,48,96,48,96, + 48,96,48,96,48,96,48,96,48,224,48,224,57,96,30,120, + 13,17,34,14,0,0,24,192,24,192,0,0,0,0,0,0, + 240,224,48,96,48,96,48,96,48,96,48,96,48,96,48,96, + 48,224,48,224,57,96,30,120,13,24,48,14,0,250,0,96, + 0,224,0,192,1,0,0,0,0,0,252,248,56,32,24,32, + 24,64,12,64,12,64,12,128,6,128,6,128,7,0,3,0, + 3,0,3,0,2,0,34,0,98,0,100,0,56,0,11,24, + 48,14,1,250,48,0,240,0,48,0,48,0,48,0,48,0, + 49,192,54,224,52,96,56,96,56,96,48,96,48,192,48,192, + 49,128,49,0,50,0,60,0,48,0,48,0,48,0,48,0, + 48,0,96,0,13,23,46,14,0,250,8,64,12,96,12,96, + 0,0,0,0,252,120,24,32,24,32,24,64,12,64,12,64, + 14,128,6,128,6,128,7,0,3,0,3,0,2,0,2,0, + 34,0,114,0,100,0,56,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--26-260-72-72-P-138-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 18 + Calculated Max Values w=22 h=24 x= 3 y= 8 dx=24 dy= 0 ascent=18 len=66 + Font Bounding box w=68 h=33 x=-21 y=-8 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =18 descent= 0 + X Font ascent =18 descent= 0 + Max Font ascent =18 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr18n[595] U8G_SECTION(".progmem.u8g_font_osr18n") = { + 0,68,33,235,248,18,0,0,0,0,42,57,0,18,250,18, + 0,10,10,20,14,2,8,12,0,12,0,204,192,201,192,42, + 0,30,0,235,192,201,192,12,0,12,0,22,22,66,24,1, + 252,0,16,0,0,16,0,0,16,0,0,16,0,0,16,0, + 0,16,0,0,16,0,0,16,0,0,16,0,0,16,0,255, + 255,252,0,16,0,0,16,0,0,16,0,0,16,0,0,16, + 0,0,16,0,0,16,0,0,16,0,0,16,0,0,16,0, + 0,16,0,3,8,8,7,2,252,192,224,224,32,32,64,64, + 128,7,1,1,11,2,6,254,3,3,3,7,2,0,224,224, + 224,8,24,24,12,2,250,1,1,2,2,2,4,4,4,12, + 8,8,24,16,16,16,32,32,32,64,64,64,128,128,128,12, + 18,36,15,1,0,15,0,16,192,32,64,96,96,96,32,192, + 48,192,48,192,48,192,48,192,48,192,48,192,48,192,48,96, + 32,96,96,32,64,16,192,15,0,9,18,36,15,3,0,8, + 0,8,0,24,0,248,0,24,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24, + 0,255,128,10,18,36,15,2,0,30,0,99,128,129,192,128, + 192,128,192,224,192,240,192,32,192,1,128,3,0,6,0,8, + 0,16,0,32,0,64,64,192,64,255,192,255,192,11,18,36, + 15,2,0,63,0,97,128,192,192,224,192,240,192,0,192,0, + 192,1,128,62,0,1,128,0,192,0,96,96,96,240,96,240, + 96,192,192,65,128,63,0,12,18,36,15,2,0,1,0,3, + 0,3,0,7,0,15,0,11,0,19,0,51,0,35,0,67, + 0,195,0,131,0,255,224,3,0,3,0,3,0,3,0,31, + 240,11,18,36,15,2,0,96,192,127,128,126,0,64,0,64, + 0,64,0,95,0,97,128,64,192,64,224,0,96,0,96,96, + 96,240,96,224,192,192,192,65,128,62,0,11,18,36,15,2, + 0,15,0,24,128,48,64,96,192,96,192,64,0,192,0,207, + 0,209,192,224,192,224,224,224,96,224,96,224,96,96,224,96, + 192,49,128,15,0,10,18,36,15,3,0,255,192,255,192,128, + 64,128,64,128,128,0,128,1,0,1,0,2,0,6,0,6, + 0,12,0,12,0,30,0,30,0,30,0,30,0,14,0,12, + 18,36,15,2,0,31,128,48,224,96,96,192,48,192,48,224, + 48,240,32,124,64,63,128,55,224,96,240,192,112,192,48,192, + 48,192,48,96,96,112,192,31,128,11,18,36,15,2,0,30, + 0,49,128,96,192,224,192,192,64,192,96,192,96,192,224,96, + 224,113,96,30,96,0,96,0,64,96,192,96,192,64,128,65, + 0,62,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--26-260-72-72-P-138-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=26 h=24 x= 3 y=13 dx=28 dy= 0 ascent=20 len=72 + Font Bounding box w=68 h=33 x=-21 y=-8 + Calculated Min Values x=-1 y=-6 dx= 0 dy= 0 + Pure Font ascent =18 descent=-6 + X Font ascent =19 descent=-6 + Max Font ascent =20 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr18r[3683] U8G_SECTION(".progmem.u8g_font_osr18r") = { + 0,68,33,235,248,18,4,197,10,125,32,127,250,20,250,19, + 250,0,0,0,7,0,0,3,18,18,7,2,0,224,224,224, + 224,224,224,64,64,64,64,64,64,64,64,0,224,224,224,6, + 5,5,10,2,13,204,204,204,204,72,14,18,36,18,2,0, + 4,32,4,32,4,32,4,32,4,32,255,252,8,64,8,64, + 8,64,8,64,8,64,24,64,255,252,16,128,16,128,16,128, + 16,128,16,128,11,22,44,15,2,254,9,0,9,0,31,128, + 41,64,73,32,73,32,73,96,73,96,105,0,61,0,31,128, + 15,192,9,192,9,96,233,32,233,32,201,32,201,64,105,64, + 31,128,9,0,9,0,18,18,54,22,2,0,56,2,0,68, + 4,0,198,8,0,198,8,0,198,16,0,198,32,0,198,32, + 0,68,64,0,56,64,0,0,134,0,1,25,128,1,48,128, + 2,48,192,4,48,192,4,48,192,8,48,192,8,24,128,16, + 15,0,18,18,54,20,1,0,7,128,0,8,64,0,24,64, + 0,24,64,0,24,192,0,28,128,0,15,0,0,6,31,192, + 15,6,0,23,6,0,35,132,0,97,196,0,192,232,0,192, + 240,0,192,112,0,224,120,128,96,220,128,63,15,0,2,5, + 5,7,2,13,192,192,192,192,64,6,23,23,10,3,252,8, + 16,48,32,64,64,192,128,128,128,128,128,128,128,128,192,64, + 64,96,32,16,24,12,6,23,23,9,1,252,64,32,48,16, + 24,8,8,12,4,4,4,4,4,4,12,8,8,8,16,16, + 32,64,192,10,10,20,14,2,8,12,0,12,0,204,192,201, + 192,42,0,30,0,235,192,201,192,12,0,12,0,22,22,66, + 24,1,252,0,16,0,0,16,0,0,16,0,0,16,0,0, + 16,0,0,16,0,0,16,0,0,16,0,0,16,0,0,16, + 0,255,255,252,0,16,0,0,16,0,0,16,0,0,16,0, + 0,16,0,0,16,0,0,16,0,0,16,0,0,16,0,0, + 16,0,0,16,0,3,8,8,7,2,252,192,224,224,32,32, + 64,64,128,7,1,1,11,2,6,254,3,3,3,7,2,0, + 224,224,224,8,24,24,12,2,250,1,1,2,2,2,4,4, + 4,12,8,8,24,16,16,16,32,32,32,64,64,64,128,128, + 128,12,18,36,15,1,0,15,0,16,192,32,64,96,96,96, + 32,192,48,192,48,192,48,192,48,192,48,192,48,192,48,192, + 48,96,32,96,96,32,64,16,192,15,0,9,18,36,15,3, + 0,8,0,8,0,24,0,248,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,255,128,10,18,36,15,2,0,30,0,99,128,129, + 192,128,192,128,192,224,192,240,192,32,192,1,128,3,0,6, + 0,8,0,16,0,32,0,64,64,192,64,255,192,255,192,11, + 18,36,15,2,0,63,0,97,128,192,192,224,192,240,192,0, + 192,0,192,1,128,62,0,1,128,0,192,0,96,96,96,240, + 96,240,96,192,192,65,128,63,0,12,18,36,15,2,0,1, + 0,3,0,3,0,7,0,15,0,11,0,19,0,51,0,35, + 0,67,0,195,0,131,0,255,224,3,0,3,0,3,0,3, + 0,31,240,11,18,36,15,2,0,96,192,127,128,126,0,64, + 0,64,0,64,0,95,0,97,128,64,192,64,224,0,96,0, + 96,96,96,240,96,224,192,192,192,65,128,62,0,11,18,36, + 15,2,0,15,0,24,128,48,64,96,192,96,192,64,0,192, + 0,207,0,209,192,224,192,224,224,224,96,224,96,224,96,96, + 224,96,192,49,128,15,0,10,18,36,15,3,0,255,192,255, + 192,128,64,128,64,128,128,0,128,1,0,1,0,2,0,6, + 0,6,0,12,0,12,0,30,0,30,0,30,0,30,0,14, + 0,12,18,36,15,2,0,31,128,48,224,96,96,192,48,192, + 48,224,48,240,32,124,64,63,128,55,224,96,240,192,112,192, + 48,192,48,192,48,96,96,112,192,31,128,11,18,36,15,2, + 0,30,0,49,128,96,192,224,192,192,64,192,96,192,96,192, + 224,96,224,113,96,30,96,0,96,0,64,96,192,96,192,64, + 128,65,0,62,0,3,12,12,7,2,0,224,224,224,0,0, + 0,0,0,0,224,224,224,4,16,16,8,2,252,96,240,240, + 0,0,0,0,0,96,240,240,16,16,32,32,64,20,21,63, + 24,2,253,0,0,48,0,0,192,0,3,0,0,12,0,0, + 48,0,0,224,0,3,128,0,14,0,0,24,0,0,96,0, + 0,192,0,0,48,0,0,12,0,0,7,0,0,1,192,0, + 0,112,0,0,24,0,0,6,0,0,1,128,0,0,96,0, + 0,16,22,6,18,24,1,4,255,255,252,0,0,0,0,0, + 0,0,0,0,0,0,0,255,255,252,20,21,63,24,2,253, + 192,0,0,48,0,0,12,0,0,3,0,0,0,192,0,0, + 112,0,0,28,0,0,7,0,0,1,128,0,0,96,0,0, + 48,0,0,192,0,3,0,0,14,0,0,56,0,0,224,0, + 1,128,0,6,0,0,24,0,0,96,0,0,128,0,0,9, + 18,36,12,2,0,62,0,67,0,129,128,129,128,225,128,97, + 128,3,0,6,0,12,0,16,0,48,0,34,0,34,0,28, + 0,0,0,28,0,28,0,28,0,18,18,54,20,1,0,3, + 248,0,12,6,0,16,109,0,33,156,128,67,12,128,70,8, + 64,142,8,64,142,24,64,140,24,64,140,16,64,140,48,128, + 140,48,128,140,241,0,71,30,0,96,0,0,32,0,0,24, + 12,0,7,240,0,18,18,54,20,2,0,0,128,0,0,192, + 0,1,192,0,1,192,0,1,224,0,3,224,0,2,96,0, + 2,112,0,6,112,0,4,48,0,4,56,0,12,56,0,15, + 248,0,24,28,0,16,12,0,16,12,0,48,14,0,254,63, + 192,15,18,36,17,1,0,255,240,24,28,24,12,24,6,24, + 6,24,6,24,12,24,24,31,224,24,24,24,12,24,6,24, + 6,24,6,24,6,24,12,24,28,255,240,14,18,36,18,2, + 0,7,132,24,108,32,60,96,28,96,12,192,12,192,4,192, + 0,192,0,192,0,192,0,192,4,96,4,96,4,32,8,48, + 24,24,48,7,192,17,18,54,20,1,0,255,240,0,24,12, + 0,24,6,0,24,3,0,24,3,0,24,1,128,24,1,128, + 24,1,128,24,1,128,24,1,128,24,1,128,24,1,128,24, + 1,128,24,3,0,24,3,0,24,6,0,24,12,0,255,240, + 0,15,18,36,18,1,0,255,254,24,6,24,2,24,2,24, + 2,24,34,24,32,24,96,31,224,24,96,24,32,24,32,24, + 34,24,2,24,2,24,6,24,14,255,254,15,18,36,17,1, + 0,255,254,24,6,24,2,24,2,24,2,24,34,24,32,24, + 96,31,224,24,96,24,32,24,32,24,32,24,0,24,0,24, + 0,24,0,127,0,17,18,54,19,2,0,7,196,0,24,100, + 0,48,28,0,96,28,0,96,12,0,96,4,0,192,4,0, + 192,0,0,192,127,128,192,28,0,192,28,0,192,28,0,192, + 28,0,96,28,0,96,28,0,48,52,0,24,100,0,7,132, + 0,18,18,54,20,1,0,255,63,192,24,6,0,24,6,0, + 24,6,0,24,6,0,24,6,0,24,6,0,24,6,0,31, + 254,0,24,6,0,24,6,0,24,6,0,24,6,0,24,6, + 0,24,6,0,24,6,0,24,6,0,255,63,192,8,18,18, + 10,1,0,255,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,255,12,18,36,14,1,0,7,240,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,97,128,241,128,225,128,193,128,67,0,62,0,17, + 18,54,19,1,0,255,63,128,24,14,0,24,8,0,24,16, + 0,24,32,0,24,64,0,24,128,0,25,192,0,26,192,0, + 28,224,0,24,96,0,24,112,0,24,56,0,24,56,0,24, + 28,0,24,28,0,24,14,0,255,127,128,15,18,36,17,1, + 0,255,0,24,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,0,24,2,24,2,24,2,24,6,24, + 6,24,14,255,254,20,18,54,22,1,0,252,3,240,28,3, + 128,30,5,128,22,5,128,22,5,128,23,5,128,19,9,128, + 19,9,128,19,137,128,19,145,128,17,145,128,17,209,128,17, + 209,128,16,225,128,16,225,128,16,225,128,16,65,128,254,79, + 240,18,18,54,19,1,0,252,15,192,28,2,0,30,2,0, + 22,2,0,23,2,0,19,130,0,17,130,0,17,194,0,16, + 226,0,16,226,0,16,114,0,16,50,0,16,58,0,16,30, + 0,16,14,0,16,14,0,16,6,0,254,2,0,15,18,36, + 18,2,0,7,192,24,48,48,24,32,8,96,12,96,12,192, + 6,192,6,192,6,192,6,192,6,192,6,96,12,96,12,32, + 8,48,24,24,48,7,192,15,18,36,17,1,0,255,240,24, + 28,24,12,24,6,24,6,24,6,24,12,24,24,31,240,24, + 0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,255, + 0,15,22,44,18,2,252,7,192,24,48,48,24,32,8,96, + 12,96,12,192,6,192,6,192,6,192,6,192,6,192,6,96, + 12,99,140,36,76,52,120,28,114,7,226,0,98,0,118,0, + 60,0,24,17,18,54,19,1,0,255,240,0,24,24,0,24, + 12,0,24,12,0,24,12,0,24,12,0,24,24,0,31,224, + 0,24,48,0,24,56,0,24,24,0,24,24,0,24,24,0, + 24,28,128,24,28,128,24,28,128,24,31,0,255,15,0,13, + 18,36,16,2,0,30,32,97,160,192,96,192,96,192,32,192, + 32,224,0,124,0,63,128,15,224,129,240,128,112,128,24,192, + 24,192,24,224,16,152,32,135,192,15,18,36,18,2,0,255, + 254,195,14,131,6,131,2,3,2,3,2,3,2,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,31,240,19,18,54,21,1,0,255,15,224,24,1,0,24, + 1,0,24,1,0,24,1,0,24,1,0,24,1,0,24,1, + 0,24,1,0,24,1,0,24,1,0,24,1,0,24,1,0, + 24,1,0,12,1,0,12,2,0,6,4,0,1,248,0,18, + 18,54,20,1,0,255,31,192,28,3,0,28,2,0,12,2, + 0,14,6,0,6,4,0,7,4,0,7,8,0,3,8,0, + 3,136,0,3,144,0,1,144,0,1,208,0,0,224,0,0, + 224,0,0,224,0,0,64,0,0,64,0,26,18,72,28,1, + 0,255,63,159,192,28,14,3,0,12,6,2,0,12,14,2, + 0,14,15,6,0,14,15,4,0,6,19,4,0,7,19,140, + 0,7,19,136,0,3,49,136,0,3,161,216,0,3,161,208, + 0,1,160,208,0,1,192,240,0,1,192,224,0,0,192,96, + 0,0,128,96,0,0,128,64,0,18,18,54,20,1,0,127, + 191,128,14,12,0,14,12,0,7,8,0,7,16,0,3,176, + 0,1,160,0,1,192,0,0,192,0,0,224,0,1,96,0, + 3,112,0,2,56,0,4,56,0,12,28,0,8,12,0,24, + 14,0,254,63,192,17,18,54,19,1,0,255,31,128,28,6, + 0,28,4,0,14,4,0,6,8,0,7,8,0,3,144,0, + 3,160,0,1,224,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,0,192,0,0,192,0,0,192,0,7,252, + 0,14,18,36,17,2,0,127,252,112,56,96,48,64,112,64, + 224,128,192,1,192,3,128,3,0,7,0,14,0,12,4,28, + 4,56,4,48,12,112,28,224,56,255,248,5,23,23,10,3, + 251,248,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,248,8,24,24,12,2,250,128,128, + 128,64,64,64,32,32,32,16,16,16,16,8,8,8,4,4, + 4,2,2,2,1,1,5,23,23,10,2,251,248,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,248,11,9,18,15,2,9,4,0,14,0,10,0,17, + 0,49,128,32,128,64,64,64,96,128,32,14,1,2,14,0, + 252,255,252,4,4,4,11,2,13,192,224,96,16,11,12,24, + 13,1,0,30,0,99,0,65,128,97,128,33,128,15,128,113, + 128,193,128,195,160,195,160,197,160,121,192,11,18,36,13,0, + 0,240,0,48,0,48,0,48,0,48,0,48,0,51,128,52, + 192,56,96,56,96,48,96,48,96,48,96,48,96,48,96,56, + 96,40,192,39,128,9,12,24,11,1,0,30,0,33,0,96, + 128,193,128,193,128,192,0,192,0,192,0,192,128,96,128,33, + 0,30,0,12,18,36,14,1,0,7,192,0,192,0,192,0, + 192,0,192,0,192,28,192,98,192,97,192,193,192,192,192,192, + 192,192,192,192,192,192,192,97,192,97,192,30,240,9,12,24, + 12,1,0,30,0,35,0,97,128,193,128,193,128,255,128,192, + 0,192,0,192,128,96,128,33,0,30,0,9,18,36,9,1, + 0,15,0,24,128,49,128,49,0,48,0,48,0,254,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,0,254,0,12,18,36,15,2,250,30,112,97,176,225, + 240,192,192,192,192,192,192,225,128,97,128,30,0,224,0,255, + 0,127,192,64,96,128,32,128,32,128,32,192,64,63,128,13, + 18,36,15,1,0,240,0,48,0,48,0,48,0,48,0,48, + 0,51,192,52,192,56,96,56,96,48,96,48,96,48,96,48, + 96,48,96,48,96,48,96,253,248,6,18,18,8,1,0,112, + 112,32,0,0,0,240,48,48,48,48,48,48,48,48,48,48, + 252,7,24,24,8,255,250,6,6,0,0,0,0,62,6,6, + 6,6,6,6,6,6,6,6,6,6,6,198,198,140,120,12, + 18,36,14,1,0,240,0,48,0,48,0,48,0,48,0,48, + 0,49,240,48,128,49,0,50,0,50,0,54,0,59,0,51, + 0,49,128,49,192,48,224,253,240,6,18,18,8,1,0,240, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 252,19,12,36,21,1,0,243,199,0,52,249,128,56,113,192, + 56,97,192,48,97,192,48,97,192,48,97,192,48,97,192,48, + 97,192,48,97,192,48,97,192,253,251,224,13,12,24,15,1, + 0,243,192,52,192,56,96,56,96,48,96,48,96,48,96,48, + 96,48,96,48,96,48,96,253,248,10,12,24,13,1,0,30, + 0,33,128,97,128,192,192,192,192,192,192,192,192,192,192,192, + 192,97,128,33,128,30,0,11,18,36,14,1,250,243,128,52, + 192,56,96,56,96,48,96,48,96,48,96,48,96,48,96,56, + 96,56,192,55,128,48,0,48,0,48,0,48,0,48,0,252, + 0,12,18,36,13,1,250,28,64,98,64,97,192,192,192,192, + 192,192,192,192,192,192,192,192,192,97,192,97,192,30,192,0, + 192,0,192,0,192,0,192,0,192,3,240,9,12,24,11,1, + 0,243,128,52,128,57,128,56,128,56,0,48,0,48,0,48, + 0,48,0,48,0,48,0,252,0,9,12,24,11,1,0,125, + 0,131,0,129,0,193,0,240,0,124,0,31,0,131,128,128, + 128,192,128,224,128,159,0,8,17,17,10,1,0,16,16,16, + 48,48,254,48,48,48,48,48,48,48,49,49,51,30,13,12, + 24,14,0,0,241,224,48,96,48,96,48,96,48,96,48,96, + 48,96,48,96,48,224,48,224,57,96,30,120,13,12,24,14, + 1,0,252,248,48,96,48,64,24,64,24,128,12,128,12,128, + 13,0,7,0,7,0,2,0,2,0,19,12,36,21,1,0, + 253,251,224,48,96,128,48,96,128,24,113,0,24,177,0,12, + 177,0,12,154,0,13,26,0,7,28,0,7,12,0,2,12, + 0,2,8,0,12,12,24,14,1,0,249,224,48,128,57,0, + 25,0,14,0,14,0,6,0,11,0,19,0,17,128,33,192, + 243,240,13,18,36,14,0,250,252,248,56,32,24,32,24,64, + 12,64,12,64,12,128,6,128,6,128,7,0,3,0,3,0, + 2,0,2,0,34,0,98,0,100,0,56,0,9,12,24,12, + 1,0,255,128,195,128,131,0,134,0,142,0,12,0,24,0, + 56,0,48,128,96,128,96,128,255,128,6,23,23,12,3,251, + 12,16,48,48,48,48,56,24,24,24,16,224,48,16,24,24, + 56,48,48,48,48,16,12,1,24,24,7,3,250,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,6,23,23,11,3,251,192,32,48,48,48, + 112,96,96,96,96,32,28,48,96,96,96,96,112,48,48,48, + 32,192,15,5,10,17,1,4,32,4,254,2,143,194,129,254, + 64,124,255}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--29-290-72-72-P-154-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 21, '1' Height: 21 + Calculated Max Values w=29 h=28 x= 6 y=17 dx=32 dy= 0 ascent=28 len=88 + Font Bounding box w=76 h=38 x=-24 y=-9 + Calculated Min Values x=-1 y=-8 dx= 0 dy= 0 + Pure Font ascent =21 descent=-7 + X Font ascent =22 descent=-7 + Max Font ascent =28 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr21[9530] U8G_SECTION(".progmem.u8g_font_osr21") = { + 0,76,38,232,247,21,5,131,12,189,32,255,249,28,248,22, + 249,0,0,0,8,0,0,4,21,21,8,2,0,96,240,240, + 240,240,240,96,96,96,96,96,96,96,96,96,64,0,96,240, + 240,96,7,5,5,11,2,17,238,204,204,204,68,15,21,42, + 19,2,0,2,16,6,16,6,16,4,16,4,48,4,48,255, + 254,4,32,12,32,12,32,8,32,8,96,8,96,8,64,255, + 254,24,64,24,64,16,192,16,192,16,128,16,128,13,25,50, + 17,2,254,5,0,5,0,15,128,53,96,37,16,69,24,69, + 24,69,56,69,56,117,48,61,0,63,0,15,192,7,224,5, + 240,5,48,101,24,229,24,229,24,197,24,69,48,69,32,61, + 192,7,0,5,0,19,21,63,25,3,0,60,1,0,70,2, + 0,66,2,0,195,4,0,195,8,0,195,8,0,195,16,0, + 195,16,0,66,32,0,102,32,0,56,64,0,0,67,0,0, + 140,192,1,8,64,1,24,96,2,24,96,2,24,96,4,24, + 96,4,24,96,8,8,64,8,7,128,20,21,63,23,2,0, + 3,128,0,12,64,0,8,32,0,24,32,0,24,32,0,24, + 96,0,28,64,0,12,128,0,15,0,0,7,15,240,15,1, + 128,27,129,0,51,193,0,97,194,0,96,226,0,224,244,0, + 224,124,0,224,56,0,224,60,0,96,60,32,59,198,192,3, + 5,5,7,2,17,224,192,192,192,64,6,28,28,10,3,250, + 4,12,24,16,32,32,64,64,64,128,128,128,128,128,128,128, + 128,128,128,192,64,64,32,32,16,24,8,4,6,28,28,11, + 2,250,128,192,64,32,48,16,24,8,8,8,4,4,4,4, + 4,4,4,4,12,8,8,24,16,48,32,96,192,128,10,12, + 24,14,2,9,12,0,14,0,204,64,228,192,53,0,14,0, + 63,0,229,192,196,192,12,0,14,0,12,0,24,25,75,26, + 1,252,0,8,0,0,8,0,0,8,0,0,8,0,0,8, + 0,0,8,0,0,8,0,0,8,0,0,8,0,0,8,0, + 0,8,0,0,8,0,255,255,255,0,8,0,0,8,0,0, + 8,0,0,8,0,0,8,0,0,8,0,0,8,0,0,8, + 0,0,8,0,0,8,0,0,8,0,0,8,0,4,8,8, + 8,2,251,224,240,240,16,16,16,32,64,7,2,2,11,2, + 7,254,254,4,4,4,8,2,0,96,240,240,96,9,28,56, + 13,2,250,0,128,0,128,1,128,1,0,1,0,1,0,2, + 0,2,0,2,0,6,0,4,0,4,0,12,0,8,0,8, + 0,24,0,16,0,16,0,16,0,32,0,32,0,32,0,64, + 0,64,0,64,0,192,0,128,0,128,0,14,21,42,17,1, + 0,7,128,24,64,48,32,32,48,96,16,96,24,96,24,224, + 24,224,24,224,24,224,28,224,28,224,24,224,24,224,24,96, + 24,96,24,96,48,48,32,16,96,15,192,10,21,42,17,3, + 0,2,0,6,0,6,0,14,0,254,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,255,192,12,21,42,17,2, + 0,31,0,32,192,64,96,128,112,128,112,192,112,240,112,112, + 112,32,96,0,224,0,192,1,0,6,0,12,0,24,0,48, + 16,96,16,64,16,224,112,255,240,255,240,12,21,42,17,2, + 0,31,0,97,192,192,224,224,96,240,96,112,112,0,96,0, + 96,0,224,48,192,63,0,0,192,0,96,0,112,0,112,96, + 112,240,112,240,112,192,96,192,192,127,128,14,21,42,17,2, + 0,0,64,0,192,1,192,1,192,3,192,7,192,5,192,13, + 192,9,192,17,192,49,192,33,192,65,192,193,192,255,252,1, + 192,1,192,1,192,1,192,1,192,15,252,12,21,42,17,2, + 0,96,64,127,128,127,0,64,0,64,0,64,0,64,0,79, + 0,112,192,64,96,64,96,0,112,0,112,0,112,96,112,240, + 112,240,112,224,96,192,224,64,192,63,128,12,21,42,17,2, + 0,7,128,24,64,16,96,48,224,96,224,96,192,96,0,224, + 0,231,128,232,192,240,96,240,96,224,112,224,112,224,112,224, + 112,96,112,96,96,112,96,48,192,31,128,11,21,42,17,3, + 0,255,224,255,224,192,32,128,32,128,64,128,64,0,64,0, + 128,1,0,1,0,2,0,6,0,6,0,12,0,12,0,12, + 0,30,0,30,0,30,0,30,0,30,0,14,21,42,17,2, + 0,15,128,48,96,96,48,224,24,224,24,224,24,224,24,240, + 16,124,32,63,192,15,224,51,240,96,248,224,56,224,28,224, + 28,224,24,224,24,96,24,112,48,31,192,12,21,42,17,2, + 0,15,0,48,128,96,64,96,96,224,96,224,96,224,112,224, + 112,224,112,96,112,96,240,49,176,14,48,0,48,0,32,48, + 96,112,96,112,64,96,192,96,128,63,0,4,14,14,8,2, + 0,96,240,240,96,0,0,0,0,0,0,96,240,240,96,4, + 18,18,8,2,251,96,240,240,96,0,0,0,0,0,0,224, + 240,240,16,16,16,32,64,22,24,72,27,2,251,0,0,12, + 0,0,56,0,0,96,0,1,128,0,7,0,0,28,0,0, + 112,0,0,192,0,3,0,0,14,0,0,56,0,0,224,0, + 0,224,0,0,48,0,0,12,0,0,7,0,0,1,192,0, + 0,112,0,0,24,0,0,6,0,0,3,128,0,0,224,0, + 0,56,0,0,12,24,7,21,26,1,5,255,255,255,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255, + 22,24,72,27,3,251,192,0,0,112,0,0,24,0,0,6, + 0,0,3,128,0,0,224,0,0,56,0,0,12,0,0,3, + 0,0,0,192,0,0,112,0,0,28,0,0,28,0,0,48, + 0,0,192,0,3,128,0,14,0,0,56,0,0,96,0,1, + 128,0,7,0,0,28,0,0,112,0,0,192,0,0,11,21, + 42,14,2,0,30,0,97,128,128,192,128,192,240,224,240,192, + 97,192,1,128,3,128,6,0,12,0,8,0,17,0,17,0, + 17,0,14,0,0,0,12,0,30,0,30,0,12,0,21,21, + 63,25,2,1,3,255,0,12,0,128,24,0,64,48,0,32, + 32,59,144,64,199,16,65,135,8,131,7,8,135,6,8,134, + 6,8,142,14,8,142,14,8,142,12,16,142,28,16,142,28, + 32,70,44,64,67,199,128,32,0,0,16,0,0,8,1,128, + 7,222,0,20,21,63,22,1,0,0,32,0,0,96,0,0, + 96,0,0,112,0,0,240,0,0,240,0,0,184,0,1,56, + 0,1,56,0,3,28,0,3,28,0,2,28,0,6,14,0, + 6,14,0,7,254,0,12,7,0,12,7,0,8,7,0,24, + 3,128,24,3,128,255,31,240,16,21,42,20,2,0,255,240, + 28,12,28,6,28,7,28,7,28,7,28,7,28,6,28,12, + 31,240,28,28,28,6,28,6,28,7,28,7,28,7,28,7, + 28,7,28,6,28,12,255,240,15,21,42,19,2,1,15,226, + 16,54,48,30,32,14,96,6,96,6,224,6,224,2,224,0, + 224,0,224,0,224,0,224,0,224,2,96,2,96,2,96,4, + 32,4,48,12,24,8,7,240,19,21,63,22,2,0,255,248, + 0,28,6,0,28,3,0,28,1,128,28,1,128,28,1,192, + 28,0,192,28,0,192,28,0,192,28,0,224,28,0,224,28, + 0,224,28,0,192,28,0,192,28,0,192,28,1,192,28,1, + 128,28,1,0,28,3,0,28,6,0,255,248,0,17,21,63, + 20,2,0,255,255,128,28,3,128,28,3,128,28,1,128,28, + 1,128,28,0,128,28,32,128,28,32,0,28,32,0,28,96, + 0,31,224,0,28,96,0,28,32,0,28,32,128,28,32,128, + 28,0,128,28,1,128,28,1,128,28,3,128,28,7,128,255, + 255,128,17,21,63,20,2,0,255,255,128,28,3,128,28,3, + 128,28,1,128,28,1,128,28,0,128,28,32,128,28,32,0, + 28,32,0,28,96,0,31,224,0,28,96,0,28,32,0,28, + 32,0,28,32,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,255,128,0,18,21,63,21,2,1,15,226,0, + 24,26,0,48,14,0,32,14,0,96,6,0,96,6,0,224, + 2,0,224,2,0,224,0,0,224,0,0,224,127,192,224,14, + 0,224,14,0,224,14,0,224,14,0,96,14,0,96,14,0, + 32,14,0,48,26,0,16,50,0,15,226,0,20,21,63,23, + 2,0,255,15,240,28,3,128,28,3,128,28,3,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,3,128,31,255,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,3,128,255,15, + 240,8,21,21,12,2,0,255,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,255,13,21,42,15, + 1,0,7,248,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 112,224,240,192,240,192,192,192,65,128,127,0,19,21,63,22, + 2,0,255,31,224,28,7,0,28,6,0,28,12,0,28,8, + 0,28,16,0,28,32,0,28,64,0,28,192,0,29,224,0, + 30,224,0,28,112,0,28,112,0,28,56,0,28,28,0,28, + 28,0,28,14,0,28,14,0,28,7,0,28,7,0,255,63, + 224,16,21,42,20,2,0,255,128,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,1,28,1,28,1,28,1,28,3,28,3,28,15,255, + 255,21,21,63,25,2,0,252,1,248,30,1,224,30,1,224, + 30,2,224,22,2,224,23,2,224,23,2,224,19,4,224,19, + 132,224,19,132,224,17,132,224,17,200,224,17,200,224,16,200, + 224,16,208,224,16,240,224,16,240,224,16,112,224,16,96,224, + 16,96,224,254,39,248,20,21,63,23,2,0,252,7,240,28, + 0,128,30,0,128,31,0,128,23,0,128,19,128,128,19,192, + 128,17,192,128,16,224,128,16,240,128,16,112,128,16,56,128, + 16,56,128,16,28,128,16,30,128,16,14,128,16,7,128,16, + 7,128,16,3,128,16,1,128,254,1,128,17,22,66,20,2, + 0,0,128,0,7,112,0,24,8,0,16,12,0,48,6,0, + 96,6,0,96,3,0,96,3,0,224,3,0,224,3,0,224, + 3,0,224,3,128,224,3,128,224,3,0,224,3,0,96,3, + 0,96,3,0,96,6,0,48,6,0,16,12,0,24,8,0, + 7,240,0,17,21,63,20,2,0,255,248,0,28,14,0,28, + 7,0,28,3,0,28,3,0,28,3,128,28,3,0,28,3, + 0,28,6,0,28,12,0,31,240,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,255,128,0,17,27,81,20,2,251,0,128, + 0,7,112,0,24,8,0,16,12,0,48,6,0,96,6,0, + 96,3,0,96,3,0,224,3,0,224,3,0,224,3,0,224, + 3,128,224,3,128,224,3,0,224,3,0,96,3,0,96,3, + 0,97,198,0,51,38,0,26,60,0,14,60,0,7,48,128, + 0,241,0,0,49,0,0,57,0,0,31,0,0,14,0,18, + 21,63,21,2,0,255,248,0,28,14,0,28,6,0,28,7, + 0,28,7,0,28,7,0,28,7,0,28,6,0,28,12,0, + 31,240,0,28,24,0,28,24,0,28,12,0,28,12,0,28, + 12,0,28,14,0,28,14,64,28,14,64,28,14,64,28,7, + 128,255,131,128,14,21,42,18,3,1,63,144,96,208,192,112, + 192,48,192,16,192,16,224,16,240,16,124,0,63,128,31,224, + 7,240,128,248,128,56,128,28,128,12,192,12,224,12,224,8, + 144,16,142,224,17,21,63,21,2,0,255,255,128,225,195,128, + 193,193,128,193,193,128,193,192,128,129,192,128,129,192,128,129, + 192,128,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,15,248,0,20,21,63,23,2,0,255, + 7,240,28,0,128,28,0,128,28,0,128,28,0,128,28,0, + 128,28,0,128,28,0,128,28,0,128,28,0,128,28,0,128, + 28,0,128,28,0,128,28,0,128,28,0,128,28,0,128,28, + 0,128,12,0,128,12,1,0,6,2,0,3,252,0,20,22, + 66,23,2,255,255,143,240,28,1,192,28,1,128,14,1,128, + 14,1,0,14,1,0,7,3,0,7,2,0,7,2,0,3, + 134,0,3,132,0,3,132,0,1,196,0,1,200,0,1,200, + 0,0,232,0,0,240,0,0,112,0,0,112,0,0,112,0, + 0,32,0,0,32,0,29,22,88,32,2,255,255,63,231,248, + 28,7,0,192,28,7,0,128,28,7,0,128,12,7,128,128, + 14,15,129,128,14,11,129,0,6,9,129,0,7,9,195,0, + 7,25,194,0,7,17,194,0,3,16,230,0,3,144,228,0, + 3,176,228,0,1,160,108,0,1,224,120,0,1,224,120,0, + 1,192,120,0,0,192,48,0,0,192,48,0,0,192,48,0, + 0,128,16,0,19,21,63,22,2,0,255,159,224,14,7,0, + 14,6,0,7,4,0,7,12,0,3,136,0,3,208,0,1, + 208,0,1,224,0,0,224,0,0,112,0,0,240,0,1,184, + 0,1,56,0,2,28,0,6,28,0,4,14,0,8,14,0, + 24,7,0,24,7,0,255,31,224,19,21,63,21,1,0,255, + 143,224,30,3,128,14,3,0,14,2,0,7,2,0,7,4, + 0,3,132,0,1,200,0,1,200,0,0,240,0,0,240,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,0,112,0,0,112,0,0,112,0,7,254,0,15,21, + 42,19,2,0,63,254,56,14,112,28,96,56,64,56,64,112, + 64,240,0,224,1,192,1,192,3,128,7,128,7,0,14,2, + 14,2,28,2,60,2,56,6,112,6,240,14,255,254,6,27, + 27,11,3,250,252,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,252,9, + 28,56,13,2,250,128,0,128,0,192,0,64,0,64,0,64, + 0,32,0,32,0,32,0,16,0,16,0,16,0,24,0,8, + 0,8,0,12,0,4,0,4,0,4,0,2,0,2,0,2, + 0,1,0,1,0,1,0,1,128,0,128,0,128,6,27,27, + 11,2,250,252,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,252,13,11, + 22,17,2,10,2,0,2,0,5,0,13,128,8,128,24,192, + 16,64,32,32,96,48,64,16,192,24,15,1,2,15,0,251, + 255,254,5,5,5,13,2,16,192,224,96,48,8,13,14,28, + 15,1,0,31,0,33,128,97,192,113,192,113,192,1,192,15, + 192,49,192,97,192,225,192,225,200,225,200,226,216,60,240,13, + 21,42,15,1,0,248,0,56,0,56,0,56,0,56,0,56, + 0,56,0,59,192,60,96,56,48,56,48,56,48,56,48,56, + 56,56,56,56,48,56,48,56,48,56,32,44,96,35,192,10, + 14,28,12,1,0,31,0,48,128,96,64,96,192,225,192,224, + 128,224,0,224,0,224,0,224,0,96,64,96,128,48,128,31, + 0,13,21,42,15,1,0,3,224,0,224,0,224,0,224,0, + 224,0,224,0,224,30,224,49,224,97,224,96,224,224,224,224, + 224,224,224,224,224,224,224,224,224,96,224,96,224,49,224,30, + 248,10,14,28,13,1,0,30,0,49,128,97,128,96,192,224, + 192,224,192,255,192,224,0,224,0,224,64,96,64,96,64,48, + 128,31,0,10,21,42,10,1,0,15,0,24,128,57,192,57, + 128,56,0,56,0,56,0,254,0,56,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,254,0,14,21,42,16,2,249,31,56,113,200,96,220,224, + 248,224,224,224,224,224,224,96,192,49,128,31,0,96,0,128, + 0,224,0,127,224,56,112,64,16,128,16,128,16,128,48,64, + 96,63,128,14,21,42,16,1,0,248,0,56,0,56,0,56, + 0,56,0,56,0,56,0,57,192,62,96,60,112,56,112,56, + 112,56,112,56,112,56,112,56,112,56,112,56,112,56,112,56, + 112,252,252,6,21,21,7,1,0,112,112,112,0,0,0,0, + 240,112,112,112,112,112,112,112,112,112,112,112,112,252,8,28, + 28,9,255,249,6,7,6,0,0,0,0,31,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,70,230,198,204,120, + 13,21,42,15,1,0,248,0,56,0,56,0,56,0,56,0, + 56,0,56,0,57,248,56,192,56,128,57,0,57,0,58,0, + 63,0,63,0,59,128,57,192,56,192,56,224,56,224,253,248, + 7,21,21,8,1,0,248,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,254,21,14,42,23,1, + 0,249,195,192,62,100,224,60,120,96,56,120,96,56,112,96, + 56,112,96,56,112,96,56,112,96,56,112,96,56,112,96,56, + 112,96,56,112,96,56,112,96,252,253,248,14,14,28,16,1, + 0,249,192,62,96,60,112,56,112,56,112,56,112,56,112,56, + 112,56,112,56,112,56,112,56,112,56,112,252,252,12,14,28, + 14,1,0,15,0,48,128,96,192,96,96,224,96,224,96,224, + 112,224,112,224,96,224,96,96,96,96,192,48,128,15,0,13, + 21,42,15,1,249,251,192,60,96,56,48,56,48,56,48,56, + 48,56,56,56,56,56,48,56,48,56,48,56,48,60,96,59, + 192,56,0,56,0,56,0,56,0,56,0,56,0,252,0,13, + 21,42,15,1,249,30,32,49,32,96,224,96,224,224,224,224, + 224,224,224,224,224,224,224,224,224,96,224,96,224,49,224,30, + 224,0,224,0,224,0,224,0,224,0,224,0,224,3,248,10, + 14,28,12,1,0,249,128,58,64,60,192,60,192,56,0,56, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,252, + 0,10,14,28,13,2,0,60,128,195,128,129,128,128,128,192, + 128,240,0,62,0,15,128,131,192,128,192,192,64,192,64,160, + 128,159,0,8,20,20,10,1,0,16,16,16,16,48,48,254, + 48,48,48,48,48,48,48,48,49,49,49,59,30,14,14,28, + 16,1,0,248,240,56,112,56,112,56,112,56,112,56,112,56, + 112,56,112,56,112,56,112,56,112,56,240,25,112,14,124,15, + 14,28,15,0,0,254,126,56,16,24,16,28,16,12,32,12, + 32,6,32,6,64,7,64,3,64,3,128,1,128,1,128,1, + 0,22,14,42,22,0,0,254,252,252,56,56,32,24,56,32, + 28,56,32,12,56,64,12,60,64,6,76,64,6,76,128,7, + 70,128,3,134,128,3,135,0,1,131,0,1,131,0,1,2, + 0,14,14,28,16,1,0,124,248,56,96,24,64,12,128,14, + 128,7,0,7,0,3,128,5,128,5,192,8,192,16,224,16, + 96,249,252,15,21,42,15,0,249,254,126,24,16,24,16,28, + 16,12,32,12,32,14,32,6,64,6,64,6,64,3,128,3, + 128,3,128,1,128,1,0,1,0,1,0,98,0,114,0,100, + 0,56,0,10,14,28,13,1,0,255,192,193,192,129,128,131, + 0,135,0,6,0,14,0,28,0,24,0,56,64,48,64,112, + 64,224,192,255,192,6,27,27,12,3,250,12,24,48,48,48, + 48,48,56,24,24,24,16,48,192,48,16,24,24,24,56,48, + 48,48,48,48,16,12,1,28,28,8,4,250,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,6,27,27,12,3,250,128,96, + 32,48,48,48,112,96,96,96,96,96,32,28,48,96,96,96, + 96,96,112,48,48,48,32,96,192,16,6,12,18,1,5,56, + 2,126,1,143,193,131,241,128,255,64,62,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,8, + 0,0,4,21,21,8,2,249,96,240,240,96,0,64,64,96, + 96,96,96,96,96,96,96,240,240,240,240,240,96,10,21,42, + 17,3,253,4,0,4,0,4,0,4,0,31,0,52,128,100, + 64,100,192,229,192,228,128,228,0,228,0,228,0,228,0,100, + 64,100,64,52,128,31,0,4,0,4,0,4,0,16,21,42, + 21,2,0,0,60,0,194,0,131,1,135,1,135,3,130,3, + 128,3,128,3,128,63,128,3,240,3,128,3,128,3,128,3, + 0,3,0,123,1,142,1,135,3,135,254,120,252,13,13,26, + 17,2,4,143,136,112,112,96,48,64,16,128,8,128,8,128, + 8,128,8,128,8,64,16,96,48,112,112,143,136,16,21,42, + 17,1,0,252,63,56,8,56,8,24,16,28,16,28,32,14, + 32,14,64,6,64,7,128,3,128,63,248,3,128,3,128,63, + 248,3,128,3,128,3,128,3,128,3,128,31,240,1,27,27, + 8,4,251,128,128,128,128,128,128,128,128,128,128,128,0,0, + 0,0,0,128,128,128,128,128,128,128,128,128,128,128,11,27, + 54,19,3,250,30,0,49,0,97,128,99,128,97,0,112,0, + 56,0,60,0,62,0,79,0,131,128,129,192,128,224,192,96, + 224,32,112,32,56,64,28,128,15,0,7,0,3,0,1,128, + 33,128,113,128,97,128,35,0,28,0,8,3,3,12,2,16, + 195,231,195,21,22,66,23,1,0,0,32,0,3,222,0,12, + 1,128,24,0,192,48,114,96,33,142,32,67,6,16,67,2, + 16,135,2,8,135,0,8,135,0,8,135,0,8,135,0,8, + 135,0,8,135,2,8,67,2,16,67,4,16,33,132,32,48, + 120,96,24,0,192,12,1,128,3,222,0,8,9,9,12,2, + 12,120,196,12,52,68,197,205,118,254,7,12,12,14,3,1, + 16,34,98,68,196,196,196,196,196,66,34,16,14,6,12,16, + 1,5,255,252,0,4,0,4,0,4,0,4,0,4,7,2, + 2,11,2,7,254,254,21,22,66,23,1,0,0,32,0,3, + 222,0,12,1,128,24,0,192,63,248,96,35,140,32,67,142, + 16,67,142,16,131,142,8,131,140,8,131,240,8,131,140,8, + 131,140,8,131,142,8,131,142,72,67,142,80,67,134,80,47, + 195,160,48,0,96,24,0,192,12,1,128,3,222,0,8,1, + 1,14,3,17,255,8,8,8,16,4,13,60,66,129,129,129, + 129,66,60,24,21,63,26,1,255,0,8,0,0,8,0,0, + 8,0,0,8,0,0,8,0,0,8,0,0,8,0,0,8, + 0,255,255,255,0,8,0,0,8,0,0,8,0,0,8,0, + 0,8,0,0,8,0,0,8,0,0,8,0,0,8,0,0, + 0,0,0,0,0,255,255,255,8,13,13,13,3,8,60,198, + 135,199,231,6,12,24,48,65,193,255,255,9,13,26,13,3, + 8,60,0,70,0,67,0,99,0,3,0,6,0,120,0,7, + 0,3,0,227,128,227,0,135,0,124,0,5,5,5,13,6, + 16,24,56,48,96,128,15,22,44,18,2,248,192,64,192,96, + 224,224,192,224,192,224,192,96,192,96,192,96,64,96,64,64, + 64,66,192,194,177,190,143,12,128,0,128,0,192,0,192,0, + 192,0,224,0,224,0,96,0,12,26,52,16,2,251,31,240, + 124,64,252,64,252,64,252,64,252,64,252,64,124,64,60,64, + 4,64,4,64,4,64,4,64,4,64,4,64,4,64,4,64, + 4,64,4,64,4,64,4,64,4,64,4,64,4,64,4,64, + 4,64,4,4,4,8,2,8,96,240,240,96,6,7,7,13, + 3,250,32,32,48,8,12,140,120,6,12,12,13,4,9,16, + 48,240,48,48,48,48,48,48,48,48,252,7,10,10,11,2, + 11,56,68,198,198,198,198,198,68,56,254,8,12,12,14,3, + 1,8,132,70,66,35,35,35,35,34,70,68,8,19,21,63, + 25,4,0,16,3,0,48,2,0,240,4,0,48,4,0,48, + 8,0,48,8,0,48,16,0,48,48,0,48,32,0,48,65, + 128,48,67,128,48,131,128,252,133,128,1,9,128,3,9,128, + 2,17,128,4,31,224,4,1,128,8,1,128,8,1,128,16, + 7,224,19,21,63,25,4,0,16,2,0,48,2,0,240,4, + 0,48,4,0,48,8,0,48,16,0,48,16,0,48,32,0, + 48,39,128,48,72,192,48,80,224,48,144,224,252,156,224,1, + 12,192,2,0,192,2,1,0,4,6,0,4,12,32,8,8, + 32,8,31,224,16,31,224,20,21,63,25,3,0,60,1,0, + 70,1,0,67,2,0,99,2,0,3,4,0,6,12,0,120, + 8,0,7,16,0,3,16,0,227,160,192,227,33,192,135,65, + 192,124,130,192,0,132,192,1,4,192,1,8,192,2,15,240, + 2,0,192,4,0,192,8,0,192,8,3,240,11,21,42,14, + 1,249,12,0,30,0,30,0,12,0,0,0,14,0,17,0, + 17,0,17,0,2,0,6,0,28,0,56,0,112,0,224,192, + 225,224,225,224,224,32,96,32,112,64,31,128,20,28,84,22, + 1,0,3,0,0,3,128,0,1,128,0,0,192,0,0,64, + 0,0,0,0,0,0,0,0,32,0,0,96,0,0,96,0, + 0,112,0,0,240,0,0,240,0,0,184,0,1,56,0,1, + 56,0,3,28,0,3,28,0,2,28,0,6,14,0,6,14, + 0,7,254,0,12,7,0,12,7,0,8,7,0,24,3,128, + 24,3,128,255,31,240,20,28,84,22,1,0,0,4,0,0, + 12,0,0,24,0,0,48,0,0,32,0,0,0,0,0,0, + 0,0,32,0,0,96,0,0,96,0,0,112,0,0,240,0, + 0,240,0,1,184,0,1,56,0,1,56,0,3,28,0,3, + 28,0,2,28,0,6,14,0,6,14,0,7,254,0,12,7, + 0,12,7,0,8,7,0,24,3,128,24,3,128,255,31,240, + 20,28,84,22,1,0,0,32,0,0,96,0,0,240,0,1, + 152,0,3,4,0,0,0,0,0,0,0,0,32,0,0,96, + 0,0,96,0,0,112,0,0,240,0,0,240,0,0,184,0, + 1,56,0,1,56,0,3,28,0,3,28,0,2,28,0,6, + 14,0,6,14,0,7,254,0,12,7,0,12,7,0,8,7, + 0,24,3,128,24,3,128,255,31,240,20,27,81,22,1,0, + 1,228,0,3,252,0,2,56,0,0,0,0,0,0,0,0, + 0,0,0,32,0,0,96,0,0,96,0,0,112,0,0,240, + 0,0,240,0,0,184,0,1,184,0,1,56,0,3,28,0, + 3,28,0,2,28,0,6,14,0,6,14,0,7,254,0,12, + 7,0,12,7,0,8,7,0,24,3,128,24,3,128,255,31, + 240,19,27,81,22,2,0,6,24,0,7,28,0,6,24,0, + 0,0,0,0,0,0,0,0,0,0,64,0,0,192,0,0, + 224,0,0,224,0,1,224,0,1,224,0,1,112,0,3,112, + 0,2,48,0,2,56,0,6,56,0,4,24,0,4,28,0, + 12,28,0,15,252,0,8,14,0,24,14,0,24,6,0,24, + 7,0,56,7,0,254,31,224,20,28,84,23,2,0,0,96, + 0,1,152,0,1,8,0,1,8,0,1,152,0,0,96,0, + 0,0,0,0,96,0,0,96,0,0,96,0,0,240,0,0, + 240,0,0,240,0,1,184,0,1,56,0,1,56,0,3,28, + 0,2,28,0,2,28,0,6,14,0,4,14,0,15,254,0, + 8,7,0,8,7,0,24,7,0,24,3,128,56,3,128,255, + 31,240,27,21,84,30,1,0,0,63,255,224,0,15,0,224, + 0,15,0,96,0,31,0,96,0,23,0,32,0,55,0,32, + 0,39,8,32,0,103,8,0,0,71,8,0,0,199,24,0, + 0,135,248,0,1,7,24,0,3,7,8,0,2,7,8,32, + 7,255,8,32,4,7,0,32,12,7,0,32,8,7,0,96, + 24,7,0,96,56,7,1,224,255,63,255,224,15,28,56,19, + 2,250,15,226,16,54,48,30,32,14,96,6,96,6,224,6, + 224,2,224,0,224,0,224,0,224,0,224,0,224,2,96,2, + 96,2,96,4,32,4,48,12,24,8,6,112,1,128,1,0, + 1,192,0,96,0,112,8,96,7,192,17,28,84,20,2,0, + 4,0,0,6,0,0,3,0,0,1,0,0,0,128,0,0, + 0,0,0,0,0,255,255,128,28,3,128,28,3,128,28,1, + 128,28,1,128,28,0,128,28,32,128,28,32,0,28,32,0, + 28,96,0,31,224,0,28,96,0,28,32,0,28,32,128,28, + 32,128,28,0,128,28,1,128,28,1,128,28,3,128,28,7, + 128,255,255,128,17,28,84,20,2,0,0,24,0,0,56,0, + 0,48,0,0,96,0,0,128,0,0,0,0,0,0,0,255, + 255,128,28,3,128,28,3,128,28,1,128,28,1,128,28,0, + 128,28,32,128,28,32,0,28,32,0,28,96,0,31,224,0, + 28,96,0,28,32,0,28,32,128,28,32,128,28,0,128,28, + 1,128,28,1,128,28,3,128,28,7,128,255,255,128,17,28, + 84,20,2,0,0,128,0,0,192,0,1,192,0,2,32,0, + 4,24,0,0,0,0,0,0,0,255,255,128,28,3,128,28, + 3,128,28,1,128,28,1,128,28,0,128,28,32,128,28,32, + 0,28,32,0,28,96,0,31,224,0,28,96,0,28,32,0, + 28,32,128,28,32,128,28,0,128,28,1,128,28,1,128,28, + 3,128,28,7,128,255,255,128,17,27,81,20,2,0,6,48, + 0,7,56,0,6,48,0,0,0,0,0,0,0,0,0,0, + 255,255,128,28,7,128,28,3,128,28,1,128,28,1,128,28, + 1,128,28,32,128,28,32,0,28,32,0,28,96,0,31,224, + 0,28,96,0,28,32,0,28,32,128,28,32,128,28,1,0, + 28,1,128,28,1,128,28,3,128,28,7,128,255,255,128,8, + 28,28,12,2,0,192,224,96,48,24,0,0,255,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 255,9,28,56,12,2,0,1,0,3,0,6,0,4,0,8, + 0,0,0,0,0,255,128,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,255,128,8, + 28,28,12,2,0,8,24,28,38,193,0,0,255,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 255,9,27,54,11,2,0,195,0,227,128,195,0,0,0,0, + 0,0,0,255,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,255,0,19,21,63, + 22,2,0,255,248,0,28,6,0,28,3,0,28,1,128,28, + 1,192,28,0,192,28,0,192,28,0,224,28,0,224,255,128, + 224,28,0,224,28,0,224,28,0,224,28,0,224,28,0,192, + 28,0,192,28,1,128,28,1,128,28,3,0,28,6,0,255, + 248,0,20,27,81,23,2,0,1,226,0,3,254,0,2,28, + 0,0,0,0,0,0,0,0,0,0,252,7,240,28,0,128, + 30,0,128,31,0,128,23,0,128,19,128,128,19,192,128,17, + 192,128,16,224,128,16,240,128,16,112,128,16,56,128,16,56, + 128,16,28,128,16,30,128,16,14,128,16,7,128,16,7,128, + 16,3,128,16,1,128,254,1,128,17,28,84,20,2,0,12, + 0,0,14,0,0,6,0,0,3,0,0,1,128,0,0,0, + 0,0,128,0,7,112,0,24,8,0,16,12,0,48,6,0, + 96,6,0,96,3,0,96,3,0,224,3,0,224,3,0,224, + 3,0,224,3,128,224,3,128,224,3,0,224,3,0,96,3, + 0,96,3,0,96,6,0,48,6,0,16,12,0,24,8,0, + 7,240,0,17,28,84,20,2,0,0,24,0,0,56,0,0, + 112,0,0,64,0,0,128,0,0,0,0,0,128,0,7,112, + 0,24,8,0,16,12,0,48,6,0,96,6,0,96,3,0, + 96,3,0,224,3,0,224,3,0,224,3,0,224,3,128,224, + 3,128,224,3,0,224,3,0,96,3,0,96,3,0,96,6, + 0,48,6,0,16,12,0,24,8,0,7,240,0,17,28,84, + 20,2,0,0,128,0,1,128,0,3,192,0,6,32,0,12, + 16,0,0,8,0,0,128,0,7,112,0,24,8,0,16,12, + 0,48,6,0,96,6,0,96,3,0,96,3,0,224,3,0, + 224,3,0,224,3,0,224,3,128,224,3,128,224,3,0,224, + 3,0,96,3,0,96,3,0,96,6,0,48,6,0,16,12, + 0,24,8,0,7,240,0,17,27,81,20,2,0,7,136,0, + 15,248,0,8,112,0,0,0,0,0,0,0,0,128,0,7, + 112,0,24,8,0,16,12,0,48,6,0,96,6,0,96,3, + 0,96,3,0,224,3,0,224,3,0,224,3,0,224,3,128, + 224,3,128,224,3,0,224,3,0,96,3,0,96,3,0,96, + 6,0,48,6,0,16,12,0,24,8,0,7,240,0,17,27, + 81,20,2,0,12,48,0,14,56,0,12,48,0,0,0,0, + 0,0,0,0,128,0,7,112,0,24,8,0,16,12,0,48, + 6,0,96,6,0,96,3,0,96,3,0,224,3,0,224,3, + 0,224,3,0,224,3,128,224,3,128,224,3,0,224,3,0, + 96,3,0,96,3,0,96,6,0,48,6,0,16,12,0,24, + 8,0,7,240,0,18,18,54,27,5,255,128,0,192,192,1, + 128,96,3,0,48,6,0,24,12,0,12,24,0,6,48,0, + 3,96,0,1,192,0,1,192,0,3,96,0,6,48,0,12, + 24,0,24,12,0,48,6,0,96,3,0,64,1,128,128,0, + 192,17,21,63,20,2,1,7,241,0,8,15,0,16,14,0, + 48,6,0,96,14,0,96,27,0,96,19,0,224,35,0,224, + 99,0,224,195,128,225,131,128,225,3,0,226,3,0,230,3, + 0,236,3,0,104,3,0,112,6,0,112,6,0,112,12,0, + 88,8,0,143,240,0,20,28,84,23,2,0,3,0,0,3, + 128,0,1,128,0,0,192,0,0,32,0,0,0,0,0,0, + 0,255,7,240,28,0,128,28,0,128,28,0,128,28,0,128, + 28,0,128,28,0,128,28,0,128,28,0,128,28,0,128,28, + 0,128,28,0,128,28,0,128,28,0,128,28,0,128,28,0, + 128,28,0,128,12,0,128,12,1,0,6,2,0,3,252,0, + 20,28,84,23,2,0,0,4,0,0,12,0,0,24,0,0, + 16,0,0,32,0,0,0,0,0,0,0,255,7,240,28,0, + 128,28,0,128,28,0,128,28,0,128,28,0,128,28,0,128, + 28,0,128,28,0,128,28,0,128,28,0,128,28,0,128,28, + 0,128,28,0,128,28,0,128,28,0,128,28,0,128,12,0, + 128,12,1,0,6,2,0,3,252,0,20,28,84,23,2,0, + 0,32,0,0,96,0,0,112,0,0,136,0,3,4,0,0, + 0,0,0,0,0,255,7,240,28,0,128,28,0,128,28,0, + 128,28,0,128,28,0,128,28,0,128,28,0,128,28,0,128, + 28,0,128,28,0,128,28,0,128,28,0,128,28,0,128,28, + 0,128,28,0,128,28,0,128,12,1,128,12,1,0,6,2, + 0,3,252,0,20,27,81,23,2,0,1,134,0,3,142,0, + 1,134,0,0,0,0,0,0,0,0,0,0,255,131,240,28, + 0,128,28,0,128,28,0,128,28,0,128,28,0,128,28,0, + 128,28,0,128,28,0,128,28,0,128,28,0,128,28,0,128, + 28,0,128,28,0,128,28,0,128,28,0,128,28,0,128,12, + 0,128,12,1,0,6,2,0,3,252,0,19,28,84,21,1, + 0,0,4,0,0,12,0,0,24,0,0,16,0,0,32,0, + 0,0,0,0,0,0,255,143,224,30,3,128,14,3,0,14, + 2,0,7,2,0,7,4,0,3,132,0,1,200,0,1,200, + 0,0,240,0,0,240,0,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,7,254,0,17,21,63,20,2,0,255,128,0,28,0, + 0,28,0,0,31,240,0,28,12,0,28,6,0,28,3,0, + 28,3,0,28,3,128,28,3,128,28,3,0,28,3,0,28, + 6,0,28,12,0,31,240,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,255,128,0,13,21,42,15,1,0, + 7,192,12,96,24,112,56,112,56,112,56,96,56,192,59,0, + 56,192,56,96,56,48,56,48,56,56,56,56,56,56,56,56, + 58,56,63,56,62,48,60,48,251,192,13,21,42,15,1,0, + 96,0,96,0,48,0,24,0,8,0,4,0,0,0,31,0, + 97,128,65,192,97,192,113,192,1,192,15,192,49,192,97,192, + 193,192,193,200,195,200,196,216,56,240,13,21,42,15,1,0, + 0,192,1,192,1,128,3,0,6,0,4,0,0,0,31,0, + 33,128,96,192,112,192,112,192,0,192,7,192,56,192,96,192, + 224,192,224,200,225,200,226,216,60,112,13,21,42,15,1,0, + 4,0,12,0,14,0,26,0,17,0,32,128,0,0,31,0, + 33,128,97,192,113,192,113,192,1,192,15,192,49,192,97,192, + 225,192,225,200,225,200,226,216,60,240,13,20,40,15,1,0, + 24,0,63,128,71,128,0,0,0,0,0,0,31,0,33,128, + 97,192,113,192,113,192,1,192,15,192,49,192,97,192,225,192, + 225,200,225,200,226,216,60,240,13,20,40,15,1,0,97,128, + 97,192,97,128,0,0,0,0,0,0,30,0,97,128,64,128, + 96,128,96,192,0,192,15,192,48,192,96,192,192,192,193,200, + 194,200,194,216,60,112,13,21,42,15,1,0,14,0,49,0, + 33,0,33,0,19,0,14,0,0,0,30,0,33,128,97,128, + 97,128,113,192,1,192,15,192,113,192,97,192,225,192,225,200, + 227,200,229,216,120,240,18,14,42,20,1,0,31,30,0,97, + 227,0,65,227,0,97,193,128,113,193,128,1,193,128,15,255, + 192,113,192,0,65,192,0,193,192,128,193,192,128,194,224,128, + 194,97,0,60,62,0,10,20,40,12,1,250,31,0,48,128, + 96,192,96,192,225,192,224,128,224,0,224,0,224,0,224,64, + 96,64,96,128,48,128,31,0,8,0,12,0,3,0,3,0, + 3,0,30,0,10,21,42,13,1,0,96,0,112,0,56,0, + 24,0,4,0,0,0,0,0,30,0,49,128,97,128,96,192, + 224,192,224,192,255,192,224,0,224,0,224,64,96,64,96,64, + 48,128,31,0,10,21,42,13,1,0,0,192,1,192,1,128, + 3,0,6,0,0,0,0,0,30,0,49,128,97,128,96,192, + 224,192,224,192,255,192,224,0,224,0,224,64,96,64,96,64, + 48,128,31,0,10,21,42,13,1,0,4,0,4,0,14,0, + 11,0,17,0,32,128,0,0,30,0,49,128,97,128,96,192, + 224,192,224,192,255,192,224,0,224,0,224,64,96,64,96,64, + 48,128,31,0,10,20,40,13,1,0,49,128,113,192,49,128, + 0,0,0,0,0,0,30,0,49,128,97,128,96,192,224,192, + 224,192,255,192,224,0,224,0,224,64,96,64,96,64,48,128, + 31,0,7,21,21,8,0,0,192,192,96,48,24,0,0,124, + 28,28,28,28,28,28,28,28,28,28,28,28,126,7,21,21, + 8,1,0,6,14,12,24,16,0,0,248,56,56,56,56,56, + 56,56,56,56,56,56,56,252,7,20,20,9,1,0,48,48, + 104,132,2,0,248,56,56,56,56,56,56,56,56,56,56,56, + 56,252,8,19,19,9,1,0,198,231,198,0,0,124,28,28, + 28,28,28,28,28,28,28,28,28,28,126,12,21,42,14,1, + 0,56,64,29,128,14,0,15,0,19,0,33,128,1,192,15, + 192,48,224,96,224,96,96,224,96,224,112,224,112,224,96,224, + 96,224,96,96,96,96,192,48,128,15,0,14,20,40,16,1, + 0,14,32,15,32,19,192,16,192,0,0,0,0,249,192,62, + 96,60,112,56,112,56,112,56,112,56,112,56,112,56,112,56, + 112,56,112,56,112,56,112,252,252,12,21,42,14,1,0,32, + 0,48,0,24,0,8,0,4,0,0,0,0,0,15,0,48, + 128,96,192,96,96,224,96,224,96,224,112,224,112,224,96,224, + 96,96,96,96,192,48,128,15,0,12,21,42,14,1,0,0, + 192,1,192,1,128,3,0,2,0,4,0,0,0,15,0,48, + 128,96,192,96,96,224,96,224,96,224,112,224,112,224,96,224, + 96,96,96,96,192,48,128,15,0,12,21,42,14,1,0,4, + 0,6,0,14,0,11,0,16,128,32,0,0,0,15,0,48, + 128,96,192,96,96,224,96,224,96,224,112,224,112,224,96,224, + 96,96,96,96,192,48,128,15,0,12,20,40,14,1,0,28, + 64,63,192,39,128,0,0,0,0,0,0,15,0,48,128,96, + 192,96,96,224,96,224,96,224,112,224,112,224,96,224,96,96, + 96,96,192,48,128,15,0,12,20,40,14,1,0,48,192,57, + 192,48,192,0,0,0,0,0,0,15,0,48,128,96,192,96, + 96,224,96,224,96,224,112,224,112,224,96,224,96,96,96,96, + 192,48,128,15,0,24,19,57,26,1,254,0,24,0,0,60, + 0,0,60,0,0,24,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,255,255,255,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,24,0,0,60,0,0,60, + 0,0,24,0,12,14,28,14,1,0,15,32,48,160,96,192, + 96,224,225,96,227,96,226,112,228,112,232,96,240,96,96,96, + 96,192,112,128,143,0,14,21,42,16,1,0,24,0,24,0, + 12,0,6,0,2,0,0,0,0,0,248,240,56,112,56,112, + 56,112,56,112,56,112,56,112,56,112,56,112,56,112,56,112, + 56,240,25,112,14,124,14,21,42,16,1,0,0,96,0,224, + 0,192,1,128,1,0,0,0,0,0,248,240,56,112,56,112, + 56,112,56,112,56,112,56,112,56,112,56,112,56,112,56,112, + 56,240,25,112,14,124,14,21,42,16,1,0,2,0,3,0, + 7,0,4,128,8,64,0,0,0,0,248,240,56,112,56,112, + 56,112,56,112,56,112,56,112,56,112,56,112,56,112,56,112, + 56,240,25,112,14,124,14,20,40,16,1,0,24,96,28,224, + 24,96,0,0,0,0,0,0,248,240,56,112,56,112,56,112, + 56,112,56,112,56,112,56,112,56,112,56,112,56,112,56,240, + 25,112,14,124,14,28,56,15,0,249,0,48,0,112,0,96, + 0,192,1,128,0,0,0,0,254,124,24,16,24,16,28,16, + 12,32,12,32,14,32,6,64,6,64,6,64,3,128,3,128, + 3,128,1,128,1,0,1,0,1,0,98,0,114,0,100,0, + 56,0,12,28,56,14,1,249,56,0,248,0,56,0,56,0, + 56,0,56,0,56,0,57,224,62,112,60,112,56,112,56,112, + 56,112,56,96,56,96,56,192,56,128,57,128,58,0,60,0, + 56,0,56,0,56,0,56,0,56,0,56,0,48,0,192,0, + 14,26,52,15,0,249,12,48,14,112,12,48,0,0,0,0, + 254,60,24,16,24,16,28,32,12,32,12,32,14,32,6,64, + 6,64,7,64,3,128,3,128,3,128,1,0,1,0,1,0, + 1,0,114,0,114,0,116,0,56,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--29-290-72-72-P-154-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 21 + Calculated Max Values w=24 h=28 x= 3 y= 9 dx=26 dy= 0 ascent=22 len=75 + Font Bounding box w=76 h=38 x=-24 y=-9 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =21 descent= 0 + X Font ascent =21 descent= 0 + Max Font ascent =22 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr21n[702] U8G_SECTION(".progmem.u8g_font_osr21n") = { + 0,76,38,232,247,21,0,0,0,0,42,57,0,22,250,21, + 0,10,12,24,14,2,9,12,0,14,0,204,64,228,192,53, + 0,14,0,63,0,229,192,196,192,12,0,14,0,12,0,24, + 25,75,26,1,252,0,8,0,0,8,0,0,8,0,0,8, + 0,0,8,0,0,8,0,0,8,0,0,8,0,0,8,0, + 0,8,0,0,8,0,0,8,0,255,255,255,0,8,0,0, + 8,0,0,8,0,0,8,0,0,8,0,0,8,0,0,8, + 0,0,8,0,0,8,0,0,8,0,0,8,0,0,8,0, + 4,8,8,8,2,251,224,240,240,16,16,16,32,64,7,2, + 2,11,2,7,254,254,4,4,4,8,2,0,96,240,240,96, + 9,28,56,13,2,250,0,128,0,128,1,128,1,0,1,0, + 1,0,2,0,2,0,2,0,6,0,4,0,4,0,12,0, + 8,0,8,0,24,0,16,0,16,0,16,0,32,0,32,0, + 32,0,64,0,64,0,64,0,192,0,128,0,128,0,14,21, + 42,17,1,0,7,128,24,64,48,32,32,48,96,16,96,24, + 96,24,224,24,224,24,224,24,224,28,224,28,224,24,224,24, + 224,24,96,24,96,24,96,48,48,32,16,96,15,192,10,21, + 42,17,3,0,2,0,6,0,6,0,14,0,254,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,255,192,12,21, + 42,17,2,0,31,0,32,192,64,96,128,112,128,112,192,112, + 240,112,112,112,32,96,0,224,0,192,1,0,6,0,12,0, + 24,0,48,16,96,16,64,16,224,112,255,240,255,240,12,21, + 42,17,2,0,31,0,97,192,192,224,224,96,240,96,112,112, + 0,96,0,96,0,224,48,192,63,0,0,192,0,96,0,112, + 0,112,96,112,240,112,240,112,192,96,192,192,127,128,14,21, + 42,17,2,0,0,64,0,192,1,192,1,192,3,192,7,192, + 5,192,13,192,9,192,17,192,49,192,33,192,65,192,193,192, + 255,252,1,192,1,192,1,192,1,192,1,192,15,252,12,21, + 42,17,2,0,96,64,127,128,127,0,64,0,64,0,64,0, + 64,0,79,0,112,192,64,96,64,96,0,112,0,112,0,112, + 96,112,240,112,240,112,224,96,192,224,64,192,63,128,12,21, + 42,17,2,0,7,128,24,64,16,96,48,224,96,224,96,192, + 96,0,224,0,231,128,232,192,240,96,240,96,224,112,224,112, + 224,112,224,112,96,112,96,96,112,96,48,192,31,128,11,21, + 42,17,3,0,255,224,255,224,192,32,128,32,128,64,128,64, + 0,64,0,128,1,0,1,0,2,0,6,0,6,0,12,0, + 12,0,12,0,30,0,30,0,30,0,30,0,30,0,14,21, + 42,17,2,0,15,128,48,96,96,48,224,24,224,24,224,24, + 224,24,240,16,124,32,63,192,15,224,51,240,96,248,224,56, + 224,28,224,28,224,24,224,24,96,24,112,48,31,192,12,21, + 42,17,2,0,15,0,48,128,96,64,96,96,224,96,224,96, + 224,112,224,112,224,112,96,112,96,240,49,176,14,48,0,48, + 0,32,48,96,112,96,112,64,96,192,96,128,63,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--29-290-72-72-P-154-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 21, '1' Height: 21 + Calculated Max Values w=29 h=28 x= 4 y=17 dx=32 dy= 0 ascent=23 len=88 + Font Bounding box w=76 h=38 x=-24 y=-9 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =21 descent=-7 + X Font ascent =22 descent=-7 + Max Font ascent =23 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr21r[4396] U8G_SECTION(".progmem.u8g_font_osr21r") = { + 0,76,38,232,247,21,5,131,12,189,32,127,249,23,249,22, + 249,0,0,0,8,0,0,4,21,21,8,2,0,96,240,240, + 240,240,240,96,96,96,96,96,96,96,96,96,64,0,96,240, + 240,96,7,5,5,11,2,17,238,204,204,204,68,15,21,42, + 19,2,0,2,16,6,16,6,16,4,16,4,48,4,48,255, + 254,4,32,12,32,12,32,8,32,8,96,8,96,8,64,255, + 254,24,64,24,64,16,192,16,192,16,128,16,128,13,25,50, + 17,2,254,5,0,5,0,15,128,53,96,37,16,69,24,69, + 24,69,56,69,56,117,48,61,0,63,0,15,192,7,224,5, + 240,5,48,101,24,229,24,229,24,197,24,69,48,69,32,61, + 192,7,0,5,0,19,21,63,25,3,0,60,1,0,70,2, + 0,66,2,0,195,4,0,195,8,0,195,8,0,195,16,0, + 195,16,0,66,32,0,102,32,0,56,64,0,0,67,0,0, + 140,192,1,8,64,1,24,96,2,24,96,2,24,96,4,24, + 96,4,24,96,8,8,64,8,7,128,20,21,63,23,2,0, + 3,128,0,12,64,0,8,32,0,24,32,0,24,32,0,24, + 96,0,28,64,0,12,128,0,15,0,0,7,15,240,15,1, + 128,27,129,0,51,193,0,97,194,0,96,226,0,224,244,0, + 224,124,0,224,56,0,224,60,0,96,60,32,59,198,192,3, + 5,5,7,2,17,224,192,192,192,64,6,28,28,10,3,250, + 4,12,24,16,32,32,64,64,64,128,128,128,128,128,128,128, + 128,128,128,192,64,64,32,32,16,24,8,4,6,28,28,11, + 2,250,128,192,64,32,48,16,24,8,8,8,4,4,4,4, + 4,4,4,4,12,8,8,24,16,48,32,96,192,128,10,12, + 24,14,2,9,12,0,14,0,204,64,228,192,53,0,14,0, + 63,0,229,192,196,192,12,0,14,0,12,0,24,25,75,26, + 1,252,0,8,0,0,8,0,0,8,0,0,8,0,0,8, + 0,0,8,0,0,8,0,0,8,0,0,8,0,0,8,0, + 0,8,0,0,8,0,255,255,255,0,8,0,0,8,0,0, + 8,0,0,8,0,0,8,0,0,8,0,0,8,0,0,8, + 0,0,8,0,0,8,0,0,8,0,0,8,0,4,8,8, + 8,2,251,224,240,240,16,16,16,32,64,7,2,2,11,2, + 7,254,254,4,4,4,8,2,0,96,240,240,96,9,28,56, + 13,2,250,0,128,0,128,1,128,1,0,1,0,1,0,2, + 0,2,0,2,0,6,0,4,0,4,0,12,0,8,0,8, + 0,24,0,16,0,16,0,16,0,32,0,32,0,32,0,64, + 0,64,0,64,0,192,0,128,0,128,0,14,21,42,17,1, + 0,7,128,24,64,48,32,32,48,96,16,96,24,96,24,224, + 24,224,24,224,24,224,28,224,28,224,24,224,24,224,24,96, + 24,96,24,96,48,48,32,16,96,15,192,10,21,42,17,3, + 0,2,0,6,0,6,0,14,0,254,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,255,192,12,21,42,17,2, + 0,31,0,32,192,64,96,128,112,128,112,192,112,240,112,112, + 112,32,96,0,224,0,192,1,0,6,0,12,0,24,0,48, + 16,96,16,64,16,224,112,255,240,255,240,12,21,42,17,2, + 0,31,0,97,192,192,224,224,96,240,96,112,112,0,96,0, + 96,0,224,48,192,63,0,0,192,0,96,0,112,0,112,96, + 112,240,112,240,112,192,96,192,192,127,128,14,21,42,17,2, + 0,0,64,0,192,1,192,1,192,3,192,7,192,5,192,13, + 192,9,192,17,192,49,192,33,192,65,192,193,192,255,252,1, + 192,1,192,1,192,1,192,1,192,15,252,12,21,42,17,2, + 0,96,64,127,128,127,0,64,0,64,0,64,0,64,0,79, + 0,112,192,64,96,64,96,0,112,0,112,0,112,96,112,240, + 112,240,112,224,96,192,224,64,192,63,128,12,21,42,17,2, + 0,7,128,24,64,16,96,48,224,96,224,96,192,96,0,224, + 0,231,128,232,192,240,96,240,96,224,112,224,112,224,112,224, + 112,96,112,96,96,112,96,48,192,31,128,11,21,42,17,3, + 0,255,224,255,224,192,32,128,32,128,64,128,64,0,64,0, + 128,1,0,1,0,2,0,6,0,6,0,12,0,12,0,12, + 0,30,0,30,0,30,0,30,0,30,0,14,21,42,17,2, + 0,15,128,48,96,96,48,224,24,224,24,224,24,224,24,240, + 16,124,32,63,192,15,224,51,240,96,248,224,56,224,28,224, + 28,224,24,224,24,96,24,112,48,31,192,12,21,42,17,2, + 0,15,0,48,128,96,64,96,96,224,96,224,96,224,112,224, + 112,224,112,96,112,96,240,49,176,14,48,0,48,0,32,48, + 96,112,96,112,64,96,192,96,128,63,0,4,14,14,8,2, + 0,96,240,240,96,0,0,0,0,0,0,96,240,240,96,4, + 18,18,8,2,251,96,240,240,96,0,0,0,0,0,0,224, + 240,240,16,16,16,32,64,22,24,72,27,2,251,0,0,12, + 0,0,56,0,0,96,0,1,128,0,7,0,0,28,0,0, + 112,0,0,192,0,3,0,0,14,0,0,56,0,0,224,0, + 0,224,0,0,48,0,0,12,0,0,7,0,0,1,192,0, + 0,112,0,0,24,0,0,6,0,0,3,128,0,0,224,0, + 0,56,0,0,12,24,7,21,26,1,5,255,255,255,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255, + 22,24,72,27,3,251,192,0,0,112,0,0,24,0,0,6, + 0,0,3,128,0,0,224,0,0,56,0,0,12,0,0,3, + 0,0,0,192,0,0,112,0,0,28,0,0,28,0,0,48, + 0,0,192,0,3,128,0,14,0,0,56,0,0,96,0,1, + 128,0,7,0,0,28,0,0,112,0,0,192,0,0,11,21, + 42,14,2,0,30,0,97,128,128,192,128,192,240,224,240,192, + 97,192,1,128,3,128,6,0,12,0,8,0,17,0,17,0, + 17,0,14,0,0,0,12,0,30,0,30,0,12,0,21,21, + 63,25,2,1,3,255,0,12,0,128,24,0,64,48,0,32, + 32,59,144,64,199,16,65,135,8,131,7,8,135,6,8,134, + 6,8,142,14,8,142,14,8,142,12,16,142,28,16,142,28, + 32,70,44,64,67,199,128,32,0,0,16,0,0,8,1,128, + 7,222,0,20,21,63,22,1,0,0,32,0,0,96,0,0, + 96,0,0,112,0,0,240,0,0,240,0,0,184,0,1,56, + 0,1,56,0,3,28,0,3,28,0,2,28,0,6,14,0, + 6,14,0,7,254,0,12,7,0,12,7,0,8,7,0,24, + 3,128,24,3,128,255,31,240,16,21,42,20,2,0,255,240, + 28,12,28,6,28,7,28,7,28,7,28,7,28,6,28,12, + 31,240,28,28,28,6,28,6,28,7,28,7,28,7,28,7, + 28,7,28,6,28,12,255,240,15,21,42,19,2,1,15,226, + 16,54,48,30,32,14,96,6,96,6,224,6,224,2,224,0, + 224,0,224,0,224,0,224,0,224,2,96,2,96,2,96,4, + 32,4,48,12,24,8,7,240,19,21,63,22,2,0,255,248, + 0,28,6,0,28,3,0,28,1,128,28,1,128,28,1,192, + 28,0,192,28,0,192,28,0,192,28,0,224,28,0,224,28, + 0,224,28,0,192,28,0,192,28,0,192,28,1,192,28,1, + 128,28,1,0,28,3,0,28,6,0,255,248,0,17,21,63, + 20,2,0,255,255,128,28,3,128,28,3,128,28,1,128,28, + 1,128,28,0,128,28,32,128,28,32,0,28,32,0,28,96, + 0,31,224,0,28,96,0,28,32,0,28,32,128,28,32,128, + 28,0,128,28,1,128,28,1,128,28,3,128,28,7,128,255, + 255,128,17,21,63,20,2,0,255,255,128,28,3,128,28,3, + 128,28,1,128,28,1,128,28,0,128,28,32,128,28,32,0, + 28,32,0,28,96,0,31,224,0,28,96,0,28,32,0,28, + 32,0,28,32,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,255,128,0,18,21,63,21,2,1,15,226,0, + 24,26,0,48,14,0,32,14,0,96,6,0,96,6,0,224, + 2,0,224,2,0,224,0,0,224,0,0,224,127,192,224,14, + 0,224,14,0,224,14,0,224,14,0,96,14,0,96,14,0, + 32,14,0,48,26,0,16,50,0,15,226,0,20,21,63,23, + 2,0,255,15,240,28,3,128,28,3,128,28,3,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,3,128,31,255,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,3,128,255,15, + 240,8,21,21,12,2,0,255,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,255,13,21,42,15, + 1,0,7,248,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 112,224,240,192,240,192,192,192,65,128,127,0,19,21,63,22, + 2,0,255,31,224,28,7,0,28,6,0,28,12,0,28,8, + 0,28,16,0,28,32,0,28,64,0,28,192,0,29,224,0, + 30,224,0,28,112,0,28,112,0,28,56,0,28,28,0,28, + 28,0,28,14,0,28,14,0,28,7,0,28,7,0,255,63, + 224,16,21,42,20,2,0,255,128,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,1,28,1,28,1,28,1,28,3,28,3,28,15,255, + 255,21,21,63,25,2,0,252,1,248,30,1,224,30,1,224, + 30,2,224,22,2,224,23,2,224,23,2,224,19,4,224,19, + 132,224,19,132,224,17,132,224,17,200,224,17,200,224,16,200, + 224,16,208,224,16,240,224,16,240,224,16,112,224,16,96,224, + 16,96,224,254,39,248,20,21,63,23,2,0,252,7,240,28, + 0,128,30,0,128,31,0,128,23,0,128,19,128,128,19,192, + 128,17,192,128,16,224,128,16,240,128,16,112,128,16,56,128, + 16,56,128,16,28,128,16,30,128,16,14,128,16,7,128,16, + 7,128,16,3,128,16,1,128,254,1,128,17,22,66,20,2, + 0,0,128,0,7,112,0,24,8,0,16,12,0,48,6,0, + 96,6,0,96,3,0,96,3,0,224,3,0,224,3,0,224, + 3,0,224,3,128,224,3,128,224,3,0,224,3,0,96,3, + 0,96,3,0,96,6,0,48,6,0,16,12,0,24,8,0, + 7,240,0,17,21,63,20,2,0,255,248,0,28,14,0,28, + 7,0,28,3,0,28,3,0,28,3,128,28,3,0,28,3, + 0,28,6,0,28,12,0,31,240,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,255,128,0,17,27,81,20,2,251,0,128, + 0,7,112,0,24,8,0,16,12,0,48,6,0,96,6,0, + 96,3,0,96,3,0,224,3,0,224,3,0,224,3,0,224, + 3,128,224,3,128,224,3,0,224,3,0,96,3,0,96,3, + 0,97,198,0,51,38,0,26,60,0,14,60,0,7,48,128, + 0,241,0,0,49,0,0,57,0,0,31,0,0,14,0,18, + 21,63,21,2,0,255,248,0,28,14,0,28,6,0,28,7, + 0,28,7,0,28,7,0,28,7,0,28,6,0,28,12,0, + 31,240,0,28,24,0,28,24,0,28,12,0,28,12,0,28, + 12,0,28,14,0,28,14,64,28,14,64,28,14,64,28,7, + 128,255,131,128,14,21,42,18,3,1,63,144,96,208,192,112, + 192,48,192,16,192,16,224,16,240,16,124,0,63,128,31,224, + 7,240,128,248,128,56,128,28,128,12,192,12,224,12,224,8, + 144,16,142,224,17,21,63,21,2,0,255,255,128,225,195,128, + 193,193,128,193,193,128,193,192,128,129,192,128,129,192,128,129, + 192,128,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,15,248,0,20,21,63,23,2,0,255, + 7,240,28,0,128,28,0,128,28,0,128,28,0,128,28,0, + 128,28,0,128,28,0,128,28,0,128,28,0,128,28,0,128, + 28,0,128,28,0,128,28,0,128,28,0,128,28,0,128,28, + 0,128,12,0,128,12,1,0,6,2,0,3,252,0,20,22, + 66,23,2,255,255,143,240,28,1,192,28,1,128,14,1,128, + 14,1,0,14,1,0,7,3,0,7,2,0,7,2,0,3, + 134,0,3,132,0,3,132,0,1,196,0,1,200,0,1,200, + 0,0,232,0,0,240,0,0,112,0,0,112,0,0,112,0, + 0,32,0,0,32,0,29,22,88,32,2,255,255,63,231,248, + 28,7,0,192,28,7,0,128,28,7,0,128,12,7,128,128, + 14,15,129,128,14,11,129,0,6,9,129,0,7,9,195,0, + 7,25,194,0,7,17,194,0,3,16,230,0,3,144,228,0, + 3,176,228,0,1,160,108,0,1,224,120,0,1,224,120,0, + 1,192,120,0,0,192,48,0,0,192,48,0,0,192,48,0, + 0,128,16,0,19,21,63,22,2,0,255,159,224,14,7,0, + 14,6,0,7,4,0,7,12,0,3,136,0,3,208,0,1, + 208,0,1,224,0,0,224,0,0,112,0,0,240,0,1,184, + 0,1,56,0,2,28,0,6,28,0,4,14,0,8,14,0, + 24,7,0,24,7,0,255,31,224,19,21,63,21,1,0,255, + 143,224,30,3,128,14,3,0,14,2,0,7,2,0,7,4, + 0,3,132,0,1,200,0,1,200,0,0,240,0,0,240,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,0,112,0,0,112,0,0,112,0,7,254,0,15,21, + 42,19,2,0,63,254,56,14,112,28,96,56,64,56,64,112, + 64,240,0,224,1,192,1,192,3,128,7,128,7,0,14,2, + 14,2,28,2,60,2,56,6,112,6,240,14,255,254,6,27, + 27,11,3,250,252,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,252,9, + 28,56,13,2,250,128,0,128,0,192,0,64,0,64,0,64, + 0,32,0,32,0,32,0,16,0,16,0,16,0,24,0,8, + 0,8,0,12,0,4,0,4,0,4,0,2,0,2,0,2, + 0,1,0,1,0,1,0,1,128,0,128,0,128,6,27,27, + 11,2,250,252,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,252,13,11, + 22,17,2,10,2,0,2,0,5,0,13,128,8,128,24,192, + 16,64,32,32,96,48,64,16,192,24,15,1,2,15,0,251, + 255,254,5,5,5,13,2,16,192,224,96,48,8,13,14,28, + 15,1,0,31,0,33,128,97,192,113,192,113,192,1,192,15, + 192,49,192,97,192,225,192,225,200,225,200,226,216,60,240,13, + 21,42,15,1,0,248,0,56,0,56,0,56,0,56,0,56, + 0,56,0,59,192,60,96,56,48,56,48,56,48,56,48,56, + 56,56,56,56,48,56,48,56,48,56,32,44,96,35,192,10, + 14,28,12,1,0,31,0,48,128,96,64,96,192,225,192,224, + 128,224,0,224,0,224,0,224,0,96,64,96,128,48,128,31, + 0,13,21,42,15,1,0,3,224,0,224,0,224,0,224,0, + 224,0,224,0,224,30,224,49,224,97,224,96,224,224,224,224, + 224,224,224,224,224,224,224,224,224,96,224,96,224,49,224,30, + 248,10,14,28,13,1,0,30,0,49,128,97,128,96,192,224, + 192,224,192,255,192,224,0,224,0,224,64,96,64,96,64,48, + 128,31,0,10,21,42,10,1,0,15,0,24,128,57,192,57, + 128,56,0,56,0,56,0,254,0,56,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,254,0,14,21,42,16,2,249,31,56,113,200,96,220,224, + 248,224,224,224,224,224,224,96,192,49,128,31,0,96,0,128, + 0,224,0,127,224,56,112,64,16,128,16,128,16,128,48,64, + 96,63,128,14,21,42,16,1,0,248,0,56,0,56,0,56, + 0,56,0,56,0,56,0,57,192,62,96,60,112,56,112,56, + 112,56,112,56,112,56,112,56,112,56,112,56,112,56,112,56, + 112,252,252,6,21,21,7,1,0,112,112,112,0,0,0,0, + 240,112,112,112,112,112,112,112,112,112,112,112,112,252,8,28, + 28,9,255,249,6,7,6,0,0,0,0,31,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,70,230,198,204,120, + 13,21,42,15,1,0,248,0,56,0,56,0,56,0,56,0, + 56,0,56,0,57,248,56,192,56,128,57,0,57,0,58,0, + 63,0,63,0,59,128,57,192,56,192,56,224,56,224,253,248, + 7,21,21,8,1,0,248,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,254,21,14,42,23,1, + 0,249,195,192,62,100,224,60,120,96,56,120,96,56,112,96, + 56,112,96,56,112,96,56,112,96,56,112,96,56,112,96,56, + 112,96,56,112,96,56,112,96,252,253,248,14,14,28,16,1, + 0,249,192,62,96,60,112,56,112,56,112,56,112,56,112,56, + 112,56,112,56,112,56,112,56,112,56,112,252,252,12,14,28, + 14,1,0,15,0,48,128,96,192,96,96,224,96,224,96,224, + 112,224,112,224,96,224,96,96,96,96,192,48,128,15,0,13, + 21,42,15,1,249,251,192,60,96,56,48,56,48,56,48,56, + 48,56,56,56,56,56,48,56,48,56,48,56,48,60,96,59, + 192,56,0,56,0,56,0,56,0,56,0,56,0,252,0,13, + 21,42,15,1,249,30,32,49,32,96,224,96,224,224,224,224, + 224,224,224,224,224,224,224,224,224,96,224,96,224,49,224,30, + 224,0,224,0,224,0,224,0,224,0,224,0,224,3,248,10, + 14,28,12,1,0,249,128,58,64,60,192,60,192,56,0,56, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,252, + 0,10,14,28,13,2,0,60,128,195,128,129,128,128,128,192, + 128,240,0,62,0,15,128,131,192,128,192,192,64,192,64,160, + 128,159,0,8,20,20,10,1,0,16,16,16,16,48,48,254, + 48,48,48,48,48,48,48,48,49,49,49,59,30,14,14,28, + 16,1,0,248,240,56,112,56,112,56,112,56,112,56,112,56, + 112,56,112,56,112,56,112,56,112,56,240,25,112,14,124,15, + 14,28,15,0,0,254,126,56,16,24,16,28,16,12,32,12, + 32,6,32,6,64,7,64,3,64,3,128,1,128,1,128,1, + 0,22,14,42,22,0,0,254,252,252,56,56,32,24,56,32, + 28,56,32,12,56,64,12,60,64,6,76,64,6,76,128,7, + 70,128,3,134,128,3,135,0,1,131,0,1,131,0,1,2, + 0,14,14,28,16,1,0,124,248,56,96,24,64,12,128,14, + 128,7,0,7,0,3,128,5,128,5,192,8,192,16,224,16, + 96,249,252,15,21,42,15,0,249,254,126,24,16,24,16,28, + 16,12,32,12,32,14,32,6,64,6,64,6,64,3,128,3, + 128,3,128,1,128,1,0,1,0,1,0,98,0,114,0,100, + 0,56,0,10,14,28,13,1,0,255,192,193,192,129,128,131, + 0,135,0,6,0,14,0,28,0,24,0,56,64,48,64,112, + 64,224,192,255,192,6,27,27,12,3,250,12,24,48,48,48, + 48,48,56,24,24,24,16,48,192,48,16,24,24,24,56,48, + 48,48,48,48,16,12,1,28,28,8,4,250,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,6,27,27,12,3,250,128,96, + 32,48,48,48,112,96,96,96,96,96,32,28,48,96,96,96, + 96,96,112,48,48,48,32,96,192,16,6,12,18,1,5,56, + 2,126,1,143,193,131,241,128,255,64,62,255}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--36-360-72-72-P-189-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 26, '1' Height: 25 + Calculated Max Values w=36 h=35 x= 7 y=21 dx=38 dy= 0 ascent=35 len=140 + Font Bounding box w=94 h=46 x=-29 y=-11 + Calculated Min Values x=-1 y=-10 dx= 0 dy= 0 + Pure Font ascent =26 descent=-8 + X Font ascent =27 descent=-8 + Max Font ascent =35 descent=-10 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr26[13186] U8G_SECTION(".progmem.u8g_font_osr26") = { + 0,94,46,227,245,26,7,96,17,82,32,255,248,35,246,27, + 248,0,0,0,10,0,0,4,25,25,10,3,0,96,240,240, + 240,240,240,240,240,96,96,96,96,96,96,96,96,96,96,32, + 64,96,240,240,240,96,8,7,7,14,3,20,195,195,195,195, + 195,195,66,19,25,75,25,3,0,1,130,0,1,130,0,1, + 2,0,1,6,0,3,6,0,3,6,0,3,6,0,255,255, + 224,2,4,0,2,4,0,2,12,0,6,12,0,6,12,0, + 6,12,0,6,8,0,4,8,0,4,8,0,255,255,224,12, + 24,0,12,24,0,12,16,0,8,16,0,8,48,0,8,48, + 0,24,48,0,16,31,62,21,2,253,2,64,2,64,2,64, + 7,224,26,92,50,70,34,66,98,67,98,71,98,79,98,79, + 114,78,58,64,63,64,31,192,7,240,3,252,2,126,2,78, + 34,71,242,67,242,67,226,67,226,67,194,66,66,70,34,76, + 30,112,3,192,2,64,2,64,24,25,75,30,3,0,30,0, + 48,33,0,32,97,128,96,192,192,64,192,192,192,192,192,128, + 192,193,0,192,195,0,192,194,0,64,134,0,97,132,0,34, + 8,0,28,24,112,0,16,132,0,49,134,0,33,2,0,67, + 3,0,195,3,0,131,3,1,131,3,1,3,3,3,3,3, + 6,1,6,4,1,134,12,0,252,24,25,75,28,2,0,1, + 240,0,3,8,0,6,12,0,12,4,0,12,4,0,12,12, + 0,14,8,0,14,24,0,7,48,0,7,192,0,3,193,255, + 7,192,56,13,224,48,24,240,48,48,112,32,112,120,96,112, + 60,64,224,28,128,224,15,128,224,15,0,224,7,0,240,3, + 129,112,15,194,120,25,228,31,224,252,2,7,7,8,3,20, + 192,192,192,192,192,192,64,8,33,33,14,4,250,3,6,12, + 12,24,16,48,48,96,96,96,192,192,192,192,192,192,192,192, + 192,192,64,96,96,96,48,48,24,24,12,6,6,3,8,33, + 33,13,2,250,192,96,96,48,24,24,12,12,6,6,6,2, + 3,3,3,3,3,3,3,3,2,6,6,6,4,12,12,24, + 24,48,96,192,128,13,15,30,18,3,10,7,0,7,0,7, + 0,195,24,226,56,114,112,10,128,7,0,15,128,122,240,242, + 120,226,56,7,0,7,0,7,0,30,31,124,34,2,250,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,255,255,255,252,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,5,11,11,10,2, + 250,112,248,248,120,8,8,8,16,16,32,64,9,2,4,13, + 2,8,255,128,255,128,4,5,5,10,3,0,96,240,240,240, + 96,12,34,68,16,2,249,0,16,0,48,0,48,0,32,0, + 96,0,96,0,64,0,192,0,192,0,128,0,128,1,128,1, + 0,1,0,3,0,2,0,2,0,6,0,4,0,4,0,12, + 0,8,0,8,0,24,0,24,0,16,0,48,0,48,0,32, + 0,96,0,96,0,64,0,192,0,192,0,17,25,75,21,2, + 0,3,224,0,14,56,0,28,28,0,24,12,0,56,14,0, + 112,7,0,112,7,0,112,7,0,240,7,128,240,7,128,240, + 7,128,240,7,128,240,7,128,240,7,128,240,7,128,240,7, + 128,240,7,128,112,7,0,112,7,0,112,7,0,56,14,0, + 56,14,0,24,12,0,12,24,0,7,112,0,12,25,50,21, + 4,0,1,0,3,0,3,0,15,0,255,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,255,240,15,25,50,21,3,0,15,192,48,112,96,56, + 64,60,192,30,192,30,224,30,248,30,248,30,120,28,0,60, + 0,56,0,112,0,224,1,192,3,0,14,0,28,4,56,4, + 48,4,96,4,96,12,255,252,255,252,255,252,15,25,50,21, + 3,0,15,192,48,112,32,56,96,28,112,28,120,28,120,28, + 48,28,0,28,0,56,0,112,31,192,24,112,0,56,0,60, + 0,30,0,30,112,30,248,30,248,30,248,30,192,60,192,56, + 96,112,63,224,17,25,75,21,2,0,0,16,0,0,48,0, + 0,112,0,0,112,0,0,240,0,1,240,0,1,112,0,3, + 112,0,6,112,0,6,112,0,12,112,0,8,112,0,24,112, + 0,48,112,0,32,112,0,96,112,0,192,112,0,255,255,128, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,7,255,128,15,26,52,21,3,0,32,0,48,56,63, + 240,63,192,47,0,32,0,32,0,32,0,32,0,39,192,56, + 112,48,56,32,60,32,28,0,30,0,30,0,30,0,30,120, + 30,248,30,248,28,240,60,224,60,96,56,112,112,63,192,15, + 25,50,21,3,0,3,224,6,24,12,12,24,28,56,60,48, + 60,112,16,112,0,112,0,243,224,246,56,252,28,248,28,248, + 14,240,14,240,14,240,14,240,14,112,14,112,14,112,12,56, + 28,56,24,24,56,14,224,14,25,50,21,3,0,255,252,255, + 252,255,252,192,12,128,8,128,8,128,8,128,16,0,16,0, + 32,0,96,0,64,0,128,1,128,1,128,3,0,3,0,7, + 0,7,0,15,128,15,128,15,128,15,128,15,128,7,128,17, + 25,75,21,2,0,7,240,0,28,28,0,48,14,0,112,6, + 0,224,3,0,224,3,0,224,3,0,240,3,0,240,6,0, + 124,6,0,127,140,0,31,240,0,7,252,0,25,254,0,48, + 63,0,96,15,128,224,7,128,224,3,128,224,3,128,224,3, + 128,224,3,0,96,7,0,112,6,0,56,12,0,15,248,0, + 15,25,50,21,3,0,7,192,24,96,48,48,112,56,112,28, + 224,28,224,28,224,30,224,30,224,30,224,30,112,62,112,62, + 56,94,15,158,0,30,0,28,0,28,56,28,120,28,120,56, + 112,56,96,112,48,224,31,192,4,17,17,10,3,0,96,240, + 240,240,96,0,0,0,0,0,0,0,96,240,240,240,96,5, + 23,23,11,3,250,112,248,248,248,112,0,0,0,0,0,0, + 0,112,240,248,120,8,8,8,16,16,32,64,28,29,116,34, + 3,251,0,0,0,112,0,0,1,192,0,0,7,0,0,0, + 28,0,0,0,112,0,0,1,224,0,0,3,128,0,0,14, + 0,0,0,56,0,0,0,224,0,0,3,128,0,0,15,0, + 0,0,28,0,0,0,112,0,0,0,192,0,0,0,112,0, + 0,0,28,0,0,0,7,0,0,0,1,192,0,0,0,240, + 0,0,0,56,0,0,0,14,0,0,0,3,128,0,0,0, + 224,0,0,0,56,0,0,0,14,0,0,0,7,0,0,0, + 1,192,0,0,0,112,30,8,32,34,2,6,255,255,255,252, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,255,255,255,252,28,29,116,34, + 3,251,224,0,0,0,56,0,0,0,14,0,0,0,3,128, + 0,0,0,224,0,0,0,112,0,0,0,28,0,0,0,7, + 0,0,0,1,192,0,0,0,112,0,0,0,28,0,0,0, + 15,0,0,0,3,128,0,0,0,224,0,0,0,48,0,0, + 0,224,0,0,3,128,0,0,14,0,0,0,56,0,0,0, + 240,0,0,1,192,0,0,7,0,0,0,28,0,0,0,112, + 0,0,1,192,0,0,7,0,0,0,30,0,0,0,56,0, + 0,0,224,0,0,0,13,25,50,17,2,0,15,128,48,224, + 64,112,192,56,192,56,248,56,248,56,112,56,0,112,0,224, + 1,192,3,128,3,0,4,0,12,0,8,64,8,64,8,128, + 7,0,0,0,3,0,7,128,7,128,7,128,3,0,26,27, + 108,30,2,0,0,4,0,0,0,251,224,0,3,0,56,0, + 6,0,12,0,12,0,6,0,24,0,3,0,48,15,1,0, + 48,49,241,128,96,96,241,128,96,192,224,128,193,192,224,192, + 193,128,224,192,193,128,192,192,195,128,192,192,195,1,192,192, + 195,1,192,192,195,1,129,128,195,3,129,128,67,7,129,0, + 99,7,130,0,97,137,132,0,32,240,248,0,48,0,0,0, + 24,0,0,0,12,0,16,0,7,0,48,0,1,255,192,0, + 25,26,104,28,2,0,0,8,0,0,0,12,0,0,0,28, + 0,0,0,28,0,0,0,30,0,0,0,62,0,0,0,46, + 0,0,0,47,0,0,0,103,0,0,0,103,0,0,0,71, + 128,0,0,195,128,0,0,195,128,0,0,131,192,0,1,129, + 192,0,1,129,192,0,3,1,224,0,3,255,224,0,2,0, + 224,0,6,0,240,0,6,0,112,0,6,0,112,0,12,0, + 120,0,12,0,120,0,30,0,120,0,255,195,255,128,20,26, + 78,25,3,0,255,252,0,28,3,0,28,1,192,28,1,192, + 28,0,224,28,0,224,28,0,224,28,0,224,28,0,224,28, + 1,192,28,1,128,28,3,0,31,252,0,28,7,0,28,1, + 192,28,1,224,28,0,224,28,0,240,28,0,240,28,0,240, + 28,0,240,28,0,240,28,1,224,28,1,192,28,3,128,255, + 254,0,19,26,78,24,3,1,3,252,32,14,6,96,28,3, + 224,24,1,224,56,0,224,120,0,224,112,0,96,112,0,96, + 240,0,96,240,0,32,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,112,0,32,112,0, + 32,120,0,96,56,0,64,56,0,64,28,0,128,12,0,128, + 6,3,0,3,222,0,24,26,78,29,3,0,255,255,0,28, + 1,192,28,0,112,28,0,56,28,0,56,28,0,28,28,0, + 30,28,0,30,28,0,14,28,0,15,28,0,15,28,0,15, + 28,0,15,28,0,15,28,0,15,28,0,15,28,0,15,28, + 0,14,28,0,30,28,0,30,28,0,28,28,0,56,28,0, + 56,28,0,112,28,1,192,255,255,0,21,26,78,25,2,0, + 255,255,248,14,0,120,14,0,56,14,0,24,14,0,24,14, + 0,8,14,0,8,14,4,8,14,4,0,14,4,0,14,12, + 0,14,12,0,15,252,0,14,12,0,14,4,0,14,4,0, + 14,4,8,14,4,8,14,0,8,14,0,8,14,0,24,14, + 0,24,14,0,56,14,0,56,14,0,248,255,255,248,20,26, + 78,24,2,0,255,255,240,14,0,240,14,0,112,14,0,48, + 14,0,48,14,0,16,14,0,16,14,4,16,14,4,0,14, + 4,0,14,12,0,14,12,0,15,252,0,14,12,0,14,12, + 0,14,4,0,14,4,0,14,4,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,255, + 224,0,22,27,81,26,3,0,0,32,0,3,220,32,6,7, + 32,12,3,224,24,1,224,56,0,224,56,0,96,112,0,96, + 112,0,96,112,0,32,240,0,32,240,0,0,240,0,0,240, + 0,0,240,15,252,240,0,224,240,0,224,240,0,224,240,0, + 224,112,0,224,112,0,224,56,0,224,56,1,224,24,1,32, + 12,3,32,6,6,32,3,252,32,24,26,78,28,2,0,255, + 195,255,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,15,255,248,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,255,195,255,10,26,52, + 14,2,0,255,192,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,255,192,16,26,52,19,2,0,3,255,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,112,56,248,56,248,56,240,56,192,48,192,112,96,96,63, + 192,24,26,78,28,2,0,255,199,254,14,1,240,14,0,224, + 14,0,192,14,1,128,14,3,0,14,6,0,14,12,0,14, + 24,0,14,24,0,14,56,0,14,124,0,14,188,0,15,62, + 0,15,30,0,14,31,0,14,15,0,14,15,128,14,7,128, + 14,7,192,14,3,192,14,1,224,14,1,240,14,0,240,14, + 0,248,255,199,255,20,26,78,24,2,0,255,224,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,16,14,0, + 16,14,0,32,14,0,48,14,0,48,14,0,48,14,0,112, + 14,0,240,14,3,240,255,255,240,26,26,104,30,2,0,255, + 0,31,192,15,0,30,0,15,128,30,0,15,128,46,0,11, + 128,46,0,11,128,46,0,11,192,110,0,9,192,78,0,9, + 192,78,0,9,224,78,0,8,224,142,0,8,224,142,0,8, + 224,142,0,8,241,142,0,8,113,14,0,8,113,14,0,8, + 121,14,0,8,59,14,0,8,58,14,0,8,58,14,0,8, + 30,14,0,8,28,14,0,8,28,14,0,8,12,14,0,28, + 12,14,0,255,136,255,192,25,26,104,28,2,0,254,0,255, + 128,15,0,28,0,15,128,8,0,15,128,8,0,11,192,8, + 0,11,192,8,0,9,224,8,0,8,240,8,0,8,240,8, + 0,8,120,8,0,8,60,8,0,8,60,8,0,8,30,8, + 0,8,30,8,0,8,15,8,0,8,7,136,0,8,7,136, + 0,8,3,200,0,8,1,232,0,8,1,232,0,8,0,248, + 0,8,0,120,0,8,0,120,0,8,0,56,0,28,0,24, + 0,255,128,24,0,21,27,81,26,3,0,0,32,0,3,220, + 0,6,3,0,12,1,128,28,1,192,56,0,224,56,0,224, + 120,0,240,112,0,112,112,0,112,240,0,120,240,0,120,240, + 0,120,240,0,120,240,0,120,240,0,120,240,0,120,240,0, + 120,112,0,112,112,0,112,120,0,240,56,0,224,56,0,224, + 28,1,192,12,1,128,6,3,0,3,254,0,21,26,78,25, + 2,0,255,255,0,14,1,192,14,0,224,14,0,240,14,0, + 120,14,0,120,14,0,120,14,0,120,14,0,120,14,0,112, + 14,0,240,14,0,224,14,1,192,15,254,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,255,224,0, + 21,33,99,26,3,250,0,32,0,3,220,0,6,3,0,12, + 1,128,28,1,192,56,0,224,56,0,224,120,0,240,112,0, + 112,112,0,112,240,0,120,240,0,120,240,0,120,240,0,120, + 240,0,120,240,0,120,240,0,120,240,0,120,112,0,112,112, + 0,112,120,0,240,56,112,224,57,152,224,29,13,192,13,13, + 128,7,15,8,3,158,8,0,110,8,0,14,8,0,14,24, + 0,7,176,0,7,240,0,3,192,22,26,78,25,2,0,255, + 255,0,14,3,192,14,1,224,14,0,240,14,0,240,14,0, + 240,14,0,240,14,0,240,14,1,224,14,1,192,14,7,128, + 15,252,0,14,6,0,14,7,0,14,3,128,14,3,128,14, + 3,128,14,3,192,14,3,192,14,3,192,14,3,196,14,1, + 196,14,1,196,14,1,236,14,1,248,255,224,240,17,26,78, + 22,3,1,31,227,0,48,51,0,96,31,0,192,15,0,192, + 7,0,192,3,0,192,3,0,224,3,0,240,1,0,120,0, + 0,127,0,0,63,192,0,31,248,0,7,252,0,1,254,0, + 128,63,0,128,15,128,128,3,128,192,3,128,192,1,128,192, + 1,128,224,1,128,240,1,0,248,3,0,140,6,0,135,252, + 0,21,26,78,26,3,0,255,255,248,240,112,120,224,112,56, + 192,112,24,192,112,24,192,112,24,128,112,8,128,112,8,128, + 112,8,128,112,8,0,112,0,0,112,0,0,112,0,0,112, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,7,255,128,25,26,104,29,2,0,255,192,255,128,14, + 0,14,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,6, + 0,8,0,7,0,8,0,3,0,16,0,1,192,32,0,0, + 127,192,0,25,26,104,28,2,0,255,241,255,128,15,0,60, + 0,15,0,24,0,7,128,24,0,7,128,16,0,3,128,48, + 0,3,192,48,0,3,192,48,0,1,192,32,0,1,224,96, + 0,1,224,96,0,0,224,64,0,0,240,192,0,0,240,192, + 0,0,112,128,0,0,113,128,0,0,121,128,0,0,57,0, + 0,0,59,0,0,0,63,0,0,0,30,0,0,0,30,0, + 0,0,14,0,0,0,14,0,0,0,12,0,0,0,4,0, + 0,36,26,130,38,1,0,255,231,255,63,240,15,0,248,7, + 128,15,0,120,3,0,7,0,120,3,0,7,128,120,6,0, + 7,128,248,6,0,3,128,252,6,0,3,128,252,4,0,3, + 192,156,12,0,1,193,156,12,0,1,193,158,12,0,1,225, + 14,24,0,1,227,14,24,0,0,227,14,24,0,0,227,15, + 16,0,0,242,7,48,0,0,118,7,48,0,0,118,7,32, + 0,0,116,3,224,0,0,124,3,224,0,0,60,3,192,0, + 0,60,1,192,0,0,56,1,192,0,0,24,1,192,0,0, + 24,1,128,0,0,16,0,128,0,24,26,78,27,2,0,255, + 227,255,15,128,112,7,128,96,7,192,96,3,192,192,1,224, + 128,1,225,128,0,227,0,0,242,0,0,118,0,0,124,0, + 0,56,0,0,60,0,0,60,0,0,62,0,0,79,0,0, + 207,0,0,135,128,1,135,128,1,3,192,3,3,192,6,1, + 224,6,0,224,14,0,240,30,0,240,255,199,255,24,26,78, + 27,2,0,255,225,255,31,0,56,15,0,48,7,128,48,7, + 128,32,3,192,96,3,192,64,1,224,128,0,224,128,0,241, + 0,0,113,0,0,122,0,0,58,0,0,60,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,1,255, + 224,19,26,78,23,2,0,63,255,224,60,3,192,56,3,192, + 112,7,128,96,15,0,96,15,0,64,30,0,64,30,0,64, + 60,0,0,120,0,0,120,0,0,240,0,0,224,0,1,224, + 0,3,192,0,3,192,0,7,128,32,7,0,32,15,0,32, + 30,0,96,30,0,96,60,0,224,56,0,224,120,1,224,240, + 3,192,255,255,192,7,33,33,14,4,249,254,240,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,240,254,12,34,68,16, + 2,249,128,0,192,0,64,0,64,0,96,0,32,0,32,0, + 48,0,16,0,16,0,24,0,8,0,8,0,12,0,4,0, + 4,0,6,0,6,0,2,0,3,0,3,0,1,0,1,128, + 1,128,0,128,0,128,0,192,0,64,0,64,0,96,0,32, + 0,32,0,48,0,16,7,33,33,15,3,249,254,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,14,254,15,13,26, + 21,3,12,1,0,3,128,3,128,6,192,4,64,12,96,24, + 48,16,16,48,24,96,8,96,12,192,6,128,2,19,1,3, + 19,0,250,255,255,224,6,6,6,16,3,19,192,224,112,48, + 24,12,16,17,34,19,2,0,15,128,48,224,96,112,96,112, + 120,112,120,112,0,112,1,240,30,112,112,112,96,112,224,112, + 224,113,224,241,225,113,113,126,62,60,16,26,52,18,0,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,112,29,140,29,14,30,6,30,7,28,7,28,7, + 28,7,28,7,28,7,28,7,28,7,28,7,30,6,30,14, + 19,12,16,240,12,17,34,16,2,0,15,128,24,96,48,48, + 112,48,96,112,224,112,224,112,224,0,224,0,224,0,224,0, + 224,0,96,16,112,16,48,32,24,64,15,128,16,26,52,19, + 2,0,1,248,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,14,56,57,184,48,184,112,120,96,120,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,96,56,112,120, + 48,120,48,248,15,63,13,17,34,17,2,0,15,128,24,224, + 48,96,112,112,96,48,224,56,224,56,255,248,224,0,224,0, + 224,0,224,8,112,16,112,16,48,32,24,96,7,128,12,26, + 52,12,1,0,7,192,12,32,28,48,56,112,56,112,56,0, + 56,0,56,0,56,0,255,128,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,255,128,17,25,75,20,2,248,7,199, + 0,28,117,128,56,59,128,112,31,128,112,28,0,112,28,0, + 112,28,0,112,28,0,56,56,0,28,112,0,7,192,0,56, + 0,0,64,0,0,64,0,0,64,0,0,127,224,0,63,248, + 0,14,28,0,112,2,0,192,2,0,192,2,0,192,2,0, + 224,4,0,112,8,0,15,240,0,18,26,78,21,1,0,252, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,124,0,28,142,0, + 29,7,0,30,7,0,30,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,28,7,0,255,31,192,7,25,25, + 10,2,0,48,120,120,48,0,0,0,0,248,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,254,9,34,68,11, + 255,248,1,128,3,128,3,128,1,128,0,0,0,0,0,0, + 0,0,0,0,31,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,67,128,227,128,227,0, + 195,0,70,0,60,0,17,26,78,19,1,0,252,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,127,0,28,24,0,28,16,0, + 28,48,0,28,32,0,28,64,0,28,128,0,29,192,0,29, + 192,0,30,224,0,28,112,0,28,112,0,28,56,0,28,60, + 0,28,28,0,28,30,0,255,127,128,9,26,52,11,1,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,255,128,25,17,68,29,2,0,248,240,120,0,57,56, + 156,0,58,29,14,0,60,30,14,0,60,30,14,0,56,28, + 14,0,56,28,14,0,56,28,14,0,56,28,14,0,56,28, + 14,0,56,28,14,0,56,28,14,0,56,28,14,0,56,28, + 14,0,56,28,14,0,56,28,14,0,254,127,63,128,17,17, + 51,21,2,0,248,248,0,57,28,0,58,14,0,60,14,0, + 60,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,254,63,128,14,17,34,18,2,0,7,128,24, + 96,48,48,112,56,112,24,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,112,24,112,56,48,48,24,96,7,128,16, + 25,50,19,1,248,252,240,29,140,31,14,30,6,30,7,28, + 7,28,7,28,7,28,7,28,7,28,7,28,7,28,7,30, + 6,30,14,29,12,28,240,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,255,128,16,25,50,18,2,248,15,8,56, + 136,48,216,112,88,96,120,224,56,224,56,224,56,224,56,224, + 56,224,56,224,56,96,56,112,120,48,120,48,184,15,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,1,255,12, + 17,34,15,2,0,248,224,57,16,58,48,58,112,60,112,60, + 0,60,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,0,254,0,12,17,34,16,2,0,62,64,97, + 64,192,192,192,64,192,64,224,64,120,0,127,0,31,192,7, + 224,128,240,192,112,192,48,224,48,224,48,152,96,135,192,11, + 24,48,13,1,0,8,0,8,0,8,0,8,0,24,0,24, + 0,56,0,255,192,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,0,56,32,56,32,56,32,56, + 96,31,192,15,128,17,17,51,20,1,0,248,62,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 30,0,56,30,0,56,46,0,28,78,0,15,143,128,18,17, + 51,19,0,0,255,31,192,28,7,0,28,6,0,12,4,0, + 14,4,0,14,4,0,7,8,0,7,8,0,3,8,0,3, + 144,0,1,144,0,1,208,0,1,224,0,0,224,0,0,224, + 0,0,64,0,0,64,0,27,17,68,28,0,0,255,63,207, + 224,28,15,3,0,28,7,3,0,12,7,2,0,14,7,2, + 0,14,15,130,0,7,11,132,0,7,9,132,0,3,137,196, + 0,3,145,200,0,1,144,200,0,1,208,232,0,1,224,240, + 0,0,224,112,0,0,224,112,0,0,64,96,0,0,64,32, + 0,16,17,34,19,2,0,254,126,60,56,28,48,28,32,14, + 64,14,64,7,128,3,128,3,128,3,192,3,192,4,224,8, + 96,8,112,16,56,48,56,252,255,18,25,75,20,1,248,255, + 31,192,28,6,0,28,6,0,12,4,0,14,4,0,14,4, + 0,6,8,0,7,8,0,7,8,0,3,16,0,3,144,0, + 3,144,0,1,240,0,1,224,0,1,224,0,0,224,0,0, + 192,0,0,64,0,0,192,0,0,128,0,112,128,0,113,128, + 0,113,0,0,115,0,0,60,0,0,12,17,34,15,1,0, + 255,240,224,112,192,224,128,224,129,192,131,128,131,128,7,0, + 7,0,14,0,28,16,28,16,56,16,56,16,112,48,224,112, + 255,240,8,33,33,15,3,249,3,4,8,24,24,24,24,28, + 28,28,12,12,12,12,8,24,224,24,8,12,12,12,12,28, + 28,28,24,24,24,24,8,4,3,2,34,34,10,4,249,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,8,33,33,14,3,249,192,32,16,24,24,24,24,24,56, + 56,48,48,48,48,16,24,7,24,16,48,48,48,48,56,56, + 24,24,24,24,24,16,32,192,20,6,18,24,2,6,62,0, + 32,127,192,16,135,248,16,128,255,48,128,63,224,96,7,192, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,0,0,0,10,0,0,4,25,25,10,3,248,96,240,240, + 240,96,64,64,96,96,96,96,96,96,96,96,96,96,240,240, + 240,240,240,240,240,96,12,25,50,21,4,252,1,0,1,0, + 1,0,1,0,7,192,25,32,57,48,113,48,113,112,225,112, + 225,32,225,0,225,0,225,0,225,0,225,0,113,16,113,16, + 57,16,29,32,7,192,1,0,1,0,1,0,1,0,20,25, + 75,25,2,0,0,15,128,0,24,96,0,48,32,0,96,112, + 0,192,240,0,192,240,1,192,224,1,192,0,1,192,0,1, + 192,0,1,192,0,63,192,0,1,254,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,1,192,0,57,128,16, + 199,128,16,131,128,48,131,224,96,134,255,192,120,63,128,18, + 16,48,22,2,5,195,241,192,124,15,128,48,7,0,32,3, + 0,96,1,0,64,1,128,64,0,128,64,0,128,64,0,128, + 64,0,128,64,1,128,96,1,0,32,3,0,48,7,0,124, + 15,128,227,241,192,20,25,75,22,1,0,255,7,240,60,1, + 192,28,1,128,30,1,0,14,3,0,15,2,0,7,6,0, + 7,132,0,3,140,0,3,136,0,1,216,0,1,208,0,1, + 224,0,31,255,0,0,224,0,0,224,0,31,255,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,15,254,0,2,33,33,10,4,250,192,192,192,192, + 192,192,192,192,192,192,192,192,192,0,0,0,0,0,0,0, + 192,192,192,192,192,192,192,192,192,192,192,192,192,13,32,64, + 23,4,249,7,128,24,64,16,96,48,224,48,224,48,64,56, + 0,28,0,30,0,15,0,23,128,99,192,129,224,128,240,128, + 120,128,24,192,24,224,8,120,8,60,16,30,32,15,64,7, + 128,3,192,1,192,0,224,16,96,56,96,56,96,48,64,16, + 192,15,0,10,4,8,16,3,20,96,192,225,192,225,192,96, + 192,26,26,104,30,2,1,0,255,192,0,3,0,48,0,4, + 0,8,0,8,0,4,0,16,30,2,0,32,113,225,0,32, + 224,225,0,65,192,96,128,65,192,96,128,129,128,32,64,131, + 128,32,64,131,128,0,64,131,128,0,64,131,128,0,64,131, + 128,0,64,131,128,0,64,131,128,32,64,65,192,64,128,65, + 192,64,128,32,224,65,0,32,112,129,0,16,31,2,0,8, + 0,4,0,4,0,8,0,3,0,48,0,0,255,192,0,9, + 13,26,13,2,12,120,0,132,0,198,0,198,0,14,0,54, + 0,70,0,198,0,198,128,206,128,115,0,0,0,255,0,10, + 14,28,18,4,2,16,64,48,128,97,128,97,0,195,0,195, + 0,195,0,195,0,195,0,67,0,97,0,32,128,16,192,8, + 0,18,7,21,22,2,6,255,255,192,0,0,192,0,0,192, + 0,0,192,0,0,192,0,0,192,0,0,192,9,2,4,13, + 2,8,255,128,255,128,26,26,104,30,2,1,0,255,192,0, + 3,0,48,0,4,0,8,0,8,0,4,0,19,255,2,0, + 32,225,193,0,32,224,225,0,64,224,224,128,64,224,224,128, + 128,224,224,64,128,224,224,64,128,225,192,64,128,254,0,64, + 128,225,128,64,128,224,192,64,128,224,224,64,128,224,224,64, + 64,224,228,128,64,224,228,128,32,224,233,0,35,248,121,0, + 16,0,2,0,8,0,4,0,4,0,8,0,3,0,48,0, + 0,255,192,0,9,1,2,15,3,21,255,128,10,9,18,22, + 6,16,30,0,97,128,192,128,128,64,128,64,128,64,64,128, + 97,128,30,0,30,25,100,34,2,255,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,255,255,255,252,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,255,255,255,252,10,15, + 30,16,3,10,63,0,67,128,129,192,129,192,225,192,225,192, + 1,128,3,0,6,0,8,0,48,0,64,64,64,64,255,192, + 255,192,10,16,32,16,4,9,62,0,67,0,193,128,225,128, + 225,128,1,128,3,0,124,0,3,128,1,192,1,192,225,192, + 225,192,129,192,131,128,126,0,6,6,6,16,7,19,12,28, + 56,48,96,192,19,27,81,22,2,246,96,24,0,224,60,0, + 224,60,0,224,60,0,224,60,0,224,60,0,224,60,0,224, + 60,0,224,60,0,192,24,0,64,24,0,64,24,0,64,56, + 0,96,48,32,112,124,96,95,227,224,71,193,192,128,0,0, + 192,0,0,192,0,0,192,0,0,192,0,0,224,0,0,224, + 0,0,224,0,0,240,0,0,96,0,0,15,31,62,19,2, + 251,31,254,62,16,126,16,254,16,254,16,254,16,254,16,254, + 16,254,16,126,16,62,16,2,16,2,16,2,16,2,16,2, + 16,2,16,2,16,2,16,2,16,2,16,2,16,2,16,2, + 16,2,16,2,16,2,16,2,16,2,16,2,16,2,16,4, + 5,5,10,3,9,96,240,240,240,96,7,7,7,16,4,248, + 16,32,28,6,6,134,124,8,15,15,16,4,10,8,24,248, + 24,24,24,24,24,24,24,24,24,24,24,255,9,13,26,15, + 3,12,28,0,99,0,67,0,193,128,193,128,193,128,193,128, + 193,128,67,0,99,0,28,0,0,0,255,128,9,14,28,17, + 4,2,132,0,66,0,99,0,33,0,49,128,49,128,49,128, + 49,128,49,128,33,128,99,0,67,0,134,0,4,0,24,25, + 75,31,4,0,8,0,16,24,0,48,248,0,32,24,0,64, + 24,0,64,24,0,128,24,1,128,24,1,0,24,2,0,24, + 6,0,24,4,12,24,8,28,24,8,28,24,16,44,255,48, + 76,0,32,76,0,64,140,0,192,140,0,129,12,1,2,12, + 1,3,255,2,0,12,6,0,12,4,0,12,8,0,127,24, + 25,75,31,4,0,8,0,32,24,0,96,248,0,64,24,0, + 192,24,0,128,24,1,0,24,1,0,24,2,0,24,6,0, + 24,4,0,24,12,248,24,9,14,24,18,15,24,18,7,255, + 35,135,0,97,135,0,64,14,0,128,12,0,128,24,1,0, + 32,3,0,193,2,1,1,6,1,1,4,3,255,8,3,254, + 24,25,75,31,4,0,62,0,32,67,0,32,193,128,64,225, + 128,192,1,128,128,3,1,128,124,1,0,3,130,0,1,194, + 0,1,196,0,225,204,24,225,200,24,129,208,56,131,144,88, + 126,32,88,0,96,152,0,64,152,0,193,24,0,129,24,1, + 2,24,3,3,255,2,0,24,6,0,24,4,0,24,8,0, + 127,13,25,50,17,1,248,6,0,15,0,15,0,15,0,6, + 0,7,0,8,192,16,64,16,64,16,192,0,128,1,0,7, + 0,14,0,28,0,56,0,112,0,240,112,224,120,224,120,224, + 24,224,24,112,16,56,96,15,192,25,34,136,28,2,0,0, + 192,0,0,0,224,0,0,0,224,0,0,0,48,0,0,0, + 24,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0, + 8,0,0,0,12,0,0,0,28,0,0,0,28,0,0,0, + 30,0,0,0,62,0,0,0,46,0,0,0,47,0,0,0, + 103,0,0,0,103,0,0,0,71,128,0,0,195,128,0,0, + 195,128,0,0,131,192,0,1,129,192,0,1,129,192,0,3, + 1,224,0,3,255,224,0,2,0,224,0,6,0,240,0,6, + 0,112,0,6,0,112,0,12,0,120,0,12,0,120,0,30, + 0,120,0,255,195,255,128,25,34,136,28,2,0,0,0,192, + 0,0,1,192,0,0,3,128,0,0,7,0,0,0,6,0, + 0,0,8,0,0,0,0,0,0,0,0,0,0,0,8,0, + 0,0,12,0,0,0,28,0,0,0,28,0,0,0,30,0, + 0,0,62,0,0,0,46,0,0,0,47,0,0,0,103,0, + 0,0,103,0,0,0,71,128,0,0,195,128,0,0,195,128, + 0,1,131,192,0,1,129,192,0,1,129,192,0,3,1,224, + 0,3,255,224,0,2,0,224,0,6,0,240,0,6,0,112, + 0,4,0,112,0,12,0,120,0,12,0,56,0,30,0,124, + 0,255,195,255,128,25,34,136,28,2,0,0,8,0,0,0, + 28,0,0,0,30,0,0,0,51,0,0,0,65,128,0,1, + 128,64,0,0,0,0,0,0,0,0,0,0,8,0,0,0, + 12,0,0,0,28,0,0,0,28,0,0,0,30,0,0,0, + 62,0,0,0,46,0,0,0,47,0,0,0,103,0,0,0, + 103,0,0,0,71,128,0,0,195,128,0,0,195,128,0,0, + 131,192,0,1,129,192,0,1,129,192,0,3,1,224,0,3, + 255,224,0,2,0,224,0,6,0,240,0,6,0,112,0,6, + 0,112,0,12,0,120,0,12,0,120,0,30,0,120,0,255, + 195,255,128,25,33,132,28,2,0,0,112,64,0,0,252,64, + 0,0,159,192,0,1,7,128,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,8,0,0,0,12,0,0,0,28,0, + 0,0,28,0,0,0,30,0,0,0,62,0,0,0,46,0, + 0,0,47,0,0,0,103,0,0,0,103,0,0,0,71,128, + 0,0,195,128,0,0,195,128,0,1,131,192,0,1,129,192, + 0,1,129,192,0,3,1,224,0,3,255,224,0,2,0,224, + 0,6,0,240,0,6,0,112,0,4,0,112,0,12,0,120, + 0,12,0,56,0,30,0,124,0,255,195,255,128,25,33,132, + 28,2,0,0,193,128,0,1,193,192,0,1,193,192,0,0, + 193,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 8,0,0,0,24,0,0,0,28,0,0,0,28,0,0,0, + 60,0,0,0,62,0,0,0,62,0,0,0,110,0,0,0, + 79,0,0,0,71,0,0,0,199,0,0,0,199,128,0,0, + 131,128,0,1,131,128,0,1,129,192,0,1,1,192,0,3, + 1,192,0,3,255,224,0,2,0,224,0,6,0,224,0,6, + 0,112,0,4,0,112,0,12,0,112,0,12,0,120,0,30, + 0,120,0,255,195,255,128,25,35,140,28,2,0,0,28,0, + 0,0,34,0,0,0,65,0,0,0,65,0,0,0,65,0, + 0,0,65,0,0,0,34,0,0,0,28,0,0,0,0,0, + 0,0,8,0,0,0,12,0,0,0,28,0,0,0,28,0, + 0,0,30,0,0,0,62,0,0,0,46,0,0,0,47,0, + 0,0,111,0,0,0,71,0,0,0,71,128,0,0,199,128, + 0,0,131,128,0,1,131,192,0,1,131,192,0,1,1,192, + 0,3,1,224,0,3,255,224,0,2,0,224,0,6,0,240, + 0,6,0,240,0,4,0,112,0,12,0,120,0,12,0,120, + 0,28,0,120,0,255,195,255,128,33,26,130,36,1,0,0, + 7,255,255,128,0,1,224,7,128,0,1,224,3,128,0,3, + 224,1,128,0,2,224,1,128,0,6,224,0,128,0,4,224, + 0,128,0,12,224,32,128,0,8,224,32,0,0,24,224,32, + 0,0,16,224,96,0,0,48,224,96,0,0,48,255,224,0, + 0,96,224,96,0,0,96,224,96,0,0,192,224,32,0,0, + 192,224,32,128,1,255,224,32,128,1,0,224,0,128,3,0, + 224,0,128,2,0,224,1,128,6,0,224,1,128,6,0,224, + 1,128,14,0,224,3,128,30,0,224,15,128,255,199,255,255, + 128,19,34,102,24,3,249,3,252,64,14,6,96,28,3,224, + 24,1,224,56,0,224,120,0,224,112,0,96,112,0,96,240, + 0,96,240,0,32,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,112,0,32,112,0,32, + 120,0,96,56,0,64,56,0,64,24,0,128,12,0,128,6, + 3,0,3,204,0,0,112,0,0,64,0,0,240,0,0,28, + 0,0,28,0,0,28,0,2,28,0,1,240,0,21,34,102, + 25,2,0,3,0,0,3,128,0,1,192,0,0,192,0,0, + 96,0,0,16,0,0,0,0,0,0,0,255,255,248,14,0, + 120,14,0,56,14,0,24,14,0,24,14,0,8,14,0,8, + 14,4,8,14,4,0,14,4,0,14,12,0,14,12,0,15, + 252,0,14,12,0,14,4,0,14,4,0,14,4,8,14,4, + 8,14,0,8,14,0,8,14,0,24,14,0,24,14,0,56, + 14,0,56,14,0,248,255,255,248,21,34,102,25,2,0,0, + 3,0,0,7,128,0,7,0,0,12,0,0,24,0,0,48, + 0,0,0,0,0,0,0,255,255,248,14,0,120,14,0,56, + 14,0,24,14,0,24,14,0,8,14,0,8,14,4,8,14, + 4,0,14,4,0,14,12,0,14,12,0,15,252,0,14,12, + 0,14,4,0,14,4,0,14,4,8,14,4,8,14,0,8, + 14,0,8,14,0,24,14,0,24,14,0,56,14,0,56,14, + 0,248,255,255,248,21,34,102,25,2,0,0,48,0,0,48, + 0,0,120,0,0,204,0,1,134,0,2,1,128,0,0,0, + 0,0,0,255,255,248,14,0,120,14,0,56,14,0,24,14, + 0,24,14,0,8,14,0,8,14,4,8,14,4,0,14,4, + 0,14,12,0,14,12,0,15,252,0,14,12,0,14,4,0, + 14,4,0,14,4,8,14,4,8,14,0,8,14,0,8,14, + 0,24,14,0,24,14,0,56,14,0,56,14,0,248,255,255, + 248,21,33,99,25,2,0,1,131,0,3,135,0,3,135,0, + 1,131,0,0,0,0,0,0,0,0,0,0,255,255,248,14, + 0,120,14,0,56,14,0,24,14,0,24,14,0,8,14,0, + 8,14,4,8,14,4,0,14,4,0,14,12,0,14,12,0, + 15,252,0,14,12,0,14,4,0,14,4,0,14,4,8,14, + 4,8,14,0,8,14,0,8,14,0,24,14,0,24,14,0, + 56,14,0,56,14,0,248,255,255,248,10,34,68,14,2,0, + 192,0,224,0,112,0,56,0,8,0,4,0,0,0,0,0, + 255,192,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,255,192,10,34,68,14,2,0,0,192,1,192,1,128, + 3,0,6,0,4,0,0,0,0,0,255,192,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,255,192,10,34, + 68,14,2,0,4,0,14,0,30,0,59,0,97,128,128,64, + 0,0,0,0,255,192,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,255,192,11,33,66,14,2,0,96,192, + 224,224,224,224,96,192,0,0,0,0,0,0,127,224,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,127,224, + 24,26,78,27,2,0,255,255,0,14,0,192,14,0,112,14, + 0,56,14,0,60,14,0,28,14,0,30,14,0,30,14,0, + 14,14,0,15,14,0,15,14,0,15,255,224,15,14,0,15, + 14,0,15,14,0,15,14,0,15,14,0,14,14,0,30,14, + 0,30,14,0,28,14,0,56,14,0,56,14,0,112,14,0, + 192,255,255,0,25,33,132,28,2,0,0,120,32,0,0,254, + 96,0,0,143,192,0,0,131,128,0,0,0,0,0,0,0, + 0,0,0,0,0,0,254,0,255,128,15,0,28,0,15,128, + 8,0,15,128,8,0,11,192,8,0,11,192,8,0,9,224, + 8,0,8,240,8,0,8,240,8,0,8,120,8,0,8,60, + 8,0,8,60,8,0,8,30,8,0,8,30,8,0,8,15, + 8,0,8,7,136,0,8,7,136,0,8,3,200,0,8,1, + 232,0,8,1,232,0,8,0,248,0,8,0,120,0,8,0, + 120,0,8,0,56,0,28,0,24,0,255,128,24,0,21,34, + 102,26,3,0,3,0,0,7,0,0,3,128,0,1,192,0, + 0,64,0,0,32,0,0,0,0,0,32,0,3,220,0,6, + 3,0,12,1,128,28,1,192,56,0,224,56,0,224,120,0, + 240,112,0,112,112,0,112,240,0,120,240,0,120,240,0,120, + 240,0,120,240,0,120,240,0,120,240,0,120,240,0,120,112, + 0,112,112,0,112,120,0,240,56,0,224,56,0,224,28,1, + 192,12,1,128,6,3,0,3,254,0,21,34,102,26,3,0, + 0,6,0,0,7,0,0,14,0,0,28,0,0,16,0,0, + 32,0,0,0,0,0,32,0,3,220,0,6,3,0,12,1, + 128,28,1,192,56,0,224,56,0,224,120,0,240,112,0,112, + 112,0,112,240,0,120,240,0,120,240,0,120,240,0,120,240, + 0,120,240,0,120,240,0,120,240,0,120,112,0,112,112,0, + 112,120,0,240,56,0,224,56,0,224,28,1,192,12,1,128, + 6,3,0,3,254,0,21,34,102,26,3,0,0,32,0,0, + 112,0,0,112,0,0,216,0,1,4,0,6,3,0,0,0, + 0,0,32,0,3,220,0,6,3,0,12,1,128,28,1,192, + 56,0,224,56,0,224,120,0,240,112,0,112,112,0,112,240, + 0,120,240,0,120,240,0,120,240,0,120,240,0,120,240,0, + 120,240,0,120,240,0,120,112,0,112,112,0,112,120,0,240, + 56,0,224,56,0,224,28,1,192,12,1,128,6,3,0,3, + 254,0,21,33,99,26,3,0,3,225,0,3,255,0,4,62, + 0,0,0,0,0,0,0,0,0,0,0,32,0,3,220,0, + 6,3,0,12,1,128,28,1,192,56,0,224,56,0,224,120, + 0,240,112,0,112,112,0,112,240,0,120,240,0,120,240,0, + 120,240,0,120,240,0,120,240,0,120,240,0,120,240,0,120, + 112,0,112,112,0,112,120,0,240,56,0,224,56,0,224,28, + 1,192,12,1,128,6,3,0,3,254,0,21,33,99,26,3, + 0,3,6,0,7,7,0,7,7,0,3,6,0,0,0,0, + 0,0,0,0,32,0,3,220,0,6,3,0,12,1,128,28, + 1,192,56,0,224,56,0,224,120,0,240,112,0,112,112,0, + 112,240,0,120,240,0,120,240,0,120,240,0,120,240,0,120, + 240,0,120,240,0,120,240,0,120,112,0,112,112,0,112,120, + 0,240,56,0,224,56,0,224,28,1,192,12,1,128,6,3, + 0,3,254,0,22,23,69,34,6,254,128,0,4,192,0,12, + 96,0,24,48,0,48,24,0,96,12,0,192,6,1,128,3, + 3,0,1,134,0,0,204,0,0,120,0,0,48,0,0,120, + 0,0,204,0,1,134,0,3,3,0,6,1,128,12,0,192, + 24,0,96,48,0,48,96,0,24,192,0,12,128,0,0,21, + 27,81,26,3,0,0,32,0,3,222,24,6,3,48,12,1, + 224,28,1,192,56,0,224,56,1,224,120,3,240,112,2,112, + 112,6,112,240,12,120,240,24,120,240,16,120,240,48,120,240, + 96,120,240,192,120,240,192,120,241,128,120,115,0,112,114,0, + 112,126,0,240,60,0,224,56,0,224,28,1,192,60,1,128, + 102,3,0,195,222,0,25,34,136,29,2,0,0,192,0,0, + 0,224,0,0,0,224,0,0,0,48,0,0,0,16,0,0, + 0,8,0,0,0,0,0,0,0,0,0,0,255,192,255,128, + 14,0,14,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 6,0,8,0,7,0,8,0,3,0,16,0,1,192,32,0, + 0,127,192,0,25,34,136,29,2,0,0,0,192,0,0,1, + 192,0,0,3,128,0,0,7,0,0,0,4,0,0,0,8, + 0,0,0,0,0,0,0,0,0,0,255,192,255,128,14,0, + 14,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,6,0, + 8,0,7,0,8,0,3,0,16,0,1,192,32,0,0,127, + 192,0,25,34,136,29,2,0,0,8,0,0,0,28,0,0, + 0,30,0,0,0,55,0,0,0,65,128,0,1,128,96,0, + 0,0,0,0,0,0,0,0,255,192,255,128,14,0,14,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,6,0,8,0, + 7,0,8,0,3,128,16,0,1,192,96,0,0,127,192,0, + 25,33,132,29,2,0,0,192,192,0,0,225,192,0,0,225, + 192,0,0,192,192,0,0,0,0,0,0,0,0,0,0,0, + 0,0,255,192,255,128,14,0,14,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,6,0,8,0,7,0,8,0,3,0, + 16,0,1,192,32,0,0,127,192,0,24,34,102,27,2,0, + 0,0,192,0,1,192,0,3,128,0,7,0,0,4,0,0, + 8,0,0,0,0,0,0,0,255,225,255,31,0,56,15,0, + 48,7,128,48,7,128,32,3,192,96,3,192,64,1,224,128, + 0,224,128,0,241,0,0,113,0,0,122,0,0,58,0,0, + 60,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,1,255,224,21,26,78,25,2,0,255,224,0,14, + 0,0,14,0,0,14,0,0,14,0,0,15,255,0,14,1, + 192,14,0,224,14,0,240,14,0,120,14,0,120,14,0,120, + 14,0,120,14,0,120,14,0,240,14,0,224,14,1,192,15, + 255,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,14,0,0,255,224,0,16,26,52,19,1,0, + 1,240,3,28,6,14,14,14,28,14,28,14,28,12,28,28, + 28,48,29,192,28,48,28,24,28,12,28,14,28,6,28,7, + 28,7,28,7,28,7,28,7,28,135,29,199,29,199,29,142, + 29,140,252,120,16,25,50,19,2,1,112,0,112,0,56,0, + 28,0,12,0,2,0,0,0,0,0,15,128,48,224,32,112, + 96,112,120,112,120,112,0,112,1,240,30,112,112,112,96,112, + 224,112,224,113,224,241,225,113,113,126,62,60,16,25,50,19, + 2,1,0,112,0,240,0,224,1,128,3,0,2,0,0,0, + 0,0,15,128,48,224,96,112,96,112,120,112,120,112,0,112, + 1,240,30,112,112,112,96,112,224,112,224,113,224,241,225,113, + 113,126,62,60,16,25,50,19,2,0,6,0,7,0,7,0, + 13,128,24,192,48,96,0,0,0,0,15,128,48,224,96,112, + 96,112,120,112,120,112,0,112,1,240,30,112,112,112,96,112, + 224,112,224,113,224,241,225,113,113,126,62,60,16,24,48,19, + 2,0,30,48,63,224,35,192,0,0,0,0,0,0,0,0, + 15,128,48,224,96,112,96,112,120,112,120,112,0,112,1,240, + 30,112,112,112,96,112,224,112,224,113,224,241,225,113,113,126, + 62,60,16,24,48,19,2,0,48,96,112,224,112,224,48,96, + 0,0,0,0,0,0,15,0,48,192,96,96,96,96,112,96, + 112,96,0,96,1,224,30,96,112,96,96,96,224,96,224,97, + 224,225,225,99,113,126,62,60,16,25,50,19,2,0,7,0, + 24,192,16,64,16,64,24,192,7,0,0,0,0,0,15,128, + 48,224,96,112,96,112,120,112,120,112,0,112,1,240,30,112, + 112,112,96,112,224,112,224,113,224,241,225,113,113,126,62,60, + 22,17,51,26,2,0,15,135,192,48,236,112,96,120,48,112, + 120,56,120,112,24,56,112,28,0,112,28,7,255,252,56,112, + 0,112,112,0,224,112,0,224,112,4,224,248,8,224,184,8, + 225,56,16,113,28,48,62,7,192,12,24,48,16,2,249,15, + 128,24,96,48,48,112,48,96,112,224,112,224,112,224,0,224, + 0,224,0,224,0,224,0,96,16,112,16,48,32,24,96,15, + 128,2,0,6,0,1,128,0,192,0,192,16,192,15,128,13, + 25,50,17,2,1,48,0,56,0,28,0,12,0,6,0,3, + 0,0,0,0,0,15,128,24,224,48,96,112,112,96,48,224, + 56,224,56,255,248,224,0,224,0,224,0,224,8,112,16,112, + 16,48,16,24,96,7,128,13,25,50,17,2,1,0,112,0, + 112,0,224,0,192,1,128,3,0,0,0,0,0,15,128,24, + 224,48,96,112,112,96,48,224,56,224,56,255,248,224,0,224, + 0,224,0,224,8,112,16,112,16,48,16,24,96,7,128,13, + 25,50,17,2,0,3,0,3,0,7,128,5,128,8,64,16, + 32,0,0,0,0,15,128,24,224,48,96,112,112,96,48,224, + 56,224,56,255,248,224,0,224,0,224,0,224,8,112,16,112, + 16,48,32,24,96,7,128,13,24,48,17,2,0,24,96,56, + 112,56,112,24,96,0,0,0,0,0,0,15,128,24,224,48, + 96,112,48,96,48,224,56,224,56,255,248,224,0,224,0,224, + 0,224,8,112,16,112,16,48,32,24,96,7,128,9,25,50, + 11,0,0,192,0,224,0,112,0,56,0,8,0,4,0,0, + 0,0,0,62,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,63,128,8,25,25,10,2,0,3,7,7,12,24, + 48,0,0,248,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,254,9,25,50,11,1,0,24,0,28,0,60,0, + 54,0,99,0,128,128,0,0,0,0,124,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,127,0,9,24,48,11, + 1,0,97,128,227,128,227,128,97,128,0,0,0,0,0,0, + 126,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 127,128,14,26,52,18,2,0,28,16,14,48,15,192,7,128, + 7,128,13,192,48,224,0,224,0,112,7,240,24,120,48,56, + 112,60,112,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,112,24,112,56,48,48,24,96,7,128,17,24,72,21, + 2,0,7,4,0,15,204,0,9,248,0,8,112,0,0,0, + 0,0,0,0,0,0,0,248,248,0,57,28,0,58,14,0, + 60,14,0,60,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,56,14,0,254,63,128,14,25,50,18,2,1, + 56,0,56,0,28,0,12,0,6,0,3,0,0,0,0,0, + 7,128,24,96,48,48,112,56,112,24,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,112,24,112,56,48,48,24,96, + 7,128,14,25,50,18,2,1,0,48,0,112,0,224,0,192, + 1,128,1,0,0,0,0,0,7,128,24,96,48,48,112,56, + 112,24,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 112,24,112,56,48,48,24,96,7,128,14,25,50,18,2,0, + 3,0,3,0,7,128,4,128,8,64,16,32,0,0,0,0, + 7,128,24,96,48,48,112,56,112,24,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,112,24,112,56,48,48,24,96, + 7,128,14,24,48,18,2,0,30,16,31,240,33,224,0,0, + 0,0,0,0,0,0,7,128,24,96,48,48,112,56,112,24, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,112,24, + 112,56,48,48,24,96,7,128,14,24,48,18,2,0,24,48, + 56,112,56,112,24,48,0,0,0,0,0,0,7,128,24,96, + 48,48,112,56,112,24,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,112,24,112,56,48,48,24,96,7,128,30,23, + 92,34,2,254,0,3,0,0,0,7,128,0,0,7,128,0, + 0,7,128,0,0,3,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0, + 0,7,128,0,0,7,128,0,0,7,128,0,0,3,0,0, + 14,17,34,18,2,0,7,132,24,104,48,56,112,56,112,56, + 224,92,224,156,225,156,227,28,226,28,228,28,232,28,120,24, + 112,56,48,48,88,96,135,192,17,25,75,20,1,1,28,0, + 0,28,0,0,14,0,0,3,0,0,1,0,0,0,128,0, + 0,0,0,0,0,0,248,62,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,30,0,56,30,0, + 56,46,0,28,78,0,15,143,128,17,25,75,20,1,1,0, + 28,0,0,60,0,0,48,0,0,96,0,0,192,0,0,128, + 0,0,0,0,0,0,0,248,62,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,56,14,0,56,30,0,56,30, + 0,56,46,0,28,78,0,15,143,128,17,25,75,20,1,0, + 0,128,0,1,192,0,1,192,0,3,96,0,4,48,0,8, + 8,0,0,0,0,0,0,0,248,62,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,30,0,56, + 30,0,56,46,0,28,78,0,15,143,128,17,24,72,20,1, + 0,12,48,0,28,56,0,28,56,0,12,48,0,0,0,0, + 0,0,0,0,0,0,248,62,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,30,0,56,30,0, + 56,46,0,28,78,0,15,143,128,18,33,99,19,1,249,0, + 12,0,0,28,0,0,24,0,0,48,0,0,96,0,0,64, + 0,0,0,0,0,0,0,255,31,192,28,6,0,28,4,0, + 12,4,0,14,4,0,14,4,0,6,8,0,7,8,0,7, + 8,0,3,16,0,3,144,0,3,144,0,1,224,0,1,224, + 0,1,224,0,0,192,0,0,192,0,0,64,0,0,128,0, + 0,128,0,112,128,0,113,128,0,113,0,0,114,0,0,60, + 0,0,16,34,68,19,1,247,12,0,60,0,92,0,28,0, + 28,0,28,0,28,0,28,0,28,60,28,126,28,143,29,7, + 30,7,30,7,30,7,28,6,28,14,28,14,28,12,28,24, + 28,16,28,32,28,64,29,128,31,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,224,0,17,32,96,19, + 1,248,6,12,0,7,28,0,7,28,0,6,12,0,0,0, + 0,0,0,0,0,0,0,255,31,128,28,6,0,28,4,0, + 14,4,0,14,4,0,14,8,0,7,8,0,7,8,0,7, + 16,0,3,144,0,3,144,0,3,160,0,1,224,0,1,224, + 0,1,224,0,0,192,0,0,192,0,0,64,0,0,128,0, + 0,128,0,112,128,0,121,0,0,121,0,0,114,0,0,60, + 0,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--36-360-72-72-P-189-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 25 + Calculated Max Values w=30 h=34 x= 4 y=10 dx=34 dy= 0 ascent=27 len=124 + Font Bounding box w=94 h=46 x=-29 y=-11 + Calculated Min Values x= 0 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent= 0 + X Font ascent =25 descent= 0 + Max Font ascent =27 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr26n[932] U8G_SECTION(".progmem.u8g_font_osr26n") = { + 0,94,46,227,245,25,0,0,0,0,42,57,0,27,249,25, + 0,13,15,30,18,3,10,7,0,7,0,7,0,195,24,226, + 56,114,112,10,128,7,0,15,128,122,240,242,120,226,56,7, + 0,7,0,7,0,30,31,124,34,2,250,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,255,255,255,252,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,5,11,11,10,2,250,112,248,248, + 120,8,8,8,16,16,32,64,9,2,4,13,2,8,255,128, + 255,128,4,5,5,10,3,0,96,240,240,240,96,12,34,68, + 16,2,249,0,16,0,48,0,48,0,32,0,96,0,96,0, + 64,0,192,0,192,0,128,0,128,1,128,1,0,1,0,3, + 0,2,0,2,0,6,0,4,0,4,0,12,0,8,0,8, + 0,24,0,24,0,16,0,48,0,48,0,32,0,96,0,96, + 0,64,0,192,0,192,0,17,25,75,21,2,0,3,224,0, + 14,56,0,28,28,0,24,12,0,56,14,0,112,7,0,112, + 7,0,112,7,0,240,7,128,240,7,128,240,7,128,240,7, + 128,240,7,128,240,7,128,240,7,128,240,7,128,240,7,128, + 112,7,0,112,7,0,112,7,0,56,14,0,56,14,0,24, + 12,0,12,24,0,7,112,0,12,25,50,21,4,0,1,0, + 3,0,3,0,15,0,255,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,255,240, + 15,25,50,21,3,0,15,192,48,112,96,56,64,60,192,30, + 192,30,224,30,248,30,248,30,120,28,0,60,0,56,0,112, + 0,224,1,192,3,0,14,0,28,4,56,4,48,4,96,4, + 96,12,255,252,255,252,255,252,15,25,50,21,3,0,15,192, + 48,112,32,56,96,28,112,28,120,28,120,28,48,28,0,28, + 0,56,0,112,31,192,24,112,0,56,0,60,0,30,0,30, + 112,30,248,30,248,30,248,30,192,60,192,56,96,112,63,224, + 17,25,75,21,2,0,0,16,0,0,48,0,0,112,0,0, + 112,0,0,240,0,1,240,0,1,112,0,3,112,0,6,112, + 0,6,112,0,12,112,0,8,112,0,24,112,0,48,112,0, + 32,112,0,96,112,0,192,112,0,255,255,128,0,112,0,0, + 112,0,0,112,0,0,112,0,0,112,0,0,112,0,7,255, + 128,15,26,52,21,3,0,32,0,48,56,63,240,63,192,47, + 0,32,0,32,0,32,0,32,0,39,192,56,112,48,56,32, + 60,32,28,0,30,0,30,0,30,0,30,120,30,248,30,248, + 28,240,60,224,60,96,56,112,112,63,192,15,25,50,21,3, + 0,3,224,6,24,12,12,24,28,56,60,48,60,112,16,112, + 0,112,0,243,224,246,56,252,28,248,28,248,14,240,14,240, + 14,240,14,240,14,112,14,112,14,112,12,56,28,56,24,24, + 56,14,224,14,25,50,21,3,0,255,252,255,252,255,252,192, + 12,128,8,128,8,128,8,128,16,0,16,0,32,0,96,0, + 64,0,128,1,128,1,128,3,0,3,0,7,0,7,0,15, + 128,15,128,15,128,15,128,15,128,7,128,17,25,75,21,2, + 0,7,240,0,28,28,0,48,14,0,112,6,0,224,3,0, + 224,3,0,224,3,0,240,3,0,240,6,0,124,6,0,127, + 140,0,31,240,0,7,252,0,25,254,0,48,63,0,96,15, + 128,224,7,128,224,3,128,224,3,128,224,3,128,224,3,0, + 96,7,0,112,6,0,56,12,0,15,248,0,15,25,50,21, + 3,0,7,192,24,96,48,48,112,56,112,28,224,28,224,28, + 224,30,224,30,224,30,224,30,112,62,112,62,56,94,15,158, + 0,30,0,28,0,28,56,28,120,28,120,56,112,56,96,112, + 48,224,31,192}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--36-360-72-72-P-189-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 26, '1' Height: 25 + Calculated Max Values w=36 h=34 x= 4 y=20 dx=38 dy= 0 ascent=28 len=130 + Font Bounding box w=94 h=46 x=-29 y=-11 + Calculated Min Values x=-1 y=-8 dx= 0 dy= 0 + Pure Font ascent =26 descent=-8 + X Font ascent =27 descent=-8 + Max Font ascent =28 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr26r[6049] U8G_SECTION(".progmem.u8g_font_osr26r") = { + 0,94,46,227,245,26,7,96,17,82,32,127,248,28,248,27, + 248,0,0,0,10,0,0,4,25,25,10,3,0,96,240,240, + 240,240,240,240,240,96,96,96,96,96,96,96,96,96,96,32, + 64,96,240,240,240,96,8,7,7,14,3,20,195,195,195,195, + 195,195,66,19,25,75,25,3,0,1,130,0,1,130,0,1, + 2,0,1,6,0,3,6,0,3,6,0,3,6,0,255,255, + 224,2,4,0,2,4,0,2,12,0,6,12,0,6,12,0, + 6,12,0,6,8,0,4,8,0,4,8,0,255,255,224,12, + 24,0,12,24,0,12,16,0,8,16,0,8,48,0,8,48, + 0,24,48,0,16,31,62,21,2,253,2,64,2,64,2,64, + 7,224,26,92,50,70,34,66,98,67,98,71,98,79,98,79, + 114,78,58,64,63,64,31,192,7,240,3,252,2,126,2,78, + 34,71,242,67,242,67,226,67,226,67,194,66,66,70,34,76, + 30,112,3,192,2,64,2,64,24,25,75,30,3,0,30,0, + 48,33,0,32,97,128,96,192,192,64,192,192,192,192,192,128, + 192,193,0,192,195,0,192,194,0,64,134,0,97,132,0,34, + 8,0,28,24,112,0,16,132,0,49,134,0,33,2,0,67, + 3,0,195,3,0,131,3,1,131,3,1,3,3,3,3,3, + 6,1,6,4,1,134,12,0,252,24,25,75,28,2,0,1, + 240,0,3,8,0,6,12,0,12,4,0,12,4,0,12,12, + 0,14,8,0,14,24,0,7,48,0,7,192,0,3,193,255, + 7,192,56,13,224,48,24,240,48,48,112,32,112,120,96,112, + 60,64,224,28,128,224,15,128,224,15,0,224,7,0,240,3, + 129,112,15,194,120,25,228,31,224,252,2,7,7,8,3,20, + 192,192,192,192,192,192,64,8,33,33,14,4,250,3,6,12, + 12,24,16,48,48,96,96,96,192,192,192,192,192,192,192,192, + 192,192,64,96,96,96,48,48,24,24,12,6,6,3,8,33, + 33,13,2,250,192,96,96,48,24,24,12,12,6,6,6,2, + 3,3,3,3,3,3,3,3,2,6,6,6,4,12,12,24, + 24,48,96,192,128,13,15,30,18,3,10,7,0,7,0,7, + 0,195,24,226,56,114,112,10,128,7,0,15,128,122,240,242, + 120,226,56,7,0,7,0,7,0,30,31,124,34,2,250,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,255,255,255,252,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,5,11,11,10,2, + 250,112,248,248,120,8,8,8,16,16,32,64,9,2,4,13, + 2,8,255,128,255,128,4,5,5,10,3,0,96,240,240,240, + 96,12,34,68,16,2,249,0,16,0,48,0,48,0,32,0, + 96,0,96,0,64,0,192,0,192,0,128,0,128,1,128,1, + 0,1,0,3,0,2,0,2,0,6,0,4,0,4,0,12, + 0,8,0,8,0,24,0,24,0,16,0,48,0,48,0,32, + 0,96,0,96,0,64,0,192,0,192,0,17,25,75,21,2, + 0,3,224,0,14,56,0,28,28,0,24,12,0,56,14,0, + 112,7,0,112,7,0,112,7,0,240,7,128,240,7,128,240, + 7,128,240,7,128,240,7,128,240,7,128,240,7,128,240,7, + 128,240,7,128,112,7,0,112,7,0,112,7,0,56,14,0, + 56,14,0,24,12,0,12,24,0,7,112,0,12,25,50,21, + 4,0,1,0,3,0,3,0,15,0,255,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,255,240,15,25,50,21,3,0,15,192,48,112,96,56, + 64,60,192,30,192,30,224,30,248,30,248,30,120,28,0,60, + 0,56,0,112,0,224,1,192,3,0,14,0,28,4,56,4, + 48,4,96,4,96,12,255,252,255,252,255,252,15,25,50,21, + 3,0,15,192,48,112,32,56,96,28,112,28,120,28,120,28, + 48,28,0,28,0,56,0,112,31,192,24,112,0,56,0,60, + 0,30,0,30,112,30,248,30,248,30,248,30,192,60,192,56, + 96,112,63,224,17,25,75,21,2,0,0,16,0,0,48,0, + 0,112,0,0,112,0,0,240,0,1,240,0,1,112,0,3, + 112,0,6,112,0,6,112,0,12,112,0,8,112,0,24,112, + 0,48,112,0,32,112,0,96,112,0,192,112,0,255,255,128, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,7,255,128,15,26,52,21,3,0,32,0,48,56,63, + 240,63,192,47,0,32,0,32,0,32,0,32,0,39,192,56, + 112,48,56,32,60,32,28,0,30,0,30,0,30,0,30,120, + 30,248,30,248,28,240,60,224,60,96,56,112,112,63,192,15, + 25,50,21,3,0,3,224,6,24,12,12,24,28,56,60,48, + 60,112,16,112,0,112,0,243,224,246,56,252,28,248,28,248, + 14,240,14,240,14,240,14,240,14,112,14,112,14,112,12,56, + 28,56,24,24,56,14,224,14,25,50,21,3,0,255,252,255, + 252,255,252,192,12,128,8,128,8,128,8,128,16,0,16,0, + 32,0,96,0,64,0,128,1,128,1,128,3,0,3,0,7, + 0,7,0,15,128,15,128,15,128,15,128,15,128,7,128,17, + 25,75,21,2,0,7,240,0,28,28,0,48,14,0,112,6, + 0,224,3,0,224,3,0,224,3,0,240,3,0,240,6,0, + 124,6,0,127,140,0,31,240,0,7,252,0,25,254,0,48, + 63,0,96,15,128,224,7,128,224,3,128,224,3,128,224,3, + 128,224,3,0,96,7,0,112,6,0,56,12,0,15,248,0, + 15,25,50,21,3,0,7,192,24,96,48,48,112,56,112,28, + 224,28,224,28,224,30,224,30,224,30,224,30,112,62,112,62, + 56,94,15,158,0,30,0,28,0,28,56,28,120,28,120,56, + 112,56,96,112,48,224,31,192,4,17,17,10,3,0,96,240, + 240,240,96,0,0,0,0,0,0,0,96,240,240,240,96,5, + 23,23,11,3,250,112,248,248,248,112,0,0,0,0,0,0, + 0,112,240,248,120,8,8,8,16,16,32,64,28,29,116,34, + 3,251,0,0,0,112,0,0,1,192,0,0,7,0,0,0, + 28,0,0,0,112,0,0,1,224,0,0,3,128,0,0,14, + 0,0,0,56,0,0,0,224,0,0,3,128,0,0,15,0, + 0,0,28,0,0,0,112,0,0,0,192,0,0,0,112,0, + 0,0,28,0,0,0,7,0,0,0,1,192,0,0,0,240, + 0,0,0,56,0,0,0,14,0,0,0,3,128,0,0,0, + 224,0,0,0,56,0,0,0,14,0,0,0,7,0,0,0, + 1,192,0,0,0,112,30,8,32,34,2,6,255,255,255,252, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,255,255,255,252,28,29,116,34, + 3,251,224,0,0,0,56,0,0,0,14,0,0,0,3,128, + 0,0,0,224,0,0,0,112,0,0,0,28,0,0,0,7, + 0,0,0,1,192,0,0,0,112,0,0,0,28,0,0,0, + 15,0,0,0,3,128,0,0,0,224,0,0,0,48,0,0, + 0,224,0,0,3,128,0,0,14,0,0,0,56,0,0,0, + 240,0,0,1,192,0,0,7,0,0,0,28,0,0,0,112, + 0,0,1,192,0,0,7,0,0,0,30,0,0,0,56,0, + 0,0,224,0,0,0,13,25,50,17,2,0,15,128,48,224, + 64,112,192,56,192,56,248,56,248,56,112,56,0,112,0,224, + 1,192,3,128,3,0,4,0,12,0,8,64,8,64,8,128, + 7,0,0,0,3,0,7,128,7,128,7,128,3,0,26,27, + 108,30,2,0,0,4,0,0,0,251,224,0,3,0,56,0, + 6,0,12,0,12,0,6,0,24,0,3,0,48,15,1,0, + 48,49,241,128,96,96,241,128,96,192,224,128,193,192,224,192, + 193,128,224,192,193,128,192,192,195,128,192,192,195,1,192,192, + 195,1,192,192,195,1,129,128,195,3,129,128,67,7,129,0, + 99,7,130,0,97,137,132,0,32,240,248,0,48,0,0,0, + 24,0,0,0,12,0,16,0,7,0,48,0,1,255,192,0, + 25,26,104,28,2,0,0,8,0,0,0,12,0,0,0,28, + 0,0,0,28,0,0,0,30,0,0,0,62,0,0,0,46, + 0,0,0,47,0,0,0,103,0,0,0,103,0,0,0,71, + 128,0,0,195,128,0,0,195,128,0,0,131,192,0,1,129, + 192,0,1,129,192,0,3,1,224,0,3,255,224,0,2,0, + 224,0,6,0,240,0,6,0,112,0,6,0,112,0,12,0, + 120,0,12,0,120,0,30,0,120,0,255,195,255,128,20,26, + 78,25,3,0,255,252,0,28,3,0,28,1,192,28,1,192, + 28,0,224,28,0,224,28,0,224,28,0,224,28,0,224,28, + 1,192,28,1,128,28,3,0,31,252,0,28,7,0,28,1, + 192,28,1,224,28,0,224,28,0,240,28,0,240,28,0,240, + 28,0,240,28,0,240,28,1,224,28,1,192,28,3,128,255, + 254,0,19,26,78,24,3,1,3,252,32,14,6,96,28,3, + 224,24,1,224,56,0,224,120,0,224,112,0,96,112,0,96, + 240,0,96,240,0,32,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,112,0,32,112,0, + 32,120,0,96,56,0,64,56,0,64,28,0,128,12,0,128, + 6,3,0,3,222,0,24,26,78,29,3,0,255,255,0,28, + 1,192,28,0,112,28,0,56,28,0,56,28,0,28,28,0, + 30,28,0,30,28,0,14,28,0,15,28,0,15,28,0,15, + 28,0,15,28,0,15,28,0,15,28,0,15,28,0,15,28, + 0,14,28,0,30,28,0,30,28,0,28,28,0,56,28,0, + 56,28,0,112,28,1,192,255,255,0,21,26,78,25,2,0, + 255,255,248,14,0,120,14,0,56,14,0,24,14,0,24,14, + 0,8,14,0,8,14,4,8,14,4,0,14,4,0,14,12, + 0,14,12,0,15,252,0,14,12,0,14,4,0,14,4,0, + 14,4,8,14,4,8,14,0,8,14,0,8,14,0,24,14, + 0,24,14,0,56,14,0,56,14,0,248,255,255,248,20,26, + 78,24,2,0,255,255,240,14,0,240,14,0,112,14,0,48, + 14,0,48,14,0,16,14,0,16,14,4,16,14,4,0,14, + 4,0,14,12,0,14,12,0,15,252,0,14,12,0,14,12, + 0,14,4,0,14,4,0,14,4,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,255, + 224,0,22,27,81,26,3,0,0,32,0,3,220,32,6,7, + 32,12,3,224,24,1,224,56,0,224,56,0,96,112,0,96, + 112,0,96,112,0,32,240,0,32,240,0,0,240,0,0,240, + 0,0,240,15,252,240,0,224,240,0,224,240,0,224,240,0, + 224,112,0,224,112,0,224,56,0,224,56,1,224,24,1,32, + 12,3,32,6,6,32,3,252,32,24,26,78,28,2,0,255, + 195,255,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,15,255,248,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,255,195,255,10,26,52, + 14,2,0,255,192,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,255,192,16,26,52,19,2,0,3,255,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,112,56,248,56,248,56,240,56,192,48,192,112,96,96,63, + 192,24,26,78,28,2,0,255,199,254,14,1,240,14,0,224, + 14,0,192,14,1,128,14,3,0,14,6,0,14,12,0,14, + 24,0,14,24,0,14,56,0,14,124,0,14,188,0,15,62, + 0,15,30,0,14,31,0,14,15,0,14,15,128,14,7,128, + 14,7,192,14,3,192,14,1,224,14,1,240,14,0,240,14, + 0,248,255,199,255,20,26,78,24,2,0,255,224,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,16,14,0, + 16,14,0,32,14,0,48,14,0,48,14,0,48,14,0,112, + 14,0,240,14,3,240,255,255,240,26,26,104,30,2,0,255, + 0,31,192,15,0,30,0,15,128,30,0,15,128,46,0,11, + 128,46,0,11,128,46,0,11,192,110,0,9,192,78,0,9, + 192,78,0,9,224,78,0,8,224,142,0,8,224,142,0,8, + 224,142,0,8,241,142,0,8,113,14,0,8,113,14,0,8, + 121,14,0,8,59,14,0,8,58,14,0,8,58,14,0,8, + 30,14,0,8,28,14,0,8,28,14,0,8,12,14,0,28, + 12,14,0,255,136,255,192,25,26,104,28,2,0,254,0,255, + 128,15,0,28,0,15,128,8,0,15,128,8,0,11,192,8, + 0,11,192,8,0,9,224,8,0,8,240,8,0,8,240,8, + 0,8,120,8,0,8,60,8,0,8,60,8,0,8,30,8, + 0,8,30,8,0,8,15,8,0,8,7,136,0,8,7,136, + 0,8,3,200,0,8,1,232,0,8,1,232,0,8,0,248, + 0,8,0,120,0,8,0,120,0,8,0,56,0,28,0,24, + 0,255,128,24,0,21,27,81,26,3,0,0,32,0,3,220, + 0,6,3,0,12,1,128,28,1,192,56,0,224,56,0,224, + 120,0,240,112,0,112,112,0,112,240,0,120,240,0,120,240, + 0,120,240,0,120,240,0,120,240,0,120,240,0,120,240,0, + 120,112,0,112,112,0,112,120,0,240,56,0,224,56,0,224, + 28,1,192,12,1,128,6,3,0,3,254,0,21,26,78,25, + 2,0,255,255,0,14,1,192,14,0,224,14,0,240,14,0, + 120,14,0,120,14,0,120,14,0,120,14,0,120,14,0,112, + 14,0,240,14,0,224,14,1,192,15,254,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,255,224,0, + 21,33,99,26,3,250,0,32,0,3,220,0,6,3,0,12, + 1,128,28,1,192,56,0,224,56,0,224,120,0,240,112,0, + 112,112,0,112,240,0,120,240,0,120,240,0,120,240,0,120, + 240,0,120,240,0,120,240,0,120,240,0,120,112,0,112,112, + 0,112,120,0,240,56,112,224,57,152,224,29,13,192,13,13, + 128,7,15,8,3,158,8,0,110,8,0,14,8,0,14,24, + 0,7,176,0,7,240,0,3,192,22,26,78,25,2,0,255, + 255,0,14,3,192,14,1,224,14,0,240,14,0,240,14,0, + 240,14,0,240,14,0,240,14,1,224,14,1,192,14,7,128, + 15,252,0,14,6,0,14,7,0,14,3,128,14,3,128,14, + 3,128,14,3,192,14,3,192,14,3,192,14,3,196,14,1, + 196,14,1,196,14,1,236,14,1,248,255,224,240,17,26,78, + 22,3,1,31,227,0,48,51,0,96,31,0,192,15,0,192, + 7,0,192,3,0,192,3,0,224,3,0,240,1,0,120,0, + 0,127,0,0,63,192,0,31,248,0,7,252,0,1,254,0, + 128,63,0,128,15,128,128,3,128,192,3,128,192,1,128,192, + 1,128,224,1,128,240,1,0,248,3,0,140,6,0,135,252, + 0,21,26,78,26,3,0,255,255,248,240,112,120,224,112,56, + 192,112,24,192,112,24,192,112,24,128,112,8,128,112,8,128, + 112,8,128,112,8,0,112,0,0,112,0,0,112,0,0,112, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,7,255,128,25,26,104,29,2,0,255,192,255,128,14, + 0,14,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,6, + 0,8,0,7,0,8,0,3,0,16,0,1,192,32,0,0, + 127,192,0,25,26,104,28,2,0,255,241,255,128,15,0,60, + 0,15,0,24,0,7,128,24,0,7,128,16,0,3,128,48, + 0,3,192,48,0,3,192,48,0,1,192,32,0,1,224,96, + 0,1,224,96,0,0,224,64,0,0,240,192,0,0,240,192, + 0,0,112,128,0,0,113,128,0,0,121,128,0,0,57,0, + 0,0,59,0,0,0,63,0,0,0,30,0,0,0,30,0, + 0,0,14,0,0,0,14,0,0,0,12,0,0,0,4,0, + 0,36,26,130,38,1,0,255,231,255,63,240,15,0,248,7, + 128,15,0,120,3,0,7,0,120,3,0,7,128,120,6,0, + 7,128,248,6,0,3,128,252,6,0,3,128,252,4,0,3, + 192,156,12,0,1,193,156,12,0,1,193,158,12,0,1,225, + 14,24,0,1,227,14,24,0,0,227,14,24,0,0,227,15, + 16,0,0,242,7,48,0,0,118,7,48,0,0,118,7,32, + 0,0,116,3,224,0,0,124,3,224,0,0,60,3,192,0, + 0,60,1,192,0,0,56,1,192,0,0,24,1,192,0,0, + 24,1,128,0,0,16,0,128,0,24,26,78,27,2,0,255, + 227,255,15,128,112,7,128,96,7,192,96,3,192,192,1,224, + 128,1,225,128,0,227,0,0,242,0,0,118,0,0,124,0, + 0,56,0,0,60,0,0,60,0,0,62,0,0,79,0,0, + 207,0,0,135,128,1,135,128,1,3,192,3,3,192,6,1, + 224,6,0,224,14,0,240,30,0,240,255,199,255,24,26,78, + 27,2,0,255,225,255,31,0,56,15,0,48,7,128,48,7, + 128,32,3,192,96,3,192,64,1,224,128,0,224,128,0,241, + 0,0,113,0,0,122,0,0,58,0,0,60,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,1,255, + 224,19,26,78,23,2,0,63,255,224,60,3,192,56,3,192, + 112,7,128,96,15,0,96,15,0,64,30,0,64,30,0,64, + 60,0,0,120,0,0,120,0,0,240,0,0,224,0,1,224, + 0,3,192,0,3,192,0,7,128,32,7,0,32,15,0,32, + 30,0,96,30,0,96,60,0,224,56,0,224,120,1,224,240, + 3,192,255,255,192,7,33,33,14,4,249,254,240,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,240,254,12,34,68,16, + 2,249,128,0,192,0,64,0,64,0,96,0,32,0,32,0, + 48,0,16,0,16,0,24,0,8,0,8,0,12,0,4,0, + 4,0,6,0,6,0,2,0,3,0,3,0,1,0,1,128, + 1,128,0,128,0,128,0,192,0,64,0,64,0,96,0,32, + 0,32,0,48,0,16,7,33,33,15,3,249,254,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,14,254,15,13,26, + 21,3,12,1,0,3,128,3,128,6,192,4,64,12,96,24, + 48,16,16,48,24,96,8,96,12,192,6,128,2,19,1,3, + 19,0,250,255,255,224,6,6,6,16,3,19,192,224,112,48, + 24,12,16,17,34,19,2,0,15,128,48,224,96,112,96,112, + 120,112,120,112,0,112,1,240,30,112,112,112,96,112,224,112, + 224,113,224,241,225,113,113,126,62,60,16,26,52,18,0,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,112,29,140,29,14,30,6,30,7,28,7,28,7, + 28,7,28,7,28,7,28,7,28,7,28,7,30,6,30,14, + 19,12,16,240,12,17,34,16,2,0,15,128,24,96,48,48, + 112,48,96,112,224,112,224,112,224,0,224,0,224,0,224,0, + 224,0,96,16,112,16,48,32,24,64,15,128,16,26,52,19, + 2,0,1,248,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,14,56,57,184,48,184,112,120,96,120,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,96,56,112,120, + 48,120,48,248,15,63,13,17,34,17,2,0,15,128,24,224, + 48,96,112,112,96,48,224,56,224,56,255,248,224,0,224,0, + 224,0,224,8,112,16,112,16,48,32,24,96,7,128,12,26, + 52,12,1,0,7,192,12,32,28,48,56,112,56,112,56,0, + 56,0,56,0,56,0,255,128,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,255,128,17,25,75,20,2,248,7,199, + 0,28,117,128,56,59,128,112,31,128,112,28,0,112,28,0, + 112,28,0,112,28,0,56,56,0,28,112,0,7,192,0,56, + 0,0,64,0,0,64,0,0,64,0,0,127,224,0,63,248, + 0,14,28,0,112,2,0,192,2,0,192,2,0,192,2,0, + 224,4,0,112,8,0,15,240,0,18,26,78,21,1,0,252, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,124,0,28,142,0, + 29,7,0,30,7,0,30,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,28,7,0,255,31,192,7,25,25, + 10,2,0,48,120,120,48,0,0,0,0,248,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,254,9,34,68,11, + 255,248,1,128,3,128,3,128,1,128,0,0,0,0,0,0, + 0,0,0,0,31,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,67,128,227,128,227,0, + 195,0,70,0,60,0,17,26,78,19,1,0,252,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,127,0,28,24,0,28,16,0, + 28,48,0,28,32,0,28,64,0,28,128,0,29,192,0,29, + 192,0,30,224,0,28,112,0,28,112,0,28,56,0,28,60, + 0,28,28,0,28,30,0,255,127,128,9,26,52,11,1,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,255,128,25,17,68,29,2,0,248,240,120,0,57,56, + 156,0,58,29,14,0,60,30,14,0,60,30,14,0,56,28, + 14,0,56,28,14,0,56,28,14,0,56,28,14,0,56,28, + 14,0,56,28,14,0,56,28,14,0,56,28,14,0,56,28, + 14,0,56,28,14,0,56,28,14,0,254,127,63,128,17,17, + 51,21,2,0,248,248,0,57,28,0,58,14,0,60,14,0, + 60,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,254,63,128,14,17,34,18,2,0,7,128,24, + 96,48,48,112,56,112,24,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,112,24,112,56,48,48,24,96,7,128,16, + 25,50,19,1,248,252,240,29,140,31,14,30,6,30,7,28, + 7,28,7,28,7,28,7,28,7,28,7,28,7,28,7,30, + 6,30,14,29,12,28,240,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,255,128,16,25,50,18,2,248,15,8,56, + 136,48,216,112,88,96,120,224,56,224,56,224,56,224,56,224, + 56,224,56,224,56,96,56,112,120,48,120,48,184,15,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,1,255,12, + 17,34,15,2,0,248,224,57,16,58,48,58,112,60,112,60, + 0,60,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,0,254,0,12,17,34,16,2,0,62,64,97, + 64,192,192,192,64,192,64,224,64,120,0,127,0,31,192,7, + 224,128,240,192,112,192,48,224,48,224,48,152,96,135,192,11, + 24,48,13,1,0,8,0,8,0,8,0,8,0,24,0,24, + 0,56,0,255,192,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,0,56,32,56,32,56,32,56, + 96,31,192,15,128,17,17,51,20,1,0,248,62,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 30,0,56,30,0,56,46,0,28,78,0,15,143,128,18,17, + 51,19,0,0,255,31,192,28,7,0,28,6,0,12,4,0, + 14,4,0,14,4,0,7,8,0,7,8,0,3,8,0,3, + 144,0,1,144,0,1,208,0,1,224,0,0,224,0,0,224, + 0,0,64,0,0,64,0,27,17,68,28,0,0,255,63,207, + 224,28,15,3,0,28,7,3,0,12,7,2,0,14,7,2, + 0,14,15,130,0,7,11,132,0,7,9,132,0,3,137,196, + 0,3,145,200,0,1,144,200,0,1,208,232,0,1,224,240, + 0,0,224,112,0,0,224,112,0,0,64,96,0,0,64,32, + 0,16,17,34,19,2,0,254,126,60,56,28,48,28,32,14, + 64,14,64,7,128,3,128,3,128,3,192,3,192,4,224,8, + 96,8,112,16,56,48,56,252,255,18,25,75,20,1,248,255, + 31,192,28,6,0,28,6,0,12,4,0,14,4,0,14,4, + 0,6,8,0,7,8,0,7,8,0,3,16,0,3,144,0, + 3,144,0,1,240,0,1,224,0,1,224,0,0,224,0,0, + 192,0,0,64,0,0,192,0,0,128,0,112,128,0,113,128, + 0,113,0,0,115,0,0,60,0,0,12,17,34,15,1,0, + 255,240,224,112,192,224,128,224,129,192,131,128,131,128,7,0, + 7,0,14,0,28,16,28,16,56,16,56,16,112,48,224,112, + 255,240,8,33,33,15,3,249,3,4,8,24,24,24,24,28, + 28,28,12,12,12,12,8,24,224,24,8,12,12,12,12,28, + 28,28,24,24,24,24,8,4,3,2,34,34,10,4,249,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,8,33,33,14,3,249,192,32,16,24,24,24,24,24,56, + 56,48,48,48,48,16,24,7,24,16,48,48,48,48,56,56, + 24,24,24,24,24,16,32,192,20,6,18,24,2,6,62,0, + 32,127,192,16,135,248,16,128,255,48,128,63,224,96,7,192, + 255}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--41-410-72-72-P-216-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 29, '1' Height: 28 + Calculated Max Values w=41 h=39 x= 8 y=23 dx=44 dy= 0 ascent=39 len=174 + Font Bounding box w=107 h=51 x=-33 y=-12 + Calculated Min Values x=-1 y=-11 dx= 0 dy= 0 + Pure Font ascent =29 descent=-9 + X Font ascent =30 descent=-9 + Max Font ascent =39 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr29[16232] U8G_SECTION(".progmem.u8g_font_osr29") = { + 0,107,51,223,244,29,9,148,21,166,32,255,247,39,245,30, + 247,0,0,0,11,0,0,5,28,28,11,3,0,112,248,248, + 248,248,248,248,248,112,112,112,112,112,112,112,112,32,32,32, + 32,32,32,0,112,248,248,248,112,9,8,16,17,4,22,227, + 128,227,128,227,128,227,128,193,128,65,128,65,0,65,0,22, + 28,84,28,3,0,0,192,192,0,192,192,0,192,192,0,192, + 128,0,129,128,1,129,128,1,129,128,1,129,128,255,255,252, + 255,255,252,1,129,0,3,3,0,3,3,0,3,3,0,3, + 3,0,3,3,0,2,2,0,6,6,0,255,255,252,255,255, + 252,6,6,0,6,6,0,6,4,0,4,12,0,12,12,0, + 12,12,0,12,12,0,12,12,0,18,34,102,24,3,253,1, + 16,0,1,16,0,1,16,0,3,248,0,13,22,0,25,17, + 0,49,16,128,97,16,192,97,16,192,97,17,192,97,19,192, + 97,19,192,113,19,128,61,16,0,63,144,0,31,240,0,15, + 252,0,3,254,0,1,127,0,1,31,128,1,19,128,33,17, + 192,113,16,192,249,16,192,241,16,192,241,16,192,225,16,128, + 97,17,128,97,17,0,49,19,0,15,188,0,1,240,0,1, + 16,0,1,16,0,28,28,112,36,4,0,31,0,6,0,49, + 128,4,0,96,192,12,0,96,192,8,0,224,224,24,0,224, + 224,48,0,224,224,32,0,224,224,96,0,224,224,64,0,224, + 224,128,0,96,193,128,0,96,193,0,0,49,131,0,0,31, + 6,0,0,0,4,15,0,0,12,48,128,0,8,48,192,0, + 16,96,96,0,48,96,96,0,32,224,112,0,96,224,112,0, + 64,224,112,0,128,224,112,1,128,224,112,1,0,96,96,2, + 0,96,96,6,0,48,192,4,0,31,128,28,28,112,32,2, + 0,0,248,0,0,3,140,0,0,7,4,0,0,6,2,0, + 0,14,2,0,0,14,2,0,0,14,6,0,0,14,4,0, + 0,15,12,0,0,7,24,0,0,7,176,0,0,3,224,0, + 0,1,224,63,240,3,224,7,128,6,240,7,0,12,120,6, + 0,24,124,6,0,48,60,4,0,112,30,12,0,112,31,24, + 0,240,15,144,0,240,7,176,0,240,7,224,0,240,3,224, + 0,240,3,240,32,120,6,248,32,60,12,124,192,31,240,63, + 128,3,8,8,10,4,22,224,224,224,224,192,64,64,64,9, + 37,74,15,4,249,1,128,3,0,6,0,14,0,12,0,24, + 0,24,0,48,0,48,0,96,0,96,0,96,0,96,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,96,0,96,0,96,0,96,0,48,0,48,0,56, + 0,24,0,12,0,12,0,6,0,3,0,3,128,1,128,9, + 37,74,15,2,249,192,0,96,0,48,0,56,0,24,0,12, + 0,12,0,6,0,6,0,3,0,3,0,3,0,3,0,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,3,128,3,0,3,0,3,0,6,0,6,0,14, + 0,12,0,24,0,24,0,48,0,96,0,224,0,192,0,15, + 17,34,21,3,11,3,128,3,192,3,128,3,128,225,142,241, + 30,249,62,29,112,3,128,3,128,29,112,249,62,241,30,227, + 142,3,128,3,192,3,128,35,34,170,39,2,250,0,0,192, + 0,0,0,0,192,0,0,0,0,192,0,0,0,0,192,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,192,0,0,0,0,192,0,0,0,0,192,0,0,0,0, + 192,0,0,0,0,192,0,0,0,0,192,0,0,255,255,255, + 255,224,255,255,255,255,224,0,0,192,0,0,0,0,192,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,192,0,0,0,0,192,0,0,0,0,192,0,0,0,0, + 192,0,0,0,0,192,0,0,0,0,192,0,0,0,0,192, + 0,0,0,0,192,0,0,5,12,12,11,3,249,112,240,248, + 248,24,8,8,16,16,32,32,64,10,2,4,14,2,9,255, + 192,255,192,5,5,5,11,3,0,112,248,248,248,112,14,38, + 76,18,2,248,0,12,0,12,0,12,0,8,0,24,0,24, + 0,16,0,48,0,48,0,32,0,96,0,96,0,64,0,192, + 0,192,0,128,1,128,1,128,1,0,3,0,3,0,2,0, + 6,0,6,0,4,0,12,0,12,0,8,0,24,0,24,0, + 16,0,48,0,48,0,32,0,96,0,96,0,64,0,192,0, + 20,28,84,24,2,0,1,248,0,7,12,0,12,7,0,28, + 3,128,24,1,128,56,1,192,56,1,192,112,0,224,112,0, + 224,112,0,224,240,0,240,240,0,240,240,0,240,240,0,240, + 240,0,240,240,0,240,240,0,240,240,0,240,240,0,240,112, + 0,224,112,0,224,112,0,224,56,1,192,56,1,192,24,1, + 128,12,3,0,6,6,0,3,252,0,14,28,56,24,5,0, + 1,128,1,128,3,128,7,128,255,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,255,252,17,28,84,24,3,0,7,224, + 0,24,60,0,32,30,0,64,15,0,192,15,0,192,7,128, + 192,7,128,240,7,128,252,7,128,252,7,128,124,7,128,24, + 15,0,0,14,0,0,28,0,0,56,0,0,112,0,0,224, + 0,1,192,0,3,0,0,6,0,0,12,0,128,24,0,128, + 48,0,128,48,1,128,112,1,128,127,255,128,127,255,128,127, + 255,128,17,28,84,24,3,0,15,224,0,48,56,0,96,28, + 0,96,14,0,240,15,0,248,15,0,248,15,0,120,15,0, + 0,15,0,0,15,0,0,14,0,0,28,0,28,56,0,31, + 224,0,0,60,0,0,30,0,0,15,0,0,7,0,0,7, + 128,0,7,128,120,7,128,248,7,128,248,7,128,248,7,0, + 192,15,0,192,14,0,96,28,0,31,240,0,19,28,84,24, + 2,0,0,12,0,0,12,0,0,28,0,0,60,0,0,60, + 0,0,124,0,0,252,0,0,252,0,1,188,0,3,60,0, + 3,60,0,6,60,0,12,60,0,12,60,0,24,60,0,48, + 60,0,32,60,0,96,60,0,192,60,0,255,255,224,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,7,255,224,17,29,87,24,4,0,0,2,0,120, + 12,0,127,248,0,127,240,0,111,192,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,103,224,0,104,60,0, + 112,30,0,96,14,0,96,15,0,96,7,0,0,7,128,0, + 7,128,0,7,128,16,7,128,120,7,128,252,7,128,252,7, + 128,248,15,0,224,15,0,224,14,0,96,28,0,48,56,0, + 31,240,0,17,28,84,24,3,0,1,248,0,3,12,0,12, + 6,0,28,7,0,24,15,0,56,31,0,48,31,0,112,14, + 0,112,0,0,112,0,0,240,0,0,241,240,0,246,28,0, + 252,14,0,248,7,0,248,7,0,240,7,128,240,7,128,240, + 7,128,240,7,128,112,7,128,112,7,128,112,7,0,48,7, + 0,56,7,0,24,14,0,12,28,0,7,248,0,16,28,56, + 24,4,0,255,255,255,255,255,255,192,3,128,2,128,2,128, + 6,128,4,0,12,0,8,0,24,0,48,0,32,0,96,0, + 192,0,192,1,128,3,128,3,128,7,128,7,128,7,128,15, + 192,15,192,15,192,15,192,15,192,7,192,20,28,84,24,2, + 0,3,248,0,14,14,0,56,7,0,112,3,128,112,1,192, + 240,1,192,240,1,192,240,1,192,240,1,192,248,1,128,126, + 3,128,127,131,0,63,252,0,15,252,0,7,255,0,24,127, + 192,48,15,224,112,3,224,224,1,240,224,0,240,224,0,240, + 224,0,224,224,0,224,224,0,224,112,1,192,48,1,128,28, + 7,0,15,252,0,17,28,84,24,3,0,7,224,0,12,56, + 0,56,12,0,56,14,0,112,14,0,112,7,0,240,7,0, + 240,7,0,240,7,128,240,7,128,240,7,128,240,7,128,112, + 15,128,112,15,128,56,27,128,28,51,128,7,199,128,0,7, + 128,0,7,0,0,7,0,56,7,0,124,7,0,124,14,0, + 120,14,0,112,12,0,112,24,0,48,48,0,31,224,0,5, + 19,19,11,3,0,112,248,248,248,112,0,0,0,0,0,0, + 0,0,0,112,248,248,248,112,5,26,26,11,3,249,112,248, + 248,248,112,0,0,0,0,0,0,0,0,0,112,240,248,120, + 8,8,8,16,16,32,96,64,32,34,136,39,3,250,0,0, + 0,2,0,0,0,7,0,0,0,28,0,0,0,112,0,0, + 1,224,0,0,7,128,0,0,30,0,0,0,120,0,0,1, + 224,0,0,3,128,0,0,14,0,0,0,56,0,0,0,240, + 0,0,3,192,0,0,15,0,0,0,60,0,0,0,240,0, + 0,0,224,0,0,0,120,0,0,0,30,0,0,0,7,128, + 0,0,1,192,0,0,0,112,0,0,0,28,0,0,0,7, + 0,0,0,3,192,0,0,0,240,0,0,0,60,0,0,0, + 15,0,0,0,3,128,0,0,0,224,0,0,0,56,0,0, + 0,14,0,0,0,6,35,10,50,39,2,6,255,255,255,255, + 224,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,255,255,255,255,224,255,255,255,255,224,32,34, + 136,39,3,250,64,0,0,0,224,0,0,0,56,0,0,0, + 14,0,0,0,7,128,0,0,1,224,0,0,0,120,0,0, + 0,30,0,0,0,7,128,0,0,1,192,0,0,0,112,0, + 0,0,28,0,0,0,15,0,0,0,3,192,0,0,0,240, + 0,0,0,60,0,0,0,15,0,0,0,7,0,0,0,30, + 0,0,0,120,0,0,1,224,0,0,3,128,0,0,14,0, + 0,0,56,0,0,0,224,0,0,3,192,0,0,15,0,0, + 0,60,0,0,0,240,0,0,1,192,0,0,7,0,0,0, + 28,0,0,0,112,0,0,0,96,0,0,0,15,28,56,20, + 3,0,15,192,48,112,64,60,192,28,192,30,248,30,248,30, + 112,30,0,28,0,60,0,120,0,240,1,192,3,128,6,0, + 12,0,8,32,8,32,8,32,12,64,7,128,0,0,0,0, + 3,128,7,192,7,192,7,192,3,128,29,29,116,33,2,1, + 0,63,248,0,1,192,14,0,3,0,3,0,6,0,1,128, + 12,0,0,192,24,7,206,96,48,12,124,32,48,56,60,48, + 96,112,60,16,96,224,56,24,96,224,56,24,193,192,56,24, + 193,192,56,24,193,192,48,24,195,192,112,24,195,128,112,24, + 195,128,112,48,195,128,224,48,195,128,224,48,67,129,224,96, + 97,130,224,192,97,196,225,128,48,120,62,0,48,0,0,0, + 24,0,0,0,12,0,0,0,6,0,4,0,3,128,28,0, + 0,127,240,0,29,29,116,32,2,0,0,2,0,0,0,6, + 0,0,0,7,0,0,0,7,0,0,0,15,128,0,0,15, + 128,0,0,15,128,0,0,31,192,0,0,19,192,0,0,51, + 192,0,0,49,224,0,0,33,224,0,0,97,224,0,0,96, + 240,0,0,64,240,0,0,192,240,0,0,192,120,0,0,128, + 120,0,1,128,120,0,1,255,252,0,1,0,60,0,3,0, + 28,0,3,0,30,0,6,0,30,0,6,0,15,0,6,0, + 15,0,14,0,15,0,30,0,15,128,255,224,255,248,23,29, + 87,28,3,0,255,255,128,15,0,224,15,0,120,15,0,60, + 15,0,28,15,0,28,15,0,30,15,0,30,15,0,28,15, + 0,28,15,0,56,15,0,48,15,0,224,15,255,0,15,0, + 224,15,0,112,15,0,56,15,0,60,15,0,30,15,0,30, + 15,0,30,15,0,30,15,0,30,15,0,30,15,0,60,15, + 0,60,15,0,120,15,0,224,255,255,128,22,29,87,28,3, + 1,1,254,8,7,3,152,12,0,248,28,0,248,24,0,120, + 56,0,56,120,0,56,112,0,24,112,0,24,240,0,8,240, + 0,8,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,112,0,12,112,0,12, + 120,0,12,56,0,24,56,0,24,28,0,24,12,0,48,6, + 0,96,3,0,192,0,255,128,27,29,116,32,3,0,255,255, + 192,0,15,0,112,0,15,0,28,0,15,0,14,0,15,0, + 7,0,15,0,7,128,15,0,3,128,15,0,3,192,15,0, + 3,192,15,0,1,192,15,0,1,224,15,0,1,224,15,0, + 1,224,15,0,1,224,15,0,1,224,15,0,1,224,15,0, + 1,224,15,0,1,224,15,0,1,224,15,0,3,192,15,0, + 3,192,15,0,3,192,15,0,3,128,15,0,7,0,15,0, + 7,0,15,0,14,0,15,0,28,0,15,0,112,0,255,255, + 192,0,23,29,87,29,3,0,255,255,254,15,0,62,15,0, + 14,15,0,14,15,0,6,15,0,6,15,0,2,15,0,2, + 15,1,2,15,1,0,15,1,0,15,1,0,15,3,0,15, + 7,0,15,255,0,15,7,0,15,3,0,15,1,0,15,1, + 2,15,1,2,15,1,2,15,0,2,15,0,6,15,0,6, + 15,0,6,15,0,14,15,0,30,15,0,126,255,255,254,23, + 29,87,28,3,0,255,255,254,15,0,62,15,0,14,15,0, + 14,15,0,6,15,0,6,15,0,2,15,0,2,15,1,2, + 15,1,0,15,1,0,15,1,0,15,3,0,15,7,0,15, + 255,0,15,7,0,15,3,0,15,1,0,15,1,0,15,1, + 0,15,1,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,255,240,0,25,30,120,29, + 3,0,0,16,0,0,1,254,8,0,6,3,152,0,12,0, + 248,0,28,0,248,0,24,0,120,0,56,0,56,0,56,0, + 56,0,112,0,24,0,112,0,24,0,112,0,8,0,240,0, + 8,0,240,0,0,0,240,0,0,0,240,0,0,0,240,7, + 255,128,240,0,120,0,240,0,120,0,240,0,120,0,240,0, + 120,0,112,0,120,0,112,0,120,0,112,0,120,0,56,0, + 120,0,56,0,120,0,24,0,248,0,28,0,200,0,12,1, + 136,0,6,3,8,0,1,254,8,0,28,29,116,33,3,0, + 255,240,255,240,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,255,255,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 255,240,255,240,12,29,58,17,3,0,255,240,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,255,240,19,29,87,22,2,0,1,255,224,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,120,30,0,248,30,0,248,30,0,248, + 30,0,192,28,0,192,28,0,64,24,0,96,48,0,31,224, + 0,27,29,116,32,3,0,255,241,255,192,15,0,126,0,15, + 0,60,0,15,0,56,0,15,0,112,0,15,0,96,0,15, + 0,192,0,15,1,128,0,15,3,0,0,15,6,0,0,15, + 14,0,0,15,30,0,0,15,63,0,0,15,111,0,0,15, + 207,128,0,15,135,128,0,15,7,192,0,15,3,192,0,15, + 3,224,0,15,3,224,0,15,1,240,0,15,1,240,0,15, + 0,248,0,15,0,248,0,15,0,124,0,15,0,124,0,15, + 0,62,0,15,0,63,0,255,241,255,224,23,29,87,28,3, + 0,255,248,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,2,15,0,2,15,0,6, + 15,0,6,15,0,6,15,0,14,15,0,14,15,0,30,15, + 0,62,15,0,254,255,255,254,30,29,116,35,3,0,255,128, + 3,252,15,128,7,192,15,192,7,192,15,192,7,192,15,192, + 15,192,13,192,11,192,13,224,11,192,13,224,11,192,12,224, + 27,192,12,240,19,192,12,240,19,192,12,112,51,192,12,112, + 35,192,12,120,35,192,12,120,35,192,12,56,99,192,12,60, + 67,192,12,60,67,192,12,28,195,192,12,28,131,192,12,30, + 131,192,12,14,131,192,12,15,131,192,12,15,3,192,12,15, + 3,192,12,7,3,192,12,6,3,192,30,6,3,192,255,194, + 63,252,28,29,116,32,3,0,255,0,63,240,15,128,7,128, + 15,128,3,0,15,192,3,0,15,224,3,0,13,224,3,0, + 13,240,3,0,12,248,3,0,12,120,3,0,12,124,3,0, + 12,60,3,0,12,30,3,0,12,31,3,0,12,15,3,0, + 12,7,131,0,12,7,131,0,12,3,195,0,12,3,227,0, + 12,1,227,0,12,0,243,0,12,0,251,0,12,0,123,0, + 12,0,63,0,12,0,63,0,12,0,31,0,12,0,31,0, + 12,0,15,0,30,0,7,0,255,192,7,0,24,29,87,29, + 3,1,0,255,0,3,0,192,6,0,96,12,0,48,28,0, + 56,56,0,28,56,0,28,120,0,30,112,0,14,112,0,14, + 240,0,15,240,0,15,240,0,15,240,0,15,240,0,15,240, + 0,15,240,0,15,240,0,15,240,0,15,112,0,14,112,0, + 14,120,0,30,56,0,28,56,0,28,28,0,56,12,0,48, + 6,0,96,3,0,192,0,255,0,23,29,87,28,3,0,255, + 255,128,15,0,224,15,0,120,15,0,60,15,0,60,15,0, + 30,15,0,30,15,0,30,15,0,30,15,0,30,15,0,60, + 15,0,60,15,0,120,15,0,224,15,255,128,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,255,248,0,24,36,108,29,3,250,0,255,0,3, + 0,192,6,0,96,12,0,48,28,0,56,56,0,28,56,0, + 28,120,0,30,112,0,14,112,0,14,240,0,15,240,0,15, + 240,0,15,240,0,15,240,0,15,240,0,15,240,0,15,240, + 0,15,240,0,15,112,0,14,120,0,30,120,0,30,56,60, + 28,56,99,28,28,195,56,14,193,184,6,193,240,3,193,225, + 0,247,193,0,9,193,0,1,193,0,1,195,0,1,226,0, + 1,254,0,0,252,0,0,56,25,29,116,29,3,0,255,255, + 128,0,15,1,240,0,15,0,120,0,15,0,120,0,15,0, + 60,0,15,0,60,0,15,0,60,0,15,0,60,0,15,0, + 60,0,15,0,120,0,15,0,240,0,15,1,224,0,15,255, + 0,0,15,3,128,0,15,1,192,0,15,0,224,0,15,0, + 224,0,15,0,240,0,15,0,240,0,15,0,240,0,15,0, + 240,0,15,0,240,0,15,0,248,128,15,0,120,128,15,0, + 120,128,15,0,121,128,15,0,127,0,15,0,63,0,255,248, + 30,0,19,29,87,25,4,1,15,240,192,48,28,192,96,15, + 192,96,7,192,192,3,192,192,1,192,192,1,192,192,0,192, + 224,0,192,240,0,192,120,0,64,127,0,0,63,192,0,31, + 248,0,15,254,0,1,255,128,128,127,128,128,15,192,128,3, + 224,128,1,224,192,0,224,192,0,96,224,0,96,224,0,96, + 240,0,96,248,0,192,156,0,128,134,1,0,131,254,0,24, + 29,87,29,3,0,255,255,255,248,60,31,240,60,15,224,60, + 7,192,60,3,192,60,3,192,60,3,128,60,1,128,60,1, + 128,60,1,128,60,1,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,7,255,224,29,29,116,34, + 3,0,255,240,31,248,15,0,3,192,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,7,0, + 1,0,7,0,3,0,3,128,2,0,1,192,6,0,0,224, + 24,0,0,63,240,0,29,29,116,32,2,0,255,248,63,248, + 15,128,3,192,7,128,3,128,7,128,3,0,3,192,3,0, + 3,192,3,0,3,192,2,0,1,224,6,0,1,224,6,0, + 1,240,4,0,0,240,12,0,0,240,12,0,0,248,8,0, + 0,120,24,0,0,120,24,0,0,60,16,0,0,60,48,0, + 0,60,48,0,0,30,32,0,0,30,96,0,0,31,96,0, + 0,15,64,0,0,15,192,0,0,15,192,0,0,7,128,0, + 0,7,128,0,0,7,128,0,0,3,0,0,0,3,0,0, + 41,29,174,44,2,0,255,241,255,227,255,128,15,128,63,0, + 124,0,7,128,30,0,56,0,7,128,30,0,48,0,7,128, + 31,0,48,0,3,192,31,0,48,0,3,192,31,0,96,0, + 3,192,55,0,96,0,1,224,55,128,96,0,1,224,55,128, + 64,0,1,224,39,128,192,0,1,224,99,192,192,0,0,240, + 99,192,128,0,0,240,67,193,128,0,0,240,193,193,128,0, + 0,120,193,225,0,0,0,120,193,227,0,0,0,120,129,227, + 0,0,0,125,128,242,0,0,0,61,128,246,0,0,0,61, + 0,246,0,0,0,61,0,116,0,0,0,31,0,124,0,0, + 0,31,0,124,0,0,0,30,0,60,0,0,0,14,0,56, + 0,0,0,14,0,56,0,0,0,12,0,56,0,0,0,12, + 0,16,0,0,28,29,116,31,2,0,255,248,255,224,7,192, + 30,0,7,192,28,0,3,224,24,0,1,224,24,0,1,240, + 48,0,0,240,32,0,0,248,96,0,0,120,192,0,0,124, + 128,0,0,61,128,0,0,63,0,0,0,30,0,0,0,15, + 0,0,0,15,0,0,0,15,128,0,0,31,128,0,0,51, + 192,0,0,51,224,0,0,97,224,0,0,193,240,0,0,192, + 240,0,1,128,248,0,3,0,120,0,3,0,124,0,6,0, + 60,0,14,0,62,0,31,0,63,0,255,225,255,240,27,29, + 116,30,2,0,255,248,127,224,15,128,31,0,15,128,14,0, + 7,128,12,0,3,192,12,0,3,192,8,0,1,224,24,0, + 1,240,16,0,0,240,48,0,0,248,32,0,0,120,96,0, + 0,60,64,0,0,60,192,0,0,30,128,0,0,31,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,1,255,248,0,22,29,87,27,3,0,63,255, + 252,62,0,120,60,0,248,56,0,240,48,1,224,48,3,224, + 96,3,192,96,7,128,64,15,128,64,15,0,0,31,0,0, + 62,0,0,60,0,0,124,0,0,120,0,0,240,0,1,240, + 0,1,224,0,3,224,4,7,192,4,7,128,12,15,128,12, + 31,0,12,31,0,28,62,0,28,60,0,60,124,0,120,248, + 0,248,255,255,248,8,37,37,16,5,248,255,240,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,240,255, + 14,38,76,18,2,248,192,0,64,0,96,0,96,0,32,0, + 48,0,48,0,16,0,24,0,24,0,8,0,12,0,12,0, + 4,0,4,0,6,0,2,0,2,0,3,0,3,0,1,0, + 1,128,1,128,0,128,0,192,0,192,0,64,0,96,0,96, + 0,32,0,48,0,48,0,16,0,24,0,24,0,8,0,12, + 0,12,8,37,37,16,3,248,255,15,7,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,15,255,18,14,42, + 24,3,15,0,192,0,1,192,0,1,224,0,3,48,0,3, + 48,0,6,24,0,12,12,0,12,12,0,24,6,0,48,6, + 0,48,3,0,96,1,128,224,1,128,192,0,192,21,2,6, + 21,0,250,255,255,248,255,255,248,7,7,7,18,3,21,192, + 224,112,56,24,12,2,18,19,57,21,2,0,15,192,0,56, + 112,0,32,56,0,96,28,0,120,28,0,120,28,0,56,28, + 0,0,28,0,0,252,0,15,28,0,56,28,0,112,28,0, + 224,28,0,224,28,64,224,60,64,224,60,64,224,92,192,112, + 159,128,31,15,0,18,29,87,21,1,0,252,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,120,0,28,142,0,29, + 7,0,30,3,128,30,3,128,28,3,128,28,3,192,28,3, + 192,28,3,192,28,3,192,28,3,192,28,3,192,28,3,192, + 28,3,128,28,3,128,30,3,128,27,7,0,17,142,0,16, + 248,0,15,19,38,18,2,0,7,224,28,16,56,8,48,12, + 112,28,112,60,240,60,240,24,240,0,240,0,240,0,240,0, + 240,6,112,4,112,4,48,12,56,8,12,48,7,224,18,29, + 87,21,2,0,0,254,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0, + 14,0,15,142,0,28,78,0,56,46,0,112,30,0,112,30, + 0,112,14,0,240,14,0,240,14,0,240,14,0,240,14,0, + 240,14,0,240,14,0,240,14,0,112,14,0,112,14,0,112, + 30,0,56,62,0,24,110,0,7,207,192,15,19,38,19,2, + 0,7,192,12,112,56,56,48,28,112,28,112,28,240,30,240, + 30,255,254,240,0,240,0,240,0,240,6,112,4,112,4,56, + 4,56,8,28,16,7,224,14,29,58,14,1,0,1,240,7, + 24,14,24,12,60,28,60,28,56,28,0,28,0,28,0,28, + 0,255,192,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,255,192,20,28,84,22,2,247,7,225,192, + 28,58,96,56,30,240,112,30,240,112,14,224,240,15,0,240, + 15,0,240,15,0,112,14,0,112,30,0,56,28,0,28,56, + 0,7,224,0,56,0,0,64,0,0,192,0,0,240,0,0, + 255,254,0,63,255,0,15,7,128,112,1,192,64,0,192,192, + 0,192,192,0,192,192,1,128,96,1,128,56,6,0,7,248, + 0,20,29,87,22,1,0,252,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,60,0,28,199,0,29,3,0,29,3, + 128,30,3,128,30,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,255,159,240,8,28, + 28,11,1,0,24,60,60,24,0,0,0,0,0,252,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,255, + 11,37,74,14,255,247,0,192,1,224,1,224,0,192,0,0, + 0,0,0,0,0,0,0,0,15,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,224,224,240,224,224,192,193,128,99,128,62,0, + 19,29,87,21,1,0,252,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,63,192,28,14,0,28,12,0,28,8,0, + 28,16,0,28,48,0,28,96,0,28,192,0,28,224,0,29, + 224,0,30,240,0,30,120,0,28,60,0,28,60,0,28,30, + 0,28,15,0,28,15,0,28,15,128,255,63,224,9,29,58, + 11,1,0,252,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,255,128,31,19,76, + 33,1,0,252,124,15,128,28,199,24,192,29,7,32,224,31, + 3,224,112,30,3,192,112,28,3,128,112,28,3,128,112,28, + 3,128,112,28,3,128,112,28,3,128,112,28,3,128,112,28, + 3,128,112,28,3,128,112,28,3,128,112,28,3,128,112,28, + 3,128,112,28,3,128,112,28,3,128,112,255,159,243,254,20, + 19,57,22,1,0,252,60,0,28,199,0,29,3,0,31,3, + 128,30,3,128,30,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,255,159,240,17,19, + 57,21,2,0,3,224,0,12,56,0,24,28,0,56,14,0, + 112,14,0,112,7,0,240,7,0,240,7,0,240,7,128,240, + 7,128,240,7,128,240,7,0,240,7,0,112,7,0,112,14, + 0,56,14,0,24,28,0,12,56,0,3,224,0,18,28,84, + 21,1,247,252,120,0,29,142,0,31,7,0,30,3,128,30, + 3,128,28,3,128,28,3,192,28,3,192,28,3,192,28,3, + 192,28,3,192,28,3,192,28,3,192,28,3,128,28,3,128, + 30,3,128,31,7,0,29,134,0,28,120,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,255,128,0,18,28,84,21,2,247,7,130,0, + 28,98,0,56,54,0,112,22,0,112,30,0,112,14,0,240, + 14,0,240,14,0,240,14,0,240,14,0,240,14,0,240,14, + 0,240,14,0,112,14,0,112,14,0,112,30,0,56,62,0, + 24,110,0,7,206,0,0,14,0,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,127, + 192,15,19,38,16,1,0,252,56,28,196,28,142,29,30,31, + 28,30,12,30,0,30,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,255,128,14,19,38, + 18,2,0,31,16,96,208,64,112,192,48,192,16,224,16,240, + 0,126,0,63,128,31,224,3,248,128,252,192,28,192,12,224, + 12,224,12,240,8,140,24,131,224,12,27,54,14,1,0,4, + 0,4,0,4,0,4,0,4,0,12,0,12,0,28,0,255, + 224,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,16,28,16,28,16,28,48,30, + 32,15,224,7,192,20,19,57,22,1,0,252,31,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,7,128,28,7,128,28,15,128,12,11,128,14,51, + 128,3,195,240,20,19,57,21,1,0,255,15,240,60,3,128, + 28,3,0,28,3,0,14,2,0,14,2,0,15,6,0,7, + 4,0,7,4,0,3,140,0,3,136,0,3,200,0,1,216, + 0,1,208,0,0,240,0,0,240,0,0,96,0,0,96,0, + 0,96,0,30,19,76,31,1,0,255,31,243,252,60,7,128, + 224,28,3,128,192,28,3,128,192,14,3,192,128,14,3,192, + 128,15,7,193,128,7,5,225,0,7,4,225,0,3,140,227, + 0,3,136,114,0,1,200,114,0,1,216,118,0,1,240,60, + 0,0,240,60,0,0,240,60,0,0,96,24,0,0,96,24, + 0,0,32,24,0,18,19,57,21,1,0,255,31,192,30,14, + 0,30,12,0,14,8,0,15,24,0,7,16,0,3,160,0, + 3,224,0,1,192,0,1,224,0,1,224,0,1,112,0,3, + 120,0,2,56,0,4,28,0,12,28,0,24,14,0,24,15, + 0,254,63,192,20,28,84,22,1,247,255,143,240,30,1,128, + 30,1,128,14,1,0,14,1,0,15,3,0,7,2,0,7, + 2,0,3,134,0,3,132,0,3,132,0,1,204,0,1,200, + 0,1,200,0,0,248,0,0,240,0,0,240,0,0,112,0, + 0,96,0,0,96,0,0,96,0,0,64,0,48,64,0,120, + 192,0,120,128,0,113,128,0,51,0,0,30,0,0,14,19, + 38,18,2,0,255,252,224,60,192,56,192,120,128,240,128,224, + 129,224,1,192,3,128,7,128,7,0,15,0,30,4,28,4, + 60,4,56,12,112,12,240,28,255,252,10,37,74,17,4,248, + 1,192,6,0,12,0,8,0,24,0,24,0,24,0,28,0, + 28,0,12,0,14,0,14,0,14,0,6,0,6,0,6,0, + 4,0,8,0,240,0,24,0,12,0,4,0,6,0,6,0, + 14,0,14,0,14,0,12,0,28,0,28,0,24,0,24,0, + 24,0,8,0,12,0,6,0,1,192,2,38,38,12,5,248, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,10,37,74,17,3,248,224,0,24,0, + 12,0,4,0,6,0,6,0,6,0,14,0,14,0,12,0, + 28,0,28,0,28,0,24,0,24,0,24,0,8,0,4,0, + 3,192,6,0,8,0,24,0,24,0,24,0,28,0,28,0, + 28,0,12,0,14,0,14,0,6,0,6,0,6,0,4,0, + 12,0,24,0,224,0,23,8,24,27,2,7,30,0,8,127, + 192,4,255,240,2,199,254,2,128,255,134,128,63,254,192,15, + 252,96,1,248,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,11,0,0,5,28,28,11,3, + 247,112,248,248,248,112,0,32,32,32,32,32,32,112,112,112, + 112,112,112,112,112,248,248,248,248,248,248,248,112,14,28,56, + 24,5,252,0,128,0,128,0,128,0,128,0,128,7,224,12, + 152,24,136,56,140,112,156,112,188,240,188,240,152,240,128,240, + 128,240,128,240,128,240,132,112,132,112,132,56,132,24,136,14, + 144,3,224,0,128,0,128,0,128,0,128,23,28,84,30,3, + 0,0,3,240,0,6,24,0,28,12,0,24,14,0,48,62, + 0,112,62,0,112,62,0,112,24,0,112,0,0,240,0,0, + 240,0,0,240,0,31,240,0,32,255,128,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,224,0, + 0,224,0,62,224,2,67,192,2,128,224,4,129,127,60,194, + 63,248,60,15,240,20,20,60,24,2,4,64,0,32,225,248, + 112,119,254,224,62,7,192,24,1,128,48,0,192,48,0,192, + 96,0,96,96,0,96,96,0,96,96,0,96,96,0,96,96, + 0,96,48,0,192,48,0,192,24,1,128,62,7,192,119,254, + 224,225,248,112,64,0,32,22,28,84,24,1,0,255,131,252, + 62,0,112,30,0,96,14,0,64,15,0,64,15,0,128,7, + 128,128,7,129,0,3,193,0,3,194,0,1,226,0,1,228, + 0,0,252,0,0,248,0,0,120,0,31,255,192,0,120,0, + 0,120,0,31,255,192,0,120,0,0,120,0,0,120,0,0, + 120,0,0,120,0,0,120,0,0,120,0,0,120,0,7,255, + 128,2,37,37,12,5,249,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,0,0,0,0,0,0,0,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,15,36,72,26, + 4,248,7,192,12,32,24,48,48,120,48,120,48,112,56,0, + 56,0,28,0,30,0,15,0,31,192,35,224,97,240,64,248, + 192,60,192,30,192,14,224,6,240,6,120,6,60,4,31,12, + 15,152,7,224,3,224,0,224,0,112,0,112,0,56,56,56, + 60,56,56,48,48,48,24,96,7,128,12,4,8,18,3,22, + 96,96,240,240,240,240,96,96,30,29,116,34,2,1,0,127, + 248,0,1,192,14,0,3,0,3,0,4,0,0,128,8,0, + 0,64,16,7,196,32,32,24,108,16,32,48,60,16,64,112, + 28,8,64,224,12,8,192,224,12,8,129,224,4,4,129,224, + 0,4,129,224,0,4,129,224,0,4,129,224,0,4,129,224, + 0,4,129,224,4,4,192,224,4,8,64,224,8,8,64,112, + 8,8,32,112,24,16,48,24,48,48,16,15,192,32,8,0, + 0,64,4,0,0,128,3,0,3,0,1,192,14,0,0,127, + 248,0,11,14,28,16,3,14,60,0,102,0,67,0,99,0, + 99,0,7,0,27,0,99,0,195,0,195,32,231,32,121,192, + 0,0,127,192,10,16,32,19,4,1,24,64,48,192,32,128, + 97,128,97,0,195,0,195,0,195,0,195,0,195,0,195,0, + 97,128,97,128,48,128,16,64,8,0,20,8,24,24,2,7, + 255,255,240,255,255,240,0,0,48,0,0,48,0,0,48,0, + 0,48,0,0,48,0,0,48,10,2,4,14,2,9,255,192, + 255,192,30,29,116,34,2,1,0,127,248,0,1,192,14,0, + 3,0,3,0,4,0,0,128,8,0,0,64,19,255,192,32, + 32,112,240,48,32,112,120,16,64,112,120,8,64,112,120,8, + 192,112,120,8,128,112,112,4,128,112,224,4,128,127,128,4, + 128,112,224,4,128,112,112,4,128,112,112,4,128,112,120,4, + 128,112,120,8,64,112,120,136,64,112,120,136,32,112,56,144, + 32,112,57,16,19,252,30,32,8,0,0,64,4,0,0,128, + 3,0,3,0,1,192,14,0,0,127,248,0,11,2,4,19, + 4,23,255,224,255,224,11,10,20,23,6,18,31,0,96,128, + 64,64,128,32,128,32,128,32,128,32,64,64,96,128,31,0, + 35,28,140,39,2,254,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,192,0,0,0,0,192,0,0,0,0,192,0,0,0,0, + 192,0,0,0,0,192,0,0,0,0,192,0,0,255,255,255, + 255,224,255,255,255,255,224,0,0,192,0,0,0,0,192,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,192,0,0,0,0,192,0,0,0,0,192,0,0,0,0, + 0,0,0,0,0,0,0,0,255,255,255,255,192,255,255,255, + 255,192,11,17,34,18,4,11,31,0,99,192,129,192,128,224, + 192,224,224,224,112,224,1,192,1,128,3,0,12,0,24,0, + 32,32,64,32,64,96,255,224,255,224,11,17,34,18,5,11, + 31,0,97,192,192,192,224,224,240,224,0,224,0,192,97,128, + 126,0,1,128,0,192,0,224,224,224,240,224,224,192,129,192, + 127,0,7,7,7,18,8,21,6,14,28,56,48,96,128,21, + 30,90,25,3,245,96,6,0,224,15,0,240,15,0,240,15, + 0,240,15,0,224,15,0,224,15,0,224,15,0,224,15,0, + 224,15,0,224,6,0,64,6,0,64,6,0,64,6,0,96, + 12,8,96,14,24,88,59,248,79,241,248,67,224,240,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,0,224,0,0, + 224,0,0,240,0,0,240,0,0,112,0,0,112,0,0,17, + 35,105,23,3,250,15,255,128,63,140,0,127,140,0,127,140, + 0,255,140,0,255,140,0,255,140,0,255,140,0,255,140,0, + 127,140,0,127,140,0,63,140,0,7,140,0,1,140,0,1, + 140,0,1,140,0,1,140,0,1,140,0,1,140,0,1,140, + 0,1,140,0,1,140,0,1,140,0,1,140,0,1,140,0, + 1,140,0,1,140,0,1,140,0,1,140,0,1,140,0,1, + 140,0,1,140,0,1,140,0,1,140,0,1,140,0,5,5, + 5,11,3,10,112,248,248,248,112,8,8,8,18,5,248,48, + 32,60,6,7,7,15,252,9,17,34,19,5,11,4,0,12, + 0,28,0,252,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,255,128,10, + 14,28,16,3,14,30,0,51,0,97,128,192,192,192,192,192, + 192,192,192,192,192,193,192,97,128,35,0,30,0,0,0,255, + 192,10,16,32,20,5,1,134,0,195,0,65,0,97,128,32, + 192,48,192,48,192,48,192,48,192,48,192,48,192,97,128,97, + 128,67,0,130,0,4,0,27,28,112,35,5,0,4,0,12, + 0,12,0,8,0,28,0,24,0,252,0,16,0,28,0,32, + 0,28,0,96,0,28,0,64,0,28,0,192,0,28,0,128, + 0,28,1,128,0,28,3,0,0,28,2,0,0,28,6,7, + 0,28,4,15,0,28,12,15,0,28,24,23,0,255,144,23, + 0,0,48,39,0,0,32,71,0,0,96,71,0,0,192,135, + 0,0,129,7,0,1,129,255,224,1,0,7,0,3,0,7, + 0,6,0,7,0,6,0,7,0,12,0,63,224,27,28,112, + 35,5,0,4,0,4,0,12,0,12,0,28,0,8,0,252, + 0,16,0,28,0,48,0,28,0,32,0,28,0,96,0,28, + 0,64,0,28,0,128,0,28,1,128,0,28,1,0,0,28, + 3,31,0,28,6,99,192,28,4,129,192,28,12,128,224,28, + 8,192,224,255,152,224,224,0,48,240,224,0,32,1,192,0, + 96,1,128,0,64,3,0,0,192,12,0,1,128,24,0,1, + 0,32,32,3,0,64,32,2,0,64,96,6,0,255,224,12, + 0,255,224,28,28,112,36,5,0,31,0,6,0,97,192,4, + 0,192,224,8,0,224,224,24,0,240,224,16,0,0,192,48, + 0,1,128,96,0,126,0,64,0,97,128,192,0,0,192,128, + 0,0,225,128,0,96,227,3,128,240,226,3,128,224,230,7, + 128,129,196,7,128,67,136,11,128,62,24,19,128,0,16,19, + 128,0,48,35,128,0,96,99,128,0,64,67,128,0,192,131, + 128,0,128,255,240,1,128,3,128,3,0,3,128,2,0,3, + 128,6,0,3,128,4,0,31,240,15,28,56,19,1,247,3, + 128,7,192,7,192,7,192,3,128,0,0,3,128,4,64,8, + 32,8,32,8,96,0,96,0,192,1,128,7,0,14,0,28, + 0,56,0,120,0,240,60,240,62,240,62,240,6,240,6,112, + 6,120,12,28,24,7,224,29,38,152,32,2,0,0,224,0, + 0,0,240,0,0,0,112,0,0,0,56,0,0,0,12,0, + 0,0,6,0,0,0,2,0,0,0,0,0,0,0,0,0, + 0,0,2,0,0,0,6,0,0,0,7,0,0,0,7,0, + 0,0,15,128,0,0,15,128,0,0,15,128,0,0,31,192, + 0,0,19,192,0,0,51,192,0,0,49,224,0,0,33,224, + 0,0,97,224,0,0,96,240,0,0,64,240,0,0,192,240, + 0,0,192,120,0,0,128,120,0,1,128,120,0,1,255,252, + 0,1,0,60,0,3,0,28,0,3,0,30,0,6,0,30, + 0,6,0,15,0,6,0,15,0,14,0,15,0,30,0,15, + 128,255,224,255,248,29,38,152,32,2,0,0,0,48,0,0, + 0,112,0,0,0,240,0,0,0,224,0,0,1,128,0,0, + 3,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0, + 2,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0, + 15,128,0,0,15,128,0,0,15,128,0,0,31,192,0,0, + 19,192,0,0,51,192,0,0,49,224,0,0,33,224,0,0, + 97,224,0,0,96,240,0,0,64,240,0,0,192,240,0,0, + 192,120,0,0,128,120,0,1,128,120,0,1,255,252,0,3, + 0,60,0,3,0,30,0,3,0,30,0,6,0,30,0,6, + 0,15,0,6,0,15,0,14,0,15,0,31,0,31,192,255, + 224,255,248,29,38,152,32,2,0,0,6,0,0,0,7,0, + 0,0,15,128,0,0,29,128,0,0,56,192,0,0,96,48, + 0,0,128,8,0,0,0,0,0,0,0,0,0,0,2,0, + 0,0,6,0,0,0,7,0,0,0,7,0,0,0,15,128, + 0,0,15,128,0,0,15,128,0,0,31,192,0,0,19,192, + 0,0,51,192,0,0,49,224,0,0,33,224,0,0,97,224, + 0,0,96,240,0,0,64,240,0,0,192,240,0,0,192,120, + 0,0,128,120,0,1,128,120,0,1,255,252,0,1,0,60, + 0,3,0,28,0,3,0,30,0,6,0,30,0,6,0,15, + 0,6,0,15,0,14,0,15,0,30,0,15,128,255,224,255, + 248,29,37,148,32,2,0,0,60,8,0,0,127,24,0,0, + 207,240,0,0,129,240,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0, + 7,0,0,0,7,0,0,0,15,128,0,0,15,128,0,0, + 15,128,0,0,31,192,0,0,19,192,0,0,51,192,0,0, + 49,224,0,0,33,224,0,0,97,224,0,0,96,240,0,0, + 64,240,0,0,192,240,0,0,192,120,0,0,128,120,0,1, + 128,120,0,1,255,252,0,3,0,60,0,3,0,30,0,3, + 0,30,0,6,0,30,0,6,0,15,0,6,0,15,0,14, + 0,15,0,31,0,31,192,255,224,255,248,29,37,148,32,2, + 0,0,96,48,0,0,240,120,0,0,240,120,0,0,96,48, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,2,0,0,0,6,0,0,0,7,0,0,0,7,0, + 0,0,15,128,0,0,15,128,0,0,31,128,0,0,31,192, + 0,0,19,192,0,0,51,192,0,0,49,224,0,0,33,224, + 0,0,97,224,0,0,96,240,0,0,64,240,0,0,192,112, + 0,0,192,120,0,0,128,120,0,1,128,56,0,1,255,252, + 0,1,0,28,0,3,0,28,0,3,0,30,0,6,0,30, + 0,6,0,15,0,6,0,15,0,14,0,15,0,31,0,15, + 128,255,224,255,248,29,39,156,32,2,0,0,15,0,0,0, + 16,128,0,0,32,64,0,0,32,64,0,0,32,64,0,0, + 32,64,0,0,16,128,0,0,15,0,0,0,0,0,0,0, + 0,0,0,0,2,0,0,0,6,0,0,0,7,0,0,0, + 7,0,0,0,15,128,0,0,15,128,0,0,31,128,0,0, + 31,192,0,0,19,192,0,0,51,192,0,0,51,224,0,0, + 33,224,0,0,97,224,0,0,97,240,0,0,64,240,0,0, + 192,240,0,0,192,248,0,0,128,120,0,1,128,120,0,1, + 255,252,0,1,0,60,0,3,0,60,0,2,0,62,0,6, + 0,30,0,6,0,31,0,6,0,31,0,14,0,15,0,30, + 0,15,128,255,224,255,248,37,29,145,41,1,0,0,3,255, + 255,248,0,0,124,0,248,0,0,124,0,56,0,0,124,0, + 56,0,0,252,0,24,0,1,188,0,24,0,1,188,0,8, + 0,3,60,0,8,0,3,60,4,8,0,6,60,4,0,0, + 6,60,4,0,0,12,60,4,0,0,12,60,12,0,0,24, + 60,28,0,0,24,63,252,0,0,48,60,28,0,0,48,60, + 12,0,0,96,60,4,0,0,96,60,4,8,0,255,252,4, + 8,0,128,60,4,8,1,128,60,0,8,1,0,60,0,24, + 3,0,60,0,24,2,0,60,0,24,6,0,60,0,56,14, + 0,60,0,120,31,0,60,1,248,255,225,255,255,248,22,38, + 114,28,3,248,1,255,12,7,1,140,14,0,252,28,0,124, + 24,0,60,56,0,60,56,0,28,112,0,28,112,0,12,112, + 0,12,240,0,8,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,112,0,4, + 112,0,4,120,0,12,56,0,8,56,0,8,28,0,16,12, + 0,16,14,0,32,3,0,192,1,247,128,0,56,0,0,32, + 0,0,56,0,0,14,0,0,7,0,0,7,0,0,7,0, + 1,14,0,0,252,0,23,38,114,29,3,0,1,128,0,1, + 192,0,1,224,0,0,224,0,0,48,0,0,24,0,0,12, + 0,0,0,0,0,0,0,255,255,254,15,0,62,15,0,14, + 15,0,14,15,0,6,15,0,6,15,0,2,15,0,2,15, + 1,2,15,1,0,15,1,0,15,1,0,15,3,0,15,7, + 0,15,255,0,15,7,0,15,3,0,15,1,0,15,1,2, + 15,1,2,15,1,2,15,0,2,15,0,6,15,0,6,15, + 0,6,15,0,14,15,0,30,15,0,126,255,255,254,23,38, + 114,29,3,0,0,0,192,0,1,224,0,3,192,0,3,128, + 0,6,0,0,12,0,0,8,0,0,0,0,0,0,0,255, + 255,254,15,0,62,15,0,14,15,0,14,15,0,6,15,0, + 6,15,0,2,15,0,2,15,1,2,15,1,0,15,1,0, + 15,1,0,15,3,0,15,7,0,15,255,0,15,7,0,15, + 3,0,15,1,0,15,1,2,15,1,2,15,1,2,15,0, + 2,15,0,6,15,0,6,15,0,6,15,0,14,15,0,30, + 15,0,126,255,255,254,23,38,114,29,3,0,0,8,0,0, + 28,0,0,62,0,0,55,0,0,99,128,1,128,192,2,0, + 32,0,0,0,0,0,0,255,255,254,15,0,62,15,0,14, + 15,0,14,15,0,6,15,0,6,15,0,2,15,0,2,15, + 1,2,15,1,0,15,1,0,15,1,0,15,3,0,15,7, + 0,15,255,0,15,7,0,15,3,0,15,1,0,15,1,2, + 15,1,2,15,1,2,15,0,2,15,0,6,15,0,6,15, + 0,6,15,0,14,15,0,30,15,0,126,255,255,254,23,37, + 111,29,3,0,1,128,192,3,193,224,3,193,224,1,128,192, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,254,15, + 0,62,15,0,14,15,0,14,15,0,6,15,0,6,15,0, + 2,15,0,2,15,1,2,15,1,0,15,1,0,15,3,0, + 15,3,0,15,7,0,15,255,0,15,7,0,15,3,0,15, + 3,0,15,1,2,15,1,2,15,1,2,15,0,2,15,0, + 6,15,0,6,15,0,6,15,0,14,15,0,30,15,0,126, + 255,255,254,12,38,76,17,3,0,192,0,224,0,112,0,56, + 0,24,0,12,0,2,0,0,0,0,0,255,240,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,255,240,12,38,76,17,3,0,0,48,0,112,0, + 224,1,192,3,128,2,0,4,0,0,0,0,0,255,240,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,255,240,12,38,76,17,3,0,6,0,14, + 0,15,0,27,128,48,192,96,96,128,16,0,0,0,0,255, + 240,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,255,240,12,37,74,15,2,0,96, + 96,240,240,240,240,96,96,0,0,0,0,0,0,0,0,255, + 240,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,255,240,27,29,116,32,3,0,255, + 255,192,0,15,0,112,0,15,0,28,0,15,0,14,0,15, + 0,7,0,15,0,7,128,15,0,3,128,15,0,3,192,15, + 0,3,192,15,0,1,192,15,0,1,224,15,0,1,224,15, + 0,1,224,255,240,1,224,15,0,1,224,15,0,1,224,15, + 0,1,224,15,0,1,224,15,0,1,224,15,0,3,192,15, + 0,3,192,15,0,3,192,15,0,3,128,15,0,7,0,15, + 0,7,0,15,0,14,0,15,0,28,0,15,0,112,0,255, + 255,192,0,28,37,148,32,3,0,0,60,8,0,0,127,152, + 0,0,71,240,0,0,65,240,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,255,0,63,240,15,128,7, + 128,15,128,3,0,15,192,3,0,15,224,3,0,13,224,3, + 0,13,240,3,0,12,248,3,0,12,120,3,0,12,124,3, + 0,12,60,3,0,12,30,3,0,12,31,3,0,12,15,3, + 0,12,7,131,0,12,7,131,0,12,3,195,0,12,3,227, + 0,12,1,227,0,12,0,243,0,12,0,251,0,12,0,123, + 0,12,0,63,0,12,0,63,0,12,0,31,0,12,0,31, + 0,12,0,15,0,30,0,7,0,255,192,7,0,24,38,114, + 29,3,1,3,128,0,3,192,0,1,192,0,0,224,0,0, + 112,0,0,48,0,0,8,0,0,0,0,0,0,0,0,255, + 0,3,0,192,6,0,96,12,0,48,28,0,56,56,0,28, + 56,0,28,120,0,30,112,0,14,112,0,14,240,0,15,240, + 0,15,240,0,15,240,0,15,240,0,15,240,0,15,240,0, + 15,240,0,15,240,0,15,112,0,14,112,0,14,120,0,30, + 56,0,28,56,0,28,28,0,56,12,0,48,6,0,96,3, + 0,192,0,255,0,24,38,114,29,3,1,0,1,192,0,3, + 192,0,3,128,0,7,0,0,14,0,0,12,0,0,16,0, + 0,0,0,0,0,0,0,255,0,3,0,192,6,0,96,12, + 0,48,28,0,56,56,0,28,56,0,28,120,0,30,112,0, + 14,112,0,14,240,0,15,240,0,15,240,0,15,240,0,15, + 240,0,15,240,0,15,240,0,15,240,0,15,240,0,15,112, + 0,14,112,0,14,120,0,30,56,0,28,56,0,28,28,0, + 56,12,0,48,6,0,96,3,0,192,0,255,0,24,38,114, + 29,3,0,0,24,0,0,24,0,0,60,0,0,126,0,0, + 195,0,1,129,128,6,0,96,0,0,0,0,0,0,0,255, + 0,3,0,192,6,0,96,12,0,48,28,0,56,56,0,28, + 56,0,28,120,0,30,112,0,14,112,0,14,240,0,15,240, + 0,15,240,0,15,240,0,15,240,0,15,240,0,15,240,0, + 15,240,0,15,240,0,15,112,0,14,112,0,14,120,0,30, + 56,0,28,56,0,28,28,0,56,12,0,48,6,0,96,3, + 0,192,0,255,0,24,37,111,29,3,0,1,240,32,3,252, + 64,2,63,192,2,7,128,0,0,0,0,0,0,0,0,0, + 0,0,0,0,255,0,3,0,192,6,0,96,12,0,48,28, + 0,56,56,0,28,56,0,28,120,0,30,112,0,14,112,0, + 14,240,0,15,240,0,15,240,0,15,240,0,15,240,0,15, + 240,0,15,240,0,15,240,0,15,240,0,15,112,0,14,112, + 0,14,120,0,30,56,0,28,56,0,28,28,0,56,12,0, + 48,6,0,96,3,0,192,0,255,0,24,37,111,29,3,0, + 1,129,128,3,195,192,3,195,192,1,129,128,0,0,0,0, + 0,0,0,0,0,0,0,0,0,255,0,3,0,192,6,0, + 96,12,0,48,28,0,56,56,0,28,56,0,28,120,0,30, + 112,0,14,112,0,14,240,0,15,240,0,15,240,0,15,240, + 0,15,240,0,15,240,0,15,240,0,15,240,0,15,240,0, + 15,112,0,14,112,0,14,120,0,30,56,0,28,56,0,28, + 28,0,56,12,0,48,6,0,96,3,0,192,0,255,0,25, + 25,100,39,7,254,192,0,1,128,224,0,3,0,112,0,6, + 0,56,0,12,0,28,0,24,0,14,0,48,0,7,0,96, + 0,3,128,192,0,1,193,128,0,0,227,0,0,0,118,0, + 0,0,60,0,0,0,28,0,0,0,62,0,0,0,103,0, + 0,0,195,128,0,1,129,192,0,3,0,224,0,6,0,112, + 0,12,0,56,0,24,0,28,0,48,0,14,0,96,0,7, + 0,192,0,3,128,128,0,1,0,24,29,87,29,3,1,0, + 255,131,3,0,230,6,0,124,12,0,60,28,0,56,56,0, + 60,56,0,124,120,0,254,112,0,206,112,1,142,240,3,15, + 240,6,15,240,14,15,240,12,15,240,24,15,240,48,15,240, + 96,15,240,224,15,240,192,15,113,128,14,115,0,14,126,0, + 30,62,0,28,60,0,28,28,0,56,60,0,48,62,0,96, + 103,0,192,193,255,0,29,38,152,34,3,1,0,112,0,0, + 0,112,0,0,0,56,0,0,0,28,0,0,0,14,0,0, + 0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0, + 255,240,31,248,15,0,3,192,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,7,0,1,0, + 7,0,3,0,3,128,2,0,1,192,6,0,0,224,24,0, + 0,63,240,0,29,38,152,34,3,1,0,0,56,0,0,0, + 120,0,0,0,240,0,0,0,224,0,0,1,128,0,0,3, + 0,0,0,2,0,0,0,0,0,0,0,0,0,0,255,240, + 31,248,15,0,3,192,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,7,0,1,0,7,0, + 3,0,3,128,2,0,1,192,6,0,0,224,24,0,0,63, + 240,0,29,38,152,34,3,0,0,3,0,0,0,7,0,0, + 0,7,128,0,0,13,192,0,0,24,96,0,0,96,48,0, + 0,192,8,0,0,0,0,0,0,0,0,0,255,240,31,248, + 15,0,3,192,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,7,0,3,0,7,0,3,0, + 3,128,6,0,1,192,14,0,0,224,24,0,0,63,240,0, + 29,37,148,34,3,0,0,48,48,0,0,120,120,0,0,120, + 120,0,0,48,48,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,255,240,31,248,15,0,3,192,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,7,0,1,0,7,0,3,0,3,128,2,0,1,192, + 6,0,0,224,24,0,0,63,240,0,27,38,152,30,2,0, + 0,0,48,0,0,0,112,0,0,0,224,0,0,0,192,0, + 0,1,128,0,0,3,0,0,0,2,0,0,0,0,0,0, + 0,0,0,0,255,248,127,224,15,128,31,0,15,128,14,0, + 7,128,12,0,3,192,12,0,3,192,8,0,1,224,24,0, + 1,240,16,0,0,240,48,0,0,248,32,0,0,120,96,0, + 0,60,64,0,0,60,192,0,0,30,128,0,0,31,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,1,255,248,0,23,29,87,28,3,0,255,248, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,255,128, + 15,0,224,15,0,120,15,0,60,15,0,60,15,0,30,15, + 0,30,15,0,30,15,0,30,15,0,30,15,0,60,15,0, + 60,15,0,120,15,0,224,15,255,128,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,255,248,0,19,29,87,22,1,0,0,252,0,3,14, + 0,6,7,0,14,7,128,12,7,128,28,7,128,28,7,128, + 28,7,0,28,14,0,28,28,0,28,224,0,28,24,0,28, + 6,0,28,7,0,28,3,128,28,3,128,28,1,192,28,1, + 192,28,1,192,28,1,224,28,1,224,28,1,224,28,1,224, + 28,225,192,29,225,192,29,225,192,28,131,128,28,199,0,252, + 60,0,18,28,84,21,2,1,112,0,0,120,0,0,60,0, + 0,28,0,0,6,0,0,3,0,0,1,0,0,0,0,0, + 0,0,0,15,192,0,56,112,0,32,56,0,96,28,0,120, + 28,0,120,28,0,56,28,0,0,28,0,0,252,0,15,28, + 0,56,28,0,112,28,0,224,28,0,224,28,64,224,60,64, + 224,60,64,224,92,192,112,159,128,31,15,0,18,28,84,21, + 2,1,0,28,0,0,60,0,0,120,0,0,112,0,0,192, + 0,1,128,0,1,0,0,0,0,0,0,0,0,15,192,0, + 56,112,0,32,56,0,96,28,0,120,28,0,120,28,0,56, + 28,0,0,28,0,0,252,0,15,28,0,56,28,0,112,28, + 0,224,28,0,224,28,64,224,60,64,224,60,64,224,92,192, + 112,159,128,31,15,0,18,28,84,21,2,0,3,128,0,3, + 128,0,7,128,0,6,192,0,12,96,0,24,48,0,32,24, + 0,0,0,0,0,0,0,15,192,0,56,112,0,32,56,0, + 96,28,0,120,28,0,120,28,0,56,28,0,0,28,0,0, + 252,0,15,28,0,56,28,0,112,28,0,224,28,0,224,28, + 64,224,60,64,224,60,64,224,92,192,112,159,128,31,15,0, + 18,27,81,21,2,0,30,8,0,63,136,0,39,248,0,64, + 240,0,0,0,0,0,0,0,0,0,0,0,0,0,15,192, + 0,56,112,0,32,56,0,96,28,0,120,28,0,120,28,0, + 56,28,0,0,28,0,0,252,0,15,28,0,56,28,0,112, + 28,0,224,28,0,224,28,64,224,60,64,224,60,64,224,92, + 192,112,159,128,31,15,0,18,27,81,21,2,0,56,48,0, + 120,120,0,120,120,0,56,48,0,0,0,0,0,0,0,0, + 0,0,0,0,0,15,192,0,24,112,0,32,56,0,96,28, + 0,112,28,0,120,28,0,56,28,0,0,28,0,0,252,0, + 15,28,0,56,28,0,112,28,0,224,28,0,224,28,64,224, + 60,64,224,60,64,224,92,192,112,159,128,31,15,0,18,28, + 84,21,2,0,7,128,0,8,64,0,16,32,0,16,32,0, + 16,32,0,8,64,0,7,128,0,0,0,0,0,0,0,15, + 192,0,56,112,0,32,56,0,96,28,0,112,28,0,120,28, + 0,56,28,0,0,28,0,0,252,0,15,28,0,56,28,0, + 112,28,0,224,28,0,224,28,64,224,60,64,224,92,64,224, + 156,192,112,159,128,31,15,0,25,19,76,29,2,0,15,193, + 240,0,56,115,28,0,32,30,14,0,96,30,7,0,120,28, + 7,0,120,28,7,0,56,28,7,128,0,28,7,128,3,255, + 255,128,28,28,0,0,112,28,0,0,112,28,0,0,224,28, + 1,128,224,28,1,0,224,62,1,0,224,46,1,0,224,70, + 2,0,112,131,4,0,31,0,248,0,15,27,54,18,2,248, + 7,224,28,16,56,8,48,12,112,28,112,60,240,60,240,24, + 240,0,240,0,240,0,240,0,240,6,112,4,112,4,48,12, + 56,8,28,48,7,224,1,0,2,0,1,192,0,96,0,112, + 0,112,8,240,7,192,15,28,56,19,2,1,56,0,60,0, + 28,0,14,0,7,0,3,0,0,128,0,0,0,0,7,192, + 12,112,56,56,48,28,112,28,112,28,240,30,240,30,255,254, + 240,0,240,0,240,0,240,2,112,4,112,4,56,4,56,8, + 28,16,7,224,15,28,56,19,2,1,0,28,0,60,0,56, + 0,112,0,224,0,192,1,0,0,0,0,0,7,192,12,112, + 56,56,48,28,112,28,112,28,240,30,240,30,255,254,240,0, + 240,0,240,0,240,2,112,4,112,4,56,4,56,8,28,16, + 7,224,15,28,56,19,2,0,1,128,3,128,3,192,7,192, + 6,96,8,48,16,8,0,0,0,0,7,192,12,112,56,56, + 48,28,112,28,112,28,240,30,240,30,255,254,240,0,240,0, + 240,0,240,6,112,4,112,4,56,4,56,8,28,16,7,224, + 15,27,54,19,2,0,24,24,60,60,60,60,24,24,0,0, + 0,0,0,0,0,0,7,192,12,112,56,56,48,28,112,28, + 112,28,240,14,240,14,255,254,240,0,240,0,240,0,240,2, + 112,4,112,4,56,4,56,8,28,16,7,224,10,28,56,11, + 0,0,192,0,224,0,224,0,112,0,24,0,12,0,4,0, + 0,0,0,0,126,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,127,192,10,28,56,11,1,0, + 0,192,1,192,3,128,7,0,6,0,12,0,16,0,0,0, + 0,0,252,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,255,128,11,28,56,11,0,0,12,0, + 12,0,30,0,31,0,51,0,96,128,128,96,0,0,0,0, + 126,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,127,192,11,26,52,13,1,0,96,192,241,224, + 241,224,96,192,0,0,0,0,0,0,62,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,63,192, + 17,29,87,21,2,0,30,4,0,15,12,0,7,176,0,3, + 224,0,1,224,0,6,224,0,12,240,0,16,120,0,0,56, + 0,0,28,0,3,254,0,12,62,0,24,30,0,56,15,0, + 112,15,0,112,7,0,240,7,0,240,7,128,240,7,128,240, + 7,128,240,7,0,240,7,0,240,7,0,112,7,0,112,14, + 0,56,14,0,24,28,0,12,56,0,3,224,0,20,26,78, + 22,1,0,3,225,0,7,254,0,4,126,0,0,0,0,0, + 0,0,0,0,0,0,0,0,252,60,0,28,199,0,29,3, + 0,31,3,128,30,3,128,30,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,3,128,255,159, + 240,17,28,84,21,2,1,56,0,0,60,0,0,30,0,0, + 14,0,0,3,0,0,1,128,0,0,128,0,0,0,0,0, + 0,0,3,224,0,12,56,0,24,28,0,56,14,0,112,14, + 0,112,7,0,240,7,0,240,7,0,240,7,128,240,7,128, + 240,7,128,240,7,0,240,7,0,112,7,0,112,14,0,56, + 14,0,24,28,0,12,56,0,3,224,0,17,28,84,21,2, + 1,0,28,0,0,28,0,0,56,0,0,112,0,0,96,0, + 0,192,0,1,128,0,0,0,0,0,0,0,3,224,0,12, + 56,0,24,28,0,56,14,0,112,14,0,112,7,0,240,7, + 0,240,7,0,240,7,128,240,7,128,240,7,128,240,7,0, + 240,7,0,112,7,0,112,14,0,56,14,0,24,28,0,12, + 56,0,3,224,0,17,28,84,21,2,0,1,128,0,1,192, + 0,3,192,0,3,96,0,6,32,0,12,16,0,16,12,0, + 0,0,0,0,0,0,3,224,0,12,56,0,24,28,0,56, + 14,0,112,14,0,112,7,0,240,7,0,240,7,0,240,7, + 128,240,7,128,240,7,128,240,7,0,240,7,0,112,7,0, + 112,14,0,56,14,0,24,28,0,12,56,0,3,224,0,17, + 27,81,21,2,0,15,4,0,31,204,0,19,248,0,16,240, + 0,0,0,0,0,0,0,0,0,0,0,0,0,3,224,0, + 12,56,0,24,28,0,56,14,0,112,14,0,112,7,0,240, + 7,0,240,7,0,240,7,128,240,7,128,240,7,128,240,7, + 0,240,7,0,112,7,0,112,14,0,56,14,0,24,28,0, + 12,56,0,3,224,0,17,27,81,21,2,0,24,24,0,60, + 60,0,60,60,0,24,24,0,0,0,0,0,0,0,0,0, + 0,0,0,0,3,224,0,12,56,0,24,28,0,56,14,0, + 112,14,0,112,7,0,240,7,0,240,7,0,240,7,128,240, + 7,128,240,7,128,240,7,0,240,7,0,112,7,0,112,14, + 0,56,14,0,24,28,0,12,56,0,3,224,0,35,26,130, + 39,2,254,0,0,224,0,0,0,1,240,0,0,0,1,240, + 0,0,0,1,240,0,0,0,0,224,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,255,255,224,255,255,255,255,224,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0, + 0,0,1,240,0,0,0,1,240,0,0,0,1,240,0,0, + 0,0,224,0,0,17,19,57,21,2,0,3,225,0,12,59, + 0,24,30,0,56,14,0,112,14,0,112,31,0,240,55,0, + 240,103,0,240,199,128,240,135,128,241,7,128,242,7,0,244, + 7,0,124,7,0,120,14,0,56,14,0,120,28,0,76,56, + 0,131,224,0,20,28,84,22,1,1,14,0,0,15,0,0, + 7,0,0,3,128,0,1,192,0,0,64,0,0,32,0,0, + 0,0,0,0,0,252,31,128,28,3,128,28,3,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,7,128,28, + 7,128,28,15,128,12,11,128,14,51,128,3,195,240,20,28, + 84,22,1,1,0,7,0,0,15,0,0,30,0,0,24,0, + 0,48,0,0,96,0,0,64,0,0,0,0,0,0,0,252, + 31,128,28,3,128,28,3,128,28,3,128,28,3,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,7,128,28,7,128,28,15,128,12, + 11,128,14,51,128,3,195,240,20,28,84,22,1,0,0,96, + 0,0,224,0,0,240,0,1,176,0,3,24,0,2,4,0, + 4,2,0,0,0,0,0,0,0,252,31,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,3,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,3,128,28,3,128, + 28,7,128,28,7,128,28,15,128,12,11,128,14,51,128,3, + 195,240,20,27,81,22,1,0,6,6,0,15,15,0,15,15, + 0,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0, + 252,15,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,3,128,28,3, + 128,28,3,128,28,3,128,28,7,128,28,7,128,28,15,128, + 12,11,128,14,51,128,3,195,240,20,37,111,22,1,248,0, + 3,0,0,7,0,0,15,0,0,28,0,0,24,0,0,48, + 0,0,0,0,0,0,0,0,0,0,255,143,240,30,1,128, + 30,1,128,14,1,0,14,1,0,15,3,0,7,2,0,7, + 2,0,3,134,0,3,132,0,3,132,0,1,204,0,1,200, + 0,1,200,0,0,248,0,0,240,0,0,240,0,0,112,0, + 0,96,0,0,96,0,0,96,0,0,64,0,48,64,0,120, + 192,0,120,128,0,113,128,0,51,0,0,30,0,0,18,38, + 114,21,1,246,12,0,0,60,0,0,252,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 30,0,28,127,0,28,199,128,29,3,128,31,3,192,30,3, + 192,30,3,128,28,3,128,28,3,128,28,7,0,28,7,0, + 28,6,0,28,12,0,28,28,0,28,24,0,28,48,0,28, + 192,0,29,128,0,30,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 56,0,0,192,0,0,19,36,108,21,1,247,3,6,0,7, + 143,0,7,143,0,3,6,0,0,0,0,0,0,0,0,0, + 0,0,0,0,255,143,224,30,3,128,30,1,0,14,3,0, + 14,2,0,7,2,0,7,2,0,7,6,0,3,132,0,3, + 132,0,3,140,0,1,200,0,1,200,0,1,200,0,0,240, + 0,0,240,0,0,240,0,0,96,0,0,96,0,0,96,0, + 0,64,0,0,64,0,48,64,0,120,64,0,120,128,0,121, + 128,0,59,0,0,30,0,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--41-410-72-72-P-216-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 28 + Calculated Max Values w=35 h=38 x= 5 y=11 dx=39 dy= 0 ascent=30 len=170 + Font Bounding box w=107 h=51 x=-33 y=-12 + Calculated Min Values x= 0 y=-8 dx= 0 dy= 0 + Pure Font ascent =28 descent= 0 + X Font ascent =28 descent= 0 + Max Font ascent =30 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr29n[1201] U8G_SECTION(".progmem.u8g_font_osr29n") = { + 0,107,51,223,244,28,0,0,0,0,42,57,0,30,248,28, + 0,15,17,34,21,3,11,3,128,3,192,3,128,3,128,225, + 142,241,30,249,62,29,112,3,128,3,128,29,112,249,62,241, + 30,227,142,3,128,3,192,3,128,35,34,170,39,2,250,0, + 0,192,0,0,0,0,192,0,0,0,0,192,0,0,0,0, + 192,0,0,0,0,192,0,0,0,0,192,0,0,0,0,192, + 0,0,0,0,192,0,0,0,0,192,0,0,0,0,192,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,255, + 255,255,255,224,255,255,255,255,224,0,0,192,0,0,0,0, + 192,0,0,0,0,192,0,0,0,0,192,0,0,0,0,192, + 0,0,0,0,192,0,0,0,0,192,0,0,0,0,192,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,192,0,0,0,0,192,0,0,5,12,12,11,3,249,112, + 240,248,248,24,8,8,16,16,32,32,64,10,2,4,14,2, + 9,255,192,255,192,5,5,5,11,3,0,112,248,248,248,112, + 14,38,76,18,2,248,0,12,0,12,0,12,0,8,0,24, + 0,24,0,16,0,48,0,48,0,32,0,96,0,96,0,64, + 0,192,0,192,0,128,1,128,1,128,1,0,3,0,3,0, + 2,0,6,0,6,0,4,0,12,0,12,0,8,0,24,0, + 24,0,16,0,48,0,48,0,32,0,96,0,96,0,64,0, + 192,0,20,28,84,24,2,0,1,248,0,7,12,0,12,7, + 0,28,3,128,24,1,128,56,1,192,56,1,192,112,0,224, + 112,0,224,112,0,224,240,0,240,240,0,240,240,0,240,240, + 0,240,240,0,240,240,0,240,240,0,240,240,0,240,240,0, + 240,112,0,224,112,0,224,112,0,224,56,1,192,56,1,192, + 24,1,128,12,3,0,6,6,0,3,252,0,14,28,56,24, + 5,0,1,128,1,128,3,128,7,128,255,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,255,252,17,28,84,24,3,0, + 7,224,0,24,60,0,32,30,0,64,15,0,192,15,0,192, + 7,128,192,7,128,240,7,128,252,7,128,252,7,128,124,7, + 128,24,15,0,0,14,0,0,28,0,0,56,0,0,112,0, + 0,224,0,1,192,0,3,0,0,6,0,0,12,0,128,24, + 0,128,48,0,128,48,1,128,112,1,128,127,255,128,127,255, + 128,127,255,128,17,28,84,24,3,0,15,224,0,48,56,0, + 96,28,0,96,14,0,240,15,0,248,15,0,248,15,0,120, + 15,0,0,15,0,0,15,0,0,14,0,0,28,0,28,56, + 0,31,224,0,0,60,0,0,30,0,0,15,0,0,7,0, + 0,7,128,0,7,128,120,7,128,248,7,128,248,7,128,248, + 7,0,192,15,0,192,14,0,96,28,0,31,240,0,19,28, + 84,24,2,0,0,12,0,0,12,0,0,28,0,0,60,0, + 0,60,0,0,124,0,0,252,0,0,252,0,1,188,0,3, + 60,0,3,60,0,6,60,0,12,60,0,12,60,0,24,60, + 0,48,60,0,32,60,0,96,60,0,192,60,0,255,255,224, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,0,7,255,224,17,29,87,24,4,0,0,2, + 0,120,12,0,127,248,0,127,240,0,111,192,0,96,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,103,224,0,104, + 60,0,112,30,0,96,14,0,96,15,0,96,7,0,0,7, + 128,0,7,128,0,7,128,16,7,128,120,7,128,252,7,128, + 252,7,128,248,15,0,224,15,0,224,14,0,96,28,0,48, + 56,0,31,240,0,17,28,84,24,3,0,1,248,0,3,12, + 0,12,6,0,28,7,0,24,15,0,56,31,0,48,31,0, + 112,14,0,112,0,0,112,0,0,240,0,0,241,240,0,246, + 28,0,252,14,0,248,7,0,248,7,0,240,7,128,240,7, + 128,240,7,128,240,7,128,112,7,128,112,7,128,112,7,0, + 48,7,0,56,7,0,24,14,0,12,28,0,7,248,0,16, + 28,56,24,4,0,255,255,255,255,255,255,192,3,128,2,128, + 2,128,6,128,4,0,12,0,8,0,24,0,48,0,32,0, + 96,0,192,0,192,1,128,3,128,3,128,7,128,7,128,7, + 128,15,192,15,192,15,192,15,192,15,192,7,192,20,28,84, + 24,2,0,3,248,0,14,14,0,56,7,0,112,3,128,112, + 1,192,240,1,192,240,1,192,240,1,192,240,1,192,248,1, + 128,126,3,128,127,131,0,63,252,0,15,252,0,7,255,0, + 24,127,192,48,15,224,112,3,224,224,1,240,224,0,240,224, + 0,240,224,0,224,224,0,224,224,0,224,112,1,192,48,1, + 128,28,7,0,15,252,0,17,28,84,24,3,0,7,224,0, + 12,56,0,56,12,0,56,14,0,112,14,0,112,7,0,240, + 7,0,240,7,0,240,7,128,240,7,128,240,7,128,240,7, + 128,112,15,128,112,15,128,56,27,128,28,51,128,7,199,128, + 0,7,128,0,7,0,0,7,0,56,7,0,124,7,0,124, + 14,0,120,14,0,112,12,0,112,24,0,48,48,0,31,224, + 0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--41-410-72-72-P-216-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 29, '1' Height: 28 + Calculated Max Values w=41 h=38 x= 5 y=22 dx=44 dy= 0 ascent=31 len=174 + Font Bounding box w=107 h=51 x=-33 y=-12 + Calculated Min Values x=-1 y=-9 dx= 0 dy= 0 + Pure Font ascent =29 descent=-9 + X Font ascent =30 descent=-9 + Max Font ascent =31 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr29r[7573] U8G_SECTION(".progmem.u8g_font_osr29r") = { + 0,107,51,223,244,29,9,148,21,166,32,127,247,31,247,30, + 247,0,0,0,11,0,0,5,28,28,11,3,0,112,248,248, + 248,248,248,248,248,112,112,112,112,112,112,112,112,32,32,32, + 32,32,32,0,112,248,248,248,112,9,8,16,17,4,22,227, + 128,227,128,227,128,227,128,193,128,65,128,65,0,65,0,22, + 28,84,28,3,0,0,192,192,0,192,192,0,192,192,0,192, + 128,0,129,128,1,129,128,1,129,128,1,129,128,255,255,252, + 255,255,252,1,129,0,3,3,0,3,3,0,3,3,0,3, + 3,0,3,3,0,2,2,0,6,6,0,255,255,252,255,255, + 252,6,6,0,6,6,0,6,4,0,4,12,0,12,12,0, + 12,12,0,12,12,0,12,12,0,18,34,102,24,3,253,1, + 16,0,1,16,0,1,16,0,3,248,0,13,22,0,25,17, + 0,49,16,128,97,16,192,97,16,192,97,17,192,97,19,192, + 97,19,192,113,19,128,61,16,0,63,144,0,31,240,0,15, + 252,0,3,254,0,1,127,0,1,31,128,1,19,128,33,17, + 192,113,16,192,249,16,192,241,16,192,241,16,192,225,16,128, + 97,17,128,97,17,0,49,19,0,15,188,0,1,240,0,1, + 16,0,1,16,0,28,28,112,36,4,0,31,0,6,0,49, + 128,4,0,96,192,12,0,96,192,8,0,224,224,24,0,224, + 224,48,0,224,224,32,0,224,224,96,0,224,224,64,0,224, + 224,128,0,96,193,128,0,96,193,0,0,49,131,0,0,31, + 6,0,0,0,4,15,0,0,12,48,128,0,8,48,192,0, + 16,96,96,0,48,96,96,0,32,224,112,0,96,224,112,0, + 64,224,112,0,128,224,112,1,128,224,112,1,0,96,96,2, + 0,96,96,6,0,48,192,4,0,31,128,28,28,112,32,2, + 0,0,248,0,0,3,140,0,0,7,4,0,0,6,2,0, + 0,14,2,0,0,14,2,0,0,14,6,0,0,14,4,0, + 0,15,12,0,0,7,24,0,0,7,176,0,0,3,224,0, + 0,1,224,63,240,3,224,7,128,6,240,7,0,12,120,6, + 0,24,124,6,0,48,60,4,0,112,30,12,0,112,31,24, + 0,240,15,144,0,240,7,176,0,240,7,224,0,240,3,224, + 0,240,3,240,32,120,6,248,32,60,12,124,192,31,240,63, + 128,3,8,8,10,4,22,224,224,224,224,192,64,64,64,9, + 37,74,15,4,249,1,128,3,0,6,0,14,0,12,0,24, + 0,24,0,48,0,48,0,96,0,96,0,96,0,96,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,96,0,96,0,96,0,96,0,48,0,48,0,56, + 0,24,0,12,0,12,0,6,0,3,0,3,128,1,128,9, + 37,74,15,2,249,192,0,96,0,48,0,56,0,24,0,12, + 0,12,0,6,0,6,0,3,0,3,0,3,0,3,0,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,3,128,3,0,3,0,3,0,6,0,6,0,14, + 0,12,0,24,0,24,0,48,0,96,0,224,0,192,0,15, + 17,34,21,3,11,3,128,3,192,3,128,3,128,225,142,241, + 30,249,62,29,112,3,128,3,128,29,112,249,62,241,30,227, + 142,3,128,3,192,3,128,35,34,170,39,2,250,0,0,192, + 0,0,0,0,192,0,0,0,0,192,0,0,0,0,192,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,192,0,0,0,0,192,0,0,0,0,192,0,0,0,0, + 192,0,0,0,0,192,0,0,0,0,192,0,0,255,255,255, + 255,224,255,255,255,255,224,0,0,192,0,0,0,0,192,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,192,0,0,0,0,192,0,0,0,0,192,0,0,0,0, + 192,0,0,0,0,192,0,0,0,0,192,0,0,0,0,192, + 0,0,0,0,192,0,0,5,12,12,11,3,249,112,240,248, + 248,24,8,8,16,16,32,32,64,10,2,4,14,2,9,255, + 192,255,192,5,5,5,11,3,0,112,248,248,248,112,14,38, + 76,18,2,248,0,12,0,12,0,12,0,8,0,24,0,24, + 0,16,0,48,0,48,0,32,0,96,0,96,0,64,0,192, + 0,192,0,128,1,128,1,128,1,0,3,0,3,0,2,0, + 6,0,6,0,4,0,12,0,12,0,8,0,24,0,24,0, + 16,0,48,0,48,0,32,0,96,0,96,0,64,0,192,0, + 20,28,84,24,2,0,1,248,0,7,12,0,12,7,0,28, + 3,128,24,1,128,56,1,192,56,1,192,112,0,224,112,0, + 224,112,0,224,240,0,240,240,0,240,240,0,240,240,0,240, + 240,0,240,240,0,240,240,0,240,240,0,240,240,0,240,112, + 0,224,112,0,224,112,0,224,56,1,192,56,1,192,24,1, + 128,12,3,0,6,6,0,3,252,0,14,28,56,24,5,0, + 1,128,1,128,3,128,7,128,255,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,255,252,17,28,84,24,3,0,7,224, + 0,24,60,0,32,30,0,64,15,0,192,15,0,192,7,128, + 192,7,128,240,7,128,252,7,128,252,7,128,124,7,128,24, + 15,0,0,14,0,0,28,0,0,56,0,0,112,0,0,224, + 0,1,192,0,3,0,0,6,0,0,12,0,128,24,0,128, + 48,0,128,48,1,128,112,1,128,127,255,128,127,255,128,127, + 255,128,17,28,84,24,3,0,15,224,0,48,56,0,96,28, + 0,96,14,0,240,15,0,248,15,0,248,15,0,120,15,0, + 0,15,0,0,15,0,0,14,0,0,28,0,28,56,0,31, + 224,0,0,60,0,0,30,0,0,15,0,0,7,0,0,7, + 128,0,7,128,120,7,128,248,7,128,248,7,128,248,7,0, + 192,15,0,192,14,0,96,28,0,31,240,0,19,28,84,24, + 2,0,0,12,0,0,12,0,0,28,0,0,60,0,0,60, + 0,0,124,0,0,252,0,0,252,0,1,188,0,3,60,0, + 3,60,0,6,60,0,12,60,0,12,60,0,24,60,0,48, + 60,0,32,60,0,96,60,0,192,60,0,255,255,224,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,7,255,224,17,29,87,24,4,0,0,2,0,120, + 12,0,127,248,0,127,240,0,111,192,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,103,224,0,104,60,0, + 112,30,0,96,14,0,96,15,0,96,7,0,0,7,128,0, + 7,128,0,7,128,16,7,128,120,7,128,252,7,128,252,7, + 128,248,15,0,224,15,0,224,14,0,96,28,0,48,56,0, + 31,240,0,17,28,84,24,3,0,1,248,0,3,12,0,12, + 6,0,28,7,0,24,15,0,56,31,0,48,31,0,112,14, + 0,112,0,0,112,0,0,240,0,0,241,240,0,246,28,0, + 252,14,0,248,7,0,248,7,0,240,7,128,240,7,128,240, + 7,128,240,7,128,112,7,128,112,7,128,112,7,0,48,7, + 0,56,7,0,24,14,0,12,28,0,7,248,0,16,28,56, + 24,4,0,255,255,255,255,255,255,192,3,128,2,128,2,128, + 6,128,4,0,12,0,8,0,24,0,48,0,32,0,96,0, + 192,0,192,1,128,3,128,3,128,7,128,7,128,7,128,15, + 192,15,192,15,192,15,192,15,192,7,192,20,28,84,24,2, + 0,3,248,0,14,14,0,56,7,0,112,3,128,112,1,192, + 240,1,192,240,1,192,240,1,192,240,1,192,248,1,128,126, + 3,128,127,131,0,63,252,0,15,252,0,7,255,0,24,127, + 192,48,15,224,112,3,224,224,1,240,224,0,240,224,0,240, + 224,0,224,224,0,224,224,0,224,112,1,192,48,1,128,28, + 7,0,15,252,0,17,28,84,24,3,0,7,224,0,12,56, + 0,56,12,0,56,14,0,112,14,0,112,7,0,240,7,0, + 240,7,0,240,7,128,240,7,128,240,7,128,240,7,128,112, + 15,128,112,15,128,56,27,128,28,51,128,7,199,128,0,7, + 128,0,7,0,0,7,0,56,7,0,124,7,0,124,14,0, + 120,14,0,112,12,0,112,24,0,48,48,0,31,224,0,5, + 19,19,11,3,0,112,248,248,248,112,0,0,0,0,0,0, + 0,0,0,112,248,248,248,112,5,26,26,11,3,249,112,248, + 248,248,112,0,0,0,0,0,0,0,0,0,112,240,248,120, + 8,8,8,16,16,32,96,64,32,34,136,39,3,250,0,0, + 0,2,0,0,0,7,0,0,0,28,0,0,0,112,0,0, + 1,224,0,0,7,128,0,0,30,0,0,0,120,0,0,1, + 224,0,0,3,128,0,0,14,0,0,0,56,0,0,0,240, + 0,0,3,192,0,0,15,0,0,0,60,0,0,0,240,0, + 0,0,224,0,0,0,120,0,0,0,30,0,0,0,7,128, + 0,0,1,192,0,0,0,112,0,0,0,28,0,0,0,7, + 0,0,0,3,192,0,0,0,240,0,0,0,60,0,0,0, + 15,0,0,0,3,128,0,0,0,224,0,0,0,56,0,0, + 0,14,0,0,0,6,35,10,50,39,2,6,255,255,255,255, + 224,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,255,255,255,255,224,255,255,255,255,224,32,34, + 136,39,3,250,64,0,0,0,224,0,0,0,56,0,0,0, + 14,0,0,0,7,128,0,0,1,224,0,0,0,120,0,0, + 0,30,0,0,0,7,128,0,0,1,192,0,0,0,112,0, + 0,0,28,0,0,0,15,0,0,0,3,192,0,0,0,240, + 0,0,0,60,0,0,0,15,0,0,0,7,0,0,0,30, + 0,0,0,120,0,0,1,224,0,0,3,128,0,0,14,0, + 0,0,56,0,0,0,224,0,0,3,192,0,0,15,0,0, + 0,60,0,0,0,240,0,0,1,192,0,0,7,0,0,0, + 28,0,0,0,112,0,0,0,96,0,0,0,15,28,56,20, + 3,0,15,192,48,112,64,60,192,28,192,30,248,30,248,30, + 112,30,0,28,0,60,0,120,0,240,1,192,3,128,6,0, + 12,0,8,32,8,32,8,32,12,64,7,128,0,0,0,0, + 3,128,7,192,7,192,7,192,3,128,29,29,116,33,2,1, + 0,63,248,0,1,192,14,0,3,0,3,0,6,0,1,128, + 12,0,0,192,24,7,206,96,48,12,124,32,48,56,60,48, + 96,112,60,16,96,224,56,24,96,224,56,24,193,192,56,24, + 193,192,56,24,193,192,48,24,195,192,112,24,195,128,112,24, + 195,128,112,48,195,128,224,48,195,128,224,48,67,129,224,96, + 97,130,224,192,97,196,225,128,48,120,62,0,48,0,0,0, + 24,0,0,0,12,0,0,0,6,0,4,0,3,128,28,0, + 0,127,240,0,29,29,116,32,2,0,0,2,0,0,0,6, + 0,0,0,7,0,0,0,7,0,0,0,15,128,0,0,15, + 128,0,0,15,128,0,0,31,192,0,0,19,192,0,0,51, + 192,0,0,49,224,0,0,33,224,0,0,97,224,0,0,96, + 240,0,0,64,240,0,0,192,240,0,0,192,120,0,0,128, + 120,0,1,128,120,0,1,255,252,0,1,0,60,0,3,0, + 28,0,3,0,30,0,6,0,30,0,6,0,15,0,6,0, + 15,0,14,0,15,0,30,0,15,128,255,224,255,248,23,29, + 87,28,3,0,255,255,128,15,0,224,15,0,120,15,0,60, + 15,0,28,15,0,28,15,0,30,15,0,30,15,0,28,15, + 0,28,15,0,56,15,0,48,15,0,224,15,255,0,15,0, + 224,15,0,112,15,0,56,15,0,60,15,0,30,15,0,30, + 15,0,30,15,0,30,15,0,30,15,0,30,15,0,60,15, + 0,60,15,0,120,15,0,224,255,255,128,22,29,87,28,3, + 1,1,254,8,7,3,152,12,0,248,28,0,248,24,0,120, + 56,0,56,120,0,56,112,0,24,112,0,24,240,0,8,240, + 0,8,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,112,0,12,112,0,12, + 120,0,12,56,0,24,56,0,24,28,0,24,12,0,48,6, + 0,96,3,0,192,0,255,128,27,29,116,32,3,0,255,255, + 192,0,15,0,112,0,15,0,28,0,15,0,14,0,15,0, + 7,0,15,0,7,128,15,0,3,128,15,0,3,192,15,0, + 3,192,15,0,1,192,15,0,1,224,15,0,1,224,15,0, + 1,224,15,0,1,224,15,0,1,224,15,0,1,224,15,0, + 1,224,15,0,1,224,15,0,1,224,15,0,3,192,15,0, + 3,192,15,0,3,192,15,0,3,128,15,0,7,0,15,0, + 7,0,15,0,14,0,15,0,28,0,15,0,112,0,255,255, + 192,0,23,29,87,29,3,0,255,255,254,15,0,62,15,0, + 14,15,0,14,15,0,6,15,0,6,15,0,2,15,0,2, + 15,1,2,15,1,0,15,1,0,15,1,0,15,3,0,15, + 7,0,15,255,0,15,7,0,15,3,0,15,1,0,15,1, + 2,15,1,2,15,1,2,15,0,2,15,0,6,15,0,6, + 15,0,6,15,0,14,15,0,30,15,0,126,255,255,254,23, + 29,87,28,3,0,255,255,254,15,0,62,15,0,14,15,0, + 14,15,0,6,15,0,6,15,0,2,15,0,2,15,1,2, + 15,1,0,15,1,0,15,1,0,15,3,0,15,7,0,15, + 255,0,15,7,0,15,3,0,15,1,0,15,1,0,15,1, + 0,15,1,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,255,240,0,25,30,120,29, + 3,0,0,16,0,0,1,254,8,0,6,3,152,0,12,0, + 248,0,28,0,248,0,24,0,120,0,56,0,56,0,56,0, + 56,0,112,0,24,0,112,0,24,0,112,0,8,0,240,0, + 8,0,240,0,0,0,240,0,0,0,240,0,0,0,240,7, + 255,128,240,0,120,0,240,0,120,0,240,0,120,0,240,0, + 120,0,112,0,120,0,112,0,120,0,112,0,120,0,56,0, + 120,0,56,0,120,0,24,0,248,0,28,0,200,0,12,1, + 136,0,6,3,8,0,1,254,8,0,28,29,116,33,3,0, + 255,240,255,240,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,255,255,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 255,240,255,240,12,29,58,17,3,0,255,240,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,255,240,19,29,87,22,2,0,1,255,224,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,120,30,0,248,30,0,248,30,0,248, + 30,0,192,28,0,192,28,0,64,24,0,96,48,0,31,224, + 0,27,29,116,32,3,0,255,241,255,192,15,0,126,0,15, + 0,60,0,15,0,56,0,15,0,112,0,15,0,96,0,15, + 0,192,0,15,1,128,0,15,3,0,0,15,6,0,0,15, + 14,0,0,15,30,0,0,15,63,0,0,15,111,0,0,15, + 207,128,0,15,135,128,0,15,7,192,0,15,3,192,0,15, + 3,224,0,15,3,224,0,15,1,240,0,15,1,240,0,15, + 0,248,0,15,0,248,0,15,0,124,0,15,0,124,0,15, + 0,62,0,15,0,63,0,255,241,255,224,23,29,87,28,3, + 0,255,248,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,2,15,0,2,15,0,6, + 15,0,6,15,0,6,15,0,14,15,0,14,15,0,30,15, + 0,62,15,0,254,255,255,254,30,29,116,35,3,0,255,128, + 3,252,15,128,7,192,15,192,7,192,15,192,7,192,15,192, + 15,192,13,192,11,192,13,224,11,192,13,224,11,192,12,224, + 27,192,12,240,19,192,12,240,19,192,12,112,51,192,12,112, + 35,192,12,120,35,192,12,120,35,192,12,56,99,192,12,60, + 67,192,12,60,67,192,12,28,195,192,12,28,131,192,12,30, + 131,192,12,14,131,192,12,15,131,192,12,15,3,192,12,15, + 3,192,12,7,3,192,12,6,3,192,30,6,3,192,255,194, + 63,252,28,29,116,32,3,0,255,0,63,240,15,128,7,128, + 15,128,3,0,15,192,3,0,15,224,3,0,13,224,3,0, + 13,240,3,0,12,248,3,0,12,120,3,0,12,124,3,0, + 12,60,3,0,12,30,3,0,12,31,3,0,12,15,3,0, + 12,7,131,0,12,7,131,0,12,3,195,0,12,3,227,0, + 12,1,227,0,12,0,243,0,12,0,251,0,12,0,123,0, + 12,0,63,0,12,0,63,0,12,0,31,0,12,0,31,0, + 12,0,15,0,30,0,7,0,255,192,7,0,24,29,87,29, + 3,1,0,255,0,3,0,192,6,0,96,12,0,48,28,0, + 56,56,0,28,56,0,28,120,0,30,112,0,14,112,0,14, + 240,0,15,240,0,15,240,0,15,240,0,15,240,0,15,240, + 0,15,240,0,15,240,0,15,240,0,15,112,0,14,112,0, + 14,120,0,30,56,0,28,56,0,28,28,0,56,12,0,48, + 6,0,96,3,0,192,0,255,0,23,29,87,28,3,0,255, + 255,128,15,0,224,15,0,120,15,0,60,15,0,60,15,0, + 30,15,0,30,15,0,30,15,0,30,15,0,30,15,0,60, + 15,0,60,15,0,120,15,0,224,15,255,128,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,255,248,0,24,36,108,29,3,250,0,255,0,3, + 0,192,6,0,96,12,0,48,28,0,56,56,0,28,56,0, + 28,120,0,30,112,0,14,112,0,14,240,0,15,240,0,15, + 240,0,15,240,0,15,240,0,15,240,0,15,240,0,15,240, + 0,15,240,0,15,112,0,14,120,0,30,120,0,30,56,60, + 28,56,99,28,28,195,56,14,193,184,6,193,240,3,193,225, + 0,247,193,0,9,193,0,1,193,0,1,195,0,1,226,0, + 1,254,0,0,252,0,0,56,25,29,116,29,3,0,255,255, + 128,0,15,1,240,0,15,0,120,0,15,0,120,0,15,0, + 60,0,15,0,60,0,15,0,60,0,15,0,60,0,15,0, + 60,0,15,0,120,0,15,0,240,0,15,1,224,0,15,255, + 0,0,15,3,128,0,15,1,192,0,15,0,224,0,15,0, + 224,0,15,0,240,0,15,0,240,0,15,0,240,0,15,0, + 240,0,15,0,240,0,15,0,248,128,15,0,120,128,15,0, + 120,128,15,0,121,128,15,0,127,0,15,0,63,0,255,248, + 30,0,19,29,87,25,4,1,15,240,192,48,28,192,96,15, + 192,96,7,192,192,3,192,192,1,192,192,1,192,192,0,192, + 224,0,192,240,0,192,120,0,64,127,0,0,63,192,0,31, + 248,0,15,254,0,1,255,128,128,127,128,128,15,192,128,3, + 224,128,1,224,192,0,224,192,0,96,224,0,96,224,0,96, + 240,0,96,248,0,192,156,0,128,134,1,0,131,254,0,24, + 29,87,29,3,0,255,255,255,248,60,31,240,60,15,224,60, + 7,192,60,3,192,60,3,192,60,3,128,60,1,128,60,1, + 128,60,1,128,60,1,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,7,255,224,29,29,116,34, + 3,0,255,240,31,248,15,0,3,192,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,7,0, + 1,0,7,0,3,0,3,128,2,0,1,192,6,0,0,224, + 24,0,0,63,240,0,29,29,116,32,2,0,255,248,63,248, + 15,128,3,192,7,128,3,128,7,128,3,0,3,192,3,0, + 3,192,3,0,3,192,2,0,1,224,6,0,1,224,6,0, + 1,240,4,0,0,240,12,0,0,240,12,0,0,248,8,0, + 0,120,24,0,0,120,24,0,0,60,16,0,0,60,48,0, + 0,60,48,0,0,30,32,0,0,30,96,0,0,31,96,0, + 0,15,64,0,0,15,192,0,0,15,192,0,0,7,128,0, + 0,7,128,0,0,7,128,0,0,3,0,0,0,3,0,0, + 41,29,174,44,2,0,255,241,255,227,255,128,15,128,63,0, + 124,0,7,128,30,0,56,0,7,128,30,0,48,0,7,128, + 31,0,48,0,3,192,31,0,48,0,3,192,31,0,96,0, + 3,192,55,0,96,0,1,224,55,128,96,0,1,224,55,128, + 64,0,1,224,39,128,192,0,1,224,99,192,192,0,0,240, + 99,192,128,0,0,240,67,193,128,0,0,240,193,193,128,0, + 0,120,193,225,0,0,0,120,193,227,0,0,0,120,129,227, + 0,0,0,125,128,242,0,0,0,61,128,246,0,0,0,61, + 0,246,0,0,0,61,0,116,0,0,0,31,0,124,0,0, + 0,31,0,124,0,0,0,30,0,60,0,0,0,14,0,56, + 0,0,0,14,0,56,0,0,0,12,0,56,0,0,0,12, + 0,16,0,0,28,29,116,31,2,0,255,248,255,224,7,192, + 30,0,7,192,28,0,3,224,24,0,1,224,24,0,1,240, + 48,0,0,240,32,0,0,248,96,0,0,120,192,0,0,124, + 128,0,0,61,128,0,0,63,0,0,0,30,0,0,0,15, + 0,0,0,15,0,0,0,15,128,0,0,31,128,0,0,51, + 192,0,0,51,224,0,0,97,224,0,0,193,240,0,0,192, + 240,0,1,128,248,0,3,0,120,0,3,0,124,0,6,0, + 60,0,14,0,62,0,31,0,63,0,255,225,255,240,27,29, + 116,30,2,0,255,248,127,224,15,128,31,0,15,128,14,0, + 7,128,12,0,3,192,12,0,3,192,8,0,1,224,24,0, + 1,240,16,0,0,240,48,0,0,248,32,0,0,120,96,0, + 0,60,64,0,0,60,192,0,0,30,128,0,0,31,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,1,255,248,0,22,29,87,27,3,0,63,255, + 252,62,0,120,60,0,248,56,0,240,48,1,224,48,3,224, + 96,3,192,96,7,128,64,15,128,64,15,0,0,31,0,0, + 62,0,0,60,0,0,124,0,0,120,0,0,240,0,1,240, + 0,1,224,0,3,224,4,7,192,4,7,128,12,15,128,12, + 31,0,12,31,0,28,62,0,28,60,0,60,124,0,120,248, + 0,248,255,255,248,8,37,37,16,5,248,255,240,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,240,255, + 14,38,76,18,2,248,192,0,64,0,96,0,96,0,32,0, + 48,0,48,0,16,0,24,0,24,0,8,0,12,0,12,0, + 4,0,4,0,6,0,2,0,2,0,3,0,3,0,1,0, + 1,128,1,128,0,128,0,192,0,192,0,64,0,96,0,96, + 0,32,0,48,0,48,0,16,0,24,0,24,0,8,0,12, + 0,12,8,37,37,16,3,248,255,15,7,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,15,255,18,14,42, + 24,3,15,0,192,0,1,192,0,1,224,0,3,48,0,3, + 48,0,6,24,0,12,12,0,12,12,0,24,6,0,48,6, + 0,48,3,0,96,1,128,224,1,128,192,0,192,21,2,6, + 21,0,250,255,255,248,255,255,248,7,7,7,18,3,21,192, + 224,112,56,24,12,2,18,19,57,21,2,0,15,192,0,56, + 112,0,32,56,0,96,28,0,120,28,0,120,28,0,56,28, + 0,0,28,0,0,252,0,15,28,0,56,28,0,112,28,0, + 224,28,0,224,28,64,224,60,64,224,60,64,224,92,192,112, + 159,128,31,15,0,18,29,87,21,1,0,252,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,120,0,28,142,0,29, + 7,0,30,3,128,30,3,128,28,3,128,28,3,192,28,3, + 192,28,3,192,28,3,192,28,3,192,28,3,192,28,3,192, + 28,3,128,28,3,128,30,3,128,27,7,0,17,142,0,16, + 248,0,15,19,38,18,2,0,7,224,28,16,56,8,48,12, + 112,28,112,60,240,60,240,24,240,0,240,0,240,0,240,0, + 240,6,112,4,112,4,48,12,56,8,12,48,7,224,18,29, + 87,21,2,0,0,254,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0, + 14,0,15,142,0,28,78,0,56,46,0,112,30,0,112,30, + 0,112,14,0,240,14,0,240,14,0,240,14,0,240,14,0, + 240,14,0,240,14,0,240,14,0,112,14,0,112,14,0,112, + 30,0,56,62,0,24,110,0,7,207,192,15,19,38,19,2, + 0,7,192,12,112,56,56,48,28,112,28,112,28,240,30,240, + 30,255,254,240,0,240,0,240,0,240,6,112,4,112,4,56, + 4,56,8,28,16,7,224,14,29,58,14,1,0,1,240,7, + 24,14,24,12,60,28,60,28,56,28,0,28,0,28,0,28, + 0,255,192,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,255,192,20,28,84,22,2,247,7,225,192, + 28,58,96,56,30,240,112,30,240,112,14,224,240,15,0,240, + 15,0,240,15,0,112,14,0,112,30,0,56,28,0,28,56, + 0,7,224,0,56,0,0,64,0,0,192,0,0,240,0,0, + 255,254,0,63,255,0,15,7,128,112,1,192,64,0,192,192, + 0,192,192,0,192,192,1,128,96,1,128,56,6,0,7,248, + 0,20,29,87,22,1,0,252,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,60,0,28,199,0,29,3,0,29,3, + 128,30,3,128,30,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,255,159,240,8,28, + 28,11,1,0,24,60,60,24,0,0,0,0,0,252,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,255, + 11,37,74,14,255,247,0,192,1,224,1,224,0,192,0,0, + 0,0,0,0,0,0,0,0,15,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,224,224,240,224,224,192,193,128,99,128,62,0, + 19,29,87,21,1,0,252,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,63,192,28,14,0,28,12,0,28,8,0, + 28,16,0,28,48,0,28,96,0,28,192,0,28,224,0,29, + 224,0,30,240,0,30,120,0,28,60,0,28,60,0,28,30, + 0,28,15,0,28,15,0,28,15,128,255,63,224,9,29,58, + 11,1,0,252,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,255,128,31,19,76, + 33,1,0,252,124,15,128,28,199,24,192,29,7,32,224,31, + 3,224,112,30,3,192,112,28,3,128,112,28,3,128,112,28, + 3,128,112,28,3,128,112,28,3,128,112,28,3,128,112,28, + 3,128,112,28,3,128,112,28,3,128,112,28,3,128,112,28, + 3,128,112,28,3,128,112,28,3,128,112,255,159,243,254,20, + 19,57,22,1,0,252,60,0,28,199,0,29,3,0,31,3, + 128,30,3,128,30,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,255,159,240,17,19, + 57,21,2,0,3,224,0,12,56,0,24,28,0,56,14,0, + 112,14,0,112,7,0,240,7,0,240,7,0,240,7,128,240, + 7,128,240,7,128,240,7,0,240,7,0,112,7,0,112,14, + 0,56,14,0,24,28,0,12,56,0,3,224,0,18,28,84, + 21,1,247,252,120,0,29,142,0,31,7,0,30,3,128,30, + 3,128,28,3,128,28,3,192,28,3,192,28,3,192,28,3, + 192,28,3,192,28,3,192,28,3,192,28,3,128,28,3,128, + 30,3,128,31,7,0,29,134,0,28,120,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,255,128,0,18,28,84,21,2,247,7,130,0, + 28,98,0,56,54,0,112,22,0,112,30,0,112,14,0,240, + 14,0,240,14,0,240,14,0,240,14,0,240,14,0,240,14, + 0,240,14,0,112,14,0,112,14,0,112,30,0,56,62,0, + 24,110,0,7,206,0,0,14,0,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,127, + 192,15,19,38,16,1,0,252,56,28,196,28,142,29,30,31, + 28,30,12,30,0,30,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,255,128,14,19,38, + 18,2,0,31,16,96,208,64,112,192,48,192,16,224,16,240, + 0,126,0,63,128,31,224,3,248,128,252,192,28,192,12,224, + 12,224,12,240,8,140,24,131,224,12,27,54,14,1,0,4, + 0,4,0,4,0,4,0,4,0,12,0,12,0,28,0,255, + 224,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,16,28,16,28,16,28,48,30, + 32,15,224,7,192,20,19,57,22,1,0,252,31,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,7,128,28,7,128,28,15,128,12,11,128,14,51, + 128,3,195,240,20,19,57,21,1,0,255,15,240,60,3,128, + 28,3,0,28,3,0,14,2,0,14,2,0,15,6,0,7, + 4,0,7,4,0,3,140,0,3,136,0,3,200,0,1,216, + 0,1,208,0,0,240,0,0,240,0,0,96,0,0,96,0, + 0,96,0,30,19,76,31,1,0,255,31,243,252,60,7,128, + 224,28,3,128,192,28,3,128,192,14,3,192,128,14,3,192, + 128,15,7,193,128,7,5,225,0,7,4,225,0,3,140,227, + 0,3,136,114,0,1,200,114,0,1,216,118,0,1,240,60, + 0,0,240,60,0,0,240,60,0,0,96,24,0,0,96,24, + 0,0,32,24,0,18,19,57,21,1,0,255,31,192,30,14, + 0,30,12,0,14,8,0,15,24,0,7,16,0,3,160,0, + 3,224,0,1,192,0,1,224,0,1,224,0,1,112,0,3, + 120,0,2,56,0,4,28,0,12,28,0,24,14,0,24,15, + 0,254,63,192,20,28,84,22,1,247,255,143,240,30,1,128, + 30,1,128,14,1,0,14,1,0,15,3,0,7,2,0,7, + 2,0,3,134,0,3,132,0,3,132,0,1,204,0,1,200, + 0,1,200,0,0,248,0,0,240,0,0,240,0,0,112,0, + 0,96,0,0,96,0,0,96,0,0,64,0,48,64,0,120, + 192,0,120,128,0,113,128,0,51,0,0,30,0,0,14,19, + 38,18,2,0,255,252,224,60,192,56,192,120,128,240,128,224, + 129,224,1,192,3,128,7,128,7,0,15,0,30,4,28,4, + 60,4,56,12,112,12,240,28,255,252,10,37,74,17,4,248, + 1,192,6,0,12,0,8,0,24,0,24,0,24,0,28,0, + 28,0,12,0,14,0,14,0,14,0,6,0,6,0,6,0, + 4,0,8,0,240,0,24,0,12,0,4,0,6,0,6,0, + 14,0,14,0,14,0,12,0,28,0,28,0,24,0,24,0, + 24,0,8,0,12,0,6,0,1,192,2,38,38,12,5,248, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,10,37,74,17,3,248,224,0,24,0, + 12,0,4,0,6,0,6,0,6,0,14,0,14,0,12,0, + 28,0,28,0,28,0,24,0,24,0,24,0,8,0,4,0, + 3,192,6,0,8,0,24,0,24,0,24,0,28,0,28,0, + 28,0,12,0,14,0,14,0,6,0,6,0,6,0,4,0, + 12,0,24,0,224,0,23,8,24,27,2,7,30,0,8,127, + 192,4,255,240,2,199,254,2,128,255,134,128,63,254,192,15, + 252,96,1,248,255}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--49-490-72-72-P-256-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 35, '1' Height: 34 + Calculated Max Values w=49 h=47 x=10 y=28 dx=52 dy= 0 ascent=47 len=252 + Font Bounding box w=128 h=62 x=-40 y=-15 + Calculated Min Values x=-2 y=-13 dx= 0 dy= 0 + Pure Font ascent =35 descent=-10 + X Font ascent =36 descent=-10 + Max Font ascent =47 descent=-13 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr35[22370] U8G_SECTION(".progmem.u8g_font_osr35") = { + 0,128,62,216,241,35,12,236,30,116,32,255,246,47,243,36, + 246,0,0,0,14,0,0,6,34,34,14,4,0,120,252,252, + 252,252,252,252,252,252,120,120,120,120,120,120,48,48,48,48, + 48,48,48,48,48,48,48,0,0,0,120,252,252,252,120,11, + 10,20,19,4,26,224,224,224,224,224,224,224,224,224,224,224, + 224,64,64,64,64,64,64,64,64,26,34,136,34,4,0,0, + 48,24,0,0,48,24,0,0,112,24,0,0,96,24,0,0, + 96,56,0,0,96,56,0,0,96,48,0,0,96,48,0,0, + 96,48,0,0,224,48,0,255,255,255,192,255,255,255,192,0, + 192,96,0,0,192,96,0,0,192,96,0,1,192,96,0,1, + 128,96,0,1,128,224,0,1,128,192,0,1,128,192,0,1, + 128,192,0,3,128,192,0,255,255,255,192,255,255,255,192,3, + 1,128,0,3,1,128,0,3,1,128,0,7,1,128,0,7, + 1,128,0,6,1,128,0,6,3,128,0,6,3,0,0,6, + 3,0,0,6,3,0,0,22,41,123,29,3,252,0,204,0, + 0,204,0,0,204,0,1,254,0,7,207,192,12,204,96,24, + 204,48,48,204,24,32,204,24,96,204,28,96,204,60,96,204, + 124,96,204,124,112,204,120,120,204,120,62,204,0,63,204,0, + 31,252,0,15,252,0,7,255,128,1,255,192,0,255,224,0, + 207,240,0,205,248,0,204,120,48,204,60,120,204,28,248,204, + 28,248,204,12,240,204,12,240,204,8,224,204,24,96,204,24, + 96,204,48,48,204,96,28,205,192,7,255,128,0,204,0,0, + 204,0,0,204,0,0,204,0,33,34,170,43,5,0,15,128, + 0,48,0,24,192,0,96,0,48,96,0,64,0,112,112,0, + 192,0,96,48,1,128,0,224,56,1,128,0,224,56,3,0, + 0,224,56,2,0,0,224,56,6,0,0,224,56,12,0,0, + 224,56,12,0,0,224,56,24,0,0,96,48,48,0,0,96, + 112,48,0,0,48,96,96,0,0,24,192,64,0,0,15,128, + 192,0,0,0,1,128,248,0,0,1,129,140,0,0,3,3, + 6,0,0,2,6,7,0,0,6,6,3,0,0,12,14,3, + 128,0,8,14,3,128,0,24,14,3,128,0,48,14,3,128, + 0,48,14,3,128,0,96,14,3,128,0,64,14,3,128,0, + 192,6,3,0,1,128,6,3,0,1,128,7,7,0,3,0, + 3,14,0,6,0,1,252,0,33,34,170,39,3,0,0,63, + 0,0,0,0,227,128,0,0,1,128,192,0,0,3,128,64, + 0,0,3,0,96,0,0,7,0,96,0,0,7,0,96,0, + 0,7,0,224,0,0,7,0,192,0,0,7,129,192,0,0, + 7,131,128,0,0,3,199,0,0,0,3,238,0,0,0,1, + 248,0,0,0,0,248,7,255,128,1,248,0,252,0,3,252, + 0,112,0,7,62,0,112,0,14,63,0,96,0,28,31,0, + 96,0,60,15,128,192,0,56,7,192,192,0,120,7,193,128, + 0,120,3,225,128,0,240,1,243,0,0,240,1,254,0,0, + 240,0,254,0,0,240,0,124,0,0,248,0,62,0,0,248, + 0,62,1,0,120,0,127,1,0,60,0,207,130,0,30,3, + 135,252,0,15,254,1,248,0,3,10,10,11,4,26,224,224, + 224,224,224,224,64,64,64,64,11,46,92,18,5,246,0,64, + 0,224,1,192,3,128,3,0,6,0,14,0,12,0,28,0, + 24,0,56,0,48,0,48,0,112,0,96,0,96,0,96,0, + 224,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,224,0,96,0,96,0,96,0,112,0, + 48,0,48,0,56,0,24,0,28,0,12,0,14,0,6,0, + 3,0,3,128,1,192,0,224,0,64,11,45,90,18,2,246, + 64,0,96,0,112,0,56,0,28,0,12,0,14,0,6,0, + 3,0,3,0,3,128,1,128,1,192,0,192,0,192,0,192, + 0,224,0,96,0,96,0,96,0,96,0,96,0,96,0,96, + 0,96,0,96,0,96,0,96,0,96,0,224,0,192,0,192, + 0,192,1,128,1,128,3,128,3,0,7,0,6,0,14,0, + 12,0,24,0,56,0,112,0,224,0,18,20,60,25,4,14, + 0,224,0,1,224,0,1,224,0,1,224,0,96,195,128,240, + 135,192,248,143,192,124,159,128,7,248,0,1,224,0,1,224, + 0,6,184,0,124,143,128,248,135,192,240,195,192,97,193,128, + 1,224,0,1,224,0,1,224,0,0,224,0,41,41,246,45, + 2,248,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,255,255,255,255,255,128,255,255,255,255,255,128, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,7,15,15,14,4,247,120,252, + 252,254,126,6,6,6,4,12,8,24,48,96,64,12,3,6, + 18,3,11,255,240,255,240,255,240,6,5,5,14,4,1,120, + 252,252,252,120,16,46,92,22,3,246,0,3,0,3,0,3, + 0,6,0,6,0,6,0,12,0,12,0,12,0,24,0,24, + 0,24,0,48,0,48,0,48,0,48,0,96,0,96,0,96, + 0,192,0,192,0,192,1,128,1,128,1,128,3,0,3,0, + 3,0,6,0,6,0,6,0,12,0,12,0,12,0,24,0, + 24,0,24,0,48,0,48,0,48,0,96,0,96,0,96,0, + 96,0,192,0,192,0,23,34,102,28,2,0,0,124,0,1, + 199,0,7,1,128,6,0,192,14,0,224,28,0,112,60,0, + 120,60,0,120,56,0,56,120,0,60,120,0,60,120,0,60, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,120,0, + 60,120,0,60,120,0,60,120,0,60,60,0,120,60,0,120, + 28,0,112,28,0,112,14,0,224,7,1,192,3,131,128,0, + 254,0,17,34,102,28,6,0,0,64,0,0,64,0,0,192, + 0,0,192,0,1,192,0,7,192,0,255,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,255,255,128,255,255,128,21,34, + 102,28,4,0,3,252,0,14,31,0,16,7,192,32,3,224, + 96,1,240,64,1,240,192,0,240,192,0,248,224,0,248,252, + 0,248,254,0,248,126,0,248,126,0,240,62,1,240,0,1, + 224,0,3,192,0,3,128,0,7,0,0,14,0,0,28,0, + 0,112,0,0,224,0,1,192,0,3,0,0,6,0,16,12, + 0,16,24,0,16,16,0,16,48,0,48,48,0,112,127,255, + 240,127,255,240,127,255,240,127,255,240,21,34,102,28,4,0, + 3,248,0,14,31,0,24,7,128,48,3,192,112,3,192,120, + 1,224,124,1,224,126,1,224,126,1,224,60,1,224,0,1, + 224,0,3,192,0,3,192,0,7,128,0,14,0,15,248,0, + 31,143,0,14,3,128,0,3,224,0,1,224,0,1,240,0, + 0,248,0,0,248,0,0,248,60,0,248,126,0,248,254,0, + 248,254,0,248,252,1,240,224,1,240,224,3,224,96,3,192, + 48,15,0,15,254,0,23,34,102,28,3,0,0,1,128,0, + 1,128,0,3,128,0,7,128,0,7,128,0,15,128,0,31, + 128,0,31,128,0,55,128,0,119,128,0,231,128,0,199,128, + 1,199,128,3,135,128,3,7,128,6,7,128,14,7,128,12, + 7,128,24,7,128,56,7,128,48,7,128,96,7,128,224,7, + 128,255,255,254,0,7,128,0,7,128,0,7,128,0,7,128, + 0,7,128,0,7,128,0,7,128,0,7,128,3,255,254,3, + 255,254,21,35,105,28,4,0,48,0,64,60,3,192,63,255, + 128,63,255,0,63,252,0,55,240,0,48,0,0,48,0,0, + 48,0,0,48,0,0,48,0,0,48,0,0,48,0,0,51, + 254,0,60,7,128,56,3,192,48,1,224,48,1,240,48,1, + 240,0,0,240,0,0,248,0,0,248,0,0,248,0,0,248, + 60,0,248,126,0,248,254,0,248,254,0,240,252,1,240,248, + 1,224,240,1,224,112,3,192,112,7,128,60,31,0,15,252, + 0,21,34,102,28,4,0,0,126,0,1,193,128,3,128,192, + 7,0,64,14,0,224,28,1,224,28,3,224,56,3,224,56, + 3,192,120,0,0,120,0,0,120,0,0,120,0,0,240,126, + 0,241,255,128,243,131,192,247,1,224,254,1,240,252,0,240, + 252,0,240,248,0,248,248,0,120,248,0,120,248,0,120,120, + 0,120,120,0,120,120,0,248,120,0,240,56,0,240,60,0, + 224,28,1,224,14,3,192,7,7,128,1,254,0,19,34,102, + 28,5,0,255,255,224,255,255,224,255,255,224,255,255,224,224, + 0,224,192,0,64,128,0,64,128,0,192,128,0,128,128,1, + 128,0,1,128,0,3,0,0,2,0,0,6,0,0,12,0, + 0,24,0,0,24,0,0,48,0,0,112,0,0,112,0,0, + 224,0,0,224,0,1,224,0,1,224,0,3,224,0,3,224, + 0,3,224,0,7,240,0,7,240,0,7,240,0,7,240,0, + 7,240,0,3,240,0,3,224,0,23,34,102,28,3,0,1, + 254,0,7,135,128,30,1,192,56,0,224,120,0,112,112,0, + 112,240,0,56,240,0,56,240,0,56,240,0,56,248,0,56, + 252,0,112,126,0,112,127,192,224,63,241,192,31,255,0,7, + 255,128,7,255,224,12,63,248,56,7,252,112,1,252,112,0, + 126,224,0,62,224,0,62,224,0,62,224,0,30,224,0,30, + 224,0,28,96,0,60,112,0,56,48,0,120,24,0,240,14, + 1,192,3,255,0,21,34,102,28,4,0,1,248,0,7,142, + 0,14,3,0,28,1,128,56,1,192,120,1,224,120,0,224, + 120,0,240,240,0,240,240,0,240,240,0,240,240,0,248,240, + 0,248,248,0,248,120,1,248,120,1,248,120,3,248,60,7, + 120,30,14,120,15,252,120,3,240,120,0,0,240,0,0,240, + 0,0,240,0,0,240,60,0,224,124,0,224,124,1,192,124, + 1,192,120,3,128,112,3,0,56,6,0,28,28,0,15,248, + 0,6,22,22,14,4,1,120,252,252,252,120,0,0,0,0, + 0,0,0,0,0,0,0,0,120,252,252,252,120,7,31,31, + 14,4,248,120,252,252,252,120,0,0,0,0,0,0,0,0, + 0,0,0,120,252,252,254,126,14,6,6,4,12,8,24,48, + 96,64,38,40,200,46,4,249,0,0,0,0,28,0,0,0, + 0,120,0,0,0,1,240,0,0,0,7,192,0,0,0,15, + 0,0,0,0,60,0,0,0,0,240,0,0,0,3,192,0, + 0,0,15,0,0,0,0,62,0,0,0,0,248,0,0,0, + 1,224,0,0,0,7,128,0,0,0,30,0,0,0,0,120, + 0,0,0,1,224,0,0,0,7,192,0,0,0,31,0,0, + 0,0,60,0,0,0,0,240,0,0,0,0,240,0,0,0, + 0,124,0,0,0,0,31,0,0,0,0,7,128,0,0,0, + 1,224,0,0,0,0,120,0,0,0,0,30,0,0,0,0, + 7,128,0,0,0,3,224,0,0,0,0,248,0,0,0,0, + 60,0,0,0,0,15,0,0,0,0,3,192,0,0,0,0, + 240,0,0,0,0,60,0,0,0,0,31,0,0,0,0,7, + 192,0,0,0,1,224,0,0,0,0,120,0,0,0,0,28, + 41,11,66,45,2,7,255,255,255,255,255,128,255,255,255,255, + 255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255, + 255,128,255,255,255,255,255,128,38,40,200,46,4,249,224,0, + 0,0,0,120,0,0,0,0,62,0,0,0,0,15,128,0, + 0,0,3,192,0,0,0,0,240,0,0,0,0,60,0,0, + 0,0,15,0,0,0,0,3,192,0,0,0,1,240,0,0, + 0,0,124,0,0,0,0,30,0,0,0,0,7,128,0,0, + 0,1,224,0,0,0,0,120,0,0,0,0,30,0,0,0, + 0,15,128,0,0,0,3,224,0,0,0,0,240,0,0,0, + 0,60,0,0,0,0,60,0,0,0,0,248,0,0,0,3, + 224,0,0,0,7,128,0,0,0,30,0,0,0,0,120,0, + 0,0,1,224,0,0,0,7,128,0,0,0,31,0,0,0, + 0,124,0,0,0,0,240,0,0,0,3,192,0,0,0,15, + 0,0,0,0,60,0,0,0,0,240,0,0,0,3,224,0, + 0,0,15,128,0,0,0,30,0,0,0,0,120,0,0,0, + 0,224,0,0,0,0,18,34,102,23,3,0,7,240,0,28, + 60,0,48,15,0,96,7,128,192,7,128,192,3,192,192,3, + 192,248,3,192,252,3,192,124,7,192,56,7,128,0,15,128, + 0,31,0,0,62,0,0,124,0,0,240,0,0,224,0,1, + 192,0,3,0,0,6,0,0,14,8,0,12,8,0,12,8, + 0,12,8,0,6,16,0,3,224,0,0,0,0,0,0,0, + 0,0,0,1,224,0,3,240,0,3,240,0,3,240,0,1, + 224,0,35,36,180,40,2,0,0,3,254,0,0,0,30,7, + 192,0,0,112,0,112,0,1,192,0,24,0,3,128,0,12, + 0,7,0,0,6,0,14,0,0,3,0,28,0,120,1,0, + 24,1,196,225,128,56,7,7,224,128,48,14,3,224,192,112, + 12,3,192,192,96,28,3,192,64,96,56,3,192,96,224,56, + 3,192,96,192,120,3,128,96,192,112,7,128,96,192,112,7, + 128,96,192,240,7,128,96,192,224,7,0,96,192,224,15,0, + 224,192,224,15,0,192,192,224,14,0,192,96,224,30,1,128, + 96,224,62,1,128,96,224,62,3,0,96,96,78,6,0,48, + 49,143,12,0,48,31,7,240,0,24,0,0,0,0,12,0, + 0,0,0,6,0,0,0,0,3,0,0,0,0,1,192,0, + 112,0,0,112,1,192,0,0,31,255,0,0,34,35,175,37, + 2,0,0,0,192,0,0,0,0,192,0,0,0,0,224,0, + 0,0,1,224,0,0,0,1,224,0,0,0,3,240,0,0, + 0,3,240,0,0,0,3,240,0,0,0,6,248,0,0,0, + 6,248,0,0,0,6,248,0,0,0,12,124,0,0,0,12, + 124,0,0,0,12,124,0,0,0,24,62,0,0,0,24,62, + 0,0,0,24,30,0,0,0,48,31,0,0,0,48,31,0, + 0,0,48,15,0,0,0,96,15,128,0,0,96,15,128,0, + 0,96,7,128,0,0,255,255,192,0,0,255,255,192,0,0, + 192,3,192,0,1,128,3,224,0,1,128,3,224,0,3,128, + 1,224,0,3,0,1,240,0,3,0,1,240,0,7,0,0, + 240,0,7,0,0,248,0,31,128,1,252,0,255,248,31,255, + 192,28,35,140,34,3,0,255,255,240,0,7,192,62,0,7, + 128,15,0,7,128,7,128,7,128,3,192,7,128,1,224,7, + 128,1,224,7,128,1,224,7,128,1,224,7,128,1,224,7, + 128,1,224,7,128,1,224,7,128,3,192,7,128,3,128,7, + 128,7,0,7,128,30,0,7,255,240,0,7,128,62,0,7, + 128,15,0,7,128,7,128,7,128,3,192,7,128,3,224,7, + 128,1,224,7,128,1,240,7,128,1,240,7,128,1,240,7, + 128,1,240,7,128,1,240,7,128,1,240,7,128,3,224,7, + 128,3,224,7,128,7,192,7,128,15,128,7,192,62,0,255, + 255,240,0,26,36,144,32,3,0,0,63,0,128,0,225,224, + 128,3,128,113,128,7,0,63,128,14,0,31,128,30,0,15, + 128,28,0,7,128,60,0,3,128,60,0,3,128,124,0,3, + 128,120,0,1,128,120,0,1,128,120,0,0,128,248,0,0, + 128,248,0,0,0,248,0,0,0,248,0,0,0,248,0,0, + 0,248,0,0,0,248,0,0,0,248,0,0,0,248,0,0, + 0,248,0,0,0,120,0,0,192,120,0,0,192,120,0,0, + 192,60,0,0,192,60,0,0,128,60,0,1,128,28,0,1, + 128,14,0,3,0,14,0,3,0,7,0,6,0,3,128,12, + 0,0,224,56,0,0,127,224,0,33,35,175,38,3,0,255, + 255,252,0,0,7,192,15,0,0,7,128,3,192,0,7,128, + 0,224,0,7,128,0,112,0,7,128,0,120,0,7,128,0, + 60,0,7,128,0,62,0,7,128,0,30,0,7,128,0,31, + 0,7,128,0,31,0,7,128,0,15,0,7,128,0,15,0, + 7,128,0,15,128,7,128,0,15,128,7,128,0,15,128,7, + 128,0,15,128,7,128,0,15,128,7,128,0,15,128,7,128, + 0,15,128,7,128,0,15,128,7,128,0,15,128,7,128,0, + 15,0,7,128,0,31,0,7,128,0,31,0,7,128,0,30, + 0,7,128,0,30,0,7,128,0,60,0,7,128,0,60,0, + 7,128,0,120,0,7,128,0,112,0,7,128,0,224,0,7, + 128,3,192,0,7,192,15,0,0,255,255,252,0,0,28,35, + 140,34,3,0,255,255,255,240,7,192,7,240,7,128,1,240, + 7,128,0,240,7,128,0,112,7,128,0,112,7,128,0,48, + 7,128,0,48,7,128,0,48,7,128,0,16,7,128,32,16, + 7,128,32,16,7,128,32,0,7,128,96,0,7,128,96,0, + 7,128,96,0,7,128,224,0,7,255,224,0,7,129,224,0, + 7,128,96,0,7,128,96,0,7,128,96,0,7,128,32,16, + 7,128,32,16,7,128,32,16,7,128,0,16,7,128,0,48, + 7,128,0,48,7,128,0,48,7,128,0,112,7,128,0,112, + 7,128,0,240,7,128,1,240,255,255,255,240,255,255,255,240, + 27,35,140,34,4,0,255,255,255,224,15,128,15,224,7,128, + 3,224,7,128,1,224,7,128,0,224,7,128,0,224,7,128, + 0,96,7,128,0,96,7,128,0,96,7,128,0,32,7,128, + 32,32,7,128,32,32,7,128,32,0,7,128,96,0,7,128, + 96,0,7,128,96,0,7,128,224,0,7,255,224,0,7,129, + 224,0,7,128,96,0,7,128,96,0,7,128,96,0,7,128, + 32,0,7,128,32,0,7,128,32,0,7,128,0,0,7,128, + 0,0,7,128,0,0,7,128,0,0,7,128,0,0,7,128, + 0,0,7,128,0,0,7,128,0,0,15,128,0,0,255,254, + 0,0,30,36,144,34,3,0,0,63,128,192,0,224,224,192, + 3,128,56,192,7,0,29,192,14,0,15,192,14,0,7,192, + 28,0,7,192,60,0,3,192,60,0,3,192,124,0,1,192, + 120,0,1,192,120,0,0,192,120,0,0,192,248,0,0,192, + 248,0,0,0,248,0,0,0,248,0,0,0,248,0,0,0, + 248,0,255,252,248,0,255,252,248,0,7,192,248,0,7,192, + 248,0,7,192,248,0,7,192,120,0,7,192,120,0,7,192, + 124,0,7,192,60,0,7,192,60,0,7,192,28,0,15,192, + 30,0,15,192,14,0,28,192,7,0,24,192,3,0,48,192, + 1,192,224,192,0,127,128,192,33,35,175,38,3,0,255,252, + 31,255,128,7,192,0,248,0,7,128,0,240,0,7,128,0, + 240,0,7,128,0,240,0,7,128,0,240,0,7,128,0,240, + 0,7,128,0,240,0,7,128,0,240,0,7,128,0,240,0, + 7,128,0,240,0,7,128,0,240,0,7,128,0,240,0,7, + 128,0,240,0,7,128,0,240,0,7,128,0,240,0,7,255, + 255,240,0,7,128,0,240,0,7,128,0,240,0,7,128,0, + 240,0,7,128,0,240,0,7,128,0,240,0,7,128,0,240, + 0,7,128,0,240,0,7,128,0,240,0,7,128,0,240,0, + 7,128,0,240,0,7,128,0,240,0,7,128,0,240,0,7, + 128,0,240,0,7,128,0,240,0,7,128,0,240,0,7,128, + 0,240,0,7,192,0,248,0,255,252,31,255,128,14,35,70, + 19,3,0,255,252,7,192,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,192,255,252,23,35,105,27,2,0,0, + 127,254,0,7,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,60,3,192,126,3,192,254,3,192, + 254,3,192,252,3,192,224,3,128,224,7,128,96,7,0,112, + 14,0,56,28,0,15,248,0,32,35,140,37,3,0,255,252, + 63,254,7,192,15,240,7,128,7,192,7,128,3,128,7,128, + 7,0,7,128,6,0,7,128,12,0,7,128,28,0,7,128, + 56,0,7,128,112,0,7,128,224,0,7,129,192,0,7,129, + 128,0,7,131,128,0,7,135,128,0,7,143,192,0,7,155, + 224,0,7,179,224,0,7,225,240,0,7,193,240,0,7,128, + 248,0,7,128,248,0,7,128,124,0,7,128,124,0,7,128, + 62,0,7,128,62,0,7,128,31,0,7,128,31,0,7,128, + 15,128,7,128,15,192,7,128,7,192,7,128,7,224,7,128, + 3,224,7,192,7,248,255,252,127,255,27,35,140,33,3,0, + 255,254,0,0,7,192,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,32,7,128,0,96, + 7,128,0,96,7,128,0,96,7,128,0,96,7,128,0,224, + 7,128,0,224,7,128,0,224,7,128,1,224,7,128,3,224, + 7,128,7,224,255,255,255,224,255,255,255,224,36,35,175,41, + 3,0,255,224,0,63,240,7,224,0,62,0,7,224,0,126, + 0,7,240,0,94,0,7,240,0,94,0,6,240,0,222,0, + 6,248,0,222,0,6,248,0,158,0,6,120,0,158,0,6, + 120,1,158,0,6,124,1,158,0,6,60,1,30,0,6,60, + 1,30,0,6,62,3,30,0,6,62,3,30,0,6,30,2, + 30,0,6,30,2,30,0,6,31,6,30,0,6,15,4,30, + 0,6,15,4,30,0,6,15,140,30,0,6,7,140,30,0, + 6,7,136,30,0,6,7,200,30,0,6,7,216,30,0,6, + 3,216,30,0,6,3,208,30,0,6,3,240,30,0,6,1, + 240,30,0,6,1,240,30,0,6,1,224,30,0,6,0,224, + 30,0,15,0,224,30,0,31,128,192,62,0,255,240,195,255, + 240,33,36,180,38,3,255,255,192,7,255,128,7,192,0,252, + 0,7,224,0,120,0,7,240,0,48,0,7,240,0,48,0, + 7,248,0,48,0,6,248,0,48,0,6,124,0,48,0,6, + 126,0,48,0,6,62,0,48,0,6,31,0,48,0,6,31, + 0,48,0,6,15,128,48,0,6,15,192,48,0,6,7,192, + 48,0,6,3,224,48,0,6,3,224,48,0,6,1,240,48, + 0,6,1,248,48,0,6,0,248,48,0,6,0,124,48,0, + 6,0,124,48,0,6,0,62,48,0,6,0,63,48,0,6, + 0,31,48,0,6,0,15,176,0,6,0,15,176,0,6,0, + 7,240,0,6,0,7,240,0,6,0,3,240,0,6,0,1, + 240,0,6,0,1,240,0,15,0,0,240,0,31,128,0,112, + 0,255,240,0,112,0,0,0,0,48,0,28,36,144,33,3, + 0,0,31,128,0,0,240,240,0,1,192,56,0,3,128,28, + 0,7,0,14,0,14,0,7,0,30,0,7,128,28,0,3, + 128,60,0,3,192,60,0,3,192,124,0,3,224,120,0,1, + 224,120,0,1,224,248,0,1,224,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,120,0,1, + 224,120,0,1,224,124,0,3,224,124,0,3,224,60,0,3, + 192,60,0,3,192,30,0,7,128,14,0,7,0,14,0,15, + 0,7,0,14,0,3,128,28,0,0,224,112,0,0,127,224, + 0,28,35,140,33,3,0,255,255,240,0,7,192,30,0,7, + 128,7,128,7,128,7,192,7,128,3,224,7,128,3,224,7, + 128,1,240,7,128,1,240,7,128,1,240,7,128,1,240,7, + 128,1,240,7,128,1,240,7,128,3,224,7,128,3,224,7, + 128,7,192,7,128,7,128,7,128,30,0,7,255,248,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,128,0,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,128,0,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,128,0,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,192,0,0,255, + 254,0,0,28,44,176,33,3,248,0,31,128,0,0,240,240, + 0,1,192,56,0,3,128,28,0,7,0,14,0,14,0,7, + 0,30,0,7,128,28,0,3,128,60,0,3,192,60,0,3, + 192,124,0,3,224,120,0,1,224,120,0,1,224,248,0,1, + 224,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,120,0,1,224,120,0,1,224,124,0,3, + 224,124,0,3,224,60,15,3,192,60,25,195,192,30,48,199, + 128,14,96,231,128,15,96,111,0,7,96,126,0,3,224,124, + 16,0,240,120,16,0,127,240,16,0,0,112,16,0,0,112, + 16,0,0,120,48,0,0,120,32,0,0,124,96,0,0,63, + 192,0,0,63,192,0,0,15,0,30,35,140,35,3,0,255, + 255,248,0,7,192,62,0,7,128,15,128,7,128,7,192,7, + 128,7,192,7,128,3,224,7,128,3,224,7,128,3,224,7, + 128,3,224,7,128,3,224,7,128,3,192,7,128,7,192,7, + 128,7,128,7,128,15,0,7,128,60,0,7,255,224,0,7, + 128,240,0,7,128,56,0,7,128,28,0,7,128,30,0,7, + 128,30,0,7,128,31,0,7,128,15,0,7,128,15,0,7, + 128,15,0,7,128,15,0,7,128,15,128,7,128,15,132,7, + 128,15,132,7,128,15,132,7,128,15,132,7,128,15,140,7, + 128,7,248,7,192,7,248,255,254,3,240,23,36,108,30,4, + 0,3,240,0,14,28,24,56,7,24,48,3,248,112,1,248, + 96,0,248,224,0,120,224,0,56,224,0,56,224,0,56,224, + 0,24,240,0,24,248,0,8,126,0,8,127,192,0,63,240, + 0,31,252,0,15,255,128,3,255,224,0,255,240,128,63,248, + 128,7,252,128,1,252,192,0,126,192,0,62,192,0,30,224, + 0,14,224,0,14,240,0,14,240,0,14,248,0,12,252,0, + 28,222,0,24,199,0,48,195,128,96,128,255,192,28,35,140, + 35,4,0,255,255,255,240,254,15,131,240,248,15,1,240,240, + 15,0,240,224,15,0,112,192,15,0,112,192,15,0,48,192, + 15,0,48,192,15,0,48,128,15,0,16,128,15,0,16,128, + 15,0,16,128,15,0,16,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,128,0,3,255,254,0,34, + 35,175,39,3,0,255,252,3,255,192,7,192,0,126,0,7, + 128,0,60,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,7,128,0,24, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,3,192,0,24, + 0,3,192,0,48,0,3,192,0,48,0,1,224,0,96,0, + 0,224,0,96,0,0,112,0,192,0,0,60,3,128,0,0, + 15,254,0,0,34,36,180,37,2,255,255,255,7,255,192,15, + 240,0,126,0,3,224,0,56,0,3,224,0,56,0,3,240, + 0,48,0,1,240,0,48,0,1,240,0,48,0,0,248,0, + 96,0,0,248,0,96,0,0,248,0,96,0,0,124,0,192, + 0,0,124,0,192,0,0,124,0,192,0,0,62,0,192,0, + 0,62,1,128,0,0,62,1,128,0,0,31,1,128,0,0, + 31,3,0,0,0,31,3,0,0,0,15,131,0,0,0,15, + 134,0,0,0,15,134,0,0,0,7,198,0,0,0,7,204, + 0,0,0,3,204,0,0,0,3,236,0,0,0,3,232,0, + 0,0,1,248,0,0,0,1,248,0,0,0,1,248,0,0, + 0,0,240,0,0,0,0,240,0,0,0,0,240,0,0,0, + 0,96,0,0,0,0,96,0,0,0,0,96,0,0,49,36, + 252,52,2,255,255,254,127,255,15,255,128,15,240,15,248,1, + 248,0,3,224,3,240,0,240,0,3,224,3,224,0,96,0, + 3,224,3,240,0,96,0,1,240,3,240,0,96,0,1,240, + 3,240,0,192,0,1,240,3,240,0,192,0,0,240,7,248, + 0,192,0,0,248,6,248,0,128,0,0,248,6,248,1,128, + 0,0,248,6,124,1,128,0,0,120,14,124,1,128,0,0, + 124,12,124,3,0,0,0,124,12,62,3,0,0,0,60,28, + 62,3,0,0,0,60,24,62,6,0,0,0,60,24,30,6, + 0,0,0,62,24,31,6,0,0,0,30,56,31,12,0,0, + 0,30,48,31,12,0,0,0,30,48,15,140,0,0,0,15, + 48,15,152,0,0,0,15,112,15,152,0,0,0,15,96,7, + 216,0,0,0,15,96,7,208,0,0,0,7,224,7,240,0, + 0,0,7,192,3,240,0,0,0,7,192,3,240,0,0,0, + 3,192,3,224,0,0,0,3,192,3,224,0,0,0,3,128, + 1,224,0,0,0,1,128,1,192,0,0,0,1,128,1,192, + 0,0,0,1,128,0,192,0,0,0,1,0,0,128,0,0, + 33,35,175,36,2,0,127,255,31,255,0,3,240,3,240,0, + 1,240,1,224,0,1,240,1,192,0,0,248,1,128,0,0, + 120,3,0,0,0,124,3,0,0,0,60,6,0,0,0,62, + 14,0,0,0,31,12,0,0,0,31,24,0,0,0,15,152, + 0,0,0,15,176,0,0,0,7,224,0,0,0,7,224,0, + 0,0,3,224,0,0,0,3,224,0,0,0,1,240,0,0, + 0,3,240,0,0,0,3,248,0,0,0,6,248,0,0,0, + 14,124,0,0,0,12,124,0,0,0,24,62,0,0,0,56, + 62,0,0,0,48,31,0,0,0,96,31,0,0,0,224,15, + 128,0,0,192,15,128,0,1,128,7,192,0,3,128,7,192, + 0,3,128,3,224,0,7,128,3,240,0,31,192,3,248,0, + 255,248,63,255,128,32,35,140,35,2,0,255,254,15,255,15, + 224,1,248,7,224,0,240,3,224,0,96,3,240,0,64,1, + 240,0,192,1,248,0,128,0,248,0,128,0,252,1,0,0, + 124,3,0,0,62,2,0,0,62,6,0,0,31,4,0,0, + 31,12,0,0,15,136,0,0,7,216,0,0,7,208,0,0, + 3,240,0,0,3,224,0,0,1,224,0,0,1,224,0,0, + 1,224,0,0,1,224,0,0,1,224,0,0,1,224,0,0, + 1,224,0,0,1,224,0,0,1,224,0,0,1,224,0,0, + 1,224,0,0,1,224,0,0,1,224,0,0,1,224,0,0, + 1,240,0,0,127,255,192,26,35,140,32,3,0,63,255,255, + 192,63,128,15,128,62,0,31,128,60,0,31,0,56,0,62, + 0,56,0,62,0,48,0,124,0,48,0,252,0,96,0,248, + 0,96,1,240,0,64,3,240,0,64,3,224,0,0,7,192, + 0,0,7,192,0,0,15,128,0,0,31,128,0,0,31,0, + 0,0,62,0,0,0,126,0,0,0,124,0,0,0,252,0, + 0,0,248,0,64,1,240,0,64,3,240,0,64,3,224,0, + 192,7,192,0,192,7,192,0,192,15,128,1,192,31,128,1, + 192,31,0,3,192,62,0,3,192,126,0,7,192,124,0,15, + 128,248,0,63,128,255,255,255,128,10,45,90,19,6,247,255, + 192,254,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,254,0,255,192,16,46,92,22,3,246,192, + 0,192,0,192,0,96,0,96,0,96,0,48,0,48,0,48, + 0,24,0,24,0,24,0,12,0,12,0,12,0,6,0,6, + 0,6,0,2,0,3,0,3,0,3,0,1,128,1,128,1, + 128,0,192,0,192,0,192,0,96,0,96,0,96,0,48,0, + 48,0,48,0,24,0,24,0,24,0,12,0,12,0,12,0, + 6,0,6,0,6,0,3,0,3,0,3,10,45,90,19,3, + 247,255,192,31,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,31,192,255,192,22,18,54,28,3, + 17,0,16,0,0,48,0,0,56,0,0,120,0,0,108,0, + 0,206,0,1,198,0,1,131,0,3,3,0,7,1,128,6, + 1,192,14,0,192,28,0,96,24,0,112,56,0,48,48,0, + 56,96,0,24,224,0,12,25,2,8,25,0,248,255,255,255, + 128,255,255,255,128,8,9,9,22,4,25,224,240,240,120,60, + 12,6,3,1,21,22,66,24,2,1,7,248,0,24,30,0, + 16,15,0,48,7,0,56,7,128,60,7,128,62,7,128,28, + 7,128,0,7,128,0,31,128,3,247,128,31,7,128,60,7, + 128,120,7,128,248,7,128,240,7,128,240,15,136,240,15,136, + 240,23,136,248,23,152,120,39,240,63,195,240,22,35,105,25, + 1,0,255,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,31,128,15,32,224,15, + 64,240,15,192,112,15,128,120,15,128,120,15,0,120,15,0, + 60,15,0,60,15,0,60,15,0,60,15,0,60,15,0,60, + 15,0,60,15,0,60,15,0,120,15,0,120,15,128,120,13, + 128,112,12,192,224,12,96,224,8,63,128,17,22,66,21,2, + 1,7,252,0,14,6,0,28,3,0,56,3,0,56,3,128, + 120,15,128,120,15,128,240,15,128,240,7,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,128,120,0, + 128,120,0,128,56,1,0,56,1,0,28,2,0,14,6,0, + 7,248,0,22,35,105,25,2,0,0,63,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 15,227,192,28,19,192,60,11,192,56,15,192,120,7,192,120, + 7,192,120,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,120,3,192, + 120,3,192,120,7,192,56,7,192,60,15,192,28,27,192,7, + 243,252,18,22,66,22,2,1,7,248,0,14,28,0,28,14, + 0,56,15,0,56,7,128,120,7,128,120,7,128,240,7,192, + 240,7,192,240,7,192,255,255,192,240,0,0,240,0,0,240, + 0,0,240,0,128,120,0,128,120,0,128,120,1,128,56,1, + 0,28,3,0,14,6,0,7,252,0,16,35,70,16,1,0, + 0,248,3,198,7,3,15,7,14,15,14,15,30,15,30,6, + 30,0,30,0,30,0,30,0,30,0,255,240,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,255,240,23,33,99,27,3,246,7,252,124,30, + 14,206,60,7,142,124,7,158,120,3,222,120,3,192,120,3, + 192,120,3,192,120,3,192,120,3,192,60,7,128,28,7,128, + 14,14,0,3,248,0,28,0,0,96,0,0,192,0,0,192, + 0,0,224,0,0,255,255,128,127,255,224,15,255,240,28,0, + 112,48,0,56,96,0,24,192,0,24,192,0,24,192,0,24, + 192,0,48,96,0,48,120,0,96,30,7,192,3,254,0,24, + 35,105,27,1,0,255,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,15,192,15, + 48,240,15,32,112,15,64,120,15,128,120,15,128,120,15,0, + 120,15,0,120,15,0,120,15,0,120,15,0,120,15,0,120, + 15,0,120,15,0,120,15,0,120,15,0,120,15,0,120,15, + 0,120,15,0,120,15,0,120,15,0,120,255,195,255,10,34, + 68,14,2,0,28,0,62,0,62,0,62,0,28,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,254,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,255,192,13,45,90,16,254,245,0,112, + 0,248,0,248,0,248,0,112,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,15,248,0,120,0,120,0,120,0,120, + 0,120,0,120,0,120,0,120,0,120,0,120,0,120,0,120, + 0,120,0,120,0,120,0,120,0,120,0,120,0,120,0,120, + 0,120,0,120,0,120,0,120,0,120,240,120,240,120,240,112, + 224,240,96,224,115,192,31,0,22,35,105,24,1,0,254,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,15,252,30,3,224,30,1,128,30,3, + 0,30,6,0,30,6,0,30,12,0,30,24,0,30,48,0, + 30,120,0,30,248,0,30,188,0,31,190,0,31,30,0,30, + 15,0,30,15,128,30,7,128,30,3,192,30,3,224,30,1, + 224,30,3,240,255,207,252,11,35,70,13,1,0,254,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,255,224,36,22,110,40,2,1,254,63,129,252,0,30,97, + 195,14,0,30,193,230,15,0,30,128,228,7,128,31,0,248, + 7,128,31,0,248,7,128,30,0,240,7,128,30,0,240,7, + 128,30,0,240,7,128,30,0,240,7,128,30,0,240,7,128, + 30,0,240,7,128,30,0,240,7,128,30,0,240,7,128,30, + 0,240,7,128,30,0,240,7,128,30,0,240,7,128,30,0, + 240,7,128,30,0,240,7,128,30,0,240,7,128,30,0,240, + 7,128,255,199,254,63,240,23,22,66,27,2,1,254,31,128, + 30,97,224,30,192,224,30,128,240,31,0,240,31,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,255,199,254,19, + 22,66,24,2,1,3,252,0,14,14,0,28,7,0,60,3, + 128,56,3,192,120,3,192,120,1,224,248,1,224,240,1,224, + 240,1,224,240,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,120,1,224,120,3,192,56,3,192,60,3,128,28,7, + 0,14,14,0,3,252,0,22,33,99,25,1,246,254,63,128, + 30,97,192,30,192,224,31,128,112,31,0,120,31,0,120,30, + 0,120,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,120,30,0,120, + 31,0,120,31,0,112,31,128,224,30,192,192,30,127,128,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,255,224,0, + 22,33,99,25,2,246,7,240,64,28,24,192,28,12,192,56, + 12,192,120,7,192,120,7,192,120,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,120,3,192,120,3,192,120,7,192,56,7,192,60, + 15,192,28,27,192,7,243,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,31,252,17,22,66,20,2,1,254, + 31,0,30,35,128,30,67,128,30,207,128,30,143,128,31,143, + 0,31,2,0,31,0,0,31,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,255,192, + 0,17,22,66,22,3,1,31,226,0,112,50,0,96,30,0, + 192,14,0,192,6,0,224,2,0,240,2,0,252,0,0,127, + 0,0,63,192,0,31,248,0,7,254,0,128,255,0,192,31, + 0,192,7,128,224,3,128,224,1,128,240,1,128,240,1,128, + 248,3,0,198,7,0,131,252,0,14,32,64,17,1,0,2, + 0,2,0,2,0,2,0,2,0,6,0,6,0,6,0,14, + 0,30,0,255,248,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,4,30,4,30,4,30,12,15,8,15,248,7,240,23, + 22,66,27,2,0,254,7,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,1,240,30,1,240,30,1,240,30,2,240,14,6, + 240,15,12,240,3,240,254,24,23,69,26,1,255,255,225,255, + 31,0,124,15,0,48,15,0,48,15,0,32,7,128,96,7, + 128,96,3,192,64,3,192,192,1,192,192,1,224,128,1,225, + 128,0,241,128,0,241,0,0,113,0,0,123,0,0,58,0, + 0,62,0,0,62,0,0,28,0,0,28,0,0,12,0,0, + 8,0,36,23,115,38,1,255,255,231,255,31,240,31,1,248, + 7,128,31,0,240,3,0,15,0,120,3,0,15,0,120,2, + 0,7,128,120,6,0,7,128,252,6,0,3,128,252,4,0, + 3,192,188,12,0,3,192,158,12,0,1,225,158,8,0,1, + 225,14,24,0,0,225,15,24,0,0,243,15,16,0,0,242, + 7,48,0,0,114,7,176,0,0,126,7,160,0,0,62,3, + 224,0,0,60,3,192,0,0,28,1,192,0,0,28,1,192, + 0,0,24,1,128,0,0,8,0,128,0,22,22,66,26,2, + 0,255,207,248,31,3,192,31,3,128,15,3,0,7,131,0, + 7,198,0,3,196,0,1,236,0,1,248,0,0,240,0,0, + 112,0,0,120,0,0,124,0,0,220,0,1,158,0,1,15, + 0,3,15,0,6,7,128,4,7,192,12,3,192,28,3,224, + 255,15,252,24,33,99,26,1,245,255,225,255,31,0,120,15, + 0,48,15,0,48,7,0,32,7,128,96,7,128,96,3,192, + 64,3,192,192,3,192,192,1,224,128,1,225,128,0,225,128, + 0,241,128,0,241,0,0,115,0,0,123,0,0,122,0,0, + 62,0,0,62,0,0,60,0,0,28,0,0,28,0,0,24, + 0,0,24,0,0,24,0,24,48,0,60,48,0,60,48,0, + 60,96,0,56,96,0,31,192,0,15,0,0,17,22,66,22, + 2,0,255,255,128,248,7,128,224,15,0,224,31,0,192,30, + 0,192,60,0,128,124,0,128,120,0,0,240,0,1,240,0, + 1,224,0,3,192,0,7,192,0,7,128,128,15,0,128,31, + 0,128,30,0,128,60,1,128,124,1,128,120,3,128,240,15, + 128,255,255,128,11,45,90,21,6,247,0,224,1,128,7,0, + 14,0,12,0,28,0,28,0,28,0,28,0,30,0,30,0, + 14,0,14,0,15,0,15,0,7,0,7,0,7,0,7,0, + 6,0,4,0,24,0,224,0,56,0,12,0,6,0,6,0, + 7,0,7,0,7,0,15,0,15,0,15,0,14,0,30,0, + 30,0,28,0,28,0,28,0,28,0,12,0,12,0,6,0, + 3,128,0,224,2,46,46,14,6,246,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,11,45,90,20,4,247,192,0, + 112,0,28,0,12,0,6,0,7,0,7,0,7,0,7,0, + 15,0,15,0,14,0,30,0,30,0,30,0,28,0,28,0, + 28,0,28,0,12,0,4,0,3,0,0,224,3,0,6,0, + 12,0,28,0,28,0,28,0,28,0,30,0,30,0,30,0, + 14,0,15,0,15,0,7,0,7,0,7,0,7,0,6,0, + 6,0,12,0,56,0,224,0,28,9,36,32,2,8,31,128, + 0,192,127,240,0,96,127,252,0,48,227,255,0,48,192,127, + 224,48,192,31,248,112,192,3,255,224,96,0,255,192,48,0, + 31,128,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,14,0,0,6,33,33,14,4,246,120, + 252,252,252,120,0,0,48,48,48,48,48,48,48,48,48,48, + 48,120,120,120,120,120,120,248,252,252,252,252,252,252,252,120, + 17,34,102,28,5,250,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,0,192,0,7,252,0,14,198,0,28,195, + 0,56,195,128,120,195,128,120,207,128,120,207,128,248,207,128, + 240,199,0,240,192,0,240,192,0,240,192,0,240,192,0,240, + 192,0,248,192,128,120,192,128,120,192,128,120,193,128,56,193, + 0,28,195,0,14,198,0,7,252,0,0,192,0,0,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,28,34,136,35, + 3,0,0,0,126,0,0,1,227,128,0,3,128,192,0,7, + 0,192,0,14,0,224,0,14,1,224,0,28,3,224,0,28, + 3,224,0,60,3,192,0,60,0,128,0,60,0,0,0,60, + 0,0,0,60,0,0,0,60,0,0,0,60,0,0,31,252, + 0,0,0,127,248,0,0,124,0,0,0,124,0,0,0,60, + 0,0,0,60,0,0,0,60,0,0,0,60,0,0,0,60, + 0,0,0,56,0,0,0,56,0,16,62,56,0,32,99,240, + 0,32,193,240,0,96,128,120,0,64,128,254,0,192,128,159, + 255,128,193,7,255,0,126,1,254,0,24,24,72,28,2,5, + 64,0,2,224,126,7,115,255,206,63,129,252,30,0,120,28, + 0,56,56,0,24,48,0,12,48,0,12,96,0,6,96,0, + 6,96,0,6,96,0,6,96,0,6,96,0,6,112,0,12, + 48,0,12,56,0,28,28,0,56,30,0,120,63,129,252,115, + 255,206,224,126,7,64,0,2,27,33,132,29,1,0,255,224, + 127,224,31,0,15,0,15,0,6,0,15,128,6,0,7,128, + 12,0,7,192,12,0,3,192,24,0,3,224,24,0,1,224, + 48,0,1,240,32,0,0,240,96,0,0,248,64,0,0,248, + 192,0,0,124,128,0,0,125,128,0,0,63,0,0,0,63, + 0,0,15,255,252,0,0,30,0,0,0,30,0,0,0,30, + 0,0,15,255,252,0,0,30,0,0,0,30,0,0,0,30, + 0,0,0,30,0,0,0,30,0,0,0,30,0,0,0,30, + 0,0,0,30,0,0,0,30,0,0,0,31,0,0,3,255, + 240,0,2,44,44,14,6,248,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,0,0,0,0,0,0, + 0,0,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,18,43,129,31,5,247,1,240,0,6,24,0, + 12,12,0,24,30,0,56,62,0,56,62,0,56,62,0,56, + 8,0,60,0,0,30,0,0,31,0,0,15,128,0,7,192, + 0,15,224,0,25,240,0,48,252,0,96,126,0,64,63,0, + 192,15,128,192,7,128,192,3,192,224,1,192,240,0,192,120, + 0,192,124,0,192,62,0,128,31,1,128,15,131,0,7,198, + 0,3,248,0,1,240,0,0,248,0,0,124,0,0,60,0, + 0,30,0,0,14,0,30,14,0,62,14,0,62,14,0,60, + 12,0,24,28,0,12,56,0,7,224,0,14,5,10,22,4, + 27,112,56,248,124,248,124,248,124,112,56,35,36,180,40,3, + 0,0,7,252,0,0,0,60,7,128,0,0,224,0,192,0, + 1,128,0,48,0,3,0,0,24,0,4,0,0,12,0,8, + 0,0,6,0,24,1,240,131,0,48,7,28,129,0,32,30, + 7,128,128,96,28,3,128,128,64,56,1,128,64,64,120,1, + 128,64,192,120,0,128,64,128,120,0,128,96,128,248,0,0, + 32,128,240,0,0,32,128,240,0,0,32,128,240,0,0,32, + 128,240,0,0,32,128,240,0,0,32,128,240,0,0,32,128, + 248,0,128,96,64,120,0,128,64,64,120,0,128,64,96,56, + 1,128,192,32,60,1,0,128,48,30,3,1,128,16,15,14, + 3,0,24,3,248,2,0,12,0,0,6,0,6,0,0,12, + 0,3,128,0,56,0,0,192,0,96,0,0,120,3,192,0, + 0,31,254,0,0,13,17,34,19,3,17,62,0,99,0,193, + 128,225,128,225,128,3,128,13,128,49,128,113,128,225,128,225, + 136,225,136,247,152,120,240,0,0,0,0,255,240,13,19,38, + 23,5,1,4,0,12,24,24,48,48,32,112,96,96,96,96, + 192,224,192,224,192,224,192,224,192,224,192,224,192,96,192,112, + 96,48,96,56,48,24,16,12,0,23,10,30,29,3,8,255, + 255,254,255,255,254,0,0,6,0,0,6,0,0,6,0,0, + 6,0,0,6,0,0,6,0,0,6,0,0,6,12,3,6, + 18,3,11,255,240,255,240,255,240,35,36,180,40,3,0,0, + 7,252,0,0,0,60,7,128,0,0,224,0,192,0,1,128, + 0,48,0,3,0,0,24,0,4,0,0,12,0,8,0,0, + 6,0,25,255,248,3,0,48,60,30,1,0,32,60,15,0, + 128,96,60,7,128,128,64,60,7,128,64,64,60,7,128,64, + 192,60,7,128,64,128,60,7,128,96,128,60,15,0,32,128, + 60,30,0,32,128,63,240,0,32,128,60,28,0,32,128,60, + 14,0,32,128,60,7,0,32,128,60,7,0,32,128,60,7, + 128,96,64,60,7,128,64,64,60,7,132,64,64,60,7,132, + 192,32,60,7,136,128,48,60,3,201,128,17,255,129,241,0, + 24,0,0,2,0,12,0,0,6,0,6,0,0,12,0,3, + 0,0,24,0,0,192,0,96,0,0,112,1,192,0,0,31, + 254,0,0,13,2,4,21,4,28,255,248,255,248,14,13,26, + 29,8,21,15,192,56,96,112,48,96,24,192,8,192,12,192, + 12,192,12,192,12,96,24,96,24,56,112,15,192,41,34,204, + 45,2,254,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,0,0,12,0,0,0,0,0,12,0,0,0,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,255,255,255,255,255,128,255,255,255,255,255,128,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,0,0,12,0,0,0,0,0,12,0,0,0,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,255,255,255,255,255,128,255,255,255,255,255,128,14, + 21,42,22,4,13,15,192,49,240,96,120,192,124,192,60,224, + 60,248,60,120,60,48,120,0,112,0,224,1,192,3,128,6, + 0,12,0,48,4,32,4,96,12,127,248,255,248,255,248,14, + 21,42,22,5,13,15,192,56,224,96,112,96,56,112,56,120, + 56,48,56,0,112,0,224,63,128,56,224,0,120,0,56,0, + 60,112,60,248,60,240,60,192,56,192,120,96,240,31,192,8, + 9,9,22,10,25,7,15,15,30,60,48,96,192,128,25,36, + 144,29,3,243,112,1,192,0,240,3,192,0,240,3,224,0, + 240,3,224,0,240,3,224,0,240,3,224,0,240,3,224,0, + 240,3,224,0,240,3,224,0,240,3,224,0,224,3,224,0, + 224,1,192,0,224,1,192,0,96,1,192,0,96,1,192,0, + 96,1,192,0,96,1,128,0,96,3,129,128,112,7,193,128, + 88,15,127,128,79,254,63,128,67,252,31,0,64,0,0,0, + 192,0,0,0,192,0,0,0,192,0,0,0,192,0,0,0, + 192,0,0,0,224,0,0,0,224,0,0,0,240,0,0,0, + 240,0,0,0,240,0,0,0,248,0,0,0,120,0,0,0, + 120,0,0,0,20,42,126,26,3,249,7,255,240,31,193,128, + 63,193,128,127,193,128,127,193,128,255,193,128,255,193,128,255, + 193,128,255,193,128,255,193,128,255,193,128,127,193,128,127,193, + 128,63,193,128,15,193,128,0,193,128,0,193,128,0,193,128, + 0,193,128,0,193,128,0,193,128,0,193,128,0,193,128,0, + 193,128,0,193,128,0,193,128,0,193,128,0,193,128,0,193, + 128,0,193,128,0,193,128,0,193,128,0,193,128,0,193,128, + 0,193,128,0,193,128,0,193,128,0,193,128,0,193,128,0, + 193,128,0,193,128,0,193,128,6,6,6,14,4,12,120,252, + 252,252,252,120,10,10,20,21,5,246,8,0,8,0,24,0, + 15,0,3,128,1,192,1,192,1,192,195,128,63,0,11,20, + 40,21,5,14,2,0,6,0,14,0,254,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,255,224,12,17,34,18, + 3,17,15,0,57,192,112,192,96,224,224,96,224,112,224,112, + 224,112,224,112,224,112,96,96,112,224,49,192,31,0,0,0, + 0,0,255,240,13,19,38,23,5,1,1,0,193,128,96,192, + 32,96,48,112,48,48,24,48,24,56,24,56,24,56,24,56, + 24,56,24,56,24,48,48,112,48,96,96,224,64,192,1,128, + 33,35,175,42,5,255,2,0,0,96,0,6,0,0,64,0, + 14,0,0,192,0,254,0,1,128,0,14,0,1,0,0,14, + 0,3,0,0,14,0,2,0,0,14,0,6,0,0,14,0, + 12,0,0,14,0,8,0,0,14,0,24,0,0,14,0,16, + 0,0,14,0,48,0,0,14,0,96,0,0,14,0,96,56, + 0,14,0,192,120,0,14,0,128,120,0,14,1,128,248,0, + 14,3,0,184,0,255,227,1,56,0,0,6,1,56,0,0, + 4,2,56,0,0,12,2,56,0,0,8,4,56,0,0,24, + 12,56,0,0,48,8,56,0,0,32,24,56,0,0,96,31, + 255,128,0,64,0,56,0,0,192,0,56,0,1,128,0,56, + 0,1,128,0,56,0,3,0,0,56,0,2,0,1,255,128, + 6,0,0,0,0,33,35,175,42,5,255,2,0,0,96,0, + 6,0,0,64,0,6,0,0,192,0,14,0,1,128,0,254, + 0,1,128,0,14,0,3,0,0,14,0,2,0,0,14,0, + 6,0,0,14,0,4,0,0,14,0,12,0,0,14,0,24, + 0,0,14,0,16,0,0,14,0,48,0,0,14,0,33,248, + 0,14,0,102,62,0,14,0,204,15,0,14,0,152,15,128, + 14,1,152,7,128,14,1,24,7,128,255,227,31,7,128,0, + 6,31,7,128,0,4,15,7,0,0,12,0,14,0,0,8, + 0,28,0,0,24,0,56,0,0,48,0,112,0,0,48,0, + 192,0,0,96,1,128,0,0,64,2,0,128,0,192,4,0, + 128,1,128,12,1,128,1,128,15,255,0,3,0,15,255,0, + 2,0,31,255,0,6,0,0,0,0,33,35,175,42,5,255, + 15,192,0,48,0,56,224,0,96,0,96,112,0,96,0,96, + 56,0,192,0,112,56,0,128,0,120,56,1,128,0,48,56, + 3,0,0,0,112,3,0,0,0,224,6,0,0,63,128,4, + 0,0,56,224,12,0,0,0,120,24,0,0,0,56,24,0, + 0,0,60,48,0,0,112,60,32,28,0,248,60,96,28,0, + 240,60,192,60,0,192,120,192,92,0,96,241,128,92,0,63, + 193,0,156,0,0,3,1,156,0,0,6,1,28,0,0,6, + 2,28,0,0,12,6,28,0,0,8,4,28,0,0,24,8, + 28,0,0,48,24,28,0,0,48,31,255,128,0,96,0,28, + 0,0,64,0,28,0,0,192,0,28,0,1,128,0,28,0, + 1,128,0,28,0,3,0,1,255,128,2,0,0,0,0,18, + 33,99,24,2,246,1,224,0,3,240,0,3,240,0,3,240, + 0,1,224,0,0,0,0,0,0,0,1,224,0,2,48,0, + 4,24,0,4,24,0,4,24,0,4,24,0,0,48,0,0, + 112,0,0,224,0,1,192,0,7,128,0,15,0,0,30,0, + 0,60,0,0,124,0,0,120,15,0,248,31,128,240,31,192, + 240,15,192,240,0,192,240,0,192,120,0,192,120,1,128,60, + 3,0,15,14,0,3,248,0,34,46,230,37,2,0,0,56, + 0,0,0,0,60,0,0,0,0,60,0,0,0,0,30,0, + 0,0,0,15,0,0,0,0,3,128,0,0,0,1,128,0, + 0,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,224,0,0,0,1,224,0,0,0,1,224,0,0,0,3, + 240,0,0,0,3,240,0,0,0,3,240,0,0,0,6,248, + 0,0,0,6,248,0,0,0,6,248,0,0,0,12,124,0, + 0,0,12,124,0,0,0,12,124,0,0,0,24,62,0,0, + 0,24,62,0,0,0,24,30,0,0,0,48,31,0,0,0, + 48,31,0,0,0,48,15,0,0,0,96,15,128,0,0,96, + 15,128,0,0,96,7,128,0,0,255,255,192,0,0,255,255, + 192,0,0,192,3,192,0,1,128,3,224,0,1,128,3,224, + 0,3,128,1,224,0,3,0,1,240,0,3,0,1,240,0, + 7,0,0,240,0,7,0,0,248,0,31,128,1,252,0,255, + 248,31,255,192,34,46,230,37,2,0,0,0,7,0,0,0, + 0,15,0,0,0,0,15,0,0,0,0,30,0,0,0,0, + 60,0,0,0,0,48,0,0,0,0,96,0,0,0,0,192, + 0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,224,0,0, + 0,1,224,0,0,0,1,224,0,0,0,3,240,0,0,0, + 3,240,0,0,0,3,240,0,0,0,6,248,0,0,0,6, + 248,0,0,0,6,248,0,0,0,12,124,0,0,0,12,124, + 0,0,0,12,124,0,0,0,24,62,0,0,0,24,62,0, + 0,0,24,30,0,0,0,48,31,0,0,0,48,31,0,0, + 0,48,15,0,0,0,96,15,128,0,0,96,15,128,0,0, + 224,7,128,0,0,255,255,192,0,0,255,255,192,0,1,192, + 3,192,0,1,128,3,224,0,1,128,3,224,0,3,128,1, + 224,0,3,0,1,240,0,3,0,1,240,0,7,0,0,240, + 0,15,128,0,248,0,255,248,31,255,192,255,248,31,255,192, + 34,45,225,37,2,0,0,0,192,0,0,0,1,224,0,0, + 0,3,240,0,0,0,7,56,0,0,0,14,28,0,0,0, + 28,14,0,0,0,48,3,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,192,0,0,0,0,192, + 0,0,0,0,224,0,0,0,1,224,0,0,0,1,224,0, + 0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0, + 0,6,248,0,0,0,6,248,0,0,0,6,248,0,0,0, + 12,124,0,0,0,12,124,0,0,0,12,124,0,0,0,24, + 62,0,0,0,24,62,0,0,0,24,30,0,0,0,48,31, + 0,0,0,48,31,0,0,0,48,15,0,0,0,96,15,128, + 0,0,96,15,128,0,0,96,7,128,0,0,255,255,192,0, + 0,255,255,192,0,0,192,3,192,0,1,128,3,224,0,1, + 128,3,224,0,3,128,1,224,0,3,0,1,240,0,3,0, + 1,240,0,7,0,0,240,0,7,0,0,248,0,31,128,1, + 252,0,255,248,31,255,192,34,45,225,37,2,0,0,15,0, + 128,0,0,31,225,128,0,0,63,255,0,0,0,33,255,0, + 0,0,32,62,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,192,0,0,0,0,192,0,0,0,1,224,0,0,0,1, + 224,0,0,0,1,224,0,0,0,3,240,0,0,0,3,240, + 0,0,0,3,240,0,0,0,6,248,0,0,0,6,248,0, + 0,0,6,248,0,0,0,12,124,0,0,0,12,124,0,0, + 0,12,124,0,0,0,24,62,0,0,0,24,62,0,0,0, + 24,30,0,0,0,48,31,0,0,0,48,31,0,0,0,112, + 15,0,0,0,96,15,128,0,0,96,15,128,0,0,224,7, + 128,0,0,255,255,192,0,0,255,255,192,0,1,192,3,192, + 0,1,128,3,224,0,1,128,3,224,0,3,128,1,224,0, + 3,0,1,240,0,3,0,1,240,0,7,0,0,240,0,15, + 128,0,248,0,255,248,31,255,192,255,248,31,255,192,34,44, + 220,37,2,0,0,28,7,0,0,0,62,15,128,0,0,62, + 15,128,0,0,62,15,128,0,0,28,7,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,64,0,0,0,0,192,0,0,0,0,224,0,0, + 0,0,224,0,0,0,1,224,0,0,0,1,240,0,0,0, + 3,240,0,0,0,3,240,0,0,0,3,248,0,0,0,7, + 248,0,0,0,6,120,0,0,0,6,124,0,0,0,14,60, + 0,0,0,12,60,0,0,0,12,62,0,0,0,28,30,0, + 0,0,24,30,0,0,0,24,31,0,0,0,48,15,0,0, + 0,48,15,0,0,0,112,15,128,0,0,96,7,128,0,0, + 96,7,128,0,0,255,255,192,0,0,255,255,192,0,0,192, + 3,192,0,1,192,3,224,0,1,192,1,224,0,1,128,1, + 224,0,3,128,1,240,0,3,128,0,240,0,7,128,0,240, + 0,7,128,0,248,0,31,192,1,252,0,255,248,31,255,192, + 34,47,235,37,2,0,0,1,224,0,0,0,6,24,0,0, + 0,4,8,0,0,0,8,4,0,0,0,8,4,0,0,0, + 8,4,0,0,0,8,4,0,0,0,4,8,0,0,0,6, + 24,0,0,0,3,224,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,192,0,0,0,0,192,0,0,0,0,224,0, + 0,0,1,224,0,0,0,1,224,0,0,0,3,240,0,0, + 0,3,240,0,0,0,3,240,0,0,0,6,248,0,0,0, + 6,248,0,0,0,6,248,0,0,0,12,124,0,0,0,12, + 124,0,0,0,12,124,0,0,0,24,62,0,0,0,24,62, + 0,0,0,24,30,0,0,0,48,31,0,0,0,48,31,0, + 0,0,48,15,0,0,0,96,15,128,0,0,96,7,128,0, + 0,96,7,128,0,0,255,255,192,0,0,255,255,192,0,1, + 192,3,192,0,1,128,3,224,0,1,128,3,224,0,3,128, + 1,224,0,3,0,1,240,0,3,0,1,240,0,7,0,0, + 240,0,7,0,0,248,0,31,128,1,252,0,255,248,31,255, + 192,44,35,210,48,1,0,0,0,127,255,255,240,0,0,15, + 224,3,240,0,0,15,192,0,240,0,0,15,192,0,112,0, + 0,15,192,0,112,0,0,27,192,0,48,0,0,27,192,0, + 48,0,0,51,192,0,48,0,0,51,192,0,16,0,0,99, + 192,0,16,0,0,99,192,16,16,0,0,195,192,16,16,0, + 1,195,192,16,0,0,1,131,192,48,0,0,3,131,192,48, + 0,0,3,3,192,48,0,0,7,3,192,112,0,0,6,3, + 255,240,0,0,14,3,192,240,0,0,12,3,192,48,0,0, + 24,3,192,48,0,0,24,3,192,16,0,0,48,3,192,16, + 16,0,63,255,192,16,16,0,96,3,192,16,16,0,96,3, + 192,0,16,0,192,3,192,0,16,0,192,3,192,0,48,1, + 128,3,192,0,48,1,128,3,192,0,112,3,128,3,192,0, + 112,7,128,3,192,0,240,15,128,3,192,1,240,255,248,127, + 255,255,240,255,248,127,255,255,240,26,47,188,32,3,245,0, + 63,0,128,0,225,225,128,3,128,113,128,7,0,63,128,14, + 0,31,128,30,0,15,128,28,0,7,128,60,0,7,128,60, + 0,3,128,124,0,3,128,120,0,1,128,120,0,1,128,120, + 0,0,128,248,0,0,128,248,0,0,0,248,0,0,0,248, + 0,0,0,248,0,0,0,248,0,0,0,248,0,0,0,248, + 0,0,0,248,0,0,0,248,0,0,0,120,0,0,192,120, + 0,0,192,120,0,0,192,124,0,0,192,60,0,0,128,60, + 0,1,128,28,0,1,128,30,0,3,0,14,0,3,0,7, + 0,6,0,3,128,12,0,1,192,56,0,0,127,224,0,0, + 8,0,0,0,8,0,0,0,28,0,0,0,15,128,0,0, + 3,192,0,0,1,224,0,0,1,224,0,0,1,224,0,0, + 129,224,0,0,199,192,0,0,63,0,0,28,46,184,34,3, + 0,0,224,0,0,0,240,0,0,0,240,0,0,0,120,0, + 0,0,60,0,0,0,14,0,0,0,6,0,0,0,3,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255, + 240,255,255,255,240,7,128,1,240,7,128,0,240,7,128,0, + 112,7,128,0,112,7,128,0,48,7,128,0,48,7,128,0, + 48,7,128,0,16,7,128,32,16,7,128,32,16,7,128,32, + 0,7,128,96,0,7,128,96,0,7,128,96,0,7,128,224, + 0,7,255,224,0,7,129,224,0,7,128,96,0,7,128,96, + 0,7,128,96,0,7,128,32,16,7,128,32,16,7,128,32, + 16,7,128,0,16,7,128,0,48,7,128,0,48,7,128,0, + 48,7,128,0,112,7,128,0,112,7,128,0,240,7,128,1, + 240,255,255,255,240,255,255,255,240,28,46,184,34,3,0,0, + 0,28,0,0,0,60,0,0,0,60,0,0,0,120,0,0, + 0,240,0,0,0,192,0,0,1,128,0,0,3,0,0,0, + 2,0,0,0,0,0,0,0,0,0,0,255,255,255,240,255, + 255,255,240,7,128,1,240,7,128,0,240,7,128,0,112,7, + 128,0,112,7,128,0,48,7,128,0,48,7,128,0,48,7, + 128,0,16,7,128,32,16,7,128,32,16,7,128,32,0,7, + 128,96,0,7,128,96,0,7,128,96,0,7,128,224,0,7, + 255,224,0,7,129,224,0,7,128,96,0,7,128,96,0,7, + 128,96,0,7,128,32,16,7,128,32,16,7,128,32,16,7, + 128,0,16,7,128,0,48,7,128,0,48,7,128,0,48,7, + 128,0,112,7,128,0,112,7,128,0,240,7,128,1,240,255, + 255,255,240,255,255,255,240,28,45,180,34,3,0,0,3,0, + 0,0,7,128,0,0,15,192,0,0,12,224,0,0,24,112, + 0,0,112,24,0,0,192,12,0,0,0,2,0,0,0,0, + 0,0,0,0,0,255,255,255,240,255,255,255,240,7,128,1, + 240,7,128,0,240,7,128,0,112,7,128,0,112,7,128,0, + 48,7,128,0,48,7,128,0,48,7,128,0,16,7,128,32, + 16,7,128,32,16,7,128,32,0,7,128,96,0,7,128,96, + 0,7,128,96,0,7,128,224,0,7,255,224,0,7,129,224, + 0,7,128,96,0,7,128,96,0,7,128,96,0,7,128,32, + 16,7,128,32,16,7,128,32,16,7,128,0,16,7,128,0, + 48,7,128,0,48,7,128,0,48,7,128,0,112,7,128,0, + 112,7,128,0,240,7,128,1,240,255,255,255,240,255,255,255, + 240,28,44,176,34,3,0,0,112,28,0,0,248,62,0,0, + 248,62,0,0,248,62,0,0,112,28,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,255,255,255,240,7, + 192,7,240,7,128,1,240,7,128,0,240,7,128,0,112,7, + 128,0,112,7,128,0,48,7,128,0,48,7,128,0,48,7, + 128,0,16,7,128,32,16,7,128,32,16,7,128,32,0,7, + 128,32,0,7,128,96,0,7,128,96,0,7,128,224,0,7, + 255,224,0,7,129,224,0,7,128,96,0,7,128,96,0,7, + 128,32,0,7,128,32,16,7,128,32,16,7,128,32,16,7, + 128,0,16,7,128,0,48,7,128,0,48,7,128,0,48,7, + 128,0,112,7,128,0,112,7,128,0,240,7,128,1,240,255, + 255,255,240,255,255,255,240,14,46,92,19,3,0,224,0,240, + 0,240,0,120,0,60,0,12,0,6,0,3,0,1,0,0, + 0,0,0,255,252,255,252,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,15,128,255,252,14,46,92,19,3,0,0, + 28,0,60,0,60,0,120,0,240,0,192,1,128,3,0,0, + 0,0,0,0,0,255,252,255,252,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,192,255,252,14,45,90,19,3, + 0,3,0,7,128,7,192,14,192,24,96,112,56,192,12,0, + 0,0,0,0,0,255,252,7,192,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,255,252,255,252,15,44,88,20,3, + 0,112,28,248,62,248,62,248,62,112,28,0,0,0,0,0, + 0,0,0,127,254,7,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,7,192,127,254,32,35,140,38,4,0,255, + 255,248,0,15,128,15,0,7,128,3,128,7,128,1,192,7, + 128,0,224,7,128,0,240,7,128,0,120,7,128,0,124,7, + 128,0,60,7,128,0,62,7,128,0,62,7,128,0,30,7, + 128,0,30,7,128,0,31,7,128,0,31,7,128,0,31,255, + 254,0,31,7,128,0,31,7,128,0,31,7,128,0,31,7, + 128,0,31,7,128,0,31,7,128,0,30,7,128,0,62,7, + 128,0,62,7,128,0,60,7,128,0,60,7,128,0,120,7, + 128,0,120,7,128,0,240,7,128,0,224,7,128,1,192,7, + 128,3,128,15,128,30,0,255,255,248,0,33,46,230,38,3, + 255,0,7,1,128,0,0,31,225,128,0,0,31,255,0,0, + 0,16,255,0,0,0,48,62,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,255,192,7,255,128,255,192,7,255,128,7,224,0, + 120,0,7,240,0,48,0,7,240,0,48,0,7,248,0,48, + 0,6,248,0,48,0,6,252,0,48,0,6,126,0,48,0, + 6,62,0,48,0,6,63,0,48,0,6,31,0,48,0,6, + 15,128,48,0,6,15,192,48,0,6,7,192,48,0,6,7, + 224,48,0,6,3,224,48,0,6,1,240,48,0,6,1,248, + 48,0,6,0,248,48,0,6,0,252,48,0,6,0,124,48, + 0,6,0,62,48,0,6,0,63,48,0,6,0,31,48,0, + 6,0,15,176,0,6,0,15,176,0,6,0,7,240,0,6, + 0,7,240,0,6,0,3,240,0,6,0,1,240,0,6,0, + 1,240,0,15,0,0,240,0,31,128,0,240,0,255,240,0, + 112,0,0,0,0,48,0,28,46,184,33,3,1,1,192,0, + 0,1,224,0,0,1,240,0,0,0,112,0,0,0,56,0, + 0,0,28,0,0,0,12,0,0,0,6,0,0,0,0,0, + 0,0,0,0,0,0,31,128,0,0,255,240,0,1,192,56, + 0,3,128,28,0,7,0,14,0,14,0,7,0,30,0,7, + 128,30,0,7,128,60,0,3,192,60,0,3,192,124,0,3, + 224,124,0,3,224,120,0,1,224,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,120,0,1,224,120,0,1,224,120,0,3,224,124,0,3, + 192,60,0,3,192,60,0,3,192,30,0,7,128,14,0,7, + 0,14,0,7,0,7,0,14,0,3,128,28,0,0,192,48, + 0,0,127,224,0,28,46,184,33,3,1,0,0,56,0,0, + 0,120,0,0,0,248,0,0,0,224,0,0,1,192,0,0, + 3,128,0,0,3,0,0,0,6,0,0,0,0,0,0,0, + 0,0,0,0,31,128,0,0,255,240,0,1,192,56,0,3, + 128,28,0,7,0,14,0,14,0,7,0,30,0,7,128,30, + 0,7,128,60,0,3,192,60,0,3,192,124,0,3,224,124, + 0,3,224,120,0,1,224,248,0,1,240,248,0,1,240,248, + 0,1,240,248,0,1,240,248,0,1,240,248,0,1,240,248, + 0,1,240,248,0,1,240,248,0,1,240,248,0,1,240,120, + 0,1,224,120,0,1,224,120,0,3,224,124,0,3,192,60, + 0,3,192,60,0,3,192,30,0,7,128,14,0,7,0,14, + 0,7,0,7,0,14,0,3,128,28,0,0,192,48,0,0, + 127,224,0,28,46,184,33,3,0,0,6,0,0,0,15,0, + 0,0,15,0,0,0,31,128,0,0,57,192,0,0,112,224, + 0,0,192,48,0,3,128,28,0,0,0,0,0,0,0,0, + 0,0,31,128,0,0,255,240,0,1,192,56,0,3,128,28, + 0,7,0,14,0,14,0,7,0,30,0,7,128,30,0,7, + 128,60,0,3,192,60,0,3,192,124,0,3,224,124,0,3, + 224,120,0,1,224,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,120,0,1, + 224,120,0,1,224,120,0,3,224,124,0,3,192,60,0,3, + 192,60,0,3,192,30,0,7,128,14,0,7,0,14,0,7, + 0,7,0,14,0,3,128,28,0,0,192,48,0,0,127,224, + 0,28,45,180,33,3,0,0,120,12,0,0,255,8,0,1, + 255,248,0,1,143,248,0,1,1,224,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,31,128,0,0, + 255,240,0,1,192,56,0,3,128,28,0,7,0,14,0,14, + 0,7,0,30,0,7,128,30,0,7,128,60,0,3,192,60, + 0,3,192,124,0,3,224,124,0,3,224,120,0,1,224,248, + 0,1,240,248,0,1,240,248,0,1,240,248,0,1,240,248, + 0,1,240,248,0,1,240,248,0,1,240,248,0,1,240,248, + 0,1,240,248,0,1,240,120,0,1,224,120,0,1,224,120, + 0,3,224,124,0,3,192,60,0,3,192,60,0,3,192,30, + 0,7,128,14,0,7,0,14,0,7,0,7,0,14,0,3, + 128,28,0,0,192,48,0,0,127,224,0,28,45,180,33,3, + 0,0,224,56,0,1,240,124,0,1,240,124,0,1,240,124, + 0,0,224,56,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,31,128,0,0,240,240,0,1,192,56, + 0,3,128,28,0,7,0,14,0,14,0,7,0,30,0,7, + 128,28,0,3,128,60,0,3,192,60,0,3,192,124,0,3, + 224,120,0,1,224,120,0,1,224,248,0,1,224,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,120,0,1,224,120,0,1,224,124,0,3,224,124,0,3, + 224,60,0,3,192,60,0,3,192,30,0,7,128,14,0,7, + 0,14,0,15,0,7,0,14,0,3,128,28,0,0,224,112, + 0,0,127,224,0,30,30,120,46,8,254,192,0,0,12,224, + 0,0,28,112,0,0,56,56,0,0,112,28,0,0,224,14, + 0,1,192,7,0,3,128,3,128,7,0,1,192,14,0,0, + 224,28,0,0,112,56,0,0,56,112,0,0,28,224,0,0, + 15,192,0,0,7,128,0,0,7,128,0,0,15,192,0,0, + 28,224,0,0,56,112,0,0,112,56,0,0,224,28,0,1, + 192,14,0,3,128,7,0,7,0,3,128,14,0,1,192,28, + 0,0,224,56,0,0,112,112,0,0,56,224,0,0,28,192, + 0,0,12,28,36,144,33,3,0,0,31,128,32,0,240,240, + 96,1,192,56,224,3,128,30,192,7,0,15,128,14,0,7, + 128,30,0,7,128,28,0,7,128,60,0,15,192,60,0,31, + 192,124,0,59,224,120,0,49,224,120,0,97,224,248,0,225, + 240,248,1,193,240,248,1,129,240,248,3,1,240,248,7,1, + 240,248,6,1,240,248,12,1,240,248,28,1,240,248,56,1, + 240,248,48,1,240,120,96,1,224,120,224,1,224,121,192,3, + 224,125,128,3,192,63,0,3,192,63,0,3,192,30,0,7, + 128,30,0,7,0,30,0,15,0,63,0,14,0,51,128,28, + 0,97,192,112,0,192,127,224,0,34,46,230,39,3,1,0, + 28,0,0,0,0,28,0,0,0,0,30,0,0,0,0,15, + 0,0,0,0,7,0,0,0,0,1,128,0,0,0,0,192, + 0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0, + 0,255,252,3,255,192,255,252,3,255,192,7,192,0,126,0, + 7,128,0,60,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,7,128,0,24, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,3,192,0, + 24,0,3,192,0,48,0,1,192,0,48,0,1,224,0,96, + 0,0,224,0,96,0,0,112,0,192,0,0,60,3,128,0, + 0,15,254,0,0,34,46,230,39,3,1,0,0,7,0,0, + 0,0,15,0,0,0,0,30,0,0,0,0,28,0,0,0, + 0,56,0,0,0,0,112,0,0,0,0,96,0,0,0,0, + 128,0,0,0,0,0,0,0,0,0,0,0,0,255,252,3, + 255,192,255,252,3,255,192,7,192,0,126,0,7,128,0,60, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,7,128,0,24, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,3,192,0,24,0,3,192, + 0,48,0,1,192,0,48,0,1,224,0,96,0,0,224,0, + 96,0,0,112,0,192,0,0,60,3,128,0,0,15,254,0, + 0,34,46,230,39,3,0,0,0,192,0,0,0,0,224,0, + 0,0,1,224,0,0,0,3,240,0,0,0,3,56,0,0, + 0,6,28,0,0,0,28,6,0,0,0,48,3,128,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,252, + 3,255,192,7,192,0,126,0,7,128,0,60,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,7,128,0,24, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,7,128,0,24, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,3,192,0,24,0,3,192,0,48,0,3, + 192,0,48,0,1,224,0,96,0,0,240,0,224,0,0,120, + 1,192,0,0,62,7,128,0,0,15,254,0,0,34,45,225, + 39,3,0,0,28,7,0,0,0,62,15,128,0,0,62,15, + 128,0,0,62,15,128,0,0,28,7,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,255,252,3,255,192,7,192,0,126,0,7, + 128,0,60,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,7,128,0,24, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,3,192,0,24, + 0,3,192,0,48,0,3,192,0,48,0,1,224,0,96,0, + 0,224,0,96,0,0,112,0,192,0,0,60,3,128,0,0, + 15,254,0,0,32,46,184,35,2,0,0,0,3,0,0,0, + 7,128,0,0,15,0,0,0,30,0,0,0,60,0,0,0, + 56,0,0,0,96,0,0,0,192,0,0,0,0,0,0,0, + 0,0,0,0,0,0,255,254,15,255,255,254,15,255,7,224, + 0,240,7,224,0,96,3,224,0,96,3,240,0,64,1,240, + 0,192,0,248,0,128,0,252,1,128,0,124,1,0,0,62, + 3,0,0,62,2,0,0,31,6,0,0,31,12,0,0,15, + 136,0,0,7,152,0,0,7,208,0,0,3,240,0,0,3, + 224,0,0,1,224,0,0,1,224,0,0,1,224,0,0,1, + 224,0,0,1,224,0,0,1,224,0,0,1,224,0,0,1, + 224,0,0,1,224,0,0,1,224,0,0,1,224,0,0,1, + 224,0,0,1,224,0,0,1,224,0,0,1,240,0,0,127, + 255,192,28,35,140,33,3,0,255,254,0,0,7,192,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,255,240,0,7,192,30,0,7,128,7,128,7,128,7,192, + 7,128,3,224,7,128,3,224,7,128,1,240,7,128,1,240, + 7,128,1,240,7,128,1,240,7,128,1,240,7,128,1,240, + 7,128,3,224,7,128,3,224,7,128,7,192,7,128,7,128, + 7,128,30,0,7,255,248,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,192,0,0, + 255,254,0,0,22,35,105,26,1,0,0,63,128,0,243,224, + 1,192,240,3,128,240,7,128,248,7,0,120,15,0,120,15, + 0,120,15,0,248,15,0,240,15,0,224,15,1,192,15,3, + 0,15,60,0,15,6,0,15,1,128,15,0,192,15,0,224, + 15,0,112,15,0,120,15,0,120,15,0,60,15,0,60,15, + 0,60,15,0,60,15,0,60,15,0,60,15,0,60,15,56, + 60,15,120,60,15,120,60,15,112,120,15,96,112,15,48,224, + 255,31,192,21,33,99,24,2,1,56,0,0,60,0,0,30, + 0,0,14,0,0,7,0,0,3,128,0,1,128,0,0,192, + 0,0,0,0,0,0,0,0,0,0,7,248,0,24,30,0, + 16,15,0,48,7,0,56,7,128,60,7,128,62,7,128,28, + 7,128,0,7,128,0,31,128,3,247,128,31,7,128,60,7, + 128,120,7,128,248,7,128,240,7,128,240,15,136,240,15,136, + 240,23,136,248,23,152,120,39,240,63,195,240,21,33,99,24, + 2,1,0,7,0,0,15,128,0,15,0,0,30,0,0,60, + 0,0,48,0,0,96,0,0,192,0,0,0,0,0,0,0, + 0,0,0,7,248,0,24,30,0,16,15,0,48,7,0,56, + 7,128,60,7,128,62,7,128,28,7,128,0,7,128,0,31, + 128,3,247,128,31,7,128,60,7,128,120,7,128,248,7,128, + 240,7,128,240,15,136,240,15,136,240,23,136,248,23,152,120, + 39,240,63,195,240,21,33,99,24,2,0,0,192,0,0,224, + 0,1,224,0,1,240,0,3,48,0,6,24,0,12,12,0, + 24,2,0,0,0,0,0,0,0,0,0,0,7,248,0,24, + 30,0,16,15,0,48,7,0,56,7,128,60,7,128,62,7, + 128,28,7,128,0,7,128,0,31,128,3,247,128,31,7,128, + 60,7,128,120,7,128,248,7,128,240,7,128,240,15,136,240, + 15,136,240,23,136,248,23,152,120,39,240,63,195,240,21,32, + 96,24,2,0,15,129,0,31,227,0,31,255,0,16,254,0, + 32,60,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,7,248,0,24,30,0,16,15,0,48,7,0,56,7, + 128,60,7,128,62,7,128,28,7,128,0,7,128,0,31,128, + 3,247,128,31,7,128,60,7,128,120,7,128,248,7,128,240, + 7,128,240,15,136,240,15,136,240,23,136,248,23,152,120,39, + 240,63,195,240,21,32,96,24,2,0,28,14,0,62,31,0, + 62,31,0,62,31,0,28,14,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,7,248,0,24,30,0,16,15, + 0,48,7,0,56,7,128,60,7,128,62,7,128,28,7,128, + 0,7,128,0,31,128,3,247,128,31,7,128,60,7,128,120, + 7,128,248,7,128,240,7,128,240,15,136,240,15,136,240,23, + 136,248,23,152,120,39,240,63,195,240,21,34,102,24,2,0, + 1,224,0,2,24,0,4,8,0,8,4,0,8,4,0,8, + 4,0,4,12,0,6,24,0,1,240,0,0,0,0,0,0, + 0,0,0,0,7,248,0,24,30,0,16,15,0,48,7,0, + 56,7,128,60,7,128,60,7,128,28,7,128,0,7,128,0, + 31,128,3,247,128,31,7,128,60,7,128,120,7,128,248,7, + 128,240,7,128,240,15,136,240,15,136,240,31,136,248,23,152, + 120,39,240,63,195,240,30,22,88,34,2,1,7,248,63,128, + 24,30,97,224,16,15,224,224,48,7,192,112,56,7,192,120, + 60,7,128,120,62,7,128,120,30,7,128,60,0,7,128,60, + 0,15,128,60,1,247,255,252,15,7,128,0,60,7,128,0, + 120,7,128,0,248,7,128,0,240,7,128,8,240,15,128,8, + 240,11,192,8,240,27,192,16,248,17,224,48,120,32,240,96, + 63,192,127,192,17,32,96,21,2,247,7,252,0,14,6,0, + 28,3,0,56,3,0,56,3,128,120,15,128,120,15,128,240, + 15,128,240,7,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,128,120,0,128,120,0,128,120,1,0, + 56,1,0,28,2,0,14,6,0,7,248,0,0,128,0,0, + 128,0,1,128,0,0,240,0,0,56,0,0,28,0,0,28, + 0,0,28,0,12,56,0,3,240,0,18,33,99,22,2,1, + 60,0,0,60,0,0,30,0,0,15,0,0,7,0,0,3, + 128,0,0,192,0,0,64,0,0,0,0,0,0,0,0,0, + 0,7,248,0,14,28,0,28,14,0,56,15,0,56,7,128, + 120,7,128,120,7,128,240,7,192,240,7,192,240,7,192,255, + 255,192,240,0,0,240,0,0,240,0,0,240,0,128,120,0, + 128,120,0,128,120,1,128,56,1,0,28,3,0,14,6,0, + 7,252,0,18,33,99,22,2,1,0,7,0,0,15,0,0, + 15,0,0,30,0,0,60,0,0,48,0,0,96,0,0,192, + 0,0,0,0,0,0,0,0,0,0,7,248,0,14,28,0, + 28,14,0,56,15,0,56,7,128,120,7,128,120,7,128,240, + 7,192,240,7,192,240,7,192,255,255,192,240,0,0,240,0, + 0,240,0,0,240,0,128,120,0,128,120,0,128,120,1,128, + 56,1,0,28,3,0,14,6,0,7,252,0,18,33,99,22, + 2,0,0,192,0,0,224,0,1,224,0,1,240,0,3,184, + 0,7,24,0,4,12,0,24,2,0,0,0,0,0,0,0, + 0,0,0,7,248,0,14,28,0,28,14,0,56,15,0,56, + 7,128,120,7,128,120,7,128,240,7,192,240,7,192,240,7, + 192,255,255,192,240,0,0,240,0,0,240,0,0,240,0,128, + 120,0,128,120,0,128,120,1,128,56,1,0,28,3,0,14, + 6,0,7,252,0,18,32,96,22,2,0,28,7,0,62,15, + 128,62,15,128,62,15,128,28,7,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,7,248,0,14,12,0,28, + 14,0,60,7,0,56,7,128,120,3,128,120,3,128,240,3, + 192,240,3,192,240,3,192,255,255,192,240,0,0,240,0,0, + 240,0,0,240,0,64,120,0,128,120,0,128,120,0,128,56, + 1,128,28,1,0,14,6,0,7,252,0,12,33,66,14,0, + 1,224,0,240,0,240,0,120,0,60,0,12,0,6,0,3, + 0,0,0,0,0,0,0,63,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,63,240,11,33,66,13,2,1,0,224,1,224,1,224,3, + 192,7,128,6,0,12,0,24,0,0,0,0,0,0,0,254, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,255,192,13,33,66,14,0, + 0,7,0,7,0,7,128,15,128,29,192,24,96,48,48,192, + 24,0,0,0,0,0,0,63,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,63,240,13,32,64,15,1,0,112,112,248,248,248,248,248, + 248,112,112,0,0,0,0,0,0,0,0,0,0,63,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,63,240,19,35,105,24,2,0,31, + 0,0,15,131,128,7,198,0,3,252,0,1,240,0,0,240, + 0,1,248,0,7,124,0,12,60,0,24,30,0,0,31,0, + 0,15,0,0,7,128,3,255,128,14,15,192,28,7,192,60, + 3,192,56,3,224,120,3,224,120,1,224,248,1,224,240,1, + 224,240,1,224,240,1,224,240,1,224,240,1,224,240,1,224, + 240,1,224,120,1,192,120,3,192,56,3,192,60,3,128,28, + 7,0,14,14,0,3,252,0,23,32,96,27,2,0,1,224, + 64,3,248,192,7,255,192,6,63,128,4,7,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,254,31,128,30, + 97,224,30,192,224,30,128,240,31,0,240,31,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,255,199,254,19,33, + 99,24,2,1,28,0,0,30,0,0,30,0,0,15,0,0, + 7,128,0,1,128,0,0,192,0,0,96,0,0,0,0,0, + 0,0,0,0,0,3,252,0,14,14,0,28,7,0,60,3, + 128,56,3,192,120,3,192,120,1,224,248,1,224,240,1,224, + 240,1,224,240,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,120,1,224,120,3,192,56,3,192,60,3,128,28,7, + 0,14,14,0,3,252,0,19,33,99,24,2,1,0,7,0, + 0,7,128,0,15,0,0,30,0,0,28,0,0,56,0,0, + 96,0,0,64,0,0,0,0,0,0,0,0,0,0,3,252, + 0,14,14,0,28,7,0,60,3,128,56,3,192,120,3,192, + 120,1,224,248,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,120,1,224,120,3, + 192,56,3,192,60,3,128,28,7,0,14,14,0,3,252,0, + 19,33,99,24,2,0,0,96,0,0,224,0,0,240,0,1, + 240,0,1,184,0,3,24,0,6,4,0,8,3,0,0,0, + 0,0,0,0,0,0,0,3,252,0,14,14,0,28,7,0, + 60,3,128,56,3,192,120,3,192,120,1,224,248,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,120,1,224,120,3,192,56,3,192,60,3,128, + 28,7,0,14,14,0,3,252,0,19,32,96,24,2,0,7, + 129,0,15,225,0,31,255,0,24,254,0,16,28,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,3,252,0, + 14,14,0,28,7,0,60,3,128,56,3,192,120,3,192,120, + 1,224,248,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,1,224,240,1,224,120,1,224,120,3,192, + 56,3,192,60,3,128,28,7,0,14,14,0,3,252,0,19, + 32,96,24,2,0,14,7,0,31,15,128,31,15,128,31,15, + 128,14,7,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,3,252,0,14,14,0,28,7,0,60,3,128,56, + 3,192,120,3,192,120,1,224,248,1,224,240,1,224,240,1, + 224,240,1,224,240,1,224,240,1,224,240,1,224,240,1,224, + 120,1,224,120,3,192,56,3,192,60,3,128,28,7,0,14, + 14,0,3,252,0,41,31,186,45,2,253,0,0,30,0,0, + 0,0,0,63,0,0,0,0,0,63,0,0,0,0,0,63, + 0,0,0,0,0,63,0,0,0,0,0,30,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,255,255,255,128,255,255,255,255,255,128,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,30,0,0,0,0,0,63,0,0,0,0,0,63, + 0,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0, + 0,30,0,0,0,19,22,66,24,2,1,3,252,96,14,14, + 64,28,7,192,60,3,128,56,3,192,120,7,192,120,13,224, + 248,9,224,240,25,224,240,49,224,240,97,224,240,193,224,240, + 129,224,241,129,224,243,1,224,126,1,224,124,3,192,56,3, + 192,60,3,128,60,7,0,110,14,0,195,252,0,23,33,99, + 27,2,1,14,0,0,15,0,0,7,128,0,3,192,0,1, + 192,0,0,224,0,0,48,0,0,16,0,0,0,0,0,0, + 0,0,0,0,254,7,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,1,240,30,1,240,30,1,240,30,2,240,14,6,240, + 15,12,240,3,240,254,23,33,99,27,2,1,0,1,192,0, + 3,192,0,3,192,0,7,128,0,14,0,0,12,0,0,24, + 0,0,48,0,0,0,0,0,0,0,0,0,0,254,7,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,1,240,30,1,240, + 30,1,240,30,2,240,14,6,240,15,12,240,3,240,254,23, + 33,99,27,2,0,0,48,0,0,56,0,0,120,0,0,124, + 0,0,204,0,1,134,0,3,3,0,6,0,128,0,0,0, + 0,0,0,0,0,0,254,7,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,1,240,30,1,240,30,1,240,30,2,240,14, + 6,240,15,12,240,3,240,254,23,32,96,27,2,0,7,3, + 128,15,135,192,15,135,192,15,135,192,7,3,128,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,254,7,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,1,240,30,1,240,30, + 1,240,30,2,240,14,6,240,15,12,240,3,240,254,24,45, + 135,26,1,246,0,0,240,0,0,240,0,1,224,0,1,192, + 0,3,128,0,7,0,0,6,0,0,12,0,0,24,0,0, + 0,0,0,0,0,0,0,0,255,225,255,31,0,120,15,0, + 48,15,0,48,7,0,32,7,128,96,7,128,96,3,192,64, + 3,192,192,3,192,192,1,224,128,1,225,128,0,225,128,0, + 241,128,0,241,0,0,115,0,0,123,0,0,122,0,0,62, + 0,0,62,0,0,60,0,0,28,0,0,28,0,0,24,0, + 0,24,0,0,24,0,24,48,0,60,48,0,60,48,0,60, + 96,0,56,96,0,31,192,0,15,0,0,20,46,138,25,2, + 243,30,0,0,126,0,0,254,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,15,192,30,63,224,30,97,240,30,192,240,30,128, + 240,31,128,240,31,0,240,31,0,240,30,0,240,30,0,240, + 30,1,224,30,1,224,30,1,192,30,3,128,30,3,128,30, + 7,0,30,6,0,30,12,0,30,24,0,30,48,0,30,192, + 0,31,128,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,60,0,0,240,0,0,128,0,0,24,43,129,26,1, + 245,1,192,224,3,225,240,3,225,240,3,225,240,1,192,224, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255, + 225,255,31,128,120,15,0,48,15,0,48,7,128,32,7,128, + 96,7,128,96,3,192,64,3,192,64,3,192,192,1,224,128, + 1,224,128,0,225,128,0,241,128,0,241,0,0,115,0,0, + 123,0,0,122,0,0,62,0,0,62,0,0,60,0,0,28, + 0,0,28,0,0,24,0,0,24,0,0,24,0,24,48,0, + 60,48,0,60,48,0,60,96,0,56,96,0,31,192,0,15, + 0,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--49-490-72-72-P-256-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 34 + Calculated Max Values w=41 h=46 x= 6 y=14 dx=45 dy= 0 ascent=36 len=246 + Font Bounding box w=128 h=62 x=-40 y=-15 + Calculated Min Values x= 0 y=-10 dx= 0 dy= 0 + Pure Font ascent =34 descent= 0 + X Font ascent =34 descent= 0 + Max Font ascent =36 descent=-10 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr35n[1560] U8G_SECTION(".progmem.u8g_font_osr35n") = { + 0,128,62,216,241,34,0,0,0,0,42,57,0,36,246,34, + 0,18,20,60,25,4,14,0,224,0,1,224,0,1,224,0, + 1,224,0,96,195,128,240,135,192,248,143,192,124,159,128,7, + 248,0,1,224,0,1,224,0,6,184,0,124,143,128,248,135, + 192,240,195,192,97,193,128,1,224,0,1,224,0,1,224,0, + 0,224,0,41,41,246,45,2,248,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,0,0,12,0,0,0,0,0,12,0,0,0,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,0,0,12,0,0,0,0,0,12,0,0,0,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,255,255,255,255,255, + 128,255,255,255,255,255,128,0,0,12,0,0,0,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,0,0,12,0,0,0,0,0,12,0,0,0,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,0,0,12,0,0,0,0,0,12,0,0,0,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,7, + 15,15,14,4,247,120,252,252,254,126,6,6,6,4,12,8, + 24,48,96,64,12,3,6,18,3,11,255,240,255,240,255,240, + 6,5,5,14,4,1,120,252,252,252,120,16,46,92,22,3, + 246,0,3,0,3,0,3,0,6,0,6,0,6,0,12,0, + 12,0,12,0,24,0,24,0,24,0,48,0,48,0,48,0, + 48,0,96,0,96,0,96,0,192,0,192,0,192,1,128,1, + 128,1,128,3,0,3,0,3,0,6,0,6,0,6,0,12, + 0,12,0,12,0,24,0,24,0,24,0,48,0,48,0,48, + 0,96,0,96,0,96,0,96,0,192,0,192,0,23,34,102, + 28,2,0,0,124,0,1,199,0,7,1,128,6,0,192,14, + 0,224,28,0,112,60,0,120,60,0,120,56,0,56,120,0, + 60,120,0,60,120,0,60,248,0,62,248,0,62,248,0,62, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,120,0,60,120,0,60,120,0,60,120,0, + 60,60,0,120,60,0,120,28,0,112,28,0,112,14,0,224, + 7,1,192,3,131,128,0,254,0,17,34,102,28,6,0,0, + 64,0,0,64,0,0,192,0,0,192,0,1,192,0,7,192, + 0,255,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,255, + 255,128,255,255,128,21,34,102,28,4,0,3,252,0,14,31, + 0,16,7,192,32,3,224,96,1,240,64,1,240,192,0,240, + 192,0,248,224,0,248,252,0,248,254,0,248,126,0,248,126, + 0,240,62,1,240,0,1,224,0,3,192,0,3,128,0,7, + 0,0,14,0,0,28,0,0,112,0,0,224,0,1,192,0, + 3,0,0,6,0,16,12,0,16,24,0,16,16,0,16,48, + 0,48,48,0,112,127,255,240,127,255,240,127,255,240,127,255, + 240,21,34,102,28,4,0,3,248,0,14,31,0,24,7,128, + 48,3,192,112,3,192,120,1,224,124,1,224,126,1,224,126, + 1,224,60,1,224,0,1,224,0,3,192,0,3,192,0,7, + 128,0,14,0,15,248,0,31,143,0,14,3,128,0,3,224, + 0,1,224,0,1,240,0,0,248,0,0,248,0,0,248,60, + 0,248,126,0,248,254,0,248,254,0,248,252,1,240,224,1, + 240,224,3,224,96,3,192,48,15,0,15,254,0,23,34,102, + 28,3,0,0,1,128,0,1,128,0,3,128,0,7,128,0, + 7,128,0,15,128,0,31,128,0,31,128,0,55,128,0,119, + 128,0,231,128,0,199,128,1,199,128,3,135,128,3,7,128, + 6,7,128,14,7,128,12,7,128,24,7,128,56,7,128,48, + 7,128,96,7,128,224,7,128,255,255,254,0,7,128,0,7, + 128,0,7,128,0,7,128,0,7,128,0,7,128,0,7,128, + 0,7,128,3,255,254,3,255,254,21,35,105,28,4,0,48, + 0,64,60,3,192,63,255,128,63,255,0,63,252,0,55,240, + 0,48,0,0,48,0,0,48,0,0,48,0,0,48,0,0, + 48,0,0,48,0,0,51,254,0,60,7,128,56,3,192,48, + 1,224,48,1,240,48,1,240,0,0,240,0,0,248,0,0, + 248,0,0,248,0,0,248,60,0,248,126,0,248,254,0,248, + 254,0,240,252,1,240,248,1,224,240,1,224,112,3,192,112, + 7,128,60,31,0,15,252,0,21,34,102,28,4,0,0,126, + 0,1,193,128,3,128,192,7,0,64,14,0,224,28,1,224, + 28,3,224,56,3,224,56,3,192,120,0,0,120,0,0,120, + 0,0,120,0,0,240,126,0,241,255,128,243,131,192,247,1, + 224,254,1,240,252,0,240,252,0,240,248,0,248,248,0,120, + 248,0,120,248,0,120,120,0,120,120,0,120,120,0,248,120, + 0,240,56,0,240,60,0,224,28,1,224,14,3,192,7,7, + 128,1,254,0,19,34,102,28,5,0,255,255,224,255,255,224, + 255,255,224,255,255,224,224,0,224,192,0,64,128,0,64,128, + 0,192,128,0,128,128,1,128,0,1,128,0,3,0,0,2, + 0,0,6,0,0,12,0,0,24,0,0,24,0,0,48,0, + 0,112,0,0,112,0,0,224,0,0,224,0,1,224,0,1, + 224,0,3,224,0,3,224,0,3,224,0,7,240,0,7,240, + 0,7,240,0,7,240,0,7,240,0,3,240,0,3,224,0, + 23,34,102,28,3,0,1,254,0,7,135,128,30,1,192,56, + 0,224,120,0,112,112,0,112,240,0,56,240,0,56,240,0, + 56,240,0,56,248,0,56,252,0,112,126,0,112,127,192,224, + 63,241,192,31,255,0,7,255,128,7,255,224,12,63,248,56, + 7,252,112,1,252,112,0,126,224,0,62,224,0,62,224,0, + 62,224,0,30,224,0,30,224,0,28,96,0,60,112,0,56, + 48,0,120,24,0,240,14,1,192,3,255,0,21,34,102,28, + 4,0,1,248,0,7,142,0,14,3,0,28,1,128,56,1, + 192,120,1,224,120,0,224,120,0,240,240,0,240,240,0,240, + 240,0,240,240,0,248,240,0,248,248,0,248,120,1,248,120, + 1,248,120,3,248,60,7,120,30,14,120,15,252,120,3,240, + 120,0,0,240,0,0,240,0,0,240,0,0,240,60,0,224, + 124,0,224,124,1,192,124,1,192,120,3,128,112,3,0,56, + 6,0,28,28,0,15,248,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--49-490-72-72-P-256-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 35, '1' Height: 34 + Calculated Max Values w=49 h=46 x= 6 y=26 dx=52 dy= 0 ascent=37 len=252 + Font Bounding box w=128 h=62 x=-40 y=-15 + Calculated Min Values x=-2 y=-11 dx= 0 dy= 0 + Pure Font ascent =35 descent=-10 + X Font ascent =36 descent=-10 + Max Font ascent =37 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr35r[10371] U8G_SECTION(".progmem.u8g_font_osr35r") = { + 0,128,62,216,241,35,12,236,30,116,32,127,246,37,245,36, + 246,0,0,0,14,0,0,6,34,34,14,4,0,120,252,252, + 252,252,252,252,252,252,120,120,120,120,120,120,48,48,48,48, + 48,48,48,48,48,48,48,0,0,0,120,252,252,252,120,11, + 10,20,19,4,26,224,224,224,224,224,224,224,224,224,224,224, + 224,64,64,64,64,64,64,64,64,26,34,136,34,4,0,0, + 48,24,0,0,48,24,0,0,112,24,0,0,96,24,0,0, + 96,56,0,0,96,56,0,0,96,48,0,0,96,48,0,0, + 96,48,0,0,224,48,0,255,255,255,192,255,255,255,192,0, + 192,96,0,0,192,96,0,0,192,96,0,1,192,96,0,1, + 128,96,0,1,128,224,0,1,128,192,0,1,128,192,0,1, + 128,192,0,3,128,192,0,255,255,255,192,255,255,255,192,3, + 1,128,0,3,1,128,0,3,1,128,0,7,1,128,0,7, + 1,128,0,6,1,128,0,6,3,128,0,6,3,0,0,6, + 3,0,0,6,3,0,0,22,41,123,29,3,252,0,204,0, + 0,204,0,0,204,0,1,254,0,7,207,192,12,204,96,24, + 204,48,48,204,24,32,204,24,96,204,28,96,204,60,96,204, + 124,96,204,124,112,204,120,120,204,120,62,204,0,63,204,0, + 31,252,0,15,252,0,7,255,128,1,255,192,0,255,224,0, + 207,240,0,205,248,0,204,120,48,204,60,120,204,28,248,204, + 28,248,204,12,240,204,12,240,204,8,224,204,24,96,204,24, + 96,204,48,48,204,96,28,205,192,7,255,128,0,204,0,0, + 204,0,0,204,0,0,204,0,33,34,170,43,5,0,15,128, + 0,48,0,24,192,0,96,0,48,96,0,64,0,112,112,0, + 192,0,96,48,1,128,0,224,56,1,128,0,224,56,3,0, + 0,224,56,2,0,0,224,56,6,0,0,224,56,12,0,0, + 224,56,12,0,0,224,56,24,0,0,96,48,48,0,0,96, + 112,48,0,0,48,96,96,0,0,24,192,64,0,0,15,128, + 192,0,0,0,1,128,248,0,0,1,129,140,0,0,3,3, + 6,0,0,2,6,7,0,0,6,6,3,0,0,12,14,3, + 128,0,8,14,3,128,0,24,14,3,128,0,48,14,3,128, + 0,48,14,3,128,0,96,14,3,128,0,64,14,3,128,0, + 192,6,3,0,1,128,6,3,0,1,128,7,7,0,3,0, + 3,14,0,6,0,1,252,0,33,34,170,39,3,0,0,63, + 0,0,0,0,227,128,0,0,1,128,192,0,0,3,128,64, + 0,0,3,0,96,0,0,7,0,96,0,0,7,0,96,0, + 0,7,0,224,0,0,7,0,192,0,0,7,129,192,0,0, + 7,131,128,0,0,3,199,0,0,0,3,238,0,0,0,1, + 248,0,0,0,0,248,7,255,128,1,248,0,252,0,3,252, + 0,112,0,7,62,0,112,0,14,63,0,96,0,28,31,0, + 96,0,60,15,128,192,0,56,7,192,192,0,120,7,193,128, + 0,120,3,225,128,0,240,1,243,0,0,240,1,254,0,0, + 240,0,254,0,0,240,0,124,0,0,248,0,62,0,0,248, + 0,62,1,0,120,0,127,1,0,60,0,207,130,0,30,3, + 135,252,0,15,254,1,248,0,3,10,10,11,4,26,224,224, + 224,224,224,224,64,64,64,64,11,46,92,18,5,246,0,64, + 0,224,1,192,3,128,3,0,6,0,14,0,12,0,28,0, + 24,0,56,0,48,0,48,0,112,0,96,0,96,0,96,0, + 224,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,224,0,96,0,96,0,96,0,112,0, + 48,0,48,0,56,0,24,0,28,0,12,0,14,0,6,0, + 3,0,3,128,1,192,0,224,0,64,11,45,90,18,2,246, + 64,0,96,0,112,0,56,0,28,0,12,0,14,0,6,0, + 3,0,3,0,3,128,1,128,1,192,0,192,0,192,0,192, + 0,224,0,96,0,96,0,96,0,96,0,96,0,96,0,96, + 0,96,0,96,0,96,0,96,0,96,0,224,0,192,0,192, + 0,192,1,128,1,128,3,128,3,0,7,0,6,0,14,0, + 12,0,24,0,56,0,112,0,224,0,18,20,60,25,4,14, + 0,224,0,1,224,0,1,224,0,1,224,0,96,195,128,240, + 135,192,248,143,192,124,159,128,7,248,0,1,224,0,1,224, + 0,6,184,0,124,143,128,248,135,192,240,195,192,97,193,128, + 1,224,0,1,224,0,1,224,0,0,224,0,41,41,246,45, + 2,248,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,255,255,255,255,255,128,255,255,255,255,255,128, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,7,15,15,14,4,247,120,252, + 252,254,126,6,6,6,4,12,8,24,48,96,64,12,3,6, + 18,3,11,255,240,255,240,255,240,6,5,5,14,4,1,120, + 252,252,252,120,16,46,92,22,3,246,0,3,0,3,0,3, + 0,6,0,6,0,6,0,12,0,12,0,12,0,24,0,24, + 0,24,0,48,0,48,0,48,0,48,0,96,0,96,0,96, + 0,192,0,192,0,192,1,128,1,128,1,128,3,0,3,0, + 3,0,6,0,6,0,6,0,12,0,12,0,12,0,24,0, + 24,0,24,0,48,0,48,0,48,0,96,0,96,0,96,0, + 96,0,192,0,192,0,23,34,102,28,2,0,0,124,0,1, + 199,0,7,1,128,6,0,192,14,0,224,28,0,112,60,0, + 120,60,0,120,56,0,56,120,0,60,120,0,60,120,0,60, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,120,0, + 60,120,0,60,120,0,60,120,0,60,60,0,120,60,0,120, + 28,0,112,28,0,112,14,0,224,7,1,192,3,131,128,0, + 254,0,17,34,102,28,6,0,0,64,0,0,64,0,0,192, + 0,0,192,0,1,192,0,7,192,0,255,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,255,255,128,255,255,128,21,34, + 102,28,4,0,3,252,0,14,31,0,16,7,192,32,3,224, + 96,1,240,64,1,240,192,0,240,192,0,248,224,0,248,252, + 0,248,254,0,248,126,0,248,126,0,240,62,1,240,0,1, + 224,0,3,192,0,3,128,0,7,0,0,14,0,0,28,0, + 0,112,0,0,224,0,1,192,0,3,0,0,6,0,16,12, + 0,16,24,0,16,16,0,16,48,0,48,48,0,112,127,255, + 240,127,255,240,127,255,240,127,255,240,21,34,102,28,4,0, + 3,248,0,14,31,0,24,7,128,48,3,192,112,3,192,120, + 1,224,124,1,224,126,1,224,126,1,224,60,1,224,0,1, + 224,0,3,192,0,3,192,0,7,128,0,14,0,15,248,0, + 31,143,0,14,3,128,0,3,224,0,1,224,0,1,240,0, + 0,248,0,0,248,0,0,248,60,0,248,126,0,248,254,0, + 248,254,0,248,252,1,240,224,1,240,224,3,224,96,3,192, + 48,15,0,15,254,0,23,34,102,28,3,0,0,1,128,0, + 1,128,0,3,128,0,7,128,0,7,128,0,15,128,0,31, + 128,0,31,128,0,55,128,0,119,128,0,231,128,0,199,128, + 1,199,128,3,135,128,3,7,128,6,7,128,14,7,128,12, + 7,128,24,7,128,56,7,128,48,7,128,96,7,128,224,7, + 128,255,255,254,0,7,128,0,7,128,0,7,128,0,7,128, + 0,7,128,0,7,128,0,7,128,0,7,128,3,255,254,3, + 255,254,21,35,105,28,4,0,48,0,64,60,3,192,63,255, + 128,63,255,0,63,252,0,55,240,0,48,0,0,48,0,0, + 48,0,0,48,0,0,48,0,0,48,0,0,48,0,0,51, + 254,0,60,7,128,56,3,192,48,1,224,48,1,240,48,1, + 240,0,0,240,0,0,248,0,0,248,0,0,248,0,0,248, + 60,0,248,126,0,248,254,0,248,254,0,240,252,1,240,248, + 1,224,240,1,224,112,3,192,112,7,128,60,31,0,15,252, + 0,21,34,102,28,4,0,0,126,0,1,193,128,3,128,192, + 7,0,64,14,0,224,28,1,224,28,3,224,56,3,224,56, + 3,192,120,0,0,120,0,0,120,0,0,120,0,0,240,126, + 0,241,255,128,243,131,192,247,1,224,254,1,240,252,0,240, + 252,0,240,248,0,248,248,0,120,248,0,120,248,0,120,120, + 0,120,120,0,120,120,0,248,120,0,240,56,0,240,60,0, + 224,28,1,224,14,3,192,7,7,128,1,254,0,19,34,102, + 28,5,0,255,255,224,255,255,224,255,255,224,255,255,224,224, + 0,224,192,0,64,128,0,64,128,0,192,128,0,128,128,1, + 128,0,1,128,0,3,0,0,2,0,0,6,0,0,12,0, + 0,24,0,0,24,0,0,48,0,0,112,0,0,112,0,0, + 224,0,0,224,0,1,224,0,1,224,0,3,224,0,3,224, + 0,3,224,0,7,240,0,7,240,0,7,240,0,7,240,0, + 7,240,0,3,240,0,3,224,0,23,34,102,28,3,0,1, + 254,0,7,135,128,30,1,192,56,0,224,120,0,112,112,0, + 112,240,0,56,240,0,56,240,0,56,240,0,56,248,0,56, + 252,0,112,126,0,112,127,192,224,63,241,192,31,255,0,7, + 255,128,7,255,224,12,63,248,56,7,252,112,1,252,112,0, + 126,224,0,62,224,0,62,224,0,62,224,0,30,224,0,30, + 224,0,28,96,0,60,112,0,56,48,0,120,24,0,240,14, + 1,192,3,255,0,21,34,102,28,4,0,1,248,0,7,142, + 0,14,3,0,28,1,128,56,1,192,120,1,224,120,0,224, + 120,0,240,240,0,240,240,0,240,240,0,240,240,0,248,240, + 0,248,248,0,248,120,1,248,120,1,248,120,3,248,60,7, + 120,30,14,120,15,252,120,3,240,120,0,0,240,0,0,240, + 0,0,240,0,0,240,60,0,224,124,0,224,124,1,192,124, + 1,192,120,3,128,112,3,0,56,6,0,28,28,0,15,248, + 0,6,22,22,14,4,1,120,252,252,252,120,0,0,0,0, + 0,0,0,0,0,0,0,0,120,252,252,252,120,7,31,31, + 14,4,248,120,252,252,252,120,0,0,0,0,0,0,0,0, + 0,0,0,120,252,252,254,126,14,6,6,4,12,8,24,48, + 96,64,38,40,200,46,4,249,0,0,0,0,28,0,0,0, + 0,120,0,0,0,1,240,0,0,0,7,192,0,0,0,15, + 0,0,0,0,60,0,0,0,0,240,0,0,0,3,192,0, + 0,0,15,0,0,0,0,62,0,0,0,0,248,0,0,0, + 1,224,0,0,0,7,128,0,0,0,30,0,0,0,0,120, + 0,0,0,1,224,0,0,0,7,192,0,0,0,31,0,0, + 0,0,60,0,0,0,0,240,0,0,0,0,240,0,0,0, + 0,124,0,0,0,0,31,0,0,0,0,7,128,0,0,0, + 1,224,0,0,0,0,120,0,0,0,0,30,0,0,0,0, + 7,128,0,0,0,3,224,0,0,0,0,248,0,0,0,0, + 60,0,0,0,0,15,0,0,0,0,3,192,0,0,0,0, + 240,0,0,0,0,60,0,0,0,0,31,0,0,0,0,7, + 192,0,0,0,1,224,0,0,0,0,120,0,0,0,0,28, + 41,11,66,45,2,7,255,255,255,255,255,128,255,255,255,255, + 255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255, + 255,128,255,255,255,255,255,128,38,40,200,46,4,249,224,0, + 0,0,0,120,0,0,0,0,62,0,0,0,0,15,128,0, + 0,0,3,192,0,0,0,0,240,0,0,0,0,60,0,0, + 0,0,15,0,0,0,0,3,192,0,0,0,1,240,0,0, + 0,0,124,0,0,0,0,30,0,0,0,0,7,128,0,0, + 0,1,224,0,0,0,0,120,0,0,0,0,30,0,0,0, + 0,15,128,0,0,0,3,224,0,0,0,0,240,0,0,0, + 0,60,0,0,0,0,60,0,0,0,0,248,0,0,0,3, + 224,0,0,0,7,128,0,0,0,30,0,0,0,0,120,0, + 0,0,1,224,0,0,0,7,128,0,0,0,31,0,0,0, + 0,124,0,0,0,0,240,0,0,0,3,192,0,0,0,15, + 0,0,0,0,60,0,0,0,0,240,0,0,0,3,224,0, + 0,0,15,128,0,0,0,30,0,0,0,0,120,0,0,0, + 0,224,0,0,0,0,18,34,102,23,3,0,7,240,0,28, + 60,0,48,15,0,96,7,128,192,7,128,192,3,192,192,3, + 192,248,3,192,252,3,192,124,7,192,56,7,128,0,15,128, + 0,31,0,0,62,0,0,124,0,0,240,0,0,224,0,1, + 192,0,3,0,0,6,0,0,14,8,0,12,8,0,12,8, + 0,12,8,0,6,16,0,3,224,0,0,0,0,0,0,0, + 0,0,0,1,224,0,3,240,0,3,240,0,3,240,0,1, + 224,0,35,36,180,40,2,0,0,3,254,0,0,0,30,7, + 192,0,0,112,0,112,0,1,192,0,24,0,3,128,0,12, + 0,7,0,0,6,0,14,0,0,3,0,28,0,120,1,0, + 24,1,196,225,128,56,7,7,224,128,48,14,3,224,192,112, + 12,3,192,192,96,28,3,192,64,96,56,3,192,96,224,56, + 3,192,96,192,120,3,128,96,192,112,7,128,96,192,112,7, + 128,96,192,240,7,128,96,192,224,7,0,96,192,224,15,0, + 224,192,224,15,0,192,192,224,14,0,192,96,224,30,1,128, + 96,224,62,1,128,96,224,62,3,0,96,96,78,6,0,48, + 49,143,12,0,48,31,7,240,0,24,0,0,0,0,12,0, + 0,0,0,6,0,0,0,0,3,0,0,0,0,1,192,0, + 112,0,0,112,1,192,0,0,31,255,0,0,34,35,175,37, + 2,0,0,0,192,0,0,0,0,192,0,0,0,0,224,0, + 0,0,1,224,0,0,0,1,224,0,0,0,3,240,0,0, + 0,3,240,0,0,0,3,240,0,0,0,6,248,0,0,0, + 6,248,0,0,0,6,248,0,0,0,12,124,0,0,0,12, + 124,0,0,0,12,124,0,0,0,24,62,0,0,0,24,62, + 0,0,0,24,30,0,0,0,48,31,0,0,0,48,31,0, + 0,0,48,15,0,0,0,96,15,128,0,0,96,15,128,0, + 0,96,7,128,0,0,255,255,192,0,0,255,255,192,0,0, + 192,3,192,0,1,128,3,224,0,1,128,3,224,0,3,128, + 1,224,0,3,0,1,240,0,3,0,1,240,0,7,0,0, + 240,0,7,0,0,248,0,31,128,1,252,0,255,248,31,255, + 192,28,35,140,34,3,0,255,255,240,0,7,192,62,0,7, + 128,15,0,7,128,7,128,7,128,3,192,7,128,1,224,7, + 128,1,224,7,128,1,224,7,128,1,224,7,128,1,224,7, + 128,1,224,7,128,1,224,7,128,3,192,7,128,3,128,7, + 128,7,0,7,128,30,0,7,255,240,0,7,128,62,0,7, + 128,15,0,7,128,7,128,7,128,3,192,7,128,3,224,7, + 128,1,224,7,128,1,240,7,128,1,240,7,128,1,240,7, + 128,1,240,7,128,1,240,7,128,1,240,7,128,3,224,7, + 128,3,224,7,128,7,192,7,128,15,128,7,192,62,0,255, + 255,240,0,26,36,144,32,3,0,0,63,0,128,0,225,224, + 128,3,128,113,128,7,0,63,128,14,0,31,128,30,0,15, + 128,28,0,7,128,60,0,3,128,60,0,3,128,124,0,3, + 128,120,0,1,128,120,0,1,128,120,0,0,128,248,0,0, + 128,248,0,0,0,248,0,0,0,248,0,0,0,248,0,0, + 0,248,0,0,0,248,0,0,0,248,0,0,0,248,0,0, + 0,248,0,0,0,120,0,0,192,120,0,0,192,120,0,0, + 192,60,0,0,192,60,0,0,128,60,0,1,128,28,0,1, + 128,14,0,3,0,14,0,3,0,7,0,6,0,3,128,12, + 0,0,224,56,0,0,127,224,0,33,35,175,38,3,0,255, + 255,252,0,0,7,192,15,0,0,7,128,3,192,0,7,128, + 0,224,0,7,128,0,112,0,7,128,0,120,0,7,128,0, + 60,0,7,128,0,62,0,7,128,0,30,0,7,128,0,31, + 0,7,128,0,31,0,7,128,0,15,0,7,128,0,15,0, + 7,128,0,15,128,7,128,0,15,128,7,128,0,15,128,7, + 128,0,15,128,7,128,0,15,128,7,128,0,15,128,7,128, + 0,15,128,7,128,0,15,128,7,128,0,15,128,7,128,0, + 15,0,7,128,0,31,0,7,128,0,31,0,7,128,0,30, + 0,7,128,0,30,0,7,128,0,60,0,7,128,0,60,0, + 7,128,0,120,0,7,128,0,112,0,7,128,0,224,0,7, + 128,3,192,0,7,192,15,0,0,255,255,252,0,0,28,35, + 140,34,3,0,255,255,255,240,7,192,7,240,7,128,1,240, + 7,128,0,240,7,128,0,112,7,128,0,112,7,128,0,48, + 7,128,0,48,7,128,0,48,7,128,0,16,7,128,32,16, + 7,128,32,16,7,128,32,0,7,128,96,0,7,128,96,0, + 7,128,96,0,7,128,224,0,7,255,224,0,7,129,224,0, + 7,128,96,0,7,128,96,0,7,128,96,0,7,128,32,16, + 7,128,32,16,7,128,32,16,7,128,0,16,7,128,0,48, + 7,128,0,48,7,128,0,48,7,128,0,112,7,128,0,112, + 7,128,0,240,7,128,1,240,255,255,255,240,255,255,255,240, + 27,35,140,34,4,0,255,255,255,224,15,128,15,224,7,128, + 3,224,7,128,1,224,7,128,0,224,7,128,0,224,7,128, + 0,96,7,128,0,96,7,128,0,96,7,128,0,32,7,128, + 32,32,7,128,32,32,7,128,32,0,7,128,96,0,7,128, + 96,0,7,128,96,0,7,128,224,0,7,255,224,0,7,129, + 224,0,7,128,96,0,7,128,96,0,7,128,96,0,7,128, + 32,0,7,128,32,0,7,128,32,0,7,128,0,0,7,128, + 0,0,7,128,0,0,7,128,0,0,7,128,0,0,7,128, + 0,0,7,128,0,0,7,128,0,0,15,128,0,0,255,254, + 0,0,30,36,144,34,3,0,0,63,128,192,0,224,224,192, + 3,128,56,192,7,0,29,192,14,0,15,192,14,0,7,192, + 28,0,7,192,60,0,3,192,60,0,3,192,124,0,1,192, + 120,0,1,192,120,0,0,192,120,0,0,192,248,0,0,192, + 248,0,0,0,248,0,0,0,248,0,0,0,248,0,0,0, + 248,0,255,252,248,0,255,252,248,0,7,192,248,0,7,192, + 248,0,7,192,248,0,7,192,120,0,7,192,120,0,7,192, + 124,0,7,192,60,0,7,192,60,0,7,192,28,0,15,192, + 30,0,15,192,14,0,28,192,7,0,24,192,3,0,48,192, + 1,192,224,192,0,127,128,192,33,35,175,38,3,0,255,252, + 31,255,128,7,192,0,248,0,7,128,0,240,0,7,128,0, + 240,0,7,128,0,240,0,7,128,0,240,0,7,128,0,240, + 0,7,128,0,240,0,7,128,0,240,0,7,128,0,240,0, + 7,128,0,240,0,7,128,0,240,0,7,128,0,240,0,7, + 128,0,240,0,7,128,0,240,0,7,128,0,240,0,7,255, + 255,240,0,7,128,0,240,0,7,128,0,240,0,7,128,0, + 240,0,7,128,0,240,0,7,128,0,240,0,7,128,0,240, + 0,7,128,0,240,0,7,128,0,240,0,7,128,0,240,0, + 7,128,0,240,0,7,128,0,240,0,7,128,0,240,0,7, + 128,0,240,0,7,128,0,240,0,7,128,0,240,0,7,128, + 0,240,0,7,192,0,248,0,255,252,31,255,128,14,35,70, + 19,3,0,255,252,7,192,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,192,255,252,23,35,105,27,2,0,0, + 127,254,0,7,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,60,3,192,126,3,192,254,3,192, + 254,3,192,252,3,192,224,3,128,224,7,128,96,7,0,112, + 14,0,56,28,0,15,248,0,32,35,140,37,3,0,255,252, + 63,254,7,192,15,240,7,128,7,192,7,128,3,128,7,128, + 7,0,7,128,6,0,7,128,12,0,7,128,28,0,7,128, + 56,0,7,128,112,0,7,128,224,0,7,129,192,0,7,129, + 128,0,7,131,128,0,7,135,128,0,7,143,192,0,7,155, + 224,0,7,179,224,0,7,225,240,0,7,193,240,0,7,128, + 248,0,7,128,248,0,7,128,124,0,7,128,124,0,7,128, + 62,0,7,128,62,0,7,128,31,0,7,128,31,0,7,128, + 15,128,7,128,15,192,7,128,7,192,7,128,7,224,7,128, + 3,224,7,192,7,248,255,252,127,255,27,35,140,33,3,0, + 255,254,0,0,7,192,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,32,7,128,0,96, + 7,128,0,96,7,128,0,96,7,128,0,96,7,128,0,224, + 7,128,0,224,7,128,0,224,7,128,1,224,7,128,3,224, + 7,128,7,224,255,255,255,224,255,255,255,224,36,35,175,41, + 3,0,255,224,0,63,240,7,224,0,62,0,7,224,0,126, + 0,7,240,0,94,0,7,240,0,94,0,6,240,0,222,0, + 6,248,0,222,0,6,248,0,158,0,6,120,0,158,0,6, + 120,1,158,0,6,124,1,158,0,6,60,1,30,0,6,60, + 1,30,0,6,62,3,30,0,6,62,3,30,0,6,30,2, + 30,0,6,30,2,30,0,6,31,6,30,0,6,15,4,30, + 0,6,15,4,30,0,6,15,140,30,0,6,7,140,30,0, + 6,7,136,30,0,6,7,200,30,0,6,7,216,30,0,6, + 3,216,30,0,6,3,208,30,0,6,3,240,30,0,6,1, + 240,30,0,6,1,240,30,0,6,1,224,30,0,6,0,224, + 30,0,15,0,224,30,0,31,128,192,62,0,255,240,195,255, + 240,33,36,180,38,3,255,255,192,7,255,128,7,192,0,252, + 0,7,224,0,120,0,7,240,0,48,0,7,240,0,48,0, + 7,248,0,48,0,6,248,0,48,0,6,124,0,48,0,6, + 126,0,48,0,6,62,0,48,0,6,31,0,48,0,6,31, + 0,48,0,6,15,128,48,0,6,15,192,48,0,6,7,192, + 48,0,6,3,224,48,0,6,3,224,48,0,6,1,240,48, + 0,6,1,248,48,0,6,0,248,48,0,6,0,124,48,0, + 6,0,124,48,0,6,0,62,48,0,6,0,63,48,0,6, + 0,31,48,0,6,0,15,176,0,6,0,15,176,0,6,0, + 7,240,0,6,0,7,240,0,6,0,3,240,0,6,0,1, + 240,0,6,0,1,240,0,15,0,0,240,0,31,128,0,112, + 0,255,240,0,112,0,0,0,0,48,0,28,36,144,33,3, + 0,0,31,128,0,0,240,240,0,1,192,56,0,3,128,28, + 0,7,0,14,0,14,0,7,0,30,0,7,128,28,0,3, + 128,60,0,3,192,60,0,3,192,124,0,3,224,120,0,1, + 224,120,0,1,224,248,0,1,224,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,120,0,1, + 224,120,0,1,224,124,0,3,224,124,0,3,224,60,0,3, + 192,60,0,3,192,30,0,7,128,14,0,7,0,14,0,15, + 0,7,0,14,0,3,128,28,0,0,224,112,0,0,127,224, + 0,28,35,140,33,3,0,255,255,240,0,7,192,30,0,7, + 128,7,128,7,128,7,192,7,128,3,224,7,128,3,224,7, + 128,1,240,7,128,1,240,7,128,1,240,7,128,1,240,7, + 128,1,240,7,128,1,240,7,128,3,224,7,128,3,224,7, + 128,7,192,7,128,7,128,7,128,30,0,7,255,248,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,128,0,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,128,0,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,128,0,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,192,0,0,255, + 254,0,0,28,44,176,33,3,248,0,31,128,0,0,240,240, + 0,1,192,56,0,3,128,28,0,7,0,14,0,14,0,7, + 0,30,0,7,128,28,0,3,128,60,0,3,192,60,0,3, + 192,124,0,3,224,120,0,1,224,120,0,1,224,248,0,1, + 224,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,120,0,1,224,120,0,1,224,124,0,3, + 224,124,0,3,224,60,15,3,192,60,25,195,192,30,48,199, + 128,14,96,231,128,15,96,111,0,7,96,126,0,3,224,124, + 16,0,240,120,16,0,127,240,16,0,0,112,16,0,0,112, + 16,0,0,120,48,0,0,120,32,0,0,124,96,0,0,63, + 192,0,0,63,192,0,0,15,0,30,35,140,35,3,0,255, + 255,248,0,7,192,62,0,7,128,15,128,7,128,7,192,7, + 128,7,192,7,128,3,224,7,128,3,224,7,128,3,224,7, + 128,3,224,7,128,3,224,7,128,3,192,7,128,7,192,7, + 128,7,128,7,128,15,0,7,128,60,0,7,255,224,0,7, + 128,240,0,7,128,56,0,7,128,28,0,7,128,30,0,7, + 128,30,0,7,128,31,0,7,128,15,0,7,128,15,0,7, + 128,15,0,7,128,15,0,7,128,15,128,7,128,15,132,7, + 128,15,132,7,128,15,132,7,128,15,132,7,128,15,140,7, + 128,7,248,7,192,7,248,255,254,3,240,23,36,108,30,4, + 0,3,240,0,14,28,24,56,7,24,48,3,248,112,1,248, + 96,0,248,224,0,120,224,0,56,224,0,56,224,0,56,224, + 0,24,240,0,24,248,0,8,126,0,8,127,192,0,63,240, + 0,31,252,0,15,255,128,3,255,224,0,255,240,128,63,248, + 128,7,252,128,1,252,192,0,126,192,0,62,192,0,30,224, + 0,14,224,0,14,240,0,14,240,0,14,248,0,12,252,0, + 28,222,0,24,199,0,48,195,128,96,128,255,192,28,35,140, + 35,4,0,255,255,255,240,254,15,131,240,248,15,1,240,240, + 15,0,240,224,15,0,112,192,15,0,112,192,15,0,48,192, + 15,0,48,192,15,0,48,128,15,0,16,128,15,0,16,128, + 15,0,16,128,15,0,16,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,128,0,3,255,254,0,34, + 35,175,39,3,0,255,252,3,255,192,7,192,0,126,0,7, + 128,0,60,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,7,128,0,24, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,3,192,0,24, + 0,3,192,0,48,0,3,192,0,48,0,1,224,0,96,0, + 0,224,0,96,0,0,112,0,192,0,0,60,3,128,0,0, + 15,254,0,0,34,36,180,37,2,255,255,255,7,255,192,15, + 240,0,126,0,3,224,0,56,0,3,224,0,56,0,3,240, + 0,48,0,1,240,0,48,0,1,240,0,48,0,0,248,0, + 96,0,0,248,0,96,0,0,248,0,96,0,0,124,0,192, + 0,0,124,0,192,0,0,124,0,192,0,0,62,0,192,0, + 0,62,1,128,0,0,62,1,128,0,0,31,1,128,0,0, + 31,3,0,0,0,31,3,0,0,0,15,131,0,0,0,15, + 134,0,0,0,15,134,0,0,0,7,198,0,0,0,7,204, + 0,0,0,3,204,0,0,0,3,236,0,0,0,3,232,0, + 0,0,1,248,0,0,0,1,248,0,0,0,1,248,0,0, + 0,0,240,0,0,0,0,240,0,0,0,0,240,0,0,0, + 0,96,0,0,0,0,96,0,0,0,0,96,0,0,49,36, + 252,52,2,255,255,254,127,255,15,255,128,15,240,15,248,1, + 248,0,3,224,3,240,0,240,0,3,224,3,224,0,96,0, + 3,224,3,240,0,96,0,1,240,3,240,0,96,0,1,240, + 3,240,0,192,0,1,240,3,240,0,192,0,0,240,7,248, + 0,192,0,0,248,6,248,0,128,0,0,248,6,248,1,128, + 0,0,248,6,124,1,128,0,0,120,14,124,1,128,0,0, + 124,12,124,3,0,0,0,124,12,62,3,0,0,0,60,28, + 62,3,0,0,0,60,24,62,6,0,0,0,60,24,30,6, + 0,0,0,62,24,31,6,0,0,0,30,56,31,12,0,0, + 0,30,48,31,12,0,0,0,30,48,15,140,0,0,0,15, + 48,15,152,0,0,0,15,112,15,152,0,0,0,15,96,7, + 216,0,0,0,15,96,7,208,0,0,0,7,224,7,240,0, + 0,0,7,192,3,240,0,0,0,7,192,3,240,0,0,0, + 3,192,3,224,0,0,0,3,192,3,224,0,0,0,3,128, + 1,224,0,0,0,1,128,1,192,0,0,0,1,128,1,192, + 0,0,0,1,128,0,192,0,0,0,1,0,0,128,0,0, + 33,35,175,36,2,0,127,255,31,255,0,3,240,3,240,0, + 1,240,1,224,0,1,240,1,192,0,0,248,1,128,0,0, + 120,3,0,0,0,124,3,0,0,0,60,6,0,0,0,62, + 14,0,0,0,31,12,0,0,0,31,24,0,0,0,15,152, + 0,0,0,15,176,0,0,0,7,224,0,0,0,7,224,0, + 0,0,3,224,0,0,0,3,224,0,0,0,1,240,0,0, + 0,3,240,0,0,0,3,248,0,0,0,6,248,0,0,0, + 14,124,0,0,0,12,124,0,0,0,24,62,0,0,0,56, + 62,0,0,0,48,31,0,0,0,96,31,0,0,0,224,15, + 128,0,0,192,15,128,0,1,128,7,192,0,3,128,7,192, + 0,3,128,3,224,0,7,128,3,240,0,31,192,3,248,0, + 255,248,63,255,128,32,35,140,35,2,0,255,254,15,255,15, + 224,1,248,7,224,0,240,3,224,0,96,3,240,0,64,1, + 240,0,192,1,248,0,128,0,248,0,128,0,252,1,0,0, + 124,3,0,0,62,2,0,0,62,6,0,0,31,4,0,0, + 31,12,0,0,15,136,0,0,7,216,0,0,7,208,0,0, + 3,240,0,0,3,224,0,0,1,224,0,0,1,224,0,0, + 1,224,0,0,1,224,0,0,1,224,0,0,1,224,0,0, + 1,224,0,0,1,224,0,0,1,224,0,0,1,224,0,0, + 1,224,0,0,1,224,0,0,1,224,0,0,1,224,0,0, + 1,240,0,0,127,255,192,26,35,140,32,3,0,63,255,255, + 192,63,128,15,128,62,0,31,128,60,0,31,0,56,0,62, + 0,56,0,62,0,48,0,124,0,48,0,252,0,96,0,248, + 0,96,1,240,0,64,3,240,0,64,3,224,0,0,7,192, + 0,0,7,192,0,0,15,128,0,0,31,128,0,0,31,0, + 0,0,62,0,0,0,126,0,0,0,124,0,0,0,252,0, + 0,0,248,0,64,1,240,0,64,3,240,0,64,3,224,0, + 192,7,192,0,192,7,192,0,192,15,128,1,192,31,128,1, + 192,31,0,3,192,62,0,3,192,126,0,7,192,124,0,15, + 128,248,0,63,128,255,255,255,128,10,45,90,19,6,247,255, + 192,254,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,254,0,255,192,16,46,92,22,3,246,192, + 0,192,0,192,0,96,0,96,0,96,0,48,0,48,0,48, + 0,24,0,24,0,24,0,12,0,12,0,12,0,6,0,6, + 0,6,0,2,0,3,0,3,0,3,0,1,128,1,128,1, + 128,0,192,0,192,0,192,0,96,0,96,0,96,0,48,0, + 48,0,48,0,24,0,24,0,24,0,12,0,12,0,12,0, + 6,0,6,0,6,0,3,0,3,0,3,10,45,90,19,3, + 247,255,192,31,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,31,192,255,192,22,18,54,28,3, + 17,0,16,0,0,48,0,0,56,0,0,120,0,0,108,0, + 0,206,0,1,198,0,1,131,0,3,3,0,7,1,128,6, + 1,192,14,0,192,28,0,96,24,0,112,56,0,48,48,0, + 56,96,0,24,224,0,12,25,2,8,25,0,248,255,255,255, + 128,255,255,255,128,8,9,9,22,4,25,224,240,240,120,60, + 12,6,3,1,21,22,66,24,2,1,7,248,0,24,30,0, + 16,15,0,48,7,0,56,7,128,60,7,128,62,7,128,28, + 7,128,0,7,128,0,31,128,3,247,128,31,7,128,60,7, + 128,120,7,128,248,7,128,240,7,128,240,15,136,240,15,136, + 240,23,136,248,23,152,120,39,240,63,195,240,22,35,105,25, + 1,0,255,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,31,128,15,32,224,15, + 64,240,15,192,112,15,128,120,15,128,120,15,0,120,15,0, + 60,15,0,60,15,0,60,15,0,60,15,0,60,15,0,60, + 15,0,60,15,0,60,15,0,120,15,0,120,15,128,120,13, + 128,112,12,192,224,12,96,224,8,63,128,17,22,66,21,2, + 1,7,252,0,14,6,0,28,3,0,56,3,0,56,3,128, + 120,15,128,120,15,128,240,15,128,240,7,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,128,120,0, + 128,120,0,128,56,1,0,56,1,0,28,2,0,14,6,0, + 7,248,0,22,35,105,25,2,0,0,63,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 15,227,192,28,19,192,60,11,192,56,15,192,120,7,192,120, + 7,192,120,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,120,3,192, + 120,3,192,120,7,192,56,7,192,60,15,192,28,27,192,7, + 243,252,18,22,66,22,2,1,7,248,0,14,28,0,28,14, + 0,56,15,0,56,7,128,120,7,128,120,7,128,240,7,192, + 240,7,192,240,7,192,255,255,192,240,0,0,240,0,0,240, + 0,0,240,0,128,120,0,128,120,0,128,120,1,128,56,1, + 0,28,3,0,14,6,0,7,252,0,16,35,70,16,1,0, + 0,248,3,198,7,3,15,7,14,15,14,15,30,15,30,6, + 30,0,30,0,30,0,30,0,30,0,255,240,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,255,240,23,33,99,27,3,246,7,252,124,30, + 14,206,60,7,142,124,7,158,120,3,222,120,3,192,120,3, + 192,120,3,192,120,3,192,120,3,192,60,7,128,28,7,128, + 14,14,0,3,248,0,28,0,0,96,0,0,192,0,0,192, + 0,0,224,0,0,255,255,128,127,255,224,15,255,240,28,0, + 112,48,0,56,96,0,24,192,0,24,192,0,24,192,0,24, + 192,0,48,96,0,48,120,0,96,30,7,192,3,254,0,24, + 35,105,27,1,0,255,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,15,192,15, + 48,240,15,32,112,15,64,120,15,128,120,15,128,120,15,0, + 120,15,0,120,15,0,120,15,0,120,15,0,120,15,0,120, + 15,0,120,15,0,120,15,0,120,15,0,120,15,0,120,15, + 0,120,15,0,120,15,0,120,15,0,120,255,195,255,10,34, + 68,14,2,0,28,0,62,0,62,0,62,0,28,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,254,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,255,192,13,45,90,16,254,245,0,112, + 0,248,0,248,0,248,0,112,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,15,248,0,120,0,120,0,120,0,120, + 0,120,0,120,0,120,0,120,0,120,0,120,0,120,0,120, + 0,120,0,120,0,120,0,120,0,120,0,120,0,120,0,120, + 0,120,0,120,0,120,0,120,0,120,240,120,240,120,240,112, + 224,240,96,224,115,192,31,0,22,35,105,24,1,0,254,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,15,252,30,3,224,30,1,128,30,3, + 0,30,6,0,30,6,0,30,12,0,30,24,0,30,48,0, + 30,120,0,30,248,0,30,188,0,31,190,0,31,30,0,30, + 15,0,30,15,128,30,7,128,30,3,192,30,3,224,30,1, + 224,30,3,240,255,207,252,11,35,70,13,1,0,254,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,255,224,36,22,110,40,2,1,254,63,129,252,0,30,97, + 195,14,0,30,193,230,15,0,30,128,228,7,128,31,0,248, + 7,128,31,0,248,7,128,30,0,240,7,128,30,0,240,7, + 128,30,0,240,7,128,30,0,240,7,128,30,0,240,7,128, + 30,0,240,7,128,30,0,240,7,128,30,0,240,7,128,30, + 0,240,7,128,30,0,240,7,128,30,0,240,7,128,30,0, + 240,7,128,30,0,240,7,128,30,0,240,7,128,30,0,240, + 7,128,255,199,254,63,240,23,22,66,27,2,1,254,31,128, + 30,97,224,30,192,224,30,128,240,31,0,240,31,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,255,199,254,19, + 22,66,24,2,1,3,252,0,14,14,0,28,7,0,60,3, + 128,56,3,192,120,3,192,120,1,224,248,1,224,240,1,224, + 240,1,224,240,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,120,1,224,120,3,192,56,3,192,60,3,128,28,7, + 0,14,14,0,3,252,0,22,33,99,25,1,246,254,63,128, + 30,97,192,30,192,224,31,128,112,31,0,120,31,0,120,30, + 0,120,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,120,30,0,120, + 31,0,120,31,0,112,31,128,224,30,192,192,30,127,128,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,255,224,0, + 22,33,99,25,2,246,7,240,64,28,24,192,28,12,192,56, + 12,192,120,7,192,120,7,192,120,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,120,3,192,120,3,192,120,7,192,56,7,192,60, + 15,192,28,27,192,7,243,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,31,252,17,22,66,20,2,1,254, + 31,0,30,35,128,30,67,128,30,207,128,30,143,128,31,143, + 0,31,2,0,31,0,0,31,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,255,192, + 0,17,22,66,22,3,1,31,226,0,112,50,0,96,30,0, + 192,14,0,192,6,0,224,2,0,240,2,0,252,0,0,127, + 0,0,63,192,0,31,248,0,7,254,0,128,255,0,192,31, + 0,192,7,128,224,3,128,224,1,128,240,1,128,240,1,128, + 248,3,0,198,7,0,131,252,0,14,32,64,17,1,0,2, + 0,2,0,2,0,2,0,2,0,6,0,6,0,6,0,14, + 0,30,0,255,248,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,4,30,4,30,4,30,12,15,8,15,248,7,240,23, + 22,66,27,2,0,254,7,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,1,240,30,1,240,30,1,240,30,2,240,14,6, + 240,15,12,240,3,240,254,24,23,69,26,1,255,255,225,255, + 31,0,124,15,0,48,15,0,48,15,0,32,7,128,96,7, + 128,96,3,192,64,3,192,192,1,192,192,1,224,128,1,225, + 128,0,241,128,0,241,0,0,113,0,0,123,0,0,58,0, + 0,62,0,0,62,0,0,28,0,0,28,0,0,12,0,0, + 8,0,36,23,115,38,1,255,255,231,255,31,240,31,1,248, + 7,128,31,0,240,3,0,15,0,120,3,0,15,0,120,2, + 0,7,128,120,6,0,7,128,252,6,0,3,128,252,4,0, + 3,192,188,12,0,3,192,158,12,0,1,225,158,8,0,1, + 225,14,24,0,0,225,15,24,0,0,243,15,16,0,0,242, + 7,48,0,0,114,7,176,0,0,126,7,160,0,0,62,3, + 224,0,0,60,3,192,0,0,28,1,192,0,0,28,1,192, + 0,0,24,1,128,0,0,8,0,128,0,22,22,66,26,2, + 0,255,207,248,31,3,192,31,3,128,15,3,0,7,131,0, + 7,198,0,3,196,0,1,236,0,1,248,0,0,240,0,0, + 112,0,0,120,0,0,124,0,0,220,0,1,158,0,1,15, + 0,3,15,0,6,7,128,4,7,192,12,3,192,28,3,224, + 255,15,252,24,33,99,26,1,245,255,225,255,31,0,120,15, + 0,48,15,0,48,7,0,32,7,128,96,7,128,96,3,192, + 64,3,192,192,3,192,192,1,224,128,1,225,128,0,225,128, + 0,241,128,0,241,0,0,115,0,0,123,0,0,122,0,0, + 62,0,0,62,0,0,60,0,0,28,0,0,28,0,0,24, + 0,0,24,0,0,24,0,24,48,0,60,48,0,60,48,0, + 60,96,0,56,96,0,31,192,0,15,0,0,17,22,66,22, + 2,0,255,255,128,248,7,128,224,15,0,224,31,0,192,30, + 0,192,60,0,128,124,0,128,120,0,0,240,0,1,240,0, + 1,224,0,3,192,0,7,192,0,7,128,128,15,0,128,31, + 0,128,30,0,128,60,1,128,124,1,128,120,3,128,240,15, + 128,255,255,128,11,45,90,21,6,247,0,224,1,128,7,0, + 14,0,12,0,28,0,28,0,28,0,28,0,30,0,30,0, + 14,0,14,0,15,0,15,0,7,0,7,0,7,0,7,0, + 6,0,4,0,24,0,224,0,56,0,12,0,6,0,6,0, + 7,0,7,0,7,0,15,0,15,0,15,0,14,0,30,0, + 30,0,28,0,28,0,28,0,28,0,12,0,12,0,6,0, + 3,128,0,224,2,46,46,14,6,246,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,11,45,90,20,4,247,192,0, + 112,0,28,0,12,0,6,0,7,0,7,0,7,0,7,0, + 15,0,15,0,14,0,30,0,30,0,30,0,28,0,28,0, + 28,0,28,0,12,0,4,0,3,0,0,224,3,0,6,0, + 12,0,28,0,28,0,28,0,28,0,30,0,30,0,30,0, + 14,0,15,0,15,0,7,0,7,0,7,0,7,0,6,0, + 6,0,12,0,56,0,224,0,28,9,36,32,2,8,31,128, + 0,192,127,240,0,96,127,252,0,48,227,255,0,48,192,127, + 224,48,192,31,248,112,192,3,255,224,96,0,255,192,48,0, + 31,128,255}; +/* + Fontname: -FreeType-P01type-Medium-R-Normal--8-80-72-72-P-35-ISO10646-1 + Copyright: Copyright Patrick Lauke 2012 + Capital A Height: 4, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 1 y= 2 dx= 6 dy= 0 ascent= 4 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 4 descent=-2 + X Font ascent = 5 descent=-2 + Max Font ascent = 4 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_p01type[1163] U8G_SECTION(".progmem.u8g_font_p01type") = { + 0,5,6,0,254,4,1,81,2,129,32,255,254,4,254,5, + 254,0,0,0,4,0,0,1,5,5,3,1,255,128,128,128, + 0,128,3,2,2,4,0,2,160,160,5,5,5,6,0,255, + 80,248,80,248,80,255,4,4,4,5,0,0,144,32,64,144, + 4,5,5,5,0,255,64,128,80,160,80,1,2,2,2,0, + 2,128,128,2,5,5,3,0,255,64,128,128,128,64,2,5, + 5,3,0,255,128,64,64,64,128,3,3,3,4,0,0,160, + 64,160,3,3,3,4,0,0,64,224,64,2,2,2,3,0, + 255,64,128,3,1,1,4,0,1,224,1,1,1,2,0,0, + 128,4,4,4,5,0,255,16,32,64,128,3,5,5,4,0, + 255,96,160,160,160,192,1,5,5,2,0,255,128,128,128,128, + 128,3,5,5,4,0,255,192,32,224,128,96,3,5,5,4, + 0,255,192,32,192,32,192,3,5,5,4,0,255,160,160,224, + 32,32,3,5,5,4,0,255,96,128,224,32,192,3,5,5, + 4,0,255,96,128,224,160,192,3,5,5,4,0,255,224,32, + 32,64,64,3,5,5,4,0,255,96,160,224,160,192,3,5, + 5,4,0,255,96,160,224,32,192,1,3,3,2,0,0,128, + 0,128,2,4,4,3,0,255,64,0,64,128,3,5,5,4, + 0,255,32,64,128,64,32,3,3,3,4,0,0,224,0,224, + 3,5,5,4,0,255,128,64,32,64,128,4,5,5,5,0, + 255,224,16,96,0,64,4,5,5,5,0,255,112,144,176,128, + 224,4,4,4,5,0,0,112,144,240,144,4,5,5,5,0, + 255,112,144,224,144,224,4,4,4,5,0,0,112,128,128,240, + 4,4,4,5,0,0,224,144,144,240,4,5,5,5,0,255, + 112,128,224,128,112,4,4,4,5,0,0,240,128,224,128,4, + 4,4,5,0,0,112,128,144,224,4,4,4,5,0,0,144, + 144,240,144,1,4,4,2,0,0,128,128,128,128,2,4,4, + 3,0,0,64,64,64,128,4,4,4,5,0,0,144,144,224, + 144,4,4,4,5,0,0,128,128,128,112,4,4,4,5,0, + 0,144,240,144,144,4,4,4,5,0,0,144,208,176,144,4, + 4,4,5,0,0,112,144,144,224,4,4,4,5,0,0,112, + 144,224,128,4,4,4,5,0,0,112,144,160,208,4,4,4, + 5,0,0,112,144,224,144,4,5,5,5,0,255,112,128,240, + 16,224,5,4,4,6,0,0,248,32,32,32,4,4,4,5, + 0,0,144,144,144,224,4,4,4,5,0,0,144,144,144,96, + 5,4,4,6,0,0,168,168,168,216,4,4,4,5,0,0, + 144,144,96,144,4,4,4,5,0,0,144,240,16,224,4,4, + 4,5,0,0,240,32,64,240,2,5,5,3,0,255,192,128, + 128,128,192,4,4,4,5,0,255,128,64,32,16,2,5,5, + 3,0,255,192,64,64,64,192,255,4,1,1,5,0,255,240, + 255,3,3,3,4,0,0,96,160,224,3,4,4,4,0,0, + 128,224,160,192,3,3,3,4,0,0,96,128,224,3,4,4, + 4,0,0,32,96,160,224,3,5,5,4,0,254,96,160,224, + 128,96,3,4,4,4,0,0,96,64,224,64,3,5,5,4, + 0,254,96,160,224,32,192,3,4,4,4,0,0,128,192,160, + 160,1,3,3,2,0,0,128,128,128,2,5,5,3,0,254, + 64,64,64,64,128,3,4,4,4,0,0,128,160,192,160,1, + 4,4,2,0,0,128,128,128,128,5,3,3,6,0,0,80, + 168,168,3,3,3,4,0,0,192,160,160,3,3,3,4,0, + 0,96,160,192,3,5,5,4,0,254,96,160,192,128,128,3, + 5,5,4,0,254,192,160,96,32,32,3,3,3,4,0,0, + 96,128,128,3,5,5,4,0,254,96,128,224,32,192,3,4, + 4,4,0,0,64,224,64,32,3,3,3,4,0,0,160,160, + 96,3,3,3,4,0,0,160,160,64,5,3,3,6,0,0, + 168,168,80,3,3,3,4,0,0,160,64,160,3,5,5,4, + 0,254,160,160,96,32,192,3,3,3,4,0,0,224,64,224, + 3,5,5,4,0,255,96,64,128,64,96,1,5,5,2,0, + 255,128,128,128,128,128,3,5,5,4,0,255,192,64,32,64, + 192,4,2,2,5,0,1,80,160,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,1,5,5,2,0, + 255,128,0,128,128,128,255,255,255,255,1,5,5,3,1,255, + 128,128,0,128,128,255,255,255,255,5,5,5,6,0,255,40, + 80,160,80,40,3,2,2,4,0,0,224,32,3,1,1,4, + 0,1,224,255,255,255,3,5,5,4,0,255,64,224,64,0, + 224,255,255,255,255,255,1,1,1,2,0,1,128,255,255,255, + 5,5,5,6,0,255,160,80,40,80,160,255,255,255,4,5, + 5,5,0,255,32,0,96,128,112,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 3,3,3,4,0,0,160,64,160,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,3,5,5,4,0,255,64,0, + 224,0,64,255,255,255,255,255,255,255,255}; +/* + Fontname: -FreeType-P01type-Medium-R-Normal--8-80-72-72-P-35-ISO10646-1 + Copyright: Copyright Patrick Lauke 2012 + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 4 h= 5 x= 0 y= 1 dx= 5 dy= 0 ascent= 4 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 4 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_p01typen[177] U8G_SECTION(".progmem.u8g_font_p01typen") = { + 0,5,6,0,254,5,0,0,0,0,42,57,0,4,255,5, + 0,3,3,3,4,0,0,160,64,160,3,3,3,4,0,0, + 64,224,64,2,2,2,3,0,255,64,128,3,1,1,4,0, + 1,224,1,1,1,2,0,0,128,4,4,4,5,0,255,16, + 32,64,128,3,5,5,4,0,255,96,160,160,160,192,1,5, + 5,2,0,255,128,128,128,128,128,3,5,5,4,0,255,192, + 32,224,128,96,3,5,5,4,0,255,192,32,192,32,192,3, + 5,5,4,0,255,160,160,224,32,32,3,5,5,4,0,255, + 96,128,224,32,192,3,5,5,4,0,255,96,128,224,160,192, + 3,5,5,4,0,255,224,32,32,64,64,3,5,5,4,0, + 255,96,160,224,160,192,3,5,5,4,0,255,96,160,224,32, + 192}; +/* + Fontname: -FreeType-P01type-Medium-R-Normal--8-80-72-72-P-35-ISO10646-1 + Copyright: Copyright Patrick Lauke 2012 + Capital A Height: 4, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 1 y= 2 dx= 6 dy= 0 ascent= 4 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 4 descent=-2 + X Font ascent = 5 descent=-2 + Max Font ascent = 4 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_p01typer[938] U8G_SECTION(".progmem.u8g_font_p01typer") = { + 0,5,6,0,254,4,1,81,2,129,32,127,254,4,254,5, + 254,0,0,0,4,0,0,1,5,5,3,1,255,128,128,128, + 0,128,3,2,2,4,0,2,160,160,5,5,5,6,0,255, + 80,248,80,248,80,255,4,4,4,5,0,0,144,32,64,144, + 4,5,5,5,0,255,64,128,80,160,80,1,2,2,2,0, + 2,128,128,2,5,5,3,0,255,64,128,128,128,64,2,5, + 5,3,0,255,128,64,64,64,128,3,3,3,4,0,0,160, + 64,160,3,3,3,4,0,0,64,224,64,2,2,2,3,0, + 255,64,128,3,1,1,4,0,1,224,1,1,1,2,0,0, + 128,4,4,4,5,0,255,16,32,64,128,3,5,5,4,0, + 255,96,160,160,160,192,1,5,5,2,0,255,128,128,128,128, + 128,3,5,5,4,0,255,192,32,224,128,96,3,5,5,4, + 0,255,192,32,192,32,192,3,5,5,4,0,255,160,160,224, + 32,32,3,5,5,4,0,255,96,128,224,32,192,3,5,5, + 4,0,255,96,128,224,160,192,3,5,5,4,0,255,224,32, + 32,64,64,3,5,5,4,0,255,96,160,224,160,192,3,5, + 5,4,0,255,96,160,224,32,192,1,3,3,2,0,0,128, + 0,128,2,4,4,3,0,255,64,0,64,128,3,5,5,4, + 0,255,32,64,128,64,32,3,3,3,4,0,0,224,0,224, + 3,5,5,4,0,255,128,64,32,64,128,4,5,5,5,0, + 255,224,16,96,0,64,4,5,5,5,0,255,112,144,176,128, + 224,4,4,4,5,0,0,112,144,240,144,4,5,5,5,0, + 255,112,144,224,144,224,4,4,4,5,0,0,112,128,128,240, + 4,4,4,5,0,0,224,144,144,240,4,5,5,5,0,255, + 112,128,224,128,112,4,4,4,5,0,0,240,128,224,128,4, + 4,4,5,0,0,112,128,144,224,4,4,4,5,0,0,144, + 144,240,144,1,4,4,2,0,0,128,128,128,128,2,4,4, + 3,0,0,64,64,64,128,4,4,4,5,0,0,144,144,224, + 144,4,4,4,5,0,0,128,128,128,112,4,4,4,5,0, + 0,144,240,144,144,4,4,4,5,0,0,144,208,176,144,4, + 4,4,5,0,0,112,144,144,224,4,4,4,5,0,0,112, + 144,224,128,4,4,4,5,0,0,112,144,160,208,4,4,4, + 5,0,0,112,144,224,144,4,5,5,5,0,255,112,128,240, + 16,224,5,4,4,6,0,0,248,32,32,32,4,4,4,5, + 0,0,144,144,144,224,4,4,4,5,0,0,144,144,144,96, + 5,4,4,6,0,0,168,168,168,216,4,4,4,5,0,0, + 144,144,96,144,4,4,4,5,0,0,144,240,16,224,4,4, + 4,5,0,0,240,32,64,240,2,5,5,3,0,255,192,128, + 128,128,192,4,4,4,5,0,255,128,64,32,16,2,5,5, + 3,0,255,192,64,64,64,192,255,4,1,1,5,0,255,240, + 255,3,3,3,4,0,0,96,160,224,3,4,4,4,0,0, + 128,224,160,192,3,3,3,4,0,0,96,128,224,3,4,4, + 4,0,0,32,96,160,224,3,5,5,4,0,254,96,160,224, + 128,96,3,4,4,4,0,0,96,64,224,64,3,5,5,4, + 0,254,96,160,224,32,192,3,4,4,4,0,0,128,192,160, + 160,1,3,3,2,0,0,128,128,128,2,5,5,3,0,254, + 64,64,64,64,128,3,4,4,4,0,0,128,160,192,160,1, + 4,4,2,0,0,128,128,128,128,5,3,3,6,0,0,80, + 168,168,3,3,3,4,0,0,192,160,160,3,3,3,4,0, + 0,96,160,192,3,5,5,4,0,254,96,160,192,128,128,3, + 5,5,4,0,254,192,160,96,32,32,3,3,3,4,0,0, + 96,128,128,3,5,5,4,0,254,96,128,224,32,192,3,4, + 4,4,0,0,64,224,64,32,3,3,3,4,0,0,160,160, + 96,3,3,3,4,0,0,160,160,64,5,3,3,6,0,0, + 168,168,80,3,3,3,4,0,0,160,64,160,3,5,5,4, + 0,254,160,160,96,32,192,3,3,3,4,0,0,224,64,224, + 3,5,5,4,0,255,96,64,128,64,96,1,5,5,2,0, + 255,128,128,128,128,128,3,5,5,4,0,255,192,64,32,64, + 192,4,2,2,5,0,1,80,160,255}; +/* + Fontname: -FreeType-Pixelle (Micro)-Medium-R-Normal--8-80-72-72-P-32-ISO10646-1 + Copyright: Copyright rdonaghy 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 7 x= 0 y= 4 dx= 6 dy= 0 ascent= 6 len= 7 + Font Bounding box w= 6 h= 8 x=-1 y=-2 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 6 descent=-2 + Max Font ascent = 6 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_pixelle_micro[1140] U8G_SECTION(".progmem.u8g_font_pixelle_micro") = { + 0,6,8,255,254,5,1,97,2,188,32,255,254,6,254,6, + 254,0,0,0,1,0,0,1,5,5,2,0,0,128,128,128, + 0,128,3,2,2,4,0,3,160,160,5,5,5,6,0,0, + 80,248,80,248,80,3,7,7,4,0,255,64,224,128,224,32, + 224,64,4,4,4,5,0,0,144,32,64,144,4,5,5,5, + 0,0,96,64,208,160,208,1,2,2,2,0,3,128,128,2, + 7,7,3,0,255,64,128,128,128,128,128,64,2,7,7,3, + 0,255,128,64,64,64,64,64,128,3,4,4,4,0,0,64, + 224,64,160,3,3,3,4,0,0,64,224,64,1,2,2,2, + 0,255,128,128,3,1,1,4,0,1,224,1,1,1,2,0, + 0,128,3,6,6,4,0,0,32,32,64,64,128,128,3,5, + 5,4,0,0,64,160,224,160,64,3,5,5,4,0,0,192, + 64,64,64,224,3,5,5,4,0,0,64,160,32,64,224,3, + 5,5,4,0,0,192,32,64,32,192,3,5,5,4,0,0, + 160,160,224,32,32,3,5,5,4,0,0,224,128,224,32,192, + 3,5,5,4,0,0,64,160,192,160,64,3,5,5,4,0, + 0,224,32,64,64,128,3,5,5,4,0,0,64,160,64,160, + 64,3,5,5,4,0,0,64,160,96,160,64,1,3,3,2, + 0,0,128,0,128,1,4,4,2,0,255,128,0,128,128,2, + 3,3,3,0,0,64,128,64,3,3,3,4,0,0,224,0, + 224,2,3,3,3,0,0,128,64,128,3,5,5,4,0,0, + 64,160,32,64,64,5,6,6,6,0,0,112,136,168,184,128, + 120,3,5,5,4,0,0,64,160,224,160,160,3,5,5,4, + 0,0,192,160,192,160,192,3,5,5,4,0,0,64,160,128, + 160,64,3,5,5,4,0,0,192,160,160,160,192,3,5,5, + 4,0,0,224,128,192,128,224,3,5,5,4,0,0,224,128, + 192,128,128,3,5,5,4,0,0,64,160,128,160,96,3,5, + 5,4,0,0,160,160,224,160,160,3,5,5,4,0,0,224, + 64,64,64,224,3,5,5,4,0,0,32,32,32,160,64,3, + 5,5,4,0,0,160,160,192,160,160,3,5,5,4,0,0, + 128,128,128,128,224,3,5,5,4,0,0,160,224,224,160,160, + 3,5,5,4,0,0,160,224,224,224,160,3,5,5,4,0, + 0,64,160,160,160,64,3,5,5,4,0,0,192,160,192,128, + 128,3,5,5,4,0,0,64,160,160,224,96,3,5,5,4, + 0,0,192,160,192,160,160,3,5,5,4,0,0,96,128,64, + 32,224,3,5,5,4,0,0,224,64,64,64,64,3,5,5, + 4,0,0,160,160,160,160,64,3,5,5,4,0,0,160,160, + 160,64,64,3,5,5,4,0,0,160,160,224,224,160,3,5, + 5,4,0,0,160,160,64,160,160,3,5,5,4,0,0,160, + 160,64,64,64,3,5,5,4,0,0,224,32,64,128,224,2, + 7,7,3,0,255,192,128,128,128,128,128,192,3,6,6,4, + 0,0,128,128,64,64,32,32,2,7,7,3,0,255,192,64, + 64,64,64,64,192,3,2,2,4,0,3,64,160,3,1,1, + 4,0,0,224,1,2,2,2,0,4,128,128,3,3,3,4, + 0,0,96,160,96,3,5,5,4,0,0,128,128,192,160,192, + 3,3,3,4,0,0,96,128,96,3,5,5,4,0,0,32, + 32,96,160,96,3,3,3,4,0,0,96,224,96,2,5,5, + 3,0,0,64,128,192,128,128,3,5,5,4,0,254,96,160, + 96,160,64,3,5,5,4,0,0,128,128,192,160,160,1,5, + 5,2,0,0,128,0,128,128,128,3,7,7,3,255,254,32, + 0,32,32,32,160,64,3,6,6,4,0,0,128,128,128,160, + 192,160,1,6,6,2,0,0,128,128,128,128,128,128,5,3, + 3,6,0,0,208,168,168,3,3,3,4,0,0,192,160,160, + 3,3,3,4,0,0,64,160,64,3,5,5,4,0,254,192, + 160,192,128,128,3,5,5,4,0,254,96,160,96,32,32,3, + 3,3,4,0,0,192,160,128,3,3,3,4,0,0,96,64, + 192,3,5,5,4,0,0,64,64,224,64,64,3,3,3,4, + 0,0,160,160,64,3,3,3,4,0,0,160,64,64,5,3, + 3,6,0,0,168,168,208,3,3,3,4,0,0,160,64,160, + 3,5,5,4,0,254,160,160,96,160,64,3,3,3,4,0, + 0,224,64,224,3,7,7,4,0,255,32,64,64,128,64,64, + 32,1,7,7,2,0,255,128,128,128,128,128,128,128,3,7, + 7,4,0,255,128,64,64,32,64,64,128,4,2,2,5,0, + 1,80,160,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255}; +/* + Fontname: -FreeType-Pixelle (Micro)-Medium-R-Normal--8-80-72-72-P-32-ISO10646-1 + Copyright: Copyright rdonaghy 2008 + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 3 h= 6 x= 0 y= 1 dx= 4 dy= 0 ascent= 6 len= 6 + Font Bounding box w= 6 h= 8 x=-1 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 6 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_pixelle_micron[180] U8G_SECTION(".progmem.u8g_font_pixelle_micron") = { + 0,6,8,255,254,5,0,0,0,0,42,57,0,6,255,5, + 0,3,4,4,4,0,0,64,224,64,160,3,3,3,4,0, + 0,64,224,64,1,2,2,2,0,255,128,128,3,1,1,4, + 0,1,224,1,1,1,2,0,0,128,3,6,6,4,0,0, + 32,32,64,64,128,128,3,5,5,4,0,0,64,160,224,160, + 64,3,5,5,4,0,0,192,64,64,64,224,3,5,5,4, + 0,0,64,160,32,64,224,3,5,5,4,0,0,192,32,64, + 32,192,3,5,5,4,0,0,160,160,224,32,32,3,5,5, + 4,0,0,224,128,224,32,192,3,5,5,4,0,0,64,160, + 192,160,64,3,5,5,4,0,0,224,32,64,64,128,3,5, + 5,4,0,0,64,160,64,160,64,3,5,5,4,0,0,64, + 160,96,160,64}; +/* + Fontname: -FreeType-Pixelle (Micro)-Medium-R-Normal--8-80-72-72-P-32-ISO10646-1 + Copyright: Copyright rdonaghy 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 7 x= 0 y= 4 dx= 6 dy= 0 ascent= 6 len= 7 + Font Bounding box w= 6 h= 8 x=-1 y=-2 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 6 descent=-2 + Max Font ascent = 6 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_pixelle_micror[1012] U8G_SECTION(".progmem.u8g_font_pixelle_micror") = { + 0,6,8,255,254,5,1,97,2,188,32,127,254,6,254,6, + 254,0,0,0,1,0,0,1,5,5,2,0,0,128,128,128, + 0,128,3,2,2,4,0,3,160,160,5,5,5,6,0,0, + 80,248,80,248,80,3,7,7,4,0,255,64,224,128,224,32, + 224,64,4,4,4,5,0,0,144,32,64,144,4,5,5,5, + 0,0,96,64,208,160,208,1,2,2,2,0,3,128,128,2, + 7,7,3,0,255,64,128,128,128,128,128,64,2,7,7,3, + 0,255,128,64,64,64,64,64,128,3,4,4,4,0,0,64, + 224,64,160,3,3,3,4,0,0,64,224,64,1,2,2,2, + 0,255,128,128,3,1,1,4,0,1,224,1,1,1,2,0, + 0,128,3,6,6,4,0,0,32,32,64,64,128,128,3,5, + 5,4,0,0,64,160,224,160,64,3,5,5,4,0,0,192, + 64,64,64,224,3,5,5,4,0,0,64,160,32,64,224,3, + 5,5,4,0,0,192,32,64,32,192,3,5,5,4,0,0, + 160,160,224,32,32,3,5,5,4,0,0,224,128,224,32,192, + 3,5,5,4,0,0,64,160,192,160,64,3,5,5,4,0, + 0,224,32,64,64,128,3,5,5,4,0,0,64,160,64,160, + 64,3,5,5,4,0,0,64,160,96,160,64,1,3,3,2, + 0,0,128,0,128,1,4,4,2,0,255,128,0,128,128,2, + 3,3,3,0,0,64,128,64,3,3,3,4,0,0,224,0, + 224,2,3,3,3,0,0,128,64,128,3,5,5,4,0,0, + 64,160,32,64,64,5,6,6,6,0,0,112,136,168,184,128, + 120,3,5,5,4,0,0,64,160,224,160,160,3,5,5,4, + 0,0,192,160,192,160,192,3,5,5,4,0,0,64,160,128, + 160,64,3,5,5,4,0,0,192,160,160,160,192,3,5,5, + 4,0,0,224,128,192,128,224,3,5,5,4,0,0,224,128, + 192,128,128,3,5,5,4,0,0,64,160,128,160,96,3,5, + 5,4,0,0,160,160,224,160,160,3,5,5,4,0,0,224, + 64,64,64,224,3,5,5,4,0,0,32,32,32,160,64,3, + 5,5,4,0,0,160,160,192,160,160,3,5,5,4,0,0, + 128,128,128,128,224,3,5,5,4,0,0,160,224,224,160,160, + 3,5,5,4,0,0,160,224,224,224,160,3,5,5,4,0, + 0,64,160,160,160,64,3,5,5,4,0,0,192,160,192,128, + 128,3,5,5,4,0,0,64,160,160,224,96,3,5,5,4, + 0,0,192,160,192,160,160,3,5,5,4,0,0,96,128,64, + 32,224,3,5,5,4,0,0,224,64,64,64,64,3,5,5, + 4,0,0,160,160,160,160,64,3,5,5,4,0,0,160,160, + 160,64,64,3,5,5,4,0,0,160,160,224,224,160,3,5, + 5,4,0,0,160,160,64,160,160,3,5,5,4,0,0,160, + 160,64,64,64,3,5,5,4,0,0,224,32,64,128,224,2, + 7,7,3,0,255,192,128,128,128,128,128,192,3,6,6,4, + 0,0,128,128,64,64,32,32,2,7,7,3,0,255,192,64, + 64,64,64,64,192,3,2,2,4,0,3,64,160,3,1,1, + 4,0,0,224,1,2,2,2,0,4,128,128,3,3,3,4, + 0,0,96,160,96,3,5,5,4,0,0,128,128,192,160,192, + 3,3,3,4,0,0,96,128,96,3,5,5,4,0,0,32, + 32,96,160,96,3,3,3,4,0,0,96,224,96,2,5,5, + 3,0,0,64,128,192,128,128,3,5,5,4,0,254,96,160, + 96,160,64,3,5,5,4,0,0,128,128,192,160,160,1,5, + 5,2,0,0,128,0,128,128,128,3,7,7,3,255,254,32, + 0,32,32,32,160,64,3,6,6,4,0,0,128,128,128,160, + 192,160,1,6,6,2,0,0,128,128,128,128,128,128,5,3, + 3,6,0,0,208,168,168,3,3,3,4,0,0,192,160,160, + 3,3,3,4,0,0,64,160,64,3,5,5,4,0,254,192, + 160,192,128,128,3,5,5,4,0,254,96,160,96,32,32,3, + 3,3,4,0,0,192,160,128,3,3,3,4,0,0,96,64, + 192,3,5,5,4,0,0,64,64,224,64,64,3,3,3,4, + 0,0,160,160,64,3,3,3,4,0,0,160,64,64,5,3, + 3,6,0,0,168,168,208,3,3,3,4,0,0,160,64,160, + 3,5,5,4,0,254,160,160,96,160,64,3,3,3,4,0, + 0,224,64,224,3,7,7,4,0,255,32,64,64,128,64,64, + 32,1,7,7,2,0,255,128,128,128,128,128,128,128,3,7, + 7,4,0,255,128,64,64,32,64,64,128,4,2,2,5,0, + 1,80,160,255}; +/* + Fontname: -FreeType-Robot de Niro-Medium-R-Normal--16-160-72-72-P-39-ISO10646-1 + Copyright: Copyright BMoser 2008 + Capital A Height: 6, '1' Height: 5 + Calculated Max Values w= 7 h= 8 x= 0 y= 6 dx= 8 dy= 0 ascent=10 len= 8 + Font Bounding box w=10 h=10 x=-1 y= 0 + Calculated Min Values x=-1 y= 0 dx= 0 dy= 0 + Pure Font ascent = 6 descent= 1 + X Font ascent = 9 descent= 0 + Max Font ascent =10 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_robot_de_niro[1376] U8G_SECTION(".progmem.u8g_font_robot_de_niro") = { + 0,10,10,255,0,6,1,97,2,193,32,255,1,10,0,9, + 0,0,0,0,2,0,0,2,5,5,3,0,3,192,128,128, + 0,128,3,2,2,4,0,6,160,160,5,5,5,6,0,3, + 80,248,80,248,80,4,7,7,5,0,2,96,224,16,96,128, + 112,96,5,5,5,6,0,3,192,208,32,88,24,4,5,5, + 5,0,3,96,160,80,160,80,1,2,2,2,0,6,128,128, + 2,7,7,3,0,2,64,128,128,128,128,128,64,2,7,7, + 3,0,2,128,64,64,64,64,64,128,3,3,3,4,0,6, + 160,64,160,3,3,3,4,0,4,64,224,64,2,2,2,3, + 0,2,64,128,3,1,1,4,0,5,224,1,1,1,2,0, + 3,128,3,5,5,4,0,3,32,32,64,128,128,3,5,5, + 4,0,3,64,160,160,160,64,3,5,5,4,0,3,192,64, + 64,64,224,3,5,5,4,0,3,192,32,96,128,224,3,5, + 5,4,0,3,192,32,224,32,224,3,5,5,4,0,3,160, + 160,224,32,32,3,5,5,4,0,3,96,128,224,32,224,3, + 5,5,4,0,3,96,128,224,160,64,4,5,5,5,0,3, + 224,32,112,32,32,3,5,5,4,0,3,96,160,224,160,192, + 3,5,5,4,0,3,96,160,224,32,192,1,3,3,2,0, + 4,128,0,128,2,4,4,3,0,3,64,0,64,128,2,3, + 3,3,0,4,64,128,64,3,3,3,4,0,4,224,0,224, + 2,3,3,3,0,4,128,64,128,3,5,5,4,0,3,224, + 32,64,0,64,5,7,7,6,0,2,120,136,184,168,184,128, + 120,4,6,6,4,255,2,48,80,112,80,80,128,4,5,5, + 5,0,3,224,80,96,80,224,3,5,5,4,0,3,96,128, + 128,160,64,4,5,5,5,0,3,224,80,80,80,32,3,5, + 5,4,0,3,96,128,192,128,224,4,6,6,5,0,2,176, + 64,96,64,64,128,4,5,5,5,0,3,96,128,176,160,96, + 4,6,6,4,255,2,80,80,112,80,80,128,1,5,5,2, + 0,3,128,128,128,128,128,3,5,5,4,0,3,64,32,32, + 32,192,5,5,5,6,0,3,208,80,96,80,72,4,5,5, + 5,0,3,192,64,64,64,176,6,5,5,6,255,3,168,84, + 84,84,68,4,5,5,5,0,3,224,80,80,80,80,3,5, + 5,4,0,3,96,160,160,160,64,4,5,5,5,0,3,176, + 80,96,64,64,4,5,5,5,0,3,64,160,160,160,112,5, + 5,5,5,255,3,176,80,96,80,72,3,5,5,4,0,3, + 96,128,224,32,192,3,5,5,4,0,3,224,64,64,64,64, + 4,5,5,5,0,3,160,160,160,160,80,3,5,5,4,0, + 3,160,160,160,160,64,6,5,5,7,0,3,172,168,168,168, + 88,4,5,5,5,0,3,160,160,64,160,176,4,7,7,4, + 255,1,208,80,80,48,16,16,32,3,5,5,4,0,3,224, + 32,64,128,224,2,7,7,3,0,2,192,128,128,128,128,128, + 192,3,5,5,4,0,3,128,128,64,32,32,2,7,7,3, + 0,2,192,64,64,64,64,64,192,3,3,3,4,0,5,64, + 160,160,4,1,1,5,0,3,240,2,2,2,3,0,6,128, + 64,4,4,4,5,0,3,96,160,160,80,4,5,5,5,0, + 3,64,96,80,80,160,3,4,4,4,0,3,96,128,160,64, + 4,6,6,5,0,3,16,32,96,160,160,208,4,4,4,5, + 0,3,96,160,208,96,4,7,7,4,255,1,48,64,96,64, + 64,64,128,4,6,6,5,0,1,80,160,160,96,32,192,3, + 7,7,4,0,3,64,128,128,192,160,160,160,1,5,5,2, + 0,3,128,0,128,128,128,3,7,7,3,255,1,32,0,32, + 32,32,32,192,4,7,7,5,0,2,128,128,160,224,160,144, + 16,4,6,6,5,0,3,32,80,96,64,64,176,6,4,4, + 7,0,3,88,168,168,164,3,4,4,4,0,3,64,160,160, + 160,3,4,4,4,0,3,96,160,160,192,4,6,6,5,0, + 1,176,80,80,96,64,128,4,6,6,5,0,1,80,160,160, + 96,32,32,4,4,4,5,0,3,160,80,64,64,3,4,4, + 4,0,3,64,160,32,192,2,6,6,3,0,3,128,128,192, + 128,128,64,4,4,4,5,0,3,160,160,160,80,3,4,4, + 4,0,3,160,160,160,64,6,4,4,7,0,3,172,168,168, + 80,3,4,4,4,0,3,160,160,64,160,3,5,5,4,0, + 2,160,160,64,32,192,4,5,5,5,0,2,224,32,64,144, + 96,3,7,7,4,0,2,96,64,64,128,64,64,96,1,7, + 7,2,0,2,128,128,128,128,128,128,128,3,7,7,4,0, + 2,192,64,64,32,64,64,192,4,2,2,5,0,5,80,160, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,4,7,7,5,0,2,96,144,64,224,64,128, + 240,255,255,255,4,7,7,5,0,2,96,128,96,144,96,16, + 96,255,7,8,8,8,0,2,124,130,154,170,162,154,130,124, + 255,255,255,255,7,8,8,8,0,2,124,130,186,170,178,170, + 130,124,255,255,255,255,255,255,255,6,5,5,7,0,3,108, + 232,104,40,40,255,255,255,255,255,255,255,255,255,255,255,255, + 255,4,8,8,4,255,2,80,0,48,80,112,80,80,128,255, + 255,3,7,7,4,0,1,96,128,128,160,96,64,32,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,3,7,7,4, + 0,3,160,0,96,160,160,160,64,4,4,4,5,0,4,144, + 96,96,144,255,255,255,255,4,7,7,5,0,3,80,0,160, + 160,160,160,80,255,255,4,7,7,4,255,1,32,80,96,80, + 96,64,128,255,255,255,255,4,6,6,5,0,3,80,0,96, + 160,160,80,255,255,255,4,6,6,5,0,3,96,0,96,160, + 208,96,4,6,6,5,0,3,96,0,96,160,208,96,4,7, + 7,5,0,3,64,160,0,96,160,208,96,255,255,255,255,255, + 255,255,255,255,255,255,3,6,6,4,0,3,160,0,96,160, + 160,192,5,5,5,6,0,3,32,0,248,0,32,255,255,255, + 255,4,6,6,5,0,3,80,0,160,160,160,80,255,255,255 + }; +/* + Fontname: -FreeType-Robot de Niro-Medium-R-Normal--16-160-72-72-P-39-ISO10646-1 + Copyright: Copyright BMoser 2008 + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 4 h= 5 x= 0 y= 6 dx= 5 dy= 0 ascent= 9 len= 5 + Font Bounding box w=10 h=10 x=-1 y= 0 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 9 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_robot_de_niron[178] U8G_SECTION(".progmem.u8g_font_robot_de_niron") = { + 0,10,10,255,0,5,0,0,0,0,42,57,0,9,0,5, + 0,3,3,3,4,0,6,160,64,160,3,3,3,4,0,4, + 64,224,64,2,2,2,3,0,2,64,128,3,1,1,4,0, + 5,224,1,1,1,2,0,3,128,3,5,5,4,0,3,32, + 32,64,128,128,3,5,5,4,0,3,64,160,160,160,64,3, + 5,5,4,0,3,192,64,64,64,224,3,5,5,4,0,3, + 192,32,96,128,224,3,5,5,4,0,3,192,32,224,32,224, + 3,5,5,4,0,3,160,160,224,32,32,3,5,5,4,0, + 3,96,128,224,32,224,3,5,5,4,0,3,96,128,224,160, + 64,4,5,5,5,0,3,224,32,112,32,32,3,5,5,4, + 0,3,96,160,224,160,192,3,5,5,4,0,3,96,160,224, + 32,192}; +/* + Fontname: -FreeType-Robot de Niro-Medium-R-Normal--16-160-72-72-P-39-ISO10646-1 + Copyright: Copyright BMoser 2008 + Capital A Height: 6, '1' Height: 5 + Calculated Max Values w= 6 h= 7 x= 0 y= 6 dx= 7 dy= 0 ascent=10 len= 7 + Font Bounding box w=10 h=10 x=-1 y= 0 + Calculated Min Values x=-1 y= 0 dx= 0 dy= 0 + Pure Font ascent = 6 descent= 1 + X Font ascent = 9 descent= 0 + Max Font ascent =10 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_robot_de_niror[1041] U8G_SECTION(".progmem.u8g_font_robot_de_niror") = { + 0,10,10,255,0,6,1,97,2,193,32,127,1,10,0,9, + 0,0,0,0,2,0,0,2,5,5,3,0,3,192,128,128, + 0,128,3,2,2,4,0,6,160,160,5,5,5,6,0,3, + 80,248,80,248,80,4,7,7,5,0,2,96,224,16,96,128, + 112,96,5,5,5,6,0,3,192,208,32,88,24,4,5,5, + 5,0,3,96,160,80,160,80,1,2,2,2,0,6,128,128, + 2,7,7,3,0,2,64,128,128,128,128,128,64,2,7,7, + 3,0,2,128,64,64,64,64,64,128,3,3,3,4,0,6, + 160,64,160,3,3,3,4,0,4,64,224,64,2,2,2,3, + 0,2,64,128,3,1,1,4,0,5,224,1,1,1,2,0, + 3,128,3,5,5,4,0,3,32,32,64,128,128,3,5,5, + 4,0,3,64,160,160,160,64,3,5,5,4,0,3,192,64, + 64,64,224,3,5,5,4,0,3,192,32,96,128,224,3,5, + 5,4,0,3,192,32,224,32,224,3,5,5,4,0,3,160, + 160,224,32,32,3,5,5,4,0,3,96,128,224,32,224,3, + 5,5,4,0,3,96,128,224,160,64,4,5,5,5,0,3, + 224,32,112,32,32,3,5,5,4,0,3,96,160,224,160,192, + 3,5,5,4,0,3,96,160,224,32,192,1,3,3,2,0, + 4,128,0,128,2,4,4,3,0,3,64,0,64,128,2,3, + 3,3,0,4,64,128,64,3,3,3,4,0,4,224,0,224, + 2,3,3,3,0,4,128,64,128,3,5,5,4,0,3,224, + 32,64,0,64,5,7,7,6,0,2,120,136,184,168,184,128, + 120,4,6,6,4,255,2,48,80,112,80,80,128,4,5,5, + 5,0,3,224,80,96,80,224,3,5,5,4,0,3,96,128, + 128,160,64,4,5,5,5,0,3,224,80,80,80,32,3,5, + 5,4,0,3,96,128,192,128,224,4,6,6,5,0,2,176, + 64,96,64,64,128,4,5,5,5,0,3,96,128,176,160,96, + 4,6,6,4,255,2,80,80,112,80,80,128,1,5,5,2, + 0,3,128,128,128,128,128,3,5,5,4,0,3,64,32,32, + 32,192,5,5,5,6,0,3,208,80,96,80,72,4,5,5, + 5,0,3,192,64,64,64,176,6,5,5,6,255,3,168,84, + 84,84,68,4,5,5,5,0,3,224,80,80,80,80,3,5, + 5,4,0,3,96,160,160,160,64,4,5,5,5,0,3,176, + 80,96,64,64,4,5,5,5,0,3,64,160,160,160,112,5, + 5,5,5,255,3,176,80,96,80,72,3,5,5,4,0,3, + 96,128,224,32,192,3,5,5,4,0,3,224,64,64,64,64, + 4,5,5,5,0,3,160,160,160,160,80,3,5,5,4,0, + 3,160,160,160,160,64,6,5,5,7,0,3,172,168,168,168, + 88,4,5,5,5,0,3,160,160,64,160,176,4,7,7,4, + 255,1,208,80,80,48,16,16,32,3,5,5,4,0,3,224, + 32,64,128,224,2,7,7,3,0,2,192,128,128,128,128,128, + 192,3,5,5,4,0,3,128,128,64,32,32,2,7,7,3, + 0,2,192,64,64,64,64,64,192,3,3,3,4,0,5,64, + 160,160,4,1,1,5,0,3,240,2,2,2,3,0,6,128, + 64,4,4,4,5,0,3,96,160,160,80,4,5,5,5,0, + 3,64,96,80,80,160,3,4,4,4,0,3,96,128,160,64, + 4,6,6,5,0,3,16,32,96,160,160,208,4,4,4,5, + 0,3,96,160,208,96,4,7,7,4,255,1,48,64,96,64, + 64,64,128,4,6,6,5,0,1,80,160,160,96,32,192,3, + 7,7,4,0,3,64,128,128,192,160,160,160,1,5,5,2, + 0,3,128,0,128,128,128,3,7,7,3,255,1,32,0,32, + 32,32,32,192,4,7,7,5,0,2,128,128,160,224,160,144, + 16,4,6,6,5,0,3,32,80,96,64,64,176,6,4,4, + 7,0,3,88,168,168,164,3,4,4,4,0,3,64,160,160, + 160,3,4,4,4,0,3,96,160,160,192,4,6,6,5,0, + 1,176,80,80,96,64,128,4,6,6,5,0,1,80,160,160, + 96,32,32,4,4,4,5,0,3,160,80,64,64,3,4,4, + 4,0,3,64,160,32,192,2,6,6,3,0,3,128,128,192, + 128,128,64,4,4,4,5,0,3,160,160,160,80,3,4,4, + 4,0,3,160,160,160,64,6,4,4,7,0,3,172,168,168, + 80,3,4,4,4,0,3,160,160,64,160,3,5,5,4,0, + 2,160,160,64,32,192,4,5,5,5,0,2,224,32,64,144, + 96,3,7,7,4,0,2,96,64,64,128,64,64,96,1,7, + 7,2,0,2,128,128,128,128,128,128,128,3,7,7,4,0, + 2,192,64,64,32,64,64,192,4,2,2,5,0,5,80,160, + 255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--11-80-100-100-P-61-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w=10 h=15 x= 3 y= 9 dx=11 dy= 0 ascent=11 len=15 + Font Bounding box w=11 h=15 x=-1 y=-4 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent =11 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb08[2612] U8G_SECTION(".progmem.u8g_font_symb08") = { + 0,11,15,255,252,7,1,152,3,60,32,255,254,11,252,7, + 254,0,0,0,3,0,1,1,7,7,3,1,0,128,128,128, + 128,128,0,128,7,7,7,7,0,0,130,68,124,40,40,16, + 16,5,7,7,5,0,0,80,80,248,80,248,80,80,5,7, + 7,6,0,0,248,8,8,120,8,8,248,7,7,7,8,0, + 0,100,188,168,86,42,42,68,6,7,7,7,0,0,32,80, + 80,108,152,152,108,4,5,5,5,0,0,224,16,112,16,224, + 3,9,9,4,0,254,32,64,64,128,128,128,64,64,32,3, + 9,9,4,1,254,128,64,64,32,32,32,64,64,128,3,3, + 3,5,1,2,160,64,160,5,5,5,6,0,0,32,32,248, + 32,32,2,3,3,2,0,254,64,64,128,5,1,1,6,0, + 2,248,1,1,1,2,1,0,128,3,7,7,3,0,0,32, + 32,64,64,64,128,128,4,7,7,5,0,0,96,144,144,144, + 144,144,96,3,7,7,5,1,0,64,192,64,64,64,64,224, + 4,7,7,5,0,0,96,144,16,32,32,64,240,4,7,7, + 5,0,0,96,144,16,96,16,16,224,5,7,7,5,0,0, + 16,48,80,144,248,16,16,4,7,7,5,0,0,112,64,224, + 16,16,16,224,4,7,7,5,0,0,112,128,224,144,144,144, + 96,4,7,7,5,0,0,240,144,32,32,64,64,64,4,7, + 7,5,0,0,96,144,144,96,144,144,96,4,7,7,5,0, + 0,96,144,144,144,112,32,192,1,5,5,2,1,0,128,0, + 0,0,128,2,7,7,2,0,254,64,0,0,0,64,64,128, + 6,5,5,7,0,0,12,48,192,48,12,5,3,3,6,0, + 1,248,0,248,6,5,5,6,0,0,192,48,12,48,192,3, + 7,7,5,1,0,64,160,32,64,64,0,64,5,6,6,6, + 0,0,104,176,0,248,0,248,7,7,7,8,0,0,16,56, + 40,40,124,68,238,5,7,7,6,0,0,240,72,72,112,72, + 72,240,7,7,7,8,0,0,238,68,40,16,40,68,238,6, + 7,7,7,0,0,48,48,88,72,140,132,252,5,7,7,6, + 0,0,248,72,64,112,64,72,248,7,7,7,8,0,0,56, + 16,124,146,124,16,56,5,7,7,6,0,0,248,72,64,64, + 64,64,224,7,7,7,8,0,0,238,68,68,124,68,68,238, + 3,7,7,3,0,0,224,64,64,64,64,64,224,6,7,7, + 7,0,0,16,40,152,76,72,72,48,6,7,7,7,0,0, + 236,72,80,96,80,72,236,7,7,7,7,0,0,16,16,40, + 40,68,68,238,9,7,14,10,0,0,227,128,99,0,85,0, + 85,0,93,0,73,0,235,128,7,7,7,8,0,0,238,100, + 84,84,76,76,228,6,7,7,7,0,0,120,204,132,132,132, + 204,120,7,7,7,8,0,0,254,68,68,68,68,68,238,6, + 7,7,7,0,0,120,204,132,180,132,204,120,5,7,7,6, + 0,0,240,72,72,112,64,64,224,5,7,7,6,0,0,248, + 136,64,32,64,136,248,5,7,7,6,0,0,248,168,32,32, + 32,32,112,7,7,7,8,0,0,238,68,40,56,16,16,56, + 4,7,7,5,0,254,112,128,128,128,96,16,96,8,7,7, + 9,0,0,60,102,66,66,102,165,231,6,7,7,7,0,0, + 120,72,0,48,0,132,252,9,7,14,9,0,0,221,128,73, + 0,73,0,62,0,8,0,8,0,28,0,5,7,7,6,0, + 0,248,136,16,32,64,136,248,2,9,9,3,0,254,192,128, + 128,128,128,128,128,128,192,5,5,5,7,1,0,32,0,0, + 0,136,2,9,9,3,1,254,192,64,64,64,64,64,64,64, + 192,5,7,7,7,1,0,32,32,32,32,32,32,248,5,1, + 1,5,0,254,248,6,1,1,5,0,9,252,6,5,5,7, + 0,0,104,168,144,148,104,4,10,10,5,0,254,96,144,144, + 160,144,144,208,160,128,128,5,7,7,6,0,254,200,80,80, + 32,80,80,152,4,8,8,5,0,0,96,144,64,96,144,144, + 144,96,4,5,5,5,0,0,96,144,192,144,96,5,9,9, + 6,0,254,32,32,112,168,168,168,112,32,32,5,7,7,6, + 0,254,200,168,40,48,16,32,32,5,7,7,6,0,254,80, + 232,72,72,72,8,8,3,5,5,4,0,0,192,64,64,64, + 96,5,7,7,6,0,254,48,168,168,168,112,32,32,5,5, + 5,6,0,0,72,216,96,80,72,6,8,8,6,0,0,192, + 160,32,32,80,80,148,136,5,7,7,6,0,254,144,144,144, + 144,232,128,192,5,5,5,6,0,0,136,136,80,80,32,4, + 5,5,5,0,0,96,144,144,144,96,5,5,5,6,0,0, + 248,80,80,88,208,4,7,7,5,0,0,96,144,144,240,144, + 144,96,4,8,8,5,0,253,96,144,144,144,224,128,128,128, + 5,5,5,6,0,0,120,144,144,144,96,4,5,5,5,0, + 0,240,64,64,80,96,5,5,5,6,0,0,80,200,72,72, + 48,7,6,6,8,0,0,254,68,130,146,146,108,7,5,5, + 8,0,0,68,130,146,146,108,4,10,10,5,0,254,128,176, + 64,112,128,128,128,96,16,112,7,7,7,7,0,254,146,84, + 84,84,56,16,16,4,10,10,5,0,254,128,176,96,128,128, + 128,128,96,16,112,3,9,9,5,1,254,32,64,64,64,128, + 64,64,64,32,1,9,9,2,0,254,128,128,128,128,128,128, + 128,128,128,3,9,9,5,1,254,128,64,64,64,32,64,64, + 64,128,5,2,2,6,0,2,104,176,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,6,7,7,7, + 0,0,140,212,112,32,32,32,112,3,3,3,3,0,5,32, + 64,128,5,7,7,6,0,0,8,48,192,48,8,0,248,4, + 7,7,3,255,0,16,16,32,32,64,64,128,7,3,3,7, + 0,1,108,146,108,5,9,9,5,0,254,24,32,112,32,32, + 32,32,32,192,5,5,5,7,1,0,112,112,248,248,32,5, + 5,5,7,1,0,32,112,248,112,32,5,5,5,7,1,0, + 216,248,248,112,32,5,5,5,7,1,0,32,112,248,248,32, + 10,5,10,10,0,0,33,0,64,128,255,192,64,128,33,0, + 10,5,10,10,0,0,32,0,64,0,255,192,64,0,32,0, + 5,14,14,6,0,252,32,112,168,32,32,32,32,32,32,32, + 32,32,32,32,10,5,10,10,0,0,1,0,0,128,255,192, + 0,128,1,0,5,13,13,6,0,254,32,32,32,32,32,32, + 32,32,32,32,168,112,32,3,4,4,4,0,3,64,160,160, + 64,5,7,7,6,0,0,32,32,248,32,32,0,248,5,3, + 3,4,0,5,40,80,160,5,7,7,6,0,0,128,96,24, + 96,128,0,248,5,5,5,6,0,0,136,80,32,80,136,6, + 3,3,7,0,1,108,144,108,4,8,8,5,0,0,96,144, + 16,16,112,144,144,96,4,3,3,5,0,1,96,240,96,5, + 5,5,6,0,0,32,0,248,0,32,5,5,5,6,0,0, + 16,248,32,248,64,5,5,5,6,0,1,248,0,248,0,248, + 5,5,5,6,0,0,104,176,0,104,176,7,1,1,9,1, + 0,146,1,15,15,6,2,252,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,10,1,2,10,0,2,255,192,6, + 6,6,7,0,0,4,4,4,68,252,64,7,7,7,8,0, + 0,204,102,52,92,76,38,98,6,9,9,7,0,255,124,132, + 200,24,12,4,68,232,48,8,8,8,8,0,0,108,146,146, + 92,20,18,82,163,7,8,8,9,1,254,16,36,74,82,106, + 108,160,96,7,7,7,8,0,0,56,68,170,146,170,68,56, + 7,7,7,8,0,0,56,68,146,186,146,68,56,7,9,9, + 8,0,255,2,60,76,138,146,162,100,120,128,7,5,5,8, + 0,0,56,68,130,130,130,7,5,5,8,0,0,130,130,130, + 68,56,7,5,5,7,0,0,248,4,2,4,248,7,7,7, + 7,0,254,248,4,2,4,248,0,254,7,7,7,7,0,255, + 4,62,72,136,80,62,32,7,5,5,7,0,0,62,64,128, + 64,62,7,7,7,7,0,254,62,64,128,64,62,0,254,5, + 5,5,7,1,0,120,128,248,128,120,5,7,7,7,1,255, + 16,120,144,248,160,120,64,7,7,7,8,0,0,2,4,8, + 16,32,64,254,6,7,7,7,0,0,252,132,132,72,72,48, + 48,7,8,8,8,0,255,56,68,250,170,178,174,68,56,7, + 8,8,8,0,255,56,68,154,170,162,154,68,56,10,5,10, + 10,0,2,253,0,170,128,42,128,42,128,122,192,8,9,9, + 9,0,255,255,66,66,66,66,66,66,66,231,6,10,10,6, + 0,0,4,4,8,8,72,208,80,80,32,32,1,1,1,3, + 1,2,128,6,3,3,7,0,0,252,4,4,5,5,5,6, + 0,0,32,80,80,136,136,5,5,5,6,0,0,136,136,80, + 80,32,10,5,10,11,0,0,33,0,127,128,128,64,127,128, + 33,0,9,5,10,10,0,0,32,0,127,128,128,0,127,128, + 32,0,5,10,10,6,0,0,32,112,216,80,80,80,80,80, + 80,80,9,5,10,10,0,0,2,0,255,0,0,128,255,0, + 2,0,5,10,10,6,0,0,80,80,80,80,80,80,80,216, + 80,32,7,7,7,7,0,0,16,40,68,198,68,40,16,3, + 9,9,3,0,254,32,32,64,64,128,64,64,32,32,7,8, + 8,8,0,255,56,68,186,170,178,170,68,56,7,8,8,8, + 0,255,56,68,154,162,162,154,68,56,8,5,5,9,0,2, + 250,85,85,85,85,6,9,9,7,0,255,252,132,64,32,16, + 32,64,132,252,3,14,14,4,1,252,32,64,64,128,128,128, + 128,128,128,128,128,128,128,128,1,15,15,4,1,252,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,3,15,15, + 4,1,252,128,128,128,128,128,128,128,128,128,128,128,128,64, + 64,32,3,14,14,4,1,252,224,128,128,128,128,128,128,128, + 128,128,128,128,128,128,1,15,15,4,1,252,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,3,13,13,4,1, + 254,128,128,128,128,128,128,128,128,128,128,128,128,224,3,14, + 14,5,2,252,96,128,128,128,128,128,128,128,128,128,128,128, + 128,128,3,15,15,5,0,252,32,32,32,32,32,64,128,64, + 32,32,32,32,32,32,32,3,13,13,5,2,254,128,128,128, + 128,128,128,128,128,128,128,128,128,96,1,15,15,5,2,252, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,255, + 3,9,9,3,0,254,128,128,64,64,32,64,64,128,128,3, + 12,12,3,0,254,32,64,64,64,64,64,64,64,64,64,64, + 128,4,14,14,7,3,252,48,80,128,128,128,128,128,128,128, + 128,128,128,128,128,1,15,15,7,0,252,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,4,13,13,7,0,254, + 16,16,16,16,16,16,16,16,16,16,16,160,192,3,14,14, + 4,0,252,128,64,64,32,32,32,32,32,32,32,32,32,32, + 32,1,15,15,4,2,252,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,3,15,15,4,0,252,32,32,32,32, + 32,32,32,32,32,32,32,32,64,64,128,3,14,14,4,0, + 252,224,32,32,32,32,32,32,32,32,32,32,32,32,32,1, + 15,15,4,2,252,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,3,13,13,4,0,254,32,32,32,32,32,32, + 32,32,32,32,32,32,224,3,14,14,5,0,252,192,32,32, + 32,32,32,32,32,32,32,32,32,32,32,3,15,15,5,2, + 252,128,128,128,128,128,64,32,64,128,128,128,128,128,128,128, + 3,13,13,5,0,254,32,32,32,32,32,32,32,32,32,32, + 32,32,192,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--11-80-100-100-P-61-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 9 h=10 x= 1 y= 9 dx=10 dy= 0 ascent=10 len=14 + Font Bounding box w=11 h=15 x=-1 y=-4 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent =10 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb08r[1211] U8G_SECTION(".progmem.u8g_font_symb08r") = { + 0,11,15,255,252,7,1,152,3,60,32,127,254,10,253,7, + 254,0,0,0,3,0,1,1,7,7,3,1,0,128,128,128, + 128,128,0,128,7,7,7,7,0,0,130,68,124,40,40,16, + 16,5,7,7,5,0,0,80,80,248,80,248,80,80,5,7, + 7,6,0,0,248,8,8,120,8,8,248,7,7,7,8,0, + 0,100,188,168,86,42,42,68,6,7,7,7,0,0,32,80, + 80,108,152,152,108,4,5,5,5,0,0,224,16,112,16,224, + 3,9,9,4,0,254,32,64,64,128,128,128,64,64,32,3, + 9,9,4,1,254,128,64,64,32,32,32,64,64,128,3,3, + 3,5,1,2,160,64,160,5,5,5,6,0,0,32,32,248, + 32,32,2,3,3,2,0,254,64,64,128,5,1,1,6,0, + 2,248,1,1,1,2,1,0,128,3,7,7,3,0,0,32, + 32,64,64,64,128,128,4,7,7,5,0,0,96,144,144,144, + 144,144,96,3,7,7,5,1,0,64,192,64,64,64,64,224, + 4,7,7,5,0,0,96,144,16,32,32,64,240,4,7,7, + 5,0,0,96,144,16,96,16,16,224,5,7,7,5,0,0, + 16,48,80,144,248,16,16,4,7,7,5,0,0,112,64,224, + 16,16,16,224,4,7,7,5,0,0,112,128,224,144,144,144, + 96,4,7,7,5,0,0,240,144,32,32,64,64,64,4,7, + 7,5,0,0,96,144,144,96,144,144,96,4,7,7,5,0, + 0,96,144,144,144,112,32,192,1,5,5,2,1,0,128,0, + 0,0,128,2,7,7,2,0,254,64,0,0,0,64,64,128, + 6,5,5,7,0,0,12,48,192,48,12,5,3,3,6,0, + 1,248,0,248,6,5,5,6,0,0,192,48,12,48,192,3, + 7,7,5,1,0,64,160,32,64,64,0,64,5,6,6,6, + 0,0,104,176,0,248,0,248,7,7,7,8,0,0,16,56, + 40,40,124,68,238,5,7,7,6,0,0,240,72,72,112,72, + 72,240,7,7,7,8,0,0,238,68,40,16,40,68,238,6, + 7,7,7,0,0,48,48,88,72,140,132,252,5,7,7,6, + 0,0,248,72,64,112,64,72,248,7,7,7,8,0,0,56, + 16,124,146,124,16,56,5,7,7,6,0,0,248,72,64,64, + 64,64,224,7,7,7,8,0,0,238,68,68,124,68,68,238, + 3,7,7,3,0,0,224,64,64,64,64,64,224,6,7,7, + 7,0,0,16,40,152,76,72,72,48,6,7,7,7,0,0, + 236,72,80,96,80,72,236,7,7,7,7,0,0,16,16,40, + 40,68,68,238,9,7,14,10,0,0,227,128,99,0,85,0, + 85,0,93,0,73,0,235,128,7,7,7,8,0,0,238,100, + 84,84,76,76,228,6,7,7,7,0,0,120,204,132,132,132, + 204,120,7,7,7,8,0,0,254,68,68,68,68,68,238,6, + 7,7,7,0,0,120,204,132,180,132,204,120,5,7,7,6, + 0,0,240,72,72,112,64,64,224,5,7,7,6,0,0,248, + 136,64,32,64,136,248,5,7,7,6,0,0,248,168,32,32, + 32,32,112,7,7,7,8,0,0,238,68,40,56,16,16,56, + 4,7,7,5,0,254,112,128,128,128,96,16,96,8,7,7, + 9,0,0,60,102,66,66,102,165,231,6,7,7,7,0,0, + 120,72,0,48,0,132,252,9,7,14,9,0,0,221,128,73, + 0,73,0,62,0,8,0,8,0,28,0,5,7,7,6,0, + 0,248,136,16,32,64,136,248,2,9,9,3,0,254,192,128, + 128,128,128,128,128,128,192,5,5,5,7,1,0,32,0,0, + 0,136,2,9,9,3,1,254,192,64,64,64,64,64,64,64, + 192,5,7,7,7,1,0,32,32,32,32,32,32,248,5,1, + 1,5,0,254,248,6,1,1,5,0,9,252,6,5,5,7, + 0,0,104,168,144,148,104,4,10,10,5,0,254,96,144,144, + 160,144,144,208,160,128,128,5,7,7,6,0,254,200,80,80, + 32,80,80,152,4,8,8,5,0,0,96,144,64,96,144,144, + 144,96,4,5,5,5,0,0,96,144,192,144,96,5,9,9, + 6,0,254,32,32,112,168,168,168,112,32,32,5,7,7,6, + 0,254,200,168,40,48,16,32,32,5,7,7,6,0,254,80, + 232,72,72,72,8,8,3,5,5,4,0,0,192,64,64,64, + 96,5,7,7,6,0,254,48,168,168,168,112,32,32,5,5, + 5,6,0,0,72,216,96,80,72,6,8,8,6,0,0,192, + 160,32,32,80,80,148,136,5,7,7,6,0,254,144,144,144, + 144,232,128,192,5,5,5,6,0,0,136,136,80,80,32,4, + 5,5,5,0,0,96,144,144,144,96,5,5,5,6,0,0, + 248,80,80,88,208,4,7,7,5,0,0,96,144,144,240,144, + 144,96,4,8,8,5,0,253,96,144,144,144,224,128,128,128, + 5,5,5,6,0,0,120,144,144,144,96,4,5,5,5,0, + 0,240,64,64,80,96,5,5,5,6,0,0,80,200,72,72, + 48,7,6,6,8,0,0,254,68,130,146,146,108,7,5,5, + 8,0,0,68,130,146,146,108,4,10,10,5,0,254,128,176, + 64,112,128,128,128,96,16,112,7,7,7,7,0,254,146,84, + 84,84,56,16,16,4,10,10,5,0,254,128,176,96,128,128, + 128,128,96,16,112,3,9,9,5,1,254,32,64,64,64,128, + 64,64,64,32,1,9,9,2,0,254,128,128,128,128,128,128, + 128,128,128,3,9,9,5,1,254,128,64,64,64,32,64,64, + 64,128,5,2,2,6,0,2,104,176,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--14-100-100-100-P-85-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=15 h=15 x= 7 y=11 dx=15 dy= 0 ascent=12 len=24 + Font Bounding box w=16 h=15 x=-1 y=-3 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb10[3433] U8G_SECTION(".progmem.u8g_font_symb10") = { + 0,16,15,255,253,10,2,6,4,121,32,255,253,12,253,10, + 253,0,0,0,4,0,1,1,10,10,5,2,0,128,128,128, + 128,128,128,128,0,128,128,9,10,20,9,0,0,128,128,65, + 0,65,0,62,0,34,0,34,0,20,0,20,0,8,0,8, + 0,7,10,10,7,0,0,20,20,20,126,40,40,252,80,80, + 80,6,10,10,8,1,0,252,4,4,4,252,4,4,4,4, + 252,9,10,20,12,1,0,121,128,151,0,146,0,148,0,108, + 0,27,0,20,128,36,128,68,128,195,0,9,10,20,11,1, + 0,48,0,72,0,72,0,112,0,39,0,114,0,202,0,132, + 0,206,128,123,0,5,7,7,6,0,0,224,16,8,120,8, + 16,224,3,13,13,5,1,253,32,64,64,128,128,128,128,128, + 128,128,64,64,32,3,13,13,5,1,253,128,64,64,32,32, + 32,32,32,32,32,64,64,128,5,6,6,7,1,2,32,168, + 112,112,168,32,7,7,7,8,0,0,16,16,16,254,16,16, + 16,2,4,4,3,0,254,64,64,64,128,7,1,1,8,0, + 3,254,1,2,2,3,1,0,128,128,4,10,10,4,0,0, + 16,16,32,32,32,64,64,64,128,128,6,10,10,7,0,0, + 120,204,132,132,132,132,132,132,204,120,5,10,10,7,1,0, + 32,224,32,32,32,32,32,32,32,248,6,10,10,7,0,0, + 112,216,136,8,24,16,32,64,196,252,6,10,10,7,0,0, + 120,204,132,12,56,12,4,4,204,120,6,10,10,7,0,0, + 8,24,24,40,104,72,136,252,8,8,5,10,10,7,1,0, + 120,64,128,224,48,24,8,8,144,224,6,10,10,7,0,0, + 28,48,64,64,248,140,132,132,204,120,6,10,10,7,0,0, + 252,132,8,8,16,16,32,32,64,64,5,10,10,7,1,0, + 112,216,136,216,112,136,136,136,216,112,6,10,10,7,0,0, + 120,204,132,132,204,120,24,16,96,192,1,7,7,4,2,0, + 128,128,0,0,0,128,128,2,9,9,4,1,254,64,64,0, + 0,0,64,64,64,128,7,7,7,8,1,0,2,12,48,192, + 48,12,2,7,3,3,8,0,2,254,0,254,7,7,7,8, + 0,0,128,96,24,6,24,96,128,5,10,10,6,1,0,112, + 136,136,8,16,32,32,0,32,32,7,7,7,8,0,0,114, + 156,0,254,0,0,254,9,10,20,11,1,0,8,0,28,0, + 20,0,20,0,34,0,34,0,62,0,99,0,65,0,227,128, + 7,10,10,9,1,0,252,70,66,70,124,70,66,66,70,252, + 9,10,20,11,1,0,227,128,65,0,34,0,20,0,8,0, + 20,0,34,0,34,0,65,0,227,128,7,10,10,9,1,0, + 16,16,40,40,40,68,68,68,130,254,7,10,10,9,1,0, + 254,66,64,68,124,68,64,66,66,254,9,10,20,11,1,0, + 28,0,8,0,127,0,201,128,136,128,136,128,201,128,127,0, + 8,0,28,0,7,10,10,9,1,0,254,66,64,64,64,64, + 64,64,64,224,9,10,20,11,1,0,227,128,65,0,65,0, + 65,0,127,0,65,0,65,0,65,0,65,0,227,128,3,10, + 10,5,1,0,224,64,64,64,64,64,64,64,64,224,8,10, + 10,9,0,0,12,10,10,102,163,34,34,34,54,28,8,10, + 10,10,1,0,238,68,72,80,112,80,72,68,70,231,9,10, + 20,10,0,0,8,0,8,0,20,0,20,0,34,0,34,0, + 34,0,65,0,65,0,227,128,11,10,20,13,1,0,224,224, + 96,192,81,64,81,64,91,64,74,64,74,64,78,64,68,64, + 228,224,9,10,20,11,1,0,227,128,97,0,81,0,89,0, + 73,0,77,0,69,0,69,0,67,0,227,0,8,10,10,10, + 1,0,60,102,66,129,129,129,129,66,102,60,9,10,20,11, + 1,0,255,128,65,0,65,0,65,0,65,0,65,0,65,0, + 65,0,65,0,227,128,8,10,10,10,1,0,60,102,66,165, + 189,165,129,66,102,60,6,10,10,8,1,0,248,76,68,68, + 76,120,64,64,64,224,8,10,10,9,1,0,254,194,96,48, + 24,16,32,64,193,255,7,10,10,9,1,0,254,146,146,16, + 16,16,16,16,16,56,9,10,20,9,0,0,227,128,65,0, + 34,0,34,0,20,0,8,0,8,0,8,0,8,0,28,0, + 6,10,10,7,1,253,56,192,128,128,128,96,56,4,36,56, + 10,10,20,11,0,0,12,0,51,0,33,0,64,128,64,128, + 64,128,33,0,51,0,146,64,243,192,9,10,20,9,0,0, + 127,0,65,0,0,0,34,0,62,0,34,0,0,0,0,0, + 128,128,255,128,11,10,20,11,0,0,206,96,100,192,36,128, + 36,128,31,0,4,0,4,0,4,0,4,0,14,0,7,10, + 10,9,1,0,254,134,4,8,16,16,32,64,194,254,3,13, + 13,5,1,253,224,128,128,128,128,128,128,128,128,128,128,128, + 224,8,7,7,10,1,0,24,24,0,0,0,195,195,3,13, + 13,5,1,253,224,32,32,32,32,32,32,32,32,32,32,32, + 224,9,10,20,10,0,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,255,128,7,1,1,7,0, + 253,254,8,1,1,7,7,11,255,8,7,7,9,1,0,118, + 212,136,136,136,213,102,6,14,14,8,1,253,120,204,132,140, + 152,140,132,132,132,204,184,128,128,128,8,10,10,8,0,253, + 195,166,36,60,24,56,40,100,69,195,5,11,11,7,1,0, + 112,152,128,64,112,152,136,136,136,216,112,5,7,7,6,1, + 0,120,200,128,96,128,200,112,7,13,13,9,1,253,16,16, + 16,56,84,146,146,146,84,56,16,16,16,6,10,10,6,0, + 253,196,164,36,40,40,24,24,16,48,48,7,10,10,8,0, + 253,108,178,34,34,34,34,34,2,2,2,5,7,7,5,0, + 0,96,160,32,32,32,40,48,7,10,10,9,1,253,24,84, + 210,146,146,84,56,16,16,16,7,7,7,8,0,0,70,202, + 80,112,88,76,70,8,10,10,8,0,0,96,80,16,16,40, + 40,72,68,133,131,8,9,9,8,0,254,68,68,68,68,68, + 77,123,64,192,7,7,7,8,0,0,198,66,34,34,20,20, + 8,6,7,7,8,1,0,120,204,132,132,132,204,120,8,7, + 7,8,0,0,126,164,36,36,36,37,102,5,10,10,7,1, + 0,112,216,136,136,248,136,136,136,216,112,6,10,10,8,1, + 253,120,204,132,132,132,204,184,128,128,128,7,7,7,8,1, + 0,126,200,132,132,132,204,120,5,7,7,6,0,0,120,160, + 32,32,32,40,48,7,7,7,8,0,0,100,162,34,34,34, + 38,28,10,8,16,11,0,0,127,192,160,128,68,64,68,64, + 68,64,68,64,100,192,59,128,9,7,14,11,1,0,99,0, + 136,128,136,128,136,128,136,128,201,128,119,0,6,15,15,7, + 1,253,32,64,56,32,64,120,32,64,128,128,192,120,4,36, + 56,9,10,20,9,0,253,136,128,73,0,73,0,73,0,107, + 0,62,0,28,0,8,0,8,0,8,0,6,14,14,7,1, + 253,32,68,60,16,32,64,64,128,128,192,120,4,36,56,5, + 13,13,7,1,253,24,32,32,32,32,64,128,64,32,32,32, + 32,24,1,13,13,3,1,253,128,128,128,128,128,128,128,128, + 128,128,128,128,128,5,13,13,7,1,253,192,32,32,32,32, + 16,8,16,32,32,32,32,192,6,2,2,8,1,3,100,152, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,8,10,10,9,0,0,198,105,43,16,16,16,16,16, + 16,56,4,3,3,4,0,7,48,96,128,7,9,9,8,0, + 0,2,12,48,192,48,12,2,0,254,5,10,10,4,255,0, + 8,8,16,16,32,32,64,64,128,128,9,4,8,10,0,2, + 119,0,152,128,140,128,119,0,7,13,13,7,0,253,6,10, + 8,8,60,16,16,16,32,32,32,160,192,9,7,14,11,1, + 0,28,0,28,0,28,0,235,128,255,128,235,128,8,0,7, + 7,7,11,2,0,16,56,124,254,124,56,16,7,7,7,11, + 2,0,108,254,254,254,124,56,16,9,7,14,11,1,0,8, + 0,28,0,62,0,127,0,255,128,107,0,8,0,13,7,14, + 15,1,0,16,64,32,32,64,16,255,248,64,16,32,32,16, + 64,14,7,14,14,0,0,16,0,32,0,64,0,255,252,64, + 0,32,0,16,0,7,15,15,9,1,253,16,56,84,146,16, + 16,16,16,16,16,16,16,16,16,16,14,7,14,14,0,0, + 0,32,0,16,0,8,255,252,0,8,0,16,0,32,7,15, + 15,9,1,253,16,16,16,16,16,16,16,16,16,16,16,146, + 84,56,16,4,4,4,6,1,6,96,144,144,96,7,9,9, + 8,0,0,16,16,16,254,16,16,16,0,254,7,3,3,6, + 0,7,54,108,144,7,9,9,8,0,0,128,96,24,6,24, + 96,128,0,254,7,7,7,8,0,0,130,68,40,16,40,68, + 130,8,4,4,10,0,2,119,136,136,119,6,11,11,7,0, + 0,112,136,4,4,4,116,204,132,132,200,112,5,5,5,7, + 1,1,112,248,248,248,112,7,7,7,8,0,0,16,16,0, + 254,0,16,16,7,7,7,8,0,0,4,8,254,16,254,32, + 64,7,5,5,8,0,1,254,0,254,0,254,7,5,5,8, + 0,2,114,156,0,114,156,11,2,4,15,2,0,132,32,132, + 32,1,15,15,9,4,253,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,15,1,2,15,0,3,255,254,8,9, + 9,10,0,0,1,1,1,1,1,1,65,255,64,8,10,10, + 12,2,0,136,206,102,36,116,156,140,70,99,225,8,12,12, + 10,1,255,63,97,66,70,36,6,3,1,97,241,26,12,10, + 11,22,12,1,0,115,0,157,128,137,128,139,0,206,0,106, + 0,41,0,9,0,9,0,105,0,176,192,9,12,24,12,1, + 253,16,0,35,0,69,128,72,128,144,128,212,128,105,0,107, + 0,182,0,144,0,144,0,96,0,9,9,18,11,1,0,28, + 0,99,0,99,0,148,128,136,128,148,128,99,0,99,0,28, + 0,9,9,18,11,1,0,28,0,99,0,73,0,136,128,190, + 128,136,128,73,0,99,0,28,0,11,11,22,12,0,0,31, + 32,96,192,64,192,129,32,130,32,132,32,136,32,144,32,96, + 64,96,192,159,0,10,7,14,10,0,0,30,0,97,128,64, + 128,128,64,128,64,128,64,128,64,10,7,14,10,0,0,128, + 64,128,64,128,64,128,64,64,128,97,128,30,0,9,7,14, + 10,0,0,254,0,1,0,0,128,0,128,0,128,1,0,254, + 0,9,9,18,10,1,254,254,0,1,0,0,128,0,128,0, + 128,1,0,254,0,0,0,255,128,9,9,18,10,0,255,1, + 0,63,128,66,0,130,0,132,0,132,0,72,0,63,128,16, + 0,9,7,14,10,1,0,63,128,64,0,128,0,128,0,128, + 0,64,0,63,128,9,9,18,10,0,254,63,128,64,0,128, + 0,128,0,128,0,64,0,63,128,0,0,255,128,7,7,7, + 10,1,0,62,64,128,254,128,64,62,7,9,9,10,0,255, + 4,62,72,144,254,144,96,62,64,11,10,20,11,0,0,0, + 64,0,128,1,0,2,0,4,0,8,0,16,0,32,0,64, + 0,255,224,9,11,22,10,0,0,255,128,128,128,65,0,65, + 0,34,0,34,0,34,0,20,0,20,0,8,0,8,0,10, + 10,20,12,1,0,30,0,33,0,124,128,146,64,146,64,156, + 64,146,64,121,128,33,0,30,0,10,10,20,12,1,0,30, + 0,33,0,78,128,146,64,144,64,144,64,146,64,76,128,33, + 0,30,0,11,6,12,11,0,4,250,128,170,128,38,192,37, + 64,37,64,118,224,10,12,24,12,1,255,255,192,64,128,64, + 128,64,128,64,128,64,128,64,128,64,128,64,128,64,128,64, + 128,225,192,8,12,12,8,0,0,1,1,1,2,2,98,164, + 36,20,20,8,8,1,2,2,4,1,3,128,128,9,5,10, + 10,0,0,255,128,0,128,0,128,0,128,0,128,8,7,7, + 9,0,0,24,24,36,36,66,66,129,8,7,7,9,0,0, + 129,66,66,36,36,24,24,13,7,14,15,1,0,16,64,32, + 32,127,240,192,24,127,240,32,32,16,64,13,7,14,14,0, + 0,16,0,32,0,127,248,192,0,127,248,32,0,16,0,7, + 12,12,9,1,0,16,56,108,170,40,40,40,40,40,40,40, + 40,13,7,14,14,1,0,0,64,0,32,255,240,0,24,255, + 240,0,32,0,64,7,12,12,9,1,0,40,40,40,40,40, + 40,40,40,170,108,56,16,7,11,11,7,0,0,16,40,40, + 68,68,130,68,68,40,40,16,4,15,15,5,0,253,16,32, + 32,64,64,64,128,128,128,64,64,64,32,32,16,10,10,20, + 12,1,0,30,0,33,0,92,128,146,64,146,64,156,64,146, + 64,82,128,33,0,30,0,10,10,20,12,1,0,30,0,33, + 0,76,128,146,64,144,64,144,64,146,64,76,128,33,0,30, + 0,10,6,12,11,0,4,250,128,34,128,38,192,37,64,37, + 64,36,64,9,12,24,10,0,255,255,0,129,0,64,0,32, + 0,16,0,8,0,8,0,16,0,32,0,64,0,128,128,255, + 128,4,15,15,6,1,253,16,32,64,64,128,128,128,128,128, + 128,128,128,128,128,128,1,15,15,6,1,253,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,4,15,15,6,1, + 253,128,128,128,128,128,128,128,128,128,128,128,64,64,32,16, + 4,15,15,6,1,253,240,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,1,15,15,6,1,253,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,4,15,15,6,1,253, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,240,4, + 15,15,7,3,253,48,64,128,128,128,128,128,128,128,128,128, + 128,128,128,128,3,15,15,7,1,253,32,32,32,32,32,32, + 64,128,64,32,32,32,32,32,32,4,15,15,7,3,253,128, + 128,128,128,128,128,128,128,128,128,128,128,128,64,48,1,15, + 15,7,3,253,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,255,4,15,15,5,1,253,128,64,64,32,32,32, + 16,16,16,32,32,32,64,64,128,5,13,13,4,0,255,24, + 40,32,32,32,32,32,32,32,32,32,160,192,5,15,15,10, + 5,253,56,88,64,128,128,128,128,128,128,128,128,128,128,128, + 128,1,15,15,10,5,253,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,5,15,15,10,1,253,8,8,8,8, + 8,8,8,8,8,8,8,8,16,208,224,4,15,15,6,1, + 253,128,64,32,32,16,16,16,16,16,16,16,16,16,16,16, + 1,15,15,6,4,253,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,4,15,15,6,1,253,16,16,16,16,16, + 16,16,16,16,16,16,32,32,64,128,4,15,15,6,1,253, + 240,16,16,16,16,16,16,16,16,16,16,16,16,16,16,1, + 15,15,6,4,253,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,4,15,15,6,1,253,16,16,16,16,16,16, + 16,16,16,16,16,16,16,16,240,4,15,15,7,0,253,192, + 32,16,16,16,16,16,16,16,16,16,16,16,16,16,3,15, + 15,7,3,253,128,128,128,128,128,128,64,32,64,128,128,128, + 128,128,128,4,15,15,7,0,253,16,16,16,16,16,16,16, + 16,16,16,16,16,16,32,192,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--14-100-100-100-P-85-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=11 h=15 x= 7 y=11 dx=13 dy= 0 ascent=12 len=20 + Font Bounding box w=16 h=15 x=-1 y=-3 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb10r[1633] U8G_SECTION(".progmem.u8g_font_symb10r") = { + 0,16,15,255,253,10,2,6,4,121,32,127,253,12,253,10, + 253,0,0,0,4,0,1,1,10,10,5,2,0,128,128,128, + 128,128,128,128,0,128,128,9,10,20,9,0,0,128,128,65, + 0,65,0,62,0,34,0,34,0,20,0,20,0,8,0,8, + 0,7,10,10,7,0,0,20,20,20,126,40,40,252,80,80, + 80,6,10,10,8,1,0,252,4,4,4,252,4,4,4,4, + 252,9,10,20,12,1,0,121,128,151,0,146,0,148,0,108, + 0,27,0,20,128,36,128,68,128,195,0,9,10,20,11,1, + 0,48,0,72,0,72,0,112,0,39,0,114,0,202,0,132, + 0,206,128,123,0,5,7,7,6,0,0,224,16,8,120,8, + 16,224,3,13,13,5,1,253,32,64,64,128,128,128,128,128, + 128,128,64,64,32,3,13,13,5,1,253,128,64,64,32,32, + 32,32,32,32,32,64,64,128,5,6,6,7,1,2,32,168, + 112,112,168,32,7,7,7,8,0,0,16,16,16,254,16,16, + 16,2,4,4,3,0,254,64,64,64,128,7,1,1,8,0, + 3,254,1,2,2,3,1,0,128,128,4,10,10,4,0,0, + 16,16,32,32,32,64,64,64,128,128,6,10,10,7,0,0, + 120,204,132,132,132,132,132,132,204,120,5,10,10,7,1,0, + 32,224,32,32,32,32,32,32,32,248,6,10,10,7,0,0, + 112,216,136,8,24,16,32,64,196,252,6,10,10,7,0,0, + 120,204,132,12,56,12,4,4,204,120,6,10,10,7,0,0, + 8,24,24,40,104,72,136,252,8,8,5,10,10,7,1,0, + 120,64,128,224,48,24,8,8,144,224,6,10,10,7,0,0, + 28,48,64,64,248,140,132,132,204,120,6,10,10,7,0,0, + 252,132,8,8,16,16,32,32,64,64,5,10,10,7,1,0, + 112,216,136,216,112,136,136,136,216,112,6,10,10,7,0,0, + 120,204,132,132,204,120,24,16,96,192,1,7,7,4,2,0, + 128,128,0,0,0,128,128,2,9,9,4,1,254,64,64,0, + 0,0,64,64,64,128,7,7,7,8,1,0,2,12,48,192, + 48,12,2,7,3,3,8,0,2,254,0,254,7,7,7,8, + 0,0,128,96,24,6,24,96,128,5,10,10,6,1,0,112, + 136,136,8,16,32,32,0,32,32,7,7,7,8,0,0,114, + 156,0,254,0,0,254,9,10,20,11,1,0,8,0,28,0, + 20,0,20,0,34,0,34,0,62,0,99,0,65,0,227,128, + 7,10,10,9,1,0,252,70,66,70,124,70,66,66,70,252, + 9,10,20,11,1,0,227,128,65,0,34,0,20,0,8,0, + 20,0,34,0,34,0,65,0,227,128,7,10,10,9,1,0, + 16,16,40,40,40,68,68,68,130,254,7,10,10,9,1,0, + 254,66,64,68,124,68,64,66,66,254,9,10,20,11,1,0, + 28,0,8,0,127,0,201,128,136,128,136,128,201,128,127,0, + 8,0,28,0,7,10,10,9,1,0,254,66,64,64,64,64, + 64,64,64,224,9,10,20,11,1,0,227,128,65,0,65,0, + 65,0,127,0,65,0,65,0,65,0,65,0,227,128,3,10, + 10,5,1,0,224,64,64,64,64,64,64,64,64,224,8,10, + 10,9,0,0,12,10,10,102,163,34,34,34,54,28,8,10, + 10,10,1,0,238,68,72,80,112,80,72,68,70,231,9,10, + 20,10,0,0,8,0,8,0,20,0,20,0,34,0,34,0, + 34,0,65,0,65,0,227,128,11,10,20,13,1,0,224,224, + 96,192,81,64,81,64,91,64,74,64,74,64,78,64,68,64, + 228,224,9,10,20,11,1,0,227,128,97,0,81,0,89,0, + 73,0,77,0,69,0,69,0,67,0,227,0,8,10,10,10, + 1,0,60,102,66,129,129,129,129,66,102,60,9,10,20,11, + 1,0,255,128,65,0,65,0,65,0,65,0,65,0,65,0, + 65,0,65,0,227,128,8,10,10,10,1,0,60,102,66,165, + 189,165,129,66,102,60,6,10,10,8,1,0,248,76,68,68, + 76,120,64,64,64,224,8,10,10,9,1,0,254,194,96,48, + 24,16,32,64,193,255,7,10,10,9,1,0,254,146,146,16, + 16,16,16,16,16,56,9,10,20,9,0,0,227,128,65,0, + 34,0,34,0,20,0,8,0,8,0,8,0,8,0,28,0, + 6,10,10,7,1,253,56,192,128,128,128,96,56,4,36,56, + 10,10,20,11,0,0,12,0,51,0,33,0,64,128,64,128, + 64,128,33,0,51,0,146,64,243,192,9,10,20,9,0,0, + 127,0,65,0,0,0,34,0,62,0,34,0,0,0,0,0, + 128,128,255,128,11,10,20,11,0,0,206,96,100,192,36,128, + 36,128,31,0,4,0,4,0,4,0,4,0,14,0,7,10, + 10,9,1,0,254,134,4,8,16,16,32,64,194,254,3,13, + 13,5,1,253,224,128,128,128,128,128,128,128,128,128,128,128, + 224,8,7,7,10,1,0,24,24,0,0,0,195,195,3,13, + 13,5,1,253,224,32,32,32,32,32,32,32,32,32,32,32, + 224,9,10,20,10,0,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,255,128,7,1,1,7,0, + 253,254,8,1,1,7,7,11,255,8,7,7,9,1,0,118, + 212,136,136,136,213,102,6,14,14,8,1,253,120,204,132,140, + 152,140,132,132,132,204,184,128,128,128,8,10,10,8,0,253, + 195,166,36,60,24,56,40,100,69,195,5,11,11,7,1,0, + 112,152,128,64,112,152,136,136,136,216,112,5,7,7,6,1, + 0,120,200,128,96,128,200,112,7,13,13,9,1,253,16,16, + 16,56,84,146,146,146,84,56,16,16,16,6,10,10,6,0, + 253,196,164,36,40,40,24,24,16,48,48,7,10,10,8,0, + 253,108,178,34,34,34,34,34,2,2,2,5,7,7,5,0, + 0,96,160,32,32,32,40,48,7,10,10,9,1,253,24,84, + 210,146,146,84,56,16,16,16,7,7,7,8,0,0,70,202, + 80,112,88,76,70,8,10,10,8,0,0,96,80,16,16,40, + 40,72,68,133,131,8,9,9,8,0,254,68,68,68,68,68, + 77,123,64,192,7,7,7,8,0,0,198,66,34,34,20,20, + 8,6,7,7,8,1,0,120,204,132,132,132,204,120,8,7, + 7,8,0,0,126,164,36,36,36,37,102,5,10,10,7,1, + 0,112,216,136,136,248,136,136,136,216,112,6,10,10,8,1, + 253,120,204,132,132,132,204,184,128,128,128,7,7,7,8,1, + 0,126,200,132,132,132,204,120,5,7,7,6,0,0,120,160, + 32,32,32,40,48,7,7,7,8,0,0,100,162,34,34,34, + 38,28,10,8,16,11,0,0,127,192,160,128,68,64,68,64, + 68,64,68,64,100,192,59,128,9,7,14,11,1,0,99,0, + 136,128,136,128,136,128,136,128,201,128,119,0,6,15,15,7, + 1,253,32,64,56,32,64,120,32,64,128,128,192,120,4,36, + 56,9,10,20,9,0,253,136,128,73,0,73,0,73,0,107, + 0,62,0,28,0,8,0,8,0,8,0,6,14,14,7,1, + 253,32,68,60,16,32,64,64,128,128,192,120,4,36,56,5, + 13,13,7,1,253,24,32,32,32,32,64,128,64,32,32,32, + 32,24,1,13,13,3,1,253,128,128,128,128,128,128,128,128, + 128,128,128,128,128,5,13,13,7,1,253,192,32,32,32,32, + 16,8,16,32,32,32,32,192,6,2,2,8,1,3,100,152, + 255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--17-120-100-100-P-95-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 12 + Calculated Max Values w=16 h=17 x= 7 y=12 dx=17 dy= 0 ascent=13 len=30 + Font Bounding box w=20 h=17 x=-3 y=-4 + Calculated Min Values x=-3 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb12[4136] U8G_SECTION(".progmem.u8g_font_symb12") = { + 0,20,17,253,252,11,2,70,5,85,32,255,252,13,252,12, + 252,0,0,0,4,0,1,3,11,11,5,1,0,64,224,224, + 224,64,64,64,0,64,224,64,11,12,24,11,0,0,128,32, + 128,32,64,64,64,64,63,128,32,128,17,0,17,0,10,0, + 10,0,4,0,4,0,8,11,11,8,0,0,18,18,18,127, + 36,36,36,254,72,72,72,7,12,12,9,0,0,254,2,2, + 2,2,126,2,2,2,2,2,254,11,12,24,13,1,255,48, + 64,111,128,201,0,201,0,154,0,148,192,101,160,11,32,11, + 32,18,96,34,64,33,128,12,11,22,13,0,0,14,0,25, + 0,17,0,26,0,12,240,56,64,76,128,198,128,131,0,197, + 144,120,224,5,8,8,7,1,0,224,16,24,120,24,24,16, + 224,4,14,14,5,0,254,16,32,64,64,128,128,128,128,128, + 128,64,64,32,16,4,14,14,5,0,254,128,64,32,32,16, + 16,16,16,16,16,32,32,64,128,5,5,5,8,1,3,32, + 168,112,168,32,9,9,18,9,0,0,8,0,8,0,8,0, + 8,0,255,128,8,0,8,0,8,0,8,0,3,5,5,4, + 1,254,64,224,96,64,128,9,1,2,9,0,4,255,128,3, + 3,3,4,1,0,64,224,64,5,11,11,5,255,0,8,8, + 16,16,32,32,32,64,64,128,128,7,12,12,8,0,0,56, + 108,68,198,130,130,130,130,198,68,108,56,5,12,12,8,1, + 0,32,96,160,32,32,32,32,32,32,32,32,248,7,12,12, + 8,0,0,56,76,134,2,2,4,4,8,16,34,126,252,6, + 12,12,8,1,0,56,76,132,4,8,56,12,4,4,4,200, + 112,7,12,12,8,0,0,4,4,12,20,20,36,68,68,254, + 4,4,4,7,12,12,8,0,0,62,60,64,64,240,248,12, + 4,4,4,200,240,6,12,12,8,1,0,12,48,96,64,248, + 204,132,132,132,132,76,56,6,12,12,8,1,0,252,252,136, + 8,8,16,16,16,16,32,32,32,6,12,12,8,1,0,48, + 72,132,196,104,48,88,140,132,132,72,48,6,12,12,8,1, + 0,112,200,132,132,132,132,204,124,8,24,48,192,3,8,8, + 4,1,0,64,224,64,0,0,64,224,64,3,10,10,4,1, + 254,64,224,64,0,0,64,224,96,64,128,8,9,9,9,0, + 0,1,6,24,96,128,96,24,6,1,9,4,8,9,0,2, + 255,128,0,0,0,0,255,128,8,9,9,9,0,0,128,96, + 24,6,1,6,24,96,128,6,11,11,7,0,0,120,156,140, + 12,24,16,32,0,32,112,32,8,8,8,9,0,0,113,142, + 0,0,255,0,0,255,11,11,22,12,0,0,4,0,4,0, + 14,0,14,0,19,0,19,0,33,128,63,128,65,192,64,192, + 225,224,9,11,22,11,1,0,254,0,99,0,97,128,97,128, + 99,0,126,0,99,0,97,128,97,128,99,0,254,0,10,11, + 22,12,0,0,241,192,96,128,49,0,26,0,26,0,12,0, + 22,0,19,0,35,0,65,128,227,192,10,11,22,10,0,0, + 4,0,4,0,14,0,14,0,19,0,19,0,35,0,33,128, + 65,128,64,192,255,192,8,11,11,10,1,0,255,97,96,96, + 98,126,98,96,96,97,255,12,11,22,12,0,0,15,0,6, + 0,63,192,102,96,198,48,198,48,198,48,102,96,63,192,6, + 0,15,0,9,11,22,10,1,0,255,128,97,128,96,0,96, + 0,96,0,96,0,96,0,96,0,96,0,96,0,240,0,11, + 11,22,12,0,0,241,224,96,192,96,192,96,192,96,192,127, + 192,96,192,96,192,96,192,96,192,241,224,4,11,11,6,1, + 0,240,96,96,96,96,96,96,96,96,96,240,9,12,24,10, + 0,0,12,0,18,0,17,0,9,0,69,0,163,0,33,128, + 33,0,33,0,33,0,34,0,28,0,10,11,22,12,1,0, + 243,192,97,0,98,0,100,0,104,0,120,0,108,0,102,0, + 99,0,97,128,243,192,11,11,22,11,0,0,4,0,4,0, + 14,0,14,0,19,0,19,0,33,128,33,128,64,192,64,192, + 225,224,13,11,22,14,1,0,224,56,96,112,112,112,112,176, + 88,176,89,48,77,48,78,48,70,48,68,48,224,120,10,11, + 22,11,1,0,225,192,112,128,112,128,88,128,92,128,78,128, + 70,128,67,128,67,128,65,128,224,128,11,11,22,12,0,0, + 31,0,113,192,96,192,192,96,192,96,192,96,192,96,192,96, + 96,192,113,192,31,0,11,11,22,12,1,0,255,224,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 241,224,11,11,22,12,0,0,31,0,113,192,96,192,192,96, + 209,96,223,96,209,96,192,96,96,192,113,192,31,0,8,11, + 11,9,1,0,252,102,99,99,102,124,96,96,96,96,240,9, + 11,22,10,0,0,255,128,96,128,48,0,24,0,12,0,12, + 0,8,0,16,128,32,128,127,128,255,128,10,11,22,10,0, + 0,255,192,140,64,140,64,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,30,0,10,11,22,11,1,0,241,192,96, + 128,49,0,49,0,26,0,12,0,12,0,12,0,12,0,12, + 0,30,0,7,12,12,8,0,252,60,76,128,128,128,128,124, + 62,2,2,60,56,12,12,24,12,0,0,31,128,112,224,96, + 96,192,48,192,48,192,48,192,48,96,96,48,192,137,16,249, + 240,249,240,9,11,22,11,0,0,255,128,255,128,128,128,0, + 0,34,0,62,0,34,0,0,0,128,128,255,128,255,128,12, + 11,22,13,0,0,207,48,102,96,102,96,102,96,102,96,63, + 192,6,0,6,0,6,0,6,0,15,0,8,11,11,10,1, + 0,255,131,134,12,12,24,48,48,97,193,255,3,14,14,6, + 1,254,224,128,128,128,128,128,128,128,128,128,128,128,128,224, + 9,8,16,14,2,0,8,0,28,0,8,0,0,0,0,0, + 65,0,227,128,65,0,3,14,14,5,0,254,224,32,32,32, + 32,32,32,32,32,32,32,32,32,224,9,11,22,11,1,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,255,128,8,1,1,8,0,253,255,10,1,2, + 8,7,12,255,192,10,9,18,11,0,0,57,128,101,128,195, + 0,195,0,195,0,194,0,198,64,101,64,56,128,8,17,17, + 9,0,252,60,70,66,66,70,92,70,67,67,65,65,99,94, + 64,64,64,192,8,12,12,9,0,253,99,162,150,20,28,24, + 24,56,40,105,69,198,7,12,12,8,0,0,120,140,64,48, + 24,44,70,194,130,194,68,56,7,9,9,7,0,0,56,68, + 192,192,120,192,192,66,60,7,14,14,9,1,253,16,16,56, + 84,214,146,146,146,214,84,56,16,16,16,8,13,13,7,255, + 252,97,161,146,18,20,20,8,8,16,16,48,48,48,9,12, + 24,10,0,253,110,0,177,0,33,0,33,0,33,0,33,0, + 33,0,33,0,33,0,1,0,1,0,1,128,6,9,9,5, + 255,0,32,96,160,32,32,32,32,52,24,9,12,24,10,0, + 253,39,0,73,128,201,128,136,128,136,128,136,128,201,128,73, + 0,62,0,8,0,8,0,8,0,8,9,9,9,0,0,70, + 206,80,80,120,76,76,70,79,9,13,26,9,0,0,96,0, + 208,0,144,0,16,0,8,0,24,0,24,0,56,0,40,0, + 36,0,100,128,68,128,195,0,8,13,13,9,1,252,132,132, + 132,132,132,132,132,205,182,128,128,128,128,9,9,18,8,255, + 0,225,128,33,128,49,0,51,0,18,0,26,0,12,0,12, + 0,8,0,7,9,9,9,1,0,56,68,198,130,130,130,198, + 68,56,8,9,9,9,0,0,127,255,164,36,36,36,37,103, + 102,7,12,12,9,1,0,56,108,68,198,130,254,130,130,198, + 68,108,56,7,13,13,9,1,252,56,76,134,134,130,130,198, + 196,184,128,128,128,128,9,9,18,10,1,0,31,128,116,0, + 194,0,195,0,129,0,193,0,65,0,99,0,30,0,7,9, + 9,7,0,0,60,124,144,16,16,16,18,30,12,8,9,9, + 9,1,0,68,226,161,33,33,33,33,50,28,10,10,20,11, + 0,0,127,192,155,0,32,128,100,192,68,64,68,64,68,64, + 68,64,100,192,59,128,9,9,18,11,1,0,54,0,65,0, + 201,128,136,128,136,128,136,128,136,128,201,128,119,0,7,17, + 17,8,0,252,64,88,48,64,92,60,64,128,128,128,128,124, + 62,2,2,60,56,11,13,26,11,0,252,196,96,100,192,36, + 128,36,128,36,128,36,128,36,128,53,128,31,0,4,0,4, + 0,4,0,4,0,7,17,17,8,1,252,32,76,60,32,64, + 64,128,128,128,128,128,124,62,2,2,60,56,5,14,14,8, + 1,254,24,32,32,32,32,32,192,32,32,32,32,32,32,24, + 1,14,14,3,1,253,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,5,14,14,8,1,254,192,32,32,32,32,32, + 24,32,32,32,32,32,32,192,8,2,2,9,0,3,113,142, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,10,11,22,10,255,0,225,128,18,192,10,192,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,30,0,3,4, + 4,4,1,8,96,96,192,128,8,11,11,9,0,0,1,6, + 24,96,128,96,24,6,1,0,255,8,11,11,3,253,0,1, + 2,2,4,8,16,16,32,64,64,128,11,5,10,12,0,2, + 113,192,138,32,132,32,138,32,113,192,7,15,15,8,0,253, + 6,10,8,8,8,126,16,16,16,16,32,32,32,160,192,9, + 10,20,12,1,255,28,0,62,0,62,0,28,0,107,0,255, + 128,255,128,107,0,8,0,28,0,7,9,9,12,2,0,16, + 56,124,124,254,124,124,56,16,8,9,9,12,2,0,102,255, + 255,255,126,60,60,24,24,9,10,20,12,2,255,8,0,28, + 0,28,0,62,0,127,0,127,0,255,128,107,0,8,0,28, + 0,15,9,18,17,0,0,8,32,16,16,32,8,64,4,255, + 254,64,4,32,8,16,16,8,32,16,9,18,16,0,0,8, + 0,16,0,32,0,64,0,255,255,64,0,32,0,16,0,8, + 0,9,15,30,10,0,254,8,0,28,0,42,0,73,0,136, + 128,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,15,9,18,16,0,0,0,32,0,16,0, + 8,0,4,255,254,0,4,0,8,0,16,0,32,9,15,30, + 10,0,254,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,136,128,73,0,42,0,28,0,8, + 0,5,5,5,6,0,6,112,136,136,136,112,9,11,22,9, + 0,0,8,0,8,0,8,0,8,0,255,128,8,0,8,0, + 8,0,8,0,0,0,255,128,6,4,4,7,1,8,108,108, + 216,144,8,11,11,9,0,0,128,96,24,6,1,6,24,96, + 128,0,255,9,9,18,9,0,0,128,128,65,0,34,0,20, + 0,8,0,20,0,34,0,65,0,128,128,10,5,10,11,0, + 2,113,192,138,0,132,0,138,0,113,192,7,14,14,8,0, + 255,120,196,4,2,2,2,58,102,194,194,130,196,68,56,6, + 6,6,8,1,2,120,252,252,252,252,120,8,7,7,9,0, + 1,24,24,0,255,0,24,24,9,10,20,9,0,255,2,0, + 2,0,4,0,255,128,8,0,8,0,255,128,16,0,32,0, + 32,0,8,7,7,9,0,1,255,0,0,255,0,0,255,8, + 5,5,9,0,2,113,142,0,113,142,13,3,6,16,1,0, + 66,16,231,56,66,16,1,17,17,10,4,252,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,16,1,2, + 16,0,4,255,255,9,11,22,10,0,255,0,128,0,128,0, + 128,0,128,0,128,0,128,32,128,96,128,255,128,96,0,32, + 0,9,11,22,13,2,0,68,0,231,0,103,0,50,0,26, + 0,60,0,108,0,102,0,99,0,51,128,113,0,9,14,28, + 11,0,255,30,0,63,128,67,128,65,0,66,0,34,0,19, + 0,1,0,1,128,0,128,0,128,112,128,191,0,28,0,12, + 13,26,13,0,0,113,128,138,192,140,96,196,64,100,128,37, + 0,7,128,5,128,12,192,12,192,8,208,104,96,48,64,12, + 13,26,16,2,252,12,0,17,224,34,48,36,16,72,48,114, + 32,102,96,100,192,115,0,144,0,144,0,144,0,96,0,11, + 11,22,12,1,0,14,0,49,128,64,64,81,64,138,32,132, + 32,138,32,81,64,64,64,49,128,14,0,11,11,22,12,1, + 0,14,0,49,128,68,64,68,64,132,32,191,160,132,32,68, + 64,68,64,49,128,14,0,12,12,24,13,1,0,15,16,48, + 224,64,96,64,160,129,16,130,16,132,16,136,16,80,32,96, + 32,112,192,159,0,11,9,18,12,1,0,14,0,49,128,64, + 64,64,64,128,32,128,32,128,32,128,32,128,32,11,9,18, + 12,1,0,128,32,128,32,128,32,128,32,128,32,64,64,64, + 64,49,128,14,0,10,8,16,11,0,0,255,0,0,128,0, + 64,0,64,0,64,0,64,0,128,255,0,10,10,20,11,0, + 253,255,0,0,128,0,64,0,64,0,64,0,64,0,128,255, + 0,0,0,255,192,11,10,20,11,0,255,0,128,63,224,65, + 0,129,0,130,0,130,0,132,0,68,0,63,224,8,0,10, + 8,16,11,0,0,63,192,64,0,128,0,128,0,128,0,128, + 0,64,0,63,192,10,10,20,11,0,254,63,192,64,0,128, + 0,128,0,128,0,128,0,64,0,63,192,0,0,255,192,7, + 7,7,11,0,0,62,64,128,254,128,64,62,7,9,9,11, + 0,255,4,62,72,136,254,144,80,62,32,11,11,22,12,1, + 0,0,32,0,64,0,128,1,0,2,0,4,0,8,0,16, + 0,32,0,64,0,255,192,10,11,22,11,1,1,255,192,192, + 128,96,128,97,0,49,0,50,0,50,0,28,0,28,0,8, + 0,8,0,11,11,22,13,1,0,14,0,49,128,94,64,73, + 64,137,32,142,32,138,32,73,64,93,192,49,128,14,0,11, + 11,22,13,1,0,14,0,49,128,70,64,73,64,145,32,144, + 32,144,32,73,64,70,64,49,128,14,0,13,6,12,14,0, + 5,255,24,171,16,34,176,34,176,34,80,119,88,12,15,30, + 13,1,254,255,240,96,96,96,96,96,96,96,96,96,96,96, + 96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,240, + 240,7,16,16,9,1,253,2,2,2,2,2,4,68,196,36, + 36,20,20,20,8,8,8,2,2,2,4,1,3,192,192,11, + 5,10,12,0,0,255,224,0,32,0,32,0,32,0,32,9, + 8,16,10,0,0,8,0,8,0,20,0,34,0,34,0,65, + 0,128,128,128,128,9,8,16,10,0,0,128,128,128,128,65, + 0,34,0,34,0,20,0,8,0,8,0,16,9,18,17,0, + 0,8,16,16,8,63,252,64,2,128,1,64,2,63,252,16, + 8,8,16,15,9,18,16,0,0,8,0,16,0,63,254,64, + 0,128,0,64,0,63,254,16,0,8,0,9,15,30,10,0, + 254,8,0,20,0,34,0,99,0,162,128,34,0,34,0,34, + 0,34,0,34,0,34,0,34,0,34,0,34,0,34,0,15, + 9,18,16,0,0,0,32,0,16,255,248,0,4,0,2,0, + 4,255,248,0,16,0,32,9,15,30,10,0,254,34,0,34, + 0,34,0,34,0,34,0,34,0,34,0,34,0,34,0,34, + 0,162,128,99,0,34,0,20,0,8,0,7,12,12,8,0, + 0,16,40,40,68,68,130,130,68,68,40,40,16,4,15,15, + 5,0,254,16,16,32,32,64,64,128,128,128,64,64,32,32, + 16,16,11,11,22,13,1,0,14,0,49,128,94,64,81,64, + 145,32,158,32,145,32,81,64,81,64,49,128,14,0,11,11, + 22,13,1,0,14,0,49,128,70,64,73,64,144,32,144,32, + 144,32,73,64,70,64,49,128,14,0,11,6,12,13,0,5, + 252,32,38,96,38,96,37,160,37,160,36,32,11,15,30,11, + 0,254,255,192,112,64,56,64,24,0,12,0,14,0,7,0, + 3,0,2,0,4,0,8,0,16,32,32,64,127,192,255,128, + 6,17,17,6,1,252,4,8,16,32,32,64,64,64,64,128, + 128,128,128,128,128,128,128,1,17,17,6,1,252,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,6,17, + 17,6,1,252,128,128,128,128,128,128,128,128,64,64,64,64, + 32,32,16,8,4,5,17,17,6,0,252,248,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,1,17,17,6, + 0,252,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,5,17,17,6,0,252,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,248,4,17,17,8,3,252, + 48,64,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,4,17,17,8,0,252,16,16,16,16,16,16,16,32,192, + 32,16,16,16,16,16,16,16,4,17,17,8,3,252,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,64,48,1, + 17,17,8,3,252,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,255,4,15,15,5,0,254,128,128,64, + 64,32,32,16,16,16,32,32,64,64,128,128,5,17,17,5, + 0,252,24,40,32,32,32,32,32,32,32,32,32,32,32,32, + 32,160,192,6,17,17,11,5,252,24,44,72,64,128,128,128, + 128,128,128,128,128,128,128,128,128,128,1,17,17,11,5,252, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,6,17,17,11,0,252,4,4,4,4,4,4,4,4,4, + 4,4,4,4,8,72,208,96,6,17,17,7,1,252,128,64, + 32,16,16,8,8,8,8,4,4,4,4,4,4,4,4,1, + 17,17,6,5,252,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,6,17,17,6,0,252,4,4,4,4, + 4,4,4,4,8,8,8,8,16,16,32,64,128,5,17,17, + 6,1,252,248,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,1,17,17,6,5,252,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,5,17,17,6,1, + 252,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,248,4,17,17,8,0,252,192,32,16,16,16,16,16,16, + 16,16,16,16,16,16,16,16,16,4,17,17,8,3,252,128, + 128,128,128,128,128,128,64,48,64,128,128,128,128,128,128,128, + 4,17,17,8,0,252,16,16,16,16,16,16,16,16,16,16, + 16,16,16,16,16,32,192,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--17-120-100-100-P-95-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 12 + Calculated Max Values w=13 h=17 x= 7 y=12 dx=14 dy= 0 ascent=13 len=26 + Font Bounding box w=20 h=17 x=-3 y=-4 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb12r[1985] U8G_SECTION(".progmem.u8g_font_symb12r") = { + 0,20,17,253,252,11,2,70,5,85,32,127,252,13,252,12, + 252,0,0,0,4,0,1,3,11,11,5,1,0,64,224,224, + 224,64,64,64,0,64,224,64,11,12,24,11,0,0,128,32, + 128,32,64,64,64,64,63,128,32,128,17,0,17,0,10,0, + 10,0,4,0,4,0,8,11,11,8,0,0,18,18,18,127, + 36,36,36,254,72,72,72,7,12,12,9,0,0,254,2,2, + 2,2,126,2,2,2,2,2,254,11,12,24,13,1,255,48, + 64,111,128,201,0,201,0,154,0,148,192,101,160,11,32,11, + 32,18,96,34,64,33,128,12,11,22,13,0,0,14,0,25, + 0,17,0,26,0,12,240,56,64,76,128,198,128,131,0,197, + 144,120,224,5,8,8,7,1,0,224,16,24,120,24,24,16, + 224,4,14,14,5,0,254,16,32,64,64,128,128,128,128,128, + 128,64,64,32,16,4,14,14,5,0,254,128,64,32,32,16, + 16,16,16,16,16,32,32,64,128,5,5,5,8,1,3,32, + 168,112,168,32,9,9,18,9,0,0,8,0,8,0,8,0, + 8,0,255,128,8,0,8,0,8,0,8,0,3,5,5,4, + 1,254,64,224,96,64,128,9,1,2,9,0,4,255,128,3, + 3,3,4,1,0,64,224,64,5,11,11,5,255,0,8,8, + 16,16,32,32,32,64,64,128,128,7,12,12,8,0,0,56, + 108,68,198,130,130,130,130,198,68,108,56,5,12,12,8,1, + 0,32,96,160,32,32,32,32,32,32,32,32,248,7,12,12, + 8,0,0,56,76,134,2,2,4,4,8,16,34,126,252,6, + 12,12,8,1,0,56,76,132,4,8,56,12,4,4,4,200, + 112,7,12,12,8,0,0,4,4,12,20,20,36,68,68,254, + 4,4,4,7,12,12,8,0,0,62,60,64,64,240,248,12, + 4,4,4,200,240,6,12,12,8,1,0,12,48,96,64,248, + 204,132,132,132,132,76,56,6,12,12,8,1,0,252,252,136, + 8,8,16,16,16,16,32,32,32,6,12,12,8,1,0,48, + 72,132,196,104,48,88,140,132,132,72,48,6,12,12,8,1, + 0,112,200,132,132,132,132,204,124,8,24,48,192,3,8,8, + 4,1,0,64,224,64,0,0,64,224,64,3,10,10,4,1, + 254,64,224,64,0,0,64,224,96,64,128,8,9,9,9,0, + 0,1,6,24,96,128,96,24,6,1,9,4,8,9,0,2, + 255,128,0,0,0,0,255,128,8,9,9,9,0,0,128,96, + 24,6,1,6,24,96,128,6,11,11,7,0,0,120,156,140, + 12,24,16,32,0,32,112,32,8,8,8,9,0,0,113,142, + 0,0,255,0,0,255,11,11,22,12,0,0,4,0,4,0, + 14,0,14,0,19,0,19,0,33,128,63,128,65,192,64,192, + 225,224,9,11,22,11,1,0,254,0,99,0,97,128,97,128, + 99,0,126,0,99,0,97,128,97,128,99,0,254,0,10,11, + 22,12,0,0,241,192,96,128,49,0,26,0,26,0,12,0, + 22,0,19,0,35,0,65,128,227,192,10,11,22,10,0,0, + 4,0,4,0,14,0,14,0,19,0,19,0,35,0,33,128, + 65,128,64,192,255,192,8,11,11,10,1,0,255,97,96,96, + 98,126,98,96,96,97,255,12,11,22,12,0,0,15,0,6, + 0,63,192,102,96,198,48,198,48,198,48,102,96,63,192,6, + 0,15,0,9,11,22,10,1,0,255,128,97,128,96,0,96, + 0,96,0,96,0,96,0,96,0,96,0,96,0,240,0,11, + 11,22,12,0,0,241,224,96,192,96,192,96,192,96,192,127, + 192,96,192,96,192,96,192,96,192,241,224,4,11,11,6,1, + 0,240,96,96,96,96,96,96,96,96,96,240,9,12,24,10, + 0,0,12,0,18,0,17,0,9,0,69,0,163,0,33,128, + 33,0,33,0,33,0,34,0,28,0,10,11,22,12,1,0, + 243,192,97,0,98,0,100,0,104,0,120,0,108,0,102,0, + 99,0,97,128,243,192,11,11,22,11,0,0,4,0,4,0, + 14,0,14,0,19,0,19,0,33,128,33,128,64,192,64,192, + 225,224,13,11,22,14,1,0,224,56,96,112,112,112,112,176, + 88,176,89,48,77,48,78,48,70,48,68,48,224,120,10,11, + 22,11,1,0,225,192,112,128,112,128,88,128,92,128,78,128, + 70,128,67,128,67,128,65,128,224,128,11,11,22,12,0,0, + 31,0,113,192,96,192,192,96,192,96,192,96,192,96,192,96, + 96,192,113,192,31,0,11,11,22,12,1,0,255,224,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 241,224,11,11,22,12,0,0,31,0,113,192,96,192,192,96, + 209,96,223,96,209,96,192,96,96,192,113,192,31,0,8,11, + 11,9,1,0,252,102,99,99,102,124,96,96,96,96,240,9, + 11,22,10,0,0,255,128,96,128,48,0,24,0,12,0,12, + 0,8,0,16,128,32,128,127,128,255,128,10,11,22,10,0, + 0,255,192,140,64,140,64,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,30,0,10,11,22,11,1,0,241,192,96, + 128,49,0,49,0,26,0,12,0,12,0,12,0,12,0,12, + 0,30,0,7,12,12,8,0,252,60,76,128,128,128,128,124, + 62,2,2,60,56,12,12,24,12,0,0,31,128,112,224,96, + 96,192,48,192,48,192,48,192,48,96,96,48,192,137,16,249, + 240,249,240,9,11,22,11,0,0,255,128,255,128,128,128,0, + 0,34,0,62,0,34,0,0,0,128,128,255,128,255,128,12, + 11,22,13,0,0,207,48,102,96,102,96,102,96,102,96,63, + 192,6,0,6,0,6,0,6,0,15,0,8,11,11,10,1, + 0,255,131,134,12,12,24,48,48,97,193,255,3,14,14,6, + 1,254,224,128,128,128,128,128,128,128,128,128,128,128,128,224, + 9,8,16,14,2,0,8,0,28,0,8,0,0,0,0,0, + 65,0,227,128,65,0,3,14,14,5,0,254,224,32,32,32, + 32,32,32,32,32,32,32,32,32,224,9,11,22,11,1,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,255,128,8,1,1,8,0,253,255,10,1,2, + 8,7,12,255,192,10,9,18,11,0,0,57,128,101,128,195, + 0,195,0,195,0,194,0,198,64,101,64,56,128,8,17,17, + 9,0,252,60,70,66,66,70,92,70,67,67,65,65,99,94, + 64,64,64,192,8,12,12,9,0,253,99,162,150,20,28,24, + 24,56,40,105,69,198,7,12,12,8,0,0,120,140,64,48, + 24,44,70,194,130,194,68,56,7,9,9,7,0,0,56,68, + 192,192,120,192,192,66,60,7,14,14,9,1,253,16,16,56, + 84,214,146,146,146,214,84,56,16,16,16,8,13,13,7,255, + 252,97,161,146,18,20,20,8,8,16,16,48,48,48,9,12, + 24,10,0,253,110,0,177,0,33,0,33,0,33,0,33,0, + 33,0,33,0,33,0,1,0,1,0,1,128,6,9,9,5, + 255,0,32,96,160,32,32,32,32,52,24,9,12,24,10,0, + 253,39,0,73,128,201,128,136,128,136,128,136,128,201,128,73, + 0,62,0,8,0,8,0,8,0,8,9,9,9,0,0,70, + 206,80,80,120,76,76,70,79,9,13,26,9,0,0,96,0, + 208,0,144,0,16,0,8,0,24,0,24,0,56,0,40,0, + 36,0,100,128,68,128,195,0,8,13,13,9,1,252,132,132, + 132,132,132,132,132,205,182,128,128,128,128,9,9,18,8,255, + 0,225,128,33,128,49,0,51,0,18,0,26,0,12,0,12, + 0,8,0,7,9,9,9,1,0,56,68,198,130,130,130,198, + 68,56,8,9,9,9,0,0,127,255,164,36,36,36,37,103, + 102,7,12,12,9,1,0,56,108,68,198,130,254,130,130,198, + 68,108,56,7,13,13,9,1,252,56,76,134,134,130,130,198, + 196,184,128,128,128,128,9,9,18,10,1,0,31,128,116,0, + 194,0,195,0,129,0,193,0,65,0,99,0,30,0,7,9, + 9,7,0,0,60,124,144,16,16,16,18,30,12,8,9,9, + 9,1,0,68,226,161,33,33,33,33,50,28,10,10,20,11, + 0,0,127,192,155,0,32,128,100,192,68,64,68,64,68,64, + 68,64,100,192,59,128,9,9,18,11,1,0,54,0,65,0, + 201,128,136,128,136,128,136,128,136,128,201,128,119,0,7,17, + 17,8,0,252,64,88,48,64,92,60,64,128,128,128,128,124, + 62,2,2,60,56,11,13,26,11,0,252,196,96,100,192,36, + 128,36,128,36,128,36,128,36,128,53,128,31,0,4,0,4, + 0,4,0,4,0,7,17,17,8,1,252,32,76,60,32,64, + 64,128,128,128,128,128,124,62,2,2,60,56,5,14,14,8, + 1,254,24,32,32,32,32,32,192,32,32,32,32,32,32,24, + 1,14,14,3,1,253,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,5,14,14,8,1,254,192,32,32,32,32,32, + 24,32,32,32,32,32,32,192,8,2,2,9,0,3,113,142, + 255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--20-140-100-100-P-107-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w=19 h=19 x= 9 y=13 dx=19 dy= 0 ascent=14 len=34 + Font Bounding box w=20 h=19 x=-1 y=-5 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =14 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb14[4665] U8G_SECTION(".progmem.u8g_font_symb14") = { + 0,20,19,255,251,13,2,127,6,16,32,255,252,14,251,13, + 252,0,0,0,5,0,1,2,13,13,6,2,0,192,192,192, + 192,192,192,192,64,64,0,0,192,192,13,13,26,13,0,0, + 192,24,192,24,96,48,96,48,63,224,48,96,24,192,24,192, + 8,128,13,128,5,0,7,0,2,0,10,13,26,9,255,0, + 9,0,9,0,9,0,9,0,127,192,18,0,18,0,18,0, + 255,128,36,0,36,0,36,0,36,0,8,13,13,10,1,0, + 255,3,3,3,3,3,127,3,3,3,3,3,255,13,13,26, + 15,1,0,56,96,103,224,196,192,197,128,233,128,115,0,6, + 0,6,112,12,200,25,136,25,136,49,208,48,224,12,13,26, + 13,1,0,28,0,54,0,34,0,38,0,60,0,57,224,124, + 192,238,128,199,128,195,0,195,144,103,240,60,224,6,9,9, + 8,1,0,240,56,28,12,124,12,28,56,240,4,17,17,6, + 1,252,16,48,96,96,192,192,192,192,192,192,192,192,192,96, + 96,48,16,4,17,17,6,1,252,128,192,96,96,48,48,48, + 48,48,48,48,48,48,96,96,192,128,7,7,7,9,1,3, + 16,214,124,56,124,214,16,8,8,8,10,1,1,24,24,24, + 255,255,24,24,24,3,5,5,5,1,253,96,96,32,96,192, + 7,2,2,9,1,4,254,254,2,2,2,4,1,0,192,192, + 5,13,13,5,0,0,24,24,24,48,48,48,96,96,96,96, + 192,192,192,8,13,13,9,0,0,60,102,102,195,195,195,195, + 195,195,195,102,102,60,6,13,13,9,1,0,48,240,176,48, + 48,48,48,48,48,48,48,120,252,7,13,13,9,1,0,60, + 126,206,134,6,6,12,28,24,48,98,254,254,7,13,13,9, + 1,0,124,206,134,6,12,56,60,14,6,6,6,204,248,8, + 13,13,9,0,0,6,14,14,30,54,54,102,198,198,255,6, + 6,6,7,13,13,9,1,0,126,124,192,192,240,60,12,14, + 6,6,12,220,240,8,13,13,9,0,0,14,56,48,96,96, + 252,198,195,195,195,195,102,60,8,13,13,9,0,0,127,255, + 134,6,12,12,12,24,24,24,48,48,48,8,13,13,9,0, + 0,60,102,102,102,116,60,126,102,195,195,195,102,60,8,13, + 13,9,0,0,60,110,199,195,195,195,227,127,58,6,12,56, + 224,2,9,9,5,2,0,192,192,0,0,0,0,0,192,192, + 3,12,12,5,1,253,96,96,0,0,0,0,0,96,96,32, + 96,192,9,9,18,10,0,0,3,128,15,0,60,0,240,0, + 192,0,240,0,60,0,15,0,3,128,8,5,5,10,1,2, + 255,255,0,255,255,9,9,18,10,0,0,224,0,120,0,30, + 0,7,128,1,128,7,128,30,0,120,0,224,0,6,13,13, + 8,1,0,120,220,204,204,12,12,24,48,48,48,0,48,48, + 8,9,9,10,1,0,115,255,206,0,255,255,0,255,255,12, + 13,26,14,1,0,4,0,14,0,14,0,11,0,27,0,19, + 0,17,128,49,128,63,192,32,192,96,192,96,224,241,240,9, + 13,26,11,1,0,252,0,102,0,99,0,99,0,99,0,102, + 0,126,0,99,0,97,128,97,128,97,128,99,128,255,0,12, + 13,26,14,1,0,240,112,112,96,56,192,24,192,29,128,15, + 0,6,0,15,0,27,128,49,128,49,192,96,224,224,240,11, + 13,26,11,0,0,4,0,6,0,14,0,11,0,19,0,19, + 0,17,128,33,128,33,192,64,192,64,192,128,96,255,224,9, + 13,26,11,1,0,255,128,97,128,96,128,96,0,96,0,97, + 0,127,0,97,0,96,0,96,0,96,128,97,128,255,128,12, + 13,26,14,1,0,15,0,6,0,31,128,102,96,198,48,198, + 48,198,48,198,48,198,48,102,96,31,128,6,0,15,0,10, + 13,26,11,0,0,255,192,112,192,48,64,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,120,0,11, + 13,26,13,1,0,241,224,96,192,96,192,96,192,96,192,96, + 192,127,192,96,192,96,192,96,192,96,192,96,192,241,224,4, + 13,13,6,1,0,240,96,96,96,96,96,96,96,96,96,96, + 96,240,11,13,26,12,1,0,6,0,11,0,9,128,5,128, + 99,128,241,128,177,192,49,160,49,128,49,128,49,128,59,0, + 30,0,11,13,26,14,1,0,243,192,97,128,99,0,102,0, + 108,0,120,0,120,0,108,0,102,0,99,0,99,128,97,192, + 241,224,12,13,26,13,0,0,6,0,6,0,15,0,11,0, + 11,0,25,128,17,128,17,128,48,192,32,192,32,96,96,96, + 240,240,14,13,26,16,1,0,224,28,112,56,112,56,88,120, + 88,88,88,216,76,152,76,152,77,152,71,24,71,24,67,24, + 226,60,11,13,26,13,1,0,224,224,112,64,112,64,88,64, + 76,64,76,64,70,64,67,64,67,192,65,192,64,192,64,192, + 224,64,11,13,26,13,1,0,14,0,49,128,96,192,224,224, + 192,96,192,96,192,96,192,96,192,96,224,224,96,192,49,128, + 14,0,11,13,26,13,1,0,255,224,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 241,224,11,13,26,13,1,0,14,0,49,128,96,192,224,224, + 192,96,209,96,223,96,209,96,192,96,224,224,96,192,49,128, + 14,0,8,13,13,10,1,0,254,103,99,99,99,103,126,96, + 96,96,96,96,240,10,13,26,11,0,0,255,128,193,128,96, + 128,48,0,24,0,12,0,12,0,8,0,16,0,32,64,64, + 192,255,128,255,128,10,13,26,12,1,0,255,192,204,192,140, + 64,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,30,0,12,13,26,13,0,0,248,240,112,96,48, + 192,24,192,29,128,15,0,15,0,6,0,6,0,6,0,6, + 0,6,0,15,0,6,13,13,8,1,252,60,124,192,128,128, + 128,192,120,60,4,4,60,56,13,13,26,14,0,0,7,0, + 24,192,48,96,112,112,96,48,96,48,96,48,96,48,48,96, + 56,224,136,136,248,248,248,248,10,13,26,12,1,0,127,128, + 127,128,64,128,0,0,33,0,63,0,63,0,33,0,0,0, + 128,64,128,64,255,192,255,192,14,13,26,15,0,0,199,140, + 99,24,99,24,99,24,99,24,51,48,31,224,3,0,3,0, + 3,0,3,0,3,0,7,128,9,13,26,11,1,0,255,128, + 195,128,131,0,7,0,6,0,14,0,28,0,24,0,56,0, + 112,0,96,128,225,128,255,128,4,17,17,6,1,252,240,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,240,10, + 9,18,14,2,0,12,0,12,0,0,0,0,0,0,0,0, + 0,0,0,192,192,192,192,4,17,17,6,1,252,240,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,240,10,13, + 26,12,1,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,255,192,255,192,9,2, + 4,9,0,252,255,128,255,128,10,1,2,9,9,13,255,192, + 11,9,18,12,1,0,60,192,101,128,195,0,195,0,195,0, + 195,0,195,0,101,32,56,192,8,18,18,10,1,252,60,70, + 198,198,198,204,198,195,195,195,195,195,230,220,192,192,192,192, + 10,13,26,10,0,252,96,192,241,192,145,128,19,0,23,0, + 14,0,12,0,28,0,26,0,50,0,98,64,227,192,193,128, + 7,14,14,9,1,0,56,76,64,96,48,56,108,198,198,198, + 198,198,108,56,6,9,9,8,1,0,120,236,204,192,112,192, + 192,228,120,9,16,32,11,1,252,8,0,8,0,8,0,62, + 0,107,0,201,128,201,128,201,128,201,128,201,128,107,0,62, + 0,8,0,8,0,8,0,8,0,8,13,13,8,0,252,195, + 227,163,38,38,22,20,28,12,24,24,24,24,9,13,26,11, + 1,252,103,0,233,128,177,128,49,128,49,128,49,128,49,128, + 49,128,49,128,1,128,1,128,1,128,1,128,5,9,9,6, + 1,0,96,224,96,96,96,96,96,104,112,9,13,26,11,1, + 252,102,0,207,0,201,128,201,128,201,128,201,128,73,0,107, + 0,62,0,8,0,8,0,8,0,8,0,9,9,18,10,0, + 0,99,128,229,128,104,0,112,0,120,0,108,0,102,0,99, + 0,97,128,10,14,28,10,0,0,48,0,120,0,72,0,8, + 0,8,0,8,0,24,0,28,0,52,0,52,0,102,0,98, + 64,195,192,193,128,9,13,26,11,2,252,66,0,198,0,198, + 0,198,0,198,0,198,0,198,128,251,128,123,0,64,0,192, + 0,192,0,192,0,8,9,9,10,1,0,195,195,97,98,50, + 52,28,24,8,8,9,9,10,1,0,60,102,195,195,195,195, + 195,102,60,9,9,18,10,0,0,127,128,255,128,146,0,18, + 0,18,0,18,0,50,128,115,128,99,0,8,13,13,10,1, + 0,60,102,195,195,195,195,255,195,195,195,195,102,60,8,13, + 13,10,1,252,60,70,195,195,195,195,195,230,220,192,192,192, + 192,10,9,18,11,1,0,31,192,127,192,102,0,195,0,195, + 0,195,0,195,0,102,0,60,0,7,9,9,8,0,0,126, + 254,144,16,16,16,18,30,28,9,9,18,11,1,0,99,0, + 241,128,177,128,49,128,49,128,49,128,49,128,59,0,30,0, + 11,11,22,12,0,0,63,224,127,224,153,128,48,192,32,64, + 102,96,102,96,102,96,102,96,54,192,57,192,10,9,18,12, + 1,0,51,0,97,128,64,128,204,192,204,192,204,192,204,192, + 109,128,115,128,7,19,19,9,1,251,96,142,252,32,64,64, + 124,120,192,128,128,128,192,252,126,2,2,30,28,13,13,26, + 13,0,252,226,56,114,112,50,96,50,96,50,96,50,96,26, + 192,26,192,15,128,2,0,2,0,2,0,2,0,7,19,19, + 9,1,251,96,134,158,120,96,64,128,128,128,128,128,128,192, + 252,126,2,2,30,28,7,17,17,9,1,252,14,24,48,48, + 48,48,48,96,192,96,48,48,48,48,48,24,14,2,17,17, + 4,1,252,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,7,17,17,9,1,252,224,48,24,24,24,24, + 24,12,6,12,24,24,24,24,24,48,224,8,3,3,10,1, + 4,115,255,206,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,11,13,26,12,0,0,225,192,115,32, + 58,96,28,96,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,30,0,4,5,5,5,1,9,48,112,96,192, + 128,9,12,24,10,0,0,3,128,15,0,60,0,240,0,192, + 0,240,0,60,0,15,0,3,128,0,0,255,128,255,128,8, + 13,13,5,255,0,3,6,6,12,12,24,24,48,48,96,96, + 192,192,12,5,10,13,0,3,121,224,207,48,134,16,207,48, + 121,224,9,17,34,9,0,252,3,128,5,128,12,0,12,0, + 12,0,127,0,24,0,24,0,24,0,24,0,24,0,24,0, + 24,0,24,0,24,0,208,0,224,0,10,9,18,14,2,0, + 12,0,30,0,30,0,30,0,109,128,255,192,255,192,109,128, + 12,0,9,9,18,13,2,0,8,0,28,0,62,0,127,0, + 255,128,127,0,62,0,28,0,8,0,9,9,18,13,2,0, + 99,0,247,128,255,128,255,128,127,0,127,0,62,0,28,0, + 8,0,10,9,18,14,2,0,12,0,30,0,63,0,127,128, + 255,192,255,192,109,128,12,0,12,0,17,8,24,19,1,1, + 24,12,0,48,6,0,96,3,0,255,255,128,255,255,128,96, + 3,0,48,6,0,24,12,0,18,8,24,18,0,1,24,0, + 0,48,0,0,96,0,0,255,255,192,255,255,192,96,0,0, + 48,0,0,24,0,0,8,19,19,10,1,251,24,60,126,219, + 153,24,24,24,24,24,24,24,24,24,24,24,24,24,24,18, + 8,24,18,0,1,0,6,0,0,3,0,0,1,128,255,255, + 192,255,255,192,0,1,128,0,3,0,0,6,0,8,19,19, + 10,1,251,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,153,219,126,60,24,5,6,6,7,1,7,112,248,216,216, + 248,112,8,11,11,10,1,0,24,24,24,255,255,24,24,24, + 0,255,255,8,5,5,8,0,9,51,119,102,204,136,9,12, + 24,10,0,0,224,0,120,0,30,0,7,128,1,128,7,128, + 30,0,120,0,224,0,0,0,255,128,255,128,10,9,18,10, + 0,0,225,192,115,128,51,0,30,0,12,0,30,0,51,0, + 115,128,225,192,11,5,10,12,0,3,121,224,207,0,134,0, + 207,0,121,224,7,14,14,9,1,0,120,204,134,6,6,6, + 62,102,198,198,198,196,236,120,5,6,6,9,2,2,112,248, + 248,248,248,112,8,8,8,10,1,1,24,24,0,255,255,0, + 24,24,8,9,9,10,1,0,12,12,255,255,24,255,255,48, + 48,8,8,8,10,1,1,255,255,0,255,255,0,255,255,8, + 7,7,10,1,2,115,255,206,0,115,255,206,14,2,4,18, + 2,0,195,12,195,12,2,19,19,10,4,251,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,19, + 2,6,19,0,4,255,255,224,255,255,224,9,12,24,12,1, + 0,1,128,1,128,1,128,1,128,1,128,1,128,33,128,97, + 128,255,128,255,128,96,0,32,0,11,13,26,13,1,0,194, + 0,227,192,113,224,56,224,57,128,125,0,207,0,199,0,227, + 0,115,128,49,192,112,192,240,64,10,15,30,13,1,255,31, + 192,63,192,96,128,65,0,66,0,34,0,19,0,3,128,1, + 192,0,192,0,192,112,192,248,128,31,0,14,0,13,14,28, + 15,1,0,121,192,254,224,142,112,134,48,198,96,118,128,54, + 64,38,96,6,96,6,96,6,96,6,96,108,120,184,48,12, + 15,30,14,1,252,12,0,24,0,49,224,103,48,204,48,216, + 48,214,48,246,96,100,224,119,192,179,128,152,0,152,0,216, + 0,112,0,12,13,26,14,1,0,31,128,57,192,96,96,217, + 176,221,176,143,16,134,16,143,16,219,176,217,176,96,96,57, + 192,31,128,12,13,26,14,1,0,31,128,57,192,102,96,198, + 48,198,48,191,208,191,208,134,16,198,48,198,48,96,96,57, + 192,31,128,12,13,26,14,1,0,31,176,57,240,96,96,192, + 240,193,176,131,16,134,16,140,16,216,48,240,48,96,96,249, + 192,223,128,12,9,18,14,1,0,31,128,57,192,96,96,224, + 112,192,48,192,48,192,48,192,48,192,48,12,9,18,14,1, + 0,192,48,192,48,192,48,192,48,192,48,224,112,96,96,57, + 192,31,128,12,9,18,13,1,0,255,128,255,224,0,96,0, + 48,0,48,0,48,0,96,255,224,255,128,12,12,24,13,0, + 253,255,128,255,224,0,96,0,48,0,48,0,48,0,96,255, + 224,255,128,0,0,255,240,255,240,12,13,26,13,0,254,0, + 96,0,192,31,240,127,240,97,128,195,0,195,0,198,0,102, + 0,127,240,31,240,24,0,48,0,12,9,18,13,0,0,31, + 240,127,240,96,0,192,0,192,0,192,0,96,0,127,240,31, + 240,12,12,24,13,0,253,31,240,127,240,96,0,192,0,192, + 0,192,0,96,0,127,240,31,240,0,0,255,240,255,240,9, + 9,18,12,1,0,31,128,127,128,224,0,192,0,255,128,192, + 0,224,0,127,128,31,128,10,11,22,12,1,255,0,128,31, + 192,127,192,226,0,196,0,255,128,200,0,240,0,127,192,63, + 192,64,0,13,13,26,14,0,0,0,24,0,48,0,96,0, + 192,1,128,3,0,6,0,12,0,24,0,48,0,96,0,192, + 0,255,248,11,13,26,13,1,0,255,224,224,32,96,96,96, + 64,112,192,48,128,48,128,57,128,25,0,27,0,14,0,14, + 0,4,0,13,13,26,15,1,0,31,192,56,224,96,48,223, + 24,205,152,205,152,205,152,207,24,205,152,220,216,96,48,56, + 224,31,192,13,13,26,15,1,0,31,192,56,224,96,48,199, + 152,205,152,204,152,204,24,204,24,204,152,199,24,96,48,56, + 224,31,192,14,8,16,16,1,5,251,28,171,24,35,24,34, + 168,34,168,34,168,34,72,119,92,14,16,32,15,0,254,255, + 252,120,120,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,120,120,252,252,9, + 14,28,10,0,0,0,128,0,128,0,128,0,128,48,128,113, + 0,217,0,25,0,25,0,13,0,14,0,6,0,6,0,6, + 0,2,2,2,4,1,4,192,192,11,6,12,13,1,0,255, + 224,255,224,0,96,0,96,0,96,0,96,10,9,18,11,0, + 0,12,0,12,0,30,0,51,0,51,0,97,128,97,128,192, + 192,192,192,10,9,18,11,0,0,192,192,192,192,97,128,97, + 128,51,0,51,0,30,0,12,0,12,0,18,9,27,18,0, + 0,8,4,0,24,6,0,63,255,0,127,255,128,224,1,192, + 127,255,128,63,255,0,24,6,0,8,4,0,16,9,18,18, + 1,0,8,0,24,0,63,255,127,255,224,0,127,255,63,255, + 24,0,8,0,9,17,34,11,1,253,8,0,28,0,54,0, + 119,0,247,128,54,0,54,0,54,0,54,0,54,0,54,0, + 54,0,54,0,54,0,54,0,54,0,54,0,16,9,18,18, + 1,0,0,16,0,24,255,252,255,254,0,7,255,254,255,252, + 0,24,0,16,9,17,34,11,1,253,54,0,54,0,54,0, + 54,0,54,0,54,0,54,0,54,0,54,0,54,0,54,0, + 54,0,247,128,119,0,54,0,28,0,8,0,9,14,28,9, + 0,0,28,0,28,0,54,0,54,0,99,0,99,0,193,128, + 193,128,99,0,99,0,54,0,54,0,28,0,28,0,5,17, + 17,6,0,253,24,24,48,48,96,96,192,192,128,192,192,96, + 96,48,48,24,24,13,13,26,15,1,0,31,192,56,224,96, + 48,207,24,205,152,205,152,207,24,205,152,205,152,205,152,96, + 48,56,224,31,192,13,13,26,15,1,0,31,192,56,224,96, + 48,199,24,204,152,204,24,204,24,204,24,204,152,199,24,96, + 48,56,224,31,192,13,8,16,15,1,5,251,24,35,24,35, + 24,34,168,34,168,34,168,34,72,34,72,12,16,32,13,0, + 254,255,224,224,96,112,32,56,0,28,0,14,0,7,0,3, + 0,6,0,12,0,24,0,48,0,96,16,192,48,255,240,255, + 240,6,19,19,7,1,251,4,12,24,24,48,48,96,96,96, + 96,192,192,192,192,192,192,192,192,192,2,19,19,7,1,251, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,6,19,19,7,1,251,192,192,192,192,192,192,192, + 192,192,224,96,96,96,48,48,24,24,12,4,5,19,19,7, + 1,251,248,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,2,19,19,7,1,251,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,5,19, + 19,7,1,251,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,248,5,19,19,9,4,251,56,96,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 5,19,19,9,1,251,24,24,24,24,24,24,16,48,96,192, + 96,48,16,24,24,24,24,24,24,5,19,19,9,4,251,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 96,56,2,19,19,9,4,251,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,255,5,17,17,6, + 0,253,192,192,96,96,48,48,24,24,8,24,24,48,48,96, + 96,192,192,6,19,19,6,0,251,28,28,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,224,224,7,19,19,13, + 5,251,28,126,102,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,2,19,19,13,5,251,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,7,19, + 19,13,0,251,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,204,252,112,6,19,19,7,0,251,128,192,96, + 96,48,48,24,24,24,24,12,12,12,12,12,12,12,12,12, + 2,19,19,7,4,251,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,6,19,19,7,0,251,12, + 12,12,12,12,12,12,12,12,24,24,24,24,48,48,96,96, + 192,128,5,19,19,7,1,251,248,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,2,19,19,7,4, + 251,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,5,19,19,7,1,251,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,248,5,19,19, + 9,1,251,224,48,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,5,19,19,9,4,251,192,192,192,192, + 192,192,64,96,48,24,48,96,64,192,192,192,192,192,192,5, + 19,19,9,1,251,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,48,224,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--20-140-100-100-P-107-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w=14 h=19 x= 9 y=13 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=20 h=19 x=-1 y=-5 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =14 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb14r[2261] U8G_SECTION(".progmem.u8g_font_symb14r") = { + 0,20,19,255,251,13,2,127,6,16,32,127,252,14,251,13, + 252,0,0,0,5,0,1,2,13,13,6,2,0,192,192,192, + 192,192,192,192,64,64,0,0,192,192,13,13,26,13,0,0, + 192,24,192,24,96,48,96,48,63,224,48,96,24,192,24,192, + 8,128,13,128,5,0,7,0,2,0,10,13,26,9,255,0, + 9,0,9,0,9,0,9,0,127,192,18,0,18,0,18,0, + 255,128,36,0,36,0,36,0,36,0,8,13,13,10,1,0, + 255,3,3,3,3,3,127,3,3,3,3,3,255,13,13,26, + 15,1,0,56,96,103,224,196,192,197,128,233,128,115,0,6, + 0,6,112,12,200,25,136,25,136,49,208,48,224,12,13,26, + 13,1,0,28,0,54,0,34,0,38,0,60,0,57,224,124, + 192,238,128,199,128,195,0,195,144,103,240,60,224,6,9,9, + 8,1,0,240,56,28,12,124,12,28,56,240,4,17,17,6, + 1,252,16,48,96,96,192,192,192,192,192,192,192,192,192,96, + 96,48,16,4,17,17,6,1,252,128,192,96,96,48,48,48, + 48,48,48,48,48,48,96,96,192,128,7,7,7,9,1,3, + 16,214,124,56,124,214,16,8,8,8,10,1,1,24,24,24, + 255,255,24,24,24,3,5,5,5,1,253,96,96,32,96,192, + 7,2,2,9,1,4,254,254,2,2,2,4,1,0,192,192, + 5,13,13,5,0,0,24,24,24,48,48,48,96,96,96,96, + 192,192,192,8,13,13,9,0,0,60,102,102,195,195,195,195, + 195,195,195,102,102,60,6,13,13,9,1,0,48,240,176,48, + 48,48,48,48,48,48,48,120,252,7,13,13,9,1,0,60, + 126,206,134,6,6,12,28,24,48,98,254,254,7,13,13,9, + 1,0,124,206,134,6,12,56,60,14,6,6,6,204,248,8, + 13,13,9,0,0,6,14,14,30,54,54,102,198,198,255,6, + 6,6,7,13,13,9,1,0,126,124,192,192,240,60,12,14, + 6,6,12,220,240,8,13,13,9,0,0,14,56,48,96,96, + 252,198,195,195,195,195,102,60,8,13,13,9,0,0,127,255, + 134,6,12,12,12,24,24,24,48,48,48,8,13,13,9,0, + 0,60,102,102,102,116,60,126,102,195,195,195,102,60,8,13, + 13,9,0,0,60,110,199,195,195,195,227,127,58,6,12,56, + 224,2,9,9,5,2,0,192,192,0,0,0,0,0,192,192, + 3,12,12,5,1,253,96,96,0,0,0,0,0,96,96,32, + 96,192,9,9,18,10,0,0,3,128,15,0,60,0,240,0, + 192,0,240,0,60,0,15,0,3,128,8,5,5,10,1,2, + 255,255,0,255,255,9,9,18,10,0,0,224,0,120,0,30, + 0,7,128,1,128,7,128,30,0,120,0,224,0,6,13,13, + 8,1,0,120,220,204,204,12,12,24,48,48,48,0,48,48, + 8,9,9,10,1,0,115,255,206,0,255,255,0,255,255,12, + 13,26,14,1,0,4,0,14,0,14,0,11,0,27,0,19, + 0,17,128,49,128,63,192,32,192,96,192,96,224,241,240,9, + 13,26,11,1,0,252,0,102,0,99,0,99,0,99,0,102, + 0,126,0,99,0,97,128,97,128,97,128,99,128,255,0,12, + 13,26,14,1,0,240,112,112,96,56,192,24,192,29,128,15, + 0,6,0,15,0,27,128,49,128,49,192,96,224,224,240,11, + 13,26,11,0,0,4,0,6,0,14,0,11,0,19,0,19, + 0,17,128,33,128,33,192,64,192,64,192,128,96,255,224,9, + 13,26,11,1,0,255,128,97,128,96,128,96,0,96,0,97, + 0,127,0,97,0,96,0,96,0,96,128,97,128,255,128,12, + 13,26,14,1,0,15,0,6,0,31,128,102,96,198,48,198, + 48,198,48,198,48,198,48,102,96,31,128,6,0,15,0,10, + 13,26,11,0,0,255,192,112,192,48,64,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,120,0,11, + 13,26,13,1,0,241,224,96,192,96,192,96,192,96,192,96, + 192,127,192,96,192,96,192,96,192,96,192,96,192,241,224,4, + 13,13,6,1,0,240,96,96,96,96,96,96,96,96,96,96, + 96,240,11,13,26,12,1,0,6,0,11,0,9,128,5,128, + 99,128,241,128,177,192,49,160,49,128,49,128,49,128,59,0, + 30,0,11,13,26,14,1,0,243,192,97,128,99,0,102,0, + 108,0,120,0,120,0,108,0,102,0,99,0,99,128,97,192, + 241,224,12,13,26,13,0,0,6,0,6,0,15,0,11,0, + 11,0,25,128,17,128,17,128,48,192,32,192,32,96,96,96, + 240,240,14,13,26,16,1,0,224,28,112,56,112,56,88,120, + 88,88,88,216,76,152,76,152,77,152,71,24,71,24,67,24, + 226,60,11,13,26,13,1,0,224,224,112,64,112,64,88,64, + 76,64,76,64,70,64,67,64,67,192,65,192,64,192,64,192, + 224,64,11,13,26,13,1,0,14,0,49,128,96,192,224,224, + 192,96,192,96,192,96,192,96,192,96,224,224,96,192,49,128, + 14,0,11,13,26,13,1,0,255,224,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 241,224,11,13,26,13,1,0,14,0,49,128,96,192,224,224, + 192,96,209,96,223,96,209,96,192,96,224,224,96,192,49,128, + 14,0,8,13,13,10,1,0,254,103,99,99,99,103,126,96, + 96,96,96,96,240,10,13,26,11,0,0,255,128,193,128,96, + 128,48,0,24,0,12,0,12,0,8,0,16,0,32,64,64, + 192,255,128,255,128,10,13,26,12,1,0,255,192,204,192,140, + 64,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,30,0,12,13,26,13,0,0,248,240,112,96,48, + 192,24,192,29,128,15,0,15,0,6,0,6,0,6,0,6, + 0,6,0,15,0,6,13,13,8,1,252,60,124,192,128,128, + 128,192,120,60,4,4,60,56,13,13,26,14,0,0,7,0, + 24,192,48,96,112,112,96,48,96,48,96,48,96,48,48,96, + 56,224,136,136,248,248,248,248,10,13,26,12,1,0,127,128, + 127,128,64,128,0,0,33,0,63,0,63,0,33,0,0,0, + 128,64,128,64,255,192,255,192,14,13,26,15,0,0,199,140, + 99,24,99,24,99,24,99,24,51,48,31,224,3,0,3,0, + 3,0,3,0,3,0,7,128,9,13,26,11,1,0,255,128, + 195,128,131,0,7,0,6,0,14,0,28,0,24,0,56,0, + 112,0,96,128,225,128,255,128,4,17,17,6,1,252,240,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,240,10, + 9,18,14,2,0,12,0,12,0,0,0,0,0,0,0,0, + 0,0,0,192,192,192,192,4,17,17,6,1,252,240,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,240,10,13, + 26,12,1,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,255,192,255,192,9,2, + 4,9,0,252,255,128,255,128,10,1,2,9,9,13,255,192, + 11,9,18,12,1,0,60,192,101,128,195,0,195,0,195,0, + 195,0,195,0,101,32,56,192,8,18,18,10,1,252,60,70, + 198,198,198,204,198,195,195,195,195,195,230,220,192,192,192,192, + 10,13,26,10,0,252,96,192,241,192,145,128,19,0,23,0, + 14,0,12,0,28,0,26,0,50,0,98,64,227,192,193,128, + 7,14,14,9,1,0,56,76,64,96,48,56,108,198,198,198, + 198,198,108,56,6,9,9,8,1,0,120,236,204,192,112,192, + 192,228,120,9,16,32,11,1,252,8,0,8,0,8,0,62, + 0,107,0,201,128,201,128,201,128,201,128,201,128,107,0,62, + 0,8,0,8,0,8,0,8,0,8,13,13,8,0,252,195, + 227,163,38,38,22,20,28,12,24,24,24,24,9,13,26,11, + 1,252,103,0,233,128,177,128,49,128,49,128,49,128,49,128, + 49,128,49,128,1,128,1,128,1,128,1,128,5,9,9,6, + 1,0,96,224,96,96,96,96,96,104,112,9,13,26,11,1, + 252,102,0,207,0,201,128,201,128,201,128,201,128,73,0,107, + 0,62,0,8,0,8,0,8,0,8,0,9,9,18,10,0, + 0,99,128,229,128,104,0,112,0,120,0,108,0,102,0,99, + 0,97,128,10,14,28,10,0,0,48,0,120,0,72,0,8, + 0,8,0,8,0,24,0,28,0,52,0,52,0,102,0,98, + 64,195,192,193,128,9,13,26,11,2,252,66,0,198,0,198, + 0,198,0,198,0,198,0,198,128,251,128,123,0,64,0,192, + 0,192,0,192,0,8,9,9,10,1,0,195,195,97,98,50, + 52,28,24,8,8,9,9,10,1,0,60,102,195,195,195,195, + 195,102,60,9,9,18,10,0,0,127,128,255,128,146,0,18, + 0,18,0,18,0,50,128,115,128,99,0,8,13,13,10,1, + 0,60,102,195,195,195,195,255,195,195,195,195,102,60,8,13, + 13,10,1,252,60,70,195,195,195,195,195,230,220,192,192,192, + 192,10,9,18,11,1,0,31,192,127,192,102,0,195,0,195, + 0,195,0,195,0,102,0,60,0,7,9,9,8,0,0,126, + 254,144,16,16,16,18,30,28,9,9,18,11,1,0,99,0, + 241,128,177,128,49,128,49,128,49,128,49,128,59,0,30,0, + 11,11,22,12,0,0,63,224,127,224,153,128,48,192,32,64, + 102,96,102,96,102,96,102,96,54,192,57,192,10,9,18,12, + 1,0,51,0,97,128,64,128,204,192,204,192,204,192,204,192, + 109,128,115,128,7,19,19,9,1,251,96,142,252,32,64,64, + 124,120,192,128,128,128,192,252,126,2,2,30,28,13,13,26, + 13,0,252,226,56,114,112,50,96,50,96,50,96,50,96,26, + 192,26,192,15,128,2,0,2,0,2,0,2,0,7,19,19, + 9,1,251,96,134,158,120,96,64,128,128,128,128,128,128,192, + 252,126,2,2,30,28,7,17,17,9,1,252,14,24,48,48, + 48,48,48,96,192,96,48,48,48,48,48,24,14,2,17,17, + 4,1,252,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,7,17,17,9,1,252,224,48,24,24,24,24, + 24,12,6,12,24,24,24,24,24,48,224,8,3,3,10,1, + 4,115,255,206,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--25-180-100-100-P-142-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=25 h=24 x=13 y=18 dx=26 dy= 0 ascent=19 len=63 + Font Bounding box w=27 h=24 x=-1 y=-5 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =19 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb18[6604] U8G_SECTION(".progmem.u8g_font_symb18") = { + 0,27,24,255,251,17,3,215,8,151,32,255,251,19,251,17, + 251,0,0,0,6,0,1,3,17,17,7,2,0,64,224,224, + 224,224,224,224,224,64,64,64,64,0,0,0,192,192,15,17, + 34,17,1,0,192,6,192,6,96,12,96,12,63,248,63,248, + 48,24,24,48,24,48,12,96,12,96,12,96,6,192,6,192, + 3,128,3,128,3,128,11,17,34,13,1,0,8,128,8,128, + 8,128,8,128,8,128,127,224,127,224,17,0,17,0,17,0, + 255,192,255,192,34,0,34,0,34,0,34,0,34,0,11,17, + 34,13,1,0,255,224,255,224,0,96,0,96,0,96,0,96, + 0,96,255,224,255,224,0,96,0,96,0,96,0,96,0,96, + 0,96,255,224,255,224,18,17,51,20,1,0,31,6,0,57, + 254,0,113,12,0,99,24,0,227,24,0,198,48,0,206,96, + 0,220,96,0,120,199,128,1,142,192,1,156,192,3,56,192, + 6,48,192,6,49,128,12,51,128,24,55,0,24,30,0,15, + 17,34,17,1,0,7,128,12,192,24,64,24,64,24,192,29, + 128,15,62,30,28,62,24,103,48,195,160,193,224,192,192,193, + 224,227,114,126,62,60,28,8,13,13,11,2,0,248,62,14, + 7,3,3,127,3,3,7,14,62,248,6,22,22,8,1,251, + 12,24,48,32,96,96,64,192,192,192,192,192,192,192,192,64, + 96,96,32,48,24,12,6,22,22,8,1,251,192,96,48,16, + 24,24,8,12,12,12,12,12,12,12,12,8,24,24,16,48, + 96,192,8,10,10,12,2,7,24,24,195,231,24,24,231,195, + 24,24,10,10,20,12,1,2,12,0,12,0,12,0,12,0, + 255,192,255,192,12,0,12,0,12,0,12,0,3,6,6,6, + 1,252,96,96,32,96,192,128,11,2,4,13,1,6,255,224, + 255,224,2,2,2,6,2,0,192,192,7,17,17,7,0,0, + 6,6,6,12,12,12,24,24,48,48,48,96,96,96,192,192, + 192,10,17,34,12,1,0,30,0,51,0,97,128,97,128,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,97,128,97,128,51,0,30,0,6,17,17,12,3,0,48, + 112,240,48,48,48,48,48,48,48,48,48,48,48,48,48,252, + 10,17,34,12,1,0,28,0,127,0,103,0,131,128,129,128, + 1,128,1,128,3,128,3,0,7,0,12,0,12,0,24,0, + 48,0,96,64,255,192,255,128,9,17,34,12,1,0,28,0, + 126,0,71,0,131,0,131,0,6,0,12,0,30,0,7,0, + 3,0,1,128,1,128,1,128,3,0,199,0,254,0,120,0, + 10,17,34,12,1,0,3,0,7,0,7,0,15,0,11,0, + 27,0,19,0,51,0,35,0,99,0,67,0,255,192,255,192, + 3,0,3,0,3,0,3,0,10,17,34,12,1,0,31,192, + 63,128,96,0,96,0,192,0,240,0,252,0,30,0,7,0, + 3,128,1,128,1,128,1,128,1,128,195,0,254,0,124,0, + 10,17,34,12,1,0,3,192,14,0,56,0,112,0,96,0, + 224,0,207,0,243,128,225,128,192,192,192,192,192,192,192,192, + 224,192,97,192,115,128,31,0,10,17,34,12,1,0,127,192, + 255,192,192,192,129,128,1,128,3,0,3,0,3,0,6,0, + 6,0,6,0,12,0,12,0,12,0,24,0,24,0,24,0, + 10,17,34,12,1,0,30,0,51,0,97,128,97,128,97,128, + 51,0,30,0,30,0,55,0,115,128,225,192,192,192,192,192, + 192,192,225,192,115,128,30,0,10,17,34,12,1,0,30,0, + 115,128,97,128,192,192,192,192,192,192,192,192,192,192,97,192, + 115,192,30,192,1,128,3,128,7,0,14,0,60,0,240,0, + 2,11,11,6,2,0,192,192,0,0,0,0,0,0,0,192, + 192,3,15,15,6,1,252,96,96,0,0,0,0,0,0,0, + 96,96,32,96,192,128,12,12,24,13,0,1,0,112,1,224, + 7,128,30,0,120,0,224,0,224,0,120,0,30,0,7,128, + 1,224,0,112,10,5,10,12,1,4,255,192,255,192,0,0, + 255,192,255,192,12,12,24,13,0,1,224,0,120,0,30,0, + 7,128,1,224,0,112,0,112,1,224,7,128,30,0,120,0, + 224,0,8,17,17,11,2,0,124,198,131,195,199,6,14,12, + 28,24,24,16,16,0,0,48,48,11,12,24,13,1,1,56, + 32,124,96,199,192,131,128,0,0,0,0,255,224,255,224,0, + 0,0,0,255,224,255,224,17,17,51,18,0,0,0,128,0, + 1,192,0,1,192,0,1,64,0,3,96,0,2,96,0,2, + 48,0,6,48,0,4,48,0,12,24,0,8,24,0,15,252, + 0,24,12,0,16,12,0,48,6,0,48,6,0,248,15,128, + 13,17,34,15,1,0,255,192,48,224,48,112,48,48,48,48, + 48,48,48,48,48,96,63,192,48,112,48,56,48,24,48,24, + 48,24,48,56,48,112,255,192,16,17,34,18,1,0,248,31, + 112,14,56,12,28,24,12,48,14,96,7,192,3,128,3,128, + 7,192,6,96,12,112,24,48,24,24,48,28,112,14,248,31, + 15,17,34,15,0,0,3,0,3,0,3,128,5,128,4,192, + 12,192,8,96,8,96,24,48,16,48,48,24,32,24,32,12, + 96,12,64,6,192,6,255,254,13,17,34,15,1,0,255,240, + 48,48,48,16,48,0,48,0,48,0,48,32,48,32,63,224, + 48,32,48,32,48,0,48,0,48,0,48,8,48,24,255,248, + 16,17,34,19,1,0,7,224,1,128,1,128,15,240,57,156, + 97,134,225,135,193,131,193,131,193,131,225,135,97,134,57,156, + 15,240,1,128,1,128,7,224,13,17,34,15,1,0,255,248, + 48,24,48,8,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,252,0, + 16,17,34,18,1,0,252,63,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,63,252,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,252,63,6,17,17,8,1,0,252,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,252,14, + 17,34,16,1,0,3,192,6,224,4,96,6,96,3,48,113, + 176,248,240,152,60,24,48,24,48,48,48,48,48,48,48,48, + 96,56,96,28,192,15,128,15,17,34,17,1,0,252,124,48, + 48,48,96,48,192,49,128,51,0,54,0,62,0,63,0,51, + 128,49,128,49,192,48,224,48,112,48,56,48,28,252,62,15, + 17,34,17,1,0,3,0,3,0,3,128,5,128,4,192,4, + 192,12,192,8,96,8,96,24,96,16,48,16,48,48,48,32, + 24,32,24,96,28,248,62,20,17,51,22,1,0,240,1,240, + 56,1,192,56,3,192,60,2,192,44,2,192,46,6,192,38, + 4,192,39,12,192,35,8,192,35,136,192,33,152,192,33,208, + 192,32,208,192,32,240,192,32,96,192,32,96,192,248,67,240, + 16,17,34,18,1,0,240,31,56,4,56,4,44,4,46,4, + 38,4,35,4,35,4,33,132,33,196,32,196,32,100,32,100, + 32,52,32,60,32,28,248,12,16,17,34,18,1,0,7,224, + 30,120,56,28,112,14,96,6,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,96,6,112,14,56,28,28,56,7,224, + 16,17,34,18,1,0,255,255,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,252,63,16,17,34,18,1,0,7,224, + 30,120,56,28,112,14,96,6,200,19,200,19,207,243,207,243, + 200,19,200,19,192,3,96,6,112,14,56,28,28,56,7,224, + 12,17,34,14,1,0,255,128,48,224,48,96,48,48,48,48, + 48,48,48,96,48,224,63,128,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,252,0,12,17,34,14,1,0,255,240, + 224,16,112,16,56,0,28,0,14,0,7,0,3,128,3,0, + 6,0,12,0,24,0,48,0,96,16,192,16,255,240,255,240, + 14,17,34,16,1,0,255,252,195,12,131,4,3,0,3,0, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,15,192,16,17,34,16,0,0,248,31, + 112,14,48,12,24,24,28,16,12,48,14,96,6,96,3,192, + 3,192,1,128,1,128,1,128,1,128,1,128,1,128,7,224, + 9,18,36,11,1,251,31,128,63,128,96,0,96,0,192,0, + 192,0,192,0,192,0,192,0,192,0,96,0,127,0,31,128, + 0,128,0,128,1,128,15,0,14,0,16,17,34,18,1,0, + 7,224,30,120,56,28,112,14,96,6,192,3,192,3,192,3, + 192,3,192,3,96,6,48,12,24,24,140,49,196,35,252,63, + 252,63,14,17,34,16,1,0,127,248,127,248,64,8,64,8, + 0,0,16,32,16,32,31,224,31,224,16,32,16,32,0,0, + 0,0,128,4,128,4,255,252,255,252,18,17,51,20,1,0, + 227,241,192,112,195,128,48,195,0,48,195,0,56,199,0,56, + 199,0,24,198,0,28,206,0,7,248,0,0,192,0,0,192, + 0,0,192,0,0,192,0,0,192,0,0,192,0,0,192,0, + 3,240,0,12,17,34,15,1,0,255,240,192,112,128,96,0, + 224,1,192,1,128,3,128,7,0,6,0,14,0,28,0,56, + 0,56,0,112,0,96,16,224,48,255,240,5,22,22,8,2, + 251,248,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,248,12,10,20,18,3,0,6,0,6, + 0,0,0,0,0,0,0,0,0,0,0,0,0,192,48,192, + 48,5,22,22,8,1,251,248,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,248,14,17,34, + 16,1,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,255,252,255,252,13,2,4,13,0,251,255,248,255,248,13, + 1,2,13,13,18,255,248,14,13,26,16,1,0,31,24,113, + 184,96,176,224,240,192,96,192,96,192,96,192,96,192,96,224, + 224,96,228,113,252,31,56,10,24,48,12,1,251,62,0,103, + 0,195,128,193,128,193,128,195,128,195,0,206,0,207,0,195, + 128,193,128,193,192,192,192,192,192,192,192,193,192,225,128,243, + 128,223,0,192,0,192,0,192,0,192,0,192,0,12,18,36, + 14,1,251,112,96,248,96,216,192,136,192,9,128,9,128,11, + 0,7,0,6,0,6,0,14,0,14,0,25,0,25,0,49, + 16,49,176,97,240,96,224,10,18,36,12,1,0,31,0,51, + 128,33,128,48,0,56,0,28,0,14,0,63,0,115,128,97, + 128,192,192,192,192,192,192,192,192,192,192,97,128,115,128,30, + 0,9,13,26,11,1,0,62,0,115,0,227,0,195,0,224, + 0,96,0,60,0,96,0,224,0,192,0,224,128,113,128,63, + 0,12,22,44,14,1,251,6,0,6,0,6,0,6,0,31, + 128,54,192,102,96,230,112,198,48,198,48,198,48,198,48,198, + 48,230,112,102,96,54,192,31,128,6,0,6,0,6,0,6, + 0,6,0,11,18,36,11,0,251,112,96,248,96,152,96,152, + 192,24,192,12,192,13,128,13,128,5,128,7,0,7,0,3, + 0,6,0,6,0,6,0,6,0,6,0,6,0,12,18,36, + 15,1,251,113,192,251,224,158,48,28,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,48,0,48,0, + 48,0,48,0,48,0,48,7,13,13,8,1,0,48,112,240, + 48,48,48,48,48,48,48,50,62,28,12,18,36,14,1,251, + 51,128,115,192,102,96,198,112,198,48,198,48,198,48,198,48, + 198,48,230,112,102,96,54,192,31,128,6,0,6,0,6,0, + 6,0,6,0,12,13,26,14,1,0,48,112,112,240,241,176, + 51,0,54,0,60,0,60,0,62,0,55,0,51,128,49,192, + 48,224,49,240,12,19,38,14,1,0,112,0,248,0,136,0, + 8,0,8,0,12,0,12,0,12,0,28,0,30,0,26,0, + 50,0,50,0,51,0,97,0,97,0,97,144,193,240,192,224, + 13,18,36,14,1,251,96,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,113,200,63,248,111,48, + 96,0,96,0,96,0,96,0,192,0,11,13,26,13,1,0, + 192,224,192,224,192,96,96,64,96,192,96,128,49,128,49,0, + 51,0,26,0,26,0,14,0,12,0,11,13,26,13,1,0, + 31,0,113,192,96,192,224,224,192,96,192,96,192,96,192,96, + 192,96,224,224,96,192,113,192,31,0,13,13,26,14,0,0, + 127,248,255,248,152,192,24,192,24,192,24,192,24,192,24,192, + 24,192,24,192,24,200,56,248,48,240,10,17,34,12,1,0, + 30,0,51,0,97,128,97,128,192,192,192,192,192,192,192,192, + 255,192,192,192,192,192,192,192,192,192,97,128,97,128,51,0, + 30,0,10,18,36,12,1,251,62,0,99,128,193,128,193,192, + 192,192,192,192,192,192,192,192,192,192,193,192,193,128,227,128, + 222,0,192,0,192,0,192,0,192,0,192,0,14,13,26,15, + 1,0,31,252,113,252,96,192,224,224,192,96,192,96,192,96, + 192,96,192,96,224,224,96,192,113,192,31,0,10,13,26,11, + 0,0,63,192,127,192,204,0,140,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,128,15,128,7,0,13,13,26,14, + 0,0,48,224,120,48,216,24,152,24,24,24,24,24,24,24, + 24,24,24,24,24,48,12,48,14,224,7,192,16,14,28,18, + 1,0,127,255,255,255,152,24,48,12,49,140,97,134,97,134, + 97,134,97,134,97,134,97,134,49,140,59,220,30,120,14,13, + 26,16,1,0,24,96,48,48,96,24,99,24,195,12,195,12, + 195,12,195,12,195,12,195,12,99,24,119,184,60,240,10,24, + 48,12,1,251,48,0,99,128,103,128,63,0,48,0,32,0, + 55,128,31,128,48,0,96,0,192,0,128,0,128,0,128,0, + 192,0,240,0,124,0,63,128,15,192,0,192,0,64,0,192, + 15,128,15,0,16,18,36,18,1,251,193,131,113,142,49,140, + 57,156,57,156,57,156,57,156,57,156,57,156,25,152,25,152, + 13,176,7,224,1,128,1,128,1,128,1,128,1,128,10,24, + 48,12,1,251,48,0,99,128,103,128,63,0,24,0,48,0, + 32,0,96,0,64,0,192,0,128,0,128,0,128,0,128,0, + 192,0,240,0,124,0,63,128,15,192,0,192,0,64,0,192, + 15,128,15,0,8,22,22,10,1,251,7,12,24,24,24,24, + 24,16,48,32,192,32,48,16,24,24,24,24,24,24,12,7, + 2,22,22,4,1,251,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,8,22,22,10, + 1,251,224,48,24,24,24,24,24,8,12,4,3,4,12,8, + 24,24,24,24,24,24,48,224,11,4,8,13,1,5,56,32, + 124,96,199,192,131,128,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,13,17,34,15,1,0,224,112, + 112,216,57,184,27,48,14,0,6,0,6,0,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,31,128, + 5,6,6,6,1,12,24,56,112,96,192,128,12,15,30,14, + 0,0,0,112,1,224,7,128,30,0,120,0,224,0,224,0, + 120,0,30,0,3,192,0,240,0,48,0,0,255,240,255,240, + 8,17,17,4,255,0,3,3,6,6,12,12,24,24,24,48, + 48,96,96,96,192,192,192,15,7,14,17,1,4,56,56,124, + 124,198,198,195,134,199,198,124,124,56,56,13,22,44,13,0, + 251,0,240,1,152,1,152,3,0,3,0,3,0,31,192,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,204,0,204,0,120,0,14,13,26, + 18,2,0,7,128,15,192,15,192,15,192,15,192,119,184,251, + 124,255,252,255,252,251,124,115,56,3,0,7,128,10,13,26, + 18,4,0,12,0,30,0,63,0,63,0,127,128,127,128,255, + 192,127,128,127,128,63,0,30,0,30,0,12,0,12,13,26, + 18,3,0,112,224,249,240,255,240,255,240,255,240,255,240,127, + 224,127,224,63,192,31,128,31,128,15,0,6,0,12,13,26, + 18,3,0,6,0,15,0,31,128,31,128,63,192,127,224,127, + 224,255,240,255,240,246,240,102,96,6,0,6,0,24,12,36, + 26,1,1,6,0,96,12,0,48,24,0,24,48,0,12,96, + 0,6,255,255,255,255,255,255,96,0,6,48,0,12,24,0, + 24,12,0,48,6,0,96,25,12,48,25,0,1,6,0,0, + 0,12,0,0,0,24,0,0,0,48,0,0,0,96,0,0, + 0,255,255,255,128,255,255,255,128,96,0,0,0,48,0,0, + 0,24,0,0,0,12,0,0,0,6,0,0,0,12,24,48, + 14,1,251,6,0,15,0,31,128,54,192,102,96,198,48,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,25,12,48,25,0,1,0,0,48,0,0,0,24, + 0,0,0,12,0,0,0,6,0,0,0,3,0,255,255,255, + 128,255,255,255,128,0,0,3,0,0,0,6,0,0,0,12, + 0,0,0,24,0,0,0,48,0,12,24,48,14,1,251,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,198,48,102,96,54,192,31,128,15,0,6,0,7, + 7,7,9,1,10,56,108,198,198,198,108,56,10,14,28,12, + 1,0,12,0,12,0,12,0,12,0,255,192,255,192,12,0, + 12,0,12,0,12,0,0,0,0,0,255,192,255,192,9,6, + 12,10,1,12,25,128,59,128,119,0,102,0,204,0,136,0, + 12,15,30,14,0,0,224,0,120,0,30,0,7,128,1,224, + 0,112,0,112,1,224,7,128,62,0,240,0,192,0,0,0, + 255,240,255,240,11,10,20,13,1,2,192,96,96,192,49,128, + 27,0,14,0,14,0,27,0,49,128,96,192,192,96,14,7, + 14,16,1,4,56,56,124,124,198,192,195,128,199,192,124,124, + 56,56,10,19,38,12,1,0,62,0,99,0,193,128,1,128, + 0,192,0,192,0,192,0,192,30,192,115,192,97,192,192,192, + 192,192,193,128,193,128,193,128,227,0,119,0,62,0,8,8, + 8,12,2,3,60,126,255,255,255,255,126,60,10,8,16,12, + 1,3,12,0,12,0,0,0,255,192,255,192,0,0,12,0, + 12,0,10,13,26,14,2,0,1,128,1,128,3,0,3,0, + 255,192,255,192,12,0,255,192,255,192,48,0,48,0,96,0, + 96,0,11,8,16,13,1,3,255,224,255,224,0,0,255,224, + 255,224,0,0,255,224,255,224,11,8,16,13,1,3,56,32, + 124,96,199,192,131,128,56,32,124,96,199,192,131,128,18,2, + 6,24,3,0,192,192,192,192,192,192,2,24,24,14,6,251, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,25,2,8,25,0,6,255,255, + 255,128,255,255,255,128,14,16,32,16,1,0,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 32,12,96,12,255,252,255,252,96,0,32,0,12,16,32,14, + 1,0,129,128,195,0,227,240,113,240,56,96,28,192,60,128, + 110,128,199,128,195,128,227,128,241,192,112,224,48,112,112,48, + 224,16,14,19,38,16,1,255,15,128,63,252,112,248,96,48, + 64,96,64,192,96,192,48,224,28,112,0,56,0,56,0,28, + 0,28,0,12,48,12,120,12,222,24,15,240,3,192,17,18, + 54,19,1,0,30,24,0,63,60,0,99,206,0,193,135,0, + 129,131,0,193,134,0,225,140,0,113,184,0,57,176,0,25, + 152,0,17,152,0,1,152,0,1,156,0,1,140,0,1,140, + 0,25,134,128,63,7,128,78,7,0,15,20,40,19,2,251, + 6,0,12,0,24,60,48,254,49,134,99,6,102,6,108,6, + 104,12,121,156,115,152,114,48,122,112,91,224,221,128,140,0, + 140,0,140,0,216,0,112,0,16,17,34,18,1,0,7,224, + 30,120,56,28,96,6,104,22,204,51,198,99,195,195,193,131, + 195,195,198,99,204,51,104,22,96,6,56,28,30,120,7,224, + 16,17,34,18,1,0,7,224,30,120,56,28,97,134,97,134, + 193,131,193,131,207,243,207,243,193,131,193,131,193,131,97,134, + 96,6,56,28,30,120,7,224,18,17,51,20,1,0,3,240, + 192,15,253,128,28,15,0,48,7,0,48,15,0,96,25,128, + 96,49,128,96,97,128,96,193,128,97,129,128,99,1,128,102, + 1,128,60,3,0,56,3,0,60,14,0,111,252,0,195,240, + 0,16,13,26,18,1,0,7,224,31,248,56,28,96,6,96, + 6,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,16,13,26,18,1,0,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,96,6,96,6,56,28,31,248,7, + 224,15,12,24,17,1,0,255,224,255,248,0,28,0,12,0, + 6,0,6,0,6,0,6,0,12,0,28,255,248,255,224,15, + 15,30,17,1,253,255,224,255,248,0,28,0,12,0,6,0, + 6,0,6,0,6,0,12,0,28,255,248,255,224,0,0,255, + 254,255,254,15,16,32,17,1,254,0,12,0,12,15,254,63, + 254,112,48,96,48,192,96,192,96,192,192,192,192,97,128,113, + 128,63,254,15,254,6,0,6,0,15,12,24,17,1,0,15, + 254,63,254,112,0,96,0,192,0,192,0,192,0,192,0,96, + 0,112,0,63,254,15,254,15,15,30,17,1,253,15,254,63, + 254,112,0,96,0,192,0,192,0,192,0,192,0,96,0,112, + 0,63,254,15,254,0,0,255,254,255,254,12,13,26,16,2, + 0,31,240,127,240,96,0,192,0,192,0,192,0,255,240,192, + 0,192,0,192,0,96,0,127,240,31,240,12,15,30,16,2, + 255,0,192,31,240,127,240,97,128,193,128,195,0,195,0,255, + 240,198,0,198,0,204,0,108,0,127,240,31,240,24,0,17, + 16,48,19,1,0,0,1,128,0,3,0,0,6,0,0,12, + 0,0,24,0,0,48,0,0,96,0,0,192,0,1,128,0, + 3,0,0,6,0,0,12,0,0,24,0,0,48,0,0,127, + 255,128,255,255,128,16,18,36,18,1,0,255,255,192,3,192, + 2,96,6,96,4,48,12,48,8,48,24,24,16,24,48,12, + 32,12,32,6,96,6,64,3,192,3,192,1,128,1,128,16, + 17,34,18,1,0,7,224,30,120,56,28,96,6,111,230,198, + 115,198,51,198,115,199,227,198,195,198,99,198,51,111,62,96, + 6,56,28,30,120,7,224,16,17,34,18,1,0,7,224,30, + 120,56,28,96,6,99,230,198,99,204,35,204,3,204,3,204, + 3,204,3,206,51,103,230,99,198,56,28,30,120,7,224,20, + 10,30,22,1,7,255,96,112,153,96,96,24,112,224,24,112, + 224,24,89,96,24,89,96,24,78,96,24,78,96,24,70,96, + 60,230,240,17,21,63,19,1,253,255,255,128,48,6,0,48, + 6,0,48,6,0,48,6,0,48,6,0,48,6,0,48,6, + 0,48,6,0,48,6,0,48,6,0,48,6,0,48,6,0, + 48,6,0,48,6,0,48,6,0,48,6,0,48,6,0,48, + 6,0,48,6,0,252,31,128,14,19,38,14,0,0,0,12, + 0,12,0,8,0,8,0,24,48,24,112,16,216,16,24,16, + 12,48,12,48,6,32,6,32,3,32,3,96,1,192,1,192, + 0,192,0,192,2,2,2,6,2,6,192,192,15,8,16,17, + 1,0,255,254,255,254,0,6,0,6,0,6,0,6,0,6, + 0,6,13,12,24,15,1,0,7,0,7,0,13,128,13,128, + 24,192,24,192,48,96,48,96,96,48,96,48,192,24,192,24, + 13,12,24,15,1,0,192,24,192,24,96,48,96,48,48,96, + 48,96,24,192,24,192,13,128,13,128,7,0,7,0,23,12, + 36,25,1,0,6,0,192,12,0,96,24,0,48,63,255,248, + 127,255,252,224,0,14,224,0,14,127,255,252,63,255,248,24, + 0,48,12,0,96,6,0,192,23,12,36,25,1,0,6,0, + 0,12,0,0,24,0,0,63,255,254,127,255,254,224,0,0, + 224,0,0,127,255,254,63,255,254,24,0,0,12,0,0,6, + 0,0,12,19,38,14,1,0,6,0,15,0,31,128,57,192, + 121,224,217,176,25,128,25,128,25,128,25,128,25,128,25,128, + 25,128,25,128,25,128,25,128,25,128,25,128,25,128,23,12, + 36,25,1,0,0,0,192,0,0,96,0,0,48,255,255,248, + 255,255,252,0,0,14,0,0,14,255,255,252,255,255,248,0, + 0,48,0,0,96,0,0,192,12,19,38,14,1,0,25,128, + 25,128,25,128,25,128,25,128,25,128,25,128,25,128,25,128, + 25,128,25,128,25,128,25,128,217,176,121,224,57,192,31,128, + 15,0,6,0,10,18,36,12,1,0,12,0,30,0,30,0, + 51,0,51,0,97,128,97,128,192,192,192,192,192,192,192,192, + 97,128,97,128,51,0,51,0,30,0,30,0,12,0,7,22, + 22,8,0,251,6,6,12,12,24,24,48,48,96,96,192,192, + 96,96,48,48,24,24,12,12,6,6,16,17,34,18,1,0, + 7,224,30,120,56,28,96,6,103,230,198,51,198,51,198,51, + 199,227,198,99,198,51,198,51,102,50,96,6,56,28,30,120, + 7,224,16,17,34,18,1,0,7,224,30,120,56,28,96,6, + 99,198,198,99,204,35,204,3,200,3,200,3,204,3,204,35, + 102,102,99,198,56,28,30,120,7,224,18,10,30,20,1,7, + 254,192,192,24,192,192,24,225,192,24,225,192,24,243,192,24, + 210,192,24,222,192,24,204,192,24,204,192,24,204,192,14,20, + 40,18,2,254,255,248,224,24,112,8,56,0,28,0,14,0, + 7,0,3,128,1,192,0,192,1,128,3,0,6,0,12,0, + 24,0,48,0,96,4,192,12,255,252,255,252,9,24,48,10, + 1,251,1,128,3,0,6,0,12,0,24,0,24,0,48,0, + 48,0,96,0,96,0,96,0,96,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,2,24,24,10,1,251,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 9,24,48,10,1,251,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,96,0, + 96,0,96,0,96,0,48,0,48,0,24,0,24,0,12,0, + 6,0,3,0,1,128,7,24,24,10,1,251,254,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,2,24,24,10,1,251,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,7,24,24,10,1,251,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,254, + 7,24,24,12,5,251,30,48,96,96,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,5,24, + 24,12,2,251,24,24,24,24,24,24,24,24,16,48,96,192, + 96,48,16,24,24,24,24,24,24,24,24,24,7,24,24,12, + 5,251,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,96,96,48,30,2,24,24,12,5,251, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,255,7,22,22,8,1,251,192, + 192,96,96,48,48,24,24,12,12,6,6,12,12,24,24,48, + 48,96,96,192,192,8,24,24,8,0,251,7,15,27,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 216,240,224,8,24,24,17,8,251,14,27,51,32,96,64,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,2,24,24,17,8,251,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,8, + 24,24,17,2,251,3,3,3,3,3,3,3,3,3,3,3, + 3,3,3,3,3,3,3,3,2,6,204,216,112,9,24,48, + 10,0,251,192,0,96,0,48,0,24,0,12,0,12,0,6, + 0,6,0,3,0,3,0,3,0,3,0,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,2,24,24,10,7,251,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,9,24,48,10,0,251,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,3, + 0,3,0,3,0,3,0,6,0,6,0,12,0,12,0,24, + 0,48,0,96,0,192,0,7,24,24,10,2,251,254,6,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,2,24,24,10,7,251,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,7,24,24,10,2,251,6,6,6,6,6,6,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 254,7,24,24,12,0,251,240,24,12,12,6,6,6,6,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5, + 24,24,12,5,251,192,192,192,192,192,192,192,192,64,96,48, + 24,48,96,64,192,192,192,192,192,192,192,192,192,7,24,24, + 12,0,251,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,6,6,12,12,24,240,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--25-180-100-100-P-142-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=20 h=24 x=13 y=18 dx=22 dy= 0 ascent=19 len=51 + Font Bounding box w=27 h=24 x=-1 y=-5 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =19 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb18r[3303] U8G_SECTION(".progmem.u8g_font_symb18r") = { + 0,27,24,255,251,17,3,215,8,151,32,127,251,19,251,17, + 251,0,0,0,6,0,1,3,17,17,7,2,0,64,224,224, + 224,224,224,224,224,64,64,64,64,0,0,0,192,192,15,17, + 34,17,1,0,192,6,192,6,96,12,96,12,63,248,63,248, + 48,24,24,48,24,48,12,96,12,96,12,96,6,192,6,192, + 3,128,3,128,3,128,11,17,34,13,1,0,8,128,8,128, + 8,128,8,128,8,128,127,224,127,224,17,0,17,0,17,0, + 255,192,255,192,34,0,34,0,34,0,34,0,34,0,11,17, + 34,13,1,0,255,224,255,224,0,96,0,96,0,96,0,96, + 0,96,255,224,255,224,0,96,0,96,0,96,0,96,0,96, + 0,96,255,224,255,224,18,17,51,20,1,0,31,6,0,57, + 254,0,113,12,0,99,24,0,227,24,0,198,48,0,206,96, + 0,220,96,0,120,199,128,1,142,192,1,156,192,3,56,192, + 6,48,192,6,49,128,12,51,128,24,55,0,24,30,0,15, + 17,34,17,1,0,7,128,12,192,24,64,24,64,24,192,29, + 128,15,62,30,28,62,24,103,48,195,160,193,224,192,192,193, + 224,227,114,126,62,60,28,8,13,13,11,2,0,248,62,14, + 7,3,3,127,3,3,7,14,62,248,6,22,22,8,1,251, + 12,24,48,32,96,96,64,192,192,192,192,192,192,192,192,64, + 96,96,32,48,24,12,6,22,22,8,1,251,192,96,48,16, + 24,24,8,12,12,12,12,12,12,12,12,8,24,24,16,48, + 96,192,8,10,10,12,2,7,24,24,195,231,24,24,231,195, + 24,24,10,10,20,12,1,2,12,0,12,0,12,0,12,0, + 255,192,255,192,12,0,12,0,12,0,12,0,3,6,6,6, + 1,252,96,96,32,96,192,128,11,2,4,13,1,6,255,224, + 255,224,2,2,2,6,2,0,192,192,7,17,17,7,0,0, + 6,6,6,12,12,12,24,24,48,48,48,96,96,96,192,192, + 192,10,17,34,12,1,0,30,0,51,0,97,128,97,128,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,97,128,97,128,51,0,30,0,6,17,17,12,3,0,48, + 112,240,48,48,48,48,48,48,48,48,48,48,48,48,48,252, + 10,17,34,12,1,0,28,0,127,0,103,0,131,128,129,128, + 1,128,1,128,3,128,3,0,7,0,12,0,12,0,24,0, + 48,0,96,64,255,192,255,128,9,17,34,12,1,0,28,0, + 126,0,71,0,131,0,131,0,6,0,12,0,30,0,7,0, + 3,0,1,128,1,128,1,128,3,0,199,0,254,0,120,0, + 10,17,34,12,1,0,3,0,7,0,7,0,15,0,11,0, + 27,0,19,0,51,0,35,0,99,0,67,0,255,192,255,192, + 3,0,3,0,3,0,3,0,10,17,34,12,1,0,31,192, + 63,128,96,0,96,0,192,0,240,0,252,0,30,0,7,0, + 3,128,1,128,1,128,1,128,1,128,195,0,254,0,124,0, + 10,17,34,12,1,0,3,192,14,0,56,0,112,0,96,0, + 224,0,207,0,243,128,225,128,192,192,192,192,192,192,192,192, + 224,192,97,192,115,128,31,0,10,17,34,12,1,0,127,192, + 255,192,192,192,129,128,1,128,3,0,3,0,3,0,6,0, + 6,0,6,0,12,0,12,0,12,0,24,0,24,0,24,0, + 10,17,34,12,1,0,30,0,51,0,97,128,97,128,97,128, + 51,0,30,0,30,0,55,0,115,128,225,192,192,192,192,192, + 192,192,225,192,115,128,30,0,10,17,34,12,1,0,30,0, + 115,128,97,128,192,192,192,192,192,192,192,192,192,192,97,192, + 115,192,30,192,1,128,3,128,7,0,14,0,60,0,240,0, + 2,11,11,6,2,0,192,192,0,0,0,0,0,0,0,192, + 192,3,15,15,6,1,252,96,96,0,0,0,0,0,0,0, + 96,96,32,96,192,128,12,12,24,13,0,1,0,112,1,224, + 7,128,30,0,120,0,224,0,224,0,120,0,30,0,7,128, + 1,224,0,112,10,5,10,12,1,4,255,192,255,192,0,0, + 255,192,255,192,12,12,24,13,0,1,224,0,120,0,30,0, + 7,128,1,224,0,112,0,112,1,224,7,128,30,0,120,0, + 224,0,8,17,17,11,2,0,124,198,131,195,199,6,14,12, + 28,24,24,16,16,0,0,48,48,11,12,24,13,1,1,56, + 32,124,96,199,192,131,128,0,0,0,0,255,224,255,224,0, + 0,0,0,255,224,255,224,17,17,51,18,0,0,0,128,0, + 1,192,0,1,192,0,1,64,0,3,96,0,2,96,0,2, + 48,0,6,48,0,4,48,0,12,24,0,8,24,0,15,252, + 0,24,12,0,16,12,0,48,6,0,48,6,0,248,15,128, + 13,17,34,15,1,0,255,192,48,224,48,112,48,48,48,48, + 48,48,48,48,48,96,63,192,48,112,48,56,48,24,48,24, + 48,24,48,56,48,112,255,192,16,17,34,18,1,0,248,31, + 112,14,56,12,28,24,12,48,14,96,7,192,3,128,3,128, + 7,192,6,96,12,112,24,48,24,24,48,28,112,14,248,31, + 15,17,34,15,0,0,3,0,3,0,3,128,5,128,4,192, + 12,192,8,96,8,96,24,48,16,48,48,24,32,24,32,12, + 96,12,64,6,192,6,255,254,13,17,34,15,1,0,255,240, + 48,48,48,16,48,0,48,0,48,0,48,32,48,32,63,224, + 48,32,48,32,48,0,48,0,48,0,48,8,48,24,255,248, + 16,17,34,19,1,0,7,224,1,128,1,128,15,240,57,156, + 97,134,225,135,193,131,193,131,193,131,225,135,97,134,57,156, + 15,240,1,128,1,128,7,224,13,17,34,15,1,0,255,248, + 48,24,48,8,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,252,0, + 16,17,34,18,1,0,252,63,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,63,252,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,252,63,6,17,17,8,1,0,252,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,252,14, + 17,34,16,1,0,3,192,6,224,4,96,6,96,3,48,113, + 176,248,240,152,60,24,48,24,48,48,48,48,48,48,48,48, + 96,56,96,28,192,15,128,15,17,34,17,1,0,252,124,48, + 48,48,96,48,192,49,128,51,0,54,0,62,0,63,0,51, + 128,49,128,49,192,48,224,48,112,48,56,48,28,252,62,15, + 17,34,17,1,0,3,0,3,0,3,128,5,128,4,192,4, + 192,12,192,8,96,8,96,24,96,16,48,16,48,48,48,32, + 24,32,24,96,28,248,62,20,17,51,22,1,0,240,1,240, + 56,1,192,56,3,192,60,2,192,44,2,192,46,6,192,38, + 4,192,39,12,192,35,8,192,35,136,192,33,152,192,33,208, + 192,32,208,192,32,240,192,32,96,192,32,96,192,248,67,240, + 16,17,34,18,1,0,240,31,56,4,56,4,44,4,46,4, + 38,4,35,4,35,4,33,132,33,196,32,196,32,100,32,100, + 32,52,32,60,32,28,248,12,16,17,34,18,1,0,7,224, + 30,120,56,28,112,14,96,6,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,96,6,112,14,56,28,28,56,7,224, + 16,17,34,18,1,0,255,255,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,252,63,16,17,34,18,1,0,7,224, + 30,120,56,28,112,14,96,6,200,19,200,19,207,243,207,243, + 200,19,200,19,192,3,96,6,112,14,56,28,28,56,7,224, + 12,17,34,14,1,0,255,128,48,224,48,96,48,48,48,48, + 48,48,48,96,48,224,63,128,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,252,0,12,17,34,14,1,0,255,240, + 224,16,112,16,56,0,28,0,14,0,7,0,3,128,3,0, + 6,0,12,0,24,0,48,0,96,16,192,16,255,240,255,240, + 14,17,34,16,1,0,255,252,195,12,131,4,3,0,3,0, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,15,192,16,17,34,16,0,0,248,31, + 112,14,48,12,24,24,28,16,12,48,14,96,6,96,3,192, + 3,192,1,128,1,128,1,128,1,128,1,128,1,128,7,224, + 9,18,36,11,1,251,31,128,63,128,96,0,96,0,192,0, + 192,0,192,0,192,0,192,0,192,0,96,0,127,0,31,128, + 0,128,0,128,1,128,15,0,14,0,16,17,34,18,1,0, + 7,224,30,120,56,28,112,14,96,6,192,3,192,3,192,3, + 192,3,192,3,96,6,48,12,24,24,140,49,196,35,252,63, + 252,63,14,17,34,16,1,0,127,248,127,248,64,8,64,8, + 0,0,16,32,16,32,31,224,31,224,16,32,16,32,0,0, + 0,0,128,4,128,4,255,252,255,252,18,17,51,20,1,0, + 227,241,192,112,195,128,48,195,0,48,195,0,56,199,0,56, + 199,0,24,198,0,28,206,0,7,248,0,0,192,0,0,192, + 0,0,192,0,0,192,0,0,192,0,0,192,0,0,192,0, + 3,240,0,12,17,34,15,1,0,255,240,192,112,128,96,0, + 224,1,192,1,128,3,128,7,0,6,0,14,0,28,0,56, + 0,56,0,112,0,96,16,224,48,255,240,5,22,22,8,2, + 251,248,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,248,12,10,20,18,3,0,6,0,6, + 0,0,0,0,0,0,0,0,0,0,0,0,0,192,48,192, + 48,5,22,22,8,1,251,248,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,248,14,17,34, + 16,1,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,255,252,255,252,13,2,4,13,0,251,255,248,255,248,13, + 1,2,13,13,18,255,248,14,13,26,16,1,0,31,24,113, + 184,96,176,224,240,192,96,192,96,192,96,192,96,192,96,224, + 224,96,228,113,252,31,56,10,24,48,12,1,251,62,0,103, + 0,195,128,193,128,193,128,195,128,195,0,206,0,207,0,195, + 128,193,128,193,192,192,192,192,192,192,192,193,192,225,128,243, + 128,223,0,192,0,192,0,192,0,192,0,192,0,12,18,36, + 14,1,251,112,96,248,96,216,192,136,192,9,128,9,128,11, + 0,7,0,6,0,6,0,14,0,14,0,25,0,25,0,49, + 16,49,176,97,240,96,224,10,18,36,12,1,0,31,0,51, + 128,33,128,48,0,56,0,28,0,14,0,63,0,115,128,97, + 128,192,192,192,192,192,192,192,192,192,192,97,128,115,128,30, + 0,9,13,26,11,1,0,62,0,115,0,227,0,195,0,224, + 0,96,0,60,0,96,0,224,0,192,0,224,128,113,128,63, + 0,12,22,44,14,1,251,6,0,6,0,6,0,6,0,31, + 128,54,192,102,96,230,112,198,48,198,48,198,48,198,48,198, + 48,230,112,102,96,54,192,31,128,6,0,6,0,6,0,6, + 0,6,0,11,18,36,11,0,251,112,96,248,96,152,96,152, + 192,24,192,12,192,13,128,13,128,5,128,7,0,7,0,3, + 0,6,0,6,0,6,0,6,0,6,0,6,0,12,18,36, + 15,1,251,113,192,251,224,158,48,28,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,48,0,48,0, + 48,0,48,0,48,0,48,7,13,13,8,1,0,48,112,240, + 48,48,48,48,48,48,48,50,62,28,12,18,36,14,1,251, + 51,128,115,192,102,96,198,112,198,48,198,48,198,48,198,48, + 198,48,230,112,102,96,54,192,31,128,6,0,6,0,6,0, + 6,0,6,0,12,13,26,14,1,0,48,112,112,240,241,176, + 51,0,54,0,60,0,60,0,62,0,55,0,51,128,49,192, + 48,224,49,240,12,19,38,14,1,0,112,0,248,0,136,0, + 8,0,8,0,12,0,12,0,12,0,28,0,30,0,26,0, + 50,0,50,0,51,0,97,0,97,0,97,144,193,240,192,224, + 13,18,36,14,1,251,96,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,113,200,63,248,111,48, + 96,0,96,0,96,0,96,0,192,0,11,13,26,13,1,0, + 192,224,192,224,192,96,96,64,96,192,96,128,49,128,49,0, + 51,0,26,0,26,0,14,0,12,0,11,13,26,13,1,0, + 31,0,113,192,96,192,224,224,192,96,192,96,192,96,192,96, + 192,96,224,224,96,192,113,192,31,0,13,13,26,14,0,0, + 127,248,255,248,152,192,24,192,24,192,24,192,24,192,24,192, + 24,192,24,192,24,200,56,248,48,240,10,17,34,12,1,0, + 30,0,51,0,97,128,97,128,192,192,192,192,192,192,192,192, + 255,192,192,192,192,192,192,192,192,192,97,128,97,128,51,0, + 30,0,10,18,36,12,1,251,62,0,99,128,193,128,193,192, + 192,192,192,192,192,192,192,192,192,192,193,192,193,128,227,128, + 222,0,192,0,192,0,192,0,192,0,192,0,14,13,26,15, + 1,0,31,252,113,252,96,192,224,224,192,96,192,96,192,96, + 192,96,192,96,224,224,96,192,113,192,31,0,10,13,26,11, + 0,0,63,192,127,192,204,0,140,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,128,15,128,7,0,13,13,26,14, + 0,0,48,224,120,48,216,24,152,24,24,24,24,24,24,24, + 24,24,24,24,24,48,12,48,14,224,7,192,16,14,28,18, + 1,0,127,255,255,255,152,24,48,12,49,140,97,134,97,134, + 97,134,97,134,97,134,97,134,49,140,59,220,30,120,14,13, + 26,16,1,0,24,96,48,48,96,24,99,24,195,12,195,12, + 195,12,195,12,195,12,195,12,99,24,119,184,60,240,10,24, + 48,12,1,251,48,0,99,128,103,128,63,0,48,0,32,0, + 55,128,31,128,48,0,96,0,192,0,128,0,128,0,128,0, + 192,0,240,0,124,0,63,128,15,192,0,192,0,64,0,192, + 15,128,15,0,16,18,36,18,1,251,193,131,113,142,49,140, + 57,156,57,156,57,156,57,156,57,156,57,156,25,152,25,152, + 13,176,7,224,1,128,1,128,1,128,1,128,1,128,10,24, + 48,12,1,251,48,0,99,128,103,128,63,0,24,0,48,0, + 32,0,96,0,64,0,192,0,128,0,128,0,128,0,128,0, + 192,0,240,0,124,0,63,128,15,192,0,192,0,64,0,192, + 15,128,15,0,8,22,22,10,1,251,7,12,24,24,24,24, + 24,16,48,32,192,32,48,16,24,24,24,24,24,24,12,7, + 2,22,22,4,1,251,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,8,22,22,10, + 1,251,224,48,24,24,24,24,24,8,12,4,3,4,12,8, + 24,24,24,24,24,24,48,224,11,4,8,13,1,5,56,32, + 124,96,199,192,131,128,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--34-240-100-100-P-191-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 23, '1' Height: 23 + Calculated Max Values w=32 h=34 x=15 y=26 dx=34 dy= 0 ascent=27 len=108 + Font Bounding box w=40 h=34 x=-5 y=-7 + Calculated Min Values x=-5 y=-7 dx= 0 dy= 0 + Pure Font ascent =23 descent=-7 + X Font ascent =23 descent=-7 + Max Font ascent =27 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb24[10727] U8G_SECTION(".progmem.u8g_font_symb24") = { + 0,40,34,251,249,23,5,133,13,247,32,255,249,27,249,23, + 249,0,0,0,8,0,1,4,23,23,11,4,0,96,240,240, + 240,240,240,96,96,96,96,96,96,96,96,96,96,0,0,0, + 96,240,240,96,20,24,72,23,1,0,192,0,48,192,0,48, + 192,0,96,96,0,96,96,0,96,48,0,192,48,0,192,63, + 255,192,31,255,128,24,1,128,12,3,0,12,3,0,12,3, + 0,6,6,0,6,6,0,3,12,0,3,12,0,3,12,0, + 1,152,0,1,152,0,0,240,0,0,240,0,0,240,0,0, + 96,0,14,23,46,16,1,0,6,48,6,48,6,48,6,48, + 12,96,12,96,12,96,127,252,127,252,12,96,12,96,12,96, + 24,192,24,192,24,192,255,248,255,248,24,192,24,192,49,128, + 49,128,49,128,49,128,15,24,48,18,0,0,255,254,255,254, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,63,254,63,254,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,6,255,254,255,254,23,23,69,27, + 2,255,7,192,96,30,225,192,60,63,192,56,33,128,112,33, + 128,112,35,0,240,98,0,224,70,0,224,204,0,224,204,0, + 97,152,0,119,16,124,62,48,238,0,97,198,0,99,130,0, + 199,2,0,135,2,1,142,6,3,14,4,3,14,12,6,14, + 24,14,7,48,12,3,224,23,22,66,25,1,0,0,248,0, + 3,140,0,3,6,0,7,6,0,7,6,0,7,6,0,7, + 12,0,7,152,0,3,241,252,3,192,112,7,192,96,29,224, + 96,56,240,192,112,240,128,96,121,128,224,63,0,224,30,0, + 224,31,0,240,31,130,248,55,238,127,227,252,31,128,248,12, + 17,34,14,1,0,126,0,127,128,7,192,1,224,0,224,0, + 240,0,112,0,112,63,240,63,240,0,112,0,112,0,224,1, + 224,3,192,255,0,124,0,8,29,29,11,2,250,3,7,6, + 12,24,48,48,112,112,96,96,224,224,224,224,224,224,224,96, + 96,112,112,48,48,24,12,6,7,3,8,29,29,11,1,250, + 192,224,96,48,24,12,12,14,14,6,6,7,7,7,7,7, + 7,7,6,6,14,14,12,12,24,48,96,224,192,11,14,28, + 16,2,4,4,0,14,0,14,0,196,96,228,224,127,192,31, + 0,31,0,127,192,228,224,196,96,14,0,14,0,4,0,16, + 18,36,18,1,0,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,255,255,255,255,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,4,9,9,8,2,251,96, + 240,240,240,16,48,96,224,192,17,2,6,18,0,8,255,255, + 128,255,255,128,4,4,4,8,2,0,96,240,240,96,7,22, + 22,9,1,0,2,2,6,6,4,12,12,8,24,24,16,48, + 48,32,32,96,64,64,192,192,128,128,14,23,46,16,1,0, + 15,192,28,224,56,112,48,48,112,56,112,56,96,24,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 96,24,112,56,112,56,48,48,56,112,28,224,15,192,9,23, + 46,16,4,0,4,0,28,0,252,0,220,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,62,0, + 255,128,14,23,46,16,1,0,15,128,31,192,63,224,97,240, + 192,240,192,112,128,112,0,112,0,112,0,96,0,96,0,192, + 0,192,1,128,3,0,3,0,6,0,12,0,24,0,48,12, + 112,24,127,248,255,240,13,23,46,16,1,0,15,128,63,224, + 113,224,64,224,192,96,128,96,0,96,0,192,0,192,1,128, + 7,192,15,224,1,240,0,112,0,120,0,56,0,56,0,56, + 0,48,0,48,96,96,121,192,127,128,15,23,46,16,0,0, + 0,48,0,112,0,112,0,240,1,240,1,240,3,112,6,112, + 6,112,12,112,24,112,24,112,48,112,32,112,96,112,192,112, + 255,254,255,254,0,112,0,112,0,112,0,112,0,112,13,23, + 46,16,1,0,15,248,15,240,31,240,16,0,48,0,32,0, + 126,0,127,128,127,192,15,224,3,224,0,240,0,112,0,112, + 0,112,0,48,0,48,0,48,0,112,0,96,224,192,251,128, + 254,0,14,23,46,16,1,0,0,56,1,224,3,128,7,0, + 14,0,28,0,56,0,56,0,112,0,119,192,255,240,240,120, + 224,56,224,60,224,28,224,28,224,28,224,28,112,28,112,56, + 56,56,28,112,15,192,13,23,46,16,1,0,127,248,127,248, + 127,248,192,24,128,48,0,48,0,48,0,96,0,96,0,96, + 0,192,0,192,0,192,1,192,1,128,1,128,1,128,3,0, + 3,0,3,0,6,0,6,0,6,0,12,23,46,16,2,0, + 31,128,113,192,96,224,224,96,192,96,224,96,224,224,112,192, + 121,192,63,0,31,0,31,128,63,192,115,192,96,224,224,240, + 192,112,192,112,224,112,224,112,96,96,121,192,31,128,14,23, + 46,16,1,0,15,128,56,224,48,112,96,56,224,56,224,56, + 224,60,224,28,224,28,224,28,240,28,112,28,120,124,63,252, + 15,56,0,56,0,112,0,240,0,224,1,192,7,128,30,0, + 112,0,4,15,15,9,2,0,96,240,240,96,0,0,0,0, + 0,0,0,96,240,240,96,4,20,20,9,3,251,96,240,240, + 96,0,0,0,0,0,0,0,96,240,240,240,16,48,96,224, + 192,16,16,32,18,1,1,0,7,0,31,0,124,1,240,7, + 128,30,0,120,0,224,0,224,0,120,0,30,0,7,128,1, + 240,0,124,0,31,0,7,17,8,24,18,0,5,255,255,128, + 255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,128,255,255,128,16,16,32,18,1,1,224,0,248,0,62, + 0,15,128,1,224,0,120,0,30,0,7,0,7,0,30,0, + 120,1,224,15,128,62,0,248,0,224,0,11,23,46,14,2, + 0,63,0,99,128,193,192,192,224,192,224,224,224,192,224,1, + 224,1,192,1,128,3,128,3,0,6,0,6,0,4,0,4, + 0,4,0,0,0,0,0,12,0,30,0,30,0,12,0,17, + 16,48,18,0,0,30,1,0,63,195,128,96,255,0,64,28, + 0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,128, + 255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,128,255,255,128,21,23,69,23,0,0,0,32,0,0,112, + 0,0,112,0,0,112,0,0,248,0,0,248,0,0,188,0, + 1,188,0,1,156,0,3,30,0,3,14,0,2,15,0,6, + 15,0,6,7,0,12,7,128,15,255,128,8,3,128,24,3, + 192,24,1,192,48,1,224,48,1,224,112,1,240,252,7,248, + 18,23,69,22,1,0,255,224,0,63,254,0,28,31,0,28, + 7,0,28,7,128,28,7,128,28,7,128,28,7,128,28,7, + 0,28,15,0,28,62,0,31,248,0,28,31,0,28,7,128, + 28,3,128,28,3,192,28,3,192,28,3,192,28,3,192,28, + 7,128,28,15,128,63,255,0,255,248,0,22,23,69,23,0, + 0,255,195,252,63,0,224,31,0,192,15,1,192,7,129,128, + 7,195,0,3,198,0,1,230,0,1,236,0,0,248,0,0, + 120,0,0,120,0,0,124,0,0,222,0,1,158,0,1,143, + 0,3,15,128,6,7,128,14,3,192,12,3,224,24,1,224, + 56,1,240,254,7,252,19,22,66,20,0,0,0,96,0,0, + 96,0,0,240,0,0,240,0,0,240,0,1,248,0,1,56, + 0,3,60,0,2,60,0,6,28,0,4,30,0,12,14,0, + 12,15,0,8,15,0,24,7,0,16,7,128,48,3,128,32, + 3,192,96,3,192,64,1,192,255,255,224,255,255,224,18,23, + 69,20,1,0,255,255,128,63,255,128,28,3,128,28,1,128, + 28,1,128,28,0,0,28,0,0,28,2,0,28,2,0,28, + 2,0,28,14,0,31,254,0,28,6,0,28,2,0,28,2, + 0,28,0,0,28,0,0,28,0,64,28,0,64,28,0,192, + 28,1,192,63,255,128,255,255,128,23,23,69,25,1,0,1, + 255,0,0,124,0,0,56,0,0,56,0,7,255,192,31,57, + 240,60,56,120,120,56,60,120,56,60,240,56,30,240,56,30, + 240,56,30,240,56,30,240,56,30,120,56,28,120,56,60,60, + 56,120,31,57,240,7,255,192,0,56,0,0,56,0,0,124, + 0,1,255,0,18,23,69,20,1,0,255,255,128,63,255,192, + 60,1,192,28,0,192,28,0,64,28,0,64,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,62,0,0,255,128,0,22, + 23,69,24,1,0,255,135,252,62,1,240,28,0,224,28,0, + 224,28,0,224,28,0,224,28,0,224,28,0,224,28,0,224, + 28,0,224,28,0,224,31,255,224,28,0,224,28,0,224,28, + 0,224,28,0,224,28,0,224,28,0,224,28,0,224,28,0, + 224,28,0,224,62,1,240,255,135,252,9,23,46,11,1,0, + 255,128,62,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,62,0,255,128,20,23, + 69,20,0,0,0,120,0,0,220,0,0,134,0,0,135,0, + 0,131,0,0,195,128,0,67,128,28,99,128,62,57,128,126, + 29,128,199,7,128,199,1,224,6,1,176,14,1,128,14,1, + 128,14,1,128,14,3,128,14,3,0,14,3,0,14,7,0, + 7,6,0,3,156,0,1,248,0,22,23,69,23,1,0,255, + 143,240,62,3,192,28,3,128,28,3,0,28,6,0,28,12, + 0,28,24,0,28,48,0,28,96,0,29,192,0,31,224,0, + 31,224,0,30,240,0,28,120,0,28,124,0,28,62,0,28, + 31,0,28,15,128,28,7,128,28,3,192,28,1,224,62,1, + 240,255,143,252,21,22,66,22,0,0,0,32,0,0,48,0, + 0,112,0,0,112,0,0,248,0,0,248,0,0,188,0,1, + 188,0,1,156,0,1,30,0,3,14,0,3,15,0,2,15, + 0,6,7,0,6,7,128,12,3,128,12,3,192,8,3,192, + 24,1,192,24,1,224,56,1,240,254,7,248,27,23,92,29, + 1,0,254,0,15,224,30,0,15,128,31,0,15,0,31,0, + 31,0,31,0,31,0,31,128,55,0,27,128,55,0,27,192, + 39,0,27,192,103,0,25,224,103,0,25,224,199,0,24,224, + 199,0,24,240,135,0,24,113,135,0,24,121,135,0,24,123, + 7,0,24,63,7,0,24,63,7,0,24,30,7,0,24,30, + 7,0,24,12,7,0,56,12,15,128,255,12,63,224,22,23, + 69,23,1,0,252,3,252,62,0,96,30,0,96,31,0,96, + 31,128,96,31,192,96,27,192,96,25,224,96,25,240,96,24, + 240,96,24,120,96,24,60,96,24,60,96,24,30,96,24,15, + 96,24,15,224,24,7,224,24,3,224,24,1,224,24,1,224, + 24,0,224,56,0,96,255,0,32,22,23,69,23,1,0,1, + 254,0,7,135,128,14,1,192,28,0,224,60,0,240,120,0, + 112,120,0,120,112,0,56,240,0,60,240,0,60,240,0,60, + 240,0,60,240,0,60,240,0,60,240,0,60,112,0,56,120, + 0,120,56,0,112,60,0,240,28,0,224,14,1,192,7,207, + 128,1,254,0,23,23,69,25,1,0,255,255,254,63,255,248, + 28,0,112,28,0,112,28,0,112,28,0,112,28,0,112,28, + 0,112,28,0,112,28,0,112,28,0,112,28,0,112,28,0, + 112,28,0,112,28,0,112,28,0,112,28,0,112,28,0,112, + 28,0,112,28,0,112,28,0,112,62,0,248,255,131,254,22, + 23,69,24,1,0,1,254,0,7,135,128,14,1,192,28,0, + 224,60,0,240,56,0,112,120,0,120,112,0,56,112,0,56, + 242,1,60,243,3,60,243,255,60,243,255,60,243,3,60,242, + 1,60,112,0,56,112,0,56,120,0,120,56,0,112,28,0, + 224,14,1,192,7,135,128,1,254,0,17,23,69,18,1,0, + 255,240,0,63,254,0,28,15,0,28,7,128,28,7,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,7,128,28,7, + 0,30,62,0,31,252,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,62, + 0,0,255,128,0,18,23,69,19,1,0,255,255,0,255,255, + 0,120,3,0,60,1,0,62,1,128,30,0,0,15,0,0, + 7,128,0,7,192,0,3,192,0,1,224,0,0,192,0,1, + 192,0,1,128,0,3,0,0,6,0,0,12,0,64,28,0, + 192,24,0,128,48,1,128,127,255,128,255,255,128,255,255,128, + 19,23,69,20,1,0,255,255,224,248,227,224,192,224,224,192, + 224,96,128,224,32,128,224,32,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,1,240,0,7,252,0,23,23,69,23,0, + 0,255,193,254,62,0,112,31,0,96,15,0,224,15,128,192, + 7,129,128,3,193,128,3,227,0,1,227,0,0,246,0,0, + 252,0,0,124,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,124,0,1,255,0,13,24,48,14,1,249,3,224,15,240, + 31,240,48,0,96,0,64,0,192,0,192,0,128,0,128,0, + 128,0,192,0,192,0,240,0,127,240,63,240,31,248,0,24, + 0,8,0,8,0,24,7,240,7,240,7,192,23,23,69,25, + 1,0,0,254,0,3,131,128,14,0,224,30,0,240,28,0, + 112,60,0,120,56,0,56,120,0,60,120,0,60,120,0,60, + 120,0,60,120,0,60,120,0,60,56,0,56,60,0,120,28, + 0,112,14,0,224,7,1,192,129,131,2,192,130,6,255,199, + 254,255,199,254,255,199,254,19,23,69,21,1,0,127,255,192, + 127,255,192,127,255,192,96,0,192,64,0,64,0,0,0,0, + 0,0,0,0,0,8,2,0,12,6,0,15,254,0,15,254, + 0,15,254,0,8,2,0,8,2,0,0,0,0,0,0,0, + 192,0,96,192,0,96,64,0,64,127,255,192,127,255,192,127, + 255,192,25,23,92,26,0,0,224,255,131,128,112,62,7,0, + 56,28,14,0,56,28,14,0,60,28,30,0,60,28,30,0, + 60,28,30,0,60,28,30,0,60,28,30,0,28,28,28,0, + 30,28,60,0,15,156,248,0,3,255,224,0,0,28,0,0, + 0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0, + 0,28,0,0,0,28,0,0,0,28,0,0,0,62,0,0, + 0,255,128,0,19,23,69,20,1,0,127,255,192,120,3,192, + 96,7,128,96,15,0,64,15,0,64,30,0,0,62,0,0, + 60,0,0,120,0,0,248,0,0,240,0,1,224,0,1,224, + 0,3,192,0,7,192,0,7,128,0,15,0,0,31,0,32, + 30,0,32,62,0,96,60,0,224,120,3,192,255,255,192,7, + 28,28,11,3,251,254,224,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,224, + 254,17,16,48,28,5,0,1,224,0,1,224,0,1,224,0, + 1,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,240,7,128,240,7, + 128,240,7,128,240,7,128,7,28,28,11,1,251,254,14,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,6,6,14,254,20,23,69,21,1,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,96,0,0,96,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,96,0,255,255, + 240,255,255,240,16,2,4,16,0,249,255,255,255,255,20,1, + 3,17,15,26,255,255,240,19,17,51,20,1,0,15,193,128, + 28,225,128,56,51,128,112,19,128,112,23,0,240,31,0,224, + 15,0,224,14,0,224,14,0,224,14,0,224,28,0,240,30, + 0,240,30,32,112,58,32,120,115,224,60,225,192,15,193,192, + 14,32,64,18,2,249,15,128,25,224,48,224,112,112,96,112, + 96,112,96,112,96,112,96,112,96,96,103,192,103,224,96,112, + 96,56,96,56,96,60,96,28,96,28,96,28,96,28,96,28, + 96,56,120,120,111,240,99,192,96,0,96,0,96,0,96,0, + 224,0,224,0,224,0,17,25,75,18,0,249,24,0,0,60, + 14,0,126,14,0,70,30,0,194,28,0,195,60,0,3,56, + 0,1,112,0,1,112,0,1,224,0,1,224,0,1,192,0, + 3,192,0,3,128,0,7,192,0,7,192,0,15,64,0,14, + 64,0,30,96,0,28,97,128,60,97,128,56,51,0,120,63, + 0,112,62,0,112,30,0,14,25,50,16,1,0,15,128,31, + 224,48,240,32,120,48,48,56,0,28,0,14,0,7,128,3, + 192,7,240,28,240,56,120,112,56,240,60,224,28,224,28,224, + 28,224,28,240,28,240,56,112,56,120,112,31,224,7,128,12, + 18,36,14,1,255,31,128,57,224,112,224,224,224,224,64,224, + 0,112,0,120,0,31,128,120,0,240,0,224,0,224,0,224, + 16,240,48,120,48,63,224,15,128,15,30,60,17,1,249,1, + 0,1,0,1,0,1,0,1,0,1,0,15,192,29,112,57, + 56,113,28,113,28,225,30,225,14,225,14,225,14,225,14,225, + 14,241,14,113,12,113,28,57,24,29,112,7,224,1,0,1, + 0,1,0,1,0,1,0,1,0,1,0,15,24,48,13,254, + 249,56,14,124,14,124,14,198,28,134,28,130,28,3,56,3, + 56,1,48,1,48,1,96,1,224,1,192,0,192,0,192,1, + 128,1,192,1,192,3,192,3,192,3,192,3,192,3,128,1, + 128,17,24,72,20,0,249,24,56,0,124,254,0,223,222,0, + 207,15,0,143,7,0,14,7,0,14,7,0,14,7,0,14, + 7,0,14,7,0,14,7,0,14,7,0,14,7,0,14,7, + 0,14,7,0,14,7,0,14,7,0,0,7,0,0,7,0, + 0,7,0,0,7,0,0,7,0,0,3,0,0,3,128,10, + 17,34,11,0,0,4,0,124,0,252,0,60,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 64,28,192,15,192,15,0,18,24,72,20,1,249,6,60,0, + 30,126,0,56,255,0,112,199,128,112,195,128,240,195,192,224, + 193,192,224,193,192,224,193,192,224,193,192,240,193,192,240,193, + 128,112,195,128,120,195,0,56,199,0,30,220,0,7,248,0, + 0,192,0,0,192,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,17,17,51,18,1,0,8,7,0,248,31, + 128,248,63,128,56,99,0,24,192,0,25,128,0,27,0,0, + 31,128,0,31,128,0,27,192,0,25,224,0,24,240,0,24, + 240,0,24,120,0,24,60,0,24,62,0,24,127,128,17,25, + 75,18,1,0,56,0,0,124,0,0,126,0,0,198,0,0, + 195,0,0,131,0,0,1,0,0,1,0,0,1,128,0,3, + 128,0,3,128,0,7,128,0,7,192,0,15,192,0,14,192, + 0,30,64,0,28,96,0,28,96,0,56,96,0,56,96,128, + 112,48,128,112,57,128,224,63,0,224,31,0,224,14,0,17, + 24,72,19,1,249,112,56,0,112,56,0,112,56,0,112,56, + 0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0, + 112,56,0,112,56,0,112,56,0,112,120,0,120,120,128,127, + 253,128,127,159,128,110,30,0,96,0,0,96,0,0,96,0, + 0,224,0,0,224,0,0,224,0,0,96,0,0,16,17,34, + 17,255,0,24,6,248,7,60,7,28,7,28,7,30,6,14, + 6,14,12,7,12,7,24,7,152,3,176,3,160,1,224,1, + 192,1,192,0,128,15,17,34,18,1,0,7,192,28,112,48, + 56,112,60,112,28,224,30,224,14,224,14,224,14,224,14,224, + 14,240,14,112,28,120,28,56,56,30,112,15,224,17,17,51, + 18,0,0,15,255,128,63,255,128,63,255,128,102,56,0,198, + 56,0,6,48,0,6,48,0,6,48,0,6,48,0,6,48, + 0,4,48,0,12,48,0,12,48,128,28,57,128,60,63,0, + 60,31,0,56,30,0,14,23,46,17,1,0,7,128,28,224, + 24,112,48,48,112,56,112,56,240,60,224,28,224,28,224,28, + 224,28,255,252,255,252,224,28,224,28,224,28,224,28,112,56, + 112,56,112,56,56,112,28,224,15,192,14,25,50,18,2,249, + 7,192,31,224,48,240,96,120,96,120,224,60,224,60,224,28, + 224,28,224,28,224,28,224,24,224,24,224,56,240,112,248,224, + 239,192,231,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,18,18,54,20,1,0,3,255,192,15,255,192,63,255, + 192,124,48,0,120,24,0,240,28,0,240,14,0,224,15,0, + 224,7,0,224,7,0,240,7,0,112,7,0,112,15,0,56, + 14,0,60,30,0,30,56,0,7,240,0,1,192,0,14,17, + 34,14,0,0,15,252,63,252,63,252,99,128,195,128,195,128, + 3,0,3,0,3,0,3,0,3,0,3,8,3,136,3,152, + 3,248,1,240,1,224,17,18,54,19,0,0,0,16,0,60, + 24,0,124,28,0,252,6,0,206,7,0,142,3,0,14,3, + 0,14,3,128,14,3,128,14,3,128,14,3,128,14,3,128, + 14,3,0,14,7,0,7,7,0,7,14,0,3,156,0,1, + 248,0,21,19,57,23,0,0,31,255,248,63,255,248,127,255, + 248,231,131,128,222,0,192,60,0,224,56,56,112,120,56,112, + 120,56,56,120,56,56,112,56,56,112,56,56,112,56,56,112, + 16,56,120,16,56,120,56,112,56,40,112,28,236,224,15,135, + 192,20,17,51,22,1,0,15,14,0,28,7,128,56,1,192, + 112,97,224,112,224,224,224,224,240,224,224,240,224,224,112,224, + 224,112,224,224,112,224,224,112,224,64,112,224,224,240,112,224, + 224,113,177,224,63,31,192,30,15,0,14,33,66,16,1,249, + 48,0,96,192,99,224,103,192,63,128,24,0,48,0,32,0, + 32,0,48,0,49,240,31,240,31,224,48,0,96,0,64,0, + 192,0,128,0,128,0,128,0,192,0,192,0,248,0,127,240, + 63,252,31,252,0,12,0,4,0,4,0,12,3,248,3,248, + 1,224,22,24,72,22,0,249,240,48,60,120,48,120,60,48, + 240,28,48,224,28,48,224,28,48,224,28,48,224,28,48,224, + 30,48,224,30,49,224,30,49,224,14,49,192,14,49,192,6, + 49,192,7,51,128,3,183,0,1,254,0,0,48,0,0,48, + 0,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 13,32,64,16,2,249,24,0,56,112,48,240,51,224,63,192, + 14,0,12,0,24,0,16,0,48,0,32,0,96,0,64,0, + 64,0,192,0,192,0,192,0,192,0,192,0,224,0,96,0, + 127,192,63,240,31,248,15,248,0,24,0,8,0,8,0,24, + 3,248,7,240,3,224,11,29,58,16,2,250,7,224,14,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,28,0,28,0,112,0,192,0,112,0,28,0,28,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,14,0,7,224,2,28,28,7,2,250,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,11,29,58,16,2,250,252,0, + 14,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,7,0,7,0,1,192,0,96,1,192,7,0, + 7,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,14,0,252,0,15,4,8,18,1,7,24,0, + 127,134,227,254,192,56,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,20,23,69,20,0,0,240,1, + 192,124,7,224,15,12,112,7,12,240,3,152,224,1,208,224, + 1,208,0,1,240,0,1,240,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,1,240,0, + 7,252,0,6,9,9,8,1,16,24,60,60,120,112,96,224, + 192,128,16,21,42,18,1,0,0,7,0,31,0,124,1,240, + 7,192,30,0,120,0,224,0,224,0,120,0,30,0,7,128, + 1,224,0,120,0,30,0,7,0,1,0,0,0,0,255,255, + 255,255,15,23,46,6,251,0,0,2,0,6,0,12,0,12, + 0,24,0,48,0,48,0,96,0,192,0,192,1,128,3,0, + 3,0,6,0,12,0,12,0,24,0,48,0,48,0,96,0, + 192,0,192,0,128,0,21,10,30,23,1,4,28,3,192,127, + 15,224,99,158,48,193,248,24,192,240,24,192,240,24,192,248, + 24,99,156,48,127,15,240,28,3,192,16,29,58,16,0,250, + 0,30,0,51,0,103,0,98,0,224,0,224,0,192,0,192, + 0,192,15,252,1,192,1,192,1,192,1,192,1,128,1,128, + 1,128,3,128,3,128,3,128,3,0,3,0,3,0,3,0, + 2,0,102,0,230,0,236,0,120,0,18,18,54,24,3,0, + 1,224,0,3,240,0,7,248,0,7,248,0,7,248,0,7, + 248,0,3,240,0,1,224,0,124,207,128,255,255,192,255,255, + 192,255,255,192,255,255,192,255,255,192,252,207,192,120,199,128, + 0,192,0,1,224,0,14,18,36,24,5,0,3,0,7,128, + 7,192,15,192,31,224,63,240,127,248,127,248,255,252,255,252, + 127,248,127,248,63,240,31,224,15,192,7,192,7,128,3,0, + 16,18,36,24,4,0,124,62,254,127,254,127,255,255,255,255, + 255,255,255,255,127,254,127,254,63,252,63,252,31,248,15,240, + 15,240,7,224,3,192,1,128,1,128,16,18,36,24,4,0, + 1,128,1,192,3,192,7,224,7,240,15,240,31,248,63,252, + 63,252,127,254,255,255,255,255,255,255,253,191,249,159,249,159, + 113,142,3,192,32,16,64,34,1,0,1,128,1,128,3,0, + 0,192,7,0,0,224,14,0,0,112,28,0,0,56,56,0, + 0,28,112,0,0,14,255,255,255,255,255,255,255,255,112,0, + 0,14,56,0,0,28,28,0,0,56,14,0,0,112,7,0, + 0,224,3,0,0,192,1,128,1,128,29,16,64,32,1,0, + 1,128,0,0,3,0,0,0,6,0,0,0,14,0,0,0, + 28,0,0,0,56,0,0,0,112,0,0,0,255,255,255,248, + 255,255,255,248,112,0,0,0,56,0,0,0,28,0,0,0, + 14,0,0,0,6,0,0,0,3,0,0,0,1,128,0,0, + 16,27,54,20,2,0,1,128,3,192,7,224,15,240,29,184, + 57,156,113,142,225,135,193,131,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,29,16,64,32, + 2,0,0,0,12,0,0,0,14,0,0,0,7,0,0,0, + 3,128,0,0,1,192,0,0,0,224,0,0,0,112,255,255, + 255,248,255,255,255,248,0,0,0,112,0,0,0,224,0,0, + 1,192,0,0,3,128,0,0,7,0,0,0,14,0,0,0, + 12,0,16,27,54,20,2,0,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,193,131,225,135, + 113,142,57,156,29,184,15,240,7,224,3,192,1,128,9,10, + 20,13,2,13,28,0,99,0,65,0,128,128,128,128,128,128, + 128,128,65,0,99,0,28,0,16,22,44,18,1,0,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,255,255, + 255,255,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,0,0,0,0,255,255,255,255,12,9,18,13,1,15, + 28,112,28,112,60,240,56,224,113,192,113,192,227,128,195,0, + 130,0,16,21,42,18,1,0,224,0,248,0,62,0,15,128, + 1,224,0,120,0,30,0,7,0,7,0,30,0,120,1,224, + 7,128,30,0,120,0,224,0,128,0,0,0,0,0,255,255, + 255,255,16,16,32,18,1,1,192,3,224,7,112,14,56,28, + 28,56,14,112,7,224,3,192,3,192,7,224,14,112,28,56, + 56,28,112,14,224,7,192,3,19,10,30,23,1,4,28,3, + 192,63,15,224,99,156,0,193,248,0,192,240,0,192,240,0, + 193,248,0,99,156,0,127,15,224,28,3,192,14,27,54,16, + 1,0,30,0,63,128,32,224,0,112,0,48,0,24,0,24, + 0,24,0,28,0,28,0,28,15,28,31,252,56,124,120,60, + 112,60,240,56,224,56,224,56,224,56,224,112,224,112,96,96, + 112,224,57,192,31,128,15,0,11,12,24,15,2,4,14,0, + 63,128,127,192,127,192,255,224,255,224,255,224,255,224,127,192, + 127,192,63,128,14,0,16,13,26,18,1,2,1,128,3,192, + 3,192,1,128,0,0,255,255,255,255,0,0,0,0,1,128, + 3,192,3,192,1,128,17,19,57,18,1,255,0,12,0,0, + 24,0,0,24,0,0,48,0,0,48,0,255,255,128,255,255, + 128,0,192,0,0,192,0,1,128,0,1,128,0,3,0,0, + 255,255,128,255,255,128,6,0,0,12,0,0,12,0,0,24, + 0,0,24,0,0,17,12,36,18,0,3,255,255,128,255,255, + 128,0,0,0,0,0,0,0,0,0,255,255,128,255,255,128, + 0,0,0,0,0,0,0,0,0,255,255,128,255,255,128,16, + 9,18,18,1,4,28,0,127,135,225,254,64,56,0,0,28, + 0,127,135,225,254,192,56,26,4,16,33,3,0,96,12,1, + 128,240,30,3,192,240,30,3,192,96,12,1,128,2,34,34, + 20,9,249,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,32,2,8,32,0,7,255,255,255,255,255, + 255,255,255,18,21,63,21,1,0,0,0,192,0,0,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,0,192,0,0,192,0,0,192,0,0,192, + 0,0,192,0,0,192,16,0,192,112,0,192,255,255,192,255, + 255,192,112,0,0,16,0,0,16,22,44,27,5,0,0,32, + 96,96,240,126,240,127,248,127,124,63,60,15,62,12,31,24, + 31,152,55,240,115,240,97,240,225,240,240,248,240,124,120,62, + 124,30,124,31,60,15,124,7,252,6,18,27,81,22,1,254, + 7,240,0,31,254,0,63,255,128,56,63,128,96,7,0,96, + 7,0,64,6,0,64,12,0,64,12,0,96,28,0,48,28, + 0,28,14,0,14,14,0,0,15,0,0,7,0,0,7,128, + 0,3,128,0,3,192,0,1,192,0,1,192,0,1,192,60, + 1,128,255,1,128,159,195,0,7,254,0,3,248,0,0,240, + 0,23,24,72,26,1,0,15,128,192,63,225,240,97,247,248, + 192,252,124,128,120,62,128,120,28,128,56,56,192,56,112,224, + 56,192,120,57,192,62,59,192,14,57,224,6,56,224,6,56, + 224,0,56,240,0,56,240,0,56,112,0,112,112,0,112,112, + 0,96,120,30,192,122,63,128,62,47,128,60,6,0,16,23, + 26,78,32,5,249,0,192,0,1,192,0,3,0,112,6,3, + 252,6,14,30,12,24,30,28,48,14,24,96,14,56,192,30, + 57,128,30,59,0,30,62,0,28,62,48,60,60,120,56,30, + 112,120,62,64,240,47,65,224,111,99,192,71,63,0,199,0, + 0,135,0,0,131,0,0,131,0,0,199,0,0,102,0,0, + 60,0,0,22,23,69,25,1,0,0,252,0,3,255,0,15, + 3,192,28,0,224,56,0,112,50,1,48,103,3,152,99,135, + 24,193,134,8,192,204,12,192,120,12,192,48,12,192,120,12, + 192,204,12,193,134,12,99,135,24,103,3,152,50,1,48,56, + 0,112,28,0,224,15,3,192,3,255,0,0,252,0,22,23, + 69,25,1,0,0,252,0,3,255,0,15,3,192,28,48,224, + 24,48,96,48,48,48,96,48,24,96,48,24,96,48,24,192, + 48,12,192,48,12,223,255,236,223,255,236,192,48,12,192,48, + 12,96,48,24,96,48,24,48,48,48,56,48,112,28,48,224, + 15,3,192,3,255,0,0,252,0,24,24,72,27,1,0,0, + 126,2,3,255,198,7,129,238,14,0,124,24,0,56,48,0, + 124,112,0,238,96,1,198,96,3,134,192,7,3,192,14,3, + 192,28,3,192,56,3,192,112,3,192,224,3,97,192,6,99, + 128,6,119,0,14,62,0,12,28,0,24,62,0,112,119,129, + 224,227,255,192,192,126,0,22,17,51,25,1,0,0,252,0, + 3,255,0,15,3,192,28,0,224,56,0,112,48,0,48,96, + 0,24,96,0,24,192,0,12,192,0,12,192,0,12,192,0, + 12,192,0,12,192,0,12,192,0,12,192,0,12,192,0,12, + 22,17,51,25,1,0,192,0,12,192,0,12,192,0,12,192, + 0,12,192,0,12,192,0,12,192,0,12,192,0,12,192,0, + 12,96,0,24,96,0,24,48,0,48,56,0,112,28,0,224, + 15,3,192,3,255,0,0,252,0,21,16,48,23,1,0,255, + 255,0,255,255,192,0,1,224,0,0,112,0,0,48,0,0, + 56,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24, + 0,0,48,0,0,112,0,0,224,255,255,192,255,255,0,21, + 20,60,23,1,252,255,255,0,255,255,192,0,0,224,0,0, + 112,0,0,48,0,0,24,0,0,24,0,0,24,0,0,24, + 0,0,24,0,0,24,0,0,48,0,0,112,0,0,224,255, + 255,192,255,255,0,0,0,0,0,0,0,255,255,240,255,255, + 240,21,20,60,23,1,254,0,0,96,0,0,192,7,255,248, + 15,255,248,56,1,128,112,3,0,96,3,0,224,6,0,192, + 6,0,192,12,0,192,12,0,192,24,0,224,24,0,96,48, + 0,112,48,0,60,96,0,31,255,248,7,255,248,0,192,0, + 1,128,0,21,16,48,23,1,0,7,255,248,31,255,248,56, + 0,0,112,0,0,96,0,0,192,0,0,192,0,0,192,0, + 0,192,0,0,192,0,0,224,0,0,96,0,0,112,0,0, + 60,0,0,31,255,248,7,255,248,21,20,60,23,1,252,7, + 255,248,31,255,248,56,0,0,112,0,0,96,0,0,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,0,192,0,0, + 96,0,0,112,0,0,56,0,0,31,255,248,7,255,248,0, + 0,0,0,0,0,127,255,248,127,255,248,15,16,32,23,1, + 0,7,254,31,254,56,0,112,0,96,0,192,0,192,0,255, + 254,255,254,192,0,192,0,96,0,112,0,56,0,31,254,7, + 254,15,20,40,23,1,254,0,24,0,24,7,254,31,254,56, + 96,112,96,96,192,64,192,193,128,255,254,255,254,195,0,70, + 0,110,0,124,0,60,0,31,254,55,254,48,0,32,0,22, + 22,66,25,1,0,0,0,12,0,0,28,0,0,56,0,0, + 112,0,0,224,0,1,192,0,3,128,0,7,0,0,14,0, + 0,28,0,0,56,0,0,112,0,0,96,0,0,192,0,1, + 128,0,3,0,0,7,0,0,14,0,0,28,0,0,56,0, + 0,127,255,248,255,255,248,20,24,72,23,1,0,255,255,240, + 127,255,240,120,0,48,120,0,32,60,0,96,60,0,64,28, + 0,192,30,0,192,30,1,128,15,1,128,15,1,0,7,3, + 0,7,130,0,7,134,0,3,196,0,3,204,0,3,204,0, + 1,248,0,1,248,0,0,240,0,0,240,0,0,224,0,0, + 96,0,0,64,0,21,22,66,25,2,0,1,252,0,7,7, + 0,12,1,192,24,0,192,51,248,96,97,142,48,65,134,16, + 193,134,24,193,134,24,129,140,8,129,248,8,129,184,8,129, + 152,8,193,156,24,193,142,24,65,135,16,103,195,176,48,0, + 96,24,0,192,28,1,192,7,7,0,1,252,0,21,23,69, + 25,2,0,1,252,0,7,207,0,14,1,128,24,0,192,48, + 0,96,48,0,48,96,125,48,65,199,16,195,3,24,195,1, + 24,134,0,8,134,0,8,134,0,8,134,0,8,134,0,8, + 199,0,24,67,3,24,97,199,16,32,252,48,48,0,96,28, + 0,192,7,135,128,1,254,0,27,13,52,29,1,10,255,220, + 1,224,204,206,3,128,140,78,3,128,12,15,7,128,12,11, + 5,128,12,11,141,128,12,9,141,128,12,9,201,128,12,8, + 217,128,12,8,241,128,12,8,113,128,12,8,97,128,62,30, + 39,224,25,27,108,27,1,0,255,255,255,128,63,255,254,0, + 30,0,60,0,30,0,60,0,30,0,60,0,30,0,60,0, + 30,0,60,0,30,0,60,0,30,0,60,0,30,0,60,0, + 30,0,60,0,30,0,60,0,30,0,60,0,30,0,60,0, + 30,0,60,0,30,0,60,0,30,0,60,0,30,0,60,0, + 30,0,60,0,30,0,60,0,30,0,60,0,30,0,60,0, + 30,0,60,0,30,0,60,0,30,0,60,0,63,0,126,0, + 255,193,255,128,17,27,81,18,0,0,0,0,128,0,0,128, + 0,0,128,0,0,128,0,1,128,0,1,0,0,1,0,0, + 3,0,0,2,0,8,2,0,56,2,0,236,6,0,12,4, + 0,6,4,0,6,4,0,3,4,0,3,12,0,1,140,0, + 1,136,0,0,200,0,0,200,0,0,104,0,0,120,0,0, + 56,0,0,48,0,0,16,0,0,16,0,3,3,3,8,2, + 7,224,224,224,21,10,30,23,1,0,255,255,248,255,255,248, + 0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,16,15,30,20,2,0,1,128, + 1,128,3,192,3,192,6,96,14,112,12,48,28,56,24,24, + 48,12,48,12,96,6,224,7,192,3,128,1,16,15,30,20, + 2,0,128,1,192,3,224,7,96,6,48,12,48,12,24,24, + 28,56,12,48,6,96,6,96,3,192,3,192,1,128,1,128, + 32,18,72,34,1,0,0,128,1,0,1,128,1,128,3,0, + 0,192,6,0,0,96,15,255,255,240,31,255,255,248,56,0, + 0,28,112,0,0,14,224,0,0,7,224,0,0,7,112,0, + 0,14,56,0,0,28,31,255,255,248,15,255,255,240,6,0, + 0,96,3,0,0,192,1,128,1,128,0,128,1,0,29,17, + 68,32,1,0,0,128,0,0,1,128,0,0,3,0,0,0, + 6,0,0,0,15,255,255,248,31,255,255,248,56,0,0,0, + 112,0,0,0,224,0,0,0,112,0,0,0,56,0,0,0, + 31,255,255,248,15,255,255,248,6,0,0,0,3,0,0,0, + 1,128,0,0,0,128,0,0,17,27,81,20,1,0,0,128, + 0,1,192,0,3,224,0,7,112,0,14,56,0,28,28,0, + 60,30,0,124,31,0,236,27,128,12,24,0,12,24,0,12, + 24,0,12,24,0,12,24,0,12,24,0,12,24,0,12,24, + 0,12,24,0,12,24,0,12,24,0,12,24,0,12,24,0, + 12,24,0,12,24,0,12,24,0,12,24,0,12,24,0,29, + 17,68,32,2,0,0,0,8,0,0,0,12,0,0,0,6, + 0,0,0,3,0,255,255,255,128,255,255,255,192,0,0,0, + 224,0,0,0,112,0,0,0,56,0,0,0,112,0,0,0, + 224,255,255,255,192,255,255,255,128,0,0,3,0,0,0,6, + 0,0,0,12,0,0,0,8,0,17,27,81,20,1,0,12, + 24,0,12,24,0,12,24,0,12,24,0,12,24,0,12,24, + 0,12,24,0,12,24,0,12,24,0,12,24,0,12,24,0, + 12,24,0,12,24,0,12,24,0,12,24,0,12,24,0,12, + 24,0,12,24,0,236,27,128,124,31,0,60,30,0,28,28, + 0,14,56,0,7,112,0,3,224,0,1,192,0,0,128,0, + 14,25,50,16,1,0,3,0,7,128,7,128,12,192,12,192, + 24,96,24,96,48,48,48,48,96,24,96,24,192,12,192,12, + 224,28,96,24,96,24,48,48,48,48,24,96,24,96,12,192, + 12,192,7,128,7,128,3,0,9,30,60,11,1,250,1,128, + 3,0,3,0,6,0,6,0,14,0,12,0,28,0,24,0, + 56,0,48,0,48,0,96,0,96,0,192,0,192,0,96,0, + 96,0,48,0,48,0,56,0,24,0,28,0,12,0,14,0, + 6,0,6,0,3,0,3,0,1,128,21,22,66,26,2,0, + 1,252,0,7,15,0,12,1,128,24,0,192,48,0,96,99, + 254,48,67,6,16,195,3,24,195,3,24,195,3,24,131,6, + 8,131,252,8,131,6,8,195,3,24,195,3,24,67,3,16, + 99,3,48,32,0,32,48,0,96,28,1,192,7,15,0,3, + 252,0,21,23,69,26,2,0,1,252,0,7,223,0,14,3, + 128,24,0,192,48,0,96,32,0,32,96,252,48,65,206,16, + 195,6,24,195,3,24,194,0,8,134,0,8,134,0,8,134, + 0,8,134,3,24,195,3,24,67,6,24,97,206,48,32,248, + 48,48,0,96,28,0,192,15,135,128,3,254,0,22,13,39, + 25,1,10,255,56,28,24,56,28,24,56,28,24,60,60,24, + 60,60,24,52,44,24,54,108,24,54,108,24,50,76,24,51, + 204,24,51,204,24,49,140,24,49,140,21,28,84,23,1,255, + 255,255,224,120,3,224,124,0,96,60,0,96,30,0,32,15, + 0,0,15,128,0,7,128,0,3,192,0,3,224,0,1,240, + 0,0,240,0,0,120,0,0,120,0,0,56,0,0,48,0, + 0,96,0,0,192,0,1,128,0,3,128,0,3,0,0,6, + 0,8,12,0,24,24,0,24,48,0,48,127,255,240,127,255, + 240,255,255,240,13,34,68,13,1,249,0,24,0,120,0,224, + 1,192,3,128,3,0,6,0,12,0,12,0,24,0,24,0, + 56,0,48,0,48,0,48,0,96,0,96,0,96,0,96,0, + 96,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,2,34, + 34,13,1,249,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,13,34,68,13,1,249,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,96,0,96,0,96,0,96,0, + 96,0,48,0,48,0,48,0,56,0,24,0,24,0,12,0, + 12,0,6,0,3,0,3,128,1,192,0,224,0,120,0,24, + 11,34,68,13,0,249,255,224,255,224,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,2,34,34,13,0,249, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,11,34,68,13,0,249,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,255,224,255,224,8,34,34,16, + 6,249,7,31,56,112,96,96,224,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,9,34,68,16,255,249,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 3,0,3,0,6,0,12,0,56,0,224,0,120,0,12,0, + 6,0,3,0,3,0,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,8,34, + 34,16,6,249,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,224, + 96,96,112,56,31,7,2,34,34,16,6,249,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,255,9, + 30,60,11,1,250,192,0,96,0,96,0,48,0,48,0,56, + 0,24,0,28,0,12,0,14,0,6,0,6,0,3,0,3, + 0,1,128,1,128,3,0,3,0,6,0,6,0,14,0,12, + 0,28,0,24,0,56,0,48,0,48,0,96,0,96,0,192, + 0,9,33,66,9,0,250,3,0,7,128,7,128,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,248,0,248,0,112,0,12,34,68,23,10,249,1, + 224,3,240,6,112,12,240,8,96,24,0,24,0,48,0,48, + 0,48,0,112,0,96,0,96,0,96,0,96,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,3,34,34,22,10,249,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,12,34,68,22,1, + 249,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,96,0,96,0,96,0,96,0, + 224,0,192,0,192,0,192,1,128,1,128,97,0,243,0,230, + 0,252,0,120,0,13,34,68,13,0,249,192,0,240,0,56, + 0,24,0,12,0,6,0,3,0,1,0,1,128,0,192,0, + 192,0,192,0,96,0,96,0,96,0,48,0,48,0,48,0, + 48,0,48,0,16,0,16,0,24,0,24,0,24,0,24,0, + 24,0,24,0,24,0,24,0,24,0,24,0,24,0,24,2, + 34,34,13,11,249,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,13,34,68,13,0,249,0,24,0, + 24,0,24,0,24,0,24,0,24,0,24,0,24,0,24,0, + 24,0,24,0,24,0,16,0,16,0,48,0,48,0,48,0, + 48,0,48,0,96,0,96,0,96,0,192,0,192,0,192,1, + 128,1,0,3,0,6,0,12,0,28,0,56,0,240,0,192, + 0,11,34,68,13,1,249,255,224,255,224,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,2,34,34,13,10, + 249,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,11,34,68,13,1,249,0,96,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,255,224,255,224,8,34,34, + 16,0,249,224,120,28,14,6,6,3,3,3,3,3,3,3, + 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, + 3,3,3,3,3,9,34,68,16,6,249,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,96,0,96,0,48,0,24,0,14,0,3,128,14,0,24, + 0,48,0,96,0,96,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,192,0,8, + 33,33,16,0,250,3,3,3,3,3,3,3,3,3,3,3, + 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, + 6,6,14,28,120,224,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--34-240-100-100-P-191-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 23, '1' Height: 23 + Calculated Max Values w=27 h=33 x=15 y=26 dx=29 dy= 0 ascent=27 len=92 + Font Bounding box w=40 h=34 x=-5 y=-7 + Calculated Min Values x=-2 y=-7 dx= 0 dy= 0 + Pure Font ascent =23 descent=-7 + X Font ascent =23 descent=-7 + Max Font ascent =27 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb24r[5335] U8G_SECTION(".progmem.u8g_font_symb24r") = { + 0,40,34,251,249,23,5,133,13,247,32,127,249,27,249,23, + 249,0,0,0,8,0,1,4,23,23,11,4,0,96,240,240, + 240,240,240,96,96,96,96,96,96,96,96,96,96,0,0,0, + 96,240,240,96,20,24,72,23,1,0,192,0,48,192,0,48, + 192,0,96,96,0,96,96,0,96,48,0,192,48,0,192,63, + 255,192,31,255,128,24,1,128,12,3,0,12,3,0,12,3, + 0,6,6,0,6,6,0,3,12,0,3,12,0,3,12,0, + 1,152,0,1,152,0,0,240,0,0,240,0,0,240,0,0, + 96,0,14,23,46,16,1,0,6,48,6,48,6,48,6,48, + 12,96,12,96,12,96,127,252,127,252,12,96,12,96,12,96, + 24,192,24,192,24,192,255,248,255,248,24,192,24,192,49,128, + 49,128,49,128,49,128,15,24,48,18,0,0,255,254,255,254, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,63,254,63,254,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,6,255,254,255,254,23,23,69,27, + 2,255,7,192,96,30,225,192,60,63,192,56,33,128,112,33, + 128,112,35,0,240,98,0,224,70,0,224,204,0,224,204,0, + 97,152,0,119,16,124,62,48,238,0,97,198,0,99,130,0, + 199,2,0,135,2,1,142,6,3,14,4,3,14,12,6,14, + 24,14,7,48,12,3,224,23,22,66,25,1,0,0,248,0, + 3,140,0,3,6,0,7,6,0,7,6,0,7,6,0,7, + 12,0,7,152,0,3,241,252,3,192,112,7,192,96,29,224, + 96,56,240,192,112,240,128,96,121,128,224,63,0,224,30,0, + 224,31,0,240,31,130,248,55,238,127,227,252,31,128,248,12, + 17,34,14,1,0,126,0,127,128,7,192,1,224,0,224,0, + 240,0,112,0,112,63,240,63,240,0,112,0,112,0,224,1, + 224,3,192,255,0,124,0,8,29,29,11,2,250,3,7,6, + 12,24,48,48,112,112,96,96,224,224,224,224,224,224,224,96, + 96,112,112,48,48,24,12,6,7,3,8,29,29,11,1,250, + 192,224,96,48,24,12,12,14,14,6,6,7,7,7,7,7, + 7,7,6,6,14,14,12,12,24,48,96,224,192,11,14,28, + 16,2,4,4,0,14,0,14,0,196,96,228,224,127,192,31, + 0,31,0,127,192,228,224,196,96,14,0,14,0,4,0,16, + 18,36,18,1,0,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,255,255,255,255,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,4,9,9,8,2,251,96, + 240,240,240,16,48,96,224,192,17,2,6,18,0,8,255,255, + 128,255,255,128,4,4,4,8,2,0,96,240,240,96,7,22, + 22,9,1,0,2,2,6,6,4,12,12,8,24,24,16,48, + 48,32,32,96,64,64,192,192,128,128,14,23,46,16,1,0, + 15,192,28,224,56,112,48,48,112,56,112,56,96,24,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 96,24,112,56,112,56,48,48,56,112,28,224,15,192,9,23, + 46,16,4,0,4,0,28,0,252,0,220,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,62,0, + 255,128,14,23,46,16,1,0,15,128,31,192,63,224,97,240, + 192,240,192,112,128,112,0,112,0,112,0,96,0,96,0,192, + 0,192,1,128,3,0,3,0,6,0,12,0,24,0,48,12, + 112,24,127,248,255,240,13,23,46,16,1,0,15,128,63,224, + 113,224,64,224,192,96,128,96,0,96,0,192,0,192,1,128, + 7,192,15,224,1,240,0,112,0,120,0,56,0,56,0,56, + 0,48,0,48,96,96,121,192,127,128,15,23,46,16,0,0, + 0,48,0,112,0,112,0,240,1,240,1,240,3,112,6,112, + 6,112,12,112,24,112,24,112,48,112,32,112,96,112,192,112, + 255,254,255,254,0,112,0,112,0,112,0,112,0,112,13,23, + 46,16,1,0,15,248,15,240,31,240,16,0,48,0,32,0, + 126,0,127,128,127,192,15,224,3,224,0,240,0,112,0,112, + 0,112,0,48,0,48,0,48,0,112,0,96,224,192,251,128, + 254,0,14,23,46,16,1,0,0,56,1,224,3,128,7,0, + 14,0,28,0,56,0,56,0,112,0,119,192,255,240,240,120, + 224,56,224,60,224,28,224,28,224,28,224,28,112,28,112,56, + 56,56,28,112,15,192,13,23,46,16,1,0,127,248,127,248, + 127,248,192,24,128,48,0,48,0,48,0,96,0,96,0,96, + 0,192,0,192,0,192,1,192,1,128,1,128,1,128,3,0, + 3,0,3,0,6,0,6,0,6,0,12,23,46,16,2,0, + 31,128,113,192,96,224,224,96,192,96,224,96,224,224,112,192, + 121,192,63,0,31,0,31,128,63,192,115,192,96,224,224,240, + 192,112,192,112,224,112,224,112,96,96,121,192,31,128,14,23, + 46,16,1,0,15,128,56,224,48,112,96,56,224,56,224,56, + 224,60,224,28,224,28,224,28,240,28,112,28,120,124,63,252, + 15,56,0,56,0,112,0,240,0,224,1,192,7,128,30,0, + 112,0,4,15,15,9,2,0,96,240,240,96,0,0,0,0, + 0,0,0,96,240,240,96,4,20,20,9,3,251,96,240,240, + 96,0,0,0,0,0,0,0,96,240,240,240,16,48,96,224, + 192,16,16,32,18,1,1,0,7,0,31,0,124,1,240,7, + 128,30,0,120,0,224,0,224,0,120,0,30,0,7,128,1, + 240,0,124,0,31,0,7,17,8,24,18,0,5,255,255,128, + 255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,128,255,255,128,16,16,32,18,1,1,224,0,248,0,62, + 0,15,128,1,224,0,120,0,30,0,7,0,7,0,30,0, + 120,1,224,15,128,62,0,248,0,224,0,11,23,46,14,2, + 0,63,0,99,128,193,192,192,224,192,224,224,224,192,224,1, + 224,1,192,1,128,3,128,3,0,6,0,6,0,4,0,4, + 0,4,0,0,0,0,0,12,0,30,0,30,0,12,0,17, + 16,48,18,0,0,30,1,0,63,195,128,96,255,0,64,28, + 0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,128, + 255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,128,255,255,128,21,23,69,23,0,0,0,32,0,0,112, + 0,0,112,0,0,112,0,0,248,0,0,248,0,0,188,0, + 1,188,0,1,156,0,3,30,0,3,14,0,2,15,0,6, + 15,0,6,7,0,12,7,128,15,255,128,8,3,128,24,3, + 192,24,1,192,48,1,224,48,1,224,112,1,240,252,7,248, + 18,23,69,22,1,0,255,224,0,63,254,0,28,31,0,28, + 7,0,28,7,128,28,7,128,28,7,128,28,7,128,28,7, + 0,28,15,0,28,62,0,31,248,0,28,31,0,28,7,128, + 28,3,128,28,3,192,28,3,192,28,3,192,28,3,192,28, + 7,128,28,15,128,63,255,0,255,248,0,22,23,69,23,0, + 0,255,195,252,63,0,224,31,0,192,15,1,192,7,129,128, + 7,195,0,3,198,0,1,230,0,1,236,0,0,248,0,0, + 120,0,0,120,0,0,124,0,0,222,0,1,158,0,1,143, + 0,3,15,128,6,7,128,14,3,192,12,3,224,24,1,224, + 56,1,240,254,7,252,19,22,66,20,0,0,0,96,0,0, + 96,0,0,240,0,0,240,0,0,240,0,1,248,0,1,56, + 0,3,60,0,2,60,0,6,28,0,4,30,0,12,14,0, + 12,15,0,8,15,0,24,7,0,16,7,128,48,3,128,32, + 3,192,96,3,192,64,1,192,255,255,224,255,255,224,18,23, + 69,20,1,0,255,255,128,63,255,128,28,3,128,28,1,128, + 28,1,128,28,0,0,28,0,0,28,2,0,28,2,0,28, + 2,0,28,14,0,31,254,0,28,6,0,28,2,0,28,2, + 0,28,0,0,28,0,0,28,0,64,28,0,64,28,0,192, + 28,1,192,63,255,128,255,255,128,23,23,69,25,1,0,1, + 255,0,0,124,0,0,56,0,0,56,0,7,255,192,31,57, + 240,60,56,120,120,56,60,120,56,60,240,56,30,240,56,30, + 240,56,30,240,56,30,240,56,30,120,56,28,120,56,60,60, + 56,120,31,57,240,7,255,192,0,56,0,0,56,0,0,124, + 0,1,255,0,18,23,69,20,1,0,255,255,128,63,255,192, + 60,1,192,28,0,192,28,0,64,28,0,64,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,62,0,0,255,128,0,22, + 23,69,24,1,0,255,135,252,62,1,240,28,0,224,28,0, + 224,28,0,224,28,0,224,28,0,224,28,0,224,28,0,224, + 28,0,224,28,0,224,31,255,224,28,0,224,28,0,224,28, + 0,224,28,0,224,28,0,224,28,0,224,28,0,224,28,0, + 224,28,0,224,62,1,240,255,135,252,9,23,46,11,1,0, + 255,128,62,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,62,0,255,128,20,23, + 69,20,0,0,0,120,0,0,220,0,0,134,0,0,135,0, + 0,131,0,0,195,128,0,67,128,28,99,128,62,57,128,126, + 29,128,199,7,128,199,1,224,6,1,176,14,1,128,14,1, + 128,14,1,128,14,3,128,14,3,0,14,3,0,14,7,0, + 7,6,0,3,156,0,1,248,0,22,23,69,23,1,0,255, + 143,240,62,3,192,28,3,128,28,3,0,28,6,0,28,12, + 0,28,24,0,28,48,0,28,96,0,29,192,0,31,224,0, + 31,224,0,30,240,0,28,120,0,28,124,0,28,62,0,28, + 31,0,28,15,128,28,7,128,28,3,192,28,1,224,62,1, + 240,255,143,252,21,22,66,22,0,0,0,32,0,0,48,0, + 0,112,0,0,112,0,0,248,0,0,248,0,0,188,0,1, + 188,0,1,156,0,1,30,0,3,14,0,3,15,0,2,15, + 0,6,7,0,6,7,128,12,3,128,12,3,192,8,3,192, + 24,1,192,24,1,224,56,1,240,254,7,248,27,23,92,29, + 1,0,254,0,15,224,30,0,15,128,31,0,15,0,31,0, + 31,0,31,0,31,0,31,128,55,0,27,128,55,0,27,192, + 39,0,27,192,103,0,25,224,103,0,25,224,199,0,24,224, + 199,0,24,240,135,0,24,113,135,0,24,121,135,0,24,123, + 7,0,24,63,7,0,24,63,7,0,24,30,7,0,24,30, + 7,0,24,12,7,0,56,12,15,128,255,12,63,224,22,23, + 69,23,1,0,252,3,252,62,0,96,30,0,96,31,0,96, + 31,128,96,31,192,96,27,192,96,25,224,96,25,240,96,24, + 240,96,24,120,96,24,60,96,24,60,96,24,30,96,24,15, + 96,24,15,224,24,7,224,24,3,224,24,1,224,24,1,224, + 24,0,224,56,0,96,255,0,32,22,23,69,23,1,0,1, + 254,0,7,135,128,14,1,192,28,0,224,60,0,240,120,0, + 112,120,0,120,112,0,56,240,0,60,240,0,60,240,0,60, + 240,0,60,240,0,60,240,0,60,240,0,60,112,0,56,120, + 0,120,56,0,112,60,0,240,28,0,224,14,1,192,7,207, + 128,1,254,0,23,23,69,25,1,0,255,255,254,63,255,248, + 28,0,112,28,0,112,28,0,112,28,0,112,28,0,112,28, + 0,112,28,0,112,28,0,112,28,0,112,28,0,112,28,0, + 112,28,0,112,28,0,112,28,0,112,28,0,112,28,0,112, + 28,0,112,28,0,112,28,0,112,62,0,248,255,131,254,22, + 23,69,24,1,0,1,254,0,7,135,128,14,1,192,28,0, + 224,60,0,240,56,0,112,120,0,120,112,0,56,112,0,56, + 242,1,60,243,3,60,243,255,60,243,255,60,243,3,60,242, + 1,60,112,0,56,112,0,56,120,0,120,56,0,112,28,0, + 224,14,1,192,7,135,128,1,254,0,17,23,69,18,1,0, + 255,240,0,63,254,0,28,15,0,28,7,128,28,7,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,7,128,28,7, + 0,30,62,0,31,252,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,62, + 0,0,255,128,0,18,23,69,19,1,0,255,255,0,255,255, + 0,120,3,0,60,1,0,62,1,128,30,0,0,15,0,0, + 7,128,0,7,192,0,3,192,0,1,224,0,0,192,0,1, + 192,0,1,128,0,3,0,0,6,0,0,12,0,64,28,0, + 192,24,0,128,48,1,128,127,255,128,255,255,128,255,255,128, + 19,23,69,20,1,0,255,255,224,248,227,224,192,224,224,192, + 224,96,128,224,32,128,224,32,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,1,240,0,7,252,0,23,23,69,23,0, + 0,255,193,254,62,0,112,31,0,96,15,0,224,15,128,192, + 7,129,128,3,193,128,3,227,0,1,227,0,0,246,0,0, + 252,0,0,124,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,124,0,1,255,0,13,24,48,14,1,249,3,224,15,240, + 31,240,48,0,96,0,64,0,192,0,192,0,128,0,128,0, + 128,0,192,0,192,0,240,0,127,240,63,240,31,248,0,24, + 0,8,0,8,0,24,7,240,7,240,7,192,23,23,69,25, + 1,0,0,254,0,3,131,128,14,0,224,30,0,240,28,0, + 112,60,0,120,56,0,56,120,0,60,120,0,60,120,0,60, + 120,0,60,120,0,60,120,0,60,56,0,56,60,0,120,28, + 0,112,14,0,224,7,1,192,129,131,2,192,130,6,255,199, + 254,255,199,254,255,199,254,19,23,69,21,1,0,127,255,192, + 127,255,192,127,255,192,96,0,192,64,0,64,0,0,0,0, + 0,0,0,0,0,8,2,0,12,6,0,15,254,0,15,254, + 0,15,254,0,8,2,0,8,2,0,0,0,0,0,0,0, + 192,0,96,192,0,96,64,0,64,127,255,192,127,255,192,127, + 255,192,25,23,92,26,0,0,224,255,131,128,112,62,7,0, + 56,28,14,0,56,28,14,0,60,28,30,0,60,28,30,0, + 60,28,30,0,60,28,30,0,60,28,30,0,28,28,28,0, + 30,28,60,0,15,156,248,0,3,255,224,0,0,28,0,0, + 0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0, + 0,28,0,0,0,28,0,0,0,28,0,0,0,62,0,0, + 0,255,128,0,19,23,69,20,1,0,127,255,192,120,3,192, + 96,7,128,96,15,0,64,15,0,64,30,0,0,62,0,0, + 60,0,0,120,0,0,248,0,0,240,0,1,224,0,1,224, + 0,3,192,0,7,192,0,7,128,0,15,0,0,31,0,32, + 30,0,32,62,0,96,60,0,224,120,3,192,255,255,192,7, + 28,28,11,3,251,254,224,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,224, + 254,17,16,48,28,5,0,1,224,0,1,224,0,1,224,0, + 1,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,240,7,128,240,7, + 128,240,7,128,240,7,128,7,28,28,11,1,251,254,14,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,6,6,14,254,20,23,69,21,1,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,96,0,0,96,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,96,0,255,255, + 240,255,255,240,16,2,4,16,0,249,255,255,255,255,20,1, + 3,17,15,26,255,255,240,19,17,51,20,1,0,15,193,128, + 28,225,128,56,51,128,112,19,128,112,23,0,240,31,0,224, + 15,0,224,14,0,224,14,0,224,14,0,224,28,0,240,30, + 0,240,30,32,112,58,32,120,115,224,60,225,192,15,193,192, + 14,32,64,18,2,249,15,128,25,224,48,224,112,112,96,112, + 96,112,96,112,96,112,96,112,96,96,103,192,103,224,96,112, + 96,56,96,56,96,60,96,28,96,28,96,28,96,28,96,28, + 96,56,120,120,111,240,99,192,96,0,96,0,96,0,96,0, + 224,0,224,0,224,0,17,25,75,18,0,249,24,0,0,60, + 14,0,126,14,0,70,30,0,194,28,0,195,60,0,3,56, + 0,1,112,0,1,112,0,1,224,0,1,224,0,1,192,0, + 3,192,0,3,128,0,7,192,0,7,192,0,15,64,0,14, + 64,0,30,96,0,28,97,128,60,97,128,56,51,0,120,63, + 0,112,62,0,112,30,0,14,25,50,16,1,0,15,128,31, + 224,48,240,32,120,48,48,56,0,28,0,14,0,7,128,3, + 192,7,240,28,240,56,120,112,56,240,60,224,28,224,28,224, + 28,224,28,240,28,240,56,112,56,120,112,31,224,7,128,12, + 18,36,14,1,255,31,128,57,224,112,224,224,224,224,64,224, + 0,112,0,120,0,31,128,120,0,240,0,224,0,224,0,224, + 16,240,48,120,48,63,224,15,128,15,30,60,17,1,249,1, + 0,1,0,1,0,1,0,1,0,1,0,15,192,29,112,57, + 56,113,28,113,28,225,30,225,14,225,14,225,14,225,14,225, + 14,241,14,113,12,113,28,57,24,29,112,7,224,1,0,1, + 0,1,0,1,0,1,0,1,0,1,0,15,24,48,13,254, + 249,56,14,124,14,124,14,198,28,134,28,130,28,3,56,3, + 56,1,48,1,48,1,96,1,224,1,192,0,192,0,192,1, + 128,1,192,1,192,3,192,3,192,3,192,3,192,3,128,1, + 128,17,24,72,20,0,249,24,56,0,124,254,0,223,222,0, + 207,15,0,143,7,0,14,7,0,14,7,0,14,7,0,14, + 7,0,14,7,0,14,7,0,14,7,0,14,7,0,14,7, + 0,14,7,0,14,7,0,14,7,0,0,7,0,0,7,0, + 0,7,0,0,7,0,0,7,0,0,3,0,0,3,128,10, + 17,34,11,0,0,4,0,124,0,252,0,60,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 64,28,192,15,192,15,0,18,24,72,20,1,249,6,60,0, + 30,126,0,56,255,0,112,199,128,112,195,128,240,195,192,224, + 193,192,224,193,192,224,193,192,224,193,192,240,193,192,240,193, + 128,112,195,128,120,195,0,56,199,0,30,220,0,7,248,0, + 0,192,0,0,192,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,17,17,51,18,1,0,8,7,0,248,31, + 128,248,63,128,56,99,0,24,192,0,25,128,0,27,0,0, + 31,128,0,31,128,0,27,192,0,25,224,0,24,240,0,24, + 240,0,24,120,0,24,60,0,24,62,0,24,127,128,17,25, + 75,18,1,0,56,0,0,124,0,0,126,0,0,198,0,0, + 195,0,0,131,0,0,1,0,0,1,0,0,1,128,0,3, + 128,0,3,128,0,7,128,0,7,192,0,15,192,0,14,192, + 0,30,64,0,28,96,0,28,96,0,56,96,0,56,96,128, + 112,48,128,112,57,128,224,63,0,224,31,0,224,14,0,17, + 24,72,19,1,249,112,56,0,112,56,0,112,56,0,112,56, + 0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0, + 112,56,0,112,56,0,112,56,0,112,120,0,120,120,128,127, + 253,128,127,159,128,110,30,0,96,0,0,96,0,0,96,0, + 0,224,0,0,224,0,0,224,0,0,96,0,0,16,17,34, + 17,255,0,24,6,248,7,60,7,28,7,28,7,30,6,14, + 6,14,12,7,12,7,24,7,152,3,176,3,160,1,224,1, + 192,1,192,0,128,15,17,34,18,1,0,7,192,28,112,48, + 56,112,60,112,28,224,30,224,14,224,14,224,14,224,14,224, + 14,240,14,112,28,120,28,56,56,30,112,15,224,17,17,51, + 18,0,0,15,255,128,63,255,128,63,255,128,102,56,0,198, + 56,0,6,48,0,6,48,0,6,48,0,6,48,0,6,48, + 0,4,48,0,12,48,0,12,48,128,28,57,128,60,63,0, + 60,31,0,56,30,0,14,23,46,17,1,0,7,128,28,224, + 24,112,48,48,112,56,112,56,240,60,224,28,224,28,224,28, + 224,28,255,252,255,252,224,28,224,28,224,28,224,28,112,56, + 112,56,112,56,56,112,28,224,15,192,14,25,50,18,2,249, + 7,192,31,224,48,240,96,120,96,120,224,60,224,60,224,28, + 224,28,224,28,224,28,224,24,224,24,224,56,240,112,248,224, + 239,192,231,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,18,18,54,20,1,0,3,255,192,15,255,192,63,255, + 192,124,48,0,120,24,0,240,28,0,240,14,0,224,15,0, + 224,7,0,224,7,0,240,7,0,112,7,0,112,15,0,56, + 14,0,60,30,0,30,56,0,7,240,0,1,192,0,14,17, + 34,14,0,0,15,252,63,252,63,252,99,128,195,128,195,128, + 3,0,3,0,3,0,3,0,3,0,3,8,3,136,3,152, + 3,248,1,240,1,224,17,18,54,19,0,0,0,16,0,60, + 24,0,124,28,0,252,6,0,206,7,0,142,3,0,14,3, + 0,14,3,128,14,3,128,14,3,128,14,3,128,14,3,128, + 14,3,0,14,7,0,7,7,0,7,14,0,3,156,0,1, + 248,0,21,19,57,23,0,0,31,255,248,63,255,248,127,255, + 248,231,131,128,222,0,192,60,0,224,56,56,112,120,56,112, + 120,56,56,120,56,56,112,56,56,112,56,56,112,56,56,112, + 16,56,120,16,56,120,56,112,56,40,112,28,236,224,15,135, + 192,20,17,51,22,1,0,15,14,0,28,7,128,56,1,192, + 112,97,224,112,224,224,224,224,240,224,224,240,224,224,112,224, + 224,112,224,224,112,224,224,112,224,64,112,224,224,240,112,224, + 224,113,177,224,63,31,192,30,15,0,14,33,66,16,1,249, + 48,0,96,192,99,224,103,192,63,128,24,0,48,0,32,0, + 32,0,48,0,49,240,31,240,31,224,48,0,96,0,64,0, + 192,0,128,0,128,0,128,0,192,0,192,0,248,0,127,240, + 63,252,31,252,0,12,0,4,0,4,0,12,3,248,3,248, + 1,224,22,24,72,22,0,249,240,48,60,120,48,120,60,48, + 240,28,48,224,28,48,224,28,48,224,28,48,224,28,48,224, + 30,48,224,30,49,224,30,49,224,14,49,192,14,49,192,6, + 49,192,7,51,128,3,183,0,1,254,0,0,48,0,0,48, + 0,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 13,32,64,16,2,249,24,0,56,112,48,240,51,224,63,192, + 14,0,12,0,24,0,16,0,48,0,32,0,96,0,64,0, + 64,0,192,0,192,0,192,0,192,0,192,0,224,0,96,0, + 127,192,63,240,31,248,15,248,0,24,0,8,0,8,0,24, + 3,248,7,240,3,224,11,29,58,16,2,250,7,224,14,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,28,0,28,0,112,0,192,0,112,0,28,0,28,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,14,0,7,224,2,28,28,7,2,250,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,11,29,58,16,2,250,252,0, + 14,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,7,0,7,0,1,192,0,96,1,192,7,0, + 7,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,14,0,252,0,15,4,8,18,1,7,24,0, + 127,134,227,254,192,56,255}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--11-80-100-100-P-57-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w=10 h=11 x= 1 y= 6 dx=11 dy= 0 ascent=10 len=18 + Font Bounding box w=13 h=18 x=-2 y=-5 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-3 + X Font ascent = 7 descent=-3 + Max Font ascent =10 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB08[2551] U8G_SECTION(".progmem.u8g_font_timB08") = { + 0,13,18,254,251,7,1,164,3,77,32,255,253,10,253,7, + 253,0,0,0,2,0,1,2,7,7,4,1,0,192,192,192, + 192,0,192,192,3,3,3,5,1,4,160,160,160,5,7,7, + 6,0,0,80,80,248,80,248,80,80,5,9,9,5,0,255, + 32,112,184,224,96,48,184,112,32,7,7,7,9,1,0,118, + 220,232,16,46,90,156,7,7,7,9,1,0,48,104,104,118, + 220,204,118,1,3,3,3,1,4,128,128,128,3,10,10,3, + 255,253,32,96,64,192,192,192,192,64,96,32,3,10,10,4, + 0,253,128,192,64,96,96,96,96,64,192,128,5,5,5,6, + 0,2,32,248,112,248,32,5,5,5,6,0,0,32,32,248, + 32,32,2,3,3,4,1,255,192,192,64,3,1,1,3,0, + 2,224,2,2,2,3,0,0,192,192,3,7,7,3,0,0, + 32,32,96,64,192,128,128,4,7,7,5,0,0,96,208,208, + 208,208,208,96,4,7,7,5,0,0,96,224,96,96,96,96, + 240,4,7,7,5,0,0,96,240,48,32,64,240,240,4,7, + 7,5,0,0,96,176,48,96,48,176,224,5,7,7,5,0, + 0,16,48,80,144,248,48,48,4,7,7,5,0,0,224,224, + 128,224,48,176,224,4,7,7,5,0,0,48,96,192,240,208, + 208,96,5,7,7,5,0,0,120,240,144,48,32,96,96,4, + 7,7,5,0,0,96,208,208,96,176,176,96,4,7,7,5, + 0,0,96,176,176,176,112,48,224,2,5,5,4,1,0,192, + 192,0,192,192,2,6,6,4,1,255,192,192,0,192,192,64, + 5,5,5,6,0,0,24,112,192,112,24,5,3,3,6,0, + 1,248,0,248,5,5,5,6,0,0,192,112,24,112,192,4, + 7,7,6,1,0,96,176,176,32,0,96,96,10,9,18,11, + 0,254,31,0,48,128,109,64,218,64,210,64,210,128,205,0, + 96,0,62,0,8,7,7,7,255,0,16,24,56,44,124,78, + 239,6,7,7,7,0,0,248,108,108,120,108,108,248,6,7, + 7,7,0,0,124,204,192,192,192,236,120,7,7,7,8,0, + 0,252,102,102,102,102,102,252,6,7,7,7,0,0,252,100, + 96,120,96,100,252,6,7,7,7,0,0,252,100,104,120,104, + 96,240,6,7,7,7,0,0,124,204,192,220,204,204,120,8, + 7,7,9,0,0,231,102,102,126,102,102,231,4,7,7,5, + 0,0,240,96,96,96,96,96,240,5,8,8,5,0,255,120, + 48,48,48,48,48,176,224,7,7,7,8,0,0,238,100,104, + 120,108,110,230,6,7,7,7,0,0,240,96,96,96,100,108, + 252,9,7,14,10,0,0,243,128,119,0,91,0,91,0,91, + 0,75,0,227,128,7,7,7,8,0,0,238,100,116,92,92, + 76,228,6,7,7,7,0,0,120,204,204,204,204,204,120,6, + 7,7,6,0,0,248,108,108,120,96,96,240,6,9,9,7, + 0,254,120,204,204,204,204,204,120,48,28,7,7,7,7,0, + 0,248,108,108,120,104,108,238,5,7,7,6,0,0,120,200, + 224,112,56,152,240,6,7,7,7,0,0,252,180,48,48,48, + 48,120,7,7,7,7,0,0,246,100,100,100,100,100,56,8, + 7,7,8,0,0,243,98,116,52,56,24,16,10,7,14,10, + 0,0,238,192,108,128,109,128,109,0,55,0,54,0,18,0, + 7,7,7,7,0,0,230,100,56,56,44,76,222,8,7,7, + 8,0,0,247,98,52,56,24,24,60,6,7,7,7,0,0, + 252,204,152,48,100,204,252,3,10,10,4,0,253,224,192,192, + 192,192,192,192,192,192,224,3,7,7,3,0,0,128,128,192, + 64,96,32,32,3,10,10,4,0,253,224,96,96,96,96,96, + 96,96,96,224,5,4,4,6,0,3,32,112,216,136,5,1, + 1,5,0,253,248,2,2,2,4,0,6,128,64,5,5,5, + 5,0,0,96,176,112,176,248,5,7,7,5,255,0,224,96, + 112,104,104,104,112,4,5,5,5,0,0,112,208,192,208,112, + 6,7,7,6,0,0,56,24,120,216,216,216,108,4,5,5, + 5,0,0,112,208,240,192,112,4,7,7,3,255,0,48,96, + 240,96,96,96,240,5,8,8,5,0,253,120,208,208,112,192, + 240,144,240,6,7,7,5,255,0,224,96,120,104,104,104,108, + 2,7,7,3,0,0,192,0,192,192,192,192,192,3,10,10, + 4,0,253,96,0,96,96,96,96,96,96,96,192,6,7,7, + 5,255,0,224,96,108,104,112,104,236,3,7,7,3,255,0, + 224,96,96,96,96,96,96,8,5,5,8,0,0,172,254,214, + 214,215,6,5,5,6,0,0,176,216,216,216,220,5,5,5, + 6,0,0,112,216,216,216,112,5,8,8,5,255,253,240,104, + 104,104,112,96,96,224,5,8,8,5,0,253,112,208,208,208, + 112,48,48,56,4,5,5,4,0,0,208,240,192,192,192,3, + 5,5,4,0,0,96,192,224,96,224,4,7,7,4,255,0, + 32,96,240,96,96,96,48,5,5,5,5,0,0,216,208,208, + 208,112,5,5,5,5,0,0,216,208,112,96,32,7,5,5, + 6,255,0,214,212,92,120,40,4,5,5,5,0,0,208,240, + 96,240,176,5,8,8,5,0,253,216,216,112,112,32,32,192, + 192,4,5,5,5,0,0,240,176,96,208,240,4,10,10,4, + 255,253,48,96,96,96,192,192,96,96,96,48,1,10,10,3, + 1,253,128,128,128,128,128,128,128,128,128,128,4,10,10,4, + 0,253,192,96,96,96,48,48,96,96,96,192,5,2,2,6, + 0,2,104,176,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,2,0,1,2,7,7,4,1, + 253,192,192,0,192,192,192,192,5,7,7,6,0,255,16,120, + 208,208,224,120,32,5,7,7,6,0,0,56,104,96,248,96, + 232,216,5,5,5,6,0,1,136,112,80,112,136,5,7,7, + 6,0,0,216,216,112,32,112,32,112,1,7,7,3,1,0, + 128,128,128,0,128,128,128,4,9,9,5,0,254,96,176,192, + 160,208,112,48,208,96,3,1,1,4,0,5,160,7,7,7, + 9,1,0,56,68,154,162,154,68,56,3,6,6,4,0,1, + 192,32,224,160,0,224,5,5,5,6,0,0,40,80,160,80, + 40,5,3,3,7,1,1,248,8,8,3,1,1,3,0,2, + 224,7,7,7,9,1,0,56,68,186,178,170,68,56,3,1, + 1,4,0,5,224,4,3,3,4,0,4,96,144,96,5,7, + 7,6,0,0,32,32,248,32,32,0,248,3,4,4,3,0, + 3,96,160,64,224,3,4,4,3,0,3,224,64,32,192,2, + 2,2,4,1,5,64,128,5,8,8,5,0,253,216,208,208, + 208,240,128,192,192,6,10,10,6,0,253,124,232,232,232,104, + 40,40,40,40,40,1,2,2,3,1,2,128,128,2,3,3, + 3,1,253,128,64,192,3,4,4,3,0,3,64,192,64,224, + 3,6,6,4,0,1,64,160,160,64,0,224,5,5,5,6, + 0,0,160,80,40,80,160,7,7,7,7,0,0,68,200,72, + 244,44,62,68,7,7,7,7,0,0,68,200,72,246,42,36, + 78,7,7,7,7,0,0,228,72,40,212,44,62,68,4,7, + 7,6,1,253,96,96,0,64,208,208,96,8,10,10,7,255, + 0,32,16,0,16,24,56,44,124,78,239,8,10,10,7,255, + 0,8,16,0,16,24,56,44,124,78,239,8,10,10,7,255, + 0,16,40,0,16,24,56,44,124,78,239,8,10,10,7,255, + 0,52,88,0,16,24,56,44,124,78,239,8,9,9,7,255, + 0,36,0,16,24,56,44,124,78,239,8,10,10,7,255,0, + 24,36,24,16,24,56,44,124,78,239,9,7,14,9,255,0, + 63,128,28,128,44,0,47,0,124,0,76,128,239,128,6,10, + 10,7,0,253,124,204,192,192,192,236,120,32,16,48,6,10, + 10,7,0,0,32,16,0,252,100,96,120,96,100,252,6,10, + 10,7,0,0,8,16,0,252,100,96,120,96,100,252,6,10, + 10,7,0,0,48,72,0,252,100,96,120,96,100,252,6,9, + 9,7,0,0,40,0,252,100,96,120,96,100,252,4,10,10, + 5,0,0,64,32,0,240,96,96,96,96,96,240,4,10,10, + 5,0,0,32,64,0,240,96,96,96,96,96,240,4,10,10, + 5,0,0,96,144,0,240,96,96,96,96,96,240,4,9,9, + 5,0,0,144,0,240,96,96,96,96,96,240,7,7,7,8, + 0,0,252,102,102,246,102,102,252,7,10,10,8,0,0,52, + 88,0,238,100,116,92,92,76,228,6,10,10,7,0,0,32, + 16,0,120,204,204,204,204,204,120,6,10,10,7,0,0,16, + 32,0,120,204,204,204,204,204,120,6,10,10,7,0,0,48, + 72,0,120,204,204,204,204,204,120,6,10,10,7,0,0,52, + 88,0,120,204,204,204,204,204,120,6,9,9,7,0,0,72, + 0,120,204,204,204,204,204,120,6,5,5,6,0,0,204,120, + 48,120,204,6,9,9,8,1,255,4,120,204,220,236,236,204, + 120,128,7,10,10,7,0,0,32,16,0,246,100,100,100,100, + 100,56,7,10,10,7,0,0,8,16,0,246,100,100,100,100, + 100,56,7,10,10,7,0,0,24,36,0,246,100,100,100,100, + 100,56,7,9,9,7,0,0,36,0,246,100,100,100,100,100, + 56,8,10,10,8,0,0,4,8,0,247,98,52,56,24,24, + 60,6,7,7,6,0,0,224,120,108,108,120,96,240,5,7, + 7,6,0,0,112,200,200,208,200,200,216,5,8,8,5,0, + 0,64,32,0,96,176,112,176,248,5,8,8,5,0,0,16, + 32,0,96,176,112,176,248,5,8,8,5,0,0,32,80,0, + 96,176,112,176,248,5,8,8,5,0,0,104,176,0,96,176, + 112,176,248,5,7,7,5,0,0,80,0,96,176,112,176,248, + 5,8,8,5,0,0,32,80,32,96,176,112,176,248,7,5, + 5,8,0,0,110,186,126,184,238,4,8,8,5,0,253,112, + 208,192,208,112,64,32,96,4,8,8,5,0,0,64,32,0, + 112,208,240,192,112,4,8,8,5,0,0,16,32,0,112,208, + 240,192,112,5,8,8,5,0,0,32,80,136,112,208,240,192, + 112,4,7,7,5,0,0,80,0,112,208,240,192,112,2,8, + 8,3,0,0,128,64,0,192,192,192,192,192,2,8,8,3, + 0,0,64,128,0,192,192,192,192,192,3,8,8,3,0,0, + 64,160,0,192,192,192,192,192,3,7,7,3,0,0,160,0, + 192,192,192,192,192,5,9,9,6,0,0,128,112,96,176,24, + 120,216,216,112,6,8,8,6,0,0,104,176,0,176,216,216, + 216,220,5,8,8,6,0,0,64,32,0,112,216,216,216,112, + 5,8,8,6,0,0,16,32,0,112,216,216,216,112,5,8, + 8,6,0,0,32,80,0,112,216,216,216,112,5,8,8,6, + 0,0,104,176,0,112,216,216,216,112,5,7,7,6,0,0, + 80,0,112,216,216,216,112,5,5,5,6,0,0,32,0,248, + 0,32,5,7,7,6,0,255,16,112,216,216,216,112,64,5, + 8,8,5,0,0,64,32,0,216,208,208,208,112,5,8,8, + 5,0,0,16,32,0,216,208,208,208,112,5,8,8,5,0, + 0,32,80,0,216,208,208,208,112,5,7,7,5,0,0,80, + 0,216,208,208,208,112,5,11,11,5,0,253,16,32,0,216, + 216,112,112,32,32,192,192,5,10,10,5,255,253,224,96,112, + 104,104,104,112,96,96,224,5,10,10,5,0,253,80,0,216, + 216,112,112,32,32,192,192}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--11-80-100-100-P-57-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w=10 h=10 x= 1 y= 6 dx=11 dy= 0 ascent= 8 len=18 + Font Bounding box w=13 h=18 x=-2 y=-5 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-3 + X Font ascent = 7 descent=-3 + Max Font ascent = 8 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB08r[1221] U8G_SECTION(".progmem.u8g_font_timB08r") = { + 0,13,18,254,251,7,1,164,3,77,32,127,253,8,253,7, + 253,0,0,0,2,0,1,2,7,7,4,1,0,192,192,192, + 192,0,192,192,3,3,3,5,1,4,160,160,160,5,7,7, + 6,0,0,80,80,248,80,248,80,80,5,9,9,5,0,255, + 32,112,184,224,96,48,184,112,32,7,7,7,9,1,0,118, + 220,232,16,46,90,156,7,7,7,9,1,0,48,104,104,118, + 220,204,118,1,3,3,3,1,4,128,128,128,3,10,10,3, + 255,253,32,96,64,192,192,192,192,64,96,32,3,10,10,4, + 0,253,128,192,64,96,96,96,96,64,192,128,5,5,5,6, + 0,2,32,248,112,248,32,5,5,5,6,0,0,32,32,248, + 32,32,2,3,3,4,1,255,192,192,64,3,1,1,3,0, + 2,224,2,2,2,3,0,0,192,192,3,7,7,3,0,0, + 32,32,96,64,192,128,128,4,7,7,5,0,0,96,208,208, + 208,208,208,96,4,7,7,5,0,0,96,224,96,96,96,96, + 240,4,7,7,5,0,0,96,240,48,32,64,240,240,4,7, + 7,5,0,0,96,176,48,96,48,176,224,5,7,7,5,0, + 0,16,48,80,144,248,48,48,4,7,7,5,0,0,224,224, + 128,224,48,176,224,4,7,7,5,0,0,48,96,192,240,208, + 208,96,5,7,7,5,0,0,120,240,144,48,32,96,96,4, + 7,7,5,0,0,96,208,208,96,176,176,96,4,7,7,5, + 0,0,96,176,176,176,112,48,224,2,5,5,4,1,0,192, + 192,0,192,192,2,6,6,4,1,255,192,192,0,192,192,64, + 5,5,5,6,0,0,24,112,192,112,24,5,3,3,6,0, + 1,248,0,248,5,5,5,6,0,0,192,112,24,112,192,4, + 7,7,6,1,0,96,176,176,32,0,96,96,10,9,18,11, + 0,254,31,0,48,128,109,64,218,64,210,64,210,128,205,0, + 96,0,62,0,8,7,7,7,255,0,16,24,56,44,124,78, + 239,6,7,7,7,0,0,248,108,108,120,108,108,248,6,7, + 7,7,0,0,124,204,192,192,192,236,120,7,7,7,8,0, + 0,252,102,102,102,102,102,252,6,7,7,7,0,0,252,100, + 96,120,96,100,252,6,7,7,7,0,0,252,100,104,120,104, + 96,240,6,7,7,7,0,0,124,204,192,220,204,204,120,8, + 7,7,9,0,0,231,102,102,126,102,102,231,4,7,7,5, + 0,0,240,96,96,96,96,96,240,5,8,8,5,0,255,120, + 48,48,48,48,48,176,224,7,7,7,8,0,0,238,100,104, + 120,108,110,230,6,7,7,7,0,0,240,96,96,96,100,108, + 252,9,7,14,10,0,0,243,128,119,0,91,0,91,0,91, + 0,75,0,227,128,7,7,7,8,0,0,238,100,116,92,92, + 76,228,6,7,7,7,0,0,120,204,204,204,204,204,120,6, + 7,7,6,0,0,248,108,108,120,96,96,240,6,9,9,7, + 0,254,120,204,204,204,204,204,120,48,28,7,7,7,7,0, + 0,248,108,108,120,104,108,238,5,7,7,6,0,0,120,200, + 224,112,56,152,240,6,7,7,7,0,0,252,180,48,48,48, + 48,120,7,7,7,7,0,0,246,100,100,100,100,100,56,8, + 7,7,8,0,0,243,98,116,52,56,24,16,10,7,14,10, + 0,0,238,192,108,128,109,128,109,0,55,0,54,0,18,0, + 7,7,7,7,0,0,230,100,56,56,44,76,222,8,7,7, + 8,0,0,247,98,52,56,24,24,60,6,7,7,7,0,0, + 252,204,152,48,100,204,252,3,10,10,4,0,253,224,192,192, + 192,192,192,192,192,192,224,3,7,7,3,0,0,128,128,192, + 64,96,32,32,3,10,10,4,0,253,224,96,96,96,96,96, + 96,96,96,224,5,4,4,6,0,3,32,112,216,136,5,1, + 1,5,0,253,248,2,2,2,4,0,6,128,64,5,5,5, + 5,0,0,96,176,112,176,248,5,7,7,5,255,0,224,96, + 112,104,104,104,112,4,5,5,5,0,0,112,208,192,208,112, + 6,7,7,6,0,0,56,24,120,216,216,216,108,4,5,5, + 5,0,0,112,208,240,192,112,4,7,7,3,255,0,48,96, + 240,96,96,96,240,5,8,8,5,0,253,120,208,208,112,192, + 240,144,240,6,7,7,5,255,0,224,96,120,104,104,104,108, + 2,7,7,3,0,0,192,0,192,192,192,192,192,3,10,10, + 4,0,253,96,0,96,96,96,96,96,96,96,192,6,7,7, + 5,255,0,224,96,108,104,112,104,236,3,7,7,3,255,0, + 224,96,96,96,96,96,96,8,5,5,8,0,0,172,254,214, + 214,215,6,5,5,6,0,0,176,216,216,216,220,5,5,5, + 6,0,0,112,216,216,216,112,5,8,8,5,255,253,240,104, + 104,104,112,96,96,224,5,8,8,5,0,253,112,208,208,208, + 112,48,48,56,4,5,5,4,0,0,208,240,192,192,192,3, + 5,5,4,0,0,96,192,224,96,224,4,7,7,4,255,0, + 32,96,240,96,96,96,48,5,5,5,5,0,0,216,208,208, + 208,112,5,5,5,5,0,0,216,208,112,96,32,7,5,5, + 6,255,0,214,212,92,120,40,4,5,5,5,0,0,208,240, + 96,240,176,5,8,8,5,0,253,216,216,112,112,32,32,192, + 192,4,5,5,5,0,0,240,176,96,208,240,4,10,10,4, + 255,253,48,96,96,96,192,192,96,96,96,48,1,10,10,3, + 1,253,128,128,128,128,128,128,128,128,128,128,4,10,10,4, + 0,253,192,96,96,96,48,48,96,96,96,192,5,2,2,6, + 0,2,104,176,255}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--14-100-100-100-P-76-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=15 h=14 x= 1 y= 8 dx=14 dy= 0 ascent=14 len=28 + Font Bounding box w=17 h=24 x=-2 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB10[3539] U8G_SECTION(".progmem.u8g_font_timB10") = { + 0,17,24,254,250,10,2,6,4,148,32,255,253,14,253,10, + 253,0,0,0,3,0,1,2,10,10,4,1,0,192,192,192, + 192,192,192,192,0,192,192,5,4,4,7,1,6,216,216,216, + 72,7,10,10,7,255,0,20,20,20,126,40,40,252,80,80, + 80,6,12,12,7,0,255,16,120,212,212,240,120,60,28,148, + 212,120,16,13,10,20,14,0,0,56,192,103,192,197,128,201, + 0,115,0,6,112,4,200,13,136,25,144,24,224,10,10,20, + 12,1,0,60,0,102,0,102,0,60,0,57,192,108,128,205, + 128,199,0,239,128,123,0,2,4,4,4,1,6,192,192,192, + 64,3,13,13,5,1,253,32,96,64,192,192,192,192,192,192, + 192,64,96,32,3,13,13,5,0,253,128,192,64,96,96,96, + 96,96,96,96,64,192,128,5,6,6,7,1,4,32,168,112, + 112,168,32,7,7,7,8,0,0,16,16,16,254,16,16,16, + 2,4,4,3,0,254,192,192,64,128,3,1,1,4,0,3, + 224,2,2,2,3,0,0,192,192,4,10,10,4,0,0,16, + 16,48,32,96,64,64,192,128,128,6,10,10,7,0,0,120, + 72,204,204,204,204,204,204,72,120,6,10,10,7,0,0,48, + 240,48,48,48,48,48,48,48,252,6,10,10,7,0,0,56, + 124,140,12,12,24,48,64,252,252,6,10,10,7,0,0,56, + 124,140,12,56,28,12,196,236,120,6,10,10,7,0,0,24, + 56,56,88,152,152,252,252,24,24,6,10,10,7,0,0,124, + 124,64,120,124,12,4,196,204,120,6,10,10,7,0,0,28, + 48,96,224,248,204,204,204,204,120,6,10,10,7,0,0,252, + 252,140,8,24,16,16,32,32,96,6,10,10,7,0,0,120, + 204,204,236,120,120,204,204,204,120,6,10,10,7,0,0,120, + 204,204,204,204,124,24,56,112,192,2,7,7,4,1,0,192, + 192,0,0,0,192,192,2,9,9,4,1,254,192,192,0,0, + 0,192,192,64,128,7,7,7,8,0,0,6,28,112,192,112, + 28,6,7,3,3,8,0,2,254,0,254,7,7,7,8,0, + 0,192,112,28,6,28,112,192,5,10,10,7,1,0,112,216, + 216,24,48,96,96,0,96,96,11,12,24,14,1,254,15,128, + 56,192,96,96,69,32,143,32,155,32,155,32,159,96,141,192, + 64,0,96,0,31,128,10,10,20,10,0,0,12,0,12,0, + 30,0,22,0,51,0,35,0,63,0,97,128,65,128,227,192, + 8,10,10,9,0,0,254,99,99,99,126,99,99,99,99,254, + 8,10,10,10,1,0,61,99,193,193,192,192,192,193,99,62, + 9,10,20,10,0,0,254,0,99,0,97,128,97,128,97,128, + 97,128,97,128,97,128,99,0,254,0,8,10,10,9,0,0, + 255,99,97,100,124,100,96,97,99,255,8,10,10,8,0,0, + 255,99,97,100,124,100,100,96,96,240,9,10,20,11,1,0, + 61,0,99,0,193,0,193,0,192,0,199,128,195,0,195,0, + 99,0,62,0,10,10,20,11,0,0,243,192,97,128,97,128, + 97,128,127,128,97,128,97,128,97,128,97,128,243,192,4,10, + 10,5,0,0,240,96,96,96,96,96,96,96,96,240,6,11, + 11,7,0,255,60,24,24,24,24,24,24,24,216,216,112,10, + 10,20,11,1,0,247,192,99,0,98,0,100,0,120,0,124, + 0,110,0,103,0,99,128,247,192,8,10,10,9,0,0,240, + 96,96,96,96,96,97,97,99,255,12,10,20,13,0,0,240, + 240,112,224,112,224,89,96,89,96,90,96,78,96,78,96,68, + 96,228,240,10,10,20,10,0,0,225,192,112,128,112,128,88, + 128,76,128,76,128,70,128,67,128,67,128,225,128,9,10,20, + 11,1,0,62,0,99,0,193,128,193,128,193,128,193,128,193, + 128,193,128,99,0,62,0,8,10,10,9,0,0,254,103,99, + 99,99,126,96,96,96,240,9,13,26,11,1,253,62,0,99, + 0,193,128,193,128,193,128,193,128,193,128,193,128,99,0,62, + 0,28,0,14,0,3,128,10,10,20,10,0,0,254,0,103, + 0,99,0,99,0,102,0,124,0,110,0,103,0,99,128,241, + 192,7,10,10,8,0,0,122,198,194,224,120,28,14,134,198, + 252,8,10,10,9,0,0,255,219,153,24,24,24,24,24,24, + 60,9,10,20,10,0,0,243,128,97,0,97,0,97,0,97, + 0,97,0,97,0,97,0,115,0,62,0,10,10,20,10,0, + 0,241,192,96,128,97,128,49,0,51,0,50,0,26,0,30, + 0,12,0,12,0,15,10,20,14,255,0,247,158,99,12,99, + 8,49,136,49,144,51,144,26,208,28,224,12,96,12,96,11, + 10,20,10,0,0,241,192,112,128,57,0,30,0,12,0,14, + 0,23,0,35,128,65,192,227,224,10,10,20,10,0,0,249, + 192,112,128,49,0,57,0,26,0,30,0,12,0,12,0,12, + 0,30,0,8,10,10,9,0,0,255,199,134,140,24,24,49, + 97,227,255,4,13,13,5,0,253,240,192,192,192,192,192,192, + 192,192,192,192,192,240,4,10,10,4,0,0,128,128,192,64, + 96,32,32,48,16,16,4,13,13,5,0,253,240,48,48,48, + 48,48,48,48,48,48,48,48,240,5,5,5,8,1,5,32, + 112,80,216,136,7,1,1,7,0,253,254,3,3,3,5,1, + 8,128,192,32,7,7,7,7,0,0,120,204,12,124,204,204, + 118,7,10,10,8,0,0,224,96,96,124,102,102,102,102,102, + 92,5,7,7,6,0,0,48,88,200,192,192,232,112,7,10, + 10,7,0,0,28,12,12,124,204,204,204,204,204,118,6,7, + 7,6,0,0,56,76,204,252,192,228,120,5,10,10,5,0, + 0,56,104,96,240,96,96,96,96,96,240,7,10,10,7,0, + 253,126,204,204,204,120,64,124,254,130,124,8,10,10,8,0, + 0,224,96,96,108,118,102,102,102,102,231,4,10,10,4,0, + 0,96,96,0,224,96,96,96,96,96,240,4,13,13,4,255, + 253,48,48,0,112,48,48,48,48,48,48,48,176,224,8,10, + 10,8,0,0,224,96,96,110,100,104,120,108,102,231,4,10, + 10,4,0,0,224,96,96,96,96,96,96,96,96,240,12,7, + 14,12,0,0,236,192,119,96,102,96,102,96,102,96,102,96, + 247,112,8,7,7,8,0,0,236,118,102,102,102,102,231,6, + 7,7,7,0,0,120,204,204,204,204,204,120,7,10,10,8, + 0,253,236,118,102,102,102,102,124,96,96,240,7,10,10,7, + 0,253,108,220,204,204,204,204,124,12,12,30,6,7,7,6, + 0,0,220,108,96,96,96,96,240,5,7,7,6,0,0,120, + 200,224,112,56,152,240,5,9,9,5,0,0,32,96,240,96, + 96,96,104,112,48,8,7,7,7,255,0,238,102,102,102,102, + 102,59,8,7,7,7,255,0,247,98,98,52,52,24,24,10, + 7,14,10,0,0,238,192,100,128,118,128,55,0,59,0,59, + 0,18,0,7,7,7,7,0,0,238,108,56,56,56,108,238, + 8,10,10,7,255,253,247,98,50,52,28,28,8,8,56,48, + 6,7,7,6,0,0,252,156,24,48,100,228,252,5,13,13, + 7,1,253,24,48,48,48,48,96,192,96,48,48,48,48,24, + 1,12,12,3,1,254,128,128,128,128,128,128,128,128,128,128, + 128,128,5,13,13,7,0,253,192,96,96,96,96,48,24,48, + 96,96,96,96,192,7,4,4,8,0,3,96,242,158,12,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 0,0,0,3,0,1,2,10,10,4,1,253,192,192,0,192, + 192,192,192,192,192,192,6,11,11,7,0,254,8,8,120,212, + 208,208,240,228,120,32,32,7,10,10,8,0,0,60,118,102, + 96,48,248,48,48,246,222,7,6,6,8,0,2,56,238,68, + 68,238,56,8,10,10,8,0,0,247,98,118,52,60,24,60, + 24,24,60,1,12,12,3,1,254,128,128,128,128,128,0,0, + 128,128,128,128,128,5,12,12,7,1,254,112,216,200,96,240, + 152,200,120,48,152,216,112,3,2,2,5,1,8,160,160,10, + 10,20,12,1,0,30,0,97,128,78,128,146,64,144,64,144, + 64,146,64,76,128,97,128,30,0,4,7,7,5,0,3,96, + 16,112,144,112,0,240,7,5,5,9,1,1,54,108,216,108, + 54,7,4,4,9,1,1,254,2,2,2,3,1,1,4,0, + 3,224,10,10,20,12,1,0,30,0,97,128,92,128,146,64, + 146,64,156,64,148,64,82,128,97,128,30,0,4,1,1,5, + 0,8,240,4,4,4,6,1,6,96,144,144,96,7,9,9, + 8,0,0,16,16,16,254,16,16,16,0,254,4,6,6,4, + 0,4,96,176,48,96,192,240,4,6,6,4,0,4,96,176, + 96,48,176,96,3,3,3,5,1,8,32,96,128,8,10,10, + 7,255,253,238,102,102,102,102,102,123,64,96,96,7,13,13, + 8,0,253,126,244,244,244,244,116,20,20,20,20,20,20,20, + 2,2,2,4,0,4,192,192,3,3,3,5,1,253,64,32, + 224,4,6,6,4,0,4,32,224,96,96,96,240,4,7,7, + 5,0,3,96,144,144,144,96,0,240,7,5,5,9,1,1, + 216,108,54,108,216,10,10,20,10,0,0,33,0,226,0,98, + 0,100,0,100,128,249,128,11,128,22,128,23,192,33,128,10, + 10,20,10,0,0,33,0,226,0,98,0,100,0,101,128,250, + 192,8,192,17,128,19,0,35,192,10,10,20,10,0,0,97, + 0,178,0,98,0,52,0,180,128,105,128,11,128,22,128,23, + 192,33,128,5,10,10,7,1,253,48,48,0,48,48,96,192, + 216,216,112,10,14,28,10,0,0,16,0,24,0,4,0,0, + 0,12,0,12,0,30,0,22,0,51,0,35,0,63,0,97, + 128,65,128,227,192,10,14,28,10,0,0,2,0,6,0,8, + 0,0,0,12,0,12,0,30,0,22,0,51,0,35,0,63, + 0,97,128,65,128,227,192,10,14,28,10,0,0,8,0,28, + 0,34,0,0,0,12,0,12,0,30,0,22,0,51,0,35, + 0,63,0,97,128,65,128,227,192,10,13,26,10,0,0,26, + 0,44,0,0,0,12,0,12,0,30,0,22,0,51,0,35, + 0,63,0,97,128,65,128,227,192,10,13,26,10,0,0,18, + 0,18,0,0,0,12,0,12,0,30,0,22,0,51,0,35, + 0,63,0,97,128,65,128,227,192,10,14,28,10,0,0,12, + 0,18,0,12,0,0,0,12,0,12,0,30,0,22,0,51, + 0,35,0,63,0,97,128,65,128,227,192,13,10,20,14,0, + 0,31,248,15,24,11,8,27,32,19,224,63,32,35,40,99, + 8,67,24,231,248,8,13,13,10,1,253,61,99,193,193,192, + 192,192,193,99,62,16,8,56,8,14,14,9,0,0,32,48, + 8,0,255,99,97,100,124,100,101,97,99,255,8,14,14,9, + 0,0,4,12,16,0,255,99,97,100,124,100,101,97,99,255, + 8,14,14,9,0,0,8,28,34,0,255,99,97,100,124,100, + 101,97,99,255,8,13,13,9,0,0,36,36,0,255,99,97, + 100,124,100,101,97,99,255,4,14,14,5,0,0,128,192,32, + 0,240,96,96,96,96,96,96,96,96,240,4,14,14,5,0, + 0,16,48,64,0,240,96,96,96,96,96,96,96,96,240,5, + 14,14,5,0,0,32,112,136,0,240,96,96,96,96,96,96, + 96,96,240,4,13,13,5,0,0,144,144,0,240,96,96,96, + 96,96,96,96,96,240,9,10,20,11,1,0,254,0,99,0, + 97,128,97,128,241,128,97,128,97,128,97,128,99,0,254,0, + 10,13,26,10,0,0,26,0,44,0,0,0,225,192,112,128, + 112,128,88,128,76,128,76,128,70,128,67,128,67,128,225,128, + 9,14,28,11,1,0,16,0,24,0,4,0,0,0,62,0, + 99,0,193,128,193,128,193,128,193,128,193,128,193,128,99,0, + 62,0,9,14,28,11,1,0,4,0,12,0,16,0,0,0, + 62,0,99,0,193,128,193,128,193,128,193,128,193,128,193,128, + 99,0,62,0,9,14,28,11,1,0,8,0,28,0,34,0, + 0,0,62,0,99,0,193,128,193,128,193,128,193,128,193,128, + 193,128,99,0,62,0,9,13,26,11,1,0,26,0,44,0, + 0,0,62,0,99,0,193,128,193,128,193,128,193,128,193,128, + 193,128,99,0,62,0,9,13,26,11,1,0,34,0,34,0, + 0,0,62,0,99,0,193,128,193,128,193,128,193,128,193,128, + 193,128,99,0,62,0,8,7,7,8,0,0,195,102,60,24, + 60,102,195,9,12,24,11,1,255,0,128,61,0,99,0,195, + 128,197,128,201,128,201,128,209,128,225,128,99,0,94,0,128, + 0,9,14,28,10,0,0,16,0,24,0,4,0,0,0,243, + 128,97,0,97,0,97,0,97,0,97,0,97,0,97,0,115, + 0,62,0,9,14,28,10,0,0,4,0,12,0,16,0,0, + 0,243,128,97,0,97,0,97,0,97,0,97,0,97,0,97, + 0,115,0,62,0,9,14,28,10,0,0,8,0,28,0,34, + 0,0,0,243,128,97,0,97,0,97,0,97,0,97,0,97, + 0,97,0,115,0,62,0,9,13,26,10,0,0,18,0,18, + 0,0,0,243,128,97,0,97,0,97,0,97,0,97,0,97, + 0,97,0,115,0,62,0,10,14,28,10,0,0,1,0,3, + 0,4,0,0,0,249,192,112,128,49,0,57,0,26,0,30, + 0,12,0,12,0,12,0,30,0,8,10,10,9,0,0,240, + 96,126,103,99,99,99,126,96,240,7,10,10,8,0,0,56, + 108,100,108,120,108,102,102,102,236,7,11,11,7,0,0,32, + 48,8,0,120,204,12,124,204,204,118,7,11,11,7,0,0, + 8,24,32,0,120,204,12,124,204,204,118,7,11,11,7,0, + 0,16,56,68,0,120,204,12,124,204,204,118,7,10,10,7, + 0,0,52,88,0,120,204,12,124,204,204,118,7,10,10,7, + 0,0,40,40,0,120,204,12,124,204,204,118,7,11,11,7, + 0,0,48,72,48,0,120,204,12,124,204,204,118,10,7,14, + 11,0,0,123,128,204,192,204,192,63,192,204,0,204,192,119, + 128,6,10,10,7,0,253,56,76,204,192,192,228,120,32,16, + 112,6,11,11,7,0,0,64,96,16,0,56,76,204,252,192, + 228,120,6,11,11,7,0,0,8,24,32,0,56,76,204,252, + 192,228,120,6,11,11,7,0,0,16,56,68,0,56,76,204, + 252,192,228,120,6,10,10,7,0,0,80,80,0,56,76,204, + 252,192,228,120,4,11,11,4,0,0,128,192,32,0,224,96, + 96,96,96,96,240,4,11,11,4,0,0,32,96,128,0,224, + 96,96,96,96,96,240,5,11,11,4,0,0,32,112,136,0, + 224,96,96,96,96,96,240,4,10,10,4,0,0,160,160,0, + 224,96,96,96,96,96,240,6,10,10,7,0,0,204,112,152, + 120,204,204,204,204,204,120,8,10,10,8,0,0,52,88,0, + 236,118,102,102,102,102,231,6,11,11,7,0,0,32,48,8, + 0,120,204,204,204,204,204,120,6,11,11,7,0,0,8,24, + 32,0,120,204,204,204,204,204,120,6,11,11,7,0,0,32, + 112,136,0,120,204,204,204,204,204,120,6,10,10,7,0,0, + 104,176,0,120,204,204,204,204,204,120,6,10,10,7,0,0, + 80,80,0,120,204,204,204,204,204,120,6,7,7,8,0,0, + 48,48,0,252,0,48,48,6,9,9,7,0,255,4,120,204, + 220,236,236,204,120,128,8,11,11,7,255,0,32,48,8,0, + 238,102,102,102,102,102,59,8,11,11,7,255,0,4,12,16, + 0,238,102,102,102,102,102,59,8,11,11,7,255,0,16,56, + 68,0,238,102,102,102,102,102,59,8,10,10,7,255,0,40, + 40,0,238,102,102,102,102,102,59,8,14,14,7,255,253,2, + 6,8,0,247,98,50,52,28,28,8,8,56,48,7,13,13, + 8,0,253,224,96,96,108,118,102,102,102,102,124,96,96,240, + 8,13,13,7,255,253,34,34,0,247,98,50,52,28,28,8, + 8,56,48}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--14-100-100-100-P-76-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=15 h=13 x= 1 y= 8 dx=14 dy= 0 ascent=11 len=26 + Font Bounding box w=17 h=24 x=-2 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =11 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB10r[1632] U8G_SECTION(".progmem.u8g_font_timB10r") = { + 0,17,24,254,250,10,2,6,4,148,32,127,253,11,253,10, + 253,0,0,0,3,0,1,2,10,10,4,1,0,192,192,192, + 192,192,192,192,0,192,192,5,4,4,7,1,6,216,216,216, + 72,7,10,10,7,255,0,20,20,20,126,40,40,252,80,80, + 80,6,12,12,7,0,255,16,120,212,212,240,120,60,28,148, + 212,120,16,13,10,20,14,0,0,56,192,103,192,197,128,201, + 0,115,0,6,112,4,200,13,136,25,144,24,224,10,10,20, + 12,1,0,60,0,102,0,102,0,60,0,57,192,108,128,205, + 128,199,0,239,128,123,0,2,4,4,4,1,6,192,192,192, + 64,3,13,13,5,1,253,32,96,64,192,192,192,192,192,192, + 192,64,96,32,3,13,13,5,0,253,128,192,64,96,96,96, + 96,96,96,96,64,192,128,5,6,6,7,1,4,32,168,112, + 112,168,32,7,7,7,8,0,0,16,16,16,254,16,16,16, + 2,4,4,3,0,254,192,192,64,128,3,1,1,4,0,3, + 224,2,2,2,3,0,0,192,192,4,10,10,4,0,0,16, + 16,48,32,96,64,64,192,128,128,6,10,10,7,0,0,120, + 72,204,204,204,204,204,204,72,120,6,10,10,7,0,0,48, + 240,48,48,48,48,48,48,48,252,6,10,10,7,0,0,56, + 124,140,12,12,24,48,64,252,252,6,10,10,7,0,0,56, + 124,140,12,56,28,12,196,236,120,6,10,10,7,0,0,24, + 56,56,88,152,152,252,252,24,24,6,10,10,7,0,0,124, + 124,64,120,124,12,4,196,204,120,6,10,10,7,0,0,28, + 48,96,224,248,204,204,204,204,120,6,10,10,7,0,0,252, + 252,140,8,24,16,16,32,32,96,6,10,10,7,0,0,120, + 204,204,236,120,120,204,204,204,120,6,10,10,7,0,0,120, + 204,204,204,204,124,24,56,112,192,2,7,7,4,1,0,192, + 192,0,0,0,192,192,2,9,9,4,1,254,192,192,0,0, + 0,192,192,64,128,7,7,7,8,0,0,6,28,112,192,112, + 28,6,7,3,3,8,0,2,254,0,254,7,7,7,8,0, + 0,192,112,28,6,28,112,192,5,10,10,7,1,0,112,216, + 216,24,48,96,96,0,96,96,11,12,24,14,1,254,15,128, + 56,192,96,96,69,32,143,32,155,32,155,32,159,96,141,192, + 64,0,96,0,31,128,10,10,20,10,0,0,12,0,12,0, + 30,0,22,0,51,0,35,0,63,0,97,128,65,128,227,192, + 8,10,10,9,0,0,254,99,99,99,126,99,99,99,99,254, + 8,10,10,10,1,0,61,99,193,193,192,192,192,193,99,62, + 9,10,20,10,0,0,254,0,99,0,97,128,97,128,97,128, + 97,128,97,128,97,128,99,0,254,0,8,10,10,9,0,0, + 255,99,97,100,124,100,96,97,99,255,8,10,10,8,0,0, + 255,99,97,100,124,100,100,96,96,240,9,10,20,11,1,0, + 61,0,99,0,193,0,193,0,192,0,199,128,195,0,195,0, + 99,0,62,0,10,10,20,11,0,0,243,192,97,128,97,128, + 97,128,127,128,97,128,97,128,97,128,97,128,243,192,4,10, + 10,5,0,0,240,96,96,96,96,96,96,96,96,240,6,11, + 11,7,0,255,60,24,24,24,24,24,24,24,216,216,112,10, + 10,20,11,1,0,247,192,99,0,98,0,100,0,120,0,124, + 0,110,0,103,0,99,128,247,192,8,10,10,9,0,0,240, + 96,96,96,96,96,97,97,99,255,12,10,20,13,0,0,240, + 240,112,224,112,224,89,96,89,96,90,96,78,96,78,96,68, + 96,228,240,10,10,20,10,0,0,225,192,112,128,112,128,88, + 128,76,128,76,128,70,128,67,128,67,128,225,128,9,10,20, + 11,1,0,62,0,99,0,193,128,193,128,193,128,193,128,193, + 128,193,128,99,0,62,0,8,10,10,9,0,0,254,103,99, + 99,99,126,96,96,96,240,9,13,26,11,1,253,62,0,99, + 0,193,128,193,128,193,128,193,128,193,128,193,128,99,0,62, + 0,28,0,14,0,3,128,10,10,20,10,0,0,254,0,103, + 0,99,0,99,0,102,0,124,0,110,0,103,0,99,128,241, + 192,7,10,10,8,0,0,122,198,194,224,120,28,14,134,198, + 252,8,10,10,9,0,0,255,219,153,24,24,24,24,24,24, + 60,9,10,20,10,0,0,243,128,97,0,97,0,97,0,97, + 0,97,0,97,0,97,0,115,0,62,0,10,10,20,10,0, + 0,241,192,96,128,97,128,49,0,51,0,50,0,26,0,30, + 0,12,0,12,0,15,10,20,14,255,0,247,158,99,12,99, + 8,49,136,49,144,51,144,26,208,28,224,12,96,12,96,11, + 10,20,10,0,0,241,192,112,128,57,0,30,0,12,0,14, + 0,23,0,35,128,65,192,227,224,10,10,20,10,0,0,249, + 192,112,128,49,0,57,0,26,0,30,0,12,0,12,0,12, + 0,30,0,8,10,10,9,0,0,255,199,134,140,24,24,49, + 97,227,255,4,13,13,5,0,253,240,192,192,192,192,192,192, + 192,192,192,192,192,240,4,10,10,4,0,0,128,128,192,64, + 96,32,32,48,16,16,4,13,13,5,0,253,240,48,48,48, + 48,48,48,48,48,48,48,48,240,5,5,5,8,1,5,32, + 112,80,216,136,7,1,1,7,0,253,254,3,3,3,5,1, + 8,128,192,32,7,7,7,7,0,0,120,204,12,124,204,204, + 118,7,10,10,8,0,0,224,96,96,124,102,102,102,102,102, + 92,5,7,7,6,0,0,48,88,200,192,192,232,112,7,10, + 10,7,0,0,28,12,12,124,204,204,204,204,204,118,6,7, + 7,6,0,0,56,76,204,252,192,228,120,5,10,10,5,0, + 0,56,104,96,240,96,96,96,96,96,240,7,10,10,7,0, + 253,126,204,204,204,120,64,124,254,130,124,8,10,10,8,0, + 0,224,96,96,108,118,102,102,102,102,231,4,10,10,4,0, + 0,96,96,0,224,96,96,96,96,96,240,4,13,13,4,255, + 253,48,48,0,112,48,48,48,48,48,48,48,176,224,8,10, + 10,8,0,0,224,96,96,110,100,104,120,108,102,231,4,10, + 10,4,0,0,224,96,96,96,96,96,96,96,96,240,12,7, + 14,12,0,0,236,192,119,96,102,96,102,96,102,96,102,96, + 247,112,8,7,7,8,0,0,236,118,102,102,102,102,231,6, + 7,7,7,0,0,120,204,204,204,204,204,120,7,10,10,8, + 0,253,236,118,102,102,102,102,124,96,96,240,7,10,10,7, + 0,253,108,220,204,204,204,204,124,12,12,30,6,7,7,6, + 0,0,220,108,96,96,96,96,240,5,7,7,6,0,0,120, + 200,224,112,56,152,240,5,9,9,5,0,0,32,96,240,96, + 96,96,104,112,48,8,7,7,7,255,0,238,102,102,102,102, + 102,59,8,7,7,7,255,0,247,98,98,52,52,24,24,10, + 7,14,10,0,0,238,192,100,128,118,128,55,0,59,0,59, + 0,18,0,7,7,7,7,0,0,238,108,56,56,56,108,238, + 8,10,10,7,255,253,247,98,50,52,28,28,8,8,56,48, + 6,7,7,6,0,0,252,156,24,48,100,228,252,5,13,13, + 7,1,253,24,48,48,48,48,96,192,96,48,48,48,48,24, + 1,12,12,3,1,254,128,128,128,128,128,128,128,128,128,128, + 128,128,5,13,13,7,0,253,192,96,96,96,96,48,24,48, + 96,96,96,96,192,7,4,4,8,0,3,96,242,158,12,255 + }; +/* + Fontname: -Adobe-Times-Bold-R-Normal--17-120-100-100-P-88-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=17 h=16 x= 2 y= 9 dx=17 dy= 0 ascent=16 len=33 + Font Bounding box w=19 h=27 x=-2 y=-7 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =11 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB12[3887] U8G_SECTION(".progmem.u8g_font_timB12") = { + 0,19,27,254,249,11,2,42,5,41,32,255,252,16,252,11, + 252,0,0,0,5,0,1,2,11,11,6,2,0,192,192,192, + 192,192,128,128,0,0,192,192,5,5,5,9,1,6,216,216, + 216,144,144,8,11,11,8,0,0,18,18,18,127,36,36,36, + 254,72,72,72,7,13,13,8,0,255,16,122,150,210,240,120, + 60,30,22,146,210,188,16,12,12,24,16,2,0,48,128,111, + 0,201,0,201,0,202,0,210,96,100,208,9,144,9,144,17, + 144,17,160,32,192,10,11,22,14,2,0,28,0,38,0,38, + 0,52,0,57,192,120,128,156,128,141,0,198,64,231,192,123, + 128,2,5,5,5,2,6,192,192,192,128,128,4,14,14,6, + 1,253,16,32,96,64,192,192,192,192,192,192,64,96,32,16, + 4,14,14,6,0,253,128,64,96,32,48,48,48,48,48,48, + 32,96,64,128,5,7,7,8,1,4,32,168,248,112,248,168, + 32,7,8,8,9,1,0,16,16,16,254,254,16,16,16,2, + 5,5,4,1,253,192,192,64,64,128,4,2,2,5,0,3, + 240,240,2,2,2,4,1,0,192,192,4,11,11,5,0,0, + 16,48,32,32,96,64,64,64,192,128,128,6,11,11,8,1, + 0,48,72,204,204,204,204,204,204,204,72,48,6,11,11,8, + 1,0,16,240,48,48,48,48,48,48,48,48,252,7,11,11, + 8,0,0,56,124,156,12,12,8,24,16,34,124,252,7,11, + 11,8,0,0,56,124,140,8,16,60,14,6,198,204,120,7, + 11,11,8,0,0,4,12,28,44,44,76,140,254,254,12,12, + 8,11,11,8,0,0,31,62,32,56,124,14,6,6,198,204, + 112,6,11,11,8,1,0,12,48,96,96,240,204,204,204,204, + 72,48,7,11,11,8,0,0,126,126,132,4,12,8,8,24, + 16,48,32,7,11,11,8,0,0,56,68,198,228,120,60,78, + 198,198,68,56,6,11,11,8,1,0,48,72,204,204,204,204, + 124,24,24,48,192,2,7,7,5,1,0,192,192,0,0,0, + 192,192,2,10,10,5,1,253,192,192,0,0,0,192,192,64, + 64,128,8,8,8,9,0,0,3,14,56,192,192,56,14,3, + 7,5,5,9,1,2,254,254,0,254,254,8,8,8,9,0, + 0,192,112,28,3,3,28,112,192,6,11,11,8,1,0,56, + 204,204,12,12,8,16,32,0,96,96,13,13,26,16,1,254, + 7,128,28,96,48,16,103,80,204,200,216,200,216,136,217,144, + 217,176,78,224,32,0,24,96,7,128,11,11,22,12,0,0, + 4,0,14,0,14,0,27,0,19,0,51,0,33,128,127,128, + 64,192,192,192,225,224,9,11,22,10,1,0,252,0,102,0, + 99,0,99,0,102,0,126,0,99,0,97,128,97,128,99,0, + 254,0,9,11,22,11,1,0,30,128,99,128,65,128,192,128, + 192,0,192,0,192,0,192,0,96,128,115,0,62,0,9,11, + 22,11,1,0,252,0,102,0,99,0,97,128,97,128,97,128, + 97,128,97,128,99,0,102,0,252,0,8,11,11,10,1,0, + 255,99,97,96,98,126,98,96,97,99,255,8,11,11,10,1, + 0,255,99,97,96,98,126,98,96,96,96,248,10,11,22,12, + 1,0,30,128,99,128,65,128,192,128,192,0,192,0,199,192, + 193,128,193,128,97,128,63,0,10,11,22,12,1,0,243,192, + 97,128,97,128,97,128,97,128,127,128,97,128,97,128,97,128, + 97,128,243,192,4,11,11,6,1,0,240,96,96,96,96,96, + 96,96,96,96,240,6,13,13,8,1,254,60,24,24,24,24, + 24,24,24,24,24,216,208,96,11,11,22,13,1,0,251,192, + 97,0,98,0,100,0,104,0,120,0,108,0,102,0,99,0, + 97,128,251,224,9,11,22,11,1,0,240,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,128,96,128,97,128,255,128, + 14,11,22,15,0,0,224,28,112,24,112,56,120,56,88,88, + 76,88,76,152,70,152,71,24,67,24,226,60,10,11,22,12, + 1,0,241,192,112,128,88,128,88,128,76,128,70,128,71,128, + 67,128,65,128,65,128,224,128,10,11,22,12,1,0,30,0, + 97,128,64,128,192,192,192,192,192,192,192,192,192,192,64,128, + 97,128,30,0,8,11,11,10,1,0,254,103,99,99,102,124, + 96,96,96,96,240,10,14,28,12,1,253,30,0,97,128,64, + 128,192,192,192,192,192,192,192,192,192,192,64,128,97,128,63, + 0,14,0,6,0,1,128,10,11,22,12,1,0,254,0,103, + 0,99,0,99,0,102,0,124,0,108,0,102,0,99,0,97, + 128,243,192,8,11,11,9,0,0,61,67,193,224,120,60,14, + 7,131,194,188,10,11,22,11,1,0,255,192,204,192,140,64, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,30,0, + 10,11,22,12,1,0,241,192,96,128,96,128,96,128,96,128, + 96,128,96,128,96,128,96,128,33,0,30,0,11,11,22,12, + 0,0,248,224,48,64,48,64,24,128,24,128,13,0,13,0, + 7,0,6,0,2,0,2,0,17,11,33,17,0,0,251,239, + 128,112,195,0,48,194,0,56,226,0,25,230,0,29,100,0, + 13,124,0,15,56,0,6,56,0,6,16,0,2,16,0,10, + 11,22,12,1,0,251,192,113,0,58,0,58,0,28,0,14, + 0,30,0,23,0,35,0,67,128,231,192,11,11,22,12,0, + 0,248,224,112,64,56,128,24,128,29,0,15,0,6,0,6, + 0,6,0,6,0,15,0,10,11,22,11,0,0,255,192,193, + 192,131,128,7,0,14,0,14,0,28,0,56,0,112,64,240, + 192,255,192,3,14,14,6,1,253,224,192,192,192,192,192,192, + 192,192,192,192,192,192,224,4,11,11,5,0,0,128,192,64, + 64,96,32,32,32,48,16,16,3,14,14,6,1,253,224,96, + 96,96,96,96,96,96,96,96,96,96,96,224,7,7,7,9, + 1,4,16,56,40,108,68,198,130,8,1,1,8,0,252,255, + 3,3,3,6,2,9,192,64,32,8,8,8,8,0,0,56, + 204,204,28,108,204,205,118,8,11,11,9,0,0,224,96,96, + 108,118,99,99,99,99,118,236,6,8,8,7,0,0,56,108, + 204,192,192,192,100,56,8,11,11,9,0,0,14,6,6,54, + 110,198,198,198,198,78,55,6,8,8,7,0,0,56,108,204, + 252,192,192,100,56,6,11,11,6,0,0,24,108,96,240,96, + 96,96,96,96,96,240,7,12,12,8,0,252,50,78,204,204, + 200,112,64,252,126,130,132,120,8,11,11,9,0,0,224,96, + 96,108,118,102,102,102,102,102,239,4,11,11,5,0,0,96, + 96,0,224,96,96,96,96,96,96,240,5,15,15,5,254,252, + 24,24,0,56,24,24,24,24,24,24,24,24,216,208,96,9, + 11,22,9,0,0,224,0,96,0,96,0,111,0,100,0,104, + 0,120,0,124,0,110,0,103,0,247,128,4,11,11,5,0, + 0,224,96,96,96,96,96,96,96,96,96,240,12,8,16,13, + 0,0,237,192,119,96,102,96,102,96,102,96,102,96,102,96, + 246,240,8,8,8,9,0,0,236,126,102,102,102,102,102,247, + 7,8,8,8,0,0,56,108,198,198,198,198,108,56,8,12, + 12,9,0,252,236,118,99,99,99,99,118,108,96,96,96,240, + 8,12,12,9,0,252,50,110,198,198,198,198,110,54,6,6, + 6,15,6,8,8,7,0,0,236,124,96,96,96,96,96,240, + 5,8,8,6,0,0,120,200,224,112,56,152,216,176,5,11, + 11,6,0,0,32,32,96,240,96,96,96,96,96,104,48,8, + 8,8,9,0,0,238,102,102,102,102,102,111,54,8,8,8, + 8,0,0,247,98,98,100,52,56,24,16,12,8,16,12,0, + 0,239,112,102,32,102,32,119,64,55,64,57,128,25,128,17, + 0,7,8,8,8,0,0,246,116,56,56,24,60,76,238,8, + 12,12,8,0,252,247,98,98,52,52,28,24,24,16,16,224, + 192,7,8,8,7,0,0,254,140,152,24,48,114,98,254,4, + 14,14,7,1,253,48,96,96,96,96,64,128,64,96,96,96, + 96,96,48,1,14,14,4,1,253,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,4,14,14,7,1,253,192,96,96, + 96,96,32,16,32,96,96,96,96,96,192,9,4,8,9,0, + 4,48,0,120,128,159,0,14,0,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,0,0,0,5,0,1, + 2,12,12,6,2,252,192,192,0,0,64,64,64,192,192,192, + 192,192,6,12,12,8,1,254,4,4,56,76,204,208,208,224, + 100,56,64,64,8,11,11,8,0,0,28,38,38,48,48,124, + 48,16,113,158,110,6,7,7,8,1,1,180,120,204,132,204, + 120,180,8,11,11,8,0,0,227,98,50,52,28,126,24,126, + 24,24,126,1,15,15,4,1,253,128,128,128,128,128,128,0, + 0,0,128,128,128,128,128,128,6,15,15,8,1,252,56,76, + 76,96,48,120,156,204,228,120,56,24,200,200,112,5,2,2, + 6,0,9,216,216,12,11,22,12,255,0,15,0,48,192,71, + 32,72,160,152,16,152,16,152,16,72,160,71,32,48,192,15, + 0,5,7,7,5,0,4,96,144,112,176,216,0,248,7,7, + 7,8,0,0,18,54,108,216,108,54,18,7,6,6,9,1, + 1,254,254,2,2,2,2,4,2,2,5,0,3,240,240,12, + 11,22,12,0,0,15,0,48,192,78,32,73,32,137,16,142, + 16,138,16,73,32,93,32,48,192,15,0,5,1,1,6,0, + 9,248,4,5,5,7,1,6,96,144,144,144,96,7,9,9, + 9,1,0,16,16,254,254,16,16,0,254,254,4,7,7,5, + 0,4,96,240,176,32,64,240,240,4,7,7,5,0,4,96, + 176,48,96,48,176,96,3,3,3,6,1,9,96,64,128,8, + 11,11,9,0,253,238,102,102,102,102,102,111,118,64,96,96, + 7,15,15,9,1,252,62,116,244,244,244,244,116,52,20,20, + 20,20,20,20,20,2,2,2,4,1,4,192,192,5,4,4, + 6,0,252,32,48,136,112,4,7,7,5,1,4,96,224,96, + 96,96,96,240,4,7,7,6,1,4,96,144,144,144,96,0, + 240,7,7,7,8,0,0,144,216,108,54,108,216,144,11,11, + 22,12,0,0,96,128,225,0,97,0,98,0,100,64,100,192, + 249,192,10,192,19,224,32,192,32,192,10,11,22,12,0,0, + 97,0,225,0,98,0,98,0,100,0,107,128,254,192,16,128, + 17,0,35,192,39,192,11,11,22,12,0,0,96,128,177,0, + 49,0,98,0,52,64,180,192,105,192,10,192,19,224,32,192, + 32,192,6,11,11,8,1,253,24,24,0,16,32,64,192,192, + 204,204,112,11,15,30,12,0,0,48,0,24,0,4,0,0, + 0,4,0,14,0,14,0,27,0,19,0,51,0,33,128,127, + 128,64,192,192,192,225,224,11,15,30,12,0,0,1,128,3, + 0,4,0,0,0,4,0,14,0,14,0,27,0,19,0,51, + 0,33,128,127,128,64,192,192,192,225,224,11,15,30,12,0, + 0,4,0,14,0,17,0,0,0,4,0,14,0,14,0,27, + 0,19,0,51,0,33,128,127,128,64,192,192,192,225,224,11, + 14,28,12,0,0,29,0,46,0,0,0,4,0,14,0,14, + 0,27,0,19,0,51,0,33,128,127,128,64,192,192,192,225, + 224,11,14,28,12,0,0,27,0,27,0,0,0,4,0,14, + 0,14,0,27,0,19,0,51,0,33,128,127,128,64,192,192, + 192,225,224,11,16,32,12,0,0,6,0,9,0,9,0,6, + 0,0,0,4,0,14,0,14,0,27,0,19,0,51,0,33, + 128,127,128,64,192,192,192,225,224,14,11,22,16,1,0,15, + 248,7,24,11,8,11,0,19,32,31,224,35,32,35,0,67, + 4,67,12,231,252,9,15,30,11,1,252,30,128,99,128,65, + 128,192,128,192,0,192,0,192,0,192,0,96,128,115,0,62, + 0,8,0,12,0,34,0,28,0,8,15,15,10,1,0,96, + 48,8,0,255,99,97,96,98,126,98,96,97,99,255,8,15, + 15,10,1,0,6,12,16,0,255,99,97,96,98,126,98,96, + 97,99,255,8,15,15,10,1,0,8,28,34,0,255,99,97, + 96,98,126,98,96,97,99,255,8,14,14,10,1,0,102,102, + 0,255,99,97,96,98,126,98,96,97,99,255,5,15,15,6, + 0,0,192,96,16,0,120,48,48,48,48,48,48,48,48,48, + 120,4,15,15,6,1,0,48,96,128,0,240,96,96,96,96, + 96,96,96,96,96,240,5,15,15,6,0,0,32,112,136,0, + 120,48,48,48,48,48,48,48,48,48,120,6,14,14,6,0, + 0,204,204,0,120,48,48,48,48,48,48,48,48,48,120,9, + 11,22,11,1,0,252,0,102,0,99,0,97,128,97,128,249, + 128,97,128,97,128,99,0,102,0,252,0,10,14,28,12,1, + 0,29,0,46,0,0,0,241,192,112,128,88,128,88,128,76, + 128,70,128,71,128,67,128,65,128,65,128,224,128,10,15,30, + 12,1,0,48,0,24,0,4,0,0,0,30,0,97,128,64, + 128,192,192,192,192,192,192,192,192,192,192,64,128,97,128,30, + 0,10,15,30,12,1,0,3,0,6,0,8,0,0,0,30, + 0,97,128,64,128,192,192,192,192,192,192,192,192,192,192,64, + 128,97,128,30,0,10,15,30,12,1,0,4,0,14,0,17, + 0,0,0,30,0,97,128,64,128,192,192,192,192,192,192,192, + 192,192,192,64,128,97,128,30,0,10,14,28,12,1,0,29, + 0,46,0,0,0,30,0,97,128,64,128,192,192,192,192,192, + 192,192,192,192,192,64,128,97,128,30,0,10,14,28,12,1, + 0,51,0,51,0,0,0,30,0,97,128,64,128,192,192,192, + 192,192,192,192,192,192,192,64,128,97,128,30,0,7,8,8, + 9,1,0,130,198,108,56,56,108,198,130,10,13,26,13,1, + 255,0,64,30,128,97,128,65,128,194,192,194,192,196,192,200, + 192,200,192,80,128,97,128,62,0,64,0,10,15,30,12,1, + 0,48,0,24,0,4,0,0,0,241,192,96,128,96,128,96, + 128,96,128,96,128,96,128,96,128,96,128,33,0,30,0,10, + 15,30,12,1,0,3,0,6,0,8,0,0,0,241,192,96, + 128,96,128,96,128,96,128,96,128,96,128,96,128,96,128,33, + 0,30,0,10,15,30,12,1,0,4,0,14,0,17,0,0, + 0,241,192,96,128,96,128,96,128,96,128,96,128,96,128,96, + 128,96,128,33,0,30,0,10,14,28,12,1,0,51,0,51, + 0,0,0,241,192,96,128,96,128,96,128,96,128,96,128,96, + 128,96,128,96,128,33,0,30,0,11,15,30,12,0,0,1, + 128,3,0,4,0,0,0,248,224,112,64,56,128,24,128,29, + 0,15,0,6,0,6,0,6,0,6,0,15,0,8,11,11, + 10,1,0,240,96,126,103,99,99,103,126,96,96,240,8,11, + 11,9,0,0,24,38,102,102,108,98,99,99,99,98,236,8, + 12,12,8,0,0,48,16,8,0,56,204,204,28,108,204,205, + 118,8,12,12,8,0,0,24,16,32,0,56,204,204,28,108, + 204,205,118,8,12,12,8,0,0,16,56,68,0,56,204,204, + 28,108,204,205,118,8,11,11,8,0,0,52,88,0,56,204, + 204,28,108,204,205,118,8,11,11,8,0,0,108,108,0,56, + 204,204,28,108,204,205,118,8,13,13,8,0,0,16,40,40, + 16,0,56,204,204,28,108,204,205,118,10,8,16,12,1,0, + 51,128,206,192,204,192,31,192,108,0,204,0,214,64,99,128, + 6,12,12,7,0,252,56,108,204,192,192,192,100,56,32,48, + 136,112,6,12,12,7,0,0,48,16,8,0,56,108,204,252, + 192,192,100,56,6,12,12,7,0,0,24,16,32,0,56,108, + 204,252,192,192,100,56,6,12,12,7,0,0,16,56,68,0, + 56,108,204,252,192,192,100,56,6,11,11,7,0,0,108,108, + 0,56,108,204,252,192,192,100,56,4,12,12,5,0,0,192, + 64,32,0,224,96,96,96,96,96,96,240,4,12,12,5,0, + 0,48,32,64,0,224,96,96,96,96,96,96,240,5,12,12, + 5,255,0,32,112,136,0,112,48,48,48,48,48,48,120,5, + 11,11,5,255,0,216,216,0,112,48,48,48,48,48,48,120, + 7,11,11,8,0,0,108,48,216,60,108,198,198,198,198,108, + 56,8,11,11,9,0,0,52,88,0,236,126,102,102,102,102, + 102,247,7,12,12,8,0,0,48,16,8,0,56,108,198,198, + 198,198,108,56,7,12,12,8,0,0,24,16,32,0,56,108, + 198,198,198,198,108,56,7,12,12,8,0,0,16,56,68,0, + 56,108,198,198,198,198,108,56,7,11,11,8,0,0,52,88, + 0,56,108,198,198,198,198,108,56,7,11,11,8,0,0,108, + 108,0,56,108,198,198,198,198,108,56,8,8,8,9,0,0, + 24,24,0,255,255,0,24,24,7,10,10,8,0,255,2,60, + 108,206,214,214,230,108,120,128,8,12,12,9,0,0,48,16, + 8,0,238,102,102,102,102,102,111,54,8,12,12,9,0,0, + 12,8,16,0,238,102,102,102,102,102,111,54,8,12,12,9, + 0,0,16,56,68,0,238,102,102,102,102,102,111,54,8,11, + 11,9,0,0,108,108,0,238,102,102,102,102,102,111,54,8, + 16,16,8,0,252,12,8,16,0,247,98,98,52,52,28,24, + 24,16,16,224,192,8,15,15,9,0,252,224,96,96,108,118, + 99,99,99,99,114,108,96,96,96,240,8,15,15,8,0,252, + 108,108,0,247,98,98,52,52,28,24,24,16,16,224,192}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--17-120-100-100-P-88-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=17 h=15 x= 2 y= 9 dx=17 dy= 0 ascent=12 len=33 + Font Bounding box w=19 h=27 x=-2 y=-7 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =11 descent=-4 + Max Font ascent =12 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB12r[1834] U8G_SECTION(".progmem.u8g_font_timB12r") = { + 0,19,27,254,249,11,2,42,5,41,32,127,252,12,252,11, + 252,0,0,0,5,0,1,2,11,11,6,2,0,192,192,192, + 192,192,128,128,0,0,192,192,5,5,5,9,1,6,216,216, + 216,144,144,8,11,11,8,0,0,18,18,18,127,36,36,36, + 254,72,72,72,7,13,13,8,0,255,16,122,150,210,240,120, + 60,30,22,146,210,188,16,12,12,24,16,2,0,48,128,111, + 0,201,0,201,0,202,0,210,96,100,208,9,144,9,144,17, + 144,17,160,32,192,10,11,22,14,2,0,28,0,38,0,38, + 0,52,0,57,192,120,128,156,128,141,0,198,64,231,192,123, + 128,2,5,5,5,2,6,192,192,192,128,128,4,14,14,6, + 1,253,16,32,96,64,192,192,192,192,192,192,64,96,32,16, + 4,14,14,6,0,253,128,64,96,32,48,48,48,48,48,48, + 32,96,64,128,5,7,7,8,1,4,32,168,248,112,248,168, + 32,7,8,8,9,1,0,16,16,16,254,254,16,16,16,2, + 5,5,4,1,253,192,192,64,64,128,4,2,2,5,0,3, + 240,240,2,2,2,4,1,0,192,192,4,11,11,5,0,0, + 16,48,32,32,96,64,64,64,192,128,128,6,11,11,8,1, + 0,48,72,204,204,204,204,204,204,204,72,48,6,11,11,8, + 1,0,16,240,48,48,48,48,48,48,48,48,252,7,11,11, + 8,0,0,56,124,156,12,12,8,24,16,34,124,252,7,11, + 11,8,0,0,56,124,140,8,16,60,14,6,198,204,120,7, + 11,11,8,0,0,4,12,28,44,44,76,140,254,254,12,12, + 8,11,11,8,0,0,31,62,32,56,124,14,6,6,198,204, + 112,6,11,11,8,1,0,12,48,96,96,240,204,204,204,204, + 72,48,7,11,11,8,0,0,126,126,132,4,12,8,8,24, + 16,48,32,7,11,11,8,0,0,56,68,198,228,120,60,78, + 198,198,68,56,6,11,11,8,1,0,48,72,204,204,204,204, + 124,24,24,48,192,2,7,7,5,1,0,192,192,0,0,0, + 192,192,2,10,10,5,1,253,192,192,0,0,0,192,192,64, + 64,128,8,8,8,9,0,0,3,14,56,192,192,56,14,3, + 7,5,5,9,1,2,254,254,0,254,254,8,8,8,9,0, + 0,192,112,28,3,3,28,112,192,6,11,11,8,1,0,56, + 204,204,12,12,8,16,32,0,96,96,13,13,26,16,1,254, + 7,128,28,96,48,16,103,80,204,200,216,200,216,136,217,144, + 217,176,78,224,32,0,24,96,7,128,11,11,22,12,0,0, + 4,0,14,0,14,0,27,0,19,0,51,0,33,128,127,128, + 64,192,192,192,225,224,9,11,22,10,1,0,252,0,102,0, + 99,0,99,0,102,0,126,0,99,0,97,128,97,128,99,0, + 254,0,9,11,22,11,1,0,30,128,99,128,65,128,192,128, + 192,0,192,0,192,0,192,0,96,128,115,0,62,0,9,11, + 22,11,1,0,252,0,102,0,99,0,97,128,97,128,97,128, + 97,128,97,128,99,0,102,0,252,0,8,11,11,10,1,0, + 255,99,97,96,98,126,98,96,97,99,255,8,11,11,10,1, + 0,255,99,97,96,98,126,98,96,96,96,248,10,11,22,12, + 1,0,30,128,99,128,65,128,192,128,192,0,192,0,199,192, + 193,128,193,128,97,128,63,0,10,11,22,12,1,0,243,192, + 97,128,97,128,97,128,97,128,127,128,97,128,97,128,97,128, + 97,128,243,192,4,11,11,6,1,0,240,96,96,96,96,96, + 96,96,96,96,240,6,13,13,8,1,254,60,24,24,24,24, + 24,24,24,24,24,216,208,96,11,11,22,13,1,0,251,192, + 97,0,98,0,100,0,104,0,120,0,108,0,102,0,99,0, + 97,128,251,224,9,11,22,11,1,0,240,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,128,96,128,97,128,255,128, + 14,11,22,15,0,0,224,28,112,24,112,56,120,56,88,88, + 76,88,76,152,70,152,71,24,67,24,226,60,10,11,22,12, + 1,0,241,192,112,128,88,128,88,128,76,128,70,128,71,128, + 67,128,65,128,65,128,224,128,10,11,22,12,1,0,30,0, + 97,128,64,128,192,192,192,192,192,192,192,192,192,192,64,128, + 97,128,30,0,8,11,11,10,1,0,254,103,99,99,102,124, + 96,96,96,96,240,10,14,28,12,1,253,30,0,97,128,64, + 128,192,192,192,192,192,192,192,192,192,192,64,128,97,128,63, + 0,14,0,6,0,1,128,10,11,22,12,1,0,254,0,103, + 0,99,0,99,0,102,0,124,0,108,0,102,0,99,0,97, + 128,243,192,8,11,11,9,0,0,61,67,193,224,120,60,14, + 7,131,194,188,10,11,22,11,1,0,255,192,204,192,140,64, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,30,0, + 10,11,22,12,1,0,241,192,96,128,96,128,96,128,96,128, + 96,128,96,128,96,128,96,128,33,0,30,0,11,11,22,12, + 0,0,248,224,48,64,48,64,24,128,24,128,13,0,13,0, + 7,0,6,0,2,0,2,0,17,11,33,17,0,0,251,239, + 128,112,195,0,48,194,0,56,226,0,25,230,0,29,100,0, + 13,124,0,15,56,0,6,56,0,6,16,0,2,16,0,10, + 11,22,12,1,0,251,192,113,0,58,0,58,0,28,0,14, + 0,30,0,23,0,35,0,67,128,231,192,11,11,22,12,0, + 0,248,224,112,64,56,128,24,128,29,0,15,0,6,0,6, + 0,6,0,6,0,15,0,10,11,22,11,0,0,255,192,193, + 192,131,128,7,0,14,0,14,0,28,0,56,0,112,64,240, + 192,255,192,3,14,14,6,1,253,224,192,192,192,192,192,192, + 192,192,192,192,192,192,224,4,11,11,5,0,0,128,192,64, + 64,96,32,32,32,48,16,16,3,14,14,6,1,253,224,96, + 96,96,96,96,96,96,96,96,96,96,96,224,7,7,7,9, + 1,4,16,56,40,108,68,198,130,8,1,1,8,0,252,255, + 3,3,3,6,2,9,192,64,32,8,8,8,8,0,0,56, + 204,204,28,108,204,205,118,8,11,11,9,0,0,224,96,96, + 108,118,99,99,99,99,118,236,6,8,8,7,0,0,56,108, + 204,192,192,192,100,56,8,11,11,9,0,0,14,6,6,54, + 110,198,198,198,198,78,55,6,8,8,7,0,0,56,108,204, + 252,192,192,100,56,6,11,11,6,0,0,24,108,96,240,96, + 96,96,96,96,96,240,7,12,12,8,0,252,50,78,204,204, + 200,112,64,252,126,130,132,120,8,11,11,9,0,0,224,96, + 96,108,118,102,102,102,102,102,239,4,11,11,5,0,0,96, + 96,0,224,96,96,96,96,96,96,240,5,15,15,5,254,252, + 24,24,0,56,24,24,24,24,24,24,24,24,216,208,96,9, + 11,22,9,0,0,224,0,96,0,96,0,111,0,100,0,104, + 0,120,0,124,0,110,0,103,0,247,128,4,11,11,5,0, + 0,224,96,96,96,96,96,96,96,96,96,240,12,8,16,13, + 0,0,237,192,119,96,102,96,102,96,102,96,102,96,102,96, + 246,240,8,8,8,9,0,0,236,126,102,102,102,102,102,247, + 7,8,8,8,0,0,56,108,198,198,198,198,108,56,8,12, + 12,9,0,252,236,118,99,99,99,99,118,108,96,96,96,240, + 8,12,12,9,0,252,50,110,198,198,198,198,110,54,6,6, + 6,15,6,8,8,7,0,0,236,124,96,96,96,96,96,240, + 5,8,8,6,0,0,120,200,224,112,56,152,216,176,5,11, + 11,6,0,0,32,32,96,240,96,96,96,96,96,104,48,8, + 8,8,9,0,0,238,102,102,102,102,102,111,54,8,8,8, + 8,0,0,247,98,98,100,52,56,24,16,12,8,16,12,0, + 0,239,112,102,32,102,32,119,64,55,64,57,128,25,128,17, + 0,7,8,8,8,0,0,246,116,56,56,24,60,76,238,8, + 12,12,8,0,252,247,98,98,52,52,28,24,24,16,16,224, + 192,7,8,8,7,0,0,254,140,152,24,48,114,98,254,4, + 14,14,7,1,253,48,96,96,96,96,64,128,64,96,96,96, + 96,96,48,1,14,14,4,1,253,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,4,14,14,7,1,253,192,96,96, + 96,96,32,16,32,96,96,96,96,96,192,9,4,8,9,0, + 4,48,0,120,128,159,0,14,0,255}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--20-140-100-100-P-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w=18 h=17 x= 2 y=11 dx=19 dy= 0 ascent=17 len=39 + Font Bounding box w=22 h=28 x=-2 y=-7 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =17 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB14[4851] U8G_SECTION(".progmem.u8g_font_timB14") = { + 0,22,28,254,249,13,2,178,6,78,32,255,252,17,252,13, + 252,0,0,0,5,0,1,3,13,13,6,1,0,64,224,224, + 224,224,224,224,64,64,0,224,224,224,6,6,6,10,2,7, + 204,204,204,204,136,136,10,12,24,9,0,0,25,128,25,128, + 25,128,127,192,127,192,51,0,51,0,255,128,255,128,102,0, + 102,0,102,0,8,16,16,9,0,254,24,126,219,219,216,248, + 124,62,31,31,27,219,219,126,24,24,14,13,26,18,1,0, + 60,24,119,240,226,96,226,64,228,192,253,128,115,120,6,236, + 6,196,13,196,25,200,49,248,48,224,13,13,26,16,2,0, + 30,0,51,0,51,0,51,0,58,0,28,240,60,96,94,64, + 207,128,199,128,227,192,255,248,120,240,2,6,6,5,1,7, + 192,192,192,192,128,128,5,17,17,6,1,252,8,16,48,96, + 96,224,192,192,192,192,192,224,96,96,48,16,8,5,17,17, + 6,0,252,128,64,96,48,48,56,24,24,24,24,24,56,48, + 32,96,64,128,8,9,9,9,0,4,24,24,219,255,60,255, + 219,24,24,10,10,20,11,0,0,12,0,12,0,12,0,12, + 0,255,192,255,192,12,0,12,0,12,0,12,0,4,6,6, + 5,0,253,112,112,112,48,96,192,5,3,3,6,0,4,248, + 248,248,3,3,3,5,1,0,224,224,224,5,13,13,6,0, + 0,24,24,24,48,48,48,32,96,96,96,192,192,192,8,13, + 13,9,0,0,60,102,103,231,231,231,231,231,231,231,102,102, + 60,8,13,13,9,0,0,28,60,252,28,28,28,28,28,28, + 28,28,28,127,8,13,13,9,0,0,60,126,207,135,7,7, + 6,12,24,49,99,255,255,9,13,26,9,0,0,60,0,126, + 0,143,0,7,0,14,0,28,0,62,0,15,0,7,128,3, + 128,195,0,230,0,124,0,8,13,13,9,0,0,14,30,30, + 46,46,78,206,142,255,255,14,14,14,9,13,26,9,0,0, + 63,0,63,0,62,0,64,0,120,0,126,0,63,0,7,128, + 3,128,3,128,195,0,230,0,252,0,8,13,13,9,0,0, + 7,28,56,112,96,252,230,231,231,231,231,102,60,8,13,13, + 9,0,0,255,255,254,134,12,12,12,24,24,56,48,48,112, + 8,13,13,9,0,0,60,102,227,227,246,124,60,126,207,199, + 195,231,126,8,13,13,9,0,0,60,102,231,231,231,231,103, + 63,7,6,14,60,240,3,9,9,5,1,0,224,224,224,0, + 0,0,224,224,224,4,12,12,5,0,253,112,112,112,0,0, + 0,112,112,112,48,96,192,9,9,18,11,1,0,3,128,15, + 0,60,0,240,0,192,0,240,0,60,0,15,0,3,128,9, + 6,12,11,1,2,255,128,255,128,0,0,0,0,255,128,255, + 128,9,9,18,11,1,0,224,0,120,0,30,0,7,128,1, + 128,7,128,30,0,120,0,224,0,7,13,13,9,1,0,124, + 206,238,238,78,12,24,16,16,0,56,56,56,15,16,32,17, + 1,253,3,224,15,56,56,12,48,4,115,182,103,118,231,118, + 238,102,238,102,238,236,239,252,103,184,112,0,56,0,30,0, + 7,240,14,13,26,14,0,0,3,0,3,128,7,128,5,192, + 13,192,8,192,24,224,16,96,31,240,48,112,32,56,96,56, + 248,252,10,13,26,13,1,0,254,0,115,128,113,192,113,192, + 113,192,115,128,126,0,115,128,113,192,113,192,113,192,115,128, + 255,0,12,13,26,14,1,0,15,144,56,240,112,112,112,48, + 224,0,224,0,224,0,224,0,224,0,112,0,112,48,60,224, + 15,128,12,13,26,14,1,0,255,0,113,192,112,224,112,96, + 112,112,112,112,112,112,112,112,112,112,112,96,112,224,113,192, + 255,0,10,13,26,13,2,0,255,192,112,192,112,64,112,0, + 112,0,113,0,127,0,113,0,112,0,112,0,112,64,112,192, + 255,192,10,13,26,12,2,0,255,192,112,192,112,64,112,0, + 112,0,113,0,127,0,113,0,112,0,112,0,112,0,112,0, + 248,0,13,13,26,15,1,0,15,144,56,240,112,112,112,48, + 224,0,224,0,224,248,224,112,224,112,112,112,112,112,56,240, + 15,192,13,13,26,15,1,0,248,248,112,112,112,112,112,112, + 112,112,112,112,127,240,112,112,112,112,112,112,112,112,112,112, + 249,248,5,13,13,7,1,0,248,112,112,112,112,112,112,112, + 112,112,112,112,248,8,15,15,9,0,254,31,14,14,14,14, + 14,14,14,14,14,14,14,238,236,120,12,13,26,15,2,0, + 249,240,112,192,113,128,115,0,118,0,124,0,124,0,126,0, + 119,0,119,128,115,192,113,224,248,240,10,13,26,13,2,0, + 248,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,64,112,192,255,192,15,13,26,18,2,0, + 240,30,112,28,120,60,120,60,124,92,92,92,94,220,78,156, + 79,156,71,28,71,28,67,28,226,62,12,13,26,14,1,0, + 240,112,120,32,120,32,124,32,94,32,78,32,79,32,71,160, + 67,160,67,224,65,224,64,224,224,224,13,13,26,15,1,0, + 15,128,56,224,112,112,112,112,224,56,224,56,224,56,224,56, + 224,56,112,112,112,112,56,224,15,128,10,13,26,12,1,0, + 255,0,115,128,113,192,113,192,113,192,115,128,127,0,112,0, + 112,0,112,0,112,0,112,0,248,0,13,17,34,15,1,252, + 15,128,56,224,112,112,112,112,224,56,224,56,224,56,224,56, + 224,56,112,112,112,112,56,224,15,128,15,0,7,128,3,224, + 0,248,12,13,26,14,1,0,255,0,115,128,113,192,113,192, + 113,192,115,128,127,0,119,0,115,128,113,192,113,192,112,224, + 248,240,9,13,26,11,1,0,30,128,99,128,225,128,224,0, + 248,0,124,0,63,0,15,128,7,128,3,128,195,128,231,0, + 188,0,11,13,26,13,1,0,255,224,206,96,142,32,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 31,0,12,13,26,14,1,0,248,240,112,32,112,32,112,32, + 112,32,112,32,112,32,112,32,112,32,112,32,112,96,56,192, + 31,128,14,13,26,14,0,0,252,124,120,24,56,16,60,48, + 28,32,30,96,30,64,14,192,15,128,7,128,7,0,3,0, + 2,0,18,13,39,19,1,0,253,247,192,121,225,128,56,225, + 0,60,227,0,60,226,0,28,114,0,30,118,0,14,116,0, + 14,188,0,15,60,0,7,60,0,6,24,0,6,24,0,14, + 13,26,14,0,0,248,120,120,48,60,96,28,192,15,128,7, + 0,7,128,7,192,13,192,24,224,48,112,96,120,240,252,13, + 13,26,14,1,0,252,120,120,48,56,96,60,64,30,192,14, + 128,15,128,7,0,7,0,7,0,7,0,7,0,31,192,10, + 13,26,13,2,0,255,192,195,192,131,128,7,128,15,0,14, + 0,30,0,60,0,56,0,120,0,240,64,224,192,255,192,4, + 16,16,6,1,253,240,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,240,5,13,13,5,0,0,192,192,192,96,96, + 96,32,48,48,48,24,24,24,4,16,16,6,1,253,240,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,240,8,7, + 7,11,1,6,24,24,60,36,102,195,195,9,2,4,9,0, + 252,255,128,255,128,5,3,3,6,0,10,224,112,24,8,9, + 9,9,0,0,124,206,206,30,110,206,206,254,119,9,13,26, + 9,255,0,240,0,112,0,112,0,112,0,118,0,127,0,115, + 128,115,128,115,128,115,128,115,128,115,0,110,0,7,9,9, + 8,0,0,62,118,230,224,224,224,224,118,60,9,13,26,10, + 0,0,15,0,7,0,7,0,7,0,55,0,127,0,231,0, + 231,0,231,0,231,0,231,0,119,0,59,128,7,9,9,8, + 0,0,60,118,230,254,224,224,224,118,60,7,13,13,6,0, + 0,62,118,118,112,252,112,112,112,112,112,112,112,248,9,13, + 26,9,0,252,63,128,231,0,231,0,231,0,230,0,120,0, + 96,0,254,0,255,128,227,128,193,128,227,0,126,0,10,13, + 26,11,0,0,240,0,112,0,112,0,112,0,119,0,127,128, + 115,128,115,128,115,128,115,128,115,128,115,128,251,192,5,13, + 13,5,0,0,96,96,96,0,240,112,112,112,112,112,112,112, + 248,6,17,17,5,254,252,24,24,24,0,60,28,28,28,28, + 28,28,28,28,28,220,216,112,10,13,26,10,0,0,240,0, + 112,0,112,0,112,0,115,128,115,0,118,0,124,0,124,0, + 126,0,119,0,115,128,247,192,5,13,13,6,0,0,240,112, + 112,112,112,112,112,112,112,112,112,112,248,15,9,18,16,0, + 0,247,56,123,220,115,156,115,156,115,156,115,156,115,156,115, + 156,251,222,10,9,18,11,0,0,231,0,127,128,115,128,115, + 128,115,128,115,128,115,128,115,128,251,192,8,9,9,9,0, + 0,60,102,231,231,231,231,231,102,60,9,13,26,10,0,252, + 230,0,127,0,115,128,115,128,115,128,115,128,115,128,123,0, + 118,0,112,0,112,0,112,0,248,0,9,13,26,9,0,252, + 57,0,119,0,231,0,231,0,231,0,231,0,231,0,127,0, + 55,0,7,0,7,0,7,0,15,128,7,9,9,8,0,0, + 238,118,112,112,112,112,112,112,248,6,9,9,7,0,0,124, + 204,228,240,120,60,156,204,248,6,11,11,7,0,0,16,48, + 252,112,112,112,112,112,112,116,56,10,9,18,11,0,0,247, + 128,115,128,115,128,115,128,115,128,115,128,115,128,127,128,61, + 192,10,9,18,9,255,0,251,192,113,128,121,0,59,0,59, + 0,30,0,30,0,12,0,12,0,14,9,18,12,255,0,247, + 156,119,24,115,144,59,176,57,160,29,224,31,224,12,192,12, + 192,9,9,18,9,0,0,243,128,115,0,122,0,60,0,28, + 0,30,0,55,0,103,128,227,128,10,13,26,9,255,252,251, + 192,113,128,121,0,59,0,58,0,30,0,30,0,12,0,12, + 0,12,0,200,0,216,0,240,0,7,9,9,8,0,0,254, + 206,142,28,56,112,114,230,254,7,17,17,8,0,252,30,56, + 48,48,48,48,48,96,192,96,48,48,48,48,48,56,30,2, + 16,16,4,1,253,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,7,17,17,8,1,252,240,56,24,24,24, + 24,24,12,6,12,24,24,24,24,24,56,240,8,4,4,10, + 1,3,112,249,159,14,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,0,0,5,0,1,3,13,13, + 6,1,252,224,224,224,0,64,64,224,224,224,224,224,224,64, + 8,13,13,9,0,254,1,3,62,119,239,236,216,216,240,115, + 62,96,64,14,13,26,9,0,0,31,0,59,0,59,0,56, + 0,56,0,56,0,254,0,56,4,56,0,48,0,240,128,191, + 128,239,0,8,8,8,9,0,2,219,255,102,195,195,102,255, + 219,9,13,26,9,0,0,251,128,113,0,115,0,58,0,58, + 0,28,0,127,0,28,0,127,0,28,0,28,0,28,0,127, + 0,2,16,16,4,1,253,192,192,192,192,192,192,0,0,0, + 0,192,192,192,192,192,192,7,16,16,9,1,253,60,102,70, + 96,48,120,220,206,230,118,60,28,12,196,204,120,6,2,2, + 6,0,10,204,204,13,13,26,15,1,0,15,128,56,224,96, + 48,79,208,220,216,152,72,152,8,152,8,220,216,79,144,96, + 48,56,224,15,128,6,8,8,6,0,5,112,216,56,216,216, + 236,0,252,9,7,14,11,1,1,25,128,51,0,102,0,204, + 0,102,0,51,0,25,128,9,6,12,11,1,1,255,128,255, + 128,1,128,1,128,1,128,1,128,5,3,3,6,0,4,248, + 248,248,13,13,26,15,1,0,15,128,56,224,96,48,95,144, + 204,216,140,200,143,136,141,136,204,216,94,240,96,48,56,224, + 15,128,6,1,1,6,0,11,252,6,5,5,7,0,8,120, + 204,204,204,120,8,11,11,11,1,0,24,24,24,255,255,24, + 24,24,0,255,255,5,8,8,5,0,5,112,152,24,48,32, + 64,248,240,5,8,8,5,0,5,112,152,24,112,56,24,152, + 112,5,3,3,6,0,10,56,112,192,10,13,26,11,0,252, + 247,128,115,128,115,128,115,128,115,128,115,128,115,128,127,128, + 125,192,96,0,224,0,240,0,96,0,9,17,34,10,0,252, + 63,128,127,128,251,0,251,0,251,0,251,0,123,0,59,0, + 27,0,27,0,27,0,27,0,27,0,27,0,27,0,27,0, + 27,0,3,3,3,5,1,4,224,224,224,5,4,4,6,1, + 252,32,24,152,112,6,8,8,5,0,5,48,240,48,48,48, + 48,48,252,6,8,8,6,0,5,120,204,204,204,204,120,0, + 252,9,7,14,11,1,1,204,0,102,0,51,0,25,128,51, + 0,102,0,204,0,13,13,26,13,0,0,48,96,240,192,48, + 192,49,128,49,128,51,16,51,48,254,112,6,176,13,176,13, + 248,24,48,24,48,13,13,26,13,0,0,48,96,240,192,48, + 192,49,128,49,128,51,112,51,152,254,24,6,48,12,32,12, + 64,24,248,24,240,13,13,26,13,0,0,112,96,152,192,24, + 192,113,128,57,128,27,16,155,48,118,112,6,176,13,176,13, + 248,24,48,24,48,7,13,13,9,1,252,56,56,56,0,16, + 16,48,96,228,238,238,230,124,14,17,34,14,0,0,14,0, + 7,0,1,128,0,0,3,0,3,128,7,128,5,192,13,192, + 8,192,24,224,16,96,31,240,48,112,32,56,96,56,248,252, + 14,17,34,14,0,0,3,128,7,0,12,0,0,0,3,0, + 3,128,7,128,5,192,13,192,8,192,24,224,16,96,31,240, + 48,112,32,56,96,56,248,252,14,17,34,14,0,0,3,0, + 7,128,12,192,0,0,3,0,3,128,7,128,5,192,13,192, + 8,192,24,224,16,96,31,240,48,112,32,56,96,56,248,252, + 14,17,34,14,0,0,6,64,15,192,9,128,0,0,3,0, + 3,128,7,128,5,192,13,192,8,192,24,224,16,96,31,240, + 48,112,32,56,96,56,248,252,14,16,32,14,0,0,12,192, + 12,192,0,0,3,0,3,128,7,128,5,192,13,192,8,192, + 24,224,16,96,31,240,48,112,32,56,96,56,248,252,14,17, + 34,14,0,0,7,0,13,128,13,128,7,0,3,0,3,128, + 7,128,5,192,13,192,8,192,24,224,16,96,31,240,48,112, + 32,56,96,56,248,252,17,13,39,19,0,0,7,255,128,3, + 225,128,2,224,128,6,224,0,4,224,0,12,226,0,8,254, + 0,31,226,0,16,224,0,48,224,0,32,224,128,96,225,128, + 249,255,128,12,17,34,14,1,252,15,144,56,240,112,112,112, + 48,224,0,224,0,224,0,224,0,224,0,112,0,112,48,60, + 224,15,128,4,0,3,0,19,0,14,0,10,17,34,13,2, + 0,56,0,28,0,6,0,0,0,255,192,112,192,112,64,112, + 0,112,0,113,0,127,0,113,0,112,0,112,0,112,64,112, + 192,255,192,10,17,34,13,2,0,14,0,28,0,48,0,0, + 0,255,192,112,192,112,64,112,0,112,0,113,0,127,0,113, + 0,112,0,112,0,112,64,112,192,255,192,10,17,34,13,2, + 0,12,0,30,0,51,0,0,0,255,192,112,192,112,64,112, + 0,112,0,113,0,127,0,113,0,112,0,112,0,112,64,112, + 192,255,192,10,16,32,13,2,0,51,0,51,0,0,0,255, + 192,112,192,112,64,112,0,112,0,113,0,127,0,113,0,112, + 0,112,0,112,64,112,192,255,192,5,17,17,7,1,0,224, + 112,24,0,248,112,112,112,112,112,112,112,112,112,112,112,248, + 5,17,17,7,1,0,56,112,192,0,248,112,112,112,112,112, + 112,112,112,112,112,112,248,6,17,17,7,1,0,48,120,204, + 0,248,112,112,112,112,112,112,112,112,112,112,112,248,6,16, + 16,7,1,0,204,204,0,248,112,112,112,112,112,112,112,112, + 112,112,112,248,13,13,26,14,0,0,127,128,56,224,56,112, + 56,48,56,56,56,56,254,56,56,56,56,56,56,48,56,112, + 56,224,127,128,12,17,34,14,1,0,12,128,31,128,19,0, + 0,0,240,112,120,32,120,32,124,32,94,32,78,32,79,32, + 71,160,67,160,67,224,65,224,64,224,224,224,13,17,34,15, + 1,0,14,0,7,0,1,128,0,0,15,128,56,224,112,112, + 112,112,224,56,224,56,224,56,224,56,224,56,112,112,112,112, + 56,224,15,128,13,17,34,15,1,0,3,128,7,0,12,0, + 0,0,15,128,56,224,112,112,112,112,224,56,224,56,224,56, + 224,56,224,56,112,112,112,112,56,224,15,128,13,17,34,15, + 1,0,6,0,15,0,25,128,0,0,15,128,56,224,112,112, + 112,112,224,56,224,56,224,56,224,56,224,56,112,112,112,112, + 56,224,15,128,13,17,34,15,1,0,12,128,31,128,19,0, + 0,0,15,128,56,224,112,112,112,112,224,56,224,56,224,56, + 224,56,224,56,112,112,112,112,56,224,15,128,13,16,32,15, + 1,0,25,128,25,128,0,0,15,128,56,224,112,112,112,112, + 224,56,224,56,224,56,224,56,224,56,112,112,112,112,56,224, + 15,128,9,8,16,11,1,1,193,128,99,0,54,0,28,0, + 28,0,54,0,99,0,193,128,13,15,30,15,1,255,0,96, + 15,192,56,224,112,176,113,176,225,56,227,56,226,56,230,56, + 228,56,108,112,104,112,56,224,31,128,48,0,12,17,34,14, + 1,0,28,0,14,0,3,0,0,0,248,240,112,32,112,32, + 112,32,112,32,112,32,112,32,112,32,112,32,112,32,112,96, + 56,192,31,128,12,17,34,14,1,0,1,192,3,128,6,0, + 0,0,248,240,112,32,112,32,112,32,112,32,112,32,112,32, + 112,32,112,32,112,32,112,96,56,192,31,128,12,17,34,14, + 1,0,6,0,15,0,25,128,0,0,248,240,112,32,112,32, + 112,32,112,32,112,32,112,32,112,32,112,32,112,32,112,96, + 56,192,31,128,12,16,32,14,1,0,25,128,25,128,0,0, + 248,240,112,32,112,32,112,32,112,32,112,32,112,32,112,32, + 112,32,112,32,112,96,56,192,31,128,13,17,34,14,1,0, + 0,224,1,192,3,0,0,0,252,120,120,48,56,96,60,64, + 30,192,14,128,15,128,7,0,7,0,7,0,7,0,7,0, + 31,192,10,13,26,11,1,0,248,0,112,0,112,0,127,0, + 115,128,113,192,113,192,113,192,115,128,127,0,112,0,112,0, + 248,0,9,13,26,10,0,0,30,0,59,0,115,128,115,128, + 115,128,119,0,114,0,115,0,115,128,115,128,115,128,115,128, + 247,0,8,13,13,9,0,0,112,56,12,0,124,206,206,30, + 110,206,206,254,119,8,13,13,9,0,0,14,28,48,0,124, + 206,206,30,110,206,206,254,119,8,13,13,9,0,0,24,60, + 102,0,124,206,206,30,110,206,206,254,119,8,13,13,9,0, + 0,50,126,76,0,124,206,206,30,110,206,206,254,119,8,12, + 12,9,0,0,102,102,0,124,206,206,30,110,206,206,254,119, + 8,13,13,9,0,0,56,108,108,56,124,206,206,30,110,206, + 206,254,119,12,9,18,13,0,0,125,224,231,176,199,48,15, + 240,127,0,231,0,199,0,239,176,121,224,7,13,13,8,0, + 252,62,118,230,224,224,224,224,118,60,16,12,76,56,7,13, + 13,8,0,0,112,56,12,0,60,118,230,254,224,224,224,118, + 60,8,13,13,8,0,0,7,14,24,0,60,118,230,254,224, + 224,224,118,60,7,13,13,8,0,0,24,60,102,0,60,118, + 230,254,224,224,224,118,60,7,12,12,8,0,0,102,102,0, + 60,118,230,254,224,224,224,118,60,5,13,13,5,0,0,224, + 112,24,0,240,112,112,112,112,112,112,112,248,5,13,13,5, + 0,0,56,112,192,0,240,112,112,112,112,112,112,112,248,6, + 13,13,5,0,0,48,120,204,0,240,112,112,112,112,112,112, + 112,248,6,12,12,5,0,0,204,204,0,240,112,112,112,112, + 112,112,112,248,8,13,13,9,0,0,96,54,56,76,62,102, + 231,231,231,231,231,102,60,10,13,26,11,0,0,25,0,63, + 0,38,0,0,0,231,0,127,128,115,128,115,128,115,128,115, + 128,115,128,115,128,251,192,8,13,13,9,0,0,112,56,12, + 0,60,102,231,231,231,231,231,102,60,8,13,13,9,0,0, + 7,14,24,0,60,102,231,231,231,231,231,102,60,8,13,13, + 9,0,0,24,60,102,0,60,102,231,231,231,231,231,102,60, + 8,13,13,9,0,0,50,126,76,0,60,102,231,231,231,231, + 231,102,60,8,12,12,9,0,0,102,102,0,60,102,231,231, + 231,231,231,102,60,8,8,8,11,1,1,24,24,0,255,255, + 0,24,24,10,11,22,9,255,255,0,64,30,128,51,0,115, + 128,115,128,119,128,123,128,113,128,51,0,94,0,128,0,10, + 13,26,11,0,0,56,0,28,0,6,0,0,0,247,128,115, + 128,115,128,115,128,115,128,115,128,115,128,127,128,61,192,10, + 13,26,11,0,0,14,0,28,0,48,0,0,0,247,128,115, + 128,115,128,115,128,115,128,115,128,115,128,127,128,61,192,10, + 13,26,11,0,0,12,0,30,0,51,0,0,0,247,128,115, + 128,115,128,115,128,115,128,115,128,115,128,127,128,61,192,10, + 12,24,11,0,0,51,0,51,0,0,0,247,128,115,128,115, + 128,115,128,115,128,115,128,115,128,127,128,61,192,10,17,34, + 9,255,252,3,128,7,0,12,0,0,0,251,192,113,128,121, + 0,59,0,58,0,30,0,30,0,12,0,12,0,12,0,8, + 0,216,0,240,0,9,17,34,10,0,252,240,0,112,0,112, + 0,112,0,118,0,127,0,115,128,115,128,115,128,115,128,115, + 128,123,0,118,0,112,0,112,0,112,0,248,0,10,16,32, + 9,255,252,51,0,51,0,0,0,251,192,113,128,121,0,59, + 0,58,0,30,0,30,0,12,0,12,0,12,0,8,0,216, + 0,240,0}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--20-140-100-100-P-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w=18 h=17 x= 2 y=10 dx=19 dy= 0 ascent=14 len=39 + Font Bounding box w=22 h=28 x=-2 y=-7 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =14 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB14r[2295] U8G_SECTION(".progmem.u8g_font_timB14r") = { + 0,22,28,254,249,13,2,178,6,78,32,127,252,14,252,13, + 252,0,0,0,5,0,1,3,13,13,6,1,0,64,224,224, + 224,224,224,224,64,64,0,224,224,224,6,6,6,10,2,7, + 204,204,204,204,136,136,10,12,24,9,0,0,25,128,25,128, + 25,128,127,192,127,192,51,0,51,0,255,128,255,128,102,0, + 102,0,102,0,8,16,16,9,0,254,24,126,219,219,216,248, + 124,62,31,31,27,219,219,126,24,24,14,13,26,18,1,0, + 60,24,119,240,226,96,226,64,228,192,253,128,115,120,6,236, + 6,196,13,196,25,200,49,248,48,224,13,13,26,16,2,0, + 30,0,51,0,51,0,51,0,58,0,28,240,60,96,94,64, + 207,128,199,128,227,192,255,248,120,240,2,6,6,5,1,7, + 192,192,192,192,128,128,5,17,17,6,1,252,8,16,48,96, + 96,224,192,192,192,192,192,224,96,96,48,16,8,5,17,17, + 6,0,252,128,64,96,48,48,56,24,24,24,24,24,56,48, + 32,96,64,128,8,9,9,9,0,4,24,24,219,255,60,255, + 219,24,24,10,10,20,11,0,0,12,0,12,0,12,0,12, + 0,255,192,255,192,12,0,12,0,12,0,12,0,4,6,6, + 5,0,253,112,112,112,48,96,192,5,3,3,6,0,4,248, + 248,248,3,3,3,5,1,0,224,224,224,5,13,13,6,0, + 0,24,24,24,48,48,48,32,96,96,96,192,192,192,8,13, + 13,9,0,0,60,102,103,231,231,231,231,231,231,231,102,102, + 60,8,13,13,9,0,0,28,60,252,28,28,28,28,28,28, + 28,28,28,127,8,13,13,9,0,0,60,126,207,135,7,7, + 6,12,24,49,99,255,255,9,13,26,9,0,0,60,0,126, + 0,143,0,7,0,14,0,28,0,62,0,15,0,7,128,3, + 128,195,0,230,0,124,0,8,13,13,9,0,0,14,30,30, + 46,46,78,206,142,255,255,14,14,14,9,13,26,9,0,0, + 63,0,63,0,62,0,64,0,120,0,126,0,63,0,7,128, + 3,128,3,128,195,0,230,0,252,0,8,13,13,9,0,0, + 7,28,56,112,96,252,230,231,231,231,231,102,60,8,13,13, + 9,0,0,255,255,254,134,12,12,12,24,24,56,48,48,112, + 8,13,13,9,0,0,60,102,227,227,246,124,60,126,207,199, + 195,231,126,8,13,13,9,0,0,60,102,231,231,231,231,103, + 63,7,6,14,60,240,3,9,9,5,1,0,224,224,224,0, + 0,0,224,224,224,4,12,12,5,0,253,112,112,112,0,0, + 0,112,112,112,48,96,192,9,9,18,11,1,0,3,128,15, + 0,60,0,240,0,192,0,240,0,60,0,15,0,3,128,9, + 6,12,11,1,2,255,128,255,128,0,0,0,0,255,128,255, + 128,9,9,18,11,1,0,224,0,120,0,30,0,7,128,1, + 128,7,128,30,0,120,0,224,0,7,13,13,9,1,0,124, + 206,238,238,78,12,24,16,16,0,56,56,56,15,16,32,17, + 1,253,3,224,15,56,56,12,48,4,115,182,103,118,231,118, + 238,102,238,102,238,236,239,252,103,184,112,0,56,0,30,0, + 7,240,14,13,26,14,0,0,3,0,3,128,7,128,5,192, + 13,192,8,192,24,224,16,96,31,240,48,112,32,56,96,56, + 248,252,10,13,26,13,1,0,254,0,115,128,113,192,113,192, + 113,192,115,128,126,0,115,128,113,192,113,192,113,192,115,128, + 255,0,12,13,26,14,1,0,15,144,56,240,112,112,112,48, + 224,0,224,0,224,0,224,0,224,0,112,0,112,48,60,224, + 15,128,12,13,26,14,1,0,255,0,113,192,112,224,112,96, + 112,112,112,112,112,112,112,112,112,112,112,96,112,224,113,192, + 255,0,10,13,26,13,2,0,255,192,112,192,112,64,112,0, + 112,0,113,0,127,0,113,0,112,0,112,0,112,64,112,192, + 255,192,10,13,26,12,2,0,255,192,112,192,112,64,112,0, + 112,0,113,0,127,0,113,0,112,0,112,0,112,0,112,0, + 248,0,13,13,26,15,1,0,15,144,56,240,112,112,112,48, + 224,0,224,0,224,248,224,112,224,112,112,112,112,112,56,240, + 15,192,13,13,26,15,1,0,248,248,112,112,112,112,112,112, + 112,112,112,112,127,240,112,112,112,112,112,112,112,112,112,112, + 249,248,5,13,13,7,1,0,248,112,112,112,112,112,112,112, + 112,112,112,112,248,8,15,15,9,0,254,31,14,14,14,14, + 14,14,14,14,14,14,14,238,236,120,12,13,26,15,2,0, + 249,240,112,192,113,128,115,0,118,0,124,0,124,0,126,0, + 119,0,119,128,115,192,113,224,248,240,10,13,26,13,2,0, + 248,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,64,112,192,255,192,15,13,26,18,2,0, + 240,30,112,28,120,60,120,60,124,92,92,92,94,220,78,156, + 79,156,71,28,71,28,67,28,226,62,12,13,26,14,1,0, + 240,112,120,32,120,32,124,32,94,32,78,32,79,32,71,160, + 67,160,67,224,65,224,64,224,224,224,13,13,26,15,1,0, + 15,128,56,224,112,112,112,112,224,56,224,56,224,56,224,56, + 224,56,112,112,112,112,56,224,15,128,10,13,26,12,1,0, + 255,0,115,128,113,192,113,192,113,192,115,128,127,0,112,0, + 112,0,112,0,112,0,112,0,248,0,13,17,34,15,1,252, + 15,128,56,224,112,112,112,112,224,56,224,56,224,56,224,56, + 224,56,112,112,112,112,56,224,15,128,15,0,7,128,3,224, + 0,248,12,13,26,14,1,0,255,0,115,128,113,192,113,192, + 113,192,115,128,127,0,119,0,115,128,113,192,113,192,112,224, + 248,240,9,13,26,11,1,0,30,128,99,128,225,128,224,0, + 248,0,124,0,63,0,15,128,7,128,3,128,195,128,231,0, + 188,0,11,13,26,13,1,0,255,224,206,96,142,32,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 31,0,12,13,26,14,1,0,248,240,112,32,112,32,112,32, + 112,32,112,32,112,32,112,32,112,32,112,32,112,96,56,192, + 31,128,14,13,26,14,0,0,252,124,120,24,56,16,60,48, + 28,32,30,96,30,64,14,192,15,128,7,128,7,0,3,0, + 2,0,18,13,39,19,1,0,253,247,192,121,225,128,56,225, + 0,60,227,0,60,226,0,28,114,0,30,118,0,14,116,0, + 14,188,0,15,60,0,7,60,0,6,24,0,6,24,0,14, + 13,26,14,0,0,248,120,120,48,60,96,28,192,15,128,7, + 0,7,128,7,192,13,192,24,224,48,112,96,120,240,252,13, + 13,26,14,1,0,252,120,120,48,56,96,60,64,30,192,14, + 128,15,128,7,0,7,0,7,0,7,0,7,0,31,192,10, + 13,26,13,2,0,255,192,195,192,131,128,7,128,15,0,14, + 0,30,0,60,0,56,0,120,0,240,64,224,192,255,192,4, + 16,16,6,1,253,240,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,240,5,13,13,5,0,0,192,192,192,96,96, + 96,32,48,48,48,24,24,24,4,16,16,6,1,253,240,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,240,8,7, + 7,11,1,6,24,24,60,36,102,195,195,9,2,4,9,0, + 252,255,128,255,128,5,3,3,6,0,10,224,112,24,8,9, + 9,9,0,0,124,206,206,30,110,206,206,254,119,9,13,26, + 9,255,0,240,0,112,0,112,0,112,0,118,0,127,0,115, + 128,115,128,115,128,115,128,115,128,115,0,110,0,7,9,9, + 8,0,0,62,118,230,224,224,224,224,118,60,9,13,26,10, + 0,0,15,0,7,0,7,0,7,0,55,0,127,0,231,0, + 231,0,231,0,231,0,231,0,119,0,59,128,7,9,9,8, + 0,0,60,118,230,254,224,224,224,118,60,7,13,13,6,0, + 0,62,118,118,112,252,112,112,112,112,112,112,112,248,9,13, + 26,9,0,252,63,128,231,0,231,0,231,0,230,0,120,0, + 96,0,254,0,255,128,227,128,193,128,227,0,126,0,10,13, + 26,11,0,0,240,0,112,0,112,0,112,0,119,0,127,128, + 115,128,115,128,115,128,115,128,115,128,115,128,251,192,5,13, + 13,5,0,0,96,96,96,0,240,112,112,112,112,112,112,112, + 248,6,17,17,5,254,252,24,24,24,0,60,28,28,28,28, + 28,28,28,28,28,220,216,112,10,13,26,10,0,0,240,0, + 112,0,112,0,112,0,115,128,115,0,118,0,124,0,124,0, + 126,0,119,0,115,128,247,192,5,13,13,6,0,0,240,112, + 112,112,112,112,112,112,112,112,112,112,248,15,9,18,16,0, + 0,247,56,123,220,115,156,115,156,115,156,115,156,115,156,115, + 156,251,222,10,9,18,11,0,0,231,0,127,128,115,128,115, + 128,115,128,115,128,115,128,115,128,251,192,8,9,9,9,0, + 0,60,102,231,231,231,231,231,102,60,9,13,26,10,0,252, + 230,0,127,0,115,128,115,128,115,128,115,128,115,128,123,0, + 118,0,112,0,112,0,112,0,248,0,9,13,26,9,0,252, + 57,0,119,0,231,0,231,0,231,0,231,0,231,0,127,0, + 55,0,7,0,7,0,7,0,15,128,7,9,9,8,0,0, + 238,118,112,112,112,112,112,112,248,6,9,9,7,0,0,124, + 204,228,240,120,60,156,204,248,6,11,11,7,0,0,16,48, + 252,112,112,112,112,112,112,116,56,10,9,18,11,0,0,247, + 128,115,128,115,128,115,128,115,128,115,128,115,128,127,128,61, + 192,10,9,18,9,255,0,251,192,113,128,121,0,59,0,59, + 0,30,0,30,0,12,0,12,0,14,9,18,12,255,0,247, + 156,119,24,115,144,59,176,57,160,29,224,31,224,12,192,12, + 192,9,9,18,9,0,0,243,128,115,0,122,0,60,0,28, + 0,30,0,55,0,103,128,227,128,10,13,26,9,255,252,251, + 192,113,128,121,0,59,0,58,0,30,0,30,0,12,0,12, + 0,12,0,200,0,216,0,240,0,7,9,9,8,0,0,254, + 206,142,28,56,112,114,230,254,7,17,17,8,0,252,30,56, + 48,48,48,48,48,96,192,96,48,48,48,48,48,56,30,2, + 16,16,4,1,253,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,7,17,17,8,1,252,240,56,24,24,24, + 24,24,12,6,12,24,24,24,24,24,56,240,8,4,4,10, + 1,3,112,249,159,14,255}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--25-180-100-100-P-132-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=24 h=23 x= 3 y=14 dx=25 dy= 0 ascent=23 len=69 + Font Bounding box w=27 h=38 x=-2 y=-10 + Calculated Min Values x=-1 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =23 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB18[7223] U8G_SECTION(".progmem.u8g_font_timB18") = { + 0,27,38,254,246,17,4,47,9,109,32,255,251,23,250,17, + 251,0,0,0,6,0,1,4,17,17,8,2,0,96,240,240, + 240,240,240,96,96,96,96,96,0,0,96,240,240,96,8,8, + 8,12,2,9,231,231,231,231,231,231,66,66,12,17,34,13, + 0,0,12,192,12,192,12,192,12,192,127,240,127,240,25,128, + 25,128,25,128,25,128,255,224,255,224,51,0,51,0,51,0, + 51,0,51,0,10,20,40,12,1,254,8,0,8,0,63,0, + 107,128,233,128,233,128,248,128,124,0,126,0,63,0,31,128, + 15,128,11,192,137,192,201,192,201,128,235,128,62,0,8,0, + 8,0,17,17,51,19,1,0,30,12,0,59,252,0,113,24, + 0,225,48,0,226,48,0,226,96,0,244,96,0,120,192,0, + 0,192,0,1,143,0,1,157,128,3,56,128,3,112,128,6, + 113,0,6,113,0,12,122,0,12,60,0,17,17,51,21,1, + 0,3,224,0,6,112,0,14,48,0,14,48,0,14,112,0, + 7,224,0,15,15,128,31,135,0,51,194,0,97,230,0,225, + 252,0,224,248,0,224,120,0,240,124,0,248,255,128,127,159, + 0,63,14,0,3,8,8,7,2,9,224,224,224,224,224,224, + 64,64,5,21,21,8,1,252,8,24,48,48,112,96,96,224, + 224,224,224,224,224,224,96,96,112,48,48,24,8,5,21,21, + 8,1,252,128,192,96,96,48,48,48,56,56,56,56,56,56, + 56,48,48,48,96,96,192,128,10,11,22,13,1,6,12,0, + 12,0,76,128,237,192,127,128,30,0,127,128,237,192,76,128, + 12,0,12,0,12,12,24,14,1,0,6,0,6,0,6,0, + 6,0,6,0,255,240,255,240,6,0,6,0,6,0,6,0, + 6,0,4,9,9,6,1,251,96,240,240,112,48,96,96,192, + 128,6,3,3,8,1,5,252,252,252,4,4,4,6,1,0, + 96,240,240,96,7,17,17,7,0,0,6,6,4,12,12,8, + 24,24,16,48,48,32,96,96,64,192,192,11,17,34,12,0, + 0,14,0,59,128,49,128,113,192,113,192,241,224,241,224,241, + 224,241,224,241,224,241,224,113,192,113,192,113,192,49,128,59, + 128,14,0,9,17,34,12,2,0,12,0,60,0,252,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,62,0,255,128,10,17,34,12,1, + 0,30,0,63,0,127,128,199,128,131,128,3,128,3,128,3, + 0,7,0,6,0,12,0,12,0,24,64,48,64,127,192,255, + 192,255,128,11,17,34,12,0,0,15,0,63,128,99,192,65, + 192,1,192,3,128,7,0,31,0,7,192,1,224,1,224,0, + 224,0,224,96,224,241,192,251,128,126,0,11,17,34,12,0, + 0,1,128,3,128,7,128,7,128,15,128,27,128,51,128,51, + 128,99,128,195,128,255,224,255,224,255,224,3,128,3,128,3, + 128,3,128,11,17,34,12,0,0,31,224,31,192,63,192,48, + 0,32,0,112,0,127,0,127,128,127,192,7,192,1,192,0, + 192,0,192,96,192,241,128,251,128,126,0,11,17,34,12,1, + 0,1,224,7,128,30,0,60,0,56,0,120,0,119,0,123, + 128,241,192,241,224,241,224,241,224,241,224,113,192,113,192,59, + 128,30,0,11,17,34,12,0,0,63,224,127,224,127,192,192, + 192,129,128,1,128,3,128,3,0,3,0,7,0,6,0,6, + 0,14,0,14,0,12,0,28,0,28,0,11,17,34,12,0, + 0,31,0,59,128,113,192,113,192,113,192,121,128,59,0,63, + 0,31,128,55,192,99,192,225,224,225,224,225,224,241,192,123, + 128,62,0,11,17,34,12,0,0,14,0,59,128,113,192,113, + 192,241,224,241,224,241,224,241,224,113,224,59,192,31,192,3, + 192,3,128,7,128,15,0,60,0,240,0,4,12,12,8,2, + 0,96,240,240,96,0,0,0,0,96,240,240,96,4,17,17, + 8,2,251,96,240,240,96,0,0,0,0,96,240,240,112,48, + 96,96,192,128,11,12,24,14,1,0,0,96,1,224,7,192, + 31,0,60,0,224,0,224,0,60,0,31,0,7,192,1,224, + 0,96,11,6,12,14,1,3,255,224,255,224,0,0,0,0, + 255,224,255,224,11,12,24,14,1,0,192,0,240,0,124,0, + 31,0,7,128,0,224,0,224,7,128,31,0,124,0,240,0, + 192,0,9,17,34,12,1,0,62,0,111,0,231,128,231,128, + 71,128,7,128,15,0,14,0,28,0,24,0,24,0,0,0, + 0,0,24,0,60,0,60,0,24,0,20,21,63,23,1,252, + 0,124,0,3,247,128,15,128,192,30,0,96,60,0,32,56, + 59,48,112,255,16,113,231,16,241,199,16,227,198,16,227,142, + 16,227,142,48,227,142,32,243,158,96,241,254,192,112,243,128, + 120,0,0,56,0,0,30,0,0,7,131,0,1,252,0,17, + 17,51,18,0,0,1,128,0,1,192,0,3,192,0,3,224, + 0,3,224,0,6,224,0,6,240,0,4,112,0,12,112,0, + 8,120,0,8,56,0,31,248,0,16,60,0,48,60,0,48, + 30,0,112,30,0,248,127,128,14,17,34,16,0,0,255,192, + 60,240,60,120,60,120,60,120,60,120,60,112,60,192,63,224, + 60,120,60,60,60,60,60,60,60,60,60,56,60,120,255,224, + 15,17,34,18,1,0,3,242,30,62,60,14,120,6,120,2, + 240,2,240,0,240,0,240,0,240,0,240,0,240,0,120,0, + 120,2,60,14,31,60,7,240,16,17,34,18,1,0,255,224, + 60,120,60,60,60,30,60,30,60,15,60,15,60,15,60,15, + 60,15,60,15,60,14,60,30,60,28,60,60,60,120,255,224, + 15,17,34,17,1,0,255,252,60,28,60,12,60,4,60,4, + 60,32,60,32,60,96,63,224,60,96,60,32,60,32,60,2, + 60,2,60,6,60,14,255,254,14,17,34,15,0,0,255,252, + 60,28,60,12,60,4,60,4,60,32,60,32,60,96,63,224, + 60,96,60,32,60,32,60,0,60,0,60,0,60,0,255,0, + 17,17,51,19,1,0,3,242,0,30,62,0,60,14,0,120, + 6,0,120,2,0,240,2,0,240,0,0,240,0,0,240,0, + 0,240,127,128,240,30,0,240,30,0,120,30,0,120,30,0, + 56,30,0,30,30,0,7,248,0,18,17,51,19,0,0,255, + 63,192,60,15,0,60,15,0,60,15,0,60,15,0,60,15, + 0,60,15,0,60,15,0,63,255,0,60,15,0,60,15,0, + 60,15,0,60,15,0,60,15,0,60,15,0,60,15,0,255, + 63,192,8,17,17,10,0,0,255,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,60,255,11,19,38,12,0,254,31, + 224,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,231,128,231,128,231, + 0,231,0,60,0,18,17,51,19,0,0,255,63,128,60,30, + 0,60,24,0,60,48,0,60,96,0,60,192,0,61,128,0, + 63,192,0,63,192,0,61,224,0,60,240,0,60,248,0,60, + 124,0,60,62,0,60,31,0,60,15,128,255,31,192,15,17, + 34,16,0,0,255,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,2,60,6, + 60,12,60,28,255,252,21,17,51,24,1,0,252,1,248,60, + 3,224,62,3,224,62,7,224,47,5,224,47,13,224,39,9, + 224,39,137,224,39,153,224,35,145,224,35,241,224,35,241,224, + 33,225,224,33,225,224,32,193,224,32,193,224,248,7,248,17, + 17,51,18,0,0,248,15,128,124,7,0,62,2,0,63,2, + 0,63,130,0,47,194,0,39,226,0,35,226,0,33,242,0, + 32,250,0,32,126,0,32,62,0,32,30,0,32,30,0,32, + 14,0,96,6,0,248,2,0,16,17,34,19,1,0,7,224, + 28,56,56,28,120,30,112,14,240,15,240,15,240,15,240,15, + 240,15,240,15,240,15,112,14,120,30,56,28,28,56,7,224, + 14,17,34,15,0,0,255,224,60,120,60,60,60,60,60,60, + 60,60,60,60,60,120,63,224,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,255,0,17,22,66,19,1,251,7,224, + 0,28,56,0,56,28,0,120,30,0,112,14,0,240,15,0, + 240,15,0,240,15,0,240,15,0,240,15,0,240,15,0,240, + 15,0,240,14,0,120,30,0,120,28,0,60,56,0,31,224, + 0,7,192,0,1,224,0,1,240,0,0,252,0,0,63,128, + 16,17,34,18,1,0,255,224,60,120,60,56,60,60,60,60, + 60,60,60,56,60,112,63,192,61,224,60,240,60,240,60,120, + 60,124,60,60,60,30,255,31,12,17,34,14,1,0,63,160, + 113,224,224,224,224,96,224,32,248,0,126,0,127,128,63,192, + 15,224,7,224,129,240,128,240,192,240,224,224,249,224,191,128, + 14,17,34,16,1,0,255,252,231,156,199,140,135,132,135,132, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,31,224,17,17,51,18,0,0,255,15, + 128,126,7,0,60,2,0,60,2,0,60,2,0,60,2,0, + 60,2,0,60,2,0,60,2,0,60,2,0,60,2,0,60, + 2,0,60,2,0,60,6,0,30,4,0,31,12,0,7,248, + 0,17,17,51,18,0,0,255,31,128,60,6,0,60,4,0, + 30,4,0,30,12,0,15,8,0,15,24,0,15,24,0,7, + 144,0,7,176,0,3,224,0,3,224,0,3,224,0,1,192, + 0,1,192,0,0,128,0,0,128,0,24,17,51,25,0,0, + 255,127,159,60,30,6,60,30,4,30,15,12,30,31,8,30, + 31,24,15,23,152,15,55,144,15,39,176,7,227,176,7,195, + 224,7,195,224,3,193,224,3,129,192,3,129,192,1,0,128, + 1,0,128,16,17,34,18,1,0,255,63,62,12,30,8,31, + 24,15,48,15,160,7,224,3,192,3,224,3,224,3,240,6, + 240,12,120,8,124,24,60,56,62,252,255,18,17,51,18,0, + 0,255,143,192,62,3,0,30,2,0,15,6,0,15,12,0, + 7,140,0,7,152,0,3,208,0,3,240,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224, + 0,7,248,0,14,17,34,17,1,0,255,248,224,248,193,240, + 193,240,131,224,3,192,7,192,7,128,15,128,15,0,30,0, + 62,4,60,4,124,12,120,28,248,60,255,248,5,21,21,8, + 1,252,248,224,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,224,248,7,17,17,7,0,0,192,192,64, + 96,96,32,48,48,16,24,24,8,12,12,4,6,6,5,21, + 21,8,1,252,248,56,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,56,248,8,10,10,15,3,7,24, + 24,60,36,102,102,102,195,195,129,12,2,4,12,0,251,255, + 240,255,240,5,4,4,8,1,13,224,112,48,24,10,12,24, + 12,1,0,62,0,119,0,227,128,227,128,67,128,15,128,115, + 128,227,128,227,128,231,128,255,192,113,128,11,17,34,13,1, + 0,240,0,112,0,112,0,112,0,112,0,119,0,127,192,113, + 192,112,224,112,224,112,224,112,224,112,224,112,224,113,192,123, + 192,103,0,9,12,24,11,1,0,30,0,115,0,115,128,227, + 128,225,0,224,0,224,0,224,0,240,0,120,128,127,0,30, + 0,12,17,34,14,1,0,1,224,0,224,0,224,0,224,0, + 224,30,224,127,224,113,224,224,224,224,224,224,224,224,224,224, + 224,240,224,113,224,126,224,28,112,9,12,24,11,1,0,30, + 0,115,0,115,128,227,128,227,128,255,128,224,0,224,0,240, + 0,120,128,127,0,30,0,8,17,17,8,1,0,30,51,115, + 112,112,252,112,112,112,112,112,112,112,112,112,112,248,10,17, + 34,12,1,251,62,192,119,192,227,128,227,128,227,128,227,128, + 115,0,62,0,96,0,224,0,255,128,255,192,127,192,193,192, + 192,192,225,128,127,0,12,17,34,14,1,0,240,0,112,0, + 112,0,112,0,112,0,115,192,127,224,120,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,249,240,5,17, + 17,7,1,0,112,112,112,0,0,240,112,112,112,112,112,112, + 112,112,112,112,248,7,22,22,8,255,251,14,14,14,0,0, + 30,14,14,14,14,14,14,14,14,14,14,14,14,206,206,204, + 120,13,17,34,15,1,0,240,0,112,0,112,0,112,0,112, + 0,115,240,112,192,113,128,115,0,118,0,126,0,127,0,119, + 128,115,192,113,224,112,240,251,248,5,17,17,7,1,0,240, + 112,112,112,112,112,112,112,112,112,112,112,112,112,112,112,248, + 19,12,36,21,1,0,243,199,128,119,223,192,120,241,192,112, + 225,192,112,225,192,112,225,192,112,225,192,112,225,192,112,225, + 192,112,225,192,112,225,192,249,243,224,12,12,24,14,1,0, + 243,192,119,224,120,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,112,224,249,240,11,12,24,13,1,0,31,0, + 113,192,113,192,224,224,224,224,224,224,224,224,224,224,224,224, + 113,192,113,192,31,0,12,17,34,14,1,251,227,192,119,224, + 120,224,112,112,112,112,112,112,112,112,112,112,112,112,120,224, + 119,224,115,128,112,0,112,0,112,0,112,0,252,0,12,17, + 34,14,1,251,14,96,63,224,113,224,112,224,224,224,224,224, + 224,224,224,224,224,224,113,224,126,224,28,224,0,224,0,224, + 0,224,0,224,1,240,9,12,24,11,1,0,239,0,127,128, + 115,128,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,248,0,8,12,12,10,1,0,62,102,226,224,248,124, + 62,31,135,135,198,252,8,16,16,8,0,0,8,24,56,120, + 255,56,56,56,56,56,56,56,56,57,62,28,12,12,24,14, + 1,0,241,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,113,224,126,240,60,224,12,12,24,12,0,0, + 252,240,112,96,120,64,56,192,56,128,28,128,29,128,31,0, + 15,0,15,0,6,0,6,0,17,12,36,18,0,0,253,247, + 128,120,227,0,56,227,0,56,226,0,60,230,0,29,118,0, + 29,116,0,31,60,0,14,56,0,14,56,0,4,16,0,4, + 16,0,12,12,24,12,0,0,252,240,120,96,60,192,29,128, + 31,0,15,0,15,0,31,128,27,192,49,192,97,224,243,240, + 12,17,34,12,0,251,253,240,120,96,56,64,56,192,60,128, + 28,128,29,128,31,0,15,0,15,0,6,0,6,0,6,0, + 100,0,236,0,248,0,112,0,9,12,24,11,1,0,255,128, + 199,0,143,0,142,0,30,0,28,0,60,0,56,0,120,128, + 113,128,241,128,255,128,7,21,21,10,1,252,14,24,48,48, + 48,48,48,48,48,96,192,96,48,48,48,48,48,48,48,24, + 14,2,22,22,6,2,251,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,7,21,21, + 10,1,252,224,48,24,24,24,24,24,24,24,12,6,12,24, + 24,24,24,24,24,24,48,224,12,6,12,13,0,6,24,0, + 126,16,255,16,143,240,135,224,1,128,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,0,0,0,6,0, + 1,4,17,17,8,2,251,96,240,240,96,0,0,96,96,96, + 96,96,240,240,240,240,240,96,10,18,36,13,1,253,0,128, + 1,128,1,0,31,128,115,192,115,192,230,128,228,0,228,0, + 236,0,232,0,248,0,120,128,127,128,62,0,48,0,96,0, + 96,0,11,17,34,13,0,0,15,192,30,96,60,224,60,224, + 60,64,28,0,28,0,255,128,255,128,28,0,28,0,28,0, + 12,32,124,96,207,224,255,224,115,192,11,12,24,13,0,3, + 192,96,238,224,127,192,59,128,113,192,96,192,96,192,113,192, + 59,128,127,192,238,224,192,96,14,17,34,13,0,0,254,124, + 56,48,60,32,28,96,30,64,14,192,15,128,7,128,7,0, + 31,192,7,0,31,192,7,0,7,0,7,0,7,0,31,192, + 2,22,22,6,2,251,192,192,192,192,192,192,192,192,192,0, + 0,0,0,192,192,192,192,192,192,192,192,192,7,20,20,11, + 2,253,60,110,206,198,224,112,120,92,142,134,194,226,116,60, + 28,14,198,230,236,120,6,2,2,8,1,14,204,204,17,17, + 51,19,1,0,3,224,0,15,248,0,60,30,0,48,6,0, + 97,243,0,99,51,0,198,17,128,198,1,128,198,1,128,198, + 1,128,198,1,128,99,51,0,97,227,0,48,6,0,60,30, + 0,15,248,0,3,224,0,7,10,10,8,0,7,120,220,12, + 124,236,204,126,0,254,254,11,10,20,13,1,1,12,96,24, + 192,49,128,115,128,231,0,231,0,115,128,49,128,24,192,12, + 96,11,7,14,15,2,2,255,224,255,224,0,96,0,96,0, + 96,0,96,0,96,6,3,3,8,1,5,252,252,252,17,17, + 51,19,1,0,3,224,0,15,248,0,60,30,0,48,6,0, + 103,227,0,99,51,0,195,49,128,195,49,128,195,225,128,195, + 97,128,195,49,128,99,51,0,103,187,0,48,6,0,60,30, + 0,15,248,0,3,224,0,6,1,1,8,1,14,252,8,7, + 7,9,0,10,60,102,195,195,195,102,60,12,13,26,14,1, + 0,6,0,6,0,6,0,6,0,255,240,255,240,6,0,6, + 0,6,0,6,0,0,0,255,240,255,240,6,10,10,7,0, + 7,56,124,140,12,24,16,32,64,252,252,6,10,10,7,0, + 7,56,124,140,12,56,28,12,140,248,112,5,4,4,8,2, + 13,56,112,96,192,12,17,34,14,1,251,241,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,224,113,224,126, + 240,108,224,96,0,96,0,224,0,240,0,96,0,11,22,44, + 14,1,251,31,224,127,224,126,64,254,64,254,64,254,64,254, + 64,254,64,254,64,126,64,126,64,30,64,2,64,2,64,2, + 64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,3, + 3,3,6,1,6,224,224,224,6,6,6,8,1,250,16,48, + 56,12,140,120,6,10,10,7,0,7,48,240,48,48,48,48, + 48,48,48,252,7,10,10,8,0,7,56,108,198,198,198,108, + 56,0,254,254,11,10,20,13,1,1,198,0,99,0,49,128, + 57,192,28,224,28,224,57,192,51,128,99,0,198,0,17,17, + 51,18,0,0,48,4,0,240,12,0,48,24,0,48,24,0, + 48,48,0,48,32,0,48,96,0,48,66,0,48,198,0,252, + 142,0,1,142,0,1,22,0,3,54,0,6,38,0,6,127, + 128,12,6,0,8,6,0,17,17,51,18,0,0,48,4,0, + 240,12,0,48,24,0,48,24,0,48,48,0,48,32,0,48, + 96,0,48,71,0,48,207,128,252,145,128,1,129,128,1,3, + 0,3,2,0,6,4,0,6,8,0,12,31,128,8,31,128, + 17,17,51,18,1,0,56,4,0,124,12,0,140,24,0,12, + 24,0,56,48,0,28,32,0,12,96,0,140,66,0,248,198, + 0,113,14,0,3,14,0,2,22,0,6,54,0,12,38,0, + 12,127,128,24,6,0,16,6,0,9,17,34,12,1,251,12, + 0,30,0,30,0,12,0,0,0,0,0,12,0,12,0,28, + 0,56,0,120,0,240,0,241,0,243,128,243,128,123,0,62, + 0,17,22,66,18,0,0,3,128,0,1,192,0,0,192,0, + 0,96,0,0,0,0,1,128,0,1,192,0,3,192,0,3, + 224,0,3,224,0,6,224,0,6,240,0,4,112,0,12,112, + 0,8,120,0,8,56,0,31,248,0,16,60,0,48,60,0, + 48,30,0,112,30,0,248,127,128,17,22,66,18,0,0,0, + 224,0,1,192,0,1,128,0,3,0,0,0,0,0,1,128, + 0,1,192,0,3,192,0,3,224,0,3,224,0,6,224,0, + 6,240,0,4,112,0,12,112,0,8,120,0,8,56,0,31, + 248,0,16,60,0,48,60,0,48,30,0,112,30,0,248,127, + 128,17,22,66,18,0,0,1,128,0,3,192,0,6,96,0, + 0,0,0,0,0,0,1,128,0,1,192,0,3,192,0,3, + 224,0,3,224,0,6,224,0,6,240,0,4,112,0,12,112, + 0,8,120,0,8,56,0,31,248,0,16,60,0,48,60,0, + 48,30,0,112,30,0,248,127,128,17,21,63,18,0,0,3, + 16,0,7,224,0,8,192,0,0,0,0,1,128,0,1,192, + 0,3,192,0,3,224,0,3,224,0,6,224,0,6,240,0, + 4,112,0,12,112,0,8,120,0,8,56,0,31,248,0,16, + 60,0,48,60,0,48,30,0,112,30,0,248,127,128,17,21, + 63,18,0,0,6,96,0,6,96,0,0,0,0,0,0,0, + 1,128,0,1,192,0,3,192,0,3,224,0,3,224,0,6, + 224,0,6,240,0,4,112,0,12,112,0,8,120,0,8,56, + 0,31,248,0,16,60,0,48,60,0,48,30,0,112,30,0, + 248,127,128,17,23,69,18,0,0,1,128,0,3,192,0,6, + 96,0,6,96,0,3,192,0,1,128,0,1,128,0,1,192, + 0,3,192,0,3,224,0,3,224,0,6,224,0,6,240,0, + 4,112,0,12,112,0,8,120,0,8,56,0,31,248,0,16, + 60,0,48,60,0,48,30,0,112,30,0,248,127,128,23,17, + 51,25,0,0,1,255,252,0,124,28,0,252,12,0,188,4, + 1,188,4,1,60,32,3,60,32,2,60,96,6,63,224,7, + 252,96,12,60,32,8,60,32,24,60,2,16,60,2,48,60, + 6,112,60,14,248,255,254,15,23,46,18,1,250,3,242,30, + 62,60,14,120,6,120,2,240,2,240,0,240,0,240,0,240, + 0,240,0,240,0,120,0,120,2,60,14,31,60,7,240,1, + 0,3,0,3,128,0,192,8,192,7,128,15,22,44,17,1, + 0,7,0,3,128,1,128,0,192,0,0,255,252,60,28,60, + 12,60,4,60,4,60,32,60,32,60,96,63,224,60,96,60, + 32,60,32,60,2,60,2,60,6,60,14,255,254,15,22,44, + 17,1,0,1,192,3,128,3,0,6,0,0,0,255,252,60, + 28,60,12,60,4,60,4,60,32,60,32,60,96,63,224,60, + 96,60,32,60,32,60,2,60,2,60,6,60,14,255,254,15, + 22,44,17,1,0,3,0,7,128,12,192,0,0,0,0,255, + 252,60,28,60,12,60,4,60,4,60,32,60,32,60,96,63, + 224,60,96,60,32,60,32,60,2,60,2,60,6,60,14,255, + 254,15,21,42,17,1,0,12,192,12,192,0,0,0,0,255, + 252,60,28,60,12,60,4,60,4,60,32,60,32,60,96,63, + 224,60,96,60,32,60,32,60,2,60,2,60,6,60,14,255, + 254,8,22,22,10,0,0,112,56,24,12,0,255,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,255,8,22,22, + 10,0,0,14,28,24,48,0,255,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,60,255,8,22,22,10,0,0,24, + 60,102,0,0,255,60,60,60,60,60,60,60,60,60,60,60, + 60,60,60,60,255,8,21,21,10,0,0,102,102,0,0,255, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,255, + 16,17,34,18,1,0,255,224,60,120,60,60,60,30,60,30, + 60,15,60,15,255,143,255,143,60,15,60,15,60,14,60,30, + 60,28,60,60,60,120,255,224,17,22,66,18,0,0,1,136, + 0,3,240,0,4,96,0,0,0,0,0,0,0,248,15,128, + 124,7,0,62,2,0,63,2,0,63,130,0,47,194,0,39, + 226,0,35,226,0,33,242,0,32,250,0,32,126,0,32,62, + 0,32,30,0,32,14,0,32,14,0,96,6,0,248,2,0, + 16,22,44,19,1,0,7,0,3,128,1,128,0,192,0,0, + 7,224,30,120,60,60,120,30,120,30,240,15,240,15,240,15, + 240,15,240,15,240,15,240,15,120,30,120,30,60,60,30,120, + 7,224,16,22,44,19,1,0,0,112,0,224,0,192,1,128, + 0,0,7,224,30,120,60,60,120,30,120,30,240,15,240,15, + 240,15,240,15,240,15,240,15,240,15,120,30,120,30,60,60, + 30,120,7,224,16,22,44,19,1,0,1,128,3,192,6,96, + 0,0,0,0,7,224,30,120,60,60,120,30,120,30,240,15, + 240,15,240,15,240,15,240,15,240,15,240,15,120,30,120,30, + 60,60,30,120,7,224,16,22,44,19,1,0,3,16,7,224, + 8,192,0,0,0,0,7,224,30,120,60,60,120,30,120,30, + 240,15,240,15,240,15,240,15,240,15,240,15,240,15,120,30, + 120,30,60,60,30,120,7,224,16,21,42,19,1,0,12,96, + 12,96,0,0,0,0,7,224,30,120,60,60,120,30,120,30, + 240,15,240,15,240,15,240,15,240,15,240,15,240,15,120,30, + 120,30,60,60,30,120,7,224,12,12,24,14,1,0,192,48, + 224,112,112,224,57,192,31,128,15,0,15,0,31,128,57,192, + 112,224,224,112,192,48,16,19,38,19,1,255,0,4,7,236, + 30,120,56,28,120,62,120,62,240,111,240,207,240,207,241,143, + 243,15,243,15,246,15,124,30,124,30,56,28,62,120,55,224, + 96,0,17,22,66,18,0,0,3,128,0,1,192,0,0,192, + 0,0,96,0,0,0,0,255,15,128,62,6,0,60,2,0, + 60,2,0,60,2,0,60,2,0,60,2,0,60,2,0,60, + 2,0,60,2,0,60,2,0,60,2,0,60,2,0,60,6, + 0,30,4,0,31,28,0,7,248,0,17,22,66,18,0,0, + 0,56,0,0,112,0,0,96,0,0,192,0,0,0,0,255, + 15,128,62,6,0,60,2,0,60,2,0,60,2,0,60,2, + 0,60,2,0,60,2,0,60,2,0,60,2,0,60,2,0, + 60,2,0,60,2,0,60,6,0,30,4,0,31,28,0,7, + 248,0,17,22,66,18,0,0,0,96,0,0,240,0,1,152, + 0,0,0,0,0,0,0,255,15,128,62,6,0,60,2,0, + 60,2,0,60,2,0,60,2,0,60,2,0,60,2,0,60, + 2,0,60,2,0,60,2,0,60,2,0,60,2,0,60,6, + 0,30,4,0,31,28,0,7,248,0,17,21,63,18,0,0, + 3,24,0,3,24,0,0,0,0,0,0,0,255,15,128,62, + 6,0,60,2,0,60,2,0,60,2,0,60,2,0,60,2, + 0,60,2,0,60,2,0,60,2,0,60,2,0,60,2,0, + 60,2,0,60,6,0,30,4,0,31,28,0,7,248,0,18, + 23,69,18,0,0,0,14,0,0,28,0,0,24,0,0,48, + 0,0,0,0,0,0,0,255,143,192,62,3,0,30,2,0, + 15,6,0,15,12,0,7,140,0,7,152,0,3,208,0,3, + 240,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,7,248,0,14,17,34,15,0,0, + 255,0,60,0,60,0,60,0,63,224,60,120,60,60,60,60, + 60,60,60,60,60,60,60,120,63,224,60,0,60,0,60,0, + 255,0,11,17,34,14,1,0,31,0,57,128,113,192,113,192, + 113,192,113,192,115,128,119,0,115,128,113,192,112,224,112,224, + 112,224,112,224,112,224,112,192,243,128,10,17,34,12,1,0, + 56,0,28,0,12,0,6,0,0,0,62,0,119,0,227,128, + 227,128,67,128,15,128,115,128,227,128,227,128,231,128,255,192, + 113,128,10,17,34,12,1,0,14,0,28,0,24,0,48,0, + 0,0,62,0,119,0,227,128,227,128,67,128,15,128,115,128, + 227,128,227,128,231,128,255,192,113,128,10,17,34,12,1,0, + 12,0,30,0,51,0,0,0,0,0,62,0,119,0,227,128, + 227,128,67,128,15,128,115,128,227,128,227,128,231,128,255,192, + 113,128,10,17,34,12,1,0,24,128,63,0,70,0,0,0, + 0,0,62,0,119,0,227,128,227,128,67,128,15,128,115,128, + 227,128,227,128,231,128,255,192,113,128,10,16,32,12,1,0, + 51,0,51,0,0,0,0,0,62,0,119,0,227,128,227,128, + 67,128,15,128,115,128,227,128,227,128,231,128,255,192,113,128, + 10,18,36,12,1,0,12,0,30,0,51,0,51,0,30,0, + 12,0,62,0,119,0,227,128,227,128,67,128,15,128,115,128, + 227,128,227,128,231,128,255,192,113,128,15,12,24,17,1,0, + 62,120,119,204,227,206,99,142,3,142,31,254,115,128,227,128, + 227,192,231,226,254,252,124,120,9,18,36,11,1,250,30,0, + 115,0,115,128,227,128,225,0,224,0,224,0,224,0,240,0, + 120,128,127,0,30,0,8,0,24,0,28,0,6,0,70,0, + 60,0,9,17,34,11,1,0,56,0,28,0,12,0,6,0, + 0,0,30,0,115,0,115,128,227,128,227,128,255,128,224,0, + 224,0,240,0,120,128,127,0,30,0,9,17,34,11,1,0, + 14,0,28,0,24,0,48,0,0,0,30,0,115,0,115,128, + 227,128,227,128,255,128,224,0,224,0,240,0,120,128,127,0, + 30,0,9,17,34,11,1,0,24,0,60,0,102,0,0,0, + 0,0,30,0,115,0,115,128,227,128,227,128,255,128,224,0, + 224,0,240,0,120,128,127,0,30,0,9,16,32,11,1,0, + 51,0,51,0,0,0,0,0,30,0,115,0,115,128,227,128, + 227,128,255,128,224,0,224,0,240,0,120,128,127,0,30,0, + 5,17,17,7,1,0,224,112,48,24,0,240,112,112,112,112, + 112,112,112,112,112,112,248,6,17,17,7,1,0,28,56,48, + 96,0,240,112,112,112,112,112,112,112,112,112,112,248,6,17, + 17,7,1,0,48,120,204,0,0,240,112,112,112,112,112,112, + 112,112,112,112,248,6,16,16,7,1,0,204,204,0,0,240, + 112,112,112,112,112,112,112,112,112,112,248,11,17,34,13,1, + 0,96,0,56,192,15,0,30,0,99,0,31,128,123,192,113, + 192,224,224,224,224,224,224,224,224,224,224,224,224,113,192,123, + 192,31,0,12,17,34,14,1,0,12,64,31,128,35,0,0, + 0,0,0,243,192,119,224,120,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,224,249,240,11,17,34,13,1, + 0,28,0,14,0,6,0,3,0,0,0,31,0,123,192,113, + 192,224,224,224,224,224,224,224,224,224,224,224,224,113,192,123, + 192,31,0,11,17,34,13,1,0,3,128,7,0,6,0,12, + 0,0,0,31,0,123,192,113,192,224,224,224,224,224,224,224, + 224,224,224,224,224,113,192,123,192,31,0,11,17,34,13,1, + 0,12,0,30,0,51,0,0,0,0,0,31,0,123,192,113, + 192,224,224,224,224,224,224,224,224,224,224,224,224,113,192,123, + 192,31,0,11,17,34,13,1,0,24,128,63,0,70,0,0, + 0,0,0,31,0,123,192,113,192,224,224,224,224,224,224,224, + 224,224,224,224,224,113,192,123,192,31,0,11,16,32,13,1, + 0,49,128,49,128,0,0,0,0,31,0,123,192,113,192,224, + 224,224,224,224,224,224,224,224,224,224,224,113,192,123,192,31, + 0,12,12,24,14,1,0,6,0,6,0,6,0,0,0,0, + 0,255,240,255,240,0,0,0,0,6,0,6,0,6,0,11, + 16,32,13,1,254,0,64,0,64,30,128,121,192,113,192,226, + 224,226,224,228,224,228,224,232,224,232,224,113,192,123,192,63, + 0,64,0,64,0,12,17,34,14,1,0,28,0,14,0,6, + 0,3,0,0,0,241,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,113,224,126,240,60,224,12,17,34, + 14,1,0,7,0,14,0,12,0,24,0,0,0,241,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,224,112,224,113, + 224,126,240,60,224,12,17,34,14,1,0,6,0,15,0,25, + 128,0,0,0,0,241,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,113,224,126,240,60,224,12,16,32, + 14,1,0,25,128,25,128,0,0,0,0,241,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,224,113,224,126, + 240,60,224,12,22,44,12,0,251,1,192,3,128,3,0,6, + 0,0,0,253,240,120,96,56,64,56,192,60,128,28,128,29, + 128,31,0,15,0,15,0,6,0,6,0,6,0,100,0,236, + 0,248,0,112,0,12,22,44,14,1,251,240,0,112,0,112, + 0,112,0,112,0,115,128,119,224,124,224,120,112,112,112,112, + 112,112,112,112,112,112,112,120,224,119,224,115,128,112,0,112, + 0,112,0,112,0,252,0,12,21,42,12,0,251,25,128,25, + 128,0,0,0,0,253,240,120,96,56,64,56,192,60,128,28, + 128,29,128,31,0,15,0,15,0,6,0,6,0,6,0,100, + 0,236,0,248,0,112,0}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--25-180-100-100-P-132-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=24 h=22 x= 3 y=13 dx=25 dy= 0 ascent=18 len=66 + Font Bounding box w=27 h=38 x=-2 y=-10 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =18 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB18r[3355] U8G_SECTION(".progmem.u8g_font_timB18r") = { + 0,27,38,254,246,17,4,47,9,109,32,127,251,18,251,17, + 251,0,0,0,6,0,1,4,17,17,8,2,0,96,240,240, + 240,240,240,96,96,96,96,96,0,0,96,240,240,96,8,8, + 8,12,2,9,231,231,231,231,231,231,66,66,12,17,34,13, + 0,0,12,192,12,192,12,192,12,192,127,240,127,240,25,128, + 25,128,25,128,25,128,255,224,255,224,51,0,51,0,51,0, + 51,0,51,0,10,20,40,12,1,254,8,0,8,0,63,0, + 107,128,233,128,233,128,248,128,124,0,126,0,63,0,31,128, + 15,128,11,192,137,192,201,192,201,128,235,128,62,0,8,0, + 8,0,17,17,51,19,1,0,30,12,0,59,252,0,113,24, + 0,225,48,0,226,48,0,226,96,0,244,96,0,120,192,0, + 0,192,0,1,143,0,1,157,128,3,56,128,3,112,128,6, + 113,0,6,113,0,12,122,0,12,60,0,17,17,51,21,1, + 0,3,224,0,6,112,0,14,48,0,14,48,0,14,112,0, + 7,224,0,15,15,128,31,135,0,51,194,0,97,230,0,225, + 252,0,224,248,0,224,120,0,240,124,0,248,255,128,127,159, + 0,63,14,0,3,8,8,7,2,9,224,224,224,224,224,224, + 64,64,5,21,21,8,1,252,8,24,48,48,112,96,96,224, + 224,224,224,224,224,224,96,96,112,48,48,24,8,5,21,21, + 8,1,252,128,192,96,96,48,48,48,56,56,56,56,56,56, + 56,48,48,48,96,96,192,128,10,11,22,13,1,6,12,0, + 12,0,76,128,237,192,127,128,30,0,127,128,237,192,76,128, + 12,0,12,0,12,12,24,14,1,0,6,0,6,0,6,0, + 6,0,6,0,255,240,255,240,6,0,6,0,6,0,6,0, + 6,0,4,9,9,6,1,251,96,240,240,112,48,96,96,192, + 128,6,3,3,8,1,5,252,252,252,4,4,4,6,1,0, + 96,240,240,96,7,17,17,7,0,0,6,6,4,12,12,8, + 24,24,16,48,48,32,96,96,64,192,192,11,17,34,12,0, + 0,14,0,59,128,49,128,113,192,113,192,241,224,241,224,241, + 224,241,224,241,224,241,224,113,192,113,192,113,192,49,128,59, + 128,14,0,9,17,34,12,2,0,12,0,60,0,252,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,62,0,255,128,10,17,34,12,1, + 0,30,0,63,0,127,128,199,128,131,128,3,128,3,128,3, + 0,7,0,6,0,12,0,12,0,24,64,48,64,127,192,255, + 192,255,128,11,17,34,12,0,0,15,0,63,128,99,192,65, + 192,1,192,3,128,7,0,31,0,7,192,1,224,1,224,0, + 224,0,224,96,224,241,192,251,128,126,0,11,17,34,12,0, + 0,1,128,3,128,7,128,7,128,15,128,27,128,51,128,51, + 128,99,128,195,128,255,224,255,224,255,224,3,128,3,128,3, + 128,3,128,11,17,34,12,0,0,31,224,31,192,63,192,48, + 0,32,0,112,0,127,0,127,128,127,192,7,192,1,192,0, + 192,0,192,96,192,241,128,251,128,126,0,11,17,34,12,1, + 0,1,224,7,128,30,0,60,0,56,0,120,0,119,0,123, + 128,241,192,241,224,241,224,241,224,241,224,113,192,113,192,59, + 128,30,0,11,17,34,12,0,0,63,224,127,224,127,192,192, + 192,129,128,1,128,3,128,3,0,3,0,7,0,6,0,6, + 0,14,0,14,0,12,0,28,0,28,0,11,17,34,12,0, + 0,31,0,59,128,113,192,113,192,113,192,121,128,59,0,63, + 0,31,128,55,192,99,192,225,224,225,224,225,224,241,192,123, + 128,62,0,11,17,34,12,0,0,14,0,59,128,113,192,113, + 192,241,224,241,224,241,224,241,224,113,224,59,192,31,192,3, + 192,3,128,7,128,15,0,60,0,240,0,4,12,12,8,2, + 0,96,240,240,96,0,0,0,0,96,240,240,96,4,17,17, + 8,2,251,96,240,240,96,0,0,0,0,96,240,240,112,48, + 96,96,192,128,11,12,24,14,1,0,0,96,1,224,7,192, + 31,0,60,0,224,0,224,0,60,0,31,0,7,192,1,224, + 0,96,11,6,12,14,1,3,255,224,255,224,0,0,0,0, + 255,224,255,224,11,12,24,14,1,0,192,0,240,0,124,0, + 31,0,7,128,0,224,0,224,7,128,31,0,124,0,240,0, + 192,0,9,17,34,12,1,0,62,0,111,0,231,128,231,128, + 71,128,7,128,15,0,14,0,28,0,24,0,24,0,0,0, + 0,0,24,0,60,0,60,0,24,0,20,21,63,23,1,252, + 0,124,0,3,247,128,15,128,192,30,0,96,60,0,32,56, + 59,48,112,255,16,113,231,16,241,199,16,227,198,16,227,142, + 16,227,142,48,227,142,32,243,158,96,241,254,192,112,243,128, + 120,0,0,56,0,0,30,0,0,7,131,0,1,252,0,17, + 17,51,18,0,0,1,128,0,1,192,0,3,192,0,3,224, + 0,3,224,0,6,224,0,6,240,0,4,112,0,12,112,0, + 8,120,0,8,56,0,31,248,0,16,60,0,48,60,0,48, + 30,0,112,30,0,248,127,128,14,17,34,16,0,0,255,192, + 60,240,60,120,60,120,60,120,60,120,60,112,60,192,63,224, + 60,120,60,60,60,60,60,60,60,60,60,56,60,120,255,224, + 15,17,34,18,1,0,3,242,30,62,60,14,120,6,120,2, + 240,2,240,0,240,0,240,0,240,0,240,0,240,0,120,0, + 120,2,60,14,31,60,7,240,16,17,34,18,1,0,255,224, + 60,120,60,60,60,30,60,30,60,15,60,15,60,15,60,15, + 60,15,60,15,60,14,60,30,60,28,60,60,60,120,255,224, + 15,17,34,17,1,0,255,252,60,28,60,12,60,4,60,4, + 60,32,60,32,60,96,63,224,60,96,60,32,60,32,60,2, + 60,2,60,6,60,14,255,254,14,17,34,15,0,0,255,252, + 60,28,60,12,60,4,60,4,60,32,60,32,60,96,63,224, + 60,96,60,32,60,32,60,0,60,0,60,0,60,0,255,0, + 17,17,51,19,1,0,3,242,0,30,62,0,60,14,0,120, + 6,0,120,2,0,240,2,0,240,0,0,240,0,0,240,0, + 0,240,127,128,240,30,0,240,30,0,120,30,0,120,30,0, + 56,30,0,30,30,0,7,248,0,18,17,51,19,0,0,255, + 63,192,60,15,0,60,15,0,60,15,0,60,15,0,60,15, + 0,60,15,0,60,15,0,63,255,0,60,15,0,60,15,0, + 60,15,0,60,15,0,60,15,0,60,15,0,60,15,0,255, + 63,192,8,17,17,10,0,0,255,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,60,255,11,19,38,12,0,254,31, + 224,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,231,128,231,128,231, + 0,231,0,60,0,18,17,51,19,0,0,255,63,128,60,30, + 0,60,24,0,60,48,0,60,96,0,60,192,0,61,128,0, + 63,192,0,63,192,0,61,224,0,60,240,0,60,248,0,60, + 124,0,60,62,0,60,31,0,60,15,128,255,31,192,15,17, + 34,16,0,0,255,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,2,60,6, + 60,12,60,28,255,252,21,17,51,24,1,0,252,1,248,60, + 3,224,62,3,224,62,7,224,47,5,224,47,13,224,39,9, + 224,39,137,224,39,153,224,35,145,224,35,241,224,35,241,224, + 33,225,224,33,225,224,32,193,224,32,193,224,248,7,248,17, + 17,51,18,0,0,248,15,128,124,7,0,62,2,0,63,2, + 0,63,130,0,47,194,0,39,226,0,35,226,0,33,242,0, + 32,250,0,32,126,0,32,62,0,32,30,0,32,30,0,32, + 14,0,96,6,0,248,2,0,16,17,34,19,1,0,7,224, + 28,56,56,28,120,30,112,14,240,15,240,15,240,15,240,15, + 240,15,240,15,240,15,112,14,120,30,56,28,28,56,7,224, + 14,17,34,15,0,0,255,224,60,120,60,60,60,60,60,60, + 60,60,60,60,60,120,63,224,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,255,0,17,22,66,19,1,251,7,224, + 0,28,56,0,56,28,0,120,30,0,112,14,0,240,15,0, + 240,15,0,240,15,0,240,15,0,240,15,0,240,15,0,240, + 15,0,240,14,0,120,30,0,120,28,0,60,56,0,31,224, + 0,7,192,0,1,224,0,1,240,0,0,252,0,0,63,128, + 16,17,34,18,1,0,255,224,60,120,60,56,60,60,60,60, + 60,60,60,56,60,112,63,192,61,224,60,240,60,240,60,120, + 60,124,60,60,60,30,255,31,12,17,34,14,1,0,63,160, + 113,224,224,224,224,96,224,32,248,0,126,0,127,128,63,192, + 15,224,7,224,129,240,128,240,192,240,224,224,249,224,191,128, + 14,17,34,16,1,0,255,252,231,156,199,140,135,132,135,132, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,31,224,17,17,51,18,0,0,255,15, + 128,126,7,0,60,2,0,60,2,0,60,2,0,60,2,0, + 60,2,0,60,2,0,60,2,0,60,2,0,60,2,0,60, + 2,0,60,2,0,60,6,0,30,4,0,31,12,0,7,248, + 0,17,17,51,18,0,0,255,31,128,60,6,0,60,4,0, + 30,4,0,30,12,0,15,8,0,15,24,0,15,24,0,7, + 144,0,7,176,0,3,224,0,3,224,0,3,224,0,1,192, + 0,1,192,0,0,128,0,0,128,0,24,17,51,25,0,0, + 255,127,159,60,30,6,60,30,4,30,15,12,30,31,8,30, + 31,24,15,23,152,15,55,144,15,39,176,7,227,176,7,195, + 224,7,195,224,3,193,224,3,129,192,3,129,192,1,0,128, + 1,0,128,16,17,34,18,1,0,255,63,62,12,30,8,31, + 24,15,48,15,160,7,224,3,192,3,224,3,224,3,240,6, + 240,12,120,8,124,24,60,56,62,252,255,18,17,51,18,0, + 0,255,143,192,62,3,0,30,2,0,15,6,0,15,12,0, + 7,140,0,7,152,0,3,208,0,3,240,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224, + 0,7,248,0,14,17,34,17,1,0,255,248,224,248,193,240, + 193,240,131,224,3,192,7,192,7,128,15,128,15,0,30,0, + 62,4,60,4,124,12,120,28,248,60,255,248,5,21,21,8, + 1,252,248,224,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,224,248,7,17,17,7,0,0,192,192,64, + 96,96,32,48,48,16,24,24,8,12,12,4,6,6,5,21, + 21,8,1,252,248,56,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,56,248,8,10,10,15,3,7,24, + 24,60,36,102,102,102,195,195,129,12,2,4,12,0,251,255, + 240,255,240,5,4,4,8,1,13,224,112,48,24,10,12,24, + 12,1,0,62,0,119,0,227,128,227,128,67,128,15,128,115, + 128,227,128,227,128,231,128,255,192,113,128,11,17,34,13,1, + 0,240,0,112,0,112,0,112,0,112,0,119,0,127,192,113, + 192,112,224,112,224,112,224,112,224,112,224,112,224,113,192,123, + 192,103,0,9,12,24,11,1,0,30,0,115,0,115,128,227, + 128,225,0,224,0,224,0,224,0,240,0,120,128,127,0,30, + 0,12,17,34,14,1,0,1,224,0,224,0,224,0,224,0, + 224,30,224,127,224,113,224,224,224,224,224,224,224,224,224,224, + 224,240,224,113,224,126,224,28,112,9,12,24,11,1,0,30, + 0,115,0,115,128,227,128,227,128,255,128,224,0,224,0,240, + 0,120,128,127,0,30,0,8,17,17,8,1,0,30,51,115, + 112,112,252,112,112,112,112,112,112,112,112,112,112,248,10,17, + 34,12,1,251,62,192,119,192,227,128,227,128,227,128,227,128, + 115,0,62,0,96,0,224,0,255,128,255,192,127,192,193,192, + 192,192,225,128,127,0,12,17,34,14,1,0,240,0,112,0, + 112,0,112,0,112,0,115,192,127,224,120,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,249,240,5,17, + 17,7,1,0,112,112,112,0,0,240,112,112,112,112,112,112, + 112,112,112,112,248,7,22,22,8,255,251,14,14,14,0,0, + 30,14,14,14,14,14,14,14,14,14,14,14,14,206,206,204, + 120,13,17,34,15,1,0,240,0,112,0,112,0,112,0,112, + 0,115,240,112,192,113,128,115,0,118,0,126,0,127,0,119, + 128,115,192,113,224,112,240,251,248,5,17,17,7,1,0,240, + 112,112,112,112,112,112,112,112,112,112,112,112,112,112,112,248, + 19,12,36,21,1,0,243,199,128,119,223,192,120,241,192,112, + 225,192,112,225,192,112,225,192,112,225,192,112,225,192,112,225, + 192,112,225,192,112,225,192,249,243,224,12,12,24,14,1,0, + 243,192,119,224,120,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,112,224,249,240,11,12,24,13,1,0,31,0, + 113,192,113,192,224,224,224,224,224,224,224,224,224,224,224,224, + 113,192,113,192,31,0,12,17,34,14,1,251,227,192,119,224, + 120,224,112,112,112,112,112,112,112,112,112,112,112,112,120,224, + 119,224,115,128,112,0,112,0,112,0,112,0,252,0,12,17, + 34,14,1,251,14,96,63,224,113,224,112,224,224,224,224,224, + 224,224,224,224,224,224,113,224,126,224,28,224,0,224,0,224, + 0,224,0,224,1,240,9,12,24,11,1,0,239,0,127,128, + 115,128,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,248,0,8,12,12,10,1,0,62,102,226,224,248,124, + 62,31,135,135,198,252,8,16,16,8,0,0,8,24,56,120, + 255,56,56,56,56,56,56,56,56,57,62,28,12,12,24,14, + 1,0,241,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,113,224,126,240,60,224,12,12,24,12,0,0, + 252,240,112,96,120,64,56,192,56,128,28,128,29,128,31,0, + 15,0,15,0,6,0,6,0,17,12,36,18,0,0,253,247, + 128,120,227,0,56,227,0,56,226,0,60,230,0,29,118,0, + 29,116,0,31,60,0,14,56,0,14,56,0,4,16,0,4, + 16,0,12,12,24,12,0,0,252,240,120,96,60,192,29,128, + 31,0,15,0,15,0,31,128,27,192,49,192,97,224,243,240, + 12,17,34,12,0,251,253,240,120,96,56,64,56,192,60,128, + 28,128,29,128,31,0,15,0,15,0,6,0,6,0,6,0, + 100,0,236,0,248,0,112,0,9,12,24,11,1,0,255,128, + 199,0,143,0,142,0,30,0,28,0,60,0,56,0,120,128, + 113,128,241,128,255,128,7,21,21,10,1,252,14,24,48,48, + 48,48,48,48,48,96,192,96,48,48,48,48,48,48,48,24, + 14,2,22,22,6,2,251,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,7,21,21, + 10,1,252,224,48,24,24,24,24,24,24,24,12,6,12,24, + 24,24,24,24,24,24,48,224,12,6,12,13,0,6,24,0, + 126,16,255,16,143,240,135,224,1,128,255}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--34-240-100-100-P-177-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 23, '1' Height: 23 + Calculated Max Values w=32 h=30 x= 4 y=18 dx=33 dy= 0 ascent=30 len=108 + Font Bounding box w=38 h=49 x=-5 y=-12 + Calculated Min Values x=-2 y=-7 dx= 0 dy= 0 + Pure Font ascent =23 descent=-7 + X Font ascent =23 descent=-7 + Max Font ascent =30 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB24[10820] U8G_SECTION(".progmem.u8g_font_timB24") = { + 0,38,49,251,244,23,5,149,13,202,32,255,249,30,249,23, + 249,0,0,0,8,0,1,5,23,23,11,3,0,112,248,248, + 248,248,248,248,112,112,112,112,32,32,32,32,0,0,0,112, + 248,248,248,112,11,11,22,19,2,12,96,192,241,224,241,224, + 241,224,241,224,241,224,241,224,96,192,96,192,96,192,96,192, + 16,23,46,17,0,0,3,12,3,12,7,28,7,28,6,24, + 6,24,127,255,127,255,14,56,12,48,12,48,12,48,12,48, + 28,112,255,254,255,254,24,96,24,96,24,96,56,224,56,224, + 48,192,48,192,15,28,56,16,1,253,3,0,3,0,15,232, + 63,248,115,56,99,24,227,8,227,8,243,0,251,0,127,0, + 127,128,63,224,15,240,3,248,3,252,3,124,131,62,131,30, + 131,30,195,28,195,60,243,120,255,224,131,0,3,0,3,0, + 3,0,24,23,69,33,4,0,7,128,32,15,192,224,30,127, + 192,60,32,192,124,33,128,120,33,128,248,99,0,240,71,0, + 240,198,0,240,206,0,241,140,60,127,24,126,60,25,243,0, + 49,225,0,51,193,0,99,193,0,231,195,0,199,130,1,199, + 134,1,135,134,3,3,140,3,3,248,6,1,224,22,23,69, + 28,2,0,1,240,0,3,188,0,7,30,0,7,14,0,15, + 14,0,15,14,0,15,140,0,7,216,0,7,240,0,3,224, + 252,7,240,112,29,240,48,57,248,96,112,252,64,240,252,192, + 240,127,128,248,63,0,248,31,128,252,31,192,254,63,228,127, + 243,252,127,193,252,31,0,120,4,11,11,9,2,12,96,240, + 240,240,240,240,240,96,96,96,96,8,29,29,11,2,250,3, + 6,12,24,24,48,48,112,96,224,224,224,224,224,224,224,224, + 224,224,224,96,112,48,48,24,24,12,6,3,8,29,29,11, + 0,250,192,96,48,24,24,12,12,14,6,7,7,7,7,7, + 7,7,7,7,7,7,6,14,12,12,24,24,48,96,192,13, + 14,28,17,1,9,3,0,7,0,7,0,231,56,242,120,122, + 240,15,128,15,128,122,240,242,120,231,56,7,0,7,0,6, + 0,15,15,30,19,2,0,3,128,3,128,3,128,3,128,3, + 128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,3, + 128,3,128,3,128,6,11,11,8,1,250,56,124,124,124,60, + 12,8,24,48,96,192,8,4,4,11,1,6,255,255,255,255, + 5,5,5,8,1,0,112,248,248,248,112,9,25,50,9,0, + 0,1,128,1,128,1,0,3,0,3,0,3,0,6,0,6, + 0,6,0,4,0,12,0,12,0,12,0,24,0,24,0,24, + 0,48,0,48,0,48,0,48,0,96,0,96,0,96,0,192, + 0,192,0,14,23,46,16,1,0,7,128,31,224,28,224,56, + 112,120,112,120,120,120,120,248,124,248,124,248,124,248,124,248, + 124,248,124,248,124,248,124,248,124,120,120,120,120,120,120,56, + 112,28,224,15,192,7,128,13,23,46,16,2,0,1,128,7, + 128,31,128,255,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,31,192,255,248,16,23,46,16,0, + 0,3,192,15,240,31,248,63,248,48,252,96,124,64,124,0, + 124,0,120,0,120,0,120,0,240,0,224,1,192,1,128,3, + 0,7,1,14,3,28,6,63,254,127,254,255,252,255,252,14, + 23,46,16,1,0,7,192,31,240,63,240,48,248,96,120,64, + 120,0,120,0,112,0,192,3,224,15,240,15,248,3,248,0, + 252,0,124,0,60,0,60,0,60,96,56,240,56,248,112,127, + 192,31,0,14,23,46,16,1,0,0,112,0,240,0,240,1, + 240,3,240,6,240,6,240,12,240,24,240,24,240,48,240,96, + 240,96,240,192,240,255,252,255,252,255,252,255,252,0,240,0, + 240,0,240,0,240,0,240,13,23,46,16,1,0,31,248,31, + 248,31,248,31,248,48,0,48,0,32,0,62,0,127,128,127, + 224,127,240,127,240,3,248,0,248,0,120,0,56,0,56,0, + 56,96,48,240,48,248,96,127,192,31,0,14,23,46,16,1, + 0,0,28,0,240,3,192,7,128,15,0,30,0,62,0,60, + 0,124,0,127,224,253,240,248,248,248,120,248,124,248,124,248, + 124,248,124,120,124,120,120,120,120,56,112,28,224,15,192,13, + 23,46,16,2,0,127,248,127,248,255,248,255,248,192,48,128, + 112,128,112,0,96,0,224,0,224,0,192,1,192,1,192,3, + 128,3,128,3,128,7,0,7,0,7,0,14,0,14,0,14, + 0,28,0,14,23,46,16,1,0,15,224,62,240,60,120,120, + 120,120,56,120,56,124,56,126,112,63,224,63,128,31,192,15, + 224,63,240,113,248,112,252,224,124,224,60,224,60,224,60,240, + 56,120,120,127,240,31,192,14,23,46,16,1,0,15,192,28, + 224,56,112,120,120,120,120,248,120,248,124,248,124,248,124,248, + 124,120,124,124,124,62,252,31,248,0,248,0,240,1,240,1, + 224,3,192,7,128,15,0,60,0,224,0,5,16,16,11,3, + 0,112,248,248,248,112,0,0,0,0,0,0,112,248,248,248, + 112,6,22,22,11,2,250,56,124,124,124,56,0,0,0,0, + 0,0,56,124,124,124,60,12,8,24,48,96,192,16,15,30, + 19,1,0,0,3,0,15,0,127,1,252,15,224,63,128,252, + 0,240,0,252,0,63,128,15,224,1,252,0,127,0,15,0, + 3,15,10,20,19,2,3,255,254,255,254,255,254,0,0,0, + 0,0,0,0,0,255,254,255,254,255,254,16,15,30,19,2, + 0,192,0,240,0,254,0,63,128,7,240,1,252,0,63,0, + 15,0,63,1,252,7,240,63,128,254,0,240,0,192,0,12, + 23,46,16,2,0,63,0,115,192,225,224,225,240,241,240,241, + 240,97,240,1,224,1,224,3,192,3,128,3,0,6,0,4, + 0,4,0,0,0,0,0,0,0,14,0,31,0,31,0,31, + 0,14,0,26,27,108,31,2,251,0,31,224,0,0,252,60, + 0,3,224,14,0,7,128,3,0,15,0,1,0,30,0,1, + 128,62,15,56,128,60,31,248,192,124,124,248,64,120,120,120, + 64,248,248,240,64,248,240,240,64,241,240,240,64,241,240,240, + 64,241,224,240,192,241,225,224,128,241,225,225,128,241,227,227, + 0,113,243,227,0,120,254,254,0,120,120,120,0,60,0,0, + 0,28,0,0,0,14,0,1,128,7,128,7,0,1,224,60, + 0,0,63,224,0,21,23,69,24,1,0,0,32,0,0,96, + 0,0,112,0,0,240,0,0,248,0,0,248,0,1,248,0, + 1,124,0,1,124,0,3,62,0,2,62,0,6,62,0,6, + 31,0,4,31,0,12,15,0,15,255,128,24,15,128,24,7, + 192,16,7,192,48,3,224,48,3,224,112,7,240,252,31,248, + 19,23,69,22,1,0,255,252,0,63,31,0,31,15,128,31, + 7,192,31,7,192,31,7,192,31,7,192,31,7,192,31,7, + 128,31,15,128,31,62,0,31,252,0,31,15,128,31,7,192, + 31,7,224,31,3,224,31,3,224,31,3,224,31,3,224,31, + 3,192,31,7,192,63,15,0,255,252,0,19,23,69,24,2, + 0,1,252,32,7,255,96,15,7,224,30,1,224,60,0,224, + 124,0,96,124,0,96,248,0,32,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,124,0,0,124,0,0,60,0,32,30,0,96,15,129,192, + 3,255,128,0,254,0,22,23,69,24,0,0,255,252,0,63, + 255,128,31,7,224,31,1,240,31,1,240,31,0,248,31,0, + 248,31,0,252,31,0,124,31,0,124,31,0,124,31,0,124, + 31,0,124,31,0,124,31,0,124,31,0,248,31,0,248,31, + 0,248,31,1,240,31,1,224,31,7,192,63,255,0,255,252, + 0,21,23,69,22,0,0,255,255,224,63,255,224,31,0,224, + 31,0,96,31,0,96,31,0,32,31,0,32,31,4,0,31, + 4,0,31,12,0,31,28,0,31,252,0,31,28,0,31,12, + 0,31,4,0,31,4,0,31,0,8,31,0,24,31,0,48, + 31,0,112,31,1,240,63,255,224,255,255,224,19,23,69,20, + 0,0,255,255,224,63,255,224,31,0,224,31,0,96,31,0, + 96,31,0,32,31,0,32,31,4,0,31,4,0,31,12,0, + 31,28,0,31,252,0,31,28,0,31,12,0,31,4,0,31, + 4,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,63,128,0,255,224,0,22,23,69,25,2,0,1,252,32, + 7,255,96,15,7,224,30,1,224,60,0,224,124,0,96,124, + 0,96,248,0,32,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,31,252,248,7,240,248,3,224,124,3,224, + 124,3,224,60,3,224,62,3,224,30,7,224,15,143,224,3, + 255,0,24,23,69,25,0,0,255,231,255,63,129,252,31,0, + 248,31,0,248,31,0,248,31,0,248,31,0,248,31,0,248, + 31,0,248,31,0,248,31,255,248,31,255,248,31,0,248,31, + 0,248,31,0,248,31,0,248,31,0,248,31,0,248,31,0, + 248,31,0,248,31,0,248,63,129,252,255,231,255,11,23,46, + 13,1,0,255,224,63,128,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,63,128,255, + 224,15,26,52,16,0,253,15,254,3,248,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,97,240,241, + 240,241,240,243,224,227,224,127,192,31,0,24,23,69,25,1, + 0,255,207,252,127,3,224,62,1,192,62,3,128,62,7,0, + 62,14,0,62,28,0,62,56,0,62,112,0,62,224,0,63, + 240,0,63,248,0,63,252,0,62,254,0,62,127,0,62,63, + 128,62,31,192,62,15,224,62,7,240,62,3,248,62,1,252, + 127,0,254,255,195,255,20,23,69,22,1,0,255,224,0,63, + 128,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,16,31, + 0,48,31,0,96,31,0,224,31,129,224,63,255,192,255,255, + 192,28,23,92,31,1,0,255,0,15,240,63,0,31,192,31, + 128,31,128,31,128,63,128,23,192,63,128,23,192,47,128,23, + 192,111,128,19,224,79,128,19,224,207,128,19,224,207,128,17, + 240,143,128,17,241,143,128,16,249,15,128,16,251,15,128,16, + 251,15,128,16,126,15,128,16,126,15,128,16,124,15,128,16, + 60,15,128,16,60,15,128,16,24,15,128,56,24,31,192,254, + 24,63,240,22,23,69,24,1,0,254,1,252,127,0,112,63, + 128,32,31,128,32,31,192,32,31,224,32,23,240,32,19,248, + 32,17,248,32,17,252,32,16,254,32,16,127,32,16,63,32, + 16,31,160,16,31,224,16,15,224,16,7,224,16,3,224,16, + 3,224,16,1,224,16,0,224,56,0,96,254,0,32,21,23, + 69,25,2,0,1,252,0,7,255,0,15,143,128,30,3,192, + 60,1,224,124,1,240,120,0,240,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,120,0,240,124,1,240,60,1,224,30,3,192, + 15,143,128,7,255,0,1,252,0,19,23,69,20,0,0,255, + 252,0,63,31,128,31,15,192,31,7,192,31,7,224,31,3, + 224,31,3,224,31,3,224,31,3,224,31,7,192,31,7,192, + 31,31,128,31,254,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,63,128, + 0,255,224,0,22,27,81,26,2,252,1,252,0,7,255,0, + 15,143,128,30,3,192,60,1,224,124,1,240,120,0,240,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,248,248,0,248,124,1,240, + 124,1,240,62,3,224,31,7,192,7,255,0,1,252,0,0, + 254,0,0,127,132,0,31,248,0,7,224,22,23,69,24,1, + 0,255,252,0,63,31,128,31,7,192,31,7,224,31,3,224, + 31,3,224,31,3,224,31,3,224,31,7,224,31,7,192,31, + 31,128,31,252,0,31,126,0,31,62,0,31,63,0,31,31, + 128,31,31,128,31,15,192,31,7,224,31,7,224,31,3,240, + 63,129,248,255,225,252,15,23,46,18,1,0,15,196,56,124, + 112,60,112,28,240,12,240,12,248,4,252,0,255,0,127,192, + 63,240,31,248,15,252,3,252,1,254,128,126,128,62,192,30, + 192,30,224,28,240,28,248,56,143,224,19,23,69,22,1,0, + 255,255,224,249,243,224,225,240,224,193,240,96,129,240,32,129, + 240,32,129,240,32,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,3, + 248,0,15,254,0,23,23,69,24,0,0,255,224,254,63,128, + 56,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,15,128,48,15,128,96,7,192,192,3,255,128,0,254,0, + 22,23,69,24,1,0,255,195,252,127,0,240,62,0,96,63, + 0,64,31,0,192,31,128,192,15,128,128,15,129,128,15,193, + 0,7,193,0,7,195,0,3,226,0,3,230,0,3,246,0, + 1,244,0,1,252,0,0,248,0,0,248,0,0,248,0,0, + 112,0,0,112,0,0,32,0,0,32,0,32,23,92,33,0, + 0,255,239,255,63,127,3,248,14,63,1,248,12,31,1,248, + 12,31,1,248,8,31,129,252,24,15,129,252,24,15,129,124, + 16,15,195,124,48,7,194,126,48,7,198,62,32,7,230,62, + 96,3,228,62,96,3,236,31,64,3,248,31,192,1,248,31, + 192,1,248,15,128,1,240,15,128,0,240,15,128,0,224,7, + 0,0,224,7,0,0,224,7,0,0,64,2,0,21,23,69, + 24,1,0,255,207,224,127,3,0,63,2,0,31,134,0,31, + 132,0,15,204,0,15,200,0,7,248,0,3,240,0,3,240, + 0,1,248,0,0,248,0,1,252,0,1,124,0,3,62,0, + 2,63,0,6,31,0,4,31,128,12,15,192,8,15,192,24, + 7,224,56,7,240,254,63,248,22,23,69,24,1,0,255,195, + 252,127,0,240,63,0,96,63,0,96,31,128,192,31,128,128, + 15,193,128,15,195,0,7,227,0,3,230,0,3,244,0,1, + 252,0,1,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,1,252,0, + 7,255,0,19,23,69,22,1,0,63,255,192,126,15,128,120, + 31,128,112,31,0,96,63,0,64,126,0,0,126,0,0,252, + 0,0,252,0,1,248,0,1,240,0,3,240,0,3,224,0, + 7,224,0,7,192,0,15,192,32,31,128,32,31,128,96,63, + 0,96,63,0,224,126,1,224,126,7,192,255,255,192,7,28, + 28,11,2,251,254,240,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,240,254, + 8,26,26,9,0,0,128,192,192,192,96,96,96,96,48,48, + 48,24,24,24,24,12,12,12,4,6,6,6,3,3,3,3, + 7,28,28,11,1,251,254,30,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14, + 30,254,11,13,26,19,4,10,14,0,14,0,31,0,31,0, + 27,0,59,128,59,128,113,192,113,192,97,192,224,224,224,224, + 192,96,16,3,6,16,0,251,255,255,255,255,255,255,7,6, + 6,11,1,17,192,224,112,56,12,2,14,16,32,16,1,0, + 31,128,49,224,112,240,120,240,120,240,48,240,1,240,7,240, + 28,240,56,240,120,240,240,240,249,240,255,244,126,252,60,120, + 17,22,66,18,0,0,252,0,0,124,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,120,0,61,254,0,63,254, + 0,62,31,0,60,31,0,60,15,128,60,15,128,60,15,128, + 60,15,128,60,15,128,60,15,128,60,15,0,60,31,0,62, + 62,0,55,252,0,33,240,0,14,16,32,15,1,0,7,240, + 30,120,60,60,124,60,120,24,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,124,0,62,24,31,240,15,224,16,22, + 44,18,1,0,0,252,0,124,0,60,0,60,0,60,0,60, + 15,188,63,252,124,60,120,60,248,60,240,60,240,60,240,60, + 240,60,240,60,240,60,240,60,120,60,124,126,63,255,15,184, + 14,16,32,15,0,0,7,192,30,240,60,112,120,56,120,60, + 248,60,248,60,255,252,248,0,248,0,248,0,120,0,124,0, + 62,24,31,240,7,224,12,23,46,11,0,0,7,224,30,112, + 28,240,60,240,60,96,60,0,60,0,255,128,255,128,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,126,0,255,0,14,23,46,16,1,249, + 15,192,61,252,112,252,240,240,240,120,240,120,240,120,240,120, + 120,248,63,240,31,192,60,0,96,0,224,0,255,224,255,248, + 127,252,48,60,96,28,192,12,224,28,127,248,31,224,17,22, + 66,18,0,0,252,0,0,124,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,120,0,61,252,0,63,254,0,62, + 62,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 126,63,0,255,127,128,8,23,23,9,0,0,24,60,60,60, + 24,0,0,252,124,60,60,60,60,60,60,60,60,60,60,60, + 60,126,255,10,30,60,11,254,249,1,128,3,192,3,192,3, + 192,1,128,0,0,0,0,15,192,7,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,99,192,243,192,243, + 128,119,128,62,0,18,22,66,18,0,0,252,0,0,124,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,31,0, + 60,14,0,60,12,0,60,24,0,60,48,0,60,96,0,60, + 192,0,61,192,0,63,224,0,61,240,0,60,248,0,60,124, + 0,60,62,0,60,31,0,126,15,128,255,31,192,8,22,22, + 9,0,0,252,124,60,60,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,126,255,26,16,64,27,0,0,252, + 120,60,0,125,254,254,0,63,63,159,0,62,63,31,0,62, + 30,15,0,60,30,15,0,60,30,15,0,60,30,15,0,60, + 30,15,0,60,30,15,0,60,30,15,0,60,30,15,0,60, + 30,15,0,60,30,15,0,126,63,31,128,255,127,191,192,17, + 16,48,18,0,0,252,120,0,125,252,0,63,62,0,62,30, + 0,62,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,126, + 63,0,255,127,128,14,16,32,17,1,0,15,192,60,240,120, + 120,120,120,240,60,240,60,240,60,240,60,240,60,240,60,240, + 60,240,60,120,120,120,120,60,240,15,192,17,23,69,18,0, + 249,252,248,0,125,254,0,63,31,0,62,15,0,60,15,128, + 60,7,128,60,7,128,60,7,128,60,7,128,60,7,128,60, + 7,128,60,7,128,62,15,0,63,15,0,63,254,0,60,248, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 126,0,0,255,0,0,16,23,46,18,1,249,15,196,62,236, + 124,60,120,60,248,60,240,60,240,60,240,60,240,60,240,60, + 240,60,240,60,120,60,120,124,63,252,15,60,0,60,0,60, + 0,60,0,60,0,60,0,126,0,255,13,16,32,15,1,0, + 252,112,124,248,63,248,63,120,62,48,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,126,0,255,0, + 10,16,32,13,1,0,31,64,113,192,96,192,224,192,240,64, + 252,0,127,0,127,128,63,128,15,192,3,192,129,192,193,192, + 193,192,227,128,191,0,10,21,42,11,0,0,4,0,12,0, + 28,0,28,0,60,0,127,128,255,128,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,64, + 62,192,63,128,30,0,17,16,48,18,0,0,252,126,0,124, + 62,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,62,0,62,95,0,31,223,128,7,140,0,15,16,32,17, + 0,0,255,62,124,12,60,8,62,24,30,16,31,16,31,48, + 15,32,15,32,7,224,7,192,7,192,3,128,3,128,1,0, + 1,0,23,16,48,24,0,0,255,127,190,126,62,28,60,30, + 8,62,30,24,30,31,16,31,31,48,31,63,48,15,47,160, + 15,231,224,7,231,192,7,199,192,7,195,192,3,131,128,3, + 131,128,1,1,0,1,1,0,16,16,32,17,0,0,255,62, + 126,24,62,24,31,48,31,96,15,192,15,192,7,192,3,224, + 3,224,7,240,13,248,24,248,24,124,48,124,252,255,15,23, + 46,17,0,249,255,190,126,12,62,8,62,8,31,24,31,16, + 15,16,15,176,15,160,7,160,7,224,7,192,3,192,3,192, + 1,128,1,128,1,128,1,0,115,0,243,0,246,0,254,0, + 120,0,12,16,32,15,1,0,255,240,227,240,195,224,135,224, + 135,192,15,128,15,128,31,0,31,0,62,0,62,16,124,16, + 124,48,248,48,248,240,255,240,10,27,54,13,1,252,7,192, + 14,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,56,0,112,0,224,0,112,0,56,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 14,0,7,192,2,30,30,7,3,249,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,10,27,54,13,1,252,248,0, + 28,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,7,0,3,128,1,192,3,128,7,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 28,0,248,0,15,8,16,17,1,8,28,0,63,0,127,130, + 255,198,143,254,131,252,1,248,0,112,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,0,0,0,8,0, + 1,5,23,23,11,3,249,112,248,248,248,112,0,0,0,32, + 32,32,32,112,112,112,112,248,248,248,248,248,248,112,13,25, + 50,17,1,251,0,8,0,8,0,24,0,16,7,240,28,224, + 56,240,120,240,240,240,240,224,240,128,241,128,241,0,243,0, + 242,0,250,16,126,48,127,224,63,192,15,0,8,0,16,0, + 16,0,32,0,32,0,16,23,46,17,1,0,0,240,3,252, + 7,30,14,30,14,30,30,12,30,0,30,0,31,0,15,0, + 15,0,127,240,127,240,7,128,7,128,7,128,55,128,127,1, + 239,3,199,135,199,255,238,254,124,124,14,15,30,17,1,4, + 96,24,247,188,255,252,127,248,60,240,120,120,112,56,112,56, + 112,56,120,120,60,240,127,248,255,252,247,188,96,24,18,23, + 69,17,1,0,255,135,192,62,3,128,62,3,0,31,3,0, + 31,6,0,31,134,0,15,132,0,15,140,0,7,200,0,7, + 216,0,7,208,0,3,240,0,31,252,0,31,252,0,3,224, + 0,31,252,0,31,252,0,1,224,0,1,224,0,1,224,0, + 1,224,0,3,240,0,15,252,0,2,30,30,7,3,249,192, + 192,192,192,192,192,192,192,192,192,192,192,0,0,0,0,0, + 0,192,192,192,192,192,192,192,192,192,192,192,192,12,28,56, + 17,2,251,15,128,24,192,48,224,113,224,113,224,120,192,60, + 0,62,0,31,0,15,128,63,192,99,224,193,224,192,240,224, + 112,240,48,120,48,124,96,63,192,31,128,7,128,3,192,49, + 224,120,224,120,224,112,192,49,128,31,0,8,4,4,11,2, + 18,66,231,231,66,22,23,69,25,1,0,1,254,0,7,255, + 128,15,3,192,28,0,224,56,0,112,48,254,48,113,199,56, + 99,131,24,231,131,28,199,0,12,199,0,12,199,0,12,199, + 0,12,199,128,12,195,195,12,227,230,28,96,252,24,112,0, + 56,56,0,112,28,0,224,15,3,192,7,255,128,1,254,0, + 9,14,28,10,0,9,60,0,102,0,103,0,103,0,31,0, + 103,0,199,0,199,0,239,128,115,0,0,0,0,0,255,128, + 255,128,14,14,28,17,2,1,2,4,6,12,14,28,28,56, + 56,112,112,224,225,192,225,192,112,224,56,112,28,56,14,28, + 6,12,2,4,16,9,18,19,1,3,255,255,255,255,255,255, + 0,7,0,7,0,7,0,7,0,7,0,7,8,4,4,11, + 1,6,255,255,255,255,22,23,69,25,2,0,1,254,0,7, + 255,128,15,3,192,28,0,224,56,0,112,51,252,48,113,206, + 56,96,199,24,224,199,28,192,199,12,192,206,12,192,248,12, + 192,220,12,192,206,12,192,198,12,224,199,28,97,195,152,115, + 227,248,56,0,112,28,0,224,15,3,192,7,255,128,1,254, + 0,9,2,4,11,1,18,255,128,255,128,9,10,20,13,2, + 13,28,0,127,0,99,0,193,128,193,128,193,128,193,128,99, + 0,127,0,60,0,15,19,38,19,2,0,3,128,3,128,3, + 128,3,128,3,128,3,128,255,254,255,254,255,254,3,128,3, + 128,3,128,3,128,3,128,3,128,0,0,255,254,255,254,255, + 254,10,14,28,10,1,9,62,0,127,0,199,128,131,128,3, + 128,3,128,3,0,6,0,12,0,24,0,48,64,127,192,255, + 128,255,128,9,14,28,10,1,9,30,0,63,0,103,128,67, + 128,3,0,6,0,31,0,7,128,3,128,3,128,3,128,195, + 128,231,0,126,0,7,6,6,11,3,17,6,14,28,56,96, + 128,16,22,44,19,2,250,248,252,120,124,120,60,120,60,120, + 60,120,60,120,60,120,60,120,60,120,60,120,60,120,60,120, + 124,124,252,127,191,95,56,64,0,224,0,224,0,224,0,224, + 0,224,0,16,29,58,18,1,250,15,255,63,255,63,140,127, + 140,255,140,255,140,255,140,255,140,255,140,255,140,255,140,127, + 140,63,140,63,140,15,140,1,140,1,140,1,140,1,140,1, + 140,1,140,1,140,1,140,1,140,1,140,1,140,1,140,1, + 140,1,140,4,4,4,8,2,9,96,240,240,96,7,7,7, + 11,1,249,6,12,28,14,198,238,124,9,14,28,10,0,9, + 12,0,124,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,255,128,9,14,28,11, + 1,9,28,0,119,0,99,0,227,128,227,128,227,128,227,128, + 99,0,119,0,28,0,0,0,0,0,255,128,255,128,14,14, + 28,17,1,1,129,0,193,128,225,192,112,224,56,112,28,56, + 14,28,14,28,28,56,56,112,112,224,225,192,193,128,129,0, + 23,23,69,25,0,0,12,0,8,124,0,24,28,0,48,28, + 0,48,28,0,96,28,0,96,28,0,192,28,1,128,28,1, + 128,28,3,12,28,6,28,28,6,60,28,12,124,255,152,252, + 0,24,220,0,49,156,0,99,156,0,99,28,0,199,254,1, + 199,254,1,128,28,3,0,28,3,0,28,23,23,69,25,0, + 0,12,0,48,124,0,96,28,0,96,28,0,192,28,0,128, + 28,1,128,28,3,0,28,2,0,28,6,0,28,12,240,28, + 25,248,28,27,60,28,50,28,255,176,28,0,96,28,0,96, + 24,0,192,48,1,128,96,1,128,192,3,1,130,6,3,254, + 6,7,252,12,15,252,22,23,69,25,1,0,30,0,16,63, + 0,48,103,128,96,67,128,96,3,0,192,6,0,192,31,1, + 128,7,131,0,3,131,0,3,134,24,3,140,56,195,140,120, + 231,24,248,126,49,248,0,49,184,0,99,56,0,199,56,0, + 198,56,1,143,252,3,143,252,3,0,56,6,0,56,6,0, + 56,12,23,46,16,2,249,7,0,15,128,15,128,15,128,7, + 0,0,0,0,0,0,0,2,0,2,0,6,0,12,0,28, + 0,60,0,120,0,120,0,248,96,248,240,248,240,248,112,120, + 112,60,224,31,192,21,30,90,24,1,0,6,0,0,7,0, + 0,3,128,0,1,192,0,0,96,0,0,0,0,0,32,0, + 0,32,0,0,96,0,0,112,0,0,240,0,0,248,0,0, + 248,0,1,248,0,1,124,0,1,124,0,3,62,0,2,62, + 0,6,62,0,6,31,0,4,31,0,12,15,0,15,255,128, + 24,15,128,24,7,192,16,7,192,48,3,224,48,3,224,112, + 7,240,252,31,248,21,30,90,24,1,0,0,3,0,0,7, + 0,0,14,0,0,28,0,0,48,0,0,64,0,0,0,0, + 0,32,0,0,96,0,0,112,0,0,240,0,0,248,0,0, + 248,0,1,248,0,1,124,0,1,124,0,3,62,0,2,62, + 0,6,62,0,6,31,0,4,31,0,12,15,0,15,255,128, + 24,15,128,24,7,192,16,7,192,48,3,224,48,3,224,112, + 7,240,252,31,248,21,30,90,24,1,0,0,96,0,0,240, + 0,1,248,0,1,152,0,3,12,0,2,4,0,0,0,0, + 0,32,0,0,96,0,0,112,0,0,240,0,0,248,0,0, + 248,0,1,248,0,1,124,0,1,124,0,3,62,0,2,62, + 0,6,62,0,6,31,0,4,31,0,12,15,0,15,255,128, + 24,15,128,24,7,192,16,7,192,48,3,224,48,3,224,112, + 7,240,252,31,248,21,29,87,24,1,0,0,194,0,1,246, + 0,3,124,0,2,24,0,0,0,0,0,0,0,0,32,0, + 0,96,0,0,112,0,0,240,0,0,248,0,0,248,0,1, + 248,0,1,124,0,1,124,0,3,62,0,2,62,0,6,62, + 0,6,31,0,4,31,0,12,15,0,15,255,128,24,15,128, + 24,7,192,16,7,192,48,3,224,48,3,224,112,7,240,252, + 31,248,21,29,87,24,1,0,1,8,0,3,156,0,3,156, + 0,1,8,0,0,0,0,0,0,0,0,32,0,0,96,0, + 0,112,0,0,240,0,0,248,0,0,248,0,1,248,0,1, + 124,0,1,124,0,3,62,0,2,62,0,6,62,0,6,31, + 0,4,31,0,12,15,0,15,255,128,24,15,128,24,7,192, + 16,7,192,48,3,224,48,3,224,112,7,240,252,31,248,21, + 30,90,24,1,0,0,224,0,1,176,0,3,24,0,2,8, + 0,3,24,0,1,176,0,0,224,0,0,0,0,0,96,0, + 0,112,0,0,240,0,0,248,0,0,248,0,1,248,0,1, + 124,0,1,124,0,3,62,0,2,62,0,6,62,0,6,31, + 0,4,31,0,12,15,0,15,255,128,24,15,128,24,7,192, + 16,7,192,48,3,224,48,3,224,112,7,240,252,31,248,32, + 23,92,33,0,0,3,255,255,252,0,255,255,252,0,99,224, + 28,0,99,224,12,0,195,224,12,0,195,224,4,1,131,224, + 4,1,131,224,128,3,3,224,128,3,3,225,128,2,3,227, + 128,7,255,255,128,7,255,227,128,12,3,225,128,12,3,224, + 128,24,3,224,128,24,3,224,1,56,3,224,3,48,3,224, + 6,112,3,224,14,112,3,224,62,248,7,255,252,254,31,255, + 252,19,30,90,24,2,249,1,252,32,7,255,96,15,7,224, + 30,1,224,60,0,224,124,0,96,124,0,96,248,0,32,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,124,0,0,124,0,0,60,0,32, + 30,0,96,15,129,192,3,255,128,0,254,0,0,24,0,0, + 48,0,0,112,0,0,56,0,3,24,0,3,184,0,1,240, + 0,21,30,90,22,0,0,6,0,0,7,0,0,3,128,0, + 1,192,0,0,96,0,0,48,0,0,0,0,255,255,224,63, + 255,224,31,0,224,31,0,96,31,0,96,31,0,32,31,0, + 32,31,4,0,31,4,0,31,12,0,31,28,0,31,252,0, + 31,28,0,31,12,0,31,4,0,31,4,0,31,0,8,31, + 0,24,31,0,48,31,0,112,31,1,240,63,255,224,255,255, + 224,21,30,90,22,0,0,0,1,128,0,3,128,0,7,0, + 0,14,0,0,24,0,0,48,0,0,0,0,255,255,224,63, + 255,224,31,0,224,31,0,96,31,0,96,31,0,32,31,0, + 32,31,4,0,31,4,0,31,12,0,31,28,0,31,252,0, + 31,28,0,31,12,0,31,4,0,31,4,0,31,0,8,31, + 0,24,31,0,48,31,0,112,31,1,240,63,255,224,255,255, + 224,21,30,90,22,0,0,0,48,0,0,120,0,0,252,0, + 0,204,0,1,134,0,1,2,0,0,0,0,255,255,224,63, + 255,224,31,0,224,31,0,96,31,0,96,31,0,32,31,0, + 32,31,4,0,31,4,0,31,12,0,31,28,0,31,252,0, + 31,28,0,31,12,0,31,4,0,31,4,0,31,0,8,31, + 0,24,31,0,48,31,0,112,31,1,240,63,255,224,255,255, + 224,21,29,87,22,0,0,0,132,0,1,206,0,1,206,0, + 0,132,0,0,0,0,0,0,0,255,255,224,63,255,224,31, + 0,224,31,0,96,31,0,96,31,0,32,31,0,32,31,4, + 0,31,4,0,31,12,0,31,28,0,31,252,0,31,28,0, + 31,12,0,31,4,0,31,4,0,31,0,8,31,0,24,31, + 0,48,31,0,112,31,1,240,63,255,224,255,255,224,11,30, + 60,13,1,0,192,0,224,0,112,0,56,0,12,0,6,0, + 0,0,255,224,63,128,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,63,128,255,224, + 12,30,60,13,1,0,0,48,0,112,0,224,1,192,3,0, + 6,0,0,0,255,224,63,128,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,63,128, + 255,224,11,30,60,13,1,0,6,0,15,0,31,128,25,128, + 48,192,32,64,0,0,255,224,63,128,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 63,128,255,224,11,29,58,13,1,0,16,128,57,192,57,192, + 16,128,0,0,0,0,255,224,63,128,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 63,128,255,224,22,23,69,24,0,0,255,254,0,63,15,128, + 31,3,224,31,1,240,31,1,240,31,0,248,31,0,248,31, + 0,252,31,0,252,31,0,252,255,240,124,255,240,124,255,240, + 124,31,0,124,31,0,252,31,0,248,31,0,248,31,0,248, + 31,1,240,31,1,224,31,3,192,63,15,128,127,254,0,22, + 29,87,24,1,0,0,97,0,0,251,0,1,190,0,1,12, + 0,0,0,0,0,0,0,254,1,252,127,0,112,63,128,32, + 31,128,32,31,192,32,31,224,32,23,240,32,19,248,32,17, + 248,32,17,252,32,16,254,32,16,127,32,16,63,32,16,31, + 160,16,31,224,16,15,224,16,7,224,16,3,224,16,3,224, + 16,1,224,16,0,224,56,0,96,254,0,32,21,30,90,25, + 2,0,6,0,0,7,0,0,3,128,0,1,192,0,0,96, + 0,0,48,0,0,0,0,1,252,0,7,255,0,15,143,128, + 30,3,192,60,1,224,124,1,240,120,0,240,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,120,0,240,124,1,240,60,1,224, + 30,3,192,15,143,128,7,255,0,1,252,0,21,30,90,25, + 2,0,0,3,128,0,7,0,0,14,0,0,24,0,0,48, + 0,0,96,0,0,0,0,1,252,0,7,255,0,15,143,128, + 30,3,192,60,1,224,124,1,240,120,0,240,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,120,0,240,124,1,240,60,1,224, + 30,3,192,15,143,128,7,255,0,1,252,0,21,30,90,25, + 2,0,0,48,0,0,120,0,0,252,0,0,204,0,1,134, + 0,1,2,0,0,0,0,1,252,0,7,255,0,15,143,128, + 30,3,192,60,1,224,124,1,240,120,0,240,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,120,0,240,124,1,240,60,1,224, + 30,3,192,15,143,128,7,255,0,1,252,0,21,29,87,25, + 2,0,0,194,0,1,246,0,3,124,0,2,24,0,0,0, + 0,0,0,0,1,252,0,7,255,0,15,143,128,30,3,192, + 60,1,224,124,1,240,120,0,240,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,120,0,240,124,1,240,60,1,224,30,3,192, + 15,143,128,7,255,0,1,252,0,21,29,87,25,2,0,0, + 132,0,1,206,0,1,206,0,0,132,0,0,0,0,0,0, + 0,1,252,0,7,255,0,15,143,128,30,3,192,60,1,224, + 124,1,240,120,0,240,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,120,0,240,124,1,240,60,1,224,30,3,192,15,143,128, + 7,255,0,1,252,0,15,16,32,19,2,0,64,4,224,14, + 240,30,120,60,60,120,30,240,15,224,7,192,7,192,15,224, + 30,240,60,120,120,60,240,30,224,14,64,4,21,27,81,26, + 2,254,0,0,48,0,0,96,1,252,64,7,143,192,14,3, + 128,30,1,192,60,3,224,124,6,240,120,4,240,248,12,248, + 248,24,248,248,24,248,248,48,248,248,32,248,248,96,248,248, + 192,248,248,128,248,249,128,248,123,0,240,126,1,240,62,1, + 224,28,3,192,14,7,128,31,254,0,17,248,0,48,0,0, + 96,0,0,23,30,90,24,0,0,0,192,0,0,224,0,0, + 112,0,0,56,0,0,12,0,0,2,0,0,0,0,255,224, + 254,63,128,56,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,48,15,128,48,15,128,96,7,192,192,3,255,128, + 0,254,0,23,30,90,24,0,0,0,0,192,0,1,192,0, + 3,128,0,7,0,0,12,0,0,16,0,0,0,0,255,224, + 254,63,128,56,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,48,15,128,48,15,128,96,7,192,192,3,255,128, + 0,254,0,23,30,90,24,0,0,0,12,0,0,30,0,0, + 63,0,0,51,0,0,97,128,0,64,128,0,0,0,255,224, + 254,63,128,56,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,48,15,128,48,15,128,96,7,192,192,3,255,128, + 0,254,0,23,29,87,24,0,0,0,33,0,0,115,128,0, + 115,128,0,33,0,0,0,0,0,0,0,255,224,254,63,128, + 56,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 48,15,128,48,15,128,96,7,192,192,3,255,128,0,254,0, + 22,30,90,24,1,0,0,0,192,0,1,192,0,3,128,0, + 7,0,0,12,0,0,16,0,0,0,0,255,195,252,127,0, + 240,63,0,96,63,0,96,31,128,192,31,128,128,15,193,128, + 15,195,0,7,227,0,3,230,0,3,244,0,1,252,0,1, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,1,252,0,7,255,0, + 19,23,69,20,0,0,255,224,0,63,128,0,31,0,0,31, + 0,0,31,254,0,31,15,128,31,7,192,31,7,224,31,3, + 224,31,3,224,31,3,224,31,3,224,31,7,224,31,7,192, + 31,31,128,31,254,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,63,128,0,255,224,0,17,23,69,19,0, + 0,3,240,0,14,60,0,30,62,0,28,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,28,0,60,56,0,60, + 224,0,60,60,0,60,30,0,60,15,0,60,15,0,60,15, + 128,60,15,128,60,15,128,60,15,128,60,15,0,60,15,0, + 60,30,0,252,124,0,14,23,46,16,1,0,48,0,56,0, + 28,0,14,0,3,0,0,128,0,0,31,128,49,224,112,240, + 120,240,120,240,48,240,1,240,7,240,28,240,56,240,120,240, + 240,240,249,240,255,244,126,252,60,120,14,23,46,16,1,0, + 0,48,0,112,0,224,1,192,3,0,4,0,0,0,31,128, + 49,224,112,240,120,240,120,240,48,240,1,240,7,240,28,240, + 56,240,120,240,240,240,249,240,255,244,126,252,60,120,14,23, + 46,16,1,0,3,0,7,128,15,192,12,192,24,96,16,32, + 0,0,31,128,49,224,112,240,120,240,120,240,48,240,1,240, + 7,240,28,240,56,240,120,240,240,240,249,240,255,244,126,252, + 60,120,14,22,44,16,1,0,12,32,31,96,55,192,33,128, + 0,0,0,0,31,128,49,224,112,240,120,240,120,240,48,240, + 1,240,7,240,28,240,56,240,120,240,240,240,249,240,255,244, + 126,252,60,120,14,22,44,16,1,0,8,64,28,224,28,224, + 8,64,0,0,0,0,31,128,49,224,112,240,120,240,120,240, + 48,240,1,240,7,240,28,240,56,240,120,240,240,240,249,240, + 255,244,126,252,60,120,14,25,50,16,1,0,7,0,13,128, + 24,192,16,64,24,192,13,128,7,0,0,0,0,0,31,128, + 49,224,112,240,120,240,120,240,48,240,1,240,7,240,28,240, + 56,240,120,240,240,240,249,240,255,244,126,252,60,120,21,16, + 48,24,1,0,31,135,192,49,238,224,112,252,112,120,248,112, + 120,248,56,48,248,56,1,248,56,7,255,248,28,248,0,56, + 248,0,120,252,0,248,252,8,248,254,24,255,255,240,126,63, + 224,60,15,192,13,23,46,15,1,249,7,224,30,240,60,120, + 120,120,120,48,240,0,240,0,240,0,240,0,240,0,248,0, + 120,0,120,0,60,48,31,224,15,192,3,0,6,0,6,0, + 3,128,49,128,59,128,31,0,14,23,46,15,0,0,48,0, + 56,0,28,0,14,0,3,0,0,128,0,0,7,192,30,240, + 60,112,120,56,120,60,248,60,248,60,255,252,248,0,248,0, + 248,0,120,0,124,0,62,24,31,240,7,224,14,23,46,15, + 0,0,0,24,0,56,0,112,0,224,1,128,2,0,0,0, + 7,192,30,240,60,112,120,56,120,60,248,60,248,60,255,252, + 248,0,248,0,248,0,120,0,124,0,62,24,31,240,7,224, + 14,23,46,15,0,0,3,0,7,128,15,192,12,192,24,96, + 16,32,0,0,7,192,30,240,60,112,120,56,120,60,248,60, + 248,60,255,252,248,0,248,0,248,0,120,0,124,0,62,24, + 31,240,7,224,14,22,44,15,0,0,4,32,14,112,14,112, + 4,32,0,0,0,0,7,192,30,240,60,112,120,56,120,60, + 248,60,248,60,255,252,248,0,248,0,248,0,120,0,124,0, + 62,24,31,240,7,224,8,23,23,9,0,0,192,224,112,56, + 12,2,0,252,124,60,60,60,60,60,60,60,60,60,60,60, + 60,126,255,8,23,23,9,0,0,3,7,14,28,48,64,0, + 252,124,60,60,60,60,60,60,60,60,60,60,60,60,126,255, + 8,23,23,9,0,0,24,60,126,102,195,129,0,252,124,60, + 60,60,60,60,60,60,60,60,60,60,60,126,255,8,22,22, + 9,0,0,66,231,231,66,0,0,252,124,60,60,60,60,60, + 60,60,60,60,60,60,60,126,255,14,22,44,17,1,0,56, + 48,62,248,15,248,255,128,251,192,97,224,15,240,60,248,120, + 120,120,120,240,60,240,60,240,60,240,60,240,60,240,60,240, + 60,240,60,120,120,120,120,60,240,15,192,17,22,66,18,0, + 0,3,8,0,7,216,0,13,240,0,8,96,0,0,0,0, + 0,0,0,252,120,0,125,252,0,63,62,0,62,30,0,62, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,126,63,0, + 255,127,128,14,23,46,17,1,0,48,0,56,0,28,0,14, + 0,3,0,0,128,0,0,15,192,60,240,120,120,120,120,240, + 60,240,60,240,60,240,60,240,60,240,60,240,60,240,60,120, + 120,120,120,60,240,15,192,14,23,46,17,1,0,0,24,0, + 56,0,112,0,224,1,128,2,0,0,0,15,192,60,240,120, + 120,120,120,240,60,240,60,240,60,240,60,240,60,240,60,240, + 60,240,60,120,120,120,120,60,240,15,192,14,23,46,17,1, + 0,3,0,7,128,15,192,12,192,24,96,16,32,0,0,15, + 192,60,240,120,120,120,120,240,60,240,60,240,60,240,60,240, + 60,240,60,240,60,240,60,120,120,120,120,60,240,15,192,14, + 22,44,17,1,0,12,32,31,96,55,192,33,128,0,0,0, + 0,15,192,60,240,120,120,120,120,240,60,240,60,240,60,240, + 60,240,60,240,60,240,60,240,60,120,120,120,120,60,240,15, + 192,14,22,44,17,1,0,8,64,28,224,28,224,8,64,0, + 0,0,0,15,192,60,240,120,120,120,120,240,60,240,60,240, + 60,240,60,240,60,240,60,240,60,240,60,120,120,120,120,60, + 240,15,192,14,15,30,19,2,1,3,0,7,128,7,128,3, + 0,0,0,0,0,255,252,255,252,255,252,0,0,0,0,3, + 0,7,128,7,128,3,0,14,22,44,17,1,253,0,8,0, + 24,0,24,15,240,60,240,120,120,120,120,240,252,241,188,241, + 60,243,60,242,60,246,60,252,60,248,60,120,120,120,120,60, + 240,111,192,96,0,192,0,128,0,17,23,69,18,0,0,24, + 0,0,28,0,0,14,0,0,7,0,0,1,128,0,0,64, + 0,0,0,0,252,126,0,124,62,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,62,0,62,127,0,31,223, + 128,7,140,0,17,23,69,18,0,0,0,12,0,0,28,0, + 0,56,0,0,112,0,0,192,0,1,0,0,0,0,0,252, + 126,0,124,62,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,62,0,62,127,0,31,223,128,7,140,0,17, + 23,69,18,0,0,1,128,0,3,192,0,7,224,0,6,96, + 0,12,48,0,8,16,0,0,0,0,252,126,0,124,62,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,60,62, + 0,62,127,0,31,223,128,7,140,0,17,22,66,18,0,0, + 4,32,0,14,112,0,14,112,0,4,32,0,0,0,0,0, + 0,0,252,126,0,124,62,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,62,0,62,127,0,31,223,128,7, + 140,0,15,30,60,17,0,249,0,12,0,28,0,56,0,112, + 0,192,1,0,0,0,255,190,126,12,62,8,62,8,31,24, + 31,16,15,16,15,176,15,160,7,160,7,224,7,192,3,192, + 3,192,1,128,1,128,1,128,1,0,115,0,243,0,246,0, + 254,0,120,0,15,29,58,19,1,249,252,0,124,0,60,0, + 60,0,60,0,60,0,60,224,63,248,62,124,60,60,60,62, + 60,30,60,30,60,30,60,30,60,30,60,30,60,30,60,60, + 62,60,63,248,60,224,60,0,60,0,60,0,60,0,60,0, + 126,0,255,0,15,29,58,17,0,249,4,32,14,112,14,112, + 4,32,0,0,0,0,255,190,126,12,62,8,62,8,31,24, + 31,16,15,16,15,176,15,160,7,160,7,224,7,192,3,192, + 3,192,1,128,1,128,1,128,1,0,115,0,243,0,246,0, + 254,0,120,0}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--34-240-100-100-P-177-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 23 + Calculated Max Values w=16 h=25 x= 2 y= 9 dx=19 dy= 0 ascent=25 len=50 + Font Bounding box w=38 h=49 x=-5 y=-12 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =23 descent= 0 + X Font ascent =23 descent= 0 + Max Font ascent =25 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB24n[701] U8G_SECTION(".progmem.u8g_font_timB24n") = { + 0,38,49,251,244,23,0,0,0,0,42,57,0,25,250,23, + 0,13,14,28,17,1,9,3,0,7,0,7,0,231,56,242, + 120,122,240,15,128,15,128,122,240,242,120,231,56,7,0,7, + 0,6,0,15,15,30,19,2,0,3,128,3,128,3,128,3, + 128,3,128,3,128,255,254,255,254,255,254,3,128,3,128,3, + 128,3,128,3,128,3,128,6,11,11,8,1,250,56,124,124, + 124,60,12,8,24,48,96,192,8,4,4,11,1,6,255,255, + 255,255,5,5,5,8,1,0,112,248,248,248,112,9,25,50, + 9,0,0,1,128,1,128,1,0,3,0,3,0,3,0,6, + 0,6,0,6,0,4,0,12,0,12,0,12,0,24,0,24, + 0,24,0,48,0,48,0,48,0,48,0,96,0,96,0,96, + 0,192,0,192,0,14,23,46,16,1,0,7,128,31,224,28, + 224,56,112,120,112,120,120,120,120,248,124,248,124,248,124,248, + 124,248,124,248,124,248,124,248,124,248,124,120,120,120,120,120, + 120,56,112,28,224,15,192,7,128,13,23,46,16,2,0,1, + 128,7,128,31,128,255,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,31,192,255,248,16,23,46, + 16,0,0,3,192,15,240,31,248,63,248,48,252,96,124,64, + 124,0,124,0,120,0,120,0,120,0,240,0,224,1,192,1, + 128,3,0,7,1,14,3,28,6,63,254,127,254,255,252,255, + 252,14,23,46,16,1,0,7,192,31,240,63,240,48,248,96, + 120,64,120,0,120,0,112,0,192,3,224,15,240,15,248,3, + 248,0,252,0,124,0,60,0,60,0,60,96,56,240,56,248, + 112,127,192,31,0,14,23,46,16,1,0,0,112,0,240,0, + 240,1,240,3,240,6,240,6,240,12,240,24,240,24,240,48, + 240,96,240,96,240,192,240,255,252,255,252,255,252,255,252,0, + 240,0,240,0,240,0,240,0,240,13,23,46,16,1,0,31, + 248,31,248,31,248,31,248,48,0,48,0,32,0,62,0,127, + 128,127,224,127,240,127,240,3,248,0,248,0,120,0,56,0, + 56,0,56,96,48,240,48,248,96,127,192,31,0,14,23,46, + 16,1,0,0,28,0,240,3,192,7,128,15,0,30,0,62, + 0,60,0,124,0,127,224,253,240,248,248,248,120,248,124,248, + 124,248,124,248,124,120,124,120,120,120,120,56,112,28,224,15, + 192,13,23,46,16,2,0,127,248,127,248,255,248,255,248,192, + 48,128,112,128,112,0,96,0,224,0,224,0,192,1,192,1, + 192,3,128,3,128,3,128,7,0,7,0,7,0,14,0,14, + 0,14,0,28,0,14,23,46,16,1,0,15,224,62,240,60, + 120,120,120,120,56,120,56,124,56,126,112,63,224,63,128,31, + 192,15,224,63,240,113,248,112,252,224,124,224,60,224,60,224, + 60,240,56,120,120,127,240,31,192,14,23,46,16,1,0,15, + 192,28,224,56,112,120,120,120,120,248,120,248,124,248,124,248, + 124,248,124,120,124,124,124,62,252,31,248,0,248,0,240,1, + 240,1,224,3,192,7,128,15,0,60,0,224,0}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--34-240-100-100-P-177-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 23, '1' Height: 23 + Calculated Max Values w=32 h=30 x= 4 y=17 dx=33 dy= 0 ascent=26 len=108 + Font Bounding box w=38 h=49 x=-5 y=-12 + Calculated Min Values x=-2 y=-7 dx= 0 dy= 0 + Pure Font ascent =23 descent=-7 + X Font ascent =23 descent=-7 + Max Font ascent =26 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB24r[5003] U8G_SECTION(".progmem.u8g_font_timB24r") = { + 0,38,49,251,244,23,5,149,13,202,32,127,249,26,249,23, + 249,0,0,0,8,0,1,5,23,23,11,3,0,112,248,248, + 248,248,248,248,112,112,112,112,32,32,32,32,0,0,0,112, + 248,248,248,112,11,11,22,19,2,12,96,192,241,224,241,224, + 241,224,241,224,241,224,241,224,96,192,96,192,96,192,96,192, + 16,23,46,17,0,0,3,12,3,12,7,28,7,28,6,24, + 6,24,127,255,127,255,14,56,12,48,12,48,12,48,12,48, + 28,112,255,254,255,254,24,96,24,96,24,96,56,224,56,224, + 48,192,48,192,15,28,56,16,1,253,3,0,3,0,15,232, + 63,248,115,56,99,24,227,8,227,8,243,0,251,0,127,0, + 127,128,63,224,15,240,3,248,3,252,3,124,131,62,131,30, + 131,30,195,28,195,60,243,120,255,224,131,0,3,0,3,0, + 3,0,24,23,69,33,4,0,7,128,32,15,192,224,30,127, + 192,60,32,192,124,33,128,120,33,128,248,99,0,240,71,0, + 240,198,0,240,206,0,241,140,60,127,24,126,60,25,243,0, + 49,225,0,51,193,0,99,193,0,231,195,0,199,130,1,199, + 134,1,135,134,3,3,140,3,3,248,6,1,224,22,23,69, + 28,2,0,1,240,0,3,188,0,7,30,0,7,14,0,15, + 14,0,15,14,0,15,140,0,7,216,0,7,240,0,3,224, + 252,7,240,112,29,240,48,57,248,96,112,252,64,240,252,192, + 240,127,128,248,63,0,248,31,128,252,31,192,254,63,228,127, + 243,252,127,193,252,31,0,120,4,11,11,9,2,12,96,240, + 240,240,240,240,240,96,96,96,96,8,29,29,11,2,250,3, + 6,12,24,24,48,48,112,96,224,224,224,224,224,224,224,224, + 224,224,224,96,112,48,48,24,24,12,6,3,8,29,29,11, + 0,250,192,96,48,24,24,12,12,14,6,7,7,7,7,7, + 7,7,7,7,7,7,6,14,12,12,24,24,48,96,192,13, + 14,28,17,1,9,3,0,7,0,7,0,231,56,242,120,122, + 240,15,128,15,128,122,240,242,120,231,56,7,0,7,0,6, + 0,15,15,30,19,2,0,3,128,3,128,3,128,3,128,3, + 128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,3, + 128,3,128,3,128,6,11,11,8,1,250,56,124,124,124,60, + 12,8,24,48,96,192,8,4,4,11,1,6,255,255,255,255, + 5,5,5,8,1,0,112,248,248,248,112,9,25,50,9,0, + 0,1,128,1,128,1,0,3,0,3,0,3,0,6,0,6, + 0,6,0,4,0,12,0,12,0,12,0,24,0,24,0,24, + 0,48,0,48,0,48,0,48,0,96,0,96,0,96,0,192, + 0,192,0,14,23,46,16,1,0,7,128,31,224,28,224,56, + 112,120,112,120,120,120,120,248,124,248,124,248,124,248,124,248, + 124,248,124,248,124,248,124,248,124,120,120,120,120,120,120,56, + 112,28,224,15,192,7,128,13,23,46,16,2,0,1,128,7, + 128,31,128,255,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,31,192,255,248,16,23,46,16,0, + 0,3,192,15,240,31,248,63,248,48,252,96,124,64,124,0, + 124,0,120,0,120,0,120,0,240,0,224,1,192,1,128,3, + 0,7,1,14,3,28,6,63,254,127,254,255,252,255,252,14, + 23,46,16,1,0,7,192,31,240,63,240,48,248,96,120,64, + 120,0,120,0,112,0,192,3,224,15,240,15,248,3,248,0, + 252,0,124,0,60,0,60,0,60,96,56,240,56,248,112,127, + 192,31,0,14,23,46,16,1,0,0,112,0,240,0,240,1, + 240,3,240,6,240,6,240,12,240,24,240,24,240,48,240,96, + 240,96,240,192,240,255,252,255,252,255,252,255,252,0,240,0, + 240,0,240,0,240,0,240,13,23,46,16,1,0,31,248,31, + 248,31,248,31,248,48,0,48,0,32,0,62,0,127,128,127, + 224,127,240,127,240,3,248,0,248,0,120,0,56,0,56,0, + 56,96,48,240,48,248,96,127,192,31,0,14,23,46,16,1, + 0,0,28,0,240,3,192,7,128,15,0,30,0,62,0,60, + 0,124,0,127,224,253,240,248,248,248,120,248,124,248,124,248, + 124,248,124,120,124,120,120,120,120,56,112,28,224,15,192,13, + 23,46,16,2,0,127,248,127,248,255,248,255,248,192,48,128, + 112,128,112,0,96,0,224,0,224,0,192,1,192,1,192,3, + 128,3,128,3,128,7,0,7,0,7,0,14,0,14,0,14, + 0,28,0,14,23,46,16,1,0,15,224,62,240,60,120,120, + 120,120,56,120,56,124,56,126,112,63,224,63,128,31,192,15, + 224,63,240,113,248,112,252,224,124,224,60,224,60,224,60,240, + 56,120,120,127,240,31,192,14,23,46,16,1,0,15,192,28, + 224,56,112,120,120,120,120,248,120,248,124,248,124,248,124,248, + 124,120,124,124,124,62,252,31,248,0,248,0,240,1,240,1, + 224,3,192,7,128,15,0,60,0,224,0,5,16,16,11,3, + 0,112,248,248,248,112,0,0,0,0,0,0,112,248,248,248, + 112,6,22,22,11,2,250,56,124,124,124,56,0,0,0,0, + 0,0,56,124,124,124,60,12,8,24,48,96,192,16,15,30, + 19,1,0,0,3,0,15,0,127,1,252,15,224,63,128,252, + 0,240,0,252,0,63,128,15,224,1,252,0,127,0,15,0, + 3,15,10,20,19,2,3,255,254,255,254,255,254,0,0,0, + 0,0,0,0,0,255,254,255,254,255,254,16,15,30,19,2, + 0,192,0,240,0,254,0,63,128,7,240,1,252,0,63,0, + 15,0,63,1,252,7,240,63,128,254,0,240,0,192,0,12, + 23,46,16,2,0,63,0,115,192,225,224,225,240,241,240,241, + 240,97,240,1,224,1,224,3,192,3,128,3,0,6,0,4, + 0,4,0,0,0,0,0,0,0,14,0,31,0,31,0,31, + 0,14,0,26,27,108,31,2,251,0,31,224,0,0,252,60, + 0,3,224,14,0,7,128,3,0,15,0,1,0,30,0,1, + 128,62,15,56,128,60,31,248,192,124,124,248,64,120,120,120, + 64,248,248,240,64,248,240,240,64,241,240,240,64,241,240,240, + 64,241,224,240,192,241,225,224,128,241,225,225,128,241,227,227, + 0,113,243,227,0,120,254,254,0,120,120,120,0,60,0,0, + 0,28,0,0,0,14,0,1,128,7,128,7,0,1,224,60, + 0,0,63,224,0,21,23,69,24,1,0,0,32,0,0,96, + 0,0,112,0,0,240,0,0,248,0,0,248,0,1,248,0, + 1,124,0,1,124,0,3,62,0,2,62,0,6,62,0,6, + 31,0,4,31,0,12,15,0,15,255,128,24,15,128,24,7, + 192,16,7,192,48,3,224,48,3,224,112,7,240,252,31,248, + 19,23,69,22,1,0,255,252,0,63,31,0,31,15,128,31, + 7,192,31,7,192,31,7,192,31,7,192,31,7,192,31,7, + 128,31,15,128,31,62,0,31,252,0,31,15,128,31,7,192, + 31,7,224,31,3,224,31,3,224,31,3,224,31,3,224,31, + 3,192,31,7,192,63,15,0,255,252,0,19,23,69,24,2, + 0,1,252,32,7,255,96,15,7,224,30,1,224,60,0,224, + 124,0,96,124,0,96,248,0,32,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,124,0,0,124,0,0,60,0,32,30,0,96,15,129,192, + 3,255,128,0,254,0,22,23,69,24,0,0,255,252,0,63, + 255,128,31,7,224,31,1,240,31,1,240,31,0,248,31,0, + 248,31,0,252,31,0,124,31,0,124,31,0,124,31,0,124, + 31,0,124,31,0,124,31,0,124,31,0,248,31,0,248,31, + 0,248,31,1,240,31,1,224,31,7,192,63,255,0,255,252, + 0,21,23,69,22,0,0,255,255,224,63,255,224,31,0,224, + 31,0,96,31,0,96,31,0,32,31,0,32,31,4,0,31, + 4,0,31,12,0,31,28,0,31,252,0,31,28,0,31,12, + 0,31,4,0,31,4,0,31,0,8,31,0,24,31,0,48, + 31,0,112,31,1,240,63,255,224,255,255,224,19,23,69,20, + 0,0,255,255,224,63,255,224,31,0,224,31,0,96,31,0, + 96,31,0,32,31,0,32,31,4,0,31,4,0,31,12,0, + 31,28,0,31,252,0,31,28,0,31,12,0,31,4,0,31, + 4,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,63,128,0,255,224,0,22,23,69,25,2,0,1,252,32, + 7,255,96,15,7,224,30,1,224,60,0,224,124,0,96,124, + 0,96,248,0,32,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,31,252,248,7,240,248,3,224,124,3,224, + 124,3,224,60,3,224,62,3,224,30,7,224,15,143,224,3, + 255,0,24,23,69,25,0,0,255,231,255,63,129,252,31,0, + 248,31,0,248,31,0,248,31,0,248,31,0,248,31,0,248, + 31,0,248,31,0,248,31,255,248,31,255,248,31,0,248,31, + 0,248,31,0,248,31,0,248,31,0,248,31,0,248,31,0, + 248,31,0,248,31,0,248,63,129,252,255,231,255,11,23,46, + 13,1,0,255,224,63,128,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,63,128,255, + 224,15,26,52,16,0,253,15,254,3,248,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,97,240,241, + 240,241,240,243,224,227,224,127,192,31,0,24,23,69,25,1, + 0,255,207,252,127,3,224,62,1,192,62,3,128,62,7,0, + 62,14,0,62,28,0,62,56,0,62,112,0,62,224,0,63, + 240,0,63,248,0,63,252,0,62,254,0,62,127,0,62,63, + 128,62,31,192,62,15,224,62,7,240,62,3,248,62,1,252, + 127,0,254,255,195,255,20,23,69,22,1,0,255,224,0,63, + 128,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,16,31, + 0,48,31,0,96,31,0,224,31,129,224,63,255,192,255,255, + 192,28,23,92,31,1,0,255,0,15,240,63,0,31,192,31, + 128,31,128,31,128,63,128,23,192,63,128,23,192,47,128,23, + 192,111,128,19,224,79,128,19,224,207,128,19,224,207,128,17, + 240,143,128,17,241,143,128,16,249,15,128,16,251,15,128,16, + 251,15,128,16,126,15,128,16,126,15,128,16,124,15,128,16, + 60,15,128,16,60,15,128,16,24,15,128,56,24,31,192,254, + 24,63,240,22,23,69,24,1,0,254,1,252,127,0,112,63, + 128,32,31,128,32,31,192,32,31,224,32,23,240,32,19,248, + 32,17,248,32,17,252,32,16,254,32,16,127,32,16,63,32, + 16,31,160,16,31,224,16,15,224,16,7,224,16,3,224,16, + 3,224,16,1,224,16,0,224,56,0,96,254,0,32,21,23, + 69,25,2,0,1,252,0,7,255,0,15,143,128,30,3,192, + 60,1,224,124,1,240,120,0,240,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,120,0,240,124,1,240,60,1,224,30,3,192, + 15,143,128,7,255,0,1,252,0,19,23,69,20,0,0,255, + 252,0,63,31,128,31,15,192,31,7,192,31,7,224,31,3, + 224,31,3,224,31,3,224,31,3,224,31,7,192,31,7,192, + 31,31,128,31,254,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,63,128, + 0,255,224,0,22,27,81,26,2,252,1,252,0,7,255,0, + 15,143,128,30,3,192,60,1,224,124,1,240,120,0,240,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,248,248,0,248,124,1,240, + 124,1,240,62,3,224,31,7,192,7,255,0,1,252,0,0, + 254,0,0,127,132,0,31,248,0,7,224,22,23,69,24,1, + 0,255,252,0,63,31,128,31,7,192,31,7,224,31,3,224, + 31,3,224,31,3,224,31,3,224,31,7,224,31,7,192,31, + 31,128,31,252,0,31,126,0,31,62,0,31,63,0,31,31, + 128,31,31,128,31,15,192,31,7,224,31,7,224,31,3,240, + 63,129,248,255,225,252,15,23,46,18,1,0,15,196,56,124, + 112,60,112,28,240,12,240,12,248,4,252,0,255,0,127,192, + 63,240,31,248,15,252,3,252,1,254,128,126,128,62,192,30, + 192,30,224,28,240,28,248,56,143,224,19,23,69,22,1,0, + 255,255,224,249,243,224,225,240,224,193,240,96,129,240,32,129, + 240,32,129,240,32,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,3, + 248,0,15,254,0,23,23,69,24,0,0,255,224,254,63,128, + 56,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,15,128,48,15,128,96,7,192,192,3,255,128,0,254,0, + 22,23,69,24,1,0,255,195,252,127,0,240,62,0,96,63, + 0,64,31,0,192,31,128,192,15,128,128,15,129,128,15,193, + 0,7,193,0,7,195,0,3,226,0,3,230,0,3,246,0, + 1,244,0,1,252,0,0,248,0,0,248,0,0,248,0,0, + 112,0,0,112,0,0,32,0,0,32,0,32,23,92,33,0, + 0,255,239,255,63,127,3,248,14,63,1,248,12,31,1,248, + 12,31,1,248,8,31,129,252,24,15,129,252,24,15,129,124, + 16,15,195,124,48,7,194,126,48,7,198,62,32,7,230,62, + 96,3,228,62,96,3,236,31,64,3,248,31,192,1,248,31, + 192,1,248,15,128,1,240,15,128,0,240,15,128,0,224,7, + 0,0,224,7,0,0,224,7,0,0,64,2,0,21,23,69, + 24,1,0,255,207,224,127,3,0,63,2,0,31,134,0,31, + 132,0,15,204,0,15,200,0,7,248,0,3,240,0,3,240, + 0,1,248,0,0,248,0,1,252,0,1,124,0,3,62,0, + 2,63,0,6,31,0,4,31,128,12,15,192,8,15,192,24, + 7,224,56,7,240,254,63,248,22,23,69,24,1,0,255,195, + 252,127,0,240,63,0,96,63,0,96,31,128,192,31,128,128, + 15,193,128,15,195,0,7,227,0,3,230,0,3,244,0,1, + 252,0,1,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,1,252,0, + 7,255,0,19,23,69,22,1,0,63,255,192,126,15,128,120, + 31,128,112,31,0,96,63,0,64,126,0,0,126,0,0,252, + 0,0,252,0,1,248,0,1,240,0,3,240,0,3,224,0, + 7,224,0,7,192,0,15,192,32,31,128,32,31,128,96,63, + 0,96,63,0,224,126,1,224,126,7,192,255,255,192,7,28, + 28,11,2,251,254,240,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,240,254, + 8,26,26,9,0,0,128,192,192,192,96,96,96,96,48,48, + 48,24,24,24,24,12,12,12,4,6,6,6,3,3,3,3, + 7,28,28,11,1,251,254,30,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14, + 30,254,11,13,26,19,4,10,14,0,14,0,31,0,31,0, + 27,0,59,128,59,128,113,192,113,192,97,192,224,224,224,224, + 192,96,16,3,6,16,0,251,255,255,255,255,255,255,7,6, + 6,11,1,17,192,224,112,56,12,2,14,16,32,16,1,0, + 31,128,49,224,112,240,120,240,120,240,48,240,1,240,7,240, + 28,240,56,240,120,240,240,240,249,240,255,244,126,252,60,120, + 17,22,66,18,0,0,252,0,0,124,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,120,0,61,254,0,63,254, + 0,62,31,0,60,31,0,60,15,128,60,15,128,60,15,128, + 60,15,128,60,15,128,60,15,128,60,15,0,60,31,0,62, + 62,0,55,252,0,33,240,0,14,16,32,15,1,0,7,240, + 30,120,60,60,124,60,120,24,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,124,0,62,24,31,240,15,224,16,22, + 44,18,1,0,0,252,0,124,0,60,0,60,0,60,0,60, + 15,188,63,252,124,60,120,60,248,60,240,60,240,60,240,60, + 240,60,240,60,240,60,240,60,120,60,124,126,63,255,15,184, + 14,16,32,15,0,0,7,192,30,240,60,112,120,56,120,60, + 248,60,248,60,255,252,248,0,248,0,248,0,120,0,124,0, + 62,24,31,240,7,224,12,23,46,11,0,0,7,224,30,112, + 28,240,60,240,60,96,60,0,60,0,255,128,255,128,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,126,0,255,0,14,23,46,16,1,249, + 15,192,61,252,112,252,240,240,240,120,240,120,240,120,240,120, + 120,248,63,240,31,192,60,0,96,0,224,0,255,224,255,248, + 127,252,48,60,96,28,192,12,224,28,127,248,31,224,17,22, + 66,18,0,0,252,0,0,124,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,120,0,61,252,0,63,254,0,62, + 62,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 126,63,0,255,127,128,8,23,23,9,0,0,24,60,60,60, + 24,0,0,252,124,60,60,60,60,60,60,60,60,60,60,60, + 60,126,255,10,30,60,11,254,249,1,128,3,192,3,192,3, + 192,1,128,0,0,0,0,15,192,7,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,99,192,243,192,243, + 128,119,128,62,0,18,22,66,18,0,0,252,0,0,124,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,31,0, + 60,14,0,60,12,0,60,24,0,60,48,0,60,96,0,60, + 192,0,61,192,0,63,224,0,61,240,0,60,248,0,60,124, + 0,60,62,0,60,31,0,126,15,128,255,31,192,8,22,22, + 9,0,0,252,124,60,60,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,126,255,26,16,64,27,0,0,252, + 120,60,0,125,254,254,0,63,63,159,0,62,63,31,0,62, + 30,15,0,60,30,15,0,60,30,15,0,60,30,15,0,60, + 30,15,0,60,30,15,0,60,30,15,0,60,30,15,0,60, + 30,15,0,60,30,15,0,126,63,31,128,255,127,191,192,17, + 16,48,18,0,0,252,120,0,125,252,0,63,62,0,62,30, + 0,62,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,126, + 63,0,255,127,128,14,16,32,17,1,0,15,192,60,240,120, + 120,120,120,240,60,240,60,240,60,240,60,240,60,240,60,240, + 60,240,60,120,120,120,120,60,240,15,192,17,23,69,18,0, + 249,252,248,0,125,254,0,63,31,0,62,15,0,60,15,128, + 60,7,128,60,7,128,60,7,128,60,7,128,60,7,128,60, + 7,128,60,7,128,62,15,0,63,15,0,63,254,0,60,248, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 126,0,0,255,0,0,16,23,46,18,1,249,15,196,62,236, + 124,60,120,60,248,60,240,60,240,60,240,60,240,60,240,60, + 240,60,240,60,120,60,120,124,63,252,15,60,0,60,0,60, + 0,60,0,60,0,60,0,126,0,255,13,16,32,15,1,0, + 252,112,124,248,63,248,63,120,62,48,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,126,0,255,0, + 10,16,32,13,1,0,31,64,113,192,96,192,224,192,240,64, + 252,0,127,0,127,128,63,128,15,192,3,192,129,192,193,192, + 193,192,227,128,191,0,10,21,42,11,0,0,4,0,12,0, + 28,0,28,0,60,0,127,128,255,128,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,64, + 62,192,63,128,30,0,17,16,48,18,0,0,252,126,0,124, + 62,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,62,0,62,95,0,31,223,128,7,140,0,15,16,32,17, + 0,0,255,62,124,12,60,8,62,24,30,16,31,16,31,48, + 15,32,15,32,7,224,7,192,7,192,3,128,3,128,1,0, + 1,0,23,16,48,24,0,0,255,127,190,126,62,28,60,30, + 8,62,30,24,30,31,16,31,31,48,31,63,48,15,47,160, + 15,231,224,7,231,192,7,199,192,7,195,192,3,131,128,3, + 131,128,1,1,0,1,1,0,16,16,32,17,0,0,255,62, + 126,24,62,24,31,48,31,96,15,192,15,192,7,192,3,224, + 3,224,7,240,13,248,24,248,24,124,48,124,252,255,15,23, + 46,17,0,249,255,190,126,12,62,8,62,8,31,24,31,16, + 15,16,15,176,15,160,7,160,7,224,7,192,3,192,3,192, + 1,128,1,128,1,128,1,0,115,0,243,0,246,0,254,0, + 120,0,12,16,32,15,1,0,255,240,227,240,195,224,135,224, + 135,192,15,128,15,128,31,0,31,0,62,0,62,16,124,16, + 124,48,248,48,248,240,255,240,10,27,54,13,1,252,7,192, + 14,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,56,0,112,0,224,0,112,0,56,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 14,0,7,192,2,30,30,7,3,249,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,10,27,54,13,1,252,248,0, + 28,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,7,0,3,128,1,192,3,128,7,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 28,0,248,0,15,8,16,17,1,8,28,0,63,0,127,130, + 255,198,143,254,131,252,1,248,0,112,255}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--11-80-100-100-P-54-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w=11 h=10 x= 1 y= 6 dx=10 dy= 0 ascent=10 len=14 + Font Bounding box w=12 h=17 x=-2 y=-4 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent =10 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR08[2512] U8G_SECTION(".progmem.u8g_font_timR08") = { + 0,12,17,254,252,7,1,147,3,56,32,255,254,10,253,7, + 254,0,0,0,2,0,1,1,7,7,3,1,0,128,128,128, + 128,128,0,128,3,2,2,4,0,5,160,160,5,7,7,5, + 0,0,80,80,248,80,248,80,80,4,9,9,5,0,255,32, + 112,144,128,96,16,144,224,32,7,7,7,8,0,0,126,164, + 168,86,42,42,68,8,7,7,8,0,0,48,80,110,116,152, + 141,118,1,2,2,2,0,5,128,128,3,9,9,4,0,254, + 32,64,64,128,128,128,64,64,32,3,9,9,4,0,254,128, + 64,64,32,32,32,64,64,128,3,3,3,5,1,4,160,64, + 160,5,5,5,6,0,0,32,32,248,32,32,2,2,2,3, + 0,255,192,64,3,1,1,4,0,2,224,1,1,1,3,1, + 0,128,3,7,7,3,0,0,32,32,64,64,64,128,128,4, + 7,7,5,0,0,96,144,144,144,144,144,96,3,7,7,5, + 1,0,64,192,64,64,64,64,224,4,7,7,5,0,0,96, + 144,16,32,32,64,240,4,7,7,5,0,0,96,144,16,96, + 16,16,224,5,7,7,5,0,0,16,48,80,144,248,16,16, + 4,7,7,5,0,0,112,64,224,16,16,16,224,4,7,7, + 5,0,0,48,64,224,144,144,144,96,4,7,7,5,0,0, + 240,144,32,32,64,64,64,4,7,7,5,0,0,96,144,144, + 96,144,144,96,4,7,7,5,0,0,96,144,144,144,112,32, + 192,1,5,5,3,1,0,128,0,0,0,128,2,6,6,3, + 0,255,64,0,0,0,192,64,3,5,5,5,1,0,32,64, + 128,64,32,5,3,3,6,0,1,248,0,248,3,5,5,5, + 0,0,128,64,32,64,128,3,7,7,4,0,0,224,160,32, + 64,64,0,64,8,9,9,9,0,254,60,66,157,165,165,173, + 146,64,62,7,7,7,8,0,0,16,56,40,40,124,68,238, + 5,7,7,6,0,0,240,72,72,112,72,72,240,6,7,7, + 7,0,0,124,196,128,128,128,196,120,6,7,7,7,0,0, + 248,76,68,68,68,76,248,5,7,7,6,0,0,248,72,64, + 112,64,72,248,5,7,7,6,0,0,248,72,64,112,64,64, + 224,6,7,7,7,0,0,124,196,128,156,132,196,120,7,7, + 7,8,0,0,238,68,68,124,68,68,238,3,7,7,4,0, + 0,224,64,64,64,64,64,224,4,7,7,4,0,0,112,32, + 32,32,32,160,192,6,7,7,7,0,0,236,72,80,96,80, + 72,236,5,7,7,6,0,0,224,64,64,64,64,72,248,9, + 7,14,10,0,0,227,128,99,0,85,0,85,0,93,0,73, + 0,235,128,7,7,7,8,0,0,238,100,84,84,76,76,228, + 6,7,7,7,0,0,120,204,132,132,132,204,120,5,7,7, + 6,0,0,240,72,72,112,64,64,224,6,9,9,7,0,254, + 120,204,132,132,132,204,112,24,12,6,7,7,7,0,0,240, + 72,72,112,80,72,236,4,7,7,5,0,0,112,144,192,96, + 16,144,224,5,7,7,6,0,0,248,168,32,32,32,32,112, + 7,7,7,8,0,0,238,68,68,68,68,108,56,7,7,7, + 8,0,0,238,68,108,40,40,16,16,11,7,14,10,255,0, + 238,224,68,64,100,192,46,128,42,128,17,0,17,0,7,7, + 7,8,0,0,238,68,40,16,40,68,238,7,7,7,8,0, + 0,238,68,40,56,16,16,56,5,7,7,6,0,0,248,136, + 16,32,64,136,248,2,9,9,3,0,254,192,128,128,128,128, + 128,128,128,192,3,7,7,3,0,0,128,128,64,64,64,32, + 32,2,9,9,3,0,254,192,64,64,64,64,64,64,64,192, + 3,3,3,5,1,4,64,160,160,5,1,1,5,0,253,248, + 2,2,2,3,0,6,128,64,3,5,5,4,0,0,192,32, + 96,160,224,5,7,7,5,255,0,192,64,112,72,72,72,112, + 3,5,5,4,0,0,96,128,128,128,96,5,7,7,5,0, + 0,48,16,112,144,144,144,104,3,5,5,4,0,0,96,160, + 192,128,96,4,7,7,4,0,0,48,64,224,64,64,64,224, + 4,7,7,5,0,254,112,160,160,64,96,144,224,6,7,7, + 5,255,0,192,64,112,72,72,72,108,2,7,7,3,0,0, + 64,0,192,64,64,64,64,3,9,9,3,255,254,32,0,96, + 32,32,32,32,32,192,6,7,7,5,255,0,192,64,72,80, + 112,72,76,3,7,7,4,0,0,192,64,64,64,64,64,224, + 8,5,5,8,0,0,236,146,146,146,219,5,5,5,5,0, + 0,224,144,144,144,216,4,5,5,5,0,0,96,144,144,144, + 96,5,8,8,5,255,253,240,72,72,72,112,64,64,224,5, + 8,8,5,0,253,112,144,144,144,112,16,16,56,3,5,5, + 4,0,0,160,96,64,64,224,3,5,5,4,0,0,96,128, + 64,32,224,4,6,6,4,0,0,64,224,64,64,64,48,5, + 5,5,5,0,0,216,144,144,144,104,6,5,5,5,255,0, + 236,72,40,48,16,9,5,10,8,255,0,237,128,73,0,42, + 0,54,0,20,0,5,5,5,6,0,0,216,80,32,80,216, + 6,7,7,5,255,254,220,72,80,48,32,96,192,4,5,5, + 5,0,0,240,32,64,144,240,3,9,9,4,0,254,32,64, + 64,64,128,64,64,64,32,1,9,9,2,0,254,128,128,128, + 128,128,128,128,128,128,3,9,9,4,0,254,128,64,64,64, + 32,64,64,64,128,6,2,2,7,0,2,100,152,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0, + 0,2,0,1,1,7,7,3,1,254,128,0,128,128,128,128, + 128,4,7,7,5,0,255,32,112,144,128,144,96,64,5,7, + 7,5,0,0,48,80,64,224,64,200,240,5,6,6,5,0, + 1,136,112,80,80,112,136,5,7,7,5,0,0,136,80,216, + 32,248,32,112,1,7,7,2,0,0,128,128,128,0,128,128, + 128,4,9,9,5,0,254,112,144,64,160,144,80,32,144,224, + 3,1,1,5,1,5,160,7,7,7,9,1,0,56,68,154, + 162,154,68,56,3,5,5,4,0,2,192,32,160,0,224,4, + 4,4,5,0,1,80,160,160,80,5,2,2,7,1,1,248, + 8,3,1,1,4,0,2,224,7,7,7,9,1,0,56,68, + 186,178,170,68,56,3,1,1,4,0,5,224,4,4,4,4, + 0,3,96,144,144,96,5,7,7,6,0,0,32,32,248,32, + 32,0,248,3,4,4,3,0,3,96,160,64,224,3,4,4, + 3,0,3,224,64,32,192,2,2,2,3,0,5,64,128,5, + 7,7,5,0,254,144,144,144,144,232,128,128,6,9,9,6, + 0,254,124,232,232,232,104,40,40,40,40,1,1,1,2,0, + 2,128,3,3,3,4,0,253,64,32,192,3,4,4,3,0, + 3,64,192,64,224,3,5,5,4,0,2,64,160,64,0,224, + 4,4,4,5,0,1,160,80,80,160,7,7,7,8,0,0, + 68,200,72,244,44,62,68,7,7,7,8,0,0,68,200,72, + 246,42,36,78,7,7,7,8,0,0,228,72,40,212,44,62, + 68,3,7,7,4,0,254,64,0,64,64,128,160,224,7,10, + 10,8,0,0,32,16,0,16,56,40,40,124,68,238,7,10, + 10,8,0,0,8,16,0,16,56,40,40,124,68,238,7,10, + 10,8,0,0,16,40,0,16,56,40,40,124,68,238,7,10, + 10,8,0,0,20,40,0,16,56,40,40,124,68,238,7,9, + 9,8,0,0,40,0,16,56,40,40,124,68,238,7,10,10, + 8,0,0,16,40,16,16,56,40,40,124,68,238,8,7,7, + 9,0,0,31,57,40,46,120,73,239,6,10,10,7,0,253, + 124,196,128,128,128,196,120,32,16,96,5,10,10,6,0,0, + 64,32,0,248,72,64,112,64,72,248,5,10,10,6,0,0, + 16,32,0,248,72,64,112,64,72,248,5,10,10,6,0,0, + 32,80,0,248,72,64,112,64,72,248,5,9,9,6,0,0, + 80,0,248,72,64,112,64,72,248,3,10,10,4,0,0,128, + 64,0,224,64,64,64,64,64,224,3,10,10,4,0,0,32, + 64,0,224,64,64,64,64,64,224,3,10,10,4,0,0,64, + 160,0,224,64,64,64,64,64,224,3,9,9,4,0,0,160, + 0,224,64,64,64,64,64,224,6,7,7,7,0,0,248,76, + 68,228,68,76,248,7,10,10,8,0,0,20,40,0,206,100, + 100,84,84,76,228,6,10,10,7,0,0,32,16,0,120,204, + 132,132,132,204,120,6,10,10,7,0,0,16,32,0,120,204, + 132,132,132,204,120,6,10,10,7,0,0,16,40,0,120,204, + 132,132,132,204,120,6,10,10,7,0,0,40,80,0,120,204, + 132,132,132,204,120,6,9,9,7,0,0,72,0,120,204,132, + 132,132,204,120,5,5,5,6,0,0,136,80,32,80,136,8, + 9,9,8,255,255,1,62,102,74,66,82,102,124,128,7,10, + 10,8,0,0,32,16,0,238,68,68,68,68,108,56,7,10, + 10,8,0,0,8,16,0,238,68,68,68,68,108,56,7,10, + 10,8,0,0,16,40,0,238,68,68,68,68,108,56,7,9, + 9,8,0,0,40,0,238,68,68,68,68,108,56,7,10,10, + 8,0,0,8,16,0,198,68,40,56,16,16,56,5,7,7, + 6,0,0,224,64,112,72,112,64,224,4,7,7,5,0,0, + 32,80,80,96,80,80,224,3,8,8,4,0,0,128,64,0, + 192,32,96,160,224,3,8,8,4,0,0,32,64,0,192,32, + 96,160,224,3,8,8,4,0,0,64,160,0,192,32,96,160, + 224,4,8,8,4,0,0,80,160,0,192,32,96,160,224,3, + 7,7,4,0,0,160,0,192,32,96,160,224,3,8,8,4, + 0,0,64,160,64,192,32,96,160,224,5,5,5,6,0,0, + 216,40,112,160,216,3,8,8,4,0,253,96,128,128,128,96, + 64,32,192,3,8,8,4,0,0,128,64,0,96,160,192,128, + 96,3,8,8,4,0,0,32,64,0,96,160,192,128,96,3, + 8,8,4,0,0,64,160,0,96,160,192,128,96,3,7,7, + 4,0,0,160,0,96,160,192,128,96,2,8,8,3,0,0, + 128,64,0,192,64,64,64,64,3,8,8,3,0,0,32,64, + 0,192,64,64,64,64,3,8,8,3,0,0,64,160,0,192, + 64,64,64,64,3,7,7,3,0,0,160,0,192,64,64,64, + 64,4,8,8,5,0,0,64,112,160,112,144,144,144,96,5, + 8,8,5,0,0,80,160,0,224,144,144,144,216,4,8,8, + 5,0,0,64,32,0,96,144,144,144,96,4,8,8,5,0, + 0,32,64,0,96,144,144,144,96,4,8,8,5,0,0,64, + 160,0,96,144,144,144,96,4,8,8,5,0,0,80,160,0, + 96,144,144,144,96,4,7,7,5,0,0,160,0,96,144,144, + 144,96,5,5,5,6,0,0,32,0,248,0,32,6,7,7, + 5,255,255,4,56,72,72,72,112,128,5,8,8,5,0,0, + 64,32,0,144,144,144,144,104,5,8,8,5,0,0,32,64, + 0,144,144,144,144,104,5,8,8,5,0,0,32,80,0,144, + 144,144,144,104,5,7,7,5,0,0,80,0,144,144,144,144, + 104,6,10,10,5,255,254,16,32,0,220,72,80,48,32,96, + 192,5,10,10,5,255,253,192,64,112,72,72,72,112,64,64, + 224,6,9,9,5,255,254,80,0,220,72,80,48,32,96,192 + }; +/* + Fontname: -Adobe-Times-Medium-R-Normal--11-80-100-100-P-54-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w=11 h= 9 x= 1 y= 6 dx=10 dy= 0 ascent= 8 len=14 + Font Bounding box w=12 h=17 x=-2 y=-4 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 8 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR08r[1198] U8G_SECTION(".progmem.u8g_font_timR08r") = { + 0,12,17,254,252,7,1,147,3,56,32,127,254,8,253,7, + 254,0,0,0,2,0,1,1,7,7,3,1,0,128,128,128, + 128,128,0,128,3,2,2,4,0,5,160,160,5,7,7,5, + 0,0,80,80,248,80,248,80,80,4,9,9,5,0,255,32, + 112,144,128,96,16,144,224,32,7,7,7,8,0,0,126,164, + 168,86,42,42,68,8,7,7,8,0,0,48,80,110,116,152, + 141,118,1,2,2,2,0,5,128,128,3,9,9,4,0,254, + 32,64,64,128,128,128,64,64,32,3,9,9,4,0,254,128, + 64,64,32,32,32,64,64,128,3,3,3,5,1,4,160,64, + 160,5,5,5,6,0,0,32,32,248,32,32,2,2,2,3, + 0,255,192,64,3,1,1,4,0,2,224,1,1,1,3,1, + 0,128,3,7,7,3,0,0,32,32,64,64,64,128,128,4, + 7,7,5,0,0,96,144,144,144,144,144,96,3,7,7,5, + 1,0,64,192,64,64,64,64,224,4,7,7,5,0,0,96, + 144,16,32,32,64,240,4,7,7,5,0,0,96,144,16,96, + 16,16,224,5,7,7,5,0,0,16,48,80,144,248,16,16, + 4,7,7,5,0,0,112,64,224,16,16,16,224,4,7,7, + 5,0,0,48,64,224,144,144,144,96,4,7,7,5,0,0, + 240,144,32,32,64,64,64,4,7,7,5,0,0,96,144,144, + 96,144,144,96,4,7,7,5,0,0,96,144,144,144,112,32, + 192,1,5,5,3,1,0,128,0,0,0,128,2,6,6,3, + 0,255,64,0,0,0,192,64,3,5,5,5,1,0,32,64, + 128,64,32,5,3,3,6,0,1,248,0,248,3,5,5,5, + 0,0,128,64,32,64,128,3,7,7,4,0,0,224,160,32, + 64,64,0,64,8,9,9,9,0,254,60,66,157,165,165,173, + 146,64,62,7,7,7,8,0,0,16,56,40,40,124,68,238, + 5,7,7,6,0,0,240,72,72,112,72,72,240,6,7,7, + 7,0,0,124,196,128,128,128,196,120,6,7,7,7,0,0, + 248,76,68,68,68,76,248,5,7,7,6,0,0,248,72,64, + 112,64,72,248,5,7,7,6,0,0,248,72,64,112,64,64, + 224,6,7,7,7,0,0,124,196,128,156,132,196,120,7,7, + 7,8,0,0,238,68,68,124,68,68,238,3,7,7,4,0, + 0,224,64,64,64,64,64,224,4,7,7,4,0,0,112,32, + 32,32,32,160,192,6,7,7,7,0,0,236,72,80,96,80, + 72,236,5,7,7,6,0,0,224,64,64,64,64,72,248,9, + 7,14,10,0,0,227,128,99,0,85,0,85,0,93,0,73, + 0,235,128,7,7,7,8,0,0,238,100,84,84,76,76,228, + 6,7,7,7,0,0,120,204,132,132,132,204,120,5,7,7, + 6,0,0,240,72,72,112,64,64,224,6,9,9,7,0,254, + 120,204,132,132,132,204,112,24,12,6,7,7,7,0,0,240, + 72,72,112,80,72,236,4,7,7,5,0,0,112,144,192,96, + 16,144,224,5,7,7,6,0,0,248,168,32,32,32,32,112, + 7,7,7,8,0,0,238,68,68,68,68,108,56,7,7,7, + 8,0,0,238,68,108,40,40,16,16,11,7,14,10,255,0, + 238,224,68,64,100,192,46,128,42,128,17,0,17,0,7,7, + 7,8,0,0,238,68,40,16,40,68,238,7,7,7,8,0, + 0,238,68,40,56,16,16,56,5,7,7,6,0,0,248,136, + 16,32,64,136,248,2,9,9,3,0,254,192,128,128,128,128, + 128,128,128,192,3,7,7,3,0,0,128,128,64,64,64,32, + 32,2,9,9,3,0,254,192,64,64,64,64,64,64,64,192, + 3,3,3,5,1,4,64,160,160,5,1,1,5,0,253,248, + 2,2,2,3,0,6,128,64,3,5,5,4,0,0,192,32, + 96,160,224,5,7,7,5,255,0,192,64,112,72,72,72,112, + 3,5,5,4,0,0,96,128,128,128,96,5,7,7,5,0, + 0,48,16,112,144,144,144,104,3,5,5,4,0,0,96,160, + 192,128,96,4,7,7,4,0,0,48,64,224,64,64,64,224, + 4,7,7,5,0,254,112,160,160,64,96,144,224,6,7,7, + 5,255,0,192,64,112,72,72,72,108,2,7,7,3,0,0, + 64,0,192,64,64,64,64,3,9,9,3,255,254,32,0,96, + 32,32,32,32,32,192,6,7,7,5,255,0,192,64,72,80, + 112,72,76,3,7,7,4,0,0,192,64,64,64,64,64,224, + 8,5,5,8,0,0,236,146,146,146,219,5,5,5,5,0, + 0,224,144,144,144,216,4,5,5,5,0,0,96,144,144,144, + 96,5,8,8,5,255,253,240,72,72,72,112,64,64,224,5, + 8,8,5,0,253,112,144,144,144,112,16,16,56,3,5,5, + 4,0,0,160,96,64,64,224,3,5,5,4,0,0,96,128, + 64,32,224,4,6,6,4,0,0,64,224,64,64,64,48,5, + 5,5,5,0,0,216,144,144,144,104,6,5,5,5,255,0, + 236,72,40,48,16,9,5,10,8,255,0,237,128,73,0,42, + 0,54,0,20,0,5,5,5,6,0,0,216,80,32,80,216, + 6,7,7,5,255,254,220,72,80,48,32,96,192,4,5,5, + 5,0,0,240,32,64,144,240,3,9,9,4,0,254,32,64, + 64,64,128,64,64,64,32,1,9,9,2,0,254,128,128,128, + 128,128,128,128,128,128,3,9,9,4,0,254,128,64,64,64, + 32,64,64,64,128,6,2,2,7,0,2,100,152,255}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--14-100-100-100-P-74-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=13 h=14 x= 2 y= 8 dx=13 dy= 0 ascent=14 len=28 + Font Bounding box w=17 h=24 x=-2 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR10[3359] U8G_SECTION(".progmem.u8g_font_timR10") = { + 0,17,24,254,250,10,2,4,4,92,32,255,253,14,253,10, + 253,0,0,0,3,0,1,1,10,10,5,2,0,128,128,128, + 128,128,128,128,0,128,128,3,3,3,6,1,7,160,160,160, + 7,10,10,7,0,0,20,20,126,40,40,40,252,80,80,80, + 5,12,12,7,1,255,32,120,168,160,160,112,40,40,40,168, + 240,32,9,10,20,12,1,0,113,128,223,0,146,0,148,0, + 104,0,11,0,22,128,36,128,68,128,67,0,10,10,20,11, + 1,0,24,0,36,0,36,0,56,0,19,128,121,0,202,0, + 132,0,206,64,115,128,1,3,3,3,1,7,128,128,128,3, + 13,13,5,1,253,32,32,64,64,128,128,128,128,128,64,64, + 32,32,3,13,13,5,1,253,128,128,64,64,32,32,32,32, + 32,64,64,128,128,5,6,6,7,1,4,32,168,112,112,168, + 32,7,7,7,8,0,0,16,16,16,254,16,16,16,2,3, + 3,4,1,254,192,64,128,3,1,1,4,0,3,224,2,1, + 1,4,1,0,192,4,12,12,4,0,254,16,16,16,32,32, + 32,64,64,64,128,128,128,6,10,10,7,1,0,120,204,132, + 132,132,132,132,132,204,120,5,10,10,7,1,0,32,224,32, + 32,32,32,32,32,32,248,5,10,10,7,1,0,112,216,136, + 8,24,16,32,64,136,248,6,10,10,7,0,0,120,140,4, + 8,48,56,4,4,204,120,6,10,10,7,0,0,8,24,24, + 40,104,72,136,252,8,8,5,10,10,7,1,0,120,64,128, + 224,48,24,8,8,144,224,6,10,10,7,0,0,12,16,32, + 64,120,204,132,132,204,120,6,10,10,7,0,0,252,132,8, + 8,16,16,32,32,64,64,5,10,10,7,1,0,112,152,136, + 200,112,152,136,136,136,112,6,10,10,7,1,0,120,204,132, + 132,204,120,8,16,32,192,2,7,7,4,1,0,192,0,0, + 0,0,0,192,2,9,9,4,1,254,192,0,0,0,0,0, + 192,64,128,7,7,7,8,0,0,6,24,96,192,96,24,6, + 7,3,3,8,0,2,254,0,254,7,7,7,8,0,0,192, + 48,12,6,12,48,192,5,10,10,6,0,0,112,136,136,8, + 16,32,32,0,32,32,12,12,24,13,0,254,15,128,48,96, + 96,32,70,144,137,16,145,16,145,16,147,32,205,192,64,0, + 48,192,15,0,9,10,20,11,1,0,8,0,8,0,20,0, + 20,0,34,0,34,0,62,0,65,0,65,0,227,128,7,10, + 10,9,1,0,252,70,66,70,124,70,66,66,70,252,8,10, + 10,10,1,0,61,99,65,129,128,128,128,193,98,60,9,10, + 20,10,0,0,254,0,35,0,33,0,32,128,32,128,32,128, + 32,128,33,0,35,0,254,0,7,10,10,9,1,0,254,66, + 64,68,124,68,64,66,66,254,7,10,10,8,1,0,254,66, + 64,68,124,68,64,64,64,224,9,10,20,11,1,0,61,0, + 99,0,65,0,129,0,128,0,135,128,129,0,193,0,99,0, + 62,0,8,10,10,10,1,0,231,66,66,66,126,66,66,66, + 66,231,3,10,10,5,1,0,224,64,64,64,64,64,64,64, + 64,224,4,10,10,6,1,0,112,32,32,32,32,32,32,32, + 160,192,8,10,10,10,1,0,238,68,72,80,112,80,72,68, + 70,231,7,10,10,9,1,0,224,64,64,64,64,64,64,64, + 66,254,11,10,20,13,1,0,224,224,96,192,81,64,81,64, + 91,64,74,64,74,64,78,64,68,64,228,224,9,10,20,11, + 1,0,227,128,97,0,81,0,89,0,73,0,77,0,69,0, + 69,0,67,0,227,0,8,10,10,10,1,0,60,102,66,129, + 129,129,129,66,102,60,6,10,10,8,1,0,248,76,68,68, + 76,120,64,64,64,224,8,13,13,10,1,253,60,102,66,129, + 129,129,129,66,102,60,8,6,3,9,10,20,9,0,0,252, + 0,38,0,34,0,34,0,38,0,60,0,36,0,34,0,35, + 0,241,128,6,10,10,8,1,0,116,204,132,192,112,24,4, + 132,204,184,7,10,10,9,1,0,254,146,146,16,16,16,16, + 16,16,56,8,10,10,10,1,0,231,66,66,66,66,66,66, + 66,102,60,9,10,20,9,0,0,227,128,65,0,99,0,34, + 0,34,0,54,0,20,0,28,0,8,0,8,0,13,10,20, + 13,0,0,231,56,66,16,98,48,34,32,37,32,53,96,21, + 64,24,192,8,128,8,128,10,10,20,10,0,0,115,128,33, + 0,18,0,18,0,12,0,12,0,18,0,33,0,97,128,243, + 192,9,10,20,9,0,0,227,128,65,0,34,0,34,0,20, + 0,8,0,8,0,8,0,8,0,28,0,8,10,10,8,0, + 0,127,67,2,4,8,16,32,64,193,255,3,13,13,5,1, + 253,224,128,128,128,128,128,128,128,128,128,128,128,224,4,10, + 10,4,0,0,128,128,64,64,64,32,32,32,16,16,3,13, + 13,5,1,253,224,32,32,32,32,32,32,32,32,32,32,32, + 224,5,5,5,7,1,5,32,80,80,136,136,7,1,1,7, + 0,253,254,3,3,3,5,1,8,128,192,32,6,7,7,7, + 1,0,112,200,24,104,136,200,116,6,10,10,7,0,0,192, + 64,64,88,108,68,68,68,76,120,6,7,7,7,1,0,120, + 204,128,128,128,196,120,6,10,10,7,1,0,24,8,8,120, + 200,136,136,136,216,116,6,7,7,7,1,0,112,136,248,128, + 128,196,120,5,10,10,4,0,0,56,96,64,248,64,64,64, + 64,64,240,6,10,10,7,1,253,120,208,136,200,112,64,120, + 132,204,112,7,10,10,7,0,0,192,64,64,88,108,68,68, + 68,68,238,3,10,10,3,0,0,64,64,0,192,64,64,64, + 64,64,224,3,13,13,4,0,253,32,32,0,96,32,32,32, + 32,32,32,32,160,192,7,10,10,7,0,0,192,64,64,76, + 72,112,80,72,76,230,3,10,10,3,0,0,192,64,64,64, + 64,64,64,64,64,224,11,7,14,11,0,0,219,128,110,192, + 68,64,68,64,68,64,68,64,238,224,7,7,7,7,0,0, + 216,108,68,68,68,68,238,5,7,7,7,1,0,112,216,136, + 136,136,216,112,6,10,10,7,0,253,216,108,68,68,68,108, + 88,64,64,224,6,10,10,7,1,253,120,200,136,136,136,216, + 104,8,8,28,5,7,7,5,0,0,184,96,64,64,64,64, + 224,4,7,7,6,1,0,112,144,192,96,48,144,224,4,8, + 8,4,0,0,64,240,64,64,64,64,64,48,7,7,7,7, + 0,0,204,68,68,68,68,108,54,7,7,7,7,0,0,238, + 68,68,40,40,16,16,11,7,14,11,0,0,238,224,68,64, + 68,64,36,128,59,128,17,0,17,0,7,7,7,7,0,0, + 238,68,56,16,56,68,238,7,10,10,7,0,253,238,68,68, + 40,40,16,48,32,160,192,6,7,7,6,0,0,252,136,24, + 48,96,196,252,5,13,13,7,1,253,24,32,32,32,32,64, + 128,64,32,32,32,32,24,1,10,10,3,1,0,128,128,128, + 128,128,128,128,128,128,128,5,13,13,7,1,253,192,32,32, + 32,32,16,8,16,32,32,32,32,192,7,2,2,8,0,3, + 98,156,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,3,0,1,1,10,10,5,2,253,128, + 128,0,128,128,128,128,128,128,128,6,9,9,7,0,255,4, + 124,204,144,144,160,228,120,128,7,10,10,8,0,0,28,52, + 32,32,248,32,32,32,226,188,5,7,7,7,1,1,136,112, + 136,136,136,112,136,7,10,10,7,0,0,238,68,108,40,124, + 16,124,16,16,56,1,10,10,3,1,0,128,128,128,128,0, + 0,128,128,128,128,5,13,13,7,1,253,56,88,64,96,112, + 152,136,200,112,48,16,208,224,3,2,2,5,1,8,160,160, + 10,10,20,12,1,0,30,0,97,128,78,128,146,64,144,64, + 144,64,146,64,76,128,97,128,30,0,3,6,6,4,0,4, + 224,32,160,224,0,224,6,6,6,7,0,0,36,72,144,144, + 72,36,7,4,4,9,1,2,254,2,2,2,3,1,1,4, + 0,3,224,10,10,20,12,1,0,30,0,97,128,92,128,146, + 64,156,64,148,64,146,64,82,128,97,128,30,0,4,1,1, + 4,0,8,240,4,4,4,6,1,6,96,144,144,96,7,7, + 7,8,0,0,16,16,254,16,16,0,254,4,6,6,4,0, + 4,96,144,16,32,64,240,4,6,6,4,0,4,96,144,32, + 16,144,96,3,3,3,5,1,8,32,96,128,7,10,10,7, + 0,253,204,68,68,68,68,108,118,64,64,96,7,13,13,7, + 0,253,62,116,244,244,244,116,52,20,20,20,20,20,20,1, + 2,2,4,2,3,128,128,3,3,3,5,1,253,64,32,192, + 3,6,6,4,0,4,64,192,64,64,64,224,4,6,6,5, + 0,4,96,144,144,96,0,240,6,6,6,7,1,0,144,72, + 36,36,72,144,10,10,20,10,0,0,65,0,194,0,66,0, + 68,0,68,128,233,128,10,128,20,128,23,192,32,128,10,10, + 20,10,0,0,65,0,194,0,66,0,68,0,69,128,234,64, + 8,64,16,128,17,0,35,192,10,10,20,10,0,0,97,0, + 146,0,34,0,20,0,148,128,105,128,10,128,20,128,23,192, + 32,128,5,10,10,6,0,253,32,32,0,32,32,64,128,136, + 136,112,9,14,28,11,1,0,16,0,24,0,4,0,0,0, + 8,0,8,0,20,0,20,0,34,0,34,0,62,0,65,0, + 65,0,227,128,9,14,28,11,1,0,4,0,12,0,16,0, + 0,0,8,0,8,0,20,0,20,0,34,0,34,0,62,0, + 65,0,65,0,227,128,9,14,28,11,1,0,8,0,28,0, + 34,0,0,0,8,0,8,0,20,0,20,0,34,0,34,0, + 62,0,65,0,65,0,227,128,9,14,28,11,1,0,18,0, + 42,0,36,0,0,0,8,0,8,0,20,0,20,0,34,0, + 34,0,62,0,65,0,65,0,227,128,9,13,26,11,1,0, + 36,0,36,0,0,0,8,0,8,0,20,0,20,0,34,0, + 34,0,62,0,65,0,65,0,227,128,9,14,28,11,1,0, + 24,0,36,0,24,0,0,0,8,0,8,0,20,0,20,0, + 34,0,34,0,62,0,65,0,65,0,227,128,11,10,20,13, + 1,0,31,224,12,32,20,0,20,64,39,192,36,64,60,0, + 68,32,68,32,239,224,8,13,13,10,1,253,61,99,65,129, + 128,128,128,193,98,60,8,4,24,7,14,14,9,1,0,32, + 48,8,0,254,66,64,68,124,68,64,66,66,254,7,14,14, + 9,1,0,4,12,16,0,254,66,64,68,124,68,64,66,66, + 254,7,14,14,9,1,0,16,56,68,0,254,66,64,68,124, + 68,64,66,66,254,7,13,13,9,1,0,36,36,0,254,66, + 64,68,124,68,64,66,66,254,3,14,14,5,1,0,128,192, + 32,0,224,64,64,64,64,64,64,64,64,224,3,14,14,5, + 1,0,32,96,128,0,224,64,64,64,64,64,64,64,64,224, + 5,14,14,5,0,0,32,112,136,0,112,32,32,32,32,32, + 32,32,32,112,3,13,13,5,1,0,160,160,0,224,64,64, + 64,64,64,64,64,64,224,9,10,20,10,0,0,254,0,35, + 0,33,0,32,128,248,128,32,128,32,128,33,0,35,0,254, + 0,9,14,28,11,1,0,18,0,42,0,36,0,0,0,227, + 128,97,0,81,0,89,0,73,0,77,0,69,0,69,0,67, + 0,227,0,8,14,14,10,1,0,32,48,8,0,60,102,66, + 129,129,129,129,66,102,60,8,14,14,10,1,0,4,12,16, + 0,60,102,66,129,129,129,129,66,102,60,8,14,14,10,1, + 0,16,56,68,0,60,102,66,129,129,129,129,66,102,60,8, + 14,14,10,1,0,36,84,72,0,60,102,66,129,129,129,129, + 66,102,60,8,13,13,10,1,0,36,36,0,60,102,66,129, + 129,129,129,66,102,60,7,7,7,8,1,0,130,68,40,16, + 40,68,130,9,12,24,10,0,255,0,128,31,0,49,0,35, + 0,68,128,76,128,72,128,80,128,49,0,99,0,94,0,128, + 0,8,14,14,10,1,0,32,48,8,0,231,66,66,66,66, + 66,66,66,102,60,8,14,14,10,1,0,4,12,16,0,231, + 66,66,66,66,66,66,66,102,60,8,14,14,10,1,0,16, + 56,68,0,231,66,66,66,66,66,66,66,102,60,8,13,13, + 10,1,0,36,36,0,231,66,66,66,66,66,66,66,102,60, + 9,14,28,9,0,0,2,0,6,0,8,0,0,0,227,128, + 65,0,34,0,34,0,20,0,8,0,8,0,8,0,8,0, + 28,0,6,10,10,8,1,0,224,64,120,76,68,68,76,120, + 64,224,6,10,10,7,0,0,56,108,68,72,112,88,76,68, + 84,216,6,11,11,7,1,0,64,96,16,0,112,200,24,104, + 136,200,116,6,11,11,7,1,0,8,24,32,0,112,200,24, + 104,136,200,116,6,11,11,7,1,0,32,112,136,0,112,200, + 24,104,136,200,116,6,11,11,7,1,0,72,168,144,0,112, + 200,24,104,136,200,116,6,10,10,7,1,0,80,80,0,112, + 200,24,104,136,200,116,6,11,11,7,1,0,48,72,48,0, + 112,200,24,104,136,200,116,9,7,14,11,1,0,127,0,201, + 128,31,0,104,0,136,0,204,128,119,0,6,10,10,7,1, + 253,112,200,128,128,128,196,120,32,16,96,6,11,11,7,1, + 0,64,96,16,0,112,136,248,128,128,196,120,6,11,11,7, + 1,0,8,24,32,0,112,136,248,128,128,196,120,6,11,11, + 7,1,0,32,112,136,0,112,136,248,128,128,196,120,6,10, + 10,7,1,0,80,80,0,112,136,248,128,128,196,120,3,11, + 11,3,0,0,128,192,32,0,192,64,64,64,64,64,224,3, + 11,11,3,0,0,32,96,128,0,192,64,64,64,64,64,224, + 5,11,11,3,255,0,32,112,136,0,96,32,32,32,32,32, + 112,3,10,10,3,0,0,160,160,0,192,64,64,64,64,64, + 224,5,10,10,7,1,0,216,96,144,120,216,136,136,136,216, + 112,7,11,11,7,0,0,36,84,72,0,216,108,68,68,68, + 68,238,5,11,11,7,1,0,64,96,16,0,112,216,136,136, + 136,216,112,5,11,11,7,1,0,16,48,64,0,112,216,136, + 136,136,216,112,5,11,11,7,1,0,32,112,136,0,112,216, + 136,136,136,216,112,5,11,11,7,1,0,72,168,144,0,112, + 216,136,136,136,216,112,5,10,10,7,1,0,80,80,0,112, + 216,136,136,136,216,112,7,7,7,8,1,0,16,16,0,254, + 0,16,16,7,9,9,7,0,255,2,60,108,68,68,68,108, + 120,128,7,11,11,7,0,0,32,48,8,0,204,68,68,68, + 68,108,54,7,11,11,7,0,0,8,24,32,0,204,68,68, + 68,68,108,54,7,11,11,7,0,0,16,56,68,0,204,68, + 68,68,68,108,54,7,10,10,7,0,0,40,40,0,204,68, + 68,68,68,108,54,7,14,14,7,0,253,4,12,16,0,238, + 68,68,40,40,16,48,32,160,192,6,13,13,7,0,253,192, + 64,64,88,108,68,68,68,108,88,64,64,224,7,13,13,7, + 0,253,40,40,0,238,68,68,40,40,16,48,32,160,192}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--14-100-100-100-P-74-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=13 h=13 x= 2 y= 8 dx=13 dy= 0 ascent=11 len=24 + Font Bounding box w=17 h=24 x=-2 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =11 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR10r[1571] U8G_SECTION(".progmem.u8g_font_timR10r") = { + 0,17,24,254,250,10,2,4,4,92,32,127,253,11,253,10, + 253,0,0,0,3,0,1,1,10,10,5,2,0,128,128,128, + 128,128,128,128,0,128,128,3,3,3,6,1,7,160,160,160, + 7,10,10,7,0,0,20,20,126,40,40,40,252,80,80,80, + 5,12,12,7,1,255,32,120,168,160,160,112,40,40,40,168, + 240,32,9,10,20,12,1,0,113,128,223,0,146,0,148,0, + 104,0,11,0,22,128,36,128,68,128,67,0,10,10,20,11, + 1,0,24,0,36,0,36,0,56,0,19,128,121,0,202,0, + 132,0,206,64,115,128,1,3,3,3,1,7,128,128,128,3, + 13,13,5,1,253,32,32,64,64,128,128,128,128,128,64,64, + 32,32,3,13,13,5,1,253,128,128,64,64,32,32,32,32, + 32,64,64,128,128,5,6,6,7,1,4,32,168,112,112,168, + 32,7,7,7,8,0,0,16,16,16,254,16,16,16,2,3, + 3,4,1,254,192,64,128,3,1,1,4,0,3,224,2,1, + 1,4,1,0,192,4,12,12,4,0,254,16,16,16,32,32, + 32,64,64,64,128,128,128,6,10,10,7,1,0,120,204,132, + 132,132,132,132,132,204,120,5,10,10,7,1,0,32,224,32, + 32,32,32,32,32,32,248,5,10,10,7,1,0,112,216,136, + 8,24,16,32,64,136,248,6,10,10,7,0,0,120,140,4, + 8,48,56,4,4,204,120,6,10,10,7,0,0,8,24,24, + 40,104,72,136,252,8,8,5,10,10,7,1,0,120,64,128, + 224,48,24,8,8,144,224,6,10,10,7,0,0,12,16,32, + 64,120,204,132,132,204,120,6,10,10,7,0,0,252,132,8, + 8,16,16,32,32,64,64,5,10,10,7,1,0,112,152,136, + 200,112,152,136,136,136,112,6,10,10,7,1,0,120,204,132, + 132,204,120,8,16,32,192,2,7,7,4,1,0,192,0,0, + 0,0,0,192,2,9,9,4,1,254,192,0,0,0,0,0, + 192,64,128,7,7,7,8,0,0,6,24,96,192,96,24,6, + 7,3,3,8,0,2,254,0,254,7,7,7,8,0,0,192, + 48,12,6,12,48,192,5,10,10,6,0,0,112,136,136,8, + 16,32,32,0,32,32,12,12,24,13,0,254,15,128,48,96, + 96,32,70,144,137,16,145,16,145,16,147,32,205,192,64,0, + 48,192,15,0,9,10,20,11,1,0,8,0,8,0,20,0, + 20,0,34,0,34,0,62,0,65,0,65,0,227,128,7,10, + 10,9,1,0,252,70,66,70,124,70,66,66,70,252,8,10, + 10,10,1,0,61,99,65,129,128,128,128,193,98,60,9,10, + 20,10,0,0,254,0,35,0,33,0,32,128,32,128,32,128, + 32,128,33,0,35,0,254,0,7,10,10,9,1,0,254,66, + 64,68,124,68,64,66,66,254,7,10,10,8,1,0,254,66, + 64,68,124,68,64,64,64,224,9,10,20,11,1,0,61,0, + 99,0,65,0,129,0,128,0,135,128,129,0,193,0,99,0, + 62,0,8,10,10,10,1,0,231,66,66,66,126,66,66,66, + 66,231,3,10,10,5,1,0,224,64,64,64,64,64,64,64, + 64,224,4,10,10,6,1,0,112,32,32,32,32,32,32,32, + 160,192,8,10,10,10,1,0,238,68,72,80,112,80,72,68, + 70,231,7,10,10,9,1,0,224,64,64,64,64,64,64,64, + 66,254,11,10,20,13,1,0,224,224,96,192,81,64,81,64, + 91,64,74,64,74,64,78,64,68,64,228,224,9,10,20,11, + 1,0,227,128,97,0,81,0,89,0,73,0,77,0,69,0, + 69,0,67,0,227,0,8,10,10,10,1,0,60,102,66,129, + 129,129,129,66,102,60,6,10,10,8,1,0,248,76,68,68, + 76,120,64,64,64,224,8,13,13,10,1,253,60,102,66,129, + 129,129,129,66,102,60,8,6,3,9,10,20,9,0,0,252, + 0,38,0,34,0,34,0,38,0,60,0,36,0,34,0,35, + 0,241,128,6,10,10,8,1,0,116,204,132,192,112,24,4, + 132,204,184,7,10,10,9,1,0,254,146,146,16,16,16,16, + 16,16,56,8,10,10,10,1,0,231,66,66,66,66,66,66, + 66,102,60,9,10,20,9,0,0,227,128,65,0,99,0,34, + 0,34,0,54,0,20,0,28,0,8,0,8,0,13,10,20, + 13,0,0,231,56,66,16,98,48,34,32,37,32,53,96,21, + 64,24,192,8,128,8,128,10,10,20,10,0,0,115,128,33, + 0,18,0,18,0,12,0,12,0,18,0,33,0,97,128,243, + 192,9,10,20,9,0,0,227,128,65,0,34,0,34,0,20, + 0,8,0,8,0,8,0,8,0,28,0,8,10,10,8,0, + 0,127,67,2,4,8,16,32,64,193,255,3,13,13,5,1, + 253,224,128,128,128,128,128,128,128,128,128,128,128,224,4,10, + 10,4,0,0,128,128,64,64,64,32,32,32,16,16,3,13, + 13,5,1,253,224,32,32,32,32,32,32,32,32,32,32,32, + 224,5,5,5,7,1,5,32,80,80,136,136,7,1,1,7, + 0,253,254,3,3,3,5,1,8,128,192,32,6,7,7,7, + 1,0,112,200,24,104,136,200,116,6,10,10,7,0,0,192, + 64,64,88,108,68,68,68,76,120,6,7,7,7,1,0,120, + 204,128,128,128,196,120,6,10,10,7,1,0,24,8,8,120, + 200,136,136,136,216,116,6,7,7,7,1,0,112,136,248,128, + 128,196,120,5,10,10,4,0,0,56,96,64,248,64,64,64, + 64,64,240,6,10,10,7,1,253,120,208,136,200,112,64,120, + 132,204,112,7,10,10,7,0,0,192,64,64,88,108,68,68, + 68,68,238,3,10,10,3,0,0,64,64,0,192,64,64,64, + 64,64,224,3,13,13,4,0,253,32,32,0,96,32,32,32, + 32,32,32,32,160,192,7,10,10,7,0,0,192,64,64,76, + 72,112,80,72,76,230,3,10,10,3,0,0,192,64,64,64, + 64,64,64,64,64,224,11,7,14,11,0,0,219,128,110,192, + 68,64,68,64,68,64,68,64,238,224,7,7,7,7,0,0, + 216,108,68,68,68,68,238,5,7,7,7,1,0,112,216,136, + 136,136,216,112,6,10,10,7,0,253,216,108,68,68,68,108, + 88,64,64,224,6,10,10,7,1,253,120,200,136,136,136,216, + 104,8,8,28,5,7,7,5,0,0,184,96,64,64,64,64, + 224,4,7,7,6,1,0,112,144,192,96,48,144,224,4,8, + 8,4,0,0,64,240,64,64,64,64,64,48,7,7,7,7, + 0,0,204,68,68,68,68,108,54,7,7,7,7,0,0,238, + 68,68,40,40,16,16,11,7,14,11,0,0,238,224,68,64, + 68,64,36,128,59,128,17,0,17,0,7,7,7,7,0,0, + 238,68,56,16,56,68,238,7,10,10,7,0,253,238,68,68, + 40,40,16,48,32,160,192,6,7,7,6,0,0,252,136,24, + 48,96,196,252,5,13,13,7,1,253,24,32,32,32,32,64, + 128,64,32,32,32,32,24,1,10,10,3,1,0,128,128,128, + 128,128,128,128,128,128,128,5,13,13,7,1,253,192,32,32, + 32,32,16,8,16,32,32,32,32,192,7,2,2,8,0,3, + 98,156,255}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--17-120-100-100-P-84-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=15 h=16 x= 2 y= 9 dx=16 dy= 0 ascent=15 len=30 + Font Bounding box w=19 h=26 x=-2 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =11 descent=-4 + Max Font ascent =15 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR12[3905] U8G_SECTION(".progmem.u8g_font_timR12") = { + 0,19,26,254,249,11,2,36,5,11,32,255,252,15,252,11, + 252,0,0,0,4,0,1,1,11,11,5,2,0,128,128,128, + 128,128,128,128,0,0,128,128,4,3,3,7,1,8,144,144, + 144,8,11,11,8,0,0,18,18,18,127,36,36,254,72,72, + 72,72,7,13,13,8,0,255,16,124,146,146,144,80,56,20, + 18,146,146,124,16,11,11,22,14,1,0,57,0,79,0,139, + 0,138,0,150,0,100,224,13,32,10,32,26,32,18,64,17, + 128,12,11,22,13,0,0,12,0,18,0,18,0,18,0,12, + 224,56,64,68,128,131,0,130,16,69,32,56,192,1,3,3, + 3,1,8,128,128,128,4,14,14,5,0,253,16,32,64,64, + 128,128,128,128,128,128,64,64,32,16,4,14,14,5,255,253, + 128,64,32,32,16,16,16,16,16,16,32,32,64,128,5,6, + 6,8,1,5,32,168,112,112,168,32,7,7,7,9,1,1, + 16,16,16,254,16,16,16,2,3,3,4,1,255,64,64,128, + 4,1,1,5,0,4,240,1,2,2,4,1,0,128,128,5, + 13,13,5,0,254,8,8,8,16,16,32,32,32,64,64,64, + 128,128,7,11,11,8,0,0,56,68,68,130,130,130,130,130, + 68,68,56,4,11,11,8,1,0,32,96,160,32,32,32,32, + 32,32,32,112,7,11,11,8,0,0,56,68,130,2,2,4, + 8,16,32,66,252,7,11,11,8,0,0,56,68,132,8,16, + 56,4,2,2,196,120,8,11,11,8,255,0,2,6,10,10, + 18,34,34,66,255,2,2,7,11,11,8,0,0,62,32,32, + 64,120,4,2,2,2,140,112,7,11,11,8,0,0,14,48, + 64,64,152,228,130,130,130,68,56,7,11,11,8,0,0,254, + 130,132,4,8,8,16,16,16,32,32,6,11,11,8,0,0, + 48,72,132,132,72,48,72,132,132,72,48,7,11,11,8,0, + 0,56,68,130,130,130,70,58,4,4,24,224,1,8,8,4, + 1,0,128,128,0,0,0,0,128,128,2,9,9,4,0,255, + 64,64,0,0,0,0,64,64,128,8,9,9,9,0,0,3, + 12,16,96,128,96,16,12,3,7,4,4,9,0,2,254,0, + 0,254,8,9,9,9,1,0,192,48,8,6,1,6,8,48, + 192,5,11,11,7,1,0,112,136,136,8,16,32,32,0,0, + 32,32,14,14,28,15,0,253,7,192,24,48,32,8,65,168, + 70,100,132,68,136,68,136,68,136,200,137,72,70,48,32,0, + 24,48,7,192,12,11,22,12,0,0,4,0,6,0,10,0, + 11,0,17,0,17,128,32,128,63,128,64,192,64,64,224,240, + 8,11,11,11,1,0,252,70,66,66,68,124,70,65,65,67, + 254,10,11,22,11,0,0,31,64,96,192,64,64,128,64,128, + 0,128,0,128,0,128,0,64,64,97,128,30,0,10,11,22, + 12,0,0,252,0,67,0,64,128,64,64,64,64,64,64,64, + 64,64,64,64,128,67,0,252,0,9,11,22,10,0,0,255, + 0,65,0,64,0,64,0,66,0,126,0,66,0,64,0,64, + 0,64,128,255,0,8,11,11,9,0,0,255,65,64,64,66, + 126,66,64,64,64,224,11,11,22,12,0,0,15,64,48,192, + 64,64,128,0,128,0,129,224,128,64,128,64,64,64,48,192, + 15,0,10,11,22,12,0,0,225,192,64,128,64,128,64,128, + 64,128,127,128,64,128,64,128,64,128,64,128,225,192,3,11, + 11,5,0,0,224,64,64,64,64,64,64,64,64,64,224,5, + 11,11,6,0,0,56,16,16,16,16,16,16,16,144,144,96, + 10,11,22,12,1,0,243,192,65,0,66,0,68,0,72,0, + 112,0,72,0,68,0,66,0,65,0,243,192,8,11,11,10, + 0,0,224,64,64,64,64,64,64,64,64,65,254,13,11,22, + 15,0,0,224,56,96,48,80,80,80,80,72,144,72,144,72, + 144,69,16,69,16,66,16,226,56,10,11,22,12,0,0,225, + 192,96,128,80,128,80,128,72,128,72,128,68,128,66,128,66, + 128,65,128,240,128,9,11,22,12,1,0,28,0,99,0,65, + 0,128,128,128,128,128,128,128,128,128,128,65,0,99,0,28, + 0,8,11,11,9,0,0,252,66,65,65,66,124,64,64,64, + 64,224,10,14,28,12,1,253,28,0,99,0,65,0,128,128, + 128,128,128,128,128,128,128,128,65,0,99,0,60,0,12,0, + 6,0,1,192,10,11,22,11,0,0,252,0,66,0,65,0, + 65,0,66,0,124,0,72,0,68,0,66,0,65,0,225,192, + 8,11,11,9,0,0,58,70,130,128,96,28,2,1,129,194, + 188,9,11,22,10,0,0,255,128,136,128,136,128,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,28,0,10,11,22, + 12,0,0,225,192,64,128,64,128,64,128,64,128,64,128,64, + 128,64,128,64,128,33,0,30,0,11,11,22,12,0,0,224, + 224,64,64,32,128,32,128,17,0,17,0,17,0,10,0,10, + 0,4,0,4,0,15,11,22,16,0,0,231,14,66,4,33, + 8,33,8,17,136,18,144,18,144,10,80,10,80,4,32,4, + 32,11,11,22,12,0,0,224,224,64,64,32,128,17,0,10, + 0,4,0,10,0,17,0,32,128,64,64,224,224,11,11,22, + 12,0,0,224,224,64,64,32,128,17,0,17,0,10,0,4, + 0,4,0,4,0,4,0,14,0,9,11,22,10,0,0,255, + 128,129,0,130,0,4,0,4,0,8,0,16,0,32,0,32, + 0,64,128,255,0,3,14,14,5,1,253,224,128,128,128,128, + 128,128,128,128,128,128,128,128,224,6,11,11,5,255,0,128, + 64,64,32,32,16,16,8,8,4,4,3,14,14,5,0,253, + 224,32,32,32,32,32,32,32,32,32,32,32,32,224,7,7, + 7,8,0,4,16,40,40,68,68,130,130,8,1,1,8,0, + 254,255,3,3,3,6,1,8,128,64,32,7,8,8,7,1, + 0,112,136,136,56,200,136,154,108,7,11,11,8,0,0,64, + 192,64,92,100,66,66,66,66,100,56,6,8,8,7,0,0, + 56,68,132,128,128,128,68,56,7,11,11,8,0,0,4,12, + 4,52,76,132,132,132,132,78,52,6,8,8,7,0,0,56, + 68,132,252,128,128,68,56,5,11,11,6,1,0,48,72,64, + 64,240,64,64,64,64,64,240,7,12,12,8,0,252,54,76, + 132,132,72,112,128,124,130,130,196,120,8,11,11,8,0,0, + 64,192,64,92,102,66,66,66,66,66,231,3,11,11,5,1, + 0,64,64,0,64,192,64,64,64,64,64,224,3,15,15,4, + 0,252,32,32,0,32,96,32,32,32,32,32,32,32,32,160, + 192,7,11,11,8,1,0,64,192,64,92,72,80,96,80,72, + 68,238,3,11,11,5,1,0,64,192,64,64,64,64,64,64, + 64,64,224,11,8,16,13,1,0,89,128,230,64,68,64,68, + 64,68,64,68,64,68,64,238,224,8,8,8,8,0,0,92, + 230,66,66,66,66,66,231,7,8,8,8,0,0,56,68,130, + 130,130,130,68,56,7,12,12,8,0,252,92,230,66,66,66, + 66,98,92,64,64,64,224,7,12,12,8,1,252,116,204,132, + 132,132,132,204,116,4,4,4,14,5,8,8,6,0,0,88, + 232,64,64,64,64,64,224,5,8,8,6,0,0,120,136,128, + 112,8,136,200,176,4,10,10,5,0,0,64,64,240,64,64, + 64,64,64,80,32,8,8,8,8,0,0,198,66,66,66,66, + 66,71,58,8,8,8,8,0,0,231,66,66,36,36,20,24, + 8,12,8,16,12,0,0,238,112,68,32,68,32,34,64,34, + 64,21,64,8,128,8,128,7,8,8,8,0,0,238,68,40, + 16,40,40,68,238,8,12,12,8,0,252,247,66,66,36,36, + 20,8,8,16,16,160,192,6,8,8,7,0,0,252,132,8, + 16,32,64,132,252,4,14,14,8,2,253,48,64,64,64,64, + 64,128,64,64,64,64,64,64,48,1,11,11,3,0,0,128, + 128,128,128,128,128,128,128,128,128,128,4,14,14,8,0,253, + 192,32,32,32,32,32,16,32,32,32,32,32,32,192,8,3, + 3,9,0,3,113,153,142,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,4,0,1,1,11, + 11,5,2,253,128,128,0,0,128,128,128,128,128,128,128,7, + 12,12,8,0,254,4,4,60,74,138,136,144,146,84,56,32, + 32,8,11,11,8,0,0,12,18,34,32,32,252,16,16,113, + 145,110,8,9,9,8,0,1,153,102,66,129,129,129,66,102, + 153,9,11,22,8,255,0,227,128,65,0,34,0,20,0,8, + 0,62,0,8,0,62,0,8,0,8,0,28,0,1,11,11, + 3,0,0,128,128,128,128,128,0,128,128,128,128,128,7,14, + 14,8,0,253,56,68,76,32,80,136,132,66,34,20,8,100, + 68,56,4,2,2,6,1,9,144,144,11,11,22,13,0,0, + 14,0,49,128,64,64,78,64,145,32,144,32,144,32,81,64, + 78,64,49,128,14,0,4,6,6,5,0,5,96,16,112,144, + 80,240,7,7,7,8,0,0,18,36,72,144,72,36,18,8, + 5,5,9,0,0,255,1,1,1,1,4,1,1,5,0,4, + 240,11,11,22,13,0,0,14,0,49,128,64,64,78,64,137, + 32,142,32,138,32,74,64,73,64,49,128,14,0,5,1,1, + 6,0,9,248,5,5,5,7,1,6,112,136,136,136,112,7, + 9,9,9,1,0,16,16,16,254,16,16,16,0,254,5,7, + 7,5,0,4,112,136,8,16,32,72,248,6,7,7,5,255, + 4,56,68,4,24,4,132,120,3,3,3,6,2,8,32,64, + 128,8,11,11,8,0,253,198,66,66,66,66,66,71,122,64, + 64,64,7,15,15,8,0,252,62,116,244,244,244,116,52,20, + 20,20,20,20,20,20,20,1,2,2,4,1,4,128,128,4, + 4,4,6,0,252,32,112,16,224,3,7,7,5,1,4,64, + 192,64,64,64,64,224,4,6,6,5,0,5,96,144,144,144, + 96,240,7,7,7,8,0,0,144,72,36,18,36,72,144,11, + 11,22,13,1,0,64,128,193,0,67,0,66,0,68,64,76, + 192,233,64,25,64,18,64,39,224,64,64,12,11,22,13,0, + 0,64,128,193,0,67,0,66,0,68,224,77,16,232,16,24, + 32,16,64,32,144,65,240,13,11,22,13,255,0,56,32,68, + 64,4,192,24,128,5,16,135,48,122,80,6,80,4,144,9, + 248,8,16,5,11,11,7,1,253,32,32,0,0,32,32,64, + 128,136,136,112,12,15,30,12,0,0,8,0,4,0,2,0, + 0,0,4,0,6,0,10,0,11,0,17,0,17,128,32,128, + 63,128,64,192,64,64,224,240,12,15,30,12,0,0,1,0, + 2,0,4,0,0,0,4,0,6,0,10,0,11,0,17,0, + 17,128,32,128,63,128,64,192,64,64,224,240,12,15,30,12, + 0,0,4,0,10,0,17,0,0,0,4,0,6,0,10,0, + 11,0,17,0,17,128,32,128,63,128,64,192,64,64,224,240, + 12,14,28,12,0,0,13,0,22,0,0,0,4,0,6,0, + 10,0,11,0,17,0,17,128,32,128,63,128,64,192,64,64, + 224,240,12,14,28,12,0,0,9,0,9,0,0,0,4,0, + 6,0,10,0,11,0,17,0,17,128,32,128,63,128,64,192, + 64,64,224,240,12,14,28,12,0,0,6,0,9,0,9,0, + 6,0,6,0,10,0,11,0,17,0,17,128,32,128,63,128, + 64,192,64,64,224,240,14,11,22,15,0,0,7,248,3,8, + 5,8,9,0,9,16,17,240,31,16,33,0,33,0,65,4, + 243,248,10,15,30,11,0,252,15,64,48,192,64,64,128,64, + 128,0,128,0,128,0,128,0,64,64,49,128,14,0,4,0, + 14,0,2,0,28,0,9,15,30,10,0,0,32,0,16,0, + 8,0,0,0,255,0,65,0,64,0,64,0,66,0,126,0, + 66,0,64,0,64,0,64,128,255,0,9,15,30,10,0,0, + 2,0,4,0,8,0,0,0,255,0,65,0,65,0,64,0, + 66,0,126,0,66,0,64,0,64,0,64,128,255,0,9,15, + 30,10,0,0,8,0,20,0,34,0,0,0,255,0,65,0, + 64,0,64,0,66,0,126,0,66,0,64,0,64,0,64,128, + 255,0,9,14,28,10,0,0,36,0,36,0,0,0,255,0, + 65,0,64,0,64,0,66,0,126,0,66,0,64,0,64,0, + 64,128,255,0,4,15,15,5,255,0,128,64,32,0,112,32, + 32,32,32,32,32,32,32,32,112,5,15,15,5,0,0,8, + 16,32,0,224,64,64,64,64,64,64,64,64,64,224,5,15, + 15,5,255,0,32,80,136,0,112,32,32,32,32,32,32,32, + 32,32,112,3,14,14,5,0,0,160,160,0,224,64,64,64, + 64,64,64,64,64,64,224,10,11,22,12,1,0,252,0,67, + 0,64,128,64,64,64,64,248,64,64,64,64,64,64,128,67, + 0,252,0,10,14,28,12,0,0,13,0,22,0,0,0,225, + 192,96,128,80,128,80,128,72,128,72,128,68,128,66,128,66, + 128,65,128,240,128,9,15,30,12,1,0,32,0,16,0,8, + 0,0,0,28,0,99,0,65,0,128,128,128,128,128,128,128, + 128,128,128,65,0,99,0,28,0,9,15,30,12,1,0,2, + 0,4,0,8,0,0,0,28,0,99,0,65,0,128,128,128, + 128,128,128,128,128,128,128,65,0,99,0,28,0,9,15,30, + 12,1,0,8,0,20,0,34,0,0,0,28,0,99,0,65, + 0,128,128,128,128,128,128,128,128,128,128,65,0,99,0,28, + 0,9,14,28,12,1,0,26,0,44,0,0,0,28,0,99, + 0,65,0,128,128,128,128,128,128,128,128,128,128,65,0,99, + 0,28,0,9,14,28,12,1,0,34,0,34,0,0,0,28, + 0,99,0,65,0,128,128,128,128,128,128,128,128,128,128,65, + 0,99,0,28,0,7,7,7,9,1,0,130,68,40,16,40, + 68,130,11,13,26,12,0,255,0,64,14,64,49,128,65,64, + 130,32,132,32,132,32,136,32,144,32,80,64,49,128,78,0, + 64,0,10,15,30,12,0,0,16,0,8,0,4,0,0,0, + 225,192,64,128,64,128,64,128,64,128,64,128,64,128,64,128, + 64,128,33,0,30,0,10,15,30,12,0,0,1,0,2,0, + 4,0,0,0,225,192,64,128,64,128,64,128,64,128,64,128, + 64,128,64,128,64,128,33,0,30,0,10,15,30,12,0,0, + 4,0,10,0,17,0,0,0,225,192,64,128,64,128,64,128, + 64,128,64,128,64,128,64,128,64,128,33,0,30,0,10,14, + 28,12,0,0,18,0,18,0,0,0,225,192,64,128,64,128, + 64,128,64,128,64,128,64,128,64,128,64,128,33,0,30,0, + 11,15,30,12,0,0,0,128,1,0,2,0,0,0,224,224, + 64,64,32,128,17,0,17,0,10,0,4,0,4,0,4,0, + 4,0,14,0,8,11,11,9,0,0,224,64,124,66,65,65, + 66,124,64,64,224,7,11,11,8,0,0,56,68,68,68,72, + 88,68,66,66,82,204,7,12,12,7,1,0,64,32,16,0, + 112,136,136,56,200,136,154,100,7,12,12,7,1,0,8,16, + 32,0,112,136,136,56,200,136,154,100,7,12,12,7,1,0, + 32,80,136,0,112,136,136,56,200,136,154,100,7,11,11,7, + 1,0,104,176,0,112,136,136,56,200,136,154,100,7,11,11, + 7,1,0,72,72,0,112,136,136,56,200,136,154,100,7,12, + 12,7,1,0,32,80,80,32,112,136,136,56,200,136,154,100, + 9,8,16,11,1,0,115,0,140,128,136,128,63,128,200,0, + 136,0,156,128,99,0,6,12,12,7,0,252,56,68,132,128, + 128,128,68,56,16,56,8,112,6,12,12,7,0,0,64,32, + 16,0,56,68,132,252,128,128,68,56,6,12,12,7,0,0, + 4,8,16,0,56,68,132,252,128,128,68,56,6,12,12,7, + 0,0,16,40,68,0,56,68,132,252,128,128,68,56,6,11, + 11,7,0,0,72,72,0,56,68,132,252,128,128,68,56,3, + 12,12,5,0,0,128,64,32,0,64,192,64,64,64,64,64, + 224,3,12,12,5,0,0,32,64,128,0,64,192,64,64,64, + 64,64,224,5,12,12,5,255,0,32,80,136,0,32,96,32, + 32,32,32,32,112,3,11,11,5,0,0,160,160,0,64,192, + 64,64,64,64,64,224,7,11,11,8,0,0,108,48,200,60, + 68,130,130,130,130,68,56,8,11,11,8,255,0,52,88,0, + 92,230,66,66,66,66,66,231,7,12,12,8,0,0,32,16, + 8,0,56,68,130,130,130,130,68,56,7,12,12,8,0,0, + 4,8,16,0,56,68,130,130,130,130,68,56,7,12,12,8, + 0,0,16,40,68,0,56,68,130,130,130,130,68,56,7,11, + 11,8,0,0,52,88,0,56,68,130,130,130,130,68,56,7, + 11,11,8,0,0,72,72,0,56,68,130,130,130,130,68,56, + 9,9,18,9,255,0,8,0,8,0,0,0,0,0,255,128, + 0,0,0,0,8,0,8,0,7,12,12,8,0,254,2,2, + 60,68,138,146,146,162,100,56,64,64,8,12,12,8,255,0, + 32,16,8,0,198,66,66,66,66,66,70,59,8,12,12,8, + 255,0,4,8,16,0,198,66,66,66,66,66,70,59,8,12, + 12,8,255,0,16,40,68,0,198,66,66,66,66,66,70,59, + 8,11,11,8,255,0,36,36,0,198,66,66,66,66,66,70, + 59,8,16,16,8,255,252,2,4,8,0,247,66,66,36,36, + 20,8,8,16,16,160,192,8,15,15,8,255,252,64,192,64, + 92,98,65,65,65,65,98,92,64,64,64,224,8,15,15,8, + 255,252,36,36,0,247,66,98,36,52,20,24,8,16,16,160, + 192}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--17-120-100-100-P-84-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=15 h=15 x= 2 y= 8 dx=16 dy= 0 ascent=12 len=28 + Font Bounding box w=19 h=26 x=-2 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =11 descent=-4 + Max Font ascent =12 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR12r[1784] U8G_SECTION(".progmem.u8g_font_timR12r") = { + 0,19,26,254,249,11,2,36,5,11,32,127,252,12,252,11, + 252,0,0,0,4,0,1,1,11,11,5,2,0,128,128,128, + 128,128,128,128,0,0,128,128,4,3,3,7,1,8,144,144, + 144,8,11,11,8,0,0,18,18,18,127,36,36,254,72,72, + 72,72,7,13,13,8,0,255,16,124,146,146,144,80,56,20, + 18,146,146,124,16,11,11,22,14,1,0,57,0,79,0,139, + 0,138,0,150,0,100,224,13,32,10,32,26,32,18,64,17, + 128,12,11,22,13,0,0,12,0,18,0,18,0,18,0,12, + 224,56,64,68,128,131,0,130,16,69,32,56,192,1,3,3, + 3,1,8,128,128,128,4,14,14,5,0,253,16,32,64,64, + 128,128,128,128,128,128,64,64,32,16,4,14,14,5,255,253, + 128,64,32,32,16,16,16,16,16,16,32,32,64,128,5,6, + 6,8,1,5,32,168,112,112,168,32,7,7,7,9,1,1, + 16,16,16,254,16,16,16,2,3,3,4,1,255,64,64,128, + 4,1,1,5,0,4,240,1,2,2,4,1,0,128,128,5, + 13,13,5,0,254,8,8,8,16,16,32,32,32,64,64,64, + 128,128,7,11,11,8,0,0,56,68,68,130,130,130,130,130, + 68,68,56,4,11,11,8,1,0,32,96,160,32,32,32,32, + 32,32,32,112,7,11,11,8,0,0,56,68,130,2,2,4, + 8,16,32,66,252,7,11,11,8,0,0,56,68,132,8,16, + 56,4,2,2,196,120,8,11,11,8,255,0,2,6,10,10, + 18,34,34,66,255,2,2,7,11,11,8,0,0,62,32,32, + 64,120,4,2,2,2,140,112,7,11,11,8,0,0,14,48, + 64,64,152,228,130,130,130,68,56,7,11,11,8,0,0,254, + 130,132,4,8,8,16,16,16,32,32,6,11,11,8,0,0, + 48,72,132,132,72,48,72,132,132,72,48,7,11,11,8,0, + 0,56,68,130,130,130,70,58,4,4,24,224,1,8,8,4, + 1,0,128,128,0,0,0,0,128,128,2,9,9,4,0,255, + 64,64,0,0,0,0,64,64,128,8,9,9,9,0,0,3, + 12,16,96,128,96,16,12,3,7,4,4,9,0,2,254,0, + 0,254,8,9,9,9,1,0,192,48,8,6,1,6,8,48, + 192,5,11,11,7,1,0,112,136,136,8,16,32,32,0,0, + 32,32,14,14,28,15,0,253,7,192,24,48,32,8,65,168, + 70,100,132,68,136,68,136,68,136,200,137,72,70,48,32,0, + 24,48,7,192,12,11,22,12,0,0,4,0,6,0,10,0, + 11,0,17,0,17,128,32,128,63,128,64,192,64,64,224,240, + 8,11,11,11,1,0,252,70,66,66,68,124,70,65,65,67, + 254,10,11,22,11,0,0,31,64,96,192,64,64,128,64,128, + 0,128,0,128,0,128,0,64,64,97,128,30,0,10,11,22, + 12,0,0,252,0,67,0,64,128,64,64,64,64,64,64,64, + 64,64,64,64,128,67,0,252,0,9,11,22,10,0,0,255, + 0,65,0,64,0,64,0,66,0,126,0,66,0,64,0,64, + 0,64,128,255,0,8,11,11,9,0,0,255,65,64,64,66, + 126,66,64,64,64,224,11,11,22,12,0,0,15,64,48,192, + 64,64,128,0,128,0,129,224,128,64,128,64,64,64,48,192, + 15,0,10,11,22,12,0,0,225,192,64,128,64,128,64,128, + 64,128,127,128,64,128,64,128,64,128,64,128,225,192,3,11, + 11,5,0,0,224,64,64,64,64,64,64,64,64,64,224,5, + 11,11,6,0,0,56,16,16,16,16,16,16,16,144,144,96, + 10,11,22,12,1,0,243,192,65,0,66,0,68,0,72,0, + 112,0,72,0,68,0,66,0,65,0,243,192,8,11,11,10, + 0,0,224,64,64,64,64,64,64,64,64,65,254,13,11,22, + 15,0,0,224,56,96,48,80,80,80,80,72,144,72,144,72, + 144,69,16,69,16,66,16,226,56,10,11,22,12,0,0,225, + 192,96,128,80,128,80,128,72,128,72,128,68,128,66,128,66, + 128,65,128,240,128,9,11,22,12,1,0,28,0,99,0,65, + 0,128,128,128,128,128,128,128,128,128,128,65,0,99,0,28, + 0,8,11,11,9,0,0,252,66,65,65,66,124,64,64,64, + 64,224,10,14,28,12,1,253,28,0,99,0,65,0,128,128, + 128,128,128,128,128,128,128,128,65,0,99,0,60,0,12,0, + 6,0,1,192,10,11,22,11,0,0,252,0,66,0,65,0, + 65,0,66,0,124,0,72,0,68,0,66,0,65,0,225,192, + 8,11,11,9,0,0,58,70,130,128,96,28,2,1,129,194, + 188,9,11,22,10,0,0,255,128,136,128,136,128,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,28,0,10,11,22, + 12,0,0,225,192,64,128,64,128,64,128,64,128,64,128,64, + 128,64,128,64,128,33,0,30,0,11,11,22,12,0,0,224, + 224,64,64,32,128,32,128,17,0,17,0,17,0,10,0,10, + 0,4,0,4,0,15,11,22,16,0,0,231,14,66,4,33, + 8,33,8,17,136,18,144,18,144,10,80,10,80,4,32,4, + 32,11,11,22,12,0,0,224,224,64,64,32,128,17,0,10, + 0,4,0,10,0,17,0,32,128,64,64,224,224,11,11,22, + 12,0,0,224,224,64,64,32,128,17,0,17,0,10,0,4, + 0,4,0,4,0,4,0,14,0,9,11,22,10,0,0,255, + 128,129,0,130,0,4,0,4,0,8,0,16,0,32,0,32, + 0,64,128,255,0,3,14,14,5,1,253,224,128,128,128,128, + 128,128,128,128,128,128,128,128,224,6,11,11,5,255,0,128, + 64,64,32,32,16,16,8,8,4,4,3,14,14,5,0,253, + 224,32,32,32,32,32,32,32,32,32,32,32,32,224,7,7, + 7,8,0,4,16,40,40,68,68,130,130,8,1,1,8,0, + 254,255,3,3,3,6,1,8,128,64,32,7,8,8,7,1, + 0,112,136,136,56,200,136,154,108,7,11,11,8,0,0,64, + 192,64,92,100,66,66,66,66,100,56,6,8,8,7,0,0, + 56,68,132,128,128,128,68,56,7,11,11,8,0,0,4,12, + 4,52,76,132,132,132,132,78,52,6,8,8,7,0,0,56, + 68,132,252,128,128,68,56,5,11,11,6,1,0,48,72,64, + 64,240,64,64,64,64,64,240,7,12,12,8,0,252,54,76, + 132,132,72,112,128,124,130,130,196,120,8,11,11,8,0,0, + 64,192,64,92,102,66,66,66,66,66,231,3,11,11,5,1, + 0,64,64,0,64,192,64,64,64,64,64,224,3,15,15,4, + 0,252,32,32,0,32,96,32,32,32,32,32,32,32,32,160, + 192,7,11,11,8,1,0,64,192,64,92,72,80,96,80,72, + 68,238,3,11,11,5,1,0,64,192,64,64,64,64,64,64, + 64,64,224,11,8,16,13,1,0,89,128,230,64,68,64,68, + 64,68,64,68,64,68,64,238,224,8,8,8,8,0,0,92, + 230,66,66,66,66,66,231,7,8,8,8,0,0,56,68,130, + 130,130,130,68,56,7,12,12,8,0,252,92,230,66,66,66, + 66,98,92,64,64,64,224,7,12,12,8,1,252,116,204,132, + 132,132,132,204,116,4,4,4,14,5,8,8,6,0,0,88, + 232,64,64,64,64,64,224,5,8,8,6,0,0,120,136,128, + 112,8,136,200,176,4,10,10,5,0,0,64,64,240,64,64, + 64,64,64,80,32,8,8,8,8,0,0,198,66,66,66,66, + 66,71,58,8,8,8,8,0,0,231,66,66,36,36,20,24, + 8,12,8,16,12,0,0,238,112,68,32,68,32,34,64,34, + 64,21,64,8,128,8,128,7,8,8,8,0,0,238,68,40, + 16,40,40,68,238,8,12,12,8,0,252,247,66,66,36,36, + 20,8,8,16,16,160,192,6,8,8,7,0,0,252,132,8, + 16,32,64,132,252,4,14,14,8,2,253,48,64,64,64,64, + 64,128,64,64,64,64,64,64,48,1,11,11,3,0,0,128, + 128,128,128,128,128,128,128,128,128,128,4,14,14,8,0,253, + 192,32,32,32,32,32,16,32,32,32,32,32,32,192,8,3, + 3,9,0,3,113,153,142,255}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--20-140-100-100-P-96-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w=18 h=18 x= 2 y=10 dx=18 dy= 0 ascent=18 len=39 + Font Bounding box w=22 h=29 x=-3 y=-7 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =18 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR14[4577] U8G_SECTION(".progmem.u8g_font_timR14") = { + 0,22,29,253,249,13,2,131,6,16,32,255,252,18,252,13, + 252,0,0,0,5,0,1,2,13,13,4,1,0,192,192,192, + 192,192,192,64,64,64,0,0,192,192,6,4,4,8,1,9, + 204,204,204,136,12,11,22,10,255,1,12,192,12,192,12,192, + 127,240,25,128,25,128,25,128,255,224,51,0,51,0,51,0, + 7,16,16,9,1,254,16,124,214,210,208,240,120,60,28,22, + 22,150,214,124,16,16,13,13,26,15,1,0,56,48,111,224, + 196,64,196,128,205,128,251,0,114,112,6,216,13,136,9,136, + 25,152,49,240,32,224,12,13,26,14,1,0,28,0,50,0, + 50,0,50,0,52,0,25,224,56,192,109,128,207,0,199,0, + 199,128,237,240,120,224,2,4,4,4,1,9,192,192,192,128, + 5,17,17,7,1,252,24,48,96,96,64,192,192,192,192,192, + 192,192,64,96,96,48,24,5,17,17,7,1,252,192,96,48, + 48,16,24,24,24,24,24,24,24,16,48,48,96,192,7,7, + 7,9,1,6,16,214,84,56,214,146,16,8,8,8,10,1, + 1,24,24,24,255,255,24,24,24,3,5,5,4,0,253,96, + 96,32,96,192,5,2,2,6,0,3,248,248,2,2,2,4, + 1,0,192,192,7,17,17,5,255,252,2,2,6,4,12,12, + 8,24,24,16,48,48,32,96,96,64,192,8,13,13,9,1, + 0,60,102,102,195,195,195,195,195,195,195,102,102,60,6,13, + 13,9,2,0,48,112,240,48,48,48,48,48,48,48,48,120, + 252,7,13,13,9,1,0,60,126,206,134,6,6,12,12,24, + 48,98,254,254,7,13,13,9,1,0,124,206,134,6,12,56, + 60,14,6,6,6,204,248,8,13,13,9,0,0,2,6,14, + 14,22,38,70,70,255,255,6,6,6,7,13,13,9,1,0, + 126,124,192,192,240,60,12,14,6,6,12,220,240,8,13,13, + 9,1,0,7,28,48,96,96,252,198,195,195,195,227,118,60, + 8,13,13,9,1,0,127,255,130,6,4,12,12,8,24,24, + 16,48,48,8,13,13,9,1,0,60,102,194,230,124,56,60, + 110,199,195,195,102,60,8,13,13,9,1,0,60,110,198,195, + 195,195,227,127,54,6,12,56,224,2,9,9,5,1,0,192, + 192,0,0,0,0,0,192,192,3,12,12,5,0,253,96,96, + 0,0,0,0,0,96,96,32,96,192,9,9,18,11,1,0, + 1,128,7,0,28,0,112,0,192,0,112,0,28,0,7,0, + 1,128,9,5,10,11,1,2,255,128,255,128,0,0,255,128, + 255,128,9,9,18,11,1,0,192,0,112,0,28,0,7,0, + 1,128,7,0,28,0,112,0,192,0,6,13,13,8,1,0, + 120,140,196,204,12,24,24,48,32,32,0,48,48,14,16,32, + 17,1,253,7,224,14,48,56,24,48,8,99,236,103,228,198, + 100,204,100,204,204,204,200,205,216,103,112,96,0,48,0,28, + 48,7,224,13,13,26,14,1,0,2,0,7,0,7,0,5, + 0,13,128,9,128,25,192,16,192,31,192,48,224,32,96,96, + 112,240,248,10,13,26,13,2,0,255,0,99,128,97,128,97, + 128,97,128,99,0,127,128,97,192,96,192,96,192,96,192,97, + 128,255,0,11,13,26,13,1,0,15,32,48,224,96,96,96, + 32,192,0,192,0,192,0,192,0,192,0,96,0,96,96,56, + 192,15,0,11,13,26,14,2,0,255,0,99,128,96,192,96, + 192,96,96,96,96,96,96,96,96,96,96,96,192,96,192,99, + 128,255,0,9,13,26,12,1,0,255,128,97,128,96,128,96, + 0,96,0,97,0,127,0,97,0,96,0,96,0,96,128,97, + 128,255,128,9,13,26,11,1,0,255,128,97,128,96,128,96, + 0,96,0,97,0,127,0,97,0,96,0,96,0,96,0,96, + 0,240,0,12,13,26,14,1,0,15,32,48,224,96,96,96, + 32,192,0,192,0,192,240,192,96,192,96,96,96,96,96,57, + 192,15,0,12,13,26,14,1,0,240,240,96,96,96,96,96, + 96,96,96,96,96,127,224,96,96,96,96,96,96,96,96,96, + 96,240,240,4,13,13,6,1,0,240,96,96,96,96,96,96, + 96,96,96,96,96,240,6,13,13,7,0,0,60,24,24,24, + 24,24,24,24,24,24,24,216,240,12,13,26,14,1,0,243, + 224,97,128,99,0,102,0,108,0,120,0,120,0,124,0,110, + 0,103,0,99,128,97,192,240,240,10,13,26,12,1,0,240, + 0,96,0,96,0,96,0,96,0,96,0,96,0,96,0,96, + 0,96,0,96,64,96,192,255,192,14,13,26,17,1,0,224, + 28,112,56,112,56,120,120,88,88,88,216,92,216,76,152,77, + 152,71,24,71,24,66,24,226,60,12,13,26,14,1,0,224, + 112,96,32,112,32,120,32,92,32,76,32,78,32,71,32,67, + 160,65,224,64,224,64,96,224,32,12,13,26,14,1,0,15, + 0,48,192,96,96,96,96,192,48,192,48,192,48,192,48,192, + 48,96,96,96,96,48,192,15,0,9,13,26,11,1,0,255, + 0,99,128,97,128,97,128,97,128,99,0,126,0,96,0,96, + 0,96,0,96,0,96,0,240,0,12,17,34,14,1,252,15, + 0,48,192,96,96,96,96,192,48,192,48,192,48,192,48,192, + 48,96,96,96,96,48,192,15,0,6,0,3,0,1,192,0, + 240,11,13,26,13,1,0,255,0,99,128,97,128,97,128,97, + 128,99,0,126,0,110,0,102,0,99,0,97,128,96,192,240, + 224,8,13,13,11,2,0,58,70,194,192,224,120,60,14,7, + 3,131,198,184,10,13,26,12,1,0,255,192,204,192,140,64, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,30,0,11,13,26,14,2,0,240,224,96,64,96,64, + 96,64,96,64,96,64,96,64,96,64,96,64,96,64,112,192, + 57,128,31,0,13,13,26,14,0,0,248,120,112,48,48,32, + 56,32,24,96,24,64,28,64,12,192,14,128,6,128,7,128, + 3,0,3,0,18,13,39,18,0,0,249,227,192,112,193,128, + 48,193,0,56,225,0,24,99,0,24,226,0,24,226,0,29, + 166,0,13,52,0,15,60,0,14,56,0,6,24,0,6,24, + 0,12,13,26,14,1,0,240,112,112,96,56,192,25,128,13, + 0,14,0,6,0,15,0,27,0,17,128,49,192,96,224,240, + 240,12,13,26,14,1,0,240,240,112,96,48,192,24,128,25, + 0,15,0,6,0,6,0,6,0,6,0,6,0,6,0,15, + 0,10,13,26,12,1,0,127,192,97,192,65,128,3,128,7, + 0,6,0,14,0,28,0,56,0,48,0,112,64,224,192,255, + 192,4,16,16,6,2,253,240,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,240,5,13,13,5,0,0,128,128,192, + 64,96,96,32,48,48,16,24,8,8,4,16,16,6,0,253, + 240,48,48,48,48,48,48,48,48,48,48,48,48,48,48,240, + 7,7,7,9,1,6,16,56,40,108,68,198,130,9,2,4, + 9,0,252,255,128,255,128,4,3,3,4,0,10,192,96,16, + 7,9,9,9,1,0,120,200,204,28,108,204,204,252,102,8, + 13,13,9,0,0,96,224,96,96,110,119,99,99,99,99,99, + 102,92,7,9,9,8,0,0,60,102,192,192,192,192,192,102, + 60,8,13,13,9,0,0,6,14,6,6,62,102,198,198,198, + 198,198,102,63,7,9,9,8,0,0,60,102,194,254,192,192, + 192,102,60,6,13,13,6,0,0,28,52,32,96,248,96,96, + 96,96,96,96,96,240,8,13,13,9,0,252,62,204,196,196, + 204,120,64,124,127,131,193,226,124,9,13,26,10,0,0,96, + 0,224,0,96,0,96,0,102,0,111,0,115,0,99,0,99, + 0,99,0,99,0,99,0,243,128,4,13,13,5,0,0,96, + 96,0,0,96,224,96,96,96,96,96,96,240,4,17,17,5, + 255,252,48,48,0,0,48,112,48,48,48,48,48,48,48,48, + 48,224,192,10,13,26,9,0,0,96,0,224,0,96,0,96, + 0,103,0,98,0,100,0,104,0,120,0,108,0,110,0,103, + 0,227,192,4,13,13,5,0,0,96,224,96,96,96,96,96, + 96,96,96,96,96,240,14,9,18,15,0,0,102,48,239,120, + 115,152,99,24,99,24,99,24,99,24,99,24,247,188,9,9, + 18,10,0,0,102,0,239,0,115,0,99,0,99,0,99,0, + 99,0,99,0,243,128,8,9,9,9,0,0,60,102,195,195, + 195,195,195,102,60,8,13,13,9,0,252,110,247,99,99,99, + 99,99,118,124,96,96,96,240,8,13,13,9,0,252,62,102, + 198,198,198,198,198,102,62,6,6,6,15,6,9,9,7,0, + 0,108,236,112,96,96,96,96,96,240,5,9,9,7,1,0, + 104,152,200,224,112,56,152,200,176,6,11,11,6,0,0,32, + 96,248,96,96,96,96,96,96,116,56,9,9,18,10,0,0, + 231,0,99,0,99,0,99,0,99,0,99,0,99,0,119,0, + 59,128,9,9,18,9,255,0,243,128,99,0,98,0,50,0, + 54,0,20,0,28,0,8,0,8,0,13,9,18,14,0,0, + 231,56,102,48,98,96,54,96,55,96,29,64,29,192,8,128, + 8,128,9,9,18,9,0,0,225,128,99,0,54,0,28,0, + 28,0,28,0,54,0,99,0,195,128,8,13,13,9,0,252, + 243,99,114,50,54,28,28,12,8,24,16,240,224,7,9,9, + 8,0,0,254,206,140,24,48,48,98,230,254,7,17,17,9, + 1,252,14,24,48,48,48,48,48,96,192,96,48,48,48,48, + 48,24,14,1,13,13,3,1,0,128,128,128,128,128,128,128, + 128,128,128,128,128,128,7,17,17,9,1,252,224,48,24,24, + 24,24,24,12,6,12,24,24,24,24,24,48,224,9,4,8, + 11,1,3,48,0,121,128,207,0,6,0,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,5, + 0,1,2,13,13,4,1,252,192,192,0,0,128,128,128,192, + 192,192,192,192,192,7,14,14,9,1,253,6,4,60,110,200, + 216,208,208,240,114,124,64,192,128,10,13,26,11,0,0,15, + 0,25,128,25,128,24,0,24,0,24,0,126,0,24,0,24, + 0,16,0,120,64,191,192,231,128,9,7,14,11,1,3,221, + 128,247,128,99,0,65,0,99,0,247,128,221,128,8,13,13, + 9,0,0,247,98,98,118,52,52,126,24,126,24,24,24,126, + 1,13,13,3,1,0,128,128,128,128,128,0,0,0,128,128, + 128,128,128,8,16,16,10,1,253,60,102,102,112,56,124,142, + 199,227,113,62,28,14,102,102,60,5,2,2,5,0,10,216, + 216,13,13,26,15,1,0,15,128,48,96,64,16,71,144,136, + 136,144,8,144,8,144,8,136,136,71,16,64,16,48,96,15, + 128,5,8,8,5,0,5,96,144,16,112,144,232,0,248,8, + 7,7,10,1,1,17,51,102,204,102,51,17,9,5,10,11, + 1,2,255,128,255,128,1,128,1,128,1,128,5,2,2,6, + 0,3,248,248,13,13,26,15,1,0,15,128,48,96,64,16, + 95,16,136,136,136,136,143,8,137,8,136,136,92,208,64,16, + 48,96,15,128,5,2,2,5,0,10,248,248,5,5,5,7, + 1,8,112,136,136,136,112,8,11,11,10,1,0,24,24,24, + 255,255,24,24,24,0,255,255,5,8,8,6,0,5,112,152, + 24,16,32,32,64,248,5,8,8,6,0,5,112,136,24,112, + 24,8,136,112,4,3,3,4,0,10,48,96,128,9,13,26, + 9,255,252,231,0,99,0,99,0,99,0,99,0,99,0,99, + 0,119,0,123,128,64,0,64,0,96,0,96,0,7,17,17, + 8,1,252,62,116,244,244,244,244,244,116,20,20,20,20,20, + 20,20,20,20,2,2,2,4,1,4,192,192,4,5,5,6, + 1,252,32,32,16,176,112,3,8,8,6,1,5,64,192,64, + 64,64,64,64,224,5,8,8,6,0,5,112,216,136,136,216, + 112,0,248,8,7,7,10,1,1,136,204,102,51,102,204,136, + 11,13,26,13,1,0,64,128,193,128,65,0,67,0,70,0, + 68,64,76,192,233,64,27,64,50,64,39,224,96,64,64,64, + 11,13,26,13,1,0,64,128,193,128,65,0,67,0,70,0, + 69,192,78,96,232,96,24,64,48,128,32,128,97,0,67,224, + 13,13,26,13,255,0,112,32,136,96,24,64,112,192,25,128, + 9,16,139,48,114,80,6,208,12,144,9,248,24,16,16,16, + 6,13,13,8,1,252,48,48,0,16,16,48,96,96,192,204, + 140,196,120,13,17,34,14,1,0,24,0,12,0,2,0,0, + 0,2,0,7,0,7,0,5,0,13,128,9,128,25,192,16, + 192,31,192,48,224,32,96,96,112,240,248,13,17,34,14,1, + 0,0,192,1,128,2,0,0,0,2,0,7,0,7,0,5, + 0,13,128,9,128,25,192,16,192,31,192,48,224,32,96,96, + 112,240,248,13,17,34,14,1,0,2,0,7,0,13,128,0, + 0,2,0,7,0,7,0,5,0,13,128,9,128,25,192,16, + 192,31,192,48,224,32,96,96,112,240,248,13,17,34,14,1, + 0,12,128,31,128,19,0,0,0,2,0,7,0,7,0,5, + 0,13,128,9,128,25,192,16,192,31,192,48,224,32,96,96, + 112,240,248,13,16,32,14,1,0,13,128,13,128,0,0,2, + 0,7,0,7,0,5,0,13,128,9,128,25,192,16,192,31, + 192,48,224,32,96,96,112,240,248,13,18,36,14,1,0,6, + 0,9,0,9,0,6,0,0,0,2,0,7,0,7,0,5, + 0,13,128,9,128,25,192,16,192,31,192,48,224,32,96,96, + 112,240,248,15,13,26,17,1,0,15,252,7,140,5,132,5, + 128,13,128,9,136,25,248,31,136,17,128,49,128,33,130,97, + 134,247,254,11,17,34,13,1,252,15,32,48,224,96,96,96, + 32,192,0,192,0,192,0,192,0,192,0,96,0,96,96,56, + 192,15,0,4,0,2,0,22,0,14,0,9,17,34,12,1, + 0,48,0,24,0,4,0,0,0,255,128,97,128,96,128,96, + 0,96,0,97,0,127,0,97,0,96,0,96,0,96,128,97, + 128,255,128,9,17,34,12,1,0,3,0,6,0,8,0,0, + 0,255,128,97,128,96,128,96,0,96,0,97,0,127,0,97, + 0,96,0,96,0,96,128,97,128,255,128,9,17,34,12,1, + 0,8,0,28,0,54,0,0,0,255,128,97,128,96,128,96, + 0,96,0,97,0,127,0,97,0,96,0,96,0,96,128,97, + 128,255,128,9,16,32,12,1,0,54,0,54,0,0,0,255, + 128,97,128,96,128,96,0,96,0,97,0,127,0,97,0,96, + 0,96,0,96,128,97,128,255,128,6,17,17,6,255,0,192, + 96,16,0,60,24,24,24,24,24,24,24,24,24,24,24,60, + 6,17,17,6,1,0,12,24,32,0,240,96,96,96,96,96, + 96,96,96,96,96,96,240,5,17,17,6,1,0,32,112,216, + 0,240,96,96,96,96,96,96,96,96,96,96,96,240,5,16, + 16,6,1,0,216,216,0,240,96,96,96,96,96,96,96,96, + 96,96,96,240,12,13,26,13,0,0,127,128,49,192,48,96, + 48,96,48,48,48,48,252,48,48,48,48,48,48,96,48,96, + 49,192,127,128,12,17,34,14,1,0,12,128,31,128,19,0, + 0,0,224,112,96,32,112,32,120,32,92,32,76,32,78,32, + 71,32,67,160,65,224,64,224,64,96,224,32,12,17,34,14, + 1,0,48,0,24,0,4,0,0,0,15,0,48,192,96,96, + 96,96,192,48,192,48,192,48,192,48,192,48,96,96,96,96, + 48,192,15,0,12,17,34,14,1,0,0,192,1,128,2,0, + 0,0,15,0,48,192,96,96,96,96,192,48,192,48,192,48, + 192,48,192,48,96,96,96,96,48,192,15,0,12,17,34,14, + 1,0,4,0,14,0,27,0,0,0,15,0,48,192,96,96, + 96,96,192,48,192,48,192,48,192,48,192,48,96,96,96,96, + 48,192,15,0,12,17,34,14,1,0,12,128,31,128,19,0, + 0,0,15,0,48,192,96,96,96,96,192,48,192,48,192,48, + 192,48,192,48,96,96,96,96,48,192,15,0,12,16,32,14, + 1,0,27,0,27,0,0,0,15,0,48,192,96,96,96,96, + 192,48,192,48,192,48,192,48,192,48,96,96,96,96,48,192, + 15,0,8,7,7,10,1,1,195,102,60,24,60,102,195,12, + 15,30,14,1,255,0,48,15,96,48,192,96,224,97,160,195, + 48,195,48,198,48,204,48,204,48,88,96,112,96,48,192,111, + 0,192,0,11,17,34,14,2,0,48,0,24,0,4,0,0, + 0,240,224,96,64,96,64,96,64,96,64,96,64,96,64,96, + 64,96,64,96,64,112,192,57,128,31,0,11,17,34,14,2, + 0,0,192,1,128,2,0,0,0,240,224,96,64,96,64,96, + 64,96,64,96,64,96,64,96,64,96,64,96,64,112,192,57, + 128,31,0,11,17,34,14,2,0,4,0,14,0,27,0,0, + 0,240,224,96,64,96,64,96,64,96,64,96,64,96,64,96, + 64,96,64,96,64,112,192,57,128,31,0,11,16,32,14,2, + 0,27,0,27,0,0,0,240,224,96,64,96,64,96,64,96, + 64,96,64,96,64,96,64,96,64,96,64,112,192,57,128,31, + 0,12,17,34,14,1,0,0,192,1,128,2,0,0,0,240, + 240,112,96,48,192,24,128,25,0,15,0,6,0,6,0,6, + 0,6,0,6,0,6,0,15,0,9,13,26,10,1,0,240, + 0,96,0,96,0,127,0,99,128,97,128,97,128,97,128,99, + 0,126,0,96,0,96,0,240,0,8,13,13,9,0,0,28, + 50,99,99,102,110,124,102,99,99,107,111,238,7,13,13,9, + 1,0,192,96,16,0,120,200,204,28,108,204,204,252,102,7, + 13,13,9,1,0,12,24,32,0,120,200,204,28,108,204,204, + 252,102,7,13,13,9,1,0,16,56,108,0,120,200,204,28, + 108,204,204,252,102,7,13,13,9,1,0,100,252,152,0,120, + 200,204,28,108,204,204,252,102,7,12,12,9,1,0,108,108, + 0,120,200,204,28,108,204,204,252,102,7,14,14,9,1,0, + 48,72,72,48,0,120,200,204,28,108,204,204,252,102,11,9, + 18,12,0,0,123,192,206,96,204,32,31,224,108,0,204,0, + 204,0,254,96,99,192,7,13,13,8,0,252,60,102,192,192, + 192,192,192,102,60,16,8,88,56,7,13,13,8,0,0,192, + 96,16,0,60,102,194,254,192,192,192,102,60,7,13,13,8, + 0,0,6,12,16,0,60,102,194,254,192,192,192,102,60,7, + 13,13,8,0,0,16,56,108,0,60,102,194,254,192,192,192, + 102,60,7,12,12,8,0,0,108,108,0,60,102,194,254,192, + 192,192,102,60,6,13,13,5,254,0,192,96,16,0,24,56, + 24,24,24,24,24,24,60,6,13,13,5,0,0,12,24,32, + 0,96,224,96,96,96,96,96,96,240,5,13,13,5,0,0, + 32,112,216,0,96,224,96,96,96,96,96,96,240,5,12,12, + 5,0,0,216,216,0,96,224,96,96,96,96,96,96,240,8, + 13,13,9,0,0,96,54,56,76,62,102,195,195,195,195,195, + 102,60,9,13,26,10,0,0,50,0,126,0,76,0,0,0, + 102,0,239,0,115,0,99,0,99,0,99,0,99,0,99,0, + 243,128,8,13,13,9,0,0,48,24,4,0,60,102,195,195, + 195,195,195,102,60,8,13,13,9,0,0,6,12,16,0,60, + 102,195,195,195,195,195,102,60,8,13,13,9,0,0,16,56, + 108,0,60,102,195,195,195,195,195,102,60,8,13,13,9,0, + 0,50,126,76,0,60,102,195,195,195,195,195,102,60,8,12, + 12,9,0,0,108,108,0,60,102,195,195,195,195,195,102,60, + 8,8,8,10,1,1,24,24,0,255,255,0,24,24,8,11, + 11,9,0,255,1,63,102,207,203,219,211,243,102,124,192,9, + 13,26,10,0,0,96,0,48,0,8,0,0,0,231,0,99, + 0,99,0,99,0,99,0,99,0,99,0,119,0,59,128,9, + 13,26,10,0,0,6,0,12,0,16,0,0,0,231,0,99, + 0,99,0,99,0,99,0,99,0,99,0,119,0,59,128,9, + 13,26,10,0,0,8,0,28,0,54,0,0,0,231,0,99, + 0,99,0,99,0,99,0,99,0,99,0,119,0,59,128,9, + 12,24,10,0,0,54,0,54,0,0,0,231,0,99,0,99, + 0,99,0,99,0,99,0,99,0,119,0,59,128,8,17,17, + 8,255,252,3,6,8,0,243,99,114,50,54,28,28,12,8, + 24,16,240,224,8,17,17,9,0,252,96,224,96,96,110,119, + 99,99,99,99,99,118,124,96,96,96,240,8,16,16,9,0, + 252,54,54,0,243,99,114,50,54,28,28,12,8,24,16,240, + 224}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--20-140-100-100-P-96-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w=18 h=17 x= 2 y=10 dx=18 dy= 0 ascent=14 len=39 + Font Bounding box w=22 h=29 x=-3 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =14 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR14r[2156] U8G_SECTION(".progmem.u8g_font_timR14r") = { + 0,22,29,253,249,13,2,131,6,16,32,127,252,14,252,13, + 252,0,0,0,5,0,1,2,13,13,4,1,0,192,192,192, + 192,192,192,64,64,64,0,0,192,192,6,4,4,8,1,9, + 204,204,204,136,12,11,22,10,255,1,12,192,12,192,12,192, + 127,240,25,128,25,128,25,128,255,224,51,0,51,0,51,0, + 7,16,16,9,1,254,16,124,214,210,208,240,120,60,28,22, + 22,150,214,124,16,16,13,13,26,15,1,0,56,48,111,224, + 196,64,196,128,205,128,251,0,114,112,6,216,13,136,9,136, + 25,152,49,240,32,224,12,13,26,14,1,0,28,0,50,0, + 50,0,50,0,52,0,25,224,56,192,109,128,207,0,199,0, + 199,128,237,240,120,224,2,4,4,4,1,9,192,192,192,128, + 5,17,17,7,1,252,24,48,96,96,64,192,192,192,192,192, + 192,192,64,96,96,48,24,5,17,17,7,1,252,192,96,48, + 48,16,24,24,24,24,24,24,24,16,48,48,96,192,7,7, + 7,9,1,6,16,214,84,56,214,146,16,8,8,8,10,1, + 1,24,24,24,255,255,24,24,24,3,5,5,4,0,253,96, + 96,32,96,192,5,2,2,6,0,3,248,248,2,2,2,4, + 1,0,192,192,7,17,17,5,255,252,2,2,6,4,12,12, + 8,24,24,16,48,48,32,96,96,64,192,8,13,13,9,1, + 0,60,102,102,195,195,195,195,195,195,195,102,102,60,6,13, + 13,9,2,0,48,112,240,48,48,48,48,48,48,48,48,120, + 252,7,13,13,9,1,0,60,126,206,134,6,6,12,12,24, + 48,98,254,254,7,13,13,9,1,0,124,206,134,6,12,56, + 60,14,6,6,6,204,248,8,13,13,9,0,0,2,6,14, + 14,22,38,70,70,255,255,6,6,6,7,13,13,9,1,0, + 126,124,192,192,240,60,12,14,6,6,12,220,240,8,13,13, + 9,1,0,7,28,48,96,96,252,198,195,195,195,227,118,60, + 8,13,13,9,1,0,127,255,130,6,4,12,12,8,24,24, + 16,48,48,8,13,13,9,1,0,60,102,194,230,124,56,60, + 110,199,195,195,102,60,8,13,13,9,1,0,60,110,198,195, + 195,195,227,127,54,6,12,56,224,2,9,9,5,1,0,192, + 192,0,0,0,0,0,192,192,3,12,12,5,0,253,96,96, + 0,0,0,0,0,96,96,32,96,192,9,9,18,11,1,0, + 1,128,7,0,28,0,112,0,192,0,112,0,28,0,7,0, + 1,128,9,5,10,11,1,2,255,128,255,128,0,0,255,128, + 255,128,9,9,18,11,1,0,192,0,112,0,28,0,7,0, + 1,128,7,0,28,0,112,0,192,0,6,13,13,8,1,0, + 120,140,196,204,12,24,24,48,32,32,0,48,48,14,16,32, + 17,1,253,7,224,14,48,56,24,48,8,99,236,103,228,198, + 100,204,100,204,204,204,200,205,216,103,112,96,0,48,0,28, + 48,7,224,13,13,26,14,1,0,2,0,7,0,7,0,5, + 0,13,128,9,128,25,192,16,192,31,192,48,224,32,96,96, + 112,240,248,10,13,26,13,2,0,255,0,99,128,97,128,97, + 128,97,128,99,0,127,128,97,192,96,192,96,192,96,192,97, + 128,255,0,11,13,26,13,1,0,15,32,48,224,96,96,96, + 32,192,0,192,0,192,0,192,0,192,0,96,0,96,96,56, + 192,15,0,11,13,26,14,2,0,255,0,99,128,96,192,96, + 192,96,96,96,96,96,96,96,96,96,96,96,192,96,192,99, + 128,255,0,9,13,26,12,1,0,255,128,97,128,96,128,96, + 0,96,0,97,0,127,0,97,0,96,0,96,0,96,128,97, + 128,255,128,9,13,26,11,1,0,255,128,97,128,96,128,96, + 0,96,0,97,0,127,0,97,0,96,0,96,0,96,0,96, + 0,240,0,12,13,26,14,1,0,15,32,48,224,96,96,96, + 32,192,0,192,0,192,240,192,96,192,96,96,96,96,96,57, + 192,15,0,12,13,26,14,1,0,240,240,96,96,96,96,96, + 96,96,96,96,96,127,224,96,96,96,96,96,96,96,96,96, + 96,240,240,4,13,13,6,1,0,240,96,96,96,96,96,96, + 96,96,96,96,96,240,6,13,13,7,0,0,60,24,24,24, + 24,24,24,24,24,24,24,216,240,12,13,26,14,1,0,243, + 224,97,128,99,0,102,0,108,0,120,0,120,0,124,0,110, + 0,103,0,99,128,97,192,240,240,10,13,26,12,1,0,240, + 0,96,0,96,0,96,0,96,0,96,0,96,0,96,0,96, + 0,96,0,96,64,96,192,255,192,14,13,26,17,1,0,224, + 28,112,56,112,56,120,120,88,88,88,216,92,216,76,152,77, + 152,71,24,71,24,66,24,226,60,12,13,26,14,1,0,224, + 112,96,32,112,32,120,32,92,32,76,32,78,32,71,32,67, + 160,65,224,64,224,64,96,224,32,12,13,26,14,1,0,15, + 0,48,192,96,96,96,96,192,48,192,48,192,48,192,48,192, + 48,96,96,96,96,48,192,15,0,9,13,26,11,1,0,255, + 0,99,128,97,128,97,128,97,128,99,0,126,0,96,0,96, + 0,96,0,96,0,96,0,240,0,12,17,34,14,1,252,15, + 0,48,192,96,96,96,96,192,48,192,48,192,48,192,48,192, + 48,96,96,96,96,48,192,15,0,6,0,3,0,1,192,0, + 240,11,13,26,13,1,0,255,0,99,128,97,128,97,128,97, + 128,99,0,126,0,110,0,102,0,99,0,97,128,96,192,240, + 224,8,13,13,11,2,0,58,70,194,192,224,120,60,14,7, + 3,131,198,184,10,13,26,12,1,0,255,192,204,192,140,64, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,30,0,11,13,26,14,2,0,240,224,96,64,96,64, + 96,64,96,64,96,64,96,64,96,64,96,64,96,64,112,192, + 57,128,31,0,13,13,26,14,0,0,248,120,112,48,48,32, + 56,32,24,96,24,64,28,64,12,192,14,128,6,128,7,128, + 3,0,3,0,18,13,39,18,0,0,249,227,192,112,193,128, + 48,193,0,56,225,0,24,99,0,24,226,0,24,226,0,29, + 166,0,13,52,0,15,60,0,14,56,0,6,24,0,6,24, + 0,12,13,26,14,1,0,240,112,112,96,56,192,25,128,13, + 0,14,0,6,0,15,0,27,0,17,128,49,192,96,224,240, + 240,12,13,26,14,1,0,240,240,112,96,48,192,24,128,25, + 0,15,0,6,0,6,0,6,0,6,0,6,0,6,0,15, + 0,10,13,26,12,1,0,127,192,97,192,65,128,3,128,7, + 0,6,0,14,0,28,0,56,0,48,0,112,64,224,192,255, + 192,4,16,16,6,2,253,240,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,240,5,13,13,5,0,0,128,128,192, + 64,96,96,32,48,48,16,24,8,8,4,16,16,6,0,253, + 240,48,48,48,48,48,48,48,48,48,48,48,48,48,48,240, + 7,7,7,9,1,6,16,56,40,108,68,198,130,9,2,4, + 9,0,252,255,128,255,128,4,3,3,4,0,10,192,96,16, + 7,9,9,9,1,0,120,200,204,28,108,204,204,252,102,8, + 13,13,9,0,0,96,224,96,96,110,119,99,99,99,99,99, + 102,92,7,9,9,8,0,0,60,102,192,192,192,192,192,102, + 60,8,13,13,9,0,0,6,14,6,6,62,102,198,198,198, + 198,198,102,63,7,9,9,8,0,0,60,102,194,254,192,192, + 192,102,60,6,13,13,6,0,0,28,52,32,96,248,96,96, + 96,96,96,96,96,240,8,13,13,9,0,252,62,204,196,196, + 204,120,64,124,127,131,193,226,124,9,13,26,10,0,0,96, + 0,224,0,96,0,96,0,102,0,111,0,115,0,99,0,99, + 0,99,0,99,0,99,0,243,128,4,13,13,5,0,0,96, + 96,0,0,96,224,96,96,96,96,96,96,240,4,17,17,5, + 255,252,48,48,0,0,48,112,48,48,48,48,48,48,48,48, + 48,224,192,10,13,26,9,0,0,96,0,224,0,96,0,96, + 0,103,0,98,0,100,0,104,0,120,0,108,0,110,0,103, + 0,227,192,4,13,13,5,0,0,96,224,96,96,96,96,96, + 96,96,96,96,96,240,14,9,18,15,0,0,102,48,239,120, + 115,152,99,24,99,24,99,24,99,24,99,24,247,188,9,9, + 18,10,0,0,102,0,239,0,115,0,99,0,99,0,99,0, + 99,0,99,0,243,128,8,9,9,9,0,0,60,102,195,195, + 195,195,195,102,60,8,13,13,9,0,252,110,247,99,99,99, + 99,99,118,124,96,96,96,240,8,13,13,9,0,252,62,102, + 198,198,198,198,198,102,62,6,6,6,15,6,9,9,7,0, + 0,108,236,112,96,96,96,96,96,240,5,9,9,7,1,0, + 104,152,200,224,112,56,152,200,176,6,11,11,6,0,0,32, + 96,248,96,96,96,96,96,96,116,56,9,9,18,10,0,0, + 231,0,99,0,99,0,99,0,99,0,99,0,99,0,119,0, + 59,128,9,9,18,9,255,0,243,128,99,0,98,0,50,0, + 54,0,20,0,28,0,8,0,8,0,13,9,18,14,0,0, + 231,56,102,48,98,96,54,96,55,96,29,64,29,192,8,128, + 8,128,9,9,18,9,0,0,225,128,99,0,54,0,28,0, + 28,0,28,0,54,0,99,0,195,128,8,13,13,9,0,252, + 243,99,114,50,54,28,28,12,8,24,16,240,224,7,9,9, + 8,0,0,254,206,140,24,48,48,98,230,254,7,17,17,9, + 1,252,14,24,48,48,48,48,48,96,192,96,48,48,48,48, + 48,24,14,1,13,13,3,1,0,128,128,128,128,128,128,128, + 128,128,128,128,128,128,7,17,17,9,1,252,224,48,24,24, + 24,24,24,12,6,12,24,24,24,24,24,48,224,9,4,8, + 11,1,3,48,0,121,128,207,0,6,0,255}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--25-180-100-100-P-125-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=23 h=23 x= 3 y=14 dx=23 dy= 0 ascent=23 len=69 + Font Bounding box w=29 h=37 x=-4 y=-9 + Calculated Min Values x=-2 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-6 + X Font ascent =17 descent=-6 + Max Font ascent =23 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR18[6850] U8G_SECTION(".progmem.u8g_font_timR18") = { + 0,29,37,252,247,17,4,9,8,241,32,255,250,23,250,17, + 250,0,0,0,6,0,1,3,17,17,8,3,0,64,224,224, + 224,224,224,224,224,64,64,64,64,0,0,0,192,192,6,5, + 5,10,1,12,204,204,204,204,136,11,17,34,13,1,0,8, + 128,8,128,8,128,8,128,8,128,127,224,127,224,17,0,17, + 0,17,0,255,192,255,192,34,0,34,0,34,0,34,0,34, + 0,11,21,42,12,0,254,4,0,4,0,63,0,101,192,196, + 192,196,64,196,64,228,0,124,0,30,0,7,128,5,192,4, + 224,4,96,132,96,132,96,196,192,229,192,63,0,4,0,4, + 0,17,16,48,19,1,0,30,12,0,51,252,0,97,24,0, + 193,16,0,193,48,0,194,96,0,228,64,0,120,192,0,1, + 143,0,1,25,128,3,48,128,6,96,128,4,96,128,12,97, + 0,24,114,0,16,60,0,17,17,51,19,1,0,7,192,0, + 8,96,0,24,32,0,24,32,0,24,96,0,12,192,0,15, + 158,0,7,12,0,15,8,0,51,136,0,97,144,0,192,208, + 0,192,224,0,192,96,0,224,240,128,127,191,0,62,14,0, + 2,5,5,6,2,12,192,192,192,192,128,6,22,22,8,1, + 251,4,8,16,48,32,96,96,192,192,192,192,192,192,192,192, + 96,96,32,48,16,8,4,6,22,22,8,1,251,128,64,32, + 48,16,24,24,12,12,12,12,12,12,12,12,24,24,16,48, + 32,64,128,9,9,18,12,2,8,28,0,28,0,201,128,235, + 128,28,0,235,128,201,128,28,0,28,0,12,12,24,12,0, + 0,6,0,6,0,6,0,6,0,6,0,255,240,255,240,6, + 0,6,0,6,0,6,0,6,0,3,5,5,7,2,253,192, + 224,32,96,192,6,2,2,8,0,5,252,252,2,2,2,6, + 2,0,192,192,9,21,42,7,254,252,1,128,1,128,1,0, + 3,0,3,0,2,0,6,0,6,0,4,0,12,0,12,0, + 8,0,24,0,24,0,16,0,48,0,48,0,96,0,96,0, + 64,0,192,0,10,17,34,12,1,0,30,0,51,0,97,128, + 97,128,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,225,192,97,128,97,128,51,0,30,0,8,17,17,12, + 2,0,8,24,120,24,24,24,24,24,24,24,24,24,24,24, + 24,24,255,10,17,34,12,1,0,28,0,127,0,67,128,129, + 128,129,128,1,128,1,128,3,0,3,0,6,0,4,0,12, + 0,24,0,48,0,96,64,255,192,255,128,9,17,34,12,1, + 0,28,0,126,0,71,0,131,0,131,0,6,0,12,0,30, + 0,7,0,3,128,1,128,1,128,1,128,1,0,195,0,230, + 0,120,0,10,17,34,12,1,0,3,0,7,0,7,0,11, + 0,27,0,19,0,51,0,35,0,99,0,67,0,195,0,255, + 192,255,192,3,0,3,0,3,0,3,0,10,17,34,12,1, + 0,31,192,31,128,32,0,32,0,96,0,120,0,126,0,15, + 128,3,128,1,192,0,192,0,192,0,192,0,192,193,128,227, + 128,126,0,10,17,34,12,1,0,3,192,14,0,24,0,48, + 0,112,0,96,0,238,0,243,128,193,128,192,192,192,192,192, + 192,192,192,224,192,97,128,123,128,30,0,10,17,34,12,1, + 0,127,192,255,192,192,192,129,128,1,128,1,0,3,0,3, + 0,2,0,6,0,6,0,4,0,12,0,12,0,12,0,24, + 0,24,0,10,17,34,12,1,0,30,0,51,0,97,128,97, + 128,97,128,115,0,62,0,30,0,63,0,99,128,65,192,192, + 192,192,192,192,192,225,128,115,128,30,0,10,17,34,12,1, + 0,30,0,119,128,97,128,193,192,192,192,192,192,192,192,192, + 192,97,192,115,192,29,128,1,128,3,128,3,0,6,0,28, + 0,240,0,2,11,11,6,2,0,192,192,0,0,0,0,0, + 0,0,192,192,3,14,14,7,2,253,192,192,0,0,0,0, + 0,0,0,192,224,32,96,192,11,11,22,14,1,0,0,96, + 1,192,7,0,28,0,112,0,192,0,112,0,28,0,7,0, + 1,192,0,96,9,5,10,13,2,3,255,128,255,128,0,0, + 255,128,255,128,11,11,22,13,1,0,192,0,112,0,28,0, + 7,0,1,192,0,96,1,192,7,0,28,0,112,0,192,0, + 8,17,17,11,2,0,124,198,131,195,195,7,14,12,28,24, + 24,16,16,0,0,48,48,18,20,60,22,2,253,3,248,0, + 15,14,0,28,3,0,56,1,128,112,0,128,96,236,192,225, + 252,64,195,140,64,195,12,64,198,12,64,198,24,64,198,24, + 192,198,24,128,198,57,128,99,123,0,97,222,0,48,0,0, + 24,0,0,14,12,0,3,240,0,17,17,51,17,0,0,0, + 128,0,1,192,0,1,192,0,1,96,0,2,96,0,2,48, + 0,6,48,0,4,48,0,4,24,0,12,24,0,15,248,0, + 8,12,0,24,12,0,16,12,0,16,6,0,48,6,0,252, + 31,128,14,17,34,16,1,0,255,192,48,112,48,48,48,24, + 48,24,48,24,48,48,48,64,63,224,48,56,48,24,48,12, + 48,12,48,12,48,24,48,120,255,224,14,17,34,16,1,0, + 7,228,28,60,56,12,96,4,96,4,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,96,0,96,4,56,8,30,56, + 7,224,15,17,34,17,1,0,255,192,48,112,48,56,48,12, + 48,12,48,6,48,6,48,6,48,6,48,6,48,6,48,6, + 48,12,48,12,48,56,48,112,255,192,13,17,34,15,1,0, + 255,240,48,48,48,16,48,16,48,0,48,0,48,64,48,64, + 63,192,48,64,48,64,48,0,48,0,48,8,48,8,48,24, + 255,248,12,17,34,14,1,0,255,240,48,48,48,16,48,16, + 48,0,48,0,48,32,48,32,63,224,48,32,48,32,48,0, + 48,0,48,0,48,0,48,0,252,0,16,17,34,18,1,0, + 7,228,28,60,56,12,96,4,96,4,192,0,192,0,192,0, + 192,0,192,63,192,12,192,12,96,12,96,12,56,28,30,56, + 7,224,17,17,51,19,1,0,252,31,128,48,6,0,48,6, + 0,48,6,0,48,6,0,48,6,0,48,6,0,48,6,0, + 63,254,0,48,6,0,48,6,0,48,6,0,48,6,0,48, + 6,0,48,6,0,48,6,0,252,31,128,6,17,17,8,1, + 0,252,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,252,9,17,34,11,1,0,31,128,6,0,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,198,0,204,0,120,0,16,17,34,17,1,0, + 252,126,48,24,48,48,48,96,48,192,49,128,51,0,62,0, + 63,0,51,128,49,192,48,224,48,112,48,56,48,28,48,14, + 252,31,13,17,34,14,1,0,252,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,8,48,8,48,24,255,248,21,17,51,22,1,0, + 240,0,248,48,0,224,56,1,96,56,1,96,44,2,96,44, + 2,96,38,2,96,38,4,96,35,4,96,35,8,96,33,136, + 96,33,136,96,32,208,96,32,208,96,32,96,96,32,96,96, + 248,97,248,16,17,34,18,1,0,240,31,48,4,56,4,56, + 4,44,4,38,4,38,4,35,4,33,132,33,132,32,196,32, + 100,32,100,32,52,32,28,32,28,248,12,16,17,34,18,1, + 0,7,224,28,56,56,28,96,6,96,6,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,96,6,96,6,56,28,28, + 56,7,224,13,17,34,15,1,0,255,192,48,112,48,48,48, + 24,48,24,48,24,48,48,48,112,63,192,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,252,0,16,22,44,18,1, + 251,7,224,28,56,56,28,96,6,96,6,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,96,6,96,6,56,28,28, + 56,7,224,1,192,0,224,0,112,0,56,0,15,15,17,34, + 16,1,0,255,192,48,112,48,48,48,24,48,24,48,24,48, + 48,48,112,63,192,51,128,49,128,48,192,48,96,48,112,48, + 56,48,28,252,30,11,17,34,13,1,0,30,64,99,192,192, + 192,192,64,192,64,224,0,120,0,30,0,15,128,3,192,0, + 224,0,96,128,96,128,96,192,192,241,128,158,0,14,17,34, + 16,1,0,255,252,195,12,131,4,131,4,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,15,192,16,17,34,18,1,0,252,31,48,4,48, + 4,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,48,8,24,8,28,48,7,224,17,17,51, + 17,0,0,252,31,128,48,6,0,48,4,0,24,12,0,24, + 8,0,24,8,0,12,24,0,12,16,0,6,48,0,6,32, + 0,6,32,0,3,96,0,3,64,0,3,192,0,1,128,0, + 1,128,0,1,128,0,23,17,51,23,0,0,252,126,126,48, + 24,24,48,24,16,24,24,16,24,24,48,24,44,32,12,44, + 32,12,44,96,6,76,96,6,76,64,6,70,64,3,70,192, + 3,70,128,3,135,128,1,131,128,1,131,0,1,131,0,18, + 17,51,18,0,0,126,15,128,28,6,0,14,12,0,6,8, + 0,3,16,0,1,160,0,1,192,0,0,192,0,0,224,0, + 1,112,0,2,56,0,6,24,0,4,12,0,8,14,0,24, + 7,0,48,3,128,252,15,192,16,17,34,18,1,0,252,63, + 48,12,56,8,24,24,28,16,12,48,6,32,6,96,3,64, + 3,192,1,128,1,128,1,128,1,128,1,128,1,128,7,224, + 13,17,34,15,1,0,255,240,192,112,128,224,128,192,1,192, + 3,128,3,0,7,0,6,0,14,0,28,0,24,0,56,0, + 48,8,112,8,224,24,255,248,5,21,21,8,2,252,248,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,248,7,17,17,7,0,0,192,192,64,96,96,32,48, + 48,16,24,24,8,12,12,4,6,6,5,21,21,8,1,252, + 248,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,248,9,9,18,11,1,8,8,0,28,0,20, + 0,54,0,34,0,99,0,65,0,193,128,128,128,12,2,4, + 12,0,251,255,240,255,240,5,4,4,8,1,13,192,224,112, + 24,9,12,24,11,1,0,62,0,103,0,99,0,3,0,15, + 0,59,0,99,0,195,0,195,0,199,0,251,0,113,128,11, + 17,34,12,0,0,48,0,240,0,48,0,48,0,48,0,55, + 0,57,192,48,192,48,96,48,96,48,96,48,96,48,96,48, + 96,48,192,57,192,47,0,9,12,24,11,1,0,31,0,99, + 128,65,128,192,0,192,0,192,0,192,0,192,0,224,0,112, + 128,127,0,30,0,10,17,34,12,1,0,1,128,7,128,1, + 128,1,128,1,128,29,128,115,128,97,128,193,128,193,128,193, + 128,193,128,193,128,193,128,99,128,127,128,25,192,9,12,24, + 11,1,0,30,0,99,0,65,128,193,128,255,128,192,0,192, + 0,192,0,224,0,112,128,127,0,30,0,7,17,17,7,0, + 0,14,22,48,48,48,254,48,48,48,48,48,48,48,48,48, + 48,120,11,18,36,12,1,250,30,192,35,192,97,0,97,128, + 97,128,97,128,97,128,51,0,60,0,64,0,96,0,127,128, + 63,192,64,224,192,96,192,96,225,192,127,0,12,17,34,13, + 0,0,48,0,240,0,48,0,48,0,48,0,51,128,55,192, + 56,224,48,96,48,96,48,96,48,96,48,96,48,96,48,96, + 48,96,120,240,4,17,17,6,1,0,96,96,0,0,0,96, + 224,96,96,96,96,96,96,96,96,96,240,6,23,23,6,254, + 250,12,12,0,0,0,12,28,12,12,12,12,12,12,12,12, + 12,12,12,12,12,204,200,112,12,17,34,12,0,0,48,0, + 240,0,48,0,48,0,48,0,51,224,49,128,51,0,50,0, + 52,0,60,0,54,0,55,0,51,128,49,192,48,224,121,240, + 5,17,17,6,0,0,48,240,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,120,18,12,36,20,1,0,103,14,0, + 239,159,0,113,227,128,96,193,128,96,193,128,96,193,128,96, + 193,128,96,193,128,96,193,128,96,193,128,96,193,128,241,227, + 192,11,12,24,13,1,0,103,0,239,128,113,192,96,192,96, + 192,96,192,96,192,96,192,96,192,96,192,96,192,241,224,10, + 12,24,12,1,0,30,0,115,128,97,128,192,192,192,192,192, + 192,192,192,192,192,192,192,97,128,115,128,30,0,10,18,36, + 12,1,250,110,0,243,128,97,128,96,192,96,192,96,192,96, + 192,96,192,96,192,97,128,115,128,110,0,96,0,96,0,96, + 0,96,0,96,0,240,0,10,18,36,12,1,250,29,128,115, + 128,97,128,193,128,193,128,193,128,193,128,193,128,193,128,97, + 128,115,128,29,128,1,128,1,128,1,128,1,128,1,128,3, + 192,6,12,12,8,1,0,108,236,112,96,96,96,96,96,96, + 96,96,240,8,12,12,10,1,0,62,70,194,224,112,124,30, + 7,3,131,198,248,7,15,15,7,0,0,16,48,112,254,48, + 48,48,48,48,48,48,48,48,50,28,11,12,24,13,1,0, + 225,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,113,192,62,192,28,224,11,12,24,11,0,0,241,224, + 96,192,96,128,48,128,48,128,49,0,25,0,25,0,26,0, + 14,0,14,0,4,0,17,12,36,17,0,0,241,231,128,96, + 195,0,96,194,0,48,194,0,48,194,0,49,100,0,25,100, + 0,26,100,0,26,40,0,14,56,0,14,56,0,4,16,0, + 11,12,24,13,1,0,241,224,96,192,49,128,57,0,26,0, + 12,0,14,0,27,0,51,128,33,128,96,192,241,224,12,18, + 36,11,255,250,120,240,48,96,48,64,24,64,24,64,24,128, + 12,128,12,128,13,0,7,0,7,0,2,0,6,0,4,0, + 12,0,200,0,240,0,96,0,8,12,12,10,1,0,255,195, + 134,14,28,24,56,48,112,97,195,255,8,22,22,10,1,251, + 7,12,24,24,24,24,24,16,48,32,192,32,48,16,24,24, + 24,24,24,24,12,7,2,17,17,5,1,0,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,8,22,22, + 10,1,251,224,48,24,24,24,24,24,8,12,4,3,4,12, + 8,24,24,24,24,24,24,48,224,11,4,8,13,1,4,56, + 32,124,96,199,192,131,128,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,6,0,1,3,17, + 17,8,3,251,96,96,0,0,0,64,64,64,64,224,224,224, + 224,224,224,224,64,9,16,32,12,1,254,2,0,2,0,15, + 0,51,128,101,128,196,0,196,0,200,0,200,0,200,0,208, + 0,112,128,113,0,62,0,64,0,64,0,10,17,34,12,1, + 0,15,0,25,128,49,128,48,0,48,0,48,0,48,0,252, + 0,48,0,48,0,48,0,48,0,48,0,48,0,120,64,190, + 192,231,128,11,12,24,13,1,3,192,96,238,224,127,192,49, + 128,96,192,96,192,96,192,96,192,49,128,127,192,238,224,192, + 96,14,17,34,14,0,0,248,124,112,48,48,32,24,96,24, + 64,12,192,12,128,7,128,3,0,31,224,3,0,31,224,3, + 0,3,0,3,0,3,0,15,192,2,17,17,6,2,0,192, + 192,192,192,192,192,192,0,0,0,192,192,192,192,192,192,192, + 8,20,20,12,2,253,28,38,70,96,112,56,60,78,135,131, + 195,226,116,56,28,14,6,98,100,56,6,2,2,8,1,14, + 204,204,17,17,51,19,1,0,7,240,0,28,28,0,48,6, + 0,97,227,0,71,49,0,196,25,128,140,0,128,136,0,128, + 136,0,128,136,0,128,140,0,128,196,25,128,71,113,0,97, + 195,0,48,6,0,28,28,0,7,240,0,7,9,9,8,0, + 8,120,204,12,124,204,204,118,0,254,9,10,20,13,1,1, + 8,128,25,128,51,0,102,0,204,0,204,0,102,0,51,0, + 25,128,8,128,11,7,14,15,2,1,255,224,255,224,0,96, + 0,96,0,96,0,96,0,96,6,2,2,8,0,5,252,252, + 17,17,51,19,1,0,7,240,0,28,28,0,48,6,0,103, + 227,0,66,49,0,194,17,128,130,16,128,130,48,128,131,224, + 128,130,64,128,130,32,128,194,49,128,71,25,0,96,3,0, + 48,6,0,28,28,0,7,240,0,7,2,2,8,1,14,254, + 254,7,7,7,9,1,10,56,68,130,130,130,68,56,10,11, + 22,14,2,0,12,0,12,0,12,0,255,192,255,192,12,0, + 12,0,12,0,0,0,255,192,255,192,6,10,10,7,0,7, + 56,76,140,12,8,16,48,32,68,252,6,10,10,7,0,7, + 56,76,140,8,48,8,12,140,136,112,5,4,4,8,2,13, + 24,56,112,192,11,17,34,13,1,251,225,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,113,192,126,192, + 92,224,64,0,192,0,192,0,224,0,64,0,9,21,42,11, + 1,252,31,128,57,0,121,0,121,0,249,0,249,0,249,0, + 121,0,121,0,57,0,25,0,9,0,9,0,9,0,9,0, + 9,0,9,0,9,0,9,0,9,0,9,0,2,3,3,6, + 2,5,192,192,192,6,6,6,8,1,250,16,48,60,12,204, + 120,5,10,10,7,1,7,32,96,160,32,32,32,32,32,32, + 248,7,9,9,8,0,8,56,68,198,198,198,68,56,0,254, + 9,10,20,12,2,1,136,0,204,0,102,0,51,0,25,128, + 25,128,51,0,102,0,204,0,136,0,16,17,34,18,1,0, + 32,24,96,24,160,48,32,96,32,96,32,192,32,192,33,132, + 35,12,251,28,6,20,6,36,12,100,24,68,24,255,48,4, + 48,4,15,17,34,18,1,0,32,24,96,24,160,48,32,96, + 32,96,32,192,32,192,33,156,35,38,251,70,6,6,6,4, + 12,8,24,24,24,16,48,34,48,126,17,17,51,18,0,0, + 56,12,0,76,12,0,140,24,0,8,48,0,48,48,0,8, + 96,0,12,96,0,140,194,0,137,134,0,113,142,0,3,10, + 0,3,18,0,6,50,0,12,34,0,12,127,128,24,2,0, + 24,2,0,8,17,17,11,1,251,12,12,0,0,8,8,24, + 24,56,48,112,224,195,195,193,99,62,17,22,66,17,0,0, + 12,0,0,14,0,0,7,0,0,1,128,0,0,0,0,0, + 128,0,1,192,0,1,192,0,1,96,0,2,96,0,2,48, + 0,6,48,0,4,48,0,4,24,0,12,24,0,15,248,0, + 8,12,0,24,12,0,16,12,0,16,6,0,48,6,0,252, + 31,128,17,22,66,17,0,0,0,24,0,0,56,0,0,112, + 0,0,192,0,0,0,0,0,128,0,1,192,0,1,192,0, + 1,96,0,2,96,0,2,48,0,6,48,0,4,48,0,4, + 24,0,12,24,0,15,248,0,8,12,0,24,12,0,16,12, + 0,16,6,0,48,6,0,252,31,128,17,22,66,17,0,0, + 1,128,0,3,192,0,6,96,0,4,32,0,0,0,0,0, + 128,0,1,192,0,1,192,0,1,96,0,2,96,0,2,48, + 0,6,48,0,4,48,0,4,24,0,12,24,0,15,248,0, + 8,12,0,24,12,0,16,12,0,16,6,0,48,6,0,252, + 31,128,17,21,63,17,0,0,3,32,0,7,224,0,4,192, + 0,0,0,0,0,128,0,1,192,0,1,192,0,1,96,0, + 2,96,0,2,48,0,6,48,0,4,48,0,4,24,0,12, + 24,0,15,248,0,8,12,0,24,12,0,16,12,0,16,6, + 0,48,6,0,252,31,128,17,21,63,17,0,0,6,96,0, + 6,96,0,0,0,0,0,0,0,0,128,0,1,192,0,1, + 192,0,1,96,0,2,96,0,2,48,0,6,48,0,4,48, + 0,4,24,0,12,24,0,15,248,0,8,12,0,24,12,0, + 16,12,0,16,6,0,48,6,0,252,31,128,17,23,69,17, + 0,0,1,192,0,2,32,0,2,32,0,2,32,0,1,192, + 0,0,0,0,0,128,0,1,192,0,1,192,0,1,96,0, + 2,96,0,2,48,0,6,48,0,4,48,0,4,24,0,12, + 24,0,15,248,0,8,12,0,24,12,0,16,12,0,16,6, + 0,48,6,0,252,31,128,21,17,51,22,0,0,3,255,240, + 0,240,48,1,176,16,1,48,16,3,48,0,2,48,0,6, + 48,64,4,48,64,4,63,192,12,48,64,15,240,64,8,48, + 0,24,48,0,16,48,8,48,48,8,32,48,24,248,255,248, + 14,23,46,16,1,250,7,228,28,60,56,12,96,4,96,4, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,96,0, + 96,4,56,8,30,56,7,224,1,0,3,0,3,192,0,192, + 12,192,7,128,13,22,44,15,1,0,24,0,28,0,14,0, + 3,0,0,0,255,240,48,48,48,16,48,16,48,0,48,0, + 48,64,48,64,63,192,48,64,48,64,48,0,48,0,48,8, + 48,8,48,24,255,248,13,22,44,15,1,0,0,96,0,224, + 1,192,3,0,0,0,255,240,48,48,48,16,48,16,48,0, + 48,0,48,64,48,64,63,192,48,64,48,64,48,0,48,0, + 48,8,48,8,48,24,255,248,13,22,44,15,1,0,6,0, + 15,0,25,128,16,128,0,0,255,240,48,48,48,16,48,16, + 48,0,48,0,48,64,48,64,63,192,48,64,48,64,48,0, + 48,0,48,8,48,8,48,24,255,248,13,21,42,15,1,0, + 25,128,25,128,0,0,0,0,255,240,48,48,48,16,48,16, + 48,0,48,0,48,64,48,64,63,192,48,64,48,64,48,0, + 48,0,48,8,48,8,48,24,255,248,7,22,22,8,0,0, + 192,224,112,24,0,126,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,126,7,22,22,8,1,0,6,14,28,48, + 0,252,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,252,6,22,22,8,1,0,48,120,204,132,0,252,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,252,6,21, + 21,8,1,0,204,204,0,0,252,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,252,16,17,34,17,0,0,127, + 224,24,56,24,28,24,6,24,6,24,3,24,3,255,3,255, + 3,24,3,24,3,24,3,24,6,24,6,24,28,24,56,127, + 224,16,21,42,18,1,0,3,32,7,224,4,192,0,0,240, + 31,48,4,56,4,56,4,44,4,38,4,38,4,35,4,33, + 132,33,132,32,196,32,100,32,100,32,52,32,28,32,28,248, + 12,16,22,44,18,1,0,12,0,14,0,7,0,1,128,0, + 0,7,224,28,56,56,28,96,6,96,6,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,96,6,96,6,56,28,28, + 56,7,224,16,22,44,18,1,0,0,48,0,112,0,224,1, + 128,0,0,7,224,28,56,56,28,96,6,96,6,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,96,6,96,6,56, + 28,28,56,7,224,16,22,44,18,1,0,1,128,3,192,6, + 96,4,32,0,0,7,224,28,56,56,28,96,6,96,6,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,96,6,96, + 6,56,28,28,56,7,224,16,21,42,18,1,0,3,32,7, + 224,4,192,0,0,7,224,28,56,56,28,96,6,96,6,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,96,6,96, + 6,56,28,28,56,7,224,16,21,42,18,1,0,6,96,6, + 96,0,0,0,0,7,224,28,56,56,28,96,6,96,6,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,96,6,96, + 6,56,28,28,56,7,224,10,9,18,12,1,1,192,192,97, + 128,51,0,30,0,12,0,30,0,51,0,97,128,192,192,16, + 19,38,18,1,255,0,4,7,228,28,56,56,28,96,38,96, + 70,192,67,192,131,192,131,193,3,193,3,194,3,194,3,100, + 6,104,6,56,28,28,56,39,224,32,0,16,22,44,18,1, + 0,6,0,7,0,3,128,0,192,0,0,252,31,48,4,48, + 4,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,48,8,24,8,28,48,7,224,16,22,44, + 18,1,0,0,48,0,112,0,224,1,128,0,0,252,31,48, + 4,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,48,4,48,8,24,8,28,48,7,224,16, + 22,44,18,1,0,1,128,3,192,6,96,4,32,0,0,252, + 31,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,48,4,48,4,48,8,24,8,28,48,7, + 224,16,21,42,18,1,0,6,96,6,96,0,0,0,0,252, + 31,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,48,4,48,4,48,8,24,8,28,48,7, + 224,16,22,44,18,1,0,0,48,0,112,0,224,1,128,0, + 0,252,63,48,12,56,8,24,24,28,16,12,48,6,32,6, + 96,3,64,3,192,1,128,1,128,1,128,1,128,1,128,1, + 128,7,224,13,17,34,15,1,0,252,0,48,0,48,0,48, + 0,63,192,48,112,48,48,48,24,48,24,48,24,48,48,48, + 112,63,192,48,0,48,0,48,0,252,0,10,17,34,12,1, + 0,30,0,51,0,97,128,97,128,97,128,97,128,99,0,108, + 0,103,0,99,128,97,128,97,192,96,192,96,192,108,192,108, + 128,231,0,9,17,34,11,1,0,96,0,112,0,56,0,12, + 0,0,0,62,0,103,0,99,0,3,0,15,0,59,0,99, + 0,195,0,195,0,199,0,251,0,113,128,9,17,34,11,1, + 0,3,0,7,0,14,0,24,0,0,0,62,0,103,0,99, + 0,3,0,15,0,59,0,99,0,195,0,195,0,199,0,251, + 0,113,128,9,17,34,11,1,0,12,0,30,0,51,0,33, + 0,0,0,62,0,103,0,99,0,3,0,15,0,59,0,99, + 0,195,0,195,0,199,0,251,0,113,128,9,16,32,11,1, + 0,50,0,126,0,76,0,0,0,62,0,103,0,99,0,3, + 0,15,0,59,0,99,0,195,0,195,0,199,0,251,0,113, + 128,9,16,32,11,1,0,102,0,102,0,0,0,0,0,62, + 0,103,0,99,0,3,0,15,0,59,0,99,0,195,0,195, + 0,199,0,251,0,113,128,9,18,36,11,1,0,28,0,34, + 0,34,0,34,0,28,0,0,0,62,0,103,0,99,0,3, + 0,15,0,59,0,99,0,195,0,195,0,199,0,251,0,113, + 128,14,12,24,16,1,0,60,240,103,152,99,12,3,12,15, + 252,59,0,99,0,195,0,195,0,199,132,251,248,112,240,9, + 18,36,11,1,250,31,0,99,128,65,128,192,0,192,0,192, + 0,192,0,192,0,224,0,112,128,127,0,30,0,8,0,24, + 0,30,0,6,0,102,0,60,0,9,17,34,11,1,0,96, + 0,112,0,56,0,12,0,0,0,30,0,99,0,65,128,193, + 128,255,128,192,0,192,0,192,0,224,0,112,128,127,0,30, + 0,9,17,34,11,1,0,3,0,7,0,14,0,24,0,0, + 0,30,0,99,0,65,128,193,128,255,128,192,0,192,0,192, + 0,224,0,112,128,127,0,30,0,9,17,34,11,1,0,12, + 0,30,0,51,0,33,0,0,0,30,0,99,0,65,128,193, + 128,255,128,192,0,192,0,192,0,224,0,112,128,127,0,30, + 0,9,16,32,11,1,0,51,0,51,0,0,0,0,0,30, + 0,99,0,65,128,193,128,255,128,192,0,192,0,192,0,224, + 0,112,128,127,0,30,0,6,17,17,6,255,0,192,224,112, + 24,0,56,24,24,24,24,24,24,24,24,24,24,60,5,17, + 17,6,1,0,24,56,112,192,0,96,224,96,96,96,96,96, + 96,96,96,96,240,6,17,17,6,0,0,48,120,204,132,0, + 48,112,48,48,48,48,48,48,48,48,48,120,6,16,16,6, + 0,0,204,204,0,0,112,48,48,48,48,48,48,48,48,48, + 48,120,10,17,34,12,1,0,192,0,113,128,30,0,60,0, + 198,0,31,0,115,128,97,128,192,192,192,192,192,192,192,192, + 192,192,192,192,97,128,115,128,30,0,11,16,32,13,1,0, + 25,0,63,0,38,0,0,0,103,0,239,128,113,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,241,224, + 10,17,34,12,1,0,96,0,112,0,56,0,12,0,0,0, + 30,0,115,128,97,128,192,192,192,192,192,192,192,192,192,192, + 192,192,97,128,115,128,30,0,10,17,34,12,1,0,3,0, + 7,0,14,0,24,0,0,0,30,0,115,128,97,128,192,192, + 192,192,192,192,192,192,192,192,192,192,97,128,115,128,30,0, + 10,17,34,12,1,0,12,0,30,0,51,0,33,0,0,0, + 30,0,115,128,97,128,192,192,192,192,192,192,192,192,192,192, + 192,192,97,128,115,128,30,0,10,16,32,12,1,0,25,0, + 63,0,38,0,0,0,30,0,115,128,97,128,192,192,192,192, + 192,192,192,192,192,192,192,192,97,128,115,128,30,0,10,16, + 32,12,1,0,51,0,51,0,0,0,0,0,30,0,115,128, + 97,128,192,192,192,192,192,192,192,192,192,192,192,192,97,128, + 115,128,30,0,10,10,20,12,1,1,12,0,12,0,0,0, + 0,0,255,192,255,192,0,0,0,0,12,0,12,0,10,14, + 28,12,1,255,0,192,30,192,115,128,99,128,198,192,196,192, + 204,192,200,192,216,192,208,192,113,128,115,128,222,0,192,0, + 11,17,34,13,1,0,96,0,112,0,56,0,12,0,0,0, + 225,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,113,192,62,192,28,224,11,17,34,13,1,0,1,128, + 3,128,7,0,12,0,0,0,225,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,113,192,62,192,28,224, + 11,17,34,13,1,0,12,0,30,0,51,0,33,0,0,0, + 225,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,113,192,62,192,28,224,11,16,32,13,1,0,51,0, + 51,0,0,0,0,0,225,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,113,192,62,192,28,224,11,22, + 44,11,0,251,1,128,3,128,7,0,12,0,0,0,241,224, + 96,192,96,128,48,128,48,128,49,0,25,0,25,0,26,0, + 14,0,14,0,4,0,12,0,8,0,24,0,240,0,224,0, + 10,22,44,12,1,251,96,0,224,0,96,0,96,0,96,0, + 110,0,115,128,97,128,96,192,96,192,96,192,96,192,96,192, + 96,192,97,128,115,128,110,0,96,0,96,0,96,0,96,0, + 240,0,11,21,42,11,0,251,51,0,51,0,0,0,0,0, + 241,224,96,192,96,128,48,128,48,128,49,0,25,0,25,0, + 26,0,14,0,14,0,4,0,12,0,8,0,24,0,240,0, + 224,0}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--25-180-100-100-P-125-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=23 h=23 x= 3 y=13 dx=23 dy= 0 ascent=19 len=60 + Font Bounding box w=29 h=37 x=-4 y=-9 + Calculated Min Values x=-2 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-6 + X Font ascent =17 descent=-6 + Max Font ascent =19 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR18r[3208] U8G_SECTION(".progmem.u8g_font_timR18r") = { + 0,29,37,252,247,17,4,9,8,241,32,127,250,19,250,17, + 250,0,0,0,6,0,1,3,17,17,8,3,0,64,224,224, + 224,224,224,224,224,64,64,64,64,0,0,0,192,192,6,5, + 5,10,1,12,204,204,204,204,136,11,17,34,13,1,0,8, + 128,8,128,8,128,8,128,8,128,127,224,127,224,17,0,17, + 0,17,0,255,192,255,192,34,0,34,0,34,0,34,0,34, + 0,11,21,42,12,0,254,4,0,4,0,63,0,101,192,196, + 192,196,64,196,64,228,0,124,0,30,0,7,128,5,192,4, + 224,4,96,132,96,132,96,196,192,229,192,63,0,4,0,4, + 0,17,16,48,19,1,0,30,12,0,51,252,0,97,24,0, + 193,16,0,193,48,0,194,96,0,228,64,0,120,192,0,1, + 143,0,1,25,128,3,48,128,6,96,128,4,96,128,12,97, + 0,24,114,0,16,60,0,17,17,51,19,1,0,7,192,0, + 8,96,0,24,32,0,24,32,0,24,96,0,12,192,0,15, + 158,0,7,12,0,15,8,0,51,136,0,97,144,0,192,208, + 0,192,224,0,192,96,0,224,240,128,127,191,0,62,14,0, + 2,5,5,6,2,12,192,192,192,192,128,6,22,22,8,1, + 251,4,8,16,48,32,96,96,192,192,192,192,192,192,192,192, + 96,96,32,48,16,8,4,6,22,22,8,1,251,128,64,32, + 48,16,24,24,12,12,12,12,12,12,12,12,24,24,16,48, + 32,64,128,9,9,18,12,2,8,28,0,28,0,201,128,235, + 128,28,0,235,128,201,128,28,0,28,0,12,12,24,12,0, + 0,6,0,6,0,6,0,6,0,6,0,255,240,255,240,6, + 0,6,0,6,0,6,0,6,0,3,5,5,7,2,253,192, + 224,32,96,192,6,2,2,8,0,5,252,252,2,2,2,6, + 2,0,192,192,9,21,42,7,254,252,1,128,1,128,1,0, + 3,0,3,0,2,0,6,0,6,0,4,0,12,0,12,0, + 8,0,24,0,24,0,16,0,48,0,48,0,96,0,96,0, + 64,0,192,0,10,17,34,12,1,0,30,0,51,0,97,128, + 97,128,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,225,192,97,128,97,128,51,0,30,0,8,17,17,12, + 2,0,8,24,120,24,24,24,24,24,24,24,24,24,24,24, + 24,24,255,10,17,34,12,1,0,28,0,127,0,67,128,129, + 128,129,128,1,128,1,128,3,0,3,0,6,0,4,0,12, + 0,24,0,48,0,96,64,255,192,255,128,9,17,34,12,1, + 0,28,0,126,0,71,0,131,0,131,0,6,0,12,0,30, + 0,7,0,3,128,1,128,1,128,1,128,1,0,195,0,230, + 0,120,0,10,17,34,12,1,0,3,0,7,0,7,0,11, + 0,27,0,19,0,51,0,35,0,99,0,67,0,195,0,255, + 192,255,192,3,0,3,0,3,0,3,0,10,17,34,12,1, + 0,31,192,31,128,32,0,32,0,96,0,120,0,126,0,15, + 128,3,128,1,192,0,192,0,192,0,192,0,192,193,128,227, + 128,126,0,10,17,34,12,1,0,3,192,14,0,24,0,48, + 0,112,0,96,0,238,0,243,128,193,128,192,192,192,192,192, + 192,192,192,224,192,97,128,123,128,30,0,10,17,34,12,1, + 0,127,192,255,192,192,192,129,128,1,128,1,0,3,0,3, + 0,2,0,6,0,6,0,4,0,12,0,12,0,12,0,24, + 0,24,0,10,17,34,12,1,0,30,0,51,0,97,128,97, + 128,97,128,115,0,62,0,30,0,63,0,99,128,65,192,192, + 192,192,192,192,192,225,128,115,128,30,0,10,17,34,12,1, + 0,30,0,119,128,97,128,193,192,192,192,192,192,192,192,192, + 192,97,192,115,192,29,128,1,128,3,128,3,0,6,0,28, + 0,240,0,2,11,11,6,2,0,192,192,0,0,0,0,0, + 0,0,192,192,3,14,14,7,2,253,192,192,0,0,0,0, + 0,0,0,192,224,32,96,192,11,11,22,14,1,0,0,96, + 1,192,7,0,28,0,112,0,192,0,112,0,28,0,7,0, + 1,192,0,96,9,5,10,13,2,3,255,128,255,128,0,0, + 255,128,255,128,11,11,22,13,1,0,192,0,112,0,28,0, + 7,0,1,192,0,96,1,192,7,0,28,0,112,0,192,0, + 8,17,17,11,2,0,124,198,131,195,195,7,14,12,28,24, + 24,16,16,0,0,48,48,18,20,60,22,2,253,3,248,0, + 15,14,0,28,3,0,56,1,128,112,0,128,96,236,192,225, + 252,64,195,140,64,195,12,64,198,12,64,198,24,64,198,24, + 192,198,24,128,198,57,128,99,123,0,97,222,0,48,0,0, + 24,0,0,14,12,0,3,240,0,17,17,51,17,0,0,0, + 128,0,1,192,0,1,192,0,1,96,0,2,96,0,2,48, + 0,6,48,0,4,48,0,4,24,0,12,24,0,15,248,0, + 8,12,0,24,12,0,16,12,0,16,6,0,48,6,0,252, + 31,128,14,17,34,16,1,0,255,192,48,112,48,48,48,24, + 48,24,48,24,48,48,48,64,63,224,48,56,48,24,48,12, + 48,12,48,12,48,24,48,120,255,224,14,17,34,16,1,0, + 7,228,28,60,56,12,96,4,96,4,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,96,0,96,4,56,8,30,56, + 7,224,15,17,34,17,1,0,255,192,48,112,48,56,48,12, + 48,12,48,6,48,6,48,6,48,6,48,6,48,6,48,6, + 48,12,48,12,48,56,48,112,255,192,13,17,34,15,1,0, + 255,240,48,48,48,16,48,16,48,0,48,0,48,64,48,64, + 63,192,48,64,48,64,48,0,48,0,48,8,48,8,48,24, + 255,248,12,17,34,14,1,0,255,240,48,48,48,16,48,16, + 48,0,48,0,48,32,48,32,63,224,48,32,48,32,48,0, + 48,0,48,0,48,0,48,0,252,0,16,17,34,18,1,0, + 7,228,28,60,56,12,96,4,96,4,192,0,192,0,192,0, + 192,0,192,63,192,12,192,12,96,12,96,12,56,28,30,56, + 7,224,17,17,51,19,1,0,252,31,128,48,6,0,48,6, + 0,48,6,0,48,6,0,48,6,0,48,6,0,48,6,0, + 63,254,0,48,6,0,48,6,0,48,6,0,48,6,0,48, + 6,0,48,6,0,48,6,0,252,31,128,6,17,17,8,1, + 0,252,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,252,9,17,34,11,1,0,31,128,6,0,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,198,0,204,0,120,0,16,17,34,17,1,0, + 252,126,48,24,48,48,48,96,48,192,49,128,51,0,62,0, + 63,0,51,128,49,192,48,224,48,112,48,56,48,28,48,14, + 252,31,13,17,34,14,1,0,252,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,8,48,8,48,24,255,248,21,17,51,22,1,0, + 240,0,248,48,0,224,56,1,96,56,1,96,44,2,96,44, + 2,96,38,2,96,38,4,96,35,4,96,35,8,96,33,136, + 96,33,136,96,32,208,96,32,208,96,32,96,96,32,96,96, + 248,97,248,16,17,34,18,1,0,240,31,48,4,56,4,56, + 4,44,4,38,4,38,4,35,4,33,132,33,132,32,196,32, + 100,32,100,32,52,32,28,32,28,248,12,16,17,34,18,1, + 0,7,224,28,56,56,28,96,6,96,6,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,96,6,96,6,56,28,28, + 56,7,224,13,17,34,15,1,0,255,192,48,112,48,48,48, + 24,48,24,48,24,48,48,48,112,63,192,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,252,0,16,22,44,18,1, + 251,7,224,28,56,56,28,96,6,96,6,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,96,6,96,6,56,28,28, + 56,7,224,1,192,0,224,0,112,0,56,0,15,15,17,34, + 16,1,0,255,192,48,112,48,48,48,24,48,24,48,24,48, + 48,48,112,63,192,51,128,49,128,48,192,48,96,48,112,48, + 56,48,28,252,30,11,17,34,13,1,0,30,64,99,192,192, + 192,192,64,192,64,224,0,120,0,30,0,15,128,3,192,0, + 224,0,96,128,96,128,96,192,192,241,128,158,0,14,17,34, + 16,1,0,255,252,195,12,131,4,131,4,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,15,192,16,17,34,18,1,0,252,31,48,4,48, + 4,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,48,8,24,8,28,48,7,224,17,17,51, + 17,0,0,252,31,128,48,6,0,48,4,0,24,12,0,24, + 8,0,24,8,0,12,24,0,12,16,0,6,48,0,6,32, + 0,6,32,0,3,96,0,3,64,0,3,192,0,1,128,0, + 1,128,0,1,128,0,23,17,51,23,0,0,252,126,126,48, + 24,24,48,24,16,24,24,16,24,24,48,24,44,32,12,44, + 32,12,44,96,6,76,96,6,76,64,6,70,64,3,70,192, + 3,70,128,3,135,128,1,131,128,1,131,0,1,131,0,18, + 17,51,18,0,0,126,15,128,28,6,0,14,12,0,6,8, + 0,3,16,0,1,160,0,1,192,0,0,192,0,0,224,0, + 1,112,0,2,56,0,6,24,0,4,12,0,8,14,0,24, + 7,0,48,3,128,252,15,192,16,17,34,18,1,0,252,63, + 48,12,56,8,24,24,28,16,12,48,6,32,6,96,3,64, + 3,192,1,128,1,128,1,128,1,128,1,128,1,128,7,224, + 13,17,34,15,1,0,255,240,192,112,128,224,128,192,1,192, + 3,128,3,0,7,0,6,0,14,0,28,0,24,0,56,0, + 48,8,112,8,224,24,255,248,5,21,21,8,2,252,248,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,248,7,17,17,7,0,0,192,192,64,96,96,32,48, + 48,16,24,24,8,12,12,4,6,6,5,21,21,8,1,252, + 248,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,248,9,9,18,11,1,8,8,0,28,0,20, + 0,54,0,34,0,99,0,65,0,193,128,128,128,12,2,4, + 12,0,251,255,240,255,240,5,4,4,8,1,13,192,224,112, + 24,9,12,24,11,1,0,62,0,103,0,99,0,3,0,15, + 0,59,0,99,0,195,0,195,0,199,0,251,0,113,128,11, + 17,34,12,0,0,48,0,240,0,48,0,48,0,48,0,55, + 0,57,192,48,192,48,96,48,96,48,96,48,96,48,96,48, + 96,48,192,57,192,47,0,9,12,24,11,1,0,31,0,99, + 128,65,128,192,0,192,0,192,0,192,0,192,0,224,0,112, + 128,127,0,30,0,10,17,34,12,1,0,1,128,7,128,1, + 128,1,128,1,128,29,128,115,128,97,128,193,128,193,128,193, + 128,193,128,193,128,193,128,99,128,127,128,25,192,9,12,24, + 11,1,0,30,0,99,0,65,128,193,128,255,128,192,0,192, + 0,192,0,224,0,112,128,127,0,30,0,7,17,17,7,0, + 0,14,22,48,48,48,254,48,48,48,48,48,48,48,48,48, + 48,120,11,18,36,12,1,250,30,192,35,192,97,0,97,128, + 97,128,97,128,97,128,51,0,60,0,64,0,96,0,127,128, + 63,192,64,224,192,96,192,96,225,192,127,0,12,17,34,13, + 0,0,48,0,240,0,48,0,48,0,48,0,51,128,55,192, + 56,224,48,96,48,96,48,96,48,96,48,96,48,96,48,96, + 48,96,120,240,4,17,17,6,1,0,96,96,0,0,0,96, + 224,96,96,96,96,96,96,96,96,96,240,6,23,23,6,254, + 250,12,12,0,0,0,12,28,12,12,12,12,12,12,12,12, + 12,12,12,12,12,204,200,112,12,17,34,12,0,0,48,0, + 240,0,48,0,48,0,48,0,51,224,49,128,51,0,50,0, + 52,0,60,0,54,0,55,0,51,128,49,192,48,224,121,240, + 5,17,17,6,0,0,48,240,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,120,18,12,36,20,1,0,103,14,0, + 239,159,0,113,227,128,96,193,128,96,193,128,96,193,128,96, + 193,128,96,193,128,96,193,128,96,193,128,96,193,128,241,227, + 192,11,12,24,13,1,0,103,0,239,128,113,192,96,192,96, + 192,96,192,96,192,96,192,96,192,96,192,96,192,241,224,10, + 12,24,12,1,0,30,0,115,128,97,128,192,192,192,192,192, + 192,192,192,192,192,192,192,97,128,115,128,30,0,10,18,36, + 12,1,250,110,0,243,128,97,128,96,192,96,192,96,192,96, + 192,96,192,96,192,97,128,115,128,110,0,96,0,96,0,96, + 0,96,0,96,0,240,0,10,18,36,12,1,250,29,128,115, + 128,97,128,193,128,193,128,193,128,193,128,193,128,193,128,97, + 128,115,128,29,128,1,128,1,128,1,128,1,128,1,128,3, + 192,6,12,12,8,1,0,108,236,112,96,96,96,96,96,96, + 96,96,240,8,12,12,10,1,0,62,70,194,224,112,124,30, + 7,3,131,198,248,7,15,15,7,0,0,16,48,112,254,48, + 48,48,48,48,48,48,48,48,50,28,11,12,24,13,1,0, + 225,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,113,192,62,192,28,224,11,12,24,11,0,0,241,224, + 96,192,96,128,48,128,48,128,49,0,25,0,25,0,26,0, + 14,0,14,0,4,0,17,12,36,17,0,0,241,231,128,96, + 195,0,96,194,0,48,194,0,48,194,0,49,100,0,25,100, + 0,26,100,0,26,40,0,14,56,0,14,56,0,4,16,0, + 11,12,24,13,1,0,241,224,96,192,49,128,57,0,26,0, + 12,0,14,0,27,0,51,128,33,128,96,192,241,224,12,18, + 36,11,255,250,120,240,48,96,48,64,24,64,24,64,24,128, + 12,128,12,128,13,0,7,0,7,0,2,0,6,0,4,0, + 12,0,200,0,240,0,96,0,8,12,12,10,1,0,255,195, + 134,14,28,24,56,48,112,97,195,255,8,22,22,10,1,251, + 7,12,24,24,24,24,24,16,48,32,192,32,48,16,24,24, + 24,24,24,24,12,7,2,17,17,5,1,0,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,8,22,22, + 10,1,251,224,48,24,24,24,24,24,8,12,4,3,4,12, + 8,24,24,24,24,24,24,48,224,11,4,8,13,1,4,56, + 32,124,96,199,192,131,128,255}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--34-240-100-100-P-170-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 23, '1' Height: 23 + Calculated Max Values w=31 h=30 x= 4 y=18 dx=32 dy= 0 ascent=30 len=112 + Font Bounding box w=38 h=48 x=-5 y=-11 + Calculated Min Values x=-2 y=-7 dx= 0 dy= 0 + Pure Font ascent =23 descent=-7 + X Font ascent =23 descent=-7 + Max Font ascent =30 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR24[10419] U8G_SECTION(".progmem.u8g_font_timR24") = { + 0,38,48,251,245,23,5,140,13,213,32,255,249,30,249,23, + 249,0,0,0,8,0,1,4,23,23,11,3,0,96,240,240, + 240,240,240,96,96,96,96,96,96,96,96,96,96,96,0,0, + 96,240,240,96,9,7,14,14,2,16,227,128,227,128,227,128, + 227,128,65,0,65,0,65,0,16,23,46,17,0,0,6,24, + 6,24,6,24,6,24,6,24,6,24,6,24,6,24,127,255, + 127,255,12,48,12,48,12,48,12,48,255,254,255,254,24,96, + 24,96,24,96,24,96,24,96,24,96,24,96,13,28,56,16, + 2,253,2,0,2,0,15,192,58,112,50,56,98,24,98,8, + 98,8,114,0,122,0,62,0,63,0,31,128,7,192,3,224, + 2,240,2,112,2,56,2,56,130,24,130,24,194,56,226,48, + 114,96,31,192,2,0,2,0,2,0,23,23,69,27,2,0, + 15,0,64,29,131,192,56,252,128,112,65,128,112,67,0,224, + 66,0,224,70,0,224,196,0,192,140,0,193,136,0,193,24, + 120,102,16,236,60,49,198,0,99,130,0,67,130,0,199,2, + 0,135,2,1,135,6,1,6,4,3,6,12,2,6,8,6, + 3,48,4,1,224,23,23,69,26,2,0,0,248,0,1,140, + 0,3,14,0,3,6,0,7,6,0,7,6,0,7,12,0, + 7,140,0,3,152,0,3,241,252,3,192,112,7,192,96,29, + 224,64,56,240,192,112,112,128,96,121,128,224,63,0,224,30, + 0,224,15,0,240,31,130,120,51,252,127,225,248,31,128,240, + 3,8,8,6,1,15,224,224,224,224,64,64,64,64,8,28, + 28,11,2,251,3,6,12,24,56,48,112,112,96,224,224,224, + 224,224,224,224,224,224,224,96,112,112,48,56,24,12,6,3, + 8,28,28,11,1,251,192,96,48,24,28,12,14,14,6,7, + 7,7,7,7,7,7,7,7,7,6,14,14,12,28,24,48, + 96,192,12,13,26,17,2,10,6,0,15,0,6,0,198,48, + 246,240,118,224,15,0,118,224,246,240,198,48,6,0,15,0, + 6,0,16,16,32,19,1,1,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,255,255,255,255,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,4,7,7,8,2,253,96,240, + 240,112,16,32,64,8,2,2,11,1,7,255,255,4,4,4, + 8,2,0,96,240,240,96,10,26,52,9,0,253,0,192,0, + 192,1,128,1,128,3,128,3,0,3,0,3,0,6,0,6, + 0,6,0,14,0,12,0,12,0,28,0,24,0,24,0,24, + 0,48,0,48,0,48,0,112,0,96,0,96,0,192,0,192, + 0,14,23,46,16,1,0,7,128,28,224,56,112,48,48,112, + 56,112,56,96,24,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,224,24,112,56,112,56,48,48,56, + 112,28,224,7,128,9,23,46,16,4,0,12,0,28,0,124, + 0,220,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,62,0,255,128,15,23,46,16,0,0,7, + 224,15,240,28,248,48,60,32,60,96,28,64,28,0,28,0, + 28,0,24,0,56,0,48,0,96,0,96,0,192,1,128,3, + 0,6,0,12,2,24,6,63,252,127,248,255,248,12,23,46, + 16,2,0,15,128,63,192,97,224,192,224,128,224,0,224,0, + 192,0,192,1,128,3,0,7,192,31,224,1,240,0,112,0, + 112,0,48,0,48,0,48,0,112,0,96,224,192,243,128,127, + 0,14,23,46,16,1,0,0,96,0,224,0,224,1,224,1, + 96,3,96,6,96,4,96,12,96,24,96,16,96,48,96,96, + 96,64,96,255,252,255,252,255,252,0,96,0,96,0,96,0, + 96,0,96,0,96,13,23,46,16,1,0,15,248,31,240,31, + 224,16,0,48,0,32,0,126,0,127,128,127,192,7,224,1, + 224,0,240,0,112,0,112,0,48,0,48,0,48,0,48,0, + 96,0,96,224,192,243,128,126,0,14,23,46,16,1,0,0, + 120,1,192,3,128,15,0,30,0,28,0,56,0,120,0,112, + 0,115,192,247,240,248,120,224,56,224,60,224,28,224,28,224, + 28,224,28,112,28,112,24,56,56,28,96,7,192,14,23,46, + 16,1,0,63,252,127,252,96,24,192,24,128,56,0,48,0, + 48,0,48,0,96,0,96,0,96,0,224,0,192,0,192,1, + 192,1,128,1,128,1,128,3,0,3,0,3,0,7,0,6, + 0,13,23,46,16,2,0,31,128,56,224,112,112,224,48,224, + 48,224,48,224,112,240,96,124,192,63,0,31,128,15,192,27, + 224,113,240,96,240,224,120,192,120,192,56,192,56,224,56,96, + 112,112,224,31,192,14,23,46,16,1,0,7,128,24,224,48, + 112,112,56,96,56,224,28,224,28,224,28,224,28,224,28,240, + 28,112,28,120,60,62,252,15,184,0,56,0,112,0,112,0, + 224,1,192,3,128,15,0,120,0,4,15,15,9,2,0,96, + 240,240,96,0,0,0,0,0,0,0,96,240,240,96,4,18, + 18,9,2,253,96,240,240,96,0,0,0,0,0,0,0,96, + 240,240,112,16,32,64,16,18,36,19,1,0,0,1,0,7, + 0,31,0,124,1,240,7,192,31,0,124,0,240,0,240,0, + 124,0,31,0,7,192,1,240,0,124,0,31,0,7,0,1, + 16,9,18,19,1,4,255,255,255,255,0,0,0,0,0,0, + 0,0,0,0,255,255,255,255,16,18,36,19,2,0,128,0, + 224,0,248,0,62,0,15,128,3,224,0,248,0,62,0,15, + 0,15,0,62,0,248,3,224,15,128,62,0,248,0,224,0, + 128,0,11,23,46,14,2,0,31,0,115,128,193,192,193,192, + 224,224,224,224,96,224,1,192,1,192,1,128,3,128,3,0, + 6,0,4,0,12,0,8,0,8,0,0,0,0,0,12,0, + 30,0,30,0,12,0,27,28,112,31,2,251,0,31,240,0, + 0,248,60,0,1,224,6,0,7,128,3,0,14,0,1,128, + 28,0,0,192,28,0,0,192,56,7,140,96,112,31,92,96, + 112,28,124,32,112,56,56,32,224,112,56,32,224,112,48,32, + 224,112,112,32,224,224,112,96,224,224,112,64,224,224,224,192, + 224,224,224,128,112,225,225,128,112,119,115,0,112,60,62,0, + 56,0,0,0,24,0,0,0,28,0,0,0,14,0,0,0, + 7,128,6,0,1,240,60,0,0,127,240,0,22,23,69,24, + 1,0,0,48,0,0,48,0,0,112,0,0,120,0,0,120, + 0,0,252,0,0,220,0,0,156,0,1,142,0,1,14,0, + 3,15,0,3,7,0,2,7,0,6,7,128,6,3,128,15, + 255,192,12,3,192,24,1,192,24,1,224,48,1,224,48,0, + 240,112,0,240,252,3,252,20,23,69,22,1,0,255,254,0, + 62,15,128,28,3,192,28,1,192,28,1,224,28,0,224,28, + 0,224,28,1,224,28,1,192,28,3,192,28,15,128,31,254, + 0,28,7,128,28,1,224,28,0,224,28,0,240,28,0,112, + 28,0,112,28,0,240,28,0,224,28,1,224,62,7,192,255, + 255,0,20,23,69,22,1,0,1,255,16,7,131,240,14,0, + 240,28,0,112,56,0,48,56,0,48,112,0,16,112,0,16, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,112,0,0,112,0,0,56,0,0,56,0, + 16,28,0,48,14,0,96,7,131,192,1,255,0,22,23,69, + 24,1,0,255,254,0,62,7,128,28,1,192,28,0,224,28, + 0,112,28,0,112,28,0,56,28,0,56,28,0,60,28,0, + 60,28,0,60,28,0,60,28,0,60,28,0,60,28,0,60, + 28,0,56,28,0,56,28,0,112,28,0,112,28,0,224,28, + 1,192,62,7,128,255,254,0,19,23,69,20,1,0,255,255, + 192,62,3,192,28,0,192,28,0,64,28,0,64,28,0,0, + 28,0,0,28,0,0,28,1,0,28,1,0,28,3,0,31, + 255,0,28,3,0,28,1,0,28,1,0,28,0,0,28,0, + 0,28,0,32,28,0,32,28,0,96,28,0,192,62,3,192, + 255,255,192,17,23,69,18,1,0,255,255,128,62,7,128,28, + 1,128,28,0,128,28,0,128,28,0,0,28,0,0,28,0, + 0,28,2,0,28,2,0,28,6,0,31,254,0,28,6,0, + 28,2,0,28,2,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,62,0,0,255,128,0,22,23, + 69,24,1,0,1,255,48,7,135,240,14,0,240,28,0,112, + 56,0,48,56,0,48,112,0,16,112,0,0,240,0,0,240, + 0,0,240,0,0,240,3,252,240,0,248,240,0,112,240,0, + 112,112,0,112,112,0,112,56,0,112,56,0,112,28,0,112, + 14,0,112,7,129,224,1,255,128,22,23,69,24,1,0,255, + 135,252,62,1,240,28,0,224,28,0,224,28,0,224,28,0, + 224,28,0,224,28,0,224,28,0,224,28,0,224,28,0,224, + 31,255,224,28,0,224,28,0,224,28,0,224,28,0,224,28, + 0,224,28,0,224,28,0,224,28,0,224,28,0,224,62,1, + 240,255,135,252,9,23,46,11,1,0,255,128,62,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,62,0,255,128,12,23,46,13,1,0,31,240, + 7,192,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,195,128,227,0,231,0,124,0,23,23,69,24, + 1,0,255,199,248,62,1,224,28,1,128,28,3,0,28,6, + 0,28,12,0,28,24,0,28,48,0,28,96,0,28,192,0, + 31,192,0,31,224,0,31,240,0,30,120,0,28,60,0,28, + 30,0,28,15,0,28,7,128,28,3,192,28,1,224,28,0, + 240,62,0,248,255,199,254,19,23,69,20,1,0,255,128,0, + 62,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,32,28,0,32,28,0,96,28,0,192,62,3,192,255, + 255,192,28,23,92,30,1,0,252,0,7,240,62,0,7,192, + 30,0,15,128,31,0,15,128,31,0,11,128,23,0,27,128, + 23,128,27,128,19,128,51,128,19,192,51,128,19,192,35,128, + 17,224,99,128,17,224,99,128,16,224,195,128,16,240,195,128, + 16,112,131,128,16,121,131,128,16,121,3,128,16,61,3,128, + 16,63,3,128,16,30,3,128,16,30,3,128,56,12,7,192, + 254,12,31,240,22,23,69,24,1,0,248,1,252,60,0,112, + 30,0,32,31,0,32,31,0,32,23,128,32,19,192,32,19, + 192,32,17,224,32,16,240,32,16,248,32,16,120,32,16,60, + 32,16,30,32,16,31,32,16,15,32,16,7,160,16,3,224, + 16,1,224,16,1,224,16,0,224,56,0,96,254,0,32,22, + 23,69,24,1,0,1,254,0,7,135,128,14,1,192,28,0, + 224,56,0,112,56,0,112,112,0,56,112,0,56,240,0,60, + 240,0,60,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,112,0,56,112,0,56,56,0,112,56,0,112,28,0, + 224,14,1,192,7,135,128,1,254,0,17,23,69,18,1,0, + 255,248,0,60,62,0,28,15,0,28,7,0,28,7,128,28, + 3,128,28,3,128,28,3,128,28,7,128,28,7,0,28,15, + 0,28,62,0,31,240,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,62, + 0,0,255,128,0,22,29,87,24,1,250,1,254,0,7,135, + 128,14,1,192,28,0,224,56,0,112,56,0,112,112,0,56, + 112,0,56,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,240,0,60,240,0,60,112,0,56,112,0,56,56,0, + 112,56,0,112,28,0,224,14,1,192,7,135,128,1,254,0, + 0,124,0,0,62,0,0,31,0,0,15,128,0,3,224,0, + 0,124,21,23,69,22,1,0,255,248,0,60,62,0,28,15, + 0,28,7,128,28,7,128,28,3,128,28,3,128,28,3,128, + 28,7,128,28,7,0,28,30,0,31,248,0,28,240,0,28, + 120,0,28,60,0,28,60,0,28,30,0,28,15,0,28,15, + 128,28,7,128,28,3,192,62,1,224,255,129,248,15,23,46, + 18,1,0,7,228,28,60,56,28,112,12,112,4,112,6,120, + 0,124,0,62,0,31,128,15,224,7,240,1,248,0,124,0, + 62,0,30,128,14,128,14,192,14,224,12,112,28,124,120,103, + 240,19,23,69,20,1,0,255,255,224,240,225,224,192,224,96, + 192,224,96,128,224,32,128,224,32,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,1,240,0,7,252,0,22,23,69,24, + 1,0,255,129,252,62,0,112,28,0,32,28,0,32,28,0, + 32,28,0,32,28,0,32,28,0,32,28,0,32,28,0,32, + 28,0,32,28,0,32,28,0,32,28,0,32,28,0,32,28, + 0,32,28,0,32,28,0,32,30,0,96,14,0,64,15,0, + 192,7,195,128,1,254,0,22,23,69,23,1,0,255,1,252, + 124,0,112,60,0,96,30,0,64,30,0,192,14,0,192,15, + 0,128,15,1,128,7,1,128,7,129,0,3,131,0,3,195, + 0,3,194,0,1,198,0,1,230,0,0,228,0,0,236,0, + 0,124,0,0,120,0,0,120,0,0,56,0,0,48,0,0, + 16,0,31,23,92,32,1,0,255,63,224,254,124,15,128,120, + 60,7,0,48,28,7,128,48,30,7,128,96,30,3,128,96, + 14,3,192,96,15,3,192,192,7,3,224,192,7,135,224,192, + 7,134,225,128,3,132,241,128,3,204,241,128,3,204,115,0, + 1,216,123,0,1,216,59,0,1,248,62,0,0,240,62,0, + 0,240,28,0,0,224,28,0,0,96,28,0,0,96,8,0, + 0,64,8,0,22,23,69,24,1,0,255,195,252,63,0,240, + 31,0,224,15,0,192,7,129,128,7,131,0,3,198,0,1, + 230,0,1,236,0,0,248,0,0,120,0,0,120,0,0,124, + 0,0,222,0,1,158,0,1,143,0,3,15,128,6,7,128, + 14,3,192,12,3,224,24,1,224,56,1,240,254,7,252,22, + 23,69,24,1,0,255,192,252,63,0,56,30,0,48,15,0, + 96,15,128,192,7,128,128,3,193,128,3,195,0,1,227,0, + 0,246,0,0,252,0,0,124,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,124,0,1,255,0,19,23,69,20,1,0, + 63,255,224,56,3,192,96,7,128,96,7,128,64,15,0,64, + 30,0,0,30,0,0,60,0,0,120,0,0,120,0,0,240, + 0,1,224,0,1,224,0,3,192,0,3,192,0,7,128,0, + 15,0,0,15,0,32,30,0,32,60,0,96,60,0,96,120, + 1,192,255,255,192,7,28,28,11,3,251,254,240,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,240,254,13,23,46,9,254,0,192,0,224, + 0,96,0,112,0,48,0,56,0,24,0,28,0,12,0,14, + 0,6,0,7,0,3,0,3,128,1,128,1,192,0,192,0, + 224,0,96,0,112,0,48,0,56,0,24,7,28,28,11,1, + 251,254,30,14,14,14,14,14,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,30,254,13,13,26, + 16,1,10,7,0,7,0,15,128,13,128,24,192,24,192,48, + 96,48,96,112,112,96,48,224,56,192,24,192,24,17,2,6, + 17,0,251,255,255,128,255,255,128,7,6,6,11,1,17,192, + 224,112,24,12,6,13,15,30,15,1,0,31,128,49,192,112, + 224,112,224,96,224,3,224,14,224,24,224,48,224,96,224,224, + 224,225,224,242,232,126,248,60,112,15,23,46,16,0,0,24, + 0,248,0,56,0,56,0,56,0,56,0,56,0,56,0,57, + 240,59,248,60,124,56,28,56,30,56,14,56,14,56,14,56, + 14,56,14,56,12,56,28,56,24,60,112,15,224,12,15,30, + 15,1,0,15,128,56,192,112,224,96,224,224,96,192,0,192, + 0,192,0,192,0,224,0,224,16,112,48,124,96,63,192,31, + 0,15,23,46,16,1,0,0,24,0,248,0,56,0,56,0, + 56,0,56,0,56,0,56,15,184,24,248,48,120,112,56,96, + 56,224,56,224,56,224,56,224,56,224,56,240,56,112,120,120, + 248,63,190,15,48,12,15,30,15,1,0,15,128,57,192,96, + 224,96,112,192,112,255,240,192,0,192,0,192,0,224,0,224, + 16,112,48,124,96,63,192,15,0,12,23,46,11,0,0,3, + 224,6,112,12,112,12,48,28,0,28,0,28,0,28,0,255, + 192,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,62,0,255,128,14,22,44, + 16,1,249,15,192,24,252,48,124,112,48,112,48,112,48,112, + 48,56,112,28,224,15,128,24,0,48,0,120,0,127,224,63, + 248,31,252,96,12,192,12,192,28,240,56,127,224,31,128,16, + 23,46,16,0,0,24,0,248,0,56,0,56,0,56,0,56, + 0,56,0,56,0,57,240,59,248,62,60,60,28,56,28,56, + 28,56,28,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,254,127,7,23,23,9,1,0,56,56,56,0,0,0,0, + 0,56,248,56,56,56,56,56,56,56,56,56,56,56,56,254, + 8,30,30,9,255,249,7,7,7,0,0,0,0,0,3,31, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, + 6,198,236,120,16,23,46,16,0,0,24,0,248,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,254,56,112,56,96, + 56,192,57,128,63,0,62,0,63,0,59,128,57,192,56,224, + 56,240,56,120,56,60,254,127,7,23,23,9,1,0,24,248, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,254,25,15,60,26,0,0,24,240,120,0,251, + 249,252,0,62,63,30,0,60,30,14,0,56,28,14,0,56, + 28,14,0,56,28,14,0,56,28,14,0,56,28,14,0,56, + 28,14,0,56,28,14,0,56,28,14,0,56,28,14,0,56, + 28,14,0,254,127,63,128,16,15,30,16,0,0,24,240,251, + 248,60,60,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,56,28,56,28,56,28,56,28,254,127,14,15,30,16,1, + 0,7,128,24,224,48,112,112,56,96,56,224,28,224,28,224, + 28,224,28,224,28,112,24,112,56,56,48,28,96,7,128,15, + 22,44,17,0,249,25,224,251,248,60,124,56,28,56,30,56, + 14,56,14,56,14,56,14,56,14,56,12,56,28,60,24,62, + 112,59,192,56,0,56,0,56,0,56,0,56,0,56,0,255, + 0,15,22,44,17,1,249,15,200,28,120,48,56,112,56,96, + 56,224,56,224,56,224,56,224,56,224,56,240,56,112,120,120, + 248,63,184,31,56,0,56,0,56,0,56,0,56,0,56,0, + 56,1,254,10,15,30,11,1,0,25,128,251,192,63,192,60, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,0,254,0,10,15,30,13,1,0,62,128,99, + 128,193,128,192,128,224,128,240,0,124,0,63,0,15,128,3, + 192,129,192,128,192,192,192,225,128,191,0,9,19,38,9,0, + 0,8,0,8,0,24,0,56,0,255,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,128,63,0,28,0,16,15,30,17,0,0,248,124,56, + 28,56,28,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,56,28,56,60,60,92,31,223,15,140,15,15,30,17,1, + 0,254,62,120,12,56,8,60,24,28,24,28,16,14,48,14, + 32,7,96,7,64,7,192,3,192,3,128,1,128,1,0,21, + 15,45,24,1,0,253,252,120,112,112,48,112,112,48,56,48, + 32,56,56,96,24,56,64,28,120,64,28,92,192,12,204,128, + 14,143,128,15,143,0,7,7,0,7,7,0,3,6,0,2, + 2,0,14,15,30,17,1,0,252,248,56,96,60,192,28,128, + 30,128,15,0,7,0,7,128,15,128,11,192,25,224,16,224, + 48,112,96,120,240,252,15,22,44,17,1,249,254,30,120,12, + 56,12,60,8,28,24,30,24,14,16,14,48,7,32,7,32, + 3,224,3,192,1,192,1,128,1,128,1,0,1,0,3,0, + 2,0,62,0,124,0,56,0,13,15,30,15,1,0,127,240, + 96,240,64,224,65,224,3,192,3,128,7,128,7,0,14,0, + 30,0,28,8,56,8,120,8,112,24,255,240,8,28,28,16, + 4,251,15,28,56,56,56,56,56,56,56,56,56,56,56,48, + 224,48,56,56,56,56,56,56,56,56,56,24,28,15,2,23, + 23,7,2,0,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,8,28,28,16,4, + 251,240,56,28,28,28,28,28,28,28,28,28,28,28,12,7, + 12,28,28,28,28,28,28,28,28,28,24,56,240,16,4,8, + 18,1,7,62,3,127,135,225,254,192,124,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,8, + 0,1,4,22,22,11,3,249,96,240,240,96,0,0,96,96, + 96,96,96,96,96,96,96,96,96,240,240,240,240,96,12,23, + 46,17,2,252,0,64,0,64,0,128,0,128,15,128,56,224, + 113,112,97,112,225,48,195,0,194,0,194,0,230,0,228,0, + 116,16,124,48,63,224,31,192,31,0,16,0,48,0,32,0, + 32,0,15,23,46,17,1,0,1,240,3,152,6,28,6,28, + 14,24,14,0,14,0,14,0,14,0,14,0,255,224,255,224, + 15,0,7,0,7,0,7,0,7,0,6,0,6,2,126,6, + 199,252,207,248,120,240,16,17,34,17,0,3,199,227,255,255, + 62,124,120,30,112,14,224,7,224,7,192,3,192,3,192,3, + 224,7,224,7,112,14,120,30,62,124,255,255,199,227,17,23, + 69,17,0,0,254,31,128,120,7,0,56,6,0,60,4,0, + 28,12,0,30,8,0,14,24,0,15,16,0,7,48,0,7, + 160,0,3,224,0,3,192,0,63,254,0,1,192,0,1,192, + 0,1,192,0,63,254,0,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,7,240,0,2,23,23,7,2,0,192, + 192,192,192,192,192,192,192,192,0,0,0,0,0,192,192,192, + 192,192,192,192,192,192,12,28,56,17,2,251,31,128,49,192, + 97,192,97,192,113,128,56,0,60,0,30,0,15,0,63,128, + 99,192,193,224,192,224,192,112,224,48,112,48,120,48,60,96, + 31,192,15,0,7,128,3,192,1,192,24,224,56,96,56,96, + 56,192,31,128,9,3,6,11,1,18,227,128,227,128,227,128, + 22,23,69,25,1,0,0,252,0,3,255,0,14,1,192,24, + 0,96,48,0,48,96,0,24,96,127,24,193,199,12,195,131, + 12,195,1,12,199,0,12,199,0,12,199,0,12,199,0,12, + 199,128,12,67,129,24,97,230,24,96,124,48,48,0,48,24, + 0,96,14,1,192,7,255,0,1,252,0,9,13,26,9,0, + 10,60,0,78,0,198,0,198,0,30,0,102,0,198,0,198, + 0,239,128,123,0,0,0,0,0,255,0,13,13,26,17,1, + 1,2,8,6,24,12,48,24,96,56,224,113,192,227,128,113, + 192,56,224,24,96,12,48,6,24,2,8,16,9,18,18,1, + 4,255,255,255,255,0,3,0,3,0,3,0,3,0,3,0, + 3,0,3,8,2,2,11,1,7,255,255,22,23,69,25,1, + 0,0,254,0,3,255,0,14,1,192,24,0,96,48,0,48, + 35,252,24,96,199,24,192,195,12,192,195,12,192,195,12,192, + 198,12,192,248,12,192,220,12,192,204,12,192,206,12,64,198, + 8,96,199,24,35,227,208,48,0,48,24,0,96,14,1,192, + 3,255,0,0,252,0,10,2,4,11,0,18,255,192,255,192, + 10,10,20,13,1,13,30,0,63,0,97,128,192,192,192,192, + 192,192,192,192,97,128,63,0,30,0,16,20,40,19,1,0, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,255,255, + 255,255,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,0,0,255,255,255,255,9,14,28,10,0,9,60,0, + 78,0,135,0,3,0,3,0,7,0,6,0,12,0,24,0, + 16,0,32,0,64,128,255,0,254,0,9,14,28,10,0,9, + 62,0,71,0,131,0,3,0,3,0,6,0,60,0,7,0, + 3,128,1,128,1,128,193,128,227,0,126,0,7,6,6,11, + 3,17,6,14,28,48,96,192,16,22,44,17,0,249,248,124, + 56,28,56,28,56,28,56,28,56,28,56,28,56,28,56,28, + 56,28,56,28,56,60,60,124,63,223,47,152,32,0,112,0, + 112,0,112,0,112,0,112,0,32,0,13,29,58,15,1,250, + 7,248,30,32,62,32,126,32,126,32,254,32,254,32,254,32, + 254,32,126,32,126,32,62,32,30,32,14,32,2,32,2,32, + 2,32,2,32,2,32,2,32,2,32,2,32,2,32,2,32, + 2,32,2,32,2,32,2,32,2,32,4,4,4,8,2,7, + 96,240,240,96,6,7,7,11,2,249,32,96,120,28,12,28, + 248,6,14,14,10,2,9,48,240,48,48,48,48,48,48,48, + 48,48,48,48,252,9,13,26,10,0,10,62,0,99,0,195, + 128,193,128,193,128,193,128,193,128,225,128,99,0,62,0,0, + 0,0,0,255,128,13,13,26,16,2,1,130,0,195,0,97, + 128,48,192,56,224,28,112,14,56,28,112,56,224,48,192,97, + 128,195,0,130,0,22,23,69,25,2,0,48,0,96,240,0, + 96,48,0,192,48,1,192,48,1,128,48,3,0,48,3,0, + 48,6,0,48,14,0,48,12,16,48,24,48,48,24,112,48, + 48,112,252,96,240,0,97,176,0,193,48,1,194,48,1,134, + 48,3,12,48,3,31,252,6,0,48,12,0,48,12,0,48, + 23,23,69,25,1,0,48,0,192,240,0,192,48,1,128,48, + 3,128,48,3,0,48,6,0,48,6,0,48,12,0,48,28, + 0,48,24,240,48,49,56,48,50,28,48,96,12,252,224,12, + 0,192,28,1,128,24,3,128,48,3,0,96,6,0,64,6, + 0,128,12,1,2,24,3,252,24,3,248,24,23,69,25,0, + 0,62,0,24,71,0,24,131,0,48,3,0,112,3,0,96, + 6,0,192,60,0,192,7,1,128,3,131,128,1,131,4,1, + 134,12,193,134,28,227,12,28,126,24,60,0,24,108,0,48, + 76,0,112,140,0,97,140,0,195,12,0,199,255,1,128,12, + 3,0,12,3,0,12,11,22,44,14,1,249,6,0,15,0, + 15,0,6,0,0,0,2,0,2,0,6,0,4,0,12,0, + 24,0,56,0,48,0,112,0,112,0,224,192,224,224,224,224, + 112,96,112,96,57,192,31,0,22,30,90,24,1,0,6,0, + 0,7,0,0,3,128,0,0,192,0,0,96,0,0,48,0, + 0,0,0,0,48,0,0,48,0,0,112,0,0,120,0,0, + 120,0,0,252,0,0,220,0,0,156,0,1,142,0,1,14, + 0,3,15,0,3,7,0,2,7,0,6,7,128,6,3,128, + 15,255,192,12,3,192,24,1,192,24,1,224,48,1,224,48, + 0,240,112,0,240,252,3,252,22,30,90,24,1,0,0,1, + 128,0,3,128,0,7,0,0,12,0,0,24,0,0,48,0, + 0,0,0,0,48,0,0,48,0,0,112,0,0,120,0,0, + 120,0,0,252,0,0,220,0,0,156,0,1,142,0,1,14, + 0,3,15,0,3,7,0,2,7,0,6,7,128,6,3,128, + 15,255,192,12,3,192,24,1,192,24,1,224,48,1,224,48, + 0,240,112,0,240,252,3,252,22,30,90,24,1,0,0,48, + 0,0,120,0,0,252,0,1,206,0,3,3,0,2,1,0, + 0,0,0,0,48,0,0,48,0,0,112,0,0,120,0,0, + 120,0,0,252,0,0,220,0,0,156,0,1,142,0,1,14, + 0,3,15,0,3,7,0,2,7,0,6,7,128,6,3,128, + 15,255,192,12,3,192,24,1,192,24,1,224,48,1,224,48, + 0,240,112,0,240,252,3,252,22,28,84,24,1,0,0,224, + 128,1,249,128,3,63,0,2,14,0,0,0,0,0,48,0, + 0,48,0,0,112,0,0,120,0,0,120,0,0,252,0,0, + 220,0,0,156,0,1,142,0,1,14,0,3,15,0,3,7, + 0,2,7,0,6,7,128,6,3,128,15,255,192,12,3,192, + 24,1,192,24,1,224,48,1,224,48,0,240,112,0,240,252, + 3,252,22,28,84,24,1,0,1,199,0,1,199,0,1,199, + 0,0,0,0,0,0,0,0,48,0,0,48,0,0,112,0, + 0,120,0,0,120,0,0,252,0,0,220,0,0,156,0,1, + 142,0,1,14,0,3,15,0,3,7,0,2,7,0,6,7, + 128,6,3,128,15,255,192,12,3,192,24,1,192,24,1,224, + 48,1,224,48,0,240,112,0,240,252,3,252,22,30,90,24, + 1,0,0,112,0,0,248,0,1,140,0,1,4,0,1,140, + 0,0,248,0,0,112,0,0,0,0,0,48,0,0,48,0, + 0,120,0,0,120,0,0,252,0,0,220,0,0,156,0,1, + 142,0,1,14,0,3,15,0,3,7,0,2,7,0,6,7, + 128,6,3,128,15,255,192,12,3,192,24,1,192,24,1,224, + 48,1,224,48,0,240,112,0,240,252,3,252,28,23,92,30, + 1,0,0,255,255,224,0,31,129,224,0,31,0,96,0,55, + 0,32,0,55,0,32,0,103,0,0,0,103,0,0,0,71, + 0,128,0,199,0,128,0,199,1,128,1,135,3,128,1,135, + 255,128,3,7,3,128,3,7,1,128,7,255,0,128,6,7, + 0,128,12,7,0,0,12,7,0,16,24,7,0,16,24,7, + 0,48,48,7,0,96,48,15,129,224,254,63,255,224,20,30, + 90,22,1,249,1,255,16,7,131,240,14,0,240,28,0,112, + 56,0,48,56,0,48,112,0,16,112,0,16,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,112,0,0,112,0,0,56,0,0,56,0,16,28,0,48, + 14,0,96,7,131,192,1,255,0,0,64,0,0,192,0,0, + 240,0,0,56,0,0,24,0,0,56,0,1,240,0,19,30, + 90,20,1,0,3,0,0,3,128,0,1,192,0,0,96,0, + 0,48,0,0,24,0,0,0,0,255,255,192,62,3,192,28, + 0,192,28,0,64,28,0,64,28,0,0,28,0,0,28,0, + 0,28,1,0,28,1,0,28,3,0,31,255,0,28,3,0, + 28,1,0,28,1,0,28,0,0,28,0,0,28,0,32,28, + 0,32,28,0,96,28,0,192,62,3,192,255,255,192,19,30, + 90,20,1,0,0,6,0,0,14,0,0,28,0,0,48,0, + 0,96,0,0,192,0,0,0,0,255,255,192,62,3,192,28, + 0,192,28,0,64,28,0,64,28,0,0,28,0,0,28,0, + 0,28,1,0,28,1,0,28,3,0,31,255,0,28,3,0, + 28,1,0,28,1,0,28,0,0,28,0,0,28,0,32,28, + 0,32,28,0,96,28,0,192,62,3,192,255,255,192,19,30, + 90,20,1,0,0,48,0,0,120,0,0,252,0,1,206,0, + 3,3,0,2,1,0,0,0,0,255,255,192,62,3,192,28, + 0,192,28,0,64,28,0,64,28,0,0,28,0,0,28,0, + 0,28,1,0,28,1,0,28,3,0,31,255,0,28,3,0, + 28,1,0,28,1,0,28,0,0,28,0,0,28,0,32,28, + 0,32,28,0,96,28,0,192,62,3,192,255,255,192,19,28, + 84,20,1,0,3,142,0,3,142,0,3,142,0,0,0,0, + 0,0,0,255,255,192,62,3,192,28,0,192,28,0,64,28, + 0,64,28,0,0,28,0,0,28,0,0,28,1,0,28,1, + 0,28,3,0,31,255,0,28,3,0,28,1,0,28,1,0, + 28,0,0,28,0,0,28,0,32,28,0,32,28,0,96,28, + 0,192,62,3,192,255,255,192,9,30,60,11,1,0,96,0, + 112,0,56,0,12,0,6,0,3,0,0,0,255,128,62,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,62,0,255,128,9,30,60,11,1,0, + 1,128,3,128,7,0,12,0,24,0,48,0,0,0,255,128, + 62,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,62,0,255,128,10,30,60,11, + 1,0,12,0,30,0,63,0,115,128,192,192,128,64,0,0, + 255,128,62,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,62,0,255,128,9,28, + 56,11,1,0,227,128,227,128,227,128,0,0,0,0,255,128, + 62,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,62,0,255,128,22,23,69,24, + 1,0,255,254,0,62,7,128,28,1,192,28,0,224,28,0, + 112,28,0,112,28,0,56,28,0,56,28,0,60,28,0,60, + 28,0,60,255,192,60,255,192,60,28,0,60,28,0,60,28, + 0,56,28,0,56,28,0,112,28,0,112,28,0,224,28,1, + 192,62,7,128,255,254,0,22,29,87,24,1,0,0,224,128, + 1,249,128,3,63,0,2,14,0,0,0,0,0,0,0,248, + 1,252,60,0,112,30,0,32,31,0,32,31,0,32,23,128, + 32,19,192,32,19,192,32,17,224,32,16,240,32,16,248,32, + 16,120,32,16,60,32,16,30,32,16,31,32,16,15,32,16, + 7,160,16,3,224,16,1,224,16,1,224,16,0,224,56,0, + 96,254,0,32,22,30,90,24,1,0,3,0,0,3,128,0, + 1,192,0,0,96,0,0,48,0,0,24,0,0,0,0,1, + 254,0,7,135,128,14,1,192,28,0,224,56,0,112,56,0, + 112,112,0,56,112,0,56,240,0,60,240,0,60,240,0,60, + 240,0,60,240,0,60,240,0,60,240,0,60,112,0,56,112, + 0,56,56,0,112,56,0,112,28,0,224,14,1,192,7,135, + 128,1,254,0,22,30,90,24,1,0,0,1,128,0,3,128, + 0,7,0,0,12,0,0,24,0,0,48,0,0,0,0,1, + 254,0,7,135,128,14,1,192,28,0,224,56,0,112,56,0, + 112,112,0,56,112,0,56,240,0,60,240,0,60,240,0,60, + 240,0,60,240,0,60,240,0,60,240,0,60,112,0,56,112, + 0,56,56,0,112,56,0,112,28,0,224,14,1,192,7,135, + 128,1,254,0,22,30,90,24,1,0,0,48,0,0,120,0, + 0,252,0,1,206,0,3,3,0,2,1,0,0,0,0,1, + 254,0,7,135,128,14,1,192,28,0,224,56,0,112,56,0, + 112,112,0,56,112,0,56,240,0,60,240,0,60,240,0,60, + 240,0,60,240,0,60,240,0,60,240,0,60,112,0,56,112, + 0,56,56,0,112,56,0,112,28,0,224,14,1,192,7,135, + 128,1,254,0,22,28,84,24,1,0,0,224,128,1,249,128, + 3,63,0,2,14,0,0,0,0,1,254,0,7,135,128,14, + 1,192,28,0,224,56,0,112,56,0,112,112,0,56,112,0, + 56,240,0,60,240,0,60,240,0,60,240,0,60,240,0,60, + 240,0,60,240,0,60,112,0,56,112,0,56,56,0,112,56, + 0,112,28,0,224,14,1,192,7,135,128,1,254,0,22,28, + 84,24,1,0,1,199,0,1,199,0,1,199,0,0,0,0, + 0,0,0,1,254,0,7,135,128,14,1,192,28,0,224,56, + 0,112,56,0,112,112,0,56,112,0,56,240,0,60,240,0, + 60,240,0,60,240,0,60,240,0,60,240,0,60,240,0,60, + 112,0,56,112,0,56,56,0,112,56,0,112,28,0,224,14, + 1,192,7,135,128,1,254,0,16,16,32,19,1,0,64,2, + 224,7,112,14,56,28,28,56,14,112,7,224,3,192,3,192, + 7,224,14,112,28,56,56,28,112,14,224,7,64,2,22,27, + 81,24,1,254,0,0,16,0,0,48,1,254,96,7,135,192, + 14,1,192,28,1,224,56,3,112,56,2,112,112,6,56,112, + 12,56,240,8,60,240,24,60,240,48,60,240,96,60,240,64, + 60,240,192,60,240,128,60,113,128,56,115,0,56,58,0,112, + 62,0,112,28,0,224,30,1,192,55,135,128,33,254,0,96, + 0,0,64,0,0,22,30,90,24,1,0,0,192,0,0,224, + 0,0,112,0,0,24,0,0,12,0,0,6,0,0,0,0, + 255,129,252,62,0,112,28,0,32,28,0,32,28,0,32,28, + 0,32,28,0,32,28,0,32,28,0,32,28,0,32,28,0, + 32,28,0,32,28,0,32,28,0,32,28,0,32,28,0,32, + 28,0,32,28,0,96,30,0,96,14,0,64,15,0,192,7, + 195,128,1,254,0,22,30,90,24,1,0,0,1,128,0,3, + 128,0,7,0,0,12,0,0,24,0,0,48,0,0,0,0, + 255,129,252,62,0,112,28,0,32,28,0,32,28,0,32,28, + 0,32,28,0,32,28,0,32,28,0,32,28,0,32,28,0, + 32,28,0,32,28,0,32,28,0,32,28,0,32,28,0,32, + 28,0,32,28,0,96,30,0,96,14,0,64,15,0,192,7, + 195,128,1,254,0,22,30,90,24,1,0,0,24,0,0,60, + 0,0,126,0,0,231,0,1,129,128,1,0,128,0,0,0, + 255,129,252,62,0,112,28,0,32,28,0,32,28,0,32,28, + 0,32,28,0,32,28,0,32,28,0,32,28,0,32,28,0, + 32,28,0,32,28,0,32,28,0,32,28,0,32,28,0,32, + 28,0,32,28,0,96,30,0,96,14,0,64,15,0,192,7, + 195,128,1,254,0,22,28,84,24,1,0,1,199,0,1,199, + 0,1,199,0,0,0,0,0,0,0,255,129,252,62,0,112, + 28,0,32,28,0,32,28,0,32,28,0,32,28,0,32,28, + 0,32,28,0,32,28,0,32,28,0,32,28,0,32,28,0, + 32,28,0,32,28,0,32,28,0,32,28,0,32,28,0,96, + 30,0,96,14,0,64,15,0,192,7,195,128,1,254,0,22, + 30,90,24,1,0,0,0,192,0,1,192,0,3,128,0,6, + 0,0,12,0,0,24,0,0,0,0,255,192,252,63,0,56, + 30,0,48,15,0,96,15,128,192,7,128,128,3,193,128,3, + 195,0,1,227,0,0,246,0,0,252,0,0,124,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,124,0,1,255,0,18, + 23,69,19,1,0,255,128,0,62,0,0,28,0,0,28,0, + 0,28,0,0,31,252,0,28,31,0,28,7,128,28,3,128, + 28,3,192,28,1,192,28,1,192,28,1,192,28,3,192,28, + 3,128,28,7,128,28,31,0,31,252,0,28,0,0,28,0, + 0,28,0,0,62,0,0,255,128,0,15,23,46,17,1,0, + 7,192,12,112,24,56,24,56,56,56,56,56,56,56,56,56, + 56,48,56,96,57,192,56,120,56,28,56,30,56,14,56,14, + 56,14,56,14,56,14,59,12,59,156,59,152,249,240,13,23, + 46,15,1,0,24,0,28,0,14,0,3,0,1,128,0,192, + 0,0,0,0,31,128,49,192,112,224,112,224,96,224,3,224, + 14,224,24,224,48,224,96,224,224,224,225,224,242,232,126,248, + 60,112,13,23,46,15,1,0,0,192,1,192,3,128,6,0, + 12,0,24,0,0,0,0,0,31,128,49,192,112,224,112,224, + 96,224,3,224,14,224,24,224,48,224,96,224,224,224,225,224, + 242,232,126,248,60,112,13,23,46,15,1,0,6,0,15,0, + 31,128,57,192,96,96,64,32,0,0,0,0,31,128,49,192, + 112,224,112,224,96,224,3,224,14,224,24,224,48,224,96,224, + 224,224,225,224,242,232,126,248,60,112,13,21,42,15,1,0, + 28,16,62,48,99,224,65,192,0,0,0,0,31,128,49,192, + 112,224,112,224,96,224,3,224,14,224,24,224,48,224,96,224, + 224,224,225,224,242,232,126,248,60,112,13,21,42,15,1,0, + 56,224,56,224,56,224,0,0,0,0,0,0,31,128,49,192, + 112,224,112,224,96,224,3,224,14,224,24,224,48,224,96,224, + 224,224,225,224,242,232,126,248,60,112,13,23,46,15,1,0, + 7,0,15,128,24,192,16,64,24,192,15,128,7,0,0,0, + 31,128,49,192,112,224,112,224,96,224,3,224,14,224,24,224, + 48,224,96,224,224,224,225,224,242,232,126,248,60,112,19,15, + 45,22,1,0,31,159,0,49,249,192,112,224,192,112,224,224, + 96,224,224,3,255,224,14,224,0,24,224,0,48,224,0,96, + 224,0,224,224,32,225,240,96,243,120,192,126,63,128,60,31, + 0,12,22,44,15,1,249,15,128,56,192,112,224,96,224,224, + 96,192,0,192,0,192,0,192,0,224,0,224,16,112,48,124, + 96,63,192,15,0,4,0,12,0,15,0,3,128,1,128,3, + 128,31,0,12,23,46,15,1,0,48,0,56,0,28,0,6, + 0,3,0,1,128,0,0,0,0,15,128,57,192,96,224,96, + 112,192,112,255,240,192,0,192,0,192,0,224,0,224,16,112, + 48,124,96,63,192,15,0,12,23,46,15,1,0,1,128,3, + 128,7,0,12,0,24,0,48,0,0,0,0,0,15,128,57, + 192,96,224,96,112,192,112,255,240,192,0,192,0,192,0,224, + 0,224,16,112,48,124,96,63,192,15,0,12,23,46,15,1, + 0,6,0,15,0,31,128,57,192,96,96,64,32,0,0,0, + 0,15,128,57,192,96,224,96,112,192,112,255,240,192,0,192, + 0,192,0,224,0,224,16,112,48,124,96,63,192,15,0,12, + 21,42,15,1,0,56,224,56,224,56,224,0,0,0,0,0, + 0,15,128,57,192,96,224,96,112,192,112,255,240,192,0,192, + 0,192,0,224,0,224,16,112,48,124,96,63,192,15,0,7, + 23,23,9,1,0,192,224,112,24,12,6,0,0,24,248,56, + 56,56,56,56,56,56,56,56,56,56,56,254,7,23,23,9, + 1,0,6,14,28,48,96,192,0,0,24,248,56,56,56,56, + 56,56,56,56,56,56,56,56,254,10,23,46,9,0,0,12, + 0,30,0,63,0,115,128,192,192,128,64,0,0,0,0,12, + 0,124,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,127,0,9,21,42, + 9,0,0,227,128,227,128,227,128,0,0,0,0,0,0,12, + 0,124,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,127,0,14,23,46, + 17,1,0,16,0,56,0,28,112,15,240,15,0,127,128,49, + 192,0,224,7,240,24,240,48,120,112,56,96,60,224,28,224, + 28,224,28,224,28,224,28,112,24,112,56,56,48,28,96,7, + 128,16,21,42,16,0,0,14,8,31,24,49,240,32,224,0, + 0,0,0,24,240,251,248,62,60,60,28,56,28,56,28,56, + 28,56,28,56,28,56,28,56,28,56,28,56,28,56,28,254, + 127,14,23,46,16,1,0,24,0,28,0,14,0,3,0,1, + 128,0,192,0,0,0,0,7,128,24,224,48,112,112,56,96, + 56,224,28,224,28,224,28,224,28,224,28,112,24,112,56,56, + 48,28,96,7,128,14,23,46,16,1,0,0,192,1,192,3, + 128,6,0,12,0,24,0,0,0,0,0,7,128,24,224,48, + 112,112,56,96,56,224,28,224,28,224,28,224,28,224,28,112, + 24,112,56,56,48,28,96,7,128,14,23,46,16,1,0,3, + 0,7,128,15,192,28,224,48,48,32,16,0,0,0,0,7, + 128,24,224,48,112,112,56,96,56,224,28,224,28,224,28,224, + 28,224,28,112,24,112,56,56,48,28,96,7,128,14,21,42, + 16,1,0,28,16,62,48,99,224,65,192,0,0,0,0,7, + 128,24,224,48,112,112,56,96,56,224,28,224,28,224,28,224, + 28,224,28,112,24,112,56,56,48,28,96,7,128,14,21,42, + 16,1,0,56,224,56,224,56,224,0,0,0,0,0,0,7, + 128,24,224,48,112,112,56,96,56,224,28,224,28,224,28,224, + 28,224,28,112,24,112,56,56,48,28,96,7,128,16,17,34, + 19,1,0,1,128,3,192,3,192,1,128,0,0,0,0,0, + 0,255,255,255,255,0,0,0,0,0,0,0,0,1,128,3, + 192,3,192,1,128,14,21,42,17,1,253,0,24,0,16,0, + 48,7,160,24,224,48,240,112,184,97,184,225,28,225,28,227, + 28,226,28,230,28,116,24,116,56,60,48,28,96,31,128,48, + 0,32,0,96,0,16,23,46,17,0,0,12,0,14,0,7, + 0,1,128,0,192,0,96,0,0,0,0,248,124,56,28,56, + 28,56,28,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,56,60,60,124,31,223,15,152,16,23,46,17,0,0,0, + 96,0,224,1,192,3,0,6,0,12,0,0,0,0,0,248, + 124,56,28,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,56,28,56,28,56,60,60,124,31,223,15,152,16,23,46, + 17,0,0,1,128,3,192,7,224,14,112,24,24,16,8,0, + 0,0,0,248,124,56,28,56,28,56,28,56,28,56,28,56, + 28,56,28,56,28,56,28,56,28,56,60,60,124,31,223,15, + 152,16,21,42,17,0,0,28,112,28,112,28,112,0,0,0, + 0,0,0,248,124,56,28,56,28,56,28,56,28,56,28,56, + 28,56,28,56,28,56,28,56,28,56,60,60,124,31,223,15, + 152,15,30,60,17,0,249,0,24,0,56,0,112,0,192,1, + 128,3,0,0,0,0,0,254,30,120,12,56,12,60,8,28, + 24,30,24,14,16,14,48,7,32,7,32,3,224,3,192,1, + 192,1,128,1,128,1,128,1,0,3,0,2,0,62,0,124, + 0,56,0,15,30,60,17,0,249,24,0,248,0,56,0,56, + 0,56,0,56,0,56,0,56,0,57,240,59,248,62,124,60, + 28,56,30,56,14,56,14,56,14,56,14,56,14,56,12,56, + 28,60,24,62,48,59,224,56,0,56,0,56,0,56,0,56, + 0,56,0,255,0,15,28,56,17,1,249,28,112,28,112,28, + 112,0,0,0,0,0,0,254,30,120,12,56,12,60,8,28, + 24,30,24,14,16,14,48,7,32,7,32,3,224,3,192,1, + 192,1,128,1,128,1,0,1,0,3,0,2,0,62,0,124, + 0,56,0}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--34-240-100-100-P-170-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 23 + Calculated Max Values w=16 h=26 x= 4 y=10 dx=19 dy= 0 ascent=23 len=52 + Font Bounding box w=38 h=48 x=-5 y=-11 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =23 descent= 0 + X Font ascent =23 descent= 0 + Max Font ascent =23 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR24n[696] U8G_SECTION(".progmem.u8g_font_timR24n") = { + 0,38,48,251,245,23,0,0,0,0,42,57,0,23,253,23, + 0,12,13,26,17,2,10,6,0,15,0,6,0,198,48,246, + 240,118,224,15,0,118,224,246,240,198,48,6,0,15,0,6, + 0,16,16,32,19,1,1,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,255,255,255,255,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,4,7,7,8,2,253,96,240,240, + 112,16,32,64,8,2,2,11,1,7,255,255,4,4,4,8, + 2,0,96,240,240,96,10,26,52,9,0,253,0,192,0,192, + 1,128,1,128,3,128,3,0,3,0,3,0,6,0,6,0, + 6,0,14,0,12,0,12,0,28,0,24,0,24,0,24,0, + 48,0,48,0,48,0,112,0,96,0,96,0,192,0,192,0, + 14,23,46,16,1,0,7,128,28,224,56,112,48,48,112,56, + 112,56,96,24,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,24,112,56,112,56,48,48,56,112, + 28,224,7,128,9,23,46,16,4,0,12,0,28,0,124,0, + 220,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,62,0,255,128,15,23,46,16,0,0,7,224, + 15,240,28,248,48,60,32,60,96,28,64,28,0,28,0,28, + 0,24,0,56,0,48,0,96,0,96,0,192,1,128,3,0, + 6,0,12,2,24,6,63,252,127,248,255,248,12,23,46,16, + 2,0,15,128,63,192,97,224,192,224,128,224,0,224,0,192, + 0,192,1,128,3,0,7,192,31,224,1,240,0,112,0,112, + 0,48,0,48,0,48,0,112,0,96,224,192,243,128,127,0, + 14,23,46,16,1,0,0,96,0,224,0,224,1,224,1,96, + 3,96,6,96,4,96,12,96,24,96,16,96,48,96,96,96, + 64,96,255,252,255,252,255,252,0,96,0,96,0,96,0,96, + 0,96,0,96,13,23,46,16,1,0,15,248,31,240,31,224, + 16,0,48,0,32,0,126,0,127,128,127,192,7,224,1,224, + 0,240,0,112,0,112,0,48,0,48,0,48,0,48,0,96, + 0,96,224,192,243,128,126,0,14,23,46,16,1,0,0,120, + 1,192,3,128,15,0,30,0,28,0,56,0,120,0,112,0, + 115,192,247,240,248,120,224,56,224,60,224,28,224,28,224,28, + 224,28,112,28,112,24,56,56,28,96,7,192,14,23,46,16, + 1,0,63,252,127,252,96,24,192,24,128,56,0,48,0,48, + 0,48,0,96,0,96,0,96,0,224,0,192,0,192,1,192, + 1,128,1,128,1,128,3,0,3,0,3,0,7,0,6,0, + 13,23,46,16,2,0,31,128,56,224,112,112,224,48,224,48, + 224,48,224,112,240,96,124,192,63,0,31,128,15,192,27,224, + 113,240,96,240,224,120,192,120,192,56,192,56,224,56,96,112, + 112,224,31,192,14,23,46,16,1,0,7,128,24,224,48,112, + 112,56,96,56,224,28,224,28,224,28,224,28,224,28,240,28, + 112,28,120,60,62,252,15,184,0,56,0,112,0,112,0,224, + 1,192,3,128,15,0,120,0}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--34-240-100-100-P-170-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 23, '1' Height: 23 + Calculated Max Values w=31 h=30 x= 4 y=17 dx=32 dy= 0 ascent=25 len=112 + Font Bounding box w=38 h=48 x=-5 y=-11 + Calculated Min Values x=-2 y=-7 dx= 0 dy= 0 + Pure Font ascent =23 descent=-7 + X Font ascent =23 descent=-7 + Max Font ascent =25 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR24r[4764] U8G_SECTION(".progmem.u8g_font_timR24r") = { + 0,38,48,251,245,23,5,140,13,213,32,127,249,25,249,23, + 249,0,0,0,8,0,1,4,23,23,11,3,0,96,240,240, + 240,240,240,96,96,96,96,96,96,96,96,96,96,96,0,0, + 96,240,240,96,9,7,14,14,2,16,227,128,227,128,227,128, + 227,128,65,0,65,0,65,0,16,23,46,17,0,0,6,24, + 6,24,6,24,6,24,6,24,6,24,6,24,6,24,127,255, + 127,255,12,48,12,48,12,48,12,48,255,254,255,254,24,96, + 24,96,24,96,24,96,24,96,24,96,24,96,13,28,56,16, + 2,253,2,0,2,0,15,192,58,112,50,56,98,24,98,8, + 98,8,114,0,122,0,62,0,63,0,31,128,7,192,3,224, + 2,240,2,112,2,56,2,56,130,24,130,24,194,56,226,48, + 114,96,31,192,2,0,2,0,2,0,23,23,69,27,2,0, + 15,0,64,29,131,192,56,252,128,112,65,128,112,67,0,224, + 66,0,224,70,0,224,196,0,192,140,0,193,136,0,193,24, + 120,102,16,236,60,49,198,0,99,130,0,67,130,0,199,2, + 0,135,2,1,135,6,1,6,4,3,6,12,2,6,8,6, + 3,48,4,1,224,23,23,69,26,2,0,0,248,0,1,140, + 0,3,14,0,3,6,0,7,6,0,7,6,0,7,12,0, + 7,140,0,3,152,0,3,241,252,3,192,112,7,192,96,29, + 224,64,56,240,192,112,112,128,96,121,128,224,63,0,224,30, + 0,224,15,0,240,31,130,120,51,252,127,225,248,31,128,240, + 3,8,8,6,1,15,224,224,224,224,64,64,64,64,8,28, + 28,11,2,251,3,6,12,24,56,48,112,112,96,224,224,224, + 224,224,224,224,224,224,224,96,112,112,48,56,24,12,6,3, + 8,28,28,11,1,251,192,96,48,24,28,12,14,14,6,7, + 7,7,7,7,7,7,7,7,7,6,14,14,12,28,24,48, + 96,192,12,13,26,17,2,10,6,0,15,0,6,0,198,48, + 246,240,118,224,15,0,118,224,246,240,198,48,6,0,15,0, + 6,0,16,16,32,19,1,1,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,255,255,255,255,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,4,7,7,8,2,253,96,240, + 240,112,16,32,64,8,2,2,11,1,7,255,255,4,4,4, + 8,2,0,96,240,240,96,10,26,52,9,0,253,0,192,0, + 192,1,128,1,128,3,128,3,0,3,0,3,0,6,0,6, + 0,6,0,14,0,12,0,12,0,28,0,24,0,24,0,24, + 0,48,0,48,0,48,0,112,0,96,0,96,0,192,0,192, + 0,14,23,46,16,1,0,7,128,28,224,56,112,48,48,112, + 56,112,56,96,24,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,224,24,112,56,112,56,48,48,56, + 112,28,224,7,128,9,23,46,16,4,0,12,0,28,0,124, + 0,220,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,62,0,255,128,15,23,46,16,0,0,7, + 224,15,240,28,248,48,60,32,60,96,28,64,28,0,28,0, + 28,0,24,0,56,0,48,0,96,0,96,0,192,1,128,3, + 0,6,0,12,2,24,6,63,252,127,248,255,248,12,23,46, + 16,2,0,15,128,63,192,97,224,192,224,128,224,0,224,0, + 192,0,192,1,128,3,0,7,192,31,224,1,240,0,112,0, + 112,0,48,0,48,0,48,0,112,0,96,224,192,243,128,127, + 0,14,23,46,16,1,0,0,96,0,224,0,224,1,224,1, + 96,3,96,6,96,4,96,12,96,24,96,16,96,48,96,96, + 96,64,96,255,252,255,252,255,252,0,96,0,96,0,96,0, + 96,0,96,0,96,13,23,46,16,1,0,15,248,31,240,31, + 224,16,0,48,0,32,0,126,0,127,128,127,192,7,224,1, + 224,0,240,0,112,0,112,0,48,0,48,0,48,0,48,0, + 96,0,96,224,192,243,128,126,0,14,23,46,16,1,0,0, + 120,1,192,3,128,15,0,30,0,28,0,56,0,120,0,112, + 0,115,192,247,240,248,120,224,56,224,60,224,28,224,28,224, + 28,224,28,112,28,112,24,56,56,28,96,7,192,14,23,46, + 16,1,0,63,252,127,252,96,24,192,24,128,56,0,48,0, + 48,0,48,0,96,0,96,0,96,0,224,0,192,0,192,1, + 192,1,128,1,128,1,128,3,0,3,0,3,0,7,0,6, + 0,13,23,46,16,2,0,31,128,56,224,112,112,224,48,224, + 48,224,48,224,112,240,96,124,192,63,0,31,128,15,192,27, + 224,113,240,96,240,224,120,192,120,192,56,192,56,224,56,96, + 112,112,224,31,192,14,23,46,16,1,0,7,128,24,224,48, + 112,112,56,96,56,224,28,224,28,224,28,224,28,224,28,240, + 28,112,28,120,60,62,252,15,184,0,56,0,112,0,112,0, + 224,1,192,3,128,15,0,120,0,4,15,15,9,2,0,96, + 240,240,96,0,0,0,0,0,0,0,96,240,240,96,4,18, + 18,9,2,253,96,240,240,96,0,0,0,0,0,0,0,96, + 240,240,112,16,32,64,16,18,36,19,1,0,0,1,0,7, + 0,31,0,124,1,240,7,192,31,0,124,0,240,0,240,0, + 124,0,31,0,7,192,1,240,0,124,0,31,0,7,0,1, + 16,9,18,19,1,4,255,255,255,255,0,0,0,0,0,0, + 0,0,0,0,255,255,255,255,16,18,36,19,2,0,128,0, + 224,0,248,0,62,0,15,128,3,224,0,248,0,62,0,15, + 0,15,0,62,0,248,3,224,15,128,62,0,248,0,224,0, + 128,0,11,23,46,14,2,0,31,0,115,128,193,192,193,192, + 224,224,224,224,96,224,1,192,1,192,1,128,3,128,3,0, + 6,0,4,0,12,0,8,0,8,0,0,0,0,0,12,0, + 30,0,30,0,12,0,27,28,112,31,2,251,0,31,240,0, + 0,248,60,0,1,224,6,0,7,128,3,0,14,0,1,128, + 28,0,0,192,28,0,0,192,56,7,140,96,112,31,92,96, + 112,28,124,32,112,56,56,32,224,112,56,32,224,112,48,32, + 224,112,112,32,224,224,112,96,224,224,112,64,224,224,224,192, + 224,224,224,128,112,225,225,128,112,119,115,0,112,60,62,0, + 56,0,0,0,24,0,0,0,28,0,0,0,14,0,0,0, + 7,128,6,0,1,240,60,0,0,127,240,0,22,23,69,24, + 1,0,0,48,0,0,48,0,0,112,0,0,120,0,0,120, + 0,0,252,0,0,220,0,0,156,0,1,142,0,1,14,0, + 3,15,0,3,7,0,2,7,0,6,7,128,6,3,128,15, + 255,192,12,3,192,24,1,192,24,1,224,48,1,224,48,0, + 240,112,0,240,252,3,252,20,23,69,22,1,0,255,254,0, + 62,15,128,28,3,192,28,1,192,28,1,224,28,0,224,28, + 0,224,28,1,224,28,1,192,28,3,192,28,15,128,31,254, + 0,28,7,128,28,1,224,28,0,224,28,0,240,28,0,112, + 28,0,112,28,0,240,28,0,224,28,1,224,62,7,192,255, + 255,0,20,23,69,22,1,0,1,255,16,7,131,240,14,0, + 240,28,0,112,56,0,48,56,0,48,112,0,16,112,0,16, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,112,0,0,112,0,0,56,0,0,56,0, + 16,28,0,48,14,0,96,7,131,192,1,255,0,22,23,69, + 24,1,0,255,254,0,62,7,128,28,1,192,28,0,224,28, + 0,112,28,0,112,28,0,56,28,0,56,28,0,60,28,0, + 60,28,0,60,28,0,60,28,0,60,28,0,60,28,0,60, + 28,0,56,28,0,56,28,0,112,28,0,112,28,0,224,28, + 1,192,62,7,128,255,254,0,19,23,69,20,1,0,255,255, + 192,62,3,192,28,0,192,28,0,64,28,0,64,28,0,0, + 28,0,0,28,0,0,28,1,0,28,1,0,28,3,0,31, + 255,0,28,3,0,28,1,0,28,1,0,28,0,0,28,0, + 0,28,0,32,28,0,32,28,0,96,28,0,192,62,3,192, + 255,255,192,17,23,69,18,1,0,255,255,128,62,7,128,28, + 1,128,28,0,128,28,0,128,28,0,0,28,0,0,28,0, + 0,28,2,0,28,2,0,28,6,0,31,254,0,28,6,0, + 28,2,0,28,2,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,62,0,0,255,128,0,22,23, + 69,24,1,0,1,255,48,7,135,240,14,0,240,28,0,112, + 56,0,48,56,0,48,112,0,16,112,0,0,240,0,0,240, + 0,0,240,0,0,240,3,252,240,0,248,240,0,112,240,0, + 112,112,0,112,112,0,112,56,0,112,56,0,112,28,0,112, + 14,0,112,7,129,224,1,255,128,22,23,69,24,1,0,255, + 135,252,62,1,240,28,0,224,28,0,224,28,0,224,28,0, + 224,28,0,224,28,0,224,28,0,224,28,0,224,28,0,224, + 31,255,224,28,0,224,28,0,224,28,0,224,28,0,224,28, + 0,224,28,0,224,28,0,224,28,0,224,28,0,224,62,1, + 240,255,135,252,9,23,46,11,1,0,255,128,62,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,62,0,255,128,12,23,46,13,1,0,31,240, + 7,192,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,195,128,227,0,231,0,124,0,23,23,69,24, + 1,0,255,199,248,62,1,224,28,1,128,28,3,0,28,6, + 0,28,12,0,28,24,0,28,48,0,28,96,0,28,192,0, + 31,192,0,31,224,0,31,240,0,30,120,0,28,60,0,28, + 30,0,28,15,0,28,7,128,28,3,192,28,1,224,28,0, + 240,62,0,248,255,199,254,19,23,69,20,1,0,255,128,0, + 62,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,32,28,0,32,28,0,96,28,0,192,62,3,192,255, + 255,192,28,23,92,30,1,0,252,0,7,240,62,0,7,192, + 30,0,15,128,31,0,15,128,31,0,11,128,23,0,27,128, + 23,128,27,128,19,128,51,128,19,192,51,128,19,192,35,128, + 17,224,99,128,17,224,99,128,16,224,195,128,16,240,195,128, + 16,112,131,128,16,121,131,128,16,121,3,128,16,61,3,128, + 16,63,3,128,16,30,3,128,16,30,3,128,56,12,7,192, + 254,12,31,240,22,23,69,24,1,0,248,1,252,60,0,112, + 30,0,32,31,0,32,31,0,32,23,128,32,19,192,32,19, + 192,32,17,224,32,16,240,32,16,248,32,16,120,32,16,60, + 32,16,30,32,16,31,32,16,15,32,16,7,160,16,3,224, + 16,1,224,16,1,224,16,0,224,56,0,96,254,0,32,22, + 23,69,24,1,0,1,254,0,7,135,128,14,1,192,28,0, + 224,56,0,112,56,0,112,112,0,56,112,0,56,240,0,60, + 240,0,60,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,112,0,56,112,0,56,56,0,112,56,0,112,28,0, + 224,14,1,192,7,135,128,1,254,0,17,23,69,18,1,0, + 255,248,0,60,62,0,28,15,0,28,7,0,28,7,128,28, + 3,128,28,3,128,28,3,128,28,7,128,28,7,0,28,15, + 0,28,62,0,31,240,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,62, + 0,0,255,128,0,22,29,87,24,1,250,1,254,0,7,135, + 128,14,1,192,28,0,224,56,0,112,56,0,112,112,0,56, + 112,0,56,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,240,0,60,240,0,60,112,0,56,112,0,56,56,0, + 112,56,0,112,28,0,224,14,1,192,7,135,128,1,254,0, + 0,124,0,0,62,0,0,31,0,0,15,128,0,3,224,0, + 0,124,21,23,69,22,1,0,255,248,0,60,62,0,28,15, + 0,28,7,128,28,7,128,28,3,128,28,3,128,28,3,128, + 28,7,128,28,7,0,28,30,0,31,248,0,28,240,0,28, + 120,0,28,60,0,28,60,0,28,30,0,28,15,0,28,15, + 128,28,7,128,28,3,192,62,1,224,255,129,248,15,23,46, + 18,1,0,7,228,28,60,56,28,112,12,112,4,112,6,120, + 0,124,0,62,0,31,128,15,224,7,240,1,248,0,124,0, + 62,0,30,128,14,128,14,192,14,224,12,112,28,124,120,103, + 240,19,23,69,20,1,0,255,255,224,240,225,224,192,224,96, + 192,224,96,128,224,32,128,224,32,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,1,240,0,7,252,0,22,23,69,24, + 1,0,255,129,252,62,0,112,28,0,32,28,0,32,28,0, + 32,28,0,32,28,0,32,28,0,32,28,0,32,28,0,32, + 28,0,32,28,0,32,28,0,32,28,0,32,28,0,32,28, + 0,32,28,0,32,28,0,32,30,0,96,14,0,64,15,0, + 192,7,195,128,1,254,0,22,23,69,23,1,0,255,1,252, + 124,0,112,60,0,96,30,0,64,30,0,192,14,0,192,15, + 0,128,15,1,128,7,1,128,7,129,0,3,131,0,3,195, + 0,3,194,0,1,198,0,1,230,0,0,228,0,0,236,0, + 0,124,0,0,120,0,0,120,0,0,56,0,0,48,0,0, + 16,0,31,23,92,32,1,0,255,63,224,254,124,15,128,120, + 60,7,0,48,28,7,128,48,30,7,128,96,30,3,128,96, + 14,3,192,96,15,3,192,192,7,3,224,192,7,135,224,192, + 7,134,225,128,3,132,241,128,3,204,241,128,3,204,115,0, + 1,216,123,0,1,216,59,0,1,248,62,0,0,240,62,0, + 0,240,28,0,0,224,28,0,0,96,28,0,0,96,8,0, + 0,64,8,0,22,23,69,24,1,0,255,195,252,63,0,240, + 31,0,224,15,0,192,7,129,128,7,131,0,3,198,0,1, + 230,0,1,236,0,0,248,0,0,120,0,0,120,0,0,124, + 0,0,222,0,1,158,0,1,143,0,3,15,128,6,7,128, + 14,3,192,12,3,224,24,1,224,56,1,240,254,7,252,22, + 23,69,24,1,0,255,192,252,63,0,56,30,0,48,15,0, + 96,15,128,192,7,128,128,3,193,128,3,195,0,1,227,0, + 0,246,0,0,252,0,0,124,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,124,0,1,255,0,19,23,69,20,1,0, + 63,255,224,56,3,192,96,7,128,96,7,128,64,15,0,64, + 30,0,0,30,0,0,60,0,0,120,0,0,120,0,0,240, + 0,1,224,0,1,224,0,3,192,0,3,192,0,7,128,0, + 15,0,0,15,0,32,30,0,32,60,0,96,60,0,96,120, + 1,192,255,255,192,7,28,28,11,3,251,254,240,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,240,254,13,23,46,9,254,0,192,0,224, + 0,96,0,112,0,48,0,56,0,24,0,28,0,12,0,14, + 0,6,0,7,0,3,0,3,128,1,128,1,192,0,192,0, + 224,0,96,0,112,0,48,0,56,0,24,7,28,28,11,1, + 251,254,30,14,14,14,14,14,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,30,254,13,13,26, + 16,1,10,7,0,7,0,15,128,13,128,24,192,24,192,48, + 96,48,96,112,112,96,48,224,56,192,24,192,24,17,2,6, + 17,0,251,255,255,128,255,255,128,7,6,6,11,1,17,192, + 224,112,24,12,6,13,15,30,15,1,0,31,128,49,192,112, + 224,112,224,96,224,3,224,14,224,24,224,48,224,96,224,224, + 224,225,224,242,232,126,248,60,112,15,23,46,16,0,0,24, + 0,248,0,56,0,56,0,56,0,56,0,56,0,56,0,57, + 240,59,248,60,124,56,28,56,30,56,14,56,14,56,14,56, + 14,56,14,56,12,56,28,56,24,60,112,15,224,12,15,30, + 15,1,0,15,128,56,192,112,224,96,224,224,96,192,0,192, + 0,192,0,192,0,224,0,224,16,112,48,124,96,63,192,31, + 0,15,23,46,16,1,0,0,24,0,248,0,56,0,56,0, + 56,0,56,0,56,0,56,15,184,24,248,48,120,112,56,96, + 56,224,56,224,56,224,56,224,56,224,56,240,56,112,120,120, + 248,63,190,15,48,12,15,30,15,1,0,15,128,57,192,96, + 224,96,112,192,112,255,240,192,0,192,0,192,0,224,0,224, + 16,112,48,124,96,63,192,15,0,12,23,46,11,0,0,3, + 224,6,112,12,112,12,48,28,0,28,0,28,0,28,0,255, + 192,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,62,0,255,128,14,22,44, + 16,1,249,15,192,24,252,48,124,112,48,112,48,112,48,112, + 48,56,112,28,224,15,128,24,0,48,0,120,0,127,224,63, + 248,31,252,96,12,192,12,192,28,240,56,127,224,31,128,16, + 23,46,16,0,0,24,0,248,0,56,0,56,0,56,0,56, + 0,56,0,56,0,57,240,59,248,62,60,60,28,56,28,56, + 28,56,28,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,254,127,7,23,23,9,1,0,56,56,56,0,0,0,0, + 0,56,248,56,56,56,56,56,56,56,56,56,56,56,56,254, + 8,30,30,9,255,249,7,7,7,0,0,0,0,0,3,31, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, + 6,198,236,120,16,23,46,16,0,0,24,0,248,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,254,56,112,56,96, + 56,192,57,128,63,0,62,0,63,0,59,128,57,192,56,224, + 56,240,56,120,56,60,254,127,7,23,23,9,1,0,24,248, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,254,25,15,60,26,0,0,24,240,120,0,251, + 249,252,0,62,63,30,0,60,30,14,0,56,28,14,0,56, + 28,14,0,56,28,14,0,56,28,14,0,56,28,14,0,56, + 28,14,0,56,28,14,0,56,28,14,0,56,28,14,0,56, + 28,14,0,254,127,63,128,16,15,30,16,0,0,24,240,251, + 248,60,60,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,56,28,56,28,56,28,56,28,254,127,14,15,30,16,1, + 0,7,128,24,224,48,112,112,56,96,56,224,28,224,28,224, + 28,224,28,224,28,112,24,112,56,56,48,28,96,7,128,15, + 22,44,17,0,249,25,224,251,248,60,124,56,28,56,30,56, + 14,56,14,56,14,56,14,56,14,56,12,56,28,60,24,62, + 112,59,192,56,0,56,0,56,0,56,0,56,0,56,0,255, + 0,15,22,44,17,1,249,15,200,28,120,48,56,112,56,96, + 56,224,56,224,56,224,56,224,56,224,56,240,56,112,120,120, + 248,63,184,31,56,0,56,0,56,0,56,0,56,0,56,0, + 56,1,254,10,15,30,11,1,0,25,128,251,192,63,192,60, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,0,254,0,10,15,30,13,1,0,62,128,99, + 128,193,128,192,128,224,128,240,0,124,0,63,0,15,128,3, + 192,129,192,128,192,192,192,225,128,191,0,9,19,38,9,0, + 0,8,0,8,0,24,0,56,0,255,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,128,63,0,28,0,16,15,30,17,0,0,248,124,56, + 28,56,28,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,56,28,56,60,60,92,31,223,15,140,15,15,30,17,1, + 0,254,62,120,12,56,8,60,24,28,24,28,16,14,48,14, + 32,7,96,7,64,7,192,3,192,3,128,1,128,1,0,21, + 15,45,24,1,0,253,252,120,112,112,48,112,112,48,56,48, + 32,56,56,96,24,56,64,28,120,64,28,92,192,12,204,128, + 14,143,128,15,143,0,7,7,0,7,7,0,3,6,0,2, + 2,0,14,15,30,17,1,0,252,248,56,96,60,192,28,128, + 30,128,15,0,7,0,7,128,15,128,11,192,25,224,16,224, + 48,112,96,120,240,252,15,22,44,17,1,249,254,30,120,12, + 56,12,60,8,28,24,30,24,14,16,14,48,7,32,7,32, + 3,224,3,192,1,192,1,128,1,128,1,0,1,0,3,0, + 2,0,62,0,124,0,56,0,13,15,30,15,1,0,127,240, + 96,240,64,224,65,224,3,192,3,128,7,128,7,0,14,0, + 30,0,28,8,56,8,120,8,112,24,255,240,8,28,28,16, + 4,251,15,28,56,56,56,56,56,56,56,56,56,56,56,48, + 224,48,56,56,56,56,56,56,56,56,56,24,28,15,2,23, + 23,7,2,0,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,8,28,28,16,4, + 251,240,56,28,28,28,28,28,28,28,28,28,28,28,12,7, + 12,28,28,28,28,28,28,28,28,28,24,56,240,16,4,8, + 18,1,7,62,3,127,135,225,254,192,124,255}; +/* + Fontname: -FreeType-Teachers Pet Sans Serif Bold-Medium-R-Normal--8-80-72-72-P-61-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w=11 h=13 x= 1 y=10 dx=12 dy= 0 ascent=13 len=18 + Font Bounding box w=11 h=17 x= 0 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-4 + X Font ascent = 9 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_tpssb[2656] U8G_SECTION(".progmem.u8g_font_tpssb") = { + 0,11,17,0,252,9,1,205,3,159,32,255,252,13,252,9, + 252,0,0,0,4,0,0,2,9,9,4,1,0,192,192,192, + 192,192,192,0,192,192,5,2,2,7,1,7,216,216,5,5, + 5,7,1,0,80,248,80,248,80,7,9,9,9,1,0,124, + 146,144,124,18,18,146,146,124,8,9,9,10,1,0,198,204, + 12,24,24,24,48,51,99,9,9,18,11,1,0,124,0,198, + 0,198,0,124,0,198,0,198,0,198,0,199,128,62,0,2, + 2,2,4,1,7,192,192,5,9,9,7,1,0,24,48,96, + 96,224,96,96,48,24,5,9,9,7,1,0,192,96,48,48, + 56,48,48,96,192,5,7,7,7,1,1,32,168,112,32,112, + 168,32,6,6,6,8,1,1,48,48,252,252,48,48,3,2, + 2,5,1,255,96,192,5,2,2,7,1,3,248,248,2,1, + 1,4,1,0,192,6,9,9,8,1,0,12,24,24,48,48, + 48,96,96,192,6,9,9,7,0,0,120,204,204,204,204,204, + 204,204,120,6,9,9,7,0,0,48,112,240,48,48,48,48, + 48,252,6,9,9,7,0,0,120,204,204,12,24,48,96,192, + 252,6,9,9,7,0,0,120,204,12,56,12,12,12,204,120, + 6,9,9,7,0,0,12,204,204,252,12,12,12,12,12,6, + 9,9,7,0,0,252,192,192,248,12,12,12,204,120,6,9, + 9,7,0,0,120,204,192,248,204,204,204,204,120,6,9,9, + 7,0,0,252,12,24,48,96,96,96,96,96,6,9,9,7, + 0,0,120,204,204,120,204,204,204,204,120,6,9,9,7,0, + 0,120,204,204,204,124,12,12,204,120,2,4,4,4,1,0, + 192,0,0,192,3,5,5,5,1,255,96,0,0,96,192,6, + 9,9,8,1,0,12,24,48,96,192,96,48,24,12,6,5, + 5,8,1,1,252,252,0,252,252,6,9,9,8,1,0,192, + 96,48,24,12,24,48,96,192,6,9,9,8,1,0,120,204, + 12,24,48,48,0,48,48,10,8,16,12,1,0,63,0,64, + 128,204,192,210,192,210,128,205,0,64,64,63,128,6,9,9, + 7,0,0,120,204,204,252,204,204,204,204,204,6,9,9,7, + 0,0,248,204,204,248,204,204,204,204,248,6,9,9,7,0, + 0,120,204,192,192,192,192,192,204,120,6,9,9,7,0,0, + 248,204,204,204,204,204,204,204,248,6,9,9,7,0,0,252, + 192,192,248,192,192,192,192,252,6,9,9,7,0,0,252,192, + 192,248,192,192,192,192,192,6,9,9,7,0,0,120,204,192, + 220,204,204,204,204,120,6,9,9,7,0,0,204,204,204,252, + 204,204,204,204,204,2,9,9,3,0,0,192,192,192,192,192, + 192,192,192,192,6,9,9,7,0,0,12,12,12,12,12,12, + 12,204,120,6,9,9,7,0,0,204,204,216,240,224,240,216, + 204,204,6,9,9,7,0,0,192,192,192,192,192,192,192,192, + 252,7,9,9,9,1,0,130,238,254,146,130,130,130,130,130, + 6,9,9,7,0,0,204,236,252,220,204,204,204,204,204,6, + 9,9,7,0,0,120,204,204,204,204,204,204,204,120,6,9, + 9,7,0,0,248,204,204,248,192,192,192,192,192,7,9,9, + 8,0,0,124,130,130,130,130,146,146,146,124,6,9,9,7, + 0,0,248,204,204,248,204,204,204,204,204,6,9,9,7,0, + 0,120,204,192,120,12,12,204,204,120,6,9,9,7,0,0, + 252,48,48,48,48,48,48,48,48,6,9,9,7,0,0,204, + 204,204,204,204,204,204,204,120,7,9,9,8,0,0,198,198, + 198,108,108,108,56,56,56,9,9,18,11,1,0,128,128,128, + 128,128,128,105,128,105,128,105,128,127,0,127,0,127,0,6, + 9,9,7,0,0,204,204,120,48,48,120,204,204,204,6,9, + 9,7,0,0,204,204,120,48,48,48,48,48,48,6,9,9, + 7,0,0,252,12,12,24,48,96,192,192,252,4,9,9,6, + 1,0,240,192,192,192,192,192,192,192,240,6,7,7,8,1, + 0,192,96,96,48,24,24,12,4,9,9,6,1,0,240,48, + 48,48,48,48,48,48,240,4,2,2,6,1,10,96,144,6, + 2,2,8,1,0,252,252,2,2,2,4,1,10,64,128,6, + 6,6,7,0,0,120,204,204,204,204,124,6,9,9,7,0, + 0,192,192,192,248,204,204,204,204,120,6,6,6,7,0,0, + 120,204,192,192,204,120,6,9,9,7,0,0,12,12,12,124, + 204,204,204,204,124,6,6,6,7,0,0,120,204,252,192,204, + 120,6,9,9,7,0,0,56,108,96,240,96,96,96,96,96, + 6,10,10,7,0,252,120,204,204,204,204,124,12,12,204,120, + 6,9,9,7,0,0,192,192,192,248,236,204,204,204,204,2, + 9,9,3,0,0,192,192,0,192,192,192,192,192,192,3,13, + 13,4,0,252,96,96,0,96,96,96,96,96,96,96,96,96, + 192,6,9,9,7,0,0,192,192,192,216,240,224,240,216,204, + 2,9,9,3,0,0,192,192,192,192,192,192,192,192,192,7, + 6,6,9,1,0,254,146,146,146,146,146,6,6,6,7,0, + 0,248,236,204,204,204,204,6,6,6,7,0,0,120,204,204, + 204,204,120,6,10,10,7,0,252,120,204,204,204,204,248,192, + 192,192,192,7,10,10,7,0,252,124,204,204,204,204,124,12, + 30,12,12,5,6,6,6,0,0,248,240,192,192,192,192,6, + 6,6,7,0,0,120,224,120,12,204,120,5,9,9,6,0, + 0,96,96,96,248,96,96,96,96,96,6,6,6,7,0,0, + 204,204,204,204,204,120,6,6,6,7,0,0,204,204,120,120, + 48,48,9,6,12,10,0,0,128,128,128,128,107,0,107,0, + 127,0,127,0,6,6,6,7,0,0,204,120,48,48,120,204, + 6,10,10,7,0,252,204,204,204,204,204,124,12,12,204,120, + 6,6,6,7,0,0,124,204,24,48,96,252,6,9,9,8, + 1,0,12,24,48,48,240,48,48,24,12,2,9,9,4,1, + 0,192,192,192,192,192,192,192,192,192,6,9,9,8,1,0, + 192,96,48,48,28,48,48,96,192,5,2,2,6,0,10,232, + 184,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,2,9,9,3,0,0,192,192,0,192,192,192,192, + 192,192,5,7,7,7,1,0,32,112,168,160,168,112,32,6, + 9,9,7,0,0,192,192,248,192,192,192,204,204,252,5,5, + 5,7,1,1,136,112,80,112,136,6,9,9,8,1,0,204, + 204,120,48,48,120,48,120,48,2,9,9,4,1,0,192,192, + 192,0,0,0,192,192,192,8,10,10,10,1,0,124,192,126, + 195,126,3,3,3,195,62,5,1,1,7,1,3,216,9,7, + 14,11,1,0,62,0,65,0,221,128,209,128,221,128,65,0, + 62,0,7,8,8,9,1,0,120,204,204,204,204,126,0,254, + 7,3,3,9,1,2,102,204,102,5,3,3,7,1,1,248, + 248,24,255,9,7,14,11,1,0,62,0,65,0,221,128,209, + 128,209,128,65,0,62,0,5,1,1,6,0,6,248,3,3, + 3,5,1,2,224,160,224,5,7,7,7,1,0,32,32,248, + 32,32,0,248,255,255,255,255,255,255,255,255,255,7,3,3, + 9,1,2,204,102,204,255,255,255,255,6,12,12,7,0,0, + 96,48,0,120,204,204,252,204,204,204,204,204,6,12,12,7, + 0,0,24,48,0,120,204,204,252,204,204,204,204,204,6,12, + 12,7,0,0,48,72,0,120,204,204,252,204,204,204,204,204, + 6,12,12,7,0,0,232,184,0,120,204,204,252,204,204,204, + 204,204,6,11,11,7,0,0,72,0,120,204,204,252,204,204, + 204,204,204,6,13,13,7,0,0,48,72,48,0,120,204,204, + 252,204,204,204,204,204,11,9,18,12,0,0,127,224,206,0, + 206,0,255,192,206,0,206,0,206,0,206,0,207,224,6,11, + 11,7,0,254,120,204,192,192,192,192,192,204,120,48,96,6, + 12,12,7,0,0,96,48,0,252,192,192,248,192,192,192,192, + 252,6,12,12,7,0,0,24,48,0,252,192,192,248,192,192, + 192,192,252,6,12,12,7,0,0,48,72,0,252,192,192,248, + 192,192,192,192,252,6,11,11,7,0,0,204,0,252,192,192, + 248,192,192,192,192,252,3,12,12,4,0,0,192,96,0,96, + 96,96,96,96,96,96,96,96,3,12,12,4,0,0,96,192, + 0,192,192,192,192,192,192,192,192,192,4,12,12,5,0,0, + 96,144,0,96,96,96,96,96,96,96,96,96,6,11,11,7, + 0,0,204,0,48,48,48,48,48,48,48,48,48,6,9,9, + 7,0,0,248,204,204,236,204,204,204,204,248,6,12,12,7, + 0,0,232,184,0,204,236,252,220,204,204,204,204,204,6,12, + 12,7,0,0,96,48,0,120,204,204,204,204,204,204,204,120, + 6,12,12,7,0,0,24,48,0,120,204,204,204,204,204,204, + 204,120,6,12,12,7,0,0,48,72,0,120,204,204,204,204, + 204,204,204,120,6,12,12,7,0,0,232,184,0,120,204,204, + 204,204,204,204,204,120,6,11,11,7,0,0,204,0,120,204, + 204,204,204,204,204,204,120,3,3,3,6,1,2,160,64,160, + 6,9,9,7,0,0,120,204,220,220,236,236,236,204,120,6, + 12,12,7,0,0,96,48,0,204,204,204,204,204,204,204,204, + 120,6,12,12,7,0,0,24,48,0,204,204,204,204,204,204, + 204,204,120,6,12,12,7,0,0,48,72,0,204,204,204,204, + 204,204,204,204,120,6,11,11,7,0,0,204,0,204,204,204, + 204,204,204,204,204,120,6,12,12,7,0,0,24,48,0,204, + 204,120,48,48,48,48,48,48,7,9,9,8,0,0,192,192, + 252,198,252,192,192,192,192,7,11,11,8,0,254,252,198,220, + 198,198,198,220,192,192,192,192,6,9,9,7,0,0,96,48, + 0,120,204,204,204,204,124,6,9,9,7,0,0,24,48,0, + 120,204,204,204,204,124,6,9,9,7,0,0,48,72,0,120, + 204,204,204,204,124,6,9,9,7,0,0,232,184,0,120,204, + 204,204,204,124,6,8,8,7,0,0,204,0,120,204,204,204, + 204,124,6,10,10,7,0,0,48,72,48,0,120,204,204,204, + 204,124,9,6,12,11,1,0,127,128,136,128,143,128,136,0, + 136,128,127,128,6,8,8,7,0,254,120,204,192,192,204,120, + 48,96,6,9,9,7,0,0,96,48,0,120,204,252,192,204, + 120,6,9,9,7,0,0,24,48,0,120,204,252,192,204,120, + 6,9,9,7,0,0,48,72,0,120,204,252,192,204,120,6, + 8,8,7,0,0,204,0,120,204,252,192,204,120,3,12,12, + 4,0,0,192,96,0,96,96,96,96,96,96,96,96,96,3, + 12,12,4,0,0,96,192,0,192,192,192,192,192,192,192,192, + 192,4,12,12,5,0,0,96,144,0,96,96,96,96,96,96, + 96,96,96,6,11,11,7,0,0,204,0,48,48,48,48,48, + 48,48,48,48,6,9,9,7,0,0,12,60,12,124,204,204, + 204,204,124,6,9,9,7,0,0,232,184,0,248,236,204,204, + 204,204,6,9,9,7,0,0,96,48,0,120,204,204,204,204, + 120,6,9,9,7,0,0,24,48,0,120,204,204,204,204,120, + 6,9,9,7,0,0,48,72,0,120,204,204,204,204,120,6, + 9,9,7,0,0,232,184,0,120,204,204,204,204,120,6,8, + 8,7,0,0,204,0,120,204,204,204,204,120,6,6,6,7, + 0,1,48,0,252,252,0,48,6,6,6,7,0,0,120,220, + 220,236,236,120,6,9,9,7,0,0,96,48,0,204,204,204, + 204,204,120,6,9,9,7,0,0,24,48,0,204,204,204,204, + 204,120,6,9,9,7,0,0,48,72,0,204,204,204,204,204, + 120,6,8,8,7,0,0,204,0,204,204,204,204,204,120,6, + 13,13,7,0,252,24,48,0,204,204,204,204,204,124,12,12, + 204,120,6,6,6,7,0,0,192,248,204,248,192,192,6,12, + 12,7,0,252,204,0,204,204,204,204,204,124,12,12,204,120 + }; +/* + Fontname: -FreeType-Teachers Pet Sans Serif Bold-Medium-R-Normal--8-80-72-72-P-61-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 0, '1' Height: 9 + Calculated Max Values w= 6 h= 9 x= 1 y= 3 dx= 8 dy= 0 ascent= 9 len= 9 + Font Bounding box w=11 h=17 x= 0 y=-4 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent = 9 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_tpssbn[230] U8G_SECTION(".progmem.u8g_font_tpssbn") = { + 0,11,17,0,252,9,0,0,0,0,42,57,0,9,255,9, + 0,5,7,7,7,1,1,32,168,112,32,112,168,32,6,6, + 6,8,1,1,48,48,252,252,48,48,3,2,2,5,1,255, + 96,192,5,2,2,7,1,3,248,248,2,1,1,4,1,0, + 192,6,9,9,8,1,0,12,24,24,48,48,48,96,96,192, + 6,9,9,7,0,0,120,204,204,204,204,204,204,204,120,6, + 9,9,7,0,0,48,112,240,48,48,48,48,48,252,6,9, + 9,7,0,0,120,204,204,12,24,48,96,192,252,6,9,9, + 7,0,0,120,204,12,56,12,12,12,204,120,6,9,9,7, + 0,0,12,204,204,252,12,12,12,12,12,6,9,9,7,0, + 0,252,192,192,248,12,12,12,204,120,6,9,9,7,0,0, + 120,204,192,248,204,204,204,204,120,6,9,9,7,0,0,252, + 12,24,48,96,96,96,96,96,6,9,9,7,0,0,120,204, + 204,120,204,204,204,204,120,6,9,9,7,0,0,120,204,204, + 204,124,12,12,204,120}; +/* + Fontname: -FreeType-Teachers Pet Sans Serif Bold-Medium-R-Normal--8-80-72-72-P-61-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w=10 h=13 x= 1 y=10 dx=12 dy= 0 ascent=12 len=18 + Font Bounding box w=11 h=17 x= 0 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-4 + X Font ascent = 9 descent=-4 + Max Font ascent =12 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_tpssbr[1346] U8G_SECTION(".progmem.u8g_font_tpssbr") = { + 0,11,17,0,252,9,1,205,3,159,32,127,252,12,252,9, + 252,0,0,0,4,0,0,2,9,9,4,1,0,192,192,192, + 192,192,192,0,192,192,5,2,2,7,1,7,216,216,5,5, + 5,7,1,0,80,248,80,248,80,7,9,9,9,1,0,124, + 146,144,124,18,18,146,146,124,8,9,9,10,1,0,198,204, + 12,24,24,24,48,51,99,9,9,18,11,1,0,124,0,198, + 0,198,0,124,0,198,0,198,0,198,0,199,128,62,0,2, + 2,2,4,1,7,192,192,5,9,9,7,1,0,24,48,96, + 96,224,96,96,48,24,5,9,9,7,1,0,192,96,48,48, + 56,48,48,96,192,5,7,7,7,1,1,32,168,112,32,112, + 168,32,6,6,6,8,1,1,48,48,252,252,48,48,3,2, + 2,5,1,255,96,192,5,2,2,7,1,3,248,248,2,1, + 1,4,1,0,192,6,9,9,8,1,0,12,24,24,48,48, + 48,96,96,192,6,9,9,7,0,0,120,204,204,204,204,204, + 204,204,120,6,9,9,7,0,0,48,112,240,48,48,48,48, + 48,252,6,9,9,7,0,0,120,204,204,12,24,48,96,192, + 252,6,9,9,7,0,0,120,204,12,56,12,12,12,204,120, + 6,9,9,7,0,0,12,204,204,252,12,12,12,12,12,6, + 9,9,7,0,0,252,192,192,248,12,12,12,204,120,6,9, + 9,7,0,0,120,204,192,248,204,204,204,204,120,6,9,9, + 7,0,0,252,12,24,48,96,96,96,96,96,6,9,9,7, + 0,0,120,204,204,120,204,204,204,204,120,6,9,9,7,0, + 0,120,204,204,204,124,12,12,204,120,2,4,4,4,1,0, + 192,0,0,192,3,5,5,5,1,255,96,0,0,96,192,6, + 9,9,8,1,0,12,24,48,96,192,96,48,24,12,6,5, + 5,8,1,1,252,252,0,252,252,6,9,9,8,1,0,192, + 96,48,24,12,24,48,96,192,6,9,9,8,1,0,120,204, + 12,24,48,48,0,48,48,10,8,16,12,1,0,63,0,64, + 128,204,192,210,192,210,128,205,0,64,64,63,128,6,9,9, + 7,0,0,120,204,204,252,204,204,204,204,204,6,9,9,7, + 0,0,248,204,204,248,204,204,204,204,248,6,9,9,7,0, + 0,120,204,192,192,192,192,192,204,120,6,9,9,7,0,0, + 248,204,204,204,204,204,204,204,248,6,9,9,7,0,0,252, + 192,192,248,192,192,192,192,252,6,9,9,7,0,0,252,192, + 192,248,192,192,192,192,192,6,9,9,7,0,0,120,204,192, + 220,204,204,204,204,120,6,9,9,7,0,0,204,204,204,252, + 204,204,204,204,204,2,9,9,3,0,0,192,192,192,192,192, + 192,192,192,192,6,9,9,7,0,0,12,12,12,12,12,12, + 12,204,120,6,9,9,7,0,0,204,204,216,240,224,240,216, + 204,204,6,9,9,7,0,0,192,192,192,192,192,192,192,192, + 252,7,9,9,9,1,0,130,238,254,146,130,130,130,130,130, + 6,9,9,7,0,0,204,236,252,220,204,204,204,204,204,6, + 9,9,7,0,0,120,204,204,204,204,204,204,204,120,6,9, + 9,7,0,0,248,204,204,248,192,192,192,192,192,7,9,9, + 8,0,0,124,130,130,130,130,146,146,146,124,6,9,9,7, + 0,0,248,204,204,248,204,204,204,204,204,6,9,9,7,0, + 0,120,204,192,120,12,12,204,204,120,6,9,9,7,0,0, + 252,48,48,48,48,48,48,48,48,6,9,9,7,0,0,204, + 204,204,204,204,204,204,204,120,7,9,9,8,0,0,198,198, + 198,108,108,108,56,56,56,9,9,18,11,1,0,128,128,128, + 128,128,128,105,128,105,128,105,128,127,0,127,0,127,0,6, + 9,9,7,0,0,204,204,120,48,48,120,204,204,204,6,9, + 9,7,0,0,204,204,120,48,48,48,48,48,48,6,9,9, + 7,0,0,252,12,12,24,48,96,192,192,252,4,9,9,6, + 1,0,240,192,192,192,192,192,192,192,240,6,7,7,8,1, + 0,192,96,96,48,24,24,12,4,9,9,6,1,0,240,48, + 48,48,48,48,48,48,240,4,2,2,6,1,10,96,144,6, + 2,2,8,1,0,252,252,2,2,2,4,1,10,64,128,6, + 6,6,7,0,0,120,204,204,204,204,124,6,9,9,7,0, + 0,192,192,192,248,204,204,204,204,120,6,6,6,7,0,0, + 120,204,192,192,204,120,6,9,9,7,0,0,12,12,12,124, + 204,204,204,204,124,6,6,6,7,0,0,120,204,252,192,204, + 120,6,9,9,7,0,0,56,108,96,240,96,96,96,96,96, + 6,10,10,7,0,252,120,204,204,204,204,124,12,12,204,120, + 6,9,9,7,0,0,192,192,192,248,236,204,204,204,204,2, + 9,9,3,0,0,192,192,0,192,192,192,192,192,192,3,13, + 13,4,0,252,96,96,0,96,96,96,96,96,96,96,96,96, + 192,6,9,9,7,0,0,192,192,192,216,240,224,240,216,204, + 2,9,9,3,0,0,192,192,192,192,192,192,192,192,192,7, + 6,6,9,1,0,254,146,146,146,146,146,6,6,6,7,0, + 0,248,236,204,204,204,204,6,6,6,7,0,0,120,204,204, + 204,204,120,6,10,10,7,0,252,120,204,204,204,204,248,192, + 192,192,192,7,10,10,7,0,252,124,204,204,204,204,124,12, + 30,12,12,5,6,6,6,0,0,248,240,192,192,192,192,6, + 6,6,7,0,0,120,224,120,12,204,120,5,9,9,6,0, + 0,96,96,96,248,96,96,96,96,96,6,6,6,7,0,0, + 204,204,204,204,204,120,6,6,6,7,0,0,204,204,120,120, + 48,48,9,6,12,10,0,0,128,128,128,128,107,0,107,0, + 127,0,127,0,6,6,6,7,0,0,204,120,48,48,120,204, + 6,10,10,7,0,252,204,204,204,204,204,124,12,12,204,120, + 6,6,6,7,0,0,124,204,24,48,96,252,6,9,9,8, + 1,0,12,24,48,48,240,48,48,24,12,2,9,9,4,1, + 0,192,192,192,192,192,192,192,192,192,6,9,9,8,1,0, + 192,96,48,48,28,48,48,96,192,5,2,2,6,0,10,232, + 184,255}; +/* + Fontname: -FreeType-Teachers Pet Sans Serif-Medium-R-Normal--8-80-72-72-P-18-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 9 h=13 x= 1 y=10 dx=11 dy= 0 ascent=13 len=18 + Font Bounding box w=11 h=17 x=-1 y=-4 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-4 + X Font ascent = 9 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_tpss[2605] U8G_SECTION(".progmem.u8g_font_tpss") = { + 0,11,17,255,252,9,1,192,3,136,32,255,252,13,252,9, + 252,0,0,0,4,0,0,1,9,9,3,1,0,128,128,128, + 128,128,128,0,128,128,3,2,2,5,1,7,160,160,5,5, + 5,7,1,0,80,248,80,248,80,5,9,9,7,1,0,112, + 168,160,112,40,40,168,168,112,5,9,9,7,1,0,136,144, + 16,32,32,32,64,72,136,7,9,9,9,1,0,112,136,136, + 112,136,136,136,138,116,1,2,2,3,1,7,128,128,5,9, + 9,7,1,0,24,32,64,64,128,64,64,32,24,5,9,9, + 7,1,0,192,32,16,16,8,16,16,32,192,5,7,7,7, + 1,1,32,168,112,32,112,168,32,5,5,5,7,1,1,32, + 32,248,32,32,2,2,2,4,1,255,64,128,5,1,1,7, + 1,3,248,1,1,1,3,1,0,128,5,9,9,7,1,0, + 8,16,16,32,32,32,64,64,128,5,9,9,6,0,0,112, + 136,136,136,136,136,136,136,112,5,9,9,6,0,0,32,96, + 160,32,32,32,32,32,248,5,9,9,6,0,0,112,136,136, + 8,16,32,64,128,248,5,9,9,6,0,0,112,136,8,48, + 8,8,8,136,112,5,9,9,6,0,0,8,136,136,248,8, + 8,8,8,8,5,9,9,6,0,0,248,128,128,248,8,8, + 8,136,112,5,9,9,6,0,0,112,136,128,240,136,136,136, + 136,112,5,9,9,6,0,0,248,8,16,32,64,64,64,64, + 64,5,9,9,6,0,0,112,136,136,112,136,136,136,136,112, + 5,9,9,6,0,0,112,136,136,136,120,8,8,136,112,1, + 4,4,3,1,0,128,0,0,128,2,5,5,4,1,255,64, + 0,0,64,128,5,9,9,7,1,0,8,16,32,64,128,64, + 32,16,8,5,3,3,7,1,2,248,0,248,5,9,9,7, + 1,0,128,64,32,16,8,16,32,64,128,5,9,9,7,1, + 0,112,136,8,16,32,32,0,32,32,9,8,16,11,1,0, + 126,0,129,0,153,0,165,0,165,0,154,0,128,128,127,0, + 5,9,9,6,0,0,112,136,136,248,136,136,136,136,136,5, + 9,9,6,0,0,240,136,136,240,136,136,136,136,240,5,9, + 9,6,0,0,112,136,128,128,128,128,128,136,112,5,9,9, + 6,0,0,240,136,136,136,136,136,136,136,240,5,9,9,6, + 0,0,248,128,128,240,128,128,128,128,248,5,9,9,6,0, + 0,248,128,128,240,128,128,128,128,128,5,9,9,6,0,0, + 112,136,128,184,136,136,136,136,112,5,9,9,6,0,0,136, + 136,136,248,136,136,136,136,136,1,9,9,2,0,0,128,128, + 128,128,128,128,128,128,128,5,9,9,6,0,0,8,8,8, + 8,8,8,8,136,112,5,9,9,6,0,0,136,136,144,160, + 192,160,144,136,136,5,9,9,6,0,0,128,128,128,128,128, + 128,128,128,248,7,9,9,8,0,0,130,198,170,146,130,130, + 130,130,130,5,9,9,6,0,0,136,200,168,152,136,136,136, + 136,136,5,9,9,6,0,0,112,136,136,136,136,136,136,136, + 112,5,9,9,6,0,0,240,136,136,240,128,128,128,128,128, + 5,9,9,6,0,0,112,136,136,136,136,168,168,168,112,5, + 9,9,6,0,0,240,136,136,240,136,136,136,136,136,5,9, + 9,6,0,0,112,136,128,112,8,8,136,136,112,5,9,9, + 6,0,0,248,32,32,32,32,32,32,32,32,5,9,9,6, + 0,0,136,136,136,136,136,136,136,136,112,5,9,9,6,0, + 0,136,136,136,80,80,80,80,32,32,7,9,9,8,0,0, + 130,130,130,84,84,84,40,40,40,5,9,9,6,0,0,136, + 136,80,32,32,80,136,136,136,5,9,9,6,0,0,136,136, + 80,32,32,32,32,32,32,5,9,9,6,0,0,248,8,8, + 16,32,64,128,128,248,3,9,9,5,1,0,224,128,128,128, + 128,128,128,128,224,5,7,7,7,1,0,128,64,64,32,16, + 16,8,3,9,9,5,1,0,224,32,32,32,32,32,32,32, + 224,3,2,2,5,1,10,64,160,6,1,1,8,1,0,252, + 2,2,2,4,1,10,64,128,5,6,6,6,0,0,112,136, + 136,136,136,120,5,9,9,6,0,0,128,128,128,240,136,136, + 136,136,112,5,6,6,6,0,0,112,136,128,128,136,112,5, + 9,9,6,0,0,8,8,8,120,136,136,136,136,120,5,6, + 6,6,0,0,112,136,248,128,136,112,5,9,9,6,0,0, + 48,72,64,224,64,64,64,64,64,5,10,10,6,0,252,112, + 136,136,136,136,120,8,8,136,112,5,9,9,6,0,0,128, + 128,128,176,200,136,136,136,136,1,9,9,2,0,0,128,128, + 0,128,128,128,128,128,128,2,13,13,3,0,252,64,64,0, + 64,64,64,64,64,64,64,64,64,128,5,9,9,6,0,0, + 128,128,128,144,160,192,160,144,136,1,9,9,2,0,0,128, + 128,128,128,128,128,128,128,128,7,6,6,8,0,0,182,218, + 146,146,146,146,5,6,6,6,0,0,176,200,136,136,136,136, + 5,6,6,6,0,0,112,136,136,136,136,112,5,10,10,6, + 0,252,112,136,136,136,136,240,128,128,128,128,6,10,10,7, + 0,252,120,136,136,136,136,120,8,28,8,8,4,6,6,5, + 0,0,176,192,128,128,128,128,5,6,6,6,0,0,112,128, + 112,8,136,112,4,9,9,5,0,0,64,64,64,240,64,64, + 64,64,64,5,6,6,6,0,0,136,136,136,136,136,112,5, + 6,6,6,0,0,136,136,80,80,32,32,7,6,6,8,0, + 0,130,130,84,84,40,40,5,6,6,6,0,0,136,80,32, + 32,80,136,5,10,10,6,0,252,136,136,136,136,136,120,8, + 8,136,112,5,6,6,6,0,0,120,136,16,32,64,248,6, + 9,9,8,1,0,12,16,32,32,192,32,32,16,12,1,9, + 9,3,1,0,128,128,128,128,128,128,128,128,128,6,9,9, + 8,1,0,192,32,16,16,12,16,16,32,192,5,2,2,6, + 0,10,232,184,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,1,9,9,2,0,0,128,128,0,128, + 128,128,128,128,128,5,7,7,7,1,0,32,112,168,160,168, + 112,32,5,9,9,7,1,0,128,128,240,128,128,128,136,136, + 248,5,5,5,7,1,1,136,112,80,112,136,5,9,9,7, + 1,0,136,136,80,32,32,248,32,248,32,1,9,9,3,1, + 0,128,128,128,0,0,0,128,128,128,6,10,10,8,1,0, + 120,128,120,132,120,4,4,4,132,120,5,1,1,7,1,3, + 136,7,7,7,9,1,0,124,130,186,162,186,130,124,6,8, + 8,8,1,0,112,136,136,136,136,116,0,252,5,3,3,7, + 1,2,72,144,72,5,2,2,7,1,2,248,8,0,0,0, + 8,0,0,7,7,7,9,1,0,124,130,186,162,162,130,124, + 5,1,1,6,0,6,248,3,3,3,5,1,2,64,160,64, + 5,7,7,7,1,0,32,32,248,32,32,0,248,255,255,255, + 0,0,0,8,0,0,255,0,0,0,8,0,0,255,255,255, + 5,3,3,7,1,2,144,72,144,255,255,255,255,5,12,12, + 6,0,0,64,32,0,112,136,136,248,136,136,136,136,136,5, + 12,12,6,0,0,16,32,0,112,136,136,248,136,136,136,136, + 136,5,12,12,6,0,0,32,80,0,112,136,136,248,136,136, + 136,136,136,5,12,12,6,0,0,232,184,0,112,136,136,248, + 136,136,136,136,136,5,11,11,6,0,0,80,0,112,136,136, + 248,136,136,136,136,136,5,13,13,6,0,0,32,80,32,0, + 112,136,136,248,136,136,136,136,136,9,9,18,10,0,0,127, + 128,136,0,136,0,255,0,136,0,136,0,136,0,136,0,143, + 128,5,9,9,6,0,254,112,136,128,128,128,136,112,32,96, + 5,12,12,6,0,0,64,32,0,248,128,128,240,128,128,128, + 128,248,5,12,12,6,0,0,16,32,0,248,128,128,240,128, + 128,128,128,248,5,12,12,6,0,0,32,80,0,248,128,128, + 240,128,128,128,128,248,5,11,11,6,0,0,80,0,248,128, + 128,240,128,128,128,128,248,2,12,12,2,0,0,128,64,0, + 64,64,64,64,64,64,64,64,64,2,12,12,2,0,0,64, + 128,0,128,128,128,128,128,128,128,128,128,3,12,12,2,255, + 0,64,160,0,64,64,64,64,64,64,64,64,64,3,11,11, + 2,255,0,160,0,64,64,64,64,64,64,64,64,64,5,9, + 9,6,0,0,240,136,136,232,136,136,136,136,240,5,12,12, + 6,0,0,232,184,0,136,136,136,200,168,152,136,136,136,5, + 12,12,6,0,0,64,32,0,112,136,136,136,136,136,136,136, + 112,5,12,12,6,0,0,16,32,0,112,136,136,136,136,136, + 136,136,112,5,12,12,6,0,0,32,80,0,112,136,136,136, + 136,136,136,136,112,5,12,12,6,0,0,232,184,0,112,136, + 136,136,136,136,136,136,112,5,11,11,6,0,0,80,0,112, + 136,136,136,136,136,136,136,112,3,3,3,6,1,2,160,64, + 160,7,9,9,8,0,0,58,68,76,84,84,84,100,68,184, + 5,12,12,6,0,0,64,32,0,136,136,136,136,136,136,136, + 136,112,5,12,12,6,0,0,16,32,0,136,136,136,136,136, + 136,136,136,112,5,12,12,6,0,0,32,80,0,136,136,136, + 136,136,136,136,136,112,5,11,11,6,0,0,80,0,136,136, + 136,136,136,136,136,136,112,5,12,12,6,0,0,16,32,0, + 136,136,80,32,32,32,32,32,32,5,9,9,6,0,0,128, + 128,240,136,240,128,128,128,128,5,11,11,6,0,254,240,136, + 176,136,136,136,176,128,128,128,128,5,9,9,6,0,0,64, + 32,0,112,136,136,136,136,120,5,9,9,6,0,0,16,32, + 0,112,136,136,136,136,120,5,9,9,6,0,0,32,80,0, + 112,136,136,136,136,120,5,9,9,6,0,0,232,184,0,112, + 136,136,136,136,120,5,8,8,6,0,0,80,0,112,136,136, + 136,136,120,5,10,10,6,0,0,32,80,32,0,112,136,136, + 136,136,120,9,6,12,10,0,0,119,0,136,128,143,128,136, + 0,136,128,119,0,5,8,8,6,0,254,112,136,128,128,136, + 112,32,64,5,6,6,6,0,0,112,136,248,128,136,112,5, + 6,6,6,0,0,112,136,248,128,136,112,5,6,6,6,0, + 0,112,136,248,128,136,112,5,6,6,6,0,0,112,136,248, + 128,136,112,2,10,10,3,0,0,128,64,0,0,64,64,64, + 64,64,64,2,10,10,3,0,0,64,128,0,0,128,128,128, + 128,128,128,3,10,10,4,0,0,64,160,0,0,64,64,64, + 64,64,64,3,9,9,4,0,0,160,0,0,64,64,64,64, + 64,64,5,9,9,6,0,0,8,56,8,120,136,136,136,136, + 120,5,9,9,6,0,0,232,184,0,176,200,136,136,136,136, + 5,9,9,6,0,0,64,32,0,112,136,136,136,136,112,5, + 9,9,6,0,0,16,32,0,112,136,136,136,136,112,5,9, + 9,6,0,0,32,80,0,112,136,136,136,136,112,5,9,9, + 6,0,0,232,184,0,112,136,136,136,136,112,5,8,8,6, + 0,0,80,0,112,136,136,136,136,112,5,5,5,6,0,1, + 32,0,248,0,32,5,6,6,6,0,0,112,152,168,168,200, + 112,5,9,9,6,0,0,64,32,0,136,136,136,136,136,112, + 5,9,9,6,0,0,16,32,0,136,136,136,136,136,112,5, + 9,9,6,0,0,32,80,0,136,136,136,136,136,112,5,8, + 8,6,0,0,80,0,136,136,136,136,136,112,5,13,13,6, + 0,252,16,32,0,136,136,136,136,136,120,8,8,136,112,5, + 6,6,5,0,0,128,240,136,240,128,128,5,12,12,6,0, + 252,80,0,136,136,136,136,136,120,8,8,136,112}; +/* + Fontname: -FreeType-Teachers Pet Sans Serif-Medium-R-Normal--8-80-72-72-P-18-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 0, '1' Height: 9 + Calculated Max Values w= 5 h= 9 x= 1 y= 3 dx= 7 dy= 0 ascent= 9 len= 9 + Font Bounding box w=11 h=17 x=-1 y=-4 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent = 9 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_tpssn[228] U8G_SECTION(".progmem.u8g_font_tpssn") = { + 0,11,17,255,252,9,0,0,0,0,42,57,0,9,255,9, + 0,5,7,7,7,1,1,32,168,112,32,112,168,32,5,5, + 5,7,1,1,32,32,248,32,32,2,2,2,4,1,255,64, + 128,5,1,1,7,1,3,248,1,1,1,3,1,0,128,5, + 9,9,7,1,0,8,16,16,32,32,32,64,64,128,5,9, + 9,6,0,0,112,136,136,136,136,136,136,136,112,5,9,9, + 6,0,0,32,96,160,32,32,32,32,32,248,5,9,9,6, + 0,0,112,136,136,8,16,32,64,128,248,5,9,9,6,0, + 0,112,136,8,48,8,8,8,136,112,5,9,9,6,0,0, + 8,136,136,248,8,8,8,8,8,5,9,9,6,0,0,248, + 128,128,248,8,8,8,136,112,5,9,9,6,0,0,112,136, + 128,240,136,136,136,136,112,5,9,9,6,0,0,248,8,16, + 32,64,64,64,64,64,5,9,9,6,0,0,112,136,136,112, + 136,136,136,136,112,5,9,9,6,0,0,112,136,136,136,120, + 8,8,136,112}; +/* + Fontname: -FreeType-Teachers Pet Sans Serif-Medium-R-Normal--8-80-72-72-P-18-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 9 h=13 x= 1 y=10 dx=11 dy= 0 ascent=12 len=16 + Font Bounding box w=11 h=17 x=-1 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-4 + X Font ascent = 9 descent=-4 + Max Font ascent =12 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_tpssr[1317] U8G_SECTION(".progmem.u8g_font_tpssr") = { + 0,11,17,255,252,9,1,192,3,136,32,127,252,12,252,9, + 252,0,0,0,4,0,0,1,9,9,3,1,0,128,128,128, + 128,128,128,0,128,128,3,2,2,5,1,7,160,160,5,5, + 5,7,1,0,80,248,80,248,80,5,9,9,7,1,0,112, + 168,160,112,40,40,168,168,112,5,9,9,7,1,0,136,144, + 16,32,32,32,64,72,136,7,9,9,9,1,0,112,136,136, + 112,136,136,136,138,116,1,2,2,3,1,7,128,128,5,9, + 9,7,1,0,24,32,64,64,128,64,64,32,24,5,9,9, + 7,1,0,192,32,16,16,8,16,16,32,192,5,7,7,7, + 1,1,32,168,112,32,112,168,32,5,5,5,7,1,1,32, + 32,248,32,32,2,2,2,4,1,255,64,128,5,1,1,7, + 1,3,248,1,1,1,3,1,0,128,5,9,9,7,1,0, + 8,16,16,32,32,32,64,64,128,5,9,9,6,0,0,112, + 136,136,136,136,136,136,136,112,5,9,9,6,0,0,32,96, + 160,32,32,32,32,32,248,5,9,9,6,0,0,112,136,136, + 8,16,32,64,128,248,5,9,9,6,0,0,112,136,8,48, + 8,8,8,136,112,5,9,9,6,0,0,8,136,136,248,8, + 8,8,8,8,5,9,9,6,0,0,248,128,128,248,8,8, + 8,136,112,5,9,9,6,0,0,112,136,128,240,136,136,136, + 136,112,5,9,9,6,0,0,248,8,16,32,64,64,64,64, + 64,5,9,9,6,0,0,112,136,136,112,136,136,136,136,112, + 5,9,9,6,0,0,112,136,136,136,120,8,8,136,112,1, + 4,4,3,1,0,128,0,0,128,2,5,5,4,1,255,64, + 0,0,64,128,5,9,9,7,1,0,8,16,32,64,128,64, + 32,16,8,5,3,3,7,1,2,248,0,248,5,9,9,7, + 1,0,128,64,32,16,8,16,32,64,128,5,9,9,7,1, + 0,112,136,8,16,32,32,0,32,32,9,8,16,11,1,0, + 126,0,129,0,153,0,165,0,165,0,154,0,128,128,127,0, + 5,9,9,6,0,0,112,136,136,248,136,136,136,136,136,5, + 9,9,6,0,0,240,136,136,240,136,136,136,136,240,5,9, + 9,6,0,0,112,136,128,128,128,128,128,136,112,5,9,9, + 6,0,0,240,136,136,136,136,136,136,136,240,5,9,9,6, + 0,0,248,128,128,240,128,128,128,128,248,5,9,9,6,0, + 0,248,128,128,240,128,128,128,128,128,5,9,9,6,0,0, + 112,136,128,184,136,136,136,136,112,5,9,9,6,0,0,136, + 136,136,248,136,136,136,136,136,1,9,9,2,0,0,128,128, + 128,128,128,128,128,128,128,5,9,9,6,0,0,8,8,8, + 8,8,8,8,136,112,5,9,9,6,0,0,136,136,144,160, + 192,160,144,136,136,5,9,9,6,0,0,128,128,128,128,128, + 128,128,128,248,7,9,9,8,0,0,130,198,170,146,130,130, + 130,130,130,5,9,9,6,0,0,136,200,168,152,136,136,136, + 136,136,5,9,9,6,0,0,112,136,136,136,136,136,136,136, + 112,5,9,9,6,0,0,240,136,136,240,128,128,128,128,128, + 5,9,9,6,0,0,112,136,136,136,136,168,168,168,112,5, + 9,9,6,0,0,240,136,136,240,136,136,136,136,136,5,9, + 9,6,0,0,112,136,128,112,8,8,136,136,112,5,9,9, + 6,0,0,248,32,32,32,32,32,32,32,32,5,9,9,6, + 0,0,136,136,136,136,136,136,136,136,112,5,9,9,6,0, + 0,136,136,136,80,80,80,80,32,32,7,9,9,8,0,0, + 130,130,130,84,84,84,40,40,40,5,9,9,6,0,0,136, + 136,80,32,32,80,136,136,136,5,9,9,6,0,0,136,136, + 80,32,32,32,32,32,32,5,9,9,6,0,0,248,8,8, + 16,32,64,128,128,248,3,9,9,5,1,0,224,128,128,128, + 128,128,128,128,224,5,7,7,7,1,0,128,64,64,32,16, + 16,8,3,9,9,5,1,0,224,32,32,32,32,32,32,32, + 224,3,2,2,5,1,10,64,160,6,1,1,8,1,0,252, + 2,2,2,4,1,10,64,128,5,6,6,6,0,0,112,136, + 136,136,136,120,5,9,9,6,0,0,128,128,128,240,136,136, + 136,136,112,5,6,6,6,0,0,112,136,128,128,136,112,5, + 9,9,6,0,0,8,8,8,120,136,136,136,136,120,5,6, + 6,6,0,0,112,136,248,128,136,112,5,9,9,6,0,0, + 48,72,64,224,64,64,64,64,64,5,10,10,6,0,252,112, + 136,136,136,136,120,8,8,136,112,5,9,9,6,0,0,128, + 128,128,176,200,136,136,136,136,1,9,9,2,0,0,128,128, + 0,128,128,128,128,128,128,2,13,13,3,0,252,64,64,0, + 64,64,64,64,64,64,64,64,64,128,5,9,9,6,0,0, + 128,128,128,144,160,192,160,144,136,1,9,9,2,0,0,128, + 128,128,128,128,128,128,128,128,7,6,6,8,0,0,182,218, + 146,146,146,146,5,6,6,6,0,0,176,200,136,136,136,136, + 5,6,6,6,0,0,112,136,136,136,136,112,5,10,10,6, + 0,252,112,136,136,136,136,240,128,128,128,128,6,10,10,7, + 0,252,120,136,136,136,136,120,8,28,8,8,4,6,6,5, + 0,0,176,192,128,128,128,128,5,6,6,6,0,0,112,128, + 112,8,136,112,4,9,9,5,0,0,64,64,64,240,64,64, + 64,64,64,5,6,6,6,0,0,136,136,136,136,136,112,5, + 6,6,6,0,0,136,136,80,80,32,32,7,6,6,8,0, + 0,130,130,84,84,40,40,5,6,6,6,0,0,136,80,32, + 32,80,136,5,10,10,6,0,252,136,136,136,136,136,120,8, + 8,136,112,5,6,6,6,0,0,120,136,16,32,64,248,6, + 9,9,8,1,0,12,16,32,32,192,32,32,16,12,1,9, + 9,3,1,0,128,128,128,128,128,128,128,128,128,6,9,9, + 8,1,0,192,32,16,16,12,16,16,32,192,5,2,2,6, + 0,10,232,184,255}; +/* + Fontname: -FreeType-Trixel Square-Medium-R-Normal--8-80-72-72-P-33-ISO10646-1 + Copyright: Copyright julischka 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 7 x= 0 y= 3 dx= 6 dy= 0 ascent= 7 len= 7 + Font Bounding box w= 5 h= 9 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 5 descent=-2 + Max Font ascent = 7 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_trixel_square[1236] U8G_SECTION(".progmem.u8g_font_trixel_square") = { + 0,5,9,0,254,5,1,91,2,177,32,255,254,7,254,5, + 254,0,0,0,1,0,0,1,5,5,2,0,0,128,128,128, + 0,128,3,2,2,4,0,3,160,160,5,5,5,6,0,255, + 80,248,80,248,80,3,6,6,4,0,0,64,224,192,96,224, + 64,3,5,5,4,0,0,160,32,224,128,160,5,5,5,6, + 0,0,224,160,240,160,248,1,2,2,2,0,3,128,128,2, + 5,5,3,0,0,192,128,128,128,192,2,5,5,3,0,0, + 192,64,64,64,192,3,3,3,4,0,2,160,64,160,3,3, + 3,4,0,0,64,224,64,1,2,2,2,0,255,128,128,3, + 1,1,4,0,1,224,1,1,1,2,0,0,128,3,5,5, + 4,0,0,32,96,64,192,128,3,5,5,4,0,0,224,160, + 160,160,224,2,5,5,3,0,0,64,192,64,64,64,3,5, + 5,4,0,0,224,160,96,192,224,3,5,5,4,0,0,224, + 32,96,32,224,3,5,5,4,0,0,160,160,224,32,32,3, + 5,5,4,0,0,224,128,224,32,224,3,5,5,4,0,0, + 224,128,224,160,224,3,5,5,4,0,0,224,32,32,32,32, + 3,5,5,4,0,0,224,160,224,160,224,3,5,5,4,0, + 0,224,160,224,32,224,1,3,3,2,0,0,128,0,128,1, + 4,4,2,0,255,128,0,128,128,3,3,3,4,0,0,96, + 192,96,3,3,3,4,0,0,224,0,224,3,3,3,4,0, + 0,192,96,192,3,5,5,4,0,0,224,32,96,0,64,5, + 6,6,6,0,255,248,136,168,184,128,248,3,5,5,4,0, + 0,224,160,224,160,160,3,5,5,4,0,0,224,160,224,160, + 224,3,5,5,4,0,0,224,160,128,160,224,3,5,5,4, + 0,0,224,160,160,160,224,3,5,5,4,0,0,224,128,192, + 128,224,3,5,5,4,0,0,224,128,192,128,128,3,5,5, + 4,0,0,224,128,160,160,224,3,5,5,4,0,0,160,160, + 224,160,160,1,5,5,2,0,0,128,128,128,128,128,3,5, + 5,4,0,0,224,32,32,32,224,3,5,5,4,0,0,160, + 160,192,160,160,3,5,5,4,0,0,128,128,128,128,224,5, + 5,5,6,0,0,216,216,168,168,136,4,5,5,5,0,0, + 208,208,176,176,144,3,5,5,4,0,0,224,160,160,160,224, + 3,5,5,4,0,0,224,160,224,128,128,4,5,5,5,0, + 0,224,160,160,160,240,3,5,5,4,0,0,224,160,192,160, + 160,3,5,5,4,0,0,224,128,224,32,224,3,5,5,4, + 0,0,224,64,64,64,64,3,5,5,4,0,0,160,160,160, + 160,224,3,5,5,4,0,0,160,160,160,224,64,5,5,5, + 6,0,0,136,136,168,168,248,3,5,5,4,0,0,160,224, + 64,224,160,3,5,5,4,0,0,160,160,224,64,64,3,5, + 5,4,0,0,224,32,224,128,224,3,5,5,4,0,0,224, + 128,128,128,224,3,5,5,4,0,0,128,192,64,96,32,3, + 5,5,4,0,0,224,32,32,32,224,3,2,2,4,0,3, + 224,160,3,1,1,4,0,0,224,2,2,2,3,0,3,192, + 64,4,3,3,5,0,0,224,160,240,3,5,5,4,0,0, + 128,128,224,160,224,3,3,3,4,0,0,224,128,224,3,5, + 5,4,0,0,32,32,224,160,224,3,3,3,4,0,0,224, + 192,224,2,5,5,3,0,0,192,128,192,128,128,3,5,5, + 4,0,254,224,160,224,32,224,3,5,5,4,0,0,128,128, + 224,160,160,1,5,5,2,0,0,128,0,128,128,128,2,7, + 7,3,0,254,64,0,64,64,64,64,192,3,5,5,4,0, + 0,128,128,160,224,160,2,5,5,3,0,0,128,128,128,128, + 192,5,3,3,6,0,0,248,168,168,3,3,3,4,0,0, + 224,160,160,3,3,3,4,0,0,224,160,224,3,5,5,4, + 0,254,224,160,224,128,128,3,5,5,4,0,254,224,160,224, + 32,32,2,3,3,3,0,0,192,128,128,3,3,3,4,0, + 0,96,64,192,2,5,5,3,0,0,128,192,128,128,192,3, + 3,3,4,0,0,160,160,224,3,3,3,4,0,0,160,224, + 64,5,3,3,6,0,0,168,168,248,3,3,3,4,0,0, + 160,64,160,3,5,5,4,0,254,160,160,224,32,224,3,3, + 3,4,0,0,224,64,224,3,5,5,4,0,0,96,64,192, + 64,96,1,5,5,2,0,0,128,128,128,128,128,3,5,5, + 4,0,0,192,64,96,64,192,3,3,3,4,0,1,32,224, + 128,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,4,5,5,5,0,0,112,64,96,64,240, + 255,255,255,3,7,7,4,0,254,224,128,224,160,224,32,224, + 255,255,255,3,2,2,4,0,1,160,160,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,3,2,2,4,0,1, + 160,160,255,255,255,255,255,255,255,255,3,7,7,4,0,0, + 160,0,224,160,224,160,160,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,3,7,7,4,0,0,160,0, + 224,160,160,160,224,255,255,255,255,255,3,7,7,4,0,0, + 160,0,160,160,160,160,224,255,255,3,7,7,4,0,254,224, + 160,224,160,224,128,128,255,255,255,255,4,5,5,5,0,0, + 160,0,224,160,240,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,3,5,5,4,0,0,160,0,224,160, + 224,255,255,255,255,255,3,5,5,4,0,0,160,0,160,160, + 224,255,255,255}; +/* + Fontname: -FreeType-Trixel Square-Medium-R-Normal--8-80-72-72-P-33-ISO10646-1 + Copyright: Copyright julischka 2008 + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 3 h= 5 x= 0 y= 2 dx= 4 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 9 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_trixel_squaren[178] U8G_SECTION(".progmem.u8g_font_trixel_squaren") = { + 0,5,9,0,254,5,0,0,0,0,42,57,0,5,255,5, + 0,3,3,3,4,0,2,160,64,160,3,3,3,4,0,0, + 64,224,64,1,2,2,2,0,255,128,128,3,1,1,4,0, + 1,224,1,1,1,2,0,0,128,3,5,5,4,0,0,32, + 96,64,192,128,3,5,5,4,0,0,224,160,160,160,224,2, + 5,5,3,0,0,64,192,64,64,64,3,5,5,4,0,0, + 224,160,96,192,224,3,5,5,4,0,0,224,32,96,32,224, + 3,5,5,4,0,0,160,160,224,32,32,3,5,5,4,0, + 0,224,128,224,32,224,3,5,5,4,0,0,224,128,224,160, + 224,3,5,5,4,0,0,224,32,32,32,32,3,5,5,4, + 0,0,224,160,224,160,224,3,5,5,4,0,0,224,160,224, + 32,224}; +/* + Fontname: -FreeType-Trixel Square-Medium-R-Normal--8-80-72-72-P-33-ISO10646-1 + Copyright: Copyright julischka 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 7 x= 0 y= 3 dx= 6 dy= 0 ascent= 6 len= 7 + Font Bounding box w= 5 h= 9 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 5 descent=-2 + Max Font ascent = 6 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_trixel_squarer[994] U8G_SECTION(".progmem.u8g_font_trixel_squarer") = { + 0,5,9,0,254,5,1,91,2,177,32,127,254,6,254,5, + 254,0,0,0,1,0,0,1,5,5,2,0,0,128,128,128, + 0,128,3,2,2,4,0,3,160,160,5,5,5,6,0,255, + 80,248,80,248,80,3,6,6,4,0,0,64,224,192,96,224, + 64,3,5,5,4,0,0,160,32,224,128,160,5,5,5,6, + 0,0,224,160,240,160,248,1,2,2,2,0,3,128,128,2, + 5,5,3,0,0,192,128,128,128,192,2,5,5,3,0,0, + 192,64,64,64,192,3,3,3,4,0,2,160,64,160,3,3, + 3,4,0,0,64,224,64,1,2,2,2,0,255,128,128,3, + 1,1,4,0,1,224,1,1,1,2,0,0,128,3,5,5, + 4,0,0,32,96,64,192,128,3,5,5,4,0,0,224,160, + 160,160,224,2,5,5,3,0,0,64,192,64,64,64,3,5, + 5,4,0,0,224,160,96,192,224,3,5,5,4,0,0,224, + 32,96,32,224,3,5,5,4,0,0,160,160,224,32,32,3, + 5,5,4,0,0,224,128,224,32,224,3,5,5,4,0,0, + 224,128,224,160,224,3,5,5,4,0,0,224,32,32,32,32, + 3,5,5,4,0,0,224,160,224,160,224,3,5,5,4,0, + 0,224,160,224,32,224,1,3,3,2,0,0,128,0,128,1, + 4,4,2,0,255,128,0,128,128,3,3,3,4,0,0,96, + 192,96,3,3,3,4,0,0,224,0,224,3,3,3,4,0, + 0,192,96,192,3,5,5,4,0,0,224,32,96,0,64,5, + 6,6,6,0,255,248,136,168,184,128,248,3,5,5,4,0, + 0,224,160,224,160,160,3,5,5,4,0,0,224,160,224,160, + 224,3,5,5,4,0,0,224,160,128,160,224,3,5,5,4, + 0,0,224,160,160,160,224,3,5,5,4,0,0,224,128,192, + 128,224,3,5,5,4,0,0,224,128,192,128,128,3,5,5, + 4,0,0,224,128,160,160,224,3,5,5,4,0,0,160,160, + 224,160,160,1,5,5,2,0,0,128,128,128,128,128,3,5, + 5,4,0,0,224,32,32,32,224,3,5,5,4,0,0,160, + 160,192,160,160,3,5,5,4,0,0,128,128,128,128,224,5, + 5,5,6,0,0,216,216,168,168,136,4,5,5,5,0,0, + 208,208,176,176,144,3,5,5,4,0,0,224,160,160,160,224, + 3,5,5,4,0,0,224,160,224,128,128,4,5,5,5,0, + 0,224,160,160,160,240,3,5,5,4,0,0,224,160,192,160, + 160,3,5,5,4,0,0,224,128,224,32,224,3,5,5,4, + 0,0,224,64,64,64,64,3,5,5,4,0,0,160,160,160, + 160,224,3,5,5,4,0,0,160,160,160,224,64,5,5,5, + 6,0,0,136,136,168,168,248,3,5,5,4,0,0,160,224, + 64,224,160,3,5,5,4,0,0,160,160,224,64,64,3,5, + 5,4,0,0,224,32,224,128,224,3,5,5,4,0,0,224, + 128,128,128,224,3,5,5,4,0,0,128,192,64,96,32,3, + 5,5,4,0,0,224,32,32,32,224,3,2,2,4,0,3, + 224,160,3,1,1,4,0,0,224,2,2,2,3,0,3,192, + 64,4,3,3,5,0,0,224,160,240,3,5,5,4,0,0, + 128,128,224,160,224,3,3,3,4,0,0,224,128,224,3,5, + 5,4,0,0,32,32,224,160,224,3,3,3,4,0,0,224, + 192,224,2,5,5,3,0,0,192,128,192,128,128,3,5,5, + 4,0,254,224,160,224,32,224,3,5,5,4,0,0,128,128, + 224,160,160,1,5,5,2,0,0,128,0,128,128,128,2,7, + 7,3,0,254,64,0,64,64,64,64,192,3,5,5,4,0, + 0,128,128,160,224,160,2,5,5,3,0,0,128,128,128,128, + 192,5,3,3,6,0,0,248,168,168,3,3,3,4,0,0, + 224,160,160,3,3,3,4,0,0,224,160,224,3,5,5,4, + 0,254,224,160,224,128,128,3,5,5,4,0,254,224,160,224, + 32,32,2,3,3,3,0,0,192,128,128,3,3,3,4,0, + 0,96,64,192,2,5,5,3,0,0,128,192,128,128,192,3, + 3,3,4,0,0,160,160,224,3,3,3,4,0,0,160,224, + 64,5,3,3,6,0,0,168,168,248,3,3,3,4,0,0, + 160,64,160,3,5,5,4,0,254,160,160,224,32,224,3,3, + 3,4,0,0,224,64,224,3,5,5,4,0,0,96,64,192, + 64,96,1,5,5,2,0,0,128,128,128,128,128,3,5,5, + 4,0,0,192,64,96,64,192,3,3,3,4,0,1,32,224, + 128,255}; +/* + Fontname: u8glib_4 + Copyright: public domain + Capital A Height: 4, '1' Height: 4 + Calculated Max Values w= 8 h= 7 x= 1 y= 4 dx= 9 dy= 0 ascent= 6 len= 7 + Font Bounding box w=10 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 4 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 6 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_u8glib_4[1660] U8G_SECTION(".progmem.u8g_font_u8glib_4") = { + 1,10,6,0,255,4,0,233,1,198,32,255,255,6,255,5, + 255,2,0,32,2,20,36,128,128,0,128,5,50,66,160,160, + 1,85,101,80,248,80,248,80,1,86,102,32,120,224,56,240, + 32,2,68,84,144,32,64,144,2,69,85,64,160,64,160,240, + 5,18,34,128,128,1,38,54,64,128,128,128,128,64,1,38, + 54,128,64,64,64,64,128,3,34,50,192,192,2,51,67,64, + 224,64,1,18,34,128,128,3,49,65,224,2,17,33,128,2, + 68,84,16,32,64,128,2,52,68,224,160,160,224,2,36,52, + 64,192,64,64,2,52,68,224,32,64,224,2,52,68,224,64, + 32,224,2,52,68,128,160,224,32,2,52,68,224,192,32,224, + 2,52,68,224,128,224,224,2,52,68,224,32,64,128,2,52, + 68,224,224,160,224,2,52,68,224,224,32,224,2,19,35,128, + 0,128,1,20,36,128,0,128,128,2,35,51,64,128,64,2, + 51,67,224,0,224,2,35,51,128,64,128,2,36,52,192,64, + 0,64,2,68,84,240,176,128,240,2,68,84,96,144,240,144, + 2,68,84,224,240,144,240,2,52,68,96,128,128,96,2,68, + 84,224,144,144,224,2,68,84,240,224,128,240,2,68,84,240, + 128,224,128,2,68,84,240,128,176,240,2,68,84,144,240,144, + 144,2,20,36,128,128,128,128,2,52,68,224,32,32,192,2, + 68,84,144,224,144,144,2,52,68,128,128,128,224,2,84,100, + 136,216,168,136,2,68,84,144,208,176,144,2,68,84,96,144, + 144,96,2,68,84,224,144,224,128,2,84,100,240,144,144,232, + 2,68,84,240,240,160,144,2,68,84,112,192,48,224,2,52, + 68,224,64,64,64,2,68,84,144,144,144,240,2,68,84,144, + 144,144,96,2,84,100,136,168,168,80,2,52,68,160,64,64, + 160,2,68,84,144,240,16,240,2,68,84,240,32,64,240,1, + 38,54,192,128,128,128,128,192,2,68,84,128,64,32,16,1, + 38,54,192,64,64,64,64,192,5,50,66,64,160,1,65,81, + 240,5,34,50,128,64,2,51,67,96,160,224,2,52,68,128, + 192,160,192,2,35,51,192,128,192,2,52,68,32,96,160,96, + 2,51,67,224,192,224,2,52,68,32,64,224,64,1,52,68, + 224,224,32,96,2,52,68,128,192,160,160,2,20,36,128,0, + 128,128,1,37,53,64,0,64,64,128,2,52,68,128,160,192, + 160,2,20,36,128,128,128,128,2,83,99,208,168,168,2,51, + 67,192,160,160,2,51,67,224,160,224,1,52,68,192,160,192, + 128,1,52,68,96,160,96,32,2,35,51,192,128,128,2,51, + 67,96,64,192,2,52,68,64,224,64,96,2,51,67,160,160, + 224,2,51,67,160,160,64,2,83,99,136,168,80,2,51,67, + 160,64,160,1,52,68,160,224,32,224,2,51,67,192,64,96, + 1,54,70,96,64,128,128,64,96,1,22,38,128,128,128,128, + 128,128,1,54,70,192,64,32,32,64,192,5,66,82,80,160, + 2,69,85,240,144,144,144,240,2,0,32,2,53,69,160,0, + 160,160,224,2,54,70,64,128,0,224,192,224,2,54,70,64, + 160,0,96,160,224,2,53,69,160,0,96,160,224,2,54,70, + 64,32,0,96,160,224,2,54,70,64,160,64,96,160,224,1, + 36,52,192,128,192,192,2,54,70,64,160,0,224,192,224,2, + 53,69,160,0,224,192,224,2,54,70,64,32,0,224,192,224, + 2,52,68,160,0,64,64,2,53,149,64,160,0,64,64,2, + 37,53,128,64,0,64,64,2,69,85,144,96,144,240,144,2, + 70,86,96,144,96,144,240,144,2,70,86,32,64,240,224,128, + 240,2,83,99,120,176,248,2,132,148,31,46,120,143,2,54, + 70,64,160,0,224,160,224,2,53,69,160,0,224,160,224,2, + 54,70,128,64,0,224,160,224,2,54,70,64,160,0,160,160, + 224,2,54,70,64,32,0,160,160,224,1,54,70,160,0,160, + 224,32,96,2,69,85,144,96,144,144,96,2,69,85,144,0, + 144,144,240,2,0,64,2,0,64,2,0,64,2,0,64,2, + 0,64,2,54,70,64,128,0,96,160,224,2,37,53,64,128, + 0,128,128,2,54,70,32,64,0,224,160,224,2,54,70,32, + 64,0,160,160,224,2,70,70,80,160,0,192,160,160,2,70, + 86,80,160,144,208,176,144,2,21,37,128,128,0,128,128,1, + 54,70,224,128,224,224,32,224,6,65,81,144,1,119,151,124, + 130,186,162,186,130,124,2,0,144,2,51,67,96,192,96,3, + 50,66,224,32,2,0,144,1,119,151,124,130,186,178,170,130, + 124,6,65,81,240,4,51,67,224,160,224,2,52,148,64,224, + 64,224,4,51,67,192,64,96,4,35,51,192,64,192,5,34, + 50,64,128,1,52,148,160,160,224,128,1,101,117,124,244,116, + 20,20,19,17,49,128,2,0,144,4,35,51,192,64,64,4, + 51,67,224,160,224,2,51,67,192,96,192,1,118,134,196,72, + 80,40,78,132,1,118,134,196,72,80,44,68,134,1,118,150, + 196,72,208,40,78,132,2,0,64,2,70,86,64,32,96,144, + 240,144,2,70,86,32,64,96,144,240,144,2,70,86,96,144, + 96,144,240,144,2,70,86,80,160,96,144,240,144,2,69,85, + 144,96,144,240,144,2,70,86,96,0,96,144,240,144,2,132, + 148,31,46,120,143,1,69,85,240,128,240,32,96,2,70,86, + 64,32,240,224,128,240,2,70,86,32,64,240,224,128,240,2, + 70,86,96,144,240,224,128,240,2,70,86,144,0,240,224,128, + 240,2,38,54,128,64,128,128,128,128,2,38,54,64,128,64, + 64,64,64,2,54,70,64,160,64,64,64,64,2,53,69,160, + 64,64,64,64,2,84,100,112,232,72,112,2,70,86,80,160, + 0,144,208,176,2,70,86,64,32,96,144,144,96,2,70,86, + 32,64,96,144,144,96,2,70,86,96,144,96,144,144,96,2, + 70,86,80,160,96,144,144,96,2,69,85,144,96,144,144,96, + 2,51,67,160,64,160,1,102,118,4,56,88,104,112,128,2, + 70,86,64,32,144,144,144,240,2,70,86,32,64,144,144,144, + 240,2,70,86,96,144,0,144,144,240,2,69,85,144,0,144, + 144,240,2,70,86,32,64,144,240,16,240,1,70,86,128,224, + 144,144,224,128,1,53,69,192,192,160,192,128,2,54,70,64, + 32,0,96,160,224,2,54,70,64,128,0,96,160,224,2,54, + 70,64,160,0,96,160,224,2,70,70,80,160,0,96,160,224, + 2,53,69,160,0,96,160,224,2,54,70,64,160,64,96,160, + 224,2,83,99,120,176,248,1,36,52,192,128,192,192,2,54, + 70,64,32,0,224,192,224,2,54,70,64,128,0,224,192,224, + 2,54,70,64,160,0,224,192,224,2,53,69,160,0,224,192, + 224,2,37,53,128,64,0,64,64,2,37,53,64,128,0,128, + 128,2,53,69,64,160,0,64,64,2,52,68,160,0,64,64, + 2,70,86,96,96,16,112,144,96,2,70,70,80,160,0,192, + 160,160,2,54,70,64,32,0,224,160,224,2,54,70,64,128, + 0,224,160,224,2,54,70,64,160,0,224,160,224,2,70,70, + 80,160,0,224,160,224,2,53,69,160,0,224,160,224,2,53, + 69,64,0,224,0,64,1,85,101,8,112,80,112,128,2,54, + 70,64,32,0,160,160,224,2,54,70,64,128,0,160,160,224, + 2,54,70,64,160,0,160,160,224,2,53,69,160,0,160,160, + 224,1,55,71,64,128,0,160,224,32,96,1,53,69,128,192, + 160,192,128,1,54,150,160,0,160,224,32,96}; +/* + Fontname: u8glib_4 + Copyright: public domain + Capital A Height: 4, '1' Height: 4 + Calculated Max Values w= 5 h= 6 x= 0 y= 3 dx= 6 dy= 0 ascent= 5 len= 6 + Font Bounding box w=10 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 4 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_u8glib_4r[664] U8G_SECTION(".progmem.u8g_font_u8glib_4r") = { + 1,10,6,0,255,4,0,233,1,198,32,127,255,5,255,5, + 255,2,0,32,2,20,36,128,128,0,128,5,50,66,160,160, + 1,85,101,80,248,80,248,80,1,86,102,32,120,224,56,240, + 32,2,68,84,144,32,64,144,2,69,85,64,160,64,160,240, + 5,18,34,128,128,1,38,54,64,128,128,128,128,64,1,38, + 54,128,64,64,64,64,128,3,34,50,192,192,2,51,67,64, + 224,64,1,18,34,128,128,3,49,65,224,2,17,33,128,2, + 68,84,16,32,64,128,2,52,68,224,160,160,224,2,36,52, + 64,192,64,64,2,52,68,224,32,64,224,2,52,68,224,64, + 32,224,2,52,68,128,160,224,32,2,52,68,224,192,32,224, + 2,52,68,224,128,224,224,2,52,68,224,32,64,128,2,52, + 68,224,224,160,224,2,52,68,224,224,32,224,2,19,35,128, + 0,128,1,20,36,128,0,128,128,2,35,51,64,128,64,2, + 51,67,224,0,224,2,35,51,128,64,128,2,36,52,192,64, + 0,64,2,68,84,240,176,128,240,2,68,84,96,144,240,144, + 2,68,84,224,240,144,240,2,52,68,96,128,128,96,2,68, + 84,224,144,144,224,2,68,84,240,224,128,240,2,68,84,240, + 128,224,128,2,68,84,240,128,176,240,2,68,84,144,240,144, + 144,2,20,36,128,128,128,128,2,52,68,224,32,32,192,2, + 68,84,144,224,144,144,2,52,68,128,128,128,224,2,84,100, + 136,216,168,136,2,68,84,144,208,176,144,2,68,84,96,144, + 144,96,2,68,84,224,144,224,128,2,84,100,240,144,144,232, + 2,68,84,240,240,160,144,2,68,84,112,192,48,224,2,52, + 68,224,64,64,64,2,68,84,144,144,144,240,2,68,84,144, + 144,144,96,2,84,100,136,168,168,80,2,52,68,160,64,64, + 160,2,68,84,144,240,16,240,2,68,84,240,32,64,240,1, + 38,54,192,128,128,128,128,192,2,68,84,128,64,32,16,1, + 38,54,192,64,64,64,64,192,5,50,66,64,160,1,65,81, + 240,5,34,50,128,64,2,51,67,96,160,224,2,52,68,128, + 192,160,192,2,35,51,192,128,192,2,52,68,32,96,160,96, + 2,51,67,224,192,224,2,52,68,32,64,224,64,1,52,68, + 224,224,32,96,2,52,68,128,192,160,160,2,20,36,128,0, + 128,128,1,37,53,64,0,64,64,128,2,52,68,128,160,192, + 160,2,20,36,128,128,128,128,2,83,99,208,168,168,2,51, + 67,192,160,160,2,51,67,224,160,224,1,52,68,192,160,192, + 128,1,52,68,96,160,96,32,2,35,51,192,128,128,2,51, + 67,96,64,192,2,52,68,64,224,64,96,2,51,67,160,160, + 224,2,51,67,160,160,64,2,83,99,136,168,80,2,51,67, + 160,64,160,1,52,68,160,224,32,224,2,51,67,192,64,96, + 1,54,70,96,64,128,128,64,96,1,22,38,128,128,128,128, + 128,128,1,54,70,192,64,32,32,64,192,5,66,82,80,160, + 2,69,85,240,144,144,144,240}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=16 h=16 x= 4 y=14 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =11 descent=-2 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_0_8[4239] U8G_SECTION(".progmem.u8g_font_unifont_0_8") = { + 0,16,16,0,254,10,1,231,3,213,32,255,254,14,254,11, + 254,0,0,0,8,0,14,1,10,10,8,4,0,128,128,128, + 128,128,128,128,0,128,128,5,4,4,8,2,8,136,136,136, + 136,6,10,10,8,1,0,36,36,36,252,72,72,252,144,144, + 144,7,10,10,8,1,0,16,124,146,144,112,28,18,146,124, + 16,7,10,10,8,1,0,98,148,148,104,16,16,44,82,82, + 140,7,10,10,8,1,0,56,68,68,68,56,114,138,132,140, + 114,1,4,4,8,4,8,128,128,128,128,3,12,12,8,3, + 255,32,64,64,128,128,128,128,128,128,64,64,32,3,12,12, + 8,2,255,128,64,64,32,32,32,32,32,32,64,64,128,7, + 7,7,8,1,1,16,146,84,56,84,146,16,7,7,7,8, + 1,1,16,16,16,254,16,16,16,2,4,4,8,3,254,192, + 64,64,128,6,1,1,8,1,4,252,2,2,2,8,3,0, + 192,192,6,10,10,8,1,0,4,4,8,16,16,32,32,64, + 128,128,6,10,10,8,1,0,48,72,132,132,132,132,132,132, + 72,48,5,10,10,8,2,0,32,96,160,32,32,32,32,32, + 32,248,6,10,10,8,1,0,120,132,132,4,24,32,64,128, + 128,252,6,10,10,8,1,0,120,132,132,4,56,4,4,132, + 132,120,6,10,10,8,1,0,8,24,40,72,136,136,252,8, + 8,8,6,10,10,8,1,0,252,128,128,128,248,4,4,4, + 132,120,6,10,10,8,1,0,56,64,128,128,248,132,132,132, + 132,120,6,10,10,8,1,0,252,4,4,8,8,8,16,16, + 16,16,6,10,10,8,1,0,120,132,132,132,120,132,132,132, + 132,120,6,10,10,8,1,0,120,132,132,132,124,4,4,4, + 8,112,2,7,7,8,3,1,192,192,0,0,0,192,192,2, + 9,9,8,3,255,192,192,0,0,0,192,64,64,128,5,9, + 9,8,2,0,8,16,32,64,128,64,32,16,8,6,5,5, + 8,1,2,252,0,0,0,252,5,9,9,8,1,0,128,64, + 32,16,8,16,32,64,128,6,10,10,8,1,0,120,132,132, + 4,8,16,16,0,16,16,6,10,10,8,1,0,56,68,148, + 172,164,164,164,156,64,60,6,10,10,8,1,0,48,72,72, + 132,132,252,132,132,132,132,6,10,10,8,1,0,248,132,132, + 132,248,132,132,132,132,248,6,10,10,8,1,0,120,132,132, + 128,128,128,128,132,132,120,6,10,10,8,1,0,240,136,132, + 132,132,132,132,132,136,240,6,10,10,8,1,0,252,128,128, + 128,248,128,128,128,128,252,6,10,10,8,1,0,252,128,128, + 128,248,128,128,128,128,128,6,10,10,8,1,0,120,132,132, + 128,128,156,132,132,140,116,6,10,10,8,1,0,132,132,132, + 132,252,132,132,132,132,132,5,10,10,8,2,0,248,32,32, + 32,32,32,32,32,32,248,7,10,10,8,1,0,62,8,8, + 8,8,8,8,136,136,112,6,10,10,8,1,0,132,136,144, + 160,192,192,160,144,136,132,6,10,10,8,1,0,128,128,128, + 128,128,128,128,128,128,252,6,10,10,8,1,0,132,132,204, + 204,180,180,132,132,132,132,6,10,10,8,1,0,132,196,196, + 164,164,148,148,140,140,132,6,10,10,8,1,0,120,132,132, + 132,132,132,132,132,132,120,6,10,10,8,1,0,248,132,132, + 132,248,128,128,128,128,128,7,11,11,8,1,255,120,132,132, + 132,132,132,132,180,204,120,6,6,10,10,8,1,0,248,132, + 132,132,248,144,136,136,132,132,6,10,10,8,1,0,120,132, + 132,128,96,24,4,132,132,120,7,10,10,8,1,0,254,16, + 16,16,16,16,16,16,16,16,6,10,10,8,1,0,132,132, + 132,132,132,132,132,132,132,120,7,10,10,8,1,0,130,130, + 130,68,68,68,40,40,16,16,6,10,10,8,1,0,132,132, + 132,132,180,180,204,204,132,132,6,10,10,8,1,0,132,132, + 72,72,48,48,72,72,132,132,7,10,10,8,1,0,130,130, + 68,68,40,16,16,16,16,16,6,10,10,8,1,0,252,4, + 4,8,16,32,64,128,128,252,3,12,12,8,4,255,224,128, + 128,128,128,128,128,128,128,128,128,224,6,10,10,8,1,0, + 128,128,64,32,32,16,16,8,4,4,3,12,12,8,1,255, + 224,32,32,32,32,32,32,32,32,32,32,224,6,3,3,8, + 1,9,48,72,132,7,1,1,8,1,255,254,3,3,3,8, + 2,10,128,64,32,6,8,8,8,1,0,120,132,4,124,132, + 132,140,116,6,11,11,8,1,0,128,128,128,184,196,132,132, + 132,132,196,184,6,8,8,8,1,0,120,132,128,128,128,128, + 132,120,6,11,11,8,1,0,4,4,4,116,140,132,132,132, + 132,140,116,6,8,8,8,1,0,120,132,132,252,128,128,132, + 120,5,11,11,8,1,0,24,32,32,32,248,32,32,32,32, + 32,32,6,11,11,8,1,254,4,116,136,136,136,112,64,120, + 132,132,120,6,11,11,8,1,0,128,128,128,184,196,132,132, + 132,132,132,132,5,11,11,8,2,0,32,32,0,96,32,32, + 32,32,32,32,248,5,13,13,8,1,254,8,8,0,24,8, + 8,8,8,8,8,8,144,96,6,10,10,8,1,0,128,128, + 136,144,160,192,160,144,136,132,5,10,10,8,2,0,96,32, + 32,32,32,32,32,32,32,248,7,8,8,8,1,0,236,146, + 146,146,146,146,146,146,6,8,8,8,1,0,184,196,132,132, + 132,132,132,132,6,8,8,8,1,0,120,132,132,132,132,132, + 132,120,6,10,10,8,1,254,184,196,132,132,132,132,196,184, + 128,128,6,10,10,8,1,254,116,140,132,132,132,132,140,116, + 4,4,6,8,8,8,1,0,184,196,132,128,128,128,128,128, + 6,8,8,8,1,0,120,132,128,96,24,4,132,120,5,10, + 10,8,1,0,32,32,248,32,32,32,32,32,32,24,6,8, + 8,8,1,0,132,132,132,132,132,132,140,116,6,8,8,8, + 1,0,132,132,132,72,72,72,48,48,7,8,8,8,1,0, + 130,146,146,146,146,146,146,108,6,8,8,8,1,0,132,132, + 72,48,48,72,132,132,6,10,10,8,1,254,132,132,132,132, + 132,76,52,4,4,120,6,8,8,8,1,0,252,4,8,16, + 32,64,128,252,3,12,12,8,3,255,96,128,128,64,64,128, + 128,64,64,128,128,96,1,14,14,8,4,254,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,3,12,12,8,2,255, + 192,32,32,64,64,32,32,64,64,32,32,192,7,3,3,8, + 1,8,98,146,140,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,115,209,202,16,75,209,202,16,115,223,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,113,157,202,82,115, + 211,194,82,66,93,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,73,157,202,82,122,93,202,80,73,145,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,115,147,202,82,115,159,202,18,114, + 19,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,75,147,234, + 82,91,159,202,82,75,147,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,116,185,166,164,37,165,164,164,116,185,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,75,209,234,16,91,209,202, + 16,75,223,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,57, + 205,194,18,49,159,136,82,115,147,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,121,205,194,18,121,159,192,82,123,147,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,75,157,201,32,121, + 25,201,4,73,57,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,75,185,201,8,121,9,201,8,73,49,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,69,205,196,144,68,137,168,132,16, + 153,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,114,29,202, + 18,114,19,194,18,67,221,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,114,19,202,18,114,19,194,18,67,205,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,14,33,137,32,14,33,138, + 32,9,33,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,57, + 221,194,2,49,141,136,80,115,159,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,57,221,194,2,49,141,136,66,115,157,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,113,207,202,16,74, + 13,202,2,113,221,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,114,69,202,76,114,69,194,68,65,143,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,114,93,202,66,114,77,194,80,65, + 159,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,59,157,193, + 32,49,25,137,4,113,57,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,57,211,194,18,66,31,194,18,57,211,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,69,17,237,16,85,81,197, + 176,69,17,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,59, + 141,194,82,51,159,138,18,114,19,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,123,141,194,82,123,159,194,18,122,19,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,57,143,194,80,50, + 77,138,66,113,157,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,51,155,196,34,37,163,148,162,99,155,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,57,221,194,8,50,9,138,8,113, + 221,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,57,221,194, + 8,65,137,192,72,59,157,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,14,249,144,32,12,33,130,32,28,33,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,49,207,202,16,73,145,200, + 80,51,143,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,114, + 33,203,96,114,161,194,32,66,33,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,51,143,202,80,123,145,202,16,74,15,128, + 0,0,1,128,0,0,1,128,0,85,85,6,13,13,8,1, + 0,96,24,0,252,128,128,128,248,128,128,128,128,252,6,14, + 14,8,1,0,72,72,0,0,252,128,128,128,248,128,128,128, + 128,252,7,10,10,8,1,0,252,32,32,32,60,34,34,34, + 34,44,6,14,14,8,1,0,24,96,0,0,252,128,128,128, + 128,128,128,128,128,128,6,10,10,8,1,0,56,68,128,128, + 248,128,128,128,68,56,6,10,10,8,1,0,120,132,132,128, + 96,24,4,132,132,120,5,10,10,8,2,0,248,32,32,32, + 32,32,32,32,32,248,5,14,14,8,2,0,144,144,0,0, + 248,32,32,32,32,32,32,32,32,248,6,10,10,8,1,0, + 28,8,8,8,8,8,8,136,136,112,8,10,10,8,0,0, + 120,72,72,72,78,73,73,73,73,142,7,10,10,8,1,0, + 144,144,144,144,252,146,146,146,146,156,7,10,10,8,1,0, + 252,32,32,32,60,34,34,34,34,34,6,14,14,8,1,0, + 24,96,0,0,128,140,144,160,192,192,160,144,136,132,6,13, + 13,8,1,0,96,24,0,132,140,140,148,148,164,164,196,196, + 132,7,14,14,8,1,0,132,132,120,0,130,130,68,68,40, + 40,16,16,32,96,7,10,10,8,1,0,130,130,130,130,130, + 130,254,16,16,16,6,10,10,8,1,0,48,72,72,132,132, + 132,252,132,132,132,6,10,10,8,1,0,248,128,128,128,248, + 132,132,132,132,248,6,10,10,8,1,0,248,132,132,132,248, + 132,132,132,132,248,6,10,10,8,1,0,252,128,128,128,128, + 128,128,128,128,128,8,12,12,8,0,254,14,18,18,18,34, + 34,34,66,66,255,129,129,6,10,10,8,1,0,252,128,128, + 128,248,128,128,128,128,252,7,10,10,8,1,0,146,146,84, + 84,56,56,84,84,146,146,6,10,10,8,1,0,120,132,4, + 4,120,8,4,4,132,120,6,10,10,8,1,0,132,140,140, + 148,148,164,164,196,196,132,6,13,13,8,1,0,72,48,0, + 132,140,140,148,148,164,164,196,196,132,6,10,10,8,1,0, + 128,140,144,160,192,192,160,144,136,132,6,10,10,8,1,0, + 60,36,36,36,36,36,36,68,68,132,6,10,10,8,1,0, + 132,132,204,204,180,180,132,132,132,132,6,10,10,8,1,0, + 132,132,132,132,252,132,132,132,132,132,6,10,10,8,1,0, + 120,132,132,132,132,132,132,132,132,120,6,10,10,8,1,0, + 252,132,132,132,132,132,132,132,132,132,6,10,10,8,1,0, + 248,132,132,132,248,128,128,128,128,128,6,10,10,8,1,0, + 120,132,132,128,128,128,128,132,132,120,7,10,10,8,1,0, + 254,16,16,16,16,16,16,16,16,16,7,10,10,8,1,0, + 130,130,68,68,40,40,16,16,32,96,7,11,11,8,1,0, + 16,124,146,146,146,146,146,124,16,16,16,6,10,10,8,1, + 0,132,132,72,72,48,48,72,72,132,132,7,12,12,8,1, + 254,132,132,132,132,132,132,132,132,132,254,2,2,6,10,10, + 8,1,0,132,132,132,132,132,252,4,4,4,4,7,10,10, + 8,1,0,146,146,146,146,146,146,146,146,146,254,8,12,12, + 8,0,254,146,146,146,146,146,146,146,146,146,255,1,1,7, + 10,10,8,1,0,224,32,32,32,60,34,34,34,34,60,6, + 10,10,8,1,0,132,132,132,132,228,148,148,148,148,228,6, + 10,10,8,1,0,128,128,128,128,248,132,132,132,132,248,6, + 10,10,8,1,0,112,136,4,4,124,4,4,4,136,112,6, + 10,10,8,1,0,152,164,164,164,228,164,164,164,164,152,6, + 10,10,8,1,0,124,132,132,132,124,36,68,68,132,132,6, + 8,8,8,1,0,120,132,4,124,132,132,140,116,6,12,12, + 8,1,0,4,56,64,128,248,132,132,132,132,132,132,120,6, + 8,8,8,1,0,248,132,132,248,132,132,132,248,6,8,8, + 8,1,0,252,128,128,128,128,128,128,128,7,9,9,8,1, + 255,60,36,68,68,132,132,132,254,130,6,8,8,8,1,0, + 120,132,132,252,128,128,132,120,7,8,8,8,1,0,146,146, + 84,56,56,84,146,146,6,8,8,8,1,0,120,132,4,120, + 8,4,132,120,6,8,8,8,1,0,140,140,148,148,164,164, + 196,196,6,12,12,8,1,0,72,48,0,0,140,140,148,148, + 164,164,196,196,6,8,8,8,1,0,140,144,160,192,160,144, + 136,132,6,8,8,8,1,0,60,36,36,36,36,68,68,132, + 6,8,8,8,1,0,132,204,204,180,180,132,132,132,6,8, + 8,8,1,0,132,132,132,252,132,132,132,132,6,8,8,8, + 1,0,120,132,132,132,132,132,132,120,6,8,8,8,1,0, + 252,132,132,132,132,132,132,132,6,10,10,8,1,254,248,132, + 132,132,132,248,128,128,128,128,6,8,8,8,1,0,120,132, + 128,128,128,128,132,120,7,8,8,8,1,0,254,16,16,16, + 16,16,16,16,6,10,10,8,1,254,132,132,72,72,48,48, + 32,32,64,192,7,10,10,8,1,255,16,16,124,146,146,146, + 146,124,16,16,6,8,8,8,1,0,132,132,72,48,48,72, + 132,132,7,10,10,8,1,254,132,132,132,132,132,132,132,254, + 2,2,6,8,8,8,1,0,132,132,132,132,252,4,4,4, + 7,8,8,8,1,0,146,146,146,146,146,146,146,254,8,10, + 10,8,0,254,146,146,146,146,146,146,146,255,1,1,7,8, + 8,8,1,0,224,32,32,60,34,34,34,60,6,8,8,8, + 1,0,132,132,132,228,148,148,148,228,6,8,8,8,1,0, + 128,128,128,248,132,132,132,248,6,8,8,8,1,0,112,136, + 4,124,4,4,136,112,6,8,8,8,1,0,152,164,164,228, + 164,164,164,152,6,8,8,8,1,0,124,132,132,132,124,36, + 68,132,6,12,12,8,1,0,96,24,0,0,120,132,132,252, + 128,128,132,120,6,12,12,8,1,0,72,72,0,0,120,132, + 132,252,128,128,132,120,6,11,11,8,1,255,64,64,240,64, + 64,120,68,68,68,68,24,6,12,12,8,1,0,24,96,0, + 0,252,128,128,128,128,128,128,128,6,8,8,8,1,0,56, + 68,128,248,128,128,68,56,6,8,8,8,1,0,120,132,128, + 96,24,4,132,120,5,11,11,8,2,0,32,32,0,96,32, + 32,32,32,32,32,248,5,11,11,8,2,0,144,144,0,96, + 32,32,32,32,32,32,248,5,13,13,8,1,254,8,8,0, + 24,8,8,8,8,8,8,8,144,96,8,8,8,8,0,0, + 120,72,72,78,73,73,73,142,7,8,8,8,1,0,144,144, + 144,252,146,146,146,156,6,10,10,8,1,0,64,64,240,64, + 64,88,100,68,68,68,6,12,12,8,1,0,24,96,0,0, + 140,144,160,192,160,144,136,132,6,12,12,8,1,0,96,24, + 0,0,140,140,148,148,164,164,196,196,6,15,15,8,1,254, + 132,132,120,0,0,132,132,72,72,48,48,32,32,64,192,5, + 10,10,8,2,254,136,136,136,136,136,136,248,32,32,32}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 8, '1' Height: 7 + Calculated Max Values w=16 h=16 x= 9 y=11 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent= 2 + X Font ascent =13 descent= 0 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_12_13[3934] U8G_SECTION(".progmem.u8g_font_unifont_12_13") = { + 0,16,16,0,254,8,4,93,5,214,0,255,2,14,254,13, + 0,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,74,81,234,80,90,81,201,158,0,1,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,85,85,128, + 0,0,1,128,0,0,1,128,0,0,1,128,0,0,1,128, + 4,42,13,170,12,53,245,128,0,0,1,170,170,16,16,32, + 16,0,254,85,85,128,0,0,1,128,0,0,1,128,0,0, + 1,128,0,0,1,142,0,14,25,135,224,0,1,128,0,0, + 1,170,170,16,16,32,16,0,254,85,85,128,0,0,1,128, + 0,0,1,128,0,0,25,128,36,0,69,129,68,1,73,158, + 240,0,1,128,0,0,1,170,170,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,12,14,28,16,1,255,1,80,225,80,33,160,17,0,17, + 0,9,0,8,0,4,224,4,128,2,128,3,0,3,0,2, + 0,2,0,11,15,30,16,1,255,0,64,0,128,225,0,33, + 64,16,128,17,32,8,192,8,0,4,224,4,128,2,128,3, + 0,3,0,2,0,2,0,12,7,14,16,2,3,1,144,58, + 96,202,192,17,64,16,64,32,128,31,0,5,10,10,8,1, + 1,8,8,80,16,32,32,64,64,136,160,7,10,10,8,1, + 1,8,8,80,16,32,32,64,66,136,160,10,10,20,16,3, + 2,48,0,48,0,6,0,9,0,7,0,1,0,14,0,240, + 128,0,64,0,64,2,4,4,8,3,3,64,128,192,192,5, + 4,4,8,1,2,24,48,64,128,12,4,8,16,3,1,112, + 0,136,0,136,48,127,192,7,11,11,16,2,0,24,32,32, + 24,32,76,82,98,36,88,128,6,4,4,8,2,9,24,36, + 228,88,9,6,12,16,4,7,3,0,4,0,39,128,56,0, + 64,0,128,0,10,5,10,16,3,8,252,64,16,64,32,128, + 71,0,64,0,11,4,8,16,2,9,24,32,36,32,228,64, + 89,128,10,4,8,16,3,8,0,64,254,64,1,64,0,128, + 7,4,4,16,4,9,64,92,98,252,8,6,6,16,3,8, + 40,40,40,104,128,127,3,5,5,16,6,8,32,0,32,32, + 192,4,2,2,16,6,10,48,192,5,5,5,16,5,8,16, + 40,48,96,144,4,13,13,16,6,254,240,0,0,0,0,0, + 0,0,0,0,0,48,192,2,5,5,8,3,2,64,128,192, + 0,192,6,14,14,8,1,255,168,84,168,84,168,84,168,84, + 168,84,168,84,168,84,6,14,14,8,1,255,168,84,168,84, + 168,84,168,84,168,84,168,84,168,84,3,3,3,16,7,0, + 64,0,160,7,9,9,8,1,2,124,130,128,64,32,16,16, + 0,16,6,14,14,8,1,255,168,84,168,84,168,84,168,84, + 168,84,168,84,168,84,4,5,5,8,2,2,112,128,240,64, + 128,7,10,10,8,1,3,2,124,128,16,16,16,16,16,16, + 16,3,11,11,8,2,3,96,128,96,128,32,32,32,32,32, + 32,32,6,13,13,8,1,255,24,32,24,32,0,24,36,36, + 60,4,8,144,96,3,12,12,8,3,254,64,64,64,64,64, + 64,64,0,96,128,96,128,6,11,11,8,1,255,48,64,48, + 64,0,140,144,144,140,132,120,1,8,8,8,4,3,128,128, + 128,128,128,128,128,128,6,7,7,8,1,0,8,68,132,120, + 0,0,16,5,8,8,8,2,3,144,0,0,96,144,136,136, + 112,6,7,7,8,1,3,40,0,0,8,68,132,120,6,9, + 9,8,1,3,32,0,80,0,0,8,68,132,120,6,8,8, + 8,1,254,252,32,64,128,144,128,68,56,6,8,8,8,1, + 254,252,32,64,128,128,128,68,56,6,11,11,8,1,254,32, + 0,0,252,32,64,128,128,128,68,56,6,5,5,8,1,3, + 16,8,4,132,248,6,7,7,8,1,3,64,0,16,8,4, + 132,248,6,7,7,8,1,255,8,4,4,4,8,144,96,6, + 10,10,8,1,255,32,0,0,8,4,4,4,8,144,96,7, + 7,7,8,1,255,2,42,42,188,144,144,96,7,12,12,8, + 1,255,16,0,36,0,0,2,42,42,188,144,144,96,7,6, + 6,8,1,0,12,50,156,144,144,96,7,9,9,8,1,0, + 8,0,0,12,50,156,144,144,96,6,8,8,8,1,3,64, + 64,64,64,88,100,68,248,6,8,8,8,1,3,64,72,64, + 64,88,100,68,248,6,9,9,8,1,254,48,72,64,56,64, + 128,128,132,120,6,12,12,8,1,254,16,0,0,48,72,64, + 56,64,128,128,132,120,7,9,9,8,0,3,80,4,8,16, + 32,64,60,130,126,7,12,12,8,0,255,4,8,16,32,64, + 60,130,126,0,40,0,16,6,10,10,8,1,255,64,160,160, + 8,148,144,136,132,132,120,6,9,9,8,1,255,160,0,8, + 148,144,136,132,132,120,6,10,10,8,1,255,64,0,160,8, + 148,144,136,132,132,120,8,1,1,8,0,3,255,6,8,8, + 8,1,3,16,0,12,20,12,132,132,120,6,10,10,8,1, + 0,72,0,0,56,36,20,76,132,136,112,6,8,8,8,1, + 3,4,20,36,20,68,132,132,120,6,11,11,8,1,0,4, + 4,4,4,4,4,68,132,132,136,120,5,8,8,8,2,254, + 112,24,120,128,128,128,128,128,6,9,9,8,1,0,32,0, + 0,8,68,132,132,136,112,10,9,18,16,1,1,4,0,3, + 0,6,128,10,64,10,64,6,64,25,128,96,0,128,0,6, + 8,8,8,1,255,24,36,36,60,4,8,144,96,6,7,7, + 8,1,255,8,148,144,136,132,132,120,6,8,8,8,1,254, + 8,148,144,136,132,120,0,80,4,4,4,8,2,9,48,192, + 48,192,5,5,5,8,2,8,24,24,200,80,224,4,4,4, + 8,2,0,32,192,48,192,4,2,2,8,2,9,48,192,4, + 6,6,8,2,6,64,160,160,112,64,128,4,2,2,8,2, + 254,48,192,5,4,4,8,1,7,8,40,176,192,4,4,4, + 8,2,7,96,144,144,96,7,3,3,8,1,9,2,124,128, + 3,4,4,8,2,10,96,128,96,128,3,4,4,8,2,254, + 96,128,96,128,2,3,3,16,9,254,128,64,64,5,5,5, + 16,5,9,8,16,32,224,96,4,3,3,16,6,9,144,144, + 96,4,1,1,16,6,10,240,5,4,4,16,5,9,136,80, + 32,32,5,4,4,16,5,9,32,32,80,136,2,2,2,16, + 7,0,192,192,5,5,5,16,5,9,96,224,32,16,8,4, + 4,4,16,6,9,144,96,96,144,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,3,3,3, + 8,2,5,64,224,64,4,9,9,8,2,2,128,128,64,64, + 32,32,16,16,16,5,9,9,8,2,2,136,144,96,64,32, + 32,16,16,16,7,9,9,8,1,2,146,164,120,64,32,32, + 16,16,16,6,9,9,8,1,2,8,16,32,64,48,64,128, + 132,120,6,9,9,8,1,2,48,72,72,132,132,132,132,72, + 48,7,9,9,8,1,2,128,120,8,8,4,4,4,2,2, + 7,9,9,8,1,2,130,130,68,68,40,40,16,16,16,7, + 9,9,8,1,2,16,16,16,40,40,68,68,130,130,7,9, + 9,8,1,2,48,72,136,152,104,4,4,2,2,5,10,10, + 8,1,2,8,8,144,144,32,32,72,72,128,128,2,4,4, + 8,3,1,192,192,64,128,2,4,4,8,3,7,192,192,64, + 128,7,6,6,8,1,3,16,16,254,56,108,68,6,4,4, + 8,1,3,8,68,132,120,8,7,7,16,1,3,6,9,9, + 7,65,130,124,1,4,4,8,4,7,128,128,128,128,5,11, + 11,8,2,3,16,40,120,128,32,32,32,32,32,32,32,6, + 11,11,8,1,3,12,16,76,176,0,16,16,16,16,16,16, + 6,12,12,8,1,254,16,16,16,16,16,16,16,0,12,16, + 76,176,3,4,4,8,2,10,96,128,96,128,5,11,11,8, + 2,3,24,32,24,32,128,128,128,128,128,128,128,7,13,13, + 8,1,255,6,8,6,8,0,24,36,36,60,4,8,144,96, + 7,13,13,8,1,255,102,104,38,72,128,24,36,36,60,4, + 8,144,96,7,11,11,8,1,255,6,8,6,8,0,140,144, + 144,140,132,120,6,9,9,8,1,3,64,64,112,112,0,8, + 68,132,120,6,9,9,8,1,3,32,0,32,0,0,8,68, + 132,120,6,8,8,8,1,255,8,68,132,120,0,16,0,16, + 6,10,10,8,1,0,40,0,0,8,68,132,120,16,40,16, + 6,9,9,8,1,3,80,0,32,0,0,8,68,132,120,6, + 8,8,8,1,255,8,68,132,120,0,40,0,16,6,9,9, + 8,1,3,80,0,80,0,0,8,68,132,120,6,8,8,8, + 1,255,8,68,132,120,0,40,0,40,6,13,13,8,1,254, + 48,64,48,64,0,252,32,64,128,128,128,68,56,6,13,13, + 8,1,254,32,0,32,0,0,252,32,64,128,128,128,68,56, + 6,8,8,8,1,254,252,32,64,128,168,128,68,56,6,8, + 8,8,1,254,252,32,64,144,128,144,68,56,6,13,13,8, + 1,254,32,0,72,0,0,252,32,64,128,128,128,68,56,6, + 8,8,8,1,254,252,64,128,168,128,144,68,56,6,8,8, + 8,1,254,252,64,128,168,128,168,68,56,6,10,10,8,1, + 3,64,64,112,112,0,16,8,4,132,248,6,8,8,8,1, + 0,16,8,4,132,248,16,40,16,6,7,7,8,1,1,16, + 8,4,132,248,0,16,6,12,12,8,1,1,64,64,112,112, + 0,16,8,4,132,248,0,16,6,8,8,8,1,3,80,0, + 0,16,8,4,132,248,6,7,7,8,1,1,16,8,4,132, + 248,0,80,6,9,9,8,1,3,32,0,80,0,16,8,4, + 132,248,6,9,9,8,1,3,80,0,32,0,16,8,4,132, + 248,6,9,9,8,1,3,80,0,80,0,16,8,4,132,248, + 6,13,13,8,1,255,16,16,28,28,0,0,8,4,4,4, + 8,144,96,7,13,13,8,1,255,34,20,8,8,0,0,8, + 4,4,4,8,144,96,6,8,8,8,1,254,8,4,4,4, + 8,152,116,8,6,7,7,8,1,255,8,4,4,4,8,144, + 100,7,8,8,8,1,254,16,8,8,8,16,144,106,4,6, + 7,7,8,1,255,8,4,4,36,8,144,100,6,10,10,8, + 1,255,36,0,0,8,4,4,4,8,144,96,6,12,12,8, + 1,255,16,0,40,0,0,8,4,4,4,8,144,96,6,12, + 12,8,1,255,36,0,36,0,0,8,4,4,4,8,144,96, + 7,10,10,8,1,0,8,0,0,2,42,42,188,144,148,96, + 7,8,8,8,1,255,2,42,42,188,160,170,64,4,7,13, + 13,8,1,255,16,0,36,0,0,2,42,42,188,160,170,64, + 4,7,6,6,8,1,0,12,50,156,160,170,64,7,11,11, + 8,1,0,16,0,36,0,0,12,50,156,144,144,96,6,8, + 8,8,1,3,72,64,84,64,88,100,68,248,6,14,14,8, + 1,254,32,0,72,0,0,48,72,64,56,64,128,128,132,120, + 6,6,6,8,1,3,12,20,12,132,132,120,6,8,8,8, + 1,1,12,20,12,132,132,120,0,16,6,11,11,8,1,1, + 8,0,0,12,20,12,132,132,120,0,16,6,10,10,8,1, + 3,16,0,36,0,12,20,12,132,132,120,6,10,10,8,1, + 255,12,20,12,132,132,120,0,72,0,32,6,10,10,8,1, + 3,20,0,20,0,12,20,12,132,132,120,6,10,10,8,1, + 0,8,0,0,56,36,20,76,132,136,112,6,12,12,8,1, + 0,32,0,72,0,0,56,36,20,76,132,136,112,7,8,8, + 8,0,3,4,8,16,32,64,60,130,126,14,8,16,16,1, + 3,0,48,0,192,3,0,12,0,16,0,15,248,128,4,127, + 248,7,8,8,8,0,3,4,12,26,36,64,60,130,126,6, + 10,10,8,1,3,16,0,4,20,36,20,68,132,132,120,6, + 11,11,8,1,3,32,0,80,4,20,36,20,68,132,132,120, + 6,12,12,8,1,255,4,20,36,20,68,132,132,120,0,40, + 0,16,7,10,10,8,0,3,8,16,36,72,16,32,64,60, + 130,126,7,10,10,8,0,3,8,16,36,76,26,36,64,60, + 130,126,7,10,10,8,0,3,80,6,24,98,12,48,64,60, + 130,126,7,12,12,8,0,1,8,16,36,72,16,32,64,60, + 130,126,0,40,7,14,14,8,0,255,8,16,36,72,16,32, + 64,60,130,126,0,16,0,16,7,11,11,8,0,3,64,0, + 166,24,98,12,48,64,60,130,126,7,14,14,8,1,0,34, + 20,8,8,0,4,4,4,4,68,132,132,136,120,6,13,13, + 8,1,0,4,0,4,4,4,4,4,4,68,132,132,136,120, + 7,14,14,8,1,0,8,0,18,0,4,4,4,4,4,68, + 132,132,136,120,6,13,13,8,1,254,4,4,4,4,4,4, + 68,132,120,0,40,0,16,6,11,11,8,1,254,16,0,0, + 8,68,132,132,136,112,0,16,6,6,6,8,1,0,8,68, + 132,132,136,112,6,12,12,8,1,0,32,32,56,56,0,0, + 8,68,132,132,136,112,6,11,11,8,1,254,16,0,0,8, + 68,132,132,136,120,20,8,6,11,11,8,1,0,32,0,72, + 0,0,8,68,132,132,136,112,6,6,6,8,1,2,32,88, + 84,52,72,128,6,11,11,8,1,254,32,0,0,252,64,128, + 168,128,144,68,56,4,10,10,8,2,3,96,128,96,128,0, + 64,96,144,144,240,6,3,3,8,1,2,32,92,128,6,8, + 8,8,1,2,48,64,48,64,0,32,92,128,6,6,6,8, + 1,2,80,0,0,32,92,128,6,8,8,8,1,255,24,36, + 36,28,68,164,72,240,6,8,8,8,1,255,24,36,36,60, + 4,56,144,96,6,13,13,8,1,255,68,40,16,16,0,24, + 36,36,60,4,8,144,96,6,14,14,8,1,255,32,80,80, + 56,32,64,152,36,36,60,4,8,144,96,6,12,12,8,1, + 255,16,8,8,0,24,36,36,60,4,8,144,96,6,12,12, + 8,1,255,16,40,68,0,24,36,36,60,4,8,144,96,6, + 11,11,8,1,255,40,0,0,24,36,36,60,4,8,144,96, + 6,13,13,8,1,255,16,0,36,0,0,24,36,36,60,4, + 8,144,96,6,7,7,8,1,255,8,148,144,136,132,132,120, + 7,7,7,8,0,255,4,42,104,164,34,34,28,6,12,12, + 8,1,255,136,80,32,32,0,8,148,144,136,132,132,120,6, + 11,11,8,1,255,16,0,0,24,36,36,60,4,8,144,96, + 6,9,9,8,1,254,24,164,144,136,112,0,32,0,32,6, + 9,9,8,1,254,24,164,144,136,112,0,80,0,32,7,6, + 6,8,1,255,16,40,32,64,128,254,7,10,10,8,1,255, + 96,128,96,128,16,40,32,64,128,254,4,1,1,8,2,3, + 240,4,5,5,8,2,3,64,96,144,144,240,11,5,10,16, + 3,9,16,64,18,224,127,224,128,0,254,0,10,5,10,16, + 3,9,18,64,17,0,127,0,128,0,254,0,6,4,4,16, + 5,9,8,20,60,192,5,5,5,16,4,9,136,72,48,16, + 48,8,5,5,16,3,9,252,32,72,33,30,3,3,3,16, + 4,8,160,0,128,9,4,8,16,4,9,18,128,159,128,144, + 0,96,0,16,16,32,16,0,254,85,85,128,0,1,193,134, + 48,11,233,140,24,16,5,144,4,16,5,140,24,11,233,134, + 48,1,193,128,0,0,1,170,170,15,15,30,16,1,254,1, + 0,2,128,63,248,40,40,48,24,35,136,100,76,164,74,100, + 76,35,136,48,24,40,40,63,248,2,128,1,0,3,4,4, + 16,6,9,96,160,160,96,4,5,5,16,6,9,96,144,144, + 144,96,6,3,3,16,5,10,252,48,64,3,5,5,16,6, + 9,96,224,128,128,64,9,4,8,16,4,254,18,128,159,128, + 144,0,96,0,6,2,2,16,5,10,12,240,5,4,4,8, + 2,9,24,24,16,224,7,4,4,8,1,9,32,64,128,254, + 7,4,4,16,3,9,32,64,128,254,6,4,4,16,5,9, + 16,132,132,124,15,15,30,16,1,254,1,0,2,128,5,64, + 10,160,21,80,42,168,84,84,42,168,42,168,42,168,43,168, + 40,40,47,232,96,12,255,254,5,5,5,16,5,9,32,80, + 136,80,32,5,5,5,16,5,254,32,80,136,80,32,2,2, + 2,16,7,11,192,192,2,4,4,16,7,254,192,128,128,64, + 6,9,9,8,1,3,16,40,68,0,16,8,4,132,248,7, + 11,11,8,1,255,8,20,34,0,8,4,4,4,8,144,96, + 3,3,3,8,2,5,64,224,64,4,9,9,8,2,2,128, + 128,64,64,32,32,16,16,16,5,9,9,8,2,2,136,144, + 96,64,32,32,16,16,16,7,9,9,8,1,2,146,164,120, + 64,32,32,16,16,16,6,9,9,8,1,2,48,72,192,228, + 88,64,32,32,32,7,9,9,8,1,1,16,16,40,40,68, + 68,146,170,198,6,8,8,8,1,2,56,68,64,64,48,12, + 48,192,7,9,9,8,1,2,130,130,68,68,40,40,16,16, + 16,7,9,9,8,1,2,16,16,16,40,40,68,68,130,130, + 7,9,9,8,1,2,48,72,136,152,104,4,4,2,2,7, + 12,12,8,1,0,16,0,36,0,0,2,42,42,188,144,148, + 96,7,9,9,8,1,0,8,0,0,12,50,156,144,148,96, + 6,12,12,8,1,254,16,0,0,48,72,64,56,64,144,128, + 132,120,4,10,10,8,2,254,112,128,240,64,128,0,80,80, + 80,80,6,8,8,8,1,254,56,12,124,128,148,148,148,148, + 10,12,24,16,1,1,4,0,10,0,17,0,4,0,3,0, + 6,128,10,64,10,64,6,64,25,128,96,0,128,0}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 3, '1' Height: 12 + Calculated Max Values w=16 h=16 x=12 y=11 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 3 descent=-2 + X Font ascent =12 descent=-2 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_18_19[6498] U8G_SECTION(".progmem.u8g_font_unifont_18_19") = { + 0,16,16,0,254,3,7,129,10,5,0,255,254,14,254,12, + 254,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,74,81,234,80,90,81,201,158,0,1,128,0,0,1,128, + 0,0,1,128,0,85,85,8,4,4,16,4,9,152,91,35, + 28,2,2,2,16,7,11,192,192,2,5,5,16,12,3,192, + 192,0,192,192,14,15,30,16,2,255,32,0,31,0,0,128, + 57,252,68,192,4,192,12,192,56,192,8,192,135,192,134,192, + 78,192,60,192,0,192,0,64,15,12,24,16,1,255,57,254, + 68,192,4,192,12,192,56,192,8,192,135,192,134,192,78,192, + 60,192,0,192,0,64,15,12,24,16,1,255,57,254,68,204, + 4,204,12,204,56,204,8,204,135,204,134,204,78,204,60,204, + 0,204,0,68,16,13,26,16,0,254,255,255,0,192,0,192, + 15,192,24,0,24,0,15,224,0,48,3,48,5,176,7,224, + 0,64,0,32,16,16,32,16,0,254,3,192,6,32,1,0, + 255,255,0,192,0,192,15,192,24,0,24,0,15,224,0,48, + 3,48,5,176,7,224,0,64,0,32,16,12,24,16,0,255, + 255,255,1,128,0,192,0,192,1,192,15,128,65,128,64,192, + 32,192,16,192,9,192,7,128,16,12,24,16,0,255,255,255, + 1,128,0,192,0,192,1,192,15,156,65,178,64,226,32,194, + 16,198,9,196,7,128,16,13,26,16,0,254,255,255,1,128, + 57,128,101,152,3,152,7,248,31,136,57,136,33,156,1,184, + 1,160,0,160,0,30,16,12,24,16,0,255,255,255,0,32, + 0,32,56,32,116,248,99,204,99,12,48,12,16,120,12,192, + 2,128,0,124,16,16,32,16,0,254,0,152,0,112,0,0, + 255,255,12,48,12,48,12,48,12,48,12,96,4,0,2,0, + 1,128,0,96,0,16,0,24,0,24,16,16,32,16,0,254, + 16,0,15,224,0,16,255,255,12,48,12,48,12,48,12,48, + 12,96,4,0,2,0,1,128,0,96,0,16,0,24,0,24, + 16,13,26,16,0,254,255,255,12,48,12,48,12,48,12,48, + 12,96,4,0,2,0,1,128,0,96,0,16,0,24,0,24, + 16,16,32,16,0,254,15,0,0,128,0,64,255,255,12,48, + 12,48,12,48,12,48,12,96,4,0,2,0,1,128,0,96, + 0,16,0,24,0,24,15,15,30,16,1,255,0,76,0,60, + 0,0,57,254,68,204,4,204,12,204,56,204,8,204,135,204, + 134,204,78,204,60,204,0,204,0,68,15,15,30,16,1,255, + 2,0,1,240,0,8,57,254,68,204,4,204,12,204,56,204, + 8,204,135,204,134,204,78,204,60,204,0,204,0,68,15,15, + 30,16,1,255,1,192,0,32,0,16,57,254,68,204,4,204, + 12,204,56,204,8,204,135,204,134,204,78,204,60,204,0,204, + 0,68,15,15,30,16,1,255,0,224,1,208,0,40,57,254, + 68,204,4,204,12,204,56,204,8,204,135,204,134,204,78,204, + 60,204,0,204,0,68,16,12,24,16,0,255,255,255,1,128, + 1,128,29,128,51,224,35,144,39,152,29,152,1,152,1,152, + 1,128,0,128,16,12,24,16,0,255,255,255,8,24,8,24, + 9,216,59,56,58,24,18,56,17,216,8,24,6,24,1,152, + 0,8,16,12,24,16,0,255,255,255,1,152,1,152,1,152, + 1,152,7,152,3,152,1,152,0,152,0,24,0,24,0,8, + 16,12,24,16,0,255,255,255,12,24,12,24,7,216,2,24, + 4,24,4,56,4,120,3,216,0,24,0,24,0,8,16,11, + 22,16,0,0,255,255,0,96,0,96,15,224,24,0,24,4, + 15,206,0,100,16,96,8,96,7,192,16,12,24,16,0,255, + 255,255,0,24,0,24,0,24,31,248,3,24,6,56,6,120, + 3,216,0,24,0,24,0,8,16,13,26,16,0,254,255,255, + 0,16,0,16,60,120,112,228,96,196,32,68,31,44,12,24, + 24,56,24,100,7,134,0,6,16,12,24,16,0,255,255,255, + 0,24,0,24,0,24,3,248,17,152,8,216,8,216,7,152, + 0,24,0,24,0,8,16,12,24,16,0,255,255,255,3,24, + 3,24,31,24,48,24,48,24,31,248,1,24,13,24,22,24, + 29,24,0,136,16,12,24,16,0,255,255,255,0,24,0,24, + 7,24,5,152,33,184,33,248,33,216,19,152,15,24,0,24, + 0,8,16,11,22,16,0,0,255,255,0,192,0,192,0,192, + 7,192,12,0,24,0,24,0,24,0,12,16,7,224,16,12, + 24,16,0,255,255,255,1,128,1,128,1,128,3,128,7,96, + 12,16,8,24,8,24,8,56,4,112,3,224,16,11,22,16, + 0,0,255,255,0,24,0,24,3,248,6,0,6,0,3,240, + 0,24,4,24,2,24,1,240,16,12,24,16,0,255,255,255, + 0,96,0,96,7,224,12,0,24,0,24,192,25,160,9,16, + 5,16,3,48,1,224,16,12,24,16,0,255,255,255,25,152, + 25,152,25,152,25,152,25,152,9,152,7,24,0,24,0,24, + 0,24,0,8,16,12,24,16,0,255,255,255,0,24,0,24, + 0,24,7,248,14,24,12,24,12,24,6,24,2,24,1,24, + 0,136,13,12,24,16,3,255,227,248,216,192,204,192,76,192, + 28,192,120,192,97,192,35,192,30,192,0,192,0,192,0,64, + 16,12,24,16,0,255,255,255,0,24,0,24,0,24,1,248, + 2,0,6,0,6,24,2,40,1,240,0,8,0,4,13,12, + 24,16,3,255,115,248,200,192,192,192,192,192,96,192,28,192, + 48,192,96,192,97,192,99,192,30,192,0,64,16,12,24,16, + 0,255,255,255,0,24,0,24,0,24,7,248,6,24,6,24, + 2,24,0,24,0,24,0,24,0,8,16,12,24,16,0,255, + 255,255,0,24,0,24,0,24,7,248,6,24,6,24,2,24, + 0,24,1,24,3,152,1,8,16,12,24,16,0,255,255,255, + 6,24,6,24,6,24,6,24,6,24,2,56,1,216,0,24, + 0,24,0,24,0,8,16,12,24,16,0,255,255,255,49,128, + 49,128,49,128,49,240,49,200,19,132,15,132,1,132,1,140, + 1,140,0,128,16,12,24,16,0,255,255,255,0,24,0,24, + 7,216,14,120,13,24,12,152,12,120,7,248,0,24,0,24, + 0,8,14,12,24,16,2,255,227,252,216,96,200,96,76,96, + 60,96,12,96,31,224,28,96,12,96,0,96,0,96,0,32, + 16,12,24,16,0,255,255,255,6,24,6,24,6,24,6,24, + 6,24,15,248,6,24,2,24,0,24,0,24,0,8,16,12, + 24,16,0,255,255,255,3,24,3,24,3,24,3,24,6,24, + 4,56,4,120,3,216,0,24,0,24,0,8,16,12,24,16, + 0,255,255,255,0,192,0,192,0,192,3,192,3,128,3,128, + 1,0,0,128,0,64,0,32,0,24,16,12,24,16,0,255, + 255,255,0,192,0,192,0,192,3,192,3,128,3,128,1,0, + 0,128,4,64,14,32,4,24,16,12,24,16,0,255,255,255, + 0,24,0,24,28,56,58,248,49,216,49,152,24,24,8,24, + 4,24,3,24,0,8,16,11,22,16,0,0,255,255,0,48, + 0,48,0,112,14,200,25,140,49,140,49,140,49,152,19,112, + 14,0,16,13,26,16,0,254,255,255,0,48,0,48,0,112, + 14,200,25,140,49,140,49,140,49,152,19,112,14,0,0,192, + 0,192,16,12,24,16,0,255,255,255,0,24,0,24,3,216, + 15,56,12,24,12,56,4,120,3,216,0,24,0,24,0,8, + 16,12,24,16,0,255,255,255,6,24,6,24,31,24,1,152, + 1,152,25,152,21,24,30,24,2,24,1,24,0,136,16,12, + 24,16,0,255,255,255,12,24,14,24,13,24,12,152,12,88, + 12,56,6,56,1,216,0,24,0,24,0,8,16,12,24,16, + 0,255,255,255,3,24,3,24,3,24,11,24,15,24,14,248, + 4,24,4,24,2,24,1,24,0,136,16,12,24,16,0,255, + 255,255,0,24,0,24,7,248,12,0,12,0,6,240,1,152, + 3,16,3,0,1,128,0,252,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 2,2,2,16,7,255,192,192,9,11,22,16,7,0,63,128, + 64,0,64,0,96,0,48,0,24,0,8,0,12,0,12,0, + 156,0,120,0,6,13,13,16,10,254,252,48,48,48,48,48, + 48,48,48,48,48,48,16,8,14,14,16,0,0,60,98,49, + 252,48,48,48,48,48,48,48,48,48,16,9,16,32,16,7, + 254,120,0,132,0,132,0,31,128,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,2, + 0,6,3,3,16,4,255,152,68,56,6,3,3,16,6,255, + 112,136,100,4,3,3,16,6,255,96,128,112,3,5,5,16, + 6,255,96,128,96,128,96,5,3,3,16,5,10,136,72,48, + 5,3,3,16,4,10,128,112,8,5,3,3,16,4,10,224, + 16,8,6,4,4,16,3,9,112,8,228,28,6,16,16,16, + 10,254,136,120,0,252,48,48,48,48,48,48,48,48,48,48, + 48,16,8,16,16,16,8,254,128,120,4,63,12,12,12,12, + 12,12,12,12,12,12,12,4,8,16,16,16,8,254,240,8, + 4,63,12,12,12,12,12,12,12,12,12,12,12,4,9,16, + 32,16,7,254,120,0,244,0,10,0,31,128,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,2,0,5,3,3,16,6,255,224,16,8,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,14,14,28,16,1,0,0,96,0,96,0, + 0,113,8,248,240,4,0,4,24,24,60,48,36,8,36,132, + 124,135,216,121,128,48,0,1,3,3,16,8,10,128,128,128, + 4,1,1,16,6,0,240,3,3,3,16,6,10,128,64,32, + 3,3,3,16,7,10,32,64,128,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,16,13,26,16,0,254,255,255,0,192,0, + 192,14,192,25,248,17,200,19,204,14,204,0,204,0,204,4, + 192,14,64,4,0,16,13,26,16,0,254,255,255,8,24,8, + 24,9,216,59,56,58,24,18,56,17,216,8,24,4,24,0, + 152,1,200,0,128,16,13,26,16,0,254,255,255,1,152,1, + 152,1,152,1,152,7,152,3,152,1,152,0,152,0,24,0, + 152,1,200,0,128,16,13,26,16,0,254,255,255,0,24,0, + 24,0,24,3,248,17,152,8,216,8,216,7,152,0,24,0, + 152,1,200,0,128,16,13,26,16,0,254,255,255,0,24,0, + 24,3,248,6,0,6,0,3,240,0,24,4,24,3,240,0, + 0,0,192,0,192,16,13,26,16,0,254,255,255,0,96,0, + 96,7,224,12,0,24,224,25,144,25,16,13,48,7,224,0, + 0,1,128,1,128,16,13,26,16,0,254,255,255,49,128,49, + 128,49,128,49,240,49,200,19,132,15,132,1,132,1,140,9, + 140,28,128,8,0,16,13,26,16,0,254,255,255,3,24,3, + 24,3,24,3,24,6,24,4,56,4,120,3,216,0,24,1, + 24,3,136,1,0,16,13,26,16,0,254,255,255,3,0,3, + 0,51,24,75,40,7,240,15,24,51,8,67,24,3,48,3, + 28,1,16,0,14,16,13,26,16,0,254,255,255,0,32,0, + 32,30,112,49,152,49,152,16,48,8,96,4,192,0,60,0, + 192,0,192,0,60,8,5,5,16,4,255,72,146,130,68,3, + 8,6,6,16,4,254,72,146,132,67,4,3,2,12,12,16, + 7,255,128,192,192,192,192,192,192,192,192,192,192,64,5,12, + 12,16,6,255,144,216,216,216,216,216,216,216,216,216,216,72, + 8,7,7,16,4,2,60,78,199,195,227,114,60,6,13,13, + 16,5,254,112,232,204,204,76,60,24,48,96,32,16,8,4, + 9,13,26,16,4,254,252,0,226,0,1,0,1,0,1,0, + 3,0,54,0,44,0,56,0,4,0,2,0,1,0,0,128, + 8,13,13,16,4,254,252,226,2,2,60,2,1,51,46,60, + 4,2,1,12,12,24,16,2,255,128,16,64,48,32,96,16, + 192,9,128,7,0,6,0,13,0,9,128,9,128,9,128,7, + 0,8,13,13,16,4,254,192,195,195,67,62,12,12,104,88, + 120,4,2,1,8,13,13,16,4,254,60,192,128,192,124,16, + 32,35,51,15,4,4,2,11,11,22,16,3,0,128,0,135, + 0,142,192,140,64,68,96,67,224,64,32,32,32,32,64,24, + 192,7,0,10,10,20,16,3,1,255,192,32,0,64,0,128, + 0,128,0,131,0,135,128,124,128,56,128,0,128,8,12,12, + 16,4,255,56,100,98,97,32,56,72,192,192,192,32,31,5, + 4,4,16,6,3,112,136,136,112,2,2,2,16,8,6,192, + 192,15,15,30,16,1,255,2,0,1,32,0,192,57,254,68, + 192,4,192,12,192,56,192,8,192,135,192,134,192,78,192,60, + 192,0,192,0,64,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,16,12,24,16,0,255,255,255,1,152,1, + 152,1,152,1,152,7,152,3,152,1,152,0,152,0,24,0, + 24,15,248,16,12,24,16,0,255,255,255,0,24,0,24,0, + 24,3,248,17,152,8,216,8,216,7,152,0,24,0,24,31, + 248,8,13,13,16,4,254,124,226,193,1,1,3,62,60,48, + 48,48,48,16,16,13,26,16,0,254,255,255,0,24,0,24, + 3,248,6,0,6,0,3,240,0,24,4,24,2,24,1,240, + 0,0,15,254,16,12,24,16,0,255,255,255,0,24,0,24, + 7,216,14,120,13,24,12,152,12,120,7,248,0,24,0,24, + 15,248,6,14,14,8,1,255,168,84,168,84,168,84,168,84, + 168,84,168,84,168,84,6,4,4,16,5,9,48,180,132,120, + 5,8,8,16,11,0,96,144,96,0,192,96,48,8,4,7, + 7,16,11,1,96,144,96,0,96,144,96,6,14,14,8,1, + 255,168,84,168,84,168,84,168,84,168,84,168,84,168,84,16, + 12,24,16,0,255,255,255,0,12,64,12,67,140,71,204,71, + 236,99,44,32,108,48,124,24,220,15,140,0,4,16,13,26, + 16,0,255,0,6,255,247,0,110,64,102,70,102,79,102,79, + 102,69,102,65,102,97,102,51,230,30,102,0,34,16,15,30, + 16,0,255,32,0,31,192,0,32,255,255,0,0,15,192,24, + 96,60,48,60,48,24,48,0,96,63,192,7,0,1,192,0, + 124,16,15,30,16,0,255,32,0,31,240,0,8,255,255,30, + 0,63,12,59,30,25,56,1,248,1,240,3,144,79,16,60, + 16,16,24,0,14,16,15,30,16,0,255,16,0,15,224,0, + 16,255,255,3,0,3,0,67,0,67,16,67,56,99,108,33, + 204,48,12,24,12,14,24,3,240,16,15,30,16,0,255,16, + 0,15,224,0,16,255,255,3,0,3,0,83,0,83,16,83, + 56,83,108,73,204,40,12,36,12,18,24,15,240,15,14,28, + 16,1,255,64,0,228,0,230,206,133,204,121,204,3,204,14, + 204,120,204,96,236,120,252,14,220,3,204,1,204,0,68,14, + 14,28,16,1,255,64,0,128,0,128,0,64,0,127,192,31, + 240,0,56,15,12,24,140,56,76,56,76,56,76,16,216,3, + 240,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,14,13,26,16,1,255,0, + 48,0,248,1,140,3,12,135,140,135,140,131,12,128,12,192, + 12,64,108,96,156,51,12,14,4,14,15,30,16,1,255,0, + 8,0,16,0,16,0,216,3,236,6,52,140,52,158,52,158, + 52,140,56,192,48,65,176,98,112,60,48,24,16,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,14,13,26,16,1,255,0,240,3,24,6, + 12,14,12,142,12,134,120,192,248,64,120,96,12,48,12,24, + 12,12,24,7,240,14,15,30,16,1,255,0,8,0,16,0, + 16,7,216,8,108,28,52,28,52,156,52,137,228,131,248,193, + 224,64,48,96,48,48,112,31,224,16,12,24,16,0,255,255, + 255,0,96,0,96,1,248,7,100,60,98,48,98,60,110,7, + 108,1,224,0,224,0,32,14,13,26,16,2,255,64,0,226, + 60,227,48,197,48,121,48,1,48,6,48,120,48,126,48,1, + 176,0,112,0,48,0,16,14,12,24,16,2,255,62,124,113, + 96,224,224,224,96,252,96,70,96,6,96,6,96,28,96,120, + 96,32,96,0,32,16,12,24,16,0,255,255,255,24,24,48, + 24,56,24,31,152,1,152,6,24,12,24,31,24,1,216,0, + 56,0,8,12,13,26,16,2,255,32,0,35,192,22,64,12, + 64,15,128,140,0,136,32,136,112,199,176,64,48,96,48,48, + 96,31,128,16,12,24,16,0,255,255,255,24,0,24,0,28, + 0,27,0,24,252,24,12,24,12,24,12,24,24,28,48,15, + 192,16,12,24,16,0,255,255,255,24,0,24,0,28,0,27, + 224,24,56,24,104,28,200,15,16,0,96,1,248,0,14,16, + 12,24,16,0,255,255,255,1,240,3,28,70,15,76,2,76, + 196,79,36,102,44,32,44,48,100,24,196,15,131,16,12,24, + 16,0,255,255,231,0,102,0,102,1,230,7,102,60,102,48, + 102,60,102,7,126,1,238,0,230,0,34,14,13,26,16,1, + 255,7,0,13,128,25,176,49,248,57,204,185,140,145,184,129, + 140,193,204,199,248,111,176,121,128,48,128,16,15,30,16,0, + 255,16,0,15,192,0,32,255,255,24,0,24,0,24,0,24, + 96,24,240,24,112,24,48,24,96,24,192,15,128,7,0,16, + 15,30,16,0,255,16,0,15,0,0,128,255,255,0,128,0, + 128,0,192,1,192,1,96,35,48,58,24,20,24,24,24,12, + 48,7,224,16,12,24,16,0,255,255,255,3,0,3,0,67, + 0,67,16,67,56,99,108,33,204,48,12,24,12,14,24,3, + 240,16,12,24,16,0,255,255,255,24,0,24,0,24,0,24, + 96,24,240,24,112,24,48,24,96,24,192,15,128,7,0,13, + 13,26,16,3,255,28,96,62,120,97,96,192,224,192,224,224, + 96,224,96,64,96,0,96,0,96,0,96,0,96,0,32,16, + 12,24,16,0,255,255,255,0,0,65,248,67,12,67,132,67, + 134,99,134,33,6,48,6,24,12,12,28,7,240,15,13,26, + 16,1,255,60,0,98,62,241,48,241,48,97,48,1,48,6, + 48,120,48,126,48,1,176,0,112,0,48,0,16,16,12,24, + 16,0,255,255,255,12,0,12,0,12,120,12,240,13,224,13, + 96,15,96,14,96,14,96,12,48,8,28,12,13,26,16,4, + 255,96,0,240,240,224,192,128,192,99,192,30,192,56,192,224, + 192,248,192,14,192,3,192,1,192,0,64,16,12,24,16,0, + 255,255,255,0,24,0,24,0,24,0,24,30,24,63,152,60, + 216,56,120,0,56,0,24,0,8,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,15,13,26, + 16,1,255,14,48,31,190,48,240,96,112,240,240,155,176,14, + 48,24,48,32,48,0,48,0,48,0,48,0,16,16,12,24, + 16,0,255,255,255,16,0,56,120,12,100,6,98,12,98,24, + 110,48,108,63,96,1,224,0,96,0,32,16,12,24,16,0, + 255,255,255,0,24,0,24,0,120,3,216,7,24,28,24,31, + 24,1,216,0,120,0,56,0,8,16,12,24,16,0,255,255, + 255,0,0,66,16,71,8,71,12,70,20,99,230,32,6,48, + 6,24,12,12,28,7,240,16,12,24,16,0,255,255,255,12, + 24,28,24,14,24,3,24,3,24,3,24,15,216,30,120,12, + 56,0,24,0,8,16,12,24,16,0,255,255,255,8,48,28, + 48,6,48,3,48,6,48,12,48,24,48,31,176,0,240,0, + 48,0,16,16,12,24,16,0,255,255,255,0,24,0,120,3, + 216,7,24,28,24,31,24,1,216,2,120,7,56,7,24,2, + 8,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,16,12,24,16,0,255,255,255,0,6,0, + 6,28,22,62,62,99,102,65,198,65,198,64,134,124,6,60, + 6,24,2,6,14,14,8,1,255,168,84,168,84,168,84,168, + 84,168,84,168,84,168,84,6,14,14,8,1,255,168,84,168, + 84,168,84,168,84,168,84,168,84,168,84,6,14,14,8,1, + 255,168,84,168,84,168,84,168,84,168,84,168,84,168,84,15, + 13,26,16,1,255,112,204,249,238,143,60,143,28,31,140,63, + 204,25,140,0,12,0,12,0,12,0,12,0,12,0,4,16, + 12,24,16,0,255,255,255,28,24,14,24,7,152,1,216,6, + 120,28,24,31,24,1,216,0,120,0,56,0,8,16,12,24, + 16,0,255,255,255,16,12,56,12,28,12,6,12,2,204,1, + 236,3,28,102,12,60,12,24,12,0,4,16,12,24,16,0, + 255,255,255,0,0,15,192,24,96,60,48,60,48,24,48,0, + 96,63,192,7,0,1,192,0,124,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,2,2,2,16,7,255,192,192,14,12,24,16,0,255,240, + 0,8,0,15,192,28,96,60,48,60,48,24,48,0,96,63, + 192,7,0,1,192,0,124,5,10,10,16,11,255,48,184,112, + 48,48,48,48,48,48,16,13,14,28,16,0,255,15,128,63, + 224,96,16,96,8,32,0,248,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,16,0,12,14,28,16,4,255,63, + 0,65,128,128,192,190,64,65,64,1,240,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,64,6,5,5,16,5, + 254,4,104,144,104,4,6,5,5,16,6,254,96,128,112,8, + 4,5,5,5,16,5,254,24,96,128,96,24,3,5,5,16, + 6,255,96,128,96,128,64,6,14,14,8,1,255,168,84,168, + 84,168,84,168,84,168,84,168,84,168,84,6,14,14,8,1, + 255,168,84,168,84,168,84,168,84,168,84,168,84,168,84,5, + 9,9,16,0,255,248,24,48,96,64,64,64,88,56,5,12, + 12,16,0,255,128,112,8,248,24,48,96,64,64,64,88,56, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,16,10,20,16,0,255,0,6, + 248,23,24,14,48,6,96,6,64,6,64,6,64,6,88,6, + 56,2,16,13,26,16,0,255,0,128,0,112,0,8,0,4, + 248,23,24,14,48,6,96,6,64,6,64,6,64,6,88,6, + 56,2,5,3,3,16,6,0,192,48,8,8,12,12,16,4, + 255,56,92,204,236,216,192,96,56,12,6,3,1,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,8,13,13, + 16,8,255,128,112,8,4,23,14,6,6,6,6,6,6,2, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 16,13,26,16,0,254,255,255,3,0,67,16,67,56,99,108, + 35,204,49,140,24,12,14,24,3,240,0,0,0,192,0,192, + 16,13,26,16,0,254,255,255,12,0,12,0,12,0,12,48, + 12,120,12,56,12,48,7,224,3,192,0,0,1,128,1,128, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,16,13,26,16,0,254,255,255,4,24,14,24, + 3,24,1,152,3,24,6,24,12,24,15,216,0,120,1,24, + 3,136,1,0,15,15,30,16,1,254,64,0,228,0,230,206, + 133,204,121,204,3,204,14,204,120,204,96,236,120,252,14,220, + 123,204,97,204,120,68,14,0,8,14,14,16,4,255,128,124, + 3,121,197,205,158,128,124,3,121,197,205,158,7,5,5,16, + 5,255,124,2,114,202,220,10,6,12,16,5,255,3,128,112, + 64,10,64,77,64,173,128,176,0,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,10,11,22,16,3,0,30,0,63,0,97,128,192,192,192, + 192,192,192,192,192,192,192,97,128,63,0,30,0,9,12,24, + 16,4,0,64,0,64,0,96,0,56,0,14,0,3,0,1, + 128,97,128,225,128,225,128,195,0,126,0,10,11,22,16,3, + 0,224,0,56,0,14,0,3,0,3,0,227,0,126,0,28, + 0,6,0,1,128,0,64,12,12,24,16,2,255,131,192,132, + 96,136,48,140,48,142,48,142,48,134,48,64,48,64,96,32, + 96,17,192,15,0,11,13,26,16,2,255,31,0,63,128,96, + 192,64,64,96,192,49,128,31,0,96,192,192,96,192,96,224, + 224,127,192,31,0,11,13,26,16,2,255,7,0,30,0,57, + 96,112,192,97,128,195,0,198,0,198,0,198,0,198,0,99, + 96,48,192,31,128,12,12,24,16,2,255,28,0,12,0,12, + 0,140,0,140,96,140,160,141,176,199,48,64,48,96,48,48, + 96,31,192,9,13,26,16,4,255,60,0,126,0,195,0,195, + 0,199,0,127,0,59,0,3,0,3,0,3,0,3,0,3, + 0,1,128,13,13,26,16,1,255,224,0,96,0,96,0,96, + 8,103,240,127,192,112,96,96,96,96,96,96,96,112,192,63, + 128,30,0,12,15,30,16,2,254,128,0,128,0,96,0,60, + 0,15,0,3,192,0,224,0,48,60,48,66,48,225,48,225, + 48,225,96,65,192,1,0,16,12,24,16,0,255,255,255,0, + 24,0,24,0,120,3,216,7,152,28,120,31,24,1,216,0, + 120,0,56,0,8,16,13,26,16,0,254,255,255,0,24,0, + 24,0,120,3,216,7,24,28,24,31,24,1,216,28,120,7, + 56,1,136,0,64,9,8,16,16,3,3,224,0,248,0,124, + 0,14,0,3,0,1,0,0,128,0,128,12,13,26,16,1, + 255,48,0,120,0,204,0,12,0,31,240,12,0,12,96,12, + 240,12,240,12,48,12,96,7,192,3,128,9,8,16,16,3, + 2,0,128,0,128,1,0,3,0,14,0,124,0,248,0,224, + 0,12,9,18,16,2,2,56,16,124,16,226,32,242,96,242, + 192,98,192,7,128,15,0,14,0,12,13,26,16,2,255,0, + 16,0,16,0,16,56,16,124,16,126,16,62,16,6,48,12, + 96,248,224,193,192,127,128,30,0,2,13,13,16,8,255,128, + 192,192,192,192,192,192,192,192,192,192,192,64,11,13,26,16, + 2,255,224,0,96,0,96,192,97,192,99,192,98,192,102,192, + 108,192,120,192,112,192,96,192,0,192,0,96,11,10,20,16, + 3,1,31,0,63,128,96,192,192,96,192,96,192,96,192,96, + 96,192,63,128,31,0,14,9,18,16,1,255,0,4,2,4, + 135,8,135,8,66,16,96,48,48,96,31,192,15,0,6,14, + 14,8,1,255,168,84,168,84,168,84,168,84,168,84,168,84, + 168,84,6,14,14,8,1,255,168,84,168,84,168,84,168,84, + 168,84,168,84,168,84,6,14,14,8,1,255,168,84,168,84, + 168,84,168,84,168,84,168,84,168,84,6,14,14,8,1,255, + 168,84,168,84,168,84,168,84,168,84,168,84,168,84,6,14, + 14,8,1,255,168,84,168,84,168,84,168,84,168,84,168,84, + 168,84}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 10, '1' Height: 8 + Calculated Max Values w=16 h=16 x= 4 y= 1 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent= 0 + X Font ascent =14 descent= 0 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_2_3[4628] U8G_SECTION(".progmem.u8g_font_unifont_2_3") = { + 0,16,16,0,254,10,4,220,7,27,0,255,0,14,254,14, + 0,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,74,81,234,80,90,81,201,158,0,1,128,0,0,1,128, + 0,0,1,128,0,85,85,6,11,11,8,1,0,120,0,0, + 120,132,4,124,132,132,140,116,6,14,14,8,1,0,132,132, + 120,0,48,72,72,132,132,252,132,132,132,132,6,13,13,8, + 1,0,132,132,120,0,0,120,132,4,124,132,132,140,116,7, + 12,12,8,1,254,48,72,72,132,132,252,132,132,132,132,8, + 6,7,10,10,8,1,254,120,132,4,124,132,132,140,116,8, + 6,6,14,14,8,1,0,24,96,0,0,120,132,132,128,128, + 128,128,132,132,120,6,12,12,8,1,0,24,96,0,0,120, + 132,128,128,128,128,132,120,6,14,14,8,1,0,48,72,0, + 0,120,132,132,128,128,128,128,132,132,120,6,12,12,8,1, + 0,48,72,0,0,120,132,128,128,128,128,132,120,6,14,14, + 8,1,0,32,32,0,0,120,132,132,128,128,128,128,132,132, + 120,6,12,12,8,1,0,32,32,0,0,120,132,128,128,128, + 128,132,120,6,14,14,8,1,0,72,48,0,0,120,132,132, + 128,128,128,128,132,132,120,6,12,12,8,1,0,72,48,0, + 0,120,132,128,128,128,128,132,120,6,14,14,8,1,0,144, + 96,0,0,240,136,132,132,132,132,132,132,136,240,6,14,14, + 8,1,0,72,48,0,4,4,4,116,140,132,132,132,132,140, + 116,7,10,10,8,0,0,120,68,66,66,242,66,66,66,68, + 120,7,12,12,8,1,0,4,30,4,4,116,140,132,132,132, + 132,140,116,6,13,13,8,1,0,120,0,0,252,128,128,128, + 248,128,128,128,128,252,6,11,11,8,1,0,120,0,0,120, + 132,132,252,128,128,132,120,6,14,14,8,1,0,132,132,120, + 0,252,128,128,128,248,128,128,128,128,252,6,12,12,8,1, + 0,132,132,120,0,120,132,132,252,128,128,132,120,6,14,14, + 8,1,0,32,32,0,0,252,128,128,128,248,128,128,128,128, + 252,6,12,12,8,1,0,32,32,0,0,120,132,132,252,128, + 128,132,120,6,12,12,8,1,254,252,128,128,128,248,128,128, + 128,128,252,16,12,6,10,10,8,1,254,120,132,132,252,128, + 128,132,120,32,24,6,14,14,8,1,0,72,48,0,0,252, + 128,128,128,248,128,128,128,128,252,6,12,12,8,1,0,72, + 48,0,0,120,132,132,252,128,128,132,120,6,14,14,8,1, + 0,48,72,0,0,120,132,132,128,128,156,132,132,140,116,6, + 14,14,8,1,254,48,72,0,4,116,136,136,136,112,64,120, + 132,132,120,6,14,14,8,1,0,132,132,120,0,120,132,132, + 128,128,156,132,132,140,116,6,15,15,8,1,254,132,132,120, + 0,4,116,136,136,136,112,64,120,132,132,120,6,14,14,8, + 1,0,32,32,0,0,120,132,132,128,128,156,132,132,140,116, + 6,14,14,8,1,254,32,32,0,4,116,136,136,136,112,64, + 120,132,132,120,6,12,12,8,1,254,120,132,132,128,128,156, + 132,132,140,116,16,96,6,14,14,8,1,254,24,32,0,4, + 116,136,136,136,112,64,120,132,132,120,6,14,14,8,1,0, + 48,72,0,0,132,132,132,132,252,132,132,132,132,132,6,14, + 14,8,1,0,96,144,0,128,128,128,184,196,132,132,132,132, + 132,132,8,10,10,8,0,0,66,66,255,66,66,126,66,66, + 66,66,7,11,11,8,0,1,64,240,64,64,92,98,66,66, + 66,66,66,6,14,14,8,1,0,100,152,0,0,124,16,16, + 16,16,16,16,16,16,124,6,12,12,8,1,0,100,152,0, + 0,48,16,16,16,16,16,16,124,5,13,13,8,2,0,240, + 0,0,248,32,32,32,32,32,32,32,32,248,5,11,11,8, + 2,0,240,0,0,96,32,32,32,32,32,32,248,6,14,14, + 8,1,0,132,132,120,0,124,16,16,16,16,16,16,16,16, + 124,6,12,12,8,1,0,132,132,120,0,48,16,16,16,16, + 16,16,124,5,12,12,8,2,254,248,32,32,32,32,32,32, + 32,32,248,32,24,5,13,13,8,2,254,32,32,0,96,32, + 32,32,32,32,32,248,32,24,5,14,14,8,2,0,32,32, + 0,0,248,32,32,32,32,32,32,32,32,248,5,8,8,8, + 2,0,96,32,32,32,32,32,32,248,6,10,10,8,1,0, + 132,132,132,132,132,132,4,4,132,120,5,14,14,8,2,254, + 136,136,0,0,136,136,136,136,136,136,104,8,136,112,7,14, + 14,8,1,0,24,36,0,0,62,8,8,8,8,8,8,136, + 136,112,6,14,14,8,1,254,24,36,0,0,24,8,8,8, + 8,8,8,8,144,96,7,12,12,8,0,254,66,68,72,80, + 96,96,80,72,68,66,32,192,7,12,12,8,0,254,64,64, + 68,72,80,96,80,72,68,66,32,192,6,8,8,8,1,0, + 132,136,144,224,224,144,136,132,6,14,14,8,1,0,48,192, + 0,0,128,128,128,128,128,128,128,128,128,252,5,14,14,8, + 2,0,48,192,0,0,96,32,32,32,32,32,32,32,32,248, + 6,12,12,8,1,254,128,128,128,128,128,128,128,128,128,252, + 16,96,5,12,12,8,2,254,96,32,32,32,32,32,32,32, + 32,248,32,192,6,14,14,8,1,0,72,48,0,0,128,128, + 128,128,128,128,128,128,128,252,5,14,14,8,2,0,144,96, + 0,0,96,32,32,32,32,32,32,32,32,248,6,10,10,8, + 1,0,128,128,128,128,136,136,128,128,128,252,5,10,10,8, + 1,0,96,32,32,32,40,40,32,32,32,248,7,10,10,8, + 0,0,64,64,72,80,96,192,64,64,64,126,5,10,10,8, + 2,0,96,32,40,48,96,160,32,32,32,248,6,14,14,8, + 1,0,24,96,0,0,132,196,196,164,164,148,148,140,140,132, + 6,12,12,8,1,0,24,96,0,0,184,196,132,132,132,132, + 132,132,7,12,12,8,0,254,66,98,98,82,82,74,74,70, + 70,66,32,192,7,10,10,8,0,254,92,98,66,66,66,66, + 66,66,32,192,6,14,14,8,1,0,72,48,0,0,132,196, + 196,164,164,148,148,140,140,132,6,12,12,8,1,0,72,48, + 0,0,184,196,132,132,132,132,132,132,6,13,13,8,1,0, + 192,64,64,128,0,184,196,132,132,132,132,132,132,6,10,10, + 8,1,0,184,196,132,132,132,132,132,132,132,152,6,10,10, + 8,1,254,184,196,132,132,132,132,132,132,4,24,6,13,13, + 8,1,0,120,0,0,120,132,132,132,132,132,132,132,132,120, + 6,11,11,8,1,0,120,0,0,120,132,132,132,132,132,132, + 120,6,14,14,8,1,0,132,132,120,0,120,132,132,132,132, + 132,132,132,132,120,6,12,12,8,1,0,132,132,120,0,120, + 132,132,132,132,132,132,120,7,14,14,8,1,0,102,136,0, + 0,120,132,132,132,132,132,132,132,132,120,7,12,12,8,1, + 0,102,136,0,0,120,132,132,132,132,132,132,120,7,10,10, + 8,1,0,110,144,144,144,156,144,144,144,144,110,7,8,8, + 8,1,0,108,146,146,158,144,144,146,108,6,14,14,8,1, + 0,24,96,0,0,248,132,132,132,248,144,136,136,132,132,6, + 12,12,8,1,0,24,96,0,0,184,196,132,128,128,128,128, + 128,7,12,12,8,0,254,124,66,66,66,124,72,68,68,66, + 66,32,192,7,10,10,8,0,254,92,98,66,64,64,64,64, + 64,32,192,6,14,14,8,1,0,72,48,0,0,248,132,132, + 132,248,144,136,136,132,132,6,12,12,8,1,0,72,48,0, + 0,184,196,132,128,128,128,128,128,6,14,14,8,1,0,24, + 96,0,0,120,132,132,128,96,24,4,132,132,120,6,12,12, + 8,1,0,24,96,0,0,120,132,128,96,24,132,132,120,6, + 14,14,8,1,0,48,72,0,0,120,132,132,128,96,24,4, + 132,132,120,6,12,12,8,1,0,48,72,0,0,120,132,128, + 96,24,4,132,120,6,12,12,8,1,254,120,132,132,128,96, + 24,4,132,132,120,16,96,6,10,10,8,1,254,120,132,128, + 96,24,4,132,120,16,96,6,14,14,8,1,0,72,48,0, + 0,120,132,132,128,96,24,4,132,132,120,6,12,12,8,1, + 0,72,48,0,0,120,132,128,96,24,4,132,120,7,12,12, + 8,1,254,254,16,16,16,16,16,16,16,16,16,16,96,5, + 12,12,8,1,254,32,32,248,32,32,32,32,32,32,24,16, + 96,7,14,14,8,1,0,72,48,0,0,254,16,16,16,16, + 16,16,16,16,16,5,14,14,8,1,0,72,48,0,0,32, + 32,248,32,32,32,32,32,32,24,7,10,10,8,1,0,254, + 16,16,20,24,48,80,16,16,16,5,10,10,8,1,0,32, + 32,248,32,40,48,96,160,32,24,6,14,14,8,1,0,100, + 152,0,0,132,132,132,132,132,132,132,132,132,120,6,12,12, + 8,1,0,100,152,0,0,132,132,132,132,132,132,140,116,6, + 13,13,8,1,0,120,0,0,132,132,132,132,132,132,132,132, + 132,120,6,11,11,8,1,0,120,0,0,132,132,132,132,132, + 132,140,116,6,14,14,8,1,0,132,132,120,0,132,132,132, + 132,132,132,132,132,132,120,6,13,13,8,1,0,132,132,120, + 0,0,132,132,132,132,132,132,140,116,6,14,14,8,1,0, + 48,72,48,0,132,132,132,132,132,132,132,132,132,120,6,12, + 12,8,1,0,48,72,48,0,132,132,132,132,132,132,140,116, + 7,14,14,8,1,0,102,136,0,0,132,132,132,132,132,132, + 132,132,132,120,7,12,12,8,1,0,102,136,0,0,132,132, + 132,132,132,132,140,116,6,12,12,8,1,254,132,132,132,132, + 132,132,132,132,132,120,32,24,7,10,10,8,1,254,132,132, + 132,132,132,132,140,116,8,6,6,14,14,8,1,0,48,72, + 0,0,132,132,132,132,180,180,204,204,132,132,7,12,12,8, + 1,0,48,72,0,0,130,146,146,146,146,146,146,108,7,14, + 14,8,1,0,48,72,0,0,130,130,68,68,40,16,16,16, + 16,16,6,14,14,8,1,254,48,72,0,0,132,132,132,132, + 132,76,52,4,4,120,7,14,14,8,1,0,72,72,0,0, + 130,130,68,68,40,16,16,16,16,16,6,14,14,8,1,0, + 24,96,0,0,252,4,4,8,16,32,64,128,128,252,6,12, + 12,8,1,0,24,96,0,0,252,4,8,16,32,64,128,252, + 6,14,14,8,1,0,32,32,0,0,252,4,4,8,16,32, + 64,128,128,252,6,12,12,8,1,0,32,32,0,0,252,4, + 8,16,32,64,128,252,6,14,14,8,1,0,72,48,0,0, + 252,4,4,8,16,32,64,128,128,252,6,12,12,8,1,0, + 72,48,0,0,252,4,8,16,32,64,128,252,4,11,11,8, + 2,0,48,64,64,64,192,64,64,64,64,64,64,7,11,11, + 8,0,0,64,240,64,92,98,66,66,66,66,98,92,7,10, + 10,8,0,0,124,162,162,34,60,34,34,34,34,60,6,10, + 10,8,1,0,252,128,128,128,248,132,132,132,132,248,6,10, + 10,8,1,0,252,128,128,184,196,132,132,132,196,184,6,10, + 10,8,1,0,192,64,64,64,120,68,68,68,68,120,6,8, + 8,8,1,0,192,64,64,64,120,68,68,120,6,10,10,8, + 1,0,120,132,132,4,4,4,4,132,132,248,7,12,12,8, + 1,0,6,8,120,136,136,128,128,128,128,136,136,112,7,10, + 10,8,1,0,6,8,120,136,128,128,128,128,136,112,7,10, + 10,8,0,0,120,68,66,66,242,66,66,66,68,120,7,10, + 10,8,0,0,120,164,162,34,34,34,34,34,36,56,6,10, + 10,8,1,0,252,4,4,4,124,132,132,132,132,124,6,10, + 10,8,1,0,252,4,4,116,140,132,132,132,140,116,6,10, + 10,8,1,254,120,132,132,132,132,72,48,8,8,112,6,10, + 10,8,1,0,252,4,4,4,124,4,4,4,4,252,6,10, + 10,8,1,0,48,72,132,4,4,252,132,132,72,48,6,10, + 10,8,1,0,120,132,132,128,112,128,128,132,132,120,7,11, + 11,8,1,255,62,32,32,32,60,32,32,32,32,32,192,5, + 12,12,8,1,255,24,32,32,32,248,32,32,32,32,32,32, + 192,7,11,11,8,1,0,6,120,136,136,128,128,184,136,136, + 152,104,6,10,10,8,1,0,132,132,132,72,72,48,48,72, + 72,48,6,11,11,8,1,0,128,128,128,128,228,148,148,148, + 148,148,136,5,10,10,8,1,0,224,32,32,32,32,32,32, + 32,32,24,5,10,10,8,2,0,248,32,32,32,248,32,32, + 32,32,248,6,10,10,8,1,0,140,148,160,160,192,192,160, + 144,136,132,6,11,11,8,1,0,96,128,128,136,144,160,192, + 160,144,136,132,5,10,10,8,2,0,96,32,32,32,248,32, + 32,32,32,248,6,10,10,8,1,0,72,80,32,96,144,48, + 72,72,132,132,7,10,10,8,1,0,146,146,146,146,146,146, + 146,146,146,110,7,11,11,8,0,255,34,34,50,50,42,42, + 38,38,34,34,192,6,10,10,8,1,254,184,196,132,132,132, + 132,132,132,4,4,6,10,10,8,1,0,120,132,132,132,252, + 132,132,132,132,120,6,11,11,8,1,0,4,116,136,136,136, + 136,136,136,136,136,112,6,9,9,8,1,0,4,116,136,136, + 136,136,136,136,112,6,12,12,8,1,254,108,148,148,148,148, + 148,148,148,148,100,4,4,6,10,10,8,1,254,108,148,148, + 148,148,148,148,100,4,4,7,10,10,8,1,0,124,162,162, + 34,60,32,32,32,32,32,7,11,11,8,1,254,6,184,200, + 136,136,136,136,200,176,128,128,7,10,10,8,1,0,224,64, + 120,68,68,120,80,72,68,66,6,10,10,8,1,0,120,132, + 132,4,24,96,128,132,132,120,6,8,8,8,1,0,120,132, + 4,24,96,128,132,120,6,10,10,8,1,0,252,128,64,32, + 16,16,32,64,128,252,5,12,12,8,1,255,64,160,160,96, + 32,32,32,32,32,32,32,24,5,12,12,8,1,254,32,32, + 248,32,32,32,32,32,32,24,8,48,7,10,10,8,1,0, + 126,144,144,16,16,16,16,16,16,16,5,11,11,8,1,0, + 24,32,32,32,248,32,32,32,32,32,24,7,11,11,8,1, + 255,254,16,16,16,16,16,16,16,16,16,12,7,12,12,8, + 1,0,2,2,140,136,136,136,136,136,136,136,136,112,7,10, + 10,8,1,0,2,2,140,136,136,136,136,136,152,104,6,10, + 10,8,1,0,132,72,72,132,132,132,132,132,72,48,6,10, + 10,8,1,0,152,132,132,132,132,132,132,136,144,96,7,10, + 10,8,1,0,98,162,34,20,20,8,8,8,8,8,7,11, + 11,8,1,254,6,136,136,136,136,136,72,56,8,8,112,6, + 10,10,8,1,0,252,4,8,16,120,32,64,128,128,252,6, + 8,8,8,1,0,252,8,16,120,32,64,128,252,6,10,10, + 8,1,0,252,8,16,32,56,4,4,4,140,120,6,10,10, + 8,1,0,252,64,32,16,112,128,128,128,196,120,6,10,10, + 8,1,254,248,64,32,16,112,128,128,128,132,120,6,10,10, + 8,1,254,124,8,16,56,4,4,120,128,132,120,6,10,10, + 8,1,0,120,132,132,8,16,252,64,128,128,252,6,10,10, + 8,1,0,252,64,64,64,120,4,4,4,132,120,6,8,8, + 8,1,0,252,64,64,120,4,4,132,120,5,10,10,8,1, + 0,32,32,248,32,32,48,8,8,136,112,6,10,10,8,1, + 254,184,196,132,132,136,144,160,192,128,128,1,11,11,8,3, + 0,128,128,128,128,128,128,128,128,128,128,128,3,11,11,8, + 2,0,160,160,160,160,160,160,160,160,160,160,160,5,11,11, + 8,1,0,32,32,32,32,248,32,248,32,32,32,32,1,10, + 10,8,4,0,128,128,128,128,128,128,128,0,128,128,7,14, + 14,8,1,0,10,4,0,0,206,162,162,162,164,164,168,168, + 168,206,7,12,12,8,1,0,10,4,192,160,174,162,162,164, + 164,168,168,206,7,12,12,8,1,0,10,36,32,32,110,162, + 162,164,164,168,168,110,7,10,10,8,1,0,142,130,130,130, + 130,130,130,146,146,236,7,13,13,8,1,254,2,130,128,134, + 130,130,130,130,130,130,242,4,24,8,13,13,8,0,254,1, + 97,32,35,33,33,33,33,33,33,249,2,12,7,10,10,8, + 1,0,150,146,146,210,210,178,178,154,154,148,7,13,13,8, + 1,254,2,146,144,214,210,210,178,178,178,146,146,36,24,7, + 13,13,8,1,254,2,2,0,166,210,146,146,146,146,146,146, + 36,24,6,14,14,8,1,0,72,48,0,0,48,72,72,132, + 132,252,132,132,132,132,6,12,12,8,1,0,72,48,0,0, + 120,132,4,124,132,132,140,116,5,14,14,8,2,0,144,96, + 0,0,248,32,32,32,32,32,32,32,32,248,5,12,12,8, + 2,0,144,96,0,0,96,32,32,32,32,32,32,248,6,14, + 14,8,1,0,72,48,0,0,120,132,132,132,132,132,132,132, + 132,120,6,12,12,8,1,0,72,48,0,0,120,132,132,132, + 132,132,132,120,6,14,14,8,1,0,72,48,0,0,132,132, + 132,132,132,132,132,132,132,120,6,12,12,8,1,0,72,48, + 0,0,132,132,132,132,132,132,140,116,6,14,14,8,1,0, + 120,0,72,0,132,132,132,132,132,132,132,132,132,120,6,13, + 13,8,1,0,120,0,72,72,0,132,132,132,132,132,132,140, + 116,6,14,14,8,1,0,24,96,0,72,0,132,132,132,132, + 132,132,132,132,120,6,14,14,8,1,0,24,96,0,72,72, + 0,132,132,132,132,132,132,140,116,6,14,14,8,1,0,72, + 48,0,72,0,132,132,132,132,132,132,132,132,120,6,14,14, + 8,1,0,72,48,0,72,72,0,132,132,132,132,132,132,140, + 116,6,14,14,8,1,0,96,24,0,72,0,132,132,132,132, + 132,132,132,132,120,6,14,14,8,1,0,96,24,0,72,72, + 0,132,132,132,132,132,132,140,116,6,8,8,8,1,0,120, + 132,4,4,252,132,132,120,6,14,14,8,1,0,120,0,72, + 0,48,72,72,132,132,252,132,132,132,132,6,13,13,8,1, + 0,120,0,72,72,0,120,132,4,124,132,132,140,116,6,14, + 14,8,1,0,120,0,48,0,48,72,72,132,132,252,132,132, + 132,132,6,13,13,8,1,0,120,0,32,32,0,120,132,4, + 124,132,132,140,116,7,13,13,8,1,0,120,0,0,62,80, + 144,144,254,144,144,144,144,158,7,11,11,8,1,0,120,0, + 0,124,146,18,126,144,144,146,124,7,10,10,8,1,0,120, + 132,132,128,128,156,132,158,132,124,7,11,11,8,1,254,4, + 116,136,136,136,112,64,120,158,132,120,6,14,14,8,1,0, + 72,48,0,0,120,132,132,128,128,156,132,132,140,116,6,14, + 14,8,1,254,72,48,0,4,116,136,136,136,112,64,120,132, + 132,120,6,14,14,8,1,0,72,48,0,0,132,136,144,160, + 192,192,160,144,136,132,6,14,14,8,1,0,144,96,0,0, + 128,128,136,144,160,192,160,144,136,132,6,12,12,8,1,254, + 120,132,132,132,132,132,132,132,132,120,32,24,6,10,10,8, + 1,254,120,132,132,132,132,132,132,120,32,24,6,15,15,8, + 1,254,120,0,0,120,132,132,132,132,132,132,132,132,120,32, + 24,6,13,13,8,1,254,120,0,0,120,132,132,132,132,132, + 132,120,32,24,6,14,14,8,1,0,72,48,0,0,252,8, + 16,32,56,4,4,4,140,120,6,14,14,8,1,254,72,48, + 0,0,124,8,16,32,56,4,4,4,132,120,6,14,14,8, + 1,254,36,24,0,0,24,8,8,8,8,8,8,8,144,96, + 7,10,10,8,1,0,206,162,162,162,164,164,168,168,168,206, + 7,10,10,8,1,0,192,160,174,162,162,164,164,168,168,206, + 7,11,11,8,1,0,32,32,32,110,162,162,164,164,168,168, + 110,6,14,14,8,1,0,24,96,0,0,120,132,132,128,128, + 156,132,132,140,116,6,14,14,8,1,254,24,96,0,4,116, + 136,136,136,112,64,120,132,132,120,6,10,10,8,1,0,144, + 144,144,148,244,148,148,148,148,136,6,11,11,8,1,255,184, + 196,132,132,136,144,160,192,128,128,128,6,13,13,8,1,0, + 96,24,0,132,196,196,164,164,148,148,140,140,132,6,11,11, + 8,1,0,96,24,0,184,196,132,132,132,132,132,132,6,14, + 14,8,1,0,24,96,48,72,48,48,72,72,132,252,132,132, + 132,132,6,14,14,8,1,0,24,96,0,48,72,48,0,120, + 132,4,124,132,140,116,7,14,14,8,1,0,12,48,0,0, + 62,80,144,144,254,144,144,144,144,158,7,12,12,8,1,0, + 12,48,0,0,124,146,18,126,144,144,146,124,6,15,15,8, + 1,255,24,96,0,4,116,136,140,148,148,164,164,196,68,184, + 128,6,13,13,8,1,255,24,96,0,4,120,140,148,148,164, + 164,196,120,128}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 10, '1' Height: 12 + Calculated Max Values w=16 h=16 x= 4 y=10 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent= 0 + X Font ascent =12 descent=-2 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_4_5[3783] U8G_SECTION(".progmem.u8g_font_unifont_4_5") = { + 0,16,16,0,254,10,4,176,6,163,0,255,0,14,254,12, + 254,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,74,81,234,80,90,81,201,158,0,1,128,0,0,1,128, + 0,0,1,128,0,85,85,7,12,12,8,0,0,204,34,0, + 0,60,66,2,62,66,66,70,58,6,14,14,8,1,0,120, + 132,132,0,48,72,72,132,132,252,132,132,132,132,6,12,12, + 8,1,0,120,132,132,0,120,132,4,124,132,132,140,116,7, + 14,14,8,0,0,204,34,0,0,126,64,64,64,124,64,64, + 64,64,126,7,12,12,8,0,0,204,34,0,0,60,66,66, + 126,64,64,66,60,6,14,14,8,1,0,120,132,132,0,252, + 128,128,128,248,128,128,128,128,252,6,12,12,8,1,0,120, + 132,132,0,120,132,132,252,128,128,132,120,7,14,14,8,0, + 0,204,34,0,0,62,8,8,8,8,8,8,8,8,62,7, + 12,12,8,0,0,204,34,0,0,24,8,8,8,8,8,8, + 62,6,14,14,8,1,0,120,132,132,0,124,16,16,16,16, + 16,16,16,16,124,6,12,12,8,1,0,120,132,132,0,48, + 16,16,16,16,16,16,124,7,14,14,8,0,0,204,34,0, + 0,60,66,66,66,66,66,66,66,66,60,7,12,12,8,0, + 0,204,34,0,0,60,66,66,66,66,66,66,60,6,14,14, + 8,1,0,120,132,132,0,120,132,132,132,132,132,132,132,132, + 120,6,12,12,8,1,0,120,132,132,0,120,132,132,132,132, + 132,132,120,7,14,14,8,0,0,204,34,0,0,124,66,66, + 66,124,72,68,68,66,66,7,12,12,8,0,0,204,34,0, + 0,92,98,66,64,64,64,64,64,6,14,14,8,1,0,120, + 132,132,0,248,132,132,132,248,144,136,136,132,132,6,12,12, + 8,1,0,120,132,132,0,184,196,132,128,128,128,128,128,7, + 14,14,8,0,0,204,34,0,0,66,66,66,66,66,66,66, + 66,66,60,7,12,12,8,0,0,204,34,0,0,66,66,66, + 66,66,66,70,58,6,14,14,8,1,0,120,132,132,0,132, + 132,132,132,132,132,132,132,132,120,6,12,12,8,1,0,120, + 132,132,0,132,132,132,132,132,132,140,116,6,12,12,8,1, + 254,120,132,132,128,96,24,4,132,132,120,16,32,6,10,10, + 8,1,254,120,132,128,96,24,4,132,120,16,32,7,12,12, + 8,1,254,254,16,16,16,16,16,16,16,16,16,4,8,5, + 12,12,8,1,254,32,32,248,32,32,32,32,32,32,24,64, + 128,6,10,10,8,1,0,120,132,132,4,24,104,4,4,4, + 120,6,8,8,8,1,0,120,132,4,24,100,4,24,96,6, + 13,13,8,1,0,72,48,0,132,132,132,132,252,132,132,132, + 132,132,6,13,13,8,1,0,72,48,0,128,128,128,184,196, + 132,132,132,132,132,6,10,10,8,1,254,184,196,132,132,132, + 132,132,132,4,4,7,13,13,8,1,254,4,4,4,116,140, + 132,132,132,132,142,118,4,8,6,10,10,8,1,0,16,72, + 132,132,72,120,132,132,132,120,5,8,8,8,2,0,72,136, + 144,96,144,136,136,112,6,12,12,8,1,254,252,4,4,8, + 16,32,64,128,128,252,4,8,6,10,10,8,1,254,252,4, + 8,16,32,64,128,252,4,8,6,12,12,8,1,0,16,0, + 48,72,72,132,132,252,132,132,132,132,6,10,10,8,1,0, + 16,0,120,132,4,124,132,132,140,116,6,12,12,8,1,254, + 252,128,128,128,248,128,128,128,128,252,16,96,6,10,10,8, + 1,254,120,132,132,252,128,128,132,120,16,96,6,14,14,8, + 1,0,120,0,72,0,120,132,132,132,132,132,132,132,132,120, + 6,12,12,8,1,0,120,0,72,0,120,132,132,132,132,132, + 132,120,6,14,14,8,1,0,120,0,100,152,0,120,132,132, + 132,132,132,132,132,120,6,13,13,8,1,0,120,0,100,152, + 0,120,132,132,132,132,132,132,120,6,12,12,8,1,0,16, + 0,120,132,132,132,132,132,132,132,132,120,6,10,10,8,1, + 0,16,0,120,132,132,132,132,132,132,120,6,14,14,8,1, + 0,120,0,16,0,120,132,132,132,132,132,132,132,132,120,6, + 12,12,8,1,0,120,0,16,0,120,132,132,132,132,132,132, + 120,7,12,12,8,1,0,124,0,130,130,68,68,40,16,16, + 16,16,16,6,12,12,8,1,254,120,0,132,132,132,132,132, + 76,52,4,4,120,4,12,12,8,2,254,96,32,32,32,32, + 32,32,32,48,48,64,128,7,10,10,8,1,254,184,196,132, + 132,132,132,134,134,4,8,6,12,12,8,1,254,32,32,248, + 32,32,32,32,32,44,28,16,32,5,10,10,8,1,254,24, + 8,8,8,8,8,8,8,144,96,7,11,11,8,0,0,16, + 16,16,84,186,146,146,146,146,186,84,7,10,10,8,0,254, + 84,186,146,146,146,146,186,84,16,16,7,11,11,8,0,0, + 2,26,36,44,74,82,126,98,66,66,194,7,12,12,8,0, + 255,2,60,70,74,72,80,80,96,98,66,124,128,7,11,11, + 8,0,255,2,4,60,74,80,80,96,96,66,124,128,6,10, + 10,8,1,0,64,64,64,64,240,64,64,64,64,124,7,12, + 12,8,1,0,2,4,254,24,24,16,16,48,48,80,80,144, + 7,10,10,8,1,254,120,132,128,96,24,4,132,120,18,12, + 6,10,10,8,1,254,252,4,8,16,32,64,128,192,32,28, + 6,10,10,8,1,0,120,132,132,4,8,16,16,16,16,16, + 6,8,8,8,1,0,120,132,132,4,8,16,16,16,6,10, + 10,8,1,0,120,68,68,68,120,68,244,68,68,120,7,10, + 10,8,0,0,68,68,68,68,68,254,68,68,68,56,6,10, + 10,8,1,0,48,48,48,72,72,72,72,132,132,132,6,14, + 14,8,1,254,8,8,252,144,144,160,248,160,160,192,192,252, + 128,128,7,10,10,8,0,255,2,60,70,74,126,80,96,66, + 124,128,7,10,10,8,1,0,62,8,8,8,8,62,8,136, + 136,112,7,13,13,8,1,254,8,8,0,24,8,8,62,8, + 8,8,8,144,96,7,12,12,8,1,254,112,136,136,136,136, + 136,136,136,152,104,8,6,7,10,10,8,1,254,104,152,136, + 136,136,136,152,104,8,6,6,10,10,8,1,0,120,68,68, + 68,248,80,72,72,68,68,6,8,8,8,1,0,88,100,68, + 224,64,64,64,64,7,10,10,8,1,0,130,130,68,254,40, + 16,16,16,16,16,7,10,10,8,1,254,68,68,68,254,68, + 36,28,4,4,56,6,8,8,8,1,0,184,196,132,132,248, + 128,132,120,6,8,8,8,1,0,116,140,132,132,132,140,148, + 100,6,8,8,8,1,0,152,164,196,132,132,132,196,184,6, + 11,11,8,1,0,112,128,128,184,196,132,132,132,132,196,184, + 6,8,8,8,1,0,120,132,4,4,4,4,132,120,6,9, + 9,8,1,255,120,132,128,128,128,152,164,120,128,7,12,12, + 8,1,255,8,8,8,104,152,136,136,136,136,152,104,6,7, + 11,11,8,1,0,6,8,8,104,152,136,136,136,136,152,104, + 6,8,8,8,1,0,120,132,132,252,4,4,132,120,6,8, + 8,8,1,0,120,132,4,4,252,132,132,120,7,8,8,8, + 1,0,114,140,8,8,248,136,136,112,6,8,8,8,1,0, + 120,132,128,120,128,128,132,120,6,8,8,8,1,0,120,132, + 4,120,4,4,132,120,7,8,8,8,1,0,114,140,8,112, + 8,8,136,112,6,8,8,8,1,0,120,132,132,184,132,132, + 132,120,7,10,10,8,1,254,24,8,8,8,62,8,8,8, + 144,96,7,11,11,8,1,254,6,104,152,136,136,136,152,104, + 8,136,112,6,10,10,8,1,254,116,140,132,132,132,140,116, + 4,132,120,6,8,8,8,1,0,120,132,128,128,156,132,132, + 124,6,10,10,8,1,254,132,132,132,72,72,48,48,72,72, + 48,6,8,8,8,1,0,132,132,72,72,48,48,72,48,6, + 11,11,8,1,254,132,132,132,132,132,132,140,116,4,4,4, + 6,11,11,8,1,0,112,128,128,184,196,132,132,132,132,132, + 132,6,11,11,8,1,0,112,128,128,184,196,132,132,132,132, + 132,152,5,11,11,8,2,0,32,32,0,96,32,32,248,32, + 32,32,248,3,8,8,8,3,0,128,128,128,128,128,128,128, + 96,5,8,8,8,2,0,248,32,32,32,32,32,32,248,6, + 10,10,8,1,0,48,16,16,16,116,152,16,16,16,124,6, + 10,10,8,1,0,48,16,16,112,144,124,16,16,16,124,4, + 11,11,8,3,255,192,64,64,64,64,64,64,64,64,64,48, + 7,12,12,8,1,254,96,32,62,34,36,40,44,34,34,250, + 18,12,7,8,8,8,1,0,146,146,146,146,146,146,146,110, + 7,10,10,8,1,254,146,146,146,146,146,146,146,110,2,2, + 7,9,9,8,1,255,236,146,146,146,146,146,146,130,12,7, + 9,9,8,1,255,44,50,34,34,34,34,34,34,192,7,9, + 9,8,1,255,176,200,136,136,136,136,136,136,6,6,8,8, + 8,1,0,132,132,196,164,148,140,132,132,6,8,8,8,1, + 0,120,132,132,252,132,132,132,120,7,8,8,8,1,0,110, + 144,144,156,144,144,144,110,7,8,8,8,1,0,124,130,130, + 146,146,146,146,108,7,12,12,8,1,254,16,16,124,146,146, + 146,146,146,146,124,16,16,6,8,8,8,1,0,4,4,4, + 4,4,132,140,116,6,10,10,8,1,0,4,4,4,4,4, + 4,4,132,140,116,7,9,9,8,1,255,8,8,8,8,8, + 136,152,104,6,6,10,10,8,1,254,184,196,132,128,128,128, + 128,128,128,128,6,9,9,8,1,255,184,196,132,128,128,128, + 128,128,96,6,8,8,8,1,0,120,132,132,128,128,128,128, + 128,6,8,8,8,1,0,120,132,132,4,4,4,4,4,6, + 8,8,8,1,0,248,132,132,248,136,132,132,132,6,8,8, + 8,1,0,132,132,132,136,248,132,132,248,6,10,10,8,1, + 254,120,132,128,96,24,4,132,248,128,96,5,12,12,8,1, + 255,24,32,32,32,32,32,32,32,32,32,32,192,5,12,12, + 8,1,255,24,32,32,32,32,32,32,248,32,32,32,192,5, + 9,9,8,1,255,192,32,32,32,32,32,32,32,24,6,12, + 12,8,1,255,12,16,16,16,16,16,16,16,16,112,156,96, + 5,10,10,8,1,0,192,32,32,32,32,32,32,248,32,32, + 6,11,11,8,1,255,32,32,248,32,32,32,32,32,32,32, + 28,7,8,8,8,1,0,68,68,68,254,68,68,76,52,6, + 8,8,8,1,0,132,72,132,132,132,132,72,48,6,8,8, + 8,1,0,152,132,132,132,132,136,144,96,6,8,8,8,1, + 0,48,48,72,72,72,132,132,132,7,8,8,8,1,0,108, + 146,146,146,146,146,146,130,6,10,10,8,1,254,120,128,128, + 176,200,132,132,132,132,132,7,8,8,8,1,0,130,130,68, + 40,16,16,16,16,7,10,10,8,1,254,248,16,16,32,32, + 64,64,248,8,6,7,9,9,8,1,255,252,4,8,16,32, + 76,146,252,32,6,10,10,8,1,254,124,8,16,32,56,4, + 4,4,132,120,6,10,10,8,1,254,124,8,16,32,56,4, + 4,100,148,120,6,10,10,8,1,0,120,132,132,4,8,16, + 16,16,16,16,6,10,10,8,1,0,120,132,132,128,64,32, + 32,32,32,32,6,10,10,8,1,0,16,16,16,16,16,8, + 4,132,132,120,6,10,10,8,1,254,120,132,128,128,128,128, + 128,128,132,120,6,8,8,8,1,0,120,132,132,180,180,132, + 132,120,6,8,8,8,1,0,248,132,132,248,132,132,132,248, + 6,8,8,8,1,0,120,132,132,116,132,132,132,120,7,8, + 8,8,1,0,118,136,128,128,152,136,136,120,5,8,8,8, + 2,0,136,136,136,248,136,136,136,136,6,13,13,8,1,254, + 8,8,0,24,8,8,8,8,8,8,124,144,96,6,10,10, + 8,1,254,132,68,36,20,12,20,36,68,4,4,6,8,8, + 8,1,0,128,128,128,128,128,128,128,252,7,11,11,8,1, + 254,6,104,152,136,136,136,136,152,104,8,8,6,10,10,8, + 1,0,120,132,132,4,8,16,16,124,16,16,6,10,10,8, + 1,0,120,132,132,128,64,32,32,248,32,32,7,11,11,8, + 1,0,32,32,32,126,162,164,164,168,168,176,126,7,13,13, + 8,1,254,32,32,32,126,162,164,168,172,162,162,98,18,12, + 7,12,12,8,1,255,32,32,32,126,162,164,168,176,180,170, + 124,8,7,10,10,8,1,0,64,64,236,80,80,72,68,66, + 66,60,7,13,13,8,1,254,6,72,72,248,72,72,72,72, + 72,72,56,8,48,7,11,11,8,1,255,64,64,236,82,80, + 80,80,84,90,60,8,7,12,12,8,1,254,96,144,128,220, + 162,162,162,162,162,162,4,24,6,10,10,8,2,0,128,128, + 128,156,160,160,152,132,132,248,6,10,10,8,1,0,128,128, + 128,128,252,136,144,160,192,252,7,11,11,8,1,0,130,146, + 146,146,108,0,130,146,146,146,108,6,10,10,8,1,0,252, + 132,132,132,0,0,252,132,132,132,5,10,10,8,1,254,200, + 72,72,72,72,72,88,40,8,8,7,10,10,8,1,254,200, + 72,72,72,72,72,88,40,8,6,5,6,6,8,2,4,128, + 128,176,200,136,136,5,7,7,8,2,4,112,136,128,176,200, + 136,136,4,7,7,8,2,4,16,0,16,16,16,144,96,5, + 5,5,8,2,5,176,200,128,128,128,5,5,5,8,1,5, + 8,8,8,152,104,7,6,6,8,1,4,8,8,8,152,104, + 6,5,6,6,8,1,4,136,144,240,136,136,240,5,4,4, + 8,1,6,136,168,168,80,5,5,5,8,1,5,136,136,120, + 8,112,3,3,3,8,2,7,32,64,128,6,3,3,8,1, + 7,36,72,144,2,4,4,8,3,6,64,128,128,192,2,4, + 4,8,3,6,192,64,64,128,2,4,4,8,3,6,192,128, + 128,64,4,6,6,8,2,5,192,32,16,16,32,192,4,6, + 6,8,2,5,48,64,128,128,64,48,6,7,7,8,1,4, + 120,132,4,4,56,32,32,6,7,7,8,1,4,120,132,128, + 128,112,16,16,4,7,7,8,2,4,16,32,64,128,64,32, + 16,4,7,7,8,2,4,128,64,32,16,32,64,128,7,4, + 4,8,1,6,16,40,68,130,7,4,4,8,1,6,130,68, + 40,16,4,2,2,8,2,8,96,144,4,2,2,8,2,8, + 144,96,1,3,3,8,4,7,128,128,128,4,1,1,8,2, + 9,240,4,2,2,8,2,8,48,192,4,2,2,8,2,8, + 192,48,1,4,4,8,4,0,128,128,128,128,4,1,1,8, + 2,0,240,4,2,2,8,2,255,192,48,4,2,2,8,2, + 255,48,192,3,6,6,8,2,1,224,64,0,0,64,224,3, + 2,2,8,2,4,224,64,4,6,6,8,2,2,192,32,16, + 16,32,192,4,6,6,8,2,2,48,64,128,128,64,48,5, + 5,5,8,1,2,32,32,32,32,248,5,5,5,8,1,2, + 248,32,32,32,32,5,5,5,8,1,2,32,32,248,32,32, + 5,1,1,8,1,4,248,6,3,3,8,1,9,132,132,120, + 2,2,2,8,3,10,192,192,4,3,3,8,2,9,96,144, + 96,3,2,2,8,4,254,128,96,6,2,2,8,1,10,100, + 152,7,2,2,8,1,10,102,136,7,4,4,8,0,3,32, + 96,162,28,6,5,5,8,1,5,132,72,48,72,132,5,6, + 6,8,1,4,136,80,32,80,80,32,3,6,6,8,2,6, + 192,64,64,64,64,224,5,5,5,8,1,5,120,128,112,8, + 240,5,5,5,8,1,5,136,80,32,80,136,5,5,5,8, + 1,7,120,128,128,112,16,5,11,11,8,1,0,248,8,8, + 8,8,8,8,8,8,8,8,5,11,11,8,1,0,8,8, + 248,8,8,8,8,8,8,8,8,5,11,11,8,1,0,8, + 8,8,8,8,248,8,8,8,8,8,5,11,11,8,1,0, + 8,8,8,8,8,8,8,8,248,8,8,5,11,11,8,1, + 0,8,8,8,8,8,8,8,8,8,8,248,5,6,6,8, + 1,0,128,128,128,128,128,248,4,7,7,8,1,0,128,128, + 128,240,128,128,128,5,3,3,8,1,0,136,80,32,6,3, + 3,8,1,9,252,0,252,6,4,4,8,1,8,204,68,68, + 136,5,3,3,8,1,255,136,80,32,5,3,3,8,1,255, + 32,80,136,3,5,5,8,3,255,32,64,128,64,32,3,5, + 5,8,3,255,128,64,32,64,128,4,3,3,8,2,255,96, + 144,96,3,3,3,8,2,9,128,64,32,6,3,3,8,1, + 9,144,72,36,6,3,3,8,1,9,36,72,144,6,2,2, + 8,1,254,100,152,2,7,7,8,3,4,192,192,0,0,0, + 192,192,3,4,4,8,2,7,224,128,128,128,3,4,4,8, + 2,7,224,32,32,32,3,4,4,8,2,0,128,128,128,224, + 3,4,4,8,2,0,32,32,32,224,6,3,3,8,1,254, + 132,132,252,6,3,3,8,1,254,128,128,252,6,5,5,8, + 1,3,32,64,252,64,32}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 3, '1' Height: 10 + Calculated Max Values w=16 h=16 x=14 y=12 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 3 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_67_75[3556] U8G_SECTION(".progmem.u8g_font_unifont_67_75") = { + 0,16,16,0,254,3,2,120,4,26,16,255,0,14,254,10, + 0,6,5,5,8,1,4,32,64,252,64,32,5,6,6,8, + 2,3,32,112,168,32,32,32,6,5,5,8,1,3,16,8, + 252,8,16,5,6,6,8,2,3,32,32,32,168,112,32,8, + 5,5,8,0,3,36,66,255,66,36,5,9,9,8,2,1, + 32,112,168,32,32,32,168,112,32,6,6,6,8,1,3,240, + 192,160,144,8,4,6,6,6,8,1,3,60,12,20,36,64, + 128,6,6,6,8,1,3,128,64,36,20,12,60,6,6,6, + 8,1,2,4,8,144,160,192,240,7,9,9,8,1,1,8, + 8,40,72,254,72,40,8,8,7,9,9,8,1,1,32,32, + 40,36,254,36,40,32,32,7,5,5,8,1,3,32,76,242, + 64,32,7,5,5,8,1,3,8,100,158,4,8,8,5,5, + 8,0,3,36,72,255,72,36,5,9,9,8,2,1,32,112, + 168,32,112,168,32,32,32,8,5,5,8,0,3,36,18,255, + 18,36,5,9,9,8,2,1,32,32,32,168,112,32,168,112, + 32,7,5,5,8,1,3,34,68,248,68,34,7,5,5,8, + 1,3,136,68,62,68,136,6,5,5,8,1,3,36,68,252, + 68,36,5,6,6,8,2,3,32,112,168,32,32,248,6,5, + 5,8,1,3,144,136,252,136,144,5,6,6,8,2,3,248, + 32,32,168,112,32,5,10,10,8,2,0,32,112,168,32,32, + 32,168,112,32,248,7,6,6,8,1,3,4,34,66,252,64, + 32,7,6,6,8,1,3,64,136,132,126,4,8,7,6,6, + 8,1,3,4,42,74,252,72,40,7,6,6,8,1,3,64, + 168,164,126,36,40,8,5,5,8,0,3,36,90,231,66,36, + 8,9,9,8,0,1,8,8,44,74,255,74,44,8,8,6, + 10,10,8,1,0,128,128,144,176,208,144,16,84,56,16,5, + 10,10,8,1,0,32,64,240,72,40,8,8,8,8,8,5, + 10,10,8,2,0,32,16,120,144,160,128,128,128,128,128,5, + 10,10,8,1,0,8,8,8,8,8,40,72,240,64,32,5, + 10,10,8,2,0,128,128,128,128,128,160,144,120,16,32,7, + 5,5,8,1,1,248,8,42,28,8,5,8,8,8,1,2, + 8,8,8,40,72,248,64,32,8,5,5,8,0,3,30,33, + 169,113,32,8,5,5,8,0,3,120,132,149,142,4,6,8, + 8,8,1,3,252,0,240,192,160,144,8,4,6,11,11,8, + 1,0,160,192,252,192,160,0,20,12,252,12,20,6,6,6, + 8,1,2,92,152,148,132,132,120,6,6,6,8,1,2,232, + 100,164,132,132,120,6,3,3,8,1,5,32,64,252,6,3, + 3,8,1,3,252,64,32,3,6,6,8,4,3,128,192,160, + 128,128,128,3,6,6,8,2,3,32,96,160,32,32,32,6, + 3,3,8,1,5,16,8,252,6,3,3,8,1,3,252,8, + 16,3,6,6,8,4,2,128,128,128,160,192,128,3,6,6, + 8,2,3,32,32,32,160,96,32,6,11,11,8,1,0,16, + 8,252,8,16,0,32,64,252,64,32,8,6,6,8,0,3, + 36,116,164,37,46,36,6,11,11,8,1,0,32,64,252,64, + 32,0,16,8,252,8,16,6,11,11,8,1,0,32,64,252, + 64,32,0,32,64,252,64,32,8,6,6,8,0,3,36,126, + 165,36,36,36,6,11,11,8,1,0,16,8,252,8,16,0, + 16,8,252,8,16,8,6,6,8,0,3,36,36,36,165,126, + 36,6,7,7,8,1,2,32,64,252,0,252,8,16,6,7, + 7,8,1,2,16,8,252,0,252,64,32,7,9,9,8,0, + 1,8,8,40,126,136,126,40,8,8,8,9,9,8,0,1, + 8,8,44,126,137,126,44,8,8,7,9,9,8,1,1,32, + 32,40,252,34,252,40,32,32,6,5,5,8,1,3,32,124, + 128,124,32,5,6,6,8,2,3,32,80,216,80,80,80,6, + 5,5,8,1,3,16,248,4,248,16,5,6,6,8,2,3, + 80,80,80,216,80,32,8,5,5,8,0,3,36,126,129,126, + 36,5,8,8,8,2,2,32,80,216,80,80,216,80,32,6, + 6,6,8,1,3,240,160,208,168,20,8,6,6,6,8,1, + 3,60,20,44,84,160,64,6,6,6,8,1,3,8,20,168, + 208,160,240,6,6,6,8,1,3,64,160,84,44,20,60,7, + 7,7,8,0,2,16,62,64,254,64,62,16,7,7,7,8, + 1,2,16,248,4,254,4,248,16,8,5,5,8,0,3,32, + 66,245,72,32,8,5,5,8,0,3,4,66,175,18,4,5, + 10,10,8,2,0,32,112,168,32,32,248,32,248,32,32,5, + 10,10,8,2,0,32,32,248,32,248,32,32,168,112,32,7, + 5,5,8,1,3,32,64,238,64,32,5,10,10,8,2,0, + 32,112,168,0,32,32,32,0,32,32,7,5,5,8,1,3, + 8,4,238,4,8,5,10,10,8,2,0,32,32,0,32,32, + 32,0,168,112,32,6,5,5,8,1,3,160,192,252,192,160, + 6,5,5,8,1,3,20,12,252,12,20,8,7,7,8,0, + 2,16,48,95,129,95,48,16,7,10,10,8,1,0,16,40, + 68,238,40,40,40,40,40,56,8,7,7,8,0,2,8,12, + 250,129,250,12,8,7,10,10,8,1,0,56,40,40,40,40, + 40,238,68,40,16,7,12,12,8,1,0,16,40,68,238,40, + 40,40,40,56,0,56,56,7,12,12,8,1,0,16,40,68, + 198,68,68,68,68,68,198,130,254,7,12,12,8,1,0,16, + 40,124,198,68,68,68,68,68,198,130,254,7,12,12,8,1, + 0,16,56,84,214,84,84,84,84,84,214,146,254,7,14,14, + 8,1,0,16,40,84,238,68,198,68,68,68,68,68,68,68, + 124,7,14,14,8,1,0,16,40,84,238,68,198,68,68,68, + 68,68,198,130,254,7,7,7,8,1,2,16,216,244,130,244, + 216,16,7,9,9,8,1,0,254,128,184,176,168,132,130,128, + 128,7,9,9,8,1,0,2,2,130,66,42,26,58,2,254, + 5,11,11,8,2,0,32,80,216,80,80,80,80,80,216,80, + 32,13,5,10,16,1,3,14,32,17,16,255,248,17,16,14, + 32,8,10,10,8,0,0,36,46,53,36,36,36,36,172,116, + 36,8,15,15,8,0,254,4,2,255,2,4,4,2,255,2, + 4,4,2,255,2,4,8,5,5,8,0,3,36,68,255,68, + 36,8,5,5,8,0,3,36,34,255,34,36,11,5,10,16, + 2,3,36,128,68,64,255,224,68,64,36,128,12,5,10,16, + 1,3,37,0,69,0,255,240,69,0,37,0,12,5,10,16, + 2,3,10,64,10,32,255,240,10,32,10,64,13,5,10,16, + 1,3,37,32,69,16,255,248,69,16,37,32,8,5,5,8, + 0,3,32,96,191,96,32,8,5,5,8,0,3,4,6,253, + 6,4,12,5,10,16,2,3,32,64,96,96,191,208,96,96, + 32,64,16,8,16,16,0,6,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,16,2,4,16,0,254,255,255, + 255,255,16,4,8,16,0,254,255,255,255,255,255,255,255,255, + 16,6,12,16,0,254,255,255,255,255,255,255,255,255,255,255, + 255,255,16,8,16,16,0,254,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,16,10,20,16,0,254,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,16,12,24,16,0,254,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 16,14,28,16,0,254,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,16,16,32,16,0,254,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,14,16,32,16,0,254,255,252, + 255,252,255,252,255,252,255,252,255,252,255,252,255,252,255,252, + 255,252,255,252,255,252,255,252,255,252,255,252,255,252,12,16, + 32,16,0,254,255,240,255,240,255,240,255,240,255,240,255,240, + 255,240,255,240,255,240,255,240,255,240,255,240,255,240,255,240, + 255,240,255,240,10,16,32,16,0,254,255,192,255,192,255,192, + 255,192,255,192,255,192,255,192,255,192,255,192,255,192,255,192, + 255,192,255,192,255,192,255,192,255,192,8,16,16,16,0,254, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 6,16,16,16,0,254,252,252,252,252,252,252,252,252,252,252, + 252,252,252,252,252,252,4,16,16,16,0,254,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,2,16,16,16, + 0,254,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,8,16,16,16,8,254,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,15,16,32,16,0,254,136,136, + 34,34,136,136,34,34,136,136,34,34,136,136,34,34,136,136, + 34,34,136,136,34,34,136,136,34,34,136,136,34,34,16,16, + 32,16,0,254,170,170,85,85,170,170,85,85,170,170,85,85, + 170,170,85,85,170,170,85,85,170,170,85,85,170,170,85,85, + 170,170,85,85,16,16,32,16,0,254,238,238,187,187,238,238, + 187,187,238,238,187,187,238,238,187,187,238,238,187,187,238,238, + 187,187,238,238,187,187,238,238,187,187,16,2,4,16,0,12, + 255,255,255,255,2,16,16,16,14,254,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,8,8,8,16,0,254, + 255,255,255,255,255,255,255,255,8,8,8,16,8,254,255,255, + 255,255,255,255,255,255,8,8,8,16,0,6,255,255,255,255, + 255,255,255,255,16,16,32,16,0,254,255,0,255,0,255,0, + 255,0,255,0,255,0,255,0,255,0,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,16,16,32,16,0,254, + 255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, + 0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255, + 16,16,32,16,0,254,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,255,0,255,0,255,0,255,0, + 255,0,255,0,255,0,16,16,32,16,0,254,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,0,255,0,255, + 0,255,0,255,0,255,0,255,0,255,0,255,8,8,8,16, + 8,6,255,255,255,255,255,255,255,255,16,16,32,16,0,254, + 0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255, + 255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, + 16,16,32,16,0,254,0,255,0,255,0,255,0,255,0,255, + 0,255,0,255,0,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,7,7,7,8,1,1,254,254,254,254, + 254,254,254,7,7,7,8,1,1,254,130,130,130,130,130,254, + 7,7,7,8,1,1,124,130,130,130,130,130,124,7,7,7, + 8,1,1,254,130,186,186,186,130,254,7,7,7,8,1,1, + 254,130,254,130,254,130,254,7,7,7,8,1,1,254,170,170, + 170,170,170,254,7,7,7,8,1,1,254,170,254,170,254,170, + 254,7,7,7,8,1,1,254,166,146,202,166,146,254,7,7, + 7,8,1,1,254,202,146,166,202,146,254,7,7,7,8,1, + 1,254,170,214,170,214,170,254,4,4,4,8,2,4,240,240, + 240,240,4,4,4,8,2,4,240,144,144,240,7,4,4,8, + 1,4,254,254,254,254,7,4,4,8,1,4,254,130,130,254, + 4,7,7,8,2,2,240,240,240,240,240,240,240,4,7,7, + 8,2,2,240,144,144,144,144,144,240,8,3,3,8,0,4, + 63,126,252,8,3,3,8,0,4,63,66,252,6,6,6,8, + 1,3,48,48,120,120,252,252,6,6,6,8,1,3,48,48, + 72,72,132,252,6,3,3,8,1,3,48,120,252,6,3,3, + 8,1,3,48,72,252,6,6,6,8,1,3,192,240,252,252, + 240,192,6,6,6,8,1,3,192,176,140,140,176,192,4,4, + 4,8,2,4,192,240,240,192,4,4,4,8,2,4,192,176, + 176,192,6,5,5,8,1,3,192,240,252,240,192,6,5,5, + 8,1,3,192,176,140,176,192,6,6,6,8,1,3,252,252, + 120,120,48,48,6,6,6,8,1,3,252,132,72,72,48,48, + 6,3,3,8,1,3,252,120,48,6,3,3,8,1,3,252, + 72,48,6,6,6,8,1,3,12,60,252,252,60,12,6,6, + 6,8,1,3,12,52,196,196,52,12,4,4,4,8,2,4, + 48,240,240,48,4,4,4,8,2,4,48,208,208,48,6,5, + 5,8,1,3,12,60,252,60,12,6,5,5,8,1,3,12, + 52,196,52,12,7,7,7,8,1,2,16,56,124,254,124,56, + 16,7,7,7,8,1,2,16,40,68,130,68,40,16,7,7, + 7,8,1,2,16,40,84,186,84,40,16,7,7,7,8,1, + 2,56,68,178,186,154,68,56,6,10,10,8,1,1,48,48, + 72,72,132,132,72,72,48,48,7,7,7,8,1,2,56,68, + 130,130,130,68,56,7,7,7,8,1,2,40,0,130,0,130, + 0,40,7,7,7,8,1,2,56,108,170,170,170,108,56,7, + 7,7,8,1,2,56,68,146,170,146,68,56,7,7,7,8, + 1,2,56,124,254,254,254,124,56,7,7,7,8,1,2,56, + 100,226,226,226,100,56,7,7,7,8,1,2,56,76,142,142, + 142,76,56,7,7,7,8,1,2,56,68,130,130,254,124,56, + 7,7,7,8,1,2,56,124,254,130,130,68,56,7,7,7, + 8,1,2,56,92,158,158,130,68,56,7,7,7,8,1,2, + 56,76,142,142,254,124,56,4,7,7,8,1,2,48,112,240, + 240,240,112,48,4,7,7,8,4,2,192,224,240,240,240,224, + 192,8,16,16,8,0,254,255,255,255,255,255,255,231,195,195, + 231,255,255,255,255,255,255,8,16,16,8,0,254,255,255,255, + 255,255,231,219,189,189,219,231,255,255,255,255,255,8,8,8, + 8,0,6,255,255,255,255,255,231,219,189,8,8,8,8,0, + 254,189,219,231,255,255,255,255,255,4,4,4,8,1,5,48, + 64,128,128,4,4,4,8,4,5,192,32,16,16,4,4,4, + 8,4,2,16,16,32,192,4,4,4,8,1,2,128,128,64, + 48,7,4,4,8,1,5,56,68,130,130,7,4,4,8,1, + 2,130,130,68,56,6,6,6,8,1,255,4,12,28,60,124, + 252,6,6,6,8,1,255,128,192,224,240,248,252,6,6,6, + 8,1,6,252,248,240,224,192,128,6,6,6,8,1,6,252, + 124,60,28,12,4,5,5,5,8,1,2,112,136,136,136,112, + 6,6,6,8,1,3,252,228,228,228,228,252,6,6,6,8, + 1,3,252,156,156,156,156,252,6,6,6,8,1,3,252,244, + 228,196,132,252,6,6,6,8,1,3,252,132,140,156,188,252, + 7,6,6,8,1,3,254,146,146,146,146,254,7,7,7,8, + 1,2,16,40,40,68,84,130,254,6,6,6,8,1,2,48, + 48,104,104,228,252,6,7,7,8,1,2,48,48,88,88,156, + 156,252,8,8,8,8,0,2,60,66,129,129,129,129,66,60, + 6,6,6,8,1,0,252,164,228,132,132,252,6,6,6,8, + 1,0,252,132,132,228,164,252,6,6,6,8,1,0,252,132, + 132,156,148,252,6,6,6,8,1,0,252,148,156,132,132,252, + 8,8,8,8,0,0,60,82,145,241,129,129,66,60,8,8, + 8,8,0,0,60,66,129,129,241,145,82,60,8,8,8,8, + 0,0,60,66,129,129,143,137,74,60,8,8,8,8,0,0, + 60,74,137,143,129,129,66,60,6,6,6,8,1,6,252,136, + 144,160,192,128,6,6,6,8,1,6,252,68,36,20,12,4, + 6,6,6,8,1,255,128,192,160,144,136,252,6,6,6,8, + 1,255,252,132,132,132,132,252,6,6,6,8,1,255,252,252, + 252,252,252,252,4,4,4,8,2,0,240,144,144,240,4,4, + 4,8,2,0,240,240,240,240,6,6,6,8,1,255,4,12, + 20,36,68,252}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 10, '1' Height: 14 + Calculated Max Values w=16 h=16 x= 4 y= 5 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-1 + X Font ascent =14 descent=-1 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_72_73[7240] U8G_SECTION(".progmem.u8g_font_unifont_72_73") = { + 0,16,16,0,254,10,4,144,6,240,0,255,255,14,254,14, + 255,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,74,81,234,80,90,81,201,158,0,1,128,0,0,1,128, + 0,0,1,128,0,85,85,14,5,10,16,1,4,115,36,132, + 164,100,188,20,164,227,36,13,5,10,16,1,4,119,72,130, + 72,98,48,18,72,226,72,13,5,10,16,1,4,247,72,130, + 72,242,48,130,72,242,72,14,5,10,16,1,4,243,124,132, + 144,244,144,132,144,243,16,14,5,10,16,1,4,244,152,132, + 164,246,164,133,172,244,156,13,5,10,16,1,4,99,72,148, + 80,244,96,148,80,147,72,14,5,10,16,1,4,231,160,148, + 32,231,160,148,32,231,188,10,5,10,16,1,4,241,192,138, + 0,241,128,136,64,243,128,11,5,10,16,1,4,139,224,136, + 128,248,128,136,128,136,128,11,5,10,16,1,4,131,224,130, + 0,131,224,130,0,250,0,11,5,10,16,1,4,139,224,136, + 128,136,128,80,128,32,128,11,5,10,16,1,4,251,224,130, + 0,251,224,130,0,130,0,11,5,10,16,1,4,123,192,130, + 32,131,192,130,64,122,32,11,5,10,16,1,4,121,192,130, + 32,114,32,10,32,241,192,11,5,10,16,1,4,123,224,128, + 128,112,128,8,128,243,224,12,5,10,16,1,4,228,112,148, + 64,148,112,148,64,231,112,13,5,10,16,1,4,227,16,148, + 48,148,16,148,16,227,56,13,5,10,16,1,4,227,48,148, + 8,148,16,148,32,227,56,13,5,10,16,1,4,227,48,148, + 8,148,48,148,8,227,48,13,5,10,16,1,4,227,8,148, + 24,148,40,148,56,227,8,14,5,10,16,1,4,147,36,212, + 168,212,176,183,168,148,164,14,5,10,16,1,4,104,164,133, + 52,98,44,18,36,226,36,13,5,10,16,1,4,247,112,130, + 72,242,112,130,72,242,112,13,5,10,16,1,4,102,72,137, + 104,143,88,137,72,105,72,11,5,10,16,1,4,250,32,131, + 96,250,160,130,32,250,32,14,5,10,16,1,4,116,184,132, + 164,100,184,20,164,227,56,14,5,10,16,1,4,243,156,132, + 32,243,32,128,160,247,28,9,5,10,16,1,4,243,128,132, + 0,243,0,128,128,135,0,9,5,10,16,1,4,115,128,132, + 0,179,0,144,128,119,0,9,5,10,16,1,4,227,128,148, + 0,227,0,160,128,151,0,9,5,10,16,1,4,147,128,148, + 0,147,0,144,128,103,0,9,5,10,16,1,4,119,0,132, + 128,103,0,20,0,228,0,14,5,10,16,1,4,231,160,148, + 32,151,160,148,32,231,188,6,10,10,8,1,0,40,48,32, + 96,184,36,36,36,36,56,6,2,2,8,1,0,132,252,6, + 9,9,8,1,1,144,208,176,144,0,32,32,32,60,7,7, + 7,8,1,2,2,20,42,84,168,80,128,6,11,11,8,1, + 0,120,132,132,128,64,32,16,16,0,16,16,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 5,10,10,8,2,0,56,40,40,40,32,32,160,160,160,224, + 5,10,10,8,2,0,8,8,8,8,8,248,136,136,136,136, + 5,10,10,8,2,0,136,136,136,136,136,248,32,32,32,32, + 5,10,10,8,2,0,32,32,32,32,32,248,136,136,136,136, + 5,10,10,8,2,0,248,168,168,168,32,32,168,168,168,248, + 5,5,5,8,2,5,136,216,168,216,136,6,8,8,8,1, + 1,28,220,220,192,192,220,220,28,8,10,10,8,0,0,3, + 3,3,27,24,24,216,192,192,192,7,10,10,8,1,0,14, + 174,174,160,160,160,160,160,160,160,7,9,9,8,1,0,218, + 218,218,218,218,218,218,218,218,8,10,10,8,0,0,160,160, + 80,40,40,20,20,10,5,5,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,15,15,30,16, + 0,255,7,192,24,48,32,8,65,4,67,4,133,2,129,2, + 129,2,129,2,129,2,65,4,71,196,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,71,196,72,36, + 128,34,128,34,128,194,131,2,132,2,72,36,79,228,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 71,196,72,36,128,34,128,34,128,194,128,34,128,34,72,36, + 71,196,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,64,68,64,196,129,66,130,66,132,66,136,66, + 159,242,64,68,65,244,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,79,228,72,4,136,2,143,194, + 128,34,128,34,128,34,72,36,71,196,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,71,196,72,36, + 136,2,136,2,143,194,136,34,136,34,72,36,71,196,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 79,228,72,36,128,66,128,66,128,130,129,2,129,2,66,4, + 66,4,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,71,196,72,36,136,34,136,34,135,194,136,34, + 136,34,72,36,71,196,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,71,196,72,36,136,34,136,34, + 135,226,128,34,128,34,72,36,71,196,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,72,228,89,20, + 137,18,137,18,137,18,137,18,137,18,73,20,92,228,32,8, + 24,48,7,192,14,14,28,16,1,255,31,224,32,16,72,72, + 152,196,136,68,136,68,136,68,136,68,136,68,136,68,156,228, + 64,8,32,16,31,224,14,14,28,16,1,255,31,224,32,16, + 73,200,154,36,139,36,136,36,136,196,137,4,138,4,138,20, + 159,228,64,8,32,16,31,224,14,14,28,16,1,255,31,224, + 32,16,73,200,154,36,136,36,136,36,136,196,136,36,138,36, + 138,36,157,196,64,8,32,16,31,224,14,14,28,16,1,255, + 31,224,32,16,72,72,152,196,136,196,137,68,137,68,138,68, + 143,244,136,68,156,228,64,8,32,16,31,224,14,14,28,16, + 1,255,31,224,32,16,75,40,154,196,138,4,138,196,139,36, + 136,36,136,36,138,36,157,196,64,8,32,16,31,224,14,14, + 28,16,1,255,31,224,32,16,72,200,153,36,138,4,138,196, + 139,36,138,36,138,36,138,36,157,196,64,8,32,16,31,224, + 14,14,28,16,1,255,31,224,32,16,75,232,154,36,136,36, + 136,68,136,132,136,132,136,132,136,132,157,196,64,8,32,16, + 31,224,14,14,28,16,1,255,31,224,32,16,73,200,154,36, + 138,36,138,36,137,196,138,36,138,36,138,36,157,196,64,8, + 32,16,31,224,14,14,28,16,1,255,31,224,32,16,73,200, + 154,36,138,36,138,36,137,228,136,36,136,36,138,36,157,196, + 64,8,32,16,31,224,14,14,28,16,1,255,31,224,32,16, + 88,200,165,36,133,36,133,36,137,36,145,36,161,36,165,36, + 188,196,64,8,32,16,31,224,15,14,28,16,0,255,64,4, + 129,2,129,2,129,2,129,2,129,2,129,2,129,2,129,2, + 129,2,129,2,129,2,129,2,64,4,15,14,28,16,0,255, + 64,4,135,130,136,66,136,66,128,66,128,66,128,66,128,130, + 131,2,132,2,136,66,136,66,143,194,64,4,15,14,28,16, + 0,255,64,4,135,130,136,66,136,66,128,66,128,130,131,2, + 128,130,128,66,128,66,136,66,136,66,135,130,64,4,15,14, + 28,16,0,255,65,132,130,130,130,130,130,130,132,130,132,130, + 136,130,136,130,143,226,128,130,128,130,128,130,128,130,64,4, + 15,14,28,16,0,255,64,4,143,194,136,2,136,2,136,2, + 139,130,140,66,136,66,128,66,128,66,136,66,136,66,135,130, + 64,4,15,14,28,16,0,255,64,4,135,130,136,66,136,66, + 136,2,136,2,139,130,140,66,136,66,136,66,136,66,136,66, + 135,130,64,4,15,14,28,16,0,255,64,4,143,226,136,34, + 136,34,128,66,128,130,128,130,128,130,129,2,129,2,129,2, + 129,2,129,2,64,4,15,14,28,16,0,255,64,4,135,130, + 136,66,136,66,136,66,136,66,135,130,136,66,136,66,136,66, + 136,66,136,66,135,130,64,4,15,14,28,16,0,255,64,4, + 135,130,136,66,136,66,136,66,136,66,136,194,135,66,128,66, + 128,66,136,66,136,66,135,130,64,4,15,14,28,16,0,255, + 64,4,136,226,137,18,137,18,137,18,137,18,137,18,137,18, + 137,18,137,18,137,18,137,18,136,226,64,4,15,14,28,16, + 0,255,64,4,136,34,136,34,136,34,136,34,136,34,136,34, + 136,34,136,34,136,34,136,34,136,34,136,34,64,4,15,14, + 28,16,0,255,64,4,145,226,146,18,146,18,144,18,144,18, + 144,34,144,194,145,2,146,2,146,18,146,18,147,242,64,4, + 15,14,28,16,0,255,64,4,145,226,146,18,146,18,144,18, + 144,34,144,194,144,34,144,18,144,18,146,18,146,18,145,226, + 64,4,15,14,28,16,0,255,64,4,144,98,144,162,144,162, + 144,162,145,34,145,34,146,34,146,34,147,250,144,34,144,34, + 144,34,64,4,15,14,28,16,0,255,64,4,147,242,146,2, + 146,2,146,2,146,226,147,18,146,18,144,18,144,18,146,18, + 146,18,145,226,64,4,15,14,28,16,0,255,64,4,145,226, + 146,18,146,18,146,2,146,2,146,226,147,18,146,18,146,18, + 146,18,146,18,145,226,64,4,15,14,28,16,0,255,64,4, + 147,242,146,18,146,18,144,34,144,66,144,66,144,66,144,130, + 144,130,144,130,144,130,144,130,64,4,15,14,28,16,0,255, + 64,4,145,226,146,18,146,18,146,18,146,18,145,226,146,18, + 146,18,146,18,146,18,146,18,145,226,64,4,15,14,28,16, + 0,255,64,4,145,226,146,18,146,18,146,18,146,18,146,50, + 145,210,144,18,144,18,146,18,146,18,145,226,64,4,15,14, + 28,16,0,255,64,4,156,114,162,138,162,138,130,138,130,138, + 132,138,136,138,144,138,160,138,162,138,162,138,190,114,64,4, + 6,14,14,16,4,255,32,96,160,32,32,32,32,32,32,32, + 32,32,32,36,9,14,28,16,3,255,120,0,132,0,132,0, + 4,0,4,0,4,0,8,0,48,0,64,0,128,0,128,0, + 132,0,132,0,252,128,9,14,28,16,3,255,120,0,132,0, + 132,0,4,0,4,0,8,0,48,0,8,0,4,0,4,0, + 132,0,132,0,132,0,120,128,10,15,30,16,3,254,24,0, + 40,0,40,0,40,0,72,0,72,0,72,0,136,0,136,0, + 254,0,8,0,8,0,8,0,8,64,8,0,9,14,28,16, + 3,255,252,0,128,0,128,0,128,0,128,0,128,0,184,0, + 196,0,132,0,4,0,4,0,132,0,132,0,120,128,9,14, + 28,16,3,255,120,0,132,0,132,0,132,0,128,0,128,0, + 184,0,196,0,132,0,132,0,132,0,132,0,132,0,120,128, + 10,14,28,16,3,255,254,0,130,0,130,0,4,0,8,0, + 8,0,8,0,16,0,16,0,16,0,16,0,16,0,16,0, + 16,64,9,14,28,16,3,255,120,0,132,0,132,0,132,0, + 132,0,72,0,48,0,72,0,132,0,132,0,132,0,132,0, + 132,0,120,128,9,14,28,16,3,255,120,0,132,0,132,0, + 132,0,132,0,132,0,140,0,116,0,4,0,4,0,132,0, + 132,0,132,0,120,128,13,14,28,16,0,255,35,192,100,32, + 164,32,36,32,36,32,36,32,36,32,36,32,36,32,36,32, + 36,32,36,32,36,32,35,200,12,14,28,16,0,255,32,128, + 97,128,162,128,32,128,32,128,32,128,32,128,32,128,32,128, + 32,128,32,128,32,128,32,128,32,144,14,14,28,16,0,255, + 35,192,100,32,164,32,32,32,32,32,32,32,32,64,33,128, + 34,0,36,0,36,0,36,32,36,32,39,228,14,14,28,16, + 0,255,35,192,100,32,164,32,32,32,32,32,32,64,33,128, + 32,64,32,32,32,32,36,32,36,32,36,32,35,196,13,14, + 28,16,0,255,32,192,97,64,161,64,33,64,34,64,34,64, + 34,64,36,64,36,64,39,240,32,64,32,64,32,64,32,72, + 14,14,28,16,0,255,39,224,100,0,164,0,36,0,36,0, + 36,0,37,192,38,32,36,32,32,32,32,32,36,32,36,32, + 35,196,14,14,28,16,0,255,35,192,100,32,164,32,36,32, + 36,0,36,0,37,192,38,32,36,32,36,32,36,32,36,32, + 36,32,35,196,14,14,28,16,0,255,39,240,100,16,164,16, + 32,32,32,64,32,64,32,64,32,128,32,128,32,128,32,128, + 32,128,32,128,32,132,14,14,28,16,0,255,35,192,100,32, + 164,32,36,32,36,32,34,64,33,128,34,64,36,32,36,32, + 36,32,36,32,36,32,35,196,14,14,28,16,0,255,35,192, + 100,32,164,32,36,32,36,32,36,32,36,96,35,160,32,32, + 32,32,36,32,36,32,36,32,35,196,13,14,28,16,1,255, + 113,192,138,32,138,32,10,32,10,32,10,32,50,32,66,32, + 130,32,130,32,130,32,138,32,138,32,249,200,14,14,28,16, + 1,255,48,48,64,8,128,4,128,4,135,132,136,68,128,68, + 135,196,136,68,136,68,135,180,128,4,64,8,48,48,14,14, + 28,16,1,255,48,48,72,8,152,4,136,4,139,132,140,68, + 136,36,136,36,136,36,140,68,155,132,128,4,64,8,48,48, + 14,14,28,16,1,255,48,48,64,8,128,4,128,4,135,132, + 136,68,144,4,144,4,144,36,136,68,135,132,128,4,64,8, + 48,48,14,14,28,16,1,255,48,48,64,72,128,196,128,68, + 135,68,136,196,144,68,144,68,144,68,136,196,135,100,128,4, + 64,8,48,48,14,14,28,16,1,255,48,48,64,8,128,4, + 128,4,143,132,144,68,144,68,159,196,144,4,144,68,143,132, + 128,4,64,8,48,48,14,14,28,16,1,255,48,48,65,136, + 130,196,130,4,143,132,130,4,130,4,130,4,130,4,130,4, + 135,4,128,4,64,8,48,48,14,14,28,16,1,255,48,48, + 64,8,128,4,128,100,135,132,136,68,136,68,159,132,144,4, + 143,196,144,36,144,36,79,200,48,48,14,14,28,16,1,255, + 48,48,72,8,152,4,136,4,137,196,142,68,136,68,136,68, + 136,68,136,68,156,228,128,4,64,8,48,48,14,14,28,16, + 1,255,49,48,65,8,128,4,128,4,129,4,131,4,129,4, + 129,4,129,4,129,4,131,132,128,4,64,8,48,48,14,14, + 28,16,1,255,49,48,65,8,128,4,128,4,129,4,131,4, + 129,4,129,4,129,4,129,4,129,4,137,4,70,8,48,48, + 14,14,28,16,1,255,48,48,72,8,152,4,136,4,137,196, + 136,132,137,4,143,4,137,132,136,196,156,228,128,4,64,8, + 48,48,14,14,28,16,1,255,48,48,66,8,134,4,130,4, + 130,4,130,4,130,4,130,4,130,4,130,4,135,4,128,4, + 64,8,48,48,14,14,28,16,1,255,48,48,64,8,128,4, + 128,4,150,196,187,68,146,68,146,68,146,68,146,68,187,100, + 128,4,64,8,48,48,14,14,28,16,1,255,48,48,64,8, + 128,4,128,4,137,196,158,68,136,68,136,68,136,68,136,68, + 156,228,128,4,64,8,48,48,14,14,28,16,1,255,48,48, + 64,8,128,4,128,4,143,132,144,68,144,68,144,68,144,68, + 144,68,143,132,128,4,64,8,48,48,14,14,28,16,1,255, + 48,48,64,8,128,4,128,4,139,132,156,68,136,36,136,36, + 136,36,140,68,139,132,136,4,92,8,48,48,14,14,28,16, + 1,255,48,48,64,8,128,4,128,4,135,68,136,196,144,68, + 144,68,144,68,136,196,135,68,128,68,64,232,48,48,14,14, + 28,16,1,255,48,48,64,8,128,4,128,4,137,196,158,100, + 136,4,136,4,136,4,136,4,156,4,128,4,64,8,48,48, + 14,14,28,16,1,255,48,48,64,8,128,4,128,4,135,196, + 136,36,136,4,135,196,128,36,136,36,135,196,128,4,64,8, + 48,48,14,14,28,16,1,255,48,48,64,8,128,4,130,4, + 130,4,143,132,130,4,130,4,130,4,130,68,131,132,128,4, + 64,8,48,48,14,14,28,16,1,255,48,48,64,8,128,4, + 128,4,136,68,152,196,136,68,136,68,136,68,136,196,143,100, + 128,4,64,8,48,48,14,14,28,16,1,255,48,48,64,8, + 128,4,128,4,156,116,136,36,132,68,132,68,130,132,130,132, + 129,4,128,4,64,8,48,48,14,14,28,16,1,255,48,48, + 64,8,128,4,128,4,191,116,146,36,146,36,137,68,139,68, + 132,132,132,132,128,4,64,8,48,48,14,14,28,16,1,255, + 48,48,64,8,128,4,128,4,156,228,136,68,132,132,131,4, + 132,132,136,68,156,228,128,4,64,8,48,48,14,14,28,16, + 1,255,48,48,64,8,128,4,128,4,184,228,144,68,136,132, + 133,4,130,4,130,4,135,4,128,4,64,8,48,48,14,14, + 28,16,1,255,48,48,64,8,128,4,128,4,135,228,132,68, + 136,132,129,4,130,4,132,36,143,196,128,4,64,8,48,48, + 15,15,30,16,0,255,7,192,24,48,33,8,66,132,68,68, + 132,66,132,66,135,194,132,66,132,66,68,68,76,100,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 79,132,68,68,132,34,132,66,135,130,132,66,132,34,68,68, + 79,196,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,67,196,68,36,132,2,132,2,132,2,132,2, + 132,2,68,36,67,196,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,79,132,68,68,132,34,132,34, + 132,34,132,34,132,34,68,68,79,132,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,79,228,68,36, + 132,2,132,2,135,130,132,2,132,2,68,36,79,228,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 79,228,68,36,132,2,132,2,135,130,132,2,132,2,68,4, + 78,4,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,67,196,68,36,132,2,132,2,132,226,132,34, + 132,34,68,100,67,164,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,78,228,68,68,132,66,132,66, + 135,194,132,66,132,66,68,68,78,228,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,67,132,65,4, + 129,2,129,2,129,2,129,2,129,2,65,4,67,132,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 65,196,64,132,128,130,128,130,128,130,128,130,128,130,72,132, + 71,4,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,78,100,68,68,132,130,133,2,134,2,133,2, + 132,130,68,68,78,100,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,78,4,68,4,132,2,132,2, + 132,2,132,2,132,2,68,36,79,196,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,76,100,70,196, + 134,194,133,66,133,66,132,66,132,66,68,68,78,228,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 76,100,68,68,134,66,134,66,133,66,133,66,132,194,68,196, + 76,100,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,67,132,68,68,136,34,136,34,136,34,136,34, + 136,34,68,68,67,132,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,79,132,68,68,132,66,132,66, + 135,130,132,2,132,2,68,4,78,4,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,67,132,68,68, + 136,34,136,34,136,34,136,34,137,162,68,68,67,164,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 79,132,68,68,132,66,132,66,135,130,133,2,132,130,68,68, + 78,36,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,67,132,68,68,132,2,132,2,131,130,128,66, + 128,66,68,68,67,132,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,79,228,73,36,129,2,129,2, + 129,2,129,2,129,2,65,4,67,132,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,78,228,68,68, + 132,66,132,66,132,66,132,66,132,66,68,68,67,132,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 76,100,68,68,132,66,132,66,130,130,130,130,130,130,65,4, + 65,4,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,76,100,69,68,133,66,133,66,133,66,133,66, + 134,194,68,68,68,68,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,78,228,68,68,132,66,130,130, + 129,2,130,130,132,66,68,68,78,228,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,78,228,68,68, + 132,66,130,130,129,2,129,2,129,2,65,4,67,132,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 79,228,72,36,128,66,128,130,129,2,130,2,132,2,72,36, + 79,228,32,8,24,48,7,192,14,14,28,16,1,255,31,224, + 32,16,64,8,128,4,143,132,144,68,128,68,143,196,144,68, + 144,68,143,180,64,8,32,16,31,224,14,14,28,16,1,255, + 31,224,40,16,88,8,136,4,139,132,140,68,136,36,136,36, + 136,36,140,68,155,132,64,8,32,16,31,224,14,14,28,16, + 1,255,31,224,32,16,64,8,128,4,135,132,136,68,144,4, + 144,4,144,4,136,100,135,132,64,8,32,16,31,224,14,14, + 28,16,1,255,31,224,32,80,64,200,128,68,135,68,136,196, + 144,68,144,68,144,68,144,68,143,164,64,8,32,16,31,224, + 14,14,28,16,1,255,31,224,32,16,64,8,128,4,135,132, + 136,68,144,36,159,228,144,4,136,36,135,196,64,8,32,16, + 31,224,14,14,28,16,1,255,31,224,35,144,66,200,130,4, + 143,132,130,4,130,4,130,4,130,4,130,4,135,4,64,8, + 32,16,31,224,14,14,28,16,1,255,31,224,32,16,64,8, + 128,196,135,132,136,68,136,68,143,132,144,4,159,196,144,36, + 80,40,47,208,31,224,14,14,28,16,1,255,31,224,40,16, + 88,8,136,4,139,196,140,68,136,68,136,68,136,68,136,68, + 156,228,64,8,32,16,31,224,14,14,28,16,1,255,31,224, + 33,16,65,8,128,4,129,4,131,4,129,4,129,4,129,4, + 129,4,131,132,64,8,32,16,31,224,14,14,28,16,1,255, + 31,224,33,16,65,8,128,4,129,4,131,4,129,4,129,4, + 129,4,129,4,129,4,89,8,38,16,31,224,14,14,28,16, + 1,255,31,224,40,16,88,8,136,4,137,228,136,132,139,4, + 141,132,136,196,136,100,156,244,64,8,32,16,31,224,14,14, + 28,16,1,255,31,224,34,16,70,8,130,4,130,4,130,4, + 130,4,130,4,130,4,130,4,135,4,64,8,32,16,31,224, + 14,14,28,16,1,255,31,224,32,16,64,8,128,4,150,196, + 187,68,146,68,146,68,146,68,146,68,187,100,64,8,32,16, + 31,224,14,14,28,16,1,255,31,224,32,16,64,8,128,4, + 139,196,156,68,136,68,136,68,136,68,136,68,156,228,64,8, + 32,16,31,224,14,14,28,16,1,255,31,224,32,16,64,8, + 128,4,135,196,136,36,136,36,136,36,136,36,136,36,135,196, + 64,8,32,16,31,224,14,14,28,16,1,255,31,224,32,16, + 64,8,128,4,139,132,156,68,136,36,136,36,136,36,140,68, + 139,132,72,8,40,16,31,224,14,14,28,16,1,255,31,224, + 32,16,64,8,128,4,135,68,136,196,144,68,144,68,144,68, + 136,196,135,68,64,72,32,80,31,224,14,14,28,16,1,255, + 31,224,32,16,64,8,128,4,137,196,158,100,136,4,136,4, + 136,4,136,4,156,4,64,8,32,16,31,224,14,14,28,16, + 1,255,31,224,32,16,64,8,128,4,135,196,136,36,140,4, + 131,132,128,100,136,36,135,196,64,8,32,16,31,224,14,14, + 28,16,1,255,31,224,32,16,64,8,130,4,130,4,143,132, + 130,4,130,4,130,4,130,68,131,132,64,8,32,16,31,224, + 14,14,28,16,1,255,31,224,32,16,64,8,128,4,136,68, + 152,196,136,68,136,68,136,68,136,68,143,164,64,8,32,16, + 31,224,14,14,28,16,1,255,31,224,32,16,64,8,128,4, + 156,116,136,36,132,68,132,68,130,132,130,132,129,4,64,8, + 32,16,31,224,14,14,28,16,1,255,31,224,32,16,64,8, + 128,4,247,116,162,36,162,36,147,68,149,68,136,132,136,132, + 64,8,32,16,31,224,14,14,28,16,1,255,31,224,32,16, + 64,8,128,4,184,228,136,132,133,4,130,4,133,4,136,132, + 184,228,64,8,32,16,31,224,14,14,28,16,1,255,31,224, + 32,16,64,8,128,4,184,228,144,68,136,132,133,4,130,4, + 130,4,135,4,64,8,32,16,31,224,14,14,28,16,1,255, + 31,224,32,16,64,8,128,4,143,196,136,68,144,132,131,4, + 132,4,136,68,159,132,64,8,32,16,31,224,16,15,30,16, + 0,254,7,224,24,24,32,4,67,194,68,34,132,33,132,33, + 132,33,132,33,132,33,68,34,67,194,32,4,24,24,7,224, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,247,188, + 231,60,247,188,247,188,227,28,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,247,60, + 231,220,247,188,247,124,227,28,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,247,60, + 231,220,247,60,247,220,227,60,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,246,188, + 230,188,246,28,247,188,227,188,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,247,28, + 231,124,247,60,247,220,227,60,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,247,60, + 230,252,246,60,246,220,227,60,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,246,60, + 231,188,247,188,247,124,227,124,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,247,60, + 230,220,247,60,246,220,227,60,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,247,60, + 230,220,247,28,247,220,227,60,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,231,156, + 251,108,247,108,239,108,227,156,127,248,127,248,63,240,15,192, + 16,15,30,16,0,254,7,224,24,24,35,196,76,50,80,10, + 144,137,161,133,160,133,160,133,145,201,80,10,76,50,35,196, + 24,24,7,224,16,15,30,16,0,254,7,224,24,24,35,196, + 76,50,80,10,145,137,160,69,160,133,161,5,145,201,80,10, + 76,50,35,196,24,24,7,224,16,15,30,16,0,254,7,224, + 24,24,35,196,76,50,80,10,145,137,160,69,161,133,160,69, + 145,137,80,10,76,50,35,196,24,24,7,224,16,15,30,16, + 0,254,7,224,24,24,35,196,76,50,80,10,146,137,162,133, + 163,197,160,133,144,137,80,10,76,50,35,196,24,24,7,224, + 16,15,30,16,0,254,7,224,24,24,35,196,76,50,80,10, + 145,201,161,5,161,133,160,69,145,137,80,10,76,50,35,196, + 24,24,7,224,16,15,30,16,0,254,7,224,24,24,35,196, + 76,50,80,10,145,137,162,5,163,133,162,69,145,137,80,10, + 76,50,35,196,24,24,7,224,16,15,30,16,0,254,7,224, + 24,24,35,196,76,50,80,10,145,201,160,69,160,69,160,133, + 144,137,80,10,76,50,35,196,24,24,7,224,16,15,30,16, + 0,254,7,224,24,24,35,196,76,50,80,10,145,137,162,69, + 161,133,162,69,145,137,80,10,76,50,35,196,24,24,7,224, + 16,15,30,16,0,254,7,224,24,24,35,196,76,50,80,10, + 145,137,162,69,161,197,160,69,145,137,80,10,76,50,35,196, + 24,24,7,224,16,15,30,16,0,254,7,224,24,24,35,196, + 76,50,80,10,146,105,166,149,162,149,162,149,151,105,80,10, + 76,50,35,196,24,24,7,224,14,13,26,16,1,255,15,192, + 63,240,127,248,127,248,252,252,251,124,251,124,251,124,252,252, + 127,248,127,248,63,240,15,192}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 6, '1' Height: 3 + Calculated Max Values w= 8 h=10 x= 2 y= 4 dx= 8 dy= 0 ascent=11 len=10 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 6 descent= 0 + X Font ascent = 8 descent= 0 + Max Font ascent =11 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_75r[580] U8G_SECTION(".progmem.u8g_font_unifont_75r") = { + 0,16,16,0,254,6,1,137,0,0,32,79,0,11,0,8, + 0,7,7,7,8,1,1,254,254,254,254,254,254,254,7,7, + 7,8,1,1,254,130,130,130,130,130,254,7,7,7,8,1, + 1,124,130,130,130,130,130,124,7,7,7,8,1,1,254,130, + 186,186,186,130,254,7,7,7,8,1,1,254,130,254,130,254, + 130,254,7,7,7,8,1,1,254,170,170,170,170,170,254,7, + 7,7,8,1,1,254,170,254,170,254,170,254,7,7,7,8, + 1,1,254,166,146,202,166,146,254,7,7,7,8,1,1,254, + 202,146,166,202,146,254,7,7,7,8,1,1,254,170,214,170, + 214,170,254,4,4,4,8,2,4,240,240,240,240,4,4,4, + 8,2,4,240,144,144,240,7,4,4,8,1,4,254,254,254, + 254,7,4,4,8,1,4,254,130,130,254,4,7,7,8,2, + 2,240,240,240,240,240,240,240,4,7,7,8,2,2,240,144, + 144,144,144,144,240,8,3,3,8,0,4,63,126,252,8,3, + 3,8,0,4,63,66,252,6,6,6,8,1,3,48,48,120, + 120,252,252,6,6,6,8,1,3,48,48,72,72,132,252,6, + 3,3,8,1,3,48,120,252,6,3,3,8,1,3,48,72, + 252,6,6,6,8,1,3,192,240,252,252,240,192,6,6,6, + 8,1,3,192,176,140,140,176,192,4,4,4,8,2,4,192, + 240,240,192,4,4,4,8,2,4,192,176,176,192,6,5,5, + 8,1,3,192,240,252,240,192,6,5,5,8,1,3,192,176, + 140,176,192,6,6,6,8,1,3,252,252,120,120,48,48,6, + 6,6,8,1,3,252,132,72,72,48,48,6,3,3,8,1, + 3,252,120,48,6,3,3,8,1,3,252,72,48,6,6,6, + 8,1,3,12,60,252,252,60,12,6,6,6,8,1,3,12, + 52,196,196,52,12,4,4,4,8,2,4,48,240,240,48,4, + 4,4,8,2,4,48,208,208,48,6,5,5,8,1,3,12, + 60,252,60,12,6,5,5,8,1,3,12,52,196,52,12,7, + 7,7,8,1,2,16,56,124,254,124,56,16,7,7,7,8, + 1,2,16,40,68,130,68,40,16,7,7,7,8,1,2,16, + 40,84,186,84,40,16,7,7,7,8,1,2,56,68,178,186, + 154,68,56,6,10,10,8,1,1,48,48,72,72,132,132,72, + 72,48,48,7,7,7,8,1,2,56,68,130,130,130,68,56, + 7,7,7,8,1,2,40,0,130,0,130,0,40,7,7,7, + 8,1,2,56,108,170,170,170,108,56,7,7,7,8,1,2, + 56,68,146,170,146,68,56,7,7,7,8,1,2,56,124,254, + 254,254,124,56}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 10, '1' Height: 8 + Calculated Max Values w=16 h=16 x= 3 y= 6 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_76[2532] U8G_SECTION(".progmem.u8g_font_unifont_76") = { + 0,16,16,0,254,10,2,68,4,220,32,159,0,14,254,10, + 0,7,12,12,8,1,0,16,146,68,0,56,124,124,56,0, + 68,146,16,8,4,4,8,0,6,32,118,255,126,7,8,8, + 8,1,2,56,124,254,16,16,16,16,32,16,16,32,16,0, + 254,139,200,3,192,47,241,4,36,138,80,40,18,10,80,73, + 148,4,33,71,224,8,16,16,136,120,30,16,136,8,16,7, + 224,7,11,11,8,1,0,68,68,72,72,80,82,4,96,144, + 144,96,7,6,6,8,1,3,16,16,254,56,108,68,7,7, + 7,8,1,3,16,16,238,68,84,108,68,5,9,9,8,2, + 0,8,16,32,64,128,64,40,24,56,6,8,8,8,1,0, + 252,132,136,144,160,148,140,156,8,8,8,8,0,0,60,66, + 129,153,153,129,66,60,8,6,6,8,0,2,24,36,36,102, + 165,66,8,6,6,8,0,2,66,165,102,36,36,24,5,6, + 6,8,1,2,8,16,96,144,144,96,7,9,9,8,1,0, + 12,18,18,12,16,96,144,144,96,7,6,6,8,1,1,124, + 198,0,84,198,254,7,7,7,8,1,1,124,130,186,124,146, + 130,254,7,7,7,8,1,0,254,130,130,130,130,130,254,7, + 8,8,8,1,0,8,254,138,138,202,178,130,254,7,7,7, + 8,1,0,254,130,170,146,170,130,254,5,10,10,8,2,0, + 136,136,80,80,32,32,80,80,136,136,7,12,12,8,1,2, + 10,160,8,130,56,124,254,16,16,16,16,32,12,13,26,16, + 2,0,36,128,73,0,73,0,36,128,36,128,73,0,0,0, + 127,32,255,208,191,80,128,80,128,224,127,0,11,13,26,16, + 2,0,4,0,10,0,17,0,32,128,64,64,128,32,128,32, + 128,32,128,32,128,32,128,32,128,32,255,224,11,13,26,16, + 2,0,4,0,14,0,31,0,63,128,127,192,255,224,255,224, + 255,224,255,224,255,224,255,224,255,224,255,224,13,13,26,16, + 1,255,5,0,15,128,15,128,103,48,242,120,127,240,242,120, + 98,48,4,0,4,0,4,0,8,0,16,0,14,15,30,16, + 1,254,102,24,79,24,223,176,159,160,255,160,255,32,255,56, + 126,228,127,36,127,40,63,152,63,144,31,176,15,32,6,0, + 7,4,4,8,1,2,252,62,62,28,7,4,4,8,1,2, + 126,248,248,112,7,4,4,8,1,2,252,34,50,28,4,7, + 7,8,2,2,16,16,112,208,144,144,96,7,4,4,8,1, + 2,126,136,152,112,4,7,7,8,2,0,96,144,144,208,112, + 16,16,8,12,12,8,0,0,231,165,126,129,165,165,129,90, + 90,66,189,231,4,10,10,8,2,0,224,16,16,32,32,64, + 64,128,128,112,13,13,26,16,1,0,31,192,32,32,69,16, + 141,136,157,200,189,232,255,248,130,8,135,8,143,136,95,208, + 32,32,31,192,15,13,26,16,0,255,4,64,8,32,16,16, + 16,16,19,144,12,96,62,248,68,68,133,66,131,130,2,128, + 4,64,24,48,13,15,30,16,1,254,6,0,2,0,255,248, + 71,16,63,224,2,0,26,192,34,32,31,192,18,64,15,128, + 10,128,7,0,10,128,2,0,5,8,8,8,2,0,112,136, + 80,32,248,32,32,32,5,9,9,8,2,0,32,112,32,248, + 32,48,96,32,32,6,10,10,8,1,0,56,36,36,56,32, + 168,112,32,112,168,5,9,9,8,2,0,32,112,32,248,32, + 32,32,32,32,7,7,7,8,1,0,56,16,146,254,146,16, + 56,8,9,9,8,0,1,30,33,64,194,199,194,64,33,30, + 11,11,22,16,2,0,21,0,27,0,0,0,85,64,164,160, + 164,160,164,160,149,32,78,64,31,0,4,0,11,12,24,16, + 3,255,4,0,21,0,36,128,78,64,213,96,213,96,206,96, + 228,224,223,96,142,32,21,0,4,0,8,8,8,8,0,0, + 12,2,57,121,13,62,99,193,7,8,8,8,1,0,124,146, + 146,146,186,214,146,124,13,12,24,16,1,0,31,192,32,32, + 64,16,64,16,152,72,188,8,254,24,239,56,255,248,127,240, + 63,224,31,192,13,10,20,16,1,0,255,248,255,248,0,0, + 0,0,255,248,255,248,0,0,0,0,255,248,255,248,13,10, + 20,16,1,0,248,248,248,248,0,0,0,0,255,248,255,248, + 0,0,0,0,255,248,255,248,13,10,20,16,1,0,255,248, + 255,248,0,0,0,0,248,248,248,248,0,0,0,0,255,248, + 255,248,13,10,20,16,1,0,248,248,248,248,0,0,0,0, + 248,248,248,248,0,0,0,0,255,248,255,248,13,10,20,16, + 1,0,255,248,255,248,0,0,0,0,255,248,255,248,0,0, + 0,0,248,248,248,248,13,10,20,16,1,0,248,248,248,248, + 0,0,0,0,255,248,255,248,0,0,0,0,248,248,248,248, + 13,10,20,16,1,0,255,248,255,248,0,0,0,0,248,248, + 248,248,0,0,0,0,248,248,248,248,13,10,20,16,1,0, + 248,248,248,248,0,0,0,0,248,248,248,248,0,0,0,0, + 248,248,248,248,7,7,7,8,1,0,146,124,124,238,124,124, + 146,8,10,10,8,0,1,60,66,129,165,129,153,165,129,66, + 60,8,9,9,8,0,1,60,66,129,165,129,165,153,66,60, + 8,9,9,8,0,1,60,126,255,219,255,219,231,126,60,7, + 7,7,8,1,2,146,84,56,238,56,84,146,6,10,10,8, + 2,0,224,48,24,20,20,20,20,24,48,224,6,10,10,8, + 1,0,28,48,96,160,160,160,160,96,48,28,5,11,11,8, + 2,0,136,136,112,136,136,136,112,32,248,32,32,5,9,9, + 8,2,0,112,136,136,136,112,32,248,32,32,5,10,10,8, + 2,1,32,32,248,32,32,112,136,136,136,112,7,8,8,8, + 1,1,14,6,10,112,136,136,136,112,6,10,10,8,1,0, + 4,4,4,116,140,12,20,252,4,4,6,10,10,8,1,0, + 64,64,224,64,88,100,68,72,72,72,7,9,9,8,1,0, + 214,84,124,84,214,16,56,40,56,8,11,11,8,0,255,8, + 89,203,73,73,73,62,8,62,8,8,6,10,10,8,1,0, + 248,132,132,132,248,128,128,128,128,252,7,10,10,8,1,0, + 68,170,40,40,16,16,16,16,16,16,7,7,7,8,1,0, + 130,68,56,68,68,68,56,7,10,10,8,1,0,130,124,40, + 40,40,40,40,40,124,130,7,8,8,8,1,0,124,146,144, + 96,12,18,146,124,8,9,9,8,0,0,28,34,34,18,116, + 148,148,101,2,7,10,10,8,1,0,168,248,170,174,170,170, + 170,170,12,248,7,6,6,8,1,1,56,68,68,238,0,254, + 7,10,10,8,1,0,168,248,168,168,168,168,168,168,170,6, + 7,7,7,8,1,0,30,6,138,82,32,80,136,6,10,10, + 8,1,0,128,240,144,144,156,20,28,16,16,96,6,6,6, + 8,1,2,84,168,0,0,84,168,6,9,9,8,1,0,132, + 132,72,72,252,72,72,132,132,7,13,13,8,1,0,16,56, + 146,186,198,130,68,68,68,130,130,130,254,7,11,11,8,1, + 0,16,56,198,130,68,68,68,130,130,130,254,7,9,9,8, + 1,0,170,254,130,130,68,68,130,130,254,7,10,10,8,1, + 0,16,40,68,68,68,68,40,238,130,254,6,11,11,8,1, + 0,4,60,68,132,132,116,36,68,132,132,252,6,8,8,8, + 1,0,48,72,72,48,72,72,132,252,7,13,13,8,1,0, + 16,56,146,186,254,254,124,124,124,254,254,254,254,7,11,11, + 8,1,0,16,56,254,238,124,124,124,254,254,254,254,7,8, + 8,8,1,0,170,254,254,124,124,254,254,254,7,10,10,8, + 1,0,16,56,108,68,108,124,56,254,254,254,6,11,11,8, + 1,0,4,60,108,252,252,124,60,124,252,252,252,6,8,8, + 8,1,0,48,120,120,48,120,120,252,252,7,10,10,8,1, + 0,16,16,56,124,254,254,254,124,16,56,7,9,9,8,1, + 0,108,146,130,130,130,68,40,16,16,5,10,10,8,2,0, + 32,32,80,80,136,136,80,80,32,32,7,10,10,8,1,0, + 56,56,56,16,254,254,214,16,16,56,7,10,10,8,1,0, + 16,16,40,68,130,130,130,124,16,56,7,9,9,8,1,0, + 108,254,254,254,254,124,56,16,16,5,10,10,8,2,0,32, + 32,112,112,248,248,112,112,32,32,7,10,10,8,1,0,56, + 40,56,16,238,186,214,16,16,56,8,11,11,8,0,0,8, + 81,146,146,146,73,73,73,82,129,126,4,10,10,8,1,0, + 16,16,16,16,16,16,16,112,240,224,6,10,10,8,1,0, + 16,24,20,20,16,16,16,112,240,224,8,11,11,8,0,0, + 28,23,17,17,17,17,113,241,231,15,14,8,11,11,8,0, + 0,28,23,17,29,23,17,113,241,231,15,14,6,12,12,8, + 1,0,128,128,128,128,128,184,204,140,136,144,160,192,6,11, + 11,8,1,0,128,128,156,252,228,132,156,252,228,4,4,6, + 13,13,8,1,255,8,72,76,124,248,200,72,76,124,248,200, + 72,64,7,10,10,8,1,0,40,16,16,146,124,146,16,16, + 16,40,7,10,10,8,1,0,56,40,16,214,186,214,16,16, + 40,16,16,16,32,16,0,254,3,184,4,165,8,179,5,9, + 18,5,40,9,68,31,238,0,40,15,48,73,36,201,13,101, + 22,19,37,120,60,192,0,64,15,16,32,16,0,254,3,128, + 4,64,4,64,8,32,0,40,57,24,27,56,41,0,33,8, + 67,132,64,4,128,34,128,66,126,252,0,64,0,32,15,16, + 32,16,0,254,3,128,4,64,4,64,8,32,0,40,59,24, + 24,184,41,0,34,8,67,132,64,4,128,34,128,66,126,252, + 0,64,0,32,15,16,32,16,0,254,3,128,4,64,4,64, + 8,32,0,40,57,24,24,184,43,0,32,136,67,4,64,4, + 128,34,128,66,126,252,0,64,0,32,15,16,32,16,0,254, + 3,128,4,64,4,64,8,32,0,40,58,152,26,184,43,128, + 32,136,64,132,64,4,128,34,128,66,126,252,0,64,0,32, + 15,16,32,16,0,254,3,128,4,64,4,64,8,32,0,40, + 59,152,26,56,43,0,32,136,67,4,64,4,128,34,128,66, + 126,252,0,64,0,32,15,16,32,16,0,254,3,128,4,64, + 4,64,8,32,0,40,57,152,26,56,43,128,34,72,65,132, + 64,4,128,34,128,66,126,252,0,64,0,32,15,16,32,16, + 0,254,3,128,4,64,4,64,8,32,0,40,59,152,24,184, + 41,0,33,8,65,4,64,4,128,34,128,66,126,252,0,64, + 0,32,15,16,32,16,0,254,3,128,4,64,4,64,8,32, + 0,40,56,24,24,56,40,0,32,8,64,4,64,4,128,34, + 128,66,126,252,0,64,0,32,16,16,32,16,0,254,3,184, + 7,189,15,191,7,15,18,7,56,15,124,31,254,0,56,15, + 48,79,36,207,13,231,31,243,61,248,60,192,0,64,15,16, + 32,16,0,254,7,192,15,224,60,120,123,188,119,172,127,204, + 199,142,231,254,215,238,223,238,111,108,118,220,124,60,62,248, + 15,96,7,192,15,16,32,16,0,254,7,192,24,48,32,8, + 67,132,68,84,64,52,184,114,152,2,168,18,160,18,80,148, + 73,36,67,196,33,8,24,176,7,192,13,12,24,16,0,255, + 7,0,24,192,32,32,64,16,77,144,146,72,146,72,77,144, + 64,16,32,32,24,192,7,0,12,11,22,16,2,0,24,0, + 24,0,16,0,30,0,16,0,95,128,128,128,128,64,129,64, + 66,48,60,0}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=16 h=16 x= 4 y= 4 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =11 descent= 0 + X Font ascent =11 descent=-1 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_77[1587] U8G_SECTION(".progmem.u8g_font_unifont_77") = { + 0,16,16,0,254,11,3,99,5,215,32,99,0,14,254,11, + 255,9,9,18,16,3,1,255,128,128,128,128,128,128,128,136, + 128,128,128,128,128,128,128,255,128,9,9,18,16,3,1,255, + 128,128,128,128,128,160,128,128,128,130,128,128,128,128,128,255, + 128,9,9,18,16,3,1,255,128,128,128,160,128,128,128,136, + 128,128,128,130,128,128,128,255,128,9,9,18,16,3,1,255, + 128,128,128,162,128,128,128,128,128,128,128,162,128,128,128,255, + 128,9,9,18,16,3,1,255,128,128,128,162,128,128,128,136, + 128,128,128,162,128,128,128,255,128,9,9,18,16,3,1,255, + 128,128,128,162,128,128,128,162,128,128,128,162,128,128,128,255, + 128,13,12,24,16,0,255,7,0,24,192,32,32,64,16,64, + 16,128,200,128,200,64,16,64,16,32,32,24,192,7,0,13, + 12,24,16,0,255,7,0,24,192,32,32,64,16,64,16,152, + 200,152,200,64,16,64,16,32,32,24,192,7,0,13,12,24, + 16,0,255,7,0,31,192,63,224,127,240,127,240,255,56,255, + 56,127,240,127,240,63,224,15,128,7,0,13,12,24,16,0, + 255,7,0,31,192,63,224,127,240,127,240,231,56,231,56,127, + 240,127,240,63,224,15,128,7,0,13,2,4,16,1,4,255, + 248,255,248,13,2,4,16,1,4,248,248,248,248,13,6,12, + 16,1,2,255,248,255,248,0,0,0,0,255,248,255,248,13, + 6,12,16,1,2,248,248,248,248,0,0,0,0,255,248,255, + 248,13,6,12,16,1,2,255,248,255,248,0,0,0,0,248, + 248,248,248,13,6,12,16,1,2,248,248,248,248,0,0,0, + 0,248,248,248,248,6,11,11,8,1,0,224,156,132,132,228, + 156,128,128,128,128,128,6,11,11,8,1,0,224,252,252,252, + 252,156,128,128,128,128,128,16,14,28,16,0,255,7,50,95, + 124,62,126,124,31,248,39,116,67,34,129,1,0,2,128,4, + 64,8,32,16,16,32,8,64,4,14,12,24,16,1,0,3, + 128,4,64,4,64,3,128,1,0,7,192,1,0,65,8,225, + 28,65,8,33,16,31,224,13,13,26,16,1,0,128,8,64, + 16,32,32,16,64,8,128,5,0,2,0,5,0,8,128,80, + 80,32,32,80,80,128,8,9,14,28,16,3,255,8,0,8, + 0,127,128,137,128,136,0,126,0,9,0,9,0,62,0,72, + 0,60,0,10,0,28,0,8,0,15,11,22,16,0,0,1, + 0,17,16,127,252,57,56,84,84,84,84,146,146,146,146,254, + 254,124,124,56,56,11,8,16,16,2,0,63,128,95,192,143, + 192,135,128,128,0,15,128,18,64,34,32,11,13,26,16,2, + 255,14,0,17,0,17,0,17,0,14,0,4,0,228,224,245, + 224,117,192,53,128,14,0,4,0,4,0,13,13,26,16,1, + 255,2,0,66,16,47,160,16,64,32,32,32,32,226,56,32, + 32,32,32,16,64,47,160,66,16,2,0,15,13,26,16,0, + 0,1,0,2,128,57,56,127,252,253,126,5,64,3,128,1, + 0,1,0,1,0,1,0,1,0,1,0,13,15,30,16,1, + 254,2,0,117,112,141,136,141,136,138,136,77,144,40,160,26, + 192,40,160,77,144,138,136,141,136,141,136,117,112,2,0,15, + 16,32,16,0,254,1,0,2,128,58,184,68,68,132,66,242, + 158,138,162,6,192,6,192,8,32,6,192,6,192,10,160,50, + 152,70,196,121,60,15,15,30,16,0,255,1,0,2,128,4, + 64,4,64,8,0,107,252,136,2,136,34,96,36,24,16,6, + 80,0,136,33,8,38,72,24,48,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,13,14,28,16,1,255,2,0,5,0,5,0,8,128,8, + 128,18,64,18,64,34,32,34,32,66,16,64,16,130,8,128, + 8,255,248,6,11,11,8,1,255,4,8,16,32,64,252,8, + 16,32,64,128,11,9,18,16,2,0,59,128,68,64,138,32, + 138,32,68,64,59,128,17,0,59,128,17,0,11,11,22,16, + 2,0,7,0,3,0,5,0,56,224,68,96,142,160,149,0, + 104,128,48,128,17,0,14,0,10,14,28,16,3,255,1,192, + 0,192,1,64,14,0,17,0,56,128,84,128,139,0,134,0, + 68,0,56,0,16,0,56,0,16,0,8,12,12,16,4,254, + 7,3,5,56,68,130,130,68,56,16,56,16,11,10,20,16, + 2,0,0,224,0,96,2,160,1,0,58,128,68,0,130,0, + 130,0,68,0,56,0,15,13,26,16,0,254,224,14,192,6, + 168,10,16,16,43,160,4,64,8,32,8,32,4,64,3,128, + 1,0,3,128,1,0,7,12,12,8,0,0,16,56,84,16, + 56,16,56,68,130,130,68,56,14,7,14,16,0,255,56,0, + 68,16,130,136,131,252,130,136,68,16,56,0,7,7,7,8, + 0,255,56,68,130,130,130,68,56,7,7,7,8,0,255,56, + 124,254,254,254,124,56,5,5,5,8,2,0,112,136,136,136, + 112,11,6,12,16,2,0,59,128,68,64,138,32,138,32,68, + 64,59,128,11,7,14,16,3,255,4,0,117,192,142,32,142, + 32,142,32,117,192,4,0,13,5,10,16,1,0,112,112,136, + 136,143,136,136,136,112,112,14,10,20,16,2,0,24,0,39, + 128,64,124,128,0,128,0,128,0,128,0,64,124,39,128,24, + 0,11,13,26,16,2,0,31,0,10,0,63,128,64,64,128, + 32,128,32,64,64,64,64,64,64,32,128,32,128,32,128,31, + 0,7,9,9,8,0,254,56,68,130,130,68,56,16,16,16, + 6,9,9,8,0,254,112,136,4,4,8,48,32,248,32,7, + 10,10,8,0,254,16,40,68,130,68,40,16,16,124,16,7, + 10,10,8,0,254,146,84,56,254,56,84,146,16,124,16,13, + 11,22,16,1,0,2,0,2,0,2,0,2,0,114,112,8, + 128,5,0,242,120,8,128,5,0,2,0,6,11,11,8,1, + 0,36,40,48,40,36,32,112,136,136,136,112,6,10,10,8, + 1,254,56,112,224,224,224,112,56,16,124,16,8,7,7,8, + 0,3,66,36,24,255,24,36,66,7,8,8,8,0,0,68, + 68,68,40,40,40,16,254,7,8,8,8,0,0,254,16,40, + 40,40,68,68,68,7,8,8,8,1,0,252,132,132,132,148, + 252,16,30,6,14,14,8,1,255,168,84,168,84,168,84,168, + 84,168,84,168,84,168,84,6,14,14,8,1,255,168,84,168, + 84,168,84,168,84,168,84,168,84,168,84,6,14,14,8,1, + 255,168,84,168,84,168,84,168,84,168,84,168,84,168,84,12, + 9,18,16,2,0,31,128,96,96,134,16,134,16,224,112,191, + 208,169,80,105,96,31,128,12,12,24,16,2,0,31,128,96, + 96,134,16,134,16,224,112,191,208,169,80,233,112,191,208,169, + 80,105,96,31,128,14,11,22,16,1,255,31,224,112,56,207, + 204,188,244,188,244,143,196,160,20,171,84,203,76,112,56,31, + 224,14,14,28,16,1,255,31,224,112,56,207,204,188,244,188, + 244,143,196,160,20,171,84,139,68,160,20,171,84,203,76,112, + 56,31,224}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 15, '1' Height: 13 + Calculated Max Values w=16 h=15 x= 7 y= 4 dx=16 dy= 0 ascent=14 len=30 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =15 descent=-2 + X Font ascent =15 descent=-2 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_78_79[6975] U8G_SECTION(".progmem.u8g_font_unifont_78_79") = { + 0,16,16,0,254,15,7,255,11,108,1,255,254,14,254,15, + 254,15,11,22,16,0,2,56,0,124,0,108,0,124,0,60, + 0,14,0,127,252,255,254,217,192,248,224,112,0,14,11,22, + 16,0,1,112,8,248,60,216,120,254,240,127,224,7,192,127, + 224,254,240,216,120,248,60,112,8,15,11,22,16,0,255,112, + 0,248,224,217,192,255,254,127,252,14,0,60,0,124,0,108, + 0,124,0,56,0,15,11,22,16,0,1,112,12,136,50,174, + 68,129,136,121,16,6,32,120,80,129,136,174,68,136,50,112, + 12,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,15,15,30,16,0,255,7,192,24,48,32, + 8,65,196,71,228,143,242,143,114,158,98,156,2,159,2,79, + 4,70,4,32,8,24,48,7,192,15,15,30,16,0,255,7, + 192,25,48,35,136,67,132,65,4,131,130,135,194,135,194,135, + 194,139,162,92,116,88,52,32,8,24,48,7,192,15,14,28, + 16,0,255,8,0,15,0,6,0,7,192,195,128,227,192,127, + 254,127,254,227,192,195,128,7,192,6,0,15,0,8,0,14, + 7,14,16,1,3,255,252,192,12,176,52,140,196,179,52,192, + 12,255,252,6,14,14,8,1,255,168,84,168,84,168,84,168, + 84,168,84,168,84,168,84,6,14,14,8,1,255,168,84,168, + 84,168,84,168,84,168,84,168,84,168,84,15,15,30,16,0, + 255,24,48,36,72,34,136,18,144,17,16,9,32,8,32,124, + 252,146,130,146,114,146,34,146,66,124,4,32,8,31,240,15, + 13,26,16,1,0,0,16,0,56,0,112,7,238,25,234,35, + 154,71,10,142,10,223,202,36,10,95,250,224,10,192,14,12, + 12,24,16,1,0,48,0,76,0,170,0,149,0,226,128,81, + 64,40,160,20,80,10,80,5,144,2,48,1,240,15,7,14, + 16,0,3,63,240,80,40,143,244,168,22,143,244,80,40,63, + 240,12,12,24,16,1,0,1,240,2,48,5,144,10,80,20, + 80,40,160,81,64,226,128,149,0,170,0,76,0,48,0,15, + 7,14,16,0,3,0,240,121,8,134,108,128,254,134,108,121, + 8,0,240,15,7,14,16,0,3,0,224,121,240,255,56,255, + 14,255,56,121,240,0,224,13,10,20,16,1,255,0,8,0, + 16,0,32,128,64,128,128,65,0,66,0,36,0,40,0,16, + 0,15,11,22,16,0,255,0,4,0,14,64,28,224,56,224, + 112,112,224,113,192,59,128,63,0,30,0,12,0,11,11,22, + 16,2,1,64,64,224,224,113,192,59,128,31,0,14,0,31, + 0,59,128,113,192,224,224,64,64,15,15,30,16,0,255,16, + 16,56,56,124,124,254,254,127,252,63,248,31,240,15,224,31, + 240,63,248,127,252,254,254,124,124,56,56,16,16,12,13,26, + 16,1,0,192,48,96,192,99,128,54,0,28,0,28,0,54, + 0,51,0,97,128,96,192,192,96,192,48,64,0,12,14,28, + 16,1,255,192,48,224,224,99,192,119,0,62,0,28,0,62, + 0,55,0,115,128,97,192,224,224,192,112,192,32,64,0,15, + 15,30,16,0,255,7,192,4,64,5,64,5,64,5,64,253, + 126,129,2,191,250,129,2,253,126,5,64,5,64,5,64,4, + 64,7,192,15,15,30,16,0,255,7,192,7,192,7,192,7, + 192,7,192,255,254,255,254,255,254,255,254,255,254,7,192,7, + 192,7,192,7,192,7,192,15,15,30,16,0,255,3,128,3, + 128,3,128,3,128,3,128,3,128,252,126,252,126,252,126,3, + 128,3,128,3,128,3,128,3,128,3,128,15,15,30,16,0, + 255,7,192,7,192,7,192,7,192,7,192,248,62,248,62,248, + 62,248,62,248,62,7,192,7,192,7,192,7,192,7,192,9, + 11,22,16,3,1,28,0,28,0,28,0,255,128,255,128,255, + 128,28,0,28,0,28,0,28,0,28,0,13,15,30,16,1, + 255,15,0,9,128,9,128,9,128,249,240,128,24,128,24,249, + 248,121,248,9,128,9,128,9,128,9,128,15,128,7,128,13, + 14,28,16,1,255,31,192,16,64,247,120,135,8,191,232,191, + 232,191,232,135,8,247,120,23,64,23,64,23,64,16,64,31, + 192,15,15,30,16,0,255,31,240,7,192,3,128,131,130,131, + 130,195,134,255,254,255,254,255,254,195,134,131,130,131,130,3, + 128,7,192,31,240,15,15,30,16,0,255,1,0,2,128,4, + 64,4,64,255,254,80,20,80,20,32,8,80,20,80,20,255, + 254,4,64,4,64,2,128,1,0,15,15,30,16,0,255,3, + 128,7,192,7,192,3,128,3,128,97,12,249,62,255,254,249, + 62,97,12,3,128,3,128,7,192,7,192,3,128,15,15,30, + 16,0,255,3,128,7,192,7,192,7,192,3,128,113,28,249, + 62,255,254,249,62,113,28,3,128,7,192,7,192,7,192,3, + 128,15,15,30,16,0,255,7,192,15,224,15,224,7,192,99, + 140,243,158,255,254,255,254,255,254,243,158,99,140,7,192,15, + 224,15,224,7,192,16,15,30,16,0,255,1,0,3,128,7, + 192,7,192,1,0,49,12,113,14,255,255,113,14,49,12,1, + 0,7,192,7,192,3,128,1,0,15,15,30,16,0,255,1, + 0,3,128,3,128,7,192,7,192,31,240,127,252,255,254,127, + 252,31,240,7,192,7,192,3,128,3,128,1,0,15,15,30, + 16,0,255,1,0,2,128,2,128,4,64,4,64,24,48,96, + 12,128,2,96,12,24,48,4,64,4,64,2,128,2,128,1, + 0,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,15,12,24,16,0,1,1,0,2,128,2, + 128,252,126,64,4,56,56,8,32,16,16,17,16,38,200,40, + 40,48,24,15,15,30,16,0,255,7,192,31,240,62,248,126, + 252,124,124,192,6,240,30,248,62,240,30,241,30,103,204,111, + 236,63,248,31,240,7,192,15,12,24,16,0,1,1,0,3, + 128,3,128,255,254,124,124,56,56,8,32,28,112,31,240,62, + 248,56,56,48,24,15,12,24,16,0,1,1,0,2,128,2, + 128,252,126,67,132,39,200,23,208,19,144,16,16,39,200,40, + 40,48,24,15,12,24,16,0,1,1,0,2,128,28,112,225, + 14,79,228,35,136,23,208,20,80,17,16,34,136,44,104,48, + 24,15,12,24,16,0,1,1,0,2,128,29,112,227,142,95, + 244,47,232,23,208,22,208,21,80,34,136,44,104,48,24,15, + 13,26,16,0,0,1,0,3,128,5,192,249,254,93,140,39, + 184,19,240,15,208,29,144,25,208,50,232,44,120,48,24,16, + 13,26,16,0,0,1,0,2,128,2,192,255,254,68,71,56, + 62,8,60,22,208,17,24,39,200,47,44,60,28,24,12,15, + 13,26,16,0,0,3,128,3,128,3,128,67,132,243,158,63, + 252,15,240,63,252,243,158,67,132,3,128,3,128,3,128,15, + 13,26,16,0,0,3,128,3,128,3,128,67,132,243,158,60, + 124,8,48,60,124,243,158,67,132,3,128,3,128,3,128,15, + 15,30,16,0,255,1,0,1,0,33,8,17,16,13,96,15, + 224,7,192,255,254,7,192,15,224,13,96,17,16,33,8,1, + 0,1,0,15,15,30,16,0,255,1,0,1,0,33,8,27, + 176,31,240,15,224,31,224,255,254,31,240,15,224,31,240,27, + 176,33,8,1,0,1,0,15,15,30,16,0,255,1,0,2, + 128,60,248,44,200,38,152,50,184,125,76,131,134,77,124,58, + 152,50,200,38,104,62,120,2,128,1,0,13,13,26,16,1, + 0,2,0,2,0,2,0,135,8,119,112,63,224,31,192,63, + 224,119,112,135,8,2,0,2,0,2,0,15,15,30,16,0, + 255,8,32,8,32,12,96,6,192,230,206,59,184,31,240,7, + 192,31,240,59,184,230,206,6,192,12,96,8,32,8,32,15, + 15,30,16,0,255,8,32,12,96,14,224,15,224,255,254,127, + 252,63,248,31,240,63,248,127,252,255,254,15,224,14,224,12, + 96,8,32,15,15,30,16,0,255,1,0,25,48,15,224,79, + 228,127,252,63,248,63,248,255,254,63,248,63,248,127,252,79, + 228,15,224,25,48,1,0,15,15,30,16,0,255,9,32,73, + 36,37,72,21,80,203,166,55,216,15,224,255,254,15,224,55, + 216,203,166,21,80,37,72,73,36,9,32,15,15,30,16,0, + 255,1,0,3,128,3,128,3,128,225,14,113,28,13,96,3, + 128,13,96,113,28,225,14,3,128,3,128,3,128,1,0,15, + 15,30,16,0,255,3,128,7,192,7,192,99,140,241,30,243, + 158,60,120,8,32,60,120,243,158,241,30,99,140,7,192,7, + 192,3,128,15,15,30,16,0,255,3,128,7,192,7,192,99, + 140,243,158,241,30,61,120,7,192,61,120,241,30,243,158,99, + 140,7,192,7,192,3,128,15,15,30,16,0,255,3,128,4, + 64,4,64,116,92,252,126,254,254,127,252,33,8,67,132,135, + 194,143,226,119,220,7,192,7,192,3,128,15,14,28,16,0, + 0,3,128,7,192,15,224,119,220,255,254,252,126,240,30,112, + 28,24,48,62,248,127,252,126,252,126,252,60,120,15,14,28, + 16,0,0,3,128,4,64,9,32,121,60,133,66,179,154,143, + 226,111,236,23,208,39,200,73,36,82,148,66,132,60,120,15, + 15,30,16,0,255,3,128,60,120,69,68,81,20,77,100,111, + 236,134,194,188,122,134,194,111,236,77,100,81,20,69,68,60, + 120,3,128,15,15,30,16,0,255,7,192,30,240,62,248,92, + 116,103,204,252,126,232,46,136,34,232,46,252,126,103,204,92, + 116,62,248,30,240,7,192,15,15,30,16,0,255,3,128,4, + 192,4,192,116,220,188,230,159,158,79,60,63,248,114,100,230, + 114,206,122,118,92,6,64,6,64,3,128,15,13,26,16,0, + 0,1,0,5,64,3,128,201,38,49,24,77,100,3,128,77, + 100,49,24,201,38,3,128,5,64,1,0,15,13,26,16,0, + 0,1,0,5,64,11,160,201,38,49,24,77,100,131,130,77, + 100,49,24,201,38,11,160,5,64,1,0,15,15,30,16,0, + 255,9,32,13,96,7,192,19,144,201,38,49,24,237,110,3, + 128,237,110,49,24,201,38,17,16,7,192,13,96,9,32,14, + 14,28,16,1,255,7,128,71,136,39,144,19,32,11,64,224, + 28,251,124,251,124,224,28,11,64,19,32,39,144,71,136,7, + 128,15,15,30,16,0,255,7,192,71,196,39,200,19,144,11, + 160,224,14,251,190,251,190,251,190,224,14,11,160,19,144,39, + 200,71,196,7,192,15,15,30,16,0,255,3,128,7,192,7, + 192,119,220,251,190,249,62,125,124,7,192,125,124,249,62,251, + 190,119,220,7,192,7,192,3,128,15,15,30,16,0,255,1, + 0,3,128,51,152,49,24,9,32,5,64,99,140,255,254,99, + 140,5,64,9,32,49,24,51,152,3,128,1,0,15,15,30, + 16,0,255,1,0,3,128,51,152,59,184,25,48,7,192,119, + 220,255,254,119,220,7,192,25,48,59,184,51,152,3,128,1, + 0,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,13,13,26,16,2,255,15,0,48,192,64, + 32,64,48,128,16,128,24,128,24,128,24,64,56,64,48,48, + 240,15,224,7,128,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,12,12,24,16,3,1,255, + 192,128,64,128,112,128,112,128,112,128,112,128,112,128,112,128, + 112,255,240,63,240,63,240,12,12,24,16,3,1,63,240,63, + 240,255,240,128,112,128,112,128,112,128,112,128,112,128,112,128, + 112,128,64,255,192,12,12,24,16,3,1,255,192,128,96,128, + 112,128,112,128,112,128,112,128,112,128,112,128,112,255,240,127, + 240,63,240,12,12,24,16,3,1,63,240,127,240,255,240,128, + 112,128,112,128,112,128,112,128,112,128,112,128,112,128,96,255, + 192,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,13,13,26, + 16,1,0,2,0,7,0,15,128,7,0,34,32,112,112,248, + 248,112,112,34,32,7,0,15,128,7,0,2,0,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,2,15,15,16,7,255,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,4,15,15,16,6,255,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,8,15,15,16,4, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 7,10,10,16,4,4,28,112,192,248,252,254,254,254,124,56, + 7,10,10,16,4,4,56,124,254,254,254,126,62,6,28,112, + 15,10,20,16,0,4,28,28,112,112,192,192,248,248,252,252, + 254,254,254,254,254,254,124,124,56,56,15,10,20,16,0,4, + 56,56,124,124,254,254,254,254,254,254,126,126,62,62,6,6, + 28,28,112,112,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,14,14,28,16, + 1,255,0,32,0,32,31,252,127,240,252,32,252,32,126,32, + 31,224,0,32,96,96,240,64,240,192,99,128,62,0,9,15, + 30,16,3,255,28,0,127,0,255,128,255,128,255,128,127,0, + 28,0,8,0,8,0,0,0,28,0,62,0,62,0,62,0, + 28,0,9,13,26,16,3,0,119,0,255,128,255,128,255,128, + 127,0,28,0,8,0,0,0,28,0,62,0,62,0,62,0, + 28,0,15,13,26,16,0,255,60,120,126,252,255,254,255,254, + 255,254,127,252,127,252,63,248,31,240,15,224,7,192,3,128, + 1,0,13,15,30,16,1,255,56,0,126,0,255,0,255,128, + 255,192,255,224,127,240,63,248,127,240,255,224,255,192,255,128, + 255,0,126,0,56,0,15,14,28,16,0,255,3,0,12,134, + 56,142,103,248,1,0,57,56,126,252,255,254,255,254,127,252, + 63,248,31,226,7,238,0,248,14,15,30,16,1,254,97,152, + 99,200,55,236,23,228,23,252,19,252,115,252,157,248,147,248, + 83,248,103,240,39,240,55,224,19,192,1,128,4,12,12,8, + 3,255,16,32,96,192,192,192,192,192,192,96,32,16,4,12, + 12,8,2,255,128,64,96,48,48,48,48,48,48,96,64,128, + 5,12,12,8,2,255,24,48,112,224,224,224,224,224,224,112, + 48,24,5,12,12,8,2,255,192,96,112,56,56,56,56,56, + 56,112,96,192,5,12,12,8,2,255,24,48,48,96,96,192, + 192,96,96,48,48,24,5,12,12,8,2,255,192,96,96,48, + 48,24,24,48,48,96,96,192,6,12,12,8,2,255,28,56, + 56,112,112,224,224,112,112,56,56,28,6,12,12,8,1,255, + 224,112,112,56,56,28,28,56,56,112,112,224,7,12,12,8, + 1,255,30,60,60,120,120,240,240,120,120,60,60,30,7,12, + 12,8,0,255,240,120,120,60,60,30,30,60,60,120,120,240, + 3,12,12,8,3,255,32,64,128,128,128,128,128,128,128,128, + 64,32,3,12,12,8,2,255,128,64,32,32,32,32,32,32, + 32,32,64,128,6,12,12,8,1,255,60,112,96,96,48,48, + 224,48,48,96,112,60,6,12,12,8,1,255,240,56,24,24, + 48,48,28,48,48,24,56,240,15,15,30,16,0,255,7,192, + 31,240,63,248,126,252,124,252,250,254,254,254,254,254,254,254, + 254,254,126,252,120,60,63,248,31,240,7,192,15,15,30,16, + 0,255,7,192,31,240,63,248,120,60,119,220,255,222,255,222, + 255,62,252,254,251,254,119,220,112,28,63,248,31,240,7,192, + 15,15,30,16,0,255,7,192,31,240,63,248,120,60,119,220, + 255,222,255,222,255,62,255,222,255,222,119,220,120,60,63,248, + 31,240,7,192,15,15,30,16,0,255,7,192,31,240,63,248, + 127,188,127,60,254,190,253,190,251,190,247,190,224,14,127,188, + 126,12,63,248,31,240,7,192,15,15,30,16,0,255,7,192, + 31,240,63,248,112,28,119,252,247,254,240,62,255,222,255,222, + 255,222,119,220,120,60,63,248,31,240,7,192,15,15,30,16, + 0,255,7,192,31,240,63,248,120,60,119,220,247,254,247,254, + 240,62,247,222,247,222,119,220,120,60,63,248,31,240,7,192, + 15,15,30,16,0,255,7,192,31,240,63,248,112,28,119,220, + 255,190,255,190,255,126,254,254,254,254,125,252,125,252,63,248, + 31,240,7,192,15,15,30,16,0,255,7,192,31,240,63,248, + 120,60,119,220,247,222,247,222,248,62,247,222,247,222,119,220, + 120,60,63,248,31,240,7,192,15,15,30,16,0,255,7,192, + 31,240,63,248,120,60,119,220,247,222,247,222,248,30,255,222, + 255,222,119,220,120,60,63,248,31,240,7,192,15,15,30,16, + 0,255,7,192,31,240,63,248,119,28,102,236,246,238,246,238, + 246,238,246,238,246,238,118,236,99,28,63,248,31,240,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,64,132,65,132, + 131,130,129,130,129,130,129,130,129,130,65,132,65,132,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 71,196,79,228,140,98,128,98,129,194,135,2,140,2,79,228, + 79,228,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,71,196,79,228,140,98,128,98,129,194,128,98, + 140,98,79,228,71,196,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,64,228,65,228,131,98,134,98, + 140,98,159,242,159,242,64,100,64,100,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,79,228,79,228, + 140,2,143,194,143,226,128,98,140,98,79,228,71,196,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 71,196,79,228,140,2,143,194,143,226,140,98,140,98,79,228, + 71,196,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,79,228,79,228,128,98,128,98,128,194,131,130, + 134,2,70,4,70,4,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,71,196,79,228,140,98,140,98, + 135,194,140,98,140,98,79,228,71,196,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,71,196,79,228, + 140,98,140,98,143,226,135,226,128,98,79,228,71,196,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 68,228,77,244,157,178,141,178,141,178,141,178,141,178,77,244, + 76,228,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 31,240,63,248,127,124,126,124,252,126,254,126,254,126,254,126, + 254,126,126,124,126,124,63,248,31,240,7,192,15,15,30,16, + 0,255,7,192,31,240,63,248,120,60,112,28,243,158,255,158, + 254,62,248,254,243,254,112,28,112,28,63,248,31,240,7,192, + 15,15,30,16,0,255,7,192,31,240,63,248,120,60,112,28, + 243,158,255,158,254,62,255,158,243,158,112,28,120,60,63,248, + 31,240,7,192,15,15,30,16,0,255,7,192,31,240,63,248, + 127,28,126,28,252,158,249,158,243,158,224,14,224,14,127,156, + 127,156,63,248,31,240,7,192,15,15,30,16,0,255,7,192, + 31,240,63,248,112,28,112,28,243,254,240,62,240,30,255,158, + 243,158,112,28,120,60,63,248,31,240,7,192,15,15,30,16, + 0,255,7,192,31,240,63,248,120,60,112,28,243,254,240,62, + 240,30,243,158,243,158,112,28,120,60,63,248,31,240,7,192, + 15,15,30,16,0,255,7,192,31,240,63,248,112,28,112,28, + 255,158,255,158,255,62,252,126,249,254,121,252,121,252,63,248, + 31,240,7,192,15,15,30,16,0,255,7,192,31,240,63,248, + 120,60,112,28,243,158,243,158,248,62,243,158,243,158,112,28, + 120,60,63,248,31,240,7,192,15,15,30,16,0,255,7,192, + 31,240,63,248,120,60,112,28,243,158,243,158,240,30,248,30, + 255,158,112,28,120,60,63,248,31,240,7,192,15,15,30,16, + 0,255,7,192,31,240,63,248,123,28,114,12,226,78,242,78, + 242,78,242,78,242,78,114,12,115,28,63,248,31,240,7,192, + 15,13,26,16,0,0,31,128,15,192,7,224,3,240,255,248, + 255,252,255,254,255,252,255,248,3,240,7,224,15,192,31,128, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,11,11,22,16, + 2,1,32,0,112,0,248,0,120,0,60,128,12,128,3,128, + 3,192,15,192,1,192,0,32,15,9,18,16,0,2,1,0, + 1,128,224,192,252,240,255,254,252,240,224,192,1,128,1,0, + 11,11,22,16,2,0,0,32,1,192,15,192,3,192,3,128, + 12,128,60,128,120,0,248,0,112,0,32,0,15,9,18,16, + 0,2,2,0,1,0,1,192,0,240,255,254,0,240,1,192, + 1,0,2,0,15,13,26,16,0,0,0,192,1,224,1,240, + 0,248,127,252,255,254,255,254,255,254,127,252,0,248,1,240, + 1,224,0,192,15,11,22,16,0,1,0,16,0,16,0,24, + 0,24,255,252,255,254,255,252,0,24,0,24,0,16,0,16, + 15,13,26,16,0,0,0,16,0,16,0,24,0,24,255,252, + 255,252,255,254,255,252,255,252,0,24,0,24,0,16,0,16, + 15,9,18,16,0,2,0,32,0,48,0,56,170,252,170,254, + 170,252,0,56,0,48,0,32,15,9,18,16,0,2,0,32, + 0,48,170,248,170,252,170,254,170,252,170,248,0,48,0,32, + 15,9,18,16,0,2,0,32,0,48,0,56,255,252,255,254, + 255,252,0,56,0,48,0,32,14,15,30,16,1,255,128,0, + 224,0,88,0,70,0,33,128,32,96,16,24,15,252,31,248, + 63,224,63,128,126,0,120,0,224,0,128,0,14,15,30,16, + 1,255,128,0,224,0,120,0,126,0,63,128,63,224,31,248, + 15,252,16,24,32,96,33,128,70,0,88,0,224,0,128,0, + 14,15,30,16,1,255,128,0,224,0,120,0,126,0,63,128, + 63,224,31,248,15,252,31,248,63,224,63,128,126,0,120,0, + 224,0,128,0,15,8,16,16,0,3,128,0,128,16,192,24, + 127,252,127,254,63,252,0,24,0,16,15,8,16,16,0,2, + 0,16,0,24,63,252,127,254,127,252,192,24,128,16,128,0, + 7,13,13,16,5,0,16,16,24,248,252,252,254,252,252,248, + 24,16,16,15,9,18,16,0,2,0,64,0,64,255,224,255, + 240,255,254,255,240,255,224,0,64,0,64,14,9,18,16,1, + 2,0,192,0,224,255,176,128,24,128,12,128,24,255,176,0, + 224,0,192,14,9,18,16,1,2,0,192,0,224,255,208,192, + 8,192,4,192,8,255,208,0,224,0,192,15,13,26,16,0, + 255,0,8,0,24,0,36,0,68,63,130,64,2,128,6,255, + 30,254,124,5,240,15,192,15,0,12,0,15,13,26,16,0, + 0,12,0,15,0,15,192,5,240,254,124,255,30,128,6,64, + 2,63,130,0,68,0,36,0,24,0,8,15,12,24,16,0, + 0,0,128,0,192,255,160,128,16,128,8,128,4,128,14,128, + 28,255,184,127,240,0,224,0,64,15,12,24,16,0,1,0, + 64,0,224,127,240,255,184,128,28,128,14,128,4,128,8,128, + 16,255,160,0,192,0,128,16,12,24,16,0,0,0,64,0, + 96,0,80,255,200,64,4,64,2,64,7,255,206,127,220,0, + 120,0,112,0,32,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,16,12,24,16,0,1,0, + 32,0,112,0,120,127,220,255,206,64,7,64,2,64,4,255, + 200,0,80,0,96,0,64,14,15,30,16,1,255,15,128,63, + 224,126,240,254,120,254,56,0,28,0,12,0,4,0,12,0, + 28,254,56,254,120,126,240,63,224,15,128,15,7,14,16,0, + 3,254,0,73,8,36,140,31,254,36,140,73,8,254,0,11, + 11,22,16,2,1,16,0,24,0,28,0,252,0,124,0,60, + 32,2,32,1,96,0,224,1,224,7,224,14,5,10,16,1, + 4,248,16,124,24,63,252,124,24,248,16,11,11,22,16,2, + 0,7,224,1,224,0,224,1,96,2,32,60,32,124,0,252, + 0,28,0,24,0,16,0,11,11,22,16,2,1,8,0,12, + 0,14,0,14,0,254,32,126,32,63,96,3,224,1,224,3, + 224,15,224,15,9,18,16,0,2,0,32,252,16,126,24,63, + 252,31,254,63,252,126,24,252,16,0,32,11,11,22,16,2, + 0,15,224,3,224,1,224,3,224,63,96,126,32,254,32,14, + 0,14,0,12,0,8,0,15,11,22,16,0,1,0,96,0, + 240,0,240,120,56,255,12,255,254,255,12,120,56,0,240,0, + 240,0,96,15,9,18,16,0,2,0,64,96,224,120,240,252, + 120,255,254,252,120,120,240,96,224,0,64,15,7,14,16,0, + 3,248,16,124,24,62,28,31,254,62,28,124,24,248,16,15, + 9,18,16,0,2,248,96,252,112,126,120,127,252,63,254,127, + 252,126,120,252,112,248,96,15,9,18,16,0,2,2,32,1, + 16,0,136,255,196,0,2,255,196,0,136,1,16,2,32,6, + 14,14,8,1,255,168,84,168,84,168,84,168,84,168,84,168, + 84,168,84,6,6,6,8,1,0,128,136,144,160,192,252,11, + 12,24,16,2,0,4,0,10,0,10,0,17,0,17,0,36, + 128,42,128,74,64,81,64,159,32,128,32,255,224,5,6,6, + 8,1,0,32,32,32,32,32,248,10,8,16,16,3,1,63, + 192,64,0,129,128,130,64,130,64,129,128,64,0,63,192,10, + 8,16,16,3,1,255,0,0,128,96,64,144,64,144,64,96, + 64,0,128,255,0,5,10,10,8,2,0,112,136,136,16,16, + 32,32,64,64,56,5,10,10,8,2,0,112,136,136,64,64, + 32,32,16,16,224,7,8,8,8,0,0,130,130,84,68,40, + 40,16,16,14,8,16,16,1,1,129,252,130,0,68,0,68, + 0,36,0,36,0,18,0,17,252,14,8,16,16,1,1,254, + 4,1,4,0,136,0,136,0,144,0,144,1,32,254,32,3, + 10,10,8,2,0,64,64,64,64,224,64,64,64,64,64,6, + 14,14,8,1,255,168,84,168,84,168,84,168,84,168,84,168, + 84,168,84,12,14,28,16,2,254,255,240,128,0,64,0,64, + 0,32,0,32,0,32,0,32,0,32,0,32,0,64,0,64, + 0,128,0,128,0,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,9,9,18,16,4,0,8,0,20,0,34,0,65,0,136, + 128,65,0,34,0,20,0,8,0,7,8,8,8,0,0,16, + 16,40,40,68,84,130,130,9,10,20,16,3,0,136,128,136, + 128,136,128,136,128,136,128,136,128,136,128,136,128,73,0,62, + 0,6,6,6,8,1,0,4,4,36,4,4,252,6,6,6, + 8,1,0,252,128,128,144,128,128,12,10,20,16,2,0,224, + 16,48,48,40,80,36,144,35,16,35,16,36,144,40,80,48, + 48,224,16,12,10,20,16,2,0,128,112,192,192,161,64,146, + 64,140,64,140,64,146,64,161,64,192,192,128,112,14,10,20, + 16,1,0,224,28,48,48,40,80,36,144,35,16,35,16,36, + 144,40,80,48,48,224,28,9,12,24,16,3,0,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,255,128,9,12,24,16,3,0,255,128,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,13,7,14,16,1,2,5,0,5,0,253,248,5, + 0,253,248,5,0,5,0,13,7,14,16,1,2,5,0,5, + 0,5,0,253,248,5,0,5,0,5,0,14,3,6,16,1, + 4,64,0,191,252,64,0,14,3,6,16,1,4,128,0,255, + 252,128,0,14,3,6,16,1,4,0,4,255,252,0,4,3, + 11,11,16,7,255,64,160,64,64,64,64,64,64,64,64,224, + 7,11,11,8,0,0,16,40,40,68,68,254,68,68,40,40, + 16,13,13,26,16,1,0,2,0,5,0,5,0,8,128,16, + 64,96,48,128,8,96,48,16,64,8,128,5,0,5,0,2, + 0,15,13,26,16,0,0,0,128,1,64,1,64,2,32,4, + 16,24,12,224,2,24,12,4,16,2,32,1,64,1,64,0, + 128,15,13,26,16,1,0,2,0,5,0,5,0,8,128,16, + 64,96,48,128,14,96,48,16,64,8,128,5,0,5,0,2, + 0,15,13,26,16,0,0,31,254,16,2,16,2,16,2,16, + 2,16,2,240,2,16,2,16,2,16,2,16,2,16,2,31, + 254,15,13,26,16,1,0,255,240,128,16,128,16,128,16,128, + 16,128,16,128,30,128,16,128,16,128,16,128,16,128,16,255, + 240,5,13,13,8,2,0,248,160,160,160,160,160,160,160,160, + 160,160,160,248,5,13,13,8,1,0,248,40,40,40,40,40, + 40,40,40,40,40,40,248,4,12,12,8,2,0,16,32,32, + 64,64,128,128,64,64,32,32,16,4,12,12,8,2,0,128, + 64,64,32,32,16,16,32,32,64,64,128,6,12,12,8,1, + 0,20,40,40,80,80,160,160,80,80,40,40,20,6,12,12, + 8,1,0,160,80,80,40,40,20,20,40,40,80,80,160,4, + 12,12,8,3,255,16,32,96,160,160,160,160,160,160,96,32, + 16,4,12,12,8,1,255,128,64,96,80,80,80,80,80,80, + 96,64,128,3,12,12,8,4,255,32,64,128,128,128,128,128, + 128,128,128,64,32,3,12,12,8,1,255,128,64,32,32,32, + 32,32,32,32,32,64,128,11,12,24,16,2,0,4,0,10, + 0,27,0,42,128,106,192,170,160,42,128,42,128,42,128,42, + 128,42,128,42,128,11,12,24,16,2,0,42,128,42,128,42, + 128,42,128,42,128,42,128,170,160,106,192,42,128,27,0,10, + 0,4,0,12,10,20,16,2,1,7,128,8,64,16,32,32, + 16,168,16,112,16,32,16,0,32,8,64,7,128,12,10,20, + 16,2,1,30,0,33,0,64,128,128,64,129,80,128,224,128, + 64,64,0,33,0,30,0,15,7,14,16,0,2,3,128,5, + 72,9,36,255,254,9,36,5,72,3,128,15,5,10,16,0, + 3,32,0,64,0,255,254,64,0,32,0,15,5,10,16,0, + 3,0,8,0,4,255,254,0,4,0,8,14,5,10,16,0, + 3,32,16,64,8,255,252,64,8,32,16,15,7,14,16,0, + 2,16,0,32,0,127,254,128,0,127,254,32,0,16,0,15, + 7,14,16,0,2,0,16,0,8,255,252,0,2,255,252,0, + 8,0,16,14,7,14,16,0,2,16,32,32,16,127,248,128, + 4,127,248,32,16,16,32,14,5,10,16,0,3,32,4,64, + 4,255,252,64,4,32,4,14,5,10,16,1,3,128,16,128, + 8,255,252,128,8,128,16,14,7,14,16,0,2,16,4,32, + 4,127,252,128,4,127,252,32,4,16,4,14,7,14,16,1, + 2,128,32,128,16,255,248,128,4,255,248,128,16,128,32,15, + 5,10,16,0,3,0,8,34,36,213,94,8,132,0,8}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 11, '1' Height: 6 + Calculated Max Values w=15 h=15 x= 3 y= 3 dx=16 dy= 0 ascent=13 len=30 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =11 descent= 3 + X Font ascent =11 descent= 0 + Max Font ascent =13 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_86[1876] U8G_SECTION(".progmem.u8g_font_unifont_86") = { + 0,16,16,0,254,11,3,37,5,106,32,116,3,13,254,11, + 0,11,11,22,16,2,0,7,224,4,32,2,32,4,32,8, + 160,17,96,34,0,68,0,136,0,80,0,32,0,11,11,22, + 16,2,0,252,0,132,0,136,0,132,0,162,0,209,0,8, + 128,4,64,2,32,1,64,0,128,11,11,22,16,2,0,32, + 0,80,0,136,0,68,0,34,0,17,96,8,160,4,32,2, + 32,4,32,7,224,11,11,22,16,2,0,0,128,1,64,2, + 32,4,64,8,128,209,0,162,0,132,0,136,0,132,0,252, + 0,14,7,14,16,1,0,16,32,48,48,95,232,128,4,95, + 232,48,48,16,32,13,7,14,16,1,0,16,0,48,0,127, + 248,255,248,127,248,48,0,16,0,7,11,11,8,0,0,16, + 56,124,254,56,56,56,56,56,56,56,7,11,11,8,0,0, + 56,56,56,56,56,56,56,254,124,56,16,11,11,22,16,2, + 0,7,224,7,224,3,224,7,224,15,224,31,96,62,0,124, + 0,248,0,112,0,32,0,11,11,22,16,2,0,252,0,252, + 0,248,0,252,0,254,0,223,0,15,128,7,192,3,224,1, + 192,0,128,11,11,22,16,2,0,32,0,112,0,248,0,124, + 0,62,0,31,96,15,224,7,224,3,224,7,224,7,224,11, + 11,22,16,2,0,0,128,1,192,3,224,7,192,15,128,223, + 0,254,0,252,0,248,0,252,0,252,0,14,7,14,16,1, + 0,16,32,48,48,127,248,255,252,127,248,48,48,16,32,7, + 12,12,8,0,255,16,56,124,254,56,56,56,56,254,124,56, + 16,14,6,12,16,1,0,255,240,0,16,0,16,0,84,0, + 56,0,16,14,6,12,16,1,0,0,16,0,56,0,84,0, + 16,0,16,255,240,14,6,12,16,1,0,63,252,32,0,32, + 0,168,0,112,0,32,0,14,6,12,16,1,0,32,0,112, + 0,168,0,32,0,32,0,63,252,10,10,20,16,3,255,255, + 192,255,192,255,192,255,192,255,192,128,64,128,64,128,64,128, + 64,255,192,10,10,20,16,3,255,255,192,128,64,128,64,128, + 64,128,64,255,192,255,192,255,192,255,192,255,192,10,10,20, + 16,3,255,255,192,255,192,191,192,159,192,143,192,135,192,131, + 192,129,192,128,192,255,192,10,10,20,16,3,255,255,192,192, + 64,224,64,240,64,248,64,252,64,254,64,255,64,255,192,255, + 192,10,10,20,16,3,255,12,0,26,0,57,0,120,128,248, + 64,248,64,120,128,57,0,26,0,12,0,10,10,20,16,3, + 255,12,0,22,0,39,0,71,128,135,192,135,192,71,128,39, + 0,22,0,12,0,10,10,20,16,3,255,12,0,30,0,63, + 0,127,128,255,192,128,64,64,128,33,0,18,0,12,0,10, + 10,20,16,3,255,12,0,18,0,33,0,64,128,128,64,255, + 192,127,128,63,0,30,0,12,0,11,11,22,16,2,0,170, + 160,0,0,128,32,0,0,128,32,0,0,128,32,0,0,128, + 32,0,0,170,160,14,14,28,16,1,255,255,252,255,252,255, + 252,255,252,255,252,255,252,255,252,255,252,255,252,255,252,255, + 252,255,252,255,252,255,252,14,14,28,16,1,255,255,252,128, + 4,128,4,128,4,128,4,128,4,128,4,128,4,128,4,128, + 4,128,4,128,4,128,4,255,252,4,4,4,8,2,2,240, + 240,240,240,4,4,4,8,2,2,240,144,144,240,12,11,22, + 16,2,0,6,0,15,0,31,128,63,192,127,224,255,240,127, + 224,127,224,63,192,63,192,31,128,12,11,22,16,2,0,6, + 0,9,0,16,128,32,64,64,32,128,16,64,32,64,32,32, + 64,32,64,31,128,11,11,22,16,2,255,4,0,27,0,96, + 192,128,32,128,32,128,32,128,32,128,32,96,192,27,0,4, + 0,11,11,22,16,2,255,4,0,31,0,127,192,255,224,255, + 224,255,224,255,224,255,224,127,192,31,0,4,0,14,10,20, + 16,1,0,15,192,31,224,63,240,127,248,255,252,255,252,127, + 248,63,240,31,224,15,192,14,13,26,16,1,254,31,224,63, + 240,127,248,255,252,255,252,255,252,255,252,255,252,255,252,255, + 252,127,248,63,240,31,224,7,7,7,8,0,0,16,56,124, + 254,124,56,16,7,7,7,8,0,0,16,40,68,130,68,40, + 16,7,11,11,8,0,0,16,56,56,124,124,254,124,124,56, + 56,16,7,11,11,8,0,0,16,40,40,68,68,130,68,68, + 40,40,16,5,5,5,8,1,3,32,112,248,112,32,5,7, + 7,8,1,0,32,112,112,248,112,112,32,5,7,7,8,1, + 0,32,80,80,136,80,80,32,15,6,12,16,0,0,15,224, + 127,252,255,254,255,254,127,252,15,224,15,6,12,16,0,0, + 15,224,112,28,128,2,128,2,112,28,15,224,6,13,13,8, + 1,0,48,120,120,120,252,252,252,252,252,120,120,120,48,6, + 13,13,8,1,0,48,72,72,72,132,132,132,132,132,72,72, + 72,48,14,5,10,16,1,3,33,192,66,32,255,252,66,32, + 33,192,14,15,30,16,1,254,32,0,64,0,255,252,64,0, + 32,0,32,0,64,0,255,252,64,0,32,0,32,0,64,0, + 255,252,64,0,32,0,14,5,10,16,1,3,33,192,66,160, + 255,252,66,160,33,192,14,5,10,16,1,3,34,32,69,80, + 245,92,72,128,32,0,14,5,10,16,1,3,40,64,80,64, + 255,252,80,64,40,64,14,5,10,16,1,3,40,160,80,160, + 255,252,80,160,40,160,14,5,10,16,1,3,40,4,80,4, + 255,252,80,4,40,4,14,5,10,16,1,3,40,4,80,8, + 253,176,80,8,40,4,14,5,10,16,1,3,32,0,64,0, + 213,84,64,0,32,0,14,5,10,16,1,3,32,132,64,136, + 255,240,64,136,32,132,14,5,10,16,1,3,33,68,65,72, + 255,240,65,72,33,68,14,5,10,16,1,3,40,4,80,8, + 255,240,80,8,40,4,14,5,10,16,1,3,40,132,80,136, + 255,240,80,136,40,132,14,5,10,16,1,3,41,68,81,72, + 255,240,81,72,41,68,14,5,10,16,1,3,40,144,80,96, + 255,252,80,96,40,144,14,5,10,16,1,3,32,240,65,8, + 254,4,64,0,32,0,14,7,14,16,1,3,3,240,0,0, + 35,240,64,0,255,252,64,0,32,0,14,7,14,16,1,3, + 0,112,8,136,39,0,64,0,255,252,64,0,32,0,14,10, + 20,16,1,254,32,0,64,0,255,252,64,0,32,112,8,136, + 7,0,0,112,8,136,7,0,14,9,18,16,1,1,224,0, + 24,0,6,16,1,8,31,252,1,8,6,16,24,0,224,0, + 14,11,22,16,1,0,252,0,2,0,1,0,0,144,0,136, + 255,252,0,136,0,144,1,0,2,0,252,0,15,11,22,16, + 0,1,4,0,8,0,31,254,32,0,127,254,128,0,127,254, + 32,0,31,254,8,0,4,0,15,11,22,16,0,1,0,64, + 0,32,255,240,0,8,255,252,0,2,255,252,0,8,255,240, + 0,32,0,64,14,7,14,16,1,3,3,128,68,64,56,16, + 0,8,255,252,0,8,0,16,14,10,20,16,1,254,0,16, + 0,8,255,252,0,8,3,144,68,64,56,0,3,128,68,64, + 56,0,14,7,14,16,1,3,7,0,8,136,32,112,64,0, + 255,252,64,0,32,0,14,10,20,16,1,254,32,0,64,0, + 255,252,64,0,39,0,8,136,0,112,7,0,8,136,0,112, + 14,7,14,16,1,1,32,0,64,0,255,252,64,0,32,112, + 8,136,7,0,14,7,14,16,1,1,0,16,0,8,255,252, + 0,8,3,144,68,64,56,0,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,13,13,26,16,1,0,2,0,2,0,5,0, + 5,0,248,248,64,16,32,32,16,64,8,128,16,64,34,32, + 77,144,112,112,11,10,20,16,2,1,4,0,14,0,14,0, + 255,224,127,192,63,128,63,128,123,192,241,224,192,96,11,10, + 20,16,2,1,4,0,10,0,10,0,241,224,64,64,32,128, + 36,128,74,64,177,160,192,96,11,12,24,16,3,0,4,0, + 30,0,127,0,255,128,255,192,255,224,255,224,255,192,255,128, + 127,0,30,0,4,0,11,12,24,16,3,0,4,0,26,0, + 97,0,128,128,128,64,128,32,128,32,128,64,128,128,97,0, + 26,0,4,0}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 8, '1' Height: 12 + Calculated Max Values w=16 h=16 x= 3 y=10 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent= 0 + X Font ascent =12 descent= 0 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_8_9[4272] U8G_SECTION(".progmem.u8g_font_unifont_8_9") = { + 0,16,16,0,254,8,4,65,6,56,0,255,0,14,254,12, + 0,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,74,81,234,80,90,81,201,158,0,1,128,0,0,1,128, + 0,0,1,128,0,85,85,6,14,14,8,1,0,72,72,0, + 0,252,128,128,128,248,128,128,128,128,252,7,10,10,8,1, + 0,252,32,32,32,60,34,34,34,34,44,6,14,14,8,1, + 0,24,96,0,0,252,128,128,128,128,128,128,128,128,128,6, + 10,10,8,1,0,56,68,128,128,248,128,128,128,68,56,6, + 10,10,8,1,0,120,132,132,128,96,24,4,132,132,120,5, + 10,10,8,2,0,248,32,32,32,32,32,32,32,32,248,5, + 14,14,8,2,0,144,144,0,0,248,32,32,32,32,32,32, + 32,32,248,6,10,10,8,1,0,28,8,8,8,8,8,8, + 136,136,112,8,10,10,8,0,0,120,72,72,72,78,73,73, + 73,73,142,7,10,10,8,1,0,144,144,144,144,252,146,146, + 146,146,156,7,10,10,8,1,0,252,32,32,32,60,34,34, + 34,34,34,6,14,14,8,1,0,24,96,0,0,128,140,144, + 160,192,192,160,144,136,132,6,13,13,8,1,0,96,24,0, + 132,140,140,148,148,164,164,196,196,132,7,14,14,8,1,0, + 132,132,120,0,130,130,68,68,40,40,16,16,32,96,7,10, + 10,8,1,0,130,130,130,130,130,130,254,16,16,16,6,10, + 10,8,1,0,48,72,72,132,132,132,252,132,132,132,6,10, + 10,8,1,0,248,128,128,128,248,132,132,132,132,248,6,10, + 10,8,1,0,248,132,132,132,248,132,132,132,132,248,6,10, + 10,8,1,0,252,128,128,128,128,128,128,128,128,128,8,12, + 12,8,0,254,14,18,18,18,34,34,34,66,66,255,129,129, + 6,10,10,8,1,0,252,128,128,128,248,128,128,128,128,252, + 7,10,10,8,1,0,146,146,84,84,56,56,84,84,146,146, + 6,10,10,8,1,0,120,132,4,4,120,8,4,4,132,120, + 6,10,10,8,1,0,132,140,140,148,148,164,164,196,196,132, + 6,13,13,8,1,0,72,48,0,132,140,140,148,148,164,164, + 196,196,132,6,10,10,8,1,0,128,140,144,160,192,192,160, + 144,136,132,6,10,10,8,1,0,60,36,36,36,36,36,36, + 68,68,132,6,10,10,8,1,0,132,132,204,204,180,180,132, + 132,132,132,6,10,10,8,1,0,132,132,132,132,252,132,132, + 132,132,132,6,10,10,8,1,0,120,132,132,132,132,132,132, + 132,132,120,6,10,10,8,1,0,252,132,132,132,132,132,132, + 132,132,132,6,10,10,8,1,0,248,132,132,132,248,128,128, + 128,128,128,6,10,10,8,1,0,120,132,132,128,128,128,128, + 132,132,120,7,10,10,8,1,0,254,16,16,16,16,16,16, + 16,16,16,7,10,10,8,1,0,130,130,68,68,40,40,16, + 16,32,96,7,11,11,8,1,0,16,124,146,146,146,146,146, + 124,16,16,16,6,10,10,8,1,0,132,132,72,72,48,48, + 72,72,132,132,7,12,12,8,1,254,132,132,132,132,132,132, + 132,132,132,254,2,2,6,10,10,8,1,0,132,132,132,132, + 132,252,4,4,4,4,7,10,10,8,1,0,146,146,146,146, + 146,146,146,146,146,254,8,12,12,8,0,254,146,146,146,146, + 146,146,146,146,146,255,1,1,7,10,10,8,1,0,224,32, + 32,32,60,34,34,34,34,60,6,10,10,8,1,0,132,132, + 132,132,228,148,148,148,148,228,6,10,10,8,1,0,128,128, + 128,128,248,132,132,132,132,248,6,10,10,8,1,0,112,136, + 4,4,124,4,4,4,136,112,6,10,10,8,1,0,152,164, + 164,164,228,164,164,164,164,152,6,10,10,8,1,0,124,132, + 132,132,124,36,68,68,132,132,6,8,8,8,1,0,120,132, + 4,124,132,132,140,116,6,12,12,8,1,0,4,56,64,128, + 248,132,132,132,132,132,132,120,6,8,8,8,1,0,248,132, + 132,248,132,132,132,248,6,8,8,8,1,0,252,128,128,128, + 128,128,128,128,7,9,9,8,1,255,60,36,68,68,132,132, + 132,254,130,6,8,8,8,1,0,120,132,132,252,128,128,132, + 120,7,8,8,8,1,0,146,146,84,56,56,84,146,146,6, + 8,8,8,1,0,120,132,4,120,8,4,132,120,6,8,8, + 8,1,0,140,140,148,148,164,164,196,196,6,12,12,8,1, + 0,72,48,0,0,140,140,148,148,164,164,196,196,6,8,8, + 8,1,0,140,144,160,192,160,144,136,132,6,8,8,8,1, + 0,60,36,36,36,36,68,68,132,6,8,8,8,1,0,132, + 204,204,180,180,132,132,132,6,8,8,8,1,0,132,132,132, + 252,132,132,132,132,6,8,8,8,1,0,120,132,132,132,132, + 132,132,120,6,8,8,8,1,0,252,132,132,132,132,132,132, + 132,6,10,10,8,1,254,248,132,132,132,132,248,128,128,128, + 128,6,8,8,8,1,0,120,132,128,128,128,128,132,120,7, + 8,8,8,1,0,254,16,16,16,16,16,16,16,6,10,10, + 8,1,254,132,132,72,72,48,48,32,32,64,192,7,10,10, + 8,1,255,16,16,124,146,146,146,146,124,16,16,6,8,8, + 8,1,0,132,132,72,48,48,72,132,132,7,10,10,8,1, + 254,132,132,132,132,132,132,132,254,2,2,6,8,8,8,1, + 0,132,132,132,132,252,4,4,4,7,8,8,8,1,0,146, + 146,146,146,146,146,146,254,8,10,10,8,0,254,146,146,146, + 146,146,146,146,255,1,1,7,8,8,8,1,0,224,32,32, + 60,34,34,34,60,6,8,8,8,1,0,132,132,132,228,148, + 148,148,228,6,8,8,8,1,0,128,128,128,248,132,132,132, + 248,6,8,8,8,1,0,112,136,4,124,4,4,136,112,6, + 8,8,8,1,0,152,164,164,228,164,164,164,152,6,8,8, + 8,1,0,124,132,132,132,124,36,68,132,6,12,12,8,1, + 0,96,24,0,0,120,132,132,252,128,128,132,120,6,12,12, + 8,1,0,72,72,0,0,120,132,132,252,128,128,132,120,6, + 11,11,8,1,255,64,64,240,64,64,120,68,68,68,68,24, + 6,12,12,8,1,0,24,96,0,0,252,128,128,128,128,128, + 128,128,6,8,8,8,1,0,56,68,128,248,128,128,68,56, + 6,8,8,8,1,0,120,132,128,96,24,4,132,120,5,11, + 11,8,2,0,32,32,0,96,32,32,32,32,32,32,248,5, + 11,11,8,2,0,144,144,0,96,32,32,32,32,32,32,248, + 5,13,13,8,1,254,8,8,0,24,8,8,8,8,8,8, + 8,144,96,8,8,8,8,0,0,120,72,72,78,73,73,73, + 142,7,8,8,8,1,0,144,144,144,252,146,146,146,156,6, + 10,10,8,1,0,64,64,240,64,64,88,100,68,68,68,6, + 12,12,8,1,0,24,96,0,0,140,144,160,192,160,144,136, + 132,6,12,12,8,1,0,96,24,0,0,140,140,148,148,164, + 164,196,196,6,15,15,8,1,254,132,132,120,0,0,132,132, + 72,72,48,48,32,32,64,192,5,10,10,8,2,254,136,136, + 136,136,136,136,248,32,32,32,7,10,10,8,1,0,108,130, + 130,130,130,146,146,146,146,108,7,8,8,8,1,0,68,130, + 130,146,146,146,146,108,7,10,10,8,1,0,32,248,32,32, + 60,34,34,34,34,60,6,10,10,8,1,0,64,64,240,64, + 64,120,68,68,68,120,7,10,10,8,1,0,140,146,160,160, + 252,160,160,160,146,140,7,8,8,8,1,0,140,146,160,252, + 160,160,146,140,7,10,10,8,1,0,16,16,40,40,68,108, + 84,146,146,146,7,8,8,8,1,0,16,40,40,68,108,146, + 146,146,7,10,10,8,1,0,144,144,168,168,164,236,212,146, + 146,146,7,8,8,8,1,0,144,168,168,164,236,146,146,146, + 7,10,10,8,1,0,124,68,68,40,16,56,84,146,146,146, + 7,8,8,8,1,0,124,68,40,16,124,146,146,146,7,10, + 10,8,1,0,190,162,162,148,232,156,170,170,170,170,7,8, + 8,8,1,0,190,162,148,232,156,170,170,170,6,14,14,8, + 1,254,72,48,120,132,4,4,120,8,4,4,4,120,128,128, + 6,13,13,8,1,254,72,48,0,120,132,4,120,8,4,4, + 120,128,128,7,10,10,8,1,0,146,146,146,146,146,124,16, + 16,16,16,7,8,8,8,1,254,146,146,146,146,146,124,16, + 16,6,10,10,8,1,0,120,132,132,132,252,132,132,132,132, + 120,6,8,8,8,1,0,120,132,132,252,132,132,132,120,7, + 10,10,8,1,0,134,136,136,136,80,80,80,32,32,32,6, + 8,8,8,1,0,140,144,144,80,80,80,32,32,7,14,14, + 8,1,0,204,34,0,0,134,136,136,136,80,80,80,32,32, + 32,7,12,12,8,1,0,204,34,0,0,140,144,144,80,80, + 80,32,32,7,12,12,8,1,254,64,160,178,178,178,170,172, + 168,168,72,16,16,7,10,10,8,1,254,82,178,178,170,172, + 168,168,72,16,16,7,12,12,8,1,255,16,124,146,130,130, + 130,130,130,130,146,124,16,7,10,10,8,1,255,16,124,146, + 130,130,130,130,146,124,16,7,14,14,8,1,0,120,134,48, + 0,108,130,130,130,130,146,146,146,146,108,7,12,12,8,1, + 0,120,134,48,0,68,130,130,146,146,146,146,108,7,14,14, + 8,1,0,254,16,0,0,108,130,130,130,130,146,146,146,146, + 108,7,12,12,8,1,0,254,16,0,0,68,130,130,146,146, + 146,146,108,6,12,12,8,1,254,120,132,132,128,128,128,128, + 128,120,8,8,8,6,10,10,8,1,254,120,132,132,128,128, + 128,120,8,8,8,7,7,7,8,1,1,36,24,136,84,34, + 48,72,4,3,3,8,1,10,16,240,128,5,4,4,8,0, + 9,16,40,72,128,4,3,3,8,1,10,128,240,128,4,3, + 3,8,1,10,16,240,16,8,3,3,8,0,10,48,76,131, + 14,14,28,16,0,254,1,0,2,128,16,16,40,40,0,0, + 0,0,64,8,160,20,0,0,0,0,0,0,16,16,41,40, + 2,128,14,14,28,16,1,254,1,0,33,8,19,16,24,96, + 0,0,0,0,0,16,224,28,32,0,0,0,0,0,25,176, + 17,16,33,8,7,15,15,8,1,254,72,48,0,132,140,140, + 148,148,164,164,196,196,134,4,8,7,14,14,8,1,254,72, + 48,0,0,140,140,148,148,164,164,196,198,4,8,6,10,10, + 8,1,0,64,224,64,64,64,120,68,68,76,120,6,7,7, + 8,1,0,64,224,64,120,68,68,120,6,10,10,8,1,0, + 248,132,148,136,244,128,128,128,128,128,6,10,10,8,1,254, + 184,196,132,132,132,148,200,180,128,128,6,12,12,8,1,0, + 4,4,252,128,128,128,128,128,128,128,128,128,6,10,10,8, + 1,0,4,4,252,128,128,128,128,128,128,128,7,10,10,8, + 1,0,62,32,32,32,32,248,32,32,32,32,7,8,8,8, + 1,0,62,32,32,32,248,32,32,32,6,11,11,8,1,255, + 252,128,128,128,128,248,132,132,132,132,24,6,9,9,8,1, + 255,252,128,128,128,248,132,132,132,24,7,12,12,8,1,254, + 146,146,84,84,56,56,84,84,146,146,2,2,7,10,10,8, + 1,254,146,146,84,56,56,84,146,146,2,2,6,12,12,8, + 1,254,120,132,4,4,120,8,4,4,132,120,16,96,6,10, + 10,8,1,254,120,132,4,120,8,4,132,120,16,96,6,12, + 12,8,1,254,128,140,144,160,192,192,160,144,136,132,4,4, + 6,10,10,8,1,254,140,144,160,192,160,144,136,132,4,4, + 7,10,10,8,1,0,128,134,168,168,240,168,168,168,132,130, + 7,8,8,8,1,0,134,168,168,240,168,168,132,130,7,10, + 10,8,1,0,64,230,72,80,96,96,80,72,68,66,7,8, + 8,8,1,0,70,232,80,96,80,72,68,66,8,10,10,8, + 0,0,224,35,36,40,48,48,40,36,34,33,8,8,8,8, + 0,0,227,36,40,48,40,36,34,33,7,12,12,8,1,254, + 132,132,132,132,252,132,132,132,132,134,2,2,7,10,10,8, + 1,254,132,132,132,252,132,132,132,134,2,2,7,10,10,8, + 1,0,142,136,136,136,248,136,136,136,136,136,7,8,8,8, + 1,0,142,136,136,248,136,136,136,136,7,12,12,8,1,254, + 240,144,144,144,144,156,146,146,146,146,2,12,7,10,10,8, + 1,254,240,144,144,144,156,146,146,146,2,12,6,11,11,8, + 1,255,56,64,128,152,164,164,164,164,88,48,12,6,9,9, + 8,1,255,56,64,152,164,164,164,88,48,12,6,12,12,8, + 1,254,120,132,132,128,128,128,128,132,132,120,32,24,6,10, + 10,8,1,254,120,132,132,128,128,132,132,120,32,24,7,12, + 12,8,1,254,254,16,16,16,16,16,16,16,16,24,8,8, + 7,10,10,8,1,254,254,16,16,16,16,16,16,24,8,8, + 7,10,10,8,1,0,130,130,68,68,40,16,16,16,16,16, + 5,10,10,8,2,254,136,136,136,80,80,32,32,32,32,32, + 7,10,10,8,1,0,130,130,68,68,40,16,16,124,16,16, + 5,8,8,8,2,0,136,136,136,80,32,32,248,32,7,12, + 12,8,1,254,132,132,72,72,48,48,72,72,132,134,2,2, + 7,10,10,8,1,254,132,132,72,48,48,72,132,134,2,2, + 8,12,12,8,0,254,250,34,34,34,34,34,34,34,34,63, + 1,1,8,10,10,8,0,254,250,34,34,34,34,34,34,63, + 1,1,7,12,12,8,1,254,132,132,132,132,132,140,116,4, + 4,6,2,2,7,10,10,8,1,254,132,132,132,132,140,116, + 4,6,2,2,6,10,10,8,1,0,132,132,132,132,164,172, + 116,36,36,4,6,8,8,8,1,0,132,132,132,164,172,116, + 36,4,6,10,10,8,1,0,128,128,128,184,196,132,132,132, + 132,132,6,8,8,8,1,0,128,128,184,196,132,132,132,132, + 6,10,10,8,1,0,152,164,164,164,124,32,32,36,36,24, + 6,8,8,8,1,0,152,164,164,124,32,32,36,24,6,12, + 12,8,1,254,152,164,164,164,124,32,32,36,36,24,16,12, + 6,10,10,8,1,254,152,164,164,124,32,32,36,24,16,12, + 5,10,10,8,2,0,248,32,32,32,32,32,32,32,32,248, + 7,14,14,8,1,0,130,130,124,0,146,146,84,84,56,56, + 84,84,146,146,7,13,13,8,1,0,68,68,56,0,0,146, + 146,84,56,56,84,146,146,6,12,12,8,1,254,128,140,144, + 160,192,248,132,132,132,132,4,24,6,10,10,8,1,254,140, + 144,160,192,248,132,132,132,4,24,7,12,12,8,1,254,60, + 36,36,36,36,36,36,68,68,134,4,8,7,10,10,8,1, + 254,60,36,36,36,36,68,68,134,4,8,6,12,12,8,1, + 254,132,132,132,132,252,132,132,132,132,132,4,24,6,10,10, + 8,1,254,132,132,132,252,132,132,132,132,4,24,7,12,12, + 8,1,254,132,132,132,132,252,132,132,132,132,134,4,8,7, + 10,10,8,1,254,132,132,132,252,132,132,132,134,4,8,6, + 12,12,8,1,254,132,132,132,132,132,140,116,4,4,12,8, + 8,6,10,10,8,1,254,132,132,132,132,140,116,4,12,8, + 8,7,12,12,8,1,254,132,132,204,204,180,180,132,132,132, + 134,4,8,7,10,10,8,1,254,132,204,204,180,180,132,132, + 134,4,8,3,10,10,8,3,0,224,64,64,64,64,64,64, + 64,64,224,6,14,14,8,1,0,132,132,120,0,48,72,72, + 132,132,252,132,132,132,132,6,13,13,8,1,0,132,132,120, + 0,0,120,132,4,124,132,132,140,116,6,14,14,8,1,0, + 72,72,0,0,48,72,72,132,132,252,132,132,132,132,6,12, + 12,8,1,0,72,72,0,0,120,132,4,124,132,132,140,116, + 7,10,10,8,1,0,62,80,144,144,254,144,144,144,144,158, + 7,8,8,8,1,0,124,146,18,126,144,144,146,124,6,14, + 14,8,1,0,132,132,120,0,252,128,128,128,248,128,128,128, + 128,252,6,12,12,8,1,0,132,132,120,0,120,132,132,252, + 128,128,132,120,6,10,10,8,1,0,48,72,132,4,4,252, + 132,132,72,48,6,8,8,8,1,0,120,132,4,4,252,132, + 132,120,6,14,14,8,1,0,72,72,0,0,48,72,132,4, + 4,252,132,132,72,48,6,12,12,8,1,0,72,72,0,0, + 120,132,4,4,252,132,132,120,7,14,14,8,1,0,72,72, + 0,0,146,146,84,84,56,56,84,84,146,146,7,12,12,8, + 1,0,72,72,0,0,146,146,84,56,56,84,146,146,6,14, + 14,8,1,0,72,72,0,0,120,132,4,4,120,8,4,4, + 132,120,6,12,12,8,1,0,72,72,0,0,120,132,4,120, + 8,4,132,120,6,10,10,8,1,0,252,8,16,32,56,4, + 4,4,140,120,6,10,10,8,1,254,124,8,16,32,56,4, + 4,4,132,120,6,13,13,8,1,0,120,0,0,132,140,140, + 148,148,164,164,196,196,132,6,11,11,8,1,0,120,0,0, + 140,140,148,148,164,164,196,196,6,14,14,8,1,0,72,72, + 0,0,132,140,140,148,148,164,164,196,196,132,6,12,12,8, + 1,0,72,72,0,0,140,140,148,148,164,164,196,196,6,14, + 14,8,1,0,72,72,0,0,120,132,132,132,132,132,132,132, + 132,120,6,12,12,8,1,0,72,72,0,0,120,132,132,132, + 132,132,132,120,6,10,10,8,1,0,120,132,132,132,252,132, + 132,132,132,120,6,8,8,8,1,0,120,132,132,252,132,132, + 132,120,6,14,14,8,1,0,72,72,0,0,120,132,132,132, + 252,132,132,132,132,120,6,12,12,8,1,0,72,72,0,0, + 120,132,132,252,132,132,132,120,6,12,12,8,1,0,72,0, + 120,132,4,4,124,4,4,4,132,120,6,10,10,8,1,0, + 72,0,120,132,4,60,4,4,132,120,7,13,13,8,1,0, + 124,0,0,130,130,68,68,40,40,16,16,32,96,6,13,13, + 8,1,254,120,0,0,132,132,72,72,48,48,32,32,64,192, + 7,14,14,8,1,0,72,72,0,0,130,130,68,68,40,40, + 16,16,32,96,6,14,14,8,1,254,72,72,0,0,132,132, + 72,72,48,48,32,32,64,192,7,14,14,8,1,0,102,136, + 0,0,130,130,68,68,40,40,16,16,32,96,7,14,14,8, + 1,254,102,136,0,0,132,132,72,72,48,48,32,32,64,192, + 6,14,14,8,1,0,72,72,0,0,132,132,132,132,132,140, + 116,4,4,4,6,12,12,8,1,0,72,72,0,0,132,132, + 132,132,140,116,4,4,6,12,12,8,1,254,252,128,128,128, + 128,128,128,128,128,224,96,32,6,10,10,8,1,254,252,128, + 128,128,128,128,128,224,96,32,6,14,14,8,1,0,72,72, + 0,0,132,132,132,132,228,148,148,148,148,228,6,12,12,8, + 1,0,72,72,0,0,132,132,132,228,148,148,148,228,6,12, + 12,8,1,254,252,128,128,128,248,128,128,128,128,192,64,192, + 5,10,10,8,1,254,248,128,128,240,128,128,128,192,64,192, + 6,12,12,8,1,254,132,132,72,72,48,48,72,72,132,132, + 4,8,6,10,10,8,1,254,132,132,72,48,48,72,132,132, + 4,8,6,10,10,8,1,0,132,132,72,72,48,252,72,72, + 132,132,6,8,8,8,1,0,132,132,72,48,252,72,132,132 + }; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=16 h=16 x= 4 y=14 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =11 descent=-2 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont[5516] U8G_SECTION(".progmem.u8g_font_unifont") = { + 0,16,16,0,254,10,6,167,8,149,0,255,254,14,254,11, + 254,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,74,81,234,80,90,81,201,158,0,1,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,57,147,194,82,50,95,138,82,113, + 147,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,59,165,193, + 36,49,25,137,36,113,37,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,123,165,193,36,121,25,193,36,121,37,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,121,191,194,72,122,73,194, + 72,121,137,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,122, + 77,194,82,123,83,194,214,122,79,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,49,165,202,40,122,49,202,40,73,165,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,115,209,202,16,115, + 209,202,16,115,223,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,120,225,197,0,120,193,196,32,121,193,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,69,241,196,64,124,65,196,64,68, + 65,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,65,241,193, + 0,65,241,193,0,125,1,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,69,241,196,64,68,65,168,64,16,65,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,125,241,193,0,125,241,193, + 0,65,1,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,61, + 225,193,16,65,225,193,32,61,17,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,60,225,193,16,57,17,133,16,120,225,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,61,241,192,64,56, + 65,132,64,121,241,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,114,57,202,32,74,57,202,32,115,185,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,113,137,202,24,74,9,202,8,113, + 157,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,113,153,202, + 4,74,9,202,16,113,157,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,113,153,202,4,74,25,202,4,113,153,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,113,133,202,12,74,21,202, + 28,113,133,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,73, + 147,234,84,106,89,219,212,74,83,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,52,83,194,154,49,23,137,18,113,19,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,123,185,193,36,121, + 57,193,36,121,57,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,51,37,196,180,71,173,196,164,52,165,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,125,17,193,176,125,81,193,16,125, + 17,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,58,93,194, + 82,50,93,138,82,113,157,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,121,207,194,16,121,145,192,80,123,143,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,121,193,194,0,121,129,192, + 64,67,129,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,57, + 193,194,0,89,129,200,64,59,129,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,113,193,202,0,113,129,208,64,75,129,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,73,193,202,0,73, + 129,200,64,51,129,128,0,0,1,128,0,0,1,128,0,85, + 85,0,0,0,8,0,14,1,10,10,8,4,0,128,128,128, + 128,128,128,128,0,128,128,5,4,4,8,2,8,136,136,136, + 136,6,10,10,8,1,0,36,36,36,252,72,72,252,144,144, + 144,7,10,10,8,1,0,16,124,146,144,112,28,18,146,124, + 16,7,10,10,8,1,0,98,148,148,104,16,16,44,82,82, + 140,7,10,10,8,1,0,56,68,68,68,56,114,138,132,140, + 114,1,4,4,8,4,8,128,128,128,128,3,12,12,8,3, + 255,32,64,64,128,128,128,128,128,128,64,64,32,3,12,12, + 8,2,255,128,64,64,32,32,32,32,32,32,64,64,128,7, + 7,7,8,1,1,16,146,84,56,84,146,16,7,7,7,8, + 1,1,16,16,16,254,16,16,16,2,4,4,8,3,254,192, + 64,64,128,6,1,1,8,1,4,252,2,2,2,8,3,0, + 192,192,6,10,10,8,1,0,4,4,8,16,16,32,32,64, + 128,128,6,10,10,8,1,0,48,72,132,132,132,132,132,132, + 72,48,5,10,10,8,2,0,32,96,160,32,32,32,32,32, + 32,248,6,10,10,8,1,0,120,132,132,4,24,32,64,128, + 128,252,6,10,10,8,1,0,120,132,132,4,56,4,4,132, + 132,120,6,10,10,8,1,0,8,24,40,72,136,136,252,8, + 8,8,6,10,10,8,1,0,252,128,128,128,248,4,4,4, + 132,120,6,10,10,8,1,0,56,64,128,128,248,132,132,132, + 132,120,6,10,10,8,1,0,252,4,4,8,8,8,16,16, + 16,16,6,10,10,8,1,0,120,132,132,132,120,132,132,132, + 132,120,6,10,10,8,1,0,120,132,132,132,124,4,4,4, + 8,112,2,7,7,8,3,1,192,192,0,0,0,192,192,2, + 9,9,8,3,255,192,192,0,0,0,192,64,64,128,5,9, + 9,8,2,0,8,16,32,64,128,64,32,16,8,6,5,5, + 8,1,2,252,0,0,0,252,5,9,9,8,1,0,128,64, + 32,16,8,16,32,64,128,6,10,10,8,1,0,120,132,132, + 4,8,16,16,0,16,16,6,10,10,8,1,0,56,68,148, + 172,164,164,164,156,64,60,6,10,10,8,1,0,48,72,72, + 132,132,252,132,132,132,132,6,10,10,8,1,0,248,132,132, + 132,248,132,132,132,132,248,6,10,10,8,1,0,120,132,132, + 128,128,128,128,132,132,120,6,10,10,8,1,0,240,136,132, + 132,132,132,132,132,136,240,6,10,10,8,1,0,252,128,128, + 128,248,128,128,128,128,252,6,10,10,8,1,0,252,128,128, + 128,248,128,128,128,128,128,6,10,10,8,1,0,120,132,132, + 128,128,156,132,132,140,116,6,10,10,8,1,0,132,132,132, + 132,252,132,132,132,132,132,5,10,10,8,2,0,248,32,32, + 32,32,32,32,32,32,248,7,10,10,8,1,0,62,8,8, + 8,8,8,8,136,136,112,6,10,10,8,1,0,132,136,144, + 160,192,192,160,144,136,132,6,10,10,8,1,0,128,128,128, + 128,128,128,128,128,128,252,6,10,10,8,1,0,132,132,204, + 204,180,180,132,132,132,132,6,10,10,8,1,0,132,196,196, + 164,164,148,148,140,140,132,6,10,10,8,1,0,120,132,132, + 132,132,132,132,132,132,120,6,10,10,8,1,0,248,132,132, + 132,248,128,128,128,128,128,7,11,11,8,1,255,120,132,132, + 132,132,132,132,180,204,120,6,6,10,10,8,1,0,248,132, + 132,132,248,144,136,136,132,132,6,10,10,8,1,0,120,132, + 132,128,96,24,4,132,132,120,7,10,10,8,1,0,254,16, + 16,16,16,16,16,16,16,16,6,10,10,8,1,0,132,132, + 132,132,132,132,132,132,132,120,7,10,10,8,1,0,130,130, + 130,68,68,68,40,40,16,16,6,10,10,8,1,0,132,132, + 132,132,180,180,204,204,132,132,6,10,10,8,1,0,132,132, + 72,72,48,48,72,72,132,132,7,10,10,8,1,0,130,130, + 68,68,40,16,16,16,16,16,6,10,10,8,1,0,252,4, + 4,8,16,32,64,128,128,252,3,12,12,8,4,255,224,128, + 128,128,128,128,128,128,128,128,128,224,6,10,10,8,1,0, + 128,128,64,32,32,16,16,8,4,4,3,12,12,8,1,255, + 224,32,32,32,32,32,32,32,32,32,32,224,6,3,3,8, + 1,9,48,72,132,7,1,1,8,1,255,254,3,3,3,8, + 2,10,128,64,32,6,8,8,8,1,0,120,132,4,124,132, + 132,140,116,6,11,11,8,1,0,128,128,128,184,196,132,132, + 132,132,196,184,6,8,8,8,1,0,120,132,128,128,128,128, + 132,120,6,11,11,8,1,0,4,4,4,116,140,132,132,132, + 132,140,116,6,8,8,8,1,0,120,132,132,252,128,128,132, + 120,5,11,11,8,1,0,24,32,32,32,248,32,32,32,32, + 32,32,6,11,11,8,1,254,4,116,136,136,136,112,64,120, + 132,132,120,6,11,11,8,1,0,128,128,128,184,196,132,132, + 132,132,132,132,5,11,11,8,2,0,32,32,0,96,32,32, + 32,32,32,32,248,5,13,13,8,1,254,8,8,0,24,8, + 8,8,8,8,8,8,144,96,6,10,10,8,1,0,128,128, + 136,144,160,192,160,144,136,132,5,10,10,8,2,0,96,32, + 32,32,32,32,32,32,32,248,7,8,8,8,1,0,236,146, + 146,146,146,146,146,146,6,8,8,8,1,0,184,196,132,132, + 132,132,132,132,6,8,8,8,1,0,120,132,132,132,132,132, + 132,120,6,10,10,8,1,254,184,196,132,132,132,132,196,184, + 128,128,6,10,10,8,1,254,116,140,132,132,132,132,140,116, + 4,4,6,8,8,8,1,0,184,196,132,128,128,128,128,128, + 6,8,8,8,1,0,120,132,128,96,24,4,132,120,5,10, + 10,8,1,0,32,32,248,32,32,32,32,32,32,24,6,8, + 8,8,1,0,132,132,132,132,132,132,140,116,6,8,8,8, + 1,0,132,132,132,72,72,72,48,48,7,8,8,8,1,0, + 130,146,146,146,146,146,146,108,6,8,8,8,1,0,132,132, + 72,48,48,72,132,132,6,10,10,8,1,254,132,132,132,132, + 132,76,52,4,4,120,6,8,8,8,1,0,252,4,8,16, + 32,64,128,252,3,12,12,8,3,255,96,128,128,64,64,128, + 128,64,64,128,128,96,1,14,14,8,4,254,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,3,12,12,8,2,255, + 192,32,32,64,64,32,32,64,64,32,32,192,7,3,3,8, + 1,8,98,146,140,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,115,209,202,16,75,209,202,16,115,223,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,113,157,202,82,115, + 211,194,82,66,93,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,73,157,202,82,122,93,202,80,73,145,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,115,147,202,82,115,159,202,18,114, + 19,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,75,147,234, + 82,91,159,202,82,75,147,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,116,185,166,164,37,165,164,164,116,185,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,75,209,234,16,91,209,202, + 16,75,223,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,57, + 205,194,18,49,159,136,82,115,147,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,121,205,194,18,121,159,192,82,123,147,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,75,157,201,32,121, + 25,201,4,73,57,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,75,185,201,8,121,9,201,8,73,49,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,69,205,196,144,68,137,168,132,16, + 153,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,114,29,202, + 18,114,19,194,18,67,221,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,114,19,202,18,114,19,194,18,67,205,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,14,33,137,32,14,33,138, + 32,9,33,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,57, + 221,194,2,49,141,136,80,115,159,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,57,221,194,2,49,141,136,66,115,157,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,113,207,202,16,74, + 13,202,2,113,221,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,114,69,202,76,114,69,194,68,65,143,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,114,93,202,66,114,77,194,80,65, + 159,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,59,157,193, + 32,49,25,137,4,113,57,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,57,211,194,18,66,31,194,18,57,211,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,69,17,237,16,85,81,197, + 176,69,17,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,59, + 141,194,82,51,159,138,18,114,19,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,123,141,194,82,123,159,194,18,122,19,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,57,143,194,80,50, + 77,138,66,113,157,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,51,155,196,34,37,163,148,162,99,155,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,57,221,194,8,50,9,138,8,113, + 221,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,57,221,194, + 8,65,137,192,72,59,157,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,14,249,144,32,12,33,130,32,28,33,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,49,207,202,16,73,145,200, + 80,51,143,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,114, + 33,203,96,114,161,194,32,66,33,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,51,143,202,80,123,145,202,16,74,15,128, + 0,0,1,128,0,0,1,128,0,85,85,0,0,0,8,0, + 14,1,10,10,8,4,0,128,128,0,128,128,128,128,128,128, + 128,7,10,10,8,1,0,16,16,124,146,144,144,146,124,16, + 16,7,10,10,8,1,0,28,32,32,32,248,32,32,32,124, + 194,6,8,8,8,1,1,132,72,120,72,72,120,72,132,7, + 10,10,8,1,0,130,68,40,16,254,16,254,16,16,16,1, + 10,10,8,4,0,128,128,128,128,0,0,128,128,128,128,6, + 10,10,8,1,0,120,132,128,120,132,132,120,4,132,120,4, + 2,2,8,2,12,144,144,8,10,10,8,0,0,60,66,153, + 165,161,161,165,153,66,60,5,7,7,8,2,5,112,8,120, + 136,120,0,248,6,9,9,8,1,0,36,36,72,72,144,72, + 72,36,36,6,4,4,8,1,0,252,4,4,4,6,1,1, + 8,1,4,252,8,10,10,8,0,0,60,66,185,165,165,185, + 169,165,66,60,6,1,1,8,1,11,252,3,4,4,8,2, + 10,64,160,160,64,7,9,9,8,1,1,16,16,16,254,16, + 16,16,0,254,5,7,7,8,2,5,112,136,8,112,128,128, + 248,5,7,7,8,2,5,112,136,8,112,8,136,112,3,3, + 3,8,3,10,32,64,128,5,8,8,8,2,254,136,136,136, + 136,216,168,128,128,6,12,12,8,1,255,124,244,244,244,244, + 116,20,20,20,20,20,28,2,2,2,8,3,4,192,192,3, + 2,2,8,2,254,32,192,3,7,7,8,2,5,32,96,160, + 32,32,32,32,5,7,7,8,2,5,112,136,136,136,112,0, + 248,6,9,9,8,1,0,144,144,72,72,36,72,72,144,144, + 6,10,10,8,1,0,68,196,72,80,80,36,44,84,156,132, + 6,10,10,8,1,0,68,196,72,80,80,40,52,68,136,156, + 6,10,10,8,1,0,196,36,72,48,208,36,44,84,156,132, + 6,10,10,8,1,0,16,16,0,16,16,96,132,132,132,120, + 6,14,14,8,1,0,96,24,0,0,48,72,72,132,132,252, + 132,132,132,132,6,14,14,8,1,0,24,96,0,0,48,72, + 72,132,132,252,132,132,132,132,6,14,14,8,1,0,48,72, + 0,0,48,72,72,132,132,252,132,132,132,132,6,14,14,8, + 1,0,100,152,0,0,48,72,72,132,132,252,132,132,132,132, + 6,14,14,8,1,0,72,72,0,0,48,72,72,132,132,252, + 132,132,132,132,6,14,14,8,1,0,48,72,48,0,48,72, + 72,132,132,252,132,132,132,132,7,10,10,8,1,0,62,80, + 144,144,254,144,144,144,144,158,6,12,12,8,1,254,120,132, + 132,128,128,128,128,132,132,120,16,96,6,14,14,8,1,0, + 96,24,0,0,252,128,128,128,248,128,128,128,128,252,6,14, + 14,8,1,0,24,96,0,0,252,128,128,128,248,128,128,128, + 128,252,6,14,14,8,1,0,48,72,0,0,252,128,128,128, + 248,128,128,128,128,252,6,14,14,8,1,0,72,72,0,0, + 252,128,128,128,248,128,128,128,128,252,5,14,14,8,2,0, + 96,24,0,0,248,32,32,32,32,32,32,32,32,248,5,14, + 14,8,2,0,48,192,0,0,248,32,32,32,32,32,32,32, + 32,248,5,14,14,8,2,0,96,144,0,0,248,32,32,32, + 32,32,32,32,32,248,5,14,14,8,2,0,144,144,0,0, + 248,32,32,32,32,32,32,32,32,248,7,10,10,8,0,0, + 120,68,66,66,242,66,66,66,68,120,6,14,14,8,1,0, + 100,152,0,0,132,196,196,164,164,148,148,140,140,132,6,14, + 14,8,1,0,96,24,0,0,120,132,132,132,132,132,132,132, + 132,120,6,14,14,8,1,0,24,96,0,0,120,132,132,132, + 132,132,132,132,132,120,6,14,14,8,1,0,48,72,0,0, + 120,132,132,132,132,132,132,132,132,120,6,14,14,8,1,0, + 100,152,0,0,120,132,132,132,132,132,132,132,132,120,6,14, + 14,8,1,0,72,72,0,0,120,132,132,132,132,132,132,132, + 132,120,6,5,5,8,1,2,132,72,48,72,132,6,12,12, + 8,1,255,4,116,136,140,148,148,164,164,196,68,184,128,6, + 14,14,8,1,0,96,24,0,0,132,132,132,132,132,132,132, + 132,132,120,6,14,14,8,1,0,24,96,0,0,132,132,132, + 132,132,132,132,132,132,120,6,14,14,8,1,0,48,72,0, + 0,132,132,132,132,132,132,132,132,132,120,6,14,14,8,1, + 0,72,72,0,0,132,132,132,132,132,132,132,132,132,120,7, + 14,14,8,1,0,24,96,0,0,130,130,68,68,40,16,16, + 16,16,16,6,11,11,8,1,0,128,128,240,136,132,132,136, + 240,128,128,128,6,10,10,8,1,0,112,136,136,136,248,132, + 132,132,196,184,6,12,12,8,1,0,96,24,0,0,120,132, + 4,124,132,132,140,116,6,12,12,8,1,0,24,96,0,0, + 120,132,4,124,132,132,140,116,6,12,12,8,1,0,48,72, + 0,0,120,132,4,124,132,132,140,116,6,12,12,8,1,0, + 100,152,0,0,120,132,4,124,132,132,140,116,6,12,12,8, + 1,0,72,72,0,0,120,132,4,124,132,132,140,116,6,13, + 13,8,1,0,48,72,48,0,0,120,132,4,124,132,132,140, + 116,7,8,8,8,1,0,124,146,18,126,144,144,146,124,6, + 10,10,8,1,254,120,132,128,128,128,128,132,120,16,96,6, + 12,12,8,1,0,96,24,0,0,120,132,132,252,128,128,132, + 120,6,12,12,8,1,0,24,96,0,0,120,132,132,252,128, + 128,132,120,6,12,12,8,1,0,48,72,0,0,120,132,132, + 252,128,128,132,120,6,12,12,8,1,0,72,72,0,0,120, + 132,132,252,128,128,132,120,5,12,12,8,2,0,192,48,0, + 0,96,32,32,32,32,32,32,248,5,12,12,8,2,0,48, + 192,0,0,96,32,32,32,32,32,32,248,5,12,12,8,2, + 0,96,144,0,0,96,32,32,32,32,32,32,248,5,12,12, + 8,2,0,144,144,0,0,96,32,32,32,32,32,32,248,6, + 12,12,8,1,0,100,24,40,68,4,124,132,132,132,132,132, + 120,6,12,12,8,1,0,100,152,0,0,184,196,132,132,132, + 132,132,132,6,12,12,8,1,0,96,24,0,0,120,132,132, + 132,132,132,132,120,6,12,12,8,1,0,24,96,0,0,120, + 132,132,132,132,132,132,120,6,12,12,8,1,0,48,72,0, + 0,120,132,132,132,132,132,132,120,6,12,12,8,1,0,100, + 152,0,0,120,132,132,132,132,132,132,120,6,12,12,8,1, + 0,72,72,0,0,120,132,132,132,132,132,132,120,6,7,7, + 8,1,1,48,0,0,252,0,0,48,6,10,10,8,1,255, + 4,120,140,148,148,164,164,196,120,128,6,12,12,8,1,0, + 96,24,0,0,132,132,132,132,132,132,140,116,6,12,12,8, + 1,0,24,96,0,0,132,132,132,132,132,132,140,116,6,12, + 12,8,1,0,48,72,0,0,132,132,132,132,132,132,140,116, + 6,12,12,8,1,0,72,72,0,0,132,132,132,132,132,132, + 140,116,6,14,14,8,1,254,24,96,0,0,132,132,132,132, + 132,76,52,4,4,120,5,12,12,8,2,254,128,128,240,136, + 136,136,144,160,192,128,128,128,6,14,14,8,1,254,72,72, + 0,0,132,132,132,132,132,76,52,4,4,120}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=16 h=16 x= 4 y=14 dx=16 dy= 0 ascent=14 len=14 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =11 descent=-2 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifontr[1483] U8G_SECTION(".progmem.u8g_font_unifontr") = { + 0,16,16,0,254,10,1,231,3,213,32,127,254,14,254,11, + 254,0,0,0,8,0,14,1,10,10,8,4,0,128,128,128, + 128,128,128,128,0,128,128,5,4,4,8,2,8,136,136,136, + 136,6,10,10,8,1,0,36,36,36,252,72,72,252,144,144, + 144,7,10,10,8,1,0,16,124,146,144,112,28,18,146,124, + 16,7,10,10,8,1,0,98,148,148,104,16,16,44,82,82, + 140,7,10,10,8,1,0,56,68,68,68,56,114,138,132,140, + 114,1,4,4,8,4,8,128,128,128,128,3,12,12,8,3, + 255,32,64,64,128,128,128,128,128,128,64,64,32,3,12,12, + 8,2,255,128,64,64,32,32,32,32,32,32,64,64,128,7, + 7,7,8,1,1,16,146,84,56,84,146,16,7,7,7,8, + 1,1,16,16,16,254,16,16,16,2,4,4,8,3,254,192, + 64,64,128,6,1,1,8,1,4,252,2,2,2,8,3,0, + 192,192,6,10,10,8,1,0,4,4,8,16,16,32,32,64, + 128,128,6,10,10,8,1,0,48,72,132,132,132,132,132,132, + 72,48,5,10,10,8,2,0,32,96,160,32,32,32,32,32, + 32,248,6,10,10,8,1,0,120,132,132,4,24,32,64,128, + 128,252,6,10,10,8,1,0,120,132,132,4,56,4,4,132, + 132,120,6,10,10,8,1,0,8,24,40,72,136,136,252,8, + 8,8,6,10,10,8,1,0,252,128,128,128,248,4,4,4, + 132,120,6,10,10,8,1,0,56,64,128,128,248,132,132,132, + 132,120,6,10,10,8,1,0,252,4,4,8,8,8,16,16, + 16,16,6,10,10,8,1,0,120,132,132,132,120,132,132,132, + 132,120,6,10,10,8,1,0,120,132,132,132,124,4,4,4, + 8,112,2,7,7,8,3,1,192,192,0,0,0,192,192,2, + 9,9,8,3,255,192,192,0,0,0,192,64,64,128,5,9, + 9,8,2,0,8,16,32,64,128,64,32,16,8,6,5,5, + 8,1,2,252,0,0,0,252,5,9,9,8,1,0,128,64, + 32,16,8,16,32,64,128,6,10,10,8,1,0,120,132,132, + 4,8,16,16,0,16,16,6,10,10,8,1,0,56,68,148, + 172,164,164,164,156,64,60,6,10,10,8,1,0,48,72,72, + 132,132,252,132,132,132,132,6,10,10,8,1,0,248,132,132, + 132,248,132,132,132,132,248,6,10,10,8,1,0,120,132,132, + 128,128,128,128,132,132,120,6,10,10,8,1,0,240,136,132, + 132,132,132,132,132,136,240,6,10,10,8,1,0,252,128,128, + 128,248,128,128,128,128,252,6,10,10,8,1,0,252,128,128, + 128,248,128,128,128,128,128,6,10,10,8,1,0,120,132,132, + 128,128,156,132,132,140,116,6,10,10,8,1,0,132,132,132, + 132,252,132,132,132,132,132,5,10,10,8,2,0,248,32,32, + 32,32,32,32,32,32,248,7,10,10,8,1,0,62,8,8, + 8,8,8,8,136,136,112,6,10,10,8,1,0,132,136,144, + 160,192,192,160,144,136,132,6,10,10,8,1,0,128,128,128, + 128,128,128,128,128,128,252,6,10,10,8,1,0,132,132,204, + 204,180,180,132,132,132,132,6,10,10,8,1,0,132,196,196, + 164,164,148,148,140,140,132,6,10,10,8,1,0,120,132,132, + 132,132,132,132,132,132,120,6,10,10,8,1,0,248,132,132, + 132,248,128,128,128,128,128,7,11,11,8,1,255,120,132,132, + 132,132,132,132,180,204,120,6,6,10,10,8,1,0,248,132, + 132,132,248,144,136,136,132,132,6,10,10,8,1,0,120,132, + 132,128,96,24,4,132,132,120,7,10,10,8,1,0,254,16, + 16,16,16,16,16,16,16,16,6,10,10,8,1,0,132,132, + 132,132,132,132,132,132,132,120,7,10,10,8,1,0,130,130, + 130,68,68,68,40,40,16,16,6,10,10,8,1,0,132,132, + 132,132,180,180,204,204,132,132,6,10,10,8,1,0,132,132, + 72,72,48,48,72,72,132,132,7,10,10,8,1,0,130,130, + 68,68,40,16,16,16,16,16,6,10,10,8,1,0,252,4, + 4,8,16,32,64,128,128,252,3,12,12,8,4,255,224,128, + 128,128,128,128,128,128,128,128,128,224,6,10,10,8,1,0, + 128,128,64,32,32,16,16,8,4,4,3,12,12,8,1,255, + 224,32,32,32,32,32,32,32,32,32,32,224,6,3,3,8, + 1,9,48,72,132,7,1,1,8,1,255,254,3,3,3,8, + 2,10,128,64,32,6,8,8,8,1,0,120,132,4,124,132, + 132,140,116,6,11,11,8,1,0,128,128,128,184,196,132,132, + 132,132,196,184,6,8,8,8,1,0,120,132,128,128,128,128, + 132,120,6,11,11,8,1,0,4,4,4,116,140,132,132,132, + 132,140,116,6,8,8,8,1,0,120,132,132,252,128,128,132, + 120,5,11,11,8,1,0,24,32,32,32,248,32,32,32,32, + 32,32,6,11,11,8,1,254,4,116,136,136,136,112,64,120, + 132,132,120,6,11,11,8,1,0,128,128,128,184,196,132,132, + 132,132,132,132,5,11,11,8,2,0,32,32,0,96,32,32, + 32,32,32,32,248,5,13,13,8,1,254,8,8,0,24,8, + 8,8,8,8,8,8,144,96,6,10,10,8,1,0,128,128, + 136,144,160,192,160,144,136,132,5,10,10,8,2,0,96,32, + 32,32,32,32,32,32,32,248,7,8,8,8,1,0,236,146, + 146,146,146,146,146,146,6,8,8,8,1,0,184,196,132,132, + 132,132,132,132,6,8,8,8,1,0,120,132,132,132,132,132, + 132,120,6,10,10,8,1,254,184,196,132,132,132,132,196,184, + 128,128,6,10,10,8,1,254,116,140,132,132,132,132,140,116, + 4,4,6,8,8,8,1,0,184,196,132,128,128,128,128,128, + 6,8,8,8,1,0,120,132,128,96,24,4,132,120,5,10, + 10,8,1,0,32,32,248,32,32,32,32,32,32,24,6,8, + 8,8,1,0,132,132,132,132,132,132,140,116,6,8,8,8, + 1,0,132,132,132,72,72,72,48,48,7,8,8,8,1,0, + 130,146,146,146,146,146,146,108,6,8,8,8,1,0,132,132, + 72,48,48,72,132,132,6,10,10,8,1,254,132,132,132,132, + 132,76,52,4,4,120,6,8,8,8,1,0,252,4,8,16, + 32,64,128,252,3,12,12,8,3,255,96,128,128,64,64,128, + 128,64,64,128,128,96,1,14,14,8,4,254,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,3,12,12,8,2,255, + 192,32,32,64,64,32,32,64,64,32,32,192,7,3,3,8, + 1,8,98,146,140,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,115,209,202,16,75,209,202,16,115,223,128, + 0,0,1,128,0,0,1,128,0,85,85}; diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_line.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_line.c new file mode 100644 index 0000000000000000000000000000000000000000..30b30972347b5b4ca067e5ca70efa4dca625e609 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_line.c @@ -0,0 +1,81 @@ +/* + + u8g_line.h + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#include "u8g.h" + +void u8g_DrawLine(u8g_t *u8g, u8g_uint_t x1, u8g_uint_t y1, u8g_uint_t x2, u8g_uint_t y2) +{ + u8g_uint_t tmp; + u8g_uint_t x,y; + u8g_uint_t dx, dy; + u8g_int_t err; + u8g_int_t ystep; + + uint8_t swapxy = 0; + + /* no BBX intersection check at the moment, should be added... */ + + if ( x1 > x2 ) dx = x1-x2; else dx = x2-x1; + if ( y1 > y2 ) dy = y1-y2; else dy = y2-y1; + + if ( dy > dx ) + { + swapxy = 1; + tmp = dx; dx =dy; dy = tmp; + tmp = x1; x1 =y1; y1 = tmp; + tmp = x2; x2 =y2; y2 = tmp; + } + if ( x1 > x2 ) + { + tmp = x1; x1 =x2; x2 = tmp; + tmp = y1; y1 =y2; y2 = tmp; + } + err = dx >> 1; + if ( y2 > y1 ) ystep = 1; else ystep = -1; + y = y1; + for( x = x1; x <= x2; x++ ) + { + if ( swapxy == 0 ) + u8g_DrawPixel(u8g, x, y); + else + u8g_DrawPixel(u8g, y, x); + err -= (uint8_t)dy; + if ( err < 0 ) + { + y += (u8g_uint_t)ystep; + err += (u8g_uint_t)dx; + } + } +} diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_ll_api.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_ll_api.c new file mode 100644 index 0000000000000000000000000000000000000000..41c7fada1858b99fcf1d8957e004651164147088 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_ll_api.c @@ -0,0 +1,456 @@ +/* + + u8g_ll_api.c + + low level api + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include +#include "u8g.h" + +uint8_t u8g_call_dev_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + return dev->dev_fn(u8g, dev, msg, arg); +} + +/*====================================================================*/ + +uint8_t u8g_InitLL(u8g_t *u8g, u8g_dev_t *dev) +{ + uint8_t r; + u8g->state_cb(U8G_STATE_MSG_BACKUP_ENV); + r = u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_INIT, NULL); + u8g->state_cb(U8G_STATE_MSG_BACKUP_U8G); + u8g->state_cb(U8G_STATE_MSG_RESTORE_ENV); + return r; +} + +void u8g_FirstPageLL(u8g_t *u8g, u8g_dev_t *dev) +{ + u8g->state_cb(U8G_STATE_MSG_BACKUP_ENV); + u8g->state_cb(U8G_STATE_MSG_RESTORE_U8G); + u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_PAGE_FIRST, NULL); + u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_GET_PAGE_BOX, &(u8g->current_page)); + u8g->state_cb(U8G_STATE_MSG_RESTORE_ENV); +} + +uint8_t u8g_NextPageLL(u8g_t *u8g, u8g_dev_t *dev) +{ + uint8_t r; + u8g->state_cb(U8G_STATE_MSG_BACKUP_ENV); + u8g->state_cb(U8G_STATE_MSG_RESTORE_U8G); + r = u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_PAGE_NEXT, NULL); + if ( r != 0 ) + { + u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_GET_PAGE_BOX, &(u8g->current_page)); + } + u8g->state_cb(U8G_STATE_MSG_RESTORE_ENV); + return r; +} + +uint8_t u8g_SetContrastLL(u8g_t *u8g, u8g_dev_t *dev, uint8_t contrast) +{ + return u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_CONTRAST, &contrast); +} + +void u8g_DrawPixelLL(u8g_t *u8g, u8g_dev_t *dev, u8g_uint_t x, u8g_uint_t y) +{ + u8g_dev_arg_pixel_t *arg = &(u8g->arg_pixel); + arg->x = x; + arg->y = y; + u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_SET_PIXEL, arg); +} + +void u8g_Draw8PixelLL(u8g_t *u8g, u8g_dev_t *dev, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t pixel) +{ + u8g_dev_arg_pixel_t *arg = &(u8g->arg_pixel); + arg->x = x; + arg->y = y; + arg->dir = dir; + arg->pixel = pixel; + u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_SET_8PIXEL, arg); +} + +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION +uint8_t u8g_IsBBXIntersectionLL(u8g_t *u8g, u8g_dev_t *dev, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) +{ + return u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_IS_BBX_INTERSECTION, &arg); +} +#endif + + + +u8g_uint_t u8g_GetWidthLL(u8g_t *u8g, u8g_dev_t *dev) +{ + u8g_uint_t r; + u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_GET_WIDTH, &r); + return r; +} + +u8g_uint_t u8g_GetHeightLL(u8g_t *u8g, u8g_dev_t *dev) +{ + u8g_uint_t r; + u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_GET_HEIGHT, &r); + return r; +} + +u8g_uint_t u8g_GetModeLL(u8g_t *u8g, u8g_dev_t *dev) +{ + return u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_GET_MODE, NULL); +} + + + +/*====================================================================*/ + +void u8g_UpdateDimension(u8g_t *u8g) +{ + u8g->width = u8g_GetWidthLL(u8g, u8g->dev); + u8g->height = u8g_GetHeightLL(u8g, u8g->dev); + u8g->mode = u8g_GetModeLL(u8g, u8g->dev); + /* 9 Dec 2012: u8g_scale.c requires update of current page */ + u8g_call_dev_fn(u8g, u8g->dev, U8G_DEV_MSG_GET_PAGE_BOX, &(u8g->current_page)); +} + +static void u8g_init_data(u8g_t *u8g) +{ + uint8_t i; + u8g->font = NULL; + u8g->cursor_font = NULL; + u8g->cursor_bg_color = 0; + u8g->cursor_fg_color = 1; + u8g->cursor_encoding = 34; + u8g->cursor_fn = (u8g_draw_cursor_fn)0; + + for( i = 0; i < U8G_PIN_LIST_LEN; i++ ) + u8g->pin_list[i] = U8G_PIN_NONE; + + u8g_SetColorIndex(u8g, 1); + + u8g_SetFontPosBaseline(u8g); + + u8g->font_height_mode = U8G_FONT_HEIGHT_MODE_XTEXT; + u8g->font_ref_ascent = 0; + u8g->font_ref_descent = 0; + u8g->font_line_spacing_factor = 64; /* 64 = 1.0, 77 = 1.2 line spacing factor */ + u8g->line_spacing = 0; + + u8g->state_cb = u8g_state_dummy_cb; + +} + +uint8_t u8g_Begin(u8g_t *u8g) +{ + /* call and init low level driver and com device */ + if ( u8g_InitLL(u8g, u8g->dev) == 0 ) + return 0; + /* fetch width and height from the low level */ + u8g_UpdateDimension(u8g); + return 1; +} + +uint8_t u8g_Init(u8g_t *u8g, u8g_dev_t *dev) +{ + u8g_init_data(u8g); + u8g->dev = dev; + + /* On the Arduino Environment this will lead to two calls to u8g_Begin(), the following line will be called first (by U8glib constructors) */ + /* if - in future releases - this is removed, then still call u8g_UpdateDimension() */ + /* if Arduino call u8g_UpdateDimension else u8g_Begin */ + /* issue 146 */ + return u8g_Begin(u8g); +} + +uint8_t u8g_InitSPI(u8g_t *u8g, u8g_dev_t *dev, uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset) +{ + + /* fill data structure with some suitable values */ + u8g_init_data(u8g); + u8g->dev = dev; + + /* assign user pins */ + u8g->pin_list[U8G_PI_SCK] = sck; + u8g->pin_list[U8G_PI_MOSI] = mosi; + u8g->pin_list[U8G_PI_CS] = cs; + u8g->pin_list[U8G_PI_A0] = a0; + u8g->pin_list[U8G_PI_RESET] = reset; + + /* On the Arduino Environment this will lead to two calls to u8g_Begin(), the following line will be called first (by U8glib constructors) */ + /* if - in future releases - this is removed, then still call u8g_UpdateDimension() */ + /* if Arduino call u8g_UpdateDimension else u8g_Begin */ + /* issue 146 */ + return u8g_Begin(u8g); +} + +uint8_t u8g_InitHWSPI(u8g_t *u8g, u8g_dev_t *dev, uint8_t cs, uint8_t a0, uint8_t reset) +{ + /* fill data structure with some suitable values */ + u8g_init_data(u8g); + u8g->dev = dev; + + + /* assign user pins */ + u8g->pin_list[U8G_PI_CS] = cs; + u8g->pin_list[U8G_PI_A0] = a0; + u8g->pin_list[U8G_PI_RESET] = reset; + + return u8g_Begin(u8g); +} + +uint8_t u8g_InitI2C(u8g_t *u8g, u8g_dev_t *dev, uint8_t options) +{ + /* fill data structure with some suitable values */ + u8g_init_data(u8g); + u8g->dev = dev; + + u8g->pin_list[U8G_PI_I2C_OPTION] = options; + + return u8g_Begin(u8g); +} + + +uint8_t u8g_Init8BitFixedPort(u8g_t *u8g, u8g_dev_t *dev, uint8_t en, uint8_t cs, uint8_t di, uint8_t rw, uint8_t reset) +{ + + /* fill data structure with some suitable values */ + u8g_init_data(u8g); + u8g->dev = dev; + + /* assign user pins */ + + u8g->pin_list[U8G_PI_EN] = en; + u8g->pin_list[U8G_PI_CS] = cs; + u8g->pin_list[U8G_PI_DI] = di; + u8g->pin_list[U8G_PI_RW] = rw; + u8g->pin_list[U8G_PI_RESET] = reset; + + return u8g_Begin(u8g); +} + +uint8_t u8g_Init8Bit(u8g_t *u8g, u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw, uint8_t reset) +{ + + /* fill data structure with some suitable values */ + u8g_init_data(u8g); + u8g->dev = dev; + + /* assign user pins */ + + u8g->pin_list[U8G_PI_D0] = d0; + u8g->pin_list[U8G_PI_D1] = d1; + u8g->pin_list[U8G_PI_D2] = d2; + u8g->pin_list[U8G_PI_D3] = d3; + u8g->pin_list[U8G_PI_D4] = d4; + u8g->pin_list[U8G_PI_D5] = d5; + u8g->pin_list[U8G_PI_D6] = d6; + u8g->pin_list[U8G_PI_D7] = d7; + + u8g->pin_list[U8G_PI_EN] = en; + u8g->pin_list[U8G_PI_CS1] = cs1; + u8g->pin_list[U8G_PI_CS2] = cs2; + u8g->pin_list[U8G_PI_DI] = di; + u8g->pin_list[U8G_PI_RW] = rw; + u8g->pin_list[U8G_PI_RESET] = reset; + + return u8g_Begin(u8g); +} + +/* + + PIN_D0 8 + PIN_D1 9 + PIN_D2 10 + PIN_D3 11 + PIN_D4 4 + PIN_D5 5 + PIN_D6 6 + PIN_D7 7 + + PIN_CS 14 + PIN_A0 15 + PIN_RESET 16 + PIN_WR 17 + PIN_RD 18 + + u8g_InitRW8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd, reset) + u8g_InitRW8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16) + +*/ + +uint8_t u8g_InitRW8Bit(u8g_t *u8g, u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset) +{ + + /* fill data structure with some suitable values */ + u8g_init_data(u8g); + u8g->dev = dev; + + /* assign user pins */ + + u8g->pin_list[U8G_PI_D0] = d0; + u8g->pin_list[U8G_PI_D1] = d1; + u8g->pin_list[U8G_PI_D2] = d2; + u8g->pin_list[U8G_PI_D3] = d3; + u8g->pin_list[U8G_PI_D4] = d4; + u8g->pin_list[U8G_PI_D5] = d5; + u8g->pin_list[U8G_PI_D6] = d6; + u8g->pin_list[U8G_PI_D7] = d7; + + u8g->pin_list[U8G_PI_CS] = cs; + u8g->pin_list[U8G_PI_A0] = a0; + u8g->pin_list[U8G_PI_WR] = wr; + u8g->pin_list[U8G_PI_RD] = rd; + u8g->pin_list[U8G_PI_RESET] = reset; + + return u8g_Begin(u8g); +} + +void u8g_FirstPage(u8g_t *u8g) +{ + u8g_FirstPageLL(u8g, u8g->dev); +} + +uint8_t u8g_NextPage(u8g_t *u8g) +{ + if ( u8g->cursor_fn != (u8g_draw_cursor_fn)0 ) + { + u8g->cursor_fn(u8g); + } + return u8g_NextPageLL(u8g, u8g->dev); +} + +uint8_t u8g_SetContrast(u8g_t *u8g, uint8_t contrast) +{ + return u8g_SetContrastLL(u8g, u8g->dev, contrast); +} + +void u8g_SleepOn(u8g_t *u8g) +{ + u8g_call_dev_fn(u8g, u8g->dev, U8G_DEV_MSG_SLEEP_ON, NULL); +} + +void u8g_SleepOff(u8g_t *u8g) +{ + u8g_call_dev_fn(u8g, u8g->dev, U8G_DEV_MSG_SLEEP_OFF, NULL); +} + + +void u8g_DrawPixel(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y) +{ + u8g_DrawPixelLL(u8g, u8g->dev, x, y); +} + +void u8g_Draw8Pixel(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t pixel) +{ + u8g_Draw8PixelLL(u8g, u8g->dev, x, y, dir, pixel); +} + +/* u8g_IsBBXIntersection() has been moved to u8g_clip.c */ +#ifdef OBSOLETE_CODE +uint8_t u8g_IsBBXIntersection(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) +{ + /* new code */ + u8g_dev_arg_bbx_t arg; + arg.x = x; + arg.y = y; + arg.w = w; + arg.h = h; + return u8g_is_box_bbx_intersection(&(u8g->current_page), &arg); + + /* old code */ + //return u8g_IsBBXIntersectionLL(u8g, u8g->dev, x, y, w, h); +} +#endif + +void u8g_SetColorIndex(u8g_t *u8g, uint8_t idx) +{ + u8g->arg_pixel.color = idx; + /*u8g->color_index = idx; */ /* must be removed */ +} + +uint8_t u8g_GetColorIndex(u8g_t *u8g) +{ + return u8g->arg_pixel.color; +} + +uint8_t u8g_GetDefaultForegroundColor(u8g_t *u8g) +{ + uint8_t mode; + mode = u8g_GetMode(u8g); + if ( mode == U8G_MODE_R3G3B2 ) + return 255; /* white */ + else if ( u8g_GetMode(u8g) == U8G_MODE_GRAY2BIT ) + return 3; /* max intensity */ + else /* if ( u8g.getMode() == U8G_MODE_BW ) */ + return 1; /* pixel on */ + return 1; +} + +void u8g_SetDefaultForegroundColor(u8g_t *u8g) +{ + u8g_SetColorIndex(u8g, u8g_GetDefaultForegroundColor(u8g)); +} + +uint8_t u8g_GetDefaultBackgroundColor(u8g_t *u8g) +{ + return 0; +} + +void u8g_SetDefaultBackgroundColor(u8g_t *u8g) +{ + u8g_SetColorIndex(u8g, u8g_GetDefaultBackgroundColor(u8g)); /* pixel on / black */ +} + +uint8_t u8g_GetDefaultMidColor(u8g_t *u8g) +{ + uint8_t mode; + mode = u8g_GetMode(u8g); + if ( mode == U8G_MODE_R3G3B2 ) + return 0x06d; /* gray: 01101101 */ + else if ( u8g_GetMode(u8g) == U8G_MODE_GRAY2BIT ) + return 1; /* low mid intensity */ + else /* if ( u8g.getMode() == U8G_MODE_BW ) */ + return 1; /* pixel on */ + return 1; /* default */ +} + +void u8g_SetDefaultMidColor(u8g_t *u8g) +{ + u8g_SetColorIndex(u8g, u8g_GetDefaultMidColor(u8g)); +} + + + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_page.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_page.c new file mode 100644 index 0000000000000000000000000000000000000000..1a3eb21ed5726cb528b78d4560c9ae724ba8f07c --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_page.c @@ -0,0 +1,81 @@ +/* + + u8g_page.c + + page helper functions, only called by the dev handler. + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +/* + setup page count structure + conditions: page_height <= total_height +*/ +void u8g_page_Init(u8g_page_t *p, u8g_uint_t page_height, u8g_uint_t total_height ) +{ + p->page_height = page_height; + p->total_height = total_height; + p->page = 0; + u8g_page_First(p); +} + +void u8g_page_First(u8g_page_t *p) +{ + p->page_y0 = 0; + p->page_y1 = p->page_height; + p->page_y1--; + p->page = 0; +} + +uint8_t u8g_page_Next(u8g_page_t * p) +{ + register u8g_uint_t y1; + p->page_y0 += p->page_height; + if ( p->page_y0 >= p->total_height ) + return 0; + p->page++; + y1 = p->page_y1; + y1 += p->page_height; + if ( y1 >= p->total_height ) + { + y1 = p->total_height; + y1--; + } + p->page_y1 = y1; + + return 1; +} + + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb.c new file mode 100644 index 0000000000000000000000000000000000000000..a9464736119a349cab47b47aa38893e1a212ed5e --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb.c @@ -0,0 +1,191 @@ +/* + + u8g_pb.c + + common procedures for the page buffer + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +void u8g_pb_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t *end_ptr = ptr; + end_ptr += b->width; + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + +/* the following procedure does not work. why? Can be checked with descpic */ +/* +void u8g_pb_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t cnt = b->width; + do + { + *ptr++ = 0; + cnt--; + } while( cnt != 0 ); +} +*/ + +/* + intersection assumptions: + a1 <= a2 is always true +*/ + /* + minimized version + ---1----0 1 b1 <= a2 && b1 > b2 + -----1--0 1 b2 >= a1 && b1 > b2 + ---1-1--- 1 b1 <= a2 && b2 >= a1 + */ +/* +uint8_t u8g_pb8v1_IsYIntersection___Old(u8g_pb_t *b, u8g_uint_t v0, u8g_uint_t v1) +{ + uint8_t c0, c1, c; + c0 = v0 <= b->p.page_y1; + c1 = v1 >= b->p.page_y0; + c = v0 > v1; + if ( c0 && c1 ) return 1; + if ( c0 && c ) return 1; + if ( c1 && c ) return 1; + return 0; +} +*/ + +uint8_t u8g_pb_IsYIntersection(u8g_pb_t *pb, u8g_uint_t v0, u8g_uint_t v1) +{ + uint8_t c1, c2, c3, tmp; + c1 = v0 <= pb->p.page_y1; + c2 = v1 >= pb->p.page_y0; + c3 = v0 > v1; + /* + if ( c1 && c2 ) + return 1; + if ( c1 && c3 ) + return 1; + if ( c2 && c3 ) + return 1; + return 0; + */ + + tmp = c1; + c1 &= c2; + c2 &= c3; + c3 &= tmp; + c1 |= c2; + c1 |= c3; + return c1 & 1; +} + + +uint8_t u8g_pb_IsXIntersection(u8g_pb_t *b, u8g_uint_t v0, u8g_uint_t v1) +{ + uint8_t /*c0, c1, */ c2, c3; + /* + conditions: b->p.page_y0 < b->p.page_y1 + there are no restriction on v0 and v1. If v0 > v1, then warp around unsigned is assumed + */ + /* + c0 = v0 < 0; + c1 = v1 < 0; + */ + c2 = v0 > b->width; + c3 = v1 > b->width; + /*if ( c0 && c1 ) return 0;*/ + if ( c2 && c3 ) return 0; + /*if ( c1 && c2 ) return 0;*/ + return 1; +} + +uint8_t u8g_pb_IsIntersection(u8g_pb_t *pb, u8g_dev_arg_bbx_t *bbx) +{ + u8g_uint_t tmp; + + tmp = bbx->y; + tmp += bbx->h; + tmp--; + + if ( u8g_pb_IsYIntersection(pb, bbx->y, tmp) == 0 ) + return 0; + + /* maybe this one can be skiped... probability is very high to have an intersection, so it would be ok to always return 1 */ + tmp = bbx->x; + tmp += bbx->w; + tmp--; + + return u8g_pb_IsXIntersection(pb, bbx->x, tmp); +} + +void u8g_pb_GetPageBox(u8g_pb_t *pb, u8g_box_t *box) +{ + box->x0 = 0; + box->y0 = pb->p.page_y0; + box->x1 = pb->width; + box->x1--; + box->y1 = pb->p.page_y1; +} + + +uint8_t u8g_pb_Is8PixelVisible(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + u8g_uint_t v0, v1; + v0 = arg_pixel->y; + v1 = v0; + switch( arg_pixel->dir ) + { + case 0: + break; + case 1: + v1 += 8; /* this is independent from the page height */ + break; + case 2: + break; + case 3: + v0 -= 8; + break; + } + return u8g_pb_IsYIntersection(b, v0, v1); +} + + + +uint8_t u8g_pb_WriteBuffer(u8g_pb_t *b, u8g_t *u8g, u8g_dev_t *dev) +{ + return u8g_WriteSequence(u8g, dev, b->width, b->buf); +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb14v1.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb14v1.c new file mode 100644 index 0000000000000000000000000000000000000000..dbcd0215f84d10cc702c26c2fe6534f390a10ba8 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb14v1.c @@ -0,0 +1,200 @@ +/* + + u8g_pb14v1.c + + 14bit height monochrom (1 bit) page buffer, + byte has vertical orientation, 7 bits per byte + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" +#include + + +void u8g_pb14v1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb14v1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +void u8g_pb14v1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) U8G_NOINLINE ; +void u8g_pb14v1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) U8G_NOINLINE; + + +void u8g_pb14v1_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t *end_ptr = ptr; + end_ptr += b->width*2; + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + +/* Obsolete, usually set by the init of the structure */ +void u8g_pb14v1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb14v1_Clear(b); +} + +void u8g_pb14v1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + if ( y >= 7 ) + { + ptr += b->width; + y -= 7; + } + mask = 1; + mask <<= y; + ptr += x; + if ( color_index ) + { + *ptr |= mask; + } + else + { + mask ^=0xff; + *ptr &= mask; + } +} + + +void u8g_pb14v1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb14v1_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + +void u8g_pb14v1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb14v1_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + + +void u8g_pb14v1_Set8PixelOpt2(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb14v1_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); + +} + +uint8_t u8g_dev_pb14v1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb14v1_Set8PixelOpt2(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb14v1_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb14v1_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb14v1_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_BW; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb16h1.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb16h1.c new file mode 100644 index 0000000000000000000000000000000000000000..6f1502ed77c2b4afba7ade007e639a0cbd585500 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb16h1.c @@ -0,0 +1,213 @@ +/* + + u8g_pb16h1.c + + 2x 8bit height monochrom (1 bit) page buffer + byte has horizontal orientation + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + total buffer size is limited to 2*256 bytes because of the calculation inside the set pixel procedure + + +*/ + +#include "u8g.h" +#include + + +void u8g_pb16h1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb16h1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +void u8g_pb16h1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) U8G_NOINLINE ; +void u8g_pb16h1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) U8G_NOINLINE; +uint8_t u8g_dev_pb8h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +void u8g_pb16h1_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t *end_ptr = ptr; + end_ptr += b->width*2; + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + + + +void u8g_pb16h1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb16h1_Clear(b); +} + + +/* limitation: total buffer must not exceed 2*256 bytes */ +void u8g_pb16h1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + u8g_uint_t tmp; + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + if ( y >= 8 ) + { + ptr += b->width; + y &= 0x07; + } + tmp = b->width; + tmp >>= 3; + tmp *= (uint8_t)y; + ptr += tmp; + + mask = 0x080; + mask >>= x & 7; + x >>= 3; + ptr += x; + if ( color_index ) + { + *ptr |= mask; + } + else + { + mask ^=0xff; + *ptr &= mask; + } + +} + + +void u8g_pb16h1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb16h1_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + +void u8g_pb16h1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb16h1_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + +void u8g_pb16h1_Set8PixelOpt2(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb16h1_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); +} + + +uint8_t u8g_dev_pb16h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb16h1_Set8PixelOpt2(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb16h1_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb16h1_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb16h1_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_BW; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb16h2.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb16h2.c new file mode 100644 index 0000000000000000000000000000000000000000..d694efbece95e877fa93c02195e98f4445243704 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb16h2.c @@ -0,0 +1,182 @@ +/* + + u8g_pb16h2.c + + 2 bit per pixel page buffer + byte has horizontal orientation + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" +#include + +void u8g_pb16h2_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t *end_ptr = ptr; + + /* two bits per pixel, 16 bits height --> 8 pixel --> 4 pixel per byte */ + end_ptr += b->width; + end_ptr += b->width; + + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + +void u8g_pb16h2_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb16h2_Clear(b); +} + +static void u8g_pb16h2_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +static void u8g_pb16h2_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + register uint16_t tmp; + + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + + tmp = b->width; + tmp >>= 2; + tmp *= (uint8_t)y; + ptr += tmp; + + tmp = x; + tmp >>= 2; + ptr += tmp; + + tmp = x; + tmp &= 3; + tmp <<= 1; + mask = 3; + mask <<= tmp; + mask = ~mask; + color_index &= 3; + color_index <<= tmp; + + *ptr &= mask; + *ptr |= color_index; +} + + +void u8g_pb16h2_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb16h2_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + + +void u8g_pb16h2_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb16h2_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + + + +uint8_t u8g_dev_pb16h2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + { + u8g_pb16h2_Set8PixelStd(pb, (u8g_dev_arg_pixel_t *)arg); + } + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb16h2_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_page_First(&(pb->p)); + u8g_pb16h2_Clear(pb); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb16h2_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_GRAY2BIT; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb16v1.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb16v1.c new file mode 100644 index 0000000000000000000000000000000000000000..774aaec7001f3b12eed2bd980fa2d4dd2e1ec4a6 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb16v1.c @@ -0,0 +1,200 @@ +/* + + u8g_pb16v1.c + + 16bit height monochrom (1 bit) page buffer + byte has vertical orientation + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" +#include + + +void u8g_pb16v1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb16v1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +void u8g_pb16v1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) U8G_NOINLINE ; +void u8g_pb16v1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) U8G_NOINLINE; + + +void u8g_pb16v1_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t *end_ptr = ptr; + end_ptr += b->width*2; + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + +/* Obsolete, usually set by the init of the structure */ +void u8g_pb16v1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb16v1_Clear(b); +} + +void u8g_pb16v1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + if ( y >= 8 ) + { + ptr += b->width; + y &= 0x07; + } + mask = 1; + mask <<= y; + ptr += x; + if ( color_index ) + { + *ptr |= mask; + } + else + { + mask ^=0xff; + *ptr &= mask; + } +} + + +void u8g_pb16v1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb16v1_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + +void u8g_pb16v1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb16v1_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + + +void u8g_pb16v1_Set8PixelOpt2(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb16v1_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); + +} + +uint8_t u8g_dev_pb16v1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb16v1_Set8PixelOpt2(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb16v1_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb16v1_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb16v1_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_BW; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb16v2.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb16v2.c new file mode 100644 index 0000000000000000000000000000000000000000..3d40ddad71b5ce7c838c980d274384ab08f5fb45 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb16v2.c @@ -0,0 +1,172 @@ +/* + + u8g_pb16v2.c + + 16 bit height 2 bit per pixel page buffer + byte has vertical orientation + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" +#include + + +void u8g_pb16v2_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t *end_ptr = ptr; + + /* two bits per pixel, 16 bits height --> 8 pixel --> 4 pixel per byte */ + end_ptr += b->width; + end_ptr += b->width; + + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + +void u8g_pb16v2Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb16v2_Clear(b); +} + +void u8g_pb16v2_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + uint8_t *ptr = b->buf; + y -= b->p.page_y0; + if ( y >= 4 ) + { + ptr += b->width; + } + mask = 0x03; + y &= 0x03; + y <<= 1; + mask <<= y; + mask ^=0xff; + color_index &= 3; + color_index <<= y; + ptr += x; + *ptr &= mask; + *ptr |= color_index; +} + + +void u8g_pb16v2_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb16v2_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + + +void u8g_pb16v2_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb16v2_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + + + +uint8_t u8g_dev_pb16v2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + { + u8g_pb16v2_Set8PixelStd(pb, (u8g_dev_arg_pixel_t *)arg); + } + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb16v2_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb16v2_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb16v2_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_GRAY2BIT; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb32h1.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb32h1.c new file mode 100644 index 0000000000000000000000000000000000000000..6ac100f325c225fd9e8a93b709a1f3cb0085ee58 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb32h1.c @@ -0,0 +1,208 @@ +/* + + u8g_pb32h1.c + + 2x 8bit height monochrom (1 bit) page buffer + byte has horizontal orientation + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + total buffer size is limited to 2*256 bytes because of the calculation inside the set pixel procedure + + +*/ + +#include "u8g.h" +#include + + +void u8g_pb32h1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb32h1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +void u8g_pb32h1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) U8G_NOINLINE ; +void u8g_pb32h1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) U8G_NOINLINE; +uint8_t u8g_dev_pb8h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +void u8g_pb32h1_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t *end_ptr = ptr; + end_ptr += b->width*4; + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + + + +void u8g_pb32h1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb32h1_Clear(b); +} + + +/* limitation: total buffer must not exceed 2*256 bytes */ +void u8g_pb32h1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + uint16_t tmp; + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + tmp = b->width; + tmp >>= 3; + tmp *= y; + ptr += tmp; + + mask = 0x080; + mask >>= x & 7; + x >>= 3; + ptr += x; + if ( color_index ) + { + *ptr |= mask; + } + else + { + mask ^=0xff; + *ptr &= mask; + } + +} + + +void u8g_pb32h1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb32h1_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + +void u8g_pb32h1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb32h1_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + +void u8g_pb32h1_Set8PixelOpt2(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb32h1_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); +} + + +uint8_t u8g_dev_pb32h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb32h1_Set8PixelOpt2(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb32h1_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb32h1_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb32h1_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_BW; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8h1.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8h1.c new file mode 100644 index 0000000000000000000000000000000000000000..8a13e0b7b1a47ee824ac8588067f96b59b633fe1 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8h1.c @@ -0,0 +1,389 @@ +/* + + u8g_pb8h1.c + + 8bit height monochrom (1 bit) page buffer + byte has horizontal orientation + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + total buffer size is limited to 256 bytes because of the calculation inside the set pixel procedure + + 23. Sep 2012: Bug with down procedure, see FPS 1st page --> fixed (bug located in u8g_clip.c) + +*/ + +#include "u8g.h" +#include + +#ifdef __unix__ +#include +#endif + +/* NEW_CODE disabled, because the performance increase was too slow and not worth compared */ +/* to the increase of code size */ +/* #define NEW_CODE */ + +#ifdef __unix__ +void *u8g_buf_lower_limit; +void *u8g_buf_upper_limit; +#endif + +void u8g_pb8h1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb8h1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +void u8g_pb8h1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) U8G_NOINLINE ; +void u8g_pb8h1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) U8G_NOINLINE; +uint8_t u8g_dev_pb8h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + + +#ifdef NEW_CODE +struct u8g_pb_h1_struct +{ + u8g_uint_t x; + u8g_uint_t y; + uint8_t *ptr; + uint8_t mask; + uint8_t line_byte_len; + uint8_t cnt; +}; + +static uint8_t u8g_pb8h1_bitmask[8] = { 0x080, 0x040, 0x020, 0x010, 0x008, 0x004, 0x002, 0x001 }; + +static void u8g_pb8h1_state_right(struct u8g_pb_h1_struct *s) U8G_NOINLINE; +static void u8g_pb8h1_state_right(struct u8g_pb_h1_struct *s) +{ + register u8g_uint_t x; + x = s->x; + x++; + s->x = x; + x &= 7; + s->mask = u8g_pb8h1_bitmask[x]; + if ( x == 0 ) + s->ptr++; +} + +static void u8g_pb8h1_state_left(struct u8g_pb_h1_struct *s) +{ + register u8g_uint_t x; + x = s->x; + x--; + s->x = x; + x &= 7; + s->mask = u8g_pb8h1_bitmask[x]; + if ( x == 7 ) + s->ptr--; +} + +static void u8g_pb8h1_state_down(struct u8g_pb_h1_struct *s) +{ + s->y++; + s->ptr += s->line_byte_len; +} + +static void u8g_pb8h1_state_up(struct u8g_pb_h1_struct *s) +{ + s->y--; + s->ptr -= s->line_byte_len; +} + +static void u8g_pb8h1_state_init(struct u8g_pb_h1_struct *s, u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y) U8G_NOINLINE; +static void u8g_pb8h1_state_init(struct u8g_pb_h1_struct *s, u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y) +{ + u8g_uint_t tmp; + + uint8_t *ptr = b->buf; + + s->x = x; + s->y = y; + + y -= b->p.page_y0; + + tmp = b->width; + tmp >>= 3; + s->line_byte_len = tmp; + + /* assume negative y values, can be down to -7, subtract this from the pointer and add correction of 8 to y */ + ptr -= tmp*8; + y+=8; + /* it is important that the result of tmp*y can be 16 bit value also for 8 bit mode */ + ptr += tmp*y; + + s->mask = u8g_pb8h1_bitmask[x & 7]; + + /* assume negative x values (to -7), subtract 8 pixel from the pointer and add 8 to x */ + ptr--; + x += 8; + x >>= 3; + ptr += x; + s->ptr = ptr; +} + +static void u8g_pb8h1_state_set_pixel(struct u8g_pb_h1_struct *s, uint8_t color_index) U8G_NOINLINE; +static void u8g_pb8h1_state_set_pixel(struct u8g_pb_h1_struct *s, uint8_t color_index) +{ + +#ifdef __unix__ + assert( s->ptr >= u8g_buf_lower_limit ); + assert( s->ptr < u8g_buf_upper_limit ); +#endif + + if ( color_index ) + { + *s->ptr |= s->mask; + } + else + { + uint8_t mask = s->mask; + mask ^=0xff; + *s->ptr &= mask; + } +} +#endif + + +void u8g_pb8h1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb_Clear(b); +} + +/* limitation: total buffer must not exceed 256 bytes */ +void u8g_pb8h1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ +#ifdef NEW_CODE + struct u8g_pb_h1_struct s; + u8g_pb8h1_state_init(&s, b, x, y); + u8g_pb8h1_state_set_pixel(&s, color_index); + +// u8g_pb8h1_state_up(&s); +// if ( s.y > b->p.page_y1 ) +// return; +// if ( s.x > b->width ) +// return; +// u8g_pb8h1_state_set_pixel(&s, color_index); +#else + register uint8_t mask; + u8g_uint_t tmp; + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + tmp = b->width; + tmp >>= 3; + tmp *= (uint8_t)y; + ptr += tmp; + + mask = 0x080; + mask >>= x & 7; + x >>= 3; + ptr += x; + if ( color_index ) + { + *ptr |= mask; + } + else + { + mask ^=0xff; + *ptr &= mask; + } +#endif +} + + +void u8g_pb8h1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb8h1_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + +void u8g_pb8h1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb8h1_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + +void u8g_pb8h1_Set8PixelOpt2(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb8h1_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); +} + +#ifdef NEW_CODE +static void u8g_pb8h1_Set8PixelState(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + struct u8g_pb_h1_struct s; + uint8_t cnt; + u8g_pb8h1_state_init(&s, b, arg_pixel->x, arg_pixel->y); + cnt = 8; + switch( arg_pixel->dir ) + { + case 0: + do + { + if ( s.x < b->width ) + if ( pixel & 128 ) + u8g_pb8h1_state_set_pixel(&s, arg_pixel->color); + u8g_pb8h1_state_right(&s); + pixel <<= 1; + cnt--; + } while( cnt > 0 && pixel != 0 ); + break; + case 1: + do + { + if ( s.y >= b->p.page_y0 ) + if ( s.y <= b->p.page_y1 ) + if ( pixel & 128 ) + u8g_pb8h1_state_set_pixel(&s, arg_pixel->color); + u8g_pb8h1_state_down(&s); + pixel <<= 1; + cnt--; + } while( cnt > 0 && pixel != 0 ); + break; + case 2: + do + { + if ( s.x < b->width ) + if ( pixel & 128 ) + u8g_pb8h1_state_set_pixel(&s, arg_pixel->color); + u8g_pb8h1_state_left(&s); + pixel <<= 1; + cnt--; + } while( cnt > 0 && pixel != 0 ); + break; + case 3: + do + { + if ( s.y >= b->p.page_y0 ) + if ( s.y <= b->p.page_y1 ) + if ( pixel & 128 ) + u8g_pb8h1_state_set_pixel(&s, arg_pixel->color); + u8g_pb8h1_state_up(&s); + pixel <<= 1; + cnt--; + } while( cnt > 0 && pixel != 0 ); + break; + } +} +#endif + +uint8_t u8g_dev_pb8h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: +#ifdef NEW_CODE + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb8h1_Set8PixelState(pb, (u8g_dev_arg_pixel_t *)arg); +#else + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb8h1_Set8PixelOpt2(pb, (u8g_dev_arg_pixel_t *)arg); +#endif + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb8h1_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_BW; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8h1f.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8h1f.c new file mode 100644 index 0000000000000000000000000000000000000000..ffc90c2a3df4fa889d031a97e845afd1b0323cfe --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8h1f.c @@ -0,0 +1,194 @@ +/* + + u8g_pb8h1f.c + + 8bit height monochrom (1 bit) page buffer + byte has horizontal orientation, same as u8g_pb8h1, but byte is flipped + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + total buffer size is limited to 256 bytes because of the calculation inside the set pixel procedure + + +*/ + +#include "u8g.h" +#include + + +void u8g_pb8h1f_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb8h1f_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +void u8g_pb8h1f_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) U8G_NOINLINE ; +void u8g_pb8h1f_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) U8G_NOINLINE; +uint8_t u8g_dev_pb8h1f_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + + +void u8g_pb8h1f_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb_Clear(b); +} + +/* limitation: total buffer must not exceed 256 bytes, 20 nov 2012: extended to >256 bytes */ +void u8g_pb8h1f_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + /*register uint8_t mask, tmp;*/ + register uint8_t mask; + register u8g_uint_t tmp; + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + tmp = b->width >> 3; + tmp *= (uint8_t)y; + ptr += tmp; + + mask = 1; + mask <<= x & 7; + x >>= 3; + ptr += x; + if ( color_index ) + { + *ptr |= mask; + } + else + { + mask ^=0xff; + *ptr &= mask; + } +} + + +void u8g_pb8h1f_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb8h1f_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + +void u8g_pb8h1f_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb8h1f_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + +void u8g_pb8h1f_Set8PixelOpt2(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb8h1f_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); +} + + +uint8_t u8g_dev_pb8h1f_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb8h1f_Set8PixelOpt2(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb8h1f_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_BW; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8h2.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8h2.c new file mode 100644 index 0000000000000000000000000000000000000000..0e37f211f717ba2b0a761157c63824be5b175363 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8h2.c @@ -0,0 +1,167 @@ +/* + + u8g_pb8h2.c + + 8bit height 2 bit per pixel page buffer + byte has horizontal orientation + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" +#include + +void u8g_pb8h2_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb_Clear(b); +} + +static void u8g_pb8h2_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +static void u8g_pb8h2_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + register uint16_t tmp; + + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + + tmp = b->width; + tmp >>= 2; + tmp *= (uint8_t)y; + ptr += tmp; + + tmp = x; + tmp >>= 2; + ptr += tmp; + + tmp = x; + tmp &= 3; + tmp <<= 1; + mask = 3; + mask <<= tmp; + mask = ~mask; + color_index &= 3; + color_index <<= tmp; + + *ptr &= mask; + *ptr |= color_index; +} + + +void u8g_pb8h2_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb8h2_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + + +void u8g_pb8h2_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb8h2_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + + + +uint8_t u8g_dev_pb8h2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + { + u8g_pb8h2_Set8PixelStd(pb, (u8g_dev_arg_pixel_t *)arg); + } + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb8h2_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_GRAY2BIT; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8h8.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8h8.c new file mode 100644 index 0000000000000000000000000000000000000000..5753645d1d26f9d58cabddba4d5d706746f95a96 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8h8.c @@ -0,0 +1,179 @@ +/* + + u8g_pb8h8.c + + 8 bits per pixel, horizontal + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +struct _u8g_pb_t +{ + u8g_page_t p; + u8g_uint_t width; + void *buf; +}; +typedef struct _u8g_pb_t u8g_pb_t; + + +uint8_t u8g_index_color_8h8_buf[WIDTH*PAGE_HEIGHT] U8G_NOCOMMON ; +u8g_pb_t u8g_index_color_8h8_pb = { {PAGE_HEIGHT, HEIGHT, 0, 0, 0}, WIDTH, u8g_index_color_8h8_buff}; +u8g_dev_t name = { dev_fn, &u8g_index_color_8h8_pb, com_fn } + +*/ + +#include "u8g.h" + +#define WIDTH_BITS 7 +#define WIDTH (1<buf; + uint8_t *end_ptr = ptr; + uint8_t cnt = b->p.page_height; + do + { + end_ptr += b->width; + cnt--; + } while( cnt > 0 ); + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + + +void u8g_pb8h8_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb8h8_Clear(b); +} + +static void u8g_pb8h8_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + uint16_t tmp; + uint8_t *ptr = b->buf; + y -= b->p.page_y0; + tmp = y; + tmp *= b->width; + tmp += x; + ptr += tmp; + *ptr = color_index; +} + +void u8g_pb8h8_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb8h8_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + + +void u8g_pb8h8_Set8Pixel(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb8h8_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); +} + + +uint8_t u8g_dev_pb8h8_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb8h8_Set8Pixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb8h8_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb8h8_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb8h8_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_R3G3B2; + } + return 1; +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8v1.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8v1.c new file mode 100644 index 0000000000000000000000000000000000000000..37352fd11eb2fb5d6b1487901319a064ba16ff84 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8v1.c @@ -0,0 +1,184 @@ +/* + + u8g_pb8v1.c + + 8bit height monochrom (1 bit) page buffer + byte has vertical orientation + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" +#include + + +void u8g_pb8v1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb8v1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +void u8g_pb8v1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) U8G_NOINLINE ; +void u8g_pb8v1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) U8G_NOINLINE; + +/* Obsolete, usually set by the init of the structure */ +void u8g_pb8v1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb_Clear(b); +} + +void u8g_pb8v1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + mask = 1; + y &= 0x07; + mask <<= y; + ptr += x; + if ( color_index ) + { + *ptr |= mask; + } + else + { + mask ^=0xff; + *ptr &= mask; + } +} + + +void u8g_pb8v1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb8v1_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + +void u8g_pb8v1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb8v1_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + + +void u8g_pb8v1_Set8PixelOpt2(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb8v1_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); + +} + +uint8_t u8g_dev_pb8v1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb8v1_Set8PixelOpt2(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb8v1_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_BW; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8v2.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8v2.c new file mode 100644 index 0000000000000000000000000000000000000000..3656511dbcf457903bbead0ae8a5d02805502b10 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_pb8v2.c @@ -0,0 +1,153 @@ +/* + + u8g_pb8v2.c + + 8bit height 2 bit per pixel page buffer + byte has vertical orientation + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" +#include + +void u8g_pb8v2_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb_Clear(b); +} + +void u8g_pb8v2_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + uint8_t *ptr = b->buf; + y -= b->p.page_y0; + mask = 0x03; + y &= 0x03; + y <<= 1; + mask <<= y; + mask ^=0xff; + color_index &= 3; + color_index <<= y; + ptr += x; + *ptr &= mask; + *ptr |= color_index; +} + + +void u8g_pb8v2_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb8v2_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + + +void u8g_pb8v2_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb8v2_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); + +} + + + +uint8_t u8g_dev_pb8v2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + { + u8g_pb8v2_Set8PixelStd(pb, (u8g_dev_arg_pixel_t *)arg); + } + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb8v2_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_GRAY2BIT; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_rect.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_rect.c new file mode 100644 index 0000000000000000000000000000000000000000..139a43a24a867e7e534550980f980ae660bb3222 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_rect.c @@ -0,0 +1,232 @@ +/* + + u8g_rect.c + + U8G high level interface for horizontal and vertical things + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +void u8g_draw_hline(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w) +{ + uint8_t pixel = 0x0ff; + while( w >= 8 ) + { + u8g_Draw8Pixel(u8g, x, y, 0, pixel); + w-=8; + x+=8; + } + if ( w != 0 ) + { + w ^=7; + w++; + pixel <<= w&7; + u8g_Draw8Pixel(u8g, x, y, 0, pixel); + } +} + +void u8g_draw_vline(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t h) +{ + uint8_t pixel = 0x0ff; + while( h >= 8 ) + { + u8g_Draw8Pixel(u8g, x, y, 1, pixel); + h-=8; + y+=8; + } + if ( h != 0 ) + { + h ^=7; + h++; + pixel <<= h&7; + u8g_Draw8Pixel(u8g, x, y, 1, pixel); + } +} + +void u8g_DrawHLine(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w) +{ + if ( u8g_IsBBXIntersection(u8g, x, y, w, 1) == 0 ) + return; + u8g_draw_hline(u8g, x, y, w); +} + +void u8g_DrawVLine(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w) +{ + if ( u8g_IsBBXIntersection(u8g, x, y, 1, w) == 0 ) + return; + u8g_draw_vline(u8g, x, y, w); +} + +/* restrictions: w > 0 && h > 0 */ +void u8g_DrawFrame(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) +{ + u8g_uint_t xtmp = x; + + if ( u8g_IsBBXIntersection(u8g, x, y, w, h) == 0 ) + return; + + + u8g_draw_hline(u8g, x, y, w); + u8g_draw_vline(u8g, x, y, h); + x+=w; + x--; + u8g_draw_vline(u8g, x, y, h); + y+=h; + y--; + u8g_draw_hline(u8g, xtmp, y, w); +} + +void u8g_draw_box(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) +{ + do + { + u8g_draw_hline(u8g, x, y, w); + y++; + h--; + } while( h != 0 ); +} + +/* restrictions: h > 0 */ +void u8g_DrawBox(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) +{ + if ( u8g_IsBBXIntersection(u8g, x, y, w, h) == 0 ) + return; + u8g_draw_box(u8g, x, y, w, h); +} + + +void u8g_DrawRFrame(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, u8g_uint_t r) +{ + u8g_uint_t xl, yu; + + if ( u8g_IsBBXIntersection(u8g, x, y, w, h) == 0 ) + return; + + xl = x; + xl += r; + yu = y; + yu += r; + + { + u8g_uint_t yl, xr; + + xr = x; + xr += w; + xr -= r; + xr -= 1; + + yl = y; + yl += h; + yl -= r; + yl -= 1; + + u8g_draw_circle(u8g, xl, yu, r, U8G_DRAW_UPPER_LEFT); + u8g_draw_circle(u8g, xr, yu, r, U8G_DRAW_UPPER_RIGHT); + u8g_draw_circle(u8g, xl, yl, r, U8G_DRAW_LOWER_LEFT); + u8g_draw_circle(u8g, xr, yl, r, U8G_DRAW_LOWER_RIGHT); + } + + { + u8g_uint_t ww, hh; + + ww = w; + ww -= r; + ww -= r; + ww -= 2; + hh = h; + hh -= r; + hh -= r; + hh -= 2; + + xl++; + yu++; + h--; + w--; + u8g_draw_hline(u8g, xl, y, ww); + u8g_draw_hline(u8g, xl, y+h, ww); + u8g_draw_vline(u8g, x, yu, hh); + u8g_draw_vline(u8g, x+w, yu, hh); + } +} + +void u8g_DrawRBox(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, u8g_uint_t r) +{ + u8g_uint_t xl, yu; + u8g_uint_t yl, xr; + + if ( u8g_IsBBXIntersection(u8g, x, y, w, h) == 0 ) + return; + + xl = x; + xl += r; + yu = y; + yu += r; + + xr = x; + xr += w; + xr -= r; + xr -= 1; + + yl = y; + yl += h; + yl -= r; + yl -= 1; + + u8g_draw_disc(u8g, xl, yu, r, U8G_DRAW_UPPER_LEFT); + u8g_draw_disc(u8g, xr, yu, r, U8G_DRAW_UPPER_RIGHT); + u8g_draw_disc(u8g, xl, yl, r, U8G_DRAW_LOWER_LEFT); + u8g_draw_disc(u8g, xr, yl, r, U8G_DRAW_LOWER_RIGHT); + + { + u8g_uint_t ww, hh; + + ww = w; + ww -= r; + ww -= r; + ww -= 2; + hh = h; + hh -= r; + hh -= r; + hh -= 2; + + xl++; + yu++; + h--; + u8g_draw_box(u8g, xl, y, ww, r+1); + u8g_draw_box(u8g, xl, yl, ww, r+1); + //u8g_draw_hline(u8g, xl, y+h, ww); + u8g_draw_box(u8g, x, yu, w, hh); + //u8g_draw_vline(u8g, x+w, yu, hh); + } +} diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_rot.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_rot.c new file mode 100644 index 0000000000000000000000000000000000000000..c581104cb2420609d8244e0ab5dbd781b9a8a18e --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_rot.c @@ -0,0 +1,398 @@ +/* + + u8g_rot.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +uint8_t u8g_dev_rot90_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); +uint8_t u8g_dev_rot180_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); +uint8_t u8g_dev_rot270_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +u8g_dev_t u8g_dev_rot = { u8g_dev_rot90_fn, NULL, NULL }; + + +void u8g_UndoRotation(u8g_t *u8g) +{ + if ( u8g->dev != &u8g_dev_rot ) + return; + u8g->dev = u8g_dev_rot.dev_mem; + u8g_UpdateDimension(u8g); +} + +void u8g_SetRot90(u8g_t *u8g) +{ + if ( u8g->dev != &u8g_dev_rot ) + { + u8g_dev_rot.dev_mem = u8g->dev; + u8g->dev = &u8g_dev_rot; + } + u8g_dev_rot.dev_fn = u8g_dev_rot90_fn; + u8g_UpdateDimension(u8g); +} + +void u8g_SetRot180(u8g_t *u8g) +{ + if ( u8g->dev != &u8g_dev_rot ) + { + u8g_dev_rot.dev_mem = u8g->dev; + u8g->dev = &u8g_dev_rot; + } + u8g_dev_rot.dev_fn = u8g_dev_rot180_fn; + u8g_UpdateDimension(u8g); +} + +void u8g_SetRot270(u8g_t *u8g) +{ + if ( u8g->dev != &u8g_dev_rot ) + { + u8g_dev_rot.dev_mem = u8g->dev; + u8g->dev = &u8g_dev_rot; + } + u8g_dev_rot.dev_fn = u8g_dev_rot270_fn; + u8g_UpdateDimension(u8g); +} + +uint8_t u8g_dev_rot90_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_dev_t *rotation_chain = (u8g_dev_t *)(dev->dev_mem); + switch(msg) + { + default: + /* + case U8G_DEV_MSG_INIT: + case U8G_DEV_MSG_STOP: + case U8G_DEV_MSG_PAGE_FIRST: + case U8G_DEV_MSG_PAGE_NEXT: + case U8G_DEV_MSG_SET_COLOR_INDEX: + case U8G_DEV_MSG_SET_XY_CB: + */ + return u8g_call_dev_fn(u8g, rotation_chain, msg, arg); +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + { + u8g_dev_arg_bbx_t *bbx = (u8g_dev_arg_bbx_t *)arg; + u8g_uint_t x, y, tmp; + + /* transform the reference point */ + y = bbx->x; + x = u8g->height; + /* x = u8g_GetWidthLL(u8g, rotation_chain); */ + x -= bbx->y; + x--; + + /* adjust point to be the uppler left corner again */ + x -= bbx->h; + x++; + + /* swap box dimensions */ + tmp = bbx->w; + bbx->w = bbx->h; + bbx->h = tmp; + + /* store x,y */ + bbx->x = x; + bbx->y = y; + } + return u8g_call_dev_fn(u8g, rotation_chain, msg, arg); +#endif /* U8G_DEV_MSG_IS_BBX_INTERSECTION */ + case U8G_DEV_MSG_GET_PAGE_BOX: + /* get page size from next device in the chain */ + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + //printf("pre x: %3d..%3d y: %3d..%3d ", ((u8g_box_t *)arg)->x0, ((u8g_box_t *)arg)->x1, ((u8g_box_t *)arg)->y0, ((u8g_box_t *)arg)->y1); + { + u8g_box_t new_box; + //new_box.x0 = u8g_GetHeightLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->y1 - 1; + //new_box.x1 = u8g_GetHeightLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->y0 - 1; + + new_box.x0 = ((u8g_box_t *)arg)->y0; + new_box.x1 = ((u8g_box_t *)arg)->y1; + new_box.y0 = ((u8g_box_t *)arg)->x0; + new_box.y1 = ((u8g_box_t *)arg)->x1; + *((u8g_box_t *)arg) = new_box; + //printf("post x: %3d..%3d y: %3d..%3d\n", ((u8g_box_t *)arg)->x0, ((u8g_box_t *)arg)->x1, ((u8g_box_t *)arg)->y0, ((u8g_box_t *)arg)->y1); + } + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = u8g_GetHeightLL(u8g,rotation_chain); + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = u8g_GetWidthLL(u8g, rotation_chain); + break; + case U8G_DEV_MSG_SET_PIXEL: + { + u8g_uint_t x, y; + y = ((u8g_dev_arg_pixel_t *)arg)->x; + x = u8g_GetWidthLL(u8g, rotation_chain); + x -= ((u8g_dev_arg_pixel_t *)arg)->y; + x--; + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + } + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + break; + case U8G_DEV_MSG_SET_8PIXEL: + { + u8g_uint_t x, y; + //uint16_t x,y; + y = ((u8g_dev_arg_pixel_t *)arg)->x; + x = u8g_GetWidthLL(u8g, rotation_chain); + x -= ((u8g_dev_arg_pixel_t *)arg)->y; + x--; + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + ((u8g_dev_arg_pixel_t *)arg)->dir+=1; + ((u8g_dev_arg_pixel_t *)arg)->dir &= 3; + } + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + break; + } + return 1; +} + +uint8_t u8g_dev_rot180_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_dev_t *rotation_chain = (u8g_dev_t *)(dev->dev_mem); + switch(msg) + { + default: + /* + case U8G_DEV_MSG_INIT: + case U8G_DEV_MSG_STOP: + case U8G_DEV_MSG_PAGE_FIRST: + case U8G_DEV_MSG_PAGE_NEXT: + case U8G_DEV_MSG_SET_COLOR_INDEX: + case U8G_DEV_MSG_SET_XY_CB: + */ + return u8g_call_dev_fn(u8g, rotation_chain, msg, arg); +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + { + u8g_dev_arg_bbx_t *bbx = (u8g_dev_arg_bbx_t *)arg; + u8g_uint_t x, y; + + /* transform the reference point */ + //y = u8g_GetHeightLL(u8g, rotation_chain); + y = u8g->height; + y -= bbx->y; + y--; + + //x = u8g_GetWidthLL(u8g, rotation_chain); + x = u8g->width; + x -= bbx->x; + x--; + + /* adjust point to be the uppler left corner again */ + y -= bbx->h; + y++; + + x -= bbx->w; + x++; + + /* store x,y */ + bbx->x = x; + bbx->y = y; + } + return u8g_call_dev_fn(u8g, rotation_chain, msg, arg); +#endif /* U8G_DEV_MSG_IS_BBX_INTERSECTION */ + case U8G_DEV_MSG_GET_PAGE_BOX: + /* get page size from next device in the chain */ + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + //printf("pre x: %3d..%3d y: %3d..%3d ", ((u8g_box_t *)arg)->x0, ((u8g_box_t *)arg)->x1, ((u8g_box_t *)arg)->y0, ((u8g_box_t *)arg)->y1); + { + u8g_box_t new_box; + + new_box.x0 = u8g_GetWidthLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->x1 - 1; + new_box.x1 = u8g_GetWidthLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->x0 - 1; + new_box.y0 = u8g_GetHeightLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->y1 - 1; + new_box.y1 = u8g_GetHeightLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->y0 - 1; + *((u8g_box_t *)arg) = new_box; + //printf("post x: %3d..%3d y: %3d..%3d\n", ((u8g_box_t *)arg)->x0, ((u8g_box_t *)arg)->x1, ((u8g_box_t *)arg)->y0, ((u8g_box_t *)arg)->y1); + } + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = u8g_GetWidthLL(u8g,rotation_chain); + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = u8g_GetHeightLL(u8g, rotation_chain); + break; + case U8G_DEV_MSG_SET_PIXEL: + { + u8g_uint_t x, y; + + y = u8g_GetHeightLL(u8g, rotation_chain); + y -= ((u8g_dev_arg_pixel_t *)arg)->y; + y--; + + x = u8g_GetWidthLL(u8g, rotation_chain); + x -= ((u8g_dev_arg_pixel_t *)arg)->x; + x--; + + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + } + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + break; + case U8G_DEV_MSG_SET_8PIXEL: + { + u8g_uint_t x, y; + + y = u8g_GetHeightLL(u8g, rotation_chain); + y -= ((u8g_dev_arg_pixel_t *)arg)->y; + y--; + + x = u8g_GetWidthLL(u8g, rotation_chain); + x -= ((u8g_dev_arg_pixel_t *)arg)->x; + x--; + + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + ((u8g_dev_arg_pixel_t *)arg)->dir+=2; + ((u8g_dev_arg_pixel_t *)arg)->dir &= 3; + } + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + break; + } + return 1; +} + +uint8_t u8g_dev_rot270_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_dev_t *rotation_chain = (u8g_dev_t *)(dev->dev_mem); + switch(msg) + { + default: + /* + case U8G_DEV_MSG_INIT: + case U8G_DEV_MSG_STOP: + case U8G_DEV_MSG_PAGE_FIRST: + case U8G_DEV_MSG_PAGE_NEXT: + case U8G_DEV_MSG_SET_COLOR_INDEX: + case U8G_DEV_MSG_SET_XY_CB: + */ + return u8g_call_dev_fn(u8g, rotation_chain, msg, arg); +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + { + u8g_dev_arg_bbx_t *bbx = (u8g_dev_arg_bbx_t *)arg; + u8g_uint_t x, y, tmp; + + /* transform the reference point */ + x = bbx->y; + + y = u8g->width; + /* y = u8g_GetHeightLL(u8g, rotation_chain); */ + y -= bbx->x; + y--; + + /* adjust point to be the uppler left corner again */ + y -= bbx->w; + y++; + + /* swap box dimensions */ + tmp = bbx->w; + bbx->w = bbx->h; + bbx->h = tmp; + + /* store x,y */ + bbx->x = x; + bbx->y = y; + } + return u8g_call_dev_fn(u8g, rotation_chain, msg, arg); +#endif /* U8G_DEV_MSG_IS_BBX_INTERSECTION */ + case U8G_DEV_MSG_GET_PAGE_BOX: + /* get page size from next device in the chain */ + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + //printf("pre x: %3d..%3d y: %3d..%3d ", ((u8g_box_t *)arg)->x0, ((u8g_box_t *)arg)->x1, ((u8g_box_t *)arg)->y0, ((u8g_box_t *)arg)->y1); + { + u8g_box_t new_box; + + new_box.x0 = u8g_GetHeightLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->y1 - 1; + new_box.x1 = u8g_GetHeightLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->y0 - 1; + new_box.y0 = u8g_GetWidthLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->x1 - 1; + new_box.y1 = u8g_GetWidthLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->x0 - 1; + *((u8g_box_t *)arg) = new_box; + //printf("post x: %3d..%3d y: %3d..%3d\n", ((u8g_box_t *)arg)->x0, ((u8g_box_t *)arg)->x1, ((u8g_box_t *)arg)->y0, ((u8g_box_t *)arg)->y1); + } + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = u8g_GetHeightLL(u8g,rotation_chain); + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = u8g_GetWidthLL(u8g, rotation_chain); + break; + case U8G_DEV_MSG_SET_PIXEL: + { + u8g_uint_t x, y; + x = ((u8g_dev_arg_pixel_t *)arg)->y; + + y = u8g_GetHeightLL(u8g, rotation_chain); + y -= ((u8g_dev_arg_pixel_t *)arg)->x; + y--; + + /* + x = u8g_GetWidthLL(u8g, rotation_chain); + x -= ((u8g_dev_arg_pixel_t *)arg)->y; + x--; + */ + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + } + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + break; + case U8G_DEV_MSG_SET_8PIXEL: + { + u8g_uint_t x, y; + x = ((u8g_dev_arg_pixel_t *)arg)->y; + + y = u8g_GetHeightLL(u8g, rotation_chain); + y -= ((u8g_dev_arg_pixel_t *)arg)->x; + y--; + + /* + x = u8g_GetWidthLL(u8g, rotation_chain); + x -= ((u8g_dev_arg_pixel_t *)arg)->y; + x--; + */ + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + ((u8g_dev_arg_pixel_t *)arg)->dir+=3; + ((u8g_dev_arg_pixel_t *)arg)->dir &= 3; + } + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + break; + } + return 1; +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_scale.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_scale.c new file mode 100644 index 0000000000000000000000000000000000000000..e5b4b634fb5882c85525d37ba8ba042bcc54dbd3 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_scale.c @@ -0,0 +1,188 @@ +/* + + u8g_scale.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Scale screen by some constant factors. Usefull for making bigger fonts wiht less + memory consumption + +*/ + +#include "u8g.h" + +uint8_t u8g_dev_scale_2x2_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + + +u8g_dev_t u8g_dev_scale = { u8g_dev_scale_2x2_fn, NULL, NULL }; + +void u8g_UndoScale(u8g_t *u8g) +{ + if ( u8g->dev != &u8g_dev_scale ) + return; + u8g->dev = u8g_dev_scale.dev_mem; + u8g_UpdateDimension(u8g); +} + +void u8g_SetScale2x2(u8g_t *u8g) +{ + if ( u8g->dev != &u8g_dev_scale ) + { + u8g_dev_scale.dev_mem = u8g->dev; + u8g->dev = &u8g_dev_scale; + } + u8g_dev_scale.dev_fn = u8g_dev_scale_2x2_fn; + u8g_UpdateDimension(u8g); +} + + +uint8_t u8g_dev_scale_2x2_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_dev_t *chain = (u8g_dev_t *)(dev->dev_mem); + uint8_t pixel; + uint16_t scaled_pixel; + uint8_t i; + uint8_t dir; + u8g_uint_t x, y, xx,yy; + + switch(msg) + { + default: + return u8g_call_dev_fn(u8g, chain, msg, arg); + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = u8g_GetWidthLL(u8g, chain) / 2; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = u8g_GetHeightLL(u8g, chain) / 2; + break; + case U8G_DEV_MSG_GET_PAGE_BOX: + /* get page size from next device in the chain */ + u8g_call_dev_fn(u8g, chain, msg, arg); + ((u8g_box_t *)arg)->x0 /= 2; + ((u8g_box_t *)arg)->x1 /= 2; + ((u8g_box_t *)arg)->y0 /= 2; + ((u8g_box_t *)arg)->y1 /= 2; + return 1; + case U8G_DEV_MSG_SET_PIXEL: + x = ((u8g_dev_arg_pixel_t *)arg)->x; + x *= 2; + y = ((u8g_dev_arg_pixel_t *)arg)->y; + y *= 2; + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + u8g_call_dev_fn(u8g, chain, msg, arg); + x++; + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + u8g_call_dev_fn(u8g, chain, msg, arg); + y++; + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + u8g_call_dev_fn(u8g, chain, msg, arg); + x--; + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + u8g_call_dev_fn(u8g, chain, msg, arg); + break; + case U8G_DEV_MSG_SET_8PIXEL: + pixel = ((u8g_dev_arg_pixel_t *)arg)->pixel; + dir = ((u8g_dev_arg_pixel_t *)arg)->dir; + scaled_pixel = 0; + for( i = 0; i < 8; i++ ) + { + scaled_pixel<<=2; + if ( pixel & 128 ) + { + scaled_pixel |= 3; + } + pixel<<=1; + } + x = ((u8g_dev_arg_pixel_t *)arg)->x; + x *= 2; + xx = x; + y = ((u8g_dev_arg_pixel_t *)arg)->y; + y *= 2; + yy = y; + if ( ((u8g_dev_arg_pixel_t *)arg)->dir & 1 ) + { + xx++; + } + else + { + yy++; + } + + ((u8g_dev_arg_pixel_t *)arg)->pixel = scaled_pixel>>8; + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + ((u8g_dev_arg_pixel_t *)arg)->dir = dir; + u8g_call_dev_fn(u8g, chain, msg, arg); + + + ((u8g_dev_arg_pixel_t *)arg)->x = xx; + ((u8g_dev_arg_pixel_t *)arg)->y = yy; + ((u8g_dev_arg_pixel_t *)arg)->dir = dir; + u8g_call_dev_fn(u8g, chain, msg, arg); + + ((u8g_dev_arg_pixel_t *)arg)->pixel = scaled_pixel&255; + //((u8g_dev_arg_pixel_t *)arg)->pixel = 0x00; + switch(dir) + { + case 0: + x+=8; + xx+=8; + break; + case 1: + y+=8; + yy+=8; + break; + case 2: + x-=8; + xx-=8; + break; + case 3: + y-=8; + yy-=8; + break; + } + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + ((u8g_dev_arg_pixel_t *)arg)->dir = dir; + u8g_call_dev_fn(u8g, chain, msg, arg); + + ((u8g_dev_arg_pixel_t *)arg)->x = xx; + ((u8g_dev_arg_pixel_t *)arg)->y = yy; + ((u8g_dev_arg_pixel_t *)arg)->dir = dir; + u8g_call_dev_fn(u8g, chain, msg, arg); + break; + } + return 1; +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_state.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_state.c new file mode 100644 index 0000000000000000000000000000000000000000..3ae3eee4a8be2303df742ced54ba104fc92ea788 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_state.c @@ -0,0 +1,102 @@ +/* + + u8g_state.c + + backup and restore hardware state + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + state callback: backup env U8G_STATE_MSG_BACKUP_ENV + device callback: DEV_MSG_INIT + state callback: backup u8g U8G_STATE_MSG_BACKUP_U8G + state callback: restore env U8G_STATE_MSG_RESTORE_ENV + + state callback: backup env U8G_STATE_MSG_BACKUP_ENV + state callback: retore u8g U8G_STATE_MSG_RESTORE_U8G + DEV_MSG_PAGE_FIRST or DEV_MSG_PAGE_NEXT + state callback: restore env U8G_STATE_MSG_RESTORE_ENV + +*/ + +#include +#include "u8g.h" + +void u8g_state_dummy_cb(uint8_t msg) +{ + /* the dummy procedure does nothing */ +} + +void u8g_SetHardwareBackup(u8g_t *u8g, u8g_state_cb backup_cb) +{ + u8g->state_cb = backup_cb; + /* in most cases the init message was already sent, so this will backup the */ + /* current u8g state */ + backup_cb(U8G_STATE_MSG_BACKUP_U8G); +} + + +/*===============================================================*/ +/* AVR */ + +#if defined(__AVR__) +#define U8G_ATMEGA_HW_SPI + +/* remove the definition for attiny */ +#if __AVR_ARCH__ == 2 +#undef U8G_ATMEGA_HW_SPI +#endif +#if __AVR_ARCH__ == 25 +#undef U8G_ATMEGA_HW_SPI +#endif +#endif + +#if defined(U8G_ATMEGA_HW_SPI) +#include +static uint8_t u8g_state_avr_spi_memory[2]; + +void u8g_backup_avr_spi(uint8_t msg) +{ + if ( U8G_STATE_MSG_IS_BACKUP(msg) ) + { + u8g_state_avr_spi_memory[U8G_STATE_MSG_GET_IDX(msg)] = SPCR; + } + else + { + uint8_t tmp = SREG; + cli(); + SPCR = 0; + SPCR = u8g_state_avr_spi_memory[U8G_STATE_MSG_GET_IDX(msg)]; + SREG = tmp; + } +} + +#endif + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_u16toa.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_u16toa.c new file mode 100644 index 0000000000000000000000000000000000000000..f1d1803cfacbba3a04eaf04d10d87f0a34c38c86 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_u16toa.c @@ -0,0 +1,68 @@ +/* + + u8g_u16toa.c + + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "u8g.h" + +const char *u8g_u16toap(char * dest, uint16_t v) +{ + uint8_t pos; + uint8_t d; + uint16_t c; + c = 10000; + for( pos = 0; pos < 5; pos++ ) + { + d = '0'; + while( v >= c ) + { + v -= c; + d++; + } + dest[pos] = d; + c /= 10; + } + dest[5] = '\0'; + return dest; +} + +/* v = value, d = number of digits */ +const char *u8g_u16toa(uint16_t v, uint8_t d) +{ + static char buf[6]; + d = 5-d; + return u8g_u16toap(buf, v) + d; +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_u8toa.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_u8toa.c new file mode 100644 index 0000000000000000000000000000000000000000..f3a2c06fafbfa7fc51c295d46a8531d1f25a7c7d --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_u8toa.c @@ -0,0 +1,68 @@ +/* + + u8g_u8toa.c + + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "u8g.h" + +static const unsigned char u8g_u8toa_tab[3] = { 100, 10, 1 } ; +const char *u8g_u8toap(char * dest, uint8_t v) +{ + uint8_t pos; + uint8_t d; + uint8_t c; + for( pos = 0; pos < 3; pos++ ) + { + d = '0'; + c = *(u8g_u8toa_tab+pos); + while( v >= c ) + { + v -= c; + d++; + } + dest[pos] = d; + } + dest[3] = '\0'; + return dest; +} + +/* v = value, d = number of digits */ +const char *u8g_u8toa(uint8_t v, uint8_t d) +{ + static char buf[4]; + d = 3-d; + return u8g_u8toap(buf, v) + d; +} + diff --git a/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_virtual_screen.c b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_virtual_screen.c new file mode 100644 index 0000000000000000000000000000000000000000..8000506b4374db98174a8ca1be463e7f843a60d8 --- /dev/null +++ b/ArduinoAddons/Arduino_0.xx/libraries/U8glib/utility/u8g_virtual_screen.c @@ -0,0 +1,145 @@ +/* + + u8g_virtual_screen.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +struct _u8g_vs_t +{ + u8g_uint_t x; + u8g_uint_t y; + u8g_t *u8g; +}; +typedef struct _u8g_vs_t u8g_vs_t; + +#define U8g_VS_MAX 4 +uint8_t u8g_vs_cnt = 0; +u8g_vs_t u8g_vs_list[U8g_VS_MAX]; +uint8_t u8g_vs_current; +u8g_uint_t u8g_vs_width; +u8g_uint_t u8g_vs_height; + +uint8_t u8g_dev_vs_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + default: + { + uint8_t i; + for( i = 0; i < u8g_vs_cnt; i++ ) + { + u8g_call_dev_fn(u8g_vs_list[i].u8g, u8g_vs_list[i].u8g->dev, msg, arg); + } + } + return 1; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_vs_current = 0; + if ( u8g_vs_cnt != 0 ) + return u8g_call_dev_fn(u8g_vs_list[u8g_vs_current].u8g, u8g_vs_list[u8g_vs_current].u8g->dev, msg, arg); + return 0; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t ret = 0; + if ( u8g_vs_cnt != 0 ) + ret = u8g_call_dev_fn(u8g_vs_list[u8g_vs_current].u8g, u8g_vs_list[u8g_vs_current].u8g->dev, msg, arg); + if ( ret != 0 ) + return ret; + u8g_vs_current++; /* next device */ + if ( u8g_vs_current >= u8g_vs_cnt ) /* reached end? */ + return 0; + return u8g_call_dev_fn(u8g_vs_list[u8g_vs_current].u8g, u8g_vs_list[u8g_vs_current].u8g->dev, U8G_DEV_MSG_PAGE_FIRST, arg); + } + return 0; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = u8g_vs_width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = u8g_vs_height; + break; + case U8G_DEV_MSG_GET_PAGE_BOX: + if ( u8g_vs_current < u8g_vs_cnt ) + { + u8g_call_dev_fn(u8g_vs_list[u8g_vs_current].u8g, u8g_vs_list[u8g_vs_current].u8g->dev, msg, arg); + ((u8g_box_t *)arg)->x0 += u8g_vs_list[u8g_vs_current].x; + ((u8g_box_t *)arg)->x1 += u8g_vs_list[u8g_vs_current].x; + ((u8g_box_t *)arg)->y0 += u8g_vs_list[u8g_vs_current].y; + ((u8g_box_t *)arg)->y1 += u8g_vs_list[u8g_vs_current].y; + } + else + { + ((u8g_box_t *)arg)->x0 = 0; + ((u8g_box_t *)arg)->x1 = 0; + ((u8g_box_t *)arg)->y0 = 0; + ((u8g_box_t *)arg)->y1 = 0; + } + return 1; + case U8G_DEV_MSG_SET_PIXEL: + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_vs_current < u8g_vs_cnt ) + { + ((u8g_dev_arg_pixel_t *)arg)->x -= u8g_vs_list[u8g_vs_current].x; + ((u8g_dev_arg_pixel_t *)arg)->y -= u8g_vs_list[u8g_vs_current].y; + return u8g_call_dev_fn(u8g_vs_list[u8g_vs_current].u8g, u8g_vs_list[u8g_vs_current].u8g->dev, msg, arg); + } + break; + } + return 1; +} + + + +u8g_dev_t u8g_dev_vs = { u8g_dev_vs_fn, NULL, NULL }; + +void u8g_SetVirtualScreenDimension(u8g_t *vs_u8g, u8g_uint_t width, u8g_uint_t height) +{ + if ( vs_u8g->dev != &u8g_dev_vs ) + return; /* abort if there is no a virtual screen device */ + u8g_vs_width = width; + u8g_vs_height = height; +} + +uint8_t u8g_AddToVirtualScreen(u8g_t *vs_u8g, u8g_uint_t x, u8g_uint_t y, u8g_t *child_u8g) +{ + if ( vs_u8g->dev != &u8g_dev_vs ) + return 0; /* abort if there is no a virtual screen device */ + if ( u8g_vs_cnt >= U8g_VS_MAX ) + return 0; /* maximum number of child u8g's reached */ + u8g_vs_list[u8g_vs_cnt].u8g = child_u8g; + u8g_vs_list[u8g_vs_cnt].x = x; + u8g_vs_list[u8g_vs_cnt].y = y; + u8g_vs_cnt++; + return 1; +} + diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/boards.txt b/ArduinoAddons/Arduino_1.x.x/Sanguino/boards.txt similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/boards.txt rename to ArduinoAddons/Arduino_1.x.x/Sanguino/boards.txt diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega/ATmegaBOOT_168.c b/ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega/ATmegaBOOT_168.c similarity index 96% rename from ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega/ATmegaBOOT_168.c rename to ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega/ATmegaBOOT_168.c index 9354a78cdd926d85feb7b60e8b32eb2fd00e58e9..1df3f0311393c35a7600c2165b023a740b2e9f44 100644 --- a/ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega/ATmegaBOOT_168.c +++ b/ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega/ATmegaBOOT_168.c @@ -301,7 +301,7 @@ int main(void) WDTCSR = 0; // Check if the WDT was used to reset, in which case we dont bootload and skip straight to the code. woot. - if (! (ch & _BV(EXTRF))) // if its a not an external reset... + if (! (ch & _BV(EXTRF))) // if it's a not an external reset... app_start(); // skip bootloader #else asm volatile("nop\n\t"); diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega/ATmegaBOOT_168_atmega1284p.hex b/ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega/ATmegaBOOT_168_atmega1284p.hex similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega/ATmegaBOOT_168_atmega1284p.hex rename to ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega/ATmegaBOOT_168_atmega1284p.hex diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega/ATmegaBOOT_168_atmega1284p_8m.hex b/ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega/ATmegaBOOT_168_atmega1284p_8m.hex similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega/ATmegaBOOT_168_atmega1284p_8m.hex rename to ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega/ATmegaBOOT_168_atmega1284p_8m.hex diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega/ATmegaBOOT_168_atmega644p.hex b/ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega/ATmegaBOOT_168_atmega644p.hex similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega/ATmegaBOOT_168_atmega644p.hex rename to ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega/ATmegaBOOT_168_atmega644p.hex diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega/Makefile b/ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega/Makefile similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega/Makefile rename to ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega/Makefile diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega644p/ATmegaBOOT.c b/ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega644p/ATmegaBOOT.c similarity index 99% rename from ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega644p/ATmegaBOOT.c rename to ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega644p/ATmegaBOOT.c index fd19d14ae6f69b9aa6fb264bba4954f77d6f25d4..51bd8d5f84214528530c223b36815cf0b65b6aa0 100644 --- a/ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega644p/ATmegaBOOT.c +++ b/ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega644p/ATmegaBOOT.c @@ -172,7 +172,7 @@ int main(void) WDTCSR = 0; // Check if the WDT was used to reset, in which case we dont bootload and skip straight to the code. woot. - if (! (ch & _BV(EXTRF))) // if its a not an external reset... + if (! (ch & _BV(EXTRF))) // if it's a not an external reset... app_start(); // skip bootloader #endif diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega644p/ATmegaBOOT.c.tst b/ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega644p/ATmegaBOOT.c.tst similarity index 99% rename from ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega644p/ATmegaBOOT.c.tst rename to ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega644p/ATmegaBOOT.c.tst index 733542d4af0dc98abd72459f59530f6c38383386..7e0adffae21f5ff8e14fd6aea3407ec7175be874 100644 --- a/ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega644p/ATmegaBOOT.c.tst +++ b/ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega644p/ATmegaBOOT.c.tst @@ -172,7 +172,7 @@ int main(void) WDTCSR = 0; // Check if the WDT was used to reset, in which case we dont bootload and skip straight to the code. woot. - if (! (ch & _BV(EXTRF))) // if its a not an external reset... + if (! (ch & _BV(EXTRF))) // if it's a not an external reset... app_start(); // skip bootloader #endif diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega644p/ATmegaBOOT_644P.elf b/ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega644p/ATmegaBOOT_644P.elf similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega644p/ATmegaBOOT_644P.elf rename to ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega644p/ATmegaBOOT_644P.elf diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega644p/ATmegaBOOT_644P.hex b/ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega644p/ATmegaBOOT_644P.hex similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega644p/ATmegaBOOT_644P.hex rename to ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega644p/ATmegaBOOT_644P.hex diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega644p/Makefile b/ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega644p/Makefile similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega644p/Makefile rename to ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega644p/Makefile diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega644p/README.txt b/ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega644p/README.txt similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/bootloaders/atmega644p/README.txt rename to ArduinoAddons/Arduino_1.x.x/Sanguino/bootloaders/atmega644p/README.txt diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Arduino.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Arduino.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Arduino.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Arduino.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/CDC.cpp b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/CDC.cpp similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/CDC.cpp rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/CDC.cpp diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Client.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Client.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Client.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Client.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/HID.cpp b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/HID.cpp similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/HID.cpp rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/HID.cpp diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/HardwareSerial.cpp b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/HardwareSerial.cpp similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/HardwareSerial.cpp rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/HardwareSerial.cpp diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/HardwareSerial.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/HardwareSerial.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/HardwareSerial.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/HardwareSerial.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/IPAddress.cpp b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/IPAddress.cpp similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/IPAddress.cpp rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/IPAddress.cpp diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/IPAddress.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/IPAddress.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/IPAddress.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/IPAddress.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Platform.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Platform.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Platform.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Platform.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Print.cpp b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Print.cpp similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Print.cpp rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Print.cpp diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Print.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Print.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Print.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Print.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Printable.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Printable.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Printable.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Printable.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Server.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Server.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Server.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Server.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Stream.cpp b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Stream.cpp similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Stream.cpp rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Stream.cpp diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Stream.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Stream.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Stream.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Stream.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Tone.cpp b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Tone.cpp similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Tone.cpp rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Tone.cpp diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/USBAPI.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/USBAPI.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/USBAPI.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/USBAPI.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/USBCore.cpp b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/USBCore.cpp similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/USBCore.cpp rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/USBCore.cpp diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/USBCore.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/USBCore.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/USBCore.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/USBCore.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/USBDesc.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/USBDesc.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/USBDesc.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/USBDesc.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Udp.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Udp.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/Udp.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/Udp.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/WCharacter.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/WCharacter.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/WCharacter.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/WCharacter.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/WInterrupts.c b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/WInterrupts.c similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/WInterrupts.c rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/WInterrupts.c diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/WMath.cpp b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/WMath.cpp similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/WMath.cpp rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/WMath.cpp diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/WString.cpp b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/WString.cpp similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/WString.cpp rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/WString.cpp diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/WString.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/WString.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/WString.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/WString.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/binary.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/binary.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/binary.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/binary.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/main.cpp b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/main.cpp similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/main.cpp rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/main.cpp diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/new.cpp b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/new.cpp similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/new.cpp rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/new.cpp diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/new.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/new.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/new.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/new.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/wiring.c b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/wiring.c similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/wiring.c rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/wiring.c diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/wiring_analog.c b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/wiring_analog.c similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/wiring_analog.c rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/wiring_analog.c diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/wiring_digital.c b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/wiring_digital.c similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/wiring_digital.c rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/wiring_digital.c diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/wiring_private.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/wiring_private.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/wiring_private.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/wiring_private.h diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/wiring_pulse.c b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/wiring_pulse.c similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/wiring_pulse.c rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/wiring_pulse.c diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/wiring_shift.c b/ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/wiring_shift.c similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/cores/arduino/wiring_shift.c rename to ArduinoAddons/Arduino_1.x.x/Sanguino/cores/arduino/wiring_shift.c diff --git a/ArduinoAddons/Arduino_1.x.x/sanguino/variants/standard/pins_arduino.h b/ArduinoAddons/Arduino_1.x.x/Sanguino/variants/standard/pins_arduino.h similarity index 100% rename from ArduinoAddons/Arduino_1.x.x/sanguino/variants/standard/pins_arduino.h rename to ArduinoAddons/Arduino_1.x.x/Sanguino/variants/standard/pins_arduino.h diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/LiquidCrystal/LiquidCrystal.cpp b/ArduinoAddons/Arduino_1.x.x/libraries/LiquidCrystal/LiquidCrystal.cpp index 0653487d70c13cdee75cf3c99083dc9c255d5f55..61efca46e021227724d8a0aed9b60c0027ebeac4 100644 --- a/ArduinoAddons/Arduino_1.x.x/libraries/LiquidCrystal/LiquidCrystal.cpp +++ b/ArduinoAddons/Arduino_1.x.x/libraries/LiquidCrystal/LiquidCrystal.cpp @@ -21,7 +21,7 @@ // S = 0; No shift // // Note, however, that resetting the Arduino doesn't reset the LCD, so we -// can't assume that its in that state when a sketch starts (and the +// can't assume that it's in that state when a sketch starts (and the // LiquidCrystal constructor is called). LiquidCrystal::LiquidCrystal(uint8_t rs, uint8_t rw, uint8_t enable, diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/ChangeLog b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/ChangeLog new file mode 100644 index 0000000000000000000000000000000000000000..1ee88d6cfc74c754c9de6a3aa64d15146569e9b6 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/ChangeLog @@ -0,0 +1,114 @@ + +u8glib ChangeLog + +2012-01-01 v0.01 Oliver Kraus + * first beta release for Arduino IDE with simple SSD1325 support +2012-01-04 v0.02 Oliver Kraus + * support for some more display types +2012-01-07 v0.03 Oliver Kraus + * fixed some bugs, added more examples +2012-01-07 v0.04 Oliver Kraus + * single font file +2012-01-08 v0.05 Oliver Kraus + * Cleanup + * More examples + * SSD1325 graylevel support +2012-01-15 v0.06 Oliver Kraus + * LM6063 support +2012-01-17 v0.07 Oliver Kraus + * LM6063 support (update) +2012-01-19 v0.08 Oliver Kraus + * ST7920 beta device +2012-01-21 v0.09 Oliver Kraus + * ST7920 fixed (192x32) + * fixed bug in com layer if pins are none + * str reference position +2012-01-22 v0.10 Oliver Kraus + * Experimental LM6059 +2012-01-24 v0.11 Oliver Kraus + * new st7920 memory layout for 128x64 lcd + * experimental st7920 SPI +2012-01-25 v0.12 Oliver Kraus + * fixed st7920 memory layout for 128x64 lcd + * ST7920 SPI performance improvement +2012-01-27 v0.13 Oliver Kraus + * LM6059 (Adafruit Display) fixed +2012-02-01 v0.14 Oliver Kraus + * undoRotation() + * setRot..() can be used without restrictions + * Class U8GLIB derived from Print class. New function "print" + * Fixed memory index bug in the page management procedures +2012-02-12 v1.00 Oliver Kraus + * XBM support + * F() macro support + * str-rotation commands support ref-height and ref-position +2012-03-17 v1.02 Oliver Kraus + * U8GLIB_ST7687_C144MVGD spi experimental + * U8GLIB_LC7981_160X80 8bit + * Intersection test for frame and box procedures + * 4L double memory architecture + * setContrast infrastructure implemented, but not available for all devices + * drawCircle, drawDisc + * Bugfix for drawStr270 + * New examples: Chess (ported from dogm128 lib) and GraphicsTest +2012-03-31 v1.03 Oliver Kraus + * experimental parallel mode atmega + * more unifont code pages + * double memory, for NHD OLED and DOGXL160 + * "Menu" example + * drawLine +2012-04-13 v1.04 Oliver Kraus + * Adjust U8grelease: Same version number with AVR and Arduino variant +2012-06-10 v1.05 Oliver Kraus + * m2icon font + * experimental lc7981_240x64 device + * experimental ssd1306 + * experimental ssd1322 + * Hardware state backup/restore procedure +2012-06-15 v1.06 Oliver Kraus + * SBN1661 (SED1520?) support + * SSD1306 support + * U8G_PROGMEM bugfix +2012-07-04 v1.07 Oliver Kraus + * Added Makefiles for AVR release (issue 77) + * Fixed examples for Arduino Environment (issue 78) +2012-10-02 v1.08 Oliver Kraus + * Improved delay calculation for strobe pulse (issue 20) + * Support Chipkit (issue 39) + * Improved speed for ST7920 parallel mode (issue 79) + * Overall speed optimization (new page intersection algorithm) + * Support for Displays Newhaven NHD-C12864, CrystalFontz GFAG20232, Seeedstudio 96x96 OLED + * Added SPI support for ST7920 with plain AVR (issue 85) + * Add more LC7981 devices +2012-12-23 v1.09 Oliver Kraus + * Support for Displaytech 64128n + * Support for MINI12864 + * HW SPI for ST7920 + * Add delay after sending a byte with (ST7920 com) + * Support ATTiny + * Support I2C for SSD1306 + * bdf2u8g, Windows executable released + * LC7981 320x64 + * Scalue up: u8g::setScale2x2 + * Added more bitmap fonts + * u8g::drawRBox(), u8g::drawRFrame() + * Support for CFAG20232 (st7920_202x32) + * Fixed ST7920 SW SPI for ChipKit + * Support for tls8204 +2013-02-02 v1.10 Oliver Kraus + * Support for SSD1309 + * Support for NHD-C12832A1Z + * Bugfix: Fixed reset controll in parallel modes + * Bugfix: Fixed calculation of cursor position + * Bugfix: ST7920 parallel mode +2013-03-2 v1.11 Oliver Kraus + * Support for T6963 + * Support for Arduino Due + * Sleep Mode + * 4x mode for ST7920 + * New C++ interface for ST7920 + + + + + \ No newline at end of file diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/INSTALL.TXT b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/INSTALL.TXT new file mode 100644 index 0000000000000000000000000000000000000000..d87f97128d29fd197a57c2e924746e28e0a36be7 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/INSTALL.TXT @@ -0,0 +1,21 @@ + +U8GLIB +http://code.google.com/p/u8glib/ + + +Install instructions for the Arduino environment. + + 1. Unzip u8glib_arduino_vX.XX.zip into the "libraries" folder + 2. Start Arduino IDE + +Install instructions for the Chipkit (Arduino) environment. + + 1. cd /libraries + 2. unzip u8glib_arduino_vX.XX.zip + 3. cd ///hardware/pic32/libraries + 4. again: u8glib_arduino_vX.XX.zip + 5. Open hardware/pic32/cores/pic32/Print.h + Remove line + #define BYTE 0 + from the file, use PRINT_BYTE instead of BYTE. + \ No newline at end of file diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/U8glib.cpp b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/U8glib.cpp new file mode 100644 index 0000000000000000000000000000000000000000..aa870b11472553b895d7e0670010be425e1bb10c --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/U8glib.cpp @@ -0,0 +1,80 @@ +/* + + U8glib.cpp + + C++ Interface + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#include "U8glib.h" + + + +uint8_t U8GLIB::initSPI(u8g_dev_t *dev, uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset) +{ + prepare(); + return u8g_InitSPI(&u8g, dev, sck, mosi, cs, a0, reset); +} + +uint8_t U8GLIB::initHWSPI(u8g_dev_t *dev, uint8_t cs, uint8_t a0, uint8_t reset) +{ + prepare(); + return u8g_InitHWSPI(&u8g, dev, cs, a0, reset); +} + +uint8_t U8GLIB::initI2C(u8g_dev_t *dev, uint8_t options) +{ + prepare(); + return u8g_InitI2C(&u8g, dev, options); +} + +uint8_t U8GLIB::init8Bit(u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw, uint8_t reset) +{ + prepare(); + return u8g_Init8Bit(&u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset); +} + +uint8_t U8GLIB::init8BitFixedPort(u8g_dev_t *dev, uint8_t en, uint8_t cs, uint8_t di, uint8_t rw, uint8_t reset) +{ + prepare(); + return u8g_Init8BitFixedPort(&u8g, dev, en, cs, di, rw, reset); +} + +uint8_t U8GLIB::initRW8Bit(u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset) +{ + prepare(); + return u8g_InitRW8Bit(&u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd, reset); +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/U8glib.h b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/U8glib.h new file mode 100644 index 0000000000000000000000000000000000000000..a77444425d991a1a02186d475fd52c822ab47970 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/U8glib.h @@ -0,0 +1,826 @@ +/* + + U8glib.h + + C++ Interface + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#ifndef _CPP_U8GLIB +#define _CPP_U8GLIB + +#include +#include "utility/u8g.h" + + +class U8GLIB : public Print +{ + private: + u8g_t u8g; + u8g_uint_t tx, ty; // current position for the Print base class procedures + uint8_t is_begin; + + void prepare(void) { tx = 0; ty = 0; is_begin = 0; } + void cbegin(void) { if ( is_begin == 0 ) { is_begin = 1; u8g_Begin(&u8g); } } + uint8_t initSPI(u8g_dev_t *dev, uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE); + uint8_t initHWSPI(u8g_dev_t *dev, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE); + uint8_t initI2C(u8g_dev_t *dev, uint8_t options); + protected: + uint8_t init8BitFixedPort(u8g_dev_t *dev, uint8_t en, uint8_t cs, uint8_t di, uint8_t rw, uint8_t reset); + private: + uint8_t init8Bit(u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE); + uint8_t initRW8Bit(u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset); + public: + + /* constructor */ + U8GLIB(void) + { } + U8GLIB(u8g_dev_t *dev) + { prepare(); u8g_Init(&u8g, dev); } + U8GLIB(u8g_dev_t *dev, uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset) + { initSPI(dev, sck, mosi, cs, a0, reset); } + U8GLIB(u8g_dev_t *dev, uint8_t cs, uint8_t a0, uint8_t reset) + { initHWSPI(dev, cs, a0, reset); } + U8GLIB(u8g_dev_t *dev, uint8_t options) + { initI2C(dev, options); } + U8GLIB(u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw, uint8_t reset) + { init8Bit(dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset); } + U8GLIB(u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset) + { initRW8Bit(dev, d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd, reset); } + + uint8_t begin(void) { is_begin = 1; return u8g_Begin(&u8g); } + + void setPrintPos(u8g_uint_t x, u8g_uint_t y) { tx = x; ty = y; } + u8g_t *getU8g(void) { return &u8g; } + + + /* implementation of the write interface to the print class */ +#if defined(ARDUINO) && ARDUINO >= 100 + size_t write(uint8_t c) { tx += u8g_DrawGlyph(&u8g, tx, ty, c); return 1;} +#else + void write(uint8_t c) { tx += u8g_DrawGlyph(&u8g, tx, ty, c); } +#endif + + /* screen rotation */ + void undoRotation(void) { u8g_UndoRotation(&u8g); } + void setRot90(void) { u8g_SetRot90(&u8g); } + void setRot180(void) { u8g_SetRot180(&u8g); } + void setRot270(void) { u8g_SetRot270(&u8g); } + + /* screen scaling */ + void undoScale(void) { u8g_UndoScale(&u8g); } + void setScale2x2(void) { u8g_SetScale2x2(&u8g); } + + /* picture loop */ + void firstPage(void) { cbegin(); u8g_FirstPage(&u8g); } + uint8_t nextPage(void) { return u8g_NextPage(&u8g); } + + /* system commands */ + uint8_t setContrast(uint8_t contrast) { cbegin(); return u8g_SetContrast(&u8g, contrast); } + void sleepOn(void) { u8g_SleepOn(&u8g); } + void sleepOff(void) { u8g_SleepOff(&u8g); } + + /* graphic primitives */ + void setColorIndex(uint8_t color_index) { u8g_SetColorIndex(&u8g, color_index); } + uint8_t getColorIndex(void) { return u8g_GetColorIndex(&u8g); } + + void setDefaultForegroundColor(void) { u8g_SetDefaultForegroundColor(&u8g); } + void setDefaultBackgroundColor(void) { u8g_SetDefaultBackgroundColor(&u8g); } + void setDefaultMidColor(void) { u8g_SetDefaultMidColor(&u8g); } + + u8g_uint_t getWidth(void) { return u8g_GetWidth(&u8g); } + u8g_uint_t getHeight(void) { return u8g_GetHeight(&u8g); } + uint8_t getMode(void) { return u8g_GetMode(&u8g); } + + void drawPixel(u8g_uint_t x, u8g_uint_t y) { return u8g_DrawPixel(&u8g, x, y); } + void drawHLine(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w) { u8g_DrawHLine(&u8g, x, y, w); } + void drawVLine(u8g_uint_t x, u8g_uint_t y, u8g_uint_t h) { u8g_DrawVLine(&u8g, x, y, h); } + void drawLine(u8g_uint_t x1, u8g_uint_t y1, u8g_uint_t x2, u8g_uint_t y2) { u8g_DrawLine(&u8g, x1, y1, x2, y2); } + + void drawFrame(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) { u8g_DrawFrame(&u8g, x, y, w, h); } + void drawRFrame(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, u8g_uint_t r) { u8g_DrawRFrame(&u8g, x, y, w, h,r); } + void drawBox(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) { u8g_DrawBox(&u8g, x, y, w, h); } + void drawRBox(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, u8g_uint_t r) { u8g_DrawRBox(&u8g, x, y, w, h,r); } + + void drawCircle(u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t opt = U8G_DRAW_ALL) { u8g_DrawCircle(&u8g, x0, y0, rad, opt); } + void drawDisc(u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t opt = U8G_DRAW_ALL) { u8g_DrawDisc(&u8g, x0, y0, rad, opt); } + + /* bitmap handling */ + void drawBitmap(u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, u8g_uint_t h, const uint8_t *bitmap) + { u8g_DrawBitmap(&u8g, x, y, cnt, h, bitmap); } + void drawBitmapP(u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, u8g_uint_t h, const u8g_pgm_uint8_t *bitmap) + { u8g_DrawBitmapP(&u8g, x, y, cnt, h, bitmap); } + + void drawXBM(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, const uint8_t *bitmap) + { u8g_DrawXBM(&u8g, x, y, w, h, bitmap); } + void drawXBMP(u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, const u8g_pgm_uint8_t *bitmap) + { u8g_DrawXBMP(&u8g, x, y, w, h, bitmap); } + + + /* font handling */ + void setFont(const u8g_fntpgm_uint8_t *font) {u8g_SetFont(&u8g, font); } + int8_t getFontAscent(void) { return u8g_GetFontAscent(&u8g); } + int8_t getFontDescent(void) { return u8g_GetFontDescent(&u8g); } + int8_t getFontLineSpacing(void) { return u8g_GetFontLineSpacing(&u8g); } + + u8g_uint_t drawStr(u8g_uint_t x, u8g_uint_t y, const char *s) { return u8g_DrawStr(&u8g, x, y, s); } + u8g_uint_t drawStr90(u8g_uint_t x, u8g_uint_t y, const char *s) { return u8g_DrawStr90(&u8g, x, y, s); } + u8g_uint_t drawStr180(u8g_uint_t x, u8g_uint_t y, const char *s) { return u8g_DrawStr180(&u8g, x, y, s); } + u8g_uint_t drawStr270(u8g_uint_t x, u8g_uint_t y, const char *s) { return u8g_DrawStr270(&u8g, x, y, s); } + u8g_uint_t drawStrP(u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) { return u8g_DrawStrP(&u8g, x, y, s); } + u8g_uint_t drawStr90P(u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) { return u8g_DrawStr90P(&u8g, x, y, s); } + u8g_uint_t drawStr180P(u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) { return u8g_DrawStr180P(&u8g, x, y, s); } + u8g_uint_t drawStr270P(u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) { return u8g_DrawStr270P(&u8g, x, y, s); } + + void setFontPosBaseline(void) { u8g_SetFontPosBaseline(&u8g); } + void setFontPosBottom(void) { u8g_SetFontPosBottom(&u8g); } + void setFontPosCenter(void) { u8g_SetFontPosCenter(&u8g); } + void setFontPosTop(void) { u8g_SetFontPosTop(&u8g); } + + void setFontRefHeightText(void) { u8g_SetFontRefHeightText(&u8g); } + void setFontRefHeightExtendedText(void) { u8g_SetFontRefHeightExtendedText(&u8g); } + void setFontRefHeightAll(void) { u8g_SetFontRefHeightAll(&u8g); } + void setFontLineSpacingFactor(uint8_t factor) { u8g_SetFontLineSpacingFactor(&u8g, factor); } + + + u8g_uint_t getStrPixelWidth(const char *s) { return u8g_GetStrPixelWidth(&u8g, s); } + u8g_uint_t getStrPixelWidthP(u8g_pgm_uint8_t *s) { return u8g_GetStrPixelWidthP(&u8g, s); } + u8g_uint_t getStrWidth(const char *s) { return u8g_GetStrWidth(&u8g, s); } + u8g_uint_t getStrWidthP(u8g_pgm_uint8_t *s) { return u8g_GetStrWidthP(&u8g, s); } + + void setHardwareBackup(u8g_state_cb backup_cb) { u8g_SetHardwareBackup(&u8g, backup_cb); } + +#if defined(ARDUINO) && ARDUINO >= 100 + // support for the F() macro + + u8g_uint_t drawStr(u8g_uint_t x, u8g_uint_t y, const __FlashStringHelper *s) { return u8g_DrawStrP(&u8g, x, y, (u8g_pgm_uint8_t *)s); } + u8g_uint_t drawStr90(u8g_uint_t x, u8g_uint_t y, const __FlashStringHelper *s) { return u8g_DrawStr90P(&u8g, x, y, (u8g_pgm_uint8_t *)s); } + u8g_uint_t drawStr180(u8g_uint_t x, u8g_uint_t y, const __FlashStringHelper *s) { return u8g_DrawStr180P(&u8g, x, y, (u8g_pgm_uint8_t *)s); } + u8g_uint_t drawStr270(u8g_uint_t x, u8g_uint_t y, const __FlashStringHelper *s) { return u8g_DrawStr270P(&u8g, x, y, (u8g_pgm_uint8_t *)s); } + + u8g_uint_t getStrPixelWidth(const __FlashStringHelper *s) { return u8g_GetStrPixelWidthP(&u8g, (u8g_pgm_uint8_t *)s); } + u8g_uint_t getStrWidth(const __FlashStringHelper *s) { return u8g_GetStrWidthP(&u8g, (u8g_pgm_uint8_t *)s); } +#endif + + /* cursor handling */ + void setCursorFont(const u8g_pgm_uint8_t *cursor_font) { u8g_SetCursorFont(&u8g, cursor_font); } + void setCursorStyle(uint8_t encoding) { u8g_SetCursorStyle(&u8g, encoding); } + void setCursorPos(u8g_uint_t cursor_x, u8g_uint_t cursor_y) { u8g_SetCursorPos(&u8g, cursor_x, cursor_y); } + void setCursorColor(uint8_t fg, uint8_t bg) { u8g_SetCursorColor(&u8g, fg, bg); } + void enableCursor(void) { u8g_EnableCursor(&u8g); } + void disableCursor(void) { u8g_DisableCursor(&u8g); } + void drawCursor(void) { u8g_DrawCursor(&u8g); } + + /* virtual screen */ + + void setVirtualScreenDimension(u8g_uint_t width, u8g_uint_t height) { u8g_SetVirtualScreenDimension(&u8g, width, height); } + uint8_t addToVirtualScreen(u8g_uint_t x, u8g_uint_t y, U8GLIB &child_u8g) { return u8g_AddToVirtualScreen(&u8g, x, y, &child_u8g.u8g); } + +}; + + +class U8GLIB_DOGS102 : public U8GLIB +{ + public: + U8GLIB_DOGS102(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1701_dogs102_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_DOGS102(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1701_dogs102_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_MINI12864 : public U8GLIB +{ + public: + U8GLIB_MINI12864(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1701_mini12864_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_MINI12864(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1701_mini12864_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_DOGM132 : public U8GLIB +{ + public: + U8GLIB_DOGM132(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_dogm132_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_DOGM132(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_dogm132_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_NHD_C12832 : public U8GLIB +{ + public: + U8GLIB_NHD_C12832(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_nhd_c12832_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD_C12832(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_nhd_c12832_hw_spi, cs, a0, reset) + { } + U8GLIB_NHD_C12832(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_nhd_c12832_parallel, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, U8G_PIN_NONE, di, rw, reset) + { } +}; + +class U8GLIB_DOGM128 : public U8GLIB +{ + public: + U8GLIB_DOGM128(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_dogm128_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_DOGM128(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_dogm128_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_LM6059 : public U8GLIB +{ + public: + U8GLIB_LM6059(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_lm6059_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_LM6059(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_lm6059_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_LM6063 : public U8GLIB +{ + public: + U8GLIB_LM6063(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_lm6063_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_LM6063(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_lm6063_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_64128N : public U8GLIB +{ + public: + U8GLIB_64128N(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_64128n_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_64128N(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_64128n_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_NHD_C12864 : public U8GLIB +{ + public: + U8GLIB_NHD_C12864(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_nhd_c12864_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD_C12864(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7565_nhd_c12864_hw_spi, cs, a0, reset) + { } +}; + + +class U8GLIB_ST7920_128X64 : public U8GLIB +{ + public: + U8GLIB_ST7920_128X64(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_ST7920_128X64(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_hw_spi, cs, a0, reset) + { } + U8GLIB_ST7920_128X64(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + { } + // U8GLIB_ST7920_128X64(uint8_t cs) + // : U8GLIB(&u8g_dev_st7920_128x64_sw_spi, cs, U8G_PIN_NONE, U8G_PIN_NONE) + // { } +}; + +class U8GLIB_ST7920_128X64_1X : public U8GLIB +{ + public: + U8GLIB_ST7920_128X64_1X(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_sw_spi, sck, mosi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_128X64_1X(uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_hw_spi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_128X64_1X(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, U8G_PIN_NONE, U8G_PIN_NONE, di, rw, reset) // cs1 = cs2 = U8G_PIN_NONE + { } +}; + +class U8GLIB_ST7920_128X64_4X : public U8GLIB +{ + public: + U8GLIB_ST7920_128X64_4X(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_4x_sw_spi, sck, mosi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_128X64_4X(uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_4x_hw_spi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_128X64_4X(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_128x64_4x_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, U8G_PIN_NONE, U8G_PIN_NONE, di, rw, reset) // cs1 = cs2 = U8G_PIN_NONE + { } +}; + + + +class U8GLIB_ST7920_192X32 : public U8GLIB // OBSOLETE, use U8GLIB_ST7920_192X32_1X instead +{ + public: + U8GLIB_ST7920_192X32(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_ST7920_192X32(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_hw_spi, cs, a0, reset) + { } + U8GLIB_ST7920_192X32(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + { } +}; + +class U8GLIB_ST7920_192X32_1X : public U8GLIB +{ + public: + U8GLIB_ST7920_192X32_1X(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_sw_spi, sck, mosi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_192X32_1X(uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_hw_spi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_192X32_1X(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, U8G_PIN_NONE, U8G_PIN_NONE, di, rw, reset) // cs1 = cs2 = U8G_PIN_NONE + { } +}; + +class U8GLIB_ST7920_192X32_4X : public U8GLIB +{ + public: + U8GLIB_ST7920_192X32_4X(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_4x_sw_spi, sck, mosi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_192X32_4X(uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_4x_hw_spi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_192X32_4X(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_192x32_4x_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, U8G_PIN_NONE, U8G_PIN_NONE, di, rw, reset) // cs1 = cs2 = U8G_PIN_NONE + { } +}; + + +class U8GLIB_ST7920_202X32 : public U8GLIB +{ + public: + U8GLIB_ST7920_202X32(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_ST7920_202X32(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_hw_spi, cs, a0, reset) + { } + U8GLIB_ST7920_202X32(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + { } +}; + +class U8GLIB_ST7920_202X32_1X : public U8GLIB +{ + public: + U8GLIB_ST7920_202X32_1X(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_sw_spi, sck, mosi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_202X32_1X(uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_hw_spi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_202X32_1X(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, U8G_PIN_NONE, U8G_PIN_NONE, di, rw, reset) // cs1 = cs2 = U8G_PIN_NONE + { } +}; + +class U8GLIB_ST7920_202X32_4X : public U8GLIB +{ + public: + U8GLIB_ST7920_202X32_4X(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_4x_sw_spi, sck, mosi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_202X32_4X(uint8_t cs, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_4x_hw_spi, cs, U8G_PIN_NONE, reset) // a0 = U8G_PIN_NONE + { } + U8GLIB_ST7920_202X32_4X(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7920_202x32_4x_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, U8G_PIN_NONE, U8G_PIN_NONE, di, rw, reset) // cs1 = cs2 = U8G_PIN_NONE + { } +}; + + +class U8GLIB_LC7981_160X80 : public U8GLIB +{ + public: + U8GLIB_LC7981_160X80(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_lc7981_160x80_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, U8G_PIN_NONE, di, rw, reset) + { } +}; + +class U8GLIB_LC7981_240X64 : public U8GLIB +{ + public: + U8GLIB_LC7981_240X64(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_lc7981_240x64_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, U8G_PIN_NONE, di, rw, reset) + { } +}; + +class U8GLIB_LC7981_240X128 : public U8GLIB +{ + public: + U8GLIB_LC7981_240X128(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_lc7981_240x128_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, U8G_PIN_NONE, di, rw, reset) + { } +}; + +// 16 bit mode required: Remove comment from "#define U8G_16BIT 1" in utility/u8g.h +class U8GLIB_LC7981_320X64 : public U8GLIB +{ + public: + U8GLIB_LC7981_320X64(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_lc7981_320x64_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, U8G_PIN_NONE, di, rw, reset) + { } +}; + + + +class U8GLIB_DOGXL160_BW : public U8GLIB +{ + public: + U8GLIB_DOGXL160_BW(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_bw_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_DOGXL160_BW(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_bw_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_DOGXL160_GR : public U8GLIB +{ + public: + U8GLIB_DOGXL160_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_DOGXL160_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_gr_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_DOGXL160_2X_BW : public U8GLIB +{ + public: + U8GLIB_DOGXL160_2X_BW(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_2x_bw_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_DOGXL160_2X_BW(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_2x_bw_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_DOGXL160_2X_GR : public U8GLIB +{ + public: + U8GLIB_DOGXL160_2X_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_2x_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_DOGXL160_2X_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_uc1610_dogxl160_2x_gr_hw_spi, cs, a0, reset) + { } +}; + + +class U8GLIB_NHD27OLED_BW : public U8GLIB +{ + public: + U8GLIB_NHD27OLED_BW(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_bw_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD27OLED_BW(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_bw_hw_spi, cs, a0, reset) + { } + U8GLIB_NHD27OLED_BW(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_bw_parallel, d0, d1, d2, d3, d4, d5, d6, d7, U8G_PIN_NONE, cs, U8G_PIN_NONE, di, rw, reset) + { } +}; + +class U8GLIB_NHD27OLED_2X_BW : public U8GLIB +{ + public: + U8GLIB_NHD27OLED_2X_BW(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_2x_bw_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD27OLED_2X_BW(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_2x_bw_hw_spi, cs, a0, reset) + { } + U8GLIB_NHD27OLED_2X_BW(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_2x_bw_parallel, d0, d1, d2, d3, d4, d5, d6, d7, U8G_PIN_NONE, cs, U8G_PIN_NONE, di, rw, reset) + { } +}; + +class U8GLIB_NHD31OLED_BW : public U8GLIB +{ + public: + U8GLIB_NHD31OLED_BW(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_bw_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD31OLED_BW(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_bw_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_NHD31OLED_2X_BW : public U8GLIB +{ + public: + U8GLIB_NHD31OLED_2X_BW(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_2x_bw_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD31OLED_2X_BW(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_2x_bw_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_NHD31OLED_GR : public U8GLIB +{ + public: + U8GLIB_NHD31OLED_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD31OLED_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_gr_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_NHD31OLED_2X_GR : public U8GLIB +{ + public: + U8GLIB_NHD31OLED_2X_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_2x_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD31OLED_2X_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1322_nhd31oled_2x_gr_hw_spi, cs, a0, reset) + { } +}; + + +class U8GLIB_SSD1306_128X64 : public U8GLIB +{ + public: + U8GLIB_SSD1306_128X64(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1306_128x64_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_SSD1306_128X64(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1306_128x64_hw_spi, cs, a0, reset) + { } + U8GLIB_SSD1306_128X64(uint8_t options = U8G_I2C_OPT_NONE) + : U8GLIB(&u8g_dev_ssd1306_128x64_i2c, options) + { } + +}; + +class U8GLIB_SSD1309_128X64 : public U8GLIB +{ + public: + U8GLIB_SSD1309_128X64(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1309_128x64_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_SSD1309_128X64(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1309_128x64_hw_spi, cs, a0, reset) + { } + U8GLIB_SSD1309_128X64(uint8_t options = U8G_I2C_OPT_NONE) + : U8GLIB(&u8g_dev_ssd1309_128x64_i2c, options) + { } + +}; + +class U8GLIB_SSD1306_128X32 : public U8GLIB +{ + public: + U8GLIB_SSD1306_128X32(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1306_128x32_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_SSD1306_128X32(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1306_128x32_hw_spi, cs, a0, reset) + { } + U8GLIB_SSD1306_128X32(uint8_t options = U8G_I2C_OPT_NONE) + : U8GLIB(&u8g_dev_ssd1306_128x32_i2c, options) + { } + +}; + + +class U8GLIB_NHD27OLED_GR : public U8GLIB +{ + public: + U8GLIB_NHD27OLED_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD27OLED_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_gr_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_NHD27OLED_2X_GR : public U8GLIB +{ + public: + U8GLIB_NHD27OLED_2X_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_2x_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_NHD27OLED_2X_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1325_nhd27oled_2x_gr_hw_spi, cs, a0, reset) + { } +}; + +class U8GLIB_SSD1327_96X96_GR : public U8GLIB +{ + public: + U8GLIB_SSD1327_96X96_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1327_96x96_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_SSD1327_96X96_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1327_96x96_gr_hw_spi, cs, a0, reset) + { } + U8GLIB_SSD1327_96X96_GR(uint8_t options = U8G_I2C_OPT_NONE) + : U8GLIB(&u8g_dev_ssd1327_96x96_gr_i2c, options) + { } +}; + +class U8GLIB_SSD1327_96X96_2X_GR : public U8GLIB +{ + public: + U8GLIB_SSD1327_96X96_2X_GR(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1327_96x96_2x_gr_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_SSD1327_96X96_2X_GR(uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ssd1327_96x96_2x_gr_hw_spi, cs, a0, reset) + { } + U8GLIB_SSD1327_96X96_2X_GR(uint8_t options = U8G_I2C_OPT_NONE) + : U8GLIB(&u8g_dev_ssd1327_96x96_2x_gr_i2c, options) + { } +}; + +class U8GLIB_PCF8812 : public U8GLIB +{ + public: + U8GLIB_PCF8812(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_pcf8812_96x65_sw_spi, sck, mosi, cs, a0, reset) + { } +}; + +class U8GLIB_PCD8544 : public U8GLIB +{ + public: + U8GLIB_PCD8544(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_pcd8544_84x48_sw_spi, sck, mosi, cs, a0, reset) + { } +}; + +class U8GLIB_TLS8204_84X48 : public U8GLIB +{ + public: + U8GLIB_TLS8204_84X48(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_tls8204_84x48_sw_spi, sck, mosi, cs, a0, reset) + { } +}; + +class U8GLIB_KS0108_128 : public U8GLIB +{ + public: + U8GLIB_KS0108_128(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ks0108_128x64_fast, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + { } +}; + +class U8GLIB_SBN1661_122X32 : public U8GLIB +{ + public: + U8GLIB_SBN1661_122X32(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_sbn1661_122x32, d0, d1, d2, d3, d4, d5, d6, d7, U8G_PIN_NONE, cs1, cs2, di, rw, reset) + { } +}; + +class U8GLIB_T6963_240X128 : public U8GLIB +{ + public: + U8GLIB_T6963_240X128(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_t6963_240x128_8bit, d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd, reset) + { } +}; + +class U8GLIB_T6963_240X64 : public U8GLIB +{ + public: + U8GLIB_T6963_240X64(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_t6963_240x64_8bit, d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd, reset) + { } +}; + +class U8GLIB_T6963_128X64 : public U8GLIB +{ + public: + U8GLIB_T6963_128X64(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_t6963_128x64_8bit, d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd, reset) + { } +}; + + +class U8GLIB_ST7687_C144MVGD: public U8GLIB +{ + public: + U8GLIB_ST7687_C144MVGD(uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_st7687_c144mvgd_sw_spi, sck, mosi, cs, a0, reset) + { } + U8GLIB_ST7687_C144MVGD(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs, uint8_t a0, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ks0108_128x64_fast, d0, d1, d2, d3, d4, d5, d6, d7, en, cs, U8G_PIN_NONE, a0, rw, reset) + { } +}; + +class U8GLIB_ILI9325D_320x240 : public U8GLIB +{ + public: + /* + U8GLIB_ILI9325D_320x240(uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + : U8GLIB(&u8g_dev_ili9325d_320x240_8bit, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, U8G_PIN_NONE, di, rw, reset) + { } + */ + U8GLIB_ILI9325D_320x240( uint8_t en, uint8_t cs1, uint8_t di, uint8_t rw = U8G_PIN_NONE, uint8_t reset = U8G_PIN_NONE) + { init8BitFixedPort(&u8g_dev_ili9325d_320x240_8bit, en, cs1, di, rw, reset); } +}; + +class U8GLIB_FLIPDISC_2X7 : public U8GLIB +{ + public: + U8GLIB_FLIPDISC_2X7(void) : U8GLIB(&u8g_dev_flipdisc_2x7) + { } +}; + +class U8GLIB_VS : public U8GLIB +{ + public: + U8GLIB_VS(void) : U8GLIB(&u8g_dev_vs) + { } +}; + + +#endif /* _CPP_U8GLIB */ diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Bitmap/Bitmap.pde b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Bitmap/Bitmap.pde new file mode 100644 index 0000000000000000000000000000000000000000..53fbe1b211bb68dfe8ea0c8908c9bb182d21bffe --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Bitmap/Bitmap.pde @@ -0,0 +1,130 @@ +/* + + Bitmap.pde + + Show simple bitmap + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + +const uint8_t rook_bitmap[] PROGMEM = { + 0x00, // 00000000 + 0x55, // 01010101 + 0x7f, // 01111111 + 0x3e, // 00111110 + 0x3e, // 00111110 + 0x3e, // 00111110 + 0x3e, // 00111110 + 0x7f // 01111111 +}; + +void draw(void) { + // graphic commands to redraw the complete screen should be placed here + u8g.drawBitmapP( 0, 0, 1, 8, rook_bitmap); +} + +void setup(void) { +} + +void loop(void) { + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(1000); +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Chess/Chess.pde b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Chess/Chess.pde new file mode 100644 index 0000000000000000000000000000000000000000..3cef3539824c14916d840040f43874e4694c0cab --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Chess/Chess.pde @@ -0,0 +1,180 @@ +/* + + Chess.pde + + Little Rook Chess + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + + +// DOGS102 shield configuration values +uint8_t uiKeyPrev = 2; +uint8_t uiKeyNext = 4; +uint8_t uiKeySelect = 5; +uint8_t uiKeyBack = 3; + +// DOGM128-Shield configuration values +// DOGXL60-Shield configuration values +//uint8_t uiKeyPrev = 7; +//uint8_t uiKeyNext = 3; +//uint8_t uiKeySelect = 2; +//uint8_t uiKeyBack = 8; + +uint8_t uiKeyCodeFirst = CHESS_KEY_NONE; +uint8_t uiKeyCodeSecond = CHESS_KEY_NONE; +uint8_t uiKeyCode = CHESS_KEY_NONE; + + +void uiSetup(void) { + // configure input keys + + pinMode(uiKeyPrev, INPUT); // set pin to input + digitalWrite(uiKeyPrev, HIGH); // turn on pullup resistors + pinMode(uiKeyNext, INPUT); // set pin to input + digitalWrite(uiKeyNext, HIGH); // turn on pullup resistors + pinMode(uiKeySelect, INPUT); // set pin to input + digitalWrite(uiKeySelect, HIGH); // turn on pullup resistors + pinMode(uiKeyBack, INPUT); // set pin to input + digitalWrite(uiKeyBack, HIGH); // turn on pullup resistors +} + +void uiStep(void) +{ + uiKeyCodeSecond = uiKeyCodeFirst; + if ( digitalRead(uiKeyPrev) == LOW ) + uiKeyCodeFirst = CHESS_KEY_PREV; + else if ( digitalRead(uiKeyNext) == LOW ) + uiKeyCodeFirst = CHESS_KEY_NEXT; + else if ( digitalRead(uiKeySelect) == LOW ) + uiKeyCodeFirst = CHESS_KEY_SELECT; + else if ( digitalRead(uiKeyBack) == LOW ) + uiKeyCodeFirst = CHESS_KEY_BACK; + else + uiKeyCodeFirst = CHESS_KEY_NONE; + + if ( uiKeyCodeSecond == uiKeyCodeFirst ) + uiKeyCode = uiKeyCodeFirst; + else + uiKeyCode = CHESS_KEY_NONE; +} + + +void setup() { + // rotate screen, if required + u8g.setRot180(); + + uiSetup(); + chess_Init(u8g.getU8g(), 0); +} + +void loop() { + uint8_t keyCode = CHESS_KEY_NONE; + + u8g.firstPage(); + do { + chess_Draw(); + uiStep(); + if ( uiKeyCode != CHESS_KEY_NONE ) + keyCode = uiKeyCode; + } while( u8g.nextPage() ); + + u8g_Delay(10); + chess_Step(keyCode); + uiStep(); + keyCode = uiKeyCode; +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Console/Console.pde b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Console/Console.pde new file mode 100644 index 0000000000000000000000000000000000000000..fcf4b74c58a7ad78e443cb72b3232921acc30481 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Console/Console.pde @@ -0,0 +1,230 @@ +/* + + Console.pde + + Read from serial monitor, output to display + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + + +// setup input buffer +#define LINE_MAX 30 +uint8_t line_buf[LINE_MAX] = "U8GLIB Console"; +uint8_t line_pos = 0; + +// setup a text screen to support scrolling +#define ROW_MAX 12 + + +uint8_t screen[ROW_MAX][LINE_MAX]; +uint8_t rows, cols; + +// line height, which matches the selected font (5x7) +#define LINE_PIXEL_HEIGHT 7 + +// clear entire screen, called during setup +void clear_screen(void) { + uint8_t i, j; + for( i = 0; i < ROW_MAX; i++ ) + for( j = 0; j < LINE_MAX; j++ ) + screen[i][j] = 0; +} + +// append a line to the screen, scroll up +void add_line_to_screen(void) { + uint8_t i, j; + for( j = 0; j < LINE_MAX; j++ ) + for( i = 0; i < rows-1; i++ ) + screen[i][j] = screen[i+1][j]; + + for( j = 0; j < LINE_MAX; j++ ) + screen[rows-1][j] = line_buf[j]; +} + +// U8GLIB draw procedure: output the screen +void draw(void) { + uint8_t i, y; + // graphic commands to redraw the complete screen are placed here + y = 0; // reference is the top left -1 position of the string + y--; // correct the -1 position of the drawStr + for( i = 0; i < rows; i++ ) + { + u8g.drawStr( 0, y, (char *)(screen[i])); + y += u8g.getFontLineSpacing(); + } +} + +void exec_line(void) { + // echo line to the serial monitor + Serial.println((const char *)line_buf); + + // add the line to the screen + add_line_to_screen(); + + // U8GLIB picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); +} + +// clear current input buffer +void reset_line(void) { + line_pos = 0; + line_buf[line_pos] = '\0'; +} + +// add a single character to the input buffer +void char_to_line(uint8_t c) { + line_buf[line_pos] = c; + line_pos++; + line_buf[line_pos] = '\0'; +} + +// check serial in and handle the character +void read_line(void) { + if ( Serial.available() ) + { + uint8_t c; + c = Serial.read(); + if ( line_pos >= cols-1 ) { + exec_line(); + reset_line(); + char_to_line(c); + } + else if ( c == '\n' ) { + // ignore '\n' + } + else if ( c == '\r' ) { + exec_line(); + reset_line(); + } + else { + char_to_line(c); + } + } +} + +// Arduino master setup +void setup(void) { + // set font for the console window + u8g.setFont(u8g_font_5x7); + //u8g.setFont(u8g_font_9x15); + + // set upper left position for the string draw procedure + u8g.setFontPosTop(); + + // calculate the number of rows for the display + rows = u8g.getHeight() / u8g.getFontLineSpacing(); + if ( rows > ROW_MAX ) + rows = ROW_MAX; + + // estimate the number of columns for the display + cols = u8g.getWidth() / u8g.getStrWidth("m"); + if ( cols > LINE_MAX-1 ) + cols = LINE_MAX-1; + + clear_screen(); // clear screen + delay(1000); // do some delay + Serial.begin(9600); // init serial + exec_line(); // place the input buffer into the screen + reset_line(); // clear input buffer +} + +// Arduino main loop +void loop(void) { + read_line(); +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/F/F.pde b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/F/F.pde new file mode 100644 index 0000000000000000000000000000000000000000..4cb3b20b76978c42fbc1ae5fa2793727862d9998 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/F/F.pde @@ -0,0 +1,139 @@ +/* + + F.pde + + Example code for the F() macro. + + >>> This example requires Arduino 1.0 and above. + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + +void draw(void) { + // graphic commands to redraw the complete screen should be placed here + + // assign default font + u8g.setFont(u8g_font_unifont); + + // pointer to strings in flash memory can be stored in a special type + const __FlashStringHelper *flash_ptr; + + // the result of the F() macro can be assigned to this pointer + flash_ptr = F("Hello World!"); + + // this pointer can be used as argument to the draw procedures + u8g.drawStr( 0+1, 20+1, flash_ptr); + u8g.drawStr( 0, 20, flash_ptr); + + // of course, the F() macro can be used directly + u8g.drawStr( 0, 40, F("PROGMEM")); + +} + +void setup(void) { + // flip screen, if required + // u8g.setRot180(); +} + +void loop(void) { + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(500); +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/GraphicsTest/GraphicsTest.pde b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/GraphicsTest/GraphicsTest.pde new file mode 100644 index 0000000000000000000000000000000000000000..4e91352097b21592e982fa3b6eb367cacbdc9a0c --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/GraphicsTest/GraphicsTest.pde @@ -0,0 +1,223 @@ +/* + + GraphicsTest.pde + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + +void u8g_prepare(void) { + u8g.setFont(u8g_font_6x10); + u8g.setFontRefHeightExtendedText(); + u8g.setDefaultForegroundColor(); + u8g.setFontPosTop(); +} + +void u8g_box_frame(uint8_t a) { + u8g.drawStr( 0, 0, "drawBox"); + u8g.drawBox(5,10,20,10); + u8g.drawBox(10+a,15,30,7); + u8g.drawStr( 0, 30, "drawFrame"); + u8g.drawFrame(5,10+30,20,10); + u8g.drawFrame(10+a,15+30,30,7); +} + +void u8g_disc_circle(uint8_t a) { + u8g.drawStr( 0, 0, "drawDisc"); + u8g.drawDisc(10,18,9); + u8g.drawDisc(24+a,16,7); + u8g.drawStr( 0, 30, "drawCircle"); + u8g.drawCircle(10,18+30,9); + u8g.drawCircle(24+a,16+30,7); +} + +void u8g_r_frame(uint8_t a) { + u8g.drawStr( 0, 0, "drawRFrame/Box"); + u8g.drawRFrame(5, 10,40,30, a+1); + u8g.drawRBox(50, 10,25,40, a+1); +} + +void u8g_string(uint8_t a) { + u8g.drawStr(30+a,31, " 0"); + u8g.drawStr90(30,31+a, " 90"); + u8g.drawStr180(30-a,31, " 180"); + u8g.drawStr270(30,31-a, " 270"); +} + +void u8g_line(uint8_t a) { + u8g.drawStr( 0, 0, "drawLine"); + u8g.drawLine(7+a, 10, 40, 55); + u8g.drawLine(7+a*2, 10, 60, 55); + u8g.drawLine(7+a*3, 10, 80, 55); + u8g.drawLine(7+a*4, 10, 100, 55); +} + +void u8g_ascii_1() { + char s[2] = " "; + uint8_t x, y; + u8g.drawStr( 0, 0, "ASCII page 1"); + for( y = 0; y < 6; y++ ) { + for( x = 0; x < 16; x++ ) { + s[0] = y*16 + x + 32; + u8g.drawStr(x*7, y*10+10, s); + } + } +} + +void u8g_ascii_2() { + char s[2] = " "; + uint8_t x, y; + u8g.drawStr( 0, 0, "ASCII page 2"); + for( y = 0; y < 6; y++ ) { + for( x = 0; x < 16; x++ ) { + s[0] = y*16 + x + 160; + u8g.drawStr(x*7, y*10+10, s); + } + } +} + + +uint8_t draw_state = 0; + +void draw(void) { + u8g_prepare(); + switch(draw_state >> 3) { + case 0: u8g_box_frame(draw_state&7); break; + case 1: u8g_disc_circle(draw_state&7); break; + case 2: u8g_r_frame(draw_state&7); break; + case 3: u8g_string(draw_state&7); break; + case 4: u8g_line(draw_state&7); break; + case 5: u8g_ascii_1(); break; + case 6: u8g_ascii_2(); break; + } +} + +void setup(void) { + + // flip screen, if required + //u8g.setRot180(); + + // assign default color value + if ( u8g.getMode() == U8G_MODE_R3G3B2 ) + u8g.setColorIndex(255); // white + else if ( u8g.getMode() == U8G_MODE_GRAY2BIT ) + u8g.setColorIndex(3); // max intensity + else if ( u8g.getMode() == U8G_MODE_BW ) + u8g.setColorIndex(1); // pixel on + + //u8g.setContrast(0x30); + + pinMode(13, OUTPUT); + digitalWrite(13, HIGH); +} + +void loop(void) { + + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // increase the state + draw_state++; + if ( draw_state >= 7*8 ) + draw_state = 0; + + // rebuild the picture after some delay + delay(150); + +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/HelloWorld/HelloWorld.pde b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/HelloWorld/HelloWorld.pde new file mode 100644 index 0000000000000000000000000000000000000000..5a00939a34062a9e4b70a82c6a2164fb143fc136 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/HelloWorld/HelloWorld.pde @@ -0,0 +1,136 @@ +/* + + HelloWorld.pde + + "Hello World!" example code. + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + + +void draw(void) { + // graphic commands to redraw the complete screen should be placed here + u8g.setFont(u8g_font_unifont); + //u8g.setFont(u8g_font_osb21); + u8g.drawStr( 0, 22, "Hello World!"); +} + +void setup(void) { + + // flip screen, if required + // u8g.setRot180(); + + // set SPI backup if required + //u8g.setHardwareBackup(u8g_backup_avr_spi); + + // assign default color value + if ( u8g.getMode() == U8G_MODE_R3G3B2 ) + u8g.setColorIndex(255); // white + else if ( u8g.getMode() == U8G_MODE_GRAY2BIT ) + u8g.setColorIndex(3); // max intensity + else if ( u8g.getMode() == U8G_MODE_BW ) + u8g.setColorIndex(1); // pixel on +} + +void loop(void) { + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(500); +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Menu/Menu.pde b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Menu/Menu.pde new file mode 100644 index 0000000000000000000000000000000000000000..fbb0af034c46adeb64939e6d00dd02aceb0e6c12 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Menu/Menu.pde @@ -0,0 +1,234 @@ +/* + + Menu.pde + + Simple Menu Selection + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + + +#define KEY_NONE 0 +#define KEY_PREV 1 +#define KEY_NEXT 2 +#define KEY_SELECT 3 +#define KEY_BACK 4 + +// DOGS102 shield configuration values +//uint8_t uiKeyPrev = 2; +//uint8_t uiKeyNext = 4; +//uint8_t uiKeySelect = 5; +//uint8_t uiKeyBack = 3; + +// DOGM128-Shield configuration values +// DOGXL60-Shield configuration values +uint8_t uiKeyPrev = 7; +uint8_t uiKeyNext = 3; +uint8_t uiKeySelect = 2; +uint8_t uiKeyBack = 8; + +uint8_t uiKeyCodeFirst = KEY_NONE; +uint8_t uiKeyCodeSecond = KEY_NONE; +uint8_t uiKeyCode = KEY_NONE; + + +void uiSetup(void) { + // configure input keys + + pinMode(uiKeyPrev, INPUT); // set pin to input + digitalWrite(uiKeyPrev, HIGH); // turn on pullup resistors + pinMode(uiKeyNext, INPUT); // set pin to input + digitalWrite(uiKeyNext, HIGH); // turn on pullup resistors + pinMode(uiKeySelect, INPUT); // set pin to input + digitalWrite(uiKeySelect, HIGH); // turn on pullup resistors + pinMode(uiKeyBack, INPUT); // set pin to input + digitalWrite(uiKeyBack, HIGH); // turn on pullup resistors +} + +void uiStep(void) { + uiKeyCodeSecond = uiKeyCodeFirst; + if ( digitalRead(uiKeyPrev) == LOW ) + uiKeyCodeFirst = KEY_PREV; + else if ( digitalRead(uiKeyNext) == LOW ) + uiKeyCodeFirst = KEY_NEXT; + else if ( digitalRead(uiKeySelect) == LOW ) + uiKeyCodeFirst = KEY_SELECT; + else if ( digitalRead(uiKeyBack) == LOW ) + uiKeyCodeFirst = KEY_BACK; + else + uiKeyCodeFirst = KEY_NONE; + + if ( uiKeyCodeSecond == uiKeyCodeFirst ) + uiKeyCode = uiKeyCodeFirst; + else + uiKeyCode = KEY_NONE; +} + + +#define MENU_ITEMS 4 +char *menu_strings[MENU_ITEMS] = { "First Line", "Second Item", "3333333", "abcdefg" }; + +uint8_t menu_current = 0; +uint8_t menu_redraw_required = 0; +uint8_t last_key_code = KEY_NONE; + + +void drawMenu(void) { + uint8_t i, h; + u8g_uint_t w, d; + + u8g.setFont(u8g_font_6x13); + u8g.setFontRefHeightText(); + u8g.setFontPosTop(); + + h = u8g.getFontAscent()-u8g.getFontDescent(); + w = u8g.getWidth(); + for( i = 0; i < MENU_ITEMS; i++ ) { + d = (w-u8g.getStrWidth(menu_strings[i]))/2; + u8g.setDefaultForegroundColor(); + if ( i == menu_current ) { + u8g.drawBox(0, i*h+1, w, h); + u8g.setDefaultBackgroundColor(); + } + u8g.drawStr(d, i*h, menu_strings[i]); + } +} + +void updateMenu(void) { + if ( uiKeyCode != KEY_NONE && last_key_code == uiKeyCode ) { + return; + } + last_key_code = uiKeyCode; + + switch ( uiKeyCode ) { + case KEY_NEXT: + menu_current++; + if ( menu_current >= MENU_ITEMS ) + menu_current = 0; + menu_redraw_required = 1; + break; + case KEY_PREV: + if ( menu_current == 0 ) + menu_current = MENU_ITEMS; + menu_current--; + menu_redraw_required = 1; + break; + } +} + + +void setup() { + // rotate screen, if required + // u8g.setRot180(); + + uiSetup(); // setup key detection and debounce algorithm + menu_redraw_required = 1; // force initial redraw +} + +void loop() { + + uiStep(); // check for key press + + if ( menu_redraw_required != 0 ) { + u8g.firstPage(); + do { + drawMenu(); + } while( u8g.nextPage() ); + menu_redraw_required = 0; + } + + updateMenu(); // update menu bar + +} diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/PrintTest/PrintTest.pde b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/PrintTest/PrintTest.pde new file mode 100644 index 0000000000000000000000000000000000000000..7535c22f192c7d77609b79a7f8d3696e0d76ec69 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/PrintTest/PrintTest.pde @@ -0,0 +1,124 @@ +/* + + PrintTest.pde + + How to use the base class "Print" + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + +void draw(void) { + // graphic commands to redraw the complete screen should be placed here + u8g.setFont(u8g_font_unifont); + u8g.setPrintPos(0, 20); + // call procedure from base class, http://arduino.cc/en/Serial/Print + u8g.print("Hello World!"); +} + +void setup(void) { + // flip screen, if required + // u8g.setRot180(); +} + +void loop(void) { + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(500); +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Rotation/Rotation.pde b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Rotation/Rotation.pde new file mode 100644 index 0000000000000000000000000000000000000000..424b7bfb61fbde13527b9917d04d37925a4833a7 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Rotation/Rotation.pde @@ -0,0 +1,152 @@ +/* + + HelloWorld.pde + + "Hello World!" example code. + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + +uint8_t offset = 0; + +void draw(void) { + // graphic commands to redraw the complete screen should be placed here + u8g.setFont(u8g_font_unifont); + u8g.drawStr( 0+0, 20+0, "Hello!"); + u8g.drawStr( 0+2, 20+16, "Hello!"); + + u8g.drawBox(0, 0, 3, 3); + u8g.drawBox(u8g.getWidth()-6, 0, 6, 6); + u8g.drawBox(u8g.getWidth()-9, u8g.getHeight()-9, 9, 9); + u8g.drawBox(0, u8g.getHeight()-12, 12, 12); +} + +void setup(void) { +} + + +void rotate(void) { + static uint8_t dir = 0; + static unsigned long next_rotation = 0; + + if ( next_rotation < millis() ) + { + switch(dir) { + case 0: u8g.undoRotation(); break; + case 1: u8g.setRot90(); break; + case 2: u8g.setRot180(); break; + case 3: u8g.setRot270(); offset = ( offset + 1 ) & 0x0f; break; + } + + dir++; + dir &= 3; + next_rotation = millis(); + next_rotation += 1000; + } +} + +void loop(void) { + // screen rotation + rotate(); + + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(100); +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Scale/Scale.pde b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Scale/Scale.pde new file mode 100644 index 0000000000000000000000000000000000000000..ce87c76fa1e44f84e2a99e0e4eccbe43981e4371 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/Scale/Scale.pde @@ -0,0 +1,141 @@ +/* + + HelloWorld.pde + + "Hello World!" example code. + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + + +void draw(void) { + // graphic commands to redraw the complete screen should be placed here + u8g.setFont(u8g_font_unifont); + u8g.setFontPosTop(); + u8g.drawStr(0, 1, "Hello"); + u8g.drawHLine(0, 1+14, 40); + u8g.setScale2x2(); // Scale up all draw procedures + u8g.drawStr(0, 12, "Hello"); // actual display position is (0,24) + u8g.drawHLine(0, 12+14, 40); // All other procedures are also affected + u8g.undoScale(); // IMPORTANT: Switch back to normal mode +} + +void setup(void) { + + // flip screen, if required + u8g.setRot180(); + + // set SPI backup if required + //u8g.setHardwareBackup(u8g_backup_avr_spi); + + // assign default color value + if ( u8g.getMode() == U8G_MODE_R3G3B2 ) + u8g.setColorIndex(255); // white + else if ( u8g.getMode() == U8G_MODE_GRAY2BIT ) + u8g.setColorIndex(3); // max intensity + else if ( u8g.getMode() == U8G_MODE_BW ) + u8g.setColorIndex(1); // pixel on +} + +void loop(void) { + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(500); +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/TextRotX/TextRotX.pde b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/TextRotX/TextRotX.pde new file mode 100644 index 0000000000000000000000000000000000000000..718fd821c88f3953aaa1df0beca29ded7898e1e5 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/TextRotX/TextRotX.pde @@ -0,0 +1,154 @@ +/* + + TextRotX.pde + + Text rotation example code. + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + +// graphic commands to redraw the complete screen should be placed here +void draw(void) { + u8g_uint_t mx, my; + + mx = u8g.getWidth(); + mx >>= 1; + + my = u8g.getHeight(); + my >>= 1; + + u8g.drawStr( mx, my, "Ag"); + u8g.drawStr90( mx, my, "Ag"); + u8g.drawStr180( mx, my, "Ag"); + u8g.drawStr270( mx, my, "Ag"); +} + +void setup(void) { + u8g.setFont(u8g_font_9x18); +} + +void change_font_pos(void) { + static uint8_t dir = 0; + static unsigned long next = 0; + + if ( next < millis() ) + { + switch(dir) { + case 0: u8g.setFontPosBottom(); break; + case 1: u8g.setFontPosBaseline(); break; + case 2: u8g.setFontPosCenter(); break; + case 3: u8g.setFontPosTop(); break; + } + + dir++; + dir &= 3; + next = millis(); + next += 1000; + } +} + +void loop(void) { + // change the font position + change_font_pos(); + + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(100); +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/U8gLogo/U8gLogo.pde b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/U8gLogo/U8gLogo.pde new file mode 100644 index 0000000000000000000000000000000000000000..78c866f0fe224b5f472d3f3c2c10de94308d4836 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/U8gLogo/U8gLogo.pde @@ -0,0 +1,179 @@ +/* + + U8gLogo.pde + + Put the U8GLIB logo on the display. + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + + +void drawColorBox(void) +{ + u8g_uint_t w,h; + u8g_uint_t r, g, b; + + w = u8g.getWidth()/32; + h = u8g.getHeight()/8; + for( b = 0; b < 4; b++ ) + for( g = 0; g < 8; g++ ) + for( r = 0; r < 8; r++ ) + { + u8g.setColorIndex((r<<5) | (g<<2) | b ); + u8g.drawBox(g*w + b*w*8, r*h, w, h); + } +} + +void drawLogo(uint8_t d) +{ + u8g.setFont(u8g_font_gdr25r); + u8g.drawStr(0+d, 30+d, "U"); + u8g.setFont(u8g_font_gdr30n); + u8g.drawStr90(23+d,10+d,"8"); + u8g.setFont(u8g_font_gdr25r); + u8g.drawStr(53+d,30+d,"g"); + + u8g.drawHLine(2+d, 35+d, 47); + u8g.drawVLine(45+d, 32+d, 12); +} + +void drawURL(void) +{ + u8g.setFont(u8g_font_4x6); + if ( u8g.getHeight() < 59 ) + { + u8g.drawStr(53,9,"code.google.com"); + u8g.drawStr(77,18,"/p/u8glib"); + } + else + { + u8g.drawStr(1,54,"code.google.com/p/u8glib"); + } +} + + +void draw(void) { + if ( u8g.getMode() == U8G_MODE_R3G3B2 ) { + drawColorBox(); + } + u8g.setColorIndex(1); + if ( U8G_MODE_GET_BITS_PER_PIXEL(u8g.getMode()) > 1 ) { + drawLogo(2); + u8g.setColorIndex(2); + drawLogo(1); + u8g.setColorIndex(3); + } + drawLogo(0); + drawURL(); + +} + +void setup(void) { + // flip screen, if required + //u8g.setRot180(); +} + +void loop(void) { + + // picture loop + u8g.firstPage(); + do { + draw(); + u8g.setColorIndex(1); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(200); +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/XBM/XBM.pde b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/XBM/XBM.pde new file mode 100644 index 0000000000000000000000000000000000000000..44dd720d928ef4ce87f27039a6c8de8c2f9db4f9 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/examples/XBM/XBM.pde @@ -0,0 +1,136 @@ +/* + + XBM.pde + + drawXBM example code. + + >>> Before compiling: Please remove comment from the constructor of the + >>> connected graphics display (see below). + + Universal 8bit Graphics Library, http://code.google.com/p/u8glib/ + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "U8glib.h" + +// setup u8g object, please remove comment from one of the following constructor calls +// IMPORTANT NOTE: The complete list of supported devices is here: http://code.google.com/p/u8glib/wiki/device + +//U8GLIB_NHD27OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD27OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_NHD31OLED_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGS102 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM132 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGM128 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_ST7920_128X64_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_128X64_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_128X64_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_192X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_192X32_1X u8g(13, 11, 10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10 +//U8GLIB_ST7920_192X32_4X u8g(10); // SPI Com: SCK = en = 13, MOSI = rw = 11, CS = di = 10, HW SPI +//U8GLIB_ST7920_202X32_1X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_4X u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, di=17,rw=16 +//U8GLIB_ST7920_202X32_1X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_ST7920_202X32_4X u8g(18, 16, 17); // SPI Com: SCK = en = 18, MOSI = rw = 16, CS = di = 17 +//U8GLIB_LM6059 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_LM6063 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_BW u8g(10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_BW u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_DOGXL160_2X_GR u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_PCD8544 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_PCF8812 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, Reset = 8 +//U8GLIB_KS0108_128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs1=14, cs2=15,di=17,rw=16 +//U8GLIB_LC7981_160X80 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_LC7981_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 en=18, cs=14 ,di=15,rw=17, reset = 16 +//U8GLIB_ILI9325D_320x240 u8g(18,17,19,U8G_PIN_NONE,16 ); // 8Bit Com: D0..D7: 0,1,2,3,4,5,6,7 en=wr=18, cs=17, rs=19, rd=U8G_PIN_NONE, reset = 16 +//U8GLIB_SBN1661_122X32 u8g(8,9,10,11,4,5,6,7,14,15, 17, U8G_PIN_NONE, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7 cs1=14, cs2=15,di=17,rw=16,reset = 16 +//U8GLIB_SSD1306_128X64 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X64 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X64 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(13, 11, 10, 9); // SW SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1306_128X32 u8g(10, 9); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1306_128X32 u8g(U8G_I2C_OPT_NONE); // HW SPI Com: CS = 10, A0 = 9 (Hardware Pins are SCK = 13 and MOSI = 11) +//U8GLIB_SSD1309_128X64 u8g(13, 11, 10, 9); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9 +//U8GLIB_SSD1327_96X96_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_SSD1327_96X96_2X_GR u8g(U8G_I2C_OPT_NONE); // I2C +//U8GLIB_NHD_C12864 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_NHD_C12832 u8g(13, 11, 10, 9, 8); // SPI Com: SCK = 13, MOSI = 11, CS = 10, A0 = 9, RST = 8 +//U8GLIB_T6963_240X128 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_240X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 +//U8GLIB_T6963_128X64 u8g(8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16); // 8Bit Com: D0..D7: 8,9,10,11,4,5,6,7, cs=14, a0=15, wr=17, rd=18, reset=16 + +#define u8g_logo_width 38 +#define u8g_logo_height 24 +//static unsigned char u8g_logo_bits[] = { +static unsigned char u8g_logo_bits[] U8G_PROGMEM = { + 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xe0, 0xe0, + 0xff, 0xff, 0x3f, 0xe3, 0xe1, 0xff, 0xff, 0x3f, 0xf3, 0xf1, 0xff, 0xff, + 0x3f, 0xf3, 0xf1, 0xfe, 0xbf, 0x37, 0xf3, 0x11, 0x1c, 0x1f, 0x30, 0xf3, + 0x01, 0x08, 0x8c, 0x20, 0xf3, 0x01, 0x00, 0xc0, 0x39, 0xf3, 0x81, 0xc7, + 0xc1, 0x39, 0xf3, 0xc1, 0xc7, 0xc9, 0x38, 0xf3, 0xc1, 0xc3, 0x19, 0x3c, + 0xe3, 0x89, 0x01, 0x98, 0x3f, 0xc7, 0x18, 0x00, 0x08, 0x3e, 0x0f, 0x3c, + 0x70, 0x1c, 0x30, 0x3f, 0xff, 0xfc, 0x87, 0x31, 0xff, 0xff, 0xbf, 0xc7, + 0x23, 0x01, 0x00, 0x00, 0xc6, 0x23, 0x03, 0x00, 0x00, 0x0e, 0x30, 0xff, + 0xff, 0x3f, 0x1f, 0x3c, 0xff, 0xff, 0x3f, 0xff, 0x3f, 0xff, 0xff, 0x3f, + 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0x3f }; + +void draw(void) { + // graphic commands to redraw the complete screen should be placed here + u8g.drawXBMP( 0, 0, u8g_logo_width, u8g_logo_height, u8g_logo_bits); +} + +void setup(void) { + // flip screen, if required + // u8g.setRot180(); +} + +void loop(void) { + // picture loop + u8g.firstPage(); + do { + draw(); + } while( u8g.nextPage() ); + + // rebuild the picture after some delay + delay(500); +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/license.txt b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/license.txt new file mode 100644 index 0000000000000000000000000000000000000000..c9eea75c4d444f273a2e2d258487ea7e8c304259 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/license.txt @@ -0,0 +1,80 @@ + +The U8glib code (http://code.google.com/p/u8glib/) is licensed under the terms of +the new-bsd license (two-clause bsd license). +See also: http://www.opensource.org/licenses/bsd-license.php + +The repository and optionally the releases contain icons, which are +derived from the WPZOOM Developer Icon Set: +http://www.wpzoom.com/wpzoom/new-freebie-wpzoom-developer-icon-set-154-free-icons/ +WPZOOM Developer Icon Set by WPZOOM is licensed under a Creative Commons +Attribution-ShareAlike 3.0 Unported License. + +Fonts are licensed under different conditions. +See http://code.google.com/p/u8glib/wiki/fontgroup for +detailed information on the licensing conditions for each font. + +============ X11 Fonts COUR, HELV, NCEN, TIM, SYMB ============ + +For fonts derived from the following files, the license below applies. +COURB08.BDF COURB10.BDF COURB12.BDF COURB14.BDF COURB18.BDF +COURB24.BDF COURR08.BDF COURR10.BDF COURR12.BDF COURR14.BDF +COURR18.BDF COURR24.BDF HELVB08.BDF HELVB10.BDF HELVB12.BDF HELVB14.BDF +HELVB18.BDF HELVB24.BDF HELVR08.BDF HELVR10.BDF HELVR12.BDF HELVR14.BDF +HELVR18.BDF HELVR24.BDF NCENB08.BDF NCENB10.BDF NCENB12.BDF +NCENB14.BDF NCENB18.BDF NCENB24.BDF NCENR08.BDF NCENR10.BDF +NCENR12.BDF NCENR14.BDF NCENR18.BDF NCENR24.BDF SYMB08.BDF SYMB10.BDF +SYMB12.BDF SYMB14.BDF SYMB18.BDF SYMB24.BDF TIMB08.BDF TIMB10.BDF +TIMB12.BDF TIMB14.BDF TIMB18.BDF TIMB24.BDF TIMR08.BDF TIMR10.BDF +TIMR12.BDF TIMR14.BDF TIMR18.BDF TIMR24.BDF + +Copyright 1984-1989, 1994 Adobe Systems Incorporated. +Copyright 1988, 1994 Digital Equipment Corporation. + +Adobe is a trademark of Adobe Systems Incorporated which may be +registered in certain jurisdictions. +Permission to use these trademarks is hereby granted only in +association with the images described in this file. + +Permission to use, copy, modify, distribute and sell this software +and its documentation for any purpose and without fee is hereby +granted, provided that the above copyright notices appear in all +copies and that both those copyright notices and this permission +notice appear in supporting documentation, and that the names of +Adobe Systems and Digital Equipment Corporation not be used in +advertising or publicity pertaining to distribution of the software +without specific, written prior permission. Adobe Systems and +Digital Equipment Corporation make no representations about the +suitability of this software for any purpose. It is provided "as +is" without express or implied warranty. + + +============ BSD License for U8glib Code ============ + +Universal 8bit Graphics Library (http://code.google.com/p/u8glib/) + +Copyright (c) 2011, olikraus@gmail.com +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND +CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR +CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/chessengine.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/chessengine.c new file mode 100644 index 0000000000000000000000000000000000000000..4a8758c38235fa19f4ae2bca5911e4c1c24f4335 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/chessengine.c @@ -0,0 +1,2392 @@ +/* + chessengine.c + + "Little Rook Chess" (lrc) + + Port to u8g library + + chess for embedded 8-Bit controllers + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Note: + UNIX_MAIN --> unix console executable + + Current Rule Limitation + - no minor promotion, only "Queening" of the pawn + - threefold repetition is not detected (same board situation appears three times) + Note: Could be implemented, but requires tracking of the complete game + - Fifty-move rule is not checked (no pawn move, no capture within last 50 moves) + + Words + Ply a half move + + General Links + http://chessprogramming.wikispaces.com/ + + Arduino specific + http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1260055596 + + Prefixes + chess_ Generic Chess Application Interface + ce_ Chess engine, used internally, these function should not be called directly + cu_ Chess utility function + stack_ Internal function for stack handling + + Issues + 10.01.2011 + - castling to the right does not move the rook + --> done + - castling to the left: King can only move two squares + --> done + + 11.01.2011 + Next Steps: + - replace stack_NextCurrentPos with cu_NextPos, cleanup code according to the loop variable + --> done + - Castling: Need to check for fields under attack + --> done + + - Check for WIN / LOSE situation, perhaps call ce_Eval() once on the top-level board setup + just after the real move + - cleanup cu_Move + --> almost done + - add some heuristics to the eval procedure + - add right side menu + --> done + - clean up chess_ManualMove + --> done + - finish menu (consider is_game_end, undo move) + - end condition: if KING is under attack and if KING can not move to a field which is under attack... + then the game is lost. What will be returned by the Eval procedure? is it -INF? + --> finished + + - reduce the use of variable color, all should be reduced to board_orientation and ply&1 + + - chess_GetNextMarked shoud make use of cu_NextPos + --> done + - chess_ManualMove: again cleanup, solve draw issue (KING is not in check and no legal moves are available) + --> done + 22.01.2011 + - simplify eval_t ce_Eval(void) + - position eval does not work, still moves side pawn :-( + maybe because all pieces are considered + --> done + +*/ + +#include "u8g.h" + +//#ifndef __unix__ +//#else +//#include +//#define U8G_NOINLINE +//#endif + +/* +SAN identifies each piece by a single upper case letter. The standard English +values: pawn = "P", knight = "N", bishop = "B", rook = "R", queen = "Q", and +king = "K". +*/ + +/* numbers for the various pieces */ +#define PIECE_NONE 0 +#define PIECE_PAWN 1 +#define PIECE_KNIGHT 2 +#define PIECE_BISHOP 3 +#define PIECE_ROOK 4 +#define PIECE_QUEEN 5 +#define PIECE_KING 6 + +/* color definitions */ +#define COLOR_WHITE 0 +#define COLOR_BLACK 1 + +/* a mask, which includes COLOR and PIECE number */ +#define COLOR_PIECE_MASK 0x01f + +#define CP_MARK_MASK 0x20 + +#define ILLEGAL_POSITION 255 + +/* This is the build in upper limit of the search stack */ +/* This value defines the amount of memory allocated for the search stack */ +/* The search depth of this chess engine can never exceed this value */ +#define STACK_MAX_SIZE 5 + +/* chess half move stack: twice the number of undo's, a user can do */ +#define CHM_USER_SIZE 6 + +/* the CHM_LIST_SIZE must be larger than the maximum search depth */ +/* the overall size of ste half move stack */ +#define CHM_LIST_SIZE (STACK_MAX_SIZE+CHM_USER_SIZE+2) + +typedef int16_t eval_t; /* a variable type to store results from the evaluation */ +//#define EVAL_T_LOST -32768 +#define EVAL_T_MIN -32767 +#define EVAL_T_MAX 32767 +//#define EVAL_T_WIN 32767 + +/* for maintainance of our own stack: this is the definition of one element on the stack */ +struct _stack_element_struct +{ + /* the current source position which is investigated */ + uint8_t current_pos; + uint8_t current_cp; + uint8_t current_color; /* COLOR_WHITE or COLOR_BLACK: must be predefines */ + + /* the move which belongs to that value, both values are game positions */ + uint8_t best_from_pos; + uint8_t best_to_pos; + /* the best value, which has been dicovered so far */ + eval_t best_eval; +}; +typedef struct _stack_element_struct stack_element_t; +typedef struct _stack_element_struct *stack_element_p; + +/* chess half move history */ +struct _chm_struct +{ + uint8_t main_cp; /* the main piece, which is moved */ + uint8_t main_src; /* the source position of the main piece */ + uint8_t main_dest; /* the destination of the main piece */ + + uint8_t other_cp; /* another piece: the captured one, the ROOK in case of castling or PIECE_NONE */ + uint8_t other_src; /* the delete position of other_cp. Often identical to main_dest except for e.p. and castling */ + uint8_t other_dest; /* only used for castling: ROOK destination pos */ + + /* the position of the last pawn, which did a double move forward */ + /* this is required to check en passant conditions */ + /* this array can be indexed by the color of the current player */ + /* this is the condition BEFORE the move was done */ + uint8_t pawn_dbl_move[2]; + + /* flags for the movement of rook and king; required for castling */ + /* a 1 means: castling is (still) possible */ + /* a 0 means: castling not possible */ + /* bit 0 left side white */ + /* bit 1 right side white */ + /* bit 2 left side black */ + /* bit 3 right side black */ + /* this is the condition BEFORE the move was done */ + uint8_t castling_possible; +}; + +typedef struct _chm_struct chm_t; +typedef struct _chm_struct *chm_p; + +/* little rook chess, main structure */ +struct _lrc_struct +{ + /* half-move (ply) counter: Counts the number of half-moves so far. Starts with 0 */ + /* the lowest bit is used to derive the color of the current player */ + /* will be set to zero in chess_SetupBoard() */ + uint8_t ply_count; + + /* the half move stack position counter, counts the number of elements in chm_list */ + uint8_t chm_pos; + + /* each element contains a colored piece, empty fields have value 0 */ + /* the field with index 0 is black (lower left) */ + uint8_t board[64]; + /* the position of the last pawn, which did a double move forward */ + /* this is required to check en passant conditions */ + /* this array can be indexed by the color of the current player */ + uint8_t pawn_dbl_move[2]; + + /* flags for the movement of rook and king; required for castling */ + /* a 1 means: castling is (still) possible */ + /* a 0 means: castling not possible */ + /* bit 0 left side white */ + /* bit 1 right side white */ + /* bit 2 left side black */ + /* bit 3 right side black */ + uint8_t castling_possible; + + /* board orientation */ + /* 0: white is below COLOR_WHITE */ + /* 1: black is below COLOR_BLACK */ + /* bascially, this can be used as a color */ + uint8_t orientation; + + /* exchange colors of the pieces */ + /* 0: white has an empty body, use this for bright background color */ + /* 1: black has an empty body, use this for dark backround color */ + uint8_t strike_out_color; + + /* 0, when the game is ongoing */ + /* 1, when the game is stopped (lost or draw) */ + uint8_t is_game_end; + /* the color of the side which lost the game */ + /* this value is only valid, when is_game_end is not 0 */ + /* values 0 and 1 represent WHITE and BLACK, 2 means a draw */ + uint8_t lost_side_color; + + + + /* checks are executed in ce_LoopRecur */ + /* these checks will put some marks on the board */ + /* this will be used by the interface to find out */ + /* legal moves */ + uint8_t check_src_pos; + uint8_t check_mode; /* CHECK_MODE_NONE, CHECK_MODE_MOVEABLE, CHECK_MODE_TARGET_MOVE */ + + + /* count of the attacking pieces, indexed by color */ + uint8_t find_piece_cnt[2]; + + /* sum of the attacking pieces, indexed by color */ + uint8_t find_piece_weight[2]; + + /* points to the current element of the search stack */ + /* this stack is NEVER empty. The value 0 points to the first element of the stack */ + /* actually "curr_depth" represent half-moves (plies) */ + uint8_t curr_depth; + uint8_t max_depth; + stack_element_p curr_element; + + /* allocated memory for the search stack */ + stack_element_t stack_memory[STACK_MAX_SIZE]; + + /* the half move stack, used for move undo and depth search, size is stored in chm_pos */ + chm_t chm_list[CHM_LIST_SIZE]; +}; +typedef struct _lrc_struct lrc_t; + +#define CHECK_MODE_NONE 0 +#define CHECK_MODE_MOVEABLE 1 +#define CHECK_MODE_TARGET_MOVE 2 + + + +/*==============================================================*/ +/* global variables */ +/*==============================================================*/ + +u8g_t *lrc_u8g; + +lrc_t lrc_obj; + + +/*==============================================================*/ +/* forward declarations */ +/*==============================================================*/ + +/* + apply no inline to some of the functions: + avr-gcc very often inlines functions, however not inline saves a lot of program memory! + On the other hand there are some really short procedures which should be inlined (like cp_GetColor) + These procedures are marked static to prevent the generation of the expanded procedure, which + also saves space. +*/ + +uint8_t stack_Push(uint8_t color) U8G_NOINLINE; +void stack_Pop(void) U8G_NOINLINE; +void stack_InitCurrElement(void) U8G_NOINLINE; +void stack_Init(uint8_t max) U8G_NOINLINE; +void stack_SetMove(eval_t val, uint8_t to_pos) U8G_NOINLINE; +uint8_t cu_NextPos(uint8_t pos) U8G_NOINLINE; +static uint8_t cu_gpos2bpos(uint8_t gpos); +static uint8_t cp_Construct(uint8_t color, uint8_t piece); +static uint8_t cp_GetPiece(uint8_t cp); +static uint8_t cp_GetColor(uint8_t cp); +uint8_t cp_GetFromBoard(uint8_t pos) U8G_NOINLINE; +void cp_SetOnBoard(uint8_t pos, uint8_t cp) U8G_NOINLINE; + +void cu_ClearBoard(void) U8G_NOINLINE; +void chess_SetupBoard(void) U8G_NOINLINE; +eval_t ce_Eval(void); + +void cu_ClearMoveHistory(void) U8G_NOINLINE; +void cu_ReduceHistoryByFullMove(void) U8G_NOINLINE; +void cu_UndoHalfMove(void) U8G_NOINLINE; +chm_p cu_PushHalfMove(void) U8G_NOINLINE; + + +void ce_CalculatePositionWeight(uint8_t pos); +uint8_t ce_GetPositionAttackWeight(uint8_t pos, uint8_t color); + +void chess_Thinking(void); +void ce_LoopPieces(void); + + +/*==============================================================*/ +/* search stack */ +/*==============================================================*/ + +/* get current element from stack */ +stack_element_p stack_GetCurrElement(void) +{ + return lrc_obj.curr_element; +} + +uint8_t stack_Push(uint8_t color) +{ + if ( lrc_obj.curr_depth == lrc_obj.max_depth ) + return 0; + lrc_obj.curr_depth++; + lrc_obj.curr_element = lrc_obj.stack_memory+lrc_obj.curr_depth; + + /* change view for the evaluation */ + color ^= 1; + stack_GetCurrElement()->current_color = color; + + return 1; +} + +void stack_Pop(void) +{ + lrc_obj.curr_depth--; + lrc_obj.curr_element = lrc_obj.stack_memory+lrc_obj.curr_depth; +} + +/* reset the current element on the stack */ +void stack_InitCurrElement(void) +{ + stack_element_p e = stack_GetCurrElement(); + e->best_eval = EVAL_T_MIN; + e->best_from_pos = ILLEGAL_POSITION; + e->best_to_pos = ILLEGAL_POSITION; +} + +/* resets the search stack (and the check mode) */ +void stack_Init(uint8_t max) +{ + lrc_obj.curr_depth = 0; + lrc_obj.curr_element = lrc_obj.stack_memory; + lrc_obj.max_depth = max; + lrc_obj.check_mode = CHECK_MODE_NONE; + stack_InitCurrElement(); + stack_GetCurrElement()->current_color = lrc_obj.ply_count; + stack_GetCurrElement()->current_color &= 1; +} + +/* assign evaluation value and store the move, if this is the best move */ +/* assumes, that current_pos contains the source position */ +void stack_SetMove(eval_t val, uint8_t to_pos) +{ + stack_element_p e = stack_GetCurrElement(); + if ( e->best_eval < val ) + { + e->best_eval = val; + e->best_from_pos = e->current_pos; + e->best_to_pos = to_pos; + } +} + +/* + calculate next position on a 0x88 board + loop is constructed in this way: + i = 0; + do + { + ... + i = cu_NextPos(i); + } while( i != 0 ); + + next pos might be started with an illegal position like 255 +*/ +uint8_t cu_NextPos(uint8_t pos) +{ + /* calculate next gpos */ + pos++; + if ( ( pos & 0x08 ) != 0 ) + { + pos+= 0x10; + pos&= 0xf0; + } + if ( ( pos & 0x80 ) != 0 ) + pos = 0; + return pos; +} + +uint8_t cu_PrevPos(uint8_t pos) +{ + /* calculate prev gpos */ + pos--; + if ( ( pos & 0x80 ) != 0 ) + pos = 0x077; + else if ( ( pos & 0x08 ) != 0 ) + { + pos &= 0xf0; + pos |= 0x07; + } + return pos; +} + + +/*==============================================================*/ +/* position transltion */ +/*==============================================================*/ +/* + there are two positions + 1. game position (gpos): BCD encoded x-y values + 2. board position (bpos): a number between 0 and 63, only used to access the board. +*/ +/* + gpos: game position value + returns: board position + note: does not do any checks +*/ +static uint8_t cu_gpos2bpos(uint8_t gpos) +{ + uint8_t bpos = gpos; + bpos &= 0xf0; + bpos >>= 1; + gpos &= 0x0f; + bpos |= gpos; + return bpos; +} + +#define gpos_IsIllegal(gpos) ((gpos) & 0x088) + + +/*==============================================================*/ +/* colored piece handling */ +/*==============================================================*/ + +#define cp_IsMarked(cp) ((cp) & CP_MARK_MASK) + + +/* + piece: one of PIECE_xxx + color: COLOR_WHITE or COLOR_BLACK + + returns: A colored piece +*/ +static uint8_t cp_Construct(uint8_t color, uint8_t piece) +{ + color <<= 4; + color |= piece; + return color; +} + +/* inline is better than a macro */ +static uint8_t cp_GetPiece(uint8_t cp) +{ + cp &= 0x0f; + return cp; +} + +/* + we could use a macro: + #define cp_GetColor(cp) (((cp) >> 4)&1) + however, inlined functions are sometimes much better +*/ +static uint8_t cp_GetColor(uint8_t cp) +{ + cp >>= 4; + cp &= 1; + return cp; +} + +/* + pos: game position + returns the colored piece at the given position +*/ +uint8_t cp_GetFromBoard(uint8_t pos) +{ + return lrc_obj.board[cu_gpos2bpos(pos)]; +} + +/* + pos: game position + cp: colored piece +*/ +void cp_SetOnBoard(uint8_t pos, uint8_t cp) +{ + /*printf("cp_SetOnBoard gpos:%02x cp:%02x\n", pos, cp);*/ + lrc_obj.board[cu_gpos2bpos(pos)] = cp; +} + +/*==============================================================*/ +/* global board access */ +/*==============================================================*/ + +void cu_ClearBoard(void) +{ + uint8_t i; + /* clear the board */ + for( i = 0; i < 64; i++ ) + lrc_obj.board[i] = PIECE_NONE; + + lrc_obj.ply_count = 0; + lrc_obj.orientation = COLOR_WHITE; + + lrc_obj.pawn_dbl_move[0] = ILLEGAL_POSITION; + lrc_obj.pawn_dbl_move[1] = ILLEGAL_POSITION; + + lrc_obj.castling_possible = 0x0f; + + lrc_obj.is_game_end = 0; + lrc_obj.lost_side_color = 0; + + /* clear half move history */ + cu_ClearMoveHistory(); + +} + +/* + test setup + white wins in one move +*/ +void chess_SetupBoardTest01(void) +{ + cu_ClearBoard(); + lrc_obj.board[7+7*8] = cp_Construct(COLOR_BLACK, PIECE_KING); + lrc_obj.board[7+5*8] = cp_Construct(COLOR_WHITE, PIECE_PAWN); + lrc_obj.board[3] = cp_Construct(COLOR_WHITE, PIECE_KING); + lrc_obj.board[0+7*8] = cp_Construct(COLOR_BLACK, PIECE_ROOK); + lrc_obj.board[6] = cp_Construct(COLOR_WHITE, PIECE_QUEEN); +} + +/* setup the global board */ +void chess_SetupBoard(void) +{ + uint8_t i; + register uint8_t bp, wp; + + /* clear the board */ + cu_ClearBoard(); + + /* precronstruct pawns */ + wp = cp_Construct(COLOR_WHITE, PIECE_PAWN); + bp = cp_Construct(COLOR_BLACK, PIECE_PAWN); + + /* setup pawn */ + for( i = 0; i < 8; i++ ) + { + lrc_obj.board[i+8] = wp; + lrc_obj.board[i+6*8] = bp; + } + + /* assign remaining pieces */ + + lrc_obj.board[0] = cp_Construct(COLOR_WHITE, PIECE_ROOK); + lrc_obj.board[1] = cp_Construct(COLOR_WHITE, PIECE_KNIGHT); + lrc_obj.board[2] = cp_Construct(COLOR_WHITE, PIECE_BISHOP); + lrc_obj.board[3] = cp_Construct(COLOR_WHITE, PIECE_QUEEN); + lrc_obj.board[4] = cp_Construct(COLOR_WHITE, PIECE_KING); + lrc_obj.board[5] = cp_Construct(COLOR_WHITE, PIECE_BISHOP); + lrc_obj.board[6] = cp_Construct(COLOR_WHITE, PIECE_KNIGHT); + lrc_obj.board[7] = cp_Construct(COLOR_WHITE, PIECE_ROOK); + + lrc_obj.board[0+7*8] = cp_Construct(COLOR_BLACK, PIECE_ROOK); + lrc_obj.board[1+7*8] = cp_Construct(COLOR_BLACK, PIECE_KNIGHT); + lrc_obj.board[2+7*8] = cp_Construct(COLOR_BLACK, PIECE_BISHOP); + lrc_obj.board[3+7*8] = cp_Construct(COLOR_BLACK, PIECE_QUEEN); + lrc_obj.board[4+7*8] = cp_Construct(COLOR_BLACK, PIECE_KING); + lrc_obj.board[5+7*8] = cp_Construct(COLOR_BLACK, PIECE_BISHOP); + lrc_obj.board[6+7*8] = cp_Construct(COLOR_BLACK, PIECE_KNIGHT); + lrc_obj.board[7+7*8] = cp_Construct(COLOR_BLACK, PIECE_ROOK); + + //chess_SetupBoardTest01(); + +} + + + +/*==============================================================*/ +/* checks */ +/*==============================================================*/ + +/* + checks if the position is somehow illegal +*/ +uint8_t cu_IsIllegalPosition(uint8_t pos, uint8_t my_color) +{ + uint8_t board_cp; + /* check, if the position is offboard */ + if ( gpos_IsIllegal(pos) != 0 ) + return 1; + /* get the piece from the board */ + board_cp = cp_GetFromBoard(pos); + /* check if hit our own pieces */ + if ( board_cp != 0 ) + if ( cp_GetColor(board_cp) == my_color ) + return 1; + /* all ok, we could go to this position */ + return 0; +} + +/*==============================================================*/ +/* evaluation procedure */ +/*==============================================================*/ + +/* + basic idea is to return a value between EVAL_T_MIN and EVAL_T_MAX +*/ + +/* + the weight table uses the PIECE number as index: + #define PIECE_NONE 0 + #define PIECE_PAWN 1 + #define PIECE_KNIGHT 2 + #define PIECE_BISHOP 3 + #define PIECE_ROOK 4 + #define PIECE_QUEEN 5 + #define PIECE_KING 6 + the king itself is not counted +*/ +uint8_t ce_piece_weight[] = { 0, 1, 3, 3, 5, 9, 0 }; +uint8_t ce_pos_weight[] = { 0, 1, 1, 2, 2, 1, 1, 0}; +/* + evaluate the current situation on the global board +*/ +eval_t ce_Eval(void) +{ + uint8_t cp; + uint8_t is_my_king_present = 0; + uint8_t is_opposit_king_present = 0; + eval_t material_my_color = 0; + eval_t material_opposit_color = 0; + eval_t position_my_color = 0; + eval_t position_opposit_color = 0; + eval_t result; + uint8_t pos; + + pos = 0; + do + { + /* get colored piece from the board */ + cp = cp_GetFromBoard(pos); + + if ( cp_GetPiece(cp) != PIECE_NONE ) + { + if ( stack_GetCurrElement()->current_color == cp_GetColor(cp) ) + { + /* this is our color */ + /* check if we found our king */ + if ( cp_GetPiece(cp) == PIECE_KING ) + is_my_king_present = 1; + material_my_color += ce_piece_weight[cp_GetPiece(cp)]; + if ( cp_GetPiece(cp) == PIECE_PAWN || cp_GetPiece(cp) == PIECE_KNIGHT ) + { + position_my_color += ce_pos_weight[pos&7]*ce_pos_weight[(pos>>4)&7]; + } + } + else + { + /* this is the opposit color */ + if ( cp_GetPiece(cp) == PIECE_KING ) + is_opposit_king_present = 1; + material_opposit_color += ce_piece_weight[cp_GetPiece(cp)]; + if ( cp_GetPiece(cp) == PIECE_PAWN || cp_GetPiece(cp) == PIECE_KNIGHT ) + { + position_opposit_color += ce_pos_weight[pos&7]*ce_pos_weight[(pos>>4)&7]; + } + } + } + pos = cu_NextPos(pos); + } while( pos != 0 ); + + + /* decide if we lost or won the game */ + if ( is_my_king_present == 0 ) + return EVAL_T_MIN; /*_LOST*/ + if ( is_opposit_king_present == 0 ) + return EVAL_T_MAX; /*_WIN*/ + + /* here is the evaluation function */ + + result = material_my_color - material_opposit_color; + result <<= 3; + result += position_my_color - position_opposit_color; + return result; +} + +/*==============================================================*/ +/* move backup and restore */ +/*==============================================================*/ + + +/* this procedure must be called to keep the size as low as possible */ +/* if the chm_list is large enough, it could hold the complete history */ +/* but for an embedded controler... it is deleted for every engine search */ +void cu_ClearMoveHistory(void) +{ + lrc_obj.chm_pos = 0; +} + +void cu_ReduceHistoryByFullMove(void) +{ + uint8_t i; + while( lrc_obj.chm_pos > CHM_USER_SIZE ) + { + i = 0; + for(;;) + { + if ( i+2 >= lrc_obj.chm_pos ) + break; + lrc_obj.chm_list[i] = lrc_obj.chm_list[i+2]; + i++; + } + lrc_obj.chm_pos -= 2; + } +} + +void cu_UndoHalfMove(void) +{ + chm_p chm; + + if ( lrc_obj.chm_pos == 0 ) + return; + + lrc_obj.chm_pos--; + + chm = lrc_obj.chm_list+lrc_obj.chm_pos; + + lrc_obj.pawn_dbl_move[0] = chm->pawn_dbl_move[0]; + lrc_obj.pawn_dbl_move[1] = chm->pawn_dbl_move[1]; + lrc_obj.castling_possible = chm->castling_possible; + + cp_SetOnBoard(chm->main_src, chm->main_cp); + cp_SetOnBoard(chm->main_dest, PIECE_NONE); + + if ( chm->other_src != ILLEGAL_POSITION ) + cp_SetOnBoard(chm->other_src, chm->other_cp); + if ( chm->other_dest != ILLEGAL_POSITION ) + cp_SetOnBoard(chm->other_dest, PIECE_NONE); + +} + +/* + assumes, that the following members of the returned chm structure are filled + uint8_t main_cp; the main piece, which is moved + uint8_t main_src; the source position of the main piece + uint8_t main_dest; the destination of the main piece + + uint8_t other_cp; another piece: the captured one, the ROOK in case of castling or PIECE_NONE + uint8_t other_src; the delete position of other_cp. Often identical to main_dest except for e.p. and castling + uint8_t other_dest; only used for castling: ROOK destination pos + +*/ +chm_p cu_PushHalfMove(void) +{ + chm_p chm; + + chm = lrc_obj.chm_list+lrc_obj.chm_pos; + if ( lrc_obj.chm_pos < CHM_LIST_SIZE-1) + lrc_obj.chm_pos++; + + chm->pawn_dbl_move[0] = lrc_obj.pawn_dbl_move[0]; + chm->pawn_dbl_move[1] = lrc_obj.pawn_dbl_move[1]; + chm->castling_possible = lrc_obj.castling_possible; + return chm; +} + + +char chess_piece_to_char[] = "NBRQK"; + +/* + simple moves on empty field: Ka1-b2 + capture moves: Ka1xb2 + castling: 0-0 or 0-0-0 +*/ + +static void cu_add_pos(char *s, uint8_t pos) U8G_NOINLINE; + +static void cu_add_pos(char *s, uint8_t pos) +{ + *s = pos; + *s >>= 4; + *s += 'a'; + s++; + *s = pos; + *s &= 15; + *s += '1'; +} + +const char *cu_GetHalfMoveStr(uint8_t idx) +{ + chm_p chm; + static char buf[7]; /*Ka1-b2*/ + char *p = buf; + chm = lrc_obj.chm_list+idx; + + if ( cp_GetPiece(chm->main_cp) != PIECE_NONE ) + { + if ( cp_GetPiece(chm->main_cp) > PIECE_PAWN ) + { + *p++ = chess_piece_to_char[cp_GetPiece(chm->main_cp)-2]; + } + cu_add_pos(p, chm->main_src); + p+=2; + if ( cp_GetPiece(chm->other_cp) == PIECE_NONE ) + *p++ = '-'; + else + *p++ = 'x'; + cu_add_pos(p, chm->main_dest); + p+=2; + } + *p = '\0'; + return buf; +} + + + + + +/*==============================================================*/ +/* move */ +/*==============================================================*/ + +/* + Move a piece from source position to a destination on the board + This function + - does not perform any checking + - however it processes "en passant" and casteling + - backup the move and allow 1x undo + + 2011-02-05: + - fill pawn_dbl_move[] for double pawn moves + --> done + - Implement casteling + --> done + - en passant + --> done + - pawn conversion/promotion + --> done + - half-move backup + --> done + - cleanup everything, minimize variables + --> done +*/ + +void cu_Move(uint8_t src, uint8_t dest) +{ + /* start backup structure */ + chm_p chm = cu_PushHalfMove(); + + /* these are the values from the board at the positions, provided as arguments to this function */ + uint8_t cp_src, cp_dest; + + /* Maybe a second position is cleared and one additional location is set */ + uint8_t clr_pos2; + uint8_t set_pos2; + uint8_t set_cp2; + + /* get values from board */ + cp_src = cp_GetFromBoard(src); + cp_dest = cp_GetFromBoard(dest); + + /* fill backup structure */ + + chm->main_cp = cp_src; + chm->main_src = src; + chm->main_dest = dest; + + chm->other_cp = cp_dest; /* prepace capture backup */ + chm->other_src = dest; + chm->other_dest = ILLEGAL_POSITION; + + /* setup results as far as possible with some suitable values */ + + clr_pos2 = ILLEGAL_POSITION; /* for en passant and castling, two positions might be cleared */ + set_pos2 = ILLEGAL_POSITION; /* only used for castling */ + set_cp2 = PIECE_NONE; /* ROOK for castling */ + + /* check for PAWN */ + if ( cp_GetPiece(cp_src) == PIECE_PAWN ) + { + + /* double step: is the distance 2 rows */ + if ( (src - dest == 32) || ( dest - src == 32 ) ) + { + /* remember the destination position */ + lrc_obj.pawn_dbl_move[cp_GetColor(cp_src)] = dest; + } + + /* check if the PAWN is able to promote */ + else if ( (dest>>4) == 0 || (dest>>4) == 7 ) + { + /* do simple "queening" */ + cp_src &= ~PIECE_PAWN; + cp_src |= PIECE_QUEEN; + } + + /* is it en passant capture? */ + /* check for side move */ + else if ( ((src + dest) & 1) != 0 ) + { + /* check, if target field is empty */ + if ( cp_GetPiece(cp_dest) == PIECE_NONE ) + { + /* this is en passant */ + /* no further checking required, because legal moves are assumed here */ + /* however... the captured pawn position must be valid */ + clr_pos2 = lrc_obj.pawn_dbl_move[cp_GetColor(cp_src) ^ 1]; + chm->other_src = clr_pos2; + chm->other_cp = cp_GetFromBoard(clr_pos2); + } + } + } + + /* check for the KING */ + else if ( cp_GetPiece(cp_src) == PIECE_KING ) + { + /* disallow castling, if the KING has moved */ + if ( cp_GetColor(cp_src) == COLOR_WHITE ) + { + /* if white KING has moved, disallow castling for white */ + lrc_obj.castling_possible &= 0x0c; + } + else + { + /* if black KING has moved, disallow castling for black */ + lrc_obj.castling_possible &= 0x03; + } + + /* has it been castling to the left? */ + if ( src - dest == 2 ) + { + /* let the ROOK move to pos2 */ + set_pos2 = src-1; + set_cp2 = cp_GetFromBoard(src-4); + + /* the ROOK must be cleared from the original position */ + clr_pos2 = src-4; + + chm->other_cp = set_cp2; + chm->other_src = clr_pos2; + chm->other_dest = set_pos2; + } + + /* has it been castling to the right? */ + else if ( dest - src == 2 ) + { + /* let the ROOK move to pos2 */ + set_pos2 = src+1; + set_cp2 = cp_GetFromBoard(src+3); + + /* the ROOK must be cleared from the original position */ + clr_pos2 = src+3; + + chm->other_cp = set_cp2; + chm->other_src = clr_pos2; + chm->other_dest = set_pos2; + + } + + } + + /* check for the ROOK */ + else if ( cp_GetPiece(cp_src) == PIECE_ROOK ) + { + /* disallow white left castling */ + if ( src == 0x00 ) + lrc_obj.castling_possible &= ~0x01; + /* disallow white right castling */ + if ( src == 0x07 ) + lrc_obj.castling_possible &= ~0x02; + /* disallow black left castling */ + if ( src == 0x70 ) + lrc_obj.castling_possible &= ~0x04; + /* disallow black right castling */ + if ( src == 0x77 ) + lrc_obj.castling_possible &= ~0x08; + } + + + /* apply new board situation */ + + cp_SetOnBoard(dest, cp_src); + + if ( set_pos2 != ILLEGAL_POSITION ) + cp_SetOnBoard(set_pos2, set_cp2); + + cp_SetOnBoard(src, PIECE_NONE); + + if ( clr_pos2 != ILLEGAL_POSITION ) + cp_SetOnBoard(clr_pos2, PIECE_NONE); + + +} + +/* + this subprocedure decides for evaluation of the current board situation or further (deeper) investigation + Argument pos is the new target position if the current piece + +*/ +uint8_t ce_LoopRecur(uint8_t pos) +{ + eval_t eval; + + /* 1. check if target position is occupied by the same player (my_color) */ + /* of if pos is somehow illegal or not valid */ + if ( cu_IsIllegalPosition(pos, stack_GetCurrElement()->current_color) != 0 ) + return 0; + + /* 2. move piece to the specified position, capture opponent piece if required */ + cu_Move(stack_GetCurrElement()->current_pos, pos); + + + /* 3. */ + /* if depth reached: evaluate */ + /* else: go down next level */ + /* no eval if there had been any valid half-moves, so the default value (MIN) will be returned. */ + if ( stack_Push(stack_GetCurrElement()->current_color) == 0 ) + { + eval = ce_Eval(); + } + else + { + /* init the element, which has been pushed */ + stack_InitCurrElement(); + /* start over with ntext level */ + ce_LoopPieces(); + /* get the best move from opponents view, so invert the result */ + eval = -stack_GetCurrElement()->best_eval; + stack_Pop(); + } + + /* 4. store result */ + stack_SetMove(eval, pos); + + /* 5. undo the move */ + cu_UndoHalfMove(); + + /* 6. check special modes */ + /* the purpose of these checks is to mark special pieces and positions on the board */ + /* these marks can be checked by the user interface to highlight special positions */ + if ( lrc_obj.check_mode != 0 ) + { + stack_element_p e = stack_GetCurrElement(); + if ( lrc_obj.check_mode == CHECK_MODE_MOVEABLE ) + { + cp_SetOnBoard(e->current_pos, e->current_cp | CP_MARK_MASK ); + } + else if ( lrc_obj.check_mode == CHECK_MODE_TARGET_MOVE ) + { + if ( e->current_pos == lrc_obj.check_src_pos ) + { + cp_SetOnBoard(pos, cp_GetFromBoard(pos) | CP_MARK_MASK ); + } + } + } + return 1; +} + +/*==============================================================*/ +/* move pieces which can move one or more steps into a direction */ +/*==============================================================*/ + +/* + subprocedure to generate various target positions for some pieces + special cases are handled in the piece specific sub-procedure + + Arguments: + d: a list of potential directions + is_multi_step: if the piece can only do one step (zero for KING and KNIGHT) +*/ +static const uint8_t ce_dir_offset_rook[] PROGMEM = { 1, 16, -16, -1, 0 }; +static const uint8_t ce_dir_offset_bishop[] PROGMEM = { 15, 17, -17, -15, 0 }; +static const uint8_t ce_dir_offset_queen[] PROGMEM = { 1, 16, -16, -1, 15, 17, -17, -15, 0 }; +static const uint8_t ce_dir_offset_knight[] PROGMEM = {14, -14, 18, -18, 31, -31, 33, -33, 0}; + +void ce_LoopDirsSingleMultiStep(const uint8_t *d, uint8_t is_multi_step) +{ + uint8_t loop_pos; + + /* with all directions */ + for(;;) + { + if ( u8g_pgm_read(d) == 0 ) + break; + + /* start again from the initial position */ + loop_pos = stack_GetCurrElement()->current_pos; + + /* check direction */ + do + { + /* check next position into one direction */ + loop_pos += u8g_pgm_read(d); + + /* + go further to ce_LoopRecur() + 0 will be returned if the target position is illegal or a piece of the own color + this is used to stop walking into one direction + */ + if ( ce_LoopRecur(loop_pos) == 0 ) + break; + + /* stop if we had hit another piece */ + if ( cp_GetPiece(cp_GetFromBoard(loop_pos)) != PIECE_NONE ) + break; + } while( is_multi_step ); + d++; + } +} + +void ce_LoopRook(void) +{ + ce_LoopDirsSingleMultiStep(ce_dir_offset_rook, 1); +} + +void ce_LoopBishop(void) +{ + ce_LoopDirsSingleMultiStep(ce_dir_offset_bishop, 1); +} + +void ce_LoopQueen(void) +{ + ce_LoopDirsSingleMultiStep(ce_dir_offset_queen, 1); +} + +void ce_LoopKnight(void) +{ + ce_LoopDirsSingleMultiStep(ce_dir_offset_knight, 0); +} + + + +/*==============================================================*/ +/* move king */ +/*==============================================================*/ + +uint8_t cu_IsKingCastling(uint8_t mask, int8_t direction, uint8_t cnt) U8G_NOINLINE; + +/* + checks, if the king can do castling + + Arguments: + mask: the bit-mask for the global "castling possible" flag + direction: left castling: -1, right castling 1 + cnt: number of fields to be checked: 3 or 2 +*/ +uint8_t cu_IsKingCastling(uint8_t mask, int8_t direction, uint8_t cnt) +{ + uint8_t pos; + uint8_t opponent_color; + + /* check if the current board state allows castling */ + if ( (lrc_obj.castling_possible & mask) == 0 ) + return 0; /* castling not allowed */ + + /* get the position of the KING, could be white or black king */ + pos = stack_GetCurrElement()->current_pos; + + /* calculate the color of the opponent */ + opponent_color = 1; + opponent_color -= stack_GetCurrElement()->current_color; + + /* if the KING itself is given check... */ + if ( ce_GetPositionAttackWeight(pos, opponent_color) > 0 ) + return 0; + + + /* check if fields in the desired direction are emtpy */ + for(;;) + { + /* go to the next field */ + pos += direction; + /* check for a piece */ + if ( cp_GetPiece(cp_GetFromBoard(pos)) != PIECE_NONE ) + return 0; /* castling not allowed */ + + /* if some of the fields are under attack */ + if ( ce_GetPositionAttackWeight(pos, opponent_color) > 0 ) + return 0; + + cnt--; + if ( cnt == 0 ) + break; + } + return 1; /* castling allowed */ +} + +void ce_LoopKing(void) +{ + /* + there is an interessting timing problem in this procedure + it must be checked for castling first and as second step the normal + KING movement. If we would first check for normal moves, than + any marks might be overwritten by the ROOK in the case of castling. + */ + + /* castling (this must be done before checking normal moves (see above) */ + if ( stack_GetCurrElement()->current_color == COLOR_WHITE ) + { + /* white left castling */ + if ( cu_IsKingCastling(1, -1, 3) != 0 ) + { + /* check for attacked fields */ + ce_LoopRecur(stack_GetCurrElement()->current_pos-2); + } + /* white right castling */ + if ( cu_IsKingCastling(2, 1, 2) != 0 ) + { + /* check for attacked fields */ + ce_LoopRecur(stack_GetCurrElement()->current_pos+2); + } + } + else + { + /* black left castling */ + if ( cu_IsKingCastling(4, -1, 3) != 0 ) + { + /* check for attacked fields */ + ce_LoopRecur(stack_GetCurrElement()->current_pos-2); + } + /* black right castling */ + if ( cu_IsKingCastling(8, 1, 2) != 0 ) + { + /* check for attacked fields */ + ce_LoopRecur(stack_GetCurrElement()->current_pos+2); + } + } + + /* reuse queen directions */ + ce_LoopDirsSingleMultiStep(ce_dir_offset_queen, 0); +} + + +/*==============================================================*/ +/* move pawn */ +/*==============================================================*/ + +/* + doppelschritt: nur von der grundlinie aus, beide (!) felder vor dem bauern mssen frei sein + en passant: nur unmittelbar nachdem ein doppelschritt ausgefhrt wurde. +*/ +void ce_LoopPawnSideCapture(uint8_t loop_pos) +{ + if ( gpos_IsIllegal(loop_pos) == 0 ) + { + /* get the piece from the board */ + /* if the field is NOT empty */ + if ( cp_GetPiece(cp_GetFromBoard(loop_pos)) != PIECE_NONE ) + { + /* normal capture */ + ce_LoopRecur(loop_pos); + /* TODO: check for pawn conversion/promotion */ + } + else + { + /* check conditions for en passant capture */ + if ( stack_GetCurrElement()->current_color == COLOR_WHITE ) + { + if ( lrc_obj.pawn_dbl_move[COLOR_BLACK]+16 == loop_pos ) + { + ce_LoopRecur(loop_pos); + /* note: pawn conversion/promotion can not occur */ + } + } + else + { + if ( lrc_obj.pawn_dbl_move[COLOR_WHITE] == loop_pos+16 ) + { + ce_LoopRecur(loop_pos); + /* note: pawn conversion/promotion can not occur */ + } + } + } + } +} + +void ce_LoopPawn(void) +{ + uint8_t initial_pos = stack_GetCurrElement()->current_pos; + uint8_t my_color = stack_GetCurrElement()->current_color; + + uint8_t loop_pos; + uint8_t line; + + /* one step forward */ + + loop_pos = initial_pos; + line = initial_pos; + line >>= 4; + if ( my_color == COLOR_WHITE ) + loop_pos += 16; + else + loop_pos -= 16; + if ( gpos_IsIllegal(loop_pos) == 0 ) + { + /* if the field is empty */ + if ( cp_GetPiece(cp_GetFromBoard(loop_pos)) == PIECE_NONE ) + { + /* TODO: check for and loop through piece conversion/promotion */ + ce_LoopRecur(loop_pos); + + /* second step forward */ + + /* if pawn is on his starting line */ + if ( (my_color == COLOR_WHITE && line == 1) || (my_color == COLOR_BLACK && line == 6 ) ) + { + /* the place before the pawn is not occupied, so we can do double moves, see above */ + + if ( my_color == COLOR_WHITE ) + loop_pos += 16; + else + loop_pos -= 16; + if ( cp_GetPiece(cp_GetFromBoard(loop_pos)) == PIECE_NONE ) + { + /* this is a special case, other promotions of the pawn can not occur */ + ce_LoopRecur(loop_pos); + } + } + } + } + + /* capture */ + + loop_pos = initial_pos; + if ( my_color == COLOR_WHITE ) + loop_pos += 15; + else + loop_pos -= 15; + ce_LoopPawnSideCapture(loop_pos); + + + loop_pos = initial_pos; + if ( my_color == COLOR_WHITE ) + loop_pos += 17; + else + loop_pos -= 17; + ce_LoopPawnSideCapture(loop_pos); +} + +/*==============================================================*/ +/* attacked */ +/*==============================================================*/ + +/* + from a starting position, search for a piece, that might jump to that postion. + return: + the two global variables + lrc_obj.find_piece_weight[0]; + lrc_obj.find_piece_weight[1]; + will be increased by the weight of the attacked pieces of that color. + it is usually required to reset these global variables to zero, before using + this function. +*/ + +void ce_FindPieceByStep(uint8_t start_pos, uint8_t piece, const uint8_t *d, uint8_t is_multi_step) +{ + uint8_t loop_pos, cp; + + /* with all directions */ + for(;;) + { + if ( u8g_pgm_read(d) == 0 ) + break; + + /* start again from the initial position */ + loop_pos = start_pos; + + /* check direction */ + do + { + /* check next position into one direction */ + loop_pos += u8g_pgm_read(d); + + /* check if the board boundary has been crossed */ + if ( (loop_pos & 0x088) != 0 ) + break; + + /* get the colored piece from the board */ + cp = cp_GetFromBoard(loop_pos); + + /* stop if we had hit another piece */ + if ( cp_GetPiece(cp) != PIECE_NONE ) + { + /* if it is the piece we are looking for, then add the weight */ + if ( cp_GetPiece(cp) == piece ) + { + lrc_obj.find_piece_weight[cp_GetColor(cp)] += ce_piece_weight[piece]; + lrc_obj.find_piece_cnt[cp_GetColor(cp)]++; + } + /* in any case, break out of the inner loop */ + break; + } + } while( is_multi_step ); + d++; + } +} + +void ce_FindPawnPiece(uint8_t dest_pos, uint8_t color) +{ + uint8_t cp; + /* check if the board boundary has been crossed */ + if ( (dest_pos & 0x088) == 0 ) + { + /* get the colored piece from the board */ + cp = cp_GetFromBoard(dest_pos); + /* only if there is a pawn of the matching color */ + if ( cp_GetPiece(cp) == PIECE_PAWN ) + { + if ( cp_GetColor(cp) == color ) + { + /* the weight of the PAWN */ + lrc_obj.find_piece_weight[color] += 1; + lrc_obj.find_piece_cnt[color]++; + } + } + } +} + + +/* + find out, which pieces do attack a specified field + used to + - check if the KING can do castling + - check if the KING must move + + may be used in the eval procedure ... once... + + the result is stored in the global array + uint8_t lrc_obj.find_piece_weight[2]; + which is indexed with the color. + lrc_obj.find_piece_weight[COLOR_WHITE] is the sum of all white pieces + which can directly move to this field. + + example: + if the black KING is at "pos" and lrc_obj.find_piece_weight[COLOR_WHITE] is not zero + (after executing ce_CalculatePositionWeight(pos)) then the KING must be protected or moveed, because + the KING was given check. +*/ + +void ce_CalculatePositionWeight(uint8_t pos) +{ + + lrc_obj.find_piece_weight[0] = 0; + lrc_obj.find_piece_weight[1] = 0; + lrc_obj.find_piece_cnt[0] = 0; + lrc_obj.find_piece_cnt[1] = 0; + + if ( (pos & 0x088) != 0 ) + return; + + ce_FindPieceByStep(pos, PIECE_ROOK, ce_dir_offset_rook, 1); + ce_FindPieceByStep(pos, PIECE_BISHOP, ce_dir_offset_bishop, 1); + ce_FindPieceByStep(pos, PIECE_QUEEN, ce_dir_offset_queen, 1); + ce_FindPieceByStep(pos, PIECE_KNIGHT, ce_dir_offset_knight, 0); + ce_FindPieceByStep(pos, PIECE_KING, ce_dir_offset_queen, 0); + + ce_FindPawnPiece(pos+17, COLOR_BLACK); + ce_FindPawnPiece(pos+15, COLOR_BLACK); + ce_FindPawnPiece(pos-17, COLOR_WHITE); + ce_FindPawnPiece(pos-15, COLOR_WHITE); +} + +/* + calculate the summed weight of pieces with specified color which can move to a specified position + + argument: + pos: the position which should be analysed + color: the color of those pieces which should be analysed + e.g. if a black piece is at 'pos' and 'color' is white then this procedure returns the white atting count +*/ +uint8_t ce_GetPositionAttackWeight(uint8_t pos, uint8_t color) +{ + ce_CalculatePositionWeight(pos); + return lrc_obj.find_piece_weight[color]; +} + +uint8_t ce_GetPositionAttackCount(uint8_t pos, uint8_t color) +{ + ce_CalculatePositionWeight(pos); + return lrc_obj.find_piece_cnt[color]; +} + + +/*==============================================================*/ +/* depth search starts here: loop over all pieces of the current color on the board */ +/*==============================================================*/ + +void ce_LoopPieces(void) +{ + stack_element_p e = stack_GetCurrElement(); + /* start with lower left position (A1) */ + e->current_pos = 0; + do + { + e->current_cp = cp_GetFromBoard(e->current_pos); + /* check if the position on the board is empty */ + if ( e->current_cp != 0 ) + { + /* only generate moves for the current color */ + if ( e->current_color == cp_GetColor(e->current_cp) ) + { + chess_Thinking(); + + /* find out which piece is used */ + switch(cp_GetPiece(e->current_cp)) + { + case PIECE_NONE: + break; + case PIECE_PAWN: + ce_LoopPawn(); + break; + case PIECE_KNIGHT: + ce_LoopKnight(); + break; + case PIECE_BISHOP: + ce_LoopBishop(); + break; + case PIECE_ROOK: + ce_LoopRook(); + break; + case PIECE_QUEEN: + ce_LoopQueen(); + break; + case PIECE_KING: + ce_LoopKing(); + break; + } + } + } + e->current_pos = cu_NextPos(e->current_pos); + } while( e->current_pos != 0 ); +} + +/*==============================================================*/ +/* user interface */ +/*==============================================================*/ + +/* +eval_t chess_EvalCurrBoard(uint8_t color) +{ + stack_Init(0); + stack_GetCurrElement()->current_color = color; + ce_LoopPieces(); + return stack_GetCurrElement()->best_eval; +} +*/ + +/* clear any marks on the board */ +void chess_ClearMarks(void) +{ + uint8_t i; + for( i = 0; i < 64; i++ ) + lrc_obj.board[i] &= ~CP_MARK_MASK; +} + +/* + Mark all pieces which can do moves. This is done by setting flags on the global board +*/ +void chess_MarkMovable(void) +{ + stack_Init(0); + //stack_GetCurrElement()->current_color = color; + lrc_obj.check_mode = CHECK_MODE_MOVEABLE; + ce_LoopPieces(); +} + +/* + Checks, if the piece can move from src_pos to dest_pos + + src_pos: The game position of a piece on the chess board +*/ +void chess_MarkTargetMoves(uint8_t src_pos) +{ + stack_Init(0); + stack_GetCurrElement()->current_color = cp_GetColor(cp_GetFromBoard(src_pos)); + lrc_obj.check_src_pos = src_pos; + lrc_obj.check_mode = CHECK_MODE_TARGET_MOVE; + ce_LoopPieces(); +} + +/* + first call should start with 255 + this procedure will return 255 if + - there are no marks at all + - it has looped over all marks once +*/ +uint8_t chess_GetNextMarked(uint8_t arg, uint8_t is_prev) +{ + uint8_t i; + uint8_t pos = arg; + for(i = 0; i < 64; i++) + { + if ( is_prev != 0 ) + pos = cu_PrevPos(pos); + else + pos = cu_NextPos(pos); + if ( arg != 255 && pos == 0 ) + return 255; + if ( cp_IsMarked(cp_GetFromBoard(pos)) ) + return pos; + } + return 255; +} + + +/* make a manual move: this is a little bit more than cu_Move() */ +void chess_ManualMove(uint8_t src, uint8_t dest) +{ + uint8_t cp; + + /* printf("chess_ManualMove %02x -> %02x\n", src, dest); */ + + /* if all other things fail, this is the place where the game is to be decided: */ + /* ... if the KING is captured */ + cp = cp_GetFromBoard(dest); + if ( cp_GetPiece(cp) == PIECE_KING ) + { + lrc_obj.is_game_end = 1; + lrc_obj.lost_side_color = cp_GetColor(cp); + } + + /* clear ply history here, to avoid memory overflow */ + /* may be the last X moves can be kept here */ + cu_ReduceHistoryByFullMove(); + /* perform the move on the board */ + cu_Move(src, dest); + + /* update en passant double move positions: en passant position is removed after two half moves */ + lrc_obj.pawn_dbl_move[lrc_obj.ply_count&1] = ILLEGAL_POSITION; + + /* update the global half move counter */ + lrc_obj.ply_count++; + + + /* make a small check about the end of the game */ + /* use at least depth 1, because we must know if the king can still move */ + /* this is: King moves at level 0 and will be captured at level 1 */ + /* so we check if the king can move and will not be captured at search level 1 */ + + stack_Init(1); + ce_LoopPieces(); + + /* printf("chess_ManualMove/analysis best_from_pos %02x -> best_to_pos %02x\n", stack_GetCurrElement()->best_from_pos, stack_GetCurrElement()->best_to_pos); */ + + /* analyse the eval result */ + + /* check if the other player has any moves left */ + if ( stack_GetCurrElement()->best_from_pos == ILLEGAL_POSITION ) + { + uint8_t color; + /* conditions: */ + /* 1. no King, should never happen, opposite color has won */ + /* this is already checked above at the beginning if this procedure */ + /* 2. King is under attack, opposite color has won */ + /* 3. King is not under attack, game is a draw */ + + uint8_t i = 0; + color = lrc_obj.ply_count; + color &= 1; + do + { + cp = cp_GetFromBoard(i); + /* look for the King */ + if ( cp_GetPiece(cp) == PIECE_KING ) + { + if ( cp_GetColor(cp) == color ) + { + /* check if KING is attacked */ + if ( ce_GetPositionAttackCount(i, color^1) != 0 ) + { + /* KING is under attack (check) and can not move: Game is lost */ + lrc_obj.is_game_end = 1; + lrc_obj.lost_side_color = color; + } + else + { + /* KING is NOT under attack (check) but can not move: Game is a draw */ + lrc_obj.is_game_end = 1; + lrc_obj.lost_side_color = 2; + } + /* break out of the loop */ + break; + } + } + i = cu_NextPos(i); + } while( i != 0 ); + } +} + +/* let the computer do a move */ +void chess_ComputerMove(uint8_t depth) +{ + stack_Init(depth); + + //stack_GetCurrElement()->current_color = lrc_obj.ply_count; + //stack_GetCurrElement()->current_color &= 1; + + cu_ReduceHistoryByFullMove(); + ce_LoopPieces(); + + chess_ManualMove(stack_GetCurrElement()->best_from_pos, stack_GetCurrElement()->best_to_pos); +} + + +/*==============================================================*/ +/* unix code */ +/*==============================================================*/ + +#ifdef UNIX_MAIN + +#include +#include + +char *piece_str[] = { + /* 0x00 */ + " ", + "wP", + "wN", + "wB", + + /* 0x04 */ + "wR", + "wQ", + "wK", + "w?", + + /* 0x08 */ + "w?", + "w?", + "w?", + "w?", + + /* 0x0c */ + "w?", + "w?", + "w?", + "w?", + + /* 0x10 */ + "b ", + "bP", + "bN", + "bB", + "bR", + "bQ", + "bK", + "b?", + + "b?", + "b?", + "b?", + "b?", + "b?", + "b?", + "b?", + "b?" +}; + +void chess_Thinking(void) +{ + uint8_t i; + uint8_t cp = cp_GetPiece(stack_GetCurrElement()->current_cp); + + printf("Thinking: ", piece_str[cp], stack_GetCurrElement()->current_pos); + + for( i = 0; i <= lrc_obj.curr_depth; i++ ) + printf("%s ", piece_str[(lrc_obj.stack_memory+i)->current_cp]); + + printf(" \r"); +} + +void board_Show(void) +{ + uint8_t i, j, cp; + char buf[10]; + for ( i = 0; i < 8; i++ ) + { + printf("%1d ", 7-i); + for ( j = 0; j < 8; j++ ) + { + /* get piece from global board */ + cp = lrc_obj.board[(7-i)*8+j]; + strcpy(buf, piece_str[cp&COLOR_PIECE_MASK]); + + if ( (cp & CP_MARK_MASK) != 0 ) + { + buf[0] = '#'; + } + + /* mask out any bits except color and piece index */ + cp &= COLOR_PIECE_MASK; + printf("%s %02x ", buf, cp); + + } + printf("\n"); + } +} + +int main(void) +{ + uint8_t depth = 3; + chess_SetupBoard(); + board_Show(); + puts(""); + + + /* + chess_ClearMarks(); + chess_MarkMovable(COLOR_WHITE); + board_Show(); + */ + + chess_ManualMove(0x006, 0x066); + + printf("lrc_obj.is_game_end: %d\n" , lrc_obj.is_game_end); + printf("lrc_obj.lost_side_color: %d\n" , lrc_obj.lost_side_color); + + chess_ComputerMove(2); + + printf("lrc_obj.is_game_end: %d\n" , lrc_obj.is_game_end); + printf("lrc_obj.lost_side_color: %d\n" , lrc_obj.lost_side_color); + + board_Show(); + +} + + + +#else + +/*==============================================================*/ +/* display menu */ +/*==============================================================*/ + +//#define MNU_FONT font_5x7 +#define MNU_FONT u8g_font_5x8r +//#define MNU_FONT font_6x9 +#define MNU_ENTRY_HEIGHT 9 + +char *mnu_title = "Little Rook Chess"; +char *mnu_list[] = { "New Game (White)", "New Game (Black)", "Undo Move", "Return" }; +uint8_t mnu_pos = 0; +uint8_t mnu_max = 4; + +void mnu_DrawHome(uint8_t is_highlight) +{ + uint8_t x = lrc_u8g->width - 35; + uint8_t y = (lrc_u8g->height-1); + uint8_t t; + + u8g_SetFont(lrc_u8g, u8g_font_5x7r); + u8g_SetDefaultForegroundColor(lrc_u8g); + t = u8g_DrawStrP(lrc_u8g, x, y -1, U8G_PSTR("Options")); + + if ( is_highlight ) + u8g_DrawFrame(lrc_u8g, x-1, y - MNU_ENTRY_HEIGHT +1, t, MNU_ENTRY_HEIGHT); +} + +void mnu_DrawEntry(uint8_t y, char *str, uint8_t is_clr_background, uint8_t is_highlight) +{ + uint8_t t, x; + u8g_SetFont(lrc_u8g, MNU_FONT); + t = u8g_GetStrWidth(lrc_u8g, str); + x = u8g_GetWidth(lrc_u8g); + x -= t; + x >>= 1; + + if ( is_clr_background ) + { + u8g_SetDefaultBackgroundColor(lrc_u8g); + u8g_DrawBox(lrc_u8g, x-3, (lrc_u8g->height-1) - (y+MNU_ENTRY_HEIGHT-1+2), t+5, MNU_ENTRY_HEIGHT+4); + } + + u8g_SetDefaultForegroundColor(lrc_u8g); + u8g_DrawStr(lrc_u8g, x, (lrc_u8g->height-1) - y, str); + + if ( is_highlight ) + { + u8g_DrawFrame(lrc_u8g, x-1, (lrc_u8g->height-1) - y -MNU_ENTRY_HEIGHT +1, t, MNU_ENTRY_HEIGHT); + } +} + +void mnu_Draw(void) +{ + uint8_t i; + uint8_t t,y; + /* calculate hight of the complete menu */ + y = mnu_max; + y++; /* consider also some space for the title */ + y++; /* consider also some space for the title */ + y *= MNU_ENTRY_HEIGHT; + + /* calculate how much space will be left */ + t = u8g_GetHeight(lrc_u8g); + t -= y; + + /* topmost pos start half of that empty space from the top */ + t >>= 1; + y = u8g_GetHeight(lrc_u8g); + y -= t; + + y -= MNU_ENTRY_HEIGHT; + mnu_DrawEntry(y, mnu_title, 0, 0); + + y -= MNU_ENTRY_HEIGHT; + + + for( i = 0; i < mnu_max; i++ ) + { + y -= MNU_ENTRY_HEIGHT; + mnu_DrawEntry(y, mnu_list[i], 0, i == mnu_pos); + } +} + +void mnu_Step(uint8_t key_cmd) +{ + if ( key_cmd == CHESS_KEY_NEXT ) + { + if ( mnu_pos+1 < mnu_max ) + mnu_pos++; + } + else if ( key_cmd == CHESS_KEY_PREV ) + { + if ( mnu_pos > 0 ) + mnu_pos--; + } +} + + + + +uint8_t chess_key_code = 0; +uint8_t chess_key_cmd = 0; +#define CHESS_STATE_MENU 0 +#define CHESS_STATE_SELECT_START 1 +#define CHESS_STATE_SELECT_PIECE 2 +#define CHESS_STATE_SELECT_TARGET_POS 3 +#define CHESS_STATE_THINKING 4 +#define CHESS_STATE_GAME_END 5 +uint8_t chess_state = CHESS_STATE_MENU; +uint8_t chess_source_pos = 255; +uint8_t chess_target_pos = 255; + +const uint8_t chess_pieces_body_bm[] PROGMEM = +{ + /* PAWN */ 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, /* 0x00, 0x00, 0x00, 0x0c, 0x0c, 0x00, 0x00, 0x00, */ + /* KNIGHT */ 0x00, 0x00, 0x1c, 0x2c, 0x04, 0x04, 0x0e, 0x00, + /* BISHOP */ 0x00, 0x00, 0x1c, 0x1c, 0x1c, 0x08, 0x00, 0x00, /* 0x00, 0x00, 0x08, 0x1c, 0x1c, 0x08, 0x00, 0x00, */ + /* ROOK */ 0x00, 0x00, 0x00, 0x1c, 0x1c, 0x1c, 0x1c, 0x00, + /* QUEEN */ 0x00, 0x00, 0x14, 0x1c, 0x08, 0x1c, 0x08, 0x00, + /* KING */ 0x00, 0x00, 0x00, 0x08, 0x3e, 0x1c, 0x08, 0x00, +}; + +#ifdef NOT_REQUIRED +/* white pieces are constructed by painting black pieces and cutting out the white area */ +const uint8_t chess_white_pieces_bm[] PROGMEM = +{ + /* PAWN */ 0x00, 0x00, 0x0c, 0x12, 0x12, 0x0c, 0x1e, 0x00, + /* KNIGHT */ 0x00, 0x1c, 0x22, 0x52, 0x6a, 0x0a, 0x11, 0x1f, + /* BISHOP */ 0x00, 0x08, 0x14, 0x22, 0x22, 0x14, 0x08, 0x7f, + /* ROOK */ 0x00, 0x55, 0x7f, 0x22, 0x22, 0x22, 0x22, 0x7f, + /* QUEEN */ 0x00, 0x55, 0x2a, 0x22, 0x14, 0x22, 0x14, 0x7f, + /* KING */ 0x08, 0x1c, 0x49, 0x77, 0x41, 0x22, 0x14, 0x7f, +}; +#endif + +const uint8_t chess_black_pieces_bm[] PROGMEM = +{ + /* PAWN */ 0x00, 0x00, 0x18, 0x3c, 0x3c, 0x18, 0x3c, 0x00, /* 0x00, 0x00, 0x0c, 0x1e, 0x1e, 0x0c, 0x1e, 0x00, */ + /* KNIGHT */ 0x00, 0x1c, 0x3e, 0x7e, 0x6e, 0x0e, 0x1f, 0x1f, + /* BISHOP */ 0x00, 0x1c, 0x2e, 0x3e, 0x3e, 0x1c, 0x08, 0x7f, /*0x00, 0x08, 0x1c, 0x3e, 0x3e, 0x1c, 0x08, 0x7f,*/ + /* ROOK */ 0x00, 0x55, 0x7f, 0x3e, 0x3e, 0x3e, 0x3e, 0x7f, + /* QUEEN */ 0x00, 0x55, 0x3e, 0x3e, 0x1c, 0x3e, 0x1c, 0x7f, + /* KING -*/ 0x08, 0x1c, 0x49, 0x7f, 0x7f, 0x3e, 0x1c, 0x7f, +}; + + +#if defined(DOGXL160_HW_GR) +#define BOXSIZE 13 +#define BOXOFFSET 3 +#else +#define BOXSIZE 8 +#define BOXOFFSET 1 +#endif + +u8g_uint_t chess_low_edge; +uint8_t chess_boxsize = 8; +uint8_t chess_boxoffset = 1; + + +void chess_DrawFrame(uint8_t pos, uint8_t is_bold) +{ + u8g_uint_t x0, y0; + + x0 = pos; + x0 &= 15; + if ( lrc_obj.orientation != COLOR_WHITE ) + x0 ^= 7; + + y0 = pos; + y0>>= 4; + if ( lrc_obj.orientation != COLOR_WHITE ) + y0 ^= 7; + + x0 *= chess_boxsize; + y0 *= chess_boxsize; + + u8g_SetDefaultForegroundColor(lrc_u8g); + u8g_DrawFrame(lrc_u8g, x0, chess_low_edge - y0 - chess_boxsize+1, chess_boxsize, chess_boxsize); + + + if ( is_bold ) + { + x0--; + y0++; + + u8g_DrawFrame(lrc_u8g, x0, chess_low_edge - y0 - chess_boxsize +1, chess_boxsize+2, chess_boxsize+2); + } +} + + +void chess_DrawBoard(void) +{ + uint8_t i, j, cp; + const uint8_t *ptr; /* pointer into PROGMEM */ + + if ( U8G_MODE_GET_BITS_PER_PIXEL(u8g_GetMode(lrc_u8g)) > 1 ) + { + for( i = 0; i < 8; i++ ) + for( j = 0; j < 8; j++ ) + { + uint8_t x,y; + x = i; + x*=chess_boxsize; + y = j; + y*=chess_boxsize; + if ( ((i^j) & 1) == 0 ) + u8g_SetDefaultMidColor(lrc_u8g); + else + u8g_SetDefaultBackgroundColor(lrc_u8g); + u8g_DrawBox(lrc_u8g, x,chess_low_edge-y-chess_boxsize+1,chess_boxsize,chess_boxsize); + } + //u8g_SetDefaultForegroundColor(lrc_u8g); + } + else + { + uint8_t x_offset = 1; + u8g_SetDefaultForegroundColor(lrc_u8g); + for( i = 0; i < 8*8; i+=8 ) + { + for( j = 0; j < 8*8; j+=8 ) + { + if ( ((i^j) & 8) == 0 ) + { + u8g_DrawPixel(lrc_u8g, j+0+x_offset, chess_low_edge - i-0); + u8g_DrawPixel(lrc_u8g, j+0+x_offset, chess_low_edge - i-2); + u8g_DrawPixel(lrc_u8g, j+0+x_offset, chess_low_edge - i-4); + u8g_DrawPixel(lrc_u8g, j+0+x_offset, chess_low_edge - i-6); + u8g_DrawPixel(lrc_u8g, j+2+x_offset, chess_low_edge - i-0); + u8g_DrawPixel(lrc_u8g, j+2+x_offset, chess_low_edge - i-6); + u8g_DrawPixel(lrc_u8g, j+4+x_offset, chess_low_edge - i-0); + u8g_DrawPixel(lrc_u8g, j+4+x_offset, chess_low_edge - i-6); + u8g_DrawPixel(lrc_u8g, j+6+x_offset, chess_low_edge - i-0); + u8g_DrawPixel(lrc_u8g, j+6+x_offset, chess_low_edge - i-2); + u8g_DrawPixel(lrc_u8g, j+6+x_offset, chess_low_edge - i-4); + u8g_DrawPixel(lrc_u8g, j+6+x_offset, chess_low_edge - i-6); + } + } + } + } + + for ( i = 0; i < 8; i++ ) + { + for ( j = 0; j < 8; j++ ) + { + /* get piece from global board */ + if ( lrc_obj.orientation == COLOR_WHITE ) + { + cp = lrc_obj.board[i*8+j]; + } + else + { + cp = lrc_obj.board[(7-i)*8+7-j]; + } + if ( cp_GetPiece(cp) != PIECE_NONE ) + { + ptr = chess_black_pieces_bm; + ptr += (cp_GetPiece(cp)-1)*8; + u8g_SetDefaultForegroundColor(lrc_u8g); + u8g_DrawBitmapP(lrc_u8g, j*chess_boxsize+chess_boxoffset-1, chess_low_edge - (i*chess_boxsize+chess_boxsize-chess_boxoffset), 1, 8, ptr); + + if ( cp_GetColor(cp) == lrc_obj.strike_out_color ) + { + ptr = chess_pieces_body_bm; + ptr += (cp_GetPiece(cp)-1)*8; + u8g_SetDefaultBackgroundColor(lrc_u8g); + u8g_DrawBitmapP(lrc_u8g, j*chess_boxsize+chess_boxoffset-1, chess_low_edge - (i*chess_boxsize+chess_boxsize-chess_boxoffset), 1, 8, ptr); + } + } + } + } + + if ( (chess_source_pos & 0x88) == 0 ) + { + chess_DrawFrame(chess_source_pos, 1); + } + + if ( (chess_target_pos & 0x88) == 0 ) + { + chess_DrawFrame(chess_target_pos, 0); + } + +} + + +void chess_Thinking(void) +{ +} + +void chess_Init(u8g_t *u8g, uint8_t body_color) +{ + lrc_u8g = u8g; + + chess_low_edge = u8g_GetHeight(lrc_u8g); + chess_low_edge--; + + + if ( U8G_MODE_GET_BITS_PER_PIXEL(u8g_GetMode(lrc_u8g)) == 1 ) + { + + chess_boxsize = 8; + chess_boxoffset = 1; + } + else + { + + /* + if ( u8g_GetHeight(lrc_u8g) >= 12*8 ) + { + chess_boxsize = 12; + chess_boxoffset = 3; + } + else */ if ( u8g_GetHeight(lrc_u8g) >= 11*8 ) + { + chess_boxsize = 10; + chess_boxoffset = 2; + } + else + { + chess_boxsize = 8; + chess_boxoffset = 1; + } + + if ( u8g_GetHeight(lrc_u8g) > 64 ) + chess_low_edge -= (u8g_GetHeight(lrc_u8g)-chess_boxsize*8) / 2; + + } + + lrc_obj.strike_out_color = body_color; + chess_SetupBoard(); +} + + + +void chess_Draw(void) +{ + if ( chess_state == CHESS_STATE_MENU ) + { + if ( lrc_obj.ply_count == 0) + mnu_max = 2; + else + mnu_max = 4; + mnu_Draw(); + } + else + { + chess_DrawBoard(); + + { + uint8_t i; + uint8_t entries = lrc_obj.chm_pos; + if ( entries > 4 ) + entries = 4; + + u8g_SetFont(lrc_u8g, u8g_font_5x7); + u8g_SetDefaultForegroundColor(lrc_u8g); + for( i = 0; i < entries; i++ ) + { + +#if defined(DOGXL160_HW_GR) || defined(DOGXL160_HW_BW) + dog_DrawStr(u8g_GetWidth(lrc_u8g)-35, u8g_GetHeight(lrc_u8g)-8*(i+1), font_5x7, cu_GetHalfMoveStr(lrc_obj.chm_pos-entries+i)); +#else + u8g_DrawStr(lrc_u8g, u8g_GetWidth(lrc_u8g)-35, 8*(i+1), cu_GetHalfMoveStr(lrc_obj.chm_pos-entries+i)); +#endif + + } + + } + + if ( chess_state == CHESS_STATE_SELECT_PIECE ) + mnu_DrawHome(chess_source_pos == 255); + else if ( chess_state == CHESS_STATE_SELECT_TARGET_POS ) + mnu_DrawHome(chess_target_pos == 255); + else + mnu_DrawHome(0); + + if ( chess_state == CHESS_STATE_GAME_END ) + { + switch( lrc_obj.lost_side_color ) + { + case COLOR_WHITE: + mnu_DrawEntry(u8g_GetHeight(lrc_u8g) / 2-2, "Black wins", 1, 1); + break; + case COLOR_BLACK: + mnu_DrawEntry(u8g_GetHeight(lrc_u8g) / 2-2, "White wins", 1, 1); + break; + default: + mnu_DrawEntry(u8g_GetHeight(lrc_u8g) / 2-2, "Stalemate", 1, 1); + break; + } + } + } +} + + +void chess_Step(uint8_t keycode) +{ + if ( keycode == CHESS_KEY_NONE ) + { + chess_key_cmd = chess_key_code; + chess_key_code = CHESS_KEY_NONE; + } + else + { + chess_key_cmd = CHESS_KEY_NONE; + chess_key_code = keycode; + } + //chess_ComputerMove(2); + switch(chess_state) + { + case CHESS_STATE_MENU: + mnu_Step(chess_key_cmd); + if ( chess_key_cmd == CHESS_KEY_SELECT ) + { + if ( mnu_pos == 0 ) + { + chess_SetupBoard(); + lrc_obj.orientation = 0; + chess_state = CHESS_STATE_SELECT_START; + } + else if ( mnu_pos == 1 ) + { + chess_SetupBoard(); + lrc_obj.orientation = 1; + chess_state = CHESS_STATE_THINKING; + } + else if ( mnu_pos == 2 ) + { + if ( lrc_obj.ply_count >= 2 ) + { + cu_UndoHalfMove(); + cu_UndoHalfMove(); + lrc_obj.ply_count-=2; + if ( lrc_obj.ply_count == 0 ) + mnu_pos = 0; + } + chess_state = CHESS_STATE_SELECT_START; + } + else if ( mnu_pos == 3 ) + { + chess_state = CHESS_STATE_SELECT_START; + } + } + break; + case CHESS_STATE_SELECT_START: + chess_ClearMarks(); + chess_MarkMovable(); + chess_source_pos = chess_GetNextMarked(255, 0); + chess_target_pos = ILLEGAL_POSITION; + chess_state = CHESS_STATE_SELECT_PIECE; + break; + + case CHESS_STATE_SELECT_PIECE: + if ( chess_key_cmd == CHESS_KEY_NEXT ) + { + chess_source_pos = chess_GetNextMarked(chess_source_pos, 0); + } + else if ( chess_key_cmd == CHESS_KEY_PREV ) + { + chess_source_pos = chess_GetNextMarked(chess_source_pos, 1); + } + else if ( chess_key_cmd == CHESS_KEY_SELECT ) + { + if ( chess_source_pos == 255 ) + { + chess_state = CHESS_STATE_MENU; + } + else + { + chess_ClearMarks(); + chess_MarkTargetMoves(chess_source_pos); + chess_target_pos = chess_GetNextMarked(255, 0); + chess_state = CHESS_STATE_SELECT_TARGET_POS; + } + } + break; + case CHESS_STATE_SELECT_TARGET_POS: + if ( chess_key_cmd == CHESS_KEY_NEXT ) + { + chess_target_pos = chess_GetNextMarked(chess_target_pos, 0); + } + else if ( chess_key_cmd == CHESS_KEY_PREV ) + { + chess_target_pos = chess_GetNextMarked(chess_target_pos, 1); + } + else if ( chess_key_cmd == CHESS_KEY_BACK ) + { + chess_ClearMarks(); + chess_MarkMovable(); + chess_target_pos = ILLEGAL_POSITION; + chess_state = CHESS_STATE_SELECT_PIECE; + } + else if ( chess_key_cmd == CHESS_KEY_SELECT ) + { + chess_ManualMove(chess_source_pos, chess_target_pos); + if ( lrc_obj.is_game_end != 0 ) + chess_state = CHESS_STATE_GAME_END; + else + chess_state = CHESS_STATE_THINKING; + /* clear marks as some kind of feedback to the user... it simply looks better */ + chess_source_pos = ILLEGAL_POSITION; + chess_target_pos = ILLEGAL_POSITION; + chess_ClearMarks(); + } + break; + case CHESS_STATE_THINKING: + chess_ComputerMove(2); + if ( lrc_obj.is_game_end != 0 ) + chess_state = CHESS_STATE_GAME_END; + else + chess_state = CHESS_STATE_SELECT_START; + break; + case CHESS_STATE_GAME_END: + if ( chess_key_cmd != CHESS_KEY_NONE ) + { + chess_state = CHESS_STATE_MENU; + chess_SetupBoard(); + } + break; + } + +} + +#endif + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g.h b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g.h new file mode 100644 index 0000000000000000000000000000000000000000..f5a0230acb7fc22773ea9c190d0208a839b430d3 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g.h @@ -0,0 +1,1607 @@ +/* + + u8g.h + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#ifndef _U8G_H +#define _U8G_H + +//#define U8G_16BIT 1 + +#include + +#ifdef __18CXX +typedef unsigned char uint8_t; +typedef signed char int8_t; +typedef unsigned short uint16_t; +typedef signed short int16_t; +#else +#include +#endif + +#if defined(__AVR__) +#include +#endif + +#ifdef __cplusplus +extern "C" { +#endif + + +/*===============================================================*/ +#ifdef __GNUC__ +#define U8G_NOINLINE __attribute__((noinline)) +#define U8G_PURE __attribute__ ((pure)) +#define U8G_NOCOMMON __attribute__ ((nocommon)) +#define U8G_SECTION(name) __attribute__ ((section (name))) +#else +#define U8G_NOINLINE +#define U8G_PURE +#define U8G_NOCOMMON +#define U8G_SECTION(name) +#endif + +/*===============================================================*/ +/* flash memory access */ + +#if defined(__AVR__) +/* U8G_PROGMEM is used by the XBM example */ +#define U8G_PROGMEM U8G_SECTION(".progmem.data") +typedef uint8_t PROGMEM u8g_pgm_uint8_t; +typedef uint8_t u8g_fntpgm_uint8_t; +#define u8g_pgm_read(adr) pgm_read_byte_near(adr) +#define U8G_PSTR(s) ((u8g_pgm_uint8_t *)PSTR(s)) +#else +#define U8G_PROGMEM +#define PROGMEM +typedef uint8_t u8g_pgm_uint8_t; +typedef uint8_t u8g_fntpgm_uint8_t; +#define u8g_pgm_read(adr) (*(const u8g_pgm_uint8_t *)(adr)) +#define U8G_PSTR(s) ((u8g_pgm_uint8_t *)(s)) +#endif + +/*===============================================================*/ +/* forward */ +typedef struct _u8g_t u8g_t; +typedef struct _u8g_dev_t u8g_dev_t; + +typedef struct _u8g_dev_arg_pixel_t u8g_dev_arg_pixel_t; +typedef struct _u8g_dev_arg_bbx_t u8g_dev_arg_bbx_t; +typedef struct _u8g_box_t u8g_box_t; + + +/*===============================================================*/ +/* generic */ +#if defined(U8G_16BIT) +typedef uint16_t u8g_uint_t; +typedef int16_t u8g_int_t; +#else +typedef uint8_t u8g_uint_t; +typedef int8_t u8g_int_t; +#endif + +#ifdef OBSOLETE +struct _u8g_box_t +{ + u8g_uint_t x0, y0, x1, y1; +}; +typedef struct _u8g_box_t u8g_box_t; +#endif /* OBSOLETE */ + + +/*===============================================================*/ +/* device structure */ + +#ifdef __XC8 +/* device prototype */ +typedef uint8_t (*u8g_dev_fnptr)(void *u8g, void *dev, uint8_t msg, void *arg); + +/* com prototype */ +typedef uint8_t (*u8g_com_fnptr)(void *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); +#else +/* device prototype */ +typedef uint8_t (*u8g_dev_fnptr)(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* com prototype */ +typedef uint8_t (*u8g_com_fnptr)(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); +#endif + + + +struct _u8g_dev_t +{ + u8g_dev_fnptr dev_fn; /* device procedure */ + void *dev_mem; /* device memory */ + u8g_com_fnptr com_fn; /* communication procedure */ +}; + + +/*===============================================================*/ +/* device list */ + +/* Size: 128x64 SDL, u8g_dev_sdl.c */ +extern u8g_dev_t u8g_dev_sdl_1bit; +extern u8g_dev_t u8g_dev_sdl_1bit_h; +extern u8g_dev_t u8g_dev_sdl_2bit; +extern u8g_dev_t u8g_dev_sdl_2bit_double_mem; +extern u8g_dev_t u8g_dev_sdl_8bit; +int u8g_sdl_get_key(void); + +/* Size: 70x30 monochrom, stdout */ +extern u8g_dev_t u8g_dev_stdout; + +/* Size: monochrom, writes "u8g.pbm" */ +extern u8g_dev_t u8g_dev_pbm; +extern u8g_dev_t u8g_dev_pbm_8h1; +extern u8g_dev_t u8g_dev_pbm_8h2; /* grayscale simulation */ + +/* Size: 128x64 monochrom, no output, used for performance measure */ +extern u8g_dev_t u8g_dev_gprof; + +/* Display: EA DOGS102, Size: 102x64 monochrom */ +extern u8g_dev_t u8g_dev_uc1701_dogs102_sw_spi; +extern u8g_dev_t u8g_dev_uc1701_dogs102_hw_spi; + +/* Display: Mini12864 (dealextreme), Size: 128x64 monochrom */ +extern u8g_dev_t u8g_dev_uc1701_mini12864_sw_spi; +extern u8g_dev_t u8g_dev_uc1701_mini12864_hw_spi; + +/* Display: EA DOGM132, Size: 128x32 monochrom */ +extern u8g_dev_t u8g_dev_st7565_dogm132_sw_spi; +extern u8g_dev_t u8g_dev_st7565_dogm132_hw_spi; + +/* Display: EA DOGM128, Size: 128x64 monochrom */ +extern u8g_dev_t u8g_dev_st7565_dogm128_sw_spi; +extern u8g_dev_t u8g_dev_st7565_dogm128_hw_spi; +/* Display: Topway LM6063 128x64 */ +extern u8g_dev_t u8g_dev_st7565_lm6063_sw_spi; +extern u8g_dev_t u8g_dev_st7565_lm6063_hw_spi; +/* Display: Topway LM6059 128x64 (Adafruit) */ +extern u8g_dev_t u8g_dev_st7565_lm6059_sw_spi; +extern u8g_dev_t u8g_dev_st7565_lm6059_hw_spi; +/* Display: Newhaven NHD-C12864 */ +extern u8g_dev_t u8g_dev_st7565_nhd_c12864_sw_spi; +extern u8g_dev_t u8g_dev_st7565_nhd_c12864_hw_spi; +/* Display: Newhaven NHD-C12832 */ +extern u8g_dev_t u8g_dev_st7565_nhd_c12832_sw_spi; +extern u8g_dev_t u8g_dev_st7565_nhd_c12832_hw_spi; +extern u8g_dev_t u8g_dev_st7565_nhd_c12832_parallel; +/* Display: Displaytech 64128N */ +extern u8g_dev_t u8g_dev_st7565_64128n_sw_spi; +extern u8g_dev_t u8g_dev_st7565_64128n_hw_spi; + +/* dfrobot 128x64 Graphic LCD (SKU:FIT0021) */ +extern u8g_dev_t u8g_dev_st7920_128x64_sw_spi; +extern u8g_dev_t u8g_dev_st7920_128x64_hw_spi; +extern u8g_dev_t u8g_dev_st7920_128x64_8bit; + +extern u8g_dev_t u8g_dev_st7920_128x64_4x_sw_spi; +extern u8g_dev_t u8g_dev_st7920_128x64_4x_hw_spi; +extern u8g_dev_t u8g_dev_st7920_128x64_4x_8bit; + +/* NHD-19232WG */ +extern u8g_dev_t u8g_dev_st7920_192x32_sw_spi; +extern u8g_dev_t u8g_dev_st7920_192x32_hw_spi; +extern u8g_dev_t u8g_dev_st7920_192x32_8bit; + +extern u8g_dev_t u8g_dev_st7920_192x32_4x_sw_spi; +extern u8g_dev_t u8g_dev_st7920_192x32_4x_hw_spi; +extern u8g_dev_t u8g_dev_st7920_192x32_4x_8bit; + +/* CrystalFontz CFAG20232 */ +extern u8g_dev_t u8g_dev_st7920_202x32_sw_spi; +extern u8g_dev_t u8g_dev_st7920_202x32_hw_spi; +extern u8g_dev_t u8g_dev_st7920_202x32_8bit; + +extern u8g_dev_t u8g_dev_st7920_202x32_4x_sw_spi; +extern u8g_dev_t u8g_dev_st7920_202x32_4x_hw_spi; +extern u8g_dev_t u8g_dev_st7920_202x32_4x_8bit; + +/* LC7981 160x80 display */ +extern u8g_dev_t u8g_dev_lc7981_160x80_8bit; +/* LC7981 240x64 display */ +extern u8g_dev_t u8g_dev_lc7981_240x64_8bit; +/* LC7981 240x128 display */ +extern u8g_dev_t u8g_dev_lc7981_240x128_8bit; +/* LC7981 320x64 display */ +extern u8g_dev_t u8g_dev_lc7981_320x64_8bit; + +/* T6963, all t6963 devices have double page (2x) */ +extern u8g_dev_t u8g_dev_t6963_240x128_8bit; +extern u8g_dev_t u8g_dev_t6963_240x64_8bit; +extern u8g_dev_t u8g_dev_t6963_128x64_8bit; + +/* Display: EA DOGXL160, Size: 160x104 monochrom & gray level */ +extern u8g_dev_t u8g_dev_uc1610_dogxl160_bw_sw_spi; +extern u8g_dev_t u8g_dev_uc1610_dogxl160_bw_hw_spi; +extern u8g_dev_t u8g_dev_uc1610_dogxl160_gr_sw_spi; +extern u8g_dev_t u8g_dev_uc1610_dogxl160_gr_hw_spi; + +extern u8g_dev_t u8g_dev_uc1610_dogxl160_2x_bw_sw_spi; +extern u8g_dev_t u8g_dev_uc1610_dogxl160_2x_bw_hw_spi; +extern u8g_dev_t u8g_dev_uc1610_dogxl160_2x_gr_sw_spi; +extern u8g_dev_t u8g_dev_uc1610_dogxl160_2x_gr_hw_spi; + +/* Display: Generic KS0108b, Size: 128x64 monochrom */ +extern u8g_dev_t u8g_dev_ks0108_128x64; /* official Arduino Library interface */ +extern u8g_dev_t u8g_dev_ks0108_128x64_fast; /* faster, but uses private tables from the Arduino Library */ + +/* Nokia 84x48 Display with PCD8544 */ +extern u8g_dev_t u8g_dev_pcd8544_84x48_sw_spi; +extern u8g_dev_t u8g_dev_tls8204_84x48_sw_spi; + +/* Nokia 96x65 Display with PCF8812 */ +extern u8g_dev_t u8g_dev_pcf8812_96x65_sw_spi; + +/* NHD-2.7-12864UCY3 OLED Display with SSD1325 Controller */ +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_bw_sw_spi; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_bw_hw_spi; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_bw_parallel; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_gr_sw_spi; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_gr_hw_spi; + +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_sw_spi; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_hw_spi; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_parallel; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_gr_sw_spi; +extern u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_gr_hw_spi; + +/* LY120 OLED with SSD1327 Controller (tested with Seeedstudio module) */ +extern u8g_dev_t u8g_dev_ssd1327_96x96_gr_sw_spi; +extern u8g_dev_t u8g_dev_ssd1327_96x96_gr_hw_spi; +extern u8g_dev_t u8g_dev_ssd1327_96x96_gr_i2c; + +extern u8g_dev_t u8g_dev_ssd1327_96x96_2x_gr_sw_spi; +extern u8g_dev_t u8g_dev_ssd1327_96x96_2x_gr_hw_spi; +extern u8g_dev_t u8g_dev_ssd1327_96x96_2x_gr_i2c; + +/* NHD-3.12-25664 OLED Display with SSD1322 Controller */ +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_bw_sw_spi; +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_bw_hw_spi; +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_bw_sw_spi; +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_bw_hw_spi; + +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_gr_sw_spi; +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_gr_hw_spi; +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_gr_sw_spi; +extern u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_gr_hw_spi; + +/* OLED 128x64 Display with SSD1306 Controller */ +extern u8g_dev_t u8g_dev_ssd1306_128x64_sw_spi; +extern u8g_dev_t u8g_dev_ssd1306_128x64_hw_spi; +extern u8g_dev_t u8g_dev_ssd1306_128x64_i2c; + +/* OLED 128x64 Display with SSD1309 Controller */ +extern u8g_dev_t u8g_dev_ssd1309_128x64_sw_spi; +extern u8g_dev_t u8g_dev_ssd1309_128x64_hw_spi; +extern u8g_dev_t u8g_dev_ssd1309_128x64_i2c; + +/* OLED 128x32 Display with SSD1306 Controller */ +extern u8g_dev_t u8g_dev_ssd1306_128x32_sw_spi; +extern u8g_dev_t u8g_dev_ssd1306_128x32_hw_spi; +extern u8g_dev_t u8g_dev_ssd1306_128x32_i2c; + +/* experimental 65K TFT with st7687 controller */ +extern u8g_dev_t u8g_dev_st7687_c144mvgd_sw_spi; +extern u8g_dev_t u8g_dev_st7687_c144mvgd_8bit; + +/* SBN1661/SED1520 display with 122x32 */ +extern u8g_dev_t u8g_dev_sbn1661_122x32; + +/* flip disc matrix */ +extern u8g_dev_t u8g_dev_flipdisc_2x7; +void u8g_SetFlipDiscCallback(u8g_t *u8g, void (*cb)(uint8_t id, uint8_t page, uint8_t width, uint8_t *row1, uint8_t *row2)); + +/* ILI9325D based TFT */ +extern u8g_dev_t u8g_dev_ili9325d_320x240_8bit; + +/* u8g_virtual_screen.c */ +extern u8g_dev_t u8g_dev_vs; + + +/*===============================================================*/ +/* device messages */ + +struct _u8g_dev_arg_pixel_t +{ + u8g_uint_t x, y; /* will be modified */ + uint8_t pixel; /* will be modified */ + uint8_t dir; + uint8_t color; +}; +/* typedef struct _u8g_dev_arg_pixel_t u8g_dev_arg_pixel_t; */ /* forward decl */ + +struct _u8g_dev_arg_bbx_t +{ + u8g_uint_t x, y, w, h; +}; +/* typedef struct _u8g_dev_arg_bbx_t u8g_dev_arg_bbx_t; */ /* forward decl */ + +struct _u8g_box_t +{ + u8g_uint_t x0, y0, x1, y1; +}; +/* typedef struct _u8g_box_t u8g_box_t; */ /* forward decl */ + + +#define U8G_DEV_MSG_INIT 10 +#define U8G_DEV_MSG_STOP 11 + +/* arg: pointer to uint8_t, contranst value between 0 and 255 */ +#define U8G_DEV_MSG_CONTRAST 15 + +#define U8G_DEV_MSG_SLEEP_ON 16 +#define U8G_DEV_MSG_SLEEP_OFF 17 + +#define U8G_DEV_MSG_PAGE_FIRST 20 +#define U8G_DEV_MSG_PAGE_NEXT 21 + +/* arg: u8g_dev_arg_bbx_t * */ +/* new algorithm with U8G_DEV_MSG_GET_PAGE_BOX makes this msg obsolete */ +/* #define U8G_DEV_MSG_IS_BBX_INTERSECTION 22 */ + +/* arg: u8g_box_t *, fill structure with current page properties */ +#define U8G_DEV_MSG_GET_PAGE_BOX 23 + +/* +#define U8G_DEV_MSG_PRIMITIVE_START 30 +#define U8G_DEV_MSG_PRIMITIVE_END 31 +*/ + +/* arg: u8g_dev_arg_pixel_t * */ +#define U8G_DEV_MSG_SET_PIXEL 50 +#define U8G_DEV_MSG_SET_8PIXEL 59 + +#define U8G_DEV_MSG_SET_COLOR_INDEX 60 + +#define U8G_DEV_MSG_SET_XY_CB 61 + +#define U8G_DEV_MSG_GET_WIDTH 70 +#define U8G_DEV_MSG_GET_HEIGHT 71 +#define U8G_DEV_MSG_GET_MODE 72 + +/*===============================================================*/ +/* device modes */ +#define U8G_MODE(is_color, bits_per_pixel) (((is_color)<<4)|(bits_per_pixel)) + +#define U8G_MODE_UNKNOWN 0 +#define U8G_MODE_BW U8G_MODE(0, 1) +#define U8G_MODE_GRAY2BIT U8G_MODE(0, 2) +#define U8G_MODE_R3G3B2 U8G_MODE(1, 8) + +#define U8G_MODE_GET_BITS_PER_PIXEL(mode) ((mode)&15) +#define U8G_MODE_IS_COLOR(mode) (((mode)&16)==0?0:1) + + +/*===============================================================*/ +/* com options */ + +/* uncomment the following line for Atmega HW SPI double speed, issue 89 */ +/* #define U8G_HW_SPI_2X 1 */ + +/* com messages */ + +#define U8G_COM_MSG_STOP 0 +#define U8G_COM_MSG_INIT 1 + +#define U8G_COM_MSG_ADDRESS 2 + +/* CHIP_SELECT argument: number of the chip which needs to be activated, so this is more like high active */ +#define U8G_COM_MSG_CHIP_SELECT 3 + +#define U8G_COM_MSG_RESET 4 + +#define U8G_COM_MSG_WRITE_BYTE 5 +#define U8G_COM_MSG_WRITE_SEQ 6 +#define U8G_COM_MSG_WRITE_SEQ_P 7 + + +/* com driver */ +uint8_t u8g_com_null_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_null.c */ +uint8_t u8g_com_arduino_std_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_std_sw_spi.c */ +uint8_t u8g_com_arduino_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_sw_spi.c */ +uint8_t u8g_com_arduino_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_hw_spi.c */ +uint8_t u8g_com_arduino_st7920_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_st7920_spi.c */ +uint8_t u8g_com_arduino_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_st7920_hw_spi.c */ +uint8_t u8g_com_arduino_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_parallel.c */ +uint8_t u8g_com_arduino_fast_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_fast_parallel.c */ +uint8_t u8g_com_arduino_port_d_wr_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_port_d_wr.c */ +uint8_t u8g_com_arduino_no_en_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_no_en_parallel.c */ +uint8_t u8g_com_arduino_ssd_i2c_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_ssd_i2c.c */ +uint8_t u8g_com_arduino_t6963_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_arduino_t6963.c */ + + +uint8_t u8g_com_atmega_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_atmega_hw_spi.c */ +uint8_t u8g_com_atmega_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_atmega_sw_spi.c */ +uint8_t u8g_com_atmega_st7920_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_atmega_st7920_spi.c */ +uint8_t u8g_com_atmega_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); +uint8_t u8g_com_atmega_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr); /* u8g_com_atmega_parallel.c */ + + +/* + Translation of system specific com drives to generic com names + At the moment, the following generic com drives are available + U8G_COM_HW_SPI + U8G_COM_SW_SPI + U8G_COM_PARALLEL + U8G_COM_T6963 + U8G_COM_FAST_PARALLEL + U8G_COM_SSD_I2C + +defined(__18CXX) || defined(__PIC32MX) + +*/ +/* ==== HW SPI, Arduino ====*/ +#if defined(ARDUINO) +#if defined(__AVR__) +#define U8G_COM_HW_SPI u8g_com_arduino_hw_spi_fn +#define U8G_COM_ST7920_HW_SPI u8g_com_arduino_st7920_hw_spi_fn +#elif defined(__18CXX) || defined(__PIC32MX) +#define U8G_COM_HW_SPI u8g_com_null_fn +#define U8G_COM_ST7920_HW_SPI u8g_com_null_fn +#endif +#endif +/* ==== HW SPI, not Arduino ====*/ +#ifndef U8G_COM_HW_SPI +#if defined(__AVR__) +#define U8G_COM_HW_SPI u8g_com_atmega_hw_spi_fn +#define U8G_COM_ST7920_HW_SPI u8g_com_atmega_st7920_hw_spi_fn +#endif +#endif +#ifndef U8G_COM_HW_SPI +#define U8G_COM_HW_SPI u8g_com_null_fn +#define U8G_COM_ST7920_HW_SPI u8g_com_null_fn +#endif + +/* ==== SW SPI, Arduino ====*/ +#if defined(ARDUINO) +#if defined(__AVR__) +#define U8G_COM_SW_SPI u8g_com_arduino_sw_spi_fn +#define U8G_COM_ST7920_SW_SPI u8g_com_arduino_st7920_spi_fn +#elif defined(__18CXX) || defined(__PIC32MX) +#define U8G_COM_SW_SPI u8g_com_arduino_sw_spi_fn +#define U8G_COM_ST7920_SW_SPI u8g_com_arduino_st7920_spi_fn +#elif defined(__arm__) /* Arduino Due */ +#define U8G_COM_SW_SPI u8g_com_arduino_std_sw_spi_fn +#define U8G_COM_ST7920_SW_SPI u8g_com_arduino_st7920_spi_fn +#endif +#endif + +#ifndef U8G_COM_SW_SPI +/* ==== SW SPI, not Arduino ====*/ +#if defined(__AVR__) +#define U8G_COM_SW_SPI u8g_com_atmega_sw_spi_fn +#define U8G_COM_ST7920_SW_SPI u8g_com_atmega_st7920_sw_spi_fn +#endif +#endif +#ifndef U8G_COM_SW_SPI +#define U8G_COM_SW_SPI u8g_com_null_fn +#define U8G_COM_ST7920_SW_SPI u8g_com_null_fn +#endif + +/* ==== Parallel iinterface, Arduino ====*/ +#if defined(ARDUINO) +#if defined(__AVR__) +#define U8G_COM_PARALLEL u8g_com_arduino_parallel_fn +#define U8G_COM_FAST_PARALLEL u8g_com_arduino_fast_parallel_fn +#define U8G_COM_T6963 u8g_com_arduino_t6963_fn +#else /* Arduino Due, Chipkit PIC32 */ +#define U8G_COM_PARALLEL u8g_com_arduino_parallel_fn +#define U8G_COM_FAST_PARALLEL u8g_com_arduino_parallel_fn +#define U8G_COM_T6963 u8g_com_null_fn +#endif +#endif +#ifndef U8G_COM_PARALLEL +#if defined(__AVR__) +#define U8G_COM_PARALLEL u8g_com_atmega_parallel_fn +#define U8G_COM_FAST_PARALLEL u8g_com_atmega_parallel_fn +#define U8G_COM_T6963 u8g_com_null_fn +#endif +#endif +#ifndef U8G_COM_PARALLEL +#define U8G_COM_PARALLEL u8g_com_null_fn +#define U8G_COM_FAST_PARALLEL u8g_com_null_fn +#define U8G_COM_T6963 u8g_com_null_fn +#endif + +#if defined(ARDUINO) +#if defined(__AVR__) +#define U8G_COM_SSD_I2C u8g_com_arduino_ssd_i2c_fn +#endif +#endif + +#ifndef U8G_COM_SSD_I2C +#if defined(__AVR__) +/* AVR variant can use the arduino version at the moment */ +#define U8G_COM_SSD_I2C u8g_com_arduino_ssd_i2c_fn +#endif +#endif +#ifndef U8G_COM_SSD_I2C +#define U8G_COM_SSD_I2C u8g_com_null_fn +#endif + + + +/*===============================================================*/ +/* com api */ +uint8_t u8g_InitCom(u8g_t *u8g, u8g_dev_t *dev); +void u8g_StopCom(u8g_t *u8g, u8g_dev_t *dev); +void u8g_EnableCom(u8g_t *u8g, u8g_dev_t *dev); /* obsolete */ +void u8g_DisableCom(u8g_t *u8g, u8g_dev_t *dev); /* obsolete */ +void u8g_SetChipSelect(u8g_t *u8g, u8g_dev_t *dev, uint8_t cs); +void u8g_SetResetLow(u8g_t *u8g, u8g_dev_t *dev); +void u8g_SetResetHigh(u8g_t *u8g, u8g_dev_t *dev); +void u8g_SetAddress(u8g_t *u8g, u8g_dev_t *dev, uint8_t address); +uint8_t u8g_WriteByte(u8g_t *u8g, u8g_dev_t *dev, uint8_t val); +uint8_t u8g_WriteSequence(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, uint8_t *seq); +uint8_t u8g_WriteSequenceP(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, const uint8_t *seq); + + + +#define U8G_ESC_DLY(x) 255, ((x) & 0x7f) +#define U8G_ESC_CS(x) 255, (0xd0 | ((x)&0x0f)) +#define U8G_ESC_ADR(x) 255, (0xe0 | ((x)&0x0f)) +#define U8G_ESC_RST(x) 255, (0xc0 | ((x)&0x0f)) +#define U8G_ESC_VCC(x) 255, (0xbe | ((x)&0x01)) +#define U8G_ESC_END 255, 254 +#define U8G_ESC_255 255, 255 +//uint8_t u8g_WriteEscSeqP(u8g_t *u8g, u8g_dev_t *dev, u8g_pgm_uint8_t *esc_seq); +uint8_t u8g_WriteEscSeqP(u8g_t *u8g, u8g_dev_t *dev, const uint8_t *esc_seq); + + +/* u8g_com_api_16gr.c */ +uint8_t u8g_WriteByteBWTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t b); +uint8_t u8g_WriteSequenceBWTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, uint8_t *ptr); +uint8_t u8g_WriteByte4LTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t b); +uint8_t u8g_WriteSequence4LTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, uint8_t *ptr); + + +/*===============================================================*/ +/* u8g_arduino_common.c */ +void u8g_com_arduino_digital_write(u8g_t *u8g, uint8_t pin_index, uint8_t value); +void u8g_com_arduino_assign_pin_output_high(u8g_t *u8g); + +/*===============================================================*/ +/* u8g_com_io.c */ + +/* create internal number from port and pin */ +uint8_t u8g_Pin(uint8_t port, uint8_t bitpos); +#define PN(port,bitpos) u8g_Pin(port,bitpos) + +/* low level procedures */ +void u8g_SetPinOutput(uint8_t internal_pin_number); +void u8g_SetPinLevel(uint8_t internal_pin_number, uint8_t level); +void u8g_SetPinInput(uint8_t internal_pin_number); +uint8_t u8g_GetPinLevel(uint8_t internal_pin_number); + +/* u8g level procedures, expect U8G_PI_xxx macro */ +void u8g_SetPIOutput(u8g_t *u8g, uint8_t pi); +void u8g_SetPILevel(u8g_t *u8g, uint8_t pi, uint8_t level); + + +/*===============================================================*/ +/* page */ +struct _u8g_page_t +{ + u8g_uint_t page_height; + u8g_uint_t total_height; + u8g_uint_t page_y0; + u8g_uint_t page_y1; + uint8_t page; +}; +typedef struct _u8g_page_t u8g_page_t; + +void u8g_page_First(u8g_page_t *p) U8G_NOINLINE; /* u8g_page.c */ +void u8g_page_Init(u8g_page_t *p, u8g_uint_t page_height, u8g_uint_t total_height ) U8G_NOINLINE; /* u8g_page.c */ +uint8_t u8g_page_Next(u8g_page_t *p) U8G_NOINLINE; /* u8g_page.c */ + +/*===============================================================*/ +/* page buffer (pb) */ + +struct _u8g_pb_t +{ + u8g_page_t p; + u8g_uint_t width; /* pixel width */ + void *buf; +}; +typedef struct _u8g_pb_t u8g_pb_t; + + +/* u8g_pb.c */ +void u8g_pb_Clear(u8g_pb_t *b); +uint8_t u8g_pb_IsYIntersection(u8g_pb_t *pb, u8g_uint_t v0, u8g_uint_t v1); +uint8_t u8g_pb_IsXIntersection(u8g_pb_t *b, u8g_uint_t v0, u8g_uint_t v1); +uint8_t u8g_pb_IsIntersection(u8g_pb_t *pb, u8g_dev_arg_bbx_t *bbx); +void u8g_pb_GetPageBox(u8g_pb_t *pb, u8g_box_t *box); +uint8_t u8g_pb_Is8PixelVisible(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel); +uint8_t u8g_pb_WriteBuffer(u8g_pb_t *b, u8g_t *u8g, u8g_dev_t *dev); + +/* + note on __attribute__ ((nocommon)) + AVR scripts often use --gc-sections on the linker to remove unused section. + This works fine for initialed data and text sections. In principle .bss is also + handled, but the name##_pb definition is not removed. Reason is, that + array definitions are placed in the COMMON section, by default + The attribute "nocommon" removes this automatic assignment to the + COMMON section and directly puts it into .bss. As a result, if more + than one buffer is defined in one file, then it will be removed with --gc-sections + + .. not sure if Arduino IDE uses -fno-common... if yes, then the attribute is + redundant. +*/ +#define U8G_PB_DEV(name, width, height, page_height, dev_fn, com_fn) \ +uint8_t name##_buf[width] U8G_NOCOMMON ; \ +u8g_pb_t name##_pb = { {page_height, height, 0, 0, 0}, width, name##_buf}; \ +u8g_dev_t name = { dev_fn, &name##_pb, com_fn } + + +void u8g_pb8v1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb8v1_Clear(u8g_pb_t *b) U8G_NOINLINE; + +uint8_t u8g_pb8v1_IsYIntersection(u8g_pb_t *b, u8g_uint_t v0, u8g_uint_t v1); +uint8_t u8g_pb8v1_IsXIntersection(u8g_pb_t *b, u8g_uint_t v0, u8g_uint_t v1); +uint8_t u8g_pb8v1_WriteBuffer(u8g_pb_t *b, u8g_t *u8g, u8g_dev_t *dev); + +uint8_t u8g_dev_pb8v1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb16v1.c */ +uint8_t u8g_dev_pb16v1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb14v1.c */ +uint8_t u8g_dev_pb14v1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb8v2.c */ +uint8_t u8g_dev_pb8v2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb16v2.c (double memory of pb8v2) */ +uint8_t u8g_dev_pb16v2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + + +/* u8g_pb8h1.c */ +uint8_t u8g_dev_pb8h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb16h1.c */ +uint8_t u8g_dev_pb16h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb32h1.c */ +uint8_t u8g_dev_pb32h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + + +/* u8g_pb8h2.c 8 pixel rows, byte has horzontal orientation */ +uint8_t u8g_dev_pb8h2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb16h2.c */ +uint8_t u8g_dev_pb16h2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + + + +/* u8g_pb8h1f.c */ +uint8_t u8g_dev_pb8h1f_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +/* u8g_pb8h8.c */ +uint8_t u8g_dev_pb8h8_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + + + +/*===============================================================*/ +/* u8g_ll_api.c */ + +/* cursor draw callback */ +typedef void (*u8g_draw_cursor_fn)(u8g_t *u8g); + +/* vertical reference point calculation callback */ +typedef u8g_uint_t (*u8g_font_calc_vref_fnptr)(u8g_t *u8g); + +/* state backup and restore procedure */ +typedef void (*u8g_state_cb)(uint8_t msg); + + +/* PI = Pin Index */ + +/* reset pin, usually optional */ +#define U8G_PI_RESET 0 + +/* address / data or instruction */ +#define U8G_PI_A0 1 +#define U8G_PI_DI 1 + +/* chip select line */ +#define U8G_PI_CS 2 +#define U8G_PI_CS1 2 +#define U8G_PI_CS2 3 +/* Feb 2013: A0 state moved from 7 to 3 for t6963 controller*/ +#define U8G_PI_A0_STATE 3 + +/* enable / clock signal */ +#define U8G_PI_EN 4 +#define U8G_PI_CS_STATE 4 +#define U8G_PI_SCK 4 +#define U8G_PI_SCL 4 +#define U8G_PI_RD 4 + + +/* data pins, shared with SPI and I2C pins */ +#define U8G_PI_D0 5 +#define U8G_PI_MOSI 5 +#define U8G_PI_SDA 5 +#define U8G_PI_D1 6 +#define U8G_PI_MISO 6 +#define U8G_PI_D2 7 +#define U8G_PI_D3 8 +#define U8G_PI_SET_A0 8 +#define U8G_PI_D4 9 +#define U8G_PI_D5 10 +#define U8G_PI_I2C_OPTION 11 +#define U8G_PI_D6 11 +#define U8G_PI_D7 12 + +/* read/write pin, must be the last pin in the list, this means U8G_PIN_LIST_LEN = U8G_PI_RW + 1*/ +#define U8G_PI_WR 13 +#define U8G_PI_RW 13 + +#define U8G_PIN_LIST_LEN 14 + + +#define U8G_PIN_NONE 255 + +#define U8G_FONT_HEIGHT_MODE_TEXT 0 +#define U8G_FONT_HEIGHT_MODE_XTEXT 1 +#define U8G_FONT_HEIGHT_MODE_ALL 2 + +struct _u8g_t +{ + u8g_uint_t width; + u8g_uint_t height; + + + u8g_dev_t *dev; /* first device in the device chain */ + const u8g_pgm_uint8_t *font; /* regular font for all text procedures */ + const u8g_pgm_uint8_t *cursor_font; /* special font for cursor procedures */ + uint8_t cursor_fg_color, cursor_bg_color; + uint8_t cursor_encoding; + uint8_t mode; /* display mode, one of U8G_MODE_xxx */ + u8g_uint_t cursor_x; + u8g_uint_t cursor_y; + u8g_draw_cursor_fn cursor_fn; + + int8_t glyph_dx; + int8_t glyph_x; + int8_t glyph_y; + uint8_t glyph_width; + uint8_t glyph_height; + + u8g_font_calc_vref_fnptr font_calc_vref; + uint8_t font_height_mode; + int8_t font_ref_ascent; + int8_t font_ref_descent; + uint8_t font_line_spacing_factor; /* line_spacing = factor * (ascent - descent) / 64 */ + uint8_t line_spacing; + + u8g_dev_arg_pixel_t arg_pixel; + /* uint8_t color_index; */ + + uint8_t pin_list[U8G_PIN_LIST_LEN]; + + u8g_state_cb state_cb; + + u8g_box_t current_page; /* current box of the visible page */ + +}; + +#define u8g_GetFontAscent(u8g) ((u8g)->font_ref_ascent) +#define u8g_GetFontDescent(u8g) ((u8g)->font_ref_descent) +#define u8g_GetFontLineSpacing(u8g) ((u8g)->line_spacing) + +uint8_t u8g_call_dev_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +uint8_t u8g_InitLL(u8g_t *u8g, u8g_dev_t *dev); +void u8g_FirstPageLL(u8g_t *u8g, u8g_dev_t *dev); +uint8_t u8g_NextPageLL(u8g_t *u8g, u8g_dev_t *dev); +uint8_t u8g_SetContrastLL(u8g_t *u8g, u8g_dev_t *dev, uint8_t contrast); +void u8g_DrawPixelLL(u8g_t *u8g, u8g_dev_t *dev, u8g_uint_t x, u8g_uint_t y); +void u8g_Draw8PixelLL(u8g_t *u8g, u8g_dev_t *dev, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t pixel); +uint8_t u8g_IsBBXIntersectionLL(u8g_t *u8g, u8g_dev_t *dev, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h); /* obsolete */ +u8g_uint_t u8g_GetWidthLL(u8g_t *u8g, u8g_dev_t *dev); +u8g_uint_t u8g_GetHeightLL(u8g_t *u8g, u8g_dev_t *dev); + +void u8g_UpdateDimension(u8g_t *u8g); +uint8_t u8g_Begin(u8g_t *u8g); /* reset device, put it into default state and call u8g_UpdateDimension() */ +uint8_t u8g_Init(u8g_t *u8g, u8g_dev_t *dev); /* only usefull if the device only as hardcoded ports */ +uint8_t u8g_InitSPI(u8g_t *u8g, u8g_dev_t *dev, uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset); +uint8_t u8g_InitHWSPI(u8g_t *u8g, u8g_dev_t *dev, uint8_t cs, uint8_t a0, uint8_t reset); +uint8_t u8g_InitI2C(u8g_t *u8g, u8g_dev_t *dev, uint8_t options); /* use U8G_I2C_OPT_NONE as options */ +uint8_t u8g_Init8BitFixedPort(u8g_t *u8g, u8g_dev_t *dev, uint8_t en, uint8_t cs, uint8_t di, uint8_t rw, uint8_t reset); +uint8_t u8g_Init8Bit(u8g_t *u8g, u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw, uint8_t reset); +uint8_t u8g_InitRW8Bit(u8g_t *u8g, u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset); +void u8g_FirstPage(u8g_t *u8g); +uint8_t u8g_NextPage(u8g_t *u8g); +uint8_t u8g_SetContrast(u8g_t *u8g, uint8_t contrast); +void u8g_SleepOn(u8g_t *u8g); +void u8g_SleepOff(u8g_t *u8g); +void u8g_DrawPixel(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y); +void u8g_Draw8Pixel(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t pixel); + +uint8_t u8g_Stop(u8g_t *u8g); +void u8g_SetColorIndex(u8g_t *u8g, uint8_t idx); +uint8_t u8g_GetColorIndex(u8g_t *u8g); + +uint8_t u8g_GetDefaultForegroundColor(u8g_t *u8g); +void u8g_SetDefaultForegroundColor(u8g_t *u8g); + +uint8_t u8g_GetDefaultBackgroundColor(u8g_t *u8g); +void u8g_SetDefaultBackgroundColor(u8g_t *u8g); + +uint8_t u8g_GetDefaultMidColor(u8g_t *u8g); +void u8g_SetDefaultMidColor(u8g_t *u8g); + +#define u8g_GetWidth(u8g) ((u8g)->width) +#define u8g_GetHeight(u8g) ((u8g)->height) +#define u8g_GetMode(u8g) ((u8g)->mode) +/* + U8G_MODE_GET_BITS_PER_PIXEL(u8g_GetMode(u8g)) + U8G_MODE_IS_COLOR(u8g_GetMode(u8g)) +*/ + +/* u8g_state.c */ +#define U8G_STATE_ENV_IDX 0 +#define U8G_STATE_U8G_IDX 1 +#define U8G_STATE_RESTORE 0 +#define U8G_STATE_BACKUP 1 +#define U8G_STATE_MSG_COMPOSE(cmd,idx) (((cmd)<<1) | (idx)) + +#define U8G_STATE_MSG_RESTORE_ENV U8G_STATE_MSG_COMPOSE(U8G_STATE_RESTORE,U8G_STATE_ENV_IDX) +#define U8G_STATE_MSG_BACKUP_ENV U8G_STATE_MSG_COMPOSE(U8G_STATE_BACKUP,U8G_STATE_ENV_IDX) +#define U8G_STATE_MSG_RESTORE_U8G U8G_STATE_MSG_COMPOSE(U8G_STATE_RESTORE,U8G_STATE_U8G_IDX) +#define U8G_STATE_MSG_BACKUP_U8G U8G_STATE_MSG_COMPOSE(U8G_STATE_BACKUP,U8G_STATE_U8G_IDX) + +#define U8G_STATE_MSG_GET_IDX(msg) ((msg)&1) +#define U8G_STATE_MSG_IS_BACKUP(msg) ((msg)&2) + + + +void u8g_state_dummy_cb(uint8_t msg); +void u8g_backup_avr_spi(uint8_t msg); /* backup SPI state on atmel avr controller */ + +void u8g_SetHardwareBackup(u8g_t *u8g, u8g_state_cb backup_cb); + +/* u8g_clip.c */ + +uint8_t u8g_IsBBXIntersection(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h); + + +/* u8g_rot.c */ + +void u8g_UndoRotation(u8g_t *u8g); +void u8g_SetRot90(u8g_t *u8g); +void u8g_SetRot180(u8g_t *u8g); +void u8g_SetRot270(u8g_t *u8g); + +/* u8g_scale.c */ + +void u8g_UndoScale(u8g_t *u8g); +void u8g_SetScale2x2(u8g_t *u8g); + + +/* u8g_font.c */ + +size_t u8g_font_GetSize(const void *font); +uint8_t u8g_font_GetFontStartEncoding(const void *font) U8G_NOINLINE; +uint8_t u8g_font_GetFontEndEncoding(const void *font) U8G_NOINLINE; + +void u8g_SetFont(u8g_t *u8g, const u8g_fntpgm_uint8_t *font); + +uint8_t u8g_GetFontBBXWidth(u8g_t *u8g); +uint8_t u8g_GetFontBBXHeight(u8g_t *u8g); +int8_t u8g_GetFontBBXOffX(u8g_t *u8g); +int8_t u8g_GetFontBBXOffY(u8g_t *u8g); +uint8_t u8g_GetFontCapitalAHeight(u8g_t *u8g); + +uint8_t u8g_IsGlyph(u8g_t *u8g, uint8_t requested_encoding); +int8_t u8g_GetGlyphDeltaX(u8g_t *u8g, uint8_t requested_encoding); + +int8_t u8g_draw_glyph(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding); /* used by u8g_cursor.c */ + +int8_t u8g_DrawGlyphDir(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t encoding); +int8_t u8g_DrawGlyph(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding); +int8_t u8g_DrawGlyph90(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding); +int8_t u8g_DrawGlyph180(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding); +int8_t u8g_DrawGlyph270(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding); +int8_t u8g_DrawGlyphFontBBX(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t encoding); + +u8g_uint_t u8g_DrawStr(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s); +u8g_uint_t u8g_DrawStr90(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s); +u8g_uint_t u8g_DrawStr180(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s); +u8g_uint_t u8g_DrawStr270(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s); + +u8g_uint_t u8g_DrawStrDir(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, const char *s); + + +u8g_uint_t u8g_DrawStrP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s); +u8g_uint_t u8g_DrawStr90P(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s); +u8g_uint_t u8g_DrawStr180P(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s); +u8g_uint_t u8g_DrawStr270P(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s); + + +void u8g_SetFontRefHeightText(u8g_t *u8g); +void u8g_SetFontRefHeightExtendedText(u8g_t *u8g); +void u8g_SetFontRefHeightAll(u8g_t *u8g); +void u8g_SetFontLineSpacingFactor(u8g_t *u8g, uint8_t factor); + +u8g_uint_t u8g_font_calc_vref_font(u8g_t *u8g); +u8g_uint_t u8g_font_calc_vref_bottom(u8g_t *u8g); +u8g_uint_t u8g_font_calc_vref_top(u8g_t *u8g); +u8g_uint_t u8g_font_calc_vref_center(u8g_t *u8g); + +void u8g_SetFontPosBaseline(u8g_t *u8g); +void u8g_SetFontPosBottom(u8g_t *u8g); +void u8g_SetFontPosCenter(u8g_t *u8g); +void u8g_SetFontPosTop(u8g_t *u8g); + + +u8g_uint_t u8g_GetStrPixelWidth(u8g_t *u8g, const char *s); +u8g_uint_t u8g_GetStrPixelWidthP(u8g_t *u8g, const u8g_pgm_uint8_t *s); +int8_t u8g_GetStrX(u8g_t *u8g, const char *s); +int8_t u8g_GetStrXP(u8g_t *u8g, const u8g_pgm_uint8_t *s); +u8g_uint_t u8g_GetStrWidth(u8g_t *u8g, const char *s); +u8g_uint_t u8g_GetStrWidthP(u8g_t *u8g, const u8g_pgm_uint8_t *s); + +u8g_uint_t u8g_DrawStrFontBBX(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, const char *s); + +void u8g_GetStrMinBox(u8g_t *u8g, const char *s, u8g_uint_t *x, u8g_uint_t *y, u8g_uint_t *width, u8g_uint_t *height); +void u8g_GetStrAMinBox(u8g_t *u8g, const char *s, u8g_uint_t *x, u8g_uint_t *y, u8g_uint_t *width, u8g_uint_t *height); + +/* u8g_rect.c */ + +void u8g_draw_box(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) U8G_NOINLINE; + +void u8g_DrawHLine(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w); +void u8g_DrawVLine(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w); +void u8g_DrawFrame(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h); +void u8g_DrawBox(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h); + +void u8g_DrawRFrame(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, u8g_uint_t r); +void u8g_DrawRBox(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, u8g_uint_t r); + +/* u8g_bitmap.c */ + +void u8g_DrawHBitmap(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, const uint8_t *bitmap); +void u8g_DrawHBitmapP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, const u8g_pgm_uint8_t *bitmap); +void u8g_DrawBitmap(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, u8g_uint_t h, const uint8_t *bitmap); +void u8g_DrawBitmapP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, u8g_uint_t h, const u8g_pgm_uint8_t *bitmap); + +void u8g_DrawXBM(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, const uint8_t *bitmap); +void u8g_DrawXBMP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, const u8g_pgm_uint8_t *bitmap); + + +/* u8g_line.c */ +void u8g_DrawLine(u8g_t *u8g, u8g_uint_t x1, u8g_uint_t y1, u8g_uint_t x2, u8g_uint_t y2); + + +/* u8g_circle.c */ + +/* the following, commented code has been rewritten or is not yet finished +#define U8G_CIRC_UPPER_RIGHT 0x01 +#define U8G_CIRC_UPPER_LEFT 0x02 +#define U8G_CIRC_LOWER_LEFT 0x04 +#define U8G_CIRC_LOWER_RIGHT 0x08 +#define U8G_CIRC_ALL (U8G_CIRC_UPPER_RIGHT|U8G_CIRC_UPPER_LEFT|U8G_CIRC_LOWER_RIGHT|U8G_CIRC_LOWER_LEFT) +void u8g_DrawEmpCirc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option); +void u8g_DrawFillCirc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option); +void u8g_DrawEllipseRect(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t x1, u8g_uint_t y1); +*/ + +#define U8G_DRAW_UPPER_RIGHT 0x01 +#define U8G_DRAW_UPPER_LEFT 0x02 +#define U8G_DRAW_LOWER_LEFT 0x04 +#define U8G_DRAW_LOWER_RIGHT 0x08 +#define U8G_DRAW_ALL (U8G_DRAW_UPPER_RIGHT|U8G_DRAW_UPPER_LEFT|U8G_DRAW_LOWER_RIGHT|U8G_DRAW_LOWER_LEFT) + +void u8g_draw_circle(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) U8G_NOINLINE; +void u8g_draw_disc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) U8G_NOINLINE; + +void u8g_DrawCircle(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option); +void u8g_DrawDisc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option); + +/* u8g_clip.c */ +uint8_t u8g_is_box_bbx_intersection(u8g_box_t *box, u8g_dev_arg_bbx_t *bbx); + + +/* u8g_cursor.c */ +void u8g_SetCursorFont(u8g_t *u8g, const u8g_pgm_uint8_t *cursor_font); +void u8g_SetCursorStyle(u8g_t *u8g, uint8_t encoding); +void u8g_SetCursorPos(u8g_t *u8g, u8g_uint_t cursor_x, u8g_uint_t cursor_y); +void u8g_SetCursorColor(u8g_t *u8g, uint8_t fg, uint8_t bg); +void u8g_EnableCursor(u8g_t *u8g); +void u8g_DisableCursor(u8g_t *u8g); +void u8g_DrawCursor(u8g_t *u8g); + + + +/*===============================================================*/ +/* u8g_virtual_screen.c */ +void u8g_SetVirtualScreenDimension(u8g_t *vs_u8g, u8g_uint_t width, u8g_uint_t height); +uint8_t u8g_AddToVirtualScreen(u8g_t *vs_u8g, u8g_uint_t x, u8g_uint_t y, u8g_t *child_u8g); + +/*===============================================================*/ +void st_Draw(uint8_t fps); +void st_Step(uint8_t player_pos, uint8_t is_auto_fire, uint8_t is_fire); + +/*===============================================================*/ +/* u8g_com_i2c.c */ + +/* options for u8g_i2c_init() */ +#define U8G_I2C_OPT_NONE 0 + +/* retrun values from u8g_twi_get_error() */ +#define U8G_I2C_ERR_NONE 0x00 +/* the following values are bit masks */ +#define U8G_I2C_ERR_TIMEOUT 0x01 +#define U8G_I2C_ERR_BUS 0x02 + +void u8g_i2c_clear_error(void) U8G_NOINLINE; +uint8_t u8g_i2c_get_error(void) U8G_NOINLINE; +uint8_t u8g_i2c_get_err_pos(void) U8G_NOINLINE; +void u8g_i2c_init(uint8_t options) U8G_NOINLINE; /* use U8G_I2C_OPT_NONE as options */ +uint8_t u8g_i2c_wait(uint8_t mask, uint8_t pos) U8G_NOINLINE; +uint8_t u8g_i2c_start(uint8_t sla) U8G_NOINLINE; +uint8_t u8g_i2c_send_byte(uint8_t data) U8G_NOINLINE; +void u8g_i2c_stop(void) U8G_NOINLINE; + + +/*===============================================================*/ +/* u8g_u8toa.c */ +/* v = value, d = number of digits */ +const char *u8g_u8toa(uint8_t v, uint8_t d); + +/* u8g_u8toa.c */ +/* v = value, d = number of digits */ +const char *u8g_u16toa(uint16_t v, uint8_t d); + +/*===============================================================*/ +/* u8g_delay.c */ + +/* delay by the specified number of milliseconds */ +void u8g_Delay(uint16_t val); + +/* delay by one microsecond */ +void u8g_MicroDelay(void); + +/* delay by 10 microseconds */ +void u8g_10MicroDelay(void); + +/*===============================================================*/ +/* chessengine.c */ +#define CHESS_KEY_NONE 0 +#define CHESS_KEY_NEXT 1 +#define CHESS_KEY_PREV 2 +#define CHESS_KEY_SELECT 3 +#define CHESS_KEY_BACK 4 + +void chess_Init(u8g_t *u8g, uint8_t empty_body_color); +void chess_Draw(void); +void chess_Step(uint8_t keycode); + +/*===============================================================*/ +/* font definitions */ + +extern const u8g_fntpgm_uint8_t u8g_font_m2icon_5[] U8G_SECTION(".progmem.u8g_font_m2icon_5"); +extern const u8g_fntpgm_uint8_t u8g_font_m2icon_7[] U8G_SECTION(".progmem.u8g_font_m2icon_7"); +extern const u8g_fntpgm_uint8_t u8g_font_m2icon_9[] U8G_SECTION(".progmem.u8g_font_m2icon_9"); + +extern const u8g_fntpgm_uint8_t u8g_font_u8glib_4[] U8G_SECTION(".progmem.u8g_font_u8glib_4"); +extern const u8g_fntpgm_uint8_t u8g_font_u8glib_4r[] U8G_SECTION(".progmem.u8g_font_u8glib_4r"); + + +extern const u8g_fntpgm_uint8_t u8g_font_6x12_75r[] U8G_SECTION(".progmem.u8g_font_6x12_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13_75r[] U8G_SECTION(".progmem.u8g_font_6x13_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13_75r[] U8G_SECTION(".progmem.u8g_font_7x13_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13_75r[] U8G_SECTION(".progmem.u8g_font_8x13_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_9x15_75r[] U8G_SECTION(".progmem.u8g_font_9x15_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_9x18_75r[] U8G_SECTION(".progmem.u8g_font_9x18_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_cu12_75r[] U8G_SECTION(".progmem.u8g_font_cu12_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_75r[] U8G_SECTION(".progmem.u8g_font_unifont_75r"); +extern const u8g_fntpgm_uint8_t u8g_font_10x20_75r[] U8G_SECTION(".progmem.u8g_font_10x20_75r"); + +extern const u8g_fntpgm_uint8_t u8g_font_10x20_67_75[] U8G_SECTION(".progmem.u8g_font_10x20_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_10x20_78_79[] U8G_SECTION(".progmem.u8g_font_10x20_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_10x20[] U8G_SECTION(".progmem.u8g_font_10x20"); +extern const u8g_fntpgm_uint8_t u8g_font_10x20r[] U8G_SECTION(".progmem.u8g_font_10x20r"); +extern const u8g_fntpgm_uint8_t u8g_font_4x6[] U8G_SECTION(".progmem.u8g_font_4x6"); +extern const u8g_fntpgm_uint8_t u8g_font_4x6r[] U8G_SECTION(".progmem.u8g_font_4x6r"); +//extern const u8g_fntpgm_uint8_t u8g_font_4x6n[] U8G_SECTION(".progmem.u8g_font_4x6n"); +extern const u8g_fntpgm_uint8_t u8g_font_5x7[] U8G_SECTION(".progmem.u8g_font_5x7"); +extern const u8g_fntpgm_uint8_t u8g_font_5x7r[] U8G_SECTION(".progmem.u8g_font_5x7r"); +extern const u8g_fntpgm_uint8_t u8g_font_5x8[] U8G_SECTION(".progmem.u8g_font_5x8"); +extern const u8g_fntpgm_uint8_t u8g_font_5x8r[] U8G_SECTION(".progmem.u8g_font_5x8r"); +extern const u8g_fntpgm_uint8_t u8g_font_6x10[] U8G_SECTION(".progmem.u8g_font_6x10"); +extern const u8g_fntpgm_uint8_t u8g_font_6x10r[] U8G_SECTION(".progmem.u8g_font_6x10r"); +extern const u8g_fntpgm_uint8_t u8g_font_6x12_67_75[] U8G_SECTION(".progmem.u8g_font_6x12_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_6x12_78_79[] U8G_SECTION(".progmem.u8g_font_6x12_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_6x12[] U8G_SECTION(".progmem.u8g_font_6x12"); +extern const u8g_fntpgm_uint8_t u8g_font_6x12r[] U8G_SECTION(".progmem.u8g_font_6x12r"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13_67_75[] U8G_SECTION(".progmem.u8g_font_6x13_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13_78_79[] U8G_SECTION(".progmem.u8g_font_6x13_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13B[] U8G_SECTION(".progmem.u8g_font_6x13B"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13Br[] U8G_SECTION(".progmem.u8g_font_6x13Br"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13[] U8G_SECTION(".progmem.u8g_font_6x13"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13r[] U8G_SECTION(".progmem.u8g_font_6x13r"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13O[] U8G_SECTION(".progmem.u8g_font_6x13O"); +extern const u8g_fntpgm_uint8_t u8g_font_6x13Or[] U8G_SECTION(".progmem.u8g_font_6x13Or"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13_67_75[] U8G_SECTION(".progmem.u8g_font_7x13_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13_78_79[] U8G_SECTION(".progmem.u8g_font_7x13_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13B[] U8G_SECTION(".progmem.u8g_font_7x13B"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13Br[] U8G_SECTION(".progmem.u8g_font_7x13Br"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13[] U8G_SECTION(".progmem.u8g_font_7x13"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13r[] U8G_SECTION(".progmem.u8g_font_7x13r"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13O[] U8G_SECTION(".progmem.u8g_font_7x13O"); +extern const u8g_fntpgm_uint8_t u8g_font_7x13Or[] U8G_SECTION(".progmem.u8g_font_7x13Or"); +extern const u8g_fntpgm_uint8_t u8g_font_7x14B[] U8G_SECTION(".progmem.u8g_font_7x14B"); +extern const u8g_fntpgm_uint8_t u8g_font_7x14Br[] U8G_SECTION(".progmem.u8g_font_7x14Br"); +extern const u8g_fntpgm_uint8_t u8g_font_7x14[] U8G_SECTION(".progmem.u8g_font_7x14"); +extern const u8g_fntpgm_uint8_t u8g_font_7x14r[] U8G_SECTION(".progmem.u8g_font_7x14r"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13_67_75[] U8G_SECTION(".progmem.u8g_font_8x13_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13B[] U8G_SECTION(".progmem.u8g_font_8x13B"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13Br[] U8G_SECTION(".progmem.u8g_font_8x13Br"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13[] U8G_SECTION(".progmem.u8g_font_8x13"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13r[] U8G_SECTION(".progmem.u8g_font_8x13r"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13O[] U8G_SECTION(".progmem.u8g_font_8x13O"); +extern const u8g_fntpgm_uint8_t u8g_font_8x13Or[] U8G_SECTION(".progmem.u8g_font_8x13Or"); + +extern const u8g_fntpgm_uint8_t u8g_font_9x15_67_75[] U8G_SECTION(".progmem.u8g_font_9x15_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_9x15_78_79[] U8G_SECTION(".progmem.u8g_font_9x15_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_9x15B[] U8G_SECTION(".progmem.u8g_font_9x15B"); +extern const u8g_fntpgm_uint8_t u8g_font_9x15Br[] U8G_SECTION(".progmem.u8g_font_9x15Br"); +extern const u8g_fntpgm_uint8_t u8g_font_9x15[] U8G_SECTION(".progmem.u8g_font_9x15"); +extern const u8g_fntpgm_uint8_t u8g_font_9x15r[] U8G_SECTION(".progmem.u8g_font_9x15r"); + +extern const u8g_fntpgm_uint8_t u8g_font_9x18_67_75[] U8G_SECTION(".progmem.u8g_font_9x18_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_9x18_78_79[] U8G_SECTION(".progmem.u8g_font_9x18_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_9x18B[] U8G_SECTION(".progmem.u8g_font_9x18B"); +extern const u8g_fntpgm_uint8_t u8g_font_9x18[] U8G_SECTION(".progmem.u8g_font_9x18"); +extern const u8g_fntpgm_uint8_t u8g_font_9x18Br[] U8G_SECTION(".progmem.u8g_font_9x18Br"); +extern const u8g_fntpgm_uint8_t u8g_font_9x18r[] U8G_SECTION(".progmem.u8g_font_9x18r"); + +extern const u8g_fntpgm_uint8_t u8g_font_cursor[] U8G_SECTION(".progmem.u8g_font_cursor"); +extern const u8g_fntpgm_uint8_t u8g_font_cursorr[] U8G_SECTION(".progmem.u8g_font_cursorr"); +extern const u8g_fntpgm_uint8_t u8g_font_micro[] U8G_SECTION(".progmem.u8g_font_micro"); + +extern const u8g_fntpgm_uint8_t u8g_font_cu12_67_75[] U8G_SECTION(".progmem.u8g_font_cu12_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_cu12_78_79[] U8G_SECTION(".progmem.u8g_font_cu12_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_cu12[] U8G_SECTION(".progmem.u8g_font_cu12"); + +/* + Free-Universal Bold + r: Reduced char set (codes 32 - 128) + n: Numbers (codes 42 - 57) + no char: Full set (codes 32 - 255) +*/ + +extern const u8g_fntpgm_uint8_t u8g_font_fub11[] U8G_SECTION(".progmem.u8g_font_fub11"); +extern const u8g_fntpgm_uint8_t u8g_font_fub11r[] U8G_SECTION(".progmem.u8g_font_fub11r"); +extern const u8g_fntpgm_uint8_t u8g_font_fub11n[] U8G_SECTION(".progmem.u8g_font_fub11n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub14[] U8G_SECTION(".progmem.u8g_font_fub14"); +extern const u8g_fntpgm_uint8_t u8g_font_fub14r[] U8G_SECTION(".progmem.u8g_font_fub14r"); +extern const u8g_fntpgm_uint8_t u8g_font_fub14n[] U8G_SECTION(".progmem.u8g_font_fub14n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub17[] U8G_SECTION(".progmem.u8g_font_fub17"); +extern const u8g_fntpgm_uint8_t u8g_font_fub17r[] U8G_SECTION(".progmem.u8g_font_fub17r"); +extern const u8g_fntpgm_uint8_t u8g_font_fub17n[] U8G_SECTION(".progmem.u8g_font_fub17n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub20[] U8G_SECTION(".progmem.u8g_font_fub20"); +extern const u8g_fntpgm_uint8_t u8g_font_fub20r[] U8G_SECTION(".progmem.u8g_font_fub20r"); +extern const u8g_fntpgm_uint8_t u8g_font_fub20n[] U8G_SECTION(".progmem.u8g_font_fub20n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub25[] U8G_SECTION(".progmem.u8g_font_fub25"); +extern const u8g_fntpgm_uint8_t u8g_font_fub25r[] U8G_SECTION(".progmem.u8g_font_fub25r"); +extern const u8g_fntpgm_uint8_t u8g_font_fub25n[] U8G_SECTION(".progmem.u8g_font_fub25n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub30[] U8G_SECTION(".progmem.u8g_font_fub30"); +extern const u8g_fntpgm_uint8_t u8g_font_fub30r[] U8G_SECTION(".progmem.u8g_font_fub30r"); +extern const u8g_fntpgm_uint8_t u8g_font_fub30n[] U8G_SECTION(".progmem.u8g_font_fub30n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub35n[] U8G_SECTION(".progmem.u8g_font_fub35n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub42n[] U8G_SECTION(".progmem.u8g_font_fub42n"); +extern const u8g_fntpgm_uint8_t u8g_font_fub49n[] U8G_SECTION(".progmem.u8g_font_fub49n"); + +/* + Free-Universal Regular + r: Reduced char set (codes 32 - 128) + n: Numbers (codes 42 - 57) + no char: Full set (codes 32 - 255) +*/ + +extern const u8g_fntpgm_uint8_t u8g_font_fur11[] U8G_SECTION(".progmem.u8g_font_fur11"); +extern const u8g_fntpgm_uint8_t u8g_font_fur11r[] U8G_SECTION(".progmem.u8g_font_fur11r"); +extern const u8g_fntpgm_uint8_t u8g_font_fur11n[] U8G_SECTION(".progmem.u8g_font_fur11n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur14[] U8G_SECTION(".progmem.u8g_font_fur14"); +extern const u8g_fntpgm_uint8_t u8g_font_fur14r[] U8G_SECTION(".progmem.u8g_font_fur14r"); +extern const u8g_fntpgm_uint8_t u8g_font_fur14n[] U8G_SECTION(".progmem.u8g_font_fur14n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur17[] U8G_SECTION(".progmem.u8g_font_fur17"); +extern const u8g_fntpgm_uint8_t u8g_font_fur17r[] U8G_SECTION(".progmem.u8g_font_fur17r"); +extern const u8g_fntpgm_uint8_t u8g_font_fur17n[] U8G_SECTION(".progmem.u8g_font_fur17n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur20[] U8G_SECTION(".progmem.u8g_font_fur20"); +extern const u8g_fntpgm_uint8_t u8g_font_fur20r[] U8G_SECTION(".progmem.u8g_font_fur20r"); +extern const u8g_fntpgm_uint8_t u8g_font_fur20n[] U8G_SECTION(".progmem.u8g_font_fur20n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur25[] U8G_SECTION(".progmem.u8g_font_fur25"); +extern const u8g_fntpgm_uint8_t u8g_font_fur25r[] U8G_SECTION(".progmem.u8g_font_fur25r"); +extern const u8g_fntpgm_uint8_t u8g_font_fur25n[] U8G_SECTION(".progmem.u8g_font_fur25n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur30[] U8G_SECTION(".progmem.u8g_font_fur30"); +extern const u8g_fntpgm_uint8_t u8g_font_fur30r[] U8G_SECTION(".progmem.u8g_font_fur30r"); +extern const u8g_fntpgm_uint8_t u8g_font_fur30n[] U8G_SECTION(".progmem.u8g_font_fur30n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur35n[] U8G_SECTION(".progmem.u8g_font_fur35n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur42n[] U8G_SECTION(".progmem.u8g_font_fur42n"); +extern const u8g_fntpgm_uint8_t u8g_font_fur49n[] U8G_SECTION(".progmem.u8g_font_fur49n"); + +/* + Gentium Bold + r: Reduced char set (codes 32 - 128) + n: Numbers (codes 42 - 57) + no char: Full set (codes 32 - 255) +*/ + +extern const u8g_fntpgm_uint8_t u8g_font_gdb11[] U8G_SECTION(".progmem.u8g_font_gdb11"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb12[] U8G_SECTION(".progmem.u8g_font_gdb12"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb14[] U8G_SECTION(".progmem.u8g_font_gdb14"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb17[] U8G_SECTION(".progmem.u8g_font_gdb17"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb20[] U8G_SECTION(".progmem.u8g_font_gdb20"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb25[] U8G_SECTION(".progmem.u8g_font_gdb25"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb30[] U8G_SECTION(".progmem.u8g_font_gdb30"); + +extern const u8g_fntpgm_uint8_t u8g_font_gdb11r[] U8G_SECTION(".progmem.u8g_font_gdb11r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb12r[] U8G_SECTION(".progmem.u8g_font_gdb12r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb14r[] U8G_SECTION(".progmem.u8g_font_gdb14r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb17r[] U8G_SECTION(".progmem.u8g_font_gdb17r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb20r[] U8G_SECTION(".progmem.u8g_font_gdb20r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb25r[] U8G_SECTION(".progmem.u8g_font_gdb25r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb30r[] U8G_SECTION(".progmem.u8g_font_gdb30r"); + +extern const u8g_fntpgm_uint8_t u8g_font_gdb11n[] U8G_SECTION(".progmem.u8g_font_gdb11n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb12n[] U8G_SECTION(".progmem.u8g_font_gdb12n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb14n[] U8G_SECTION(".progmem.u8g_font_gdb14n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb17n[] U8G_SECTION(".progmem.u8g_font_gdb17n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb20n[] U8G_SECTION(".progmem.u8g_font_gdb20n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb25n[] U8G_SECTION(".progmem.u8g_font_gdb25n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdb30n[] U8G_SECTION(".progmem.u8g_font_gdb30n"); + +/* + Gentium Regular + r: Reduced char set (codes 32 - 128) + n: Numbers (codes 42 - 57) + no char: Full set (codes 32 - 255) +*/ + +extern const u8g_fntpgm_uint8_t u8g_font_gdr9[] U8G_SECTION(".progmem.u8g_font_gdr9"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr10[] U8G_SECTION(".progmem.u8g_font_gdr10"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr11[] U8G_SECTION(".progmem.u8g_font_gdr11"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr12[] U8G_SECTION(".progmem.u8g_font_gdr12"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr14[] U8G_SECTION(".progmem.u8g_font_gdr14"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr17[] U8G_SECTION(".progmem.u8g_font_gdr17"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr20[] U8G_SECTION(".progmem.u8g_font_gdr20"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr25[] U8G_SECTION(".progmem.u8g_font_gdr25"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr30[] U8G_SECTION(".progmem.u8g_font_gdr30"); + +extern const u8g_fntpgm_uint8_t u8g_font_gdr9r[] U8G_SECTION(".progmem.u8g_font_gdr9r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr10r[] U8G_SECTION(".progmem.u8g_font_gdr10r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr11r[] U8G_SECTION(".progmem.u8g_font_gdr11r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr12r[] U8G_SECTION(".progmem.u8g_font_gdr12r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr14r[] U8G_SECTION(".progmem.u8g_font_gdr14r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr17r[] U8G_SECTION(".progmem.u8g_font_gdr17r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr20r[] U8G_SECTION(".progmem.u8g_font_gdr20r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr25r[] U8G_SECTION(".progmem.u8g_font_gdr25r"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr30r[] U8G_SECTION(".progmem.u8g_font_gdr30r"); + +extern const u8g_fntpgm_uint8_t u8g_font_gdr9n[] U8G_SECTION(".progmem.u8g_font_gdr9n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr10n[] U8G_SECTION(".progmem.u8g_font_gdr10n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr11n[] U8G_SECTION(".progmem.u8g_font_gdr11n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr12n[] U8G_SECTION(".progmem.u8g_font_gdr12n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr14n[] U8G_SECTION(".progmem.u8g_font_gdr14n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr17n[] U8G_SECTION(".progmem.u8g_font_gdr17n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr20n[] U8G_SECTION(".progmem.u8g_font_gdr20n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr25n[] U8G_SECTION(".progmem.u8g_font_gdr25n"); +extern const u8g_fntpgm_uint8_t u8g_font_gdr30n[] U8G_SECTION(".progmem.u8g_font_gdr30n"); + +/* + Old-Standard Bold + r: Reduced char set (codes 32 - 128) + n: Numbers (codes 42 - 57) + no char: Full set (codes 32 - 255) +*/ + +extern const u8g_fntpgm_uint8_t u8g_font_osb18[] U8G_SECTION(".progmem.u8g_font_osb18"); +extern const u8g_fntpgm_uint8_t u8g_font_osb21[] U8G_SECTION(".progmem.u8g_font_osb21"); +extern const u8g_fntpgm_uint8_t u8g_font_osb26[] U8G_SECTION(".progmem.u8g_font_osb26"); +extern const u8g_fntpgm_uint8_t u8g_font_osb29[] U8G_SECTION(".progmem.u8g_font_osb29"); +extern const u8g_fntpgm_uint8_t u8g_font_osb35[] U8G_SECTION(".progmem.u8g_font_osb35"); + +extern const u8g_fntpgm_uint8_t u8g_font_osb18r[] U8G_SECTION(".progmem.u8g_font_osb18r"); +extern const u8g_fntpgm_uint8_t u8g_font_osb21r[] U8G_SECTION(".progmem.u8g_font_osb21r"); +extern const u8g_fntpgm_uint8_t u8g_font_osb26r[] U8G_SECTION(".progmem.u8g_font_osb26r"); +extern const u8g_fntpgm_uint8_t u8g_font_osb29r[] U8G_SECTION(".progmem.u8g_font_osb29r"); +extern const u8g_fntpgm_uint8_t u8g_font_osb35r[] U8G_SECTION(".progmem.u8g_font_osb35r"); + +extern const u8g_fntpgm_uint8_t u8g_font_osb18n[] U8G_SECTION(".progmem.u8g_font_osb18n"); +extern const u8g_fntpgm_uint8_t u8g_font_osb21n[] U8G_SECTION(".progmem.u8g_font_osb21n"); +extern const u8g_fntpgm_uint8_t u8g_font_osb26n[] U8G_SECTION(".progmem.u8g_font_osb26n"); +extern const u8g_fntpgm_uint8_t u8g_font_osb29n[] U8G_SECTION(".progmem.u8g_font_osb29n"); +extern const u8g_fntpgm_uint8_t u8g_font_osb35n[] U8G_SECTION(".progmem.u8g_font_osb35n"); + +/* + Old-Standard Regular + r: Reduced char set (codes 32 - 128) + n: Numbers (codes 42 - 57) + no char: Full set (codes 32 - 255) +*/ + +extern const u8g_fntpgm_uint8_t u8g_font_osr18[] U8G_SECTION(".progmem.u8g_font_osr18"); +extern const u8g_fntpgm_uint8_t u8g_font_osr21[] U8G_SECTION(".progmem.u8g_font_osr21"); +extern const u8g_fntpgm_uint8_t u8g_font_osr26[] U8G_SECTION(".progmem.u8g_font_osr26"); +extern const u8g_fntpgm_uint8_t u8g_font_osr29[] U8G_SECTION(".progmem.u8g_font_osr29"); +extern const u8g_fntpgm_uint8_t u8g_font_osr35[] U8G_SECTION(".progmem.u8g_font_osr35"); + +extern const u8g_fntpgm_uint8_t u8g_font_osr18r[] U8G_SECTION(".progmem.u8g_font_osr18r"); +extern const u8g_fntpgm_uint8_t u8g_font_osr21r[] U8G_SECTION(".progmem.u8g_font_osr21r"); +extern const u8g_fntpgm_uint8_t u8g_font_osr26r[] U8G_SECTION(".progmem.u8g_font_osr26r"); +extern const u8g_fntpgm_uint8_t u8g_font_osr29r[] U8G_SECTION(".progmem.u8g_font_osr29r"); +extern const u8g_fntpgm_uint8_t u8g_font_osr35r[] U8G_SECTION(".progmem.u8g_font_osr35r"); + +extern const u8g_fntpgm_uint8_t u8g_font_osr18n[] U8G_SECTION(".progmem.u8g_font_osr18n"); +extern const u8g_fntpgm_uint8_t u8g_font_osr21n[] U8G_SECTION(".progmem.u8g_font_osr21n"); +extern const u8g_fntpgm_uint8_t u8g_font_osr26n[] U8G_SECTION(".progmem.u8g_font_osr26n"); +extern const u8g_fntpgm_uint8_t u8g_font_osr29n[] U8G_SECTION(".progmem.u8g_font_osr29n"); +extern const u8g_fntpgm_uint8_t u8g_font_osr35n[] U8G_SECTION(".progmem.u8g_font_osr35n"); + +//extern const u8g_fntpgm_uint8_t u8g_font_osr41[] U8G_SECTION(".progmem.u8g_font_osr41"); + +/* GNU unifont */ + +extern const u8g_fntpgm_uint8_t u8g_font_unifont_18_19[] U8G_SECTION(".progmem.u8g_font_unifont_18_19"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_72_73[] U8G_SECTION(".progmem.u8g_font_unifont_72_73"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_67_75[] U8G_SECTION(".progmem.u8g_font_unifont_67_75"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_76[] U8G_SECTION(".progmem.u8g_font_unifont_76"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_77[] U8G_SECTION(".progmem.u8g_font_unifont_77"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_78_79[] U8G_SECTION(".progmem.u8g_font_unifont_78_79"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_86[] U8G_SECTION(".progmem.u8g_font_unifont_86"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont[] U8G_SECTION(".progmem.u8g_font_unifont"); +extern const u8g_fntpgm_uint8_t u8g_font_unifontr[] U8G_SECTION(".progmem.u8g_font_unifontr"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_0_8[] U8G_SECTION(".progmem.u8g_font_unifont_0_8"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_2_3[] U8G_SECTION(".progmem.u8g_font_unifont_2_3"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_4_5[] U8G_SECTION(".progmem.u8g_font_unifont_4_5"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_8_9[] U8G_SECTION(".progmem.u8g_font_unifont_8_9"); +extern const u8g_fntpgm_uint8_t u8g_font_unifont_12_13[] U8G_SECTION(".progmem.u8g_font_unifont_12_13"); + + +/* 04b fonts */ + +extern const u8g_fntpgm_uint8_t u8g_font_04b_03b[] U8G_SECTION(".progmem.u8g_font_04b_03b"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_03bn[] U8G_SECTION(".progmem.u8g_font_04b_03bn"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_03br[] U8G_SECTION(".progmem.u8g_font_04b_03br"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_03[] U8G_SECTION(".progmem.u8g_font_04b_03"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_03n[] U8G_SECTION(".progmem.u8g_font_04b_03n"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_03r[] U8G_SECTION(".progmem.u8g_font_04b_03r"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_24[] U8G_SECTION(".progmem.u8g_font_04b_24"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_24n[] U8G_SECTION(".progmem.u8g_font_04b_24n"); +extern const u8g_fntpgm_uint8_t u8g_font_04b_24r[] U8G_SECTION(".progmem.u8g_font_04b_24r"); + +/* orgdot fonts */ + +extern const u8g_fntpgm_uint8_t u8g_font_orgv01[] U8G_SECTION(".progmem.u8g_font_orgv01"); +extern const u8g_fntpgm_uint8_t u8g_font_orgv01r[] U8G_SECTION(".progmem.u8g_font_orgv01r"); +extern const u8g_fntpgm_uint8_t u8g_font_orgv01n[] U8G_SECTION(".progmem.u8g_font_orgv01n"); + +extern const u8g_fntpgm_uint8_t u8g_font_fixed_v0[] U8G_SECTION(".progmem.u8g_font_fixed_v0"); +extern const u8g_fntpgm_uint8_t u8g_font_fixed_v0r[] U8G_SECTION(".progmem.u8g_font_fixed_v0r"); +extern const u8g_fntpgm_uint8_t u8g_font_fixed_v0n[] U8G_SECTION(".progmem.u8g_font_fixed_v0n"); + +extern const u8g_fntpgm_uint8_t u8g_font_tpssb[] U8G_SECTION(".progmem.u8g_font_tpssb"); +extern const u8g_fntpgm_uint8_t u8g_font_tpssbr[] U8G_SECTION(".progmem.u8g_font_tpssbr"); +extern const u8g_fntpgm_uint8_t u8g_font_tpssbn[] U8G_SECTION(".progmem.u8g_font_tpssbn"); + +extern const u8g_fntpgm_uint8_t u8g_font_tpss[] U8G_SECTION(".progmem.u8g_font_tpss"); +extern const u8g_fntpgm_uint8_t u8g_font_tpssr[] U8G_SECTION(".progmem.u8g_font_tpssr"); +extern const u8g_fntpgm_uint8_t u8g_font_tpssn[] U8G_SECTION(".progmem.u8g_font_tpssn"); + +/* contributed */ + +extern const u8g_fntpgm_uint8_t u8g_font_freedoomr25n[] U8G_SECTION(".progmem.u8g_font_freedoomr25n"); +extern const u8g_fntpgm_uint8_t u8g_font_freedoomr10r[] U8G_SECTION(".progmem.u8g_font_freedoomr10r"); + +/* adobe X11 */ +extern const u8g_fntpgm_uint8_t u8g_font_courB08[] U8G_SECTION(".progmem.u8g_font_courB08"); +extern const u8g_fntpgm_uint8_t u8g_font_courB08r[] U8G_SECTION(".progmem.u8g_font_courB08r"); +extern const u8g_fntpgm_uint8_t u8g_font_courB10[] U8G_SECTION(".progmem.u8g_font_courB10"); +extern const u8g_fntpgm_uint8_t u8g_font_courB10r[] U8G_SECTION(".progmem.u8g_font_courB10r"); +extern const u8g_fntpgm_uint8_t u8g_font_courB12[] U8G_SECTION(".progmem.u8g_font_courB12"); +extern const u8g_fntpgm_uint8_t u8g_font_courB12r[] U8G_SECTION(".progmem.u8g_font_courB12r"); +extern const u8g_fntpgm_uint8_t u8g_font_courB14[] U8G_SECTION(".progmem.u8g_font_courB14"); +extern const u8g_fntpgm_uint8_t u8g_font_courB14r[] U8G_SECTION(".progmem.u8g_font_courB14r"); +extern const u8g_fntpgm_uint8_t u8g_font_courB18[] U8G_SECTION(".progmem.u8g_font_courB18"); +extern const u8g_fntpgm_uint8_t u8g_font_courB18r[] U8G_SECTION(".progmem.u8g_font_courB18r"); +extern const u8g_fntpgm_uint8_t u8g_font_courB24[] U8G_SECTION(".progmem.u8g_font_courB24"); +extern const u8g_fntpgm_uint8_t u8g_font_courB24r[] U8G_SECTION(".progmem.u8g_font_courB24r"); +extern const u8g_fntpgm_uint8_t u8g_font_courB24n[] U8G_SECTION(".progmem.u8g_font_courB24n"); + +extern const u8g_fntpgm_uint8_t u8g_font_courR08[] U8G_SECTION(".progmem.u8g_font_courR08"); +extern const u8g_fntpgm_uint8_t u8g_font_courR08r[] U8G_SECTION(".progmem.u8g_font_courR08r"); +extern const u8g_fntpgm_uint8_t u8g_font_courR10[] U8G_SECTION(".progmem.u8g_font_courR10"); +extern const u8g_fntpgm_uint8_t u8g_font_courR10r[] U8G_SECTION(".progmem.u8g_font_courR10r"); +extern const u8g_fntpgm_uint8_t u8g_font_courR12[] U8G_SECTION(".progmem.u8g_font_courR12"); +extern const u8g_fntpgm_uint8_t u8g_font_courR12r[] U8G_SECTION(".progmem.u8g_font_courR12r"); +extern const u8g_fntpgm_uint8_t u8g_font_courR14[] U8G_SECTION(".progmem.u8g_font_courR14"); +extern const u8g_fntpgm_uint8_t u8g_font_courR14r[] U8G_SECTION(".progmem.u8g_font_courR14r"); +extern const u8g_fntpgm_uint8_t u8g_font_courR18[] U8G_SECTION(".progmem.u8g_font_courR18"); +extern const u8g_fntpgm_uint8_t u8g_font_courR18r[] U8G_SECTION(".progmem.u8g_font_courR18r"); +extern const u8g_fntpgm_uint8_t u8g_font_courR24[] U8G_SECTION(".progmem.u8g_font_courR24"); +extern const u8g_fntpgm_uint8_t u8g_font_courR24r[] U8G_SECTION(".progmem.u8g_font_courR24r"); +extern const u8g_fntpgm_uint8_t u8g_font_courR24n[] U8G_SECTION(".progmem.u8g_font_courR24n"); + +extern const u8g_fntpgm_uint8_t u8g_font_helvB08[] U8G_SECTION(".progmem.u8g_font_helvB08"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB08r[] U8G_SECTION(".progmem.u8g_font_helvB08r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB10[] U8G_SECTION(".progmem.u8g_font_helvB10"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB10r[] U8G_SECTION(".progmem.u8g_font_helvB10r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB12[] U8G_SECTION(".progmem.u8g_font_helvB12"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB12r[] U8G_SECTION(".progmem.u8g_font_helvB12r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB14[] U8G_SECTION(".progmem.u8g_font_helvB14"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB14r[] U8G_SECTION(".progmem.u8g_font_helvB14r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB18[] U8G_SECTION(".progmem.u8g_font_helvB18"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB18r[] U8G_SECTION(".progmem.u8g_font_helvB18r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB24[] U8G_SECTION(".progmem.u8g_font_helvB24"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB24r[] U8G_SECTION(".progmem.u8g_font_helvB24r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvB24n[] U8G_SECTION(".progmem.u8g_font_helvB24n"); + +extern const u8g_fntpgm_uint8_t u8g_font_helvR08[] U8G_SECTION(".progmem.u8g_font_helvR08"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR08r[] U8G_SECTION(".progmem.u8g_font_helvR08r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR10[] U8G_SECTION(".progmem.u8g_font_helvR10"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR10r[] U8G_SECTION(".progmem.u8g_font_helvR10r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR12[] U8G_SECTION(".progmem.u8g_font_helvR12"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR12r[] U8G_SECTION(".progmem.u8g_font_helvR12r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR14[] U8G_SECTION(".progmem.u8g_font_helvR14"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR14r[] U8G_SECTION(".progmem.u8g_font_helvR14r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR18[] U8G_SECTION(".progmem.u8g_font_helvR18"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR18r[] U8G_SECTION(".progmem.u8g_font_helvR18r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR24[] U8G_SECTION(".progmem.u8g_font_helvR24"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR24r[] U8G_SECTION(".progmem.u8g_font_helvR24r"); +extern const u8g_fntpgm_uint8_t u8g_font_helvR24n[] U8G_SECTION(".progmem.u8g_font_helvR24n"); + +extern const u8g_fntpgm_uint8_t u8g_font_ncenB08[] U8G_SECTION(".progmem.u8g_font_ncenB08"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB08r[] U8G_SECTION(".progmem.u8g_font_ncenB08r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB10[] U8G_SECTION(".progmem.u8g_font_ncenB10"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB10r[] U8G_SECTION(".progmem.u8g_font_ncenB10r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB12[] U8G_SECTION(".progmem.u8g_font_ncenB12"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB12r[] U8G_SECTION(".progmem.u8g_font_ncenB12r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB14[] U8G_SECTION(".progmem.u8g_font_ncenB14"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB14r[] U8G_SECTION(".progmem.u8g_font_ncenB14r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB18[] U8G_SECTION(".progmem.u8g_font_ncenB18"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB18r[] U8G_SECTION(".progmem.u8g_font_ncenB18r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB24[] U8G_SECTION(".progmem.u8g_font_ncenB24"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB24r[] U8G_SECTION(".progmem.u8g_font_ncenB24r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenB24n[] U8G_SECTION(".progmem.u8g_font_ncenB24n"); + +extern const u8g_fntpgm_uint8_t u8g_font_ncenR08[] U8G_SECTION(".progmem.u8g_font_ncenR08"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR08r[] U8G_SECTION(".progmem.u8g_font_ncenR08r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR10[] U8G_SECTION(".progmem.u8g_font_ncenR10"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR10r[] U8G_SECTION(".progmem.u8g_font_ncenR10r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR12[] U8G_SECTION(".progmem.u8g_font_ncenR12"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR12r[] U8G_SECTION(".progmem.u8g_font_ncenR12r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR14[] U8G_SECTION(".progmem.u8g_font_ncenR14"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR14r[] U8G_SECTION(".progmem.u8g_font_ncenR14r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR18[] U8G_SECTION(".progmem.u8g_font_ncenR18"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR18r[] U8G_SECTION(".progmem.u8g_font_ncenR18r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR24[] U8G_SECTION(".progmem.u8g_font_ncenR24"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR24r[] U8G_SECTION(".progmem.u8g_font_ncenR24r"); +extern const u8g_fntpgm_uint8_t u8g_font_ncenR24n[] U8G_SECTION(".progmem.u8g_font_ncenR24n"); + +extern const u8g_fntpgm_uint8_t u8g_font_symb08[] U8G_SECTION(".progmem.u8g_font_symb08"); +extern const u8g_fntpgm_uint8_t u8g_font_symb08r[] U8G_SECTION(".progmem.u8g_font_symb08r"); +extern const u8g_fntpgm_uint8_t u8g_font_symb10[] U8G_SECTION(".progmem.u8g_font_symb10"); +extern const u8g_fntpgm_uint8_t u8g_font_symb10r[] U8G_SECTION(".progmem.u8g_font_symb10r"); +extern const u8g_fntpgm_uint8_t u8g_font_symb12[] U8G_SECTION(".progmem.u8g_font_symb12"); +extern const u8g_fntpgm_uint8_t u8g_font_symb12r[] U8G_SECTION(".progmem.u8g_font_symb12r"); +extern const u8g_fntpgm_uint8_t u8g_font_symb14[] U8G_SECTION(".progmem.u8g_font_symb14"); +extern const u8g_fntpgm_uint8_t u8g_font_symb14r[] U8G_SECTION(".progmem.u8g_font_symb14r"); +extern const u8g_fntpgm_uint8_t u8g_font_symb18[] U8G_SECTION(".progmem.u8g_font_symb18"); +extern const u8g_fntpgm_uint8_t u8g_font_symb18r[] U8G_SECTION(".progmem.u8g_font_symb18r"); +extern const u8g_fntpgm_uint8_t u8g_font_symb24[] U8G_SECTION(".progmem.u8g_font_symb24"); +extern const u8g_fntpgm_uint8_t u8g_font_symb24r[] U8G_SECTION(".progmem.u8g_font_symb24r"); + +extern const u8g_fntpgm_uint8_t u8g_font_timB08[] U8G_SECTION(".progmem.u8g_font_timB08"); +extern const u8g_fntpgm_uint8_t u8g_font_timB08r[] U8G_SECTION(".progmem.u8g_font_timB08r"); +extern const u8g_fntpgm_uint8_t u8g_font_timB10[] U8G_SECTION(".progmem.u8g_font_timB10"); +extern const u8g_fntpgm_uint8_t u8g_font_timB10r[] U8G_SECTION(".progmem.u8g_font_timB10r"); +extern const u8g_fntpgm_uint8_t u8g_font_timB12[] U8G_SECTION(".progmem.u8g_font_timB12"); +extern const u8g_fntpgm_uint8_t u8g_font_timB12r[] U8G_SECTION(".progmem.u8g_font_timB12r"); +extern const u8g_fntpgm_uint8_t u8g_font_timB14[] U8G_SECTION(".progmem.u8g_font_timB14"); +extern const u8g_fntpgm_uint8_t u8g_font_timB14r[] U8G_SECTION(".progmem.u8g_font_timB14r"); +extern const u8g_fntpgm_uint8_t u8g_font_timB18[] U8G_SECTION(".progmem.u8g_font_timB18"); +extern const u8g_fntpgm_uint8_t u8g_font_timB18r[] U8G_SECTION(".progmem.u8g_font_timB18r"); +extern const u8g_fntpgm_uint8_t u8g_font_timB24[] U8G_SECTION(".progmem.u8g_font_timB24"); +extern const u8g_fntpgm_uint8_t u8g_font_timB24r[] U8G_SECTION(".progmem.u8g_font_timB24r"); +extern const u8g_fntpgm_uint8_t u8g_font_timB24n[] U8G_SECTION(".progmem.u8g_font_timB24n"); + +extern const u8g_fntpgm_uint8_t u8g_font_timR08[] U8G_SECTION(".progmem.u8g_font_timR08"); +extern const u8g_fntpgm_uint8_t u8g_font_timR08r[] U8G_SECTION(".progmem.u8g_font_timR08r"); +extern const u8g_fntpgm_uint8_t u8g_font_timR10[] U8G_SECTION(".progmem.u8g_font_timR10"); +extern const u8g_fntpgm_uint8_t u8g_font_timR10r[] U8G_SECTION(".progmem.u8g_font_timR10r"); +extern const u8g_fntpgm_uint8_t u8g_font_timR12[] U8G_SECTION(".progmem.u8g_font_timR12"); +extern const u8g_fntpgm_uint8_t u8g_font_timR12r[] U8G_SECTION(".progmem.u8g_font_timR12r"); +extern const u8g_fntpgm_uint8_t u8g_font_timR14[] U8G_SECTION(".progmem.u8g_font_timR14"); +extern const u8g_fntpgm_uint8_t u8g_font_timR14r[] U8G_SECTION(".progmem.u8g_font_timR14r"); +extern const u8g_fntpgm_uint8_t u8g_font_timR18[] U8G_SECTION(".progmem.u8g_font_timR18"); +extern const u8g_fntpgm_uint8_t u8g_font_timR18r[] U8G_SECTION(".progmem.u8g_font_timR18r"); +extern const u8g_fntpgm_uint8_t u8g_font_timR24[] U8G_SECTION(".progmem.u8g_font_timR24"); +extern const u8g_fntpgm_uint8_t u8g_font_timR24r[] U8G_SECTION(".progmem.u8g_font_timR24r"); +extern const u8g_fntpgm_uint8_t u8g_font_timR24n[] U8G_SECTION(".progmem.u8g_font_timR24n"); + +/* fontstruct */ + +extern const u8g_fntpgm_uint8_t u8g_font_p01type[] U8G_SECTION(".progmem.u8g_font_p01type"); +extern const u8g_fntpgm_uint8_t u8g_font_p01typer[] U8G_SECTION(".progmem.u8g_font_p01typer"); +extern const u8g_fntpgm_uint8_t u8g_font_p01typen[] U8G_SECTION(".progmem.u8g_font_p01typen"); + +extern const u8g_fntpgm_uint8_t u8g_font_lucasfont_alternate[] U8G_SECTION(".progmem.u8g_font_lucasfont_alternate"); +extern const u8g_fntpgm_uint8_t u8g_font_lucasfont_alternater[] U8G_SECTION(".progmem.u8g_font_lucasfont_alternater"); +extern const u8g_fntpgm_uint8_t u8g_font_lucasfont_alternaten[] U8G_SECTION(".progmem.u8g_font_lucasfont_alternaten"); + +//extern const u8g_fntpgm_uint8_t u8g_font_fs_onebrickpixelfont[] U8G_SECTION(".progmem.u8g_font_fs_onebrickpixelfont"); +//extern const u8g_fntpgm_uint8_t u8g_font_fs_onebrickpixelfontr[] U8G_SECTION(".progmem.u8g_font_fs_onebrickpixelfontr"); +//extern const u8g_fntpgm_uint8_t u8g_font_fs_onebrickpixelfontn[] U8G_SECTION(".progmem.u8g_font_fs_onebrickpixelfontn"); + +extern const u8g_fntpgm_uint8_t u8g_font_chikita[] U8G_SECTION(".progmem.u8g_font_chikita"); +extern const u8g_fntpgm_uint8_t u8g_font_chikitar[] U8G_SECTION(".progmem.u8g_font_chikitar"); +extern const u8g_fntpgm_uint8_t u8g_font_chikitan[] U8G_SECTION(".progmem.u8g_font_chikitan"); + +extern const u8g_fntpgm_uint8_t u8g_font_pixelle_micro[] U8G_SECTION(".progmem.u8g_font_pixelle_micro"); +extern const u8g_fntpgm_uint8_t u8g_font_pixelle_micror[] U8G_SECTION(".progmem.u8g_font_pixelle_micror"); +extern const u8g_fntpgm_uint8_t u8g_font_pixelle_micron[] U8G_SECTION(".progmem.u8g_font_pixelle_micron"); + +extern const u8g_fntpgm_uint8_t u8g_font_trixel_square[] U8G_SECTION(".progmem.u8g_font_trixel_square"); +extern const u8g_fntpgm_uint8_t u8g_font_trixel_squarer[] U8G_SECTION(".progmem.u8g_font_trixel_squarer"); +extern const u8g_fntpgm_uint8_t u8g_font_trixel_squaren[] U8G_SECTION(".progmem.u8g_font_trixel_squaren"); + +extern const u8g_fntpgm_uint8_t u8g_font_robot_de_niro[] U8G_SECTION(".progmem.u8g_font_robot_de_niro"); +extern const u8g_fntpgm_uint8_t u8g_font_robot_de_niror[] U8G_SECTION(".progmem.u8g_font_robot_de_niror"); +extern const u8g_fntpgm_uint8_t u8g_font_robot_de_niron[] U8G_SECTION(".progmem.u8g_font_robot_de_niron"); + +extern const u8g_fntpgm_uint8_t u8g_font_baby[] U8G_SECTION(".progmem.u8g_font_baby"); +extern const u8g_fntpgm_uint8_t u8g_font_babyr[] U8G_SECTION(".progmem.u8g_font_babyr"); +extern const u8g_fntpgm_uint8_t u8g_font_babyn[] U8G_SECTION(".progmem.u8g_font_babyn"); + +extern const u8g_fntpgm_uint8_t u8g_font_blipfest_07[] U8G_SECTION(".progmem.u8g_font_blipfest_07"); +extern const u8g_fntpgm_uint8_t u8g_font_blipfest_07r[] U8G_SECTION(".progmem.u8g_font_blipfest_07r"); +extern const u8g_fntpgm_uint8_t u8g_font_blipfest_07n[] U8G_SECTION(".progmem.u8g_font_blipfest_07n"); + +extern const u8g_fntpgm_uint8_t u8g_font_6x10_marlin[] U8G_SECTION(".progmem.u8g_font_6x10_marlin"); +extern const u8g_fntpgm_uint8_t u8g_font_6x9[] U8G_SECTION(".progmem.u8g_font_6x9"); + +#ifdef __cplusplus +} +#endif + +#endif /* _U8G_H */ + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_bitmap.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_bitmap.c new file mode 100644 index 0000000000000000000000000000000000000000..dc742d1d785030a40a43fe1fe867238b63eca0d1 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_bitmap.c @@ -0,0 +1,177 @@ +/* + + u8g_bitmap.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +void u8g_DrawHBitmap(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, const uint8_t *bitmap) +{ + while( cnt > 0 ) + { + u8g_Draw8Pixel(u8g, x, y, 0, *bitmap); + bitmap++; + cnt--; + x+=8; + } +} + +void u8g_DrawBitmap(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, u8g_uint_t h, const uint8_t *bitmap) +{ + if ( u8g_IsBBXIntersection(u8g, x, y, cnt*8, h) == 0 ) + return; + while( h > 0 ) + { + u8g_DrawHBitmap(u8g, x, y, cnt, bitmap); + bitmap += cnt; + y++; + h--; + } +} + + +void u8g_DrawHBitmapP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, const u8g_pgm_uint8_t *bitmap) +{ + while( cnt > 0 ) + { + u8g_Draw8Pixel(u8g, x, y, 0, u8g_pgm_read(bitmap)); + bitmap++; + cnt--; + x+=8; + } +} + +void u8g_DrawBitmapP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t cnt, u8g_uint_t h, const u8g_pgm_uint8_t *bitmap) +{ + if ( u8g_IsBBXIntersection(u8g, x, y, cnt*8, h) == 0 ) + return; + while( h > 0 ) + { + u8g_DrawHBitmapP(u8g, x, y, cnt, bitmap); + bitmap += cnt; + y++; + h--; + } +} + +/*=========================================================================*/ + +static void u8g_DrawHXBM(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, const uint8_t *bitmap) +{ + uint8_t d; + x+=7; + while( w >= 8 ) + { + u8g_Draw8Pixel(u8g, x, y, 2, *bitmap); + bitmap++; + w-= 8; + x+=8; + } + if ( w > 0 ) + { + d = *bitmap; + x -= 7; + do + { + if ( d & 1 ) + u8g_DrawPixel(u8g, x, y); + x++; + w--; + d >>= 1; + } while ( w > 0 ); + } +} + +void u8g_DrawXBM(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, const uint8_t *bitmap) +{ + u8g_uint_t b; + b = w; + b += 7; + b >>= 3; + + if ( u8g_IsBBXIntersection(u8g, x, y, w, h) == 0 ) + return; + + while( h > 0 ) + { + u8g_DrawHXBM(u8g, x, y, w, bitmap); + bitmap += b; + y++; + h--; + } +} + +static void u8g_DrawHXBMP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, const u8g_pgm_uint8_t *bitmap) +{ + uint8_t d; + x+=7; + while( w >= 8 ) + { + u8g_Draw8Pixel(u8g, x, y, 2, u8g_pgm_read(bitmap)); + bitmap++; + w-= 8; + x+=8; + } + if ( w > 0 ) + { + d = u8g_pgm_read(bitmap); + x -= 7; + do + { + if ( d & 1 ) + u8g_DrawPixel(u8g, x, y); + x++; + w--; + d >>= 1; + } while ( w > 0 ); + } +} + +void u8g_DrawXBMP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, const u8g_pgm_uint8_t *bitmap) +{ + u8g_uint_t b; + b = w; + b += 7; + b >>= 3; + + if ( u8g_IsBBXIntersection(u8g, x, y, w, h) == 0 ) + return; + while( h > 0 ) + { + u8g_DrawHXBMP(u8g, x, y, w, bitmap); + bitmap += b; + y++; + h--; + } +} diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_circle.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_circle.c new file mode 100644 index 0000000000000000000000000000000000000000..8f4a0525d877fc838a1928949d784e336b0e2dfa --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_circle.c @@ -0,0 +1,382 @@ +/* + + u8g_circle.c + + Utility to draw empty and filled circles. + + Universal 8bit Graphics Library + + Copyright (c) 2011, bjthom@gmail.com + u8g_DrawCircle & u8g_DrawDisc by olikraus@gmail.com + + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Addition to the U8G Library 02/25/12 + + +*/ + +#include "u8g.h" + +#ifdef OLD_CODE + +void circ_upperRight(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0) { + u8g_DrawPixel(u8g, x0 + x, y0 - y); + u8g_DrawPixel(u8g, x0 + y, y0 - x); +} + +void circ_upperLeft(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0) { + u8g_DrawPixel(u8g, x0 - x, y0 - y); + u8g_DrawPixel(u8g, x0 - y, y0 - x); +} + +void circ_lowerRight(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0) { + u8g_DrawPixel(u8g, x0 + x, y0 + y); + u8g_DrawPixel(u8g, x0 + y, y0 + x); +} + +void circ_lowerLeft(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0) { + u8g_DrawPixel(u8g, x0 - x, y0 + y); + u8g_DrawPixel(u8g, x0 - y, y0 + x); +} + +void circ_all(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0) { + circ_upperRight(u8g, x, y, x0, y0); + circ_upperLeft(u8g, x, y, x0, y0); + circ_lowerRight(u8g, x, y, x0, y0); + circ_lowerLeft(u8g, x, y, x0, y0); +} + +void u8g_DrawEmpCirc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) +{ + if ( u8g_IsBBXIntersection(u8g, x0-rad-1, y0-rad-1, 2*rad+1, 2*rad+1) == 0) + return; + + int f = 1 - rad; + int ddF_x = 1; + int ddF_y = -2*rad; + uint8_t x = 0; + uint8_t y = rad; + + void ( *circ_util )(u8g_t *, u8g_uint_t, u8g_uint_t, u8g_uint_t, u8g_uint_t); + + switch (option) + { + case U8G_CIRC_UPPER_RIGHT: + u8g_DrawPixel(u8g, x0, y0 - rad); + u8g_DrawPixel(u8g, x0 + rad, y0); + circ_util = circ_upperRight; + break; + case U8G_CIRC_UPPER_LEFT: + u8g_DrawPixel(u8g, x0, y0 - rad); + u8g_DrawPixel(u8g, x0 - rad, y0); + circ_util = circ_upperLeft; + break; + case U8G_CIRC_LOWER_RIGHT: + u8g_DrawPixel(u8g, x0, y0 + rad); + u8g_DrawPixel(u8g, x0 + rad, y0); + circ_util = circ_lowerRight; + break; + case U8G_CIRC_LOWER_LEFT: + u8g_DrawPixel(u8g, x0, y0 + rad); + u8g_DrawPixel(u8g, x0 - rad, y0); + circ_util = circ_lowerLeft; + break; + default: + case U8G_CIRC_ALL: + u8g_DrawPixel(u8g, x0, y0 + rad); + u8g_DrawPixel(u8g, x0, y0 - rad); + u8g_DrawPixel(u8g, x0 + rad, y0); + u8g_DrawPixel(u8g, x0 - rad, y0); + circ_util = circ_all; + break; + } + + while( x < y ) + { + if(f >= 0) + { + y--; + ddF_y += 2; + f += ddF_y; + } + x++; + ddF_x += 2; + f += ddF_x; + + circ_util(u8g, x, y, x0, y0); + } +} + + +void u8g_DrawFillCirc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) +{ + if ( u8g_IsBBXIntersection(u8g, x0-rad-1, y0-rad-1, 2*rad+1, 2*rad+1) == 0) + return; + + int f = 1 - rad; + int ddF_x = 1; + int ddF_y = -2*rad; + uint8_t x = 0; + uint8_t y = rad; + + // Draw vertical diameter at the horiz. center + // u8g_DrawVLine(u8g, x0, y0 - rad, 2*rad+1); + + if (option == U8G_CIRC_UPPER_LEFT || option == U8G_CIRC_UPPER_RIGHT) { + u8g_DrawVLine(u8g, x0, y0 - rad, rad+1); + } + else if (option == U8G_CIRC_LOWER_LEFT || option == U8G_CIRC_LOWER_RIGHT) { + u8g_DrawVLine(u8g, x0, y0, rad+1); + } + else { + u8g_DrawVLine(u8g, x0, y0 - rad, 2*rad+1); + } + + while( x < y ) + { + if(f >= 0) + { + y--; + ddF_y += 2; + f += ddF_y; + } + x++; + ddF_x += 2; + f += ddF_x; + + //Draw vertical lines from one point to another + + switch (option) + { + case U8G_CIRC_UPPER_RIGHT: + u8g_DrawVLine(u8g, x0+x, y0-y, y+1); + u8g_DrawVLine(u8g, x0+y, y0-x, x+1); + break; + case U8G_CIRC_UPPER_LEFT: + u8g_DrawVLine(u8g, x0-x, y0-y, y+1); + u8g_DrawVLine(u8g, x0-y, y0-x, x+1); + break; + case U8G_CIRC_LOWER_RIGHT: + u8g_DrawVLine(u8g, x0+x, y0, y+1); + u8g_DrawVLine(u8g, x0+y, y0, x+1); + break; + case U8G_CIRC_LOWER_LEFT: + u8g_DrawVLine(u8g, x0-x, y0, y+1); + u8g_DrawVLine(u8g, x0-y, y0, x+1); + break; + case U8G_CIRC_ALL: + u8g_DrawVLine(u8g, x0+x, y0-y, 2*y+1); + u8g_DrawVLine(u8g, x0-x, y0-y, 2*y+1); + u8g_DrawVLine(u8g, x0+y, y0-x, 2*x+1); + u8g_DrawVLine(u8g, x0-y, y0-x, 2*x+1); + break; + } + } +} + +#endif + +/*=========================================================================*/ + +static void u8g_draw_circle_section(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0, uint8_t option) U8G_NOINLINE; + +static void u8g_draw_circle_section(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0, uint8_t option) +{ + /* upper right */ + if ( option & U8G_DRAW_UPPER_RIGHT ) + { + u8g_DrawPixel(u8g, x0 + x, y0 - y); + u8g_DrawPixel(u8g, x0 + y, y0 - x); + } + + /* upper left */ + if ( option & U8G_DRAW_UPPER_LEFT ) + { + u8g_DrawPixel(u8g, x0 - x, y0 - y); + u8g_DrawPixel(u8g, x0 - y, y0 - x); + } + + /* lower right */ + if ( option & U8G_DRAW_LOWER_RIGHT ) + { + u8g_DrawPixel(u8g, x0 + x, y0 + y); + u8g_DrawPixel(u8g, x0 + y, y0 + x); + } + + /* lower left */ + if ( option & U8G_DRAW_LOWER_LEFT ) + { + u8g_DrawPixel(u8g, x0 - x, y0 + y); + u8g_DrawPixel(u8g, x0 - y, y0 + x); + } +} + +void u8g_draw_circle(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) +{ + u8g_int_t f; + u8g_int_t ddF_x; + u8g_int_t ddF_y; + u8g_uint_t x; + u8g_uint_t y; + + f = 1; + f -= rad; + ddF_x = 1; + ddF_y = 0; + ddF_y -= rad; + ddF_y *= 2; + x = 0; + y = rad; + + u8g_draw_circle_section(u8g, x, y, x0, y0, option); + + while ( x < y ) + { + if (f >= 0) + { + y--; + ddF_y += 2; + f += ddF_y; + } + x++; + ddF_x += 2; + f += ddF_x; + + u8g_draw_circle_section(u8g, x, y, x0, y0, option); + } +} + +void u8g_DrawCircle(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) +{ + /* check for bounding box */ + { + u8g_uint_t radp, radp2; + + radp = rad; + radp++; + radp2 = radp; + radp2 *= 2; + + if ( u8g_IsBBXIntersection(u8g, x0-radp, y0-radp, radp2, radp2) == 0) + return; + } + + /* draw circle */ + u8g_draw_circle(u8g, x0, y0, rad, option); +} + +static void u8g_draw_disc_section(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0, uint8_t option) U8G_NOINLINE; + +static void u8g_draw_disc_section(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t x0, u8g_uint_t y0, uint8_t option) +{ + /* upper right */ + if ( option & U8G_DRAW_UPPER_RIGHT ) + { + u8g_DrawVLine(u8g, x0+x, y0-y, y+1); + u8g_DrawVLine(u8g, x0+y, y0-x, x+1); + } + + /* upper left */ + if ( option & U8G_DRAW_UPPER_LEFT ) + { + u8g_DrawVLine(u8g, x0-x, y0-y, y+1); + u8g_DrawVLine(u8g, x0-y, y0-x, x+1); + } + + /* lower right */ + if ( option & U8G_DRAW_LOWER_RIGHT ) + { + u8g_DrawVLine(u8g, x0+x, y0, y+1); + u8g_DrawVLine(u8g, x0+y, y0, x+1); + } + + /* lower left */ + if ( option & U8G_DRAW_LOWER_LEFT ) + { + u8g_DrawVLine(u8g, x0-x, y0, y+1); + u8g_DrawVLine(u8g, x0-y, y0, x+1); + } +} + +void u8g_draw_disc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) +{ + u8g_int_t f; + u8g_int_t ddF_x; + u8g_int_t ddF_y; + u8g_uint_t x; + u8g_uint_t y; + + f = 1; + f -= rad; + ddF_x = 1; + ddF_y = 0; + ddF_y -= rad; + ddF_y *= 2; + x = 0; + y = rad; + + u8g_draw_disc_section(u8g, x, y, x0, y0, option); + + while ( x < y ) + { + if (f >= 0) + { + y--; + ddF_y += 2; + f += ddF_y; + } + x++; + ddF_x += 2; + f += ddF_x; + + u8g_draw_disc_section(u8g, x, y, x0, y0, option); + } +} + +void u8g_DrawDisc(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t rad, uint8_t option) +{ + /* check for bounding box */ + { + u8g_uint_t radp, radp2; + + radp = rad; + radp++; + radp2 = radp; + radp2 *= 2; + + if ( u8g_IsBBXIntersection(u8g, x0-radp, y0-radp, radp2, radp2) == 0) + return; + } + + /* draw disc */ + u8g_draw_disc(u8g, x0, y0, rad, option); +} + + + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_clip.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_clip.c new file mode 100644 index 0000000000000000000000000000000000000000..71abef2e71fec2731175b744c087c32ff6b6f397 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_clip.c @@ -0,0 +1,156 @@ +/* + + u8g_clip.c + + procedures for clipping + taken over from procs in u8g_pb.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Notes + + This is one of the most critical parts of u8glib. It must be fast, but still reliable. + Based on the intersection program (see tools folder), there is minimized version of + the condition for the intersaction test: + minimized version + ---1----0 1 b1 <= a2 && b1 > b2 + -----1--0 1 b2 >= a1 && b1 > b2 + ---1-1--- 1 b1 <= a2 && b2 >= a1 + It includes the assumption, that a1 <= a2 is always true (correct, because + a1, a2 are the page dimensions. + + The direct implementation of the above result is done in: + uint8_t u8g_is_intersection_boolean(u8g_uint_t a0, u8g_uint_t a1, u8g_uint_t v0, u8g_uint_t v1) + However, this is slower than a decision tree version: + static uint8_t u8g_is_intersection_decision_tree(u8g_uint_t a0, u8g_uint_t a1, u8g_uint_t v0, u8g_uint_t v1) + Also suprising is, that he the macro implementation is slower than the inlined version. + + The decision tree is based on the expansion of the truth table. + +*/ + +#include "u8g.h" + +#ifdef __GNUC__ +#define U8G_ALWAYS_INLINE __attribute__((always_inline)) +#else +#define U8G_ALWAYS_INLINE + #endif + +/* + intersection assumptions: + a1 <= a2 is always true + + minimized version + ---1----0 1 b1 <= a2 && b1 > b2 + -----1--0 1 b2 >= a1 && b1 > b2 + ---1-1--- 1 b1 <= a2 && b2 >= a1 + */ + +#ifdef OLD_CODE_WHICH_IS_TOO_SLOW +static uint8_t u8g_is_intersection_boolean(u8g_uint_t a0, u8g_uint_t a1, u8g_uint_t v0, u8g_uint_t v1) +{ + uint8_t c1, c2, c3, tmp; + c1 = v0 <= a1; + c2 = v1 >= a0; + c3 = v0 > v1; + + tmp = c1; + c1 &= c2; + c2 &= c3; + c3 &= tmp; + c1 |= c2; + c1 |= c3; + return c1 & 1; +} +#endif + +#define U8G_IS_INTERSECTION_MACRO(a0,a1,v0,v1) ((uint8_t)( (v0) <= (a1) ) ? ( ( (v1) >= (a0) ) ? ( 1 ) : ( (v0) > (v1) ) ) : ( ( (v1) >= (a0) ) ? ( (v0) > (v1) ) : ( 0 ) )) + +static uint8_t u8g_is_intersection_decision_tree(u8g_uint_t a0, u8g_uint_t a1, u8g_uint_t v0, u8g_uint_t v1) U8G_ALWAYS_INLINE; +static uint8_t u8g_is_intersection_decision_tree(u8g_uint_t a0, u8g_uint_t a1, u8g_uint_t v0, u8g_uint_t v1) +{ + /* surprisingly the macro leads to larger code */ + /* return U8G_IS_INTERSECTION_MACRO(a0,a1,v0,v1); */ + if ( v0 <= a1 ) + { + if ( v1 >= a0 ) + { + return 1; + } + else + { + if ( v0 > v1 ) + { + return 1; + } + else + { + return 0; + } + } + } + else + { + if ( v1 >= a0 ) + { + if ( v0 > v1 ) + { + return 1; + } + else + { + return 0; + } + } + else + { + return 0; + } + } +} + + +uint8_t u8g_IsBBXIntersection(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) +{ + register u8g_uint_t tmp; + tmp = y; + tmp += h; + tmp--; + if ( u8g_is_intersection_decision_tree(u8g->current_page.y0, u8g->current_page.y1, y, tmp) == 0 ) + return 0; + + tmp = x; + tmp += w; + tmp--; + return u8g_is_intersection_decision_tree(u8g->current_page.x0, u8g->current_page.x1, x, tmp); +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_api.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_api.c new file mode 100644 index 0000000000000000000000000000000000000000..2dd49b12602ddfdb854b7e7fac9df9aa2148aa1c --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_api.c @@ -0,0 +1,173 @@ +/* + + u8g_com_api.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +uint8_t u8g_InitCom(u8g_t *u8g, u8g_dev_t *dev) +{ + return dev->com_fn(u8g, U8G_COM_MSG_INIT, 0, NULL); +} + +void u8g_StopCom(u8g_t *u8g, u8g_dev_t *dev) +{ + dev->com_fn(u8g, U8G_COM_MSG_STOP, 0, NULL); +} + +/* cs contains the chip number, which should be enabled */ +void u8g_SetChipSelect(u8g_t *u8g, u8g_dev_t *dev, uint8_t cs) +{ + dev->com_fn(u8g, U8G_COM_MSG_CHIP_SELECT, cs, NULL); +} + +void u8g_SetResetLow(u8g_t *u8g, u8g_dev_t *dev) +{ + dev->com_fn(u8g, U8G_COM_MSG_RESET, 0, NULL); +} + +void u8g_SetResetHigh(u8g_t *u8g, u8g_dev_t *dev) +{ + dev->com_fn(u8g, U8G_COM_MSG_RESET, 1, NULL); +} + + +void u8g_SetAddress(u8g_t *u8g, u8g_dev_t *dev, uint8_t address) +{ + dev->com_fn(u8g, U8G_COM_MSG_ADDRESS, address, NULL); +} + +uint8_t u8g_WriteByte(u8g_t *u8g, u8g_dev_t *dev, uint8_t val) +{ + return dev->com_fn(u8g, U8G_COM_MSG_WRITE_BYTE, val, NULL); +} + +uint8_t u8g_WriteSequence(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, uint8_t *seq) +{ + return dev->com_fn(u8g, U8G_COM_MSG_WRITE_SEQ, cnt, seq); +} + +uint8_t u8g_WriteSequenceP(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, const uint8_t *seq) +{ + return dev->com_fn(u8g, U8G_COM_MSG_WRITE_SEQ_P, cnt, (void *)seq); +} + +/* + sequence := { direct_value | escape_sequence } + direct_value := 0..254 + escape_sequence := value_255 | sequence_end | delay | adr | cs | not_used + value_255 := 255 255 + sequence_end = 255 254 + delay := 255 0..127 + adr := 255 0x0e0 .. 0x0ef + cs := 255 0x0d0 .. 0x0df + not_used := 255 101..254 + +#define U8G_ESC_DLY(x) 255, ((x) & 0x7f) +#define U8G_ESC_CS(x) 255, (0xd0 | ((x)&0x0f)) +#define U8G_ESC_ADR(x) 255, (0xe0 | ((x)&0x0f)) +#define U8G_ESC_VCC(x) 255, (0xbe | ((x)&0x01)) +#define U8G_ESC_END 255, 254 +#define U8G_ESC_255 255, 255 +#define U8G_ESC_RST(x) 255, (0xc0 | ((x)&0x0f)) + +*/ +uint8_t u8g_WriteEscSeqP(u8g_t *u8g, u8g_dev_t *dev, const uint8_t *esc_seq) +{ + uint8_t is_escape = 0; + uint8_t value; + for(;;) + { + value = u8g_pgm_read(esc_seq); + if ( is_escape == 0 ) + { + if ( value != 255 ) + { + if ( u8g_WriteByte(u8g, dev, value) == 0 ) + return 0; + } + else + { + is_escape = 1; + } + } + else + { + if ( value == 255 ) + { + if ( u8g_WriteByte(u8g, dev, value) == 0 ) + return 0; + } + else if ( value == 254 ) + { + break; + } + else if ( value >= 0x0f0 ) + { + /* not yet used, do nothing */ + } + else if ( value >= 0xe0 ) + { + u8g_SetAddress(u8g, dev, value & 0x0f); + } + else if ( value >= 0xd0 ) + { + u8g_SetChipSelect(u8g, dev, value & 0x0f); + } + else if ( value >= 0xc0 ) + { + u8g_SetResetLow(u8g, dev); + value &= 0x0f; + value <<= 4; + value+=2; + u8g_Delay(value); + u8g_SetResetHigh(u8g, dev); + u8g_Delay(value); + } + else if ( value >= 0xbe ) + { + /* not yet implemented */ + /* u8g_SetVCC(u8g, dev, value & 0x01); */ + } + else if ( value <= 127 ) + { + u8g_Delay(value); + } + is_escape = 0; + } + esc_seq++; + } + return 1; +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_api_16gr.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_api_16gr.c new file mode 100644 index 0000000000000000000000000000000000000000..7ff03d86562af04ccaa2540cfa0b160fbdeff0c7 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_api_16gr.c @@ -0,0 +1,94 @@ +/* + + u8g_com_api_16gr.c + + Extension of the com api for devices with 16 graylevels (4 bit per pixel). + This should fit to the 8h and 16h architectures (pb8v1, pb8v2, pb16v1, pb16v2), + mainly intended for SSD OLEDs + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +/* interpret b as a monochrome bit pattern, write value 15 for high bit and value 0 for a low bit */ +/* topbit (msb) is sent last */ +/* example: b = 0x083 will send 0xff, 0x00, 0x00, 0xf0 */ +uint8_t u8g_WriteByteBWTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t b) +{ + static uint8_t buf[4]; + static uint8_t map[4] = { 0, 0x00f, 0x0f0, 0x0ff }; + buf [3] = map[b & 3]; + b>>=2; + buf [2] = map[b & 3]; + b>>=2; + buf [1] = map[b & 3]; + b>>=2; + buf [0] = map[b & 3]; + return dev->com_fn(u8g, U8G_COM_MSG_WRITE_SEQ, 4, buf); +} + +uint8_t u8g_WriteSequenceBWTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, uint8_t *ptr) +{ + do + { + if ( u8g_WriteByteBWTo16GrDevice(u8g, dev, *ptr++) == 0 ) + return 0; + cnt--; + } while( cnt != 0 ); + return 1; +} + +/* interpret b as a 4L bit pattern, write values 0x000, 0x004, 0x008, 0x00c */ +uint8_t u8g_WriteByte4LTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t b) +{ + //static uint8_t map[16] = { 0x000, 0x004, 0x008, 0x00c, 0x040, 0x044, 0x048, 0x04c, 0x080, 0x084, 0x088, 0x08c, 0x0c0, 0x0c4, 0x0c8, 0x0cc}; + //static uint8_t map[16] = { 0x000, 0x004, 0x00a, 0x00f, 0x040, 0x044, 0x04a, 0x04f, 0x0a0, 0x0a4, 0x0aa, 0x0af, 0x0f0, 0x0f4, 0x0fa, 0x0ff}; + static uint8_t map[16] = { 0x000, 0x040, 0x0a0, 0x0f0, 0x004, 0x044, 0x0a4, 0x0f4, 0x00a, 0x04a, 0x0aa, 0x0fa, 0x00f, 0x04f, 0x0af, 0x0ff}; + uint8_t bb; + bb = b; + bb &= 15; + b>>=4; + dev->com_fn(u8g, U8G_COM_MSG_WRITE_BYTE, map[bb], NULL); + return dev->com_fn(u8g, U8G_COM_MSG_WRITE_BYTE, map[b], NULL); +} + +uint8_t u8g_WriteSequence4LTo16GrDevice(u8g_t *u8g, u8g_dev_t *dev, uint8_t cnt, uint8_t *ptr) +{ + do + { + if ( u8g_WriteByte4LTo16GrDevice(u8g, dev, *ptr++) == 0 ) + return 0; + cnt--; + } while( cnt != 0 ); + return 1; +} diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_common.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_common.c new file mode 100644 index 0000000000000000000000000000000000000000..ef0b2366ee000a4434e2a8bc60655c2810dce985 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_common.c @@ -0,0 +1,75 @@ +/* + + u8g_com_arduino_common.c + + shared procedures for the arduino communication procedures + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if ARDUINO < 100 +#include +#else +#include +#endif + +void u8g_com_arduino_digital_write(u8g_t *u8g, uint8_t pin_index, uint8_t value) +{ + uint8_t pin; + pin = u8g->pin_list[pin_index]; + if ( pin != U8G_PIN_NONE ) + digitalWrite(pin, value); +} + +/* this procedure does not set the RW pin */ +void u8g_com_arduino_assign_pin_output_high(u8g_t *u8g) +{ + uint8_t i; + /* skip the RW pin, which is the last pin in the list */ + for( i = 0; i < U8G_PIN_LIST_LEN-1; i++ ) + { + if ( u8g->pin_list[i] != U8G_PIN_NONE ) + { + pinMode(u8g->pin_list[i], OUTPUT); + digitalWrite(u8g->pin_list[i], HIGH); + } + } +} + + +#endif + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_fast_parallel.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_fast_parallel.c new file mode 100644 index 0000000000000000000000000000000000000000..91a32e6f0c5719beb9a31b4fb72f4f12fdf2fd08 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_fast_parallel.c @@ -0,0 +1,245 @@ +/* + + u8g_arduino_fast_parallel.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + PIN_D0 8 + PIN_D1 9 + PIN_D2 10 + PIN_D3 11 + PIN_D4 4 + PIN_D5 5 + PIN_D6 6 + PIN_D7 7 + + PIN_CS1 14 + PIN_CS2 15 + PIN_RW 16 + PIN_DI 17 + PIN_EN 18 + + u8g_Init8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + u8g_Init8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16, U8G_PIN_NONE) + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if ARDUINO < 100 +//#include +#include +#include +#else +#include +#endif + + +#define PIN_D0 8 +#define PIN_D1 9 +#define PIN_D2 10 +#define PIN_D3 11 +#define PIN_D4 4 +#define PIN_D5 5 +#define PIN_D6 6 +#define PIN_D7 7 + +#define PIN_CS1 14 +#define PIN_CS2 15 +#define PIN_RW 16 +#define PIN_DI 17 +#define PIN_EN 18 + +//#define PIN_RESET + + +#if defined(__PIC32MX) +/* CHIPKIT PIC32 */ +static volatile uint32_t *u8g_data_port[8]; +static uint32_t u8g_data_mask[8]; +#else +static volatile uint8_t *u8g_data_port[8]; +static uint8_t u8g_data_mask[8]; +#endif + + + +static void u8g_com_arduino_fast_parallel_init(u8g_t *u8g) +{ + u8g_data_port[0] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D0])); + u8g_data_mask[0] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D0]); + u8g_data_port[1] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D1])); + u8g_data_mask[1] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D1]); + u8g_data_port[2] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D2])); + u8g_data_mask[2] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D2]); + u8g_data_port[3] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D3])); + u8g_data_mask[3] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D3]); + + u8g_data_port[4] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D4])); + u8g_data_mask[4] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D4]); + u8g_data_port[5] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D5])); + u8g_data_mask[5] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D5]); + u8g_data_port[6] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D6])); + u8g_data_mask[6] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D6]); + u8g_data_port[7] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D7])); + u8g_data_mask[7] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D7]); +} + +void u8g_com_arduino_fast_write_data_pin(uint8_t pin, uint8_t val) +{ + if ( val != 0 ) + *u8g_data_port[pin] |= u8g_data_mask[pin]; + else + *u8g_data_port[pin] &= ~u8g_data_mask[pin]; +} + + +void u8g_com_arduino_fast_parallel_write(u8g_t *u8g, uint8_t val) +{ + u8g_com_arduino_fast_write_data_pin( 0, val&1 ); + val >>= 1; + u8g_com_arduino_fast_write_data_pin( 1, val&1 ); + val >>= 1; + u8g_com_arduino_fast_write_data_pin( 2, val&1 ); + val >>= 1; + u8g_com_arduino_fast_write_data_pin( 3, val&1 ); + val >>= 1; + + u8g_com_arduino_fast_write_data_pin( 4, val&1 ); + val >>= 1; + u8g_com_arduino_fast_write_data_pin( 5, val&1 ); + val >>= 1; + u8g_com_arduino_fast_write_data_pin( 6, val&1 ); + val >>= 1; + u8g_com_arduino_fast_write_data_pin( 7, val&1 ); + val >>= 1; + + /* EN cycle time must be 1 micro second */ + u8g_com_arduino_digital_write(u8g, U8G_PI_EN, HIGH); + u8g_MicroDelay(); /* delay by 1000ns, reference: ST7920: 140ns, SBN1661: 100ns */ + u8g_com_arduino_digital_write(u8g, U8G_PI_EN, LOW); + u8g_10MicroDelay(); /* ST7920 commands: 72us */ + u8g_10MicroDelay(); /* ST7920 commands: 72us */ +} + + +uint8_t u8g_com_arduino_fast_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g_com_arduino_fast_parallel_init(u8g); + /* setup the RW pin as output and force it to low */ + if ( u8g->pin_list[U8G_PI_RW] != U8G_PIN_NONE ) + { + pinMode(u8g->pin_list[U8G_PI_RW], OUTPUT); + u8g_com_arduino_digital_write(u8g, U8G_PI_RW, LOW); + } + /* set all pins (except RW pin) */ + u8g_com_arduino_assign_pin_output_high(u8g); + break; + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, HIGH); + } + else if ( arg_val == 1 ) + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, HIGH); + } + else if ( arg_val == 2 ) + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, LOW); + } + else + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, LOW); + } + break; + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_arduino_fast_parallel_write(u8g, arg_val); + break; + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_fast_parallel_write(u8g, *ptr++); + arg_val--; + } + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_fast_parallel_write(u8g, u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_com_arduino_digital_write(u8g, U8G_PI_DI, arg_val); + break; + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + } + return 1; +} + +#else + + +uint8_t u8g_com_arduino_fast_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_hw_spi.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_hw_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..7d7f91000caf2a8e1ba91d4b1d6fab8f08d8a3fb --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_hw_spi.c @@ -0,0 +1,191 @@ +/* + + u8g_com_arduino_hw_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if defined(__AVR__) + +#include +#include + +#if ARDUINO < 100 +#include + +/* fixed pins */ +#if defined(__AVR_ATmega644P__) || defined(__AVR_ATmega1284P__) // Sanguino.cc board +#define PIN_SCK 7 +#define PIN_MISO 6 +#define PIN_MOSI 5 +#define PIN_CS 4 +#else // Arduino Board +#define PIN_SCK 13 +#define PIN_MISO 12 +#define PIN_MOSI 11 +#define PIN_CS 10 +#endif // (__AVR_ATmega644P__) || defined(__AVR_ATmega1284P__) + +#else + +#include + +/* use Arduino pin definitions */ +#define PIN_SCK SCK +#define PIN_MISO MISO +#define PIN_MOSI MOSI +#define PIN_CS SS + +#endif + + + +//static uint8_t u8g_spi_out(uint8_t data) U8G_NOINLINE; +static uint8_t u8g_spi_out(uint8_t data) +{ + /* unsigned char x = 100; */ + /* send data */ + SPDR = data; + /* wait for transmission */ + while (!(SPSR & (1<pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + case U8G_COM_MSG_WRITE_BYTE: + u8g_spi_out(arg_val); + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_spi_out(*ptr++); + arg_val--; + } + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_spi_out(u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + } + return 1; +} + +/* #elif defined(__18CXX) || defined(__PIC32MX) */ + +#else /* __AVR__ */ + +#endif /* __AVR__ */ + +#else /* ARDUINO */ + +uint8_t u8g_com_arduino_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_no_en_parallel.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_no_en_parallel.c new file mode 100644 index 0000000000000000000000000000000000000000..49038c36c8228a1562b02f5da761718a5a58994b --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_no_en_parallel.c @@ -0,0 +1,221 @@ +/* + + u8g_arduino_no_en_parallel.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + PIN_D0 8 + PIN_D1 9 + PIN_D2 10 + PIN_D3 11 + PIN_D4 4 + PIN_D5 5 + PIN_D6 6 + PIN_D7 7 + + PIN_CS1 14 + PIN_CS2 15 + PIN_RW 16 + PIN_DI 17 + PIN_EN 18 + + u8g_Init8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + u8g_Init8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16, U8G_PIN_NONE) + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if ARDUINO < 100 +//#include +#include +#include +#else +#include +#endif + +//#define PIN_RESET + +#if defined(__PIC32MX) +/* CHIPKIT PIC32 */ +static volatile uint32_t *u8g_data_port[8]; +static uint32_t u8g_data_mask[8]; +#else +static volatile uint8_t *u8g_data_port[8]; +static uint8_t u8g_data_mask[8]; +#endif + + + +static void u8g_com_arduino_no_en_parallel_init(u8g_t *u8g) +{ + u8g_data_port[0] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D0])); + u8g_data_mask[0] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D0]); + u8g_data_port[1] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D1])); + u8g_data_mask[1] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D1]); + u8g_data_port[2] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D2])); + u8g_data_mask[2] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D2]); + u8g_data_port[3] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D3])); + u8g_data_mask[3] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D3]); + + u8g_data_port[4] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D4])); + u8g_data_mask[4] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D4]); + u8g_data_port[5] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D5])); + u8g_data_mask[5] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D5]); + u8g_data_port[6] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D6])); + u8g_data_mask[6] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D6]); + u8g_data_port[7] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D7])); + u8g_data_mask[7] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D7]); +} + +void u8g_com_arduino_no_en_write_data_pin(uint8_t pin, uint8_t val) +{ + if ( val != 0 ) + *u8g_data_port[pin] |= u8g_data_mask[pin]; + else + *u8g_data_port[pin] &= ~u8g_data_mask[pin]; +} + + +void u8g_com_arduino_no_en_parallel_write(u8g_t *u8g, uint8_t val) +{ + u8g_com_arduino_no_en_write_data_pin( 0, val&1 ); + val >>= 1; + u8g_com_arduino_no_en_write_data_pin( 1, val&1 ); + val >>= 1; + u8g_com_arduino_no_en_write_data_pin( 2, val&1 ); + val >>= 1; + u8g_com_arduino_no_en_write_data_pin( 3, val&1 ); + val >>= 1; + + u8g_com_arduino_no_en_write_data_pin( 4, val&1 ); + val >>= 1; + u8g_com_arduino_no_en_write_data_pin( 5, val&1 ); + val >>= 1; + u8g_com_arduino_no_en_write_data_pin( 6, val&1 ); + val >>= 1; + u8g_com_arduino_no_en_write_data_pin( 7, val&1 ); + val >>= 1; + + /* EN cycle time must be 1 micro second, digitalWrite is slow enough to do this */ + if ( u8g->pin_list[U8G_PI_CS_STATE] == 1 ) + { + u8g_MicroDelay(); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, HIGH); + u8g_MicroDelay(); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, LOW); + u8g_MicroDelay(); + } + else if ( u8g->pin_list[U8G_PI_CS_STATE] == 2 ) + { + u8g_MicroDelay(); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, HIGH); + u8g_MicroDelay(); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, LOW); + u8g_MicroDelay(); + } +} + + +uint8_t u8g_com_arduino_no_en_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g_com_arduino_no_en_parallel_init(u8g); + /* setup the RW pin as output and force it to low */ + if ( u8g->pin_list[U8G_PI_RW] != U8G_PIN_NONE ) + { + pinMode(u8g->pin_list[U8G_PI_RW], OUTPUT); + u8g_com_arduino_digital_write(u8g, U8G_PI_RW, LOW); + } + /* set all pins (except RW pin) */ + u8g_com_arduino_assign_pin_output_high(u8g); + break; + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_CHIP_SELECT: + /* + 0: nothing selected + 1: CS1 will be used as enable line + 2: CS2 will be used as enable line + this will be used in the u8g_com_arduino_no_en_parallel_write() procedure + */ + u8g->pin_list[U8G_PI_CS_STATE] = arg_val; + break; + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_arduino_no_en_parallel_write(u8g, arg_val); + break; + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_no_en_parallel_write(u8g, *ptr++); + arg_val--; + } + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_no_en_parallel_write(u8g, u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_com_arduino_digital_write(u8g, U8G_PI_DI, arg_val); + break; + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + } + return 1; +} + +#else + + +uint8_t u8g_com_arduino_no_en_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_parallel.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_parallel.c new file mode 100644 index 0000000000000000000000000000000000000000..a73bc0dbee776619f2523b89a3fc581e98bfe85f --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_parallel.c @@ -0,0 +1,187 @@ +/* + + u8g_arduino_parallel.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + PIN_D0 8 + PIN_D1 9 + PIN_D2 10 + PIN_D3 11 + PIN_D4 4 + PIN_D5 5 + PIN_D6 6 + PIN_D7 7 + + PIN_CS1 14 + PIN_CS2 15 + PIN_RW 16 + PIN_DI 17 + PIN_EN 18 + + u8g_Init8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + u8g_Init8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16, U8G_PIN_NONE) + +*/ + +#include "u8g.h" + + +#if defined(ARDUINO) + +#if ARDUINO < 100 +#include +#else +#include +#endif + + + + + + +void u8g_com_arduino_parallel_write(u8g_t *u8g, uint8_t val) +{ + u8g_com_arduino_digital_write(u8g, U8G_PI_D0, val&1); + val >>= 1; + u8g_com_arduino_digital_write(u8g, U8G_PI_D1, val&1); + val >>= 1; + u8g_com_arduino_digital_write(u8g, U8G_PI_D2, val&1); + val >>= 1; + u8g_com_arduino_digital_write(u8g, U8G_PI_D3, val&1); + val >>= 1; + u8g_com_arduino_digital_write(u8g, U8G_PI_D4, val&1); + val >>= 1; + u8g_com_arduino_digital_write(u8g, U8G_PI_D5, val&1); + val >>= 1; + u8g_com_arduino_digital_write(u8g, U8G_PI_D6, val&1); + val >>= 1; + u8g_com_arduino_digital_write(u8g, U8G_PI_D7, val&1); + + /* EN cycle time must be 1 micro second, digitalWrite is slow enough to do this */ + //u8g_Delay(1); + u8g_com_arduino_digital_write(u8g, U8G_PI_EN, HIGH); + //u8g_Delay(1); + u8g_MicroDelay(); /* delay by 1000ns, reference: ST7920: 140ns, SBN1661: 100ns */ + u8g_com_arduino_digital_write(u8g, U8G_PI_EN, LOW); + u8g_10MicroDelay(); /* ST7920 commands: 72us */ + //u8g_Delay(2); +} + + +uint8_t u8g_com_arduino_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + /* setup the RW pin as output and force it to low */ + if ( u8g->pin_list[U8G_PI_RW] != U8G_PIN_NONE ) + { + pinMode(u8g->pin_list[U8G_PI_RW], OUTPUT); + u8g_com_arduino_digital_write(u8g, U8G_PI_RW, LOW); + } + /* set all pins (except RW pin) */ + u8g_com_arduino_assign_pin_output_high(u8g); + break; + case U8G_COM_MSG_STOP: + break; + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, HIGH); + } + else if ( arg_val == 1 ) + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, HIGH); + } + else if ( arg_val == 2 ) + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, LOW); + } + else + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, LOW); + } + break; + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_arduino_parallel_write(u8g, arg_val); + break; + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_parallel_write(u8g, *ptr++); + arg_val--; + } + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_parallel_write(u8g, u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_com_arduino_digital_write(u8g, U8G_PI_DI, arg_val); + break; + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + } + return 1; +} + +#else + + +uint8_t u8g_com_arduino_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_port_d_wr.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_port_d_wr.c new file mode 100644 index 0000000000000000000000000000000000000000..cfaf71f9fac1bbc36bd52390c2301a38cc006cd3 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_port_d_wr.c @@ -0,0 +1,168 @@ +/* + + u8g_arduino_port_d_wr.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + Assumes PORTD for 8 bit data transfer. + EN is assumed to be a low active write signal (WR) + + ILI9325D_320x240 from iteadstudio.com + RS=19, WR=18, CS=17, RST=16 + + + u8g_Init8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + u8g_Init8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16, U8G_PIN_NONE) + +*/ + +#include "u8g.h" + + +#if defined(ARDUINO) && defined(PORTD) + +#if ARDUINO < 100 +#include +#else +#include +#endif + + + + + + +static void u8g_com_arduino_port_d_8bit_wr(u8g_t *u8g, uint8_t val) +{ + PORTD = val; + + /* WR cycle time must be 1 micro second, digitalWrite is slow enough to do this */ + u8g_com_arduino_digital_write(u8g, U8G_PI_EN, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_EN, HIGH); +} + + +uint8_t u8g_com_arduino_port_d_wr_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + + switch(msg) + { + case U8G_COM_MSG_INIT: + +#ifdef UCSR0B + UCSR0B = 0; // disable USART 0 +#endif + DDRD = 0x0ff; + PORTD = 0x0ff; + + /* setup the RW pin as output and force it to low */ + if ( u8g->pin_list[U8G_PI_RW] != U8G_PIN_NONE ) + { + pinMode(u8g->pin_list[U8G_PI_RW], OUTPUT); + u8g_com_arduino_digital_write(u8g, U8G_PI_RW, HIGH); + } + /* set all pins (except RW pin) */ + u8g_com_arduino_assign_pin_output_high(u8g); + u8g_com_arduino_digital_write(u8g, U8G_PI_EN, HIGH); + break; + case U8G_COM_MSG_STOP: + break; + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, HIGH); + } + else if ( arg_val == 1 ) + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, HIGH); + } + else if ( arg_val == 2 ) + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, LOW); + } + else + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS1, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS2, LOW); + } + break; + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_arduino_port_d_8bit_wr(u8g, arg_val); + break; + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_port_d_8bit_wr(u8g, *ptr++); + arg_val--; + } + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_port_d_8bit_wr(u8g, u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_com_arduino_digital_write(u8g, U8G_PI_DI, arg_val); + break; + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + } + return 1; +} + +#else + + +uint8_t u8g_com_arduino_port_d_wr_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO && PORTD */ + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_ssd_i2c.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_ssd_i2c.c new file mode 100644 index 0000000000000000000000000000000000000000..afcb4088a06a7a99fa96a5a3acee4d864ba31d55 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_ssd_i2c.c @@ -0,0 +1,201 @@ +/* + + u8g_com_arduino_ssd_i2c.c + + com interface for arduino (AND atmega) and the SSDxxxx chip (SOLOMON) variant + I2C protocol + + ToDo: Rename this to u8g_com_avr_ssd_i2c.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Special pin usage: + U8G_PI_I2C_OPTION additional options + U8G_PI_A0_STATE used to store the last value of the command/data register selection + U8G_PI_SET_A0 1: Signal request to update I2C device with new A0_STATE, 0: Do nothing, A0_STATE matches I2C device + U8G_PI_SCL clock line (NOT USED) + U8G_PI_SDA data line (NOT USED) + + U8G_PI_RESET reset line (currently disabled, see below) + + Protocol: + SLA, Cmd/Data Selection, Arguments + The command/data register is selected by a special instruction byte, which is sent after SLA + + The continue bit is always 0 so that a (re)start is equired for the change from cmd to/data mode +*/ + +#include "u8g.h" + +#define I2C_SLA (0x3c*2) +//#define I2C_CMD_MODE 0x080 +#define I2C_CMD_MODE 0x000 +#define I2C_DATA_MODE 0x040 + + +uint8_t u8g_com_arduino_ssd_start_sequence(u8g_t *u8g) +{ + /* are we requested to set the a0 state? */ + if ( u8g->pin_list[U8G_PI_SET_A0] == 0 ) + return 1; + + /* setup bus, might be a repeated start */ + if ( u8g_i2c_start(I2C_SLA) == 0 ) + return 0; + if ( u8g->pin_list[U8G_PI_A0_STATE] == 0 ) + { + if ( u8g_i2c_send_byte(I2C_CMD_MODE) == 0 ) + return 0; + } + else + { + if ( u8g_i2c_send_byte(I2C_DATA_MODE) == 0 ) + return 0; + } + + + u8g->pin_list[U8G_PI_SET_A0] = 0; + return 1; +} + +uint8_t u8g_com_arduino_ssd_i2c_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + //u8g_com_arduino_digital_write(u8g, U8G_PI_SCL, HIGH); + //u8g_com_arduino_digital_write(u8g, U8G_PI_SDA, HIGH); + //u8g->pin_list[U8G_PI_A0_STATE] = 0; /* inital RS state: unknown mode */ + + u8g_i2c_init(u8g->pin_list[U8G_PI_I2C_OPTION]); + + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_RESET: + /* Currently disabled, but it could be enable. Previous restrictions have been removed */ + /* u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); */ + break; + + case U8G_COM_MSG_CHIP_SELECT: + u8g->pin_list[U8G_PI_A0_STATE] = 0; + u8g->pin_list[U8G_PI_SET_A0] = 1; /* force a0 to set again, also forces start condition */ + if ( arg_val == 0 ) + { + /* disable chip, send stop condition */ + u8g_i2c_stop(); + } + else + { + /* enable, do nothing: any byte writing will trigger the i2c start */ + } + break; + + case U8G_COM_MSG_WRITE_BYTE: + //u8g->pin_list[U8G_PI_SET_A0] = 1; + if ( u8g_com_arduino_ssd_start_sequence(u8g) == 0 ) + return u8g_i2c_stop(), 0; + if ( u8g_i2c_send_byte(arg_val) == 0 ) + return u8g_i2c_stop(), 0; + // u8g_i2c_stop(); + break; + + case U8G_COM_MSG_WRITE_SEQ: + //u8g->pin_list[U8G_PI_SET_A0] = 1; + if ( u8g_com_arduino_ssd_start_sequence(u8g) == 0 ) + return u8g_i2c_stop(), 0; + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + if ( u8g_i2c_send_byte(*ptr++) == 0 ) + return u8g_i2c_stop(), 0; + arg_val--; + } + } + // u8g_i2c_stop(); + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + //u8g->pin_list[U8G_PI_SET_A0] = 1; + if ( u8g_com_arduino_ssd_start_sequence(u8g) == 0 ) + return u8g_i2c_stop(), 0; + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + if ( u8g_i2c_send_byte(u8g_pgm_read(ptr)) == 0 ) + return 0; + ptr++; + arg_val--; + } + } + // u8g_i2c_stop(); + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g->pin_list[U8G_PI_A0_STATE] = arg_val; + u8g->pin_list[U8G_PI_SET_A0] = 1; /* force a0 to set again */ + +#ifdef OLD_CODE + if ( i2c_state != 0 ) + { + u8g_i2c_stop(); + i2c_state = 0; + } + + if ( u8g_com_arduino_ssd_start_sequence(arg_val) == 0 ) + return 0; + + /* setup bus, might be a repeated start */ + /* + if ( u8g_i2c_start(I2C_SLA) == 0 ) + return 0; + if ( arg_val == 0 ) + { + i2c_state = 1; + + if ( u8g_i2c_send_byte(I2C_CMD_MODE) == 0 ) + return 0; + } + else + { + i2c_state = 2; + if ( u8g_i2c_send_byte(I2C_DATA_MODE) == 0 ) + return 0; + } + */ +#endif + break; + } + return 1; +} diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_st7920_hw_spi.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_st7920_hw_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..d5a041386abca9048fd84529bfce07dd90d21e77 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_st7920_hw_spi.c @@ -0,0 +1,220 @@ +/* + + u8g_com_arduino_st7920_hw_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + A special HW SPI interface for ST7920 controller + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if ARDUINO < 100 +#include +#include "wiring_private.h" +#include "pins_arduino.h" + +#else +#include +#include "wiring_private.h" +#endif + +#if defined(__AVR__) +#define U8G_ARDUINO_ATMEGA_HW_SPI + +/* remove the definition for attiny */ +#if __AVR_ARCH__ == 2 +#undef U8G_ATMEGA_HW_SPI +#endif +#if __AVR_ARCH__ == 25 +#undef U8G_ATMEGA_HW_SPI +#endif + +#endif + + +#if defined(U8G_ARDUINO_ATMEGA_HW_SPI) + +#include +#include + +static uint8_t u8g_arduino_st7920_hw_spi_shift_out(u8g_t *u8g, uint8_t val) U8G_NOINLINE; +static uint8_t u8g_arduino_st7920_hw_spi_shift_out(u8g_t *u8g, uint8_t val) +{ + /* send data */ + SPDR = val; + /* wait for transmission */ + while (!(SPSR & (1<pin_list[U8G_PI_A0_STATE] = 0; /* inital RS state: command mode */ + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable, note: the st7920 has an active high chip select */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, LOW); + } + else + { + /* enable */ + //u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, HIGH); + } + break; + + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_arduino_st7920_write_byte_hw_spi(u8g, u8g->pin_list[U8G_PI_A0_STATE], arg_val); + // u8g->pin_list[U8G_PI_A0_STATE] = 2; + //u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], arg_val); + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_st7920_write_byte_hw_spi(u8g, u8g->pin_list[U8G_PI_A0_STATE], *ptr++); + // u8g->pin_list[U8G_PI_A0_STATE] = 2; + arg_val--; + } + } + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_st7920_write_byte_hw_spi(u8g, u8g->pin_list[U8G_PI_A0_STATE], u8g_pgm_read(ptr) ); + // u8g->pin_list[U8G_PI_A0_STATE] = 2; + ptr++; + arg_val--; + } + } + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g->pin_list[U8G_PI_A0_STATE] = arg_val; + break; + } + return 1; +} + +#else + +uint8_t u8g_com_arduino_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} +#endif + +#else /* ARDUINO */ + +uint8_t u8g_com_arduino_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_st7920_spi.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_st7920_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..a7339886819c77d49d09e930e938dc3fec0b47dc --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_st7920_spi.c @@ -0,0 +1,295 @@ +/* + + u8g_com_arduino_st7920_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + A special SPI interface for ST7920 controller + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if ARDUINO < 100 +#include +#include "wiring_private.h" +#include "pins_arduino.h" + +#else +#include +#include "wiring_private.h" +#endif + +#if defined(__AVR__) + +uint8_t u8g_bitData, u8g_bitNotData; +uint8_t u8g_bitClock, u8g_bitNotClock; +volatile uint8_t *u8g_outData; +volatile uint8_t *u8g_outClock; + +static void u8g_com_arduino_init_shift_out(uint8_t dataPin, uint8_t clockPin) +{ + u8g_outData = portOutputRegister(digitalPinToPort(dataPin)); + u8g_outClock = portOutputRegister(digitalPinToPort(clockPin)); + u8g_bitData = digitalPinToBitMask(dataPin); + u8g_bitClock = digitalPinToBitMask(clockPin); + + u8g_bitNotClock = u8g_bitClock; + u8g_bitNotClock ^= 0x0ff; + + u8g_bitNotData = u8g_bitData; + u8g_bitNotData ^= 0x0ff; +} + +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) U8G_NOINLINE; +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) +{ + uint8_t cnt = 8; + uint8_t bitData = u8g_bitData; + uint8_t bitNotData = u8g_bitNotData; + uint8_t bitClock = u8g_bitClock; + uint8_t bitNotClock = u8g_bitNotClock; + volatile uint8_t *outData = u8g_outData; + volatile uint8_t *outClock = u8g_outClock; + do + { + if ( val & 128 ) + *outData |= bitData; + else + *outData &= bitNotData; + + /* + *outClock |= bitClock; + val <<= 1; + cnt--; + *outClock &= bitNotClock; + */ + + val <<= 1; + *outClock &= bitNotClock; + cnt--; + // removed micro delays, because AVRs are too slow and the delay is not required + //u8g_MicroDelay(); + *outClock |= bitClock; + //u8g_MicroDelay(); + } while( cnt != 0 ); +} + +#elif defined(__18CXX) || defined(__PIC32MX) + +uint16_t dog_bitData, dog_bitNotData; +uint16_t dog_bitClock, dog_bitNotClock; +volatile uint32_t *dog_outData; +volatile uint32_t *dog_outClock; +volatile uint32_t dog_pic32_spi_tmp; + +static void u8g_com_arduino_init_shift_out(uint8_t dataPin, uint8_t clockPin) +{ + dog_outData = portOutputRegister(digitalPinToPort(dataPin)); + dog_outClock = portOutputRegister(digitalPinToPort(clockPin)); + dog_bitData = digitalPinToBitMask(dataPin); + dog_bitClock = digitalPinToBitMask(clockPin); + + dog_bitNotClock = dog_bitClock; + dog_bitNotClock ^= 0x0ffff; + + dog_bitNotData = dog_bitData; + dog_bitNotData ^= 0x0ffff; +} + +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) +{ + uint8_t cnt = 8; + do + { + if ( val & 128 ) + *dog_outData |= dog_bitData; + else + *dog_outData &= dog_bitNotData; + val <<= 1; + //u8g_MicroDelay(); + //*dog_outClock |= dog_bitClock; + *dog_outClock &= dog_bitNotClock; + cnt--; + u8g_MicroDelay(); + //*dog_outClock &= dog_bitNotClock; + *dog_outClock |= dog_bitClock; + u8g_MicroDelay(); + + } while( cnt != 0 ); +} + +#else + +/* default interface, Arduino DUE (__arm__) */ + +uint8_t u8g_data_pin; +uint8_t u8g_clock_pin; + +static void u8g_com_arduino_init_shift_out(uint8_t dataPin, uint8_t clockPin) +{ + u8g_data_pin = dataPin; + u8g_clock_pin = clockPin; +} + +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) +{ + uint8_t cnt = 8; + do + { + if ( val & 128 ) + digitalWrite(u8g_data_pin, HIGH); + else + digitalWrite(u8g_data_pin, LOW); + val <<= 1; + //u8g_MicroDelay(); + digitalWrite(u8g_clock_pin, LOW); + cnt--; + u8g_MicroDelay(); + digitalWrite(u8g_clock_pin, HIGH); + u8g_MicroDelay(); + } while( cnt != 0 ); +} + +#endif + + + + +static void u8g_com_arduino_st7920_write_byte(uint8_t rs, uint8_t val) +{ + uint8_t i; + + if ( rs == 0 ) + { + /* command */ + u8g_com_arduino_do_shift_out_msb_first(0x0f8); + } + else if ( rs == 1 ) + { + /* data */ + u8g_com_arduino_do_shift_out_msb_first(0x0fa); + } + + u8g_com_arduino_do_shift_out_msb_first(val & 0x0f0); + u8g_com_arduino_do_shift_out_msb_first(val << 4); + + for( i = 0; i < 4; i++ ) + u8g_10MicroDelay(); + +} + + + +uint8_t u8g_com_arduino_st7920_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g_com_arduino_assign_pin_output_high(u8g); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, LOW); + // u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_MOSI, LOW); + u8g_com_arduino_init_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK]); + u8g->pin_list[U8G_PI_A0_STATE] = 0; /* inital RS state: command mode */ + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable, note: the st7920 has an active high chip select */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, LOW); + } + else + { + /* enable */ + //u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, HIGH); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, HIGH); + } + break; + + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_arduino_st7920_write_byte( u8g->pin_list[U8G_PI_A0_STATE], arg_val); + //u8g->pin_list[U8G_PI_A0_STATE] = 2; + //u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], arg_val); + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_st7920_write_byte(u8g->pin_list[U8G_PI_A0_STATE], *ptr++); + //u8g->pin_list[U8G_PI_A0_STATE] = 2; + arg_val--; + } + } + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_st7920_write_byte(u8g->pin_list[U8G_PI_A0_STATE], u8g_pgm_read(ptr) ); + //u8g->pin_list[U8G_PI_A0_STATE] = 2; + ptr++; + arg_val--; + } + } + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g->pin_list[U8G_PI_A0_STATE] = arg_val; + break; + } + return 1; +} + +#else /* ARDUINO */ + +uint8_t u8g_com_arduino_st7920_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_std_sw_spi.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_std_sw_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..1251ef2e569b081271bc7f3d934532a1e1015b8e --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_std_sw_spi.c @@ -0,0 +1,144 @@ +/* + + u8g_arduino_std_sw_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + + +#if defined(ARDUINO) + +#if ARDUINO < 100 +#include +#else +#include +#endif + +void u8g_arduino_sw_spi_shift_out(uint8_t dataPin, uint8_t clockPin, uint8_t val) +{ + uint8_t i = 8; + do + { + if ( val & 128 ) + digitalWrite(dataPin, HIGH); + else + digitalWrite(dataPin, LOW); + val <<= 1; + u8g_MicroDelay(); /* 23 Sep 2012 */ + //delay(1); + digitalWrite(clockPin, HIGH); + u8g_MicroDelay(); /* 23 Sep 2012 */ + //delay(1); + digitalWrite(clockPin, LOW); + u8g_MicroDelay(); /* 23 Sep 2012 */ + //delay(1); + i--; + } while( i != 0 ); +} + +uint8_t u8g_com_arduino_std_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g_com_arduino_assign_pin_output_high(u8g); + u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_MOSI, LOW); + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, HIGH); + } + else + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, LOW); + } + break; + + case U8G_COM_MSG_WRITE_BYTE: + u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], arg_val); + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], *ptr++); + arg_val--; + } + } + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, arg_val); + break; + } + return 1; +} + +#else /* ARDUINO */ + +uint8_t u8g_com_arduino_std_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_sw_spi.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_sw_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..846baeb908ef4949f3e578d42798b615fe796227 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_sw_spi.c @@ -0,0 +1,239 @@ +/* + + u8g_arduino_sw_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if ARDUINO < 100 +#include +#include "wiring_private.h" +#include "pins_arduino.h" + +#else +#include +#include "wiring_private.h" +#endif + +#if defined(__AVR__) + +uint8_t u8g_bitData, u8g_bitNotData; +uint8_t u8g_bitClock, u8g_bitNotClock; +volatile uint8_t *u8g_outData; +volatile uint8_t *u8g_outClock; + +static void u8g_com_arduino_init_shift_out(uint8_t dataPin, uint8_t clockPin) +{ + u8g_outData = portOutputRegister(digitalPinToPort(dataPin)); + u8g_outClock = portOutputRegister(digitalPinToPort(clockPin)); + u8g_bitData = digitalPinToBitMask(dataPin); + u8g_bitClock = digitalPinToBitMask(clockPin); + + u8g_bitNotClock = u8g_bitClock; + u8g_bitNotClock ^= 0x0ff; + + u8g_bitNotData = u8g_bitData; + u8g_bitNotData ^= 0x0ff; +} + +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) U8G_NOINLINE; +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) +{ + uint8_t cnt = 8; + uint8_t bitData = u8g_bitData; + uint8_t bitNotData = u8g_bitNotData; + uint8_t bitClock = u8g_bitClock; + uint8_t bitNotClock = u8g_bitNotClock; + volatile uint8_t *outData = u8g_outData; + volatile uint8_t *outClock = u8g_outClock; + do + { + if ( val & 128 ) + *outData |= bitData; + else + *outData &= bitNotData; + + *outClock |= bitClock; + val <<= 1; + cnt--; + *outClock &= bitNotClock; + } while( cnt != 0 ); +} + +#elif defined(__18CXX) || defined(__PIC32MX) + +uint16_t dog_bitData, dog_bitNotData; +uint16_t dog_bitClock, dog_bitNotClock; +volatile uint32_t *dog_outData; +volatile uint32_t *dog_outClock; +volatile uint32_t dog_pic32_spi_tmp; + +static void u8g_com_arduino_init_shift_out(uint8_t dataPin, uint8_t clockPin) +{ + dog_outData = portOutputRegister(digitalPinToPort(dataPin)); + dog_outClock = portOutputRegister(digitalPinToPort(clockPin)); + dog_bitData = digitalPinToBitMask(dataPin); + dog_bitClock = digitalPinToBitMask(clockPin); + + dog_bitNotClock = dog_bitClock; + dog_bitNotClock ^= 0x0ffff; + + dog_bitNotData = dog_bitData; + dog_bitNotData ^= 0x0ffff; +} + +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) +{ + uint8_t cnt = 8; + do + { + if ( val & 128 ) + *dog_outData |= dog_bitData; + else + *dog_outData &= dog_bitNotData; + val <<= 1; + /* + There must be some delay here. However + fetching the adress dog_outClock is enough delay, so + do not place dog_outClock in a local variable. This will + break the procedure + */ + *dog_outClock |= dog_bitClock; + cnt--; + *dog_outClock &= dog_bitNotClock; + /* + little additional delay after clk pulse, done by 3x32bit reads + from I/O. Optimized for PIC32 with 80 MHz. + */ + dog_pic32_spi_tmp = *dog_outClock; + dog_pic32_spi_tmp = *dog_outClock; + dog_pic32_spi_tmp = *dog_outClock; + } while( cnt != 0 ); +} + +#else +/* empty interface */ + +static void u8g_com_arduino_init_shift_out(uint8_t dataPin, uint8_t clockPin) +{ +} + +static void u8g_com_arduino_do_shift_out_msb_first(uint8_t val) +{ +} + +#endif + + +uint8_t u8g_com_arduino_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g_com_arduino_assign_pin_output_high(u8g); + u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_MOSI, LOW); + u8g_com_arduino_init_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK]); + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, HIGH); + } + else + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_SCK, LOW); + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, LOW); + } + break; + + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_arduino_do_shift_out_msb_first( arg_val ); + //u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], arg_val); + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_do_shift_out_msb_first(*ptr++); + // u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], *ptr++); + arg_val--; + } + } + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_arduino_do_shift_out_msb_first( u8g_pgm_read(ptr) ); + //u8g_arduino_sw_spi_shift_out(u8g->pin_list[U8G_PI_MOSI], u8g->pin_list[U8G_PI_SCK], u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, arg_val); + break; + } + return 1; +} + +#else /* ARDUINO */ + +uint8_t u8g_com_arduino_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_t6963.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_t6963.c new file mode 100644 index 0000000000000000000000000000000000000000..d6a817867b6984558f72a8cf70976179faac69dd --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_arduino_t6963.c @@ -0,0 +1,385 @@ +/* + + u8g_com_arduino_t6963.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + PIN_D0 8 + PIN_D1 9 + PIN_D2 10 + PIN_D3 11 + PIN_D4 4 + PIN_D5 5 + PIN_D6 6 + PIN_D7 7 + + PIN_CS 14 + PIN_A0 15 + PIN_RESET 16 + PIN_WR 17 + PIN_RD 18 + + u8g_InitRW8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd, reset) + u8g_InitRW8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16) + +*/ + +#include "u8g.h" + +#if defined(ARDUINO) + +#if ARDUINO < 100 +//#include +#include +#include +#else +#include +#endif + + +#if defined(__PIC32MX) +/* CHIPKIT PIC32 */ +static volatile uint32_t *u8g_output_data_port[8]; +static volatile uint32_t *u8g_input_data_port[8]; +static volatile uint32_t *u8g_mode_port[8]; +static uint32_t u8g_data_mask[8]; +#else +static volatile uint8_t *u8g_output_data_port[8]; +static volatile uint8_t *u8g_input_data_port[8]; +static volatile uint8_t *u8g_mode_port[8]; +static uint8_t u8g_data_mask[8]; +#endif + + + +static void u8g_com_arduino_t6963_init(u8g_t *u8g) +{ + u8g_output_data_port[0] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D0])); + u8g_input_data_port[0] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D0])); + u8g_mode_port[0] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D0])); + u8g_data_mask[0] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D0]); + + u8g_output_data_port[1] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D1])); + u8g_input_data_port[1] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D1])); + u8g_mode_port[1] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D1])); + u8g_data_mask[1] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D1]); + + u8g_output_data_port[2] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D2])); + u8g_input_data_port[2] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D2])); + u8g_mode_port[2] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D2])); + u8g_data_mask[2] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D2]); + + u8g_output_data_port[3] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D3])); + u8g_input_data_port[3] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D3])); + u8g_mode_port[3] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D3])); + u8g_data_mask[3] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D3]); + + u8g_output_data_port[4] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D4])); + u8g_input_data_port[4] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D4])); + u8g_mode_port[4] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D4])); + u8g_data_mask[4] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D4]); + + u8g_output_data_port[5] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D5])); + u8g_input_data_port[5] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D5])); + u8g_mode_port[5] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D5])); + u8g_data_mask[5] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D5]); + + u8g_output_data_port[6] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D6])); + u8g_input_data_port[6] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D6])); + u8g_mode_port[6] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D6])); + u8g_data_mask[6] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D6]); + + u8g_output_data_port[7] = portOutputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D7])); + u8g_input_data_port[7] = portInputRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D7])); + u8g_mode_port[7] = portModeRegister(digitalPinToPort(u8g->pin_list[U8G_PI_D7])); + u8g_data_mask[7] = digitalPinToBitMask(u8g->pin_list[U8G_PI_D7]); +} + +static void u8g_com_arduino_t6963_write_data_pin(uint8_t pin, uint8_t val) +{ + if ( val != 0 ) + *u8g_output_data_port[pin] |= u8g_data_mask[pin]; + else + *u8g_output_data_port[pin] &= ~u8g_data_mask[pin]; +} + +static void u8g_com_arduino_t6963_set_port_output(void) +{ + uint8_t i; + for( i = 0; i < 8; i++ ) + { +#if defined(__PIC32MX) +/* CHIPKIT PIC32 */ + *u8g_mode_port[i] |= u8g_data_mask[i]; +#elif defined(__AVR__) + *u8g_mode_port[i] |= u8g_data_mask[i]; +#else + /* TODO: use generic Arduino API */ + *u8g_mode_port[i] |= u8g_data_mask[i]; +#endif + + } +} + +static void u8g_com_arduino_t6963_set_port_input(void) +{ + uint8_t i; + for( i = 0; i < 8; i++ ) + { +#if defined(__PIC32MX) +/* CHIPKIT PIC32 */ + *u8g_mode_port[i] &= ~u8g_data_mask[i]; +#elif defined(__AVR__) +/* avr */ + *u8g_mode_port[i] &= ~u8g_data_mask[i]; + *u8g_output_data_port[i] &= ~u8g_data_mask[i]; // no pullup +#else + /* TODO: use generic Arduino API */ + *u8g_mode_port[i] &= ~u8g_data_mask[i]; + *u8g_output_data_port[i] &= ~u8g_data_mask[i]; // no pullup +#endif + } +} + + +static void u8g_com_arduino_t6963_write(u8g_t *u8g, uint8_t val) +{ + u8g_com_arduino_t6963_write_data_pin( 0, val&1 ); + val >>= 1; + u8g_com_arduino_t6963_write_data_pin( 1, val&1 ); + val >>= 1; + u8g_com_arduino_t6963_write_data_pin( 2, val&1 ); + val >>= 1; + u8g_com_arduino_t6963_write_data_pin( 3, val&1 ); + val >>= 1; + + u8g_com_arduino_t6963_write_data_pin( 4, val&1 ); + val >>= 1; + u8g_com_arduino_t6963_write_data_pin( 5, val&1 ); + val >>= 1; + u8g_com_arduino_t6963_write_data_pin( 6, val&1 ); + val >>= 1; + u8g_com_arduino_t6963_write_data_pin( 7, val&1 ); + val >>= 1; + + u8g_com_arduino_digital_write(u8g, U8G_PI_WR, 0); + u8g_MicroDelay(); /* 80ns, reference: t6963 datasheet */ + u8g_com_arduino_digital_write(u8g, U8G_PI_WR, 1); + u8g_MicroDelay(); /* 10ns, reference: t6963 datasheet */ +} + +static uint8_t u8g_com_arduino_t6963_read(u8g_t *u8g) +{ + uint8_t val = 0; + + u8g_com_arduino_digital_write(u8g, U8G_PI_RD, 0); + u8g_MicroDelay(); /* 150ns, reference: t6963 datasheet */ + + /* only read bits 0, 1 and 3 */ + if ( (*u8g_input_data_port[3] & u8g_data_mask[3]) != 0 ) + val++; + val <<= 1; + val <<= 1; + if ( (*u8g_input_data_port[1] & u8g_data_mask[1]) != 0 ) + val++; + val <<= 1; + if ( (*u8g_input_data_port[0] & u8g_data_mask[0]) != 0 ) + val++; + + u8g_com_arduino_digital_write(u8g, U8G_PI_RD, 1); + u8g_MicroDelay(); /* 10ns, reference: t6963 datasheet */ + + return val; +} + +#define U8G_STATUS_TIMEOUT 50 + +static uint8_t u8g_com_arduino_t6963_until_01_ok(u8g_t *u8g) +{ + long x; + + u8g_com_arduino_t6963_set_port_input(); + x = millis(); + x += U8G_STATUS_TIMEOUT; + + for(;;) + { + if ( (u8g_com_arduino_t6963_read(u8g) & 3) == 3 ) + break; + if ( x < millis() ) + return 0; + } + u8g_com_arduino_t6963_set_port_output(); + return 1; +} + +static uint8_t u8g_com_arduino_t6963_until_3_ok(u8g_t *u8g) +{ + long x; + + u8g_com_arduino_t6963_set_port_input(); + x = millis(); + x += U8G_STATUS_TIMEOUT; + + for(;;) + { + if ( (u8g_com_arduino_t6963_read(u8g) & 8) == 8 ) + break; + if ( x < millis() ) + return 0; + } + u8g_com_arduino_t6963_set_port_output(); + return 1; +} + +static uint8_t u8g_com_arduino_t6963_write_cmd(u8g_t *u8g, uint8_t val) +{ + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, 1); + if ( u8g_com_arduino_t6963_until_01_ok(u8g) == 0 ) + return 0; + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, 1); + u8g_com_arduino_t6963_write(u8g, val); + return 1; +} + +static uint8_t u8g_com_arduino_t6963_write_data(u8g_t *u8g, uint8_t val) +{ + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, 1); + if ( u8g_com_arduino_t6963_until_01_ok(u8g) == 0 ) + return 0; + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, 0); + u8g_com_arduino_t6963_write(u8g, val); + return 1; +} + +static uint8_t u8g_com_arduino_t6963_write_auto_data(u8g_t *u8g, uint8_t val) +{ + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, 1); + if ( u8g_com_arduino_t6963_until_3_ok(u8g) == 0 ) + return 0; + u8g_com_arduino_digital_write(u8g, U8G_PI_A0, 0); + u8g_com_arduino_t6963_write(u8g, val); + return 1; +} + + +uint8_t u8g_com_arduino_t6963_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g->pin_list[U8G_PI_A0_STATE] = 0; + u8g_com_arduino_t6963_init(u8g); + /* setup the RW (equal to WR) pin as output and force it to high */ + if ( u8g->pin_list[U8G_PI_WR] != U8G_PIN_NONE ) + { + pinMode(u8g->pin_list[U8G_PI_WR], OUTPUT); + u8g_com_arduino_digital_write(u8g, U8G_PI_WR, HIGH); + } + /* set all pins (except WR pin) */ + u8g_com_arduino_assign_pin_output_high(u8g); + break; + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable, active low chip select */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, HIGH); + } + else + { + /* enable */ + u8g_com_arduino_digital_write(u8g, U8G_PI_CS, LOW); + } + break; + case U8G_COM_MSG_WRITE_BYTE: + if ( u8g->pin_list[U8G_PI_A0_STATE] == 0 ) + { + u8g_com_arduino_t6963_write_data(u8g, arg_val); + } + else + { + u8g_com_arduino_t6963_write_cmd(u8g, arg_val); + } + break; + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + u8g_com_arduino_t6963_write_cmd(u8g, 0x0b0); /* auto write */ + while( arg_val > 0 ) + { + if ( u8g_com_arduino_t6963_write_auto_data(u8g, *ptr++) == 0 ) + break; + arg_val--; + } + u8g_com_arduino_t6963_write_cmd(u8g, 0x0b2); /* auto reset */ + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + u8g_com_arduino_t6963_write_cmd(u8g, 0x0b0); /* auto write */ + while( arg_val > 0 ) + { + if ( u8g_com_arduino_t6963_write_auto_data(u8g, u8g_pgm_read(ptr)) == 0 ) + break; + ptr++; + arg_val--; + } + u8g_com_arduino_t6963_write_cmd(u8g, 0x0b2); /* auto reset */ + } + break; + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 1) or data mode (arg_val = 0) */ + u8g->pin_list[U8G_PI_A0_STATE] = arg_val; + //u8g_com_arduino_digital_write(u8g, U8G_PI_DI, arg_val); + break; + case U8G_COM_MSG_RESET: + if ( u8g->pin_list[U8G_PI_RESET] != U8G_PIN_NONE ) + u8g_com_arduino_digital_write(u8g, U8G_PI_RESET, arg_val); + break; + + } + return 1; +} + +#else + + +uint8_t u8g_com_arduino_t6963_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_hw_spi.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_hw_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..30ee808ea8ccbcfe88c1ece8632e99b72e9d7866 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_hw_spi.c @@ -0,0 +1,174 @@ +/* + + u8g_com_atmega_hw_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + Assumes, that + MOSI is at PORTB, Pin 3 + and + SCK is at PORTB, Pin 5 + +*/ + +#include "u8g.h" + + +#if defined(__AVR__) +#define U8G_ATMEGA_HW_SPI + +/* remove the definition for attiny */ +#if __AVR_ARCH__ == 2 +#undef U8G_ATMEGA_HW_SPI +#endif +#if __AVR_ARCH__ == 25 +#undef U8G_ATMEGA_HW_SPI +#endif +#endif + + +#if defined(U8G_ATMEGA_HW_SPI) + +#include +#include + + +static uint8_t u8g_atmega_spi_out(uint8_t data) +{ + /* unsigned char x = 100; */ + /* send data */ + SPDR = data; + /* wait for transmission */ + while (!(SPSR & (1< 0 ) + { + u8g_atmega_spi_out(*ptr++); + arg_val--; + } + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_atmega_spi_out(u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + } + return 1; +} + +#else + +uint8_t u8g_com_atmega_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_parallel.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_parallel.c new file mode 100644 index 0000000000000000000000000000000000000000..603082da27b6c2c998e161177e51c8456119a856 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_parallel.c @@ -0,0 +1,183 @@ +/* + + u8g_atmega_parallel.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + PIN_D0 8 + PIN_D1 9 + PIN_D2 10 + PIN_D3 11 + PIN_D4 4 + PIN_D5 5 + PIN_D6 6 + PIN_D7 7 + + PIN_CS1 14 + PIN_CS2 15 + PIN_RW 16 + PIN_DI 17 + PIN_EN 18 + + u8g_Init8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + u8g_Init8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16, U8G_PIN_NONE) + +*/ + +#include "u8g.h" + +#if defined(__AVR__) + +static void u8g_com_atmega_parallel_write(u8g_t *u8g, uint8_t val) U8G_NOINLINE; +static void u8g_com_atmega_parallel_write(u8g_t *u8g, uint8_t val) +{ + + u8g_SetPILevel(u8g, U8G_PI_D0, val&1); + val >>= 1; + u8g_SetPILevel(u8g, U8G_PI_D1, val&1); + val >>= 1; + u8g_SetPILevel(u8g, U8G_PI_D2, val&1); + val >>= 1; + u8g_SetPILevel(u8g, U8G_PI_D3, val&1); + val >>= 1; + u8g_SetPILevel(u8g, U8G_PI_D4, val&1); + val >>= 1; + u8g_SetPILevel(u8g, U8G_PI_D5, val&1); + val >>= 1; + u8g_SetPILevel(u8g, U8G_PI_D6, val&1); + val >>= 1; + u8g_SetPILevel(u8g, U8G_PI_D7, val&1); + + /* EN cycle time must be 1 micro second */ + u8g_SetPILevel(u8g, U8G_PI_EN, 1); + u8g_MicroDelay(); /* delay by 1000ns, reference: ST7920: 140ns, SBN1661: 100ns */ + u8g_SetPILevel(u8g, U8G_PI_EN, 0); + u8g_10MicroDelay(); /* ST7920 commands: 72us */ + u8g_10MicroDelay(); /* ST7920 commands: 72us */ +} + + +uint8_t u8g_com_atmega_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + /* setup the RW pin as output and force it to low */ + u8g_SetPIOutput(u8g, U8G_PI_RW); + u8g_SetPILevel(u8g, U8G_PI_RW, 0); + + u8g_SetPIOutput(u8g, U8G_PI_D0); + u8g_SetPIOutput(u8g, U8G_PI_D1); + u8g_SetPIOutput(u8g, U8G_PI_D2); + u8g_SetPIOutput(u8g, U8G_PI_D3); + u8g_SetPIOutput(u8g, U8G_PI_D4); + u8g_SetPIOutput(u8g, U8G_PI_D5); + u8g_SetPIOutput(u8g, U8G_PI_D6); + u8g_SetPIOutput(u8g, U8G_PI_D7); + u8g_SetPIOutput(u8g, U8G_PI_EN); + u8g_SetPIOutput(u8g, U8G_PI_CS1); + u8g_SetPIOutput(u8g, U8G_PI_CS2); + u8g_SetPIOutput(u8g, U8G_PI_DI); + u8g_SetPILevel(u8g, U8G_PI_CS1, 1); + u8g_SetPILevel(u8g, U8G_PI_CS2, 1); + + break; + case U8G_COM_MSG_STOP: + break; + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable */ + u8g_SetPILevel(u8g, U8G_PI_CS1, 1); + u8g_SetPILevel(u8g, U8G_PI_CS2, 1); + } + else if ( arg_val == 1 ) + { + /* enable */ + u8g_SetPILevel(u8g, U8G_PI_CS1, 0); + u8g_SetPILevel(u8g, U8G_PI_CS2, 1); + } + else if ( arg_val == 2 ) + { + /* enable */ + u8g_SetPILevel(u8g, U8G_PI_CS1, 1); + u8g_SetPILevel(u8g, U8G_PI_CS2, 0); + } + else + { + /* enable */ + u8g_SetPILevel(u8g, U8G_PI_CS1, 0); + u8g_SetPILevel(u8g, U8G_PI_CS2, 0); + } + break; + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_atmega_parallel_write(u8g, arg_val); + break; + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_atmega_parallel_write(u8g, *ptr++); + arg_val--; + } + } + break; + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_atmega_parallel_write(u8g, u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_SetPILevel(u8g, U8G_PI_DI, arg_val); + break; + case U8G_COM_MSG_RESET: + u8g_SetPILevel(u8g, U8G_PI_RESET, arg_val); + break; + } + return 1; +} + +#else + +uint8_t u8g_com_atmega_parallel_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + +#endif /* ARDUINO */ + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_st7920_hw_spi.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_st7920_hw_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..52858a61ea1229ec89b91318166fc5776b7212f3 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_st7920_hw_spi.c @@ -0,0 +1,205 @@ +/* + + u8g_com_atmega_st7920_hw_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + A special SPI interface for ST7920 controller with HW SPI Support + + Assumes, that + MOSI is at PORTB, Pin 3 + and + SCK is at PORTB, Pin 5 + + +*/ + +#include "u8g.h" + +#if defined(__AVR__) +#define U8G_ATMEGA_HW_SPI + +/* remove the definition for attiny */ +#if __AVR_ARCH__ == 2 +#undef U8G_ATMEGA_HW_SPI +#endif +#if __AVR_ARCH__ == 25 +#undef U8G_ATMEGA_HW_SPI +#endif + +#endif + +#if defined(U8G_ATMEGA_HW_SPI) + +#include +#include + +static uint8_t u8g_atmega_st7920_hw_spi_shift_out(u8g_t *u8g, uint8_t val) U8G_NOINLINE; +static uint8_t u8g_atmega_st7920_hw_spi_shift_out(u8g_t *u8g, uint8_t val) +{ + /* send data */ + SPDR = val; + /* wait for transmission */ + while (!(SPSR & (1<pin_list[U8G_PI_A0_STATE] = 0; /* inital RS state: command mode */ + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_RESET: + u8g_SetPILevel(u8g, U8G_PI_RESET, arg_val); + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g->pin_list[U8G_PI_A0_STATE] = arg_val; + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable, note: the st7920 has an active high chip select */ + u8g_SetPILevel(u8g, U8G_PI_CS, 0); + } + else + { + /* u8g_SetPILevel(u8g, U8G_PI_SCK, 0 ); */ + /* enable */ + u8g_SetPILevel(u8g, U8G_PI_CS, 1); /* CS = 1 (high active) */ + } + break; + + + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_atmega_st7920_write_byte_hw_spi(u8g, u8g->pin_list[U8G_PI_A0_STATE], arg_val); + //u8g->pin_list[U8G_PI_A0_STATE] = 2; + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_atmega_st7920_write_byte_hw_spi(u8g, u8g->pin_list[U8G_PI_A0_STATE], *ptr++); + //u8g->pin_list[U8G_PI_A0_STATE] = 2; + arg_val--; + } + } + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_atmega_st7920_write_byte_hw_spi(u8g, u8g->pin_list[U8G_PI_A0_STATE], u8g_pgm_read(ptr)); + //u8g->pin_list[U8G_PI_A0_STATE] = 2; + ptr++; + arg_val--; + } + } + break; + } + return 1; +} + +#else + + +uint8_t u8g_com_atmega_st7920_hw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + + +#endif + + \ No newline at end of file diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_st7920_spi.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_st7920_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..24e06028a59e9b8d89088ab8c61b558215bc7508 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_st7920_spi.c @@ -0,0 +1,170 @@ +/* + + u8g_com_atmega_st7920_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + A special SPI interface for ST7920 controller + +*/ + +#include "u8g.h" + +#if defined(__AVR__) + +static void u8g_atmega_st7920_sw_spi_shift_out(u8g_t *u8g, uint8_t val) U8G_NOINLINE; +static void u8g_atmega_st7920_sw_spi_shift_out(u8g_t *u8g, uint8_t val) +{ + uint8_t i = 8; + do + { + u8g_SetPILevel(u8g, U8G_PI_MOSI, val & 128 ); + val <<= 1; + u8g_SetPILevel(u8g, U8G_PI_SCK, 1 ); + u8g_MicroDelay(); /* 15 Aug 2012: added for high speed uC */ + u8g_SetPILevel(u8g, U8G_PI_SCK, 0 ); + u8g_MicroDelay(); /* 15 Aug 2012: added for high speed uC */ + i--; + } while( i != 0 ); +} + +static void u8g_com_atmega_st7920_write_byte(u8g_t *u8g, uint8_t rs, uint8_t val) U8G_NOINLINE; +static void u8g_com_atmega_st7920_write_byte(u8g_t *u8g, uint8_t rs, uint8_t val) +{ + uint8_t i; + + if ( rs == 0 ) + { + /* command */ + u8g_atmega_st7920_sw_spi_shift_out(u8g, 0x0f8); + } + else if ( rs == 1 ) + { + /* data */ + u8g_atmega_st7920_sw_spi_shift_out(u8g, 0x0fa); + } + + u8g_atmega_st7920_sw_spi_shift_out(u8g, val & 0x0f0); + u8g_atmega_st7920_sw_spi_shift_out(u8g, val << 4); + + for( i = 0; i < 4; i++ ) + u8g_10MicroDelay(); +} + + +uint8_t u8g_com_atmega_st7920_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g_SetPIOutput(u8g, U8G_PI_SCK); + u8g_SetPIOutput(u8g, U8G_PI_MOSI); + /* u8g_SetPIOutput(u8g, U8G_PI_A0); */ + u8g_SetPIOutput(u8g, U8G_PI_CS); + u8g_SetPIOutput(u8g, U8G_PI_RESET); + + u8g_SetPILevel(u8g, U8G_PI_SCK, 0 ); + u8g_SetPILevel(u8g, U8G_PI_MOSI, 0 ); + u8g_SetPILevel(u8g, U8G_PI_CS, 0 ); + /* u8g_SetPILevel(u8g, U8G_PI_A0, 0); */ + + u8g->pin_list[U8G_PI_A0_STATE] = 0; /* inital RS state: command mode */ + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_RESET: + u8g_SetPILevel(u8g, U8G_PI_RESET, arg_val); + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g->pin_list[U8G_PI_A0_STATE] = arg_val; + break; + + case U8G_COM_MSG_CHIP_SELECT: + if ( arg_val == 0 ) + { + /* disable, note: the st7920 has an active high chip select */ + u8g_SetPILevel(u8g, U8G_PI_CS, 0); + } + else + { + /* u8g_SetPILevel(u8g, U8G_PI_SCK, 0 ); */ + /* enable */ + u8g_SetPILevel(u8g, U8G_PI_CS, 1); /* CS = 1 (high active) */ + } + break; + + + case U8G_COM_MSG_WRITE_BYTE: + u8g_com_atmega_st7920_write_byte(u8g, u8g->pin_list[U8G_PI_A0_STATE], arg_val); + u8g->pin_list[U8G_PI_A0_STATE] = 2; + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_atmega_st7920_write_byte(u8g, u8g->pin_list[U8G_PI_A0_STATE], *ptr++); + u8g->pin_list[U8G_PI_A0_STATE] = 2; + arg_val--; + } + } + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_com_atmega_st7920_write_byte(u8g, u8g->pin_list[U8G_PI_A0_STATE], u8g_pgm_read(ptr)); + u8g->pin_list[U8G_PI_A0_STATE] = 2; + ptr++; + arg_val--; + } + } + break; + } + return 1; +} + +#else + + +uint8_t u8g_com_atmega_st7920_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + + +#endif + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_sw_spi.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_sw_spi.c new file mode 100644 index 0000000000000000000000000000000000000000..fde3153a5772eb7c2370d9c2ea6e885bd220c77a --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_atmega_sw_spi.c @@ -0,0 +1,141 @@ +/* + + u8g_com_atmega_sw_spi.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#if defined(__AVR__) + +static void u8g_atmega_sw_spi_shift_out(u8g_t *u8g, uint8_t val) U8G_NOINLINE; +static void u8g_atmega_sw_spi_shift_out(u8g_t *u8g, uint8_t val) +{ + uint8_t i = 8; + do + { + u8g_SetPILevel(u8g, U8G_PI_MOSI, val & 128 ); + val <<= 1; + u8g_SetPILevel(u8g, U8G_PI_SCK, 1 ); + u8g_MicroDelay(); /* 15 Aug 2012: added for high speed uC */ + u8g_SetPILevel(u8g, U8G_PI_SCK, 0 ); + u8g_MicroDelay(); /* 15 Aug 2012: added for high speed uC */ + i--; + } while( i != 0 ); +} + +uint8_t u8g_com_atmega_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + u8g_SetPIOutput(u8g, U8G_PI_SCK); + u8g_SetPIOutput(u8g, U8G_PI_MOSI); + u8g_SetPIOutput(u8g, U8G_PI_A0); + u8g_SetPIOutput(u8g, U8G_PI_CS); + u8g_SetPIOutput(u8g, U8G_PI_RESET); + + u8g_SetPILevel(u8g, U8G_PI_SCK, 0 ); + u8g_SetPILevel(u8g, U8G_PI_MOSI, 0 ); + u8g_SetPILevel(u8g, U8G_PI_CS, 1 ); + u8g_SetPILevel(u8g, U8G_PI_A0, 0); + break; + + case U8G_COM_MSG_STOP: + break; + + case U8G_COM_MSG_ADDRESS: /* define cmd (arg_val = 0) or data mode (arg_val = 1) */ + u8g_SetPILevel(u8g, U8G_PI_A0, arg_val); + break; + + case U8G_COM_MSG_CHIP_SELECT: + + if ( arg_val == 0 ) + { + /* disable */ + u8g_SetPILevel(u8g, U8G_PI_CS, 1); + } + else + { + u8g_SetPILevel(u8g, U8G_PI_SCK, 0 ); + /* enable */ + u8g_SetPILevel(u8g, U8G_PI_CS, 0); /* CS = 0 (low active) */ + } + break; + + case U8G_COM_MSG_RESET: + u8g_SetPILevel(u8g, U8G_PI_RESET, arg_val); + break; + + + case U8G_COM_MSG_WRITE_BYTE: + u8g_atmega_sw_spi_shift_out(u8g, arg_val); + break; + + case U8G_COM_MSG_WRITE_SEQ: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_atmega_sw_spi_shift_out(u8g, *ptr++); + arg_val--; + } + } + break; + + case U8G_COM_MSG_WRITE_SEQ_P: + { + register uint8_t *ptr = arg_ptr; + while( arg_val > 0 ) + { + u8g_atmega_sw_spi_shift_out(u8g, u8g_pgm_read(ptr)); + ptr++; + arg_val--; + } + } + break; + } + return 1; +} + +#else + + +uint8_t u8g_com_atmega_sw_spi_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + return 1; +} + + +#endif + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_i2c.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_i2c.c new file mode 100644 index 0000000000000000000000000000000000000000..144c7d72005a9e5ec83f2498ba57d39b8547eea6 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_i2c.c @@ -0,0 +1,249 @@ +/* + + u8g_com_i2c.c + + generic i2c interface + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#include "u8g.h" + +static uint8_t u8g_i2c_err_code; + +/* + position values + 1: start condition + 2: sla transfer +*/ +static uint8_t u8g_i2c_err_pos; + + +void u8g_i2c_clear_error(void) +{ + u8g_i2c_err_code = U8G_I2C_ERR_NONE; + u8g_i2c_err_pos = 0; +} + +uint8_t u8g_i2c_get_error(void) +{ + return u8g_i2c_err_code; +} + +uint8_t u8g_i2c_get_err_pos(void) +{ + return u8g_i2c_err_pos; +} + +static void u8g_i2c_set_error(uint8_t code, uint8_t pos) +{ + if ( u8g_i2c_err_code > 0 ) + return; + u8g_i2c_err_code |= code; + u8g_i2c_err_pos = pos; +} + + + +#if defined(__AVR__) +#define U8G_ATMEGA_HW_TWI + +/* remove the definition for attiny */ +#if __AVR_ARCH__ == 2 +#undef U8G_ATMEGA_HW_TWI +#endif +#if __AVR_ARCH__ == 25 +#undef U8G_ATMEGA_HW_TWI +#endif +#endif + +#if defined(U8G_ATMEGA_HW_TWI) + +#include +#include + + + +void u8g_i2c_init(uint8_t options) +{ + /* + TWBR: bit rate register + TWSR: status register (contains preselector bits) + + prescalar + 0 1 + 1 4 + 2 16 + 3 64 + + f = F_CPU/(16+2*TWBR*prescalar) + + F_CPU = 16MHz + TWBR = 152; + TWSR = 0; + --> 50KHz + + TWBR = 72; + TWSR = 0; + --> 100KHz + + F_CPU/(2*100000)-8 --> calculate TWBR value for 100KHz +*/ + TWSR = 0; + TWBR = F_CPU/(2*100000)-8; + u8g_i2c_clear_error(); +} + +uint8_t u8g_i2c_wait(uint8_t mask, uint8_t pos) +{ + volatile uint16_t cnt = 2000; /* timout value should be > 280 for 50KHz Bus and 16 Mhz CPU, however the start condition might need longer */ + while( !(TWCR & mask) ) + { + if ( cnt == 0 ) + { + u8g_i2c_set_error(U8G_I2C_ERR_TIMEOUT, pos); + return 0; /* error */ + } + cnt--; + } + return 1; /* all ok */ +} + +/* sla includes all 8 bits (with r/w bit), assums master transmit */ +uint8_t u8g_i2c_start(uint8_t sla) +{ + register uint8_t status; + + /* send start */ + TWCR = _BV(TWINT) | _BV(TWSTA) | _BV(TWEN); + + /* wait */ + if ( u8g_i2c_wait(_BV(TWINT), 1) == 0 ) + return 0; + + status = TW_STATUS; + + /* check status after start */ + if ( status != TW_START && status != TW_REP_START ) + { + u8g_i2c_set_error(U8G_I2C_ERR_BUS, 1); + return 0; + } + + /* set slave address */ + TWDR = sla; + + /* enable sla transfer */ + TWCR = _BV(TWINT) | _BV(TWEN); + + /* wait */ + if ( u8g_i2c_wait(_BV(TWINT), 2) == 0 ) + return 0; + status = TW_STATUS; + + /* check status after sla */ + if ( status != TW_MT_SLA_ACK ) + { + u8g_i2c_set_error(U8G_I2C_ERR_BUS, 2); + return 0; + } + + return 1; +} + +uint8_t u8g_i2c_send_byte(uint8_t data) +{ + register uint8_t status; + TWDR = data; + TWCR = _BV(TWINT) | _BV(TWEN); + if ( u8g_i2c_wait(_BV(TWINT), 3) == 0 ) + return 0; + status = TW_STATUS; + + if ( status != TW_MT_DATA_ACK ) + { + u8g_i2c_set_error(U8G_I2C_ERR_BUS, 3); + return 0; + } + + return 1; +} + +void u8g_i2c_stop(void) +{ + /* write stop */ + TWCR = _BV(TWINT) | _BV(TWEN) | _BV(TWSTO); + + /* no error is checked for the stop condition */ + u8g_i2c_wait(_BV(TWSTO), 4); + +} + +/* +void twi_send(uint8_t adr, uint8_t data1, uint8_t data2) +{ + u8g_i2c_start(adr<<1); + u8g_i2c_send_byte(data1); + u8g_i2c_send_byte(data2); + u8g_i2c_stop(); +} +*/ + +#else + +/* empty interface */ + +void u8g_i2c_init(uint8_t options) +{ + u8g_i2c_clear_error(); +} + +uint8_t u8g_i2c_wait(uint8_t mask, uint8_t pos) +{ + return 1; +} + +uint8_t u8g_i2c_start(uint8_t sla) +{ + return 1; +} +uint8_t u8g_i2c_send_byte(uint8_t data) +{ + return 1; +} + +void u8g_i2c_stop(void) +{ +} + + +#endif + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_io.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_io.c new file mode 100644 index 0000000000000000000000000000000000000000..50d26c93d5d7f1cf224eb50b61724adf39d97fd1 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_io.c @@ -0,0 +1,218 @@ +/* + + u8g_com_io.c + + abstraction layer for low level i/o + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#if defined(__AVR__) + +#include +#include + +typedef volatile uint8_t * IO_PTR; + +/* create internal pin number */ +uint8_t u8g_Pin(uint8_t port, uint8_t bitpos) +{ + port <<= 3; + port += bitpos; + return port; +} + +const IO_PTR u8g_avr_ddr_P[] PROGMEM = { +#ifdef DDRA + &DDRA, +#else + 0, +#endif + &DDRB, +#ifdef DDRC + &DDRC, +#ifdef DDRD + &DDRD, +#ifdef DDRE + &DDRE, +#ifdef DDRF + &DDRF, +#ifdef DDRG + &DDRG, +#ifdef DDRH + &DDRH, +#endif +#endif +#endif +#endif +#endif +#endif +}; + + +const IO_PTR u8g_avr_port_P[] PROGMEM = { +#ifdef PORTA + &PORTA, +#else + 0, +#endif + &PORTB, +#ifdef PORTC + &PORTC, +#ifdef PORTD + &PORTD, +#ifdef PORTE + &PORTE, +#ifdef PORTF + &PORTF, +#ifdef PORTG + &PORTG, +#ifdef PORTH + &PORTH, +#endif +#endif +#endif +#endif +#endif +#endif +}; + +const IO_PTR u8g_avr_pin_P[] PROGMEM = { +#ifdef PINA + &PINA, +#else + 0, +#endif + &PINB, +#ifdef PINC + &PINC, +#ifdef PIND + &PIND, +#ifdef PINE + &PINE, +#ifdef PINF + &PINF, +#ifdef PING + &PING, +#ifdef PINH + &PINH, +#endif +#endif +#endif +#endif +#endif +#endif +}; + +static volatile uint8_t *u8g_get_avr_io_ptr(const IO_PTR *base, uint8_t offset) +{ + volatile uint8_t * tmp; + base += offset; + memcpy_P(&tmp, base, sizeof(volatile uint8_t * PROGMEM)); + return tmp; +} + +/* set direction to output of the specified pin (internal pin number) */ +void u8g_SetPinOutput(uint8_t internal_pin_number) +{ + *u8g_get_avr_io_ptr(u8g_avr_ddr_P, internal_pin_number>>3) |= _BV(internal_pin_number&7); +} + +void u8g_SetPinInput(uint8_t internal_pin_number) +{ + *u8g_get_avr_io_ptr(u8g_avr_ddr_P, internal_pin_number>>3) &= ~_BV(internal_pin_number&7); +} + +void u8g_SetPinLevel(uint8_t internal_pin_number, uint8_t level) +{ + volatile uint8_t * tmp = u8g_get_avr_io_ptr(u8g_avr_port_P, internal_pin_number>>3); + + if ( level == 0 ) + *tmp &= ~_BV(internal_pin_number&7); + else + *tmp |= _BV(internal_pin_number&7); +} + +uint8_t u8g_GetPinLevel(uint8_t internal_pin_number) +{ + volatile uint8_t * tmp = u8g_get_avr_io_ptr(u8g_avr_pin_P, internal_pin_number>>3); + if ( ((*tmp) & _BV(internal_pin_number&7)) != 0 ) + return 1; + return 0; +} + +#else + +uint8_t u8g_Pin(uint8_t port, uint8_t bitpos) +{ + port <<= 3; + port += bitpos; + return port; +} + +void u8g_SetPinOutput(uint8_t internal_pin_number) +{ +} + +void u8g_SetPinInput(uint8_t internal_pin_number) +{ +} + +void u8g_SetPinLevel(uint8_t internal_pin_number, uint8_t level) +{ +} + +uint8_t u8g_GetPinLevel(uint8_t internal_pin_number) +{ + return 0; +} + +#endif + + +void u8g_SetPIOutput(u8g_t *u8g, uint8_t pi) +{ + uint8_t pin; + pin = u8g->pin_list[pi]; + if ( pin != U8G_PIN_NONE ) + u8g_SetPinOutput(pin); +} + +void u8g_SetPILevel(u8g_t *u8g, uint8_t pi, uint8_t level) +{ + uint8_t pin; + pin = u8g->pin_list[pi]; + if ( pin != U8G_PIN_NONE ) + u8g_SetPinLevel(pin, level); +} diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_null.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_null.c new file mode 100644 index 0000000000000000000000000000000000000000..1d9deebff6e36e154062b688668c1472fefe0de9 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_com_null.c @@ -0,0 +1,63 @@ +/* + + u8g_com_null.c + + communication null device + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +uint8_t u8g_com_null_fn(u8g_t *u8g, uint8_t msg, uint8_t arg_val, void *arg_ptr) +{ + switch(msg) + { + case U8G_COM_MSG_INIT: + break; + case U8G_COM_MSG_STOP: + break; + + + case U8G_COM_MSG_CHIP_SELECT: + /* arg_val contains the chip number, which should be enabled */ + break; + + + case U8G_COM_MSG_WRITE_BYTE: + break; + case U8G_COM_MSG_WRITE_SEQ: + break; + } + return 1; +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_cursor.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_cursor.c new file mode 100644 index 0000000000000000000000000000000000000000..62075ba6efd50fe17c9b888dc9e199363bf8083d --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_cursor.c @@ -0,0 +1,99 @@ +/* + + u8g_cursor.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +void u8g_SetCursorFont(u8g_t *u8g, const u8g_pgm_uint8_t *cursor_font) +{ + u8g->cursor_font = cursor_font; +} + +void u8g_SetCursorStyle(u8g_t *u8g, uint8_t encoding) +{ + u8g->cursor_encoding = encoding; +} + +void u8g_SetCursorColor(u8g_t *u8g, uint8_t fg, uint8_t bg) +{ + u8g->cursor_bg_color = bg; + u8g->cursor_fg_color = fg; +} + +void u8g_SetCursorPos(u8g_t *u8g, u8g_uint_t cursor_x, u8g_uint_t cursor_y) +{ + u8g->cursor_x = cursor_x; + u8g->cursor_y = cursor_y; +} + +void u8g_EnableCursor(u8g_t *u8g) +{ + u8g->cursor_fn = u8g_DrawCursor; +} + +void u8g_DisableCursor(u8g_t *u8g) +{ + u8g->cursor_fn = (u8g_draw_cursor_fn)0; +} + +void u8g_DrawCursor(u8g_t *u8g) +{ + const u8g_pgm_uint8_t *font; + uint8_t color; + uint8_t encoding = u8g->cursor_encoding; + + /* get current values */ + color = u8g_GetColorIndex(u8g); + font = u8g->font; + + /* draw cursor */ + u8g->font = u8g->cursor_font; + encoding++; + u8g_SetColorIndex(u8g, u8g->cursor_bg_color); + /* 27. Jan 2013: replaced call to u8g_DrawGlyph with call to u8g_draw_glyph */ + /* required, because y adjustment should not happen to the cursor fonts */ + u8g_draw_glyph(u8g, u8g->cursor_x, u8g->cursor_y, encoding); + encoding--; + u8g_SetColorIndex(u8g, u8g->cursor_fg_color); + /* 27. Jan 2013: replaced call to u8g_DrawGlyph with call to u8g_draw_glyph */ + /* required, because y adjustment should not happen to the cursor fonts */ + /* u8g_DrawGlyph(u8g, u8g->cursor_x, u8g->cursor_y, encoding); */ + u8g_draw_glyph(u8g, u8g->cursor_x, u8g->cursor_y, encoding); + + /* restore previous values */ + u8g->font = font; + u8g_SetColorIndex(u8g, color); +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_delay.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_delay.c new file mode 100644 index 0000000000000000000000000000000000000000..e6a0661b3c0157e0f8e78a7b466d73f104038938 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_delay.c @@ -0,0 +1,215 @@ +/* + + u8g_delay.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + + +#include "u8g.h" + +/*==== Part 1: Derive suitable delay procedure ====*/ + +#if defined(ARDUINO) +# if defined(__AVR__) +# define USE_AVR_DELAY +# elif defined(__PIC32MX) +# define USE_PIC32_DELAY +# elif defined(__arm__) /* Arduino Due */ +# define USE_ARDUINO_DELAY +# else +# define USE_ARDUINO_DELAY +# endif +#elif defined(__AVR__) +# define USE_AVR_DELAY +#elif defined(__18CXX) +# define USE_PIC18_DELAY +#else +# define USE_DUMMY_DELAY +#endif + + + +/*==== Part 2: Definition of the delay procedures ====*/ + +/*== AVR Delay ==*/ + +#if defined(USE_AVR_DELAY) +#include +#include +#include + +/* + Delay by the provided number of milliseconds. + Thus, a 16 bit value will allow a delay of 0..65 seconds + Makes use of the _delay_loop_2 + + _delay_loop_2 will do a delay of n * 4 prozessor cycles. + with f = F_CPU cycles per second, + n = f / (1000 * 4 ) + with f = 16000000 the result is 4000 + with f = 1000000 the result is 250 + + the millisec loop, gcc requires the following overhead: + - movev 1 + - subwi 2x2 + - bne i 2 + ==> 7 cycles + ==> must be devided by 4, rounded up 7/4 = 2 +*/ +void u8g_Delay(uint16_t val) +{ + /* old version did a call to the arduino lib: delay(val); */ + while( val != 0 ) + { + _delay_loop_2( (F_CPU / 4000 ) -2); + val--; + } +} + +/* delay by one micro second */ +void u8g_MicroDelay(void) +{ +#if (F_CPU / 4000000 ) > 0 + _delay_loop_2( (F_CPU / 4000000 ) ); +#endif +} + +/* delay by 10 micro seconds */ +void u8g_10MicroDelay(void) +{ +#if (F_CPU / 400000 ) > 0 + _delay_loop_2( (F_CPU / 400000 ) ); +#endif +} + +#endif + + +/*== Delay for PIC18 (not tested) ==*/ + +#if defined(USE_PIC18_DELAY) +#include +#define GetSystemClock() (64000000ul) // Hz +#define GetInstructionClock() (GetSystemClock()/4) + +void u8g_Delay(uint16_t val) +{/* + unsigned int _iTemp = (val); + while(_iTemp--) + Delay1KTCYx((GetInstructionClock()+999999)/1000000); + */ +} +void u8g_MicroDelay(void) +{ + /* not implemented */ +} +void u8g_10MicroDelay(void) +{ + /* not implemented */ +} +#endif + + +/*== Arduino Delay ==*/ +#if defined(USE_ARDUINO_DELAY) +void u8g_Delay(uint16_t val) +{ + delay(val); +} +void u8g_MicroDelay(void) +{ + delayMicroseconds(1); +} +void u8g_10MicroDelay(void) +{ + delayMicroseconds(10); +} +#endif + +#if defined(USE_PIC32_DELAY) +/* + Assume chipkit here with F_CPU correctly defined + The problem was, that u8g_Delay() is called within the constructor. + It seems that the chipkit is not fully setup at this time, so a + call to delay() will not work. So here is my own implementation. + +*/ +#define CPU_COUNTS_PER_SECOND (F_CPU/2UL) +#define TICKS_PER_MILLISECOND (CPU_COUNTS_PER_SECOND/1000UL) +#include "plib.h" +void u8g_Delay(uint16_t val) +{ + uint32_t d; + uint32_t s; + d = val; + d *= TICKS_PER_MILLISECOND; + s = ReadCoreTimer(); + while ( (uint32_t)(ReadCoreTimer() - s) < d ) + ; +} + +void u8g_MicroDelay(void) +{ + uint32_t d; + uint32_t s; + d = TICKS_PER_MILLISECOND/1000; + s = ReadCoreTimer(); + while ( (uint32_t)(ReadCoreTimer() - s) < d ) + ; +} + +void u8g_10MicroDelay(void) +{ + uint32_t d; + uint32_t s; + d = TICKS_PER_MILLISECOND/100; + s = ReadCoreTimer(); + while ( (uint32_t)(ReadCoreTimer() - s) < d ) + ; +} + +#endif + +/*== Any other systems: Dummy Delay ==*/ +#if defined(USE_DUMMY_DELAY) +void u8g_Delay(uint16_t val) +{ + /* do not know how to delay... */ +} +void u8g_MicroDelay(void) +{ +} +void u8g_10MicroDelay(void) +{ +} +#endif diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_flipdisc_2x7.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_flipdisc_2x7.c new file mode 100644 index 0000000000000000000000000000000000000000..bb368de438d07a23f749a5e9e90f01aa1c918c36 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_flipdisc_2x7.c @@ -0,0 +1,92 @@ +/* + + u8g_dev_flipdisc.c + + 1-Bit (BW) Driver for flip disc matrix + 2x 7 pixel height + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#include "u8g.h" + +#define WIDTH 28 +#define HEIGHT 14 +#define PAGE_HEIGHT 14 + +/* + Write data to the flip disc matrix. + This procedure must be implemented by the user. + Arguments: + id: Id for the matrix. Currently always 0. + page: A page has a height of 14 pixel. For a matrix with HEIGHT == 14 this will be always 0 + width: The width of the flip disc matrix. Always equal to WIDTH + row1: first data line (7 pixel per byte) + row2: first data line (7 pixel per byte) +*/ +void writeFlipDiscMatrix(uint8_t id, uint8_t page, uint8_t width, uint8_t *row1, uint8_t *row2); + + + +void (*u8g_write_flip_disc_matrix)(uint8_t id, uint8_t page, uint8_t width, uint8_t *row1, uint8_t *row2); + +void u8g_SetFlipDiscCallback(u8g_t *u8g, void (*cb)(uint8_t id, uint8_t page, uint8_t width, uint8_t *row1, uint8_t *row2)) +{ + u8g_write_flip_disc_matrix = cb; +} + +uint8_t u8g_dev_flipdisc_2x7_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + /* current page: pb->p.page */ + /* ptr to the buffer: pb->buf */ + + (*u8g_write_flip_disc_matrix)(0, pb->p.page, WIDTH, pb->buf, pb->buf+WIDTH); + } + break; + case U8G_DEV_MSG_CONTRAST: + return 1; + } + return u8g_dev_pb14v1_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_flipdisc_2x7_bw_buf[WIDTH*2] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_flipdisc_2x7_bw_pb = { {16, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_flipdisc_2x7_bw_buf}; +u8g_dev_t u8g_dev_flipdisc_2x7 = { u8g_dev_flipdisc_2x7_bw_fn, &u8g_dev_flipdisc_2x7_bw_pb, u8g_com_null_fn }; diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_gprof.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_gprof.c new file mode 100644 index 0000000000000000000000000000000000000000..a486a214330813e82bc7b1755c4d630a62386410 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_gprof.c @@ -0,0 +1,130 @@ +/* + + u8g_dev_gprof.c + + Device for performance measurement with gprof. + Does not write any data, but uses a buffer. + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + +*/ + +#include "u8g.h" + + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +uint8_t u8g_dev_gprof_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +uint8_t u8g_pb_dev_gprof_buf[WIDTH]; +u8g_pb_t u8g_pb_dev_gprof = { {PAGE_HEIGHT, HEIGHT, 0, 0, 0}, WIDTH, u8g_pb_dev_gprof_buf }; + +u8g_dev_t u8g_dev_gprof = { u8g_dev_gprof_fn, &u8g_pb_dev_gprof, NULL }; + +uint8_t u8g_dev_gprof_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + switch(msg) + { + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + /* + { + uint8_t i, j; + uint8_t page_height; + page_height = pb->p.page_y1; + page_height -= pb->p.page_y0; + page_height++; + for( j = 0; j < page_height; j++ ) + { + printf("%02d ", j); + for( i = 0; i < WIDTH; i++ ) + { + if ( (u8g_pb_dev_stdout_buf[i] & (1<p)) == 0 ) + { + //printf("\n"); + return 0; + } + u8g_pb_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + { + u8g_dev_arg_bbx_t *bbx = (u8g_dev_arg_bbx_t *)arg; + u8g_uint_t x2, y2; + + y2 = bbx->y; + y2 += bbx->h; + y2--; + + if ( u8g_pb_IsYIntersection(pb, bbx->y, y2) == 0 ) + return 0; + + /* maybe this one can be skiped... probability is very high to have an intersection, so it would be ok to always return 1 */ + x2 = bbx->x; + x2 += bbx->w; + x2--; + + if ( u8g_pb_IsXIntersection(pb, bbx->x, x2) == 0 ) + return 0; + } + return 1; +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ili9325d_320x240.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ili9325d_320x240.c new file mode 100644 index 0000000000000000000000000000000000000000..e30ae6a71de391c7227c9a68e001b80e48827daf --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ili9325d_320x240.c @@ -0,0 +1,326 @@ +/* + + u8g_dev_ili9325d_320x240.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Color format + Red: 5 Bit + Green: 6 Bit + Blue: 5 Bit + + +*/ + +#include "u8g.h" + +#define WIDTH 240 + +#if defined(U8G_16BIT) +#define HEIGHT 320 +#else +/* if the user tries to compile the 8Bit version of the lib, then restrict the height to something which fits to 8Bit */ +#define HEIGHT 240 +#endif +#define PAGE_HEIGHT 4 + + +/* + reference board for this device: + http://iteadstudio.com/store/index.php?main_page=product_info&cPath=57_58&products_id=55 + documentation: + http://iteadstudio.com/Downloadfile/ITDB02_material.rar + datasheet + http://www.newhavendisplay.com/app_notes/ILI9325D.pdf + other libs + http://henningkarlsen.com/electronics/library.php + init sequence + http://code.google.com/p/itdb02/, ITDB02.cpp, iteadstudio.com +*/ + +static const uint8_t u8g_dev_ili9325d_320x240_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + + //U8G_ESC_ADR(0), 0x000, 0x0E5, /* only used for none D version: set SRAM internal timing */ + //U8G_ESC_ADR(1), 0x078, 0x0f0, + U8G_ESC_ADR(0), 0x000, 0x001, /* Driver Output Control, bits 8 & 10 */ + U8G_ESC_ADR(1), 0x001, 0x000, + U8G_ESC_ADR(0), 0x000, 0x002, /* LCD Driving Wave Control, bit 9: Set line inversion */ + U8G_ESC_ADR(1), 0x002, 0x000, /* ITDB02 none D verion: 0x007, 0x000 */ + U8G_ESC_ADR(0), 0x000, 0x003, /* Entry Mode, GRAM write direction and BGR=1 */ + U8G_ESC_ADR(1), 0x010, 0x030, + U8G_ESC_ADR(0), 0x000, 0x004, /* Resize register */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x008, /* Display Control 2: set the back porch and front porch */ + U8G_ESC_ADR(1), 0x002, 0x007, + + U8G_ESC_ADR(0), 0x000, 0x009, /* Display Control 3 */ + U8G_ESC_ADR(1), 0x000, 0x000, + + U8G_ESC_ADR(0), 0x000, 0x00a, /* Display Control 4: FMARK */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x00c, /* RGB Display Interface Control 1 */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x00d, /* Frame Maker Position */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x00f, /* RGB Display Interface Control 2 */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x010, /* Power Control 1: SAP, BT[3:0], AP, DSTB, SLP, STB */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x011, /* Power Control 2: DC1[2:0], DC0[2:0], VC[2:0] */ + U8G_ESC_ADR(1), 0x000, 0x007, + U8G_ESC_ADR(0), 0x000, 0x012, /* Power Control 3: VREG1OUT voltage */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x013, /* Power Control 4: VDV[4:0] for VCOM amplitude */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x007, /* Display Control 1: Operate, but do not display */ + U8G_ESC_ADR(1), 0x000, 0x001, + + U8G_ESC_DLY(100), /* delay 100 ms */ /* ITDB02 none D verion: 50ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + U8G_ESC_ADR(0), 0x000, 0x010, /* Power Control 1: SAP, BT[3:0], AP, DSTB, SLP, STB */ + U8G_ESC_ADR(1), 0x016, 0x090, /* ITDB02 none D verion: 0x010, 0x090 */ + U8G_ESC_ADR(0), 0x000, 0x011, /* Power Control 2: SAP, BT[3:0], AP, DSTB, SLP, STB */ + U8G_ESC_ADR(1), 0x002, 0x027, + + U8G_ESC_DLY(50), /* delay 50 ms */ + + U8G_ESC_ADR(0), 0x000, 0x012, /* Power Control 3: VCI: External, VCI*1.80 */ + U8G_ESC_ADR(1), 0x000, 0x00d, /* ITDB02 none D verion: 0x000, 0x01f */ + + U8G_ESC_DLY(50), /* delay 50 ms */ + + U8G_ESC_ADR(0), 0x000, 0x013, /* Power Control 4: VDV[4:0] for VCOM amplitude */ + U8G_ESC_ADR(1), 0x012, 0x000, /* ITDB02 none D verion: 0x015, 0x000 */ + U8G_ESC_ADR(0), 0x000, 0x029, /* Power Control 7 */ + U8G_ESC_ADR(1), 0x000, 0x00a, /* ITDB02 none D verion: 0x000, 0x027 */ + U8G_ESC_ADR(0), 0x000, 0x02b, /* Frame Rate: 83 */ + U8G_ESC_ADR(1), 0x000, 0x00d, + + U8G_ESC_DLY(50), /* delay 50 ms */ + + U8G_ESC_ADR(0), 0x000, 0x020, /* Horizontal GRAM Address Set */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x021, /* Vertical GRAM Address Set */ + U8G_ESC_ADR(1), 0x000, 0x000, + + /* gamma control */ + U8G_ESC_ADR(0), 0x000, 0x030, + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x031, + U8G_ESC_ADR(1), 0x004, 0x004, + U8G_ESC_ADR(0), 0x000, 0x032, + U8G_ESC_ADR(1), 0x000, 0x003, + U8G_ESC_ADR(0), 0x000, 0x035, + U8G_ESC_ADR(1), 0x004, 0x005, + U8G_ESC_ADR(0), 0x000, 0x036, + U8G_ESC_ADR(1), 0x008, 0x008, + U8G_ESC_ADR(0), 0x000, 0x037, + U8G_ESC_ADR(1), 0x004, 0x007, + U8G_ESC_ADR(0), 0x000, 0x038, + U8G_ESC_ADR(1), 0x003, 0x003, + U8G_ESC_ADR(0), 0x000, 0x039, + U8G_ESC_ADR(1), 0x007, 0x007, + U8G_ESC_ADR(0), 0x000, 0x03c, + U8G_ESC_ADR(1), 0x005, 0x004, + U8G_ESC_ADR(0), 0x000, 0x03d, + U8G_ESC_ADR(1), 0x008, 0x008, + + U8G_ESC_ADR(0), 0x000, 0x050, /* Horizontal GRAM Start Address */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x051, /* Horizontal GRAM End Address: 239 */ + U8G_ESC_ADR(1), 0x000, 0x0EF, + U8G_ESC_ADR(0), 0x000, 0x052, /* Vertical GRAM Start Address */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x053, /* Vertical GRAM End Address: 319 */ + U8G_ESC_ADR(1), 0x001, 0x03F, + + U8G_ESC_ADR(0), 0x000, 0x060, /* Driver Output Control 2 */ + U8G_ESC_ADR(1), 0x0a7, 0x000, + U8G_ESC_ADR(0), 0x000, 0x061, /* Base Image Display Control: NDL,VLE, REV */ + U8G_ESC_ADR(1), 0x000, 0x001, + U8G_ESC_ADR(0), 0x000, 0x06a, /* Vertical Scroll Control */ + U8G_ESC_ADR(1), 0x000, 0x000, + + U8G_ESC_ADR(0), 0x000, 0x080, /* Partial Image 1 Display Position */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x081, /* Partial Image 1 RAM Start Address */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x082, /* Partial Image 1 RAM End Address */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x083, /* Partial Image 2 Display Position */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x084, /* Partial Image 2 RAM Start Address */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x085, /* Partial Image 2 RAM End Address */ + U8G_ESC_ADR(1), 0x000, 0x000, + + U8G_ESC_ADR(0), 0x000, 0x090, /* Panel Interface Control 1 */ + U8G_ESC_ADR(1), 0x000, 0x010, + U8G_ESC_ADR(0), 0x000, 0x092, /* Panel Interface Control 2 */ + U8G_ESC_ADR(1), 0x000, 0x000, /* 0x006, 0x000 */ + + U8G_ESC_ADR(0), 0x000, 0x007, /* Display Control 1: Operate, display ON */ + U8G_ESC_ADR(1), 0x001, 0x033, + + U8G_ESC_DLY(10), /* delay 10 ms */ + + /* write test pattern */ + U8G_ESC_ADR(0), 0x000, 0x020, /* Horizontal GRAM Address Set */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x021, /* Vertical GRAM Address Set */ + U8G_ESC_ADR(1), 0x000, 0x010, + U8G_ESC_ADR(0), 0x000, 0x022, /* Write Data to GRAM */ + U8G_ESC_ADR(1), 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + 0x000, 0x000, + 0x0fe, 0x0fe, + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +static const uint8_t u8g_dev_ili9325d_320x240_page_seq[] PROGMEM = { + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_ADR(0), 0x000, 0x020, /* Horizontal GRAM Address Set */ + U8G_ESC_ADR(1), 0x000, 0x000, + U8G_ESC_ADR(0), 0x000, 0x021, /* Vertical GRAM Address Set */ + U8G_ESC_ADR(1), + U8G_ESC_END /* end of sequence */ +}; + +/* convert the internal RGB 332 to 65K high byte */ +static uint8_t u8g_dev_ili9325d_get_65K_high_byte(uint8_t color) +{ + uint8_t h; + h = color; + h &= 0x0e0; + h |= h>>3; + h &= 0x0f8; + color>>=2; + color &= 7; + h |= color; + return h; +} + +/* convert the internal RGB 332 to 65K high byte */ +static uint8_t u8g_dev_ili9325d_get_65K_low_byte(uint8_t color) +{ + uint8_t l; + l = color; + l <<= 3; + color &= 3; + color <<= 1; + l |= color; + return l; +} + + +uint8_t u8g_dev_ili9325d_320x240_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + //for(;;) + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ili9325d_320x240_init_seq); + + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + uint16_t y, j; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + y = pb->p.page_y0; + ptr = pb->buf; + for( i = 0; i < pb->p.page_height; i ++ ) + { + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ili9325d_320x240_page_seq); + u8g_WriteByte(u8g, dev, y >> 8 ); /* display ram (cursor) address high byte */ + u8g_WriteByte(u8g, dev, y & 255 ); /* display ram (cursor) address low byte */ + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0 ); + u8g_WriteByte(u8g, dev, 0x022 ); /* start gram data */ + + u8g_SetAddress(u8g, dev, 1); /* data mode */ + + for( j = 0; j < pb->width; j++ ) + { + u8g_WriteByte(u8g, dev, u8g_dev_ili9325d_get_65K_high_byte(*ptr) ); + u8g_WriteByte(u8g, dev, u8g_dev_ili9325d_get_65K_low_byte(*ptr) ); + + ptr++; + } + y++; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h8_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_ili9325d_320x240_8h8_buf[WIDTH*PAGE_HEIGHT] U8G_NOCOMMON ; +u8g_pb_t u8g_ili9325d_320x240_8h8_pb U8G_NOCOMMON = { {PAGE_HEIGHT, HEIGHT, 0, 0, 0}, WIDTH, u8g_ili9325d_320x240_8h8_buf}; +u8g_dev_t u8g_dev_ili9325d_320x240_8bit U8G_NOCOMMON = { u8g_dev_ili9325d_320x240_fn, &u8g_ili9325d_320x240_8h8_pb, u8g_com_arduino_port_d_wr_fn }; +//u8g_dev_t u8g_dev_ili9325d_320x240_8bit = { u8g_dev_ili9325d_320x240_fn, &u8g_ili9325d_320x240_8h8_pb, u8g_com_arduino_parallel_fn }; + +//U8G_PB_DEV(u8g_dev_ili9325d_320x240_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ili9325d_320x240_fn, U8G_COM_PARALLEL); + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ks0108_128x64.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ks0108_128x64.c new file mode 100644 index 0000000000000000000000000000000000000000..47ba18d4e768e85e69721696a17ac94138eb7c9b --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ks0108_128x64.c @@ -0,0 +1,110 @@ +/* + + u8g_dev_ks0108_128x64.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + ADDRESS = 0 (Command Mode) + 0x03f Display On + 0x0c0 Start Display at line 0 + 0x040 | y write to y address (y:0..63) + 0x0b8 | x write to page [0..7] + + + u8g_Init8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, en, cs1, cs2, di, rw, reset) + u8g_Init8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 18, 14, 15, 17, 16, U8G_PIN_NONE) + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +static const uint8_t u8g_dev_ks0108_128x64_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip 1 */ + 0x03f, /* display on */ + 0x0c0, /* start at line 0 */ + U8G_ESC_DLY(20), /* delay 20 ms */ + U8G_ESC_CS(2), /* enable chip 2 */ + 0x03f, /* display on */ + 0x0c0, /* start at line 0 */ + U8G_ESC_DLY(20), /* delay 20 ms */ + U8G_ESC_CS(0), /* disable all chips */ + U8G_ESC_END /* end of sequence */ +}; + + +uint8_t u8g_dev_ks0108_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ks0108_128x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* command mode */ + u8g_SetChipSelect(u8g, dev, 2); + u8g_WriteByte(u8g, dev, 0x0b8 | pb->p.page); /* select current page (KS0108b) */ + u8g_WriteByte(u8g, dev, 0x040 ); /* set address 0 */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, 64, pb->buf); + u8g_SetChipSelect(u8g, dev, 0); + + u8g_SetAddress(u8g, dev, 0); /* command mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x0b8 | pb->p.page); /* select current page (KS0108b) */ + u8g_WriteByte(u8g, dev, 0x040 ); /* set address 0 */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, 64, 64+(uint8_t *)pb->buf); + u8g_SetChipSelect(u8g, dev, 0); + + } + break; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_ks0108_128x64, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ks0108_128x64_fn, U8G_COM_PARALLEL); +U8G_PB_DEV(u8g_dev_ks0108_128x64_fast, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ks0108_128x64_fn, U8G_COM_FAST_PARALLEL); + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_lc7981_160x80.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_lc7981_160x80.c new file mode 100644 index 0000000000000000000000000000000000000000..b7bf6755eda533e6444db2e0400355bb22566fc2 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_lc7981_160x80.c @@ -0,0 +1,147 @@ +/* + + u8g_dev_lc7981_160x80.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 160 +#define HEIGHT 80 +#define PAGE_HEIGHT 8 + + +/* + code ideas: + https://github.com/vsergeev/embedded-drivers/tree/master/avr-lc7981 + data sheets: + http://www.lcd-module.de/eng/pdf/zubehoer/lc7981.pdf + http://www.lcd-module.de/pdf/grafik/w160-6.pdf +*/ + +static const uint8_t u8g_dev_lc7981_160x80_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(1), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + + U8G_ESC_ADR(1), /* instruction mode */ + 0x000, /* mode register */ + U8G_ESC_ADR(0), /* data mode */ + 0x032, /* display on (bit 5), master mode on (bit 4), graphics mode on (bit 1)*/ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x001, /* character/bits per pixel pitch */ + U8G_ESC_ADR(0), /* data mode */ + 0x007, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x002, /* number of chars/byte width of the screen */ + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8-1, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x003, /* time division */ + U8G_ESC_ADR(0), /* data mode */ + 0x07f, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x008, /* display start low */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x009, /* display start high */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_DLY(10), /* delay 10 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_lc7981_160x80_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_lc7981_160x80_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint16_t disp_ram_adr; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + disp_ram_adr = WIDTH/8; + disp_ram_adr *= y; + for( i = 0; i < 8; i ++ ) + { + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00a ); /* display ram (cursor) address low byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr & 0x0ff ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00b ); /* display ram (cursor) address hight byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr >> 8 ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00c ); /* write data */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + disp_ram_adr += WIDTH/8; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h1f_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_lc7981_160x80_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_lc7981_160x80_fn, U8G_COM_FAST_PARALLEL); + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_lc7981_240x128.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_lc7981_240x128.c new file mode 100644 index 0000000000000000000000000000000000000000..272b7c4cbd8d71f19553a241434ae09e6ebf4d73 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_lc7981_240x128.c @@ -0,0 +1,145 @@ +/* + + u8g_dev_lc7981_240x128.c + + Hitachi Display SP14N002 + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 240 +#define HEIGHT 128 +#define PAGE_HEIGHT 8 + + +/* + http://www.mark-products.com/graphics.htm#240x128%20Pixel%20Format +*/ + +static const uint8_t u8g_dev_lc7981_240x128_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(1), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + + U8G_ESC_ADR(1), /* instruction mode */ + 0x000, /* mode register */ + U8G_ESC_ADR(0), /* data mode */ + 0x032, /* display on (bit 5), master mode on (bit 4), graphics mode on (bit 1)*/ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x001, /* character/bits per pixel pitch */ + U8G_ESC_ADR(0), /* data mode */ + 0x007, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x002, /* number of chars/byte width of the screen */ + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8-1, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x003, /* time division */ + U8G_ESC_ADR(0), /* data mode */ + 0x07f, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x008, /* display start low */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x009, /* display start high */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_DLY(10), /* delay 10 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_lc7981_240x128_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_lc7981_240x128_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint16_t disp_ram_adr; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + disp_ram_adr = WIDTH/8; + disp_ram_adr *= y; + for( i = 0; i < 8; i ++ ) + { + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00a ); /* display ram (cursor) address low byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr & 0x0ff ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00b ); /* display ram (cursor) address hight byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr >> 8 ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00c ); /* write data */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + disp_ram_adr += WIDTH/8; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h1f_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_lc7981_240x128_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_lc7981_240x128_fn, U8G_COM_FAST_PARALLEL); + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_lc7981_240x64.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_lc7981_240x64.c new file mode 100644 index 0000000000000000000000000000000000000000..781f1d90a74b6a2783d2fdbff6f238d8ac4685c0 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_lc7981_240x64.c @@ -0,0 +1,145 @@ +/* + + u8g_dev_lc7981_240x64.c + + Tested with Nan Ya LM_J6_003_ + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 240 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + + +/* + http://www.mark-products.com/graphics.htm#240x64%20Pixel%20Format +*/ + +static const uint8_t u8g_dev_lc7981_240x64_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(1), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + + U8G_ESC_ADR(1), /* instruction mode */ + 0x000, /* mode register */ + U8G_ESC_ADR(0), /* data mode */ + 0x032, /* display on (bit 5), master mode on (bit 4), graphics mode on (bit 1)*/ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x001, /* character/bits per pixel pitch */ + U8G_ESC_ADR(0), /* data mode */ + 0x007, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x002, /* number of chars/byte width of the screen */ + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8-1, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x003, /* time division */ + U8G_ESC_ADR(0), /* data mode */ + 0x07f, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x008, /* display start low */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x009, /* display start high */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_DLY(10), /* delay 10 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_lc7981_240x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_lc7981_240x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint16_t disp_ram_adr; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + disp_ram_adr = WIDTH/8; + disp_ram_adr *= y; + for( i = 0; i < 8; i ++ ) + { + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00a ); /* display ram (cursor) address low byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr & 0x0ff ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00b ); /* display ram (cursor) address hight byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr >> 8 ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00c ); /* write data */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + disp_ram_adr += WIDTH/8; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h1f_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_lc7981_240x64_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_lc7981_240x64_fn, U8G_COM_FAST_PARALLEL); + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_lc7981_320x64.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_lc7981_320x64.c new file mode 100644 index 0000000000000000000000000000000000000000..d9ae9369fc5999fd09b603053ab7e65e23351448 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_lc7981_320x64.c @@ -0,0 +1,145 @@ +/* + + u8g_dev_lc7981_320x64.c + + Note: Requires 16 bit mode (Must be enabled in u8g.h) + + Tested with Varitronix MGLS32064-03.pdf + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 320 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + + +/* + http://www.gaw.ru/pdf/lcd/lcm/Varitronix/graf/MGLS32064-03.pdf +*/ + +static const uint8_t u8g_dev_lc7981_320x64_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(1), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + + U8G_ESC_ADR(1), /* instruction mode */ + 0x000, /* mode register */ + U8G_ESC_ADR(0), /* data mode */ + 0x032, /* display on (bit 5), master mode on (bit 4), graphics mode on (bit 1)*/ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x001, /* character/bits per pixel pitch */ + U8G_ESC_ADR(0), /* data mode */ + 0x007, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x002, /* number of chars/byte width of the screen */ + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8-1, /* 8 bits per pixel */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x003, /* time division */ + U8G_ESC_ADR(0), /* data mode */ + 0x07f, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x008, /* display start low */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_ADR(1), /* instruction mode */ + 0x009, /* display start high */ + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* */ + + U8G_ESC_DLY(10), /* delay 10 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_lc7981_320x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_lc7981_320x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint16_t disp_ram_adr; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + disp_ram_adr = WIDTH/8; + disp_ram_adr *= y; + for( i = 0; i < 8; i ++ ) + { + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00a ); /* display ram (cursor) address low byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr & 0x0ff ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00b ); /* display ram (cursor) address hight byte */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr >> 8 ); + + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x00c ); /* write data */ + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + disp_ram_adr += WIDTH/8; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h1f_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_lc7981_320x64_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_lc7981_320x64_fn, U8G_COM_FAST_PARALLEL); diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_null.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_null.c new file mode 100644 index 0000000000000000000000000000000000000000..0e3907749c7341fbc8143749fb10a274d39f5b2d --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_null.c @@ -0,0 +1,67 @@ +/* + + u8g_dev_null.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +uint8_t u8g_dev_null(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: /* most often used command */ + break; + case U8G_DEV_MSG_SET_PIXEL: + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + break; + case U8G_DEV_MSG_PAGE_NEXT: + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return 1; +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + } + return 1; +} diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_pcd8544_84x48.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_pcd8544_84x48.c new file mode 100644 index 0000000000000000000000000000000000000000..4cc01137970ac5bd0148aa4eadd53df53d7425dc --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_pcd8544_84x48.c @@ -0,0 +1,110 @@ +/* + + u8g_dev_pcd8544_84x48.c + + Display: Nokia 84x48 + + Status: Tested with PCF8812 Display + + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 84 +#define HEIGHT 48 +#define PAGE_HEIGHT 8 + + +static const uint8_t u8g_dev_pcd8544_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x021, /* activate chip (PD=0), horizontal increment (V=0), enter extended command set (H=1) */ + 0x006, /* temp. control: b10 = 2 */ + 0x013, /* bias system 1:48 */ + 0x0c0, /* medium Vop */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00c, /* display on, normal operation */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00d, /* display on, invert */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00c, /* display on, normal */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_pcd8544_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_pcd8544_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_SetAddress(u8g, dev, 0); /* command mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x020 ); /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set X address */ + u8g_WriteByte(u8g, dev, 0x040 | pb->p.page); /* set Y address */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + /* the contrast adjustment does not work, needs to be analysed */ + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x021); /* command mode, extended function set */ + u8g_WriteByte(u8g, dev, 0x080 | ( (*(uint8_t *)arg) >> 1 ) ); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + + +U8G_PB_DEV(u8g_dev_pcd8544_84x48_sw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_pcd8544_fn, U8G_COM_SW_SPI); + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_pcf8812_96x65.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_pcf8812_96x65.c new file mode 100644 index 0000000000000000000000000000000000000000..3ac57884f84d185f8bf82d4d459beb29e161bb4c --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_pcf8812_96x65.c @@ -0,0 +1,123 @@ +/* + + u8g_dev_pcf8812_96x65.c + + Display: Nokia 96x65 + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + + om6206 comaptible to pcf8812 ? + + Status: Tested + + + Display Controller Seen in + LPH7366 (9 pins, 84x48) PCD8544 Nokia 5110 / 5120 / 5130 / 5160 / 6110 / 6150 + LPH7677 (8 pins, 84x48) PCD8544 Nokia 3210 + LPH7779 (8 pins, 84x48) PCD8544 Nokia 3310 / 3315 / 3330 / 3110, also 3410? + ??? PCD8544 Nokia 5110 / 6110 + LPH7690 ? (96x65) PCF8455/OM6202 Nokia 3410 + LPH7690 ? (96x65?) SED1565/S1D15605 Nokia 7110 / 3510? + LPH7690 ??? Nokia 6210 + + + +*/ + +#include "u8g.h" + +#define WIDTH 96 +#define HEIGHT 65 +#define PAGE_HEIGHT 8 + + +static const uint8_t u8g_dev_pcf8812_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x021, /* activate chip (PD=0), horizontal increment (V=0), enter extended command set (H=1) */ + 0x006, /* temp. control: b10 = 2 */ + 0x013, /* bias system 1:48 */ + 0x080 | 0x040, /* medium Vop */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00c, /* display on, normal operation */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00d, /* display on, invert */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00c, /* display on, normal */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_pcf8812_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_pcf8812_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_SetAddress(u8g, dev, 0); /* command mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x020 ); /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set X address */ + u8g_WriteByte(u8g, dev, 0x040 | pb->p.page); /* set Y address */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + /* the contrast adjustment does not work, needs to be analysed */ + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x021); /* command mode, extended function set */ + u8g_WriteByte(u8g, dev, 0x080 | ( (*(uint8_t *)arg) >> 1 ) ); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +/* u8g_com_arduino_sw_spi_fn does not work, too fast??? */ +U8G_PB_DEV(u8g_dev_pcf8812_96x65_sw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_pcf8812_fn, U8G_COM_SW_SPI); diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_sbn1661_122x32.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_sbn1661_122x32.c new file mode 100644 index 0000000000000000000000000000000000000000..3b0bcd6253cfc8bc49ae2695949b4dd7776117bc --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_sbn1661_122x32.c @@ -0,0 +1,107 @@ +/* + + u8g_dev_sbn1661_122x32.c + + WG12232 display with 2xSBN1661 / SED1520 controller (122x32 display) + At the moment only available in the Arduino Environment + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 122 +#define HEIGHT 32 +#define PAGE_HEIGHT 8 + + +static const uint8_t u8g_dev_sbn1661_122x32_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip 1 */ + 0x0af, /* display on */ + 0x0c0, /* display start at line 0 */ + 0x0a0, /* a0: ADC forward, a1: ADC reverse */ + 0x0a9, /* a8: 1/16, a9: 1/32 duty */ + U8G_ESC_CS(2), /* enable chip 2 */ + 0x0af, /* display on */ + 0x0c0, /* display start at line 0 */ + 0x0a0, /* a0: ADC forward, a1: ADC reverse */ + 0x0a9, /* a8: 1/16, a9: 1/32 duty */ + + U8G_ESC_CS(0), /* disable chip */ + + + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_sbn1661_122x32_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_sbn1661_122x32_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* command mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x0b8 | pb->p.page); /* select current page (SBN1661/SED1520) */ + u8g_WriteByte(u8g, dev, 0x000 ); /* set X address */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/2, pb->buf); + + u8g_SetAddress(u8g, dev, 0); /* command mode */ + u8g_SetChipSelect(u8g, dev, 2); + u8g_WriteByte(u8g, dev, 0x0b8 | pb->p.page); /* select current page (SBN1661/SED1520) */ + u8g_WriteByte(u8g, dev, 0x000 ); /* set X address */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/2, WIDTH/2+(uint8_t *)pb->buf); + + u8g_SetChipSelect(u8g, dev, 0); + + } + break; + case U8G_DEV_MSG_CONTRAST: + break; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +/* u8g_com_arduino_sw_spi_fn does not work, too fast??? */ +U8G_PB_DEV(u8g_dev_sbn1661_122x32 , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_sbn1661_122x32_fn, u8g_com_arduino_no_en_parallel_fn); diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1306_128x32.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1306_128x32.c new file mode 100644 index 0000000000000000000000000000000000000000..8f294374b13788020916c5328cf4afdc892d60d1 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1306_128x32.c @@ -0,0 +1,247 @@ +/* + + u8g_dev_ssd1306_128x32.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + 23 Feb 2013: Fixed, Issue 147 + +*/ + + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 32 +#define PAGE_HEIGHT 8 + + +/* init sequence adafruit 128x32 OLED (NOT TESTED) */ +static const uint8_t u8g_dev_ssd1306_128x32_adafruit1_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x03f, /* */ + + 0x0d3, 0x000, /* */ + + 0x040, /* start line */ + + 0x08d, 0x010, /* [1] charge pump setting (p62): 0x014 enable, 0x010 disable */ + + 0x020, 0x000, /* */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x012, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x09f, /* [1] set contrast control */ + 0x0d9, 0x022, /* [1] pre-charge period 0x022/f1*/ + 0x0db, 0x040, /* vcomh deselect level */ + + 0x02e, /* 2012-05-27: Deactivate scroll */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +/* init sequence adafruit 128x32 OLED (NOT TESTED) */ +static const uint8_t u8g_dev_ssd1306_128x32_adafruit2_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x03f, /* */ + + 0x0d3, 0x000, /* */ + + 0x040, /* start line */ + + 0x08d, 0x014, /* [2] charge pump setting (p62): 0x014 enable, 0x010 disable */ + + 0x020, 0x000, /* */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x012, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x0cf, /* [2] set contrast control */ + 0x0d9, 0x0f1, /* [2] pre-charge period 0x022/f1*/ + 0x0db, 0x040, /* vcomh deselect level */ + + 0x02e, /* 2012-05-27: Deactivate scroll */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +/* init sequence adafruit 128x32 OLED (TESTED - WORKING 23.02.13), like adafruit3, but with page addressing mode */ +static const uint8_t u8g_dev_ssd1306_128x32_adafruit3_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x01f, /* Feb 23, 2013: 128x32 OLED: 0x01f, 128x64 OLED 0x03f */ + + 0x0d3, 0x000, /* */ + + 0x040, /* start line */ + + 0x08d, 0x014, /* [2] charge pump setting (p62): 0x014 enable, 0x010 disable */ + + 0x020, 0x002, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5), Feb 23, 2013: 128x32 OLED: 0x002, 128x64 OLED 0x012 */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x002, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x0cf, /* [2] set contrast control */ + 0x0d9, 0x0f1, /* [2] pre-charge period 0x022/f1*/ + 0x0db, 0x040, /* vcomh deselect level */ + + 0x02e, /* 2012-05-27: Deactivate scroll */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +/* init sequence Univision datasheet (NOT TESTED) */ +static const uint8_t u8g_dev_ssd1306_128x32_univision_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x03f, /* multiplex ratio */ + 0x0d3, 0x000, /* display offset */ + 0x040, /* start line */ + 0x08d, 0x010, /* charge pump setting (p62): 0x014 enable, 0x010 disable */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x012, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x09f, /* set contrast control */ + 0x0d9, 0x022, /* pre-charge period */ + 0x0db, 0x040, /* vcomh deselect level */ + 0x022, 0x000, /* page addressing mode WRONG: 3 byte cmd! */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +/* select one init sequence here */ +//define u8g_dev_ssd1306_128x32_init_seq u8g_dev_ssd1306_128x32_univision_init_seq +//define u8g_dev_ssd1306_128x32_init_seq u8g_dev_ssd1306_128x32_adafruit1_init_seq +//define u8g_dev_ssd1306_128x32_init_seq u8g_dev_ssd1306_128x32_adafruit2_init_seq +#define u8g_dev_ssd1306_128x32_init_seq u8g_dev_ssd1306_128x32_adafruit3_init_seq + + +static const uint8_t u8g_dev_ssd1306_128x32_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr. to 0 */ + 0x000, /* set lower 4 bit of the col adr. to 4 */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_ssd1306_128x32_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1306_128x32_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1306_128x32_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (SSD1306) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; +} + + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_ssd1306_128x32_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1306_128x32_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1306_128x32_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1306_128x32_fn, U8G_COM_HW_SPI); +U8G_PB_DEV(u8g_dev_ssd1306_128x32_i2c, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1306_128x32_fn, U8G_COM_SSD_I2C); + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1306_128x64.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1306_128x64.c new file mode 100644 index 0000000000000000000000000000000000000000..a49b2d8064d670141c3d91219c4ac1828f52143d --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1306_128x64.c @@ -0,0 +1,237 @@ +/* + + u8g_dev_ssd1306_128x64.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +/* init sequence adafruit 128x64 OLED (NOT TESTED) */ +static const uint8_t u8g_dev_ssd1306_128x64_adafruit1_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x03f, /* */ + + 0x0d3, 0x000, /* */ + + 0x040, /* start line */ + + 0x08d, 0x010, /* [1] charge pump setting (p62): 0x014 enable, 0x010 disable */ + + 0x020, 0x000, /* */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x012, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x09f, /* [1] set contrast control */ + 0x0d9, 0x022, /* [1] pre-charge period 0x022/f1*/ + 0x0db, 0x040, /* vcomh deselect level */ + + 0x02e, /* 2012-05-27: Deactivate scroll */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +/* init sequence adafruit 128x64 OLED (NOT TESTED) */ +static const uint8_t u8g_dev_ssd1306_128x64_adafruit2_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x03f, /* */ + + 0x0d3, 0x000, /* */ + + 0x040, /* start line */ + + 0x08d, 0x014, /* [2] charge pump setting (p62): 0x014 enable, 0x010 disable */ + + 0x020, 0x000, /* */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x012, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x0cf, /* [2] set contrast control */ + 0x0d9, 0x0f1, /* [2] pre-charge period 0x022/f1*/ + 0x0db, 0x040, /* vcomh deselect level */ + + 0x02e, /* 2012-05-27: Deactivate scroll */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +/* init sequence adafruit 128x64 OLED (NOT TESTED), like adafruit3, but with page addressing mode */ +static const uint8_t u8g_dev_ssd1306_128x64_adafruit3_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x03f, /* */ + + 0x0d3, 0x000, /* */ + + 0x040, /* start line */ + + 0x08d, 0x014, /* [2] charge pump setting (p62): 0x014 enable, 0x010 disable */ + + 0x020, 0x002, /* 2012-05-27: page addressing mode */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x012, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x0cf, /* [2] set contrast control */ + 0x0d9, 0x0f1, /* [2] pre-charge period 0x022/f1*/ + 0x0db, 0x040, /* vcomh deselect level */ + + 0x02e, /* 2012-05-27: Deactivate scroll */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +/* init sequence Univision datasheet (NOT TESTED) */ +static const uint8_t u8g_dev_ssd1306_128x64_univision_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x0ae, /* display off, sleep mode */ + 0x0d5, 0x080, /* clock divide ratio (0x00=1) and oscillator frequency (0x8) */ + 0x0a8, 0x03f, /* multiplex ratio */ + 0x0d3, 0x000, /* display offset */ + 0x040, /* start line */ + 0x08d, 0x010, /* charge pump setting (p62): 0x014 enable, 0x010 disable */ + 0x0a1, /* segment remap a0/a1*/ + 0x0c8, /* c0: scan dir normal, c8: reverse */ + 0x0da, 0x012, /* com pin HW config, sequential com pin config (bit 4), disable left/right remap (bit 5) */ + 0x081, 0x09f, /* set contrast control */ + 0x0d9, 0x022, /* pre-charge period */ + 0x0db, 0x040, /* vcomh deselect level */ + 0x022, 0x000, /* page addressing mode WRONG: 3 byte cmd! */ + 0x0a4, /* output ram to display */ + 0x0a6, /* none inverted normal display mode */ + 0x0af, /* display on */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +/* select one init sequence here */ +//#define u8g_dev_ssd1306_128x64_init_seq u8g_dev_ssd1306_128x64_univision_init_seq +//#define u8g_dev_ssd1306_128x64_init_seq u8g_dev_ssd1306_128x64_adafruit1_init_seq +//#define u8g_dev_ssd1306_128x64_init_seq u8g_dev_ssd1306_128x64_adafruit2_init_seq +#define u8g_dev_ssd1306_128x64_init_seq u8g_dev_ssd1306_128x64_adafruit3_init_seq + + +static const uint8_t u8g_dev_ssd1306_128x64_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 4 */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_ssd1306_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1306_128x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1306_128x64_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (SSD1306) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_ssd1306_128x64_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1306_128x64_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1306_128x64_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1306_128x64_fn, U8G_COM_HW_SPI); +U8G_PB_DEV(u8g_dev_ssd1306_128x64_i2c, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1306_128x64_fn, U8G_COM_SSD_I2C); diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1309_128x64.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1309_128x64.c new file mode 100644 index 0000000000000000000000000000000000000000..d16013fb7ca9c892b65961a35159ee00a7c51abd --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1309_128x64.c @@ -0,0 +1,144 @@ +/* + + u8g_dev_ssd1309_128x64.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + + +/* ssd1309 ini sequence*/ +static const uint8_t u8g_dev_ssd1309_128x64_init_seq[] PROGMEM={ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0xfd,0x12, /*Command Lock */ + 0xae, /*Set Display Off */ + 0xd5,0xa0, /*set Display Clock Divide Ratio/Oscillator Frequency */ + 0xa8,0x3f, /*Set Multiplex Ratio */ + 0x3d,0x00, /*Set Display Offset*/ + 0x40, /*Set Display Start Line*/ + 0xa1, /*Set Segment Re-Map*/ + 0xc8, /*Set COM Output Scan Direction*/ + 0xda,0x12, /*Set COM Pins Hardware Configuration*/ + 0x81,0xdf, /*Set Current Control */ + 0xd9,0x82, /*Set Pre-Charge Period */ + 0xdb,0x34, /*Set VCOMH Deselect Level */ + 0xa4, /*Set Entire Display On/Off */ + 0xa6, /*Set Normal/Inverse Display*/ + U8G_ESC_VCC(1), /*Power up VCC & Stabilized */ + U8G_ESC_DLY(50), + 0xaf, /*Set Display On */ + U8G_ESC_DLY(50), + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +/* select one init sequence here */ + #define u8g_dev_ssd1309_128x64_init_seq u8g_dev_ssd1309_128x64_init_seq + + + static const uint8_t u8g_dev_ssd1309_128x64_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 4 */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_ssd1309_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1309_128x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1309_128x64_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (SSD1306) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_ssd1309_128x64_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1309_128x64_fn, U8G_COM_HW_SPI); +U8G_PB_DEV(u8g_dev_ssd1309_128x64_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1309_128x64_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1309_128x64_i2c, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1309_128x64_fn, U8G_COM_SSD_I2C); + + \ No newline at end of file diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1322_nhd31oled_bw.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1322_nhd31oled_bw.c new file mode 100644 index 0000000000000000000000000000000000000000..24b94ffc7e75c6f7d5143c425d655aee096cbc0b --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1322_nhd31oled_bw.c @@ -0,0 +1,334 @@ +/* + + u8g_dev_ssd1322_nhd31oled_bw.c + + 1-Bit (BW) Driver for SSD1322 Controller (OLED Display) + Tested with NHD-3.12-25664 + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + SSD130x Monochrom OLED Controller + SSD131x Character OLED Controller + SSD132x Graylevel OLED Controller + SSD1331 Color OLED Controller + +*/ + +#include "u8g.h" + +/* width must be multiple of 8, largest value is 248 unless u8g 16 bit mode is enabled */ +#if defined(U8G_16BIT) +#define WIDTH 256 +#else +#define WIDTH 248 +#endif +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +/* + http://www.newhavendisplay.com/app_notes/OLED_25664.txt + http://www.newhavendisplay.com/forum/viewtopic.php?f=15&t=3758 +*/ + +static const uint8_t u8g_dev_ssd1322_1bit_nhd_312_init_seq[] PROGMEM = { + U8G_ESC_DLY(10), /* delay 10 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0fd, /* lock command */ + U8G_ESC_ADR(1), /* data mode */ + 0x012, /* unlock */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0ae, /* display off, sleep mode */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b3, + U8G_ESC_ADR(1), /* data mode */ + 0x091, /* set display clock divide ratio/oscillator frequency (set clock as 80 frames/sec) */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0ca, /* multiplex ratio */ + U8G_ESC_ADR(1), /* data mode */ + 0x03f, /* 1/64 Duty (0x0F~0x3F) */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a2, + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* display offset, shift mapping ram counter */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a1, + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* display start line */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a0, /* Set Re-Map / Dual COM Line Mode */ + U8G_ESC_ADR(1), /* data mode */ + 0x014, /* was 0x014 */ + 0x011, /* was 0x011 */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0ab, + U8G_ESC_ADR(1), /* data mode */ + 0x001, /* Enable Internal VDD Regulator */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b4, /* Display Enhancement A */ + U8G_ESC_ADR(1), /* data mode */ + 0x0a0, + 0x005|0x0fd, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0c1, /* contrast */ + U8G_ESC_ADR(1), /* data mode */ + 0x09f, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0c7, /* Set Scale Factor of Segment Output Current Control */ + U8G_ESC_ADR(1), /* data mode */ + 0x00f, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b9, /* linear gray scale */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b1, /* Phase 1 (Reset) & Phase 2 (Pre-Charge) Period Adjustment */ + U8G_ESC_ADR(1), /* data mode */ + 0x0e2, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0d1, /* Display Enhancement B */ + U8G_ESC_ADR(1), /* data mode */ + 0x082|0x020, + 0x020, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0bb, /* precharge voltage */ + U8G_ESC_ADR(1), /* data mode */ + 0x01f, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b6, /* precharge period */ + U8G_ESC_ADR(1), /* data mode */ + 0x008, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0be, /* vcomh */ + U8G_ESC_ADR(1), /* data mode */ + 0x007, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a6, /* normal display */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a9, /* exit partial display */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0af, /* display on */ + + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd1322_1bit_nhd_312_prepare_page_seq[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x015, /* column address... */ + U8G_ESC_ADR(1), /* data mode */ + 0x01c, /* start at column 0 */ + 0x05b, /* end column */ + U8G_ESC_ADR(0), /* instruction mode */ + 0x075, /* row address... */ + U8G_ESC_ADR(1), /* data mode */ + U8G_ESC_END /* end of sequence */ +}; + +static void u8g_dev_ssd1322_1bit_prepare_row(u8g_t *u8g, u8g_dev_t *dev, uint8_t delta_row) +{ + uint8_t row = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + row *= ((u8g_pb_t *)(dev->dev_mem))->p.page_height; + row += delta_row; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1322_1bit_nhd_312_prepare_page_seq); + + u8g_WriteByte(u8g, dev, row); /* start at the selected row */ + u8g_WriteByte(u8g, dev, row+1); /* end within the selected row */ + + u8g_SetAddress(u8g, dev, 0); /* instruction mode mode */ + u8g_WriteByte(u8g, dev, 0x05c); /* write to ram */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +static const uint8_t u8g_dev_ssd13xx_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +uint8_t u8g_dev_ssd1322_nhd31oled_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1322_1bit_nhd_312_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 3; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1322_1bit_prepare_row(u8g, dev, i); /* this will also enable chip select */ +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x0ff); + u8g_WriteByte(u8g, dev, 0x0ff); +#endif + u8g_WriteSequenceBWTo16GrDevice(u8g, dev, cnt, p); +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x0ff); + u8g_WriteByte(u8g, dev, 0x0ff); +#endif + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb8h1_base_fn(u8g, dev, msg, arg); +} + + +uint8_t u8g_dev_ssd1322_nhd31oled_2x_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1322_1bit_nhd_312_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 3; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1322_1bit_prepare_row(u8g, dev, i); /* this will also enable chip select */ +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x0ff); + u8g_WriteByte(u8g, dev, 0x0ff); +#endif + u8g_WriteSequenceBWTo16GrDevice(u8g, dev, cnt, p); +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x0ff); + u8g_WriteByte(u8g, dev, 0x0ff); +#endif + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb16h1_base_fn(u8g, dev, msg, arg); +} + + +U8G_PB_DEV(u8g_dev_ssd1322_nhd31oled_bw_sw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1322_nhd31oled_bw_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1322_nhd31oled_bw_hw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1322_nhd31oled_bw_fn, U8G_COM_HW_SPI); + +#define DWIDTH (WIDTH*2) +uint8_t u8g_dev_ssd1322_nhd31oled_2x_bw_buf[DWIDTH] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_ssd1322_nhd31oled_2x_bw_pb = { {16, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_ssd1322_nhd31oled_2x_bw_buf}; +u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_bw_sw_spi = { u8g_dev_ssd1322_nhd31oled_2x_bw_fn, &u8g_dev_ssd1322_nhd31oled_2x_bw_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_bw_hw_spi = { u8g_dev_ssd1322_nhd31oled_2x_bw_fn, &u8g_dev_ssd1322_nhd31oled_2x_bw_pb, U8G_COM_HW_SPI }; + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1322_nhd31oled_gr.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1322_nhd31oled_gr.c new file mode 100644 index 0000000000000000000000000000000000000000..5b509641c6fcc91810965d6bf309bd1d39b469e4 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1322_nhd31oled_gr.c @@ -0,0 +1,333 @@ +/* + + u8g_dev_ssd1322_nhd31oled_gr.c + + 2-Bit (4L) Driver for SSD1322 Controller (OLED Display) + Tested with NHD-3.12-25664 + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + SSD130x Monochrom OLED Controller + SSD131x Character OLED Controller + SSD132x Graylevel OLED Controller + SSD1331 Color OLED Controller + +*/ + +#include "u8g.h" + +/* width must be multiple of 8, largest value is 248 unless u8g 16 bit mode is enabled */ +#if defined(U8G_16BIT) +#define WIDTH 256 +#else +#define WIDTH 248 +#endif +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +/* + http://www.newhavendisplay.com/app_notes/OLED_25664.txt + http://www.newhavendisplay.com/forum/viewtopic.php?f=15&t=3758 +*/ + +static const uint8_t u8g_dev_ssd1322_2bit_nhd_312_init_seq[] PROGMEM = { + U8G_ESC_DLY(10), /* delay 10 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0fd, /* lock command */ + U8G_ESC_ADR(1), /* data mode */ + 0x012, /* unlock */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0ae, /* display off, sleep mode */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b3, + U8G_ESC_ADR(1), /* data mode */ + 0x091, /* set display clock divide ratio/oscillator frequency (set clock as 80 frames/sec) */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0ca, /* multiplex ratio */ + U8G_ESC_ADR(1), /* data mode */ + 0x03f, /* 1/64 Duty (0x0F~0x3F) */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a2, + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* display offset, shift mapping ram counter */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a1, + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* display start line */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a0, /* Set Re-Map / Dual COM Line Mode */ + U8G_ESC_ADR(1), /* data mode */ + 0x014, /* was 0x014 */ + 0x011, /* was 0x011 */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0ab, + U8G_ESC_ADR(1), /* data mode */ + 0x001, /* Enable Internal VDD Regulator */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b4, /* Display Enhancement A */ + U8G_ESC_ADR(1), /* data mode */ + 0x0a0, + 0x005|0x0fd, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0c1, /* contrast */ + U8G_ESC_ADR(1), /* data mode */ + 0x09f, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0c7, /* Set Scale Factor of Segment Output Current Control */ + U8G_ESC_ADR(1), /* data mode */ + 0x00f, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b9, /* linear gray scale */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b1, /* Phase 1 (Reset) & Phase 2 (Pre-Charge) Period Adjustment */ + U8G_ESC_ADR(1), /* data mode */ + 0x0e2, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0d1, /* Display Enhancement B */ + U8G_ESC_ADR(1), /* data mode */ + 0x082|0x020, + 0x020, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0bb, /* precharge voltage */ + U8G_ESC_ADR(1), /* data mode */ + 0x01f, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0b6, /* precharge period */ + U8G_ESC_ADR(1), /* data mode */ + 0x008, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0be, /* vcomh */ + U8G_ESC_ADR(1), /* data mode */ + 0x007, + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a6, /* normal display */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0a9, /* exit partial display */ + + U8G_ESC_ADR(0), /* instruction mode */ + 0x0af, /* display on */ + + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd1322_2bit_nhd_312_prepare_page_seq[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x015, /* column address... */ + U8G_ESC_ADR(1), /* data mode */ + 0x01c, /* start at column 0 */ + 0x05b, /* end column */ + U8G_ESC_ADR(0), /* instruction mode */ + 0x075, /* row address... */ + U8G_ESC_ADR(1), /* data mode */ + U8G_ESC_END /* end of sequence */ +}; + +static void u8g_dev_ssd1322_2bit_prepare_row(u8g_t *u8g, u8g_dev_t *dev, uint8_t delta_row) +{ + uint8_t row = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + row *= ((u8g_pb_t *)(dev->dev_mem))->p.page_height; + row += delta_row; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1322_2bit_nhd_312_prepare_page_seq); + + u8g_WriteByte(u8g, dev, row); /* start at the selected row */ + u8g_WriteByte(u8g, dev, row+1); /* end within the selected row */ + + u8g_SetAddress(u8g, dev, 0); /* instruction mode mode */ + u8g_WriteByte(u8g, dev, 0x05c); /* write to ram */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +static const uint8_t u8g_dev_ssd13xx_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_ssd1322_nhd31oled_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1322_2bit_nhd_312_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 2; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1322_2bit_prepare_row(u8g, dev, i); /* this will also enable chip select */ +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x00); + u8g_WriteByte(u8g, dev, 0x00); +#endif + u8g_WriteSequence4LTo16GrDevice(u8g, dev, cnt, p); +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x00); + u8g_WriteByte(u8g, dev, 0x00); +#endif + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb8h2_base_fn(u8g, dev, msg, arg); +} + + +uint8_t u8g_dev_ssd1322_nhd31oled_2x_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1322_2bit_nhd_312_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 3; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1322_2bit_prepare_row(u8g, dev, i); /* this will also enable chip select */ +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x00); + u8g_WriteByte(u8g, dev, 0x00); +#endif + u8g_WriteSequence4LTo16GrDevice(u8g, dev, cnt, p); +#if !defined(U8G_16BIT) + u8g_WriteByte(u8g, dev, 0x00); + u8g_WriteByte(u8g, dev, 0x00); +#endif + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb16h2_base_fn(u8g, dev, msg, arg); +} + + +U8G_PB_DEV(u8g_dev_ssd1322_nhd31oled_gr_sw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1322_nhd31oled_gr_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1322_nhd31oled_gr_hw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1322_nhd31oled_gr_fn, U8G_COM_HW_SPI); + +#define DWIDTH (WIDTH*2) +uint8_t u8g_dev_ssd1322_nhd31oled_2x_gr_buf[DWIDTH] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_ssd1322_nhd31oled_2x_gr_pb = { {16, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_ssd1322_nhd31oled_2x_gr_buf}; +u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_gr_sw_spi = { u8g_dev_ssd1322_nhd31oled_2x_gr_fn, &u8g_dev_ssd1322_nhd31oled_2x_gr_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_ssd1322_nhd31oled_2x_gr_hw_spi = { u8g_dev_ssd1322_nhd31oled_2x_gr_fn, &u8g_dev_ssd1322_nhd31oled_2x_gr_pb, U8G_COM_HW_SPI }; + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_bw.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_bw.c new file mode 100644 index 0000000000000000000000000000000000000000..95853bdf259f942b7fff314679374c99d61946a2 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_bw.c @@ -0,0 +1,263 @@ +/* + + u8g_dev_ssd1325_nhd27oled_bw.c + + 1-Bit (BW) Driver for SSD1325 Controller (OLED Display) + Tested with NHD-2.7-12864UCY3 + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + SSD130x Monochrom OLED Controller + SSD131x Character OLED Controller + SSD132x Graylevel OLED Controller + SSD1331 Color OLED Controller + +*/ + +#ifdef OBSOLETE_CODE + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +/* http://www.newhavendisplay.com/app_notes/OLED_2_7_12864.txt */ +static const uint8_t u8g_dev_ssd1325_1bit_nhd_27_12864ucy3_init_seq[] PROGMEM = { + U8G_ESC_DLY(10), /* delay 10 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off, sleep mode */ + 0x0b3, 0x091, /* set display clock divide ratio/oscillator frequency (set clock as 135 frames/sec) */ + 0x0a8, 0x03f, /* multiplex ratio: 0x03f * 1/64 duty */ + 0x0a2, 0x04c, /* display offset, shift mapping ram counter */ + 0x0a1, 0x000, /* display start line */ + 0x0ad, 0x002, /* master configuration: disable embedded DC-DC, enable internal VCOMH */ + 0x0a0, 0x056, /* remap configuration, vertical address increment, enable nibble remap (upper nibble is left) */ + 0x086, /* full current range (0x084, 0x085, 0x086) */ + 0x0b8, /* set gray scale table */ + 0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x065, 0x076, + 0x081, 0x070, /* contrast, brightness, 0..128, Newhaven: 0x040 */ + 0x0b2, 0x051, /* frame frequency (row period) */ + 0x0b1, 0x055, /* phase length */ + 0x0bc, 0x010, /* pre-charge voltage level */ + 0x0b4, 0x002, /* set pre-charge compensation level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0b0, 0x028, /* enable pre-charge compensation (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0be, 0x01c, /* VCOMH voltage */ + 0x0bf, 0x002|0x00d, /* VSL voltage level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0a5, /* all pixel on */ + 0x0af, /* display on */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display mode */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd1325_1bit_nhd_27_12864ucy3_prepare_page_seq[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x015, /* column address... */ + 0x000, /* start at column 0 */ + 0x03f, /* end at column 63 (which is y == 127), because there are two pixel in one column */ + 0x075, /* row address... */ + U8G_ESC_END /* end of sequence */ +}; + + +static void u8g_dev_ssd1325_1bit_prepare_page(u8g_t *u8g, u8g_dev_t *dev) +{ + uint8_t page = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_1bit_nhd_27_12864ucy3_prepare_page_seq); + + page <<= 3; + u8g_WriteByte(u8g, dev, page); /* start at the selected page */ + page += 7; + u8g_WriteByte(u8g, dev, page); /* end within the selected page */ + + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +static void u8g_dev_ssd1325_1bit_2x_prepare_page(u8g_t *u8g, u8g_dev_t *dev, uint8_t is_odd) +{ + uint8_t page = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_1bit_nhd_27_12864ucy3_prepare_page_seq); + + page <<= 1; + page += is_odd; + + page <<= 3; + u8g_WriteByte(u8g, dev, page); /* start at the selected page */ + page += 7; + u8g_WriteByte(u8g, dev, page); /* end within the selected page */ + + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +/* assumes row autoincrement and activated nibble remap */ +#ifdef OLD +static void _OLD_u8g_dev_ssd1325_1bit_write_16_pixel(u8g_t *u8g, u8g_dev_t *dev, uint8_t left, uint8_t right) +{ + uint8_t d, cnt; + cnt = 8; + do + { + d = 0; + if ( left & 1 ) + d |= 0x0f0; + if ( right & 1 ) + d |= 0x00f; + u8g_WriteByte(u8g, dev, d); + left >>= 1; + right >>= 1; + cnt--; + }while ( cnt > 0 ); +} +#endif + +static void u8g_dev_ssd1325_1bit_write_16_pixel(u8g_t *u8g, u8g_dev_t *dev, uint8_t left, uint8_t right) +{ + uint8_t d, cnt; + static uint8_t buf[8]; + cnt = 8; + do + { + d = 0; + if ( left & 128 ) + d |= 0x0f0; + if ( right & 128 ) + d |= 0x00f; + cnt--; + buf[cnt] = d; + left <<= 1; + right <<= 1; + }while ( cnt > 0 ); + u8g_WriteSequence(u8g, dev, 8, buf); +} + +static void u8g_dev_ssd1325_1bit_write_buffer(u8g_t *u8g, u8g_dev_t *dev, uint8_t is_odd) +{ + uint8_t cnt, left, right; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + ptr = pb->buf; + cnt = pb->width; + if ( is_odd ) + ptr += cnt; + cnt >>= 1; + do + { + left = *ptr++; + right = *ptr++; + u8g_dev_ssd1325_1bit_write_16_pixel(u8g, dev, left, right); + cnt--; + } while( cnt > 0 ); +} + +uint8_t u8g_dev_ssd1325_nhd27oled_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_1bit_nhd_27_12864ucy3_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_dev_ssd1325_1bit_prepare_page(u8g, dev); + u8g_dev_ssd1325_1bit_write_buffer(u8g, dev, 0); + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_ssd1325_nhd27oled_2x_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_1bit_nhd_27_12864ucy3_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_dev_ssd1325_1bit_2x_prepare_page(u8g, dev, 0); + u8g_dev_ssd1325_1bit_write_buffer(u8g, dev, 0); + u8g_dev_ssd1325_1bit_2x_prepare_page(u8g, dev, 1); + u8g_dev_ssd1325_1bit_write_buffer(u8g, dev, 1); + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + } + return u8g_dev_pb16v1_base_fn(u8g, dev, msg, arg); +} + +/* disabled, see bw_new.c */ +/* +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_bw_sw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1325_nhd27oled_bw_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_bw_hw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1325_nhd27oled_bw_fn, U8G_COM_HW_SPI); +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_bw_parallel , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_ssd1325_nhd27oled_bw_fn, U8G_COM_FAST_PARALLEL); +*/ + +/* +uint8_t u8g_dev_ssd1325_nhd27oled_2x_bw_buf[WIDTH*2] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_ssd1325_nhd27oled_2x_bw_pb = { {16, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_ssd1325_nhd27oled_2x_bw_buf}; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_sw_spi = { u8g_dev_ssd1325_nhd27oled_2x_bw_fn, &u8g_dev_ssd1325_nhd27oled_2x_bw_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_hw_spi = { u8g_dev_ssd1325_nhd27oled_2x_bw_fn, &u8g_dev_ssd1325_nhd27oled_2x_bw_pb, U8G_COM_HW_SPI }; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_parallel = { u8g_dev_ssd1325_nhd27oled_2x_bw_fn, &u8g_dev_ssd1325_nhd27oled_2x_bw_pb, U8G_COM_FAST_PARALLEL }; +*/ + +#endif + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_bw_new.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_bw_new.c new file mode 100644 index 0000000000000000000000000000000000000000..c9f4a51ad80b49848b26e4911cba9f218501f301 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_bw_new.c @@ -0,0 +1,232 @@ +/* + + u8g_dev_ssd1325_nhd27oled_bw.c + + 1-Bit (BW) Driver for SSD1325 Controller (OLED Display) + Horizontal architecture, completly rewritten + Tested with NHD-2.7-12864UCY3 + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + SSD130x Monochrom OLED Controller + SSD131x Character OLED Controller + SSD132x Graylevel OLED Controller + SSD1331 Color OLED Controller + +*/ + +#include "u8g.h" + +/* width must be multiple of 8, largest value is 248 unless u8g 16 bit mode is enabled */ +#define WIDTH 128 +#define HEIGHT 64 + +/* http://www.newhavendisplay.com/app_notes/OLED_2_7_12864.txt */ +static const uint8_t u8g_dev_ssd1325_nhd_27_12864_init_seq[] PROGMEM = { + U8G_ESC_DLY(10), /* delay 10 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off, sleep mode */ + 0x0b3, 0x091, /* set display clock divide ratio/oscillator frequency (set clock as 135 frames/sec) */ + 0x0a8, 0x03f, /* multiplex ratio: 0x03f * 1/64 duty */ + 0x0a2, 0x04c, /* display offset, shift mapping ram counter */ + 0x0a1, 0x000, /* display start line */ + 0x0ad, 0x002, /* master configuration: disable embedded DC-DC, enable internal VCOMH */ + 0x0a0, 0x052, /* remap configuration, horizontal address increment (bit 2 = 0), enable nibble remap (upper nibble is left, bit 1 = 1) */ + 0x086, /* full current range (0x084, 0x085, 0x086) */ + 0x0b8, /* set gray scale table */ + 0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x065, 0x076, + + 0x081, 0x070, /* contrast, brightness, 0..128, Newhaven: 0x040 */ + 0x0b2, 0x051, /* frame frequency (row period) */ + 0x0b1, 0x055, /* phase length */ + 0x0bc, 0x010, /* pre-charge voltage level */ + 0x0b4, 0x002, /* set pre-charge compensation level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0b0, 0x028, /* enable pre-charge compensation (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0be, 0x01c, /* VCOMH voltage */ + 0x0bf, 0x002|0x00d, /* VSL voltage level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0a4, /* normal display mode */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd1325_prepare_row_seq[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x015, /* column address... */ + 0x000, /* start at column 0 */ + 0x03f, /* end at column 63 (which is y == 127), because there are two pixel in one column */ + 0x075, /* row address... */ + U8G_ESC_END /* end of sequence */ +}; + +static void u8g_dev_ssd1325_prepare_row(u8g_t *u8g, u8g_dev_t *dev, uint8_t delta_row) +{ + uint8_t row = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + row *= ((u8g_pb_t *)(dev->dev_mem))->p.page_height; + row += delta_row; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_prepare_row_seq); + + u8g_WriteByte(u8g, dev, row); /* start at the selected row */ + u8g_WriteByte(u8g, dev, row+1); /* end within the selected row */ + + //u8g_SetAddress(u8g, dev, 0); /* instruction mode mode */ + //u8g_WriteByte(u8g, dev, 0x05c); /* write to ram */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +static const uint8_t u8g_dev_ssd13xx_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +static uint8_t u8g_dev_ssd1325_nhd27oled_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + //case U8G_DEV_MSG_IS_BBX_INTERSECTION: + // return u8g_pb_IsIntersection((u8g_pb_t *)(dev->dev_mem), (u8g_dev_arg_bbx_t *)arg); + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_nhd_27_12864_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 3; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1325_prepare_row(u8g, dev, i); /* this will also enable chip select */ + u8g_WriteSequenceBWTo16GrDevice(u8g, dev, cnt, p); + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb8h1_base_fn(u8g, dev, msg, arg); +} + +static uint8_t u8g_dev_ssd1325_nhd27oled_2x_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_nhd_27_12864_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 3; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1325_prepare_row(u8g, dev, i); /* this will also enable chip select */ + u8g_WriteSequenceBWTo16GrDevice(u8g, dev, cnt, p); + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + break; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb16h1_base_fn(u8g, dev, msg, arg); +} + + + +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_bw_sw_spi , WIDTH, HEIGHT, 8, u8g_dev_ssd1325_nhd27oled_bw_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_bw_hw_spi , WIDTH, HEIGHT, 8, u8g_dev_ssd1325_nhd27oled_bw_fn, U8G_COM_HW_SPI); +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_bw_parallel , WIDTH, HEIGHT, 8, u8g_dev_ssd1325_nhd27oled_bw_fn, U8G_COM_FAST_PARALLEL); + +uint8_t u8g_dev_ssd1325_nhd27oled_2x_bw_buf[WIDTH*2] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_ssd1325_nhd27oled_2x_bw_pb = { {16, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_ssd1325_nhd27oled_2x_bw_buf}; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_sw_spi = { u8g_dev_ssd1325_nhd27oled_2x_bw_fn, &u8g_dev_ssd1325_nhd27oled_2x_bw_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_hw_spi = { u8g_dev_ssd1325_nhd27oled_2x_bw_fn, &u8g_dev_ssd1325_nhd27oled_2x_bw_pb, U8G_COM_HW_SPI }; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_bw_parallel = { u8g_dev_ssd1325_nhd27oled_2x_bw_fn, &u8g_dev_ssd1325_nhd27oled_2x_bw_pb, U8G_COM_FAST_PARALLEL }; + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_gr.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_gr.c new file mode 100644 index 0000000000000000000000000000000000000000..d00d18ec4f32999494783a2fcfd7edba548800cb --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_gr.c @@ -0,0 +1,255 @@ +/* + + u8g_dev_ssd1325_nhd27oled_gr.c + + 2-Bit (gray level) Driver for SSD1325 Controller (OLED Display) + Tested with NHD-2.7-12864UCY3 + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + SSD130x Monochrom OLED Controller + SSD131x Character OLED Controller + SSD132x Graylevel OLED Controller + SSD1331 Color OLED Controller + +*/ + +#ifdef OBSOLETE_CODE + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 + +/* http://www.newhavendisplay.com/app_notes/OLED_2_7_12864.txt */ +static const uint8_t u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_init_seq[] PROGMEM = { + U8G_ESC_DLY(10), /* delay 10 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off, sleep mode */ + 0x0b3, 0x091, /* set display clock divide ratio/oscillator frequency (set clock as 135 frames/sec) */ + 0x0a8, 0x03f, /* multiplex ratio: 0x03f * 1/64 duty */ + 0x0a2, 0x04c, /* display offset, shift mapping ram counter */ + 0x0a1, 0x000, /* display start line */ + 0x0ad, 0x002, /* master configuration: disable embedded DC-DC, enable internal VCOMH */ + 0x0a0, 0x056, /* remap configuration, vertical address increment, enable nibble remap (upper nibble is left) */ + 0x086, /* full current range (0x084, 0x085, 0x086) */ + 0x0b8, /* set gray scale table */ + //0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x065, 0x076, + 0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x077, 0x077, // 4L mode uses 0, 2, 4, 7 + 0x081, 0x070, /* contrast, brightness, 0..128, Newhaven: 0x040 */ + 0x0b2, 0x051, /* frame frequency (row period) */ + 0x0b1, 0x055, /* phase length */ + 0x0bc, 0x010, /* pre-charge voltage level */ + 0x0b4, 0x002, /* set pre-charge compensation level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0b0, 0x028, /* enable pre-charge compensation (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0be, 0x01c, /* VCOMH voltage */ + 0x0bf, 0x002|0x00d, /* VSL voltage level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0a5, /* all pixel on */ + 0x0af, /* display on */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display mode */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_prepare_page_seq[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x015, /* column address... */ + 0x000, /* start at column 0 */ + 0x03f, /* end at column 63 (which is y == 127), because there are two pixel in one column */ + 0x075, /* row address... */ + U8G_ESC_END /* end of sequence */ +}; + + +static void u8g_dev_ssd1325_2bit_prepare_page(u8g_t *u8g, u8g_dev_t *dev) +{ + uint8_t page = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_prepare_page_seq); + + page <<= 2; + u8g_WriteByte(u8g, dev, page); /* start at the selected page */ + page += 3; + u8g_WriteByte(u8g, dev, page); /* end within the selected page */ + + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +static void u8g_dev_ssd1325_2bit_2x_prepare_page(u8g_t *u8g, u8g_dev_t *dev, uint8_t is_odd) +{ + uint8_t page = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_prepare_page_seq); + + page <<= 1; + page += is_odd; + + + page <<= 2; + u8g_WriteByte(u8g, dev, page); /* start at the selected page */ + page += 3; + u8g_WriteByte(u8g, dev, page); /* end within the selected page */ + + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +/* assumes row autoincrement and activated nibble remap */ +static void u8g_dev_ssd1325_2bit_write_4_pixel(u8g_t *u8g, u8g_dev_t *dev, uint8_t left, uint8_t right) +{ + uint8_t d, tmp, cnt; + cnt = 4; + do + { + d = left; + d &= 3; + d <<= 4; + tmp = right; + tmp &= 3; + d |= tmp; + d <<= 2; + u8g_WriteByte(u8g, dev, d); + left >>= 2; + right >>= 2; + cnt--; + }while ( cnt > 0 ); +} + +static void u8g_dev_ssd1325_2bit_write_buffer(u8g_t *u8g, u8g_dev_t *dev) +{ + uint8_t cnt, left, right; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + cnt = pb->width; + cnt >>= 1; + ptr = pb->buf; + do + { + left = *ptr++; + right = *ptr++; + u8g_dev_ssd1325_2bit_write_4_pixel(u8g, dev, left, right); + cnt--; + } while( cnt > 0 ); +} + +static void u8g_dev_ssd1325_2bit_2x_write_buffer(u8g_t *u8g, u8g_dev_t *dev, uint8_t is_odd) +{ + uint8_t cnt, left, right; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + ptr = pb->buf; + cnt = pb->width; + if ( is_odd ) + ptr += cnt; + cnt >>= 1; + do + { + left = *ptr++; + right = *ptr++; + u8g_dev_ssd1325_2bit_write_4_pixel(u8g, dev, left, right); + cnt--; + } while( cnt > 0 ); +} + +static uint8_t u8g_dev_ssd1325_nhd27oled_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_dev_ssd1325_2bit_prepare_page(u8g, dev); + u8g_dev_ssd1325_2bit_write_buffer(u8g, dev); + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v2_base_fn(u8g, dev, msg, arg); +} + +static uint8_t u8g_dev_ssd1325_nhd27oled_2x_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_dev_ssd1325_2bit_2x_prepare_page(u8g, dev, 0); + u8g_dev_ssd1325_2bit_2x_write_buffer(u8g, dev, 0); + u8g_dev_ssd1325_2bit_2x_prepare_page(u8g, dev, 1); + u8g_dev_ssd1325_2bit_2x_write_buffer(u8g, dev, 1); + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb16v2_base_fn(u8g, dev, msg, arg); +} + +//U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_gr_sw_spi , WIDTH, HEIGHT, 4, u8g_dev_ssd1325_nhd27oled_gr_fn, U8G_COM_SW_SPI); +//U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_gr_hw_spi , WIDTH, HEIGHT, 4, u8g_dev_ssd1325_nhd27oled_gr_fn, U8G_COM_HW_SPI); + +//uint8_t u8g_dev_ssd1325_nhd27oled_2x_buf[WIDTH*2] U8G_NOCOMMON ; +//u8g_pb_t u8g_dev_ssd1325_nhd27oled_2x_pb = { {8, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_ssd1325_nhd27oled_2x_buf}; +//u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_gr_sw_spi = { u8g_dev_ssd1325_nhd27oled_2x_gr_fn, &u8g_dev_ssd1325_nhd27oled_2x_pb, U8G_COM_SW_SPI }; +//u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_gr_hw_spi = { u8g_dev_ssd1325_nhd27oled_2x_gr_fn, &u8g_dev_ssd1325_nhd27oled_2x_pb, U8G_COM_HW_SPI }; + + +#endif /* OBSOLETE_CODE */ diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_gr_new.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_gr_new.c new file mode 100644 index 0000000000000000000000000000000000000000..2e61d9a57c99c04984571db21005db3524d1a024 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1325_nhd27oled_gr_new.c @@ -0,0 +1,227 @@ +/* + + u8g_dev_ssd1325_nhd27oled_gr.c + + 2-Bit (gray level) Driver for SSD1325 Controller (OLED Display) + Rewritten with new architecture + Tested with NHD-2.7-12864UCY3 + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + SSD130x Monochrom OLED Controller + SSD131x Character OLED Controller + SSD132x Graylevel OLED Controller + SSD1331 Color OLED Controller + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 + +/* http://www.newhavendisplay.com/app_notes/OLED_2_7_12864.txt */ +static const uint8_t u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_init_seq[] PROGMEM = { + U8G_ESC_DLY(10), /* delay 10 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off, sleep mode */ + 0x0b3, 0x091, /* set display clock divide ratio/oscillator frequency (set clock as 135 frames/sec) */ + 0x0a8, 0x03f, /* multiplex ratio: 0x03f * 1/64 duty */ + 0x0a2, 0x04c, /* display offset, shift mapping ram counter */ + 0x0a1, 0x000, /* display start line */ + 0x0ad, 0x002, /* master configuration: disable embedded DC-DC, enable internal VCOMH */ + 0x0a0, 0x052, /* remap configuration, horizontal address increment (bit 2 = 0), enable nibble remap (upper nibble is left, bit 1 = 1), old values: 0x0a0 0x0a6 */ + 0x086, /* full current range (0x084, 0x085, 0x086) */ + 0x0b8, /* set gray scale table */ + //0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x065, 0x076, + 0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x077, 0x077, // 4L mode uses 0, 2, 4, 7 + 0x081, 0x070, /* contrast, brightness, 0..128, Newhaven: 0x040 */ + 0x0b2, 0x051, /* frame frequency (row period) */ + 0x0b1, 0x055, /* phase length */ + 0x0bc, 0x010, /* pre-charge voltage level */ + 0x0b4, 0x002, /* set pre-charge compensation level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0b0, 0x028, /* enable pre-charge compensation (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0be, 0x01c, /* VCOMH voltage */ + 0x0bf, 0x002|0x00d, /* VSL voltage level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0a4, /* normal display mode */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_prepare_page_seq[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x015, /* column address... */ + 0x000, /* start at column 0 */ + 0x03f, /* end at column 63 (which is y == 127), because there are two pixel in one column */ + 0x075, /* row address... */ + U8G_ESC_END /* end of sequence */ +}; + +static void u8g_dev_ssd1325_gr_prepare_row(u8g_t *u8g, u8g_dev_t *dev, uint8_t delta_row) +{ + uint8_t row = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + row *= ((u8g_pb_t *)(dev->dev_mem))->p.page_height; + row += delta_row; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_prepare_page_seq); + + u8g_WriteByte(u8g, dev, row); /* start at the selected row */ + u8g_WriteByte(u8g, dev, row+1); /* end within the selected row */ + + //u8g_SetAddress(u8g, dev, 0); /* instruction mode mode */ + //u8g_WriteByte(u8g, dev, 0x05c); /* write to ram */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +static const uint8_t u8g_dev_ssd13xx_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ae, /* display off */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd13xx_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + + +static uint8_t u8g_dev_ssd1325_nhd27oled_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 2; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1325_gr_prepare_row(u8g, dev, i); /* this will also enable chip select */ + u8g_WriteSequence4LTo16GrDevice(u8g, dev, cnt, p); + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb8h2_base_fn(u8g, dev, msg, arg); +} + + + +static uint8_t u8g_dev_ssd1325_nhd27oled_2x_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1325_2bit_nhd_27_12864ucy3_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + uint8_t *p = pb->buf; + u8g_uint_t cnt; + cnt = pb->width; + cnt >>= 2; + + for( i = 0; i < pb->p.page_height; i++ ) + { + u8g_dev_ssd1325_gr_prepare_row(u8g, dev, i); /* this will also enable chip select */ + u8g_WriteSequence4LTo16GrDevice(u8g, dev, cnt, p); + u8g_SetChipSelect(u8g, dev, 0); + p+=cnt; + } + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd13xx_sleep_off); + return 1; + } + return u8g_dev_pb16h2_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_gr_sw_spi , WIDTH, HEIGHT, 4, u8g_dev_ssd1325_nhd27oled_gr_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1325_nhd27oled_gr_hw_spi , WIDTH, HEIGHT, 4, u8g_dev_ssd1325_nhd27oled_gr_fn, U8G_COM_HW_SPI); + +uint8_t u8g_dev_ssd1325_nhd27oled_2x_buf[WIDTH*2] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_ssd1325_nhd27oled_2x_pb = { {8, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_ssd1325_nhd27oled_2x_buf}; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_gr_sw_spi = { u8g_dev_ssd1325_nhd27oled_2x_gr_fn, &u8g_dev_ssd1325_nhd27oled_2x_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_ssd1325_nhd27oled_2x_gr_hw_spi = { u8g_dev_ssd1325_nhd27oled_2x_gr_fn, &u8g_dev_ssd1325_nhd27oled_2x_pb, U8G_COM_HW_SPI }; diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1327_96x96_gr.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1327_96x96_gr.c new file mode 100644 index 0000000000000000000000000000000000000000..5e3b4467497d3d829a656c06b75b888d2190ee59 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_ssd1327_96x96_gr.c @@ -0,0 +1,299 @@ +/* + + u8g_dev_ssd1327_96x96_gr.c + + 2-Bit (graylevel) Driver for SSD1327 Controller (OLED Display) + Tested with Seedstudio 96x96 Oled (LY120) + http://www.seeedstudio.com/wiki/index.php?title=Twig_-_OLED_96x96 + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + SSD130x Monochrom OLED Controller + SSD131x Character OLED Controller + SSD132x Graylevel OLED Controller + SSD1331 Color OLED Controller + +*/ + +#include "u8g.h" + +#define WIDTH 96 +#define HEIGHT 96 +#define XOFFSET 8 + +/* + http://www.seeedstudio.com/wiki/index.php?title=Twig_-_OLED_96x96 +*/ +static const uint8_t u8g_dev_ssd1327_2bit_96x96_init_seq[] PROGMEM = { + U8G_ESC_DLY(10), /* delay 10 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x0fd, 0x012, /* unlock display, usually not required because the display is unlocked after reset */ + 0x0ae, /* display off, sleep mode */ + 0x0a8, 0x05f, /* multiplex ratio: 0x05f * 1/64 duty */ + 0x0a1, 0x000, /* display start line */ + 0x0a2, 0x060, /* display offset, shift mapping ram counter */ + //0x0a2, 0x04c, /* NHD: display offset, shift mapping ram counter */ + 0x0a0, 0x046, /* remap configuration, vertical address increment, enable nibble remap (upper nibble is left) */ + //0x0a0, 0x056, /* NHD: remap configuration, vertical address increment, enable nibble remap (upper nibble is left) */ + 0x0ab, 0x001, /* Enable internal VDD regulator (RESET) */ + 0x081, 0x053, /* contrast, brightness, 0..128, Newhaven: 0x040, LY120 0x053, 0x070 seems also ok */ + 0x0b1, 0x051, /* phase length */ + 0x0b3, 0x001, /* set display clock divide ratio/oscillator frequency */ + 0x0b9, /* use linear lookup table */ +#if 0 + 0x0b8, /* set gray scale table */ + //0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x065, 0x076, + 0x01, 0x011, 0x022, 0x032, 0x043, 0x054, 0x077, 0x077, // 4L mode uses 0, 2, 4, 7 +#endif + 0x0bc, 0x008, /* pre-charge voltage level */ + 0x0be, 0x007, /* VCOMH voltage */ + 0x0b6, 0x001, /* second precharge */ + 0x0d5, 0x062, /* enable second precharge, internal vsl (bit0 = 0) */ + +#if 0 + // the following commands are not used by the SeeedGrayOLED sequence */ + 0x0ad, 0x002, /* master configuration: disable embedded DC-DC, enable internal VCOMH */ + 0x086, /* full current range (0x084, 0x085, 0x086) */ + 0x0b2, 0x051, /* frame frequency (row period) */ + 0x0b4, 0x002, /* set pre-charge compensation level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0b0, 0x028, /* enable pre-charge compensation (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ + 0x0bf, 0x002|0x00d, /* VSL voltage level (not documented in the SDD1325 datasheet, but used in the NHD init seq.) */ +#endif + + 0x0a5, /* all pixel on */ + //0x02e, /* no scroll (according to SeeedGrayOLED sequence) */ + 0x0af, /* display on */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display mode */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* all pixel on */ + 0x0af, /* display on */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display mode */ + + 0x015, /* column address... */ + 0x008, /* start at column 8, special for the LY120 ??? */ + 0x037, /* end at column 55, note: there are two pixel in one column */ + + 0x075, /* row address... */ + 0x008, + 0x05f, + + U8G_ESC_ADR(1), /* data mode */ + 0x000f, 0x000f, 0x0000, 0x0000, 0x000f,0x000f,0x0000,0x0000, + 0x000f, 0x000f, 0x0000, 0x0000, 0x000f,0x000f,0x0000,0x0000, + 0x000f, 0x000f, 0x0000, 0x0000, 0x000f,0x000f,0x0000,0x0000, + 0x000f, 0x000f, 0x0000, 0x0000, 0x000f,0x000f,0x0000,0x0000, + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_ssd1327_2bit_96x96_prepare_page_seq[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x015, /* column address... */ + XOFFSET, /* start at column 8, special for the LY120 ??? */ + 0x037, /* end at column 55, note: there are two pixel in one column */ + 0x075, /* row address... */ + U8G_ESC_END /* end of sequence */ +}; + + +static void u8g_dev_ssd1327_2bit_prepare_page(u8g_t *u8g, u8g_dev_t *dev) +{ + uint8_t page = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1327_2bit_96x96_prepare_page_seq); + + page <<= 2; + u8g_WriteByte(u8g, dev, page); /* start at the selected page */ + page += 3; + u8g_WriteByte(u8g, dev, page); /* end within the selected page */ + + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +static void u8g_dev_ssd1327_2bit_2x_prepare_page(u8g_t *u8g, u8g_dev_t *dev, uint8_t is_odd) +{ + uint8_t page = ((u8g_pb_t *)(dev->dev_mem))->p.page; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1327_2bit_96x96_prepare_page_seq); + + page <<= 1; + page += is_odd; + + page <<= 2; + u8g_WriteByte(u8g, dev, page); /* start at the selected page */ + page += 3; + u8g_WriteByte(u8g, dev, page); /* end within the selected page */ + + u8g_SetAddress(u8g, dev, 1); /* data mode */ +} + +/* assumes row autoincrement and activated nibble remap */ +static void u8g_dev_ssd1327_2bit_write_4_pixel(u8g_t *u8g, u8g_dev_t *dev, uint8_t left, uint8_t right) +{ + uint8_t d, tmp, cnt; + static uint8_t buf[4]; + buf[0] = 0; + buf[1] = 0; + buf[2] = 0; + buf[3] = 0; + cnt = 0; + do + { + if ( left == 0 && right == 0 ) + break; + d = left; + d &= 3; + d <<= 4; + tmp = right; + tmp &= 3; + d |= tmp; + d <<= 2; + buf[cnt] = d; + left >>= 2; + right >>= 2; + cnt++; + }while ( cnt < 4 ); + u8g_WriteSequence(u8g, dev, 4, buf); +} + +static void u8g_dev_ssd1327_2bit_write_buffer(u8g_t *u8g, u8g_dev_t *dev) +{ + uint8_t cnt, left, right; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + cnt = pb->width; + cnt >>= 1; + ptr = pb->buf; + do + { + left = *ptr++; + right = *ptr++; + u8g_dev_ssd1327_2bit_write_4_pixel(u8g, dev, left, right); + cnt--; + } while( cnt > 0 ); +} + +static void u8g_dev_ssd1327_2bit_2x_write_buffer(u8g_t *u8g, u8g_dev_t *dev, uint8_t is_odd) +{ + uint8_t cnt, left, right; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + ptr = pb->buf; + cnt = pb->width; + if ( is_odd ) + ptr += cnt; + cnt >>= 1; + do + { + left = *ptr++; + right = *ptr++; + u8g_dev_ssd1327_2bit_write_4_pixel(u8g, dev, left, right); + cnt--; + } while( cnt > 0 ); +} + +uint8_t u8g_dev_ssd1327_96x96_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1327_2bit_96x96_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_dev_ssd1327_2bit_prepare_page(u8g, dev); + u8g_dev_ssd1327_2bit_write_buffer(u8g, dev); + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v2_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_ssd1327_96x96_2x_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_ssd1327_2bit_96x96_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_dev_ssd1327_2bit_2x_prepare_page(u8g, dev, 0); + u8g_dev_ssd1327_2bit_2x_write_buffer(u8g, dev, 0); + u8g_dev_ssd1327_2bit_2x_prepare_page(u8g, dev, 1); + u8g_dev_ssd1327_2bit_2x_write_buffer(u8g, dev, 1); + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb16v2_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_ssd1327_96x96_gr_sw_spi , WIDTH, HEIGHT, 4, u8g_dev_ssd1327_96x96_gr_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_ssd1327_96x96_gr_hw_spi , WIDTH, HEIGHT, 4, u8g_dev_ssd1327_96x96_gr_fn, U8G_COM_HW_SPI); +U8G_PB_DEV(u8g_dev_ssd1327_96x96_gr_i2c , WIDTH, HEIGHT, 4, u8g_dev_ssd1327_96x96_gr_fn, U8G_COM_SSD_I2C); + +#define DWIDTH (2*WIDTH) +uint8_t u8g_dev_ssd1327_96x96_2x_buf[DWIDTH] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_ssd1327_96x96_2x_pb = { {8, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_ssd1327_96x96_2x_buf}; +u8g_dev_t u8g_dev_ssd1327_96x96_2x_gr_sw_spi = { u8g_dev_ssd1327_96x96_2x_gr_fn, &u8g_dev_ssd1327_96x96_2x_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_ssd1327_96x96_2x_gr_hw_spi = { u8g_dev_ssd1327_96x96_2x_gr_fn, &u8g_dev_ssd1327_96x96_2x_pb, U8G_COM_HW_SPI }; +u8g_dev_t u8g_dev_ssd1327_96x96_2x_gr_i2c = { u8g_dev_ssd1327_96x96_2x_gr_fn, &u8g_dev_ssd1327_96x96_2x_pb, U8G_COM_SSD_I2C }; + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_64128n.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_64128n.c new file mode 100644 index 0000000000000000000000000000000000000000..01fc9fc0cb151690c89e1a067e0d713dd2cc29a2 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_64128n.c @@ -0,0 +1,153 @@ +/* + + u8g_dev_st7565_64128n.c (Displaytech) + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +/* init sequence from https://github.com/adafruit/ST7565-LCD/blob/master/ST7565/ST7565.cpp */ +static const uint8_t u8g_dev_st7565_64128n_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + 0x0A2, /* 0x0a2: LCD bias 1/9 (according to Displaytech 64128N datasheet) */ + 0x0A0, /* Normal ADC Select (according to Displaytech 64128N datasheet) */ + + 0x0c8, /* common output mode: set scan direction normal operation/SHL Select, 0x0c0 --> SHL = 0, normal, 0x0c8 --> SHL = 1 */ + 0x040, /* Display start line for Displaytech 64128N */ + + 0x028 | 0x04, /* power control: turn on voltage converter */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x028 | 0x06, /* power control: turn on voltage regulator */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x028 | 0x07, /* power control: turn on voltage follower */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x010, /* Set V0 voltage resistor ratio. Setting for controlling brightness of Displaytech 64128N */ + + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + + 0x081, /* set contrast */ + 0x01e, /* Contrast value. Setting for controlling brightness of Displaytech 64128N */ + + + 0x0af, /* display on */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_64128n_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0x10 */ + 0x000, /* set lower 4 bit of the col adr to 0x00. Changed for DisplayTech 64128N */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_64128n_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ac, /* static indicator off */ + 0x000, /* indicator register set (not sure if this is required) */ + 0x0ae, /* display off */ + 0x0a5, /* all points on */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_64128n_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0a4, /* all points off */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7565_64128n_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_64128n_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_64128n_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_64128n_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_64128n_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7565_64128n_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_64128n_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_st7565_64128n_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_64128n_fn, U8G_COM_HW_SPI); + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_dogm128.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_dogm128.c new file mode 100644 index 0000000000000000000000000000000000000000..095ef369c1644d360c2c2ca3947bd1e17203c103 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_dogm128.c @@ -0,0 +1,140 @@ +/* + + u8g_dev_st7565_dogm128.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +const uint8_t u8g_dev_st7565_dogm128_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x040, /* set display start line */ + 0x0a1, /* ADC set to reverse */ + 0x0c0, /* common output mode: set scan direction normal operation */ + 0x0a6, /* display normal (none reverse) */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + 0x0f8, /* set booster ratio to */ + 0x000, /* 4x */ + 0x027, /* set V0 voltage resistor ratio to large */ + 0x081, /* set contrast */ + 0x018, /* contrast value, EA default: 0x016 */ + 0x0ac, /* indicator */ + 0x000, /* disable */ + 0x0a4, /* normal display (not all on) */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_dogm128_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 0 */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_dogm128_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ac, /* static indicator off */ + 0x000, /* indicator register set (not sure if this is required) */ + 0x0ae, /* display off */ + 0x0a5, /* all points on */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_dogm128_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0a4, /* all points off */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7565_dogm128_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm128_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm128_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm128_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm128_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7565_dogm128_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_dogm128_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_st7565_dogm128_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_dogm128_fn, U8G_COM_HW_SPI); + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_dogm132.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_dogm132.c new file mode 100644 index 0000000000000000000000000000000000000000..a76d54b3fdc94335e2634814648ac886f8362497 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_dogm132.c @@ -0,0 +1,157 @@ +/* + + u8g_dev_st7565_dogm132.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 132 +#define HEIGHT 32 +#define PAGE_HEIGHT 8 + +static const uint8_t u8g_dev_st7565_dogm132_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x040, /* set display start line to 0 */ + 0x0a1, /* ADC set to reverse */ + 0x0c0, /* common output mode */ + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + 0x0f8, /* set booster ratio to */ + 0x000, /* 4x */ + 0x023, /* set V0 voltage resistor ratio to large */ + 0x081, /* set contrast */ + 0x01f, /* contrast value, EA default: 0x01f */ + 0x0ac, /* indicator */ + 0x000, /* disable */ + 0x0af, /* display on */ + +#ifdef OBSOLETE_DOGM128 + 0x040, /* set display start line */ + 0x0c8, /* set scan direction inverse operation */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + 0x0f8, /* set booster ratio to */ + 0x000, /* 4x */ + 0x027, /* set V0 voltage resistor ratio to large */ + 0x081, /* set contrast */ + 0x018, /* contrast value, EA default: 0x016 */ + 0x0ac, /* indicator */ + 0x000, /* disable */ + 0x0af, /* display on */ +#endif + + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_dogm132_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 0 */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_dogm132_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ac, /* static indicator off */ + 0x000, /* indicator register set (not sure if this is required) */ + 0x0ae, /* display off */ + 0x0a5, /* all points on */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_dogm132_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0a4, /* all points off */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7565_dogm132_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm132_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm132_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm132_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_dogm132_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7565_dogm132_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_dogm132_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_st7565_dogm132_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_dogm132_fn, U8G_COM_HW_SPI); diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_lm6059.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_lm6059.c new file mode 100644 index 0000000000000000000000000000000000000000..ab8ed39b6476a6b1177a48757ba3ed0196659890 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_lm6059.c @@ -0,0 +1,157 @@ +/* + + u8g_dev_st7565_lm6059.c (Adafruit display) + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +/* init sequence from https://github.com/adafruit/ST7565-LCD/blob/master/ST7565/ST7565.cpp */ +static const uint8_t u8g_dev_st7565_lm6059_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + 0x0a3, /* 0x0a2: LCD bias 1/9 (suggested for the LM6063), 0x0a3: Used by Adafruit, 0x0a2 does not work */ + /* the LM6059 vs LM6063, ADC and SHL have inverted settings */ + 0x0a0, /* 0x0a1: ADC set to normal (suggested for the LM6059), 0x0a0: Used by Adafruit -> normal mode */ + 0x0c8, /* common output mode: set scan direction normal operation/SHL Select, 0x0c0 --> SHL = 0, normal, 0x0c8 --> SHL = 1 */ + 0x060, /* set display start line */ + + 0x028 | 0x04, /* power control: turn on voltage converter */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x028 | 0x06, /* power control: turn on voltage regulator */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x028 | 0x07, /* power control: turn on voltage follower */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x026, /* set V0 voltage resistor ratio to 6 (Adafruit Value, no info from LM6063 Manual) */ + + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + + 0x081, /* set contrast */ + 0x018, /* contrast value*/ + + /*0x0ac,*/ /* indicator */ + /*0x000,*/ /* disable */ + + 0x0af, /* display on */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_lm6059_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x001, /* set lower 4 bit of the col adr */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_lm6059_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ac, /* static indicator off */ + 0x000, /* indicator register set (not sure if this is required) */ + 0x0ae, /* display off */ + 0x0a5, /* all points on */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_lm6059_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0a4, /* all points off */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +uint8_t u8g_dev_st7565_lm6059_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6059_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7565_lm6059_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_lm6059_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_st7565_lm6059_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_lm6059_fn, U8G_COM_HW_SPI); + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_lm6063.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_lm6063.c new file mode 100644 index 0000000000000000000000000000000000000000..47ccb1ec707e3633bde4e55fed7c8a16df59b569 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_lm6063.c @@ -0,0 +1,188 @@ +/* + + u8g_dev_st7565_lm6063.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +#ifdef OLD_ADAFRUIT_CODE +static const uint8_t OLD_u8g_dev_st7565_lm6063_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x040, /* set display start line */ + 0x0a1, /* ADC set to reverse */ + 0x0c8, /* common output mode: set scan direction normal operation/SHL Select / 17 Jan: seems to be a bug, must be 0x0c0 */ + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + /*0x0f8,*/ /* set booster ratio to */ + /*0x000, */ /* 4x */ + /*0x027,*/ /* set V0 voltage resistor ratio to large */ + 0x081, /* set contrast */ + 0x018, /* contrast value*/ + 0x0ac, /* indicator */ + 0x000, /* disable */ + 0x0af, /* display on */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; +#endif + +/* init sequence from https://github.com/adafruit/ST7565-LCD/blob/master/ST7565/ST7565.cpp */ +static const uint8_t u8g_dev_st7565_lm6063_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + 0x0a3, /* 0x0a2: LCD bias 1/9 (suggested for the LM6063), 0x0a3: Used by Adafruit */ + 0x0a1, /* 0x0a1: ADC set to reverse (suggested for the LM6063), 0x0a0: Used by Adafruit -> normal mode */ + 0x0c0, /* common output mode: set scan direction normal operation/SHL Select, 0x0c0 --> SHL = 0, normal, 0x0c8 --> SHL = 1 */ + 0x040, /* set display start line */ + + 0x028 | 0x04, /* power control: turn on voltage converter */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x028 | 0x06, /* power control: turn on voltage regulator */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x028 | 0x07, /* power control: turn on voltage follower */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x026, /* set V0 voltage resistor ratio to 6 (Adafruit Value, no info from LM6063 Manual) */ + + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + + 0x081, /* set contrast */ + 0x018, /* contrast value*/ + + /*0x0ac,*/ /* indicator */ + /*0x000,*/ /* disable */ + + 0x0af, /* display on */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_lm6063_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 0 */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_st7565_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ac, /* static indicator off */ + 0x000, /* indicator register set (not sure if this is required) */ + 0x0ae, /* display off */ + 0x0a5, /* all points on */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_st7565_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0a4, /* all points off */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +uint8_t u8g_dev_st7565_lm6063_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6063_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_lm6063_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_st7565_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_st7565_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7565_lm6063_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_lm6063_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_st7565_lm6063_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_lm6063_fn, U8G_COM_HW_SPI); + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_nhd_c12832.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_nhd_c12832.c new file mode 100644 index 0000000000000000000000000000000000000000..ed80a0693177207fa01a2b6a230c607c0582766c --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_nhd_c12832.c @@ -0,0 +1,143 @@ +/* + + u8g_dev_st7565_nhd_c12832.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 32 +#define PAGE_HEIGHT 8 + +static const uint8_t u8g_dev_st7565_c12832_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x040, /* set display start line to 0 */ + 0x0a0, /* ADC set, values: a0=normal, a1=reverse */ + 0x0c8, /* common output mode: c0=normal, c8=reverse */ + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + 0x0f8, /* set booster ratio to */ + 0x000, /* 4x */ + 0x023, /* set V0 voltage resistor ratio to large */ + 0x081, /* set contrast */ + 0x00a, /* contrast value */ + 0x0ac, /* indicator */ + 0x000, /* disable */ + 0x0af, /* display on */ + + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_c12832_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 0 */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_c12832_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ac, /* static indicator off */ + 0x000, /* indicator register set (not sure if this is required) */ + 0x0ae, /* display off */ + 0x0a5, /* all points on */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_c12832_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0a4, /* all points off */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7565_c12832_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_c12832_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_c12832_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_c12832_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_c12832_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7565_nhd_c12832_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_c12832_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_st7565_nhd_c12832_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_c12832_fn, U8G_COM_HW_SPI); +U8G_PB_DEV(u8g_dev_st7565_nhd_c12832_parallel, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_c12832_fn, U8G_COM_PARALLEL); diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_nhd_c12864.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_nhd_c12864.c new file mode 100644 index 0000000000000000000000000000000000000000..5e3f8b9fe891426b0c49bb7666c6e0824f639db3 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7565_nhd_c12864.c @@ -0,0 +1,145 @@ +/* + + u8g_dev_st7565_nhd_c12864.c + + Support for the NHD-C12864A1Z-FSB-FBW (Newhaven Display) + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +const uint8_t u8g_dev_st7565_nhd_c12864_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(10), /* do reset low pulse with (10*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x040, /* set display start line */ + 0x0a1, /* ADC set to reverse */ + 0x0c0, /* common output mode: set scan direction normal operation */ + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + 0x0f8, /* set booster ratio to */ + 0x000, /* 4x */ + 0x027, /* set V0 voltage resistor ratio to large */ + 0x081, /* set contrast */ + 0x008, /* contrast: 0x008 is a good value for NHD C12864, Nov 2012: User reports that 0x1a is much better */ + 0x0ac, /* indicator */ + 0x000, /* disable */ + 0x0af, /* display on */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_nhd_c12864_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x004, /* set lower 4 bit of the col adr to 4 (NHD C12864) */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_c12864_sleep_on[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0ac, /* static indicator off */ + 0x000, /* indicator register set (not sure if this is required) */ + 0x0ae, /* display off */ + 0x0a5, /* all points on */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_st7565_c12864_sleep_off[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x0a4, /* all points off */ + 0x0af, /* display on */ + U8G_ESC_DLY(50), /* delay 50 ms */ + U8G_ESC_CS(1), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7565_nhd_c12864_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_nhd_c12864_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_nhd_c12864_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + case U8G_DEV_MSG_SLEEP_ON: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_c12864_sleep_on); + return 1; + case U8G_DEV_MSG_SLEEP_OFF: + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7565_c12864_sleep_off); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7565_nhd_c12864_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_nhd_c12864_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_st7565_nhd_c12864_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7565_nhd_c12864_fn, U8G_COM_HW_SPI); + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7687_c144mvgd.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7687_c144mvgd.c new file mode 100644 index 0000000000000000000000000000000000000000..4851017aa64535dda63185119813fad353c4ebfd --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7687_c144mvgd.c @@ -0,0 +1,420 @@ +/* + + u8g_dev_st7687_c144mvgd.c (1.44" TFT) + + Status: Started, but not finished + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 128 +#define PAGE_HEIGHT 8 + + +#ifdef FIRST_VERSION +/* +see also: read.pudn.com/downloads115/sourcecode/app/484503/LCM_Display.c__.htm +http://en.pudn.com/downloads115/sourcecode/app/detail484503_en.html +*/ + +static const uint8_t u8g_dev_st7687_c144mvgd_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + 0x001, /* A0=0, SW reset */ + U8G_ESC_DLY(200), /* delay 200 ms */ + + 0x0d7, /* EEPROM data auto re-load control */ + U8G_ESC_ADR(1), /* data mode */ + 0x09f, /* ARD = 1 */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + 0x0e0, /* EEPROM control in */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_DLY(100), /* delay 100 ms */ + +#ifdef NOT_REQUIRED + 0x0fa, /* EEPROM function selection 8.1.66 */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_DLY(100), /* delay 100 ms */ +#endif + + 0x0e3, /* Read from EEPROM, 8.1.55 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + 0x0e1, /* EEPROM control out, 8.1.53 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + //0x028, /* display off */ + 0x011, /* Sleep out & booster on */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + 0x0c0, /* Vop setting, 8.1.42 */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* */ + 0x001, /* 3.6 + 256*0.04 = 13.84 Volt */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + 0x0c3, /* Bias selection, 8.1.45 */ + U8G_ESC_ADR(1), /* data mode */ + 0x003, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0c4, /* Booster setting 8.1.46 */ + U8G_ESC_ADR(1), /* data mode */ + 0x007, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0c5, /* ??? */ + U8G_ESC_ADR(1), /* data mode */ + 0x001, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0cb, /* FV3 with Booster x2 control, 8.1.47 */ + U8G_ESC_ADR(1), /* data mode */ + 0x001, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x036, /* Memory data access control, 8.1.28 */ + U8G_ESC_ADR(1), /* data mode */ + 0x080, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0b5, /* N-line control, 8.1.37 */ + U8G_ESC_ADR(1), /* data mode */ + 0x089, + U8G_ESC_ADR(0), /* instruction mode */ + + + 0x0d0, /* Analog circuit setting, 8.1.49 */ + U8G_ESC_ADR(1), /* data mode */ + 0x01d, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0b7, /* Com/Seg Scan Direction, 8.1.38 */ + U8G_ESC_ADR(1), /* data mode */ + 0x040, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x025, /* Write contrast, 8.1.17 */ + U8G_ESC_ADR(1), /* data mode */ + 0x03f, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x03a, /* Interface pixel format, 8.1.32 */ + U8G_ESC_ADR(1), /* data mode */ + 0x004, /* 3: 12 bit per pixel Type A, 4: 12 bit Type B, 5: 16bit per pixel */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0b0, /* Display Duty setting, 8.1.34 */ + U8G_ESC_ADR(1), /* data mode */ + 0x07f, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0f0, /* Frame Freq. in Temp range A,B,C and D, 8.1.59 */ + U8G_ESC_ADR(1), /* data mode */ + 0x007, + 0x00c, + 0x00c, + 0x015, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0f9, /* Frame RGB Value, 8.1.65 */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, + 0x005, + 0x008, + 0x00a, + 0x00c, + 0x00e, + 0x010, + 0x011, + 0x012, + 0x013, + 0x014, + 0x015, + 0x016, + 0x018, + 0x01a, + 0x01b, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0f9, /* Frame RGB Value, 8.1.65 */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, + 0x000, + 0x000, + 0x000, + 0x033, + 0x055, + 0x055, + 0x055, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x029, /* display on */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ + +}; + +#else + +/* +http://www.waitingforfriday.com/images/e/e3/FTM144D01N_test.zip +*/ + +static const uint8_t u8g_dev_st7687_c144mvgd_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + 0x011, /* Sleep out & booster on */ + U8G_ESC_DLY(5), /* delay 5 ms */ + + 0x03a, /* Interface pixel format, 8.1.32 */ + U8G_ESC_ADR(1), /* data mode */ + 0x004, /* 3: 12 bit per pixel Type A, 4: 12 bit Type B, 5: 16bit per pixel */ + U8G_ESC_ADR(0), /* instruction mode */ + + + 0x026, /* SET_GAMMA_CURVE */ + U8G_ESC_ADR(1), /* data mode */ + 0x004, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0f2, /* GAM_R_SEL */ + U8G_ESC_ADR(1), /* data mode */ + 0x001, /* enable gamma adj */ + U8G_ESC_ADR(0), /* instruction mode */ + + + 0x0e0, /* POSITIVE_GAMMA_CORRECT */ + U8G_ESC_ADR(1), /* data mode */ + 0x3f, + 0x25, + 0x1c, + 0x1e, + 0x20, + 0x12, + 0x2a, + 0x90, + 0x24, + 0x11, + 0x00, + 0x00, + 0x00, + 0x00, + 0x00, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0e1, /* NEGATIVE_GAMMA_CORRECT */ + U8G_ESC_ADR(1), /* data mode */ + 0x20, + 0x20, + 0x20, + 0x20, + 0x05, + 0x00, + 0x15, + 0xa7, + 0x3d, + 0x18, + 0x25, + 0x2a, + 0x2b, + 0x2b, + 0x3a, + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0b1, /* FRAME_RATE_CONTROL1 */ + U8G_ESC_ADR(1), /* data mode */ + 0x008, /* DIVA = 8 */ + 0x008, /* VPA = 8 */ + U8G_ESC_ADR(0), /* instruction mode */ + + + 0x0b4, /* DISPLAY_INVERSION */ + U8G_ESC_ADR(1), /* data mode */ + 0x007, /* NLA = 1, NLB = 1, NLC = 1 (all on Frame Inversion) */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0c0, /* POWER_CONTROL1 */ + U8G_ESC_ADR(1), /* data mode */ + 0x00a, /* VRH = 10: GVDD = 4.30 */ + 0x002, /* VC = 2: VCI1 = 2.65 */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0c1, /* POWER_CONTROL2 */ + U8G_ESC_ADR(1), /* data mode */ + 0x002, /* BT = 2: AVDD = 2xVCI1, VCL = -1xVCI1, VGH = 5xVCI1, VGL = -2xVCI1 */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0c5, /* VCOM_CONTROL1 */ + U8G_ESC_ADR(1), /* data mode */ + 0x050, /* VMH = 80: VCOMH voltage = 4.5 */ + 0x05b, /* VML = 91: VCOML voltage = -0.225 */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x0c7, /* VCOM_OFFSET_CONTROL */ + U8G_ESC_ADR(1), /* data mode */ + 0x040, /* nVM = 0, VMF = 64: VCOMH output = VMH, VCOML output = VML */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x02a, /* SET_COLUMN_ADDRESS */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* */ + 0x000, /* */ + 0x000, /* */ + 0x07f, /* */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x02b, /* SET_PAGE_ADDRESS */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* */ + 0x000, /* */ + 0x000, /* */ + 0x07f, /* */ + U8G_ESC_ADR(0), /* instruction mode */ + + 0x036, /* SET_ADDRESS_MODE */ + U8G_ESC_ADR(1), /* data mode */ + 0x000, /* Select display orientation */ + U8G_ESC_ADR(0), /* instruction mode */ + + + 0x029, /* display on */ + + 0x02c, /* write start */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ + +}; + +#endif + + + + +/* calculate bytes for Type B 4096 color display */ +static uint8_t get_byte_1(uint8_t v) +{ + v >>= 4; + v &= 0x0e; + return v; +} + +static uint8_t get_byte_2(uint8_t v) +{ + uint8_t w; + w = v; + w &= 3; + w = (w<<2) | w; + v <<= 3; + v &= 0x0e0; + w |= v; + return w; +} + +uint8_t u8g_dev_st7687_c144mvgd_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7687_c144mvgd_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i, j; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x02a ); /* Column address set 8.1.20 */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteByte(u8g, dev, 0x000 ); /* x0 */ + u8g_WriteByte(u8g, dev, WIDTH-1 ); /* x1 */ + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x02b ); /* Row address set 8.1.21 */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteByte(u8g, dev, y ); /* y0 */ + u8g_WriteByte(u8g, dev, y+PAGE_HEIGHT-1 ); /* y1 */ + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x02c ); /* Memory write 8.1.22 */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + + for( i = 0; i < PAGE_HEIGHT; i ++ ) + { + + for( j = 0; j < WIDTH; j ++ ) + { + u8g_WriteByte(u8g, dev, get_byte_1(*ptr) ); + u8g_WriteByte(u8g, dev, get_byte_2(*ptr) ); + ptr++; + } + } + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h8_base_fn(u8g, dev, msg, arg); +} + + +uint8_t u8g_st7687_c144mvgd_8h8_buf[WIDTH*8] U8G_NOCOMMON ; +u8g_pb_t u8g_st7687_c144mvgd_8h8_pb = { {8, HEIGHT, 0, 0, 0}, WIDTH, u8g_st7687_c144mvgd_8h8_buf}; + +u8g_dev_t u8g_dev_st7687_c144mvgd_sw_spi = { u8g_dev_st7687_c144mvgd_fn, &u8g_st7687_c144mvgd_8h8_pb, u8g_com_arduino_sw_spi_fn }; + +u8g_dev_t u8g_dev_st7687_c144mvgd_8bit = { u8g_dev_st7687_c144mvgd_fn, &u8g_st7687_c144mvgd_8h8_pb, U8G_COM_PARALLEL }; diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7920_128x64.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7920_128x64.c new file mode 100644 index 0000000000000000000000000000000000000000..b0b18d34d29bdd03efa3a1331d3347d37f2836b7 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7920_128x64.c @@ -0,0 +1,171 @@ +/* + + u8g_dev_st7565_128x64.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + + +/* init sequence from https://github.com/adafruit/ST7565-LCD/blob/master/ST7565/ST7565.cpp */ +static const uint8_t u8g_dev_st7920_128x64_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_DLY(100), /* 8 Dez 2012: additional delay 100 ms because of reset*/ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x038, /* 8 Bit interface (DL=1), basic instruction set (RE=0) */ + 0x00c, /* display on, cursor & blink off; 0x08: all off */ + 0x006, /* Entry mode: Cursor move to right ,DDRAM address counter (AC) plus 1, no shift */ + 0x002, /* disable scroll, enable CGRAM adress */ + 0x001, /* clear RAM, needs 1.6 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7920_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7920_128x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + for( i = 0; i < 8; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x03e ); /* enable extended mode */ + + if ( y < 32 ) + { + u8g_WriteByte(u8g, dev, 0x080 | y ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set x pos to 0*/ + } + else + { + u8g_WriteByte(u8g, dev, 0x080 | (y-32) ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 | 8); /* set x pos to 64*/ + } + + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + y++; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h1_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_st7920_128x64_4x_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7920_128x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + for( i = 0; i < 32; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x03e ); /* enable extended mode */ + + if ( y < 32 ) + { + u8g_WriteByte(u8g, dev, 0x080 | y ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set x pos to 0*/ + } + else + { + u8g_WriteByte(u8g, dev, 0x080 | (y-32) ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 | 8); /* set x pos to 64*/ + } + + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + y++; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb32h1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_st7920_128x64_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7920_128x64_fn, U8G_COM_ST7920_SW_SPI); +U8G_PB_DEV(u8g_dev_st7920_128x64_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7920_128x64_fn, U8G_COM_ST7920_HW_SPI); +U8G_PB_DEV(u8g_dev_st7920_128x64_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7920_128x64_fn, U8G_COM_FAST_PARALLEL); + +#define QWIDTH (WIDTH*4) +uint8_t u8g_dev_st7920_128x64_4x_buf[QWIDTH] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_st7920_128x64_4x_pb = { {32, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_st7920_128x64_4x_buf}; +u8g_dev_t u8g_dev_st7920_128x64_4x_sw_spi = { u8g_dev_st7920_128x64_4x_fn, &u8g_dev_st7920_128x64_4x_pb, U8G_COM_ST7920_SW_SPI }; +u8g_dev_t u8g_dev_st7920_128x64_4x_hw_spi = { u8g_dev_st7920_128x64_4x_fn, &u8g_dev_st7920_128x64_4x_pb, U8G_COM_ST7920_HW_SPI }; +u8g_dev_t u8g_dev_st7920_128x64_4x_8bit = { u8g_dev_st7920_128x64_4x_fn, &u8g_dev_st7920_128x64_4x_pb, U8G_COM_FAST_PARALLEL }; + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7920_192x32.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7920_192x32.c new file mode 100644 index 0000000000000000000000000000000000000000..28535e0cd2630b2d821245a1af2c86ef994a22c1 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7920_192x32.c @@ -0,0 +1,151 @@ +/* + + u8g_dev_st7920_192x32.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 192 +#define HEIGHT 32 + + +/* init sequence from https://github.com/adafruit/ST7565-LCD/blob/master/ST7565/ST7565.cpp */ +static const uint8_t u8g_dev_st7920_192x32_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_DLY(100), /* 8 Dez 2012: additional delay 100 ms because of reset*/ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x038, /* 8 Bit interface (DL=1), basic instruction set (RE=0) */ + 0x00c, /* display on, cursor & blink off; 0x08: all off */ + 0x006, /* Entry mode: Cursor move to right ,DDRAM address counter (AC) plus 1, no shift */ + 0x002, /* disable scroll, enable CGRAM adress */ + 0x001, /* clear RAM, needs 1.6 ms */ + U8G_ESC_DLY(100), /* delay 10 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7920_192x32_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7920_192x32_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + for( i = 0; i < 8; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x03e ); /* enable extended mode */ + u8g_WriteByte(u8g, dev, 0x080 | y ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set x pos to 0*/ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + y++; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h1_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_st7920_192x32_4x_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7920_192x32_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + for( i = 0; i < 32; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x03e ); /* enable extended mode */ + u8g_WriteByte(u8g, dev, 0x080 | y ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set x pos to 0*/ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + y++; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb32h1_base_fn(u8g, dev, msg, arg); +} + + +U8G_PB_DEV(u8g_dev_st7920_192x32_sw_spi, WIDTH, HEIGHT, 8, u8g_dev_st7920_192x32_fn, U8G_COM_ST7920_SW_SPI); +U8G_PB_DEV(u8g_dev_st7920_192x32_hw_spi, WIDTH, HEIGHT, 8, u8g_dev_st7920_192x32_fn, U8G_COM_ST7920_HW_SPI); +U8G_PB_DEV(u8g_dev_st7920_192x32_8bit, WIDTH, HEIGHT, 8, u8g_dev_st7920_192x32_fn, U8G_COM_FAST_PARALLEL); + + +#define QWIDTH (WIDTH*4) +uint8_t u8g_dev_st7920_192x32_4x_buf[QWIDTH] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_st7920_192x32_4x_pb = { {32, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_st7920_192x32_4x_buf}; +u8g_dev_t u8g_dev_st7920_192x32_4x_sw_spi = { u8g_dev_st7920_192x32_4x_fn, &u8g_dev_st7920_192x32_4x_pb, U8G_COM_ST7920_SW_SPI }; +u8g_dev_t u8g_dev_st7920_192x32_4x_hw_spi = { u8g_dev_st7920_192x32_4x_fn, &u8g_dev_st7920_192x32_4x_pb, U8G_COM_ST7920_HW_SPI }; +u8g_dev_t u8g_dev_st7920_192x32_4x_8bit = { u8g_dev_st7920_192x32_4x_fn, &u8g_dev_st7920_192x32_4x_pb, U8G_COM_FAST_PARALLEL }; + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7920_202x32.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7920_202x32.c new file mode 100644 index 0000000000000000000000000000000000000000..129fc748fbcbdbbca690d593d9e8ee53fe7aafa5 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_st7920_202x32.c @@ -0,0 +1,154 @@ +/* + + u8g_dev_st7920_202x32.c + tested with CFAG20232 + + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 202 +#define HEIGHT 32 +#define PAGE_HEIGHT 8 + + +/* init sequence from https://github.com/adafruit/ST7565-LCD/blob/master/ST7565/ST7565.cpp */ +static const uint8_t u8g_dev_st7920_202x32_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + U8G_ESC_DLY(100), /* 8 Dez 2012: additional delay 100 ms because of reset*/ + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + 0x038, /* 8 Bit interface (DL=1), basic instruction set (RE=0) */ + 0x00c, /* display on, cursor & blink off; 0x08: all off */ + 0x006, /* Entry mode: Cursor move to right ,DDRAM address counter (AC) plus 1, no shift */ + 0x002, /* disable scroll, enable CGRAM adress */ + 0x001, /* clear RAM, needs 1.6 ms */ + U8G_ESC_DLY(100), /* delay 10 ms */ + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_st7920_202x32_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7920_202x32_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + for( i = 0; i < 8; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x03e ); /* enable extended mode */ + u8g_WriteByte(u8g, dev, 0x080 | y ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set x pos to 0*/ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + y++; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb8h1_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_st7920_202x32_4x_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_st7920_202x32_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + for( i = 0; i < 32; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x03e ); /* enable extended mode */ + u8g_WriteByte(u8g, dev, 0x080 | y ); /* y pos */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set x pos to 0*/ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + ptr += WIDTH/8; + y++; + } + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb32h1_base_fn(u8g, dev, msg, arg); +} + + +U8G_PB_DEV(u8g_dev_st7920_202x32_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7920_202x32_fn, U8G_COM_ST7920_SW_SPI); +U8G_PB_DEV(u8g_dev_st7920_202x32_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7920_202x32_fn, U8G_COM_ST7920_HW_SPI); +U8G_PB_DEV(u8g_dev_st7920_202x32_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_st7920_202x32_fn, U8G_COM_FAST_PARALLEL); + +#define QWIDTH (WIDTH*4) +uint8_t u8g_dev_st7920_202x32_4x_buf[QWIDTH] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_st7920_202x32_4x_pb = { {32, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_st7920_202x32_4x_buf}; +u8g_dev_t u8g_dev_st7920_202x32_4x_sw_spi = { u8g_dev_st7920_202x32_4x_fn, &u8g_dev_st7920_202x32_4x_pb, U8G_COM_ST7920_SW_SPI }; +u8g_dev_t u8g_dev_st7920_202x32_4x_hw_spi = { u8g_dev_st7920_202x32_4x_fn, &u8g_dev_st7920_202x32_4x_pb, U8G_COM_ST7920_HW_SPI }; +u8g_dev_t u8g_dev_st7920_202x32_4x_8bit = { u8g_dev_st7920_202x32_4x_fn, &u8g_dev_st7920_202x32_4x_pb, U8G_COM_FAST_PARALLEL }; + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_t6963_128x64.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_t6963_128x64.c new file mode 100644 index 0000000000000000000000000000000000000000..c1626ccc180cda12f0d397f4ef38810f3b2752bb --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_t6963_128x64.c @@ -0,0 +1,191 @@ +/* + + u8g_dev_t6963_128x64.c + + Tested with Varitronix MGLS240128TZ + + Universal 8bit Graphics Library + + Copyright (c) 2013, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + Application Notes for the MGLS 240x128 + www.baso.no/content/pdf/T6963C_Application.pdf + + Hitachi App Notes: + https://www.sparkfun.com/datasheets/LCD/Monochrome/AN-029-Toshiba_T6963C.pdf + + Notes: + The font selection pins should generate the 8x8 font. + For the MGLS240128TZ only FS1 is available on pin 18. + FS1 must be low to generate the 8x8 font. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 16 + + +/* text is not used, so settings are not relevant */ +static const uint8_t u8g_dev_t6963_128x64_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* data mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x021, /* set cursor position */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x022, /* set offset */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x040, /* text home */ + + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x041, /* text columns */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x042, /* graphics home */ + + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x043, /* graphics columns */ + + // mode set + // 0x080: Internal CG, OR Mode + // 0x081: Internal CG, EXOR Mode + // 0x083: Internal CG, AND Mode + // 0x088: External CG, OR Mode + // 0x089: External CG, EXOR Mode + // 0x08B: External CG, AND Mode + U8G_ESC_ADR(1), /* instruction mode */ + 0x080, /* mode register: OR Mode, Internal Character Mode */ + + U8G_ESC_ADR(1), /* instruction mode */ + // display mode + // 0x090: Display off + // 0x094: Graphic off, text on, cursor off, blink off + // 0x096: Graphic off, text on, cursor on, blink off + // 0x097: Graphic off, text on, cursor on, blink on + // 0x098: Graphic on, text off, cursor off, blink off + // 0x09a: Graphic on, text off, cursor on, blink off + // ... + // 0x09c: Graphic on, text on, cursor off, blink off + // 0x09f: Graphic on, text on, cursor on, blink on + 0x098, /* mode register: Display Mode, Graphics on, Text off, Cursor off */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x024, /* set adr pointer */ + + + U8G_ESC_DLY(100), /* delay 100 ms */ + + U8G_ESC_ADR(0), /* data mode */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_t6963_128x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_t6963_128x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint16_t disp_ram_adr; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + disp_ram_adr = WIDTH/8; + disp_ram_adr *= y; + for( i = 0; i < PAGE_HEIGHT; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr&255 ); /* address low byte */ + u8g_WriteByte(u8g, dev, disp_ram_adr>>8 ); /* address hight byte */ + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x024 ); /* set adr ptr */ + + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + + ptr += WIDTH/8; + disp_ram_adr += WIDTH/8; + } + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb16h1_base_fn(u8g, dev, msg, arg); +} + +// U8G_PB_DEV(u8g_dev_t6963_128x64_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_t6963_128x64_fn, U8G_COM_T6963); + +uint8_t u8g_dev_t6963_128x64_2x_bw_buf[WIDTH/8*PAGE_HEIGHT] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_t6963_128x64_2x_bw_pb = { {PAGE_HEIGHT, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_t6963_128x64_2x_bw_buf}; +u8g_dev_t u8g_dev_t6963_128x64_8bit = { u8g_dev_t6963_128x64_fn, &u8g_dev_t6963_128x64_2x_bw_pb, U8G_COM_T6963 }; + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_t6963_240x128.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_t6963_240x128.c new file mode 100644 index 0000000000000000000000000000000000000000..4a28edbcfeecc0cc255f75925292f78681029027 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_t6963_240x128.c @@ -0,0 +1,195 @@ +/* + + u8g_dev_t6963_240x128.c + + Tested with Varitronix MGLS240128TZ + + Universal 8bit Graphics Library + + Copyright (c) 2013, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + Application Notes for the MGLS 240x128 + www.baso.no/content/pdf/T6963C_Application.pdf + + Hitachi App Notes: + https://www.sparkfun.com/datasheets/LCD/Monochrome/AN-029-Toshiba_T6963C.pdf + + Notes: + The font selection pins should generate the 8x8 font. + For the MGLS240128TZ only FS1 is available on pin 18. + FS1 must be low to generate the 8x8 font. + + +*/ + +#include "u8g.h" + +#define WIDTH 240 +#define HEIGHT 128 +#define PAGE_HEIGHT 16 + + +/* + http://www.mark-products.com/graphics.htm#240x64%20Pixel%20Format +*/ + +/* text is not used, so settings are not relevant */ +static const uint8_t u8g_dev_t6963_240x128_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* data mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x021, /* set cursor position */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x022, /* set offset */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x040, /* text home */ + + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x041, /* text columns */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x042, /* graphics home */ + + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x043, /* graphics columns */ + + // mode set + // 0x080: Internal CG, OR Mode + // 0x081: Internal CG, EXOR Mode + // 0x083: Internal CG, AND Mode + // 0x088: External CG, OR Mode + // 0x089: External CG, EXOR Mode + // 0x08B: External CG, AND Mode + U8G_ESC_ADR(1), /* instruction mode */ + 0x080, /* mode register: OR Mode, Internal Character Mode */ + + U8G_ESC_ADR(1), /* instruction mode */ + // display mode + // 0x090: Display off + // 0x094: Graphic off, text on, cursor off, blink off + // 0x096: Graphic off, text on, cursor on, blink off + // 0x097: Graphic off, text on, cursor on, blink on + // 0x098: Graphic on, text off, cursor off, blink off + // 0x09a: Graphic on, text off, cursor on, blink off + // ... + // 0x09c: Graphic on, text on, cursor off, blink off + // 0x09f: Graphic on, text on, cursor on, blink on + 0x098, /* mode register: Display Mode, Graphics on, Text off, Cursor off */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x024, /* set adr pointer */ + + + U8G_ESC_DLY(100), /* delay 100 ms */ + + U8G_ESC_ADR(0), /* data mode */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_t6963_240x128_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_t6963_240x128_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint16_t disp_ram_adr; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + disp_ram_adr = WIDTH/8; + disp_ram_adr *= y; + for( i = 0; i < PAGE_HEIGHT; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr&255 ); /* address low byte */ + u8g_WriteByte(u8g, dev, disp_ram_adr>>8 ); /* address hight byte */ + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x024 ); /* set adr ptr */ + + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + + ptr += WIDTH/8; + disp_ram_adr += WIDTH/8; + } + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb16h1_base_fn(u8g, dev, msg, arg); +} + +// U8G_PB_DEV(u8g_dev_t6963_240x128_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_t6963_240x128_fn, U8G_COM_T6963); + +uint8_t u8g_dev_t6963_240x128_2x_bw_buf[WIDTH/8*PAGE_HEIGHT] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_t6963_240x128_2x_bw_pb = { {PAGE_HEIGHT, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_t6963_240x128_2x_bw_buf}; +u8g_dev_t u8g_dev_t6963_240x128_8bit = { u8g_dev_t6963_240x128_fn, &u8g_dev_t6963_240x128_2x_bw_pb, U8G_COM_T6963 }; + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_t6963_240x64.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_t6963_240x64.c new file mode 100644 index 0000000000000000000000000000000000000000..6d209d21204967005b4acff2cb99c81d18fe71a4 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_t6963_240x64.c @@ -0,0 +1,195 @@ +/* + + u8g_dev_t6963_240x64.c + + Tested with Varitronix MGLS240128TZ + + Universal 8bit Graphics Library + + Copyright (c) 2013, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + Application Notes for the MGLS 240x128 + www.baso.no/content/pdf/T6963C_Application.pdf + + Hitachi App Notes: + https://www.sparkfun.com/datasheets/LCD/Monochrome/AN-029-Toshiba_T6963C.pdf + + Notes: + The font selection pins should generate the 8x8 font. + For the MGLS240128TZ only FS1 is available on pin 18. + FS1 must be low to generate the 8x8 font. + + +*/ + +#include "u8g.h" + +#define WIDTH 240 +#define HEIGHT 64 +#define PAGE_HEIGHT 16 + + +/* + http://www.mark-products.com/graphics.htm#240x64%20Pixel%20Format +*/ + +/* text is not used, so settings are not relevant */ +static const uint8_t u8g_dev_t6963_240x64_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* data mode */ + U8G_ESC_RST(15), /* do reset low pulse with (15*16)+2 milliseconds (=maximum delay)*/ + + U8G_ESC_CS(1), /* enable chip */ + U8G_ESC_DLY(50), /* delay 50 ms */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x021, /* set cursor position */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x022, /* set offset */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x040, /* text home */ + + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x041, /* text columns */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x042, /* graphics home */ + + U8G_ESC_ADR(0), /* data mode */ + WIDTH/8, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x043, /* graphics columns */ + + // mode set + // 0x080: Internal CG, OR Mode + // 0x081: Internal CG, EXOR Mode + // 0x083: Internal CG, AND Mode + // 0x088: External CG, OR Mode + // 0x089: External CG, EXOR Mode + // 0x08B: External CG, AND Mode + U8G_ESC_ADR(1), /* instruction mode */ + 0x080, /* mode register: OR Mode, Internal Character Mode */ + + U8G_ESC_ADR(1), /* instruction mode */ + // display mode + // 0x090: Display off + // 0x094: Graphic off, text on, cursor off, blink off + // 0x096: Graphic off, text on, cursor on, blink off + // 0x097: Graphic off, text on, cursor on, blink on + // 0x098: Graphic on, text off, cursor off, blink off + // 0x09a: Graphic on, text off, cursor on, blink off + // ... + // 0x09c: Graphic on, text on, cursor off, blink off + // 0x09f: Graphic on, text on, cursor on, blink on + 0x098, /* mode register: Display Mode, Graphics on, Text off, Cursor off */ + + U8G_ESC_ADR(0), /* data mode */ + 0x000, /* low byte */ + 0x000, /* height byte */ + U8G_ESC_ADR(1), /* instruction mode */ + 0x024, /* set adr pointer */ + + + U8G_ESC_DLY(100), /* delay 100 ms */ + + U8G_ESC_ADR(0), /* data mode */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_t6963_240x64_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_t6963_240x64_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t y, i; + uint16_t disp_ram_adr; + uint8_t *ptr; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_SetChipSelect(u8g, dev, 1); + y = pb->p.page_y0; + ptr = pb->buf; + disp_ram_adr = WIDTH/8; + disp_ram_adr *= y; + for( i = 0; i < PAGE_HEIGHT; i ++ ) + { + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_WriteByte(u8g, dev, disp_ram_adr&255 ); /* address low byte */ + u8g_WriteByte(u8g, dev, disp_ram_adr>>8 ); /* address hight byte */ + u8g_SetAddress(u8g, dev, 1); /* cmd mode */ + u8g_WriteByte(u8g, dev, 0x024 ); /* set adr ptr */ + + u8g_WriteSequence(u8g, dev, WIDTH/8, ptr); + + ptr += WIDTH/8; + disp_ram_adr += WIDTH/8; + } + u8g_SetAddress(u8g, dev, 0); /* data mode */ + u8g_SetChipSelect(u8g, dev, 0); + } + break; + } + return u8g_dev_pb16h1_base_fn(u8g, dev, msg, arg); +} + +// U8G_PB_DEV(u8g_dev_t6963_240x64_8bit, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_t6963_240x64_fn, U8G_COM_T6963); + +uint8_t u8g_dev_t6963_240x64_2x_bw_buf[WIDTH/8*PAGE_HEIGHT] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_t6963_240x64_2x_bw_pb = { {PAGE_HEIGHT, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_t6963_240x64_2x_bw_buf}; +u8g_dev_t u8g_dev_t6963_240x64_8bit = { u8g_dev_t6963_240x64_fn, &u8g_dev_t6963_240x64_2x_bw_pb, U8G_COM_T6963 }; + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_tls8204_84x48.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_tls8204_84x48.c new file mode 100644 index 0000000000000000000000000000000000000000..17689dc4a483cd0122d07820bf18121316d66507 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_tls8204_84x48.c @@ -0,0 +1,115 @@ +/* + + u8g_dev_tls8204_84x48.c + + Display: Nokia 84x48 + + Status: Tested with TLS8204V12 Display by Olimex MOD-LCD3310 + + Contributed: http://code.google.com/p/u8glib/issues/detail?id=126 + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 84 +#define HEIGHT 48 +#define PAGE_HEIGHT 8 + + +static const uint8_t u8g_dev_tls8204_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x021, /* activate chip (PD=0), horizontal increment (V=0), enter extended command set (H=1) */ + 0x006, /* temp. control: b10 = 2 */ + 0x04 | !!((66-1)&(1u<<6)), + 0x40 | ((66-2) & ((1u<<6)-1)), + 0x013, /* bias system 1:48 */ + 0x0c0, /* medium Vop */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00c, /* display on, normal operation */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00d, /* display on, invert */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x020, /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + 0x00c, /* display on, normal */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + + +uint8_t u8g_dev_tls8204_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_tls8204_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_SetAddress(u8g, dev, 0); /* command mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x020 ); /* activate chip (PD=0), horizontal increment (V=0), enter normal command set (H=0) */ + u8g_WriteByte(u8g, dev, 0x080 ); /* set X address */ + u8g_WriteByte(u8g, dev, 0x040 | pb->p.page); /* set Y address */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + /* the contrast adjustment does not work, needs to be analysed */ + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_SetChipSelect(u8g, dev, 1); + u8g_WriteByte(u8g, dev, 0x021); /* command mode, extended function set */ + u8g_WriteByte(u8g, dev, 0x080 | ( (*(uint8_t *)arg) >> 1 ) ); + u8g_WriteByte(u8g, dev, 0x020); /* command mode, extended function set */ + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + + +U8G_PB_DEV(u8g_dev_tls8204_84x48_sw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_tls8204_fn, U8G_COM_SW_SPI); + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_uc1610_dogxl160.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_uc1610_dogxl160.c new file mode 100644 index 0000000000000000000000000000000000000000..b7111d5c894569a7e18e96ea9c1633ced854e069 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_uc1610_dogxl160.c @@ -0,0 +1,290 @@ +/* + + u8g_dev_uc1610_dogxl160.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 160 +#define HEIGHT 104 + +static const uint8_t u8g_dev_uc1610_dogxl160_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x0f1, /* set display height-1 */ + 0x067, /* */ + 0x0c0, /* SEG & COM normal */ + 0x040, /* set display start line */ + 0x050, /* */ + 0x02b, /* set panelloading */ + 0x0eb, /* set bias 1/2 */ + 0x081, /* set contrast */ + 0x05f, /* */ + 0x089, /* set auto increment */ + 0x0a6, /* normal pixel mode */ + 0x0d3, /* 0xd3=40% RMS separation for gray levels */ + 0x0af, /* display on */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565, UC1610 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + + + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_uc1610_dogxl160_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 0 */ + U8G_ESC_END /* end of sequence */ +}; + +static uint8_t u8g_dev_1to2(uint8_t n) +{ + register uint8_t a,b,c; + a = n; + a &= 1; + n <<= 1; + b = n; + b &= 4; + n <<= 1; + c = n; + c &= 16; + n <<= 1; + n &= 64; + n |= a; + n |= b; + n |= c; + n |= n << 1; + return n; +} + +uint8_t u8g_dev_uc1610_dogxl160_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + int i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*2) ); /* select current page 1/2 (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + for( i = 0; i < WIDTH; i++ ) + { + u8g_WriteByte(u8g, dev, u8g_dev_1to2( ((uint8_t *)(pb->buf))[i] ) ); + } + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*2+1) ); /* select current page 2/2 (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + for( i = 0; i < WIDTH; i++ ) + { + u8g_WriteByte(u8g, dev, u8g_dev_1to2( ((uint8_t *)(pb->buf))[i] >> 4 ) ); + } + + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_uc1610_dogxl160_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page) ); /* select current page (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v2_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_uc1610_dogxl160_2x_bw_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + int i; + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*4) ); /* select current page 1/2 (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + for( i = 0; i < WIDTH; i++ ) + { + u8g_WriteByte(u8g, dev, u8g_dev_1to2( ((uint8_t *)(pb->buf))[i] ) ); + } + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*4+1) ); /* select current page 2/2 (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + for( i = 0; i < WIDTH; i++ ) + { + u8g_WriteByte(u8g, dev, u8g_dev_1to2( ((uint8_t *)(pb->buf))[i] >> 4 ) ); + } + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*4+2) ); /* select current page 1/2 (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + for( i = 0; i < WIDTH; i++ ) + { + u8g_WriteByte(u8g, dev, u8g_dev_1to2( ((uint8_t *)(pb->buf+WIDTH))[i] ) ); + } + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*4+3) ); /* select current page 2/2 (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + for( i = 0; i < WIDTH; i++ ) + { + u8g_WriteByte(u8g, dev, u8g_dev_1to2( ((uint8_t *)(pb->buf+WIDTH))[i] >> 4 ) ); + } + + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb16v1_base_fn(u8g, dev, msg, arg); +} + +uint8_t u8g_dev_uc1610_dogxl160_2x_gr_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*2) ); /* select current page (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_WriteSequence(u8g, dev, WIDTH, pb->buf) == 0 ) + return 0; + + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1610_dogxl160_data_start); + u8g_WriteByte(u8g, dev, 0x060 | (pb->p.page*2+1) ); /* select current page (UC1610) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_WriteSequence(u8g, dev, WIDTH, pb->buf+WIDTH) == 0 ) + return 0; + + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 1); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb16v2_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_uc1610_dogxl160_bw_sw_spi, WIDTH, HEIGHT, 8, u8g_dev_uc1610_dogxl160_bw_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_uc1610_dogxl160_bw_hw_spi, WIDTH, HEIGHT, 8, u8g_dev_uc1610_dogxl160_bw_fn, U8G_COM_HW_SPI); + +U8G_PB_DEV(u8g_dev_uc1610_dogxl160_gr_sw_spi, WIDTH, HEIGHT, 4, u8g_dev_uc1610_dogxl160_gr_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_uc1610_dogxl160_gr_hw_spi, WIDTH, HEIGHT, 4, u8g_dev_uc1610_dogxl160_gr_fn, U8G_COM_HW_SPI); + +uint8_t u8g_dev_uc1610_dogxl160_2x_bw_buf[WIDTH*2] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_uc1610_dogxl160_2x_bw_pb = { {16, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_uc1610_dogxl160_2x_bw_buf}; +u8g_dev_t u8g_dev_uc1610_dogxl160_2x_bw_sw_spi = { u8g_dev_uc1610_dogxl160_2x_bw_fn, &u8g_dev_uc1610_dogxl160_2x_bw_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_uc1610_dogxl160_2x_bw_hw_spi = { u8g_dev_uc1610_dogxl160_2x_bw_fn, &u8g_dev_uc1610_dogxl160_2x_bw_pb, U8G_COM_HW_SPI }; + +uint8_t u8g_dev_uc1610_dogxl160_2x_gr_buf[WIDTH*2] U8G_NOCOMMON ; +u8g_pb_t u8g_dev_uc1610_dogxl160_2x_gr_pb = { {8, HEIGHT, 0, 0, 0}, WIDTH, u8g_dev_uc1610_dogxl160_2x_gr_buf}; +u8g_dev_t u8g_dev_uc1610_dogxl160_2x_gr_sw_spi = { u8g_dev_uc1610_dogxl160_2x_gr_fn, &u8g_dev_uc1610_dogxl160_2x_gr_pb, U8G_COM_SW_SPI }; +u8g_dev_t u8g_dev_uc1610_dogxl160_2x_gr_hw_spi = { u8g_dev_uc1610_dogxl160_2x_gr_fn, &u8g_dev_uc1610_dogxl160_2x_gr_pb, U8G_COM_HW_SPI }; diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_uc1701_dogs102.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_uc1701_dogs102.c new file mode 100644 index 0000000000000000000000000000000000000000..853d8c0344af24da74461ce6f7d1927b6e46d8f5 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_uc1701_dogs102.c @@ -0,0 +1,113 @@ +/* + + u8g_dev_uc1701_dogs102.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 102 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +static const uint8_t u8g_dev_dogs102_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + 0x040, /* set display start line to 0 */ + 0x0a1, /* ADC set to reverse */ + 0x0c0, /* common output mode */ + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + 0x027, /* regulator, booster and follower */ + 0x081, /* set contrast */ + 0x00e, /* contrast value, EA default: 0x010, previous value for S102: 0x0e */ + 0x0fa, /* Set Temp compensation */ + 0x090, /* 0.11 deg/c WP Off WC Off*/ + 0x0a4, /* normal display */ + 0x0af, /* display on */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565, UC1610 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_dogs102_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 0 */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_dogs102_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_dogs102_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_dogs102_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page (ST7565R) */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_uc1701_dogs102_sw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_dogs102_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_uc1701_dogs102_hw_spi , WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_dogs102_fn, U8G_COM_HW_SPI); + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_uc1701_mini12864.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_uc1701_mini12864.c new file mode 100644 index 0000000000000000000000000000000000000000..55b2f9b71f660de695af724328e0e9d915959334 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_dev_uc1701_mini12864.c @@ -0,0 +1,114 @@ +/* + + u8g_dev_uc1701_mini12864.c (dealextreme) + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +#define WIDTH 128 +#define HEIGHT 64 +#define PAGE_HEIGHT 8 + +static const uint8_t u8g_dev_uc1701_mini12864_init_seq[] PROGMEM = { + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_RST(1), /* do reset low pulse with (1*16)+2 milliseconds */ + U8G_ESC_CS(1), /* enable chip */ + + 0x040, /* set display start line to 0 */ + 0x0a0, /* ADC set to reverse */ + 0x0c8, /* common output mode */ + 0x0a6, /* display normal, bit val 0: LCD pixel off. */ + 0x0a2, /* LCD bias 1/9 */ + 0x02f, /* all power control circuits on */ + 0x0f8, /* set booster ratio to */ + 0x000, /* 4x */ + 0x023, /* set V0 voltage resistor ratio to large */ + 0x081, /* set contrast */ + 0x027, /* contrast value */ + 0x0ac, /* indicator */ + 0x000, /* disable */ + 0x0af, /* display on */ + + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a5, /* display all points, ST7565 */ + U8G_ESC_DLY(100), /* delay 100 ms */ + U8G_ESC_DLY(100), /* delay 100 ms */ + 0x0a4, /* normal display */ + U8G_ESC_CS(0), /* disable chip */ + U8G_ESC_END /* end of sequence */ +}; + +static const uint8_t u8g_dev_uc1701_mini12864_data_start[] PROGMEM = { + U8G_ESC_ADR(0), /* instruction mode */ + U8G_ESC_CS(1), /* enable chip */ + 0x010, /* set upper 4 bit of the col adr to 0 */ + 0x000, /* set lower 4 bit of the col adr to 4 */ + U8G_ESC_END /* end of sequence */ +}; + +uint8_t u8g_dev_uc1701_mini12864_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + case U8G_DEV_MSG_INIT: + u8g_InitCom(u8g, dev); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1701_mini12864_init_seq); + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_NEXT: + { + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + u8g_WriteEscSeqP(u8g, dev, u8g_dev_uc1701_mini12864_data_start); + u8g_WriteByte(u8g, dev, 0x0b0 | pb->p.page); /* select current page */ + u8g_SetAddress(u8g, dev, 1); /* data mode */ + if ( u8g_pb_WriteBuffer(pb, u8g, dev) == 0 ) + return 0; + u8g_SetChipSelect(u8g, dev, 0); + } + break; + case U8G_DEV_MSG_CONTRAST: + u8g_SetChipSelect(u8g, dev, 1); + u8g_SetAddress(u8g, dev, 0); /* instruction mode */ + u8g_WriteByte(u8g, dev, 0x081); + u8g_WriteByte(u8g, dev, (*(uint8_t *)arg) >> 2); + u8g_SetChipSelect(u8g, dev, 0); + return 1; + } + return u8g_dev_pb8v1_base_fn(u8g, dev, msg, arg); +} + +U8G_PB_DEV(u8g_dev_uc1701_mini12864_sw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_uc1701_mini12864_fn, U8G_COM_SW_SPI); +U8G_PB_DEV(u8g_dev_uc1701_mini12864_hw_spi, WIDTH, HEIGHT, PAGE_HEIGHT, u8g_dev_uc1701_mini12864_fn, U8G_COM_HW_SPI); diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_ellipse.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_ellipse.c new file mode 100644 index 0000000000000000000000000000000000000000..6c35fdf2371552dd9d75a7796a3de488451e8753 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_ellipse.c @@ -0,0 +1,100 @@ +/* + + u8g_ellipse.c + + Utility to draw empty and filled ellipses. + + Universal 8bit Graphics Library + + Copyright (c) 2011, bjthom@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Addition to the U8G Library as of 02/29/12 + Adapted from Bresenham's Algorithm and the following websites: + http://free.pages.at/easyfilter/bresenham.html + http://homepage.smc.edu/kennedy_john/belipse.pdf + +*/ + +#include "u8g.h" + + +#ifdef WORK_IN_PROGRESS + +void u8g_DrawEllipseRect(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t x1, u8g_uint_t y1) +{ + int a = abs(x1 - x0); + int b = abs(y1 - y0); //get diameters + int b1 = b&1; + long dx = 4*(1-a)*b*b; + long dy = 4*(b1+1)*a*a; + long err = dx+dy+b1*a*a; + long e2; + + if (x0 > x1) { x0 = x1; x1 += a; } + if (y0 > y1) { y0 = y1; } + y0 += (b+1)/2; + y1 = y0-b1; + a *= 8*a; + b1 = 8*b*b; + + do { + u8g_DrawPixel(u8g, x1, y0); + u8g_DrawPixel(u8g, x0, y0); + u8g_DrawPixel(u8g, x0, y1); + u8g_DrawPixel(u8g, x1, y1); + e2 = 2*err; + if (e2 >= dx) { + x0++; + x1--; + err += dx += b1; + } + if (e2 <= dy) { + y0++; + y1--; + err += dy += a; + } + } while (x0 <= x1); + + while (y0-y1 < b) { + u8g_DrawPixel(u8g, x0-1, y0); + u8g_DrawPixel(u8g, x1+1, y0++); + u8g_DrawPixel(u8g, x0-1, y1); + u8g_DrawPixel(u8g, x1+1, y1--); + } +} + +void u8g_DrawEllipse(u8g_t *u8g, u8g_uint_t x0, u8g_uint_t y0, u8g_uint_t xr, u8g_uint_t yr) +{ + u8g_DrawPixel(u8g, x0, y0+yr); + u8g_DrawPixel(u8g, x0, y0-yr); + u8g_DrawPixel(u8g, x0+xr, y0); + u8g_DrawPixel(u8g, x0-xr, y0); +} + +#endif + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_font.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_font.c new file mode 100644 index 0000000000000000000000000000000000000000..bfdc0b28a3a5f3645bbf26efd931a8b2eac09163 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_font.c @@ -0,0 +1,1422 @@ +/* + + u8g_font.c + + U8G Font High Level Interface + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +/* font api */ + +/* pointer to the start adress of the glyph, points to progmem area */ +typedef void * u8g_glyph_t; + +/* size of the font data structure, there is no struct or class... */ +#define U8G_FONT_DATA_STRUCT_SIZE 17 + +/* + ... instead the fields of the font data structure are accessed directly by offset + font information + offset + 0 font format + 1 FONTBOUNDINGBOX width unsigned + 2 FONTBOUNDINGBOX height unsigned + 3 FONTBOUNDINGBOX x-offset signed + 4 FONTBOUNDINGBOX y-offset signed + 5 capital A height unsigned + 6 start 'A' + 8 start 'a' + 10 encoding start + 11 encoding end + 12 descent 'g' negative: below baseline + 13 font max ascent + 14 font min decent negative: below baseline + 15 font xascent + 16 font xdecent negative: below baseline + +*/ + +/* use case: What is the width and the height of the minimal box into which string s fints? */ +void u8g_font_GetStrSize(const void *font, const char *s, u8g_uint_t *width, u8g_uint_t *height); +void u8g_font_GetStrSizeP(const void *font, const char *s, u8g_uint_t *width, u8g_uint_t *height); + +/* use case: lower left edge of a minimal box is known, what is the correct x, y position for the string draw procedure */ +void u8g_font_AdjustXYToDraw(const void *font, const char *s, u8g_uint_t *x, u8g_uint_t *y); +void u8g_font_AdjustXYToDrawP(const void *font, const char *s, u8g_uint_t *x, u8g_uint_t *y); + +/* use case: Baseline origin known, return minimal box */ +void u8g_font_GetStrMinBox(u8g_t *u8g, const void *font, const char *s, u8g_uint_t *x, u8g_uint_t *y, u8g_uint_t *width, u8g_uint_t *height); + +/* procedures */ + +/*========================================================================*/ +/* low level byte and word access */ + +/* removed NOINLINE, because it leads to smaller code, might also be faster */ +//static uint8_t u8g_font_get_byte(const u8g_fntpgm_uint8_t *font, uint8_t offset) U8G_NOINLINE; +static uint8_t u8g_font_get_byte(const u8g_fntpgm_uint8_t *font, uint8_t offset) +{ + font += offset; + return u8g_pgm_read( (u8g_pgm_uint8_t *)font ); +} + +static uint16_t u8g_font_get_word(const u8g_fntpgm_uint8_t *font, uint8_t offset) U8G_NOINLINE; +static uint16_t u8g_font_get_word(const u8g_fntpgm_uint8_t *font, uint8_t offset) +{ + uint16_t pos; + font += offset; + pos = u8g_pgm_read( (u8g_pgm_uint8_t *)font ); + font++; + pos <<= 8; + pos += u8g_pgm_read( (u8g_pgm_uint8_t *)font); + return pos; +} + +/*========================================================================*/ +/* direct access on the font */ + +static uint8_t u8g_font_GetFormat(const u8g_fntpgm_uint8_t *font) U8G_NOINLINE; +static uint8_t u8g_font_GetFormat(const u8g_fntpgm_uint8_t *font) +{ + return u8g_font_get_byte(font, 0); +} + +static uint8_t u8g_font_GetFontGlyphStructureSize(const u8g_fntpgm_uint8_t *font) U8G_NOINLINE; +static uint8_t u8g_font_GetFontGlyphStructureSize(const u8g_fntpgm_uint8_t *font) +{ + switch(u8g_font_GetFormat(font)) + { + case 0: return 6; + case 1: return 3; + } + return 3; +} + +static uint8_t u8g_font_GetBBXWidth(const void *font) +{ + return u8g_font_get_byte(font, 1); +} + +static uint8_t u8g_font_GetBBXHeight(const void *font) +{ + return u8g_font_get_byte(font, 2); +} + +static int8_t u8g_font_GetBBXOffX(const void *font) +{ + return u8g_font_get_byte(font, 3); +} + +static int8_t u8g_font_GetBBXOffY(const void *font) +{ + return u8g_font_get_byte(font, 4); +} + +uint8_t u8g_font_GetCapitalAHeight(const void *font) +{ + return u8g_font_get_byte(font, 5); +} + +uint16_t u8g_font_GetEncoding65Pos(const void *font) U8G_NOINLINE; +uint16_t u8g_font_GetEncoding65Pos(const void *font) +{ + return u8g_font_get_word(font, 6); +} + +uint16_t u8g_font_GetEncoding97Pos(const void *font) U8G_NOINLINE; +uint16_t u8g_font_GetEncoding97Pos(const void *font) +{ + return u8g_font_get_word(font, 8); +} + +uint8_t u8g_font_GetFontStartEncoding(const void *font) +{ + return u8g_font_get_byte(font, 10); +} + +uint8_t u8g_font_GetFontEndEncoding(const void *font) +{ + return u8g_font_get_byte(font, 11); +} + +int8_t u8g_font_GetLowerGDescent(const void *font) +{ + return u8g_font_get_byte(font, 12); +} + +int8_t u8g_font_GetFontAscent(const void *font) +{ + return u8g_font_get_byte(font, 13); +} + +int8_t u8g_font_GetFontDescent(const void *font) +{ + return u8g_font_get_byte(font, 14); +} + +int8_t u8g_font_GetFontXAscent(const void *font) +{ + return u8g_font_get_byte(font, 15); +} + +int8_t u8g_font_GetFontXDescent(const void *font) +{ + return u8g_font_get_byte(font, 16); +} + + +/* return the data start for a font and the glyph pointer */ +static uint8_t *u8g_font_GetGlyphDataStart(const void *font, u8g_glyph_t g) +{ + return ((u8g_fntpgm_uint8_t *)g) + u8g_font_GetFontGlyphStructureSize(font); +} + +/* calculate the overall length of the font, only used to create the picture for the google wiki */ +size_t u8g_font_GetSize(const void *font) +{ + uint8_t *p = (uint8_t *)(font); + uint8_t font_format = u8g_font_GetFormat(font); + uint8_t data_structure_size = u8g_font_GetFontGlyphStructureSize(font); + uint8_t start, end; + uint8_t i; + uint8_t mask = 255; + + start = u8g_font_GetFontStartEncoding(font); + end = u8g_font_GetFontEndEncoding(font); + + if ( font_format == 1 ) + mask = 15; + + p += U8G_FONT_DATA_STRUCT_SIZE; /* skip font general information */ + + i = start; + for(;;) + { + if ( u8g_pgm_read((u8g_pgm_uint8_t *)(p)) == 255 ) + { + p += 1; + } + else + { + p += u8g_pgm_read( ((u8g_pgm_uint8_t *)(p)) + 2 ) & mask; + p += data_structure_size; + } + if ( i == end ) + break; + i++; + } + + return p - (uint8_t *)font; +} + +/*========================================================================*/ +/* u8g interface, font access */ + +uint8_t u8g_GetFontBBXWidth(u8g_t *u8g) +{ + return u8g_font_GetBBXWidth(u8g->font); +} + +uint8_t u8g_GetFontBBXHeight(u8g_t *u8g) +{ + return u8g_font_GetBBXHeight(u8g->font); +} + +int8_t u8g_GetFontBBXOffX(u8g_t *u8g) U8G_NOINLINE; +int8_t u8g_GetFontBBXOffX(u8g_t *u8g) +{ + return u8g_font_GetBBXOffX(u8g->font); +} + +int8_t u8g_GetFontBBXOffY(u8g_t *u8g) U8G_NOINLINE; +int8_t u8g_GetFontBBXOffY(u8g_t *u8g) +{ + return u8g_font_GetBBXOffY(u8g->font); +} + +uint8_t u8g_GetFontCapitalAHeight(u8g_t *u8g) U8G_NOINLINE; +uint8_t u8g_GetFontCapitalAHeight(u8g_t *u8g) +{ + return u8g_font_GetCapitalAHeight(u8g->font); +} + +/*========================================================================*/ +/* glyph handling */ + +static void u8g_CopyGlyphDataToCache(u8g_t *u8g, u8g_glyph_t g) +{ + uint8_t tmp; + switch( u8g_font_GetFormat(u8g->font) ) + { + case 0: + /* + format 0 + glyph information + offset + 0 BBX width unsigned + 1 BBX height unsigned + 2 data size unsigned (BBX width + 7)/8 * BBX height + 3 DWIDTH signed + 4 BBX xoffset signed + 5 BBX yoffset signed + byte 0 == 255 indicates empty glyph + */ + u8g->glyph_width = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 0 ); + u8g->glyph_height = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 1 ); + u8g->glyph_dx = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 3 ); + u8g->glyph_x = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 4 ); + u8g->glyph_y = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 5 ); + break; + case 1: + default: + /* +format 1 + 0 BBX xoffset signed --> upper 4 Bit + 0 BBX yoffset signed --> lower 4 Bit + 1 BBX width unsigned --> upper 4 Bit + 1 BBX height unsigned --> lower 4 Bit + 2 data size unsigned -(BBX width + 7)/8 * BBX height --> lower 4 Bit + 2 DWIDTH signed --> upper 4 Bit + byte 0 == 255 indicates empty glyph + */ + + tmp = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 0 ); + u8g->glyph_y = tmp & 15; + u8g->glyph_y-=2; + tmp >>= 4; + u8g->glyph_x = tmp; + + tmp = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 1 ); + u8g->glyph_height = tmp & 15; + tmp >>= 4; + u8g->glyph_width = tmp; + + tmp = u8g_pgm_read( ((u8g_pgm_uint8_t *)g) + 2 ); + tmp >>= 4; + u8g->glyph_dx = tmp; + + + break; + } +} + +//void u8g_FillEmptyGlyphCache(u8g_t *u8g) U8G_NOINLINE; +static void u8g_FillEmptyGlyphCache(u8g_t *u8g) +{ + u8g->glyph_dx = 0; + u8g->glyph_width = 0; + u8g->glyph_height = 0; + u8g->glyph_x = 0; + u8g->glyph_y = 0; +} + +/* + Find (with some speed optimization) and return a pointer to the glyph data structure + Also uncompress (format 1) and copy the content of the data structure to the u8g structure +*/ +u8g_glyph_t u8g_GetGlyph(u8g_t *u8g, uint8_t requested_encoding) +{ + uint8_t *p = (uint8_t *)(u8g->font); + uint8_t font_format = u8g_font_GetFormat(u8g->font); + uint8_t data_structure_size = u8g_font_GetFontGlyphStructureSize(u8g->font); + uint8_t start, end; + uint16_t pos; + uint8_t i; + uint8_t mask = 255; + + if ( font_format == 1 ) + mask = 15; + + start = u8g_font_GetFontStartEncoding(u8g->font); + end = u8g_font_GetFontEndEncoding(u8g->font); + + pos = u8g_font_GetEncoding97Pos(u8g->font); + if ( requested_encoding >= 97 && pos > 0 ) + { + p+= pos; + start = 97; + } + else + { + pos = u8g_font_GetEncoding65Pos(u8g->font); + if ( requested_encoding >= 65 && pos > 0 ) + { + p+= pos; + start = 65; + } + else + p += U8G_FONT_DATA_STRUCT_SIZE; /* skip font general information */ + } + + if ( requested_encoding > end ) + { + u8g_FillEmptyGlyphCache(u8g); + return NULL; /* not found */ + } + + i = start; + if ( i <= end ) + { + for(;;) + { + if ( u8g_pgm_read((u8g_pgm_uint8_t *)(p)) == 255 ) + { + p += 1; + } + else + { + if ( i == requested_encoding ) + { + u8g_CopyGlyphDataToCache(u8g, p); + return p; + } + p += u8g_pgm_read( ((u8g_pgm_uint8_t *)(p)) + 2 ) & mask; + p += data_structure_size; + } + if ( i == end ) + break; + i++; + } + } + + u8g_FillEmptyGlyphCache(u8g); + + return NULL; +} + +uint8_t u8g_IsGlyph(u8g_t *u8g, uint8_t requested_encoding) +{ + if ( u8g_GetGlyph(u8g, requested_encoding) != NULL ) + return 1; + return 0; +} + +int8_t u8g_GetGlyphDeltaX(u8g_t *u8g, uint8_t requested_encoding) +{ + if ( u8g_GetGlyph(u8g, requested_encoding) == NULL ) + return 0; /* should never happen, so return something */ + return u8g->glyph_dx; +} + + +/*========================================================================*/ +/* glyph drawing procedures */ + +#ifdef OBSOLETE +/* + Draw a glyph + x,y: left baseline position of the glyph +*/ +int8_t u8g_DrawGlyphDir(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t encoding) +{ + u8g_glyph_t g; + uint8_t w, h, i, j; + const u8g_pgm_uint8_t *data; + uint8_t bytes_per_line; + u8g_uint_t ix, iy; + + g = u8g_GetGlyph(u8g, encoding); + if ( g == NULL ) + return 0; + w = u8g->glyph_width; + h = u8g->glyph_height; + + bytes_per_line = w; + bytes_per_line += 7; + bytes_per_line /= 8; + + data = u8g_font_GetGlyphDataStart(u8g->font, g); + + switch(dir) + { + case 0: + x += u8g->glyph_x; + y -= u8g->glyph_y; + y--; + //u8g_DrawFrame(u8g, x, y-h+1, w, h); + if ( u8g_IsBBXIntersection(u8g, x, y-h+1, w, h) == 0 ) + return u8g->glyph_dx; + + iy = y; + iy -= h; + iy++; + + for( j = 0; j < h; j++ ) + { + ix = x; + for( i = 0; i < bytes_per_line; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, dir, u8g_pgm_read(data)); + data++; + ix+=8; + } + iy++; + } + break; + case 1: + x += u8g->glyph_y; + x++; + y += u8g->glyph_x; + //printf("enc %d, dir %d, x %d, y %d, w %d, h %d\n", encoding, dir, x, y, w, h); + //u8g_DrawFrame(u8g, x, y, h, w); + if ( u8g_IsBBXIntersection(u8g, x, y, h, w) == 0 ) + return u8g->glyph_dx; + + ix = x; + ix += h; + ix--; + for( j = 0; j < h; j++ ) + { + iy = y; + for( i = 0; i < bytes_per_line; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, dir, u8g_pgm_read(data)); + data++; + iy+=8; + } + ix--; + } + break; + case 2: + x -= u8g->glyph_x; + y += u8g->glyph_y; + y++; + if ( u8g_IsBBXIntersection(u8g, x-w-1, y, w, h) == 0 ) + return u8g->glyph_dx; + + iy = y; + iy += h; + iy--; + for( j = 0; j < h; j++ ) + { + ix = x; + for( i = 0; i < bytes_per_line; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, dir, u8g_pgm_read(data)); + data++; + ix-=8; + } + iy--; + } + break; + case 3: + x -= u8g->glyph_y; + x--; + y -= u8g->glyph_x; + + if ( u8g_IsBBXIntersection(u8g, x-h-1, y-w-1, h, w) == 0 ) + return u8g->glyph_dx; + + ix = x; + ix -= h; + ix++; + + for( j = 0; j < h; j++ ) + { + iy = y; + for( i = 0; i < bytes_per_line; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, dir, u8g_pgm_read(data)); + data++; + iy-=8; + } + ix++; + } + break; + } + return u8g->glyph_dx; +} +#endif + +int8_t u8g_draw_glyph(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + const u8g_pgm_uint8_t *data; + uint8_t w, h; + uint8_t i, j; + u8g_uint_t ix, iy; + + { + u8g_glyph_t g = u8g_GetGlyph(u8g, encoding); + if ( g == NULL ) + return 0; + data = u8g_font_GetGlyphDataStart(u8g->font, g); + } + + w = u8g->glyph_width; + h = u8g->glyph_height; + + x += u8g->glyph_x; + y -= u8g->glyph_y; + y--; + + if ( u8g_IsBBXIntersection(u8g, x, y-h+1, w, h) == 0 ) + return u8g->glyph_dx; + + /* now, w is reused as bytes per line */ + w += 7; + w /= 8; + + iy = y; + iy -= h; + iy++; + + for( j = 0; j < h; j++ ) + { + ix = x; + for( i = 0; i < w; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, 0, u8g_pgm_read(data)); + data++; + ix+=8; + } + iy++; + } + return u8g->glyph_dx; +} + +int8_t u8g_DrawGlyph(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + y += u8g->font_calc_vref(u8g); + return u8g_draw_glyph(u8g, x, y, encoding); +} + +int8_t u8g_draw_glyph90(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + const u8g_pgm_uint8_t *data; + uint8_t w, h; + uint8_t i, j; + u8g_uint_t ix, iy; + + { + u8g_glyph_t g = u8g_GetGlyph(u8g, encoding); + if ( g == NULL ) + return 0; + data = u8g_font_GetGlyphDataStart(u8g->font, g); + } + + w = u8g->glyph_width; + h = u8g->glyph_height; + + x += u8g->glyph_y; + x++; + y += u8g->glyph_x; + + if ( u8g_IsBBXIntersection(u8g, x, y, h, w) == 0 ) + return u8g->glyph_dx; + + /* now, w is reused as bytes per line */ + w += 7; + w /= 8; + + ix = x; + ix += h; + ix--; + for( j = 0; j < h; j++ ) + { + iy = y; + for( i = 0; i < w; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, 1, u8g_pgm_read(data)); + data++; + iy+=8; + } + ix--; + } + return u8g->glyph_dx; +} + +int8_t u8g_DrawGlyph90(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + x -= u8g->font_calc_vref(u8g); + return u8g_draw_glyph90(u8g, x, y, encoding); +} + + +int8_t u8g_draw_glyph180(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + const u8g_pgm_uint8_t *data; + uint8_t w, h; + uint8_t i, j; + u8g_uint_t ix, iy; + + { + u8g_glyph_t g = u8g_GetGlyph(u8g, encoding); + if ( g == NULL ) + return 0; + data = u8g_font_GetGlyphDataStart(u8g->font, g); + } + + w = u8g->glyph_width; + h = u8g->glyph_height; + + x -= u8g->glyph_x; + y += u8g->glyph_y; + y++; + + if ( u8g_IsBBXIntersection(u8g, x-(w-1), y, w, h) == 0 ) + return u8g->glyph_dx; + + /* now, w is reused as bytes per line */ + w += 7; + w /= 8; + + iy = y; + iy += h; + iy--; + for( j = 0; j < h; j++ ) + { + ix = x; + for( i = 0; i < w; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, 2, u8g_pgm_read(data)); + data++; + ix-=8; + } + iy--; + } + return u8g->glyph_dx; +} + +int8_t u8g_DrawGlyph180(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + y -= u8g->font_calc_vref(u8g); + return u8g_draw_glyph180(u8g, x, y, encoding); +} + + +int8_t u8g_draw_glyph270(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + const u8g_pgm_uint8_t *data; + uint8_t w, h; + uint8_t i, j; + u8g_uint_t ix, iy; + + { + u8g_glyph_t g = u8g_GetGlyph(u8g, encoding); + if ( g == NULL ) + return 0; + data = u8g_font_GetGlyphDataStart(u8g->font, g); + } + + w = u8g->glyph_width; + h = u8g->glyph_height; + + x -= u8g->glyph_y; + x--; + y -= u8g->glyph_x; + + if ( u8g_IsBBXIntersection(u8g, x-(h-1), y-(w-1), h, w) == 0 ) + return u8g->glyph_dx; + + + /* now, w is reused as bytes per line */ + w += 7; + w /= 8; + + ix = x; + ix -= h; + ix++; + + for( j = 0; j < h; j++ ) + { + iy = y; + for( i = 0; i < w; i++ ) + { + u8g_Draw8Pixel(u8g, ix, iy, 3, u8g_pgm_read(data)); + data++; + iy-=8; + } + ix++; + } + return u8g->glyph_dx; +} + +int8_t u8g_DrawGlyph270(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t encoding) +{ + x += u8g->font_calc_vref(u8g); + return u8g_draw_glyph270(u8g, x, y, encoding); +} + + + +#ifdef OBSOLETE +/* + Draw a glyph + x,y: lower left corner of the font bounding box +*/ +int8_t u8g_DrawGlyphFontBBX(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t encoding) +{ + /* TODO: apply "dir" */ + x -= u8g_GetFontBBXOffX(u8g); + y += u8g_GetFontBBXOffY(u8g); + return u8g_DrawGlyphDir(u8g, x, y, dir, encoding); +} +#endif + +/*========================================================================*/ +/* string drawing procedures */ + + +u8g_uint_t u8g_DrawStr(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s) +{ + u8g_uint_t t = 0; + int8_t d; + + //u8g_uint_t u8g_GetStrWidth(u8g, s); + //u8g_font_GetFontAscent(u8g->font)-u8g_font_GetFontDescent(u8g->font); + + y += u8g->font_calc_vref(u8g); + + while( *s != '\0' ) + { + d = u8g_draw_glyph(u8g, x, y, *s); + x += d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStr90(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s) +{ + u8g_uint_t t = 0; + int8_t d; + + x -= u8g->font_calc_vref(u8g); + + while( *s != '\0' ) + { + d = u8g_draw_glyph90(u8g, x, y, *s); + y += d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStr180(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s) +{ + u8g_uint_t t = 0; + int8_t d; + + y -= u8g->font_calc_vref(u8g); + + while( *s != '\0' ) + { + d = u8g_draw_glyph180(u8g, x, y, *s); + x -= d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStr270(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const char *s) +{ + u8g_uint_t t = 0; + int8_t d; + + x += u8g->font_calc_vref(u8g); + + while( *s != '\0' ) + { + d = u8g_draw_glyph270(u8g, x, y, *s); + y -= d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStrDir(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, const char *s) +{ + switch(dir) + { + case 0: + return u8g_DrawStr(u8g, x, y, s); + case 1: + return u8g_DrawStr90(u8g, x, y, s); + case 2: + return u8g_DrawStr180(u8g, x, y, s); + case 3: + return u8g_DrawStr270(u8g, x, y, s); + } + return 0; +} + +u8g_uint_t u8g_DrawStrP(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) +{ + u8g_uint_t t = 0; + int8_t d; + uint8_t c; + + y += u8g->font_calc_vref(u8g); + + for(;;) + { + c = u8g_pgm_read(s); + if ( c == '\0' ) + break; + d = u8g_draw_glyph(u8g, x, y, c); + x += d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStr90P(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) +{ + u8g_uint_t t = 0; + int8_t d; + + x -= u8g->font_calc_vref(u8g); + + while( *s != '\0' ) + { + d = u8g_DrawGlyph90(u8g, x, y, u8g_pgm_read(s)); + y += d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStr180P(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) +{ + u8g_uint_t t = 0; + int8_t d; + + y -= u8g->font_calc_vref(u8g); + + while( *s != '\0' ) + { + d = u8g_DrawGlyph180(u8g, x, y, u8g_pgm_read(s)); + x -= d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStr270P(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, const u8g_pgm_uint8_t *s) +{ + u8g_uint_t t = 0; + int8_t d; + + x += u8g->font_calc_vref(u8g); + + while( *s != '\0' ) + { + d = u8g_DrawGlyph270(u8g, x, y, u8g_pgm_read(s)); + y -= d; + t += d; + s++; + } + return t; +} + +u8g_uint_t u8g_DrawStrFontBBX(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, const char *s) +{ + x -= u8g_GetFontBBXOffX(u8g); + y += u8g_GetFontBBXOffY(u8g); + return u8g_DrawStrDir(u8g, x, y, dir, s); +} + +/* still used by picgen.c, dir argument is ignored */ +int8_t u8g_DrawGlyphFontBBX(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t encoding) +{ + x -= u8g_GetFontBBXOffX(u8g); + y += u8g_GetFontBBXOffY(u8g); + u8g_draw_glyph(u8g, x, y, encoding); +} + + +/*========================================================================*/ +/* set ascent/descent for reference point calculation */ + +void u8g_UpdateRefHeight(u8g_t *u8g) +{ + uint16_t ls; + if ( u8g->font == NULL ) + return; + if ( u8g->font_height_mode == U8G_FONT_HEIGHT_MODE_TEXT ) + { + u8g->font_ref_ascent = u8g_font_GetCapitalAHeight(u8g->font); + u8g->font_ref_descent = u8g_font_GetLowerGDescent(u8g->font); + } + else if ( u8g->font_height_mode == U8G_FONT_HEIGHT_MODE_XTEXT ) + { + u8g->font_ref_ascent = u8g_font_GetFontXAscent(u8g->font); + u8g->font_ref_descent = u8g_font_GetFontXDescent(u8g->font); + } + else + { + u8g->font_ref_ascent = u8g_font_GetFontAscent(u8g->font); + u8g->font_ref_descent = u8g_font_GetFontDescent(u8g->font); + } + + ls = u8g->font_ref_ascent - u8g->font_ref_descent; + if ( u8g->font_line_spacing_factor != 64 ) + { + ls &= 255; + ls *= u8g->font_line_spacing_factor; + ls >>= 6; + } + u8g->line_spacing = ls; +} + +void u8g_SetFontRefHeightText(u8g_t *u8g) +{ + u8g->font_height_mode = U8G_FONT_HEIGHT_MODE_TEXT; + u8g_UpdateRefHeight(u8g); +} + +void u8g_SetFontRefHeightExtendedText(u8g_t *u8g) +{ + u8g->font_height_mode = U8G_FONT_HEIGHT_MODE_XTEXT; + u8g_UpdateRefHeight(u8g); +} + + +void u8g_SetFontRefHeightAll(u8g_t *u8g) +{ + u8g->font_height_mode = U8G_FONT_HEIGHT_MODE_ALL; + u8g_UpdateRefHeight(u8g); +} + +/* factor = 64: linespaceing == ascent and descent */ +void u8g_SetFontLineSpacingFactor(u8g_t *u8g, uint8_t factor) +{ + u8g->font_line_spacing_factor = factor; + u8g_UpdateRefHeight(u8g); +} + + + +/*========================================================================*/ +/* callback procedures to correct the y position */ + +u8g_uint_t u8g_font_calc_vref_font(u8g_t *u8g) +{ + return 0; +} + +void u8g_SetFontPosBaseline(u8g_t *u8g) +{ + u8g->font_calc_vref = u8g_font_calc_vref_font; +} + + +u8g_uint_t u8g_font_calc_vref_bottom(u8g_t *u8g) +{ + /* y += (u8g_uint_t)(u8g_int_t)(u8g->font_ref_descent); */ + return (u8g_uint_t)(u8g_int_t)(u8g->font_ref_descent); +} + +void u8g_SetFontPosBottom(u8g_t *u8g) +{ + u8g->font_calc_vref = u8g_font_calc_vref_bottom; +} + +u8g_uint_t u8g_font_calc_vref_top(u8g_t *u8g) +{ + u8g_uint_t tmp; + /* reference pos is one pixel above the upper edge of the reference glyph */ + + /* + y += (u8g_uint_t)(u8g_int_t)(u8g->font_ref_ascent); + y++; + */ + tmp = (u8g_uint_t)(u8g_int_t)(u8g->font_ref_ascent); + tmp++; + return tmp; +} + +void u8g_SetFontPosTop(u8g_t *u8g) +{ + u8g->font_calc_vref = u8g_font_calc_vref_top; +} + +u8g_uint_t u8g_font_calc_vref_center(u8g_t *u8g) +{ + int8_t tmp; + tmp = u8g->font_ref_ascent; + tmp -= u8g->font_ref_descent; + tmp /= 2; + tmp += u8g->font_ref_descent; + /* y += (u8g_uint_t)(u8g_int_t)(tmp); */ + return tmp; +} + +void u8g_SetFontPosCenter(u8g_t *u8g) +{ + u8g->font_calc_vref = u8g_font_calc_vref_center; +} + +/*========================================================================*/ +/* string pixel width calculation */ + +char u8g_font_get_char(const void *s) +{ + return *(const char *)(s); +} + +char u8g_font_get_charP(const void *s) +{ + return u8g_pgm_read(s); +} + +typedef char (*u8g_font_get_char_fn)(const void *s); + + +u8g_uint_t u8g_font_calc_str_pixel_width(u8g_t *u8g, const char *s, u8g_font_get_char_fn get_char ) +{ + u8g_uint_t w; + uint8_t enc; + + /* reset the total minimal width to zero, this will be expanded during calculation */ + w = 0; + + enc = get_char(s); + + /* check for empty string, width is already 0 */ + if ( enc == '\0' ) + { + return w; + } + + /* get the glyph information of the first char. This must be valid, because we already checked for the empty string */ + /* if *s is not inside the font, then the cached parameters of the glyph are all zero */ + u8g_GetGlyph(u8g, enc); + + /* strlen(s) == 1: width = width(s[0]) */ + /* strlen(s) == 2: width = - offx(s[0]) + deltax(s[0]) + offx(s[1]) + width(s[1]) */ + /* strlen(s) == 3: width = - offx(s[0]) + deltax(s[0]) + deltax(s[1]) + offx(s[2]) + width(s[2]) */ + + /* assume that the string has size 2 or more, than start with negative offset-x */ + /* for string with size 1, this will be nullified after the loop */ + w = -u8g->glyph_x; + for(;;) + { + + /* check and stop if the end of the string is reached */ + s++; + if ( get_char(s) == '\0' ) + break; + + /* if there are still more characters, add the delta to the next glyph */ + w += u8g->glyph_dx; + + /* store the encoding in a local variable, used also after the for(;;) loop */ + enc = get_char(s); + + /* load the next glyph information */ + u8g_GetGlyph(u8g, enc); + } + + /* finally calculate the width of the last char */ + /* here is another exception, if the last char is a black, use the dx value instead */ + if ( enc != ' ' ) + { + /* if g was not updated in the for loop (strlen() == 1), then the initial offset x gets removed */ + w += u8g->glyph_width; + w += u8g->glyph_x; + } + else + { + w += u8g->glyph_dx; + } + + + return w; +} + +u8g_uint_t u8g_GetStrPixelWidth(u8g_t *u8g, const char *s) +{ + return u8g_font_calc_str_pixel_width(u8g, s, u8g_font_get_char); +} + +u8g_uint_t u8g_GetStrPixelWidthP(u8g_t *u8g, const u8g_pgm_uint8_t *s) +{ + return u8g_font_calc_str_pixel_width(u8g, (const char *)s, u8g_font_get_charP); +} + +int8_t u8g_GetStrX(u8g_t *u8g, const char *s) +{ + u8g_GetGlyph(u8g, *s); + return u8g->glyph_x; +} + +int8_t u8g_GetStrXP(u8g_t *u8g, const u8g_pgm_uint8_t *s) +{ + u8g_GetGlyph(u8g, u8g_pgm_read(s)); + return u8g->glyph_x; +} + +/*========================================================================*/ +/* string width calculation */ + +u8g_uint_t u8g_GetStrWidth(u8g_t *u8g, const char *s) +{ + u8g_uint_t w; + uint8_t encoding; + + /* reset the total width to zero, this will be expanded during calculation */ + w = 0; + + for(;;) + { + encoding = *s; + if ( encoding == 0 ) + break; + + /* load glyph information */ + u8g_GetGlyph(u8g, encoding); + w += u8g->glyph_dx; + + /* goto next char */ + s++; + } + + return w; +} + + +u8g_uint_t u8g_GetStrWidthP(u8g_t *u8g, const u8g_pgm_uint8_t *s) +{ + u8g_uint_t w; + uint8_t encoding; + + /* reset the total width to zero, this will be expanded during calculation */ + w = 0; + + for(;;) + { + encoding = u8g_pgm_read(s); + if ( encoding == 0 ) + break; + + /* load glyph information */ + u8g_GetGlyph(u8g, encoding); + w += u8g->glyph_dx; + + /* goto next char */ + s++; + } + + return w; +} + + +/*========================================================================*/ +/* calculation of font/glyph/string characteristics */ + + +/* + Description: + Calculate parameter for the minimal bounding box on a given string + Output + buf->y_min extend of the lower left edge if the string below (y_min<0) or above (y_min>0) baseline (descent) + buf->y_max extend of the upper left edge if the string below (y_min<0) or above (y_min>0) baseline (ascent) + buf->w the width of the string +*/ +struct u8g_str_size_struct +{ + int8_t y_min; /* descent */ + int8_t y_max; /* ascent */ + int8_t x, y; /* the reference point of the font (negated!) */ + u8g_uint_t w; /* width of the overall string */ +}; +typedef struct u8g_str_size_struct u8g_str_size_t; + +static void u8g_font_calc_str_min_box(u8g_t *u8g, const char *s, u8g_str_size_t *buf) +{ + /* u8g_glyph_t g; */ + int8_t tmp; + + /* reset the total minimal width to zero, this will be expanded during calculation */ + buf->w = 0; + + /* check for empty string, width is already 0, but also reset y_min and y_max to 0 */ + if ( *s == '\0' ) + { + buf->y_min = 0; + buf->y_max = 0; + buf->x = 0; + buf->y = 0; + return; + } + + /* reset y_min to the largest possible value. Later we search for the smallest value */ + /* y_min contains the position [pixel] of the lower left edge of the glyph above (y_min>0) or below (y_min<0) baseline */ + buf->y_min = 127; + /* reset y_max to the smallest possible value. Later we search for the highest value */ + /* y_max contains the position [pixel] of the upper left edge of the glyph above (y_max>0) or below (y_max<0) baseline */ + buf->y_max = -128; + + /* get the glyph information of the first char. This must be valid, because we already checked for the empty string */ + u8g_GetGlyph(u8g, *s); + + /* strlen(s) == 1: width = width(s[0]) */ + /* strlen(s) == 2: width = - offx(s[0]) + deltax(s[0]) + offx(s[1]) + width(s[1]) */ + /* strlen(s) == 3: width = - offx(s[0]) + deltax(s[0]) + deltax(s[1]) + offx(s[2]) + width(s[2]) */ + + /* assume that the string has size 2 or more, than start with negative offset-x */ + /* for string with size 1, this will be nullified after the loop */ + // buf->w = - u8g_font_GetGlyphBBXOffX(u8g->font, g); + buf->w = - u8g->glyph_x; + + /* Also copy the position of the first glyph. This is the reference point of the string (negated) */ + buf->x = u8g->glyph_x; + buf->y = u8g->glyph_y; + + for(;;) + { + + /* calculated y position of the upper left corner (y_max) and lower left corner (y_min) of the string */ + /* relative to the base line */ + + tmp = u8g->glyph_y; + if ( buf->y_min > tmp ) + buf->y_min = tmp; + + tmp +=u8g->glyph_height; + if ( buf->y_max < tmp ) + buf->y_max = tmp; + + /* check and stop if the end of the string is reached */ + s++; + if ( *s == '\0' ) + break; + + /* if there are still more characters, add the delta to the next glyph */ + buf->w += u8g->glyph_dx; + + /* load the next glyph information */ + u8g_GetGlyph(u8g, *s); + } + + /* finally calculate the width of the last char */ + /* if g was not updated in the for loop (strlen() == 1), then the initial offset x gets removed */ + buf->w += u8g->glyph_width; + // buf->w += u8g_font_GetGlyphBBXOffX(u8g->font, g); + + buf->w += u8g->glyph_x; +} + +/* calculate minimal box */ +void u8g_font_box_min(u8g_t *u8g, const char *s, u8g_str_size_t *buf) +{ + u8g_font_calc_str_min_box(u8g, s, buf); +} + +/* calculate gA box, but do not calculate the overall width */ +void u8g_font_box_left_gA(u8g_t *u8g, const char *s, u8g_str_size_t *buf) +{ + +} + +/* calculate gA box, including overall width */ +void u8g_font_box_all_gA(u8g_t *u8g, const char *s, u8g_str_size_t *buf) +{ + +} + + +static void u8g_font_get_str_box_fill_args(u8g_t *u8g, const char *s, u8g_str_size_t *buf, u8g_uint_t *x, u8g_uint_t *y, u8g_uint_t *width, u8g_uint_t *height) +{ + /* + u8g_glyph_t g; + g = + */ + u8g_GetGlyph(u8g, *s); + *x += u8g->glyph_x; + *width = buf->w; + *y -= buf->y_max; + /* +1 because y_max is a height, this compensates the next step */ + //*y += 1; + /* because the reference point is one below the string, this compensates the previous step */ + //*y -= 1; + *height = buf->y_max; + *height -= buf->y_min; +} + + +void u8g_GetStrMinBox(u8g_t *u8g, const char *s, u8g_uint_t *x, u8g_uint_t *y, u8g_uint_t *width, u8g_uint_t *height) +{ + u8g_str_size_t buf; + + if ( *s == '\0' ) + { + *width= 0; + *height = 0; + return; + } + + u8g_font_calc_str_min_box(u8g, s, &buf); + u8g_font_get_str_box_fill_args(u8g, s, &buf, x, y, width, height); +} + + +void u8g_GetStrAMinBox(u8g_t *u8g, const char *s, u8g_uint_t *x, u8g_uint_t *y, u8g_uint_t *width, u8g_uint_t *height) +{ + u8g_str_size_t buf; + uint8_t cap_a; + + if ( *s == '\0' ) + { + *width= 0; + *height = 0; + return; + } + + cap_a = u8g_font_GetCapitalAHeight(u8g->font); + u8g_font_calc_str_min_box(u8g, s, &buf); + if ( buf.y_max < cap_a ) + buf.y_max = cap_a; + u8g_font_get_str_box_fill_args(u8g, s, &buf, x, y, width, height); +} + +void u8g_SetFont(u8g_t *u8g, const u8g_fntpgm_uint8_t *font) +{ + if ( u8g->font != font ) + { + u8g->font = font; + u8g_UpdateRefHeight(u8g); + u8g_SetFontPosBaseline(u8g); + } +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_font_data.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_font_data.c new file mode 100644 index 0000000000000000000000000000000000000000..dca21c5a3f4781eb1475d24e83a22b6dbd567dc4 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_font_data.c @@ -0,0 +1,84486 @@ +/* + Fontname: -FreeType-04b03b-Medium-R-Normal--8-80-72-72-P-39-ISO10646-1 + Copyright: 19992003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 3 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_03b[826] U8G_SECTION(".progmem.u8g_font_04b_03b") = { + 1,5,6,0,255,5,0,250,1,240,32,255,255,5,255,5, + 255,2,0,48,2,21,37,128,128,128,0,128,5,50,66,160, + 160,2,85,101,80,248,80,248,80,2,69,85,112,160,240,80, + 224,2,85,101,200,208,32,88,152,2,85,101,224,128,248,144, + 240,5,18,34,128,128,2,37,53,64,128,128,128,64,2,37, + 53,128,64,64,64,128,4,51,67,160,64,160,3,51,67,64, + 224,64,1,34,50,64,128,4,49,65,224,2,17,33,128,2, + 85,101,8,16,32,64,128,2,69,85,240,144,144,144,240,2, + 37,53,192,64,64,64,64,2,69,85,240,16,240,128,240,2, + 69,85,240,16,240,16,240,2,69,85,144,144,144,240,16,2, + 69,85,240,128,240,16,240,2,69,85,224,128,240,144,240,2, + 69,85,240,16,32,64,64,2,69,85,240,144,240,144,240,2, + 69,85,240,144,240,16,112,3,19,35,128,0,128,2,20,36, + 128,0,128,128,2,53,69,32,64,128,64,32,3,51,67,224, + 0,224,2,53,69,128,64,32,64,128,2,69,85,240,16,112, + 0,64,2,85,101,248,136,184,168,240,2,69,85,240,144,240, + 144,144,2,69,85,224,160,240,144,240,2,69,85,240,128,128, + 128,240,2,69,85,224,144,144,144,224,2,69,85,240,128,240, + 128,240,2,69,85,240,128,240,128,128,2,69,85,240,128,176, + 144,240,2,69,85,144,144,240,144,144,2,53,69,224,64,64, + 64,224,2,69,85,48,16,16,144,240,2,69,85,144,144,224, + 144,144,2,69,85,128,128,128,128,240,2,85,101,248,168,168, + 168,168,2,69,85,144,208,176,144,144,2,69,85,240,144,144, + 144,240,2,69,85,240,144,144,240,128,2,69,85,240,144,144, + 176,240,2,69,85,240,144,240,160,176,2,69,85,240,128,240, + 16,240,2,53,69,224,64,64,64,64,2,69,85,144,144,144, + 144,240,2,69,85,144,144,160,160,64,2,85,101,168,168,168, + 168,248,2,69,85,144,144,96,144,144,2,69,85,144,144,240, + 16,240,2,69,85,240,16,96,128,240,2,37,53,192,128,128, + 128,192,2,85,101,128,64,32,16,8,2,37,53,192,64,64, + 64,192,5,50,66,64,160,2,65,81,240,5,34,50,128,64, + 2,67,83,112,144,240,2,68,84,128,240,144,240,2,51,67, + 224,128,224,2,68,84,16,240,144,240,2,67,83,240,160,112, + 2,68,84,112,64,240,64,1,68,84,240,144,240,32,2,68, + 84,128,240,144,144,2,20,36,128,0,128,128,1,21,37,128, + 0,128,128,128,2,68,84,128,144,224,144,2,20,36,128,128, + 128,128,2,83,99,248,168,168,2,67,83,240,144,144,2,67, + 83,240,144,240,1,68,84,240,144,240,128,1,68,84,240,144, + 240,16,2,51,67,224,128,128,2,67,83,240,64,240,2,52, + 68,64,224,64,96,2,67,83,144,144,240,2,67,83,144,144, + 96,2,83,99,168,168,248,2,51,67,160,64,160,1,68,84, + 144,144,240,16,2,67,83,240,32,240,2,53,69,96,64,128, + 64,96,2,21,37,128,128,128,128,128,2,53,69,192,64,32, + 64,192,5,66,82,80,160,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,2,0,64,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255}; +/* + Fontname: -FreeType-04b03b-Medium-R-Normal--8-80-72-72-P-39-ISO10646-1 + Copyright: 19992003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 2 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_03bn[130] U8G_SECTION(".progmem.u8g_font_04b_03bn") = { + 1,5,6,0,255,5,0,0,0,0,42,57,0,5,255,5, + 0,4,51,67,160,64,160,3,51,67,64,224,64,1,34,50, + 64,128,4,49,65,224,2,17,33,128,2,85,101,8,16,32, + 64,128,2,69,85,240,144,144,144,240,2,37,53,192,64,64, + 64,64,2,69,85,240,16,240,128,240,2,69,85,240,16,240, + 16,240,2,69,85,144,144,144,240,16,2,69,85,240,128,240, + 16,240,2,69,85,224,128,240,144,240,2,69,85,240,16,32, + 64,64,2,69,85,240,144,240,144,240,2,69,85,240,144,240, + 16,112}; +/* + Fontname: -FreeType-04b03b-Medium-R-Normal--8-80-72-72-P-39-ISO10646-1 + Copyright: 19992003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 3 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_03br[696] U8G_SECTION(".progmem.u8g_font_04b_03br") = { + 1,5,6,0,255,5,0,250,1,240,32,127,255,5,255,5, + 255,2,0,48,2,21,37,128,128,128,0,128,5,50,66,160, + 160,2,85,101,80,248,80,248,80,2,69,85,112,160,240,80, + 224,2,85,101,200,208,32,88,152,2,85,101,224,128,248,144, + 240,5,18,34,128,128,2,37,53,64,128,128,128,64,2,37, + 53,128,64,64,64,128,4,51,67,160,64,160,3,51,67,64, + 224,64,1,34,50,64,128,4,49,65,224,2,17,33,128,2, + 85,101,8,16,32,64,128,2,69,85,240,144,144,144,240,2, + 37,53,192,64,64,64,64,2,69,85,240,16,240,128,240,2, + 69,85,240,16,240,16,240,2,69,85,144,144,144,240,16,2, + 69,85,240,128,240,16,240,2,69,85,224,128,240,144,240,2, + 69,85,240,16,32,64,64,2,69,85,240,144,240,144,240,2, + 69,85,240,144,240,16,112,3,19,35,128,0,128,2,20,36, + 128,0,128,128,2,53,69,32,64,128,64,32,3,51,67,224, + 0,224,2,53,69,128,64,32,64,128,2,69,85,240,16,112, + 0,64,2,85,101,248,136,184,168,240,2,69,85,240,144,240, + 144,144,2,69,85,224,160,240,144,240,2,69,85,240,128,128, + 128,240,2,69,85,224,144,144,144,224,2,69,85,240,128,240, + 128,240,2,69,85,240,128,240,128,128,2,69,85,240,128,176, + 144,240,2,69,85,144,144,240,144,144,2,53,69,224,64,64, + 64,224,2,69,85,48,16,16,144,240,2,69,85,144,144,224, + 144,144,2,69,85,128,128,128,128,240,2,85,101,248,168,168, + 168,168,2,69,85,144,208,176,144,144,2,69,85,240,144,144, + 144,240,2,69,85,240,144,144,240,128,2,69,85,240,144,144, + 176,240,2,69,85,240,144,240,160,176,2,69,85,240,128,240, + 16,240,2,53,69,224,64,64,64,64,2,69,85,144,144,144, + 144,240,2,69,85,144,144,160,160,64,2,85,101,168,168,168, + 168,248,2,69,85,144,144,96,144,144,2,69,85,144,144,240, + 16,240,2,69,85,240,16,96,128,240,2,37,53,192,128,128, + 128,192,2,85,101,128,64,32,16,8,2,37,53,192,64,64, + 64,192,5,50,66,64,160,2,65,81,240,5,34,50,128,64, + 2,67,83,112,144,240,2,68,84,128,240,144,240,2,51,67, + 224,128,224,2,68,84,16,240,144,240,2,67,83,240,160,112, + 2,68,84,112,64,240,64,1,68,84,240,144,240,32,2,68, + 84,128,240,144,144,2,20,36,128,0,128,128,1,21,37,128, + 0,128,128,128,2,68,84,128,144,224,144,2,20,36,128,128, + 128,128,2,83,99,248,168,168,2,67,83,240,144,144,2,67, + 83,240,144,240,1,68,84,240,144,240,128,1,68,84,240,144, + 240,16,2,51,67,224,128,128,2,67,83,240,64,240,2,52, + 68,64,224,64,96,2,67,83,144,144,240,2,67,83,144,144, + 96,2,83,99,168,168,248,2,51,67,160,64,160,1,68,84, + 144,144,240,16,2,67,83,240,32,240,2,53,69,96,64,128, + 64,96,2,21,37,128,128,128,128,128,2,53,69,192,64,32, + 64,192,5,66,82,80,160,255}; +/* + Fontname: -FreeType-04b03-Medium-R-Normal--8-80-72-72-P-38-ISO10646-1 + Copyright: 19992003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 7 x= 0 y= 3 dx= 6 dy= 0 ascent= 5 len= 7 + Font Bounding box w= 5 h= 7 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 5 descent=-2 + Max Font ascent = 5 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_03[859] U8G_SECTION(".progmem.u8g_font_04b_03") = { + 1,5,7,0,254,5,0,251,1,242,32,255,254,5,254,5, + 254,2,0,64,2,21,37,128,128,128,0,128,5,50,66,160, + 160,2,85,101,80,248,80,248,80,1,70,86,32,112,192,48, + 224,32,2,85,101,144,16,32,64,72,2,85,101,96,128,104, + 144,104,5,18,34,128,128,2,37,53,64,128,128,128,64,2, + 37,53,128,64,64,64,128,4,51,67,160,64,160,3,51,67, + 64,224,64,1,34,50,64,128,4,49,65,224,2,17,33,128, + 2,85,101,8,16,32,64,128,2,69,85,96,144,144,144,96, + 2,37,53,192,64,64,64,64,2,69,85,224,16,96,128,240, + 2,69,85,224,16,96,16,224,2,69,85,32,96,160,240,32, + 2,69,85,240,128,224,16,224,2,69,85,96,128,224,144,96, + 2,69,85,240,16,32,64,64,2,69,85,96,144,96,144,96, + 2,69,85,96,144,112,16,96,3,19,35,128,0,128,2,20, + 36,128,0,128,128,2,53,69,32,64,128,64,32,3,51,67, + 224,0,224,2,53,69,128,64,32,64,128,2,69,85,224,16, + 96,0,64,2,85,101,112,136,184,168,112,2,69,85,96,144, + 144,240,144,2,69,85,224,144,224,144,224,2,53,69,96,128, + 128,128,96,2,69,85,224,144,144,144,224,2,53,69,224,128, + 224,128,224,2,53,69,224,128,224,128,128,2,69,85,112,128, + 176,144,112,2,69,85,144,144,240,144,144,2,53,69,224,64, + 64,64,224,2,69,85,48,16,16,144,96,2,69,85,144,160, + 192,160,144,2,53,69,128,128,128,128,224,2,85,101,136,216, + 168,136,136,2,69,85,144,208,176,144,144,2,69,85,96,144, + 144,144,96,2,69,85,224,144,144,224,128,1,70,86,96,144, + 144,144,96,16,2,69,85,224,144,144,224,144,2,69,85,112, + 128,96,16,224,2,53,69,224,64,64,64,64,2,69,85,144, + 144,144,144,96,2,69,85,144,144,160,160,64,2,85,101,136, + 168,168,168,80,2,69,85,144,144,96,144,144,2,69,85,144, + 144,112,16,96,2,53,69,224,32,64,128,224,2,37,53,192, + 128,128,128,192,2,85,101,128,64,32,16,8,2,37,53,192, + 64,64,64,192,5,50,66,64,160,2,65,81,240,5,34,50, + 128,64,2,68,84,112,144,144,112,2,69,85,128,224,144,144, + 224,2,52,68,96,128,128,96,2,69,85,16,112,144,144,112, + 2,68,84,96,176,192,96,2,53,69,32,64,224,64,64,0, + 70,86,112,144,144,112,16,96,2,69,85,128,224,144,144,144, + 2,21,37,128,0,128,128,128,0,39,55,64,0,64,64,64, + 64,128,2,69,85,128,144,160,224,144,2,21,37,128,128,128, + 128,128,2,84,100,240,168,168,168,2,68,84,224,144,144,144, + 2,68,84,96,144,144,96,0,70,86,224,144,144,224,128,128, + 0,70,86,112,144,144,112,16,16,2,52,68,160,192,128,128, + 2,68,84,112,192,48,224,2,53,69,64,224,64,64,32,2, + 68,84,144,144,144,112,2,68,84,144,144,160,64,2,84,100, + 168,168,80,80,2,52,68,160,64,64,160,0,70,86,144,144, + 144,112,16,96,2,68,84,240,32,64,240,2,53,69,96,64, + 128,64,96,2,21,37,128,128,128,128,128,2,53,69,192,64, + 32,64,192,5,66,82,80,160,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,2,0,64,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255}; +/* + Fontname: -FreeType-04b03-Medium-R-Normal--8-80-72-72-P-38-ISO10646-1 + Copyright: 19992003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 2 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 7 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_03n[130] U8G_SECTION(".progmem.u8g_font_04b_03n") = { + 1,5,7,0,254,5,0,0,0,0,42,57,0,5,255,5, + 0,4,51,67,160,64,160,3,51,67,64,224,64,1,34,50, + 64,128,4,49,65,224,2,17,33,128,2,85,101,8,16,32, + 64,128,2,69,85,96,144,144,144,96,2,37,53,192,64,64, + 64,64,2,69,85,224,16,96,128,240,2,69,85,224,16,96, + 16,224,2,69,85,32,96,160,240,32,2,69,85,240,128,224, + 16,224,2,69,85,96,128,224,144,96,2,69,85,240,16,32, + 64,64,2,69,85,96,144,96,144,96,2,69,85,96,144,112, + 16,96}; +/* + Fontname: -FreeType-04b03-Medium-R-Normal--8-80-72-72-P-38-ISO10646-1 + Copyright: 19992003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 7 x= 0 y= 3 dx= 6 dy= 0 ascent= 5 len= 7 + Font Bounding box w= 5 h= 7 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 5 descent=-2 + Max Font ascent = 5 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_03r[729] U8G_SECTION(".progmem.u8g_font_04b_03r") = { + 1,5,7,0,254,5,0,251,1,242,32,127,254,5,254,5, + 254,2,0,64,2,21,37,128,128,128,0,128,5,50,66,160, + 160,2,85,101,80,248,80,248,80,1,70,86,32,112,192,48, + 224,32,2,85,101,144,16,32,64,72,2,85,101,96,128,104, + 144,104,5,18,34,128,128,2,37,53,64,128,128,128,64,2, + 37,53,128,64,64,64,128,4,51,67,160,64,160,3,51,67, + 64,224,64,1,34,50,64,128,4,49,65,224,2,17,33,128, + 2,85,101,8,16,32,64,128,2,69,85,96,144,144,144,96, + 2,37,53,192,64,64,64,64,2,69,85,224,16,96,128,240, + 2,69,85,224,16,96,16,224,2,69,85,32,96,160,240,32, + 2,69,85,240,128,224,16,224,2,69,85,96,128,224,144,96, + 2,69,85,240,16,32,64,64,2,69,85,96,144,96,144,96, + 2,69,85,96,144,112,16,96,3,19,35,128,0,128,2,20, + 36,128,0,128,128,2,53,69,32,64,128,64,32,3,51,67, + 224,0,224,2,53,69,128,64,32,64,128,2,69,85,224,16, + 96,0,64,2,85,101,112,136,184,168,112,2,69,85,96,144, + 144,240,144,2,69,85,224,144,224,144,224,2,53,69,96,128, + 128,128,96,2,69,85,224,144,144,144,224,2,53,69,224,128, + 224,128,224,2,53,69,224,128,224,128,128,2,69,85,112,128, + 176,144,112,2,69,85,144,144,240,144,144,2,53,69,224,64, + 64,64,224,2,69,85,48,16,16,144,96,2,69,85,144,160, + 192,160,144,2,53,69,128,128,128,128,224,2,85,101,136,216, + 168,136,136,2,69,85,144,208,176,144,144,2,69,85,96,144, + 144,144,96,2,69,85,224,144,144,224,128,1,70,86,96,144, + 144,144,96,16,2,69,85,224,144,144,224,144,2,69,85,112, + 128,96,16,224,2,53,69,224,64,64,64,64,2,69,85,144, + 144,144,144,96,2,69,85,144,144,160,160,64,2,85,101,136, + 168,168,168,80,2,69,85,144,144,96,144,144,2,69,85,144, + 144,112,16,96,2,53,69,224,32,64,128,224,2,37,53,192, + 128,128,128,192,2,85,101,128,64,32,16,8,2,37,53,192, + 64,64,64,192,5,50,66,64,160,2,65,81,240,5,34,50, + 128,64,2,68,84,112,144,144,112,2,69,85,128,224,144,144, + 224,2,52,68,96,128,128,96,2,69,85,16,112,144,144,112, + 2,68,84,96,176,192,96,2,53,69,32,64,224,64,64,0, + 70,86,112,144,144,112,16,96,2,69,85,128,224,144,144,144, + 2,21,37,128,0,128,128,128,0,39,55,64,0,64,64,64, + 64,128,2,69,85,128,144,160,224,144,2,21,37,128,128,128, + 128,128,2,84,100,240,168,168,168,2,68,84,224,144,144,144, + 2,68,84,96,144,144,96,0,70,86,224,144,144,224,128,128, + 0,70,86,112,144,144,112,16,16,2,52,68,160,192,128,128, + 2,68,84,112,192,48,224,2,53,69,64,224,64,64,32,2, + 68,84,144,144,144,112,2,68,84,144,144,160,64,2,84,100, + 168,168,80,80,2,52,68,160,64,64,160,0,70,86,144,144, + 144,112,16,96,2,68,84,240,32,64,240,2,53,69,96,64, + 128,64,96,2,21,37,128,128,128,128,128,2,53,69,192,64, + 32,64,192,5,66,82,80,160,255}; +/* + Fontname: -FreeType-04b24-Medium-R-Normal--8-80-72-72-P-32-ISO10646-1 + Copyright: 20002003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 6 x= 0 y= 4 dx= 6 dy= 0 ascent= 5 len= 6 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_24[912] U8G_SECTION(".progmem.u8g_font_04b_24") = { + 1,5,6,0,255,5,0,250,1,241,32,255,0,5,255,5, + 0,2,0,32,2,21,37,128,128,128,0,128,5,50,66,160, + 160,2,53,69,64,224,64,224,64,2,53,69,96,192,64,96, + 192,2,53,69,160,32,64,128,160,2,69,85,96,128,112,160, + 96,5,18,34,128,128,2,37,53,64,128,128,128,64,2,37, + 53,128,64,64,64,128,4,51,67,160,64,160,3,51,67,64, + 224,64,1,34,50,64,128,4,49,65,224,2,17,33,128,2, + 53,69,32,32,64,128,128,2,53,69,224,160,160,160,224,2, + 37,53,192,64,64,64,64,2,53,69,224,32,224,128,224,2, + 53,69,224,32,224,32,224,2,53,69,160,160,160,224,32,2, + 53,69,224,128,224,32,224,2,53,69,128,224,160,160,224,2, + 53,69,224,32,32,64,128,2,53,69,224,160,224,160,224,2, + 53,69,224,160,160,224,32,3,19,35,128,0,128,2,20,36, + 128,0,128,128,2,53,69,32,64,128,64,32,3,51,67,224, + 0,224,2,53,69,128,64,32,64,128,2,53,69,224,32,96, + 0,64,2,85,101,112,136,232,168,96,2,53,69,224,160,160, + 224,160,2,53,69,224,160,224,160,224,2,53,69,224,128,128, + 128,224,2,53,69,192,160,160,160,224,2,53,69,224,128,224, + 128,224,2,53,69,224,128,224,128,128,2,53,69,224,128,160, + 160,224,2,53,69,160,160,224,160,160,2,21,37,128,128,128, + 128,128,2,53,69,32,32,160,160,224,2,53,69,160,160,192, + 160,160,2,53,69,128,128,128,128,224,2,53,69,160,224,160, + 160,160,2,53,69,224,160,160,160,160,2,53,69,224,160,160, + 160,224,2,53,69,224,160,160,224,128,1,54,70,224,160,160, + 160,224,64,2,53,69,224,160,160,192,160,2,53,69,224,128, + 224,32,224,2,53,69,224,64,64,64,64,2,53,69,160,160, + 160,160,224,2,53,69,160,160,160,160,192,2,53,69,160,160, + 160,224,160,2,53,69,160,160,64,160,160,2,53,69,160,160, + 64,64,64,2,53,69,224,32,64,128,224,2,37,53,192,128, + 128,128,192,2,53,69,128,128,64,32,32,2,37,53,192,64, + 64,64,192,5,50,66,64,160,2,49,65,224,5,34,50,128, + 64,2,53,69,64,160,160,224,160,2,53,69,192,160,192,160, + 192,2,53,69,96,128,128,128,96,2,53,69,192,160,160,160, + 192,2,53,69,96,128,224,128,96,2,53,69,96,128,224,128, + 128,2,53,69,96,128,160,160,96,2,53,69,160,160,224,160, + 160,2,21,37,128,128,128,128,128,2,53,69,32,32,160,160, + 64,2,53,69,160,160,192,160,160,2,53,69,128,128,128,128, + 96,2,53,69,160,224,160,160,160,2,53,69,192,160,160,160, + 160,2,53,69,64,160,160,160,64,2,53,69,192,160,160,192, + 128,1,54,70,64,160,160,160,64,64,2,53,69,192,160,160, + 192,160,2,53,69,96,128,64,32,192,2,53,69,224,64,64, + 64,64,2,53,69,160,160,160,160,64,2,53,69,160,160,160, + 160,192,2,53,69,160,160,160,224,160,2,53,69,160,160,64, + 160,160,2,53,69,160,160,64,64,64,2,53,69,224,32,64, + 128,224,2,53,69,96,64,192,64,96,2,21,37,128,128,128, + 128,128,2,53,69,192,64,96,64,192,6,33,49,192,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 2,37,53,128,64,64,64,64,2,53,69,160,160,160,96,32, + 2,53,69,192,32,192,32,192,255,255,255,2,53,69,128,192, + 160,160,64,255,255,2,53,69,64,160,160,96,32,255,255,255, + 255,255,255,255,255,255,255,255,2,53,69,224,32,32,64,128, + 255,255,255,2,53,69,64,160,160,160,64,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255 + }; +/* + Fontname: -FreeType-04b24-Medium-R-Normal--8-80-72-72-P-32-ISO10646-1 + Copyright: 20002003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 3 h= 5 x= 0 y= 2 dx= 4 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_24n[130] U8G_SECTION(".progmem.u8g_font_04b_24n") = { + 1,5,6,0,255,5,0,0,0,0,42,57,0,5,255,5, + 0,4,51,67,160,64,160,3,51,67,64,224,64,1,34,50, + 64,128,4,49,65,224,2,17,33,128,2,53,69,32,32,64, + 128,128,2,53,69,224,160,160,160,224,2,37,53,192,64,64, + 64,64,2,53,69,224,32,224,128,224,2,53,69,224,32,224, + 32,224,2,53,69,160,160,160,224,32,2,53,69,224,128,224, + 32,224,2,53,69,128,224,160,160,224,2,53,69,224,32,32, + 64,128,2,53,69,224,160,224,160,224,2,53,69,224,160,160, + 224,32}; +/* + Fontname: -FreeType-04b24-Medium-R-Normal--8-80-72-72-P-32-ISO10646-1 + Copyright: 20002003 / yuji oshimoo / 04@dsg4.com / www.04.jp.org + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 6 x= 0 y= 4 dx= 6 dy= 0 ascent= 5 len= 6 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_04b_24r[735] U8G_SECTION(".progmem.u8g_font_04b_24r") = { + 1,5,6,0,255,5,0,250,1,241,32,127,0,5,255,5, + 0,2,0,32,2,21,37,128,128,128,0,128,5,50,66,160, + 160,2,53,69,64,224,64,224,64,2,53,69,96,192,64,96, + 192,2,53,69,160,32,64,128,160,2,69,85,96,128,112,160, + 96,5,18,34,128,128,2,37,53,64,128,128,128,64,2,37, + 53,128,64,64,64,128,4,51,67,160,64,160,3,51,67,64, + 224,64,1,34,50,64,128,4,49,65,224,2,17,33,128,2, + 53,69,32,32,64,128,128,2,53,69,224,160,160,160,224,2, + 37,53,192,64,64,64,64,2,53,69,224,32,224,128,224,2, + 53,69,224,32,224,32,224,2,53,69,160,160,160,224,32,2, + 53,69,224,128,224,32,224,2,53,69,128,224,160,160,224,2, + 53,69,224,32,32,64,128,2,53,69,224,160,224,160,224,2, + 53,69,224,160,160,224,32,3,19,35,128,0,128,2,20,36, + 128,0,128,128,2,53,69,32,64,128,64,32,3,51,67,224, + 0,224,2,53,69,128,64,32,64,128,2,53,69,224,32,96, + 0,64,2,85,101,112,136,232,168,96,2,53,69,224,160,160, + 224,160,2,53,69,224,160,224,160,224,2,53,69,224,128,128, + 128,224,2,53,69,192,160,160,160,224,2,53,69,224,128,224, + 128,224,2,53,69,224,128,224,128,128,2,53,69,224,128,160, + 160,224,2,53,69,160,160,224,160,160,2,21,37,128,128,128, + 128,128,2,53,69,32,32,160,160,224,2,53,69,160,160,192, + 160,160,2,53,69,128,128,128,128,224,2,53,69,160,224,160, + 160,160,2,53,69,224,160,160,160,160,2,53,69,224,160,160, + 160,224,2,53,69,224,160,160,224,128,1,54,70,224,160,160, + 160,224,64,2,53,69,224,160,160,192,160,2,53,69,224,128, + 224,32,224,2,53,69,224,64,64,64,64,2,53,69,160,160, + 160,160,224,2,53,69,160,160,160,160,192,2,53,69,160,160, + 160,224,160,2,53,69,160,160,64,160,160,2,53,69,160,160, + 64,64,64,2,53,69,224,32,64,128,224,2,37,53,192,128, + 128,128,192,2,53,69,128,128,64,32,32,2,37,53,192,64, + 64,64,192,5,50,66,64,160,2,49,65,224,5,34,50,128, + 64,2,53,69,64,160,160,224,160,2,53,69,192,160,192,160, + 192,2,53,69,96,128,128,128,96,2,53,69,192,160,160,160, + 192,2,53,69,96,128,224,128,96,2,53,69,96,128,224,128, + 128,2,53,69,96,128,160,160,96,2,53,69,160,160,224,160, + 160,2,21,37,128,128,128,128,128,2,53,69,32,32,160,160, + 64,2,53,69,160,160,192,160,160,2,53,69,128,128,128,128, + 96,2,53,69,160,224,160,160,160,2,53,69,192,160,160,160, + 160,2,53,69,64,160,160,160,64,2,53,69,192,160,160,192, + 128,1,54,70,64,160,160,160,64,64,2,53,69,192,160,160, + 192,160,2,53,69,96,128,64,32,192,2,53,69,224,64,64, + 64,64,2,53,69,160,160,160,160,64,2,53,69,160,160,160, + 160,192,2,53,69,160,160,160,224,160,2,53,69,160,160,64, + 160,160,2,53,69,160,160,64,64,64,2,53,69,224,32,64, + 128,224,2,53,69,96,64,192,64,96,2,21,37,128,128,128, + 128,128,2,53,69,192,64,96,64,192,6,33,49,192,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 5, '1' Height: 13 + Calculated Max Values w=10 h=20 x= 9 y=13 dx=10 dy= 0 ascent=16 len=40 + Font Bounding box w=10 h=20 x= 0 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent =13 descent= 0 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_10x20_67_75[4734] U8G_SECTION(".progmem.u8g_font_10x20_67_75") = { + 0,10,20,0,252,5,2,211,5,193,32,255,0,16,252,13, + 0,9,6,12,10,0,3,54,0,27,0,255,128,255,128,27, + 0,54,0,8,13,13,10,1,0,24,24,24,24,153,219,126, + 60,153,219,126,60,24,9,8,16,10,0,2,25,128,51,0, + 102,0,252,0,252,0,102,0,51,0,25,128,9,8,16,10, + 0,2,204,0,102,0,51,0,31,128,31,128,51,0,102,0, + 204,0,9,8,16,10,0,2,25,128,49,128,97,128,255,128, + 255,128,97,128,49,128,25,128,8,13,13,10,1,0,24,60, + 126,219,153,24,24,24,24,24,24,255,255,9,8,16,10,0, + 2,204,0,198,0,195,0,255,128,255,128,195,0,198,0,204, + 0,8,13,13,10,1,0,255,255,24,24,24,24,24,24,153, + 219,126,60,24,8,13,13,10,1,0,24,60,126,219,153,24, + 153,219,126,60,24,255,255,9,8,16,10,0,2,27,0,51, + 128,97,128,255,128,255,0,96,0,48,0,24,0,9,8,16, + 10,0,2,108,0,230,0,195,0,255,128,127,128,3,0,6, + 0,12,0,9,8,16,10,0,2,25,0,51,128,98,128,255, + 128,255,0,98,0,50,0,24,0,9,8,16,10,0,2,76, + 0,230,0,163,0,255,128,127,128,35,0,38,0,12,0,10, + 8,16,10,0,2,18,0,51,0,109,128,255,192,243,192,97, + 128,51,0,18,0,10,8,16,10,0,2,18,0,55,0,101, + 128,255,192,255,192,105,128,59,0,18,0,10,15,30,10,0, + 0,1,192,3,128,7,0,14,0,28,0,63,192,127,192,3, + 128,7,0,206,0,220,0,248,0,240,0,252,0,252,0,8, + 13,13,10,1,0,48,96,255,255,99,51,3,3,3,3,3, + 3,3,8,13,13,10,1,0,12,6,255,255,198,204,192,192, + 192,192,192,192,192,8,13,13,10,1,0,3,3,3,3,3, + 3,3,51,99,255,255,96,48,8,13,13,10,1,0,192,192, + 192,192,192,192,192,204,198,255,255,6,12,8,13,13,10,1, + 0,252,252,12,12,12,12,12,12,12,45,63,30,12,8,9, + 9,10,1,1,3,3,3,51,99,255,255,96,48,9,8,16, + 10,0,0,14,0,31,0,59,128,49,128,181,128,253,128,121, + 128,49,128,9,8,16,10,0,0,56,0,124,0,238,0,198, + 0,214,128,223,128,207,0,198,0,9,13,26,10,0,0,255, + 128,255,128,32,0,124,0,127,0,122,0,216,0,204,0,140, + 0,6,0,6,0,3,0,3,0,9,13,26,10,0,0,204, + 0,216,0,255,128,255,128,216,0,204,0,0,0,25,128,13, + 128,255,128,255,128,13,128,25,128,9,10,20,10,0,2,31, + 0,31,0,30,0,31,0,219,128,193,128,193,128,227,128,127, + 0,62,0,9,10,20,10,0,2,124,0,124,0,60,0,124, + 0,237,128,193,128,193,128,227,128,127,0,62,0,9,5,10, + 10,0,5,24,0,48,0,96,0,255,128,255,128,9,5,10, + 10,0,2,255,128,255,128,96,0,48,0,24,0,5,13,13, + 10,4,0,192,224,240,216,200,192,192,192,192,192,192,192,192, + 5,13,13,10,1,0,24,56,120,216,152,24,24,24,24,24, + 24,24,24,9,5,10,10,0,5,12,0,6,0,3,0,255, + 128,255,128,9,5,10,10,0,2,255,128,255,128,3,0,6, + 0,12,0,5,13,13,10,4,0,192,192,192,192,192,192,192, + 192,200,216,240,224,192,5,13,13,10,1,0,24,24,24,24, + 24,24,24,24,152,216,120,56,24,9,11,22,10,0,1,6, + 0,3,0,255,128,255,128,3,0,54,0,96,0,255,128,255, + 128,96,0,48,0,10,13,26,10,0,0,51,0,123,0,255, + 0,183,0,51,0,51,0,51,0,51,0,51,0,59,64,63, + 192,55,128,51,0,9,11,22,10,0,1,48,0,96,0,255, + 128,255,128,96,0,54,0,3,0,255,128,255,128,3,0,6, + 0,9,11,22,10,0,1,48,0,96,0,255,128,255,128,96, + 0,48,0,96,0,255,128,255,128,96,0,48,0,9,13,26, + 10,0,0,34,0,119,0,170,128,34,0,34,0,34,0,34, + 0,34,0,34,0,34,0,34,0,34,0,34,0,9,11,22, + 10,0,1,6,0,3,0,255,128,255,128,3,0,6,0,3, + 0,255,128,255,128,3,0,6,0,9,13,26,10,0,0,34, + 0,34,0,34,0,34,0,34,0,34,0,34,0,34,0,34, + 0,34,0,170,128,119,0,34,0,8,9,9,10,1,2,48, + 96,255,255,0,255,255,6,12,8,9,9,10,1,2,12,6, + 255,255,0,255,255,96,48,8,7,7,10,1,2,2,34,127, + 132,127,40,8,10,7,14,10,0,2,4,0,37,0,127,128, + 140,64,127,128,41,0,8,0,8,7,7,10,1,2,16,20, + 254,33,254,68,64,9,9,18,10,0,2,12,0,24,0,63, + 128,127,128,192,0,127,128,63,128,24,0,12,0,9,13,26, + 10,0,0,8,0,28,0,54,0,119,0,247,128,182,128,54, + 0,54,0,54,0,54,0,54,0,54,0,54,0,9,9,18, + 10,0,2,24,0,12,0,254,0,255,0,1,128,255,0,254, + 0,12,0,24,0,9,13,26,10,0,0,54,0,54,0,54, + 0,54,0,54,0,54,0,54,0,182,128,247,128,119,0,54, + 0,28,0,8,0,10,9,18,10,0,2,18,0,51,0,127, + 128,255,192,128,192,255,192,127,128,51,0,18,0,9,13,26, + 10,0,0,8,0,28,0,54,0,119,0,247,128,182,128,54, + 0,182,128,247,128,119,0,54,0,28,0,8,0,9,9,18, + 10,0,2,254,0,254,0,204,0,198,0,227,0,241,128,216, + 128,12,0,6,0,9,9,18,10,0,2,63,128,63,128,25, + 128,49,128,99,128,199,128,141,128,24,0,48,0,9,9,18, + 10,0,2,48,0,24,0,141,128,199,128,99,128,49,128,25, + 128,63,128,63,128,9,9,18,10,0,2,6,0,12,0,216, + 128,241,128,227,0,198,0,204,0,254,0,254,0,9,11,22, + 10,0,1,4,0,8,0,16,0,63,128,64,0,255,128,64, + 0,63,128,16,0,8,0,4,0,9,11,22,10,0,1,16, + 0,8,0,4,0,254,0,1,0,255,128,1,0,254,0,4, + 0,8,0,16,0,9,5,10,10,0,3,32,0,66,0,245, + 128,72,0,32,0,9,5,10,10,0,3,2,0,33,0,215, + 128,9,0,2,0,8,13,13,10,1,0,24,60,126,219,153, + 24,126,126,24,126,126,24,24,8,13,13,10,1,0,24,24, + 126,126,24,126,126,24,153,219,126,60,24,9,8,16,10,0, + 2,24,0,48,0,96,0,237,128,237,128,96,0,48,0,24, + 0,8,13,13,10,1,0,24,60,126,219,129,24,24,0,24, + 24,0,24,24,9,8,16,10,0,2,12,0,6,0,3,0, + 219,128,219,128,3,0,6,0,12,0,8,13,13,10,1,0, + 24,24,0,24,24,0,24,24,129,219,126,60,24,9,8,16, + 10,0,2,198,0,204,0,216,0,255,128,255,128,216,0,204, + 0,198,0,9,8,16,10,0,2,49,128,25,128,13,128,255, + 128,255,128,13,128,25,128,49,128,9,8,16,10,0,2,24, + 0,40,0,79,128,128,128,128,128,79,128,40,0,24,0,8, + 13,13,10,1,0,24,36,66,129,231,36,36,36,36,36,36, + 36,60,9,8,16,10,0,2,12,0,10,0,249,0,128,128, + 128,128,249,0,10,0,12,0,8,13,13,10,1,0,60,36, + 36,36,36,36,36,36,231,129,66,36,24,8,13,13,10,1, + 0,24,36,66,129,231,36,36,60,0,60,36,36,60,8,13, + 13,10,1,0,24,36,66,129,231,36,36,36,36,36,231,129, + 255,8,13,13,10,1,0,24,36,126,129,231,36,36,36,36, + 36,231,129,255,9,14,28,10,0,0,8,0,28,0,42,0, + 73,0,136,128,235,128,42,0,42,0,42,0,42,0,42,0, + 235,128,136,128,255,128,8,13,13,10,1,0,24,36,90,231, + 66,231,36,36,36,36,36,36,60,8,13,13,10,1,0,24, + 36,90,231,66,231,36,36,36,36,231,129,255,9,8,16,10, + 0,2,236,0,170,0,185,0,128,128,128,128,185,0,170,0, + 236,0,8,8,8,10,1,2,255,128,188,168,184,164,130,129, + 8,8,8,10,1,2,129,65,37,29,21,61,1,255,8,13, + 13,10,1,0,24,36,66,231,36,36,36,36,36,231,66,36, + 24,9,6,12,10,0,3,38,0,83,0,255,128,255,128,83, + 0,38,0,10,13,26,10,0,0,51,0,55,128,63,192,59, + 64,51,0,51,0,51,0,51,0,51,0,183,0,255,0,123, + 0,51,0,9,16,32,10,0,254,6,0,3,0,255,128,255, + 128,3,0,6,0,3,0,255,128,255,128,3,0,6,0,3, + 0,255,128,255,128,3,0,6,0,9,8,16,10,0,2,22, + 0,54,0,102,0,255,128,255,128,102,0,54,0,22,0,9, + 8,16,10,0,2,52,0,54,0,51,0,255,128,255,128,51, + 0,54,0,52,0,10,6,12,10,0,3,45,0,109,128,255, + 192,255,192,109,128,45,0,9,6,12,10,0,3,42,0,106, + 0,255,128,255,128,106,0,42,0,9,6,12,10,0,3,42, + 0,43,0,255,128,255,128,43,0,42,0,9,6,12,10,0, + 3,85,0,213,128,255,128,255,128,213,128,85,0,9,8,16, + 10,0,2,16,0,48,0,112,0,223,128,223,128,112,0,48, + 0,16,0,9,8,16,10,0,2,4,0,6,0,7,0,253, + 128,253,128,7,0,6,0,4,0,10,8,16,10,0,2,18, + 0,51,0,115,128,222,192,222,192,115,128,51,0,18,0,10, + 10,20,10,0,6,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,10,3,6,10,0,252,255, + 192,255,192,255,192,10,5,10,10,0,252,255,192,255,192,255, + 192,255,192,255,192,10,8,16,10,0,252,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,10,10,20,10,0, + 252,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,255,192,10,12,24,10,0,252,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,10,15,30,10,0,252,255,192,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,255,192,255,192,10,17,34,10,0,252,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,255,192,10, + 20,40,10,0,252,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,9,20,40, + 10,0,252,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,7,20,20,10,0, + 252,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254, + 254,254,254,254,254,6,20,20,10,0,252,252,252,252,252,252, + 252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,5, + 20,20,10,0,252,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,4,20,20,10,0,252,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,3,20,20,10,0,252,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,1,20,20, + 10,0,252,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,5,20,20,10,5,252,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,10,19,38,10,0,253,85,64,0,0,170,128,0,0,85, + 64,0,0,170,128,0,0,85,64,0,0,170,128,0,0,85, + 64,0,0,170,128,0,0,85,64,0,0,170,128,10,20,40, + 10,0,252,85,64,170,128,85,64,170,128,85,64,170,128,85, + 64,170,128,85,64,170,128,85,64,170,128,85,64,170,128,85, + 64,170,128,85,64,170,128,85,64,170,128,10,20,40,10,0, + 252,85,64,255,192,170,128,255,192,85,64,255,192,170,128,255, + 192,85,64,255,192,170,128,255,192,85,64,255,192,170,128,255, + 192,85,64,255,192,170,128,255,192,10,3,6,10,0,13,255, + 192,255,192,255,192,1,20,20,10,9,252,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,5, + 10,10,10,0,252,248,248,248,248,248,248,248,248,248,248,5, + 10,10,10,5,252,248,248,248,248,248,248,248,248,248,248,5, + 10,10,10,0,6,248,248,248,248,248,248,248,248,248,248,10, + 20,40,10,0,252,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,255,192,255,192,255,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,10,20,40, + 10,0,252,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,7,192,7,192,7,192,7,192,7, + 192,7,192,7,192,7,192,7,192,7,192,10,20,40,10,0, + 252,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,255,192,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,10,20,40,10,0,252,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,7,192,7,192,7,192,7,192,7,192,7,192,7, + 192,7,192,7,192,7,192,5,10,10,10,5,6,248,248,248, + 248,248,248,248,248,248,248,10,20,40,10,0,252,7,192,7, + 192,7,192,7,192,7,192,7,192,7,192,7,192,7,192,7, + 192,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,10,20,40,10,0,252,7,192,7,192,7, + 192,7,192,7,192,7,192,7,192,7,192,7,192,7,192,255, + 192,255,192,255,192,255,192,255,192,255,192,255,192,255,192,255, + 192,255,192,8,8,8,10,1,1,255,255,255,255,255,255,255, + 255,8,8,8,10,1,1,255,129,129,129,129,129,129,255,8, + 8,8,10,1,1,126,129,129,129,129,129,129,126,8,8,8, + 10,1,1,255,129,189,189,189,189,129,255,9,9,18,10,0, + 0,255,128,128,128,255,128,128,128,255,128,128,128,255,128,128, + 128,255,128,9,9,18,10,0,0,255,128,170,128,170,128,170, + 128,170,128,170,128,170,128,170,128,255,128,9,9,18,10,0, + 0,255,128,170,128,255,128,170,128,255,128,170,128,255,128,170, + 128,255,128,8,8,8,10,1,1,255,201,165,147,201,165,147, + 255,8,8,8,10,1,1,255,147,165,201,147,165,201,255,8, + 8,8,10,1,1,255,171,197,171,145,171,197,255,4,4,4, + 10,3,3,240,240,240,240,4,4,4,10,3,3,240,144,144, + 240,8,6,6,10,1,3,255,255,255,255,255,255,8,6,6, + 10,1,3,255,129,129,129,129,255,6,13,13,10,2,0,252, + 252,252,252,252,252,252,252,252,252,252,252,252,6,13,13,10, + 2,0,252,132,132,132,132,132,132,132,132,132,132,132,252,8, + 4,4,10,1,3,31,62,124,248,8,4,4,10,1,3,31, + 34,68,248,8,8,8,10,1,2,24,24,60,60,126,126,255, + 255,8,8,8,10,1,2,24,24,36,36,66,66,129,255,5, + 5,5,10,3,3,32,112,112,248,248,5,5,5,10,3,3, + 32,80,80,136,248,8,8,8,10,1,2,192,240,252,255,255, + 252,240,192,8,8,8,10,1,2,192,176,140,131,131,140,176, + 192,5,5,5,10,3,3,192,240,248,240,192,5,5,5,10, + 3,3,192,176,136,176,192,8,5,5,10,1,4,224,252,255, + 252,224,8,5,5,10,1,4,224,156,131,156,224,8,8,8, + 10,1,2,255,255,126,126,60,60,24,24,8,8,8,10,1, + 2,255,129,66,66,36,36,24,24,5,5,5,10,3,3,248, + 248,112,112,32,5,5,5,10,3,3,248,136,80,80,32,8, + 8,8,10,1,2,3,15,63,255,255,63,15,3,8,8,8, + 10,1,2,3,13,49,193,193,49,13,3,5,5,5,10,3, + 3,24,120,248,120,24,5,5,5,10,3,3,24,104,136,104, + 24,8,5,5,10,1,4,7,63,255,63,7,8,5,5,10, + 1,4,7,57,193,57,7,8,8,8,10,1,2,24,60,126, + 255,255,126,60,24,8,8,8,10,1,2,24,36,66,129,129, + 66,36,24,8,8,8,10,1,2,24,36,90,189,189,90,36, + 24,8,8,8,10,1,1,60,66,153,189,189,153,66,60,9, + 15,30,10,1,255,8,0,20,0,20,0,34,0,34,0,65, + 0,65,0,128,128,65,0,65,0,34,0,34,0,20,0,20, + 0,8,0,8,8,8,10,1,1,60,66,129,129,129,129,66, + 60,7,7,7,10,1,2,40,0,130,0,130,0,40,7,7, + 7,10,1,2,56,108,170,170,170,108,56,8,8,8,10,1, + 1,60,66,153,165,165,153,66,60,8,8,8,10,1,1,60, + 126,255,255,255,255,126,60,8,8,8,10,1,1,60,114,241, + 241,241,241,114,60,8,8,8,10,1,1,60,78,143,143,143, + 143,78,60,8,8,8,10,1,1,60,66,129,129,255,255,126, + 60,8,8,8,10,1,1,60,126,255,255,129,129,66,60,8, + 8,8,10,1,1,60,78,143,143,129,129,66,60,8,8,8, + 10,1,1,60,78,143,143,255,255,126,60,4,8,8,10,1, + 1,48,112,240,240,240,240,112,48,4,8,8,10,5,1,192, + 224,240,240,240,240,224,192,10,20,40,10,0,252,255,192,255, + 192,255,192,255,192,255,192,255,192,225,192,192,192,128,64,128, + 64,128,64,128,64,192,192,225,192,255,192,255,192,255,192,255, + 192,255,192,255,192,10,20,40,10,0,252,255,192,255,192,255, + 192,255,192,255,192,255,192,225,192,222,192,191,64,191,64,191, + 64,191,64,222,192,225,192,255,192,255,192,255,192,255,192,255, + 192,255,192,10,10,20,10,0,6,255,192,255,192,255,192,255, + 192,255,192,255,192,225,192,222,192,191,64,191,64,10,10,20, + 10,0,252,191,64,191,64,222,192,225,192,255,192,255,192,255, + 192,255,192,255,192,255,192,4,4,4,10,1,5,48,64,128, + 128,4,4,4,10,5,5,192,32,16,16,4,4,4,10,5, + 1,16,16,32,192,4,4,4,10,1,1,128,128,64,48,8, + 4,4,10,1,5,60,66,129,129,8,4,4,10,1,1,129, + 129,66,60,10,19,38,10,0,252,0,64,0,64,0,192,0, + 192,1,192,1,192,3,192,3,192,7,192,7,192,15,192,15, + 192,31,192,31,192,63,192,63,192,127,192,127,192,255,192,10, + 19,38,10,0,252,128,0,128,0,192,0,192,0,224,0,224, + 0,240,0,240,0,248,0,248,0,252,0,252,0,254,0,254, + 0,255,0,255,0,255,128,255,128,255,192,10,19,38,10,0, + 253,255,192,255,128,255,128,255,0,255,0,254,0,254,0,252, + 0,252,0,248,0,248,0,240,0,240,0,224,0,224,0,192, + 0,192,0,128,0,128,0,10,19,38,10,0,253,255,192,127, + 192,127,192,63,192,63,192,31,192,31,192,15,192,15,192,7, + 192,7,192,3,192,3,192,1,192,1,192,0,192,0,192,0, + 64,0,64,5,5,5,10,3,4,112,136,136,136,112,8,8, + 8,10,1,1,255,241,241,241,241,241,241,255,8,8,8,10, + 1,1,255,143,143,143,143,143,143,255,8,8,8,10,1,1, + 255,253,249,241,225,193,129,255,8,8,8,10,1,1,255,129, + 131,135,143,159,191,255,9,9,18,10,0,0,255,128,136,128, + 136,128,136,128,136,128,136,128,136,128,136,128,255,128,8,8, + 8,10,1,2,24,24,36,36,90,90,129,255,8,8,8,10, + 1,2,24,24,52,52,114,114,241,255,8,8,8,10,1,2, + 24,24,44,44,78,78,143,255,10,10,20,10,0,0,30,0, + 33,0,64,128,128,64,128,64,128,64,128,64,64,128,33,0, + 30,0,9,9,18,10,0,0,255,128,136,128,136,128,136,128, + 248,128,128,128,128,128,128,128,255,128,9,9,18,10,0,0, + 255,128,128,128,128,128,128,128,248,128,136,128,136,128,136,128, + 255,128,9,9,18,10,0,0,255,128,128,128,128,128,128,128, + 143,128,136,128,136,128,136,128,255,128,9,9,18,10,0,0, + 255,128,136,128,136,128,136,128,143,128,128,128,128,128,128,128, + 255,128,9,9,18,10,0,0,62,0,73,0,136,128,136,128, + 248,128,128,128,128,128,65,0,62,0,9,9,18,10,0,0, + 62,0,65,0,128,128,128,128,248,128,136,128,136,128,73,0, + 62,0,9,9,18,10,0,0,62,0,65,0,128,128,128,128, + 143,128,136,128,136,128,73,0,62,0,9,9,18,10,0,0, + 62,0,73,0,136,128,136,128,143,128,128,128,128,128,65,0, + 62,0,6,6,6,10,2,2,252,136,144,160,192,128,6,6, + 6,10,2,2,252,68,36,20,12,4,6,6,6,10,2,2, + 128,192,160,144,136,252,6,6,6,10,2,2,252,132,132,132, + 132,252,6,6,6,10,2,2,252,252,252,252,252,252,4,4, + 4,10,3,3,240,144,144,240,4,4,4,10,3,3,240,240, + 240,240,6,6,6,10,2,2,4,12,20,36,68,252}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 8, '1' Height: 4 + Calculated Max Values w= 9 h=15 x= 3 y= 4 dx=10 dy= 0 ascent=14 len=30 + Font Bounding box w=10 h=20 x= 0 y=-4 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 8 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent =14 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_10x20_75r[693] U8G_SECTION(".progmem.u8g_font_10x20_75r") = { + 0,10,20,0,252,8,1,219,0,0,32,79,0,14,255,9, + 0,8,8,8,10,1,1,255,255,255,255,255,255,255,255,8, + 8,8,10,1,1,255,129,129,129,129,129,129,255,8,8,8, + 10,1,1,126,129,129,129,129,129,129,126,8,8,8,10,1, + 1,255,129,189,189,189,189,129,255,9,9,18,10,0,0,255, + 128,128,128,255,128,128,128,255,128,128,128,255,128,128,128,255, + 128,9,9,18,10,0,0,255,128,170,128,170,128,170,128,170, + 128,170,128,170,128,170,128,255,128,9,9,18,10,0,0,255, + 128,170,128,255,128,170,128,255,128,170,128,255,128,170,128,255, + 128,8,8,8,10,1,1,255,201,165,147,201,165,147,255,8, + 8,8,10,1,1,255,147,165,201,147,165,201,255,8,8,8, + 10,1,1,255,171,197,171,145,171,197,255,4,4,4,10,3, + 3,240,240,240,240,4,4,4,10,3,3,240,144,144,240,8, + 6,6,10,1,3,255,255,255,255,255,255,8,6,6,10,1, + 3,255,129,129,129,129,255,6,13,13,10,2,0,252,252,252, + 252,252,252,252,252,252,252,252,252,252,6,13,13,10,2,0, + 252,132,132,132,132,132,132,132,132,132,132,132,252,8,4,4, + 10,1,3,31,62,124,248,8,4,4,10,1,3,31,34,68, + 248,8,8,8,10,1,2,24,24,60,60,126,126,255,255,8, + 8,8,10,1,2,24,24,36,36,66,66,129,255,5,5,5, + 10,3,3,32,112,112,248,248,5,5,5,10,3,3,32,80, + 80,136,248,8,8,8,10,1,2,192,240,252,255,255,252,240, + 192,8,8,8,10,1,2,192,176,140,131,131,140,176,192,5, + 5,5,10,3,3,192,240,248,240,192,5,5,5,10,3,3, + 192,176,136,176,192,8,5,5,10,1,4,224,252,255,252,224, + 8,5,5,10,1,4,224,156,131,156,224,8,8,8,10,1, + 2,255,255,126,126,60,60,24,24,8,8,8,10,1,2,255, + 129,66,66,36,36,24,24,5,5,5,10,3,3,248,248,112, + 112,32,5,5,5,10,3,3,248,136,80,80,32,8,8,8, + 10,1,2,3,15,63,255,255,63,15,3,8,8,8,10,1, + 2,3,13,49,193,193,49,13,3,5,5,5,10,3,3,24, + 120,248,120,24,5,5,5,10,3,3,24,104,136,104,24,8, + 5,5,10,1,4,7,63,255,63,7,8,5,5,10,1,4, + 7,57,193,57,7,8,8,8,10,1,2,24,60,126,255,255, + 126,60,24,8,8,8,10,1,2,24,36,66,129,129,66,36, + 24,8,8,8,10,1,2,24,36,90,189,189,90,36,24,8, + 8,8,10,1,1,60,66,153,189,189,153,66,60,9,15,30, + 10,1,255,8,0,20,0,20,0,34,0,34,0,65,0,65, + 0,128,128,65,0,65,0,34,0,34,0,20,0,20,0,8, + 0,8,8,8,10,1,1,60,66,129,129,129,129,66,60,7, + 7,7,10,1,2,40,0,130,0,130,0,40,7,7,7,10, + 1,2,56,108,170,170,170,108,56,8,8,8,10,1,1,60, + 66,153,165,165,153,66,60,8,8,8,10,1,1,60,126,255, + 255,255,255,126,60}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 0, '1' Height: 9 + Calculated Max Values w=10 h=13 x= 4 y= 5 dx=10 dy= 0 ascent=13 len=24 + Font Bounding box w=10 h=20 x= 0 y=-4 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =13 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_10x20_78_79[2638] U8G_SECTION(".progmem.u8g_font_10x20_78_79") = { + 0,10,20,0,252,9,1,212,2,205,32,255,0,13,0,11, + 0,9,9,18,10,0,0,54,0,28,0,136,128,201,128,119, + 0,201,128,136,128,28,0,54,0,9,9,18,10,0,0,8, + 0,20,0,255,128,162,128,65,0,162,128,255,128,20,0,8, + 0,9,9,18,10,0,0,8,0,28,0,8,0,73,0,255, + 128,73,0,8,0,28,0,8,0,9,9,18,10,0,0,8, + 0,28,0,28,0,107,0,255,128,107,0,28,0,28,0,8, + 0,9,9,18,10,0,0,8,0,28,0,28,0,107,0,255, + 128,107,0,28,0,28,0,8,0,9,9,18,10,0,0,8, + 0,28,0,28,0,107,0,255,128,107,0,28,0,28,0,8, + 0,9,9,18,10,0,0,8,0,28,0,28,0,127,0,255, + 128,127,0,28,0,28,0,8,0,9,9,18,10,0,0,8, + 0,20,0,20,0,99,0,128,128,99,0,20,0,20,0,8, + 0,255,9,9,18,10,0,0,8,0,8,0,20,0,247,128, + 65,0,34,0,73,0,85,0,99,0,9,10,20,10,0,0, + 127,0,247,128,247,128,227,128,0,0,128,128,193,128,201,128, + 156,128,127,0,9,9,18,10,0,0,8,0,8,0,28,0, + 227,128,99,0,34,0,127,0,119,0,99,0,255,255,255,255, + 255,8,9,9,10,0,0,24,219,255,126,24,126,255,219,24, + 8,9,9,10,0,0,24,219,255,102,36,102,255,219,24,9, + 9,18,10,0,0,8,0,73,0,42,0,28,0,255,128,28, + 0,42,0,73,0,8,0,9,9,18,10,0,0,8,0,73, + 0,62,0,62,0,255,128,62,0,62,0,73,0,8,0,7, + 7,7,10,1,0,16,146,124,56,124,146,16,9,9,18,10, + 0,0,34,0,20,0,148,128,127,0,28,0,127,0,148,128, + 20,0,34,0,255,255,255,255,9,11,22,10,0,0,28,0, + 28,0,201,128,201,128,62,0,28,0,62,0,201,128,201,128, + 28,0,28,0,9,11,22,10,0,0,28,0,28,0,201,128, + 201,128,62,0,28,0,62,0,201,128,201,128,28,0,28,0, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 9,8,16,10,0,1,62,0,67,0,129,128,129,128,129,128, + 129,128,67,0,62,0,255,9,9,18,10,0,0,254,0,130, + 0,131,128,131,128,131,128,131,128,255,128,63,128,63,128,9, + 9,18,10,0,0,63,128,63,128,255,128,131,128,131,128,131, + 128,131,128,130,0,254,0,8,8,8,10,0,0,254,131,131, + 131,131,131,255,127,8,8,8,10,0,0,127,255,131,131,131, + 131,131,254,255,255,255,9,9,18,10,0,0,8,0,28,0, + 28,0,107,0,247,128,107,0,28,0,28,0,8,0,255,1, + 10,10,10,4,0,128,128,128,128,128,128,128,128,128,128,2, + 10,10,10,3,0,192,192,192,192,192,192,192,192,192,192,3, + 10,10,10,3,0,224,224,224,224,224,224,224,224,224,224,4, + 6,6,10,3,5,112,128,224,240,240,96,4,6,6,10,3, + 5,96,240,240,112,16,224,9,6,12,10,0,5,115,128,132, + 0,231,0,247,128,247,128,99,0,9,6,12,10,0,5,99, + 0,247,128,247,128,115,128,16,128,231,0,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,9,9,18,10,0,0,127,0,247,128,231,128,247,128, + 247,128,247,128,247,128,227,128,127,0,9,9,18,10,0,0, + 127,0,227,128,221,128,253,128,251,128,247,128,237,128,193,128, + 127,0,9,9,18,10,0,0,127,0,227,128,221,128,253,128, + 243,128,253,128,221,128,227,128,127,0,9,9,18,10,0,0, + 127,0,243,128,235,128,219,128,193,128,251,128,251,128,241,128, + 127,0,9,9,18,10,0,0,127,0,193,128,223,128,223,128, + 195,128,253,128,253,128,195,128,127,0,9,9,18,10,0,0, + 127,0,225,128,223,128,223,128,195,128,221,128,221,128,227,128, + 127,0,9,9,18,10,0,0,127,0,193,128,253,128,251,128, + 251,128,247,128,247,128,247,128,127,0,9,9,18,10,0,0, + 127,0,227,128,221,128,221,128,227,128,221,128,221,128,227,128, + 127,0,9,9,18,10,0,0,127,0,225,128,221,128,221,128, + 225,128,253,128,253,128,227,128,127,0,9,9,18,10,0,0, + 127,0,219,128,213,128,213,128,213,128,213,128,213,128,219,128, + 127,0,9,9,18,10,0,0,127,0,128,128,136,128,152,128, + 136,128,136,128,156,128,128,128,127,0,9,9,18,10,0,0, + 127,0,128,128,152,128,132,128,132,128,136,128,156,128,128,128, + 127,0,9,9,18,10,0,0,127,0,128,128,152,128,132,128, + 136,128,132,128,152,128,128,128,127,0,9,9,18,10,0,0, + 127,0,128,128,136,128,152,128,168,128,188,128,136,128,128,128, + 127,0,9,9,18,10,0,0,127,0,128,128,156,128,144,128, + 152,128,132,128,152,128,128,128,127,0,9,9,18,10,0,0, + 127,0,128,128,140,128,144,128,152,128,148,128,136,128,128,128, + 127,0,9,9,18,10,0,0,127,0,128,128,156,128,132,128, + 136,128,136,128,136,128,128,128,127,0,9,9,18,10,0,0, + 127,0,128,128,136,128,148,128,136,128,148,128,136,128,128,128, + 127,0,9,9,18,10,0,0,127,0,128,128,136,128,148,128, + 140,128,132,128,136,128,128,128,127,0,9,9,18,10,0,0, + 127,0,128,128,164,128,170,128,170,128,170,128,164,128,128,128, + 127,0,9,9,18,10,0,0,127,0,247,128,231,128,247,128, + 247,128,247,128,247,128,247,128,127,0,9,9,18,10,0,0, + 127,0,227,128,221,128,253,128,251,128,247,128,239,128,193,128, + 127,0,9,9,18,10,0,0,127,0,227,128,221,128,253,128, + 243,128,253,128,221,128,227,128,127,0,9,9,18,10,0,0, + 127,0,243,128,235,128,219,128,193,128,251,128,251,128,251,128, + 127,0,9,9,18,10,0,0,127,0,193,128,223,128,223,128, + 195,128,253,128,253,128,195,128,127,0,9,9,18,10,0,0, + 127,0,225,128,223,128,223,128,195,128,221,128,221,128,227,128, + 127,0,9,9,18,10,0,0,127,0,193,128,253,128,251,128, + 251,128,247,128,247,128,247,128,127,0,9,9,18,10,0,0, + 127,0,227,128,221,128,221,128,227,128,221,128,221,128,227,128, + 127,0,9,9,18,10,0,0,127,0,225,128,221,128,221,128, + 225,128,253,128,253,128,227,128,127,0,9,9,18,10,0,0, + 127,0,219,128,213,128,213,128,213,128,213,128,213,128,219,128, + 127,0,7,8,8,10,1,1,48,24,12,254,254,12,24,48, + 255,255,255,7,5,5,10,1,1,224,250,62,14,30,8,7, + 7,10,1,1,8,12,230,255,230,12,8,7,5,5,10,1, + 1,30,14,62,250,224,9,7,14,10,0,0,48,0,28,0, + 31,0,255,128,31,0,28,0,48,0,9,9,18,10,0,0, + 28,0,30,0,15,0,255,128,255,128,255,128,15,0,30,0, + 28,0,9,5,10,10,0,1,2,0,3,0,255,128,3,0, + 2,0,9,7,14,10,0,0,4,0,6,0,255,0,255,128, + 255,0,6,0,4,0,9,5,10,10,0,1,2,0,183,0, + 183,128,183,0,2,0,9,5,10,10,0,1,2,0,171,0, + 171,128,171,0,2,0,9,5,10,10,0,1,2,0,255,0, + 255,128,255,0,2,0,9,8,16,10,0,1,128,0,112,0, + 78,0,33,128,31,128,62,0,112,0,128,0,9,8,16,10, + 0,1,128,0,112,0,62,0,31,128,33,128,78,0,112,0, + 128,0,9,8,16,10,0,1,128,0,112,0,62,0,31,128, + 31,128,62,0,112,0,128,0,9,7,14,10,0,0,132,0, + 134,0,255,0,255,128,127,0,6,0,4,0,9,7,14,10, + 0,0,4,0,6,0,127,0,255,128,255,0,134,0,132,0, + 6,9,9,10,2,0,16,16,248,248,252,248,248,16,16,8, + 9,9,10,0,1,4,4,254,254,255,254,254,4,4,9,9, + 18,10,0,0,24,0,28,0,22,0,243,0,129,128,243,0, + 22,0,28,0,24,0,9,9,18,10,0,0,24,0,28,0, + 26,0,249,0,192,128,249,0,26,0,28,0,24,0,9,9, + 18,10,0,0,0,128,1,128,62,128,64,128,129,128,243,0, + 238,0,60,0,56,0,9,9,18,10,0,0,56,0,60,0, + 238,0,243,0,129,128,64,128,62,128,1,128,0,128,8,9, + 9,10,0,1,16,24,20,242,129,243,118,28,24,8,9,9, + 10,0,1,24,28,118,243,129,242,20,24,16,9,8,16,10, + 0,1,4,0,250,0,129,0,64,128,129,128,251,0,6,0, + 4,0,255,9,8,16,10,0,2,4,0,6,0,251,0,129, + 128,64,128,129,0,250,0,4,0,9,9,18,10,0,1,28, + 0,127,0,251,128,1,128,0,128,1,128,251,128,127,0,28, + 0,9,5,10,10,0,3,210,0,43,0,127,128,43,0,210, + 0,9,9,18,10,0,0,16,0,56,0,92,0,236,0,116, + 0,60,0,2,128,1,128,3,128,9,5,10,10,0,2,242, + 0,123,0,7,128,123,0,242,0,9,9,18,10,0,0,3, + 128,1,128,2,128,60,0,116,0,236,0,92,0,56,0,16, + 0,9,9,18,10,0,0,16,0,24,0,28,0,252,0,124, + 0,60,0,2,128,1,128,3,128,9,5,10,10,0,2,242, + 0,123,0,127,128,123,0,242,0,9,9,18,10,0,0,3, + 128,1,128,2,128,60,0,124,0,252,0,28,0,24,0,16, + 0,255,255,255,255,9,7,14,10,0,1,20,0,10,0,253, + 0,0,128,253,0,10,0,20,0,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,9, + 12,24,10,0,0,224,128,49,128,49,128,42,128,42,128,36, + 128,36,128,42,128,42,128,49,128,49,128,224,128,9,12,24, + 10,0,0,131,128,198,0,198,0,170,0,170,0,146,0,146, + 0,170,0,170,0,198,0,198,0,131,128,9,12,24,10,0, + 0,193,128,99,0,99,0,85,0,85,0,73,0,73,0,85, + 0,85,0,99,0,99,0,193,128,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,8,13,13,10,1,0,255,216,216, + 216,216,216,216,216,216,216,216,216,255,8,13,13,10,1,0, + 255,27,27,27,27,27,27,27,27,27,27,27,255,4,13,13, + 10,4,0,16,48,32,96,64,192,128,192,64,96,32,48,16, + 4,13,13,10,4,0,128,192,64,96,32,48,16,48,32,96, + 64,192,128,7,13,13,10,1,0,18,54,36,108,72,216,144, + 216,72,108,36,54,18,7,13,13,10,2,0,144,216,72,108, + 36,54,18,54,36,108,72,216,144,255,255,255,255,255,255,255, + 255,255,10,8,16,10,0,2,24,0,48,0,96,0,255,192, + 255,192,96,0,48,0,24,0,10,8,16,10,0,2,6,0, + 3,0,1,128,255,192,255,192,1,128,3,0,6,0,10,8, + 16,10,0,2,18,0,51,0,97,128,255,192,255,192,97,128, + 51,0,18,0,10,9,18,10,0,2,12,0,24,0,63,192, + 127,192,192,0,127,192,63,192,24,0,12,0,10,9,18,10, + 0,2,12,0,6,0,255,0,255,128,0,192,255,128,255,0, + 6,0,12,0,10,9,18,10,0,2,18,0,51,0,127,128, + 255,192,128,192,255,192,127,128,51,0,18,0,10,8,16,10, + 0,2,24,192,48,192,96,192,255,192,255,192,96,192,48,192, + 24,192,10,8,16,10,0,2,198,0,195,0,193,128,255,192, + 255,192,193,128,195,0,198,0,10,9,18,10,0,2,12,64, + 24,64,63,192,127,192,192,64,127,192,63,192,24,64,12,64, + 10,9,18,10,0,2,140,0,134,0,255,0,255,128,128,192, + 255,128,255,0,134,0,140,0,10,8,16,10,0,2,6,0, + 3,0,171,128,170,192,85,192,85,128,3,0,6,0}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w= 9 h=17 x= 4 y=16 dx=10 dy= 0 ascent=16 len=26 + Font Bounding box w=10 h=20 x= 0 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_10x20[3453] U8G_SECTION(".progmem.u8g_font_10x20") = { + 0,10,20,0,252,13,2,74,4,153,32,255,252,16,252,13, + 252,0,0,0,10,0,16,2,13,13,10,4,0,192,192,192, + 192,192,192,192,192,192,192,0,192,192,6,4,4,10,2,9, + 204,204,204,72,9,11,22,10,1,1,27,0,27,0,27,0, + 127,128,54,0,54,0,54,0,255,0,108,0,108,0,108,0, + 8,13,13,10,1,0,24,126,219,216,216,216,126,27,27,27, + 219,126,24,9,12,24,10,1,0,115,0,219,0,222,0,118, + 0,12,0,12,0,24,0,24,0,55,0,61,128,109,128,103, + 0,9,13,26,10,1,0,56,0,108,0,108,0,108,0,120, + 0,48,0,112,0,216,0,205,128,199,0,198,0,239,0,121, + 128,2,5,5,10,4,8,192,192,192,192,128,5,13,13,10, + 3,0,24,48,96,96,192,192,192,192,192,96,96,48,24,5, + 13,13,10,2,0,192,96,48,48,24,24,24,24,24,48,48, + 96,192,8,7,7,10,1,3,102,102,60,255,60,102,102,8, + 7,7,10,1,3,24,24,24,255,24,24,24,4,3,3,10, + 3,255,112,112,224,8,1,1,10,1,6,255,3,3,3,10, + 4,0,224,224,224,7,12,12,10,2,0,6,6,12,12,24, + 24,48,48,96,96,192,192,8,13,13,10,1,0,24,60,102, + 102,195,195,195,195,195,102,102,60,24,8,13,13,10,1,0, + 24,56,120,216,24,24,24,24,24,24,24,24,255,8,13,13, + 10,1,0,60,102,195,195,3,3,6,28,48,96,192,192,255, + 8,13,13,10,1,0,60,102,195,195,3,6,28,6,3,195, + 195,102,60,8,13,13,10,1,0,2,6,14,30,54,102,198, + 198,255,6,6,6,6,8,13,13,10,1,0,255,192,192,192, + 192,220,230,3,3,3,195,102,60,8,13,13,10,1,0,60, + 102,194,192,192,220,230,195,195,195,195,102,60,8,13,13,10, + 1,0,255,3,3,6,6,12,12,24,24,48,48,96,96,8, + 13,13,10,1,0,60,102,195,195,195,102,60,102,195,195,195, + 102,60,8,13,13,10,1,0,60,102,195,195,195,195,103,59, + 3,3,67,102,60,3,8,8,10,4,0,224,224,0,0,0, + 0,224,224,4,9,9,10,3,255,112,112,0,0,0,0,112, + 112,224,7,13,13,10,1,0,2,6,12,24,48,96,192,96, + 48,24,12,6,2,8,6,6,10,1,3,255,0,0,0,0, + 255,7,13,13,10,2,0,128,192,96,48,24,12,6,12,24, + 48,96,192,128,8,13,13,10,1,0,60,102,195,195,195,6, + 12,24,24,24,0,24,24,8,13,13,10,1,0,60,102,195, + 207,223,219,219,219,222,204,192,99,62,8,13,13,10,1,0, + 24,60,102,102,195,195,195,255,195,195,195,195,195,8,13,13, + 10,1,0,248,204,198,198,198,204,252,198,195,195,195,198,252, + 8,13,13,10,1,0,60,102,195,192,192,192,192,192,192,192, + 195,102,60,8,13,13,10,1,0,252,198,195,195,195,195,195, + 195,195,195,195,198,252,8,13,13,10,1,0,255,192,192,192, + 192,192,252,192,192,192,192,192,255,8,13,13,10,1,0,255, + 192,192,192,192,192,252,192,192,192,192,192,192,8,13,13,10, + 1,0,60,102,195,192,192,192,207,195,195,195,195,103,61,8, + 13,13,10,1,0,195,195,195,195,195,195,255,195,195,195,195, + 195,195,8,13,13,10,1,0,255,24,24,24,24,24,24,24, + 24,24,24,24,255,9,13,26,10,1,0,31,128,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,198,0,198, + 0,108,0,56,0,8,13,13,10,1,0,195,195,198,198,204, + 204,248,204,204,198,198,195,195,8,13,13,10,1,0,192,192, + 192,192,192,192,192,192,192,192,192,192,255,8,13,13,10,1, + 0,195,195,231,231,255,219,219,219,219,195,195,195,195,8,13, + 13,10,1,0,195,227,227,243,243,219,219,207,207,199,199,195, + 195,8,13,13,10,1,0,60,102,195,195,195,195,195,195,195, + 195,195,102,60,8,13,13,10,1,0,252,198,195,195,195,195, + 198,252,192,192,192,192,192,8,14,14,10,1,255,60,102,195, + 195,195,195,195,195,195,219,207,102,62,3,8,13,13,10,1, + 0,252,198,195,195,195,195,198,252,204,198,198,195,195,8,13, + 13,10,1,0,60,102,195,192,192,96,60,6,3,3,195,102, + 60,8,13,13,10,1,0,255,24,24,24,24,24,24,24,24, + 24,24,24,24,8,13,13,10,1,0,195,195,195,195,195,195, + 195,195,195,195,195,102,60,8,13,13,10,1,0,195,195,195, + 195,102,102,102,60,60,60,24,24,24,8,13,13,10,1,0, + 195,195,195,195,195,219,219,219,219,231,231,195,195,8,13,13, + 10,1,0,195,195,102,102,60,60,24,60,60,102,102,195,195, + 8,13,13,10,1,0,195,195,102,102,60,60,24,24,24,24, + 24,24,24,8,13,13,10,1,0,255,3,3,6,12,12,24, + 48,48,96,192,192,255,6,13,13,10,2,0,252,192,192,192, + 192,192,192,192,192,192,192,192,252,7,12,12,10,2,0,192, + 192,96,96,48,48,24,24,12,12,6,6,6,13,13,10,2, + 0,252,12,12,12,12,12,12,12,12,12,12,12,252,8,4, + 4,10,1,9,24,60,102,195,9,1,2,10,1,255,255,128, + 4,3,3,10,3,10,192,96,48,8,8,8,10,1,0,62, + 99,3,127,195,195,195,125,8,13,13,10,1,0,192,192,192, + 192,192,220,230,195,195,195,195,230,220,8,8,8,10,1,0, + 62,99,192,192,192,192,99,62,8,13,13,10,1,0,3,3, + 3,3,3,59,103,195,195,195,195,103,59,8,8,8,10,1, + 0,60,102,195,255,192,192,99,62,8,13,13,10,1,0,30, + 51,51,48,48,252,48,48,48,48,48,48,48,8,12,12,10, + 1,252,125,199,198,198,198,124,192,126,195,195,195,126,8,13, + 13,10,1,0,192,192,192,192,192,220,230,195,195,195,195,195, + 195,8,11,11,10,1,0,24,24,0,120,24,24,24,24,24, + 24,255,7,15,15,10,2,252,6,6,0,30,6,6,6,6, + 6,6,6,198,198,198,124,8,13,13,10,1,0,192,192,192, + 192,192,198,204,216,240,248,204,198,195,8,13,13,10,1,0, + 120,24,24,24,24,24,24,24,24,24,24,24,255,8,8,8, + 10,1,0,182,255,219,219,219,219,219,219,8,8,8,10,1, + 0,220,230,195,195,195,195,195,195,8,8,8,10,1,0,60, + 102,195,195,195,195,102,60,8,12,12,10,1,252,220,230,195, + 195,195,195,230,220,192,192,192,192,8,12,12,10,1,252,59, + 103,195,195,195,195,103,59,3,3,3,3,8,8,8,10,1, + 0,222,115,96,96,96,96,96,96,8,8,8,10,1,0,126, + 195,192,126,3,3,195,126,8,11,11,10,1,0,48,48,48, + 252,48,48,48,48,48,51,30,8,8,8,10,1,0,195,195, + 195,195,195,195,103,59,8,8,8,10,1,0,195,195,102,102, + 60,60,24,24,8,8,8,10,1,0,195,195,195,219,219,219, + 255,102,8,8,8,10,1,0,195,102,60,24,24,60,102,195, + 8,12,12,10,1,252,195,195,195,195,195,195,103,59,3,195, + 102,60,7,8,8,10,2,0,254,6,12,24,48,96,192,254, + 8,13,13,10,1,0,15,24,24,24,24,24,240,24,24,24, + 24,24,15,2,13,13,10,4,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,8,13,13,10,1,0,240,24,24,24, + 24,24,15,24,24,24,24,24,240,8,3,3,10,1,10,115, + 219,206,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,10,0,16,2,13,13,10,4,0,192, + 192,0,192,192,192,192,192,192,192,192,192,192,7,12,12,10, + 1,0,24,24,60,102,194,192,192,194,102,60,24,24,9,12, + 24,10,1,0,30,0,51,0,51,0,48,0,48,0,252,0, + 48,0,48,0,48,0,248,0,173,128,231,0,9,9,18,10, + 0,1,128,128,221,128,127,0,99,0,99,0,99,0,127,0, + 221,128,128,128,8,11,11,10,1,0,129,195,102,60,126,24, + 126,24,24,24,24,2,13,13,10,4,0,192,192,192,192,192, + 0,0,0,192,192,192,192,192,8,13,13,10,1,0,60,102, + 198,96,120,204,102,51,30,6,99,102,60,6,2,2,10,2, + 11,204,204,8,11,11,10,1,0,60,102,195,189,165,161,165, + 189,195,102,60,8,9,9,10,1,4,62,67,3,127,195,195, + 125,0,255,9,11,22,10,0,0,4,128,13,128,27,0,54, + 0,108,0,216,0,108,0,54,0,27,0,13,128,4,128,8, + 4,4,10,1,4,255,255,3,3,6,1,1,10,2,6,252, + 8,11,11,10,1,0,60,102,195,189,165,189,169,173,195,102, + 60,8,1,1,10,1,13,255,6,6,6,10,2,7,48,120, + 204,204,120,48,8,7,7,10,1,2,24,24,255,24,24,0, + 255,5,7,7,10,2,6,112,216,24,48,96,192,248,5,7, + 7,10,2,6,112,216,24,48,24,216,112,4,3,3,10,3, + 10,48,96,192,7,10,10,10,1,253,198,198,198,198,198,238, + 250,192,192,192,8,13,13,10,1,0,127,255,251,251,251,123, + 27,27,27,27,27,27,27,3,3,3,10,4,5,224,224,224, + 5,4,4,10,2,252,48,24,216,112,4,7,7,10,2,6, + 96,224,96,96,96,96,240,7,9,9,10,1,4,56,108,198, + 198,198,108,56,0,254,9,11,22,10,1,0,144,0,216,0, + 108,0,54,0,27,0,13,128,27,0,54,0,108,0,216,0, + 144,0,8,12,12,10,1,1,64,192,65,66,228,8,18,38, + 74,158,2,2,8,12,12,10,1,1,64,192,65,66,228,8, + 22,41,65,130,4,15,8,12,12,10,1,1,224,16,97,18, + 228,8,18,38,74,159,2,2,8,13,13,10,1,0,24,24, + 0,24,24,24,48,96,195,195,195,102,60,8,15,15,10,1, + 0,96,48,24,0,24,60,102,195,195,195,255,195,195,195,195, + 8,15,15,10,1,0,6,12,24,0,24,60,102,195,195,195, + 255,195,195,195,195,8,15,15,10,1,0,24,60,102,0,24, + 60,102,195,195,195,255,195,195,195,195,8,15,15,10,1,0, + 50,126,76,0,24,60,102,195,195,195,255,195,195,195,195,8, + 15,15,10,1,0,102,102,0,24,60,102,102,195,195,195,255, + 195,195,195,195,8,16,16,10,1,0,60,102,102,60,0,24, + 60,102,195,195,195,255,195,195,195,195,8,13,13,10,1,0, + 31,60,108,108,204,204,255,204,204,204,204,204,207,8,17,17, + 10,1,252,60,102,195,192,192,192,192,192,192,192,195,102,60, + 24,12,108,56,8,15,15,10,1,0,96,48,24,0,255,192, + 192,192,192,252,192,192,192,192,255,8,15,15,10,1,0,12, + 24,48,0,255,192,192,192,192,252,192,192,192,192,255,8,15, + 15,10,1,0,24,60,102,0,255,192,192,192,192,252,192,192, + 192,192,255,8,15,15,10,1,0,102,102,0,0,255,192,192, + 192,192,252,192,192,192,192,255,6,15,15,10,2,0,96,48, + 24,0,252,48,48,48,48,48,48,48,48,48,252,6,15,15, + 10,2,0,24,48,96,0,252,48,48,48,48,48,48,48,48, + 48,252,6,15,15,10,2,0,48,120,204,0,252,48,48,48, + 48,48,48,48,48,48,252,6,15,15,10,2,0,204,204,0, + 252,48,48,48,48,48,48,48,48,48,48,252,9,13,26,10, + 0,0,126,0,99,0,97,128,97,128,97,128,97,128,249,128, + 97,128,97,128,97,128,97,128,99,0,126,0,8,15,15,10, + 1,0,50,126,76,0,195,227,243,243,219,219,207,207,199,195, + 195,8,15,15,10,1,0,48,24,12,0,60,102,195,195,195, + 195,195,195,195,102,60,8,15,15,10,1,0,12,24,48,0, + 60,102,195,195,195,195,195,195,195,102,60,8,15,15,10,1, + 0,24,60,102,0,60,102,195,195,195,195,195,195,195,102,60, + 8,15,15,10,1,0,50,126,76,0,60,102,195,195,195,195, + 195,195,195,102,60,8,15,15,10,1,0,102,102,0,60,102, + 195,195,195,195,195,195,195,195,102,60,7,8,8,10,1,0, + 130,198,108,56,56,108,198,130,8,15,15,10,1,255,1,62, + 102,199,199,203,203,203,211,211,211,227,102,124,128,8,15,15, + 10,1,0,48,24,12,0,195,195,195,195,195,195,195,195,195, + 102,60,8,15,15,10,1,0,12,24,48,0,195,195,195,195, + 195,195,195,195,195,102,60,8,15,15,10,1,0,24,60,102, + 0,195,195,195,195,195,195,195,195,195,102,60,8,15,15,10, + 1,0,102,102,0,195,195,195,195,195,195,195,195,195,195,102, + 60,8,15,15,10,1,0,12,24,48,0,195,195,102,102,60, + 60,24,24,24,24,24,7,13,13,10,2,0,192,192,192,252, + 198,198,198,198,198,252,192,192,192,8,13,13,10,1,0,28, + 54,99,99,102,236,108,102,99,99,99,102,108,8,12,12,10, + 1,0,48,24,12,0,126,195,3,127,195,195,195,125,8,12, + 12,10,1,0,12,24,48,0,126,195,3,127,195,195,195,125, + 8,12,12,10,1,0,24,60,102,0,126,195,3,127,195,195, + 195,125,8,12,12,10,1,0,50,126,76,0,126,195,3,127, + 195,195,195,125,8,11,11,10,1,0,102,102,0,126,195,3, + 127,195,195,195,125,8,13,13,10,1,0,60,102,102,60,0, + 126,195,3,127,195,195,195,125,8,8,8,10,1,0,118,155, + 27,30,120,216,217,110,8,12,12,10,1,252,62,99,192,192, + 192,192,99,62,24,12,108,56,8,12,12,10,1,0,96,48, + 24,0,60,102,195,255,192,192,99,62,8,12,12,10,1,0, + 6,12,24,0,60,102,195,255,192,192,99,62,8,12,12,10, + 1,0,24,60,102,0,60,102,195,255,192,192,99,62,8,11, + 11,10,1,0,102,102,0,60,102,195,255,192,192,99,62,8, + 12,12,10,1,0,96,48,24,0,120,24,24,24,24,24,24, + 255,8,12,12,10,1,0,12,24,48,0,120,24,24,24,24, + 24,24,255,8,12,12,10,1,0,24,60,102,0,120,24,24, + 24,24,24,24,255,8,11,11,10,1,0,102,102,0,120,24, + 24,24,24,24,24,255,8,13,13,10,1,0,136,216,112,112, + 216,140,62,103,195,195,195,102,60,8,12,12,10,1,0,50, + 126,76,0,220,230,195,195,195,195,195,195,8,12,12,10,1, + 0,96,48,24,0,60,102,195,195,195,195,102,60,8,12,12, + 10,1,0,6,12,24,0,60,102,195,195,195,195,102,60,8, + 12,12,10,1,0,24,60,102,0,60,102,195,195,195,195,102, + 60,8,12,12,10,1,0,50,126,76,0,60,102,195,195,195, + 195,102,60,8,11,11,10,1,0,102,102,0,60,102,195,195, + 195,195,102,60,8,10,10,10,1,1,24,24,0,0,255,255, + 0,0,24,24,8,10,10,10,1,255,1,62,102,203,203,211, + 211,102,124,128,8,12,12,10,1,0,48,24,12,0,195,195, + 195,195,195,195,103,59,8,12,12,10,1,0,6,12,24,0, + 195,195,195,195,195,195,103,59,8,12,12,10,1,0,24,60, + 102,0,195,195,195,195,195,195,103,59,8,11,11,10,1,0, + 102,102,0,195,195,195,195,195,195,103,59,8,16,16,10,1, + 252,12,24,48,0,195,195,195,195,195,195,103,59,3,195,102, + 60,7,17,17,10,2,252,192,192,192,192,192,192,248,204,198, + 198,198,204,248,192,192,192,192,8,15,15,10,1,252,102,102, + 0,195,195,195,195,195,195,103,59,3,195,102,60}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--20-200-75-75-C-100-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w= 9 h=15 x= 4 y=16 dx=10 dy= 0 ascent=16 len=26 + Font Bounding box w=10 h=20 x= 0 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_10x20r[1667] U8G_SECTION(".progmem.u8g_font_10x20r") = { + 0,10,20,0,252,13,2,74,4,153,32,127,252,16,252,13, + 252,0,0,0,10,0,16,2,13,13,10,4,0,192,192,192, + 192,192,192,192,192,192,192,0,192,192,6,4,4,10,2,9, + 204,204,204,72,9,11,22,10,1,1,27,0,27,0,27,0, + 127,128,54,0,54,0,54,0,255,0,108,0,108,0,108,0, + 8,13,13,10,1,0,24,126,219,216,216,216,126,27,27,27, + 219,126,24,9,12,24,10,1,0,115,0,219,0,222,0,118, + 0,12,0,12,0,24,0,24,0,55,0,61,128,109,128,103, + 0,9,13,26,10,1,0,56,0,108,0,108,0,108,0,120, + 0,48,0,112,0,216,0,205,128,199,0,198,0,239,0,121, + 128,2,5,5,10,4,8,192,192,192,192,128,5,13,13,10, + 3,0,24,48,96,96,192,192,192,192,192,96,96,48,24,5, + 13,13,10,2,0,192,96,48,48,24,24,24,24,24,48,48, + 96,192,8,7,7,10,1,3,102,102,60,255,60,102,102,8, + 7,7,10,1,3,24,24,24,255,24,24,24,4,3,3,10, + 3,255,112,112,224,8,1,1,10,1,6,255,3,3,3,10, + 4,0,224,224,224,7,12,12,10,2,0,6,6,12,12,24, + 24,48,48,96,96,192,192,8,13,13,10,1,0,24,60,102, + 102,195,195,195,195,195,102,102,60,24,8,13,13,10,1,0, + 24,56,120,216,24,24,24,24,24,24,24,24,255,8,13,13, + 10,1,0,60,102,195,195,3,3,6,28,48,96,192,192,255, + 8,13,13,10,1,0,60,102,195,195,3,6,28,6,3,195, + 195,102,60,8,13,13,10,1,0,2,6,14,30,54,102,198, + 198,255,6,6,6,6,8,13,13,10,1,0,255,192,192,192, + 192,220,230,3,3,3,195,102,60,8,13,13,10,1,0,60, + 102,194,192,192,220,230,195,195,195,195,102,60,8,13,13,10, + 1,0,255,3,3,6,6,12,12,24,24,48,48,96,96,8, + 13,13,10,1,0,60,102,195,195,195,102,60,102,195,195,195, + 102,60,8,13,13,10,1,0,60,102,195,195,195,195,103,59, + 3,3,67,102,60,3,8,8,10,4,0,224,224,0,0,0, + 0,224,224,4,9,9,10,3,255,112,112,0,0,0,0,112, + 112,224,7,13,13,10,1,0,2,6,12,24,48,96,192,96, + 48,24,12,6,2,8,6,6,10,1,3,255,0,0,0,0, + 255,7,13,13,10,2,0,128,192,96,48,24,12,6,12,24, + 48,96,192,128,8,13,13,10,1,0,60,102,195,195,195,6, + 12,24,24,24,0,24,24,8,13,13,10,1,0,60,102,195, + 207,223,219,219,219,222,204,192,99,62,8,13,13,10,1,0, + 24,60,102,102,195,195,195,255,195,195,195,195,195,8,13,13, + 10,1,0,248,204,198,198,198,204,252,198,195,195,195,198,252, + 8,13,13,10,1,0,60,102,195,192,192,192,192,192,192,192, + 195,102,60,8,13,13,10,1,0,252,198,195,195,195,195,195, + 195,195,195,195,198,252,8,13,13,10,1,0,255,192,192,192, + 192,192,252,192,192,192,192,192,255,8,13,13,10,1,0,255, + 192,192,192,192,192,252,192,192,192,192,192,192,8,13,13,10, + 1,0,60,102,195,192,192,192,207,195,195,195,195,103,61,8, + 13,13,10,1,0,195,195,195,195,195,195,255,195,195,195,195, + 195,195,8,13,13,10,1,0,255,24,24,24,24,24,24,24, + 24,24,24,24,255,9,13,26,10,1,0,31,128,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,198,0,198, + 0,108,0,56,0,8,13,13,10,1,0,195,195,198,198,204, + 204,248,204,204,198,198,195,195,8,13,13,10,1,0,192,192, + 192,192,192,192,192,192,192,192,192,192,255,8,13,13,10,1, + 0,195,195,231,231,255,219,219,219,219,195,195,195,195,8,13, + 13,10,1,0,195,227,227,243,243,219,219,207,207,199,199,195, + 195,8,13,13,10,1,0,60,102,195,195,195,195,195,195,195, + 195,195,102,60,8,13,13,10,1,0,252,198,195,195,195,195, + 198,252,192,192,192,192,192,8,14,14,10,1,255,60,102,195, + 195,195,195,195,195,195,219,207,102,62,3,8,13,13,10,1, + 0,252,198,195,195,195,195,198,252,204,198,198,195,195,8,13, + 13,10,1,0,60,102,195,192,192,96,60,6,3,3,195,102, + 60,8,13,13,10,1,0,255,24,24,24,24,24,24,24,24, + 24,24,24,24,8,13,13,10,1,0,195,195,195,195,195,195, + 195,195,195,195,195,102,60,8,13,13,10,1,0,195,195,195, + 195,102,102,102,60,60,60,24,24,24,8,13,13,10,1,0, + 195,195,195,195,195,219,219,219,219,231,231,195,195,8,13,13, + 10,1,0,195,195,102,102,60,60,24,60,60,102,102,195,195, + 8,13,13,10,1,0,195,195,102,102,60,60,24,24,24,24, + 24,24,24,8,13,13,10,1,0,255,3,3,6,12,12,24, + 48,48,96,192,192,255,6,13,13,10,2,0,252,192,192,192, + 192,192,192,192,192,192,192,192,252,7,12,12,10,2,0,192, + 192,96,96,48,48,24,24,12,12,6,6,6,13,13,10,2, + 0,252,12,12,12,12,12,12,12,12,12,12,12,252,8,4, + 4,10,1,9,24,60,102,195,9,1,2,10,1,255,255,128, + 4,3,3,10,3,10,192,96,48,8,8,8,10,1,0,62, + 99,3,127,195,195,195,125,8,13,13,10,1,0,192,192,192, + 192,192,220,230,195,195,195,195,230,220,8,8,8,10,1,0, + 62,99,192,192,192,192,99,62,8,13,13,10,1,0,3,3, + 3,3,3,59,103,195,195,195,195,103,59,8,8,8,10,1, + 0,60,102,195,255,192,192,99,62,8,13,13,10,1,0,30, + 51,51,48,48,252,48,48,48,48,48,48,48,8,12,12,10, + 1,252,125,199,198,198,198,124,192,126,195,195,195,126,8,13, + 13,10,1,0,192,192,192,192,192,220,230,195,195,195,195,195, + 195,8,11,11,10,1,0,24,24,0,120,24,24,24,24,24, + 24,255,7,15,15,10,2,252,6,6,0,30,6,6,6,6, + 6,6,6,198,198,198,124,8,13,13,10,1,0,192,192,192, + 192,192,198,204,216,240,248,204,198,195,8,13,13,10,1,0, + 120,24,24,24,24,24,24,24,24,24,24,24,255,8,8,8, + 10,1,0,182,255,219,219,219,219,219,219,8,8,8,10,1, + 0,220,230,195,195,195,195,195,195,8,8,8,10,1,0,60, + 102,195,195,195,195,102,60,8,12,12,10,1,252,220,230,195, + 195,195,195,230,220,192,192,192,192,8,12,12,10,1,252,59, + 103,195,195,195,195,103,59,3,3,3,3,8,8,8,10,1, + 0,222,115,96,96,96,96,96,96,8,8,8,10,1,0,126, + 195,192,126,3,3,195,126,8,11,11,10,1,0,48,48,48, + 252,48,48,48,48,48,51,30,8,8,8,10,1,0,195,195, + 195,195,195,195,103,59,8,8,8,10,1,0,195,195,102,102, + 60,60,24,24,8,8,8,10,1,0,195,195,195,219,219,219, + 255,102,8,8,8,10,1,0,195,102,60,24,24,60,102,195, + 8,12,12,10,1,252,195,195,195,195,195,195,103,59,3,195, + 102,60,7,8,8,10,2,0,254,6,12,24,48,96,192,254, + 8,13,13,10,1,0,15,24,24,24,24,24,240,24,24,24, + 24,24,15,2,13,13,10,4,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,8,13,13,10,1,0,240,24,24,24, + 24,24,15,24,24,24,24,24,240,8,3,3,10,1,10,115, + 219,206,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--6-60-75-75-C-40-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 4 h= 6 x= 1 y= 5 dx= 4 dy= 0 ascent= 5 len= 6 + Font Bounding box w= 4 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_4x6[1500] U8G_SECTION(".progmem.u8g_font_4x6") = { + 1,4,6,0,255,5,1,3,1,250,32,255,255,5,255,5, + 255,7,0,64,18,21,69,128,128,128,0,128,5,50,66,160, + 160,2,69,69,160,240,160,240,160,1,54,70,64,224,192,32, + 224,64,2,53,69,128,32,64,128,32,2,69,69,64,160,64, + 160,80,21,18,66,128,128,17,38,70,64,128,128,128,128,64, + 1,38,70,128,64,64,64,64,128,2,53,69,160,64,224,64, + 160,2,53,69,64,64,224,64,64,1,34,66,64,128,4,49, + 65,224,18,17,65,128,2,53,69,32,32,64,128,128,2,53, + 69,64,160,224,160,64,2,53,69,64,192,64,64,224,2,53, + 69,64,160,32,64,224,2,53,69,224,32,64,32,192,2,53, + 69,160,160,224,32,32,2,53,69,224,128,192,32,192,2,53, + 69,96,128,192,160,64,2,53,69,224,32,64,128,128,2,53, + 69,96,160,64,160,192,2,53,69,64,160,96,32,192,18,20, + 68,128,0,0,128,1,37,69,64,0,0,64,128,2,53,69, + 32,64,128,64,32,3,51,67,224,0,224,2,53,69,128,64, + 32,64,128,2,53,69,192,32,64,0,64,2,53,69,96,160, + 160,128,96,2,53,69,64,160,224,160,160,2,53,69,192,160, + 192,160,192,2,53,69,64,160,128,160,64,2,53,69,192,160, + 160,160,192,2,53,69,224,128,192,128,224,2,53,69,224,128, + 192,128,128,2,53,69,96,128,160,160,96,2,53,69,160,160, + 224,160,160,2,53,69,224,64,64,64,224,2,53,69,32,32, + 32,160,64,2,53,69,160,160,192,160,160,2,53,69,128,128, + 128,128,224,2,53,69,160,224,224,160,160,2,53,69,32,160, + 224,160,128,2,53,69,64,160,160,160,64,2,53,69,192,160, + 192,128,128,1,54,70,64,160,160,160,64,32,2,53,69,192, + 160,192,160,160,2,53,69,96,128,64,32,192,2,53,69,224, + 64,64,64,64,2,53,69,160,160,160,160,224,2,53,69,160, + 160,160,224,64,2,53,69,160,160,224,224,160,2,53,69,160, + 160,64,160,160,2,53,69,160,160,64,64,64,2,53,69,224, + 32,64,128,224,18,37,69,192,128,128,128,192,2,53,69,128, + 128,64,32,32,2,37,69,192,64,64,64,192,5,50,66,64, + 160,1,49,65,224,21,34,66,128,64,2,52,68,96,160,160, + 96,2,53,69,128,192,160,160,192,2,52,68,96,128,128,96, + 2,53,69,32,96,160,160,96,2,52,68,64,160,192,96,2, + 53,69,32,64,224,64,64,1,53,69,96,160,96,32,192,2, + 53,69,128,192,160,160,160,2,53,69,64,0,192,64,224,1, + 54,70,32,0,32,32,32,192,2,53,69,128,160,192,160,160, + 2,53,69,192,64,64,64,224,2,52,68,160,224,160,160,2, + 52,68,192,160,160,160,2,52,68,64,160,160,64,1,53,69, + 192,160,192,128,128,1,53,69,96,160,160,96,32,2,52,68, + 160,192,128,128,2,52,68,96,192,32,192,2,53,69,64,224, + 64,64,32,2,52,68,160,160,160,96,2,52,68,160,160,160, + 64,2,52,68,160,160,224,160,2,52,68,160,64,64,160,1, + 53,69,160,160,96,32,192,2,52,68,224,32,64,224,1,54, + 70,32,64,192,64,64,32,18,21,69,128,128,128,128,128,1, + 54,70,128,64,96,64,64,128,5,66,66,80,160,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,7,0, + 64,18,21,69,128,0,128,128,128,2,53,69,64,224,128,224, + 64,2,53,69,32,64,96,64,160,2,68,68,144,96,96,144, + 2,53,69,160,64,224,64,64,18,21,69,128,128,0,128,128, + 1,54,70,96,192,160,96,32,192,6,49,65,160,1,70,70, + 96,144,208,208,144,96,2,53,69,96,160,96,0,224,3,67, + 67,80,160,80,3,50,66,224,32,4,49,65,224,3,68,68, + 96,240,208,96,6,49,65,224,4,51,67,64,160,64,2,53, + 69,64,224,64,0,224,3,36,68,192,64,128,192,2,37,69, + 192,64,128,64,128,21,34,66,64,128,1,53,69,160,160,160, + 192,128,2,69,69,112,208,208,80,80,20,17,65,128,18,34, + 66,64,128,3,36,68,64,192,64,64,2,53,69,64,160,64, + 0,224,3,67,67,160,80,160,1,70,70,128,128,128,80,112, + 16,1,70,70,128,128,176,16,32,48,1,70,70,192,64,128, + 80,176,16,2,53,69,64,0,64,128,96,2,53,69,128,64, + 160,224,160,2,53,69,32,64,160,224,160,2,53,69,192,64, + 160,224,160,2,53,69,96,192,160,224,160,2,53,69,160,64, + 160,224,160,2,53,69,64,64,160,224,160,2,69,69,112,160, + 240,160,176,1,54,70,64,160,128,160,64,128,2,53,69,128, + 224,192,128,224,2,53,69,32,224,192,128,224,2,53,69,96, + 224,192,128,224,2,53,69,160,224,192,128,224,2,53,69,128, + 224,64,64,224,2,53,69,32,224,64,64,224,2,53,69,64, + 224,64,64,224,2,53,69,160,64,64,64,224,2,69,69,224, + 80,208,80,224,2,69,69,80,160,224,224,160,2,53,69,128, + 64,160,160,64,2,53,69,32,64,160,160,64,2,53,69,64, + 64,160,160,64,2,69,69,112,224,160,160,64,2,53,69,160, + 64,160,160,64,3,51,67,160,64,160,2,53,69,96,160,224, + 160,192,2,53,69,128,64,160,160,224,2,53,69,32,64,160, + 160,224,2,53,69,64,0,160,160,224,2,53,69,160,0,160, + 160,224,2,53,69,32,0,160,64,64,2,53,69,128,192,160, + 192,128,1,54,70,64,160,192,160,224,128,2,53,69,128,64, + 96,160,96,2,53,69,32,64,96,160,96,2,53,69,96,0, + 96,160,96,2,69,69,80,160,96,160,96,2,53,69,160,0, + 96,160,96,2,53,69,64,0,96,160,96,2,68,68,112,176, + 160,112,1,53,69,64,160,128,96,64,2,53,69,128,64,160, + 192,96,2,53,69,32,64,160,192,96,2,53,69,192,64,160, + 192,96,2,53,69,160,64,160,192,96,2,53,69,128,64,64, + 64,224,2,53,69,32,192,64,64,224,2,53,69,64,160,64, + 64,224,2,53,69,160,0,192,64,224,2,53,69,160,64,96, + 160,64,2,69,69,80,160,192,160,160,2,53,69,128,64,64, + 160,64,2,53,69,32,64,64,160,64,2,53,69,64,0,64, + 160,64,2,53,69,224,0,64,160,64,2,53,69,160,0,64, + 160,64,2,53,69,64,0,224,0,64,2,52,68,96,160,160, + 192,2,53,69,128,64,160,160,96,2,53,69,32,64,160,160, + 96,2,53,69,64,0,160,160,96,2,53,69,160,0,160,160, + 96,1,54,70,32,64,160,224,32,192,1,54,70,128,128,192, + 160,192,128,1,54,70,160,0,160,224,32,192}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--6-60-75-75-C-40-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 4 h= 6 x= 1 y= 5 dx= 4 dy= 0 ascent= 5 len= 6 + Font Bounding box w= 4 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_4x6r[734] U8G_SECTION(".progmem.u8g_font_4x6r") = { + 1,4,6,0,255,5,1,3,1,250,32,127,255,5,255,5, + 255,7,0,64,18,21,69,128,128,128,0,128,5,50,66,160, + 160,2,69,69,160,240,160,240,160,1,54,70,64,224,192,32, + 224,64,2,53,69,128,32,64,128,32,2,69,69,64,160,64, + 160,80,21,18,66,128,128,17,38,70,64,128,128,128,128,64, + 1,38,70,128,64,64,64,64,128,2,53,69,160,64,224,64, + 160,2,53,69,64,64,224,64,64,1,34,66,64,128,4,49, + 65,224,18,17,65,128,2,53,69,32,32,64,128,128,2,53, + 69,64,160,224,160,64,2,53,69,64,192,64,64,224,2,53, + 69,64,160,32,64,224,2,53,69,224,32,64,32,192,2,53, + 69,160,160,224,32,32,2,53,69,224,128,192,32,192,2,53, + 69,96,128,192,160,64,2,53,69,224,32,64,128,128,2,53, + 69,96,160,64,160,192,2,53,69,64,160,96,32,192,18,20, + 68,128,0,0,128,1,37,69,64,0,0,64,128,2,53,69, + 32,64,128,64,32,3,51,67,224,0,224,2,53,69,128,64, + 32,64,128,2,53,69,192,32,64,0,64,2,53,69,96,160, + 160,128,96,2,53,69,64,160,224,160,160,2,53,69,192,160, + 192,160,192,2,53,69,64,160,128,160,64,2,53,69,192,160, + 160,160,192,2,53,69,224,128,192,128,224,2,53,69,224,128, + 192,128,128,2,53,69,96,128,160,160,96,2,53,69,160,160, + 224,160,160,2,53,69,224,64,64,64,224,2,53,69,32,32, + 32,160,64,2,53,69,160,160,192,160,160,2,53,69,128,128, + 128,128,224,2,53,69,160,224,224,160,160,2,53,69,32,160, + 224,160,128,2,53,69,64,160,160,160,64,2,53,69,192,160, + 192,128,128,1,54,70,64,160,160,160,64,32,2,53,69,192, + 160,192,160,160,2,53,69,96,128,64,32,192,2,53,69,224, + 64,64,64,64,2,53,69,160,160,160,160,224,2,53,69,160, + 160,160,224,64,2,53,69,160,160,224,224,160,2,53,69,160, + 160,64,160,160,2,53,69,160,160,64,64,64,2,53,69,224, + 32,64,128,224,18,37,69,192,128,128,128,192,2,53,69,128, + 128,64,32,32,2,37,69,192,64,64,64,192,5,50,66,64, + 160,1,49,65,224,21,34,66,128,64,2,52,68,96,160,160, + 96,2,53,69,128,192,160,160,192,2,52,68,96,128,128,96, + 2,53,69,32,96,160,160,96,2,52,68,64,160,192,96,2, + 53,69,32,64,224,64,64,1,53,69,96,160,96,32,192,2, + 53,69,128,192,160,160,160,2,53,69,64,0,192,64,224,1, + 54,70,32,0,32,32,32,192,2,53,69,128,160,192,160,160, + 2,53,69,192,64,64,64,224,2,52,68,160,224,160,160,2, + 52,68,192,160,160,160,2,52,68,64,160,160,64,1,53,69, + 192,160,192,128,128,1,53,69,96,160,160,96,32,2,52,68, + 160,192,128,128,2,52,68,96,192,32,192,2,53,69,64,224, + 64,64,32,2,52,68,160,160,160,96,2,52,68,160,160,160, + 64,2,52,68,160,160,224,160,2,52,68,160,64,64,160,1, + 53,69,160,160,96,32,192,2,52,68,224,32,64,224,1,54, + 70,32,64,192,64,64,32,18,21,69,128,128,128,128,128,1, + 54,70,128,64,96,64,64,128,5,66,66,80,160,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--7-70-75-75-C-50-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 6, '1' Height: 6 + Calculated Max Values w= 5 h= 7 x= 2 y= 6 dx= 5 dy= 0 ascent= 6 len= 7 + Font Bounding box w= 5 h= 7 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-1 + X Font ascent = 6 descent=-1 + Max Font ascent = 6 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_5x7[1624] U8G_SECTION(".progmem.u8g_font_5x7") = { + 1,5,7,0,255,6,1,21,2,39,32,255,255,6,255,6, + 255,8,0,80,34,22,86,128,128,128,128,0,128,21,51,83, + 160,160,160,2,85,85,80,248,80,248,80,2,85,85,112,160, + 112,40,112,2,70,86,128,144,32,64,144,16,2,69,85,64, + 160,64,160,80,37,19,83,128,128,128,18,38,86,64,128,128, + 128,128,64,18,38,86,128,64,64,64,64,128,18,53,85,160, + 64,224,64,160,2,85,85,32,32,248,32,32,17,51,83,96, + 64,128,4,65,81,240,18,34,82,192,192,3,68,84,16,32, + 64,128,18,54,86,64,160,160,160,160,64,18,54,86,64,192, + 64,64,64,224,2,70,86,96,144,16,32,64,240,2,70,86, + 240,16,96,16,144,96,2,70,86,32,96,160,240,32,32,2, + 70,86,240,128,224,16,144,96,2,70,86,96,128,224,144,144, + 96,2,70,86,240,16,32,32,64,64,2,70,86,96,144,96, + 144,144,96,2,70,86,96,144,144,112,16,96,18,37,85,192, + 192,0,192,192,1,54,86,96,96,0,96,64,128,18,53,85, + 32,64,128,64,32,3,67,83,240,0,240,18,53,85,128,64, + 32,64,128,18,54,86,64,160,32,64,0,64,2,70,86,96, + 144,176,176,128,96,2,70,86,96,144,144,240,144,144,2,70, + 86,224,144,224,144,144,224,2,70,86,96,144,128,128,144,96, + 2,70,86,224,144,144,144,144,224,2,70,86,240,128,224,128, + 128,240,2,70,86,240,128,224,128,128,128,2,70,86,96,144, + 128,176,144,112,2,70,86,144,144,240,144,144,144,18,54,86, + 224,64,64,64,64,224,2,70,86,16,16,16,16,144,96,2, + 70,86,144,160,192,192,160,144,2,70,86,128,128,128,128,128, + 240,2,70,86,144,240,240,144,144,144,2,70,86,144,208,208, + 176,176,144,2,70,86,96,144,144,144,144,96,2,70,86,224, + 144,144,224,128,128,1,71,87,96,144,144,144,208,96,16,2, + 70,86,224,144,144,224,160,144,2,70,86,96,144,64,32,144, + 96,18,54,86,224,64,64,64,64,64,2,70,86,144,144,144, + 144,144,96,2,70,86,144,144,144,144,96,96,2,70,86,144, + 144,144,240,240,144,2,70,86,144,144,96,96,144,144,18,54, + 86,160,160,160,64,64,64,2,70,86,240,16,32,64,128,240, + 18,54,86,224,128,128,128,128,224,3,68,84,128,64,32,16, + 18,54,86,224,32,32,32,32,224,22,50,82,64,160,2,65, + 81,240,22,34,82,128,64,2,68,84,112,144,176,80,2,70, + 86,128,128,224,144,144,224,2,52,84,96,128,128,96,2,70, + 86,16,16,112,144,144,112,2,68,84,96,176,192,96,2,70, + 86,32,80,64,224,64,64,1,69,85,112,144,96,128,112,2, + 70,86,128,128,224,144,144,144,18,54,86,64,0,192,64,64, + 224,17,55,87,32,0,32,32,32,160,64,2,70,86,128,128, + 160,192,160,144,18,54,86,192,64,64,64,64,224,2,68,84, + 160,240,144,144,2,68,84,224,144,144,144,2,68,84,96,144, + 144,96,1,69,85,224,144,144,224,128,1,69,85,112,144,144, + 112,16,2,68,84,224,144,128,128,2,68,84,112,192,48,224, + 2,70,86,64,64,224,64,64,48,2,68,84,144,144,144,112, + 18,52,84,160,160,160,64,2,68,84,144,144,240,240,2,68, + 84,144,96,96,144,1,69,85,144,144,80,32,64,2,68,84, + 240,32,64,240,18,54,86,32,64,192,64,64,32,34,22,86, + 128,128,128,128,128,128,18,54,86,128,64,96,64,64,128,6, + 66,82,80,160,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,8,0,80,34,22,86,128,0,128,128,128, + 128,1,70,86,32,112,160,160,112,32,2,69,85,48,64,224, + 64,176,2,85,85,136,112,80,112,136,18,54,86,160,160,64, + 224,64,64,34,21,85,128,128,0,128,128,17,55,87,96,128, + 192,160,96,32,192,23,49,81,160,1,87,87,112,136,168,200, + 168,136,112,5,51,83,96,160,96,3,83,83,72,144,72,3, + 66,82,240,16,20,49,81,224,1,87,87,112,136,232,200,200, + 136,112,7,65,81,240,21,51,83,64,160,64,2,86,86,32, + 32,248,32,32,248,20,36,84,192,64,128,192,20,36,84,192, + 192,64,192,22,34,82,64,128,1,69,85,144,144,144,224,128, + 2,70,86,112,208,208,80,80,80,20,34,82,192,192,17,34, + 82,64,128,20,52,84,64,192,64,224,5,51,83,64,160,64, + 3,83,83,144,72,144,1,71,87,128,128,128,144,48,112,16, + 1,71,87,128,128,128,176,16,32,48,1,71,87,192,192,64, + 208,48,112,16,18,54,86,64,0,64,128,160,64,2,70,86, + 96,144,144,240,144,144,2,70,86,96,144,144,240,144,144,2, + 70,86,96,144,144,240,144,144,2,70,86,96,144,144,240,144, + 144,2,70,86,144,96,144,240,144,144,2,70,86,96,96,144, + 240,144,144,2,70,86,112,160,176,224,160,176,1,71,87,96, + 144,128,128,144,96,64,2,70,86,240,128,224,128,128,240,2, + 70,86,240,128,224,128,128,240,2,70,86,240,128,224,128,128, + 240,2,70,86,240,128,224,128,128,240,18,54,86,224,64,64, + 64,64,224,18,54,86,224,64,64,64,64,224,18,54,86,224, + 64,64,64,64,224,18,54,86,224,64,64,64,64,224,2,70, + 86,224,80,208,80,80,224,2,70,86,176,144,208,176,176,144, + 2,70,86,96,144,144,144,144,96,2,70,86,96,144,144,144, + 144,96,2,70,86,96,144,144,144,144,96,2,70,86,96,144, + 144,144,144,96,2,70,86,144,96,144,144,144,96,2,68,84, + 144,96,96,144,2,70,86,112,176,176,208,208,224,2,70,86, + 144,144,144,144,144,96,2,70,86,144,144,144,144,144,96,2, + 70,86,144,144,144,144,144,96,2,70,86,144,0,144,144,144, + 96,18,54,86,160,160,160,64,64,64,2,70,86,128,224,144, + 224,128,128,2,70,86,96,144,160,144,144,160,2,70,86,64, + 32,112,144,176,80,2,70,86,32,64,112,144,176,80,2,70, + 86,32,80,112,144,176,80,2,70,86,80,160,112,144,176,80, + 2,70,86,80,0,112,144,176,80,2,70,86,96,96,112,144, + 176,80,2,68,84,112,176,160,112,17,53,85,96,128,128,96, + 64,2,70,86,64,32,96,176,192,96,2,70,86,32,64,96, + 176,192,96,2,70,86,64,160,96,176,192,96,2,70,86,160, + 0,96,176,192,96,18,54,86,128,64,192,64,64,224,18,54, + 86,64,128,192,64,64,224,18,54,86,64,160,192,64,64,224, + 18,54,86,160,0,192,64,64,224,2,70,86,64,48,96,144, + 144,96,2,70,86,80,160,224,144,144,144,2,70,86,64,32, + 96,144,144,96,2,70,86,32,64,96,144,144,96,2,70,86, + 96,0,96,144,144,96,2,70,86,80,160,96,144,144,96,2, + 70,86,80,0,96,144,144,96,2,69,85,96,0,240,0,96, + 2,68,84,112,176,208,224,2,70,86,64,32,144,144,144,112, + 2,70,86,32,64,144,144,144,112,2,70,86,96,0,144,144, + 144,112,2,70,86,80,0,144,144,144,112,1,71,87,32,64, + 144,144,80,32,64,1,70,86,128,224,144,144,224,128,1,71, + 87,80,0,144,144,80,32,64}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--7-70-75-75-C-50-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 6, '1' Height: 6 + Calculated Max Values w= 5 h= 7 x= 2 y= 6 dx= 5 dy= 0 ascent= 6 len= 7 + Font Bounding box w= 5 h= 7 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-1 + X Font ascent = 6 descent=-1 + Max Font ascent = 6 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_5x7r[789] U8G_SECTION(".progmem.u8g_font_5x7r") = { + 1,5,7,0,255,6,1,21,2,39,32,127,255,6,255,6, + 255,8,0,80,34,22,86,128,128,128,128,0,128,21,51,83, + 160,160,160,2,85,85,80,248,80,248,80,2,85,85,112,160, + 112,40,112,2,70,86,128,144,32,64,144,16,2,69,85,64, + 160,64,160,80,37,19,83,128,128,128,18,38,86,64,128,128, + 128,128,64,18,38,86,128,64,64,64,64,128,18,53,85,160, + 64,224,64,160,2,85,85,32,32,248,32,32,17,51,83,96, + 64,128,4,65,81,240,18,34,82,192,192,3,68,84,16,32, + 64,128,18,54,86,64,160,160,160,160,64,18,54,86,64,192, + 64,64,64,224,2,70,86,96,144,16,32,64,240,2,70,86, + 240,16,96,16,144,96,2,70,86,32,96,160,240,32,32,2, + 70,86,240,128,224,16,144,96,2,70,86,96,128,224,144,144, + 96,2,70,86,240,16,32,32,64,64,2,70,86,96,144,96, + 144,144,96,2,70,86,96,144,144,112,16,96,18,37,85,192, + 192,0,192,192,1,54,86,96,96,0,96,64,128,18,53,85, + 32,64,128,64,32,3,67,83,240,0,240,18,53,85,128,64, + 32,64,128,18,54,86,64,160,32,64,0,64,2,70,86,96, + 144,176,176,128,96,2,70,86,96,144,144,240,144,144,2,70, + 86,224,144,224,144,144,224,2,70,86,96,144,128,128,144,96, + 2,70,86,224,144,144,144,144,224,2,70,86,240,128,224,128, + 128,240,2,70,86,240,128,224,128,128,128,2,70,86,96,144, + 128,176,144,112,2,70,86,144,144,240,144,144,144,18,54,86, + 224,64,64,64,64,224,2,70,86,16,16,16,16,144,96,2, + 70,86,144,160,192,192,160,144,2,70,86,128,128,128,128,128, + 240,2,70,86,144,240,240,144,144,144,2,70,86,144,208,208, + 176,176,144,2,70,86,96,144,144,144,144,96,2,70,86,224, + 144,144,224,128,128,1,71,87,96,144,144,144,208,96,16,2, + 70,86,224,144,144,224,160,144,2,70,86,96,144,64,32,144, + 96,18,54,86,224,64,64,64,64,64,2,70,86,144,144,144, + 144,144,96,2,70,86,144,144,144,144,96,96,2,70,86,144, + 144,144,240,240,144,2,70,86,144,144,96,96,144,144,18,54, + 86,160,160,160,64,64,64,2,70,86,240,16,32,64,128,240, + 18,54,86,224,128,128,128,128,224,3,68,84,128,64,32,16, + 18,54,86,224,32,32,32,32,224,22,50,82,64,160,2,65, + 81,240,22,34,82,128,64,2,68,84,112,144,176,80,2,70, + 86,128,128,224,144,144,224,2,52,84,96,128,128,96,2,70, + 86,16,16,112,144,144,112,2,68,84,96,176,192,96,2,70, + 86,32,80,64,224,64,64,1,69,85,112,144,96,128,112,2, + 70,86,128,128,224,144,144,144,18,54,86,64,0,192,64,64, + 224,17,55,87,32,0,32,32,32,160,64,2,70,86,128,128, + 160,192,160,144,18,54,86,192,64,64,64,64,224,2,68,84, + 160,240,144,144,2,68,84,224,144,144,144,2,68,84,96,144, + 144,96,1,69,85,224,144,144,224,128,1,69,85,112,144,144, + 112,16,2,68,84,224,144,128,128,2,68,84,112,192,48,224, + 2,70,86,64,64,224,64,64,48,2,68,84,144,144,144,112, + 18,52,84,160,160,160,64,2,68,84,144,144,240,240,2,68, + 84,144,96,96,144,1,69,85,144,144,80,32,64,2,68,84, + 240,32,64,240,18,54,86,32,64,192,64,64,32,34,22,86, + 128,128,128,128,128,128,18,54,86,128,64,96,64,64,128,6, + 66,82,80,160,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--8-80-75-75-C-50-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 6, '1' Height: 6 + Calculated Max Values w= 5 h= 8 x= 2 y= 7 dx= 5 dy= 0 ascent= 7 len= 8 + Font Bounding box w= 5 h= 8 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-1 + X Font ascent = 6 descent=-1 + Max Font ascent = 7 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_5x8[1693] U8G_SECTION(".progmem.u8g_font_5x8") = { + 1,5,8,0,255,6,1,33,2,53,32,255,255,7,255,6, + 255,9,0,80,34,22,86,128,128,128,128,0,128,21,51,83, + 160,160,160,2,87,87,80,80,248,80,248,80,80,2,87,87, + 32,112,160,112,40,112,32,19,53,85,128,160,64,160,32,2, + 71,87,64,160,160,64,160,160,80,37,19,83,128,128,128,18, + 38,86,64,128,128,128,128,64,18,38,86,128,64,64,64,64, + 128,2,69,85,144,96,240,96,144,2,85,85,32,32,248,32, + 32,17,51,83,96,64,128,4,65,81,240,17,51,83,64,224, + 64,2,70,86,16,16,32,64,128,128,18,54,86,64,160,160, + 160,160,64,18,54,86,64,192,64,64,64,224,2,70,86,96, + 144,16,96,128,240,2,70,86,240,32,96,16,144,96,2,70, + 86,32,96,160,240,32,32,2,70,86,240,128,224,16,144,96, + 2,70,86,96,128,224,144,144,96,2,70,86,240,16,32,32, + 64,64,2,70,86,96,144,96,144,144,96,2,70,86,96,144, + 144,112,16,96,18,37,85,192,192,0,192,192,17,54,86,96, + 96,0,96,64,128,18,54,86,32,64,128,128,64,32,3,67, + 83,240,0,240,18,54,86,128,64,32,32,64,128,18,54,86, + 64,160,32,64,0,64,1,88,88,48,72,152,168,168,144,64, + 48,2,70,86,96,144,144,240,144,144,2,70,86,224,144,224, + 144,144,224,2,70,86,96,144,128,128,144,96,2,70,86,224, + 144,144,144,144,224,2,70,86,240,128,224,128,128,240,2,70, + 86,240,128,224,128,128,128,2,70,86,96,144,128,176,144,96, + 2,70,86,144,144,240,144,144,144,18,54,86,224,64,64,64, + 64,224,2,70,86,112,32,32,32,160,64,2,70,86,144,160, + 192,160,160,144,2,70,86,128,128,128,128,128,240,2,70,86, + 144,240,240,144,144,144,2,70,86,144,208,240,176,176,144,2, + 70,86,96,144,144,144,144,96,2,70,86,224,144,144,224,128, + 128,1,71,87,96,144,144,208,176,96,16,2,70,86,224,144, + 144,224,144,144,2,70,86,96,144,64,32,144,96,18,54,86, + 224,64,64,64,64,64,2,70,86,144,144,144,144,144,96,2, + 70,86,144,144,144,144,96,96,2,70,86,144,144,144,240,240, + 144,2,70,86,144,144,96,96,144,144,2,86,86,136,136,80, + 32,32,32,2,70,86,240,16,32,64,128,240,18,54,86,224, + 128,128,128,128,224,2,70,86,128,128,64,32,16,16,18,54, + 86,224,32,32,32,32,224,22,50,82,64,160,1,65,81,240, + 22,34,82,128,64,2,68,84,112,144,144,112,2,70,86,128, + 128,224,144,144,224,18,52,84,96,128,128,96,2,70,86,16, + 16,112,144,144,112,2,68,84,96,176,192,96,2,70,86,32, + 80,64,224,64,64,1,69,85,96,144,112,16,96,2,70,86, + 128,128,224,144,144,144,18,54,86,64,0,192,64,64,224,17, + 55,87,32,0,32,32,32,160,64,2,70,86,128,128,144,224, + 144,144,18,54,86,192,64,64,64,64,224,2,84,84,208,168, + 168,168,2,68,84,224,144,144,144,2,68,84,96,144,144,96, + 1,69,85,224,144,224,128,128,1,69,85,112,144,112,16,16, + 2,68,84,160,208,128,128,18,52,84,96,192,32,192,2,70, + 86,64,64,224,64,80,32,2,68,84,144,144,144,112,18,52, + 84,160,160,160,64,2,84,84,136,168,168,80,2,68,84,144, + 96,96,144,1,69,85,144,144,112,144,96,2,68,84,240,32, + 64,240,2,71,87,48,64,32,192,32,64,48,34,22,86,128, + 128,128,128,128,128,2,71,87,192,32,64,48,64,32,192,6, + 66,82,80,160,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,9,0,80,34,22,86,128,0,128,128,128, + 128,1,70,86,32,112,160,160,112,32,2,70,86,32,80,224, + 64,80,160,2,85,85,136,112,80,112,136,2,86,86,136,80, + 248,32,248,32,34,23,87,128,128,128,0,128,128,128,2,71, + 87,112,128,224,144,112,16,224,23,49,81,160,2,86,86,112, + 168,200,200,168,112,20,53,85,96,160,96,0,224,3,67,83, + 80,160,80,18,51,83,224,32,32,20,49,81,224,2,86,86, + 112,232,216,232,216,112,23,49,81,224,21,51,83,64,160,64, + 18,53,85,64,224,64,0,224,20,53,85,64,160,32,64,224, + 20,53,85,192,32,192,32,192,22,34,82,64,128,1,69,85, + 144,144,144,224,128,2,86,86,120,232,232,104,40,40,36,17, + 81,128,17,34,82,64,128,20,53,85,64,192,64,64,224,20, + 53,85,64,160,64,0,224,3,67,83,160,80,160,2,71,87, + 128,128,128,160,96,240,32,2,71,87,128,128,160,208,16,32, + 112,2,71,87,128,64,128,96,160,240,32,18,54,86,64,0, + 64,128,160,64,2,71,87,64,32,96,144,240,144,144,2,71, + 87,32,64,96,144,240,144,144,2,71,87,96,144,96,144,240, + 144,144,2,71,87,80,160,96,144,240,144,144,2,71,87,144, + 0,96,144,240,144,144,2,71,87,96,144,96,144,240,144,144, + 2,70,86,112,160,160,240,160,176,1,71,87,96,144,128,128, + 144,96,64,2,71,87,64,32,240,128,224,128,240,2,71,87, + 32,64,240,128,224,128,240,2,71,87,96,144,240,128,224,128, + 240,2,71,87,144,0,240,128,224,128,240,18,55,87,128,64, + 224,64,64,64,224,18,55,87,32,64,224,64,64,64,224,18, + 55,87,64,160,224,64,64,64,224,18,55,87,160,0,224,64, + 64,64,224,2,86,86,112,72,232,72,72,112,2,71,87,80, + 160,144,208,176,144,144,2,71,87,64,32,96,144,144,144,96, + 2,71,87,32,64,96,144,144,144,96,2,71,87,96,144,96, + 144,144,144,96,2,71,87,80,160,96,144,144,144,96,2,71, + 87,144,0,96,144,144,144,96,18,51,83,160,64,160,2,70, + 86,112,176,176,208,208,224,2,71,87,64,32,144,144,144,144, + 96,2,71,87,32,64,144,144,144,144,96,2,71,87,96,144, + 144,144,144,144,96,2,71,87,144,0,144,144,144,144,96,2, + 87,87,16,32,136,80,32,32,32,2,70,86,128,224,144,144, + 224,128,2,70,86,96,144,160,160,144,160,2,71,87,64,32, + 0,112,144,144,112,2,71,87,32,64,0,112,144,144,112,2, + 71,87,32,80,0,112,144,144,112,2,71,87,80,160,0,112, + 144,144,112,2,70,86,80,0,112,144,144,112,2,71,87,96, + 144,96,112,144,144,112,2,84,84,240,104,176,120,17,53,85, + 96,128,128,96,64,2,71,87,64,32,0,96,176,192,96,2, + 71,87,32,64,0,96,176,192,96,2,71,87,96,144,0,96, + 176,192,96,2,70,86,80,0,96,176,192,96,18,55,87,128, + 64,0,192,64,64,224,18,55,87,32,64,0,192,64,64,224, + 18,55,87,64,160,0,192,64,64,224,18,54,86,160,0,192, + 64,64,224,2,71,87,160,64,160,16,112,144,96,2,71,87, + 80,160,0,224,144,144,144,2,71,87,64,32,0,96,144,144, + 96,2,71,87,32,64,0,96,144,144,96,2,71,87,96,144, + 0,96,144,144,96,2,71,87,80,160,0,96,144,144,96,2, + 70,86,144,0,96,144,144,96,18,53,85,64,0,224,0,64, + 2,68,84,112,176,208,224,2,71,87,64,32,0,144,144,144, + 112,2,71,87,32,64,0,144,144,144,112,2,71,87,96,144, + 0,144,144,144,112,2,70,86,144,0,144,144,144,112,1,72, + 88,32,64,0,144,144,112,144,96,1,71,87,128,128,224,144, + 224,128,128,1,71,87,144,0,144,144,112,144,96}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--8-80-75-75-C-50-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 6, '1' Height: 6 + Calculated Max Values w= 5 h= 8 x= 2 y= 7 dx= 5 dy= 0 ascent= 7 len= 8 + Font Bounding box w= 5 h= 8 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-1 + X Font ascent = 6 descent=-1 + Max Font ascent = 7 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_5x8r[805] U8G_SECTION(".progmem.u8g_font_5x8r") = { + 1,5,8,0,255,6,1,33,2,53,32,127,255,7,255,6, + 255,9,0,80,34,22,86,128,128,128,128,0,128,21,51,83, + 160,160,160,2,87,87,80,80,248,80,248,80,80,2,87,87, + 32,112,160,112,40,112,32,19,53,85,128,160,64,160,32,2, + 71,87,64,160,160,64,160,160,80,37,19,83,128,128,128,18, + 38,86,64,128,128,128,128,64,18,38,86,128,64,64,64,64, + 128,2,69,85,144,96,240,96,144,2,85,85,32,32,248,32, + 32,17,51,83,96,64,128,4,65,81,240,17,51,83,64,224, + 64,2,70,86,16,16,32,64,128,128,18,54,86,64,160,160, + 160,160,64,18,54,86,64,192,64,64,64,224,2,70,86,96, + 144,16,96,128,240,2,70,86,240,32,96,16,144,96,2,70, + 86,32,96,160,240,32,32,2,70,86,240,128,224,16,144,96, + 2,70,86,96,128,224,144,144,96,2,70,86,240,16,32,32, + 64,64,2,70,86,96,144,96,144,144,96,2,70,86,96,144, + 144,112,16,96,18,37,85,192,192,0,192,192,17,54,86,96, + 96,0,96,64,128,18,54,86,32,64,128,128,64,32,3,67, + 83,240,0,240,18,54,86,128,64,32,32,64,128,18,54,86, + 64,160,32,64,0,64,1,88,88,48,72,152,168,168,144,64, + 48,2,70,86,96,144,144,240,144,144,2,70,86,224,144,224, + 144,144,224,2,70,86,96,144,128,128,144,96,2,70,86,224, + 144,144,144,144,224,2,70,86,240,128,224,128,128,240,2,70, + 86,240,128,224,128,128,128,2,70,86,96,144,128,176,144,96, + 2,70,86,144,144,240,144,144,144,18,54,86,224,64,64,64, + 64,224,2,70,86,112,32,32,32,160,64,2,70,86,144,160, + 192,160,160,144,2,70,86,128,128,128,128,128,240,2,70,86, + 144,240,240,144,144,144,2,70,86,144,208,240,176,176,144,2, + 70,86,96,144,144,144,144,96,2,70,86,224,144,144,224,128, + 128,1,71,87,96,144,144,208,176,96,16,2,70,86,224,144, + 144,224,144,144,2,70,86,96,144,64,32,144,96,18,54,86, + 224,64,64,64,64,64,2,70,86,144,144,144,144,144,96,2, + 70,86,144,144,144,144,96,96,2,70,86,144,144,144,240,240, + 144,2,70,86,144,144,96,96,144,144,2,86,86,136,136,80, + 32,32,32,2,70,86,240,16,32,64,128,240,18,54,86,224, + 128,128,128,128,224,2,70,86,128,128,64,32,16,16,18,54, + 86,224,32,32,32,32,224,22,50,82,64,160,1,65,81,240, + 22,34,82,128,64,2,68,84,112,144,144,112,2,70,86,128, + 128,224,144,144,224,18,52,84,96,128,128,96,2,70,86,16, + 16,112,144,144,112,2,68,84,96,176,192,96,2,70,86,32, + 80,64,224,64,64,1,69,85,96,144,112,16,96,2,70,86, + 128,128,224,144,144,144,18,54,86,64,0,192,64,64,224,17, + 55,87,32,0,32,32,32,160,64,2,70,86,128,128,144,224, + 144,144,18,54,86,192,64,64,64,64,224,2,84,84,208,168, + 168,168,2,68,84,224,144,144,144,2,68,84,96,144,144,96, + 1,69,85,224,144,224,128,128,1,69,85,112,144,112,16,16, + 2,68,84,160,208,128,128,18,52,84,96,192,32,192,2,70, + 86,64,64,224,64,80,32,2,68,84,144,144,144,112,18,52, + 84,160,160,160,64,2,84,84,136,168,168,80,2,68,84,144, + 96,96,144,1,69,85,144,144,112,144,96,2,68,84,240,32, + 64,240,2,71,87,48,64,32,192,32,64,48,34,22,86,128, + 128,128,128,128,128,2,71,87,192,32,64,48,64,32,192,6, + 66,82,80,160,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--10-100-75-75-C-60-ISO10646-1 + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 6 h= 9 x= 2 y= 8 dx= 6 dy= 0 ascent= 8 len= 9 + Font Bounding box w= 6 h=10 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 8 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x10[1866] U8G_SECTION(".progmem.u8g_font_6x10") = { + 1,6,10,0,254,7,1,54,2,104,32,255,254,8,254,7, + 254,10,0,96,34,23,103,128,128,128,128,128,0,128,22,51, + 99,160,160,160,2,87,103,80,80,248,80,248,80,80,2,87, + 103,32,112,160,112,40,112,32,2,87,103,72,168,80,32,80, + 168,144,2,87,103,64,160,160,64,168,144,104,38,19,99,128, + 128,128,18,55,103,32,64,128,128,128,64,32,18,55,103,128, + 64,32,32,32,64,128,3,85,101,136,80,248,80,136,3,85, + 101,32,32,248,32,32,17,51,99,96,64,128,5,81,97,248, + 17,51,99,64,224,64,2,87,103,8,8,16,32,64,128,128, + 2,87,103,32,80,136,136,136,80,32,2,87,103,32,96,160, + 32,32,32,248,2,87,103,112,136,8,48,64,128,248,2,87, + 103,248,8,16,48,8,136,112,2,87,103,16,48,80,144,248, + 16,16,2,87,103,248,128,176,200,8,136,112,2,87,103,48, + 64,128,176,200,136,112,2,87,103,248,8,16,16,32,64,64, + 2,87,103,112,136,136,112,136,136,112,2,87,103,112,136,152, + 104,8,16,96,17,55,103,64,224,64,0,64,224,64,17,55, + 103,64,224,64,0,96,64,128,18,71,103,16,32,64,128,64, + 32,16,4,83,99,248,0,248,18,71,103,128,64,32,16,32, + 64,128,2,87,103,112,136,16,32,32,0,32,2,87,103,112, + 136,152,168,176,128,112,2,87,103,32,80,136,136,248,136,136, + 2,87,103,240,72,72,112,72,72,240,2,87,103,112,136,128, + 128,128,136,112,2,87,103,240,72,72,72,72,72,240,2,87, + 103,248,128,128,240,128,128,248,2,87,103,248,128,128,240,128, + 128,128,2,87,103,112,136,128,128,152,136,112,2,87,103,136, + 136,136,248,136,136,136,18,55,103,224,64,64,64,64,64,224, + 2,87,103,56,16,16,16,16,144,96,2,87,103,136,144,160, + 192,160,144,136,2,87,103,128,128,128,128,128,128,248,2,87, + 103,136,136,216,168,136,136,136,2,87,103,136,136,200,168,152, + 136,136,2,87,103,112,136,136,136,136,136,112,2,87,103,240, + 136,136,240,128,128,128,1,88,104,112,136,136,136,136,168,112, + 8,2,87,103,240,136,136,240,160,144,136,2,87,103,112,136, + 128,112,8,136,112,2,87,103,248,32,32,32,32,32,32,2, + 87,103,136,136,136,136,136,136,112,2,87,103,136,136,136,80, + 80,80,32,2,87,103,136,136,136,168,168,216,136,2,87,103, + 136,136,80,32,80,136,136,2,87,103,136,136,80,32,32,32, + 32,2,87,103,248,8,16,32,64,128,248,18,55,103,224,128, + 128,128,128,128,224,2,87,103,128,128,64,32,16,8,8,18, + 55,103,224,32,32,32,32,32,224,6,83,99,32,80,136,1, + 81,97,248,40,34,98,128,64,2,85,101,112,8,120,136,120, + 2,87,103,128,128,176,200,136,200,176,2,85,101,112,136,128, + 136,112,2,87,103,8,8,104,152,136,152,104,2,85,101,112, + 136,248,128,112,2,87,103,48,72,64,240,64,64,64,0,87, + 103,120,136,136,120,8,136,112,2,87,103,128,128,176,200,136, + 136,136,18,55,103,64,0,192,64,64,64,224,16,73,105,16, + 0,48,16,16,16,144,144,96,2,87,103,128,128,136,144,224, + 144,136,18,55,103,192,64,64,64,64,64,224,2,85,101,208, + 168,168,168,136,2,85,101,176,200,136,136,136,2,85,101,112, + 136,136,136,112,0,87,103,176,200,136,200,176,128,128,0,87, + 103,104,152,136,152,104,8,8,2,85,101,176,200,128,128,128, + 2,85,101,112,128,112,8,240,2,87,103,64,64,240,64,64, + 72,48,2,85,101,136,136,136,152,104,2,85,101,136,136,80, + 80,32,2,85,101,136,136,168,168,80,2,85,101,136,80,32, + 80,136,0,87,103,136,136,152,104,8,136,112,2,85,101,248, + 16,32,64,248,18,71,103,48,64,32,192,32,64,48,34,23, + 103,128,128,128,128,128,128,128,18,71,103,192,32,64,48,64, + 32,192,6,83,99,72,168,144,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,10,0,96,34,23,103,128, + 0,128,128,128,128,128,1,87,103,32,120,160,160,160,120,32, + 2,87,103,48,72,64,224,64,72,176,2,85,101,136,112,80, + 112,136,1,88,104,136,136,80,32,248,32,32,32,34,23,103, + 128,128,128,0,128,128,128,1,88,104,112,128,224,144,72,56, + 8,112,25,49,97,160,2,87,103,112,136,168,200,168,136,112, + 19,70,102,112,144,176,80,0,240,2,101,101,36,72,144,72, + 36,20,66,98,240,16,21,65,97,240,2,87,103,112,136,232, + 200,200,136,112,9,81,97,248,22,51,99,64,160,64,2,86, + 102,32,32,248,32,32,248,21,69,101,96,144,32,64,240,21, + 69,101,224,16,96,16,224,40,34,98,64,128,1,86,102,136, + 136,136,200,176,128,2,87,103,120,232,232,104,40,40,40,37, + 17,97,128,32,34,98,64,128,21,53,101,64,192,64,64,224, + 19,70,102,96,144,144,96,0,240,2,101,101,144,72,36,72, + 144,1,105,105,64,192,64,64,228,12,20,60,4,1,105,105, + 64,192,64,64,232,20,4,8,28,1,89,105,192,32,64,32, + 200,24,40,120,8,2,87,103,32,0,32,32,64,136,112,2, + 88,104,64,32,112,136,136,248,136,136,2,88,104,16,32,112, + 136,136,248,136,136,2,88,104,32,80,112,136,136,248,136,136, + 2,88,104,72,176,112,136,136,248,136,136,2,88,104,80,0, + 112,136,136,248,136,136,2,88,104,32,80,112,136,136,248,136, + 136,2,103,103,60,80,144,156,240,144,156,0,89,105,112,136, + 128,128,128,136,112,32,64,2,88,104,64,248,128,128,240,128, + 128,248,2,88,104,16,248,128,128,240,128,128,248,2,88,104, + 32,248,128,128,240,128,128,248,2,88,104,80,248,128,128,240, + 128,128,248,18,56,104,128,64,224,64,64,64,64,224,18,56, + 104,32,64,224,64,64,64,64,224,18,56,104,64,160,224,64, + 64,64,64,224,18,56,104,160,0,224,64,64,64,64,224,2, + 87,103,240,72,72,232,72,72,240,2,88,104,40,80,136,200, + 168,152,136,136,2,88,104,64,32,112,136,136,136,136,112,2, + 88,104,16,32,112,136,136,136,136,112,2,88,104,32,80,112, + 136,136,136,136,112,2,88,104,40,80,112,136,136,136,136,112, + 2,88,104,80,0,112,136,136,136,136,112,2,85,101,136,80, + 32,80,136,2,87,103,112,152,152,168,200,200,112,2,88,104, + 64,32,136,136,136,136,136,112,2,88,104,16,32,136,136,136, + 136,136,112,2,88,104,32,80,0,136,136,136,136,112,2,88, + 104,80,0,136,136,136,136,136,112,2,88,104,16,32,136,136, + 80,32,32,32,2,87,103,128,240,136,240,128,128,128,2,87, + 103,112,136,144,160,144,136,176,2,88,104,64,32,0,112,8, + 120,136,120,2,88,104,16,32,0,112,8,120,136,120,2,88, + 104,32,80,0,112,8,120,136,120,2,88,104,40,80,0,112, + 8,120,136,120,2,87,103,80,0,112,8,120,136,120,2,88, + 104,32,80,32,112,8,120,136,120,2,101,101,120,20,124,144, + 124,0,87,103,112,136,128,136,112,32,64,2,88,104,64,32, + 0,112,136,248,128,112,2,88,104,16,32,0,112,136,248,128, + 112,2,88,104,32,80,0,112,136,248,128,112,2,87,103,80, + 0,112,136,248,128,112,18,56,104,128,64,0,192,64,64,64, + 224,18,56,104,64,128,0,192,64,64,64,224,18,56,104,64, + 160,0,192,64,64,64,224,18,55,103,160,0,192,64,64,64, + 224,2,87,103,192,48,112,136,136,136,112,2,88,104,40,80, + 0,176,200,136,136,136,2,88,104,64,32,0,112,136,136,136, + 112,2,88,104,16,32,0,112,136,136,136,112,2,88,104,32, + 80,0,112,136,136,136,112,2,88,104,40,80,0,112,136,136, + 136,112,2,87,103,80,0,112,136,136,136,112,3,85,101,32, + 0,248,0,32,2,85,101,120,152,168,200,240,2,88,104,64, + 32,0,136,136,136,152,104,2,88,104,16,32,0,136,136,136, + 152,104,2,88,104,32,80,0,136,136,136,152,104,2,87,103, + 80,0,136,136,136,152,104,0,89,105,16,32,136,136,152,104, + 8,136,112,0,88,104,128,240,136,136,136,240,128,128,0,89, + 105,80,0,136,136,152,104,8,136,112}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--10-100-75-75-C-60-ISO10646-1 + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 5 h= 9 x= 2 y= 8 dx= 6 dy= 0 ascent= 8 len= 9 + Font Bounding box w= 6 h=10 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 8 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x10r[889] U8G_SECTION(".progmem.u8g_font_6x10r") = { + 1,6,10,0,254,7,1,54,2,104,32,127,254,8,254,7, + 254,10,0,96,34,23,103,128,128,128,128,128,0,128,22,51, + 99,160,160,160,2,87,103,80,80,248,80,248,80,80,2,87, + 103,32,112,160,112,40,112,32,2,87,103,72,168,80,32,80, + 168,144,2,87,103,64,160,160,64,168,144,104,38,19,99,128, + 128,128,18,55,103,32,64,128,128,128,64,32,18,55,103,128, + 64,32,32,32,64,128,3,85,101,136,80,248,80,136,3,85, + 101,32,32,248,32,32,17,51,99,96,64,128,5,81,97,248, + 17,51,99,64,224,64,2,87,103,8,8,16,32,64,128,128, + 2,87,103,32,80,136,136,136,80,32,2,87,103,32,96,160, + 32,32,32,248,2,87,103,112,136,8,48,64,128,248,2,87, + 103,248,8,16,48,8,136,112,2,87,103,16,48,80,144,248, + 16,16,2,87,103,248,128,176,200,8,136,112,2,87,103,48, + 64,128,176,200,136,112,2,87,103,248,8,16,16,32,64,64, + 2,87,103,112,136,136,112,136,136,112,2,87,103,112,136,152, + 104,8,16,96,17,55,103,64,224,64,0,64,224,64,17,55, + 103,64,224,64,0,96,64,128,18,71,103,16,32,64,128,64, + 32,16,4,83,99,248,0,248,18,71,103,128,64,32,16,32, + 64,128,2,87,103,112,136,16,32,32,0,32,2,87,103,112, + 136,152,168,176,128,112,2,87,103,32,80,136,136,248,136,136, + 2,87,103,240,72,72,112,72,72,240,2,87,103,112,136,128, + 128,128,136,112,2,87,103,240,72,72,72,72,72,240,2,87, + 103,248,128,128,240,128,128,248,2,87,103,248,128,128,240,128, + 128,128,2,87,103,112,136,128,128,152,136,112,2,87,103,136, + 136,136,248,136,136,136,18,55,103,224,64,64,64,64,64,224, + 2,87,103,56,16,16,16,16,144,96,2,87,103,136,144,160, + 192,160,144,136,2,87,103,128,128,128,128,128,128,248,2,87, + 103,136,136,216,168,136,136,136,2,87,103,136,136,200,168,152, + 136,136,2,87,103,112,136,136,136,136,136,112,2,87,103,240, + 136,136,240,128,128,128,1,88,104,112,136,136,136,136,168,112, + 8,2,87,103,240,136,136,240,160,144,136,2,87,103,112,136, + 128,112,8,136,112,2,87,103,248,32,32,32,32,32,32,2, + 87,103,136,136,136,136,136,136,112,2,87,103,136,136,136,80, + 80,80,32,2,87,103,136,136,136,168,168,216,136,2,87,103, + 136,136,80,32,80,136,136,2,87,103,136,136,80,32,32,32, + 32,2,87,103,248,8,16,32,64,128,248,18,55,103,224,128, + 128,128,128,128,224,2,87,103,128,128,64,32,16,8,8,18, + 55,103,224,32,32,32,32,32,224,6,83,99,32,80,136,1, + 81,97,248,40,34,98,128,64,2,85,101,112,8,120,136,120, + 2,87,103,128,128,176,200,136,200,176,2,85,101,112,136,128, + 136,112,2,87,103,8,8,104,152,136,152,104,2,85,101,112, + 136,248,128,112,2,87,103,48,72,64,240,64,64,64,0,87, + 103,120,136,136,120,8,136,112,2,87,103,128,128,176,200,136, + 136,136,18,55,103,64,0,192,64,64,64,224,16,73,105,16, + 0,48,16,16,16,144,144,96,2,87,103,128,128,136,144,224, + 144,136,18,55,103,192,64,64,64,64,64,224,2,85,101,208, + 168,168,168,136,2,85,101,176,200,136,136,136,2,85,101,112, + 136,136,136,112,0,87,103,176,200,136,200,176,128,128,0,87, + 103,104,152,136,152,104,8,8,2,85,101,176,200,128,128,128, + 2,85,101,112,128,112,8,240,2,87,103,64,64,240,64,64, + 72,48,2,85,101,136,136,136,152,104,2,85,101,136,136,80, + 80,32,2,85,101,136,136,168,168,80,2,85,101,136,80,32, + 80,136,0,87,103,136,136,152,104,8,136,112,2,85,101,248, + 16,32,64,248,18,71,103,48,64,32,192,32,64,48,34,23, + 103,128,128,128,128,128,128,128,18,71,103,192,32,64,48,64, + 32,192,6,83,99,72,168,144,255}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--12-110-75-75-C-60-ISO10646-1 + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 3, '1' Height: 8 + Calculated Max Values w= 6 h=12 x= 5 y= 8 dx= 6 dy= 0 ascent=10 len=12 + Font Bounding box w= 6 h=12 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 3 descent= 0 + X Font ascent = 8 descent= 0 + Max Font ascent =10 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x12_67_75[2382] U8G_SECTION(".progmem.u8g_font_6x12_67_75") = { + 1,6,12,0,254,3,2,41,3,99,0,255,0,10,254,8, + 0,2,87,103,168,0,136,0,136,0,168,2,87,103,240,136, + 232,168,232,136,240,2,87,103,112,168,248,168,248,168,112,2, + 87,103,112,136,8,8,8,136,112,18,69,101,96,144,16,144, + 96,1,88,104,112,136,128,128,136,120,8,8,2,87,103,32, + 32,32,32,168,112,32,2,103,103,248,252,252,156,252,252,248, + 2,87,103,112,248,248,168,248,248,112,255,255,255,255,255,255, + 255,3,85,101,32,64,248,64,32,2,87,103,32,112,168,32, + 32,32,32,3,85,101,32,16,248,16,32,2,87,103,32,32, + 32,32,168,112,32,4,83,99,80,248,80,2,87,103,32,112, + 168,32,168,112,32,2,89,105,192,240,224,160,32,16,16,8, + 8,2,89,105,24,120,56,40,32,64,64,128,128,2,89,105, + 128,128,64,64,32,40,56,120,24,2,89,105,8,8,16,16, + 32,160,224,240,192,3,101,101,40,72,252,80,48,3,101,101, + 48,40,252,72,80,4,99,99,192,216,100,4,99,99,12,108, + 152,3,101,101,40,80,252,80,40,2,88,104,32,112,168,112, + 168,32,32,32,3,101,101,80,40,252,40,80,2,88,104,32, + 32,32,168,112,168,112,32,3,101,101,36,72,240,72,36,3, + 101,101,144,72,60,72,144,3,85,101,40,72,248,72,40,2, + 87,103,32,112,168,32,32,32,248,3,85,101,160,144,248,144, + 160,2,87,103,248,32,32,32,168,112,32,2,87,103,32,112, + 168,32,168,112,248,3,101,101,40,68,248,64,32,3,101,101, + 80,136,124,8,16,3,101,101,32,76,252,72,40,3,101,101, + 16,200,252,72,80,3,100,100,72,220,236,72,3,101,101,8, + 88,252,104,64,2,87,103,128,144,176,208,144,56,16,2,88, + 104,32,64,248,72,40,8,8,8,2,88,104,32,16,248,144, + 160,128,128,128,2,88,104,8,8,8,40,72,248,64,32,2, + 87,103,128,128,160,144,248,16,32,3,84,100,240,16,56,16, + 3,85,101,8,8,72,248,64,3,85,101,48,72,72,232,72, + 3,85,101,96,144,144,184,16,2,88,104,248,128,224,192,160, + 32,16,16,2,89,105,160,192,248,192,168,24,248,24,40,2, + 86,102,56,48,168,136,136,112,2,86,102,224,96,168,136,136, + 112,5,83,99,32,64,248,3,83,99,248,64,32,34,56,104, + 128,192,160,128,128,128,128,128,2,56,104,32,96,160,32,32, + 32,32,32,5,83,99,32,16,248,3,83,99,248,16,32,34, + 56,104,128,128,128,128,128,160,192,128,2,56,104,32,32,32, + 32,32,160,96,32,2,89,105,32,16,248,16,32,64,248,64, + 32,2,88,104,80,240,80,80,80,80,120,80,2,89,105,32, + 64,248,64,32,16,248,16,32,2,89,105,32,64,248,64,32, + 64,248,64,32,2,88,104,80,248,80,80,80,80,80,80,2, + 89,105,32,16,248,16,32,16,248,16,32,2,88,104,80,80, + 80,80,80,80,248,80,2,87,103,32,64,248,0,248,16,32, + 2,87,103,32,16,248,0,248,64,32,2,103,103,20,40,124, + 144,124,32,80,2,103,103,8,88,252,164,252,104,64,2,103, + 103,160,80,248,36,248,16,40,3,85,101,32,120,128,120,32, + 2,87,103,32,80,216,80,80,80,80,3,85,101,32,240,8, + 240,32,2,87,103,80,80,80,80,216,80,32,3,101,101,72, + 252,132,252,72,2,88,104,32,80,216,80,80,216,80,32,2, + 102,102,248,160,208,168,148,8,2,102,102,124,20,44,84,164, + 64,2,102,102,64,164,84,44,20,124,2,102,102,8,148,168, + 208,160,248,2,103,103,16,60,64,252,64,60,16,2,103,103, + 32,240,8,252,8,240,32,3,100,100,64,232,212,64,3,100, + 100,8,92,172,8,2,88,104,32,112,168,32,112,32,112,32, + 2,88,104,32,112,32,112,32,168,112,32,3,101,101,32,64, + 212,64,32,2,88,104,32,112,136,32,0,32,0,32,3,101, + 101,16,8,172,8,16,2,88,104,32,0,32,0,32,136,112, + 32,3,85,101,160,192,248,192,160,3,85,101,40,24,248,24, + 40,3,85,101,32,120,136,120,32,2,88,104,32,80,216,80, + 80,80,80,112,3,85,101,32,240,136,240,32,2,88,104,112, + 80,80,80,80,216,80,32,2,89,105,32,80,216,80,112,0, + 112,80,112,2,89,105,32,80,216,80,80,80,216,136,248,2, + 89,105,32,80,248,136,80,80,216,136,248,2,89,105,32,112, + 248,112,112,112,248,168,248,2,89,105,32,80,216,80,216,80, + 80,80,112,2,89,105,32,80,216,80,216,80,216,136,248,3, + 85,101,160,240,136,240,160,2,88,104,248,128,176,160,144,16, + 8,8,2,88,104,128,128,64,72,40,104,8,248,2,88,104, + 32,80,216,80,80,216,80,32,3,101,101,16,104,252,104,16, + 2,88,104,80,120,80,80,80,80,240,80,2,89,105,16,248, + 16,16,248,16,16,248,16,3,101,101,40,72,252,72,40,3, + 101,101,80,72,252,72,80,3,101,101,48,120,252,120,48,3, + 101,101,56,88,252,88,56,3,101,101,112,104,252,104,112,3, + 101,101,48,120,252,120,48,3,85,101,32,96,184,96,32,3, + 85,101,32,48,232,48,32,3,101,101,48,120,180,120,48,6, + 102,102,252,252,252,252,252,252,0,98,98,252,252,0,99,99, + 252,252,252,0,101,101,252,252,252,252,252,0,102,102,252,252, + 252,252,252,252,0,104,104,252,252,252,252,252,252,252,252,0, + 105,105,252,252,252,252,252,252,252,252,252,0,107,107,252,252, + 252,252,252,252,252,252,252,252,252,0,108,108,252,252,252,252, + 252,252,252,252,252,252,252,252,0,92,108,248,248,248,248,248, + 248,248,248,248,248,248,248,0,76,108,240,240,240,240,240,240, + 240,240,240,240,240,240,0,76,108,240,240,240,240,240,240,240, + 240,240,240,240,240,0,60,108,224,224,224,224,224,224,224,224, + 224,224,224,224,0,44,108,192,192,192,192,192,192,192,192,192, + 192,192,192,0,44,108,192,192,192,192,192,192,192,192,192,192, + 192,192,0,28,108,128,128,128,128,128,128,128,128,128,128,128, + 128,48,60,108,224,224,224,224,224,224,224,224,224,224,224,224, + 1,107,107,168,0,84,0,168,0,84,0,168,0,84,0,108, + 108,168,84,168,84,168,84,168,84,168,84,168,84,0,108,108, + 84,252,168,252,84,252,168,252,84,252,168,252,10,98,98,252, + 252,80,28,108,128,128,128,128,128,128,128,128,128,128,128,128, + 0,54,102,224,224,224,224,224,224,48,54,102,224,224,224,224, + 224,224,6,54,102,224,224,224,224,224,224,0,108,108,224,224, + 224,224,224,224,252,252,252,252,252,252,0,108,108,224,224,224, + 224,224,224,28,28,28,28,28,28,0,108,108,252,252,252,252, + 252,252,224,224,224,224,224,224,0,108,108,252,252,252,252,252, + 252,28,28,28,28,28,28,54,54,102,224,224,224,224,224,224, + 0,108,108,28,28,28,28,28,28,224,224,224,224,224,224,0, + 108,108,28,28,28,28,28,28,252,252,252,252,252,252,2,85, + 101,248,248,248,248,248,2,85,101,248,136,136,136,248,2,85, + 101,112,136,136,136,112,2,85,101,248,136,168,136,248,2,85, + 101,248,136,248,136,248,2,85,101,248,168,168,168,248,2,85, + 101,248,168,248,168,248,2,85,101,248,200,168,152,248,2,85, + 101,248,152,168,200,248,2,85,101,248,216,168,216,248,20,51, + 99,224,224,224,20,51,99,224,160,224,3,101,101,252,252,252, + 252,252,3,101,101,252,132,132,132,252,17,74,106,240,240,240, + 240,240,240,240,240,240,240,17,74,106,240,144,144,144,144,144, + 144,144,144,240,4,99,99,60,120,240,4,99,99,60,72,240, + 2,87,103,32,32,112,112,248,248,248,2,87,103,32,32,80, + 80,136,136,248,3,85,101,32,32,112,112,248,3,85,101,32, + 32,80,80,248,18,71,103,128,192,224,240,224,192,128,18,71, + 103,128,192,160,144,160,192,128,19,53,101,128,192,224,192,128, + 19,53,101,128,192,160,192,128,3,101,101,192,240,252,240,192, + 3,101,101,192,176,140,176,192,2,87,103,248,248,248,112,112, + 32,32,2,87,103,248,136,136,80,80,32,32,2,85,101,248, + 112,112,32,32,2,85,101,248,80,80,32,32,18,71,103,16, + 48,112,240,112,48,16,18,71,103,16,48,80,144,80,48,16, + 19,53,101,32,96,224,96,32,19,53,101,32,96,160,96,32, + 3,101,101,12,60,252,60,12,3,101,101,12,52,196,52,12, + 3,85,101,32,112,248,112,32,3,85,101,32,80,136,80,32, + 3,85,101,32,80,168,80,32,2,102,102,48,72,180,180,72, + 48,2,87,103,32,80,80,136,80,80,32,2,102,102,48,72, + 132,132,72,48,2,102,102,32,8,128,4,64,16,2,85,101, + 112,168,168,168,112,2,87,103,112,136,168,216,168,136,112,2, + 102,102,48,120,252,252,120,48,2,102,102,48,104,228,228,104, + 48,2,102,102,48,88,156,156,88,48,2,102,102,48,72,132, + 252,120,48,2,102,102,48,120,252,132,72,48,2,102,102,48, + 88,156,132,72,48,2,102,102,48,104,228,132,72,48,18,89, + 105,8,56,120,120,248,120,120,56,8,2,89,105,128,224,240, + 240,248,240,240,224,128,0,108,108,252,252,252,252,204,132,132, + 204,252,252,252,252,0,108,108,252,252,252,204,180,120,120,180, + 204,252,252,252,6,102,102,252,252,252,204,180,120,0,102,102, + 120,180,204,252,252,252,5,51,99,32,64,128,53,51,99,128, + 64,32,50,51,99,32,64,128,2,51,99,128,64,32,5,99, + 99,48,72,132,2,99,99,132,72,48,2,85,101,8,24,56, + 120,248,2,85,101,128,192,224,240,248,2,85,101,248,240,224, + 192,128,2,85,101,248,120,56,24,8,2,85,101,112,136,136, + 136,112,2,85,101,248,232,232,232,248,2,85,101,248,184,184, + 184,248,2,85,101,248,248,232,200,248,2,85,101,248,152,184, + 248,248,2,85,101,248,168,168,168,248,2,87,103,32,32,80, + 112,168,136,248,2,87,103,32,32,112,112,232,232,248,2,87, + 103,32,32,112,112,184,184,248,2,103,103,48,72,132,132,132, + 72,48,2,85,101,248,168,232,136,248,2,85,101,248,136,232, + 168,248,2,85,101,248,136,184,168,248,2,85,101,248,168,184, + 136,248,2,85,101,112,168,232,136,112,2,85,101,112,136,232, + 168,112,2,85,101,112,136,184,168,112,2,85,101,112,168,184, + 136,112,3,85,101,248,144,160,192,128,3,85,101,248,72,40, + 24,8,3,85,101,128,192,160,144,248,20,68,100,240,144,144, + 240,19,68,100,240,240,240,240,20,68,100,240,144,144,240,20, + 68,100,240,240,240,240,3,85,101,8,24,40,72,248}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--12-110-75-75-C-60-ISO10646-1 + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 7, '1' Height: 3 + Calculated Max Values w= 6 h=10 x= 1 y= 2 dx= 6 dy= 0 ascent= 9 len=10 + Font Bounding box w= 6 h=12 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 7 descent= 0 + X Font ascent = 7 descent= 0 + Max Font ascent = 9 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x12_75r[427] U8G_SECTION(".progmem.u8g_font_6x12_75r") = { + 1,6,12,0,254,7,1,41,0,0,32,79,0,9,255,7, + 0,2,85,101,248,248,248,248,248,2,85,101,248,136,136,136, + 248,2,85,101,112,136,136,136,112,2,85,101,248,136,168,136, + 248,2,85,101,248,136,248,136,248,2,85,101,248,168,168,168, + 248,2,85,101,248,168,248,168,248,2,85,101,248,200,168,152, + 248,2,85,101,248,152,168,200,248,2,85,101,248,216,168,216, + 248,20,51,99,224,224,224,20,51,99,224,160,224,3,101,101, + 252,252,252,252,252,3,101,101,252,132,132,132,252,17,74,106, + 240,240,240,240,240,240,240,240,240,240,17,74,106,240,144,144, + 144,144,144,144,144,144,240,4,99,99,60,120,240,4,99,99, + 60,72,240,2,87,103,32,32,112,112,248,248,248,2,87,103, + 32,32,80,80,136,136,248,3,85,101,32,32,112,112,248,3, + 85,101,32,32,80,80,248,18,71,103,128,192,224,240,224,192, + 128,18,71,103,128,192,160,144,160,192,128,19,53,101,128,192, + 224,192,128,19,53,101,128,192,160,192,128,3,101,101,192,240, + 252,240,192,3,101,101,192,176,140,176,192,2,87,103,248,248, + 248,112,112,32,32,2,87,103,248,136,136,80,80,32,32,2, + 85,101,248,112,112,32,32,2,85,101,248,80,80,32,32,18, + 71,103,16,48,112,240,112,48,16,18,71,103,16,48,80,144, + 80,48,16,19,53,101,32,96,224,96,32,19,53,101,32,96, + 160,96,32,3,101,101,12,60,252,60,12,3,101,101,12,52, + 196,52,12,3,85,101,32,112,248,112,32,3,85,101,32,80, + 136,80,32,3,85,101,32,80,168,80,32,2,102,102,48,72, + 180,180,72,48,2,87,103,32,80,80,136,80,80,32,2,102, + 102,48,72,132,132,72,48,2,102,102,32,8,128,4,64,16, + 2,85,101,112,168,168,168,112,2,87,103,112,136,168,216,168, + 136,112,2,102,102,48,120,252,252,120,48}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--12-110-75-75-C-60-ISO10646-1 + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 6, '1' Height: 6 + Calculated Max Values w= 6 h=12 x= 2 y= 4 dx= 6 dy= 0 ascent=10 len=12 + Font Bounding box w= 6 h=12 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 6 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent =10 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x12_78_79[2316] U8G_SECTION(".progmem.u8g_font_6x12_78_79") = { + 1,6,12,0,254,6,2,80,3,53,0,255,0,10,254,9, + 0,2,87,103,168,0,136,0,136,0,168,3,101,101,144,252, + 32,64,96,3,101,101,196,200,48,200,196,3,101,101,96,64, + 32,252,144,2,103,103,204,148,232,48,232,148,204,255,1,105, + 105,120,132,180,180,164,180,180,132,120,1,105,105,120,132,180, + 132,180,132,204,132,120,3,101,101,32,176,252,176,32,2,101, + 101,252,204,180,132,252,255,255,18,72,104,144,144,80,112,240, + 240,240,112,3,102,102,4,56,124,124,64,128,2,102,102,64, + 224,80,40,20,12,3,99,99,248,140,248,2,102,102,12,20, + 40,80,224,64,3,100,100,248,132,132,248,4,99,99,248,244, + 248,2,87,103,8,8,16,16,160,224,64,2,103,103,12,12, + 28,216,248,112,48,2,85,101,136,80,32,80,136,3,85,101, + 216,248,32,248,216,2,86,102,136,80,32,80,136,128,1,103, + 103,204,204,120,112,252,204,192,1,103,103,120,204,164,244,164, + 204,120,2,102,102,48,48,252,252,48,48,3,85,101,32,32, + 216,32,32,2,102,102,48,48,204,204,48,48,2,87,103,32, + 32,248,32,32,32,32,1,90,106,112,80,216,136,216,80,80, + 80,80,112,2,105,105,120,220,188,220,88,88,88,120,120,2, + 87,103,112,32,168,248,168,32,112,2,87,103,32,248,80,80, + 80,248,32,3,85,101,32,32,248,32,32,3,102,102,48,48, + 252,252,48,48,2,104,104,48,120,48,252,252,48,120,48,2, + 87,103,32,112,168,248,168,112,32,3,85,101,32,112,248,112, + 32,3,85,101,32,112,216,112,32,255,3,85,101,32,216,80, + 32,80,2,87,103,112,216,136,216,168,248,112,3,86,102,32, + 32,248,80,112,136,3,86,102,32,32,216,32,80,136,3,86, + 102,32,32,248,112,112,136,3,86,102,32,32,248,112,112,136, + 3,86,102,32,32,232,48,80,136,2,102,102,48,88,140,88, + 172,88,2,86,102,32,168,112,112,168,32,2,87,103,32,168, + 112,80,112,168,32,2,87,103,32,168,112,248,112,168,32,2, + 87,103,32,168,112,248,112,168,32,2,87,103,32,168,112,248, + 112,168,32,2,86,102,32,168,112,112,168,32,1,88,104,80, + 32,168,112,112,168,32,80,1,88,104,80,32,168,112,112,168, + 32,80,2,103,103,80,248,124,248,124,248,80,2,103,103,80, + 168,116,248,116,168,80,2,86,102,32,168,112,112,168,32,2, + 87,103,32,168,112,80,112,168,32,2,86,102,32,168,112,112, + 168,32,2,103,103,168,216,80,168,116,168,32,3,87,103,32, + 112,248,216,112,248,216,3,87,103,32,112,216,168,80,248,216, + 3,86,102,32,112,216,112,248,32,2,87,103,112,248,168,216, + 168,248,112,2,86,102,32,168,112,112,168,32,2,86,102,32, + 168,112,112,168,32,2,86,102,32,168,112,112,168,32,2,86, + 102,32,168,112,112,168,32,2,87,103,32,168,112,248,112,168, + 32,2,87,103,32,168,112,248,112,168,32,2,87,103,32,168, + 112,248,112,168,32,2,87,103,32,168,112,248,112,168,32,2, + 87,103,32,168,112,248,112,168,32,255,3,101,101,120,140,140, + 140,120,255,2,102,102,248,140,140,140,252,124,2,102,102,124, + 252,140,140,140,248,2,102,102,248,140,140,140,252,124,2,102, + 102,124,252,140,140,140,248,255,255,255,2,103,103,16,56,84, + 236,84,56,16,255,34,23,103,128,128,128,128,128,128,128,18, + 39,103,192,192,192,192,192,192,192,18,71,103,240,240,240,240, + 240,240,240,22,69,101,96,128,224,240,96,22,69,101,96,240, + 112,16,96,6,101,101,72,144,216,252,72,6,101,101,72,252, + 108,36,72,255,255,1,106,106,8,124,200,200,200,120,8,200, + 136,112,2,89,105,112,248,248,112,32,0,32,112,32,2,88, + 104,216,248,112,32,0,32,112,32,2,85,101,216,248,248,112, + 32,2,87,103,96,240,240,120,240,240,96,2,104,104,100,184, + 32,216,248,240,228,120,2,102,102,128,88,120,220,152,64,18, + 56,104,32,64,192,192,192,192,64,32,18,56,104,128,64,96, + 96,96,96,64,128,18,40,104,64,192,192,192,192,192,192,64, + 18,40,104,128,192,192,192,192,192,192,128,17,73,105,48,48, + 96,96,192,96,96,48,48,17,73,105,192,192,96,96,48,96, + 96,192,192,2,87,103,24,48,96,192,96,48,24,2,87,103, + 192,96,48,24,48,96,192,1,89,105,56,56,112,112,224,112, + 112,56,56,1,89,105,224,224,112,112,56,112,112,224,224,17, + 57,105,32,64,128,128,128,128,128,64,32,17,57,105,128,64, + 32,32,32,32,32,64,128,17,73,105,48,96,96,96,192,96, + 96,96,48,17,73,105,192,96,96,96,48,96,96,96,192,2, + 89,105,112,248,216,152,216,216,136,248,112,2,89,105,112,248, + 216,168,232,216,136,248,112,2,89,105,112,248,152,232,216,232, + 152,248,112,2,89,105,112,248,184,184,152,136,216,248,112,2, + 89,105,112,248,136,184,152,232,152,248,112,2,89,105,112,248, + 200,184,152,168,216,248,112,2,89,105,112,248,136,232,216,216, + 216,248,112,2,89,105,112,248,216,168,216,168,216,248,112,2, + 89,105,112,248,216,168,200,232,152,248,112,2,105,105,120,252, + 172,148,148,148,172,252,120,2,89,105,112,136,168,232,168,168, + 248,136,112,2,89,105,112,136,168,216,152,168,248,136,112,2, + 89,105,112,136,232,152,168,152,232,136,112,2,89,105,112,136, + 200,200,232,248,168,136,112,2,89,105,112,136,248,200,232,152, + 232,136,112,2,89,105,112,136,184,200,232,216,168,136,112,2, + 89,105,112,136,248,152,168,168,168,136,112,2,89,105,112,136, + 168,216,168,216,168,136,112,2,89,105,112,136,168,216,184,152, + 232,136,112,2,105,105,120,132,212,236,236,236,212,132,120,2, + 89,105,112,248,216,152,216,216,216,248,112,2,89,105,112,248, + 216,168,232,216,136,248,112,2,89,105,112,248,152,232,216,232, + 152,248,112,2,89,105,112,248,184,184,152,136,216,248,112,2, + 89,105,112,248,136,184,152,232,152,248,112,2,89,105,112,248, + 200,184,152,168,216,248,112,2,89,105,112,248,136,232,216,216, + 216,248,112,2,89,105,112,248,216,168,216,168,216,248,112,2, + 89,105,112,248,216,168,200,232,152,248,112,2,105,105,120,252, + 172,148,148,148,172,252,120,3,101,101,48,24,252,24,48,255, + 255,255,2,85,101,128,64,40,24,56,3,85,101,32,48,248, + 48,32,2,85,101,56,24,40,64,128,3,101,101,64,48,252, + 48,64,2,102,102,48,56,252,252,56,48,4,99,99,8,252, + 8,2,102,102,16,24,252,252,24,16,3,99,99,8,188,8, + 2,102,102,16,24,188,188,24,16,3,101,101,16,248,252,248, + 16,2,103,103,192,176,72,60,120,240,192,2,103,103,192,240, + 120,60,72,176,192,3,101,101,224,120,60,120,224,3,102,102, + 128,144,248,252,120,16,2,102,102,16,120,252,248,144,128,2, + 103,103,32,240,248,252,248,240,32,3,101,101,32,240,252,240, + 32,3,101,101,16,232,132,232,16,3,101,101,16,232,132,232, + 16,3,101,101,16,232,132,232,16,3,101,101,16,232,132,232, + 16,2,102,102,16,232,132,132,232,16,2,102,102,16,232,132, + 132,232,16,3,101,101,16,232,132,232,16,255,3,101,101,16, + 232,132,232,16,2,103,103,120,220,12,4,12,220,120,3,99, + 99,232,124,232,2,102,102,64,224,96,16,12,12,3,99,99, + 232,124,232,2,102,102,12,12,16,96,224,64,2,102,102,96, + 224,224,20,12,28,2,101,101,192,232,124,232,192,2,102,102, + 28,12,20,224,224,96,2,101,101,16,200,252,200,16,2,101, + 101,16,200,252,200,16,3,99,99,232,124,232,3,100,100,232, + 252,252,232,2,101,101,80,232,4,232,80,255,2,85,101,136, + 144,160,192,248,2,86,102,32,32,80,112,168,248,2,86,102, + 32,32,32,32,32,248,2,87,103,120,128,144,168,144,128,120, + 2,87,103,240,8,72,168,72,8,240,18,73,105,64,160,160, + 32,32,64,64,64,48,18,73,105,32,80,80,64,64,32,32, + 32,192,2,87,103,136,168,136,80,80,32,32,2,104,104,128, + 156,160,160,160,92,64,64,2,104,104,4,228,20,20,20,232, + 8,8,18,55,103,64,64,64,224,64,64,64,255,2,103,103, + 252,64,32,32,32,32,64,255,255,255,3,85,101,32,80,168, + 80,32,2,87,103,32,32,80,80,136,168,136,2,87,103,168, + 168,168,168,168,168,112,3,85,101,8,8,40,8,248,3,85, + 101,248,128,160,128,128,3,101,101,196,108,84,108,196,3,101, + 101,140,216,168,216,140,2,101,101,204,120,72,120,204,2,87, + 103,32,32,32,32,32,32,248,2,87,103,248,32,32,32,32, + 32,32,3,85,101,80,216,80,216,80,3,85,101,80,80,216, + 80,80,4,99,99,64,188,64,4,99,99,128,252,128,4,99, + 99,4,252,4,18,55,103,64,160,64,64,64,64,224,3,85, + 101,32,80,248,80,32,3,85,101,32,80,136,80,32,3,101, + 101,16,40,196,40,16,3,101,101,32,80,140,80,32,3,101, + 101,124,68,196,68,124,3,101,101,248,136,140,136,248,1,90, + 106,248,160,160,160,160,160,160,160,160,248,1,90,106,248,40, + 40,40,40,40,40,40,40,248,17,57,105,32,32,64,64,128, + 64,64,32,32,17,57,105,128,128,64,64,32,64,64,128,128, + 0,107,107,20,40,40,80,80,160,80,80,40,40,20,0,107, + 107,160,80,80,40,40,20,40,40,80,80,160,16,75,107,16, + 32,96,160,160,160,160,160,96,32,16,16,76,108,128,64,96, + 80,80,80,80,80,80,96,64,128,17,41,105,128,64,64,64, + 64,64,64,64,128,17,41,105,64,128,128,128,128,128,128,128, + 64,2,87,103,32,112,168,168,168,168,168,2,87,103,168,168, + 168,168,168,112,32,2,103,103,56,68,228,68,4,68,56,2, + 103,103,112,136,156,136,128,136,112,4,99,99,104,252,104,3, + 101,101,32,64,252,64,32,3,101,101,16,8,252,8,16,4, + 99,99,72,252,72,2,103,103,16,32,124,128,124,32,16,2, + 103,103,32,16,248,4,248,16,32,3,101,101,72,252,132,252, + 72,3,101,101,36,68,252,68,36,3,101,101,144,136,252,136, + 144,2,103,103,20,36,124,132,124,36,20,2,103,103,160,144, + 248,132,248,144,160,3,100,100,8,92,172,8}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--12-110-75-75-C-60-ISO10646-1 + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 6 h=10 x= 2 y=10 dx= 6 dy= 0 ascent=10 len=10 + Font Bounding box w= 6 h=12 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent =10 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x12[1933] U8G_SECTION(".progmem.u8g_font_6x12") = { + 1,6,12,0,254,7,1,53,2,107,32,255,254,10,254,8, + 254,12,0,96,34,23,103,128,128,128,128,128,0,128,23,51, + 99,160,160,160,2,86,102,80,248,80,80,248,80,1,89,105, + 32,112,168,160,112,40,168,112,32,2,87,103,200,200,16,32, + 64,152,152,2,87,103,64,160,160,64,168,144,104,39,19,99, + 128,128,128,17,57,105,32,64,64,128,128,128,64,64,32,17, + 57,105,128,64,64,32,32,32,64,64,128,2,87,103,32,168, + 112,32,112,168,32,3,85,101,32,32,248,32,32,1,51,99, + 96,96,192,5,81,97,248,18,34,98,192,192,2,87,103,8, + 16,16,32,64,64,128,18,71,103,96,144,144,144,144,144,96, + 18,55,103,64,192,64,64,64,64,224,2,87,103,112,136,8, + 16,32,64,248,2,87,103,248,8,16,48,8,136,112,2,87, + 103,16,48,80,144,248,16,16,2,87,103,248,128,240,8,8, + 136,112,2,87,103,48,64,128,240,136,136,112,2,87,103,248, + 8,16,16,32,32,32,2,87,103,112,136,136,112,136,136,112, + 2,87,103,112,136,136,120,8,16,96,18,37,101,192,192,0, + 192,192,1,54,102,96,96,0,96,96,192,19,53,101,32,64, + 128,64,32,4,83,99,248,0,248,19,53,101,128,64,32,64, + 128,2,87,103,112,136,16,32,32,0,32,2,87,103,112,136, + 184,168,184,128,112,2,87,103,112,136,136,248,136,136,136,2, + 87,103,240,72,72,112,72,72,240,2,87,103,112,136,128,128, + 128,136,112,2,87,103,240,72,72,72,72,72,240,2,87,103, + 248,128,128,240,128,128,248,2,87,103,248,128,128,240,128,128, + 128,2,87,103,112,136,128,128,152,136,112,2,87,103,136,136, + 136,248,136,136,136,18,55,103,224,64,64,64,64,64,224,2, + 87,103,56,16,16,16,16,144,96,2,87,103,136,144,160,192, + 160,144,136,2,87,103,128,128,128,128,128,128,248,2,87,103, + 136,216,168,136,136,136,136,2,87,103,136,136,200,168,152,136, + 136,2,87,103,112,136,136,136,136,136,112,2,87,103,240,136, + 136,240,128,128,128,2,87,103,112,136,136,136,168,144,104,2, + 87,103,240,136,136,240,160,144,136,2,87,103,112,136,128,112, + 8,136,112,2,87,103,248,32,32,32,32,32,32,2,87,103, + 136,136,136,136,136,136,112,2,87,103,136,136,136,136,80,80, + 32,2,87,103,136,136,136,136,168,168,80,2,87,103,136,136, + 80,32,80,136,136,2,87,103,136,136,80,32,32,32,32,2, + 87,103,248,8,16,32,64,128,248,17,57,105,224,128,128,128, + 128,128,128,128,224,2,87,103,128,64,64,32,16,16,8,17, + 57,105,224,32,32,32,32,32,32,32,224,7,83,99,32,80, + 136,0,81,97,248,23,51,99,128,64,32,2,85,101,112,8, + 120,136,120,2,87,103,128,128,240,136,136,136,240,2,85,101, + 112,136,128,136,112,2,87,103,8,8,120,136,136,136,120,2, + 85,101,112,136,240,128,112,2,87,103,48,72,64,224,64,64, + 64,0,87,103,112,136,136,136,120,8,112,2,87,103,128,128, + 240,136,136,136,136,18,55,103,64,0,192,64,64,64,224,16, + 73,105,16,0,48,16,16,16,16,144,96,2,87,103,128,128, + 136,144,224,144,136,18,55,103,192,64,64,64,64,64,224,2, + 85,101,208,168,168,168,168,2,85,101,176,200,136,136,136,2, + 85,101,112,136,136,136,112,0,87,103,240,136,136,136,240,128, + 128,0,87,103,120,136,136,136,120,8,8,2,85,101,176,200, + 128,128,128,2,85,101,120,128,112,8,240,2,87,103,32,32, + 248,32,32,32,24,2,85,101,136,136,136,152,104,2,85,101, + 136,136,136,80,32,2,85,101,136,136,168,168,80,2,85,101, + 136,80,32,80,136,0,87,103,136,136,136,80,32,64,128,2, + 85,101,248,16,32,64,248,17,57,105,32,64,64,64,128,64, + 64,64,32,33,25,105,128,128,128,128,128,128,128,128,128,17, + 57,105,128,64,64,64,32,64,64,64,128,4,83,99,72,168, + 144,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,12,0,96,34,23,103,128,0,128,128,128,128,128,1, + 87,103,32,112,168,160,168,112,32,2,87,103,48,72,64,224, + 64,72,176,2,85,101,168,80,136,80,168,2,87,103,136,80, + 248,32,248,32,32,34,23,103,128,128,128,0,128,128,128,18, + 72,104,112,128,96,144,144,96,16,224,25,49,97,160,2,103, + 103,120,132,148,164,148,132,120,22,53,101,96,160,96,0,224, + 2,85,101,40,80,160,80,40,3,83,99,248,8,8,21,49, + 97,224,2,103,103,120,132,180,164,164,132,120,9,81,97,248, + 23,68,100,96,144,144,96,2,87,103,32,32,248,32,32,0, + 248,23,53,101,64,160,32,64,224,23,53,101,192,32,64,32, + 192,23,51,99,32,64,128,0,87,103,136,136,136,152,232,128, + 128,2,88,104,120,232,232,232,104,40,40,40,37,34,98,192, + 192,16,50,98,32,192,23,53,101,64,192,64,64,224,23,53, + 101,64,160,64,0,224,2,85,101,160,80,40,80,160,2,90, + 106,64,192,64,64,80,48,80,120,16,16,2,90,106,64,192, + 64,64,80,40,8,16,32,56,2,90,106,192,32,64,32,208, + 48,80,120,16,16,2,87,103,32,0,32,32,64,136,112,2, + 90,106,64,32,0,112,136,136,248,136,136,136,2,90,106,16, + 32,0,112,136,136,248,136,136,136,2,90,106,32,80,0,112, + 136,136,248,136,136,136,2,90,106,104,176,0,112,136,136,248, + 136,136,136,2,89,105,80,0,112,136,136,248,136,136,136,2, + 90,106,32,80,32,112,136,136,248,136,136,136,2,87,103,120, + 160,160,240,160,160,184,0,89,105,112,136,128,128,128,136,112, + 16,96,2,90,106,64,32,0,248,128,128,240,128,128,248,2, + 90,106,16,32,0,248,128,128,240,128,128,248,2,90,106,32, + 80,0,248,128,128,240,128,128,248,2,89,105,80,0,248,128, + 128,240,128,128,248,18,58,106,128,64,0,224,64,64,64,64, + 64,224,18,58,106,32,64,0,224,64,64,64,64,64,224,18, + 58,106,64,160,0,224,64,64,64,64,64,224,18,57,105,160, + 0,224,64,64,64,64,64,224,2,87,103,112,72,72,232,72, + 72,112,2,90,106,104,176,0,136,136,200,168,152,136,136,2, + 90,106,64,32,0,112,136,136,136,136,136,112,2,90,106,16, + 32,0,112,136,136,136,136,136,112,2,90,106,32,80,0,112, + 136,136,136,136,136,112,2,90,106,104,176,0,112,136,136,136, + 136,136,112,2,89,105,80,0,112,136,136,136,136,136,112,3, + 85,101,136,80,32,80,136,1,89,105,8,112,152,168,168,168, + 200,112,128,2,90,106,64,32,0,136,136,136,136,136,136,112, + 2,90,106,16,32,0,136,136,136,136,136,136,112,2,90,106, + 32,80,0,136,136,136,136,136,136,112,2,89,105,80,0,136, + 136,136,136,136,136,112,2,90,106,16,32,0,136,136,80,32, + 32,32,32,18,71,103,128,224,144,144,144,224,128,2,87,103, + 112,136,144,160,144,136,176,2,88,104,64,32,0,112,8,120, + 136,120,2,88,104,16,32,0,112,8,120,136,120,2,88,104, + 32,80,0,112,8,120,136,120,2,88,104,104,176,0,112,8, + 120,136,120,2,87,103,80,0,112,8,120,136,120,2,88,104, + 32,80,32,112,8,120,136,120,2,85,101,112,40,112,160,120, + 0,87,103,112,136,128,136,112,16,96,2,88,104,64,32,0, + 112,136,240,128,112,2,88,104,16,32,0,112,136,240,128,112, + 2,88,104,32,80,0,112,136,240,128,112,2,87,103,80,0, + 112,136,240,128,112,18,56,104,128,64,0,192,64,64,64,224, + 18,56,104,32,64,0,192,64,64,64,224,18,56,104,64,160, + 0,192,64,64,64,224,18,55,103,160,0,192,64,64,64,224, + 2,89,105,80,32,80,8,120,136,136,136,112,2,88,104,104, + 176,0,176,200,136,136,136,2,88,104,64,32,0,112,136,136, + 136,112,2,88,104,16,32,0,112,136,136,136,112,2,88,104, + 32,80,0,112,136,136,136,112,2,88,104,104,176,0,112,136, + 136,136,112,2,87,103,80,0,112,136,136,136,112,3,85,101, + 32,0,248,0,32,2,85,101,120,152,168,200,240,2,88,104, + 64,32,0,136,136,136,136,112,2,88,104,16,32,0,136,136, + 136,136,112,2,88,104,32,80,0,136,136,136,136,112,2,87, + 103,80,0,136,136,136,136,112,0,90,106,16,32,0,136,136, + 136,80,32,64,128,0,89,105,128,128,240,136,136,136,240,128, + 128,0,89,105,80,0,136,136,136,80,32,64,128}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--12-110-75-75-C-60-ISO10646-1 + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 5 h= 9 x= 2 y=10 dx= 6 dy= 0 ascent=10 len= 9 + Font Bounding box w= 6 h=12 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent =10 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x12r[898] U8G_SECTION(".progmem.u8g_font_6x12r") = { + 1,6,12,0,254,7,1,53,2,107,32,127,254,10,254,8, + 254,12,0,96,34,23,103,128,128,128,128,128,0,128,23,51, + 99,160,160,160,2,86,102,80,248,80,80,248,80,1,89,105, + 32,112,168,160,112,40,168,112,32,2,87,103,200,200,16,32, + 64,152,152,2,87,103,64,160,160,64,168,144,104,39,19,99, + 128,128,128,17,57,105,32,64,64,128,128,128,64,64,32,17, + 57,105,128,64,64,32,32,32,64,64,128,2,87,103,32,168, + 112,32,112,168,32,3,85,101,32,32,248,32,32,1,51,99, + 96,96,192,5,81,97,248,18,34,98,192,192,2,87,103,8, + 16,16,32,64,64,128,18,71,103,96,144,144,144,144,144,96, + 18,55,103,64,192,64,64,64,64,224,2,87,103,112,136,8, + 16,32,64,248,2,87,103,248,8,16,48,8,136,112,2,87, + 103,16,48,80,144,248,16,16,2,87,103,248,128,240,8,8, + 136,112,2,87,103,48,64,128,240,136,136,112,2,87,103,248, + 8,16,16,32,32,32,2,87,103,112,136,136,112,136,136,112, + 2,87,103,112,136,136,120,8,16,96,18,37,101,192,192,0, + 192,192,1,54,102,96,96,0,96,96,192,19,53,101,32,64, + 128,64,32,4,83,99,248,0,248,19,53,101,128,64,32,64, + 128,2,87,103,112,136,16,32,32,0,32,2,87,103,112,136, + 184,168,184,128,112,2,87,103,112,136,136,248,136,136,136,2, + 87,103,240,72,72,112,72,72,240,2,87,103,112,136,128,128, + 128,136,112,2,87,103,240,72,72,72,72,72,240,2,87,103, + 248,128,128,240,128,128,248,2,87,103,248,128,128,240,128,128, + 128,2,87,103,112,136,128,128,152,136,112,2,87,103,136,136, + 136,248,136,136,136,18,55,103,224,64,64,64,64,64,224,2, + 87,103,56,16,16,16,16,144,96,2,87,103,136,144,160,192, + 160,144,136,2,87,103,128,128,128,128,128,128,248,2,87,103, + 136,216,168,136,136,136,136,2,87,103,136,136,200,168,152,136, + 136,2,87,103,112,136,136,136,136,136,112,2,87,103,240,136, + 136,240,128,128,128,2,87,103,112,136,136,136,168,144,104,2, + 87,103,240,136,136,240,160,144,136,2,87,103,112,136,128,112, + 8,136,112,2,87,103,248,32,32,32,32,32,32,2,87,103, + 136,136,136,136,136,136,112,2,87,103,136,136,136,136,80,80, + 32,2,87,103,136,136,136,136,168,168,80,2,87,103,136,136, + 80,32,80,136,136,2,87,103,136,136,80,32,32,32,32,2, + 87,103,248,8,16,32,64,128,248,17,57,105,224,128,128,128, + 128,128,128,128,224,2,87,103,128,64,64,32,16,16,8,17, + 57,105,224,32,32,32,32,32,32,32,224,7,83,99,32,80, + 136,0,81,97,248,23,51,99,128,64,32,2,85,101,112,8, + 120,136,120,2,87,103,128,128,240,136,136,136,240,2,85,101, + 112,136,128,136,112,2,87,103,8,8,120,136,136,136,120,2, + 85,101,112,136,240,128,112,2,87,103,48,72,64,224,64,64, + 64,0,87,103,112,136,136,136,120,8,112,2,87,103,128,128, + 240,136,136,136,136,18,55,103,64,0,192,64,64,64,224,16, + 73,105,16,0,48,16,16,16,16,144,96,2,87,103,128,128, + 136,144,224,144,136,18,55,103,192,64,64,64,64,64,224,2, + 85,101,208,168,168,168,168,2,85,101,176,200,136,136,136,2, + 85,101,112,136,136,136,112,0,87,103,240,136,136,136,240,128, + 128,0,87,103,120,136,136,136,120,8,8,2,85,101,176,200, + 128,128,128,2,85,101,120,128,112,8,240,2,87,103,32,32, + 248,32,32,32,24,2,85,101,136,136,136,152,104,2,85,101, + 136,136,136,80,32,2,85,101,136,136,168,168,80,2,85,101, + 136,80,32,80,136,0,87,103,136,136,136,80,32,64,128,2, + 85,101,248,16,32,64,248,17,57,105,32,64,64,64,128,64, + 64,64,32,33,25,105,128,128,128,128,128,128,128,128,128,17, + 57,105,128,64,64,64,32,64,64,64,128,4,83,99,72,168, + 144,255}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 3, '1' Height: 9 + Calculated Max Values w= 6 h=13 x= 5 y= 9 dx= 6 dy= 0 ascent=11 len=13 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 3 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13_67_75[2236] U8G_SECTION(".progmem.u8g_font_6x13_67_75") = { + 1,6,13,0,254,3,1,73,2,147,32,255,0,11,254,9, + 0,3,101,101,80,40,252,40,80,2,89,105,32,32,32,32, + 168,112,168,112,32,3,101,101,36,72,240,72,36,3,101,101, + 144,72,60,72,144,3,85,101,32,72,248,72,32,2,89,105, + 32,112,168,32,32,32,32,32,248,3,85,101,32,144,248,144, + 32,2,89,105,248,32,32,32,32,32,168,112,32,2,89,105, + 32,112,168,32,32,168,112,32,248,3,101,101,40,68,248,64, + 32,3,101,101,80,136,124,8,16,3,101,101,32,76,252,72, + 40,3,101,101,16,200,252,72,80,4,100,100,72,220,236,72, + 3,101,101,8,88,252,104,64,2,89,105,128,128,144,176,208, + 144,16,56,16,2,89,105,32,64,248,72,40,8,8,8,8, + 2,89,105,32,16,248,144,160,128,128,128,128,2,89,105,8, + 8,8,8,40,72,248,64,32,2,89,105,128,128,128,128,160, + 144,248,16,32,3,85,101,240,16,16,56,16,3,86,102,8, + 8,8,72,248,64,3,85,101,48,72,72,232,72,3,85,101, + 96,144,144,184,144,2,89,105,248,128,224,192,160,32,16,16, + 8,2,89,105,160,192,248,192,168,24,248,24,40,3,86,102, + 56,48,168,136,136,112,3,86,102,224,96,168,136,136,112,5, + 83,99,32,64,248,3,83,99,248,64,32,34,57,105,128,192, + 160,128,128,128,128,128,128,2,57,105,32,96,160,32,32,32, + 32,32,32,5,83,99,32,16,248,3,83,99,248,16,32,34, + 57,105,128,128,128,128,128,128,160,192,128,2,57,105,32,32, + 32,32,32,32,160,96,32,2,89,105,32,16,248,16,32,64, + 248,64,32,2,89,105,80,240,80,80,80,80,80,120,80,2, + 89,105,32,64,248,64,32,16,248,16,32,2,89,105,32,64, + 248,64,32,64,248,64,32,2,89,105,80,248,80,80,80,80, + 80,80,80,2,89,105,32,16,248,16,32,16,248,16,32,2, + 89,105,80,80,80,80,80,80,80,248,80,2,87,103,32,64, + 248,0,248,16,32,2,87,103,32,16,248,0,248,64,32,2, + 103,103,20,40,124,144,124,32,80,2,103,103,8,88,252,164, + 252,104,64,2,103,103,160,80,248,36,248,16,40,2,103,103, + 16,32,124,128,124,32,16,2,89,105,32,80,216,80,80,80, + 80,80,80,2,103,103,32,16,248,4,248,16,32,2,89,105, + 80,80,80,80,80,80,216,80,32,3,101,101,72,252,132,252, + 72,2,89,105,32,80,216,80,80,80,216,80,32,3,102,102, + 248,160,208,168,148,8,3,102,102,124,20,44,84,164,64,3, + 102,102,64,164,84,44,20,124,3,102,102,8,148,168,208,160, + 248,2,103,103,16,60,64,252,64,60,16,2,103,103,32,240, + 8,252,8,240,32,4,100,100,64,232,212,64,4,100,100,8, + 92,172,8,2,89,105,32,112,168,32,112,32,112,32,32,2, + 89,105,32,32,112,32,112,32,168,112,32,3,85,101,32,64, + 168,64,32,2,89,105,32,112,168,0,32,32,0,32,32,3, + 85,101,32,16,168,16,32,2,89,105,32,32,0,32,32,0, + 168,112,32,3,85,101,160,192,248,192,160,3,85,101,40,24, + 248,24,40,3,85,101,32,120,136,120,32,2,89,105,32,80, + 216,80,80,80,80,80,112,3,85,101,32,240,136,240,32,2, + 89,105,112,80,80,80,80,80,216,80,32,2,90,106,32,80, + 216,80,80,112,0,112,80,112,2,89,105,32,80,216,80,80, + 80,216,136,248,2,89,105,32,80,248,136,80,80,216,136,248, + 2,89,105,32,112,248,112,112,112,248,168,248,2,89,105,32, + 80,216,80,216,80,80,80,112,2,89,105,32,80,216,80,216, + 80,216,136,248,3,85,101,160,240,136,240,160,3,88,104,248, + 128,176,224,144,16,8,8,2,88,104,128,128,64,72,56,104, + 8,248,2,89,105,32,80,216,80,80,80,216,80,32,3,101, + 101,16,104,252,104,16,2,89,105,80,120,80,80,80,80,80, + 240,80,2,89,105,16,248,16,16,248,16,16,248,16,3,101, + 101,40,72,252,72,40,3,101,101,80,72,252,72,80,4,101, + 101,48,120,252,120,48,3,101,101,56,88,252,88,56,3,101, + 101,112,104,252,104,112,4,101,101,48,120,252,120,48,3,85, + 101,32,96,184,96,32,3,85,101,32,48,232,48,32,4,101, + 101,48,120,180,120,48,7,102,102,252,252,252,252,252,252,0, + 98,98,252,252,0,99,99,252,252,252,0,101,101,252,252,252, + 252,252,0,103,103,252,252,252,252,252,252,252,0,104,104,252, + 252,252,252,252,252,252,252,0,106,106,252,252,252,252,252,252, + 252,252,252,252,0,107,107,252,252,252,252,252,252,252,252,252, + 252,252,0,109,109,252,252,252,252,252,252,252,252,252,252,252, + 252,252,0,93,109,248,248,248,248,248,248,248,248,248,248,248, + 248,248,0,77,109,240,240,240,240,240,240,240,240,240,240,240, + 240,240,0,77,109,240,240,240,240,240,240,240,240,240,240,240, + 240,240,0,61,109,224,224,224,224,224,224,224,224,224,224,224, + 224,224,0,45,109,192,192,192,192,192,192,192,192,192,192,192, + 192,192,0,45,109,192,192,192,192,192,192,192,192,192,192,192, + 192,192,0,29,109,128,128,128,128,128,128,128,128,128,128,128, + 128,128,48,61,109,224,224,224,224,224,224,224,224,224,224,224, + 224,224,0,109,109,168,0,84,0,168,0,84,0,168,0,84, + 0,168,0,109,109,168,84,168,84,168,84,168,84,168,84,168, + 84,168,0,109,109,84,252,168,252,84,252,168,252,84,252,168, + 252,84,11,98,98,252,252,80,29,109,128,128,128,128,128,128, + 128,128,128,128,128,128,128,0,55,103,224,224,224,224,224,224, + 224,48,55,103,224,224,224,224,224,224,224,7,54,102,224,224, + 224,224,224,224,0,109,109,224,224,224,224,224,224,252,252,252, + 252,252,252,252,0,109,109,224,224,224,224,224,224,28,28,28, + 28,28,28,28,0,109,109,252,252,252,252,252,252,224,224,224, + 224,224,224,224,0,109,109,252,252,252,252,252,252,28,28,28, + 28,28,28,28,55,54,102,224,224,224,224,224,224,0,109,109, + 28,28,28,28,28,28,224,224,224,224,224,224,224,0,109,109, + 28,28,28,28,28,28,252,252,252,252,252,252,252,3,85,101, + 248,248,248,248,248,3,85,101,248,136,136,136,248,3,85,101, + 112,136,136,136,112,3,85,101,248,136,168,136,248,2,85,101, + 248,136,248,136,248,2,85,101,248,168,168,168,248,2,85,101, + 248,168,248,168,248,2,85,101,248,200,168,152,248,2,85,101, + 248,152,168,200,248,2,85,101,248,216,168,216,248,21,51,99, + 224,224,224,21,51,99,224,160,224,4,101,101,252,252,252,252, + 252,4,101,101,252,132,132,132,252,17,75,107,240,240,240,240, + 240,240,240,240,240,240,240,17,75,107,240,144,144,144,144,144, + 144,144,144,144,240,5,99,99,60,120,240,5,99,99,60,72, + 240,2,89,105,32,32,32,112,112,112,248,248,248,2,89,105, + 32,32,32,80,80,80,136,136,248,4,85,101,32,32,112,112, + 248,4,85,101,32,32,80,80,248,2,89,105,128,192,224,240, + 248,240,224,192,128,2,89,105,128,192,160,144,136,144,160,192, + 128,20,53,101,128,192,224,192,128,20,53,101,128,192,160,192, + 128,4,101,101,192,240,252,240,192,4,101,101,192,176,140,176, + 192,2,89,105,248,248,248,112,112,112,32,32,32,2,89,105, + 248,136,136,80,80,80,32,32,32,3,85,101,248,112,112,32, + 32,3,85,101,248,80,80,32,32,2,89,105,8,24,56,120, + 248,120,56,24,8,2,89,105,8,24,40,72,136,72,40,24, + 8,20,53,101,32,96,224,96,32,20,53,101,32,96,160,96, + 32,4,101,101,12,60,252,60,12,4,101,101,12,52,196,52, + 12,4,85,101,32,112,248,112,32,4,85,101,32,80,136,80, + 32,4,85,101,32,80,168,80,32,3,102,102,48,72,180,180, + 72,48,2,89,105,32,32,80,80,136,80,80,32,32,3,102, + 102,48,72,132,132,72,48,3,102,102,32,8,128,4,64,16, + 2,85,101,112,168,168,168,112,2,87,103,112,136,168,216,168, + 136,112,3,102,102,48,120,252,252,120,48,3,102,102,48,104, + 228,228,104,48,3,102,102,48,88,156,156,88,48,3,102,102, + 48,72,132,252,120,48,3,102,102,48,120,252,132,72,48,3, + 102,102,48,88,156,132,72,48,3,102,102,48,88,156,252,120, + 48,18,90,106,8,56,120,120,248,248,120,120,56,8,2,90, + 106,128,224,240,240,248,248,240,240,224,128,0,109,109,252,252, + 252,252,252,204,132,132,204,252,252,252,252,0,109,109,252,252, + 252,252,204,180,120,120,180,204,252,252,252,6,103,103,252,252, + 252,252,204,180,120,0,102,102,120,180,204,252,252,252,6,51, + 99,32,64,128,54,51,99,128,64,32,51,51,99,32,64,128, + 3,51,99,128,64,32,6,99,99,48,72,132,3,99,99,132, + 72,48,3,85,101,8,24,56,120,248,3,85,101,128,192,224, + 240,248,3,85,101,248,240,224,192,128,3,85,101,248,120,56, + 24,8,4,85,101,112,136,136,136,112,3,85,101,248,232,232, + 232,248,3,85,101,248,184,184,184,248,3,85,101,248,248,232, + 200,248,3,85,101,248,152,184,248,248,3,85,101,248,168,168, + 168,248,2,89,105,32,32,32,80,80,112,168,136,248,2,89, + 105,32,32,32,112,112,112,232,232,248,2,89,105,32,32,32, + 112,112,112,184,184,248,2,103,103,48,72,132,132,132,72,48, + 3,85,101,248,168,232,136,248,3,85,101,248,136,232,168,248, + 3,85,101,248,136,184,168,248,3,85,101,248,168,184,136,248, + 3,85,101,112,168,232,136,112,3,85,101,112,136,232,168,112, + 3,85,101,112,136,184,168,112,3,85,101,112,168,184,136,112, + 3,85,101,248,144,160,192,128,3,85,101,248,72,40,24,8, + 3,85,101,128,192,160,144,248,20,68,100,240,144,144,240,20, + 68,100,240,240,240,240,20,68,100,240,144,144,240,20,68,100, + 240,240,240,240,3,85,101,8,24,40,72,248}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 3 + Calculated Max Values w= 6 h=11 x= 1 y= 3 dx= 6 dy= 0 ascent=10 len=11 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent =10 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13_75r[447] U8G_SECTION(".progmem.u8g_font_6x13_75r") = { + 1,6,13,0,254,9,1,57,0,0,32,79,0,10,255,9, + 0,3,85,101,248,248,248,248,248,3,85,101,248,136,136,136, + 248,3,85,101,112,136,136,136,112,3,85,101,248,136,168,136, + 248,2,85,101,248,136,248,136,248,2,85,101,248,168,168,168, + 248,2,85,101,248,168,248,168,248,2,85,101,248,200,168,152, + 248,2,85,101,248,152,168,200,248,2,85,101,248,216,168,216, + 248,21,51,99,224,224,224,21,51,99,224,160,224,4,101,101, + 252,252,252,252,252,4,101,101,252,132,132,132,252,17,75,107, + 240,240,240,240,240,240,240,240,240,240,240,17,75,107,240,144, + 144,144,144,144,144,144,144,144,240,5,99,99,60,120,240,5, + 99,99,60,72,240,2,89,105,32,32,32,112,112,112,248,248, + 248,2,89,105,32,32,32,80,80,80,136,136,248,4,85,101, + 32,32,112,112,248,4,85,101,32,32,80,80,248,2,89,105, + 128,192,224,240,248,240,224,192,128,2,89,105,128,192,160,144, + 136,144,160,192,128,20,53,101,128,192,224,192,128,20,53,101, + 128,192,160,192,128,4,101,101,192,240,252,240,192,4,101,101, + 192,176,140,176,192,2,89,105,248,248,248,112,112,112,32,32, + 32,2,89,105,248,136,136,80,80,80,32,32,32,3,85,101, + 248,112,112,32,32,3,85,101,248,80,80,32,32,2,89,105, + 8,24,56,120,248,120,56,24,8,2,89,105,8,24,40,72, + 136,72,40,24,8,20,53,101,32,96,224,96,32,20,53,101, + 32,96,160,96,32,4,101,101,12,60,252,60,12,4,101,101, + 12,52,196,52,12,4,85,101,32,112,248,112,32,4,85,101, + 32,80,136,80,32,4,85,101,32,80,168,80,32,3,102,102, + 48,72,180,180,72,48,2,89,105,32,32,80,80,136,80,80, + 32,32,3,102,102,48,72,132,132,72,48,3,102,102,32,8, + 128,4,64,16,2,85,101,112,168,168,168,112,2,87,103,112, + 136,168,216,168,136,112,3,102,102,48,120,252,252,120,48}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 0, '1' Height: 7 + Calculated Max Values w= 6 h=13 x= 2 y= 5 dx= 6 dy= 0 ascent=11 len=13 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13_78_79[1470] U8G_SECTION(".progmem.u8g_font_6x13_78_79") = { + 1,6,13,0,254,7,1,42,2,11,32,255,0,11,254,10, + 0,2,87,103,112,32,168,248,168,32,112,255,2,104,104,48, + 48,48,252,252,48,48,48,2,89,105,32,112,32,168,248,168, + 32,112,32,2,89,105,32,112,32,168,248,168,32,112,32,2, + 89,105,32,112,32,168,248,168,32,112,32,4,85,101,32,112, + 248,112,32,4,85,101,32,80,136,80,32,255,4,86,102,32, + 32,248,80,112,136,2,89,105,112,216,216,0,136,136,112,248, + 112,4,86,102,32,32,248,80,112,136,4,86,102,32,32,248, + 112,112,136,4,86,102,32,32,248,112,112,136,4,86,102,32, + 32,248,112,112,136,4,86,102,32,32,248,112,112,136,4,102, + 102,48,48,252,88,120,204,3,87,103,32,168,112,112,112,168, + 32,3,87,103,32,168,112,80,112,168,32,3,87,103,32,168, + 112,248,112,168,32,3,87,103,32,168,112,248,112,168,32,3, + 87,103,32,168,112,248,112,168,32,3,87,103,32,168,112,112, + 112,168,32,3,87,103,80,80,248,32,248,80,80,3,87,103, + 80,112,248,112,248,112,80,255,255,3,87,103,32,168,168,112, + 168,168,32,3,87,103,32,168,168,80,168,168,32,3,87,103, + 32,168,168,112,168,168,32,3,87,103,32,168,168,80,168,168, + 32,4,85,101,32,248,80,112,216,255,255,255,3,87,103,32, + 168,168,112,168,168,32,3,87,103,32,168,168,112,168,168,32, + 3,87,103,32,168,168,112,168,168,32,3,87,103,32,168,168, + 112,168,168,32,3,87,103,32,168,112,248,112,168,32,3,87, + 103,32,168,112,248,112,168,32,3,87,103,32,168,168,112,168, + 168,32,3,87,103,32,168,112,248,112,168,32,3,87,103,32, + 168,112,248,112,168,32,255,2,102,102,120,140,140,140,140,120, + 255,2,102,102,248,136,140,140,252,60,2,102,102,60,252,140, + 140,136,248,2,102,102,248,140,140,140,252,124,2,102,102,124, + 252,140,140,140,248,255,255,255,2,89,105,32,112,32,80,248, + 80,32,112,32,255,34,25,105,128,128,128,128,128,128,128,128, + 128,18,57,105,224,224,224,224,224,224,224,224,224,2,89,105, + 248,248,248,248,248,248,248,248,248,23,53,101,96,128,224,224, + 64,23,53,101,64,224,224,32,192,7,101,101,108,144,252,252, + 72,7,101,101,72,252,252,36,216,255,255,2,106,106,8,124, + 232,232,120,8,104,104,72,48,18,57,105,64,224,224,64,64, + 0,64,224,64,2,89,105,80,248,248,112,32,0,32,112,32, + 2,87,103,80,248,248,248,112,32,32,2,103,103,96,240,248, + 124,248,240,96,2,89,105,104,176,16,216,248,240,96,104,48, + 2,104,104,64,144,184,124,92,188,184,80,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,2,89,105,112,248,216,152, + 216,216,136,248,112,2,89,105,112,248,216,168,232,216,136,248, + 112,2,89,105,112,248,216,168,216,232,152,248,112,2,89,105, + 112,248,184,184,152,136,216,248,112,2,89,105,112,248,136,184, + 152,232,152,248,112,2,89,105,112,248,200,184,152,168,216,248, + 112,2,89,105,112,248,136,232,216,216,216,248,112,2,89,105, + 112,248,216,168,216,168,216,248,112,2,89,105,112,248,216,168, + 200,232,152,248,112,2,105,105,120,252,172,148,148,148,172,252, + 120,2,89,105,112,136,168,232,168,168,168,136,112,2,89,105, + 112,136,168,216,152,168,248,136,112,2,89,105,112,136,168,216, + 168,152,232,136,112,2,89,105,112,136,200,200,232,248,168,136, + 112,2,89,105,112,136,248,200,232,152,232,136,112,2,89,105, + 112,136,184,200,232,216,168,136,112,2,89,105,112,136,248,152, + 168,168,168,136,112,2,89,105,112,136,168,216,168,216,168,136, + 112,2,89,105,112,136,168,216,184,152,232,136,112,2,105,105, + 120,132,212,236,236,236,212,132,120,2,89,105,112,248,216,152, + 216,216,216,248,112,2,89,105,112,248,216,168,232,216,136,248, + 112,2,89,105,112,248,216,168,216,232,152,248,112,2,89,105, + 112,248,184,184,152,136,216,248,112,2,89,105,112,248,136,184, + 152,232,152,248,112,2,89,105,112,248,200,184,152,168,216,248, + 112,2,89,105,112,248,136,232,216,216,216,248,112,2,89,105, + 112,248,216,168,216,168,216,248,112,2,89,105,112,248,216,168, + 200,232,152,248,112,2,105,105,120,252,172,148,148,148,172,252, + 120,4,102,102,48,24,252,252,24,48,255,255,255,4,85,101, + 128,64,40,24,56,4,85,101,32,48,248,48,32,4,85,101, + 56,24,40,64,128,3,103,103,64,32,48,252,48,32,64,3, + 104,104,32,48,24,252,252,24,48,32,4,101,101,16,24,252, + 24,16,4,102,102,16,24,252,252,24,16,4,102,102,16,24, + 188,188,24,16,3,103,103,32,48,184,188,184,48,32,3,103, + 103,32,48,248,252,248,48,32,255,255,4,101,101,192,112,60, + 112,192,3,103,103,32,176,248,252,120,48,32,3,103,103,32, + 48,120,252,248,176,32,0,109,109,32,32,48,240,248,248,252, + 248,248,240,48,32,32,255,255,255,255,255,255,255,255,255,255, + 1,107,107,120,252,220,204,4,0,4,204,220,248,120,255,4, + 102,102,32,32,224,20,12,28,4,101,101,144,200,124,200,144, + 4,102,102,28,12,20,224,32,32,4,102,102,32,32,224,20, + 12,28,4,101,101,144,200,124,200,144,4,102,102,28,12,20, + 224,32,32,4,101,101,16,8,252,8,16,4,101,101,16,200, + 252,200,16,5,99,99,232,124,232,4,101,101,208,216,124,216, + 208,2,105,105,160,80,40,244,4,244,40,80,160,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,1,91,107,248,160,160,160,160,160,160,160,160, + 160,248,1,91,107,248,40,40,40,40,40,40,40,40,40,248, + 17,75,107,16,32,32,64,64,128,64,64,32,32,16,17,75, + 107,128,64,64,32,32,16,32,32,64,64,128,1,107,107,20, + 40,40,80,80,160,80,80,40,40,20,1,107,107,160,80,80, + 40,40,20,40,40,80,80,160,255,255,255,255,255,255,255,255, + 255,3,101,101,32,64,252,64,32,3,101,101,16,8,252,8, + 16,4,99,99,72,252,72,2,103,103,16,32,124,128,124,32, + 16,2,103,103,32,16,248,4,248,16,32,3,101,101,72,252, + 132,252,72,3,101,101,36,68,252,68,36,3,101,101,144,136, + 252,136,144,2,103,103,20,36,124,132,124,36,20,2,103,103, + 160,144,248,132,248,144,160,4,100,100,8,92,172,8}; +/* + Fontname: -Misc-Fixed-Bold-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 2 y=11 dx= 6 dy= 0 ascent=11 len=11 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13B[2171] U8G_SECTION(".progmem.u8g_font_6x13B") = { + 1,6,13,0,254,9,1,99,2,211,32,255,254,11,254,10, + 254,13,0,96,34,41,105,192,192,192,192,192,192,192,0,192, + 8,83,99,216,216,216,3,103,103,120,120,252,120,252,120,120, + 3,103,103,48,120,240,120,60,120,48,2,105,105,108,252,120, + 24,48,96,120,252,216,2,103,103,96,240,240,96,252,216,124, + 40,35,99,192,192,192,17,75,107,48,96,96,192,192,192,192, + 192,96,96,48,17,75,107,192,96,96,48,48,48,48,48,96, + 96,192,4,101,101,204,120,252,120,204,4,101,101,48,48,252, + 48,48,17,67,99,112,96,192,6,97,97,252,17,67,99,96, + 240,96,2,105,105,12,12,24,24,48,96,96,192,192,2,105, + 105,48,120,204,204,204,204,204,120,48,2,105,105,48,112,240, + 48,48,48,48,48,252,2,105,105,120,204,204,12,24,48,96, + 192,252,2,105,105,252,12,24,48,120,12,12,204,120,2,105, + 105,24,24,56,120,88,216,252,24,24,2,105,105,252,192,192, + 248,236,12,12,204,120,2,105,105,56,96,192,192,248,236,204, + 204,120,2,105,105,252,12,24,24,48,48,96,96,96,2,105, + 105,120,204,204,204,120,204,204,204,120,2,105,105,120,204,204, + 220,124,12,12,24,112,18,72,104,96,240,96,0,0,96,240, + 96,17,72,104,96,240,96,0,0,112,96,192,2,105,105,12, + 24,48,96,192,96,48,24,12,4,100,100,252,0,0,252,2, + 105,105,192,96,48,24,12,24,48,96,192,2,105,105,120,204, + 204,12,24,48,48,0,48,2,105,105,120,204,204,220,252,252, + 248,192,124,2,105,105,48,120,204,204,204,252,204,204,204,2, + 105,105,248,108,108,108,120,108,108,108,248,2,105,105,120,204, + 192,192,192,192,192,204,120,2,105,105,248,108,108,108,108,108, + 108,108,248,2,105,105,252,192,192,192,248,192,192,192,252,2, + 105,105,252,192,192,192,248,192,192,192,192,2,105,105,120,204, + 192,192,192,220,204,204,120,2,105,105,204,204,204,204,252,204, + 204,204,204,18,73,105,240,96,96,96,96,96,96,96,240,2, + 105,105,60,12,12,12,12,12,12,204,120,2,105,105,204,204, + 216,240,224,240,216,204,204,2,105,105,192,192,192,192,192,192, + 192,192,252,2,105,105,204,204,252,252,252,204,204,204,204,2, + 105,105,204,236,236,252,252,220,220,204,204,2,105,105,120,204, + 204,204,204,204,204,204,120,2,105,105,248,204,204,204,248,192, + 192,192,192,1,106,106,120,204,204,204,204,204,204,252,120,12, + 2,105,105,248,204,204,204,248,240,216,204,204,2,105,105,120, + 204,192,192,120,12,12,204,120,2,105,105,252,48,48,48,48, + 48,48,48,48,2,105,105,204,204,204,204,204,204,204,204,120, + 2,105,105,204,204,204,204,120,120,120,48,48,2,105,105,204, + 204,204,204,252,252,252,252,204,2,105,105,204,204,120,120,48, + 120,120,204,204,2,105,105,204,204,120,120,48,48,48,48,48, + 2,105,105,252,12,24,24,48,96,96,192,252,17,75,107,240, + 192,192,192,192,192,192,192,192,192,240,2,105,105,192,192,96, + 96,48,24,24,12,12,17,75,107,240,48,48,48,48,48,48, + 48,48,48,240,8,99,99,48,120,204,1,97,97,252,26,50, + 98,192,96,2,102,102,120,12,124,204,220,108,2,105,105,192, + 192,192,216,236,204,204,236,216,2,102,102,120,204,192,192,204, + 120,2,105,105,12,12,12,108,220,204,204,220,108,2,102,102, + 120,204,252,192,192,120,2,105,105,56,108,96,96,248,96,96, + 96,96,0,104,104,124,216,216,112,192,120,204,120,2,105,105, + 192,192,192,216,236,204,204,204,204,18,73,105,96,96,0,224, + 96,96,96,96,240,0,91,107,24,24,0,56,24,24,24,24, + 216,216,112,2,105,105,192,192,192,216,240,224,240,216,204,18, + 73,105,224,96,96,96,96,96,96,96,240,2,102,102,248,252, + 252,252,252,204,2,102,102,216,236,204,204,204,204,2,102,102, + 120,204,204,204,204,120,0,104,104,216,236,204,236,216,192,192, + 192,0,104,104,108,220,204,220,108,12,12,12,2,102,102,216, + 236,192,192,192,192,2,102,102,120,204,112,24,204,120,2,104, + 104,96,96,248,96,96,96,108,56,2,102,102,204,204,204,204, + 220,108,2,102,102,204,204,204,120,120,48,2,102,102,204,204, + 252,252,252,72,2,102,102,204,120,48,48,120,204,0,104,104, + 204,204,204,220,108,12,204,120,2,102,102,252,24,48,96,192, + 252,1,91,107,56,96,96,96,48,224,48,96,96,96,56,34, + 41,105,192,192,192,192,192,192,192,192,192,1,91,107,224,48, + 48,48,96,56,96,48,48,48,224,8,83,99,104,248,144,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 13,0,96,34,42,106,192,192,0,192,192,192,192,192,192,192, + 3,104,104,16,120,212,208,208,212,120,16,2,105,105,56,108, + 96,96,248,96,96,100,248,3,102,102,204,252,72,72,252,204, + 2,105,105,204,204,120,120,252,48,252,48,48,34,42,106,192, + 192,192,192,0,0,192,192,192,192,2,106,106,120,204,192,120, + 204,204,120,12,204,120,9,98,98,204,204,2,105,105,120,204, + 180,236,228,236,180,204,120,4,103,103,248,12,252,140,252,0, + 252,3,103,103,52,104,208,160,208,104,52,4,100,100,252,252, + 4,4,22,65,97,240,2,105,105,120,204,188,172,188,180,172, + 204,120,9,82,98,248,248,7,100,100,120,204,204,120,2,105, + 105,48,48,252,252,48,48,0,252,252,6,70,102,224,176,48, + 96,192,240,6,70,102,224,176,96,48,176,224,26,50,98,96, + 192,0,104,104,204,204,204,204,204,252,128,128,2,105,105,124, + 252,244,244,244,116,52,52,52,38,34,98,192,192,16,50,98, + 96,192,6,70,102,96,224,96,96,96,240,5,87,103,112,248, + 136,248,112,0,248,3,103,103,176,88,44,20,44,88,176,2, + 106,106,96,224,96,96,100,252,28,52,60,12,2,106,106,96, + 224,96,96,120,236,12,24,48,60,2,106,106,224,176,96,48, + 180,236,28,52,60,12,2,106,106,48,48,0,48,48,96,192, + 204,204,120,2,106,106,96,48,0,48,120,204,204,252,204,204, + 2,106,106,24,48,0,48,120,204,204,252,204,204,2,106,106, + 56,108,0,48,120,204,204,252,204,204,2,106,106,52,88,0, + 48,120,204,204,252,204,204,2,106,106,204,204,0,48,120,204, + 204,252,204,204,2,106,106,48,72,120,48,120,204,204,252,204, + 204,2,105,105,124,176,176,176,184,240,240,176,188,0,107,107, + 120,204,192,192,192,192,192,204,120,48,96,2,106,106,96,48, + 0,252,192,192,248,192,192,252,2,106,106,24,48,0,252,192, + 192,248,192,192,252,2,106,106,56,108,0,252,192,192,248,192, + 192,252,2,106,106,204,204,0,252,192,192,248,192,192,252,18, + 74,106,192,96,0,240,96,96,96,96,96,240,18,74,106,48, + 96,0,240,96,96,96,96,96,240,2,90,106,112,216,0,120, + 48,48,48,48,48,120,2,106,106,204,204,0,120,48,48,48, + 48,48,120,2,105,105,248,108,108,108,236,108,108,108,248,2, + 106,106,52,88,0,204,236,236,252,220,220,204,2,106,106,96, + 48,0,120,204,204,204,204,204,120,2,106,106,24,48,0,120, + 204,204,204,204,204,120,2,106,106,56,108,0,120,204,204,204, + 204,204,120,2,106,106,52,88,0,120,204,204,204,204,204,120, + 2,106,106,204,204,0,120,204,204,204,204,204,120,3,101,101, + 204,120,48,120,204,1,105,105,4,120,220,220,204,236,236,120, + 128,2,106,106,96,48,0,204,204,204,204,204,204,120,2,106, + 106,24,48,0,204,204,204,204,204,204,120,2,106,106,56,108, + 0,204,204,204,204,204,204,120,2,106,106,108,108,0,204,204, + 204,204,204,204,120,2,106,106,24,48,0,204,72,120,48,48, + 48,48,2,105,105,192,248,204,204,204,248,192,192,192,1,105, + 105,120,204,204,248,204,204,204,248,128,2,105,105,96,48,0, + 120,12,124,204,220,108,2,105,105,24,48,0,120,12,124,204, + 220,108,2,105,105,56,108,0,120,12,124,204,220,108,2,105, + 105,52,88,0,120,12,124,204,220,108,2,105,105,108,108,0, + 120,12,124,204,220,108,2,106,106,56,40,56,0,120,12,124, + 204,220,108,2,102,102,120,52,120,176,180,104,0,104,104,120, + 204,192,192,204,120,48,96,2,105,105,96,48,0,120,204,252, + 192,192,120,2,105,105,24,48,0,120,204,252,192,192,120,2, + 105,105,56,108,0,120,204,252,192,192,120,2,105,105,108,108, + 0,120,204,252,192,192,120,18,73,105,192,96,0,224,96,96, + 96,96,240,18,73,105,48,96,0,224,96,96,96,96,240,2, + 89,105,112,216,0,112,48,48,48,48,120,2,89,105,216,216, + 0,112,48,48,48,48,120,2,106,106,216,112,240,152,120,204, + 204,204,204,120,2,105,105,52,88,0,216,236,204,204,204,204, + 2,105,105,96,48,0,120,204,204,204,204,120,2,105,105,24, + 48,0,120,204,204,204,204,120,2,105,105,56,108,0,120,204, + 204,204,204,120,2,105,105,52,88,0,120,204,204,204,204,120, + 2,105,105,204,204,0,120,204,204,204,204,120,3,103,103,48, + 48,0,252,0,48,48,1,105,105,4,120,204,220,204,236,204, + 120,128,2,105,105,96,48,0,204,204,204,204,220,108,2,105, + 105,24,48,0,204,204,204,204,220,108,2,105,105,56,108,0, + 204,204,204,204,220,108,2,105,105,204,204,0,204,204,204,204, + 220,108,0,107,107,24,48,0,204,204,204,220,108,12,204,120, + 0,106,106,192,192,216,236,204,236,216,192,192,192,0,107,107, + 204,204,0,204,204,204,220,108,12,204,120}; +/* + Fontname: -Misc-Fixed-Bold-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 2 y=11 dx= 6 dy= 0 ascent=11 len=11 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13Br[1040] U8G_SECTION(".progmem.u8g_font_6x13Br") = { + 1,6,13,0,254,9,1,99,2,211,32,127,254,11,254,10, + 254,13,0,96,34,41,105,192,192,192,192,192,192,192,0,192, + 8,83,99,216,216,216,3,103,103,120,120,252,120,252,120,120, + 3,103,103,48,120,240,120,60,120,48,2,105,105,108,252,120, + 24,48,96,120,252,216,2,103,103,96,240,240,96,252,216,124, + 40,35,99,192,192,192,17,75,107,48,96,96,192,192,192,192, + 192,96,96,48,17,75,107,192,96,96,48,48,48,48,48,96, + 96,192,4,101,101,204,120,252,120,204,4,101,101,48,48,252, + 48,48,17,67,99,112,96,192,6,97,97,252,17,67,99,96, + 240,96,2,105,105,12,12,24,24,48,96,96,192,192,2,105, + 105,48,120,204,204,204,204,204,120,48,2,105,105,48,112,240, + 48,48,48,48,48,252,2,105,105,120,204,204,12,24,48,96, + 192,252,2,105,105,252,12,24,48,120,12,12,204,120,2,105, + 105,24,24,56,120,88,216,252,24,24,2,105,105,252,192,192, + 248,236,12,12,204,120,2,105,105,56,96,192,192,248,236,204, + 204,120,2,105,105,252,12,24,24,48,48,96,96,96,2,105, + 105,120,204,204,204,120,204,204,204,120,2,105,105,120,204,204, + 220,124,12,12,24,112,18,72,104,96,240,96,0,0,96,240, + 96,17,72,104,96,240,96,0,0,112,96,192,2,105,105,12, + 24,48,96,192,96,48,24,12,4,100,100,252,0,0,252,2, + 105,105,192,96,48,24,12,24,48,96,192,2,105,105,120,204, + 204,12,24,48,48,0,48,2,105,105,120,204,204,220,252,252, + 248,192,124,2,105,105,48,120,204,204,204,252,204,204,204,2, + 105,105,248,108,108,108,120,108,108,108,248,2,105,105,120,204, + 192,192,192,192,192,204,120,2,105,105,248,108,108,108,108,108, + 108,108,248,2,105,105,252,192,192,192,248,192,192,192,252,2, + 105,105,252,192,192,192,248,192,192,192,192,2,105,105,120,204, + 192,192,192,220,204,204,120,2,105,105,204,204,204,204,252,204, + 204,204,204,18,73,105,240,96,96,96,96,96,96,96,240,2, + 105,105,60,12,12,12,12,12,12,204,120,2,105,105,204,204, + 216,240,224,240,216,204,204,2,105,105,192,192,192,192,192,192, + 192,192,252,2,105,105,204,204,252,252,252,204,204,204,204,2, + 105,105,204,236,236,252,252,220,220,204,204,2,105,105,120,204, + 204,204,204,204,204,204,120,2,105,105,248,204,204,204,248,192, + 192,192,192,1,106,106,120,204,204,204,204,204,204,252,120,12, + 2,105,105,248,204,204,204,248,240,216,204,204,2,105,105,120, + 204,192,192,120,12,12,204,120,2,105,105,252,48,48,48,48, + 48,48,48,48,2,105,105,204,204,204,204,204,204,204,204,120, + 2,105,105,204,204,204,204,120,120,120,48,48,2,105,105,204, + 204,204,204,252,252,252,252,204,2,105,105,204,204,120,120,48, + 120,120,204,204,2,105,105,204,204,120,120,48,48,48,48,48, + 2,105,105,252,12,24,24,48,96,96,192,252,17,75,107,240, + 192,192,192,192,192,192,192,192,192,240,2,105,105,192,192,96, + 96,48,24,24,12,12,17,75,107,240,48,48,48,48,48,48, + 48,48,48,240,8,99,99,48,120,204,1,97,97,252,26,50, + 98,192,96,2,102,102,120,12,124,204,220,108,2,105,105,192, + 192,192,216,236,204,204,236,216,2,102,102,120,204,192,192,204, + 120,2,105,105,12,12,12,108,220,204,204,220,108,2,102,102, + 120,204,252,192,192,120,2,105,105,56,108,96,96,248,96,96, + 96,96,0,104,104,124,216,216,112,192,120,204,120,2,105,105, + 192,192,192,216,236,204,204,204,204,18,73,105,96,96,0,224, + 96,96,96,96,240,0,91,107,24,24,0,56,24,24,24,24, + 216,216,112,2,105,105,192,192,192,216,240,224,240,216,204,18, + 73,105,224,96,96,96,96,96,96,96,240,2,102,102,248,252, + 252,252,252,204,2,102,102,216,236,204,204,204,204,2,102,102, + 120,204,204,204,204,120,0,104,104,216,236,204,236,216,192,192, + 192,0,104,104,108,220,204,220,108,12,12,12,2,102,102,216, + 236,192,192,192,192,2,102,102,120,204,112,24,204,120,2,104, + 104,96,96,248,96,96,96,108,56,2,102,102,204,204,204,204, + 220,108,2,102,102,204,204,204,120,120,48,2,102,102,204,204, + 252,252,252,72,2,102,102,204,120,48,48,120,204,0,104,104, + 204,204,204,220,108,12,204,120,2,102,102,252,24,48,96,192, + 252,1,91,107,56,96,96,96,48,224,48,96,96,96,56,34, + 41,105,192,192,192,192,192,192,192,192,192,1,91,107,224,48, + 48,48,96,56,96,48,48,48,224,8,83,99,104,248,144,255 + }; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 5 h=11 x= 2 y=11 dx= 6 dy= 0 ascent=11 len=11 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13[2160] U8G_SECTION(".progmem.u8g_font_6x13") = { + 1,6,13,0,254,9,1,102,2,214,32,255,254,11,254,10, + 254,13,0,96,34,25,105,128,128,128,128,128,128,128,0,128, + 24,51,99,160,160,160,3,87,103,80,80,248,80,248,80,80, + 2,89,105,32,120,160,160,112,40,40,240,32,2,89,105,72, + 168,80,16,32,64,80,168,144,2,88,104,64,160,160,64,160, + 152,144,104,40,19,99,128,128,128,17,59,107,32,64,64,128, + 128,128,128,128,64,64,32,17,59,107,128,64,64,32,32,32, + 32,32,64,64,128,6,85,101,32,168,112,168,32,4,85,101, + 32,32,248,32,32,17,51,99,96,64,128,6,81,97,248,17, + 51,99,64,224,64,2,89,105,8,8,16,16,32,64,64,128, + 128,2,89,105,32,80,136,136,136,136,136,80,32,2,89,105, + 32,96,160,32,32,32,32,32,248,2,89,105,112,136,136,8, + 16,32,64,128,248,2,89,105,248,8,16,32,112,8,8,136, + 112,2,89,105,16,16,48,80,80,144,248,16,16,2,89,105, + 248,128,128,176,200,8,8,136,112,2,89,105,112,136,128,128, + 240,136,136,136,112,2,89,105,248,8,16,16,32,32,64,64, + 64,2,89,105,112,136,136,136,112,136,136,136,112,2,89,105, + 112,136,136,136,120,8,8,136,112,17,56,104,64,224,64,0, + 0,64,224,64,17,56,104,64,224,64,0,0,96,64,128,2, + 89,105,8,16,32,64,128,64,32,16,8,4,84,100,248,0, + 0,248,2,89,105,128,64,32,16,8,16,32,64,128,2,89, + 105,112,136,136,8,16,32,32,0,32,2,89,105,112,136,136, + 152,168,168,176,128,120,2,89,105,32,80,136,136,136,248,136, + 136,136,2,89,105,240,72,72,72,112,72,72,72,240,2,89, + 105,112,136,128,128,128,128,128,136,112,2,89,105,240,72,72, + 72,72,72,72,72,240,2,89,105,248,128,128,128,240,128,128, + 128,248,2,89,105,248,128,128,128,240,128,128,128,128,2,89, + 105,112,136,128,128,128,152,136,136,112,2,89,105,136,136,136, + 136,248,136,136,136,136,18,57,105,224,64,64,64,64,64,64, + 64,224,2,89,105,56,16,16,16,16,16,16,144,96,2,89, + 105,136,136,144,160,192,160,144,136,136,2,89,105,128,128,128, + 128,128,128,128,128,248,2,89,105,136,136,216,168,168,136,136, + 136,136,2,89,105,136,200,200,168,168,152,152,136,136,2,89, + 105,112,136,136,136,136,136,136,136,112,2,89,105,240,136,136, + 136,240,128,128,128,128,1,90,106,112,136,136,136,136,136,136, + 168,112,8,2,89,105,240,136,136,136,240,160,144,136,136,2, + 89,105,112,136,128,128,112,8,8,136,112,2,89,105,248,32, + 32,32,32,32,32,32,32,2,89,105,136,136,136,136,136,136, + 136,136,112,2,89,105,136,136,136,136,80,80,80,32,32,2, + 89,105,136,136,136,136,168,168,168,168,80,2,89,105,136,136, + 80,80,32,80,80,136,136,2,89,105,136,136,80,80,32,32, + 32,32,32,2,89,105,248,8,16,16,32,64,64,128,248,17, + 59,107,224,128,128,128,128,128,128,128,128,128,224,2,89,105, + 128,128,64,64,32,16,16,8,8,17,59,107,224,32,32,32, + 32,32,32,32,32,32,224,8,83,99,32,80,136,1,81,97, + 248,42,34,98,128,64,2,86,102,112,8,120,136,152,104,2, + 89,105,128,128,128,240,136,136,136,136,240,2,86,102,112,136, + 128,128,136,112,2,89,105,8,8,8,120,136,136,136,136,120, + 2,86,102,112,136,248,128,136,112,2,89,105,48,72,64,64, + 240,64,64,64,64,0,88,104,112,136,136,136,120,8,136,112, + 2,89,105,128,128,128,176,200,136,136,136,136,18,56,104,64, + 0,192,64,64,64,64,224,0,74,106,16,0,48,16,16,16, + 16,144,144,96,2,89,105,128,128,128,144,160,192,160,144,136, + 18,57,105,192,64,64,64,64,64,64,64,224,2,86,102,208, + 168,168,168,168,136,2,86,102,176,200,136,136,136,136,2,86, + 102,112,136,136,136,136,112,0,88,104,240,136,136,136,240,128, + 128,128,0,88,104,120,136,136,136,120,8,8,8,2,86,102, + 176,200,128,128,128,128,2,86,102,112,136,96,16,136,112,2, + 88,104,64,64,240,64,64,64,72,48,2,86,102,136,136,136, + 136,152,104,2,86,102,136,136,136,80,80,32,2,86,102,136, + 136,168,168,168,80,2,86,102,136,80,32,32,80,136,0,88, + 104,136,136,136,152,104,8,136,112,2,86,102,248,16,32,64, + 128,248,1,91,107,24,32,32,32,32,192,32,32,32,32,24, + 34,25,105,128,128,128,128,128,128,128,128,128,1,91,107,192, + 32,32,32,32,24,32,32,32,32,192,8,83,99,72,168,144, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,13,0,96,34,25,105,128,0,128,128,128,128,128,128,128, + 3,88,104,32,112,168,160,160,168,112,32,2,89,105,48,72, + 64,64,224,64,64,72,176,3,86,102,136,112,80,80,112,136, + 2,89,105,136,136,80,80,248,32,248,32,32,34,25,105,128, + 128,128,128,0,128,128,128,128,18,74,106,96,144,128,96,144, + 144,96,16,144,96,26,50,98,160,160,3,89,105,112,136,168, + 216,200,216,168,136,112,4,87,103,112,8,120,136,120,0,248, + 3,86,102,40,80,160,160,80,40,4,83,99,248,8,8,22, + 49,97,224,3,89,105,112,136,232,216,216,232,216,136,112,10, + 81,97,248,23,68,100,96,144,144,96,3,87,103,32,32,248, + 32,32,0,248,7,53,101,64,160,32,64,224,7,53,101,64, + 160,64,32,192,42,34,98,64,128,0,88,104,136,136,136,136, + 152,232,128,128,2,89,105,120,232,232,232,232,104,40,40,40, + 38,33,97,192,32,34,98,64,128,7,53,101,64,192,64,64, + 224,4,87,103,112,136,136,136,112,0,248,3,86,102,160,80, + 40,40,80,160,2,90,106,64,192,64,64,224,8,24,40,56, + 8,2,90,106,64,192,64,64,224,16,40,8,16,56,2,90, + 106,64,160,64,32,160,72,24,40,56,8,2,89,105,32,0, + 32,32,64,128,136,136,112,2,90,106,64,32,0,32,80,136, + 136,248,136,136,2,90,106,16,32,0,32,80,136,136,248,136, + 136,2,90,106,48,72,0,32,80,136,136,248,136,136,2,90, + 106,40,80,0,32,80,136,136,248,136,136,2,90,106,80,80, + 0,32,80,136,136,248,136,136,2,90,106,32,80,32,32,80, + 136,136,248,136,136,2,89,105,88,160,160,160,176,224,160,160, + 184,0,91,107,112,136,128,128,128,128,128,136,112,32,64,2, + 90,106,64,32,0,248,128,128,240,128,128,248,2,90,106,16, + 32,0,248,128,128,240,128,128,248,2,90,106,48,72,0,248, + 128,128,240,128,128,248,2,90,106,80,80,0,248,128,128,240, + 128,128,248,18,58,106,128,64,0,224,64,64,64,64,64,224, + 18,58,106,32,64,0,224,64,64,64,64,64,224,18,74,106, + 96,144,0,224,64,64,64,64,64,224,18,58,106,160,160,0, + 224,64,64,64,64,64,224,2,89,105,240,72,72,72,232,72, + 72,72,240,2,90,106,40,80,0,136,136,200,168,152,136,136, + 2,90,106,64,32,0,112,136,136,136,136,136,112,2,90,106, + 16,32,0,112,136,136,136,136,136,112,2,90,106,48,72,0, + 112,136,136,136,136,136,112,2,90,106,40,80,0,112,136,136, + 136,136,136,112,2,90,106,80,80,0,112,136,136,136,136,136, + 112,3,85,101,136,80,32,80,136,1,91,107,8,112,152,152, + 168,168,168,200,200,112,128,2,90,106,64,32,0,136,136,136, + 136,136,136,112,2,90,106,16,32,0,136,136,136,136,136,136, + 112,2,90,106,48,72,0,136,136,136,136,136,136,112,2,90, + 106,80,80,0,136,136,136,136,136,136,112,2,90,106,16,32, + 0,136,136,80,32,32,32,32,2,89,105,128,240,136,136,136, + 240,128,128,128,2,89,105,96,144,144,160,160,144,136,136,176, + 2,89,105,64,32,0,112,8,120,136,152,104,2,89,105,16, + 32,0,112,8,120,136,152,104,2,89,105,48,72,0,112,8, + 120,136,152,104,2,89,105,40,80,0,112,8,120,136,152,104, + 2,89,105,80,80,0,112,8,120,136,152,104,2,90,106,48, + 72,48,0,112,8,120,136,152,104,2,86,102,112,40,112,160, + 168,80,0,88,104,112,136,128,128,136,112,32,64,2,89,105, + 64,32,0,112,136,248,128,136,112,2,89,105,16,32,0,112, + 136,248,128,136,112,2,89,105,48,72,0,112,136,248,128,136, + 112,2,89,105,80,80,0,112,136,248,128,136,112,18,57,105, + 128,64,0,192,64,64,64,64,224,18,57,105,32,64,0,192, + 64,64,64,64,224,18,73,105,96,144,0,192,64,64,64,64, + 224,18,57,105,160,160,0,192,64,64,64,64,224,2,90,106, + 80,32,96,16,112,136,136,136,136,112,2,89,105,40,80,0, + 176,200,136,136,136,136,2,89,105,64,32,0,112,136,136,136, + 136,112,2,89,105,16,32,0,112,136,136,136,136,112,2,89, + 105,48,72,0,112,136,136,136,136,112,2,89,105,40,80,0, + 112,136,136,136,136,112,2,89,105,80,80,0,112,136,136,136, + 136,112,3,87,103,32,32,0,248,0,32,32,1,88,104,8, + 112,152,168,168,200,112,128,2,89,105,64,32,0,136,136,136, + 136,152,104,2,89,105,16,32,0,136,136,136,136,152,104,2, + 89,105,48,72,0,136,136,136,136,152,104,2,89,105,80,80, + 0,136,136,136,136,152,104,0,91,107,16,32,0,136,136,136, + 152,104,8,136,112,0,90,106,128,128,176,200,136,136,200,176, + 128,128,0,91,107,80,80,0,136,136,136,152,104,8,136,112 + }; +/* + Fontname: -Misc-Fixed-Medium-O-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 3 y=11 dx= 6 dy= 0 ascent=11 len=11 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13O[2162] U8G_SECTION(".progmem.u8g_font_6x13O") = { + 1,6,13,0,254,9,1,104,2,216,32,255,254,11,254,10, + 254,13,0,96,34,41,105,64,64,64,64,128,128,128,0,128, + 40,67,99,80,80,160,3,103,103,40,40,124,40,248,80,80, + 2,105,105,16,60,80,80,56,36,40,240,32,2,105,105,36, + 84,40,8,16,32,80,168,144,2,104,104,16,40,40,48,80, + 148,152,104,56,35,99,64,64,128,17,75,107,16,32,64,64, + 128,128,128,128,64,64,32,17,75,107,64,32,32,16,16,16, + 16,32,32,64,128,3,103,103,16,84,124,56,124,168,32,20, + 69,101,32,32,240,64,64,17,51,99,96,64,128,22,65,97, + 240,17,51,99,64,224,64,2,105,105,4,4,8,16,16,32, + 64,128,128,2,105,105,16,40,68,68,68,136,136,80,32,2, + 89,105,16,48,80,16,16,32,32,32,248,2,105,105,56,68, + 68,8,16,32,64,128,248,2,105,105,124,4,8,16,56,4, + 8,136,112,2,89,105,8,8,24,40,40,72,248,16,16,2, + 105,105,124,64,64,88,100,4,8,136,112,2,105,105,56,68, + 64,64,112,136,136,136,112,18,89,105,248,8,16,16,32,64, + 64,128,128,2,105,105,56,68,68,68,120,136,136,136,112,2, + 105,105,56,68,68,68,56,8,8,136,112,17,72,104,32,112, + 32,0,0,64,224,64,17,72,104,32,112,32,0,0,96,64, + 128,18,89,105,8,16,32,64,128,64,64,32,16,4,100,100, + 124,0,0,248,2,105,105,64,32,16,8,4,8,48,64,128, + 18,89,105,112,136,136,8,16,32,64,0,64,2,105,105,56, + 68,68,88,168,168,144,128,120,2,105,105,16,40,68,68,68, + 248,136,136,136,2,105,105,120,36,36,36,56,72,72,72,240, + 2,105,105,56,68,64,64,64,128,128,136,112,2,105,105,120, + 36,36,36,36,72,72,72,240,2,105,105,124,64,64,64,120, + 128,128,128,248,2,105,105,124,64,64,64,120,128,128,128,128, + 2,105,105,56,68,64,64,64,152,136,136,112,2,105,105,68, + 68,68,68,124,136,136,136,136,18,73,105,112,32,32,32,32, + 64,64,64,224,2,105,105,28,8,8,8,8,16,16,144,96, + 2,105,105,68,68,72,80,96,160,144,136,136,2,89,105,64, + 64,64,64,64,128,128,128,248,2,105,105,68,68,108,84,84, + 136,136,136,136,2,105,105,68,100,100,84,84,152,136,136,136, + 2,105,105,56,68,68,68,68,136,136,136,112,2,105,105,120, + 68,68,68,120,128,128,128,128,1,106,106,56,68,68,68,68, + 136,136,168,112,8,2,105,105,120,68,68,68,120,144,144,136, + 136,2,105,105,56,68,64,64,48,8,8,136,112,18,89,105, + 248,32,32,32,32,64,64,64,64,2,105,105,68,68,68,68, + 68,136,136,136,112,18,89,105,136,136,136,136,144,144,160,160, + 64,2,105,105,68,68,68,68,168,168,168,168,80,2,105,105, + 68,68,40,40,16,48,72,136,136,18,89,105,136,136,80,80, + 32,32,64,64,64,2,105,105,124,4,8,8,16,32,64,128, + 248,1,91,107,56,32,32,32,64,64,64,128,128,128,224,18, + 73,105,128,128,64,64,64,32,32,16,16,1,91,107,56,8, + 8,8,16,16,16,32,32,32,224,24,83,99,32,80,136,1, + 81,97,248,58,34,98,128,64,2,102,102,56,4,124,136,152, + 104,2,105,105,64,64,64,120,68,136,136,136,240,2,102,102, + 56,68,128,128,136,112,2,105,105,4,4,4,60,68,136,136, + 136,120,2,102,102,56,68,124,128,136,112,18,89,105,48,72, + 64,64,240,64,128,128,128,0,104,104,56,68,68,136,120,8, + 136,112,2,105,105,32,32,32,88,100,68,136,136,136,18,56, + 104,32,0,96,32,32,64,64,224,0,90,106,8,0,24,8, + 8,16,16,144,144,96,2,89,105,32,32,32,72,80,96,160, + 144,136,18,73,105,48,16,16,32,32,32,64,64,224,2,102, + 102,104,84,84,168,168,136,2,102,102,88,100,68,136,136,136, + 2,102,102,56,68,68,136,136,112,0,104,104,120,68,68,136, + 240,128,128,128,0,104,104,60,68,132,136,120,8,16,16,2, + 102,102,88,100,64,128,128,128,2,102,102,56,68,32,16,136, + 112,18,72,104,32,32,240,64,64,128,144,96,2,102,102,68, + 68,136,136,152,104,18,86,102,136,136,136,144,160,64,2,102, + 102,68,68,84,168,168,80,2,102,102,68,40,16,32,80,136, + 0,104,104,68,68,136,152,104,8,144,96,2,102,102,124,8, + 16,96,128,248,1,91,107,24,32,32,32,32,192,32,64,64, + 64,48,34,41,105,64,64,64,64,64,128,128,128,128,1,107, + 107,96,16,16,16,16,12,16,32,32,32,192,24,83,99,72, + 168,144,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,13,0,96,34,41,105,64,0,64,64,64,128,128, + 128,128,3,104,104,16,56,84,80,160,168,112,32,2,105,105, + 24,36,32,32,112,32,64,72,176,3,102,102,68,56,40,80, + 112,136,2,105,105,68,68,40,40,124,32,248,32,32,34,41, + 105,64,64,64,64,0,128,128,128,128,18,90,106,48,72,64, + 48,72,72,48,16,144,96,58,50,98,160,160,2,105,105,56, + 68,84,108,100,216,168,136,112,4,103,103,56,4,124,136,120, + 0,248,19,86,102,40,80,160,160,160,80,20,83,99,248,8, + 16,38,49,97,224,3,105,105,56,68,116,108,108,232,216,136, + 112,26,81,97,248,23,68,100,96,144,144,96,19,71,103,32, + 32,240,64,64,0,240,23,69,101,32,80,32,64,224,23,69, + 101,96,16,96,32,192,58,34,98,64,128,0,104,104,36,36, + 68,72,88,168,128,128,18,89,105,120,232,232,232,232,80,80, + 80,80,54,33,97,192,32,34,98,64,128,23,53,101,32,96, + 64,64,224,4,103,103,56,68,68,136,112,0,248,19,86,102, + 80,40,40,40,80,160,18,90,106,32,96,64,64,224,8,56, + 80,112,16,18,90,106,32,96,64,64,224,16,40,16,32,112, + 18,90,106,96,16,96,32,192,8,56,80,112,16,2,89,105, + 16,0,16,16,32,64,136,136,112,2,106,106,32,16,0,16, + 40,68,68,248,136,136,2,106,106,8,16,0,16,40,68,68, + 248,136,136,2,106,106,24,36,0,16,40,68,68,248,136,136, + 2,106,106,20,40,0,16,40,68,68,248,136,136,2,106,106, + 40,40,0,16,40,68,68,248,136,136,2,106,106,16,40,16, + 16,40,68,68,248,136,136,2,105,105,44,80,80,80,88,224, + 160,160,184,0,107,107,56,68,64,64,64,128,128,136,112,32, + 64,2,106,106,32,16,0,124,64,64,120,128,128,248,2,106, + 106,8,16,0,124,64,64,120,128,128,248,2,106,106,24,36, + 0,124,64,64,120,128,128,248,2,106,106,40,40,0,124,64, + 64,120,128,128,248,18,74,106,64,32,0,112,32,32,32,64, + 64,224,18,74,106,16,32,0,112,32,32,32,64,64,224,18, + 90,106,48,72,0,112,32,32,32,64,64,224,18,74,106,80, + 80,0,112,32,32,32,64,64,224,2,105,105,120,36,36,36, + 116,36,72,72,240,2,106,106,20,40,0,68,68,100,88,136, + 136,136,2,106,106,32,16,0,56,68,68,68,136,136,112,2, + 106,106,8,16,0,56,68,68,68,136,136,112,2,106,106,24, + 36,0,56,68,68,68,136,136,112,2,106,106,20,40,0,56, + 68,68,68,136,136,112,2,106,106,40,40,0,56,68,68,68, + 136,136,112,3,101,101,68,40,48,80,136,1,107,107,4,60, + 76,76,84,84,168,232,232,112,128,2,106,106,32,16,0,68, + 68,68,136,136,136,112,2,106,106,8,16,0,68,68,68,136, + 136,136,112,2,106,106,24,36,0,68,68,68,136,136,136,112, + 2,106,106,40,40,0,68,68,68,136,136,136,112,18,90,106, + 16,32,0,136,136,80,32,64,64,64,2,105,105,64,120,68, + 68,72,240,128,128,128,2,89,105,48,72,72,80,80,144,136, + 136,176,2,105,105,32,16,0,56,4,124,136,152,104,2,105, + 105,8,16,0,56,4,124,136,152,104,2,105,105,24,36,0, + 56,4,124,136,152,104,2,105,105,20,40,0,56,4,124,136, + 152,104,2,105,105,40,40,0,56,4,124,136,152,104,2,106, + 106,24,36,24,0,56,4,124,136,152,104,2,102,102,56,20, + 120,160,168,80,0,104,104,56,68,64,128,136,112,32,64,2, + 105,105,32,16,0,56,68,124,128,136,112,2,105,105,8,16, + 0,56,68,124,128,136,112,2,105,105,24,36,0,56,68,124, + 128,136,112,2,105,105,40,40,0,56,68,124,128,136,112,18, + 57,105,64,32,0,96,32,32,64,64,224,18,73,105,16,32, + 0,96,32,32,64,64,224,18,89,105,48,72,0,96,32,32, + 64,64,224,18,73,105,80,80,0,96,32,32,64,64,224,2, + 106,106,32,24,48,8,56,68,68,136,136,112,2,105,105,20, + 40,0,88,100,68,136,136,136,2,105,105,32,16,0,56,68, + 68,136,136,112,2,105,105,8,16,0,56,68,68,136,136,112, + 2,105,105,24,36,0,56,68,68,136,136,112,2,105,105,20, + 40,0,56,68,68,136,136,112,2,105,105,40,40,0,56,68, + 68,136,136,112,19,87,103,32,32,0,248,0,64,64,1,104, + 104,4,56,76,84,168,200,112,128,2,105,105,32,16,0,68, + 68,68,136,152,104,2,105,105,8,16,0,68,68,68,136,152, + 104,2,105,105,24,36,0,68,68,68,136,152,104,2,105,105, + 40,40,0,68,68,68,136,152,104,0,107,107,8,16,0,68, + 68,136,152,104,8,144,96,0,106,106,64,64,88,100,68,136, + 200,176,128,128,0,107,107,40,40,0,68,68,136,152,104,8, + 144,96}; +/* + Fontname: -Misc-Fixed-Medium-O-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 3 y=11 dx= 6 dy= 0 ascent=11 len=11 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13Or[1043] U8G_SECTION(".progmem.u8g_font_6x13Or") = { + 1,6,13,0,254,9,1,104,2,216,32,127,254,11,254,10, + 254,13,0,96,34,41,105,64,64,64,64,128,128,128,0,128, + 40,67,99,80,80,160,3,103,103,40,40,124,40,248,80,80, + 2,105,105,16,60,80,80,56,36,40,240,32,2,105,105,36, + 84,40,8,16,32,80,168,144,2,104,104,16,40,40,48,80, + 148,152,104,56,35,99,64,64,128,17,75,107,16,32,64,64, + 128,128,128,128,64,64,32,17,75,107,64,32,32,16,16,16, + 16,32,32,64,128,3,103,103,16,84,124,56,124,168,32,20, + 69,101,32,32,240,64,64,17,51,99,96,64,128,22,65,97, + 240,17,51,99,64,224,64,2,105,105,4,4,8,16,16,32, + 64,128,128,2,105,105,16,40,68,68,68,136,136,80,32,2, + 89,105,16,48,80,16,16,32,32,32,248,2,105,105,56,68, + 68,8,16,32,64,128,248,2,105,105,124,4,8,16,56,4, + 8,136,112,2,89,105,8,8,24,40,40,72,248,16,16,2, + 105,105,124,64,64,88,100,4,8,136,112,2,105,105,56,68, + 64,64,112,136,136,136,112,18,89,105,248,8,16,16,32,64, + 64,128,128,2,105,105,56,68,68,68,120,136,136,136,112,2, + 105,105,56,68,68,68,56,8,8,136,112,17,72,104,32,112, + 32,0,0,64,224,64,17,72,104,32,112,32,0,0,96,64, + 128,18,89,105,8,16,32,64,128,64,64,32,16,4,100,100, + 124,0,0,248,2,105,105,64,32,16,8,4,8,48,64,128, + 18,89,105,112,136,136,8,16,32,64,0,64,2,105,105,56, + 68,68,88,168,168,144,128,120,2,105,105,16,40,68,68,68, + 248,136,136,136,2,105,105,120,36,36,36,56,72,72,72,240, + 2,105,105,56,68,64,64,64,128,128,136,112,2,105,105,120, + 36,36,36,36,72,72,72,240,2,105,105,124,64,64,64,120, + 128,128,128,248,2,105,105,124,64,64,64,120,128,128,128,128, + 2,105,105,56,68,64,64,64,152,136,136,112,2,105,105,68, + 68,68,68,124,136,136,136,136,18,73,105,112,32,32,32,32, + 64,64,64,224,2,105,105,28,8,8,8,8,16,16,144,96, + 2,105,105,68,68,72,80,96,160,144,136,136,2,89,105,64, + 64,64,64,64,128,128,128,248,2,105,105,68,68,108,84,84, + 136,136,136,136,2,105,105,68,100,100,84,84,152,136,136,136, + 2,105,105,56,68,68,68,68,136,136,136,112,2,105,105,120, + 68,68,68,120,128,128,128,128,1,106,106,56,68,68,68,68, + 136,136,168,112,8,2,105,105,120,68,68,68,120,144,144,136, + 136,2,105,105,56,68,64,64,48,8,8,136,112,18,89,105, + 248,32,32,32,32,64,64,64,64,2,105,105,68,68,68,68, + 68,136,136,136,112,18,89,105,136,136,136,136,144,144,160,160, + 64,2,105,105,68,68,68,68,168,168,168,168,80,2,105,105, + 68,68,40,40,16,48,72,136,136,18,89,105,136,136,80,80, + 32,32,64,64,64,2,105,105,124,4,8,8,16,32,64,128, + 248,1,91,107,56,32,32,32,64,64,64,128,128,128,224,18, + 73,105,128,128,64,64,64,32,32,16,16,1,91,107,56,8, + 8,8,16,16,16,32,32,32,224,24,83,99,32,80,136,1, + 81,97,248,58,34,98,128,64,2,102,102,56,4,124,136,152, + 104,2,105,105,64,64,64,120,68,136,136,136,240,2,102,102, + 56,68,128,128,136,112,2,105,105,4,4,4,60,68,136,136, + 136,120,2,102,102,56,68,124,128,136,112,18,89,105,48,72, + 64,64,240,64,128,128,128,0,104,104,56,68,68,136,120,8, + 136,112,2,105,105,32,32,32,88,100,68,136,136,136,18,56, + 104,32,0,96,32,32,64,64,224,0,90,106,8,0,24,8, + 8,16,16,144,144,96,2,89,105,32,32,32,72,80,96,160, + 144,136,18,73,105,48,16,16,32,32,32,64,64,224,2,102, + 102,104,84,84,168,168,136,2,102,102,88,100,68,136,136,136, + 2,102,102,56,68,68,136,136,112,0,104,104,120,68,68,136, + 240,128,128,128,0,104,104,60,68,132,136,120,8,16,16,2, + 102,102,88,100,64,128,128,128,2,102,102,56,68,32,16,136, + 112,18,72,104,32,32,240,64,64,128,144,96,2,102,102,68, + 68,136,136,152,104,18,86,102,136,136,136,144,160,64,2,102, + 102,68,68,84,168,168,80,2,102,102,68,40,16,32,80,136, + 0,104,104,68,68,136,152,104,8,144,96,2,102,102,124,8, + 16,96,128,248,1,91,107,24,32,32,32,32,192,32,64,64, + 64,48,34,41,105,64,64,64,64,64,128,128,128,128,1,107, + 107,96,16,16,16,16,12,16,32,32,32,192,24,83,99,72, + 168,144,255}; +/* + Fontname: -Misc-Fixed-Medium-R-SemiCondensed--13-120-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 5 h=11 x= 2 y=11 dx= 6 dy= 0 ascent=11 len=11 + Font Bounding box w= 6 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_6x13r[1041] U8G_SECTION(".progmem.u8g_font_6x13r") = { + 1,6,13,0,254,9,1,102,2,214,32,127,254,11,254,10, + 254,13,0,96,34,25,105,128,128,128,128,128,128,128,0,128, + 24,51,99,160,160,160,3,87,103,80,80,248,80,248,80,80, + 2,89,105,32,120,160,160,112,40,40,240,32,2,89,105,72, + 168,80,16,32,64,80,168,144,2,88,104,64,160,160,64,160, + 152,144,104,40,19,99,128,128,128,17,59,107,32,64,64,128, + 128,128,128,128,64,64,32,17,59,107,128,64,64,32,32,32, + 32,32,64,64,128,6,85,101,32,168,112,168,32,4,85,101, + 32,32,248,32,32,17,51,99,96,64,128,6,81,97,248,17, + 51,99,64,224,64,2,89,105,8,8,16,16,32,64,64,128, + 128,2,89,105,32,80,136,136,136,136,136,80,32,2,89,105, + 32,96,160,32,32,32,32,32,248,2,89,105,112,136,136,8, + 16,32,64,128,248,2,89,105,248,8,16,32,112,8,8,136, + 112,2,89,105,16,16,48,80,80,144,248,16,16,2,89,105, + 248,128,128,176,200,8,8,136,112,2,89,105,112,136,128,128, + 240,136,136,136,112,2,89,105,248,8,16,16,32,32,64,64, + 64,2,89,105,112,136,136,136,112,136,136,136,112,2,89,105, + 112,136,136,136,120,8,8,136,112,17,56,104,64,224,64,0, + 0,64,224,64,17,56,104,64,224,64,0,0,96,64,128,2, + 89,105,8,16,32,64,128,64,32,16,8,4,84,100,248,0, + 0,248,2,89,105,128,64,32,16,8,16,32,64,128,2,89, + 105,112,136,136,8,16,32,32,0,32,2,89,105,112,136,136, + 152,168,168,176,128,120,2,89,105,32,80,136,136,136,248,136, + 136,136,2,89,105,240,72,72,72,112,72,72,72,240,2,89, + 105,112,136,128,128,128,128,128,136,112,2,89,105,240,72,72, + 72,72,72,72,72,240,2,89,105,248,128,128,128,240,128,128, + 128,248,2,89,105,248,128,128,128,240,128,128,128,128,2,89, + 105,112,136,128,128,128,152,136,136,112,2,89,105,136,136,136, + 136,248,136,136,136,136,18,57,105,224,64,64,64,64,64,64, + 64,224,2,89,105,56,16,16,16,16,16,16,144,96,2,89, + 105,136,136,144,160,192,160,144,136,136,2,89,105,128,128,128, + 128,128,128,128,128,248,2,89,105,136,136,216,168,168,136,136, + 136,136,2,89,105,136,200,200,168,168,152,152,136,136,2,89, + 105,112,136,136,136,136,136,136,136,112,2,89,105,240,136,136, + 136,240,128,128,128,128,1,90,106,112,136,136,136,136,136,136, + 168,112,8,2,89,105,240,136,136,136,240,160,144,136,136,2, + 89,105,112,136,128,128,112,8,8,136,112,2,89,105,248,32, + 32,32,32,32,32,32,32,2,89,105,136,136,136,136,136,136, + 136,136,112,2,89,105,136,136,136,136,80,80,80,32,32,2, + 89,105,136,136,136,136,168,168,168,168,80,2,89,105,136,136, + 80,80,32,80,80,136,136,2,89,105,136,136,80,80,32,32, + 32,32,32,2,89,105,248,8,16,16,32,64,64,128,248,17, + 59,107,224,128,128,128,128,128,128,128,128,128,224,2,89,105, + 128,128,64,64,32,16,16,8,8,17,59,107,224,32,32,32, + 32,32,32,32,32,32,224,8,83,99,32,80,136,1,81,97, + 248,42,34,98,128,64,2,86,102,112,8,120,136,152,104,2, + 89,105,128,128,128,240,136,136,136,136,240,2,86,102,112,136, + 128,128,136,112,2,89,105,8,8,8,120,136,136,136,136,120, + 2,86,102,112,136,248,128,136,112,2,89,105,48,72,64,64, + 240,64,64,64,64,0,88,104,112,136,136,136,120,8,136,112, + 2,89,105,128,128,128,176,200,136,136,136,136,18,56,104,64, + 0,192,64,64,64,64,224,0,74,106,16,0,48,16,16,16, + 16,144,144,96,2,89,105,128,128,128,144,160,192,160,144,136, + 18,57,105,192,64,64,64,64,64,64,64,224,2,86,102,208, + 168,168,168,168,136,2,86,102,176,200,136,136,136,136,2,86, + 102,112,136,136,136,136,112,0,88,104,240,136,136,136,240,128, + 128,128,0,88,104,120,136,136,136,120,8,8,8,2,86,102, + 176,200,128,128,128,128,2,86,102,112,136,96,16,136,112,2, + 88,104,64,64,240,64,64,64,72,48,2,86,102,136,136,136, + 136,152,104,2,86,102,136,136,136,80,80,32,2,86,102,136, + 136,168,168,168,80,2,86,102,136,80,32,32,80,136,0,88, + 104,136,136,136,152,104,8,136,112,2,86,102,248,16,32,64, + 128,248,1,91,107,24,32,32,32,32,192,32,32,32,32,24, + 34,25,105,128,128,128,128,128,128,128,128,128,1,91,107,192, + 32,32,32,32,24,32,32,32,32,192,8,83,99,72,168,144, + 255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 3, '1' Height: 10 + Calculated Max Values w= 7 h=13 x= 6 y= 9 dx= 7 dy= 0 ascent=11 len=13 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 3 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13_67_75[2197] U8G_SECTION(".progmem.u8g_font_7x13_67_75") = { + 1,7,13,0,254,3,1,91,2,178,32,255,0,11,254,10, + 0,4,117,117,72,36,254,36,72,18,89,121,32,32,32,168, + 112,32,168,112,32,4,101,117,36,72,248,72,36,4,101,117, + 144,72,124,72,144,4,101,117,36,68,252,68,36,18,89,121, + 32,112,168,32,32,32,32,32,248,4,101,117,144,136,252,136, + 144,18,89,121,248,32,32,32,32,32,168,112,32,18,89,121, + 32,112,168,32,32,168,112,32,248,4,117,117,36,66,252,64, + 32,4,117,117,72,132,126,4,8,4,117,117,36,74,252,72, + 40,4,117,117,72,164,126,36,40,4,117,117,40,84,238,68, + 40,4,117,117,40,84,254,84,40,2,106,122,64,64,128,152, + 104,8,16,84,56,16,2,106,122,32,64,252,68,36,4,4, + 4,4,4,2,106,122,16,8,252,136,144,128,128,128,128,128, + 2,106,122,4,4,4,4,4,36,68,252,64,32,2,106,122, + 128,128,128,128,128,144,136,252,8,16,2,104,120,240,16,16, + 16,16,84,56,16,2,90,122,8,8,8,8,8,40,72,248, + 64,32,4,119,119,28,34,34,34,170,112,32,4,119,119,112, + 136,136,136,170,28,8,2,120,120,254,0,224,192,160,16,8, + 4,2,121,121,144,160,254,160,146,10,254,10,18,4,119,119, + 72,156,170,136,136,136,112,4,119,119,36,114,170,34,34,34, + 28,6,99,115,32,64,252,4,99,115,252,64,32,50,57,121, + 128,192,160,128,128,128,128,128,128,18,57,121,32,96,160,32, + 32,32,32,32,32,6,99,115,16,8,252,4,99,115,252,8, + 16,50,57,121,128,128,128,128,128,128,160,192,128,18,57,121, + 32,32,32,32,32,32,160,96,32,2,105,121,16,8,252,8, + 48,64,252,64,32,2,122,122,40,120,168,40,40,40,40,42, + 60,40,2,105,121,32,64,252,64,48,8,252,8,16,2,105, + 121,32,64,252,64,32,64,252,64,32,2,121,121,68,238,68, + 68,68,68,68,68,68,2,105,121,16,8,252,8,16,8,252, + 8,16,2,122,122,68,68,68,68,68,68,68,68,238,68,3, + 103,119,32,64,252,0,252,8,16,3,103,119,16,8,252,0, + 252,64,32,3,119,119,16,34,126,132,126,40,16,4,117,117, + 40,124,146,124,40,3,119,119,16,40,252,66,252,136,16,3, + 119,119,16,32,126,128,126,32,16,2,121,121,16,40,108,170, + 40,40,40,40,40,3,119,119,16,8,252,2,252,8,16,2, + 121,121,40,40,40,40,40,170,108,40,16,4,117,117,40,124, + 130,124,40,2,122,122,16,40,108,170,40,40,170,108,40,16, + 2,119,119,252,144,136,196,162,144,8,2,119,119,126,18,34, + 70,138,18,32,2,119,119,32,18,138,70,34,18,126,2,119, + 119,8,144,162,196,136,144,252,2,121,121,8,16,62,64,254, + 64,62,16,8,2,121,121,32,16,248,4,254,4,248,16,32, + 4,117,117,32,72,254,68,32,4,117,117,8,36,254,68,8, + 18,89,121,32,112,168,32,248,32,248,32,32,18,89,121,32, + 32,248,32,248,32,168,112,32,3,119,119,16,32,64,182,64, + 32,16,2,122,122,16,40,84,146,0,16,16,0,16,16,3, + 119,119,16,8,4,218,4,8,16,2,122,122,16,16,0,16, + 16,0,146,84,40,16,4,117,117,144,160,254,160,144,4,117, + 117,18,10,254,10,18,3,119,119,16,48,94,130,94,48,16, + 2,121,121,16,40,68,238,40,40,40,40,56,3,119,119,16, + 24,244,130,244,24,16,2,121,121,56,40,40,40,40,238,68, + 40,16,1,124,124,16,40,68,238,40,40,40,56,0,56,40, + 56,1,122,122,16,40,68,238,40,40,40,108,68,124,1,122, + 122,16,40,68,254,40,40,40,108,68,124,1,122,122,16,40, + 68,254,56,56,56,124,68,124,2,121,121,16,40,68,238,68, + 238,40,40,56,1,122,122,16,40,68,238,68,238,40,108,68, + 124,3,119,119,144,152,244,130,244,152,144,2,119,119,254,128, + 188,176,168,164,130,2,119,119,130,74,42,26,122,2,254,2, + 121,121,16,40,68,238,40,238,68,40,16,255,255,255,255,255, + 255,255,255,255,255,255,255,7,118,118,254,254,254,254,254,254, + 0,114,114,254,254,0,115,115,254,254,254,0,117,117,254,254, + 254,254,254,0,119,119,254,254,254,254,254,254,254,0,120,120, + 254,254,254,254,254,254,254,254,0,122,122,254,254,254,254,254, + 254,254,254,254,254,0,123,123,254,254,254,254,254,254,254,254, + 254,254,254,0,125,125,254,254,254,254,254,254,254,254,254,254, + 254,254,254,0,109,125,252,252,252,252,252,252,252,252,252,252, + 252,252,252,0,93,125,248,248,248,248,248,248,248,248,248,248, + 248,248,248,0,77,125,240,240,240,240,240,240,240,240,240,240, + 240,240,240,0,77,125,240,240,240,240,240,240,240,240,240,240, + 240,240,240,0,61,125,224,224,224,224,224,224,224,224,224,224, + 224,224,224,0,45,125,192,192,192,192,192,192,192,192,192,192, + 192,192,192,0,29,125,128,128,128,128,128,128,128,128,128,128, + 128,128,128,64,61,125,224,224,224,224,224,224,224,224,224,224, + 224,224,224,1,123,123,84,0,170,0,84,0,170,0,84,0, + 170,0,125,125,170,84,170,84,170,84,170,84,170,84,170,84, + 170,0,125,125,254,84,254,170,254,84,254,170,254,84,254,170, + 254,11,114,114,254,254,96,29,125,128,128,128,128,128,128,128, + 128,128,128,128,128,128,0,71,119,240,240,240,240,240,240,240, + 64,55,119,224,224,224,224,224,224,224,7,70,118,240,240,240, + 240,240,240,0,125,125,240,240,240,240,240,240,254,254,254,254, + 254,254,254,0,125,125,240,240,240,240,240,240,14,14,14,14, + 14,14,14,0,125,125,254,254,254,254,254,254,240,240,240,240, + 240,240,240,0,125,125,254,254,254,254,254,254,14,14,14,14, + 14,14,14,71,54,118,224,224,224,224,224,224,0,125,125,14, + 14,14,14,14,14,240,240,240,240,240,240,240,0,125,125,14, + 14,14,14,14,14,254,254,254,254,254,254,254,3,119,119,254, + 254,254,254,254,254,254,3,119,119,254,130,130,130,130,130,254, + 3,119,119,124,130,130,130,130,130,124,3,119,119,254,130,186, + 186,186,130,254,3,119,119,254,130,254,130,254,130,254,3,119, + 119,254,170,170,170,170,170,254,3,119,119,254,170,254,170,254, + 170,254,3,119,119,254,146,138,198,162,146,254,3,119,119,254, + 146,162,198,138,146,254,3,119,119,254,214,170,214,170,214,254, + 20,85,117,248,248,248,248,248,20,85,117,248,136,136,136,248, + 4,117,117,254,254,254,254,254,4,117,117,254,130,130,130,254, + 19,87,119,248,248,248,248,248,248,248,19,87,119,248,136,136, + 136,136,136,248,4,117,117,62,126,254,252,248,4,117,117,62, + 66,130,132,248,2,120,120,16,16,56,56,124,124,254,254,2, + 120,120,16,16,40,40,68,68,130,254,19,86,118,32,32,112, + 112,248,248,19,86,118,32,32,80,80,136,248,3,119,119,128, + 224,248,254,248,224,128,3,119,119,128,224,152,134,152,224,128, + 4,101,117,192,240,252,240,192,4,101,117,192,176,140,176,192, + 4,117,117,128,240,254,240,128,4,117,117,128,240,142,240,128, + 2,120,120,254,254,124,124,56,56,16,16,2,120,120,254,130, + 68,68,40,40,16,16,19,86,118,248,248,112,112,32,32,19, + 86,118,248,136,80,80,32,32,3,119,119,2,14,62,254,62, + 14,2,3,119,119,2,14,50,194,50,14,2,4,101,117,12, + 60,252,60,12,4,101,117,12,52,196,52,12,4,117,117,2, + 30,254,30,2,4,117,117,2,30,226,30,2,2,119,119,16, + 56,124,254,124,56,16,2,119,119,16,40,68,130,68,40,16, + 2,119,119,16,40,84,186,84,40,16,3,119,119,56,68,146, + 186,146,68,56,18,89,121,32,32,80,80,136,80,80,32,32, + 3,119,119,56,68,130,130,130,68,56,3,119,119,40,0,130, + 0,130,0,40,3,119,119,56,108,170,170,170,108,56,3,119, + 119,56,68,146,170,146,68,56,3,119,119,56,124,254,254,254, + 124,56,3,119,119,56,116,242,242,242,116,56,3,119,119,56, + 92,158,158,158,92,56,3,119,119,56,68,130,254,254,124,56, + 3,119,119,56,124,254,254,130,68,56,3,119,119,56,92,158, + 158,130,68,56,3,119,119,56,76,142,142,254,124,56,51,71, + 119,192,224,240,240,240,224,192,3,71,119,48,112,240,240,240, + 112,48,0,125,125,254,254,254,254,198,130,130,130,198,254,254, + 254,254,0,125,125,254,254,254,254,198,186,186,186,198,254,254, + 254,254,6,119,119,254,254,254,254,198,186,186,0,119,119,186, + 186,198,254,254,254,254,6,68,116,48,64,128,128,54,68,116, + 192,32,16,16,51,68,116,16,16,32,192,3,68,116,128,128, + 64,48,6,116,116,56,68,130,130,3,116,116,130,130,68,56, + 3,119,119,2,6,14,30,62,126,254,3,119,119,128,192,224, + 240,248,252,254,3,119,119,254,252,248,240,224,192,128,3,119, + 119,254,126,62,30,14,6,2,20,85,117,112,136,136,136,112, + 3,119,119,254,226,226,226,226,226,254,3,119,119,254,142,142, + 142,142,142,254,3,119,119,254,254,250,242,226,194,254,3,119, + 119,254,134,142,158,190,254,254,3,119,119,254,146,146,146,146, + 146,254,2,120,120,16,16,40,40,84,124,146,254,2,120,120, + 16,16,56,56,116,116,242,254,2,120,120,16,16,56,56,92, + 92,158,254,3,119,119,56,68,130,130,130,68,56,2,119,119, + 254,146,146,242,130,130,254,2,119,119,254,130,130,242,146,146, + 254,2,119,119,254,130,130,158,146,146,254,2,119,119,254,146, + 146,158,130,130,254,2,119,119,56,84,146,242,130,68,56,2, + 119,119,56,68,130,242,146,84,56,2,119,119,56,68,130,158, + 146,84,56,2,119,119,56,84,146,158,130,68,56,255,255,255, + 255,255,255,255,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 7, '1' Height: 5 + Calculated Max Values w= 7 h= 9 x= 1 y= 2 dx= 7 dy= 0 ascent= 9 len= 9 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 7 descent= 0 + X Font ascent = 8 descent= 0 + Max Font ascent = 9 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13_75r[471] U8G_SECTION(".progmem.u8g_font_7x13_75r") = { + 1,7,13,0,254,7,1,71,0,0,32,79,0,9,0,8, + 0,3,119,119,254,254,254,254,254,254,254,3,119,119,254,130, + 130,130,130,130,254,3,119,119,124,130,130,130,130,130,124,3, + 119,119,254,130,186,186,186,130,254,3,119,119,254,130,254,130, + 254,130,254,3,119,119,254,170,170,170,170,170,254,3,119,119, + 254,170,254,170,254,170,254,3,119,119,254,146,138,198,162,146, + 254,3,119,119,254,146,162,198,138,146,254,3,119,119,254,214, + 170,214,170,214,254,20,85,117,248,248,248,248,248,20,85,117, + 248,136,136,136,248,4,117,117,254,254,254,254,254,4,117,117, + 254,130,130,130,254,19,87,119,248,248,248,248,248,248,248,19, + 87,119,248,136,136,136,136,136,248,4,117,117,62,126,254,252, + 248,4,117,117,62,66,130,132,248,2,120,120,16,16,56,56, + 124,124,254,254,2,120,120,16,16,40,40,68,68,130,254,19, + 86,118,32,32,112,112,248,248,19,86,118,32,32,80,80,136, + 248,3,119,119,128,224,248,254,248,224,128,3,119,119,128,224, + 152,134,152,224,128,4,101,117,192,240,252,240,192,4,101,117, + 192,176,140,176,192,4,117,117,128,240,254,240,128,4,117,117, + 128,240,142,240,128,2,120,120,254,254,124,124,56,56,16,16, + 2,120,120,254,130,68,68,40,40,16,16,19,86,118,248,248, + 112,112,32,32,19,86,118,248,136,80,80,32,32,3,119,119, + 2,14,62,254,62,14,2,3,119,119,2,14,50,194,50,14, + 2,4,101,117,12,60,252,60,12,4,101,117,12,52,196,52, + 12,4,117,117,2,30,254,30,2,4,117,117,2,30,226,30, + 2,2,119,119,16,56,124,254,124,56,16,2,119,119,16,40, + 68,130,68,40,16,2,119,119,16,40,84,186,84,40,16,3, + 119,119,56,68,146,186,146,68,56,18,89,121,32,32,80,80, + 136,80,80,32,32,3,119,119,56,68,130,130,130,68,56,3, + 119,119,40,0,130,0,130,0,40,3,119,119,56,108,170,170, + 170,108,56,3,119,119,56,68,146,170,146,68,56,3,119,119, + 56,124,254,254,254,124,56}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 2 y=11 dx= 7 dy= 0 ascent=11 len=11 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent = 9 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13B[2172] U8G_SECTION(".progmem.u8g_font_7x13B") = { + 1,7,13,0,254,9,1,105,2,216,32,255,254,11,254,9, + 254,13,0,112,34,41,121,192,192,192,192,192,192,0,192,192, + 24,83,115,216,216,216,18,89,121,80,80,248,248,80,248,248, + 80,80,2,105,121,48,120,180,176,120,52,180,120,48,2,105, + 121,228,172,232,24,48,96,92,212,156,2,105,121,112,216,216, + 216,112,212,220,216,116,39,36,116,192,192,192,192,18,73,121, + 48,96,96,192,192,192,96,96,48,18,73,121,192,96,96,48, + 48,48,96,96,192,3,102,118,72,48,252,252,48,72,3,102, + 118,48,48,252,252,48,48,17,68,116,112,112,96,192,5,97, + 113,252,17,67,115,96,240,96,2,105,121,12,12,24,24,48, + 96,96,192,192,2,105,121,48,72,204,204,204,204,204,72,48, + 2,105,121,48,112,176,48,48,48,48,48,252,2,105,121,120, + 204,204,12,56,96,192,192,252,2,105,121,252,12,24,48,120, + 12,12,204,120,2,105,121,12,28,60,108,204,204,252,12,12, + 2,105,121,252,192,192,248,204,12,12,204,120,2,105,121,120, + 204,192,192,248,204,204,204,120,2,105,121,252,12,12,24,24, + 48,48,96,96,2,105,121,120,204,204,204,120,204,204,204,120, + 2,105,121,120,204,204,204,124,12,12,204,120,17,72,120,96, + 240,96,0,0,96,240,96,17,72,120,96,240,96,0,112,112, + 96,192,2,105,121,12,24,48,96,192,96,48,24,12,4,100, + 116,252,0,0,252,2,105,121,192,96,48,24,12,24,48,96, + 192,2,105,121,120,204,204,12,56,48,0,48,48,2,105,121, + 120,140,140,188,172,188,128,140,120,2,105,121,120,204,204,204, + 252,204,204,204,204,2,105,121,248,204,204,204,248,204,204,204, + 248,2,105,121,120,204,192,192,192,192,192,204,120,2,105,121, + 248,204,204,204,204,204,204,204,248,2,105,121,252,192,192,192, + 248,192,192,192,252,2,105,121,252,192,192,192,248,192,192,192, + 192,2,105,121,120,204,192,192,220,204,204,204,124,2,105,121, + 204,204,204,204,252,204,204,204,204,2,105,121,252,48,48,48, + 48,48,48,48,252,2,105,121,12,12,12,12,12,12,12,204, + 120,2,105,121,196,204,216,240,224,240,216,204,196,2,105,121, + 192,192,192,192,192,192,192,192,252,2,105,121,132,204,252,252, + 204,204,204,204,204,2,105,121,204,204,236,236,252,220,220,204, + 204,2,105,121,120,204,204,204,204,204,204,204,120,2,105,121, + 248,204,204,204,248,192,192,192,192,1,106,122,120,204,204,204, + 204,204,236,220,120,12,2,105,121,248,204,204,204,248,240,216, + 204,196,2,105,121,120,204,192,192,120,12,12,204,120,2,105, + 121,252,48,48,48,48,48,48,48,48,2,105,121,204,204,204, + 204,204,204,204,204,120,2,105,121,204,204,204,72,72,120,48, + 48,48,2,105,121,204,204,204,204,204,252,252,204,132,2,105, + 121,132,204,72,120,48,120,72,204,132,2,105,121,204,204,120, + 120,48,48,48,48,48,2,105,121,252,12,12,24,48,96,192, + 192,252,18,73,121,240,192,192,192,192,192,192,192,240,2,105, + 121,192,192,96,96,48,24,24,12,12,18,73,121,240,48,48, + 48,48,48,48,48,240,7,100,116,48,120,204,132,1,98,114, + 252,252,25,67,115,192,96,48,2,102,118,120,12,124,204,204, + 124,2,105,121,192,192,192,248,204,204,204,204,248,2,102,118, + 120,204,192,192,204,120,2,105,121,12,12,12,124,204,204,204, + 204,124,2,102,118,120,204,252,192,204,120,2,105,121,56,108, + 96,96,240,96,96,96,96,0,104,120,116,204,204,120,192,120, + 204,120,2,105,121,192,192,192,248,204,204,204,204,204,2,105, + 121,48,48,0,112,48,48,48,48,252,0,107,123,12,12,0, + 12,12,12,12,12,12,204,120,2,105,121,192,192,192,204,216, + 240,240,216,204,2,105,121,112,48,48,48,48,48,48,48,252, + 2,102,118,216,252,252,204,204,204,2,102,118,248,204,204,204, + 204,204,2,102,118,120,204,204,204,204,120,0,104,120,248,204, + 204,204,248,192,192,192,0,104,120,124,204,204,204,124,12,12, + 12,2,102,118,248,204,192,192,192,192,2,102,118,120,204,96, + 24,204,120,2,104,120,96,96,248,96,96,96,108,56,2,102, + 118,204,204,204,204,204,124,2,102,118,204,204,204,120,120,48, + 2,102,118,204,204,204,252,252,72,2,102,118,204,204,120,120, + 204,204,0,104,120,204,204,204,204,124,12,204,120,2,102,118, + 252,12,24,96,192,252,18,73,121,112,192,192,96,192,96,192, + 192,112,34,41,121,192,192,192,192,192,192,192,192,192,18,73, + 121,224,48,48,96,48,96,48,48,224,8,99,115,100,252,152, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,13,0,112,34,42,122,192,192,0,192,192,192,192,192,192, + 192,3,104,120,16,124,212,208,208,212,124,16,2,105,121,56, + 108,96,96,248,96,96,108,184,3,102,118,204,252,72,72,252, + 204,2,105,121,204,204,120,120,252,48,252,48,48,34,42,122, + 192,192,192,192,0,0,192,192,192,192,2,106,122,120,204,192, + 120,204,204,120,12,204,120,26,82,114,216,216,2,106,122,120, + 204,132,180,228,228,180,132,204,120,20,87,119,240,24,248,152, + 248,0,248,3,103,119,52,104,208,160,208,104,52,3,100,116, + 252,12,12,12,21,65,113,240,2,106,122,120,204,132,188,172, + 188,180,172,204,120,27,81,113,248,7,100,116,120,204,204,120, + 3,103,119,48,48,252,48,48,0,252,6,70,118,224,176,48, + 96,192,240,6,70,118,224,176,96,48,176,224,25,67,115,48, + 96,192,1,103,119,204,204,204,204,204,252,128,2,105,121,124, + 252,244,244,244,116,52,52,52,38,34,114,192,192,16,50,114, + 96,192,6,70,118,96,224,96,96,96,240,21,87,119,112,248, + 136,248,112,0,248,3,103,119,176,88,44,20,44,88,176,2, + 106,122,96,224,96,96,100,252,28,52,60,12,2,106,122,96, + 224,96,96,120,236,12,24,48,60,2,106,122,224,176,96,48, + 180,236,28,52,60,12,2,106,122,48,48,0,48,48,96,192, + 204,204,120,2,106,122,96,48,0,48,120,204,204,252,204,204, + 2,106,122,24,48,0,48,120,204,204,252,204,204,2,106,122, + 56,108,0,48,120,204,204,252,204,204,2,106,122,52,88,0, + 48,120,204,204,252,204,204,2,106,122,204,204,0,48,120,204, + 204,252,204,204,2,106,122,120,72,120,48,120,204,204,252,204, + 204,2,105,121,124,248,216,216,220,248,216,216,220,0,107,123, + 120,204,192,192,192,192,192,204,120,48,96,2,106,122,96,48, + 0,252,192,192,240,192,192,252,2,106,122,24,48,0,252,192, + 192,240,192,192,252,2,106,122,56,108,0,252,192,192,240,192, + 192,252,2,106,122,204,204,0,252,192,192,240,192,192,252,2, + 106,122,96,48,0,252,48,48,48,48,48,252,2,106,122,24, + 48,0,252,48,48,48,48,48,252,2,106,122,56,108,0,252, + 48,48,48,48,48,252,2,106,122,204,204,0,252,48,48,48, + 48,48,252,2,105,121,248,108,108,108,236,108,108,108,248,2, + 106,122,52,88,0,204,204,236,252,220,204,204,2,106,122,96, + 48,0,120,204,204,204,204,204,120,2,106,122,24,48,0,120, + 204,204,204,204,204,120,2,106,122,56,108,0,120,204,204,204, + 204,204,120,2,106,122,52,88,0,120,204,204,204,204,204,120, + 2,106,122,204,204,0,120,204,204,204,204,204,120,3,101,117, + 204,120,48,120,204,1,106,122,4,120,220,220,220,236,236,236, + 120,128,2,106,122,96,48,0,204,204,204,204,204,204,120,2, + 106,122,24,48,0,204,204,204,204,204,204,120,2,106,122,56, + 108,0,204,204,204,204,204,204,120,2,106,122,204,204,0,204, + 204,204,204,204,204,120,2,106,122,24,48,0,204,72,120,48, + 48,48,48,2,105,121,192,248,204,204,204,248,192,192,192,2, + 105,121,120,204,204,216,216,204,204,204,216,2,105,121,48,24, + 0,120,12,124,204,220,124,2,105,121,24,48,0,120,12,124, + 204,220,124,2,105,121,56,108,0,120,12,124,204,220,124,2, + 105,121,52,88,0,120,12,124,204,220,124,2,105,121,108,108, + 0,120,12,124,204,220,124,2,106,122,56,40,56,0,120,12, + 124,204,220,124,2,102,118,120,52,124,176,180,104,0,104,120, + 120,204,192,192,204,120,48,96,2,105,121,48,24,0,120,204, + 252,192,204,120,2,105,121,24,48,0,120,204,252,192,204,120, + 2,105,121,56,108,0,120,204,252,192,204,120,2,105,121,108, + 108,0,120,204,252,192,204,120,18,73,121,192,96,0,224,96, + 96,96,96,240,18,73,121,48,96,0,224,96,96,96,96,240, + 2,89,121,112,216,0,112,48,48,48,48,120,18,89,121,216, + 216,0,224,96,96,96,96,240,2,106,122,104,48,120,12,124, + 204,204,204,204,120,2,105,121,52,88,0,248,236,204,204,204, + 204,2,105,121,96,48,0,120,204,204,204,204,120,2,105,121, + 24,48,0,120,204,204,204,204,120,2,105,121,56,108,0,120, + 204,204,204,204,120,2,105,121,52,88,0,120,204,204,204,204, + 120,2,105,121,108,108,0,120,204,204,204,204,120,3,103,119, + 48,48,0,252,0,48,48,1,105,121,4,120,204,220,204,236, + 204,120,128,2,105,121,96,48,0,204,204,204,204,220,124,2, + 105,121,24,48,0,204,204,204,204,220,124,2,105,121,56,108, + 0,204,204,204,204,220,124,2,105,121,108,108,0,204,204,204, + 204,220,124,0,107,123,24,48,0,204,204,204,220,124,12,204, + 120,0,106,122,192,192,216,236,204,204,236,216,192,192,0,107, + 123,108,108,0,204,204,204,220,108,12,204,120}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 2 y=11 dx= 7 dy= 0 ascent=11 len=11 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent = 9 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13Br[1041] U8G_SECTION(".progmem.u8g_font_7x13Br") = { + 1,7,13,0,254,9,1,105,2,216,32,127,254,11,254,9, + 254,13,0,112,34,41,121,192,192,192,192,192,192,0,192,192, + 24,83,115,216,216,216,18,89,121,80,80,248,248,80,248,248, + 80,80,2,105,121,48,120,180,176,120,52,180,120,48,2,105, + 121,228,172,232,24,48,96,92,212,156,2,105,121,112,216,216, + 216,112,212,220,216,116,39,36,116,192,192,192,192,18,73,121, + 48,96,96,192,192,192,96,96,48,18,73,121,192,96,96,48, + 48,48,96,96,192,3,102,118,72,48,252,252,48,72,3,102, + 118,48,48,252,252,48,48,17,68,116,112,112,96,192,5,97, + 113,252,17,67,115,96,240,96,2,105,121,12,12,24,24,48, + 96,96,192,192,2,105,121,48,72,204,204,204,204,204,72,48, + 2,105,121,48,112,176,48,48,48,48,48,252,2,105,121,120, + 204,204,12,56,96,192,192,252,2,105,121,252,12,24,48,120, + 12,12,204,120,2,105,121,12,28,60,108,204,204,252,12,12, + 2,105,121,252,192,192,248,204,12,12,204,120,2,105,121,120, + 204,192,192,248,204,204,204,120,2,105,121,252,12,12,24,24, + 48,48,96,96,2,105,121,120,204,204,204,120,204,204,204,120, + 2,105,121,120,204,204,204,124,12,12,204,120,17,72,120,96, + 240,96,0,0,96,240,96,17,72,120,96,240,96,0,112,112, + 96,192,2,105,121,12,24,48,96,192,96,48,24,12,4,100, + 116,252,0,0,252,2,105,121,192,96,48,24,12,24,48,96, + 192,2,105,121,120,204,204,12,56,48,0,48,48,2,105,121, + 120,140,140,188,172,188,128,140,120,2,105,121,120,204,204,204, + 252,204,204,204,204,2,105,121,248,204,204,204,248,204,204,204, + 248,2,105,121,120,204,192,192,192,192,192,204,120,2,105,121, + 248,204,204,204,204,204,204,204,248,2,105,121,252,192,192,192, + 248,192,192,192,252,2,105,121,252,192,192,192,248,192,192,192, + 192,2,105,121,120,204,192,192,220,204,204,204,124,2,105,121, + 204,204,204,204,252,204,204,204,204,2,105,121,252,48,48,48, + 48,48,48,48,252,2,105,121,12,12,12,12,12,12,12,204, + 120,2,105,121,196,204,216,240,224,240,216,204,196,2,105,121, + 192,192,192,192,192,192,192,192,252,2,105,121,132,204,252,252, + 204,204,204,204,204,2,105,121,204,204,236,236,252,220,220,204, + 204,2,105,121,120,204,204,204,204,204,204,204,120,2,105,121, + 248,204,204,204,248,192,192,192,192,1,106,122,120,204,204,204, + 204,204,236,220,120,12,2,105,121,248,204,204,204,248,240,216, + 204,196,2,105,121,120,204,192,192,120,12,12,204,120,2,105, + 121,252,48,48,48,48,48,48,48,48,2,105,121,204,204,204, + 204,204,204,204,204,120,2,105,121,204,204,204,72,72,120,48, + 48,48,2,105,121,204,204,204,204,204,252,252,204,132,2,105, + 121,132,204,72,120,48,120,72,204,132,2,105,121,204,204,120, + 120,48,48,48,48,48,2,105,121,252,12,12,24,48,96,192, + 192,252,18,73,121,240,192,192,192,192,192,192,192,240,2,105, + 121,192,192,96,96,48,24,24,12,12,18,73,121,240,48,48, + 48,48,48,48,48,240,7,100,116,48,120,204,132,1,98,114, + 252,252,25,67,115,192,96,48,2,102,118,120,12,124,204,204, + 124,2,105,121,192,192,192,248,204,204,204,204,248,2,102,118, + 120,204,192,192,204,120,2,105,121,12,12,12,124,204,204,204, + 204,124,2,102,118,120,204,252,192,204,120,2,105,121,56,108, + 96,96,240,96,96,96,96,0,104,120,116,204,204,120,192,120, + 204,120,2,105,121,192,192,192,248,204,204,204,204,204,2,105, + 121,48,48,0,112,48,48,48,48,252,0,107,123,12,12,0, + 12,12,12,12,12,12,204,120,2,105,121,192,192,192,204,216, + 240,240,216,204,2,105,121,112,48,48,48,48,48,48,48,252, + 2,102,118,216,252,252,204,204,204,2,102,118,248,204,204,204, + 204,204,2,102,118,120,204,204,204,204,120,0,104,120,248,204, + 204,204,248,192,192,192,0,104,120,124,204,204,204,124,12,12, + 12,2,102,118,248,204,192,192,192,192,2,102,118,120,204,96, + 24,204,120,2,104,120,96,96,248,96,96,96,108,56,2,102, + 118,204,204,204,204,204,124,2,102,118,204,204,204,120,120,48, + 2,102,118,204,204,204,252,252,72,2,102,118,204,204,120,120, + 204,204,0,104,120,204,204,204,204,124,12,204,120,2,102,118, + 252,12,24,96,192,252,18,73,121,112,192,192,96,192,96,192, + 192,112,34,41,121,192,192,192,192,192,192,192,192,192,18,73, + 121,224,48,48,96,48,96,48,48,224,8,99,115,100,252,152, + 255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 3 y=11 dx= 7 dy= 0 ascent=11 len=11 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13[2157] U8G_SECTION(".progmem.u8g_font_7x13") = { + 1,7,13,0,254,9,1,95,2,207,32,255,254,11,254,10, + 254,13,0,112,50,25,121,128,128,128,128,128,128,128,0,128, + 40,51,115,160,160,160,19,87,119,80,80,248,80,248,80,80, + 19,87,119,32,120,160,112,40,240,32,2,105,121,68,164,72, + 16,16,32,72,148,136,2,103,119,96,144,144,96,148,136,116, + 56,19,115,128,128,128,34,57,121,32,64,64,128,128,128,64, + 64,32,34,57,121,128,64,64,32,32,32,64,64,128,4,101, + 117,72,48,252,48,72,20,85,117,32,32,248,32,32,17,67, + 115,112,96,128,22,81,113,248,33,51,115,64,224,64,18,89, + 121,8,8,16,16,32,64,64,128,128,2,105,121,48,72,132, + 132,132,132,132,72,48,18,89,121,32,96,160,32,32,32,32, + 32,248,2,105,121,120,132,132,4,8,48,64,128,252,2,105, + 121,252,4,8,16,56,4,4,132,120,2,105,121,8,24,40, + 72,136,136,252,8,8,2,105,121,252,128,128,184,196,4,4, + 132,120,2,105,121,56,64,128,128,184,196,132,132,120,2,105, + 121,252,4,8,16,16,32,32,64,64,2,105,121,120,132,132, + 132,120,132,132,132,120,2,105,121,120,132,132,140,116,4,4, + 8,112,33,56,120,64,224,64,0,0,64,224,64,17,72,120, + 32,112,32,0,0,112,96,128,18,89,121,8,16,32,64,128, + 64,32,16,8,4,100,116,252,0,0,252,18,89,121,128,64, + 32,16,8,16,32,64,128,2,105,121,120,132,132,4,8,16, + 16,0,16,2,105,121,120,132,132,156,164,172,148,128,120,2, + 105,121,48,72,132,132,132,252,132,132,132,2,105,121,248,68, + 68,68,120,68,68,68,248,2,105,121,120,132,128,128,128,128, + 128,132,120,2,105,121,248,68,68,68,68,68,68,68,248,2, + 105,121,252,128,128,128,240,128,128,128,252,2,105,121,252,128, + 128,128,240,128,128,128,128,2,105,121,120,132,128,128,128,156, + 132,140,116,2,105,121,132,132,132,132,252,132,132,132,132,18, + 89,121,248,32,32,32,32,32,32,32,248,2,105,121,28,8, + 8,8,8,8,8,136,112,2,105,121,132,136,144,160,192,160, + 144,136,132,2,105,121,128,128,128,128,128,128,128,128,252,2, + 105,121,132,204,204,180,180,132,132,132,132,2,105,121,132,132, + 196,164,148,140,132,132,132,2,105,121,120,132,132,132,132,132, + 132,132,120,2,105,121,248,132,132,132,248,128,128,128,128,1, + 106,122,120,132,132,132,132,132,164,148,120,4,2,105,121,248, + 132,132,132,248,160,144,136,132,2,105,121,120,132,128,128,120, + 4,4,132,120,18,89,121,248,32,32,32,32,32,32,32,32, + 2,105,121,132,132,132,132,132,132,132,132,120,2,105,121,132, + 132,132,72,72,72,48,48,48,2,105,121,132,132,132,132,180, + 180,204,204,132,2,105,121,132,132,72,72,48,72,72,132,132, + 18,89,121,136,136,80,80,32,32,32,32,32,2,105,121,252, + 4,8,16,48,32,64,128,252,17,75,123,240,128,128,128,128, + 128,128,128,128,128,240,18,89,121,128,128,64,64,32,16,16, + 8,8,17,75,123,240,16,16,16,16,16,16,16,16,16,240, + 24,83,115,32,80,136,1,97,113,252,42,34,114,128,64,2, + 102,118,120,4,124,132,140,116,2,105,121,128,128,128,184,196, + 132,132,196,184,2,102,118,120,132,128,128,132,120,2,105,121, + 4,4,4,116,140,132,132,140,116,2,102,118,120,132,252,128, + 132,120,2,105,121,56,68,64,64,240,64,64,64,64,0,104, + 120,116,136,136,112,128,120,132,120,2,105,121,128,128,128,184, + 196,132,132,132,132,18,88,120,32,0,96,32,32,32,32,248, + 16,90,122,8,0,24,8,8,8,8,136,136,112,2,105,121, + 128,128,128,136,144,224,144,136,132,18,89,121,96,32,32,32, + 32,32,32,32,248,18,86,118,208,168,168,168,168,136,2,102, + 118,184,196,132,132,132,132,2,102,118,120,132,132,132,132,120, + 0,104,120,184,196,132,196,184,128,128,128,0,104,120,116,140, + 132,140,116,4,4,4,2,102,118,184,68,64,64,64,64,2, + 102,118,120,132,96,24,132,120,2,104,120,64,64,240,64,64, + 64,68,56,2,102,118,132,132,132,132,140,116,18,86,118,136, + 136,136,80,80,32,18,86,118,136,136,168,168,168,80,2,102, + 118,132,72,48,48,72,132,0,104,120,132,132,132,140,116,4, + 132,120,2,102,118,252,8,16,32,64,252,17,91,123,56,64, + 64,64,32,192,32,64,64,64,56,50,25,121,128,128,128,128, + 128,128,128,128,128,17,91,123,224,16,16,16,32,24,32,16, + 16,16,224,24,83,115,72,168,144,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,13,0,112,50,25,121, + 128,0,128,128,128,128,128,128,128,19,88,120,32,112,168,160, + 160,168,112,32,2,105,121,56,68,64,64,224,64,64,68,184, + 3,102,118,132,120,72,72,120,132,2,89,121,136,136,80,80, + 248,32,248,32,32,50,25,121,128,128,128,128,0,128,128,128, + 128,18,74,122,96,144,128,96,144,144,96,16,144,96,25,66, + 114,144,144,2,105,121,120,132,180,164,164,164,180,132,120,20, + 87,119,112,8,120,136,120,0,248,3,103,119,20,40,80,160, + 80,40,20,20,83,115,248,8,8,22,65,113,240,2,105,121, + 120,132,180,172,172,180,172,132,120,26,81,113,248,23,68,116, + 96,144,144,96,19,87,119,32,32,248,32,32,0,248,22,54, + 118,64,160,32,64,128,224,22,54,118,224,32,64,32,160,64, + 42,34,114,64,128,1,103,119,132,132,132,132,204,180,128,2, + 105,121,124,232,232,232,104,40,40,40,40,38,33,113,192,32, + 34,114,64,128,22,54,118,64,192,64,64,64,224,21,70,118, + 96,144,144,96,0,240,3,103,119,160,80,40,20,40,80,160, + 2,106,122,64,192,64,64,68,236,20,20,28,4,2,106,122, + 64,192,64,64,72,244,4,8,16,28,2,106,122,224,32,64, + 32,164,76,20,20,28,4,2,105,121,32,0,32,32,64,128, + 132,132,120,2,106,122,32,16,0,48,72,132,132,252,132,132, + 2,106,122,16,32,0,48,72,132,132,252,132,132,2,106,122, + 48,72,0,48,72,132,132,252,132,132,2,106,122,100,152,0, + 48,72,132,132,252,132,132,2,106,122,72,72,0,48,72,132, + 132,252,132,132,2,106,122,48,72,48,48,72,132,132,252,132, + 132,2,105,121,92,160,160,160,184,224,160,160,188,0,107,123, + 120,132,128,128,128,128,128,132,120,16,32,2,106,122,32,16, + 0,252,128,128,240,128,128,252,2,106,122,16,32,0,252,128, + 128,240,128,128,252,2,106,122,48,72,0,252,128,128,240,128, + 128,252,2,106,122,72,72,0,252,128,128,240,128,128,252,18, + 90,122,64,32,0,248,32,32,32,32,32,248,18,90,122,32, + 64,0,248,32,32,32,32,32,248,18,90,122,32,80,0,248, + 32,32,32,32,32,248,18,90,122,136,136,0,248,32,32,32, + 32,32,248,2,105,121,248,68,68,68,228,68,68,68,248,2, + 106,122,100,152,0,132,196,164,164,148,140,132,2,106,122,32, + 16,0,120,132,132,132,132,132,120,2,106,122,16,32,0,120, + 132,132,132,132,132,120,2,106,122,48,72,0,120,132,132,132, + 132,132,120,2,106,122,100,152,0,120,132,132,132,132,132,120, + 2,106,122,72,72,0,120,132,132,132,132,132,120,3,102,118, + 132,72,48,48,72,132,1,107,123,4,120,140,148,148,164,164, + 164,196,120,128,2,106,122,32,16,0,132,132,132,132,132,132, + 120,2,106,122,16,32,0,132,132,132,132,132,132,120,2,106, + 122,48,72,0,132,132,132,132,132,132,120,2,106,122,72,72, + 0,132,132,132,132,132,132,120,18,90,122,16,32,0,136,136, + 80,32,32,32,32,2,105,121,128,248,132,132,132,248,128,128, + 128,18,89,121,96,144,144,160,160,144,136,136,176,2,105,121, + 32,16,0,120,4,124,132,140,116,2,105,121,16,32,0,120, + 4,124,132,140,116,2,105,121,48,72,0,120,4,124,132,140, + 116,2,105,121,100,152,0,120,4,124,132,140,116,2,105,121, + 72,72,0,120,4,124,132,140,116,2,106,122,48,72,48,0, + 120,4,124,132,140,116,2,102,118,104,20,124,144,148,104,0, + 104,120,120,132,128,128,132,120,16,32,2,105,121,32,16,0, + 120,132,252,128,132,120,2,105,121,16,32,0,120,132,252,128, + 132,120,2,105,121,48,72,0,120,132,252,128,132,120,2,105, + 121,72,72,0,120,132,252,128,132,120,18,89,121,64,32,0, + 96,32,32,32,32,248,18,89,121,32,64,0,96,32,32,32, + 32,248,18,89,121,96,144,0,96,32,32,32,32,248,18,89, + 121,144,144,0,96,32,32,32,32,248,2,106,122,72,48,80, + 8,120,132,132,132,132,120,2,105,121,100,152,0,184,196,132, + 132,132,132,2,105,121,32,16,0,120,132,132,132,132,120,2, + 105,121,16,32,0,120,132,132,132,132,120,2,105,121,48,72, + 0,120,132,132,132,132,120,2,105,121,100,152,0,120,132,132, + 132,132,120,2,105,121,72,72,0,120,132,132,132,132,120,19, + 87,119,32,32,0,248,0,32,32,1,104,120,4,120,140,148, + 164,196,120,128,2,105,121,32,16,0,132,132,132,132,140,116, + 2,105,121,16,32,0,132,132,132,132,140,116,2,105,121,48, + 72,0,132,132,132,132,140,116,2,105,121,72,72,0,132,132, + 132,132,140,116,0,107,123,16,32,0,132,132,132,140,116,4, + 132,120,0,106,122,128,128,184,196,132,132,196,184,128,128,0, + 107,123,72,72,0,132,132,132,140,116,4,132,120}; +/* + Fontname: -Misc-Fixed-Medium-O-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 7 h=11 x= 3 y=11 dx= 7 dy= 0 ascent=11 len=11 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13O[2158] U8G_SECTION(".progmem.u8g_font_7x13O") = { + 1,7,13,0,254,9,1,96,2,208,32,255,254,11,254,10, + 254,13,0,112,34,41,121,64,64,64,64,128,128,128,0,128, + 40,51,115,160,160,160,3,103,119,40,40,124,40,248,80,80, + 3,103,119,16,60,80,56,40,240,32,2,121,121,34,82,36, + 8,16,32,72,148,136,2,104,120,24,36,36,56,80,148,136, + 116,56,19,115,128,128,128,18,73,121,16,32,64,64,128,128, + 64,64,32,18,73,121,64,32,32,16,16,32,32,64,128,20, + 85,117,72,48,248,96,144,20,69,117,32,32,240,64,64,17, + 67,115,112,96,128,22,81,113,248,33,51,115,64,224,64,2, + 105,121,4,4,8,16,16,32,64,128,128,2,121,121,24,36, + 66,66,66,132,132,72,48,18,89,121,16,48,80,16,16,32, + 32,32,248,2,121,121,60,66,66,2,12,48,64,128,252,2, + 121,121,126,2,4,8,24,4,4,132,120,2,105,121,4,12, + 20,36,72,136,252,8,8,2,121,121,62,32,32,92,98,2, + 4,132,120,2,105,121,28,32,64,64,120,132,132,132,120,2, + 105,121,252,4,8,16,32,64,64,128,128,2,121,121,60,66, + 66,66,124,132,132,132,120,2,105,121,120,132,132,140,116,8, + 8,16,224,17,72,120,32,112,32,0,0,64,224,64,17,88, + 120,16,56,16,0,0,112,96,128,18,89,121,8,16,32,64, + 128,128,64,32,16,4,116,116,126,0,0,252,18,89,121,64, + 32,16,8,8,16,32,64,128,2,105,121,120,132,132,8,16, + 32,32,0,32,2,121,121,60,66,66,78,82,172,148,128,120, + 2,121,121,24,36,66,66,66,124,132,132,132,2,121,121,124, + 34,34,34,60,68,68,68,248,2,121,121,60,66,64,64,64, + 128,128,132,120,2,121,121,124,34,34,34,34,68,68,68,248, + 2,121,121,126,64,64,64,120,128,128,128,252,2,121,121,126, + 64,64,64,120,128,128,128,128,2,121,121,60,66,64,64,64, + 156,132,140,116,2,121,121,66,66,66,66,124,132,132,132,132, + 2,105,121,124,16,16,16,16,32,32,32,248,2,121,121,14, + 4,4,4,4,8,8,136,112,2,121,121,66,68,72,80,96, + 160,144,136,132,2,105,121,64,64,64,64,64,128,128,128,252, + 2,121,121,66,102,102,90,90,132,132,132,132,2,121,121,66, + 66,98,82,74,140,132,132,132,2,121,121,60,66,66,66,66, + 132,132,132,120,2,121,121,124,66,66,66,124,128,128,128,128, + 1,122,122,60,66,66,66,66,132,164,148,120,4,2,121,121, + 124,66,66,66,124,160,144,136,132,2,121,121,60,66,64,64, + 56,4,4,132,120,18,89,121,248,32,32,32,32,64,64,64, + 64,2,121,121,66,66,66,66,66,132,132,132,120,2,105,121, + 132,132,136,136,80,80,96,96,96,2,121,121,66,66,66,66, + 90,180,204,204,132,2,121,121,66,68,36,40,16,40,72,68, + 132,18,89,121,136,136,80,80,32,32,64,64,64,2,121,121, + 126,2,4,8,16,32,64,128,252,17,91,123,120,64,64,64, + 64,64,128,128,128,128,240,18,73,121,128,128,64,64,32,32, + 32,16,16,17,91,123,120,8,8,8,8,8,16,16,16,16, + 240,24,83,115,32,80,136,1,97,113,252,42,34,114,128,64, + 2,118,118,60,2,124,132,140,116,2,121,121,64,64,64,92, + 98,66,132,196,184,2,118,118,60,66,128,128,132,120,2,121, + 121,2,2,2,58,68,132,132,140,116,2,118,118,60,66,124, + 128,132,120,2,105,121,56,68,64,64,240,64,128,128,128,0, + 120,120,58,68,136,112,128,120,132,120,2,121,121,32,32,64, + 92,98,66,132,132,132,18,88,120,16,0,48,16,16,32,32, + 248,0,106,122,4,0,12,4,4,8,8,136,136,112,2,105, + 121,64,64,64,68,88,96,144,136,132,18,89,121,48,16,16, + 16,16,32,32,32,248,2,102,118,104,84,84,168,168,136,2, + 118,118,92,98,66,132,132,132,2,118,118,60,66,66,132,132, + 120,0,120,120,92,98,66,196,184,128,128,128,0,120,120,58, + 70,130,140,116,4,4,4,2,102,118,184,68,64,128,128,128, + 2,118,118,60,66,32,24,132,120,18,88,120,64,64,240,64, + 128,128,136,112,2,118,118,66,66,66,132,140,116,18,86,118, + 136,136,144,144,160,64,2,102,118,68,68,84,168,168,80,2, + 118,118,66,36,24,48,72,132,0,120,120,66,66,132,140,116, + 4,132,120,2,118,118,126,4,24,32,64,252,17,91,123,56, + 64,64,64,32,192,64,128,128,128,112,34,41,121,64,64,64, + 64,64,128,128,128,128,1,107,123,112,8,8,8,16,28,32, + 16,16,16,224,24,83,115,72,168,144,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,13,0,112,34,41, + 121,64,0,64,64,64,128,128,128,128,3,104,120,16,56,84, + 80,160,168,112,32,2,121,121,28,34,32,32,112,32,64,68, + 184,3,118,118,66,60,36,72,120,132,2,105,121,68,68,40, + 40,124,16,248,32,32,34,41,121,64,64,64,64,0,128,128, + 128,128,2,106,122,24,36,32,48,72,72,48,16,144,96,25, + 66,114,144,144,2,121,121,60,66,90,82,82,164,180,132,120, + 4,103,119,56,4,60,68,60,0,248,3,103,119,20,40,80, + 160,160,80,40,20,83,115,248,16,16,22,65,113,240,2,121, + 121,60,66,90,86,172,180,172,132,120,26,81,113,248,23,68, + 116,96,144,144,96,19,87,119,16,16,120,32,32,0,248,22, + 70,118,32,80,16,96,128,224,22,70,118,96,16,96,32,160, + 64,42,34,114,64,128,1,119,119,66,66,66,132,204,180,128, + 2,105,121,124,232,232,232,40,80,80,80,80,38,33,113,192, + 32,34,114,64,128,38,54,118,32,96,32,64,64,224,21,86, + 118,48,72,72,48,0,240,3,103,119,80,40,20,20,40,80, + 160,2,106,122,32,96,32,64,68,236,20,40,56,8,2,106, + 122,32,96,32,64,72,244,4,24,32,56,2,106,122,96,16, + 96,32,164,76,20,40,56,8,2,105,121,16,0,16,16,32, + 64,132,132,120,2,122,122,16,8,0,24,36,66,66,124,132, + 132,2,122,122,8,16,0,24,36,66,66,124,132,132,2,122, + 122,24,36,0,24,36,66,66,124,132,132,2,122,122,50,76, + 0,24,36,66,66,124,132,132,2,122,122,36,36,0,24,36, + 66,66,124,132,132,2,122,122,24,36,24,24,36,66,66,124, + 132,132,2,121,121,46,80,80,80,124,160,160,160,188,0,123, + 123,60,66,64,64,64,128,128,132,120,16,32,2,122,122,16, + 8,0,126,64,64,112,128,128,252,2,122,122,8,16,0,126, + 64,64,112,128,128,252,2,122,122,24,36,0,126,64,64,112, + 128,128,252,2,122,122,36,36,0,126,64,64,112,128,128,252, + 2,106,122,32,16,0,124,16,16,32,32,32,248,2,106,122, + 16,32,0,124,16,16,32,32,32,248,2,106,122,16,40,0, + 124,16,16,32,32,32,248,2,106,122,68,68,0,124,16,16, + 32,32,32,248,2,121,121,124,34,34,34,242,68,68,68,248, + 2,122,122,50,76,0,66,98,82,82,140,140,132,2,122,122, + 16,8,0,60,66,66,132,132,132,120,2,122,122,8,16,0, + 60,66,66,132,132,132,120,2,122,122,24,36,0,60,66,66, + 132,132,132,120,2,122,122,50,76,0,60,66,66,132,132,132, + 120,2,122,122,36,36,0,60,66,66,132,132,132,120,3,118, + 118,66,36,24,48,72,132,1,123,123,2,60,70,74,74,82, + 164,164,196,120,128,2,122,122,16,8,0,66,66,66,132,132, + 132,120,2,122,122,8,16,0,66,66,66,132,132,132,120,2, + 122,122,24,36,0,66,66,66,132,132,132,120,2,122,122,36, + 36,0,66,66,66,132,132,132,120,18,90,122,16,32,0,136, + 136,80,32,32,64,64,2,121,121,64,124,66,66,66,124,128, + 128,128,18,89,121,48,72,72,80,80,144,136,136,176,2,121, + 121,16,8,0,60,2,124,132,140,116,2,121,121,8,16,0, + 60,2,124,132,140,116,2,121,121,24,36,0,60,2,124,132, + 140,116,2,121,121,50,76,0,60,2,124,132,140,116,2,121, + 121,36,36,0,60,2,124,132,140,116,2,122,122,24,36,24, + 0,60,2,124,132,140,116,2,118,118,52,10,124,144,148,104, + 0,120,120,60,66,128,128,132,120,16,32,2,121,121,16,8, + 0,60,66,124,128,132,120,2,121,121,8,16,0,60,66,124, + 128,132,120,2,121,121,24,36,0,60,66,124,128,132,120,2, + 121,121,36,36,0,60,66,124,128,132,120,18,89,121,32,16, + 0,48,16,32,32,32,248,18,89,121,16,32,0,48,16,32, + 32,32,248,18,89,121,48,72,0,48,16,32,32,32,248,18, + 89,121,72,72,0,48,16,32,32,32,248,2,122,122,36,24, + 40,4,60,66,66,132,132,120,2,121,121,50,76,0,92,98, + 66,132,132,132,2,121,121,16,8,0,60,66,66,132,132,120, + 2,121,121,8,16,0,60,66,66,132,132,120,2,121,121,24, + 36,0,60,66,66,132,132,120,2,121,121,50,76,0,60,66, + 66,132,132,120,2,121,121,36,36,0,60,66,66,132,132,120, + 19,71,119,32,32,0,240,0,64,64,1,120,120,2,60,74, + 82,164,196,120,128,2,121,121,16,8,0,66,66,66,132,140, + 116,2,121,121,8,16,0,66,66,66,132,140,116,2,121,121, + 24,36,0,66,66,66,132,140,116,2,121,121,36,36,0,66, + 66,66,132,140,116,0,123,123,8,16,0,66,66,132,140,116, + 4,132,120,0,122,122,64,64,92,98,66,132,196,184,128,128, + 0,123,123,36,36,0,66,66,132,140,116,4,132,120}; +/* + Fontname: -Misc-Fixed-Medium-O-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 7 h=11 x= 3 y=11 dx= 7 dy= 0 ascent=11 len=11 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13Or[1035] U8G_SECTION(".progmem.u8g_font_7x13Or") = { + 1,7,13,0,254,9,1,96,2,208,32,127,254,11,254,10, + 254,13,0,112,34,41,121,64,64,64,64,128,128,128,0,128, + 40,51,115,160,160,160,3,103,119,40,40,124,40,248,80,80, + 3,103,119,16,60,80,56,40,240,32,2,121,121,34,82,36, + 8,16,32,72,148,136,2,104,120,24,36,36,56,80,148,136, + 116,56,19,115,128,128,128,18,73,121,16,32,64,64,128,128, + 64,64,32,18,73,121,64,32,32,16,16,32,32,64,128,20, + 85,117,72,48,248,96,144,20,69,117,32,32,240,64,64,17, + 67,115,112,96,128,22,81,113,248,33,51,115,64,224,64,2, + 105,121,4,4,8,16,16,32,64,128,128,2,121,121,24,36, + 66,66,66,132,132,72,48,18,89,121,16,48,80,16,16,32, + 32,32,248,2,121,121,60,66,66,2,12,48,64,128,252,2, + 121,121,126,2,4,8,24,4,4,132,120,2,105,121,4,12, + 20,36,72,136,252,8,8,2,121,121,62,32,32,92,98,2, + 4,132,120,2,105,121,28,32,64,64,120,132,132,132,120,2, + 105,121,252,4,8,16,32,64,64,128,128,2,121,121,60,66, + 66,66,124,132,132,132,120,2,105,121,120,132,132,140,116,8, + 8,16,224,17,72,120,32,112,32,0,0,64,224,64,17,88, + 120,16,56,16,0,0,112,96,128,18,89,121,8,16,32,64, + 128,128,64,32,16,4,116,116,126,0,0,252,18,89,121,64, + 32,16,8,8,16,32,64,128,2,105,121,120,132,132,8,16, + 32,32,0,32,2,121,121,60,66,66,78,82,172,148,128,120, + 2,121,121,24,36,66,66,66,124,132,132,132,2,121,121,124, + 34,34,34,60,68,68,68,248,2,121,121,60,66,64,64,64, + 128,128,132,120,2,121,121,124,34,34,34,34,68,68,68,248, + 2,121,121,126,64,64,64,120,128,128,128,252,2,121,121,126, + 64,64,64,120,128,128,128,128,2,121,121,60,66,64,64,64, + 156,132,140,116,2,121,121,66,66,66,66,124,132,132,132,132, + 2,105,121,124,16,16,16,16,32,32,32,248,2,121,121,14, + 4,4,4,4,8,8,136,112,2,121,121,66,68,72,80,96, + 160,144,136,132,2,105,121,64,64,64,64,64,128,128,128,252, + 2,121,121,66,102,102,90,90,132,132,132,132,2,121,121,66, + 66,98,82,74,140,132,132,132,2,121,121,60,66,66,66,66, + 132,132,132,120,2,121,121,124,66,66,66,124,128,128,128,128, + 1,122,122,60,66,66,66,66,132,164,148,120,4,2,121,121, + 124,66,66,66,124,160,144,136,132,2,121,121,60,66,64,64, + 56,4,4,132,120,18,89,121,248,32,32,32,32,64,64,64, + 64,2,121,121,66,66,66,66,66,132,132,132,120,2,105,121, + 132,132,136,136,80,80,96,96,96,2,121,121,66,66,66,66, + 90,180,204,204,132,2,121,121,66,68,36,40,16,40,72,68, + 132,18,89,121,136,136,80,80,32,32,64,64,64,2,121,121, + 126,2,4,8,16,32,64,128,252,17,91,123,120,64,64,64, + 64,64,128,128,128,128,240,18,73,121,128,128,64,64,32,32, + 32,16,16,17,91,123,120,8,8,8,8,8,16,16,16,16, + 240,24,83,115,32,80,136,1,97,113,252,42,34,114,128,64, + 2,118,118,60,2,124,132,140,116,2,121,121,64,64,64,92, + 98,66,132,196,184,2,118,118,60,66,128,128,132,120,2,121, + 121,2,2,2,58,68,132,132,140,116,2,118,118,60,66,124, + 128,132,120,2,105,121,56,68,64,64,240,64,128,128,128,0, + 120,120,58,68,136,112,128,120,132,120,2,121,121,32,32,64, + 92,98,66,132,132,132,18,88,120,16,0,48,16,16,32,32, + 248,0,106,122,4,0,12,4,4,8,8,136,136,112,2,105, + 121,64,64,64,68,88,96,144,136,132,18,89,121,48,16,16, + 16,16,32,32,32,248,2,102,118,104,84,84,168,168,136,2, + 118,118,92,98,66,132,132,132,2,118,118,60,66,66,132,132, + 120,0,120,120,92,98,66,196,184,128,128,128,0,120,120,58, + 70,130,140,116,4,4,4,2,102,118,184,68,64,128,128,128, + 2,118,118,60,66,32,24,132,120,18,88,120,64,64,240,64, + 128,128,136,112,2,118,118,66,66,66,132,140,116,18,86,118, + 136,136,144,144,160,64,2,102,118,68,68,84,168,168,80,2, + 118,118,66,36,24,48,72,132,0,120,120,66,66,132,140,116, + 4,132,120,2,118,118,126,4,24,32,64,252,17,91,123,56, + 64,64,64,32,192,64,128,128,128,112,34,41,121,64,64,64, + 64,64,128,128,128,128,1,107,123,112,8,8,8,16,28,32, + 16,16,16,224,24,83,115,72,168,144,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 6 h=11 x= 3 y=11 dx= 7 dy= 0 ascent=11 len=11 + Font Bounding box w= 7 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x13r[1034] U8G_SECTION(".progmem.u8g_font_7x13r") = { + 1,7,13,0,254,9,1,95,2,207,32,127,254,11,254,10, + 254,13,0,112,50,25,121,128,128,128,128,128,128,128,0,128, + 40,51,115,160,160,160,19,87,119,80,80,248,80,248,80,80, + 19,87,119,32,120,160,112,40,240,32,2,105,121,68,164,72, + 16,16,32,72,148,136,2,103,119,96,144,144,96,148,136,116, + 56,19,115,128,128,128,34,57,121,32,64,64,128,128,128,64, + 64,32,34,57,121,128,64,64,32,32,32,64,64,128,4,101, + 117,72,48,252,48,72,20,85,117,32,32,248,32,32,17,67, + 115,112,96,128,22,81,113,248,33,51,115,64,224,64,18,89, + 121,8,8,16,16,32,64,64,128,128,2,105,121,48,72,132, + 132,132,132,132,72,48,18,89,121,32,96,160,32,32,32,32, + 32,248,2,105,121,120,132,132,4,8,48,64,128,252,2,105, + 121,252,4,8,16,56,4,4,132,120,2,105,121,8,24,40, + 72,136,136,252,8,8,2,105,121,252,128,128,184,196,4,4, + 132,120,2,105,121,56,64,128,128,184,196,132,132,120,2,105, + 121,252,4,8,16,16,32,32,64,64,2,105,121,120,132,132, + 132,120,132,132,132,120,2,105,121,120,132,132,140,116,4,4, + 8,112,33,56,120,64,224,64,0,0,64,224,64,17,72,120, + 32,112,32,0,0,112,96,128,18,89,121,8,16,32,64,128, + 64,32,16,8,4,100,116,252,0,0,252,18,89,121,128,64, + 32,16,8,16,32,64,128,2,105,121,120,132,132,4,8,16, + 16,0,16,2,105,121,120,132,132,156,164,172,148,128,120,2, + 105,121,48,72,132,132,132,252,132,132,132,2,105,121,248,68, + 68,68,120,68,68,68,248,2,105,121,120,132,128,128,128,128, + 128,132,120,2,105,121,248,68,68,68,68,68,68,68,248,2, + 105,121,252,128,128,128,240,128,128,128,252,2,105,121,252,128, + 128,128,240,128,128,128,128,2,105,121,120,132,128,128,128,156, + 132,140,116,2,105,121,132,132,132,132,252,132,132,132,132,18, + 89,121,248,32,32,32,32,32,32,32,248,2,105,121,28,8, + 8,8,8,8,8,136,112,2,105,121,132,136,144,160,192,160, + 144,136,132,2,105,121,128,128,128,128,128,128,128,128,252,2, + 105,121,132,204,204,180,180,132,132,132,132,2,105,121,132,132, + 196,164,148,140,132,132,132,2,105,121,120,132,132,132,132,132, + 132,132,120,2,105,121,248,132,132,132,248,128,128,128,128,1, + 106,122,120,132,132,132,132,132,164,148,120,4,2,105,121,248, + 132,132,132,248,160,144,136,132,2,105,121,120,132,128,128,120, + 4,4,132,120,18,89,121,248,32,32,32,32,32,32,32,32, + 2,105,121,132,132,132,132,132,132,132,132,120,2,105,121,132, + 132,132,72,72,72,48,48,48,2,105,121,132,132,132,132,180, + 180,204,204,132,2,105,121,132,132,72,72,48,72,72,132,132, + 18,89,121,136,136,80,80,32,32,32,32,32,2,105,121,252, + 4,8,16,48,32,64,128,252,17,75,123,240,128,128,128,128, + 128,128,128,128,128,240,18,89,121,128,128,64,64,32,16,16, + 8,8,17,75,123,240,16,16,16,16,16,16,16,16,16,240, + 24,83,115,32,80,136,1,97,113,252,42,34,114,128,64,2, + 102,118,120,4,124,132,140,116,2,105,121,128,128,128,184,196, + 132,132,196,184,2,102,118,120,132,128,128,132,120,2,105,121, + 4,4,4,116,140,132,132,140,116,2,102,118,120,132,252,128, + 132,120,2,105,121,56,68,64,64,240,64,64,64,64,0,104, + 120,116,136,136,112,128,120,132,120,2,105,121,128,128,128,184, + 196,132,132,132,132,18,88,120,32,0,96,32,32,32,32,248, + 16,90,122,8,0,24,8,8,8,8,136,136,112,2,105,121, + 128,128,128,136,144,224,144,136,132,18,89,121,96,32,32,32, + 32,32,32,32,248,18,86,118,208,168,168,168,168,136,2,102, + 118,184,196,132,132,132,132,2,102,118,120,132,132,132,132,120, + 0,104,120,184,196,132,196,184,128,128,128,0,104,120,116,140, + 132,140,116,4,4,4,2,102,118,184,68,64,64,64,64,2, + 102,118,120,132,96,24,132,120,2,104,120,64,64,240,64,64, + 64,68,56,2,102,118,132,132,132,132,140,116,18,86,118,136, + 136,136,80,80,32,18,86,118,136,136,168,168,168,80,2,102, + 118,132,72,48,48,72,132,0,104,120,132,132,132,140,116,4, + 132,120,2,102,118,252,8,16,32,64,252,17,91,123,56,64, + 64,64,32,192,32,64,64,64,56,50,25,121,128,128,128,128, + 128,128,128,128,128,17,91,123,224,16,16,16,32,24,32,16, + 16,16,224,24,83,115,72,168,144,255}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--14-130-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 7 h=14 x= 2 y=12 dx= 7 dy= 0 ascent=12 len=14 + Font Bounding box w= 7 h=14 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =11 descent=-2 + Max Font ascent =12 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x14B[2390] U8G_SECTION(".progmem.u8g_font_7x14B") = { + 1,7,14,0,254,10,1,137,3,30,32,255,254,12,254,11, + 254,14,0,112,34,42,122,192,192,192,192,192,192,192,0,192, + 192,25,84,116,216,216,216,216,2,106,122,120,120,120,252,120, + 120,252,120,120,120,1,107,123,48,120,180,180,112,56,52,180, + 180,120,48,2,106,122,108,220,216,112,16,32,56,108,236,216, + 2,106,122,56,108,108,108,56,108,220,216,216,108,41,36,116, + 192,192,192,192,16,93,125,24,48,96,96,192,192,192,192,192, + 96,96,48,24,16,93,125,192,96,48,48,24,24,24,24,24, + 48,48,96,192,5,103,119,180,180,120,48,120,180,180,3,103, + 119,48,48,48,252,48,48,48,32,52,116,224,96,96,192,6, + 97,113,252,34,34,114,192,192,0,109,125,12,12,12,24,24, + 48,48,48,96,96,192,192,192,2,106,122,120,204,204,204,204, + 204,204,204,204,120,2,106,122,48,112,240,48,48,48,48,48, + 48,252,2,106,122,120,204,204,12,24,24,48,96,192,252,2, + 106,122,120,204,204,12,56,12,12,204,204,120,2,106,122,8, + 24,24,56,120,216,216,252,24,24,2,106,122,252,192,192,248, + 204,12,12,204,204,120,2,106,122,56,108,204,192,248,204,204, + 204,204,120,2,106,122,252,204,216,24,48,48,48,48,48,48, + 2,106,122,120,204,204,204,120,120,204,204,204,120,2,106,122, + 120,204,204,204,204,124,12,204,216,112,35,39,119,192,192,0, + 0,0,192,192,33,57,121,96,96,0,0,0,224,96,96,192, + 2,105,121,12,24,48,96,192,96,48,24,12,4,100,116,252, + 0,0,252,2,105,121,192,96,48,24,12,24,48,96,192,2, + 106,122,120,204,204,24,48,48,48,0,48,48,2,106,122,56, + 108,220,244,244,244,244,220,96,60,2,106,122,120,252,204,204, + 204,204,252,204,204,204,2,106,122,248,204,204,200,248,204,204, + 204,204,248,2,106,122,120,204,204,192,192,192,192,204,204,120, + 2,106,122,240,216,204,204,204,204,204,204,216,240,2,106,122, + 252,192,192,192,248,192,192,192,192,252,2,106,122,252,192,192, + 192,248,192,192,192,192,192,2,106,122,120,204,204,192,192,220, + 204,204,204,120,2,106,122,204,204,204,204,252,204,204,204,204, + 204,2,106,122,252,48,48,48,48,48,48,48,48,252,2,106, + 122,12,12,12,12,12,12,12,204,216,112,2,106,122,204,216, + 240,224,224,240,240,216,204,204,2,106,122,192,192,192,192,192, + 192,192,192,192,252,2,106,122,132,204,204,252,252,204,204,204, + 204,204,2,106,122,204,204,236,236,236,220,220,220,204,204,2, + 106,122,120,204,204,204,204,204,204,204,204,120,2,106,122,248, + 204,204,204,204,248,192,192,192,192,0,108,124,120,204,204,204, + 204,204,236,220,204,120,12,4,2,106,122,248,204,204,204,248, + 216,204,204,204,204,2,106,122,120,204,204,96,48,48,24,204, + 204,120,2,106,122,252,48,48,48,48,48,48,48,48,48,2, + 106,122,204,204,204,204,204,204,204,204,204,120,2,106,122,204, + 204,204,204,204,204,204,120,120,48,2,106,122,204,204,204,204, + 204,252,252,252,252,72,2,106,122,204,204,120,120,48,48,120, + 120,204,204,2,106,122,204,204,204,120,120,48,48,48,48,48, + 2,106,122,252,12,24,24,48,48,96,96,192,252,16,93,125, + 248,192,192,192,192,192,192,192,192,192,192,192,248,0,109,125, + 192,192,192,96,96,48,48,48,24,24,12,12,12,16,93,125, + 248,24,24,24,24,24,24,24,24,24,24,24,248,11,99,115, + 48,120,204,0,98,114,252,252,26,67,115,192,96,48,2,103, + 119,120,204,28,108,204,204,124,2,106,122,192,192,192,248,204, + 204,204,204,204,248,2,103,119,120,204,192,192,192,204,120,2, + 106,122,12,12,12,124,204,204,204,204,204,124,2,103,119,120, + 204,204,252,192,204,120,2,106,122,24,60,48,48,252,48,48, + 48,48,48,0,105,121,116,220,216,216,112,64,248,204,120,2, + 106,122,192,192,192,248,204,204,204,204,204,204,34,42,122,192, + 192,0,192,192,192,192,192,192,192,16,92,124,24,24,0,24, + 24,24,24,24,24,24,216,112,2,106,122,192,192,192,200,216, + 240,240,216,204,196,34,42,122,192,192,192,192,192,192,192,192, + 192,192,2,103,119,216,252,252,252,252,252,204,2,103,119,248, + 204,204,204,204,204,204,2,103,119,120,204,204,204,204,204,120, + 0,105,121,248,204,204,204,204,204,248,192,192,0,105,121,124, + 204,204,204,204,204,124,12,12,2,103,119,248,204,204,192,192, + 192,192,2,103,119,120,204,96,48,24,204,120,2,106,122,48, + 48,48,252,48,48,48,48,48,28,2,103,119,204,204,204,204, + 204,204,124,2,103,119,204,204,204,120,120,48,48,2,103,119, + 204,204,252,252,252,252,72,2,103,119,204,204,120,48,120,204, + 204,0,105,121,204,204,108,108,56,56,24,216,112,2,103,119, + 252,12,24,48,96,192,252,16,93,125,56,96,96,96,96,96, + 192,96,96,96,96,96,56,32,45,125,192,192,192,192,192,192, + 192,192,192,192,192,192,192,16,93,125,224,48,48,48,48,48, + 24,48,48,48,48,48,224,9,100,116,68,244,188,136,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,14, + 0,112,34,42,122,192,192,0,192,192,192,192,192,192,192,1, + 105,121,48,124,180,176,176,176,180,124,48,2,105,121,56,108, + 96,96,240,96,96,248,108,4,102,118,204,120,104,88,120,204, + 2,106,122,132,204,120,252,48,48,252,48,48,48,34,42,122, + 192,192,192,192,0,0,192,192,192,192,2,107,123,120,204,96, + 48,120,204,120,48,24,204,120,27,82,114,216,216,2,107,123, + 120,204,252,236,236,236,236,236,252,204,120,21,88,120,112,216, + 120,216,216,120,0,248,2,103,119,28,60,120,240,120,60,28, + 2,101,117,252,252,12,12,12,22,65,113,240,2,107,123,120, + 204,252,236,236,252,236,236,236,204,120,28,81,113,248,25,84, + 116,112,216,216,112,2,102,118,48,48,252,48,48,252,22,87, + 119,112,216,24,48,96,192,248,22,87,119,112,216,24,112,24, + 216,112,26,67,115,48,96,192,0,104,120,204,204,204,204,220, + 252,192,192,0,108,124,124,236,236,236,236,108,44,44,44,44, + 44,60,39,34,114,192,192,32,51,115,96,96,192,22,54,118, + 96,224,96,96,96,96,22,86,118,112,216,216,112,0,248,2, + 103,119,224,112,56,28,56,112,224,2,106,122,100,236,104,120, + 120,52,108,92,220,140,2,106,122,100,236,104,120,120,56,116, + 76,216,156,2,106,122,196,108,232,120,240,60,108,220,156,12, + 0,107,123,96,96,0,96,96,96,96,96,204,204,120,2,108, + 124,96,48,0,120,252,204,204,204,252,204,204,204,2,108,124, + 24,48,0,120,252,204,204,204,252,204,204,204,2,108,124,48, + 120,0,120,252,204,204,204,252,204,204,204,2,108,124,104,176, + 0,120,252,204,204,204,252,204,204,204,2,108,124,204,204,0, + 120,252,204,204,204,252,204,204,204,2,108,124,48,72,48,0, + 120,252,204,204,252,204,204,204,2,122,122,126,216,216,216,220, + 248,216,216,216,222,0,108,124,120,204,204,192,192,192,192,204, + 204,120,48,96,2,108,124,96,48,0,252,192,192,192,248,192, + 192,192,252,2,108,124,24,48,0,252,192,192,192,248,192,192, + 192,252,2,108,124,48,120,0,252,192,192,192,248,192,192,192, + 252,2,108,124,204,204,0,252,192,192,192,248,192,192,192,252, + 2,108,124,96,48,0,252,48,48,48,48,48,48,48,252,2, + 108,124,24,48,0,252,48,48,48,48,48,48,48,252,2,108, + 124,48,120,0,252,48,48,48,48,48,48,48,252,2,108,124, + 204,204,0,252,48,48,48,48,48,48,48,252,2,122,122,120, + 108,102,102,254,102,102,102,108,120,2,108,124,104,176,0,204, + 236,236,236,220,220,220,204,204,2,108,124,96,48,0,120,204, + 204,204,204,204,204,204,120,2,108,124,24,48,0,120,204,204, + 204,204,204,204,204,120,2,108,124,48,120,0,120,204,204,204, + 204,204,204,204,120,2,108,124,104,176,0,120,204,204,204,204, + 204,204,204,120,2,108,124,204,204,0,120,204,204,204,204,204, + 204,204,120,2,119,119,198,108,56,56,108,198,130,0,110,126, + 4,4,120,220,220,220,220,236,236,236,236,120,128,128,2,108, + 124,96,48,0,204,204,204,204,204,204,204,204,120,2,108,124, + 24,48,0,204,204,204,204,204,204,204,204,120,2,108,124,48, + 120,0,204,204,204,204,204,204,204,204,120,2,108,124,204,204, + 0,204,204,204,204,204,204,204,204,120,2,108,124,24,48,0, + 204,204,204,120,120,120,48,48,48,2,106,122,192,192,248,204, + 204,204,204,248,192,192,2,106,122,56,108,108,108,120,108,108, + 108,108,248,2,106,122,96,48,0,120,204,60,108,204,204,124, + 2,106,122,24,48,0,120,204,60,108,204,204,124,2,106,122, + 48,120,0,120,204,60,108,204,204,124,2,106,122,104,176,0, + 120,204,60,108,204,204,124,2,106,122,204,204,0,120,204,60, + 108,204,204,124,2,107,123,48,72,48,0,120,204,60,108,204, + 204,124,2,119,119,124,218,58,94,216,222,124,0,105,121,120, + 204,192,192,192,204,120,48,96,2,106,122,96,48,0,120,204, + 204,252,192,204,120,2,106,122,24,48,0,120,204,204,252,192, + 204,120,2,106,122,48,120,0,120,204,204,252,192,204,120,2, + 106,122,204,204,0,120,204,204,252,192,204,120,34,58,122,192, + 96,0,96,96,96,96,96,96,96,34,58,122,96,192,0,192, + 192,192,192,192,192,192,18,74,122,96,240,0,96,96,96,96, + 96,96,96,2,106,122,204,204,0,48,48,48,48,48,48,48, + 2,107,123,216,112,240,152,12,124,204,204,204,204,120,2,106, + 122,104,176,0,248,204,204,204,204,204,204,2,106,122,96,48, + 0,120,204,204,204,204,204,120,2,106,122,24,48,0,120,204, + 204,204,204,204,120,2,106,122,48,120,0,120,204,204,204,204, + 204,120,2,106,122,104,176,0,120,204,204,204,204,204,120,2, + 106,122,204,204,0,120,204,204,204,204,204,120,2,104,120,48, + 48,0,252,252,0,48,48,0,107,123,4,8,120,220,220,236, + 236,204,120,128,128,2,106,122,96,48,0,204,204,204,204,204, + 204,124,2,106,122,24,48,0,204,204,204,204,204,204,124,2, + 106,122,48,120,0,204,204,204,204,204,204,124,2,106,122,204, + 204,0,204,204,204,204,204,204,124,0,108,124,24,48,0,204, + 204,204,120,56,56,48,240,96,0,108,124,192,192,192,248,204, + 204,204,204,204,248,192,192,0,108,124,204,204,0,204,204,204, + 120,56,56,48,240,96}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--14-130-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 6 h=13 x= 2 y=12 dx= 7 dy= 0 ascent=12 len=13 + Font Bounding box w= 7 h=14 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =11 descent=-2 + Max Font ascent =12 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x14Br[1151] U8G_SECTION(".progmem.u8g_font_7x14Br") = { + 1,7,14,0,254,10,1,137,3,30,32,127,254,12,254,11, + 254,14,0,112,34,42,122,192,192,192,192,192,192,192,0,192, + 192,25,84,116,216,216,216,216,2,106,122,120,120,120,252,120, + 120,252,120,120,120,1,107,123,48,120,180,180,112,56,52,180, + 180,120,48,2,106,122,108,220,216,112,16,32,56,108,236,216, + 2,106,122,56,108,108,108,56,108,220,216,216,108,41,36,116, + 192,192,192,192,16,93,125,24,48,96,96,192,192,192,192,192, + 96,96,48,24,16,93,125,192,96,48,48,24,24,24,24,24, + 48,48,96,192,5,103,119,180,180,120,48,120,180,180,3,103, + 119,48,48,48,252,48,48,48,32,52,116,224,96,96,192,6, + 97,113,252,34,34,114,192,192,0,109,125,12,12,12,24,24, + 48,48,48,96,96,192,192,192,2,106,122,120,204,204,204,204, + 204,204,204,204,120,2,106,122,48,112,240,48,48,48,48,48, + 48,252,2,106,122,120,204,204,12,24,24,48,96,192,252,2, + 106,122,120,204,204,12,56,12,12,204,204,120,2,106,122,8, + 24,24,56,120,216,216,252,24,24,2,106,122,252,192,192,248, + 204,12,12,204,204,120,2,106,122,56,108,204,192,248,204,204, + 204,204,120,2,106,122,252,204,216,24,48,48,48,48,48,48, + 2,106,122,120,204,204,204,120,120,204,204,204,120,2,106,122, + 120,204,204,204,204,124,12,204,216,112,35,39,119,192,192,0, + 0,0,192,192,33,57,121,96,96,0,0,0,224,96,96,192, + 2,105,121,12,24,48,96,192,96,48,24,12,4,100,116,252, + 0,0,252,2,105,121,192,96,48,24,12,24,48,96,192,2, + 106,122,120,204,204,24,48,48,48,0,48,48,2,106,122,56, + 108,220,244,244,244,244,220,96,60,2,106,122,120,252,204,204, + 204,204,252,204,204,204,2,106,122,248,204,204,200,248,204,204, + 204,204,248,2,106,122,120,204,204,192,192,192,192,204,204,120, + 2,106,122,240,216,204,204,204,204,204,204,216,240,2,106,122, + 252,192,192,192,248,192,192,192,192,252,2,106,122,252,192,192, + 192,248,192,192,192,192,192,2,106,122,120,204,204,192,192,220, + 204,204,204,120,2,106,122,204,204,204,204,252,204,204,204,204, + 204,2,106,122,252,48,48,48,48,48,48,48,48,252,2,106, + 122,12,12,12,12,12,12,12,204,216,112,2,106,122,204,216, + 240,224,224,240,240,216,204,204,2,106,122,192,192,192,192,192, + 192,192,192,192,252,2,106,122,132,204,204,252,252,204,204,204, + 204,204,2,106,122,204,204,236,236,236,220,220,220,204,204,2, + 106,122,120,204,204,204,204,204,204,204,204,120,2,106,122,248, + 204,204,204,204,248,192,192,192,192,0,108,124,120,204,204,204, + 204,204,236,220,204,120,12,4,2,106,122,248,204,204,204,248, + 216,204,204,204,204,2,106,122,120,204,204,96,48,48,24,204, + 204,120,2,106,122,252,48,48,48,48,48,48,48,48,48,2, + 106,122,204,204,204,204,204,204,204,204,204,120,2,106,122,204, + 204,204,204,204,204,204,120,120,48,2,106,122,204,204,204,204, + 204,252,252,252,252,72,2,106,122,204,204,120,120,48,48,120, + 120,204,204,2,106,122,204,204,204,120,120,48,48,48,48,48, + 2,106,122,252,12,24,24,48,48,96,96,192,252,16,93,125, + 248,192,192,192,192,192,192,192,192,192,192,192,248,0,109,125, + 192,192,192,96,96,48,48,48,24,24,12,12,12,16,93,125, + 248,24,24,24,24,24,24,24,24,24,24,24,248,11,99,115, + 48,120,204,0,98,114,252,252,26,67,115,192,96,48,2,103, + 119,120,204,28,108,204,204,124,2,106,122,192,192,192,248,204, + 204,204,204,204,248,2,103,119,120,204,192,192,192,204,120,2, + 106,122,12,12,12,124,204,204,204,204,204,124,2,103,119,120, + 204,204,252,192,204,120,2,106,122,24,60,48,48,252,48,48, + 48,48,48,0,105,121,116,220,216,216,112,64,248,204,120,2, + 106,122,192,192,192,248,204,204,204,204,204,204,34,42,122,192, + 192,0,192,192,192,192,192,192,192,16,92,124,24,24,0,24, + 24,24,24,24,24,24,216,112,2,106,122,192,192,192,200,216, + 240,240,216,204,196,34,42,122,192,192,192,192,192,192,192,192, + 192,192,2,103,119,216,252,252,252,252,252,204,2,103,119,248, + 204,204,204,204,204,204,2,103,119,120,204,204,204,204,204,120, + 0,105,121,248,204,204,204,204,204,248,192,192,0,105,121,124, + 204,204,204,204,204,124,12,12,2,103,119,248,204,204,192,192, + 192,192,2,103,119,120,204,96,48,24,204,120,2,106,122,48, + 48,48,252,48,48,48,48,48,28,2,103,119,204,204,204,204, + 204,204,124,2,103,119,204,204,204,120,120,48,48,2,103,119, + 204,204,252,252,252,252,72,2,103,119,204,204,120,48,120,204, + 204,0,105,121,204,204,108,108,56,56,24,216,112,2,103,119, + 252,12,24,48,96,192,252,16,93,125,56,96,96,96,96,96, + 192,96,96,96,96,96,56,32,45,125,192,192,192,192,192,192, + 192,192,192,192,192,192,192,16,93,125,224,48,48,48,48,48, + 24,48,48,48,48,48,224,9,100,116,68,244,188,136,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--14-130-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 7 h=14 x= 3 y=12 dx= 7 dy= 0 ascent=12 len=14 + Font Bounding box w= 7 h=14 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =11 descent=-2 + Max Font ascent =12 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x14[2374] U8G_SECTION(".progmem.u8g_font_7x14") = { + 1,7,14,0,254,10,1,138,3,30,32,255,254,12,254,11, + 254,14,0,112,50,26,122,128,128,128,128,128,128,128,0,128, + 128,41,52,116,160,160,160,160,18,90,122,80,80,80,248,80, + 80,248,80,80,80,1,107,123,16,120,148,148,80,56,20,148, + 148,120,16,2,106,122,100,148,152,112,16,32,56,100,164,152, + 2,106,122,48,72,72,72,48,100,148,136,152,100,57,20,116, + 128,128,128,128,32,77,125,16,32,64,64,128,128,128,128,128, + 64,64,32,16,16,77,125,128,64,32,32,16,16,16,16,16, + 32,32,64,128,19,87,119,32,168,112,32,112,168,32,19,87, + 119,32,32,32,248,32,32,32,32,36,116,192,64,64,128,22, + 81,113,248,33,51,115,64,224,64,0,109,125,4,4,8,8, + 16,16,16,32,32,64,64,128,128,2,106,122,48,72,132,132, + 132,132,132,132,72,48,18,90,122,32,96,160,32,32,32,32, + 32,32,248,2,106,122,120,132,132,4,8,8,16,32,64,252, + 2,106,122,252,4,8,16,56,4,4,132,132,120,2,106,122, + 8,24,40,40,72,72,136,252,8,8,2,106,122,252,128,128, + 248,132,4,4,132,132,120,2,106,122,56,64,128,128,184,196, + 132,132,132,120,2,106,122,252,4,8,8,16,16,32,32,64, + 64,2,106,122,120,132,132,72,48,72,132,132,132,120,2,106, + 122,120,132,132,132,140,116,4,132,136,112,34,56,120,64,224, + 64,0,0,64,224,64,33,40,120,192,192,0,0,192,64,64, + 128,18,89,121,8,16,32,64,128,64,32,16,8,5,100,116, + 252,0,0,252,18,89,121,128,64,32,16,8,16,32,64,128, + 2,106,122,120,132,132,8,16,16,16,0,16,16,2,106,122, + 56,68,156,164,164,164,164,156,64,60,2,106,122,48,72,132, + 132,132,252,132,132,132,132,2,106,122,240,136,132,136,240,136, + 132,132,136,240,2,106,122,120,132,132,128,128,128,128,132,132, + 120,2,106,122,240,136,132,132,132,132,132,132,136,240,2,106, + 122,252,128,128,128,240,128,128,128,128,252,2,106,122,252,128, + 128,128,240,128,128,128,128,128,2,106,122,120,132,132,128,128, + 156,132,132,140,116,2,106,122,132,132,132,132,252,132,132,132, + 132,132,18,90,122,248,32,32,32,32,32,32,32,32,248,2, + 106,122,28,8,8,8,8,8,8,136,136,112,2,106,122,132, + 136,144,160,192,160,144,136,132,132,2,106,122,128,128,128,128, + 128,128,128,128,128,252,2,106,122,132,204,204,180,180,132,132, + 132,132,132,2,106,122,132,132,196,196,164,148,140,140,132,132, + 2,106,122,120,132,132,132,132,132,132,132,132,120,2,106,122, + 248,132,132,132,132,248,128,128,128,128,0,108,124,120,132,132, + 132,132,132,228,148,140,120,8,4,2,106,122,248,132,132,132, + 132,248,144,136,132,132,2,106,122,120,132,132,128,96,24,4, + 132,132,120,2,122,122,254,16,16,16,16,16,16,16,16,16, + 2,106,122,132,132,132,132,132,132,132,132,132,120,2,106,122, + 132,132,132,132,72,72,72,48,48,48,18,90,122,136,136,136, + 136,136,136,168,168,168,80,2,106,122,132,132,72,72,48,48, + 72,72,132,132,18,90,122,136,136,136,80,80,32,32,32,32, + 32,2,106,122,252,4,8,16,16,32,64,64,128,252,32,77, + 125,240,128,128,128,128,128,128,128,128,128,128,128,240,0,109, + 125,128,128,64,64,32,32,32,16,16,8,8,4,4,16,77, + 125,240,16,16,16,16,16,16,16,16,16,16,16,240,10,99, + 115,48,72,132,0,97,113,252,42,51,115,128,64,32,2,103, + 119,120,132,4,124,132,132,124,2,106,122,128,128,128,184,196, + 132,132,132,196,184,2,103,119,120,132,128,128,128,132,120,2, + 106,122,4,4,4,116,140,132,132,132,140,116,2,103,119,120, + 132,132,252,128,132,120,2,106,122,24,36,32,32,248,32,32, + 32,32,32,0,105,121,116,136,136,136,112,64,184,132,120,2, + 106,122,128,128,128,184,196,132,132,132,132,132,18,90,122,32, + 32,0,96,32,32,32,32,32,248,16,92,124,8,8,0,24, + 8,8,8,8,8,136,136,112,2,106,122,128,128,128,136,144, + 160,224,144,136,132,18,90,122,96,32,32,32,32,32,32,32, + 32,248,18,87,119,208,168,168,168,168,168,136,2,103,119,184, + 196,132,132,132,132,132,2,103,119,120,132,132,132,132,132,120, + 0,105,121,184,196,132,132,132,196,184,128,128,0,105,121,116, + 140,132,132,132,140,116,4,4,2,103,119,184,196,132,128,128, + 128,128,2,103,119,120,132,64,48,8,132,120,2,106,122,32, + 32,32,248,32,32,32,32,36,24,2,103,119,132,132,132,132, + 132,140,116,18,87,119,136,136,136,80,80,32,32,18,87,119, + 136,136,168,168,168,168,80,2,103,119,132,132,72,48,72,132, + 132,0,105,121,132,132,132,132,140,116,4,132,120,2,103,119, + 252,8,16,32,32,64,252,32,77,125,48,64,64,64,64,64, + 128,64,64,64,64,64,48,48,29,125,128,128,128,128,128,128, + 128,128,128,128,128,128,128,16,77,125,192,32,32,32,32,32, + 16,32,32,32,32,32,192,9,100,116,64,164,148,8,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,14, + 0,112,50,26,122,128,128,0,128,128,128,128,128,128,128,1, + 105,121,32,120,164,160,160,160,164,120,32,18,89,121,48,72, + 64,64,240,64,64,240,72,4,102,118,132,120,72,72,120,132, + 18,90,122,136,80,80,32,248,32,248,32,32,32,50,26,122, + 128,128,128,128,0,0,128,128,128,128,2,107,123,120,132,64, + 48,72,132,72,48,8,132,120,27,66,114,144,144,2,107,123, + 120,132,180,204,196,196,196,204,180,132,120,21,88,120,112,136, + 120,136,152,104,0,248,2,103,119,20,40,80,160,80,40,20, + 18,84,116,248,8,8,8,22,65,113,240,2,107,123,120,132, + 244,204,204,244,204,204,204,132,120,27,81,113,248,25,68,116, + 96,144,144,96,18,86,118,32,32,248,32,32,248,22,71,119, + 96,144,16,32,64,128,240,22,71,119,96,144,16,96,16,144, + 96,42,51,115,32,64,128,16,88,120,136,136,136,136,216,168, + 128,128,16,92,124,120,168,168,168,168,104,40,40,40,40,40, + 56,55,17,113,128,32,35,115,64,64,128,38,55,119,64,192, + 64,64,64,64,224,22,70,118,96,144,144,96,0,240,2,103, + 119,160,80,40,20,40,80,160,2,106,122,64,196,72,72,80, + 36,44,84,156,132,2,106,122,64,196,72,72,80,40,52,68, + 136,156,2,106,122,196,36,72,48,208,36,76,84,156,4,0, + 107,123,32,32,0,32,32,32,32,64,132,132,120,2,108,124, + 32,16,0,48,72,132,132,252,132,132,132,132,2,108,124,16, + 32,0,48,72,132,132,252,132,132,132,132,2,108,124,48,72, + 0,48,72,132,132,252,132,132,132,132,2,108,124,100,152,0, + 48,72,132,132,252,132,132,132,132,2,107,123,72,0,48,72, + 132,132,252,132,132,132,132,2,107,123,48,72,48,72,132,132, + 252,132,132,132,132,2,106,122,60,80,144,144,252,144,144,144, + 144,156,0,108,124,120,132,132,128,128,128,128,132,132,120,16, + 32,2,108,124,32,16,0,252,128,128,128,248,128,128,128,252, + 2,108,124,16,32,0,252,128,128,128,248,128,128,128,252,2, + 108,124,48,72,0,252,128,128,128,248,128,128,128,252,2,107, + 123,72,0,252,128,128,128,248,128,128,128,252,18,92,124,64, + 32,0,248,32,32,32,32,32,32,32,248,18,92,124,16,32, + 0,248,32,32,32,32,32,32,32,248,18,92,124,32,80,0, + 248,32,32,32,32,32,32,32,248,18,91,123,80,0,248,32, + 32,32,32,32,32,32,248,2,122,122,120,68,66,66,242,66, + 66,66,68,120,2,108,124,100,152,0,196,196,164,164,148,148, + 148,140,140,2,108,124,32,16,0,120,132,132,132,132,132,132, + 132,120,2,108,124,16,32,0,120,132,132,132,132,132,132,132, + 120,2,108,124,48,72,0,120,132,132,132,132,132,132,132,120, + 2,108,124,100,152,0,120,132,132,132,132,132,132,132,120,2, + 107,123,72,0,120,132,132,132,132,132,132,132,120,2,119,119, + 130,68,40,16,40,68,130,0,110,126,4,4,120,140,148,148, + 148,164,164,164,196,120,128,128,2,108,124,32,16,0,132,132, + 132,132,132,132,132,132,120,2,108,124,16,32,0,132,132,132, + 132,132,132,132,132,120,2,108,124,48,72,0,132,132,132,132, + 132,132,132,132,120,2,107,123,72,0,132,132,132,132,132,132, + 132,132,120,18,92,124,16,32,0,136,136,80,80,32,32,32, + 32,32,2,106,122,128,128,248,132,132,132,132,248,128,128,2, + 106,122,48,72,72,72,112,72,68,68,68,248,2,106,122,32, + 16,0,120,132,4,124,132,132,124,2,106,122,8,16,0,120, + 132,4,124,132,132,124,2,106,122,48,72,0,120,132,4,124, + 132,132,124,2,106,122,100,152,0,120,132,4,124,132,132,124, + 2,105,121,72,0,120,132,4,124,132,132,124,2,107,123,48, + 72,48,0,120,132,4,124,132,132,124,2,119,119,124,146,50, + 94,144,146,124,0,105,121,120,132,128,128,128,132,120,16,32, + 2,106,122,32,16,0,120,132,132,252,128,132,120,2,106,122, + 16,32,0,120,132,132,252,128,132,120,2,106,122,48,72,0, + 120,132,132,252,128,132,120,2,105,121,72,0,120,132,132,252, + 128,132,120,18,90,122,64,32,0,96,32,32,32,32,32,248, + 18,90,122,16,32,0,96,32,32,32,32,32,248,18,90,122, + 96,144,0,96,32,32,32,32,32,248,18,89,121,80,0,96, + 32,32,32,32,32,248,18,91,123,80,32,80,8,120,136,136, + 136,136,136,112,2,106,122,100,152,0,184,196,132,132,132,132, + 132,2,106,122,32,16,0,120,132,132,132,132,132,120,2,106, + 122,16,32,0,120,132,132,132,132,132,120,2,106,122,48,72, + 0,120,132,132,132,132,132,120,2,106,122,100,152,0,120,132, + 132,132,132,132,120,2,105,121,72,0,120,132,132,132,132,132, + 120,2,101,117,48,0,252,0,48,0,107,123,4,8,120,148, + 148,164,164,196,120,128,128,2,106,122,32,16,0,132,132,132, + 132,132,140,116,2,106,122,16,32,0,132,132,132,132,132,140, + 116,2,106,122,48,72,0,132,132,132,132,132,140,116,2,105, + 121,72,0,132,132,132,132,132,140,116,0,108,124,16,32,0, + 132,132,68,72,40,56,16,144,96,0,108,124,128,128,128,184, + 196,132,132,132,196,184,128,128,0,107,123,72,0,132,132,68, + 72,40,56,16,144,96}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--14-130-75-75-C-70-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 7 h=13 x= 3 y=12 dx= 7 dy= 0 ascent=12 len=13 + Font Bounding box w= 7 h=14 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =11 descent=-2 + Max Font ascent =12 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_7x14r[1151] U8G_SECTION(".progmem.u8g_font_7x14r") = { + 1,7,14,0,254,10,1,138,3,30,32,127,254,12,254,11, + 254,14,0,112,50,26,122,128,128,128,128,128,128,128,0,128, + 128,41,52,116,160,160,160,160,18,90,122,80,80,80,248,80, + 80,248,80,80,80,1,107,123,16,120,148,148,80,56,20,148, + 148,120,16,2,106,122,100,148,152,112,16,32,56,100,164,152, + 2,106,122,48,72,72,72,48,100,148,136,152,100,57,20,116, + 128,128,128,128,32,77,125,16,32,64,64,128,128,128,128,128, + 64,64,32,16,16,77,125,128,64,32,32,16,16,16,16,16, + 32,32,64,128,19,87,119,32,168,112,32,112,168,32,19,87, + 119,32,32,32,248,32,32,32,32,36,116,192,64,64,128,22, + 81,113,248,33,51,115,64,224,64,0,109,125,4,4,8,8, + 16,16,16,32,32,64,64,128,128,2,106,122,48,72,132,132, + 132,132,132,132,72,48,18,90,122,32,96,160,32,32,32,32, + 32,32,248,2,106,122,120,132,132,4,8,8,16,32,64,252, + 2,106,122,252,4,8,16,56,4,4,132,132,120,2,106,122, + 8,24,40,40,72,72,136,252,8,8,2,106,122,252,128,128, + 248,132,4,4,132,132,120,2,106,122,56,64,128,128,184,196, + 132,132,132,120,2,106,122,252,4,8,8,16,16,32,32,64, + 64,2,106,122,120,132,132,72,48,72,132,132,132,120,2,106, + 122,120,132,132,132,140,116,4,132,136,112,34,56,120,64,224, + 64,0,0,64,224,64,33,40,120,192,192,0,0,192,64,64, + 128,18,89,121,8,16,32,64,128,64,32,16,8,5,100,116, + 252,0,0,252,18,89,121,128,64,32,16,8,16,32,64,128, + 2,106,122,120,132,132,8,16,16,16,0,16,16,2,106,122, + 56,68,156,164,164,164,164,156,64,60,2,106,122,48,72,132, + 132,132,252,132,132,132,132,2,106,122,240,136,132,136,240,136, + 132,132,136,240,2,106,122,120,132,132,128,128,128,128,132,132, + 120,2,106,122,240,136,132,132,132,132,132,132,136,240,2,106, + 122,252,128,128,128,240,128,128,128,128,252,2,106,122,252,128, + 128,128,240,128,128,128,128,128,2,106,122,120,132,132,128,128, + 156,132,132,140,116,2,106,122,132,132,132,132,252,132,132,132, + 132,132,18,90,122,248,32,32,32,32,32,32,32,32,248,2, + 106,122,28,8,8,8,8,8,8,136,136,112,2,106,122,132, + 136,144,160,192,160,144,136,132,132,2,106,122,128,128,128,128, + 128,128,128,128,128,252,2,106,122,132,204,204,180,180,132,132, + 132,132,132,2,106,122,132,132,196,196,164,148,140,140,132,132, + 2,106,122,120,132,132,132,132,132,132,132,132,120,2,106,122, + 248,132,132,132,132,248,128,128,128,128,0,108,124,120,132,132, + 132,132,132,228,148,140,120,8,4,2,106,122,248,132,132,132, + 132,248,144,136,132,132,2,106,122,120,132,132,128,96,24,4, + 132,132,120,2,122,122,254,16,16,16,16,16,16,16,16,16, + 2,106,122,132,132,132,132,132,132,132,132,132,120,2,106,122, + 132,132,132,132,72,72,72,48,48,48,18,90,122,136,136,136, + 136,136,136,168,168,168,80,2,106,122,132,132,72,72,48,48, + 72,72,132,132,18,90,122,136,136,136,80,80,32,32,32,32, + 32,2,106,122,252,4,8,16,16,32,64,64,128,252,32,77, + 125,240,128,128,128,128,128,128,128,128,128,128,128,240,0,109, + 125,128,128,64,64,32,32,32,16,16,8,8,4,4,16,77, + 125,240,16,16,16,16,16,16,16,16,16,16,16,240,10,99, + 115,48,72,132,0,97,113,252,42,51,115,128,64,32,2,103, + 119,120,132,4,124,132,132,124,2,106,122,128,128,128,184,196, + 132,132,132,196,184,2,103,119,120,132,128,128,128,132,120,2, + 106,122,4,4,4,116,140,132,132,132,140,116,2,103,119,120, + 132,132,252,128,132,120,2,106,122,24,36,32,32,248,32,32, + 32,32,32,0,105,121,116,136,136,136,112,64,184,132,120,2, + 106,122,128,128,128,184,196,132,132,132,132,132,18,90,122,32, + 32,0,96,32,32,32,32,32,248,16,92,124,8,8,0,24, + 8,8,8,8,8,136,136,112,2,106,122,128,128,128,136,144, + 160,224,144,136,132,18,90,122,96,32,32,32,32,32,32,32, + 32,248,18,87,119,208,168,168,168,168,168,136,2,103,119,184, + 196,132,132,132,132,132,2,103,119,120,132,132,132,132,132,120, + 0,105,121,184,196,132,132,132,196,184,128,128,0,105,121,116, + 140,132,132,132,140,116,4,4,2,103,119,184,196,132,128,128, + 128,128,2,103,119,120,132,64,48,8,132,120,2,106,122,32, + 32,32,248,32,32,32,32,36,24,2,103,119,132,132,132,132, + 132,140,116,18,87,119,136,136,136,80,80,32,32,18,87,119, + 136,136,168,168,168,168,80,2,103,119,132,132,72,48,72,132, + 132,0,105,121,132,132,132,132,140,116,4,132,120,2,103,119, + 252,8,16,32,32,64,252,32,77,125,48,64,64,64,64,64, + 128,64,64,64,64,64,48,48,29,125,128,128,128,128,128,128, + 128,128,128,128,128,128,128,16,77,125,192,32,32,32,32,32, + 16,32,32,32,32,32,192,9,100,116,64,164,148,8,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 3, '1' Height: 10 + Calculated Max Values w= 8 h=13 x= 7 y= 9 dx= 8 dy= 0 ascent=11 len=13 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 3 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13_67_75[2420] U8G_SECTION(".progmem.u8g_font_8x13_67_75") = { + 1,8,13,0,254,3,1,94,2,193,32,255,0,11,254,10, + 0,3,133,133,36,18,255,18,36,18,88,136,32,32,168,112, + 32,168,112,32,2,119,135,16,34,68,248,68,34,16,18,119, + 135,16,136,68,62,68,136,16,3,133,133,32,65,255,65,32, + 18,89,137,32,112,168,32,32,32,32,32,112,3,133,133,4, + 130,255,130,4,18,89,137,112,32,32,32,32,32,168,112,32, + 2,122,138,16,56,84,16,16,16,84,56,16,254,3,133,133, + 34,65,254,64,32,3,133,133,68,130,127,2,4,3,133,133, + 34,69,254,68,36,3,133,133,68,162,127,34,36,3,133,133, + 36,90,231,66,36,3,133,133,36,82,255,82,36,18,106,138, + 64,64,128,152,104,8,16,84,56,16,18,106,138,32,64,252, + 68,36,4,4,4,4,4,18,106,138,16,8,252,136,144,128, + 128,128,128,128,18,106,138,4,4,4,4,4,36,68,252,64, + 32,18,106,138,128,128,128,128,128,144,136,252,8,16,18,104, + 136,240,16,16,16,16,84,56,16,18,90,138,8,8,8,8, + 8,40,72,248,64,32,4,135,135,12,18,33,33,169,112,32, + 4,135,135,48,72,132,132,149,14,4,2,136,136,255,0,112, + 96,80,8,4,2,2,136,136,136,144,190,144,9,125,9,17, + 4,135,135,100,142,149,132,132,72,48,4,135,135,38,113,169, + 33,33,18,12,5,131,131,32,64,255,3,131,131,255,64,32, + 50,57,137,128,192,160,128,128,128,128,128,128,34,57,137,32, + 96,160,32,32,32,32,32,32,5,131,131,4,2,255,3,131, + 131,255,2,4,50,57,137,128,128,128,128,128,128,160,192,128, + 34,57,137,32,32,32,32,32,32,160,96,32,2,121,137,8, + 4,254,4,40,64,254,64,32,2,138,138,36,116,172,36,36, + 36,36,53,46,36,2,121,137,32,64,254,64,40,4,254,4, + 8,2,139,139,32,64,255,64,32,0,32,64,255,64,32,2, + 122,138,68,238,68,68,68,68,68,68,68,68,2,139,139,4, + 2,255,2,4,0,4,2,255,2,4,2,122,138,68,68,68, + 68,68,68,68,68,238,68,2,119,135,32,64,254,0,254,4, + 8,2,119,135,8,4,254,0,254,64,32,2,135,135,16,33, + 127,130,127,36,16,3,133,133,36,126,153,126,36,2,135,135, + 8,36,254,65,254,132,8,2,135,135,16,32,127,128,127,32, + 16,18,121,137,16,40,108,170,40,40,40,40,40,2,135,135, + 8,4,254,1,254,4,8,2,121,137,40,40,40,40,40,170, + 108,40,16,3,133,133,36,126,129,126,36,2,123,139,16,40, + 108,170,40,40,40,170,108,40,16,2,119,135,252,144,136,196, + 162,144,8,18,119,135,126,18,34,70,138,18,32,18,119,135, + 32,18,138,70,34,18,126,2,119,135,8,144,162,196,136,144, + 252,2,137,137,8,16,63,64,255,64,63,16,8,2,137,137, + 16,8,252,2,255,2,252,8,16,2,135,135,16,32,72,245, + 66,32,16,2,135,135,8,4,18,175,66,4,8,2,122,138, + 16,56,84,146,16,124,16,124,16,16,2,122,138,16,16,124, + 16,124,16,146,84,56,16,2,119,135,16,32,64,182,64,32, + 16,2,122,138,16,40,84,146,0,16,16,0,16,16,18,119, + 135,16,8,4,218,4,8,16,2,122,138,16,16,0,16,16, + 0,146,84,40,16,3,117,133,144,160,254,160,144,19,117,133, + 18,10,254,10,18,2,135,135,16,48,95,129,95,48,16,2, + 121,137,16,40,68,238,40,40,40,40,56,2,135,135,8,12, + 250,129,250,12,8,2,121,137,56,40,40,40,40,238,68,40, + 16,1,123,139,16,40,68,238,40,40,56,0,56,40,56,1, + 122,138,16,40,68,238,40,40,40,108,68,124,1,122,138,16, + 40,68,254,40,40,40,108,68,124,1,122,138,16,40,68,254, + 56,56,56,124,68,124,2,121,137,16,40,68,238,68,238,40, + 40,56,1,122,138,16,40,68,238,68,238,40,108,68,124,2, + 135,135,136,140,250,129,250,140,136,2,119,135,254,128,188,176, + 168,164,130,2,119,135,130,74,42,26,122,2,254,2,121,137, + 16,40,68,238,40,238,68,40,16,4,133,133,36,82,255,82, + 36,2,138,138,36,46,53,36,36,36,36,172,116,36,0,141, + 141,4,2,255,2,4,2,255,2,4,2,255,2,4,4,117, + 133,40,72,254,72,40,20,117,133,40,36,254,36,40,4,117, + 133,16,84,254,84,16,4,133,133,42,74,255,74,42,4,133, + 133,84,82,255,82,84,4,133,133,24,90,255,90,24,3,135, + 135,16,48,80,159,80,48,16,3,135,135,8,12,10,249,10, + 12,8,4,133,133,36,102,189,102,36,7,134,134,255,255,255, + 255,255,255,0,130,130,255,255,0,131,131,255,255,255,0,133, + 133,255,255,255,255,255,0,135,135,255,255,255,255,255,255,255, + 0,136,136,255,255,255,255,255,255,255,255,0,138,138,255,255, + 255,255,255,255,255,255,255,255,0,139,139,255,255,255,255,255, + 255,255,255,255,255,255,0,141,141,255,255,255,255,255,255,255, + 255,255,255,255,255,255,0,125,141,254,254,254,254,254,254,254, + 254,254,254,254,254,254,0,109,141,252,252,252,252,252,252,252, + 252,252,252,252,252,252,0,93,141,248,248,248,248,248,248,248, + 248,248,248,248,248,248,0,77,141,240,240,240,240,240,240,240, + 240,240,240,240,240,240,0,61,141,224,224,224,224,224,224,224, + 224,224,224,224,224,224,0,45,141,192,192,192,192,192,192,192, + 192,192,192,192,192,192,0,29,141,128,128,128,128,128,128,128, + 128,128,128,128,128,128,64,77,141,240,240,240,240,240,240,240, + 240,240,240,240,240,240,1,139,139,85,0,170,0,85,0,170, + 0,85,0,170,0,141,141,170,85,170,85,170,85,170,85,170, + 85,170,85,170,0,141,141,255,85,255,170,255,85,255,170,255, + 85,255,170,255,11,130,130,255,255,112,29,141,128,128,128,128, + 128,128,128,128,128,128,128,128,128,0,71,135,240,240,240,240, + 240,240,240,64,71,135,240,240,240,240,240,240,240,7,70,134, + 240,240,240,240,240,240,0,141,141,240,240,240,240,240,240,255, + 255,255,255,255,255,255,0,141,141,240,240,240,240,240,240,15, + 15,15,15,15,15,15,0,141,141,255,255,255,255,255,255,240, + 240,240,240,240,240,240,0,141,141,255,255,255,255,255,255,15, + 15,15,15,15,15,15,71,70,134,240,240,240,240,240,240,0, + 141,141,15,15,15,15,15,15,240,240,240,240,240,240,240,0, + 141,141,15,15,15,15,15,15,255,255,255,255,255,255,255,2, + 119,135,254,254,254,254,254,254,254,2,119,135,254,130,130,130, + 130,130,254,2,119,135,124,130,130,130,130,130,124,2,119,135, + 254,130,186,186,186,130,254,2,119,135,254,130,254,130,254,130, + 254,2,119,135,254,170,170,170,170,170,254,2,119,135,254,170, + 254,170,254,170,254,2,119,135,254,146,138,198,162,146,254,2, + 119,135,254,146,162,198,138,146,254,2,119,135,254,214,170,214, + 170,214,254,37,51,131,224,224,224,37,51,131,224,160,224,21, + 100,132,252,252,252,252,21,100,132,252,132,132,252,18,89,137, + 248,248,248,248,248,248,248,248,248,18,89,137,248,136,136,136, + 136,136,136,136,248,5,132,132,31,62,124,248,5,132,132,31, + 34,68,248,2,136,136,24,24,60,60,126,126,255,255,2,136, + 136,24,24,36,36,66,66,129,255,18,102,134,48,48,120,120, + 252,252,18,102,134,48,48,72,72,132,252,18,107,139,128,192, + 224,240,248,252,248,240,224,192,128,18,107,139,128,192,160,144, + 136,132,136,144,160,192,128,20,101,133,192,240,252,240,192,20, + 101,133,192,176,140,176,192,3,119,135,128,224,248,254,248,224, + 128,3,119,135,128,224,152,134,152,224,128,2,136,136,255,255, + 126,126,60,60,24,24,2,136,136,255,129,66,66,36,36,24, + 24,18,102,134,252,252,120,120,48,48,18,102,134,252,132,72, + 72,48,48,18,107,139,4,12,28,60,124,252,124,60,28,12, + 4,18,107,139,4,12,20,36,68,132,68,36,20,12,4,20, + 101,133,12,60,252,60,12,20,101,133,12,52,196,52,12,3, + 119,135,2,14,62,254,62,14,2,3,119,135,2,14,50,194, + 50,14,2,3,119,135,16,56,124,254,124,56,16,3,119,135, + 16,40,68,130,68,40,16,3,119,135,16,40,84,186,84,40, + 16,3,119,135,56,68,146,186,146,68,56,18,105,137,48,48, + 72,72,132,72,72,48,48,2,136,136,60,66,129,129,129,129, + 66,60,2,136,136,24,66,0,129,129,0,66,24,2,136,136, + 60,106,171,171,171,171,106,60,2,136,136,60,66,153,165,165, + 153,66,60,2,136,136,60,126,255,255,255,255,126,60,2,136, + 136,60,114,241,241,241,241,114,60,2,136,136,60,78,143,143, + 143,143,78,60,2,136,136,60,66,129,129,255,255,126,60,2, + 136,136,60,126,255,255,129,129,66,60,2,136,136,60,78,143, + 143,129,129,66,60,2,136,136,60,78,143,143,255,255,126,60, + 2,72,136,48,112,240,240,240,240,112,48,66,72,136,192,224, + 240,240,240,240,224,192,0,141,141,255,255,255,255,195,129,129, + 129,129,195,255,255,255,0,141,141,255,255,255,255,195,153,189, + 189,153,195,255,255,255,6,135,135,255,255,255,255,195,153,189, + 0,134,134,189,153,195,255,255,255,6,68,132,48,64,128,128, + 70,68,132,192,32,16,16,66,68,132,16,16,32,192,2,68, + 132,128,128,64,48,6,132,132,60,66,129,129,2,132,132,129, + 129,66,60,2,136,136,1,3,7,15,31,63,127,255,2,136, + 136,128,192,224,240,248,252,254,255,2,136,136,255,254,252,248, + 240,224,192,128,2,136,136,255,127,63,31,15,7,3,1,20, + 85,133,112,136,136,136,112,2,120,136,254,226,226,226,226,226, + 226,254,2,120,136,254,142,142,142,142,142,142,254,2,120,136, + 254,254,250,242,226,194,130,254,2,120,136,254,130,134,142,158, + 190,254,254,2,120,136,254,146,146,146,146,146,146,254,2,122, + 138,16,16,40,40,68,84,124,146,130,254,2,122,138,16,16, + 56,56,116,116,116,242,242,254,2,122,138,16,16,56,56,92, + 92,92,158,158,254,2,136,136,60,66,129,129,129,129,66,60, + 2,119,135,254,146,146,242,130,130,254,2,119,135,254,130,130, + 242,146,146,254,2,119,135,254,130,130,158,146,146,254,2,119, + 135,254,146,146,158,130,130,254,2,119,135,124,146,146,242,130, + 130,124,2,119,135,124,130,130,242,146,146,124,2,119,135,124, + 130,130,158,146,146,124,2,119,135,124,146,146,158,130,130,124, + 19,102,134,252,136,144,160,192,128,19,102,134,252,68,36,20, + 12,4,19,102,134,128,192,160,144,136,252,19,102,134,252,132, + 132,132,132,252,19,102,134,252,252,252,252,252,252,37,68,132, + 240,144,144,240,37,68,132,240,240,240,240,19,102,134,4,12, + 20,36,68,252}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 11, '1' Height: 4 + Calculated Max Values w= 8 h=11 x= 2 y= 3 dx= 8 dy= 0 ascent=11 len=11 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent =11 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =11 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13_75r[496] U8G_SECTION(".progmem.u8g_font_8x13_75r") = { + 1,8,13,0,254,11,1,83,0,0,32,79,0,11,0,11, + 0,2,119,135,254,254,254,254,254,254,254,2,119,135,254,130, + 130,130,130,130,254,2,119,135,124,130,130,130,130,130,124,2, + 119,135,254,130,186,186,186,130,254,2,119,135,254,130,254,130, + 254,130,254,2,119,135,254,170,170,170,170,170,254,2,119,135, + 254,170,254,170,254,170,254,2,119,135,254,146,138,198,162,146, + 254,2,119,135,254,146,162,198,138,146,254,2,119,135,254,214, + 170,214,170,214,254,37,51,131,224,224,224,37,51,131,224,160, + 224,21,100,132,252,252,252,252,21,100,132,252,132,132,252,18, + 89,137,248,248,248,248,248,248,248,248,248,18,89,137,248,136, + 136,136,136,136,136,136,248,5,132,132,31,62,124,248,5,132, + 132,31,34,68,248,2,136,136,24,24,60,60,126,126,255,255, + 2,136,136,24,24,36,36,66,66,129,255,18,102,134,48,48, + 120,120,252,252,18,102,134,48,48,72,72,132,252,18,107,139, + 128,192,224,240,248,252,248,240,224,192,128,18,107,139,128,192, + 160,144,136,132,136,144,160,192,128,20,101,133,192,240,252,240, + 192,20,101,133,192,176,140,176,192,3,119,135,128,224,248,254, + 248,224,128,3,119,135,128,224,152,134,152,224,128,2,136,136, + 255,255,126,126,60,60,24,24,2,136,136,255,129,66,66,36, + 36,24,24,18,102,134,252,252,120,120,48,48,18,102,134,252, + 132,72,72,48,48,18,107,139,4,12,28,60,124,252,124,60, + 28,12,4,18,107,139,4,12,20,36,68,132,68,36,20,12, + 4,20,101,133,12,60,252,60,12,20,101,133,12,52,196,52, + 12,3,119,135,2,14,62,254,62,14,2,3,119,135,2,14, + 50,194,50,14,2,3,119,135,16,56,124,254,124,56,16,3, + 119,135,16,40,68,130,68,40,16,3,119,135,16,40,84,186, + 84,40,16,3,119,135,56,68,146,186,146,68,56,18,105,137, + 48,48,72,72,132,72,72,48,48,2,136,136,60,66,129,129, + 129,129,66,60,2,136,136,24,66,0,129,129,0,66,24,2, + 136,136,60,106,171,171,171,171,106,60,2,136,136,60,66,153, + 165,165,153,66,60,2,136,136,60,126,255,255,255,255,126,60 + }; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 7 h=12 x= 3 y=11 dx= 8 dy= 0 ascent=11 len=12 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13B[2302] U8G_SECTION(".progmem.u8g_font_8x13B") = { + 1,8,13,0,254,10,1,127,3,12,32,255,254,11,254,10, + 254,13,0,128,50,42,138,192,192,192,192,192,192,192,0,192, + 192,24,84,132,216,216,216,216,2,121,137,108,108,254,254,108, + 254,254,108,108,1,123,139,16,124,214,208,240,124,30,22,214, + 124,16,2,122,138,230,166,236,24,24,48,48,110,202,206,2, + 119,135,120,204,204,120,206,204,126,56,36,132,192,192,192,192, + 17,91,139,24,48,96,96,192,192,192,96,96,48,24,17,91, + 139,192,96,48,48,24,24,24,48,48,96,192,3,119,135,16, + 16,254,56,56,108,68,20,102,134,48,48,252,252,48,48,33, + 69,133,240,112,112,96,192,22,97,129,252,34,67,131,96,240, + 96,2,122,138,2,6,6,12,24,48,96,192,192,128,2,122, + 138,56,108,198,198,198,198,198,198,108,56,18,106,138,48,112, + 240,48,48,48,48,48,48,252,2,122,138,124,198,198,6,12, + 24,48,96,192,254,2,122,138,254,6,12,24,60,6,6,6, + 198,124,2,122,138,12,28,60,108,204,204,254,12,12,12,2, + 122,138,254,192,192,252,230,6,6,6,198,124,2,122,138,60, + 96,192,192,252,230,198,198,230,124,2,122,138,254,6,6,12, + 24,24,48,48,48,48,2,122,138,124,198,198,198,124,198,198, + 198,198,124,2,122,138,124,206,198,198,206,126,6,6,12,120, + 34,72,136,96,240,96,0,0,96,240,96,33,73,137,96,240, + 96,0,240,112,112,96,192,18,105,137,12,24,48,96,192,96, + 48,24,12,20,100,132,252,0,0,252,18,105,137,192,96,48, + 24,12,24,48,96,192,2,122,138,124,198,198,6,12,24,24, + 0,24,24,2,121,137,124,254,206,222,210,210,222,224,126,2, + 122,138,56,124,198,198,198,254,198,198,198,198,2,122,138,252, + 102,102,102,124,102,102,102,102,252,2,122,138,124,230,198,192, + 192,192,192,198,230,124,2,122,138,252,102,102,102,102,102,102, + 102,102,252,2,122,138,254,192,192,192,248,192,192,192,192,254, + 2,122,138,254,192,192,192,248,192,192,192,192,192,2,122,138, + 124,198,198,192,192,192,206,198,198,124,2,122,138,198,198,198, + 198,254,198,198,198,198,198,34,74,138,240,96,96,96,96,96, + 96,96,96,240,2,122,138,14,6,6,6,6,6,6,198,198, + 124,2,122,138,198,198,204,216,240,240,216,204,198,198,2,122, + 138,192,192,192,192,192,192,192,192,194,254,2,122,138,198,198, + 238,254,214,198,198,198,198,198,2,122,138,198,198,230,230,246, + 222,206,206,198,198,2,122,138,124,198,198,198,198,198,198,198, + 198,124,2,122,138,252,198,198,198,198,252,192,192,192,192,1, + 123,139,124,198,198,198,198,198,198,198,222,124,6,2,122,138, + 252,198,198,198,252,248,204,204,198,198,2,122,138,124,198,198, + 192,124,6,6,198,198,124,18,106,138,252,48,48,48,48,48, + 48,48,48,48,2,122,138,198,198,198,198,198,198,198,198,198, + 124,2,122,138,198,198,198,198,68,108,108,56,56,16,2,122, + 138,198,198,198,198,198,198,214,214,254,108,2,122,138,198,198, + 108,108,56,56,108,108,198,198,18,106,138,204,204,204,120,120, + 48,48,48,48,48,2,122,138,254,6,6,12,24,48,96,192, + 192,254,17,91,139,248,192,192,192,192,192,192,192,192,192,248, + 2,122,138,128,192,192,96,48,24,12,6,6,2,17,91,139, + 248,24,24,24,24,24,24,24,24,24,248,8,116,132,16,56, + 108,198,1,113,129,254,41,67,131,192,96,48,2,119,135,124, + 6,126,198,198,206,118,2,122,138,192,192,192,220,230,198,198, + 198,230,220,2,119,135,124,230,192,192,192,230,124,2,122,138, + 6,6,6,118,206,198,198,198,206,118,2,119,135,124,198,198, + 254,192,198,124,2,122,138,60,102,96,96,96,252,96,96,96, + 96,0,121,137,126,204,204,204,120,240,124,198,124,2,122,138, + 192,192,192,220,230,198,198,198,198,198,34,73,137,96,96,0, + 224,96,96,96,96,240,0,123,139,6,6,0,14,6,6,6, + 6,198,198,124,2,122,138,192,192,192,204,216,240,240,216,204, + 198,34,74,138,224,96,96,96,96,96,96,96,96,240,2,119, + 135,108,254,214,214,198,198,198,2,119,135,220,230,198,198,198, + 198,198,2,119,135,124,198,198,198,198,198,124,0,121,137,220, + 230,198,198,198,230,220,192,192,0,121,137,118,206,198,198,198, + 206,118,6,6,2,119,135,220,230,192,192,192,192,192,2,119, + 135,124,198,96,56,12,198,124,2,122,138,96,96,96,96,252, + 96,96,96,102,60,2,119,135,198,198,198,198,198,206,118,2, + 119,135,198,198,198,198,108,108,56,2,119,135,198,198,198,214, + 214,254,108,2,119,135,198,198,108,56,108,198,198,0,121,137, + 198,198,198,198,206,118,6,198,124,2,119,135,254,12,24,48, + 96,192,254,17,107,139,60,96,96,96,48,224,48,96,96,96, + 60,50,42,138,192,192,192,192,192,192,192,192,192,192,17,107, + 139,240,24,24,24,48,28,48,24,24,24,240,8,115,131,114, + 254,156,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,13,0,128,50,42,138,192,192,0,192,192,192,192, + 192,192,192,3,104,136,16,124,212,208,208,212,124,16,1,123, + 139,60,102,96,96,252,96,96,96,240,190,224,3,119,135,198, + 254,108,68,108,254,198,18,106,138,204,204,204,120,120,252,48, + 252,48,48,50,42,138,192,192,192,192,0,0,192,192,192,192, + 18,106,138,120,204,192,120,204,204,120,12,204,120,26,82,130, + 216,216,3,121,137,124,198,186,234,226,234,186,198,124,21,87, + 135,240,24,248,152,248,0,248,3,119,135,54,108,216,176,216, + 108,54,3,101,133,252,252,4,4,4,22,81,129,248,3,121, + 137,124,198,186,170,186,178,170,198,124,28,97,129,252,24,100, + 132,120,204,204,120,19,103,135,48,48,252,48,48,0,252,22, + 70,134,224,176,48,96,192,240,22,70,134,224,176,96,48,176, + 224,41,67,131,48,96,192,0,121,137,198,198,198,198,198,238, + 252,192,192,1,123,139,62,122,202,202,202,122,58,10,10,10, + 14,54,34,130,192,192,16,67,131,48,144,96,22,70,134,96, + 224,96,96,96,240,21,87,135,112,248,136,248,112,0,248,3, + 119,135,216,108,54,26,54,108,216,2,122,138,96,224,96,96, + 98,246,14,26,30,6,2,122,138,96,224,96,96,124,246,6, + 12,24,30,2,122,138,224,176,96,48,178,230,14,26,30,6, + 18,106,138,48,48,0,48,48,96,192,204,204,120,2,122,138, + 48,24,0,56,124,198,198,254,198,198,2,122,138,24,48,0, + 56,124,198,198,254,198,198,2,122,138,56,108,0,56,124,198, + 198,254,198,198,2,122,138,52,88,0,56,124,198,198,254,198, + 198,2,122,138,108,108,0,56,124,198,198,254,198,198,2,123, + 139,24,36,24,0,56,124,198,198,254,198,198,2,122,138,126, + 248,216,216,216,252,216,216,216,222,0,124,140,124,230,192,192, + 192,192,192,230,124,24,72,48,2,122,138,48,24,0,254,192, + 192,248,192,192,254,2,122,138,24,48,0,254,192,192,248,192, + 192,254,2,122,138,56,108,0,254,192,192,248,192,192,254,2, + 122,138,108,108,0,254,192,192,248,192,192,254,34,74,138,192, + 96,0,240,96,96,96,96,96,240,34,74,138,48,96,0,240, + 96,96,96,96,96,240,34,90,138,112,216,0,240,96,96,96, + 96,96,240,34,90,138,216,216,0,240,96,96,96,96,96,240, + 2,120,136,252,102,102,246,102,102,102,252,2,122,138,52,88, + 0,198,230,246,214,222,206,198,2,123,139,48,24,0,124,198, + 198,198,198,198,198,124,2,123,139,24,48,0,124,198,198,198, + 198,198,198,124,2,123,139,56,108,0,124,198,198,198,198,198, + 198,124,2,123,139,52,88,0,124,198,198,198,198,198,198,124, + 2,123,139,108,108,0,124,198,198,198,198,198,198,124,2,119, + 135,198,198,124,56,124,198,198,1,122,138,2,124,206,214,214, + 214,214,230,124,128,2,122,138,48,24,0,198,198,198,198,198, + 198,124,2,122,138,24,48,0,198,198,198,198,198,198,124,2, + 122,138,56,108,0,198,198,198,198,198,198,124,2,122,138,108, + 108,0,198,198,198,198,198,198,124,18,106,138,24,48,0,204, + 72,120,48,48,48,48,2,121,137,192,252,198,198,198,252,192, + 192,192,2,122,138,60,102,102,108,236,108,102,102,102,108,2, + 122,138,48,24,0,124,6,126,198,198,206,118,2,122,138,24, + 48,0,124,6,126,198,198,206,118,2,122,138,56,108,0,124, + 6,126,198,198,206,118,2,122,138,52,88,0,124,6,126,198, + 198,206,118,2,122,138,108,108,0,124,6,126,198,198,206,118, + 2,123,139,24,36,24,0,124,6,126,198,198,206,118,2,119, + 135,108,218,26,124,216,218,108,0,122,138,124,230,192,192,192, + 230,124,24,72,48,2,122,138,48,24,0,124,198,198,254,192, + 198,124,2,122,138,24,48,0,124,198,198,254,192,198,124,2, + 122,138,56,108,0,124,198,198,254,192,198,124,2,122,138,108, + 108,0,124,198,198,254,192,198,124,34,74,138,192,96,0,224, + 96,96,96,96,96,240,34,74,138,96,192,0,224,96,96,96, + 96,96,240,18,90,138,112,216,0,112,48,48,48,48,48,120, + 18,90,138,216,216,0,112,48,48,48,48,48,120,2,122,138, + 108,56,120,12,126,198,198,198,198,124,2,122,138,52,88,0, + 220,230,198,198,198,198,198,2,122,138,48,24,0,124,198,198, + 198,198,198,124,2,122,138,24,48,0,124,198,198,198,198,198, + 124,2,122,138,56,108,0,124,198,198,198,198,198,124,2,122, + 138,52,88,0,124,198,198,198,198,198,124,2,122,138,108,108, + 0,124,198,198,198,198,198,124,19,103,135,48,48,0,252,0, + 48,48,1,121,137,2,124,206,214,214,214,230,124,128,2,122, + 138,48,24,0,198,198,198,198,198,206,118,2,122,138,24,48, + 0,198,198,198,198,198,206,118,2,122,138,56,108,0,198,198, + 198,198,198,206,118,2,122,138,108,108,0,198,198,198,198,198, + 206,118,0,124,140,24,48,0,198,198,198,198,206,118,6,198, + 124,0,123,139,192,192,220,230,198,198,198,230,220,192,192,0, + 124,140,108,108,0,198,198,198,198,206,118,6,198,124}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 7 h=11 x= 3 y=11 dx= 8 dy= 0 ascent=11 len=11 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =10 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13Br[1123] U8G_SECTION(".progmem.u8g_font_8x13Br") = { + 1,8,13,0,254,10,1,127,3,12,32,127,254,11,254,10, + 254,13,0,128,50,42,138,192,192,192,192,192,192,192,0,192, + 192,24,84,132,216,216,216,216,2,121,137,108,108,254,254,108, + 254,254,108,108,1,123,139,16,124,214,208,240,124,30,22,214, + 124,16,2,122,138,230,166,236,24,24,48,48,110,202,206,2, + 119,135,120,204,204,120,206,204,126,56,36,132,192,192,192,192, + 17,91,139,24,48,96,96,192,192,192,96,96,48,24,17,91, + 139,192,96,48,48,24,24,24,48,48,96,192,3,119,135,16, + 16,254,56,56,108,68,20,102,134,48,48,252,252,48,48,33, + 69,133,240,112,112,96,192,22,97,129,252,34,67,131,96,240, + 96,2,122,138,2,6,6,12,24,48,96,192,192,128,2,122, + 138,56,108,198,198,198,198,198,198,108,56,18,106,138,48,112, + 240,48,48,48,48,48,48,252,2,122,138,124,198,198,6,12, + 24,48,96,192,254,2,122,138,254,6,12,24,60,6,6,6, + 198,124,2,122,138,12,28,60,108,204,204,254,12,12,12,2, + 122,138,254,192,192,252,230,6,6,6,198,124,2,122,138,60, + 96,192,192,252,230,198,198,230,124,2,122,138,254,6,6,12, + 24,24,48,48,48,48,2,122,138,124,198,198,198,124,198,198, + 198,198,124,2,122,138,124,206,198,198,206,126,6,6,12,120, + 34,72,136,96,240,96,0,0,96,240,96,33,73,137,96,240, + 96,0,240,112,112,96,192,18,105,137,12,24,48,96,192,96, + 48,24,12,20,100,132,252,0,0,252,18,105,137,192,96,48, + 24,12,24,48,96,192,2,122,138,124,198,198,6,12,24,24, + 0,24,24,2,121,137,124,254,206,222,210,210,222,224,126,2, + 122,138,56,124,198,198,198,254,198,198,198,198,2,122,138,252, + 102,102,102,124,102,102,102,102,252,2,122,138,124,230,198,192, + 192,192,192,198,230,124,2,122,138,252,102,102,102,102,102,102, + 102,102,252,2,122,138,254,192,192,192,248,192,192,192,192,254, + 2,122,138,254,192,192,192,248,192,192,192,192,192,2,122,138, + 124,198,198,192,192,192,206,198,198,124,2,122,138,198,198,198, + 198,254,198,198,198,198,198,34,74,138,240,96,96,96,96,96, + 96,96,96,240,2,122,138,14,6,6,6,6,6,6,198,198, + 124,2,122,138,198,198,204,216,240,240,216,204,198,198,2,122, + 138,192,192,192,192,192,192,192,192,194,254,2,122,138,198,198, + 238,254,214,198,198,198,198,198,2,122,138,198,198,230,230,246, + 222,206,206,198,198,2,122,138,124,198,198,198,198,198,198,198, + 198,124,2,122,138,252,198,198,198,198,252,192,192,192,192,1, + 123,139,124,198,198,198,198,198,198,198,222,124,6,2,122,138, + 252,198,198,198,252,248,204,204,198,198,2,122,138,124,198,198, + 192,124,6,6,198,198,124,18,106,138,252,48,48,48,48,48, + 48,48,48,48,2,122,138,198,198,198,198,198,198,198,198,198, + 124,2,122,138,198,198,198,198,68,108,108,56,56,16,2,122, + 138,198,198,198,198,198,198,214,214,254,108,2,122,138,198,198, + 108,108,56,56,108,108,198,198,18,106,138,204,204,204,120,120, + 48,48,48,48,48,2,122,138,254,6,6,12,24,48,96,192, + 192,254,17,91,139,248,192,192,192,192,192,192,192,192,192,248, + 2,122,138,128,192,192,96,48,24,12,6,6,2,17,91,139, + 248,24,24,24,24,24,24,24,24,24,248,8,116,132,16,56, + 108,198,1,113,129,254,41,67,131,192,96,48,2,119,135,124, + 6,126,198,198,206,118,2,122,138,192,192,192,220,230,198,198, + 198,230,220,2,119,135,124,230,192,192,192,230,124,2,122,138, + 6,6,6,118,206,198,198,198,206,118,2,119,135,124,198,198, + 254,192,198,124,2,122,138,60,102,96,96,96,252,96,96,96, + 96,0,121,137,126,204,204,204,120,240,124,198,124,2,122,138, + 192,192,192,220,230,198,198,198,198,198,34,73,137,96,96,0, + 224,96,96,96,96,240,0,123,139,6,6,0,14,6,6,6, + 6,198,198,124,2,122,138,192,192,192,204,216,240,240,216,204, + 198,34,74,138,224,96,96,96,96,96,96,96,96,240,2,119, + 135,108,254,214,214,198,198,198,2,119,135,220,230,198,198,198, + 198,198,2,119,135,124,198,198,198,198,198,124,0,121,137,220, + 230,198,198,198,230,220,192,192,0,121,137,118,206,198,198,198, + 206,118,6,6,2,119,135,220,230,192,192,192,192,192,2,119, + 135,124,198,96,56,12,198,124,2,122,138,96,96,96,96,252, + 96,96,96,102,60,2,119,135,198,198,198,198,198,206,118,2, + 119,135,198,198,198,198,108,108,56,2,119,135,198,198,198,214, + 214,254,108,2,119,135,198,198,108,56,108,198,198,0,121,137, + 198,198,198,198,206,118,6,198,124,2,119,135,254,12,24,48, + 96,192,254,17,107,139,60,96,96,96,48,224,48,96,96,96, + 60,50,42,138,192,192,192,192,192,192,192,192,192,192,17,107, + 139,240,24,24,24,48,28,48,24,24,24,240,8,115,131,114, + 254,156,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 7 h=11 x= 3 y=11 dx= 8 dy= 0 ascent=11 len=11 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent = 9 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13[2152] U8G_SECTION(".progmem.u8g_font_8x13") = { + 1,8,13,0,254,9,1,97,2,205,32,255,254,11,254,9, + 254,13,0,128,50,25,137,128,128,128,128,128,128,128,0,128, + 40,67,131,144,144,144,19,103,135,72,72,252,72,252,72,72, + 18,89,137,32,120,160,160,112,40,40,240,32,18,105,137,68, + 164,72,16,16,32,72,84,136,18,103,135,96,144,144,96,148, + 136,116,56,19,131,128,128,128,50,57,137,32,64,64,128,128, + 128,64,64,32,34,57,137,128,64,64,32,32,32,64,64,128, + 22,101,133,72,48,252,48,72,20,85,133,32,32,248,32,32, + 17,67,131,112,96,128,22,81,129,248,33,51,131,64,224,64, + 2,121,137,2,2,4,8,16,32,64,128,128,18,105,137,48, + 72,132,132,132,132,132,72,48,18,89,137,32,96,160,32,32, + 32,32,32,248,18,105,137,120,132,132,4,8,48,64,128,252, + 18,105,137,252,4,8,16,56,4,4,132,120,18,105,137,8, + 24,40,72,136,136,252,8,8,18,105,137,252,128,128,184,196, + 4,4,132,120,18,105,137,56,64,128,128,184,196,132,132,120, + 18,105,137,252,4,8,16,16,32,32,64,64,18,105,137,120, + 132,132,132,120,132,132,132,120,18,105,137,120,132,132,140,116, + 4,4,8,112,33,56,136,64,224,64,0,0,64,224,64,17, + 72,136,32,112,32,0,0,112,96,128,34,89,137,8,16,32, + 64,128,64,32,16,8,20,100,132,252,0,0,252,18,89,137, + 128,64,32,16,8,16,32,64,128,18,105,137,120,132,132,4, + 8,16,16,0,16,18,105,137,120,132,132,156,164,172,148,128, + 120,18,105,137,48,72,132,132,132,252,132,132,132,18,105,137, + 240,136,132,136,240,136,132,136,240,18,105,137,120,132,128,128, + 128,128,128,132,120,18,105,137,240,136,132,132,132,132,132,136, + 240,18,105,137,252,128,128,128,240,128,128,128,252,18,105,137, + 252,128,128,128,240,128,128,128,128,18,105,137,120,132,128,128, + 128,156,132,140,116,18,105,137,132,132,132,132,252,132,132,132, + 132,18,89,137,248,32,32,32,32,32,32,32,248,18,121,137, + 62,8,8,8,8,8,8,136,112,18,105,137,132,136,144,160, + 192,160,144,136,132,18,105,137,128,128,128,128,128,128,128,128, + 252,2,121,137,130,130,198,170,146,146,130,130,130,18,105,137, + 132,132,196,164,148,140,132,132,132,18,105,137,120,132,132,132, + 132,132,132,132,120,18,105,137,248,132,132,132,248,128,128,128, + 128,17,106,138,120,132,132,132,132,132,164,148,120,4,18,105, + 137,248,132,132,132,248,160,144,136,132,18,105,137,120,132,128, + 128,120,4,4,132,120,2,121,137,254,16,16,16,16,16,16, + 16,16,18,105,137,132,132,132,132,132,132,132,132,120,2,121, + 137,130,130,68,68,68,40,40,40,16,2,121,137,130,130,130, + 130,146,146,146,170,68,2,121,137,130,130,68,40,16,40,68, + 130,130,2,121,137,130,130,68,40,16,16,16,16,16,18,105, + 137,252,4,8,16,32,64,128,128,252,34,73,137,240,128,128, + 128,128,128,128,128,240,2,121,137,128,128,64,32,16,8,4, + 2,2,18,73,137,240,16,16,16,16,16,16,16,240,24,83, + 131,32,80,136,1,113,129,254,58,34,130,128,64,18,102,134, + 120,4,124,132,140,116,18,105,137,128,128,128,184,196,132,132, + 196,184,18,102,134,120,132,128,128,132,120,18,105,137,4,4, + 4,116,140,132,132,140,116,18,102,134,120,132,252,128,132,120, + 18,105,137,56,68,64,64,248,64,64,64,64,16,104,136,116, + 136,136,112,128,120,132,120,18,105,137,128,128,128,184,196,132, + 132,132,132,18,88,136,32,0,96,32,32,32,32,248,16,90, + 138,8,0,24,8,8,8,8,136,136,112,18,105,137,128,128, + 128,136,144,224,144,136,132,18,89,137,96,32,32,32,32,32, + 32,32,248,2,118,134,236,146,146,146,146,130,18,102,134,184, + 196,132,132,132,132,18,102,134,120,132,132,132,132,120,16,104, + 136,184,196,132,196,184,128,128,128,16,104,136,116,140,132,140, + 116,4,4,4,18,102,134,184,68,64,64,64,64,18,102,134, + 120,132,96,24,132,120,18,104,136,64,64,248,64,64,64,68, + 56,18,102,134,136,136,136,136,136,116,18,86,134,136,136,136, + 80,80,32,2,118,134,130,130,146,146,170,68,18,102,134,132, + 72,48,48,72,132,16,104,136,132,132,132,140,116,4,132,120, + 18,102,134,252,8,16,32,64,252,34,89,137,56,64,64,32, + 192,32,64,64,56,50,25,137,128,128,128,128,128,128,128,128, + 128,18,89,137,224,16,16,32,24,32,16,16,224,24,83,131, + 72,168,144,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,13,0,128,50,25,137,128,0,128,128,128,128, + 128,128,128,19,88,136,32,112,168,160,160,168,112,32,2,121, + 137,28,34,32,112,32,32,32,98,220,19,102,134,132,120,72, + 72,120,132,2,121,137,130,130,68,40,124,16,124,16,16,50, + 25,137,128,128,128,128,0,128,128,128,128,34,74,138,96,144, + 128,96,144,144,96,16,144,96,42,66,130,144,144,3,121,137, + 56,68,146,170,162,170,146,68,56,20,87,135,112,8,120,136, + 120,0,248,3,119,135,18,36,72,144,72,36,18,19,100,132, + 252,4,4,4,38,65,129,240,3,121,137,56,68,146,170,170, + 178,170,68,56,26,97,129,252,39,68,132,96,144,144,96,19, + 87,135,32,32,248,32,32,0,248,22,70,134,96,144,16,96, + 128,240,22,70,134,96,144,32,16,144,96,58,34,130,64,128, + 17,103,135,132,132,132,132,204,180,128,18,105,137,124,232,232, + 232,104,40,40,40,40,54,33,129,192,48,34,130,64,192,22, + 54,134,64,192,64,64,64,224,21,70,134,96,144,144,96,0, + 240,3,119,135,144,72,36,18,36,72,144,2,122,138,64,192, + 64,64,66,230,10,18,26,6,2,122,138,64,192,64,64,76, + 242,2,12,16,30,2,122,138,96,144,32,16,146,102,10,18, + 26,6,18,105,137,32,0,32,32,64,128,132,132,120,18,106, + 138,32,16,0,48,72,132,132,252,132,132,18,106,138,16,32, + 0,48,72,132,132,252,132,132,18,106,138,48,72,0,48,72, + 132,132,252,132,132,18,106,138,100,152,0,48,72,132,132,252, + 132,132,18,106,138,72,72,0,48,72,132,132,252,132,132,18, + 106,138,48,72,48,48,72,132,132,252,132,132,2,121,137,110, + 144,144,144,156,240,144,144,158,16,107,139,120,132,128,128,128, + 128,128,132,120,16,32,18,106,138,32,16,0,252,128,128,240, + 128,128,252,18,106,138,16,32,0,252,128,128,240,128,128,252, + 18,106,138,48,72,0,252,128,128,240,128,128,252,18,106,138, + 72,72,0,252,128,128,240,128,128,252,18,90,138,64,32,0, + 248,32,32,32,32,32,248,18,90,138,16,32,0,248,32,32, + 32,32,32,248,18,90,138,48,72,0,248,32,32,32,32,32, + 248,18,90,138,136,136,0,248,32,32,32,32,32,248,2,121, + 137,120,68,66,66,226,66,66,68,120,2,122,138,100,152,0, + 130,194,162,146,138,134,130,2,122,138,32,16,0,124,130,130, + 130,130,130,124,2,122,138,8,16,0,124,130,130,130,130,130, + 124,2,122,138,24,36,0,124,130,130,130,130,130,124,2,122, + 138,100,152,0,124,130,130,130,130,130,124,2,122,138,68,68, + 0,124,130,130,130,130,130,124,19,102,134,132,72,48,48,72, + 132,17,107,139,4,120,140,148,148,164,164,164,196,120,128,18, + 106,138,64,32,0,132,132,132,132,132,132,120,18,106,138,16, + 32,0,132,132,132,132,132,132,120,18,106,138,48,72,0,132, + 132,132,132,132,132,120,18,106,138,72,72,0,132,132,132,132, + 132,132,120,18,90,138,16,32,0,136,136,80,32,32,32,32, + 18,105,137,128,248,132,132,132,248,128,128,128,18,105,137,112, + 136,136,144,160,152,132,132,184,18,105,137,32,16,0,120,4, + 124,132,140,116,18,105,137,8,16,0,120,4,124,132,140,116, + 18,105,137,48,72,0,120,4,124,132,140,116,18,105,137,100, + 152,0,120,4,124,132,140,116,18,105,137,72,72,0,120,4, + 124,132,140,116,18,106,138,48,72,48,0,120,4,124,132,140, + 116,2,118,134,108,18,124,144,146,108,16,104,136,120,132,128, + 128,132,120,16,32,18,105,137,32,16,0,120,132,252,128,132, + 120,18,105,137,16,32,0,120,132,252,128,132,120,18,105,137, + 48,72,0,120,132,252,128,132,120,18,105,137,72,72,0,120, + 132,252,128,132,120,18,89,137,64,32,0,96,32,32,32,32, + 248,18,89,137,32,64,0,96,32,32,32,32,248,18,89,137, + 96,144,0,96,32,32,32,32,248,18,89,137,144,144,0,96, + 32,32,32,32,248,18,106,138,72,48,80,8,120,132,132,132, + 132,120,18,105,137,100,152,0,184,196,132,132,132,132,18,105, + 137,64,32,0,120,132,132,132,132,120,18,105,137,16,32,0, + 120,132,132,132,132,120,18,105,137,48,72,0,120,132,132,132, + 132,120,18,105,137,100,152,0,120,132,132,132,132,120,18,105, + 137,72,72,0,120,132,132,132,132,120,19,87,135,32,32,0, + 248,0,32,32,17,104,136,4,120,140,148,164,196,120,128,18, + 105,137,64,32,0,136,136,136,136,136,116,18,105,137,16,32, + 0,136,136,136,136,136,116,18,105,137,48,72,0,136,136,136, + 136,136,116,18,105,137,80,80,0,136,136,136,136,136,116,16, + 107,139,16,32,0,132,132,132,140,116,4,132,120,16,106,138, + 128,128,184,196,132,132,196,184,128,128,16,107,139,72,72,0, + 132,132,132,140,116,4,132,120}; +/* + Fontname: -Misc-Fixed-Medium-O-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 8 h=11 x= 3 y=11 dx= 8 dy= 0 ascent=11 len=11 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent = 9 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13O[2153] U8G_SECTION(".progmem.u8g_font_8x13O") = { + 1,8,13,0,254,9,1,98,2,206,32,255,254,11,254,9, + 254,13,0,128,50,41,137,64,64,64,64,128,128,128,0,128, + 40,67,131,144,144,144,3,119,135,36,36,126,36,252,72,72, + 18,105,137,16,60,80,80,56,40,40,240,32,2,121,137,34, + 82,36,8,16,32,72,148,136,18,104,136,24,36,40,48,84, + 136,152,100,56,19,131,128,128,128,34,73,137,16,32,64,64, + 128,128,64,64,32,34,73,137,64,32,32,16,16,32,32,64, + 128,20,101,133,72,48,252,96,144,20,85,133,32,32,248,64, + 64,33,67,131,112,96,128,22,81,129,248,33,51,131,64,224, + 64,2,137,137,1,1,2,4,24,32,64,128,128,2,121,137, + 24,36,66,66,66,132,132,72,48,18,89,137,16,48,80,16, + 16,32,32,32,248,2,121,137,60,66,66,2,12,48,64,128, + 252,2,121,137,126,2,4,8,24,4,4,132,120,18,105,137, + 4,12,20,36,72,136,252,16,16,2,121,137,62,32,32,92, + 98,2,4,132,120,2,121,137,28,34,64,64,120,132,132,132, + 120,18,105,137,252,4,8,16,32,64,64,128,128,2,121,137, + 60,66,66,66,124,132,132,132,120,18,105,137,120,132,132,140, + 116,8,8,16,224,33,72,136,32,112,32,0,0,64,224,64, + 17,88,136,16,56,16,0,0,112,96,128,18,89,137,8,16, + 32,64,128,128,64,32,16,4,116,132,126,0,0,252,18,89, + 137,64,32,16,8,8,16,32,64,128,18,105,137,56,68,132, + 8,16,32,32,0,32,2,121,137,60,66,66,78,82,166,152, + 128,120,2,121,137,24,36,66,66,66,252,132,132,132,2,121, + 137,120,68,66,68,120,136,132,136,240,2,121,137,60,66,64, + 64,64,128,128,132,120,2,121,137,120,68,66,66,66,132,132, + 136,240,2,121,137,126,64,64,64,120,128,128,128,252,2,121, + 137,126,64,64,64,120,128,128,128,128,2,121,137,60,66,64, + 64,64,156,132,140,116,2,121,137,66,66,66,66,124,132,132, + 132,132,18,105,137,124,16,16,16,16,32,32,32,248,2,121, + 137,30,4,4,4,4,8,8,136,112,2,121,137,66,68,72, + 80,96,160,144,136,132,18,105,137,64,64,64,64,64,128,128, + 128,252,2,137,137,65,65,99,85,73,130,130,130,130,2,121, + 137,66,66,98,82,74,140,132,132,132,2,121,137,60,66,66, + 66,66,132,132,132,120,2,121,137,124,66,66,66,124,128,128, + 128,128,1,122,138,60,66,66,66,132,132,164,148,120,4,2, + 121,137,124,66,66,66,124,160,144,136,132,2,121,137,60,66, + 64,64,56,4,4,132,120,2,121,137,254,16,16,16,16,32, + 32,32,32,2,121,137,66,66,66,66,132,132,132,132,120,2, + 121,137,130,130,132,68,72,72,80,80,32,2,137,137,65,65, + 65,65,73,146,146,170,68,2,137,137,65,65,34,20,24,40, + 68,130,130,2,121,137,130,130,68,40,16,16,32,32,32,2, + 121,137,126,2,4,8,16,32,64,128,252,18,89,137,120,64, + 64,64,64,128,128,128,240,18,105,137,128,128,64,32,16,16, + 8,4,4,18,89,137,120,8,8,8,8,16,16,16,240,24, + 83,131,32,80,136,1,113,129,254,58,34,130,128,64,2,118, + 134,60,2,124,132,140,116,2,121,137,64,64,64,92,98,66, + 132,196,184,2,118,134,60,66,128,128,132,120,2,121,137,2, + 2,2,58,68,132,132,140,116,2,118,134,60,66,124,128,132, + 120,18,105,137,56,68,64,64,248,64,128,128,128,0,120,136, + 58,68,136,112,128,120,132,120,2,121,137,32,32,64,92,98, + 66,132,132,132,18,88,136,16,0,48,16,16,32,32,248,16, + 106,138,4,0,12,4,4,8,8,136,136,112,18,105,137,64, + 64,64,68,88,96,144,136,132,18,89,137,48,16,16,16,16, + 32,32,32,248,2,134,134,118,73,73,146,146,130,2,118,134, + 92,98,66,132,132,132,2,118,134,60,66,66,132,132,120,0, + 136,136,46,49,33,98,92,64,128,128,0,120,136,58,70,132, + 140,116,4,8,8,18,102,134,184,68,64,128,128,128,2,118, + 134,60,66,32,24,132,120,18,88,136,64,64,248,64,128,128, + 136,112,18,102,134,68,68,68,136,136,116,18,86,134,136,136, + 144,160,160,64,2,134,134,65,65,146,146,170,68,2,118,134, + 66,36,24,48,72,132,0,120,136,66,66,132,140,116,4,132, + 120,2,118,134,126,4,24,32,64,252,18,89,137,56,64,64, + 32,192,64,128,128,112,50,41,137,64,64,64,64,64,128,128, + 128,128,18,89,137,112,8,8,16,24,32,16,16,224,24,83, + 131,72,168,144,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,13,0,128,50,41,137,64,0,64,64,64, + 128,128,128,128,19,104,136,16,56,84,80,160,168,112,32,2, + 137,137,14,17,16,56,16,32,32,98,220,3,118,134,66,60, + 36,72,120,132,2,121,137,130,130,68,40,124,16,248,32,32, + 50,41,137,64,64,64,64,0,128,128,128,128,18,90,138,48, + 72,64,48,72,144,96,16,144,96,42,66,130,144,144,2,137, + 137,28,34,73,85,162,170,146,68,56,20,103,135,56,4,120, + 136,120,0,248,3,119,135,18,36,72,144,144,72,36,19,100, + 132,252,4,8,8,38,65,129,240,2,137,137,28,34,89,85, + 170,178,170,68,56,26,97,129,252,39,68,132,96,144,144,96, + 19,103,135,16,16,124,32,32,0,248,22,86,134,48,72,8, + 112,128,240,22,86,134,112,8,48,16,144,96,58,34,130,64, + 128,1,119,135,66,66,66,132,204,180,128,18,105,137,124,232, + 232,232,104,80,80,80,80,54,33,129,192,48,34,130,64,192, + 38,54,134,32,96,32,64,64,224,21,102,134,24,36,72,48, + 0,240,3,119,135,72,36,18,18,36,72,144,18,106,138,32, + 96,32,64,68,236,20,40,60,8,2,122,138,32,96,32,64, + 76,242,4,24,32,60,18,106,138,112,8,48,16,148,108,20, + 40,60,8,18,105,137,16,0,16,16,32,64,132,136,112,2, + 122,138,16,8,0,24,36,66,66,124,132,132,2,122,138,8, + 16,0,24,36,66,66,124,132,132,2,122,138,24,36,0,24, + 36,66,66,124,132,132,2,122,138,50,76,0,24,36,66,66, + 124,132,132,2,122,138,36,36,0,24,36,66,66,124,132,132, + 2,122,138,24,36,24,24,36,66,66,124,132,132,2,137,137, + 55,72,72,72,78,112,144,144,158,0,123,139,60,66,64,64, + 64,128,128,132,120,16,32,2,122,138,16,8,0,126,64,64, + 112,128,128,252,2,122,138,8,16,0,126,64,64,112,128,128, + 252,2,122,138,24,36,0,126,64,64,112,128,128,252,2,122, + 138,36,36,0,126,64,64,112,128,128,252,18,106,138,32,16, + 0,124,16,16,32,32,32,248,18,106,138,8,16,0,124,16, + 16,32,32,32,248,18,106,138,24,36,0,124,16,16,32,32, + 32,248,18,106,138,68,68,0,124,16,16,32,32,32,248,2, + 121,137,120,68,66,66,226,68,132,136,240,2,138,138,50,76, + 0,65,97,81,146,138,134,130,2,138,138,16,8,0,62,65, + 65,130,130,130,124,2,138,138,4,8,0,62,65,65,130,130, + 130,124,2,138,138,12,18,0,62,65,65,130,130,130,124,2, + 138,138,50,76,0,62,65,65,130,130,130,124,2,138,138,34, + 34,0,62,65,65,130,130,130,124,3,118,134,66,36,24,48, + 72,132,1,123,139,2,60,70,74,74,82,164,164,196,120,128, + 2,122,138,32,16,0,66,66,66,132,132,132,120,2,122,138, + 8,16,0,66,66,66,132,132,132,120,2,122,138,24,36,0, + 66,66,66,132,132,132,120,2,122,138,36,36,0,66,66,66, + 132,132,132,120,18,90,138,16,32,0,136,136,80,96,64,64, + 64,2,121,137,64,124,66,66,66,124,128,128,128,18,105,137, + 56,68,68,72,80,136,132,132,184,2,121,137,16,8,0,60, + 2,124,132,140,116,2,121,137,4,8,0,60,2,124,132,140, + 116,2,121,137,24,36,0,60,2,124,132,140,116,2,121,137, + 50,76,0,60,2,124,132,140,116,2,121,137,36,36,0,60, + 2,124,132,140,116,2,122,138,24,36,24,0,60,2,124,132, + 140,116,2,134,134,54,9,126,144,146,108,0,120,136,60,66, + 128,128,132,120,16,32,2,121,137,16,8,0,60,66,124,128, + 132,120,2,121,137,8,16,0,60,66,124,128,132,120,2,121, + 137,24,36,0,60,66,124,128,132,120,2,121,137,36,36,0, + 60,66,124,128,132,120,18,89,137,32,16,0,48,16,16,32, + 32,248,18,89,137,16,32,0,48,16,16,32,32,248,18,89, + 137,48,72,0,48,16,16,32,32,248,18,89,137,72,72,0, + 48,16,16,32,32,248,2,122,138,36,24,40,4,60,66,66, + 132,132,120,2,121,137,50,76,0,92,98,66,132,132,132,2, + 121,137,32,16,0,60,66,66,132,132,120,2,121,137,8,16, + 0,60,66,66,132,132,120,2,121,137,24,36,0,60,66,66, + 132,132,120,2,121,137,50,76,0,60,66,66,132,132,120,2, + 121,137,36,36,0,60,66,66,132,132,120,19,103,135,16,16, + 0,252,0,32,32,1,120,136,2,60,70,90,164,196,120,128, + 18,105,137,32,16,0,68,68,68,136,136,116,18,105,137,8, + 16,0,68,68,68,136,136,116,18,105,137,24,36,0,68,68, + 68,136,136,116,18,105,137,40,40,0,68,68,68,136,136,116, + 0,123,139,8,16,0,66,66,132,140,116,4,132,120,0,122, + 138,64,64,92,98,66,132,196,184,128,128,0,123,139,36,36, + 0,66,66,132,140,116,4,132,120}; +/* + Fontname: -Misc-Fixed-Medium-O-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 8 h=10 x= 3 y=11 dx= 8 dy= 0 ascent=11 len=10 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent = 9 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13Or[1029] U8G_SECTION(".progmem.u8g_font_8x13Or") = { + 1,8,13,0,254,9,1,98,2,206,32,127,254,11,254,9, + 254,13,0,128,50,41,137,64,64,64,64,128,128,128,0,128, + 40,67,131,144,144,144,3,119,135,36,36,126,36,252,72,72, + 18,105,137,16,60,80,80,56,40,40,240,32,2,121,137,34, + 82,36,8,16,32,72,148,136,18,104,136,24,36,40,48,84, + 136,152,100,56,19,131,128,128,128,34,73,137,16,32,64,64, + 128,128,64,64,32,34,73,137,64,32,32,16,16,32,32,64, + 128,20,101,133,72,48,252,96,144,20,85,133,32,32,248,64, + 64,33,67,131,112,96,128,22,81,129,248,33,51,131,64,224, + 64,2,137,137,1,1,2,4,24,32,64,128,128,2,121,137, + 24,36,66,66,66,132,132,72,48,18,89,137,16,48,80,16, + 16,32,32,32,248,2,121,137,60,66,66,2,12,48,64,128, + 252,2,121,137,126,2,4,8,24,4,4,132,120,18,105,137, + 4,12,20,36,72,136,252,16,16,2,121,137,62,32,32,92, + 98,2,4,132,120,2,121,137,28,34,64,64,120,132,132,132, + 120,18,105,137,252,4,8,16,32,64,64,128,128,2,121,137, + 60,66,66,66,124,132,132,132,120,18,105,137,120,132,132,140, + 116,8,8,16,224,33,72,136,32,112,32,0,0,64,224,64, + 17,88,136,16,56,16,0,0,112,96,128,18,89,137,8,16, + 32,64,128,128,64,32,16,4,116,132,126,0,0,252,18,89, + 137,64,32,16,8,8,16,32,64,128,18,105,137,56,68,132, + 8,16,32,32,0,32,2,121,137,60,66,66,78,82,166,152, + 128,120,2,121,137,24,36,66,66,66,252,132,132,132,2,121, + 137,120,68,66,68,120,136,132,136,240,2,121,137,60,66,64, + 64,64,128,128,132,120,2,121,137,120,68,66,66,66,132,132, + 136,240,2,121,137,126,64,64,64,120,128,128,128,252,2,121, + 137,126,64,64,64,120,128,128,128,128,2,121,137,60,66,64, + 64,64,156,132,140,116,2,121,137,66,66,66,66,124,132,132, + 132,132,18,105,137,124,16,16,16,16,32,32,32,248,2,121, + 137,30,4,4,4,4,8,8,136,112,2,121,137,66,68,72, + 80,96,160,144,136,132,18,105,137,64,64,64,64,64,128,128, + 128,252,2,137,137,65,65,99,85,73,130,130,130,130,2,121, + 137,66,66,98,82,74,140,132,132,132,2,121,137,60,66,66, + 66,66,132,132,132,120,2,121,137,124,66,66,66,124,128,128, + 128,128,1,122,138,60,66,66,66,132,132,164,148,120,4,2, + 121,137,124,66,66,66,124,160,144,136,132,2,121,137,60,66, + 64,64,56,4,4,132,120,2,121,137,254,16,16,16,16,32, + 32,32,32,2,121,137,66,66,66,66,132,132,132,132,120,2, + 121,137,130,130,132,68,72,72,80,80,32,2,137,137,65,65, + 65,65,73,146,146,170,68,2,137,137,65,65,34,20,24,40, + 68,130,130,2,121,137,130,130,68,40,16,16,32,32,32,2, + 121,137,126,2,4,8,16,32,64,128,252,18,89,137,120,64, + 64,64,64,128,128,128,240,18,105,137,128,128,64,32,16,16, + 8,4,4,18,89,137,120,8,8,8,8,16,16,16,240,24, + 83,131,32,80,136,1,113,129,254,58,34,130,128,64,2,118, + 134,60,2,124,132,140,116,2,121,137,64,64,64,92,98,66, + 132,196,184,2,118,134,60,66,128,128,132,120,2,121,137,2, + 2,2,58,68,132,132,140,116,2,118,134,60,66,124,128,132, + 120,18,105,137,56,68,64,64,248,64,128,128,128,0,120,136, + 58,68,136,112,128,120,132,120,2,121,137,32,32,64,92,98, + 66,132,132,132,18,88,136,16,0,48,16,16,32,32,248,16, + 106,138,4,0,12,4,4,8,8,136,136,112,18,105,137,64, + 64,64,68,88,96,144,136,132,18,89,137,48,16,16,16,16, + 32,32,32,248,2,134,134,118,73,73,146,146,130,2,118,134, + 92,98,66,132,132,132,2,118,134,60,66,66,132,132,120,0, + 136,136,46,49,33,98,92,64,128,128,0,120,136,58,70,132, + 140,116,4,8,8,18,102,134,184,68,64,128,128,128,2,118, + 134,60,66,32,24,132,120,18,88,136,64,64,248,64,128,128, + 136,112,18,102,134,68,68,68,136,136,116,18,86,134,136,136, + 144,160,160,64,2,134,134,65,65,146,146,170,68,2,118,134, + 66,36,24,48,72,132,0,120,136,66,66,132,140,116,4,132, + 120,2,118,134,126,4,24,32,64,252,18,89,137,56,64,64, + 32,192,64,128,128,112,50,41,137,64,64,64,64,64,128,128, + 128,128,18,89,137,112,8,8,16,24,32,16,16,224,24,83, + 131,72,168,144,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--13-120-75-75-C-80-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 7 h=10 x= 3 y=11 dx= 8 dy= 0 ascent=11 len=10 + Font Bounding box w= 8 h=13 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-2 + X Font ascent = 9 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_8x13r[1028] U8G_SECTION(".progmem.u8g_font_8x13r") = { + 1,8,13,0,254,9,1,97,2,205,32,127,254,11,254,9, + 254,13,0,128,50,25,137,128,128,128,128,128,128,128,0,128, + 40,67,131,144,144,144,19,103,135,72,72,252,72,252,72,72, + 18,89,137,32,120,160,160,112,40,40,240,32,18,105,137,68, + 164,72,16,16,32,72,84,136,18,103,135,96,144,144,96,148, + 136,116,56,19,131,128,128,128,50,57,137,32,64,64,128,128, + 128,64,64,32,34,57,137,128,64,64,32,32,32,64,64,128, + 22,101,133,72,48,252,48,72,20,85,133,32,32,248,32,32, + 17,67,131,112,96,128,22,81,129,248,33,51,131,64,224,64, + 2,121,137,2,2,4,8,16,32,64,128,128,18,105,137,48, + 72,132,132,132,132,132,72,48,18,89,137,32,96,160,32,32, + 32,32,32,248,18,105,137,120,132,132,4,8,48,64,128,252, + 18,105,137,252,4,8,16,56,4,4,132,120,18,105,137,8, + 24,40,72,136,136,252,8,8,18,105,137,252,128,128,184,196, + 4,4,132,120,18,105,137,56,64,128,128,184,196,132,132,120, + 18,105,137,252,4,8,16,16,32,32,64,64,18,105,137,120, + 132,132,132,120,132,132,132,120,18,105,137,120,132,132,140,116, + 4,4,8,112,33,56,136,64,224,64,0,0,64,224,64,17, + 72,136,32,112,32,0,0,112,96,128,34,89,137,8,16,32, + 64,128,64,32,16,8,20,100,132,252,0,0,252,18,89,137, + 128,64,32,16,8,16,32,64,128,18,105,137,120,132,132,4, + 8,16,16,0,16,18,105,137,120,132,132,156,164,172,148,128, + 120,18,105,137,48,72,132,132,132,252,132,132,132,18,105,137, + 240,136,132,136,240,136,132,136,240,18,105,137,120,132,128,128, + 128,128,128,132,120,18,105,137,240,136,132,132,132,132,132,136, + 240,18,105,137,252,128,128,128,240,128,128,128,252,18,105,137, + 252,128,128,128,240,128,128,128,128,18,105,137,120,132,128,128, + 128,156,132,140,116,18,105,137,132,132,132,132,252,132,132,132, + 132,18,89,137,248,32,32,32,32,32,32,32,248,18,121,137, + 62,8,8,8,8,8,8,136,112,18,105,137,132,136,144,160, + 192,160,144,136,132,18,105,137,128,128,128,128,128,128,128,128, + 252,2,121,137,130,130,198,170,146,146,130,130,130,18,105,137, + 132,132,196,164,148,140,132,132,132,18,105,137,120,132,132,132, + 132,132,132,132,120,18,105,137,248,132,132,132,248,128,128,128, + 128,17,106,138,120,132,132,132,132,132,164,148,120,4,18,105, + 137,248,132,132,132,248,160,144,136,132,18,105,137,120,132,128, + 128,120,4,4,132,120,2,121,137,254,16,16,16,16,16,16, + 16,16,18,105,137,132,132,132,132,132,132,132,132,120,2,121, + 137,130,130,68,68,68,40,40,40,16,2,121,137,130,130,130, + 130,146,146,146,170,68,2,121,137,130,130,68,40,16,40,68, + 130,130,2,121,137,130,130,68,40,16,16,16,16,16,18,105, + 137,252,4,8,16,32,64,128,128,252,34,73,137,240,128,128, + 128,128,128,128,128,240,2,121,137,128,128,64,32,16,8,4, + 2,2,18,73,137,240,16,16,16,16,16,16,16,240,24,83, + 131,32,80,136,1,113,129,254,58,34,130,128,64,18,102,134, + 120,4,124,132,140,116,18,105,137,128,128,128,184,196,132,132, + 196,184,18,102,134,120,132,128,128,132,120,18,105,137,4,4, + 4,116,140,132,132,140,116,18,102,134,120,132,252,128,132,120, + 18,105,137,56,68,64,64,248,64,64,64,64,16,104,136,116, + 136,136,112,128,120,132,120,18,105,137,128,128,128,184,196,132, + 132,132,132,18,88,136,32,0,96,32,32,32,32,248,16,90, + 138,8,0,24,8,8,8,8,136,136,112,18,105,137,128,128, + 128,136,144,224,144,136,132,18,89,137,96,32,32,32,32,32, + 32,32,248,2,118,134,236,146,146,146,146,130,18,102,134,184, + 196,132,132,132,132,18,102,134,120,132,132,132,132,120,16,104, + 136,184,196,132,196,184,128,128,128,16,104,136,116,140,132,140, + 116,4,4,4,18,102,134,184,68,64,64,64,64,18,102,134, + 120,132,96,24,132,120,18,104,136,64,64,248,64,64,64,68, + 56,18,102,134,136,136,136,136,136,116,18,86,134,136,136,136, + 80,80,32,2,118,134,130,130,146,146,170,68,18,102,134,132, + 72,48,48,72,132,16,104,136,132,132,132,140,116,4,132,120, + 18,102,134,252,8,16,32,64,252,34,89,137,56,64,64,32, + 192,32,64,64,56,50,25,137,128,128,128,128,128,128,128,128, + 128,18,89,137,224,16,16,32,24,32,16,16,224,24,83,131, + 72,168,144,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--15-140-75-75-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 4, '1' Height: 10 + Calculated Max Values w= 9 h=15 x= 8 y=10 dx= 9 dy= 0 ascent=12 len=30 + Font Bounding box w= 9 h=15 x= 0 y=-3 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent = 4 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x15_67_75[3804] U8G_SECTION(".progmem.u8g_font_9x15_67_75") = { + 0,9,15,0,253,4,1,255,4,34,32,255,0,12,253,10, + 0,8,7,7,9,0,1,72,36,18,255,18,36,72,7,10, + 10,9,1,0,16,16,16,146,84,56,146,84,56,16,7,7, + 7,9,1,1,16,34,68,248,68,34,16,7,7,7,9,1, + 1,16,136,68,62,68,136,16,7,7,7,9,1,1,16,34, + 66,254,66,34,16,7,10,10,9,1,0,16,56,84,146,16, + 16,16,16,16,124,7,7,7,9,1,1,16,136,132,254,132, + 136,16,7,10,10,9,1,0,124,16,16,16,16,16,146,84, + 56,16,7,10,10,9,1,0,16,56,84,146,16,146,84,56, + 16,254,8,7,7,9,0,1,16,34,65,254,64,32,16,8, + 7,7,9,0,1,8,68,130,127,2,4,8,8,7,7,9, + 0,1,16,34,69,254,68,36,16,8,7,7,9,0,1,8, + 68,162,127,34,36,8,9,5,10,9,0,2,34,0,73,0, + 247,128,65,0,34,0,9,5,10,9,0,2,34,0,73,0, + 255,128,73,0,34,0,5,10,10,9,2,0,32,64,72,184, + 200,16,16,160,120,32,6,10,10,9,1,0,32,64,252,68, + 36,4,4,4,4,4,7,10,10,9,1,0,8,4,254,132, + 136,128,128,128,128,128,6,10,10,9,1,0,4,4,4,4, + 4,36,68,252,64,32,7,10,10,9,1,0,128,128,128,128, + 128,136,132,254,4,8,7,8,8,9,1,0,248,8,8,8, + 8,42,28,8,7,8,8,9,1,1,2,2,2,34,66,254, + 64,32,9,7,14,9,0,2,14,0,17,0,32,128,32,128, + 168,128,112,0,32,0,9,7,14,9,0,2,56,0,68,0, + 130,0,130,0,138,128,7,0,2,0,7,10,10,9,1,0, + 254,64,112,96,80,8,8,4,2,2,7,9,9,9,1,0, + 144,160,254,160,146,10,254,10,18,9,7,14,9,0,1,50, + 0,71,0,138,128,130,0,130,0,68,0,56,0,9,7,14, + 9,0,1,38,0,113,0,168,128,32,128,32,128,17,0,14, + 0,7,4,4,9,1,3,16,32,64,254,7,4,4,9,1, + 0,254,64,32,16,4,10,10,9,4,0,128,192,160,144,128, + 128,128,128,128,128,4,10,10,9,1,0,16,48,80,144,16, + 16,16,16,16,16,7,4,4,9,1,3,16,8,4,254,7, + 4,4,9,1,0,254,4,8,16,4,10,10,9,4,0,128, + 128,128,128,128,128,144,160,192,128,4,10,10,9,1,0,16, + 16,16,16,16,16,144,80,48,16,7,9,9,9,1,0,8, + 4,254,4,40,64,254,64,32,9,10,20,9,0,0,34,0, + 114,0,170,0,34,0,34,0,34,0,34,0,42,128,39,0, + 34,0,7,9,9,9,1,0,32,64,254,64,40,4,254,4, + 8,7,10,10,9,1,0,32,64,254,64,32,32,64,254,64, + 32,9,10,20,9,0,0,34,0,119,0,170,128,34,0,34, + 0,34,0,34,0,34,0,34,0,34,0,7,10,10,9,1, + 0,8,4,254,4,8,8,4,254,4,8,9,10,20,9,0, + 0,34,0,34,0,34,0,34,0,34,0,34,0,34,0,170, + 128,119,0,34,0,7,7,7,9,1,1,32,64,254,0,254, + 4,8,7,7,7,9,1,1,8,4,254,0,254,64,32,9, + 7,14,9,0,1,16,0,33,0,127,128,130,0,127,128,36, + 0,16,0,9,7,14,9,0,1,20,0,34,0,127,0,136, + 128,127,0,34,0,20,0,9,7,14,9,0,1,4,0,18, + 0,255,0,32,128,255,0,66,0,4,0,9,7,14,9,0, + 1,16,0,32,0,127,128,128,0,127,128,32,0,16,0,7, + 10,10,9,1,0,16,40,108,170,40,40,40,40,40,40,9, + 7,14,9,0,1,4,0,2,0,255,0,0,128,255,0,2, + 0,4,0,7,10,10,9,1,0,40,40,40,40,40,40,170, + 108,40,16,9,7,14,9,0,1,20,0,34,0,127,0,128, + 128,127,0,34,0,20,0,7,10,10,9,1,0,16,40,108, + 170,40,40,170,108,40,16,7,7,7,9,1,1,252,144,136, + 196,162,144,8,7,7,7,9,1,1,126,18,34,70,138,18, + 32,7,7,7,9,1,1,32,18,138,70,34,18,126,7,7, + 7,9,1,1,8,144,162,196,136,144,252,9,9,18,9,0, + 0,8,0,16,0,63,128,64,0,255,128,64,0,63,128,16, + 0,8,0,9,9,18,9,0,0,8,0,4,0,254,0,1, + 0,255,128,1,0,254,0,4,0,8,0,8,7,7,9,0, + 1,16,32,72,245,66,32,16,8,7,7,9,0,1,8,4, + 18,175,66,4,8,7,10,10,9,1,0,16,56,84,146,16, + 124,16,124,16,16,7,10,10,9,1,0,16,16,124,16,124, + 16,146,84,56,16,7,7,7,9,1,1,16,32,64,182,64, + 32,16,7,10,10,9,1,0,16,40,84,146,0,16,16,0, + 16,16,7,7,7,9,1,1,16,8,4,218,4,8,16,7, + 10,10,9,1,0,16,16,0,16,16,0,146,84,40,16,7, + 5,5,9,1,2,144,160,254,160,144,7,5,5,9,1,2, + 18,10,254,10,18,9,7,14,9,0,1,16,0,48,0,95, + 128,128,128,95,128,48,0,16,0,7,10,10,9,1,0,16, + 40,68,238,40,40,40,40,40,56,9,7,14,9,0,1,4, + 0,6,0,253,0,128,128,253,0,6,0,4,0,7,10,10, + 9,1,0,56,40,40,40,40,40,238,68,40,16,7,11,11, + 9,1,0,16,40,68,238,40,40,56,0,56,40,56,7,11, + 11,9,1,255,16,40,68,238,40,40,40,40,108,68,124,7, + 11,11,9,1,255,16,40,68,254,40,40,40,40,108,68,124, + 7,11,11,9,1,255,16,40,68,254,56,56,56,56,124,68, + 124,7,11,11,9,1,255,16,40,68,238,68,238,40,40,40, + 40,56,7,11,11,9,1,255,16,40,68,238,68,238,40,40, + 108,68,124,9,7,14,9,0,1,132,0,134,0,253,0,128, + 128,253,0,134,0,132,0,7,7,7,9,1,0,254,128,188, + 176,168,164,130,7,7,7,9,1,0,130,74,42,26,122,2, + 254,7,11,11,9,1,255,16,40,68,238,40,40,40,238,68, + 40,16,9,7,14,9,0,1,4,0,50,0,73,0,255,128, + 73,0,50,0,4,0,9,10,20,9,0,0,34,0,39,0, + 42,128,34,0,34,0,34,0,34,0,170,0,114,0,34,0, + 7,13,13,9,1,254,8,4,254,4,8,4,254,4,8,4, + 254,4,8,8,5,5,9,0,2,36,68,255,68,36,8,5, + 5,9,0,2,36,34,255,34,36,9,5,10,9,0,2,42, + 0,73,0,255,128,73,0,42,0,8,5,5,9,0,2,42, + 74,255,74,42,8,5,5,9,0,2,84,82,255,82,84,9, + 5,10,9,0,2,85,0,148,128,255,128,148,128,85,0,7, + 7,7,9,1,1,16,48,80,158,80,48,16,7,7,7,9, + 1,1,16,24,20,242,20,24,16,8,5,5,9,0,2,36, + 102,189,102,36,9,7,14,9,0,5,255,128,255,128,255,128, + 255,128,255,128,255,128,255,128,9,2,4,9,0,253,255,128, + 255,128,9,4,8,9,0,253,255,128,255,128,255,128,255,128, + 9,6,12,9,0,253,255,128,255,128,255,128,255,128,255,128, + 255,128,9,8,16,9,0,253,255,128,255,128,255,128,255,128, + 255,128,255,128,255,128,255,128,9,9,18,9,0,253,255,128, + 255,128,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 9,11,22,9,0,253,255,128,255,128,255,128,255,128,255,128, + 255,128,255,128,255,128,255,128,255,128,255,128,9,13,26,9, + 0,253,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 255,128,255,128,255,128,255,128,255,128,255,128,9,15,30,9, + 0,253,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 255,128,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 8,15,15,9,0,253,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,7,15,15,9,0,253,254,254,254,254,254, + 254,254,254,254,254,254,254,254,254,254,6,15,15,9,0,253, + 252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,5, + 15,15,9,0,253,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,3,15,15,9,0,253,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,2,15,15,9,0,253,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,1,15, + 15,9,0,253,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,4,15,15,9,5,253,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,9,15,30,9,0,253,170,128, + 0,0,85,0,0,0,170,128,0,0,85,0,0,0,170,128, + 0,0,85,0,0,0,170,128,0,0,85,0,9,15,30,9, + 0,253,170,128,85,0,170,128,85,0,170,128,85,0,170,128, + 85,0,170,128,85,0,170,128,85,0,170,128,85,0,170,128, + 9,15,30,9,0,253,255,128,85,0,255,128,170,128,255,128, + 85,0,255,128,170,128,255,128,85,0,255,128,170,128,255,128, + 85,0,255,128,9,2,4,9,0,10,255,128,255,128,1,15, + 15,9,8,253,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,5,8,8,9,0,253,248,248,248,248,248,248,248, + 248,4,8,8,9,5,253,240,240,240,240,240,240,240,240,5, + 7,7,9,0,5,248,248,248,248,248,248,248,9,15,30,9, + 0,253,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 255,128,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 9,15,30,9,0,253,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,9,15,30,9,0,253,255,128,255,128,255,128, + 255,128,255,128,255,128,255,128,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,9,15,30,9,0,253,255,128, + 255,128,255,128,255,128,255,128,255,128,255,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,4,7,7,9, + 5,5,240,240,240,240,240,240,240,9,15,30,9,0,253,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,9,15,30, + 9,0,253,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,255,128,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,7,7,7,9,1,1,254,254,254,254,254,254,254,7,7, + 7,9,1,1,254,130,130,130,130,130,254,7,7,7,9,1, + 1,124,130,130,130,130,130,124,7,7,7,9,1,1,254,130, + 186,186,186,130,254,7,7,7,9,1,1,254,130,254,130,254, + 130,254,7,7,7,9,1,1,254,170,170,170,170,170,254,7, + 7,7,9,1,1,254,170,254,170,254,170,254,7,7,7,9, + 1,1,254,146,138,198,162,146,254,7,7,7,9,1,1,254, + 146,162,198,138,146,254,7,7,7,9,1,1,254,214,138,214, + 162,214,254,3,3,3,9,3,3,224,224,224,3,3,3,9, + 3,3,224,160,224,9,5,10,9,0,2,255,128,255,128,255, + 128,255,128,255,128,9,5,10,9,0,2,255,128,128,128,128, + 128,128,128,255,128,5,9,9,9,2,0,248,248,248,248,248, + 248,248,248,248,5,9,9,9,2,0,248,136,136,136,136,136, + 136,136,248,9,5,10,9,0,2,127,128,127,128,255,128,255, + 0,255,0,9,5,10,9,0,2,127,128,64,128,128,128,129, + 0,255,0,9,10,20,9,0,0,8,0,8,0,28,0,28, + 0,62,0,62,0,127,0,127,0,255,128,255,128,9,10,20, + 9,0,0,8,0,8,0,20,0,20,0,34,0,34,0,65, + 0,65,0,128,128,255,128,7,7,7,9,1,1,16,16,56, + 56,124,124,254,7,7,7,9,1,1,16,16,40,40,68,68, + 254,9,9,18,9,0,0,192,0,240,0,252,0,255,0,255, + 128,255,0,252,0,240,0,192,0,9,9,18,9,0,0,192, + 0,176,0,140,0,131,0,128,128,131,0,140,0,176,0,192, + 0,7,7,7,9,1,1,128,224,248,254,248,224,128,7,7, + 7,9,1,1,128,224,152,134,152,224,128,9,5,10,9,0, + 2,224,0,252,0,255,128,252,0,224,0,9,5,10,9,0, + 2,224,0,156,0,131,128,156,0,224,0,9,10,20,9,0, + 0,255,128,255,128,127,0,127,0,62,0,62,0,28,0,28, + 0,8,0,8,0,9,10,20,9,0,0,255,128,128,128,65, + 0,65,0,34,0,34,0,20,0,20,0,8,0,8,0,7, + 7,7,9,1,1,254,124,124,56,56,16,16,7,7,7,9, + 1,1,254,68,68,40,40,16,16,9,9,18,9,0,0,1, + 128,7,128,31,128,127,128,255,128,127,128,31,128,7,128,1, + 128,9,9,18,9,0,0,1,128,6,128,24,128,96,128,128, + 128,96,128,24,128,6,128,1,128,7,7,7,9,1,1,2, + 14,62,254,62,14,2,7,7,7,9,1,1,2,14,50,194, + 50,14,2,9,5,10,9,0,2,3,128,31,128,255,128,31, + 128,3,128,9,5,10,9,0,2,3,128,28,128,224,128,28, + 128,3,128,9,9,18,9,0,0,8,0,28,0,62,0,127, + 0,255,128,127,0,62,0,28,0,8,0,9,9,18,9,0, + 0,8,0,20,0,34,0,65,0,128,128,65,0,34,0,20, + 0,8,0,9,9,18,9,0,0,8,0,20,0,34,0,73, + 0,156,128,73,0,34,0,20,0,8,0,7,7,7,9,1, + 1,56,68,146,186,146,68,56,5,9,9,9,2,0,32,32, + 80,80,136,80,80,32,32,7,7,7,9,1,1,56,68,130, + 130,130,68,56,7,7,7,9,1,1,16,68,0,130,0,68, + 16,7,7,7,9,1,1,56,108,170,170,170,108,56,7,7, + 7,9,1,1,56,68,146,170,146,68,56,7,7,7,9,1, + 1,56,124,254,254,254,124,56,7,7,7,9,1,1,56,116, + 242,242,242,116,56,7,7,7,9,1,1,56,92,158,158,158, + 92,56,7,7,7,9,1,1,56,68,130,254,254,124,56,7, + 7,7,9,1,1,56,124,254,254,130,68,56,7,7,7,9, + 1,1,56,92,158,158,130,68,56,7,7,7,9,1,1,56, + 92,158,254,254,124,56,4,7,7,9,1,1,48,112,240,240, + 240,112,48,4,7,7,9,4,1,192,224,240,240,240,224,192, + 9,15,30,9,0,253,255,128,255,128,255,128,255,128,255,128, + 227,128,193,128,193,128,193,128,227,128,255,128,255,128,255,128, + 255,128,255,128,9,15,30,9,0,253,255,128,255,128,255,128, + 255,128,227,128,221,128,190,128,190,128,190,128,221,128,227,128, + 255,128,255,128,255,128,255,128,9,8,16,9,0,4,255,128, + 255,128,255,128,255,128,227,128,221,128,190,128,190,128,9,8, + 16,9,0,253,190,128,190,128,221,128,227,128,255,128,255,128, + 255,128,255,128,4,4,4,9,1,4,48,64,128,128,4,4, + 4,9,4,4,192,32,16,16,4,4,4,9,4,1,16,16, + 32,192,4,4,4,9,1,1,128,128,64,48,7,4,4,9, + 1,4,56,68,130,130,7,4,4,9,1,1,130,130,68,56, + 7,7,7,9,1,1,2,6,14,30,62,126,254,7,7,7, + 9,1,1,128,192,224,240,248,252,254,7,7,7,9,1,1, + 254,252,248,240,224,192,128,7,7,7,9,1,1,254,126,62, + 30,14,6,2,5,5,5,9,2,2,112,136,136,136,112,7, + 7,7,9,1,1,254,242,242,242,242,242,254,7,7,7,9, + 1,1,254,158,158,158,158,158,254,7,7,7,9,1,1,254, + 254,250,242,226,194,254,7,7,7,9,1,1,254,134,142,158, + 190,254,254,7,7,7,9,1,1,254,146,146,146,146,146,254, + 9,10,20,9,0,0,8,0,8,0,20,0,20,0,34,0, + 42,0,93,0,73,0,128,128,255,128,9,10,20,9,0,0, + 8,0,8,0,28,0,28,0,58,0,58,0,121,0,121,0, + 248,128,255,128,9,10,20,9,0,0,8,0,8,0,28,0, + 28,0,46,0,46,0,79,0,79,0,143,128,255,128,9,9, + 18,9,0,0,62,0,65,0,128,128,128,128,128,128,128,128, + 128,128,65,0,62,0,7,7,7,9,1,1,254,146,146,242, + 130,130,254,7,7,7,9,1,1,254,130,130,242,146,146,254, + 7,7,7,9,1,1,254,130,130,158,146,146,254,7,7,7, + 9,1,1,254,146,146,158,130,130,254,7,7,7,9,1,1, + 124,146,146,242,130,130,124,7,7,7,9,1,1,124,130,130, + 242,146,146,124,7,7,7,9,1,1,124,130,130,158,146,146, + 124,7,7,7,9,1,1,124,146,146,158,130,130,124,6,6, + 6,9,1,1,252,136,144,160,192,128,6,6,6,9,1,1, + 252,68,36,20,12,4,6,6,6,9,1,1,128,192,160,144, + 136,252,6,6,6,9,1,1,252,132,132,132,132,252,6,6, + 6,9,1,1,252,252,252,252,252,252,5,5,5,9,2,1, + 248,136,136,136,248,5,5,5,9,2,1,248,248,248,248,248, + 6,6,6,9,1,1,4,12,20,36,68,252}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--15-140-75-75-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 5 + Calculated Max Values w= 9 h=10 x= 3 y= 3 dx= 9 dy= 0 ascent=10 len=20 + Font Bounding box w= 9 h=15 x= 0 y=-3 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent =10 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x15_75r[792] U8G_SECTION(".progmem.u8g_font_9x15_75r") = { + 0,9,15,0,253,9,2,33,0,0,32,79,0,10,0,9, + 0,7,7,7,9,1,1,254,254,254,254,254,254,254,7,7, + 7,9,1,1,254,130,130,130,130,130,254,7,7,7,9,1, + 1,124,130,130,130,130,130,124,7,7,7,9,1,1,254,130, + 186,186,186,130,254,7,7,7,9,1,1,254,130,254,130,254, + 130,254,7,7,7,9,1,1,254,170,170,170,170,170,254,7, + 7,7,9,1,1,254,170,254,170,254,170,254,7,7,7,9, + 1,1,254,146,138,198,162,146,254,7,7,7,9,1,1,254, + 146,162,198,138,146,254,7,7,7,9,1,1,254,214,138,214, + 162,214,254,3,3,3,9,3,3,224,224,224,3,3,3,9, + 3,3,224,160,224,9,5,10,9,0,2,255,128,255,128,255, + 128,255,128,255,128,9,5,10,9,0,2,255,128,128,128,128, + 128,128,128,255,128,5,9,9,9,2,0,248,248,248,248,248, + 248,248,248,248,5,9,9,9,2,0,248,136,136,136,136,136, + 136,136,248,9,5,10,9,0,2,127,128,127,128,255,128,255, + 0,255,0,9,5,10,9,0,2,127,128,64,128,128,128,129, + 0,255,0,9,10,20,9,0,0,8,0,8,0,28,0,28, + 0,62,0,62,0,127,0,127,0,255,128,255,128,9,10,20, + 9,0,0,8,0,8,0,20,0,20,0,34,0,34,0,65, + 0,65,0,128,128,255,128,7,7,7,9,1,1,16,16,56, + 56,124,124,254,7,7,7,9,1,1,16,16,40,40,68,68, + 254,9,9,18,9,0,0,192,0,240,0,252,0,255,0,255, + 128,255,0,252,0,240,0,192,0,9,9,18,9,0,0,192, + 0,176,0,140,0,131,0,128,128,131,0,140,0,176,0,192, + 0,7,7,7,9,1,1,128,224,248,254,248,224,128,7,7, + 7,9,1,1,128,224,152,134,152,224,128,9,5,10,9,0, + 2,224,0,252,0,255,128,252,0,224,0,9,5,10,9,0, + 2,224,0,156,0,131,128,156,0,224,0,9,10,20,9,0, + 0,255,128,255,128,127,0,127,0,62,0,62,0,28,0,28, + 0,8,0,8,0,9,10,20,9,0,0,255,128,128,128,65, + 0,65,0,34,0,34,0,20,0,20,0,8,0,8,0,7, + 7,7,9,1,1,254,124,124,56,56,16,16,7,7,7,9, + 1,1,254,68,68,40,40,16,16,9,9,18,9,0,0,1, + 128,7,128,31,128,127,128,255,128,127,128,31,128,7,128,1, + 128,9,9,18,9,0,0,1,128,6,128,24,128,96,128,128, + 128,96,128,24,128,6,128,1,128,7,7,7,9,1,1,2, + 14,62,254,62,14,2,7,7,7,9,1,1,2,14,50,194, + 50,14,2,9,5,10,9,0,2,3,128,31,128,255,128,31, + 128,3,128,9,5,10,9,0,2,3,128,28,128,224,128,28, + 128,3,128,9,9,18,9,0,0,8,0,28,0,62,0,127, + 0,255,128,127,0,62,0,28,0,8,0,9,9,18,9,0, + 0,8,0,20,0,34,0,65,0,128,128,65,0,34,0,20, + 0,8,0,9,9,18,9,0,0,8,0,20,0,34,0,73, + 0,156,128,73,0,34,0,20,0,8,0,7,7,7,9,1, + 1,56,68,146,186,146,68,56,5,9,9,9,2,0,32,32, + 80,80,136,80,80,32,32,7,7,7,9,1,1,56,68,130, + 130,130,68,56,7,7,7,9,1,1,16,68,0,130,0,68, + 16,7,7,7,9,1,1,56,108,170,170,170,108,56,7,7, + 7,9,1,1,56,68,146,170,146,68,56,7,7,7,9,1, + 1,56,124,254,254,254,124,56}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--15-140-75-75-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 0, '1' Height: 9 + Calculated Max Values w= 9 h=13 x= 4 y= 5 dx= 9 dy= 0 ascent=12 len=26 + Font Bounding box w= 9 h=15 x= 0 y=-3 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =12 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x15_78_79[3795] U8G_SECTION(".progmem.u8g_font_9x15_78_79") = { + 0,9,15,0,253,9,2,231,4,175,32,255,0,12,254,11, + 0,9,9,18,9,0,0,62,0,28,0,136,128,201,128,247, + 128,201,128,136,128,28,0,62,0,9,9,18,9,0,0,8, + 0,20,0,255,128,162,128,65,0,162,128,255,128,20,0,8, + 0,9,9,18,9,0,0,8,0,28,0,8,0,73,0,255, + 128,73,0,8,0,28,0,8,0,9,9,18,9,0,0,8, + 0,28,0,28,0,107,0,255,128,107,0,28,0,28,0,8, + 0,9,9,18,9,0,0,8,0,28,0,28,0,107,0,255, + 128,107,0,28,0,28,0,8,0,9,9,18,9,0,0,8, + 0,28,0,28,0,107,0,255,128,107,0,28,0,28,0,8, + 0,9,9,18,9,0,0,8,0,8,0,28,0,62,0,255, + 128,62,0,28,0,8,0,8,0,9,9,18,9,0,0,8, + 0,20,0,20,0,99,0,128,128,99,0,20,0,20,0,8, + 0,255,9,9,18,9,0,0,8,0,8,0,20,0,247,128, + 65,0,34,0,73,0,85,0,99,0,9,10,20,9,0,0, + 127,0,247,128,247,128,227,128,0,0,128,128,193,128,201,128, + 156,128,127,0,9,9,18,9,0,0,8,0,8,0,28,0, + 227,128,99,0,34,0,62,0,119,0,65,0,9,9,18,9, + 0,0,8,0,8,0,20,0,235,128,93,0,42,0,34,0, + 127,0,65,0,9,9,18,9,0,0,8,0,8,0,20,0, + 235,128,93,0,42,0,34,0,127,0,65,0,9,9,18,9, + 0,0,8,0,8,0,20,0,235,128,93,0,42,0,34,0, + 127,0,65,0,9,9,18,9,0,0,8,0,8,0,20,0, + 247,128,73,0,54,0,42,0,127,0,65,0,8,7,7,9, + 0,2,24,24,44,199,46,60,102,8,9,9,9,0,0,24, + 219,255,126,24,126,255,219,24,8,9,9,9,0,0,24,219, + 255,102,36,102,255,219,24,9,9,18,9,0,0,8,0,73, + 0,42,0,28,0,255,128,28,0,42,0,73,0,8,0,9, + 9,18,9,0,0,8,0,73,0,62,0,62,0,255,128,62, + 0,62,0,73,0,8,0,9,9,18,9,0,0,8,0,73, + 0,54,0,62,0,213,128,62,0,54,0,73,0,8,0,9, + 9,18,9,0,0,8,0,136,128,107,0,62,0,28,0,62, + 0,107,0,136,128,8,0,9,9,18,9,0,0,34,0,20, + 0,148,128,127,0,28,0,127,0,148,128,20,0,34,0,9, + 9,18,9,0,0,34,0,54,0,255,128,127,0,62,0,127, + 0,255,128,54,0,34,0,9,9,18,9,0,0,42,0,42, + 0,221,128,62,0,255,128,62,0,221,128,42,0,42,0,9, + 9,18,9,0,0,42,0,42,0,221,128,42,0,255,128,42, + 0,221,128,42,0,42,0,9,11,22,9,0,0,28,0,28, + 0,201,128,201,128,34,0,8,0,34,0,201,128,201,128,28, + 0,28,0,9,11,22,9,0,0,28,0,28,0,201,128,201, + 128,62,0,20,0,62,0,201,128,201,128,28,0,28,0,9, + 11,22,9,0,0,28,0,28,0,201,128,201,128,62,0,28, + 0,62,0,201,128,201,128,28,0,28,0,9,11,22,9,0, + 0,28,0,20,0,201,128,201,128,62,0,20,0,127,0,170, + 128,201,128,28,0,28,0,8,9,9,9,0,0,24,24,219, + 255,36,36,126,231,66,255,255,255,8,9,9,9,0,0,24, + 203,189,110,24,118,189,211,24,9,12,24,9,0,0,8,0, + 42,0,93,0,170,128,107,0,221,128,221,128,107,0,170,128, + 93,0,42,0,8,0,9,12,24,9,0,0,8,0,42,0, + 93,0,170,128,107,0,221,128,221,128,107,0,170,128,93,0, + 42,0,8,0,9,12,24,9,0,0,8,0,42,0,93,0, + 170,128,107,0,221,128,221,128,107,0,170,128,93,0,42,0, + 8,0,9,9,18,9,0,0,8,0,73,0,42,0,20,0, + 235,128,20,0,42,0,73,0,8,0,9,9,18,9,0,0, + 8,0,73,0,42,0,20,0,235,128,20,0,42,0,73,0, + 8,0,8,9,9,9,0,0,24,219,203,60,24,60,211,219, + 24,9,9,18,9,0,0,8,0,73,0,42,0,0,0,235, + 128,0,0,42,0,73,0,8,0,9,9,18,9,0,0,8, + 0,73,0,42,0,28,0,255,128,28,0,42,0,73,0,8, + 0,255,9,8,16,9,0,1,62,0,67,0,129,128,129,128, + 129,128,129,128,67,0,62,0,255,9,9,18,9,0,0,254, + 0,130,0,131,128,131,128,131,128,131,128,255,128,63,128,63, + 128,9,9,18,9,0,0,63,128,63,128,255,128,131,128,131, + 128,131,128,131,128,130,0,254,0,8,8,8,9,0,0,254, + 131,131,131,131,131,255,127,8,8,8,9,0,0,127,255,131, + 131,131,131,131,254,255,255,255,9,9,18,9,0,0,8,0, + 28,0,8,0,65,0,227,128,65,0,8,0,28,0,8,0, + 255,1,10,10,9,4,0,128,128,128,128,128,128,128,128,128, + 128,2,10,10,9,3,0,192,192,192,192,192,192,192,192,192, + 192,3,10,10,9,3,0,224,224,224,224,224,224,224,224,224, + 224,4,6,6,9,3,5,112,128,224,240,240,96,4,6,6, + 9,3,5,96,240,240,112,16,224,9,6,12,9,0,5,115, + 128,132,0,231,0,247,128,247,128,99,0,9,6,12,9,0, + 5,99,0,247,128,247,128,115,128,16,128,231,0,255,255,7, + 10,10,9,1,0,4,126,228,228,228,124,4,100,104,48,5, + 10,10,9,2,0,112,248,248,112,32,32,0,32,112,32,5, + 10,10,9,2,0,80,248,248,112,32,32,0,32,112,32,9, + 9,18,9,0,0,99,0,247,128,255,128,255,128,127,0,62, + 0,28,0,8,0,8,0,9,9,18,9,0,0,112,0,248, + 0,252,0,126,0,63,128,126,0,252,0,248,0,112,0,9, + 12,24,9,0,0,8,0,116,128,149,0,14,0,4,0,107, + 0,247,128,255,128,127,0,62,0,28,0,8,0,9,12,24, + 9,0,0,16,0,41,0,82,0,156,0,32,0,88,0,124, + 0,60,0,254,0,254,128,255,0,126,0,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,9,9,18,9,0,0,127, + 0,247,128,231,128,247,128,247,128,247,128,247,128,227,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,253,128,251, + 128,247,128,237,128,193,128,127,0,9,9,18,9,0,0,127, + 0,227,128,221,128,253,128,243,128,253,128,221,128,227,128,127, + 0,9,9,18,9,0,0,127,0,243,128,235,128,219,128,193, + 128,251,128,251,128,251,128,127,0,9,9,18,9,0,0,127, + 0,193,128,223,128,223,128,195,128,253,128,253,128,195,128,127, + 0,9,9,18,9,0,0,127,0,225,128,223,128,223,128,195, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,193,128,253,128,251,128,251,128,247,128,247,128,247,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,221,128,227, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,225,128,221,128,221,128,225,128,253,128,253,128,227,128,127, + 0,9,9,18,9,0,0,127,0,219,128,213,128,213,128,213, + 128,213,128,213,128,219,128,127,0,9,9,18,9,0,0,127, + 0,128,128,136,128,152,128,136,128,136,128,136,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,152,128,132,128,132, + 128,136,128,156,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,152,128,132,128,136,128,132,128,152,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,136,128,152,128,168, + 128,188,128,136,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,156,128,144,128,152,128,132,128,152,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,140,128,144,128,152, + 128,148,128,136,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,156,128,132,128,136,128,136,128,136,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,136,128,148,128,136, + 128,148,128,136,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,136,128,148,128,140,128,132,128,136,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,164,128,170,128,170, + 128,170,128,164,128,128,128,127,0,9,9,18,9,0,0,127, + 0,247,128,231,128,247,128,247,128,247,128,247,128,247,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,253,128,251, + 128,247,128,239,128,193,128,127,0,9,9,18,9,0,0,127, + 0,227,128,221,128,253,128,243,128,253,128,221,128,227,128,127, + 0,9,9,18,9,0,0,127,0,243,128,235,128,219,128,193, + 128,251,128,251,128,251,128,127,0,9,9,18,9,0,0,127, + 0,193,128,223,128,223,128,195,128,253,128,253,128,195,128,127, + 0,9,9,18,9,0,0,127,0,225,128,223,128,223,128,195, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,193,128,253,128,251,128,251,128,247,128,247,128,247,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,221,128,227, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,225,128,221,128,221,128,225,128,253,128,253,128,227,128,127, + 0,9,9,18,9,0,0,127,0,219,128,213,128,213,128,213, + 128,213,128,213,128,219,128,127,0,7,8,8,9,1,1,48, + 24,12,254,254,12,24,48,255,255,255,7,5,5,9,1,1, + 224,250,62,14,30,8,7,7,9,1,1,8,12,230,255,230, + 12,8,7,5,5,9,1,1,30,14,62,250,224,9,7,14, + 9,0,0,48,0,28,0,31,0,255,128,31,0,28,0,48, + 0,9,9,18,9,0,0,28,0,30,0,15,0,255,128,255, + 128,255,128,15,0,30,0,28,0,9,5,10,9,0,1,2, + 0,3,0,255,128,3,0,2,0,9,7,14,9,0,0,4, + 0,6,0,255,0,255,128,255,0,6,0,4,0,9,5,10, + 9,0,1,2,0,183,0,183,128,183,0,2,0,9,5,10, + 9,0,1,2,0,171,0,171,128,171,0,2,0,9,5,10, + 9,0,1,2,0,255,0,255,128,255,0,2,0,9,8,16, + 9,0,1,128,0,112,0,78,0,33,128,31,128,62,0,112, + 0,128,0,9,8,16,9,0,1,128,0,112,0,62,0,31, + 128,33,128,78,0,112,0,128,0,9,8,16,9,0,1,128, + 0,112,0,62,0,31,128,31,128,62,0,112,0,128,0,9, + 7,14,9,0,0,132,0,134,0,255,0,255,128,127,0,6, + 0,4,0,9,7,14,9,0,0,4,0,6,0,127,0,255, + 128,255,0,134,0,132,0,6,9,9,9,2,0,16,16,248, + 248,252,248,248,16,16,8,9,9,9,0,1,4,4,254,254, + 255,254,254,4,4,9,9,18,9,0,0,24,0,28,0,22, + 0,243,0,129,128,243,0,22,0,28,0,24,0,9,9,18, + 9,0,0,24,0,28,0,26,0,249,0,192,128,249,0,26, + 0,28,0,24,0,9,9,18,9,0,0,0,128,1,128,62, + 128,64,128,129,128,243,0,238,0,60,0,56,0,9,9,18, + 9,0,0,56,0,60,0,238,0,243,0,129,128,64,128,62, + 128,1,128,0,128,8,9,9,9,0,1,16,24,20,242,129, + 243,118,28,24,8,9,9,9,0,1,24,28,118,243,129,242, + 20,24,16,9,7,14,9,0,2,4,0,250,0,129,0,64, + 128,129,128,251,0,6,0,255,9,7,14,9,0,2,6,0, + 251,0,129,128,64,128,129,0,250,0,4,0,9,9,18,9, + 0,1,28,0,127,0,251,128,1,128,0,128,1,128,251,128, + 127,0,28,0,9,5,10,9,0,3,210,0,43,0,127,128, + 43,0,210,0,9,9,18,9,0,0,16,0,56,0,92,0, + 236,0,116,0,60,0,2,128,1,128,3,128,9,5,10,9, + 0,2,242,0,123,0,7,128,123,0,242,0,9,9,18,9, + 0,0,3,128,1,128,2,128,60,0,116,0,236,0,92,0, + 56,0,16,0,9,9,18,9,0,0,16,0,24,0,28,0, + 252,0,124,0,60,0,2,128,1,128,3,128,9,5,10,9, + 0,2,242,0,123,0,127,128,123,0,242,0,9,9,18,9, + 0,0,3,128,1,128,2,128,60,0,124,0,252,0,28,0, + 24,0,16,0,9,7,14,9,0,1,3,0,3,0,113,0, + 255,128,113,0,3,0,3,0,9,7,14,9,0,1,2,0, + 115,0,121,0,255,128,121,0,115,0,2,0,9,5,10,9, + 0,2,242,0,123,0,63,128,123,0,242,0,9,7,14,9, + 0,1,226,0,242,0,123,0,63,128,123,0,242,0,226,0, + 9,7,14,9,0,1,20,0,10,0,253,0,0,128,253,0, + 10,0,20,0,255,7,7,7,9,1,0,130,132,136,144,160, + 192,254,9,10,20,9,0,0,8,0,8,0,20,0,20,0, + 42,0,42,0,85,0,93,0,128,128,255,128,7,10,10,9, + 1,0,16,16,16,16,16,16,16,16,16,254,7,7,7,9, + 1,1,62,64,132,138,132,64,62,7,7,7,9,1,1,248, + 4,66,162,66,4,248,5,12,12,9,2,255,112,136,136,16, + 16,32,32,64,64,128,128,112,5,12,12,9,2,255,112,136, + 136,64,64,32,32,16,16,8,8,112,7,8,8,9,1,0, + 130,146,84,68,40,40,16,16,8,10,10,9,0,255,128,143, + 144,80,80,80,80,47,32,32,8,10,10,9,0,255,1,241, + 9,10,10,10,10,244,4,4,3,10,10,9,3,0,64,64, + 64,64,224,64,64,64,64,64,255,255,255,255,255,9,9,18, + 9,0,0,8,0,20,0,34,0,65,0,136,128,65,0,34, + 0,20,0,8,0,7,8,8,9,1,0,16,16,40,40,68, + 84,146,130,7,7,7,9,1,1,146,146,146,146,146,84,56, + 7,7,7,9,1,1,2,2,2,18,2,2,254,7,7,7, + 9,1,1,254,128,128,144,128,128,128,8,11,11,9,0,255, + 193,99,99,85,85,73,85,85,99,99,193,8,11,11,9,1, + 255,131,198,198,170,170,146,170,170,198,198,131,9,11,22,9, + 0,255,193,128,99,0,99,0,85,0,85,0,73,0,85,0, + 85,0,99,0,99,0,193,128,9,13,26,9,0,254,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,255,128,9,13,26,9,0,254,255,128, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,7,7,7,9,1,1,40,40, + 238,40,238,40,40,7,7,7,9,1,1,40,40,40,238,40, + 40,40,7,3,3,9,1,3,64,190,64,9,5,10,9,0, + 2,128,0,128,0,255,128,128,0,128,0,9,5,10,9,0, + 2,0,128,0,128,255,128,0,128,0,128,5,10,10,9,2, + 0,32,80,32,32,32,32,32,32,32,248,5,9,9,9,2, + 0,32,32,80,80,248,80,80,32,32,7,9,9,9,1,0, + 16,16,16,40,198,40,16,16,16,8,9,9,9,0,0,8, + 8,8,20,227,20,8,8,8,8,9,9,9,1,0,16,16, + 16,40,199,40,16,16,16,8,7,7,9,0,1,127,65,65, + 193,65,65,127,8,7,7,9,1,1,254,130,130,131,130,130, + 254,5,12,12,9,2,255,248,160,160,160,160,160,160,160,160, + 160,160,248,5,12,12,9,2,255,248,40,40,40,40,40,40, + 40,40,40,40,248,3,10,10,9,3,0,32,32,64,64,128, + 128,64,64,32,32,3,10,10,9,3,0,128,128,64,64,32, + 32,64,64,128,128,6,10,10,9,1,0,36,36,72,72,144, + 144,72,72,36,36,6,10,10,9,2,0,144,144,72,72,36, + 36,72,72,144,144,255,255,255,255,9,11,22,9,0,0,8, + 0,20,0,54,0,85,0,213,128,85,0,85,0,85,0,85, + 0,85,0,85,0,9,11,22,9,0,255,85,0,85,0,85, + 0,85,0,85,0,85,0,213,128,85,0,54,0,20,0,8, + 0,8,8,8,9,0,0,28,34,169,113,33,1,34,28,8, + 8,8,9,0,0,56,68,149,142,132,128,68,56,9,5,10, + 9,0,2,114,0,169,0,255,128,169,0,114,0,9,5,10, + 9,0,2,32,0,64,0,255,128,64,0,32,0,9,5,10, + 9,0,2,2,0,1,0,255,128,1,0,2,0,9,5,10, + 9,0,2,34,0,65,0,255,128,65,0,34,0,9,7,14, + 9,0,1,16,0,32,0,127,128,128,0,127,128,32,0,16, + 0,9,7,14,9,0,1,4,0,2,0,255,0,0,128,255, + 0,2,0,4,0,9,7,14,9,0,1,20,0,34,0,127, + 0,128,128,127,0,34,0,20,0,9,5,10,9,0,2,32, + 128,64,128,255,128,64,128,32,128,9,5,10,9,0,2,130, + 0,129,0,255,128,129,0,130,0,9,7,14,9,0,1,16, + 128,32,128,127,128,128,128,127,128,32,128,16,128,9,7,14, + 9,0,1,132,0,130,0,255,0,128,128,255,0,130,0,132, + 0,9,6,12,9,0,1,2,0,1,0,85,128,170,128,1, + 0,2,0}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--15-140-75-75-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 9 h=14 x= 4 y=12 dx= 9 dy= 0 ascent=12 len=20 + Font Bounding box w= 9 h=15 x= 0 y=-3 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x15B[2990] U8G_SECTION(".progmem.u8g_font_9x15B") = { + 0,9,15,0,253,10,1,232,3,214,32,255,253,12,253,11, + 253,0,0,0,9,0,12,2,10,10,9,3,0,192,192,192, + 192,192,192,192,192,0,192,5,3,3,9,2,7,216,216,216, + 7,8,8,9,1,1,108,108,254,108,108,254,108,108,7,11, + 11,9,1,255,16,124,214,208,240,124,30,22,214,124,16,8, + 10,10,9,0,0,67,230,230,76,24,24,50,103,103,194,8, + 10,10,9,0,0,56,108,108,120,48,121,207,198,206,123,2, + 4,4,9,3,6,192,192,192,192,5,12,12,9,2,255,24, + 48,96,96,192,192,192,192,96,96,48,24,5,12,12,9,2, + 255,192,96,48,48,24,24,24,24,48,48,96,192,7,5,5, + 9,1,2,108,56,254,56,108,8,7,7,9,0,1,24,24, + 24,255,24,24,24,3,5,5,9,3,253,224,224,96,96,192, + 8,1,1,9,0,4,255,4,3,3,9,2,255,96,240,96, + 8,10,10,9,0,0,3,6,6,12,24,24,48,96,96,192, + 8,10,10,9,0,0,24,60,102,195,195,195,195,102,60,24, + 6,10,10,9,1,0,48,112,240,48,48,48,48,48,48,252, + 8,10,10,9,0,0,60,102,195,3,6,12,24,48,96,255, + 8,10,10,9,0,0,124,198,3,6,28,6,3,3,198,124, + 8,10,10,9,0,0,6,14,30,54,102,198,255,6,6,6, + 8,10,10,9,0,0,254,192,192,220,230,3,3,195,102,60, + 8,10,10,9,0,0,60,102,194,192,220,230,195,195,102,60, + 8,10,10,9,0,0,255,3,3,6,12,12,24,24,24,24, + 8,10,10,9,0,0,60,102,195,102,60,102,195,195,102,60, + 8,10,10,9,0,0,60,102,195,195,103,59,3,67,102,60, + 4,8,8,9,2,255,96,240,96,0,0,96,240,96,4,10, + 10,9,2,253,96,240,96,0,0,112,112,48,48,96,6,10, + 10,9,1,0,12,24,48,96,192,192,96,48,24,12,8,4, + 4,9,0,2,255,0,0,255,6,10,10,9,1,0,192,96, + 48,24,12,12,24,48,96,192,7,10,10,9,1,0,124,198, + 198,6,12,24,48,0,48,48,8,10,10,9,0,0,60,102, + 195,207,219,219,206,192,99,62,8,10,10,9,0,0,24,60, + 102,195,195,195,255,195,195,195,8,10,10,9,0,0,252,198, + 195,198,252,198,195,195,198,252,8,10,10,9,0,0,62,99, + 193,192,192,192,192,193,99,62,8,10,10,9,0,0,252,198, + 195,195,195,195,195,195,198,252,7,10,10,9,1,0,254,192, + 192,192,252,192,192,192,192,254,8,10,10,9,0,0,255,192, + 192,192,252,192,192,192,192,192,8,10,10,9,0,0,62,99, + 192,192,192,199,195,195,99,62,8,10,10,9,0,0,195,195, + 195,195,255,195,195,195,195,195,6,10,10,9,1,0,252,48, + 48,48,48,48,48,48,48,252,6,10,10,9,1,0,60,12, + 12,12,12,12,12,140,216,112,8,10,10,9,0,0,195,198, + 204,216,240,240,216,204,198,195,7,10,10,9,1,0,192,192, + 192,192,192,192,192,192,192,254,8,10,10,9,0,0,195,231, + 255,219,219,219,195,195,195,195,8,10,10,9,0,0,195,227, + 243,243,219,219,207,199,199,195,8,10,10,9,0,0,60,102, + 195,195,195,195,195,195,102,60,8,10,10,9,0,0,254,195, + 195,195,254,192,192,192,192,192,8,10,10,9,0,0,60,102, + 195,195,195,195,219,207,102,61,8,10,10,9,0,0,254,195, + 195,195,254,248,204,198,195,195,8,10,10,9,0,0,126,195, + 192,192,126,3,3,3,195,126,8,10,10,9,0,0,255,24, + 24,24,24,24,24,24,24,24,8,10,10,9,0,0,195,195, + 195,195,195,195,195,195,102,60,8,10,10,9,0,0,195,195, + 195,102,102,102,60,60,24,24,8,10,10,9,0,0,195,195, + 195,195,219,219,219,255,231,195,8,10,10,9,0,0,195,195, + 102,60,24,24,60,102,195,195,8,10,10,9,0,0,195,195, + 102,60,24,24,24,24,24,24,7,10,10,9,1,0,254,6, + 6,12,24,48,96,192,192,254,5,12,12,9,2,255,248,192, + 192,192,192,192,192,192,192,192,192,248,8,10,10,9,0,0, + 192,96,96,48,24,24,12,6,6,3,5,12,12,9,2,255, + 248,24,24,24,24,24,24,24,24,24,24,248,6,4,4,9, + 1,6,48,120,204,132,8,1,1,9,0,255,255,4,3,3, + 9,2,8,192,96,48,8,7,7,9,0,0,62,99,3,127, + 195,199,123,8,10,10,9,0,0,192,192,192,220,230,195,195, + 195,230,220,8,7,7,9,0,0,62,99,192,192,192,99,62, + 8,10,10,9,0,0,3,3,3,59,103,195,195,195,103,59, + 8,7,7,9,0,0,60,102,195,255,192,99,62,8,10,10, + 9,0,0,30,51,51,48,48,252,48,48,48,48,8,10,10, + 9,0,253,125,199,198,198,124,192,126,195,195,126,8,10,10, + 9,0,0,192,192,192,220,230,195,195,195,195,195,6,10,10, + 9,1,0,48,48,0,112,48,48,48,48,48,252,7,13,13, + 9,1,253,6,6,0,30,6,6,6,6,6,198,198,198,124, + 7,10,10,9,1,0,192,192,192,204,216,240,240,216,204,198, + 6,10,10,9,1,0,112,48,48,48,48,48,48,48,48,252, + 8,7,7,9,0,0,182,219,219,219,219,219,219,8,7,7, + 9,0,0,220,230,195,195,195,195,195,8,7,7,9,0,0, + 60,102,195,195,195,102,60,8,10,10,9,0,253,220,230,195, + 195,195,230,220,192,192,192,8,10,10,9,0,253,59,103,195, + 195,195,103,59,3,3,3,8,7,7,9,0,0,222,115,96, + 96,96,96,96,8,7,7,9,0,0,126,195,192,126,3,195, + 126,8,9,9,9,0,0,48,48,252,48,48,48,48,51,30, + 8,7,7,9,0,0,195,195,195,195,195,103,59,8,7,7, + 9,0,0,195,195,102,102,60,60,24,8,7,7,9,0,0, + 195,195,219,219,219,255,102,8,7,7,9,0,0,195,102,60, + 24,60,102,195,8,10,10,9,0,253,195,195,195,195,195,103, + 59,3,198,124,6,7,7,9,1,0,252,12,24,48,96,192, + 252,5,12,12,9,2,255,56,96,96,96,96,192,192,96,96, + 96,96,56,2,10,10,9,3,0,192,192,192,192,192,192,192, + 192,192,192,5,12,12,9,2,255,224,48,48,48,48,24,24, + 48,48,48,48,224,8,3,3,9,0,7,115,219,206,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0, + 0,0,9,0,12,2,10,10,9,4,0,192,0,192,192,192, + 192,192,192,192,192,7,8,8,9,1,0,4,124,206,208,208, + 230,124,64,8,10,10,9,0,255,30,51,48,48,124,48,48, + 248,191,224,7,7,7,9,1,2,198,254,108,68,108,254,198, + 8,10,10,9,0,0,195,195,102,60,126,24,126,24,24,24, + 2,11,11,9,4,255,192,192,192,192,192,0,0,192,192,192, + 192,6,11,11,9,1,255,120,204,192,120,204,204,204,120,12, + 204,120,6,2,2,9,1,9,204,204,8,11,11,9,0,0, + 60,126,195,189,165,161,165,189,195,126,60,5,7,7,9,1, + 3,240,24,248,152,248,0,248,8,8,8,9,0,1,27,54, + 108,216,216,108,54,27,7,5,5,9,1,2,254,254,6,6, + 6,6,1,1,9,1,4,252,8,11,11,9,0,0,60,126, + 195,189,165,189,169,173,195,126,60,6,2,2,9,1,9,252, + 252,6,4,4,9,2,6,120,204,204,120,8,10,10,9,0, + 0,24,24,24,255,255,24,24,24,255,255,5,7,7,9,1, + 4,112,152,24,48,96,192,248,5,7,7,9,1,4,112,152, + 24,48,24,152,112,4,3,3,9,2,8,48,96,192,7,10, + 10,9,1,253,198,198,198,198,198,238,250,192,192,192,7,10, + 10,9,1,0,126,254,246,246,246,118,54,54,54,54,3,3, + 3,9,3,3,64,224,64,5,3,3,9,2,253,24,216,112, + 4,7,7,9,1,4,96,224,96,96,96,96,240,5,6,6, + 9,1,4,112,216,216,112,0,248,8,8,8,9,0,1,216, + 108,54,27,27,54,108,216,8,11,11,9,0,0,96,224,96, + 96,97,99,247,15,27,31,3,8,11,11,9,0,0,96,224, + 96,96,110,115,243,6,12,24,31,8,11,11,9,0,0,112, + 152,24,48,25,155,119,15,27,31,3,7,10,10,9,1,0, + 24,24,0,24,48,96,192,198,198,124,8,12,12,9,0,0, + 96,48,24,0,60,102,195,195,255,195,195,195,8,12,12,9, + 0,0,6,12,24,0,60,102,195,195,255,195,195,195,8,12, + 12,9,0,0,24,60,102,0,60,102,195,195,255,195,195,195, + 8,12,12,9,0,0,50,126,76,0,60,102,195,195,255,195, + 195,195,8,11,11,9,0,0,102,102,0,60,102,195,195,255, + 195,195,195,8,12,12,9,0,0,24,36,36,24,60,102,195, + 195,255,195,195,195,8,10,10,9,0,0,31,60,108,108,204, + 255,204,204,204,207,8,13,13,9,0,253,62,99,193,192,192, + 192,192,193,99,62,12,108,56,7,12,12,9,1,0,96,48, + 24,0,254,192,192,252,192,192,192,254,7,12,12,9,1,0, + 12,24,48,0,254,192,192,252,192,192,192,254,7,12,12,9, + 1,0,24,60,102,0,254,192,192,252,192,192,192,254,7,11, + 11,9,1,0,102,102,0,254,192,192,252,192,192,192,254,6, + 12,12,9,1,0,192,96,48,0,252,48,48,48,48,48,48, + 252,6,12,12,9,1,0,24,48,96,0,252,48,48,48,48, + 48,48,252,6,12,12,9,1,0,48,120,204,0,252,48,48, + 48,48,48,48,252,6,11,11,9,1,0,204,204,0,252,48, + 48,48,48,48,48,252,9,10,20,9,0,0,126,0,99,0, + 97,128,97,128,249,128,249,128,97,128,97,128,99,0,126,0, + 8,12,12,9,0,0,50,126,76,0,195,227,243,251,223,207, + 199,195,8,12,12,9,0,0,96,48,24,0,60,102,195,195, + 195,195,102,60,8,12,12,9,0,0,6,12,24,0,60,102, + 195,195,195,195,102,60,8,12,12,9,0,0,24,60,102,0, + 60,102,195,195,195,195,102,60,8,12,12,9,0,0,50,126, + 76,0,60,102,195,195,195,195,102,60,8,11,11,9,0,0, + 102,102,0,60,102,195,195,195,195,102,60,7,8,8,9,1, + 0,130,198,108,56,56,108,198,130,8,12,12,9,0,255,1, + 63,102,199,203,203,211,211,227,102,252,128,8,12,12,9,0, + 0,96,48,24,0,195,195,195,195,195,195,102,60,8,12,12, + 9,0,0,6,12,24,0,195,195,195,195,195,195,102,60,8, + 12,12,9,0,0,24,60,102,0,195,195,195,195,195,195,102, + 60,8,11,11,9,0,0,102,102,0,195,195,195,195,195,195, + 102,60,8,12,12,9,0,0,6,12,24,0,195,102,60,24, + 24,24,24,24,7,10,10,9,1,0,240,96,124,102,102,102, + 124,96,96,240,7,10,10,9,1,0,60,102,198,204,216,204, + 198,198,198,220,8,11,11,9,0,0,96,48,24,0,62,67, + 3,127,195,199,123,8,11,11,9,0,0,12,24,48,0,62, + 67,3,127,195,199,123,8,11,11,9,0,0,24,60,102,0, + 62,67,3,127,195,199,123,8,11,11,9,0,0,50,126,76, + 0,62,67,3,127,195,199,123,8,10,10,9,0,0,102,102, + 0,62,67,3,127,195,199,123,8,11,11,9,0,0,24,36, + 36,24,62,67,3,127,195,199,123,8,7,7,9,0,0,118, + 155,27,126,216,217,110,8,10,10,9,0,253,62,99,192,192, + 192,99,62,12,108,56,8,11,11,9,0,0,96,48,24,0, + 60,102,195,255,192,99,62,8,11,11,9,0,0,12,24,48, + 0,60,102,195,255,192,99,62,8,11,11,9,0,0,24,60, + 102,0,60,102,195,255,192,99,62,8,10,10,9,0,0,102, + 102,0,60,102,195,255,192,99,62,6,11,11,9,1,0,192, + 96,48,0,112,48,48,48,48,48,252,6,11,11,9,1,0, + 24,48,96,0,112,48,48,48,48,48,252,6,11,11,9,1, + 0,48,120,204,0,112,48,48,48,48,48,252,6,10,10,9, + 1,0,204,204,0,112,48,48,48,48,48,252,8,12,12,9, + 0,0,136,216,112,112,216,140,62,103,195,195,102,60,8,11, + 11,9,0,0,50,126,76,0,220,230,195,195,195,195,195,8, + 11,11,9,0,0,96,48,24,0,60,102,195,195,195,102,60, + 8,11,11,9,0,0,12,24,48,0,60,102,195,195,195,102, + 60,8,11,11,9,0,0,24,60,102,0,60,102,195,195,195, + 102,60,8,11,11,9,0,0,50,126,76,0,60,102,195,195, + 195,102,60,8,10,10,9,0,0,102,102,0,60,102,195,195, + 195,102,60,8,10,10,9,0,0,24,24,0,0,255,255,0, + 0,24,24,8,9,9,9,0,255,1,63,102,207,219,243,102, + 252,128,8,11,11,9,0,0,96,48,24,0,195,195,195,195, + 195,103,59,8,11,11,9,0,0,12,24,48,0,195,195,195, + 195,195,103,59,8,11,11,9,0,0,24,60,102,0,195,195, + 195,195,195,103,59,8,10,10,9,0,0,102,102,0,195,195, + 195,195,195,103,59,8,14,14,9,0,253,12,24,48,0,195, + 195,195,195,195,103,59,3,198,124,7,12,12,9,1,253,224, + 96,96,124,102,102,102,102,124,96,96,224,8,13,13,9,0, + 253,102,102,0,195,195,195,195,195,103,59,3,198,124}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--15-140-75-75-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 8 h=13 x= 3 y=12 dx= 9 dy= 0 ascent=12 len=13 + Font Bounding box w= 9 h=15 x= 0 y=-3 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x15Br[1423] U8G_SECTION(".progmem.u8g_font_9x15Br") = { + 0,9,15,0,253,10,1,232,3,214,32,127,253,12,253,11, + 253,0,0,0,9,0,12,2,10,10,9,3,0,192,192,192, + 192,192,192,192,192,0,192,5,3,3,9,2,7,216,216,216, + 7,8,8,9,1,1,108,108,254,108,108,254,108,108,7,11, + 11,9,1,255,16,124,214,208,240,124,30,22,214,124,16,8, + 10,10,9,0,0,67,230,230,76,24,24,50,103,103,194,8, + 10,10,9,0,0,56,108,108,120,48,121,207,198,206,123,2, + 4,4,9,3,6,192,192,192,192,5,12,12,9,2,255,24, + 48,96,96,192,192,192,192,96,96,48,24,5,12,12,9,2, + 255,192,96,48,48,24,24,24,24,48,48,96,192,7,5,5, + 9,1,2,108,56,254,56,108,8,7,7,9,0,1,24,24, + 24,255,24,24,24,3,5,5,9,3,253,224,224,96,96,192, + 8,1,1,9,0,4,255,4,3,3,9,2,255,96,240,96, + 8,10,10,9,0,0,3,6,6,12,24,24,48,96,96,192, + 8,10,10,9,0,0,24,60,102,195,195,195,195,102,60,24, + 6,10,10,9,1,0,48,112,240,48,48,48,48,48,48,252, + 8,10,10,9,0,0,60,102,195,3,6,12,24,48,96,255, + 8,10,10,9,0,0,124,198,3,6,28,6,3,3,198,124, + 8,10,10,9,0,0,6,14,30,54,102,198,255,6,6,6, + 8,10,10,9,0,0,254,192,192,220,230,3,3,195,102,60, + 8,10,10,9,0,0,60,102,194,192,220,230,195,195,102,60, + 8,10,10,9,0,0,255,3,3,6,12,12,24,24,24,24, + 8,10,10,9,0,0,60,102,195,102,60,102,195,195,102,60, + 8,10,10,9,0,0,60,102,195,195,103,59,3,67,102,60, + 4,8,8,9,2,255,96,240,96,0,0,96,240,96,4,10, + 10,9,2,253,96,240,96,0,0,112,112,48,48,96,6,10, + 10,9,1,0,12,24,48,96,192,192,96,48,24,12,8,4, + 4,9,0,2,255,0,0,255,6,10,10,9,1,0,192,96, + 48,24,12,12,24,48,96,192,7,10,10,9,1,0,124,198, + 198,6,12,24,48,0,48,48,8,10,10,9,0,0,60,102, + 195,207,219,219,206,192,99,62,8,10,10,9,0,0,24,60, + 102,195,195,195,255,195,195,195,8,10,10,9,0,0,252,198, + 195,198,252,198,195,195,198,252,8,10,10,9,0,0,62,99, + 193,192,192,192,192,193,99,62,8,10,10,9,0,0,252,198, + 195,195,195,195,195,195,198,252,7,10,10,9,1,0,254,192, + 192,192,252,192,192,192,192,254,8,10,10,9,0,0,255,192, + 192,192,252,192,192,192,192,192,8,10,10,9,0,0,62,99, + 192,192,192,199,195,195,99,62,8,10,10,9,0,0,195,195, + 195,195,255,195,195,195,195,195,6,10,10,9,1,0,252,48, + 48,48,48,48,48,48,48,252,6,10,10,9,1,0,60,12, + 12,12,12,12,12,140,216,112,8,10,10,9,0,0,195,198, + 204,216,240,240,216,204,198,195,7,10,10,9,1,0,192,192, + 192,192,192,192,192,192,192,254,8,10,10,9,0,0,195,231, + 255,219,219,219,195,195,195,195,8,10,10,9,0,0,195,227, + 243,243,219,219,207,199,199,195,8,10,10,9,0,0,60,102, + 195,195,195,195,195,195,102,60,8,10,10,9,0,0,254,195, + 195,195,254,192,192,192,192,192,8,10,10,9,0,0,60,102, + 195,195,195,195,219,207,102,61,8,10,10,9,0,0,254,195, + 195,195,254,248,204,198,195,195,8,10,10,9,0,0,126,195, + 192,192,126,3,3,3,195,126,8,10,10,9,0,0,255,24, + 24,24,24,24,24,24,24,24,8,10,10,9,0,0,195,195, + 195,195,195,195,195,195,102,60,8,10,10,9,0,0,195,195, + 195,102,102,102,60,60,24,24,8,10,10,9,0,0,195,195, + 195,195,219,219,219,255,231,195,8,10,10,9,0,0,195,195, + 102,60,24,24,60,102,195,195,8,10,10,9,0,0,195,195, + 102,60,24,24,24,24,24,24,7,10,10,9,1,0,254,6, + 6,12,24,48,96,192,192,254,5,12,12,9,2,255,248,192, + 192,192,192,192,192,192,192,192,192,248,8,10,10,9,0,0, + 192,96,96,48,24,24,12,6,6,3,5,12,12,9,2,255, + 248,24,24,24,24,24,24,24,24,24,24,248,6,4,4,9, + 1,6,48,120,204,132,8,1,1,9,0,255,255,4,3,3, + 9,2,8,192,96,48,8,7,7,9,0,0,62,99,3,127, + 195,199,123,8,10,10,9,0,0,192,192,192,220,230,195,195, + 195,230,220,8,7,7,9,0,0,62,99,192,192,192,99,62, + 8,10,10,9,0,0,3,3,3,59,103,195,195,195,103,59, + 8,7,7,9,0,0,60,102,195,255,192,99,62,8,10,10, + 9,0,0,30,51,51,48,48,252,48,48,48,48,8,10,10, + 9,0,253,125,199,198,198,124,192,126,195,195,126,8,10,10, + 9,0,0,192,192,192,220,230,195,195,195,195,195,6,10,10, + 9,1,0,48,48,0,112,48,48,48,48,48,252,7,13,13, + 9,1,253,6,6,0,30,6,6,6,6,6,198,198,198,124, + 7,10,10,9,1,0,192,192,192,204,216,240,240,216,204,198, + 6,10,10,9,1,0,112,48,48,48,48,48,48,48,48,252, + 8,7,7,9,0,0,182,219,219,219,219,219,219,8,7,7, + 9,0,0,220,230,195,195,195,195,195,8,7,7,9,0,0, + 60,102,195,195,195,102,60,8,10,10,9,0,253,220,230,195, + 195,195,230,220,192,192,192,8,10,10,9,0,253,59,103,195, + 195,195,103,59,3,3,3,8,7,7,9,0,0,222,115,96, + 96,96,96,96,8,7,7,9,0,0,126,195,192,126,3,195, + 126,8,9,9,9,0,0,48,48,252,48,48,48,48,51,30, + 8,7,7,9,0,0,195,195,195,195,195,103,59,8,7,7, + 9,0,0,195,195,102,102,60,60,24,8,7,7,9,0,0, + 195,195,219,219,219,255,102,8,7,7,9,0,0,195,102,60, + 24,60,102,195,8,10,10,9,0,253,195,195,195,195,195,103, + 59,3,198,124,6,7,7,9,1,0,252,12,24,48,96,192, + 252,5,12,12,9,2,255,56,96,96,96,96,192,192,96,96, + 96,96,56,2,10,10,9,3,0,192,192,192,192,192,192,192, + 192,192,192,5,12,12,9,2,255,224,48,48,48,48,24,24, + 48,48,48,48,224,8,3,3,9,0,7,115,219,206,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--15-140-75-75-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 8 h=14 x= 4 y=12 dx= 9 dy= 0 ascent=12 len=14 + Font Bounding box w= 9 h=15 x= 0 y=-3 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x15[2959] U8G_SECTION(".progmem.u8g_font_9x15") = { + 0,9,15,0,253,10,1,232,3,216,32,255,253,12,253,11, + 253,0,0,0,9,0,12,1,11,11,9,4,0,128,128,128, + 128,128,128,128,0,0,128,128,4,3,3,9,3,7,144,144, + 144,6,8,8,9,1,1,72,72,252,72,72,252,72,72,7, + 11,11,9,1,255,16,124,146,144,80,56,20,18,146,124,16, + 7,10,10,9,1,0,66,164,164,72,16,16,36,74,74,132, + 7,10,10,9,1,0,96,144,144,144,96,98,148,136,148,98, + 1,3,3,9,4,7,128,128,128,3,12,12,9,3,255,32, + 64,64,128,128,128,128,128,128,64,64,32,3,12,12,9,3, + 255,128,64,64,32,32,32,32,32,32,64,64,128,7,7,7, + 9,1,3,16,146,84,56,84,146,16,7,7,7,9,1,1, + 16,16,16,254,16,16,16,2,5,5,9,4,253,192,192,64, + 64,128,7,1,1,9,1,4,254,2,2,2,9,4,0,192, + 192,7,10,10,9,1,0,2,4,4,8,16,16,32,64,64, + 128,7,10,10,9,1,0,56,68,130,130,130,130,130,130,68, + 56,7,10,10,9,1,0,16,48,80,144,16,16,16,16,16, + 254,7,10,10,9,1,0,124,130,130,4,8,16,32,64,128, + 254,7,10,10,9,1,0,254,2,4,8,28,2,2,2,130, + 124,7,10,10,9,1,0,4,12,20,36,68,132,254,4,4, + 4,7,10,10,9,1,0,254,128,128,188,194,2,2,2,130, + 124,7,10,10,9,1,0,60,64,128,128,188,194,130,130,130, + 124,7,10,10,9,1,0,254,2,4,4,8,8,16,16,32, + 32,7,10,10,9,1,0,56,68,130,68,56,68,130,130,68, + 56,7,10,10,9,1,0,124,130,130,130,134,122,2,2,4, + 120,2,7,7,9,4,0,192,192,0,0,0,192,192,2,10, + 10,9,4,253,192,192,0,0,0,192,192,64,64,128,5,10, + 10,9,2,0,8,16,32,64,128,128,64,32,16,8,7,4, + 4,9,1,2,254,0,0,254,5,10,10,9,2,0,128,64, + 32,16,8,8,16,32,64,128,7,10,10,9,1,0,124,130, + 130,2,4,8,16,16,0,16,7,10,10,9,1,0,124,130, + 130,158,162,166,154,128,128,124,7,10,10,9,1,0,16,40, + 68,130,130,130,254,130,130,130,7,10,10,9,1,0,248,132, + 130,132,248,132,130,130,132,248,7,10,10,9,1,0,124,130, + 128,128,128,128,128,128,130,124,7,10,10,9,1,0,248,132, + 130,130,130,130,130,130,132,248,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,254,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,128,7,10,10,9,1,0,124,130, + 128,128,128,142,130,130,130,124,7,10,10,9,1,0,130,130, + 130,130,254,130,130,130,130,130,5,10,10,9,2,0,248,32, + 32,32,32,32,32,32,32,248,8,10,10,9,1,0,31,4, + 4,4,4,4,4,4,132,120,7,10,10,9,1,0,130,132, + 136,144,224,160,144,136,132,130,7,10,10,9,1,0,128,128, + 128,128,128,128,128,128,128,254,7,10,10,9,1,0,130,130, + 198,170,170,146,146,130,130,130,7,10,10,9,1,0,130,130, + 194,162,146,138,134,130,130,130,7,10,10,9,1,0,124,130, + 130,130,130,130,130,130,130,124,7,10,10,9,1,0,252,130, + 130,130,252,128,128,128,128,128,7,12,12,9,1,254,124,130, + 130,130,130,130,130,162,146,124,8,6,7,10,10,9,1,0, + 252,130,130,130,252,144,136,132,130,130,7,10,10,9,1,0, + 124,130,130,128,112,12,2,130,130,124,7,10,10,9,1,0, + 254,16,16,16,16,16,16,16,16,16,7,10,10,9,1,0, + 130,130,130,130,130,130,130,130,130,124,7,10,10,9,1,0, + 130,130,130,68,68,68,40,40,40,16,7,10,10,9,1,0, + 130,130,130,130,146,146,146,146,170,68,7,10,10,9,1,0, + 130,130,68,40,16,16,40,68,130,130,7,10,10,9,1,0, + 130,130,68,40,16,16,16,16,16,16,7,10,10,9,1,0, + 254,2,4,8,16,32,64,128,128,254,4,12,12,9,3,255, + 240,128,128,128,128,128,128,128,128,128,128,240,7,10,10,9, + 1,0,128,64,64,32,16,16,8,4,4,2,4,12,12,9, + 2,255,240,16,16,16,16,16,16,16,16,16,16,240,7,4, + 4,9,1,6,16,40,68,130,8,1,1,9,0,255,255,3, + 3,3,9,3,8,128,64,32,7,7,7,9,1,0,124,2, + 2,126,130,134,122,7,10,10,9,1,0,128,128,128,188,194, + 130,130,130,194,188,7,7,7,9,1,0,124,130,128,128,128, + 130,124,7,10,10,9,1,0,2,2,2,122,134,130,130,130, + 134,122,7,7,7,9,1,0,124,130,130,254,128,128,124,7, + 10,10,9,1,0,28,34,34,32,32,248,32,32,32,32,7, + 10,10,9,1,253,122,132,132,132,120,128,124,130,130,124,7, + 10,10,9,1,0,128,128,128,188,194,130,130,130,130,130,5, + 10,10,9,2,0,96,0,0,224,32,32,32,32,32,248,6, + 13,13,9,1,253,12,0,0,28,4,4,4,4,4,132,132, + 132,120,7,10,10,9,1,0,128,128,128,130,140,176,192,176, + 140,130,5,10,10,9,2,0,224,32,32,32,32,32,32,32, + 32,248,7,7,7,9,1,0,236,146,146,146,146,146,130,7, + 7,7,9,1,0,188,194,130,130,130,130,130,7,7,7,9, + 1,0,124,130,130,130,130,130,124,7,10,10,9,1,253,188, + 194,130,130,130,194,188,128,128,128,7,10,10,9,1,253,122, + 134,130,130,130,134,122,2,2,2,7,7,7,9,1,0,156, + 98,66,64,64,64,64,7,7,7,9,1,0,124,130,128,124, + 2,130,124,7,9,9,9,1,0,32,32,252,32,32,32,32, + 34,28,7,7,7,9,1,0,132,132,132,132,132,132,122,7, + 7,7,9,1,0,130,130,68,68,40,40,16,7,7,7,9, + 1,0,130,130,146,146,146,170,68,7,7,7,9,1,0,130, + 68,40,16,40,68,130,6,10,10,9,1,253,132,132,132,132, + 132,140,116,4,132,120,7,7,7,9,1,0,254,4,8,16, + 32,64,254,5,12,12,9,3,255,56,64,64,64,32,192,192, + 32,64,64,64,56,1,12,12,9,4,255,128,128,128,128,128, + 128,128,128,128,128,128,128,5,12,12,9,1,255,224,16,16, + 16,32,24,24,32,16,16,16,224,7,3,3,9,1,7,98, + 146,140,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,9,0,12,1,11,11,9,4,0,128, + 128,0,0,128,128,128,128,128,128,128,6,8,8,9,1,0, + 8,120,148,144,160,164,120,64,7,10,10,9,1,0,28,34, + 32,32,248,32,32,96,162,92,7,6,6,9,1,3,130,124, + 68,68,124,130,7,10,10,9,1,0,130,130,68,40,124,16, + 124,16,16,16,1,11,11,9,4,255,128,128,128,128,128,0, + 128,128,128,128,128,4,11,11,9,2,255,96,144,128,96,144, + 144,144,96,16,144,96,5,2,2,9,2,9,136,136,8,9, + 9,9,0,1,60,66,153,165,161,165,153,66,60,5,7,7, + 9,1,3,96,144,112,144,120,0,248,7,8,8,9,1,1, + 18,36,72,144,144,72,36,18,6,4,4,9,1,2,252,4, + 4,4,5,1,1,9,2,4,248,8,9,9,9,0,1,60, + 66,185,165,185,169,165,66,60,6,1,1,9,1,9,252,4, + 4,4,9,3,6,96,144,144,96,7,9,9,9,1,1,16, + 16,16,254,16,16,16,0,254,4,6,6,9,1,4,96,144, + 16,96,128,240,4,6,6,9,1,4,96,144,32,16,144,96, + 3,3,3,9,3,8,32,64,128,7,9,9,9,1,254,130, + 130,130,130,130,198,186,128,128,7,10,10,9,1,0,126,138, + 138,138,122,10,10,10,10,10,2,2,2,9,4,4,192,192, + 4,3,3,9,2,253,48,144,96,3,6,6,9,1,4,64, + 192,64,64,64,224,5,6,6,9,1,4,112,136,136,112,0, + 248,7,8,8,9,1,1,144,72,36,18,18,36,72,144,7, + 10,10,9,1,0,64,192,64,64,66,230,10,18,26,6,7, + 10,10,9,1,0,64,192,64,64,76,242,2,12,16,30,7, + 10,10,9,1,0,96,144,32,16,146,102,10,18,26,6,7, + 10,10,9,1,0,16,0,16,16,32,64,128,130,130,124,7, + 12,12,9,1,0,64,32,16,0,56,68,130,130,254,130,130, + 130,7,12,12,9,1,0,4,8,16,0,56,68,130,130,254, + 130,130,130,7,12,12,9,1,0,16,40,68,0,56,68,130, + 130,254,130,130,130,7,11,11,9,1,0,98,156,0,56,68, + 130,130,254,130,130,130,7,11,11,9,1,0,68,68,0,56, + 68,130,130,254,130,130,130,7,11,11,9,1,0,56,68,56, + 40,68,130,130,254,130,130,130,7,10,10,9,1,0,110,144, + 144,144,144,252,144,144,144,158,7,13,13,9,1,253,124,130, + 128,128,128,128,128,128,130,124,24,72,48,7,12,12,9,1, + 0,64,32,16,0,254,64,64,120,64,64,64,254,7,12,12, + 9,1,0,4,8,16,0,254,64,64,120,64,64,64,254,7, + 12,12,9,1,0,16,40,68,0,254,64,64,120,64,64,64, + 254,7,11,11,9,1,0,68,68,0,254,64,64,120,64,64, + 64,254,5,12,12,9,2,0,128,64,32,0,248,32,32,32, + 32,32,32,248,5,12,12,9,2,0,8,16,32,0,248,32, + 32,32,32,32,32,248,5,12,12,9,2,0,32,80,136,0, + 248,32,32,32,32,32,32,248,5,11,11,9,2,0,136,136, + 0,248,32,32,32,32,32,32,248,8,10,10,9,0,0,124, + 66,65,65,225,65,65,65,66,124,7,11,11,9,1,0,98, + 156,0,130,194,162,146,146,138,134,130,7,12,12,9,1,0, + 64,32,16,0,124,130,130,130,130,130,130,124,7,12,12,9, + 1,0,4,8,16,0,124,130,130,130,130,130,130,124,7,12, + 12,9,1,0,16,40,68,0,124,130,130,130,130,130,130,124, + 7,11,11,9,1,0,98,156,0,124,130,130,130,130,130,130, + 124,7,11,11,9,1,0,68,68,0,124,130,130,130,130,130, + 130,124,7,7,7,9,1,1,130,68,40,16,40,68,130,7, + 12,12,9,1,255,2,124,134,138,138,146,146,162,162,194,124, + 128,7,12,12,9,1,0,64,32,16,0,130,130,130,130,130, + 130,130,124,7,12,12,9,1,0,4,8,16,0,130,130,130, + 130,130,130,130,124,7,12,12,9,1,0,16,40,68,0,130, + 130,130,130,130,130,130,124,7,11,11,9,1,0,68,68,0, + 130,130,130,130,130,130,130,124,7,12,12,9,1,0,4,8, + 16,0,130,130,68,40,16,16,16,16,7,10,10,9,1,0, + 128,128,252,130,130,130,252,128,128,128,6,10,10,9,1,0, + 56,68,68,72,208,72,68,68,68,88,7,11,11,9,1,0, + 32,16,8,0,124,2,2,126,130,134,122,7,11,11,9,1, + 0,4,8,16,0,124,2,2,126,130,134,122,7,11,11,9, + 1,0,16,40,68,0,124,2,2,126,130,134,122,7,10,10, + 9,1,0,50,76,0,124,2,2,126,130,134,122,7,10,10, + 9,1,0,68,68,0,124,2,2,126,130,134,122,7,11,11, + 9,1,0,24,36,24,0,124,2,2,126,130,134,122,7,7, + 7,9,1,0,108,146,18,124,144,146,110,7,10,10,9,1, + 253,124,130,128,128,128,130,124,24,72,48,7,11,11,9,1, + 0,64,32,16,0,124,130,130,254,128,128,124,7,11,11,9, + 1,0,4,8,16,0,124,130,130,254,128,128,124,7,11,11, + 9,1,0,16,40,68,0,124,130,130,254,128,128,124,7,10, + 10,9,1,0,68,68,0,124,130,130,254,128,128,124,5,11, + 11,9,2,0,128,64,32,0,224,32,32,32,32,32,248,5, + 11,11,9,2,0,16,32,64,0,224,32,32,32,32,32,248, + 6,11,11,9,1,0,32,80,136,0,112,16,16,16,16,16, + 124,5,10,10,9,2,0,144,144,0,224,32,32,32,32,32, + 248,7,11,11,9,1,0,72,48,80,8,124,130,130,130,130, + 130,124,7,10,10,9,1,0,98,156,0,188,194,130,130,130, + 130,130,7,11,11,9,1,0,64,32,16,0,124,130,130,130, + 130,130,124,7,11,11,9,1,0,4,8,16,0,124,130,130, + 130,130,130,124,7,11,11,9,1,0,16,40,68,0,124,130, + 130,130,130,130,124,7,10,10,9,1,0,98,156,0,124,130, + 130,130,130,130,124,7,10,10,9,1,0,68,68,0,124,130, + 130,130,130,130,124,7,9,9,9,1,0,16,56,16,0,254, + 0,16,56,16,7,9,9,9,1,255,2,124,138,138,146,162, + 162,124,128,7,11,11,9,1,0,64,32,16,0,132,132,132, + 132,132,132,122,7,11,11,9,1,0,4,8,16,0,132,132, + 132,132,132,132,122,7,11,11,9,1,0,16,40,68,0,132, + 132,132,132,132,132,122,7,10,10,9,1,0,72,72,0,132, + 132,132,132,132,132,122,6,14,14,9,1,253,8,16,32,0, + 132,132,132,132,132,140,116,4,132,120,7,12,12,9,1,253, + 128,128,128,188,194,130,130,194,188,128,128,128,6,13,13,9, + 1,253,72,72,0,132,132,132,132,132,140,116,4,132,120}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--15-140-75-75-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 8 h=13 x= 4 y=12 dx= 9 dy= 0 ascent=12 len=13 + Font Bounding box w= 9 h=15 x= 0 y=-3 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x15r[1427] U8G_SECTION(".progmem.u8g_font_9x15r") = { + 0,9,15,0,253,10,1,232,3,216,32,127,253,12,253,11, + 253,0,0,0,9,0,12,1,11,11,9,4,0,128,128,128, + 128,128,128,128,0,0,128,128,4,3,3,9,3,7,144,144, + 144,6,8,8,9,1,1,72,72,252,72,72,252,72,72,7, + 11,11,9,1,255,16,124,146,144,80,56,20,18,146,124,16, + 7,10,10,9,1,0,66,164,164,72,16,16,36,74,74,132, + 7,10,10,9,1,0,96,144,144,144,96,98,148,136,148,98, + 1,3,3,9,4,7,128,128,128,3,12,12,9,3,255,32, + 64,64,128,128,128,128,128,128,64,64,32,3,12,12,9,3, + 255,128,64,64,32,32,32,32,32,32,64,64,128,7,7,7, + 9,1,3,16,146,84,56,84,146,16,7,7,7,9,1,1, + 16,16,16,254,16,16,16,2,5,5,9,4,253,192,192,64, + 64,128,7,1,1,9,1,4,254,2,2,2,9,4,0,192, + 192,7,10,10,9,1,0,2,4,4,8,16,16,32,64,64, + 128,7,10,10,9,1,0,56,68,130,130,130,130,130,130,68, + 56,7,10,10,9,1,0,16,48,80,144,16,16,16,16,16, + 254,7,10,10,9,1,0,124,130,130,4,8,16,32,64,128, + 254,7,10,10,9,1,0,254,2,4,8,28,2,2,2,130, + 124,7,10,10,9,1,0,4,12,20,36,68,132,254,4,4, + 4,7,10,10,9,1,0,254,128,128,188,194,2,2,2,130, + 124,7,10,10,9,1,0,60,64,128,128,188,194,130,130,130, + 124,7,10,10,9,1,0,254,2,4,4,8,8,16,16,32, + 32,7,10,10,9,1,0,56,68,130,68,56,68,130,130,68, + 56,7,10,10,9,1,0,124,130,130,130,134,122,2,2,4, + 120,2,7,7,9,4,0,192,192,0,0,0,192,192,2,10, + 10,9,4,253,192,192,0,0,0,192,192,64,64,128,5,10, + 10,9,2,0,8,16,32,64,128,128,64,32,16,8,7,4, + 4,9,1,2,254,0,0,254,5,10,10,9,2,0,128,64, + 32,16,8,8,16,32,64,128,7,10,10,9,1,0,124,130, + 130,2,4,8,16,16,0,16,7,10,10,9,1,0,124,130, + 130,158,162,166,154,128,128,124,7,10,10,9,1,0,16,40, + 68,130,130,130,254,130,130,130,7,10,10,9,1,0,248,132, + 130,132,248,132,130,130,132,248,7,10,10,9,1,0,124,130, + 128,128,128,128,128,128,130,124,7,10,10,9,1,0,248,132, + 130,130,130,130,130,130,132,248,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,254,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,128,7,10,10,9,1,0,124,130, + 128,128,128,142,130,130,130,124,7,10,10,9,1,0,130,130, + 130,130,254,130,130,130,130,130,5,10,10,9,2,0,248,32, + 32,32,32,32,32,32,32,248,8,10,10,9,1,0,31,4, + 4,4,4,4,4,4,132,120,7,10,10,9,1,0,130,132, + 136,144,224,160,144,136,132,130,7,10,10,9,1,0,128,128, + 128,128,128,128,128,128,128,254,7,10,10,9,1,0,130,130, + 198,170,170,146,146,130,130,130,7,10,10,9,1,0,130,130, + 194,162,146,138,134,130,130,130,7,10,10,9,1,0,124,130, + 130,130,130,130,130,130,130,124,7,10,10,9,1,0,252,130, + 130,130,252,128,128,128,128,128,7,12,12,9,1,254,124,130, + 130,130,130,130,130,162,146,124,8,6,7,10,10,9,1,0, + 252,130,130,130,252,144,136,132,130,130,7,10,10,9,1,0, + 124,130,130,128,112,12,2,130,130,124,7,10,10,9,1,0, + 254,16,16,16,16,16,16,16,16,16,7,10,10,9,1,0, + 130,130,130,130,130,130,130,130,130,124,7,10,10,9,1,0, + 130,130,130,68,68,68,40,40,40,16,7,10,10,9,1,0, + 130,130,130,130,146,146,146,146,170,68,7,10,10,9,1,0, + 130,130,68,40,16,16,40,68,130,130,7,10,10,9,1,0, + 130,130,68,40,16,16,16,16,16,16,7,10,10,9,1,0, + 254,2,4,8,16,32,64,128,128,254,4,12,12,9,3,255, + 240,128,128,128,128,128,128,128,128,128,128,240,7,10,10,9, + 1,0,128,64,64,32,16,16,8,4,4,2,4,12,12,9, + 2,255,240,16,16,16,16,16,16,16,16,16,16,240,7,4, + 4,9,1,6,16,40,68,130,8,1,1,9,0,255,255,3, + 3,3,9,3,8,128,64,32,7,7,7,9,1,0,124,2, + 2,126,130,134,122,7,10,10,9,1,0,128,128,128,188,194, + 130,130,130,194,188,7,7,7,9,1,0,124,130,128,128,128, + 130,124,7,10,10,9,1,0,2,2,2,122,134,130,130,130, + 134,122,7,7,7,9,1,0,124,130,130,254,128,128,124,7, + 10,10,9,1,0,28,34,34,32,32,248,32,32,32,32,7, + 10,10,9,1,253,122,132,132,132,120,128,124,130,130,124,7, + 10,10,9,1,0,128,128,128,188,194,130,130,130,130,130,5, + 10,10,9,2,0,96,0,0,224,32,32,32,32,32,248,6, + 13,13,9,1,253,12,0,0,28,4,4,4,4,4,132,132, + 132,120,7,10,10,9,1,0,128,128,128,130,140,176,192,176, + 140,130,5,10,10,9,2,0,224,32,32,32,32,32,32,32, + 32,248,7,7,7,9,1,0,236,146,146,146,146,146,130,7, + 7,7,9,1,0,188,194,130,130,130,130,130,7,7,7,9, + 1,0,124,130,130,130,130,130,124,7,10,10,9,1,253,188, + 194,130,130,130,194,188,128,128,128,7,10,10,9,1,253,122, + 134,130,130,130,134,122,2,2,2,7,7,7,9,1,0,156, + 98,66,64,64,64,64,7,7,7,9,1,0,124,130,128,124, + 2,130,124,7,9,9,9,1,0,32,32,252,32,32,32,32, + 34,28,7,7,7,9,1,0,132,132,132,132,132,132,122,7, + 7,7,9,1,0,130,130,68,68,40,40,16,7,7,7,9, + 1,0,130,130,146,146,146,170,68,7,7,7,9,1,0,130, + 68,40,16,40,68,130,6,10,10,9,1,253,132,132,132,132, + 132,140,116,4,132,120,7,7,7,9,1,0,254,4,8,16, + 32,64,254,5,12,12,9,3,255,56,64,64,64,32,192,192, + 32,64,64,64,56,1,12,12,9,4,255,128,128,128,128,128, + 128,128,128,128,128,128,128,5,12,12,9,1,255,224,16,16, + 16,32,24,24,32,16,16,16,224,7,3,3,9,1,7,98, + 146,140,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--18-120-100-100-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 4, '1' Height: 10 + Calculated Max Values w= 9 h=18 x= 8 y=12 dx= 9 dy= 0 ascent=14 len=36 + Font Bounding box w= 9 h=18 x= 0 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent = 4 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =14 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x18_67_75[3936] U8G_SECTION(".progmem.u8g_font_9x18_67_75") = { + 0,9,18,0,252,4,1,255,4,34,32,255,0,14,252,10, + 0,8,7,7,9,0,1,72,36,18,255,18,36,72,7,10, + 10,9,1,0,16,16,16,146,84,56,146,84,56,16,7,7, + 7,9,1,1,16,34,68,248,68,34,16,7,7,7,9,1, + 1,16,136,68,62,68,136,16,7,7,7,9,1,1,16,34, + 66,254,66,34,16,7,10,10,9,1,0,16,56,84,146,16, + 16,16,16,16,124,7,7,7,9,1,1,16,136,132,254,132, + 136,16,7,10,10,9,1,0,124,16,16,16,16,16,146,84, + 56,16,7,10,10,9,1,0,16,56,84,146,16,146,84,56, + 16,254,8,7,7,9,0,1,16,34,65,254,64,32,16,8, + 7,7,9,0,1,8,68,130,127,2,4,8,8,7,7,9, + 0,1,16,34,69,254,68,36,16,8,7,7,9,0,1,8, + 68,162,127,34,36,8,9,5,10,9,0,2,34,0,73,0, + 247,128,65,0,34,0,9,5,10,9,0,2,34,0,73,0, + 255,128,73,0,34,0,5,10,10,9,2,0,32,64,72,184, + 200,16,16,160,120,32,6,10,10,9,1,0,32,64,252,68, + 36,4,4,4,4,4,7,10,10,9,1,0,8,4,254,132, + 136,128,128,128,128,128,6,10,10,9,1,0,4,4,4,4, + 4,36,68,252,64,32,7,10,10,9,1,0,128,128,128,128, + 128,136,132,254,4,8,7,8,8,9,1,0,248,8,8,8, + 8,42,28,8,7,8,8,9,1,1,2,2,2,34,66,254, + 64,32,9,7,14,9,0,2,14,0,17,0,32,128,32,128, + 168,128,112,0,32,0,9,7,14,9,0,2,56,0,68,0, + 130,0,130,0,138,128,7,0,2,0,7,10,10,9,1,0, + 254,64,112,96,80,8,8,4,2,2,7,9,9,9,1,0, + 144,160,254,160,146,10,254,10,18,9,7,14,9,0,1,50, + 0,71,0,138,128,130,0,130,0,68,0,56,0,9,7,14, + 9,0,1,38,0,113,0,168,128,32,128,32,128,17,0,14, + 0,7,4,4,9,1,3,16,32,64,254,7,4,4,9,1, + 0,254,64,32,16,4,10,10,9,4,0,128,192,160,144,128, + 128,128,128,128,128,4,10,10,9,1,0,16,48,80,144,16, + 16,16,16,16,16,7,4,4,9,1,3,16,8,4,254,7, + 4,4,9,1,0,254,4,8,16,4,10,10,9,4,0,128, + 128,128,128,128,128,144,160,192,128,4,10,10,9,1,0,16, + 16,16,16,16,16,144,80,48,16,7,9,9,9,1,0,8, + 4,254,4,40,64,254,64,32,9,10,20,9,0,0,34,0, + 114,0,170,0,34,0,34,0,34,0,34,0,42,128,39,0, + 34,0,7,9,9,9,1,0,32,64,254,64,40,4,254,4, + 8,7,10,10,9,1,0,32,64,254,64,32,32,64,254,64, + 32,9,10,20,9,0,0,34,0,119,0,170,128,34,0,34, + 0,34,0,34,0,34,0,34,0,34,0,7,10,10,9,1, + 0,8,4,254,4,8,8,4,254,4,8,9,10,20,9,0, + 0,34,0,34,0,34,0,34,0,34,0,34,0,34,0,170, + 128,119,0,34,0,7,7,7,9,1,1,32,64,254,0,254, + 4,8,7,7,7,9,1,1,8,4,254,0,254,64,32,9, + 7,14,9,0,1,16,0,33,0,127,128,130,0,127,128,36, + 0,16,0,9,7,14,9,0,1,20,0,34,0,127,0,136, + 128,127,0,34,0,20,0,9,7,14,9,0,1,4,0,18, + 0,255,0,32,128,255,0,66,0,4,0,9,7,14,9,0, + 1,16,0,32,0,127,128,128,0,127,128,32,0,16,0,7, + 10,10,9,1,0,16,40,108,170,40,40,40,40,40,40,9, + 7,14,9,0,1,4,0,2,0,255,0,0,128,255,0,2, + 0,4,0,7,10,10,9,1,0,40,40,40,40,40,40,170, + 108,40,16,9,7,14,9,0,1,20,0,34,0,127,0,128, + 128,127,0,34,0,20,0,7,10,10,9,1,0,16,40,108, + 170,40,40,170,108,40,16,7,7,7,9,1,1,252,144,136, + 196,162,144,8,7,7,7,9,1,1,126,18,34,70,138,18, + 32,7,7,7,9,1,1,32,18,138,70,34,18,126,7,7, + 7,9,1,1,8,144,162,196,136,144,252,9,9,18,9,0, + 0,8,0,16,0,63,128,64,0,255,128,64,0,63,128,16, + 0,8,0,9,9,18,9,0,0,8,0,4,0,254,0,1, + 0,255,128,1,0,254,0,4,0,8,0,8,7,7,9,0, + 1,16,32,72,245,66,32,16,8,7,7,9,0,1,8,4, + 18,175,66,4,8,7,10,10,9,1,0,16,56,84,146,16, + 124,16,124,16,16,7,10,10,9,1,0,16,16,124,16,124, + 16,146,84,56,16,7,7,7,9,1,1,16,32,64,182,64, + 32,16,7,10,10,9,1,0,16,40,84,146,0,16,16,0, + 16,16,7,7,7,9,1,1,16,8,4,218,4,8,16,7, + 10,10,9,1,0,16,16,0,16,16,0,146,84,40,16,7, + 5,5,9,1,2,144,160,254,160,144,7,5,5,9,1,2, + 18,10,254,10,18,9,7,14,9,0,1,16,0,48,0,95, + 128,128,128,95,128,48,0,16,0,7,10,10,9,1,0,16, + 40,68,238,40,40,40,40,40,56,9,7,14,9,0,1,4, + 0,6,0,253,0,128,128,253,0,6,0,4,0,7,10,10, + 9,1,0,56,40,40,40,40,40,238,68,40,16,7,11,11, + 9,1,0,16,40,68,238,40,40,56,0,56,40,56,7,11, + 11,9,1,255,16,40,68,238,40,40,40,40,108,68,124,7, + 11,11,9,1,255,16,40,68,254,40,40,40,40,108,68,124, + 7,11,11,9,1,255,16,40,68,254,56,56,56,56,124,68, + 124,7,10,10,9,1,0,16,40,68,238,68,238,40,40,40, + 56,7,11,11,9,1,255,16,40,68,238,68,238,40,40,108, + 68,124,9,7,14,9,0,1,132,0,134,0,253,0,128,128, + 253,0,134,0,132,0,7,7,7,9,1,0,252,128,184,176, + 168,132,2,7,7,7,9,1,0,128,66,42,26,58,2,126, + 7,11,11,9,1,255,16,40,68,238,40,40,40,238,68,40, + 16,9,7,14,9,0,1,4,0,50,0,73,0,255,128,73, + 0,50,0,4,0,9,10,20,9,0,0,34,0,39,0,42, + 128,34,0,34,0,34,0,34,0,170,0,114,0,34,0,7, + 13,13,9,1,254,8,4,254,4,8,4,254,4,8,4,254, + 4,8,8,5,5,9,0,2,36,68,255,68,36,8,5,5, + 9,0,2,36,34,255,34,36,9,5,10,9,0,2,42,0, + 73,0,255,128,73,0,42,0,8,5,5,9,0,2,42,74, + 255,74,42,8,5,5,9,0,2,84,82,255,82,84,9,5, + 10,9,0,2,85,0,148,128,255,128,148,128,85,0,7,7, + 7,9,1,1,16,48,80,158,80,48,16,7,7,7,9,1, + 1,16,24,20,242,20,24,16,8,5,5,9,0,2,36,102, + 189,102,36,9,9,18,9,0,5,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,9,2,4,9,0, + 252,255,128,255,128,9,4,8,9,0,252,255,128,255,128,255, + 128,255,128,9,7,14,9,0,252,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,9,9,18,9,0,252,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,255,128,255,128,9, + 11,22,9,0,252,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,9,14,28,9,0, + 252,255,128,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,255,128,9,16,32, + 9,0,252,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,9,18,36,9,0,252,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,255,128,255,128,255,128,255,128,255,128,8,18,18, + 9,0,252,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,7,18,18,9,0,252,254,254,254,254,254, + 254,254,254,254,254,254,254,254,254,254,254,254,254,6,18,18, + 9,0,252,252,252,252,252,252,252,252,252,252,252,252,252,252, + 252,252,252,252,252,5,18,18,9,0,252,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,3,18,18, + 9,0,252,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,2,18,18,9,0,252,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,1,18,18, + 9,0,252,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,4,18,18,9,5,252,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,9,17,34, + 9,0,253,85,0,0,0,170,128,0,0,85,0,0,0,170, + 128,0,0,85,0,0,0,170,128,0,0,85,0,0,0,170, + 128,0,0,85,0,9,18,36,9,0,252,170,128,85,0,170, + 128,85,0,170,128,85,0,170,128,85,0,170,128,85,0,170, + 128,85,0,170,128,85,0,170,128,85,0,170,128,85,0,9, + 18,36,9,0,252,255,128,170,128,255,128,85,0,255,128,170, + 128,255,128,85,0,255,128,170,128,255,128,85,0,255,128,170, + 128,255,128,85,0,255,128,170,128,9,2,4,9,0,12,255, + 128,255,128,1,18,18,9,8,252,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,5,9,9,9,0, + 252,248,248,248,248,248,248,248,248,248,4,9,9,9,5,252, + 240,240,240,240,240,240,240,240,240,5,9,9,9,0,5,248, + 248,248,248,248,248,248,248,248,9,18,36,9,0,252,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 255,128,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 255,128,9,18,36,9,0,252,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,9,18,36,9, + 0,252,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 255,128,255,128,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,9,18,36,9,0,252,255,128,255,128, + 255,128,255,128,255,128,255,128,255,128,255,128,255,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 4,9,9,9,5,5,240,240,240,240,240,240,240,240,240,9, + 18,36,9,0,252,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,9,18,36,9,0,252,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,255,128,255,128,255,128,255,128,255,128,255,128,255,128,255, + 128,255,128,7,7,7,9,1,1,254,254,254,254,254,254,254, + 7,7,7,9,1,1,254,130,130,130,130,130,254,7,7,7, + 9,1,1,124,130,130,130,130,130,124,7,7,7,9,1,1, + 254,130,186,186,186,130,254,7,7,7,9,1,1,254,130,254, + 130,254,130,254,7,7,7,9,1,1,254,170,170,170,170,170, + 254,7,7,7,9,1,1,254,170,254,170,254,170,254,7,7, + 7,9,1,1,254,146,138,198,162,146,254,7,7,7,9,1, + 1,254,146,162,198,138,146,254,7,7,7,9,1,1,254,214, + 138,214,162,214,254,3,3,3,9,3,3,224,224,224,3,3, + 3,9,3,3,224,160,224,9,5,10,9,0,2,255,128,255, + 128,255,128,255,128,255,128,9,5,10,9,0,2,255,128,128, + 128,128,128,128,128,255,128,5,9,9,9,2,0,248,248,248, + 248,248,248,248,248,248,5,9,9,9,2,0,248,136,136,136, + 136,136,136,136,248,9,5,10,9,0,2,127,128,127,128,255, + 128,255,0,255,0,9,5,10,9,0,2,127,128,64,128,128, + 128,129,0,255,0,9,10,20,9,0,0,8,0,8,0,28, + 0,28,0,62,0,62,0,127,0,127,0,255,128,255,128,9, + 10,20,9,0,0,8,0,8,0,20,0,20,0,34,0,34, + 0,65,0,65,0,128,128,255,128,7,7,7,9,1,1,16, + 16,56,56,124,124,254,7,7,7,9,1,1,16,16,40,40, + 68,68,254,9,9,18,9,0,0,192,0,240,0,252,0,255, + 0,255,128,255,0,252,0,240,0,192,0,9,9,18,9,0, + 0,192,0,176,0,140,0,131,0,128,128,131,0,140,0,176, + 0,192,0,7,7,7,9,1,1,128,224,248,254,248,224,128, + 7,7,7,9,1,1,128,224,152,134,152,224,128,9,5,10, + 9,0,2,224,0,252,0,255,128,252,0,224,0,9,5,10, + 9,0,2,224,0,156,0,131,128,156,0,224,0,9,10,20, + 9,0,0,255,128,255,128,127,0,127,0,62,0,62,0,28, + 0,28,0,8,0,8,0,9,10,20,9,0,0,255,128,128, + 128,65,0,65,0,34,0,34,0,20,0,20,0,8,0,8, + 0,7,7,7,9,1,1,254,124,124,56,56,16,16,7,7, + 7,9,1,1,254,68,68,40,40,16,16,9,9,18,9,0, + 0,1,128,7,128,31,128,127,128,255,128,127,128,31,128,7, + 128,1,128,9,9,18,9,0,0,1,128,6,128,24,128,96, + 128,128,128,96,128,24,128,6,128,1,128,7,7,7,9,1, + 1,2,14,62,254,62,14,2,7,7,7,9,1,1,2,14, + 50,194,50,14,2,9,5,10,9,0,2,3,128,31,128,255, + 128,31,128,3,128,9,5,10,9,0,2,3,128,28,128,224, + 128,28,128,3,128,9,9,18,9,0,0,8,0,28,0,62, + 0,127,0,255,128,127,0,62,0,28,0,8,0,9,9,18, + 9,0,0,8,0,20,0,34,0,65,0,128,128,65,0,34, + 0,20,0,8,0,9,9,18,9,0,0,8,0,20,0,34, + 0,73,0,156,128,73,0,34,0,20,0,8,0,7,7,7, + 9,1,1,56,68,146,186,146,68,56,5,9,9,9,2,0, + 32,32,80,80,136,80,80,32,32,7,7,7,9,1,1,56, + 68,130,130,130,68,56,7,7,7,9,1,1,16,68,0,130, + 0,68,16,7,7,7,9,1,1,56,108,170,170,170,108,56, + 7,7,7,9,1,1,56,68,146,170,146,68,56,7,7,7, + 9,1,1,56,124,254,254,254,124,56,7,7,7,9,1,1, + 56,116,242,242,242,116,56,7,7,7,9,1,1,56,92,158, + 158,158,92,56,7,7,7,9,1,1,56,68,130,254,254,124, + 56,7,7,7,9,1,1,56,124,254,254,130,68,56,7,7, + 7,9,1,1,56,92,158,158,130,68,56,7,7,7,9,1, + 1,56,92,158,254,254,124,56,4,7,7,9,1,1,48,112, + 240,240,240,112,48,4,7,7,9,4,1,192,224,240,240,240, + 224,192,9,18,36,9,0,252,255,128,255,128,255,128,255,128, + 255,128,255,128,255,128,227,128,193,128,193,128,193,128,227,128, + 255,128,255,128,255,128,255,128,255,128,255,128,9,18,36,9, + 0,252,255,128,255,128,255,128,255,128,255,128,255,128,227,128, + 221,128,190,128,190,128,190,128,221,128,227,128,255,128,255,128, + 255,128,255,128,255,128,9,10,20,9,0,4,255,128,255,128, + 255,128,255,128,255,128,255,128,227,128,221,128,190,128,190,128, + 9,9,18,9,0,252,190,128,190,128,221,128,227,128,255,128, + 255,128,255,128,255,128,255,128,4,4,4,9,1,4,48,64, + 128,128,4,4,4,9,4,4,192,32,16,16,4,4,4,9, + 4,1,16,16,32,192,4,4,4,9,1,1,128,128,64,48, + 7,4,4,9,1,4,56,68,130,130,7,4,4,9,1,1, + 130,130,68,56,7,7,7,9,1,1,2,6,14,30,62,126, + 254,7,7,7,9,1,1,128,192,224,240,248,252,254,7,7, + 7,9,1,1,254,252,248,240,224,192,128,7,7,7,9,1, + 1,254,126,62,30,14,6,2,5,5,5,9,2,2,112,136, + 136,136,112,7,7,7,9,1,1,254,242,242,242,242,242,254, + 7,7,7,9,1,1,254,158,158,158,158,158,254,7,7,7, + 9,1,1,254,254,250,242,226,194,254,7,7,7,9,1,1, + 254,134,142,158,190,254,254,7,7,7,9,1,1,254,146,146, + 146,146,146,254,9,10,20,9,0,0,8,0,8,0,20,0, + 20,0,34,0,42,0,93,0,73,0,128,128,255,128,9,10, + 20,9,0,0,8,0,8,0,28,0,28,0,58,0,58,0, + 121,0,121,0,248,128,255,128,9,10,20,9,0,0,8,0, + 8,0,28,0,28,0,46,0,46,0,79,0,79,0,143,128, + 255,128,9,9,18,9,0,0,62,0,65,0,128,128,128,128, + 128,128,128,128,128,128,65,0,62,0,7,7,7,9,1,1, + 254,146,146,242,130,130,254,7,7,7,9,1,1,254,130,130, + 242,146,146,254,7,7,7,9,1,1,254,130,130,158,146,146, + 254,7,7,7,9,1,1,254,146,146,158,130,130,254,7,7, + 7,9,1,1,124,146,146,242,130,130,124,7,7,7,9,1, + 1,124,130,130,242,146,146,124,7,7,7,9,1,1,124,130, + 130,158,146,146,124,7,7,7,9,1,1,124,146,146,158,130, + 130,124,6,6,6,9,1,1,252,136,144,160,192,128,6,6, + 6,9,1,1,252,68,36,20,12,4,6,6,6,9,1,1, + 128,192,160,144,136,252,6,6,6,9,1,1,252,132,132,132, + 132,252,6,6,6,9,1,1,252,252,252,252,252,252,5,5, + 5,9,2,1,248,136,136,136,248,5,5,5,9,2,1,248, + 248,248,248,248,6,6,6,9,1,1,4,12,20,36,68,252 + }; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--18-120-100-100-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 9, '1' Height: 5 + Calculated Max Values w= 9 h=10 x= 3 y= 3 dx= 9 dy= 0 ascent=10 len=20 + Font Bounding box w= 9 h=18 x= 0 y=-4 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent =10 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x18_75r[792] U8G_SECTION(".progmem.u8g_font_9x18_75r") = { + 0,9,18,0,252,9,2,33,0,0,32,79,0,10,0,9, + 0,7,7,7,9,1,1,254,254,254,254,254,254,254,7,7, + 7,9,1,1,254,130,130,130,130,130,254,7,7,7,9,1, + 1,124,130,130,130,130,130,124,7,7,7,9,1,1,254,130, + 186,186,186,130,254,7,7,7,9,1,1,254,130,254,130,254, + 130,254,7,7,7,9,1,1,254,170,170,170,170,170,254,7, + 7,7,9,1,1,254,170,254,170,254,170,254,7,7,7,9, + 1,1,254,146,138,198,162,146,254,7,7,7,9,1,1,254, + 146,162,198,138,146,254,7,7,7,9,1,1,254,214,138,214, + 162,214,254,3,3,3,9,3,3,224,224,224,3,3,3,9, + 3,3,224,160,224,9,5,10,9,0,2,255,128,255,128,255, + 128,255,128,255,128,9,5,10,9,0,2,255,128,128,128,128, + 128,128,128,255,128,5,9,9,9,2,0,248,248,248,248,248, + 248,248,248,248,5,9,9,9,2,0,248,136,136,136,136,136, + 136,136,248,9,5,10,9,0,2,127,128,127,128,255,128,255, + 0,255,0,9,5,10,9,0,2,127,128,64,128,128,128,129, + 0,255,0,9,10,20,9,0,0,8,0,8,0,28,0,28, + 0,62,0,62,0,127,0,127,0,255,128,255,128,9,10,20, + 9,0,0,8,0,8,0,20,0,20,0,34,0,34,0,65, + 0,65,0,128,128,255,128,7,7,7,9,1,1,16,16,56, + 56,124,124,254,7,7,7,9,1,1,16,16,40,40,68,68, + 254,9,9,18,9,0,0,192,0,240,0,252,0,255,0,255, + 128,255,0,252,0,240,0,192,0,9,9,18,9,0,0,192, + 0,176,0,140,0,131,0,128,128,131,0,140,0,176,0,192, + 0,7,7,7,9,1,1,128,224,248,254,248,224,128,7,7, + 7,9,1,1,128,224,152,134,152,224,128,9,5,10,9,0, + 2,224,0,252,0,255,128,252,0,224,0,9,5,10,9,0, + 2,224,0,156,0,131,128,156,0,224,0,9,10,20,9,0, + 0,255,128,255,128,127,0,127,0,62,0,62,0,28,0,28, + 0,8,0,8,0,9,10,20,9,0,0,255,128,128,128,65, + 0,65,0,34,0,34,0,20,0,20,0,8,0,8,0,7, + 7,7,9,1,1,254,124,124,56,56,16,16,7,7,7,9, + 1,1,254,68,68,40,40,16,16,9,9,18,9,0,0,1, + 128,7,128,31,128,127,128,255,128,127,128,31,128,7,128,1, + 128,9,9,18,9,0,0,1,128,6,128,24,128,96,128,128, + 128,96,128,24,128,6,128,1,128,7,7,7,9,1,1,2, + 14,62,254,62,14,2,7,7,7,9,1,1,2,14,50,194, + 50,14,2,9,5,10,9,0,2,3,128,31,128,255,128,31, + 128,3,128,9,5,10,9,0,2,3,128,28,128,224,128,28, + 128,3,128,9,9,18,9,0,0,8,0,28,0,62,0,127, + 0,255,128,127,0,62,0,28,0,8,0,9,9,18,9,0, + 0,8,0,20,0,34,0,65,0,128,128,65,0,34,0,20, + 0,8,0,9,9,18,9,0,0,8,0,20,0,34,0,73, + 0,156,128,73,0,34,0,20,0,8,0,7,7,7,9,1, + 1,56,68,146,186,146,68,56,5,9,9,9,2,0,32,32, + 80,80,136,80,80,32,32,7,7,7,9,1,1,56,68,130, + 130,130,68,56,7,7,7,9,1,1,16,68,0,130,0,68, + 16,7,7,7,9,1,1,56,108,170,170,170,108,56,7,7, + 7,9,1,1,56,68,146,170,146,68,56,7,7,7,9,1, + 1,56,124,254,254,254,124,56}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--18-120-100-100-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 0, '1' Height: 9 + Calculated Max Values w= 9 h=12 x= 4 y= 5 dx= 9 dy= 0 ascent=12 len=24 + Font Bounding box w= 9 h=18 x= 0 y=-4 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =12 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x18_78_79[3336] U8G_SECTION(".progmem.u8g_font_9x18_78_79") = { + 0,9,18,0,252,9,2,231,4,175,32,255,0,12,255,11, + 0,9,9,18,9,0,0,62,0,28,0,136,128,201,128,247, + 128,201,128,136,128,28,0,62,0,9,9,18,9,0,0,8, + 0,20,0,255,128,162,128,65,0,162,128,255,128,20,0,8, + 0,9,9,18,9,0,0,8,0,28,0,8,0,73,0,255, + 128,73,0,8,0,28,0,8,0,9,9,18,9,0,0,8, + 0,28,0,28,0,107,0,255,128,107,0,28,0,28,0,8, + 0,9,9,18,9,0,0,8,0,28,0,28,0,107,0,255, + 128,107,0,28,0,28,0,8,0,9,9,18,9,0,0,8, + 0,28,0,28,0,107,0,255,128,107,0,28,0,28,0,8, + 0,9,9,18,9,0,0,8,0,8,0,28,0,62,0,255, + 128,62,0,28,0,8,0,8,0,9,9,18,9,0,0,8, + 0,20,0,20,0,99,0,128,128,99,0,20,0,20,0,8, + 0,255,9,9,18,9,0,0,8,0,8,0,20,0,247,128, + 65,0,34,0,73,0,85,0,99,0,9,10,20,9,0,0, + 127,0,247,128,247,128,227,128,0,0,128,128,193,128,201,128, + 156,128,127,0,9,9,18,9,0,0,8,0,8,0,28,0, + 227,128,99,0,34,0,62,0,119,0,65,0,9,9,18,9, + 0,0,8,0,8,0,20,0,235,128,93,0,42,0,34,0, + 127,0,65,0,9,9,18,9,0,0,8,0,8,0,20,0, + 235,128,93,0,42,0,34,0,127,0,65,0,9,9,18,9, + 0,0,8,0,8,0,20,0,235,128,93,0,42,0,34,0, + 127,0,65,0,9,9,18,9,0,0,8,0,8,0,20,0, + 247,128,73,0,54,0,42,0,127,0,65,0,8,7,7,9, + 0,2,24,24,44,199,46,60,102,8,9,9,9,0,0,24, + 219,255,126,24,126,255,219,24,8,9,9,9,0,0,24,219, + 255,102,36,102,255,219,24,9,9,18,9,0,0,8,0,73, + 0,42,0,28,0,255,128,28,0,42,0,73,0,8,0,9, + 9,18,9,0,0,8,0,73,0,62,0,62,0,255,128,62, + 0,62,0,73,0,8,0,9,9,18,9,0,0,8,0,73, + 0,54,0,62,0,213,128,62,0,54,0,73,0,8,0,9, + 9,18,9,0,0,8,0,136,128,107,0,62,0,28,0,62, + 0,107,0,136,128,8,0,9,9,18,9,0,0,34,0,20, + 0,148,128,127,0,28,0,127,0,148,128,20,0,34,0,9, + 9,18,9,0,0,34,0,54,0,255,128,127,0,62,0,127, + 0,255,128,54,0,34,0,9,9,18,9,0,0,42,0,42, + 0,221,128,62,0,255,128,62,0,221,128,42,0,42,0,9, + 9,18,9,0,0,42,0,42,0,221,128,42,0,255,128,42, + 0,221,128,42,0,42,0,9,11,22,9,0,0,28,0,28, + 0,201,128,201,128,34,0,8,0,34,0,201,128,201,128,28, + 0,28,0,9,11,22,9,0,0,28,0,28,0,201,128,201, + 128,62,0,20,0,62,0,201,128,201,128,28,0,28,0,9, + 11,22,9,0,0,28,0,28,0,201,128,201,128,62,0,28, + 0,62,0,201,128,201,128,28,0,28,0,9,11,22,9,0, + 0,28,0,20,0,201,128,201,128,62,0,20,0,127,0,170, + 128,201,128,28,0,28,0,8,9,9,9,0,0,24,24,219, + 255,36,36,126,231,66,255,255,255,8,9,9,9,0,0,24, + 203,189,110,24,118,189,211,24,9,12,24,9,0,0,8,0, + 42,0,93,0,170,128,107,0,221,128,221,128,107,0,170,128, + 93,0,42,0,8,0,9,12,24,9,0,0,8,0,42,0, + 93,0,170,128,107,0,221,128,221,128,107,0,170,128,93,0, + 42,0,8,0,9,12,24,9,0,0,8,0,42,0,93,0, + 170,128,107,0,221,128,221,128,107,0,170,128,93,0,42,0, + 8,0,9,9,18,9,0,0,8,0,73,0,42,0,20,0, + 235,128,20,0,42,0,73,0,8,0,9,9,18,9,0,0, + 8,0,73,0,42,0,20,0,235,128,20,0,42,0,73,0, + 8,0,8,9,9,9,0,0,24,219,203,60,24,60,211,219, + 24,9,9,18,9,0,0,8,0,73,0,42,0,0,0,235, + 128,0,0,42,0,73,0,8,0,9,9,18,9,0,0,8, + 0,73,0,42,0,28,0,255,128,28,0,42,0,73,0,8, + 0,255,9,8,16,9,0,1,62,0,67,0,129,128,129,128, + 129,128,129,128,67,0,62,0,255,9,9,18,9,0,0,254, + 0,130,0,131,128,131,128,131,128,131,128,255,128,63,128,63, + 128,9,9,18,9,0,0,63,128,63,128,255,128,131,128,131, + 128,131,128,131,128,130,0,254,0,8,8,8,9,0,0,254, + 131,131,131,131,131,255,127,8,8,8,9,0,0,127,255,131, + 131,131,131,131,254,255,255,255,9,9,18,9,0,0,8,0, + 28,0,8,0,65,0,227,128,65,0,8,0,28,0,8,0, + 255,1,10,10,9,4,0,128,128,128,128,128,128,128,128,128, + 128,2,10,10,9,3,0,192,192,192,192,192,192,192,192,192, + 192,3,10,10,9,3,0,224,224,224,224,224,224,224,224,224, + 224,4,6,6,9,3,5,112,128,224,240,240,96,4,6,6, + 9,3,5,96,240,240,112,16,224,9,6,12,9,0,5,115, + 128,132,0,231,0,247,128,247,128,99,0,9,6,12,9,0, + 5,99,0,247,128,247,128,115,128,16,128,231,0,255,255,7, + 10,10,9,1,0,4,126,228,228,228,124,4,100,104,48,5, + 10,10,9,2,0,112,248,248,112,32,32,0,32,112,32,5, + 10,10,9,2,0,80,248,248,112,32,32,0,32,112,32,9, + 9,18,9,0,0,99,0,247,128,255,128,255,128,127,0,62, + 0,28,0,8,0,8,0,9,9,18,9,0,0,112,0,248, + 0,252,0,126,0,63,128,126,0,252,0,248,0,112,0,9, + 12,24,9,0,0,8,0,116,128,149,0,14,0,4,0,107, + 0,247,128,255,128,127,0,62,0,28,0,8,0,9,12,24, + 9,0,0,16,0,41,0,82,0,156,0,32,0,88,0,124, + 0,60,0,254,0,254,128,255,0,126,0,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,9,9,18,9,0,0,127, + 0,247,128,231,128,247,128,247,128,247,128,247,128,227,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,253,128,251, + 128,247,128,237,128,193,128,127,0,9,9,18,9,0,0,127, + 0,227,128,221,128,253,128,243,128,253,128,221,128,227,128,127, + 0,9,9,18,9,0,0,127,0,243,128,235,128,219,128,193, + 128,251,128,251,128,251,128,127,0,9,9,18,9,0,0,127, + 0,193,128,223,128,223,128,195,128,253,128,253,128,195,128,127, + 0,9,9,18,9,0,0,127,0,225,128,223,128,223,128,195, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,193,128,253,128,251,128,251,128,247,128,247,128,247,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,221,128,227, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,225,128,221,128,221,128,225,128,253,128,253,128,227,128,127, + 0,9,9,18,9,0,0,127,0,219,128,213,128,213,128,213, + 128,213,128,213,128,219,128,127,0,9,9,18,9,0,0,127, + 0,128,128,136,128,152,128,136,128,136,128,136,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,152,128,132,128,132, + 128,136,128,156,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,152,128,132,128,136,128,132,128,152,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,136,128,152,128,168, + 128,188,128,136,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,156,128,144,128,152,128,132,128,152,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,140,128,144,128,152, + 128,148,128,136,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,156,128,132,128,136,128,136,128,136,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,136,128,148,128,136, + 128,148,128,136,128,128,128,127,0,9,9,18,9,0,0,127, + 0,128,128,136,128,148,128,140,128,132,128,136,128,128,128,127, + 0,9,9,18,9,0,0,127,0,128,128,164,128,170,128,170, + 128,170,128,164,128,128,128,127,0,9,9,18,9,0,0,127, + 0,247,128,231,128,247,128,247,128,247,128,247,128,247,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,253,128,251, + 128,247,128,239,128,193,128,127,0,9,9,18,9,0,0,127, + 0,227,128,221,128,253,128,243,128,253,128,221,128,227,128,127, + 0,9,9,18,9,0,0,127,0,243,128,235,128,219,128,193, + 128,251,128,251,128,251,128,127,0,9,9,18,9,0,0,127, + 0,193,128,223,128,223,128,195,128,253,128,253,128,195,128,127, + 0,9,9,18,9,0,0,127,0,225,128,223,128,223,128,195, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,193,128,253,128,251,128,251,128,247,128,247,128,247,128,127, + 0,9,9,18,9,0,0,127,0,227,128,221,128,221,128,227, + 128,221,128,221,128,227,128,127,0,9,9,18,9,0,0,127, + 0,225,128,221,128,221,128,225,128,253,128,253,128,227,128,127, + 0,9,9,18,9,0,0,127,0,219,128,213,128,213,128,213, + 128,213,128,213,128,219,128,127,0,7,8,8,9,1,1,48, + 24,12,254,254,12,24,48,255,255,255,7,5,5,9,1,1, + 224,250,62,14,30,8,7,7,9,1,1,8,12,230,255,230, + 12,8,7,5,5,9,1,1,30,14,62,250,224,9,7,14, + 9,0,0,48,0,28,0,31,0,255,128,31,0,28,0,48, + 0,9,9,18,9,0,0,28,0,30,0,15,0,255,128,255, + 128,255,128,15,0,30,0,28,0,9,5,10,9,0,1,2, + 0,3,0,255,128,3,0,2,0,9,7,14,9,0,0,4, + 0,6,0,255,0,255,128,255,0,6,0,4,0,9,5,10, + 9,0,1,2,0,183,0,183,128,183,0,2,0,9,5,10, + 9,0,1,2,0,171,0,171,128,171,0,2,0,9,5,10, + 9,0,1,2,0,255,0,255,128,255,0,2,0,9,8,16, + 9,0,1,128,0,112,0,78,0,33,128,31,128,62,0,112, + 0,128,0,9,8,16,9,0,1,128,0,112,0,62,0,31, + 128,33,128,78,0,112,0,128,0,9,8,16,9,0,1,128, + 0,112,0,62,0,31,128,31,128,62,0,112,0,128,0,9, + 7,14,9,0,0,132,0,134,0,255,0,255,128,127,0,6, + 0,4,0,9,7,14,9,0,0,4,0,6,0,127,0,255, + 128,255,0,134,0,132,0,6,9,9,9,2,0,16,16,248, + 248,252,248,248,16,16,8,9,9,9,0,1,4,4,254,254, + 255,254,254,4,4,9,9,18,9,0,0,24,0,28,0,22, + 0,243,0,129,128,243,0,22,0,28,0,24,0,9,9,18, + 9,0,0,24,0,28,0,26,0,249,0,192,128,249,0,26, + 0,28,0,24,0,9,9,18,9,0,0,0,128,1,128,62, + 128,64,128,129,128,243,0,238,0,60,0,56,0,9,9,18, + 9,0,0,56,0,60,0,238,0,243,0,129,128,64,128,62, + 128,1,128,0,128,8,9,9,9,0,1,16,24,20,242,129, + 243,118,28,24,8,9,9,9,0,1,24,28,118,243,129,242, + 20,24,16,9,7,14,9,0,2,4,0,250,0,129,0,64, + 128,129,128,251,0,6,0,255,9,7,14,9,0,2,6,0, + 251,0,129,128,64,128,129,0,250,0,4,0,9,9,18,9, + 0,1,28,0,127,0,251,128,1,128,0,128,1,128,251,128, + 127,0,28,0,9,5,10,9,0,3,210,0,43,0,127,128, + 43,0,210,0,9,9,18,9,0,0,16,0,56,0,92,0, + 236,0,116,0,60,0,2,128,1,128,3,128,9,5,10,9, + 0,2,242,0,123,0,7,128,123,0,242,0,9,9,18,9, + 0,0,3,128,1,128,2,128,60,0,116,0,236,0,92,0, + 56,0,16,0,9,9,18,9,0,0,16,0,24,0,28,0, + 252,0,124,0,60,0,2,128,1,128,3,128,9,5,10,9, + 0,2,242,0,123,0,127,128,123,0,242,0,9,9,18,9, + 0,0,3,128,1,128,2,128,60,0,124,0,252,0,28,0, + 24,0,16,0,9,7,14,9,0,1,3,0,3,0,113,0, + 255,128,113,0,3,0,3,0,9,7,14,9,0,1,2,0, + 115,0,121,0,255,128,121,0,115,0,2,0,9,5,10,9, + 0,2,242,0,123,0,63,128,123,0,242,0,9,7,14,9, + 0,1,226,0,242,0,123,0,63,128,123,0,242,0,226,0, + 9,7,14,9,0,1,20,0,10,0,253,0,0,128,253,0, + 10,0,20,0,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,8,11,11,9,0,255, + 193,99,99,85,85,73,85,85,99,99,193,8,11,11,9,1, + 255,131,198,198,170,170,146,170,170,198,198,131,9,11,22,9, + 0,255,193,128,99,0,99,0,85,0,85,0,73,0,85,0, + 85,0,99,0,99,0,193,128,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,5,12,12,9,2,255,248,160,160,160, + 160,160,160,160,160,160,160,248,5,12,12,9,2,255,248,40, + 40,40,40,40,40,40,40,40,40,248,3,10,10,9,3,0, + 32,32,64,64,128,128,64,64,32,32,3,10,10,9,3,0, + 128,128,64,64,32,32,64,64,128,128,6,10,10,9,1,0, + 36,36,72,72,144,144,72,72,36,36,6,10,10,9,2,0, + 144,144,72,72,36,36,72,72,144,144,255,255,255,255,9,11, + 22,9,0,0,8,0,20,0,54,0,85,0,213,128,85,0, + 85,0,85,0,85,0,85,0,85,0,9,11,22,9,0,255, + 85,0,85,0,85,0,85,0,85,0,85,0,213,128,85,0, + 54,0,20,0,8,0,8,8,8,9,0,0,28,34,169,113, + 33,1,34,28,8,8,8,9,0,0,56,68,149,142,132,128, + 68,56,9,5,10,9,0,2,114,0,169,0,255,128,169,0, + 114,0,9,5,10,9,0,2,32,0,64,0,255,128,64,0, + 32,0,9,5,10,9,0,2,2,0,1,0,255,128,1,0, + 2,0,9,5,10,9,0,2,34,0,65,0,255,128,65,0, + 34,0,9,7,14,9,0,1,16,0,32,0,127,128,128,0, + 127,128,32,0,16,0,9,7,14,9,0,1,4,0,2,0, + 255,0,0,128,255,0,2,0,4,0,9,7,14,9,0,1, + 20,0,34,0,127,0,128,128,127,0,34,0,20,0,9,5, + 10,9,0,2,32,128,64,128,255,128,64,128,32,128,9,5, + 10,9,0,2,130,0,129,0,255,128,129,0,130,0,9,7, + 14,9,0,1,16,128,32,128,127,128,128,128,127,128,32,128, + 16,128,9,7,14,9,0,1,132,0,130,0,255,0,128,128, + 255,0,130,0,132,0,9,6,12,9,0,1,2,0,1,0, + 85,128,170,128,1,0,2,0}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--18-120-100-100-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 9 h=14 x= 4 y=14 dx= 9 dy= 0 ascent=14 len=20 + Font Bounding box w= 9 h=18 x= 0 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x18B[3026] U8G_SECTION(".progmem.u8g_font_9x18B") = { + 0,9,18,0,252,10,1,242,3,225,32,255,253,14,252,11, + 253,0,0,0,9,0,14,2,11,11,9,3,0,192,192,192, + 192,192,192,192,0,0,192,192,5,4,4,9,2,7,216,216, + 216,216,7,10,10,9,1,0,108,108,108,254,108,108,254,108, + 108,108,8,11,11,9,0,255,24,126,219,216,120,60,30,27, + 219,126,24,8,10,10,9,0,0,115,222,222,108,24,24,54, + 123,123,206,8,10,10,9,0,0,112,216,216,216,112,115,222, + 204,222,115,2,4,4,9,3,7,192,192,192,192,4,12,12, + 9,2,255,48,96,96,192,192,192,192,192,192,96,96,48,4, + 12,12,9,2,255,192,96,96,48,48,48,48,48,48,96,96, + 192,8,7,7,9,0,1,24,219,126,60,126,219,24,8,7, + 7,9,0,1,24,24,24,255,24,24,24,3,4,4,9,3, + 254,224,224,96,192,7,1,1,9,1,4,254,3,2,2,9, + 3,0,224,224,8,10,10,9,0,0,3,6,6,12,24,24, + 48,96,96,192,7,10,10,9,1,0,56,108,198,198,198,198, + 198,198,108,56,8,10,10,9,0,0,24,56,120,216,24,24, + 24,24,24,255,7,10,10,9,1,0,56,108,198,6,6,12, + 24,48,96,254,7,10,10,9,1,0,254,6,12,24,56,12, + 6,6,204,120,7,10,10,9,1,0,12,28,60,108,204,204, + 254,12,12,12,7,10,10,9,1,0,254,192,192,192,248,12, + 6,6,204,120,7,10,10,9,1,0,60,96,192,192,248,204, + 198,198,108,56,7,10,10,9,1,0,254,6,12,12,24,24, + 48,48,48,48,7,10,10,9,1,0,56,108,198,108,56,108, + 198,198,108,56,7,10,10,9,1,0,56,108,198,198,110,62, + 6,6,12,120,3,7,7,9,3,0,224,224,0,0,0,224, + 224,3,9,9,9,3,254,224,224,0,0,0,224,224,96,192, + 6,9,9,9,1,0,12,24,48,96,192,96,48,24,12,7, + 4,4,9,1,2,254,0,0,254,6,9,9,9,1,0,192, + 96,48,24,12,24,48,96,192,7,10,10,9,1,0,56,108, + 198,6,12,24,48,48,0,48,9,10,20,9,0,0,62,0, + 99,0,205,128,213,128,213,128,213,128,213,128,207,0,96,0, + 62,0,7,10,10,9,1,0,16,56,56,56,108,124,108,198, + 198,198,7,10,10,9,1,0,252,198,198,198,252,198,198,198, + 198,252,7,10,10,9,1,0,60,102,192,192,192,192,192,192, + 102,60,7,10,10,9,1,0,248,204,198,198,198,198,198,198, + 204,248,7,10,10,9,1,0,254,192,192,192,248,192,192,192, + 192,254,7,10,10,9,1,0,254,192,192,192,248,192,192,192, + 192,192,7,10,10,9,1,0,56,108,198,192,192,206,198,198, + 108,56,7,10,10,9,1,0,198,198,198,198,254,198,198,198, + 198,198,6,10,10,9,1,0,252,48,48,48,48,48,48,48, + 48,252,7,10,10,9,1,0,30,12,12,12,12,12,12,204, + 204,120,7,10,10,9,1,0,198,204,216,240,224,240,216,204, + 198,198,7,10,10,9,1,0,192,192,192,192,192,192,192,192, + 192,254,7,10,10,9,1,0,198,238,254,214,198,198,198,198, + 198,198,7,10,10,9,1,0,198,198,230,246,222,206,198,198, + 198,198,7,10,10,9,1,0,124,198,198,198,198,198,198,198, + 198,124,7,10,10,9,1,0,248,204,198,198,204,248,192,192, + 192,192,8,11,11,9,1,255,56,108,198,198,198,198,198,222, + 108,62,3,7,10,10,9,1,0,252,198,198,198,198,252,216, + 204,198,198,7,10,10,9,1,0,124,198,192,192,124,6,6, + 6,198,124,6,10,10,9,1,0,252,48,48,48,48,48,48, + 48,48,48,7,10,10,9,1,0,198,198,198,198,198,198,198, + 198,108,56,7,10,10,9,1,0,198,198,198,108,108,108,56, + 56,56,16,7,10,10,9,1,0,198,198,198,198,214,214,214, + 254,238,68,7,10,10,9,1,0,198,198,108,56,16,16,56, + 108,198,198,8,10,10,9,0,0,195,195,102,60,24,24,24, + 24,24,24,7,10,10,9,1,0,254,6,6,12,24,48,96, + 192,192,254,5,12,12,9,2,255,248,192,192,192,192,192,192, + 192,192,192,192,248,8,10,10,9,0,0,192,96,96,48,24, + 24,12,6,6,3,4,12,12,9,2,255,240,48,48,48,48, + 48,48,48,48,48,48,240,8,4,4,9,0,6,24,60,102, + 195,8,1,1,9,0,255,255,4,3,3,9,2,10,192,96, + 48,7,7,7,9,1,0,124,6,6,126,198,198,126,7,10, + 10,9,1,0,192,192,192,252,198,198,198,198,198,252,7,7, + 7,9,1,0,124,198,192,192,192,198,124,7,10,10,9,1, + 0,6,6,6,126,198,198,198,198,198,126,7,7,7,9,1, + 0,124,198,198,254,192,198,124,6,10,10,9,1,0,56,108, + 108,96,96,240,96,96,96,96,7,10,10,9,1,253,126,204, + 204,204,120,192,124,198,198,124,7,10,10,9,1,0,192,192, + 192,252,198,198,198,198,198,198,6,10,10,9,1,0,48,48, + 0,240,48,48,48,48,48,252,5,13,13,9,2,253,24,24, + 0,56,24,24,24,24,24,24,216,216,112,7,10,10,9,1, + 0,192,192,192,204,216,240,240,216,204,198,6,10,10,9,1, + 0,240,48,48,48,48,48,48,48,48,252,8,7,7,9,0, + 0,254,219,219,219,219,219,195,7,7,7,9,1,0,220,230, + 198,198,198,198,198,7,7,7,9,1,0,56,108,198,198,198, + 108,56,7,10,10,9,1,253,248,204,198,198,198,204,248,192, + 192,192,7,10,10,9,1,253,62,102,198,198,198,102,62,6, + 6,6,7,7,7,9,1,0,220,118,96,96,96,96,96,7, + 7,7,9,1,0,124,198,192,124,6,198,124,7,9,9,9, + 1,0,48,48,252,48,48,48,48,54,28,7,7,7,9,1, + 0,198,198,198,198,198,198,126,7,7,7,9,1,0,198,198, + 108,108,56,56,16,8,7,7,9,0,0,195,195,219,219,219, + 255,102,7,7,7,9,1,0,198,108,56,16,56,108,198,7, + 10,10,9,1,253,198,198,108,108,108,56,56,48,176,96,6, + 7,7,9,1,0,252,12,24,48,96,192,252,6,11,11,9, + 1,0,60,96,96,96,96,192,96,96,96,96,60,2,12,12, + 9,3,255,192,192,192,192,192,192,192,192,192,192,192,192,6, + 11,11,9,1,0,224,48,48,48,48,28,48,48,48,48,224, + 8,3,3,9,0,7,115,219,206,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,0,0,0,9,0,14, + 2,10,10,9,4,0,192,0,192,192,192,192,192,192,192,192, + 7,8,8,9,1,0,4,124,206,208,208,230,124,64,8,10, + 10,9,0,255,30,51,48,48,124,48,48,248,191,224,7,7, + 7,9,1,2,198,254,108,68,108,254,198,8,10,10,9,0, + 0,195,195,102,60,126,24,126,24,24,24,2,11,11,9,3, + 255,192,192,192,192,192,0,192,192,192,192,192,6,11,11,9, + 1,255,120,204,192,120,204,204,204,120,12,204,120,5,2,2, + 9,2,11,216,216,8,11,11,9,0,0,60,126,195,189,165, + 161,165,189,195,126,60,5,7,7,9,1,3,112,24,120,216, + 120,0,248,8,8,8,9,0,1,27,54,108,216,216,108,54, + 27,7,5,5,9,1,2,254,254,6,6,6,6,1,1,9, + 1,4,252,8,11,11,9,0,0,60,126,195,189,165,189,169, + 173,195,126,60,6,2,2,9,1,9,252,252,5,4,4,9, + 1,8,112,216,216,112,6,9,9,9,1,1,48,48,48,252, + 48,48,48,0,252,5,6,6,9,1,4,112,216,24,48,96, + 248,5,6,6,9,1,4,112,216,48,24,216,112,4,3,3, + 9,2,10,48,96,192,7,9,9,9,1,254,198,198,198,198, + 206,222,246,192,192,7,10,10,9,1,0,126,246,246,246,118, + 54,54,54,54,54,3,2,2,9,3,4,224,224,6,3,3, + 9,1,253,24,204,120,4,6,6,9,1,4,96,224,96,96, + 96,240,5,7,7,9,1,3,112,216,216,216,112,0,248,8, + 8,8,9,0,1,216,108,54,27,27,54,108,216,8,11,11, + 9,0,0,96,224,96,96,97,99,247,15,27,31,3,8,11, + 11,9,0,0,96,224,96,96,110,115,243,6,12,24,31,8, + 11,11,9,0,0,112,152,24,48,25,155,119,15,27,31,3, + 7,10,10,9,1,0,24,24,0,24,48,96,192,198,198,124, + 7,14,14,9,1,0,96,48,24,0,16,56,56,56,108,124, + 108,198,198,198,7,14,14,9,1,0,12,24,48,0,16,56, + 56,56,108,124,108,198,198,198,7,14,14,9,1,0,16,56, + 108,0,16,56,56,56,108,124,108,198,198,198,7,13,13,9, + 1,0,118,220,0,16,56,56,56,108,124,108,198,198,198,7, + 13,13,9,1,0,108,108,0,16,56,56,56,108,124,108,198, + 198,198,7,14,14,9,1,0,56,108,108,56,16,56,56,56, + 108,124,108,198,198,198,7,10,10,9,1,0,62,60,108,108, + 110,252,204,204,204,206,7,14,14,9,1,252,60,102,192,192, + 192,192,192,192,102,60,24,12,108,56,7,14,14,9,1,0, + 96,48,24,0,254,192,192,192,248,192,192,192,192,254,7,14, + 14,9,1,0,12,24,48,0,254,192,192,192,248,192,192,192, + 192,254,7,14,14,9,1,0,16,56,108,0,254,192,192,192, + 248,192,192,192,192,254,7,13,13,9,1,0,108,108,0,254, + 192,192,192,248,192,192,192,192,254,6,14,14,9,1,0,96, + 48,24,0,252,48,48,48,48,48,48,48,48,252,6,14,14, + 9,1,0,12,24,48,0,252,48,48,48,48,48,48,48,48, + 252,6,14,14,9,1,0,16,56,108,0,252,48,48,48,48, + 48,48,48,48,252,6,13,13,9,1,0,108,108,0,252,48, + 48,48,48,48,48,48,48,252,8,10,10,9,0,0,124,102, + 99,99,243,99,99,99,102,124,7,13,13,9,1,0,118,220, + 0,198,198,230,246,222,206,198,198,198,198,7,14,14,9,1, + 0,96,48,24,0,124,198,198,198,198,198,198,198,198,124,7, + 14,14,9,1,0,12,24,48,0,124,198,198,198,198,198,198, + 198,198,124,7,14,14,9,1,0,16,56,108,0,124,198,198, + 198,198,198,198,198,198,124,7,13,13,9,1,0,118,220,0, + 124,198,198,198,198,198,198,198,198,124,7,13,13,9,1,0, + 108,108,0,124,198,198,198,198,198,198,198,198,124,8,7,7, + 9,0,1,195,102,60,24,60,102,195,7,12,12,9,1,255, + 6,126,206,206,222,222,246,246,230,230,252,192,7,14,14,9, + 1,0,96,48,24,0,198,198,198,198,198,198,198,198,108,56, + 7,14,14,9,1,0,12,24,48,0,198,198,198,198,198,198, + 198,198,108,56,7,14,14,9,1,0,16,56,108,0,198,198, + 198,198,198,198,198,198,108,56,7,13,13,9,1,0,108,108, + 0,198,198,198,198,198,198,198,198,108,56,8,14,14,9,0, + 0,12,24,48,0,195,195,102,60,24,24,24,24,24,24,7, + 10,10,9,1,0,192,192,252,198,198,198,252,192,192,192,7, + 10,10,9,1,0,60,102,102,102,236,102,102,102,102,108,7, + 11,11,9,1,0,96,48,24,0,124,6,6,126,198,198,126, + 7,11,11,9,1,0,12,24,48,0,124,6,6,126,198,198, + 126,7,11,11,9,1,0,16,56,108,0,124,6,6,126,198, + 198,126,7,10,10,9,1,0,118,220,0,124,6,6,126,198, + 198,126,7,10,10,9,1,0,108,108,0,124,6,6,126,198, + 198,126,7,11,11,9,1,0,56,108,56,0,124,6,6,126, + 198,198,126,8,7,7,9,0,0,118,27,27,127,216,219,118, + 7,11,11,9,1,252,124,198,192,192,192,198,124,24,12,108, + 56,7,11,11,9,1,0,96,48,24,0,124,198,198,254,192, + 198,124,7,11,11,9,1,0,12,24,48,0,124,198,198,254, + 192,198,124,7,11,11,9,1,0,16,56,108,0,124,198,198, + 254,192,198,124,7,10,10,9,1,0,108,108,0,124,198,198, + 254,192,198,124,6,11,11,9,1,0,192,96,48,0,240,48, + 48,48,48,48,252,6,11,11,9,1,0,12,24,48,0,240, + 48,48,48,48,48,252,6,11,11,9,1,0,32,112,216,0, + 240,48,48,48,48,48,252,6,10,10,9,1,0,108,108,0, + 240,48,48,48,48,48,252,7,11,11,9,1,0,108,56,56, + 108,12,126,198,198,198,198,124,7,10,10,9,1,0,118,220, + 0,220,230,198,198,198,198,198,7,11,11,9,1,0,96,48, + 24,0,56,108,198,198,198,108,56,7,11,11,9,1,0,12, + 24,48,0,56,108,198,198,198,108,56,7,11,11,9,1,0, + 16,56,108,0,56,108,198,198,198,108,56,7,10,10,9,1, + 0,118,220,0,56,108,198,198,198,108,56,7,10,10,9,1, + 0,108,108,0,56,108,198,198,198,108,56,8,7,7,9,0, + 1,24,24,0,255,0,24,24,8,9,9,9,0,255,1,63, + 102,207,219,243,102,252,128,7,11,11,9,1,0,96,48,24, + 0,198,198,198,198,198,198,126,7,11,11,9,1,0,12,24, + 48,0,198,198,198,198,198,198,126,7,11,11,9,1,0,16, + 56,108,0,198,198,198,198,198,198,126,7,10,10,9,1,0, + 108,108,0,198,198,198,198,198,198,126,7,14,14,9,1,253, + 12,24,48,0,198,198,108,108,108,56,56,48,176,96,7,11, + 11,9,1,254,192,192,248,204,198,198,198,204,248,192,192,7, + 13,13,9,1,253,108,108,0,198,198,108,108,108,56,56,48, + 176,96}; +/* + Fontname: -Misc-Fixed-Bold-R-Normal--18-120-100-100-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 9 h=13 x= 3 y=14 dx= 9 dy= 0 ascent=14 len=20 + Font Bounding box w= 9 h=18 x= 0 y=-4 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x18Br[1434] U8G_SECTION(".progmem.u8g_font_9x18Br") = { + 0,9,18,0,252,10,1,242,3,225,32,127,253,14,253,11, + 253,0,0,0,9,0,14,2,11,11,9,3,0,192,192,192, + 192,192,192,192,0,0,192,192,5,4,4,9,2,7,216,216, + 216,216,7,10,10,9,1,0,108,108,108,254,108,108,254,108, + 108,108,8,11,11,9,0,255,24,126,219,216,120,60,30,27, + 219,126,24,8,10,10,9,0,0,115,222,222,108,24,24,54, + 123,123,206,8,10,10,9,0,0,112,216,216,216,112,115,222, + 204,222,115,2,4,4,9,3,7,192,192,192,192,4,12,12, + 9,2,255,48,96,96,192,192,192,192,192,192,96,96,48,4, + 12,12,9,2,255,192,96,96,48,48,48,48,48,48,96,96, + 192,8,7,7,9,0,1,24,219,126,60,126,219,24,8,7, + 7,9,0,1,24,24,24,255,24,24,24,3,4,4,9,3, + 254,224,224,96,192,7,1,1,9,1,4,254,3,2,2,9, + 3,0,224,224,8,10,10,9,0,0,3,6,6,12,24,24, + 48,96,96,192,7,10,10,9,1,0,56,108,198,198,198,198, + 198,198,108,56,8,10,10,9,0,0,24,56,120,216,24,24, + 24,24,24,255,7,10,10,9,1,0,56,108,198,6,6,12, + 24,48,96,254,7,10,10,9,1,0,254,6,12,24,56,12, + 6,6,204,120,7,10,10,9,1,0,12,28,60,108,204,204, + 254,12,12,12,7,10,10,9,1,0,254,192,192,192,248,12, + 6,6,204,120,7,10,10,9,1,0,60,96,192,192,248,204, + 198,198,108,56,7,10,10,9,1,0,254,6,12,12,24,24, + 48,48,48,48,7,10,10,9,1,0,56,108,198,108,56,108, + 198,198,108,56,7,10,10,9,1,0,56,108,198,198,110,62, + 6,6,12,120,3,7,7,9,3,0,224,224,0,0,0,224, + 224,3,9,9,9,3,254,224,224,0,0,0,224,224,96,192, + 6,9,9,9,1,0,12,24,48,96,192,96,48,24,12,7, + 4,4,9,1,2,254,0,0,254,6,9,9,9,1,0,192, + 96,48,24,12,24,48,96,192,7,10,10,9,1,0,56,108, + 198,6,12,24,48,48,0,48,9,10,20,9,0,0,62,0, + 99,0,205,128,213,128,213,128,213,128,213,128,207,0,96,0, + 62,0,7,10,10,9,1,0,16,56,56,56,108,124,108,198, + 198,198,7,10,10,9,1,0,252,198,198,198,252,198,198,198, + 198,252,7,10,10,9,1,0,60,102,192,192,192,192,192,192, + 102,60,7,10,10,9,1,0,248,204,198,198,198,198,198,198, + 204,248,7,10,10,9,1,0,254,192,192,192,248,192,192,192, + 192,254,7,10,10,9,1,0,254,192,192,192,248,192,192,192, + 192,192,7,10,10,9,1,0,56,108,198,192,192,206,198,198, + 108,56,7,10,10,9,1,0,198,198,198,198,254,198,198,198, + 198,198,6,10,10,9,1,0,252,48,48,48,48,48,48,48, + 48,252,7,10,10,9,1,0,30,12,12,12,12,12,12,204, + 204,120,7,10,10,9,1,0,198,204,216,240,224,240,216,204, + 198,198,7,10,10,9,1,0,192,192,192,192,192,192,192,192, + 192,254,7,10,10,9,1,0,198,238,254,214,198,198,198,198, + 198,198,7,10,10,9,1,0,198,198,230,246,222,206,198,198, + 198,198,7,10,10,9,1,0,124,198,198,198,198,198,198,198, + 198,124,7,10,10,9,1,0,248,204,198,198,204,248,192,192, + 192,192,8,11,11,9,1,255,56,108,198,198,198,198,198,222, + 108,62,3,7,10,10,9,1,0,252,198,198,198,198,252,216, + 204,198,198,7,10,10,9,1,0,124,198,192,192,124,6,6, + 6,198,124,6,10,10,9,1,0,252,48,48,48,48,48,48, + 48,48,48,7,10,10,9,1,0,198,198,198,198,198,198,198, + 198,108,56,7,10,10,9,1,0,198,198,198,108,108,108,56, + 56,56,16,7,10,10,9,1,0,198,198,198,198,214,214,214, + 254,238,68,7,10,10,9,1,0,198,198,108,56,16,16,56, + 108,198,198,8,10,10,9,0,0,195,195,102,60,24,24,24, + 24,24,24,7,10,10,9,1,0,254,6,6,12,24,48,96, + 192,192,254,5,12,12,9,2,255,248,192,192,192,192,192,192, + 192,192,192,192,248,8,10,10,9,0,0,192,96,96,48,24, + 24,12,6,6,3,4,12,12,9,2,255,240,48,48,48,48, + 48,48,48,48,48,48,240,8,4,4,9,0,6,24,60,102, + 195,8,1,1,9,0,255,255,4,3,3,9,2,10,192,96, + 48,7,7,7,9,1,0,124,6,6,126,198,198,126,7,10, + 10,9,1,0,192,192,192,252,198,198,198,198,198,252,7,7, + 7,9,1,0,124,198,192,192,192,198,124,7,10,10,9,1, + 0,6,6,6,126,198,198,198,198,198,126,7,7,7,9,1, + 0,124,198,198,254,192,198,124,6,10,10,9,1,0,56,108, + 108,96,96,240,96,96,96,96,7,10,10,9,1,253,126,204, + 204,204,120,192,124,198,198,124,7,10,10,9,1,0,192,192, + 192,252,198,198,198,198,198,198,6,10,10,9,1,0,48,48, + 0,240,48,48,48,48,48,252,5,13,13,9,2,253,24,24, + 0,56,24,24,24,24,24,24,216,216,112,7,10,10,9,1, + 0,192,192,192,204,216,240,240,216,204,198,6,10,10,9,1, + 0,240,48,48,48,48,48,48,48,48,252,8,7,7,9,0, + 0,254,219,219,219,219,219,195,7,7,7,9,1,0,220,230, + 198,198,198,198,198,7,7,7,9,1,0,56,108,198,198,198, + 108,56,7,10,10,9,1,253,248,204,198,198,198,204,248,192, + 192,192,7,10,10,9,1,253,62,102,198,198,198,102,62,6, + 6,6,7,7,7,9,1,0,220,118,96,96,96,96,96,7, + 7,7,9,1,0,124,198,192,124,6,198,124,7,9,9,9, + 1,0,48,48,252,48,48,48,48,54,28,7,7,7,9,1, + 0,198,198,198,198,198,198,126,7,7,7,9,1,0,198,198, + 108,108,56,56,16,8,7,7,9,0,0,195,195,219,219,219, + 255,102,7,7,7,9,1,0,198,108,56,16,56,108,198,7, + 10,10,9,1,253,198,198,108,108,108,56,56,48,176,96,6, + 7,7,9,1,0,252,12,24,48,96,192,252,6,11,11,9, + 1,0,60,96,96,96,96,192,96,96,96,96,60,2,12,12, + 9,3,255,192,192,192,192,192,192,192,192,192,192,192,192,6, + 11,11,9,1,0,224,48,48,48,48,28,48,48,48,48,224, + 8,3,3,9,0,7,115,219,206,255}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--18-120-100-100-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 8 h=14 x= 4 y=14 dx= 9 dy= 0 ascent=14 len=14 + Font Bounding box w= 9 h=18 x= 0 y=-4 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x18[3011] U8G_SECTION(".progmem.u8g_font_9x18") = { + 0,9,18,0,252,10,1,232,3,215,32,255,253,14,253,11, + 253,0,0,0,9,0,14,1,11,11,9,4,0,128,128,128, + 128,128,128,128,0,0,128,128,4,4,4,9,3,7,144,144, + 144,144,8,10,10,9,0,0,36,36,36,255,36,36,255,36, + 36,36,7,11,11,9,1,255,16,124,146,144,80,56,20,18, + 146,124,16,7,10,10,9,1,0,66,164,164,72,16,16,36, + 74,74,132,7,10,10,9,1,0,96,144,144,144,96,98,148, + 136,148,98,1,4,4,9,4,7,128,128,128,128,3,12,12, + 9,3,255,32,64,64,128,128,128,128,128,128,64,64,32,3, + 12,12,9,3,255,128,64,64,32,32,32,32,32,32,64,64, + 128,7,7,7,9,1,3,16,146,84,56,84,146,16,7,7, + 7,9,1,1,16,16,16,254,16,16,16,2,4,4,9,4, + 254,192,192,64,128,7,1,1,9,1,4,254,2,2,2,9, + 4,0,192,192,7,10,10,9,1,0,2,4,4,8,16,16, + 32,64,64,128,7,10,10,9,1,0,56,68,130,130,130,130, + 130,130,68,56,7,10,10,9,1,0,16,48,80,144,16,16, + 16,16,16,254,7,10,10,9,1,0,56,68,130,2,4,8, + 16,32,64,254,7,10,10,9,1,0,254,2,4,8,24,4, + 2,2,132,120,7,10,10,9,1,0,4,12,20,36,68,132, + 254,4,4,4,7,10,10,9,1,0,254,128,128,128,248,4, + 2,2,132,120,7,10,10,9,1,0,60,64,128,128,184,196, + 130,130,68,56,7,10,10,9,1,0,254,2,4,4,8,8, + 16,16,16,16,7,10,10,9,1,0,56,68,130,68,56,68, + 130,130,68,56,7,10,10,9,1,0,56,68,130,130,70,58, + 2,2,4,120,2,7,7,9,4,0,192,192,0,0,0,192, + 192,2,9,9,9,4,254,192,192,0,0,0,192,192,64,128, + 5,9,9,9,2,0,8,16,32,64,128,64,32,16,8,7, + 4,4,9,1,2,254,0,0,254,5,9,9,9,2,0,128, + 64,32,16,8,16,32,64,128,7,10,10,9,1,0,56,68, + 130,2,4,8,16,16,0,16,7,10,10,9,1,0,56,68, + 154,170,170,170,170,156,64,60,7,10,10,9,1,0,16,40, + 40,40,68,124,68,130,130,130,7,10,10,9,1,0,248,132, + 130,132,248,132,130,130,132,248,7,10,10,9,1,0,60,66, + 128,128,128,128,128,128,66,60,7,10,10,9,1,0,248,132, + 130,130,130,130,130,130,132,248,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,254,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,128,7,10,10,9,1,0,56,68, + 130,128,128,142,130,130,68,56,7,10,10,9,1,0,130,130, + 130,130,254,130,130,130,130,130,5,10,10,9,2,0,248,32, + 32,32,32,32,32,32,32,248,7,10,10,9,1,0,62,8, + 8,8,8,8,8,136,136,112,7,10,10,9,1,0,130,132, + 136,144,160,208,136,132,130,130,7,10,10,9,1,0,128,128, + 128,128,128,128,128,128,128,254,7,10,10,9,1,0,130,130, + 198,170,146,130,130,130,130,130,7,10,10,9,1,0,130,130, + 194,162,146,138,134,130,130,130,7,10,10,9,1,0,124,130, + 130,130,130,130,130,130,130,124,7,10,10,9,1,0,248,132, + 130,130,132,248,128,128,128,128,8,11,11,9,1,255,56,68, + 130,130,130,130,130,138,68,58,1,7,10,10,9,1,0,248, + 132,130,130,132,248,144,136,132,130,7,10,10,9,1,0,124, + 130,128,128,124,2,2,2,130,124,7,10,10,9,1,0,254, + 16,16,16,16,16,16,16,16,16,7,10,10,9,1,0,130, + 130,130,130,130,130,130,130,68,56,7,10,10,9,1,0,130, + 130,130,68,68,68,40,40,40,16,7,10,10,9,1,0,130, + 130,130,130,146,146,146,146,170,68,7,10,10,9,1,0,130, + 130,68,40,16,16,40,68,130,130,7,10,10,9,1,0,130, + 130,68,40,16,16,16,16,16,16,7,10,10,9,1,0,254, + 2,4,8,16,32,64,128,128,254,4,12,12,9,3,255,240, + 128,128,128,128,128,128,128,128,128,128,240,7,10,10,9,1, + 0,128,64,64,32,16,16,8,4,4,2,4,12,12,9,2, + 255,240,16,16,16,16,16,16,16,16,16,16,240,7,4,4, + 9,1,6,16,40,68,130,8,1,1,9,0,255,255,3,3, + 3,9,3,10,128,64,32,7,7,7,9,1,0,124,2,2, + 126,130,134,122,7,10,10,9,1,0,128,128,128,188,194,130, + 130,130,194,188,7,7,7,9,1,0,124,130,128,128,128,130, + 124,7,10,10,9,1,0,2,2,2,122,134,130,130,130,134, + 122,7,7,7,9,1,0,124,130,130,254,128,130,124,7,10, + 10,9,1,0,28,34,34,32,32,248,32,32,32,32,7,10, + 10,9,1,253,122,132,132,132,120,128,124,130,130,124,7,10, + 10,9,1,0,128,128,128,188,194,130,130,130,130,130,5,10, + 10,9,2,0,96,0,0,224,32,32,32,32,32,248,5,13, + 13,9,2,253,24,0,0,56,8,8,8,8,8,8,136,136, + 112,7,10,10,9,1,0,128,128,128,132,136,144,176,200,132, + 130,5,10,10,9,2,0,224,32,32,32,32,32,32,32,32, + 248,7,7,7,9,1,0,236,146,146,146,146,146,130,7,7, + 7,9,1,0,188,194,130,130,130,130,130,7,7,7,9,1, + 0,124,130,130,130,130,130,124,7,10,10,9,1,253,184,196, + 130,130,130,196,184,128,128,128,7,10,10,9,1,253,58,70, + 130,130,130,70,58,2,2,2,7,7,7,9,1,0,156,98, + 66,64,64,64,64,7,7,7,9,1,0,124,130,128,124,2, + 130,124,7,9,9,9,1,0,32,32,252,32,32,32,32,34, + 28,7,7,7,9,1,0,130,130,130,130,130,134,122,7,7, + 7,9,1,0,130,130,68,68,40,40,16,7,7,7,9,1, + 0,130,130,146,146,146,170,68,7,7,7,9,1,0,130,68, + 40,16,40,68,130,7,10,10,9,1,253,66,66,36,36,36, + 24,24,16,144,96,7,7,7,9,1,0,254,4,8,16,32, + 64,254,6,11,11,9,2,0,28,32,32,32,32,192,32,32, + 32,32,28,1,12,12,9,4,255,128,128,128,128,128,128,128, + 128,128,128,128,128,6,11,11,9,1,0,224,16,16,16,16, + 12,16,16,16,16,224,7,3,3,9,1,7,98,146,140,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 0,0,0,9,0,14,1,11,11,9,4,0,128,128,0,0, + 128,128,128,128,128,128,128,6,8,8,9,1,0,8,120,148, + 144,160,164,120,64,7,10,10,9,1,0,28,34,32,32,248, + 32,32,96,162,92,7,6,6,9,1,3,130,124,68,68,124, + 130,7,10,10,9,1,0,130,130,68,40,124,16,124,16,16, + 16,1,11,11,9,4,255,128,128,128,128,128,0,128,128,128, + 128,128,4,11,11,9,2,255,96,144,128,96,144,144,144,96, + 16,144,96,3,2,2,9,3,11,160,160,8,9,9,9,0, + 1,60,66,153,165,161,165,153,66,60,5,7,7,9,1,3, + 96,144,112,144,120,0,248,7,8,8,9,1,1,18,36,72, + 144,144,72,36,18,6,4,4,9,1,2,252,4,4,4,5, + 1,1,9,2,4,248,8,9,9,9,0,1,60,66,185,165, + 189,169,165,66,60,6,1,1,9,1,9,252,4,4,4,9, + 3,6,96,144,144,96,7,9,9,9,1,1,16,16,16,254, + 16,16,16,0,254,4,6,6,9,1,4,96,144,16,96,128, + 240,4,6,6,9,1,4,96,144,32,16,144,96,3,3,3, + 9,3,10,32,64,128,7,9,9,9,1,254,130,130,130,130, + 130,198,186,128,128,7,10,10,9,1,0,126,138,138,138,122, + 10,10,10,10,10,2,2,2,9,4,4,192,192,4,3,3, + 9,2,253,32,144,96,3,6,6,9,1,4,64,192,64,64, + 64,224,5,6,6,9,1,4,112,136,136,112,0,248,7,8, + 8,9,1,1,144,72,36,18,18,36,72,144,7,10,10,9, + 1,0,64,192,64,64,66,230,10,18,26,6,7,10,10,9, + 1,0,64,192,64,64,76,242,2,12,16,30,7,10,10,9, + 1,0,96,144,32,16,146,102,10,18,26,6,7,10,10,9, + 1,0,16,0,16,16,32,64,128,130,130,124,7,14,14,9, + 1,0,32,16,8,0,16,40,40,40,68,124,68,130,130,130, + 7,14,14,9,1,0,8,16,32,0,16,40,40,40,68,124, + 68,130,130,130,7,14,14,9,1,0,16,40,68,0,16,40, + 40,40,68,124,68,130,130,130,7,13,13,9,1,0,52,88, + 0,16,40,40,40,68,124,68,130,130,130,7,13,13,9,1, + 0,40,40,0,16,40,40,40,68,124,68,130,130,130,7,14, + 14,9,1,0,16,40,40,16,16,40,40,40,68,124,68,130, + 130,130,7,10,10,9,1,0,30,40,40,40,78,120,72,136, + 136,142,7,13,13,9,1,253,60,66,128,128,128,128,128,128, + 66,60,8,36,24,7,14,14,9,1,0,32,16,8,0,254, + 128,128,128,248,128,128,128,128,254,7,14,14,9,1,0,8, + 16,32,0,254,128,128,128,248,128,128,128,128,254,7,14,14, + 9,1,0,16,40,68,0,254,128,128,128,248,128,128,128,128, + 254,7,13,13,9,1,0,40,40,0,254,128,128,128,248,128, + 128,128,128,254,5,14,14,9,2,0,64,32,16,0,248,32, + 32,32,32,32,32,32,32,248,5,14,14,9,2,0,16,32, + 64,0,248,32,32,32,32,32,32,32,32,248,5,14,14,9, + 2,0,32,80,136,0,248,32,32,32,32,32,32,32,32,248, + 5,13,13,9,2,0,80,80,0,248,32,32,32,32,32,32, + 32,32,248,7,10,10,9,1,0,120,68,66,66,242,66,66, + 66,68,120,7,13,13,9,1,0,52,88,0,130,130,194,162, + 146,138,134,130,130,130,7,14,14,9,1,0,32,16,8,0, + 124,130,130,130,130,130,130,130,130,124,7,14,14,9,1,0, + 8,16,32,0,124,130,130,130,130,130,130,130,130,124,7,14, + 14,9,1,0,16,40,68,0,124,130,130,130,130,130,130,130, + 130,124,7,13,13,9,1,0,52,88,0,124,130,130,130,130, + 130,130,130,130,124,7,13,13,9,1,0,40,40,0,124,130, + 130,130,130,130,130,130,130,124,7,7,7,9,1,1,130,68, + 40,16,40,68,130,7,12,12,9,1,255,2,124,134,138,138, + 146,146,162,162,194,124,128,7,14,14,9,1,0,32,16,8, + 0,130,130,130,130,130,130,130,130,68,56,7,14,14,9,1, + 0,8,16,32,0,130,130,130,130,130,130,130,130,68,56,7, + 14,14,9,1,0,16,40,68,0,130,130,130,130,130,130,130, + 130,68,56,7,13,13,9,1,0,40,40,0,130,130,130,130, + 130,130,130,130,68,56,7,14,14,9,1,0,8,16,32,0, + 130,130,68,40,16,16,16,16,16,16,7,10,10,9,1,0, + 128,128,252,130,130,130,252,128,128,128,6,10,10,9,1,0, + 56,68,68,72,208,72,68,68,68,88,7,11,11,9,1,0, + 32,16,8,0,124,2,2,126,130,134,122,7,11,11,9,1, + 0,8,16,32,0,124,2,2,126,130,134,122,7,11,11,9, + 1,0,16,40,68,0,124,2,2,126,130,134,122,7,10,10, + 9,1,0,52,88,0,124,2,2,126,130,134,122,7,10,10, + 9,1,0,40,40,0,124,2,2,126,130,134,122,7,12,12, + 9,1,0,16,40,40,16,0,124,2,2,126,130,134,122,7, + 7,7,9,1,0,108,18,18,126,144,146,108,7,10,10,9, + 1,253,124,130,128,128,128,130,124,16,72,48,7,11,11,9, + 1,0,32,16,8,0,124,130,130,254,128,130,124,7,11,11, + 9,1,0,8,16,32,0,124,130,130,254,128,130,124,7,11, + 11,9,1,0,16,40,68,0,124,130,130,254,128,130,124,7, + 10,10,9,1,0,40,40,0,124,130,130,254,128,130,124,5, + 12,12,9,2,0,128,64,32,0,0,224,32,32,32,32,32, + 248,5,12,12,9,2,0,16,32,64,0,0,224,32,32,32, + 32,32,248,5,12,12,9,2,0,32,80,136,0,0,224,32, + 32,32,32,32,248,5,11,11,9,2,0,80,80,0,0,224, + 32,32,32,32,32,248,7,11,11,9,1,0,72,48,80,8, + 60,68,130,130,130,68,56,7,10,10,9,1,0,52,88,0, + 188,194,130,130,130,130,130,7,11,11,9,1,0,32,16,8, + 0,124,130,130,130,130,130,124,7,11,11,9,1,0,8,16, + 32,0,124,130,130,130,130,130,124,7,11,11,9,1,0,16, + 40,68,0,124,130,130,130,130,130,124,7,10,10,9,1,0, + 52,88,0,124,130,130,130,130,130,124,7,10,10,9,1,0, + 40,40,0,124,130,130,130,130,130,124,7,9,9,9,1,0, + 16,56,16,0,254,0,16,56,16,7,9,9,9,1,255,2, + 124,138,138,146,162,162,124,128,7,11,11,9,1,0,64,32, + 16,0,130,130,130,130,130,134,122,7,11,11,9,1,0,8, + 16,32,0,130,130,130,130,130,134,122,7,11,11,9,1,0, + 16,40,68,0,130,130,130,130,130,134,122,7,10,10,9,1, + 0,40,40,0,130,130,130,130,130,134,122,7,14,14,9,1, + 253,4,8,16,0,66,66,36,36,36,24,24,16,144,96,7, + 11,11,9,1,254,128,128,184,196,130,130,130,196,184,128,128, + 7,13,13,9,1,253,36,36,0,66,66,36,36,36,24,24, + 16,144,96}; +/* + Fontname: -Misc-Fixed-Medium-R-Normal--18-120-100-100-C-90-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 8 h=13 x= 4 y=14 dx= 9 dy= 0 ascent=14 len=13 + Font Bounding box w= 9 h=18 x= 0 y=-4 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_9x18r[1424] U8G_SECTION(".progmem.u8g_font_9x18r") = { + 0,9,18,0,252,10,1,232,3,215,32,127,253,14,253,11, + 253,0,0,0,9,0,14,1,11,11,9,4,0,128,128,128, + 128,128,128,128,0,0,128,128,4,4,4,9,3,7,144,144, + 144,144,8,10,10,9,0,0,36,36,36,255,36,36,255,36, + 36,36,7,11,11,9,1,255,16,124,146,144,80,56,20,18, + 146,124,16,7,10,10,9,1,0,66,164,164,72,16,16,36, + 74,74,132,7,10,10,9,1,0,96,144,144,144,96,98,148, + 136,148,98,1,4,4,9,4,7,128,128,128,128,3,12,12, + 9,3,255,32,64,64,128,128,128,128,128,128,64,64,32,3, + 12,12,9,3,255,128,64,64,32,32,32,32,32,32,64,64, + 128,7,7,7,9,1,3,16,146,84,56,84,146,16,7,7, + 7,9,1,1,16,16,16,254,16,16,16,2,4,4,9,4, + 254,192,192,64,128,7,1,1,9,1,4,254,2,2,2,9, + 4,0,192,192,7,10,10,9,1,0,2,4,4,8,16,16, + 32,64,64,128,7,10,10,9,1,0,56,68,130,130,130,130, + 130,130,68,56,7,10,10,9,1,0,16,48,80,144,16,16, + 16,16,16,254,7,10,10,9,1,0,56,68,130,2,4,8, + 16,32,64,254,7,10,10,9,1,0,254,2,4,8,24,4, + 2,2,132,120,7,10,10,9,1,0,4,12,20,36,68,132, + 254,4,4,4,7,10,10,9,1,0,254,128,128,128,248,4, + 2,2,132,120,7,10,10,9,1,0,60,64,128,128,184,196, + 130,130,68,56,7,10,10,9,1,0,254,2,4,4,8,8, + 16,16,16,16,7,10,10,9,1,0,56,68,130,68,56,68, + 130,130,68,56,7,10,10,9,1,0,56,68,130,130,70,58, + 2,2,4,120,2,7,7,9,4,0,192,192,0,0,0,192, + 192,2,9,9,9,4,254,192,192,0,0,0,192,192,64,128, + 5,9,9,9,2,0,8,16,32,64,128,64,32,16,8,7, + 4,4,9,1,2,254,0,0,254,5,9,9,9,2,0,128, + 64,32,16,8,16,32,64,128,7,10,10,9,1,0,56,68, + 130,2,4,8,16,16,0,16,7,10,10,9,1,0,56,68, + 154,170,170,170,170,156,64,60,7,10,10,9,1,0,16,40, + 40,40,68,124,68,130,130,130,7,10,10,9,1,0,248,132, + 130,132,248,132,130,130,132,248,7,10,10,9,1,0,60,66, + 128,128,128,128,128,128,66,60,7,10,10,9,1,0,248,132, + 130,130,130,130,130,130,132,248,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,254,7,10,10,9,1,0,254,128, + 128,128,248,128,128,128,128,128,7,10,10,9,1,0,56,68, + 130,128,128,142,130,130,68,56,7,10,10,9,1,0,130,130, + 130,130,254,130,130,130,130,130,5,10,10,9,2,0,248,32, + 32,32,32,32,32,32,32,248,7,10,10,9,1,0,62,8, + 8,8,8,8,8,136,136,112,7,10,10,9,1,0,130,132, + 136,144,160,208,136,132,130,130,7,10,10,9,1,0,128,128, + 128,128,128,128,128,128,128,254,7,10,10,9,1,0,130,130, + 198,170,146,130,130,130,130,130,7,10,10,9,1,0,130,130, + 194,162,146,138,134,130,130,130,7,10,10,9,1,0,124,130, + 130,130,130,130,130,130,130,124,7,10,10,9,1,0,248,132, + 130,130,132,248,128,128,128,128,8,11,11,9,1,255,56,68, + 130,130,130,130,130,138,68,58,1,7,10,10,9,1,0,248, + 132,130,130,132,248,144,136,132,130,7,10,10,9,1,0,124, + 130,128,128,124,2,2,2,130,124,7,10,10,9,1,0,254, + 16,16,16,16,16,16,16,16,16,7,10,10,9,1,0,130, + 130,130,130,130,130,130,130,68,56,7,10,10,9,1,0,130, + 130,130,68,68,68,40,40,40,16,7,10,10,9,1,0,130, + 130,130,130,146,146,146,146,170,68,7,10,10,9,1,0,130, + 130,68,40,16,16,40,68,130,130,7,10,10,9,1,0,130, + 130,68,40,16,16,16,16,16,16,7,10,10,9,1,0,254, + 2,4,8,16,32,64,128,128,254,4,12,12,9,3,255,240, + 128,128,128,128,128,128,128,128,128,128,240,7,10,10,9,1, + 0,128,64,64,32,16,16,8,4,4,2,4,12,12,9,2, + 255,240,16,16,16,16,16,16,16,16,16,16,240,7,4,4, + 9,1,6,16,40,68,130,8,1,1,9,0,255,255,3,3, + 3,9,3,10,128,64,32,7,7,7,9,1,0,124,2,2, + 126,130,134,122,7,10,10,9,1,0,128,128,128,188,194,130, + 130,130,194,188,7,7,7,9,1,0,124,130,128,128,128,130, + 124,7,10,10,9,1,0,2,2,2,122,134,130,130,130,134, + 122,7,7,7,9,1,0,124,130,130,254,128,130,124,7,10, + 10,9,1,0,28,34,34,32,32,248,32,32,32,32,7,10, + 10,9,1,253,122,132,132,132,120,128,124,130,130,124,7,10, + 10,9,1,0,128,128,128,188,194,130,130,130,130,130,5,10, + 10,9,2,0,96,0,0,224,32,32,32,32,32,248,5,13, + 13,9,2,253,24,0,0,56,8,8,8,8,8,8,136,136, + 112,7,10,10,9,1,0,128,128,128,132,136,144,176,200,132, + 130,5,10,10,9,2,0,224,32,32,32,32,32,32,32,32, + 248,7,7,7,9,1,0,236,146,146,146,146,146,130,7,7, + 7,9,1,0,188,194,130,130,130,130,130,7,7,7,9,1, + 0,124,130,130,130,130,130,124,7,10,10,9,1,253,184,196, + 130,130,130,196,184,128,128,128,7,10,10,9,1,253,58,70, + 130,130,130,70,58,2,2,2,7,7,7,9,1,0,156,98, + 66,64,64,64,64,7,7,7,9,1,0,124,130,128,124,2, + 130,124,7,9,9,9,1,0,32,32,252,32,32,32,32,34, + 28,7,7,7,9,1,0,130,130,130,130,130,134,122,7,7, + 7,9,1,0,130,130,68,68,40,40,16,7,7,7,9,1, + 0,130,130,146,146,146,170,68,7,7,7,9,1,0,130,68, + 40,16,40,68,130,7,10,10,9,1,253,66,66,36,36,36, + 24,24,16,144,96,7,7,7,9,1,0,254,4,8,16,32, + 64,254,6,11,11,9,2,0,28,32,32,32,32,192,32,32, + 32,32,28,1,12,12,9,4,255,128,128,128,128,128,128,128, + 128,128,128,128,128,6,11,11,9,1,0,224,16,16,16,16, + 12,16,16,16,16,224,7,3,3,9,1,7,98,146,140,255 + }; +/* + Fontname: -FreeType-Baby-Medium-R-Normal--8-80-72-72-P-42-ISO10646-1 + Copyright: Copyright mrsbarrett 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 9 h= 9 x= 1 y= 5 dx=10 dy= 0 ascent= 8 len=12 + Font Bounding box w=10 h=10 x=-1 y=-2 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 6 descent=-2 + Max Font ascent = 8 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_baby[2227] U8G_SECTION(".progmem.u8g_font_baby") = { + 0,10,10,255,254,5,1,108,2,200,32,255,254,8,254,6, + 254,0,0,0,2,0,0,1,6,6,3,1,0,128,128,128, + 128,0,128,3,3,3,4,0,4,160,160,160,5,5,5,6, + 0,0,80,248,80,248,80,3,7,7,4,0,255,64,96,128, + 64,32,192,64,5,5,5,6,0,0,200,208,32,88,152,5, + 6,6,6,0,0,64,160,64,160,144,104,1,3,3,2,0, + 4,128,128,128,2,7,7,3,0,255,64,128,128,128,128,128, + 64,2,7,7,3,0,255,128,64,64,64,64,64,128,3,3, + 3,4,0,3,160,64,160,3,3,3,5,1,1,64,224,64, + 2,3,3,3,0,254,192,64,128,3,1,1,4,0,2,224, + 1,1,1,2,0,0,128,3,6,6,4,0,255,32,32,64, + 64,128,128,3,5,5,4,0,0,64,160,160,160,64,2,5, + 5,3,0,0,64,192,64,64,64,4,5,5,5,0,0,96, + 144,32,64,240,4,5,5,5,0,0,224,16,96,16,224,4, + 5,5,5,0,0,144,144,144,112,16,4,5,5,5,0,0, + 240,128,224,16,224,4,5,5,5,0,0,96,128,224,144,96, + 4,5,5,5,0,0,240,16,32,64,128,4,5,5,5,0, + 0,96,144,96,144,96,4,5,5,5,0,0,96,144,112,16, + 96,1,3,3,3,1,0,128,0,128,2,5,5,3,0,254, + 64,0,64,64,128,4,5,5,5,0,0,16,96,128,96,16, + 3,3,3,4,0,1,224,0,224,4,5,5,5,0,0,128, + 96,16,96,128,4,6,6,5,0,0,96,144,32,64,0,64, + 5,6,6,6,0,0,112,136,168,176,128,112,4,5,5,5, + 0,0,96,144,144,240,144,4,5,5,5,0,0,224,144,224, + 144,224,4,5,5,5,0,0,96,144,128,144,96,4,5,5, + 5,0,0,224,144,144,144,224,4,5,5,5,0,0,240,128, + 224,128,240,4,5,5,5,0,0,240,128,224,128,128,4,5, + 5,5,0,0,96,128,176,144,96,4,5,5,5,0,0,144, + 144,240,144,144,3,5,5,4,0,0,224,64,64,64,224,4, + 5,5,5,0,0,112,16,16,144,96,4,5,5,5,0,0, + 144,144,144,224,144,3,5,5,4,0,0,128,128,128,128,224, + 5,5,5,6,0,0,216,168,168,168,136,4,5,5,5,0, + 0,144,144,208,176,144,4,5,5,5,0,0,96,144,144,144, + 96,4,5,5,5,0,0,224,144,144,224,128,4,5,5,5, + 0,0,96,144,144,80,224,4,5,5,5,0,0,224,144,144, + 224,144,3,5,5,4,0,0,96,128,64,32,192,3,5,5, + 4,0,0,224,64,64,64,64,4,5,5,5,0,0,144,144, + 144,144,96,5,5,5,6,0,0,136,80,80,80,32,5,5, + 5,6,0,0,136,136,136,168,80,4,5,5,5,0,0,144, + 144,144,96,144,4,6,6,5,0,255,144,144,144,112,16,96, + 4,5,5,5,0,0,240,32,64,128,240,2,7,7,3,0, + 255,192,128,128,128,128,128,192,3,6,6,4,0,255,128,128, + 64,64,32,32,2,7,7,3,0,255,192,64,64,64,64,64, + 192,3,2,2,4,0,4,64,160,4,1,1,5,0,255,240, + 2,2,2,3,0,5,128,64,4,4,4,5,0,0,96,144, + 144,112,4,5,5,5,0,0,128,224,144,144,96,3,4,4, + 4,0,0,96,128,128,96,4,5,5,5,0,0,16,112,144, + 144,96,4,4,4,5,0,0,96,144,160,112,4,5,5,5, + 0,0,96,144,128,192,128,4,6,6,5,0,254,96,144,144, + 112,16,96,4,5,5,5,0,0,128,224,144,144,144,1,5, + 5,2,0,0,128,0,128,128,128,3,7,7,3,255,254,32, + 0,32,32,32,32,192,3,5,5,4,0,0,128,160,192,160, + 160,1,5,5,2,0,0,128,128,128,128,128,5,4,4,6, + 0,0,208,168,168,136,4,4,4,5,0,0,224,144,144,144, + 4,4,4,5,0,0,96,144,144,96,4,6,6,5,0,254, + 96,144,144,224,128,128,4,6,6,5,0,254,96,144,144,112, + 16,16,4,4,4,5,0,0,224,144,128,128,4,4,4,5, + 0,0,112,64,32,224,3,5,5,4,0,0,64,224,64,64, + 64,4,4,4,5,0,0,144,144,144,112,4,4,4,5,0, + 0,144,144,144,96,5,4,4,6,0,0,136,168,168,80,4, + 4,4,5,0,0,144,144,96,144,4,6,6,5,0,254,144, + 144,144,112,16,96,4,4,4,5,0,0,240,32,64,240,3, + 7,7,4,0,255,32,64,64,128,64,64,32,1,7,7,2, + 0,255,128,128,128,128,128,128,128,3,7,7,4,0,255,128, + 64,64,32,64,64,128,5,3,3,6,0,1,64,168,16,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,1,6,6,3,1,255,128,0,128,128,128,128,4,6,6, + 5,0,255,16,112,160,160,112,64,4,6,6,5,0,0,96, + 208,64,224,64,240,4,4,4,5,0,1,240,144,144,240,5, + 7,7,6,0,255,136,80,32,112,32,112,32,1,7,7,2, + 0,255,128,128,128,0,128,128,128,4,7,7,5,0,255,112, + 128,96,144,96,16,224,3,1,1,4,0,5,160,7,7,7, + 8,0,255,56,68,154,162,154,68,56,3,3,3,4,0,4, + 96,160,224,4,3,3,5,0,1,80,160,80,5,3,3,6, + 0,1,248,8,8,2,1,1,3,0,2,192,7,7,7,8, + 0,255,56,68,178,186,170,68,56,4,1,1,5,0,5,240, + 3,3,3,4,0,4,64,160,64,3,5,5,4,0,0,64, + 224,64,0,224,3,4,4,4,0,4,192,32,64,224,3,4, + 4,4,0,4,224,32,96,224,2,2,2,3,0,5,64,128, + 5,6,6,6,0,254,144,144,144,248,128,128,5,6,6,6, + 0,0,120,232,232,104,40,40,1,1,1,3,1,2,128,3, + 3,3,4,0,254,64,32,192,3,4,4,4,0,4,64,192, + 64,224,4,4,4,5,0,4,96,144,144,96,4,3,3,5, + 0,1,160,80,160,7,6,6,8,0,0,136,144,160,42,78, + 130,7,6,6,8,0,0,136,144,164,42,68,142,9,6,12, + 10,0,0,226,0,100,0,232,0,10,128,19,128,32,128,4, + 6,6,5,0,255,32,0,32,64,144,96,4,8,8,5,0, + 0,64,32,0,96,144,144,240,144,4,8,8,5,0,0,32, + 64,0,96,144,144,240,144,4,8,8,5,0,0,96,144,0, + 96,144,144,240,144,4,8,8,5,0,0,80,160,0,96,144, + 144,240,144,4,7,7,5,0,0,80,0,96,144,144,240,144, + 4,7,7,5,0,0,96,0,96,144,144,240,144,7,5,5, + 8,0,0,126,144,156,240,158,4,7,7,5,0,254,96,144, + 128,144,96,32,64,4,8,8,5,0,0,64,32,0,240,128, + 224,128,240,4,8,8,5,0,0,32,64,0,240,128,224,128, + 240,4,8,8,5,0,0,96,144,0,240,128,224,128,240,4, + 7,7,5,0,0,80,0,240,128,224,128,240,3,8,8,4, + 0,0,128,64,0,224,64,64,64,224,3,8,8,4,0,0, + 32,64,0,224,64,64,64,224,3,8,8,4,0,0,64,160, + 0,224,64,64,64,224,3,7,7,4,0,0,160,0,224,64, + 64,64,224,5,5,5,6,0,0,112,72,232,72,112,4,8, + 8,5,0,0,80,160,0,144,144,208,176,144,4,8,8,5, + 0,0,64,32,0,96,144,144,144,96,4,8,8,5,0,0, + 32,64,0,96,144,144,144,96,4,8,8,5,0,0,96,144, + 0,96,144,144,144,96,4,8,8,5,0,0,80,160,0,96, + 144,144,144,96,4,7,7,5,0,0,80,0,96,144,144,144, + 96,3,3,3,4,0,1,160,64,160,6,5,5,7,0,0, + 48,76,120,200,48,4,8,8,5,0,0,64,32,0,144,144, + 144,144,96,4,8,8,5,0,0,32,64,0,144,144,144,144, + 96,4,8,8,5,0,0,96,144,0,144,144,144,144,96,4, + 7,7,5,0,0,80,0,144,144,144,144,96,4,9,9,5, + 0,255,32,64,0,144,144,144,112,16,96,4,6,6,5,0, + 0,128,224,144,144,224,128,4,5,5,5,0,0,96,144,160, + 144,160,4,7,7,5,0,0,64,32,0,96,144,144,112,4, + 7,7,5,0,0,32,64,0,96,144,144,112,4,7,7,5, + 0,0,96,144,0,96,144,144,112,4,7,7,5,0,0,80, + 160,0,96,144,144,112,4,6,6,5,0,0,80,0,96,144, + 144,112,4,7,7,5,0,0,96,96,0,96,144,144,112,7, + 4,4,8,0,0,108,146,148,126,3,6,6,4,0,254,96, + 128,128,96,32,64,4,7,7,5,0,0,64,32,0,96,144, + 160,112,4,7,7,5,0,0,32,64,0,96,144,160,112,4, + 7,7,5,0,0,96,144,0,96,144,160,112,4,6,6,5, + 0,0,80,0,96,144,160,112,2,6,6,3,0,0,128,64, + 0,64,64,64,2,6,6,3,0,0,64,128,0,128,128,128, + 3,6,6,4,0,0,64,160,0,64,64,64,3,5,5,4, + 0,0,160,0,64,64,64,5,6,6,6,0,0,96,24,112, + 144,144,96,4,7,7,5,0,0,80,160,0,224,144,144,144, + 4,7,7,5,0,0,64,32,0,96,144,144,96,4,7,7, + 5,0,0,32,64,0,96,144,144,96,4,7,7,5,0,0, + 96,144,0,96,144,144,96,4,7,7,5,0,0,80,160,0, + 96,144,144,96,4,6,6,5,0,0,80,0,96,144,144,96, + 5,5,5,6,0,0,32,0,248,0,32,4,4,4,5,0, + 0,96,176,208,96,4,7,7,5,0,0,64,32,0,144,144, + 144,112,4,7,7,5,0,0,32,64,0,144,144,144,112,4, + 7,7,5,0,0,96,144,0,144,144,144,112,4,6,6,5, + 0,0,80,0,144,144,144,112,4,9,9,5,0,254,32,64, + 0,144,144,144,112,16,96,4,8,8,5,0,254,128,128,224, + 144,144,224,128,128,4,8,8,5,0,254,80,0,144,144,144, + 112,16,96}; +/* + Fontname: -FreeType-Baby-Medium-R-Normal--8-80-72-72-P-42-ISO10646-1 + Copyright: Copyright mrsbarrett 2008 + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 4 h= 6 x= 1 y= 3 dx= 5 dy= 0 ascent= 6 len= 6 + Font Bounding box w=10 h=10 x=-1 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 6 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_babyn[180] U8G_SECTION(".progmem.u8g_font_babyn") = { + 0,10,10,255,254,5,0,0,0,0,42,57,0,6,254,5, + 0,3,3,3,4,0,3,160,64,160,3,3,3,5,1,1, + 64,224,64,2,3,3,3,0,254,192,64,128,3,1,1,4, + 0,2,224,1,1,1,2,0,0,128,3,6,6,4,0,255, + 32,32,64,64,128,128,3,5,5,4,0,0,64,160,160,160, + 64,2,5,5,3,0,0,64,192,64,64,64,4,5,5,5, + 0,0,96,144,32,64,240,4,5,5,5,0,0,224,16,96, + 16,224,4,5,5,5,0,0,144,144,144,112,16,4,5,5, + 5,0,0,240,128,224,16,224,4,5,5,5,0,0,96,128, + 224,144,96,4,5,5,5,0,0,240,16,32,64,128,4,5, + 5,5,0,0,96,144,96,144,96,4,5,5,5,0,0,96, + 144,112,16,96}; +/* + Fontname: -FreeType-Baby-Medium-R-Normal--8-80-72-72-P-42-ISO10646-1 + Copyright: Copyright mrsbarrett 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 7 x= 1 y= 5 dx= 6 dy= 0 ascent= 7 len= 7 + Font Bounding box w=10 h=10 x=-1 y=-2 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 6 descent=-2 + Max Font ascent = 7 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_babyr[1040] U8G_SECTION(".progmem.u8g_font_babyr") = { + 0,10,10,255,254,5,1,108,2,200,32,127,254,7,254,6, + 254,0,0,0,2,0,0,1,6,6,3,1,0,128,128,128, + 128,0,128,3,3,3,4,0,4,160,160,160,5,5,5,6, + 0,0,80,248,80,248,80,3,7,7,4,0,255,64,96,128, + 64,32,192,64,5,5,5,6,0,0,200,208,32,88,152,5, + 6,6,6,0,0,64,160,64,160,144,104,1,3,3,2,0, + 4,128,128,128,2,7,7,3,0,255,64,128,128,128,128,128, + 64,2,7,7,3,0,255,128,64,64,64,64,64,128,3,3, + 3,4,0,3,160,64,160,3,3,3,5,1,1,64,224,64, + 2,3,3,3,0,254,192,64,128,3,1,1,4,0,2,224, + 1,1,1,2,0,0,128,3,6,6,4,0,255,32,32,64, + 64,128,128,3,5,5,4,0,0,64,160,160,160,64,2,5, + 5,3,0,0,64,192,64,64,64,4,5,5,5,0,0,96, + 144,32,64,240,4,5,5,5,0,0,224,16,96,16,224,4, + 5,5,5,0,0,144,144,144,112,16,4,5,5,5,0,0, + 240,128,224,16,224,4,5,5,5,0,0,96,128,224,144,96, + 4,5,5,5,0,0,240,16,32,64,128,4,5,5,5,0, + 0,96,144,96,144,96,4,5,5,5,0,0,96,144,112,16, + 96,1,3,3,3,1,0,128,0,128,2,5,5,3,0,254, + 64,0,64,64,128,4,5,5,5,0,0,16,96,128,96,16, + 3,3,3,4,0,1,224,0,224,4,5,5,5,0,0,128, + 96,16,96,128,4,6,6,5,0,0,96,144,32,64,0,64, + 5,6,6,6,0,0,112,136,168,176,128,112,4,5,5,5, + 0,0,96,144,144,240,144,4,5,5,5,0,0,224,144,224, + 144,224,4,5,5,5,0,0,96,144,128,144,96,4,5,5, + 5,0,0,224,144,144,144,224,4,5,5,5,0,0,240,128, + 224,128,240,4,5,5,5,0,0,240,128,224,128,128,4,5, + 5,5,0,0,96,128,176,144,96,4,5,5,5,0,0,144, + 144,240,144,144,3,5,5,4,0,0,224,64,64,64,224,4, + 5,5,5,0,0,112,16,16,144,96,4,5,5,5,0,0, + 144,144,144,224,144,3,5,5,4,0,0,128,128,128,128,224, + 5,5,5,6,0,0,216,168,168,168,136,4,5,5,5,0, + 0,144,144,208,176,144,4,5,5,5,0,0,96,144,144,144, + 96,4,5,5,5,0,0,224,144,144,224,128,4,5,5,5, + 0,0,96,144,144,80,224,4,5,5,5,0,0,224,144,144, + 224,144,3,5,5,4,0,0,96,128,64,32,192,3,5,5, + 4,0,0,224,64,64,64,64,4,5,5,5,0,0,144,144, + 144,144,96,5,5,5,6,0,0,136,80,80,80,32,5,5, + 5,6,0,0,136,136,136,168,80,4,5,5,5,0,0,144, + 144,144,96,144,4,6,6,5,0,255,144,144,144,112,16,96, + 4,5,5,5,0,0,240,32,64,128,240,2,7,7,3,0, + 255,192,128,128,128,128,128,192,3,6,6,4,0,255,128,128, + 64,64,32,32,2,7,7,3,0,255,192,64,64,64,64,64, + 192,3,2,2,4,0,4,64,160,4,1,1,5,0,255,240, + 2,2,2,3,0,5,128,64,4,4,4,5,0,0,96,144, + 144,112,4,5,5,5,0,0,128,224,144,144,96,3,4,4, + 4,0,0,96,128,128,96,4,5,5,5,0,0,16,112,144, + 144,96,4,4,4,5,0,0,96,144,160,112,4,5,5,5, + 0,0,96,144,128,192,128,4,6,6,5,0,254,96,144,144, + 112,16,96,4,5,5,5,0,0,128,224,144,144,144,1,5, + 5,2,0,0,128,0,128,128,128,3,7,7,3,255,254,32, + 0,32,32,32,32,192,3,5,5,4,0,0,128,160,192,160, + 160,1,5,5,2,0,0,128,128,128,128,128,5,4,4,6, + 0,0,208,168,168,136,4,4,4,5,0,0,224,144,144,144, + 4,4,4,5,0,0,96,144,144,96,4,6,6,5,0,254, + 96,144,144,224,128,128,4,6,6,5,0,254,96,144,144,112, + 16,16,4,4,4,5,0,0,224,144,128,128,4,4,4,5, + 0,0,112,64,32,224,3,5,5,4,0,0,64,224,64,64, + 64,4,4,4,5,0,0,144,144,144,112,4,4,4,5,0, + 0,144,144,144,96,5,4,4,6,0,0,136,168,168,80,4, + 4,4,5,0,0,144,144,96,144,4,6,6,5,0,254,144, + 144,144,112,16,96,4,4,4,5,0,0,240,32,64,240,3, + 7,7,4,0,255,32,64,64,128,64,64,32,1,7,7,2, + 0,255,128,128,128,128,128,128,128,3,7,7,4,0,255,128, + 64,64,32,64,64,128,5,3,3,6,0,1,64,168,16,255 + }; +/* + Fontname: -FreeType-Blipfest 07-Medium-R-Normal--8-80-72-72-P-33-ISO10646-1 + Copyright: Copyright cwillmor 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 3 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_blipfest_07[948] U8G_SECTION(".progmem.u8g_font_blipfest_07") = { + 0,5,6,0,255,5,1,5,2,47,32,255,255,5,255,5, + 255,0,0,0,1,0,0,1,5,5,2,0,0,128,128,128, + 0,128,3,2,2,4,0,3,160,160,255,255,255,4,5,5, + 5,0,0,224,160,240,160,240,1,2,2,2,0,3,128,128, + 255,255,255,3,3,3,4,0,1,64,224,64,1,2,2,2, + 0,0,128,128,3,1,1,4,0,2,224,1,1,1,2,0, + 0,128,255,3,5,5,4,0,0,224,160,160,160,224,2,5, + 5,3,0,0,192,64,64,64,64,3,5,5,4,0,0,224, + 32,224,128,224,3,5,5,4,0,0,224,32,224,32,224,3, + 5,5,4,0,0,160,160,224,32,32,3,5,5,4,0,0, + 224,128,224,32,224,3,5,5,4,0,0,224,128,224,160,224, + 3,5,5,4,0,0,224,32,32,32,32,3,5,5,4,0, + 0,224,160,224,160,224,3,5,5,4,0,0,224,160,224,32, + 224,1,3,3,2,0,0,128,0,128,1,4,4,2,0,255, + 128,0,128,128,255,3,3,3,4,0,1,224,0,224,255,3, + 5,5,4,0,0,224,32,96,0,64,5,5,5,6,0,0, + 248,136,184,168,240,3,5,5,4,0,0,224,160,160,224,160, + 3,5,5,4,0,0,224,160,224,160,224,3,5,5,4,0, + 0,224,128,128,128,224,3,5,5,4,0,0,192,160,160,160, + 192,3,5,5,4,0,0,224,128,224,128,224,3,5,5,4, + 0,0,224,128,224,128,128,3,5,5,4,0,0,224,128,160, + 160,224,3,5,5,4,0,0,160,160,160,224,160,3,5,5, + 4,0,0,224,64,64,64,224,3,5,5,4,0,0,32,32, + 32,160,224,3,5,5,4,0,0,160,160,160,192,160,3,5, + 5,4,0,0,128,128,128,128,224,3,5,5,4,0,0,160, + 224,160,160,160,3,5,5,4,0,0,224,160,160,160,160,3, + 5,5,4,0,0,224,160,160,160,224,3,5,5,4,0,0, + 224,160,160,224,128,3,5,5,4,0,0,224,160,160,224,64, + 3,5,5,4,0,0,224,160,160,192,160,3,5,5,4,0, + 0,224,128,224,32,224,3,5,5,4,0,0,224,64,64,64, + 64,3,5,5,4,0,0,160,160,160,160,224,3,5,5,4, + 0,0,160,160,160,160,64,3,5,5,4,0,0,160,160,160, + 224,224,3,5,5,4,0,0,160,160,64,160,160,3,5,5, + 4,0,0,160,160,160,64,64,3,5,5,4,0,0,224,32, + 224,128,224,255,255,255,255,3,1,1,4,0,0,224,255,3, + 3,3,4,0,0,96,160,224,3,5,5,4,0,0,128,128, + 224,160,224,3,3,3,4,0,0,224,128,224,3,5,5,4, + 0,0,32,32,224,160,224,3,3,3,4,0,0,224,160,192, + 3,5,5,4,0,0,96,64,224,64,64,3,4,4,4,0, + 255,224,160,224,64,3,5,5,4,0,0,128,128,224,160,160, + 1,5,5,2,0,0,128,0,128,128,128,2,5,5,3,0, + 0,64,0,64,64,192,3,5,5,4,0,0,128,128,160,192, + 160,1,5,5,2,0,0,128,128,128,128,128,5,3,3,6, + 0,0,248,168,168,3,3,3,4,0,0,192,160,160,3,3, + 3,4,0,0,224,160,224,3,4,4,4,0,255,224,160,224, + 128,3,4,4,4,0,255,224,160,224,32,3,3,3,4,0, + 0,224,128,128,3,3,3,4,0,0,96,64,192,3,5,5, + 4,0,0,64,224,64,64,96,3,3,3,4,0,0,160,160, + 224,3,3,3,4,0,0,160,160,64,5,3,3,6,0,0, + 168,168,80,3,3,3,4,0,0,160,64,160,3,4,4,4, + 0,255,160,160,224,32,3,3,3,4,0,0,224,64,224,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255}; +/* + Fontname: -FreeType-Blipfest 07-Medium-R-Normal--8-80-72-72-P-33-ISO10646-1 + Copyright: Copyright cwillmor 2008 + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 3 h= 5 x= 0 y= 2 dx= 4 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_blipfest_07n[160] U8G_SECTION(".progmem.u8g_font_blipfest_07n") = { + 0,5,6,0,255,5,0,0,0,0,42,57,0,5,0,5, + 0,255,3,3,3,4,0,1,64,224,64,1,2,2,2,0, + 0,128,128,3,1,1,4,0,2,224,1,1,1,2,0,0, + 128,255,3,5,5,4,0,0,224,160,160,160,224,2,5,5, + 3,0,0,192,64,64,64,64,3,5,5,4,0,0,224,32, + 224,128,224,3,5,5,4,0,0,224,32,224,32,224,3,5, + 5,4,0,0,160,160,224,32,32,3,5,5,4,0,0,224, + 128,224,32,224,3,5,5,4,0,0,224,128,224,160,224,3, + 5,5,4,0,0,224,32,32,32,32,3,5,5,4,0,0, + 224,160,224,160,224,3,5,5,4,0,0,224,160,224,32,224 + }; +/* + Fontname: -FreeType-Blipfest 07-Medium-R-Normal--8-80-72-72-P-33-ISO10646-1 + Copyright: Copyright cwillmor 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 3 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_blipfest_07r[820] U8G_SECTION(".progmem.u8g_font_blipfest_07r") = { + 0,5,6,0,255,5,1,5,2,47,32,127,255,5,255,5, + 255,0,0,0,1,0,0,1,5,5,2,0,0,128,128,128, + 0,128,3,2,2,4,0,3,160,160,255,255,255,4,5,5, + 5,0,0,224,160,240,160,240,1,2,2,2,0,3,128,128, + 255,255,255,3,3,3,4,0,1,64,224,64,1,2,2,2, + 0,0,128,128,3,1,1,4,0,2,224,1,1,1,2,0, + 0,128,255,3,5,5,4,0,0,224,160,160,160,224,2,5, + 5,3,0,0,192,64,64,64,64,3,5,5,4,0,0,224, + 32,224,128,224,3,5,5,4,0,0,224,32,224,32,224,3, + 5,5,4,0,0,160,160,224,32,32,3,5,5,4,0,0, + 224,128,224,32,224,3,5,5,4,0,0,224,128,224,160,224, + 3,5,5,4,0,0,224,32,32,32,32,3,5,5,4,0, + 0,224,160,224,160,224,3,5,5,4,0,0,224,160,224,32, + 224,1,3,3,2,0,0,128,0,128,1,4,4,2,0,255, + 128,0,128,128,255,3,3,3,4,0,1,224,0,224,255,3, + 5,5,4,0,0,224,32,96,0,64,5,5,5,6,0,0, + 248,136,184,168,240,3,5,5,4,0,0,224,160,160,224,160, + 3,5,5,4,0,0,224,160,224,160,224,3,5,5,4,0, + 0,224,128,128,128,224,3,5,5,4,0,0,192,160,160,160, + 192,3,5,5,4,0,0,224,128,224,128,224,3,5,5,4, + 0,0,224,128,224,128,128,3,5,5,4,0,0,224,128,160, + 160,224,3,5,5,4,0,0,160,160,160,224,160,3,5,5, + 4,0,0,224,64,64,64,224,3,5,5,4,0,0,32,32, + 32,160,224,3,5,5,4,0,0,160,160,160,192,160,3,5, + 5,4,0,0,128,128,128,128,224,3,5,5,4,0,0,160, + 224,160,160,160,3,5,5,4,0,0,224,160,160,160,160,3, + 5,5,4,0,0,224,160,160,160,224,3,5,5,4,0,0, + 224,160,160,224,128,3,5,5,4,0,0,224,160,160,224,64, + 3,5,5,4,0,0,224,160,160,192,160,3,5,5,4,0, + 0,224,128,224,32,224,3,5,5,4,0,0,224,64,64,64, + 64,3,5,5,4,0,0,160,160,160,160,224,3,5,5,4, + 0,0,160,160,160,160,64,3,5,5,4,0,0,160,160,160, + 224,224,3,5,5,4,0,0,160,160,64,160,160,3,5,5, + 4,0,0,160,160,160,64,64,3,5,5,4,0,0,224,32, + 224,128,224,255,255,255,255,3,1,1,4,0,0,224,255,3, + 3,3,4,0,0,96,160,224,3,5,5,4,0,0,128,128, + 224,160,224,3,3,3,4,0,0,224,128,224,3,5,5,4, + 0,0,32,32,224,160,224,3,3,3,4,0,0,224,160,192, + 3,5,5,4,0,0,96,64,224,64,64,3,4,4,4,0, + 255,224,160,224,64,3,5,5,4,0,0,128,128,224,160,160, + 1,5,5,2,0,0,128,0,128,128,128,2,5,5,3,0, + 0,64,0,64,64,192,3,5,5,4,0,0,128,128,160,192, + 160,1,5,5,2,0,0,128,128,128,128,128,5,3,3,6, + 0,0,248,168,168,3,3,3,4,0,0,192,160,160,3,3, + 3,4,0,0,224,160,224,3,4,4,4,0,255,224,160,224, + 128,3,4,4,4,0,255,224,160,224,32,3,3,3,4,0, + 0,224,128,128,3,3,3,4,0,0,96,64,192,3,5,5, + 4,0,0,64,224,64,64,96,3,3,3,4,0,0,160,160, + 224,3,3,3,4,0,0,160,160,64,5,3,3,6,0,0, + 168,168,80,3,3,3,4,0,0,160,64,160,3,4,4,4, + 0,255,160,160,224,32,3,3,3,4,0,0,224,64,224,255, + 255,255,255,255}; +/* + Fontname: -FreeType-Chikita-Medium-R-Normal--8-80-72-72-P-47-ISO10646-1 + Copyright: Copyright southernmedia 2008 Chikita is based on pixelspace 5x5 by David Chiu (http://fontstruct.com/fontstructors/skyleth) + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 9 h= 8 x= 1 y= 6 dx=10 dy= 0 ascent= 8 len=10 + Font Bounding box w= 9 h=10 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 6 descent=-2 + Max Font ascent = 8 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_chikita[2236] U8G_SECTION(".progmem.u8g_font_chikita") = { + 0,9,10,0,254,5,1,107,2,195,32,255,254,8,254,6, + 254,0,0,0,2,0,0,1,7,7,2,0,255,128,128,128, + 128,128,0,128,3,2,2,4,0,4,160,160,5,5,5,6, + 0,0,80,248,80,248,80,5,7,7,6,0,255,32,120,160, + 112,40,240,32,5,5,5,6,0,0,200,208,32,88,152,5, + 5,5,6,0,0,32,80,104,144,104,1,2,2,2,0,4, + 128,128,3,7,7,4,0,255,32,64,128,128,128,64,32,3, + 7,7,4,0,255,128,64,32,32,32,64,128,3,3,3,5, + 1,1,160,64,160,5,5,5,6,0,0,32,32,248,32,32, + 2,2,2,3,0,255,64,128,5,1,1,6,0,2,248,1, + 1,1,2,0,0,128,3,5,5,5,1,0,32,32,64,128, + 128,4,5,5,5,0,0,96,144,144,144,96,2,5,5,3, + 0,0,64,192,64,64,64,5,5,5,6,0,0,112,136,48, + 64,248,5,5,5,6,0,0,240,8,112,8,240,5,5,5, + 6,0,0,48,80,144,248,16,5,5,5,6,0,0,248,128, + 240,8,240,5,5,5,6,0,0,120,128,240,136,112,5,5, + 5,6,0,0,248,8,16,32,64,5,5,5,6,0,0,112, + 136,112,136,112,5,5,5,6,0,0,112,136,120,8,240,1, + 3,3,2,0,1,128,0,128,1,4,4,2,0,0,128,0, + 128,128,5,5,5,6,0,0,24,96,128,96,24,5,3,3, + 6,0,1,248,0,248,5,5,5,6,0,0,192,48,8,48, + 192,5,7,7,6,0,255,112,136,16,32,32,0,32,7,7, + 7,8,0,255,124,130,154,170,190,128,124,5,5,5,6,0, + 0,112,136,136,248,136,5,5,5,6,0,0,240,136,240,136, + 240,5,5,5,6,0,0,112,136,128,136,112,5,5,5,6, + 0,0,240,136,136,136,240,5,5,5,6,0,0,248,128,240, + 128,248,5,5,5,6,0,0,248,128,240,128,128,5,5,5, + 6,0,0,112,128,184,136,112,5,5,5,6,0,0,136,136, + 248,136,136,3,5,5,4,0,0,224,64,64,64,224,5,5, + 5,6,0,0,8,8,8,136,112,5,5,5,6,0,0,136, + 144,224,144,136,5,5,5,6,0,0,128,128,128,128,248,5, + 5,5,6,0,0,136,216,168,136,136,5,5,5,6,0,0, + 136,200,168,152,136,5,5,5,6,0,0,112,136,136,136,112, + 5,5,5,6,0,0,240,136,136,240,128,5,5,5,6,0, + 0,112,136,136,152,120,5,5,5,6,0,0,240,136,136,240, + 136,5,5,5,6,0,0,120,128,112,8,240,5,5,5,6, + 0,0,248,32,32,32,32,5,5,5,6,0,0,136,136,136, + 136,112,5,5,5,6,0,0,136,136,136,80,32,5,5,5, + 6,0,0,136,168,168,168,80,5,5,5,6,0,0,136,80, + 32,80,136,5,5,5,6,0,0,136,136,80,32,32,5,5, + 5,6,0,0,248,16,32,64,248,2,6,6,3,0,255,192, + 128,128,128,128,192,3,5,5,4,0,0,128,128,64,32,32, + 2,6,6,3,0,255,192,64,64,64,64,192,3,2,2,4, + 0,4,64,160,5,1,1,6,0,255,248,2,2,2,3,0, + 4,128,64,4,4,4,5,0,0,112,144,144,240,4,5,5, + 5,0,0,128,224,144,144,224,4,4,4,5,0,0,112,128, + 128,112,4,5,5,5,0,0,16,112,144,144,112,4,4,4, + 5,0,0,96,144,224,112,4,5,5,5,0,0,48,64,240, + 64,64,4,6,6,5,0,254,112,144,144,240,16,224,4,5, + 5,5,0,0,128,224,144,144,144,1,5,5,2,0,0,128, + 0,128,128,128,2,7,7,3,0,254,64,0,64,64,64,64, + 128,4,5,5,5,0,0,128,144,160,224,144,1,5,5,2, + 0,0,128,128,128,128,128,6,4,4,7,0,0,168,212,148, + 148,4,4,4,5,0,0,160,208,144,144,4,4,4,5,0, + 0,96,144,144,96,4,6,6,5,0,254,224,144,144,224,128, + 128,4,6,6,5,0,254,112,144,144,112,16,16,4,4,4, + 5,0,0,176,192,128,128,4,4,4,5,0,0,112,192,48, + 224,4,5,5,5,0,0,64,240,64,64,48,4,4,4,5, + 0,0,144,144,144,112,5,4,4,6,0,0,136,136,80,32, + 5,4,4,6,0,0,136,136,168,80,4,4,4,5,0,0, + 144,96,96,144,4,6,6,5,0,254,144,144,144,112,16,224, + 4,4,4,5,0,0,240,32,64,240,3,6,6,4,0,255, + 96,64,128,128,64,96,1,6,6,2,0,255,128,128,128,128, + 128,128,3,6,6,4,0,255,192,64,32,32,64,192,5,3, + 3,6,0,1,64,168,16,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,1,7,7,2,0,255,128, + 0,128,128,128,128,128,3,5,5,4,0,0,64,224,128,224, + 64,5,6,6,6,0,0,112,136,72,224,64,248,5,5,5, + 6,0,0,136,112,80,112,136,5,6,6,6,0,0,136,80, + 32,112,112,32,1,5,5,2,0,0,128,128,0,128,128,4, + 7,7,5,0,254,112,128,96,144,96,16,224,3,1,1,4, + 0,6,160,7,7,7,8,0,255,124,130,186,162,186,130,124, + 3,4,4,4,0,4,96,224,160,96,6,5,5,7,0,0, + 36,72,144,72,36,5,3,3,6,0,2,248,8,8,3,1, + 1,5,1,2,224,7,7,7,8,0,255,124,130,186,178,170, + 130,124,5,1,1,6,0,6,248,4,4,4,5,0,3,96, + 144,144,96,3,5,5,5,1,0,64,224,64,0,224,4,5, + 5,5,0,2,96,144,32,64,240,4,5,5,5,0,2,224, + 16,96,16,224,2,2,2,3,0,5,64,128,5,6,6,6, + 0,254,136,136,216,168,128,128,6,7,7,7,0,254,124,232, + 232,104,40,40,40,3,3,3,5,1,1,224,224,224,3,3, + 3,5,1,254,64,32,224,2,5,5,3,0,2,64,192,64, + 64,64,4,5,5,5,0,2,96,144,144,144,96,6,5,5, + 7,0,0,144,72,36,72,144,7,8,8,8,0,254,66,196, + 72,80,38,74,142,2,7,8,8,8,0,254,66,196,72,80, + 44,66,132,14,7,8,8,8,0,254,226,68,40,208,38,74, + 142,2,5,7,7,6,0,255,32,0,32,32,72,136,112,5, + 8,8,6,0,0,64,32,0,112,136,136,248,136,5,8,8, + 6,0,0,16,32,0,112,136,136,248,136,5,8,8,6,0, + 0,32,80,0,112,136,136,248,136,5,8,8,6,0,0,40, + 80,0,112,136,136,248,136,5,7,7,6,0,0,80,0,112, + 136,136,248,136,5,8,8,6,0,0,32,80,32,112,136,136, + 248,136,9,5,10,10,0,0,63,128,72,0,143,0,248,0, + 143,128,5,7,7,6,0,254,112,136,128,136,112,16,112,5, + 8,8,6,0,0,64,32,0,248,128,240,128,248,5,8,8, + 6,0,0,16,32,0,248,128,240,128,248,5,8,8,6,0, + 0,32,80,0,248,128,240,128,248,5,7,7,6,0,0,80, + 0,248,128,240,128,248,3,8,8,4,0,0,128,64,0,224, + 64,64,64,224,3,8,8,4,0,0,32,64,0,224,64,64, + 64,224,3,8,8,4,0,0,64,160,0,224,64,64,64,224, + 3,7,7,4,0,0,160,0,224,64,64,64,224,5,5,5, + 6,0,0,112,72,232,72,112,5,8,8,6,0,0,40,80, + 0,136,200,168,152,136,5,8,8,6,0,0,64,32,0,112, + 136,136,136,112,5,8,8,6,0,0,16,32,0,112,136,136, + 136,112,5,8,8,6,0,0,32,80,0,112,136,136,136,112, + 5,8,8,6,0,0,64,168,16,112,136,136,136,112,5,7, + 7,6,0,0,80,0,112,136,136,136,112,3,3,3,4,0, + 1,160,64,160,5,5,5,6,0,0,120,152,168,200,240,5, + 8,8,6,0,0,64,32,0,136,136,136,136,112,5,8,8, + 6,0,0,16,32,0,136,136,136,136,112,5,8,8,6,0, + 0,32,80,0,136,136,136,136,112,5,7,7,6,0,0,80, + 0,136,136,136,136,112,5,8,8,6,0,0,16,32,0,136, + 136,80,32,32,5,5,5,6,0,0,128,240,136,240,128,4, + 5,5,5,0,0,96,144,160,144,160,4,7,7,5,0,0, + 64,32,0,112,144,144,240,4,7,7,5,0,0,32,64,0, + 112,144,144,240,4,7,7,5,0,0,32,80,0,112,144,144, + 240,4,7,7,5,0,0,80,160,0,112,144,144,240,4,6, + 6,5,0,0,80,0,112,144,144,240,4,7,7,5,0,0, + 32,80,32,112,144,144,240,7,5,5,8,0,0,236,18,126, + 144,238,4,6,6,5,0,254,112,128,128,112,32,96,4,7, + 7,5,0,0,64,32,0,96,144,224,112,4,7,7,5,0, + 0,32,64,0,96,144,224,112,4,7,7,5,0,0,32,80, + 0,96,144,224,112,4,6,6,5,0,0,80,0,96,144,224, + 112,2,7,7,3,0,0,128,64,0,64,64,64,64,2,7, + 7,3,0,0,64,128,0,128,128,128,128,3,7,7,4,0, + 0,64,160,0,64,64,64,64,3,6,6,4,0,0,160,0, + 64,64,64,64,4,6,6,5,0,0,64,32,112,144,144,96, + 4,7,7,5,0,0,80,160,0,160,208,144,144,4,7,7, + 5,0,0,64,32,0,96,144,144,96,4,7,7,5,0,0, + 32,64,0,96,144,144,96,4,7,7,5,0,0,96,144,0, + 96,144,144,96,4,7,7,5,0,0,80,160,0,96,144,144, + 96,4,6,6,5,0,0,80,0,96,144,144,96,5,5,5, + 6,0,0,32,0,248,0,32,4,4,4,5,0,0,112,176, + 208,224,4,7,7,5,0,0,64,32,0,144,144,144,112,4, + 7,7,5,0,0,32,64,0,144,144,144,112,4,7,7,5, + 0,0,32,80,0,144,144,144,112,4,6,6,5,0,0,80, + 0,144,144,144,112,4,8,8,5,0,254,32,64,0,144,144, + 112,16,224,4,6,6,5,0,254,128,224,144,144,224,128,4, + 7,7,5,0,254,80,0,144,144,112,16,224}; +/* + Fontname: -FreeType-Chikita-Medium-R-Normal--8-80-72-72-P-47-ISO10646-1 + Copyright: Copyright southernmedia 2008 Chikita is based on pixelspace 5x5 by David Chiu (http://fontstruct.com/fontstructors/skyleth) + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 1 y= 2 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 9 h=10 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_chikitan[180] U8G_SECTION(".progmem.u8g_font_chikitan") = { + 0,9,10,0,254,5,0,0,0,0,42,57,0,5,255,5, + 0,3,3,3,5,1,1,160,64,160,5,5,5,6,0,0, + 32,32,248,32,32,2,2,2,3,0,255,64,128,5,1,1, + 6,0,2,248,1,1,1,2,0,0,128,3,5,5,5,1, + 0,32,32,64,128,128,4,5,5,5,0,0,96,144,144,144, + 96,2,5,5,3,0,0,64,192,64,64,64,5,5,5,6, + 0,0,112,136,48,64,248,5,5,5,6,0,0,240,8,112, + 8,240,5,5,5,6,0,0,48,80,144,248,16,5,5,5, + 6,0,0,248,128,240,8,240,5,5,5,6,0,0,120,128, + 240,136,112,5,5,5,6,0,0,248,8,16,32,64,5,5, + 5,6,0,0,112,136,112,136,112,5,5,5,6,0,0,112, + 136,120,8,240}; +/* + Fontname: -FreeType-Chikita-Medium-R-Normal--8-80-72-72-P-47-ISO10646-1 + Copyright: Copyright southernmedia 2008 Chikita is based on pixelspace 5x5 by David Chiu (http://fontstruct.com/fontstructors/skyleth) + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 7 h= 7 x= 1 y= 4 dx= 8 dy= 0 ascent= 6 len= 7 + Font Bounding box w= 9 h=10 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 6 descent=-2 + Max Font ascent = 6 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_chikitar[1032] U8G_SECTION(".progmem.u8g_font_chikitar") = { + 0,9,10,0,254,5,1,107,2,195,32,127,254,6,254,6, + 254,0,0,0,2,0,0,1,7,7,2,0,255,128,128,128, + 128,128,0,128,3,2,2,4,0,4,160,160,5,5,5,6, + 0,0,80,248,80,248,80,5,7,7,6,0,255,32,120,160, + 112,40,240,32,5,5,5,6,0,0,200,208,32,88,152,5, + 5,5,6,0,0,32,80,104,144,104,1,2,2,2,0,4, + 128,128,3,7,7,4,0,255,32,64,128,128,128,64,32,3, + 7,7,4,0,255,128,64,32,32,32,64,128,3,3,3,5, + 1,1,160,64,160,5,5,5,6,0,0,32,32,248,32,32, + 2,2,2,3,0,255,64,128,5,1,1,6,0,2,248,1, + 1,1,2,0,0,128,3,5,5,5,1,0,32,32,64,128, + 128,4,5,5,5,0,0,96,144,144,144,96,2,5,5,3, + 0,0,64,192,64,64,64,5,5,5,6,0,0,112,136,48, + 64,248,5,5,5,6,0,0,240,8,112,8,240,5,5,5, + 6,0,0,48,80,144,248,16,5,5,5,6,0,0,248,128, + 240,8,240,5,5,5,6,0,0,120,128,240,136,112,5,5, + 5,6,0,0,248,8,16,32,64,5,5,5,6,0,0,112, + 136,112,136,112,5,5,5,6,0,0,112,136,120,8,240,1, + 3,3,2,0,1,128,0,128,1,4,4,2,0,0,128,0, + 128,128,5,5,5,6,0,0,24,96,128,96,24,5,3,3, + 6,0,1,248,0,248,5,5,5,6,0,0,192,48,8,48, + 192,5,7,7,6,0,255,112,136,16,32,32,0,32,7,7, + 7,8,0,255,124,130,154,170,190,128,124,5,5,5,6,0, + 0,112,136,136,248,136,5,5,5,6,0,0,240,136,240,136, + 240,5,5,5,6,0,0,112,136,128,136,112,5,5,5,6, + 0,0,240,136,136,136,240,5,5,5,6,0,0,248,128,240, + 128,248,5,5,5,6,0,0,248,128,240,128,128,5,5,5, + 6,0,0,112,128,184,136,112,5,5,5,6,0,0,136,136, + 248,136,136,3,5,5,4,0,0,224,64,64,64,224,5,5, + 5,6,0,0,8,8,8,136,112,5,5,5,6,0,0,136, + 144,224,144,136,5,5,5,6,0,0,128,128,128,128,248,5, + 5,5,6,0,0,136,216,168,136,136,5,5,5,6,0,0, + 136,200,168,152,136,5,5,5,6,0,0,112,136,136,136,112, + 5,5,5,6,0,0,240,136,136,240,128,5,5,5,6,0, + 0,112,136,136,152,120,5,5,5,6,0,0,240,136,136,240, + 136,5,5,5,6,0,0,120,128,112,8,240,5,5,5,6, + 0,0,248,32,32,32,32,5,5,5,6,0,0,136,136,136, + 136,112,5,5,5,6,0,0,136,136,136,80,32,5,5,5, + 6,0,0,136,168,168,168,80,5,5,5,6,0,0,136,80, + 32,80,136,5,5,5,6,0,0,136,136,80,32,32,5,5, + 5,6,0,0,248,16,32,64,248,2,6,6,3,0,255,192, + 128,128,128,128,192,3,5,5,4,0,0,128,128,64,32,32, + 2,6,6,3,0,255,192,64,64,64,64,192,3,2,2,4, + 0,4,64,160,5,1,1,6,0,255,248,2,2,2,3,0, + 4,128,64,4,4,4,5,0,0,112,144,144,240,4,5,5, + 5,0,0,128,224,144,144,224,4,4,4,5,0,0,112,128, + 128,112,4,5,5,5,0,0,16,112,144,144,112,4,4,4, + 5,0,0,96,144,224,112,4,5,5,5,0,0,48,64,240, + 64,64,4,6,6,5,0,254,112,144,144,240,16,224,4,5, + 5,5,0,0,128,224,144,144,144,1,5,5,2,0,0,128, + 0,128,128,128,2,7,7,3,0,254,64,0,64,64,64,64, + 128,4,5,5,5,0,0,128,144,160,224,144,1,5,5,2, + 0,0,128,128,128,128,128,6,4,4,7,0,0,168,212,148, + 148,4,4,4,5,0,0,160,208,144,144,4,4,4,5,0, + 0,96,144,144,96,4,6,6,5,0,254,224,144,144,224,128, + 128,4,6,6,5,0,254,112,144,144,112,16,16,4,4,4, + 5,0,0,176,192,128,128,4,4,4,5,0,0,112,192,48, + 224,4,5,5,5,0,0,64,240,64,64,48,4,4,4,5, + 0,0,144,144,144,112,5,4,4,6,0,0,136,136,80,32, + 5,4,4,6,0,0,136,136,168,80,4,4,4,5,0,0, + 144,96,96,144,4,6,6,5,0,254,144,144,144,112,16,224, + 4,4,4,5,0,0,240,32,64,240,3,6,6,4,0,255, + 96,64,128,128,64,96,1,6,6,2,0,255,128,128,128,128, + 128,128,3,6,6,4,0,255,192,64,32,32,64,192,5,3, + 3,6,0,1,64,168,16,255}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--11-80-100-100-M-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 6, '1' Height: 7 + Calculated Max Values w= 7 h=10 x= 2 y= 6 dx= 6 dy= 0 ascent= 9 len=10 + Font Bounding box w=12 h=16 x=-3 y=-4 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB08[2425] U8G_SECTION(".progmem.u8g_font_courB08") = { + 0,12,16,253,252,6,1,146,3,13,32,255,254,9,254,7, + 254,0,0,0,6,0,1,2,6,6,6,1,0,192,192,192, + 192,0,192,3,3,3,6,1,3,160,160,160,5,8,8,6, + 0,255,80,80,248,80,80,248,80,80,5,9,9,6,0,255, + 32,120,200,240,120,24,216,240,32,5,7,7,6,0,0,224, + 168,240,32,120,168,56,6,6,6,6,255,0,56,96,48,124, + 216,124,1,3,3,6,2,3,128,128,128,3,8,8,6,1, + 255,32,64,192,192,192,192,64,32,3,8,8,6,1,255,128, + 64,96,96,96,96,64,128,4,4,4,6,0,3,32,240,96, + 144,5,5,5,6,0,1,32,32,248,32,32,3,3,3,6, + 1,254,96,64,128,5,1,1,6,0,3,248,2,1,1,6, + 1,0,192,4,8,8,6,1,255,16,16,32,32,64,64,128, + 128,5,7,7,6,0,0,112,216,216,216,216,216,112,6,7, + 7,6,0,0,48,240,48,48,48,48,252,5,7,7,6,0, + 0,112,216,24,48,96,216,248,5,7,7,6,0,0,112,216, + 24,112,24,216,112,6,7,7,6,0,0,24,56,88,216,252, + 24,24,5,7,7,6,0,0,248,192,240,216,24,152,240,5, + 7,7,6,0,0,112,216,192,240,216,216,112,5,7,7,6, + 0,0,248,216,24,48,48,96,96,5,7,7,6,0,0,112, + 216,216,112,216,216,112,5,7,7,6,0,0,112,216,216,120, + 24,216,112,2,4,4,6,1,0,192,0,0,192,3,6,6, + 6,0,254,96,0,0,96,64,128,4,5,5,6,0,1,48, + 96,192,96,48,4,3,3,6,0,2,240,0,240,4,5,5, + 6,1,1,192,96,48,96,192,5,6,6,6,0,0,112,152, + 48,96,0,96,6,8,8,6,0,255,112,200,152,168,168,156, + 192,112,7,6,6,6,255,0,120,56,40,124,108,238,6,6, + 6,6,255,0,248,108,120,108,108,248,5,6,6,6,0,0, + 120,216,192,192,216,112,6,6,6,6,255,0,248,108,108,108, + 108,248,6,6,6,6,255,0,252,96,120,96,108,252,6,6, + 6,6,255,0,252,96,120,96,96,240,5,6,6,6,0,0, + 112,216,192,248,216,120,7,6,6,6,255,0,238,108,124,108, + 108,238,4,6,6,6,0,0,240,96,96,96,96,240,6,6, + 6,6,255,0,60,24,24,216,216,112,7,6,6,6,255,0, + 236,104,112,120,108,246,6,6,6,6,255,0,240,96,96,96, + 108,252,6,6,6,6,255,0,196,108,108,124,84,212,7,6, + 6,6,255,0,238,116,116,108,108,228,5,6,6,6,0,0, + 112,216,216,216,216,112,6,6,6,6,255,0,248,108,108,120, + 96,240,5,7,7,6,0,255,112,216,216,216,216,112,24,7, + 6,6,6,255,0,248,108,108,120,108,246,5,6,6,6,0, + 0,120,200,240,56,152,240,6,6,6,6,255,0,252,180,48, + 48,48,120,7,6,6,6,255,0,238,108,108,108,108,56,7, + 6,6,6,255,0,238,108,40,56,56,16,7,6,6,6,255, + 0,214,84,84,124,56,40,6,6,6,6,0,0,204,120,48, + 48,120,204,7,6,6,6,255,0,230,102,60,24,24,60,5, + 6,6,6,0,0,248,216,48,96,216,248,3,8,8,6,1, + 255,224,192,192,192,192,192,192,224,4,8,8,6,0,255,128, + 128,64,64,32,32,16,16,3,8,8,6,1,255,224,96,96, + 96,96,96,96,224,5,3,3,6,0,4,32,112,216,6,1, + 1,6,0,254,252,2,2,2,6,2,6,128,64,6,5,5, + 6,0,0,112,216,120,216,252,6,7,7,6,255,0,224,96, + 120,108,108,108,248,5,5,5,6,0,0,112,216,192,216,112, + 6,7,7,6,0,0,56,24,120,216,216,216,124,5,5,5, + 6,0,0,112,216,248,192,120,5,7,7,6,0,0,56,96, + 248,96,96,96,248,6,7,7,6,0,254,108,216,216,216,120, + 24,240,6,7,7,6,255,0,224,96,120,108,108,108,108,6, + 7,7,6,0,0,48,0,240,48,48,48,252,4,9,9,6, + 0,254,48,0,240,48,48,48,48,48,224,7,7,7,6,255, + 0,224,96,108,120,112,120,110,6,7,7,6,0,0,240,48, + 48,48,48,48,252,6,5,5,6,255,0,248,124,84,84,84, + 6,5,5,6,255,0,216,108,108,108,108,5,5,5,6,0, + 0,112,216,216,216,112,6,7,7,6,255,254,248,108,108,108, + 120,96,240,6,7,7,6,0,254,108,216,216,216,120,24,60, + 6,5,5,6,0,0,220,116,96,96,240,6,5,5,6,0, + 0,120,224,120,28,248,6,7,7,6,0,0,96,96,248,96, + 96,108,56,7,5,5,6,255,0,236,108,108,108,62,6,5, + 5,6,255,0,236,108,56,56,16,7,5,5,6,255,0,214, + 84,124,60,40,6,5,5,6,0,0,236,120,48,120,220,7, + 7,7,6,255,254,238,108,108,40,56,48,224,5,5,5,6, + 0,0,248,176,96,216,248,4,8,8,6,1,255,48,96,96, + 192,96,96,96,48,1,7,7,6,2,255,128,128,128,128,128, + 128,128,4,8,8,6,0,255,192,96,96,48,96,96,96,192, + 5,2,2,6,0,3,104,176,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,0,0,0,6,0,1,2, + 7,7,6,1,254,192,0,192,192,192,192,192,5,8,8,6, + 0,255,32,32,120,200,192,120,32,32,6,7,7,6,0,0, + 56,104,32,248,32,100,248,5,5,5,6,0,1,136,112,80, + 112,136,6,7,7,6,0,0,204,72,252,48,252,48,120,1, + 9,9,6,2,254,128,128,128,128,0,128,128,128,128,5,8, + 8,6,0,255,120,72,96,144,72,48,144,240,3,1,1,6, + 1,5,160,6,7,7,6,0,0,48,72,180,164,180,72,48, + 4,5,5,6,1,2,224,16,208,0,240,7,5,5,6,255, + 0,54,108,216,108,54,5,3,3,6,0,2,248,8,8,5, + 1,1,6,0,3,248,7,7,7,6,0,0,56,68,186,178, + 170,68,56,4,1,1,6,0,5,240,4,3,3,6,0,4, + 96,144,96,5,6,6,6,0,0,32,32,248,32,0,248,3, + 4,4,6,1,3,96,160,64,224,3,4,4,6,1,3,224, + 64,32,192,2,2,2,6,2,5,64,128,7,7,7,6,255, + 254,236,108,108,108,126,64,64,6,8,8,6,0,255,124,168, + 168,104,40,40,40,108,2,1,1,6,1,3,192,3,3,3, + 6,1,254,64,32,192,3,4,4,6,1,3,192,64,64,224, + 4,5,5,6,1,2,96,144,96,0,240,7,5,5,6,255, + 0,216,108,54,108,216,7,7,7,6,255,0,192,68,72,244, + 44,94,4,7,7,7,6,255,0,192,68,72,246,42,68,14, + 7,7,7,6,255,0,224,68,40,212,44,94,4,5,7,7, + 6,0,254,48,0,48,48,96,200,112,7,9,9,6,255,0, + 32,16,0,120,56,40,124,108,238,7,9,9,6,255,0,16, + 32,0,120,56,40,124,108,238,7,9,9,6,255,0,16,40, + 0,120,56,40,124,108,238,7,9,9,6,255,0,52,72,0, + 120,56,40,124,108,238,7,8,8,6,255,0,40,0,120,56, + 40,124,108,238,7,9,9,6,255,0,48,72,48,120,56,40, + 124,108,238,7,6,6,6,255,0,126,58,108,120,218,222,5, + 8,8,6,0,254,120,216,192,192,216,112,16,96,6,9,9, + 6,255,0,32,16,0,252,100,120,96,108,252,6,9,9,6, + 255,0,16,32,0,252,100,120,96,108,252,6,9,9,6,255, + 0,32,80,0,252,100,120,96,108,252,6,8,8,6,255,0, + 80,0,252,100,120,96,108,252,4,9,9,6,0,0,64,32, + 0,240,96,96,96,96,240,4,9,9,6,0,0,32,64,0, + 240,96,96,96,96,240,4,9,9,6,0,0,64,160,0,240, + 96,96,96,96,240,4,8,8,6,0,0,160,0,240,96,96, + 96,96,240,6,6,6,6,255,0,248,108,244,100,108,248,7, + 9,9,6,255,0,52,72,0,238,100,116,124,108,236,5,9, + 9,6,0,0,64,32,0,112,216,216,216,216,112,5,9,9, + 6,0,0,32,64,0,112,216,216,216,216,112,5,9,9,6, + 0,0,32,80,0,112,216,216,216,216,112,5,9,9,6,0, + 0,104,144,0,112,216,216,216,216,112,5,8,8,6,0,0, + 80,0,112,216,216,216,216,112,5,5,5,6,0,1,136,80, + 32,80,136,7,6,6,6,255,0,58,108,124,108,108,184,7, + 9,9,6,255,0,32,16,0,238,108,108,108,108,56,7,9, + 9,6,255,0,8,16,0,238,108,108,108,108,56,7,9,9, + 6,255,0,16,40,0,238,108,108,108,108,56,7,8,8,6, + 255,0,40,0,238,108,108,108,108,56,7,9,9,6,255,0, + 4,8,0,230,102,60,24,24,60,6,6,6,6,255,0,224, + 120,108,108,120,224,7,6,6,6,255,0,56,104,124,102,102, + 236,6,8,8,6,0,0,32,16,0,112,152,120,216,252,6, + 8,8,6,0,0,16,32,0,112,152,120,216,252,6,8,8, + 6,0,0,32,80,0,112,152,120,216,252,6,8,8,6,0, + 0,104,144,0,112,152,120,216,252,6,7,7,6,0,0,80, + 0,112,152,120,216,252,6,9,9,6,0,0,48,72,48,0, + 112,152,120,216,252,6,5,5,6,255,0,108,180,124,176,220, + 5,7,7,6,0,254,112,216,192,216,112,16,96,5,8,8, + 6,0,0,64,32,0,112,216,248,192,120,5,8,8,6,0, + 0,32,64,0,112,216,248,192,120,5,8,8,6,0,0,32, + 80,0,112,216,248,192,120,5,7,7,6,0,0,80,0,112, + 216,248,192,120,6,8,8,6,0,0,32,16,0,112,48,48, + 48,252,6,8,8,6,0,0,16,32,0,112,48,48,48,252, + 6,8,8,6,0,0,32,80,0,112,48,48,48,252,6,7, + 7,6,0,0,80,0,112,48,48,48,252,5,8,8,6,0, + 0,208,96,176,120,216,216,216,112,7,8,8,6,255,0,52, + 72,0,216,108,108,108,110,5,8,8,6,0,0,64,32,0, + 112,216,216,216,112,5,8,8,6,0,0,32,64,0,112,216, + 216,216,112,5,8,8,6,0,0,32,80,0,112,216,216,216, + 112,5,8,8,6,0,0,104,144,0,112,216,216,216,112,5, + 7,7,6,0,0,80,0,112,216,216,216,112,5,5,5,6, + 0,1,32,0,248,0,32,5,7,7,6,0,255,8,112,216, + 248,216,112,128,7,8,8,6,255,0,32,16,0,236,108,108, + 108,62,7,8,8,6,255,0,16,32,0,236,108,108,108,62, + 7,8,8,6,255,0,16,40,0,236,108,108,108,62,7,7, + 7,6,255,0,40,0,236,108,108,108,62,7,10,10,6,255, + 254,8,16,0,238,108,108,40,56,48,240,6,9,9,6,255, + 254,224,96,120,108,108,108,120,96,240,7,9,9,6,255,254, + 40,0,238,108,108,40,56,48,240}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--11-80-100-100-M-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 6, '1' Height: 7 + Calculated Max Values w= 7 h= 9 x= 2 y= 6 dx= 6 dy= 0 ascent= 8 len= 9 + Font Bounding box w=12 h=16 x=-3 y=-4 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 8 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB08r[1145] U8G_SECTION(".progmem.u8g_font_courB08r") = { + 0,12,16,253,252,6,1,146,3,13,32,127,254,8,254,7, + 254,0,0,0,6,0,1,2,6,6,6,1,0,192,192,192, + 192,0,192,3,3,3,6,1,3,160,160,160,5,8,8,6, + 0,255,80,80,248,80,80,248,80,80,5,9,9,6,0,255, + 32,120,200,240,120,24,216,240,32,5,7,7,6,0,0,224, + 168,240,32,120,168,56,6,6,6,6,255,0,56,96,48,124, + 216,124,1,3,3,6,2,3,128,128,128,3,8,8,6,1, + 255,32,64,192,192,192,192,64,32,3,8,8,6,1,255,128, + 64,96,96,96,96,64,128,4,4,4,6,0,3,32,240,96, + 144,5,5,5,6,0,1,32,32,248,32,32,3,3,3,6, + 1,254,96,64,128,5,1,1,6,0,3,248,2,1,1,6, + 1,0,192,4,8,8,6,1,255,16,16,32,32,64,64,128, + 128,5,7,7,6,0,0,112,216,216,216,216,216,112,6,7, + 7,6,0,0,48,240,48,48,48,48,252,5,7,7,6,0, + 0,112,216,24,48,96,216,248,5,7,7,6,0,0,112,216, + 24,112,24,216,112,6,7,7,6,0,0,24,56,88,216,252, + 24,24,5,7,7,6,0,0,248,192,240,216,24,152,240,5, + 7,7,6,0,0,112,216,192,240,216,216,112,5,7,7,6, + 0,0,248,216,24,48,48,96,96,5,7,7,6,0,0,112, + 216,216,112,216,216,112,5,7,7,6,0,0,112,216,216,120, + 24,216,112,2,4,4,6,1,0,192,0,0,192,3,6,6, + 6,0,254,96,0,0,96,64,128,4,5,5,6,0,1,48, + 96,192,96,48,4,3,3,6,0,2,240,0,240,4,5,5, + 6,1,1,192,96,48,96,192,5,6,6,6,0,0,112,152, + 48,96,0,96,6,8,8,6,0,255,112,200,152,168,168,156, + 192,112,7,6,6,6,255,0,120,56,40,124,108,238,6,6, + 6,6,255,0,248,108,120,108,108,248,5,6,6,6,0,0, + 120,216,192,192,216,112,6,6,6,6,255,0,248,108,108,108, + 108,248,6,6,6,6,255,0,252,96,120,96,108,252,6,6, + 6,6,255,0,252,96,120,96,96,240,5,6,6,6,0,0, + 112,216,192,248,216,120,7,6,6,6,255,0,238,108,124,108, + 108,238,4,6,6,6,0,0,240,96,96,96,96,240,6,6, + 6,6,255,0,60,24,24,216,216,112,7,6,6,6,255,0, + 236,104,112,120,108,246,6,6,6,6,255,0,240,96,96,96, + 108,252,6,6,6,6,255,0,196,108,108,124,84,212,7,6, + 6,6,255,0,238,116,116,108,108,228,5,6,6,6,0,0, + 112,216,216,216,216,112,6,6,6,6,255,0,248,108,108,120, + 96,240,5,7,7,6,0,255,112,216,216,216,216,112,24,7, + 6,6,6,255,0,248,108,108,120,108,246,5,6,6,6,0, + 0,120,200,240,56,152,240,6,6,6,6,255,0,252,180,48, + 48,48,120,7,6,6,6,255,0,238,108,108,108,108,56,7, + 6,6,6,255,0,238,108,40,56,56,16,7,6,6,6,255, + 0,214,84,84,124,56,40,6,6,6,6,0,0,204,120,48, + 48,120,204,7,6,6,6,255,0,230,102,60,24,24,60,5, + 6,6,6,0,0,248,216,48,96,216,248,3,8,8,6,1, + 255,224,192,192,192,192,192,192,224,4,8,8,6,0,255,128, + 128,64,64,32,32,16,16,3,8,8,6,1,255,224,96,96, + 96,96,96,96,224,5,3,3,6,0,4,32,112,216,6,1, + 1,6,0,254,252,2,2,2,6,2,6,128,64,6,5,5, + 6,0,0,112,216,120,216,252,6,7,7,6,255,0,224,96, + 120,108,108,108,248,5,5,5,6,0,0,112,216,192,216,112, + 6,7,7,6,0,0,56,24,120,216,216,216,124,5,5,5, + 6,0,0,112,216,248,192,120,5,7,7,6,0,0,56,96, + 248,96,96,96,248,6,7,7,6,0,254,108,216,216,216,120, + 24,240,6,7,7,6,255,0,224,96,120,108,108,108,108,6, + 7,7,6,0,0,48,0,240,48,48,48,252,4,9,9,6, + 0,254,48,0,240,48,48,48,48,48,224,7,7,7,6,255, + 0,224,96,108,120,112,120,110,6,7,7,6,0,0,240,48, + 48,48,48,48,252,6,5,5,6,255,0,248,124,84,84,84, + 6,5,5,6,255,0,216,108,108,108,108,5,5,5,6,0, + 0,112,216,216,216,112,6,7,7,6,255,254,248,108,108,108, + 120,96,240,6,7,7,6,0,254,108,216,216,216,120,24,60, + 6,5,5,6,0,0,220,116,96,96,240,6,5,5,6,0, + 0,120,224,120,28,248,6,7,7,6,0,0,96,96,248,96, + 96,108,56,7,5,5,6,255,0,236,108,108,108,62,6,5, + 5,6,255,0,236,108,56,56,16,7,5,5,6,255,0,214, + 84,124,60,40,6,5,5,6,0,0,236,120,48,120,220,7, + 7,7,6,255,254,238,108,108,40,56,48,224,5,5,5,6, + 0,0,248,176,96,216,248,4,8,8,6,1,255,48,96,96, + 192,96,96,96,48,1,7,7,6,2,255,128,128,128,128,128, + 128,128,4,8,8,6,0,255,192,96,96,48,96,96,96,192, + 5,2,2,6,0,3,104,176,255}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--14-100-100-100-M-90-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 9, '1' Height: 10 + Calculated Max Values w=10 h=13 x= 3 y= 8 dx= 9 dy= 0 ascent=12 len=26 + Font Bounding box w=13 h=21 x=-2 y=-6 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =12 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB10[3355] U8G_SECTION(".progmem.u8g_font_courB10") = { + 0,13,21,254,250,9,1,222,4,32,32,255,253,12,252,10, + 253,0,0,0,9,0,1,2,9,9,9,3,0,192,192,192, + 192,192,128,0,192,192,5,4,4,9,2,6,216,216,216,72, + 7,11,11,9,1,255,40,40,40,254,40,40,254,40,40,40, + 40,6,12,12,9,1,255,48,48,124,204,192,240,60,12,204, + 248,48,48,7,10,10,9,1,0,96,144,146,108,16,96,152, + 36,36,24,7,8,8,9,1,0,56,96,96,48,122,204,204, + 118,2,4,4,9,3,5,192,192,192,64,4,11,11,9,2, + 254,48,96,96,192,192,192,192,192,96,96,48,4,11,11,9, + 2,254,192,96,96,48,48,48,48,48,96,96,192,5,5,5, + 9,2,4,32,168,248,112,216,7,7,7,9,1,1,16,16, + 16,254,16,16,16,3,4,4,9,2,254,96,96,192,128,6, + 1,1,9,1,4,252,2,2,2,9,3,0,192,192,7,12, + 12,9,0,254,6,6,12,12,24,24,48,48,96,96,192,192, + 7,10,10,9,1,0,56,108,198,198,198,198,198,198,108,56, + 6,10,10,9,2,0,48,240,48,48,48,48,48,48,48,252, + 6,10,10,9,1,0,120,204,204,12,12,24,48,96,192,252, + 6,10,10,9,1,0,120,204,12,12,56,12,12,12,204,120, + 7,10,10,9,1,0,12,28,60,44,76,204,140,254,12,30, + 6,10,10,9,1,0,252,192,192,248,204,12,12,12,204,120, + 6,10,10,9,1,0,60,96,192,216,236,204,204,204,204,120, + 6,10,10,9,1,0,252,140,12,24,24,24,24,48,48,48, + 6,10,10,9,1,0,120,204,204,204,120,204,204,204,204,120, + 6,10,10,9,1,0,120,204,204,204,204,204,124,12,24,240, + 2,7,7,9,3,0,192,192,0,0,0,192,192,3,9,9, + 9,2,254,96,96,0,0,0,96,96,192,128,8,7,7,9, + 0,1,7,28,112,192,112,28,7,7,4,4,9,1,2,254, + 0,0,254,8,7,7,9,1,1,224,56,14,3,14,56,224, + 6,9,9,9,1,0,248,204,140,12,56,48,0,48,48,7, + 9,9,9,1,0,120,196,156,180,164,180,158,192,120,9,9, + 18,9,0,0,124,0,28,0,54,0,54,0,34,0,99,0, + 127,0,99,0,247,128,8,9,9,9,0,0,254,99,99,99, + 126,99,99,99,254,7,9,9,9,1,0,58,102,198,192,192, + 192,192,102,60,8,9,9,9,0,0,252,102,99,99,99,99, + 99,102,252,8,9,9,9,0,0,255,99,99,104,120,104,99, + 99,255,8,9,9,9,0,0,255,99,99,104,120,104,96,96, + 248,9,9,18,9,0,0,61,0,103,0,195,0,192,0,192, + 0,207,128,195,0,99,0,63,0,9,9,18,9,0,0,247, + 128,99,0,99,0,99,0,127,0,99,0,99,0,99,0,247, + 128,6,9,9,9,1,0,252,48,48,48,48,48,48,48,252, + 9,9,18,9,0,0,31,128,6,0,6,0,6,0,6,0, + 198,0,198,0,198,0,124,0,9,9,18,9,0,0,247,0, + 102,0,108,0,120,0,124,0,102,0,102,0,99,0,243,128, + 8,9,9,9,0,0,248,96,96,96,96,99,99,99,255,9, + 9,18,9,0,0,227,128,99,0,119,0,119,0,107,0,107, + 0,99,0,99,0,247,128,9,9,18,9,0,0,231,128,99, + 0,115,0,115,0,107,0,107,0,103,0,103,0,243,0,8, + 9,9,9,0,0,60,102,195,195,195,195,195,102,60,8,9, + 9,9,0,0,254,99,99,99,102,124,96,96,248,8,11,11, + 9,0,254,60,102,195,195,195,195,195,102,60,25,110,9,9, + 18,9,0,0,254,0,99,0,99,0,99,0,102,0,124,0, + 102,0,99,0,243,128,7,9,9,9,1,0,122,206,198,224, + 124,14,198,230,188,8,9,9,9,0,0,255,219,219,24,24, + 24,24,24,60,9,9,18,9,0,0,247,128,99,0,99,0, + 99,0,99,0,99,0,99,0,99,0,62,0,9,9,18,9, + 0,0,247,128,99,0,99,0,99,0,54,0,54,0,54,0, + 28,0,28,0,9,9,18,9,0,0,247,128,99,0,107,0, + 107,0,107,0,119,0,119,0,99,0,99,0,8,9,9,9, + 0,0,231,102,102,60,24,60,102,102,231,10,9,18,9,255, + 0,243,192,97,128,51,0,51,0,30,0,12,0,12,0,12, + 0,63,0,7,9,9,9,1,0,254,198,204,24,24,48,102, + 198,254,4,11,11,9,2,254,240,192,192,192,192,192,192,192, + 192,192,240,7,12,12,9,1,254,192,192,96,96,48,48,24, + 24,12,12,6,6,4,11,11,9,2,254,240,48,48,48,48, + 48,48,48,48,48,240,5,4,4,9,2,5,32,112,216,136, + 9,1,2,9,0,254,255,128,3,2,2,9,2,7,192,96, + 8,7,7,9,0,0,124,6,6,126,198,206,119,8,10,10, + 9,0,0,224,96,96,110,115,99,99,99,115,238,8,7,7, + 9,0,0,61,103,195,192,192,99,62,8,10,10,9,0,0, + 14,6,6,118,206,198,198,198,206,119,8,7,7,9,0,0, + 60,102,195,255,192,103,62,7,10,10,9,1,0,30,48,48, + 252,48,48,48,48,48,252,8,10,10,9,0,253,119,206,198, + 198,198,206,118,6,6,124,9,10,20,9,0,0,224,0,96, + 0,96,0,110,0,115,0,99,0,99,0,99,0,99,0,247, + 128,6,10,10,9,1,0,48,48,0,240,48,48,48,48,48, + 252,5,13,13,9,1,253,24,24,0,120,24,24,24,24,24, + 24,24,24,240,8,10,10,9,0,0,224,96,96,103,108,120, + 120,108,102,231,6,10,10,9,1,0,240,48,48,48,48,48, + 48,48,48,252,9,7,14,9,0,0,223,0,109,128,109,128, + 109,128,109,128,109,128,237,128,9,7,14,9,0,0,238,0, + 115,0,99,0,99,0,99,0,99,0,247,128,8,7,7,9, + 0,0,60,102,195,195,195,102,60,8,10,10,9,0,253,238, + 115,99,99,99,115,110,96,96,240,8,10,10,9,0,253,119, + 206,198,198,198,206,118,6,6,15,7,7,7,9,1,0,238, + 112,96,96,96,96,252,7,7,7,9,1,0,126,198,192,124, + 6,198,252,7,9,9,9,1,0,96,96,252,96,96,96,96, + 102,60,9,7,14,9,0,0,231,0,99,0,99,0,99,0, + 99,0,103,0,59,128,9,7,14,9,0,0,247,128,99,0, + 99,0,54,0,54,0,28,0,28,0,10,7,14,9,255,0, + 225,192,109,128,109,128,109,128,45,0,51,0,51,0,8,7, + 7,9,0,0,231,102,60,24,60,102,231,9,10,20,9,0, + 253,227,128,99,0,99,0,54,0,54,0,28,0,28,0,24, + 0,24,0,124,0,6,7,7,9,1,0,252,140,24,48,96, + 196,252,4,11,11,9,2,254,48,96,96,96,96,192,96,96, + 96,96,48,2,11,11,9,3,254,192,192,192,192,192,192,192, + 192,192,192,192,4,11,11,9,2,254,192,96,96,96,96,48, + 96,96,96,96,192,6,3,3,9,1,3,100,252,152,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0, + 0,0,9,0,1,2,9,9,9,3,254,192,192,0,128,192, + 192,192,192,192,6,10,10,9,1,255,48,48,124,204,192,192, + 204,120,48,48,7,9,9,9,1,0,60,102,96,96,248,96, + 96,102,252,7,6,6,9,1,1,198,124,198,198,124,198,10, + 9,18,9,0,0,243,192,97,128,51,0,30,0,63,0,12, + 0,63,0,12,0,63,0,2,11,11,9,3,254,192,192,192, + 192,192,0,192,192,192,192,192,8,11,11,9,0,255,62,98, + 96,240,140,227,57,15,6,70,124,4,2,2,9,2,8,144, + 144,9,8,16,9,0,1,28,0,99,0,205,128,209,128,209, + 128,205,128,99,0,28,0,5,7,7,9,2,2,112,24,120, + 216,104,0,248,7,5,5,9,1,1,54,108,216,108,54,7, + 3,3,9,1,2,254,2,2,6,1,1,9,1,4,252,9, + 8,16,9,0,1,62,0,99,0,217,128,213,128,217,128,213, + 128,99,0,62,0,4,1,1,9,2,8,240,4,4,4,9, + 2,5,96,144,144,96,7,7,7,9,1,1,16,16,254,16, + 16,0,254,5,6,6,9,2,4,112,152,24,48,96,248,5, + 6,6,9,2,4,112,152,48,24,152,112,3,2,2,9,3, + 7,96,192,9,10,20,9,0,253,231,0,99,0,99,0,99, + 0,99,0,103,0,123,128,96,0,96,0,96,0,7,11,11, + 9,1,255,126,212,148,148,212,116,20,20,20,20,126,2,2, + 2,9,3,3,192,192,3,4,4,9,2,253,64,96,32,224, + 4,6,6,9,3,4,96,224,96,96,96,240,5,7,7,9, + 2,2,112,216,136,216,112,0,248,7,5,5,9,1,1,216, + 108,54,108,216,9,10,20,9,0,0,96,0,224,128,97,0, + 98,0,101,0,251,0,23,0,43,0,79,128,131,0,9,10, + 20,9,0,0,96,0,224,128,97,0,98,0,103,0,253,128, + 17,128,35,0,70,0,15,128,10,10,20,9,255,0,112,0, + 152,64,48,128,25,0,154,128,117,128,11,128,21,128,39,192, + 65,128,6,9,9,9,1,254,48,48,0,48,112,192,196,204, + 124,9,12,24,9,0,0,24,0,12,0,0,0,124,0,28, + 0,54,0,54,0,34,0,99,0,127,0,99,0,247,128,9, + 12,24,9,0,0,12,0,24,0,0,0,124,0,28,0,54, + 0,54,0,34,0,99,0,127,0,99,0,247,128,9,12,24, + 9,0,0,28,0,54,0,0,0,124,0,28,0,54,0,54, + 0,34,0,99,0,127,0,99,0,247,128,9,12,24,9,0, + 0,26,0,44,0,0,0,124,0,28,0,54,0,54,0,34, + 0,99,0,127,0,99,0,247,128,9,12,24,9,0,0,36, + 0,36,0,0,0,124,0,28,0,54,0,54,0,34,0,99, + 0,127,0,99,0,247,128,9,12,24,9,0,0,24,0,36, + 0,24,0,126,0,28,0,54,0,54,0,34,0,99,0,127, + 0,99,0,247,128,9,9,18,9,0,0,63,128,28,128,28, + 0,61,0,47,0,109,0,124,0,76,128,223,128,7,13,13, + 9,1,252,58,110,198,192,192,192,192,102,60,16,24,8,56, + 8,12,12,9,0,0,24,12,0,255,99,99,104,120,104,99, + 99,255,8,12,12,9,0,0,12,24,0,255,99,99,104,120, + 104,99,99,255,8,12,12,9,0,0,28,54,0,255,99,99, + 104,120,104,99,99,255,8,12,12,9,0,0,36,36,0,255, + 99,99,104,120,104,99,99,255,6,12,12,9,1,0,96,48, + 0,252,48,48,48,48,48,48,48,252,6,12,12,9,1,0, + 24,48,0,252,48,48,48,48,48,48,48,252,6,12,12,9, + 1,0,56,108,0,252,48,48,48,48,48,48,48,252,6,12, + 12,9,1,0,72,72,0,252,48,48,48,48,48,48,48,252, + 8,9,9,9,0,0,252,102,99,99,243,99,99,102,252,9, + 12,24,9,0,0,26,0,44,0,0,0,231,128,99,0,115, + 0,115,0,107,0,107,0,103,0,103,0,243,0,8,12,12, + 9,0,0,48,24,0,60,102,195,195,195,195,195,102,60,8, + 12,12,9,0,0,12,24,0,60,102,195,195,195,195,195,102, + 60,8,12,12,9,0,0,56,108,0,60,102,195,195,195,195, + 195,102,60,8,12,12,9,0,0,52,88,0,60,102,195,195, + 195,195,195,102,60,8,12,12,9,0,0,36,36,0,60,102, + 195,195,195,195,195,102,60,6,7,7,9,1,1,132,204,120, + 48,120,204,132,8,10,10,9,0,0,1,62,102,203,203,211, + 211,227,102,188,9,12,24,9,0,0,24,0,12,0,0,0, + 247,128,99,0,99,0,99,0,99,0,99,0,99,0,99,0, + 62,0,9,12,24,9,0,0,12,0,24,0,0,0,247,128, + 99,0,99,0,99,0,99,0,99,0,99,0,99,0,62,0, + 9,12,24,9,0,0,28,0,54,0,0,0,247,128,99,0, + 99,0,99,0,99,0,99,0,99,0,99,0,62,0,9,12, + 24,9,0,0,18,0,18,0,0,0,247,128,99,0,99,0, + 99,0,99,0,99,0,99,0,99,0,62,0,10,12,24,9, + 255,0,6,0,12,0,0,0,243,192,97,128,51,0,51,0, + 30,0,12,0,12,0,12,0,63,0,8,9,9,9,0,0, + 240,96,126,99,99,102,124,96,240,8,9,9,9,0,0,60, + 102,102,108,102,99,99,107,238,8,10,10,9,0,0,48,24, + 0,124,6,6,126,198,206,119,8,10,10,9,0,0,12,24, + 0,124,6,6,126,198,206,119,8,10,10,9,0,0,56,108, + 0,124,6,6,126,198,206,119,8,10,10,9,0,0,52,88, + 0,124,6,6,126,198,206,119,8,10,10,9,0,0,36,36, + 0,124,6,6,126,198,206,119,8,10,10,9,0,0,24,36, + 24,124,6,6,126,198,206,119,9,7,14,9,0,0,119,0, + 29,128,8,128,127,128,200,0,205,128,119,0,8,11,11,9, + 0,252,61,103,195,192,192,99,62,16,24,8,56,8,10,10, + 9,0,0,48,24,0,60,102,195,255,192,103,62,8,10,10, + 9,0,0,12,24,0,60,102,195,255,192,103,62,8,10,10, + 9,0,0,28,54,0,60,102,195,255,192,103,62,8,10,10, + 9,0,0,36,36,0,60,102,195,255,192,103,62,6,10,10, + 9,1,0,96,48,0,240,48,48,48,48,48,252,6,10,10, + 9,1,0,24,48,0,240,48,48,48,48,48,252,6,10,10, + 9,1,0,112,216,0,240,48,48,48,48,48,252,6,10,10, + 9,1,0,72,72,0,240,48,48,48,48,48,252,8,10,10, + 9,0,0,236,56,204,62,102,195,195,195,102,60,9,10,20, + 9,0,0,26,0,44,0,0,0,238,0,115,0,99,0,99, + 0,99,0,99,0,247,128,8,10,10,9,0,0,48,24,0, + 60,102,195,195,195,102,60,8,10,10,9,0,0,12,24,0, + 60,102,195,195,195,102,60,8,10,10,9,0,0,28,54,0, + 60,102,195,195,195,102,60,8,10,10,9,0,0,52,88,0, + 60,102,195,195,195,102,60,8,10,10,9,0,0,36,36,0, + 60,102,195,195,195,102,60,8,7,7,9,0,1,24,24,0, + 255,0,24,24,8,7,7,9,0,0,61,102,207,219,243,102, + 188,9,10,20,9,0,0,24,0,12,0,0,0,231,0,99, + 0,99,0,99,0,99,0,103,0,59,128,9,10,20,9,0, + 0,12,0,24,0,0,0,231,0,99,0,99,0,99,0,99, + 0,103,0,59,128,9,10,20,9,0,0,28,0,54,0,0, + 0,231,0,99,0,99,0,99,0,99,0,103,0,59,128,9, + 10,20,9,0,0,36,0,36,0,0,0,231,0,99,0,99, + 0,99,0,99,0,103,0,59,128,9,13,26,9,0,253,6, + 0,12,0,0,0,227,128,99,0,99,0,54,0,54,0,28, + 0,28,0,24,0,24,0,124,0,8,12,12,9,0,253,224, + 96,110,115,99,99,99,115,110,96,96,240,9,13,26,9,0, + 253,18,0,18,0,0,0,227,128,99,0,99,0,54,0,54, + 0,28,0,28,0,24,0,24,0,124,0}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--14-100-100-100-M-90-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 9, '1' Height: 10 + Calculated Max Values w=10 h=13 x= 3 y= 7 dx= 9 dy= 0 ascent=11 len=20 + Font Bounding box w=13 h=21 x=-2 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =11 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB10r[1551] U8G_SECTION(".progmem.u8g_font_courB10r") = { + 0,13,21,254,250,9,1,222,4,32,32,127,253,11,253,10, + 253,0,0,0,9,0,1,2,9,9,9,3,0,192,192,192, + 192,192,128,0,192,192,5,4,4,9,2,6,216,216,216,72, + 7,11,11,9,1,255,40,40,40,254,40,40,254,40,40,40, + 40,6,12,12,9,1,255,48,48,124,204,192,240,60,12,204, + 248,48,48,7,10,10,9,1,0,96,144,146,108,16,96,152, + 36,36,24,7,8,8,9,1,0,56,96,96,48,122,204,204, + 118,2,4,4,9,3,5,192,192,192,64,4,11,11,9,2, + 254,48,96,96,192,192,192,192,192,96,96,48,4,11,11,9, + 2,254,192,96,96,48,48,48,48,48,96,96,192,5,5,5, + 9,2,4,32,168,248,112,216,7,7,7,9,1,1,16,16, + 16,254,16,16,16,3,4,4,9,2,254,96,96,192,128,6, + 1,1,9,1,4,252,2,2,2,9,3,0,192,192,7,12, + 12,9,0,254,6,6,12,12,24,24,48,48,96,96,192,192, + 7,10,10,9,1,0,56,108,198,198,198,198,198,198,108,56, + 6,10,10,9,2,0,48,240,48,48,48,48,48,48,48,252, + 6,10,10,9,1,0,120,204,204,12,12,24,48,96,192,252, + 6,10,10,9,1,0,120,204,12,12,56,12,12,12,204,120, + 7,10,10,9,1,0,12,28,60,44,76,204,140,254,12,30, + 6,10,10,9,1,0,252,192,192,248,204,12,12,12,204,120, + 6,10,10,9,1,0,60,96,192,216,236,204,204,204,204,120, + 6,10,10,9,1,0,252,140,12,24,24,24,24,48,48,48, + 6,10,10,9,1,0,120,204,204,204,120,204,204,204,204,120, + 6,10,10,9,1,0,120,204,204,204,204,204,124,12,24,240, + 2,7,7,9,3,0,192,192,0,0,0,192,192,3,9,9, + 9,2,254,96,96,0,0,0,96,96,192,128,8,7,7,9, + 0,1,7,28,112,192,112,28,7,7,4,4,9,1,2,254, + 0,0,254,8,7,7,9,1,1,224,56,14,3,14,56,224, + 6,9,9,9,1,0,248,204,140,12,56,48,0,48,48,7, + 9,9,9,1,0,120,196,156,180,164,180,158,192,120,9,9, + 18,9,0,0,124,0,28,0,54,0,54,0,34,0,99,0, + 127,0,99,0,247,128,8,9,9,9,0,0,254,99,99,99, + 126,99,99,99,254,7,9,9,9,1,0,58,102,198,192,192, + 192,192,102,60,8,9,9,9,0,0,252,102,99,99,99,99, + 99,102,252,8,9,9,9,0,0,255,99,99,104,120,104,99, + 99,255,8,9,9,9,0,0,255,99,99,104,120,104,96,96, + 248,9,9,18,9,0,0,61,0,103,0,195,0,192,0,192, + 0,207,128,195,0,99,0,63,0,9,9,18,9,0,0,247, + 128,99,0,99,0,99,0,127,0,99,0,99,0,99,0,247, + 128,6,9,9,9,1,0,252,48,48,48,48,48,48,48,252, + 9,9,18,9,0,0,31,128,6,0,6,0,6,0,6,0, + 198,0,198,0,198,0,124,0,9,9,18,9,0,0,247,0, + 102,0,108,0,120,0,124,0,102,0,102,0,99,0,243,128, + 8,9,9,9,0,0,248,96,96,96,96,99,99,99,255,9, + 9,18,9,0,0,227,128,99,0,119,0,119,0,107,0,107, + 0,99,0,99,0,247,128,9,9,18,9,0,0,231,128,99, + 0,115,0,115,0,107,0,107,0,103,0,103,0,243,0,8, + 9,9,9,0,0,60,102,195,195,195,195,195,102,60,8,9, + 9,9,0,0,254,99,99,99,102,124,96,96,248,8,11,11, + 9,0,254,60,102,195,195,195,195,195,102,60,25,110,9,9, + 18,9,0,0,254,0,99,0,99,0,99,0,102,0,124,0, + 102,0,99,0,243,128,7,9,9,9,1,0,122,206,198,224, + 124,14,198,230,188,8,9,9,9,0,0,255,219,219,24,24, + 24,24,24,60,9,9,18,9,0,0,247,128,99,0,99,0, + 99,0,99,0,99,0,99,0,99,0,62,0,9,9,18,9, + 0,0,247,128,99,0,99,0,99,0,54,0,54,0,54,0, + 28,0,28,0,9,9,18,9,0,0,247,128,99,0,107,0, + 107,0,107,0,119,0,119,0,99,0,99,0,8,9,9,9, + 0,0,231,102,102,60,24,60,102,102,231,10,9,18,9,255, + 0,243,192,97,128,51,0,51,0,30,0,12,0,12,0,12, + 0,63,0,7,9,9,9,1,0,254,198,204,24,24,48,102, + 198,254,4,11,11,9,2,254,240,192,192,192,192,192,192,192, + 192,192,240,7,12,12,9,1,254,192,192,96,96,48,48,24, + 24,12,12,6,6,4,11,11,9,2,254,240,48,48,48,48, + 48,48,48,48,48,240,5,4,4,9,2,5,32,112,216,136, + 9,1,2,9,0,254,255,128,3,2,2,9,2,7,192,96, + 8,7,7,9,0,0,124,6,6,126,198,206,119,8,10,10, + 9,0,0,224,96,96,110,115,99,99,99,115,238,8,7,7, + 9,0,0,61,103,195,192,192,99,62,8,10,10,9,0,0, + 14,6,6,118,206,198,198,198,206,119,8,7,7,9,0,0, + 60,102,195,255,192,103,62,7,10,10,9,1,0,30,48,48, + 252,48,48,48,48,48,252,8,10,10,9,0,253,119,206,198, + 198,198,206,118,6,6,124,9,10,20,9,0,0,224,0,96, + 0,96,0,110,0,115,0,99,0,99,0,99,0,99,0,247, + 128,6,10,10,9,1,0,48,48,0,240,48,48,48,48,48, + 252,5,13,13,9,1,253,24,24,0,120,24,24,24,24,24, + 24,24,24,240,8,10,10,9,0,0,224,96,96,103,108,120, + 120,108,102,231,6,10,10,9,1,0,240,48,48,48,48,48, + 48,48,48,252,9,7,14,9,0,0,223,0,109,128,109,128, + 109,128,109,128,109,128,237,128,9,7,14,9,0,0,238,0, + 115,0,99,0,99,0,99,0,99,0,247,128,8,7,7,9, + 0,0,60,102,195,195,195,102,60,8,10,10,9,0,253,238, + 115,99,99,99,115,110,96,96,240,8,10,10,9,0,253,119, + 206,198,198,198,206,118,6,6,15,7,7,7,9,1,0,238, + 112,96,96,96,96,252,7,7,7,9,1,0,126,198,192,124, + 6,198,252,7,9,9,9,1,0,96,96,252,96,96,96,96, + 102,60,9,7,14,9,0,0,231,0,99,0,99,0,99,0, + 99,0,103,0,59,128,9,7,14,9,0,0,247,128,99,0, + 99,0,54,0,54,0,28,0,28,0,10,7,14,9,255,0, + 225,192,109,128,109,128,109,128,45,0,51,0,51,0,8,7, + 7,9,0,0,231,102,60,24,60,102,231,9,10,20,9,0, + 253,227,128,99,0,99,0,54,0,54,0,28,0,28,0,24, + 0,24,0,124,0,6,7,7,9,1,0,252,140,24,48,96, + 196,252,4,11,11,9,2,254,48,96,96,96,96,192,96,96, + 96,96,48,2,11,11,9,3,254,192,192,192,192,192,192,192, + 192,192,192,192,4,11,11,9,2,254,192,96,96,96,96,48, + 96,96,96,96,192,6,3,3,9,1,3,100,252,152,255}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--17-120-100-100-M-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 11 + Calculated Max Values w=11 h=14 x= 4 y= 9 dx=10 dy= 0 ascent=14 len=28 + Font Bounding box w=16 h=24 x=-3 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB12[3959] U8G_SECTION(".progmem.u8g_font_courB12") = { + 0,16,24,253,250,10,2,51,4,246,32,255,253,14,253,11, + 253,0,0,0,10,0,1,2,11,11,10,3,0,192,192,192, + 192,192,192,192,192,0,192,192,6,5,5,10,2,6,204,204, + 204,204,204,9,12,24,10,0,255,54,0,54,0,54,0,54, + 0,255,128,54,0,54,0,255,128,54,0,54,0,54,0,54, + 0,7,13,13,10,1,255,24,24,126,198,192,224,124,14,6, + 198,252,48,48,8,11,11,10,1,0,120,204,204,120,7,60, + 224,30,51,51,30,7,9,9,10,1,0,56,108,96,48,118, + 222,204,204,126,2,5,5,10,4,6,192,192,192,192,192,4, + 13,13,10,3,254,48,96,96,96,192,192,192,192,192,96,96, + 96,48,4,13,13,10,2,254,192,96,96,96,48,48,48,48, + 48,96,96,96,192,8,6,6,10,1,5,24,24,255,60,60, + 102,8,8,8,10,1,1,24,24,24,255,255,24,24,24,3, + 5,5,10,3,253,224,224,96,192,128,7,2,2,10,1,4, + 254,254,3,2,2,10,3,0,224,224,7,14,14,10,1,254, + 6,6,12,12,12,24,24,48,48,48,96,96,192,192,8,11, + 11,10,1,0,60,102,102,195,195,195,195,195,102,102,60,8, + 11,11,10,1,0,24,120,216,24,24,24,24,24,24,24,255, + 7,11,11,10,1,0,120,204,134,6,6,12,24,48,96,198, + 254,7,11,11,10,1,0,120,204,134,12,56,12,6,6,134, + 204,120,8,11,11,10,1,0,6,14,30,54,102,70,198,255, + 6,6,31,7,11,11,10,1,0,254,192,192,192,252,198,6, + 6,6,204,248,8,11,11,10,1,0,30,112,96,192,220,230, + 195,195,195,102,60,7,11,11,10,1,0,254,198,6,12,12, + 24,24,24,48,48,48,7,11,11,10,1,0,56,108,198,68, + 56,108,198,198,198,108,56,8,11,11,10,1,0,60,102,195, + 195,103,59,3,3,6,14,120,3,7,7,10,3,0,224,224, + 0,0,0,224,224,3,10,10,10,3,253,224,224,0,0,0, + 224,224,96,192,128,9,9,18,10,1,0,1,128,7,128,30, + 0,120,0,224,0,120,0,30,0,7,128,1,128,9,5,10, + 10,0,2,255,128,255,128,0,0,255,128,255,128,9,9,18, + 10,0,0,192,0,240,0,60,0,15,0,3,128,15,0,60, + 0,240,0,192,0,7,10,10,10,1,0,124,198,198,6,28, + 48,48,0,48,48,9,12,24,10,0,255,62,0,99,0,193, + 128,221,128,178,128,178,128,178,128,178,128,223,0,192,0,99, + 0,62,0,10,10,20,10,0,0,60,0,12,0,30,0,18, + 0,51,0,51,0,63,0,97,128,97,128,243,192,9,10,20, + 10,0,0,254,0,99,0,97,128,99,0,126,0,99,0,97, + 128,97,128,99,0,254,0,9,10,20,10,0,0,30,128,115, + 128,97,128,192,0,192,0,192,0,192,0,97,128,115,128,30, + 0,9,10,20,10,0,0,252,0,103,0,99,0,97,128,97, + 128,97,128,97,128,99,0,103,0,252,0,8,10,10,10,1, + 0,255,99,96,100,124,100,96,99,99,255,8,10,10,10,1, + 0,255,99,96,100,124,100,96,96,96,248,10,10,20,10,0, + 0,30,128,115,128,97,128,192,0,192,0,199,192,193,128,97, + 128,113,128,31,0,9,10,20,10,0,0,247,128,99,0,99, + 0,99,0,127,0,99,0,99,0,99,0,99,0,247,128,8, + 10,10,10,1,0,255,24,24,24,24,24,24,24,24,255,9, + 10,20,10,0,0,63,128,6,0,6,0,6,0,6,0,6, + 0,198,0,198,0,198,0,124,0,9,10,20,10,0,0,247, + 128,99,0,102,0,108,0,120,0,124,0,102,0,102,0,99, + 0,251,128,9,10,20,10,0,0,252,0,48,0,48,0,48, + 0,48,0,48,0,49,128,49,128,49,128,255,128,10,10,20, + 10,0,0,225,192,97,128,115,128,115,128,127,128,109,128,109, + 128,97,128,97,128,243,192,10,10,20,10,0,0,247,192,113, + 128,121,128,105,128,109,128,109,128,101,128,103,128,99,128,251, + 128,9,10,20,10,0,0,62,0,99,0,99,0,193,128,193, + 128,193,128,193,128,99,0,99,0,62,0,9,10,20,10,0, + 0,254,0,99,0,97,128,97,128,99,0,126,0,96,0,96, + 0,96,0,252,0,9,12,24,10,0,254,62,0,99,0,99, + 0,193,128,193,128,193,128,193,128,99,0,99,0,62,0,25, + 128,63,0,9,10,20,10,0,0,252,0,102,0,99,0,99, + 0,102,0,124,0,102,0,99,0,99,0,251,128,8,10,10, + 10,1,0,61,103,195,224,120,30,7,195,230,188,8,10,10, + 10,1,0,255,153,153,153,24,24,24,24,24,126,10,10,20, + 10,0,0,243,192,97,128,97,128,97,128,97,128,97,128,97, + 128,97,128,51,0,30,0,10,10,20,10,0,0,243,192,97, + 128,97,128,51,0,51,0,51,0,30,0,30,0,12,0,12, + 0,10,10,20,10,0,0,243,192,97,128,109,128,109,128,109, + 128,63,0,51,0,51,0,51,0,51,0,10,10,20,10,0, + 0,243,192,97,128,51,0,30,0,12,0,12,0,30,0,51, + 0,97,128,243,192,10,10,20,10,0,0,243,192,97,128,51, + 0,51,0,30,0,12,0,12,0,12,0,12,0,63,0,7, + 10,10,10,1,0,254,198,204,28,24,48,112,102,198,254,4, + 13,13,10,3,254,240,192,192,192,192,192,192,192,192,192,192, + 192,240,7,14,14,10,1,254,192,192,96,96,96,48,48,56, + 24,24,12,12,6,6,4,13,13,10,2,254,240,48,48,48, + 48,48,48,48,48,48,48,48,240,8,4,4,10,1,7,24, + 60,102,195,10,2,4,10,0,253,255,192,255,192,4,3,3, + 10,2,8,192,96,48,8,7,7,10,1,0,60,102,6,126, + 198,198,123,9,11,22,10,0,0,224,0,96,0,96,0,96, + 0,110,0,115,0,97,128,97,128,97,128,115,0,238,0,8, + 7,7,10,0,0,61,103,195,192,192,99,62,9,11,22,10, + 0,0,7,0,3,0,3,0,3,0,59,0,103,0,195,0, + 195,0,195,0,103,0,59,128,8,7,7,10,1,0,60,102, + 195,255,192,99,62,8,11,11,10,1,0,30,51,48,48,254, + 48,48,48,48,48,254,9,10,20,10,0,253,59,128,103,0, + 195,0,195,0,195,0,103,0,59,0,3,0,3,0,62,0, + 9,11,22,10,0,0,224,0,96,0,96,0,96,0,110,0, + 115,0,99,0,99,0,99,0,99,0,247,128,8,10,10,10, + 1,0,24,24,0,120,24,24,24,24,24,255,6,13,13,10, + 1,253,24,24,0,252,12,12,12,12,12,12,12,12,248,9, + 11,22,10,0,0,224,0,96,0,96,0,96,0,111,128,102, + 0,108,0,120,0,108,0,102,0,239,128,8,11,11,10,1, + 0,120,24,24,24,24,24,24,24,24,24,255,10,7,14,10, + 0,0,237,128,127,128,109,128,109,128,109,128,109,128,237,192, + 9,7,14,10,0,0,238,0,115,0,99,0,99,0,99,0, + 99,0,247,128,8,7,7,10,1,0,60,102,195,195,195,102, + 60,9,10,20,10,0,253,238,0,115,0,97,128,97,128,97, + 128,115,0,110,0,96,0,96,0,248,0,9,10,20,10,0, + 253,59,128,103,0,195,0,195,0,195,0,103,0,59,0,3, + 0,3,0,15,128,9,7,14,10,0,0,247,0,57,128,48, + 0,48,0,48,0,48,0,254,0,7,7,7,10,1,0,126, + 198,224,124,14,198,252,9,9,18,10,0,0,48,0,48,0, + 255,0,48,0,48,0,48,0,48,0,49,128,31,0,9,7, + 14,10,0,0,231,0,99,0,99,0,99,0,99,0,103,0, + 59,128,10,7,14,10,0,0,243,192,97,128,51,0,51,0, + 30,0,30,0,12,0,10,7,14,10,0,0,243,192,97,128, + 109,128,45,0,63,0,51,0,51,0,8,7,7,10,1,0, + 231,102,60,24,60,102,231,10,10,20,10,0,253,243,192,97, + 128,51,0,51,0,30,0,30,0,12,0,24,0,24,0,124, + 0,7,7,7,10,1,0,254,204,24,48,96,198,254,4,13, + 13,10,3,254,48,96,96,96,96,64,192,96,96,96,96,96, + 48,2,13,13,10,4,254,192,192,192,192,192,192,192,192,192, + 192,192,192,192,4,13,13,10,3,254,192,96,96,96,96,32, + 48,96,96,96,96,96,192,8,3,3,10,1,3,112,219,14, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,0,0,0,10,0,1,2,10,10,10,4,253,192,192,0, + 192,192,192,192,192,192,192,7,10,10,10,1,0,24,24,62, + 102,192,192,102,60,24,24,8,10,10,10,1,0,30,51,48, + 48,252,252,48,51,227,254,8,7,7,10,1,1,195,126,102, + 66,102,126,195,10,10,20,10,0,0,243,192,97,128,51,0, + 51,0,30,0,63,0,12,0,63,0,12,0,63,0,2,13, + 13,10,4,254,192,192,192,192,192,192,0,192,192,192,192,192, + 192,10,12,24,10,0,255,31,128,49,128,49,128,120,0,206, + 0,195,128,112,192,28,192,7,128,99,0,99,0,126,0,5, + 2,2,10,3,8,216,216,10,10,20,10,0,0,12,0,63, + 0,97,128,78,128,216,192,216,192,78,128,97,128,63,0,12, + 0,6,7,7,10,2,3,120,12,124,204,124,0,252,9,7, + 14,10,0,0,25,128,51,0,102,0,204,0,102,0,51,0, + 25,128,8,5,5,10,1,2,255,255,3,3,3,7,2,2, + 10,1,4,254,254,10,10,20,10,0,0,12,0,63,0,97, + 128,92,128,214,192,220,192,82,128,97,128,63,0,12,0,5, + 1,1,10,2,9,248,5,5,5,10,2,6,112,216,136,216, + 112,8,9,9,10,1,0,24,24,255,255,24,24,0,255,255, + 5,6,6,10,2,5,112,216,48,96,200,248,5,6,6,10, + 2,5,112,216,48,24,216,112,4,3,3,10,3,8,48,96, + 192,9,10,20,10,0,253,231,0,99,0,99,0,99,0,99, + 0,103,0,123,128,96,0,96,0,96,0,9,12,24,10,0, + 255,63,128,91,0,219,0,219,0,219,0,91,0,59,0,27, + 0,27,0,27,0,27,0,63,128,3,2,2,10,3,4,224, + 224,4,4,4,10,3,253,32,96,48,240,6,6,6,10,2, + 5,48,240,48,48,48,252,6,7,7,10,2,3,120,204,204, + 204,120,0,252,9,7,14,10,0,0,204,0,102,0,51,0, + 25,128,51,0,102,0,204,0,10,11,22,10,0,0,32,0, + 225,0,99,0,98,0,102,0,252,128,25,128,19,128,54,128, + 111,192,65,128,10,11,22,10,0,0,32,0,224,128,97,128, + 99,0,102,0,255,128,10,192,25,128,51,0,102,64,71,192, + 11,11,22,10,0,0,112,0,216,128,49,128,27,0,218,0, + 118,64,12,192,9,192,27,64,55,224,32,192,7,10,10,10, + 1,253,24,24,0,24,24,112,192,198,198,124,10,14,28,10, + 0,0,48,0,24,0,12,0,0,0,60,0,12,0,30,0, + 18,0,51,0,51,0,63,0,97,128,97,128,243,192,10,14, + 28,10,0,0,6,0,12,0,24,0,0,0,60,0,12,0, + 30,0,18,0,51,0,51,0,63,0,97,128,97,128,243,192, + 10,14,28,10,0,0,12,0,30,0,51,0,0,0,60,0, + 12,0,30,0,18,0,51,0,51,0,63,0,97,128,97,128, + 243,192,10,13,26,10,0,0,59,0,110,0,0,0,60,0, + 12,0,30,0,18,0,51,0,51,0,63,0,97,128,97,128, + 243,192,10,13,26,10,0,0,54,0,54,0,0,0,60,0, + 12,0,30,0,18,0,51,0,51,0,63,0,97,128,97,128, + 243,192,10,14,28,10,0,0,28,0,54,0,54,0,28,0, + 60,0,12,0,30,0,18,0,51,0,51,0,63,0,97,128, + 97,128,243,192,10,10,20,10,0,0,127,192,60,192,44,0, + 45,0,111,0,77,0,124,0,76,192,204,192,255,192,9,13, + 26,10,0,253,30,128,115,128,97,128,192,0,192,0,192,0, + 192,0,97,128,115,128,30,0,24,0,12,0,60,0,8,14, + 14,10,1,0,48,24,12,0,255,99,96,100,124,100,96,99, + 99,255,8,14,14,10,1,0,6,12,24,0,255,99,96,100, + 124,100,96,99,99,255,8,14,14,10,1,0,24,60,102,0, + 255,99,96,100,124,100,96,99,99,255,8,13,13,10,1,0, + 54,54,0,255,99,96,100,124,100,96,99,99,255,8,14,14, + 10,1,0,48,24,12,0,255,24,24,24,24,24,24,24,24, + 255,8,14,14,10,1,0,12,24,48,0,255,24,24,24,24, + 24,24,24,24,255,8,14,14,10,1,0,24,60,102,0,255, + 24,24,24,24,24,24,24,24,255,8,13,13,10,1,0,54, + 54,0,255,24,24,24,24,24,24,24,24,255,9,10,20,10, + 0,0,252,0,103,0,99,0,97,128,249,128,97,128,97,128, + 99,0,103,0,252,0,10,13,26,10,0,0,59,0,110,0, + 0,0,247,192,113,128,121,128,105,128,109,128,109,128,101,128, + 103,128,99,128,251,128,9,14,28,10,0,0,48,0,24,0, + 12,0,0,0,62,0,99,0,99,0,193,128,193,128,193,128, + 193,128,99,0,99,0,62,0,9,14,28,10,0,0,6,0, + 12,0,24,0,0,0,62,0,99,0,99,0,193,128,193,128, + 193,128,193,128,99,0,99,0,62,0,9,14,28,10,0,0, + 12,0,30,0,51,0,0,0,62,0,99,0,99,0,193,128, + 193,128,193,128,193,128,99,0,99,0,62,0,9,13,26,10, + 0,0,59,0,110,0,0,0,62,0,99,0,99,0,193,128, + 193,128,193,128,193,128,99,0,99,0,62,0,9,13,26,10, + 0,0,54,0,54,0,0,0,62,0,99,0,99,0,193,128, + 193,128,193,128,193,128,99,0,99,0,62,0,8,7,7,10, + 1,1,227,118,60,24,60,110,199,9,12,24,10,0,255,0, + 128,63,128,99,0,103,0,197,128,205,128,217,128,209,128,115, + 0,99,0,254,0,128,0,10,14,28,10,0,0,48,0,24, + 0,12,0,0,0,243,192,97,128,97,128,97,128,97,128,97, + 128,97,128,97,128,51,0,30,0,10,14,28,10,0,0,3, + 0,6,0,12,0,0,0,243,192,97,128,97,128,97,128,97, + 128,97,128,97,128,97,128,51,0,30,0,10,14,28,10,0, + 0,12,0,30,0,51,0,0,0,243,192,97,128,97,128,97, + 128,97,128,97,128,97,128,97,128,51,0,30,0,10,13,26, + 10,0,0,27,0,27,0,0,0,243,192,97,128,97,128,97, + 128,97,128,97,128,97,128,97,128,51,0,30,0,10,14,28, + 10,0,0,3,0,6,0,12,0,0,0,243,192,97,128,51, + 0,51,0,30,0,12,0,12,0,12,0,12,0,63,0,9, + 10,20,10,0,0,240,0,96,0,126,0,99,0,97,128,99, + 0,126,0,96,0,96,0,240,0,8,11,11,10,0,0,60, + 102,102,100,108,102,99,99,99,122,236,8,11,11,10,1,0, + 48,24,12,0,60,102,6,126,198,198,123,8,11,11,10,1, + 0,6,12,24,0,60,102,6,126,198,198,123,8,11,11,10, + 1,0,24,60,102,0,60,102,6,126,198,198,123,8,10,10, + 10,1,0,59,110,0,60,102,6,126,198,198,123,8,10,10, + 10,1,0,54,54,0,60,102,6,126,198,198,123,8,12,12, + 10,1,0,28,54,54,28,0,60,102,6,126,198,198,123,10, + 7,14,10,255,0,59,128,108,192,12,192,127,192,204,0,204, + 192,119,128,8,10,10,10,1,253,61,103,195,192,192,227,126, + 24,12,60,8,11,11,10,1,0,48,24,12,0,60,102,195, + 255,192,99,62,8,11,11,10,1,0,6,12,24,0,60,102, + 195,255,192,99,62,8,11,11,10,1,0,24,60,102,0,60, + 102,195,255,192,99,62,8,10,10,10,1,0,54,54,0,60, + 102,195,255,192,99,62,8,11,11,10,1,0,96,48,24,0, + 120,24,24,24,24,24,255,8,11,11,10,1,0,6,12,24, + 0,120,24,24,24,24,24,255,8,11,11,10,1,0,24,60, + 102,0,120,24,24,24,24,24,255,8,10,10,10,1,0,108, + 108,0,120,24,24,24,24,24,255,8,12,12,10,1,0,224, + 118,28,60,198,62,103,227,195,195,102,60,9,10,20,10,0, + 0,59,0,110,0,0,0,238,0,115,0,99,0,99,0,99, + 0,99,0,247,128,8,11,11,10,1,0,48,24,12,0,60, + 102,195,195,195,102,60,8,11,11,10,1,0,12,24,48,0, + 60,102,195,195,195,102,60,8,11,11,10,1,0,24,60,102, + 0,60,102,195,195,195,102,60,8,10,10,10,1,0,59,110, + 0,60,102,195,195,195,102,60,8,10,10,10,1,0,108,108, + 0,60,102,195,195,195,102,60,8,8,8,10,1,1,24,24, + 0,255,255,0,24,24,8,9,9,10,1,255,3,63,102,207, + 219,243,102,252,192,9,11,22,10,0,0,48,0,24,0,12, + 0,0,0,231,0,99,0,99,0,99,0,99,0,103,0,59, + 128,9,11,22,10,0,0,12,0,24,0,48,0,0,0,231, + 0,99,0,99,0,99,0,99,0,103,0,59,128,9,11,22, + 10,0,0,24,0,60,0,102,0,0,0,231,0,99,0,99, + 0,99,0,99,0,103,0,59,128,9,10,20,10,0,0,54, + 0,54,0,0,0,231,0,99,0,99,0,99,0,99,0,103, + 0,59,128,10,14,28,10,0,253,6,0,12,0,24,0,0, + 0,243,192,97,128,51,0,51,0,30,0,30,0,12,0,24, + 0,24,0,124,0,9,14,28,10,0,253,224,0,96,0,96, + 0,96,0,110,0,115,0,97,128,97,128,97,128,115,0,110, + 0,96,0,96,0,248,0,10,13,26,10,0,253,54,0,54, + 0,0,0,243,192,97,128,51,0,51,0,30,0,30,0,12, + 0,12,0,24,0,124,0}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--17-120-100-100-M-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 11 + Calculated Max Values w=10 h=14 x= 4 y= 8 dx=10 dy= 0 ascent=12 len=24 + Font Bounding box w=16 h=24 x=-3 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB12r[1857] U8G_SECTION(".progmem.u8g_font_courB12r") = { + 0,16,24,253,250,10,2,51,4,246,32,127,253,12,253,11, + 253,0,0,0,10,0,1,2,11,11,10,3,0,192,192,192, + 192,192,192,192,192,0,192,192,6,5,5,10,2,6,204,204, + 204,204,204,9,12,24,10,0,255,54,0,54,0,54,0,54, + 0,255,128,54,0,54,0,255,128,54,0,54,0,54,0,54, + 0,7,13,13,10,1,255,24,24,126,198,192,224,124,14,6, + 198,252,48,48,8,11,11,10,1,0,120,204,204,120,7,60, + 224,30,51,51,30,7,9,9,10,1,0,56,108,96,48,118, + 222,204,204,126,2,5,5,10,4,6,192,192,192,192,192,4, + 13,13,10,3,254,48,96,96,96,192,192,192,192,192,96,96, + 96,48,4,13,13,10,2,254,192,96,96,96,48,48,48,48, + 48,96,96,96,192,8,6,6,10,1,5,24,24,255,60,60, + 102,8,8,8,10,1,1,24,24,24,255,255,24,24,24,3, + 5,5,10,3,253,224,224,96,192,128,7,2,2,10,1,4, + 254,254,3,2,2,10,3,0,224,224,7,14,14,10,1,254, + 6,6,12,12,12,24,24,48,48,48,96,96,192,192,8,11, + 11,10,1,0,60,102,102,195,195,195,195,195,102,102,60,8, + 11,11,10,1,0,24,120,216,24,24,24,24,24,24,24,255, + 7,11,11,10,1,0,120,204,134,6,6,12,24,48,96,198, + 254,7,11,11,10,1,0,120,204,134,12,56,12,6,6,134, + 204,120,8,11,11,10,1,0,6,14,30,54,102,70,198,255, + 6,6,31,7,11,11,10,1,0,254,192,192,192,252,198,6, + 6,6,204,248,8,11,11,10,1,0,30,112,96,192,220,230, + 195,195,195,102,60,7,11,11,10,1,0,254,198,6,12,12, + 24,24,24,48,48,48,7,11,11,10,1,0,56,108,198,68, + 56,108,198,198,198,108,56,8,11,11,10,1,0,60,102,195, + 195,103,59,3,3,6,14,120,3,7,7,10,3,0,224,224, + 0,0,0,224,224,3,10,10,10,3,253,224,224,0,0,0, + 224,224,96,192,128,9,9,18,10,1,0,1,128,7,128,30, + 0,120,0,224,0,120,0,30,0,7,128,1,128,9,5,10, + 10,0,2,255,128,255,128,0,0,255,128,255,128,9,9,18, + 10,0,0,192,0,240,0,60,0,15,0,3,128,15,0,60, + 0,240,0,192,0,7,10,10,10,1,0,124,198,198,6,28, + 48,48,0,48,48,9,12,24,10,0,255,62,0,99,0,193, + 128,221,128,178,128,178,128,178,128,178,128,223,0,192,0,99, + 0,62,0,10,10,20,10,0,0,60,0,12,0,30,0,18, + 0,51,0,51,0,63,0,97,128,97,128,243,192,9,10,20, + 10,0,0,254,0,99,0,97,128,99,0,126,0,99,0,97, + 128,97,128,99,0,254,0,9,10,20,10,0,0,30,128,115, + 128,97,128,192,0,192,0,192,0,192,0,97,128,115,128,30, + 0,9,10,20,10,0,0,252,0,103,0,99,0,97,128,97, + 128,97,128,97,128,99,0,103,0,252,0,8,10,10,10,1, + 0,255,99,96,100,124,100,96,99,99,255,8,10,10,10,1, + 0,255,99,96,100,124,100,96,96,96,248,10,10,20,10,0, + 0,30,128,115,128,97,128,192,0,192,0,199,192,193,128,97, + 128,113,128,31,0,9,10,20,10,0,0,247,128,99,0,99, + 0,99,0,127,0,99,0,99,0,99,0,99,0,247,128,8, + 10,10,10,1,0,255,24,24,24,24,24,24,24,24,255,9, + 10,20,10,0,0,63,128,6,0,6,0,6,0,6,0,6, + 0,198,0,198,0,198,0,124,0,9,10,20,10,0,0,247, + 128,99,0,102,0,108,0,120,0,124,0,102,0,102,0,99, + 0,251,128,9,10,20,10,0,0,252,0,48,0,48,0,48, + 0,48,0,48,0,49,128,49,128,49,128,255,128,10,10,20, + 10,0,0,225,192,97,128,115,128,115,128,127,128,109,128,109, + 128,97,128,97,128,243,192,10,10,20,10,0,0,247,192,113, + 128,121,128,105,128,109,128,109,128,101,128,103,128,99,128,251, + 128,9,10,20,10,0,0,62,0,99,0,99,0,193,128,193, + 128,193,128,193,128,99,0,99,0,62,0,9,10,20,10,0, + 0,254,0,99,0,97,128,97,128,99,0,126,0,96,0,96, + 0,96,0,252,0,9,12,24,10,0,254,62,0,99,0,99, + 0,193,128,193,128,193,128,193,128,99,0,99,0,62,0,25, + 128,63,0,9,10,20,10,0,0,252,0,102,0,99,0,99, + 0,102,0,124,0,102,0,99,0,99,0,251,128,8,10,10, + 10,1,0,61,103,195,224,120,30,7,195,230,188,8,10,10, + 10,1,0,255,153,153,153,24,24,24,24,24,126,10,10,20, + 10,0,0,243,192,97,128,97,128,97,128,97,128,97,128,97, + 128,97,128,51,0,30,0,10,10,20,10,0,0,243,192,97, + 128,97,128,51,0,51,0,51,0,30,0,30,0,12,0,12, + 0,10,10,20,10,0,0,243,192,97,128,109,128,109,128,109, + 128,63,0,51,0,51,0,51,0,51,0,10,10,20,10,0, + 0,243,192,97,128,51,0,30,0,12,0,12,0,30,0,51, + 0,97,128,243,192,10,10,20,10,0,0,243,192,97,128,51, + 0,51,0,30,0,12,0,12,0,12,0,12,0,63,0,7, + 10,10,10,1,0,254,198,204,28,24,48,112,102,198,254,4, + 13,13,10,3,254,240,192,192,192,192,192,192,192,192,192,192, + 192,240,7,14,14,10,1,254,192,192,96,96,96,48,48,56, + 24,24,12,12,6,6,4,13,13,10,2,254,240,48,48,48, + 48,48,48,48,48,48,48,48,240,8,4,4,10,1,7,24, + 60,102,195,10,2,4,10,0,253,255,192,255,192,4,3,3, + 10,2,8,192,96,48,8,7,7,10,1,0,60,102,6,126, + 198,198,123,9,11,22,10,0,0,224,0,96,0,96,0,96, + 0,110,0,115,0,97,128,97,128,97,128,115,0,238,0,8, + 7,7,10,0,0,61,103,195,192,192,99,62,9,11,22,10, + 0,0,7,0,3,0,3,0,3,0,59,0,103,0,195,0, + 195,0,195,0,103,0,59,128,8,7,7,10,1,0,60,102, + 195,255,192,99,62,8,11,11,10,1,0,30,51,48,48,254, + 48,48,48,48,48,254,9,10,20,10,0,253,59,128,103,0, + 195,0,195,0,195,0,103,0,59,0,3,0,3,0,62,0, + 9,11,22,10,0,0,224,0,96,0,96,0,96,0,110,0, + 115,0,99,0,99,0,99,0,99,0,247,128,8,10,10,10, + 1,0,24,24,0,120,24,24,24,24,24,255,6,13,13,10, + 1,253,24,24,0,252,12,12,12,12,12,12,12,12,248,9, + 11,22,10,0,0,224,0,96,0,96,0,96,0,111,128,102, + 0,108,0,120,0,108,0,102,0,239,128,8,11,11,10,1, + 0,120,24,24,24,24,24,24,24,24,24,255,10,7,14,10, + 0,0,237,128,127,128,109,128,109,128,109,128,109,128,237,192, + 9,7,14,10,0,0,238,0,115,0,99,0,99,0,99,0, + 99,0,247,128,8,7,7,10,1,0,60,102,195,195,195,102, + 60,9,10,20,10,0,253,238,0,115,0,97,128,97,128,97, + 128,115,0,110,0,96,0,96,0,248,0,9,10,20,10,0, + 253,59,128,103,0,195,0,195,0,195,0,103,0,59,0,3, + 0,3,0,15,128,9,7,14,10,0,0,247,0,57,128,48, + 0,48,0,48,0,48,0,254,0,7,7,7,10,1,0,126, + 198,224,124,14,198,252,9,9,18,10,0,0,48,0,48,0, + 255,0,48,0,48,0,48,0,48,0,49,128,31,0,9,7, + 14,10,0,0,231,0,99,0,99,0,99,0,99,0,103,0, + 59,128,10,7,14,10,0,0,243,192,97,128,51,0,51,0, + 30,0,30,0,12,0,10,7,14,10,0,0,243,192,97,128, + 109,128,45,0,63,0,51,0,51,0,8,7,7,10,1,0, + 231,102,60,24,60,102,231,10,10,20,10,0,253,243,192,97, + 128,51,0,51,0,30,0,30,0,12,0,24,0,24,0,124, + 0,7,7,7,10,1,0,254,204,24,48,96,198,254,4,13, + 13,10,3,254,48,96,96,96,96,64,192,96,96,96,96,96, + 48,2,13,13,10,4,254,192,192,192,192,192,192,192,192,192, + 192,192,192,192,4,13,13,10,3,254,192,96,96,96,96,32, + 48,96,96,96,96,96,192,8,3,3,10,1,3,112,219,14, + 255}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--20-140-100-100-M-110-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 12 + Calculated Max Values w=12 h=17 x= 4 y= 9 dx=11 dy= 0 ascent=15 len=34 + Font Bounding box w=17 h=26 x=-4 y=-7 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =15 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB14[4784] U8G_SECTION(".progmem.u8g_font_courB14") = { + 0,17,26,252,249,11,2,101,5,155,32,255,252,15,251,12, + 252,0,0,0,11,0,1,3,12,12,11,4,0,224,224,224, + 224,224,224,192,192,192,0,192,192,6,6,6,11,2,6,204, + 204,204,204,136,136,8,14,14,11,1,255,54,54,54,54,255, + 255,108,108,255,255,108,108,108,108,8,15,15,11,1,254,24, + 24,63,127,195,192,240,126,15,3,199,254,252,24,24,8,12, + 12,11,1,0,112,216,136,216,115,14,120,206,27,17,27,14, + 8,10,10,11,1,0,60,126,102,96,48,123,255,206,255,123, + 2,6,6,11,4,6,192,192,192,192,128,128,4,15,15,11, + 4,253,48,48,96,96,192,192,192,192,192,192,192,96,96,48, + 48,4,15,15,11,2,253,192,192,96,96,48,48,48,48,48, + 48,48,96,96,192,192,8,8,8,11,1,4,24,24,255,255, + 24,126,231,66,10,10,20,11,0,0,12,0,12,0,12,0, + 12,0,255,192,255,192,12,0,12,0,12,0,12,0,4,5, + 5,11,2,253,48,48,96,64,128,8,2,2,11,1,4,255, + 255,2,2,2,11,4,0,192,192,9,16,32,11,0,253,1, + 128,1,128,3,0,3,0,6,0,6,0,12,0,12,0,24, + 0,24,0,48,0,48,0,96,0,96,0,192,0,192,0,8, + 12,12,11,1,0,60,126,102,195,195,195,195,195,195,102,126, + 60,8,12,12,11,1,0,24,248,248,24,24,24,24,24,24, + 24,255,255,8,12,12,11,1,0,60,126,199,195,3,7,14, + 28,56,112,255,255,8,12,12,11,1,0,60,126,102,6,14, + 60,62,7,3,199,254,124,8,12,12,11,1,0,14,30,62, + 54,102,102,198,255,255,6,31,31,8,12,12,11,1,0,127, + 127,96,96,126,127,103,3,3,199,254,124,8,12,12,11,1, + 0,15,63,112,96,220,254,231,195,195,231,126,60,8,12,12, + 11,1,0,255,255,195,6,6,6,12,12,12,24,24,24,8, + 12,12,11,1,0,60,126,231,195,102,60,126,231,195,231,126, + 60,8,12,12,11,1,0,60,126,195,195,195,199,127,59,3, + 6,254,248,2,8,8,11,4,0,192,192,0,0,0,0,192, + 192,4,11,11,11,2,253,48,48,0,0,0,0,48,48,96, + 64,128,9,9,18,11,1,1,1,128,7,128,30,0,120,0, + 224,0,120,0,30,0,7,128,1,128,10,6,12,11,0,2, + 255,192,255,192,0,0,0,0,255,192,255,192,9,9,18,11, + 1,1,192,0,240,0,60,0,15,0,3,128,15,0,60,0, + 240,0,192,0,7,11,11,11,2,0,124,254,198,6,14,60, + 48,48,0,48,48,9,13,26,11,1,255,60,0,102,0,195, + 0,207,0,219,0,219,0,219,0,219,0,207,128,192,0,192, + 0,99,0,62,0,12,11,22,11,255,0,62,0,63,0,15, + 0,25,128,25,128,25,128,63,192,63,192,48,192,249,240,249, + 240,10,11,22,11,0,0,254,0,255,0,49,128,49,128,63, + 0,63,128,48,192,48,192,48,192,255,128,255,0,10,11,22, + 11,0,0,30,192,127,192,113,192,224,192,192,0,192,0,192, + 0,224,0,112,192,127,192,31,0,10,11,22,11,0,0,254, + 0,255,128,99,128,97,192,96,192,96,192,96,192,97,192,99, + 128,255,128,254,0,10,11,22,11,0,0,255,192,255,192,48, + 192,54,192,62,0,62,0,54,0,48,192,48,192,255,192,255, + 192,10,11,22,11,0,0,255,192,255,192,48,192,54,192,62, + 0,62,0,54,0,48,0,48,0,254,0,254,0,11,11,22, + 11,0,0,30,192,127,192,113,192,224,192,192,0,192,0,199, + 224,231,224,112,192,127,192,31,128,10,11,22,11,0,0,243, + 192,243,192,97,128,97,128,127,128,127,128,97,128,97,128,97, + 128,243,192,243,192,8,11,11,11,1,0,255,255,24,24,24, + 24,24,24,24,255,255,10,11,22,11,0,0,31,192,31,192, + 3,0,3,0,3,0,3,0,195,0,195,0,195,0,254,0, + 60,0,11,11,22,11,0,0,247,192,247,192,99,0,102,0, + 108,0,124,0,126,0,103,0,99,128,249,224,249,224,10,11, + 22,11,0,0,252,0,252,0,48,0,48,0,48,0,48,0, + 48,192,48,192,48,192,255,192,255,192,10,11,22,11,0,0, + 225,192,225,192,115,128,115,128,127,128,109,128,109,128,109,128, + 97,128,243,192,243,192,10,11,22,11,0,0,231,192,247,192, + 113,128,121,128,105,128,109,128,101,128,103,128,99,128,251,128, + 249,128,10,11,22,11,0,0,30,0,127,128,115,128,225,192, + 192,192,192,192,192,192,225,192,115,128,127,128,30,0,10,11, + 22,11,0,0,255,0,255,128,97,192,96,192,97,192,127,128, + 127,0,96,0,96,0,252,0,252,0,10,13,26,11,0,254, + 30,0,127,128,115,128,225,192,192,192,192,192,192,192,225,192, + 115,128,127,128,30,64,63,192,51,128,11,11,22,11,0,0, + 255,0,255,128,97,192,96,192,97,192,127,128,127,0,99,128, + 97,192,252,224,252,224,9,11,22,11,1,0,61,128,255,128, + 195,128,193,128,248,0,127,0,15,128,193,128,225,128,255,0, + 222,0,10,11,22,11,0,0,255,192,255,192,204,192,204,192, + 204,192,12,0,12,0,12,0,12,0,127,128,127,128,10,11, + 22,11,0,0,247,192,247,192,97,128,97,128,97,128,97,128, + 97,128,97,128,115,128,63,0,30,0,12,11,22,11,255,0, + 249,240,249,240,96,96,96,96,48,192,48,192,25,128,25,128, + 15,0,15,0,6,0,12,11,22,11,255,0,249,240,249,240, + 96,96,102,96,102,96,111,96,111,96,57,192,57,192,48,192, + 48,192,10,11,22,11,0,0,243,192,243,192,97,128,51,0, + 30,0,12,0,30,0,51,0,97,128,243,192,243,192,10,11, + 22,11,0,0,243,192,243,192,97,128,51,0,63,0,30,0, + 12,0,12,0,12,0,63,0,63,0,8,11,11,11,1,0, + 255,255,199,206,12,24,48,115,227,255,255,4,15,15,11,4, + 253,240,240,192,192,192,192,192,192,192,192,192,192,192,240,240, + 9,16,32,11,1,253,192,0,192,0,96,0,96,0,48,0, + 48,0,24,0,24,0,12,0,12,0,6,0,6,0,3,0, + 3,0,1,128,1,128,4,15,15,11,2,253,240,240,48,48, + 48,48,48,48,48,48,48,48,48,240,240,8,7,7,11,1, + 5,24,60,60,102,102,195,195,11,2,4,11,0,252,255,224, + 255,224,4,3,3,11,3,9,192,96,48,10,9,18,11,0, + 0,63,0,127,128,97,128,1,128,127,128,255,128,193,128,255, + 192,125,192,10,12,24,11,0,0,224,0,224,0,96,0,111, + 0,127,128,113,192,96,192,96,192,96,192,113,192,255,128,239, + 0,10,9,18,11,0,0,61,128,127,128,227,128,193,128,192, + 0,192,0,225,192,127,192,63,0,10,12,24,11,0,0,3, + 128,3,128,1,128,61,128,127,128,227,128,193,128,193,128,193, + 128,227,128,127,192,61,192,10,9,18,11,0,0,30,0,127, + 128,225,192,192,192,255,192,255,192,224,0,127,192,31,192,9, + 12,24,11,1,0,31,128,63,128,48,0,255,0,255,0,48, + 0,48,0,48,0,48,0,48,0,255,0,255,0,10,13,26, + 11,0,252,61,192,127,192,227,128,193,128,193,128,193,128,227, + 128,127,128,61,128,1,128,3,128,63,0,62,0,10,12,24, + 11,0,0,224,0,224,0,96,0,111,0,127,128,113,128,97, + 128,97,128,97,128,97,128,243,192,243,192,8,12,12,11,1, + 0,24,24,0,248,248,24,24,24,24,24,255,255,7,16,16, + 11,1,252,12,12,0,254,254,6,6,6,6,6,6,6,6, + 14,252,248,10,12,24,11,0,0,224,0,224,0,96,0,103, + 128,103,128,110,0,124,0,124,0,110,0,103,0,227,192,227, + 192,8,12,12,11,1,0,248,248,24,24,24,24,24,24,24, + 24,255,255,12,9,18,11,255,0,237,192,255,224,119,96,102, + 96,102,96,102,96,102,96,247,112,247,112,10,9,18,11,0, + 0,239,0,255,128,113,128,97,128,97,128,97,128,97,128,243, + 192,243,192,10,9,18,11,0,0,30,0,127,128,225,192,192, + 192,192,192,192,192,225,192,127,128,30,0,10,13,26,11,0, + 252,239,0,255,128,113,192,96,192,96,192,96,192,113,192,127, + 128,111,0,96,0,96,0,248,0,248,0,10,13,26,11,0, + 252,61,192,127,192,227,128,193,128,193,128,193,128,227,128,127, + 128,61,128,1,128,1,128,7,192,7,192,10,9,18,11,0, + 0,243,128,255,192,60,192,56,0,48,0,48,0,48,0,255, + 0,255,0,8,9,9,11,1,0,127,255,195,240,126,31,195, + 255,254,10,12,24,11,0,0,48,0,48,0,48,0,255,0, + 255,0,48,0,48,0,48,0,48,0,48,192,63,192,31,0, + 10,9,18,11,0,0,231,128,231,128,97,128,97,128,97,128, + 97,128,99,128,127,192,61,192,10,9,18,11,0,0,243,192, + 243,192,97,128,97,128,51,0,51,0,30,0,30,0,12,0, + 11,9,18,11,0,0,241,224,241,224,100,192,110,192,110,192, + 123,192,59,128,49,128,49,128,11,9,18,11,0,0,251,224, + 251,224,49,128,27,0,14,0,27,0,49,128,251,224,251,224, + 10,13,26,11,0,252,243,192,243,192,97,128,97,128,51,0, + 51,0,30,0,30,0,12,0,24,0,56,0,252,0,252,0, + 8,9,9,11,1,0,255,255,198,12,24,48,99,255,255,4, + 15,15,11,3,253,48,96,96,96,96,96,192,96,96,96,96, + 96,96,96,48,2,14,14,11,4,253,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,4,15,15,11,3,253,192,96, + 96,96,96,96,48,96,96,96,96,96,96,96,192,8,3,3, + 11,1,4,115,255,222,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,0,0,11,0,1,3,12,12, + 11,4,252,192,192,0,192,192,224,224,224,224,224,224,224,8, + 13,13,11,1,0,24,24,24,63,127,227,192,192,227,127,62, + 24,24,10,11,22,11,0,0,62,0,127,0,99,0,96,0, + 48,0,252,0,252,0,48,0,96,192,255,192,255,128,8,9, + 9,11,1,1,195,255,126,195,195,195,126,255,195,10,11,22, + 11,0,0,243,192,243,192,97,128,51,0,30,0,63,0,12, + 0,63,0,12,0,63,0,63,0,2,16,16,11,4,253,192, + 192,192,192,192,192,192,0,0,192,192,192,192,192,192,192,8, + 14,14,11,1,254,63,115,99,96,248,222,199,227,123,31,6, + 198,206,252,6,2,2,11,2,9,204,204,11,12,24,11,0, + 0,14,0,63,128,113,192,110,192,219,96,216,96,216,96,219, + 96,110,192,113,192,63,128,14,0,6,8,8,11,2,3,112, + 24,120,216,216,108,0,252,9,7,14,11,0,1,25,128,51, + 0,102,0,204,0,102,0,51,0,25,128,9,4,8,11,1, + 4,255,128,255,128,1,128,1,128,8,2,2,11,1,4,255, + 255,11,12,24,11,0,0,14,0,63,128,113,192,126,192,219, + 96,219,96,222,96,223,96,123,224,112,192,63,128,14,0,5, + 2,2,11,2,9,248,248,5,5,5,11,2,6,112,136,136, + 136,112,10,10,20,11,0,0,12,0,12,0,12,0,255,192, + 255,192,12,0,12,0,0,0,255,192,255,192,6,7,7,11, + 2,5,120,204,12,24,48,100,252,6,7,7,11,2,5,120, + 204,12,56,12,204,120,4,3,3,11,4,9,48,96,192,10, + 13,26,11,0,252,231,128,231,128,97,128,97,128,97,128,97, + 128,99,128,127,192,125,192,96,0,96,0,96,0,96,0,8, + 14,14,11,1,254,63,106,202,202,202,106,58,10,10,10,10, + 10,10,59,2,3,3,11,4,3,192,192,192,4,5,5,11, + 3,252,64,96,48,240,224,6,7,7,11,2,5,48,240,48, + 48,48,48,252,6,8,8,11,2,3,120,204,132,132,204,120, + 0,252,9,7,14,11,1,1,204,0,102,0,51,0,25,128, + 51,0,102,0,204,0,11,12,24,11,0,0,48,0,240,32, + 48,96,48,192,49,128,51,64,254,192,13,192,26,192,52,192, + 103,224,64,192,11,12,24,11,0,0,48,0,240,32,48,96, + 48,192,49,128,51,192,255,96,12,96,24,192,49,128,99,32, + 71,224,11,12,24,11,0,0,120,0,204,32,12,96,56,192, + 13,128,207,64,126,192,13,192,26,192,52,192,103,224,64,192, + 7,12,12,11,2,252,24,24,0,24,24,24,120,224,192,198, + 254,124,12,15,30,11,255,0,24,0,12,0,6,0,0,0, + 62,0,63,0,15,0,15,0,25,128,25,128,63,192,63,192, + 48,192,249,240,249,240,12,15,30,11,255,0,3,0,6,0, + 12,0,0,0,62,0,63,0,15,0,15,0,25,128,25,128, + 63,192,63,192,48,192,249,240,249,240,12,15,30,11,255,0, + 6,0,15,0,25,128,0,0,62,0,63,0,15,0,15,0, + 25,128,25,128,63,192,63,192,48,192,249,240,249,240,12,14, + 28,11,255,0,29,128,55,0,0,0,62,0,63,0,15,0, + 15,0,25,128,25,128,63,192,63,192,48,192,249,240,249,240, + 12,14,28,11,255,0,25,128,25,128,0,0,62,0,63,0, + 15,0,15,0,25,128,25,128,63,192,63,192,48,192,249,240, + 249,240,12,15,30,11,255,0,6,0,9,0,9,0,6,0, + 62,0,63,0,15,0,15,0,25,128,25,128,63,192,63,192, + 48,192,249,240,249,240,11,11,22,11,0,0,63,224,63,224, + 30,96,54,0,55,192,39,192,126,0,126,0,102,96,239,224, + 239,224,10,16,32,11,0,251,30,192,127,192,97,192,192,192, + 192,0,192,0,192,0,192,0,96,192,127,192,63,0,8,0, + 12,0,2,0,30,0,28,0,10,15,30,11,0,0,24,0, + 12,0,6,0,0,0,255,192,255,192,48,192,54,192,62,0, + 62,0,54,0,48,192,48,192,255,192,255,192,10,15,30,11, + 0,0,3,0,6,0,12,0,0,0,255,192,255,192,48,192, + 54,192,62,0,62,0,54,0,48,192,48,192,255,192,255,192, + 10,15,30,11,0,0,12,0,30,0,51,0,0,0,255,192, + 255,192,48,192,54,192,62,0,62,0,54,0,48,192,48,192, + 255,192,255,192,10,14,28,11,0,0,51,0,51,0,0,0, + 255,192,255,192,48,192,54,192,62,0,62,0,54,0,48,192, + 48,192,255,192,255,192,8,15,15,11,1,0,96,48,24,0, + 255,255,24,24,24,24,24,24,24,255,255,8,15,15,11,1, + 0,6,12,24,0,255,255,24,24,24,24,24,24,24,255,255, + 8,15,15,11,1,0,24,60,102,0,255,255,24,24,24,24, + 24,24,24,255,255,8,14,14,11,1,0,102,102,0,255,255, + 24,24,24,24,24,24,24,255,255,10,11,22,11,0,0,254, + 0,255,128,97,128,96,192,248,192,248,192,96,192,96,192,97, + 128,255,128,254,0,10,14,28,11,0,0,59,0,110,0,0, + 0,231,192,247,192,113,128,121,128,105,128,109,128,101,128,103, + 128,99,128,251,128,249,128,10,15,30,11,0,0,24,0,12, + 0,6,0,0,0,30,0,127,128,97,128,192,192,192,192,192, + 192,192,192,192,192,97,128,127,128,30,0,10,15,30,11,0, + 0,3,0,6,0,12,0,0,0,30,0,127,128,97,128,192, + 192,192,192,192,192,192,192,192,192,97,128,127,128,30,0,10, + 15,30,11,0,0,12,0,30,0,51,0,0,0,30,0,127, + 128,97,128,192,192,192,192,192,192,192,192,192,192,97,128,127, + 128,30,0,10,14,28,11,0,0,59,0,110,0,0,0,30, + 0,127,128,97,128,192,192,192,192,192,192,192,192,192,192,97, + 128,127,128,30,0,10,14,28,11,0,0,51,0,51,0,0, + 0,30,0,127,128,97,128,192,192,192,192,192,192,192,192,192, + 192,97,128,127,128,30,0,10,10,20,11,0,0,64,128,225, + 192,115,128,55,0,30,0,30,0,59,0,115,128,225,192,64, + 128,12,13,26,11,255,255,0,48,15,96,63,192,49,192,99, + 96,102,96,102,96,108,96,120,96,48,192,63,192,111,0,192, + 0,10,15,30,11,0,0,48,0,24,0,12,0,0,0,251, + 192,251,192,97,128,97,128,97,128,97,128,97,128,97,128,115, + 128,63,0,30,0,10,15,30,11,0,0,3,0,6,0,12, + 0,0,0,251,192,251,192,97,128,97,128,97,128,97,128,97, + 128,97,128,115,128,63,0,30,0,10,15,30,11,0,0,12, + 0,30,0,51,0,0,0,251,192,251,192,97,128,97,128,97, + 128,97,128,97,128,97,128,115,128,63,0,30,0,10,14,28, + 11,0,0,51,0,51,0,0,0,251,192,251,192,97,128,97, + 128,97,128,97,128,97,128,97,128,115,128,63,0,30,0,10, + 15,30,11,0,0,3,0,6,0,12,0,0,0,243,192,243, + 192,97,128,51,0,63,0,30,0,12,0,12,0,12,0,63, + 0,63,0,10,11,22,11,0,0,240,0,224,0,127,0,127, + 128,97,192,96,192,97,192,127,128,127,0,224,0,240,0,9, + 12,24,11,1,0,60,0,126,0,99,0,99,0,103,0,110, + 0,103,0,97,128,97,128,105,128,239,128,231,0,10,13,26, + 11,0,0,24,0,12,0,6,0,0,0,63,0,127,128,97, + 128,1,128,127,128,255,128,193,128,255,192,125,192,10,13,26, + 11,0,0,3,0,6,0,12,0,0,0,63,0,127,128,97, + 128,1,128,127,128,255,128,193,128,255,192,125,192,10,13,26, + 11,0,0,12,0,30,0,51,0,0,0,63,0,127,128,97, + 128,1,128,127,128,255,128,193,128,255,192,125,192,10,12,24, + 11,0,0,59,0,110,0,0,0,63,0,127,128,97,128,1, + 128,127,128,255,128,193,128,255,192,125,192,10,12,24,11,0, + 0,51,0,51,0,0,0,63,0,127,128,97,128,1,128,127, + 128,255,128,193,128,255,192,125,192,10,14,28,11,0,0,12, + 0,18,0,18,0,12,0,0,0,63,0,127,128,97,128,1, + 128,127,128,255,128,193,128,255,192,125,192,10,9,18,11,0, + 0,123,128,255,192,204,192,12,192,127,192,255,192,204,0,255, + 192,123,128,10,14,28,11,0,251,61,128,127,128,227,128,193, + 128,192,0,192,0,225,192,127,192,63,0,8,0,12,0,6, + 0,30,0,28,0,10,13,26,11,0,0,24,0,12,0,6, + 0,0,0,30,0,127,128,225,192,192,192,255,192,255,192,224, + 0,127,192,31,192,10,13,26,11,0,0,3,0,6,0,12, + 0,0,0,30,0,127,128,225,192,192,192,255,192,255,192,224, + 0,127,192,31,192,10,13,26,11,0,0,12,0,30,0,51, + 0,0,0,30,0,127,128,225,192,192,192,255,192,255,192,224, + 0,127,192,31,192,10,12,24,11,0,0,51,0,51,0,0, + 0,30,0,127,128,225,192,192,192,255,192,255,192,224,0,127, + 192,31,192,8,13,13,11,1,0,48,24,12,0,248,248,24, + 24,24,24,24,255,255,8,13,13,11,1,0,12,24,48,0, + 248,248,24,24,24,24,24,255,255,8,13,13,11,1,0,24, + 60,102,0,248,248,24,24,24,24,24,255,255,8,12,12,11, + 1,0,204,204,0,248,248,24,24,24,24,24,255,255,10,13, + 26,11,0,0,225,128,251,128,62,0,119,0,195,128,63,128, + 97,192,192,192,192,192,192,192,225,192,127,128,30,0,10,12, + 24,11,0,0,59,0,110,0,0,0,239,0,255,128,113,128, + 97,128,97,128,97,128,97,128,243,192,243,192,10,13,26,11, + 0,0,24,0,12,0,6,0,0,0,30,0,127,128,225,192, + 192,192,192,192,192,192,225,192,127,128,30,0,10,13,26,11, + 0,0,3,0,6,0,12,0,0,0,30,0,127,128,225,192, + 192,192,192,192,192,192,225,192,127,128,30,0,10,13,26,11, + 0,0,12,0,30,0,51,0,0,0,30,0,127,128,225,192, + 192,192,192,192,192,192,225,192,127,128,30,0,10,12,24,11, + 0,0,59,0,110,0,0,0,30,0,127,128,225,192,192,192, + 192,192,192,192,225,192,127,128,30,0,10,12,24,11,0,0, + 51,0,51,0,0,0,30,0,127,128,225,192,192,192,192,192, + 192,192,225,192,127,128,30,0,10,10,20,11,0,0,12,0, + 12,0,0,0,0,0,255,192,255,192,0,0,0,0,12,0, + 12,0,12,11,22,11,255,255,0,48,15,96,63,192,113,224, + 99,96,102,96,108,96,120,224,63,192,111,0,192,0,10,13, + 26,11,0,0,24,0,12,0,6,0,0,0,231,128,231,128, + 97,128,97,128,97,128,97,128,99,128,127,192,61,192,10,13, + 26,11,0,0,6,0,12,0,24,0,0,0,231,128,231,128, + 97,128,97,128,97,128,97,128,99,128,127,192,61,192,10,13, + 26,11,0,0,12,0,30,0,51,0,0,0,231,128,231,128, + 97,128,97,128,97,128,97,128,99,128,127,192,61,192,10,12, + 24,11,0,0,51,0,51,0,0,0,231,128,231,128,97,128, + 97,128,97,128,97,128,99,128,127,192,61,192,10,17,34,11, + 0,252,3,0,6,0,12,0,0,0,243,192,243,192,97,128, + 97,128,51,0,51,0,30,0,30,0,12,0,24,0,56,0, + 252,0,252,0,10,16,32,11,0,252,224,0,224,0,96,0, + 111,0,127,128,113,192,96,192,96,192,96,192,113,192,127,128, + 111,0,96,0,96,0,248,0,248,0,10,16,32,11,0,252, + 51,0,51,0,0,0,243,192,243,192,97,128,97,128,51,0, + 51,0,30,0,30,0,12,0,24,0,56,0,252,0,252,0 + }; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--20-140-100-100-M-110-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 12 + Calculated Max Values w=12 h=16 x= 4 y= 9 dx=11 dy= 0 ascent=13 len=32 + Font Bounding box w=17 h=26 x=-4 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB14r[2167] U8G_SECTION(".progmem.u8g_font_courB14r") = { + 0,17,26,252,249,11,2,101,5,155,32,127,252,13,252,12, + 252,0,0,0,11,0,1,3,12,12,11,4,0,224,224,224, + 224,224,224,192,192,192,0,192,192,6,6,6,11,2,6,204, + 204,204,204,136,136,8,14,14,11,1,255,54,54,54,54,255, + 255,108,108,255,255,108,108,108,108,8,15,15,11,1,254,24, + 24,63,127,195,192,240,126,15,3,199,254,252,24,24,8,12, + 12,11,1,0,112,216,136,216,115,14,120,206,27,17,27,14, + 8,10,10,11,1,0,60,126,102,96,48,123,255,206,255,123, + 2,6,6,11,4,6,192,192,192,192,128,128,4,15,15,11, + 4,253,48,48,96,96,192,192,192,192,192,192,192,96,96,48, + 48,4,15,15,11,2,253,192,192,96,96,48,48,48,48,48, + 48,48,96,96,192,192,8,8,8,11,1,4,24,24,255,255, + 24,126,231,66,10,10,20,11,0,0,12,0,12,0,12,0, + 12,0,255,192,255,192,12,0,12,0,12,0,12,0,4,5, + 5,11,2,253,48,48,96,64,128,8,2,2,11,1,4,255, + 255,2,2,2,11,4,0,192,192,9,16,32,11,0,253,1, + 128,1,128,3,0,3,0,6,0,6,0,12,0,12,0,24, + 0,24,0,48,0,48,0,96,0,96,0,192,0,192,0,8, + 12,12,11,1,0,60,126,102,195,195,195,195,195,195,102,126, + 60,8,12,12,11,1,0,24,248,248,24,24,24,24,24,24, + 24,255,255,8,12,12,11,1,0,60,126,199,195,3,7,14, + 28,56,112,255,255,8,12,12,11,1,0,60,126,102,6,14, + 60,62,7,3,199,254,124,8,12,12,11,1,0,14,30,62, + 54,102,102,198,255,255,6,31,31,8,12,12,11,1,0,127, + 127,96,96,126,127,103,3,3,199,254,124,8,12,12,11,1, + 0,15,63,112,96,220,254,231,195,195,231,126,60,8,12,12, + 11,1,0,255,255,195,6,6,6,12,12,12,24,24,24,8, + 12,12,11,1,0,60,126,231,195,102,60,126,231,195,231,126, + 60,8,12,12,11,1,0,60,126,195,195,195,199,127,59,3, + 6,254,248,2,8,8,11,4,0,192,192,0,0,0,0,192, + 192,4,11,11,11,2,253,48,48,0,0,0,0,48,48,96, + 64,128,9,9,18,11,1,1,1,128,7,128,30,0,120,0, + 224,0,120,0,30,0,7,128,1,128,10,6,12,11,0,2, + 255,192,255,192,0,0,0,0,255,192,255,192,9,9,18,11, + 1,1,192,0,240,0,60,0,15,0,3,128,15,0,60,0, + 240,0,192,0,7,11,11,11,2,0,124,254,198,6,14,60, + 48,48,0,48,48,9,13,26,11,1,255,60,0,102,0,195, + 0,207,0,219,0,219,0,219,0,219,0,207,128,192,0,192, + 0,99,0,62,0,12,11,22,11,255,0,62,0,63,0,15, + 0,25,128,25,128,25,128,63,192,63,192,48,192,249,240,249, + 240,10,11,22,11,0,0,254,0,255,0,49,128,49,128,63, + 0,63,128,48,192,48,192,48,192,255,128,255,0,10,11,22, + 11,0,0,30,192,127,192,113,192,224,192,192,0,192,0,192, + 0,224,0,112,192,127,192,31,0,10,11,22,11,0,0,254, + 0,255,128,99,128,97,192,96,192,96,192,96,192,97,192,99, + 128,255,128,254,0,10,11,22,11,0,0,255,192,255,192,48, + 192,54,192,62,0,62,0,54,0,48,192,48,192,255,192,255, + 192,10,11,22,11,0,0,255,192,255,192,48,192,54,192,62, + 0,62,0,54,0,48,0,48,0,254,0,254,0,11,11,22, + 11,0,0,30,192,127,192,113,192,224,192,192,0,192,0,199, + 224,231,224,112,192,127,192,31,128,10,11,22,11,0,0,243, + 192,243,192,97,128,97,128,127,128,127,128,97,128,97,128,97, + 128,243,192,243,192,8,11,11,11,1,0,255,255,24,24,24, + 24,24,24,24,255,255,10,11,22,11,0,0,31,192,31,192, + 3,0,3,0,3,0,3,0,195,0,195,0,195,0,254,0, + 60,0,11,11,22,11,0,0,247,192,247,192,99,0,102,0, + 108,0,124,0,126,0,103,0,99,128,249,224,249,224,10,11, + 22,11,0,0,252,0,252,0,48,0,48,0,48,0,48,0, + 48,192,48,192,48,192,255,192,255,192,10,11,22,11,0,0, + 225,192,225,192,115,128,115,128,127,128,109,128,109,128,109,128, + 97,128,243,192,243,192,10,11,22,11,0,0,231,192,247,192, + 113,128,121,128,105,128,109,128,101,128,103,128,99,128,251,128, + 249,128,10,11,22,11,0,0,30,0,127,128,115,128,225,192, + 192,192,192,192,192,192,225,192,115,128,127,128,30,0,10,11, + 22,11,0,0,255,0,255,128,97,192,96,192,97,192,127,128, + 127,0,96,0,96,0,252,0,252,0,10,13,26,11,0,254, + 30,0,127,128,115,128,225,192,192,192,192,192,192,192,225,192, + 115,128,127,128,30,64,63,192,51,128,11,11,22,11,0,0, + 255,0,255,128,97,192,96,192,97,192,127,128,127,0,99,128, + 97,192,252,224,252,224,9,11,22,11,1,0,61,128,255,128, + 195,128,193,128,248,0,127,0,15,128,193,128,225,128,255,0, + 222,0,10,11,22,11,0,0,255,192,255,192,204,192,204,192, + 204,192,12,0,12,0,12,0,12,0,127,128,127,128,10,11, + 22,11,0,0,247,192,247,192,97,128,97,128,97,128,97,128, + 97,128,97,128,115,128,63,0,30,0,12,11,22,11,255,0, + 249,240,249,240,96,96,96,96,48,192,48,192,25,128,25,128, + 15,0,15,0,6,0,12,11,22,11,255,0,249,240,249,240, + 96,96,102,96,102,96,111,96,111,96,57,192,57,192,48,192, + 48,192,10,11,22,11,0,0,243,192,243,192,97,128,51,0, + 30,0,12,0,30,0,51,0,97,128,243,192,243,192,10,11, + 22,11,0,0,243,192,243,192,97,128,51,0,63,0,30,0, + 12,0,12,0,12,0,63,0,63,0,8,11,11,11,1,0, + 255,255,199,206,12,24,48,115,227,255,255,4,15,15,11,4, + 253,240,240,192,192,192,192,192,192,192,192,192,192,192,240,240, + 9,16,32,11,1,253,192,0,192,0,96,0,96,0,48,0, + 48,0,24,0,24,0,12,0,12,0,6,0,6,0,3,0, + 3,0,1,128,1,128,4,15,15,11,2,253,240,240,48,48, + 48,48,48,48,48,48,48,48,48,240,240,8,7,7,11,1, + 5,24,60,60,102,102,195,195,11,2,4,11,0,252,255,224, + 255,224,4,3,3,11,3,9,192,96,48,10,9,18,11,0, + 0,63,0,127,128,97,128,1,128,127,128,255,128,193,128,255, + 192,125,192,10,12,24,11,0,0,224,0,224,0,96,0,111, + 0,127,128,113,192,96,192,96,192,96,192,113,192,255,128,239, + 0,10,9,18,11,0,0,61,128,127,128,227,128,193,128,192, + 0,192,0,225,192,127,192,63,0,10,12,24,11,0,0,3, + 128,3,128,1,128,61,128,127,128,227,128,193,128,193,128,193, + 128,227,128,127,192,61,192,10,9,18,11,0,0,30,0,127, + 128,225,192,192,192,255,192,255,192,224,0,127,192,31,192,9, + 12,24,11,1,0,31,128,63,128,48,0,255,0,255,0,48, + 0,48,0,48,0,48,0,48,0,255,0,255,0,10,13,26, + 11,0,252,61,192,127,192,227,128,193,128,193,128,193,128,227, + 128,127,128,61,128,1,128,3,128,63,0,62,0,10,12,24, + 11,0,0,224,0,224,0,96,0,111,0,127,128,113,128,97, + 128,97,128,97,128,97,128,243,192,243,192,8,12,12,11,1, + 0,24,24,0,248,248,24,24,24,24,24,255,255,7,16,16, + 11,1,252,12,12,0,254,254,6,6,6,6,6,6,6,6, + 14,252,248,10,12,24,11,0,0,224,0,224,0,96,0,103, + 128,103,128,110,0,124,0,124,0,110,0,103,0,227,192,227, + 192,8,12,12,11,1,0,248,248,24,24,24,24,24,24,24, + 24,255,255,12,9,18,11,255,0,237,192,255,224,119,96,102, + 96,102,96,102,96,102,96,247,112,247,112,10,9,18,11,0, + 0,239,0,255,128,113,128,97,128,97,128,97,128,97,128,243, + 192,243,192,10,9,18,11,0,0,30,0,127,128,225,192,192, + 192,192,192,192,192,225,192,127,128,30,0,10,13,26,11,0, + 252,239,0,255,128,113,192,96,192,96,192,96,192,113,192,127, + 128,111,0,96,0,96,0,248,0,248,0,10,13,26,11,0, + 252,61,192,127,192,227,128,193,128,193,128,193,128,227,128,127, + 128,61,128,1,128,1,128,7,192,7,192,10,9,18,11,0, + 0,243,128,255,192,60,192,56,0,48,0,48,0,48,0,255, + 0,255,0,8,9,9,11,1,0,127,255,195,240,126,31,195, + 255,254,10,12,24,11,0,0,48,0,48,0,48,0,255,0, + 255,0,48,0,48,0,48,0,48,0,48,192,63,192,31,0, + 10,9,18,11,0,0,231,128,231,128,97,128,97,128,97,128, + 97,128,99,128,127,192,61,192,10,9,18,11,0,0,243,192, + 243,192,97,128,97,128,51,0,51,0,30,0,30,0,12,0, + 11,9,18,11,0,0,241,224,241,224,100,192,110,192,110,192, + 123,192,59,128,49,128,49,128,11,9,18,11,0,0,251,224, + 251,224,49,128,27,0,14,0,27,0,49,128,251,224,251,224, + 10,13,26,11,0,252,243,192,243,192,97,128,97,128,51,0, + 51,0,30,0,30,0,12,0,24,0,56,0,252,0,252,0, + 8,9,9,11,1,0,255,255,198,12,24,48,99,255,255,4, + 15,15,11,3,253,48,96,96,96,96,96,192,96,96,96,96, + 96,96,96,48,2,14,14,11,4,253,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,4,15,15,11,3,253,192,96, + 96,96,96,96,48,96,96,96,96,96,96,96,192,8,3,3, + 11,1,4,115,255,222,255}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--25-180-100-100-M-150-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 15, '1' Height: 16 + Calculated Max Values w=16 h=21 x= 6 y=13 dx=15 dy= 0 ascent=21 len=42 + Font Bounding box w=22 h=35 x=-4 y=-9 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =15 descent=-5 + X Font ascent =16 descent=-5 + Max Font ascent =21 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB18[6429] U8G_SECTION(".progmem.u8g_font_courB18") = { + 0,22,35,252,247,15,3,223,8,17,32,255,251,21,251,16, + 251,0,0,0,15,0,1,4,16,16,15,5,0,96,240,240, + 240,240,240,240,96,96,96,96,96,0,96,96,96,7,7,7, + 15,3,9,238,238,238,238,68,68,68,12,19,38,15,1,254, + 12,192,12,192,12,192,12,192,12,192,12,192,127,240,127,240, + 25,128,25,128,25,128,255,224,255,224,51,0,51,0,51,0, + 51,0,51,0,51,0,10,20,40,15,2,253,12,0,12,0, + 61,128,127,128,195,128,193,128,192,0,224,0,126,0,31,128, + 1,192,0,192,192,192,225,192,255,128,223,0,12,0,12,0, + 12,0,12,0,11,15,30,15,2,0,60,0,102,0,195,0, + 195,0,102,0,60,0,1,192,15,0,56,0,231,128,12,192, + 24,96,24,96,12,192,7,128,11,14,28,15,2,0,30,0, + 63,0,99,0,96,0,96,0,48,0,56,0,124,192,111,192, + 199,128,195,0,199,128,255,224,124,224,3,7,7,15,5,8, + 224,224,224,224,224,64,64,5,20,20,15,6,252,24,56,48, + 96,96,96,192,192,192,192,192,192,192,192,96,96,96,48,56, + 24,5,20,20,15,3,252,192,224,96,48,48,48,24,24,24, + 24,24,24,24,24,48,48,48,96,224,192,10,11,22,15,2, + 5,12,0,12,0,12,0,204,192,255,192,63,0,12,0,63, + 0,51,0,115,128,97,128,12,12,24,15,1,1,6,0,6, + 0,6,0,6,0,6,0,255,240,255,240,6,0,6,0,6, + 0,6,0,6,0,5,6,6,15,4,253,56,56,112,96,192, + 128,11,2,4,15,2,6,255,224,255,224,3,3,3,15,5, + 0,224,224,224,11,20,40,15,2,253,0,96,0,96,0,192, + 0,192,1,128,1,128,3,0,3,0,6,0,6,0,12,0, + 12,0,24,0,24,0,48,0,48,0,96,0,96,0,192,0, + 192,0,10,16,32,15,2,0,30,0,127,128,97,128,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,97,128,127,128,30,0,10,16,32,15,2,0,28,0, + 252,0,252,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,255,192,255,192,11,16, + 32,15,1,0,31,128,63,192,112,224,96,96,96,96,0,96, + 0,224,1,192,3,128,7,0,14,0,28,0,56,0,112,0, + 255,224,255,224,11,16,32,15,1,0,31,128,63,192,112,224, + 96,96,0,96,0,224,1,192,15,128,15,192,0,224,0,96, + 0,96,192,96,224,224,127,192,63,128,11,16,32,15,1,0, + 3,128,7,128,15,128,13,128,25,128,25,128,49,128,49,128, + 97,128,97,128,255,224,255,224,1,128,1,128,15,224,15,224, + 11,16,32,15,2,0,127,192,127,192,96,0,96,0,96,0, + 111,0,127,192,113,192,0,224,0,96,0,96,0,96,192,224, + 225,192,127,192,63,0,10,16,32,15,2,0,7,192,31,192, + 60,0,112,0,96,0,224,0,223,0,255,128,225,192,192,192, + 192,192,192,192,224,192,113,192,127,128,31,0,10,16,32,15, + 2,0,255,192,255,192,192,192,0,192,1,128,1,128,1,128, + 3,0,3,0,3,0,6,0,6,0,6,0,12,0,12,0, + 12,0,10,16,32,15,2,0,30,0,127,128,225,192,192,192, + 192,192,192,192,97,128,63,0,127,128,225,192,192,192,192,192, + 192,192,225,192,127,128,63,0,10,16,32,15,3,0,30,0, + 127,128,97,128,192,192,192,192,192,192,192,192,193,192,227,192, + 126,192,60,192,0,192,1,128,3,128,255,0,252,0,3,11, + 11,15,5,0,224,224,224,0,0,0,0,0,224,224,224,5, + 14,14,15,3,253,56,56,56,0,0,0,0,0,56,56,112, + 96,192,128,13,12,24,15,1,1,0,56,0,240,3,192,15, + 0,60,0,240,0,240,0,60,0,15,0,3,192,0,240,0, + 56,12,6,12,15,1,4,255,240,255,240,0,0,0,0,255, + 240,255,240,13,12,24,15,1,1,224,0,120,0,30,0,7, + 128,1,224,0,120,0,120,1,224,7,128,30,0,120,0,224, + 0,9,15,30,15,3,0,126,0,255,0,195,128,193,128,193, + 128,1,128,3,128,15,0,28,0,24,0,24,0,0,0,24, + 0,24,0,24,0,10,18,36,15,2,254,28,0,127,0,99, + 0,193,128,193,128,199,128,207,128,221,128,217,128,217,128,221, + 128,207,192,199,192,192,0,192,0,97,128,127,128,30,0,14, + 15,30,15,0,0,63,0,63,0,7,128,7,128,12,192,12, + 192,28,224,24,96,24,96,63,240,63,240,112,56,96,24,252, + 252,252,252,13,15,30,15,1,0,255,192,255,224,48,112,48, + 48,48,48,48,112,63,224,63,240,48,56,48,24,48,24,48, + 24,48,56,255,240,255,224,12,15,30,15,1,0,15,176,63, + 240,112,112,96,48,224,48,192,0,192,0,192,0,192,0,192, + 0,224,0,96,0,112,48,63,240,15,192,14,15,30,15,0, + 0,255,192,255,240,48,56,48,24,48,28,48,12,48,12,48, + 12,48,12,48,12,48,12,48,24,48,56,255,240,255,224,13, + 15,30,15,1,0,255,240,255,240,48,48,48,48,49,176,49, + 128,63,128,63,128,49,128,49,128,48,24,48,24,48,24,255, + 248,255,248,13,15,30,15,1,0,255,248,255,248,48,24,48, + 24,49,152,49,128,63,128,63,128,49,128,49,128,48,0,48, + 0,48,0,255,0,255,0,13,15,30,15,1,0,15,216,63, + 248,112,56,96,24,224,24,192,0,192,0,192,0,193,248,193, + 248,224,24,96,24,112,56,63,240,15,192,14,15,30,15,0, + 0,252,252,252,252,48,48,48,48,48,48,48,48,63,240,63, + 240,48,48,48,48,48,48,48,48,48,48,252,252,252,252,10, + 15,30,15,2,0,255,192,255,192,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,255, + 192,255,192,13,15,30,15,1,0,31,248,31,248,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,192,192,192,192,192, + 192,225,192,127,128,63,0,14,15,30,15,0,0,252,248,252, + 248,48,224,49,192,51,128,55,0,62,0,63,0,59,128,49, + 192,48,224,48,96,48,112,252,60,252,60,12,15,30,15,1, + 0,255,0,255,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,48,24,48,24,48,255,240,255,240,14, + 15,30,15,0,0,240,60,240,60,120,120,120,120,108,216,108, + 216,108,216,103,152,99,24,99,24,96,24,96,24,96,24,248, + 124,248,124,13,15,30,15,1,0,240,248,240,248,120,48,120, + 48,108,48,108,48,102,48,102,48,99,48,99,48,97,176,97, + 176,96,240,248,240,248,112,13,15,30,15,1,0,15,128,63, + 224,112,112,96,48,224,56,192,24,192,24,192,24,192,24,192, + 24,224,56,96,48,112,112,63,224,15,128,13,15,30,15,1, + 0,255,192,255,240,48,56,48,24,48,24,48,24,48,24,48, + 56,63,240,63,192,48,0,48,0,48,0,255,0,255,0,13, + 18,36,15,1,253,15,128,63,224,112,112,96,48,224,56,192, + 24,192,24,192,24,192,24,192,24,224,56,96,48,112,112,63, + 224,15,128,14,24,63,248,57,224,14,15,30,15,0,0,255, + 128,255,224,48,112,48,48,48,48,48,48,48,112,63,224,63, + 128,49,192,48,224,48,96,48,112,252,60,252,60,12,15,30, + 15,1,0,31,176,63,240,112,112,96,48,96,48,112,0,62, + 0,31,192,3,224,0,112,192,48,192,48,224,112,255,224,223, + 192,12,15,30,15,1,0,255,240,255,240,198,48,198,48,198, + 48,198,48,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,63,192,63,192,13,15,30,15,1,0,248,248,248,248,96, + 48,96,48,96,48,96,48,96,48,96,48,96,48,96,48,96, + 48,96,48,48,96,63,224,31,192,14,15,30,15,0,0,248, + 124,248,124,96,24,96,24,48,48,48,48,48,48,24,96,24, + 96,24,96,12,192,12,192,7,128,7,128,7,128,14,15,30, + 15,0,0,248,124,248,124,96,24,99,24,99,24,103,152,103, + 152,111,216,108,216,108,216,60,240,56,112,56,112,56,112,56, + 112,14,15,30,15,0,0,252,252,252,252,112,56,56,112,28, + 224,15,192,7,128,3,0,7,128,12,192,28,224,56,112,112, + 56,252,252,252,252,14,15,30,15,0,0,252,252,252,252,112, + 56,56,112,24,96,12,192,15,192,7,128,3,0,3,0,3, + 0,3,0,3,0,31,224,31,224,11,15,30,15,2,0,255, + 224,255,224,192,224,193,192,195,128,3,0,7,0,14,0,28, + 0,24,0,56,96,112,96,224,96,255,224,255,224,5,20,20, + 15,6,252,248,248,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,248,248,11,20,40,15,2,253,192,0,192, + 0,96,0,96,0,48,0,48,0,24,0,24,0,12,0,12, + 0,6,0,6,0,3,0,3,0,1,128,1,128,0,192,0, + 192,0,96,0,96,5,20,20,15,3,252,248,248,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,248,248,8, + 8,8,15,3,8,24,24,60,60,102,102,195,195,15,2,4, + 15,0,252,255,254,255,254,5,4,4,15,4,11,192,96,48, + 24,12,11,22,15,1,0,63,0,127,128,97,192,0,192,31, + 192,127,192,224,192,192,192,193,192,255,240,126,240,13,16,32, + 15,1,0,240,0,240,0,48,0,48,0,48,0,55,192,63, + 240,60,112,56,56,48,24,48,24,48,24,56,56,60,112,255, + 240,247,192,12,11,22,15,1,0,31,176,127,240,112,240,224, + 112,192,48,192,0,192,0,224,0,112,112,127,240,31,192,13, + 16,32,15,1,0,1,224,1,224,0,96,0,96,0,96,31, + 96,127,224,113,224,224,224,192,96,192,96,192,96,224,224,113, + 224,127,248,31,120,12,11,22,15,1,0,31,128,127,224,112, + 224,224,112,192,48,255,240,255,240,224,0,112,112,127,240,31, + 192,11,16,32,15,2,0,7,224,15,224,28,0,24,0,24, + 0,255,192,255,192,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,255,192,255,192,13,16,32,15,1,251,31,120,127, + 248,113,224,224,224,192,96,192,96,192,96,224,224,113,224,127, + 224,31,96,0,96,0,96,0,224,63,192,63,128,14,16,32, + 15,0,0,240,0,240,0,48,0,48,0,48,0,55,192,63, + 224,60,112,56,48,48,48,48,48,48,48,48,48,48,48,252, + 252,252,252,10,16,32,15,2,0,28,0,28,0,28,0,0, + 0,0,0,124,0,124,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,255,192,255,192,8,21,21,15,2,251,14, + 14,14,0,0,255,255,3,3,3,3,3,3,3,3,3,3, + 3,7,254,252,13,16,32,15,1,0,240,0,240,0,48,0, + 48,0,48,0,49,224,49,224,51,128,55,0,62,0,62,0, + 55,0,51,128,49,192,241,248,241,248,10,16,32,15,2,0, + 124,0,124,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,255,192,255,192, + 16,11,22,15,0,0,239,120,255,252,57,204,49,140,49,140, + 49,140,49,140,49,140,49,140,249,239,249,239,14,11,22,15, + 0,0,243,192,247,224,60,112,56,48,48,48,48,48,48,48, + 48,48,48,48,252,252,252,252,12,11,22,15,1,0,31,128, + 127,224,112,224,224,112,192,48,192,48,192,48,224,112,112,224, + 127,224,31,128,13,16,32,15,0,251,247,192,255,240,60,112, + 56,56,48,24,48,24,48,24,56,56,60,112,63,240,55,192, + 48,0,48,0,48,0,254,0,254,0,13,16,32,15,1,251, + 31,120,127,248,113,224,224,224,192,96,192,96,192,96,224,224, + 113,224,127,224,31,96,0,96,0,96,0,96,3,248,3,248, + 12,11,22,15,1,0,121,224,127,240,30,48,28,0,24,0, + 24,0,24,0,24,0,24,0,255,192,255,192,11,11,22,15, + 2,0,62,192,127,192,225,192,224,192,124,0,31,0,7,192, + 192,224,224,224,255,192,223,128,11,15,30,15,1,0,48,0, + 48,0,48,0,48,0,255,192,255,192,48,0,48,0,48,0, + 48,0,48,0,48,0,56,224,31,224,15,128,14,11,22,15, + 0,0,240,240,240,240,48,48,48,48,48,48,48,48,48,48, + 48,48,56,112,31,252,15,188,14,11,22,15,0,0,252,252, + 252,252,48,48,48,48,24,96,24,96,12,192,12,192,7,128, + 7,128,3,0,14,11,22,15,0,0,248,124,248,124,99,24, + 99,24,51,48,55,176,55,176,60,240,28,224,24,96,24,96, + 12,11,22,15,1,0,249,240,249,240,48,192,25,128,15,0, + 6,0,15,0,25,128,48,192,249,240,249,240,12,16,32,15, + 1,251,249,240,249,240,96,96,112,224,48,192,57,192,25,128, + 27,128,15,0,15,0,6,0,14,0,12,0,28,0,254,0, + 254,0,10,11,22,15,2,0,255,192,255,192,195,128,199,0, + 14,0,28,0,56,0,112,192,224,192,255,192,255,192,7,20, + 20,15,4,252,14,24,48,48,48,48,48,48,112,224,112,48, + 48,48,48,48,48,48,24,14,2,18,18,15,6,254,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 7,20,20,15,3,252,224,48,24,24,24,24,24,24,28,14, + 28,24,24,24,24,24,24,24,48,224,12,4,8,15,1,5, + 60,48,126,112,231,224,195,192,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,0,0,0,15,0,1,4, + 16,16,15,4,251,96,96,96,0,96,96,96,96,96,240,240, + 240,240,240,240,96,9,16,32,15,2,0,12,0,12,0,12, + 0,61,128,127,128,227,128,193,128,192,0,192,0,192,0,225, + 128,127,128,63,0,12,0,12,0,12,0,12,15,30,15,1, + 0,15,128,31,192,56,192,48,0,48,0,48,0,48,0,255, + 0,255,0,24,0,24,0,56,0,112,48,255,240,255,224,10, + 11,22,15,2,2,192,192,255,192,127,128,225,192,192,192,192, + 192,192,192,225,192,127,128,255,192,192,192,12,15,30,15,1, + 0,249,240,249,240,112,224,48,192,57,192,25,128,15,0,15, + 0,63,192,6,0,63,192,6,0,6,0,63,192,63,192,2, + 18,18,15,6,254,192,192,192,192,192,192,192,192,0,0,192, + 192,192,192,192,192,192,192,12,18,36,15,1,254,15,224,31, + 224,56,96,48,96,56,0,126,0,207,128,195,224,240,240,124, + 48,31,48,7,240,1,224,0,192,96,192,97,192,127,128,127, + 0,7,3,3,15,3,12,198,198,198,14,14,28,15,0,1, + 7,128,31,224,56,112,103,152,111,216,220,204,216,12,216,12, + 220,204,111,216,103,152,56,112,31,224,7,128,8,11,11,15, + 3,4,60,102,6,126,198,198,207,123,0,255,255,13,9,18, + 15,1,1,14,56,28,112,56,224,113,192,227,128,113,192,56, + 224,28,112,14,56,12,6,12,15,1,4,255,240,255,240,0, + 48,0,48,0,48,0,48,11,2,4,15,2,6,255,224,255, + 224,14,14,28,15,0,1,7,128,31,224,56,112,111,152,111, + 216,204,204,204,204,207,140,205,140,108,216,108,216,56,112,31, + 224,7,128,7,2,2,15,3,13,254,254,8,7,7,15,3, + 9,60,102,195,195,195,102,60,12,14,28,15,1,0,6,0, + 6,0,6,0,6,0,255,240,255,240,6,0,6,0,6,0, + 6,0,0,0,0,0,255,240,255,240,7,9,9,15,4,7, + 124,198,198,12,24,48,96,198,254,7,9,9,15,4,7,124, + 198,198,12,60,6,198,198,124,6,4,4,15,4,12,28,56, + 112,224,14,16,32,15,0,251,240,240,240,240,48,48,48,48, + 48,48,48,48,48,48,48,48,56,112,63,252,63,188,48,0, + 48,0,48,0,48,0,48,0,12,18,36,15,1,254,31,240, + 127,240,230,192,230,192,230,192,230,192,230,192,126,192,30,192, + 6,192,6,192,6,192,6,192,6,192,6,192,6,192,62,240, + 62,240,3,3,3,15,5,6,224,224,224,5,6,6,15,4, + 251,48,48,120,24,248,112,8,9,9,15,3,7,24,248,24, + 24,24,24,24,24,255,8,11,11,15,3,4,60,126,195,195, + 195,195,126,60,0,255,255,13,9,18,15,1,1,227,128,113, + 192,56,224,28,112,14,56,28,112,56,224,113,192,227,128,16, + 16,32,15,255,0,24,0,248,1,24,3,24,6,24,12,24, + 24,24,48,24,100,255,204,1,156,3,44,6,76,12,140,24, + 254,48,12,32,30,16,16,32,15,255,0,24,0,248,1,24, + 3,24,6,24,12,24,24,24,48,24,126,255,243,1,163,3, + 6,6,12,12,24,24,48,48,99,32,127,15,16,32,15,0, + 0,124,0,198,2,198,6,12,12,60,24,6,48,198,96,198, + 200,125,152,3,56,6,88,12,152,25,24,49,252,96,24,64, + 60,9,15,30,15,2,252,12,0,12,0,12,0,0,0,12, + 0,12,0,28,0,120,0,224,0,192,0,193,128,193,128,225, + 128,127,128,63,0,14,20,40,15,0,0,56,0,28,0,14, + 0,7,0,0,0,63,0,63,0,7,128,7,128,12,192,12, + 192,28,224,24,96,24,96,63,240,63,240,112,56,96,24,252, + 252,252,252,14,20,40,15,0,0,0,224,1,192,3,128,7, + 0,0,0,63,0,63,0,7,128,7,128,12,192,12,192,28, + 224,24,96,24,96,63,240,63,240,112,56,96,24,252,252,252, + 252,14,21,42,15,0,0,6,0,15,0,31,128,57,192,112, + 224,0,0,63,0,63,0,7,128,7,128,12,192,12,192,28, + 224,24,96,24,96,63,240,63,240,112,56,96,24,252,252,252, + 252,14,19,38,15,0,0,14,96,31,192,51,128,0,0,63, + 0,63,0,7,128,7,128,12,192,12,192,28,224,24,96,24, + 96,63,240,63,240,112,56,96,24,252,252,252,252,14,19,38, + 15,0,0,24,192,24,192,24,192,0,0,63,0,63,0,7, + 128,7,128,12,192,12,192,28,224,24,96,24,96,63,240,63, + 240,112,56,96,24,252,252,252,252,14,20,40,15,0,0,7, + 0,13,128,8,128,13,128,7,0,63,0,63,0,7,128,7, + 128,12,192,12,192,28,224,24,96,24,96,63,240,63,240,112, + 56,96,24,252,252,252,252,15,15,30,15,0,0,15,254,15, + 254,3,134,7,134,7,128,13,152,9,248,25,248,31,152,63, + 128,49,128,97,134,97,134,247,254,247,254,12,20,40,15,1, + 251,15,176,63,240,112,112,96,48,224,48,192,0,192,0,192, + 0,192,0,192,0,224,0,96,16,112,48,63,224,15,192,6, + 0,15,0,3,0,31,0,14,0,13,20,40,15,1,0,56, + 0,28,0,14,0,7,0,0,0,255,240,255,240,48,48,48, + 48,49,176,49,128,63,128,63,128,49,128,49,128,48,24,48, + 24,48,24,255,248,255,248,13,20,40,15,1,0,0,224,1, + 192,3,128,7,0,0,0,255,240,255,240,48,48,48,48,49, + 176,49,128,63,128,63,128,49,128,49,128,48,24,48,24,48, + 24,255,248,255,248,13,21,42,15,1,0,3,0,7,128,15, + 192,28,224,56,112,0,0,255,240,255,240,48,48,48,48,49, + 176,49,128,63,128,63,128,49,128,49,128,48,24,48,24,48, + 24,255,248,255,248,13,19,38,15,1,0,24,192,24,192,24, + 192,0,0,255,240,255,240,48,48,48,48,49,176,49,128,63, + 128,63,128,49,128,49,128,48,24,48,24,48,24,255,248,255, + 248,10,20,40,15,2,0,112,0,56,0,28,0,14,0,0, + 0,255,192,255,192,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,255,192,255,192,10, + 20,40,15,2,0,3,128,7,0,14,0,28,0,0,0,255, + 192,255,192,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,255,192,255,192,10,21,42, + 15,2,0,12,0,30,0,63,0,115,128,225,192,0,0,255, + 192,255,192,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,255,192,255,192,10,19,38, + 15,2,0,51,0,51,0,51,0,0,0,255,192,255,192,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,255,192,255,192,14,15,30,15,0,0,255, + 192,255,240,48,56,48,24,48,28,48,12,254,12,254,12,48, + 12,48,12,48,12,48,24,48,56,255,240,255,224,13,19,38, + 15,1,0,14,96,31,192,51,128,0,0,240,248,240,248,120, + 48,120,48,108,48,108,48,102,48,102,48,99,48,99,48,97, + 176,97,176,96,240,248,240,248,112,13,20,40,15,1,0,28, + 0,14,0,7,0,3,128,0,0,15,128,63,224,112,112,96, + 48,224,56,192,24,192,24,192,24,192,24,192,24,224,56,96, + 48,112,112,63,224,15,128,13,20,40,15,1,0,0,224,1, + 192,3,128,7,0,0,0,15,128,63,224,112,112,96,48,224, + 56,192,24,192,24,192,24,192,24,192,24,224,56,96,48,112, + 112,63,224,15,128,13,21,42,15,1,0,3,0,7,128,15, + 192,28,224,56,112,0,0,15,128,63,224,112,112,96,48,224, + 56,192,24,192,24,192,24,192,24,192,24,224,56,96,48,112, + 112,63,224,15,128,13,19,38,15,1,0,14,96,31,192,51, + 128,0,0,15,128,63,224,112,112,96,48,224,56,192,24,192, + 24,192,24,192,24,192,24,224,56,96,48,112,112,63,224,15, + 128,13,19,38,15,1,0,24,192,24,192,24,192,0,0,15, + 128,63,224,112,112,96,48,224,56,192,24,192,24,192,24,192, + 24,192,24,224,56,96,48,112,112,63,224,15,128,12,12,24, + 15,1,1,64,32,224,112,112,224,57,192,31,128,15,0,15, + 0,31,128,57,192,112,224,224,112,64,32,13,18,36,15,1, + 255,0,24,0,48,15,224,63,224,112,112,96,240,225,184,193, + 24,195,24,198,24,196,24,204,24,232,56,120,48,112,112,63, + 224,111,128,192,0,13,20,40,15,1,0,56,0,28,0,14, + 0,7,0,0,0,248,248,248,248,96,48,96,48,96,48,96, + 48,96,48,96,48,96,48,96,48,96,48,96,48,48,96,63, + 224,31,192,13,20,40,15,1,0,0,224,1,192,3,128,7, + 0,0,0,248,248,248,248,96,48,96,48,96,48,96,48,96, + 48,96,48,96,48,96,48,96,48,96,48,48,96,63,224,31, + 192,13,21,42,15,1,0,3,0,7,128,15,192,28,224,56, + 112,0,0,248,248,248,248,96,48,96,48,96,48,96,48,96, + 48,96,48,96,48,96,48,96,48,96,48,48,96,63,224,31, + 192,13,19,38,15,1,0,24,192,24,192,24,192,0,0,248, + 248,248,248,96,48,96,48,96,48,96,48,96,48,96,48,96, + 48,96,48,96,48,96,48,48,96,63,224,31,192,14,20,40, + 15,0,0,0,224,1,192,3,128,7,0,0,0,252,252,252, + 252,112,56,56,112,24,96,12,192,15,192,7,128,3,0,3, + 0,3,0,3,0,3,0,31,224,31,224,13,15,30,15,1, + 0,252,0,252,0,48,0,63,192,63,240,48,56,48,24,48, + 24,48,24,48,56,63,240,63,192,48,0,252,0,252,0,12, + 16,32,15,1,0,15,0,31,128,57,192,48,192,48,192,49, + 192,55,128,55,192,48,224,48,112,48,48,48,48,48,48,51, + 112,251,224,249,192,12,16,32,15,1,0,112,0,56,0,28, + 0,14,0,0,0,63,0,127,128,97,192,0,192,31,192,127, + 192,224,192,192,192,193,192,255,240,126,240,12,16,32,15,1, + 0,1,192,3,128,7,0,14,0,0,0,63,0,127,128,97, + 192,0,192,31,192,127,192,224,192,192,192,193,192,255,240,126, + 240,12,16,32,15,1,0,14,0,31,0,59,128,113,192,0, + 0,63,0,127,128,97,192,0,192,31,192,127,192,224,192,192, + 192,193,192,255,240,126,240,12,15,30,15,1,0,28,192,63, + 128,103,0,0,0,63,0,127,128,97,192,0,192,31,192,127, + 192,224,192,192,192,193,192,255,240,126,240,12,15,30,15,1, + 0,49,128,49,128,49,128,0,0,63,0,127,128,97,192,0, + 192,31,192,127,192,224,192,192,192,193,192,255,240,126,240,12, + 16,32,15,1,0,14,0,27,0,17,0,27,0,14,0,63, + 0,127,128,97,192,0,192,31,192,127,192,224,192,192,192,193, + 192,255,240,126,240,14,11,22,15,0,0,60,240,127,248,103, + 156,3,12,31,12,127,252,227,252,195,0,199,140,255,252,124, + 240,11,16,32,15,1,251,31,96,127,224,112,224,224,96,192, + 96,192,0,192,0,224,0,112,96,127,224,31,192,6,0,15, + 0,3,0,31,0,14,0,12,16,32,15,1,0,56,0,28, + 0,14,0,7,0,0,0,31,128,127,224,112,224,224,112,192, + 48,255,240,255,240,224,0,112,112,127,240,31,192,12,16,32, + 15,1,0,1,192,3,128,7,0,14,0,0,0,31,128,127, + 224,112,224,224,112,192,48,255,240,255,240,224,0,112,112,127, + 240,31,192,12,16,32,15,1,0,7,0,15,128,29,192,56, + 224,0,0,31,128,127,224,112,224,224,112,192,48,255,240,255, + 240,224,0,112,112,127,240,31,192,12,15,30,15,1,0,49, + 128,49,128,49,128,0,0,31,128,127,224,112,224,224,112,192, + 48,255,240,255,240,224,0,112,112,127,240,31,192,10,16,32, + 15,2,0,224,0,112,0,56,0,28,0,0,0,124,0,124, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,255, + 192,255,192,10,16,32,15,2,0,3,128,7,0,14,0,28, + 0,0,0,124,0,124,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,255,192,255,192,10,16,32,15,2,0,28, + 0,62,0,119,0,227,128,0,0,124,0,124,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,255,192,255,192,10, + 15,30,15,2,0,99,0,99,0,99,0,0,0,124,0,124, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,255, + 192,255,192,13,17,34,15,0,0,240,0,252,112,15,240,31, + 128,125,192,112,224,15,240,63,240,56,120,112,56,96,24,96, + 24,96,24,112,56,56,112,63,240,15,192,14,15,30,15,0, + 0,14,96,31,192,51,128,0,0,243,192,247,224,60,112,56, + 48,48,48,48,48,48,48,48,48,48,48,252,252,252,252,12, + 16,32,15,1,0,56,0,28,0,14,0,7,0,0,0,31, + 128,127,224,112,224,224,112,192,48,192,48,192,48,224,112,112, + 224,127,224,31,128,12,16,32,15,1,0,1,192,3,128,7, + 0,14,0,0,0,31,128,127,224,112,224,224,112,192,48,192, + 48,192,48,224,112,112,224,127,224,31,128,12,16,32,15,1, + 0,14,0,31,0,59,128,113,192,0,0,31,128,127,224,112, + 224,224,112,192,48,192,48,192,48,224,112,112,224,127,224,31, + 128,12,15,30,15,1,0,28,192,63,128,103,0,0,0,31, + 128,127,224,112,224,224,112,192,48,192,48,192,48,224,112,112, + 224,127,224,31,128,12,15,30,15,1,0,49,128,49,128,49, + 128,0,0,31,128,127,224,112,224,224,112,192,48,192,48,192, + 48,224,112,112,224,127,224,31,128,13,12,24,15,0,1,7, + 0,7,0,7,0,0,0,0,0,255,248,255,248,0,0,0, + 0,7,0,7,0,7,0,14,14,28,15,0,254,0,12,15, + 216,63,240,56,112,112,216,97,152,99,24,102,24,108,56,56, + 112,63,240,63,192,96,0,192,0,14,16,32,15,0,0,56, + 0,28,0,14,0,7,0,0,0,240,240,240,240,48,48,48, + 48,48,48,48,48,48,48,48,48,56,112,31,252,15,188,14, + 16,32,15,0,0,1,192,3,128,7,0,14,0,0,0,240, + 240,240,240,48,48,48,48,48,48,48,48,48,48,48,48,56, + 112,31,252,15,188,14,16,32,15,0,0,7,0,15,128,29, + 192,56,224,0,0,240,240,240,240,48,48,48,48,48,48,48, + 48,48,48,48,48,56,112,31,252,15,188,14,15,30,15,0, + 0,24,192,24,192,24,192,0,0,240,240,240,240,48,48,48, + 48,48,48,48,48,48,48,48,48,56,112,31,252,15,188,12, + 21,42,15,1,251,0,224,1,192,3,128,7,0,0,0,249, + 240,249,240,96,96,112,224,48,192,57,192,25,128,27,128,15, + 0,15,0,6,0,14,0,12,0,28,0,254,0,254,0,13, + 21,42,15,1,251,240,0,240,0,48,0,48,0,48,0,55, + 192,63,240,60,112,56,56,48,24,48,24,48,24,56,56,60, + 112,63,240,55,192,48,0,48,0,48,0,254,0,254,0,12, + 20,40,15,1,251,49,128,49,128,49,128,0,0,249,240,249, + 240,96,96,112,224,48,192,57,192,25,128,27,128,15,0,15, + 0,6,0,14,0,12,0,28,0,254,0,254,0}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--25-180-100-100-M-150-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 15, '1' Height: 16 + Calculated Max Values w=16 h=21 x= 6 y=11 dx=15 dy= 0 ascent=17 len=40 + Font Bounding box w=22 h=35 x=-4 y=-9 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =15 descent=-5 + X Font ascent =16 descent=-5 + Max Font ascent =17 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB18r[3001] U8G_SECTION(".progmem.u8g_font_courB18r") = { + 0,22,35,252,247,15,3,223,8,17,32,127,251,17,251,16, + 251,0,0,0,15,0,1,4,16,16,15,5,0,96,240,240, + 240,240,240,240,96,96,96,96,96,0,96,96,96,7,7,7, + 15,3,9,238,238,238,238,68,68,68,12,19,38,15,1,254, + 12,192,12,192,12,192,12,192,12,192,12,192,127,240,127,240, + 25,128,25,128,25,128,255,224,255,224,51,0,51,0,51,0, + 51,0,51,0,51,0,10,20,40,15,2,253,12,0,12,0, + 61,128,127,128,195,128,193,128,192,0,224,0,126,0,31,128, + 1,192,0,192,192,192,225,192,255,128,223,0,12,0,12,0, + 12,0,12,0,11,15,30,15,2,0,60,0,102,0,195,0, + 195,0,102,0,60,0,1,192,15,0,56,0,231,128,12,192, + 24,96,24,96,12,192,7,128,11,14,28,15,2,0,30,0, + 63,0,99,0,96,0,96,0,48,0,56,0,124,192,111,192, + 199,128,195,0,199,128,255,224,124,224,3,7,7,15,5,8, + 224,224,224,224,224,64,64,5,20,20,15,6,252,24,56,48, + 96,96,96,192,192,192,192,192,192,192,192,96,96,96,48,56, + 24,5,20,20,15,3,252,192,224,96,48,48,48,24,24,24, + 24,24,24,24,24,48,48,48,96,224,192,10,11,22,15,2, + 5,12,0,12,0,12,0,204,192,255,192,63,0,12,0,63, + 0,51,0,115,128,97,128,12,12,24,15,1,1,6,0,6, + 0,6,0,6,0,6,0,255,240,255,240,6,0,6,0,6, + 0,6,0,6,0,5,6,6,15,4,253,56,56,112,96,192, + 128,11,2,4,15,2,6,255,224,255,224,3,3,3,15,5, + 0,224,224,224,11,20,40,15,2,253,0,96,0,96,0,192, + 0,192,1,128,1,128,3,0,3,0,6,0,6,0,12,0, + 12,0,24,0,24,0,48,0,48,0,96,0,96,0,192,0, + 192,0,10,16,32,15,2,0,30,0,127,128,97,128,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,97,128,127,128,30,0,10,16,32,15,2,0,28,0, + 252,0,252,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,255,192,255,192,11,16, + 32,15,1,0,31,128,63,192,112,224,96,96,96,96,0,96, + 0,224,1,192,3,128,7,0,14,0,28,0,56,0,112,0, + 255,224,255,224,11,16,32,15,1,0,31,128,63,192,112,224, + 96,96,0,96,0,224,1,192,15,128,15,192,0,224,0,96, + 0,96,192,96,224,224,127,192,63,128,11,16,32,15,1,0, + 3,128,7,128,15,128,13,128,25,128,25,128,49,128,49,128, + 97,128,97,128,255,224,255,224,1,128,1,128,15,224,15,224, + 11,16,32,15,2,0,127,192,127,192,96,0,96,0,96,0, + 111,0,127,192,113,192,0,224,0,96,0,96,0,96,192,224, + 225,192,127,192,63,0,10,16,32,15,2,0,7,192,31,192, + 60,0,112,0,96,0,224,0,223,0,255,128,225,192,192,192, + 192,192,192,192,224,192,113,192,127,128,31,0,10,16,32,15, + 2,0,255,192,255,192,192,192,0,192,1,128,1,128,1,128, + 3,0,3,0,3,0,6,0,6,0,6,0,12,0,12,0, + 12,0,10,16,32,15,2,0,30,0,127,128,225,192,192,192, + 192,192,192,192,97,128,63,0,127,128,225,192,192,192,192,192, + 192,192,225,192,127,128,63,0,10,16,32,15,3,0,30,0, + 127,128,97,128,192,192,192,192,192,192,192,192,193,192,227,192, + 126,192,60,192,0,192,1,128,3,128,255,0,252,0,3,11, + 11,15,5,0,224,224,224,0,0,0,0,0,224,224,224,5, + 14,14,15,3,253,56,56,56,0,0,0,0,0,56,56,112, + 96,192,128,13,12,24,15,1,1,0,56,0,240,3,192,15, + 0,60,0,240,0,240,0,60,0,15,0,3,192,0,240,0, + 56,12,6,12,15,1,4,255,240,255,240,0,0,0,0,255, + 240,255,240,13,12,24,15,1,1,224,0,120,0,30,0,7, + 128,1,224,0,120,0,120,1,224,7,128,30,0,120,0,224, + 0,9,15,30,15,3,0,126,0,255,0,195,128,193,128,193, + 128,1,128,3,128,15,0,28,0,24,0,24,0,0,0,24, + 0,24,0,24,0,10,18,36,15,2,254,28,0,127,0,99, + 0,193,128,193,128,199,128,207,128,221,128,217,128,217,128,221, + 128,207,192,199,192,192,0,192,0,97,128,127,128,30,0,14, + 15,30,15,0,0,63,0,63,0,7,128,7,128,12,192,12, + 192,28,224,24,96,24,96,63,240,63,240,112,56,96,24,252, + 252,252,252,13,15,30,15,1,0,255,192,255,224,48,112,48, + 48,48,48,48,112,63,224,63,240,48,56,48,24,48,24,48, + 24,48,56,255,240,255,224,12,15,30,15,1,0,15,176,63, + 240,112,112,96,48,224,48,192,0,192,0,192,0,192,0,192, + 0,224,0,96,0,112,48,63,240,15,192,14,15,30,15,0, + 0,255,192,255,240,48,56,48,24,48,28,48,12,48,12,48, + 12,48,12,48,12,48,12,48,24,48,56,255,240,255,224,13, + 15,30,15,1,0,255,240,255,240,48,48,48,48,49,176,49, + 128,63,128,63,128,49,128,49,128,48,24,48,24,48,24,255, + 248,255,248,13,15,30,15,1,0,255,248,255,248,48,24,48, + 24,49,152,49,128,63,128,63,128,49,128,49,128,48,0,48, + 0,48,0,255,0,255,0,13,15,30,15,1,0,15,216,63, + 248,112,56,96,24,224,24,192,0,192,0,192,0,193,248,193, + 248,224,24,96,24,112,56,63,240,15,192,14,15,30,15,0, + 0,252,252,252,252,48,48,48,48,48,48,48,48,63,240,63, + 240,48,48,48,48,48,48,48,48,48,48,252,252,252,252,10, + 15,30,15,2,0,255,192,255,192,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,255, + 192,255,192,13,15,30,15,1,0,31,248,31,248,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,192,192,192,192,192, + 192,225,192,127,128,63,0,14,15,30,15,0,0,252,248,252, + 248,48,224,49,192,51,128,55,0,62,0,63,0,59,128,49, + 192,48,224,48,96,48,112,252,60,252,60,12,15,30,15,1, + 0,255,0,255,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,48,24,48,24,48,255,240,255,240,14, + 15,30,15,0,0,240,60,240,60,120,120,120,120,108,216,108, + 216,108,216,103,152,99,24,99,24,96,24,96,24,96,24,248, + 124,248,124,13,15,30,15,1,0,240,248,240,248,120,48,120, + 48,108,48,108,48,102,48,102,48,99,48,99,48,97,176,97, + 176,96,240,248,240,248,112,13,15,30,15,1,0,15,128,63, + 224,112,112,96,48,224,56,192,24,192,24,192,24,192,24,192, + 24,224,56,96,48,112,112,63,224,15,128,13,15,30,15,1, + 0,255,192,255,240,48,56,48,24,48,24,48,24,48,24,48, + 56,63,240,63,192,48,0,48,0,48,0,255,0,255,0,13, + 18,36,15,1,253,15,128,63,224,112,112,96,48,224,56,192, + 24,192,24,192,24,192,24,192,24,224,56,96,48,112,112,63, + 224,15,128,14,24,63,248,57,224,14,15,30,15,0,0,255, + 128,255,224,48,112,48,48,48,48,48,48,48,112,63,224,63, + 128,49,192,48,224,48,96,48,112,252,60,252,60,12,15,30, + 15,1,0,31,176,63,240,112,112,96,48,96,48,112,0,62, + 0,31,192,3,224,0,112,192,48,192,48,224,112,255,224,223, + 192,12,15,30,15,1,0,255,240,255,240,198,48,198,48,198, + 48,198,48,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,63,192,63,192,13,15,30,15,1,0,248,248,248,248,96, + 48,96,48,96,48,96,48,96,48,96,48,96,48,96,48,96, + 48,96,48,48,96,63,224,31,192,14,15,30,15,0,0,248, + 124,248,124,96,24,96,24,48,48,48,48,48,48,24,96,24, + 96,24,96,12,192,12,192,7,128,7,128,7,128,14,15,30, + 15,0,0,248,124,248,124,96,24,99,24,99,24,103,152,103, + 152,111,216,108,216,108,216,60,240,56,112,56,112,56,112,56, + 112,14,15,30,15,0,0,252,252,252,252,112,56,56,112,28, + 224,15,192,7,128,3,0,7,128,12,192,28,224,56,112,112, + 56,252,252,252,252,14,15,30,15,0,0,252,252,252,252,112, + 56,56,112,24,96,12,192,15,192,7,128,3,0,3,0,3, + 0,3,0,3,0,31,224,31,224,11,15,30,15,2,0,255, + 224,255,224,192,224,193,192,195,128,3,0,7,0,14,0,28, + 0,24,0,56,96,112,96,224,96,255,224,255,224,5,20,20, + 15,6,252,248,248,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,248,248,11,20,40,15,2,253,192,0,192, + 0,96,0,96,0,48,0,48,0,24,0,24,0,12,0,12, + 0,6,0,6,0,3,0,3,0,1,128,1,128,0,192,0, + 192,0,96,0,96,5,20,20,15,3,252,248,248,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,248,248,8, + 8,8,15,3,8,24,24,60,60,102,102,195,195,15,2,4, + 15,0,252,255,254,255,254,5,4,4,15,4,11,192,96,48, + 24,12,11,22,15,1,0,63,0,127,128,97,192,0,192,31, + 192,127,192,224,192,192,192,193,192,255,240,126,240,13,16,32, + 15,1,0,240,0,240,0,48,0,48,0,48,0,55,192,63, + 240,60,112,56,56,48,24,48,24,48,24,56,56,60,112,255, + 240,247,192,12,11,22,15,1,0,31,176,127,240,112,240,224, + 112,192,48,192,0,192,0,224,0,112,112,127,240,31,192,13, + 16,32,15,1,0,1,224,1,224,0,96,0,96,0,96,31, + 96,127,224,113,224,224,224,192,96,192,96,192,96,224,224,113, + 224,127,248,31,120,12,11,22,15,1,0,31,128,127,224,112, + 224,224,112,192,48,255,240,255,240,224,0,112,112,127,240,31, + 192,11,16,32,15,2,0,7,224,15,224,28,0,24,0,24, + 0,255,192,255,192,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,255,192,255,192,13,16,32,15,1,251,31,120,127, + 248,113,224,224,224,192,96,192,96,192,96,224,224,113,224,127, + 224,31,96,0,96,0,96,0,224,63,192,63,128,14,16,32, + 15,0,0,240,0,240,0,48,0,48,0,48,0,55,192,63, + 224,60,112,56,48,48,48,48,48,48,48,48,48,48,48,252, + 252,252,252,10,16,32,15,2,0,28,0,28,0,28,0,0, + 0,0,0,124,0,124,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,255,192,255,192,8,21,21,15,2,251,14, + 14,14,0,0,255,255,3,3,3,3,3,3,3,3,3,3, + 3,7,254,252,13,16,32,15,1,0,240,0,240,0,48,0, + 48,0,48,0,49,224,49,224,51,128,55,0,62,0,62,0, + 55,0,51,128,49,192,241,248,241,248,10,16,32,15,2,0, + 124,0,124,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,255,192,255,192, + 16,11,22,15,0,0,239,120,255,252,57,204,49,140,49,140, + 49,140,49,140,49,140,49,140,249,239,249,239,14,11,22,15, + 0,0,243,192,247,224,60,112,56,48,48,48,48,48,48,48, + 48,48,48,48,252,252,252,252,12,11,22,15,1,0,31,128, + 127,224,112,224,224,112,192,48,192,48,192,48,224,112,112,224, + 127,224,31,128,13,16,32,15,0,251,247,192,255,240,60,112, + 56,56,48,24,48,24,48,24,56,56,60,112,63,240,55,192, + 48,0,48,0,48,0,254,0,254,0,13,16,32,15,1,251, + 31,120,127,248,113,224,224,224,192,96,192,96,192,96,224,224, + 113,224,127,224,31,96,0,96,0,96,0,96,3,248,3,248, + 12,11,22,15,1,0,121,224,127,240,30,48,28,0,24,0, + 24,0,24,0,24,0,24,0,255,192,255,192,11,11,22,15, + 2,0,62,192,127,192,225,192,224,192,124,0,31,0,7,192, + 192,224,224,224,255,192,223,128,11,15,30,15,1,0,48,0, + 48,0,48,0,48,0,255,192,255,192,48,0,48,0,48,0, + 48,0,48,0,48,0,56,224,31,224,15,128,14,11,22,15, + 0,0,240,240,240,240,48,48,48,48,48,48,48,48,48,48, + 48,48,56,112,31,252,15,188,14,11,22,15,0,0,252,252, + 252,252,48,48,48,48,24,96,24,96,12,192,12,192,7,128, + 7,128,3,0,14,11,22,15,0,0,248,124,248,124,99,24, + 99,24,51,48,55,176,55,176,60,240,28,224,24,96,24,96, + 12,11,22,15,1,0,249,240,249,240,48,192,25,128,15,0, + 6,0,15,0,25,128,48,192,249,240,249,240,12,16,32,15, + 1,251,249,240,249,240,96,96,112,224,48,192,57,192,25,128, + 27,128,15,0,15,0,6,0,14,0,12,0,28,0,254,0, + 254,0,10,11,22,15,2,0,255,192,255,192,195,128,199,0, + 14,0,28,0,56,0,112,192,224,192,255,192,255,192,7,20, + 20,15,4,252,14,24,48,48,48,48,48,48,112,224,112,48, + 48,48,48,48,48,48,24,14,2,18,18,15,6,254,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 7,20,20,15,3,252,224,48,24,24,24,24,24,24,28,14, + 28,24,24,24,24,24,24,24,48,224,12,4,8,15,1,5, + 60,48,126,112,231,224,195,192,255}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--34-240-100-100-M-200-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 20, '1' Height: 21 + Calculated Max Values w=21 h=29 x= 8 y=17 dx=20 dy= 0 ascent=26 len=87 + Font Bounding box w=30 h=44 x=-7 y=-11 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =20 descent=-7 + X Font ascent =21 descent=-7 + Max Font ascent =26 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB24[10502] U8G_SECTION(".progmem.u8g_font_courB24") = { + 0,30,44,249,245,20,5,57,12,115,32,255,249,26,249,21, + 249,0,0,0,20,0,1,5,21,21,20,7,0,112,248,248, + 248,248,248,112,112,112,112,112,112,112,112,112,32,0,0,112, + 248,112,9,10,20,20,5,10,227,128,227,128,227,128,227,128, + 227,128,227,128,227,128,227,128,227,128,65,0,15,26,52,20, + 2,253,14,56,14,56,14,56,14,56,14,56,14,56,14,56, + 14,56,127,254,127,254,127,254,28,112,28,112,28,112,28,112, + 255,252,255,252,255,252,56,224,56,224,56,224,56,224,56,224, + 56,224,56,224,56,224,14,27,54,20,3,252,7,0,7,0, + 7,0,15,216,63,248,127,248,240,120,224,56,224,56,240,0, + 254,0,127,192,63,240,7,248,0,252,0,60,224,28,224,28, + 240,60,255,248,255,240,231,128,7,0,7,0,7,0,7,0, + 7,0,15,21,42,20,2,0,31,0,63,128,49,128,96,192, + 96,192,96,192,113,194,63,142,31,62,0,248,3,224,31,0, + 252,248,241,252,195,142,3,6,3,6,3,6,1,140,1,252, + 0,248,14,18,36,20,2,0,7,160,31,224,63,224,60,96, + 56,0,56,0,60,0,28,0,30,0,127,60,127,188,243,188, + 225,240,224,240,224,240,255,252,127,188,63,60,4,11,11,20, + 8,10,112,112,112,112,112,224,224,224,224,224,224,7,26,26, + 20,8,251,14,14,30,60,56,56,120,112,112,240,240,240,224, + 224,240,240,240,112,112,120,56,60,28,30,14,14,7,26,26, + 20,4,251,224,224,240,120,56,56,60,28,28,30,30,30,14, + 14,30,30,30,28,28,60,56,120,112,240,224,224,15,14,28, + 20,3,7,3,128,3,128,3,128,3,128,99,140,251,190,127, + 252,31,240,15,224,15,224,30,240,60,120,120,60,48,24,17, + 17,51,20,1,1,1,192,0,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,255,255,128,255,255,128, + 255,255,128,1,192,0,1,192,0,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,7,10,10,20,5,251,30,30, + 60,60,56,112,112,224,224,192,15,3,6,20,2,8,255,254, + 255,254,255,254,5,4,4,20,7,0,112,248,248,112,13,27, + 54,20,3,252,0,56,0,56,0,120,0,112,0,112,0,224, + 0,224,1,224,1,192,1,192,3,128,3,128,7,128,7,0, + 15,0,14,0,14,0,28,0,28,0,60,0,56,0,56,0, + 112,0,112,0,240,0,224,0,224,0,13,21,42,20,3,0, + 15,128,63,224,127,240,112,112,240,120,224,56,224,56,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,224,56,224,56, + 240,120,112,112,127,240,63,224,15,128,13,21,42,20,4,0, + 3,0,15,0,127,0,255,0,255,0,103,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,255,248,255,248,255,248,14,21,42,20,2,0, + 7,192,31,240,63,248,120,60,112,28,112,28,112,28,0,28, + 0,56,0,120,0,240,1,224,3,192,7,128,15,0,30,0, + 60,0,120,0,255,252,255,252,255,252,15,21,42,20,2,0, + 7,224,31,240,127,248,120,60,112,28,0,28,0,28,0,60, + 7,248,7,240,7,248,0,124,0,28,0,14,0,14,0,14, + 0,30,224,60,255,252,255,248,63,224,14,21,42,20,2,0, + 0,240,1,240,1,240,3,240,7,240,7,112,15,112,14,112, + 30,112,28,112,56,112,120,112,112,112,255,252,255,252,255,252, + 0,112,0,112,3,252,3,252,3,252,15,21,42,20,2,0, + 63,252,63,252,63,252,56,0,56,0,56,0,56,0,63,224, + 63,248,63,252,56,124,0,30,0,14,0,14,0,14,0,14, + 64,30,240,60,255,248,127,248,31,224,14,21,42,20,3,0, + 1,248,7,248,15,248,31,0,60,0,120,0,112,0,112,0, + 227,192,239,240,255,240,248,120,240,60,224,28,224,28,240,28, + 112,60,120,120,127,248,63,240,15,192,14,21,42,20,2,0, + 255,252,255,252,255,252,224,60,224,56,224,56,0,56,0,120, + 0,112,0,112,0,240,0,224,0,224,1,224,1,192,1,192, + 3,192,3,128,7,128,7,0,7,0,14,21,42,20,3,0, + 15,128,63,224,127,240,112,112,224,56,224,56,224,56,112,112, + 127,240,63,224,63,240,124,248,240,60,224,28,224,28,224,28, + 224,28,248,124,127,248,63,240,15,192,14,21,42,20,3,0, + 15,128,63,224,127,240,120,240,240,120,224,56,224,60,224,60, + 224,60,240,124,120,252,63,220,63,156,15,60,0,56,0,120, + 0,112,97,240,255,224,255,128,126,0,5,15,15,20,7,0, + 112,248,248,112,0,0,0,0,0,0,0,112,248,248,112,8, + 19,19,20,5,252,14,31,31,14,0,0,0,0,0,0,30, + 30,60,56,120,112,224,224,192,18,19,57,20,0,0,0,1, + 192,0,3,192,0,15,192,0,63,128,0,254,0,1,248,0, + 7,224,0,31,128,0,127,0,0,252,0,0,127,0,0,31, + 128,0,7,224,0,1,248,0,0,254,0,0,63,128,0,15, + 192,0,3,192,0,1,192,17,9,27,20,1,5,255,255,128, + 255,255,128,255,255,128,0,0,0,0,0,0,0,0,0,255, + 255,128,255,255,128,255,255,128,18,19,57,20,1,0,224,0, + 0,240,0,0,252,0,0,127,0,0,31,192,0,7,224,0, + 1,248,0,0,126,0,0,63,128,0,15,192,0,63,128,0, + 126,0,1,248,0,7,224,0,31,192,0,127,0,0,252,0, + 0,240,0,0,224,0,0,13,20,40,20,3,0,31,192,127, + 224,255,240,224,248,224,56,224,56,0,56,0,120,0,240,3, + 240,7,192,7,128,7,0,7,0,0,0,0,0,0,0,7, + 0,15,128,7,0,14,23,46,20,3,254,15,192,31,224,56, + 112,112,48,96,48,224,48,192,48,193,240,199,240,198,48,204, + 48,204,48,204,48,206,48,199,252,195,188,192,0,224,0,96, + 0,112,48,56,112,31,224,15,192,21,20,60,20,255,0,31, + 240,0,31,248,0,31,248,0,1,220,0,1,220,0,1,220, + 0,3,142,0,3,142,0,3,142,0,7,7,0,7,7,0, + 7,7,0,15,255,128,15,255,128,31,255,192,28,1,192,28, + 1,192,255,143,248,255,143,248,255,143,248,18,20,60,20,1, + 0,255,248,0,255,254,0,255,255,0,28,7,128,28,3,128, + 28,3,128,28,3,128,28,7,128,31,255,0,31,252,0,31, + 254,0,28,15,128,28,3,192,28,1,192,28,1,192,28,1, + 192,28,3,192,255,255,128,255,255,0,255,252,0,18,20,60, + 20,1,0,3,249,128,15,255,128,31,255,128,62,15,128,120, + 7,128,112,3,128,240,3,128,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,240,0,0, + 120,3,128,124,7,192,63,255,128,31,255,0,7,252,0,17, + 20,60,20,1,0,255,224,0,255,248,0,255,252,0,56,62, + 0,56,15,0,56,7,0,56,7,128,56,3,128,56,3,128, + 56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56, + 7,128,56,7,0,56,31,0,255,254,0,255,252,0,255,240, + 0,17,20,60,20,1,0,255,255,0,255,255,0,255,255,0, + 28,7,0,28,7,0,28,7,0,28,119,0,28,112,0,31, + 240,0,31,240,0,31,240,0,28,112,0,28,112,0,28,3, + 128,28,3,128,28,3,128,28,3,128,255,255,128,255,255,128, + 255,255,128,17,20,60,20,1,0,255,255,128,255,255,128,255, + 255,128,28,3,128,28,3,128,28,3,128,28,115,128,28,112, + 0,31,240,0,31,240,0,31,240,0,28,112,0,28,112,0, + 28,0,0,28,0,0,28,0,0,28,0,0,255,224,0,255, + 224,0,255,224,0,17,20,60,20,2,0,3,243,0,15,255, + 0,31,255,0,60,15,0,120,7,0,112,7,0,240,7,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,255,128,224, + 255,128,224,255,128,240,7,0,112,7,0,124,15,0,63,255, + 0,31,254,0,7,248,0,17,20,60,20,1,0,255,127,128, + 255,127,128,255,127,128,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,63,254,0,63,254,0,63,254,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 255,127,128,255,127,128,255,127,128,13,20,40,20,3,0,255, + 248,255,248,255,248,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,255,248,255,248,255,248,17,20,60,20,2,0,7,255,128, + 7,255,128,7,255,128,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,224,56,0,224,56, + 0,224,56,0,224,56,0,224,56,0,224,120,0,240,240,0, + 255,240,0,127,224,0,31,128,0,19,20,60,20,1,0,255, + 159,192,255,159,192,255,159,192,28,15,0,28,30,0,28,60, + 0,28,120,0,28,240,0,31,224,0,31,240,0,31,248,0, + 30,124,0,28,60,0,28,30,0,28,14,0,28,15,0,28, + 7,0,255,135,224,255,135,224,255,135,224,17,20,60,20,1, + 0,255,224,0,255,224,0,255,224,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14, + 0,0,14,3,128,14,3,128,14,3,128,14,3,128,14,3, + 128,14,3,128,255,255,128,255,255,128,255,255,128,21,20,60, + 20,255,0,252,1,248,252,1,248,254,3,248,62,3,224,63, + 7,224,63,7,224,59,142,224,59,142,224,59,222,224,57,220, + 224,57,220,224,56,248,224,56,248,224,56,248,224,56,112,224, + 56,112,224,56,0,224,255,7,248,255,7,248,255,7,248,19, + 20,60,20,0,0,248,31,224,252,31,224,254,31,224,62,3, + 128,63,3,128,63,3,128,59,131,128,59,195,128,57,195,128, + 57,227,128,56,243,128,56,115,128,56,123,128,56,59,128,56, + 31,128,56,31,128,56,15,128,255,7,128,255,7,128,255,3, + 128,18,20,60,20,1,0,3,240,0,15,252,0,31,254,0, + 60,15,0,120,7,128,112,3,128,240,3,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,240,3, + 192,112,3,128,120,7,128,60,15,0,31,254,0,15,252,0, + 3,240,0,17,20,60,20,1,0,255,248,0,255,254,0,255, + 255,0,28,15,0,28,3,128,28,3,128,28,3,128,28,3, + 128,28,7,128,28,15,0,31,254,0,31,252,0,31,240,0, + 28,0,0,28,0,0,28,0,0,28,0,0,255,224,0,255, + 224,0,255,224,0,18,25,75,20,1,251,3,240,0,15,248, + 0,31,254,0,60,15,0,120,7,128,112,3,128,240,3,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,112,3,128,120,7,128,60,15,0,31,254, + 0,15,252,0,7,240,0,14,0,0,31,225,192,63,255,192, + 63,255,192,56,63,0,20,20,60,20,1,0,255,248,0,255, + 254,0,255,255,0,28,15,0,28,7,128,28,3,128,28,3, + 128,28,7,128,28,15,0,31,254,0,31,252,0,31,248,0, + 28,60,0,28,30,0,28,15,0,28,7,128,28,3,192,255, + 131,240,255,129,240,255,129,240,15,20,40,20,2,0,15,204, + 63,252,127,252,240,124,224,28,224,28,240,28,248,0,127,0, + 63,224,15,248,1,252,0,62,224,30,224,14,224,14,240,30, + 255,252,255,248,231,224,17,20,60,20,1,0,255,255,128,255, + 255,128,255,255,128,225,195,128,225,195,128,225,195,128,225,195, + 128,225,195,128,225,195,128,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,63, + 254,0,63,254,0,63,254,0,19,20,60,20,0,0,255,31, + 224,255,31,224,255,31,224,56,3,128,56,3,128,56,3,128, + 56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56, + 3,128,56,3,128,56,3,128,56,3,128,28,7,0,31,31, + 0,15,254,0,7,252,0,1,240,0,21,20,60,20,255,0, + 255,143,248,255,143,248,255,143,248,28,1,192,28,1,192,30, + 3,192,14,3,128,14,3,128,7,7,0,7,7,0,7,143, + 0,3,142,0,3,142,0,3,222,0,1,220,0,1,220,0, + 0,248,0,0,248,0,0,248,0,0,112,0,19,20,60,20, + 0,0,255,31,224,255,31,224,255,31,224,112,1,192,112,1, + 192,112,225,192,112,225,192,113,241,192,57,243,128,57,243,128, + 59,187,128,59,187,128,59,187,128,63,31,128,63,31,128,30, + 15,0,30,15,0,30,15,0,28,7,0,28,7,0,19,20, + 60,20,0,0,255,31,224,255,31,224,255,31,224,60,7,128, + 30,15,0,15,30,0,7,188,0,3,248,0,1,240,0,0, + 224,0,1,240,0,3,248,0,7,188,0,15,30,0,14,14, + 0,30,15,0,60,7,128,255,31,224,255,31,224,255,31,224, + 19,20,60,20,0,0,255,31,224,255,31,224,255,31,224,60, + 7,128,14,14,0,15,30,0,7,28,0,7,188,0,3,248, + 0,1,240,0,1,240,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,15,254,0,15,254,0,15, + 254,0,15,20,40,20,2,0,127,252,127,252,127,252,112,60, + 112,56,112,120,112,240,113,224,1,192,3,192,7,128,15,0, + 14,14,30,14,60,14,120,14,112,14,255,254,255,254,255,254, + 7,26,26,20,8,251,254,254,254,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,254,254,254, + 13,27,54,20,3,252,224,0,224,0,240,0,112,0,112,0, + 56,0,56,0,60,0,28,0,28,0,14,0,14,0,15,0, + 7,0,7,128,3,128,3,128,1,192,1,192,1,224,0,224, + 0,224,0,112,0,112,0,120,0,56,0,56,7,26,26,20, + 4,251,254,254,254,14,14,14,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,254,254,254,13,11,22,20, + 3,11,2,0,7,0,7,0,15,128,31,192,61,224,56,224, + 120,240,240,120,224,56,224,56,20,3,9,20,0,249,255,255, + 240,255,255,240,255,255,240,6,6,6,20,6,16,192,224,112, + 56,28,12,16,15,30,20,2,0,31,224,127,248,127,252,112, + 60,0,28,0,28,15,252,127,252,127,252,240,28,224,28,224, + 124,255,255,127,223,63,159,19,21,63,20,0,0,252,0,0, + 252,0,0,252,0,0,28,0,0,28,0,0,28,0,0,28, + 124,0,29,255,0,31,255,128,31,135,192,30,1,192,30,1, + 224,28,0,224,28,0,224,28,0,224,28,0,224,30,1,192, + 31,3,192,255,255,128,255,255,0,252,254,0,16,15,30,20, + 2,0,7,230,31,254,63,254,124,62,112,14,224,14,224,14, + 224,0,224,0,224,0,240,6,120,15,127,254,63,252,15,240, + 19,21,63,20,1,0,0,63,0,0,63,0,0,63,0,0, + 7,0,0,7,0,0,7,0,7,231,0,31,255,0,63,255, + 0,124,63,0,112,15,0,240,15,0,224,7,0,224,7,0, + 224,7,0,224,7,0,112,15,0,124,63,0,63,255,224,31, + 247,224,7,231,224,18,15,45,20,1,0,3,240,0,15,252, + 0,31,254,0,62,31,0,120,7,128,112,3,128,255,255,128, + 255,255,128,255,255,128,240,0,0,120,0,0,126,3,128,63, + 255,192,31,255,128,7,254,0,16,21,42,20,3,0,1,255, + 7,255,7,255,15,0,14,0,14,0,255,252,255,252,255,252, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,255,252,255,252,255,252,18,22,66,20,1,249,7,207, + 192,31,255,192,63,255,192,124,126,0,112,30,0,240,30,0, + 224,14,0,224,14,0,224,14,0,240,30,0,112,30,0,120, + 126,0,63,254,0,31,238,0,15,206,0,0,14,0,0,14, + 0,0,30,0,0,60,0,31,252,0,31,248,0,31,224,0, + 18,21,63,20,1,0,252,0,0,252,0,0,252,0,0,28, + 0,0,28,0,0,28,0,0,28,248,0,29,252,0,31,254, + 0,31,15,0,30,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,127,31,192,127, + 31,192,127,31,192,15,21,42,20,3,0,7,128,7,128,7, + 128,7,128,0,0,0,0,127,128,127,128,127,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255, + 254,255,254,255,254,12,28,56,20,3,249,3,192,3,192,3, + 192,3,192,0,0,0,0,255,240,255,240,255,240,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,240,255,224,255, + 192,255,128,17,21,63,20,1,0,252,0,0,252,0,0,252, + 0,0,28,0,0,28,0,0,28,0,0,28,255,0,28,255, + 0,28,255,0,28,120,0,28,240,0,29,224,0,31,192,0, + 31,192,0,31,224,0,29,240,0,28,248,0,28,124,0,252, + 63,128,252,63,128,252,63,128,15,21,42,20,3,0,127,128, + 127,128,127,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,255,254,255,254,255,254,20,15,45,20,1,0,243,143, + 0,255,255,128,255,255,192,120,241,192,112,225,192,112,225,192, + 112,225,192,112,225,192,112,225,192,112,225,192,112,225,192,112, + 225,192,252,249,240,252,249,240,252,249,240,17,15,45,20,2, + 0,249,240,0,251,248,0,255,252,0,62,30,0,60,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,254,63,128,254,63,128,254,63,128,17,15, + 45,20,2,0,7,240,0,31,252,0,63,254,0,120,15,0, + 112,7,0,240,7,128,224,3,128,224,3,128,224,3,128,240, + 7,128,112,7,0,120,15,0,63,254,0,31,252,0,7,240, + 0,19,22,66,20,0,249,252,124,0,253,255,0,255,255,128, + 31,3,192,30,1,224,28,0,224,28,0,224,28,0,224,28, + 0,224,28,1,224,30,1,192,31,7,192,31,255,128,29,254, + 0,28,120,0,28,0,0,28,0,0,28,0,0,28,0,0, + 255,192,0,255,192,0,255,192,0,19,22,66,20,1,249,7, + 231,224,31,255,224,63,255,224,124,63,0,112,15,0,240,15, + 0,224,7,0,224,7,0,224,7,0,240,15,0,112,15,0, + 124,63,0,63,255,0,31,247,0,7,199,0,0,7,0,0, + 7,0,0,7,0,0,7,0,0,127,224,0,127,224,0,127, + 224,17,15,45,20,2,0,126,62,0,126,255,0,127,255,128, + 15,199,0,15,2,0,15,0,0,14,0,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,255,252,0,255,252, + 0,255,252,0,15,15,30,20,3,0,15,236,63,252,63,252, + 120,60,112,28,120,0,127,192,63,248,15,252,224,62,224,14, + 248,30,255,252,255,248,231,224,16,20,40,20,2,0,28,0, + 28,0,28,0,28,0,28,0,255,252,255,252,255,252,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,6,30,31, + 31,255,15,254,3,240,18,15,45,20,1,0,252,63,0,252, + 63,0,252,63,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,28,7,0,28,7,0,30,31,0, + 31,255,192,15,255,192,7,247,192,19,15,45,20,0,0,255, + 31,224,255,31,224,255,31,224,60,7,0,28,7,0,30,14, + 0,14,14,0,15,28,0,7,28,0,7,184,0,3,184,0, + 3,240,0,1,240,0,1,224,0,0,224,0,19,15,45,20, + 0,0,254,15,224,254,15,224,254,15,224,56,227,128,56,227, + 128,57,243,128,61,247,128,29,247,0,31,191,0,31,31,0, + 31,31,0,15,30,0,14,14,0,14,14,0,14,14,0,17, + 15,45,20,1,0,254,63,128,254,63,128,254,63,128,60,28, + 0,30,56,0,15,112,0,7,224,0,3,224,0,3,240,0, + 7,120,0,14,60,0,28,30,0,254,63,128,254,63,128,254, + 63,128,19,22,66,20,1,249,255,31,224,255,31,224,255,31, + 224,60,3,128,28,7,0,30,7,0,14,14,0,15,14,0, + 7,28,0,7,156,0,3,184,0,3,248,0,1,240,0,1, + 240,0,0,224,0,0,224,0,1,192,0,1,192,0,3,128, + 0,127,240,0,127,240,0,127,240,0,13,15,30,20,4,0, + 255,248,255,248,255,248,224,240,225,224,227,192,7,128,15,0, + 30,0,60,0,120,56,240,56,255,248,255,248,255,248,9,26, + 52,20,5,251,7,128,15,128,15,128,30,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,60,0,248,0,248,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,31,128,15,128,7,128,3,26,26,20,8,251,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,9,26,52,20,5,251,240,0, + 248,0,248,0,60,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,30,0,15,128,15,128,31,128,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,252,0,248,0, + 240,0,15,7,14,20,2,6,12,0,63,14,127,142,247,222, + 227,252,225,248,0,96,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,0,0,20,0,1,5,21,21, + 20,7,249,112,248,248,112,0,0,112,112,112,112,112,112,112, + 112,248,248,248,248,248,112,32,13,23,46,20,3,255,7,0, + 7,0,7,0,7,0,7,0,15,216,63,248,127,248,120,120, + 240,56,224,56,224,0,224,0,224,0,240,56,120,120,127,248, + 63,240,15,192,7,0,7,0,7,0,7,0,16,20,40,20, + 1,0,3,224,7,240,15,248,30,56,28,56,28,0,28,0, + 28,0,14,0,255,224,255,224,255,224,14,0,14,0,14,0, + 14,2,30,7,127,255,127,255,127,254,15,15,30,20,2,2, + 224,14,247,222,255,254,127,252,60,120,120,60,112,28,112,28, + 112,28,120,60,60,120,127,252,255,254,247,222,224,14,17,20, + 60,20,1,0,254,63,128,254,63,128,254,63,128,56,14,0, + 28,28,0,30,60,0,14,56,0,15,120,0,7,112,0,3, + 224,0,31,252,0,31,252,0,1,192,0,31,252,0,31,252, + 0,1,192,0,1,192,0,31,252,0,31,252,0,31,252,0, + 3,26,26,20,8,251,224,224,224,224,224,224,224,224,224,224, + 224,224,0,0,224,224,224,224,224,224,224,224,224,224,224,224, + 16,24,48,20,2,253,1,254,7,254,15,254,28,6,24,6, + 24,6,60,0,127,0,231,128,193,224,96,240,112,60,60,14, + 15,6,7,131,1,231,0,254,0,60,48,24,48,24,48,56, + 63,240,63,224,63,128,11,4,8,20,4,17,96,192,241,224, + 241,224,96,192,21,20,60,20,255,0,0,252,0,3,255,0, + 15,255,192,30,3,224,56,96,224,113,246,112,115,254,112,231, + 158,56,231,14,56,206,14,56,206,0,56,206,0,56,206,6, + 56,231,15,120,231,254,112,115,252,240,120,241,224,62,7,192, + 31,255,0,7,252,0,11,14,28,20,4,6,31,0,127,128, + 97,128,1,128,63,128,127,128,225,128,193,128,195,128,255,224, + 125,224,0,0,255,224,255,224,15,14,28,20,1,0,3,6, + 7,14,14,28,28,56,56,112,112,224,225,192,225,192,112,224, + 56,112,28,56,14,28,7,14,3,6,16,8,16,20,2,5, + 255,255,255,255,255,255,0,7,0,7,0,7,0,7,0,7, + 15,3,6,20,2,8,255,254,255,254,255,254,21,20,60,20, + 255,0,1,248,0,7,254,0,31,255,128,60,3,192,59,241, + 224,115,252,224,115,254,240,227,158,112,227,142,120,227,142,56, + 227,254,56,227,252,56,227,184,56,243,188,120,115,158,112,123, + 143,240,60,3,224,31,255,192,15,255,0,3,252,0,10,2, + 4,20,5,17,255,192,255,192,9,9,18,20,5,11,28,0, + 119,0,193,128,128,128,128,128,128,128,193,128,119,0,28,0, + 17,18,54,20,1,0,1,192,0,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,255,255,128,255,255,128,255,255, + 128,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,255,255,128,255,255,128,255,255,128,8,14,14,20, + 5,7,60,126,231,195,3,7,14,12,24,56,112,225,255,255, + 9,14,28,20,5,7,62,0,127,0,99,0,3,0,7,0, + 30,0,31,0,3,128,1,128,1,128,193,128,227,0,127,0, + 60,0,8,6,6,20,6,15,6,15,62,120,224,64,18,22, + 66,20,1,249,252,63,0,252,63,0,252,63,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,28, + 7,0,28,15,0,30,31,0,31,255,192,31,247,192,29,231, + 192,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,15,24,48,20,2,253,15,254,63,254, + 123,24,243,24,227,24,227,24,227,24,227,24,227,24,115,24, + 63,24,31,24,3,24,3,24,3,24,3,24,3,24,3,24, + 3,24,3,24,3,24,31,62,31,62,31,62,5,4,4,20, + 7,8,112,248,248,112,5,7,7,20,6,250,48,48,48,24, + 248,248,112,8,13,13,20,6,7,56,248,216,24,24,24,24, + 24,24,24,24,255,255,11,14,28,20,4,6,14,0,63,128, + 113,192,224,224,192,96,192,96,192,96,224,224,113,192,63,128, + 14,0,0,0,255,224,255,224,15,14,28,20,2,0,193,128, + 225,192,112,224,56,112,28,56,14,28,7,14,7,14,14,28, + 28,56,56,112,112,224,225,192,193,128,19,20,60,20,0,0, + 56,0,0,248,0,0,216,0,128,24,1,192,24,1,128,24, + 3,0,24,6,0,24,12,0,24,28,192,24,25,192,255,51, + 192,255,114,192,0,102,192,0,206,192,1,140,192,3,159,224, + 7,31,224,2,0,192,0,1,224,0,1,224,19,20,60,20, + 0,0,56,0,0,248,0,0,216,2,0,24,7,0,24,14, + 0,24,12,0,24,24,0,24,56,0,24,112,0,24,103,128, + 254,239,192,255,220,224,1,152,96,3,0,224,7,1,192,14, + 7,128,4,14,0,0,28,96,0,31,224,0,31,224,19,21, + 63,20,0,0,62,0,0,127,0,0,99,0,0,3,1,0, + 3,3,128,30,7,0,31,6,0,3,142,0,1,156,0,195, + 152,192,227,49,192,127,115,192,28,98,192,0,198,192,1,206, + 192,3,140,192,7,31,224,2,31,224,0,0,192,0,3,224, + 0,3,224,13,21,42,20,3,250,7,0,15,128,15,128,7, + 0,0,0,0,0,0,0,7,0,7,0,7,0,31,0,63, + 0,124,0,240,0,224,0,224,56,224,56,240,56,127,248,63, + 248,31,224,21,26,78,20,255,0,3,0,0,7,128,0,1, + 224,0,0,240,0,0,48,0,0,0,0,31,240,0,31,248, + 0,31,248,0,1,252,0,1,220,0,1,220,0,3,222,0, + 3,142,0,3,142,0,7,7,0,7,7,0,7,7,0,15, + 255,128,15,255,128,31,255,192,28,1,192,28,1,192,255,143, + 248,255,143,248,255,143,248,21,26,78,20,255,0,0,3,0, + 0,15,0,0,30,0,0,120,0,0,96,0,0,0,0,31, + 240,0,31,248,0,31,248,0,1,252,0,1,220,0,1,220, + 0,3,222,0,3,142,0,3,142,0,7,7,0,7,7,0, + 7,7,0,15,255,128,15,255,128,31,255,192,28,1,192,28, + 1,192,255,143,248,255,143,248,255,143,248,21,26,78,20,255, + 0,0,64,0,0,224,0,3,184,0,7,28,0,14,14,0, + 0,0,0,31,240,0,31,248,0,31,248,0,1,252,0,1, + 220,0,1,220,0,3,222,0,3,142,0,3,142,0,7,7, + 0,7,7,0,7,7,0,15,255,128,15,255,128,31,255,192, + 28,1,192,28,1,192,255,143,248,255,143,248,255,143,248,21, + 25,75,20,255,0,3,134,0,7,230,0,6,118,0,6,28, + 0,0,0,0,31,240,0,31,248,0,31,248,0,1,252,0, + 1,220,0,1,220,0,3,222,0,3,142,0,3,142,0,7, + 7,0,7,7,0,7,7,0,15,255,128,15,255,128,31,255, + 192,28,1,192,28,1,192,255,143,248,255,143,248,255,143,248, + 21,25,75,20,255,0,12,24,0,30,60,0,30,60,0,12, + 24,0,0,0,0,31,240,0,31,248,0,31,248,0,1,252, + 0,1,220,0,1,220,0,3,222,0,3,142,0,3,142,0, + 7,7,0,7,7,0,7,7,0,15,255,128,15,255,128,31, + 255,192,28,1,192,28,1,192,255,143,248,255,143,248,255,143, + 248,21,26,78,20,255,0,0,240,0,1,152,0,1,8,0, + 1,152,0,0,240,0,0,0,0,31,240,0,31,248,0,31, + 248,0,1,252,0,1,220,0,1,220,0,3,222,0,3,142, + 0,3,142,0,7,7,0,7,7,0,7,7,0,15,255,128, + 15,255,128,31,255,192,28,1,192,28,1,192,255,143,248,255, + 143,248,255,143,248,20,20,60,20,0,0,31,255,224,31,255, + 224,31,255,224,7,112,224,7,112,224,6,112,224,14,112,224, + 14,115,0,14,115,0,14,127,0,28,127,0,28,115,0,31, + 243,0,31,243,0,56,112,112,56,112,112,56,112,112,255,255, + 240,255,255,240,255,255,240,17,26,78,20,1,250,3,227,0, + 15,255,0,31,255,0,62,31,0,120,15,0,112,7,0,240, + 7,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,240,0,0,112,1,0,120,3,128,62,15,128, + 63,255,0,15,254,0,3,248,0,0,192,0,0,192,0,0, + 224,0,4,112,0,7,240,0,3,224,0,17,26,78,20,1, + 0,3,0,0,7,128,0,1,224,0,0,240,0,0,48,0, + 0,0,0,255,255,0,255,255,0,255,255,0,28,7,0,28, + 7,0,28,7,0,28,119,0,28,112,0,31,240,0,31,240, + 0,31,240,0,28,112,0,28,112,0,28,3,128,28,3,128, + 28,3,128,28,3,128,255,255,128,255,255,128,255,255,128,17, + 26,78,20,1,0,0,12,0,0,60,0,0,120,0,1,224, + 0,1,128,0,0,0,0,255,255,0,255,255,0,255,255,0, + 28,7,0,28,7,0,28,7,0,28,119,0,28,112,0,31, + 240,0,31,240,0,31,240,0,28,112,0,28,112,0,28,3, + 128,28,3,128,28,3,128,28,3,128,255,255,128,255,255,128, + 255,255,128,17,26,78,20,1,0,0,128,0,1,192,0,7, + 112,0,14,56,0,28,28,0,0,0,0,255,255,0,255,255, + 0,255,255,0,28,7,0,28,7,0,28,7,0,28,119,0, + 28,112,0,31,240,0,31,240,0,31,240,0,28,112,0,28, + 112,0,28,3,128,28,3,128,28,3,128,28,3,128,255,255, + 128,255,255,128,255,255,128,17,25,75,20,1,0,6,12,0, + 15,30,0,15,30,0,6,12,0,0,0,0,255,255,0,255, + 255,0,255,255,0,28,7,0,28,7,0,28,7,0,28,119, + 0,28,112,0,31,240,0,31,240,0,31,240,0,28,112,0, + 28,112,0,28,3,128,28,3,128,28,3,128,28,3,128,255, + 255,128,255,255,128,255,255,128,13,26,52,20,3,0,24,0, + 60,0,15,0,7,128,1,128,0,0,255,248,255,248,255,248, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,255,248,255,248, + 255,248,13,26,52,20,3,0,0,48,0,240,1,224,7,128, + 6,0,0,0,255,248,255,248,255,248,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,255,248,255,248,255,248,13,26,52,20, + 3,0,2,0,7,0,29,192,56,224,112,112,0,0,255,248, + 255,248,255,248,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 255,248,255,248,255,248,13,25,50,20,3,0,48,96,120,240, + 120,240,48,96,0,0,255,248,255,248,255,248,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,255,248,255,248,255,248,17,20, + 60,20,2,0,255,224,0,255,248,0,255,252,0,56,62,0, + 56,15,0,56,7,0,56,7,0,56,3,128,255,131,128,255, + 131,128,255,131,128,56,3,128,56,3,128,56,3,128,56,7, + 0,56,7,0,56,30,0,255,254,0,255,252,0,255,240,0, + 20,25,75,20,255,0,3,134,0,7,230,0,6,118,0,6, + 28,0,0,0,0,252,31,240,254,31,240,255,31,240,31,1, + 192,31,129,192,31,129,192,29,193,192,29,225,192,28,225,192, + 28,241,192,28,121,192,28,57,192,28,61,192,28,29,192,28, + 15,192,28,15,192,28,7,192,127,199,192,127,195,192,127,193, + 192,17,26,78,20,1,0,6,0,0,15,0,0,3,192,0, + 1,224,0,0,96,0,0,0,0,7,240,0,15,252,0,31, + 252,0,60,30,0,120,15,0,112,7,0,112,7,0,224,3, + 128,224,3,128,224,3,128,224,3,128,224,3,128,224,3,128, + 112,7,0,120,7,0,56,14,0,62,62,0,31,252,0,15, + 248,0,3,224,0,17,26,78,20,1,0,0,24,0,0,120, + 0,0,240,0,3,192,0,3,0,0,0,0,0,7,240,0, + 15,252,0,31,252,0,60,30,0,120,15,0,112,7,0,112, + 7,0,224,3,128,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,112,7,0,120,7,0,56,14,0,62,62,0, + 31,252,0,15,248,0,3,224,0,17,26,78,20,1,0,0, + 128,0,1,192,0,7,112,0,14,56,0,28,28,0,0,0, + 0,7,240,0,15,252,0,31,252,0,60,30,0,120,15,0, + 112,7,0,112,7,0,224,3,128,224,3,128,224,3,128,224, + 3,128,224,3,128,224,3,128,112,7,0,120,7,0,56,14, + 0,62,62,0,31,252,0,15,248,0,3,224,0,17,25,75, + 20,1,0,7,12,0,15,204,0,12,236,0,12,56,0,0, + 0,0,7,240,0,15,252,0,31,252,0,60,30,0,120,15, + 0,112,7,0,112,7,0,224,3,128,224,3,128,224,3,128, + 224,3,128,224,3,128,224,3,128,112,7,0,120,7,0,56, + 14,0,62,62,0,31,252,0,15,248,0,3,224,0,17,25, + 75,20,1,0,12,24,0,30,60,0,30,60,0,12,24,0, + 0,0,0,7,240,0,15,252,0,31,252,0,60,30,0,120, + 15,0,112,7,0,112,7,0,224,3,128,224,3,128,224,3, + 128,224,3,128,224,3,128,224,3,128,112,7,0,120,7,0, + 56,14,0,62,62,0,31,252,0,15,248,0,3,224,0,15, + 16,32,20,2,0,224,14,240,30,248,62,120,60,60,120,30, + 240,15,224,7,192,7,192,15,224,30,240,60,120,120,60,248, + 62,240,30,224,14,17,23,69,20,1,254,0,3,128,3,227, + 128,15,255,128,31,255,0,62,62,0,56,30,0,120,63,0, + 112,127,0,224,123,128,224,243,128,225,227,128,225,195,128,227, + 195,128,231,131,128,255,7,128,126,7,0,126,15,0,60,30, + 0,127,252,0,127,248,0,247,240,0,224,0,0,224,0,0, + 19,26,78,20,0,0,3,0,0,7,128,0,1,224,0,0, + 240,0,0,48,0,0,0,0,255,31,224,255,31,224,255,31, + 224,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128, + 56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56, + 3,128,56,3,128,28,7,128,31,31,0,15,254,0,7,252, + 0,1,248,0,19,26,78,20,0,0,0,28,0,0,60,0, + 0,240,0,1,224,0,1,128,0,0,0,0,255,31,224,255, + 31,224,255,31,224,56,3,128,56,3,128,56,3,128,56,3, + 128,56,3,128,56,3,128,56,3,128,56,3,128,56,3,128, + 56,3,128,56,3,128,56,3,128,28,7,128,31,31,0,15, + 254,0,7,252,0,1,248,0,19,26,78,20,0,0,0,64, + 0,0,224,0,3,184,0,7,28,0,14,14,0,0,0,0, + 255,31,224,255,31,224,255,31,224,56,3,128,56,3,128,56, + 3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3, + 128,56,3,128,56,3,128,56,3,128,56,3,128,28,7,128, + 31,31,0,15,254,0,7,252,0,1,248,0,19,26,78,20, + 0,0,6,12,0,15,30,0,15,30,0,6,12,0,0,0, + 0,0,0,0,255,191,224,255,191,224,255,191,224,56,3,128, + 56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56, + 3,128,56,3,128,56,3,128,56,3,128,56,3,128,56,3, + 128,28,7,128,31,31,0,15,254,0,7,252,0,1,248,0, + 17,26,78,20,1,0,0,24,0,0,120,0,0,240,0,3, + 192,0,3,0,0,0,0,0,254,63,128,254,63,128,254,63, + 128,60,30,0,28,28,0,30,60,0,14,56,0,15,120,0, + 7,240,0,3,224,0,3,224,0,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,31,252,0,31,252, + 0,31,252,0,18,20,60,20,1,0,255,128,0,255,128,0, + 255,128,0,28,0,0,31,248,0,31,254,0,31,255,0,28, + 15,128,28,3,128,28,3,192,28,3,192,28,3,128,28,15, + 128,31,255,0,31,254,0,31,248,0,28,0,0,255,128,0, + 255,128,0,255,128,0,17,22,66,20,0,255,3,224,0,7, + 240,0,15,248,0,30,60,0,28,28,0,28,28,0,28,28, + 0,28,60,0,29,248,0,29,248,0,29,254,0,28,31,0, + 28,15,0,28,7,128,28,3,128,28,3,128,29,195,128,29, + 195,128,255,255,0,254,255,0,254,126,0,0,24,0,17,22, + 66,20,2,0,24,0,0,60,0,0,15,0,0,7,128,0, + 1,128,0,0,0,0,0,0,0,15,224,0,63,240,0,63, + 248,0,56,60,0,0,28,0,0,28,0,15,252,0,63,252, + 0,127,252,0,120,28,0,240,28,0,224,124,0,255,255,128, + 127,255,128,63,159,128,17,22,66,20,2,0,0,32,0,0, + 112,0,0,240,0,3,192,0,7,128,0,6,0,0,0,0, + 0,15,224,0,63,240,0,63,248,0,56,60,0,0,28,0, + 0,28,0,15,252,0,63,252,0,127,252,0,120,28,0,224, + 60,0,224,124,0,255,255,128,127,223,128,63,159,128,17,22, + 66,20,1,0,0,128,0,1,192,0,7,112,0,14,56,0, + 28,28,0,0,0,0,0,0,0,7,224,0,63,240,0,63, + 248,0,60,60,0,0,28,0,0,28,0,15,252,0,63,252, + 0,127,252,0,120,28,0,240,28,0,224,60,0,255,255,128, + 127,255,128,63,159,128,17,21,63,20,1,0,14,24,0,31, + 152,0,25,248,0,24,112,0,0,0,0,0,0,0,15,224, + 0,63,240,0,63,248,0,56,60,0,0,28,0,0,28,0, + 15,252,0,63,252,0,127,252,0,120,28,0,240,28,0,224, + 124,0,255,255,128,127,223,128,63,159,128,17,21,63,20,2, + 0,12,24,0,30,60,0,30,60,0,12,24,0,0,0,0, + 0,0,0,15,224,0,63,240,0,63,248,0,56,60,0,0, + 28,0,0,28,0,15,252,0,63,252,0,127,252,0,120,28, + 0,240,28,0,224,124,0,255,255,128,127,223,128,63,159,128, + 17,21,63,20,1,0,3,192,0,6,96,0,4,32,0,6, + 96,0,3,192,0,0,0,0,15,224,0,63,240,0,63,248, + 0,56,60,0,0,28,0,0,28,0,15,252,0,63,252,0, + 127,252,0,120,28,0,240,28,0,224,124,0,255,255,128,127, + 223,128,63,159,128,20,15,45,20,255,0,15,135,0,63,255, + 192,63,255,192,56,253,224,0,112,112,3,240,112,31,255,240, + 127,255,240,255,255,240,240,112,0,224,120,0,241,248,112,127, + 255,240,63,255,240,31,39,128,16,21,42,20,2,250,7,230, + 31,254,63,254,124,62,112,14,240,14,224,14,224,0,224,0, + 224,0,240,6,124,15,63,254,31,252,7,240,1,128,1,128, + 1,192,8,224,15,192,3,128,16,21,42,20,1,0,6,0, + 15,0,3,192,1,224,0,96,0,0,7,224,31,248,63,252, + 124,62,112,14,240,15,255,255,255,255,255,255,224,0,112,0, + 124,15,63,255,31,254,7,240,16,22,44,20,1,0,0,16, + 0,56,0,120,1,224,3,192,3,0,0,0,7,224,31,248, + 63,252,124,62,112,14,240,15,255,255,255,255,255,255,224,0, + 112,0,124,14,63,255,31,254,7,240,16,22,44,20,1,0, + 0,128,1,192,7,112,14,56,28,28,0,0,0,0,7,224, + 31,248,63,252,124,62,112,14,240,15,255,255,255,255,255,255, + 224,0,112,0,124,31,63,255,31,255,7,240,16,21,42,20, + 1,0,12,24,30,60,30,60,12,24,0,0,0,0,7,224, + 31,248,63,252,124,62,112,14,240,15,255,255,255,255,255,255, + 224,0,112,0,124,31,63,255,31,255,7,240,15,22,44,20, + 2,0,24,0,60,0,15,0,7,128,1,128,0,0,0,0, + 127,128,127,128,127,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,255,254,255,254,255,254,15,23, + 46,20,2,0,0,128,1,192,3,192,15,0,30,0,24,0, + 0,0,0,0,127,128,127,128,127,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254, + 255,254,15,22,44,20,2,0,2,0,7,0,29,192,56,224, + 112,112,0,0,0,0,127,128,127,128,127,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254, + 255,254,255,254,15,21,42,20,2,0,48,96,120,240,120,240, + 48,96,0,0,0,0,127,128,127,128,127,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,255,254, + 255,254,255,254,16,21,42,20,2,0,126,14,255,191,255,252, + 3,240,15,240,127,248,124,56,112,60,7,220,31,254,127,254, + 120,30,240,15,224,7,224,7,224,15,240,15,248,62,127,252, + 63,248,31,224,17,21,63,20,1,0,14,24,0,31,152,0, + 25,248,0,24,112,0,0,0,0,0,0,0,249,240,0,251, + 252,0,255,254,0,60,30,0,56,14,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 254,63,128,254,63,128,254,63,128,17,21,63,20,1,0,6, + 0,0,15,0,0,3,192,0,1,224,0,0,96,0,0,0, + 0,7,240,0,15,248,0,63,254,0,60,30,0,120,15,0, + 240,7,128,224,3,128,224,3,128,224,3,128,240,7,128,120, + 15,0,124,31,0,63,254,0,31,252,0,7,240,0,17,22, + 66,20,1,0,0,16,0,0,56,0,0,120,0,1,224,0, + 3,192,0,3,0,0,0,0,0,7,240,0,15,248,0,63, + 254,0,60,30,0,120,15,0,240,7,128,224,3,128,224,3, + 128,224,3,128,240,7,128,120,15,0,124,31,0,63,254,0, + 31,252,0,7,240,0,17,22,66,20,1,0,0,128,0,1, + 192,0,7,112,0,14,56,0,28,28,0,0,0,0,0,0, + 0,7,240,0,15,248,0,63,254,0,60,30,0,120,15,0, + 240,7,128,224,3,128,224,3,128,224,3,128,240,7,128,120, + 15,0,124,31,0,63,254,0,31,252,0,7,240,0,17,21, + 63,20,1,0,7,12,0,15,204,0,12,252,0,12,56,0, + 0,0,0,0,0,0,7,240,0,15,248,0,63,254,0,60, + 30,0,120,15,0,240,7,128,224,3,128,224,3,128,224,3, + 128,240,7,128,120,15,0,124,31,0,63,254,0,31,252,0, + 7,240,0,17,21,63,20,1,0,12,24,0,30,60,0,30, + 60,0,12,24,0,0,0,0,0,0,0,7,240,0,15,248, + 0,63,254,0,60,30,0,120,15,0,240,7,128,224,3,128, + 224,3,128,224,3,128,240,7,128,120,15,0,124,31,0,63, + 254,0,31,252,0,7,240,0,15,15,30,20,2,2,3,128, + 7,192,7,192,3,128,0,0,0,0,255,254,255,254,255,254, + 0,0,0,0,3,128,7,192,7,192,3,128,17,18,54,20, + 1,254,0,3,128,3,227,128,15,255,128,63,255,0,62,62, + 0,120,63,0,112,127,0,224,243,128,225,227,128,227,195,128, + 231,131,128,127,7,0,126,31,0,63,254,0,127,252,0,247, + 240,0,224,0,0,224,0,0,18,22,66,20,0,0,3,0, + 0,7,128,0,1,224,0,0,240,0,0,48,0,0,0,0, + 0,0,0,252,63,0,252,63,0,252,63,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,15,0,28,31,0,31,255,192,15,247,192,7,231,192, + 18,22,66,20,0,0,0,8,0,0,28,0,0,60,0,0, + 240,0,1,224,0,1,128,0,0,0,0,252,63,0,252,63, + 0,252,63,0,28,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,15,0,28,31,0,31, + 255,192,15,247,192,7,231,192,18,22,66,20,0,0,0,128, + 0,1,192,0,7,112,0,14,56,0,28,28,0,0,0,0, + 0,0,0,252,63,0,252,63,0,252,63,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,15,0,28,31,0,31,255,192,15,247,192,7,231,192, + 18,21,63,20,0,0,12,24,0,30,60,0,30,60,0,12, + 24,0,0,0,0,0,0,0,252,63,0,252,63,0,252,63, + 0,28,7,0,28,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,15,0,28,31,0,31,255,192,15, + 247,192,7,231,192,17,29,87,20,1,249,0,16,0,0,56, + 0,0,120,0,1,224,0,3,192,0,3,0,0,0,0,0, + 254,63,128,254,63,128,254,63,128,120,15,0,56,14,0,60, + 30,0,28,28,0,30,60,0,14,56,0,15,120,0,7,112, + 0,7,240,0,3,224,0,3,224,0,1,192,0,1,192,0, + 3,128,0,3,128,0,7,0,0,255,224,0,255,224,0,255, + 224,0,19,28,84,20,0,249,252,0,0,252,0,0,252,0, + 0,28,0,0,28,0,0,28,0,0,28,252,0,31,255,0, + 31,255,128,31,135,192,31,3,192,30,1,224,28,0,224,28, + 0,224,28,0,224,30,1,224,30,1,192,31,135,192,31,255, + 128,31,255,0,28,252,0,28,0,0,28,0,0,28,0,0, + 28,0,0,255,192,0,255,192,0,255,192,0,17,28,84,20, + 1,249,6,12,0,15,30,0,15,30,0,6,12,0,0,0, + 0,0,0,0,254,63,128,254,63,128,254,63,128,120,15,0, + 56,14,0,60,30,0,28,28,0,30,60,0,14,56,0,15, + 120,0,7,112,0,7,240,0,3,224,0,3,224,0,1,192, + 0,1,192,0,3,128,0,3,128,0,7,0,0,255,224,0, + 255,224,0,255,224,0}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--34-240-100-100-M-200-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 20, '1' Height: 21 + Calculated Max Values w=21 h=28 x= 8 y=16 dx=20 dy= 0 ascent=23 len=75 + Font Bounding box w=30 h=44 x=-7 y=-11 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =20 descent=-7 + X Font ascent =21 descent=-7 + Max Font ascent =23 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB24r[4775] U8G_SECTION(".progmem.u8g_font_courB24r") = { + 0,30,44,249,245,20,5,57,12,115,32,127,249,23,249,21, + 249,0,0,0,20,0,1,5,21,21,20,7,0,112,248,248, + 248,248,248,112,112,112,112,112,112,112,112,112,32,0,0,112, + 248,112,9,10,20,20,5,10,227,128,227,128,227,128,227,128, + 227,128,227,128,227,128,227,128,227,128,65,0,15,26,52,20, + 2,253,14,56,14,56,14,56,14,56,14,56,14,56,14,56, + 14,56,127,254,127,254,127,254,28,112,28,112,28,112,28,112, + 255,252,255,252,255,252,56,224,56,224,56,224,56,224,56,224, + 56,224,56,224,56,224,14,27,54,20,3,252,7,0,7,0, + 7,0,15,216,63,248,127,248,240,120,224,56,224,56,240,0, + 254,0,127,192,63,240,7,248,0,252,0,60,224,28,224,28, + 240,60,255,248,255,240,231,128,7,0,7,0,7,0,7,0, + 7,0,15,21,42,20,2,0,31,0,63,128,49,128,96,192, + 96,192,96,192,113,194,63,142,31,62,0,248,3,224,31,0, + 252,248,241,252,195,142,3,6,3,6,3,6,1,140,1,252, + 0,248,14,18,36,20,2,0,7,160,31,224,63,224,60,96, + 56,0,56,0,60,0,28,0,30,0,127,60,127,188,243,188, + 225,240,224,240,224,240,255,252,127,188,63,60,4,11,11,20, + 8,10,112,112,112,112,112,224,224,224,224,224,224,7,26,26, + 20,8,251,14,14,30,60,56,56,120,112,112,240,240,240,224, + 224,240,240,240,112,112,120,56,60,28,30,14,14,7,26,26, + 20,4,251,224,224,240,120,56,56,60,28,28,30,30,30,14, + 14,30,30,30,28,28,60,56,120,112,240,224,224,15,14,28, + 20,3,7,3,128,3,128,3,128,3,128,99,140,251,190,127, + 252,31,240,15,224,15,224,30,240,60,120,120,60,48,24,17, + 17,51,20,1,1,1,192,0,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,255,255,128,255,255,128, + 255,255,128,1,192,0,1,192,0,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,7,10,10,20,5,251,30,30, + 60,60,56,112,112,224,224,192,15,3,6,20,2,8,255,254, + 255,254,255,254,5,4,4,20,7,0,112,248,248,112,13,27, + 54,20,3,252,0,56,0,56,0,120,0,112,0,112,0,224, + 0,224,1,224,1,192,1,192,3,128,3,128,7,128,7,0, + 15,0,14,0,14,0,28,0,28,0,60,0,56,0,56,0, + 112,0,112,0,240,0,224,0,224,0,13,21,42,20,3,0, + 15,128,63,224,127,240,112,112,240,120,224,56,224,56,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,224,56,224,56, + 240,120,112,112,127,240,63,224,15,128,13,21,42,20,4,0, + 3,0,15,0,127,0,255,0,255,0,103,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,255,248,255,248,255,248,14,21,42,20,2,0, + 7,192,31,240,63,248,120,60,112,28,112,28,112,28,0,28, + 0,56,0,120,0,240,1,224,3,192,7,128,15,0,30,0, + 60,0,120,0,255,252,255,252,255,252,15,21,42,20,2,0, + 7,224,31,240,127,248,120,60,112,28,0,28,0,28,0,60, + 7,248,7,240,7,248,0,124,0,28,0,14,0,14,0,14, + 0,30,224,60,255,252,255,248,63,224,14,21,42,20,2,0, + 0,240,1,240,1,240,3,240,7,240,7,112,15,112,14,112, + 30,112,28,112,56,112,120,112,112,112,255,252,255,252,255,252, + 0,112,0,112,3,252,3,252,3,252,15,21,42,20,2,0, + 63,252,63,252,63,252,56,0,56,0,56,0,56,0,63,224, + 63,248,63,252,56,124,0,30,0,14,0,14,0,14,0,14, + 64,30,240,60,255,248,127,248,31,224,14,21,42,20,3,0, + 1,248,7,248,15,248,31,0,60,0,120,0,112,0,112,0, + 227,192,239,240,255,240,248,120,240,60,224,28,224,28,240,28, + 112,60,120,120,127,248,63,240,15,192,14,21,42,20,2,0, + 255,252,255,252,255,252,224,60,224,56,224,56,0,56,0,120, + 0,112,0,112,0,240,0,224,0,224,1,224,1,192,1,192, + 3,192,3,128,7,128,7,0,7,0,14,21,42,20,3,0, + 15,128,63,224,127,240,112,112,224,56,224,56,224,56,112,112, + 127,240,63,224,63,240,124,248,240,60,224,28,224,28,224,28, + 224,28,248,124,127,248,63,240,15,192,14,21,42,20,3,0, + 15,128,63,224,127,240,120,240,240,120,224,56,224,60,224,60, + 224,60,240,124,120,252,63,220,63,156,15,60,0,56,0,120, + 0,112,97,240,255,224,255,128,126,0,5,15,15,20,7,0, + 112,248,248,112,0,0,0,0,0,0,0,112,248,248,112,8, + 19,19,20,5,252,14,31,31,14,0,0,0,0,0,0,30, + 30,60,56,120,112,224,224,192,18,19,57,20,0,0,0,1, + 192,0,3,192,0,15,192,0,63,128,0,254,0,1,248,0, + 7,224,0,31,128,0,127,0,0,252,0,0,127,0,0,31, + 128,0,7,224,0,1,248,0,0,254,0,0,63,128,0,15, + 192,0,3,192,0,1,192,17,9,27,20,1,5,255,255,128, + 255,255,128,255,255,128,0,0,0,0,0,0,0,0,0,255, + 255,128,255,255,128,255,255,128,18,19,57,20,1,0,224,0, + 0,240,0,0,252,0,0,127,0,0,31,192,0,7,224,0, + 1,248,0,0,126,0,0,63,128,0,15,192,0,63,128,0, + 126,0,1,248,0,7,224,0,31,192,0,127,0,0,252,0, + 0,240,0,0,224,0,0,13,20,40,20,3,0,31,192,127, + 224,255,240,224,248,224,56,224,56,0,56,0,120,0,240,3, + 240,7,192,7,128,7,0,7,0,0,0,0,0,0,0,7, + 0,15,128,7,0,14,23,46,20,3,254,15,192,31,224,56, + 112,112,48,96,48,224,48,192,48,193,240,199,240,198,48,204, + 48,204,48,204,48,206,48,199,252,195,188,192,0,224,0,96, + 0,112,48,56,112,31,224,15,192,21,20,60,20,255,0,31, + 240,0,31,248,0,31,248,0,1,220,0,1,220,0,1,220, + 0,3,142,0,3,142,0,3,142,0,7,7,0,7,7,0, + 7,7,0,15,255,128,15,255,128,31,255,192,28,1,192,28, + 1,192,255,143,248,255,143,248,255,143,248,18,20,60,20,1, + 0,255,248,0,255,254,0,255,255,0,28,7,128,28,3,128, + 28,3,128,28,3,128,28,7,128,31,255,0,31,252,0,31, + 254,0,28,15,128,28,3,192,28,1,192,28,1,192,28,1, + 192,28,3,192,255,255,128,255,255,0,255,252,0,18,20,60, + 20,1,0,3,249,128,15,255,128,31,255,128,62,15,128,120, + 7,128,112,3,128,240,3,128,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,240,0,0, + 120,3,128,124,7,192,63,255,128,31,255,0,7,252,0,17, + 20,60,20,1,0,255,224,0,255,248,0,255,252,0,56,62, + 0,56,15,0,56,7,0,56,7,128,56,3,128,56,3,128, + 56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56, + 7,128,56,7,0,56,31,0,255,254,0,255,252,0,255,240, + 0,17,20,60,20,1,0,255,255,0,255,255,0,255,255,0, + 28,7,0,28,7,0,28,7,0,28,119,0,28,112,0,31, + 240,0,31,240,0,31,240,0,28,112,0,28,112,0,28,3, + 128,28,3,128,28,3,128,28,3,128,255,255,128,255,255,128, + 255,255,128,17,20,60,20,1,0,255,255,128,255,255,128,255, + 255,128,28,3,128,28,3,128,28,3,128,28,115,128,28,112, + 0,31,240,0,31,240,0,31,240,0,28,112,0,28,112,0, + 28,0,0,28,0,0,28,0,0,28,0,0,255,224,0,255, + 224,0,255,224,0,17,20,60,20,2,0,3,243,0,15,255, + 0,31,255,0,60,15,0,120,7,0,112,7,0,240,7,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,255,128,224, + 255,128,224,255,128,240,7,0,112,7,0,124,15,0,63,255, + 0,31,254,0,7,248,0,17,20,60,20,1,0,255,127,128, + 255,127,128,255,127,128,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,63,254,0,63,254,0,63,254,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 255,127,128,255,127,128,255,127,128,13,20,40,20,3,0,255, + 248,255,248,255,248,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,255,248,255,248,255,248,17,20,60,20,2,0,7,255,128, + 7,255,128,7,255,128,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,224,56,0,224,56, + 0,224,56,0,224,56,0,224,56,0,224,120,0,240,240,0, + 255,240,0,127,224,0,31,128,0,19,20,60,20,1,0,255, + 159,192,255,159,192,255,159,192,28,15,0,28,30,0,28,60, + 0,28,120,0,28,240,0,31,224,0,31,240,0,31,248,0, + 30,124,0,28,60,0,28,30,0,28,14,0,28,15,0,28, + 7,0,255,135,224,255,135,224,255,135,224,17,20,60,20,1, + 0,255,224,0,255,224,0,255,224,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14, + 0,0,14,3,128,14,3,128,14,3,128,14,3,128,14,3, + 128,14,3,128,255,255,128,255,255,128,255,255,128,21,20,60, + 20,255,0,252,1,248,252,1,248,254,3,248,62,3,224,63, + 7,224,63,7,224,59,142,224,59,142,224,59,222,224,57,220, + 224,57,220,224,56,248,224,56,248,224,56,248,224,56,112,224, + 56,112,224,56,0,224,255,7,248,255,7,248,255,7,248,19, + 20,60,20,0,0,248,31,224,252,31,224,254,31,224,62,3, + 128,63,3,128,63,3,128,59,131,128,59,195,128,57,195,128, + 57,227,128,56,243,128,56,115,128,56,123,128,56,59,128,56, + 31,128,56,31,128,56,15,128,255,7,128,255,7,128,255,3, + 128,18,20,60,20,1,0,3,240,0,15,252,0,31,254,0, + 60,15,0,120,7,128,112,3,128,240,3,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,240,3, + 192,112,3,128,120,7,128,60,15,0,31,254,0,15,252,0, + 3,240,0,17,20,60,20,1,0,255,248,0,255,254,0,255, + 255,0,28,15,0,28,3,128,28,3,128,28,3,128,28,3, + 128,28,7,128,28,15,0,31,254,0,31,252,0,31,240,0, + 28,0,0,28,0,0,28,0,0,28,0,0,255,224,0,255, + 224,0,255,224,0,18,25,75,20,1,251,3,240,0,15,248, + 0,31,254,0,60,15,0,120,7,128,112,3,128,240,3,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,112,3,128,120,7,128,60,15,0,31,254, + 0,15,252,0,7,240,0,14,0,0,31,225,192,63,255,192, + 63,255,192,56,63,0,20,20,60,20,1,0,255,248,0,255, + 254,0,255,255,0,28,15,0,28,7,128,28,3,128,28,3, + 128,28,7,128,28,15,0,31,254,0,31,252,0,31,248,0, + 28,60,0,28,30,0,28,15,0,28,7,128,28,3,192,255, + 131,240,255,129,240,255,129,240,15,20,40,20,2,0,15,204, + 63,252,127,252,240,124,224,28,224,28,240,28,248,0,127,0, + 63,224,15,248,1,252,0,62,224,30,224,14,224,14,240,30, + 255,252,255,248,231,224,17,20,60,20,1,0,255,255,128,255, + 255,128,255,255,128,225,195,128,225,195,128,225,195,128,225,195, + 128,225,195,128,225,195,128,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,63, + 254,0,63,254,0,63,254,0,19,20,60,20,0,0,255,31, + 224,255,31,224,255,31,224,56,3,128,56,3,128,56,3,128, + 56,3,128,56,3,128,56,3,128,56,3,128,56,3,128,56, + 3,128,56,3,128,56,3,128,56,3,128,28,7,0,31,31, + 0,15,254,0,7,252,0,1,240,0,21,20,60,20,255,0, + 255,143,248,255,143,248,255,143,248,28,1,192,28,1,192,30, + 3,192,14,3,128,14,3,128,7,7,0,7,7,0,7,143, + 0,3,142,0,3,142,0,3,222,0,1,220,0,1,220,0, + 0,248,0,0,248,0,0,248,0,0,112,0,19,20,60,20, + 0,0,255,31,224,255,31,224,255,31,224,112,1,192,112,1, + 192,112,225,192,112,225,192,113,241,192,57,243,128,57,243,128, + 59,187,128,59,187,128,59,187,128,63,31,128,63,31,128,30, + 15,0,30,15,0,30,15,0,28,7,0,28,7,0,19,20, + 60,20,0,0,255,31,224,255,31,224,255,31,224,60,7,128, + 30,15,0,15,30,0,7,188,0,3,248,0,1,240,0,0, + 224,0,1,240,0,3,248,0,7,188,0,15,30,0,14,14, + 0,30,15,0,60,7,128,255,31,224,255,31,224,255,31,224, + 19,20,60,20,0,0,255,31,224,255,31,224,255,31,224,60, + 7,128,14,14,0,15,30,0,7,28,0,7,188,0,3,248, + 0,1,240,0,1,240,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,15,254,0,15,254,0,15, + 254,0,15,20,40,20,2,0,127,252,127,252,127,252,112,60, + 112,56,112,120,112,240,113,224,1,192,3,192,7,128,15,0, + 14,14,30,14,60,14,120,14,112,14,255,254,255,254,255,254, + 7,26,26,20,8,251,254,254,254,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,254,254,254, + 13,27,54,20,3,252,224,0,224,0,240,0,112,0,112,0, + 56,0,56,0,60,0,28,0,28,0,14,0,14,0,15,0, + 7,0,7,128,3,128,3,128,1,192,1,192,1,224,0,224, + 0,224,0,112,0,112,0,120,0,56,0,56,7,26,26,20, + 4,251,254,254,254,14,14,14,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,254,254,254,13,11,22,20, + 3,11,2,0,7,0,7,0,15,128,31,192,61,224,56,224, + 120,240,240,120,224,56,224,56,20,3,9,20,0,249,255,255, + 240,255,255,240,255,255,240,6,6,6,20,6,16,192,224,112, + 56,28,12,16,15,30,20,2,0,31,224,127,248,127,252,112, + 60,0,28,0,28,15,252,127,252,127,252,240,28,224,28,224, + 124,255,255,127,223,63,159,19,21,63,20,0,0,252,0,0, + 252,0,0,252,0,0,28,0,0,28,0,0,28,0,0,28, + 124,0,29,255,0,31,255,128,31,135,192,30,1,192,30,1, + 224,28,0,224,28,0,224,28,0,224,28,0,224,30,1,192, + 31,3,192,255,255,128,255,255,0,252,254,0,16,15,30,20, + 2,0,7,230,31,254,63,254,124,62,112,14,224,14,224,14, + 224,0,224,0,224,0,240,6,120,15,127,254,63,252,15,240, + 19,21,63,20,1,0,0,63,0,0,63,0,0,63,0,0, + 7,0,0,7,0,0,7,0,7,231,0,31,255,0,63,255, + 0,124,63,0,112,15,0,240,15,0,224,7,0,224,7,0, + 224,7,0,224,7,0,112,15,0,124,63,0,63,255,224,31, + 247,224,7,231,224,18,15,45,20,1,0,3,240,0,15,252, + 0,31,254,0,62,31,0,120,7,128,112,3,128,255,255,128, + 255,255,128,255,255,128,240,0,0,120,0,0,126,3,128,63, + 255,192,31,255,128,7,254,0,16,21,42,20,3,0,1,255, + 7,255,7,255,15,0,14,0,14,0,255,252,255,252,255,252, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,255,252,255,252,255,252,18,22,66,20,1,249,7,207, + 192,31,255,192,63,255,192,124,126,0,112,30,0,240,30,0, + 224,14,0,224,14,0,224,14,0,240,30,0,112,30,0,120, + 126,0,63,254,0,31,238,0,15,206,0,0,14,0,0,14, + 0,0,30,0,0,60,0,31,252,0,31,248,0,31,224,0, + 18,21,63,20,1,0,252,0,0,252,0,0,252,0,0,28, + 0,0,28,0,0,28,0,0,28,248,0,29,252,0,31,254, + 0,31,15,0,30,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,127,31,192,127, + 31,192,127,31,192,15,21,42,20,3,0,7,128,7,128,7, + 128,7,128,0,0,0,0,127,128,127,128,127,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,255, + 254,255,254,255,254,12,28,56,20,3,249,3,192,3,192,3, + 192,3,192,0,0,0,0,255,240,255,240,255,240,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,240,255,224,255, + 192,255,128,17,21,63,20,1,0,252,0,0,252,0,0,252, + 0,0,28,0,0,28,0,0,28,0,0,28,255,0,28,255, + 0,28,255,0,28,120,0,28,240,0,29,224,0,31,192,0, + 31,192,0,31,224,0,29,240,0,28,248,0,28,124,0,252, + 63,128,252,63,128,252,63,128,15,21,42,20,3,0,127,128, + 127,128,127,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,255,254,255,254,255,254,20,15,45,20,1,0,243,143, + 0,255,255,128,255,255,192,120,241,192,112,225,192,112,225,192, + 112,225,192,112,225,192,112,225,192,112,225,192,112,225,192,112, + 225,192,252,249,240,252,249,240,252,249,240,17,15,45,20,2, + 0,249,240,0,251,248,0,255,252,0,62,30,0,60,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,254,63,128,254,63,128,254,63,128,17,15, + 45,20,2,0,7,240,0,31,252,0,63,254,0,120,15,0, + 112,7,0,240,7,128,224,3,128,224,3,128,224,3,128,240, + 7,128,112,7,0,120,15,0,63,254,0,31,252,0,7,240, + 0,19,22,66,20,0,249,252,124,0,253,255,0,255,255,128, + 31,3,192,30,1,224,28,0,224,28,0,224,28,0,224,28, + 0,224,28,1,224,30,1,192,31,7,192,31,255,128,29,254, + 0,28,120,0,28,0,0,28,0,0,28,0,0,28,0,0, + 255,192,0,255,192,0,255,192,0,19,22,66,20,1,249,7, + 231,224,31,255,224,63,255,224,124,63,0,112,15,0,240,15, + 0,224,7,0,224,7,0,224,7,0,240,15,0,112,15,0, + 124,63,0,63,255,0,31,247,0,7,199,0,0,7,0,0, + 7,0,0,7,0,0,7,0,0,127,224,0,127,224,0,127, + 224,17,15,45,20,2,0,126,62,0,126,255,0,127,255,128, + 15,199,0,15,2,0,15,0,0,14,0,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,255,252,0,255,252, + 0,255,252,0,15,15,30,20,3,0,15,236,63,252,63,252, + 120,60,112,28,120,0,127,192,63,248,15,252,224,62,224,14, + 248,30,255,252,255,248,231,224,16,20,40,20,2,0,28,0, + 28,0,28,0,28,0,28,0,255,252,255,252,255,252,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,6,30,31, + 31,255,15,254,3,240,18,15,45,20,1,0,252,63,0,252, + 63,0,252,63,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,28,7,0,28,7,0,30,31,0, + 31,255,192,15,255,192,7,247,192,19,15,45,20,0,0,255, + 31,224,255,31,224,255,31,224,60,7,0,28,7,0,30,14, + 0,14,14,0,15,28,0,7,28,0,7,184,0,3,184,0, + 3,240,0,1,240,0,1,224,0,0,224,0,19,15,45,20, + 0,0,254,15,224,254,15,224,254,15,224,56,227,128,56,227, + 128,57,243,128,61,247,128,29,247,0,31,191,0,31,31,0, + 31,31,0,15,30,0,14,14,0,14,14,0,14,14,0,17, + 15,45,20,1,0,254,63,128,254,63,128,254,63,128,60,28, + 0,30,56,0,15,112,0,7,224,0,3,224,0,3,240,0, + 7,120,0,14,60,0,28,30,0,254,63,128,254,63,128,254, + 63,128,19,22,66,20,1,249,255,31,224,255,31,224,255,31, + 224,60,3,128,28,7,0,30,7,0,14,14,0,15,14,0, + 7,28,0,7,156,0,3,184,0,3,248,0,1,240,0,1, + 240,0,0,224,0,0,224,0,1,192,0,1,192,0,3,128, + 0,127,240,0,127,240,0,127,240,0,13,15,30,20,4,0, + 255,248,255,248,255,248,224,240,225,224,227,192,7,128,15,0, + 30,0,60,0,120,56,240,56,255,248,255,248,255,248,9,26, + 52,20,5,251,7,128,15,128,15,128,30,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,60,0,248,0,248,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,31,128,15,128,7,128,3,26,26,20,8,251,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,9,26,52,20,5,251,240,0, + 248,0,248,0,60,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,30,0,15,128,15,128,31,128,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,252,0,248,0, + 240,0,15,7,14,20,2,6,12,0,63,14,127,142,247,222, + 227,252,225,248,0,96,255}; +/* + Fontname: -Adobe-Courier-Bold-R-Normal--34-240-100-100-M-200-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 21 + Calculated Max Values w=17 h=27 x= 7 y= 8 dx=20 dy= 0 ascent=23 len=54 + Font Bounding box w=30 h=44 x=-7 y=-11 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =21 descent= 0 + X Font ascent =21 descent= 0 + Max Font ascent =23 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courB24n[686] U8G_SECTION(".progmem.u8g_font_courB24n") = { + 0,30,44,249,245,21,0,0,0,0,42,57,0,23,251,21, + 0,15,14,28,20,3,7,3,128,3,128,3,128,3,128,99, + 140,251,190,127,252,31,240,15,224,15,224,30,240,60,120,120, + 60,48,24,17,17,51,20,1,1,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,1,192,0,255,255, + 128,255,255,128,255,255,128,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,1,192,0,7,10,10,20, + 5,251,30,30,60,60,56,112,112,224,224,192,15,3,6,20, + 2,8,255,254,255,254,255,254,5,4,4,20,7,0,112,248, + 248,112,13,27,54,20,3,252,0,56,0,56,0,120,0,112, + 0,112,0,224,0,224,1,224,1,192,1,192,3,128,3,128, + 7,128,7,0,15,0,14,0,14,0,28,0,28,0,60,0, + 56,0,56,0,112,0,112,0,240,0,224,0,224,0,13,21, + 42,20,3,0,15,128,63,224,127,240,112,112,240,120,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,224,56,224,56, + 224,56,224,56,240,120,112,112,127,240,63,224,15,128,13,21, + 42,20,4,0,3,0,15,0,127,0,255,0,255,0,103,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,255,248,255,248,255,248,14,21, + 42,20,2,0,7,192,31,240,63,248,120,60,112,28,112,28, + 112,28,0,28,0,56,0,120,0,240,1,224,3,192,7,128, + 15,0,30,0,60,0,120,0,255,252,255,252,255,252,15,21, + 42,20,2,0,7,224,31,240,127,248,120,60,112,28,0,28, + 0,28,0,60,7,248,7,240,7,248,0,124,0,28,0,14, + 0,14,0,14,0,30,224,60,255,252,255,248,63,224,14,21, + 42,20,2,0,0,240,1,240,1,240,3,240,7,240,7,112, + 15,112,14,112,30,112,28,112,56,112,120,112,112,112,255,252, + 255,252,255,252,0,112,0,112,3,252,3,252,3,252,15,21, + 42,20,2,0,63,252,63,252,63,252,56,0,56,0,56,0, + 56,0,63,224,63,248,63,252,56,124,0,30,0,14,0,14, + 0,14,0,14,64,30,240,60,255,248,127,248,31,224,14,21, + 42,20,3,0,1,248,7,248,15,248,31,0,60,0,120,0, + 112,0,112,0,227,192,239,240,255,240,248,120,240,60,224,28, + 224,28,240,28,112,60,120,120,127,248,63,240,15,192,14,21, + 42,20,2,0,255,252,255,252,255,252,224,60,224,56,224,56, + 0,56,0,120,0,112,0,112,0,240,0,224,0,224,1,224, + 1,192,1,192,3,192,3,128,7,128,7,0,7,0,14,21, + 42,20,3,0,15,128,63,224,127,240,112,112,224,56,224,56, + 224,56,112,112,127,240,63,224,63,240,124,248,240,60,224,28, + 224,28,224,28,224,28,248,124,127,248,63,240,15,192,14,21, + 42,20,3,0,15,128,63,224,127,240,120,240,240,120,224,56, + 224,60,224,60,224,60,240,124,120,252,63,220,63,156,15,60, + 0,56,0,120,0,112,97,240,255,224,255,128,126,0}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--11-80-100-100-M-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 6, '1' Height: 7 + Calculated Max Values w= 6 h=10 x= 2 y= 6 dx= 6 dy= 0 ascent= 9 len=10 + Font Bounding box w=10 h=16 x=-2 y=-4 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR08[2433] U8G_SECTION(".progmem.u8g_font_courR08") = { + 0,10,16,254,252,6,1,151,3,21,32,255,254,9,254,7, + 254,0,0,0,6,0,1,1,7,7,6,2,0,128,128,128, + 128,128,0,128,3,3,3,6,1,4,160,160,160,5,8,8, + 6,1,255,80,80,248,80,80,248,80,80,4,8,8,6,1, + 255,32,112,128,96,16,144,96,32,6,7,7,6,0,0,224, + 164,200,48,92,148,24,6,6,6,6,0,0,48,64,96,148, + 136,116,1,3,3,6,2,4,128,128,128,3,9,9,6,2, + 254,32,64,64,128,128,128,64,64,32,3,9,9,6,1,254, + 128,64,64,32,32,32,64,64,128,5,4,4,6,0,3,32, + 216,32,80,5,5,5,6,0,1,32,32,248,32,32,2,3, + 3,6,1,254,64,64,128,4,1,1,6,1,3,240,1,2, + 2,6,2,0,128,128,6,9,9,6,0,255,4,8,16,16, + 32,32,64,64,128,4,7,7,6,1,0,96,144,144,144,144, + 144,96,4,7,7,6,1,0,32,224,32,32,32,32,240,4, + 7,7,6,1,0,96,144,16,32,64,128,240,4,7,7,6, + 1,0,96,144,16,96,16,144,96,5,7,7,6,0,0,16, + 48,80,144,248,16,16,4,7,7,6,1,0,240,128,128,224, + 16,16,224,4,7,7,6,1,0,112,128,128,224,144,144,96, + 4,7,7,6,1,0,240,144,16,32,32,64,64,4,7,7, + 6,1,0,96,144,144,96,144,144,96,4,7,7,6,1,0, + 96,144,144,112,16,16,224,1,5,5,6,2,0,128,128,0, + 128,128,2,6,6,6,1,254,64,64,0,64,64,128,3,5, + 5,6,1,1,32,64,128,64,32,4,3,3,6,1,2,240, + 0,240,3,5,5,6,2,1,128,64,32,64,128,4,6,6, + 6,1,0,96,144,32,64,0,64,6,8,8,6,0,255,56, + 68,156,168,168,156,64,56,6,6,6,6,0,0,112,40,72, + 120,72,204,5,6,6,6,0,0,240,72,112,72,72,240,4, + 6,6,6,1,0,96,144,128,128,144,96,5,6,6,6,0, + 0,240,72,72,72,72,240,5,6,6,6,0,0,248,72,112, + 64,72,248,5,6,6,6,0,0,248,72,112,80,64,224,4, + 6,6,6,1,0,96,144,128,176,144,96,6,6,6,6,0, + 0,204,72,120,72,72,204,5,6,6,6,1,0,248,32,32, + 32,32,248,5,6,6,6,1,0,120,16,16,144,144,96,6, + 6,6,6,0,0,216,80,96,80,72,228,5,6,6,6,1, + 0,224,64,64,64,72,248,5,6,6,6,1,0,136,216,168, + 168,136,216,6,6,6,6,0,0,220,72,104,88,72,200,4, + 6,6,6,1,0,96,144,144,144,144,96,5,6,6,6,1, + 0,240,72,72,112,64,224,4,7,7,6,1,255,96,144,144, + 144,144,96,112,6,6,6,6,0,0,240,72,72,112,72,228, + 4,6,6,6,1,0,112,128,96,16,144,224,5,6,6,6, + 0,0,248,168,32,32,32,112,6,6,6,6,0,0,204,72, + 72,72,72,48,6,6,6,6,0,0,220,136,80,80,80,32, + 6,6,6,6,0,0,220,136,168,168,80,80,5,6,6,6, + 1,0,216,80,32,32,80,216,5,6,6,6,1,0,216,136, + 80,32,32,112,4,6,6,6,1,0,240,144,32,64,144,240, + 2,9,9,6,2,254,192,128,128,128,128,128,128,128,192,5, + 9,9,6,1,255,128,128,64,64,32,32,16,16,8,2,9, + 9,6,2,254,192,64,64,64,64,64,64,64,192,5,3,3, + 6,1,4,32,80,136,6,1,1,6,0,254,252,2,2,2, + 6,1,6,128,64,5,5,5,6,0,0,96,16,112,144,104, + 5,7,7,6,0,0,192,64,112,72,72,72,240,4,5,5, + 6,1,0,96,144,128,144,96,5,7,7,6,1,0,48,16, + 112,144,144,144,104,4,5,5,6,1,0,96,144,224,144,96, + 4,7,7,6,1,0,48,64,240,64,64,64,240,5,7,7, + 6,1,254,104,144,144,144,112,16,224,6,7,7,6,0,0, + 192,64,112,72,72,72,236,5,7,7,6,1,0,32,0,96, + 32,32,32,248,3,9,9,6,1,254,32,0,224,32,32,32, + 32,32,192,5,7,7,6,0,0,192,64,88,80,96,80,216, + 5,7,7,6,1,0,96,32,32,32,32,32,248,6,5,5, + 6,0,0,208,168,168,168,172,6,5,5,6,0,0,176,72, + 72,72,236,4,5,5,6,1,0,96,144,144,144,96,5,7, + 7,6,0,254,176,72,72,72,112,64,240,5,7,7,6,1, + 254,104,144,144,144,112,16,56,5,5,5,6,1,0,184,64, + 64,64,240,4,5,5,6,1,0,112,128,96,16,224,5,7, + 7,6,1,0,64,64,240,64,64,72,48,6,5,5,6,0, + 0,216,72,72,72,52,6,5,5,6,0,0,204,68,40,40, + 16,6,5,5,6,0,0,172,168,168,80,80,5,5,5,6, + 0,0,216,80,32,80,216,5,7,7,6,0,254,216,72,72, + 72,48,32,192,4,5,5,6,1,0,240,32,64,144,240,3, + 9,9,6,2,254,32,64,64,64,128,64,64,64,32,1,9, + 9,6,2,254,128,128,128,128,128,128,128,128,128,3,9,9, + 6,2,254,128,64,64,64,32,64,64,64,128,4,2,2,6, + 1,3,80,160,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,6,0,1,1,7,7,6,2, + 254,128,0,128,128,128,128,128,4,8,8,6,1,255,32,32, + 112,128,128,112,32,32,6,7,7,6,0,0,56,64,248,32, + 32,68,252,5,5,5,6,0,1,136,112,80,112,136,5,7, + 7,6,0,0,136,80,248,32,248,32,112,1,9,9,6,2, + 254,128,128,128,0,0,128,128,128,128,4,8,8,6,1,255, + 112,128,96,144,144,96,16,224,3,1,1,6,2,5,160,6, + 7,7,6,0,0,48,72,180,164,180,72,48,4,5,5,6, + 1,1,224,16,208,0,240,6,3,3,6,0,1,108,216,108, + 5,3,3,6,0,2,248,8,8,4,1,1,6,1,3,240, + 6,7,7,6,0,0,48,72,188,180,172,72,48,4,1,1, + 6,1,5,240,4,3,3,6,1,4,96,144,96,5,6,6, + 6,0,0,32,32,248,32,0,248,3,4,4,6,2,3,96, + 160,64,224,3,4,4,6,2,3,224,64,32,192,2,2,2, + 6,2,5,64,128,6,7,7,6,0,254,216,72,72,72,116, + 64,64,6,8,8,6,0,255,124,168,168,104,40,40,40,108, + 1,2,2,6,2,2,128,128,3,3,3,6,1,254,64,32, + 192,3,4,4,6,2,3,192,64,64,224,4,5,5,6,1, + 1,96,144,96,0,240,6,3,3,6,1,1,216,108,216,6, + 7,7,6,0,0,192,68,72,244,44,92,132,6,7,7,6, + 0,0,192,68,72,252,52,72,156,6,7,7,6,0,0,224, + 68,40,212,44,92,132,4,7,7,6,0,254,32,0,32,32, + 64,144,96,6,9,9,6,0,0,32,16,0,112,40,72,120, + 72,204,6,9,9,6,0,0,16,32,0,112,40,72,120,72, + 204,6,9,9,6,0,0,32,80,0,112,40,72,120,72,204, + 6,9,9,6,0,0,40,80,0,112,40,72,120,72,204,6, + 8,8,6,0,0,80,0,112,40,72,120,72,204,6,9,9, + 6,0,0,16,40,16,112,40,72,120,72,204,6,6,6,6, + 0,0,124,48,92,112,144,156,4,8,8,6,1,254,96,144, + 128,128,144,96,32,192,5,9,9,6,0,0,32,16,0,248, + 72,112,64,72,248,5,9,9,6,0,0,16,32,0,248,72, + 112,64,72,248,5,9,9,6,0,0,32,80,0,248,72,112, + 64,72,248,5,8,8,6,0,0,80,0,248,72,112,64,72, + 248,5,9,9,6,0,0,64,32,0,248,32,32,32,32,248, + 5,9,9,6,0,0,16,32,0,248,32,32,32,32,248,5, + 9,9,6,0,0,32,80,0,248,32,32,32,32,248,5,8, + 8,6,0,0,80,0,248,32,32,32,32,248,5,6,6,6, + 0,0,240,72,232,72,72,240,6,9,9,6,0,0,40,80, + 0,220,72,104,88,72,200,4,9,9,6,1,0,64,32,0, + 96,144,144,144,144,96,4,9,9,6,1,0,32,64,0,96, + 144,144,144,144,96,4,9,9,6,1,0,32,80,0,96,144, + 144,144,144,96,4,9,9,6,1,0,80,160,0,96,144,144, + 144,144,96,4,8,8,6,1,0,160,0,96,144,144,144,144, + 96,5,5,5,6,0,1,136,80,32,80,136,6,6,6,6, + 0,0,52,72,88,104,72,176,6,9,9,6,0,0,32,16, + 0,204,72,72,72,72,48,6,9,9,6,0,0,16,32,0, + 204,72,72,72,72,48,6,9,9,6,0,0,16,40,0,204, + 72,72,72,72,48,6,8,8,6,0,0,80,0,204,72,72, + 72,72,48,5,9,9,6,0,0,16,32,0,216,136,80,32, + 32,112,5,6,6,6,0,0,192,112,72,112,64,224,6,6, + 6,6,0,0,48,72,88,68,84,200,5,8,8,6,0,0, + 64,32,0,96,16,112,144,104,5,8,8,6,0,0,16,32, + 0,96,16,112,144,104,5,8,8,6,0,0,32,80,0,96, + 16,112,144,104,5,8,8,6,0,0,80,160,0,96,16,112, + 144,104,5,7,7,6,0,0,80,0,96,16,112,144,104,5, + 9,9,6,0,0,32,80,32,0,96,16,112,144,104,6,5, + 5,6,0,0,108,148,124,144,236,4,7,7,6,1,254,96, + 144,128,144,96,32,192,4,8,8,6,1,0,64,32,0,96, + 144,240,128,112,4,8,8,6,1,0,32,64,0,96,144,240, + 128,112,4,8,8,6,1,0,64,160,0,96,144,240,128,112, + 4,7,7,6,1,0,160,0,96,144,240,128,112,5,8,8, + 6,0,0,64,32,0,96,32,32,32,248,5,8,8,6,0, + 0,16,32,0,96,32,32,32,248,5,8,8,6,0,0,32, + 80,0,96,32,32,32,248,5,7,7,6,0,0,80,0,96, + 32,32,32,248,4,8,8,6,1,0,208,96,160,112,144,144, + 144,96,6,8,8,6,0,0,40,80,0,176,72,72,72,236, + 4,8,8,6,1,0,64,32,0,96,144,144,144,96,4,8, + 8,6,1,0,16,32,0,96,144,144,144,96,4,8,8,6, + 1,0,64,160,0,96,144,144,144,96,4,8,8,6,1,0, + 80,160,0,96,144,144,144,96,4,7,7,6,1,0,160,0, + 96,144,144,144,96,5,5,5,6,0,1,32,0,248,0,32, + 6,6,6,6,0,0,4,56,88,104,72,176,6,8,8,6, + 0,0,32,16,0,216,72,72,72,52,6,8,8,6,0,0, + 16,32,0,216,72,72,72,52,6,8,8,6,0,0,32,80, + 0,216,72,72,72,52,6,7,7,6,0,0,80,0,216,72, + 72,72,52,5,10,10,6,0,254,16,32,0,216,72,72,72, + 48,32,192,5,9,9,6,0,254,192,64,112,72,72,72,112, + 64,224,5,9,9,6,0,254,80,0,216,72,72,72,48,32, + 192}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--11-80-100-100-M-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 6, '1' Height: 7 + Calculated Max Values w= 6 h= 9 x= 2 y= 6 dx= 6 dy= 0 ascent= 8 len= 9 + Font Bounding box w=10 h=16 x=-2 y=-4 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 8 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR08r[1157] U8G_SECTION(".progmem.u8g_font_courR08r") = { + 0,10,16,254,252,6,1,151,3,21,32,127,254,8,254,7, + 254,0,0,0,6,0,1,1,7,7,6,2,0,128,128,128, + 128,128,0,128,3,3,3,6,1,4,160,160,160,5,8,8, + 6,1,255,80,80,248,80,80,248,80,80,4,8,8,6,1, + 255,32,112,128,96,16,144,96,32,6,7,7,6,0,0,224, + 164,200,48,92,148,24,6,6,6,6,0,0,48,64,96,148, + 136,116,1,3,3,6,2,4,128,128,128,3,9,9,6,2, + 254,32,64,64,128,128,128,64,64,32,3,9,9,6,1,254, + 128,64,64,32,32,32,64,64,128,5,4,4,6,0,3,32, + 216,32,80,5,5,5,6,0,1,32,32,248,32,32,2,3, + 3,6,1,254,64,64,128,4,1,1,6,1,3,240,1,2, + 2,6,2,0,128,128,6,9,9,6,0,255,4,8,16,16, + 32,32,64,64,128,4,7,7,6,1,0,96,144,144,144,144, + 144,96,4,7,7,6,1,0,32,224,32,32,32,32,240,4, + 7,7,6,1,0,96,144,16,32,64,128,240,4,7,7,6, + 1,0,96,144,16,96,16,144,96,5,7,7,6,0,0,16, + 48,80,144,248,16,16,4,7,7,6,1,0,240,128,128,224, + 16,16,224,4,7,7,6,1,0,112,128,128,224,144,144,96, + 4,7,7,6,1,0,240,144,16,32,32,64,64,4,7,7, + 6,1,0,96,144,144,96,144,144,96,4,7,7,6,1,0, + 96,144,144,112,16,16,224,1,5,5,6,2,0,128,128,0, + 128,128,2,6,6,6,1,254,64,64,0,64,64,128,3,5, + 5,6,1,1,32,64,128,64,32,4,3,3,6,1,2,240, + 0,240,3,5,5,6,2,1,128,64,32,64,128,4,6,6, + 6,1,0,96,144,32,64,0,64,6,8,8,6,0,255,56, + 68,156,168,168,156,64,56,6,6,6,6,0,0,112,40,72, + 120,72,204,5,6,6,6,0,0,240,72,112,72,72,240,4, + 6,6,6,1,0,96,144,128,128,144,96,5,6,6,6,0, + 0,240,72,72,72,72,240,5,6,6,6,0,0,248,72,112, + 64,72,248,5,6,6,6,0,0,248,72,112,80,64,224,4, + 6,6,6,1,0,96,144,128,176,144,96,6,6,6,6,0, + 0,204,72,120,72,72,204,5,6,6,6,1,0,248,32,32, + 32,32,248,5,6,6,6,1,0,120,16,16,144,144,96,6, + 6,6,6,0,0,216,80,96,80,72,228,5,6,6,6,1, + 0,224,64,64,64,72,248,5,6,6,6,1,0,136,216,168, + 168,136,216,6,6,6,6,0,0,220,72,104,88,72,200,4, + 6,6,6,1,0,96,144,144,144,144,96,5,6,6,6,1, + 0,240,72,72,112,64,224,4,7,7,6,1,255,96,144,144, + 144,144,96,112,6,6,6,6,0,0,240,72,72,112,72,228, + 4,6,6,6,1,0,112,128,96,16,144,224,5,6,6,6, + 0,0,248,168,32,32,32,112,6,6,6,6,0,0,204,72, + 72,72,72,48,6,6,6,6,0,0,220,136,80,80,80,32, + 6,6,6,6,0,0,220,136,168,168,80,80,5,6,6,6, + 1,0,216,80,32,32,80,216,5,6,6,6,1,0,216,136, + 80,32,32,112,4,6,6,6,1,0,240,144,32,64,144,240, + 2,9,9,6,2,254,192,128,128,128,128,128,128,128,192,5, + 9,9,6,1,255,128,128,64,64,32,32,16,16,8,2,9, + 9,6,2,254,192,64,64,64,64,64,64,64,192,5,3,3, + 6,1,4,32,80,136,6,1,1,6,0,254,252,2,2,2, + 6,1,6,128,64,5,5,5,6,0,0,96,16,112,144,104, + 5,7,7,6,0,0,192,64,112,72,72,72,240,4,5,5, + 6,1,0,96,144,128,144,96,5,7,7,6,1,0,48,16, + 112,144,144,144,104,4,5,5,6,1,0,96,144,224,144,96, + 4,7,7,6,1,0,48,64,240,64,64,64,240,5,7,7, + 6,1,254,104,144,144,144,112,16,224,6,7,7,6,0,0, + 192,64,112,72,72,72,236,5,7,7,6,1,0,32,0,96, + 32,32,32,248,3,9,9,6,1,254,32,0,224,32,32,32, + 32,32,192,5,7,7,6,0,0,192,64,88,80,96,80,216, + 5,7,7,6,1,0,96,32,32,32,32,32,248,6,5,5, + 6,0,0,208,168,168,168,172,6,5,5,6,0,0,176,72, + 72,72,236,4,5,5,6,1,0,96,144,144,144,96,5,7, + 7,6,0,254,176,72,72,72,112,64,240,5,7,7,6,1, + 254,104,144,144,144,112,16,56,5,5,5,6,1,0,184,64, + 64,64,240,4,5,5,6,1,0,112,128,96,16,224,5,7, + 7,6,1,0,64,64,240,64,64,72,48,6,5,5,6,0, + 0,216,72,72,72,52,6,5,5,6,0,0,204,68,40,40, + 16,6,5,5,6,0,0,172,168,168,80,80,5,5,5,6, + 0,0,216,80,32,80,216,5,7,7,6,0,254,216,72,72, + 72,48,32,192,4,5,5,6,1,0,240,32,64,144,240,3, + 9,9,6,2,254,32,64,64,64,128,64,64,64,32,1,9, + 9,6,2,254,128,128,128,128,128,128,128,128,128,3,9,9, + 6,2,254,128,64,64,64,32,64,64,64,128,4,2,2,6, + 1,3,80,160,255}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--14-100-100-100-M-90-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 9, '1' Height: 10 + Calculated Max Values w=10 h=13 x= 4 y= 8 dx= 9 dy= 0 ascent=12 len=24 + Font Bounding box w=14 h=20 x=-3 y=-5 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR10[3052] U8G_SECTION(".progmem.u8g_font_courR10") = { + 0,14,20,253,251,9,1,224,3,220,32,255,253,12,253,10, + 253,0,0,0,9,0,1,1,9,9,9,3,0,128,128,128, + 128,128,128,0,128,128,4,4,4,9,2,6,144,144,144,144, + 5,10,10,9,2,255,80,80,80,248,80,80,248,80,80,80, + 5,13,13,9,2,254,32,32,120,136,128,192,48,8,136,240, + 32,32,32,8,10,10,9,0,0,96,144,144,115,12,48,204, + 18,18,12,6,8,8,9,1,0,56,64,64,64,168,144,152, + 100,1,4,4,9,3,5,128,128,128,128,3,12,12,9,3, + 254,32,64,64,128,128,128,128,128,128,64,64,32,3,12,12, + 9,2,254,128,64,64,32,32,32,32,32,32,64,64,128,5, + 6,6,9,1,3,32,32,248,32,80,136,7,7,7,9,1, + 1,16,16,16,254,16,16,16,3,4,4,9,2,254,96,96, + 192,128,6,1,1,9,1,4,252,2,2,2,9,3,0,192, + 192,6,11,11,9,1,255,4,8,8,16,16,32,32,64,64, + 128,128,6,10,10,9,1,0,48,72,132,132,132,132,132,132, + 72,48,5,10,10,9,1,0,32,96,160,32,32,32,32,32, + 32,248,5,10,10,9,1,0,112,136,136,8,16,32,64,128, + 136,248,6,10,10,9,1,0,56,68,4,4,24,4,4,4, + 132,120,6,10,10,9,1,0,24,40,40,72,72,136,136,252, + 8,28,6,10,10,9,1,0,124,64,64,64,120,4,4,4, + 132,120,6,10,10,9,1,0,56,64,128,128,184,196,132,132, + 68,56,6,10,10,9,1,0,252,132,4,8,8,8,16,16, + 16,16,5,10,10,9,2,0,112,136,136,136,112,136,136,136, + 136,112,6,10,10,9,1,0,112,136,132,132,140,116,4,4, + 8,112,2,7,7,9,3,0,192,192,0,0,0,192,192,3, + 9,9,9,2,254,96,96,0,0,0,96,96,192,128,7,7, + 7,9,0,1,6,24,96,128,96,24,6,7,3,3,9,1, + 3,254,0,254,7,7,7,9,1,1,192,48,12,2,12,48, + 192,5,9,9,9,1,0,112,136,8,8,48,32,0,32,32, + 7,10,10,9,1,255,56,68,132,156,164,164,158,128,64,56, + 9,9,18,9,255,0,56,0,8,0,20,0,20,0,34,0, + 62,0,65,0,65,0,247,128,7,9,9,9,0,0,252,66, + 66,66,124,66,66,66,252,7,9,9,9,1,0,58,70,130, + 128,128,128,128,66,60,8,9,9,9,0,0,252,66,65,65, + 65,65,65,66,252,7,9,9,9,1,0,254,66,66,72,120, + 72,66,66,254,7,9,9,9,1,0,254,66,66,72,120,72, + 64,64,240,8,9,9,9,0,0,58,70,130,128,128,143,130, + 66,60,8,9,9,9,0,0,231,66,66,66,126,66,66,66, + 231,5,9,9,9,2,0,248,32,32,32,32,32,32,32,248, + 7,9,9,9,1,0,62,8,8,8,8,136,136,136,112,8, + 9,9,9,0,0,238,68,72,80,112,72,68,68,227,8,9, + 9,9,0,0,248,32,32,32,32,33,33,33,255,9,9,18, + 9,0,0,227,128,99,0,85,0,85,0,73,0,73,0,65, + 0,65,0,227,128,8,9,9,9,0,0,231,98,82,82,74, + 74,70,70,226,8,9,9,9,0,0,60,66,129,129,129,129, + 129,66,60,7,9,9,9,1,0,252,66,66,66,66,124,64, + 64,240,8,11,11,9,0,254,60,66,129,129,129,129,129,66, + 60,49,94,8,9,9,9,0,0,252,66,66,66,68,120,68, + 66,225,6,9,9,9,1,0,116,140,132,128,120,4,132,196, + 184,7,9,9,9,1,0,254,146,146,16,16,16,16,16,124, + 8,9,9,9,0,0,231,66,66,66,66,66,66,66,60,9, + 9,18,9,0,0,227,128,65,0,65,0,34,0,34,0,20, + 0,20,0,8,0,8,0,9,9,18,9,0,0,227,128,65, + 0,73,0,73,0,85,0,85,0,34,0,34,0,34,0,8, + 9,9,9,0,0,231,66,36,36,24,36,36,66,231,7,9, + 9,9,0,0,238,68,68,40,40,16,16,16,124,6,9,9, + 9,1,0,252,132,136,16,32,32,68,132,252,3,12,12,9, + 3,254,224,128,128,128,128,128,128,128,128,128,128,224,6,11, + 11,9,1,255,128,64,64,32,32,16,16,8,8,4,4,3, + 12,12,9,2,254,224,32,32,32,32,32,32,32,32,32,32, + 224,5,5,5,9,2,4,32,80,80,136,136,9,1,2,9, + 0,253,255,128,4,2,2,9,2,8,192,48,7,7,7,9, + 1,0,120,132,4,124,132,132,122,8,10,10,9,0,0,192, + 64,64,92,98,65,65,65,98,220,7,7,7,9,1,0,58, + 70,130,128,128,66,60,8,10,10,9,0,0,6,2,2,58, + 70,130,130,130,70,59,7,7,7,9,1,0,56,68,130,254, + 128,66,60,7,10,10,9,1,0,30,32,32,252,32,32,32, + 32,32,248,8,10,10,9,0,253,59,70,130,130,130,70,58, + 2,4,120,8,10,10,9,0,0,192,64,64,92,98,66,66, + 66,66,231,5,10,10,9,2,0,32,32,0,224,32,32,32, + 32,32,248,5,13,13,9,1,253,8,8,0,248,8,8,8, + 8,8,8,8,16,224,7,10,10,9,1,0,192,64,64,78, + 72,80,96,80,72,206,5,10,10,9,2,0,224,32,32,32, + 32,32,32,32,32,248,9,7,14,9,0,0,219,0,109,0, + 73,0,73,0,73,0,73,0,237,128,8,7,7,9,0,0, + 220,98,66,66,66,66,231,8,7,7,9,0,0,60,66,129, + 129,129,66,60,8,10,10,9,0,253,220,98,65,65,65,98, + 92,64,64,240,8,10,10,9,0,253,59,70,130,130,130,70, + 58,2,2,15,7,7,7,9,1,0,204,82,96,64,64,64, + 248,6,7,7,9,1,0,124,132,128,120,4,132,248,7,9, + 9,9,0,0,32,32,252,32,32,32,32,34,28,8,7,7, + 9,0,0,198,66,66,66,66,70,59,8,7,7,9,0,0, + 231,66,66,36,36,24,24,9,7,14,9,0,0,227,128,65, + 0,73,0,73,0,42,0,54,0,34,0,7,7,7,9,0, + 0,238,68,40,16,40,68,238,8,10,10,9,0,253,231,66, + 66,36,36,24,8,16,16,120,5,7,7,9,2,0,248,136, + 16,32,64,136,248,3,12,12,9,2,254,32,64,64,64,64, + 128,64,64,64,64,64,32,1,11,11,9,3,254,128,128,128, + 128,128,128,128,128,128,128,128,3,12,12,9,2,254,128,64, + 64,64,64,32,64,64,64,64,64,128,6,2,2,9,1,3, + 100,152,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,9,0,1,1,9,9,9,4,254,128, + 128,0,128,128,128,128,128,128,5,9,9,9,2,0,32,32, + 120,136,128,136,112,32,32,7,9,9,9,1,0,24,36,32, + 32,120,32,32,66,252,6,6,6,9,1,1,180,72,132,132, + 72,180,7,9,9,9,1,0,238,68,68,40,124,16,124,16, + 56,1,11,11,9,3,254,128,128,128,128,0,0,128,128,128, + 128,128,6,10,10,9,1,255,60,68,64,240,136,68,60,8, + 136,240,5,1,1,9,2,8,216,8,9,9,9,0,0,60, + 66,153,165,161,165,153,66,60,4,6,6,9,2,3,192,32, + 224,176,0,240,8,7,7,9,0,0,17,34,68,204,68,34, + 17,7,3,3,9,1,3,254,2,2,6,1,1,9,1,4, + 252,8,9,9,9,0,0,60,66,185,165,185,169,165,66,60, + 4,1,1,9,2,8,240,4,4,4,9,2,6,96,144,144, + 96,7,7,7,9,1,1,16,16,254,16,16,0,254,4,6, + 6,9,2,4,96,144,16,32,64,240,4,6,6,9,2,4, + 96,144,96,16,144,96,4,2,2,9,2,8,48,192,8,10, + 10,9,0,253,198,66,66,66,66,70,123,64,64,64,7,10, + 10,9,1,255,126,148,148,148,116,20,20,20,20,62,2,2, + 2,9,3,3,192,192,3,3,3,9,2,253,64,32,224,3, + 6,6,9,3,4,64,192,64,64,64,224,4,6,6,9,2, + 3,96,144,144,96,0,240,8,7,7,9,0,0,136,68,34, + 51,34,68,136,10,10,20,9,255,0,64,0,193,0,66,0, + 68,0,68,128,233,128,18,128,20,128,39,192,64,128,10,10, + 20,9,255,0,64,0,193,0,66,0,68,0,69,128,234,64, + 16,64,16,128,33,0,67,192,10,10,20,9,255,0,96,0, + 145,0,98,0,20,0,148,128,105,128,18,128,20,128,39,192, + 64,128,5,9,9,9,2,254,32,32,0,32,96,128,128,136, + 112,9,12,24,9,0,0,48,0,12,0,0,0,56,0,8, + 0,20,0,20,0,34,0,62,0,65,0,65,0,247,128,9, + 12,24,9,0,0,12,0,48,0,0,0,56,0,8,0,20, + 0,20,0,34,0,62,0,65,0,65,0,247,128,9,12,24, + 9,0,0,8,0,20,0,0,0,56,0,8,0,20,0,20, + 0,34,0,62,0,65,0,65,0,247,128,9,12,24,9,0, + 0,26,0,44,0,0,0,56,0,8,0,20,0,20,0,34, + 0,62,0,65,0,65,0,247,128,9,11,22,9,0,0,54, + 0,0,0,56,0,8,0,20,0,20,0,34,0,62,0,65, + 0,65,0,247,128,9,12,24,9,0,0,24,0,36,0,24, + 0,56,0,8,0,20,0,20,0,34,0,62,0,65,0,65, + 0,247,128,9,9,18,9,255,0,31,128,12,128,20,0,20, + 128,39,128,60,128,68,0,68,128,239,128,7,12,12,9,1, + 253,58,70,130,128,128,128,128,66,60,16,8,56,7,12,12, + 9,1,0,96,24,0,254,66,66,72,120,72,66,66,254,7, + 12,12,9,1,0,12,48,0,254,66,66,72,120,72,66,66, + 254,7,12,12,9,1,0,16,40,0,254,66,66,72,120,72, + 66,66,254,7,11,11,9,1,0,108,0,254,66,66,72,120, + 72,66,66,254,5,12,12,9,2,0,192,48,0,248,32,32, + 32,32,32,32,32,248,5,12,12,9,2,0,24,96,0,248, + 32,32,32,32,32,32,32,248,5,12,12,9,2,0,32,80, + 0,248,32,32,32,32,32,32,32,248,5,11,11,9,2,0, + 216,0,248,32,32,32,32,32,32,32,248,8,9,9,9,0, + 0,252,66,65,65,241,65,65,66,252,8,12,12,9,0,0, + 26,44,0,231,98,82,82,74,74,70,70,226,8,12,12,9, + 0,0,48,12,0,60,66,129,129,129,129,129,66,60,8,12, + 12,9,0,0,12,48,0,60,66,129,129,129,129,129,66,60, + 8,12,12,9,0,0,16,40,0,60,66,129,129,129,129,129, + 66,60,8,12,12,9,0,0,26,44,0,60,66,129,129,129, + 129,129,66,60,8,11,11,9,0,0,102,0,60,66,129,129, + 129,129,129,66,60,7,7,7,9,1,1,130,68,40,16,40, + 68,130,9,9,18,9,255,0,30,128,33,0,66,128,68,128, + 72,128,80,128,32,128,97,0,158,0,8,12,12,9,0,0, + 48,12,0,231,66,66,66,66,66,66,66,60,8,12,12,9, + 0,0,12,48,0,231,66,66,66,66,66,66,66,60,8,12, + 12,9,0,0,16,40,0,231,66,66,66,66,66,66,66,60, + 8,11,11,9,0,0,102,0,231,66,66,66,66,66,66,66, + 60,7,12,12,9,1,0,12,48,0,238,68,68,40,40,16, + 16,16,124,7,9,9,9,0,0,224,64,124,66,66,66,124, + 64,224,7,9,9,9,0,0,56,68,68,88,68,66,66,82, + 204,7,10,10,9,1,0,96,24,0,120,132,4,124,132,140, + 118,7,10,10,9,1,0,24,96,0,120,132,4,124,132,140, + 118,7,10,10,9,1,0,16,40,0,120,132,4,124,132,140, + 118,7,10,10,9,1,0,52,88,0,120,132,4,124,132,140, + 118,7,9,9,9,1,0,108,0,120,132,4,124,132,140,118, + 7,10,10,9,1,0,48,72,48,120,132,4,124,132,140,118, + 8,7,7,9,0,0,118,137,9,127,136,137,118,7,10,10, + 9,1,253,58,70,130,128,128,66,60,16,8,56,7,10,10, + 9,1,0,96,24,0,56,68,130,254,128,66,60,7,10,10, + 9,1,0,12,48,0,56,68,130,254,128,66,60,7,10,10, + 9,1,0,16,40,0,56,68,130,254,128,66,60,7,9,9, + 9,1,0,108,0,56,68,130,254,128,66,60,5,10,10,9, + 2,0,192,48,0,224,32,32,32,32,32,248,5,10,10,9, + 2,0,48,192,0,224,32,32,32,32,32,248,5,10,10,9, + 2,0,32,80,0,224,32,32,32,32,32,248,5,9,9,9, + 2,0,216,0,224,32,32,32,32,32,248,8,12,12,9,0, + 0,2,228,24,40,68,60,66,129,129,129,66,60,8,10,10, + 9,0,0,26,44,0,220,98,66,66,66,66,231,8,10,10, + 9,0,0,48,12,0,60,66,129,129,129,66,60,8,10,10, + 9,0,0,12,48,0,60,66,129,129,129,66,60,8,10,10, + 9,0,0,16,40,0,60,66,129,129,129,66,60,8,10,10, + 9,0,0,26,44,0,60,66,129,129,129,66,60,8,9,9, + 9,0,0,108,0,60,66,129,129,129,66,60,8,7,7,9, + 0,1,24,24,0,255,0,24,24,8,7,7,9,0,0,61, + 70,137,145,161,66,188,8,10,10,9,0,0,48,12,0,198, + 66,66,66,66,70,59,8,10,10,9,0,0,12,48,0,198, + 66,66,66,66,70,59,8,10,10,9,0,0,16,40,0,198, + 66,66,66,66,70,59,8,9,9,9,0,0,108,0,198,66, + 66,66,66,70,59,8,13,13,9,0,253,6,24,0,231,66, + 66,36,36,24,8,16,16,120,8,12,12,9,0,253,192,64, + 92,98,65,65,65,98,92,64,64,240,8,12,12,9,0,253, + 54,0,231,66,66,36,36,24,8,16,16,120}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--14-100-100-100-M-90-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 9, '1' Height: 10 + Calculated Max Values w= 9 h=13 x= 3 y= 8 dx= 9 dy= 0 ascent=11 len=18 + Font Bounding box w=14 h=20 x=-3 y=-5 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =11 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR10r[1443] U8G_SECTION(".progmem.u8g_font_courR10r") = { + 0,14,20,253,251,9,1,224,3,220,32,127,253,11,253,10, + 253,0,0,0,9,0,1,1,9,9,9,3,0,128,128,128, + 128,128,128,0,128,128,4,4,4,9,2,6,144,144,144,144, + 5,10,10,9,2,255,80,80,80,248,80,80,248,80,80,80, + 5,13,13,9,2,254,32,32,120,136,128,192,48,8,136,240, + 32,32,32,8,10,10,9,0,0,96,144,144,115,12,48,204, + 18,18,12,6,8,8,9,1,0,56,64,64,64,168,144,152, + 100,1,4,4,9,3,5,128,128,128,128,3,12,12,9,3, + 254,32,64,64,128,128,128,128,128,128,64,64,32,3,12,12, + 9,2,254,128,64,64,32,32,32,32,32,32,64,64,128,5, + 6,6,9,1,3,32,32,248,32,80,136,7,7,7,9,1, + 1,16,16,16,254,16,16,16,3,4,4,9,2,254,96,96, + 192,128,6,1,1,9,1,4,252,2,2,2,9,3,0,192, + 192,6,11,11,9,1,255,4,8,8,16,16,32,32,64,64, + 128,128,6,10,10,9,1,0,48,72,132,132,132,132,132,132, + 72,48,5,10,10,9,1,0,32,96,160,32,32,32,32,32, + 32,248,5,10,10,9,1,0,112,136,136,8,16,32,64,128, + 136,248,6,10,10,9,1,0,56,68,4,4,24,4,4,4, + 132,120,6,10,10,9,1,0,24,40,40,72,72,136,136,252, + 8,28,6,10,10,9,1,0,124,64,64,64,120,4,4,4, + 132,120,6,10,10,9,1,0,56,64,128,128,184,196,132,132, + 68,56,6,10,10,9,1,0,252,132,4,8,8,8,16,16, + 16,16,5,10,10,9,2,0,112,136,136,136,112,136,136,136, + 136,112,6,10,10,9,1,0,112,136,132,132,140,116,4,4, + 8,112,2,7,7,9,3,0,192,192,0,0,0,192,192,3, + 9,9,9,2,254,96,96,0,0,0,96,96,192,128,7,7, + 7,9,0,1,6,24,96,128,96,24,6,7,3,3,9,1, + 3,254,0,254,7,7,7,9,1,1,192,48,12,2,12,48, + 192,5,9,9,9,1,0,112,136,8,8,48,32,0,32,32, + 7,10,10,9,1,255,56,68,132,156,164,164,158,128,64,56, + 9,9,18,9,255,0,56,0,8,0,20,0,20,0,34,0, + 62,0,65,0,65,0,247,128,7,9,9,9,0,0,252,66, + 66,66,124,66,66,66,252,7,9,9,9,1,0,58,70,130, + 128,128,128,128,66,60,8,9,9,9,0,0,252,66,65,65, + 65,65,65,66,252,7,9,9,9,1,0,254,66,66,72,120, + 72,66,66,254,7,9,9,9,1,0,254,66,66,72,120,72, + 64,64,240,8,9,9,9,0,0,58,70,130,128,128,143,130, + 66,60,8,9,9,9,0,0,231,66,66,66,126,66,66,66, + 231,5,9,9,9,2,0,248,32,32,32,32,32,32,32,248, + 7,9,9,9,1,0,62,8,8,8,8,136,136,136,112,8, + 9,9,9,0,0,238,68,72,80,112,72,68,68,227,8,9, + 9,9,0,0,248,32,32,32,32,33,33,33,255,9,9,18, + 9,0,0,227,128,99,0,85,0,85,0,73,0,73,0,65, + 0,65,0,227,128,8,9,9,9,0,0,231,98,82,82,74, + 74,70,70,226,8,9,9,9,0,0,60,66,129,129,129,129, + 129,66,60,7,9,9,9,1,0,252,66,66,66,66,124,64, + 64,240,8,11,11,9,0,254,60,66,129,129,129,129,129,66, + 60,49,94,8,9,9,9,0,0,252,66,66,66,68,120,68, + 66,225,6,9,9,9,1,0,116,140,132,128,120,4,132,196, + 184,7,9,9,9,1,0,254,146,146,16,16,16,16,16,124, + 8,9,9,9,0,0,231,66,66,66,66,66,66,66,60,9, + 9,18,9,0,0,227,128,65,0,65,0,34,0,34,0,20, + 0,20,0,8,0,8,0,9,9,18,9,0,0,227,128,65, + 0,73,0,73,0,85,0,85,0,34,0,34,0,34,0,8, + 9,9,9,0,0,231,66,36,36,24,36,36,66,231,7,9, + 9,9,0,0,238,68,68,40,40,16,16,16,124,6,9,9, + 9,1,0,252,132,136,16,32,32,68,132,252,3,12,12,9, + 3,254,224,128,128,128,128,128,128,128,128,128,128,224,6,11, + 11,9,1,255,128,64,64,32,32,16,16,8,8,4,4,3, + 12,12,9,2,254,224,32,32,32,32,32,32,32,32,32,32, + 224,5,5,5,9,2,4,32,80,80,136,136,9,1,2,9, + 0,253,255,128,4,2,2,9,2,8,192,48,7,7,7,9, + 1,0,120,132,4,124,132,132,122,8,10,10,9,0,0,192, + 64,64,92,98,65,65,65,98,220,7,7,7,9,1,0,58, + 70,130,128,128,66,60,8,10,10,9,0,0,6,2,2,58, + 70,130,130,130,70,59,7,7,7,9,1,0,56,68,130,254, + 128,66,60,7,10,10,9,1,0,30,32,32,252,32,32,32, + 32,32,248,8,10,10,9,0,253,59,70,130,130,130,70,58, + 2,4,120,8,10,10,9,0,0,192,64,64,92,98,66,66, + 66,66,231,5,10,10,9,2,0,32,32,0,224,32,32,32, + 32,32,248,5,13,13,9,1,253,8,8,0,248,8,8,8, + 8,8,8,8,16,224,7,10,10,9,1,0,192,64,64,78, + 72,80,96,80,72,206,5,10,10,9,2,0,224,32,32,32, + 32,32,32,32,32,248,9,7,14,9,0,0,219,0,109,0, + 73,0,73,0,73,0,73,0,237,128,8,7,7,9,0,0, + 220,98,66,66,66,66,231,8,7,7,9,0,0,60,66,129, + 129,129,66,60,8,10,10,9,0,253,220,98,65,65,65,98, + 92,64,64,240,8,10,10,9,0,253,59,70,130,130,130,70, + 58,2,2,15,7,7,7,9,1,0,204,82,96,64,64,64, + 248,6,7,7,9,1,0,124,132,128,120,4,132,248,7,9, + 9,9,0,0,32,32,252,32,32,32,32,34,28,8,7,7, + 9,0,0,198,66,66,66,66,70,59,8,7,7,9,0,0, + 231,66,66,36,36,24,24,9,7,14,9,0,0,227,128,65, + 0,73,0,73,0,42,0,54,0,34,0,7,7,7,9,0, + 0,238,68,40,16,40,68,238,8,10,10,9,0,253,231,66, + 66,36,36,24,8,16,16,120,5,7,7,9,2,0,248,136, + 16,32,64,136,248,3,12,12,9,2,254,32,64,64,64,64, + 128,64,64,64,64,64,32,1,11,11,9,3,254,128,128,128, + 128,128,128,128,128,128,128,128,3,12,12,9,2,254,128,64, + 64,64,64,32,64,64,64,64,64,128,6,2,2,9,1,3, + 100,152,255}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--17-120-100-100-M-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 11 + Calculated Max Values w=10 h=14 x= 4 y= 8 dx=10 dy= 0 ascent=14 len=28 + Font Bounding box w=15 h=24 x=-3 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR12[3471] U8G_SECTION(".progmem.u8g_font_courR12") = { + 0,15,24,253,250,10,2,12,4,92,32,255,253,14,253,11, + 253,0,0,0,10,0,1,1,11,11,10,4,0,128,128,128, + 128,128,128,128,128,0,128,128,4,5,5,10,3,6,144,144, + 144,144,144,7,12,12,10,1,255,40,40,40,40,254,40,40, + 254,40,40,40,40,5,13,13,10,2,255,32,32,120,136,128, + 128,112,8,8,136,240,32,32,7,11,11,10,1,0,112,136, + 136,112,6,56,192,28,34,34,28,6,9,9,10,1,0,48, + 72,64,32,100,148,136,136,116,1,5,5,10,4,6,128,128, + 128,128,128,3,13,13,10,4,254,32,64,64,64,128,128,128, + 128,128,64,64,64,32,3,13,13,10,2,254,128,64,64,64, + 32,32,32,32,32,64,64,64,128,7,6,6,10,1,5,16, + 16,254,56,40,68,7,9,9,10,1,0,16,16,16,16,254, + 16,16,16,16,3,4,4,10,2,254,96,96,64,128,7,1, + 1,10,1,4,254,2,2,2,10,3,0,192,192,6,13,13, + 10,2,254,4,4,8,8,16,16,16,32,32,64,64,128,128, + 7,11,11,10,1,0,56,68,68,130,130,130,130,130,68,68, + 56,7,11,11,10,1,0,16,48,208,16,16,16,16,16,16, + 16,254,7,11,11,10,1,0,56,68,130,2,2,4,8,16, + 32,66,254,7,11,11,10,1,0,56,68,130,4,24,4,2, + 2,130,68,56,7,11,11,10,1,0,12,12,20,36,36,68, + 132,254,4,4,30,7,11,11,10,1,0,126,64,64,64,120, + 68,2,2,130,68,56,7,11,11,10,2,0,28,96,64,128, + 184,196,130,130,130,68,56,6,11,11,10,1,0,252,132,4, + 8,8,8,16,16,16,32,32,6,11,11,10,2,0,48,72, + 132,132,120,72,132,132,132,72,48,7,11,11,10,1,0,56, + 68,130,130,70,58,2,2,4,12,112,2,7,7,10,3,0, + 192,192,0,0,0,192,192,3,9,9,10,2,254,96,96,0, + 0,0,96,96,64,128,8,9,9,10,1,0,1,6,24,96, + 128,96,24,6,1,8,4,4,10,1,3,255,0,0,255,8, + 9,9,10,1,0,128,96,24,6,1,6,24,96,128,6,10, + 10,10,2,0,120,132,132,4,24,32,32,0,32,32,9,12, + 24,10,0,255,62,0,65,0,65,0,128,128,156,128,164,128, + 164,128,164,128,159,0,64,0,65,0,62,0,9,10,20,10, + 0,0,120,0,20,0,20,0,34,0,34,0,34,0,62,0, + 65,0,65,0,227,128,8,10,10,10,1,0,252,66,65,66, + 124,66,65,65,66,252,8,10,10,10,1,0,29,99,65,128, + 128,128,128,65,99,28,8,10,10,10,1,0,248,70,66,65, + 65,65,65,66,70,248,7,10,10,10,1,0,254,66,66,72, + 120,72,64,66,66,254,7,10,10,10,1,0,254,66,66,72, + 120,72,64,64,64,240,9,10,20,10,1,0,29,0,99,0, + 65,0,128,0,128,0,135,128,129,0,65,0,97,0,30,0, + 8,10,10,10,1,0,231,66,66,66,126,66,66,66,66,231, + 7,10,10,10,1,0,254,16,16,16,16,16,16,16,16,254, + 8,10,10,10,1,0,63,4,4,4,4,4,132,132,132,120, + 8,10,10,10,1,0,247,66,68,72,80,120,68,68,66,243, + 8,10,10,10,1,0,248,32,32,32,32,32,33,33,33,255, + 9,10,20,10,0,0,193,128,99,0,99,0,85,0,85,0, + 73,0,73,0,65,0,65,0,227,128,9,10,20,10,0,0, + 231,128,97,0,81,0,81,0,73,0,73,0,69,0,69,0, + 67,0,243,0,8,10,10,10,1,0,60,66,66,129,129,129, + 129,66,66,60,8,10,10,10,1,0,252,66,65,65,66,124, + 64,64,64,248,8,12,12,10,1,254,60,66,66,129,129,129, + 129,66,66,60,17,46,8,10,10,10,1,0,248,68,66,66, + 68,120,68,66,66,243,7,10,10,10,1,0,58,70,130,128, + 112,12,2,130,196,184,7,10,10,10,1,0,254,146,146,146, + 16,16,16,16,16,124,9,10,20,10,0,0,247,128,65,0, + 65,0,65,0,65,0,65,0,65,0,65,0,34,0,28,0, + 9,10,20,10,0,0,227,128,65,0,65,0,34,0,34,0, + 34,0,20,0,20,0,8,0,8,0,9,10,20,10,0,0, + 247,128,65,0,73,0,73,0,85,0,85,0,85,0,34,0, + 34,0,34,0,9,10,20,10,0,0,227,128,65,0,34,0, + 20,0,8,0,8,0,20,0,34,0,65,0,227,128,9,10, + 20,10,0,0,227,128,65,0,34,0,34,0,20,0,8,0, + 8,0,8,0,8,0,62,0,7,10,10,10,1,0,254,130, + 132,8,16,16,32,66,130,254,3,13,13,10,4,254,224,128, + 128,128,128,128,128,128,128,128,128,128,224,6,13,13,10,2, + 254,128,128,64,64,32,32,32,16,16,8,8,4,4,3,13, + 13,10,2,254,224,32,32,32,32,32,32,32,32,32,32,32, + 224,7,4,4,10,1,7,16,40,68,130,10,1,2,10,0, + 253,255,192,3,3,3,10,2,8,128,64,32,7,7,7,10, + 1,0,56,68,4,124,132,132,122,8,10,10,10,0,0,192, + 64,64,92,98,65,65,65,98,220,7,7,7,10,1,0,58, + 70,130,128,128,66,60,8,10,10,10,1,0,6,2,2,58, + 70,130,130,130,70,59,7,7,7,10,1,0,56,68,130,254, + 128,66,60,7,10,10,10,2,0,28,34,32,252,32,32,32, + 32,32,252,8,10,10,10,1,253,59,70,130,130,130,70,58, + 2,2,60,8,10,10,10,1,0,192,64,64,92,98,66,66, + 66,66,231,7,10,10,10,1,0,16,16,0,112,16,16,16, + 16,16,254,5,13,13,10,2,253,16,16,0,248,8,8,8, + 8,8,8,8,8,240,8,10,10,10,1,0,192,64,64,79, + 68,72,112,72,68,207,7,10,10,10,1,0,112,16,16,16, + 16,16,16,16,16,254,9,7,14,10,0,0,219,0,109,0, + 73,0,73,0,73,0,73,0,237,128,8,7,7,10,1,0, + 220,98,66,66,66,66,231,7,7,7,10,1,0,56,68,130, + 130,130,68,56,8,10,10,10,1,253,220,98,65,65,65,98, + 92,64,64,240,8,10,10,10,1,253,59,70,130,130,130,70, + 58,2,2,15,8,7,7,10,1,0,238,49,32,32,32,32, + 252,6,7,7,10,2,0,124,132,128,120,4,132,248,8,9, + 9,10,0,0,32,32,254,32,32,32,32,33,30,8,7,7, + 10,1,0,198,66,66,66,66,70,59,9,7,14,10,0,0, + 247,128,65,0,34,0,34,0,20,0,20,0,8,0,9,7, + 14,10,0,0,227,128,65,0,73,0,42,0,42,0,54,0, + 34,0,7,7,7,10,1,0,238,68,40,16,40,68,238,9, + 10,20,10,0,253,227,128,65,0,34,0,34,0,20,0,20, + 0,8,0,8,0,16,0,120,0,6,7,7,10,2,0,252, + 136,16,32,64,132,252,3,13,13,10,3,254,32,64,64,64, + 64,64,128,64,64,64,64,64,32,1,12,12,10,4,254,128, + 128,128,128,128,128,128,128,128,128,128,128,3,13,13,10,3, + 254,128,64,64,64,64,64,32,64,64,64,64,64,128,7,3, + 3,10,1,3,96,146,12,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,10,0,1,1,10, + 10,10,4,253,128,128,0,128,128,128,128,128,128,128,5,10, + 10,10,2,0,32,32,120,136,128,128,136,112,32,32,8,10, + 10,10,1,0,28,34,32,32,248,32,32,32,65,255,7,7, + 7,10,1,1,130,124,68,68,68,124,130,9,10,20,10,0, + 0,227,128,65,0,34,0,34,0,20,0,62,0,8,0,62, + 0,8,0,62,0,1,12,12,10,4,254,128,128,128,128,128, + 0,0,128,128,128,128,128,9,12,24,10,0,255,31,0,33, + 0,33,0,112,0,140,0,131,0,96,128,24,128,7,0,66, + 0,66,0,124,0,4,2,2,10,3,8,144,144,10,10,20, + 10,0,0,30,0,33,0,64,128,142,64,144,64,144,64,142, + 64,64,128,33,0,30,0,5,7,7,10,2,3,112,8,120, + 136,120,0,248,7,7,7,10,1,0,18,36,72,144,72,36, + 18,7,4,4,10,1,2,254,2,2,2,7,1,1,10,1, + 4,254,10,10,20,10,0,0,30,0,33,0,64,128,156,64, + 146,64,156,64,146,64,64,128,33,0,30,0,5,1,1,10, + 2,8,248,5,5,5,10,2,6,112,136,136,136,112,7,9, + 9,10,1,0,16,16,16,254,16,16,16,0,254,4,6,6, + 10,2,5,96,144,32,64,144,240,4,6,6,10,3,5,96, + 144,32,16,144,96,3,3,3,10,4,8,32,64,128,8,10, + 10,10,1,253,198,66,66,66,66,70,123,64,64,64,7,12, + 12,10,1,255,62,84,148,148,148,84,52,20,20,20,20,62, + 2,2,2,10,4,4,192,192,3,4,4,10,3,253,64,64, + 32,224,5,6,6,10,2,5,32,224,32,32,32,248,5,7, + 7,10,2,3,112,136,136,136,112,0,248,7,7,7,10,1, + 0,144,72,36,18,36,72,144,10,11,22,10,0,0,32,0, + 224,64,32,128,33,0,34,0,252,128,9,128,18,128,36,128, + 71,192,0,128,10,11,22,10,0,0,32,0,224,64,32,128, + 33,0,34,0,253,128,10,64,16,128,33,0,66,64,3,192, + 10,11,22,10,0,0,96,0,144,64,32,128,17,0,146,0, + 100,128,9,128,18,128,36,128,71,192,0,128,6,10,10,10, + 1,253,16,16,0,16,16,96,128,132,132,120,9,14,28,10, + 0,0,32,0,16,0,8,0,0,0,120,0,20,0,20,0, + 34,0,34,0,34,0,62,0,65,0,65,0,227,128,9,14, + 28,10,0,0,4,0,8,0,16,0,0,0,120,0,20,0, + 20,0,34,0,34,0,34,0,62,0,65,0,65,0,227,128, + 9,14,28,10,0,0,8,0,20,0,34,0,0,0,120,0, + 20,0,20,0,34,0,34,0,34,0,62,0,65,0,65,0, + 227,128,9,13,26,10,0,0,50,0,76,0,0,0,120,0, + 20,0,20,0,34,0,34,0,34,0,62,0,65,0,65,0, + 227,128,9,13,26,10,0,0,36,0,36,0,0,0,120,0, + 20,0,20,0,34,0,34,0,34,0,62,0,65,0,65,0, + 227,128,9,14,28,10,0,0,24,0,36,0,36,0,24,0, + 120,0,20,0,20,0,34,0,34,0,34,0,62,0,65,0, + 65,0,227,128,9,10,20,10,0,0,127,128,40,128,40,128, + 74,0,78,0,122,0,72,128,136,128,136,128,223,128,8,13, + 13,10,1,253,29,99,65,128,128,128,128,65,99,28,16,8, + 56,7,14,14,10,1,0,32,16,8,0,254,66,66,72,120, + 72,64,66,66,254,7,14,14,10,1,0,4,8,16,0,254, + 66,66,72,120,72,64,66,66,254,7,14,14,10,1,0,16, + 40,68,0,254,66,66,72,120,72,64,66,66,254,7,13,13, + 10,1,0,36,36,0,254,66,66,72,120,72,64,66,66,254, + 7,14,14,10,1,0,32,16,8,0,254,16,16,16,16,16, + 16,16,16,254,7,14,14,10,1,0,8,16,32,0,254,16, + 16,16,16,16,16,16,16,254,7,14,14,10,1,0,16,40, + 68,0,254,16,16,16,16,16,16,16,16,254,7,13,13,10, + 1,0,68,68,0,254,16,16,16,16,16,16,16,16,254,8, + 10,10,10,1,0,248,70,66,65,241,65,65,66,70,248,9, + 13,26,10,0,0,25,0,38,0,0,0,231,128,97,0,81, + 0,81,0,73,0,73,0,69,0,69,0,67,0,243,0,8, + 14,14,10,1,0,32,16,8,0,60,66,66,129,129,129,129, + 66,66,60,8,14,14,10,1,0,4,8,16,0,60,66,66, + 129,129,129,129,66,66,60,8,14,14,10,1,0,8,20,34, + 0,60,66,66,129,129,129,129,66,66,60,8,13,13,10,1, + 0,50,76,0,60,66,66,129,129,129,129,66,66,60,8,13, + 13,10,1,0,36,36,0,60,66,66,129,129,129,129,66,66, + 60,7,7,7,10,1,1,130,68,40,16,40,68,130,8,10, + 10,10,1,0,61,66,66,133,137,145,161,66,66,188,9,14, + 28,10,0,0,16,0,8,0,4,0,0,0,247,128,65,0, + 65,0,65,0,65,0,65,0,65,0,65,0,34,0,28,0, + 9,14,28,10,0,0,2,0,4,0,8,0,0,0,247,128, + 65,0,65,0,65,0,65,0,65,0,65,0,65,0,34,0, + 28,0,9,14,28,10,0,0,8,0,20,0,34,0,0,0, + 247,128,65,0,65,0,65,0,65,0,65,0,65,0,65,0, + 34,0,28,0,9,13,26,10,0,0,34,0,34,0,0,0, + 247,128,65,0,65,0,65,0,65,0,65,0,65,0,65,0, + 34,0,28,0,9,14,28,10,0,0,2,0,4,0,8,0, + 0,0,227,128,65,0,34,0,34,0,20,0,8,0,8,0, + 8,0,8,0,62,0,8,10,10,10,1,0,224,64,124,66, + 65,66,124,64,64,224,7,11,11,10,1,0,56,68,68,72, + 88,68,66,66,66,82,204,7,11,11,10,1,0,32,16,8, + 0,56,68,4,124,132,132,122,7,11,11,10,1,0,4,8, + 16,0,56,68,4,124,132,132,122,7,11,11,10,1,0,16, + 40,68,0,56,68,4,124,132,132,122,7,10,10,10,1,0, + 50,76,0,56,68,4,124,132,132,122,7,10,10,10,1,0, + 36,36,0,56,68,4,124,132,132,122,7,12,12,10,1,0, + 24,36,36,24,0,56,68,4,124,132,132,122,9,7,14,10, + 0,0,55,0,72,128,8,128,127,128,136,0,136,128,119,0, + 7,10,10,10,1,253,58,70,130,128,128,66,60,16,8,56, + 7,11,11,10,1,0,32,16,8,0,56,68,130,254,128,66, + 60,7,11,11,10,1,0,4,8,16,0,56,68,130,254,128, + 66,60,7,11,11,10,1,0,16,40,68,0,56,68,130,254, + 128,66,60,7,10,10,10,1,0,36,36,0,56,68,130,254, + 128,66,60,7,11,11,10,1,0,32,16,8,0,112,16,16, + 16,16,16,254,7,11,11,10,1,0,8,16,32,0,112,16, + 16,16,16,16,254,7,11,11,10,1,0,16,40,68,0,112, + 16,16,16,16,16,254,7,10,10,10,1,0,72,72,0,112, + 16,16,16,16,16,254,7,11,11,10,1,0,230,24,104,4, + 60,66,130,130,130,68,56,8,10,10,10,1,0,50,76,0, + 220,98,66,66,66,66,231,7,11,11,10,1,0,32,16,8, + 0,56,68,130,130,130,68,56,7,11,11,10,1,0,8,16, + 32,0,56,68,130,130,130,68,56,7,11,11,10,1,0,16, + 40,68,0,56,68,130,130,130,68,56,7,10,10,10,1,0, + 50,76,0,56,68,130,130,130,68,56,7,10,10,10,1,0, + 68,68,0,56,68,130,130,130,68,56,8,7,7,10,1,1, + 24,24,0,255,0,24,24,7,9,9,10,1,255,2,58,68, + 138,146,162,68,184,128,8,11,11,10,1,0,32,16,8,0, + 198,66,66,66,66,70,59,8,11,11,10,1,0,4,8,16, + 0,198,66,66,66,66,70,59,8,11,11,10,1,0,16,40, + 68,0,198,66,66,66,66,70,59,8,10,10,10,1,0,36, + 36,0,198,66,66,66,66,70,59,9,14,28,10,0,253,2, + 0,4,0,8,0,0,0,227,128,65,0,34,0,34,0,20, + 0,20,0,8,0,8,0,16,0,120,0,8,14,14,10,1, + 253,192,64,64,64,92,98,65,65,65,98,92,64,64,240,9, + 13,26,10,0,253,18,0,18,0,0,0,227,128,65,0,34, + 0,34,0,20,0,20,0,8,0,8,0,16,0,120,0}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--17-120-100-100-M-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 11 + Calculated Max Values w=10 h=13 x= 4 y= 8 dx=10 dy= 0 ascent=12 len=24 + Font Bounding box w=15 h=24 x=-3 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR12r[1592] U8G_SECTION(".progmem.u8g_font_courR12r") = { + 0,15,24,253,250,10,2,12,4,92,32,127,253,12,253,11, + 253,0,0,0,10,0,1,1,11,11,10,4,0,128,128,128, + 128,128,128,128,128,0,128,128,4,5,5,10,3,6,144,144, + 144,144,144,7,12,12,10,1,255,40,40,40,40,254,40,40, + 254,40,40,40,40,5,13,13,10,2,255,32,32,120,136,128, + 128,112,8,8,136,240,32,32,7,11,11,10,1,0,112,136, + 136,112,6,56,192,28,34,34,28,6,9,9,10,1,0,48, + 72,64,32,100,148,136,136,116,1,5,5,10,4,6,128,128, + 128,128,128,3,13,13,10,4,254,32,64,64,64,128,128,128, + 128,128,64,64,64,32,3,13,13,10,2,254,128,64,64,64, + 32,32,32,32,32,64,64,64,128,7,6,6,10,1,5,16, + 16,254,56,40,68,7,9,9,10,1,0,16,16,16,16,254, + 16,16,16,16,3,4,4,10,2,254,96,96,64,128,7,1, + 1,10,1,4,254,2,2,2,10,3,0,192,192,6,13,13, + 10,2,254,4,4,8,8,16,16,16,32,32,64,64,128,128, + 7,11,11,10,1,0,56,68,68,130,130,130,130,130,68,68, + 56,7,11,11,10,1,0,16,48,208,16,16,16,16,16,16, + 16,254,7,11,11,10,1,0,56,68,130,2,2,4,8,16, + 32,66,254,7,11,11,10,1,0,56,68,130,4,24,4,2, + 2,130,68,56,7,11,11,10,1,0,12,12,20,36,36,68, + 132,254,4,4,30,7,11,11,10,1,0,126,64,64,64,120, + 68,2,2,130,68,56,7,11,11,10,2,0,28,96,64,128, + 184,196,130,130,130,68,56,6,11,11,10,1,0,252,132,4, + 8,8,8,16,16,16,32,32,6,11,11,10,2,0,48,72, + 132,132,120,72,132,132,132,72,48,7,11,11,10,1,0,56, + 68,130,130,70,58,2,2,4,12,112,2,7,7,10,3,0, + 192,192,0,0,0,192,192,3,9,9,10,2,254,96,96,0, + 0,0,96,96,64,128,8,9,9,10,1,0,1,6,24,96, + 128,96,24,6,1,8,4,4,10,1,3,255,0,0,255,8, + 9,9,10,1,0,128,96,24,6,1,6,24,96,128,6,10, + 10,10,2,0,120,132,132,4,24,32,32,0,32,32,9,12, + 24,10,0,255,62,0,65,0,65,0,128,128,156,128,164,128, + 164,128,164,128,159,0,64,0,65,0,62,0,9,10,20,10, + 0,0,120,0,20,0,20,0,34,0,34,0,34,0,62,0, + 65,0,65,0,227,128,8,10,10,10,1,0,252,66,65,66, + 124,66,65,65,66,252,8,10,10,10,1,0,29,99,65,128, + 128,128,128,65,99,28,8,10,10,10,1,0,248,70,66,65, + 65,65,65,66,70,248,7,10,10,10,1,0,254,66,66,72, + 120,72,64,66,66,254,7,10,10,10,1,0,254,66,66,72, + 120,72,64,64,64,240,9,10,20,10,1,0,29,0,99,0, + 65,0,128,0,128,0,135,128,129,0,65,0,97,0,30,0, + 8,10,10,10,1,0,231,66,66,66,126,66,66,66,66,231, + 7,10,10,10,1,0,254,16,16,16,16,16,16,16,16,254, + 8,10,10,10,1,0,63,4,4,4,4,4,132,132,132,120, + 8,10,10,10,1,0,247,66,68,72,80,120,68,68,66,243, + 8,10,10,10,1,0,248,32,32,32,32,32,33,33,33,255, + 9,10,20,10,0,0,193,128,99,0,99,0,85,0,85,0, + 73,0,73,0,65,0,65,0,227,128,9,10,20,10,0,0, + 231,128,97,0,81,0,81,0,73,0,73,0,69,0,69,0, + 67,0,243,0,8,10,10,10,1,0,60,66,66,129,129,129, + 129,66,66,60,8,10,10,10,1,0,252,66,65,65,66,124, + 64,64,64,248,8,12,12,10,1,254,60,66,66,129,129,129, + 129,66,66,60,17,46,8,10,10,10,1,0,248,68,66,66, + 68,120,68,66,66,243,7,10,10,10,1,0,58,70,130,128, + 112,12,2,130,196,184,7,10,10,10,1,0,254,146,146,146, + 16,16,16,16,16,124,9,10,20,10,0,0,247,128,65,0, + 65,0,65,0,65,0,65,0,65,0,65,0,34,0,28,0, + 9,10,20,10,0,0,227,128,65,0,65,0,34,0,34,0, + 34,0,20,0,20,0,8,0,8,0,9,10,20,10,0,0, + 247,128,65,0,73,0,73,0,85,0,85,0,85,0,34,0, + 34,0,34,0,9,10,20,10,0,0,227,128,65,0,34,0, + 20,0,8,0,8,0,20,0,34,0,65,0,227,128,9,10, + 20,10,0,0,227,128,65,0,34,0,34,0,20,0,8,0, + 8,0,8,0,8,0,62,0,7,10,10,10,1,0,254,130, + 132,8,16,16,32,66,130,254,3,13,13,10,4,254,224,128, + 128,128,128,128,128,128,128,128,128,128,224,6,13,13,10,2, + 254,128,128,64,64,32,32,32,16,16,8,8,4,4,3,13, + 13,10,2,254,224,32,32,32,32,32,32,32,32,32,32,32, + 224,7,4,4,10,1,7,16,40,68,130,10,1,2,10,0, + 253,255,192,3,3,3,10,2,8,128,64,32,7,7,7,10, + 1,0,56,68,4,124,132,132,122,8,10,10,10,0,0,192, + 64,64,92,98,65,65,65,98,220,7,7,7,10,1,0,58, + 70,130,128,128,66,60,8,10,10,10,1,0,6,2,2,58, + 70,130,130,130,70,59,7,7,7,10,1,0,56,68,130,254, + 128,66,60,7,10,10,10,2,0,28,34,32,252,32,32,32, + 32,32,252,8,10,10,10,1,253,59,70,130,130,130,70,58, + 2,2,60,8,10,10,10,1,0,192,64,64,92,98,66,66, + 66,66,231,7,10,10,10,1,0,16,16,0,112,16,16,16, + 16,16,254,5,13,13,10,2,253,16,16,0,248,8,8,8, + 8,8,8,8,8,240,8,10,10,10,1,0,192,64,64,79, + 68,72,112,72,68,207,7,10,10,10,1,0,112,16,16,16, + 16,16,16,16,16,254,9,7,14,10,0,0,219,0,109,0, + 73,0,73,0,73,0,73,0,237,128,8,7,7,10,1,0, + 220,98,66,66,66,66,231,7,7,7,10,1,0,56,68,130, + 130,130,68,56,8,10,10,10,1,253,220,98,65,65,65,98, + 92,64,64,240,8,10,10,10,1,253,59,70,130,130,130,70, + 58,2,2,15,8,7,7,10,1,0,238,49,32,32,32,32, + 252,6,7,7,10,2,0,124,132,128,120,4,132,248,8,9, + 9,10,0,0,32,32,254,32,32,32,32,33,30,8,7,7, + 10,1,0,198,66,66,66,66,70,59,9,7,14,10,0,0, + 247,128,65,0,34,0,34,0,20,0,20,0,8,0,9,7, + 14,10,0,0,227,128,65,0,73,0,42,0,42,0,54,0, + 34,0,7,7,7,10,1,0,238,68,40,16,40,68,238,9, + 10,20,10,0,253,227,128,65,0,34,0,34,0,20,0,20, + 0,8,0,8,0,16,0,120,0,6,7,7,10,2,0,252, + 136,16,32,64,132,252,3,13,13,10,3,254,32,64,64,64, + 64,64,128,64,64,64,64,64,32,1,12,12,10,4,254,128, + 128,128,128,128,128,128,128,128,128,128,128,3,13,13,10,3, + 254,128,64,64,64,64,64,32,64,64,64,64,64,128,7,3, + 3,10,1,3,96,146,12,255}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--20-140-100-100-M-110-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 12 + Calculated Max Values w=11 h=16 x= 5 y=10 dx=11 dy= 0 ascent=15 len=32 + Font Bounding box w=16 h=26 x=-3 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =15 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR14[4276] U8G_SECTION(".progmem.u8g_font_courR14") = { + 0,16,26,253,249,11,2,74,5,74,32,255,252,15,252,12, + 252,0,0,0,11,0,1,2,12,12,11,4,0,192,192,192, + 192,192,192,64,64,0,0,192,192,6,5,5,11,3,7,204, + 204,204,68,68,8,15,15,11,1,254,18,18,18,18,18,127, + 36,36,36,254,36,36,36,36,36,6,15,15,11,2,254,16, + 16,116,140,132,128,96,24,4,132,196,184,16,16,16,9,12, + 24,11,1,0,56,0,68,0,68,0,68,0,57,128,14,0, + 48,0,206,0,17,0,17,0,17,0,14,0,7,10,10,11, + 2,0,56,64,64,64,32,116,136,136,152,102,2,5,5,11, + 4,7,192,192,192,64,64,3,14,14,11,5,254,32,64,64, + 128,128,128,128,128,128,128,128,64,64,32,3,14,14,11,3, + 254,128,64,64,32,32,32,32,32,32,32,32,64,64,128,7, + 8,8,11,2,4,16,16,16,254,16,40,68,68,9,9,18, + 11,1,1,8,0,8,0,8,0,8,0,255,128,8,0,8, + 0,8,0,8,0,4,5,5,11,3,253,48,48,96,64,128, + 8,1,1,11,1,5,255,2,2,2,11,4,0,192,192,8, + 16,16,11,1,253,1,1,2,2,4,4,8,8,16,16,32, + 32,64,64,128,128,7,12,12,11,2,0,56,68,130,130,130, + 130,130,130,130,130,68,56,7,12,12,11,2,0,48,208,16, + 16,16,16,16,16,16,16,16,254,8,12,12,11,1,0,28, + 34,65,65,1,2,4,8,16,33,65,255,7,12,12,11,2, + 0,120,132,2,2,4,56,4,2,2,2,132,120,7,12,12, + 11,2,0,12,20,20,36,36,68,68,132,254,4,4,30,8, + 12,12,11,1,0,126,64,64,64,92,98,1,1,1,1,194, + 60,7,12,12,11,2,0,28,96,64,128,128,184,196,130,130, + 130,68,56,7,12,12,11,2,0,254,130,2,2,4,4,4, + 4,8,8,8,8,7,12,12,11,2,0,56,68,130,130,68, + 56,68,130,130,130,68,56,7,12,12,11,2,0,56,68,130, + 130,130,70,58,2,2,4,12,112,2,8,8,11,4,0,192, + 192,0,0,0,0,192,192,4,11,11,11,2,253,48,48,0, + 0,0,0,48,48,96,64,128,10,9,18,11,0,1,0,192, + 3,0,12,0,48,0,192,0,48,0,12,0,3,0,0,192, + 9,4,8,11,1,3,255,128,0,0,0,0,255,128,10,9, + 18,11,0,1,192,0,48,0,12,0,3,0,0,192,3,0, + 12,0,48,0,192,0,7,11,11,11,2,0,124,130,130,2, + 2,28,16,16,0,24,24,8,13,13,11,2,255,56,68,130, + 130,142,146,146,146,143,128,128,67,60,11,11,22,11,0,0, + 60,0,4,0,10,0,10,0,17,0,17,0,32,128,63,128, + 64,64,64,64,241,224,9,11,22,11,1,0,252,0,66,0, + 65,0,65,0,66,0,126,0,65,0,64,128,64,128,65,0, + 254,0,9,11,22,11,1,0,30,128,97,128,64,128,128,0, + 128,0,128,0,128,0,128,0,64,128,97,0,30,0,9,11, + 22,11,1,0,252,0,67,0,65,0,64,128,64,128,64,128, + 64,128,64,128,65,0,67,0,252,0,8,11,11,11,1,0, + 255,65,65,65,72,120,72,65,65,65,255,8,11,11,11,1, + 0,255,65,65,65,72,120,72,64,64,64,240,10,11,22,11, + 1,0,30,128,97,128,64,128,128,0,128,0,128,0,131,192, + 128,128,64,128,97,0,30,0,9,11,22,11,1,0,227,128, + 65,0,65,0,65,0,65,0,127,0,65,0,65,0,65,0, + 65,0,227,128,7,11,11,11,2,0,254,16,16,16,16,16, + 16,16,16,16,254,9,11,22,11,1,0,31,128,2,0,2, + 0,2,0,2,0,2,0,130,0,130,0,130,0,68,0,56, + 0,10,11,22,11,1,0,243,192,65,0,66,0,68,0,72, + 0,88,0,100,0,66,0,66,0,65,0,241,192,9,11,22, + 11,1,0,248,0,32,0,32,0,32,0,32,0,32,0,32, + 0,32,128,32,128,32,128,255,128,11,11,22,11,0,0,224, + 224,96,192,81,64,81,64,74,64,74,64,68,64,68,64,64, + 64,64,64,241,224,9,11,22,11,1,0,231,128,97,0,81, + 0,81,0,73,0,73,0,69,0,69,0,67,0,67,0,241, + 0,9,11,22,11,1,0,28,0,99,0,65,0,128,128,128, + 128,128,128,128,128,128,128,65,0,99,0,28,0,9,11,22, + 11,1,0,254,0,65,0,64,128,64,128,65,0,126,0,64, + 0,64,0,64,0,64,0,248,0,9,13,26,11,1,254,28, + 0,99,0,65,0,128,128,128,128,128,128,128,128,128,128,65, + 0,99,0,28,0,56,128,71,0,10,11,22,11,1,0,254, + 0,65,0,64,128,64,128,65,0,126,0,68,0,66,0,66, + 0,65,0,240,192,8,11,11,11,1,0,61,67,129,128,64, + 60,2,1,129,194,188,9,11,22,11,1,0,255,128,136,128, + 136,128,136,128,8,0,8,0,8,0,8,0,8,0,8,0, + 62,0,10,11,22,11,0,0,243,192,64,128,64,128,64,128, + 64,128,64,128,64,128,64,128,64,128,33,0,30,0,11,11, + 22,11,0,0,241,224,64,64,64,64,32,128,32,128,17,0, + 17,0,10,0,10,0,4,0,4,0,11,11,22,11,0,0, + 241,224,64,64,68,64,68,64,68,64,42,128,42,128,42,128, + 42,128,17,0,17,0,9,11,22,11,1,0,227,128,65,0, + 34,0,34,0,20,0,8,0,20,0,34,0,34,0,65,0, + 227,128,9,11,22,11,1,0,227,128,65,0,34,0,34,0, + 20,0,20,0,8,0,8,0,8,0,8,0,62,0,7,11, + 11,11,2,0,254,130,130,4,8,16,32,64,130,130,254,3, + 15,15,11,5,253,224,128,128,128,128,128,128,128,128,128,128, + 128,128,128,224,8,16,16,11,2,253,128,128,64,64,32,32, + 16,16,8,8,4,4,2,2,1,1,3,15,15,11,3,253, + 224,32,32,32,32,32,32,32,32,32,32,32,32,32,224,7, + 4,4,11,2,8,16,40,68,130,11,1,2,11,0,252,255, + 224,3,3,3,11,4,9,128,64,32,9,8,16,11,1,0, + 60,0,66,0,2,0,126,0,130,0,130,0,134,0,123,128, + 9,12,24,11,1,0,192,0,64,0,64,0,64,0,94,0, + 97,0,64,128,64,128,64,128,64,128,97,0,222,0,8,8, + 8,11,1,0,61,67,129,128,128,128,67,60,9,12,24,11, + 1,0,3,0,1,0,1,0,1,0,61,0,67,0,129,0, + 129,0,129,0,129,0,67,0,61,128,8,8,8,11,1,0, + 60,66,129,255,128,128,67,60,8,12,12,11,2,0,15,16, + 32,32,254,32,32,32,32,32,32,254,9,12,24,11,1,252, + 61,128,67,0,129,0,129,0,129,0,129,0,67,0,61,0, + 1,0,1,0,2,0,124,0,9,12,24,11,1,0,192,0, + 64,0,64,0,64,0,94,0,97,0,65,0,65,0,65,0, + 65,0,65,0,227,128,7,11,11,11,2,0,16,16,0,112, + 16,16,16,16,16,16,254,6,15,15,11,2,252,8,8,0, + 252,4,4,4,4,4,4,4,4,4,8,240,9,12,24,11, + 1,0,192,0,64,0,64,0,64,0,79,0,68,0,72,0, + 112,0,72,0,68,0,66,0,199,128,7,12,12,11,2,0, + 240,16,16,16,16,16,16,16,16,16,16,254,11,8,16,11, + 0,0,217,128,102,64,68,64,68,64,68,64,68,64,68,64, + 230,96,9,8,16,11,1,0,222,0,97,0,65,0,65,0, + 65,0,65,0,65,0,227,128,8,8,8,11,1,0,60,66, + 129,129,129,129,66,60,9,12,24,11,1,252,222,0,97,0, + 64,128,64,128,64,128,64,128,97,0,94,0,64,0,64,0, + 64,0,240,0,9,12,24,11,1,252,61,128,67,0,129,0, + 129,0,129,0,129,0,67,0,61,0,1,0,1,0,1,0, + 7,128,8,8,8,11,1,0,238,49,32,32,32,32,32,254, + 7,8,8,11,2,0,122,134,130,112,12,130,194,188,8,11, + 11,11,2,0,32,32,32,254,32,32,32,32,32,33,30,9, + 8,16,11,1,0,195,0,65,0,65,0,65,0,65,0,65, + 0,67,0,61,128,9,8,16,11,1,0,227,128,65,0,34, + 0,34,0,20,0,20,0,8,0,8,0,9,8,16,11,1, + 0,227,128,65,0,73,0,73,0,85,0,85,0,34,0,34, + 0,8,8,8,11,1,0,231,66,36,24,24,36,66,231,9, + 12,24,11,1,252,227,128,65,0,65,0,34,0,34,0,20, + 0,20,0,8,0,8,0,16,0,16,0,248,0,7,8,8, + 11,2,0,254,130,132,8,16,34,66,254,5,15,15,11,3, + 253,24,32,32,32,32,32,32,192,32,32,32,32,32,32,24, + 1,15,15,11,5,253,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,5,15,15,11,3,253,192,32,32,32,32, + 32,32,24,32,32,32,32,32,32,192,8,3,3,11,1,4, + 96,153,6,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,0,0,0,11,0,1,2,12,12,11,4,252, + 192,192,0,0,128,128,192,192,192,192,192,192,6,12,12,11, + 2,0,16,16,16,60,68,132,128,128,68,56,16,16,8,11, + 11,11,2,0,28,34,32,32,16,252,16,32,33,65,126,6, + 7,7,11,2,2,132,120,132,132,132,120,132,9,11,22,11, + 1,0,227,128,65,0,34,0,34,0,20,0,20,0,127,0, + 8,0,127,0,8,0,62,0,1,15,15,11,5,253,128,128, + 128,128,128,128,0,0,0,128,128,128,128,128,128,7,14,14, + 11,2,254,62,66,66,64,112,140,130,98,28,6,130,130,132, + 252,4,2,2,11,3,10,144,144,11,11,22,11,0,0,31, + 0,96,192,79,64,145,32,160,32,160,32,160,32,145,32,78, + 64,96,192,31,0,6,8,8,11,2,3,112,8,120,136,152, + 236,0,252,10,8,16,11,1,0,24,192,49,128,99,0,198, + 0,198,0,99,0,49,128,24,192,9,4,8,11,1,3,255, + 128,0,128,0,128,0,128,8,1,1,11,1,5,255,11,11, + 22,11,0,0,31,0,96,192,94,64,145,32,145,32,158,32, + 148,32,146,32,81,64,96,128,31,0,5,1,1,11,3,10, + 248,5,5,5,11,3,6,112,136,136,136,112,9,9,18,11, + 1,1,8,0,8,0,8,0,255,128,8,0,8,0,8,0, + 0,0,255,128,5,7,7,11,3,5,112,136,8,16,32,64, + 248,5,7,7,11,3,5,112,136,8,48,8,136,112,3,3, + 3,11,4,9,32,64,128,9,12,24,11,1,252,195,0,65, + 0,65,0,65,0,65,0,65,0,67,0,125,128,64,0,64, + 0,64,0,64,0,8,14,14,11,1,254,63,74,138,138,138, + 74,58,10,10,10,10,10,10,59,2,2,2,11,4,5,192, + 192,3,3,3,11,4,253,64,32,192,5,7,7,11,3,5, + 32,224,32,32,32,32,248,6,8,8,11,2,3,120,132,132, + 132,132,120,0,252,10,8,16,11,0,0,198,0,99,0,49, + 128,24,192,24,192,49,128,99,0,198,0,11,12,24,11,0, + 0,32,0,224,64,32,128,33,0,33,0,34,64,252,192,9, + 64,10,64,19,224,32,64,0,224,11,12,24,11,0,0,32, + 0,224,64,32,128,33,0,33,0,34,192,253,32,8,32,8, + 64,16,128,33,0,3,224,11,12,24,11,0,0,112,0,136, + 64,8,128,49,0,9,0,138,64,116,192,9,64,10,64,19, + 224,32,64,0,224,6,11,11,11,2,253,24,24,0,16,16, + 112,128,128,132,132,120,11,15,30,11,0,0,16,0,8,0, + 4,0,0,0,60,0,4,0,10,0,10,0,17,0,17,0, + 32,128,63,128,64,64,64,64,241,224,11,15,30,11,0,0, + 1,0,2,0,4,0,0,0,60,0,4,0,10,0,10,0, + 17,0,17,0,32,128,63,128,64,64,64,64,241,224,11,15, + 30,11,0,0,12,0,18,0,33,0,0,0,60,0,4,0, + 10,0,10,0,17,0,17,0,32,128,63,128,64,64,64,64, + 241,224,11,14,28,11,0,0,25,0,38,0,0,0,60,0, + 4,0,10,0,10,0,17,0,17,0,32,128,63,128,64,64, + 64,64,241,224,11,14,28,11,0,0,18,0,18,0,0,0, + 60,0,4,0,10,0,10,0,17,0,17,0,32,128,63,128, + 64,64,64,64,241,224,11,15,30,11,0,0,12,0,18,0, + 18,0,12,0,60,0,4,0,10,0,10,0,17,0,17,0, + 32,128,63,128,64,64,64,64,241,224,11,11,22,11,255,0, + 31,224,6,32,10,32,10,0,18,64,19,192,62,64,34,0, + 66,32,66,32,231,224,9,14,28,11,1,253,30,128,97,128, + 64,128,128,0,128,0,128,0,128,0,128,0,64,128,97,0, + 30,0,8,0,4,0,24,0,8,15,15,11,1,0,32,16, + 8,0,255,65,65,65,72,120,72,65,65,65,255,8,15,15, + 11,1,0,4,8,16,0,255,65,65,65,72,120,72,65,65, + 65,255,8,15,15,11,1,0,24,36,66,0,255,65,65,65, + 72,120,72,65,65,65,255,8,14,14,11,1,0,36,36,0, + 255,65,65,65,72,120,72,65,65,65,255,7,15,15,11,2, + 0,32,16,8,0,254,16,16,16,16,16,16,16,16,16,254, + 7,15,15,11,2,0,8,16,32,0,254,16,16,16,16,16, + 16,16,16,16,254,7,15,15,11,2,0,24,36,66,0,254, + 16,16,16,16,16,16,16,16,16,254,7,14,14,11,2,0, + 36,36,0,254,16,16,16,16,16,16,16,16,16,254,8,11, + 11,11,1,0,252,66,65,65,65,241,65,65,65,66,252,9, + 14,28,11,1,0,25,0,38,0,0,0,231,128,97,0,81, + 0,81,0,73,0,73,0,69,0,69,0,67,0,67,0,241, + 0,9,15,30,11,1,0,16,0,8,0,4,0,0,0,28, + 0,99,0,65,0,128,128,128,128,128,128,128,128,128,128,65, + 0,99,0,28,0,9,15,30,11,1,0,4,0,8,0,16, + 0,0,0,28,0,99,0,65,0,128,128,128,128,128,128,128, + 128,128,128,65,0,99,0,28,0,9,15,30,11,1,0,12, + 0,18,0,33,0,0,0,28,0,99,0,65,0,128,128,128, + 128,128,128,128,128,128,128,65,0,99,0,28,0,9,14,28, + 11,1,0,25,0,38,0,0,0,28,0,99,0,65,0,128, + 128,128,128,128,128,128,128,128,128,65,0,99,0,28,0,9, + 14,28,11,1,0,18,0,18,0,0,0,28,0,99,0,65, + 0,128,128,128,128,128,128,128,128,128,128,65,0,99,0,28, + 0,9,9,18,11,1,1,128,128,65,0,34,0,20,0,8, + 0,20,0,34,0,65,0,128,128,11,11,22,11,0,0,14, + 32,49,192,32,128,65,64,66,64,68,64,72,64,80,64,32, + 128,113,128,142,0,10,15,30,11,0,0,16,0,8,0,4, + 0,0,0,243,192,64,128,64,128,64,128,64,128,64,128,64, + 128,64,128,64,128,33,0,30,0,10,15,30,11,0,0,2, + 0,4,0,8,0,0,0,243,192,64,128,64,128,64,128,64, + 128,64,128,64,128,64,128,64,128,33,0,30,0,10,15,30, + 11,0,0,12,0,18,0,33,0,0,0,243,192,64,128,64, + 128,64,128,64,128,64,128,64,128,64,128,64,128,33,0,30, + 0,10,14,28,11,0,0,18,0,18,0,0,0,243,192,64, + 128,64,128,64,128,64,128,64,128,64,128,64,128,64,128,33, + 0,30,0,9,15,30,11,1,0,2,0,4,0,8,0,0, + 0,227,128,65,0,34,0,34,0,20,0,20,0,8,0,8, + 0,8,0,8,0,62,0,9,11,22,11,1,0,224,0,64, + 0,126,0,65,0,64,128,64,128,65,0,126,0,64,0,64, + 0,224,0,8,11,11,11,1,0,60,66,66,68,88,70,65, + 65,65,73,230,9,12,24,11,1,0,32,0,16,0,8,0, + 0,0,60,0,66,0,2,0,126,0,130,0,130,0,134,0, + 123,128,9,12,24,11,1,0,4,0,8,0,16,0,0,0, + 60,0,66,0,2,0,126,0,130,0,130,0,134,0,123,128, + 9,12,24,11,1,0,24,0,36,0,66,0,0,0,60,0, + 66,0,2,0,126,0,130,0,130,0,134,0,123,128,9,11, + 22,11,1,0,50,0,76,0,0,0,60,0,66,0,2,0, + 126,0,130,0,130,0,134,0,123,128,9,11,22,11,1,0, + 36,0,36,0,0,0,60,0,66,0,2,0,126,0,130,0, + 130,0,134,0,123,128,9,13,26,11,1,0,24,0,36,0, + 36,0,24,0,0,0,60,0,66,0,2,0,126,0,130,0, + 130,0,134,0,123,128,11,8,16,11,0,0,113,128,138,64, + 4,32,127,224,132,0,132,0,138,32,113,192,8,11,11,11, + 1,253,61,67,129,128,128,128,67,60,16,8,48,8,12,12, + 11,1,0,32,16,8,0,60,66,129,255,128,128,67,60,8, + 12,12,11,1,0,2,4,8,0,60,66,129,255,128,128,67, + 60,8,12,12,11,1,0,24,36,66,0,60,66,129,255,128, + 128,67,60,8,11,11,11,1,0,36,36,0,60,66,129,255, + 128,128,67,60,7,12,12,11,2,0,32,16,8,0,112,16, + 16,16,16,16,16,254,7,12,12,11,2,0,8,16,32,0, + 112,16,16,16,16,16,16,254,7,12,12,11,2,0,48,72, + 132,0,112,16,16,16,16,16,16,254,7,11,11,11,2,0, + 72,72,0,112,16,16,16,16,16,16,254,8,12,12,11,1, + 0,114,140,52,66,62,67,129,129,129,129,66,60,9,11,22, + 11,1,0,50,0,76,0,0,0,222,0,97,0,65,0,65, + 0,65,0,65,0,65,0,227,128,8,12,12,11,1,0,32, + 16,8,0,60,66,129,129,129,129,66,60,8,12,12,11,1, + 0,4,8,16,0,60,66,129,129,129,129,66,60,8,12,12, + 11,1,0,24,36,66,0,60,66,129,129,129,129,66,60,8, + 11,11,11,1,0,50,76,0,60,66,129,129,129,129,66,60, + 8,11,11,11,1,0,36,36,0,60,66,129,129,129,129,66, + 60,8,9,9,11,1,1,24,24,0,0,255,0,0,24,24, + 8,8,8,11,1,0,61,66,133,137,145,161,66,188,9,12, + 24,11,1,0,32,0,16,0,8,0,0,0,195,0,65,0, + 65,0,65,0,65,0,65,0,67,0,61,128,9,12,24,11, + 1,0,2,0,4,0,8,0,0,0,195,0,65,0,65,0, + 65,0,65,0,65,0,67,0,61,128,9,12,24,11,1,0, + 24,0,36,0,66,0,0,0,195,0,65,0,65,0,65,0, + 65,0,65,0,67,0,61,128,9,11,22,11,1,0,36,0, + 36,0,0,0,195,0,65,0,65,0,65,0,65,0,65,0, + 67,0,61,128,9,16,32,11,1,252,2,0,4,0,8,0, + 0,0,227,128,65,0,65,0,34,0,34,0,20,0,20,0, + 8,0,8,0,16,0,16,0,248,0,9,16,32,11,1,252, + 192,0,64,0,64,0,64,0,94,0,97,0,64,128,64,128, + 64,128,64,128,97,0,94,0,64,0,64,0,64,0,240,0, + 9,15,30,11,1,252,36,0,36,0,0,0,227,128,65,0, + 65,0,34,0,34,0,20,0,20,0,8,0,8,0,16,0, + 16,0,248,0}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--20-140-100-100-M-110-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 12 + Calculated Max Values w=11 h=16 x= 5 y= 9 dx=11 dy= 0 ascent=13 len=26 + Font Bounding box w=16 h=26 x=-3 y=-7 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR14r[1988] U8G_SECTION(".progmem.u8g_font_courR14r") = { + 0,16,26,253,249,11,2,74,5,74,32,127,252,13,252,12, + 252,0,0,0,11,0,1,2,12,12,11,4,0,192,192,192, + 192,192,192,64,64,0,0,192,192,6,5,5,11,3,7,204, + 204,204,68,68,8,15,15,11,1,254,18,18,18,18,18,127, + 36,36,36,254,36,36,36,36,36,6,15,15,11,2,254,16, + 16,116,140,132,128,96,24,4,132,196,184,16,16,16,9,12, + 24,11,1,0,56,0,68,0,68,0,68,0,57,128,14,0, + 48,0,206,0,17,0,17,0,17,0,14,0,7,10,10,11, + 2,0,56,64,64,64,32,116,136,136,152,102,2,5,5,11, + 4,7,192,192,192,64,64,3,14,14,11,5,254,32,64,64, + 128,128,128,128,128,128,128,128,64,64,32,3,14,14,11,3, + 254,128,64,64,32,32,32,32,32,32,32,32,64,64,128,7, + 8,8,11,2,4,16,16,16,254,16,40,68,68,9,9,18, + 11,1,1,8,0,8,0,8,0,8,0,255,128,8,0,8, + 0,8,0,8,0,4,5,5,11,3,253,48,48,96,64,128, + 8,1,1,11,1,5,255,2,2,2,11,4,0,192,192,8, + 16,16,11,1,253,1,1,2,2,4,4,8,8,16,16,32, + 32,64,64,128,128,7,12,12,11,2,0,56,68,130,130,130, + 130,130,130,130,130,68,56,7,12,12,11,2,0,48,208,16, + 16,16,16,16,16,16,16,16,254,8,12,12,11,1,0,28, + 34,65,65,1,2,4,8,16,33,65,255,7,12,12,11,2, + 0,120,132,2,2,4,56,4,2,2,2,132,120,7,12,12, + 11,2,0,12,20,20,36,36,68,68,132,254,4,4,30,8, + 12,12,11,1,0,126,64,64,64,92,98,1,1,1,1,194, + 60,7,12,12,11,2,0,28,96,64,128,128,184,196,130,130, + 130,68,56,7,12,12,11,2,0,254,130,2,2,4,4,4, + 4,8,8,8,8,7,12,12,11,2,0,56,68,130,130,68, + 56,68,130,130,130,68,56,7,12,12,11,2,0,56,68,130, + 130,130,70,58,2,2,4,12,112,2,8,8,11,4,0,192, + 192,0,0,0,0,192,192,4,11,11,11,2,253,48,48,0, + 0,0,0,48,48,96,64,128,10,9,18,11,0,1,0,192, + 3,0,12,0,48,0,192,0,48,0,12,0,3,0,0,192, + 9,4,8,11,1,3,255,128,0,0,0,0,255,128,10,9, + 18,11,0,1,192,0,48,0,12,0,3,0,0,192,3,0, + 12,0,48,0,192,0,7,11,11,11,2,0,124,130,130,2, + 2,28,16,16,0,24,24,8,13,13,11,2,255,56,68,130, + 130,142,146,146,146,143,128,128,67,60,11,11,22,11,0,0, + 60,0,4,0,10,0,10,0,17,0,17,0,32,128,63,128, + 64,64,64,64,241,224,9,11,22,11,1,0,252,0,66,0, + 65,0,65,0,66,0,126,0,65,0,64,128,64,128,65,0, + 254,0,9,11,22,11,1,0,30,128,97,128,64,128,128,0, + 128,0,128,0,128,0,128,0,64,128,97,0,30,0,9,11, + 22,11,1,0,252,0,67,0,65,0,64,128,64,128,64,128, + 64,128,64,128,65,0,67,0,252,0,8,11,11,11,1,0, + 255,65,65,65,72,120,72,65,65,65,255,8,11,11,11,1, + 0,255,65,65,65,72,120,72,64,64,64,240,10,11,22,11, + 1,0,30,128,97,128,64,128,128,0,128,0,128,0,131,192, + 128,128,64,128,97,0,30,0,9,11,22,11,1,0,227,128, + 65,0,65,0,65,0,65,0,127,0,65,0,65,0,65,0, + 65,0,227,128,7,11,11,11,2,0,254,16,16,16,16,16, + 16,16,16,16,254,9,11,22,11,1,0,31,128,2,0,2, + 0,2,0,2,0,2,0,130,0,130,0,130,0,68,0,56, + 0,10,11,22,11,1,0,243,192,65,0,66,0,68,0,72, + 0,88,0,100,0,66,0,66,0,65,0,241,192,9,11,22, + 11,1,0,248,0,32,0,32,0,32,0,32,0,32,0,32, + 0,32,128,32,128,32,128,255,128,11,11,22,11,0,0,224, + 224,96,192,81,64,81,64,74,64,74,64,68,64,68,64,64, + 64,64,64,241,224,9,11,22,11,1,0,231,128,97,0,81, + 0,81,0,73,0,73,0,69,0,69,0,67,0,67,0,241, + 0,9,11,22,11,1,0,28,0,99,0,65,0,128,128,128, + 128,128,128,128,128,128,128,65,0,99,0,28,0,9,11,22, + 11,1,0,254,0,65,0,64,128,64,128,65,0,126,0,64, + 0,64,0,64,0,64,0,248,0,9,13,26,11,1,254,28, + 0,99,0,65,0,128,128,128,128,128,128,128,128,128,128,65, + 0,99,0,28,0,56,128,71,0,10,11,22,11,1,0,254, + 0,65,0,64,128,64,128,65,0,126,0,68,0,66,0,66, + 0,65,0,240,192,8,11,11,11,1,0,61,67,129,128,64, + 60,2,1,129,194,188,9,11,22,11,1,0,255,128,136,128, + 136,128,136,128,8,0,8,0,8,0,8,0,8,0,8,0, + 62,0,10,11,22,11,0,0,243,192,64,128,64,128,64,128, + 64,128,64,128,64,128,64,128,64,128,33,0,30,0,11,11, + 22,11,0,0,241,224,64,64,64,64,32,128,32,128,17,0, + 17,0,10,0,10,0,4,0,4,0,11,11,22,11,0,0, + 241,224,64,64,68,64,68,64,68,64,42,128,42,128,42,128, + 42,128,17,0,17,0,9,11,22,11,1,0,227,128,65,0, + 34,0,34,0,20,0,8,0,20,0,34,0,34,0,65,0, + 227,128,9,11,22,11,1,0,227,128,65,0,34,0,34,0, + 20,0,20,0,8,0,8,0,8,0,8,0,62,0,7,11, + 11,11,2,0,254,130,130,4,8,16,32,64,130,130,254,3, + 15,15,11,5,253,224,128,128,128,128,128,128,128,128,128,128, + 128,128,128,224,8,16,16,11,2,253,128,128,64,64,32,32, + 16,16,8,8,4,4,2,2,1,1,3,15,15,11,3,253, + 224,32,32,32,32,32,32,32,32,32,32,32,32,32,224,7, + 4,4,11,2,8,16,40,68,130,11,1,2,11,0,252,255, + 224,3,3,3,11,4,9,128,64,32,9,8,16,11,1,0, + 60,0,66,0,2,0,126,0,130,0,130,0,134,0,123,128, + 9,12,24,11,1,0,192,0,64,0,64,0,64,0,94,0, + 97,0,64,128,64,128,64,128,64,128,97,0,222,0,8,8, + 8,11,1,0,61,67,129,128,128,128,67,60,9,12,24,11, + 1,0,3,0,1,0,1,0,1,0,61,0,67,0,129,0, + 129,0,129,0,129,0,67,0,61,128,8,8,8,11,1,0, + 60,66,129,255,128,128,67,60,8,12,12,11,2,0,15,16, + 32,32,254,32,32,32,32,32,32,254,9,12,24,11,1,252, + 61,128,67,0,129,0,129,0,129,0,129,0,67,0,61,0, + 1,0,1,0,2,0,124,0,9,12,24,11,1,0,192,0, + 64,0,64,0,64,0,94,0,97,0,65,0,65,0,65,0, + 65,0,65,0,227,128,7,11,11,11,2,0,16,16,0,112, + 16,16,16,16,16,16,254,6,15,15,11,2,252,8,8,0, + 252,4,4,4,4,4,4,4,4,4,8,240,9,12,24,11, + 1,0,192,0,64,0,64,0,64,0,79,0,68,0,72,0, + 112,0,72,0,68,0,66,0,199,128,7,12,12,11,2,0, + 240,16,16,16,16,16,16,16,16,16,16,254,11,8,16,11, + 0,0,217,128,102,64,68,64,68,64,68,64,68,64,68,64, + 230,96,9,8,16,11,1,0,222,0,97,0,65,0,65,0, + 65,0,65,0,65,0,227,128,8,8,8,11,1,0,60,66, + 129,129,129,129,66,60,9,12,24,11,1,252,222,0,97,0, + 64,128,64,128,64,128,64,128,97,0,94,0,64,0,64,0, + 64,0,240,0,9,12,24,11,1,252,61,128,67,0,129,0, + 129,0,129,0,129,0,67,0,61,0,1,0,1,0,1,0, + 7,128,8,8,8,11,1,0,238,49,32,32,32,32,32,254, + 7,8,8,11,2,0,122,134,130,112,12,130,194,188,8,11, + 11,11,2,0,32,32,32,254,32,32,32,32,32,33,30,9, + 8,16,11,1,0,195,0,65,0,65,0,65,0,65,0,65, + 0,67,0,61,128,9,8,16,11,1,0,227,128,65,0,34, + 0,34,0,20,0,20,0,8,0,8,0,9,8,16,11,1, + 0,227,128,65,0,73,0,73,0,85,0,85,0,34,0,34, + 0,8,8,8,11,1,0,231,66,36,24,24,36,66,231,9, + 12,24,11,1,252,227,128,65,0,65,0,34,0,34,0,20, + 0,20,0,8,0,8,0,16,0,16,0,248,0,7,8,8, + 11,2,0,254,130,132,8,16,34,66,254,5,15,15,11,3, + 253,24,32,32,32,32,32,32,192,32,32,32,32,32,32,24, + 1,15,15,11,5,253,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,5,15,15,11,3,253,192,32,32,32,32, + 32,32,24,32,32,32,32,32,32,192,8,3,3,11,1,4, + 96,153,6,255}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--25-180-100-100-M-150-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 15 + Calculated Max Values w=15 h=21 x= 7 y=12 dx=15 dy= 0 ascent=19 len=42 + Font Bounding box w=23 h=32 x=-5 y=-8 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-5 + X Font ascent =16 descent=-5 + Max Font ascent =19 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR18[6152] U8G_SECTION(".progmem.u8g_font_courR18") = { + 0,23,32,251,248,14,3,161,7,151,32,255,251,19,251,16, + 251,0,0,0,15,0,1,2,16,16,15,6,0,192,192,192, + 192,192,192,192,192,128,128,128,0,0,0,192,192,8,7,7, + 15,3,9,231,231,231,231,66,66,66,10,17,34,15,2,255, + 9,0,9,0,9,0,9,0,9,0,9,0,127,192,18,0, + 18,0,18,0,255,128,18,0,18,0,18,0,18,0,18,0, + 18,0,9,20,40,15,3,253,8,0,8,0,8,0,30,128, + 33,128,64,128,64,0,64,0,32,0,30,0,1,0,0,128, + 0,128,128,128,193,0,190,0,8,0,8,0,8,0,8,0, + 12,16,32,15,1,0,28,0,34,0,65,0,65,0,65,0, + 34,0,28,112,3,128,28,0,225,192,2,32,4,16,4,16, + 4,16,2,32,1,192,10,13,26,15,2,0,29,0,38,0, + 32,0,32,0,16,0,48,0,73,128,137,0,134,0,130,0, + 131,0,69,0,56,192,3,7,7,15,6,8,224,224,224,224, + 224,64,64,4,19,19,15,7,253,16,32,32,64,64,64,128, + 128,128,128,128,128,128,64,64,64,32,32,16,4,19,19,15, + 3,253,128,64,64,32,32,32,16,16,16,16,16,16,16,32, + 32,32,64,64,128,9,9,18,15,3,7,8,0,8,0,8, + 0,201,128,127,0,28,0,54,0,99,0,193,128,11,11,22, + 15,2,2,4,0,4,0,4,0,4,0,4,0,255,224,4, + 0,4,0,4,0,4,0,4,0,5,6,6,15,4,253,56, + 56,112,96,192,128,10,1,2,15,2,7,255,192,3,3,3, + 15,6,0,224,224,224,9,18,36,15,3,254,0,128,0,128, + 1,0,1,0,2,0,2,0,4,0,4,0,8,0,8,0, + 16,0,16,0,32,0,32,0,64,0,64,0,128,0,128,0, + 9,15,30,15,3,0,28,0,99,0,65,0,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,65,0, + 99,0,28,0,9,15,30,15,3,0,24,0,232,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,255,128,10,15,30,15,2,0,30,0, + 97,0,128,128,128,128,0,128,0,128,1,0,2,0,4,0, + 8,0,16,0,32,0,64,0,128,64,255,192,10,15,30,15, + 2,0,62,0,65,128,0,128,0,128,0,128,1,0,30,0, + 1,128,0,64,0,64,0,64,0,64,128,64,97,128,30,0, + 10,15,30,15,2,0,3,0,5,0,9,0,9,0,17,0, + 33,0,33,0,65,0,65,0,129,0,255,192,1,0,1,0, + 1,0,15,192,10,15,30,15,2,0,127,128,64,0,64,0, + 64,0,64,0,94,0,97,128,0,128,0,64,0,64,0,64, + 0,64,0,128,193,128,62,0,9,15,30,15,3,0,15,0, + 48,0,96,0,64,0,128,0,158,0,161,0,192,128,128,128, + 128,128,128,128,128,128,64,128,97,0,30,0,9,15,30,15, + 2,0,255,128,128,128,129,0,1,0,1,0,2,0,2,0, + 2,0,2,0,4,0,4,0,4,0,8,0,8,0,8,0, + 10,15,30,15,2,0,30,0,33,0,64,128,64,128,64,128, + 64,128,33,0,63,0,64,128,128,64,128,64,128,64,64,128, + 97,128,30,0,9,15,30,15,3,0,28,0,99,0,193,128, + 128,128,128,128,128,128,65,128,98,128,28,128,0,128,0,128, + 1,0,1,0,6,0,248,0,3,11,11,15,6,0,224,224, + 224,0,0,0,0,0,224,224,224,5,14,14,15,4,253,56, + 56,56,0,0,0,0,0,56,56,112,96,192,128,11,11,22, + 15,1,2,0,96,1,128,6,0,24,0,96,0,192,0,96, + 0,24,0,6,0,1,128,0,96,12,4,8,15,1,5,255, + 240,0,0,0,0,255,240,11,11,22,15,2,2,192,0,48, + 0,12,0,3,0,0,192,0,96,0,192,3,0,12,0,48, + 0,192,0,8,14,14,15,3,0,124,130,129,1,1,1,2, + 12,16,16,0,0,24,24,10,18,36,15,2,254,30,0,97, + 0,64,128,128,128,128,128,131,128,132,128,136,128,136,128,136, + 128,136,128,132,128,131,192,128,0,128,0,64,0,97,128,31, + 0,13,14,28,15,1,0,63,0,5,0,8,128,8,128,8, + 128,16,64,16,64,16,64,63,224,32,32,32,32,64,16,64, + 16,240,120,12,14,28,15,1,0,255,192,32,32,32,16,32, + 16,32,16,32,32,63,192,32,32,32,16,32,16,32,16,32, + 16,32,32,255,192,11,14,28,15,2,0,15,32,48,160,96, + 96,64,32,128,0,128,0,128,0,128,0,128,0,128,0,64, + 32,96,96,48,192,15,0,12,14,28,15,1,0,255,128,64, + 96,64,32,64,16,64,16,64,16,64,16,64,16,64,16,64, + 16,64,16,64,32,64,96,255,128,12,14,28,15,1,0,255, + 224,32,32,32,32,32,32,34,0,34,0,62,0,34,0,34, + 0,32,16,32,16,32,16,32,16,255,240,11,14,28,15,2, + 0,255,224,32,32,32,32,32,32,34,0,34,0,62,0,34, + 0,34,0,32,0,32,0,32,0,32,0,254,0,12,14,28, + 15,1,0,15,32,48,160,96,96,64,32,128,0,128,0,128, + 0,128,0,131,240,128,32,64,32,96,32,48,64,15,128,13, + 14,28,15,1,0,248,248,32,32,32,32,32,32,32,32,32, + 32,63,224,32,32,32,32,32,32,32,32,32,32,32,32,248, + 248,9,14,28,15,3,0,255,128,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,255,128,12,14,28,15,2,0,31,240,0,128,0,128,0, + 128,0,128,0,128,0,128,0,128,128,128,128,128,128,128,129, + 0,67,0,60,0,13,14,28,15,1,0,248,240,32,64,32, + 128,33,0,34,0,36,0,44,0,50,0,33,0,32,128,32, + 64,32,64,32,32,248,120,12,14,28,15,1,0,254,0,16, + 0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16, + 16,16,16,16,16,16,16,255,240,13,14,28,15,1,0,224, + 56,96,48,96,48,80,80,80,80,72,144,72,144,69,16,71, + 16,64,16,64,16,64,16,64,16,240,120,14,14,28,15,0, + 0,240,252,48,16,40,16,36,16,36,16,34,16,34,16,33, + 16,33,16,32,144,32,144,32,80,32,48,252,48,13,14,28, + 15,1,0,15,128,48,96,96,48,64,16,128,8,128,8,128, + 8,128,8,128,8,128,8,64,16,96,48,48,96,15,128,11, + 14,28,15,2,0,255,128,32,64,32,32,32,32,32,32,32, + 32,32,64,63,128,32,0,32,0,32,0,32,0,32,0,254, + 0,13,16,32,15,1,254,15,128,48,96,96,48,64,16,128, + 8,128,8,128,8,128,8,128,8,128,8,64,16,96,48,48, + 96,15,128,6,48,27,192,13,14,28,15,1,0,255,128,32, + 64,32,32,32,32,32,32,32,32,32,64,63,128,33,0,32, + 128,32,64,32,64,32,32,248,56,10,14,28,15,2,0,30, + 64,97,64,128,192,128,64,128,0,96,0,30,0,1,128,0, + 64,0,64,128,64,192,64,160,128,159,0,11,14,28,15,2, + 0,255,224,132,32,132,32,132,32,132,32,4,0,4,0,4, + 0,4,0,4,0,4,0,4,0,4,0,63,128,12,14,28, + 15,1,0,249,240,64,32,64,32,64,32,64,32,64,32,64, + 32,64,32,64,32,64,32,64,32,64,32,32,64,31,128,13, + 14,28,15,1,0,248,248,64,16,64,16,32,32,32,32,16, + 64,16,64,16,64,8,128,8,128,8,128,5,0,7,0,2, + 0,13,14,28,15,1,0,248,248,64,16,64,16,66,16,66, + 16,69,16,69,16,37,32,40,160,40,160,40,160,48,96,48, + 96,48,96,13,14,28,15,1,0,248,248,32,32,16,64,16, + 64,8,128,5,0,2,0,5,0,8,128,8,128,16,64,32, + 32,32,32,248,248,13,14,28,15,1,0,240,120,32,32,16, + 64,16,64,8,128,8,128,5,0,2,0,2,0,2,0,2, + 0,2,0,2,0,31,192,10,14,28,15,2,0,255,192,128, + 64,128,128,129,0,130,0,2,0,4,0,8,0,16,0,16, + 64,32,64,64,64,128,64,255,192,3,19,19,15,7,253,224, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,224,9,18,36,15,3,254,128,0,128,0,64,0,64,0, + 32,0,32,0,16,0,16,0,8,0,8,0,4,0,4,0, + 2,0,2,0,1,0,1,0,0,128,0,128,3,19,19,15, + 5,253,224,32,32,32,32,32,32,32,32,32,32,32,32,32, + 32,32,32,32,224,9,5,10,15,3,11,8,0,28,0,34, + 0,65,0,128,128,15,1,2,15,0,251,255,254,5,4,4, + 15,4,12,192,96,48,24,11,11,22,15,2,0,62,0,65, + 0,0,128,0,128,62,128,65,128,128,128,128,128,128,128,65, + 128,62,224,13,15,30,15,1,0,224,0,32,0,32,0,32, + 0,39,192,40,48,48,16,32,8,32,8,32,8,32,8,32, + 8,48,16,40,48,231,192,11,11,22,15,2,0,31,64,96, + 192,64,64,128,64,128,0,128,0,128,0,128,0,64,96,96, + 192,31,0,13,15,30,15,1,0,0,224,0,32,0,32,0, + 32,31,32,96,160,64,96,128,32,128,32,128,32,128,32,128, + 32,64,96,96,160,31,56,11,11,22,15,2,0,31,0,96, + 192,64,64,128,32,128,32,255,224,128,0,128,0,64,0,96, + 96,31,128,10,15,30,15,3,0,15,128,24,64,16,0,16, + 0,255,128,16,0,16,0,16,0,16,0,16,0,16,0,16, + 0,16,0,16,0,255,128,13,16,32,15,1,251,31,56,96, + 160,64,96,128,32,128,32,128,32,128,32,128,32,64,96,96, + 160,31,32,0,32,0,32,0,64,0,192,63,0,13,15,30, + 15,1,0,224,0,32,0,32,0,32,0,39,128,40,64,48, + 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,248, + 248,9,16,32,15,3,0,8,0,8,0,8,0,0,0,0, + 0,120,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,255,128,8,21,21,15,3,251,2,2,2, + 0,0,255,1,1,1,1,1,1,1,1,1,1,1,1,2, + 6,248,11,15,30,15,2,0,224,0,32,0,32,0,32,0, + 35,192,33,0,34,0,36,0,40,0,56,0,36,0,34,0, + 33,0,32,128,225,224,11,15,30,15,2,0,124,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,255,224,14,11,22,15,0,0, + 238,112,49,136,33,8,33,8,33,8,33,8,33,8,33,8, + 33,8,33,8,249,140,13,11,22,15,1,0,231,128,40,64, + 48,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32, + 248,248,11,11,22,15,2,0,31,0,96,192,64,64,128,32, + 128,32,128,32,128,32,128,32,64,64,96,192,31,0,13,16, + 32,15,1,251,231,192,40,48,48,16,32,8,32,8,32,8, + 32,8,32,8,48,16,40,48,39,192,32,0,32,0,32,0, + 32,0,252,0,13,16,32,15,1,251,31,56,96,160,64,96, + 128,32,128,32,128,32,128,32,128,32,64,96,96,160,31,32, + 0,32,0,32,0,32,0,32,1,248,11,11,22,15,2,0, + 113,192,22,32,24,0,16,0,16,0,16,0,16,0,16,0, + 16,0,16,0,255,128,9,11,22,15,3,0,62,128,65,128, + 64,128,64,0,56,0,7,0,0,128,0,128,128,128,193,0, + 190,0,10,15,30,15,2,0,32,0,32,0,32,0,32,0, + 255,128,32,0,32,0,32,0,32,0,32,0,32,0,32,0, + 32,0,16,192,15,0,12,11,22,15,1,0,224,224,32,32, + 32,32,32,32,32,32,32,32,32,32,32,32,32,96,16,160, + 15,48,13,11,22,15,1,0,248,248,32,32,32,32,16,64, + 16,64,16,64,8,128,8,128,5,0,7,0,2,0,13,11, + 22,15,1,0,240,120,64,16,64,16,66,16,34,32,37,32, + 37,32,37,32,21,64,24,192,24,192,11,11,22,15,2,0, + 241,224,64,64,32,128,17,0,10,0,4,0,10,0,17,0, + 32,128,64,64,241,224,12,16,32,15,1,251,240,240,64,32, + 64,32,32,64,32,64,32,128,16,128,17,0,9,0,10,0, + 6,0,4,0,4,0,8,0,8,0,254,0,9,11,22,15, + 3,0,255,128,128,128,129,0,2,0,4,0,8,0,16,0, + 32,0,64,128,128,128,255,128,5,19,19,15,5,253,24,32, + 32,32,32,32,32,32,32,192,32,32,32,32,32,32,32,32, + 24,1,17,17,15,7,253,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,5,19,19,15,5,253,192,32, + 32,32,32,32,32,32,32,24,32,32,32,32,32,32,32,32, + 192,12,3,6,15,1,6,60,48,102,96,195,192,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0, + 0,15,0,1,2,16,16,15,6,251,192,192,0,0,0,128, + 128,128,192,192,192,192,192,192,192,192,8,16,16,15,3,0, + 8,8,8,8,29,99,65,128,128,128,64,99,28,8,8,8, + 10,14,28,15,2,0,14,0,17,128,32,0,32,0,32,0, + 32,0,254,0,16,0,16,0,16,0,16,0,32,64,64,64, + 255,128,10,10,20,15,2,2,128,64,94,128,33,0,64,128, + 64,128,64,128,64,128,33,0,94,128,128,64,11,14,28,15, + 2,0,241,224,64,64,32,128,32,128,17,0,17,0,10,0, + 127,192,4,0,4,0,127,192,4,0,4,0,63,128,1,19, + 19,15,7,253,128,128,128,128,128,128,128,128,0,0,0,128, + 128,128,128,128,128,128,128,10,18,36,15,2,254,15,192,16, + 64,32,64,32,64,32,0,112,0,140,0,130,0,65,0,32, + 128,16,64,12,64,3,128,1,0,129,0,129,0,130,0,252, + 0,7,2,2,15,4,12,198,198,13,13,26,15,1,1,15, + 128,48,96,64,16,70,144,137,136,144,136,144,8,144,8,136, + 136,71,16,64,16,48,96,15,128,7,9,9,15,4,5,120, + 132,60,68,132,140,118,0,254,12,11,22,15,1,0,6,48, + 12,96,24,192,49,128,99,0,198,0,99,0,49,128,24,192, + 12,96,6,48,11,4,8,15,2,5,255,224,0,32,0,32, + 0,32,10,1,2,15,2,7,255,192,13,13,26,15,1,1, + 15,128,48,96,64,16,79,16,136,136,136,136,143,8,137,8, + 136,136,72,144,64,16,48,96,15,128,7,1,1,15,4,12, + 254,7,7,7,15,4,9,56,68,130,130,130,68,56,11,13, + 26,15,2,1,4,0,4,0,4,0,4,0,4,0,255,224, + 4,0,4,0,4,0,4,0,4,0,0,0,255,224,6,9, + 9,15,4,7,56,68,132,4,8,16,32,68,252,6,9,9, + 15,4,7,120,132,4,8,56,4,4,132,120,5,4,4,15, + 5,12,24,48,96,192,12,16,32,15,1,251,224,224,32,32, + 32,32,32,32,32,32,32,32,32,32,32,32,32,96,48,160, + 47,48,32,0,32,0,32,0,32,0,32,0,11,18,36,15, + 2,254,31,224,100,128,196,128,196,128,196,128,196,128,196,128, + 100,128,28,128,4,128,4,128,4,128,4,128,4,128,4,128, + 4,128,4,128,60,224,3,3,3,15,6,6,224,224,224,4, + 5,5,15,5,252,32,32,16,144,96,7,9,9,15,4,7, + 48,208,16,16,16,16,16,16,254,7,9,9,15,4,5,56, + 68,130,130,130,68,56,0,254,12,11,22,15,1,0,198,0, + 99,0,49,128,24,192,12,96,6,48,12,96,24,192,49,128, + 99,0,198,0,14,16,32,15,0,0,48,0,208,0,16,8, + 16,16,16,32,16,32,16,64,16,152,255,40,2,72,4,72, + 4,136,9,8,17,252,0,8,0,28,14,16,32,15,0,0, + 48,0,208,0,16,8,16,16,16,32,16,32,16,64,16,184, + 255,68,2,132,4,4,4,8,8,16,16,32,0,68,0,252, + 14,16,32,15,0,0,120,0,132,0,4,8,8,16,56,32, + 4,32,4,64,132,152,121,40,2,72,4,72,4,136,9,8, + 17,252,0,8,0,28,8,14,14,15,3,253,24,24,0,0, + 8,8,48,64,128,128,128,129,65,62,13,19,38,15,1,0, + 24,0,12,0,6,0,3,0,0,0,63,0,5,0,8,128, + 8,128,8,128,16,64,16,64,16,64,63,224,32,32,32,32, + 64,16,64,16,240,120,13,19,38,15,1,0,0,192,1,128, + 3,0,6,0,0,0,63,0,5,0,8,128,8,128,8,128, + 16,64,16,64,16,64,63,224,32,32,32,32,64,16,64,16, + 240,120,13,19,38,15,1,0,6,0,15,0,25,128,48,192, + 0,0,63,0,5,0,8,128,8,128,8,128,16,64,16,64, + 16,64,63,224,32,32,32,32,64,16,64,16,240,120,13,18, + 36,15,1,0,28,64,54,192,35,128,0,0,63,0,5,0, + 8,128,8,128,8,128,16,64,16,64,16,64,63,224,32,32, + 32,32,64,16,64,16,240,120,13,18,36,15,1,0,24,192, + 24,192,0,0,0,0,63,0,5,0,8,128,8,128,8,128, + 16,64,16,64,16,64,63,224,32,32,32,32,64,16,64,16, + 240,120,13,19,38,15,1,0,7,0,8,128,8,128,8,128, + 7,0,63,0,5,0,8,128,8,128,8,128,16,64,16,64, + 16,64,63,224,32,32,32,32,64,16,64,16,240,120,15,14, + 28,15,255,0,15,254,2,130,4,130,4,130,4,136,8,136, + 8,248,8,136,31,136,16,130,16,130,32,130,32,130,243,254, + 11,18,36,15,2,252,15,32,48,224,96,96,64,32,128,0, + 128,0,128,0,128,0,128,0,128,0,64,32,96,96,48,192, + 15,0,4,0,2,0,18,0,12,0,12,19,38,15,1,0, + 24,0,12,0,6,0,3,0,0,0,255,224,32,32,32,32, + 32,32,34,0,34,0,62,0,34,0,34,0,32,16,32,16, + 32,16,32,16,255,240,12,19,38,15,1,0,0,192,1,128, + 3,0,6,0,0,0,255,224,32,32,32,32,32,32,34,0, + 34,0,62,0,34,0,34,0,32,16,32,16,32,16,32,16, + 255,240,12,19,38,15,1,0,6,0,15,0,25,128,48,192, + 0,0,255,224,32,32,32,32,32,32,34,0,34,0,62,0, + 34,0,34,0,32,16,32,16,32,16,32,16,255,240,12,18, + 36,15,1,0,25,128,25,128,0,0,0,0,255,224,32,32, + 32,32,32,32,34,0,34,0,62,0,34,0,34,0,32,16, + 32,16,32,16,32,16,255,240,9,19,38,15,3,0,96,0, + 48,0,24,0,12,0,0,0,255,128,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,255,128,9,19,38,15,3,0,3,0,6,0,12,0, + 24,0,0,0,255,128,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,255,128, + 9,19,38,15,3,0,24,0,60,0,102,0,195,0,0,0, + 255,128,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,255,128,9,18,36,15, + 3,0,99,0,99,0,0,0,0,0,255,128,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,255,128,13,14,28,15,0,0,127,192,32,48, + 32,16,32,8,32,8,32,8,252,8,32,8,32,8,32,8, + 32,8,32,16,32,48,127,192,14,18,36,15,0,0,14,32, + 27,96,17,192,0,0,240,252,48,16,40,16,36,16,36,16, + 34,16,34,16,33,16,33,16,32,144,32,144,32,80,32,48, + 252,48,13,19,38,15,1,0,24,0,12,0,6,0,3,0, + 0,0,15,128,48,96,96,48,64,16,128,8,128,8,128,8, + 128,8,128,8,128,8,64,16,96,48,48,96,15,128,13,19, + 38,15,1,0,0,96,0,192,1,128,3,0,0,0,15,128, + 48,96,96,48,64,16,128,8,128,8,128,8,128,8,128,8, + 128,8,64,16,96,48,48,96,15,128,13,19,38,15,1,0, + 3,0,7,128,12,192,24,96,0,0,15,128,48,96,96,48, + 64,16,128,8,128,8,128,8,128,8,128,8,128,8,64,16, + 96,48,48,96,15,128,13,18,36,15,1,0,14,32,27,96, + 17,192,0,0,15,128,48,96,96,48,64,16,128,8,128,8, + 128,8,128,8,128,8,128,8,64,16,96,48,48,96,15,128, + 13,18,36,15,1,0,24,192,24,192,0,0,0,0,15,128, + 48,96,96,48,64,16,128,8,128,8,128,8,128,8,128,8, + 128,8,64,16,96,48,48,96,15,128,11,11,22,15,2,2, + 128,32,64,64,32,128,17,0,10,0,4,0,10,0,17,0, + 32,128,64,64,128,32,14,15,30,15,0,0,0,4,7,200, + 24,48,48,48,32,72,64,136,64,136,65,8,66,8,68,8, + 72,8,48,16,48,48,88,96,135,128,12,19,38,15,1,0, + 24,0,12,0,6,0,3,0,0,0,249,240,64,32,64,32, + 64,32,64,32,64,32,64,32,64,32,64,32,64,32,64,32, + 64,32,32,64,31,128,12,19,38,15,1,0,0,192,1,128, + 3,0,6,0,0,0,249,240,64,32,64,32,64,32,64,32, + 64,32,64,32,64,32,64,32,64,32,64,32,64,32,32,64, + 31,128,12,19,38,15,1,0,6,0,15,0,25,128,48,192, + 0,0,249,240,64,32,64,32,64,32,64,32,64,32,64,32, + 64,32,64,32,64,32,64,32,64,32,32,64,31,128,12,18, + 36,15,1,0,25,128,25,128,0,0,0,0,249,240,64,32, + 64,32,64,32,64,32,64,32,64,32,64,32,64,32,64,32, + 64,32,64,32,32,64,31,128,13,19,38,15,1,0,0,192, + 1,128,3,0,6,0,0,0,240,120,32,32,16,64,16,64, + 8,128,8,128,5,0,2,0,2,0,2,0,2,0,2,0, + 2,0,31,192,11,14,28,15,2,0,248,0,32,0,32,0, + 63,128,32,64,32,32,32,32,32,32,32,32,32,64,63,128, + 32,0,32,0,248,0,11,16,32,15,2,0,14,0,17,0, + 32,128,32,128,32,128,32,128,33,0,39,0,32,192,32,64, + 32,32,32,32,32,32,36,32,36,64,243,128,11,16,32,15, + 2,0,48,0,24,0,12,0,6,0,0,0,30,0,97,0, + 0,128,0,128,0,128,63,128,64,128,128,128,128,128,129,128, + 126,224,11,16,32,15,2,0,1,128,3,0,6,0,12,0, + 0,0,30,0,97,0,0,128,0,128,0,128,63,128,64,128, + 128,128,128,128,129,128,126,224,11,16,32,15,2,0,12,0, + 30,0,51,0,97,128,0,0,30,0,97,0,0,128,0,128, + 0,128,63,128,64,128,128,128,128,128,129,128,126,224,11,15, + 30,15,2,0,56,128,109,128,71,0,0,0,30,0,97,0, + 0,128,0,128,0,128,63,128,64,128,128,128,128,128,129,128, + 126,224,11,15,30,15,2,0,49,128,49,128,0,0,0,0, + 30,0,97,0,0,128,0,128,0,128,63,128,64,128,128,128, + 128,128,129,128,126,224,11,17,34,15,2,0,14,0,17,0, + 17,0,17,0,14,0,0,0,30,0,97,0,0,128,0,128, + 0,128,63,128,64,128,128,128,128,128,129,128,126,224,15,11, + 22,15,0,0,28,112,98,140,65,4,1,2,1,2,63,254, + 65,0,129,0,129,2,130,132,124,120,11,15,30,15,2,252, + 31,64,96,192,64,64,128,64,128,0,128,0,128,0,128,0, + 64,96,96,192,31,0,4,0,2,0,18,0,12,0,11,16, + 32,15,2,0,48,0,24,0,12,0,6,0,0,0,31,0, + 96,192,64,64,128,32,128,32,255,224,128,0,128,0,64,0, + 96,96,31,128,11,16,32,15,2,0,1,128,3,0,6,0, + 12,0,0,0,31,0,96,192,64,64,128,32,128,32,255,224, + 128,0,128,0,64,0,96,96,31,128,11,16,32,15,2,0, + 12,0,30,0,51,0,97,128,0,0,31,0,96,192,64,64, + 128,32,128,32,255,224,128,0,128,0,64,0,96,96,31,128, + 11,15,30,15,2,0,49,128,49,128,0,0,0,0,31,0, + 96,192,64,64,128,32,128,32,255,224,128,0,128,0,64,0, + 96,96,31,128,9,16,32,15,3,0,96,0,48,0,24,0, + 12,0,0,0,120,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,255,128,9,16,32,15,3,0, + 3,0,6,0,12,0,24,0,0,0,120,0,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,255,128, + 9,16,32,15,3,0,24,0,60,0,102,0,195,0,0,0, + 120,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,255,128,9,15,30,15,3,0,99,0,99,0, + 0,0,0,0,120,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,255,128,12,16,32,15,1,0, + 124,192,135,0,13,0,48,128,0,64,15,224,48,96,32,48, + 64,16,64,16,64,16,64,16,64,16,32,32,48,96,15,128, + 13,15,30,15,1,0,28,64,54,192,35,128,0,0,231,128, + 40,64,48,32,32,32,32,32,32,32,32,32,32,32,32,32, + 32,32,248,248,11,16,32,15,2,0,24,0,12,0,6,0, + 3,0,0,0,31,0,96,192,64,64,128,32,128,32,128,32, + 128,32,128,32,64,64,96,192,31,0,11,16,32,15,2,0, + 1,128,3,0,6,0,12,0,0,0,31,0,96,192,64,64, + 128,32,128,32,128,32,128,32,128,32,64,64,96,192,31,0, + 11,16,32,15,2,0,12,0,30,0,51,0,97,128,0,0, + 31,0,96,192,64,64,128,32,128,32,128,32,128,32,128,32, + 64,64,96,192,31,0,11,15,30,15,2,0,28,64,54,192, + 35,128,0,0,31,0,96,192,64,64,128,32,128,32,128,32, + 128,32,128,32,64,64,96,192,31,0,11,15,30,15,2,0, + 49,128,49,128,0,0,0,0,31,0,96,192,64,64,128,32, + 128,32,128,32,128,32,128,32,64,64,96,192,31,0,11,9, + 18,15,2,3,14,0,14,0,0,0,0,0,255,224,0,0, + 0,0,14,0,14,0,12,12,24,15,1,0,0,16,15,160, + 48,64,32,160,65,16,66,16,68,16,72,16,80,16,32,32, + 80,96,143,128,12,16,32,15,1,0,24,0,12,0,6,0, + 3,0,0,0,224,224,32,32,32,32,32,32,32,32,32,32, + 32,32,32,32,32,96,16,160,15,48,12,16,32,15,1,0, + 0,192,1,128,3,0,6,0,0,0,224,224,32,32,32,32, + 32,32,32,32,32,32,32,32,32,32,32,96,16,160,15,48, + 12,16,32,15,1,0,6,0,15,0,25,128,48,192,0,0, + 224,224,32,32,32,32,32,32,32,32,32,32,32,32,32,32, + 32,96,16,160,15,48,12,15,30,15,1,0,25,128,25,128, + 0,0,0,0,224,224,32,32,32,32,32,32,32,32,32,32, + 32,32,32,32,32,96,16,160,15,48,12,21,42,15,1,251, + 0,192,1,128,3,0,6,0,0,0,240,240,64,32,64,32, + 32,64,32,64,32,128,16,128,17,0,9,0,10,0,6,0, + 4,0,4,0,8,0,8,0,254,0,13,21,42,15,1,251, + 224,0,32,0,32,0,32,0,32,0,39,192,56,48,48,16, + 32,8,32,8,32,8,32,8,32,8,48,16,56,48,39,192, + 32,0,32,0,32,0,32,0,252,0,12,20,40,15,1,251, + 25,128,25,128,0,0,0,0,240,240,64,32,64,32,32,64, + 32,64,32,128,16,128,17,0,9,0,10,0,6,0,4,0, + 4,0,8,0,8,0,254,0}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--25-180-100-100-M-150-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 15 + Calculated Max Values w=15 h=21 x= 7 y=12 dx=15 dy= 0 ascent=17 len=40 + Font Bounding box w=23 h=32 x=-5 y=-8 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-5 + X Font ascent =16 descent=-5 + Max Font ascent =17 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR18r[2862] U8G_SECTION(".progmem.u8g_font_courR18r") = { + 0,23,32,251,248,14,3,161,7,151,32,127,251,17,251,16, + 251,0,0,0,15,0,1,2,16,16,15,6,0,192,192,192, + 192,192,192,192,192,128,128,128,0,0,0,192,192,8,7,7, + 15,3,9,231,231,231,231,66,66,66,10,17,34,15,2,255, + 9,0,9,0,9,0,9,0,9,0,9,0,127,192,18,0, + 18,0,18,0,255,128,18,0,18,0,18,0,18,0,18,0, + 18,0,9,20,40,15,3,253,8,0,8,0,8,0,30,128, + 33,128,64,128,64,0,64,0,32,0,30,0,1,0,0,128, + 0,128,128,128,193,0,190,0,8,0,8,0,8,0,8,0, + 12,16,32,15,1,0,28,0,34,0,65,0,65,0,65,0, + 34,0,28,112,3,128,28,0,225,192,2,32,4,16,4,16, + 4,16,2,32,1,192,10,13,26,15,2,0,29,0,38,0, + 32,0,32,0,16,0,48,0,73,128,137,0,134,0,130,0, + 131,0,69,0,56,192,3,7,7,15,6,8,224,224,224,224, + 224,64,64,4,19,19,15,7,253,16,32,32,64,64,64,128, + 128,128,128,128,128,128,64,64,64,32,32,16,4,19,19,15, + 3,253,128,64,64,32,32,32,16,16,16,16,16,16,16,32, + 32,32,64,64,128,9,9,18,15,3,7,8,0,8,0,8, + 0,201,128,127,0,28,0,54,0,99,0,193,128,11,11,22, + 15,2,2,4,0,4,0,4,0,4,0,4,0,255,224,4, + 0,4,0,4,0,4,0,4,0,5,6,6,15,4,253,56, + 56,112,96,192,128,10,1,2,15,2,7,255,192,3,3,3, + 15,6,0,224,224,224,9,18,36,15,3,254,0,128,0,128, + 1,0,1,0,2,0,2,0,4,0,4,0,8,0,8,0, + 16,0,16,0,32,0,32,0,64,0,64,0,128,0,128,0, + 9,15,30,15,3,0,28,0,99,0,65,0,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,65,0, + 99,0,28,0,9,15,30,15,3,0,24,0,232,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,8,0,255,128,10,15,30,15,2,0,30,0, + 97,0,128,128,128,128,0,128,0,128,1,0,2,0,4,0, + 8,0,16,0,32,0,64,0,128,64,255,192,10,15,30,15, + 2,0,62,0,65,128,0,128,0,128,0,128,1,0,30,0, + 1,128,0,64,0,64,0,64,0,64,128,64,97,128,30,0, + 10,15,30,15,2,0,3,0,5,0,9,0,9,0,17,0, + 33,0,33,0,65,0,65,0,129,0,255,192,1,0,1,0, + 1,0,15,192,10,15,30,15,2,0,127,128,64,0,64,0, + 64,0,64,0,94,0,97,128,0,128,0,64,0,64,0,64, + 0,64,0,128,193,128,62,0,9,15,30,15,3,0,15,0, + 48,0,96,0,64,0,128,0,158,0,161,0,192,128,128,128, + 128,128,128,128,128,128,64,128,97,0,30,0,9,15,30,15, + 2,0,255,128,128,128,129,0,1,0,1,0,2,0,2,0, + 2,0,2,0,4,0,4,0,4,0,8,0,8,0,8,0, + 10,15,30,15,2,0,30,0,33,0,64,128,64,128,64,128, + 64,128,33,0,63,0,64,128,128,64,128,64,128,64,64,128, + 97,128,30,0,9,15,30,15,3,0,28,0,99,0,193,128, + 128,128,128,128,128,128,65,128,98,128,28,128,0,128,0,128, + 1,0,1,0,6,0,248,0,3,11,11,15,6,0,224,224, + 224,0,0,0,0,0,224,224,224,5,14,14,15,4,253,56, + 56,56,0,0,0,0,0,56,56,112,96,192,128,11,11,22, + 15,1,2,0,96,1,128,6,0,24,0,96,0,192,0,96, + 0,24,0,6,0,1,128,0,96,12,4,8,15,1,5,255, + 240,0,0,0,0,255,240,11,11,22,15,2,2,192,0,48, + 0,12,0,3,0,0,192,0,96,0,192,3,0,12,0,48, + 0,192,0,8,14,14,15,3,0,124,130,129,1,1,1,2, + 12,16,16,0,0,24,24,10,18,36,15,2,254,30,0,97, + 0,64,128,128,128,128,128,131,128,132,128,136,128,136,128,136, + 128,136,128,132,128,131,192,128,0,128,0,64,0,97,128,31, + 0,13,14,28,15,1,0,63,0,5,0,8,128,8,128,8, + 128,16,64,16,64,16,64,63,224,32,32,32,32,64,16,64, + 16,240,120,12,14,28,15,1,0,255,192,32,32,32,16,32, + 16,32,16,32,32,63,192,32,32,32,16,32,16,32,16,32, + 16,32,32,255,192,11,14,28,15,2,0,15,32,48,160,96, + 96,64,32,128,0,128,0,128,0,128,0,128,0,128,0,64, + 32,96,96,48,192,15,0,12,14,28,15,1,0,255,128,64, + 96,64,32,64,16,64,16,64,16,64,16,64,16,64,16,64, + 16,64,16,64,32,64,96,255,128,12,14,28,15,1,0,255, + 224,32,32,32,32,32,32,34,0,34,0,62,0,34,0,34, + 0,32,16,32,16,32,16,32,16,255,240,11,14,28,15,2, + 0,255,224,32,32,32,32,32,32,34,0,34,0,62,0,34, + 0,34,0,32,0,32,0,32,0,32,0,254,0,12,14,28, + 15,1,0,15,32,48,160,96,96,64,32,128,0,128,0,128, + 0,128,0,131,240,128,32,64,32,96,32,48,64,15,128,13, + 14,28,15,1,0,248,248,32,32,32,32,32,32,32,32,32, + 32,63,224,32,32,32,32,32,32,32,32,32,32,32,32,248, + 248,9,14,28,15,3,0,255,128,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,255,128,12,14,28,15,2,0,31,240,0,128,0,128,0, + 128,0,128,0,128,0,128,0,128,128,128,128,128,128,128,129, + 0,67,0,60,0,13,14,28,15,1,0,248,240,32,64,32, + 128,33,0,34,0,36,0,44,0,50,0,33,0,32,128,32, + 64,32,64,32,32,248,120,12,14,28,15,1,0,254,0,16, + 0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,16, + 16,16,16,16,16,16,16,255,240,13,14,28,15,1,0,224, + 56,96,48,96,48,80,80,80,80,72,144,72,144,69,16,71, + 16,64,16,64,16,64,16,64,16,240,120,14,14,28,15,0, + 0,240,252,48,16,40,16,36,16,36,16,34,16,34,16,33, + 16,33,16,32,144,32,144,32,80,32,48,252,48,13,14,28, + 15,1,0,15,128,48,96,96,48,64,16,128,8,128,8,128, + 8,128,8,128,8,128,8,64,16,96,48,48,96,15,128,11, + 14,28,15,2,0,255,128,32,64,32,32,32,32,32,32,32, + 32,32,64,63,128,32,0,32,0,32,0,32,0,32,0,254, + 0,13,16,32,15,1,254,15,128,48,96,96,48,64,16,128, + 8,128,8,128,8,128,8,128,8,128,8,64,16,96,48,48, + 96,15,128,6,48,27,192,13,14,28,15,1,0,255,128,32, + 64,32,32,32,32,32,32,32,32,32,64,63,128,33,0,32, + 128,32,64,32,64,32,32,248,56,10,14,28,15,2,0,30, + 64,97,64,128,192,128,64,128,0,96,0,30,0,1,128,0, + 64,0,64,128,64,192,64,160,128,159,0,11,14,28,15,2, + 0,255,224,132,32,132,32,132,32,132,32,4,0,4,0,4, + 0,4,0,4,0,4,0,4,0,4,0,63,128,12,14,28, + 15,1,0,249,240,64,32,64,32,64,32,64,32,64,32,64, + 32,64,32,64,32,64,32,64,32,64,32,32,64,31,128,13, + 14,28,15,1,0,248,248,64,16,64,16,32,32,32,32,16, + 64,16,64,16,64,8,128,8,128,8,128,5,0,7,0,2, + 0,13,14,28,15,1,0,248,248,64,16,64,16,66,16,66, + 16,69,16,69,16,37,32,40,160,40,160,40,160,48,96,48, + 96,48,96,13,14,28,15,1,0,248,248,32,32,16,64,16, + 64,8,128,5,0,2,0,5,0,8,128,8,128,16,64,32, + 32,32,32,248,248,13,14,28,15,1,0,240,120,32,32,16, + 64,16,64,8,128,8,128,5,0,2,0,2,0,2,0,2, + 0,2,0,2,0,31,192,10,14,28,15,2,0,255,192,128, + 64,128,128,129,0,130,0,2,0,4,0,8,0,16,0,16, + 64,32,64,64,64,128,64,255,192,3,19,19,15,7,253,224, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,224,9,18,36,15,3,254,128,0,128,0,64,0,64,0, + 32,0,32,0,16,0,16,0,8,0,8,0,4,0,4,0, + 2,0,2,0,1,0,1,0,0,128,0,128,3,19,19,15, + 5,253,224,32,32,32,32,32,32,32,32,32,32,32,32,32, + 32,32,32,32,224,9,5,10,15,3,11,8,0,28,0,34, + 0,65,0,128,128,15,1,2,15,0,251,255,254,5,4,4, + 15,4,12,192,96,48,24,11,11,22,15,2,0,62,0,65, + 0,0,128,0,128,62,128,65,128,128,128,128,128,128,128,65, + 128,62,224,13,15,30,15,1,0,224,0,32,0,32,0,32, + 0,39,192,40,48,48,16,32,8,32,8,32,8,32,8,32, + 8,48,16,40,48,231,192,11,11,22,15,2,0,31,64,96, + 192,64,64,128,64,128,0,128,0,128,0,128,0,64,96,96, + 192,31,0,13,15,30,15,1,0,0,224,0,32,0,32,0, + 32,31,32,96,160,64,96,128,32,128,32,128,32,128,32,128, + 32,64,96,96,160,31,56,11,11,22,15,2,0,31,0,96, + 192,64,64,128,32,128,32,255,224,128,0,128,0,64,0,96, + 96,31,128,10,15,30,15,3,0,15,128,24,64,16,0,16, + 0,255,128,16,0,16,0,16,0,16,0,16,0,16,0,16, + 0,16,0,16,0,255,128,13,16,32,15,1,251,31,56,96, + 160,64,96,128,32,128,32,128,32,128,32,128,32,64,96,96, + 160,31,32,0,32,0,32,0,64,0,192,63,0,13,15,30, + 15,1,0,224,0,32,0,32,0,32,0,39,128,40,64,48, + 32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,248, + 248,9,16,32,15,3,0,8,0,8,0,8,0,0,0,0, + 0,120,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,255,128,8,21,21,15,3,251,2,2,2, + 0,0,255,1,1,1,1,1,1,1,1,1,1,1,1,2, + 6,248,11,15,30,15,2,0,224,0,32,0,32,0,32,0, + 35,192,33,0,34,0,36,0,40,0,56,0,36,0,34,0, + 33,0,32,128,225,224,11,15,30,15,2,0,124,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,255,224,14,11,22,15,0,0, + 238,112,49,136,33,8,33,8,33,8,33,8,33,8,33,8, + 33,8,33,8,249,140,13,11,22,15,1,0,231,128,40,64, + 48,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32, + 248,248,11,11,22,15,2,0,31,0,96,192,64,64,128,32, + 128,32,128,32,128,32,128,32,64,64,96,192,31,0,13,16, + 32,15,1,251,231,192,40,48,48,16,32,8,32,8,32,8, + 32,8,32,8,48,16,40,48,39,192,32,0,32,0,32,0, + 32,0,252,0,13,16,32,15,1,251,31,56,96,160,64,96, + 128,32,128,32,128,32,128,32,128,32,64,96,96,160,31,32, + 0,32,0,32,0,32,0,32,1,248,11,11,22,15,2,0, + 113,192,22,32,24,0,16,0,16,0,16,0,16,0,16,0, + 16,0,16,0,255,128,9,11,22,15,3,0,62,128,65,128, + 64,128,64,0,56,0,7,0,0,128,0,128,128,128,193,0, + 190,0,10,15,30,15,2,0,32,0,32,0,32,0,32,0, + 255,128,32,0,32,0,32,0,32,0,32,0,32,0,32,0, + 32,0,16,192,15,0,12,11,22,15,1,0,224,224,32,32, + 32,32,32,32,32,32,32,32,32,32,32,32,32,96,16,160, + 15,48,13,11,22,15,1,0,248,248,32,32,32,32,16,64, + 16,64,16,64,8,128,8,128,5,0,7,0,2,0,13,11, + 22,15,1,0,240,120,64,16,64,16,66,16,34,32,37,32, + 37,32,37,32,21,64,24,192,24,192,11,11,22,15,2,0, + 241,224,64,64,32,128,17,0,10,0,4,0,10,0,17,0, + 32,128,64,64,241,224,12,16,32,15,1,251,240,240,64,32, + 64,32,32,64,32,64,32,128,16,128,17,0,9,0,10,0, + 6,0,4,0,4,0,8,0,8,0,254,0,9,11,22,15, + 3,0,255,128,128,128,129,0,2,0,4,0,8,0,16,0, + 32,0,64,128,128,128,255,128,5,19,19,15,5,253,24,32, + 32,32,32,32,32,32,32,192,32,32,32,32,32,32,32,32, + 24,1,17,17,15,7,253,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,5,19,19,15,5,253,192,32, + 32,32,32,32,32,32,32,24,32,32,32,32,32,32,32,32, + 192,12,3,6,15,1,6,60,48,102,96,195,192,255}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--34-240-100-100-M-200-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 19, '1' Height: 20 + Calculated Max Values w=19 h=28 x= 9 y=17 dx=20 dy= 0 ascent=26 len=81 + Font Bounding box w=28 h=42 x=-6 y=-10 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =19 descent=-6 + X Font ascent =21 descent=-6 + Max Font ascent =26 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR24[8729] U8G_SECTION(".progmem.u8g_font_courR24") = { + 0,28,42,250,246,19,4,184,10,129,32,255,250,26,250,21, + 250,0,0,0,20,0,1,5,21,21,20,8,0,32,112,112, + 112,112,112,32,32,32,32,32,32,32,32,0,0,0,0,112, + 248,112,11,10,20,20,4,10,241,224,241,224,241,224,241,224, + 241,224,96,192,96,192,64,128,64,128,64,128,13,23,46,20, + 3,254,4,64,4,64,4,64,4,64,12,192,8,128,8,128, + 8,128,127,248,8,128,8,128,8,128,8,128,8,128,255,240, + 8,128,8,128,8,128,9,128,17,0,17,0,17,0,17,0, + 12,25,50,20,4,253,4,0,4,0,4,0,31,32,113,224, + 64,96,128,32,128,0,192,0,96,0,60,0,7,128,0,224, + 0,48,0,16,0,16,128,48,192,96,241,192,159,0,4,0, + 4,0,4,0,4,0,4,0,15,20,40,20,3,0,30,0, + 51,0,97,128,64,128,64,128,97,128,51,0,30,14,0,112, + 3,128,28,0,224,0,1,224,3,48,6,24,4,8,4,8, + 6,24,3,48,1,224,12,17,34,20,3,0,15,192,25,128, + 48,0,32,0,32,0,48,0,16,0,24,0,60,0,100,48, + 70,96,194,64,131,64,193,192,65,128,99,192,62,112,4,11, + 11,20,8,10,112,112,112,112,112,224,224,224,224,224,224,5, + 25,25,20,9,252,8,24,16,48,32,96,96,64,64,192,192, + 192,192,192,192,192,64,64,96,96,32,48,16,24,8,5,25, + 25,20,5,252,128,192,64,96,32,48,48,16,16,24,24,24, + 24,24,24,24,16,16,48,48,32,96,64,192,128,11,13,26, + 20,4,8,4,0,4,0,4,0,4,0,132,32,245,224,31, + 0,14,0,10,0,27,0,49,128,32,128,96,192,15,17,34, + 20,2,1,1,0,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,255,254,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,1,0,6,9,9,20,5,252,60,60,120,120,96, + 224,192,192,128,15,1,2,20,2,9,255,254,5,4,4,20, + 7,0,112,248,248,112,11,25,50,20,4,253,0,32,0,96, + 0,64,0,64,0,192,0,128,1,128,1,0,3,0,2,0, + 2,0,6,0,4,0,12,0,8,0,8,0,24,0,16,0, + 48,0,32,0,96,0,64,0,64,0,192,0,128,0,11,20, + 40,20,4,0,31,0,49,128,96,192,64,64,64,64,128,32, + 128,32,128,32,128,32,128,32,128,32,128,32,128,32,128,32, + 192,96,64,64,64,64,96,192,49,128,31,0,11,20,40,20, + 4,0,12,0,60,0,228,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,255,224,13,20,40,20,3,0, + 15,192,48,96,96,16,64,16,64,16,0,16,0,48,0,32, + 0,96,0,192,1,128,3,0,6,0,12,0,24,0,48,0, + 96,0,192,0,128,8,255,248,13,20,40,20,3,0,15,128, + 56,224,96,48,0,16,0,16,0,16,0,16,0,32,0,64, + 7,128,0,96,0,16,0,8,0,8,0,8,0,8,0,24, + 192,48,112,224,31,128,13,20,40,20,3,0,0,192,1,64, + 1,64,2,64,6,64,4,64,8,64,24,64,16,64,32,64, + 96,64,64,64,128,64,255,248,0,64,0,64,0,64,0,64, + 0,64,3,248,13,20,40,20,3,0,63,240,32,0,32,0, + 32,0,32,0,32,0,32,0,39,128,60,224,32,48,0,16, + 0,24,0,8,0,8,0,8,0,24,192,16,96,48,56,224, + 15,128,12,20,40,20,4,0,7,192,28,32,48,0,32,0, + 96,0,64,0,192,0,143,128,184,224,160,32,192,48,192,16, + 192,16,192,16,192,16,64,16,96,48,32,32,56,224,15,128, + 11,20,40,20,4,0,255,224,128,32,128,32,0,96,0,64, + 0,64,0,192,0,128,0,128,1,128,1,0,1,0,3,0, + 2,0,2,0,2,0,6,0,4,0,4,0,4,0,11,20, + 40,20,4,0,31,0,96,192,64,64,192,96,128,32,128,32, + 192,96,64,64,49,128,31,0,113,192,64,64,192,96,128,32, + 128,32,128,32,192,96,64,64,113,192,31,0,12,20,40,20, + 4,0,31,0,112,192,64,96,192,32,128,48,128,48,128,48, + 128,48,192,80,64,208,115,144,30,16,0,32,0,32,0,32, + 0,64,0,192,1,128,14,0,120,0,5,14,14,20,7,0, + 112,248,248,112,0,0,0,0,0,0,112,248,248,112,7,18, + 18,20,5,252,28,62,62,28,0,0,0,0,0,60,60,120, + 112,112,224,192,192,128,15,17,34,20,2,1,0,2,0,14, + 0,56,0,224,3,128,6,0,28,0,112,0,192,0,112,0, + 28,0,6,0,3,128,0,224,0,56,0,14,0,2,15,6, + 12,20,2,6,255,254,0,0,0,0,0,0,0,0,255,254, + 15,17,34,20,2,1,128,0,224,0,56,0,14,0,3,128, + 0,192,0,112,0,28,0,6,0,28,0,112,0,192,3,128, + 14,0,56,0,224,0,128,0,11,19,38,20,4,0,63,0, + 225,192,128,64,128,64,0,96,0,32,0,96,0,64,1,192, + 7,0,4,0,4,0,4,0,0,0,0,0,0,0,14,0, + 31,0,14,0,12,23,46,20,3,254,15,128,24,192,48,64, + 96,96,64,32,192,32,128,32,128,224,131,160,134,32,132,32, + 132,32,132,32,134,32,131,32,129,240,128,0,192,0,64,0, + 96,0,48,0,24,224,15,128,19,19,57,20,0,0,31,224, + 0,0,160,0,0,160,0,1,16,0,1,16,0,1,16,0, + 2,8,0,2,8,0,2,8,0,4,4,0,4,4,0,4, + 4,0,15,254,0,8,2,0,8,2,0,16,1,0,16,1, + 0,48,1,128,254,15,224,16,19,38,20,1,0,255,240,16, + 12,16,4,16,6,16,2,16,2,16,6,16,4,16,12,31, + 248,16,6,16,2,16,3,16,1,16,1,16,3,16,2,16, + 6,255,248,14,19,38,20,2,0,7,196,28,116,32,12,96, + 4,64,4,192,4,128,0,128,0,128,0,128,0,128,0,128, + 0,128,0,192,0,64,0,96,4,32,28,28,112,7,192,15, + 19,38,20,1,0,255,192,32,112,32,24,32,12,32,4,32, + 6,32,2,32,2,32,2,32,2,32,2,32,2,32,2,32, + 6,32,4,32,12,32,24,32,112,255,192,15,19,38,20,1, + 0,255,252,16,4,16,4,16,4,16,4,16,68,16,64,16, + 64,31,192,16,64,16,64,16,64,16,0,16,2,16,2,16, + 2,16,2,16,2,255,254,15,19,38,20,1,0,255,254,16, + 2,16,2,16,2,16,2,16,66,16,64,16,64,31,192,16, + 64,16,64,16,64,16,0,16,0,16,0,16,0,16,0,16, + 0,255,128,15,19,38,20,2,0,7,196,28,116,48,12,96, + 4,64,4,192,4,128,0,128,0,128,0,128,0,128,0,128, + 254,128,4,192,4,64,4,96,4,48,4,28,28,7,240,15, + 19,38,20,2,0,252,126,32,8,32,8,32,8,32,8,32, + 8,32,8,32,8,32,8,63,248,32,8,32,8,32,8,32, + 8,32,8,32,8,32,8,32,8,252,126,11,19,38,20,4, + 0,255,224,4,0,4,0,4,0,4,0,4,0,4,0,4, + 0,4,0,4,0,4,0,4,0,4,0,4,0,4,0,4, + 0,4,0,4,0,255,224,15,19,38,20,3,0,15,254,0, + 32,0,32,0,32,0,32,0,32,0,32,0,32,0,32,0, + 32,0,32,128,32,128,32,128,32,128,32,192,96,64,64,97, + 192,31,0,17,19,57,20,1,0,254,31,128,16,4,0,16, + 12,0,16,8,0,16,16,0,16,48,0,16,64,0,16,192, + 0,19,128,0,28,192,0,16,32,0,16,48,0,16,16,0, + 16,24,0,16,8,0,16,8,0,16,12,0,16,4,0,254, + 7,128,15,19,38,20,2,0,255,128,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,2,8,2,8,2,8,2,8,2,8,2,255,254,19,19, + 57,20,0,0,248,3,224,40,2,128,40,2,128,36,4,128, + 36,4,128,34,8,128,34,8,128,33,16,128,33,16,128,33, + 16,128,32,160,128,32,160,128,32,64,128,32,64,128,32,0, + 128,32,0,128,32,0,128,32,0,128,254,7,224,18,19,57, + 20,0,0,248,31,192,28,1,0,20,1,0,18,1,0,18, + 1,0,17,1,0,16,129,0,16,129,0,16,65,0,16,65, + 0,16,33,0,16,33,0,16,17,0,16,17,0,16,9,0, + 16,9,0,16,5,0,16,7,0,127,3,0,15,19,38,20, + 2,0,7,192,24,48,48,24,96,12,64,4,192,6,128,2, + 128,2,128,2,128,2,128,2,128,2,128,2,192,6,64,4, + 96,12,48,24,24,48,7,192,15,19,38,20,1,0,255,224, + 16,56,16,4,16,6,16,2,16,2,16,2,16,6,16,4, + 16,56,31,224,16,0,16,0,16,0,16,0,16,0,16,0, + 16,0,255,192,15,22,44,20,2,253,7,192,28,112,48,24, + 96,12,64,4,192,6,128,2,128,2,128,2,128,2,128,2, + 128,2,128,2,192,6,64,4,96,12,56,56,12,96,7,192, + 2,0,15,198,24,124,18,19,57,20,1,0,255,224,0,16, + 56,0,16,4,0,16,6,0,16,2,0,16,2,0,16,6, + 0,16,4,0,16,24,0,31,224,0,16,96,0,16,48,0, + 16,24,0,16,12,0,16,4,0,16,6,0,16,2,0,16, + 3,0,254,1,192,12,19,38,20,3,0,15,144,56,208,96, + 48,64,48,64,16,64,16,64,0,96,0,56,0,15,0,1, + 192,0,96,0,48,128,16,128,16,192,16,224,48,184,224,143, + 128,15,19,38,20,2,0,255,254,129,2,129,2,129,2,129, + 2,129,2,129,2,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,1,0,1,0,1,0,1,0,63,248,17,19,57, + 20,1,0,254,63,128,32,2,0,32,2,0,32,2,0,32, + 2,0,32,2,0,32,2,0,32,2,0,32,2,0,32,2, + 0,32,2,0,32,2,0,32,2,0,32,2,0,48,6,0, + 16,4,0,24,12,0,14,56,0,3,224,0,19,19,57,20, + 0,0,254,15,224,48,1,128,16,1,0,16,1,0,24,3, + 0,8,2,0,8,2,0,12,6,0,4,4,0,4,4,0, + 6,12,0,2,8,0,3,24,0,1,16,0,1,16,0,0, + 160,0,0,160,0,0,224,0,0,64,0,17,19,57,20,1, + 0,252,31,128,64,1,0,64,1,0,64,1,0,64,1,0, + 97,195,0,33,66,0,33,66,0,34,34,0,34,34,0,34, + 34,0,34,34,0,38,50,0,36,18,0,52,22,0,20,20, + 0,20,20,0,24,12,0,24,12,0,17,19,57,20,1,0, + 124,31,0,48,6,0,16,4,0,24,12,0,8,8,0,4, + 16,0,2,32,0,3,96,0,1,192,0,0,128,0,1,192, + 0,2,32,0,4,16,0,12,24,0,8,8,0,16,4,0, + 48,6,0,96,3,0,252,31,128,15,19,38,20,2,0,248, + 62,96,12,48,24,16,16,24,48,8,32,4,64,6,192,2, + 128,3,128,1,0,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,31,240,13,19,38,20,3,0,127,240,64,16,64, + 48,64,32,64,96,64,192,0,128,1,128,3,0,6,0,4, + 0,12,0,24,8,16,8,48,8,96,8,64,8,192,8,255, + 248,5,24,24,20,9,252,248,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,248,11, + 25,50,20,4,253,128,0,192,0,64,0,64,0,96,0,32, + 0,48,0,16,0,24,0,8,0,8,0,12,0,4,0,6, + 0,2,0,2,0,3,0,1,0,1,128,0,128,0,192,0, + 64,0,64,0,96,0,32,5,24,24,20,5,252,248,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,248,11,9,18,20,4,12,4,0,14,0,27, + 0,17,0,49,128,96,192,64,64,192,96,128,32,19,1,3, + 20,0,250,255,255,224,6,5,5,20,4,17,192,96,48,24, + 12,15,14,28,20,2,0,15,128,56,224,0,32,0,48,0, + 16,0,16,31,240,112,48,192,16,128,16,128,16,128,48,192, + 240,127,158,17,20,60,20,0,0,240,0,0,16,0,0,16, + 0,0,16,0,0,16,0,0,16,0,0,17,248,0,23,14, + 0,20,3,0,24,1,0,24,1,128,16,0,128,16,0,128, + 16,0,128,16,0,128,24,1,128,24,1,0,20,3,0,23, + 14,0,241,248,0,14,14,28,20,3,0,15,136,56,248,96, + 24,64,8,192,8,128,0,128,0,128,0,128,0,192,0,64, + 12,96,24,56,224,15,128,17,20,60,20,2,0,0,60,0, + 0,4,0,0,4,0,0,4,0,0,4,0,0,4,0,15, + 196,0,56,116,0,96,20,0,64,12,0,192,12,0,128,4, + 0,128,4,0,128,4,0,128,4,0,192,12,0,64,12,0, + 96,20,0,56,116,0,15,199,128,14,14,28,20,2,0,15, + 192,56,112,96,24,64,8,192,12,128,4,255,252,128,0,128, + 0,192,0,64,0,96,12,56,56,15,224,13,20,40,20,3, + 0,3,224,6,24,4,0,12,0,8,0,8,0,255,240,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,255,240,17,20,60,20,2,250,15, + 199,128,56,116,0,96,20,0,64,12,0,192,12,0,128,4, + 0,128,4,0,128,4,0,128,4,0,192,12,0,64,12,0, + 96,20,0,56,116,0,15,196,0,0,4,0,0,4,0,0, + 12,0,0,8,0,0,56,0,15,224,0,16,20,40,20,1, + 0,240,0,16,0,16,0,16,0,16,0,16,0,17,224,23, + 56,20,8,24,12,24,4,16,4,16,4,16,4,16,4,16, + 4,16,4,16,4,16,4,124,31,13,20,40,20,3,0,6, + 0,6,0,6,0,0,0,0,0,0,0,126,0,2,0,2, + 0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2, + 0,2,0,2,0,255,248,10,26,52,20,4,250,1,128,1, + 128,1,128,0,0,0,0,0,0,255,192,0,64,0,64,0, + 64,0,64,0,64,0,64,0,64,0,64,0,64,0,64,0, + 64,0,64,0,64,0,64,0,64,0,192,0,128,3,128,254, + 0,15,20,40,20,2,0,240,0,16,0,16,0,16,0,16, + 0,16,0,16,252,16,48,16,96,16,192,17,128,19,0,30, + 0,19,0,17,128,16,192,16,96,16,48,16,24,240,62,13, + 20,40,20,3,0,126,0,2,0,2,0,2,0,2,0,2, + 0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2, + 0,2,0,2,0,2,0,2,0,2,0,255,248,19,14,42, + 20,0,0,231,14,0,41,147,0,48,225,128,48,96,128,32, + 64,128,32,64,128,32,64,128,32,64,128,32,64,128,32,64, + 128,32,64,128,32,64,128,32,64,128,248,112,224,15,14,28, + 20,2,0,227,192,46,112,40,16,48,24,48,8,32,8,32, + 8,32,8,32,8,32,8,32,8,32,8,32,8,248,62,15, + 14,28,20,2,0,15,224,56,56,96,12,64,4,192,6,128, + 2,128,2,128,2,128,2,192,6,64,4,96,12,56,56,15, + 224,17,20,60,20,0,250,1,248,0,247,14,0,20,3,0, + 24,1,0,24,1,128,16,0,128,16,0,128,16,0,128,16, + 0,128,24,1,128,24,1,0,20,3,0,23,14,0,17,248, + 0,16,0,0,16,0,0,16,0,0,16,0,0,16,0,0, + 255,0,0,17,20,60,20,2,250,15,192,0,56,119,128,96, + 28,0,64,12,0,192,12,0,128,4,0,128,4,0,128,4, + 0,128,4,0,192,12,0,64,12,0,96,28,0,56,116,0, + 15,196,0,0,4,0,0,4,0,0,4,0,0,4,0,0, + 4,0,0,127,128,15,14,28,20,3,0,120,124,9,198,11, + 0,12,0,12,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,255,240,13,14,28,20,3,0,15,144,56, + 240,96,48,64,16,96,0,56,0,15,128,0,224,0,48,128, + 24,128,24,192,48,248,224,143,128,14,19,38,20,2,0,16, + 0,16,0,16,0,16,0,16,0,255,240,16,0,16,0,16, + 0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,24, + 12,12,56,7,224,16,14,28,20,1,0,240,60,16,4,16, + 4,16,4,16,4,16,4,16,4,16,4,16,4,16,4,16, + 12,24,12,12,52,7,231,17,14,42,20,1,0,252,31,128, + 48,6,0,16,4,0,16,4,0,24,12,0,8,8,0,12, + 24,0,4,16,0,4,16,0,6,48,0,2,32,0,3,96, + 0,1,64,0,1,192,0,17,14,42,20,1,0,248,15,128, + 96,3,0,32,2,0,32,2,0,33,194,0,33,66,0,49, + 70,0,19,100,0,18,36,0,18,36,0,22,52,0,28,28, + 0,8,8,0,8,8,0,15,14,28,20,2,0,248,62,96, + 12,48,24,24,48,12,96,6,192,3,128,3,128,6,192,12, + 96,24,48,48,24,96,12,248,62,15,20,40,20,2,250,248, + 62,64,4,96,12,32,8,48,24,16,16,24,48,8,32,12, + 96,4,64,6,192,2,128,3,128,1,0,3,0,2,0,2, + 0,6,0,4,0,255,128,11,14,28,20,4,0,255,224,128, + 96,128,192,129,128,3,0,6,0,4,0,12,0,24,0,48, + 0,96,32,64,32,192,32,255,224,7,25,25,20,6,252,6, + 12,24,16,16,16,16,16,16,16,16,48,96,224,48,16,16, + 16,16,16,16,16,16,24,14,1,25,25,20,9,252,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,7,25,25,20,6,252,192,96,48, + 16,16,16,16,16,16,16,16,24,12,14,24,16,16,16,16, + 16,16,16,16,48,224,13,5,10,20,3,7,24,0,124,8, + 199,24,129,176,0,224,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,0,0,20,0,1,5,20,20, + 20,7,250,112,248,112,0,0,0,0,32,32,32,32,32,32, + 32,112,112,112,112,112,32,11,20,40,20,4,0,4,0,4, + 0,4,0,4,0,31,128,48,224,96,32,192,32,128,0,128, + 0,128,0,128,0,192,0,96,32,48,224,31,128,4,0,4, + 0,4,0,4,0,14,19,38,20,2,0,3,224,12,48,8, + 24,24,0,16,0,16,0,16,0,24,0,8,0,255,128,8, + 0,8,0,8,0,8,0,8,0,24,0,16,4,48,12,127, + 248,13,13,26,20,3,3,192,24,111,176,56,224,32,32,96, + 48,64,16,64,16,64,16,96,48,32,32,56,224,111,176,192, + 24,15,19,38,20,2,0,248,62,96,12,48,24,16,16,24, + 48,8,32,12,96,6,192,2,128,3,128,63,248,1,0,1, + 0,63,248,1,0,1,0,1,0,1,0,31,240,1,25,25, + 20,9,252,128,128,128,128,128,128,128,128,128,128,128,0,0, + 0,0,128,128,128,128,128,128,128,128,128,128,14,23,46,20, + 3,254,7,248,28,8,16,8,16,8,16,0,24,0,124,0, + 198,0,131,0,129,192,192,96,112,56,24,12,12,4,7,4, + 1,132,0,252,0,96,0,32,64,32,64,32,64,224,127,128, + 10,3,6,20,5,17,97,128,243,192,97,128,19,19,57,20, + 0,0,1,240,0,7,28,0,28,7,0,48,1,128,33,232, + 128,99,24,192,70,8,64,204,8,96,136,0,32,136,0,32, + 136,0,32,140,0,32,198,12,96,67,24,64,97,240,192,48, + 1,128,24,3,0,15,30,0,1,240,0,9,12,24,20,5, + 7,60,0,102,0,2,0,2,0,126,0,198,0,130,0,206, + 0,123,128,0,0,0,0,255,128,16,14,28,20,2,0,1, + 131,3,6,6,12,12,24,24,48,48,96,96,192,225,192,96, + 192,48,96,24,48,12,24,6,12,3,6,14,6,12,20,3, + 6,255,252,0,4,0,4,0,4,0,4,0,4,15,1,2, + 20,2,9,255,254,19,19,57,20,0,0,3,248,0,14,14, + 0,24,3,0,48,1,128,103,224,192,66,48,64,194,24,96, + 130,8,32,130,8,32,130,24,32,130,48,32,131,224,32,194, + 48,96,66,24,64,103,12,192,48,1,128,24,3,0,14,14, + 0,3,248,0,9,2,4,20,5,17,255,128,255,128,9,10, + 20,20,5,11,62,0,99,0,65,0,193,128,128,128,128,128, + 193,128,65,0,99,0,62,0,15,16,32,20,2,1,1,0, + 1,0,1,0,1,0,1,0,1,0,255,254,1,0,1,0, + 1,0,1,0,1,0,1,0,0,0,0,0,255,254,8,14, + 14,20,5,7,60,102,67,193,3,2,6,12,24,16,48,96, + 193,255,8,14,14,20,6,7,60,102,195,1,1,6,28,6, + 3,1,1,195,102,60,6,5,5,20,9,17,12,24,48,96, + 192,16,20,40,20,1,250,240,60,16,4,16,4,16,4,16, + 4,16,4,16,4,16,4,16,4,16,4,24,12,24,28,28, + 52,23,231,16,0,16,0,16,0,16,0,16,0,16,0,15, + 23,46,20,2,254,15,254,57,16,113,16,97,16,225,16,193, + 16,193,16,225,16,97,16,113,16,61,16,15,16,1,16,1, + 16,1,16,1,16,1,16,1,16,1,16,1,16,1,16,1, + 16,31,190,5,4,4,20,7,7,112,248,248,112,5,5,5, + 20,7,251,32,32,48,152,240,7,14,14,20,6,7,112,208, + 16,16,16,16,16,16,16,16,16,16,16,254,9,12,24,20, + 5,7,28,0,119,0,65,0,193,128,128,128,193,128,65,0, + 119,0,28,0,0,0,0,0,255,128,16,14,28,20,2,0, + 193,128,96,192,48,96,24,48,12,24,6,12,3,6,3,135, + 3,6,6,12,12,24,24,48,48,96,96,192,18,21,63,20, + 1,0,48,0,192,240,0,128,16,1,128,16,3,0,16,2, + 0,16,6,0,16,12,0,16,8,0,16,24,0,16,48,0, + 16,35,0,16,103,0,254,197,0,0,141,0,1,153,0,3, + 17,0,2,49,0,6,63,128,12,1,0,8,1,0,24,7, + 128,18,21,63,20,1,0,48,0,128,240,1,128,16,3,0, + 16,6,0,16,4,0,16,12,0,16,24,0,16,16,0,16, + 48,0,16,96,0,16,71,128,16,204,192,253,152,64,3,0, + 192,2,0,128,6,1,128,12,7,0,8,12,0,24,24,0, + 48,48,0,96,63,192,19,21,63,20,0,0,60,0,0,102, + 0,96,3,0,192,3,1,128,6,3,0,28,6,0,6,12, + 0,3,8,0,1,24,0,1,48,0,195,33,128,102,99,128, + 60,194,128,1,134,128,1,12,128,3,8,128,6,24,128,12, + 31,192,24,0,128,48,0,128,0,3,192,11,20,40,20,4, + 250,14,0,31,0,14,0,0,0,0,0,0,0,0,0,4, + 0,4,0,12,0,24,0,112,0,64,0,192,0,128,0,128, + 0,192,32,96,32,49,224,31,0,19,26,78,20,0,0,6, + 0,0,3,0,0,1,128,0,0,192,0,0,96,0,0,0, + 0,0,0,0,31,224,0,0,160,0,1,176,0,1,16,0, + 1,16,0,3,24,0,2,8,0,2,8,0,6,12,0,4, + 4,0,4,4,0,12,6,0,15,254,0,8,2,0,24,3, + 0,16,1,0,16,1,0,48,1,128,254,15,224,19,26,78, + 20,0,0,0,12,0,0,24,0,0,48,0,0,96,0,0, + 192,0,0,0,0,0,0,0,31,224,0,0,160,0,1,176, + 0,1,16,0,1,16,0,3,24,0,2,8,0,2,8,0, + 6,12,0,4,4,0,4,4,0,12,6,0,15,254,0,8, + 2,0,24,3,0,16,1,0,16,1,0,48,1,128,254,15, + 224,19,26,78,20,0,0,0,64,0,0,224,0,1,176,0, + 3,24,0,6,12,0,0,0,0,0,0,0,31,224,0,0, + 160,0,1,176,0,1,16,0,1,16,0,3,24,0,2,8, + 0,2,8,0,6,12,0,4,4,0,4,4,0,12,6,0, + 15,254,0,8,2,0,24,3,0,16,1,0,16,1,0,48, + 1,128,254,15,224,19,24,72,20,0,0,3,132,0,6,236, + 0,4,56,0,0,0,0,0,0,0,31,224,0,0,160,0, + 1,176,0,1,16,0,1,16,0,3,24,0,2,8,0,2, + 8,0,6,12,0,4,4,0,4,4,0,12,6,0,15,254, + 0,8,2,0,24,3,0,16,1,0,16,1,0,48,1,128, + 254,15,224,19,24,72,20,0,0,6,12,0,15,30,0,6, + 12,0,0,0,0,0,0,0,31,224,0,0,160,0,1,176, + 0,1,16,0,1,16,0,3,24,0,2,8,0,2,8,0, + 6,12,0,4,4,0,4,4,0,12,6,0,15,254,0,8, + 2,0,24,3,0,16,1,0,16,1,0,48,1,128,254,15, + 224,19,26,78,20,0,0,0,224,0,1,176,0,1,16,0, + 1,16,0,1,176,0,0,224,0,0,0,0,31,224,0,0, + 160,0,1,176,0,1,16,0,1,16,0,3,24,0,2,8, + 0,2,8,0,6,12,0,4,4,0,4,4,0,12,6,0, + 15,254,0,8,2,0,24,3,0,16,1,0,16,1,0,48, + 1,128,254,15,224,18,19,57,20,1,0,31,255,128,2,64, + 128,2,64,128,6,64,128,4,64,128,4,64,128,4,64,0, + 12,68,0,8,68,0,8,124,0,8,68,0,24,68,0,31, + 192,0,16,64,0,48,64,64,32,64,64,32,64,64,32,64, + 64,251,255,192,15,24,48,20,2,251,7,196,28,116,48,12, + 96,12,64,4,192,4,128,0,128,0,128,0,128,0,128,0, + 128,0,128,0,192,0,64,2,96,4,48,28,28,112,7,192, + 1,0,1,0,1,128,4,192,7,128,15,26,52,20,1,0, + 12,0,6,0,3,0,1,128,0,192,0,0,0,0,255,252, + 16,4,16,4,16,4,16,4,16,4,16,64,16,64,16,64, + 31,192,16,64,16,64,16,0,16,2,16,2,16,2,16,2, + 16,2,255,254,15,26,52,20,1,0,0,48,0,96,0,192, + 1,128,3,0,0,0,0,0,255,252,16,4,16,4,16,4, + 16,4,16,4,16,64,16,64,16,64,31,192,16,64,16,64, + 16,0,16,2,16,2,16,2,16,2,16,2,255,254,15,26, + 52,20,1,0,0,128,1,192,3,96,6,48,12,24,0,0, + 0,0,255,252,16,4,16,4,16,4,16,4,16,4,16,64, + 16,64,16,64,31,192,16,64,16,64,16,0,16,2,16,2, + 16,2,16,2,16,2,255,254,15,24,48,20,1,0,12,48, + 30,120,12,48,0,0,0,0,255,252,16,4,16,4,16,4, + 16,4,16,4,16,64,16,64,16,64,31,192,16,64,16,64, + 16,0,16,2,16,2,16,2,16,2,16,2,255,254,11,26, + 52,20,4,0,48,0,24,0,12,0,6,0,3,0,0,0, + 0,0,255,224,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,255,224,11,26,52,20,4,0,0,192, + 1,128,3,0,6,0,12,0,0,0,0,0,255,224,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 255,224,11,26,52,20,4,0,4,0,14,0,27,0,49,128, + 96,192,0,0,0,0,255,224,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,255,224,11,24,48,20, + 4,0,96,192,241,224,96,192,0,0,0,0,255,224,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 255,224,15,19,38,20,1,0,255,192,32,112,32,24,32,12, + 32,4,32,6,32,2,32,2,32,2,254,2,32,2,32,2, + 32,2,32,6,32,4,32,12,32,24,32,112,255,192,18,24, + 72,20,0,0,3,132,0,6,236,0,4,56,0,0,0,0, + 0,0,0,248,31,192,28,1,0,20,1,0,22,1,0,18, + 1,0,19,1,0,17,129,0,16,129,0,16,193,0,16,65, + 0,16,97,0,16,33,0,16,49,0,16,25,0,16,9,0, + 16,13,0,16,5,0,16,7,0,127,3,0,15,26,52,20, + 2,0,24,0,12,0,6,0,3,0,1,128,0,0,0,0, + 7,192,28,112,48,24,96,12,64,4,192,6,128,2,128,2, + 128,2,128,2,128,2,128,2,192,6,64,4,96,12,32,8, + 48,24,28,112,7,192,15,26,52,20,2,0,0,24,0,48, + 0,96,0,192,1,128,0,0,0,0,7,192,28,112,48,24, + 96,12,64,4,192,6,128,2,128,2,128,2,128,2,128,2, + 128,2,192,6,64,4,96,12,32,8,48,24,28,112,7,192, + 15,26,52,20,2,0,1,0,3,128,6,192,12,96,24,48, + 0,0,0,0,7,192,28,112,48,24,96,12,64,4,192,6, + 128,2,128,2,128,2,128,2,128,2,128,2,192,6,64,4, + 96,12,32,8,48,24,28,112,7,192,15,24,48,20,2,0, + 14,16,27,176,16,224,0,0,0,0,7,192,28,112,48,24, + 96,12,64,4,192,6,128,2,128,2,128,2,128,2,128,2, + 128,2,192,6,64,4,96,12,32,8,48,24,28,112,7,192, + 15,24,48,20,2,0,48,48,120,120,48,48,0,0,0,0, + 7,192,28,112,48,24,96,12,64,4,192,6,128,2,128,2, + 128,2,128,2,128,2,128,2,192,6,64,4,96,12,32,8, + 48,24,28,112,7,192,13,14,28,20,3,1,128,8,192,24, + 96,48,48,96,24,192,13,128,7,0,7,0,13,128,24,192, + 48,96,96,48,192,24,128,8,16,21,42,20,2,255,0,1, + 7,195,28,118,48,28,32,24,96,60,64,36,192,102,128,194, + 129,130,129,2,131,2,134,2,204,6,72,4,120,12,48,8, + 48,24,124,48,199,224,128,0,17,26,78,20,1,0,6,0, + 0,3,0,0,1,128,0,0,192,0,0,96,0,0,0,0, + 0,0,0,254,63,128,32,2,0,32,2,0,32,2,0,32, + 2,0,32,2,0,32,2,0,32,2,0,32,2,0,32,2, + 0,32,2,0,32,2,0,32,2,0,32,2,0,48,6,0, + 16,4,0,24,12,0,14,56,0,3,224,0,17,26,78,20, + 1,0,0,24,0,0,48,0,0,96,0,0,192,0,1,128, + 0,0,0,0,0,0,0,254,63,128,32,2,0,32,2,0, + 32,2,0,32,2,0,32,2,0,32,2,0,32,2,0,32, + 2,0,32,2,0,32,2,0,32,2,0,32,2,0,32,2, + 0,48,6,0,16,4,0,24,12,0,14,56,0,3,224,0, + 17,26,78,20,1,0,0,128,0,1,192,0,3,96,0,6, + 48,0,12,24,0,0,0,0,0,0,0,254,63,128,32,2, + 0,32,2,0,32,2,0,32,2,0,32,2,0,32,2,0, + 32,2,0,32,2,0,32,2,0,32,2,0,32,2,0,32, + 2,0,32,2,0,48,6,0,16,4,0,24,12,0,14,56, + 0,3,224,0,17,24,72,20,1,0,12,24,0,30,60,0, + 12,24,0,0,0,0,0,0,0,254,63,128,32,2,0,32, + 2,0,32,2,0,32,2,0,32,2,0,32,2,0,32,2, + 0,32,2,0,32,2,0,32,2,0,32,2,0,32,2,0, + 32,2,0,48,6,0,16,4,0,24,12,0,14,56,0,3, + 224,0,15,26,52,20,2,0,0,48,0,96,0,192,1,128, + 3,0,0,0,0,0,248,62,96,12,48,24,16,16,24,48, + 8,32,12,96,6,192,2,128,3,128,1,0,1,0,1,0, + 1,0,1,0,1,0,1,0,1,0,31,240,16,19,38,20, + 1,0,254,0,16,0,16,0,16,0,31,224,16,60,16,6, + 16,2,16,3,16,3,16,2,16,6,16,60,31,224,16,0, + 16,0,16,0,16,0,254,0,15,21,42,20,1,0,7,192, + 12,96,8,32,24,48,16,16,16,16,16,16,16,48,16,96, + 17,192,16,112,16,24,16,4,16,6,16,2,16,2,16,2, + 17,6,17,4,17,140,248,248,15,22,44,20,2,0,24,0, + 12,0,6,0,3,0,1,128,0,0,0,0,0,0,15,128, + 56,224,0,32,0,48,0,16,0,16,31,240,112,48,192,16, + 128,16,128,16,128,48,192,240,127,158,15,22,44,20,2,0, + 0,96,0,192,1,128,3,0,6,0,0,0,0,0,0,0, + 15,128,56,224,0,32,0,48,0,16,0,16,31,240,112,48, + 192,16,128,16,128,16,128,48,192,240,127,158,15,22,44,20, + 2,0,1,0,3,128,6,192,12,96,24,48,0,0,0,0, + 0,0,15,128,56,224,0,32,0,48,0,16,0,16,31,240, + 112,48,192,16,128,16,128,16,128,48,192,240,127,158,15,20, + 40,20,2,0,14,16,27,176,16,224,0,0,0,0,0,0, + 15,128,56,224,0,32,0,48,0,16,0,16,31,240,112,48, + 192,16,128,16,128,16,128,48,192,240,127,158,15,20,40,20, + 2,0,48,192,121,224,48,192,0,0,0,0,0,0,15,128, + 56,224,0,32,0,48,0,16,0,16,31,240,112,48,192,16, + 128,16,128,16,128,48,192,240,127,158,15,23,46,20,2,0, + 7,0,13,128,8,128,8,128,13,128,7,0,0,0,0,0, + 0,0,15,128,56,224,0,32,0,48,0,16,0,16,31,240, + 112,48,192,16,128,16,128,16,128,48,192,240,127,158,19,14, + 42,20,0,0,31,15,128,113,152,192,0,240,64,0,96,96, + 0,96,32,30,64,32,115,255,224,192,192,0,128,64,0,128, + 96,0,128,224,0,193,80,96,99,88,192,62,79,128,14,19, + 38,20,3,251,15,200,56,104,96,24,64,24,192,8,128,8, + 128,0,128,0,128,0,192,0,64,4,96,28,56,112,15,192, + 2,0,2,0,3,0,9,128,15,0,14,22,44,20,2,0, + 24,0,12,0,6,0,3,0,1,128,0,0,0,0,0,0, + 15,192,56,112,96,24,64,8,192,12,128,4,255,252,128,0, + 128,0,128,0,192,0,96,12,56,56,15,224,14,22,44,20, + 2,0,0,48,0,96,0,192,1,128,3,0,0,0,0,0, + 0,0,15,192,56,112,96,24,64,8,192,12,128,4,255,252, + 128,0,128,0,128,0,192,0,96,12,56,56,15,224,14,22, + 44,20,2,0,1,0,3,128,6,192,12,96,24,48,0,0, + 0,0,0,0,15,192,56,112,96,24,64,8,192,12,128,4, + 255,252,128,0,128,0,128,0,192,0,96,12,56,56,15,224, + 14,20,40,20,2,0,48,96,120,240,48,96,0,0,0,0, + 0,0,15,192,56,112,96,24,64,8,192,12,128,4,255,252, + 128,0,128,0,128,0,192,0,96,12,56,56,15,224,13,22, + 44,20,3,0,48,0,24,0,12,0,6,0,3,0,0,0, + 0,0,0,0,126,0,2,0,2,0,2,0,2,0,2,0, + 2,0,2,0,2,0,2,0,2,0,2,0,2,0,255,248, + 13,22,44,20,3,0,0,192,1,128,3,0,6,0,12,0, + 0,0,0,0,0,0,126,0,2,0,2,0,2,0,2,0, + 2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0, + 255,248,13,21,42,20,3,0,4,0,14,0,27,0,49,128, + 96,192,0,0,0,0,126,0,2,0,2,0,2,0,2,0, + 2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0, + 255,248,13,20,40,20,3,0,97,128,243,192,97,128,0,0, + 0,0,0,0,126,0,2,0,2,0,2,0,2,0,2,0, + 2,0,2,0,2,0,2,0,2,0,2,0,2,0,255,248, + 15,20,40,20,2,0,124,12,79,56,1,224,3,192,14,96, + 56,48,32,24,0,12,15,228,56,54,96,14,192,6,128,2, + 128,2,128,2,192,6,64,4,96,12,24,56,15,224,15,20, + 40,20,2,0,14,16,27,176,16,224,0,0,0,0,0,0, + 227,192,46,112,56,16,48,24,32,8,32,8,32,8,32,8, + 32,8,32,8,32,8,32,8,32,8,248,62,15,22,44,20, + 2,0,12,0,6,0,3,0,1,128,0,192,0,0,0,0, + 0,0,15,224,56,56,96,12,64,4,192,6,128,2,128,2, + 128,2,128,2,192,6,64,4,96,12,56,56,15,224,15,22, + 44,20,2,0,0,48,0,96,0,192,1,128,3,0,0,0, + 0,0,0,0,15,224,56,56,96,12,64,4,192,6,128,2, + 128,2,128,2,128,2,192,6,64,4,96,12,56,56,15,224, + 15,22,44,20,2,0,1,128,3,192,6,96,12,48,24,24, + 0,0,0,0,0,0,15,224,56,56,96,12,64,4,192,6, + 128,2,128,2,128,2,128,2,192,6,64,4,96,12,56,56, + 15,224,15,20,40,20,2,0,14,16,27,176,16,224,0,0, + 0,0,0,0,15,224,56,56,96,12,64,4,192,6,128,2, + 128,2,128,2,128,2,192,6,64,4,96,12,56,56,15,224, + 15,20,40,20,2,0,24,96,60,240,24,96,0,0,0,0, + 0,0,15,224,56,56,96,12,64,4,192,6,128,2,128,2, + 128,2,128,2,192,6,64,4,96,12,56,56,15,224,14,16, + 32,20,2,1,3,0,7,128,3,0,0,0,0,0,0,0, + 0,0,0,0,255,252,0,0,0,0,0,0,0,0,3,0, + 7,128,3,0,15,16,32,20,2,255,0,2,7,230,28,60, + 48,24,64,52,192,102,128,194,129,130,131,2,134,2,204,6, + 88,4,112,24,120,112,207,192,128,0,16,22,44,20,1,0, + 12,0,6,0,3,0,1,128,0,192,0,0,0,0,0,0, + 240,60,16,4,16,4,16,4,16,4,16,4,16,4,16,4, + 16,4,16,4,16,12,24,28,12,52,7,231,16,22,44,20, + 1,0,0,48,0,96,0,192,1,128,3,0,0,0,0,0, + 0,0,240,60,16,4,16,4,16,4,16,4,16,4,16,4, + 16,4,16,4,16,4,16,12,24,28,12,52,7,231,16,21, + 42,20,1,0,0,128,1,192,3,96,6,48,12,24,0,0, + 0,0,240,60,16,4,16,4,16,4,16,4,16,4,16,4, + 16,4,16,4,16,4,16,12,24,28,12,52,7,231,16,20, + 40,20,1,0,24,48,60,120,24,48,0,0,0,0,0,0, + 240,60,16,4,16,4,16,4,16,4,16,4,16,4,16,4, + 16,4,16,4,16,12,24,28,12,52,7,231,15,28,56,20, + 2,250,0,48,0,96,0,192,1,128,3,0,0,0,0,0, + 0,0,248,62,64,4,96,12,32,8,48,24,16,16,24,48, + 8,32,12,96,4,64,6,192,2,128,3,128,1,0,3,0, + 2,0,2,0,6,0,4,0,127,128,17,27,81,20,0,250, + 240,0,0,16,0,0,16,0,0,16,0,0,16,0,0,16, + 0,0,16,0,0,17,248,0,23,14,0,28,3,0,24,1, + 0,24,1,128,16,0,128,16,0,128,16,0,128,16,0,128, + 24,1,128,24,1,0,28,3,0,23,14,0,17,248,0,16, + 0,0,16,0,0,16,0,0,16,0,0,16,0,0,255,0, + 0,15,25,50,20,2,250,24,24,60,60,24,24,0,0,0, + 0,248,62,64,4,96,12,32,8,48,24,16,16,24,48,8, + 32,12,96,4,64,6,192,2,128,3,128,1,0,3,0,2, + 0,2,0,6,0,4,0,127,128}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--34-240-100-100-M-200-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 20 + Calculated Max Values w=15 h=25 x= 7 y= 9 dx=20 dy= 0 ascent=22 len=50 + Font Bounding box w=28 h=42 x=-6 y=-10 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =20 descent= 0 + X Font ascent =20 descent= 0 + Max Font ascent =22 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR24n[638] U8G_SECTION(".progmem.u8g_font_courR24n") = { + 0,28,42,250,246,20,0,0,0,0,42,57,0,22,252,20, + 0,11,13,26,20,4,8,4,0,4,0,4,0,4,0,132, + 32,245,224,31,0,14,0,10,0,27,0,49,128,32,128,96, + 192,15,17,34,20,2,1,1,0,1,0,1,0,1,0,1, + 0,1,0,1,0,1,0,255,254,1,0,1,0,1,0,1, + 0,1,0,1,0,1,0,1,0,6,9,9,20,5,252,60, + 60,120,120,96,224,192,192,128,15,1,2,20,2,9,255,254, + 5,4,4,20,7,0,112,248,248,112,11,25,50,20,4,253, + 0,32,0,96,0,64,0,64,0,192,0,128,1,128,1,0, + 3,0,2,0,2,0,6,0,4,0,12,0,8,0,8,0, + 24,0,16,0,48,0,32,0,96,0,64,0,64,0,192,0, + 128,0,11,20,40,20,4,0,31,0,49,128,96,192,64,64, + 64,64,128,32,128,32,128,32,128,32,128,32,128,32,128,32, + 128,32,128,32,192,96,64,64,64,64,96,192,49,128,31,0, + 11,20,40,20,4,0,12,0,60,0,228,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,255,224,13,20, + 40,20,3,0,15,192,48,96,96,16,64,16,64,16,0,16, + 0,48,0,32,0,96,0,192,1,128,3,0,6,0,12,0, + 24,0,48,0,96,0,192,0,128,8,255,248,13,20,40,20, + 3,0,15,128,56,224,96,48,0,16,0,16,0,16,0,16, + 0,32,0,64,7,128,0,96,0,16,0,8,0,8,0,8, + 0,8,0,24,192,48,112,224,31,128,13,20,40,20,3,0, + 0,192,1,64,1,64,2,64,6,64,4,64,8,64,24,64, + 16,64,32,64,96,64,64,64,128,64,255,248,0,64,0,64, + 0,64,0,64,0,64,3,248,13,20,40,20,3,0,63,240, + 32,0,32,0,32,0,32,0,32,0,32,0,39,128,60,224, + 32,48,0,16,0,24,0,8,0,8,0,8,0,24,192,16, + 96,48,56,224,15,128,12,20,40,20,4,0,7,192,28,32, + 48,0,32,0,96,0,64,0,192,0,143,128,184,224,160,32, + 192,48,192,16,192,16,192,16,192,16,64,16,96,48,32,32, + 56,224,15,128,11,20,40,20,4,0,255,224,128,32,128,32, + 0,96,0,64,0,64,0,192,0,128,0,128,1,128,1,0, + 1,0,3,0,2,0,2,0,2,0,6,0,4,0,4,0, + 4,0,11,20,40,20,4,0,31,0,96,192,64,64,192,96, + 128,32,128,32,192,96,64,64,49,128,31,0,113,192,64,64, + 192,96,128,32,128,32,128,32,192,96,64,64,113,192,31,0, + 12,20,40,20,4,0,31,0,112,192,64,96,192,32,128,48, + 128,48,128,48,128,48,192,80,64,208,115,144,30,16,0,32, + 0,32,0,32,0,64,0,192,1,128,14,0,120,0}; +/* + Fontname: -Adobe-Courier-Medium-R-Normal--34-240-100-100-M-200-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 19, '1' Height: 20 + Calculated Max Values w=19 h=26 x= 9 y=17 dx=20 dy= 0 ascent=22 len=60 + Font Bounding box w=28 h=42 x=-6 y=-10 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =19 descent=-6 + X Font ascent =21 descent=-6 + Max Font ascent =22 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_courR24r[3991] U8G_SECTION(".progmem.u8g_font_courR24r") = { + 0,28,42,250,246,19,4,184,10,129,32,127,250,22,250,21, + 250,0,0,0,20,0,1,5,21,21,20,8,0,32,112,112, + 112,112,112,32,32,32,32,32,32,32,32,0,0,0,0,112, + 248,112,11,10,20,20,4,10,241,224,241,224,241,224,241,224, + 241,224,96,192,96,192,64,128,64,128,64,128,13,23,46,20, + 3,254,4,64,4,64,4,64,4,64,12,192,8,128,8,128, + 8,128,127,248,8,128,8,128,8,128,8,128,8,128,255,240, + 8,128,8,128,8,128,9,128,17,0,17,0,17,0,17,0, + 12,25,50,20,4,253,4,0,4,0,4,0,31,32,113,224, + 64,96,128,32,128,0,192,0,96,0,60,0,7,128,0,224, + 0,48,0,16,0,16,128,48,192,96,241,192,159,0,4,0, + 4,0,4,0,4,0,4,0,15,20,40,20,3,0,30,0, + 51,0,97,128,64,128,64,128,97,128,51,0,30,14,0,112, + 3,128,28,0,224,0,1,224,3,48,6,24,4,8,4,8, + 6,24,3,48,1,224,12,17,34,20,3,0,15,192,25,128, + 48,0,32,0,32,0,48,0,16,0,24,0,60,0,100,48, + 70,96,194,64,131,64,193,192,65,128,99,192,62,112,4,11, + 11,20,8,10,112,112,112,112,112,224,224,224,224,224,224,5, + 25,25,20,9,252,8,24,16,48,32,96,96,64,64,192,192, + 192,192,192,192,192,64,64,96,96,32,48,16,24,8,5,25, + 25,20,5,252,128,192,64,96,32,48,48,16,16,24,24,24, + 24,24,24,24,16,16,48,48,32,96,64,192,128,11,13,26, + 20,4,8,4,0,4,0,4,0,4,0,132,32,245,224,31, + 0,14,0,10,0,27,0,49,128,32,128,96,192,15,17,34, + 20,2,1,1,0,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,255,254,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,1,0,6,9,9,20,5,252,60,60,120,120,96, + 224,192,192,128,15,1,2,20,2,9,255,254,5,4,4,20, + 7,0,112,248,248,112,11,25,50,20,4,253,0,32,0,96, + 0,64,0,64,0,192,0,128,1,128,1,0,3,0,2,0, + 2,0,6,0,4,0,12,0,8,0,8,0,24,0,16,0, + 48,0,32,0,96,0,64,0,64,0,192,0,128,0,11,20, + 40,20,4,0,31,0,49,128,96,192,64,64,64,64,128,32, + 128,32,128,32,128,32,128,32,128,32,128,32,128,32,128,32, + 192,96,64,64,64,64,96,192,49,128,31,0,11,20,40,20, + 4,0,12,0,60,0,228,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,4,0,4,0,4,0,4,0, + 4,0,4,0,4,0,4,0,255,224,13,20,40,20,3,0, + 15,192,48,96,96,16,64,16,64,16,0,16,0,48,0,32, + 0,96,0,192,1,128,3,0,6,0,12,0,24,0,48,0, + 96,0,192,0,128,8,255,248,13,20,40,20,3,0,15,128, + 56,224,96,48,0,16,0,16,0,16,0,16,0,32,0,64, + 7,128,0,96,0,16,0,8,0,8,0,8,0,8,0,24, + 192,48,112,224,31,128,13,20,40,20,3,0,0,192,1,64, + 1,64,2,64,6,64,4,64,8,64,24,64,16,64,32,64, + 96,64,64,64,128,64,255,248,0,64,0,64,0,64,0,64, + 0,64,3,248,13,20,40,20,3,0,63,240,32,0,32,0, + 32,0,32,0,32,0,32,0,39,128,60,224,32,48,0,16, + 0,24,0,8,0,8,0,8,0,24,192,16,96,48,56,224, + 15,128,12,20,40,20,4,0,7,192,28,32,48,0,32,0, + 96,0,64,0,192,0,143,128,184,224,160,32,192,48,192,16, + 192,16,192,16,192,16,64,16,96,48,32,32,56,224,15,128, + 11,20,40,20,4,0,255,224,128,32,128,32,0,96,0,64, + 0,64,0,192,0,128,0,128,1,128,1,0,1,0,3,0, + 2,0,2,0,2,0,6,0,4,0,4,0,4,0,11,20, + 40,20,4,0,31,0,96,192,64,64,192,96,128,32,128,32, + 192,96,64,64,49,128,31,0,113,192,64,64,192,96,128,32, + 128,32,128,32,192,96,64,64,113,192,31,0,12,20,40,20, + 4,0,31,0,112,192,64,96,192,32,128,48,128,48,128,48, + 128,48,192,80,64,208,115,144,30,16,0,32,0,32,0,32, + 0,64,0,192,1,128,14,0,120,0,5,14,14,20,7,0, + 112,248,248,112,0,0,0,0,0,0,112,248,248,112,7,18, + 18,20,5,252,28,62,62,28,0,0,0,0,0,60,60,120, + 112,112,224,192,192,128,15,17,34,20,2,1,0,2,0,14, + 0,56,0,224,3,128,6,0,28,0,112,0,192,0,112,0, + 28,0,6,0,3,128,0,224,0,56,0,14,0,2,15,6, + 12,20,2,6,255,254,0,0,0,0,0,0,0,0,255,254, + 15,17,34,20,2,1,128,0,224,0,56,0,14,0,3,128, + 0,192,0,112,0,28,0,6,0,28,0,112,0,192,3,128, + 14,0,56,0,224,0,128,0,11,19,38,20,4,0,63,0, + 225,192,128,64,128,64,0,96,0,32,0,96,0,64,1,192, + 7,0,4,0,4,0,4,0,0,0,0,0,0,0,14,0, + 31,0,14,0,12,23,46,20,3,254,15,128,24,192,48,64, + 96,96,64,32,192,32,128,32,128,224,131,160,134,32,132,32, + 132,32,132,32,134,32,131,32,129,240,128,0,192,0,64,0, + 96,0,48,0,24,224,15,128,19,19,57,20,0,0,31,224, + 0,0,160,0,0,160,0,1,16,0,1,16,0,1,16,0, + 2,8,0,2,8,0,2,8,0,4,4,0,4,4,0,4, + 4,0,15,254,0,8,2,0,8,2,0,16,1,0,16,1, + 0,48,1,128,254,15,224,16,19,38,20,1,0,255,240,16, + 12,16,4,16,6,16,2,16,2,16,6,16,4,16,12,31, + 248,16,6,16,2,16,3,16,1,16,1,16,3,16,2,16, + 6,255,248,14,19,38,20,2,0,7,196,28,116,32,12,96, + 4,64,4,192,4,128,0,128,0,128,0,128,0,128,0,128, + 0,128,0,192,0,64,0,96,4,32,28,28,112,7,192,15, + 19,38,20,1,0,255,192,32,112,32,24,32,12,32,4,32, + 6,32,2,32,2,32,2,32,2,32,2,32,2,32,2,32, + 6,32,4,32,12,32,24,32,112,255,192,15,19,38,20,1, + 0,255,252,16,4,16,4,16,4,16,4,16,68,16,64,16, + 64,31,192,16,64,16,64,16,64,16,0,16,2,16,2,16, + 2,16,2,16,2,255,254,15,19,38,20,1,0,255,254,16, + 2,16,2,16,2,16,2,16,66,16,64,16,64,31,192,16, + 64,16,64,16,64,16,0,16,0,16,0,16,0,16,0,16, + 0,255,128,15,19,38,20,2,0,7,196,28,116,48,12,96, + 4,64,4,192,4,128,0,128,0,128,0,128,0,128,0,128, + 254,128,4,192,4,64,4,96,4,48,4,28,28,7,240,15, + 19,38,20,2,0,252,126,32,8,32,8,32,8,32,8,32, + 8,32,8,32,8,32,8,63,248,32,8,32,8,32,8,32, + 8,32,8,32,8,32,8,32,8,252,126,11,19,38,20,4, + 0,255,224,4,0,4,0,4,0,4,0,4,0,4,0,4, + 0,4,0,4,0,4,0,4,0,4,0,4,0,4,0,4, + 0,4,0,4,0,255,224,15,19,38,20,3,0,15,254,0, + 32,0,32,0,32,0,32,0,32,0,32,0,32,0,32,0, + 32,0,32,128,32,128,32,128,32,128,32,192,96,64,64,97, + 192,31,0,17,19,57,20,1,0,254,31,128,16,4,0,16, + 12,0,16,8,0,16,16,0,16,48,0,16,64,0,16,192, + 0,19,128,0,28,192,0,16,32,0,16,48,0,16,16,0, + 16,24,0,16,8,0,16,8,0,16,12,0,16,4,0,254, + 7,128,15,19,38,20,2,0,255,128,8,0,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,2,8,2,8,2,8,2,8,2,8,2,255,254,19,19, + 57,20,0,0,248,3,224,40,2,128,40,2,128,36,4,128, + 36,4,128,34,8,128,34,8,128,33,16,128,33,16,128,33, + 16,128,32,160,128,32,160,128,32,64,128,32,64,128,32,0, + 128,32,0,128,32,0,128,32,0,128,254,7,224,18,19,57, + 20,0,0,248,31,192,28,1,0,20,1,0,18,1,0,18, + 1,0,17,1,0,16,129,0,16,129,0,16,65,0,16,65, + 0,16,33,0,16,33,0,16,17,0,16,17,0,16,9,0, + 16,9,0,16,5,0,16,7,0,127,3,0,15,19,38,20, + 2,0,7,192,24,48,48,24,96,12,64,4,192,6,128,2, + 128,2,128,2,128,2,128,2,128,2,128,2,192,6,64,4, + 96,12,48,24,24,48,7,192,15,19,38,20,1,0,255,224, + 16,56,16,4,16,6,16,2,16,2,16,2,16,6,16,4, + 16,56,31,224,16,0,16,0,16,0,16,0,16,0,16,0, + 16,0,255,192,15,22,44,20,2,253,7,192,28,112,48,24, + 96,12,64,4,192,6,128,2,128,2,128,2,128,2,128,2, + 128,2,128,2,192,6,64,4,96,12,56,56,12,96,7,192, + 2,0,15,198,24,124,18,19,57,20,1,0,255,224,0,16, + 56,0,16,4,0,16,6,0,16,2,0,16,2,0,16,6, + 0,16,4,0,16,24,0,31,224,0,16,96,0,16,48,0, + 16,24,0,16,12,0,16,4,0,16,6,0,16,2,0,16, + 3,0,254,1,192,12,19,38,20,3,0,15,144,56,208,96, + 48,64,48,64,16,64,16,64,0,96,0,56,0,15,0,1, + 192,0,96,0,48,128,16,128,16,192,16,224,48,184,224,143, + 128,15,19,38,20,2,0,255,254,129,2,129,2,129,2,129, + 2,129,2,129,2,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,1,0,1,0,1,0,1,0,63,248,17,19,57, + 20,1,0,254,63,128,32,2,0,32,2,0,32,2,0,32, + 2,0,32,2,0,32,2,0,32,2,0,32,2,0,32,2, + 0,32,2,0,32,2,0,32,2,0,32,2,0,48,6,0, + 16,4,0,24,12,0,14,56,0,3,224,0,19,19,57,20, + 0,0,254,15,224,48,1,128,16,1,0,16,1,0,24,3, + 0,8,2,0,8,2,0,12,6,0,4,4,0,4,4,0, + 6,12,0,2,8,0,3,24,0,1,16,0,1,16,0,0, + 160,0,0,160,0,0,224,0,0,64,0,17,19,57,20,1, + 0,252,31,128,64,1,0,64,1,0,64,1,0,64,1,0, + 97,195,0,33,66,0,33,66,0,34,34,0,34,34,0,34, + 34,0,34,34,0,38,50,0,36,18,0,52,22,0,20,20, + 0,20,20,0,24,12,0,24,12,0,17,19,57,20,1,0, + 124,31,0,48,6,0,16,4,0,24,12,0,8,8,0,4, + 16,0,2,32,0,3,96,0,1,192,0,0,128,0,1,192, + 0,2,32,0,4,16,0,12,24,0,8,8,0,16,4,0, + 48,6,0,96,3,0,252,31,128,15,19,38,20,2,0,248, + 62,96,12,48,24,16,16,24,48,8,32,4,64,6,192,2, + 128,3,128,1,0,1,0,1,0,1,0,1,0,1,0,1, + 0,1,0,31,240,13,19,38,20,3,0,127,240,64,16,64, + 48,64,32,64,96,64,192,0,128,1,128,3,0,6,0,4, + 0,12,0,24,8,16,8,48,8,96,8,64,8,192,8,255, + 248,5,24,24,20,9,252,248,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,248,11, + 25,50,20,4,253,128,0,192,0,64,0,64,0,96,0,32, + 0,48,0,16,0,24,0,8,0,8,0,12,0,4,0,6, + 0,2,0,2,0,3,0,1,0,1,128,0,128,0,192,0, + 64,0,64,0,96,0,32,5,24,24,20,5,252,248,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,248,11,9,18,20,4,12,4,0,14,0,27, + 0,17,0,49,128,96,192,64,64,192,96,128,32,19,1,3, + 20,0,250,255,255,224,6,5,5,20,4,17,192,96,48,24, + 12,15,14,28,20,2,0,15,128,56,224,0,32,0,48,0, + 16,0,16,31,240,112,48,192,16,128,16,128,16,128,48,192, + 240,127,158,17,20,60,20,0,0,240,0,0,16,0,0,16, + 0,0,16,0,0,16,0,0,16,0,0,17,248,0,23,14, + 0,20,3,0,24,1,0,24,1,128,16,0,128,16,0,128, + 16,0,128,16,0,128,24,1,128,24,1,0,20,3,0,23, + 14,0,241,248,0,14,14,28,20,3,0,15,136,56,248,96, + 24,64,8,192,8,128,0,128,0,128,0,128,0,192,0,64, + 12,96,24,56,224,15,128,17,20,60,20,2,0,0,60,0, + 0,4,0,0,4,0,0,4,0,0,4,0,0,4,0,15, + 196,0,56,116,0,96,20,0,64,12,0,192,12,0,128,4, + 0,128,4,0,128,4,0,128,4,0,192,12,0,64,12,0, + 96,20,0,56,116,0,15,199,128,14,14,28,20,2,0,15, + 192,56,112,96,24,64,8,192,12,128,4,255,252,128,0,128, + 0,192,0,64,0,96,12,56,56,15,224,13,20,40,20,3, + 0,3,224,6,24,4,0,12,0,8,0,8,0,255,240,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,255,240,17,20,60,20,2,250,15, + 199,128,56,116,0,96,20,0,64,12,0,192,12,0,128,4, + 0,128,4,0,128,4,0,128,4,0,192,12,0,64,12,0, + 96,20,0,56,116,0,15,196,0,0,4,0,0,4,0,0, + 12,0,0,8,0,0,56,0,15,224,0,16,20,40,20,1, + 0,240,0,16,0,16,0,16,0,16,0,16,0,17,224,23, + 56,20,8,24,12,24,4,16,4,16,4,16,4,16,4,16, + 4,16,4,16,4,16,4,124,31,13,20,40,20,3,0,6, + 0,6,0,6,0,0,0,0,0,0,0,126,0,2,0,2, + 0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2, + 0,2,0,2,0,255,248,10,26,52,20,4,250,1,128,1, + 128,1,128,0,0,0,0,0,0,255,192,0,64,0,64,0, + 64,0,64,0,64,0,64,0,64,0,64,0,64,0,64,0, + 64,0,64,0,64,0,64,0,64,0,192,0,128,3,128,254, + 0,15,20,40,20,2,0,240,0,16,0,16,0,16,0,16, + 0,16,0,16,252,16,48,16,96,16,192,17,128,19,0,30, + 0,19,0,17,128,16,192,16,96,16,48,16,24,240,62,13, + 20,40,20,3,0,126,0,2,0,2,0,2,0,2,0,2, + 0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2, + 0,2,0,2,0,2,0,2,0,2,0,255,248,19,14,42, + 20,0,0,231,14,0,41,147,0,48,225,128,48,96,128,32, + 64,128,32,64,128,32,64,128,32,64,128,32,64,128,32,64, + 128,32,64,128,32,64,128,32,64,128,248,112,224,15,14,28, + 20,2,0,227,192,46,112,40,16,48,24,48,8,32,8,32, + 8,32,8,32,8,32,8,32,8,32,8,32,8,248,62,15, + 14,28,20,2,0,15,224,56,56,96,12,64,4,192,6,128, + 2,128,2,128,2,128,2,192,6,64,4,96,12,56,56,15, + 224,17,20,60,20,0,250,1,248,0,247,14,0,20,3,0, + 24,1,0,24,1,128,16,0,128,16,0,128,16,0,128,16, + 0,128,24,1,128,24,1,0,20,3,0,23,14,0,17,248, + 0,16,0,0,16,0,0,16,0,0,16,0,0,16,0,0, + 255,0,0,17,20,60,20,2,250,15,192,0,56,119,128,96, + 28,0,64,12,0,192,12,0,128,4,0,128,4,0,128,4, + 0,128,4,0,192,12,0,64,12,0,96,28,0,56,116,0, + 15,196,0,0,4,0,0,4,0,0,4,0,0,4,0,0, + 4,0,0,127,128,15,14,28,20,3,0,120,124,9,198,11, + 0,12,0,12,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,255,240,13,14,28,20,3,0,15,144,56, + 240,96,48,64,16,96,0,56,0,15,128,0,224,0,48,128, + 24,128,24,192,48,248,224,143,128,14,19,38,20,2,0,16, + 0,16,0,16,0,16,0,16,0,255,240,16,0,16,0,16, + 0,16,0,16,0,16,0,16,0,16,0,16,0,16,0,24, + 12,12,56,7,224,16,14,28,20,1,0,240,60,16,4,16, + 4,16,4,16,4,16,4,16,4,16,4,16,4,16,4,16, + 12,24,12,12,52,7,231,17,14,42,20,1,0,252,31,128, + 48,6,0,16,4,0,16,4,0,24,12,0,8,8,0,12, + 24,0,4,16,0,4,16,0,6,48,0,2,32,0,3,96, + 0,1,64,0,1,192,0,17,14,42,20,1,0,248,15,128, + 96,3,0,32,2,0,32,2,0,33,194,0,33,66,0,49, + 70,0,19,100,0,18,36,0,18,36,0,22,52,0,28,28, + 0,8,8,0,8,8,0,15,14,28,20,2,0,248,62,96, + 12,48,24,24,48,12,96,6,192,3,128,3,128,6,192,12, + 96,24,48,48,24,96,12,248,62,15,20,40,20,2,250,248, + 62,64,4,96,12,32,8,48,24,16,16,24,48,8,32,12, + 96,4,64,6,192,2,128,3,128,1,0,3,0,2,0,2, + 0,6,0,4,0,255,128,11,14,28,20,4,0,255,224,128, + 96,128,192,129,128,3,0,6,0,4,0,12,0,24,0,48, + 0,96,32,64,32,192,32,255,224,7,25,25,20,6,252,6, + 12,24,16,16,16,16,16,16,16,16,48,96,224,48,16,16, + 16,16,16,16,16,16,24,14,1,25,25,20,9,252,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,7,25,25,20,6,252,192,96,48, + 16,16,16,16,16,16,16,16,24,12,14,24,16,16,16,16, + 16,16,16,16,48,224,13,5,10,20,3,7,24,0,124,8, + 199,24,129,176,0,224,255}; +/* + Fontname: -MUTT-ClearlyU-Medium-R-Normal--17-120-100-100-P-123-ISO10646-1 + Copyright: 2001 Computing Research Lab, New Mexico State University. + Capital A Height: 3, '1' Height: 11 + Calculated Max Values w=16 h=17 x= 7 y= 6 dx=19 dy= 0 ascent=17 len=34 + Font Bounding box w=40 h=30 x=-9 y=-10 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 3 descent= 1 + X Font ascent =12 descent= 0 + Max Font ascent =17 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_cu12_67_75[3981] U8G_SECTION(".progmem.u8g_font_cu12_67_75") = { + 0,40,30,247,246,3,2,98,5,14,32,255,1,17,254,12, + 0,11,5,10,12,1,4,2,128,1,64,255,224,1,64,2, + 128,5,11,11,6,1,1,32,32,32,32,32,32,168,112,168, + 112,32,11,5,10,12,1,4,32,96,65,128,255,0,65,128, + 32,96,11,5,10,12,1,4,192,128,48,64,31,224,48,64, + 192,128,11,7,14,12,1,3,0,32,32,32,64,32,255,224, + 64,32,32,32,0,32,7,11,11,8,1,1,16,56,84,16, + 16,16,16,16,16,16,254,11,7,14,12,1,3,128,0,128, + 128,128,64,255,224,128,64,128,128,128,0,7,11,11,8,1, + 1,254,16,16,16,16,16,16,16,84,56,16,7,11,11,8, + 1,1,16,56,84,16,16,16,16,16,84,56,254,11,7,14, + 12,1,4,1,192,0,32,32,32,64,32,255,192,64,0,32, + 0,11,7,14,12,1,4,112,0,128,0,128,128,128,64,127, + 224,0,64,0,128,11,7,14,12,1,4,1,192,2,32,34, + 32,66,32,255,192,66,0,34,0,11,7,14,12,1,4,112, + 0,136,0,136,128,136,64,127,224,8,64,8,128,12,5,10, + 13,1,4,38,64,73,32,233,112,80,160,32,64,12,5,10, + 13,1,4,33,64,66,32,255,240,68,32,40,64,4,11,11, + 5,1,1,16,16,32,64,176,208,32,160,160,192,240,6,11, + 11,7,1,1,32,64,252,68,36,4,4,4,4,4,4,6, + 11,11,7,1,1,16,8,252,136,144,128,128,128,128,128,128, + 6,11,11,7,1,1,4,4,4,4,4,4,36,68,252,64, + 32,6,11,11,7,1,1,128,128,128,128,128,128,144,136,252, + 8,16,8,6,6,9,1,2,252,4,4,21,14,4,6,8, + 8,7,1,1,4,4,4,36,68,252,64,32,11,8,16,11, + 1,1,15,128,16,64,32,32,32,32,32,32,168,32,112,0, + 32,0,11,8,16,11,1,1,62,0,65,0,128,128,128,128, + 128,128,130,160,1,192,0,128,9,11,22,10,1,1,255,128, + 0,0,240,0,192,0,160,0,144,0,8,0,4,0,2,0, + 1,0,0,128,12,13,26,13,1,0,128,0,144,0,160,0, + 255,240,160,0,144,0,128,16,0,144,0,80,255,240,0,80, + 0,144,0,16,10,7,14,11,1,2,3,192,67,0,130,128, + 130,128,128,128,65,0,62,0,10,7,14,11,1,2,240,0, + 48,128,80,64,80,64,64,64,32,128,31,0,11,3,6,12, + 1,6,32,0,64,0,255,224,11,3,6,12,1,6,255,224, + 64,0,32,0,3,11,11,4,1,1,128,192,160,128,128,128, + 128,128,128,128,128,3,11,11,4,1,1,32,96,160,32,32, + 32,32,32,32,32,32,11,3,6,12,1,6,0,128,0,64, + 255,224,11,3,6,12,1,6,255,224,0,64,0,128,3,11, + 11,4,1,1,128,128,128,128,128,128,128,128,160,192,128,3, + 11,11,4,1,1,32,32,32,32,32,32,32,32,160,96,32, + 11,11,22,12,1,1,0,128,0,64,255,224,0,64,0,128, + 0,0,32,0,64,0,255,224,64,0,32,0,11,11,22,12, + 1,1,32,128,112,128,168,128,32,128,32,128,32,128,32,128, + 32,128,34,160,33,192,32,128,11,11,22,12,1,1,32,0, + 64,0,255,224,64,0,32,0,0,0,0,128,0,64,255,224, + 0,64,0,128,11,11,22,12,1,1,32,0,64,0,255,224, + 64,0,32,0,0,0,32,0,64,0,255,224,64,0,32,0, + 11,11,22,12,1,1,32,128,113,192,170,160,32,128,32,128, + 32,128,32,128,32,128,32,128,32,128,32,128,11,11,22,12, + 1,1,0,128,0,64,255,224,0,64,0,128,0,0,0,128, + 0,64,255,224,0,64,0,128,11,11,22,12,1,1,32,128, + 32,128,32,128,32,128,32,128,32,128,32,128,32,128,170,160, + 113,192,32,128,11,8,16,12,1,3,32,0,64,0,255,224, + 0,0,0,0,255,224,0,64,0,128,11,8,16,12,1,3, + 0,128,0,64,255,224,0,0,0,0,255,224,64,0,32,0, + 11,7,14,12,1,3,16,128,32,128,127,224,129,0,127,224, + 34,0,18,0,13,7,14,14,1,3,17,64,33,32,127,240, + 130,8,127,240,36,32,20,64,11,7,14,12,1,3,9,0, + 8,128,255,192,16,32,255,192,32,128,33,0,11,7,14,12, + 1,3,16,0,32,0,127,224,128,0,127,224,32,0,16,0, + 7,11,11,8,1,1,16,40,108,170,40,40,40,40,40,40, + 40,11,7,14,12,1,3,1,0,0,128,255,192,0,32,255, + 192,0,128,1,0,7,11,11,8,1,1,40,40,40,40,40, + 40,40,170,108,40,16,12,7,14,12,1,3,16,128,32,64, + 127,224,128,16,127,224,32,64,16,128,7,12,12,8,1,0, + 16,40,108,170,40,40,40,40,170,108,40,16,10,10,20,11, + 1,1,248,0,144,0,136,0,196,0,162,0,17,0,8,128, + 4,64,2,0,1,0,10,10,20,11,1,1,7,192,2,64, + 4,64,8,192,17,64,34,0,68,0,136,0,16,0,32,0, + 10,10,20,11,1,1,32,0,16,0,136,0,68,0,34,0, + 17,64,8,192,4,64,2,64,7,192,10,10,20,11,1,1, + 1,0,2,0,4,64,8,128,17,0,162,0,196,0,136,0, + 144,0,248,0,11,7,14,12,1,3,16,0,63,224,64,0, + 255,224,64,0,63,224,16,0,11,7,14,12,1,3,1,0, + 255,128,0,64,255,224,0,64,255,128,1,0,12,5,10,13, + 1,4,32,0,72,128,245,80,66,32,32,0,12,5,10,13, + 1,4,0,64,17,32,170,240,68,32,0,64,5,11,11,6, + 1,1,32,112,168,32,32,248,32,248,32,32,32,5,11,11, + 6,1,1,32,32,32,248,32,248,32,32,168,112,32,11,5, + 10,12,1,4,32,0,64,0,238,224,64,0,32,0,5,11, + 11,6,1,1,32,112,168,0,32,32,32,0,32,32,32,11, + 5,10,12,1,4,0,128,0,64,238,224,0,64,0,128,5, + 11,11,6,1,1,32,32,32,0,32,32,32,0,168,112,32, + 12,7,14,13,1,3,128,0,144,0,160,0,255,240,160,0, + 144,0,128,0,12,7,14,13,1,3,0,16,0,144,0,80, + 255,240,0,80,0,144,0,16,12,9,18,13,1,2,8,0, + 24,0,47,240,64,16,128,16,64,16,47,240,24,0,8,0, + 9,12,24,10,1,1,8,0,20,0,34,0,65,0,227,128, + 34,0,34,0,34,0,34,0,34,0,34,0,62,0,12,9, + 18,13,1,2,1,0,1,128,255,64,128,32,128,16,128,32, + 255,64,1,128,1,0,9,12,24,10,1,1,62,0,34,0, + 34,0,34,0,34,0,34,0,34,0,227,128,65,0,34,0, + 20,0,8,0,9,17,34,10,1,0,8,0,20,0,34,0, + 65,0,227,128,34,0,34,0,34,0,34,0,34,0,34,0, + 62,0,0,0,62,0,34,0,34,0,62,0,9,14,28,10, + 1,0,8,0,20,0,34,0,65,0,227,128,34,0,34,0, + 34,0,34,0,34,0,34,0,227,128,128,128,255,128,9,14, + 28,10,1,0,8,0,20,0,62,0,65,0,227,128,34,0, + 34,0,34,0,34,0,34,0,34,0,227,128,128,128,255,128, + 9,14,28,10,1,0,8,0,28,0,42,0,73,0,235,128, + 42,0,42,0,42,0,42,0,42,0,42,0,235,128,136,128, + 255,128,9,15,30,10,1,2,8,0,20,0,34,0,73,0, + 213,128,34,0,65,0,227,128,34,0,34,0,34,0,34,0, + 34,0,34,0,62,0,9,17,34,10,1,0,8,0,20,0, + 34,0,73,0,213,128,34,0,65,0,227,128,34,0,34,0, + 34,0,34,0,34,0,34,0,227,128,128,128,255,128,14,9, + 18,16,2,2,224,64,160,96,191,208,128,24,128,20,128,24, + 191,208,160,96,224,64,11,11,22,12,1,1,255,224,128,0, + 188,0,176,0,168,0,164,0,130,0,129,0,128,128,128,64, + 128,32,11,11,22,12,1,1,128,32,64,32,32,32,16,32, + 8,32,4,160,2,160,1,160,7,160,0,32,255,224,9,16, + 32,10,1,0,8,0,20,0,34,0,65,0,227,128,34,0, + 34,0,34,0,34,0,34,0,34,0,227,128,65,0,34,0, + 20,0,8,0,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 11,11,22,14,2,1,255,224,255,224,255,224,255,224,255,224, + 255,224,255,224,255,224,255,224,255,224,255,224,11,11,22,14, + 2,1,255,224,128,32,128,32,128,32,128,32,128,32,128,32, + 128,32,128,32,128,32,255,224,11,11,22,14,2,1,63,128, + 64,64,128,32,128,32,128,32,128,32,128,32,128,32,128,32, + 64,64,63,128,11,11,22,14,2,1,255,224,128,32,191,160, + 191,160,191,160,191,160,191,160,191,160,191,160,128,32,255,224, + 11,11,22,14,2,1,255,224,128,32,255,224,128,32,255,224, + 128,32,255,224,128,32,255,224,128,32,255,224,11,11,22,14, + 2,1,255,224,170,160,170,160,170,160,170,160,170,160,170,160, + 170,160,170,160,170,160,255,224,11,11,22,14,2,1,255,224, + 170,160,255,224,170,160,255,224,170,160,255,224,170,160,255,224, + 170,160,255,224,11,11,22,14,2,1,255,224,201,32,164,160, + 146,96,201,32,164,160,146,96,201,32,164,160,146,96,255,224, + 11,11,22,14,2,1,255,224,146,96,164,160,201,32,146,96, + 164,160,201,32,146,96,164,160,201,32,255,224,11,11,22,14, + 2,1,255,224,213,96,170,160,213,96,170,160,213,96,170,160, + 213,96,170,160,213,96,255,224,7,7,7,12,3,3,254,254, + 254,254,254,254,254,7,7,7,12,3,3,254,130,130,130,130, + 130,254,13,6,12,16,2,3,255,248,255,248,255,248,255,248, + 255,248,255,248,13,6,12,16,2,3,255,248,128,8,128,8, + 128,8,128,8,255,248,6,13,13,9,2,254,252,252,252,252, + 252,252,252,252,252,252,252,252,252,6,13,13,9,2,254,252, + 132,132,132,132,132,132,132,132,132,132,132,252,16,6,12,19, + 2,3,31,255,63,254,63,254,127,252,127,252,255,248,16,6, + 12,19,2,3,31,255,32,2,32,2,64,4,64,4,255,248, + 11,12,24,14,2,1,4,0,4,0,14,0,14,0,31,0, + 31,0,63,128,63,128,127,192,127,192,255,224,255,224,11,12, + 24,14,2,1,4,0,4,0,10,0,10,0,17,0,17,0, + 32,128,32,128,64,64,64,64,128,32,255,224,7,8,8,12, + 3,1,16,16,56,56,124,124,254,254,7,8,8,12,3,1, + 16,16,40,40,68,68,130,254,12,11,22,15,2,1,192,0, + 240,0,252,0,255,0,255,192,255,240,255,192,255,0,252,0, + 240,0,192,0,12,11,22,15,2,1,192,0,176,0,140,0, + 131,0,128,192,128,48,128,192,131,0,140,0,176,0,192,0, + 8,7,7,13,3,1,192,240,252,255,252,240,192,8,7,7, + 13,3,1,192,176,140,131,140,176,192,12,7,14,15,2,1, + 192,0,252,0,255,192,255,240,255,192,252,0,192,0,12,7, + 14,15,2,1,192,0,188,0,131,192,128,48,131,192,188,0, + 192,0,11,12,24,14,2,1,255,224,255,224,127,192,127,192, + 63,128,63,128,31,0,31,0,14,0,14,0,4,0,4,0, + 11,12,24,14,2,1,255,224,128,32,64,64,64,64,32,128, + 32,128,17,0,17,0,10,0,10,0,4,0,4,0,7,8, + 8,12,3,1,254,254,124,124,56,56,16,16,7,8,8,12, + 3,1,254,130,68,68,40,40,16,16,12,11,22,15,2,1, + 0,48,0,240,3,240,15,240,63,240,255,240,63,240,15,240, + 3,240,0,240,0,48,12,11,22,15,2,1,0,48,0,208, + 3,16,12,16,48,16,192,16,48,16,12,16,3,16,0,208, + 0,48,8,7,7,13,3,1,3,15,63,255,63,15,3,8, + 7,7,13,3,1,3,13,49,193,49,13,3,12,7,14,15, + 2,1,0,48,3,240,63,240,255,240,63,240,3,240,0,48, + 12,7,14,15,2,1,0,48,3,208,60,16,192,16,60,16, + 3,208,0,48,11,11,22,14,2,1,4,0,14,0,31,0, + 63,128,127,192,255,224,127,192,63,128,31,0,14,0,4,0, + 11,11,22,14,2,1,4,0,10,0,17,0,32,128,64,64, + 128,32,64,64,32,128,17,0,10,0,4,0,11,11,22,14, + 2,1,4,0,10,0,17,0,36,128,78,64,159,32,78,64, + 36,128,17,0,10,0,4,0,11,11,22,14,2,1,31,0, + 96,192,64,64,142,32,159,32,159,32,159,32,142,32,64,64, + 96,192,31,0,7,12,12,8,1,0,16,40,40,68,68,130, + 130,68,68,40,40,16,11,11,22,14,2,1,31,0,96,192, + 64,64,128,32,128,32,128,32,128,32,128,32,64,64,96,192, + 31,0,11,11,22,14,2,1,14,0,32,128,64,64,0,0, + 128,32,128,32,128,32,0,0,64,64,32,128,14,0,11,11, + 22,14,2,1,31,0,106,192,106,192,170,160,170,160,170,160, + 170,160,170,160,106,192,106,192,31,0,11,11,22,14,2,1, + 31,0,96,192,64,64,142,32,145,32,145,32,145,32,142,32, + 64,64,96,192,31,0,11,11,22,14,2,1,31,0,127,192, + 127,192,255,224,255,224,255,224,255,224,255,224,127,192,127,192, + 31,0,11,11,22,14,2,1,31,0,120,192,120,64,248,32, + 248,32,248,32,248,32,248,32,120,64,120,192,31,0,11,11, + 22,14,2,1,31,0,99,192,67,192,131,224,131,224,131,224, + 131,224,131,224,67,192,99,192,31,0,11,11,22,14,2,1, + 31,0,127,192,127,192,255,224,255,224,128,32,128,32,128,32, + 64,64,96,192,31,0,11,11,22,14,2,1,31,0,96,192, + 64,64,128,32,128,32,128,32,255,224,255,224,127,192,127,192, + 31,0,11,11,22,14,2,1,31,0,103,192,71,192,135,224, + 135,224,135,224,128,32,128,32,64,64,96,192,31,0,11,11, + 22,14,2,1,31,0,99,192,67,192,131,224,131,224,131,224, + 255,224,255,224,127,192,127,192,31,0,6,11,11,8,2,1, + 28,124,124,252,252,252,252,252,124,124,28,6,11,11,9,2, + 1,224,248,248,252,252,252,252,252,248,248,224,7,12,12,10, + 2,1,254,254,254,254,254,198,130,130,130,198,254,254,13,13, + 26,16,2,0,255,248,240,120,207,152,223,216,191,232,191,232, + 191,232,191,232,191,232,223,216,207,152,240,120,255,248,13,7, + 14,16,2,6,255,248,240,120,207,152,223,216,191,232,191,232, + 191,232,13,7,14,16,2,0,191,232,191,232,191,232,223,216, + 207,152,240,120,255,248,6,6,6,8,2,6,28,96,64,128, + 128,128,6,6,6,13,7,6,224,24,8,4,4,4,6,6, + 6,13,7,1,4,4,4,8,24,224,6,6,6,8,2,1, + 128,128,128,64,96,28,11,6,12,14,2,6,31,0,96,192, + 64,64,128,32,128,32,128,32,11,6,12,14,2,1,128,32, + 128,32,128,32,64,64,96,192,31,0,12,12,24,15,2,1, + 0,16,0,48,0,112,0,240,1,240,3,240,7,240,15,240, + 31,240,63,240,127,240,255,240,12,12,24,15,2,1,128,0, + 192,0,224,0,240,0,248,0,252,0,254,0,255,0,255,128, + 255,192,255,224,255,240,12,12,24,15,2,1,255,240,255,224, + 255,192,255,128,255,0,254,0,252,0,248,0,240,0,224,0, + 192,0,128,0,12,12,24,15,2,1,255,240,127,240,63,240, + 31,240,15,240,7,240,3,240,1,240,0,240,0,112,0,48, + 0,16,7,7,7,8,1,2,56,68,130,130,130,68,56,11, + 11,22,14,2,1,255,224,248,32,248,32,248,32,248,32,248, + 32,248,32,248,32,248,32,248,32,255,224,11,11,22,14,2, + 1,255,224,131,224,131,224,131,224,131,224,131,224,131,224,131, + 224,131,224,131,224,255,224,11,11,22,14,2,1,255,224,255, + 224,255,160,255,32,254,32,252,32,248,32,240,32,224,32,192, + 32,255,224,11,11,22,14,2,1,255,224,128,96,128,224,129, + 224,131,224,135,224,143,224,159,224,191,224,255,224,255,224,11, + 11,22,14,2,1,255,224,132,32,132,32,132,32,132,32,132, + 32,132,32,132,32,132,32,132,32,255,224,11,12,24,14,2, + 1,4,0,4,0,10,0,10,0,17,0,17,0,32,128,36, + 128,78,64,68,64,128,32,255,224,11,12,24,14,2,1,4, + 0,4,0,14,0,14,0,29,0,29,0,60,128,60,128,124, + 64,124,64,252,32,255,224,11,12,24,14,2,1,4,0,4, + 0,14,0,14,0,23,0,23,0,39,128,39,128,71,192,71, + 192,135,224,255,224,13,13,26,16,2,0,31,192,32,32,64, + 16,128,8,128,8,128,8,128,8,128,8,128,8,128,8,64, + 16,32,32,31,192,11,11,22,14,2,1,255,224,132,32,132, + 32,132,32,132,32,252,32,128,32,128,32,128,32,128,32,255, + 224,11,11,22,14,2,1,255,224,128,32,128,32,128,32,128, + 32,252,32,132,32,132,32,132,32,132,32,255,224,11,11,22, + 14,2,1,255,224,128,32,128,32,128,32,128,32,135,224,132, + 32,132,32,132,32,132,32,255,224,11,11,22,14,2,1,255, + 224,132,32,132,32,132,32,132,32,135,224,128,32,128,32,128, + 32,128,32,255,224,11,11,22,14,2,1,31,0,100,192,68, + 64,132,32,132,32,252,32,128,32,128,32,64,64,96,192,31, + 0,11,11,22,14,2,1,31,0,96,192,64,64,128,32,128, + 32,252,32,132,32,132,32,68,64,100,192,31,0,11,11,22, + 14,2,1,31,0,96,192,64,64,128,32,128,32,135,224,132, + 32,132,32,68,64,100,192,31,0,11,11,22,14,2,1,31, + 0,100,192,68,64,132,32,132,32,135,224,128,32,128,32,64, + 64,96,192,31,0,255,255,255,255,255,255,255,255}; +/* + Fontname: -MUTT-ClearlyU-Medium-R-Normal--17-120-100-100-P-123-ISO10646-1 + Copyright: 2001 Computing Research Lab, New Mexico State University. + Capital A Height: 11, '1' Height: 6 + Calculated Max Values w=16 h=13 x= 3 y= 3 dx=19 dy= 0 ascent=13 len=24 + Font Bounding box w=40 h=30 x=-9 y=-10 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =11 descent= 0 + X Font ascent =12 descent= 0 + Max Font ascent =13 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_cu12_75r[1123] U8G_SECTION(".progmem.u8g_font_cu12_75r") = { + 0,40,30,247,246,11,2,247,0,0,32,79,0,13,254,12, + 0,11,11,22,14,2,1,255,224,255,224,255,224,255,224,255, + 224,255,224,255,224,255,224,255,224,255,224,255,224,11,11,22, + 14,2,1,255,224,128,32,128,32,128,32,128,32,128,32,128, + 32,128,32,128,32,128,32,255,224,11,11,22,14,2,1,63, + 128,64,64,128,32,128,32,128,32,128,32,128,32,128,32,128, + 32,64,64,63,128,11,11,22,14,2,1,255,224,128,32,191, + 160,191,160,191,160,191,160,191,160,191,160,191,160,128,32,255, + 224,11,11,22,14,2,1,255,224,128,32,255,224,128,32,255, + 224,128,32,255,224,128,32,255,224,128,32,255,224,11,11,22, + 14,2,1,255,224,170,160,170,160,170,160,170,160,170,160,170, + 160,170,160,170,160,170,160,255,224,11,11,22,14,2,1,255, + 224,170,160,255,224,170,160,255,224,170,160,255,224,170,160,255, + 224,170,160,255,224,11,11,22,14,2,1,255,224,201,32,164, + 160,146,96,201,32,164,160,146,96,201,32,164,160,146,96,255, + 224,11,11,22,14,2,1,255,224,146,96,164,160,201,32,146, + 96,164,160,201,32,146,96,164,160,201,32,255,224,11,11,22, + 14,2,1,255,224,213,96,170,160,213,96,170,160,213,96,170, + 160,213,96,170,160,213,96,255,224,7,7,7,12,3,3,254, + 254,254,254,254,254,254,7,7,7,12,3,3,254,130,130,130, + 130,130,254,13,6,12,16,2,3,255,248,255,248,255,248,255, + 248,255,248,255,248,13,6,12,16,2,3,255,248,128,8,128, + 8,128,8,128,8,255,248,6,13,13,9,2,254,252,252,252, + 252,252,252,252,252,252,252,252,252,252,6,13,13,9,2,254, + 252,132,132,132,132,132,132,132,132,132,132,132,252,16,6,12, + 19,2,3,31,255,63,254,63,254,127,252,127,252,255,248,16, + 6,12,19,2,3,31,255,32,2,32,2,64,4,64,4,255, + 248,11,12,24,14,2,1,4,0,4,0,14,0,14,0,31, + 0,31,0,63,128,63,128,127,192,127,192,255,224,255,224,11, + 12,24,14,2,1,4,0,4,0,10,0,10,0,17,0,17, + 0,32,128,32,128,64,64,64,64,128,32,255,224,7,8,8, + 12,3,1,16,16,56,56,124,124,254,254,7,8,8,12,3, + 1,16,16,40,40,68,68,130,254,12,11,22,15,2,1,192, + 0,240,0,252,0,255,0,255,192,255,240,255,192,255,0,252, + 0,240,0,192,0,12,11,22,15,2,1,192,0,176,0,140, + 0,131,0,128,192,128,48,128,192,131,0,140,0,176,0,192, + 0,8,7,7,13,3,1,192,240,252,255,252,240,192,8,7, + 7,13,3,1,192,176,140,131,140,176,192,12,7,14,15,2, + 1,192,0,252,0,255,192,255,240,255,192,252,0,192,0,12, + 7,14,15,2,1,192,0,188,0,131,192,128,48,131,192,188, + 0,192,0,11,12,24,14,2,1,255,224,255,224,127,192,127, + 192,63,128,63,128,31,0,31,0,14,0,14,0,4,0,4, + 0,11,12,24,14,2,1,255,224,128,32,64,64,64,64,32, + 128,32,128,17,0,17,0,10,0,10,0,4,0,4,0,7, + 8,8,12,3,1,254,254,124,124,56,56,16,16,7,8,8, + 12,3,1,254,130,68,68,40,40,16,16,12,11,22,15,2, + 1,0,48,0,240,3,240,15,240,63,240,255,240,63,240,15, + 240,3,240,0,240,0,48,12,11,22,15,2,1,0,48,0, + 208,3,16,12,16,48,16,192,16,48,16,12,16,3,16,0, + 208,0,48,8,7,7,13,3,1,3,15,63,255,63,15,3, + 8,7,7,13,3,1,3,13,49,193,49,13,3,12,7,14, + 15,2,1,0,48,3,240,63,240,255,240,63,240,3,240,0, + 48,12,7,14,15,2,1,0,48,3,208,60,16,192,16,60, + 16,3,208,0,48,11,11,22,14,2,1,4,0,14,0,31, + 0,63,128,127,192,255,224,127,192,63,128,31,0,14,0,4, + 0,11,11,22,14,2,1,4,0,10,0,17,0,32,128,64, + 64,128,32,64,64,32,128,17,0,10,0,4,0,11,11,22, + 14,2,1,4,0,10,0,17,0,36,128,78,64,159,32,78, + 64,36,128,17,0,10,0,4,0,11,11,22,14,2,1,31, + 0,96,192,64,64,142,32,159,32,159,32,159,32,142,32,64, + 64,96,192,31,0,7,12,12,8,1,0,16,40,40,68,68, + 130,130,68,68,40,40,16,11,11,22,14,2,1,31,0,96, + 192,64,64,128,32,128,32,128,32,128,32,128,32,64,64,96, + 192,31,0,11,11,22,14,2,1,14,0,32,128,64,64,0, + 0,128,32,128,32,128,32,0,0,64,64,32,128,14,0,11, + 11,22,14,2,1,31,0,106,192,106,192,170,160,170,160,170, + 160,170,160,170,160,106,192,106,192,31,0,11,11,22,14,2, + 1,31,0,96,192,64,64,142,32,145,32,145,32,145,32,142, + 32,64,64,96,192,31,0,11,11,22,14,2,1,31,0,127, + 192,127,192,255,224,255,224,255,224,255,224,255,224,127,192,127, + 192,31,0}; +/* + Fontname: -MUTT-ClearlyU-Medium-R-Normal--17-120-100-100-P-123-ISO10646-1 + Copyright: 2001 Computing Research Lab, New Mexico State University. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=16 h=16 x= 3 y=11 dx=16 dy= 0 ascent=16 len=32 + Font Bounding box w=40 h=30 x=-9 y=-10 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_cu12[3993] U8G_SECTION(".progmem.u8g_font_cu12") = { + 0,40,30,247,246,11,2,90,5,94,32,255,252,16,252,12, + 252,0,0,0,5,0,0,2,12,12,5,1,0,192,192,192, + 192,192,192,192,0,0,0,192,192,4,5,5,7,2,7,144, + 144,144,144,144,10,15,30,12,1,253,4,128,4,128,9,0, + 9,0,9,0,255,192,18,0,18,0,18,0,255,192,36,0, + 36,0,36,0,72,0,72,0,5,14,14,8,1,255,32,112, + 168,168,168,160,96,48,40,168,168,168,112,32,11,13,26,14, + 1,255,96,64,152,128,151,128,145,0,146,0,98,0,4,0, + 8,192,9,32,17,32,33,32,33,32,64,192,10,12,24,13, + 1,0,24,0,36,0,36,0,36,0,40,0,51,192,49,0, + 81,0,138,0,138,0,196,64,123,128,1,5,5,4,2,7, + 128,128,128,128,128,4,15,15,6,2,253,16,32,64,64,128, + 128,128,128,128,128,128,64,64,32,16,4,15,15,6,1,253, + 128,64,32,32,16,16,16,16,16,16,16,32,32,64,128,7, + 7,7,7,0,5,16,146,84,56,84,146,16,9,9,18,11, + 2,255,8,0,8,0,8,0,8,0,255,128,8,0,8,0, + 8,0,8,0,2,5,5,5,1,253,192,192,64,64,128,4, + 1,1,7,2,3,240,2,2,2,5,1,0,192,192,5,16, + 16,8,2,252,8,8,16,16,16,16,32,32,32,32,64,64, + 64,64,128,128,5,11,11,7,1,0,112,80,136,136,136,136, + 136,136,136,80,112,5,11,11,7,1,0,32,224,32,32,32, + 32,32,32,32,32,248,5,11,11,7,1,0,112,136,136,136, + 8,16,16,32,72,72,248,5,11,11,7,1,0,112,136,136, + 8,8,48,8,8,136,136,112,7,11,11,9,1,0,24,24, + 40,40,72,200,254,8,8,8,62,5,11,11,7,1,0,136, + 240,128,128,240,200,8,8,136,144,96,5,11,11,7,1,0, + 48,72,64,128,240,136,136,136,136,80,112,6,12,12,8,1, + 0,128,252,132,136,16,16,16,32,32,32,32,32,5,11,11, + 7,1,0,112,136,136,136,80,112,136,136,136,136,112,5,11, + 11,7,1,0,112,80,136,136,136,136,120,8,16,144,96,2, + 7,7,7,3,0,192,192,0,0,0,192,192,2,10,10,5, + 1,253,192,192,0,0,0,192,192,64,64,128,5,9,9,6, + 1,1,8,16,32,64,128,64,32,16,8,10,5,10,13,2, + 2,255,192,0,0,0,0,0,0,255,192,5,9,9,6,1, + 1,128,64,32,16,8,16,32,64,128,5,12,12,8,1,0, + 112,136,136,16,32,32,96,0,0,0,96,96,10,12,24,12, + 1,0,30,0,33,0,76,128,147,64,161,64,161,64,161,64, + 161,64,147,64,77,128,32,192,31,0,11,11,22,11,0,0, + 4,0,4,0,10,0,10,0,10,0,17,0,17,0,31,0, + 32,128,32,128,241,224,10,11,22,10,0,0,255,0,32,128, + 32,64,32,64,32,128,63,0,32,128,32,64,32,64,32,128, + 255,0,9,11,22,10,1,0,30,128,33,128,64,128,128,128, + 128,0,128,0,128,0,128,128,64,128,33,0,30,0,10,11, + 22,10,0,0,254,0,33,128,32,128,32,64,32,64,32,64, + 32,64,32,64,32,128,33,128,254,0,10,11,22,10,1,0, + 255,128,32,128,32,128,34,128,34,0,62,0,34,64,34,64, + 32,128,32,128,255,128,9,11,22,9,1,0,255,128,32,128, + 32,128,34,128,34,0,62,0,34,0,34,0,32,0,32,0, + 248,0,10,11,22,10,1,0,30,128,33,128,64,128,128,128, + 128,0,128,0,131,192,128,128,64,128,32,128,31,128,11,11, + 22,11,1,0,251,224,32,128,32,128,32,128,32,128,63,128, + 32,128,32,128,32,128,32,128,251,224,5,11,11,5,1,0, + 248,32,32,32,32,32,32,32,32,32,248,6,11,11,6,1, + 0,124,16,16,16,16,16,16,16,16,144,224,11,11,22,11, + 1,0,249,224,32,128,33,0,34,0,36,0,46,0,50,0, + 33,0,33,0,32,128,249,224,8,11,11,8,0,0,248,32, + 32,32,32,32,33,33,33,35,255,14,11,22,14,1,0,240, + 60,48,48,48,48,40,80,40,80,40,144,36,144,36,144,35, + 16,35,16,251,124,11,11,22,11,1,0,227,224,48,128,48, + 128,40,128,40,128,36,128,34,128,34,128,33,128,33,128,248, + 128,10,11,22,10,1,0,30,0,33,0,64,128,128,64,128, + 64,128,64,128,64,128,64,64,128,33,0,30,0,9,11,22, + 9,1,0,255,0,33,128,32,128,32,128,33,128,63,0,32, + 0,32,0,32,0,32,0,248,0,10,14,28,10,1,253,30, + 0,33,0,64,128,128,64,128,64,128,64,128,64,128,64,92, + 128,51,0,30,0,2,0,2,64,1,128,11,11,22,11,1, + 0,254,0,33,0,32,128,32,128,33,0,62,0,35,0,33, + 0,33,0,33,0,248,224,6,11,11,7,1,0,124,132,132, + 128,64,48,8,4,132,132,248,9,11,22,9,1,0,255,128, + 136,128,136,128,136,128,8,0,8,0,8,0,8,0,8,0, + 8,0,62,0,11,11,22,11,1,0,251,224,32,128,32,128, + 32,128,32,128,32,128,32,128,32,128,32,128,17,0,14,0, + 11,11,22,11,1,0,241,224,32,128,32,128,17,0,17,0, + 17,0,10,0,10,0,10,0,4,0,4,0,16,11,22,16, + 1,0,241,207,33,132,33,132,34,68,18,72,18,72,18,72, + 20,40,12,48,12,48,8,16,11,11,22,11,1,0,243,192, + 17,0,18,0,10,0,12,0,4,0,10,0,26,0,17,0, + 32,128,241,224,11,11,22,11,1,0,241,224,32,128,17,0, + 17,0,10,0,14,0,4,0,4,0,4,0,4,0,31,0, + 7,11,11,7,1,0,254,196,132,136,8,16,34,34,66,70, + 254,3,16,16,5,1,252,224,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,224,5,16,16,8,2,252,128,128,64, + 64,64,64,32,32,32,32,16,16,16,16,8,8,3,16,16, + 5,0,252,224,32,32,32,32,32,32,32,32,32,32,32,32, + 32,32,224,5,3,3,6,1,9,32,112,136,11,1,2,12, + 1,254,255,224,3,4,4,6,3,8,128,192,64,32,6,7, + 7,7,1,0,112,136,8,120,136,136,124,6,12,12,7,1, + 0,192,64,64,64,64,120,68,68,68,68,68,120,5,7,7, + 6,1,0,112,136,128,128,128,136,112,6,12,12,7,1,0, + 24,8,8,8,8,120,136,136,136,136,136,124,5,7,7,6, + 1,0,112,136,248,128,128,136,112,5,12,12,6,1,0,56, + 72,64,64,64,240,64,64,64,64,64,224,7,11,11,8,1, + 252,62,68,68,68,120,64,124,130,130,130,124,7,12,12,8, + 1,0,192,64,64,64,64,120,68,68,68,68,68,238,3,11, + 11,4,1,0,192,192,0,0,192,64,64,64,64,64,224,4, + 14,14,5,0,253,48,48,0,0,48,16,16,16,16,16,16, + 16,144,224,7,12,12,8,1,0,192,64,64,64,64,94,72, + 80,112,88,72,238,3,12,12,4,1,0,192,64,64,64,64, + 64,64,64,64,64,64,224,11,7,14,12,1,0,251,128,68, + 64,68,64,68,64,68,64,68,64,238,224,7,7,7,8,1, + 0,248,68,68,68,68,68,238,5,7,7,6,1,0,112,136, + 136,136,136,136,112,6,10,10,7,1,253,248,68,68,68,68, + 68,120,64,64,224,6,10,10,7,1,253,120,136,136,136,136, + 136,120,8,8,28,5,7,7,6,1,0,208,104,64,64,64, + 64,240,5,7,7,6,1,0,120,136,128,112,8,136,240,6, + 10,10,7,1,0,32,32,32,248,32,32,32,36,36,24,7, + 7,7,8,1,0,204,68,68,68,68,68,62,8,7,7,9, + 1,0,231,36,36,36,24,24,24,11,7,14,11,0,0,238, + 224,36,128,42,128,42,128,42,128,27,0,17,0,8,7,7, + 9,1,0,231,36,24,24,24,36,231,8,10,10,8,1,253, + 231,36,36,36,24,24,24,16,144,224,5,7,7,6,1,0, + 248,144,144,32,72,72,248,5,16,16,6,1,252,24,32,32, + 32,32,32,32,192,32,32,32,32,32,32,32,24,1,16,16, + 3,2,252,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,5,16,16,5,0,252,192,32,32,32,32,32,32, + 24,32,32,32,32,32,32,32,192,5,3,3,8,1,9,72, + 168,144,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,5,0,0,2,12,12,5,1,253,192, + 192,0,0,0,192,192,192,192,192,192,192,5,11,11,7,1, + 254,16,16,112,168,160,160,160,200,112,64,64,8,12,12,9, + 1,0,6,9,17,16,16,124,16,16,16,81,178,204,7,7, + 7,9,1,3,130,124,68,68,68,124,130,11,11,22,12,0, + 0,241,224,32,128,17,0,10,0,127,192,14,0,4,0,127, + 192,4,0,4,0,31,0,1,16,16,3,2,252,128,128,128, + 128,128,128,128,0,0,128,128,128,128,128,128,128,4,13,13, + 6,1,0,96,144,128,128,96,144,144,144,96,16,16,144,96, + 5,2,2,6,1,11,216,216,9,10,20,10,1,3,62,0, + 65,0,158,128,162,128,162,128,160,128,162,128,156,128,65,0, + 62,0,4,6,6,5,1,7,96,16,112,144,112,240,7,7, + 7,9,1,0,18,36,108,216,108,36,18,6,4,4,8,1, + 2,252,4,4,4,3,1,1,5,0,3,224,9,10,20,10, + 1,3,62,0,65,0,188,128,146,128,146,128,156,128,146,128, + 186,128,65,0,62,0,5,1,1,7,1,11,248,4,4,4, + 6,2,8,96,144,144,96,7,9,9,9,2,1,16,16,16, + 254,16,16,16,0,254,4,7,7,5,1,6,96,144,16,16, + 32,64,240,4,7,7,5,1,6,96,144,16,32,16,144,96, + 3,4,4,6,3,11,32,96,64,128,7,10,10,8,1,253, + 136,136,136,136,136,218,164,128,128,128,7,15,15,8,1,252, + 62,116,244,244,244,116,52,20,20,20,20,20,20,20,20,2, + 2,2,4,2,5,192,192,3,3,3,7,2,253,64,32,224, + 3,7,7,4,1,6,64,192,64,64,64,64,224,4,6,6, + 5,1,7,96,144,144,144,96,240,7,7,7,8,1,0,144, + 72,108,54,108,72,144,11,11,22,12,1,0,64,0,196,0, + 68,0,68,0,68,64,232,192,9,64,10,64,11,224,16,64, + 16,224,11,11,22,12,1,0,64,0,196,0,68,0,68,0, + 68,0,232,192,9,32,8,32,8,64,16,128,17,224,12,11, + 22,13,1,0,96,0,146,0,18,0,34,0,18,32,148,96, + 100,160,5,32,5,240,8,32,8,112,5,12,12,8,1,253, + 48,48,0,0,0,48,32,32,64,128,136,112,11,16,32,11, + 0,0,8,0,12,0,4,0,2,0,0,0,4,0,4,0, + 10,0,10,0,10,0,17,0,17,0,31,0,32,128,32,128, + 241,224,11,16,32,11,0,0,2,0,6,0,4,0,8,0, + 0,0,4,0,4,0,10,0,10,0,10,0,17,0,17,0, + 31,0,32,128,32,128,241,224,11,15,30,11,0,0,4,0, + 14,0,17,0,0,0,4,0,4,0,10,0,10,0,10,0, + 17,0,17,0,31,0,32,128,32,128,241,224,11,15,30,11, + 0,0,9,0,21,0,18,0,0,0,4,0,4,0,10,0, + 10,0,10,0,17,0,17,0,31,0,32,128,32,128,241,224, + 11,14,28,11,0,0,27,0,27,0,0,0,4,0,4,0, + 10,0,10,0,10,0,17,0,17,0,31,0,32,128,32,128, + 241,224,11,15,30,11,0,0,6,0,9,0,9,0,6,0, + 4,0,4,0,10,0,10,0,10,0,17,0,17,0,31,0, + 32,128,32,128,241,224,14,11,22,15,0,0,15,248,10,24, + 10,8,10,40,18,32,31,224,18,36,18,36,34,8,34,8, + 247,248,9,14,28,10,1,253,30,128,33,128,64,128,128,128, + 128,0,128,0,128,0,128,128,64,128,33,0,30,0,8,0, + 4,0,28,0,10,16,32,11,0,0,16,0,24,0,8,0, + 4,0,0,0,255,128,32,128,32,128,34,128,34,0,62,0, + 34,64,34,64,32,128,32,128,255,128,10,16,32,11,0,0, + 4,0,12,0,8,0,16,0,0,0,255,128,32,128,32,128, + 34,128,34,0,62,0,34,64,34,64,32,128,32,128,255,128, + 10,15,30,11,0,0,8,0,28,0,34,0,0,0,255,128, + 32,128,32,128,34,128,34,0,62,0,34,64,34,64,32,128, + 32,128,255,128,10,14,28,11,0,0,54,0,54,0,0,0, + 255,128,32,128,32,128,34,128,34,0,62,0,34,64,34,64, + 32,128,32,128,255,128,5,16,16,6,1,0,64,96,32,16, + 0,248,32,32,32,32,32,32,32,32,32,248,5,16,16,6, + 1,0,16,48,32,64,0,248,32,32,32,32,32,32,32,32, + 32,248,5,15,15,6,1,0,32,112,136,0,248,32,32,32, + 32,32,32,32,32,32,248,5,14,14,6,1,0,216,216,0, + 248,32,32,32,32,32,32,32,32,32,248,10,11,22,11,0, + 0,254,0,33,128,32,128,32,64,32,64,248,64,32,64,32, + 64,32,128,33,128,254,0,11,15,30,12,0,0,9,0,21, + 0,18,0,0,0,227,224,48,128,48,128,40,128,40,128,36, + 128,34,128,34,128,33,128,33,128,248,128,10,16,32,12,1, + 0,16,0,24,0,8,0,4,0,0,0,30,0,33,0,64, + 128,128,64,128,64,128,64,128,64,128,64,64,128,33,0,30, + 0,10,16,32,12,1,0,2,0,6,0,4,0,8,0,0, + 0,30,0,33,0,64,128,128,64,128,64,128,64,128,64,128, + 64,64,128,33,0,30,0,10,15,30,12,1,0,8,0,28, + 0,34,0,0,0,30,0,33,0,64,128,128,64,128,64,128, + 64,128,64,128,64,64,128,33,0,30,0,10,15,30,12,1, + 0,18,0,42,0,36,0,0,0,30,0,33,0,64,128,128, + 64,128,64,128,64,128,64,128,64,64,128,33,0,30,0,10, + 14,28,12,1,0,54,0,54,0,0,0,30,0,33,0,64, + 128,128,64,128,64,128,64,128,64,128,64,64,128,33,0,30, + 0,7,7,7,9,1,0,130,68,40,16,40,68,130,10,13, + 26,12,1,255,0,128,31,0,33,0,66,128,130,64,132,64, + 140,64,136,64,144,64,80,128,33,0,62,0,64,0,11,16, + 32,12,1,0,8,0,12,0,4,0,2,0,0,0,251,224, + 32,128,32,128,32,128,32,128,32,128,32,128,32,128,32,128, + 17,0,14,0,11,16,32,12,1,0,2,0,6,0,4,0, + 8,0,0,0,251,224,32,128,32,128,32,128,32,128,32,128, + 32,128,32,128,32,128,17,0,14,0,11,15,30,12,1,0, + 4,0,14,0,17,0,0,0,251,224,32,128,32,128,32,128, + 32,128,32,128,32,128,32,128,32,128,17,0,14,0,11,14, + 28,12,1,0,27,0,27,0,0,0,251,224,32,128,32,128, + 32,128,32,128,32,128,32,128,32,128,32,128,17,0,14,0, + 11,16,32,12,0,0,2,0,6,0,4,0,8,0,0,0, + 241,224,32,128,17,0,17,0,10,0,14,0,4,0,4,0, + 4,0,4,0,31,0,9,11,22,10,0,0,248,0,32,0, + 62,0,33,0,32,128,32,128,32,128,33,0,62,0,32,0, + 248,0,6,12,12,7,1,0,48,72,72,72,72,216,72,68, + 68,68,68,216,6,12,12,7,1,0,64,96,32,16,0,112, + 136,8,120,136,136,124,6,12,12,7,1,0,16,48,32,64, + 0,112,136,8,120,136,136,124,6,11,11,7,1,0,32,112, + 136,0,112,136,8,120,136,136,124,6,11,11,7,1,0,72, + 168,144,0,112,136,8,120,136,136,124,6,10,10,7,1,0, + 216,216,0,112,136,8,120,136,136,124,6,11,11,7,1,0, + 48,72,72,48,112,136,8,120,136,136,124,10,7,14,11,1, + 0,115,128,140,64,15,192,120,0,136,0,140,64,115,128,5, + 10,10,6,1,253,112,136,128,128,128,136,112,32,16,112,5, + 12,12,6,1,0,64,96,32,16,0,112,136,248,128,128,136, + 112,5,12,12,6,1,0,16,48,32,64,0,112,136,248,128, + 128,136,112,5,11,11,6,1,0,32,112,136,0,112,136,248, + 128,128,136,112,5,10,10,6,1,0,216,216,0,112,136,248, + 128,128,136,112,4,12,12,4,0,0,128,192,64,32,0,96, + 32,32,32,32,32,112,4,12,12,4,1,0,16,48,32,64, + 0,192,64,64,64,64,64,224,5,11,11,5,0,0,32,112, + 136,0,96,32,32,32,32,32,112,5,10,10,6,0,0,216, + 216,0,96,32,32,32,32,32,112,5,12,12,6,1,0,80, + 112,224,16,16,120,136,136,136,136,136,112,7,11,11,8,1, + 0,72,168,144,0,248,68,68,68,68,68,238,5,12,12,6, + 1,0,64,96,32,16,0,112,136,136,136,136,136,112,5,12, + 12,6,1,0,16,48,32,64,0,112,136,136,136,136,136,112, + 5,11,11,6,1,0,32,112,136,0,112,136,136,136,136,136, + 112,5,11,11,6,1,0,72,168,144,0,112,136,136,136,136, + 136,112,5,10,10,6,1,0,216,216,0,112,136,136,136,136, + 136,112,9,7,14,11,1,0,8,0,8,0,0,0,255,128, + 0,0,8,0,8,0,5,11,11,6,1,254,8,16,112,152, + 168,168,168,200,112,64,128,7,12,12,8,1,0,64,96,32, + 16,0,204,68,68,68,68,68,62,7,12,12,8,1,0,8, + 24,16,32,0,204,68,68,68,68,68,62,7,11,11,8,1, + 0,16,56,68,0,204,68,68,68,68,68,62,7,10,10,8, + 1,0,108,108,0,204,68,68,68,68,68,62,8,15,15,8, + 1,253,4,12,8,16,0,231,36,36,36,24,24,24,16,144, + 224,6,15,15,7,1,253,192,64,64,64,64,120,68,68,68, + 68,68,120,64,64,224,8,13,13,8,1,253,54,54,0,231, + 36,36,36,24,24,24,16,144,224}; +/* + Fontname: cursor + Copyright: These glyphs are unencumbered + Capital A Height: 15, '1' Height: 16 + Calculated Max Values w=16 h=16 x= 1 y= 0 dx=17 dy= 0 ascent=15 len=32 + Font Bounding box w=31 h=31 x=-15 y=-16 + Calculated Min Values x=-15 y=-16 dx= 0 dy= 0 + Pure Font ascent =15 descent=-8 + X Font ascent =16 descent=-16 + Max Font ascent =15 descent=-16 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_cursor[5286] U8G_SECTION(".progmem.u8g_font_cursor") = { + 0,31,31,241,240,15,4,101,8,211,32,255,248,15,240,16, + 240,14,14,28,17,250,248,224,28,240,60,248,124,124,248,63, + 240,31,224,15,192,15,192,31,224,63,240,124,248,248,124,240, + 60,224,28,16,16,32,17,249,247,240,15,248,31,252,63,254, + 127,127,254,63,252,31,248,15,240,15,240,31,248,63,252,127, + 254,254,127,252,63,248,31,240,15,14,14,28,17,243,242,0, + 12,0,60,0,248,3,248,15,240,63,240,3,224,7,224,14, + 192,28,192,56,128,112,128,224,0,64,0,16,16,32,17,242, + 241,0,7,0,31,0,127,1,254,7,254,31,252,63,252,63, + 248,7,248,15,240,31,240,62,224,124,224,248,64,112,0,32, + 0,8,10,10,17,253,255,255,0,255,24,24,24,24,90,60, + 24,10,12,24,17,252,254,255,192,255,192,255,192,255,192,255, + 192,30,0,30,0,127,128,127,128,127,128,63,0,30,0,8, + 10,10,17,253,255,24,60,90,24,24,24,24,255,0,255,10, + 12,24,17,252,254,12,0,30,0,127,128,127,128,127,128,30, + 0,30,0,255,192,255,192,255,192,255,192,255,192,16,8,16, + 17,242,251,1,0,7,192,136,96,255,255,0,24,0,32,0, + 64,255,192,16,9,18,17,242,251,7,0,15,192,159,224,255, + 255,255,255,255,255,255,248,255,224,255,192,13,14,28,17,250, + 248,226,56,34,32,34,32,34,32,255,248,162,40,162,40,162, + 40,162,40,255,248,34,32,34,32,34,32,226,56,15,16,32, + 17,249,247,251,190,251,190,251,190,59,184,255,254,255,254,255, + 254,251,190,251,190,255,254,255,254,255,254,59,184,251,190,251, + 190,251,190,14,14,28,17,0,255,192,0,192,0,196,16,196, + 32,196,64,196,128,197,0,198,0,199,240,192,0,192,0,192, + 0,255,252,255,252,16,16,32,17,255,254,240,0,240,0,247, + 12,247,28,247,56,247,112,247,224,247,192,247,252,247,252,247, + 252,240,0,255,255,255,255,255,255,255,255,14,14,28,17,243, + 255,0,12,0,12,32,140,16,140,8,140,4,140,2,140,1, + 140,63,140,0,12,0,12,0,12,255,252,255,252,16,16,32, + 17,242,254,0,15,0,15,48,239,56,239,28,239,14,239,7, + 239,3,239,63,239,63,239,63,239,0,15,255,255,255,255,255, + 255,255,255,13,14,28,17,250,255,2,0,2,0,2,0,2, + 0,2,0,2,0,34,32,18,64,10,128,7,0,2,0,0, + 0,255,248,255,248,15,16,32,17,249,254,3,128,3,128,3, + 128,3,128,3,128,3,128,51,152,59,184,31,240,15,224,7, + 192,3,128,255,254,255,254,255,254,255,254,14,10,20,17,249, + 255,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,255,252,255,252,16,12,24,17,248,254,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,255,255,255,255,255, + 255,255,255,15,16,32,17,248,248,255,254,128,0,191,254,160, + 2,175,250,168,10,171,234,170,42,170,170,171,170,168,42,175, + 234,160,10,191,250,128,2,255,254,16,16,32,17,248,248,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,10, + 14,28,17,252,242,12,0,12,0,30,0,30,0,63,0,63, + 0,127,128,127,128,204,192,140,64,12,0,12,0,12,0,12, + 0,12,16,32,17,251,241,15,0,15,0,31,128,31,128,63, + 192,63,192,127,224,127,224,255,240,255,240,255,240,239,112,15, + 0,15,0,15,0,15,0,14,14,28,17,249,249,7,128,31, + 224,63,240,120,120,112,56,224,28,224,28,224,28,224,28,112, + 56,120,120,63,240,31,224,7,128,16,16,32,17,248,248,7, + 224,31,248,63,252,127,254,127,254,252,63,248,31,248,31,248, + 31,248,31,252,63,127,254,127,254,63,252,31,248,7,224,14, + 16,32,17,250,243,63,240,103,152,200,204,147,36,158,36,136, + 68,199,140,127,248,83,40,83,40,83,40,87,168,211,44,240, + 60,255,252,255,252,15,16,32,17,250,243,127,248,239,156,219, + 238,183,182,191,246,159,102,207,206,255,252,215,172,215,172,215, + 172,223,236,215,174,243,62,255,254,255,254,15,16,32,17,249, + 249,31,240,32,8,96,6,80,26,79,226,192,2,192,2,64, + 2,64,2,89,26,106,170,235,170,218,154,64,2,64,2,63, + 252,16,16,32,17,249,249,31,240,63,248,127,255,127,255,255, + 255,255,255,255,255,255,255,127,255,127,255,255,255,255,255,255, + 255,255,255,127,255,63,252,16,15,30,17,249,248,2,128,2, + 128,2,128,2,128,2,128,2,128,254,255,0,0,254,255,2, + 128,2,128,2,128,2,128,2,128,2,128,16,16,32,17,249, + 247,7,192,7,192,7,192,7,192,7,192,255,255,255,255,255, + 255,255,255,255,255,7,192,7,192,7,192,7,192,7,192,7, + 192,16,15,30,17,249,248,66,132,162,138,82,148,42,168,22, + 208,10,160,253,127,2,128,253,127,10,160,22,208,42,168,82, + 148,162,138,66,132,16,15,30,17,249,248,102,204,182,219,222, + 246,110,236,54,216,250,191,252,127,1,0,252,127,250,191,54, + 216,110,236,222,246,182,219,102,204,16,15,30,17,249,248,1, + 0,1,0,1,0,1,0,1,0,1,0,1,0,254,255,1, + 0,1,0,1,0,1,0,1,0,1,0,1,0,16,16,32, + 17,249,247,3,128,3,128,3,128,3,128,3,128,3,128,255, + 255,255,255,255,255,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,15,15,30,17,249,248,2,128,6,192,10,160,18, + 144,34,136,66,132,254,254,0,0,254,254,66,132,34,136,18, + 144,10,160,6,192,2,128,16,16,32,17,249,247,7,192,15, + 224,31,240,59,184,115,156,227,142,255,255,254,255,255,255,227, + 142,115,156,59,184,31,240,15,224,7,192,3,128,10,10,20, + 17,251,251,30,0,127,128,127,128,255,192,255,192,255,192,255, + 192,127,128,127,128,30,0,12,12,24,17,250,250,31,128,127, + 224,127,224,255,240,255,240,255,240,255,240,255,240,255,240,127, + 224,127,224,31,128,12,12,24,17,250,249,255,240,128,16,128, + 16,128,16,128,16,134,16,134,16,128,16,128,16,128,16,128, + 16,255,240,14,14,28,17,249,248,255,252,255,252,255,252,224, + 28,224,28,231,156,231,156,231,156,231,156,224,28,224,28,255, + 252,255,252,255,252,10,14,28,17,251,249,12,0,30,0,63, + 0,109,128,204,192,12,0,12,0,12,0,12,0,204,192,109, + 128,63,0,30,0,12,0,12,16,32,17,250,248,15,0,31, + 128,63,192,127,224,255,240,255,240,255,240,15,0,15,0,255, + 240,255,240,255,240,127,224,63,192,31,128,15,0,15,15,30, + 17,242,241,0,2,0,12,0,60,0,248,3,248,15,240,63, + 240,1,224,2,224,4,192,8,192,16,128,32,128,64,0,128, + 0,15,16,32,17,242,240,0,6,0,30,0,126,1,252,7, + 248,31,248,127,240,127,240,7,224,15,224,29,192,57,192,113, + 128,225,128,192,0,128,0,15,15,30,17,242,241,0,2,0, + 12,0,60,0,248,3,248,0,112,0,176,1,32,2,32,4, + 0,8,0,16,0,32,0,64,0,128,0,15,15,30,17,242, + 241,0,6,0,30,0,124,1,252,7,248,7,248,1,240,3, + 240,7,96,14,64,28,0,56,0,112,0,224,0,192,0,12, + 12,24,17,250,249,255,240,137,16,153,144,176,208,224,112,134, + 16,134,16,224,112,176,208,153,144,137,16,255,240,14,14,28, + 17,249,248,255,252,255,252,207,204,223,236,252,252,251,124,247, + 188,247,188,251,124,252,252,223,236,207,204,255,252,255,252,14, + 14,28,17,250,248,143,192,223,224,248,48,144,16,152,0,252, + 0,0,0,0,0,0,252,0,100,32,36,48,124,31,236,15, + 196,16,16,32,17,249,247,199,224,239,240,255,248,255,252,252, + 28,255,12,255,0,255,0,0,255,0,255,48,127,56,63,63, + 255,31,255,15,247,7,227,14,14,28,17,249,249,3,0,7, + 128,15,192,3,0,35,16,99,24,255,252,255,252,99,24,35, + 16,3,0,15,192,7,128,3,0,16,16,32,17,248,248,3, + 192,3,224,7,224,15,240,23,232,59,220,255,255,255,255,255, + 255,255,255,59,220,23,232,15,240,7,224,3,192,3,192,16, + 15,30,17,242,243,0,120,0,112,128,51,159,176,255,240,254, + 48,252,48,96,56,0,240,31,224,8,0,8,0,8,0,8, + 0,30,0,16,16,32,17,242,243,0,252,0,252,192,255,255, + 255,255,255,255,252,255,252,255,252,255,252,255,252,127,248,31, + 240,28,0,28,0,63,0,63,0,16,16,32,17,254,240,63, + 0,16,128,200,64,234,160,200,32,203,160,248,60,56,63,8, + 39,8,39,9,47,9,39,9,32,17,16,33,8,62,248,16, + 16,32,17,254,240,63,0,223,128,239,192,255,224,239,224,239, + 252,255,254,255,255,63,239,15,239,15,255,15,239,15,231,31, + 240,63,248,62,248,13,16,32,17,244,240,0,24,0,120,1, + 224,3,192,7,128,15,192,31,224,95,192,255,224,191,224,15, + 192,15,128,148,0,196,0,104,0,48,0,13,16,32,17,244, + 240,0,56,0,248,3,240,7,224,15,192,31,224,127,240,255, + 240,255,240,255,240,255,224,255,192,255,128,254,0,252,0,120, + 0,15,14,28,17,0,242,127,128,128,64,126,32,16,16,14, + 16,16,16,14,40,16,68,12,130,3,4,2,72,1,16,0, + 160,0,64,16,16,32,17,0,241,127,128,255,192,255,224,255, + 240,127,248,31,248,63,248,31,252,63,254,31,255,15,254,7, + 252,3,248,1,240,0,224,0,64,15,14,28,17,250,250,62, + 248,99,140,193,6,128,2,128,2,128,2,128,2,192,6,96, + 12,48,24,24,48,12,96,6,192,3,128,15,14,28,17,250, + 250,62,248,127,252,227,142,193,6,192,6,192,6,194,134,225, + 14,112,28,56,56,28,112,15,224,7,192,3,128,16,16,32, + 17,248,248,255,255,213,85,170,171,213,85,160,11,208,5,160, + 11,208,5,160,11,208,5,160,11,208,5,170,171,213,85,170, + 171,255,255,16,16,32,17,248,248,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,14,14,28,17,249,248,127, + 248,63,240,159,228,207,204,231,156,243,60,255,252,255,252,243, + 60,231,156,207,204,159,228,63,240,127,248,16,16,32,17,248, + 247,63,252,127,254,127,254,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,127,254,127,254,63, + 252,8,14,14,17,0,242,128,192,224,240,248,252,254,255,248, + 216,140,12,6,6,10,16,32,17,255,241,192,0,224,0,240, + 0,248,0,252,0,254,0,255,0,255,128,255,192,255,192,254, + 0,239,0,207,0,7,128,7,128,3,0,14,13,26,17,0, + 249,192,0,192,0,193,0,194,0,196,0,200,0,223,252,200, + 0,196,0,194,0,193,0,192,0,192,0,16,15,30,17,255, + 248,240,0,240,0,240,192,241,192,243,128,247,0,255,255,255, + 255,255,255,247,0,243,128,241,192,240,192,240,0,240,0,10, + 14,28,17,0,249,192,0,192,0,192,0,192,0,192,0,192, + 0,255,192,255,192,192,0,192,0,192,0,192,0,192,0,192, + 0,12,16,32,17,255,248,240,0,240,0,240,0,240,0,240, + 0,240,0,255,240,255,240,255,240,255,240,240,0,240,0,240, + 0,240,0,240,0,240,0,16,16,32,17,248,248,128,3,127, + 253,127,253,68,69,69,85,69,85,69,85,69,85,68,69,127, + 253,127,253,127,253,127,253,127,253,127,253,128,3,15,16,32, + 17,248,248,127,252,255,254,255,254,255,254,255,254,255,254,255, + 254,255,254,255,254,255,254,255,254,255,254,255,254,255,254,255, + 254,127,252,10,10,20,17,0,255,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,255,192,255,192,12,12,24, + 17,255,254,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,255,240,255,240,255,240,255,240,10,10,20,17,247, + 255,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,255,192,255,192,12,12,24,17,246,254,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,255,240,255,240,255, + 240,255,240,16,16,32,17,242,245,3,128,30,240,2,128,129, + 0,67,135,36,75,29,112,5,64,4,64,2,128,4,64,9, + 32,18,144,20,80,120,60,248,63,16,16,32,17,242,245,31, + 224,63,240,63,248,195,130,231,199,127,255,63,251,31,240,7, + 224,7,192,15,224,31,240,63,248,126,252,252,127,252,127,16, + 16,32,17,248,248,128,3,127,253,127,253,68,69,84,85,84, + 85,84,85,84,85,68,69,127,253,127,253,127,253,127,253,127, + 253,127,253,128,3,15,16,32,17,248,248,127,252,255,254,255, + 254,255,254,255,254,255,254,255,254,255,254,255,254,255,254,255, + 254,255,254,255,254,255,254,255,254,127,252,15,14,28,17,252, + 243,7,0,12,0,6,0,3,0,127,248,128,4,179,54,179, + 54,179,54,128,6,128,6,96,28,24,96,7,128,16,16,32, + 17,252,241,15,128,30,0,15,0,7,0,127,248,255,252,255, + 255,255,255,255,255,255,255,255,255,255,255,63,247,31,224,15, + 192,7,128,11,16,32,17,246,255,112,0,136,0,140,0,74, + 0,122,0,33,0,17,0,16,128,8,128,12,64,4,64,2, + 32,1,224,0,224,0,96,0,32,13,16,32,17,245,255,252, + 0,254,0,255,0,127,0,63,128,63,128,31,192,15,192,15, + 224,7,224,7,240,3,248,1,248,0,248,0,120,0,56,15, + 16,32,17,249,252,7,128,15,192,31,224,51,48,51,48,31, + 224,15,192,7,128,135,132,135,134,67,8,56,112,7,128,31, + 226,240,62,128,4,16,16,32,17,249,252,15,192,31,224,63, + 240,127,248,127,248,63,240,31,224,143,193,143,199,207,207,247, + 156,120,120,7,128,127,227,255,255,240,62,10,10,20,17,252, + 251,12,0,12,0,12,0,12,0,255,192,255,192,12,0,12, + 0,12,0,12,0,12,12,24,17,251,250,15,0,15,0,15, + 0,15,0,255,240,255,240,255,240,255,240,15,0,15,0,15, + 0,15,0,9,15,30,17,252,248,62,0,127,0,227,128,193, + 128,225,128,99,128,7,0,30,0,28,0,20,0,20,0,119, + 0,54,0,28,0,8,0,11,16,32,17,251,248,31,0,63, + 128,127,192,255,224,241,224,249,224,123,224,63,192,31,128,31, + 0,31,0,63,128,127,192,63,128,31,0,14,0,8,14,14, + 17,249,242,1,3,7,15,31,63,127,255,31,27,49,48,96, + 96,10,16,32,17,248,241,0,192,1,192,3,192,7,192,15, + 192,31,192,63,192,127,192,255,192,255,192,31,192,61,192,60, + 192,120,0,120,0,48,0,14,13,26,17,243,249,0,12,0, + 12,2,12,1,12,0,140,0,76,255,236,0,76,0,140,1, + 12,2,12,0,12,0,12,16,15,30,17,242,248,0,15,0, + 15,3,15,3,143,1,207,0,239,255,255,255,255,255,255,0, + 239,1,207,3,143,3,15,0,15,0,15,10,14,28,17,247, + 249,0,192,0,192,0,192,0,192,0,192,0,192,255,192,255, + 192,0,192,0,192,0,192,0,192,0,192,0,192,12,16,32, + 17,246,248,0,240,0,240,0,240,0,240,0,240,0,240,255, + 240,255,240,255,240,255,240,0,240,0,240,0,240,0,240,0, + 240,0,240,16,16,32,17,248,248,128,3,127,253,127,253,68, + 69,85,69,85,69,85,69,85,69,68,69,127,253,127,253,127, + 253,127,253,127,253,127,253,128,3,15,16,32,17,248,248,127, + 252,255,254,255,254,255,254,255,254,255,254,255,254,255,254,255, + 254,255,254,255,254,255,254,255,254,255,254,255,254,127,252,14, + 14,28,17,250,248,255,252,128,68,128,68,128,68,255,196,136, + 68,136,68,136,68,136,68,143,252,136,4,136,4,136,4,255, + 252,16,16,32,17,249,247,255,255,255,255,255,255,224,119,255, + 247,255,247,255,247,238,119,238,119,239,255,239,255,239,255,238, + 7,255,255,255,255,255,255,12,13,26,17,250,242,1,0,1, + 0,5,128,5,128,13,128,13,192,29,192,29,192,61,224,61, + 224,125,224,125,240,248,224,16,16,32,17,248,240,0,192,0, + 224,1,224,3,240,3,240,7,240,7,248,15,248,15,248,31, + 252,31,252,63,252,63,255,127,255,255,248,127,224,7,15,15, + 17,253,0,40,40,40,40,40,40,40,40,40,40,40,254,124, + 56,16,9,16,32,17,252,255,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,255,128,255,128, + 127,0,62,0,28,0,8,0,15,7,14,17,249,252,16,16, + 48,24,127,252,240,30,127,252,48,24,16,16,15,9,18,17, + 249,251,24,48,56,56,127,252,255,254,255,254,255,254,127,252, + 56,56,24,48,15,7,14,17,1,252,16,0,48,0,127,254, + 240,0,127,254,48,0,16,0,16,9,18,17,0,251,12,0, + 28,0,63,255,127,255,255,255,127,255,63,255,28,0,12,0, + 15,7,14,17,241,252,0,16,0,24,255,252,0,30,255,252, + 0,24,0,16,16,9,18,17,241,251,0,48,0,56,255,252, + 255,254,255,255,255,254,255,252,0,56,0,48,7,15,15,17, + 253,240,16,56,124,254,40,40,40,40,40,40,40,40,40,40, + 40,9,16,32,17,252,240,8,0,28,0,62,0,127,0,255, + 128,255,128,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,62,0,7,15,15,17,253,248,16,56,124, + 254,40,40,40,40,40,40,40,254,124,56,16,9,15,30,17, + 252,248,28,0,62,0,127,0,255,128,255,128,62,0,62,0, + 62,0,62,0,62,0,255,128,255,128,127,0,62,0,28,0, + 15,16,32,17,246,240,0,32,0,112,0,248,1,222,5,222, + 9,222,17,222,17,222,17,222,17,222,49,222,113,222,253,222, + 24,136,0,120,0,48,16,16,32,17,245,240,0,56,0,124, + 0,254,0,255,6,255,14,255,30,255,30,255,30,255,30,255, + 62,255,126,255,254,255,126,254,12,126,0,60,14,14,28,17, + 249,249,255,0,128,0,128,0,128,0,143,192,136,64,136,68, + 136,68,8,68,15,196,0,36,0,20,0,12,3,252,16,16, + 32,17,248,248,255,192,255,192,255,192,224,0,239,240,239,240, + 239,247,238,119,238,119,239,247,15,247,15,255,0,31,3,255, + 3,255,3,255,16,16,32,17,250,247,32,16,16,32,16,32, + 8,64,8,64,135,135,103,152,31,224,31,224,103,152,135,135, + 8,64,8,64,16,32,16,32,32,16,16,16,32,17,250,247, + 96,24,48,48,16,32,24,96,143,193,207,207,111,220,63,240, + 63,224,111,248,207,207,143,193,24,64,24,96,48,48,96,24, + 11,16,32,17,247,242,0,96,1,0,52,96,121,0,104,96, + 252,0,132,0,228,0,164,0,228,0,164,0,228,0,228,0, + 132,0,132,0,252,0,12,16,32,17,246,242,0,48,24,176, + 62,176,62,176,126,176,255,0,255,0,255,0,255,0,255,0, + 255,0,255,0,255,0,255,0,255,0,255,0,15,16,32,17, + 249,247,1,0,2,128,2,128,2,128,4,64,4,64,4,64, + 57,56,192,6,56,56,9,32,18,144,36,72,40,40,48,24, + 32,8,16,16,32,17,249,247,1,0,3,128,3,128,6,192, + 6,192,12,96,28,120,249,62,192,7,248,62,57,56,51,152, + 102,204,108,108,120,60,112,28,15,13,26,17,249,249,3,128, + 15,224,28,112,48,24,96,12,193,6,194,134,193,6,96,12, + 48,24,28,112,15,224,3,128,16,14,28,17,249,249,7,192, + 15,224,31,240,60,120,112,28,225,14,195,135,198,199,195,135, + 225,14,112,28,60,120,31,240,7,192,13,13,26,16,250,249, + 2,0,2,0,2,0,2,0,2,0,2,0,255,248,2,0, + 2,0,2,0,2,0,2,0,2,0,15,15,30,16,249,248, + 3,128,3,128,3,128,3,128,3,128,3,128,255,254,255,254, + 255,254,3,128,3,128,3,128,3,128,3,128,3,128,14,14, + 28,17,0,242,192,0,240,0,124,0,127,0,63,192,63,240, + 31,0,31,0,12,128,12,64,4,32,4,16,0,8,0,4, + 16,16,32,17,255,241,224,0,248,0,254,0,127,128,127,224, + 63,252,63,252,31,252,31,192,15,224,15,112,7,56,7,28, + 7,14,0,7,0,3,14,14,28,17,0,242,255,252,255,252, + 192,0,192,0,192,0,199,240,198,0,197,0,196,128,196,64, + 196,32,196,16,192,0,192,0,16,16,32,17,255,241,255,255, + 255,255,255,255,255,255,240,0,247,252,247,252,247,252,247,192, + 247,224,247,112,247,56,247,28,247,12,240,0,240,0,14,14, + 28,17,243,242,255,252,255,252,0,12,0,12,0,12,63,140, + 1,140,2,140,4,140,8,140,16,140,32,140,0,12,0,12, + 16,16,32,17,242,241,255,255,255,255,255,255,255,255,0,15, + 63,239,63,239,63,239,3,239,7,239,14,239,28,239,56,239, + 48,239,0,15,0,15,13,14,28,17,250,242,255,248,255,248, + 0,0,2,0,7,0,10,128,18,64,34,32,2,0,2,0, + 2,0,2,0,2,0,2,0,15,16,32,17,249,241,255,254, + 255,254,255,254,255,254,3,128,7,192,15,224,31,240,59,184, + 51,152,3,128,3,128,3,128,3,128,3,128,3,128,14,10, + 20,17,249,246,255,252,255,252,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,3,0,16,12,24,17,248,245,255,255, + 255,255,255,255,255,255,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,7,16,16,17,253,240,16,0,56,124, + 254,238,254,124,56,16,186,214,146,130,130,130,9,16,32,17, + 252,240,28,0,28,0,62,0,127,0,255,128,255,128,255,128, + 127,0,62,0,93,0,255,128,255,128,255,128,235,128,235,128, + 227,128,10,10,20,17,0,246,255,192,255,192,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,12,12,24,17, + 255,245,255,240,255,240,255,240,255,240,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,14,14,28,17,249,244, + 17,32,4,80,147,76,79,144,50,96,194,24,2,0,2,0, + 2,0,2,0,2,0,2,128,2,128,1,0,16,16,32,17, + 248,242,23,110,223,251,191,252,127,255,255,252,255,255,243,158, + 3,128,3,128,3,128,3,128,3,224,3,224,3,224,3,224, + 1,192,10,10,20,17,247,246,255,192,255,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,12,12,24,17, + 246,245,255,240,255,240,255,240,255,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,16,16,32,17,241,249, + 31,224,31,224,31,224,63,240,97,24,193,12,129,7,131,135, + 131,135,132,7,200,12,96,24,63,240,31,224,31,224,31,224, + 16,16,32,17,241,249,63,240,63,240,63,240,127,248,255,252, + 255,255,255,255,255,255,255,255,255,255,255,255,255,252,127,248, + 63,240,63,240,63,240,7,14,14,10,253,249,238,56,16,16, + 16,16,16,16,16,16,16,16,56,238,9,16,32,10,252,248, + 247,128,255,128,255,128,62,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,62,0,255,128,255,128,247,128, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255}; +/* + Fontname: cursor + Copyright: These + Capital A Height: 0, '1' Height: 0 + Calculated Max Values w=16 h=16 x= 0 y= 0 dx=17 dy= 0 ascent= 7 len=32 + Font Bounding box w=31 h=31 x=-15 y=-16 + Calculated Min Values x=-14 y=-16 dx= 0 dy= 0 + Pure Font ascent = 0 descent= 0 + X Font ascent = 0 descent= 0 + Max Font ascent = 7 descent=-16 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_cursorr[492] U8G_SECTION(".progmem.u8g_font_cursorr") = { + 0,31,31,241,240,0,1,6,0,0,32,80,0,7,240,0, + 0,255,255,14,14,28,17,243,242,0,12,0,60,0,248,3, + 248,15,240,63,240,3,224,7,224,14,192,28,192,56,128,112, + 128,224,0,64,0,16,16,32,17,242,241,0,7,0,31,0, + 127,1,254,7,254,31,252,63,252,63,248,7,248,15,240,31, + 240,62,224,124,224,248,64,112,0,32,0,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,10,14,28, + 17,252,242,12,0,12,0,30,0,30,0,63,0,63,0,127, + 128,127,128,204,192,140,64,12,0,12,0,12,0,12,0,12, + 16,32,17,251,241,15,0,15,0,31,128,31,128,63,192,63, + 192,127,224,127,224,255,240,255,240,255,240,239,112,15,0,15, + 0,15,0,15,0,255,255,255,255,255,255,16,15,30,17,249, + 248,2,128,2,128,2,128,2,128,2,128,2,128,254,255,0, + 0,254,255,2,128,2,128,2,128,2,128,2,128,2,128,16, + 16,32,17,249,247,7,192,7,192,7,192,7,192,7,192,255, + 255,255,255,255,255,255,255,255,255,7,192,7,192,7,192,7, + 192,7,192,7,192,255,255,16,15,30,17,249,248,1,0,1, + 0,1,0,1,0,1,0,1,0,1,0,254,255,1,0,1, + 0,1,0,1,0,1,0,1,0,1,0,16,16,32,17,249, + 247,3,128,3,128,3,128,3,128,3,128,3,128,255,255,255, + 255,255,255,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,255,255,255,255,255,255,255,255,15,15,30,17,242,241,0, + 2,0,12,0,60,0,248,3,248,15,240,63,240,1,224,2, + 224,4,192,8,192,16,128,32,128,64,0,128,0,15,16,32, + 17,242,240,0,6,0,30,0,126,1,252,7,248,31,248,127, + 240,127,240,7,224,15,224,29,192,57,192,113,128,225,128,192, + 0,128,0,15,15,30,17,242,241,0,2,0,12,0,60,0, + 248,3,248,0,112,0,176,1,32,2,32,4,0,8,0,16, + 0,32,0,64,0,128,0,15,15,30,17,242,241,0,6,0, + 30,0,124,1,252,7,248,7,248,1,240,3,240,7,96,14, + 64,28,0,56,0,112,0,224,0,192,0,255}; +/* + Fontname: -FreeType-fixed_v01-Medium-R-Normal--8-80-72-72-P-51-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 7 h= 9 x= 2 y= 6 dx= 6 dy= 0 ascent= 7 len= 9 + Font Bounding box w= 7 h= 9 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 7 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fixed_v0[1702] U8G_SECTION(".progmem.u8g_font_fixed_v0") = { + 1,7,9,0,254,7,1,46,2,94,32,255,254,7,254,7, + 254,2,0,64,34,23,103,128,128,128,128,0,128,128,23,50, + 98,160,160,3,85,101,80,248,80,248,80,2,87,103,112,168, + 160,112,40,168,112,2,87,103,136,144,16,32,64,72,136,2, + 87,103,104,136,104,144,144,144,104,23,18,98,128,128,2,87, + 103,56,64,128,128,128,64,56,2,87,103,224,16,8,8,8, + 16,224,2,87,103,32,168,112,32,112,168,32,3,85,101,32, + 32,248,32,32,18,34,98,64,128,5,81,97,248,18,18,98, + 128,128,2,87,103,8,16,16,32,64,64,128,2,87,103,112, + 136,136,136,136,136,112,2,87,103,32,96,32,32,32,32,248, + 2,87,103,112,136,8,16,32,64,248,2,87,103,240,8,8, + 48,8,8,240,2,87,103,16,144,144,248,16,16,16,2,87, + 103,248,128,128,240,8,8,240,2,87,103,112,128,128,240,136, + 136,112,2,87,103,248,8,8,8,8,8,8,2,87,103,112, + 136,136,112,136,136,112,2,87,103,112,136,136,248,8,8,112, + 18,21,101,128,128,0,128,128,18,37,101,64,64,0,64,128, + 2,87,103,24,32,64,128,64,32,24,4,83,99,248,0,248, + 2,87,103,192,32,16,8,16,32,192,2,87,103,248,8,8, + 48,0,32,32,2,87,103,112,136,136,168,184,128,112,2,87, + 103,112,136,136,248,136,136,136,2,87,103,240,136,136,240,136, + 136,240,2,87,103,112,136,128,128,128,136,112,2,87,103,240, + 136,136,136,136,136,240,2,87,103,248,128,128,224,128,128,248, + 2,87,103,248,128,128,224,128,128,128,2,87,103,112,136,128, + 184,136,136,112,2,87,103,136,136,136,248,136,136,136,2,87, + 103,248,32,32,32,32,32,248,2,87,103,248,8,8,8,8, + 136,112,2,87,103,136,136,144,224,144,136,136,2,87,103,128, + 128,128,128,128,128,248,2,87,103,136,136,216,168,136,136,136, + 2,87,103,136,136,200,168,152,136,136,2,87,103,112,136,136, + 136,136,136,112,2,87,103,240,136,136,240,128,128,128,2,87, + 103,112,136,136,136,136,168,112,2,87,103,240,136,136,240,160, + 144,136,2,87,103,112,136,128,112,8,136,112,2,87,103,248, + 32,32,32,32,32,32,2,87,103,136,136,136,136,136,136,112, + 2,87,103,136,136,136,136,136,80,32,2,87,103,136,136,136, + 168,168,168,80,2,87,103,136,136,80,32,80,136,136,2,87, + 103,136,136,80,32,32,32,32,2,87,103,248,8,16,32,64, + 128,248,18,55,103,224,128,128,128,128,128,224,2,87,103,128, + 64,64,32,16,16,8,18,55,103,224,32,32,32,32,32,224, + 23,50,98,64,160,2,113,97,254,39,34,98,64,128,2,85, + 101,112,8,120,136,120,2,87,103,128,128,240,136,136,136,240, + 2,85,101,112,136,128,136,112,2,87,103,8,8,120,136,136, + 136,120,2,85,101,112,136,248,128,120,2,87,103,56,64,240, + 64,64,64,64,0,87,103,112,136,136,136,120,8,112,2,87, + 103,128,128,240,136,136,136,136,2,87,103,48,0,248,32,32, + 32,248,0,89,105,48,0,248,8,8,8,8,8,112,2,87, + 103,128,128,136,144,224,144,136,2,87,103,224,32,32,32,32, + 32,248,2,85,101,208,168,168,168,168,2,85,101,176,200,136, + 136,136,2,85,101,112,136,136,136,112,0,87,103,240,136,136, + 136,240,128,128,0,87,103,120,136,136,136,120,8,8,2,85, + 101,184,192,128,128,128,2,85,101,120,128,112,8,240,2,87, + 103,32,32,248,32,32,32,32,2,85,101,136,136,136,136,112, + 2,85,101,136,136,136,80,32,2,85,101,136,168,168,168,80, + 2,85,101,136,80,32,80,136,0,87,103,136,136,136,136,120, + 8,112,2,85,101,248,16,32,64,248,2,87,103,24,32,64, + 192,64,32,24,34,23,103,128,128,128,128,128,128,128,2,87, + 103,192,32,16,24,16,32,192,4,82,98,72,176,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,2, + 87,103,48,0,248,32,32,32,248,2,87,103,32,112,168,160, + 168,112,32,2,87,103,64,64,64,240,64,72,120,3,85,101, + 136,112,80,112,136,2,87,103,136,136,80,248,32,248,32,34, + 23,103,128,128,128,0,128,128,128,2,87,103,120,128,120,136, + 240,8,240,5,81,97,248,2,87,103,112,136,168,200,168,136, + 112,2,87,103,112,8,120,136,120,0,248,4,83,99,72,144, + 72,4,82,98,248,8,255,2,87,103,112,136,248,200,200,136, + 112,8,81,97,248,20,51,99,64,160,64,2,87,103,32,32, + 248,32,32,0,248,255,255,255,255,255,255,255,255,255,4,83, + 99,144,72,144,255,255,255,255,2,87,103,64,32,112,136,248, + 136,136,2,87,103,16,32,112,136,248,136,136,2,87,103,32, + 80,112,136,248,136,136,2,87,103,72,176,112,136,248,136,136, + 2,87,103,80,0,112,136,248,136,136,2,87,103,112,0,112, + 136,248,136,136,2,87,103,120,160,160,240,160,160,184,0,89, + 105,112,136,128,128,128,136,112,32,96,2,87,103,64,32,248, + 128,224,128,248,2,87,103,16,32,248,128,224,128,248,2,87, + 103,32,80,248,128,224,128,248,2,87,103,80,0,248,128,224, + 128,248,2,87,103,64,32,248,32,32,32,248,2,87,103,16, + 32,248,32,32,32,248,2,87,103,32,80,248,32,32,32,248, + 2,87,103,80,0,248,32,32,32,248,2,87,103,240,136,136, + 232,136,136,240,2,87,103,72,176,136,200,168,152,136,2,87, + 103,64,32,112,136,136,136,112,2,87,103,16,32,112,136,136, + 136,112,2,87,103,32,80,112,136,136,136,112,2,87,103,72, + 176,112,136,136,136,112,2,87,103,80,0,112,136,136,136,112, + 20,51,99,160,64,160,2,87,103,112,136,152,168,200,136,112, + 2,87,103,64,32,136,136,136,136,112,2,87,103,16,32,136, + 136,136,136,112,2,87,103,32,80,136,136,136,136,112,2,87, + 103,80,0,136,136,136,136,112,2,87,103,16,32,136,136,80, + 32,32,2,87,103,128,128,240,136,240,128,128,0,89,105,240, + 136,136,176,136,136,176,128,128,2,87,103,64,32,112,8,120, + 136,120,2,87,103,16,32,112,8,120,136,120,2,87,103,32, + 80,112,8,120,136,120,2,87,103,72,176,112,8,120,136,120, + 2,87,103,80,0,112,8,120,136,120,2,87,103,48,0,112, + 8,120,136,120,2,85,101,240,40,120,160,120,0,87,103,112, + 136,128,136,112,32,96,2,87,103,64,32,112,136,248,128,120, + 2,87,103,16,32,112,136,248,128,120,2,87,103,32,80,112, + 136,248,128,120,2,87,103,80,0,112,136,248,128,120,2,87, + 103,64,32,248,32,32,32,248,2,87,103,16,32,248,32,32, + 32,248,2,87,103,32,80,248,32,32,32,248,2,87,103,80, + 0,248,32,32,32,248,2,87,103,8,56,8,120,136,136,120, + 2,87,103,72,176,176,200,136,136,136,2,87,103,64,32,112, + 136,136,136,112,2,87,103,16,32,112,136,136,136,112,2,87, + 103,32,80,112,136,136,136,112,2,87,103,72,176,112,136,136, + 136,112,2,87,103,80,0,112,136,136,136,112,3,85,101,32, + 0,248,0,32,2,85,101,112,152,168,200,112,2,87,103,64, + 32,136,136,136,136,112,2,87,103,16,32,136,136,136,136,112, + 2,87,103,32,80,136,136,136,136,112,2,87,103,80,0,136, + 136,136,136,112,0,89,105,16,32,136,136,136,136,120,8,112, + 2,87,103,128,128,240,136,240,128,128,0,89,105,80,0,136, + 136,136,136,120,8,112}; +/* + Fontname: -FreeType-fixed_v01-Medium-R-Normal--8-80-72-72-P-51-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 0, '1' Height: 7 + Calculated Max Values w= 5 h= 7 x= 1 y= 3 dx= 6 dy= 0 ascent= 7 len= 7 + Font Bounding box w= 7 h= 9 x= 0 y=-2 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 7 descent= 0 + X Font ascent = 7 descent= 0 + Max Font ascent = 7 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fixed_v0n[159] U8G_SECTION(".progmem.u8g_font_fixed_v0n") = { + 1,7,9,0,254,7,0,0,0,0,42,57,0,7,0,7, + 0,2,87,103,32,168,112,32,112,168,32,3,85,101,32,32, + 248,32,32,18,34,98,64,128,5,81,97,248,18,18,98,128, + 128,2,87,103,8,16,16,32,64,64,128,2,87,103,112,136, + 136,136,136,136,112,2,87,103,32,96,32,32,32,32,248,2, + 87,103,112,136,8,16,32,64,248,2,87,103,240,8,8,48, + 8,8,240,2,87,103,16,144,144,248,16,16,16,2,87,103, + 248,128,128,240,8,8,240,2,87,103,112,128,128,240,136,136, + 112,2,87,103,248,8,8,8,8,8,8,2,87,103,112,136, + 136,112,136,136,112,2,87,103,112,136,136,248,8,8,112}; +/* + Fontname: -FreeType-fixed_v01-Medium-R-Normal--8-80-72-72-P-51-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 7 h= 9 x= 2 y= 5 dx= 6 dy= 0 ascent= 7 len= 9 + Font Bounding box w= 7 h= 9 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 7 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fixed_v0r[878] U8G_SECTION(".progmem.u8g_font_fixed_v0r") = { + 1,7,9,0,254,7,1,46,2,94,32,127,254,7,254,7, + 254,2,0,64,34,23,103,128,128,128,128,0,128,128,23,50, + 98,160,160,3,85,101,80,248,80,248,80,2,87,103,112,168, + 160,112,40,168,112,2,87,103,136,144,16,32,64,72,136,2, + 87,103,104,136,104,144,144,144,104,23,18,98,128,128,2,87, + 103,56,64,128,128,128,64,56,2,87,103,224,16,8,8,8, + 16,224,2,87,103,32,168,112,32,112,168,32,3,85,101,32, + 32,248,32,32,18,34,98,64,128,5,81,97,248,18,18,98, + 128,128,2,87,103,8,16,16,32,64,64,128,2,87,103,112, + 136,136,136,136,136,112,2,87,103,32,96,32,32,32,32,248, + 2,87,103,112,136,8,16,32,64,248,2,87,103,240,8,8, + 48,8,8,240,2,87,103,16,144,144,248,16,16,16,2,87, + 103,248,128,128,240,8,8,240,2,87,103,112,128,128,240,136, + 136,112,2,87,103,248,8,8,8,8,8,8,2,87,103,112, + 136,136,112,136,136,112,2,87,103,112,136,136,248,8,8,112, + 18,21,101,128,128,0,128,128,18,37,101,64,64,0,64,128, + 2,87,103,24,32,64,128,64,32,24,4,83,99,248,0,248, + 2,87,103,192,32,16,8,16,32,192,2,87,103,248,8,8, + 48,0,32,32,2,87,103,112,136,136,168,184,128,112,2,87, + 103,112,136,136,248,136,136,136,2,87,103,240,136,136,240,136, + 136,240,2,87,103,112,136,128,128,128,136,112,2,87,103,240, + 136,136,136,136,136,240,2,87,103,248,128,128,224,128,128,248, + 2,87,103,248,128,128,224,128,128,128,2,87,103,112,136,128, + 184,136,136,112,2,87,103,136,136,136,248,136,136,136,2,87, + 103,248,32,32,32,32,32,248,2,87,103,248,8,8,8,8, + 136,112,2,87,103,136,136,144,224,144,136,136,2,87,103,128, + 128,128,128,128,128,248,2,87,103,136,136,216,168,136,136,136, + 2,87,103,136,136,200,168,152,136,136,2,87,103,112,136,136, + 136,136,136,112,2,87,103,240,136,136,240,128,128,128,2,87, + 103,112,136,136,136,136,168,112,2,87,103,240,136,136,240,160, + 144,136,2,87,103,112,136,128,112,8,136,112,2,87,103,248, + 32,32,32,32,32,32,2,87,103,136,136,136,136,136,136,112, + 2,87,103,136,136,136,136,136,80,32,2,87,103,136,136,136, + 168,168,168,80,2,87,103,136,136,80,32,80,136,136,2,87, + 103,136,136,80,32,32,32,32,2,87,103,248,8,16,32,64, + 128,248,18,55,103,224,128,128,128,128,128,224,2,87,103,128, + 64,64,32,16,16,8,18,55,103,224,32,32,32,32,32,224, + 23,50,98,64,160,2,113,97,254,39,34,98,64,128,2,85, + 101,112,8,120,136,120,2,87,103,128,128,240,136,136,136,240, + 2,85,101,112,136,128,136,112,2,87,103,8,8,120,136,136, + 136,120,2,85,101,112,136,248,128,120,2,87,103,56,64,240, + 64,64,64,64,0,87,103,112,136,136,136,120,8,112,2,87, + 103,128,128,240,136,136,136,136,2,87,103,48,0,248,32,32, + 32,248,0,89,105,48,0,248,8,8,8,8,8,112,2,87, + 103,128,128,136,144,224,144,136,2,87,103,224,32,32,32,32, + 32,248,2,85,101,208,168,168,168,168,2,85,101,176,200,136, + 136,136,2,85,101,112,136,136,136,112,0,87,103,240,136,136, + 136,240,128,128,0,87,103,120,136,136,136,120,8,8,2,85, + 101,184,192,128,128,128,2,85,101,120,128,112,8,240,2,87, + 103,32,32,248,32,32,32,32,2,85,101,136,136,136,136,112, + 2,85,101,136,136,136,80,32,2,85,101,136,168,168,168,80, + 2,85,101,136,80,32,80,136,0,87,103,136,136,136,136,120, + 8,112,2,85,101,248,16,32,64,248,2,87,103,24,32,64, + 192,64,32,24,34,23,103,128,128,128,128,128,128,128,2,87, + 103,192,32,16,24,16,32,192,4,82,98,72,176,255}; +/* + Fontname: -FreeType-FreeDooM-Bold-R-Normal--34-340-72-72-P-170-ISO8859-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w= 7 h=10 x= 4 y=10 dx= 8 dy= 0 ascent=12 len=10 + Font Bounding box w= 7 h=12 x= 0 y= 0 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent =10 descent= 1 + X Font ascent =12 descent= 0 + Max Font ascent =12 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_freedoomr10r[1042] U8G_SECTION(".progmem.u8g_font_freedoomr10r") = { + 0,7,12,0,0,10,1,113,3,88,32,127,1,12,0,12, + 0,0,0,0,7,0,1,0,0,0,7,0,1,0,0,0, + 7,0,1,0,0,0,7,0,1,0,0,0,7,0,1,0, + 0,0,7,0,1,0,0,0,7,0,1,0,0,0,7,0, + 1,3,10,10,7,0,2,96,128,128,128,128,128,128,128,128, + 96,3,10,10,7,3,2,192,32,32,32,32,32,32,32,32, + 192,5,5,5,8,1,7,168,112,32,112,168,7,7,7,8, + 0,4,16,16,16,254,16,16,16,2,2,2,7,2,10,64, + 128,7,1,1,8,0,7,254,2,2,2,7,2,2,192,192, + 7,10,10,8,0,2,2,4,4,8,16,16,32,64,64,128, + 6,10,10,7,0,2,252,132,132,132,132,132,132,132,132,252, + 2,10,10,7,4,2,192,64,64,64,64,64,64,64,64,64, + 6,10,10,7,0,2,252,4,4,4,4,252,128,128,128,252, + 6,10,10,7,0,2,252,4,4,4,60,4,4,4,4,252, + 6,10,10,7,0,2,132,132,132,132,132,252,4,4,4,4, + 6,10,10,7,0,2,252,128,128,128,252,4,4,4,4,252, + 6,10,10,7,0,2,252,128,128,128,252,132,132,132,132,252, + 6,10,10,7,0,2,252,4,4,4,4,4,4,4,4,4, + 6,10,10,7,0,2,252,132,132,132,252,132,132,132,132,252, + 6,10,10,7,0,2,252,132,132,132,252,4,4,4,4,252, + 2,7,7,7,2,2,192,192,0,0,0,192,192,0,0,0, + 7,0,1,0,0,0,7,0,1,0,0,0,7,0,1,0, + 0,0,7,0,1,0,0,0,7,0,1,0,0,0,7,0, + 1,7,10,10,8,0,2,254,130,130,130,130,254,130,130,130, + 130,7,10,10,8,0,2,254,130,130,130,252,130,130,130,130, + 254,7,10,10,8,0,2,254,128,128,128,128,128,128,128,128, + 254,7,10,10,8,0,2,252,130,130,130,130,130,130,130,130, + 252,7,10,10,8,0,2,254,128,128,128,248,128,128,128,128, + 254,7,10,10,8,0,2,254,128,128,128,248,128,128,128,128, + 128,7,10,10,8,0,2,254,128,128,128,158,130,130,130,130, + 254,7,10,10,8,0,2,130,130,130,130,254,130,130,130,130, + 130,1,10,10,8,3,2,128,128,128,128,128,128,128,128,128, + 128,7,10,10,8,0,2,30,2,2,2,2,2,130,130,130, + 124,7,10,10,8,0,2,130,132,136,144,224,160,144,136,132, + 130,7,10,10,8,0,2,128,128,128,128,128,128,128,128,128, + 254,7,10,10,8,0,2,130,198,170,146,130,130,130,130,130, + 130,7,10,10,8,0,2,194,194,162,162,146,146,138,138,134, + 134,7,10,10,8,0,2,124,130,130,130,130,130,130,130,130, + 124,7,10,10,8,0,2,254,130,130,130,254,128,128,128,128, + 128,7,10,10,8,0,2,120,132,132,132,132,132,132,132,132, + 126,7,10,10,8,0,2,254,130,130,130,254,160,144,136,132, + 130,7,10,10,8,0,2,254,128,128,128,128,254,2,2,2, + 254,7,9,9,8,0,3,254,16,16,16,16,16,16,16,16, + 7,10,10,8,0,2,130,130,130,130,130,130,130,130,130,254, + 7,10,10,8,0,2,130,130,130,68,68,108,40,40,16,16, + 7,10,10,8,0,2,130,130,130,130,130,146,146,170,170,198, + 7,10,10,8,0,2,130,68,68,40,16,16,40,68,68,130, + 7,10,10,8,0,2,130,130,130,130,254,16,16,16,16,16, + 7,10,10,8,0,2,254,2,6,12,24,48,96,192,128,254, + 4,10,10,7,0,2,240,128,128,128,128,128,128,128,128,240, + 6,10,10,7,0,2,128,64,64,32,32,16,16,8,8,4, + 4,10,10,7,2,2,240,16,16,16,16,16,16,16,16,240, + 5,3,3,7,1,9,32,80,136,6,1,1,7,0,2,252, + 2,2,2,7,2,10,128,64,0,0,0,7,0,1,0,0, + 0,7,0,1,0,0,0,7,0,1,0,0,0,7,0,1, + 0,0,0,7,0,1,0,0,0,7,0,1,0,0,0,7, + 0,1,0,0,0,7,0,1,0,0,0,7,0,1,0,0, + 0,7,0,1,0,0,0,7,0,1,0,0,0,7,0,1, + 0,0,0,7,0,1,0,0,0,7,0,1,0,0,0,7, + 0,1,0,0,0,7,0,1,0,0,0,7,0,1,0,0, + 0,7,0,1,0,0,0,7,0,1,0,0,0,7,0,1, + 0,0,0,7,0,1,0,0,0,7,0,1,0,0,0,7, + 0,1,0,0,0,7,0,1,0,0,0,7,0,1,0,0, + 0,7,0,1,0,0,0,7,0,1,0,0,0,7,0,1, + 0,0,0,7,0,1,0,0,0,7,0,1,0,0,0,7, + 0,1}; +/* + Fontname: -FreeType-FreeDooM-Bold-R-Normal--34-340-72-72-P-170-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 24 + Calculated Max Values w=17 h=24 x= 7 y=13 dx=19 dy= 0 ascent=26 len=72 + Font Bounding box w=18 h=26 x= 0 y= 0 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent =24 descent= 0 + X Font ascent =24 descent= 0 + Max Font ascent =26 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_freedoomr25n[943] U8G_SECTION(".progmem.u8g_font_freedoomr25n") = { + 0,18,26,0,0,24,3,112,3,144,32,127,0,26,0,24, + 0,0,0,0,11,0,0,255,255,255,255,255,255,255,255,255, + 255,17,16,48,19,1,6,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,1,192,0,255,255,128,255, + 255,128,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,7,8,8,11,3,2,62,62,62, + 62,62,240,240,240,9,2,4,11,1,13,255,128,255,128,5, + 5,5,11,5,2,248,248,248,248,248,255,17,24,72,19,1, + 2,255,255,128,255,255,128,192,3,128,192,3,128,192,3,128, + 192,3,128,192,3,128,192,3,128,192,3,128,192,3,128,192, + 3,128,192,3,128,192,3,128,192,3,128,192,3,128,192,3, + 128,192,3,128,192,3,128,192,3,128,192,3,128,192,3,128, + 255,255,128,255,255,128,255,255,128,6,24,24,19,7,2,252, + 252,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,17,24,72,19,1,2,255,255,128, + 255,255,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + 3,128,0,3,128,0,3,128,0,3,128,0,3,128,255,255, + 128,255,255,128,192,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,0,192,0,0,192,0,0,255,255,128,255, + 255,128,255,255,128,17,24,72,19,1,2,255,255,128,255,255, + 128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128, + 0,3,128,0,3,128,0,3,128,0,3,128,31,255,128,31, + 255,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3, + 128,0,3,128,0,3,128,0,3,128,255,255,128,255,255,128, + 255,255,128,17,24,72,19,1,2,192,3,128,192,3,128,192, + 3,128,192,3,128,192,3,128,192,3,128,192,3,128,192,3, + 128,192,3,128,192,3,128,192,3,128,255,255,128,255,255,128, + 0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + 3,128,0,3,128,0,3,128,0,3,128,0,3,128,0,3, + 128,17,24,72,19,1,2,255,255,128,255,255,128,192,0,0, + 192,0,0,192,0,0,192,0,0,192,0,0,192,0,0,192, + 0,0,192,0,0,192,0,0,255,255,128,255,255,128,0,3, + 128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128, + 0,3,128,0,3,128,255,255,128,255,255,128,255,255,128,17, + 24,72,19,1,2,255,255,128,255,255,128,192,0,0,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,0,255,255,128,255,255,128,192,3,128,192, + 3,128,192,3,128,192,3,128,192,3,128,192,3,128,192,3, + 128,192,3,128,255,255,128,255,255,128,255,255,128,16,24,48, + 19,2,2,255,255,255,255,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,17,24,72,19,1,2,255,255,128,255,255,128,192, + 3,128,192,3,128,192,3,128,192,3,128,192,3,128,192,3, + 128,192,3,128,192,3,128,192,3,128,255,255,128,255,255,128, + 192,3,128,192,3,128,192,3,128,192,3,128,192,3,128,192, + 3,128,192,3,128,192,3,128,255,255,128,255,255,128,255,255, + 128,17,24,72,19,1,2,255,255,128,255,255,128,192,3,128, + 192,3,128,192,3,128,192,3,128,192,3,128,192,3,128,192, + 3,128,192,3,128,192,3,128,255,255,128,255,255,128,0,3, + 128,0,3,128,0,3,128,0,3,128,0,3,128,0,3,128, + 0,3,128,0,3,128,255,255,128,255,255,128,255,255,128,5, + 16,16,11,5,2,248,248,248,248,248,0,0,0,0,0,0, + 248,248,248,248,248,7,16,16,11,3,2,62,62,62,62,62, + 0,0,0,62,62,62,62,62,240,240,240,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--16-160-72-72-P-81-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=16 h=17 x= 4 y=10 dx=17 dy= 0 ascent=17 len=34 + Font Bounding box w=24 h=21 x=-1 y=-4 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =17 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub11[3948] U8G_SECTION(".progmem.u8g_font_fub11") = { + 0,24,21,255,252,11,2,82,5,55,32,255,253,17,252,11, + 253,0,0,0,5,0,0,2,11,11,6,2,0,192,192,192, + 192,192,192,192,192,0,0,192,6,5,5,8,1,6,204,204, + 204,204,204,10,11,22,11,1,0,9,128,25,128,25,0,127, + 192,51,0,50,0,54,0,255,0,100,0,108,0,76,0,8, + 14,14,10,1,254,8,62,126,203,200,248,126,15,11,203,235, + 126,8,8,15,11,22,17,1,0,60,32,238,96,198,64,198, + 192,231,128,125,124,3,238,2,198,6,198,4,238,8,124,11, + 11,22,13,1,0,62,0,119,0,99,0,119,0,60,0,124, + 192,238,192,199,192,195,192,243,192,63,224,2,5,5,7,2, + 6,192,192,192,192,192,3,14,14,6,1,253,96,96,96,224, + 192,192,192,192,192,192,224,96,96,96,3,14,14,7,2,253, + 192,192,192,96,96,96,96,96,96,96,96,224,192,192,6,5, + 5,10,2,5,120,48,252,48,120,9,9,18,16,3,0,8, + 0,8,0,8,0,8,0,255,128,8,0,8,0,8,0,8, + 0,3,4,4,5,1,254,96,96,192,192,4,2,2,6,1, + 3,240,240,2,2,2,5,2,0,192,192,5,12,12,7,1, + 255,24,24,16,48,48,32,32,96,96,64,192,192,8,11,11, + 9,1,0,60,102,195,195,195,195,195,195,195,102,60,4,11, + 11,9,2,0,48,240,240,48,48,48,48,48,48,48,48,8, + 11,11,9,1,0,62,119,99,3,7,6,30,60,112,224,255, + 8,11,11,9,1,0,124,238,198,6,60,6,3,195,199,126, + 60,8,11,11,9,1,0,14,30,30,54,102,102,198,255,255, + 6,6,8,11,11,9,1,0,254,192,192,192,254,231,3,3, + 199,254,124,8,11,11,9,1,0,60,118,67,192,222,231,195, + 195,195,102,60,8,11,11,9,1,0,255,3,7,6,14,12, + 28,24,56,56,112,8,11,11,9,1,0,126,231,195,231,60, + 102,195,195,195,231,60,8,11,11,9,1,0,60,102,195,195, + 231,127,3,3,198,110,60,2,8,8,5,2,0,192,192,0, + 0,0,0,192,192,3,10,10,5,1,254,96,96,0,0,0, + 0,96,96,192,192,10,8,16,16,3,1,0,64,3,128,12, + 0,112,0,128,0,112,0,14,0,1,192,10,4,8,16,3, + 3,255,192,0,0,0,0,255,192,10,8,16,16,3,1,128, + 0,96,0,28,0,3,128,0,192,7,0,24,0,224,0,7, + 11,11,9,1,0,120,238,134,6,12,24,48,48,48,0,48, + 15,14,28,17,1,253,7,224,30,120,48,28,103,236,238,230, + 204,102,204,102,204,102,204,102,239,252,103,184,48,0,28,32, + 7,224,11,11,22,11,0,0,14,0,14,0,15,0,27,0, + 27,128,57,128,49,128,63,192,127,192,96,224,224,96,9,11, + 22,11,1,0,254,0,199,0,195,0,195,0,199,0,252,0, + 195,0,193,128,193,128,195,128,254,0,10,11,22,12,1,0, + 31,0,115,128,97,192,192,0,192,0,192,0,192,0,193,192, + 97,192,115,128,31,0,9,11,22,11,1,0,252,0,207,0, + 195,0,193,128,193,128,193,128,193,128,193,128,195,0,207,0, + 252,0,8,11,11,10,1,0,255,192,192,192,192,255,192,192, + 192,192,255,8,11,11,9,1,0,255,192,192,192,192,254,192, + 192,192,192,192,10,11,22,12,1,0,31,0,59,192,96,192, + 224,0,192,0,195,192,192,192,192,192,96,192,57,192,31,192, + 9,11,22,11,1,0,193,128,193,128,193,128,193,128,193,128, + 255,128,193,128,193,128,193,128,193,128,193,128,2,11,11,4, + 1,0,192,192,192,192,192,192,192,192,192,192,192,8,11,11, + 10,1,0,3,3,3,3,3,3,3,195,195,254,124,9,11, + 22,11,1,0,195,0,199,0,206,0,220,0,248,0,248,0, + 220,0,206,0,206,0,199,0,195,128,8,11,11,9,1,0, + 192,192,192,192,192,192,192,192,192,255,255,13,11,22,15,1, + 0,240,120,240,120,248,248,216,216,216,216,221,216,205,152,205, + 152,207,152,199,24,199,24,10,11,22,12,1,0,240,192,240, + 192,248,192,216,192,220,192,204,192,206,192,198,192,199,192,195, + 192,195,192,11,11,22,13,1,0,31,0,123,192,96,192,192, + 96,192,96,192,96,192,96,192,96,96,192,123,192,31,0,8, + 11,11,10,1,0,252,199,195,195,199,254,192,192,192,192,192, + 12,11,22,14,1,0,31,0,123,128,96,192,192,96,192,96, + 192,96,192,96,192,96,96,192,123,192,31,240,9,11,22,11, + 1,0,254,0,199,128,193,128,193,128,195,0,254,0,195,0, + 193,128,193,128,193,128,193,128,9,11,22,11,1,0,62,0, + 119,0,193,128,224,0,248,0,127,0,15,128,1,128,193,128, + 119,0,62,0,9,11,22,11,1,0,255,128,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 10,11,22,12,1,0,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,225,192,115,128,62,0,11,11,22,12, + 0,0,224,96,96,96,112,224,48,192,49,192,57,128,25,128, + 31,128,31,0,15,0,14,0,16,11,22,16,0,0,225,135, + 99,198,99,198,99,198,119,206,54,108,54,108,54,108,60,60, + 28,56,28,56,11,11,22,11,0,0,112,192,49,192,59,128, + 31,0,14,0,14,0,31,0,27,0,51,128,113,192,224,224, + 10,11,22,10,0,0,225,192,113,128,51,128,59,0,31,0, + 30,0,12,0,12,0,12,0,12,0,12,0,8,11,11,10, + 1,0,255,7,6,14,28,24,56,112,96,192,255,4,14,14, + 6,1,253,240,192,192,192,192,192,192,192,192,192,192,192,192, + 240,5,12,12,7,1,255,128,192,192,64,96,96,32,48,48, + 16,16,24,4,14,14,7,1,253,240,48,48,48,48,48,48, + 48,48,48,48,48,48,240,8,10,10,16,4,0,16,24,24, + 36,36,36,66,66,129,129,8,1,1,8,0,254,255,3,3, + 3,4,0,9,192,64,32,7,8,8,9,1,0,60,110,6, + 126,230,198,238,118,8,11,11,10,1,0,192,192,192,220,246, + 199,195,195,195,230,220,7,8,8,9,1,0,60,110,198,192, + 192,198,238,60,8,11,11,10,1,0,3,3,3,59,111,227, + 195,195,195,103,59,7,8,8,9,1,0,60,110,198,254,192, + 198,110,60,5,11,11,7,1,0,56,48,48,248,48,48,48, + 48,48,48,48,8,11,11,10,1,253,59,111,227,195,195,195, + 103,59,3,103,60,7,11,11,9,1,0,192,192,192,220,238, + 198,198,198,198,198,198,2,11,11,4,1,0,192,192,0,192, + 192,192,192,192,192,192,192,3,14,14,5,1,253,96,96,0, + 96,96,96,96,96,96,96,96,96,224,224,7,11,11,9,1, + 0,192,192,192,206,220,216,240,216,220,204,198,2,11,11,4, + 1,0,192,192,192,192,192,192,192,192,192,192,192,12,8,16, + 14,1,0,220,224,239,112,198,48,198,48,198,48,198,48,198, + 48,198,48,7,8,8,9,1,0,220,238,198,198,198,198,198, + 198,8,8,8,10,1,0,60,102,195,195,195,195,102,60,8, + 11,11,10,1,253,220,230,195,195,195,199,246,220,192,192,192, + 8,11,11,10,1,253,59,103,195,195,195,195,111,59,3,3, + 3,5,8,8,7,1,0,216,240,192,192,192,192,192,192,7, + 8,8,9,1,0,124,238,192,248,30,198,238,124,6,10,10, + 8,1,0,48,48,252,48,48,48,48,48,56,28,7,8,8, + 9,1,0,198,198,198,198,198,198,238,118,8,8,8,9,0, + 0,227,99,103,118,54,60,28,28,13,8,16,14,0,0,231, + 24,103,152,103,152,111,176,61,240,60,240,60,240,56,224,8, + 8,8,9,0,0,99,118,62,28,60,62,103,227,8,11,11, + 9,0,253,227,99,119,54,54,62,28,28,24,24,56,6,8, + 8,8,1,0,252,12,24,56,112,96,192,252,6,15,15,8, + 1,252,28,56,48,48,48,48,112,192,96,48,48,48,48,48, + 28,1,16,16,5,2,252,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,6,15,15,8,1,252,224,112,48, + 48,48,48,24,12,24,48,48,48,48,48,240,8,2,2,9, + 0,3,121,223,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,5,0,0,2,11,11,6,2, + 253,192,0,0,192,192,192,192,192,192,192,192,7,12,12,9, + 1,254,4,4,60,110,206,208,208,214,110,60,32,64,8,11, + 11,10,1,0,62,119,96,96,252,96,96,96,96,96,255,9, + 8,16,10,1,2,128,128,93,0,34,0,65,0,65,0,34, + 0,93,0,128,128,9,11,22,11,1,0,195,128,99,0,103, + 0,247,128,62,0,60,0,255,128,24,0,24,0,24,0,24, + 0,1,14,14,5,2,253,128,128,128,128,128,128,0,0,128, + 128,128,128,128,128,6,14,14,8,1,253,120,236,192,224,120, + 124,204,204,248,120,28,12,156,248,5,1,1,5,0,10,216, + 12,11,22,14,1,0,31,128,57,192,111,96,217,176,152,16, + 152,16,153,144,143,16,64,32,48,192,31,128,5,8,8,7, + 1,3,112,216,120,216,216,120,0,248,8,6,6,10,1,1, + 103,102,238,206,102,103,9,4,8,10,0,3,255,128,0,128, + 0,128,0,128,255,12,11,22,14,1,0,31,128,57,192,111, + 96,201,176,136,144,143,16,137,144,136,144,72,160,48,192,31, + 128,5,1,1,5,0,10,248,4,4,4,6,1,7,96,208, + 144,240,9,10,20,16,3,0,8,0,8,0,8,0,255,128, + 8,0,8,0,8,0,0,0,0,0,255,128,5,6,6,7, + 1,5,112,216,24,48,192,248,5,7,7,7,1,4,112,216, + 24,112,24,216,112,3,3,3,4,1,9,96,192,128,255,7, + 14,14,9,1,253,126,244,244,244,244,116,20,20,20,20,20, + 20,20,20,2,2,2,4,1,4,192,192,4,4,4,3,0, + 252,64,48,176,224,3,6,6,5,1,5,96,224,96,96,96, + 96,6,8,8,8,1,3,120,252,204,204,204,120,0,252,8, + 6,6,10,1,1,204,102,103,103,102,204,12,11,22,13,1, + 0,224,128,97,128,99,0,99,0,102,0,108,224,12,224,25, + 224,25,96,51,240,96,96,11,11,22,13,1,0,97,0,227, + 0,98,0,102,0,100,0,109,224,27,96,24,96,49,192,35, + 0,99,224,12,11,22,13,1,0,120,192,216,128,113,128,217, + 0,115,0,6,96,4,224,13,224,25,96,25,240,48,96,7, + 11,11,9,1,253,24,0,24,24,56,112,224,192,194,254,60, + 11,16,32,11,0,0,24,0,12,0,4,0,0,0,0,0, + 14,0,14,0,15,0,27,0,27,128,57,128,49,128,63,192, + 127,192,96,224,224,96,11,16,32,11,0,0,3,0,2,0, + 4,0,0,0,0,0,14,0,14,0,15,0,27,0,27,128, + 57,128,49,128,63,192,127,192,96,224,224,96,11,16,32,11, + 0,0,6,0,14,0,25,0,0,0,0,0,14,0,14,0, + 15,0,27,0,27,128,57,128,49,128,63,192,127,192,96,224, + 224,96,11,15,30,11,0,0,13,0,23,0,0,0,0,0, + 14,0,14,0,15,0,27,0,27,128,57,128,49,128,63,192, + 127,192,96,224,224,96,11,15,30,11,0,0,27,0,0,0, + 0,0,0,0,14,0,14,0,15,0,27,0,27,0,59,128, + 49,128,63,192,127,192,96,224,224,96,10,17,34,12,1,0, + 12,0,18,0,18,0,30,0,0,0,0,0,12,0,30,0, + 30,0,63,0,51,0,51,0,99,128,127,128,255,192,192,192, + 192,192,15,11,22,16,0,0,3,254,7,128,7,128,13,128, + 29,128,25,254,57,128,63,128,97,128,97,128,193,254,10,15, + 30,12,1,252,31,0,119,128,97,192,192,0,192,0,192,0, + 192,0,193,192,97,192,115,128,62,0,8,0,14,0,2,0, + 28,0,8,16,16,10,1,0,96,48,24,0,0,255,192,192, + 192,192,255,192,192,192,192,255,8,16,16,10,1,0,12,8, + 16,0,0,255,192,192,192,192,255,192,192,192,192,255,8,16, + 16,10,1,0,24,60,36,0,0,255,192,192,192,192,255,192, + 192,192,192,255,8,15,15,10,1,0,102,0,0,0,255,192, + 192,192,192,255,192,192,192,192,255,4,16,16,4,255,0,192, + 96,48,0,0,48,48,48,48,48,48,48,48,48,48,48,4, + 16,16,4,1,0,112,96,192,0,0,192,192,192,192,192,192, + 192,192,192,192,192,4,16,16,4,0,0,96,240,144,0,0, + 96,96,96,96,96,96,96,96,96,96,96,5,15,15,5,0, + 0,216,0,0,0,48,48,48,48,48,48,48,48,48,48,48, + 11,11,22,12,0,0,127,0,99,128,96,192,96,224,96,96, + 252,96,96,96,96,224,96,192,99,128,127,0,10,15,30,12, + 1,0,25,0,22,0,0,0,0,0,240,192,240,192,248,192, + 216,192,220,192,204,192,206,192,198,192,199,192,195,192,195,192, + 11,16,32,13,1,0,24,0,8,0,12,0,0,0,0,0, + 31,0,123,192,96,192,192,96,192,96,192,96,192,96,192,96, + 96,192,123,192,31,0,11,16,32,13,1,0,3,0,2,0, + 4,0,0,0,0,0,31,0,123,192,96,192,192,96,192,96, + 192,96,192,96,192,96,96,192,123,192,31,0,11,16,32,13, + 1,0,14,0,27,0,17,0,0,0,0,0,31,0,123,192, + 96,192,192,96,192,96,192,96,192,96,192,96,96,192,123,192, + 31,0,11,15,30,13,1,0,31,0,0,0,0,0,0,0, + 31,0,123,192,96,192,192,96,192,96,192,96,192,96,224,224, + 96,192,127,192,31,0,11,15,30,13,1,0,27,0,0,0, + 0,0,0,0,31,0,123,192,96,192,192,96,192,96,192,96, + 192,96,192,96,96,192,123,192,31,0,8,8,8,16,4,0, + 129,195,102,24,24,36,66,129,11,11,22,13,1,0,31,160, + 59,192,96,192,193,96,194,96,196,96,200,96,208,96,224,192, + 123,128,191,0,10,16,32,12,1,0,48,0,24,0,8,0, + 0,0,0,0,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,225,192,127,128,62,0,10,16,32,12,1,0, + 3,0,6,0,4,0,0,0,0,0,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,225,192,127,128,62,0, + 10,16,32,12,1,0,28,0,30,0,51,0,0,0,0,0, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 225,192,127,128,62,0,10,15,30,12,1,0,51,0,0,0, + 0,0,0,0,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,225,192,115,128,62,0,10,16,32,10,0,0, + 6,0,6,0,4,0,0,0,0,0,225,192,113,128,51,128, + 59,0,31,0,30,0,12,0,12,0,12,0,12,0,12,0, + 8,11,11,10,1,0,192,192,254,199,195,195,199,254,192,192, + 192,8,11,11,10,1,0,124,238,198,206,220,216,206,199,195, + 219,222,7,12,12,9,1,0,96,48,16,0,60,110,6,126, + 230,198,238,118,7,12,12,9,1,0,12,24,16,0,60,110, + 6,126,230,198,238,118,7,12,12,9,1,0,56,44,68,0, + 60,110,6,126,230,198,238,118,7,11,11,9,1,0,60,0, + 0,60,110,6,126,230,198,238,118,7,11,11,9,1,0,108, + 0,0,60,230,6,126,230,198,238,118,7,13,13,9,1,0, + 24,36,36,60,0,60,102,6,126,230,198,238,126,13,8,16, + 15,1,0,60,224,103,176,7,24,127,248,231,0,199,24,237, + 184,120,240,7,12,12,9,1,252,60,110,198,192,192,198,110, + 60,16,28,4,56,7,13,13,9,1,0,96,32,48,16,0, + 60,110,198,254,192,198,110,60,7,13,13,9,1,0,12,12, + 24,16,0,60,110,198,254,192,198,110,60,7,13,13,9,1, + 0,24,56,44,68,0,60,110,198,254,192,198,110,60,7,12, + 12,9,1,0,108,0,0,0,60,110,198,254,192,206,110,60, + 3,12,12,4,0,0,192,96,32,0,96,96,96,96,96,96, + 96,96,3,12,12,4,1,0,96,192,128,0,192,192,192,192, + 192,192,192,192,5,12,12,4,0,0,96,208,136,0,96,96, + 96,96,96,96,96,96,5,11,11,5,0,0,216,0,0,48, + 48,48,48,48,48,48,48,8,11,11,10,1,0,51,28,102, + 62,103,195,195,195,195,103,60,7,11,11,9,1,0,60,0, + 0,220,238,198,198,198,198,198,198,8,13,13,10,1,0,96, + 48,16,8,0,60,102,195,195,195,195,102,60,8,13,13,10, + 1,0,6,12,8,16,0,60,102,195,195,195,195,102,60,8, + 13,13,10,1,0,24,28,36,34,0,60,102,195,195,195,195, + 102,60,8,11,11,10,1,0,60,0,0,60,102,195,195,195, + 195,102,60,8,12,12,10,1,0,102,0,0,0,60,102,195, + 195,195,195,102,60,10,6,12,16,3,2,12,0,0,0,255, + 192,0,0,0,0,12,0,8,10,10,10,1,255,1,62,102, + 207,203,211,227,118,252,128,7,12,12,9,1,0,96,48,16, + 0,198,198,198,198,198,198,238,118,7,12,12,9,1,0,12, + 24,16,0,198,198,198,198,198,198,238,118,7,12,12,9,1, + 0,56,40,68,0,198,198,198,198,198,198,238,118,7,11,11, + 9,1,0,108,0,0,198,198,198,198,198,198,238,118,9,16, + 32,9,0,253,7,0,6,0,12,0,8,0,0,0,99,128, + 99,0,115,0,54,0,54,0,30,0,28,0,28,0,28,0, + 248,0,112,0,8,14,14,10,1,253,192,192,192,220,230,195, + 195,195,199,230,220,192,192,192,8,14,14,9,1,253,108,0, + 0,199,198,238,108,108,60,56,56,56,48,48}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--16-160-72-72-P-81-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 11 + Calculated Max Values w= 9 h=12 x= 3 y= 5 dx=16 dy= 0 ascent=11 len=18 + Font Bounding box w=24 h=21 x=-1 y=-4 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =11 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub11n[266] U8G_SECTION(".progmem.u8g_font_fub11n") = { + 0,24,21,255,252,11,0,0,0,0,42,57,0,11,254,11, + 0,6,5,5,10,2,5,120,48,252,48,120,9,9,18,16, + 3,0,8,0,8,0,8,0,8,0,255,128,8,0,8,0, + 8,0,8,0,3,4,4,5,1,254,96,96,192,192,4,2, + 2,6,1,3,240,240,2,2,2,5,2,0,192,192,5,12, + 12,7,1,255,24,24,16,48,48,32,32,96,96,64,192,192, + 8,11,11,9,1,0,60,102,195,195,195,195,195,195,195,102, + 60,4,11,11,9,2,0,48,240,240,48,48,48,48,48,48, + 48,48,8,11,11,9,1,0,62,119,99,3,7,6,30,60, + 112,224,255,8,11,11,9,1,0,124,238,198,6,60,6,3, + 195,199,126,60,8,11,11,9,1,0,14,30,30,54,102,102, + 198,255,255,6,6,8,11,11,9,1,0,254,192,192,192,254, + 231,3,3,199,254,124,8,11,11,9,1,0,60,118,67,192, + 222,231,195,195,195,102,60,8,11,11,9,1,0,255,3,7, + 6,14,12,28,24,56,56,112,8,11,11,9,1,0,126,231, + 195,231,60,102,195,195,195,231,60,8,11,11,9,1,0,60, + 102,195,195,231,127,3,3,198,110,60}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--16-160-72-72-P-81-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=16 h=16 x= 4 y= 9 dx=17 dy= 0 ascent=12 len=28 + Font Bounding box w=24 h=21 x=-1 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub11r[1829] U8G_SECTION(".progmem.u8g_font_fub11r") = { + 0,24,21,255,252,11,2,82,5,55,32,127,253,12,252,11, + 253,0,0,0,5,0,0,2,11,11,6,2,0,192,192,192, + 192,192,192,192,192,0,0,192,6,5,5,8,1,6,204,204, + 204,204,204,10,11,22,11,1,0,9,128,25,128,25,0,127, + 192,51,0,50,0,54,0,255,0,100,0,108,0,76,0,8, + 14,14,10,1,254,8,62,126,203,200,248,126,15,11,203,235, + 126,8,8,15,11,22,17,1,0,60,32,238,96,198,64,198, + 192,231,128,125,124,3,238,2,198,6,198,4,238,8,124,11, + 11,22,13,1,0,62,0,119,0,99,0,119,0,60,0,124, + 192,238,192,199,192,195,192,243,192,63,224,2,5,5,7,2, + 6,192,192,192,192,192,3,14,14,6,1,253,96,96,96,224, + 192,192,192,192,192,192,224,96,96,96,3,14,14,7,2,253, + 192,192,192,96,96,96,96,96,96,96,96,224,192,192,6,5, + 5,10,2,5,120,48,252,48,120,9,9,18,16,3,0,8, + 0,8,0,8,0,8,0,255,128,8,0,8,0,8,0,8, + 0,3,4,4,5,1,254,96,96,192,192,4,2,2,6,1, + 3,240,240,2,2,2,5,2,0,192,192,5,12,12,7,1, + 255,24,24,16,48,48,32,32,96,96,64,192,192,8,11,11, + 9,1,0,60,102,195,195,195,195,195,195,195,102,60,4,11, + 11,9,2,0,48,240,240,48,48,48,48,48,48,48,48,8, + 11,11,9,1,0,62,119,99,3,7,6,30,60,112,224,255, + 8,11,11,9,1,0,124,238,198,6,60,6,3,195,199,126, + 60,8,11,11,9,1,0,14,30,30,54,102,102,198,255,255, + 6,6,8,11,11,9,1,0,254,192,192,192,254,231,3,3, + 199,254,124,8,11,11,9,1,0,60,118,67,192,222,231,195, + 195,195,102,60,8,11,11,9,1,0,255,3,7,6,14,12, + 28,24,56,56,112,8,11,11,9,1,0,126,231,195,231,60, + 102,195,195,195,231,60,8,11,11,9,1,0,60,102,195,195, + 231,127,3,3,198,110,60,2,8,8,5,2,0,192,192,0, + 0,0,0,192,192,3,10,10,5,1,254,96,96,0,0,0, + 0,96,96,192,192,10,8,16,16,3,1,0,64,3,128,12, + 0,112,0,128,0,112,0,14,0,1,192,10,4,8,16,3, + 3,255,192,0,0,0,0,255,192,10,8,16,16,3,1,128, + 0,96,0,28,0,3,128,0,192,7,0,24,0,224,0,7, + 11,11,9,1,0,120,238,134,6,12,24,48,48,48,0,48, + 15,14,28,17,1,253,7,224,30,120,48,28,103,236,238,230, + 204,102,204,102,204,102,204,102,239,252,103,184,48,0,28,32, + 7,224,11,11,22,11,0,0,14,0,14,0,15,0,27,0, + 27,128,57,128,49,128,63,192,127,192,96,224,224,96,9,11, + 22,11,1,0,254,0,199,0,195,0,195,0,199,0,252,0, + 195,0,193,128,193,128,195,128,254,0,10,11,22,12,1,0, + 31,0,115,128,97,192,192,0,192,0,192,0,192,0,193,192, + 97,192,115,128,31,0,9,11,22,11,1,0,252,0,207,0, + 195,0,193,128,193,128,193,128,193,128,193,128,195,0,207,0, + 252,0,8,11,11,10,1,0,255,192,192,192,192,255,192,192, + 192,192,255,8,11,11,9,1,0,255,192,192,192,192,254,192, + 192,192,192,192,10,11,22,12,1,0,31,0,59,192,96,192, + 224,0,192,0,195,192,192,192,192,192,96,192,57,192,31,192, + 9,11,22,11,1,0,193,128,193,128,193,128,193,128,193,128, + 255,128,193,128,193,128,193,128,193,128,193,128,2,11,11,4, + 1,0,192,192,192,192,192,192,192,192,192,192,192,8,11,11, + 10,1,0,3,3,3,3,3,3,3,195,195,254,124,9,11, + 22,11,1,0,195,0,199,0,206,0,220,0,248,0,248,0, + 220,0,206,0,206,0,199,0,195,128,8,11,11,9,1,0, + 192,192,192,192,192,192,192,192,192,255,255,13,11,22,15,1, + 0,240,120,240,120,248,248,216,216,216,216,221,216,205,152,205, + 152,207,152,199,24,199,24,10,11,22,12,1,0,240,192,240, + 192,248,192,216,192,220,192,204,192,206,192,198,192,199,192,195, + 192,195,192,11,11,22,13,1,0,31,0,123,192,96,192,192, + 96,192,96,192,96,192,96,192,96,96,192,123,192,31,0,8, + 11,11,10,1,0,252,199,195,195,199,254,192,192,192,192,192, + 12,11,22,14,1,0,31,0,123,128,96,192,192,96,192,96, + 192,96,192,96,192,96,96,192,123,192,31,240,9,11,22,11, + 1,0,254,0,199,128,193,128,193,128,195,0,254,0,195,0, + 193,128,193,128,193,128,193,128,9,11,22,11,1,0,62,0, + 119,0,193,128,224,0,248,0,127,0,15,128,1,128,193,128, + 119,0,62,0,9,11,22,11,1,0,255,128,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 10,11,22,12,1,0,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,225,192,115,128,62,0,11,11,22,12, + 0,0,224,96,96,96,112,224,48,192,49,192,57,128,25,128, + 31,128,31,0,15,0,14,0,16,11,22,16,0,0,225,135, + 99,198,99,198,99,198,119,206,54,108,54,108,54,108,60,60, + 28,56,28,56,11,11,22,11,0,0,112,192,49,192,59,128, + 31,0,14,0,14,0,31,0,27,0,51,128,113,192,224,224, + 10,11,22,10,0,0,225,192,113,128,51,128,59,0,31,0, + 30,0,12,0,12,0,12,0,12,0,12,0,8,11,11,10, + 1,0,255,7,6,14,28,24,56,112,96,192,255,4,14,14, + 6,1,253,240,192,192,192,192,192,192,192,192,192,192,192,192, + 240,5,12,12,7,1,255,128,192,192,64,96,96,32,48,48, + 16,16,24,4,14,14,7,1,253,240,48,48,48,48,48,48, + 48,48,48,48,48,48,240,8,10,10,16,4,0,16,24,24, + 36,36,36,66,66,129,129,8,1,1,8,0,254,255,3,3, + 3,4,0,9,192,64,32,7,8,8,9,1,0,60,110,6, + 126,230,198,238,118,8,11,11,10,1,0,192,192,192,220,246, + 199,195,195,195,230,220,7,8,8,9,1,0,60,110,198,192, + 192,198,238,60,8,11,11,10,1,0,3,3,3,59,111,227, + 195,195,195,103,59,7,8,8,9,1,0,60,110,198,254,192, + 198,110,60,5,11,11,7,1,0,56,48,48,248,48,48,48, + 48,48,48,48,8,11,11,10,1,253,59,111,227,195,195,195, + 103,59,3,103,60,7,11,11,9,1,0,192,192,192,220,238, + 198,198,198,198,198,198,2,11,11,4,1,0,192,192,0,192, + 192,192,192,192,192,192,192,3,14,14,5,1,253,96,96,0, + 96,96,96,96,96,96,96,96,96,224,224,7,11,11,9,1, + 0,192,192,192,206,220,216,240,216,220,204,198,2,11,11,4, + 1,0,192,192,192,192,192,192,192,192,192,192,192,12,8,16, + 14,1,0,220,224,239,112,198,48,198,48,198,48,198,48,198, + 48,198,48,7,8,8,9,1,0,220,238,198,198,198,198,198, + 198,8,8,8,10,1,0,60,102,195,195,195,195,102,60,8, + 11,11,10,1,253,220,230,195,195,195,199,246,220,192,192,192, + 8,11,11,10,1,253,59,103,195,195,195,195,111,59,3,3, + 3,5,8,8,7,1,0,216,240,192,192,192,192,192,192,7, + 8,8,9,1,0,124,238,192,248,30,198,238,124,6,10,10, + 8,1,0,48,48,252,48,48,48,48,48,56,28,7,8,8, + 9,1,0,198,198,198,198,198,198,238,118,8,8,8,9,0, + 0,227,99,103,118,54,60,28,28,13,8,16,14,0,0,231, + 24,103,152,103,152,111,176,61,240,60,240,60,240,56,224,8, + 8,8,9,0,0,99,118,62,28,60,62,103,227,8,11,11, + 9,0,253,227,99,119,54,54,62,28,28,24,24,56,6,8, + 8,8,1,0,252,12,24,56,112,96,192,252,6,15,15,8, + 1,252,28,56,48,48,48,48,112,192,96,48,48,48,48,48, + 28,1,16,16,5,2,252,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,6,15,15,8,1,252,224,112,48, + 48,48,48,24,12,24,48,48,48,48,48,240,8,2,2,9, + 0,3,121,223,255}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--20-200-72-72-P-101-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=21 x= 5 y=12 dx=21 dy= 0 ascent=21 len=54 + Font Bounding box w=31 h=26 x=-2 y=-5 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =21 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub14[5788] U8G_SECTION(".progmem.u8g_font_fub14") = { + 0,31,26,254,251,14,3,116,7,95,32,255,252,21,251,14, + 252,0,0,0,6,0,0,3,14,14,8,3,0,224,224,224, + 224,224,224,224,224,224,224,0,0,224,224,8,6,6,10,1, + 8,231,103,103,103,103,103,12,14,28,14,1,0,6,96,6, + 96,12,96,63,240,63,240,24,192,25,128,25,128,255,224,255, + 224,51,0,51,0,99,0,102,0,10,17,34,12,1,254,4, + 0,31,0,127,128,119,128,229,192,228,0,252,0,126,0,31, + 128,7,192,5,192,229,192,229,192,127,128,63,0,4,0,4, + 0,18,14,42,20,1,0,60,4,0,126,12,0,195,24,0, + 195,16,0,195,48,0,231,96,0,126,103,0,24,205,128,0, + 152,192,1,152,192,3,24,192,3,24,192,6,15,128,12,7, + 0,14,14,28,16,1,0,31,0,127,128,113,192,113,192,115, + 128,63,0,30,0,126,56,247,48,227,176,225,240,224,224,127, + 240,31,188,3,6,6,8,3,8,224,192,192,192,192,192,4, + 17,17,8,2,253,48,112,112,96,224,224,224,224,224,224,224, + 224,224,96,112,112,48,4,17,17,8,2,253,192,192,224,224, + 96,96,112,112,112,112,112,96,96,224,224,192,192,8,7,7, + 12,2,7,102,60,24,255,24,60,102,12,12,24,20,4,0, + 2,0,2,0,2,0,2,0,2,0,255,240,255,240,2,0, + 2,0,2,0,2,0,2,0,4,5,5,6,1,254,112,112, + 96,224,192,5,3,3,7,1,4,248,248,248,3,3,3,6, + 2,0,224,224,224,6,15,15,9,1,255,12,12,12,12,24, + 24,24,48,48,48,96,96,96,96,192,10,14,28,11,1,0, + 30,0,127,0,97,128,225,192,225,192,225,192,225,192,225,192, + 225,192,225,192,225,192,97,128,127,128,30,0,6,14,14,11, + 2,0,28,124,252,220,28,28,28,28,28,28,28,28,28,28, + 10,14,28,11,1,0,31,0,127,128,97,192,225,192,1,192, + 1,192,3,128,7,128,15,0,30,0,56,0,112,0,255,192, + 255,192,10,14,28,11,1,0,62,0,127,0,227,128,3,128, + 3,128,31,0,31,0,3,128,1,192,1,192,225,192,243,128, + 127,0,62,0,11,14,28,11,1,0,7,128,15,128,15,128, + 27,128,59,128,51,128,115,128,99,128,227,128,255,224,255,224, + 3,128,3,128,3,128,10,14,28,11,1,0,255,128,255,128, + 224,0,224,0,224,0,255,0,255,128,225,128,1,192,1,192, + 225,192,227,128,127,0,62,0,10,14,28,11,1,0,30,0, + 63,128,97,128,96,0,224,0,223,0,255,128,225,128,225,192, + 225,192,225,192,97,128,127,128,30,0,10,14,28,11,1,0, + 255,192,255,192,1,192,3,128,3,128,7,128,7,0,7,0, + 14,0,14,0,28,0,28,0,60,0,56,0,10,14,28,11, + 1,0,63,0,127,128,225,192,225,192,225,128,127,0,63,0, + 115,128,225,192,225,192,225,192,225,192,127,128,63,0,10,14, + 28,11,1,0,30,0,127,0,225,128,225,128,225,192,225,192, + 243,192,127,192,25,192,1,128,225,128,99,128,127,0,62,0, + 3,10,10,7,3,0,224,224,224,0,0,0,0,224,224,224, + 4,12,12,6,1,254,112,112,112,0,0,0,0,112,96,224, + 192,192,12,10,20,20,4,1,0,16,0,224,3,128,28,0, + 224,0,192,0,56,0,7,0,1,192,0,48,12,5,10,20, + 4,3,255,240,255,240,0,0,255,240,255,240,12,10,20,20, + 4,1,128,0,112,0,28,0,3,128,0,112,0,48,1,192, + 14,0,56,0,192,0,9,14,28,11,1,0,62,0,127,0, + 195,128,67,128,3,128,7,0,6,0,12,0,24,0,24,0, + 24,0,0,0,24,0,24,0,19,18,54,21,1,252,1,248, + 0,15,254,0,30,7,128,56,3,192,113,253,192,115,252,224, + 231,28,224,231,28,224,231,28,224,231,28,224,231,28,224,231, + 60,192,115,255,192,113,231,128,56,0,0,30,4,0,15,252, + 0,3,252,0,14,14,28,14,0,0,7,128,7,128,7,192, + 15,192,14,192,28,224,28,224,28,96,56,112,63,240,63,248, + 112,56,112,56,224,28,11,14,28,13,1,0,255,0,255,128, + 225,192,225,192,225,192,227,128,255,0,255,128,224,192,224,224, + 224,224,224,224,255,192,255,0,13,14,28,15,1,0,15,128, + 63,224,112,112,96,112,224,0,224,0,224,0,224,0,224,0, + 224,120,96,112,112,240,63,224,15,128,12,14,28,14,1,0, + 255,0,255,192,225,224,224,224,224,112,224,112,224,112,224,112, + 224,112,224,112,224,224,225,224,255,192,255,0,10,14,28,12, + 1,0,255,192,255,192,224,0,224,0,224,0,224,0,255,128, + 255,128,224,0,224,0,224,0,224,0,255,192,255,192,9,14, + 28,11,1,0,255,128,255,128,224,0,224,0,224,0,224,0, + 255,128,255,128,224,0,224,0,224,0,224,0,224,0,224,0, + 13,14,28,15,1,0,15,192,31,240,56,56,112,56,224,0, + 224,0,225,248,225,248,224,56,224,56,112,56,120,56,63,248, + 15,240,12,14,28,14,1,0,224,112,224,112,224,112,224,112, + 224,112,224,112,255,240,255,240,224,112,224,112,224,112,224,112, + 224,112,224,112,3,14,14,5,1,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,10,14,28,12,1,0,1,192, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 225,192,225,192,243,192,127,128,62,0,11,14,28,13,1,0, + 225,224,227,192,227,128,231,0,238,0,252,0,252,0,254,0, + 238,0,231,0,231,128,227,192,225,192,224,224,10,14,28,11, + 1,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,255,192,255,192,16,14, + 28,18,1,0,248,31,248,31,252,63,252,63,252,55,236,119, + 238,119,238,103,230,231,231,231,231,199,227,199,227,199,227,135, + 13,14,28,15,1,0,240,56,248,56,248,56,252,56,238,56, + 238,56,231,56,231,56,227,184,227,184,225,248,225,248,224,248, + 224,248,14,14,28,16,1,0,15,192,63,240,112,112,96,56, + 224,24,224,28,224,28,224,28,224,28,224,24,96,56,112,112, + 63,240,15,192,11,14,28,13,1,0,255,0,255,192,225,192, + 224,224,224,224,224,224,225,192,255,192,255,0,224,0,224,0, + 224,0,224,0,224,0,15,14,28,17,1,0,15,192,63,224, + 112,112,96,56,224,24,224,28,224,28,224,28,224,28,224,24, + 96,56,112,120,63,254,15,254,11,14,28,13,1,0,255,128, + 255,192,224,224,224,224,224,224,224,224,255,128,255,192,225,192, + 224,224,224,224,224,224,224,224,224,96,12,14,28,14,1,0, + 31,128,63,192,96,224,224,224,224,0,252,0,127,128,31,224, + 3,224,0,112,224,112,224,96,127,192,31,128,12,14,28,14, + 1,0,255,240,255,240,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,12,14, + 28,14,1,0,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,112,224,63,192,31,128, + 14,14,28,15,0,0,240,28,112,28,112,60,56,56,56,56, + 56,112,28,112,28,112,30,224,14,224,15,192,7,192,7,192, + 7,128,20,14,42,20,0,0,240,240,240,112,240,224,112,240, + 224,113,248,224,113,248,224,57,153,192,57,153,192,59,157,192, + 59,157,192,27,13,128,31,15,128,31,15,128,31,15,128,14, + 7,0,12,14,28,14,1,0,224,112,112,224,120,224,57,192, + 31,128,31,0,15,0,15,0,31,128,59,192,57,192,112,224, + 224,240,224,112,12,14,28,13,0,0,240,112,112,240,56,224, + 56,224,29,192,29,192,15,128,15,0,7,0,7,0,7,0, + 7,0,7,0,7,0,11,14,28,13,1,0,127,224,127,224, + 1,224,3,192,3,128,7,128,15,0,30,0,30,0,60,0, + 120,0,248,0,255,224,255,224,5,18,18,8,2,252,248,248, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,248,248, + 6,15,15,9,1,255,192,192,96,96,96,48,48,48,16,24, + 24,24,12,12,12,5,18,18,8,2,252,248,248,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,248,248,10,12,24, + 20,5,0,12,0,12,0,12,0,18,0,18,0,51,0,33, + 0,33,0,64,128,64,128,192,192,128,64,10,2,4,10,0, + 253,255,192,255,192,5,4,4,5,255,12,224,112,48,24,9, + 10,20,11,1,0,62,0,127,128,227,128,31,128,127,128,227, + 128,227,128,227,128,255,128,57,128,10,14,28,12,1,0,224, + 0,224,0,224,0,224,0,239,0,255,128,225,192,225,192,225, + 192,225,192,225,192,225,128,255,128,239,0,9,10,20,11,1, + 0,62,0,127,0,227,128,227,128,224,0,224,0,227,128,227, + 128,127,0,62,0,10,14,28,12,1,0,1,192,1,192,1, + 192,1,192,61,192,127,192,225,192,225,192,225,192,225,192,225, + 192,225,192,127,192,61,192,9,10,20,11,1,0,30,0,127, + 0,227,128,227,128,255,128,255,128,224,0,227,128,127,128,62, + 0,7,14,14,8,1,0,30,62,56,56,254,254,56,56,56, + 56,56,56,56,56,10,14,28,12,1,252,61,192,127,192,113, + 192,225,192,225,192,225,192,225,192,225,192,127,192,61,192,1, + 192,97,192,127,128,63,0,9,14,28,11,1,0,224,0,224, + 0,224,0,224,0,239,0,255,128,227,128,227,128,227,128,227, + 128,227,128,227,128,227,128,227,128,3,14,14,5,1,0,224, + 224,224,0,224,224,224,224,224,224,224,224,224,224,4,18,18, + 7,2,252,112,112,112,0,112,112,112,112,112,112,112,112,112, + 112,112,112,240,224,9,14,28,11,1,0,224,0,224,0,224, + 0,224,0,231,128,231,0,238,0,252,0,252,0,252,0,238, + 0,231,0,231,0,227,128,3,14,14,5,1,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,15,10,20,18,1, + 0,239,60,255,254,227,206,227,134,227,134,227,134,227,134,227, + 134,227,134,227,134,9,10,20,11,1,0,239,0,255,128,227, + 128,227,128,227,128,227,128,227,128,227,128,227,128,227,128,10, + 10,20,12,1,0,30,0,127,128,97,128,225,192,225,192,225, + 192,225,192,97,128,127,128,30,0,10,14,28,12,1,252,239, + 0,255,128,225,128,225,192,225,192,225,192,225,192,225,192,255, + 128,239,0,224,0,224,0,224,0,224,0,10,14,28,12,1, + 252,61,192,127,192,225,192,225,192,225,192,225,192,225,192,225, + 192,127,192,61,192,1,192,1,192,1,192,1,192,6,10,10, + 8,1,0,236,252,240,224,224,224,224,224,224,224,9,10,20, + 11,1,0,62,0,255,0,227,128,224,0,126,0,31,0,3, + 128,227,128,255,0,62,0,7,13,13,9,1,0,8,56,56, + 254,254,56,56,56,56,56,56,62,30,9,10,20,11,1,0, + 227,128,227,128,227,128,227,128,227,128,227,128,227,128,227,128, + 255,128,123,128,11,10,20,11,0,0,224,224,113,192,113,192, + 49,128,59,128,59,128,27,0,31,0,31,0,14,0,17,10, + 30,17,0,0,225,195,128,97,227,0,115,231,0,115,103,0, + 51,119,0,63,118,0,63,62,0,62,62,0,30,60,0,30, + 28,0,9,10,20,11,1,0,227,128,115,0,119,0,62,0, + 28,0,62,0,62,0,119,0,227,128,227,128,11,14,28,11, + 0,252,224,224,113,192,113,192,57,128,59,128,59,128,31,0, + 31,0,15,0,14,0,14,0,14,0,28,0,28,0,8,10, + 10,10,1,0,255,255,7,14,28,56,112,224,255,255,7,19, + 19,10,2,251,14,62,56,56,56,56,56,48,240,192,240,112, + 56,56,56,56,56,62,14,1,21,21,7,3,251,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,7,19,19,10,2,251,224,240,56,56,56,56,56,56, + 28,6,28,56,56,56,56,56,56,240,224,11,3,6,11,0, + 4,48,96,127,192,199,128,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,6,0,0,3,14, + 14,9,3,252,224,224,0,0,224,224,224,224,224,224,224,224, + 224,224,9,14,28,11,1,254,2,0,2,0,62,0,127,0, + 231,128,231,128,232,0,232,0,235,128,243,128,127,0,62,0, + 32,0,32,0,10,14,28,12,1,0,31,0,63,192,113,192, + 112,0,112,0,254,0,254,0,112,0,112,0,112,0,112,0, + 112,0,255,192,255,192,10,10,20,12,1,3,128,64,94,128, + 33,0,64,128,64,128,64,128,64,128,33,0,94,128,128,64, + 11,14,28,13,1,0,224,224,225,192,113,192,113,128,251,224, + 251,224,31,0,255,224,255,224,14,0,14,0,14,0,14,0, + 14,0,1,18,18,7,3,252,128,128,128,128,128,128,128,128, + 0,0,128,128,128,128,128,128,128,128,8,18,18,10,1,252, + 62,126,224,224,112,60,126,231,231,231,254,124,30,7,7,135, + 254,56,7,2,2,7,0,12,238,238,15,14,28,17,1,0, + 7,192,31,240,55,152,111,204,204,228,156,2,156,2,156,226, + 140,226,207,198,71,132,32,24,28,112,15,192,7,9,9,8, + 1,5,120,204,124,204,204,252,36,0,254,10,8,16,12,1, + 1,57,192,113,128,115,128,231,0,231,0,115,128,113,128,57, + 192,11,5,10,13,1,4,255,224,255,224,0,32,0,32,0, + 32,255,15,14,28,17,1,0,7,192,31,240,63,152,111,236, + 204,100,140,98,143,194,143,194,140,98,204,102,76,100,32,24, + 28,112,15,192,6,2,2,6,0,12,252,252,5,5,5,7, + 1,9,112,136,136,136,112,12,12,24,20,4,0,2,0,2, + 0,2,0,255,240,255,240,2,0,2,0,2,0,0,0,0, + 0,255,240,255,240,6,8,8,8,1,6,120,204,12,24,48, + 224,252,252,6,7,7,8,1,7,120,204,12,48,12,204,120, + 4,4,4,4,1,12,48,96,96,192,255,9,17,34,11,1, + 253,63,128,121,0,249,0,249,0,249,0,249,0,121,0,9, + 0,9,0,9,0,9,0,9,0,9,0,9,0,9,0,9, + 0,9,0,3,3,3,6,2,5,224,224,224,5,5,5,5, + 1,251,64,112,24,24,240,4,8,8,6,1,6,48,240,48, + 48,48,48,48,48,7,9,9,9,1,5,56,68,198,198,198, + 68,56,0,254,10,8,16,12,1,1,231,0,99,128,115,128, + 57,192,57,192,115,128,99,128,231,0,14,14,28,16,1,0, + 112,48,240,48,48,96,48,192,48,192,49,128,49,156,51,60, + 6,60,6,108,12,204,24,252,24,12,48,12,15,14,28,17, + 1,0,112,48,240,32,48,96,48,192,48,192,49,128,51,60, + 51,102,6,6,12,14,12,28,24,48,48,126,48,126,14,14, + 28,16,1,0,120,24,204,48,12,48,48,96,12,192,204,192, + 121,156,1,188,3,60,6,108,6,204,12,252,8,12,24,12, + 9,14,28,11,1,252,14,0,14,0,0,0,14,0,14,0, + 14,0,60,0,112,0,224,0,224,0,225,128,225,128,127,128, + 62,0,14,20,40,14,0,0,12,0,14,0,6,0,3,0, + 0,0,0,0,7,128,7,128,7,192,15,192,14,192,28,224, + 28,224,28,96,56,112,63,240,63,248,112,56,112,56,224,28, + 14,20,40,14,0,0,0,192,1,192,1,128,3,0,0,0, + 0,0,7,128,7,128,7,192,15,192,14,192,28,224,28,224, + 28,96,56,112,63,240,63,248,112,56,112,56,224,28,14,20, + 40,14,0,0,3,128,7,128,6,192,12,192,0,0,0,0, + 7,128,7,128,7,192,15,192,14,192,28,224,28,224,28,96, + 56,112,63,240,63,248,112,56,112,56,224,28,14,19,38,14, + 0,0,6,64,15,192,8,128,0,0,0,0,7,128,7,128, + 7,192,15,192,14,192,28,224,28,224,28,96,56,112,63,240, + 63,248,112,56,112,56,224,28,14,19,38,15,0,0,14,224, + 14,224,0,0,0,0,0,0,3,128,7,128,7,192,7,192, + 14,192,14,224,28,224,28,112,28,112,63,248,63,248,112,56, + 112,28,224,28,13,21,42,15,1,0,7,0,8,128,8,128, + 8,128,7,0,0,0,0,0,7,0,15,128,15,128,29,192, + 29,192,29,192,56,224,56,224,48,96,127,240,127,240,224,56, + 224,56,224,56,19,14,42,20,0,0,0,255,224,1,255,224, + 3,240,0,3,112,0,7,112,0,7,112,0,14,127,192,14, + 127,192,28,112,0,31,240,0,63,240,0,112,112,0,112,127, + 224,224,127,224,13,18,36,15,1,252,15,128,63,224,112,240, + 96,112,224,0,224,0,224,0,224,0,224,0,224,120,96,112, + 112,240,63,224,31,128,4,0,7,128,1,128,15,0,10,20, + 40,12,1,0,48,0,56,0,24,0,12,0,0,0,0,0, + 255,192,255,192,224,0,224,0,224,0,224,0,255,128,255,128, + 224,0,224,0,224,0,224,0,255,192,255,192,10,20,40,12, + 1,0,7,0,6,0,12,0,8,0,0,0,0,0,255,192, + 255,192,224,0,224,0,224,0,224,0,255,128,255,128,224,0, + 224,0,224,0,224,0,255,192,255,192,10,20,40,12,1,0, + 28,0,30,0,54,0,35,0,0,0,0,0,255,192,255,192, + 224,0,224,0,224,0,224,0,255,128,255,128,224,0,224,0, + 224,0,224,0,255,192,255,192,10,19,38,12,1,0,119,0, + 119,0,0,0,0,0,0,0,255,192,255,192,224,0,224,0, + 224,0,224,0,255,128,255,128,224,0,224,0,224,0,224,0, + 255,192,255,192,5,20,20,5,255,0,224,96,48,16,0,0, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,4,20, + 20,5,1,0,48,112,96,192,0,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,5,20,20,5,0,0,112,112, + 216,136,0,0,112,112,112,112,112,112,112,112,112,112,112,112, + 112,112,7,19,19,7,0,0,238,238,0,0,0,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,13,14,28,14,0, + 0,127,128,127,224,112,240,112,112,112,56,112,56,254,56,254, + 56,112,56,112,56,112,112,112,240,127,224,127,128,13,19,38, + 15,1,0,12,64,31,128,17,0,0,0,0,0,240,56,248, + 56,248,56,252,56,238,56,238,56,231,56,231,56,227,184,227, + 184,225,248,225,248,224,248,224,248,14,20,40,16,1,0,28, + 0,12,0,6,0,2,0,0,0,0,0,15,192,63,240,112, + 112,96,56,224,24,224,28,224,28,224,28,224,28,224,24,96, + 56,112,112,63,240,15,192,14,20,40,16,1,0,0,224,1, + 192,1,128,3,0,0,0,0,0,15,192,63,240,112,112,96, + 56,224,24,224,28,224,28,224,28,224,28,224,24,96,56,112, + 112,63,240,15,192,14,20,40,16,1,0,7,0,7,128,13, + 192,8,192,0,0,0,0,15,192,63,240,112,112,96,56,224, + 24,224,28,224,28,224,28,224,28,224,24,96,56,112,112,63, + 240,15,192,14,19,38,16,1,0,7,192,15,192,0,0,0, + 0,0,0,15,192,63,240,112,48,96,56,224,24,224,28,224, + 28,224,28,224,28,224,24,112,56,120,240,63,240,15,192,14, + 19,38,16,1,0,29,192,29,192,0,0,0,0,0,0,15, + 192,63,240,112,112,96,56,224,24,224,28,224,28,224,28,224, + 28,224,24,96,56,112,112,63,240,15,192,10,10,20,20,5, + 1,128,64,192,192,97,128,51,0,12,0,12,0,18,0,33, + 0,64,128,128,64,15,16,32,16,0,255,0,2,7,230,31, + 252,56,60,48,60,112,108,112,238,113,206,115,142,119,14,126, + 12,124,28,56,56,63,240,239,224,64,0,12,20,40,14,1, + 0,56,0,24,0,12,0,6,0,0,0,0,0,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,113,224,63,192,31,128,12,20,40,14,1,0,1, + 192,3,128,3,0,6,0,0,0,0,0,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,113,224,63,192,31,128,12,20,40,14,1,0,14,0,15, + 0,27,0,17,128,0,0,0,0,224,112,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,113, + 224,63,192,31,128,12,19,38,14,1,0,29,192,29,192,0, + 0,0,0,0,0,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,112,224,63,192,31, + 128,12,19,38,13,0,0,1,128,3,0,2,0,0,0,0, + 0,240,112,112,240,56,224,56,224,29,192,29,192,15,128,15, + 0,7,0,7,0,7,0,7,0,7,0,7,0,11,14,28, + 13,1,0,224,0,224,0,255,0,255,192,225,192,224,224,224, + 224,224,224,225,192,255,128,254,0,224,0,224,0,224,0,10, + 14,28,12,1,0,62,0,127,128,227,128,227,128,227,0,231, + 0,238,0,238,0,231,128,227,192,225,192,253,192,255,192,239, + 128,9,16,32,11,1,0,112,0,48,0,24,0,8,0,0, + 0,0,0,62,0,127,128,227,128,31,128,127,128,227,128,227, + 128,227,128,255,128,57,128,9,16,32,11,1,0,7,0,6, + 0,12,0,12,0,0,0,0,0,62,0,127,128,227,128,3, + 128,63,128,251,128,227,128,227,128,255,128,121,128,9,16,32, + 11,1,0,28,0,30,0,54,0,35,0,0,0,0,0,62, + 0,127,128,227,128,31,128,127,128,227,128,227,128,227,128,255, + 128,57,128,9,14,28,11,1,0,63,0,62,0,0,0,0, + 0,62,0,127,128,227,128,31,128,127,128,227,128,227,128,227, + 128,255,128,57,128,9,15,30,11,1,0,119,0,119,0,0, + 0,0,0,0,0,62,0,127,128,227,128,31,128,127,128,227, + 128,227,128,227,128,255,128,57,128,9,17,34,11,1,0,28, + 0,34,0,34,0,34,0,28,0,0,0,0,0,62,0,127, + 128,227,128,31,128,127,128,227,128,227,128,227,128,255,128,57, + 128,16,10,20,18,1,0,62,124,127,254,227,135,31,255,127, + 255,227,128,227,128,227,199,254,254,60,124,9,14,28,11,1, + 252,62,0,127,0,227,128,227,128,224,0,224,0,227,128,227, + 128,127,0,62,0,16,0,30,0,6,0,62,0,9,16,32, + 11,1,0,112,0,48,0,24,0,8,0,0,0,0,0,30, + 0,127,0,227,128,227,128,255,128,255,128,224,0,227,128,127, + 128,62,0,9,16,32,11,1,0,7,0,6,0,12,0,8, + 0,0,0,0,0,30,0,127,0,227,128,227,128,255,128,255, + 128,224,0,227,128,127,128,62,0,9,16,32,11,1,0,28, + 0,30,0,54,0,35,0,0,0,0,0,30,0,127,0,227, + 128,227,128,255,128,255,128,224,0,227,128,127,128,62,0,9, + 15,30,11,1,0,119,0,119,0,0,0,0,0,0,0,30, + 0,127,0,227,128,227,128,255,128,255,128,224,0,227,128,127, + 128,62,0,4,15,15,5,0,0,192,224,96,48,0,112,112, + 112,112,112,112,112,112,112,112,4,15,15,4,1,0,112,96, + 192,128,0,224,224,224,224,224,224,224,224,224,224,7,15,15, + 5,255,0,56,124,76,198,0,56,56,56,56,56,56,56,56, + 56,56,7,14,14,6,0,0,238,238,0,0,56,56,56,56, + 56,56,56,56,56,56,10,14,28,12,1,0,57,128,15,0, + 31,0,99,0,31,128,127,128,97,192,225,192,225,192,225,192, + 225,192,97,192,127,128,31,0,9,14,28,11,1,0,62,0, + 60,0,0,0,0,0,239,0,255,128,227,128,227,128,227,128, + 227,128,227,128,227,128,227,128,227,128,10,16,32,12,1,0, + 48,0,24,0,24,0,12,0,0,0,0,0,30,0,127,128, + 97,128,225,192,225,192,225,192,225,192,97,128,127,128,30,0, + 10,16,32,12,1,0,3,0,6,0,6,0,12,0,0,0, + 0,0,30,0,127,128,97,128,225,192,225,192,225,192,225,192, + 97,128,127,128,30,0,10,16,32,12,1,0,12,0,30,0, + 26,0,51,0,0,0,0,0,30,0,127,128,97,128,225,192, + 225,192,225,192,225,192,97,128,127,128,30,0,10,14,28,12, + 1,0,31,0,62,0,0,0,0,0,30,0,127,128,97,128, + 225,192,225,192,225,192,225,192,97,128,127,128,30,0,10,15, + 30,12,1,0,59,128,59,128,0,0,0,0,0,0,30,0, + 127,128,97,128,225,192,225,192,225,192,225,192,97,128,127,128, + 30,0,12,8,16,20,4,2,6,0,14,0,0,0,255,240, + 255,240,0,0,6,0,14,0,10,12,24,12,1,0,0,192, + 31,128,127,128,99,128,231,192,237,192,233,192,241,192,113,128, + 127,128,222,0,128,0,9,16,32,11,1,0,112,0,48,0, + 24,0,8,0,0,0,0,0,227,128,227,128,227,128,227,128, + 227,128,227,128,227,128,227,128,255,128,123,128,9,16,32,11, + 1,0,7,0,6,0,12,0,8,0,0,0,0,0,227,128, + 227,128,227,128,227,128,227,128,227,128,227,128,227,128,255,128, + 123,128,9,16,32,11,1,0,28,0,28,0,54,0,34,0, + 0,0,0,0,227,128,227,128,227,128,227,128,227,128,227,128, + 227,128,227,128,255,128,123,128,9,15,30,11,1,0,119,0, + 119,0,0,0,0,0,0,0,227,128,227,128,227,128,227,128, + 227,128,227,128,227,128,227,128,255,128,123,128,11,19,38,11, + 0,252,1,128,3,0,2,0,4,0,0,0,112,224,113,192, + 113,192,57,192,59,128,27,128,31,128,31,0,15,0,14,0, + 14,0,78,0,252,0,120,0,10,18,36,12,1,252,224,0, + 224,0,224,0,224,0,239,0,255,128,225,128,225,192,225,192, + 225,192,225,192,225,192,255,128,255,0,224,0,224,0,224,0, + 224,0,11,18,36,11,0,252,59,128,59,128,0,0,0,0, + 225,224,113,192,113,192,115,128,59,128,59,128,31,0,31,0, + 31,0,14,0,14,0,12,0,28,0,28,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--20-200-72-72-P-101-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 14 + Calculated Max Values w=12 h=15 x= 4 y= 7 dx=20 dy= 0 ascent=14 len=28 + Font Bounding box w=31 h=26 x=-2 y=-5 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =14 descent= 0 + X Font ascent =14 descent= 0 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub14n[436] U8G_SECTION(".progmem.u8g_font_fub14n") = { + 0,31,26,254,251,14,0,0,0,0,42,57,0,14,254,14, + 0,8,7,7,12,2,7,102,60,24,255,24,60,102,12,12, + 24,20,4,0,2,0,2,0,2,0,2,0,2,0,255,240, + 255,240,2,0,2,0,2,0,2,0,2,0,4,5,5,6, + 1,254,112,112,96,224,192,5,3,3,7,1,4,248,248,248, + 3,3,3,6,2,0,224,224,224,6,15,15,9,1,255,12, + 12,12,12,24,24,24,48,48,48,96,96,96,96,192,10,14, + 28,11,1,0,30,0,127,0,97,128,225,192,225,192,225,192, + 225,192,225,192,225,192,225,192,225,192,97,128,127,128,30,0, + 6,14,14,11,2,0,28,124,252,220,28,28,28,28,28,28, + 28,28,28,28,10,14,28,11,1,0,31,0,127,128,97,192, + 225,192,1,192,1,192,3,128,7,128,15,0,30,0,56,0, + 112,0,255,192,255,192,10,14,28,11,1,0,62,0,127,0, + 227,128,3,128,3,128,31,0,31,0,3,128,1,192,1,192, + 225,192,243,128,127,0,62,0,11,14,28,11,1,0,7,128, + 15,128,15,128,27,128,59,128,51,128,115,128,99,128,227,128, + 255,224,255,224,3,128,3,128,3,128,10,14,28,11,1,0, + 255,128,255,128,224,0,224,0,224,0,255,0,255,128,225,128, + 1,192,1,192,225,192,227,128,127,0,62,0,10,14,28,11, + 1,0,30,0,63,128,97,128,96,0,224,0,223,0,255,128, + 225,128,225,192,225,192,225,192,97,128,127,128,30,0,10,14, + 28,11,1,0,255,192,255,192,1,192,3,128,3,128,7,128, + 7,0,7,0,14,0,14,0,28,0,28,0,60,0,56,0, + 10,14,28,11,1,0,63,0,127,128,225,192,225,192,225,128, + 127,0,63,0,115,128,225,192,225,192,225,192,225,192,127,128, + 63,0,10,14,28,11,1,0,30,0,127,0,225,128,225,128, + 225,192,225,192,243,192,127,192,25,192,1,128,225,128,99,128, + 127,0,62,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--20-200-72-72-P-101-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=21 x= 5 y=12 dx=21 dy= 0 ascent=16 len=54 + Font Bounding box w=31 h=26 x=-2 y=-5 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =16 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub14r[2680] U8G_SECTION(".progmem.u8g_font_fub14r") = { + 0,31,26,254,251,14,3,116,7,95,32,127,252,16,251,14, + 252,0,0,0,6,0,0,3,14,14,8,3,0,224,224,224, + 224,224,224,224,224,224,224,0,0,224,224,8,6,6,10,1, + 8,231,103,103,103,103,103,12,14,28,14,1,0,6,96,6, + 96,12,96,63,240,63,240,24,192,25,128,25,128,255,224,255, + 224,51,0,51,0,99,0,102,0,10,17,34,12,1,254,4, + 0,31,0,127,128,119,128,229,192,228,0,252,0,126,0,31, + 128,7,192,5,192,229,192,229,192,127,128,63,0,4,0,4, + 0,18,14,42,20,1,0,60,4,0,126,12,0,195,24,0, + 195,16,0,195,48,0,231,96,0,126,103,0,24,205,128,0, + 152,192,1,152,192,3,24,192,3,24,192,6,15,128,12,7, + 0,14,14,28,16,1,0,31,0,127,128,113,192,113,192,115, + 128,63,0,30,0,126,56,247,48,227,176,225,240,224,224,127, + 240,31,188,3,6,6,8,3,8,224,192,192,192,192,192,4, + 17,17,8,2,253,48,112,112,96,224,224,224,224,224,224,224, + 224,224,96,112,112,48,4,17,17,8,2,253,192,192,224,224, + 96,96,112,112,112,112,112,96,96,224,224,192,192,8,7,7, + 12,2,7,102,60,24,255,24,60,102,12,12,24,20,4,0, + 2,0,2,0,2,0,2,0,2,0,255,240,255,240,2,0, + 2,0,2,0,2,0,2,0,4,5,5,6,1,254,112,112, + 96,224,192,5,3,3,7,1,4,248,248,248,3,3,3,6, + 2,0,224,224,224,6,15,15,9,1,255,12,12,12,12,24, + 24,24,48,48,48,96,96,96,96,192,10,14,28,11,1,0, + 30,0,127,0,97,128,225,192,225,192,225,192,225,192,225,192, + 225,192,225,192,225,192,97,128,127,128,30,0,6,14,14,11, + 2,0,28,124,252,220,28,28,28,28,28,28,28,28,28,28, + 10,14,28,11,1,0,31,0,127,128,97,192,225,192,1,192, + 1,192,3,128,7,128,15,0,30,0,56,0,112,0,255,192, + 255,192,10,14,28,11,1,0,62,0,127,0,227,128,3,128, + 3,128,31,0,31,0,3,128,1,192,1,192,225,192,243,128, + 127,0,62,0,11,14,28,11,1,0,7,128,15,128,15,128, + 27,128,59,128,51,128,115,128,99,128,227,128,255,224,255,224, + 3,128,3,128,3,128,10,14,28,11,1,0,255,128,255,128, + 224,0,224,0,224,0,255,0,255,128,225,128,1,192,1,192, + 225,192,227,128,127,0,62,0,10,14,28,11,1,0,30,0, + 63,128,97,128,96,0,224,0,223,0,255,128,225,128,225,192, + 225,192,225,192,97,128,127,128,30,0,10,14,28,11,1,0, + 255,192,255,192,1,192,3,128,3,128,7,128,7,0,7,0, + 14,0,14,0,28,0,28,0,60,0,56,0,10,14,28,11, + 1,0,63,0,127,128,225,192,225,192,225,128,127,0,63,0, + 115,128,225,192,225,192,225,192,225,192,127,128,63,0,10,14, + 28,11,1,0,30,0,127,0,225,128,225,128,225,192,225,192, + 243,192,127,192,25,192,1,128,225,128,99,128,127,0,62,0, + 3,10,10,7,3,0,224,224,224,0,0,0,0,224,224,224, + 4,12,12,6,1,254,112,112,112,0,0,0,0,112,96,224, + 192,192,12,10,20,20,4,1,0,16,0,224,3,128,28,0, + 224,0,192,0,56,0,7,0,1,192,0,48,12,5,10,20, + 4,3,255,240,255,240,0,0,255,240,255,240,12,10,20,20, + 4,1,128,0,112,0,28,0,3,128,0,112,0,48,1,192, + 14,0,56,0,192,0,9,14,28,11,1,0,62,0,127,0, + 195,128,67,128,3,128,7,0,6,0,12,0,24,0,24,0, + 24,0,0,0,24,0,24,0,19,18,54,21,1,252,1,248, + 0,15,254,0,30,7,128,56,3,192,113,253,192,115,252,224, + 231,28,224,231,28,224,231,28,224,231,28,224,231,28,224,231, + 60,192,115,255,192,113,231,128,56,0,0,30,4,0,15,252, + 0,3,252,0,14,14,28,14,0,0,7,128,7,128,7,192, + 15,192,14,192,28,224,28,224,28,96,56,112,63,240,63,248, + 112,56,112,56,224,28,11,14,28,13,1,0,255,0,255,128, + 225,192,225,192,225,192,227,128,255,0,255,128,224,192,224,224, + 224,224,224,224,255,192,255,0,13,14,28,15,1,0,15,128, + 63,224,112,112,96,112,224,0,224,0,224,0,224,0,224,0, + 224,120,96,112,112,240,63,224,15,128,12,14,28,14,1,0, + 255,0,255,192,225,224,224,224,224,112,224,112,224,112,224,112, + 224,112,224,112,224,224,225,224,255,192,255,0,10,14,28,12, + 1,0,255,192,255,192,224,0,224,0,224,0,224,0,255,128, + 255,128,224,0,224,0,224,0,224,0,255,192,255,192,9,14, + 28,11,1,0,255,128,255,128,224,0,224,0,224,0,224,0, + 255,128,255,128,224,0,224,0,224,0,224,0,224,0,224,0, + 13,14,28,15,1,0,15,192,31,240,56,56,112,56,224,0, + 224,0,225,248,225,248,224,56,224,56,112,56,120,56,63,248, + 15,240,12,14,28,14,1,0,224,112,224,112,224,112,224,112, + 224,112,224,112,255,240,255,240,224,112,224,112,224,112,224,112, + 224,112,224,112,3,14,14,5,1,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,10,14,28,12,1,0,1,192, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 225,192,225,192,243,192,127,128,62,0,11,14,28,13,1,0, + 225,224,227,192,227,128,231,0,238,0,252,0,252,0,254,0, + 238,0,231,0,231,128,227,192,225,192,224,224,10,14,28,11, + 1,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,255,192,255,192,16,14, + 28,18,1,0,248,31,248,31,252,63,252,63,252,55,236,119, + 238,119,238,103,230,231,231,231,231,199,227,199,227,199,227,135, + 13,14,28,15,1,0,240,56,248,56,248,56,252,56,238,56, + 238,56,231,56,231,56,227,184,227,184,225,248,225,248,224,248, + 224,248,14,14,28,16,1,0,15,192,63,240,112,112,96,56, + 224,24,224,28,224,28,224,28,224,28,224,24,96,56,112,112, + 63,240,15,192,11,14,28,13,1,0,255,0,255,192,225,192, + 224,224,224,224,224,224,225,192,255,192,255,0,224,0,224,0, + 224,0,224,0,224,0,15,14,28,17,1,0,15,192,63,224, + 112,112,96,56,224,24,224,28,224,28,224,28,224,28,224,24, + 96,56,112,120,63,254,15,254,11,14,28,13,1,0,255,128, + 255,192,224,224,224,224,224,224,224,224,255,128,255,192,225,192, + 224,224,224,224,224,224,224,224,224,96,12,14,28,14,1,0, + 31,128,63,192,96,224,224,224,224,0,252,0,127,128,31,224, + 3,224,0,112,224,112,224,96,127,192,31,128,12,14,28,14, + 1,0,255,240,255,240,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,12,14, + 28,14,1,0,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,112,224,63,192,31,128, + 14,14,28,15,0,0,240,28,112,28,112,60,56,56,56,56, + 56,112,28,112,28,112,30,224,14,224,15,192,7,192,7,192, + 7,128,20,14,42,20,0,0,240,240,240,112,240,224,112,240, + 224,113,248,224,113,248,224,57,153,192,57,153,192,59,157,192, + 59,157,192,27,13,128,31,15,128,31,15,128,31,15,128,14, + 7,0,12,14,28,14,1,0,224,112,112,224,120,224,57,192, + 31,128,31,0,15,0,15,0,31,128,59,192,57,192,112,224, + 224,240,224,112,12,14,28,13,0,0,240,112,112,240,56,224, + 56,224,29,192,29,192,15,128,15,0,7,0,7,0,7,0, + 7,0,7,0,7,0,11,14,28,13,1,0,127,224,127,224, + 1,224,3,192,3,128,7,128,15,0,30,0,30,0,60,0, + 120,0,248,0,255,224,255,224,5,18,18,8,2,252,248,248, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,248,248, + 6,15,15,9,1,255,192,192,96,96,96,48,48,48,16,24, + 24,24,12,12,12,5,18,18,8,2,252,248,248,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,248,248,10,12,24, + 20,5,0,12,0,12,0,12,0,18,0,18,0,51,0,33, + 0,33,0,64,128,64,128,192,192,128,64,10,2,4,10,0, + 253,255,192,255,192,5,4,4,5,255,12,224,112,48,24,9, + 10,20,11,1,0,62,0,127,128,227,128,31,128,127,128,227, + 128,227,128,227,128,255,128,57,128,10,14,28,12,1,0,224, + 0,224,0,224,0,224,0,239,0,255,128,225,192,225,192,225, + 192,225,192,225,192,225,128,255,128,239,0,9,10,20,11,1, + 0,62,0,127,0,227,128,227,128,224,0,224,0,227,128,227, + 128,127,0,62,0,10,14,28,12,1,0,1,192,1,192,1, + 192,1,192,61,192,127,192,225,192,225,192,225,192,225,192,225, + 192,225,192,127,192,61,192,9,10,20,11,1,0,30,0,127, + 0,227,128,227,128,255,128,255,128,224,0,227,128,127,128,62, + 0,7,14,14,8,1,0,30,62,56,56,254,254,56,56,56, + 56,56,56,56,56,10,14,28,12,1,252,61,192,127,192,113, + 192,225,192,225,192,225,192,225,192,225,192,127,192,61,192,1, + 192,97,192,127,128,63,0,9,14,28,11,1,0,224,0,224, + 0,224,0,224,0,239,0,255,128,227,128,227,128,227,128,227, + 128,227,128,227,128,227,128,227,128,3,14,14,5,1,0,224, + 224,224,0,224,224,224,224,224,224,224,224,224,224,4,18,18, + 7,2,252,112,112,112,0,112,112,112,112,112,112,112,112,112, + 112,112,112,240,224,9,14,28,11,1,0,224,0,224,0,224, + 0,224,0,231,128,231,0,238,0,252,0,252,0,252,0,238, + 0,231,0,231,0,227,128,3,14,14,5,1,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,15,10,20,18,1, + 0,239,60,255,254,227,206,227,134,227,134,227,134,227,134,227, + 134,227,134,227,134,9,10,20,11,1,0,239,0,255,128,227, + 128,227,128,227,128,227,128,227,128,227,128,227,128,227,128,10, + 10,20,12,1,0,30,0,127,128,97,128,225,192,225,192,225, + 192,225,192,97,128,127,128,30,0,10,14,28,12,1,252,239, + 0,255,128,225,128,225,192,225,192,225,192,225,192,225,192,255, + 128,239,0,224,0,224,0,224,0,224,0,10,14,28,12,1, + 252,61,192,127,192,225,192,225,192,225,192,225,192,225,192,225, + 192,127,192,61,192,1,192,1,192,1,192,1,192,6,10,10, + 8,1,0,236,252,240,224,224,224,224,224,224,224,9,10,20, + 11,1,0,62,0,255,0,227,128,224,0,126,0,31,0,3, + 128,227,128,255,0,62,0,7,13,13,9,1,0,8,56,56, + 254,254,56,56,56,56,56,56,62,30,9,10,20,11,1,0, + 227,128,227,128,227,128,227,128,227,128,227,128,227,128,227,128, + 255,128,123,128,11,10,20,11,0,0,224,224,113,192,113,192, + 49,128,59,128,59,128,27,0,31,0,31,0,14,0,17,10, + 30,17,0,0,225,195,128,97,227,0,115,231,0,115,103,0, + 51,119,0,63,118,0,63,62,0,62,62,0,30,60,0,30, + 28,0,9,10,20,11,1,0,227,128,115,0,119,0,62,0, + 28,0,62,0,62,0,119,0,227,128,227,128,11,14,28,11, + 0,252,224,224,113,192,113,192,57,128,59,128,59,128,31,0, + 31,0,15,0,14,0,14,0,14,0,28,0,28,0,8,10, + 10,10,1,0,255,255,7,14,28,56,112,224,255,255,7,19, + 19,10,2,251,14,62,56,56,56,56,56,48,240,192,240,112, + 56,56,56,56,56,62,14,1,21,21,7,3,251,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,7,19,19,10,2,251,224,240,56,56,56,56,56,56, + 28,6,28,56,56,56,56,56,56,240,224,11,3,6,11,0, + 4,48,96,127,192,199,128,255}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--23-230-72-72-P-115-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=23 h=25 x= 6 y=15 dx=24 dy= 0 ascent=25 len=66 + Font Bounding box w=34 h=31 x=-2 y=-6 + Calculated Min Values x=-1 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =25 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub17[6938] U8G_SECTION(".progmem.u8g_font_fub17") = { + 0,34,31,254,250,17,4,8,8,209,32,255,251,25,250,17, + 251,0,0,0,7,0,0,3,17,17,9,3,0,224,224,224, + 224,224,224,224,224,224,224,224,224,0,0,224,224,224,8,7, + 7,12,2,10,231,231,231,231,231,231,231,14,17,34,16,1, + 0,3,24,7,24,6,56,6,48,63,252,63,252,12,96,12, + 96,28,96,24,224,255,248,255,240,57,192,49,128,49,128,113, + 128,99,128,12,21,42,14,1,253,2,0,15,128,63,192,127, + 224,242,224,226,224,226,0,250,0,126,0,63,192,15,224,3, + 240,2,240,226,112,226,112,242,240,127,224,63,192,15,0,2, + 0,2,0,21,17,51,23,1,0,62,3,0,127,7,0,99, + 6,0,193,142,0,193,140,0,193,152,0,193,184,0,99,48, + 128,127,119,224,62,102,48,0,236,24,0,204,24,1,204,24, + 1,140,24,3,14,56,7,7,240,6,3,224,16,17,34,18, + 1,0,31,128,63,192,121,224,112,224,113,224,57,192,63,128, + 31,0,63,30,119,156,243,220,225,252,224,252,224,120,120,124, + 127,254,31,207,3,7,7,9,3,10,224,224,224,224,224,224, + 96,5,20,20,9,2,253,56,56,112,112,112,240,224,224,224, + 224,224,224,224,224,240,112,112,112,48,56,5,20,20,9,2, + 253,224,96,112,112,112,56,56,56,56,56,56,56,56,56,56, + 112,112,112,96,224,9,9,18,15,3,8,54,0,54,0,54, + 0,156,128,255,128,156,128,54,0,54,0,54,0,14,14,28, + 24,5,0,2,0,2,0,2,0,2,0,2,0,2,0,255, + 252,255,252,2,0,2,0,2,0,2,0,2,0,2,0,5, + 6,6,7,1,253,56,112,112,96,96,224,6,3,3,8,1, + 4,252,252,252,3,3,3,7,2,0,224,224,224,8,18,18, + 10,1,255,7,6,6,14,12,12,12,28,24,24,56,48,48, + 48,112,96,96,224,11,17,34,13,1,0,31,0,63,128,113, + 192,112,192,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,112,192,113,192,63,128,31,0,7,17,17, + 13,2,0,14,62,254,254,206,14,14,14,14,14,14,14,14, + 14,14,14,14,12,17,34,13,1,0,15,128,63,224,120,224, + 112,112,0,112,0,112,0,240,1,224,3,224,7,192,15,128, + 30,0,60,0,248,0,255,240,255,240,255,240,11,17,34,13, + 1,0,31,0,127,192,241,224,224,224,0,224,0,224,1,192, + 15,128,15,128,1,192,0,224,0,224,224,224,241,224,255,192, + 127,128,31,0,12,17,34,13,1,0,3,192,7,192,7,192, + 15,192,29,192,29,192,57,192,113,192,113,192,225,192,255,240, + 255,240,255,240,1,192,1,192,1,192,1,192,11,17,34,13, + 1,0,255,192,255,192,255,192,224,0,224,0,224,0,239,128, + 255,192,241,224,224,224,0,224,0,224,224,224,225,224,255,192, + 127,128,63,0,11,17,34,13,1,0,15,0,63,192,57,224, + 112,224,96,0,224,0,239,128,255,192,241,224,224,224,224,224, + 224,224,224,224,96,224,113,192,63,128,31,0,11,17,34,13, + 1,0,255,224,255,224,255,224,0,224,1,224,1,192,3,192, + 3,128,7,128,7,128,7,0,15,0,14,0,30,0,28,0, + 60,0,60,0,11,17,34,13,1,0,31,0,127,192,241,224, + 224,224,224,224,224,224,113,192,63,128,63,128,113,192,224,224, + 224,224,224,224,224,224,241,224,127,192,31,0,11,17,34,13, + 1,0,31,0,63,128,113,192,224,192,224,224,224,224,224,224, + 241,224,127,224,62,224,0,224,0,224,224,224,225,192,113,192, + 127,128,30,0,3,12,12,7,3,0,224,224,224,0,0,0, + 0,0,0,224,224,224,5,14,14,8,1,254,56,56,56,0, + 0,0,0,0,56,56,112,112,96,224,14,12,24,24,5,1, + 0,12,0,60,1,224,7,0,60,0,224,0,224,0,60,0, + 7,0,1,224,0,60,0,12,14,6,12,24,5,4,255,252, + 255,252,0,0,0,0,255,252,255,252,14,12,24,24,5,1, + 192,0,240,0,30,0,3,128,0,240,0,28,0,28,0,240, + 3,128,30,0,240,0,192,0,10,17,34,12,1,0,62,0, + 127,128,227,128,193,192,1,192,1,192,3,128,7,128,14,0, + 28,0,24,0,24,0,24,0,0,0,0,0,24,0,24,0, + 22,22,66,24,1,251,0,254,0,3,255,128,15,255,224,31, + 1,240,62,0,240,120,247,120,121,255,56,113,207,60,243,135, + 28,227,135,28,227,135,28,227,135,28,227,135,28,227,207,56, + 241,255,248,113,251,240,120,113,224,60,0,0,31,0,0,15, + 255,0,7,255,0,0,255,0,16,17,34,16,0,0,3,192, + 3,192,3,224,7,224,7,240,15,112,14,112,14,120,30,56, + 28,56,28,60,63,252,63,252,127,254,120,14,112,15,240,7, + 12,17,34,15,2,0,255,192,255,224,255,240,224,240,224,112, + 224,112,224,224,255,192,255,192,224,224,224,112,224,112,224,112, + 224,240,255,240,255,224,255,128,14,17,34,16,1,0,15,192, + 31,240,63,248,120,120,112,60,240,60,224,0,224,0,224,0, + 224,0,224,0,224,0,112,60,112,60,56,120,31,240,15,192, + 14,17,34,17,2,0,255,0,255,224,255,240,224,248,224,56, + 224,60,224,28,224,28,224,28,224,28,224,28,224,60,224,56, + 224,248,255,240,255,224,255,128,11,17,34,15,2,0,255,224, + 255,224,255,224,224,0,224,0,224,0,224,0,255,224,255,224, + 224,0,224,0,224,0,224,0,224,0,255,224,255,224,255,224, + 11,17,34,14,2,0,255,224,255,224,255,224,224,0,224,0, + 224,0,224,0,255,192,255,192,255,192,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,15,17,34,18,1,0,7,224, + 31,248,63,252,124,30,112,14,240,14,224,0,224,0,224,254, + 224,254,224,254,240,14,112,14,124,14,63,254,31,254,3,248, + 13,17,34,17,2,0,224,56,224,56,224,56,224,56,224,56, + 224,56,224,56,255,248,255,248,255,248,224,56,224,56,224,56, + 224,56,224,56,224,56,224,56,3,17,17,7,2,0,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,11, + 17,34,14,1,0,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,224,224,224,224,240, + 224,255,192,127,192,63,0,13,17,34,16,2,0,224,240,224, + 224,225,224,227,192,231,128,239,0,239,0,254,0,254,0,239, + 0,231,128,231,128,227,192,225,224,225,240,224,240,224,120,11, + 17,34,14,2,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,255,224,255,224,255,224,18,17,51,22,2,0,252,7,192, + 252,15,192,252,15,192,252,15,192,238,31,192,238,29,192,238, + 29,192,231,61,192,231,57,192,231,57,192,231,185,192,227,241, + 192,227,241,192,227,241,192,225,241,192,225,225,192,225,225,192, + 14,17,34,18,2,0,248,28,248,28,252,28,252,28,238,28, + 238,28,231,28,231,28,231,156,227,156,227,220,225,220,225,220, + 224,252,224,252,224,124,224,124,15,17,34,17,1,0,7,192, + 31,240,63,248,120,60,112,28,240,30,224,14,224,14,224,14, + 224,14,224,14,240,14,112,28,120,60,63,248,31,240,7,224, + 12,17,34,15,2,0,255,128,255,192,255,224,224,240,224,112, + 224,112,224,112,224,240,255,224,255,192,255,0,224,0,224,0, + 224,0,224,0,224,0,224,0,17,17,51,19,1,0,7,192, + 0,31,240,0,63,248,0,120,60,0,112,28,0,240,30,0, + 224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,240, + 14,0,112,28,0,120,60,0,63,255,128,31,255,128,7,255, + 128,13,17,34,16,2,0,255,192,255,240,255,248,224,120,224, + 56,224,56,224,112,255,224,255,192,255,240,224,240,224,112,224, + 120,224,56,224,56,224,56,224,56,13,17,34,15,1,0,15, + 192,63,224,56,240,112,112,112,0,120,0,126,0,63,192,31, + 240,3,240,0,120,224,56,224,56,240,120,127,240,63,224,15, + 128,13,17,34,15,1,0,255,248,255,248,255,248,7,0,7, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,7,0,14,17,34,18,2,0,224, + 28,224,28,224,28,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,240,60,120,120,127,248,63,240,15, + 192,17,17,51,17,0,0,240,7,128,112,7,0,120,15,0, + 120,14,0,56,30,0,60,30,0,28,28,0,30,60,0,30, + 60,0,14,56,0,15,120,0,15,112,0,7,112,0,7,240, + 0,7,224,0,3,224,0,3,224,0,23,17,51,23,0,0, + 240,56,30,112,124,28,112,124,28,120,124,60,120,108,60,56, + 238,56,56,238,56,56,238,56,60,198,120,29,199,112,29,199, + 112,29,199,112,29,131,112,15,131,224,15,131,224,15,131,224, + 15,1,224,14,17,34,16,1,0,240,60,120,56,120,120,60, + 112,28,224,31,224,15,192,7,128,7,128,15,192,31,192,29, + 224,56,240,120,112,112,120,240,60,224,60,13,17,34,15,1, + 0,224,56,240,120,112,112,120,240,56,224,61,224,29,192,31, + 192,15,128,15,128,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,12,17,34,14,1,0,255,240,255,240,255,240,1, + 240,1,224,3,192,7,128,7,128,15,0,30,0,60,0,60, + 0,120,0,240,0,255,240,255,240,255,240,5,22,22,9,2, + 251,248,248,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,248,248,7,18,18,10,1,255,192,224,96, + 96,112,48,48,56,24,24,24,28,12,12,14,6,6,6,5, + 22,22,9,2,251,248,248,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,248,248,11,14,28,23,6, + 0,4,0,14,0,10,0,27,0,17,0,17,0,49,128,32, + 128,32,128,96,192,64,64,192,96,128,32,128,32,12,2,4, + 12,0,253,255,240,255,240,4,4,4,6,0,14,224,96,48, + 48,10,12,24,13,1,0,31,0,127,128,113,192,1,192,31, + 192,127,192,241,192,225,192,225,192,243,192,127,192,60,192,12, + 17,34,14,1,0,224,0,224,0,224,0,224,0,224,0,239, + 128,255,192,241,224,240,240,224,112,224,112,224,112,224,112,240, + 240,248,224,255,192,231,128,10,12,24,12,1,0,31,0,127, + 128,115,192,225,192,224,0,224,0,224,0,225,192,225,192,115, + 192,127,128,31,0,12,17,34,14,1,0,0,112,0,112,0, + 112,0,112,0,112,31,112,63,240,120,240,240,240,224,112,224, + 112,224,112,224,112,240,240,113,240,63,240,30,112,11,12,24, + 13,1,0,31,0,63,128,113,192,225,224,255,224,255,224,224, + 0,224,0,225,192,113,192,127,192,31,0,8,17,17,9,1, + 0,31,63,56,56,56,255,255,56,56,56,56,56,56,56,56, + 56,56,12,17,34,14,1,251,31,112,63,240,120,240,240,240, + 224,112,224,112,224,112,224,112,240,240,112,240,127,240,30,112, + 0,112,112,112,120,224,63,224,31,128,11,17,34,13,1,0, + 224,0,224,0,224,0,224,0,224,0,239,128,255,192,241,224, + 240,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,3,17,17,5,1,0,224,224,224,0,0,224,224,224, + 224,224,224,224,224,224,224,224,224,4,22,22,7,2,251,112, + 112,112,0,0,112,112,112,112,112,112,112,112,112,112,112,112, + 112,112,240,240,224,11,17,34,12,1,0,224,0,224,0,224, + 0,224,0,224,0,227,192,227,128,231,0,239,0,254,0,254, + 0,238,0,239,0,231,128,231,128,227,192,225,224,3,17,17, + 6,1,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,19,12,36,21,1,0,231,143,128,239,223,192, + 249,241,224,240,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,11,12, + 24,13,1,0,239,128,255,192,241,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,12,12,24,14, + 1,0,31,128,63,192,112,224,240,224,224,112,224,112,224,112, + 224,112,240,240,112,224,63,192,31,128,12,17,34,14,1,251, + 231,128,255,192,248,224,240,240,224,112,224,112,224,112,224,112, + 240,240,241,224,255,192,239,128,224,0,224,0,224,0,224,0, + 224,0,12,17,34,14,1,251,30,112,63,240,113,240,240,240, + 224,112,224,112,224,112,224,112,240,240,120,240,63,240,31,112, + 0,112,0,112,0,112,0,112,0,112,7,12,12,9,1,0, + 238,238,254,240,240,224,224,224,224,224,224,224,10,12,24,12, + 1,0,63,0,127,128,241,192,225,192,248,0,127,0,31,128, + 3,192,225,192,227,192,127,128,63,0,8,15,15,10,1,0, + 24,56,56,255,255,56,56,56,56,56,56,56,60,63,15,11, + 12,24,13,1,0,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,241,224,127,224,62,224,12,12,24, + 13,0,0,240,112,112,240,112,224,120,224,56,224,57,192,29, + 192,29,192,31,128,15,128,15,128,15,0,19,12,36,20,0, + 0,240,240,224,112,240,224,113,240,224,113,249,192,57,249,192, + 59,185,192,59,159,192,63,159,128,31,31,128,31,15,128,31, + 15,0,15,15,0,11,12,24,13,1,0,241,224,113,192,123, + 128,63,128,31,0,30,0,31,0,63,128,123,128,115,192,241, + 192,225,224,12,17,34,12,0,251,240,112,112,240,120,224,56, + 224,57,224,61,192,29,192,29,192,31,128,15,128,15,128,7, + 0,7,0,15,0,14,0,14,0,30,0,10,12,24,12,1, + 0,255,128,255,128,7,128,7,0,14,0,30,0,60,0,56, + 0,112,0,224,0,255,192,255,192,9,23,46,12,2,250,7, + 128,15,128,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,60,0,248,0,224,0,248,0,60,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,15,128,7,128,2,25,25, + 8,3,250,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,8,23,23,12, + 2,250,224,240,56,56,56,56,56,56,56,28,31,7,31,28, + 56,56,56,56,56,56,56,248,224,12,3,6,12,0,5,60, + 48,127,240,227,192,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,0,0,0,7,0,0,3,17,17,9, + 3,251,224,224,224,0,0,224,224,224,224,224,224,224,224,224, + 224,224,224,10,18,36,13,1,253,1,0,1,0,3,0,31, + 0,127,128,115,192,231,192,228,0,228,0,236,0,233,192,233, + 192,123,192,127,128,31,0,16,0,48,0,32,0,11,17,34, + 13,1,0,15,128,31,224,56,224,56,224,56,0,56,0,255, + 0,255,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,255,224,255,224,11,12,24,13,1,4,128,32,95,64,113, + 128,96,128,64,64,64,64,64,64,64,64,96,192,49,128,95, + 64,128,32,13,17,34,15,1,0,224,120,240,120,112,112,120, + 240,56,224,253,248,253,248,31,192,15,128,255,248,255,248,7, + 0,7,0,7,0,7,0,7,0,7,0,1,22,22,8,4, + 251,128,128,128,128,128,128,128,128,128,0,0,0,0,128,128, + 128,128,128,128,128,128,128,9,21,42,11,1,252,63,0,127, + 0,241,0,224,0,224,0,120,0,62,0,63,0,119,128,227, + 128,227,128,231,128,255,0,126,0,31,0,7,128,3,128,3, + 128,135,128,255,0,124,0,8,3,3,8,0,15,231,231,231, + 17,17,51,19,1,0,3,224,0,15,248,0,60,30,0,51, + 230,0,103,243,0,103,59,0,206,57,128,206,1,128,206,1, + 128,206,1,128,206,57,128,78,57,0,103,243,0,51,230,0, + 56,14,0,15,248,0,3,224,0,8,11,11,10,1,6,60, + 102,6,126,230,198,198,126,0,0,255,11,9,18,14,1,1, + 60,224,56,224,121,224,113,192,243,192,113,192,121,224,56,224, + 60,224,12,5,10,14,1,5,255,240,0,16,0,16,0,16, + 0,16,255,17,17,51,19,1,0,3,224,0,15,248,0,60, + 30,0,55,246,0,103,251,0,102,27,0,198,25,128,199,241, + 128,199,241,128,198,57,128,198,25,128,70,25,0,102,27,0, + 48,6,0,56,14,0,15,248,0,3,224,0,7,2,2,7, + 0,15,254,254,5,5,5,7,1,12,112,136,136,136,112,14, + 14,28,24,5,0,2,0,2,0,2,0,2,0,255,252,255, + 252,2,0,2,0,2,0,2,0,0,0,0,0,255,252,255, + 252,7,9,9,9,1,8,124,230,6,14,28,56,224,254,254, + 7,9,9,9,1,8,124,206,6,14,56,14,6,206,124,5, + 4,4,5,1,14,56,112,96,192,255,11,20,40,14,2,253, + 63,224,125,128,253,128,253,128,253,128,253,128,253,128,125,128, + 13,128,13,128,13,128,13,128,13,128,13,128,13,128,13,128, + 13,128,13,128,13,128,13,128,3,3,3,7,2,6,224,224, + 224,6,5,5,6,1,251,32,56,12,12,248,4,9,9,6, + 1,8,48,240,176,48,48,48,48,48,48,8,11,11,10,1, + 6,60,102,195,195,195,195,231,126,60,0,255,12,9,18,14, + 1,1,227,128,113,192,121,224,56,224,60,240,56,224,121,224, + 113,192,227,128,16,17,34,18,1,0,48,24,240,24,176,48, + 48,112,48,96,48,224,48,192,49,128,49,142,3,14,3,30, + 6,54,14,54,12,102,24,127,24,6,48,6,16,17,34,18, + 1,0,48,24,240,48,176,48,48,96,48,224,48,192,49,192, + 49,128,51,62,3,119,6,3,6,7,12,14,28,28,24,112, + 48,127,48,127,17,17,51,19,1,0,124,6,0,198,12,0, + 6,12,0,56,24,0,14,56,0,6,48,0,206,112,0,124, + 96,0,0,199,0,1,199,0,1,143,0,3,155,0,3,27, + 0,7,51,0,6,63,128,12,3,0,28,3,0,10,17,34, + 12,1,251,14,0,14,0,0,0,0,0,14,0,14,0,14, + 0,28,0,56,0,112,0,240,0,224,0,224,128,224,192,115, + 192,127,128,31,0,16,24,48,16,0,0,14,0,7,0,3, + 0,3,128,1,128,0,0,0,0,3,192,3,192,3,224,7, + 224,7,240,15,112,14,112,14,120,30,56,28,56,28,60,63, + 252,63,252,127,254,120,14,112,15,240,7,16,24,48,16,0, + 0,0,112,0,96,0,224,0,192,1,128,0,0,0,0,3, + 192,3,192,3,224,7,224,7,240,15,112,14,112,14,120,30, + 56,28,56,28,60,63,252,63,252,127,254,120,14,112,15,240, + 7,16,24,48,16,0,0,1,192,3,192,3,224,6,96,4, + 48,0,0,0,0,3,192,3,192,3,224,7,224,7,240,15, + 112,14,112,14,120,30,56,28,56,28,60,63,252,63,252,127, + 254,120,14,112,15,240,7,16,23,46,16,0,0,0,16,7, + 240,7,224,0,0,0,0,0,0,3,192,3,192,3,224,7, + 224,7,240,15,112,14,112,14,120,30,56,28,56,28,60,63, + 252,63,252,127,254,120,14,112,15,240,7,16,23,46,17,0, + 0,14,112,14,112,14,112,0,0,0,0,0,0,3,192,3, + 192,7,224,7,224,7,224,15,112,14,112,30,120,30,56,28, + 56,60,60,63,252,127,254,127,254,112,14,240,15,224,7,15, + 25,50,16,1,0,3,128,6,192,4,64,4,64,4,192,3, + 128,0,0,0,0,3,128,7,192,7,192,15,192,14,224,14, + 224,30,224,28,112,28,112,60,112,56,120,63,248,127,252,127, + 252,112,28,240,30,224,14,21,17,51,23,1,0,0,255,248, + 0,255,248,1,248,0,1,248,0,3,184,0,3,184,0,7, + 56,0,7,63,248,14,63,248,14,56,0,30,56,0,31,248, + 0,63,248,0,120,56,0,112,56,0,240,63,248,224,63,248, + 14,22,44,16,1,251,15,192,31,240,63,248,120,56,112,60, + 240,28,224,0,224,0,224,0,224,0,224,0,224,0,112,28, + 112,60,56,120,31,240,15,192,3,0,3,192,0,96,0,96, + 7,192,11,24,48,15,2,0,56,0,24,0,28,0,12,0, + 6,0,0,0,0,0,255,224,255,224,255,224,224,0,224,0, + 224,0,224,0,255,224,255,224,224,0,224,0,224,0,224,0, + 224,0,255,224,255,224,255,224,11,24,48,15,2,0,3,128, + 3,0,7,0,6,0,12,0,0,0,0,0,255,224,255,224, + 255,224,224,0,224,0,224,0,224,0,255,224,255,224,224,0, + 224,0,224,0,224,0,224,0,255,224,255,224,255,224,11,24, + 48,15,2,0,14,0,31,0,27,0,59,128,49,128,0,0, + 0,0,255,224,255,224,255,224,224,0,224,0,224,0,224,0, + 255,224,255,224,224,0,224,0,224,0,224,0,224,0,255,224, + 255,224,255,224,11,23,46,15,2,0,59,128,59,128,59,128, + 0,0,0,0,0,0,255,224,255,224,255,224,224,0,224,0, + 224,0,224,0,255,224,255,224,224,0,224,0,224,0,224,0, + 224,0,255,224,255,224,255,224,5,24,24,7,0,0,224,224, + 96,48,16,0,0,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,5,24,24,5,1,0,56,48,112,96, + 192,0,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,7,24,24,7,0,0,56,56,108,108,198,0, + 0,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,8,23,23,8,0,0,231,231,231,0,0,0,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,15, + 17,34,16,0,0,63,192,63,240,63,248,56,60,56,28,56, + 30,56,14,56,14,255,14,255,14,56,14,56,30,56,28,56, + 60,63,248,63,240,63,192,14,23,46,18,2,0,0,32,15, + 192,15,192,0,0,0,0,0,0,248,28,248,28,252,28,252, + 28,238,28,238,28,231,28,231,28,231,156,227,156,227,220,225, + 220,225,220,224,252,224,252,224,124,224,124,15,24,48,17,1, + 0,28,0,14,0,6,0,3,0,1,0,0,0,0,0,7, + 192,31,240,63,248,120,60,112,28,240,30,224,14,224,14,224, + 14,224,14,224,14,240,14,112,28,120,60,63,248,31,240,7, + 224,15,24,48,17,1,0,0,112,0,224,0,192,1,128,1, + 0,0,0,0,0,7,192,31,240,63,248,120,60,112,28,240, + 30,224,14,224,14,224,14,224,14,224,14,240,14,112,28,120, + 60,63,248,31,240,7,224,15,24,48,17,1,0,3,128,7, + 192,6,192,12,96,8,32,0,0,0,0,7,192,31,240,63, + 248,120,60,112,28,240,30,224,14,224,14,224,14,224,14,224, + 14,240,14,112,28,120,60,63,248,31,240,7,224,15,23,46, + 17,1,0,7,32,15,224,8,192,0,0,0,0,0,0,7, + 192,31,240,63,248,120,60,112,28,240,30,224,14,224,14,224, + 14,224,14,224,14,224,14,112,28,120,60,63,248,31,240,7, + 224,15,23,46,17,1,0,14,112,14,112,14,112,0,0,0, + 0,0,0,7,192,31,240,63,248,120,60,112,28,240,30,224, + 14,224,14,224,14,224,14,224,14,240,14,112,28,120,60,63, + 248,31,240,7,224,13,12,24,23,5,1,192,24,96,48,48, + 96,24,192,13,128,7,0,7,0,13,128,24,192,48,96,96, + 48,192,24,17,19,57,17,0,255,0,1,0,3,241,128,15, + 251,0,31,254,0,60,30,0,56,30,0,120,63,0,112,119, + 0,112,231,0,113,199,0,115,135,0,119,7,0,126,7,0, + 60,14,0,60,30,0,63,252,0,111,248,0,227,224,0,64, + 0,0,14,24,48,18,2,0,28,0,12,0,14,0,6,0, + 3,0,0,0,0,0,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,240,60, + 112,56,127,248,63,240,15,192,14,24,48,18,2,0,0,224, + 0,192,1,192,1,128,3,0,0,0,0,0,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,240,60,112,56,127,248,63,240,15,192,14,24, + 48,18,2,0,7,128,7,128,15,192,12,192,24,96,0,0, + 0,0,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,240,60,112,56,127,248, + 63,240,15,192,14,23,46,16,1,0,28,224,28,224,28,224, + 0,0,0,0,0,0,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,240,60, + 120,120,127,248,63,240,15,192,13,23,46,15,1,0,1,192, + 1,128,3,0,2,0,0,0,0,0,224,56,240,120,112,112, + 120,240,56,224,61,224,29,192,31,192,15,128,15,128,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,12,17,34,15, + 1,0,224,0,224,0,224,0,255,128,255,224,255,224,224,240, + 224,112,224,112,224,240,255,224,255,224,255,128,224,0,224,0, + 224,0,224,0,12,17,34,14,1,0,63,0,127,128,241,192, + 225,192,225,192,227,128,231,0,238,0,238,0,239,128,231,192, + 225,224,224,112,238,112,238,112,239,224,231,192,10,19,38,13, + 1,0,112,0,56,0,24,0,12,0,4,0,0,0,0,0, + 31,0,127,128,113,192,1,192,31,192,127,192,241,192,225,192, + 225,192,243,192,127,192,60,192,10,19,38,13,1,0,3,128, + 3,0,6,0,6,0,12,0,0,0,0,0,31,0,127,128, + 113,192,1,192,31,192,127,192,241,192,225,192,225,192,243,192, + 127,192,60,192,10,19,38,13,1,0,14,0,30,0,27,0, + 51,0,33,128,0,0,0,0,31,0,127,128,113,192,1,192, + 31,192,127,192,241,192,225,192,225,192,243,192,127,192,60,192, + 10,17,34,13,1,0,31,128,63,0,0,0,0,0,0,0, + 31,0,127,128,113,192,1,192,31,192,127,192,241,192,225,192, + 225,192,243,192,127,192,60,192,10,18,36,13,1,0,115,128, + 115,128,115,128,0,0,0,0,0,0,63,0,127,128,241,192, + 1,192,31,192,127,192,241,192,225,192,225,192,243,192,127,192, + 60,192,10,20,40,13,1,0,14,0,27,0,17,0,19,0, + 31,0,14,0,0,0,0,0,31,0,127,128,113,192,1,192, + 31,192,127,192,241,192,225,192,225,192,243,192,127,192,60,192, + 18,12,36,20,1,0,31,31,0,127,191,128,113,243,128,0, + 225,192,31,255,192,127,255,192,240,224,0,224,224,0,224,225, + 192,241,243,192,127,63,128,62,31,0,10,17,34,12,1,251, + 31,0,127,128,115,192,225,192,224,0,224,0,224,0,224,0, + 225,192,115,192,127,128,63,0,8,0,14,0,3,0,3,0, + 30,0,11,19,38,13,1,0,112,0,56,0,24,0,12,0, + 4,0,0,0,0,0,31,0,63,128,113,192,225,224,255,224, + 255,224,224,0,224,0,225,192,113,192,127,192,31,0,11,19, + 38,13,1,0,3,128,3,0,7,0,6,0,12,0,0,0, + 0,0,31,0,63,128,113,192,225,224,255,224,255,224,224,0, + 224,0,225,192,113,192,127,192,31,0,11,19,38,13,1,0, + 14,0,31,0,27,0,49,128,33,128,0,0,0,0,31,0, + 63,128,113,192,225,224,255,224,255,224,224,0,224,0,225,192, + 113,192,127,192,31,0,11,18,36,13,1,0,115,128,115,128, + 115,128,0,0,0,0,0,0,31,0,63,128,115,192,225,192, + 255,224,255,224,224,0,224,0,225,192,115,192,127,128,31,0, + 5,18,18,6,255,0,224,112,48,24,0,0,56,56,56,56, + 56,56,56,56,56,56,56,56,4,18,18,5,1,0,112,96, + 224,192,0,0,224,224,224,224,224,224,224,224,224,224,224,224, + 7,18,18,6,255,0,56,124,108,198,0,0,56,56,56,56, + 56,56,56,56,56,56,56,56,8,18,18,7,255,0,231,231, + 231,0,0,0,56,56,56,56,56,56,56,56,56,56,56,56, + 12,17,34,14,1,0,28,96,15,192,15,128,59,128,33,192, + 31,224,63,224,112,224,240,240,224,112,224,112,224,112,224,112, + 240,240,112,224,63,192,31,128,11,17,34,13,1,0,31,128, + 63,0,0,0,0,0,0,0,239,128,255,192,241,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 12,19,38,14,1,0,56,0,28,0,12,0,6,0,6,0, + 0,0,0,0,31,128,63,192,112,224,240,224,224,112,224,112, + 224,112,224,112,240,240,112,224,63,192,31,128,12,19,38,14, + 1,0,1,192,3,128,3,0,6,0,4,0,0,0,0,0, + 31,128,63,192,112,224,240,224,224,112,224,112,224,112,224,112, + 240,240,112,224,63,192,31,128,12,19,38,14,1,0,15,0, + 15,0,31,128,25,128,48,192,0,0,0,0,31,128,63,192, + 112,224,240,224,224,112,224,112,224,112,224,112,240,240,112,224, + 63,192,31,128,12,17,34,14,1,0,31,192,63,128,0,0, + 0,0,0,0,31,128,63,192,112,224,240,224,224,112,224,112, + 224,112,224,112,240,240,112,224,63,192,31,128,12,18,36,14, + 1,0,57,192,57,192,57,192,0,0,0,0,0,0,31,128, + 63,192,112,224,240,224,224,112,224,112,224,112,224,112,240,240, + 112,224,63,192,31,128,14,10,20,24,5,2,7,0,7,0, + 6,0,0,0,255,252,255,252,0,0,2,0,7,0,7,0, + 12,15,30,14,1,254,0,32,0,48,31,224,63,192,113,224, + 241,240,227,112,230,112,236,112,248,112,248,240,112,224,127,192, + 223,128,192,0,11,19,38,13,1,0,112,0,56,0,28,0, + 12,0,6,0,0,0,0,0,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,241,224,127,224,62,224, + 11,19,38,13,1,0,3,128,3,128,7,0,6,0,12,0, + 0,0,0,0,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,241,224,127,224,62,224,11,19,38,13, + 1,0,14,0,31,0,27,0,49,128,32,128,0,0,0,0, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,241,224,127,224,62,224,11,18,36,13,1,0,115,128, + 115,128,115,128,0,0,0,0,0,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,241,224,127,224, + 62,224,11,23,46,13,1,251,1,128,3,128,3,0,6,0, + 0,0,0,0,224,224,224,224,241,224,113,192,121,192,59,192, + 59,128,63,128,31,128,31,0,31,0,15,0,14,0,14,0, + 254,0,252,0,120,0,12,22,44,15,2,251,224,0,224,0, + 224,0,224,0,224,0,239,128,255,192,248,224,240,240,224,112, + 224,112,224,112,224,112,240,240,241,224,255,192,239,128,224,0, + 224,0,224,0,224,0,224,0,12,22,44,14,1,251,57,192, + 57,192,57,192,0,0,0,0,240,112,240,240,112,240,120,224, + 121,224,57,192,61,192,31,192,31,128,31,128,15,128,15,0, + 15,0,15,0,14,0,30,0,28,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--23-230-72-72-P-115-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 17 + Calculated Max Values w=14 h=18 x= 5 y= 8 dx=24 dy= 0 ascent=17 len=34 + Font Bounding box w=34 h=31 x=-2 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =17 descent= 0 + X Font ascent =17 descent= 0 + Max Font ascent =17 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub17n[512] U8G_SECTION(".progmem.u8g_font_fub17n") = { + 0,34,31,254,250,17,0,0,0,0,42,57,0,17,253,17, + 0,9,9,18,15,3,8,54,0,54,0,54,0,156,128,255, + 128,156,128,54,0,54,0,54,0,14,14,28,24,5,0,2, + 0,2,0,2,0,2,0,2,0,2,0,255,252,255,252,2, + 0,2,0,2,0,2,0,2,0,2,0,5,6,6,7,1, + 253,56,112,112,96,96,224,6,3,3,8,1,4,252,252,252, + 3,3,3,7,2,0,224,224,224,8,18,18,10,1,255,7, + 6,6,14,12,12,12,28,24,24,56,48,48,48,112,96,96, + 224,11,17,34,13,1,0,31,0,63,128,113,192,112,192,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,112,192,113,192,63,128,31,0,7,17,17,13,2,0,14, + 62,254,254,206,14,14,14,14,14,14,14,14,14,14,14,14, + 12,17,34,13,1,0,15,128,63,224,120,224,112,112,0,112, + 0,112,0,240,1,224,3,224,7,192,15,128,30,0,60,0, + 248,0,255,240,255,240,255,240,11,17,34,13,1,0,31,0, + 127,192,241,224,224,224,0,224,0,224,1,192,15,128,15,128, + 1,192,0,224,0,224,224,224,241,224,255,192,127,128,31,0, + 12,17,34,13,1,0,3,192,7,192,7,192,15,192,29,192, + 29,192,57,192,113,192,113,192,225,192,255,240,255,240,255,240, + 1,192,1,192,1,192,1,192,11,17,34,13,1,0,255,192, + 255,192,255,192,224,0,224,0,224,0,239,128,255,192,241,224, + 224,224,0,224,0,224,224,224,225,224,255,192,127,128,63,0, + 11,17,34,13,1,0,15,0,63,192,57,224,112,224,96,0, + 224,0,239,128,255,192,241,224,224,224,224,224,224,224,224,224, + 96,224,113,192,63,128,31,0,11,17,34,13,1,0,255,224, + 255,224,255,224,0,224,1,224,1,192,3,192,3,128,7,128, + 7,128,7,0,15,0,14,0,30,0,28,0,60,0,60,0, + 11,17,34,13,1,0,31,0,127,192,241,224,224,224,224,224, + 224,224,113,192,63,128,63,128,113,192,224,224,224,224,224,224, + 224,224,241,224,127,192,31,0,11,17,34,13,1,0,31,0, + 63,128,113,192,224,192,224,224,224,224,224,224,241,224,127,224, + 62,224,0,224,0,224,224,224,225,192,113,192,127,128,30,0 + }; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--23-230-72-72-P-115-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=23 h=25 x= 6 y=14 dx=24 dy= 0 ascent=19 len=66 + Font Bounding box w=34 h=31 x=-2 y=-6 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =19 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub17r[3222] U8G_SECTION(".progmem.u8g_font_fub17r") = { + 0,34,31,254,250,17,4,8,8,209,32,127,251,19,250,17, + 251,0,0,0,7,0,0,3,17,17,9,3,0,224,224,224, + 224,224,224,224,224,224,224,224,224,0,0,224,224,224,8,7, + 7,12,2,10,231,231,231,231,231,231,231,14,17,34,16,1, + 0,3,24,7,24,6,56,6,48,63,252,63,252,12,96,12, + 96,28,96,24,224,255,248,255,240,57,192,49,128,49,128,113, + 128,99,128,12,21,42,14,1,253,2,0,15,128,63,192,127, + 224,242,224,226,224,226,0,250,0,126,0,63,192,15,224,3, + 240,2,240,226,112,226,112,242,240,127,224,63,192,15,0,2, + 0,2,0,21,17,51,23,1,0,62,3,0,127,7,0,99, + 6,0,193,142,0,193,140,0,193,152,0,193,184,0,99,48, + 128,127,119,224,62,102,48,0,236,24,0,204,24,1,204,24, + 1,140,24,3,14,56,7,7,240,6,3,224,16,17,34,18, + 1,0,31,128,63,192,121,224,112,224,113,224,57,192,63,128, + 31,0,63,30,119,156,243,220,225,252,224,252,224,120,120,124, + 127,254,31,207,3,7,7,9,3,10,224,224,224,224,224,224, + 96,5,20,20,9,2,253,56,56,112,112,112,240,224,224,224, + 224,224,224,224,224,240,112,112,112,48,56,5,20,20,9,2, + 253,224,96,112,112,112,56,56,56,56,56,56,56,56,56,56, + 112,112,112,96,224,9,9,18,15,3,8,54,0,54,0,54, + 0,156,128,255,128,156,128,54,0,54,0,54,0,14,14,28, + 24,5,0,2,0,2,0,2,0,2,0,2,0,2,0,255, + 252,255,252,2,0,2,0,2,0,2,0,2,0,2,0,5, + 6,6,7,1,253,56,112,112,96,96,224,6,3,3,8,1, + 4,252,252,252,3,3,3,7,2,0,224,224,224,8,18,18, + 10,1,255,7,6,6,14,12,12,12,28,24,24,56,48,48, + 48,112,96,96,224,11,17,34,13,1,0,31,0,63,128,113, + 192,112,192,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,112,192,113,192,63,128,31,0,7,17,17, + 13,2,0,14,62,254,254,206,14,14,14,14,14,14,14,14, + 14,14,14,14,12,17,34,13,1,0,15,128,63,224,120,224, + 112,112,0,112,0,112,0,240,1,224,3,224,7,192,15,128, + 30,0,60,0,248,0,255,240,255,240,255,240,11,17,34,13, + 1,0,31,0,127,192,241,224,224,224,0,224,0,224,1,192, + 15,128,15,128,1,192,0,224,0,224,224,224,241,224,255,192, + 127,128,31,0,12,17,34,13,1,0,3,192,7,192,7,192, + 15,192,29,192,29,192,57,192,113,192,113,192,225,192,255,240, + 255,240,255,240,1,192,1,192,1,192,1,192,11,17,34,13, + 1,0,255,192,255,192,255,192,224,0,224,0,224,0,239,128, + 255,192,241,224,224,224,0,224,0,224,224,224,225,224,255,192, + 127,128,63,0,11,17,34,13,1,0,15,0,63,192,57,224, + 112,224,96,0,224,0,239,128,255,192,241,224,224,224,224,224, + 224,224,224,224,96,224,113,192,63,128,31,0,11,17,34,13, + 1,0,255,224,255,224,255,224,0,224,1,224,1,192,3,192, + 3,128,7,128,7,128,7,0,15,0,14,0,30,0,28,0, + 60,0,60,0,11,17,34,13,1,0,31,0,127,192,241,224, + 224,224,224,224,224,224,113,192,63,128,63,128,113,192,224,224, + 224,224,224,224,224,224,241,224,127,192,31,0,11,17,34,13, + 1,0,31,0,63,128,113,192,224,192,224,224,224,224,224,224, + 241,224,127,224,62,224,0,224,0,224,224,224,225,192,113,192, + 127,128,30,0,3,12,12,7,3,0,224,224,224,0,0,0, + 0,0,0,224,224,224,5,14,14,8,1,254,56,56,56,0, + 0,0,0,0,56,56,112,112,96,224,14,12,24,24,5,1, + 0,12,0,60,1,224,7,0,60,0,224,0,224,0,60,0, + 7,0,1,224,0,60,0,12,14,6,12,24,5,4,255,252, + 255,252,0,0,0,0,255,252,255,252,14,12,24,24,5,1, + 192,0,240,0,30,0,3,128,0,240,0,28,0,28,0,240, + 3,128,30,0,240,0,192,0,10,17,34,12,1,0,62,0, + 127,128,227,128,193,192,1,192,1,192,3,128,7,128,14,0, + 28,0,24,0,24,0,24,0,0,0,0,0,24,0,24,0, + 22,22,66,24,1,251,0,254,0,3,255,128,15,255,224,31, + 1,240,62,0,240,120,247,120,121,255,56,113,207,60,243,135, + 28,227,135,28,227,135,28,227,135,28,227,135,28,227,207,56, + 241,255,248,113,251,240,120,113,224,60,0,0,31,0,0,15, + 255,0,7,255,0,0,255,0,16,17,34,16,0,0,3,192, + 3,192,3,224,7,224,7,240,15,112,14,112,14,120,30,56, + 28,56,28,60,63,252,63,252,127,254,120,14,112,15,240,7, + 12,17,34,15,2,0,255,192,255,224,255,240,224,240,224,112, + 224,112,224,224,255,192,255,192,224,224,224,112,224,112,224,112, + 224,240,255,240,255,224,255,128,14,17,34,16,1,0,15,192, + 31,240,63,248,120,120,112,60,240,60,224,0,224,0,224,0, + 224,0,224,0,224,0,112,60,112,60,56,120,31,240,15,192, + 14,17,34,17,2,0,255,0,255,224,255,240,224,248,224,56, + 224,60,224,28,224,28,224,28,224,28,224,28,224,60,224,56, + 224,248,255,240,255,224,255,128,11,17,34,15,2,0,255,224, + 255,224,255,224,224,0,224,0,224,0,224,0,255,224,255,224, + 224,0,224,0,224,0,224,0,224,0,255,224,255,224,255,224, + 11,17,34,14,2,0,255,224,255,224,255,224,224,0,224,0, + 224,0,224,0,255,192,255,192,255,192,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,15,17,34,18,1,0,7,224, + 31,248,63,252,124,30,112,14,240,14,224,0,224,0,224,254, + 224,254,224,254,240,14,112,14,124,14,63,254,31,254,3,248, + 13,17,34,17,2,0,224,56,224,56,224,56,224,56,224,56, + 224,56,224,56,255,248,255,248,255,248,224,56,224,56,224,56, + 224,56,224,56,224,56,224,56,3,17,17,7,2,0,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,11, + 17,34,14,1,0,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,224,224,224,224,240, + 224,255,192,127,192,63,0,13,17,34,16,2,0,224,240,224, + 224,225,224,227,192,231,128,239,0,239,0,254,0,254,0,239, + 0,231,128,231,128,227,192,225,224,225,240,224,240,224,120,11, + 17,34,14,2,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,255,224,255,224,255,224,18,17,51,22,2,0,252,7,192, + 252,15,192,252,15,192,252,15,192,238,31,192,238,29,192,238, + 29,192,231,61,192,231,57,192,231,57,192,231,185,192,227,241, + 192,227,241,192,227,241,192,225,241,192,225,225,192,225,225,192, + 14,17,34,18,2,0,248,28,248,28,252,28,252,28,238,28, + 238,28,231,28,231,28,231,156,227,156,227,220,225,220,225,220, + 224,252,224,252,224,124,224,124,15,17,34,17,1,0,7,192, + 31,240,63,248,120,60,112,28,240,30,224,14,224,14,224,14, + 224,14,224,14,240,14,112,28,120,60,63,248,31,240,7,224, + 12,17,34,15,2,0,255,128,255,192,255,224,224,240,224,112, + 224,112,224,112,224,240,255,224,255,192,255,0,224,0,224,0, + 224,0,224,0,224,0,224,0,17,17,51,19,1,0,7,192, + 0,31,240,0,63,248,0,120,60,0,112,28,0,240,30,0, + 224,14,0,224,14,0,224,14,0,224,14,0,224,14,0,240, + 14,0,112,28,0,120,60,0,63,255,128,31,255,128,7,255, + 128,13,17,34,16,2,0,255,192,255,240,255,248,224,120,224, + 56,224,56,224,112,255,224,255,192,255,240,224,240,224,112,224, + 120,224,56,224,56,224,56,224,56,13,17,34,15,1,0,15, + 192,63,224,56,240,112,112,112,0,120,0,126,0,63,192,31, + 240,3,240,0,120,224,56,224,56,240,120,127,240,63,224,15, + 128,13,17,34,15,1,0,255,248,255,248,255,248,7,0,7, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,7,0,14,17,34,18,2,0,224, + 28,224,28,224,28,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,240,60,120,120,127,248,63,240,15, + 192,17,17,51,17,0,0,240,7,128,112,7,0,120,15,0, + 120,14,0,56,30,0,60,30,0,28,28,0,30,60,0,30, + 60,0,14,56,0,15,120,0,15,112,0,7,112,0,7,240, + 0,7,224,0,3,224,0,3,224,0,23,17,51,23,0,0, + 240,56,30,112,124,28,112,124,28,120,124,60,120,108,60,56, + 238,56,56,238,56,56,238,56,60,198,120,29,199,112,29,199, + 112,29,199,112,29,131,112,15,131,224,15,131,224,15,131,224, + 15,1,224,14,17,34,16,1,0,240,60,120,56,120,120,60, + 112,28,224,31,224,15,192,7,128,7,128,15,192,31,192,29, + 224,56,240,120,112,112,120,240,60,224,60,13,17,34,15,1, + 0,224,56,240,120,112,112,120,240,56,224,61,224,29,192,31, + 192,15,128,15,128,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,12,17,34,14,1,0,255,240,255,240,255,240,1, + 240,1,224,3,192,7,128,7,128,15,0,30,0,60,0,60, + 0,120,0,240,0,255,240,255,240,255,240,5,22,22,9,2, + 251,248,248,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,248,248,7,18,18,10,1,255,192,224,96, + 96,112,48,48,56,24,24,24,28,12,12,14,6,6,6,5, + 22,22,9,2,251,248,248,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,248,248,11,14,28,23,6, + 0,4,0,14,0,10,0,27,0,17,0,17,0,49,128,32, + 128,32,128,96,192,64,64,192,96,128,32,128,32,12,2,4, + 12,0,253,255,240,255,240,4,4,4,6,0,14,224,96,48, + 48,10,12,24,13,1,0,31,0,127,128,113,192,1,192,31, + 192,127,192,241,192,225,192,225,192,243,192,127,192,60,192,12, + 17,34,14,1,0,224,0,224,0,224,0,224,0,224,0,239, + 128,255,192,241,224,240,240,224,112,224,112,224,112,224,112,240, + 240,248,224,255,192,231,128,10,12,24,12,1,0,31,0,127, + 128,115,192,225,192,224,0,224,0,224,0,225,192,225,192,115, + 192,127,128,31,0,12,17,34,14,1,0,0,112,0,112,0, + 112,0,112,0,112,31,112,63,240,120,240,240,240,224,112,224, + 112,224,112,224,112,240,240,113,240,63,240,30,112,11,12,24, + 13,1,0,31,0,63,128,113,192,225,224,255,224,255,224,224, + 0,224,0,225,192,113,192,127,192,31,0,8,17,17,9,1, + 0,31,63,56,56,56,255,255,56,56,56,56,56,56,56,56, + 56,56,12,17,34,14,1,251,31,112,63,240,120,240,240,240, + 224,112,224,112,224,112,224,112,240,240,112,240,127,240,30,112, + 0,112,112,112,120,224,63,224,31,128,11,17,34,13,1,0, + 224,0,224,0,224,0,224,0,224,0,239,128,255,192,241,224, + 240,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,3,17,17,5,1,0,224,224,224,0,0,224,224,224, + 224,224,224,224,224,224,224,224,224,4,22,22,7,2,251,112, + 112,112,0,0,112,112,112,112,112,112,112,112,112,112,112,112, + 112,112,240,240,224,11,17,34,12,1,0,224,0,224,0,224, + 0,224,0,224,0,227,192,227,128,231,0,239,0,254,0,254, + 0,238,0,239,0,231,128,231,128,227,192,225,224,3,17,17, + 6,1,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,19,12,36,21,1,0,231,143,128,239,223,192, + 249,241,224,240,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,11,12, + 24,13,1,0,239,128,255,192,241,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,12,12,24,14, + 1,0,31,128,63,192,112,224,240,224,224,112,224,112,224,112, + 224,112,240,240,112,224,63,192,31,128,12,17,34,14,1,251, + 231,128,255,192,248,224,240,240,224,112,224,112,224,112,224,112, + 240,240,241,224,255,192,239,128,224,0,224,0,224,0,224,0, + 224,0,12,17,34,14,1,251,30,112,63,240,113,240,240,240, + 224,112,224,112,224,112,224,112,240,240,120,240,63,240,31,112, + 0,112,0,112,0,112,0,112,0,112,7,12,12,9,1,0, + 238,238,254,240,240,224,224,224,224,224,224,224,10,12,24,12, + 1,0,63,0,127,128,241,192,225,192,248,0,127,0,31,128, + 3,192,225,192,227,192,127,128,63,0,8,15,15,10,1,0, + 24,56,56,255,255,56,56,56,56,56,56,56,60,63,15,11, + 12,24,13,1,0,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,241,224,127,224,62,224,12,12,24, + 13,0,0,240,112,112,240,112,224,120,224,56,224,57,192,29, + 192,29,192,31,128,15,128,15,128,15,0,19,12,36,20,0, + 0,240,240,224,112,240,224,113,240,224,113,249,192,57,249,192, + 59,185,192,59,159,192,63,159,128,31,31,128,31,15,128,31, + 15,0,15,15,0,11,12,24,13,1,0,241,224,113,192,123, + 128,63,128,31,0,30,0,31,0,63,128,123,128,115,192,241, + 192,225,224,12,17,34,12,0,251,240,112,112,240,120,224,56, + 224,57,224,61,192,29,192,29,192,31,128,15,128,15,128,7, + 0,7,0,15,0,14,0,14,0,30,0,10,12,24,12,1, + 0,255,128,255,128,7,128,7,0,14,0,30,0,60,0,56, + 0,112,0,224,0,255,192,255,192,9,23,46,12,2,250,7, + 128,15,128,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,60,0,248,0,224,0,248,0,60,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,15,128,7,128,2,25,25, + 8,3,250,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,8,23,23,12, + 2,250,224,240,56,56,56,56,56,56,56,28,31,7,31,28, + 56,56,56,56,56,56,56,248,224,12,3,6,12,0,5,60, + 48,127,240,227,192,255}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--27-270-72-72-P-136-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 20, '1' Height: 20 + Calculated Max Values w=27 h=29 x= 7 y=18 dx=28 dy= 0 ascent=29 len=100 + Font Bounding box w=40 h=36 x=-2 y=-7 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =20 descent=-5 + X Font ascent =20 descent=-5 + Max Font ascent =29 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub20[8916] U8G_SECTION(".progmem.u8g_font_fub20") = { + 0,40,36,254,249,20,4,242,11,37,32,255,251,29,249,20, + 251,0,0,0,8,0,0,4,20,20,11,4,0,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,0,0,0,240,240, + 240,10,8,16,14,2,12,243,192,243,192,243,192,243,192,243, + 192,225,192,225,192,97,128,17,20,60,19,1,0,1,199,0, + 1,134,0,3,142,0,3,142,0,3,142,0,31,255,128,63, + 255,128,7,28,0,6,24,0,14,56,0,14,56,0,14,48, + 0,127,254,0,255,254,0,28,112,0,24,96,0,56,224,0, + 56,224,0,56,224,0,49,192,0,14,24,48,16,1,253,1, + 0,7,192,31,240,63,248,125,120,113,60,241,60,241,0,253, + 0,127,0,63,224,31,240,3,248,1,124,1,60,241,60,241, + 60,249,60,127,248,63,240,31,224,1,0,1,0,1,0,25, + 20,80,27,1,0,31,0,96,0,63,128,224,0,123,192,192, + 0,225,193,192,0,224,227,128,0,224,227,0,0,224,231,0, + 0,224,230,0,0,113,206,0,0,127,204,124,0,63,28,254, + 0,0,57,199,0,0,59,131,0,0,115,131,128,0,99,131, + 128,0,227,131,128,1,195,135,128,1,193,239,0,3,128,254, + 0,3,128,124,0,19,20,60,21,1,0,15,192,0,31,240, + 0,60,240,0,120,120,0,120,120,0,120,112,0,60,240,0, + 63,224,0,31,192,0,31,128,0,63,135,128,123,199,128,249, + 231,128,240,247,0,240,127,0,240,63,0,240,30,0,124,127, + 0,63,255,128,15,227,224,4,8,8,11,4,12,240,224,224, + 224,224,224,224,224,6,24,24,10,2,252,28,56,56,120,120, + 112,112,240,240,240,240,240,240,240,240,240,240,112,112,120,120, + 56,56,28,6,24,24,11,3,252,224,240,112,112,120,120,120, + 56,56,60,60,60,60,60,60,56,56,120,120,120,112,112,240, + 224,11,11,22,17,3,9,17,0,59,128,59,128,27,0,238, + 224,255,224,206,96,27,0,59,128,59,128,17,0,16,16,32, + 26,5,0,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,255,255,255,255,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,6,7,7,8,1,252,60,56,56,112,112,112,224, + 7,4,4,9,1,5,254,254,254,254,4,4,4,9,3,0, + 240,240,240,240,8,21,21,12,2,255,7,7,7,6,14,14, + 12,28,28,24,56,56,56,48,112,112,96,224,224,224,192,14, + 20,40,15,1,0,15,128,31,224,60,240,120,112,112,56,240, + 56,240,56,240,60,240,60,240,60,240,60,240,60,240,60,240, + 56,240,56,112,56,120,120,60,240,31,224,15,128,8,20,20, + 15,3,0,15,63,127,255,239,207,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,14,20,40,15,1,0,7,192,31, + 240,63,248,124,120,120,60,120,60,0,60,0,120,0,120,0, + 240,1,240,3,224,7,192,15,128,31,0,124,0,248,0,255, + 252,255,252,255,252,13,20,40,15,1,0,15,128,63,224,127, + 240,248,240,240,120,0,120,0,120,0,240,15,224,15,128,15, + 224,0,240,0,120,0,120,240,120,240,120,248,240,127,240,63, + 224,31,128,14,20,40,15,1,0,1,240,3,240,3,240,7, + 240,7,240,14,240,30,240,28,240,60,240,56,240,120,240,112, + 240,240,240,255,252,255,252,255,252,0,240,0,240,0,240,0, + 240,13,20,40,15,1,0,255,240,255,240,255,240,240,0,240, + 0,240,0,240,0,247,192,255,224,253,240,240,120,240,120,0, + 120,0,120,0,120,240,120,240,240,127,240,63,224,31,128,13, + 20,40,15,1,0,15,192,31,224,63,240,120,120,120,120,112, + 0,240,0,247,192,239,224,253,240,248,120,240,120,240,120,240, + 120,240,120,112,120,120,240,63,240,63,224,15,128,13,20,40, + 15,1,0,255,248,255,248,255,248,0,120,0,120,0,240,0, + 240,1,224,1,224,1,224,3,192,3,192,7,128,7,128,15, + 128,15,0,31,0,30,0,30,0,62,0,14,20,40,15,1, + 0,31,192,63,240,127,240,120,248,240,120,240,120,240,120,120, + 240,63,224,31,192,63,240,120,120,240,56,240,60,240,60,240, + 60,248,120,127,248,63,240,31,192,13,20,40,15,1,0,15, + 128,63,192,127,224,120,240,240,112,240,120,240,120,240,120,240, + 120,120,248,127,184,63,56,0,120,0,120,0,112,240,240,120, + 240,127,224,63,192,15,128,4,14,14,9,4,0,240,240,240, + 240,0,0,0,0,0,0,240,240,240,240,6,17,17,8,1, + 253,60,60,60,60,0,0,0,0,0,0,60,56,120,112,112, + 224,224,16,14,28,26,5,1,0,3,0,31,0,120,3,192, + 15,0,120,0,224,0,224,0,60,0,7,128,1,224,0,60, + 0,15,0,1,16,7,14,26,5,5,255,255,255,255,0,0, + 0,0,0,0,255,255,255,255,16,14,28,26,5,1,192,0, + 248,0,30,0,3,192,0,240,0,30,0,7,0,7,0,60, + 1,224,7,128,60,0,240,0,128,0,13,20,40,15,1,0, + 31,128,63,224,121,240,240,112,32,120,0,120,0,112,0,240, + 1,224,3,192,7,128,14,0,14,0,14,0,14,0,0,0, + 0,0,15,0,15,0,15,0,26,25,100,28,1,251,0,63, + 128,0,1,255,240,0,7,255,252,0,15,224,254,0,31,0, + 31,0,62,0,15,0,60,61,231,128,120,255,231,128,121,247, + 227,192,241,225,227,192,241,193,227,192,243,193,227,192,243,193, + 227,192,243,193,227,192,243,193,227,192,241,193,227,128,113,227, + 231,128,120,255,255,0,124,254,255,0,60,60,60,0,31,0, + 0,0,15,192,32,0,7,255,224,0,1,255,224,0,0,127, + 224,0,19,20,60,19,0,0,1,240,0,1,240,0,1,248, + 0,3,248,0,3,248,0,3,188,0,7,188,0,7,156,0, + 15,30,0,15,30,0,15,30,0,30,15,0,30,15,0,31, + 255,128,63,255,128,63,255,128,56,3,192,120,3,192,120,3, + 192,240,1,224,15,20,40,18,2,0,255,224,255,240,255,248, + 240,124,240,60,240,60,240,56,240,120,255,240,255,192,255,248, + 240,60,240,28,240,30,240,30,240,30,240,60,255,252,255,248, + 255,224,17,20,60,19,1,0,7,240,0,15,252,0,63,254, + 0,60,31,0,120,15,0,112,15,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 15,128,112,15,0,120,31,0,60,62,0,63,254,0,31,248, + 0,7,224,0,16,20,40,19,2,0,255,128,255,240,255,248, + 240,124,240,62,240,30,240,15,240,15,240,15,240,15,240,15, + 240,15,240,15,240,15,240,30,240,62,240,124,255,248,255,240, + 255,128,13,20,40,17,2,0,255,248,255,248,255,248,240,0, + 240,0,240,0,240,0,240,0,255,248,255,248,255,248,240,0, + 240,0,240,0,240,0,240,0,240,0,255,248,255,248,255,248, + 13,20,40,16,2,0,255,248,255,248,255,248,240,0,240,0, + 240,0,240,0,240,0,255,240,255,240,255,240,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,18,20, + 60,20,1,0,1,248,0,15,254,0,31,255,0,62,15,128, + 124,3,128,120,3,192,112,0,0,240,0,0,240,0,0,240, + 63,192,240,63,192,240,63,192,240,3,192,240,3,192,120,3, + 192,124,3,192,63,3,192,31,255,192,15,255,192,1,254,0, + 16,20,40,20,2,0,240,15,240,15,240,15,240,15,240,15, + 240,15,240,15,240,15,255,255,255,255,255,255,240,15,240,15, + 240,15,240,15,240,15,240,15,240,15,240,15,240,15,4,20, + 20,8,2,0,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,14,20,40,17,1,0,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,60,0,60,0,60,240,60,240,56,248,120, + 127,240,127,224,31,192,15,20,40,18,2,0,240,60,240,124, + 240,248,241,240,241,224,243,224,247,192,255,128,255,0,255,0, + 255,128,247,192,247,192,243,224,241,240,240,240,240,248,240,124, + 240,62,240,62,13,20,40,16,2,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,255,248,255,248, + 255,248,21,20,60,25,2,0,252,1,248,254,3,248,254,3, + 248,254,3,248,255,7,248,255,7,248,247,7,120,247,15,120, + 247,143,120,247,143,120,243,142,120,243,222,120,243,222,120,241, + 220,120,241,252,120,241,252,120,240,248,120,240,248,120,240,248, + 120,240,248,120,17,20,60,21,2,0,252,7,128,252,7,128, + 254,7,128,254,7,128,255,7,128,255,7,128,247,135,128,247, + 135,128,243,199,128,243,199,128,241,231,128,241,231,128,240,247, + 128,240,247,128,240,127,128,240,127,128,240,63,128,240,63,128, + 240,31,128,240,31,128,18,20,60,20,1,0,3,240,0,15, + 252,0,31,254,0,62,31,0,120,7,128,120,7,128,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,120,7,128,120,7,128,62,31,0,31, + 254,0,15,252,0,3,240,0,14,20,40,17,2,0,255,192, + 255,240,255,248,240,124,240,60,240,60,240,60,240,60,240,124, + 255,248,255,240,255,192,240,0,240,0,240,0,240,0,240,0, + 240,0,240,0,240,0,20,20,60,22,1,0,3,240,0,15, + 252,0,63,254,0,62,31,0,120,7,128,120,7,128,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,120,7,128,120,7,128,62,31,0,31, + 255,240,15,255,240,3,255,240,15,20,40,18,2,0,255,224, + 255,248,255,252,240,62,240,30,240,30,240,30,240,30,240,124, + 255,248,255,240,255,252,240,60,240,60,240,28,240,30,240,30, + 240,30,240,30,240,14,16,20,40,18,1,0,7,224,31,248, + 63,252,60,60,120,30,120,30,120,0,124,0,63,128,31,240, + 15,252,0,254,0,30,0,15,240,15,240,14,120,62,127,252, + 63,248,7,224,16,20,40,18,1,0,255,255,255,255,255,255, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,17,20,60,21,2,0,240,7,128,240,7,128,240,7, + 128,240,7,128,240,7,128,240,7,128,240,7,128,240,7,128, + 240,7,128,240,7,128,240,7,128,240,7,128,240,7,128,240, + 7,0,240,15,0,120,15,0,124,30,0,63,254,0,31,248, + 0,7,224,0,19,20,60,20,0,0,248,1,224,120,1,224, + 120,3,224,60,3,192,60,3,192,62,7,192,30,7,128,30, + 7,128,31,15,128,15,15,0,15,15,0,15,158,0,7,158, + 0,7,158,0,7,252,0,3,252,0,3,252,0,1,248,0, + 1,248,0,1,240,0,27,20,80,27,0,0,248,31,3,224, + 120,31,3,192,120,31,3,192,120,63,131,192,120,63,131,192, + 60,59,135,128,60,59,135,128,60,123,199,128,60,123,199,128, + 28,113,199,0,30,113,207,0,30,241,239,0,30,241,239,0, + 14,224,238,0,14,224,238,0,15,224,254,0,15,224,254,0, + 7,192,124,0,7,192,124,0,7,192,124,0,17,20,60,19, + 1,0,248,15,128,120,15,0,124,30,0,62,30,0,30,60, + 0,31,120,0,15,120,0,7,240,0,7,224,0,3,224,0, + 7,224,0,7,240,0,15,240,0,30,120,0,30,124,0,60, + 60,0,60,30,0,120,31,0,240,15,0,240,7,128,16,20, + 40,17,1,0,240,31,248,30,120,30,124,60,60,60,60,120, + 30,120,30,240,15,240,15,224,7,224,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,15,20,40,17, + 1,0,127,254,127,254,127,254,0,62,0,124,0,248,0,248, + 1,240,3,224,7,224,7,192,15,128,31,0,63,0,62,0, + 124,0,248,0,255,254,255,254,255,254,6,25,25,10,2,251, + 252,252,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,252,252,9,21,42,12,1,255,224, + 0,96,0,112,0,112,0,48,0,56,0,56,0,56,0,24, + 0,28,0,28,0,12,0,14,0,14,0,6,0,6,0,7, + 0,7,0,3,0,3,128,3,128,7,25,25,11,2,251,254, + 254,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30, + 30,30,30,30,30,30,254,254,13,17,34,27,7,0,2,0, + 7,0,5,0,5,0,13,128,8,128,24,192,24,192,16,64, + 48,96,48,96,32,32,96,48,64,16,192,24,192,24,128,8, + 14,2,4,14,0,252,255,252,255,252,5,5,5,7,0,16, + 224,112,112,56,24,12,14,28,15,1,0,31,128,63,224,121, + 240,112,240,0,240,63,240,127,240,248,240,240,240,240,240,240, + 240,251,240,127,112,62,112,14,20,40,17,2,0,240,0,240, + 0,240,0,240,0,240,0,240,0,247,192,255,240,253,240,248, + 120,240,120,240,60,240,60,240,60,240,60,240,56,248,120,252, + 240,255,240,243,192,12,14,28,14,1,0,31,128,63,224,121, + 224,112,224,240,240,240,0,240,0,240,0,240,0,240,240,240, + 224,121,224,63,192,31,128,14,20,40,16,1,0,0,60,0, + 60,0,60,0,60,0,60,0,60,31,188,63,252,124,252,120, + 124,240,60,240,60,240,60,240,60,240,60,240,60,120,124,125, + 252,63,188,15,60,13,14,28,15,1,0,15,128,63,224,121, + 240,112,240,240,240,255,240,255,248,240,0,240,0,240,240,112, + 240,121,240,63,224,31,128,10,20,40,11,1,0,15,192,31, + 192,62,64,60,0,60,0,60,0,255,128,255,128,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,14,19,38,16,1,251,31,188,63,252,124, + 252,120,124,240,60,240,60,240,60,240,60,240,60,240,60,112, + 124,124,252,63,188,15,60,0,60,120,56,124,248,63,240,15, + 192,13,20,40,16,2,0,240,0,240,0,240,0,240,0,240, + 0,240,0,247,192,255,240,253,240,248,120,240,120,240,120,240, + 120,240,120,240,120,240,120,240,120,240,120,240,120,240,120,4, + 20,20,6,1,0,240,240,240,240,0,0,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,5,25,25,9,3,251,120, + 120,120,120,0,0,120,120,120,120,120,120,120,120,120,120,120, + 120,120,120,120,120,248,248,240,12,20,40,15,2,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,240,241,224,243,192, + 247,128,255,128,255,0,255,0,255,0,247,128,247,192,243,192, + 241,224,241,240,240,240,4,20,20,7,2,0,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 22,14,42,25,2,0,243,227,224,255,247,248,253,254,248,240, + 120,120,240,120,60,240,120,60,240,120,60,240,120,60,240,120, + 60,240,120,60,240,120,60,240,120,60,240,120,60,240,120,60, + 13,14,28,16,2,0,247,192,255,240,253,240,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,120, + 240,120,14,14,28,16,1,0,15,192,63,224,124,240,120,120, + 240,60,240,60,240,60,240,60,240,60,240,60,120,120,124,248, + 63,240,15,192,14,19,38,17,2,251,243,192,255,240,253,240, + 248,120,240,56,240,60,240,60,240,60,240,60,240,120,240,120, + 253,248,255,240,247,192,240,0,240,0,240,0,240,0,240,0, + 14,19,38,16,1,251,15,60,63,252,125,252,120,124,240,60, + 240,60,240,60,240,60,240,60,240,60,120,124,124,252,63,252, + 31,188,0,60,0,60,0,60,0,60,0,60,9,14,28,11, + 2,0,247,128,255,128,255,128,252,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,12,14, + 28,14,1,0,31,128,127,192,123,224,241,224,240,0,126,0, + 127,192,31,224,1,240,240,240,240,240,249,224,127,192,31,128, + 10,18,36,12,1,0,2,0,14,0,30,0,30,0,255,192, + 255,192,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,31,0,15,192,7,192,13,14,28,16,2,0, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,120, + 240,120,240,120,240,248,249,248,127,248,62,120,14,14,28,15, + 0,0,240,60,120,60,120,60,56,120,60,120,60,112,28,240, + 30,240,30,224,15,224,15,224,15,192,7,192,7,192,23,14, + 42,23,0,0,240,124,30,112,124,28,120,124,60,120,254,60, + 56,238,60,60,238,56,61,239,120,61,231,120,29,199,112,31, + 199,240,31,199,240,15,131,224,15,131,224,15,131,224,13,14, + 28,15,1,0,240,120,120,240,124,224,61,224,31,192,31,128, + 15,128,31,128,31,192,63,224,57,224,120,240,240,248,240,120, + 14,19,38,15,0,251,248,60,120,60,120,60,60,120,60,120, + 60,112,30,240,30,240,14,224,15,224,15,224,7,192,7,192, + 3,192,7,128,7,128,7,128,15,0,15,0,11,14,28,13, + 1,0,255,224,255,224,1,224,3,224,7,192,7,128,15,0, + 30,0,60,0,124,0,248,0,240,0,255,224,255,224,10,27, + 54,13,2,249,3,192,15,192,31,128,30,0,30,0,30,0, + 30,0,30,0,30,0,28,0,28,0,60,0,248,0,224,0, + 248,0,124,0,60,0,28,0,30,0,30,0,30,0,30,0, + 30,0,30,0,31,128,15,192,7,192,2,29,29,10,4,249, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,10,27,54, + 14,2,249,240,0,252,0,124,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,15,0,7,192,3,192,7, + 192,15,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,124,0,252,0,240,0,14,3,6,14,0,5,63, + 156,127,248,225,240,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,0,0,0,8,0,0,4,19,19,10, + 3,251,240,240,240,0,0,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,12,20,40,16,2,253,0,192,0,192,0, + 128,15,128,63,224,125,224,115,240,243,240,242,0,242,0,246, + 0,244,0,244,240,124,240,121,224,63,224,31,128,24,0,16, + 0,48,0,14,20,40,15,1,0,7,224,31,248,62,120,60, + 60,60,60,60,0,60,0,60,0,255,128,255,128,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,255,252,255, + 252,15,14,28,17,1,5,192,6,99,204,55,248,28,48,24, + 24,48,12,48,12,48,12,48,12,24,24,28,48,63,248,99, + 204,192,6,15,20,40,17,1,0,240,30,240,62,120,60,120, + 124,56,120,60,120,252,254,254,254,31,224,15,224,15,192,255, + 254,255,254,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,1,25,25,9,4,251,128,128,128,128,128,128,128,128,128, + 128,128,0,0,0,128,128,128,128,128,128,128,128,128,128,128, + 11,24,48,13,1,252,31,128,63,192,121,192,240,64,240,0, + 248,0,124,0,63,0,63,128,127,192,243,224,225,224,225,192, + 243,192,255,128,126,0,31,128,7,192,3,224,1,224,1,192, + 195,192,255,128,127,0,9,3,6,9,0,17,227,128,227,128, + 227,128,20,20,60,24,2,0,1,248,0,7,254,0,31,15, + 128,60,3,192,49,252,192,99,254,224,103,158,96,199,15,48, + 207,0,48,207,0,48,207,0,48,207,15,48,199,14,48,103, + 158,96,99,252,96,49,248,192,56,1,192,30,7,128,7,254, + 0,1,248,0,9,13,26,11,1,7,62,0,127,128,99,128, + 3,128,63,128,115,128,227,128,227,128,255,128,125,128,0,0, + 0,0,255,128,14,11,22,16,1,2,30,60,28,56,60,120, + 120,240,120,240,241,224,120,240,56,240,60,120,28,56,30,60, + 15,6,12,17,1,6,255,254,255,254,0,6,0,6,0,6, + 0,6,255,20,20,60,24,2,0,1,248,0,7,254,0,31, + 15,128,60,3,192,51,252,192,99,254,224,99,14,96,195,6, + 48,195,28,48,195,248,48,195,252,48,195,12,48,195,14,48, + 99,6,96,99,6,96,51,6,192,56,1,192,30,7,128,7, + 254,0,1,248,0,9,2,4,9,0,18,255,128,255,128,6, + 6,6,8,1,14,120,204,132,132,204,120,16,16,32,26,5, + 0,1,128,1,128,1,128,1,128,255,255,255,255,1,128,1, + 128,1,128,1,128,1,128,0,0,0,0,0,0,255,255,255, + 255,9,11,22,11,1,9,62,0,127,0,227,128,3,128,7, + 0,15,0,30,0,56,0,112,0,255,0,255,0,8,11,11, + 10,1,9,60,254,231,7,30,30,7,7,231,254,124,6,5, + 5,6,1,16,60,56,112,96,192,255,13,24,48,15,1,252, + 31,248,62,96,126,96,254,96,254,96,254,96,254,96,126,96, + 126,96,30,96,6,96,6,96,6,96,6,96,6,96,6,96, + 6,96,6,96,6,96,6,96,6,96,6,96,6,96,6,96, + 4,4,4,8,2,8,240,240,240,240,7,6,6,7,1,249, + 32,60,14,6,254,252,5,11,11,8,2,9,56,248,248,56, + 56,56,56,56,56,56,56,10,13,26,12,1,7,30,0,127, + 128,115,128,225,192,225,192,225,192,225,192,99,128,127,128,30, + 0,0,0,0,0,255,192,13,11,22,16,2,2,225,192,241, + 224,112,224,120,240,120,240,60,120,120,240,120,240,113,224,241, + 224,225,192,19,20,60,22,2,0,56,7,0,248,14,0,184, + 14,0,56,28,0,56,28,0,56,56,0,56,48,0,56,112, + 0,56,224,0,56,227,192,57,195,192,1,199,192,3,143,192, + 3,13,192,7,29,192,14,57,192,14,63,224,28,63,224,28, + 1,192,56,1,192,19,20,60,21,1,0,56,6,0,248,14, + 0,184,12,0,56,28,0,56,24,0,56,48,0,56,112,0, + 56,96,0,56,224,0,56,199,128,57,207,224,3,156,224,3, + 0,224,7,1,224,6,1,192,14,3,128,28,7,0,28,30, + 0,56,31,224,48,31,224,20,20,60,22,1,0,124,1,192, + 230,3,128,231,3,0,7,7,0,30,14,0,30,14,0,7, + 28,0,231,24,0,231,56,0,126,49,224,24,115,224,0,227, + 224,0,199,224,1,198,224,1,140,224,3,156,224,3,31,240, + 7,31,240,14,0,224,12,0,224,12,19,38,15,1,251,7, + 128,7,128,7,128,0,0,0,0,7,0,7,0,7,0,14, + 0,28,0,56,0,112,0,240,0,240,0,240,112,240,112,127, + 240,63,224,15,128,19,28,84,19,0,0,7,0,0,3,128, + 0,1,128,0,1,192,0,0,192,0,0,96,0,0,0,0, + 0,0,0,1,240,0,1,240,0,1,248,0,3,248,0,3, + 248,0,3,188,0,7,188,0,7,156,0,15,30,0,15,30, + 0,15,30,0,30,15,0,30,15,0,31,255,128,63,255,128, + 63,255,128,56,3,192,120,3,192,120,3,192,240,1,224,19, + 28,84,19,0,0,0,28,0,0,56,0,0,56,0,0,112, + 0,0,96,0,0,192,0,0,0,0,0,0,0,1,240,0, + 1,240,0,1,248,0,3,248,0,3,248,0,3,188,0,7, + 188,0,7,156,0,15,30,0,15,30,0,15,30,0,30,15, + 0,30,15,0,31,255,128,63,255,128,63,255,128,56,3,192, + 120,3,192,120,3,192,240,1,224,19,28,84,19,0,0,0, + 224,0,1,240,0,1,240,0,3,184,0,3,24,0,6,12, + 0,0,0,0,0,0,0,1,240,0,1,240,0,1,248,0, + 3,248,0,3,248,0,3,188,0,7,188,0,7,156,0,15, + 30,0,15,30,0,15,30,0,30,15,0,30,15,0,31,255, + 128,63,255,128,63,255,128,56,3,192,120,3,192,120,3,192, + 240,1,224,19,26,78,19,0,0,1,204,0,3,248,0,6, + 120,0,0,0,0,0,0,0,0,0,0,1,240,0,1,240, + 0,1,248,0,3,248,0,3,248,0,3,188,0,7,188,0, + 7,156,0,15,30,0,15,30,0,15,30,0,30,15,0,30, + 15,0,31,255,128,63,255,128,63,255,128,56,3,192,120,3, + 192,120,3,192,240,1,224,19,26,78,19,0,0,7,28,0, + 7,28,0,7,28,0,0,0,0,0,0,0,0,0,0,1, + 240,0,1,240,0,3,248,0,3,248,0,3,248,0,7,188, + 0,7,188,0,7,60,0,15,30,0,15,30,0,30,31,0, + 30,15,0,30,15,0,63,255,128,63,255,128,63,255,128,120, + 3,192,120,3,192,112,3,192,240,1,224,19,29,87,19,0, + 0,0,224,0,1,240,0,3,24,0,3,24,0,3,24,0, + 1,240,0,0,224,0,0,0,0,0,0,0,1,240,0,1, + 240,0,3,240,0,3,248,0,3,248,0,7,188,0,7,188, + 0,7,60,0,15,30,0,15,30,0,30,30,0,30,15,0, + 30,15,0,63,255,128,63,255,128,63,255,128,120,3,192,120, + 3,192,240,3,192,240,1,224,25,20,80,26,0,0,0,63, + 255,128,0,63,255,128,0,127,0,0,0,127,0,0,0,255, + 0,0,1,239,0,0,1,239,0,0,3,207,0,0,3,207, + 255,128,7,143,255,128,7,143,255,128,15,15,0,0,15,255, + 0,0,31,255,0,0,31,255,0,0,60,15,0,0,56,15, + 0,0,120,15,255,128,112,15,255,128,240,15,255,128,17,27, + 81,19,1,249,7,240,0,15,252,0,63,254,0,60,31,0, + 120,31,0,112,15,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,15,128,112,15, + 0,120,31,0,60,63,0,63,254,0,15,252,0,3,240,0, + 0,128,0,0,224,0,0,240,0,0,48,0,0,48,0,3, + 240,0,0,128,0,13,28,56,17,2,0,60,0,28,0,14, + 0,6,0,7,0,3,0,0,0,0,0,255,248,255,248,255, + 248,240,0,240,0,240,0,240,0,240,0,255,248,255,248,255, + 248,240,0,240,0,240,0,240,0,240,0,240,0,255,248,255, + 248,255,248,13,28,56,17,2,0,1,224,1,192,3,128,3, + 0,6,0,6,0,0,0,0,0,255,248,255,248,255,248,240, + 0,240,0,240,0,240,0,240,0,255,248,255,248,255,248,240, + 0,240,0,240,0,240,0,240,0,240,0,255,248,255,248,255, + 248,13,28,56,17,2,0,15,0,15,128,13,128,29,192,24, + 192,48,96,0,0,0,0,255,248,255,248,255,248,240,0,240, + 0,240,0,240,0,240,0,255,248,255,248,255,248,240,0,240, + 0,240,0,240,0,240,0,240,0,255,248,255,248,255,248,13, + 26,52,17,2,0,56,224,56,224,56,224,0,0,0,0,0, + 0,255,248,255,248,255,248,240,0,240,0,240,0,240,0,240, + 0,255,248,255,248,255,248,240,0,240,0,240,0,240,0,240, + 0,240,0,255,248,255,248,255,248,7,28,28,8,255,0,240, + 112,56,24,28,12,0,0,30,30,30,30,30,30,30,30,30, + 30,30,30,30,30,30,30,30,30,30,30,6,28,28,7,2, + 0,28,56,48,112,96,192,0,0,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,8,28,28, + 8,0,0,60,60,126,102,198,195,0,0,60,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,9, + 26,52,9,0,0,227,128,227,128,227,128,0,0,0,0,0, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,60,0,60,0,18,20,60,19,0,0,63, + 224,0,63,252,0,63,254,0,60,31,0,60,15,128,60,7, + 128,60,3,192,60,3,192,60,3,192,255,195,192,255,195,192, + 60,3,192,60,3,192,60,3,192,60,7,128,60,15,128,60, + 31,0,63,254,0,63,252,0,63,224,0,17,26,78,21,2, + 0,7,152,0,7,248,0,12,240,0,0,0,0,0,0,0, + 0,0,0,252,7,128,252,7,128,254,7,128,254,7,128,255, + 7,128,255,7,128,247,135,128,247,135,128,243,199,128,243,199, + 128,241,231,128,241,231,128,240,247,128,240,247,128,240,127,128, + 240,127,128,240,63,128,240,63,128,240,31,128,240,31,128,18, + 28,84,20,1,0,14,0,0,7,0,0,3,128,0,1,128, + 0,0,192,0,0,0,0,0,0,0,0,0,0,3,240,0, + 15,252,0,31,254,0,62,31,0,120,7,128,120,7,128,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,120,7,128,120,7,128,62,31,0, + 31,254,0,15,252,0,3,240,0,18,28,84,20,1,0,0, + 60,0,0,56,0,0,112,0,0,96,0,0,192,0,0,0, + 0,0,0,0,0,0,0,3,240,0,15,252,0,31,254,0, + 62,31,0,120,7,128,120,7,128,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,120,7,128,120,7,128,62,31,0,31,254,0,15,252,0, + 3,240,0,18,28,84,20,1,0,1,224,0,3,240,0,3, + 240,0,7,56,0,6,24,0,0,0,0,0,0,0,0,0, + 0,3,240,0,15,252,0,31,254,0,62,31,0,120,7,128, + 120,7,128,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,120,7,128,120,7, + 128,62,31,0,31,254,0,15,252,0,3,240,0,18,27,81, + 20,1,0,0,8,0,7,248,0,7,248,0,4,0,0,0, + 0,0,0,0,0,0,0,0,3,240,0,15,252,0,31,254, + 0,62,31,0,120,7,128,120,7,128,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,120,7,128,120,7,128,62,31,0,31,254,0,15,252, + 0,3,240,0,18,27,81,20,1,0,7,28,0,7,28,0, + 7,28,0,0,0,0,0,0,0,0,0,0,0,0,0,3, + 240,0,15,252,0,31,254,0,62,31,0,120,7,128,120,7, + 128,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,120,7,128,120,7,128,62, + 31,0,31,254,0,15,252,0,3,240,0,15,14,28,27,6, + 2,192,6,96,12,48,24,24,48,12,96,6,192,3,128,3, + 128,6,192,12,96,24,48,48,24,96,12,64,4,20,22,66, + 20,0,255,0,0,32,1,252,112,7,255,224,15,255,192,31, + 15,128,60,3,192,60,7,192,120,15,224,120,29,224,120,57, + 224,120,113,224,120,225,224,121,193,224,123,129,224,127,1,224, + 62,3,192,60,3,192,31,15,128,63,255,0,127,254,0,227, + 248,0,64,0,0,17,28,84,21,2,0,30,0,0,14,0, + 0,7,0,0,3,128,0,1,128,0,0,0,0,0,0,0, + 0,0,0,240,7,128,240,7,128,240,7,128,240,7,128,240, + 7,128,240,7,128,240,7,128,240,7,128,240,7,128,240,7, + 128,240,7,128,240,7,128,240,7,128,240,7,0,240,15,0, + 120,15,0,124,30,0,63,254,0,31,248,0,7,224,0,17, + 28,84,21,2,0,0,60,0,0,120,0,0,112,0,0,224, + 0,1,192,0,0,0,0,0,0,0,0,0,0,240,7,128, + 240,7,128,240,7,128,240,7,128,240,7,128,240,7,128,240, + 7,128,240,7,128,240,7,128,240,7,128,240,7,128,240,7, + 128,240,7,128,240,7,0,240,15,0,120,15,0,124,30,0, + 63,254,0,31,248,0,7,224,0,17,28,84,21,2,0,3, + 192,0,3,224,0,7,224,0,14,112,0,12,56,0,0,0, + 0,0,0,0,0,0,0,240,7,128,240,7,128,240,7,128, + 240,7,128,240,7,128,240,7,128,240,7,128,240,7,128,240, + 7,128,240,7,128,240,7,128,240,7,128,240,7,128,240,7, + 0,240,15,0,120,15,0,124,30,0,63,254,0,31,248,0, + 7,224,0,17,27,81,20,2,0,14,56,0,14,56,0,14, + 56,0,0,0,0,0,0,0,0,0,0,0,0,0,240,7, + 128,240,7,128,240,7,128,240,7,128,240,7,128,240,7,128, + 240,7,128,240,7,128,240,7,128,240,7,128,240,7,128,240, + 7,128,240,7,128,240,7,0,240,15,0,120,15,0,124,30, + 0,63,254,0,31,248,0,7,224,0,16,27,54,17,1,0, + 0,112,0,224,0,192,1,128,0,0,0,0,0,0,240,31, + 248,30,120,30,124,60,60,60,60,120,30,120,30,240,15,240, + 15,224,7,224,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,14,20,40,17,1,0,240,0,240,0, + 240,0,240,0,255,192,255,240,255,248,240,124,240,60,240,60, + 240,60,240,124,255,248,255,240,255,192,240,0,240,0,240,0, + 240,0,240,0,14,20,40,16,1,0,31,128,127,224,121,240, + 240,240,240,240,240,240,241,224,243,192,247,128,247,128,247,128, + 243,224,241,240,240,248,240,60,240,60,255,60,255,188,247,248, + 243,240,12,22,44,15,1,0,120,0,56,0,28,0,12,0, + 6,0,2,0,0,0,0,0,31,128,63,224,121,240,112,240, + 0,240,63,240,127,240,248,240,240,240,240,240,240,240,251,240, + 127,112,62,112,12,22,44,15,1,0,1,224,1,192,3,128, + 3,0,7,0,6,0,0,0,0,0,31,128,63,224,121,240, + 112,240,0,240,31,240,127,240,120,240,240,240,240,240,240,240, + 251,240,127,112,62,112,12,22,44,15,1,0,15,0,15,128, + 31,128,25,192,56,192,48,96,0,0,0,0,31,128,63,224, + 121,240,112,240,0,240,63,240,127,240,248,240,240,240,240,240, + 240,240,251,240,127,112,62,112,12,20,40,15,1,0,31,192, + 63,192,48,0,0,0,0,0,0,0,31,128,63,224,121,240, + 112,240,0,240,63,240,127,240,248,240,240,240,240,240,240,240, + 251,240,127,112,62,112,12,21,42,15,1,0,56,224,56,224, + 56,224,0,0,0,0,0,0,0,0,31,128,63,224,121,240, + 112,240,0,240,63,240,127,240,248,240,240,240,240,240,240,240, + 251,240,127,112,62,112,12,23,46,15,1,0,7,0,31,128, + 24,192,24,192,31,128,15,0,0,0,0,0,0,0,31,128, + 63,224,121,240,112,240,0,240,63,240,127,240,248,240,240,240, + 240,240,240,240,251,240,127,112,62,112,22,14,42,24,1,0, + 15,135,192,63,207,240,124,252,248,112,120,56,0,120,56,31, + 255,252,127,255,252,120,120,0,240,120,0,240,120,0,240,252, + 56,249,222,248,127,143,240,30,7,224,12,21,42,14,1,249, + 31,128,63,224,121,224,112,224,240,240,240,0,240,0,240,0, + 240,0,240,240,240,224,121,224,63,192,31,128,4,0,7,0, + 7,128,0,192,0,192,31,128,4,0,13,22,44,15,1,0, + 56,0,56,0,28,0,12,0,6,0,2,0,0,0,0,0, + 15,128,63,224,121,240,112,240,240,240,255,240,255,248,240,0, + 240,0,240,240,112,240,121,240,63,224,31,128,13,22,44,15, + 1,0,1,224,1,192,3,128,3,0,6,0,6,0,0,0, + 0,0,15,128,63,224,121,240,112,240,240,240,255,240,255,248, + 240,0,240,0,240,240,112,240,121,240,63,224,31,128,13,22, + 44,15,1,0,15,0,15,0,31,128,25,128,56,192,48,192, + 0,0,0,0,15,128,63,224,121,240,112,240,240,240,255,240, + 255,248,240,0,240,0,240,240,112,240,121,240,63,224,31,128, + 13,21,42,15,1,0,56,224,56,224,56,224,0,0,0,0, + 0,0,0,0,15,128,63,224,121,240,112,112,240,112,255,240, + 255,248,240,0,240,0,240,112,112,112,125,240,63,224,31,128, + 6,22,22,7,0,0,224,240,112,56,24,12,0,0,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,6,22,22,6, + 2,0,60,56,112,96,192,192,0,0,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,9,22,44,7,255,0,30,0, + 62,0,63,0,115,0,99,128,193,128,0,0,0,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,9,20,40,7,255,0, + 227,128,227,128,227,128,0,0,0,0,0,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,14,20,40,16,1,0,14,24, + 15,240,3,192,15,192,60,224,48,240,15,240,63,248,124,248, + 120,60,240,60,240,60,240,60,240,60,240,60,240,60,120,56, + 124,248,63,240,15,192,13,20,40,16,2,0,30,96,63,192, + 55,128,0,0,0,0,0,0,247,192,255,240,253,240,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,120, + 240,120,240,120,14,22,44,16,1,0,60,0,28,0,14,0, + 6,0,3,0,3,0,0,0,0,0,15,192,63,224,124,240, + 120,120,240,60,240,60,240,60,240,60,240,60,240,60,120,120, + 124,248,63,240,15,192,14,22,44,16,1,0,0,240,0,224, + 1,192,1,128,3,0,3,0,0,0,0,0,15,192,63,224, + 124,240,120,120,240,60,240,60,240,60,240,60,240,60,240,60, + 120,120,124,248,63,240,15,192,14,22,44,16,1,0,7,128, + 7,128,15,192,12,192,24,96,24,96,0,0,0,0,15,192, + 63,224,124,240,120,120,240,60,240,60,240,60,240,60,240,60, + 240,60,120,120,124,248,63,240,15,192,14,20,40,16,1,0, + 15,224,31,224,24,0,0,0,0,0,0,0,15,192,63,224, + 124,240,120,120,240,60,240,60,240,60,240,60,240,60,240,60, + 120,120,124,248,63,240,15,192,14,21,42,16,1,0,28,224, + 28,224,28,224,0,0,0,0,0,0,0,0,15,192,63,224, + 124,240,120,120,240,60,240,60,240,60,240,60,240,60,240,60, + 120,120,124,248,63,240,15,192,16,12,24,26,5,2,1,192, + 3,192,1,192,0,0,0,0,255,255,255,255,0,0,0,0, + 1,192,3,192,1,192,14,18,36,16,1,254,0,8,0,28, + 15,248,63,240,124,240,120,248,241,252,241,188,243,60,246,60, + 254,60,252,60,120,120,60,248,127,240,239,192,192,0,128,0, + 13,22,44,16,2,0,56,0,60,0,28,0,14,0,6,0, + 3,0,0,0,0,0,240,120,240,120,240,120,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,248,249,248,127,248, + 62,120,13,22,44,16,2,0,1,224,1,192,3,128,3,0, + 7,0,6,0,0,0,0,0,240,120,240,120,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,248,249,248, + 127,248,62,120,13,22,44,16,2,0,15,0,15,128,31,128, + 29,192,56,192,48,96,0,0,0,0,240,120,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,248, + 249,248,127,248,62,120,13,21,42,16,2,0,56,224,56,224, + 56,224,0,0,0,0,0,0,0,0,240,120,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,248, + 249,248,127,248,62,120,14,27,54,15,0,251,0,112,0,240, + 0,224,0,192,1,128,0,0,0,0,0,0,120,28,120,60, + 60,60,60,56,60,120,30,120,30,112,14,240,15,240,15,224, + 7,224,7,224,3,192,3,192,3,128,39,128,255,128,127,0, + 62,0,14,25,50,17,2,251,240,0,240,0,240,0,240,0, + 240,0,240,0,247,192,255,240,253,240,248,120,240,56,240,60, + 240,60,240,60,240,60,240,120,240,120,253,240,255,240,247,192, + 240,0,240,0,240,0,240,0,240,0,15,26,52,15,0,251, + 28,112,28,112,28,112,0,0,0,0,0,0,0,0,248,30, + 120,60,120,60,60,56,60,120,60,120,30,112,30,240,15,240, + 15,224,15,224,7,224,7,192,3,192,7,128,7,128,7,128, + 15,0,15,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--27-270-72-72-P-136-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 20 + Calculated Max Values w=16 h=21 x= 5 y= 9 dx=26 dy= 0 ascent=20 len=40 + Font Bounding box w=40 h=36 x=-2 y=-7 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =20 descent= 0 + X Font ascent =20 descent= 0 + Max Font ascent =20 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub20n[583] U8G_SECTION(".progmem.u8g_font_fub20n") = { + 0,40,36,254,249,20,0,0,0,0,42,57,0,20,252,20, + 0,11,11,22,17,3,9,17,0,59,128,59,128,27,0,238, + 224,255,224,206,96,27,0,59,128,59,128,17,0,16,16,32, + 26,5,0,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,255,255,255,255,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,6,7,7,8,1,252,60,56,56,112,112,112,224, + 7,4,4,9,1,5,254,254,254,254,4,4,4,9,3,0, + 240,240,240,240,8,21,21,12,2,255,7,7,7,6,14,14, + 12,28,28,24,56,56,56,48,112,112,96,224,224,224,192,14, + 20,40,15,1,0,15,128,31,224,60,240,120,112,112,56,240, + 56,240,56,240,60,240,60,240,60,240,60,240,60,240,60,240, + 56,240,56,112,56,120,120,60,240,31,224,15,128,8,20,20, + 15,3,0,15,63,127,255,239,207,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,14,20,40,15,1,0,7,192,31, + 240,63,248,124,120,120,60,120,60,0,60,0,120,0,120,0, + 240,1,240,3,224,7,192,15,128,31,0,124,0,248,0,255, + 252,255,252,255,252,13,20,40,15,1,0,15,128,63,224,127, + 240,248,240,240,120,0,120,0,120,0,240,15,224,15,128,15, + 224,0,240,0,120,0,120,240,120,240,120,248,240,127,240,63, + 224,31,128,14,20,40,15,1,0,1,240,3,240,3,240,7, + 240,7,240,14,240,30,240,28,240,60,240,56,240,120,240,112, + 240,240,240,255,252,255,252,255,252,0,240,0,240,0,240,0, + 240,13,20,40,15,1,0,255,240,255,240,255,240,240,0,240, + 0,240,0,240,0,247,192,255,224,253,240,240,120,240,120,0, + 120,0,120,0,120,240,120,240,240,127,240,63,224,31,128,13, + 20,40,15,1,0,15,192,31,224,63,240,120,120,120,120,112, + 0,240,0,247,192,239,224,253,240,248,120,240,120,240,120,240, + 120,240,120,112,120,120,240,63,240,63,224,15,128,13,20,40, + 15,1,0,255,248,255,248,255,248,0,120,0,120,0,240,0, + 240,1,224,1,224,1,224,3,192,3,192,7,128,7,128,15, + 128,15,0,31,0,30,0,30,0,62,0,14,20,40,15,1, + 0,31,192,63,240,127,240,120,248,240,120,240,120,240,120,120, + 240,63,224,31,192,63,240,120,120,240,56,240,60,240,60,240, + 60,248,120,127,248,63,240,31,192,13,20,40,15,1,0,15, + 128,63,192,127,224,120,240,240,112,240,120,240,120,240,120,240, + 120,120,248,127,184,63,56,0,120,0,120,0,112,240,240,120, + 240,127,224,63,192,15,128}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--27-270-72-72-P-136-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 20, '1' Height: 20 + Calculated Max Values w=27 h=29 x= 7 y=16 dx=28 dy= 0 ascent=22 len=100 + Font Bounding box w=40 h=36 x=-2 y=-7 + Calculated Min Values x= 0 y=-7 dx= 0 dy= 0 + Pure Font ascent =20 descent=-5 + X Font ascent =20 descent=-5 + Max Font ascent =22 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub20r[4022] U8G_SECTION(".progmem.u8g_font_fub20r") = { + 0,40,36,254,249,20,4,242,11,37,32,127,251,22,249,20, + 251,0,0,0,8,0,0,4,20,20,11,4,0,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,0,0,0,240,240, + 240,10,8,16,14,2,12,243,192,243,192,243,192,243,192,243, + 192,225,192,225,192,97,128,17,20,60,19,1,0,1,199,0, + 1,134,0,3,142,0,3,142,0,3,142,0,31,255,128,63, + 255,128,7,28,0,6,24,0,14,56,0,14,56,0,14,48, + 0,127,254,0,255,254,0,28,112,0,24,96,0,56,224,0, + 56,224,0,56,224,0,49,192,0,14,24,48,16,1,253,1, + 0,7,192,31,240,63,248,125,120,113,60,241,60,241,0,253, + 0,127,0,63,224,31,240,3,248,1,124,1,60,241,60,241, + 60,249,60,127,248,63,240,31,224,1,0,1,0,1,0,25, + 20,80,27,1,0,31,0,96,0,63,128,224,0,123,192,192, + 0,225,193,192,0,224,227,128,0,224,227,0,0,224,231,0, + 0,224,230,0,0,113,206,0,0,127,204,124,0,63,28,254, + 0,0,57,199,0,0,59,131,0,0,115,131,128,0,99,131, + 128,0,227,131,128,1,195,135,128,1,193,239,0,3,128,254, + 0,3,128,124,0,19,20,60,21,1,0,15,192,0,31,240, + 0,60,240,0,120,120,0,120,120,0,120,112,0,60,240,0, + 63,224,0,31,192,0,31,128,0,63,135,128,123,199,128,249, + 231,128,240,247,0,240,127,0,240,63,0,240,30,0,124,127, + 0,63,255,128,15,227,224,4,8,8,11,4,12,240,224,224, + 224,224,224,224,224,6,24,24,10,2,252,28,56,56,120,120, + 112,112,240,240,240,240,240,240,240,240,240,240,112,112,120,120, + 56,56,28,6,24,24,11,3,252,224,240,112,112,120,120,120, + 56,56,60,60,60,60,60,60,56,56,120,120,120,112,112,240, + 224,11,11,22,17,3,9,17,0,59,128,59,128,27,0,238, + 224,255,224,206,96,27,0,59,128,59,128,17,0,16,16,32, + 26,5,0,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,255,255,255,255,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,6,7,7,8,1,252,60,56,56,112,112,112,224, + 7,4,4,9,1,5,254,254,254,254,4,4,4,9,3,0, + 240,240,240,240,8,21,21,12,2,255,7,7,7,6,14,14, + 12,28,28,24,56,56,56,48,112,112,96,224,224,224,192,14, + 20,40,15,1,0,15,128,31,224,60,240,120,112,112,56,240, + 56,240,56,240,60,240,60,240,60,240,60,240,60,240,60,240, + 56,240,56,112,56,120,120,60,240,31,224,15,128,8,20,20, + 15,3,0,15,63,127,255,239,207,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,14,20,40,15,1,0,7,192,31, + 240,63,248,124,120,120,60,120,60,0,60,0,120,0,120,0, + 240,1,240,3,224,7,192,15,128,31,0,124,0,248,0,255, + 252,255,252,255,252,13,20,40,15,1,0,15,128,63,224,127, + 240,248,240,240,120,0,120,0,120,0,240,15,224,15,128,15, + 224,0,240,0,120,0,120,240,120,240,120,248,240,127,240,63, + 224,31,128,14,20,40,15,1,0,1,240,3,240,3,240,7, + 240,7,240,14,240,30,240,28,240,60,240,56,240,120,240,112, + 240,240,240,255,252,255,252,255,252,0,240,0,240,0,240,0, + 240,13,20,40,15,1,0,255,240,255,240,255,240,240,0,240, + 0,240,0,240,0,247,192,255,224,253,240,240,120,240,120,0, + 120,0,120,0,120,240,120,240,240,127,240,63,224,31,128,13, + 20,40,15,1,0,15,192,31,224,63,240,120,120,120,120,112, + 0,240,0,247,192,239,224,253,240,248,120,240,120,240,120,240, + 120,240,120,112,120,120,240,63,240,63,224,15,128,13,20,40, + 15,1,0,255,248,255,248,255,248,0,120,0,120,0,240,0, + 240,1,224,1,224,1,224,3,192,3,192,7,128,7,128,15, + 128,15,0,31,0,30,0,30,0,62,0,14,20,40,15,1, + 0,31,192,63,240,127,240,120,248,240,120,240,120,240,120,120, + 240,63,224,31,192,63,240,120,120,240,56,240,60,240,60,240, + 60,248,120,127,248,63,240,31,192,13,20,40,15,1,0,15, + 128,63,192,127,224,120,240,240,112,240,120,240,120,240,120,240, + 120,120,248,127,184,63,56,0,120,0,120,0,112,240,240,120, + 240,127,224,63,192,15,128,4,14,14,9,4,0,240,240,240, + 240,0,0,0,0,0,0,240,240,240,240,6,17,17,8,1, + 253,60,60,60,60,0,0,0,0,0,0,60,56,120,112,112, + 224,224,16,14,28,26,5,1,0,3,0,31,0,120,3,192, + 15,0,120,0,224,0,224,0,60,0,7,128,1,224,0,60, + 0,15,0,1,16,7,14,26,5,5,255,255,255,255,0,0, + 0,0,0,0,255,255,255,255,16,14,28,26,5,1,192,0, + 248,0,30,0,3,192,0,240,0,30,0,7,0,7,0,60, + 1,224,7,128,60,0,240,0,128,0,13,20,40,15,1,0, + 31,128,63,224,121,240,240,112,32,120,0,120,0,112,0,240, + 1,224,3,192,7,128,14,0,14,0,14,0,14,0,0,0, + 0,0,15,0,15,0,15,0,26,25,100,28,1,251,0,63, + 128,0,1,255,240,0,7,255,252,0,15,224,254,0,31,0, + 31,0,62,0,15,0,60,61,231,128,120,255,231,128,121,247, + 227,192,241,225,227,192,241,193,227,192,243,193,227,192,243,193, + 227,192,243,193,227,192,243,193,227,192,241,193,227,128,113,227, + 231,128,120,255,255,0,124,254,255,0,60,60,60,0,31,0, + 0,0,15,192,32,0,7,255,224,0,1,255,224,0,0,127, + 224,0,19,20,60,19,0,0,1,240,0,1,240,0,1,248, + 0,3,248,0,3,248,0,3,188,0,7,188,0,7,156,0, + 15,30,0,15,30,0,15,30,0,30,15,0,30,15,0,31, + 255,128,63,255,128,63,255,128,56,3,192,120,3,192,120,3, + 192,240,1,224,15,20,40,18,2,0,255,224,255,240,255,248, + 240,124,240,60,240,60,240,56,240,120,255,240,255,192,255,248, + 240,60,240,28,240,30,240,30,240,30,240,60,255,252,255,248, + 255,224,17,20,60,19,1,0,7,240,0,15,252,0,63,254, + 0,60,31,0,120,15,0,112,15,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 15,128,112,15,0,120,31,0,60,62,0,63,254,0,31,248, + 0,7,224,0,16,20,40,19,2,0,255,128,255,240,255,248, + 240,124,240,62,240,30,240,15,240,15,240,15,240,15,240,15, + 240,15,240,15,240,15,240,30,240,62,240,124,255,248,255,240, + 255,128,13,20,40,17,2,0,255,248,255,248,255,248,240,0, + 240,0,240,0,240,0,240,0,255,248,255,248,255,248,240,0, + 240,0,240,0,240,0,240,0,240,0,255,248,255,248,255,248, + 13,20,40,16,2,0,255,248,255,248,255,248,240,0,240,0, + 240,0,240,0,240,0,255,240,255,240,255,240,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,18,20, + 60,20,1,0,1,248,0,15,254,0,31,255,0,62,15,128, + 124,3,128,120,3,192,112,0,0,240,0,0,240,0,0,240, + 63,192,240,63,192,240,63,192,240,3,192,240,3,192,120,3, + 192,124,3,192,63,3,192,31,255,192,15,255,192,1,254,0, + 16,20,40,20,2,0,240,15,240,15,240,15,240,15,240,15, + 240,15,240,15,240,15,255,255,255,255,255,255,240,15,240,15, + 240,15,240,15,240,15,240,15,240,15,240,15,240,15,4,20, + 20,8,2,0,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,14,20,40,17,1,0,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,60,0,60,0,60,240,60,240,56,248,120, + 127,240,127,224,31,192,15,20,40,18,2,0,240,60,240,124, + 240,248,241,240,241,224,243,224,247,192,255,128,255,0,255,0, + 255,128,247,192,247,192,243,224,241,240,240,240,240,248,240,124, + 240,62,240,62,13,20,40,16,2,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,255,248,255,248, + 255,248,21,20,60,25,2,0,252,1,248,254,3,248,254,3, + 248,254,3,248,255,7,248,255,7,248,247,7,120,247,15,120, + 247,143,120,247,143,120,243,142,120,243,222,120,243,222,120,241, + 220,120,241,252,120,241,252,120,240,248,120,240,248,120,240,248, + 120,240,248,120,17,20,60,21,2,0,252,7,128,252,7,128, + 254,7,128,254,7,128,255,7,128,255,7,128,247,135,128,247, + 135,128,243,199,128,243,199,128,241,231,128,241,231,128,240,247, + 128,240,247,128,240,127,128,240,127,128,240,63,128,240,63,128, + 240,31,128,240,31,128,18,20,60,20,1,0,3,240,0,15, + 252,0,31,254,0,62,31,0,120,7,128,120,7,128,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,120,7,128,120,7,128,62,31,0,31, + 254,0,15,252,0,3,240,0,14,20,40,17,2,0,255,192, + 255,240,255,248,240,124,240,60,240,60,240,60,240,60,240,124, + 255,248,255,240,255,192,240,0,240,0,240,0,240,0,240,0, + 240,0,240,0,240,0,20,20,60,22,1,0,3,240,0,15, + 252,0,63,254,0,62,31,0,120,7,128,120,7,128,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,120,7,128,120,7,128,62,31,0,31, + 255,240,15,255,240,3,255,240,15,20,40,18,2,0,255,224, + 255,248,255,252,240,62,240,30,240,30,240,30,240,30,240,124, + 255,248,255,240,255,252,240,60,240,60,240,28,240,30,240,30, + 240,30,240,30,240,14,16,20,40,18,1,0,7,224,31,248, + 63,252,60,60,120,30,120,30,120,0,124,0,63,128,31,240, + 15,252,0,254,0,30,0,15,240,15,240,14,120,62,127,252, + 63,248,7,224,16,20,40,18,1,0,255,255,255,255,255,255, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,17,20,60,21,2,0,240,7,128,240,7,128,240,7, + 128,240,7,128,240,7,128,240,7,128,240,7,128,240,7,128, + 240,7,128,240,7,128,240,7,128,240,7,128,240,7,128,240, + 7,0,240,15,0,120,15,0,124,30,0,63,254,0,31,248, + 0,7,224,0,19,20,60,20,0,0,248,1,224,120,1,224, + 120,3,224,60,3,192,60,3,192,62,7,192,30,7,128,30, + 7,128,31,15,128,15,15,0,15,15,0,15,158,0,7,158, + 0,7,158,0,7,252,0,3,252,0,3,252,0,1,248,0, + 1,248,0,1,240,0,27,20,80,27,0,0,248,31,3,224, + 120,31,3,192,120,31,3,192,120,63,131,192,120,63,131,192, + 60,59,135,128,60,59,135,128,60,123,199,128,60,123,199,128, + 28,113,199,0,30,113,207,0,30,241,239,0,30,241,239,0, + 14,224,238,0,14,224,238,0,15,224,254,0,15,224,254,0, + 7,192,124,0,7,192,124,0,7,192,124,0,17,20,60,19, + 1,0,248,15,128,120,15,0,124,30,0,62,30,0,30,60, + 0,31,120,0,15,120,0,7,240,0,7,224,0,3,224,0, + 7,224,0,7,240,0,15,240,0,30,120,0,30,124,0,60, + 60,0,60,30,0,120,31,0,240,15,0,240,7,128,16,20, + 40,17,1,0,240,31,248,30,120,30,124,60,60,60,60,120, + 30,120,30,240,15,240,15,224,7,224,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,15,20,40,17, + 1,0,127,254,127,254,127,254,0,62,0,124,0,248,0,248, + 1,240,3,224,7,224,7,192,15,128,31,0,63,0,62,0, + 124,0,248,0,255,254,255,254,255,254,6,25,25,10,2,251, + 252,252,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,252,252,9,21,42,12,1,255,224, + 0,96,0,112,0,112,0,48,0,56,0,56,0,56,0,24, + 0,28,0,28,0,12,0,14,0,14,0,6,0,6,0,7, + 0,7,0,3,0,3,128,3,128,7,25,25,11,2,251,254, + 254,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30, + 30,30,30,30,30,30,254,254,13,17,34,27,7,0,2,0, + 7,0,5,0,5,0,13,128,8,128,24,192,24,192,16,64, + 48,96,48,96,32,32,96,48,64,16,192,24,192,24,128,8, + 14,2,4,14,0,252,255,252,255,252,5,5,5,7,0,16, + 224,112,112,56,24,12,14,28,15,1,0,31,128,63,224,121, + 240,112,240,0,240,63,240,127,240,248,240,240,240,240,240,240, + 240,251,240,127,112,62,112,14,20,40,17,2,0,240,0,240, + 0,240,0,240,0,240,0,240,0,247,192,255,240,253,240,248, + 120,240,120,240,60,240,60,240,60,240,60,240,56,248,120,252, + 240,255,240,243,192,12,14,28,14,1,0,31,128,63,224,121, + 224,112,224,240,240,240,0,240,0,240,0,240,0,240,240,240, + 224,121,224,63,192,31,128,14,20,40,16,1,0,0,60,0, + 60,0,60,0,60,0,60,0,60,31,188,63,252,124,252,120, + 124,240,60,240,60,240,60,240,60,240,60,240,60,120,124,125, + 252,63,188,15,60,13,14,28,15,1,0,15,128,63,224,121, + 240,112,240,240,240,255,240,255,248,240,0,240,0,240,240,112, + 240,121,240,63,224,31,128,10,20,40,11,1,0,15,192,31, + 192,62,64,60,0,60,0,60,0,255,128,255,128,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,14,19,38,16,1,251,31,188,63,252,124, + 252,120,124,240,60,240,60,240,60,240,60,240,60,240,60,112, + 124,124,252,63,188,15,60,0,60,120,56,124,248,63,240,15, + 192,13,20,40,16,2,0,240,0,240,0,240,0,240,0,240, + 0,240,0,247,192,255,240,253,240,248,120,240,120,240,120,240, + 120,240,120,240,120,240,120,240,120,240,120,240,120,240,120,4, + 20,20,6,1,0,240,240,240,240,0,0,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,5,25,25,9,3,251,120, + 120,120,120,0,0,120,120,120,120,120,120,120,120,120,120,120, + 120,120,120,120,120,248,248,240,12,20,40,15,2,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,240,241,224,243,192, + 247,128,255,128,255,0,255,0,255,0,247,128,247,192,243,192, + 241,224,241,240,240,240,4,20,20,7,2,0,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 22,14,42,25,2,0,243,227,224,255,247,248,253,254,248,240, + 120,120,240,120,60,240,120,60,240,120,60,240,120,60,240,120, + 60,240,120,60,240,120,60,240,120,60,240,120,60,240,120,60, + 13,14,28,16,2,0,247,192,255,240,253,240,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,120, + 240,120,14,14,28,16,1,0,15,192,63,224,124,240,120,120, + 240,60,240,60,240,60,240,60,240,60,240,60,120,120,124,248, + 63,240,15,192,14,19,38,17,2,251,243,192,255,240,253,240, + 248,120,240,56,240,60,240,60,240,60,240,60,240,120,240,120, + 253,248,255,240,247,192,240,0,240,0,240,0,240,0,240,0, + 14,19,38,16,1,251,15,60,63,252,125,252,120,124,240,60, + 240,60,240,60,240,60,240,60,240,60,120,124,124,252,63,252, + 31,188,0,60,0,60,0,60,0,60,0,60,9,14,28,11, + 2,0,247,128,255,128,255,128,252,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,12,14, + 28,14,1,0,31,128,127,192,123,224,241,224,240,0,126,0, + 127,192,31,224,1,240,240,240,240,240,249,224,127,192,31,128, + 10,18,36,12,1,0,2,0,14,0,30,0,30,0,255,192, + 255,192,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,31,0,15,192,7,192,13,14,28,16,2,0, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,120, + 240,120,240,120,240,248,249,248,127,248,62,120,14,14,28,15, + 0,0,240,60,120,60,120,60,56,120,60,120,60,112,28,240, + 30,240,30,224,15,224,15,224,15,192,7,192,7,192,23,14, + 42,23,0,0,240,124,30,112,124,28,120,124,60,120,254,60, + 56,238,60,60,238,56,61,239,120,61,231,120,29,199,112,31, + 199,240,31,199,240,15,131,224,15,131,224,15,131,224,13,14, + 28,15,1,0,240,120,120,240,124,224,61,224,31,192,31,128, + 15,128,31,128,31,192,63,224,57,224,120,240,240,248,240,120, + 14,19,38,15,0,251,248,60,120,60,120,60,60,120,60,120, + 60,112,30,240,30,240,14,224,15,224,15,224,7,192,7,192, + 3,192,7,128,7,128,7,128,15,0,15,0,11,14,28,13, + 1,0,255,224,255,224,1,224,3,224,7,192,7,128,15,0, + 30,0,60,0,124,0,248,0,240,0,255,224,255,224,10,27, + 54,13,2,249,3,192,15,192,31,128,30,0,30,0,30,0, + 30,0,30,0,30,0,28,0,28,0,60,0,248,0,224,0, + 248,0,124,0,60,0,28,0,30,0,30,0,30,0,30,0, + 30,0,30,0,31,128,15,192,7,192,2,29,29,10,4,249, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,10,27,54, + 14,2,249,240,0,252,0,124,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,15,0,7,192,3,192,7, + 192,15,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,124,0,252,0,240,0,14,3,6,14,0,5,63, + 156,127,248,225,240,255}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--34-340-72-72-P-170-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 25, '1' Height: 25 + Calculated Max Values w=34 h=37 x= 8 y=22 dx=35 dy= 0 ascent=37 len=160 + Font Bounding box w=50 h=46 x=-2 y=-9 + Calculated Min Values x=-1 y=-9 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =37 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub25[12908] U8G_SECTION(".progmem.u8g_font_fub25") = { + 0,50,46,254,247,25,7,111,16,148,32,255,249,37,247,25, + 249,0,0,0,10,0,0,5,25,25,14,5,0,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 0,0,248,248,248,248,13,10,20,18,2,15,248,248,248,248, + 248,248,120,248,120,120,120,120,120,120,120,120,120,112,120,112, + 21,25,75,24,2,0,0,224,224,0,225,224,0,225,192,1, + 225,192,1,195,192,1,195,128,31,255,248,31,255,240,63,255, + 240,7,135,0,7,135,0,7,15,0,7,14,0,15,14,0, + 14,14,0,255,255,192,255,255,192,255,255,192,28,60,0,28, + 60,0,60,56,0,56,56,0,56,120,0,120,112,0,112,112, + 0,18,31,93,20,1,252,0,192,0,0,192,0,3,248,0, + 15,252,0,31,254,0,63,255,0,126,223,0,120,207,128,248, + 207,128,248,192,0,252,192,0,126,192,0,127,192,0,127,240, + 0,31,252,0,7,255,0,1,255,128,0,255,128,0,207,128, + 0,199,192,248,199,192,248,199,192,248,207,128,126,223,128,127, + 255,0,63,254,0,15,252,0,3,240,0,0,192,0,0,192, + 0,0,192,0,32,26,104,34,1,0,0,0,3,128,15,192, + 7,0,63,240,7,0,124,248,14,0,120,120,14,0,240,60, + 28,0,240,60,24,0,240,60,56,0,240,60,112,0,240,60, + 112,0,120,120,224,0,120,120,224,0,63,241,199,248,15,195, + 143,252,0,3,159,62,0,7,30,30,0,7,60,15,0,14, + 60,15,0,30,60,15,0,28,60,15,0,56,60,15,0,56, + 60,15,0,112,30,30,0,112,15,60,0,224,15,252,1,224, + 3,240,24,25,75,27,2,1,7,252,0,31,254,0,31,255, + 0,62,31,0,62,31,0,62,31,0,62,31,0,30,62,0, + 31,126,0,15,252,0,7,240,0,15,224,0,63,224,124,63, + 240,120,124,248,120,252,124,120,248,62,120,248,31,248,248,15, + 240,248,7,240,252,3,224,126,15,240,63,255,248,31,255,254, + 7,252,63,5,10,10,14,4,15,248,248,120,120,120,120,120, + 120,120,120,7,30,30,13,3,251,30,30,62,60,60,124,124, + 120,120,248,248,248,248,248,248,248,248,248,248,248,248,120,120, + 124,124,60,60,62,30,30,8,30,30,14,3,251,240,120,120, + 124,60,60,60,62,62,30,30,30,30,31,31,31,31,31,30, + 30,30,62,62,62,60,60,124,120,120,240,14,13,26,22,4, + 13,28,224,60,240,28,224,15,192,135,132,255,252,255,252,231, + 156,15,192,30,224,28,224,60,240,8,64,20,21,63,34,7, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,96,0,255,255,240,255, + 255,240,0,96,0,0,96,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 7,9,9,11,2,251,62,60,60,120,120,112,240,240,224,9, + 5,10,11,1,7,255,128,255,128,255,128,255,128,255,128,5, + 5,5,10,3,0,248,248,248,248,248,11,28,56,15,2,254, + 0,224,0,224,1,192,1,192,1,192,3,128,3,128,3,128, + 3,128,7,0,7,0,7,0,14,0,14,0,14,0,28,0, + 28,0,28,0,56,0,56,0,56,0,56,0,112,0,112,0, + 112,0,224,0,224,0,224,0,17,25,75,19,1,1,7,224, + 0,31,252,0,63,254,0,60,30,0,120,15,0,120,15,0, + 120,15,0,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,248,15,128,248,15, + 128,248,15,128,120,15,0,120,15,0,120,15,0,60,30,0, + 31,252,0,15,248,0,7,224,0,11,25,50,19,3,1,3, + 224,15,224,31,224,127,224,255,224,251,224,243,224,195,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,17,25,75,19,1,1,7,248,0,31,254,0,31,255,0, + 63,255,0,126,31,128,124,15,128,124,15,128,0,15,128,0, + 15,128,0,31,0,0,31,0,0,62,0,0,126,0,0,252, + 0,1,248,0,3,240,0,7,224,0,15,192,0,63,0,0, + 126,0,0,252,0,0,255,255,128,255,255,128,255,255,128,255, + 255,128,16,25,50,19,2,1,31,240,63,252,127,254,255,254, + 248,62,248,31,0,31,0,30,0,126,7,252,7,240,7,248, + 7,252,0,62,0,31,0,31,0,31,248,31,248,31,248,31, + 252,62,127,254,127,252,31,248,15,224,18,25,75,19,1,1, + 0,126,0,0,254,0,0,254,0,1,254,0,3,254,0,3, + 254,0,7,190,0,15,190,0,15,62,0,30,62,0,30,62, + 0,60,62,0,124,62,0,120,62,0,240,62,0,255,255,192, + 255,255,192,255,255,192,255,255,192,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,17,25,75,19,1, + 1,255,254,0,255,254,0,255,254,0,255,254,0,248,0,0, + 248,0,0,248,0,0,248,0,0,249,240,0,255,252,0,255, + 254,0,252,63,0,248,31,0,248,15,0,0,15,128,0,15, + 128,0,15,128,0,15,0,248,15,0,248,31,0,252,63,0, + 127,254,0,127,252,0,63,248,0,15,224,0,17,25,75,19, + 1,1,3,240,0,15,252,0,31,254,0,63,255,0,62,31, + 0,126,15,128,124,0,0,124,0,0,252,0,0,248,248,0, + 251,254,0,255,254,0,255,31,0,254,15,128,252,15,128,252, + 15,128,252,15,128,252,15,128,124,15,128,126,15,128,127,31, + 0,63,255,0,31,254,0,15,252,0,3,240,0,16,25,50, + 19,2,1,255,255,255,255,255,255,255,255,0,15,0,31,0, + 30,0,62,0,62,0,124,0,124,0,248,0,248,0,240,1, + 240,1,240,3,224,3,224,7,192,7,192,15,128,15,128,15, + 128,31,0,31,0,17,25,75,19,1,1,7,240,0,31,252, + 0,127,255,0,127,255,0,252,31,128,248,15,128,248,15,128, + 120,15,0,124,31,0,63,254,0,15,248,0,31,248,0,63, + 254,0,124,63,0,248,15,0,248,15,128,248,15,128,248,15, + 128,248,15,128,248,15,128,252,31,128,127,255,0,127,255,0, + 31,252,0,7,240,0,17,25,75,19,1,1,7,240,0,31, + 252,0,63,254,0,127,254,0,124,63,0,248,31,0,248,31, + 0,248,31,128,248,31,128,248,31,128,248,63,128,124,63,128, + 127,255,128,63,239,128,15,207,128,0,15,128,0,31,0,0, + 31,0,248,31,0,120,63,0,124,126,0,63,254,0,63,252, + 0,31,248,0,7,224,0,5,18,18,11,5,0,248,248,248, + 248,248,0,0,0,0,0,0,0,0,248,248,248,248,248,7, + 22,22,11,2,252,62,62,62,62,62,0,0,0,0,0,0, + 0,0,62,60,124,120,120,112,240,224,224,21,19,57,34,7, + 1,0,0,8,0,0,56,0,1,248,0,15,192,0,62,0, + 1,248,0,7,192,0,62,0,0,248,0,0,192,0,0,248, + 0,0,62,0,0,7,192,0,1,248,0,0,62,0,0,7, + 192,0,1,248,0,0,56,0,0,8,20,8,24,34,7,6, + 255,255,240,255,255,240,0,0,0,0,0,0,0,0,0,0, + 0,0,255,255,240,255,255,240,21,17,51,34,7,2,224,0, + 0,248,0,0,63,0,0,7,224,0,0,248,0,0,63,0, + 0,7,192,0,0,248,0,0,56,0,0,248,0,7,192,0, + 63,0,0,248,0,7,224,0,31,0,0,248,0,0,224,0, + 0,16,25,50,19,1,1,31,240,63,248,127,252,248,62,112, + 30,48,31,0,31,0,30,0,62,0,60,0,120,0,240,1, + 224,3,192,3,128,3,128,3,128,3,128,3,128,0,0,0, + 0,7,192,7,192,7,192,7,192,33,32,160,35,1,250,0, + 31,254,0,0,0,127,255,128,0,1,255,255,224,0,3,255, + 255,240,0,7,240,3,248,0,15,192,1,252,0,31,128,0, + 124,0,63,7,159,126,0,62,31,255,63,0,124,63,255,31, + 0,124,127,255,31,0,120,126,63,31,0,248,252,31,15,0, + 248,248,31,15,128,248,248,31,15,128,248,248,31,15,128,248, + 248,31,15,0,248,248,31,15,0,248,248,31,15,0,248,248, + 31,31,0,120,124,63,30,0,124,124,127,190,0,124,63,255, + 252,0,62,31,231,248,0,63,7,195,240,0,31,128,0,0, + 0,15,192,0,0,0,7,248,3,0,0,3,255,255,0,0, + 1,255,255,0,0,0,127,255,0,0,0,7,255,0,0,23, + 25,75,24,1,0,0,124,0,0,252,0,0,254,0,0,254, + 0,1,254,0,1,255,0,3,255,0,3,207,0,3,207,128, + 7,207,128,7,135,192,7,135,192,15,135,192,15,3,224,31, + 3,224,31,3,240,31,255,240,63,255,240,63,255,248,127,255, + 248,124,0,248,124,0,252,248,0,124,248,0,126,240,0,62, + 19,25,75,23,2,0,255,248,0,255,254,0,255,255,0,255, + 255,0,248,63,0,248,15,128,248,15,128,248,15,0,248,15, + 0,248,63,0,255,254,0,255,248,0,255,252,0,255,255,0, + 248,15,192,248,3,192,248,3,224,248,3,224,248,3,224,248, + 3,224,248,7,224,255,255,192,255,255,128,255,255,0,255,252, + 0,21,25,75,25,2,1,3,255,0,15,255,192,31,255,224, + 63,255,240,62,3,240,124,1,240,120,1,248,120,0,248,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,1,248,120,1,248,124,1,248, + 124,3,240,63,7,240,31,255,224,15,255,192,7,255,0,1, + 252,0,20,25,75,23,2,0,255,224,0,255,252,0,255,254, + 0,255,255,0,248,63,128,248,15,192,248,7,192,248,3,224, + 248,3,224,248,1,224,248,1,224,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,224,248,3,224,248,3,224,248,7, + 192,248,15,192,248,63,128,255,255,0,255,254,0,255,252,0, + 255,224,0,17,25,75,21,2,0,255,255,0,255,255,0,255, + 255,0,255,255,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,255,255,0,255,255,0,255,255,0, + 255,255,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,255,255,128,255,255,128,255,255, + 128,255,255,128,16,25,50,19,2,0,255,255,255,255,255,255, + 255,255,248,0,248,0,248,0,248,0,248,0,248,0,255,254, + 255,254,255,254,255,254,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,22,25,75,26, + 2,1,1,255,192,7,255,224,15,255,240,31,255,248,63,0, + 248,62,0,124,124,0,124,124,0,0,248,0,0,248,0,0, + 248,0,0,248,7,252,248,7,252,248,7,252,248,7,252,248, + 0,124,248,0,124,124,0,124,126,0,124,63,0,124,63,192, + 124,31,255,252,15,255,252,3,255,252,0,127,192,20,25,75, + 24,2,0,248,1,240,248,1,240,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,240,248,1,240,248,1,240,248,1, + 240,255,255,240,255,255,240,255,255,240,255,255,240,248,1,240, + 248,1,240,248,1,240,248,1,240,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,240,248,1,240,248,1,240,5,25, + 25,9,2,0,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,17,25,75, + 21,2,0,0,15,128,0,15,128,0,15,128,0,15,128,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,0,15,128,0,15,128,0,15,128,0,15,128,0,15,128, + 0,15,128,0,15,128,248,15,128,248,15,128,248,15,128,252, + 31,0,127,255,0,127,254,0,63,252,0,15,240,0,19,25, + 75,23,2,0,248,7,192,248,15,128,248,31,128,248,63,0, + 248,126,0,248,124,0,248,248,0,249,248,0,251,240,0,251, + 224,0,255,192,0,255,192,0,255,224,0,255,240,0,251,240, + 0,249,248,0,249,252,0,248,252,0,248,126,0,248,63,0, + 248,63,128,248,31,128,248,15,192,248,15,224,248,7,224,16, + 25,50,19,2,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,255, + 255,255,255,255,255,255,255,27,25,100,31,2,0,255,0,31, + 224,255,0,63,224,255,128,63,224,255,128,63,224,255,128,127, + 224,255,192,127,224,255,192,123,224,251,192,123,224,251,224,251, + 224,251,224,243,224,251,224,243,224,249,241,243,224,249,241,243, + 224,249,241,227,224,248,243,227,224,248,251,227,224,248,251,195, + 224,248,127,195,224,248,127,195,224,248,127,131,224,248,127,131, + 224,248,63,131,224,248,63,131,224,248,63,3,224,248,31,3, + 224,21,25,75,25,2,0,254,0,248,255,0,248,255,0,248, + 255,128,248,255,128,248,255,192,248,255,192,248,251,224,248,251, + 224,248,249,224,248,249,240,248,248,240,248,248,248,248,248,120, + 248,248,124,248,248,60,248,248,62,248,248,30,248,248,31,248, + 248,31,248,248,15,248,248,15,248,248,7,248,248,7,248,248, + 3,248,23,25,75,27,2,1,3,255,128,7,255,192,31,255, + 240,31,255,240,63,1,248,126,0,252,124,0,124,120,0,60, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,124,0,124,124,0, + 124,62,0,248,63,131,248,31,255,240,15,255,224,7,255,192, + 0,254,0,18,25,75,21,2,0,255,240,0,255,252,0,255, + 255,0,255,255,128,248,31,128,248,15,128,248,7,192,248,7, + 192,248,7,192,248,15,128,248,31,128,255,255,128,255,255,0, + 255,252,0,255,240,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,26,25,100,29,2,1,3,255,128,0,7,255, + 192,0,31,255,224,0,31,255,240,0,63,1,248,0,126,0, + 252,0,124,0,124,0,120,0,60,0,248,0,62,0,248,0, + 62,0,248,0,62,0,248,0,62,0,248,0,62,0,248,0, + 62,0,248,0,62,0,248,0,62,0,120,0,60,0,124,0, + 124,0,124,0,124,0,62,0,248,0,63,131,240,0,31,255, + 255,192,15,255,255,192,3,255,255,192,0,255,255,192,19,25, + 75,22,2,0,255,252,0,255,255,0,255,255,128,255,255,192, + 248,15,192,248,7,224,248,3,224,248,3,224,248,3,192,248, + 7,192,248,31,128,255,255,0,255,252,0,255,255,0,255,255, + 128,248,15,128,248,7,192,248,7,192,248,7,192,248,3,192, + 248,3,192,248,3,192,248,3,224,248,3,224,248,3,224,20, + 25,75,23,2,1,7,254,0,15,255,0,31,255,128,63,255, + 192,126,7,192,124,3,192,124,3,224,124,0,0,124,0,0, + 127,0,0,63,240,0,31,254,0,7,255,128,1,255,192,0, + 31,224,0,3,224,0,1,240,248,1,240,248,1,240,248,3, + 224,126,7,224,127,255,192,63,255,128,15,255,0,3,248,0, + 20,25,75,22,1,0,255,255,240,255,255,240,255,255,240,255, + 255,240,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,21,25,75,25,2,0,248,0,248,248,0,248,248,0,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,240,248,0,240,120,1,240, + 124,3,240,127,7,224,63,255,192,31,255,128,15,255,0,3, + 252,0,24,25,75,25,1,0,248,0,63,248,0,62,252,0, + 62,124,0,124,124,0,124,126,0,124,62,0,248,63,0,248, + 63,1,240,31,1,240,31,129,240,31,131,224,15,131,224,15, + 195,224,7,199,192,7,199,192,7,231,128,3,239,128,3,255, + 128,3,255,0,1,255,0,1,254,0,1,254,0,0,254,0, + 0,252,0,34,25,125,34,0,0,252,3,240,15,192,252,3, + 240,15,128,124,3,240,15,128,126,7,248,15,128,126,7,248, + 15,128,126,7,248,31,0,62,7,248,31,0,62,15,252,31, + 0,63,15,60,30,0,63,15,60,62,0,31,15,60,62,0, + 31,31,62,62,0,31,30,30,60,0,31,158,30,60,0,15, + 158,30,124,0,15,190,31,124,0,15,188,15,120,0,7,252, + 15,120,0,7,252,15,120,0,7,252,15,248,0,7,248,7, + 240,0,3,248,7,240,0,3,248,7,240,0,3,248,7,240, + 0,3,240,3,224,0,22,25,75,24,1,0,252,0,248,126, + 1,248,62,1,240,63,3,224,31,135,192,15,135,192,15,207, + 128,7,239,0,3,255,0,3,254,0,1,252,0,0,252,0, + 0,252,0,1,254,0,3,254,0,3,255,0,7,223,128,15, + 143,128,15,15,192,31,7,224,62,3,224,62,3,240,124,1, + 248,248,1,248,248,0,252,21,25,75,22,1,0,252,1,248, + 252,1,240,126,3,224,126,3,224,63,7,192,31,7,192,31, + 143,128,15,143,128,15,223,0,7,223,0,7,254,0,3,254, + 0,3,252,0,1,248,0,1,248,0,0,240,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,18,25,75,22,2,0,127,255, + 192,127,255,192,127,255,192,127,255,192,0,15,192,0,31,128, + 0,63,0,0,63,0,0,126,0,0,252,0,1,252,0,1, + 248,0,3,240,0,7,224,0,7,224,0,15,192,0,31,128, + 0,63,128,0,63,0,0,126,0,0,252,0,0,255,255,192, + 255,255,192,255,255,192,255,255,192,8,32,32,13,3,249,255, + 255,255,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,255,255,255,11, + 28,56,15,2,254,224,0,224,0,240,0,240,0,240,0,112, + 0,120,0,120,0,56,0,60,0,60,0,28,0,30,0,30, + 0,30,0,15,0,15,0,15,0,7,0,7,128,7,128,3, + 128,3,192,3,192,1,192,1,224,1,224,1,224,8,32,32, + 13,3,249,255,255,255,31,31,31,31,31,31,31,31,31,31, + 31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31, + 255,255,255,18,21,63,34,8,0,0,192,0,0,224,0,1, + 224,0,1,224,0,1,48,0,3,48,0,2,24,0,6,24, + 0,6,24,0,4,12,0,12,12,0,12,14,0,24,6,0, + 24,6,0,24,7,0,48,3,0,48,3,0,112,1,128,96, + 1,128,96,1,192,192,0,192,17,3,9,17,0,251,255,255, + 128,255,255,128,255,255,128,7,7,7,9,255,21,248,120,60, + 60,28,14,6,15,18,36,19,2,0,7,224,63,248,127,252, + 124,62,120,62,0,62,15,254,63,254,127,254,124,62,248,62, + 248,62,248,62,248,62,252,126,127,254,63,222,31,30,17,25, + 75,20,2,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,249,240,0,255,252,0,255, + 254,0,254,63,0,252,31,0,248,15,128,248,15,128,248,15, + 128,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 252,31,0,254,63,0,255,254,0,251,252,0,249,240,0,15, + 18,36,18,2,0,7,224,31,248,63,252,124,124,120,60,248, + 62,248,0,248,0,248,0,248,0,248,0,248,62,248,62,120, + 60,124,124,63,252,31,248,15,224,17,25,75,21,2,0,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,0,15,128,7,207,128,31,255,128,63,255,128,126,63,128, + 124,31,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,124,31,128,126,63, + 128,63,255,128,31,239,128,7,207,128,15,18,36,19,2,0, + 7,224,31,248,63,252,124,60,120,62,248,30,248,30,255,254, + 255,254,255,254,248,0,248,0,248,30,120,62,124,62,63,252, + 31,248,7,224,12,25,50,13,1,0,7,240,15,240,31,240, + 31,0,31,0,31,0,31,0,255,224,255,224,255,224,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,17,25,75,21, + 2,249,7,207,128,31,255,128,63,255,128,126,63,128,124,31, + 128,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,124,31,128,126,63,128,63, + 255,128,31,239,128,7,207,128,0,15,128,0,15,128,124,15, + 128,124,31,0,63,254,0,31,252,0,7,240,0,16,25,50, + 20,2,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,249,248,255,252,255,254,254,63,252,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,5,25,25,9,2,0,248,248,248,248,248, + 0,0,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,6,32,32,12,4,249,124,124,124,124,124,0, + 0,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124, + 124,124,124,124,124,124,252,252,248,240,16,25,50,19,2,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,62, + 248,124,248,248,249,248,249,240,251,224,255,192,255,192,255,192, + 255,192,251,224,251,240,249,240,248,248,248,252,248,124,248,126, + 248,63,5,25,25,9,2,0,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,27,18,72,31,2,0,249,248,62,0,251,252,127,128,255, + 254,255,192,254,63,199,192,252,63,135,192,248,31,3,224,248, + 31,3,224,248,31,3,224,248,31,3,224,248,31,3,224,248, + 31,3,224,248,31,3,224,248,31,3,224,248,31,3,224,248, + 31,3,224,248,31,3,224,248,31,3,224,248,31,3,224,16, + 18,36,20,2,0,249,248,251,252,255,254,252,63,252,31,248, + 31,248,31,248,31,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,18,18,54,21,2,0,3, + 240,0,15,252,0,63,254,0,62,31,0,124,15,128,120,15, + 128,248,7,128,248,7,128,248,7,192,248,7,192,248,7,192, + 248,7,128,120,15,128,124,15,128,62,31,0,63,254,0,15, + 252,0,3,240,0,17,25,75,20,2,249,249,240,0,251,252, + 0,255,254,0,254,63,0,252,31,0,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,252,31,0,254,63,0,255,254,0,255,252,0,249,240, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,17,25,75,21,2,249,7,207,128,31, + 239,128,63,255,128,126,63,128,124,31,128,248,15,128,248,15, + 128,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 248,15,128,124,31,128,126,63,128,63,255,128,31,255,128,7, + 207,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,0,15,128,0,15,128,11,18,36,13,2,0,249,224,251, + 224,255,224,255,224,255,0,252,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,15,18,36,18,2,0,15,224,63,248,127,248,124,124,248, + 124,248,124,126,0,127,192,63,248,15,252,1,252,0,126,248, + 62,248,62,248,124,127,252,63,248,15,192,13,23,46,14,1, + 0,1,0,7,0,31,0,31,0,31,0,255,240,255,240,255, + 240,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,15,128,15,248,7,248,3,240,16, + 18,36,20,2,0,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,248,31,248,31,248,31,248, + 31,252,63,127,255,63,223,31,159,18,18,54,19,0,0,248, + 7,192,124,7,192,124,15,128,124,15,128,62,15,128,62,31, + 0,62,31,0,31,30,0,31,30,0,15,62,0,15,188,0, + 15,188,0,7,252,0,7,248,0,7,248,0,3,240,0,3, + 240,0,1,240,0,29,18,72,29,0,0,248,15,128,248,124, + 31,192,240,124,31,193,240,124,31,193,240,124,31,225,224,62, + 63,225,224,62,61,227,224,62,61,227,224,31,125,243,192,31, + 120,247,192,31,120,247,192,15,248,255,128,15,248,127,128,15, + 240,127,128,15,240,127,128,7,240,127,0,7,224,63,0,7, + 224,63,0,17,18,54,19,1,0,252,31,0,124,31,0,126, + 62,0,63,60,0,31,124,0,15,248,0,15,248,0,7,240, + 0,7,224,0,7,240,0,15,248,0,31,248,0,30,252,0, + 62,126,0,60,62,0,124,63,0,248,31,0,248,15,128,17, + 25,75,18,1,249,248,15,128,248,15,128,248,15,0,124,31, + 0,124,31,0,124,30,0,62,62,0,62,60,0,30,60,0, + 31,124,0,31,120,0,15,248,0,15,248,0,15,240,0,7, + 240,0,7,240,0,3,224,0,3,224,0,3,224,0,3,192, + 0,7,192,0,7,128,0,7,128,0,15,128,0,15,128,0, + 14,18,36,18,2,0,255,252,255,252,255,252,0,124,0,248, + 1,248,3,240,7,224,7,192,15,128,31,128,63,0,126,0, + 124,0,248,0,255,252,255,252,255,252,13,35,70,18,3,248, + 0,248,3,248,7,248,15,192,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,0,15,0,15,0,31,0,126,0, + 252,0,240,0,252,0,126,0,63,0,31,0,15,0,15,0, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,192, + 7,248,3,248,0,248,2,37,37,12,5,247,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,13,35,70,17,2,248,248,0,254,0,255,0,31,0,15, + 0,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,7,128,7,192,3,224,1,248,0,248,1,248,3,224,7, + 192,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,0,31,0,255,0,254,0,248,0,18,4,12, + 18,0,7,31,195,192,63,255,128,127,255,0,240,126,0,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 0,0,0,10,0,0,5,25,25,13,4,249,248,248,248,248, + 0,0,0,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,15,26,52,19,2,252,0,48,0,48,0, + 48,0,32,7,224,31,248,63,252,124,252,120,254,248,254,249, + 128,249,128,249,128,249,0,251,0,251,62,251,62,126,62,126, + 124,63,252,31,248,15,224,12,0,24,0,24,0,24,0,17, + 25,75,20,2,1,7,254,0,15,255,0,31,255,0,31,15, + 128,62,15,128,62,0,0,62,0,0,62,0,0,62,0,0, + 255,240,0,255,240,0,255,240,0,62,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,255,255,128,255,255,128,255,255,128, + 18,19,57,20,1,6,64,0,128,224,1,192,115,227,128,63, + 255,0,30,30,0,28,14,0,24,6,0,48,3,0,48,3, + 0,48,3,0,48,3,0,48,3,0,24,6,0,28,14,0, + 30,30,0,63,255,0,115,243,128,224,1,192,64,0,128,19, + 25,75,21,1,0,248,3,224,248,7,224,124,7,192,124,7, + 192,62,15,128,62,15,128,31,31,0,255,31,224,255,191,224, + 15,190,0,7,252,0,7,252,0,3,248,0,255,255,224,255, + 255,224,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 2,33,33,12,5,249,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,0,0,0,0,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,14,31,62,16,1,251,31,240,63, + 248,127,248,124,24,248,0,248,0,124,0,126,0,63,128,31, + 192,31,240,63,248,124,248,248,124,240,60,240,120,240,120,253, + 240,127,224,63,192,31,224,7,240,1,248,0,252,0,124,0, + 124,128,248,225,248,255,240,255,224,63,128,11,4,8,11,0, + 22,241,224,241,224,241,224,241,224,25,25,100,29,2,1,0, + 255,192,0,3,255,224,0,15,0,120,0,30,0,60,0,24, + 63,14,0,56,127,134,0,112,255,199,0,97,227,195,0,225, + 193,227,128,195,193,225,128,195,192,1,128,195,192,1,128,195, + 192,1,128,195,192,1,128,195,193,225,128,227,193,227,128,97, + 227,195,0,113,255,195,0,48,255,135,0,56,62,14,0,28, + 0,28,0,15,0,120,0,7,193,240,0,1,255,224,0,0, + 127,0,0,12,17,34,14,1,8,15,128,63,192,56,224,112, + 224,0,224,15,224,63,224,120,224,112,224,112,224,121,224,63, + 224,30,96,0,0,0,0,255,240,255,240,17,14,42,21,2, + 2,31,15,128,30,31,0,62,31,0,60,62,0,124,62,0, + 124,124,0,248,124,0,248,124,0,124,124,0,124,62,0,60, + 62,0,62,31,0,30,15,0,31,15,128,18,8,24,21,2, + 7,255,255,192,255,255,192,0,0,192,0,0,192,0,0,192, + 0,0,192,0,0,192,0,0,192,255,25,25,100,29,2,1, + 0,255,192,0,3,255,224,0,15,0,120,0,30,0,60,0, + 25,255,142,0,57,255,198,0,113,255,231,0,97,193,227,0, + 225,192,227,128,193,193,225,128,193,255,129,128,193,255,129,128, + 193,255,193,128,193,193,193,128,193,193,193,128,225,192,227,128, + 97,192,227,0,113,192,227,0,49,192,231,0,56,0,14,0, + 28,0,28,0,15,0,120,0,7,193,240,0,1,255,224,0, + 0,127,0,0,11,3,6,11,0,22,255,224,255,224,255,224, + 7,7,7,11,2,18,56,196,130,130,130,196,120,20,21,63, + 34,7,0,0,96,0,0,96,0,0,96,0,0,96,0,0, + 96,0,0,96,0,255,255,240,255,255,240,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,240,255, + 255,240,11,13,26,13,1,13,63,128,127,192,241,224,1,224, + 1,224,3,192,7,192,15,128,30,0,124,0,240,0,255,192, + 255,192,11,14,28,13,1,12,127,128,255,128,227,192,3,192, + 7,192,31,128,31,128,3,192,1,224,1,224,225,224,243,192, + 127,128,63,0,7,7,7,8,2,21,62,60,56,120,112,224, + 192,255,16,31,62,19,2,250,15,255,63,255,127,24,255,24, + 255,24,255,24,255,24,255,24,255,24,255,24,127,24,63,24, + 31,24,3,24,3,24,3,24,3,24,3,24,3,24,3,24, + 3,24,3,24,3,24,3,24,3,24,3,24,3,24,3,24, + 3,24,3,24,3,24,5,5,5,10,3,10,248,248,248,248, + 248,9,8,16,9,1,247,48,0,48,0,63,0,7,128,3, + 128,3,128,255,0,254,0,6,14,14,9,1,12,28,124,252, + 220,28,28,28,28,28,28,28,28,28,28,12,17,34,14,1, + 8,31,128,63,192,121,224,112,224,224,112,224,112,224,112,224, + 112,224,112,112,224,121,224,63,192,31,128,0,0,0,0,255, + 240,255,240,16,14,28,21,2,2,240,120,248,124,124,60,124, + 62,62,30,62,31,31,31,31,31,62,31,62,30,124,62,124, + 60,248,124,240,120,25,26,104,27,1,0,28,0,120,0,124, + 0,112,0,252,0,240,0,156,0,224,0,28,1,192,0,28, + 1,192,0,28,3,128,0,28,7,128,0,28,7,0,0,28, + 14,0,0,28,14,0,0,28,28,0,0,28,28,30,0,28, + 56,30,0,0,120,62,0,0,112,126,0,0,224,126,0,0, + 224,238,0,1,193,206,0,1,193,206,0,3,131,142,0,7, + 3,255,128,7,3,255,128,14,0,14,0,14,0,14,0,28, + 0,14,0,25,26,104,27,1,0,28,0,112,0,124,0,224, + 0,252,0,224,0,220,1,192,0,28,3,192,0,28,3,128, + 0,28,7,0,0,28,7,0,0,28,14,0,0,28,14,0, + 0,28,28,0,0,28,56,0,0,28,56,124,0,28,113,255, + 0,0,115,199,128,0,227,199,128,0,192,7,128,1,192,15, + 128,3,128,15,0,3,128,30,0,7,0,60,0,6,0,248, + 0,14,1,240,0,12,3,192,0,28,3,255,0,24,3,255, + 0,25,25,100,27,1,1,127,128,60,0,255,192,56,0,227, + 192,112,0,3,192,112,0,31,128,224,0,31,129,224,0,3, + 193,192,0,1,227,192,0,225,227,128,0,227,231,128,0,127, + 207,0,0,63,14,30,0,0,30,62,0,0,28,62,0,0, + 60,126,0,0,56,110,0,0,120,238,0,0,241,206,0,0, + 241,206,0,1,227,142,0,1,227,255,128,3,195,255,128,3, + 128,14,0,7,128,14,0,15,0,14,0,16,25,50,18,1, + 249,3,224,3,224,3,224,3,224,0,0,0,0,0,0,1, + 192,1,192,1,192,3,192,7,128,15,0,30,0,60,0,124, + 0,248,0,248,0,248,0,248,14,248,31,124,62,63,254,31, + 248,7,224,23,35,105,24,1,0,3,192,0,3,192,0,1, + 224,0,0,224,0,0,112,0,0,48,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,124,0,0,252,0,0,254,0, + 0,254,0,1,254,0,1,255,0,3,255,0,3,207,0,3, + 207,128,7,207,128,7,135,192,7,135,192,15,135,192,15,3, + 224,31,3,224,31,3,240,31,255,240,63,255,240,63,255,248, + 127,255,248,124,0,248,124,0,252,248,0,124,248,0,126,240, + 0,62,23,35,105,24,1,0,0,15,0,0,15,0,0,30, + 0,0,28,0,0,56,0,0,48,0,0,112,0,0,0,0, + 0,0,0,0,0,0,0,124,0,0,252,0,0,254,0,0, + 254,0,1,254,0,1,255,0,3,255,0,3,207,0,3,207, + 128,7,207,128,7,135,192,7,135,192,15,135,192,15,3,224, + 31,3,224,31,3,240,31,255,240,63,255,240,63,255,248,127, + 255,248,124,0,248,124,0,252,248,0,124,248,0,126,240,0, + 62,23,35,105,24,1,0,0,252,0,0,252,0,0,254,0, + 1,206,0,1,199,0,3,135,0,3,3,128,0,0,0,0, + 0,0,0,0,0,0,124,0,0,252,0,0,254,0,0,254, + 0,1,254,0,1,255,0,3,255,0,3,207,0,3,207,128, + 7,207,128,7,135,192,7,135,192,15,135,192,15,3,224,31, + 3,224,31,3,240,31,255,240,63,255,240,63,255,248,127,255, + 248,124,0,248,124,0,252,248,0,124,248,0,126,240,0,62, + 23,34,102,24,1,0,0,1,128,1,255,0,3,255,0,3, + 254,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,124,0,0,252,0,0,254,0,0,254,0,1,254,0, + 1,255,0,3,255,0,3,207,0,3,207,128,7,207,128,7, + 135,192,7,135,192,15,135,192,15,3,224,31,3,224,31,3, + 240,31,255,240,63,255,240,63,255,248,127,255,248,124,0,248, + 124,0,252,248,0,124,248,0,126,240,0,62,23,34,102,25, + 1,0,3,199,128,3,199,128,3,199,128,3,199,128,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,124,0, + 0,124,0,0,254,0,0,254,0,1,255,0,1,255,0,1, + 239,0,3,239,128,3,239,128,3,199,128,7,199,192,7,199, + 192,15,131,224,15,131,224,15,131,224,31,1,240,31,255,240, + 31,255,240,63,255,248,63,255,248,124,0,252,124,0,124,124, + 0,124,248,0,62,248,0,62,23,37,111,24,1,0,0,120, + 0,0,252,0,1,206,0,1,134,0,1,134,0,1,206,0, + 0,252,0,0,120,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,124,0,0,252,0,0,252,0,0,254,0,1,254, + 0,1,255,0,3,255,0,3,207,0,3,207,128,7,207,128, + 7,135,192,7,135,192,15,135,192,15,3,224,31,3,224,31, + 3,224,31,255,240,63,255,240,63,255,248,127,255,248,124,0, + 248,124,0,252,248,0,124,248,0,126,240,0,62,32,25,100, + 34,1,0,0,7,255,254,0,15,255,254,0,15,255,254,0, + 31,240,0,0,31,240,0,0,63,240,0,0,61,240,0,0, + 121,240,0,0,249,240,0,0,241,240,0,1,241,255,254,1, + 225,255,254,3,225,255,254,3,193,255,254,7,193,240,0,7, + 255,240,0,15,255,240,0,15,255,240,0,31,255,240,0,30, + 1,240,0,62,1,240,0,60,1,255,255,124,1,255,255,248, + 1,255,255,248,1,255,255,21,33,99,25,2,249,3,255,0, + 15,255,192,31,255,224,63,255,240,62,3,240,124,1,240,120, + 1,248,120,0,248,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,248, + 120,1,248,124,1,248,124,3,240,63,7,240,31,255,224,31, + 255,192,7,255,128,1,252,0,0,96,0,0,120,0,0,126, + 0,0,15,0,0,7,0,0,7,0,1,254,0,1,252,0, + 17,35,105,21,2,0,30,0,0,15,0,0,7,0,0,7, + 128,0,3,128,0,1,192,0,0,192,0,0,0,0,0,0, + 0,0,0,0,255,255,0,255,255,0,255,255,0,255,255,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,255,255,0,255,255,0,255,255,0,255,255,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,255,255,128,255,255,128,255,255,128,255,255,128,17, + 35,105,21,2,0,0,120,0,0,240,0,0,224,0,1,192, + 0,1,128,0,3,128,0,0,0,0,0,0,0,0,0,0, + 0,0,0,255,255,0,255,255,0,255,255,0,255,255,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,255,255,0,255,255,0,255,255,0,255,255,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,255,255,128,255,255,128,255,255,128,255,255,128,17,35, + 105,21,2,0,7,224,0,7,224,0,15,240,0,14,112,0, + 14,56,0,28,56,0,24,28,0,0,0,0,0,0,0,0, + 0,0,255,255,0,255,255,0,255,255,0,255,255,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 255,255,0,255,255,0,255,255,0,255,255,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,255,255,128,255,255,128,255,255,128,255,255,128,17,34,102, + 21,2,0,30,60,0,30,60,0,30,60,0,30,60,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255, + 0,255,255,0,255,255,0,255,255,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,255,255,0,255, + 255,0,255,255,0,255,255,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,255,255,128, + 255,255,128,255,255,128,255,255,128,8,35,35,9,255,0,240, + 120,56,60,28,12,6,0,0,0,31,31,31,31,31,31,31, + 31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31, + 31,31,7,35,35,8,2,0,30,28,60,56,112,96,224,0, + 0,0,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,11,35,70,9,255, + 0,31,0,63,0,63,128,59,128,113,192,97,192,192,224,0, + 0,0,0,0,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,11,34,68,11,0,0,241,224,241, + 224,241,224,241,224,0,0,0,0,0,0,0,0,0,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,23,25,75,24,0,0,63,252,0,63,255,128,63,255,192, + 63,255,224,62,7,240,62,1,248,62,0,248,62,0,124,62, + 0,124,62,0,60,62,0,60,255,240,62,255,240,62,255,240, + 62,62,0,60,62,0,60,62,0,124,62,0,124,62,0,248, + 62,1,248,62,7,240,63,255,224,63,255,192,63,255,128,63, + 252,0,21,34,102,25,2,0,0,3,0,1,255,0,3,254, + 0,7,252,0,6,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,254,0,248,255,0,248,255,0,248,255,128,248,255, + 128,248,255,192,248,255,192,248,251,224,248,251,224,248,249,224, + 248,249,240,248,248,240,248,248,248,248,248,120,248,248,124,248, + 248,60,248,248,62,248,248,30,248,248,31,248,248,31,248,248, + 15,248,248,15,248,248,7,248,248,7,248,248,3,248,23,36, + 108,27,2,0,7,192,0,3,192,0,1,224,0,0,224,0, + 0,240,0,0,112,0,0,56,0,0,0,0,0,0,0,0, + 0,0,0,0,0,3,255,128,7,255,192,31,255,240,31,255, + 240,63,1,248,126,0,252,124,0,124,120,0,60,248,0,62, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,124,0,124,124,0,124,62,0, + 248,63,131,248,31,255,240,15,255,224,7,255,192,0,254,0, + 23,36,108,27,2,0,0,7,192,0,7,128,0,15,0,0, + 14,0,0,28,0,0,24,0,0,48,0,0,0,0,0,0, + 0,0,0,0,0,0,0,3,255,128,7,255,192,31,255,240, + 31,255,240,63,1,248,126,0,252,124,0,124,120,0,60,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,248,0, + 62,248,0,62,248,0,62,248,0,62,124,0,124,124,0,124, + 62,0,248,63,131,248,31,255,240,15,255,224,7,255,192,0, + 254,0,23,36,108,27,2,0,0,124,0,0,254,0,0,254, + 0,1,239,0,1,199,0,3,131,128,3,1,128,0,0,0, + 0,0,0,0,0,0,0,0,0,3,255,128,7,255,192,31, + 255,240,31,255,240,63,1,248,126,0,252,124,0,124,120,0, + 60,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,248,0,62,248,0,62,248,0,62,124,0,124,124, + 0,124,62,0,248,63,131,248,31,255,240,15,255,224,7,255, + 192,0,254,0,23,34,102,27,2,0,0,241,128,1,255,128, + 3,255,0,3,30,0,3,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,3,255,128,7,255,192,31,255,240,31,255, + 240,63,1,248,126,0,252,124,0,124,120,0,60,248,0,62, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,124,0,124,124,0,124,62,0, + 248,63,131,248,31,255,240,15,255,224,7,255,192,0,254,0, + 23,34,102,27,2,0,3,199,128,3,199,128,3,199,128,3, + 199,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,3,255,128,7,255,192,31,255,240,31,255,240,63,1,248, + 126,0,252,124,0,124,120,0,60,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,248,0, + 62,248,0,62,124,0,124,124,0,124,62,0,248,63,131,248, + 31,255,240,15,255,224,7,255,192,0,254,0,18,19,57,34, + 8,1,64,0,0,224,0,192,112,1,128,56,3,0,28,6, + 0,14,12,0,6,24,0,3,48,0,1,224,0,0,192,0, + 1,224,0,3,48,0,6,24,0,12,12,0,24,6,0,48, + 3,0,112,1,128,224,1,192,64,0,128,25,28,112,27,1, + 255,0,0,1,0,0,0,3,128,1,255,195,128,3,255,247, + 0,15,255,254,0,15,255,252,0,31,128,252,0,63,0,126, + 0,62,0,254,0,60,1,254,0,124,3,223,0,124,7,159, + 0,124,15,31,0,124,30,31,0,124,60,31,0,124,120,31, + 0,124,240,31,0,125,224,31,0,127,192,31,0,63,128,62, + 0,63,0,62,0,63,0,124,0,31,193,252,0,63,255,248, + 0,127,255,240,0,243,255,224,0,224,127,0,0,64,0,0, + 0,21,36,108,25,2,0,15,0,0,7,128,0,3,192,0, + 3,192,0,1,224,0,0,224,0,0,112,0,0,0,0,0, + 0,0,0,0,0,0,0,0,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,248,248,0,248,248,0,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,240,248,0,240,120,1, + 240,124,3,240,127,7,224,63,255,192,31,255,128,15,255,0, + 3,252,0,21,36,108,25,2,0,0,15,128,0,15,0,0, + 30,0,0,60,0,0,56,0,0,112,0,0,96,0,0,0, + 0,0,0,0,0,0,0,0,0,0,248,0,248,248,0,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,248,248,0,240,248,0,240, + 120,1,240,124,3,240,127,7,224,63,255,192,31,255,128,15, + 255,0,3,252,0,21,36,108,25,2,0,0,248,0,1,248, + 0,1,252,0,3,220,0,7,142,0,7,14,0,14,7,0, + 0,0,0,0,0,0,0,0,0,0,0,0,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,248,248,0,248,248,0,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,240,248, + 0,240,120,1,240,124,3,240,127,7,224,63,255,192,31,255, + 128,15,255,0,3,252,0,21,34,102,25,2,0,7,143,0, + 7,143,0,7,143,0,7,143,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,248,248,0,248,248,0,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,240,248,0,240,124,1, + 240,124,3,240,127,7,224,63,255,192,31,255,128,15,255,0, + 3,252,0,21,35,105,22,1,0,0,30,0,0,30,0,0, + 28,0,0,56,0,0,48,0,0,112,0,0,0,0,0,0, + 0,0,0,0,0,0,0,252,1,248,252,1,240,126,3,224, + 126,3,224,63,7,192,31,7,192,31,143,128,15,143,128,15, + 223,0,7,223,0,7,254,0,3,254,0,3,252,0,1,248, + 0,1,248,0,0,240,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,18,25,75,22,2,0,248,0,0,248,0,0,248,0, + 0,248,0,0,255,240,0,255,254,0,255,255,0,255,255,128, + 248,15,128,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,15,192,255,255,128,255,255,0,255,254,0,255,240, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,18,25,75,19,1,1,31,240,0,63,252,0,127, + 252,0,248,62,0,248,62,0,248,62,0,248,62,0,248,124, + 0,248,248,0,248,240,0,249,240,0,251,224,0,251,224,0, + 249,248,0,249,252,0,248,127,0,248,63,128,248,15,128,248, + 7,128,248,7,192,251,199,192,251,199,128,249,255,128,249,255, + 0,248,126,0,15,28,56,19,2,0,60,0,30,0,14,0, + 7,0,7,0,3,128,1,128,0,0,0,0,0,0,7,224, + 63,248,127,252,124,62,120,62,0,62,15,254,63,254,127,254, + 124,62,248,62,248,62,248,62,248,62,252,126,127,254,63,222, + 31,30,15,28,56,19,2,0,0,120,0,240,0,240,1,224, + 1,192,1,128,3,0,0,0,0,0,0,0,7,224,63,248, + 127,252,124,62,120,62,0,62,15,254,63,254,127,254,124,62, + 248,62,248,62,248,62,248,62,252,126,127,254,63,222,31,30, + 15,28,56,19,2,0,7,192,7,224,15,224,14,240,28,112, + 24,56,56,24,0,0,0,0,0,0,7,224,63,248,127,252, + 124,62,120,62,0,62,15,254,63,254,127,254,124,62,248,62, + 248,62,248,62,248,62,252,126,127,254,63,222,31,30,15,26, + 52,19,2,0,0,24,15,248,31,240,31,224,48,0,0,0, + 0,0,0,0,7,224,63,248,127,252,124,62,120,62,0,62, + 15,254,63,254,127,254,124,62,248,62,248,62,248,62,248,62, + 252,126,127,254,63,222,31,30,15,27,54,19,2,0,60,120, + 60,120,60,120,60,120,0,0,0,0,0,0,0,0,0,0, + 15,224,63,248,127,252,124,62,120,62,0,62,15,254,63,254, + 127,254,124,62,248,62,248,62,248,62,248,62,252,126,127,254, + 63,222,31,30,15,30,60,19,2,0,3,192,7,224,14,112, + 12,48,12,48,14,112,7,224,3,192,0,0,0,0,0,0, + 0,0,7,224,31,248,63,252,124,62,120,62,0,62,15,254, + 63,254,127,254,124,62,248,62,248,62,248,62,248,62,252,126, + 127,254,63,222,31,30,27,18,72,31,2,0,7,224,124,0, + 31,249,255,0,127,253,255,128,124,63,135,192,120,31,3,192, + 0,31,3,224,7,255,255,224,63,255,255,224,127,255,255,224, + 124,31,0,0,248,31,0,0,248,31,0,0,248,31,131,224, + 248,31,131,192,252,59,199,192,127,241,255,192,63,224,255,128, + 15,128,126,0,15,26,52,18,2,248,7,224,31,248,63,252, + 124,124,120,60,248,62,248,62,248,0,248,0,248,0,248,0, + 248,62,248,62,120,60,124,124,63,252,31,248,15,224,3,0, + 3,128,3,224,0,240,0,112,0,112,15,224,15,192,15,28, + 56,19,2,0,62,0,30,0,15,0,7,0,7,128,3,128, + 1,192,0,0,0,0,0,0,7,224,31,248,63,252,124,60, + 120,62,248,30,248,30,255,254,255,254,255,254,248,0,248,0, + 248,30,120,62,124,62,63,252,31,248,7,224,15,28,56,19, + 2,0,0,120,0,112,0,240,0,224,1,192,1,128,3,0, + 0,0,0,0,0,0,7,224,31,248,63,252,124,60,120,62, + 248,30,248,30,255,254,255,254,255,254,248,0,248,0,248,30, + 120,62,124,62,63,252,31,248,7,224,15,28,56,19,2,0, + 7,224,7,224,15,224,14,112,28,112,28,56,56,24,0,0, + 0,0,0,0,7,224,31,248,63,252,124,60,120,62,248,30, + 248,30,255,254,255,254,255,254,248,0,248,0,248,30,120,62, + 124,62,63,252,31,248,7,224,15,27,54,19,2,0,60,120, + 60,120,60,120,60,120,0,0,0,0,0,0,0,0,0,0, + 7,224,31,248,63,252,124,124,120,62,248,62,248,62,255,254, + 255,254,255,254,248,0,248,0,248,62,120,62,124,126,63,252, + 31,248,7,224,8,28,28,9,255,0,240,120,120,60,28,14, + 6,0,0,0,31,31,31,31,31,31,31,31,31,31,31,31, + 31,31,31,31,31,31,7,28,28,8,2,0,30,60,56,120, + 112,224,192,0,0,0,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,10,28,56,9,255,0,31,0, + 63,0,63,128,123,128,115,192,97,192,224,192,0,0,0,0, + 0,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,11,26,52,9,255,0,241,224,241,224, + 241,224,241,224,0,0,0,0,0,0,0,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 18,26,78,21,2,0,0,1,0,15,135,0,3,254,0,1, + 248,0,3,248,0,15,252,0,60,60,0,16,30,0,7,255, + 0,31,255,0,63,255,0,126,31,128,124,15,128,248,15,128, + 248,7,128,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,128,120,15,128,124,15,128,126,31,0,63,255,0,31,252, + 0,3,240,0,16,26,52,20,2,0,0,24,15,248,31,248, + 31,240,48,0,0,0,0,0,0,0,249,248,251,252,255,254, + 252,63,252,31,248,31,248,31,248,31,248,31,248,31,248,31, + 248,31,248,31,248,31,248,31,248,31,248,31,248,31,18,28, + 84,21,2,0,31,0,0,15,0,0,7,128,0,3,128,0, + 3,192,0,1,192,0,0,224,0,0,0,0,0,0,0,0, + 0,0,3,240,0,15,252,0,63,254,0,62,31,0,124,15, + 128,120,15,128,248,7,128,248,7,128,248,7,192,248,7,192, + 248,7,192,248,7,128,120,15,128,124,15,128,62,31,0,63, + 254,0,15,252,0,3,240,0,18,28,84,21,2,0,0,60, + 0,0,56,0,0,120,0,0,112,0,0,224,0,0,192,0, + 1,128,0,0,0,0,0,0,0,0,0,0,3,240,0,15, + 252,0,63,254,0,62,31,0,124,15,128,120,15,128,248,7, + 128,248,7,128,248,7,192,248,7,192,248,7,192,248,7,128, + 120,15,128,124,15,128,62,31,0,63,254,0,15,252,0,3, + 240,0,18,28,84,21,2,0,3,224,0,3,240,0,7,240, + 0,7,56,0,14,56,0,14,28,0,28,12,0,0,0,0, + 0,0,0,0,0,0,3,240,0,15,252,0,63,254,0,62, + 31,0,124,15,128,120,15,128,248,7,128,248,7,128,248,7, + 192,248,7,192,248,7,192,248,7,128,120,15,128,124,15,128, + 62,31,0,63,254,0,15,252,0,3,240,0,18,27,81,21, + 2,0,0,4,0,0,12,0,7,252,0,15,248,0,15,240, + 0,24,0,0,0,0,0,0,0,0,0,0,0,3,240,0, + 15,252,0,63,254,0,62,31,0,124,15,128,120,15,128,248, + 7,128,248,7,128,248,7,192,248,7,192,248,7,192,248,7, + 128,120,15,128,124,15,128,62,31,0,63,254,0,15,252,0, + 3,240,0,18,27,81,21,2,0,30,60,0,30,60,0,30, + 60,0,30,60,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,3,240,0,15,252,0,63,254,0,62,31,0, + 124,15,128,120,15,128,248,7,128,248,7,128,248,7,192,248, + 7,192,248,7,192,248,7,128,120,15,128,124,15,128,62,31, + 0,63,254,0,15,252,0,3,240,0,20,15,45,34,7,3, + 0,112,0,0,248,0,0,248,0,0,112,0,0,0,0,0, + 0,0,0,0,0,255,255,240,255,255,240,0,0,0,0,0, + 0,0,112,0,0,248,0,0,248,0,0,112,0,18,23,69, + 21,2,254,0,1,0,0,1,128,0,3,128,3,247,0,15, + 255,0,63,254,0,62,31,0,124,63,128,120,55,128,248,119, + 128,248,231,128,249,199,192,251,135,192,251,135,192,255,7,128, + 126,15,128,124,15,128,62,31,0,63,254,0,127,252,0,227, + 240,0,224,0,0,192,0,0,16,28,56,20,2,0,62,0, + 30,0,15,0,7,0,3,128,3,128,1,192,0,0,0,0, + 0,0,248,31,248,31,248,31,248,31,248,31,248,31,248,31, + 248,31,248,31,248,31,248,31,248,31,248,31,248,31,252,63, + 127,255,63,223,31,159,16,28,56,20,2,0,0,120,0,240, + 0,240,0,224,1,192,1,128,3,0,0,0,0,0,0,0, + 248,31,248,31,248,31,248,31,248,31,248,31,248,31,248,31, + 248,31,248,31,248,31,248,31,248,31,248,31,252,63,127,255, + 63,223,31,159,16,28,56,20,2,0,7,224,7,224,15,240, + 14,112,28,56,28,56,56,28,0,0,0,0,0,0,248,31, + 248,31,248,31,248,31,248,31,248,31,248,31,248,31,248,31, + 248,31,248,31,248,31,248,31,248,31,252,63,127,255,63,223, + 31,159,16,27,54,20,2,0,60,120,60,120,60,120,60,120, + 0,0,0,0,0,0,0,0,0,0,248,31,248,31,248,31, + 248,31,248,31,248,31,248,31,248,31,248,31,248,31,248,31, + 248,31,248,31,248,31,252,63,127,255,63,223,31,159,17,35, + 105,19,1,249,0,30,0,0,60,0,0,56,0,0,120,0, + 0,112,0,0,224,0,0,192,0,0,0,0,0,0,0,0, + 0,0,248,15,128,248,15,128,252,15,128,124,31,0,126,31, + 0,62,31,0,62,62,0,63,62,0,31,60,0,31,124,0, + 15,252,0,15,248,0,15,248,0,7,248,0,7,240,0,3, + 240,0,3,240,0,3,224,0,3,224,0,3,192,0,103,192, + 0,255,192,0,255,192,0,127,128,0,62,0,0,17,32,96, + 21,2,249,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,249,240,0,255,252,0,255,254, + 0,254,63,0,252,31,0,248,15,128,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,252, + 31,0,254,63,0,255,254,0,255,252,0,251,240,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,17,33,99,19,1,249,30,60,0,30,60,0,30, + 60,0,30,60,0,0,0,0,0,0,0,0,0,0,0,0, + 0,248,15,128,248,15,128,252,15,128,124,31,0,124,31,0, + 126,31,0,62,62,0,63,62,0,31,62,0,31,124,0,31, + 252,0,15,248,0,15,248,0,7,248,0,7,240,0,7,240, + 0,3,240,0,3,224,0,3,224,0,3,224,0,7,192,0, + 7,192,0,7,192,0,15,128,0,15,128,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--34-340-72-72-P-170-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 25 + Calculated Max Values w=20 h=28 x= 7 y=13 dx=34 dy= 0 ascent=26 len=75 + Font Bounding box w=50 h=46 x=-2 y=-9 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =25 descent= 0 + X Font ascent =25 descent= 0 + Max Font ascent =26 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub25n[957] U8G_SECTION(".progmem.u8g_font_fub25n") = { + 0,50,46,254,247,25,0,0,0,0,42,57,0,26,251,25, + 0,14,13,26,22,4,13,28,224,60,240,28,224,15,192,135, + 132,255,252,255,252,231,156,15,192,30,224,28,224,60,240,8, + 64,20,21,63,34,7,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,96,0,0,96,0,0, + 96,0,255,255,240,255,255,240,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,7,9,9,11,2,251,62,60,60,120, + 120,112,240,240,224,9,5,10,11,1,7,255,128,255,128,255, + 128,255,128,255,128,5,5,5,10,3,0,248,248,248,248,248, + 11,28,56,15,2,254,0,224,0,224,1,192,1,192,1,192, + 3,128,3,128,3,128,3,128,7,0,7,0,7,0,14,0, + 14,0,14,0,28,0,28,0,28,0,56,0,56,0,56,0, + 56,0,112,0,112,0,112,0,224,0,224,0,224,0,17,25, + 75,19,1,1,7,224,0,31,252,0,63,254,0,60,30,0, + 120,15,0,120,15,0,120,15,0,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,248,15,128,248,15, + 128,248,15,128,248,15,128,248,15,128,120,15,0,120,15,0, + 120,15,0,60,30,0,31,252,0,15,248,0,7,224,0,11, + 25,50,19,3,1,3,224,15,224,31,224,127,224,255,224,251, + 224,243,224,195,224,3,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,17,25,75,19,1,1,7,248,0, + 31,254,0,31,255,0,63,255,0,126,31,128,124,15,128,124, + 15,128,0,15,128,0,15,128,0,31,0,0,31,0,0,62, + 0,0,126,0,0,252,0,1,248,0,3,240,0,7,224,0, + 15,192,0,63,0,0,126,0,0,252,0,0,255,255,128,255, + 255,128,255,255,128,255,255,128,16,25,50,19,2,1,31,240, + 63,252,127,254,255,254,248,62,248,31,0,31,0,30,0,126, + 7,252,7,240,7,248,7,252,0,62,0,31,0,31,0,31, + 248,31,248,31,248,31,252,62,127,254,127,252,31,248,15,224, + 18,25,75,19,1,1,0,126,0,0,254,0,0,254,0,1, + 254,0,3,254,0,3,254,0,7,190,0,15,190,0,15,62, + 0,30,62,0,30,62,0,60,62,0,124,62,0,120,62,0, + 240,62,0,255,255,192,255,255,192,255,255,192,255,255,192,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,0,0,62, + 0,17,25,75,19,1,1,255,254,0,255,254,0,255,254,0, + 255,254,0,248,0,0,248,0,0,248,0,0,248,0,0,249, + 240,0,255,252,0,255,254,0,252,63,0,248,31,0,248,15, + 0,0,15,128,0,15,128,0,15,128,0,15,0,248,15,0, + 248,31,0,252,63,0,127,254,0,127,252,0,63,248,0,15, + 224,0,17,25,75,19,1,1,3,240,0,15,252,0,31,254, + 0,63,255,0,62,31,0,126,15,128,124,0,0,124,0,0, + 252,0,0,248,248,0,251,254,0,255,254,0,255,31,0,254, + 15,128,252,15,128,252,15,128,252,15,128,252,15,128,124,15, + 128,126,15,128,127,31,0,63,255,0,31,254,0,15,252,0, + 3,240,0,16,25,50,19,2,1,255,255,255,255,255,255,255, + 255,0,15,0,31,0,30,0,62,0,62,0,124,0,124,0, + 248,0,248,0,240,1,240,1,240,3,224,3,224,7,192,7, + 192,15,128,15,128,15,128,31,0,31,0,17,25,75,19,1, + 1,7,240,0,31,252,0,127,255,0,127,255,0,252,31,128, + 248,15,128,248,15,128,120,15,0,124,31,0,63,254,0,15, + 248,0,31,248,0,63,254,0,124,63,0,248,15,0,248,15, + 128,248,15,128,248,15,128,248,15,128,248,15,128,252,31,128, + 127,255,0,127,255,0,31,252,0,7,240,0,17,25,75,19, + 1,1,7,240,0,31,252,0,63,254,0,127,254,0,124,63, + 0,248,31,0,248,31,0,248,31,128,248,31,128,248,31,128, + 248,63,128,124,63,128,127,255,128,63,239,128,15,207,128,0, + 15,128,0,31,0,0,31,0,248,31,0,120,63,0,124,126, + 0,63,254,0,63,252,0,31,248,0,7,224,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--34-340-72-72-P-170-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 25, '1' Height: 25 + Calculated Max Values w=34 h=37 x= 8 y=21 dx=35 dy= 0 ascent=28 len=160 + Font Bounding box w=50 h=46 x=-2 y=-9 + Calculated Min Values x=-1 y=-9 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =28 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub25r[5936] U8G_SECTION(".progmem.u8g_font_fub25r") = { + 0,50,46,254,247,25,7,111,16,148,32,127,249,28,247,25, + 249,0,0,0,10,0,0,5,25,25,14,5,0,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 0,0,248,248,248,248,13,10,20,18,2,15,248,248,248,248, + 248,248,120,248,120,120,120,120,120,120,120,120,120,112,120,112, + 21,25,75,24,2,0,0,224,224,0,225,224,0,225,192,1, + 225,192,1,195,192,1,195,128,31,255,248,31,255,240,63,255, + 240,7,135,0,7,135,0,7,15,0,7,14,0,15,14,0, + 14,14,0,255,255,192,255,255,192,255,255,192,28,60,0,28, + 60,0,60,56,0,56,56,0,56,120,0,120,112,0,112,112, + 0,18,31,93,20,1,252,0,192,0,0,192,0,3,248,0, + 15,252,0,31,254,0,63,255,0,126,223,0,120,207,128,248, + 207,128,248,192,0,252,192,0,126,192,0,127,192,0,127,240, + 0,31,252,0,7,255,0,1,255,128,0,255,128,0,207,128, + 0,199,192,248,199,192,248,199,192,248,207,128,126,223,128,127, + 255,0,63,254,0,15,252,0,3,240,0,0,192,0,0,192, + 0,0,192,0,32,26,104,34,1,0,0,0,3,128,15,192, + 7,0,63,240,7,0,124,248,14,0,120,120,14,0,240,60, + 28,0,240,60,24,0,240,60,56,0,240,60,112,0,240,60, + 112,0,120,120,224,0,120,120,224,0,63,241,199,248,15,195, + 143,252,0,3,159,62,0,7,30,30,0,7,60,15,0,14, + 60,15,0,30,60,15,0,28,60,15,0,56,60,15,0,56, + 60,15,0,112,30,30,0,112,15,60,0,224,15,252,1,224, + 3,240,24,25,75,27,2,1,7,252,0,31,254,0,31,255, + 0,62,31,0,62,31,0,62,31,0,62,31,0,30,62,0, + 31,126,0,15,252,0,7,240,0,15,224,0,63,224,124,63, + 240,120,124,248,120,252,124,120,248,62,120,248,31,248,248,15, + 240,248,7,240,252,3,224,126,15,240,63,255,248,31,255,254, + 7,252,63,5,10,10,14,4,15,248,248,120,120,120,120,120, + 120,120,120,7,30,30,13,3,251,30,30,62,60,60,124,124, + 120,120,248,248,248,248,248,248,248,248,248,248,248,248,120,120, + 124,124,60,60,62,30,30,8,30,30,14,3,251,240,120,120, + 124,60,60,60,62,62,30,30,30,30,31,31,31,31,31,30, + 30,30,62,62,62,60,60,124,120,120,240,14,13,26,22,4, + 13,28,224,60,240,28,224,15,192,135,132,255,252,255,252,231, + 156,15,192,30,224,28,224,60,240,8,64,20,21,63,34,7, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,96,0,255,255,240,255, + 255,240,0,96,0,0,96,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 7,9,9,11,2,251,62,60,60,120,120,112,240,240,224,9, + 5,10,11,1,7,255,128,255,128,255,128,255,128,255,128,5, + 5,5,10,3,0,248,248,248,248,248,11,28,56,15,2,254, + 0,224,0,224,1,192,1,192,1,192,3,128,3,128,3,128, + 3,128,7,0,7,0,7,0,14,0,14,0,14,0,28,0, + 28,0,28,0,56,0,56,0,56,0,56,0,112,0,112,0, + 112,0,224,0,224,0,224,0,17,25,75,19,1,1,7,224, + 0,31,252,0,63,254,0,60,30,0,120,15,0,120,15,0, + 120,15,0,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,248,15,128,248,15, + 128,248,15,128,120,15,0,120,15,0,120,15,0,60,30,0, + 31,252,0,15,248,0,7,224,0,11,25,50,19,3,1,3, + 224,15,224,31,224,127,224,255,224,251,224,243,224,195,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,17,25,75,19,1,1,7,248,0,31,254,0,31,255,0, + 63,255,0,126,31,128,124,15,128,124,15,128,0,15,128,0, + 15,128,0,31,0,0,31,0,0,62,0,0,126,0,0,252, + 0,1,248,0,3,240,0,7,224,0,15,192,0,63,0,0, + 126,0,0,252,0,0,255,255,128,255,255,128,255,255,128,255, + 255,128,16,25,50,19,2,1,31,240,63,252,127,254,255,254, + 248,62,248,31,0,31,0,30,0,126,7,252,7,240,7,248, + 7,252,0,62,0,31,0,31,0,31,248,31,248,31,248,31, + 252,62,127,254,127,252,31,248,15,224,18,25,75,19,1,1, + 0,126,0,0,254,0,0,254,0,1,254,0,3,254,0,3, + 254,0,7,190,0,15,190,0,15,62,0,30,62,0,30,62, + 0,60,62,0,124,62,0,120,62,0,240,62,0,255,255,192, + 255,255,192,255,255,192,255,255,192,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,17,25,75,19,1, + 1,255,254,0,255,254,0,255,254,0,255,254,0,248,0,0, + 248,0,0,248,0,0,248,0,0,249,240,0,255,252,0,255, + 254,0,252,63,0,248,31,0,248,15,0,0,15,128,0,15, + 128,0,15,128,0,15,0,248,15,0,248,31,0,252,63,0, + 127,254,0,127,252,0,63,248,0,15,224,0,17,25,75,19, + 1,1,3,240,0,15,252,0,31,254,0,63,255,0,62,31, + 0,126,15,128,124,0,0,124,0,0,252,0,0,248,248,0, + 251,254,0,255,254,0,255,31,0,254,15,128,252,15,128,252, + 15,128,252,15,128,252,15,128,124,15,128,126,15,128,127,31, + 0,63,255,0,31,254,0,15,252,0,3,240,0,16,25,50, + 19,2,1,255,255,255,255,255,255,255,255,0,15,0,31,0, + 30,0,62,0,62,0,124,0,124,0,248,0,248,0,240,1, + 240,1,240,3,224,3,224,7,192,7,192,15,128,15,128,15, + 128,31,0,31,0,17,25,75,19,1,1,7,240,0,31,252, + 0,127,255,0,127,255,0,252,31,128,248,15,128,248,15,128, + 120,15,0,124,31,0,63,254,0,15,248,0,31,248,0,63, + 254,0,124,63,0,248,15,0,248,15,128,248,15,128,248,15, + 128,248,15,128,248,15,128,252,31,128,127,255,0,127,255,0, + 31,252,0,7,240,0,17,25,75,19,1,1,7,240,0,31, + 252,0,63,254,0,127,254,0,124,63,0,248,31,0,248,31, + 0,248,31,128,248,31,128,248,31,128,248,63,128,124,63,128, + 127,255,128,63,239,128,15,207,128,0,15,128,0,31,0,0, + 31,0,248,31,0,120,63,0,124,126,0,63,254,0,63,252, + 0,31,248,0,7,224,0,5,18,18,11,5,0,248,248,248, + 248,248,0,0,0,0,0,0,0,0,248,248,248,248,248,7, + 22,22,11,2,252,62,62,62,62,62,0,0,0,0,0,0, + 0,0,62,60,124,120,120,112,240,224,224,21,19,57,34,7, + 1,0,0,8,0,0,56,0,1,248,0,15,192,0,62,0, + 1,248,0,7,192,0,62,0,0,248,0,0,192,0,0,248, + 0,0,62,0,0,7,192,0,1,248,0,0,62,0,0,7, + 192,0,1,248,0,0,56,0,0,8,20,8,24,34,7,6, + 255,255,240,255,255,240,0,0,0,0,0,0,0,0,0,0, + 0,0,255,255,240,255,255,240,21,17,51,34,7,2,224,0, + 0,248,0,0,63,0,0,7,224,0,0,248,0,0,63,0, + 0,7,192,0,0,248,0,0,56,0,0,248,0,7,192,0, + 63,0,0,248,0,7,224,0,31,0,0,248,0,0,224,0, + 0,16,25,50,19,1,1,31,240,63,248,127,252,248,62,112, + 30,48,31,0,31,0,30,0,62,0,60,0,120,0,240,1, + 224,3,192,3,128,3,128,3,128,3,128,3,128,0,0,0, + 0,7,192,7,192,7,192,7,192,33,32,160,35,1,250,0, + 31,254,0,0,0,127,255,128,0,1,255,255,224,0,3,255, + 255,240,0,7,240,3,248,0,15,192,1,252,0,31,128,0, + 124,0,63,7,159,126,0,62,31,255,63,0,124,63,255,31, + 0,124,127,255,31,0,120,126,63,31,0,248,252,31,15,0, + 248,248,31,15,128,248,248,31,15,128,248,248,31,15,128,248, + 248,31,15,0,248,248,31,15,0,248,248,31,15,0,248,248, + 31,31,0,120,124,63,30,0,124,124,127,190,0,124,63,255, + 252,0,62,31,231,248,0,63,7,195,240,0,31,128,0,0, + 0,15,192,0,0,0,7,248,3,0,0,3,255,255,0,0, + 1,255,255,0,0,0,127,255,0,0,0,7,255,0,0,23, + 25,75,24,1,0,0,124,0,0,252,0,0,254,0,0,254, + 0,1,254,0,1,255,0,3,255,0,3,207,0,3,207,128, + 7,207,128,7,135,192,7,135,192,15,135,192,15,3,224,31, + 3,224,31,3,240,31,255,240,63,255,240,63,255,248,127,255, + 248,124,0,248,124,0,252,248,0,124,248,0,126,240,0,62, + 19,25,75,23,2,0,255,248,0,255,254,0,255,255,0,255, + 255,0,248,63,0,248,15,128,248,15,128,248,15,0,248,15, + 0,248,63,0,255,254,0,255,248,0,255,252,0,255,255,0, + 248,15,192,248,3,192,248,3,224,248,3,224,248,3,224,248, + 3,224,248,7,224,255,255,192,255,255,128,255,255,0,255,252, + 0,21,25,75,25,2,1,3,255,0,15,255,192,31,255,224, + 63,255,240,62,3,240,124,1,240,120,1,248,120,0,248,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,1,248,120,1,248,124,1,248, + 124,3,240,63,7,240,31,255,224,15,255,192,7,255,0,1, + 252,0,20,25,75,23,2,0,255,224,0,255,252,0,255,254, + 0,255,255,0,248,63,128,248,15,192,248,7,192,248,3,224, + 248,3,224,248,1,224,248,1,224,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,224,248,3,224,248,3,224,248,7, + 192,248,15,192,248,63,128,255,255,0,255,254,0,255,252,0, + 255,224,0,17,25,75,21,2,0,255,255,0,255,255,0,255, + 255,0,255,255,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,255,255,0,255,255,0,255,255,0, + 255,255,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,255,255,128,255,255,128,255,255, + 128,255,255,128,16,25,50,19,2,0,255,255,255,255,255,255, + 255,255,248,0,248,0,248,0,248,0,248,0,248,0,255,254, + 255,254,255,254,255,254,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,22,25,75,26, + 2,1,1,255,192,7,255,224,15,255,240,31,255,248,63,0, + 248,62,0,124,124,0,124,124,0,0,248,0,0,248,0,0, + 248,0,0,248,7,252,248,7,252,248,7,252,248,7,252,248, + 0,124,248,0,124,124,0,124,126,0,124,63,0,124,63,192, + 124,31,255,252,15,255,252,3,255,252,0,127,192,20,25,75, + 24,2,0,248,1,240,248,1,240,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,240,248,1,240,248,1,240,248,1, + 240,255,255,240,255,255,240,255,255,240,255,255,240,248,1,240, + 248,1,240,248,1,240,248,1,240,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,240,248,1,240,248,1,240,5,25, + 25,9,2,0,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,17,25,75, + 21,2,0,0,15,128,0,15,128,0,15,128,0,15,128,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,0,15,128,0,15,128,0,15,128,0,15,128,0,15,128, + 0,15,128,0,15,128,248,15,128,248,15,128,248,15,128,252, + 31,0,127,255,0,127,254,0,63,252,0,15,240,0,19,25, + 75,23,2,0,248,7,192,248,15,128,248,31,128,248,63,0, + 248,126,0,248,124,0,248,248,0,249,248,0,251,240,0,251, + 224,0,255,192,0,255,192,0,255,224,0,255,240,0,251,240, + 0,249,248,0,249,252,0,248,252,0,248,126,0,248,63,0, + 248,63,128,248,31,128,248,15,192,248,15,224,248,7,224,16, + 25,50,19,2,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,255, + 255,255,255,255,255,255,255,27,25,100,31,2,0,255,0,31, + 224,255,0,63,224,255,128,63,224,255,128,63,224,255,128,127, + 224,255,192,127,224,255,192,123,224,251,192,123,224,251,224,251, + 224,251,224,243,224,251,224,243,224,249,241,243,224,249,241,243, + 224,249,241,227,224,248,243,227,224,248,251,227,224,248,251,195, + 224,248,127,195,224,248,127,195,224,248,127,131,224,248,127,131, + 224,248,63,131,224,248,63,131,224,248,63,3,224,248,31,3, + 224,21,25,75,25,2,0,254,0,248,255,0,248,255,0,248, + 255,128,248,255,128,248,255,192,248,255,192,248,251,224,248,251, + 224,248,249,224,248,249,240,248,248,240,248,248,248,248,248,120, + 248,248,124,248,248,60,248,248,62,248,248,30,248,248,31,248, + 248,31,248,248,15,248,248,15,248,248,7,248,248,7,248,248, + 3,248,23,25,75,27,2,1,3,255,128,7,255,192,31,255, + 240,31,255,240,63,1,248,126,0,252,124,0,124,120,0,60, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,124,0,124,124,0, + 124,62,0,248,63,131,248,31,255,240,15,255,224,7,255,192, + 0,254,0,18,25,75,21,2,0,255,240,0,255,252,0,255, + 255,0,255,255,128,248,31,128,248,15,128,248,7,192,248,7, + 192,248,7,192,248,15,128,248,31,128,255,255,128,255,255,0, + 255,252,0,255,240,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,26,25,100,29,2,1,3,255,128,0,7,255, + 192,0,31,255,224,0,31,255,240,0,63,1,248,0,126,0, + 252,0,124,0,124,0,120,0,60,0,248,0,62,0,248,0, + 62,0,248,0,62,0,248,0,62,0,248,0,62,0,248,0, + 62,0,248,0,62,0,248,0,62,0,120,0,60,0,124,0, + 124,0,124,0,124,0,62,0,248,0,63,131,240,0,31,255, + 255,192,15,255,255,192,3,255,255,192,0,255,255,192,19,25, + 75,22,2,0,255,252,0,255,255,0,255,255,128,255,255,192, + 248,15,192,248,7,224,248,3,224,248,3,224,248,3,192,248, + 7,192,248,31,128,255,255,0,255,252,0,255,255,0,255,255, + 128,248,15,128,248,7,192,248,7,192,248,7,192,248,3,192, + 248,3,192,248,3,192,248,3,224,248,3,224,248,3,224,20, + 25,75,23,2,1,7,254,0,15,255,0,31,255,128,63,255, + 192,126,7,192,124,3,192,124,3,224,124,0,0,124,0,0, + 127,0,0,63,240,0,31,254,0,7,255,128,1,255,192,0, + 31,224,0,3,224,0,1,240,248,1,240,248,1,240,248,3, + 224,126,7,224,127,255,192,63,255,128,15,255,0,3,248,0, + 20,25,75,22,1,0,255,255,240,255,255,240,255,255,240,255, + 255,240,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,21,25,75,25,2,0,248,0,248,248,0,248,248,0,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,240,248,0,240,120,1,240, + 124,3,240,127,7,224,63,255,192,31,255,128,15,255,0,3, + 252,0,24,25,75,25,1,0,248,0,63,248,0,62,252,0, + 62,124,0,124,124,0,124,126,0,124,62,0,248,63,0,248, + 63,1,240,31,1,240,31,129,240,31,131,224,15,131,224,15, + 195,224,7,199,192,7,199,192,7,231,128,3,239,128,3,255, + 128,3,255,0,1,255,0,1,254,0,1,254,0,0,254,0, + 0,252,0,34,25,125,34,0,0,252,3,240,15,192,252,3, + 240,15,128,124,3,240,15,128,126,7,248,15,128,126,7,248, + 15,128,126,7,248,31,0,62,7,248,31,0,62,15,252,31, + 0,63,15,60,30,0,63,15,60,62,0,31,15,60,62,0, + 31,31,62,62,0,31,30,30,60,0,31,158,30,60,0,15, + 158,30,124,0,15,190,31,124,0,15,188,15,120,0,7,252, + 15,120,0,7,252,15,120,0,7,252,15,248,0,7,248,7, + 240,0,3,248,7,240,0,3,248,7,240,0,3,248,7,240, + 0,3,240,3,224,0,22,25,75,24,1,0,252,0,248,126, + 1,248,62,1,240,63,3,224,31,135,192,15,135,192,15,207, + 128,7,239,0,3,255,0,3,254,0,1,252,0,0,252,0, + 0,252,0,1,254,0,3,254,0,3,255,0,7,223,128,15, + 143,128,15,15,192,31,7,224,62,3,224,62,3,240,124,1, + 248,248,1,248,248,0,252,21,25,75,22,1,0,252,1,248, + 252,1,240,126,3,224,126,3,224,63,7,192,31,7,192,31, + 143,128,15,143,128,15,223,0,7,223,0,7,254,0,3,254, + 0,3,252,0,1,248,0,1,248,0,0,240,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,18,25,75,22,2,0,127,255, + 192,127,255,192,127,255,192,127,255,192,0,15,192,0,31,128, + 0,63,0,0,63,0,0,126,0,0,252,0,1,252,0,1, + 248,0,3,240,0,7,224,0,7,224,0,15,192,0,31,128, + 0,63,128,0,63,0,0,126,0,0,252,0,0,255,255,192, + 255,255,192,255,255,192,255,255,192,8,32,32,13,3,249,255, + 255,255,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,255,255,255,11, + 28,56,15,2,254,224,0,224,0,240,0,240,0,240,0,112, + 0,120,0,120,0,56,0,60,0,60,0,28,0,30,0,30, + 0,30,0,15,0,15,0,15,0,7,0,7,128,7,128,3, + 128,3,192,3,192,1,192,1,224,1,224,1,224,8,32,32, + 13,3,249,255,255,255,31,31,31,31,31,31,31,31,31,31, + 31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31, + 255,255,255,18,21,63,34,8,0,0,192,0,0,224,0,1, + 224,0,1,224,0,1,48,0,3,48,0,2,24,0,6,24, + 0,6,24,0,4,12,0,12,12,0,12,14,0,24,6,0, + 24,6,0,24,7,0,48,3,0,48,3,0,112,1,128,96, + 1,128,96,1,192,192,0,192,17,3,9,17,0,251,255,255, + 128,255,255,128,255,255,128,7,7,7,9,255,21,248,120,60, + 60,28,14,6,15,18,36,19,2,0,7,224,63,248,127,252, + 124,62,120,62,0,62,15,254,63,254,127,254,124,62,248,62, + 248,62,248,62,248,62,252,126,127,254,63,222,31,30,17,25, + 75,20,2,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,249,240,0,255,252,0,255, + 254,0,254,63,0,252,31,0,248,15,128,248,15,128,248,15, + 128,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 252,31,0,254,63,0,255,254,0,251,252,0,249,240,0,15, + 18,36,18,2,0,7,224,31,248,63,252,124,124,120,60,248, + 62,248,0,248,0,248,0,248,0,248,0,248,62,248,62,120, + 60,124,124,63,252,31,248,15,224,17,25,75,21,2,0,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,0,15,128,7,207,128,31,255,128,63,255,128,126,63,128, + 124,31,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,124,31,128,126,63, + 128,63,255,128,31,239,128,7,207,128,15,18,36,19,2,0, + 7,224,31,248,63,252,124,60,120,62,248,30,248,30,255,254, + 255,254,255,254,248,0,248,0,248,30,120,62,124,62,63,252, + 31,248,7,224,12,25,50,13,1,0,7,240,15,240,31,240, + 31,0,31,0,31,0,31,0,255,224,255,224,255,224,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,17,25,75,21, + 2,249,7,207,128,31,255,128,63,255,128,126,63,128,124,31, + 128,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,124,31,128,126,63,128,63, + 255,128,31,239,128,7,207,128,0,15,128,0,15,128,124,15, + 128,124,31,0,63,254,0,31,252,0,7,240,0,16,25,50, + 20,2,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,249,248,255,252,255,254,254,63,252,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,5,25,25,9,2,0,248,248,248,248,248, + 0,0,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,6,32,32,12,4,249,124,124,124,124,124,0, + 0,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124, + 124,124,124,124,124,124,252,252,248,240,16,25,50,19,2,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,62, + 248,124,248,248,249,248,249,240,251,224,255,192,255,192,255,192, + 255,192,251,224,251,240,249,240,248,248,248,252,248,124,248,126, + 248,63,5,25,25,9,2,0,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,27,18,72,31,2,0,249,248,62,0,251,252,127,128,255, + 254,255,192,254,63,199,192,252,63,135,192,248,31,3,224,248, + 31,3,224,248,31,3,224,248,31,3,224,248,31,3,224,248, + 31,3,224,248,31,3,224,248,31,3,224,248,31,3,224,248, + 31,3,224,248,31,3,224,248,31,3,224,248,31,3,224,16, + 18,36,20,2,0,249,248,251,252,255,254,252,63,252,31,248, + 31,248,31,248,31,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,18,18,54,21,2,0,3, + 240,0,15,252,0,63,254,0,62,31,0,124,15,128,120,15, + 128,248,7,128,248,7,128,248,7,192,248,7,192,248,7,192, + 248,7,128,120,15,128,124,15,128,62,31,0,63,254,0,15, + 252,0,3,240,0,17,25,75,20,2,249,249,240,0,251,252, + 0,255,254,0,254,63,0,252,31,0,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,252,31,0,254,63,0,255,254,0,255,252,0,249,240, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,17,25,75,21,2,249,7,207,128,31, + 239,128,63,255,128,126,63,128,124,31,128,248,15,128,248,15, + 128,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 248,15,128,124,31,128,126,63,128,63,255,128,31,255,128,7, + 207,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,0,15,128,0,15,128,11,18,36,13,2,0,249,224,251, + 224,255,224,255,224,255,0,252,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,15,18,36,18,2,0,15,224,63,248,127,248,124,124,248, + 124,248,124,126,0,127,192,63,248,15,252,1,252,0,126,248, + 62,248,62,248,124,127,252,63,248,15,192,13,23,46,14,1, + 0,1,0,7,0,31,0,31,0,31,0,255,240,255,240,255, + 240,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,15,128,15,248,7,248,3,240,16, + 18,36,20,2,0,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,248,31,248,31,248,31,248, + 31,252,63,127,255,63,223,31,159,18,18,54,19,0,0,248, + 7,192,124,7,192,124,15,128,124,15,128,62,15,128,62,31, + 0,62,31,0,31,30,0,31,30,0,15,62,0,15,188,0, + 15,188,0,7,252,0,7,248,0,7,248,0,3,240,0,3, + 240,0,1,240,0,29,18,72,29,0,0,248,15,128,248,124, + 31,192,240,124,31,193,240,124,31,193,240,124,31,225,224,62, + 63,225,224,62,61,227,224,62,61,227,224,31,125,243,192,31, + 120,247,192,31,120,247,192,15,248,255,128,15,248,127,128,15, + 240,127,128,15,240,127,128,7,240,127,0,7,224,63,0,7, + 224,63,0,17,18,54,19,1,0,252,31,0,124,31,0,126, + 62,0,63,60,0,31,124,0,15,248,0,15,248,0,7,240, + 0,7,224,0,7,240,0,15,248,0,31,248,0,30,252,0, + 62,126,0,60,62,0,124,63,0,248,31,0,248,15,128,17, + 25,75,18,1,249,248,15,128,248,15,128,248,15,0,124,31, + 0,124,31,0,124,30,0,62,62,0,62,60,0,30,60,0, + 31,124,0,31,120,0,15,248,0,15,248,0,15,240,0,7, + 240,0,7,240,0,3,224,0,3,224,0,3,224,0,3,192, + 0,7,192,0,7,128,0,7,128,0,15,128,0,15,128,0, + 14,18,36,18,2,0,255,252,255,252,255,252,0,124,0,248, + 1,248,3,240,7,224,7,192,15,128,31,128,63,0,126,0, + 124,0,248,0,255,252,255,252,255,252,13,35,70,18,3,248, + 0,248,3,248,7,248,15,192,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,0,15,0,15,0,31,0,126,0, + 252,0,240,0,252,0,126,0,63,0,31,0,15,0,15,0, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,192, + 7,248,3,248,0,248,2,37,37,12,5,247,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,13,35,70,17,2,248,248,0,254,0,255,0,31,0,15, + 0,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,7,128,7,192,3,224,1,248,0,248,1,248,3,224,7, + 192,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,0,31,0,255,0,254,0,248,0,18,4,12, + 18,0,7,31,195,192,63,255,128,127,255,0,240,126,0,255 + }; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--40-400-72-72-P-198-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 30, '1' Height: 30 + Calculated Max Values w=38 h=43 x=10 y=26 dx=42 dy= 0 ascent=43 len=195 + Font Bounding box w=59 h=54 x=-3 y=-11 + Calculated Min Values x=-1 y=-11 dx= 0 dy= 0 + Pure Font ascent =30 descent=-7 + X Font ascent =31 descent=-8 + Max Font ascent =43 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub30[16953] U8G_SECTION(".progmem.u8g_font_fub30") = { + 0,59,54,253,245,30,9,163,21,182,32,255,249,43,245,31, + 248,0,0,0,12,0,0,5,30,30,16,5,0,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,0,0,0,248,248,248,248,248,15,12,24,21,3, + 18,252,126,252,126,252,126,252,126,248,126,248,126,248,60,248, + 60,120,60,120,60,120,60,120,60,25,30,120,29,2,0,0, + 60,30,0,0,60,30,0,0,120,60,0,0,120,60,0,0, + 120,60,0,0,120,120,0,0,240,120,0,0,240,120,0,15, + 255,255,128,31,255,255,0,31,255,255,0,31,255,255,0,1, + 224,224,0,3,193,224,0,3,193,224,0,3,193,224,0,7, + 131,192,0,7,131,192,0,127,255,252,0,255,255,248,0,255, + 255,248,0,255,255,248,0,15,7,128,0,30,15,0,0,30, + 15,0,0,30,15,0,0,62,30,0,0,60,30,0,0,60, + 30,0,0,60,30,0,0,21,37,111,23,1,252,0,96,0, + 0,96,0,0,96,0,3,254,0,15,255,128,31,255,192,63, + 255,224,127,111,224,126,99,240,124,99,240,124,97,240,124,96, + 0,124,96,0,126,96,0,127,224,0,127,240,0,63,254,0, + 31,255,128,7,255,224,0,255,240,0,127,240,0,103,248,0, + 97,248,248,97,248,248,96,248,252,97,248,252,97,248,126,99, + 240,127,255,240,63,255,224,31,255,192,15,255,128,3,254,0, + 0,96,0,0,96,0,0,96,0,0,96,0,37,30,150,41, + 2,0,7,224,0,120,0,31,248,0,240,0,63,252,0,240, + 0,124,62,1,224,0,120,30,3,224,0,240,15,3,192,0, + 240,15,7,192,0,240,15,7,128,0,240,15,15,0,0,240, + 15,15,0,0,240,15,30,0,0,240,15,30,0,0,120,30, + 60,0,0,124,62,124,0,0,63,252,120,63,0,31,248,248, + 255,192,7,224,241,255,224,0,1,227,225,240,0,1,227,192, + 240,0,3,199,128,120,0,3,199,128,120,0,7,135,128,120, + 0,7,135,128,120,0,15,7,128,120,0,31,7,128,120,0, + 30,3,192,240,0,62,3,192,240,0,60,1,243,224,0,120, + 1,255,192,0,120,0,127,128,28,30,120,31,2,1,3,255, + 0,0,15,255,128,0,31,255,192,0,63,143,224,0,63,7, + 224,0,62,3,224,0,63,7,224,0,63,7,224,0,31,15, + 192,0,31,159,192,0,15,255,128,0,15,255,0,0,7,252, + 0,0,15,248,0,0,31,248,15,128,63,252,15,128,63,126, + 15,128,126,127,15,128,126,63,143,128,252,31,207,128,252,15, + 255,0,248,7,255,0,248,3,255,0,252,1,254,0,252,0, + 254,0,126,0,254,0,127,131,255,0,63,255,255,128,31,255, + 255,224,7,255,135,240,6,12,12,16,5,18,252,252,252,124, + 124,124,124,124,120,120,120,120,9,36,72,16,4,251,15,128, + 31,0,31,0,31,0,62,0,62,0,62,0,126,0,124,0, + 124,0,124,0,124,0,252,0,252,0,252,0,252,0,248,0, + 248,0,248,0,248,0,248,0,252,0,252,0,252,0,124,0, + 124,0,124,0,124,0,126,0,62,0,62,0,62,0,31,0, + 31,0,31,0,15,128,8,36,36,16,4,251,240,248,120,124, + 124,124,62,62,62,63,63,31,31,31,31,31,31,31,31,31, + 31,31,31,31,63,63,63,62,62,62,124,124,124,248,248,240, + 16,16,32,26,5,14,4,32,28,56,30,120,30,120,15,240, + 7,224,227,199,255,255,255,255,243,207,7,224,15,240,30,120, + 30,120,28,56,4,32,24,25,75,40,8,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,255,255,255, + 255,255,255,255,255,255,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,8,10,10,12,2,251,31,31,62, + 62,60,124,120,120,240,240,10,5,10,14,2,8,255,192,255, + 192,255,192,255,192,255,192,5,5,5,12,4,0,248,248,248, + 248,248,13,32,64,17,2,254,0,120,0,120,0,120,0,240, + 0,240,0,240,1,224,1,224,1,224,3,192,3,192,3,192, + 3,192,7,128,7,128,7,128,15,0,15,0,15,0,14,0, + 30,0,30,0,30,0,60,0,60,0,60,0,120,0,120,0, + 120,0,120,0,240,0,240,0,20,30,90,23,1,1,3,252, + 0,15,255,0,31,255,128,63,15,128,62,7,192,124,3,192, + 124,3,224,124,3,224,124,3,224,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,240,248,1,240,248,1,240,248,1, + 240,248,1,240,248,1,240,248,1,240,248,1,240,124,3,224, + 124,3,224,124,3,224,124,3,224,62,7,192,63,15,128,31, + 255,128,15,255,0,3,252,0,12,30,60,23,4,0,1,240, + 3,240,15,240,63,240,255,240,255,240,253,240,249,240,225,240, + 129,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,20,30,90,23,1,1, + 3,255,0,7,255,128,31,255,192,31,255,224,63,255,240,63, + 3,240,126,1,240,126,1,240,124,1,240,0,1,240,0,3, + 240,0,3,240,0,7,224,0,15,224,0,15,192,0,31,128, + 0,63,0,0,254,0,1,252,0,3,248,0,7,240,0,15, + 224,0,63,128,0,127,0,0,252,0,0,255,255,240,255,255, + 240,255,255,240,255,255,240,255,255,240,19,30,90,23,2,1, + 7,252,0,31,255,0,63,255,128,127,255,128,127,255,192,252, + 15,192,252,7,192,248,7,192,0,7,192,0,7,192,0,15, + 192,0,63,192,3,255,128,3,254,0,3,252,0,3,255,0, + 3,255,128,0,31,192,0,7,224,0,7,224,0,7,224,0, + 3,224,248,7,224,252,7,224,252,7,192,126,15,192,127,255, + 128,63,255,128,31,255,0,15,252,0,21,30,90,23,1,0, + 0,63,128,0,63,128,0,127,128,0,255,128,0,255,128,1, + 255,128,1,255,128,3,239,128,3,207,128,7,207,128,15,143, + 128,15,143,128,31,15,128,31,15,128,62,15,128,62,15,128, + 124,15,128,252,15,128,248,15,128,255,255,248,255,255,248,255, + 255,248,255,255,248,255,255,248,0,15,128,0,15,128,0,15, + 128,0,15,128,0,15,128,0,15,128,19,30,90,23,2,0, + 127,255,192,127,255,192,127,255,192,127,255,192,127,255,192,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,252,0,125,255,0,127,255,128,127,255,192,127,15,224, + 126,7,224,124,3,224,0,3,224,0,3,224,0,3,224,0, + 3,224,0,3,224,248,7,224,252,7,224,252,15,192,127,255, + 128,127,255,128,63,254,0,15,252,0,20,30,90,23,1,1, + 3,254,0,7,255,0,15,255,128,31,255,192,63,255,192,63, + 7,224,126,3,224,126,3,224,124,0,0,124,0,0,252,0, + 0,248,0,0,249,255,0,251,255,128,255,255,192,255,15,224, + 254,7,224,254,3,240,252,3,240,252,3,240,252,1,240,252, + 1,240,124,3,240,124,3,240,126,3,224,63,7,224,63,255, + 192,31,255,128,15,255,0,3,254,0,19,30,90,23,2,0, + 255,255,224,255,255,224,255,255,224,255,255,224,255,255,224,0, + 7,224,0,7,224,0,7,192,0,15,192,0,15,192,0,31, + 128,0,31,128,0,63,0,0,63,0,0,63,0,0,126,0, + 0,126,0,0,252,0,0,252,0,1,252,0,1,248,0,1, + 248,0,3,240,0,3,240,0,7,240,0,7,224,0,15,224, + 0,15,192,0,15,192,0,31,192,0,20,30,90,23,1,1, + 7,254,0,31,255,128,63,255,192,127,255,224,127,255,224,126, + 7,224,124,3,224,124,3,224,124,3,224,124,3,224,126,7, + 224,127,15,192,63,255,128,15,255,0,7,252,0,31,255,0, + 63,255,192,127,15,224,124,7,224,252,3,240,252,3,240,248, + 1,240,248,3,240,252,3,240,252,3,240,254,7,240,127,255, + 224,63,255,192,31,255,128,15,255,0,20,30,90,23,1,1, + 3,252,0,15,255,0,31,255,128,63,255,192,127,255,192,126, + 7,224,252,7,224,252,3,224,252,3,240,248,3,240,248,3, + 240,252,3,240,252,7,240,124,7,240,127,15,240,63,255,240, + 63,253,240,31,249,240,7,225,240,0,3,240,0,3,224,0, + 3,224,0,3,224,124,7,224,124,7,192,126,15,192,63,255, + 128,31,255,0,15,254,0,7,252,0,5,20,20,12,5,0, + 248,248,248,248,248,0,0,0,0,0,0,0,0,0,0,248, + 248,248,248,248,9,25,50,13,2,251,31,0,31,0,31,0, + 31,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,31,128,31,0,63,0,62,0, + 62,0,124,0,124,0,120,0,248,0,240,0,24,21,63,40, + 8,2,0,0,1,0,0,15,0,0,63,0,1,252,0,7, + 224,0,63,0,0,252,0,7,224,0,63,0,0,252,0,0, + 224,0,0,248,0,0,126,0,0,15,192,0,3,240,0,0, + 126,0,0,31,192,0,3,240,0,0,126,0,0,31,0,0, + 3,24,10,30,40,8,7,255,255,255,255,255,255,255,255,255, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255, + 255,255,255,255,255,24,21,63,40,8,2,128,0,0,240,0, + 0,252,0,0,63,128,0,7,224,0,0,252,0,0,63,0, + 0,7,224,0,0,252,0,0,63,0,0,7,0,0,31,0, + 0,126,0,3,240,0,15,192,0,126,0,3,248,0,15,192, + 0,126,0,0,248,0,0,192,0,0,18,30,90,22,1,1, + 7,252,0,31,254,0,63,255,128,127,255,128,252,15,192,120, + 7,192,56,7,192,0,7,192,0,7,192,0,15,192,0,15, + 128,0,31,128,0,63,0,0,126,0,0,248,0,1,240,0, + 3,224,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,0,0,0,0,0,0,0,0,0,3,224,0,3,224, + 0,3,224,0,3,224,0,3,224,0,38,39,195,42,2,248, + 0,3,255,224,0,0,31,255,248,0,0,127,255,254,0,0, + 255,255,255,0,3,255,255,255,128,7,254,0,127,192,7,248, + 0,31,224,15,224,0,15,240,31,192,0,7,240,63,128,0, + 3,248,63,1,241,241,248,63,7,253,241,252,126,15,255,240, + 252,126,31,255,240,252,124,31,135,240,252,252,63,3,240,124, + 252,63,3,240,124,252,62,1,240,124,252,62,1,240,124,248, + 62,1,240,124,248,62,1,240,124,248,62,1,240,124,252,62, + 1,240,124,252,63,3,240,252,124,63,3,248,248,124,31,135, + 249,248,126,31,255,255,240,63,15,254,255,224,63,7,252,127, + 192,31,129,248,31,0,31,192,0,0,0,15,224,0,0,0, + 7,248,0,0,0,3,254,0,56,0,1,255,255,248,0,0, + 255,255,248,0,0,63,255,248,0,0,15,255,248,0,0,1, + 255,224,0,27,30,120,28,1,0,0,63,0,0,0,63,128, + 0,0,127,128,0,0,127,128,0,0,127,192,0,0,255,192, + 0,0,255,224,0,0,255,224,0,1,251,224,0,1,243,240, + 0,3,243,240,0,3,241,240,0,3,225,248,0,7,225,248, + 0,7,224,248,0,7,192,252,0,15,192,252,0,15,192,126, + 0,15,128,126,0,31,255,254,0,31,255,255,0,63,255,255, + 0,63,255,255,0,63,255,255,128,126,0,31,128,126,0,31, + 128,126,0,15,192,252,0,15,192,252,0,7,192,248,0,7, + 224,22,30,90,27,3,0,255,254,0,255,255,128,255,255,224, + 255,255,224,255,255,240,248,7,240,248,3,240,248,1,240,248, + 1,240,248,1,240,248,3,240,248,7,224,255,255,192,255,255, + 128,255,254,0,255,255,192,255,255,240,248,3,248,248,1,248, + 248,0,252,248,0,252,248,0,252,248,0,252,248,1,252,248, + 3,252,255,255,248,255,255,240,255,255,224,255,255,192,255,255, + 0,24,30,90,29,2,1,1,255,192,3,255,240,15,255,248, + 15,255,252,31,255,254,63,128,254,62,0,127,126,0,63,124, + 0,63,124,0,63,252,0,0,252,0,0,252,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,252,0,0, + 252,0,0,124,0,63,124,0,63,126,0,127,62,0,127,63, + 128,254,31,255,254,31,255,252,15,255,248,7,255,224,1,255, + 192,24,30,90,29,3,0,255,248,0,255,255,0,255,255,192, + 255,255,224,255,255,240,248,15,248,248,1,252,248,0,252,248, + 0,126,248,0,126,248,0,62,248,0,63,248,0,63,248,0, + 63,248,0,31,248,0,31,248,0,63,248,0,63,248,0,63, + 248,0,63,248,0,126,248,0,126,248,0,252,248,1,252,248, + 15,248,255,255,240,255,255,224,255,255,192,255,255,0,255,248, + 0,20,30,90,25,3,0,255,255,224,255,255,224,255,255,224, + 255,255,224,255,255,224,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,255,255, + 224,255,255,224,255,255,224,255,255,224,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,255,255,240,255,255,240,255,255,240,255,255,240,255,255, + 240,19,30,90,24,3,0,255,255,224,255,255,224,255,255,224, + 255,255,224,255,255,224,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,255,255,192,255,255, + 192,255,255,192,255,255,192,255,255,192,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,26,30,120,30,2,1,0,127,240,0,1,255,252,0,3, + 255,254,0,15,255,255,0,15,255,255,128,31,192,63,128,63, + 128,15,192,63,0,15,192,126,0,15,192,126,0,7,192,124, + 0,0,0,252,0,0,0,252,0,0,0,252,0,0,0,248, + 1,255,192,248,1,255,192,248,1,255,192,252,1,255,192,252, + 1,255,192,252,0,7,192,124,0,7,192,126,0,7,192,127, + 0,7,192,63,128,7,192,63,224,7,192,31,255,255,192,15, + 255,255,192,7,255,255,192,1,255,255,192,0,127,254,0,23, + 30,90,29,3,0,248,0,62,248,0,62,248,0,62,248,0, + 62,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,248,0,62,248,0,62,255,255,254,255,255,254,255, + 255,254,255,255,254,255,255,254,248,0,62,248,0,62,248,0, + 62,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,5, + 30,30,11,3,0,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,20,30,90,25,2,0,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,248,1,240,248,3,240,252,3,240,252,3, + 240,254,7,224,127,255,224,127,255,192,63,255,128,31,255,0, + 15,254,0,23,30,90,27,3,0,248,1,248,248,3,248,248, + 7,240,248,15,224,248,15,192,248,31,192,248,63,128,248,127, + 0,248,126,0,248,254,0,249,252,0,251,248,0,251,240,0, + 255,240,0,255,240,0,251,248,0,249,252,0,249,254,0,248, + 254,0,248,127,0,248,127,128,248,63,128,248,31,192,248,31, + 224,248,15,224,248,7,240,248,7,248,248,3,248,248,1,252, + 248,0,254,19,30,90,23,3,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,255,255,224,255,255,224,255,255,224,255,255,224, + 255,255,224,31,30,120,37,3,0,255,192,3,254,255,192,3, + 254,255,192,7,254,255,192,7,254,255,224,7,254,251,224,15, + 254,251,224,15,254,251,240,15,190,251,240,15,190,249,240,31, + 190,249,240,31,62,249,248,31,62,248,248,63,62,248,248,63, + 62,248,252,62,62,248,124,126,62,248,124,126,62,248,126,124, + 62,248,126,124,62,248,62,252,62,248,62,248,62,248,63,248, + 62,248,31,248,62,248,31,248,62,248,31,240,62,248,31,240, + 62,248,15,240,62,248,15,224,62,248,15,224,62,248,7,224, + 62,25,30,120,31,3,0,255,128,15,128,255,128,15,128,255, + 128,15,128,255,192,15,128,255,192,15,128,255,224,15,128,251, + 224,15,128,251,240,15,128,249,240,15,128,249,248,15,128,248, + 248,15,128,248,252,15,128,248,252,15,128,248,126,15,128,248, + 126,15,128,248,63,15,128,248,63,15,128,248,31,143,128,248, + 31,143,128,248,15,143,128,248,15,207,128,248,7,207,128,248, + 7,239,128,248,3,239,128,248,3,255,128,248,1,255,128,248, + 1,255,128,248,0,255,128,248,0,255,128,248,0,127,128,27, + 30,120,31,2,1,0,255,224,0,3,255,248,0,7,255,252, + 0,15,255,254,0,31,255,255,0,63,192,127,128,63,0,31, + 128,127,0,31,192,126,0,15,192,126,0,15,192,252,0,15, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,15,224,126,0,15,192,126,0,15,192,127,0,31, + 192,63,0,31,128,63,192,127,128,31,255,255,0,15,255,254, + 0,7,255,252,0,3,255,248,0,0,255,224,0,21,30,90, + 26,3,0,255,252,0,255,255,128,255,255,192,255,255,224,255, + 255,240,248,7,240,248,3,248,248,1,248,248,1,248,248,0, + 248,248,1,248,248,1,248,248,1,248,248,7,240,255,255,240, + 255,255,224,255,255,192,255,255,128,255,252,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,30,30,120, + 33,2,1,0,255,224,0,3,255,248,0,7,255,252,0,15, + 255,254,0,31,255,255,0,63,192,127,128,63,0,31,128,127, + 0,31,192,126,0,15,192,126,0,15,192,252,0,15,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,252, + 0,15,192,126,0,15,192,126,0,15,192,127,0,31,128,63, + 0,31,128,63,192,127,0,31,255,254,252,15,255,255,252,7, + 255,255,252,3,255,255,252,0,255,255,252,23,30,90,27,3, + 0,255,255,0,255,255,224,255,255,240,255,255,248,255,255,248, + 248,3,252,248,1,252,248,0,252,248,0,124,248,0,124,248, + 0,252,248,1,248,248,7,240,255,255,224,255,255,192,255,255, + 128,255,255,224,255,255,240,248,3,248,248,1,248,248,1,248, + 248,0,248,248,0,248,248,0,248,248,0,252,248,0,252,248, + 0,252,248,0,252,248,0,124,248,0,126,23,30,90,27,2, + 1,1,255,128,7,255,224,15,255,240,31,255,240,63,255,248, + 63,1,248,126,0,252,126,0,252,124,0,124,126,0,0,126, + 0,0,63,128,0,63,240,0,31,254,0,15,255,192,3,255, + 240,0,127,248,0,7,252,0,1,252,0,0,126,248,0,126, + 248,0,62,252,0,126,252,0,126,126,0,252,127,255,252,63, + 255,248,31,255,240,15,255,224,3,255,128,23,30,90,25,1, + 0,255,255,254,255,255,254,255,255,254,255,255,254,255,255,254, + 0,124,0,0,124,0,0,124,0,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,0,124,0,0,124,0,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,0,124,0,24,30,90,30,3, + 0,248,0,31,248,0,31,248,0,31,248,0,31,248,0,31, + 248,0,31,248,0,31,248,0,31,248,0,31,248,0,31,248, + 0,31,248,0,31,248,0,31,248,0,31,248,0,31,248,0, + 31,248,0,31,248,0,31,248,0,31,252,0,31,252,0,31, + 252,0,63,124,0,63,126,0,126,127,0,254,63,255,252,31, + 255,252,31,255,248,7,255,224,1,255,192,28,30,120,30,1, + 0,252,0,3,240,252,0,7,240,254,0,7,224,126,0,7, + 224,126,0,15,192,127,0,15,192,63,0,31,192,63,0,31, + 128,63,128,31,128,31,128,63,128,31,128,63,0,31,192,63, + 0,15,192,127,0,15,192,126,0,7,224,126,0,7,224,252, + 0,7,224,252,0,3,240,252,0,3,241,248,0,3,249,248, + 0,1,249,248,0,1,251,240,0,1,255,240,0,0,255,240, + 0,0,255,224,0,0,255,224,0,0,127,192,0,0,127,192, + 0,0,127,192,0,0,63,128,0,38,30,150,40,1,0,252, + 0,252,0,252,252,1,254,0,252,252,1,254,0,252,252,1, + 254,1,252,254,1,254,1,252,126,3,255,1,248,126,3,255, + 1,248,126,3,255,1,248,126,3,255,1,248,63,7,255,131, + 240,63,7,207,131,240,63,7,207,131,240,63,7,207,131,240, + 31,15,207,195,224,31,143,135,199,224,31,143,135,199,224,31, + 143,135,199,224,15,159,135,231,192,15,159,3,231,192,15,223, + 3,239,192,15,223,3,239,192,7,255,3,255,128,7,254,1, + 255,128,7,254,1,255,128,7,254,1,255,128,3,254,1,255, + 0,3,252,0,255,0,3,252,0,255,0,3,252,0,255,0, + 3,252,0,255,0,26,30,120,28,1,0,126,0,31,128,127, + 0,63,128,63,128,63,0,63,128,126,0,31,192,126,0,15, + 192,252,0,15,225,248,0,7,241,248,0,3,243,240,0,3, + 251,224,0,1,255,224,0,0,255,192,0,0,255,128,0,0, + 127,128,0,0,127,0,0,0,127,128,0,0,255,128,0,1, + 255,192,0,1,255,224,0,3,247,224,0,3,227,240,0,7, + 227,248,0,15,193,248,0,15,129,252,0,31,128,254,0,63, + 0,126,0,63,0,127,0,126,0,63,128,252,0,31,128,252, + 0,31,192,24,30,90,25,1,0,252,0,127,254,0,126,126, + 0,254,127,0,252,63,1,252,63,1,248,31,131,248,31,131, + 240,15,195,240,15,199,224,7,231,224,7,239,192,3,255,192, + 3,255,128,1,255,128,1,255,0,0,255,0,0,254,0,0, + 126,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,22,30,90,26,2,0,127,255,252,127,255,252,127, + 255,252,127,255,252,127,255,252,0,1,252,0,3,248,0,7, + 240,0,15,240,0,31,224,0,31,192,0,63,128,0,127,128, + 0,255,0,0,254,0,1,252,0,3,252,0,7,248,0,7, + 240,0,15,224,0,31,224,0,63,192,0,63,128,0,127,0, + 0,255,0,0,255,255,252,255,255,252,255,255,252,255,255,252, + 255,255,252,9,38,76,15,3,248,255,128,255,128,255,128,255, + 128,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,255,128,255, + 128,255,128,255,128,13,32,64,17,2,254,240,0,240,0,120, + 0,120,0,120,0,120,0,60,0,60,0,60,0,30,0,30, + 0,30,0,14,0,15,0,15,0,15,0,7,128,7,128,7, + 128,3,192,3,192,3,192,3,192,1,224,1,224,1,224,0, + 240,0,240,0,240,0,112,0,120,0,120,9,38,76,15,3, + 248,255,128,255,128,255,128,255,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,255,128,255,128,255,128,255,128,20,25,75, + 40,10,0,0,96,0,0,240,0,0,240,0,0,240,0,1, + 248,0,1,152,0,3,156,0,3,12,0,3,12,0,7,14, + 0,6,6,0,6,6,0,14,7,0,12,3,0,28,3,128, + 28,1,128,24,1,128,56,1,192,48,0,192,48,0,192,112, + 0,224,96,0,96,224,0,112,224,0,112,192,0,48,20,4, + 12,20,0,250,255,255,240,255,255,240,255,255,240,255,255,240, + 9,8,16,10,255,25,248,0,124,0,60,0,62,0,30,0, + 15,0,7,0,3,128,19,20,60,22,2,1,15,254,0,31, + 255,0,63,255,128,126,15,128,124,15,192,0,7,192,0,127, + 192,15,255,192,63,255,192,127,255,192,127,7,192,252,7,192, + 252,7,192,248,15,192,248,15,192,252,15,192,254,31,192,127, + 255,192,63,247,192,31,227,224,20,30,90,25,3,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,249,254,0,251, + 255,128,255,255,192,255,15,192,254,7,224,252,3,224,252,3, + 240,252,3,240,252,3,240,248,1,240,248,1,240,248,3,240, + 252,3,240,252,3,240,252,3,224,254,7,224,255,15,192,251, + 255,192,251,255,128,248,254,0,17,20,60,21,2,1,15,252, + 0,31,254,0,63,255,0,126,63,0,124,31,128,124,31,128, + 252,15,128,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,252,15,128,252,31,128,124,31,128,126,63, + 0,63,255,0,31,254,0,15,252,0,20,30,90,25,2,0, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,7,249, + 240,31,253,240,63,255,240,63,15,240,126,7,240,124,3,240, + 252,3,240,252,3,240,252,3,240,248,1,240,248,1,240,248, + 3,240,252,3,240,252,3,240,124,3,240,126,7,240,63,15, + 240,63,253,240,31,249,240,7,241,240,19,20,60,22,2,1, + 7,252,0,31,255,0,63,255,0,62,31,128,124,15,192,124, + 7,192,252,7,192,255,255,192,255,255,192,255,255,224,255,255, + 224,248,0,0,248,0,0,252,0,0,124,7,192,124,15,192, + 126,31,128,63,255,128,31,255,0,7,252,0,14,30,60,15, + 1,1,3,252,7,252,15,252,15,192,15,128,15,128,15,128, + 15,128,15,128,15,128,255,248,255,248,255,248,255,248,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,20,28, + 84,25,2,249,7,249,240,31,253,240,63,255,240,63,15,240, + 126,7,240,124,3,240,252,3,240,252,3,240,252,3,240,248, + 1,240,248,1,240,248,3,240,252,3,240,252,3,240,124,7, + 240,126,7,240,63,255,240,63,253,240,15,249,240,3,225,240, + 0,3,240,0,3,240,124,3,240,126,7,224,63,255,224,63, + 255,192,31,255,128,3,252,0,18,30,90,24,3,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,249,255,0,251, + 255,128,255,255,192,255,31,192,254,15,192,252,7,192,252,7, + 192,252,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,6,30,30,10,2,0,252,252, + 252,252,252,0,0,0,0,0,124,124,124,124,124,124,124,124, + 124,124,124,124,124,124,124,124,124,124,124,124,7,39,39,13, + 4,247,126,126,126,126,126,0,0,0,0,0,62,62,62,62, + 62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62, + 62,62,62,126,254,254,254,252,248,18,30,90,22,3,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,31,192, + 248,31,128,248,63,0,248,126,0,248,252,0,249,252,0,249, + 248,0,251,240,0,255,224,0,255,240,0,251,240,0,249,248, + 0,249,252,0,248,252,0,248,126,0,248,127,0,248,63,0, + 248,31,128,248,31,192,248,15,192,5,30,30,11,3,0,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,31,20,80, + 37,3,1,248,255,15,240,249,255,159,252,251,255,191,252,255, + 31,248,254,254,15,240,126,252,7,224,62,252,7,224,62,248, + 7,192,62,248,7,192,62,248,7,192,62,248,7,192,62,248, + 7,192,62,248,7,192,62,248,7,192,62,248,7,192,62,248, + 7,192,62,248,7,192,62,248,7,192,62,248,7,192,62,248, + 7,192,62,18,20,60,24,3,1,249,255,0,251,255,128,251, + 255,192,255,31,192,254,15,192,252,7,192,252,7,192,252,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,20,20,60,24,2,1,3,254,0,15,255, + 0,31,255,192,63,15,192,126,3,224,124,3,240,252,1,240, + 252,1,240,252,1,240,248,1,240,248,1,240,248,1,240,252, + 1,240,252,1,240,124,3,240,126,3,224,63,15,192,31,255, + 192,15,255,0,3,254,0,20,28,84,25,3,249,248,254,0, + 249,255,128,251,255,192,255,15,192,254,7,224,252,3,224,252, + 3,240,252,3,240,252,3,240,248,1,240,248,1,240,252,3, + 240,252,3,240,252,3,240,252,3,224,254,7,224,255,15,192, + 255,255,192,251,255,128,249,254,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,20,28,84,25,2,249,7,241,240,31,253,240,63,253,240, + 63,15,240,126,7,240,124,3,240,252,3,240,252,3,240,248, + 3,240,248,1,240,248,1,240,252,3,240,252,3,240,252,3, + 240,124,3,240,126,7,240,63,15,240,63,255,240,31,253,240, + 7,249,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,12,20,40,16,3, + 1,248,240,249,240,251,240,255,240,255,240,255,0,254,0,252, + 0,252,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,17,20,60,21,2,1,15, + 252,0,63,254,0,127,255,0,126,31,128,124,31,128,124,15, + 128,126,0,0,127,128,0,63,248,0,63,254,0,7,255,0, + 0,255,128,0,31,128,0,15,128,248,15,128,252,15,128,126, + 31,128,127,255,0,63,254,0,31,252,0,15,26,52,17,1, + 0,0,128,1,128,7,128,15,128,15,128,15,128,255,252,255, + 252,255,252,255,252,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,192,15,224,7, + 254,7,254,1,254,18,20,60,24,3,0,248,7,192,248,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,252,7,192,252,15,192,252,15,192,254,31,192,127,255, + 192,63,247,192,31,231,192,20,20,60,22,1,0,248,3,240, + 252,3,240,252,3,224,124,7,224,126,7,224,126,7,192,62, + 15,192,63,15,192,31,15,128,31,31,128,31,159,0,15,159, + 0,15,191,0,15,254,0,7,254,0,7,254,0,3,252,0, + 3,252,0,3,248,0,1,248,0,33,20,100,34,1,0,248, + 7,224,31,128,248,15,240,31,0,252,15,240,31,0,252,15, + 240,63,0,124,15,248,62,0,126,31,248,62,0,126,31,248, + 126,0,62,31,124,126,0,62,62,124,124,0,63,62,124,124, + 0,31,62,126,252,0,31,124,62,248,0,31,252,62,248,0, + 15,252,63,248,0,15,252,31,240,0,15,248,31,240,0,15, + 248,31,240,0,7,248,15,240,0,7,240,15,224,0,7,240, + 15,224,0,20,20,60,22,1,0,254,3,224,126,7,224,63, + 15,192,31,143,128,31,159,128,15,223,0,7,254,0,7,254, + 0,3,252,0,3,252,0,3,252,0,7,254,0,15,255,0, + 15,191,0,31,159,128,63,31,192,62,15,192,126,7,224,252, + 7,224,252,3,240,20,28,84,22,1,248,252,3,240,252,3, + 240,252,3,224,126,7,224,126,7,224,63,7,192,63,15,192, + 63,15,192,31,143,128,31,159,128,15,159,128,15,223,0,15, + 255,0,7,255,0,7,254,0,3,254,0,3,252,0,3,252, + 0,1,252,0,1,248,0,1,248,0,1,248,0,1,240,0, + 3,240,0,3,240,0,7,224,0,7,224,0,7,224,0,17, + 20,60,21,2,0,255,255,0,255,255,0,255,255,0,255,255, + 0,0,63,0,0,126,0,0,252,0,1,248,0,3,240,0, + 7,240,0,15,224,0,15,192,0,31,128,0,63,0,0,126, + 0,0,252,0,0,255,255,128,255,255,128,255,255,128,255,255, + 128,15,41,82,20,3,246,0,2,0,254,1,254,3,254,7, + 240,7,224,7,192,7,192,7,192,7,192,7,192,7,192,7, + 192,7,192,7,192,7,192,15,192,15,128,63,128,254,0,252, + 0,254,0,255,0,63,128,15,128,15,192,7,192,7,192,7, + 192,7,192,7,192,7,192,7,192,7,192,7,192,7,224,7, + 224,3,254,3,254,1,254,0,62,3,43,43,13,5,245,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,15,40,80,20,3,247, + 252,0,255,0,255,0,31,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,192,15,192,7,224, + 7,224,3,248,1,254,0,126,0,254,3,252,7,224,7,192, + 7,192,15,192,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,31,128,255,128,255,0,254,0,248,0, + 21,5,15,21,0,8,15,192,120,63,255,248,127,255,240,127, + 255,224,240,31,128,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,0,0,0,12,0,0,5,28,28,16, + 5,248,248,248,248,248,248,0,0,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,18,30, + 90,24,3,250,0,6,0,0,14,0,0,12,0,0,12,0, + 0,28,0,7,252,0,31,255,0,63,255,128,63,63,128,124, + 63,192,124,127,192,252,103,192,248,96,0,248,96,0,248,192, + 0,248,192,0,248,192,0,253,192,0,253,143,192,125,143,192, + 127,143,192,127,31,128,63,255,128,31,255,0,7,252,0,6, + 0,0,14,0,0,12,0,0,12,0,0,28,0,0,20,31, + 93,23,2,0,0,16,0,3,255,128,7,255,192,15,255,224, + 15,199,240,31,131,240,31,131,240,31,1,240,31,0,0,31, + 0,0,31,0,0,31,0,0,255,252,0,255,252,0,255,252, + 0,255,252,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,255,255,240,255,255,240,255,255,240,255,255, + 240,21,21,63,25,2,8,192,0,24,224,0,56,113,252,112, + 63,255,224,31,7,192,28,1,192,24,1,192,56,0,224,48, + 0,96,48,0,96,48,0,96,48,0,96,48,0,224,56,0, + 224,28,1,192,30,3,192,31,143,192,63,255,224,113,252,112, + 224,0,56,192,0,24,22,30,90,24,1,0,252,0,252,252, + 0,252,124,1,248,126,1,248,62,3,240,63,3,240,63,7, + 224,31,135,224,255,135,252,255,143,252,255,207,252,7,223,128, + 7,255,0,3,255,0,3,255,0,1,254,0,255,255,252,255, + 255,252,255,255,252,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,2,38,38,14,6,248,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,0,0,0,0, + 0,0,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,16,36,72,19,1,251,15,252,31,254,63,254,126,14, + 124,2,124,0,124,0,126,0,127,0,63,192,31,224,15,248, + 31,252,63,254,126,127,124,63,248,31,248,31,248,31,252,62, + 254,252,127,248,63,240,31,248,7,252,1,254,0,127,0,63, + 0,63,0,31,0,63,64,126,127,254,127,252,127,240,31,192, + 13,5,10,13,0,26,240,120,240,120,240,120,240,120,240,120, + 30,30,120,34,2,1,0,63,240,0,0,255,252,0,3,248, + 127,0,7,192,15,128,15,0,3,192,30,0,1,224,60,31, + 240,240,56,63,248,112,120,127,252,120,112,248,124,56,112,248, + 62,56,225,240,62,28,225,240,62,28,225,240,0,28,225,240, + 0,28,225,240,0,28,225,240,0,28,225,240,62,28,225,240, + 62,28,112,248,62,56,112,248,124,56,112,127,252,120,56,63, + 248,112,60,31,224,240,30,0,1,224,15,0,3,192,7,128, + 15,128,3,240,63,0,1,255,252,0,0,63,240,0,14,20, + 40,16,1,10,15,192,63,240,120,240,120,120,0,120,15,248, + 63,248,124,120,240,120,240,120,240,120,240,248,255,248,127,248, + 63,56,0,0,0,0,0,0,255,252,255,252,20,16,48,24, + 2,2,15,193,240,15,131,224,31,135,224,31,7,192,63,15, + 192,126,15,192,126,31,128,252,31,128,252,31,128,126,31,128, + 126,15,192,63,15,192,31,7,192,31,135,224,15,131,224,15, + 193,240,21,9,27,25,2,8,255,255,248,255,255,248,0,0, + 24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24, + 0,0,24,255,30,30,120,34,2,1,0,63,240,0,0,255, + 252,0,3,248,127,0,7,192,15,128,15,0,3,192,30,0, + 1,224,60,255,192,240,56,255,240,112,120,255,248,120,112,240, + 124,56,112,240,60,56,224,240,60,28,224,240,60,28,224,240, + 120,28,224,255,240,28,224,255,224,28,224,255,248,28,224,240, + 120,28,224,240,120,28,112,240,56,56,112,240,60,56,112,240, + 60,120,56,240,60,112,60,240,60,240,30,0,1,224,15,0, + 3,192,7,128,15,128,3,240,63,0,1,255,252,0,0,63, + 240,0,13,4,8,13,0,26,255,248,255,248,255,248,255,248, + 9,9,18,13,2,21,62,0,127,0,227,128,193,128,193,128, + 193,128,227,128,127,0,62,0,24,24,72,40,8,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,255,255,255,255,255,255,255,255,255,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255, + 255,255,255,255,255,255,13,16,32,15,1,15,63,224,127,240, + 248,120,240,120,0,120,0,248,1,240,3,224,7,192,15,128, + 31,0,60,0,240,0,255,240,255,240,255,240,12,15,30,14, + 1,16,63,192,127,224,240,240,240,240,0,240,1,224,15,192, + 15,192,1,224,0,240,0,240,240,240,249,240,127,224,63,128, + 8,8,8,9,2,25,31,31,62,60,120,112,240,224,255,18, + 36,108,22,2,250,7,255,192,31,255,192,63,199,0,127,199, + 0,255,199,0,255,199,0,255,199,0,255,199,0,255,199,0, + 255,199,0,255,199,0,255,199,0,127,199,0,63,199,0,15, + 199,0,1,199,0,1,199,0,1,199,0,1,199,0,1,199, + 0,1,199,0,1,199,0,1,199,0,1,199,0,1,199,0, + 1,199,0,1,199,0,1,199,0,1,199,0,1,199,0,1, + 199,0,1,199,0,1,199,0,1,199,0,1,199,0,1,199, + 0,5,5,5,12,3,11,248,248,248,248,248,9,10,20,10, + 2,246,48,0,48,0,60,0,63,0,7,128,3,128,3,128, + 135,128,255,0,252,0,7,16,16,11,2,14,30,62,254,254, + 158,30,30,30,30,30,30,30,30,30,30,30,14,19,38,16, + 1,11,15,192,31,224,60,240,120,120,112,56,240,60,240,60, + 240,60,240,60,240,60,112,56,120,120,60,240,31,224,15,192, + 0,0,0,0,255,252,255,252,20,16,48,24,2,2,252,31, + 0,124,31,0,126,15,128,62,15,192,63,15,192,31,7,224, + 31,135,224,31,131,240,31,131,240,31,135,224,31,7,224,63, + 15,192,62,15,192,126,15,128,124,31,0,252,31,0,28,31, + 124,32,2,255,30,0,15,0,62,0,30,0,254,0,30,0, + 254,0,60,0,158,0,124,0,30,0,120,0,30,0,248,0, + 30,0,240,0,30,1,240,0,30,1,224,0,30,3,192,0, + 30,3,192,0,30,7,128,0,30,15,128,0,30,15,0,0, + 30,31,3,224,0,30,7,224,0,60,15,224,0,60,15,224, + 0,120,31,224,0,120,61,224,0,240,121,224,0,240,121,224, + 1,224,241,224,3,193,225,224,3,193,255,240,7,129,255,240, + 7,128,1,224,15,0,1,224,15,0,1,224,30,0,1,224, + 28,30,120,31,2,0,30,0,30,0,62,0,60,0,254,0, + 56,0,222,0,120,0,158,0,240,0,30,0,240,0,30,1, + 224,0,30,1,224,0,30,3,192,0,30,3,192,0,30,7, + 128,0,30,7,128,0,30,15,0,0,30,30,0,0,30,30, + 31,128,30,60,63,224,0,60,125,224,0,120,240,240,0,120, + 240,240,0,240,0,240,0,240,1,240,1,224,3,224,1,192, + 7,192,3,192,15,128,7,128,31,0,7,128,62,0,15,0, + 124,0,15,0,240,0,30,0,255,240,30,0,255,240,29,30, + 120,31,1,1,63,192,3,192,127,224,7,192,240,240,7,128, + 240,240,15,0,0,240,15,0,1,224,30,0,15,192,30,0, + 15,192,60,0,1,224,124,0,0,240,120,0,0,240,240,0, + 240,240,240,0,249,241,224,0,127,225,224,0,63,131,193,240, + 0,3,195,240,0,7,135,240,0,15,7,240,0,15,15,240, + 0,30,30,240,0,30,60,240,0,60,60,240,0,60,120,240, + 0,120,240,240,0,240,255,248,0,240,255,248,1,224,0,240, + 1,224,0,240,3,192,0,240,3,192,0,240,19,28,84,23, + 2,248,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,0,0,0,0,0,0,0,0,0,240,0,0,240,0, + 0,240,0,0,240,0,1,224,0,7,224,0,15,128,0,31, + 0,0,62,0,0,124,0,0,252,0,0,252,0,0,248,1, + 0,252,3,128,252,7,224,126,15,192,127,255,192,63,255,128, + 15,254,0,3,248,0,27,41,164,28,1,0,1,240,0,0, + 1,240,0,0,0,248,0,0,0,120,0,0,0,60,0,0, + 0,28,0,0,0,14,0,0,0,14,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,63,0,0,0,63,128,0, + 0,127,128,0,0,127,128,0,0,127,192,0,0,255,192,0, + 0,255,224,0,0,255,224,0,1,251,224,0,1,243,240,0, + 3,243,240,0,3,241,240,0,3,225,248,0,7,225,248,0, + 7,224,248,0,7,192,252,0,15,192,252,0,15,192,126,0, + 15,128,126,0,31,255,254,0,31,255,255,0,63,255,255,0, + 63,255,255,0,63,255,255,128,126,0,31,128,126,0,31,128, + 126,0,15,192,252,0,15,192,252,0,7,192,248,0,7,224, + 27,41,164,28,1,0,0,3,240,0,0,3,224,0,0,3, + 192,0,0,7,128,0,0,7,0,0,0,15,0,0,0,14, + 0,0,0,28,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,63,0,0,0,63,128,0,0,127,128,0,0,127, + 128,0,0,127,192,0,0,255,192,0,0,255,224,0,0,255, + 224,0,1,251,224,0,1,243,240,0,3,243,240,0,3,241, + 240,0,3,225,248,0,7,225,248,0,7,224,248,0,7,192, + 252,0,15,192,252,0,15,192,126,0,15,128,126,0,31,255, + 254,0,31,255,255,0,63,255,255,0,63,255,255,0,63,255, + 255,128,126,0,31,128,126,0,31,128,126,0,15,192,252,0, + 15,192,252,0,7,192,248,0,7,224,27,41,164,28,1,0, + 0,63,0,0,0,63,128,0,0,127,128,0,0,123,192,0, + 0,243,192,0,0,225,224,0,1,192,224,0,1,192,112,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,63,0,0, + 0,63,128,0,0,127,128,0,0,127,128,0,0,127,192,0, + 0,255,192,0,0,255,224,0,0,255,224,0,1,251,224,0, + 1,243,240,0,3,243,240,0,3,241,240,0,3,225,248,0, + 7,225,248,0,7,224,248,0,7,192,252,0,15,192,252,0, + 15,192,126,0,15,128,126,0,31,255,254,0,31,255,255,0, + 63,255,255,0,63,255,255,0,63,255,255,128,126,0,31,128, + 126,0,31,128,126,0,15,192,252,0,15,192,252,0,7,192, + 248,0,7,224,27,39,156,28,1,0,0,120,112,0,0,255, + 224,0,1,255,224,0,1,255,192,0,1,128,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,63, + 0,0,0,63,128,0,0,127,128,0,0,127,128,0,0,127, + 192,0,0,255,192,0,0,255,224,0,0,255,224,0,1,251, + 224,0,1,243,240,0,3,243,240,0,3,241,240,0,3,225, + 248,0,7,225,248,0,7,224,248,0,7,192,252,0,15,192, + 252,0,15,192,126,0,15,128,126,0,31,255,254,0,31,255, + 255,0,63,255,255,0,63,255,255,0,63,255,255,128,126,0, + 31,128,126,0,31,128,126,0,15,192,252,0,15,192,252,0, + 7,192,248,0,7,224,27,40,160,29,1,0,1,224,240,0, + 1,224,240,0,1,224,240,0,1,224,240,0,1,224,240,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,63,128,0,0,63,128,0,0,127,192,0, + 0,127,192,0,0,127,192,0,0,255,224,0,0,255,224,0, + 1,251,240,0,1,251,240,0,1,251,240,0,3,241,248,0, + 3,241,248,0,3,224,248,0,7,224,252,0,7,224,252,0, + 7,192,124,0,15,192,126,0,15,192,126,0,15,128,62,0, + 31,255,255,0,31,255,255,0,31,255,255,0,63,255,255,128, + 63,255,255,128,126,0,31,128,126,0,15,192,126,0,15,192, + 252,0,7,224,252,0,7,224,252,0,7,224,27,43,172,28, + 0,0,0,31,0,0,0,63,128,0,0,113,192,0,0,96, + 192,0,0,96,192,0,0,96,192,0,0,113,192,0,0,63, + 128,0,0,31,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,63,128,0,0,63,128,0,0,63, + 128,0,0,127,192,0,0,127,192,0,0,127,192,0,0,255, + 224,0,0,251,224,0,0,251,240,0,1,251,240,0,1,241, + 240,0,1,241,248,0,3,241,248,0,3,224,248,0,7,224, + 252,0,7,224,252,0,7,192,124,0,15,192,126,0,15,192, + 126,0,15,255,254,0,31,255,255,0,31,255,255,0,31,255, + 255,128,63,255,255,128,63,0,31,128,62,0,15,192,126,0, + 15,192,126,0,15,192,252,0,7,224,252,0,7,224,38,30, + 150,40,0,0,0,1,255,255,248,0,1,255,255,248,0,3, + 255,255,248,0,3,255,255,248,0,7,255,0,0,0,7,223, + 0,0,0,15,223,0,0,0,15,159,0,0,0,31,159,0, + 0,0,31,31,0,0,0,63,31,0,0,0,62,31,0,0, + 0,126,31,255,248,0,124,31,255,248,0,252,31,255,248,0, + 248,31,255,248,1,248,31,255,248,1,240,31,0,0,3,255, + 255,0,0,7,255,255,0,0,7,255,255,0,0,15,255,255, + 0,0,15,255,255,0,0,31,128,63,0,0,31,128,63,0, + 0,63,0,63,255,252,63,0,63,255,252,126,0,63,255,252, + 126,0,63,255,252,252,0,63,255,252,24,40,120,29,2,247, + 1,255,192,3,255,240,15,255,248,15,255,252,31,255,254,63, + 128,254,62,0,127,126,0,127,124,0,63,124,0,63,252,0, + 0,252,0,0,252,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,252,0,0,252,0,0,124,0,63,124, + 0,127,126,0,127,62,0,255,63,0,254,31,255,254,31,255, + 252,15,255,248,7,255,240,1,255,192,0,24,0,0,24,0, + 0,31,0,0,31,128,0,3,192,0,1,192,0,1,192,0, + 195,192,0,255,128,0,254,0,20,41,123,25,3,0,15,128, + 0,15,128,0,7,192,0,3,192,0,1,224,0,0,224,0, + 0,240,0,0,112,0,0,0,0,0,0,0,0,0,0,255, + 255,224,255,255,224,255,255,224,255,255,224,255,255,224,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,255,255,224,255,255,224,255,255,224,255, + 255,224,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,255,255,240,255,255,240, + 255,255,240,255,255,240,255,255,240,20,41,123,25,3,0,0, + 63,0,0,62,0,0,124,0,0,120,0,0,240,0,0,224, + 0,1,224,0,1,192,0,0,0,0,0,0,0,0,0,0, + 255,255,224,255,255,224,255,255,224,255,255,224,255,255,224,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,255,255,224,255,255,224,255,255,224, + 255,255,224,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,255,255,240,255,255, + 240,255,255,240,255,255,240,255,255,240,20,41,123,25,3,0, + 3,248,0,3,248,0,7,252,0,7,188,0,7,30,0,14, + 14,0,14,7,0,28,7,0,0,0,0,0,0,0,0,0, + 0,255,255,224,255,255,224,255,255,224,255,255,224,255,255,224, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,255,255,224,255,255,224,255,255, + 224,255,255,224,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,255,255,240,255, + 255,240,255,255,240,255,255,240,255,255,240,20,40,120,25,3, + 0,15,15,0,15,15,0,15,15,0,15,15,0,15,15,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,224,255,255,224,255,255,224,255,255,224,255,255,224,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,255,255,224,255,255,224,255,255,224,255, + 255,224,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,255,255,240,255,255,240, + 255,255,240,255,255,240,255,255,240,9,41,82,11,255,0,248, + 0,124,0,60,0,30,0,14,0,15,0,7,0,3,0,0, + 0,0,0,0,0,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,8,41,41,10,3,0,15,31,30,60,56,120,112,224,0, + 0,0,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 12,41,82,11,0,0,31,128,63,128,63,128,123,192,121,192, + 112,224,224,224,192,112,0,0,0,0,0,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,13,40,80,13,0,0,240,120, + 240,120,240,120,240,120,240,120,0,0,0,0,0,0,0,0, + 0,0,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,26,30, + 120,29,0,0,31,255,0,0,31,255,224,0,31,255,248,0, + 31,255,252,0,31,255,254,0,31,1,255,0,31,0,127,0, + 31,0,31,128,31,0,31,128,31,0,15,192,31,0,15,192, + 31,0,7,192,31,0,7,192,255,252,7,192,255,252,7,192, + 255,252,7,192,255,252,7,192,31,0,7,192,31,0,7,192, + 31,0,15,192,31,0,15,192,31,0,31,128,31,0,31,128, + 31,0,127,0,31,1,255,0,31,255,254,0,31,255,252,0, + 31,255,248,0,31,255,224,0,31,255,0,0,25,39,156,31, + 3,0,0,248,96,0,1,255,224,0,1,255,192,0,3,255, + 128,0,3,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,255,128,15,128,255,128,15,128,255,128, + 15,128,255,192,15,128,255,192,15,128,255,224,15,128,251,224, + 15,128,251,240,15,128,249,240,15,128,249,248,15,128,248,248, + 15,128,248,252,15,128,248,252,15,128,248,126,15,128,248,126, + 15,128,248,63,15,128,248,63,15,128,248,31,143,128,248,31, + 143,128,248,15,143,128,248,15,207,128,248,7,207,128,248,7, + 239,128,248,3,239,128,248,3,255,128,248,1,255,128,248,1, + 255,128,248,0,255,128,248,0,255,128,248,0,127,128,27,41, + 164,31,2,0,1,240,0,0,1,240,0,0,0,248,0,0, + 0,120,0,0,0,60,0,0,0,28,0,0,0,28,0,0, + 0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,255,224,0,3,255,248,0,7,255,252,0,15,255,254,0, + 31,255,255,0,63,192,127,128,63,0,31,128,127,0,31,192, + 126,0,15,192,126,0,15,192,252,0,15,224,252,0,7,224, + 252,0,7,224,252,0,7,224,252,0,7,224,252,0,7,224, + 252,0,7,224,252,0,7,224,252,0,7,224,252,0,15,224, + 126,0,15,192,126,0,15,192,127,0,31,192,63,0,31,128, + 63,192,127,128,31,255,255,0,15,255,254,0,7,255,252,0, + 3,255,248,0,0,255,224,0,27,41,164,31,2,0,0,1, + 240,0,0,1,224,0,0,3,224,0,0,3,192,0,0,7, + 128,0,0,7,0,0,0,14,0,0,0,14,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,255,224,0,3,255, + 248,0,7,255,252,0,15,255,254,0,31,255,255,0,63,192, + 127,128,63,0,31,128,127,0,31,192,126,0,15,192,126,0, + 15,192,252,0,15,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,15,224,126,0,15,192,126,0, + 15,192,127,0,31,192,63,0,31,128,63,192,127,128,31,255, + 255,0,15,255,254,0,7,255,252,0,3,255,248,0,0,255, + 224,0,27,41,164,31,2,0,0,63,0,0,0,63,128,0, + 0,63,128,0,0,123,192,0,0,113,192,0,0,240,224,0, + 0,224,224,0,1,192,112,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,255,224,0,3,255,248,0,7,255,252,0, + 15,255,254,0,31,255,255,0,63,192,127,128,63,0,31,128, + 127,0,31,192,126,0,15,192,126,0,15,192,252,0,15,224, + 252,0,7,224,252,0,7,224,252,0,7,224,252,0,7,224, + 252,0,7,224,252,0,7,224,252,0,7,224,252,0,7,224, + 252,0,15,224,126,0,15,192,126,0,15,192,127,0,31,192, + 63,0,31,128,63,192,127,128,31,255,255,0,15,255,254,0, + 7,255,252,0,3,255,248,0,0,255,224,0,27,40,160,31, + 2,0,0,0,48,0,0,124,112,0,0,255,224,0,0,255, + 224,0,1,255,192,0,1,128,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,255,224,0,3,255, + 248,0,7,255,252,0,15,255,254,0,31,255,255,0,63,192, + 127,128,63,0,31,128,127,0,31,192,126,0,15,192,126,0, + 15,192,252,0,15,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,15,224,126,0,15,192,126,0, + 15,192,127,0,31,192,63,0,31,128,63,192,127,128,31,255, + 255,0,15,255,254,0,7,255,252,0,3,255,248,0,0,255, + 224,0,27,40,160,31,2,0,0,240,240,0,0,240,240,0, + 0,240,240,0,0,240,240,0,0,240,240,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,255,224,0,3,255,248,0,7,255,252,0,15,255,254,0, + 31,255,255,0,63,192,127,128,63,0,31,128,127,0,31,192, + 126,0,15,192,126,0,15,192,252,0,15,224,252,0,7,224, + 252,0,7,224,252,0,7,224,252,0,7,224,252,0,7,224, + 252,0,7,224,252,0,7,224,252,0,7,224,252,0,15,224, + 126,0,15,192,126,0,15,192,127,0,31,192,63,0,31,128, + 63,192,127,128,31,255,255,0,15,255,254,0,7,255,252,0, + 3,255,248,0,0,255,224,0,22,22,66,40,9,1,96,0, + 24,240,0,60,112,0,56,56,0,112,28,0,224,14,1,192, + 7,3,128,3,135,0,1,206,0,0,252,0,0,120,0,0, + 120,0,0,252,0,1,206,0,3,135,0,7,3,128,14,1, + 192,28,0,224,56,0,112,112,0,56,96,0,24,64,0,8, + 29,34,136,31,1,254,0,0,0,16,0,0,0,56,0,127, + 240,120,1,255,252,240,3,255,255,240,7,255,255,224,15,255, + 255,192,31,224,63,192,31,128,15,192,63,128,31,224,63,0, + 63,224,63,0,127,224,126,0,251,240,126,1,243,240,126,1, + 227,240,126,3,195,240,126,7,131,240,126,15,3,240,126,30, + 3,240,126,60,3,240,126,124,3,240,126,248,7,240,63,240, + 7,224,63,224,7,224,63,192,15,224,31,128,15,192,31,224, + 63,192,31,255,255,128,63,255,255,0,127,255,254,0,249,255, + 252,0,240,127,240,0,224,0,0,0,64,0,0,0,24,41, + 123,30,3,0,7,192,0,3,224,0,1,224,0,1,240,0, + 0,240,0,0,120,0,0,56,0,0,28,0,0,0,0,0, + 0,0,0,0,0,248,0,31,248,0,31,248,0,31,248,0, + 31,248,0,31,248,0,31,248,0,31,248,0,31,248,0,31, + 248,0,31,248,0,31,248,0,31,248,0,31,248,0,31,248, + 0,31,248,0,31,248,0,31,248,0,31,248,0,31,252,0, + 31,252,0,31,252,0,63,124,0,63,126,0,126,127,0,254, + 63,255,252,31,255,252,31,255,248,7,255,224,1,255,192,24, + 41,123,30,3,0,0,3,224,0,3,224,0,7,192,0,15, + 128,0,15,0,0,30,0,0,28,0,0,56,0,0,0,0, + 0,0,0,0,0,0,248,0,31,248,0,31,248,0,31,248, + 0,31,248,0,31,248,0,31,248,0,31,248,0,31,248,0, + 31,248,0,31,248,0,31,248,0,31,248,0,31,248,0,31, + 248,0,31,248,0,31,248,0,31,248,0,31,248,0,31,252, + 0,31,252,0,31,252,0,63,124,0,63,126,0,126,127,0, + 254,63,255,252,31,255,252,31,255,248,7,255,224,1,255,192, + 24,41,123,30,3,0,0,126,0,0,255,0,0,255,0,1, + 247,128,1,231,128,3,195,192,3,129,192,7,0,224,0,0, + 0,0,0,0,0,0,0,248,0,31,248,0,31,248,0,31, + 248,0,31,248,0,31,248,0,31,248,0,31,248,0,31,248, + 0,31,248,0,31,248,0,31,248,0,31,248,0,31,248,0, + 31,248,0,31,248,0,31,248,0,31,248,0,31,248,0,31, + 252,0,31,252,0,31,252,0,63,124,0,63,126,0,126,127, + 0,254,63,255,252,31,255,252,31,255,248,7,255,224,1,255, + 192,24,40,120,30,3,0,3,193,224,3,193,224,3,193,224, + 3,193,224,3,193,224,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,252,0,31,252,0,31,252,0,31,252,0, + 31,252,0,31,252,0,31,252,0,31,252,0,31,252,0,31, + 252,0,31,252,0,31,252,0,31,252,0,31,252,0,31,252, + 0,31,252,0,31,252,0,31,252,0,31,252,0,31,252,0, + 31,252,0,31,254,0,63,126,0,63,127,0,126,127,128,254, + 63,255,252,31,255,252,31,255,248,7,255,224,1,255,192,24, + 41,123,25,1,0,0,7,192,0,15,128,0,15,0,0,14, + 0,0,30,0,0,28,0,0,56,0,0,0,0,0,0,0, + 0,0,0,0,0,0,252,0,127,254,0,126,126,0,254,127, + 0,252,63,1,252,63,1,248,31,131,248,31,131,240,15,195, + 240,15,199,224,7,231,224,7,239,192,3,255,192,3,255,128, + 1,255,128,1,255,0,0,255,0,0,254,0,0,126,0,0, + 124,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 21,30,90,26,2,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,255,252,0,255,255,128,255,255,192,255,255, + 224,255,255,240,248,7,240,248,1,248,248,1,248,248,0,248, + 248,0,248,248,1,248,248,1,248,248,7,240,255,255,240,255, + 255,224,255,255,192,255,255,128,255,252,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 21,30,90,24,2,1,15,252,0,63,255,0,127,255,128,126, + 31,192,252,15,192,252,7,192,248,7,192,248,15,192,248,15, + 128,248,31,128,248,63,0,248,126,0,248,252,0,248,248,0, + 248,248,0,248,252,0,248,254,0,248,127,128,248,63,192,248, + 31,224,248,7,240,248,3,240,248,1,248,248,1,248,251,224, + 248,251,225,248,251,241,248,249,255,240,249,255,224,248,255,192, + 19,32,96,22,2,0,31,0,0,31,0,0,15,128,0,7, + 128,0,3,192,0,1,192,0,1,224,0,0,224,0,0,0, + 0,0,0,0,0,0,0,0,0,0,15,254,0,31,255,0, + 63,255,128,126,15,128,124,15,192,0,7,192,0,127,192,15, + 255,192,63,255,192,127,255,192,127,7,192,252,7,192,252,7, + 192,248,15,192,248,15,192,252,15,192,254,31,192,127,255,192, + 63,247,192,31,227,224,19,32,96,22,2,0,0,31,0,0, + 62,0,0,60,0,0,120,0,0,120,0,0,240,0,0,224, + 0,1,192,0,0,0,0,0,0,0,0,0,0,0,0,0, + 15,254,0,31,255,0,63,255,128,126,15,128,124,15,192,0, + 7,192,0,127,192,15,255,192,63,255,192,127,255,192,127,7, + 192,252,7,192,252,7,192,248,15,192,248,15,192,252,15,192, + 254,31,192,127,255,192,63,247,192,31,227,224,19,32,96,22, + 2,0,3,240,0,3,248,0,7,248,0,7,188,0,15,28, + 0,14,30,0,28,14,0,28,7,0,0,0,0,0,0,0, + 0,0,0,0,0,0,15,254,0,31,255,0,63,255,128,126, + 15,128,124,15,192,0,7,192,0,127,192,15,255,192,63,255, + 192,127,255,192,127,7,192,252,7,192,252,7,192,248,15,192, + 248,15,192,252,15,192,254,31,192,127,255,192,63,247,192,31, + 227,224,19,30,90,22,2,0,7,135,0,15,254,0,15,254, + 0,31,252,0,24,16,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,15,254,0,31,255,0,63,255,128,126, + 15,128,124,15,192,0,7,192,0,127,192,15,255,192,63,255, + 192,127,255,192,127,7,192,252,7,192,252,7,192,248,15,192, + 248,15,192,252,15,192,254,31,192,127,255,192,63,247,192,31, + 227,224,19,31,93,23,2,0,30,30,0,30,30,0,30,30, + 0,30,30,0,30,30,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,15,254,0,31,255,0,63, + 255,128,126,15,128,124,15,192,0,7,192,0,127,192,15,255, + 192,63,255,192,127,255,192,127,7,192,252,7,192,252,7,192, + 248,15,192,248,15,192,252,15,192,254,31,192,127,255,192,63, + 247,192,31,231,224,19,34,102,22,2,0,1,240,0,3,248, + 0,7,28,0,6,12,0,6,12,0,6,12,0,7,28,0, + 3,248,0,1,240,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,15,254,0,31,255,0,63,255,128,126,15, + 128,124,15,192,0,7,192,0,127,192,15,255,192,63,255,192, + 127,255,192,127,7,192,252,7,192,252,7,192,248,15,192,248, + 15,192,252,15,192,254,31,192,127,255,192,63,247,192,31,231, + 224,32,20,80,36,2,1,15,252,31,224,31,254,127,248,63, + 255,127,252,126,15,240,126,124,7,224,62,0,7,224,62,0, + 7,192,31,7,255,255,255,31,255,255,255,63,255,255,255,127, + 255,255,255,252,7,192,0,252,7,224,0,248,7,224,0,248, + 15,224,63,252,15,240,62,254,30,248,126,127,252,127,252,63, + 248,63,248,31,224,31,240,17,30,90,21,2,247,15,252,0, + 31,254,0,63,255,0,126,63,0,124,31,128,124,31,128,252, + 15,128,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,252,15,128,252,31,128,124,31,128,126,63,0, + 63,255,0,31,254,0,15,252,0,1,128,0,1,128,0,1, + 224,0,1,248,0,0,60,0,0,28,0,0,28,0,6,60, + 0,7,248,0,7,224,0,19,32,96,22,2,0,31,0,0, + 31,0,0,15,128,0,7,128,0,3,192,0,1,192,0,0, + 224,0,0,224,0,0,0,0,0,0,0,0,0,0,0,0, + 0,7,252,0,31,255,0,63,255,0,62,31,128,124,15,192, + 124,7,192,252,7,192,255,255,192,255,255,192,255,255,224,255, + 255,224,248,0,0,248,0,0,252,0,0,124,7,192,124,15, + 192,126,31,128,63,255,128,31,255,0,7,252,0,19,32,96, + 22,2,0,0,31,0,0,62,0,0,60,0,0,120,0,0, + 120,0,0,240,0,0,224,0,1,192,0,0,0,0,0,0, + 0,0,0,0,0,0,0,7,252,0,31,255,0,63,255,0, + 62,31,128,124,15,192,124,7,192,252,7,192,255,255,192,255, + 255,192,255,255,224,255,255,224,248,0,0,248,0,0,252,0, + 0,124,7,192,124,15,192,126,31,128,63,255,128,31,255,0, + 7,252,0,19,32,96,22,2,0,3,240,0,3,248,0,7, + 248,0,7,188,0,15,28,0,14,30,0,28,14,0,28,7, + 0,0,0,0,0,0,0,0,0,0,0,0,0,7,252,0, + 31,255,0,63,255,0,62,31,128,124,15,192,124,7,192,252, + 7,192,255,255,192,255,255,192,255,255,224,255,255,224,248,0, + 0,248,0,0,252,0,0,124,7,192,124,15,192,126,31,128, + 63,255,128,31,255,0,7,252,0,19,31,93,22,2,0,30, + 30,0,30,30,0,30,30,0,30,30,0,30,30,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 7,252,0,31,255,0,63,255,0,62,31,128,124,15,192,124, + 15,192,252,15,192,255,255,192,255,255,192,255,255,224,255,255, + 224,248,0,0,248,0,0,252,0,0,124,15,192,124,15,192, + 126,31,128,63,255,128,31,255,0,7,252,0,8,32,32,11, + 0,0,248,120,124,60,30,14,7,7,0,0,0,0,31,31, + 31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31, + 31,31,9,32,64,10,2,0,15,128,31,0,30,0,62,0, + 60,0,120,0,112,0,224,0,0,0,0,0,0,0,0,0, + 124,0,124,0,124,0,124,0,124,0,124,0,124,0,124,0, + 124,0,124,0,124,0,124,0,124,0,124,0,124,0,124,0, + 124,0,124,0,124,0,124,0,13,32,64,11,255,0,15,192, + 31,192,31,224,61,224,56,240,120,112,112,56,224,56,0,0, + 0,0,0,0,0,0,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,13,31, + 62,11,255,0,240,120,240,120,240,120,240,120,240,120,0,0, + 0,0,0,0,0,0,0,0,0,0,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,20,31,93,24,2,0,0,0,96,7,193,224,3,247, + 224,1,255,128,0,254,0,0,254,0,3,254,0,15,159,0, + 30,15,128,24,15,128,0,7,192,7,255,192,15,255,224,63, + 255,224,63,15,240,126,3,240,124,3,240,252,1,240,252,1, + 240,252,1,240,248,1,240,248,1,240,252,1,240,252,1,240, + 252,1,240,124,3,240,126,3,224,63,15,224,31,255,192,15, + 255,128,7,254,0,18,30,90,24,3,0,7,134,0,15,254, + 0,15,254,0,31,252,0,24,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,249,255,0,251,255,128,251, + 255,192,255,31,192,254,15,192,252,7,192,252,7,192,252,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,20,32,96,24,2,0,15,128,0,7,128, + 0,7,192,0,3,192,0,1,224,0,0,224,0,0,112,0, + 0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,3, + 254,0,15,255,0,31,255,192,63,15,192,126,3,224,124,3, + 240,252,1,240,252,1,240,252,1,240,248,1,240,248,1,240, + 248,1,240,252,1,240,252,1,240,124,3,240,126,3,224,63, + 15,192,31,255,192,15,255,0,3,254,0,20,32,96,24,2, + 0,0,15,128,0,31,0,0,30,0,0,60,0,0,56,0, + 0,120,0,0,112,0,0,224,0,0,0,0,0,0,0,0, + 0,0,0,0,0,3,254,0,15,255,0,31,255,192,63,15, + 192,126,3,224,124,3,240,252,1,240,252,1,240,252,1,240, + 248,1,240,248,1,240,248,1,240,252,1,240,252,1,240,124, + 3,240,126,3,224,63,15,192,31,255,192,15,255,0,3,254, + 0,20,32,96,24,2,0,1,248,0,1,252,0,3,252,0, + 3,222,0,7,158,0,7,15,0,14,7,0,14,3,128,0, + 0,0,0,0,0,0,0,0,0,0,0,3,254,0,15,255, + 0,31,255,192,63,15,192,126,3,224,124,3,240,252,1,240, + 252,1,240,252,1,240,248,1,240,248,1,240,248,1,240,252, + 1,240,252,1,240,124,3,240,126,3,224,63,15,192,31,255, + 192,15,255,0,3,254,0,20,31,93,24,2,0,0,1,128, + 3,195,0,7,255,0,7,255,0,15,254,0,12,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,254, + 0,15,255,0,31,255,192,63,15,192,126,3,224,124,3,240, + 252,1,240,252,1,240,252,1,240,248,1,240,248,1,240,248, + 1,240,252,1,240,252,1,240,124,3,240,126,3,224,63,15, + 192,31,255,192,15,255,0,3,254,0,20,31,93,24,2,0, + 15,7,128,15,7,128,15,7,128,15,7,128,15,7,128,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,3,254,0,15,255,0,31,255,192,63,15,192,126,3,224, + 124,3,240,252,1,240,252,1,240,252,1,240,248,1,240,248, + 1,240,248,1,240,252,1,240,252,1,240,124,3,240,126,3, + 224,63,15,192,31,255,192,15,255,0,3,254,0,24,19,57, + 40,8,2,0,16,0,0,56,0,0,124,0,0,124,0,0, + 124,0,0,0,0,0,0,0,0,0,0,255,255,255,255,255, + 255,255,255,255,0,0,0,0,0,0,0,0,0,0,56,0, + 0,124,0,0,124,0,0,124,0,0,56,0,21,26,78,24, + 1,254,0,0,56,0,0,120,0,0,112,1,255,224,7,255, + 224,15,255,224,31,135,224,63,7,240,62,15,248,126,14,248, + 126,28,248,126,56,248,124,120,248,124,112,248,126,224,248,127, + 192,248,63,193,248,63,129,248,63,3,240,31,135,224,31,255, + 224,31,255,192,57,255,0,120,0,0,240,0,0,96,0,0, + 18,32,96,24,3,0,31,0,0,15,0,0,15,128,0,7, + 128,0,3,192,0,1,192,0,0,224,0,0,224,0,0,0, + 0,0,0,0,0,0,0,0,0,0,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,252,7,192,252,15,192,252,15,192,254,31,192,127,255,192, + 63,247,192,31,231,192,18,32,96,24,3,0,0,62,0,0, + 60,0,0,124,0,0,120,0,0,240,0,0,224,0,1,224, + 0,1,192,0,0,0,0,0,0,0,0,0,0,0,0,0, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,248,7,192,248,7,192,252,7,192,252,15,192,252,15,192, + 254,31,192,127,255,192,63,247,192,31,231,192,18,32,96,24, + 3,0,3,240,0,3,248,0,7,248,0,7,188,0,15,60, + 0,14,30,0,30,14,0,28,6,0,0,0,0,0,0,0, + 0,0,0,0,0,0,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,252,7,192, + 252,15,192,252,15,192,254,31,192,127,255,192,63,247,192,31, + 231,192,18,31,93,24,3,0,30,30,0,30,30,0,30,30, + 0,30,30,0,30,30,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 252,7,192,252,15,192,252,15,192,254,31,192,127,255,192,63, + 247,192,31,231,192,21,41,123,22,1,248,0,7,192,0,15, + 128,0,15,0,0,30,0,0,30,0,0,60,0,0,56,0, + 0,112,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,252,1,248,252,3,240,126,3,240,126,3,224,63,7, + 224,63,7,224,63,7,192,31,143,192,31,143,192,15,143,128, + 15,223,128,15,223,128,7,223,0,7,255,0,3,255,0,3, + 254,0,3,254,0,1,252,0,1,252,0,0,252,0,0,248, + 0,1,248,0,33,248,0,115,240,0,255,240,0,255,224,0, + 127,192,0,31,128,0,20,38,114,25,3,248,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,249,254,0,251,255,128, + 251,255,192,255,15,192,254,7,224,252,3,224,252,3,240,252, + 3,240,252,3,240,248,1,240,248,1,240,252,3,240,252,3, + 240,252,3,240,252,3,224,254,7,224,255,15,192,255,255,192, + 251,255,128,249,254,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,21,39, + 117,21,0,248,15,7,128,15,7,128,15,7,128,15,7,128, + 15,7,128,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,252,1,248,252,1,248,126,1,240,126,3, + 240,63,3,224,63,3,224,63,7,224,31,135,192,31,143,192, + 15,207,192,15,207,128,15,223,128,7,255,128,7,255,0,3, + 255,0,3,255,0,3,254,0,1,254,0,1,252,0,0,252, + 0,0,252,0,1,248,0,1,248,0,1,248,0,3,240,0, + 3,240,0,7,240,0,7,224,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--40-400-72-72-P-198-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 30 + Calculated Max Values w=24 h=32 x= 8 y=14 dx=40 dy= 0 ascent=31 len=90 + Font Bounding box w=59 h=54 x=-3 y=-11 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =30 descent= 0 + X Font ascent =30 descent= 0 + Max Font ascent =31 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub30n[1179] U8G_SECTION(".progmem.u8g_font_fub30n") = { + 0,59,54,253,245,30,0,0,0,0,42,57,0,31,251,30, + 0,16,16,32,26,5,14,4,32,28,56,30,120,30,120,15, + 240,7,224,227,199,255,255,255,255,243,207,7,224,15,240,30, + 120,30,120,28,56,4,32,24,25,75,40,8,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,255,255, + 255,255,255,255,255,255,255,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,8,10,10,12,2,251,31,31, + 62,62,60,124,120,120,240,240,10,5,10,14,2,8,255,192, + 255,192,255,192,255,192,255,192,5,5,5,12,4,0,248,248, + 248,248,248,13,32,64,17,2,254,0,120,0,120,0,120,0, + 240,0,240,0,240,1,224,1,224,1,224,3,192,3,192,3, + 192,3,192,7,128,7,128,7,128,15,0,15,0,15,0,14, + 0,30,0,30,0,30,0,60,0,60,0,60,0,120,0,120, + 0,120,0,120,0,240,0,240,0,20,30,90,23,1,1,3, + 252,0,15,255,0,31,255,128,63,15,128,62,7,192,124,3, + 192,124,3,224,124,3,224,124,3,224,248,1,240,248,1,240, + 248,1,240,248,1,240,248,1,240,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,240,248,1,240,248,1,240,124,3, + 224,124,3,224,124,3,224,124,3,224,62,7,192,63,15,128, + 31,255,128,15,255,0,3,252,0,12,30,60,23,4,0,1, + 240,3,240,15,240,63,240,255,240,255,240,253,240,249,240,225, + 240,129,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,20,30,90,23,1, + 1,3,255,0,7,255,128,31,255,192,31,255,224,63,255,240, + 63,3,240,126,1,240,126,1,240,124,1,240,0,1,240,0, + 3,240,0,3,240,0,7,224,0,15,224,0,15,192,0,31, + 128,0,63,0,0,254,0,1,252,0,3,248,0,7,240,0, + 15,224,0,63,128,0,127,0,0,252,0,0,255,255,240,255, + 255,240,255,255,240,255,255,240,255,255,240,19,30,90,23,2, + 1,7,252,0,31,255,0,63,255,128,127,255,128,127,255,192, + 252,15,192,252,7,192,248,7,192,0,7,192,0,7,192,0, + 15,192,0,63,192,3,255,128,3,254,0,3,252,0,3,255, + 0,3,255,128,0,31,192,0,7,224,0,7,224,0,7,224, + 0,3,224,248,7,224,252,7,224,252,7,192,126,15,192,127, + 255,128,63,255,128,31,255,0,15,252,0,21,30,90,23,1, + 0,0,63,128,0,63,128,0,127,128,0,255,128,0,255,128, + 1,255,128,1,255,128,3,239,128,3,207,128,7,207,128,15, + 143,128,15,143,128,31,15,128,31,15,128,62,15,128,62,15, + 128,124,15,128,252,15,128,248,15,128,255,255,248,255,255,248, + 255,255,248,255,255,248,255,255,248,0,15,128,0,15,128,0, + 15,128,0,15,128,0,15,128,0,15,128,19,30,90,23,2, + 0,127,255,192,127,255,192,127,255,192,127,255,192,127,255,192, + 124,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,252,0,125,255,0,127,255,128,127,255,192,127,15, + 224,126,7,224,124,3,224,0,3,224,0,3,224,0,3,224, + 0,3,224,0,3,224,248,7,224,252,7,224,252,15,192,127, + 255,128,127,255,128,63,254,0,15,252,0,20,30,90,23,1, + 1,3,254,0,7,255,0,15,255,128,31,255,192,63,255,192, + 63,7,224,126,3,224,126,3,224,124,0,0,124,0,0,252, + 0,0,248,0,0,249,255,0,251,255,128,255,255,192,255,15, + 224,254,7,224,254,3,240,252,3,240,252,3,240,252,1,240, + 252,1,240,124,3,240,124,3,240,126,3,224,63,7,224,63, + 255,192,31,255,128,15,255,0,3,254,0,19,30,90,23,2, + 0,255,255,224,255,255,224,255,255,224,255,255,224,255,255,224, + 0,7,224,0,7,224,0,7,192,0,15,192,0,15,192,0, + 31,128,0,31,128,0,63,0,0,63,0,0,63,0,0,126, + 0,0,126,0,0,252,0,0,252,0,1,252,0,1,248,0, + 1,248,0,3,240,0,3,240,0,7,240,0,7,224,0,15, + 224,0,15,192,0,15,192,0,31,192,0,20,30,90,23,1, + 1,7,254,0,31,255,128,63,255,192,127,255,224,127,255,224, + 126,7,224,124,3,224,124,3,224,124,3,224,124,3,224,126, + 7,224,127,15,192,63,255,128,15,255,0,7,252,0,31,255, + 0,63,255,192,127,15,224,124,7,224,252,3,240,252,3,240, + 248,1,240,248,3,240,252,3,240,252,3,240,254,7,240,127, + 255,224,63,255,192,31,255,128,15,255,0,20,30,90,23,1, + 1,3,252,0,15,255,0,31,255,128,63,255,192,127,255,192, + 126,7,224,252,7,224,252,3,224,252,3,240,248,3,240,248, + 3,240,252,3,240,252,7,240,124,7,240,127,15,240,63,255, + 240,63,253,240,31,249,240,7,225,240,0,3,240,0,3,224, + 0,3,224,0,3,224,124,7,224,124,7,192,126,15,192,63, + 255,128,31,255,0,15,254,0,7,252,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--40-400-72-72-P-198-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 30, '1' Height: 30 + Calculated Max Values w=38 h=43 x=10 y=25 dx=42 dy= 0 ascent=33 len=195 + Font Bounding box w=59 h=54 x=-3 y=-11 + Calculated Min Values x=-1 y=-11 dx= 0 dy= 0 + Pure Font ascent =30 descent=-7 + X Font ascent =31 descent=-8 + Max Font ascent =33 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub30r[7686] U8G_SECTION(".progmem.u8g_font_fub30r") = { + 0,59,54,253,245,30,9,163,21,182,32,127,249,33,245,31, + 248,0,0,0,12,0,0,5,30,30,16,5,0,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,0,0,0,248,248,248,248,248,15,12,24,21,3, + 18,252,126,252,126,252,126,252,126,248,126,248,126,248,60,248, + 60,120,60,120,60,120,60,120,60,25,30,120,29,2,0,0, + 60,30,0,0,60,30,0,0,120,60,0,0,120,60,0,0, + 120,60,0,0,120,120,0,0,240,120,0,0,240,120,0,15, + 255,255,128,31,255,255,0,31,255,255,0,31,255,255,0,1, + 224,224,0,3,193,224,0,3,193,224,0,3,193,224,0,7, + 131,192,0,7,131,192,0,127,255,252,0,255,255,248,0,255, + 255,248,0,255,255,248,0,15,7,128,0,30,15,0,0,30, + 15,0,0,30,15,0,0,62,30,0,0,60,30,0,0,60, + 30,0,0,60,30,0,0,21,37,111,23,1,252,0,96,0, + 0,96,0,0,96,0,3,254,0,15,255,128,31,255,192,63, + 255,224,127,111,224,126,99,240,124,99,240,124,97,240,124,96, + 0,124,96,0,126,96,0,127,224,0,127,240,0,63,254,0, + 31,255,128,7,255,224,0,255,240,0,127,240,0,103,248,0, + 97,248,248,97,248,248,96,248,252,97,248,252,97,248,126,99, + 240,127,255,240,63,255,224,31,255,192,15,255,128,3,254,0, + 0,96,0,0,96,0,0,96,0,0,96,0,37,30,150,41, + 2,0,7,224,0,120,0,31,248,0,240,0,63,252,0,240, + 0,124,62,1,224,0,120,30,3,224,0,240,15,3,192,0, + 240,15,7,192,0,240,15,7,128,0,240,15,15,0,0,240, + 15,15,0,0,240,15,30,0,0,240,15,30,0,0,120,30, + 60,0,0,124,62,124,0,0,63,252,120,63,0,31,248,248, + 255,192,7,224,241,255,224,0,1,227,225,240,0,1,227,192, + 240,0,3,199,128,120,0,3,199,128,120,0,7,135,128,120, + 0,7,135,128,120,0,15,7,128,120,0,31,7,128,120,0, + 30,3,192,240,0,62,3,192,240,0,60,1,243,224,0,120, + 1,255,192,0,120,0,127,128,28,30,120,31,2,1,3,255, + 0,0,15,255,128,0,31,255,192,0,63,143,224,0,63,7, + 224,0,62,3,224,0,63,7,224,0,63,7,224,0,31,15, + 192,0,31,159,192,0,15,255,128,0,15,255,0,0,7,252, + 0,0,15,248,0,0,31,248,15,128,63,252,15,128,63,126, + 15,128,126,127,15,128,126,63,143,128,252,31,207,128,252,15, + 255,0,248,7,255,0,248,3,255,0,252,1,254,0,252,0, + 254,0,126,0,254,0,127,131,255,0,63,255,255,128,31,255, + 255,224,7,255,135,240,6,12,12,16,5,18,252,252,252,124, + 124,124,124,124,120,120,120,120,9,36,72,16,4,251,15,128, + 31,0,31,0,31,0,62,0,62,0,62,0,126,0,124,0, + 124,0,124,0,124,0,252,0,252,0,252,0,252,0,248,0, + 248,0,248,0,248,0,248,0,252,0,252,0,252,0,124,0, + 124,0,124,0,124,0,126,0,62,0,62,0,62,0,31,0, + 31,0,31,0,15,128,8,36,36,16,4,251,240,248,120,124, + 124,124,62,62,62,63,63,31,31,31,31,31,31,31,31,31, + 31,31,31,31,63,63,63,62,62,62,124,124,124,248,248,240, + 16,16,32,26,5,14,4,32,28,56,30,120,30,120,15,240, + 7,224,227,199,255,255,255,255,243,207,7,224,15,240,30,120, + 30,120,28,56,4,32,24,25,75,40,8,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,255,255,255, + 255,255,255,255,255,255,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,8,10,10,12,2,251,31,31,62, + 62,60,124,120,120,240,240,10,5,10,14,2,8,255,192,255, + 192,255,192,255,192,255,192,5,5,5,12,4,0,248,248,248, + 248,248,13,32,64,17,2,254,0,120,0,120,0,120,0,240, + 0,240,0,240,1,224,1,224,1,224,3,192,3,192,3,192, + 3,192,7,128,7,128,7,128,15,0,15,0,15,0,14,0, + 30,0,30,0,30,0,60,0,60,0,60,0,120,0,120,0, + 120,0,120,0,240,0,240,0,20,30,90,23,1,1,3,252, + 0,15,255,0,31,255,128,63,15,128,62,7,192,124,3,192, + 124,3,224,124,3,224,124,3,224,248,1,240,248,1,240,248, + 1,240,248,1,240,248,1,240,248,1,240,248,1,240,248,1, + 240,248,1,240,248,1,240,248,1,240,248,1,240,124,3,224, + 124,3,224,124,3,224,124,3,224,62,7,192,63,15,128,31, + 255,128,15,255,0,3,252,0,12,30,60,23,4,0,1,240, + 3,240,15,240,63,240,255,240,255,240,253,240,249,240,225,240, + 129,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,20,30,90,23,1,1, + 3,255,0,7,255,128,31,255,192,31,255,224,63,255,240,63, + 3,240,126,1,240,126,1,240,124,1,240,0,1,240,0,3, + 240,0,3,240,0,7,224,0,15,224,0,15,192,0,31,128, + 0,63,0,0,254,0,1,252,0,3,248,0,7,240,0,15, + 224,0,63,128,0,127,0,0,252,0,0,255,255,240,255,255, + 240,255,255,240,255,255,240,255,255,240,19,30,90,23,2,1, + 7,252,0,31,255,0,63,255,128,127,255,128,127,255,192,252, + 15,192,252,7,192,248,7,192,0,7,192,0,7,192,0,15, + 192,0,63,192,3,255,128,3,254,0,3,252,0,3,255,0, + 3,255,128,0,31,192,0,7,224,0,7,224,0,7,224,0, + 3,224,248,7,224,252,7,224,252,7,192,126,15,192,127,255, + 128,63,255,128,31,255,0,15,252,0,21,30,90,23,1,0, + 0,63,128,0,63,128,0,127,128,0,255,128,0,255,128,1, + 255,128,1,255,128,3,239,128,3,207,128,7,207,128,15,143, + 128,15,143,128,31,15,128,31,15,128,62,15,128,62,15,128, + 124,15,128,252,15,128,248,15,128,255,255,248,255,255,248,255, + 255,248,255,255,248,255,255,248,0,15,128,0,15,128,0,15, + 128,0,15,128,0,15,128,0,15,128,19,30,90,23,2,0, + 127,255,192,127,255,192,127,255,192,127,255,192,127,255,192,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,252,0,125,255,0,127,255,128,127,255,192,127,15,224, + 126,7,224,124,3,224,0,3,224,0,3,224,0,3,224,0, + 3,224,0,3,224,248,7,224,252,7,224,252,15,192,127,255, + 128,127,255,128,63,254,0,15,252,0,20,30,90,23,1,1, + 3,254,0,7,255,0,15,255,128,31,255,192,63,255,192,63, + 7,224,126,3,224,126,3,224,124,0,0,124,0,0,252,0, + 0,248,0,0,249,255,0,251,255,128,255,255,192,255,15,224, + 254,7,224,254,3,240,252,3,240,252,3,240,252,1,240,252, + 1,240,124,3,240,124,3,240,126,3,224,63,7,224,63,255, + 192,31,255,128,15,255,0,3,254,0,19,30,90,23,2,0, + 255,255,224,255,255,224,255,255,224,255,255,224,255,255,224,0, + 7,224,0,7,224,0,7,192,0,15,192,0,15,192,0,31, + 128,0,31,128,0,63,0,0,63,0,0,63,0,0,126,0, + 0,126,0,0,252,0,0,252,0,1,252,0,1,248,0,1, + 248,0,3,240,0,3,240,0,7,240,0,7,224,0,15,224, + 0,15,192,0,15,192,0,31,192,0,20,30,90,23,1,1, + 7,254,0,31,255,128,63,255,192,127,255,224,127,255,224,126, + 7,224,124,3,224,124,3,224,124,3,224,124,3,224,126,7, + 224,127,15,192,63,255,128,15,255,0,7,252,0,31,255,0, + 63,255,192,127,15,224,124,7,224,252,3,240,252,3,240,248, + 1,240,248,3,240,252,3,240,252,3,240,254,7,240,127,255, + 224,63,255,192,31,255,128,15,255,0,20,30,90,23,1,1, + 3,252,0,15,255,0,31,255,128,63,255,192,127,255,192,126, + 7,224,252,7,224,252,3,224,252,3,240,248,3,240,248,3, + 240,252,3,240,252,7,240,124,7,240,127,15,240,63,255,240, + 63,253,240,31,249,240,7,225,240,0,3,240,0,3,224,0, + 3,224,0,3,224,124,7,224,124,7,192,126,15,192,63,255, + 128,31,255,0,15,254,0,7,252,0,5,20,20,12,5,0, + 248,248,248,248,248,0,0,0,0,0,0,0,0,0,0,248, + 248,248,248,248,9,25,50,13,2,251,31,0,31,0,31,0, + 31,0,31,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,31,128,31,0,63,0,62,0, + 62,0,124,0,124,0,120,0,248,0,240,0,24,21,63,40, + 8,2,0,0,1,0,0,15,0,0,63,0,1,252,0,7, + 224,0,63,0,0,252,0,7,224,0,63,0,0,252,0,0, + 224,0,0,248,0,0,126,0,0,15,192,0,3,240,0,0, + 126,0,0,31,192,0,3,240,0,0,126,0,0,31,0,0, + 3,24,10,30,40,8,7,255,255,255,255,255,255,255,255,255, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255, + 255,255,255,255,255,24,21,63,40,8,2,128,0,0,240,0, + 0,252,0,0,63,128,0,7,224,0,0,252,0,0,63,0, + 0,7,224,0,0,252,0,0,63,0,0,7,0,0,31,0, + 0,126,0,3,240,0,15,192,0,126,0,3,248,0,15,192, + 0,126,0,0,248,0,0,192,0,0,18,30,90,22,1,1, + 7,252,0,31,254,0,63,255,128,127,255,128,252,15,192,120, + 7,192,56,7,192,0,7,192,0,7,192,0,15,192,0,15, + 128,0,31,128,0,63,0,0,126,0,0,248,0,1,240,0, + 3,224,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,0,0,0,0,0,0,0,0,0,3,224,0,3,224, + 0,3,224,0,3,224,0,3,224,0,38,39,195,42,2,248, + 0,3,255,224,0,0,31,255,248,0,0,127,255,254,0,0, + 255,255,255,0,3,255,255,255,128,7,254,0,127,192,7,248, + 0,31,224,15,224,0,15,240,31,192,0,7,240,63,128,0, + 3,248,63,1,241,241,248,63,7,253,241,252,126,15,255,240, + 252,126,31,255,240,252,124,31,135,240,252,252,63,3,240,124, + 252,63,3,240,124,252,62,1,240,124,252,62,1,240,124,248, + 62,1,240,124,248,62,1,240,124,248,62,1,240,124,252,62, + 1,240,124,252,63,3,240,252,124,63,3,248,248,124,31,135, + 249,248,126,31,255,255,240,63,15,254,255,224,63,7,252,127, + 192,31,129,248,31,0,31,192,0,0,0,15,224,0,0,0, + 7,248,0,0,0,3,254,0,56,0,1,255,255,248,0,0, + 255,255,248,0,0,63,255,248,0,0,15,255,248,0,0,1, + 255,224,0,27,30,120,28,1,0,0,63,0,0,0,63,128, + 0,0,127,128,0,0,127,128,0,0,127,192,0,0,255,192, + 0,0,255,224,0,0,255,224,0,1,251,224,0,1,243,240, + 0,3,243,240,0,3,241,240,0,3,225,248,0,7,225,248, + 0,7,224,248,0,7,192,252,0,15,192,252,0,15,192,126, + 0,15,128,126,0,31,255,254,0,31,255,255,0,63,255,255, + 0,63,255,255,0,63,255,255,128,126,0,31,128,126,0,31, + 128,126,0,15,192,252,0,15,192,252,0,7,192,248,0,7, + 224,22,30,90,27,3,0,255,254,0,255,255,128,255,255,224, + 255,255,224,255,255,240,248,7,240,248,3,240,248,1,240,248, + 1,240,248,1,240,248,3,240,248,7,224,255,255,192,255,255, + 128,255,254,0,255,255,192,255,255,240,248,3,248,248,1,248, + 248,0,252,248,0,252,248,0,252,248,0,252,248,1,252,248, + 3,252,255,255,248,255,255,240,255,255,224,255,255,192,255,255, + 0,24,30,90,29,2,1,1,255,192,3,255,240,15,255,248, + 15,255,252,31,255,254,63,128,254,62,0,127,126,0,63,124, + 0,63,124,0,63,252,0,0,252,0,0,252,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,252,0,0, + 252,0,0,124,0,63,124,0,63,126,0,127,62,0,127,63, + 128,254,31,255,254,31,255,252,15,255,248,7,255,224,1,255, + 192,24,30,90,29,3,0,255,248,0,255,255,0,255,255,192, + 255,255,224,255,255,240,248,15,248,248,1,252,248,0,252,248, + 0,126,248,0,126,248,0,62,248,0,63,248,0,63,248,0, + 63,248,0,31,248,0,31,248,0,63,248,0,63,248,0,63, + 248,0,63,248,0,126,248,0,126,248,0,252,248,1,252,248, + 15,248,255,255,240,255,255,224,255,255,192,255,255,0,255,248, + 0,20,30,90,25,3,0,255,255,224,255,255,224,255,255,224, + 255,255,224,255,255,224,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,255,255, + 224,255,255,224,255,255,224,255,255,224,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,255,255,240,255,255,240,255,255,240,255,255,240,255,255, + 240,19,30,90,24,3,0,255,255,224,255,255,224,255,255,224, + 255,255,224,255,255,224,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,255,255,192,255,255, + 192,255,255,192,255,255,192,255,255,192,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,26,30,120,30,2,1,0,127,240,0,1,255,252,0,3, + 255,254,0,15,255,255,0,15,255,255,128,31,192,63,128,63, + 128,15,192,63,0,15,192,126,0,15,192,126,0,7,192,124, + 0,0,0,252,0,0,0,252,0,0,0,252,0,0,0,248, + 1,255,192,248,1,255,192,248,1,255,192,252,1,255,192,252, + 1,255,192,252,0,7,192,124,0,7,192,126,0,7,192,127, + 0,7,192,63,128,7,192,63,224,7,192,31,255,255,192,15, + 255,255,192,7,255,255,192,1,255,255,192,0,127,254,0,23, + 30,90,29,3,0,248,0,62,248,0,62,248,0,62,248,0, + 62,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,248,0,62,248,0,62,255,255,254,255,255,254,255, + 255,254,255,255,254,255,255,254,248,0,62,248,0,62,248,0, + 62,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,5, + 30,30,11,3,0,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,20,30,90,25,2,0,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,248,1,240,248,3,240,252,3,240,252,3, + 240,254,7,224,127,255,224,127,255,192,63,255,128,31,255,0, + 15,254,0,23,30,90,27,3,0,248,1,248,248,3,248,248, + 7,240,248,15,224,248,15,192,248,31,192,248,63,128,248,127, + 0,248,126,0,248,254,0,249,252,0,251,248,0,251,240,0, + 255,240,0,255,240,0,251,248,0,249,252,0,249,254,0,248, + 254,0,248,127,0,248,127,128,248,63,128,248,31,192,248,31, + 224,248,15,224,248,7,240,248,7,248,248,3,248,248,1,252, + 248,0,254,19,30,90,23,3,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,255,255,224,255,255,224,255,255,224,255,255,224, + 255,255,224,31,30,120,37,3,0,255,192,3,254,255,192,3, + 254,255,192,7,254,255,192,7,254,255,224,7,254,251,224,15, + 254,251,224,15,254,251,240,15,190,251,240,15,190,249,240,31, + 190,249,240,31,62,249,248,31,62,248,248,63,62,248,248,63, + 62,248,252,62,62,248,124,126,62,248,124,126,62,248,126,124, + 62,248,126,124,62,248,62,252,62,248,62,248,62,248,63,248, + 62,248,31,248,62,248,31,248,62,248,31,240,62,248,31,240, + 62,248,15,240,62,248,15,224,62,248,15,224,62,248,7,224, + 62,25,30,120,31,3,0,255,128,15,128,255,128,15,128,255, + 128,15,128,255,192,15,128,255,192,15,128,255,224,15,128,251, + 224,15,128,251,240,15,128,249,240,15,128,249,248,15,128,248, + 248,15,128,248,252,15,128,248,252,15,128,248,126,15,128,248, + 126,15,128,248,63,15,128,248,63,15,128,248,31,143,128,248, + 31,143,128,248,15,143,128,248,15,207,128,248,7,207,128,248, + 7,239,128,248,3,239,128,248,3,255,128,248,1,255,128,248, + 1,255,128,248,0,255,128,248,0,255,128,248,0,127,128,27, + 30,120,31,2,1,0,255,224,0,3,255,248,0,7,255,252, + 0,15,255,254,0,31,255,255,0,63,192,127,128,63,0,31, + 128,127,0,31,192,126,0,15,192,126,0,15,192,252,0,15, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,15,224,126,0,15,192,126,0,15,192,127,0,31, + 192,63,0,31,128,63,192,127,128,31,255,255,0,15,255,254, + 0,7,255,252,0,3,255,248,0,0,255,224,0,21,30,90, + 26,3,0,255,252,0,255,255,128,255,255,192,255,255,224,255, + 255,240,248,7,240,248,3,248,248,1,248,248,1,248,248,0, + 248,248,1,248,248,1,248,248,1,248,248,7,240,255,255,240, + 255,255,224,255,255,192,255,255,128,255,252,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,30,30,120, + 33,2,1,0,255,224,0,3,255,248,0,7,255,252,0,15, + 255,254,0,31,255,255,0,63,192,127,128,63,0,31,128,127, + 0,31,192,126,0,15,192,126,0,15,192,252,0,15,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,252, + 0,15,192,126,0,15,192,126,0,15,192,127,0,31,128,63, + 0,31,128,63,192,127,0,31,255,254,252,15,255,255,252,7, + 255,255,252,3,255,255,252,0,255,255,252,23,30,90,27,3, + 0,255,255,0,255,255,224,255,255,240,255,255,248,255,255,248, + 248,3,252,248,1,252,248,0,252,248,0,124,248,0,124,248, + 0,252,248,1,248,248,7,240,255,255,224,255,255,192,255,255, + 128,255,255,224,255,255,240,248,3,248,248,1,248,248,1,248, + 248,0,248,248,0,248,248,0,248,248,0,252,248,0,252,248, + 0,252,248,0,252,248,0,124,248,0,126,23,30,90,27,2, + 1,1,255,128,7,255,224,15,255,240,31,255,240,63,255,248, + 63,1,248,126,0,252,126,0,252,124,0,124,126,0,0,126, + 0,0,63,128,0,63,240,0,31,254,0,15,255,192,3,255, + 240,0,127,248,0,7,252,0,1,252,0,0,126,248,0,126, + 248,0,62,252,0,126,252,0,126,126,0,252,127,255,252,63, + 255,248,31,255,240,15,255,224,3,255,128,23,30,90,25,1, + 0,255,255,254,255,255,254,255,255,254,255,255,254,255,255,254, + 0,124,0,0,124,0,0,124,0,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,0,124,0,0,124,0,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,0,124,0,24,30,90,30,3, + 0,248,0,31,248,0,31,248,0,31,248,0,31,248,0,31, + 248,0,31,248,0,31,248,0,31,248,0,31,248,0,31,248, + 0,31,248,0,31,248,0,31,248,0,31,248,0,31,248,0, + 31,248,0,31,248,0,31,248,0,31,252,0,31,252,0,31, + 252,0,63,124,0,63,126,0,126,127,0,254,63,255,252,31, + 255,252,31,255,248,7,255,224,1,255,192,28,30,120,30,1, + 0,252,0,3,240,252,0,7,240,254,0,7,224,126,0,7, + 224,126,0,15,192,127,0,15,192,63,0,31,192,63,0,31, + 128,63,128,31,128,31,128,63,128,31,128,63,0,31,192,63, + 0,15,192,127,0,15,192,126,0,7,224,126,0,7,224,252, + 0,7,224,252,0,3,240,252,0,3,241,248,0,3,249,248, + 0,1,249,248,0,1,251,240,0,1,255,240,0,0,255,240, + 0,0,255,224,0,0,255,224,0,0,127,192,0,0,127,192, + 0,0,127,192,0,0,63,128,0,38,30,150,40,1,0,252, + 0,252,0,252,252,1,254,0,252,252,1,254,0,252,252,1, + 254,1,252,254,1,254,1,252,126,3,255,1,248,126,3,255, + 1,248,126,3,255,1,248,126,3,255,1,248,63,7,255,131, + 240,63,7,207,131,240,63,7,207,131,240,63,7,207,131,240, + 31,15,207,195,224,31,143,135,199,224,31,143,135,199,224,31, + 143,135,199,224,15,159,135,231,192,15,159,3,231,192,15,223, + 3,239,192,15,223,3,239,192,7,255,3,255,128,7,254,1, + 255,128,7,254,1,255,128,7,254,1,255,128,3,254,1,255, + 0,3,252,0,255,0,3,252,0,255,0,3,252,0,255,0, + 3,252,0,255,0,26,30,120,28,1,0,126,0,31,128,127, + 0,63,128,63,128,63,0,63,128,126,0,31,192,126,0,15, + 192,252,0,15,225,248,0,7,241,248,0,3,243,240,0,3, + 251,224,0,1,255,224,0,0,255,192,0,0,255,128,0,0, + 127,128,0,0,127,0,0,0,127,128,0,0,255,128,0,1, + 255,192,0,1,255,224,0,3,247,224,0,3,227,240,0,7, + 227,248,0,15,193,248,0,15,129,252,0,31,128,254,0,63, + 0,126,0,63,0,127,0,126,0,63,128,252,0,31,128,252, + 0,31,192,24,30,90,25,1,0,252,0,127,254,0,126,126, + 0,254,127,0,252,63,1,252,63,1,248,31,131,248,31,131, + 240,15,195,240,15,199,224,7,231,224,7,239,192,3,255,192, + 3,255,128,1,255,128,1,255,0,0,255,0,0,254,0,0, + 126,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,22,30,90,26,2,0,127,255,252,127,255,252,127, + 255,252,127,255,252,127,255,252,0,1,252,0,3,248,0,7, + 240,0,15,240,0,31,224,0,31,192,0,63,128,0,127,128, + 0,255,0,0,254,0,1,252,0,3,252,0,7,248,0,7, + 240,0,15,224,0,31,224,0,63,192,0,63,128,0,127,0, + 0,255,0,0,255,255,252,255,255,252,255,255,252,255,255,252, + 255,255,252,9,38,76,15,3,248,255,128,255,128,255,128,255, + 128,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,255,128,255, + 128,255,128,255,128,13,32,64,17,2,254,240,0,240,0,120, + 0,120,0,120,0,120,0,60,0,60,0,60,0,30,0,30, + 0,30,0,14,0,15,0,15,0,15,0,7,128,7,128,7, + 128,3,192,3,192,3,192,3,192,1,224,1,224,1,224,0, + 240,0,240,0,240,0,112,0,120,0,120,9,38,76,15,3, + 248,255,128,255,128,255,128,255,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,255,128,255,128,255,128,255,128,20,25,75, + 40,10,0,0,96,0,0,240,0,0,240,0,0,240,0,1, + 248,0,1,152,0,3,156,0,3,12,0,3,12,0,7,14, + 0,6,6,0,6,6,0,14,7,0,12,3,0,28,3,128, + 28,1,128,24,1,128,56,1,192,48,0,192,48,0,192,112, + 0,224,96,0,96,224,0,112,224,0,112,192,0,48,20,4, + 12,20,0,250,255,255,240,255,255,240,255,255,240,255,255,240, + 9,8,16,10,255,25,248,0,124,0,60,0,62,0,30,0, + 15,0,7,0,3,128,19,20,60,22,2,1,15,254,0,31, + 255,0,63,255,128,126,15,128,124,15,192,0,7,192,0,127, + 192,15,255,192,63,255,192,127,255,192,127,7,192,252,7,192, + 252,7,192,248,15,192,248,15,192,252,15,192,254,31,192,127, + 255,192,63,247,192,31,227,224,20,30,90,25,3,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,249,254,0,251, + 255,128,255,255,192,255,15,192,254,7,224,252,3,224,252,3, + 240,252,3,240,252,3,240,248,1,240,248,1,240,248,3,240, + 252,3,240,252,3,240,252,3,224,254,7,224,255,15,192,251, + 255,192,251,255,128,248,254,0,17,20,60,21,2,1,15,252, + 0,31,254,0,63,255,0,126,63,0,124,31,128,124,31,128, + 252,15,128,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,252,15,128,252,31,128,124,31,128,126,63, + 0,63,255,0,31,254,0,15,252,0,20,30,90,25,2,0, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,7,249, + 240,31,253,240,63,255,240,63,15,240,126,7,240,124,3,240, + 252,3,240,252,3,240,252,3,240,248,1,240,248,1,240,248, + 3,240,252,3,240,252,3,240,124,3,240,126,7,240,63,15, + 240,63,253,240,31,249,240,7,241,240,19,20,60,22,2,1, + 7,252,0,31,255,0,63,255,0,62,31,128,124,15,192,124, + 7,192,252,7,192,255,255,192,255,255,192,255,255,224,255,255, + 224,248,0,0,248,0,0,252,0,0,124,7,192,124,15,192, + 126,31,128,63,255,128,31,255,0,7,252,0,14,30,60,15, + 1,1,3,252,7,252,15,252,15,192,15,128,15,128,15,128, + 15,128,15,128,15,128,255,248,255,248,255,248,255,248,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,20,28, + 84,25,2,249,7,249,240,31,253,240,63,255,240,63,15,240, + 126,7,240,124,3,240,252,3,240,252,3,240,252,3,240,248, + 1,240,248,1,240,248,3,240,252,3,240,252,3,240,124,7, + 240,126,7,240,63,255,240,63,253,240,15,249,240,3,225,240, + 0,3,240,0,3,240,124,3,240,126,7,224,63,255,224,63, + 255,192,31,255,128,3,252,0,18,30,90,24,3,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,249,255,0,251, + 255,128,255,255,192,255,31,192,254,15,192,252,7,192,252,7, + 192,252,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,6,30,30,10,2,0,252,252, + 252,252,252,0,0,0,0,0,124,124,124,124,124,124,124,124, + 124,124,124,124,124,124,124,124,124,124,124,124,7,39,39,13, + 4,247,126,126,126,126,126,0,0,0,0,0,62,62,62,62, + 62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62, + 62,62,62,126,254,254,254,252,248,18,30,90,22,3,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,31,192, + 248,31,128,248,63,0,248,126,0,248,252,0,249,252,0,249, + 248,0,251,240,0,255,224,0,255,240,0,251,240,0,249,248, + 0,249,252,0,248,252,0,248,126,0,248,127,0,248,63,0, + 248,31,128,248,31,192,248,15,192,5,30,30,11,3,0,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,248,248,248,31,20,80, + 37,3,1,248,255,15,240,249,255,159,252,251,255,191,252,255, + 31,248,254,254,15,240,126,252,7,224,62,252,7,224,62,248, + 7,192,62,248,7,192,62,248,7,192,62,248,7,192,62,248, + 7,192,62,248,7,192,62,248,7,192,62,248,7,192,62,248, + 7,192,62,248,7,192,62,248,7,192,62,248,7,192,62,248, + 7,192,62,18,20,60,24,3,1,249,255,0,251,255,128,251, + 255,192,255,31,192,254,15,192,252,7,192,252,7,192,252,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,7,192,20,20,60,24,2,1,3,254,0,15,255, + 0,31,255,192,63,15,192,126,3,224,124,3,240,252,1,240, + 252,1,240,252,1,240,248,1,240,248,1,240,248,1,240,252, + 1,240,252,1,240,124,3,240,126,3,224,63,15,192,31,255, + 192,15,255,0,3,254,0,20,28,84,25,3,249,248,254,0, + 249,255,128,251,255,192,255,15,192,254,7,224,252,3,224,252, + 3,240,252,3,240,252,3,240,248,1,240,248,1,240,252,3, + 240,252,3,240,252,3,240,252,3,224,254,7,224,255,15,192, + 255,255,192,251,255,128,249,254,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,20,28,84,25,2,249,7,241,240,31,253,240,63,253,240, + 63,15,240,126,7,240,124,3,240,252,3,240,252,3,240,248, + 3,240,248,1,240,248,1,240,252,3,240,252,3,240,252,3, + 240,124,3,240,126,7,240,63,15,240,63,255,240,31,253,240, + 7,249,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,12,20,40,16,3, + 1,248,240,249,240,251,240,255,240,255,240,255,0,254,0,252, + 0,252,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,17,20,60,21,2,1,15, + 252,0,63,254,0,127,255,0,126,31,128,124,31,128,124,15, + 128,126,0,0,127,128,0,63,248,0,63,254,0,7,255,0, + 0,255,128,0,31,128,0,15,128,248,15,128,252,15,128,126, + 31,128,127,255,0,63,254,0,31,252,0,15,26,52,17,1, + 0,0,128,1,128,7,128,15,128,15,128,15,128,255,252,255, + 252,255,252,255,252,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,192,15,224,7, + 254,7,254,1,254,18,20,60,24,3,0,248,7,192,248,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,248, + 7,192,252,7,192,252,15,192,252,15,192,254,31,192,127,255, + 192,63,247,192,31,231,192,20,20,60,22,1,0,248,3,240, + 252,3,240,252,3,224,124,7,224,126,7,224,126,7,192,62, + 15,192,63,15,192,31,15,128,31,31,128,31,159,0,15,159, + 0,15,191,0,15,254,0,7,254,0,7,254,0,3,252,0, + 3,252,0,3,248,0,1,248,0,33,20,100,34,1,0,248, + 7,224,31,128,248,15,240,31,0,252,15,240,31,0,252,15, + 240,63,0,124,15,248,62,0,126,31,248,62,0,126,31,248, + 126,0,62,31,124,126,0,62,62,124,124,0,63,62,124,124, + 0,31,62,126,252,0,31,124,62,248,0,31,252,62,248,0, + 15,252,63,248,0,15,252,31,240,0,15,248,31,240,0,15, + 248,31,240,0,7,248,15,240,0,7,240,15,224,0,7,240, + 15,224,0,20,20,60,22,1,0,254,3,224,126,7,224,63, + 15,192,31,143,128,31,159,128,15,223,0,7,254,0,7,254, + 0,3,252,0,3,252,0,3,252,0,7,254,0,15,255,0, + 15,191,0,31,159,128,63,31,192,62,15,192,126,7,224,252, + 7,224,252,3,240,20,28,84,22,1,248,252,3,240,252,3, + 240,252,3,224,126,7,224,126,7,224,63,7,192,63,15,192, + 63,15,192,31,143,128,31,159,128,15,159,128,15,223,0,15, + 255,0,7,255,0,7,254,0,3,254,0,3,252,0,3,252, + 0,1,252,0,1,248,0,1,248,0,1,248,0,1,240,0, + 3,240,0,3,240,0,7,224,0,7,224,0,7,224,0,17, + 20,60,21,2,0,255,255,0,255,255,0,255,255,0,255,255, + 0,0,63,0,0,126,0,0,252,0,1,248,0,3,240,0, + 7,240,0,15,224,0,15,192,0,31,128,0,63,0,0,126, + 0,0,252,0,0,255,255,128,255,255,128,255,255,128,255,255, + 128,15,41,82,20,3,246,0,2,0,254,1,254,3,254,7, + 240,7,224,7,192,7,192,7,192,7,192,7,192,7,192,7, + 192,7,192,7,192,7,192,15,192,15,128,63,128,254,0,252, + 0,254,0,255,0,63,128,15,128,15,192,7,192,7,192,7, + 192,7,192,7,192,7,192,7,192,7,192,7,192,7,224,7, + 224,3,254,3,254,1,254,0,62,3,43,43,13,5,245,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,15,40,80,20,3,247, + 252,0,255,0,255,0,31,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,192,15,192,7,224, + 7,224,3,248,1,254,0,126,0,254,3,252,7,224,7,192, + 7,192,15,192,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,31,128,255,128,255,0,254,0,248,0, + 21,5,15,21,0,8,15,192,120,63,255,248,127,255,240,127, + 255,224,240,31,128,255}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--49-490-72-72-P-242-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 35 + Calculated Max Values w=29 h=39 x=10 y=17 dx=49 dy= 0 ascent=36 len=140 + Font Bounding box w=72 h=65 x=-4 y=-13 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =35 descent= 0 + X Font ascent =35 descent= 0 + Max Font ascent =36 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub35n[1667] U8G_SECTION(".progmem.u8g_font_fub35n") = { + 0,72,65,252,243,35,0,0,0,0,42,57,0,36,250,35, + 0,20,18,54,32,6,17,7,14,0,31,15,128,31,159,128, + 15,159,0,7,158,0,3,252,0,129,248,16,254,247,240,255, + 255,240,255,255,240,249,249,240,1,248,0,3,252,0,7,158, + 0,15,159,0,31,143,128,31,15,128,7,14,0,29,29,116, + 49,10,0,0,7,0,0,0,7,0,0,0,7,0,0,0, + 7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0, + 7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0, + 7,0,0,0,7,0,0,255,255,255,248,255,255,255,248,255, + 255,255,248,0,7,0,0,0,7,0,0,0,7,0,0,0, + 7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0, + 7,0,0,0,7,0,0,0,7,0,0,0,7,0,0,0, + 7,0,0,0,7,0,0,11,12,24,15,2,250,15,224,15, + 192,31,192,31,128,31,128,63,0,63,0,62,0,126,0,124, + 0,124,0,248,0,13,6,12,17,2,9,255,248,255,248,255, + 248,255,248,255,248,255,248,7,6,6,15,5,0,254,254,254, + 254,254,254,17,39,117,21,2,253,0,15,128,0,15,0,0, + 31,0,0,31,0,0,30,0,0,62,0,0,62,0,0,62, + 0,0,124,0,0,124,0,0,124,0,0,120,0,0,248,0, + 0,248,0,0,240,0,1,240,0,1,240,0,1,240,0,3, + 224,0,3,224,0,3,224,0,3,192,0,7,192,0,7,192, + 0,7,128,0,15,128,0,15,128,0,15,128,0,31,0,0, + 31,0,0,31,0,0,62,0,0,62,0,0,62,0,0,60, + 0,0,124,0,0,124,0,0,124,0,0,248,0,0,25,35, + 140,28,2,1,1,255,128,0,7,255,224,0,15,255,240,0, + 31,255,248,0,31,255,252,0,63,129,252,0,63,0,254,0, + 127,0,126,0,126,0,126,0,126,0,63,0,126,0,63,0, + 254,0,63,0,254,0,63,0,254,0,63,0,254,0,63,128, + 254,0,63,128,254,0,63,128,254,0,63,128,254,0,63,128, + 254,0,63,128,254,0,63,128,254,0,63,0,254,0,63,0, + 254,0,63,0,126,0,63,0,126,0,63,0,126,0,127,0, + 127,0,126,0,63,0,254,0,63,129,252,0,31,255,252,0, + 31,255,248,0,15,255,240,0,7,255,224,0,1,255,128,0, + 15,35,70,28,5,0,0,254,1,254,7,254,15,254,63,254, + 255,254,255,254,254,254,252,254,240,254,192,254,0,254,0,254, + 0,254,0,254,0,254,0,254,0,254,0,254,0,254,0,254, + 0,254,0,254,0,254,0,254,0,254,0,254,0,254,0,254, + 0,254,0,254,0,254,0,254,0,254,0,254,25,35,140,28, + 2,1,0,255,224,0,3,255,248,0,7,255,252,0,15,255, + 254,0,31,255,255,0,63,192,255,0,63,128,63,128,63,0, + 63,128,127,0,63,128,0,0,63,128,0,0,63,128,0,0, + 63,128,0,0,127,0,0,0,127,0,0,0,255,0,0,1, + 254,0,0,3,252,0,0,7,252,0,0,15,248,0,0,31, + 240,0,0,63,224,0,0,127,192,0,1,255,0,0,3,254, + 0,0,7,252,0,0,15,240,0,0,63,224,0,0,127,128, + 0,0,255,0,0,0,255,255,255,128,255,255,255,128,255,255, + 255,128,255,255,255,128,255,255,255,128,255,255,255,128,24,35, + 105,28,2,1,3,255,128,15,255,224,31,255,240,63,255,248, + 127,255,252,127,3,252,254,1,252,254,0,252,254,0,254,0, + 0,254,0,0,254,0,1,252,0,1,252,0,15,248,0,255, + 240,0,255,192,0,255,128,0,255,224,0,255,248,0,3,252, + 0,0,254,0,0,254,0,0,126,0,0,127,0,0,127,254, + 0,127,254,0,127,254,0,254,255,0,254,127,1,252,127,255, + 252,63,255,248,31,255,240,15,255,224,3,255,128,26,35,140, + 28,1,0,0,7,252,0,0,15,252,0,0,31,252,0,0, + 31,252,0,0,63,252,0,0,63,252,0,0,127,252,0,0, + 253,252,0,0,253,252,0,1,249,252,0,1,249,252,0,3, + 241,252,0,7,241,252,0,7,225,252,0,15,193,252,0,15, + 193,252,0,31,129,252,0,63,129,252,0,63,1,252,0,126, + 1,252,0,254,1,252,0,252,1,252,0,255,255,255,192,255, + 255,255,192,255,255,255,192,255,255,255,192,255,255,255,192,255, + 255,255,192,0,1,252,0,0,1,252,0,0,1,252,0,0, + 1,252,0,0,1,252,0,0,1,252,0,0,1,252,0,24, + 35,105,28,2,0,127,255,252,127,255,252,127,255,252,127,255, + 252,127,255,252,127,255,252,127,0,0,127,0,0,127,0,0, + 127,0,0,127,0,0,127,0,0,127,31,192,127,127,240,127, + 255,248,127,255,252,127,255,252,127,193,254,127,0,254,127,0, + 127,126,0,127,0,0,127,0,0,127,0,0,127,0,0,127, + 0,0,127,254,0,127,254,0,254,254,0,254,255,1,252,127, + 255,252,127,255,248,63,255,240,15,255,192,7,255,128,25,35, + 140,28,2,1,0,255,192,0,3,255,240,0,7,255,248,0, + 15,255,252,0,31,255,254,0,31,224,254,0,63,192,127,0, + 63,128,127,0,127,0,0,0,127,0,0,0,127,0,0,0, + 126,0,0,0,254,31,192,0,254,127,240,0,254,255,248,0, + 254,255,252,0,255,255,254,0,255,225,254,0,255,192,255,0, + 255,128,127,0,255,0,63,0,255,0,63,128,255,0,63,128, + 255,0,63,128,255,0,63,128,127,0,63,0,127,0,63,0, + 127,128,127,0,127,128,127,0,63,192,254,0,31,255,252,0, + 31,255,252,0,15,255,248,0,7,255,224,0,1,255,128,0, + 24,35,105,28,2,0,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,127,0,0,127,0,0, + 254,0,0,254,0,1,254,0,1,252,0,3,252,0,3,248, + 0,7,248,0,7,240,0,15,240,0,15,240,0,31,224,0, + 31,224,0,63,192,0,63,192,0,63,128,0,127,128,0,127, + 0,0,255,0,0,255,0,1,254,0,1,254,0,3,252,0, + 3,252,0,7,248,0,7,248,0,15,248,0,15,240,0,25, + 35,140,28,2,1,3,255,192,0,15,255,240,0,31,255,252, + 0,63,255,254,0,63,255,254,0,127,193,255,0,127,128,255, + 0,127,0,127,0,127,0,127,0,127,0,127,0,127,0,127, + 0,127,0,127,0,63,128,254,0,63,193,252,0,15,255,248, + 0,7,255,224,0,1,255,192,0,15,255,240,0,31,255,248, + 0,63,193,254,0,127,128,254,0,127,0,127,0,254,0,63, + 0,254,0,63,0,254,0,63,128,254,0,63,128,254,0,63, + 128,255,0,127,128,255,0,127,0,127,128,255,0,127,255,255, + 0,63,255,254,0,63,255,252,0,15,255,248,0,3,255,224, + 0,25,35,140,28,2,1,1,255,192,0,7,255,224,0,15, + 255,248,0,31,255,252,0,63,255,252,0,127,129,254,0,127, + 0,254,0,126,0,255,0,254,0,127,0,254,0,127,0,254, + 0,127,128,254,0,127,128,254,0,127,128,254,0,127,128,254, + 0,255,128,127,0,255,128,127,131,255,128,63,255,255,128,63, + 255,191,128,31,255,191,128,15,255,63,128,1,248,63,128,0, + 0,63,0,0,0,127,0,0,0,127,0,0,0,127,0,127, + 0,254,0,127,0,254,0,127,1,254,0,63,131,252,0,31, + 255,252,0,31,255,248,0,15,255,240,0,7,255,224,0,1, + 255,128,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--58-580-72-72-P-286-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 42 + Calculated Max Values w=35 h=46 x=12 y=20 dx=59 dy= 0 ascent=43 len=176 + Font Bounding box w=87 h=77 x=-5 y=-15 + Calculated Min Values x= 0 y=-8 dx= 0 dy= 0 + Pure Font ascent =42 descent= 0 + X Font ascent =42 descent= 0 + Max Font ascent =43 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub42n[2235] U8G_SECTION(".progmem.u8g_font_fub42n") = { + 0,87,77,251,241,42,0,0,0,0,42,57,0,43,248,42, + 0,23,23,69,37,7,20,0,130,0,3,131,128,15,131,224, + 31,199,224,15,199,224,7,199,192,3,239,128,1,239,0,0, + 254,0,248,254,62,255,255,254,255,255,254,255,255,254,254,124, + 254,128,254,2,1,239,0,3,239,128,7,239,192,7,199,192, + 15,199,224,31,131,240,7,131,192,1,131,0,35,35,175,59, + 12,0,0,1,224,0,0,0,1,224,0,0,0,1,224,0, + 0,0,1,224,0,0,0,1,224,0,0,0,1,224,0,0, + 0,1,224,0,0,0,1,224,0,0,0,1,224,0,0,0, + 1,224,0,0,0,1,224,0,0,0,1,224,0,0,0,1, + 224,0,0,0,1,224,0,0,0,1,224,0,0,0,1,224, + 0,0,255,255,255,255,224,255,255,255,255,224,255,255,255,255, + 224,255,255,255,255,224,0,1,224,0,0,0,1,224,0,0, + 0,1,224,0,0,0,1,224,0,0,0,1,224,0,0,0, + 1,224,0,0,0,1,224,0,0,0,1,224,0,0,0,1, + 224,0,0,0,1,224,0,0,0,1,224,0,0,0,1,224, + 0,0,0,1,224,0,0,0,1,224,0,0,0,1,224,0, + 0,12,15,30,18,3,248,15,240,15,240,15,224,31,224,31, + 192,31,192,63,128,63,128,63,0,127,0,126,0,126,0,124, + 0,252,0,252,0,15,8,16,19,2,11,255,254,255,254,255, + 254,255,254,255,254,255,254,255,254,255,254,8,8,8,18,6, + 0,255,255,255,255,255,255,255,255,19,46,138,25,3,253,0, + 7,224,0,7,224,0,7,192,0,15,192,0,15,192,0,15, + 128,0,31,128,0,31,128,0,31,128,0,31,0,0,63,0, + 0,63,0,0,62,0,0,126,0,0,126,0,0,124,0,0, + 252,0,0,252,0,0,252,0,0,248,0,1,248,0,1,248, + 0,1,240,0,3,240,0,3,240,0,3,240,0,7,224,0, + 7,224,0,7,224,0,7,192,0,15,192,0,15,192,0,15, + 128,0,31,128,0,31,128,0,31,128,0,63,0,0,63,0, + 0,63,0,0,62,0,0,126,0,0,126,0,0,124,0,0, + 252,0,0,252,0,0,252,0,0,29,44,176,33,2,255,0, + 31,192,0,0,255,248,0,3,255,252,0,7,255,255,0,15, + 255,255,128,15,255,255,128,31,240,255,192,63,192,63,192,63, + 192,63,224,63,128,31,224,127,128,31,240,127,0,31,240,127, + 0,15,240,127,0,15,240,255,0,15,240,255,0,15,248,255, + 0,15,248,255,0,15,248,255,0,15,248,255,0,15,248,255, + 0,15,248,255,0,15,248,255,0,15,248,255,0,15,248,255, + 0,15,248,255,0,15,248,255,0,15,248,255,0,15,248,255, + 0,15,248,127,0,15,240,127,0,15,240,127,0,15,240,127, + 0,31,240,127,128,31,240,63,128,31,224,63,192,63,224,63, + 192,63,192,31,240,255,192,15,255,255,128,15,255,255,0,7, + 255,255,0,3,255,254,0,0,255,248,0,0,31,192,0,18, + 42,126,33,6,0,0,63,192,0,127,192,0,255,192,3,255, + 192,15,255,192,63,255,192,255,255,192,255,255,192,255,255,192, + 255,63,192,254,63,192,248,63,192,224,63,192,0,63,192,0, + 63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63, + 192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192, + 0,63,192,0,63,192,0,63,192,0,63,192,0,63,192,0, + 63,192,0,63,192,0,63,192,0,63,192,0,63,192,0,63, + 192,0,63,192,0,63,192,0,63,192,0,63,192,0,63,192, + 0,63,192,29,43,172,33,2,0,0,15,240,0,0,127,254, + 0,1,255,255,0,3,255,255,128,7,255,255,192,15,255,255, + 224,31,248,63,240,31,240,31,240,31,224,15,240,63,192,7, + 248,63,192,7,248,63,192,7,248,0,0,7,248,0,0,7, + 248,0,0,15,248,0,0,15,240,0,0,31,240,0,0,31, + 240,0,0,63,224,0,0,127,224,0,0,255,192,0,1,255, + 128,0,3,255,128,0,7,255,0,0,15,254,0,0,31,252, + 0,0,63,248,0,0,127,240,0,0,255,224,0,1,255,128, + 0,3,255,0,0,15,254,0,0,31,252,0,0,63,240,0, + 0,127,224,0,0,255,192,0,0,255,255,255,248,255,255,255, + 248,255,255,255,248,255,255,255,248,255,255,255,248,255,255,255, + 248,255,255,255,248,28,44,176,33,3,255,0,127,192,0,3, + 255,248,0,7,255,252,0,31,255,255,0,63,255,255,0,63, + 255,255,128,127,224,255,192,127,192,127,192,255,128,63,192,255, + 0,31,224,255,0,31,224,255,0,31,224,0,0,31,224,0, + 0,31,224,0,0,31,224,0,0,63,192,0,0,127,192,0, + 3,255,128,0,127,255,0,0,127,252,0,0,127,240,0,0, + 127,248,0,0,127,254,0,0,127,255,128,0,0,255,192,0, + 0,63,224,0,0,31,224,0,0,31,224,0,0,15,240,0, + 0,15,240,0,0,15,240,255,0,15,240,255,0,15,240,255, + 0,15,240,255,0,31,224,255,128,31,224,127,192,63,224,127, + 224,255,192,63,255,255,128,63,255,255,0,31,255,254,0,15, + 255,252,0,3,255,248,0,0,127,192,0,31,42,168,33,1, + 0,0,1,255,192,0,1,255,192,0,3,255,192,0,7,255, + 192,0,7,255,192,0,15,255,192,0,15,255,192,0,31,255, + 192,0,63,255,192,0,63,191,192,0,127,63,192,0,255,63, + 192,0,254,63,192,1,254,63,192,1,252,63,192,3,248,63, + 192,7,248,63,192,7,240,63,192,15,240,63,192,31,224,63, + 192,31,192,63,192,63,192,63,192,63,128,63,192,127,128,63, + 192,255,0,63,192,255,0,63,192,255,255,255,254,255,255,255, + 254,255,255,255,254,255,255,255,254,255,255,255,254,255,255,255, + 254,255,255,255,254,0,0,63,192,0,0,63,192,0,0,63, + 192,0,0,63,192,0,0,63,192,0,0,63,192,0,0,63, + 192,0,0,63,192,0,0,63,192,29,43,172,33,2,255,127, + 255,255,224,127,255,255,224,127,255,255,224,127,255,255,224,127, + 255,255,224,127,255,255,224,127,255,255,224,127,128,0,0,127, + 128,0,0,127,128,0,0,127,128,0,0,127,128,0,0,127, + 128,0,0,127,128,0,0,127,128,0,0,127,135,248,0,127, + 159,254,0,127,255,255,128,127,255,255,192,127,255,255,192,127, + 255,255,224,127,240,63,240,127,192,31,240,127,128,15,240,127, + 128,15,248,127,0,7,248,0,0,7,248,0,0,7,248,0, + 0,7,248,0,0,7,248,0,0,7,248,0,0,7,240,255, + 0,15,240,255,0,15,240,255,0,31,240,255,128,63,224,127, + 224,255,192,127,255,255,192,63,255,255,128,31,255,255,0,15, + 255,252,0,3,255,248,0,0,127,192,0,29,44,176,33,2, + 255,0,15,240,0,0,127,252,0,0,255,255,0,3,255,255, + 128,7,255,255,192,7,255,255,224,15,252,63,224,31,240,15, + 240,31,224,15,240,63,192,7,248,63,192,7,248,63,128,0, + 0,127,128,0,0,127,128,0,0,127,128,0,0,127,0,0, + 0,255,3,248,0,255,31,254,0,255,63,255,0,255,127,255, + 128,255,255,255,192,255,255,255,224,255,248,63,240,255,224,31, + 240,255,192,15,240,255,192,15,248,255,128,7,248,255,128,7, + 248,255,128,7,248,255,128,7,248,255,128,7,248,127,128,7, + 248,127,128,7,248,127,128,7,240,127,192,15,240,63,192,15, + 240,63,224,31,224,31,248,63,224,31,255,255,192,15,255,255, + 128,7,255,255,0,3,255,254,0,0,255,248,0,0,63,192, + 0,28,42,168,33,3,0,255,255,255,240,255,255,255,240,255, + 255,255,240,255,255,255,240,255,255,255,240,255,255,255,240,255, + 255,255,240,0,0,15,240,0,0,15,240,0,0,31,240,0, + 0,31,224,0,0,63,224,0,0,63,192,0,0,127,192,0, + 0,127,192,0,0,255,128,0,0,255,128,0,1,255,0,0, + 1,255,0,0,1,254,0,0,3,254,0,0,3,254,0,0, + 7,252,0,0,7,252,0,0,15,248,0,0,15,248,0,0, + 31,248,0,0,31,240,0,0,31,240,0,0,63,224,0,0, + 63,224,0,0,127,192,0,0,127,192,0,0,255,192,0,0, + 255,128,0,1,255,128,0,1,255,0,0,3,255,0,0,3, + 255,0,0,3,254,0,0,7,254,0,0,7,252,0,0,29, + 44,176,33,2,255,0,63,240,0,1,255,254,0,7,255,255, + 128,15,255,255,192,31,255,255,224,63,255,255,240,63,248,127, + 240,127,224,31,240,127,224,31,248,127,192,15,248,127,192,15, + 248,127,192,15,248,127,192,15,248,127,192,15,248,63,224,31, + 240,63,224,31,240,31,248,127,224,15,255,255,192,7,255,255, + 0,1,255,252,0,0,255,248,0,3,255,254,0,15,255,255, + 128,31,255,255,192,63,240,63,224,127,224,31,224,127,192,15, + 240,127,192,15,240,255,128,7,248,255,128,7,248,255,128,7, + 248,255,128,7,248,255,128,7,248,255,128,7,248,255,192,15, + 248,255,192,15,248,127,224,31,240,127,240,63,240,127,255,255, + 224,63,255,255,224,31,255,255,192,15,255,255,128,3,255,254, + 0,0,127,240,0,29,44,176,33,2,255,0,31,192,0,0, + 255,248,0,3,255,254,0,7,255,255,0,15,255,255,128,31, + 255,255,128,63,224,255,192,63,192,63,224,127,128,31,224,127, + 128,31,224,127,0,15,240,255,0,15,240,255,0,15,240,255, + 0,15,240,255,0,15,248,255,0,15,248,255,0,15,248,255, + 0,15,248,255,128,31,248,127,128,31,248,127,192,63,248,127, + 224,255,248,63,255,255,248,31,255,255,248,31,255,247,248,15, + 255,231,248,3,255,199,248,0,254,7,240,0,0,7,240,0, + 0,15,240,0,0,15,240,0,0,15,240,0,0,15,224,127, + 128,31,224,127,128,31,224,63,128,63,192,63,192,127,192,63, + 224,255,128,31,255,255,128,15,255,255,0,7,255,254,0,3, + 255,252,0,1,255,240,0,0,63,192,0}; +/* + Fontname: -FreeType-FreeUniversal-Bold-R-Normal--68-680-72-72-P-335-ISO10646-1 + Copyright: FreeUniveral (c) Stephen Wilson 2009 Original Font Sil-Sophia Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 49 + Calculated Max Values w=41 h=54 x=14 y=23 dx=69 dy= 0 ascent=50 len=255 + Font Bounding box w=100 h=91 x=-5 y=-18 + Calculated Min Values x= 0 y=-9 dx= 0 dy= 0 + Pure Font ascent =49 descent= 0 + X Font ascent =49 descent= 0 + Max Font ascent =50 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fub49n[3074] U8G_SECTION(".progmem.u8g_font_fub49n") = { + 0,100,91,251,238,49,0,0,0,0,42,57,0,50,247,49, + 0,27,27,108,43,8,23,0,64,64,0,1,192,112,0,7, + 224,252,0,15,224,254,0,7,241,252,0,7,241,252,0,3, + 241,248,0,1,251,240,0,0,251,224,0,0,127,192,0,224, + 127,192,224,255,191,191,224,255,255,255,224,255,255,255,224,255, + 255,255,224,255,63,159,224,192,127,192,96,0,123,192,0,0, + 251,224,0,1,251,240,0,3,241,248,0,7,241,252,0,15, + 241,252,0,15,224,254,0,7,224,252,0,1,192,112,0,0, + 64,64,0,41,41,246,69,14,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,255,255,255,255,255, + 128,255,255,255,255,255,128,255,255,255,255,255,128,255,255,255, + 255,255,128,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,15, + 17,34,21,3,247,7,254,7,252,7,252,7,248,15,248,15, + 240,15,240,31,224,31,224,31,192,63,192,63,128,63,128,127, + 0,127,0,126,0,254,0,17,9,27,23,3,13,255,255,128, + 255,255,128,255,255,128,255,255,128,255,255,128,255,255,128,255, + 255,128,255,255,128,255,255,128,9,9,18,21,7,0,255,128, + 255,128,255,128,255,128,255,128,255,128,255,128,255,128,255,128, + 23,54,162,29,3,252,0,0,254,0,0,254,0,0,252,0, + 1,252,0,1,252,0,1,248,0,3,248,0,3,248,0,3, + 248,0,7,240,0,7,240,0,7,240,0,7,224,0,15,224, + 0,15,224,0,15,192,0,31,192,0,31,192,0,31,192,0, + 63,128,0,63,128,0,63,128,0,63,0,0,127,0,0,127, + 0,0,126,0,0,254,0,0,254,0,0,254,0,1,252,0, + 1,252,0,1,252,0,1,248,0,3,248,0,3,248,0,3, + 240,0,7,240,0,7,240,0,7,240,0,15,224,0,15,224, + 0,15,224,0,15,192,0,31,192,0,31,192,0,31,128,0, + 63,128,0,63,128,0,63,0,0,127,0,0,127,0,0,127, + 0,0,126,0,0,254,0,0,34,51,255,39,2,255,0,7, + 248,0,0,0,63,255,0,0,0,255,255,192,0,1,255,255, + 224,0,3,255,255,240,0,7,255,255,248,0,15,255,255,252, + 0,15,254,31,252,0,31,248,7,254,0,31,240,3,254,0, + 63,240,3,255,0,63,224,1,255,0,63,224,1,255,0,127, + 224,1,255,128,127,192,0,255,128,127,192,0,255,128,127,192, + 0,255,128,255,192,0,255,128,255,192,0,255,192,255,192,0, + 255,192,255,192,0,255,192,255,192,0,255,192,255,192,0,255, + 192,255,192,0,255,192,255,192,0,255,192,255,192,0,255,192, + 255,192,0,255,192,255,192,0,255,192,255,192,0,255,192,255, + 192,0,255,192,255,192,0,255,192,255,192,0,255,192,255,192, + 0,255,192,255,192,0,255,128,127,192,0,255,128,127,192,0, + 255,128,127,192,0,255,128,127,224,1,255,128,63,224,1,255, + 0,63,224,1,255,0,63,240,3,255,0,31,240,3,254,0, + 31,248,7,254,0,15,254,31,252,0,15,255,255,252,0,7, + 255,255,248,0,3,255,255,240,0,1,255,255,224,0,0,255, + 255,192,0,0,63,255,0,0,0,7,248,0,0,20,49,147, + 39,7,0,0,31,240,0,63,240,0,127,240,1,255,240,3, + 255,240,15,255,240,63,255,240,255,255,240,255,255,240,255,255, + 240,255,223,240,255,159,240,254,31,240,248,31,240,224,31,240, + 128,31,240,0,31,240,0,31,240,0,31,240,0,31,240,0, + 31,240,0,31,240,0,31,240,0,31,240,0,31,240,0,31, + 240,0,31,240,0,31,240,0,31,240,0,31,240,0,31,240, + 0,31,240,0,31,240,0,31,240,0,31,240,0,31,240,0, + 31,240,0,31,240,0,31,240,0,31,240,0,31,240,0,31, + 240,0,31,240,0,31,240,0,31,240,0,31,240,0,31,240, + 0,31,240,0,31,240,34,50,250,39,2,0,0,3,254,0, + 0,0,31,255,192,0,0,127,255,240,0,0,255,255,248,0, + 3,255,255,254,0,7,255,255,254,0,7,255,255,255,0,15, + 255,255,255,128,31,255,7,255,128,31,252,1,255,192,31,248, + 0,255,192,63,248,0,255,192,63,240,0,127,192,63,240,0, + 127,192,63,240,0,127,192,0,0,0,127,192,0,0,0,127, + 192,0,0,0,255,192,0,0,0,255,128,0,0,1,255,128, + 0,0,1,255,128,0,0,3,255,0,0,0,7,255,0,0, + 0,15,254,0,0,0,31,254,0,0,0,63,252,0,0,0, + 127,248,0,0,0,255,240,0,0,1,255,224,0,0,3,255, + 192,0,0,7,255,128,0,0,15,255,0,0,0,31,254,0, + 0,0,63,252,0,0,0,255,248,0,0,1,255,224,0,0, + 3,255,192,0,0,7,255,128,0,0,31,254,0,0,0,63, + 252,0,0,0,127,248,0,0,0,255,224,0,0,0,255,255, + 255,255,192,255,255,255,255,192,255,255,255,255,192,255,255,255, + 255,192,255,255,255,255,192,255,255,255,255,192,255,255,255,255, + 192,255,255,255,255,192,32,51,204,39,3,255,0,31,248,0, + 0,255,255,0,3,255,255,128,7,255,255,224,15,255,255,240, + 31,255,255,248,63,255,255,248,127,255,255,252,127,248,31,252, + 127,224,15,254,255,192,7,254,255,192,3,254,255,128,3,254, + 255,128,3,254,0,0,3,254,0,0,3,254,0,0,3,254, + 0,0,7,254,0,0,15,252,0,0,127,252,0,63,255,248, + 0,63,255,224,0,63,255,192,0,63,254,0,0,63,255,0, + 0,63,255,192,0,63,255,240,0,63,255,248,0,0,63,252, + 0,0,7,254,0,0,3,254,0,0,3,255,0,0,1,255, + 0,0,1,255,0,0,1,255,0,0,1,255,255,128,1,255, + 255,128,1,255,255,128,1,255,255,192,3,255,255,192,3,254, + 127,224,7,254,127,224,15,254,127,248,31,252,63,255,255,248, + 63,255,255,240,31,255,255,240,15,255,255,192,3,255,255,128, + 1,255,254,0,0,31,240,0,36,50,250,39,2,0,0,0, + 63,252,0,0,0,127,252,0,0,0,127,252,0,0,0,255, + 252,0,0,0,255,252,0,0,1,255,252,0,0,3,255,252, + 0,0,3,255,252,0,0,7,255,252,0,0,7,255,252,0, + 0,15,247,252,0,0,31,247,252,0,0,31,231,252,0,0, + 63,199,252,0,0,127,199,252,0,0,127,135,252,0,0,255, + 135,252,0,0,255,7,252,0,1,255,7,252,0,3,254,7, + 252,0,3,252,7,252,0,7,252,7,252,0,7,248,7,252, + 0,15,248,7,252,0,31,240,7,252,0,31,240,7,252,0, + 63,224,7,252,0,63,192,7,252,0,127,192,7,252,0,255, + 128,7,252,0,255,128,7,252,0,255,255,255,255,240,255,255, + 255,255,240,255,255,255,255,240,255,255,255,255,240,255,255,255, + 255,240,255,255,255,255,240,255,255,255,255,240,255,255,255,255, + 240,0,0,7,252,0,0,0,7,252,0,0,0,7,252,0, + 0,0,7,252,0,0,0,7,252,0,0,0,7,252,0,0, + 0,7,252,0,0,0,7,252,0,0,0,7,252,0,0,0, + 7,252,0,0,0,7,252,0,33,50,250,39,3,255,127,255, + 255,254,0,127,255,255,254,0,127,255,255,254,0,127,255,255, + 254,0,127,255,255,254,0,127,255,255,254,0,127,255,255,254, + 0,127,255,255,254,0,127,192,0,0,0,127,192,0,0,0, + 127,192,0,0,0,127,192,0,0,0,127,192,0,0,0,127, + 192,0,0,0,127,192,0,0,0,127,192,0,0,0,127,192, + 0,0,0,127,193,255,0,0,127,199,255,192,0,127,223,255, + 240,0,127,255,255,248,0,127,255,255,252,0,127,255,255,254, + 0,127,255,255,254,0,127,252,15,255,0,127,240,3,255,0, + 127,224,3,255,0,127,192,1,255,128,127,192,1,255,128,0, + 0,0,255,128,0,0,0,255,128,0,0,0,255,128,0,0, + 0,255,128,0,0,0,255,128,0,0,0,255,128,0,0,0, + 255,128,0,0,0,255,128,255,128,1,255,128,255,128,1,255, + 0,255,192,3,255,0,255,192,3,254,0,127,224,15,254,0, + 127,248,63,252,0,127,255,255,252,0,63,255,255,248,0,31, + 255,255,240,0,15,255,255,224,0,7,255,255,128,0,1,255, + 254,0,0,0,63,240,0,0,34,51,255,39,2,255,0,3, + 252,0,0,0,31,255,128,0,0,127,255,224,0,0,255,255, + 240,0,1,255,255,248,0,3,255,255,252,0,7,255,255,254, + 0,7,255,255,254,0,15,255,7,255,0,31,252,3,255,0, + 31,248,1,255,128,31,248,0,255,128,63,240,0,255,128,63, + 224,0,0,0,63,224,0,0,0,127,224,0,0,0,127,192, + 0,0,0,127,192,0,0,0,127,192,127,0,0,127,195,255, + 224,0,255,199,255,240,0,255,207,255,248,0,255,223,255,252, + 0,255,191,255,254,0,255,255,255,255,0,255,254,15,255,0, + 255,248,3,255,128,255,248,3,255,128,255,240,1,255,128,255, + 240,1,255,192,255,224,0,255,192,255,224,0,255,192,255,224, + 0,255,192,255,224,0,255,192,255,224,0,255,192,127,224,0, + 255,192,127,224,0,255,192,127,224,0,255,192,127,224,0,255, + 128,63,240,1,255,128,63,240,1,255,128,63,248,3,255,0, + 31,248,3,255,0,31,254,15,254,0,15,255,255,254,0,7, + 255,255,252,0,3,255,255,248,0,1,255,255,240,0,0,255, + 255,192,0,0,63,255,0,0,0,7,248,0,0,33,49,245, + 39,3,0,255,255,255,255,128,255,255,255,255,128,255,255,255, + 255,128,255,255,255,255,128,255,255,255,255,128,255,255,255,255, + 128,255,255,255,255,128,255,255,255,255,128,0,0,0,255,128, + 0,0,1,255,128,0,0,1,255,128,0,0,3,255,0,0, + 0,3,255,0,0,0,7,254,0,0,0,7,254,0,0,0, + 15,254,0,0,0,15,252,0,0,0,31,252,0,0,0,31, + 248,0,0,0,31,248,0,0,0,63,240,0,0,0,63,240, + 0,0,0,127,240,0,0,0,127,224,0,0,0,255,224,0, + 0,0,255,192,0,0,1,255,192,0,0,1,255,192,0,0, + 3,255,128,0,0,3,255,128,0,0,3,255,0,0,0,7, + 255,0,0,0,7,254,0,0,0,15,254,0,0,0,15,254, + 0,0,0,31,252,0,0,0,31,252,0,0,0,63,248,0, + 0,0,63,248,0,0,0,63,248,0,0,0,127,240,0,0, + 0,127,240,0,0,0,255,224,0,0,0,255,224,0,0,1, + 255,192,0,0,1,255,192,0,0,3,255,192,0,0,3,255, + 128,0,0,7,255,128,0,0,34,51,255,39,2,255,0,15, + 252,0,0,0,255,255,192,0,3,255,255,240,0,7,255,255, + 248,0,15,255,255,252,0,31,255,255,254,0,63,255,255,255, + 0,63,255,255,255,0,63,252,15,255,0,127,248,7,255,128, + 127,240,3,255,128,127,224,1,255,128,127,224,1,255,128,127, + 224,1,255,128,127,224,1,255,128,127,224,1,255,128,127,224, + 1,255,128,63,240,3,255,0,63,248,7,255,0,31,252,15, + 254,0,15,255,255,252,0,7,255,255,240,0,1,255,255,192, + 0,0,63,255,0,0,0,255,255,128,0,3,255,255,224,0, + 7,255,255,248,0,31,255,255,252,0,63,252,15,254,0,63, + 248,7,255,0,127,240,3,255,0,127,224,1,255,128,127,224, + 1,255,128,255,192,0,255,192,255,192,0,255,192,255,192,0, + 255,192,255,192,0,255,192,255,192,0,255,192,255,192,0,255, + 192,255,224,1,255,192,255,224,1,255,192,255,240,3,255,192, + 127,240,7,255,128,127,252,15,255,128,63,255,255,255,0,63, + 255,255,255,0,31,255,255,254,0,15,255,255,252,0,3,255, + 255,240,0,0,255,255,192,0,0,15,252,0,0,34,51,255, + 39,2,255,0,7,248,0,0,0,63,255,0,0,0,255,255, + 192,0,3,255,255,224,0,7,255,255,240,0,15,255,255,248, + 0,31,255,255,252,0,31,255,255,254,0,63,248,31,254,0, + 63,240,7,255,0,127,224,7,255,0,127,192,3,255,0,127, + 192,3,255,128,255,192,1,255,128,255,128,1,255,128,255,128, + 1,255,128,255,128,1,255,192,255,128,1,255,192,255,128,1, + 255,192,255,192,1,255,192,255,192,3,255,192,255,192,3,255, + 192,127,224,7,255,192,127,240,7,255,192,127,248,31,255,192, + 63,255,255,255,192,31,255,255,127,192,31,255,254,255,192,15, + 255,252,255,192,3,255,252,255,192,1,255,240,255,192,0,127, + 192,255,128,0,0,0,255,128,0,0,0,255,128,0,0,1, + 255,128,0,0,1,255,128,0,0,1,255,0,0,0,1,255, + 0,127,192,3,255,0,127,192,3,254,0,127,224,7,254,0, + 63,224,15,254,0,63,240,15,252,0,31,248,63,252,0,31, + 255,255,248,0,15,255,255,240,0,7,255,255,224,0,3,255, + 255,192,0,1,255,255,128,0,0,127,254,0,0,0,15,240, + 0,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--15-150-72-72-P-71-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=14 h=16 x= 4 y=10 dx=15 dy= 0 ascent=16 len=32 + Font Bounding box w=20 h=20 x=-1 y=-4 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur11[3712] U8G_SECTION(".progmem.u8g_font_fur11") = { + 0,20,20,255,252,11,2,81,4,211,32,255,253,16,252,11, + 253,0,0,0,5,0,0,1,11,11,5,2,0,128,128,128, + 128,128,128,128,128,128,0,128,5,5,5,7,1,6,216,216, + 152,152,144,9,11,22,11,1,0,9,0,9,0,19,0,127, + 128,18,0,38,0,255,0,36,0,100,0,72,0,72,0,7, + 14,14,9,1,255,16,16,120,148,148,144,240,124,22,18,146, + 214,124,16,12,11,22,14,1,0,112,128,152,128,137,0,137, + 0,154,0,116,224,5,176,9,16,9,16,17,48,16,224,9, + 11,22,11,1,0,56,0,68,0,68,0,120,0,113,0,217, + 0,137,0,143,0,134,0,199,0,125,128,2,5,5,6,2, + 6,192,128,128,128,128,2,14,14,6,2,253,64,64,192,128, + 128,128,128,128,128,128,128,192,64,64,2,14,14,5,2,253, + 128,128,128,192,64,64,64,64,64,64,192,128,128,128,6,5, + 5,10,2,5,72,48,252,48,120,9,9,18,15,3,0,8, + 0,8,0,8,0,8,0,255,128,8,0,8,0,8,0,8, + 0,2,4,4,4,1,254,192,192,128,128,4,1,1,6,1, + 3,240,1,2,2,4,2,0,128,128,4,12,12,6,1,255, + 16,16,16,32,32,32,64,64,64,64,128,128,6,11,11,8, + 1,0,120,200,140,132,132,132,132,132,140,200,120,4,11,11, + 8,2,0,48,112,208,16,16,16,16,16,16,16,16,6,11, + 11,8,1,0,120,204,196,4,12,24,16,48,96,192,252,7, + 11,11,8,0,0,60,70,194,6,24,4,6,2,194,70,60, + 7,11,11,8,1,0,12,28,20,36,100,68,196,254,4,4, + 4,6,11,11,8,1,0,248,128,128,184,204,132,4,4,140, + 200,112,7,11,11,8,1,0,60,198,134,128,188,198,130,130, + 130,198,60,7,11,11,8,1,0,254,6,6,4,12,8,24, + 24,16,48,48,6,11,11,8,1,0,120,204,132,204,112,200, + 132,132,132,204,120,7,11,11,8,1,0,124,198,130,130,198, + 122,2,6,134,204,120,1,8,8,4,2,0,128,128,0,0, + 0,0,128,128,2,10,10,4,1,254,64,64,0,0,0,0, + 64,192,192,128,9,8,16,15,3,1,0,128,3,0,28,0, + 96,0,128,0,112,0,14,0,1,128,9,4,8,15,3,3, + 255,128,0,0,0,0,255,128,9,8,16,15,3,1,128,0, + 96,0,28,0,3,0,0,128,7,0,56,0,192,0,7,11, + 11,8,0,0,60,198,2,6,4,8,16,16,16,0,16,13, + 14,28,15,1,253,15,128,48,96,96,16,206,144,153,152,144, + 136,144,136,144,136,145,152,153,144,206,96,96,0,48,0,15, + 128,11,11,22,11,0,0,6,0,14,0,10,0,27,0,25, + 0,49,128,49,128,63,192,96,192,64,64,192,96,8,11,11, + 10,1,0,252,134,130,130,134,252,130,129,129,131,254,8,11, + 11,10,1,0,62,99,193,128,128,128,128,128,193,67,62,8, + 11,11,10,1,0,248,134,130,131,129,129,129,131,130,134,248, + 6,11,11,9,1,0,252,128,128,128,128,252,128,128,128,128, + 252,6,11,11,8,1,0,252,128,128,128,128,252,128,128,128, + 128,128,9,11,22,11,1,0,30,0,97,128,192,128,128,0, + 128,0,135,128,128,128,128,128,192,128,96,128,63,128,8,11, + 11,10,1,0,129,129,129,129,129,255,129,129,129,129,129,1, + 11,11,3,1,0,128,128,128,128,128,128,128,128,128,128,128, + 6,11,11,8,1,0,4,4,4,4,4,4,4,4,132,140, + 120,8,11,11,9,1,0,134,140,152,176,224,224,176,152,140, + 134,131,6,11,11,7,1,0,128,128,128,128,128,128,128,128, + 128,128,252,11,11,22,13,1,0,192,96,224,224,224,160,161, + 160,177,160,145,32,147,32,154,32,138,32,142,32,132,32,8, + 11,11,10,1,0,193,225,225,177,177,153,137,141,133,135,131, + 9,11,22,11,1,0,62,0,99,0,193,128,129,128,128,128, + 128,128,128,128,129,128,193,0,99,0,62,0,7,11,11,9, + 1,0,252,134,130,130,134,252,128,128,128,128,128,10,11,22, + 12,1,0,62,0,99,0,193,128,129,128,128,128,128,128,128, + 128,129,128,193,128,99,0,63,192,7,11,11,9,1,0,252, + 134,130,130,134,248,132,134,134,130,130,8,11,11,10,1,0, + 60,194,131,128,240,126,7,1,129,195,124,9,11,22,11,1, + 0,255,128,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,8,11,11,10,1,0,129,129,129, + 129,129,129,129,129,131,194,60,9,11,22,10,0,0,192,128, + 65,128,97,128,97,0,35,0,51,0,18,0,22,0,30,0, + 12,0,12,0,14,11,22,15,0,0,195,4,67,140,67,140, + 102,136,38,136,36,216,52,80,60,80,24,80,24,112,24,32, + 9,11,22,11,1,0,193,0,99,0,38,0,52,0,28,0, + 24,0,60,0,38,0,98,0,195,0,129,128,9,11,22,10, + 1,0,193,128,65,0,99,0,38,0,52,0,28,0,8,0, + 8,0,8,0,8,0,8,0,8,11,11,10,1,0,127,3, + 6,6,12,24,56,48,96,224,255,3,14,14,6,2,253,224, + 128,128,128,128,128,128,128,128,128,128,128,128,224,4,12,12, + 6,1,255,128,128,128,64,64,64,32,32,32,32,16,16,3, + 14,14,6,1,253,224,32,32,32,32,32,32,32,32,32,32, + 32,32,224,7,10,10,15,4,0,16,16,40,40,72,68,68, + 130,130,130,8,1,1,8,0,254,255,2,3,3,3,0,9, + 128,192,64,6,8,8,8,1,0,120,204,4,124,196,132,140, + 116,7,11,11,9,1,0,128,128,128,188,198,134,130,130,134, + 196,184,6,8,8,8,1,0,120,204,132,128,128,132,204,120, + 7,11,11,9,1,0,2,2,2,122,198,134,130,130,134,198, + 58,6,8,8,8,1,0,120,196,132,252,128,132,204,120,5, + 11,11,7,1,0,56,32,32,248,32,32,32,32,32,32,32, + 7,11,11,9,1,253,122,198,134,130,130,134,198,122,6,198, + 120,6,11,11,8,1,0,128,128,128,184,204,132,132,132,132, + 132,132,1,11,11,3,1,0,128,0,0,128,128,128,128,128, + 128,128,128,2,14,14,4,1,253,64,0,0,64,64,64,64, + 64,64,64,64,64,64,192,6,11,11,7,1,0,128,128,128, + 136,144,160,224,160,176,152,140,1,11,11,3,1,0,128,128, + 128,128,128,128,128,128,128,128,128,11,8,16,13,1,0,185, + 192,206,96,132,32,132,32,132,32,132,32,132,32,132,32,6, + 8,8,8,1,0,184,204,132,132,132,132,132,132,7,8,8, + 9,1,0,120,196,134,130,130,134,196,120,7,11,11,9,1, + 253,188,198,134,130,130,134,198,188,128,128,128,7,11,11,9, + 1,253,122,198,134,130,130,134,198,122,2,2,2,4,8,8, + 5,1,0,240,192,128,128,128,128,128,128,6,8,8,8,1, + 0,120,140,128,240,28,4,140,120,4,10,10,6,1,0,32, + 32,240,32,32,32,32,32,32,48,6,8,8,8,1,0,132, + 132,132,132,132,132,204,116,8,8,8,8,0,0,195,66,102, + 36,36,60,24,24,12,8,16,12,0,0,198,48,70,48,79, + 32,105,32,41,96,41,192,56,192,16,192,7,8,8,8,1, + 0,196,76,120,48,48,120,204,134,8,11,11,8,0,253,195, + 66,102,38,52,60,24,24,24,16,48,5,8,8,7,1,0, + 248,24,16,32,96,64,192,248,5,15,15,7,1,252,24,48, + 32,32,32,32,96,192,96,32,32,32,32,48,24,1,16,16, + 6,3,252,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,5,15,15,7,1,252,192,96,32,32,32,32,48, + 24,48,32,32,32,32,96,192,8,2,2,8,0,3,115,206, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,0,0,0,5,0,0,1,11,11,5,2,253,128,0,0, + 128,128,128,128,128,128,128,128,6,12,12,8,1,254,8,8, + 120,220,148,144,160,164,236,120,64,64,7,11,11,9,1,0, + 60,102,64,64,248,64,64,64,64,64,254,8,9,9,10,1, + 2,129,90,36,66,66,66,36,90,129,8,11,11,9,0,0, + 65,99,34,231,20,28,255,8,8,8,8,1,14,14,6,3, + 253,128,128,128,128,128,128,0,0,128,128,128,128,128,128,5, + 14,14,7,1,253,120,136,128,192,112,216,136,152,240,48,24, + 8,24,240,4,1,1,4,0,10,144,11,11,22,13,1,0, + 31,0,127,128,115,64,225,96,160,32,160,32,161,32,179,96, + 94,64,96,128,31,0,6,8,8,6,0,3,56,72,120,72, + 88,104,0,252,6,6,6,8,1,1,36,72,216,216,72,36, + 8,3,3,10,1,4,255,1,1,255,11,11,22,13,1,0, + 31,0,127,128,81,64,209,96,158,32,147,32,145,32,209,96, + 64,64,97,128,31,0,4,1,1,4,0,10,240,3,4,4, + 5,1,7,224,160,160,224,9,10,20,15,3,0,8,0,8, + 0,8,0,255,128,8,0,8,0,8,0,0,0,0,0,255, + 128,4,6,6,6,1,5,112,144,48,96,192,240,5,6,6, + 6,0,5,120,200,24,48,136,112,3,3,3,3,1,9,96, + 64,128,255,7,14,14,9,1,253,126,244,244,244,244,116,20, + 20,20,20,20,20,20,20,1,2,2,4,2,4,128,128,4, + 3,3,5,1,253,48,16,224,3,6,6,5,1,5,96,160, + 32,32,32,32,5,8,8,7,1,3,112,216,136,136,216,112, + 0,248,6,6,6,8,1,1,216,72,36,36,72,216,10,11, + 22,12,1,0,97,0,162,0,34,0,36,0,36,0,41,128, + 9,128,18,128,51,192,32,128,96,128,11,11,22,13,1,0, + 96,128,161,0,34,0,34,0,36,0,37,192,9,32,24,96, + 16,192,33,128,97,224,11,11,22,12,0,0,120,128,9,128, + 49,0,27,0,138,0,116,192,4,192,9,64,11,224,16,64, + 48,64,6,11,11,8,1,253,16,0,16,16,48,96,192,128, + 132,236,120,11,16,32,11,0,0,24,0,8,0,4,0,0, + 0,0,0,6,0,14,0,10,0,27,0,25,0,49,128,49, + 128,63,192,96,192,64,64,192,96,11,16,32,11,0,0,3, + 0,2,0,4,0,0,0,0,0,6,0,14,0,10,0,27, + 0,25,0,49,128,49,128,63,192,96,192,64,64,192,96,11, + 16,32,11,0,0,4,0,14,0,9,0,0,0,0,0,6, + 0,14,0,10,0,27,0,25,0,49,128,49,128,63,192,96, + 192,64,64,192,96,11,15,30,11,0,0,13,0,22,0,0, + 0,0,0,6,0,14,0,10,0,27,0,25,0,49,128,49, + 128,63,192,96,192,64,64,192,96,11,14,28,11,0,0,9, + 0,0,0,0,0,6,0,14,0,11,0,27,0,25,0,17, + 128,48,128,63,192,96,192,64,96,192,96,11,16,32,11,0, + 0,14,0,10,0,14,0,0,0,0,0,4,0,12,0,10, + 0,10,0,17,0,17,0,49,128,63,128,96,192,64,64,192, + 96,13,11,22,14,0,0,3,248,5,0,13,0,13,0,25, + 0,25,248,49,0,63,0,97,0,65,0,193,248,8,15,15, + 10,1,252,62,97,193,128,128,128,128,128,193,67,62,12,6, + 2,28,6,16,16,9,1,0,64,32,16,0,0,252,128,128, + 128,128,252,128,128,128,128,252,6,16,16,9,1,0,8,16, + 16,0,0,252,128,128,128,128,252,128,128,128,128,252,6,16, + 16,9,1,0,48,48,72,0,0,252,128,128,128,128,252,128, + 128,128,128,252,6,15,15,8,1,0,72,0,0,0,252,128, + 128,128,128,252,128,128,128,128,252,3,16,16,3,255,0,192, + 64,32,0,0,32,32,32,32,32,32,32,32,32,32,32,3, + 16,16,3,1,0,96,192,128,0,0,128,128,128,128,128,128, + 128,128,128,128,128,3,16,16,3,0,0,64,224,160,0,0, + 64,64,64,64,64,64,64,64,64,64,64,4,14,14,4,0, + 0,144,0,0,64,64,64,64,64,64,64,64,64,64,64,10, + 11,22,11,0,0,62,0,33,128,32,128,32,192,32,64,248, + 64,32,64,32,192,32,128,33,128,62,0,8,15,15,10,1, + 0,52,44,0,0,193,225,225,177,177,153,137,141,133,135,131, + 9,16,32,11,1,0,48,0,16,0,8,0,0,0,0,0, + 62,0,99,0,193,128,129,128,128,128,128,128,128,128,129,128, + 193,0,99,0,62,0,9,16,32,11,1,0,4,0,12,0, + 8,0,0,0,0,0,62,0,99,0,193,128,129,128,128,128, + 128,128,128,128,129,128,193,0,99,0,62,0,9,16,32,11, + 1,0,8,0,28,0,20,0,0,0,0,0,62,0,99,0, + 193,128,129,128,128,128,128,128,128,128,129,128,193,0,99,0, + 62,0,9,15,30,11,1,0,24,0,44,0,0,0,0,0, + 62,0,99,0,193,128,128,128,128,128,128,128,128,128,129,128, + 193,0,119,0,62,0,9,15,30,11,1,0,18,0,0,0, + 0,0,0,0,62,0,99,0,193,128,129,128,128,128,128,128, + 128,128,129,128,193,0,99,0,62,0,7,7,7,15,4,1, + 130,68,40,16,40,68,130,9,13,26,11,1,255,0,128,63, + 0,99,0,195,128,134,128,140,128,136,128,152,128,177,128,225, + 0,99,0,254,0,128,0,8,16,16,10,1,0,32,16,24, + 0,0,129,129,129,129,129,129,129,129,195,230,60,8,16,16, + 10,1,0,12,8,16,0,0,129,129,129,129,129,129,129,129, + 195,230,60,8,16,16,10,1,0,24,24,36,0,0,129,129, + 129,129,129,129,129,129,195,230,60,8,15,15,10,1,0,36, + 0,0,0,129,129,129,129,129,129,129,129,131,194,60,9,16, + 32,10,1,0,6,0,4,0,8,0,0,0,0,0,193,128, + 65,0,99,0,38,0,52,0,28,0,8,0,8,0,8,0, + 8,0,8,0,7,11,11,9,1,0,128,128,252,134,130,130, + 134,252,128,128,128,7,11,11,8,1,0,120,204,132,140,144, + 144,156,134,130,178,156,6,12,12,8,1,0,32,16,16,0, + 120,204,4,124,196,132,140,116,6,13,13,8,1,0,24,16, + 48,32,0,120,204,4,124,196,132,140,116,6,12,12,8,1, + 0,48,104,72,0,120,204,4,124,196,132,140,116,6,11,11, + 8,1,0,120,0,0,120,204,4,124,196,132,140,116,6,11, + 11,8,1,0,72,0,0,120,204,4,124,196,132,140,116,6, + 13,13,8,1,0,48,72,72,48,0,120,196,4,124,196,132, + 140,116,12,8,16,13,1,0,251,192,138,32,4,48,127,240, + 196,0,140,48,202,96,113,192,6,12,12,8,1,252,120,204, + 132,128,128,132,204,120,48,24,8,48,6,13,13,8,1,0, + 64,32,32,16,0,120,196,132,252,128,132,204,120,6,13,13, + 8,1,0,8,16,16,32,0,120,196,132,252,128,132,204,120, + 6,12,12,8,1,0,48,104,72,0,120,196,132,252,128,132, + 204,120,6,11,11,8,1,0,72,0,0,120,204,132,252,128, + 132,204,120,2,12,12,3,0,0,128,64,64,0,64,64,64, + 64,64,64,64,64,3,12,12,3,0,0,32,64,128,0,64, + 64,64,64,64,64,64,64,5,12,12,3,255,0,112,80,136, + 0,32,32,32,32,32,32,32,32,4,11,11,4,0,0,144, + 0,0,64,64,64,64,64,64,64,64,7,11,11,9,1,0, + 104,112,136,124,198,134,130,130,134,196,120,6,11,11,8,1, + 0,120,0,0,184,204,132,132,132,132,132,132,7,13,13,9, + 1,0,96,32,16,16,0,120,196,134,130,130,134,196,120,7, + 13,13,9,1,0,12,24,16,32,0,120,196,134,130,130,134, + 196,120,7,12,12,9,1,0,56,40,68,0,120,196,134,130, + 130,134,196,120,7,11,11,9,1,0,120,0,0,120,196,134, + 130,130,134,196,120,7,11,11,9,1,0,72,0,0,120,196, + 134,130,130,134,196,120,9,7,14,15,3,1,8,0,8,0, + 0,0,255,128,0,0,8,0,8,0,8,10,10,9,0,255, + 1,62,98,71,73,89,83,98,124,192,6,13,13,8,1,0, + 64,32,32,16,0,132,132,132,132,132,132,204,116,6,13,13, + 8,1,0,24,16,48,32,0,132,132,132,132,132,132,204,116, + 6,12,12,8,1,0,48,80,72,0,132,132,132,132,132,132, + 204,116,6,11,11,8,1,0,72,0,0,132,132,132,132,132, + 132,204,116,8,15,15,8,0,253,4,8,16,0,195,66,102, + 38,52,60,24,24,24,80,112,7,14,14,9,1,253,128,128, + 128,188,198,134,130,130,134,198,188,128,128,128,8,14,14,8, + 0,253,36,0,0,195,66,102,36,36,60,24,24,24,16,48 + }; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--15-150-72-72-P-71-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 11 + Calculated Max Values w= 9 h=12 x= 3 y= 5 dx=15 dy= 0 ascent=11 len=18 + Font Bounding box w=20 h=20 x=-1 y=-4 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =11 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur11n[265] U8G_SECTION(".progmem.u8g_font_fur11n") = { + 0,20,20,255,252,11,0,0,0,0,42,57,0,11,254,11, + 0,6,5,5,10,2,5,72,48,252,48,120,9,9,18,15, + 3,0,8,0,8,0,8,0,8,0,255,128,8,0,8,0, + 8,0,8,0,2,4,4,4,1,254,192,192,128,128,4,1, + 1,6,1,3,240,1,2,2,4,2,0,128,128,4,12,12, + 6,1,255,16,16,16,32,32,32,64,64,64,64,128,128,6, + 11,11,8,1,0,120,200,140,132,132,132,132,132,140,200,120, + 4,11,11,8,2,0,48,112,208,16,16,16,16,16,16,16, + 16,6,11,11,8,1,0,120,204,196,4,12,24,16,48,96, + 192,252,7,11,11,8,0,0,60,70,194,6,24,4,6,2, + 194,70,60,7,11,11,8,1,0,12,28,20,36,100,68,196, + 254,4,4,4,6,11,11,8,1,0,248,128,128,184,204,132, + 4,4,140,200,112,7,11,11,8,1,0,60,198,134,128,188, + 198,130,130,130,198,60,7,11,11,8,1,0,254,6,6,4, + 12,8,24,24,16,48,48,6,11,11,8,1,0,120,204,132, + 204,112,200,132,132,132,204,120,7,11,11,8,1,0,124,198, + 130,130,198,122,2,6,134,204,120}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--15-150-72-72-P-71-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=14 h=16 x= 4 y= 9 dx=15 dy= 0 ascent=13 len=28 + Font Bounding box w=20 h=20 x=-1 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur11r[1729] U8G_SECTION(".progmem.u8g_font_fur11r") = { + 0,20,20,255,252,11,2,81,4,211,32,127,253,13,252,11, + 253,0,0,0,5,0,0,1,11,11,5,2,0,128,128,128, + 128,128,128,128,128,128,0,128,5,5,5,7,1,6,216,216, + 152,152,144,9,11,22,11,1,0,9,0,9,0,19,0,127, + 128,18,0,38,0,255,0,36,0,100,0,72,0,72,0,7, + 14,14,9,1,255,16,16,120,148,148,144,240,124,22,18,146, + 214,124,16,12,11,22,14,1,0,112,128,152,128,137,0,137, + 0,154,0,116,224,5,176,9,16,9,16,17,48,16,224,9, + 11,22,11,1,0,56,0,68,0,68,0,120,0,113,0,217, + 0,137,0,143,0,134,0,199,0,125,128,2,5,5,6,2, + 6,192,128,128,128,128,2,14,14,6,2,253,64,64,192,128, + 128,128,128,128,128,128,128,192,64,64,2,14,14,5,2,253, + 128,128,128,192,64,64,64,64,64,64,192,128,128,128,6,5, + 5,10,2,5,72,48,252,48,120,9,9,18,15,3,0,8, + 0,8,0,8,0,8,0,255,128,8,0,8,0,8,0,8, + 0,2,4,4,4,1,254,192,192,128,128,4,1,1,6,1, + 3,240,1,2,2,4,2,0,128,128,4,12,12,6,1,255, + 16,16,16,32,32,32,64,64,64,64,128,128,6,11,11,8, + 1,0,120,200,140,132,132,132,132,132,140,200,120,4,11,11, + 8,2,0,48,112,208,16,16,16,16,16,16,16,16,6,11, + 11,8,1,0,120,204,196,4,12,24,16,48,96,192,252,7, + 11,11,8,0,0,60,70,194,6,24,4,6,2,194,70,60, + 7,11,11,8,1,0,12,28,20,36,100,68,196,254,4,4, + 4,6,11,11,8,1,0,248,128,128,184,204,132,4,4,140, + 200,112,7,11,11,8,1,0,60,198,134,128,188,198,130,130, + 130,198,60,7,11,11,8,1,0,254,6,6,4,12,8,24, + 24,16,48,48,6,11,11,8,1,0,120,204,132,204,112,200, + 132,132,132,204,120,7,11,11,8,1,0,124,198,130,130,198, + 122,2,6,134,204,120,1,8,8,4,2,0,128,128,0,0, + 0,0,128,128,2,10,10,4,1,254,64,64,0,0,0,0, + 64,192,192,128,9,8,16,15,3,1,0,128,3,0,28,0, + 96,0,128,0,112,0,14,0,1,128,9,4,8,15,3,3, + 255,128,0,0,0,0,255,128,9,8,16,15,3,1,128,0, + 96,0,28,0,3,0,0,128,7,0,56,0,192,0,7,11, + 11,8,0,0,60,198,2,6,4,8,16,16,16,0,16,13, + 14,28,15,1,253,15,128,48,96,96,16,206,144,153,152,144, + 136,144,136,144,136,145,152,153,144,206,96,96,0,48,0,15, + 128,11,11,22,11,0,0,6,0,14,0,10,0,27,0,25, + 0,49,128,49,128,63,192,96,192,64,64,192,96,8,11,11, + 10,1,0,252,134,130,130,134,252,130,129,129,131,254,8,11, + 11,10,1,0,62,99,193,128,128,128,128,128,193,67,62,8, + 11,11,10,1,0,248,134,130,131,129,129,129,131,130,134,248, + 6,11,11,9,1,0,252,128,128,128,128,252,128,128,128,128, + 252,6,11,11,8,1,0,252,128,128,128,128,252,128,128,128, + 128,128,9,11,22,11,1,0,30,0,97,128,192,128,128,0, + 128,0,135,128,128,128,128,128,192,128,96,128,63,128,8,11, + 11,10,1,0,129,129,129,129,129,255,129,129,129,129,129,1, + 11,11,3,1,0,128,128,128,128,128,128,128,128,128,128,128, + 6,11,11,8,1,0,4,4,4,4,4,4,4,4,132,140, + 120,8,11,11,9,1,0,134,140,152,176,224,224,176,152,140, + 134,131,6,11,11,7,1,0,128,128,128,128,128,128,128,128, + 128,128,252,11,11,22,13,1,0,192,96,224,224,224,160,161, + 160,177,160,145,32,147,32,154,32,138,32,142,32,132,32,8, + 11,11,10,1,0,193,225,225,177,177,153,137,141,133,135,131, + 9,11,22,11,1,0,62,0,99,0,193,128,129,128,128,128, + 128,128,128,128,129,128,193,0,99,0,62,0,7,11,11,9, + 1,0,252,134,130,130,134,252,128,128,128,128,128,10,11,22, + 12,1,0,62,0,99,0,193,128,129,128,128,128,128,128,128, + 128,129,128,193,128,99,0,63,192,7,11,11,9,1,0,252, + 134,130,130,134,248,132,134,134,130,130,8,11,11,10,1,0, + 60,194,131,128,240,126,7,1,129,195,124,9,11,22,11,1, + 0,255,128,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,8,11,11,10,1,0,129,129,129, + 129,129,129,129,129,131,194,60,9,11,22,10,0,0,192,128, + 65,128,97,128,97,0,35,0,51,0,18,0,22,0,30,0, + 12,0,12,0,14,11,22,15,0,0,195,4,67,140,67,140, + 102,136,38,136,36,216,52,80,60,80,24,80,24,112,24,32, + 9,11,22,11,1,0,193,0,99,0,38,0,52,0,28,0, + 24,0,60,0,38,0,98,0,195,0,129,128,9,11,22,10, + 1,0,193,128,65,0,99,0,38,0,52,0,28,0,8,0, + 8,0,8,0,8,0,8,0,8,11,11,10,1,0,127,3, + 6,6,12,24,56,48,96,224,255,3,14,14,6,2,253,224, + 128,128,128,128,128,128,128,128,128,128,128,128,224,4,12,12, + 6,1,255,128,128,128,64,64,64,32,32,32,32,16,16,3, + 14,14,6,1,253,224,32,32,32,32,32,32,32,32,32,32, + 32,32,224,7,10,10,15,4,0,16,16,40,40,72,68,68, + 130,130,130,8,1,1,8,0,254,255,2,3,3,3,0,9, + 128,192,64,6,8,8,8,1,0,120,204,4,124,196,132,140, + 116,7,11,11,9,1,0,128,128,128,188,198,134,130,130,134, + 196,184,6,8,8,8,1,0,120,204,132,128,128,132,204,120, + 7,11,11,9,1,0,2,2,2,122,198,134,130,130,134,198, + 58,6,8,8,8,1,0,120,196,132,252,128,132,204,120,5, + 11,11,7,1,0,56,32,32,248,32,32,32,32,32,32,32, + 7,11,11,9,1,253,122,198,134,130,130,134,198,122,6,198, + 120,6,11,11,8,1,0,128,128,128,184,204,132,132,132,132, + 132,132,1,11,11,3,1,0,128,0,0,128,128,128,128,128, + 128,128,128,2,14,14,4,1,253,64,0,0,64,64,64,64, + 64,64,64,64,64,64,192,6,11,11,7,1,0,128,128,128, + 136,144,160,224,160,176,152,140,1,11,11,3,1,0,128,128, + 128,128,128,128,128,128,128,128,128,11,8,16,13,1,0,185, + 192,206,96,132,32,132,32,132,32,132,32,132,32,132,32,6, + 8,8,8,1,0,184,204,132,132,132,132,132,132,7,8,8, + 9,1,0,120,196,134,130,130,134,196,120,7,11,11,9,1, + 253,188,198,134,130,130,134,198,188,128,128,128,7,11,11,9, + 1,253,122,198,134,130,130,134,198,122,2,2,2,4,8,8, + 5,1,0,240,192,128,128,128,128,128,128,6,8,8,8,1, + 0,120,140,128,240,28,4,140,120,4,10,10,6,1,0,32, + 32,240,32,32,32,32,32,32,48,6,8,8,8,1,0,132, + 132,132,132,132,132,204,116,8,8,8,8,0,0,195,66,102, + 36,36,60,24,24,12,8,16,12,0,0,198,48,70,48,79, + 32,105,32,41,96,41,192,56,192,16,192,7,8,8,8,1, + 0,196,76,120,48,48,120,204,134,8,11,11,8,0,253,195, + 66,102,38,52,60,24,24,24,16,48,5,8,8,7,1,0, + 248,24,16,32,96,64,192,248,5,15,15,7,1,252,24,48, + 32,32,32,32,96,192,96,32,32,32,32,48,24,1,16,16, + 6,3,252,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,5,15,15,7,1,252,192,96,32,32,32,32,48, + 24,48,32,32,32,32,96,192,8,2,2,8,0,3,115,206, + 255}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--19-190-72-72-P-92-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=18 h=21 x= 5 y=13 dx=19 dy= 0 ascent=21 len=54 + Font Bounding box w=26 h=26 x=-1 y=-5 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =21 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur14[5349] U8G_SECTION(".progmem.u8g_font_fur14") = { + 0,26,26,255,251,14,3,59,6,250,32,255,252,21,251,14, + 252,0,0,0,6,0,0,2,14,14,8,3,0,192,192,192, + 192,192,192,192,192,192,192,192,0,0,192,6,6,6,9,1, + 8,204,204,76,76,68,68,12,14,28,14,1,0,6,96,4, + 64,4,64,12,192,127,240,8,128,25,128,25,0,255,224,19, + 0,51,0,34,0,34,0,102,0,9,18,36,11,1,254,8, + 0,8,0,62,0,107,0,201,128,200,0,200,0,248,0,126, + 0,15,0,9,128,9,128,201,128,201,128,107,0,62,0,8, + 0,8,0,16,14,28,18,1,0,120,16,108,16,198,32,198, + 96,198,64,204,128,124,128,1,60,3,102,2,99,6,99,4, + 99,8,102,8,60,12,14,28,14,1,0,30,0,51,0,97, + 0,99,0,51,0,60,0,60,96,108,96,198,96,195,96,193, + 192,192,192,99,224,62,48,1,6,6,7,3,8,128,128,128, + 128,128,128,3,17,17,7,2,253,32,96,96,64,192,192,192, + 192,192,192,192,192,192,64,96,96,32,3,17,17,7,2,253, + 128,128,192,192,64,64,96,96,96,96,96,96,64,192,192,128, + 128,8,7,7,12,2,7,36,36,24,255,24,60,102,11,12, + 24,19,4,0,6,0,6,0,6,0,6,0,6,0,6,0, + 255,224,6,0,6,0,6,0,6,0,6,0,3,5,5,5, + 1,254,96,96,192,192,128,5,1,1,7,1,4,248,2,2, + 2,5,2,0,192,192,6,15,15,8,1,255,12,8,8,24, + 16,16,48,48,32,32,96,64,64,192,128,9,14,28,11,1, + 0,60,0,103,0,67,0,193,0,193,128,193,128,193,128,193, + 128,193,128,193,128,193,0,67,0,119,0,60,0,5,14,14, + 11,2,0,56,120,248,152,24,24,24,24,24,24,24,24,24, + 24,8,14,14,11,1,0,60,102,195,195,3,3,6,12,28, + 56,48,96,192,255,9,14,28,11,1,0,62,0,119,0,97, + 128,193,128,1,128,3,0,28,0,7,0,3,0,1,128,193, + 128,193,128,99,0,62,0,9,14,28,11,1,0,7,0,7, + 0,15,0,27,0,19,0,51,0,99,0,99,0,195,0,255, + 128,255,128,3,0,3,0,3,0,9,14,28,11,1,0,255, + 0,192,0,192,0,192,0,222,0,243,0,193,0,193,128,1, + 128,1,128,193,128,195,0,102,0,60,0,9,14,28,11,1, + 0,30,0,99,0,65,128,192,0,192,0,222,0,255,0,195, + 0,193,128,193,128,193,128,65,0,103,0,30,0,8,14,14, + 11,1,0,255,3,3,2,6,6,12,12,12,24,24,24,48, + 48,9,14,28,11,1,0,62,0,99,0,193,128,193,128,193, + 128,99,0,62,0,99,0,193,128,193,128,193,128,193,128,99, + 0,62,0,9,14,28,11,1,0,62,0,99,0,193,0,193, + 128,193,128,193,128,99,128,125,128,1,128,1,128,193,0,67, + 0,102,0,60,0,2,10,10,5,2,0,192,192,0,0,0, + 0,0,0,192,192,3,12,12,5,1,254,96,96,0,0,0, + 0,0,96,96,64,192,192,12,10,20,19,4,1,0,48,0, + 224,7,0,28,0,224,0,192,0,56,0,14,0,1,192,0, + 48,11,5,10,19,4,4,255,224,0,0,0,0,0,0,255, + 224,12,10,20,19,4,1,128,0,112,0,28,0,3,128,0, + 96,0,112,1,192,14,0,112,0,192,0,8,14,14,9,0, + 0,60,126,195,3,3,2,6,12,24,24,24,0,0,24,17, + 18,54,19,1,252,7,240,0,28,60,0,48,6,0,96,3, + 0,99,243,0,198,113,0,196,49,128,204,49,128,204,49,128, + 204,49,128,204,49,128,196,51,0,70,95,0,99,158,0,96, + 0,0,48,0,0,30,16,0,7,240,0,14,14,28,14,0, + 0,3,0,7,128,7,128,4,192,12,192,12,192,24,96,24, + 96,31,240,63,240,48,24,96,24,96,24,192,12,10,14,28, + 13,2,0,255,0,193,128,192,192,192,192,192,192,193,128,254, + 0,195,128,192,192,192,192,192,192,192,192,195,128,255,0,11, + 14,28,13,1,0,31,128,57,192,96,96,64,96,192,0,192, + 0,192,0,192,0,192,0,192,0,64,96,96,96,49,192,31, + 0,11,14,28,14,2,0,254,0,195,128,192,192,192,192,192, + 96,192,96,192,96,192,96,192,96,192,96,192,192,192,192,195, + 128,254,0,9,14,28,12,2,0,255,128,192,0,192,0,192, + 0,192,0,192,0,255,128,192,0,192,0,192,0,192,0,192, + 0,192,0,255,128,8,14,14,11,2,0,255,192,192,192,192, + 192,255,192,192,192,192,192,192,192,12,14,28,14,1,0,15, + 128,56,224,96,48,64,0,192,0,192,0,193,240,192,48,192, + 48,192,48,96,48,96,48,56,112,15,224,10,14,28,14,2, + 0,192,192,192,192,192,192,192,192,192,192,192,192,255,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,2,14,14, + 5,2,0,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,8,14,14,11,1,0,3,3,3,3,3,3,3,3,3, + 3,195,195,102,60,10,14,28,13,2,0,193,128,195,0,198, + 0,204,0,216,0,240,0,240,0,216,0,220,0,206,0,199, + 0,195,0,193,128,192,192,8,14,14,11,2,0,192,192,192, + 192,192,192,192,192,192,192,192,192,255,255,14,14,28,18,2, + 0,224,28,224,28,240,60,240,60,216,108,216,108,216,108,204, + 204,204,204,196,140,199,140,199,140,195,12,195,12,11,14,28, + 14,2,0,224,96,224,96,240,96,248,96,216,96,220,96,204, + 96,198,96,198,96,195,96,195,96,193,224,193,224,192,224,12, + 14,28,14,1,0,31,128,57,192,96,96,64,32,192,48,192, + 48,192,48,192,48,192,48,192,48,64,32,96,96,57,192,15, + 0,9,14,28,12,2,0,254,0,195,0,193,128,193,128,193, + 128,193,128,195,0,254,0,192,0,192,0,192,0,192,0,192, + 0,192,0,14,14,28,15,1,0,31,128,57,192,96,96,64, + 32,192,48,192,48,192,48,192,48,192,48,192,48,64,32,96, + 96,57,192,15,252,9,14,28,12,2,0,254,0,195,0,193, + 128,193,128,193,128,195,0,254,0,195,0,195,0,193,0,193, + 128,193,128,193,128,193,128,10,14,28,12,1,0,63,0,97, + 128,192,192,192,0,192,0,240,0,127,0,31,128,1,192,0, + 192,192,192,192,192,97,128,62,0,11,14,28,13,1,0,255, + 224,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,11,14,28,15,2, + 0,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,96,192,113,192,31,0,12,14,28, + 12,0,0,224,48,96,112,96,96,48,96,48,96,48,192,24, + 192,24,192,25,128,13,128,13,0,15,0,7,0,6,0,18, + 14,42,18,0,0,192,224,192,96,224,192,97,225,128,97,161, + 128,33,177,128,49,49,128,51,51,0,51,19,0,27,27,0, + 26,26,0,30,30,0,14,14,0,12,14,0,12,12,0,12, + 14,28,13,1,0,224,96,96,192,49,192,57,128,27,0,15, + 0,14,0,15,0,27,0,25,128,49,192,96,192,224,224,192, + 112,12,14,28,12,0,0,224,112,96,96,112,192,48,192,25, + 128,25,128,15,0,14,0,6,0,6,0,6,0,6,0,6, + 0,6,0,10,14,28,12,1,0,127,192,0,192,1,128,3, + 128,3,0,6,0,14,0,28,0,24,0,56,0,112,0,96, + 0,224,0,255,192,4,18,18,8,2,252,240,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,240,5,15,15, + 8,1,255,128,192,64,64,64,96,32,32,48,16,16,16,24, + 8,8,4,18,18,8,2,252,240,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,240,9,12,24,19,5,0, + 8,0,8,0,20,0,20,0,34,0,34,0,34,0,65,0, + 65,0,193,128,128,128,128,128,10,1,2,10,0,254,255,192, + 3,4,4,4,0,12,128,192,96,32,8,10,10,10,1,0, + 62,103,195,3,63,99,195,195,231,123,9,14,28,11,1,0, + 192,0,192,0,192,0,192,0,222,0,227,0,193,128,193,128, + 193,128,193,128,193,128,193,0,227,0,222,0,8,10,10,10, + 1,0,62,103,195,192,192,192,192,195,103,60,9,14,28,11, + 1,0,1,128,1,128,1,128,1,128,61,128,103,128,195,128, + 193,128,193,128,193,128,193,128,65,128,99,128,29,128,9,10, + 20,11,1,0,62,0,99,0,193,0,193,128,255,128,192,0, + 192,0,67,0,103,0,62,0,6,14,14,8,1,0,28,48, + 48,48,252,48,48,48,48,48,48,48,48,48,9,14,28,11, + 1,252,61,128,99,128,193,128,193,128,193,128,193,128,193,128, + 193,128,99,128,61,128,1,128,65,128,115,0,62,0,8,14, + 14,10,1,0,192,192,192,192,222,231,195,195,195,195,195,195, + 195,195,2,14,14,4,1,0,192,0,0,0,192,192,192,192, + 192,192,192,192,192,192,3,18,18,5,1,252,96,0,0,0, + 96,96,96,96,96,96,96,96,96,96,96,96,96,192,7,14, + 14,9,1,0,192,192,192,192,198,204,216,240,240,248,216,204, + 198,198,2,14,14,4,1,0,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,14,10,20,17,1,0,222,120,231,156, + 195,12,195,12,195,12,195,12,195,12,195,12,195,12,195,12, + 8,10,10,10,1,0,222,231,195,195,195,195,195,195,195,195, + 9,10,20,11,1,0,62,0,99,0,193,128,193,128,193,128, + 193,128,193,128,193,128,99,0,62,0,9,14,28,11,1,252, + 222,0,227,0,193,128,193,128,193,128,193,128,193,128,193,128, + 227,0,222,0,192,0,192,0,192,0,192,0,9,14,28,11, + 1,252,61,128,99,128,193,128,193,128,193,128,193,128,193,128, + 193,128,99,128,61,128,1,128,1,128,1,128,1,128,5,10, + 10,7,1,0,248,224,192,192,192,192,192,192,192,192,8,10, + 10,10,1,0,124,231,195,192,124,30,3,195,230,124,6,13, + 13,8,1,0,16,48,48,252,48,48,48,48,48,48,48,48, + 28,8,10,10,10,1,0,195,195,195,195,195,195,195,195,231, + 123,10,10,20,10,0,0,192,192,96,128,97,128,49,128,51, + 0,51,0,26,0,30,0,14,0,12,0,15,10,20,15,0, + 0,195,134,99,134,99,196,98,204,38,76,54,72,52,120,28, + 120,28,48,24,48,9,10,20,10,1,0,195,0,99,0,118, + 0,60,0,24,0,28,0,60,0,102,0,195,0,195,128,10, + 14,28,10,0,252,192,192,97,128,97,128,49,128,51,0,19, + 0,26,0,30,0,14,0,12,0,12,0,12,0,24,0,24, + 0,7,10,10,9,1,0,254,6,12,28,24,48,96,96,192, + 254,6,19,19,10,2,251,12,24,16,48,48,48,48,48,96, + 224,224,48,48,48,48,16,16,24,28,1,21,21,7,3,251, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,6,19,19,10,2,251,224,112,48,48,48, + 48,48,16,24,12,28,16,48,48,48,48,48,48,224,10,2, + 4,10,0,4,120,192,207,128,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,0,0,0,6,0,0,2, + 14,14,7,3,252,192,192,0,0,192,192,192,192,192,192,192, + 192,192,192,8,14,14,10,1,254,2,4,60,102,203,200,200, + 208,208,211,102,60,32,64,10,14,28,11,1,0,31,0,49, + 128,96,192,96,0,96,0,252,0,96,0,96,0,96,0,96, + 0,96,0,96,0,96,0,255,128,10,10,20,12,1,3,128, + 64,94,128,51,0,65,128,64,128,64,128,64,128,33,0,94, + 128,128,64,10,14,28,12,1,0,192,192,96,128,97,128,49, + 0,243,192,27,0,30,0,255,192,12,0,12,0,12,0,12, + 0,12,0,12,0,1,18,18,7,3,252,128,128,128,128,128, + 128,128,128,0,0,128,128,128,128,128,128,128,128,7,17,17, + 9,1,253,60,100,192,192,96,56,124,198,198,206,124,60,14, + 6,6,140,248,6,1,1,6,0,13,204,14,14,28,16,1, + 0,15,192,28,224,39,144,76,200,216,108,152,4,152,4,152, + 4,152,100,140,204,71,200,32,16,16,32,15,192,7,10,10, + 8,1,4,120,204,4,124,196,132,124,0,0,254,7,8,8, + 11,2,1,38,100,204,216,152,204,100,38,10,5,10,12,1, + 3,255,192,0,64,0,64,0,64,0,64,255,14,14,28,16, + 1,0,15,192,28,224,47,208,76,104,204,108,140,100,143,132, + 140,68,140,100,204,108,76,104,32,16,28,224,15,192,6,1, + 1,6,0,13,252,4,5,5,6,1,9,96,240,144,144,96, + 11,12,24,19,4,0,6,0,6,0,6,0,6,0,255,224, + 6,0,6,0,6,0,0,0,0,0,0,0,255,224,6,8, + 8,7,1,6,120,220,12,12,24,48,192,252,6,8,8,7, + 1,6,120,204,12,48,24,140,204,120,4,4,4,4,1,12, + 48,96,64,192,255,9,18,36,11,1,252,63,128,121,0,249, + 0,249,0,249,0,249,0,121,0,25,0,9,0,9,0,9, + 0,9,0,9,0,9,0,9,0,9,0,9,0,9,0,2, + 2,2,5,2,5,192,192,6,5,5,5,0,251,64,120,12, + 12,248,4,7,7,6,1,7,112,240,48,48,48,48,48,6, + 10,10,8,1,4,120,72,132,132,132,132,204,120,0,252,7, + 8,8,11,2,1,152,204,100,102,102,100,204,152,13,14,28, + 15,1,0,112,64,240,192,48,128,49,128,49,0,51,0,50, + 48,54,112,12,112,8,176,25,176,17,248,48,48,32,48,13, + 14,28,15,1,0,112,64,240,192,48,128,49,128,49,0,50, + 0,50,112,52,216,12,24,8,24,24,48,16,96,48,192,32, + 248,14,14,28,16,1,0,120,48,204,32,12,96,48,192,12, + 128,141,128,121,24,3,56,2,120,4,88,12,152,8,252,24, + 24,16,24,8,14,14,10,1,252,12,12,0,12,12,12,24, + 48,96,192,192,193,127,62,14,20,40,14,0,0,12,0,6, + 0,2,0,3,0,0,0,0,0,3,0,7,128,7,128,4, + 192,12,192,12,192,24,96,24,96,31,240,63,240,48,24,96, + 24,96,24,192,12,14,20,40,14,0,0,0,192,0,128,1, + 128,1,0,0,0,0,0,3,0,7,128,7,128,4,192,12, + 192,12,192,24,96,24,96,31,240,63,240,48,24,96,24,96, + 24,192,12,14,20,40,14,0,0,3,0,3,128,6,128,4, + 192,0,0,0,0,3,0,7,128,7,128,4,192,12,192,12, + 192,24,96,24,96,31,240,63,240,48,24,96,24,96,24,192, + 12,14,18,36,14,0,0,7,192,0,0,0,0,0,0,3, + 0,7,128,7,128,4,192,12,192,12,192,24,96,24,96,31, + 240,63,240,48,24,96,24,96,24,192,12,13,18,36,15,1, + 0,12,192,0,0,0,0,0,0,7,0,7,0,13,128,13, + 128,12,192,24,192,24,192,48,96,63,224,63,240,96,48,96, + 24,192,24,192,24,13,21,42,14,1,0,6,0,13,0,9, + 0,9,0,6,0,0,0,0,0,6,0,7,0,15,0,13, + 0,25,128,25,128,16,192,48,192,63,224,127,224,96,32,192, + 48,192,48,192,24,17,14,42,19,1,0,1,255,128,3,192, + 0,2,192,0,6,192,0,14,192,0,12,192,0,28,255,128, + 24,192,0,56,192,0,63,192,0,96,192,0,96,192,0,192, + 192,0,192,255,128,11,18,36,13,1,252,31,128,57,192,96, + 96,64,96,192,0,192,0,192,0,192,0,192,0,192,0,64, + 96,96,96,49,192,31,0,4,0,7,0,1,128,15,128,9, + 20,40,12,2,0,96,0,48,0,24,0,8,0,0,0,0, + 0,255,128,192,0,192,0,192,0,192,0,192,0,255,128,192, + 0,192,0,192,0,192,0,192,0,192,0,255,128,9,20,40, + 12,2,0,6,0,4,0,12,0,24,0,0,0,0,0,255, + 128,192,0,192,0,192,0,192,0,192,0,255,128,192,0,192, + 0,192,0,192,0,192,0,192,0,255,128,9,20,40,12,2, + 0,24,0,28,0,52,0,38,0,0,0,0,0,255,128,192, + 0,192,0,192,0,192,0,192,0,255,128,192,0,192,0,192, + 0,192,0,192,0,192,0,255,128,9,18,36,12,2,0,102, + 0,0,0,0,0,0,0,255,128,192,0,192,0,192,0,192, + 0,192,0,255,128,192,0,192,0,192,0,192,0,192,0,192, + 0,255,128,4,20,20,5,0,0,192,96,32,48,0,0,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,4,20,20, + 5,2,0,48,96,64,128,0,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,5,20,20,5,0,0,48,112,88, + 200,0,0,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,6,18,18,6,0,0,204,0,0,0,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,13,14,28,14,0,0,127, + 128,97,224,96,112,96,48,96,16,96,24,254,24,96,24,96, + 24,96,16,96,48,96,96,97,224,127,128,11,18,36,14,2, + 0,31,0,0,0,0,0,0,0,224,96,224,96,240,96,248, + 96,216,96,220,96,204,96,198,96,198,96,195,96,195,96,193, + 224,193,224,192,224,12,20,40,14,1,0,24,0,12,0,6, + 0,2,0,0,0,0,0,31,128,57,192,96,96,64,32,192, + 48,192,48,192,48,192,48,192,48,192,48,64,32,96,96,57, + 192,15,0,12,20,40,14,1,0,1,128,3,0,6,0,4, + 0,0,0,0,0,31,128,57,192,96,96,64,32,192,48,192, + 48,192,48,192,48,192,48,192,48,64,32,96,96,57,192,15, + 0,12,20,40,14,1,0,6,0,15,0,9,0,16,128,0, + 0,0,0,31,128,57,192,96,96,64,32,192,48,192,48,192, + 48,192,48,192,48,192,48,64,32,96,96,57,192,15,0,12, + 19,38,14,1,0,12,128,31,0,0,0,0,0,0,0,31, + 128,57,192,96,96,64,32,192,48,192,48,192,48,192,48,192, + 48,192,48,96,96,112,224,63,192,15,0,12,18,36,14,1, + 0,13,128,0,0,0,0,0,0,31,128,57,192,96,96,64, + 32,192,48,192,48,192,48,192,48,192,48,192,48,64,32,96, + 96,57,192,15,0,11,10,20,19,4,1,192,96,96,192,49, + 128,27,0,14,0,14,0,27,0,49,128,96,192,64,96,12, + 16,32,14,1,255,0,48,31,224,56,224,96,224,65,176,193, + 176,195,48,198,48,198,48,204,48,220,48,88,32,112,96,57, + 192,127,0,192,0,11,20,40,15,2,0,24,0,8,0,4, + 0,6,0,0,0,0,0,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,96,192,127, + 192,31,0,11,20,40,15,2,0,3,0,2,0,4,0,12, + 0,0,0,0,0,192,96,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,96,192,127,192,31, + 0,11,20,40,15,2,0,14,0,14,0,27,0,17,0,0, + 0,0,0,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,96,192,127,192,31,0,11, + 18,36,15,2,0,25,128,0,0,0,0,0,0,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,96,96,192,113,192,31,0,12,20,40,12,0,0,1, + 128,3,0,2,0,4,0,0,0,0,0,224,112,96,96,112, + 192,48,192,25,128,25,128,15,0,14,0,6,0,6,0,6, + 0,6,0,6,0,6,0,9,14,28,12,2,0,192,0,192, + 0,192,0,254,0,195,0,193,128,193,128,193,128,195,128,254, + 0,192,0,192,0,192,0,192,0,10,14,28,11,1,0,62, + 0,103,0,195,0,195,0,198,0,204,0,204,0,206,0,199, + 128,193,128,192,192,216,192,220,128,199,128,8,15,15,10,1, + 0,48,24,8,0,0,62,103,195,3,63,99,195,195,231,123, + 8,16,16,10,1,0,6,12,24,16,0,0,62,103,195,3, + 63,99,195,195,231,123,8,16,16,10,1,0,24,28,36,38, + 0,0,62,103,195,3,63,99,195,195,231,123,8,14,14,10, + 1,0,62,0,0,0,62,103,195,3,63,115,195,195,231,123, + 8,14,14,10,1,0,102,0,0,0,62,103,195,3,63,99, + 195,195,231,123,8,16,16,10,1,0,28,34,34,28,0,0, + 62,99,193,1,63,113,193,193,231,61,16,10,20,18,1,0, + 62,124,227,198,193,131,1,131,63,255,225,128,193,128,195,131, + 230,238,124,60,8,14,14,10,1,252,62,103,195,192,192,192, + 192,195,102,60,16,28,6,62,9,16,32,11,1,0,48,0, + 48,0,24,0,8,0,0,0,0,0,62,0,99,0,193,0, + 193,128,255,128,192,0,192,0,67,0,103,0,62,0,9,16, + 32,11,1,0,6,0,12,0,8,0,24,0,0,0,0,0, + 62,0,99,0,193,0,193,128,255,128,192,0,192,0,67,0, + 103,0,62,0,9,16,32,11,1,0,24,0,28,0,52,0, + 34,0,0,0,0,0,62,0,99,0,193,0,193,128,255,128, + 192,0,192,0,67,0,103,0,62,0,9,14,28,11,1,0, + 102,0,0,0,0,0,0,0,62,0,99,0,193,0,193,128, + 255,128,192,0,192,0,67,0,103,0,62,0,3,15,15,4, + 0,0,128,192,96,32,0,96,96,96,96,96,96,96,96,96, + 96,3,15,15,4,1,0,96,64,192,128,0,192,192,192,192, + 192,192,192,192,192,192,6,15,15,4,255,0,48,120,72,132, + 0,48,48,48,48,48,48,48,48,48,48,6,14,14,5,0, + 0,204,0,0,0,48,48,48,48,48,48,48,48,48,48,9, + 14,28,11,1,0,102,0,24,0,108,0,6,0,63,0,99, + 0,193,128,193,128,193,128,193,128,193,128,193,128,99,0,62, + 0,8,14,14,10,1,0,52,124,0,0,222,231,195,195,195, + 195,195,195,195,195,9,16,32,11,1,0,48,0,16,0,24, + 0,8,0,0,0,0,0,62,0,99,0,193,128,193,128,193, + 128,193,128,193,128,193,128,99,0,62,0,9,16,32,11,1, + 0,6,0,4,0,12,0,8,0,0,0,0,0,62,0,99, + 0,193,128,193,128,193,128,193,128,193,128,193,128,99,0,62, + 0,9,16,32,11,1,0,8,0,28,0,20,0,34,0,0, + 0,0,0,62,0,99,0,193,128,193,128,193,128,193,128,193, + 128,193,128,99,0,62,0,9,14,28,11,1,0,62,0,0, + 0,0,0,0,0,62,0,99,0,193,128,193,128,193,128,193, + 128,193,128,193,128,99,0,62,0,9,14,28,11,1,0,51, + 0,0,0,0,0,0,0,62,0,115,0,193,128,192,128,192, + 128,192,128,192,128,193,128,115,0,62,0,11,8,16,19,4, + 2,6,0,6,0,0,0,0,0,255,224,0,0,6,0,6, + 0,9,12,24,11,1,0,1,128,63,0,99,0,199,128,197, + 128,201,128,217,128,209,128,225,128,99,0,254,0,128,0,8, + 16,16,10,1,0,96,48,16,8,0,0,195,195,195,195,195, + 195,195,195,231,123,8,16,16,10,1,0,4,12,8,16,0, + 0,195,195,195,195,195,195,195,195,231,123,8,16,16,10,1, + 0,24,24,52,36,0,0,195,195,195,195,195,195,195,195,231, + 123,8,14,14,10,1,0,102,0,0,0,195,195,195,195,195, + 195,195,195,231,123,10,19,38,10,0,252,3,0,6,0,4, + 0,8,0,0,0,192,192,97,128,97,128,49,128,51,0,19, + 0,26,0,30,0,14,0,12,0,12,0,12,0,120,0,120, + 0,9,18,36,11,1,252,192,0,192,0,192,0,192,0,222, + 0,227,0,193,128,193,128,193,128,193,128,193,128,193,128,227, + 0,222,0,192,0,192,0,192,0,192,0,10,18,36,10,0, + 252,51,0,0,0,0,0,0,0,192,192,97,128,97,128,97, + 0,51,0,51,0,30,0,30,0,30,0,12,0,12,0,24, + 0,24,0,24,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--19-190-72-72-P-92-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 14 + Calculated Max Values w=11 h=15 x= 4 y= 7 dx=19 dy= 0 ascent=14 len=28 + Font Bounding box w=26 h=26 x=-1 y=-5 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =14 descent= 0 + X Font ascent =14 descent= 0 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur14n[405] U8G_SECTION(".progmem.u8g_font_fur14n") = { + 0,26,26,255,251,14,0,0,0,0,42,57,0,14,254,14, + 0,8,7,7,12,2,7,36,36,24,255,24,60,102,11,12, + 24,19,4,0,6,0,6,0,6,0,6,0,6,0,6,0, + 255,224,6,0,6,0,6,0,6,0,6,0,3,5,5,5, + 1,254,96,96,192,192,128,5,1,1,7,1,4,248,2,2, + 2,5,2,0,192,192,6,15,15,8,1,255,12,8,8,24, + 16,16,48,48,32,32,96,64,64,192,128,9,14,28,11,1, + 0,60,0,103,0,67,0,193,0,193,128,193,128,193,128,193, + 128,193,128,193,128,193,0,67,0,119,0,60,0,5,14,14, + 11,2,0,56,120,248,152,24,24,24,24,24,24,24,24,24, + 24,8,14,14,11,1,0,60,102,195,195,3,3,6,12,28, + 56,48,96,192,255,9,14,28,11,1,0,62,0,119,0,97, + 128,193,128,1,128,3,0,28,0,7,0,3,0,1,128,193, + 128,193,128,99,0,62,0,9,14,28,11,1,0,7,0,7, + 0,15,0,27,0,19,0,51,0,99,0,99,0,195,0,255, + 128,255,128,3,0,3,0,3,0,9,14,28,11,1,0,255, + 0,192,0,192,0,192,0,222,0,243,0,193,0,193,128,1, + 128,1,128,193,128,195,0,102,0,60,0,9,14,28,11,1, + 0,30,0,99,0,65,128,192,0,192,0,222,0,255,0,195, + 0,193,128,193,128,193,128,65,0,103,0,30,0,8,14,14, + 11,1,0,255,3,3,2,6,6,12,12,12,24,24,24,48, + 48,9,14,28,11,1,0,62,0,99,0,193,128,193,128,193, + 128,99,0,62,0,99,0,193,128,193,128,193,128,193,128,99, + 0,62,0,9,14,28,11,1,0,62,0,99,0,193,0,193, + 128,193,128,193,128,99,128,125,128,1,128,1,128,193,0,67, + 0,102,0,60,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--19-190-72-72-P-92-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=18 h=21 x= 5 y=12 dx=19 dy= 0 ascent=16 len=54 + Font Bounding box w=26 h=26 x=-1 y=-5 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =16 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur14r[2489] U8G_SECTION(".progmem.u8g_font_fur14r") = { + 0,26,26,255,251,14,3,59,6,250,32,127,252,16,251,14, + 252,0,0,0,6,0,0,2,14,14,8,3,0,192,192,192, + 192,192,192,192,192,192,192,192,0,0,192,6,6,6,9,1, + 8,204,204,76,76,68,68,12,14,28,14,1,0,6,96,4, + 64,4,64,12,192,127,240,8,128,25,128,25,0,255,224,19, + 0,51,0,34,0,34,0,102,0,9,18,36,11,1,254,8, + 0,8,0,62,0,107,0,201,128,200,0,200,0,248,0,126, + 0,15,0,9,128,9,128,201,128,201,128,107,0,62,0,8, + 0,8,0,16,14,28,18,1,0,120,16,108,16,198,32,198, + 96,198,64,204,128,124,128,1,60,3,102,2,99,6,99,4, + 99,8,102,8,60,12,14,28,14,1,0,30,0,51,0,97, + 0,99,0,51,0,60,0,60,96,108,96,198,96,195,96,193, + 192,192,192,99,224,62,48,1,6,6,7,3,8,128,128,128, + 128,128,128,3,17,17,7,2,253,32,96,96,64,192,192,192, + 192,192,192,192,192,192,64,96,96,32,3,17,17,7,2,253, + 128,128,192,192,64,64,96,96,96,96,96,96,64,192,192,128, + 128,8,7,7,12,2,7,36,36,24,255,24,60,102,11,12, + 24,19,4,0,6,0,6,0,6,0,6,0,6,0,6,0, + 255,224,6,0,6,0,6,0,6,0,6,0,3,5,5,5, + 1,254,96,96,192,192,128,5,1,1,7,1,4,248,2,2, + 2,5,2,0,192,192,6,15,15,8,1,255,12,8,8,24, + 16,16,48,48,32,32,96,64,64,192,128,9,14,28,11,1, + 0,60,0,103,0,67,0,193,0,193,128,193,128,193,128,193, + 128,193,128,193,128,193,0,67,0,119,0,60,0,5,14,14, + 11,2,0,56,120,248,152,24,24,24,24,24,24,24,24,24, + 24,8,14,14,11,1,0,60,102,195,195,3,3,6,12,28, + 56,48,96,192,255,9,14,28,11,1,0,62,0,119,0,97, + 128,193,128,1,128,3,0,28,0,7,0,3,0,1,128,193, + 128,193,128,99,0,62,0,9,14,28,11,1,0,7,0,7, + 0,15,0,27,0,19,0,51,0,99,0,99,0,195,0,255, + 128,255,128,3,0,3,0,3,0,9,14,28,11,1,0,255, + 0,192,0,192,0,192,0,222,0,243,0,193,0,193,128,1, + 128,1,128,193,128,195,0,102,0,60,0,9,14,28,11,1, + 0,30,0,99,0,65,128,192,0,192,0,222,0,255,0,195, + 0,193,128,193,128,193,128,65,0,103,0,30,0,8,14,14, + 11,1,0,255,3,3,2,6,6,12,12,12,24,24,24,48, + 48,9,14,28,11,1,0,62,0,99,0,193,128,193,128,193, + 128,99,0,62,0,99,0,193,128,193,128,193,128,193,128,99, + 0,62,0,9,14,28,11,1,0,62,0,99,0,193,0,193, + 128,193,128,193,128,99,128,125,128,1,128,1,128,193,0,67, + 0,102,0,60,0,2,10,10,5,2,0,192,192,0,0,0, + 0,0,0,192,192,3,12,12,5,1,254,96,96,0,0,0, + 0,0,96,96,64,192,192,12,10,20,19,4,1,0,48,0, + 224,7,0,28,0,224,0,192,0,56,0,14,0,1,192,0, + 48,11,5,10,19,4,4,255,224,0,0,0,0,0,0,255, + 224,12,10,20,19,4,1,128,0,112,0,28,0,3,128,0, + 96,0,112,1,192,14,0,112,0,192,0,8,14,14,9,0, + 0,60,126,195,3,3,2,6,12,24,24,24,0,0,24,17, + 18,54,19,1,252,7,240,0,28,60,0,48,6,0,96,3, + 0,99,243,0,198,113,0,196,49,128,204,49,128,204,49,128, + 204,49,128,204,49,128,196,51,0,70,95,0,99,158,0,96, + 0,0,48,0,0,30,16,0,7,240,0,14,14,28,14,0, + 0,3,0,7,128,7,128,4,192,12,192,12,192,24,96,24, + 96,31,240,63,240,48,24,96,24,96,24,192,12,10,14,28, + 13,2,0,255,0,193,128,192,192,192,192,192,192,193,128,254, + 0,195,128,192,192,192,192,192,192,192,192,195,128,255,0,11, + 14,28,13,1,0,31,128,57,192,96,96,64,96,192,0,192, + 0,192,0,192,0,192,0,192,0,64,96,96,96,49,192,31, + 0,11,14,28,14,2,0,254,0,195,128,192,192,192,192,192, + 96,192,96,192,96,192,96,192,96,192,96,192,192,192,192,195, + 128,254,0,9,14,28,12,2,0,255,128,192,0,192,0,192, + 0,192,0,192,0,255,128,192,0,192,0,192,0,192,0,192, + 0,192,0,255,128,8,14,14,11,2,0,255,192,192,192,192, + 192,255,192,192,192,192,192,192,192,12,14,28,14,1,0,15, + 128,56,224,96,48,64,0,192,0,192,0,193,240,192,48,192, + 48,192,48,96,48,96,48,56,112,15,224,10,14,28,14,2, + 0,192,192,192,192,192,192,192,192,192,192,192,192,255,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,2,14,14, + 5,2,0,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,8,14,14,11,1,0,3,3,3,3,3,3,3,3,3, + 3,195,195,102,60,10,14,28,13,2,0,193,128,195,0,198, + 0,204,0,216,0,240,0,240,0,216,0,220,0,206,0,199, + 0,195,0,193,128,192,192,8,14,14,11,2,0,192,192,192, + 192,192,192,192,192,192,192,192,192,255,255,14,14,28,18,2, + 0,224,28,224,28,240,60,240,60,216,108,216,108,216,108,204, + 204,204,204,196,140,199,140,199,140,195,12,195,12,11,14,28, + 14,2,0,224,96,224,96,240,96,248,96,216,96,220,96,204, + 96,198,96,198,96,195,96,195,96,193,224,193,224,192,224,12, + 14,28,14,1,0,31,128,57,192,96,96,64,32,192,48,192, + 48,192,48,192,48,192,48,192,48,64,32,96,96,57,192,15, + 0,9,14,28,12,2,0,254,0,195,0,193,128,193,128,193, + 128,193,128,195,0,254,0,192,0,192,0,192,0,192,0,192, + 0,192,0,14,14,28,15,1,0,31,128,57,192,96,96,64, + 32,192,48,192,48,192,48,192,48,192,48,192,48,64,32,96, + 96,57,192,15,252,9,14,28,12,2,0,254,0,195,0,193, + 128,193,128,193,128,195,0,254,0,195,0,195,0,193,0,193, + 128,193,128,193,128,193,128,10,14,28,12,1,0,63,0,97, + 128,192,192,192,0,192,0,240,0,127,0,31,128,1,192,0, + 192,192,192,192,192,97,128,62,0,11,14,28,13,1,0,255, + 224,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,11,14,28,15,2, + 0,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,96,192,113,192,31,0,12,14,28, + 12,0,0,224,48,96,112,96,96,48,96,48,96,48,192,24, + 192,24,192,25,128,13,128,13,0,15,0,7,0,6,0,18, + 14,42,18,0,0,192,224,192,96,224,192,97,225,128,97,161, + 128,33,177,128,49,49,128,51,51,0,51,19,0,27,27,0, + 26,26,0,30,30,0,14,14,0,12,14,0,12,12,0,12, + 14,28,13,1,0,224,96,96,192,49,192,57,128,27,0,15, + 0,14,0,15,0,27,0,25,128,49,192,96,192,224,224,192, + 112,12,14,28,12,0,0,224,112,96,96,112,192,48,192,25, + 128,25,128,15,0,14,0,6,0,6,0,6,0,6,0,6, + 0,6,0,10,14,28,12,1,0,127,192,0,192,1,128,3, + 128,3,0,6,0,14,0,28,0,24,0,56,0,112,0,96, + 0,224,0,255,192,4,18,18,8,2,252,240,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,240,5,15,15, + 8,1,255,128,192,64,64,64,96,32,32,48,16,16,16,24, + 8,8,4,18,18,8,2,252,240,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,240,9,12,24,19,5,0, + 8,0,8,0,20,0,20,0,34,0,34,0,34,0,65,0, + 65,0,193,128,128,128,128,128,10,1,2,10,0,254,255,192, + 3,4,4,4,0,12,128,192,96,32,8,10,10,10,1,0, + 62,103,195,3,63,99,195,195,231,123,9,14,28,11,1,0, + 192,0,192,0,192,0,192,0,222,0,227,0,193,128,193,128, + 193,128,193,128,193,128,193,0,227,0,222,0,8,10,10,10, + 1,0,62,103,195,192,192,192,192,195,103,60,9,14,28,11, + 1,0,1,128,1,128,1,128,1,128,61,128,103,128,195,128, + 193,128,193,128,193,128,193,128,65,128,99,128,29,128,9,10, + 20,11,1,0,62,0,99,0,193,0,193,128,255,128,192,0, + 192,0,67,0,103,0,62,0,6,14,14,8,1,0,28,48, + 48,48,252,48,48,48,48,48,48,48,48,48,9,14,28,11, + 1,252,61,128,99,128,193,128,193,128,193,128,193,128,193,128, + 193,128,99,128,61,128,1,128,65,128,115,0,62,0,8,14, + 14,10,1,0,192,192,192,192,222,231,195,195,195,195,195,195, + 195,195,2,14,14,4,1,0,192,0,0,0,192,192,192,192, + 192,192,192,192,192,192,3,18,18,5,1,252,96,0,0,0, + 96,96,96,96,96,96,96,96,96,96,96,96,96,192,7,14, + 14,9,1,0,192,192,192,192,198,204,216,240,240,248,216,204, + 198,198,2,14,14,4,1,0,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,14,10,20,17,1,0,222,120,231,156, + 195,12,195,12,195,12,195,12,195,12,195,12,195,12,195,12, + 8,10,10,10,1,0,222,231,195,195,195,195,195,195,195,195, + 9,10,20,11,1,0,62,0,99,0,193,128,193,128,193,128, + 193,128,193,128,193,128,99,0,62,0,9,14,28,11,1,252, + 222,0,227,0,193,128,193,128,193,128,193,128,193,128,193,128, + 227,0,222,0,192,0,192,0,192,0,192,0,9,14,28,11, + 1,252,61,128,99,128,193,128,193,128,193,128,193,128,193,128, + 193,128,99,128,61,128,1,128,1,128,1,128,1,128,5,10, + 10,7,1,0,248,224,192,192,192,192,192,192,192,192,8,10, + 10,10,1,0,124,231,195,192,124,30,3,195,230,124,6,13, + 13,8,1,0,16,48,48,252,48,48,48,48,48,48,48,48, + 28,8,10,10,10,1,0,195,195,195,195,195,195,195,195,231, + 123,10,10,20,10,0,0,192,192,96,128,97,128,49,128,51, + 0,51,0,26,0,30,0,14,0,12,0,15,10,20,15,0, + 0,195,134,99,134,99,196,98,204,38,76,54,72,52,120,28, + 120,28,48,24,48,9,10,20,10,1,0,195,0,99,0,118, + 0,60,0,24,0,28,0,60,0,102,0,195,0,195,128,10, + 14,28,10,0,252,192,192,97,128,97,128,49,128,51,0,19, + 0,26,0,30,0,14,0,12,0,12,0,12,0,24,0,24, + 0,7,10,10,9,1,0,254,6,12,28,24,48,96,96,192, + 254,6,19,19,10,2,251,12,24,16,48,48,48,48,48,96, + 224,224,48,48,48,48,16,16,24,28,1,21,21,7,3,251, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,6,19,19,10,2,251,224,112,48,48,48, + 48,48,16,24,12,28,16,48,48,48,48,48,48,224,10,2, + 4,10,0,4,120,192,207,128,255}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--23-230-72-72-P-109-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=22 h=25 x= 6 y=15 dx=24 dy= 0 ascent=24 len=66 + Font Bounding box w=31 h=30 x=-2 y=-6 + Calculated Min Values x=-1 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =24 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur17[6799] U8G_SECTION(".progmem.u8g_font_fur17") = { + 0,31,30,254,250,17,4,5,8,170,32,255,251,24,250,17, + 251,0,0,0,7,0,0,2,17,17,8,3,0,192,192,192, + 192,192,192,192,192,192,192,192,192,192,0,0,192,192,7,7, + 7,10,2,10,206,206,198,198,196,196,196,15,17,34,17,1, + 0,1,24,3,24,3,24,3,48,6,48,63,254,6,32,4, + 96,12,96,12,64,255,248,24,192,24,128,17,128,49,128,49, + 128,49,0,11,21,42,13,1,254,4,0,4,0,63,0,127, + 128,196,192,196,192,196,0,196,0,244,0,127,0,63,192,5, + 224,4,224,4,96,196,96,196,96,228,96,127,192,63,128,4, + 0,4,0,19,17,51,21,1,0,60,2,0,126,4,0,227, + 12,0,195,8,0,195,24,0,195,16,0,195,48,0,102,96, + 0,62,71,128,0,207,192,0,152,96,1,152,96,1,24,96, + 2,24,96,6,24,96,4,15,192,12,7,128,15,17,34,17, + 1,0,15,0,63,128,48,192,48,192,49,192,59,128,31,0, + 28,24,118,24,103,24,227,152,193,216,192,240,224,112,96,120, + 123,252,31,142,2,7,7,8,3,10,192,192,192,192,192,192, + 64,4,20,20,8,2,253,48,48,96,96,96,224,192,192,192, + 192,192,192,192,192,224,96,96,96,48,48,4,20,20,8,2, + 253,192,64,96,96,96,48,48,48,48,48,48,48,48,48,48, + 96,96,96,64,192,9,9,18,15,3,8,34,0,54,0,22, + 0,28,0,255,128,156,128,20,0,54,0,34,0,14,14,28, + 24,5,0,2,0,2,0,2,0,2,0,2,0,2,0,255, + 252,2,0,2,0,2,0,2,0,2,0,2,0,2,0,4, + 6,6,6,1,253,112,112,96,96,192,192,6,1,1,8,1, + 5,252,2,3,3,6,2,0,192,192,192,7,18,18,9,1, + 255,6,6,4,12,12,8,8,24,24,16,48,48,32,32,96, + 96,64,192,10,17,34,13,1,0,30,0,63,128,97,128,96, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,97,192,97,128,63,128,30,0,5,17,17,13,3, + 0,56,120,248,216,24,24,24,24,24,24,24,24,24,24,24, + 24,24,10,17,34,13,1,0,30,0,127,128,97,128,224,192, + 224,192,0,192,1,192,3,128,3,128,7,0,14,0,28,0, + 56,0,112,0,96,0,224,0,255,192,10,17,34,13,1,0, + 31,0,127,128,96,192,224,192,0,192,0,192,3,128,14,0, + 7,128,1,192,0,192,0,192,192,192,224,192,97,192,127,128, + 30,0,11,17,34,13,1,0,3,128,3,128,7,128,13,128, + 13,128,25,128,57,128,49,128,97,128,97,128,193,128,255,224, + 255,224,1,128,1,128,1,128,1,128,10,17,34,13,1,0, + 127,128,96,0,96,0,96,0,96,0,111,0,127,128,97,128, + 64,192,0,192,0,192,0,192,0,192,192,192,225,128,127,0, + 30,0,11,17,34,13,1,0,31,0,59,128,96,192,224,192, + 192,0,192,0,207,0,223,192,241,192,224,224,192,96,192,96, + 192,96,192,96,96,192,59,192,31,0,10,17,34,13,1,0, + 255,192,0,192,0,192,1,128,1,128,3,128,3,0,3,0, + 7,0,6,0,6,0,14,0,12,0,12,0,28,0,24,0, + 56,0,11,17,34,13,1,0,31,0,59,128,96,192,96,192, + 96,192,96,192,49,128,31,0,59,128,96,192,192,96,192,96, + 192,96,192,96,96,224,123,192,31,0,11,17,34,13,1,0, + 31,0,127,192,96,192,192,224,192,96,192,96,192,224,224,224, + 113,224,63,96,0,96,0,96,0,224,96,192,97,192,127,128, + 31,0,2,12,12,6,2,0,192,192,192,0,0,0,0,0, + 0,192,192,192,3,15,15,6,1,253,96,96,96,0,0,0, + 0,0,0,96,96,96,192,192,192,14,12,24,24,5,1,0, + 12,0,60,1,224,7,0,56,0,224,0,224,0,60,0,7, + 0,1,224,0,60,0,12,14,5,10,24,5,4,255,252,0, + 0,0,0,0,0,255,252,14,12,24,24,5,1,192,0,240, + 0,30,0,3,128,0,112,0,28,0,28,0,240,3,128,30, + 0,240,0,192,0,9,17,34,11,1,0,60,0,255,0,195, + 128,129,128,1,128,1,128,3,0,7,0,14,0,28,0,24, + 0,24,0,24,0,0,0,0,0,24,0,24,0,20,22,66, + 23,1,251,1,252,0,7,255,0,30,7,128,56,1,192,48, + 0,224,97,236,96,99,252,112,227,28,48,198,12,48,198,12, + 48,198,12,48,198,12,48,198,12,48,198,12,48,227,28,96, + 99,31,224,97,231,192,48,0,0,56,0,0,28,0,0,7, + 220,0,1,252,0,16,17,34,17,1,0,3,128,3,128,7, + 192,6,192,14,224,12,96,12,112,24,48,24,48,56,56,63, + 248,63,252,96,12,96,12,224,6,192,6,192,7,12,17,34, + 16,2,0,255,128,195,224,192,112,192,48,192,48,192,48,192, + 112,192,224,255,128,193,224,192,112,192,48,192,48,192,48,192, + 112,195,224,255,128,13,17,34,15,1,0,15,192,63,240,48, + 56,96,24,96,24,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,96,0,96,24,48,48,63,240,15,192,13,17,34, + 17,2,0,255,0,199,192,192,96,192,48,192,48,192,24,192, + 24,192,24,192,24,192,24,192,24,192,24,192,48,192,48,192, + 224,199,192,255,0,11,17,34,14,2,0,255,224,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,255,192,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,255,224,10,17,34, + 13,2,0,255,192,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,255,128,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,14,17,34,17,1,0,7,224,31,248,48, + 28,96,12,96,0,192,0,192,0,192,0,192,252,192,12,192, + 12,224,12,96,12,112,12,56,12,31,252,7,248,12,17,34, + 16,2,0,192,48,192,48,192,48,192,48,192,48,192,48,192, + 48,192,48,255,240,192,48,192,48,192,48,192,48,192,48,192, + 48,192,48,192,48,2,17,17,6,2,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,10,17,34,13, + 1,0,0,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,192,192,225,128, + 127,128,62,0,12,17,34,15,2,0,192,96,192,192,193,128, + 195,0,199,0,206,0,220,0,248,0,220,0,222,0,206,0, + 199,0,195,128,193,192,192,224,192,224,192,112,10,17,34,12, + 2,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 255,192,255,192,17,17,51,21,2,0,240,7,128,240,7,128, + 240,7,128,216,13,128,216,13,128,220,29,128,204,25,128,204, + 25,128,206,57,128,198,49,128,198,49,128,195,97,128,195,97, + 128,195,97,128,193,193,128,193,193,128,193,193,128,13,17,34, + 17,2,0,224,24,240,24,248,24,248,24,220,24,220,24,206, + 24,198,24,199,24,195,24,195,152,193,216,193,216,192,248,192, + 248,192,120,192,56,15,17,34,17,1,0,7,192,30,240,48, + 24,96,12,96,12,192,6,192,6,192,6,192,6,192,6,192, + 6,224,14,96,12,96,12,48,24,30,240,7,192,11,17,34, + 14,2,0,255,0,199,192,192,224,192,96,192,96,192,96,192, + 224,193,192,255,128,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,16,17,34,18,1,0,7,192,30,240,48, + 24,96,12,96,12,192,6,192,6,192,6,192,6,192,6,192, + 6,224,14,96,12,96,12,48,24,30,248,7,255,11,17,34, + 15,2,0,255,0,199,192,192,224,192,96,192,96,192,96,192, + 96,193,192,255,0,193,192,192,192,192,192,192,224,192,96,192, + 96,192,96,192,96,12,17,34,15,1,0,31,128,63,224,96, + 112,192,48,192,0,224,0,240,0,127,128,63,224,3,240,0, + 112,0,48,192,48,192,48,96,112,123,224,31,128,13,17,34, + 15,1,0,255,248,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,13,17,34,17,2,0,192,24,192,24,192, + 24,192,24,192,24,192,24,192,24,192,24,192,24,192,24,192, + 24,192,24,192,24,96,56,96,48,61,224,31,192,14,17,34, + 15,1,0,192,28,192,24,224,56,96,48,96,48,112,112,48, + 96,48,96,56,224,24,192,24,192,29,192,13,128,13,128,15, + 128,7,0,7,0,22,17,51,22,0,0,224,56,28,96,120, + 28,96,120,24,112,120,24,48,108,56,48,204,48,48,204,48, + 24,206,48,24,198,112,25,134,96,29,134,96,13,131,96,13, + 131,192,15,3,192,7,3,192,7,1,192,6,1,128,14,17, + 34,16,1,0,112,24,112,56,56,48,28,96,28,224,14,192, + 7,128,7,128,7,128,7,192,13,192,28,224,24,112,48,112, + 112,56,96,28,224,28,14,17,34,15,0,0,224,28,112,24, + 112,56,56,48,24,112,28,96,12,192,14,192,7,128,3,128, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,12,17, + 34,14,1,0,127,240,0,48,0,112,0,224,1,192,1,192, + 3,128,7,0,7,0,14,0,28,0,60,0,56,0,112,0, + 240,0,224,0,255,240,4,22,22,9,2,251,240,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,240,7,18,18,9,1,255,192,192,64,96,96,32,48,48, + 16,16,24,24,8,12,12,4,4,6,4,22,22,10,3,251, + 240,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,240,11,14,28,23,6,0,4,0,14,0, + 10,0,27,0,17,0,17,0,49,128,32,128,32,128,96,192, + 64,64,192,96,128,32,128,32,12,1,2,12,0,253,255,240, + 4,4,4,5,0,14,192,96,96,48,10,12,24,13,1,0, + 31,0,123,128,96,192,96,192,0,192,63,192,120,192,224,192, + 192,192,193,192,119,192,60,192,11,17,34,14,2,0,192,0, + 192,0,192,0,192,0,192,0,207,0,223,192,224,192,224,224, + 192,96,192,96,192,96,192,96,224,224,224,192,251,128,207,0, + 10,12,24,12,1,0,31,0,127,128,97,192,192,192,192,0, + 192,0,192,0,192,0,192,192,97,192,127,128,31,0,11,17, + 34,14,1,0,0,96,0,96,0,96,0,96,0,96,30,96, + 127,224,97,224,224,224,192,96,192,96,192,96,192,96,224,224, + 96,224,59,224,30,96,10,12,24,13,1,0,31,0,127,128, + 96,192,192,192,192,192,255,192,192,0,192,0,192,192,96,192, + 63,128,31,0,7,17,17,9,1,0,30,62,48,48,48,254, + 48,48,48,48,48,48,48,48,48,48,48,11,17,34,14,1, + 251,31,96,63,224,96,224,224,224,192,96,192,96,192,96,192, + 96,224,224,96,224,123,224,30,96,0,96,96,224,96,192,63, + 128,31,0,10,17,34,14,2,0,192,0,192,0,192,0,192, + 0,192,0,207,0,251,128,225,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,2,17,17,5,1, + 0,192,192,0,0,0,192,192,192,192,192,192,192,192,192,192, + 192,192,3,22,22,7,2,251,96,96,0,0,0,96,96,96, + 96,96,96,96,96,96,96,96,96,96,96,96,224,192,9,17, + 34,12,2,0,192,0,192,0,192,0,192,0,192,0,195,128, + 199,0,206,0,220,0,216,0,248,0,216,0,204,0,206,0, + 199,0,195,0,195,128,2,17,17,6,2,0,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,18,12,36, + 21,2,0,207,31,0,255,191,128,225,225,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,10,12,24,14,2,0,223,0,255, + 128,225,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,11,12,24,13,1,0,31,0,63,192,96, + 192,224,224,192,96,192,96,192,96,192,96,224,224,96,192,63, + 192,31,0,11,17,34,14,2,251,207,0,251,192,224,192,224, + 224,192,96,192,96,192,96,192,96,224,224,224,192,251,192,207, + 0,192,0,192,0,192,0,192,0,192,0,11,17,34,14,1, + 251,30,96,123,224,96,224,224,224,192,96,192,96,192,96,192, + 96,224,224,96,224,123,224,30,96,0,96,0,96,0,96,0, + 96,0,96,7,12,12,9,2,0,222,252,224,192,192,192,192, + 192,192,192,192,192,9,12,24,11,1,0,62,0,127,128,193, + 128,192,0,224,0,126,0,31,128,3,128,193,128,193,128,119, + 0,62,0,7,15,15,9,1,0,48,48,48,254,48,48,48, + 48,48,48,48,48,48,58,30,10,12,24,14,2,0,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 225,192,127,192,60,192,11,12,24,12,1,0,192,96,192,192, + 224,192,97,192,97,128,49,128,51,0,59,0,27,0,30,0, + 30,0,12,0,18,12,36,19,0,0,224,224,192,96,224,192, + 97,161,192,113,177,128,49,177,128,51,49,128,51,27,0,27, + 27,0,30,27,0,30,14,0,14,14,0,12,14,0,11,12, + 24,13,1,0,224,192,113,192,49,128,59,0,31,0,14,0, + 30,0,31,0,51,128,113,128,97,192,192,224,11,17,34,12, + 1,251,192,96,192,192,224,192,97,192,113,128,49,128,51,128, + 59,0,27,0,30,0,14,0,14,0,12,0,12,0,28,0, + 24,0,24,0,8,12,12,10,1,0,255,3,7,14,12,24, + 56,48,96,224,192,255,8,23,23,11,2,251,15,14,24,24, + 24,24,24,24,24,56,112,224,240,48,24,24,24,24,24,24, + 24,12,15,1,25,25,8,4,250,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,8,23,23,11,2,251,224,112,56,24,24,24,24,24, + 24,28,14,7,14,28,24,24,24,24,24,24,24,48,240,12, + 2,4,12,0,5,62,112,231,224,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,0,0,0,7,0,0, + 2,17,17,8,3,251,192,192,0,0,0,192,192,192,192,192, + 192,192,192,192,192,192,192,10,18,36,14,2,253,1,0,1, + 0,1,0,31,0,127,128,98,192,198,192,196,0,196,0,204, + 0,200,0,200,192,121,192,127,128,31,0,32,0,32,0,32, + 0,11,17,34,13,1,0,15,128,29,192,48,96,48,0,48, + 0,48,0,254,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,255,224,11,14,28,13,1,3,0, + 32,128,32,95,64,123,128,96,128,64,64,64,64,64,64,64, + 64,96,128,113,128,95,64,128,32,0,32,12,17,34,14,1, + 0,192,48,96,96,96,96,48,224,48,192,249,240,25,128,15, + 128,15,0,255,240,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,1,22,22,8,4,251,128,128,128,128,128,128,128, + 128,128,0,0,0,0,128,128,128,128,128,128,128,128,128,8, + 21,21,10,1,252,62,126,192,192,192,112,120,62,119,227,195, + 199,238,124,30,7,3,3,3,142,252,7,2,2,7,0,15, + 198,198,17,17,51,19,1,0,3,224,0,15,120,0,56,14, + 0,35,242,0,71,57,0,78,25,0,140,0,128,140,0,128, + 140,0,128,140,0,128,140,24,128,70,57,0,67,241,0,32, + 2,0,48,6,0,12,24,0,3,224,0,9,11,22,9,0, + 6,62,0,127,0,97,0,1,0,63,0,113,0,65,0,67, + 0,61,0,0,0,255,128,9,9,18,13,2,1,49,128,51, + 0,99,0,230,0,204,0,230,0,99,0,51,0,17,128,12, + 5,10,14,1,5,255,240,0,16,0,16,0,16,0,16,255, + 17,17,51,19,1,0,3,224,0,15,120,0,56,14,0,39, + 242,0,70,57,0,70,25,0,134,24,128,135,224,128,134,48, + 128,134,16,128,134,24,128,70,25,0,70,25,0,32,2,0, + 56,14,0,15,120,0,3,224,0,7,1,1,7,0,15,254, + 5,6,6,7,1,11,112,216,136,136,216,112,14,14,28,24, + 5,0,2,0,2,0,2,0,2,0,255,252,2,0,2,0, + 2,0,2,0,2,0,0,0,0,0,0,0,255,252,7,9, + 9,9,1,8,60,126,198,6,12,24,48,224,254,7,9,9, + 9,1,8,60,126,198,14,24,14,6,206,124,3,4,4,5, + 2,14,96,96,192,128,255,10,21,42,13,1,252,31,192,60, + 128,124,128,252,128,252,128,252,128,124,128,124,128,60,128,4, + 128,4,128,4,128,4,128,4,128,4,128,4,128,4,128,4, + 128,4,128,4,128,4,128,2,3,3,6,2,7,192,192,192, + 6,5,5,6,1,250,64,120,12,12,252,3,9,9,7,2, + 8,96,224,32,32,32,32,32,32,32,8,11,11,10,1,6, + 60,126,195,193,193,193,195,98,124,0,255,9,9,18,13,2, + 1,204,0,102,0,99,0,51,0,57,128,51,0,99,0,102, + 0,204,0,15,17,34,18,2,0,96,48,224,32,32,96,32, + 64,32,192,32,128,33,0,35,0,34,24,6,24,4,40,12, + 72,8,200,16,254,48,8,32,8,96,8,16,17,34,19,2, + 0,96,16,224,48,32,32,32,96,32,192,32,128,33,128,33, + 0,35,62,6,119,4,99,12,3,8,6,24,28,16,48,32, + 96,96,127,17,17,51,19,1,0,124,4,0,254,12,0,6, + 8,0,24,16,0,30,48,0,6,32,0,198,96,0,206,64, + 0,124,198,0,1,134,0,1,10,0,3,26,0,2,50,0, + 6,63,128,4,2,0,8,2,0,24,2,0,10,17,34,12, + 1,251,6,0,6,0,0,0,0,0,6,0,6,0,6,0, + 14,0,28,0,112,0,96,0,192,0,192,0,192,192,241,192, + 127,128,31,0,16,23,46,17,1,0,14,0,6,0,3,0, + 1,0,0,0,0,0,3,128,3,128,7,192,6,192,14,224, + 12,96,12,112,24,48,24,48,56,56,63,248,63,252,96,12, + 96,12,224,6,192,6,192,7,16,23,46,17,1,0,0,96, + 0,192,0,128,1,0,0,0,0,0,3,128,3,128,7,192, + 6,192,14,224,12,96,12,112,24,48,24,48,56,56,63,248, + 63,252,96,12,96,12,224,6,192,6,192,7,16,23,46,17, + 1,0,3,128,3,192,6,192,4,96,0,0,0,0,3,128, + 3,128,7,192,6,192,14,224,12,96,12,112,24,48,24,48, + 56,56,63,248,63,252,96,12,96,12,224,6,192,6,192,7, + 16,22,44,17,1,0,7,96,13,192,0,0,0,0,0,0, + 3,128,3,128,7,192,6,192,14,224,12,96,12,112,24,48, + 24,48,56,56,63,248,63,252,96,12,96,12,224,6,192,6, + 192,7,16,22,44,18,1,0,6,48,6,48,0,0,0,0, + 0,0,1,192,3,192,3,224,7,96,6,96,6,112,12,48, + 12,56,28,24,24,28,63,252,63,252,48,6,96,6,96,7, + 224,3,192,3,16,24,48,17,1,0,3,128,6,192,4,64, + 4,64,3,128,0,0,0,0,3,128,3,128,7,192,6,192, + 6,224,12,96,12,112,28,48,24,48,24,24,63,248,63,252, + 96,12,96,12,224,6,192,6,192,7,21,17,51,23,1,0, + 0,255,248,0,240,0,1,240,0,1,176,0,3,176,0,3, + 48,0,7,48,0,6,48,0,14,63,248,12,48,0,28,48, + 0,31,240,0,56,48,0,48,48,0,112,48,0,96,48,0, + 192,63,248,13,22,44,15,1,251,15,192,63,240,48,56,96, + 24,96,24,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,96,0,96,24,112,48,63,240,15,192,2,0,3,192,0, + 224,0,96,7,224,11,23,46,14,2,0,48,0,24,0,12, + 0,4,0,0,0,0,0,255,224,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,255,192,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,255,224,11,23,46,14,2,0,3, + 0,6,0,6,0,12,0,0,0,0,0,255,224,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,255,192,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,255,224,11,23,46, + 14,2,0,30,0,30,0,51,0,33,0,0,0,0,0,255, + 224,192,0,192,0,192,0,192,0,192,0,192,0,192,0,255, + 192,192,0,192,0,192,0,192,0,192,0,192,0,192,0,255, + 224,11,22,44,14,2,0,51,0,51,0,0,0,0,0,0, + 0,255,224,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,255,192,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,255,224,4,23,23,6,0,0,192,96,48,16,0,0,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 4,23,23,6,2,0,48,96,64,192,0,0,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,6,23,23, + 6,0,0,56,120,76,196,0,0,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,7,22,22,7,0,0, + 198,198,0,0,0,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,15,17,34,17,0,0,63,192,49,240, + 48,56,48,12,48,12,48,6,48,6,48,6,255,6,48,6, + 48,6,48,6,48,12,48,28,48,56,49,240,63,192,13,22, + 44,17,2,0,14,192,31,128,0,0,0,0,0,0,224,24, + 240,24,248,24,248,24,220,24,220,24,206,24,198,24,199,24, + 195,24,195,152,193,216,193,216,192,248,192,248,192,120,192,56, + 15,24,48,17,1,0,14,0,6,0,3,0,1,0,1,128, + 0,0,0,0,7,192,30,240,48,24,96,12,96,12,192,6, + 192,6,192,6,192,6,192,6,192,6,224,14,96,12,96,12, + 48,24,30,240,7,192,15,24,48,17,1,0,0,224,0,192, + 1,128,1,0,3,0,0,0,0,0,7,192,30,240,48,24, + 96,12,96,12,192,6,192,6,192,6,192,6,192,6,192,6, + 224,14,96,12,96,12,48,24,30,240,7,192,15,24,48,17, + 1,0,3,128,3,128,6,192,4,64,12,32,0,0,0,0, + 7,192,30,240,48,24,96,12,96,12,192,6,192,6,192,6, + 192,6,192,6,192,6,224,14,96,12,96,12,48,24,30,240, + 7,192,15,22,44,17,1,0,7,96,13,192,0,0,0,0, + 0,0,7,192,30,240,48,24,96,12,96,12,192,6,192,6, + 192,6,192,6,192,6,192,6,224,14,96,12,112,28,56,56, + 31,240,7,192,15,22,44,17,1,0,6,96,6,96,0,0, + 0,0,0,0,7,192,30,240,48,24,96,12,96,12,192,6, + 192,6,192,6,192,6,192,6,192,6,224,14,96,12,96,12, + 48,24,30,240,7,192,13,12,24,23,5,1,192,24,96,48, + 48,96,24,192,13,128,7,0,7,0,13,128,24,192,48,96, + 96,48,192,24,15,21,42,17,1,254,0,4,0,14,7,236, + 30,248,48,60,96,60,96,110,192,230,192,198,193,198,195,134, + 195,6,199,6,238,14,108,12,124,12,120,24,62,240,111,192, + 224,0,64,0,13,24,48,17,2,0,28,0,12,0,6,0, + 2,0,1,0,0,0,0,0,192,24,192,24,192,24,192,24, + 192,24,192,24,192,24,192,24,192,24,192,24,192,24,192,24, + 224,24,96,56,112,112,63,224,31,192,13,24,48,17,2,0, + 1,192,1,128,3,0,2,0,6,0,0,0,0,0,192,24, + 192,24,192,24,192,24,192,24,192,24,192,24,192,24,192,24, + 192,24,192,24,192,24,224,24,96,56,112,112,63,224,31,192, + 13,24,48,17,2,0,7,0,7,0,13,128,8,128,24,64, + 0,0,0,0,192,24,192,24,192,24,192,24,192,24,192,24, + 192,24,192,24,192,24,192,24,192,24,192,24,224,24,96,56, + 112,112,63,224,31,192,13,22,44,17,2,0,12,192,12,192, + 0,0,0,0,0,0,192,24,192,24,192,24,192,24,192,24, + 192,24,192,24,192,24,192,24,192,24,192,24,192,24,192,24, + 96,56,96,48,61,224,31,192,14,23,46,15,0,0,0,192, + 1,128,1,128,3,0,0,0,0,0,224,28,112,24,112,56, + 56,48,24,112,28,96,12,192,14,192,7,128,3,128,3,0, + 3,0,3,0,3,0,3,0,3,0,3,0,11,17,34,14, + 2,0,192,0,192,0,192,0,192,0,255,128,193,192,192,224, + 192,96,192,96,192,96,193,192,255,128,192,0,192,0,192,0, + 192,0,192,0,12,17,34,13,1,0,31,0,127,128,224,192, + 192,192,193,192,195,128,199,0,198,0,198,0,195,128,193,224, + 192,112,192,48,192,48,204,48,207,96,195,192,10,18,36,13, + 1,0,24,0,12,0,4,0,6,0,0,0,0,0,31,0, + 123,128,96,192,96,192,0,192,63,192,120,192,224,192,192,192, + 193,192,119,192,60,192,10,19,38,13,1,0,3,0,6,0, + 6,0,12,0,8,0,0,0,0,0,31,0,123,128,96,192, + 96,192,0,192,63,192,120,192,224,192,192,192,193,192,119,192, + 60,192,10,19,38,13,1,0,14,0,14,0,27,0,51,0, + 33,128,0,0,0,0,31,0,123,128,96,192,96,192,0,192, + 63,192,120,192,224,192,192,192,193,192,119,192,60,192,10,17, + 34,13,1,0,29,128,63,0,0,0,0,0,0,0,31,0, + 123,128,96,192,0,192,7,192,63,192,112,192,192,192,193,192, + 193,192,119,192,60,192,10,17,34,13,1,0,49,128,49,128, + 0,0,0,0,0,0,31,0,123,128,96,192,96,192,0,192, + 63,192,120,192,224,192,192,192,193,192,119,192,60,192,10,20, + 40,13,1,0,14,0,27,0,17,0,17,0,27,0,14,0, + 0,0,0,0,31,0,123,128,96,192,96,192,0,192,63,192, + 120,192,224,192,192,192,193,192,119,192,62,192,18,12,36,20, + 1,0,30,31,0,127,191,128,97,225,128,0,224,192,0,192, + 192,63,255,192,120,192,0,224,192,0,192,224,192,193,225,128, + 127,63,128,62,31,0,10,17,34,12,1,251,31,0,127,128, + 97,192,192,192,192,0,192,0,192,0,192,0,192,192,97,192, + 127,128,31,0,8,0,15,0,3,128,1,128,31,0,10,19, + 38,13,1,0,48,0,24,0,8,0,12,0,6,0,0,0, + 0,0,31,0,127,128,96,192,192,192,192,192,255,192,192,0, + 192,0,192,192,96,192,63,128,31,0,10,19,38,13,1,0, + 3,0,7,0,6,0,12,0,8,0,0,0,0,0,31,0, + 127,128,96,192,192,192,192,192,255,192,192,0,192,0,192,192, + 96,192,63,128,31,0,10,19,38,13,1,0,12,0,30,0, + 26,0,51,0,33,0,0,0,0,0,31,0,127,128,96,192, + 192,192,192,192,255,192,192,0,192,0,192,192,96,192,63,128, + 31,0,11,17,34,13,1,0,49,128,49,128,0,0,0,0, + 0,0,31,0,59,192,96,192,224,96,192,96,255,224,192,0, + 192,0,192,96,96,192,59,192,31,0,4,18,18,6,0,0, + 192,96,48,16,0,0,48,48,48,48,48,48,48,48,48,48, + 48,48,4,18,18,6,2,0,48,96,192,128,0,0,192,192, + 192,192,192,192,192,192,192,192,192,192,6,18,18,6,0,0, + 120,120,204,132,0,0,48,48,48,48,48,48,48,48,48,48, + 48,48,6,17,17,5,255,0,204,204,0,0,0,48,48,48, + 48,48,48,48,48,48,48,48,48,11,17,34,13,1,0,97, + 128,63,0,30,0,119,0,3,128,31,192,127,192,96,224,224, + 96,192,96,192,96,192,96,192,96,224,96,96,192,63,192,31, + 0,10,17,34,14,2,0,25,0,63,0,0,0,0,0,0, + 0,223,0,255,128,225,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,11,19,38,13,1,0,56, + 0,24,0,12,0,4,0,2,0,0,0,0,0,31,0,63, + 192,96,192,224,224,192,96,192,96,192,96,192,96,224,224,96, + 192,63,192,31,0,11,19,38,13,1,0,3,128,3,0,6, + 0,4,0,12,0,0,0,0,0,31,0,63,192,96,192,224, + 224,192,96,192,96,192,96,192,96,224,224,96,192,63,192,31, + 0,11,19,38,13,1,0,14,0,14,0,27,0,17,0,49, + 128,0,0,0,0,31,0,63,192,96,192,224,224,192,96,192, + 96,192,96,192,96,224,224,96,192,63,192,31,0,11,17,34, + 13,1,0,29,128,63,0,0,0,0,0,0,0,31,0,63, + 192,96,192,224,224,192,96,192,96,192,96,192,96,224,224,96, + 192,63,192,31,0,11,17,34,13,1,0,49,128,49,128,0, + 0,0,0,0,0,31,0,63,192,96,192,224,224,192,96,192, + 96,192,96,192,96,224,224,96,192,63,192,31,0,14,10,20, + 24,5,2,3,0,3,0,3,0,0,0,0,0,255,252,0, + 0,3,0,3,0,3,0,11,15,30,13,1,254,0,32,0, + 96,31,192,63,192,97,192,227,224,194,96,198,96,204,96,216, + 96,248,224,112,192,123,192,95,0,192,0,10,19,38,14,2, + 0,48,0,24,0,24,0,12,0,4,0,0,0,0,0,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,225,192,119,192,60,192,10,19,38,14,2,0,3,0,6, + 0,6,0,12,0,8,0,0,0,0,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,225,192,119, + 192,60,192,10,19,38,14,2,0,12,0,30,0,30,0,51, + 0,33,0,0,0,0,0,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,225,192,119,192,60,192,10, + 17,34,14,2,0,51,0,51,0,0,0,0,0,0,0,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,225,192,127,192,60,192,11,23,46,12,1,251,3,0,3, + 0,6,0,12,0,0,0,0,0,192,96,192,192,224,192,97, + 192,113,128,49,128,51,128,59,0,27,0,30,0,14,0,14, + 0,12,0,12,0,220,0,248,0,112,0,11,22,44,14,2, + 251,192,0,192,0,192,0,192,0,192,0,207,0,251,192,224, + 192,224,224,192,96,192,96,192,96,192,96,224,224,224,192,251, + 192,207,0,192,0,192,0,192,0,192,0,192,0,11,22,44, + 13,1,251,49,128,49,128,0,0,0,0,0,0,192,96,224, + 96,96,224,96,192,113,192,49,128,57,128,27,128,27,0,31, + 0,14,0,14,0,14,0,12,0,12,0,28,0,24,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--23-230-72-72-P-109-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 17 + Calculated Max Values w=14 h=18 x= 5 y= 8 dx=24 dy= 0 ascent=17 len=34 + Font Bounding box w=31 h=30 x=-2 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =17 descent= 0 + X Font ascent =17 descent= 0 + Max Font ascent =17 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur17n[510] U8G_SECTION(".progmem.u8g_font_fur17n") = { + 0,31,30,254,250,17,0,0,0,0,42,57,0,17,253,17, + 0,9,9,18,15,3,8,34,0,54,0,22,0,28,0,255, + 128,156,128,20,0,54,0,34,0,14,14,28,24,5,0,2, + 0,2,0,2,0,2,0,2,0,2,0,255,252,2,0,2, + 0,2,0,2,0,2,0,2,0,2,0,4,6,6,6,1, + 253,112,112,96,96,192,192,6,1,1,8,1,5,252,2,3, + 3,6,2,0,192,192,192,7,18,18,9,1,255,6,6,4, + 12,12,8,8,24,24,16,48,48,32,32,96,96,64,192,10, + 17,34,13,1,0,30,0,63,128,97,128,96,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,97, + 192,97,128,63,128,30,0,5,17,17,13,3,0,56,120,248, + 216,24,24,24,24,24,24,24,24,24,24,24,24,24,10,17, + 34,13,1,0,30,0,127,128,97,128,224,192,224,192,0,192, + 1,192,3,128,3,128,7,0,14,0,28,0,56,0,112,0, + 96,0,224,0,255,192,10,17,34,13,1,0,31,0,127,128, + 96,192,224,192,0,192,0,192,3,128,14,0,7,128,1,192, + 0,192,0,192,192,192,224,192,97,192,127,128,30,0,11,17, + 34,13,1,0,3,128,3,128,7,128,13,128,13,128,25,128, + 57,128,49,128,97,128,97,128,193,128,255,224,255,224,1,128, + 1,128,1,128,1,128,10,17,34,13,1,0,127,128,96,0, + 96,0,96,0,96,0,111,0,127,128,97,128,64,192,0,192, + 0,192,0,192,0,192,192,192,225,128,127,0,30,0,11,17, + 34,13,1,0,31,0,59,128,96,192,224,192,192,0,192,0, + 207,0,223,192,241,192,224,224,192,96,192,96,192,96,192,96, + 96,192,59,192,31,0,10,17,34,13,1,0,255,192,0,192, + 0,192,1,128,1,128,3,128,3,0,3,0,7,0,6,0, + 6,0,14,0,12,0,12,0,28,0,24,0,56,0,11,17, + 34,13,1,0,31,0,59,128,96,192,96,192,96,192,96,192, + 49,128,31,0,59,128,96,192,192,96,192,96,192,96,192,96, + 96,224,123,192,31,0,11,17,34,13,1,0,31,0,127,192, + 96,192,192,224,192,96,192,96,192,224,224,224,113,224,63,96, + 0,96,0,96,0,224,96,192,97,192,127,128,31,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--23-230-72-72-P-109-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=22 h=25 x= 6 y=14 dx=24 dy= 0 ascent=19 len=66 + Font Bounding box w=31 h=30 x=-2 y=-6 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =19 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur17r[3146] U8G_SECTION(".progmem.u8g_font_fur17r") = { + 0,31,30,254,250,17,4,5,8,170,32,127,251,19,250,17, + 251,0,0,0,7,0,0,2,17,17,8,3,0,192,192,192, + 192,192,192,192,192,192,192,192,192,192,0,0,192,192,7,7, + 7,10,2,10,206,206,198,198,196,196,196,15,17,34,17,1, + 0,1,24,3,24,3,24,3,48,6,48,63,254,6,32,4, + 96,12,96,12,64,255,248,24,192,24,128,17,128,49,128,49, + 128,49,0,11,21,42,13,1,254,4,0,4,0,63,0,127, + 128,196,192,196,192,196,0,196,0,244,0,127,0,63,192,5, + 224,4,224,4,96,196,96,196,96,228,96,127,192,63,128,4, + 0,4,0,19,17,51,21,1,0,60,2,0,126,4,0,227, + 12,0,195,8,0,195,24,0,195,16,0,195,48,0,102,96, + 0,62,71,128,0,207,192,0,152,96,1,152,96,1,24,96, + 2,24,96,6,24,96,4,15,192,12,7,128,15,17,34,17, + 1,0,15,0,63,128,48,192,48,192,49,192,59,128,31,0, + 28,24,118,24,103,24,227,152,193,216,192,240,224,112,96,120, + 123,252,31,142,2,7,7,8,3,10,192,192,192,192,192,192, + 64,4,20,20,8,2,253,48,48,96,96,96,224,192,192,192, + 192,192,192,192,192,224,96,96,96,48,48,4,20,20,8,2, + 253,192,64,96,96,96,48,48,48,48,48,48,48,48,48,48, + 96,96,96,64,192,9,9,18,15,3,8,34,0,54,0,22, + 0,28,0,255,128,156,128,20,0,54,0,34,0,14,14,28, + 24,5,0,2,0,2,0,2,0,2,0,2,0,2,0,255, + 252,2,0,2,0,2,0,2,0,2,0,2,0,2,0,4, + 6,6,6,1,253,112,112,96,96,192,192,6,1,1,8,1, + 5,252,2,3,3,6,2,0,192,192,192,7,18,18,9,1, + 255,6,6,4,12,12,8,8,24,24,16,48,48,32,32,96, + 96,64,192,10,17,34,13,1,0,30,0,63,128,97,128,96, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,97,192,97,128,63,128,30,0,5,17,17,13,3, + 0,56,120,248,216,24,24,24,24,24,24,24,24,24,24,24, + 24,24,10,17,34,13,1,0,30,0,127,128,97,128,224,192, + 224,192,0,192,1,192,3,128,3,128,7,0,14,0,28,0, + 56,0,112,0,96,0,224,0,255,192,10,17,34,13,1,0, + 31,0,127,128,96,192,224,192,0,192,0,192,3,128,14,0, + 7,128,1,192,0,192,0,192,192,192,224,192,97,192,127,128, + 30,0,11,17,34,13,1,0,3,128,3,128,7,128,13,128, + 13,128,25,128,57,128,49,128,97,128,97,128,193,128,255,224, + 255,224,1,128,1,128,1,128,1,128,10,17,34,13,1,0, + 127,128,96,0,96,0,96,0,96,0,111,0,127,128,97,128, + 64,192,0,192,0,192,0,192,0,192,192,192,225,128,127,0, + 30,0,11,17,34,13,1,0,31,0,59,128,96,192,224,192, + 192,0,192,0,207,0,223,192,241,192,224,224,192,96,192,96, + 192,96,192,96,96,192,59,192,31,0,10,17,34,13,1,0, + 255,192,0,192,0,192,1,128,1,128,3,128,3,0,3,0, + 7,0,6,0,6,0,14,0,12,0,12,0,28,0,24,0, + 56,0,11,17,34,13,1,0,31,0,59,128,96,192,96,192, + 96,192,96,192,49,128,31,0,59,128,96,192,192,96,192,96, + 192,96,192,96,96,224,123,192,31,0,11,17,34,13,1,0, + 31,0,127,192,96,192,192,224,192,96,192,96,192,224,224,224, + 113,224,63,96,0,96,0,96,0,224,96,192,97,192,127,128, + 31,0,2,12,12,6,2,0,192,192,192,0,0,0,0,0, + 0,192,192,192,3,15,15,6,1,253,96,96,96,0,0,0, + 0,0,0,96,96,96,192,192,192,14,12,24,24,5,1,0, + 12,0,60,1,224,7,0,56,0,224,0,224,0,60,0,7, + 0,1,224,0,60,0,12,14,5,10,24,5,4,255,252,0, + 0,0,0,0,0,255,252,14,12,24,24,5,1,192,0,240, + 0,30,0,3,128,0,112,0,28,0,28,0,240,3,128,30, + 0,240,0,192,0,9,17,34,11,1,0,60,0,255,0,195, + 128,129,128,1,128,1,128,3,0,7,0,14,0,28,0,24, + 0,24,0,24,0,0,0,0,0,24,0,24,0,20,22,66, + 23,1,251,1,252,0,7,255,0,30,7,128,56,1,192,48, + 0,224,97,236,96,99,252,112,227,28,48,198,12,48,198,12, + 48,198,12,48,198,12,48,198,12,48,198,12,48,227,28,96, + 99,31,224,97,231,192,48,0,0,56,0,0,28,0,0,7, + 220,0,1,252,0,16,17,34,17,1,0,3,128,3,128,7, + 192,6,192,14,224,12,96,12,112,24,48,24,48,56,56,63, + 248,63,252,96,12,96,12,224,6,192,6,192,7,12,17,34, + 16,2,0,255,128,195,224,192,112,192,48,192,48,192,48,192, + 112,192,224,255,128,193,224,192,112,192,48,192,48,192,48,192, + 112,195,224,255,128,13,17,34,15,1,0,15,192,63,240,48, + 56,96,24,96,24,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,96,0,96,24,48,48,63,240,15,192,13,17,34, + 17,2,0,255,0,199,192,192,96,192,48,192,48,192,24,192, + 24,192,24,192,24,192,24,192,24,192,24,192,48,192,48,192, + 224,199,192,255,0,11,17,34,14,2,0,255,224,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,255,192,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,255,224,10,17,34, + 13,2,0,255,192,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,255,128,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,14,17,34,17,1,0,7,224,31,248,48, + 28,96,12,96,0,192,0,192,0,192,0,192,252,192,12,192, + 12,224,12,96,12,112,12,56,12,31,252,7,248,12,17,34, + 16,2,0,192,48,192,48,192,48,192,48,192,48,192,48,192, + 48,192,48,255,240,192,48,192,48,192,48,192,48,192,48,192, + 48,192,48,192,48,2,17,17,6,2,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,10,17,34,13, + 1,0,0,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,192,192,225,128, + 127,128,62,0,12,17,34,15,2,0,192,96,192,192,193,128, + 195,0,199,0,206,0,220,0,248,0,220,0,222,0,206,0, + 199,0,195,128,193,192,192,224,192,224,192,112,10,17,34,12, + 2,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 255,192,255,192,17,17,51,21,2,0,240,7,128,240,7,128, + 240,7,128,216,13,128,216,13,128,220,29,128,204,25,128,204, + 25,128,206,57,128,198,49,128,198,49,128,195,97,128,195,97, + 128,195,97,128,193,193,128,193,193,128,193,193,128,13,17,34, + 17,2,0,224,24,240,24,248,24,248,24,220,24,220,24,206, + 24,198,24,199,24,195,24,195,152,193,216,193,216,192,248,192, + 248,192,120,192,56,15,17,34,17,1,0,7,192,30,240,48, + 24,96,12,96,12,192,6,192,6,192,6,192,6,192,6,192, + 6,224,14,96,12,96,12,48,24,30,240,7,192,11,17,34, + 14,2,0,255,0,199,192,192,224,192,96,192,96,192,96,192, + 224,193,192,255,128,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,16,17,34,18,1,0,7,192,30,240,48, + 24,96,12,96,12,192,6,192,6,192,6,192,6,192,6,192, + 6,224,14,96,12,96,12,48,24,30,248,7,255,11,17,34, + 15,2,0,255,0,199,192,192,224,192,96,192,96,192,96,192, + 96,193,192,255,0,193,192,192,192,192,192,192,224,192,96,192, + 96,192,96,192,96,12,17,34,15,1,0,31,128,63,224,96, + 112,192,48,192,0,224,0,240,0,127,128,63,224,3,240,0, + 112,0,48,192,48,192,48,96,112,123,224,31,128,13,17,34, + 15,1,0,255,248,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,13,17,34,17,2,0,192,24,192,24,192, + 24,192,24,192,24,192,24,192,24,192,24,192,24,192,24,192, + 24,192,24,192,24,96,56,96,48,61,224,31,192,14,17,34, + 15,1,0,192,28,192,24,224,56,96,48,96,48,112,112,48, + 96,48,96,56,224,24,192,24,192,29,192,13,128,13,128,15, + 128,7,0,7,0,22,17,51,22,0,0,224,56,28,96,120, + 28,96,120,24,112,120,24,48,108,56,48,204,48,48,204,48, + 24,206,48,24,198,112,25,134,96,29,134,96,13,131,96,13, + 131,192,15,3,192,7,3,192,7,1,192,6,1,128,14,17, + 34,16,1,0,112,24,112,56,56,48,28,96,28,224,14,192, + 7,128,7,128,7,128,7,192,13,192,28,224,24,112,48,112, + 112,56,96,28,224,28,14,17,34,15,0,0,224,28,112,24, + 112,56,56,48,24,112,28,96,12,192,14,192,7,128,3,128, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,12,17, + 34,14,1,0,127,240,0,48,0,112,0,224,1,192,1,192, + 3,128,7,0,7,0,14,0,28,0,60,0,56,0,112,0, + 240,0,224,0,255,240,4,22,22,9,2,251,240,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,240,7,18,18,9,1,255,192,192,64,96,96,32,48,48, + 16,16,24,24,8,12,12,4,4,6,4,22,22,10,3,251, + 240,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,240,11,14,28,23,6,0,4,0,14,0, + 10,0,27,0,17,0,17,0,49,128,32,128,32,128,96,192, + 64,64,192,96,128,32,128,32,12,1,2,12,0,253,255,240, + 4,4,4,5,0,14,192,96,96,48,10,12,24,13,1,0, + 31,0,123,128,96,192,96,192,0,192,63,192,120,192,224,192, + 192,192,193,192,119,192,60,192,11,17,34,14,2,0,192,0, + 192,0,192,0,192,0,192,0,207,0,223,192,224,192,224,224, + 192,96,192,96,192,96,192,96,224,224,224,192,251,128,207,0, + 10,12,24,12,1,0,31,0,127,128,97,192,192,192,192,0, + 192,0,192,0,192,0,192,192,97,192,127,128,31,0,11,17, + 34,14,1,0,0,96,0,96,0,96,0,96,0,96,30,96, + 127,224,97,224,224,224,192,96,192,96,192,96,192,96,224,224, + 96,224,59,224,30,96,10,12,24,13,1,0,31,0,127,128, + 96,192,192,192,192,192,255,192,192,0,192,0,192,192,96,192, + 63,128,31,0,7,17,17,9,1,0,30,62,48,48,48,254, + 48,48,48,48,48,48,48,48,48,48,48,11,17,34,14,1, + 251,31,96,63,224,96,224,224,224,192,96,192,96,192,96,192, + 96,224,224,96,224,123,224,30,96,0,96,96,224,96,192,63, + 128,31,0,10,17,34,14,2,0,192,0,192,0,192,0,192, + 0,192,0,207,0,251,128,225,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,2,17,17,5,1, + 0,192,192,0,0,0,192,192,192,192,192,192,192,192,192,192, + 192,192,3,22,22,7,2,251,96,96,0,0,0,96,96,96, + 96,96,96,96,96,96,96,96,96,96,96,96,224,192,9,17, + 34,12,2,0,192,0,192,0,192,0,192,0,192,0,195,128, + 199,0,206,0,220,0,216,0,248,0,216,0,204,0,206,0, + 199,0,195,0,195,128,2,17,17,6,2,0,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,18,12,36, + 21,2,0,207,31,0,255,191,128,225,225,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,10,12,24,14,2,0,223,0,255, + 128,225,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,11,12,24,13,1,0,31,0,63,192,96, + 192,224,224,192,96,192,96,192,96,192,96,224,224,96,192,63, + 192,31,0,11,17,34,14,2,251,207,0,251,192,224,192,224, + 224,192,96,192,96,192,96,192,96,224,224,224,192,251,192,207, + 0,192,0,192,0,192,0,192,0,192,0,11,17,34,14,1, + 251,30,96,123,224,96,224,224,224,192,96,192,96,192,96,192, + 96,224,224,96,224,123,224,30,96,0,96,0,96,0,96,0, + 96,0,96,7,12,12,9,2,0,222,252,224,192,192,192,192, + 192,192,192,192,192,9,12,24,11,1,0,62,0,127,128,193, + 128,192,0,224,0,126,0,31,128,3,128,193,128,193,128,119, + 0,62,0,7,15,15,9,1,0,48,48,48,254,48,48,48, + 48,48,48,48,48,48,58,30,10,12,24,14,2,0,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 225,192,127,192,60,192,11,12,24,12,1,0,192,96,192,192, + 224,192,97,192,97,128,49,128,51,0,59,0,27,0,30,0, + 30,0,12,0,18,12,36,19,0,0,224,224,192,96,224,192, + 97,161,192,113,177,128,49,177,128,51,49,128,51,27,0,27, + 27,0,30,27,0,30,14,0,14,14,0,12,14,0,11,12, + 24,13,1,0,224,192,113,192,49,128,59,0,31,0,14,0, + 30,0,31,0,51,128,113,128,97,192,192,224,11,17,34,12, + 1,251,192,96,192,192,224,192,97,192,113,128,49,128,51,128, + 59,0,27,0,30,0,14,0,14,0,12,0,12,0,28,0, + 24,0,24,0,8,12,12,10,1,0,255,3,7,14,12,24, + 56,48,96,224,192,255,8,23,23,11,2,251,15,14,24,24, + 24,24,24,24,24,56,112,224,240,48,24,24,24,24,24,24, + 24,12,15,1,25,25,8,4,250,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,8,23,23,11,2,251,224,112,56,24,24,24,24,24, + 24,28,14,7,14,28,24,24,24,24,24,24,24,48,240,12, + 2,4,12,0,5,62,112,231,224,255}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--28-280-72-72-P-133-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 20, '1' Height: 20 + Calculated Max Values w=26 h=29 x= 7 y=17 dx=29 dy= 0 ascent=28 len=96 + Font Bounding box w=38 h=35 x=-2 y=-7 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =20 descent=-5 + X Font ascent =20 descent=-5 + Max Font ascent =28 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur20[8654] U8G_SECTION(".progmem.u8g_font_fur20") = { + 0,38,35,254,249,20,5,12,11,23,32,255,251,28,249,20, + 251,0,0,0,8,0,0,3,20,20,11,4,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,0,0,224,224, + 224,9,8,16,13,2,12,227,128,227,128,227,0,227,0,227, + 0,195,0,195,0,67,0,18,20,60,21,1,0,0,195,0, + 0,195,0,0,195,0,1,198,0,1,134,0,1,134,0,31, + 255,192,63,255,192,3,12,0,3,24,0,6,24,0,6,24, + 0,127,255,128,255,255,0,12,48,0,12,48,0,28,96,0, + 24,96,0,24,96,0,24,192,0,14,25,50,16,1,253,2, + 0,2,0,31,192,63,224,114,112,98,48,226,56,226,0,226, + 0,114,0,126,0,63,224,15,240,2,248,2,56,2,28,226, + 28,226,28,226,24,114,56,127,240,31,192,2,0,2,0,2, + 0,23,20,60,25,1,0,30,0,192,127,128,192,97,129,128, + 225,193,0,225,195,0,225,198,0,225,198,0,97,140,0,127, + 136,0,30,24,224,0,49,248,0,51,156,0,103,14,0,71, + 14,0,199,14,1,135,14,1,135,14,3,3,12,2,3,252, + 6,0,240,19,20,60,22,2,0,7,192,0,31,240,0,56, + 48,0,56,48,0,56,48,0,56,112,0,29,224,0,15,192, + 0,31,3,128,63,131,128,115,195,128,225,227,128,224,243,0, + 224,123,0,224,63,0,224,30,0,112,15,0,120,31,128,63, + 251,192,15,225,224,3,8,8,10,4,12,224,224,192,192,192, + 192,192,192,5,24,24,10,3,252,24,48,48,112,112,96,96, + 224,224,224,224,224,224,224,224,224,224,96,96,112,112,48,48, + 24,5,24,24,10,3,252,192,192,96,96,96,112,112,48,48, + 48,56,56,56,56,48,48,48,112,112,96,96,96,192,192,11, + 11,22,19,4,9,17,0,49,128,27,0,27,0,14,0,255, + 224,142,32,27,0,27,0,49,128,17,0,17,16,48,29,6, + 0,1,128,0,1,128,0,1,128,0,1,128,0,1,128,0, + 1,128,0,1,128,0,255,255,128,255,255,128,1,128,0,1, + 128,0,1,128,0,1,128,0,1,128,0,1,128,0,1,128, + 0,5,7,7,8,1,253,56,56,112,112,96,96,224,7,2, + 2,9,1,6,254,254,3,3,3,8,3,0,224,224,224,8, + 21,21,11,2,255,3,6,6,6,4,12,12,12,24,24,24, + 48,48,48,96,96,96,64,192,192,192,13,20,40,16,1,0, + 15,128,63,192,112,224,96,112,96,112,224,48,224,48,224,56, + 224,56,224,56,224,56,224,56,224,56,224,48,224,48,96,112, + 112,112,48,224,63,192,15,128,7,20,20,16,4,0,30,62, + 126,254,206,14,14,14,14,14,14,14,14,14,14,14,14,14, + 14,14,12,20,40,16,2,0,31,128,63,192,112,96,112,112, + 224,112,0,112,0,112,0,112,0,224,1,224,3,192,3,128, + 7,0,14,0,28,0,60,0,120,0,240,0,255,240,255,240, + 13,20,40,16,1,0,15,128,63,224,112,112,112,48,224,56, + 0,56,0,48,0,224,7,192,7,192,0,224,0,112,0,56, + 0,56,224,56,224,56,224,56,112,112,63,224,31,128,14,20, + 40,16,1,0,0,240,1,240,1,240,3,240,7,112,6,112, + 14,112,28,112,24,112,56,112,112,112,96,112,224,112,255,252, + 255,252,0,112,0,112,0,112,0,112,0,112,13,20,40,16, + 1,0,255,224,255,224,224,0,224,0,224,0,224,0,224,0, + 239,128,255,224,240,112,224,112,224,48,0,56,0,56,0,56, + 224,48,224,112,112,224,127,192,31,128,13,20,40,16,1,0, + 15,192,63,224,120,112,112,48,224,56,224,0,224,0,231,192, + 255,224,248,240,224,56,224,56,224,56,224,56,224,56,224,56, + 96,48,48,112,63,224,15,128,12,20,40,16,2,0,255,240, + 255,240,0,112,0,112,0,96,0,224,0,224,1,192,1,192, + 1,128,3,128,3,128,3,0,7,0,7,0,14,0,14,0, + 14,0,28,0,28,0,13,20,40,16,1,0,15,128,63,224, + 112,112,224,48,224,56,224,56,96,48,112,112,31,192,31,192, + 56,96,96,48,224,56,224,56,224,56,224,56,224,56,112,112, + 63,224,15,128,13,20,40,16,1,0,31,192,63,224,112,112, + 224,56,224,56,224,56,224,56,224,56,224,56,112,120,63,248, + 31,56,0,56,0,56,0,56,96,48,96,112,112,224,63,192, + 31,128,3,14,14,8,3,0,224,224,224,0,0,0,0,0, + 0,0,0,224,224,224,4,17,17,8,2,253,112,112,112,0, + 0,0,0,0,0,0,112,112,96,224,192,192,192,17,14,42, + 29,6,1,0,1,128,0,15,128,0,124,0,1,224,0,15, + 0,0,120,0,0,224,0,0,240,0,0,62,0,0,7,128, + 0,0,240,0,0,62,0,0,7,128,0,0,128,17,7,21, + 29,6,5,255,255,128,255,255,128,0,0,0,0,0,0,0, + 0,0,255,255,128,255,255,128,17,14,42,29,6,1,192,0, + 0,248,0,0,31,0,0,3,192,0,0,120,0,0,15,0, + 0,3,128,0,7,128,0,62,0,0,240,0,7,128,0,62, + 0,0,240,0,0,128,0,0,12,20,40,15,1,0,31,0, + 63,192,127,224,224,240,64,112,0,112,0,112,0,96,0,192, + 3,128,7,0,14,0,14,0,14,0,14,0,0,0,0,0, + 14,0,14,0,14,0,25,24,96,28,2,252,0,127,0,0, + 3,255,224,0,15,129,248,0,30,0,60,0,56,0,14,0, + 48,0,6,0,112,125,199,0,96,255,199,0,225,195,195,0, + 227,131,195,0,227,129,195,128,227,129,195,128,227,129,195,128, + 227,129,195,0,227,129,195,0,225,131,199,0,113,199,206,0, + 112,252,252,0,56,56,48,0,60,0,0,0,30,0,0,0, + 15,128,64,0,3,255,192,0,0,127,128,0,19,20,60,21, + 1,0,0,224,0,1,240,0,1,240,0,3,176,0,3,184, + 0,3,56,0,7,28,0,7,28,0,14,14,0,14,14,0, + 30,15,0,28,7,0,28,7,0,63,255,128,63,255,128,112, + 1,192,112,1,192,224,0,224,224,0,224,224,0,224,15,20, + 40,19,2,0,255,224,255,248,224,120,224,28,224,28,224,28, + 224,28,224,24,224,56,255,224,255,240,224,28,224,12,224,14, + 224,14,224,14,224,30,224,60,255,248,255,224,16,20,40,19, + 2,0,7,240,31,252,60,14,48,6,112,7,96,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,96,0, + 96,7,112,6,56,14,31,252,7,240,16,20,40,20,2,0, + 255,192,255,240,224,120,224,28,224,14,224,14,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,14,224,14, + 224,28,224,120,255,240,255,192,13,20,40,17,2,0,255,248, + 255,248,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 255,240,255,240,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,255,248,255,248,12,20,40,16,2,0,255,240,255,240, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,255,224, + 255,224,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,18,20,60,22,2,0,3,248,0,15,254,0, + 30,15,128,56,3,128,112,1,192,96,0,0,224,0,0,224, + 0,0,224,0,0,224,63,192,224,63,192,224,1,192,224,1, + 192,224,1,192,112,1,192,112,1,192,56,1,192,30,7,192, + 15,255,192,3,254,0,15,20,40,19,2,0,224,14,224,14, + 224,14,224,14,224,14,224,14,224,14,224,14,224,14,255,254, + 255,254,224,14,224,14,224,14,224,14,224,14,224,14,224,14, + 224,14,224,14,3,20,20,7,2,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,12,20, + 40,16,2,0,0,112,0,112,0,112,0,112,0,112,0,112, + 0,112,0,112,0,112,0,112,0,112,0,112,0,112,0,112, + 0,112,224,112,224,96,113,224,63,192,31,128,15,20,40,18, + 2,0,224,60,224,120,224,240,224,224,225,192,227,128,231,0, + 238,0,252,0,254,0,238,0,239,0,231,128,227,192,225,224, + 224,240,224,120,224,56,224,60,224,30,12,20,40,15,2,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,255,240,255,240,21,20,60,25,2,0,248,0, + 248,248,0,248,248,1,248,252,1,248,252,1,184,236,3,184, + 238,3,184,238,3,56,230,7,56,231,6,56,227,14,56,227, + 142,56,227,140,56,225,156,56,225,220,56,225,216,56,224,248, + 56,224,240,56,224,112,56,224,112,56,16,20,40,20,2,0, + 240,7,248,7,248,7,252,7,252,7,238,7,238,7,231,7, + 231,135,227,135,227,199,225,199,224,231,224,231,224,119,224,119, + 224,63,224,63,224,31,224,31,18,20,60,22,2,0,3,240, + 0,15,252,0,62,31,0,56,7,0,112,3,128,96,1,128, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,96,1,192,112,3,128,112,3,128,56,7, + 0,30,30,0,15,252,0,3,240,0,14,20,40,17,2,0, + 255,192,255,240,224,120,224,56,224,28,224,28,224,28,224,56, + 224,120,255,240,255,192,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,20,20,60,22,2,0,3,240, + 0,15,252,0,62,31,0,56,7,0,112,3,128,96,1,128, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,96,1,192,112,3,128,112,3,128,56,7, + 0,30,30,0,15,255,240,3,255,240,14,20,40,17,2,0, + 255,192,255,240,224,120,224,56,224,28,224,28,224,28,224,56, + 224,112,255,224,255,224,224,112,224,56,224,56,224,56,224,24, + 224,24,224,24,224,28,224,28,15,20,40,19,2,0,15,192, + 63,240,120,120,96,28,224,28,224,0,224,0,120,0,127,0, + 63,240,7,252,0,60,0,14,0,14,224,14,224,14,224,14, + 120,60,63,248,15,192,16,20,40,18,1,0,255,255,255,255, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,192,16,20,40,20,2,0,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,96,6,112,14,60,60,31,248, + 15,224,17,20,60,18,1,0,224,3,128,224,7,0,224,7, + 0,112,7,0,112,14,0,112,14,0,56,14,0,56,28,0, + 56,28,0,28,56,0,28,56,0,12,56,0,14,112,0,14, + 112,0,7,112,0,7,224,0,7,224,0,3,224,0,3,192, + 0,3,192,0,26,20,80,27,1,0,224,28,1,192,224,30, + 3,128,224,62,3,128,224,62,3,128,112,54,3,0,112,119, + 7,0,112,115,7,0,48,99,7,0,56,99,134,0,56,227, + 142,0,24,225,142,0,28,193,140,0,28,193,220,0,29,193, + 220,0,13,192,216,0,15,128,216,0,15,128,248,0,7,128, + 120,0,7,0,112,0,7,0,112,0,18,20,60,20,1,0, + 120,7,128,56,7,0,60,14,0,30,30,0,14,28,0,15, + 56,0,7,56,0,3,240,0,1,224,0,1,224,0,3,224, + 0,3,240,0,7,120,0,14,56,0,14,28,0,28,30,0, + 56,15,0,120,7,0,112,7,128,224,3,192,17,20,60,19, + 1,0,224,3,128,240,7,0,112,7,0,56,14,0,60,28, + 0,28,28,0,14,56,0,14,48,0,7,112,0,7,96,0, + 3,224,0,1,192,0,1,192,0,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,1,192,0,15,20, + 40,17,1,0,255,252,255,252,0,28,0,56,0,120,0,240, + 0,224,1,192,3,192,3,128,7,0,14,0,30,0,28,0, + 56,0,112,0,240,0,224,0,255,254,255,254,5,25,25,11, + 3,251,248,248,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,248,248,9,21,42,11,1, + 255,192,0,96,0,96,0,96,0,48,0,48,0,48,0,24, + 0,24,0,24,0,8,0,12,0,12,0,12,0,6,0,6, + 0,6,0,3,0,3,0,3,0,1,128,6,25,25,12,3, + 251,252,252,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,252,252,14,17,34,28,7,0, + 3,0,3,0,7,128,7,128,4,128,12,192,8,64,24,96, + 24,96,16,32,48,48,48,48,96,24,96,24,64,8,192,12, + 192,12,14,2,4,14,0,252,255,252,255,252,6,5,5,6, + 255,16,224,112,48,24,12,12,14,28,15,1,0,31,192,63, + 224,112,112,112,112,0,112,15,240,63,240,112,112,224,112,224, + 112,224,112,224,240,127,176,30,48,13,20,40,16,2,0,224, + 0,224,0,224,0,224,0,224,0,224,0,231,192,255,224,240, + 112,224,48,224,56,224,56,224,56,224,56,224,56,224,56,224, + 112,240,112,255,224,231,128,12,14,28,14,1,0,31,128,63, + 224,112,112,224,112,224,112,224,0,224,0,224,0,224,0,224, + 112,96,112,112,224,63,224,31,128,13,20,40,16,1,0,0, + 56,0,56,0,56,0,56,0,56,0,56,31,56,63,248,112, + 248,96,120,224,56,224,56,224,56,224,56,224,56,224,56,112, + 56,112,120,63,248,15,184,13,14,28,15,1,0,15,128,63, + 224,112,112,96,48,224,56,255,248,255,248,224,0,224,0,224, + 56,96,112,112,112,63,224,15,128,9,20,40,10,1,0,7, + 128,31,128,28,0,28,0,28,0,28,0,255,128,255,128,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,13,19,38,16,1,251,31,184,63, + 248,112,120,96,56,224,56,224,56,224,56,224,56,224,56,224, + 56,96,56,112,120,63,248,31,56,0,56,112,48,112,112,63, + 224,15,128,12,20,40,16,2,0,224,0,224,0,224,0,224, + 0,224,0,224,0,239,192,255,224,240,240,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,3,20,20,7,2,0,224,224,224,0,0,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,5,25,25,7,1, + 251,56,56,56,0,0,0,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,240,224,11,20,40,14,2,0, + 224,0,224,0,224,0,224,0,224,0,224,0,225,224,225,192, + 227,128,231,0,238,0,252,0,252,0,254,0,238,0,231,0, + 227,128,227,192,225,192,224,224,3,20,20,7,2,0,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,21,14,42,25,2,0,231,195,224,255,239,240,240,248, + 56,224,120,56,224,112,24,224,112,24,224,112,24,224,112,24, + 224,112,24,224,112,24,224,112,24,224,112,24,224,112,24,224, + 112,24,12,14,28,16,2,0,239,128,255,224,240,240,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,14,14,28,16,1,0,15,192,63,224,112,112, + 112,56,224,24,224,28,224,28,224,28,224,28,224,24,112,56, + 112,112,63,224,15,192,14,19,38,17,2,251,231,192,255,240, + 240,112,240,56,224,24,224,28,224,28,224,28,224,28,224,24, + 224,56,240,112,255,240,231,192,224,0,224,0,224,0,224,0, + 224,0,14,19,38,17,1,251,15,156,63,220,112,124,112,60, + 224,28,224,28,224,28,224,28,224,28,224,28,96,60,112,124, + 63,252,15,156,0,28,0,28,0,28,0,28,0,28,8,14, + 14,10,2,0,239,255,240,224,224,224,224,224,224,224,224,224, + 224,224,12,14,28,14,1,0,31,128,127,192,112,224,224,224, + 224,0,120,0,63,128,15,224,0,224,0,112,224,112,224,224, + 127,192,63,128,8,18,18,10,1,0,8,56,56,56,255,255, + 56,56,56,56,56,56,56,56,56,56,31,15,12,14,28,16, + 2,0,224,112,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,240,240,127,240,63,112,13,14, + 28,15,1,0,224,24,224,56,224,56,112,48,112,112,56,96, + 56,224,24,192,28,192,29,192,15,128,15,128,7,0,7,0, + 21,14,42,23,1,0,192,112,24,224,248,56,224,248,56,96, + 216,48,97,216,112,113,156,112,49,140,96,51,140,224,59,14, + 224,27,6,192,27,7,192,30,7,128,14,3,128,14,3,128, + 13,14,28,15,1,0,240,56,112,112,56,96,28,224,31,192, + 15,128,7,0,7,128,15,192,29,192,56,224,112,112,112,120, + 224,56,13,19,38,15,1,251,224,24,224,56,96,56,112,112, + 112,112,56,96,56,224,28,224,29,192,13,192,15,128,15,128, + 7,128,7,0,7,0,6,0,14,0,14,0,12,0,10,14, + 28,12,1,0,255,192,255,192,1,192,3,128,7,0,14,0, + 14,0,28,0,56,0,48,0,112,0,224,0,255,192,255,192, + 9,27,54,13,2,249,3,128,15,128,14,0,12,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,56,0,248,0, + 240,0,240,0,56,0,24,0,28,0,28,0,28,0,28,0, + 12,0,12,0,12,0,14,0,15,128,3,128,1,29,29,9, + 4,249,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,9, + 27,54,13,2,249,240,0,248,0,24,0,28,0,28,0,28, + 0,28,0,28,0,28,0,12,0,12,0,14,0,7,128,3, + 128,7,128,14,0,12,0,12,0,28,0,28,0,28,0,28, + 0,28,0,28,0,24,0,248,0,240,0,15,3,6,15,0, + 5,62,14,127,252,224,248,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,8,0,0,3,19, + 19,10,4,251,224,224,224,0,0,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,12,20,40,16,2,253,0,192,0, + 128,0,128,31,128,63,192,113,96,227,96,226,0,226,0,230, + 0,228,0,228,0,236,112,232,96,120,224,63,192,31,128,16, + 0,48,0,48,0,14,20,40,16,1,0,7,224,31,248,60, + 60,56,28,56,0,56,0,56,0,255,128,255,128,56,0,56, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,255, + 248,255,248,16,14,28,18,1,4,192,3,97,134,55,236,28, + 56,24,24,48,12,48,12,48,12,48,12,24,24,28,56,63, + 252,115,198,192,3,15,20,40,17,1,0,224,14,224,28,112, + 28,48,56,56,56,24,112,252,126,252,254,14,224,7,192,255, + 254,255,254,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,1,25,25,9,4,251,128,128,128,128,128,128,128, + 128,128,128,128,0,0,0,128,128,128,128,128,128,128,128,128, + 128,128,10,25,50,12,1,251,31,0,63,128,112,0,224,0, + 224,0,112,0,120,0,62,0,31,0,127,128,113,192,225,192, + 225,192,225,128,247,128,126,0,31,0,7,128,3,192,1,192, + 1,192,1,192,131,128,255,0,60,0,8,3,3,8,0,17, + 231,231,231,21,20,60,25,2,0,1,252,0,7,255,0,28, + 3,128,56,112,192,35,254,96,103,142,48,199,7,16,134,7, + 24,142,0,8,142,0,8,142,0,8,134,0,8,134,7,24, + 199,7,16,67,254,16,32,248,32,48,0,64,28,1,128,7, + 143,0,1,252,0,10,13,26,12,1,7,63,0,127,128,97, + 128,1,128,31,128,127,128,225,128,193,128,227,128,127,128,24, + 0,0,0,255,192,11,11,22,16,2,2,12,96,24,224,56, + 192,113,128,99,128,227,0,99,128,113,128,56,192,24,224,12, + 96,15,6,12,18,2,6,255,254,255,254,0,6,0,6,0, + 6,0,6,255,21,20,60,25,2,0,1,252,0,7,255,0, + 28,3,128,59,252,192,35,254,96,99,3,48,195,3,16,131, + 3,24,131,254,8,131,252,8,131,6,8,131,6,8,131,3, + 24,195,3,16,67,3,48,35,3,96,56,0,192,28,3,128, + 7,255,0,1,252,0,8,2,2,8,0,17,255,255,6,6, + 6,8,1,14,120,204,132,132,204,120,17,17,51,29,6,0, + 1,128,0,1,128,0,1,128,0,1,128,0,1,128,0,255, + 255,128,255,255,128,1,128,0,1,128,0,1,128,0,1,128, + 0,1,128,0,0,0,0,0,0,0,0,0,0,255,255,128, + 255,255,128,9,11,22,11,1,9,62,0,127,0,227,128,3, + 128,3,0,7,0,28,0,56,0,112,0,255,128,255,128,8, + 11,11,10,1,9,62,127,195,3,30,30,7,3,195,126,60, + 5,5,5,6,2,16,56,48,96,224,192,255,13,24,48,16, + 1,252,15,248,62,32,126,32,126,32,254,32,254,32,254,32, + 126,32,62,32,30,32,2,32,2,32,2,32,2,32,2,32, + 2,32,2,32,2,32,2,32,2,32,2,32,2,32,2,32, + 2,32,3,3,3,7,2,8,224,224,224,7,7,7,7,1, + 249,32,32,60,14,6,254,248,4,10,10,8,2,10,112,240, + 176,48,48,48,48,48,48,48,10,12,24,12,1,8,30,0, + 99,128,193,128,192,192,192,192,192,192,192,192,193,128,99,128, + 30,0,0,0,255,192,12,11,22,16,2,2,227,0,99,128, + 49,128,56,192,24,224,28,112,24,224,56,192,49,128,99,128, + 227,0,18,20,60,22,2,0,112,12,0,240,12,0,176,24, + 0,48,24,0,48,48,0,48,96,0,48,96,0,48,192,0, + 48,192,0,49,131,0,49,7,0,3,15,0,6,31,0,6, + 27,0,12,51,0,12,99,0,24,127,192,16,3,0,48,3, + 0,96,3,0,18,20,60,22,2,0,112,12,0,240,24,0, + 176,24,0,48,48,0,48,48,0,48,96,0,48,64,0,48, + 192,0,48,128,0,49,143,0,51,31,128,3,49,192,6,1, + 192,6,1,192,12,3,128,8,7,0,24,14,0,16,24,0, + 48,63,192,96,63,192,20,20,60,22,1,0,62,1,128,127, + 3,0,195,3,0,3,6,0,28,6,0,30,12,0,3,24, + 0,195,24,0,199,48,0,126,48,192,56,97,192,0,99,192, + 0,198,192,1,134,192,1,140,192,3,24,192,3,31,240,6, + 0,192,12,0,192,12,0,192,12,19,38,15,2,251,7,0, + 7,0,7,0,0,0,0,0,7,0,7,0,7,0,15,0, + 30,0,56,0,112,0,224,0,224,0,224,0,224,112,127,224, + 63,224,31,128,19,27,81,21,1,0,7,0,0,3,128,0, + 1,128,0,0,192,0,0,96,0,0,0,0,0,0,0,0, + 224,0,1,240,0,1,240,0,3,176,0,3,184,0,3,56, + 0,7,28,0,7,28,0,14,14,0,14,14,0,30,15,0, + 28,7,0,28,7,0,63,255,128,63,255,128,112,1,192,112, + 1,192,224,0,224,224,0,224,224,0,224,19,27,81,21,1, + 0,0,28,0,0,56,0,0,48,0,0,96,0,0,192,0, + 0,0,0,0,0,0,0,224,0,1,240,0,1,240,0,3, + 176,0,3,184,0,3,56,0,7,28,0,7,28,0,14,14, + 0,14,14,0,30,15,0,28,7,0,28,7,0,63,255,128, + 63,255,128,112,1,192,112,1,192,224,0,224,224,0,224,224, + 0,224,19,27,81,21,1,0,0,224,0,1,240,0,1,176, + 0,3,24,0,6,12,0,0,0,0,0,0,0,0,224,0, + 1,240,0,1,240,0,3,176,0,3,184,0,3,56,0,7, + 28,0,7,28,0,14,14,0,14,14,0,30,15,0,28,7, + 0,28,7,0,63,255,128,63,255,128,112,1,192,112,1,192, + 224,0,224,224,0,224,224,0,224,19,26,78,21,1,0,1, + 140,0,3,248,0,6,112,0,0,0,0,0,0,0,0,0, + 0,0,224,0,1,240,0,1,240,0,3,176,0,3,184,0, + 3,56,0,7,28,0,7,28,0,14,14,0,14,14,0,30, + 15,0,28,7,0,28,7,0,63,255,128,63,255,128,112,1, + 192,112,1,192,224,0,224,224,0,224,224,0,224,19,26,78, + 21,1,0,3,156,0,3,156,0,3,156,0,0,0,0,0, + 0,0,0,0,0,0,224,0,0,240,0,1,240,0,1,184, + 0,3,184,0,3,152,0,7,28,0,7,28,0,7,14,0, + 14,14,0,14,15,0,28,7,0,28,7,0,63,255,128,63, + 255,128,56,1,192,112,1,192,112,0,224,224,0,224,224,0, + 224,20,28,84,21,0,0,0,240,0,1,152,0,1,8,0, + 1,8,0,1,152,0,0,240,0,0,0,0,0,0,0,0, + 240,0,0,240,0,0,248,0,1,248,0,1,220,0,3,156, + 0,3,158,0,7,14,0,7,14,0,7,7,0,14,7,0, + 14,7,128,30,3,128,31,255,192,31,255,192,56,1,192,56, + 0,224,112,0,224,112,0,112,224,0,112,25,20,80,28,1, + 0,0,63,255,128,0,127,255,128,0,126,0,0,0,238,0, + 0,0,238,0,0,1,206,0,0,1,206,0,0,3,206,0, + 0,3,142,0,0,7,143,255,128,7,15,255,128,15,14,0, + 0,14,14,0,0,31,254,0,0,63,254,0,0,56,14,0, + 0,120,14,0,0,112,14,0,0,224,15,255,128,224,15,255, + 128,16,27,54,19,2,249,7,240,31,252,60,14,48,6,112, + 7,96,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,96,0,96,7,48,6,56,14,31,252,7,240,0, + 128,0,224,0,248,0,24,0,24,3,248,1,224,13,27,54, + 17,2,0,24,0,28,0,14,0,6,0,3,0,0,0,0, + 0,255,248,255,248,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,255,240,255,240,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,255,248,255,248,13,27,54,17,2,0,1, + 192,1,128,3,0,6,0,4,0,0,0,0,0,255,248,255, + 248,224,0,224,0,224,0,224,0,224,0,224,0,224,0,255, + 240,255,240,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,255,248,255,248,13,27,54,17,2,0,15,0,15,0,25, + 128,16,192,48,192,0,0,0,0,255,248,255,248,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,255,240,255,240,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,255,248,255, + 248,13,26,52,17,2,0,56,224,56,224,56,224,0,0,0, + 0,0,0,255,248,255,248,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,255,240,255,240,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,255,248,255,248,5,27,27,7,0, + 0,224,96,48,48,24,0,0,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,5,27,27,7, + 2,0,56,112,96,192,128,0,0,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,8,27,27, + 7,255,0,28,62,118,99,193,0,0,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,8,26, + 26,8,0,0,227,227,227,0,0,0,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,19,20, + 60,20,0,0,63,240,0,63,254,0,56,31,0,56,7,128, + 56,3,128,56,1,192,56,1,192,56,0,192,56,0,224,255, + 192,224,255,192,224,56,0,224,56,0,192,56,1,192,56,1, + 192,56,3,128,56,7,128,56,31,0,63,254,0,63,240,0, + 16,26,52,20,2,0,6,48,15,224,9,224,0,0,0,0, + 0,0,240,7,248,7,248,7,252,7,252,7,238,7,238,7, + 231,7,231,135,227,135,227,199,225,199,224,231,224,231,224,119, + 224,119,224,63,224,63,224,31,224,31,18,28,84,22,2,0, + 7,0,0,3,128,0,1,128,0,0,192,0,0,64,0,0, + 0,0,0,0,0,0,0,0,3,240,0,15,252,0,62,31, + 0,56,7,0,112,3,128,96,1,128,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,96, + 1,192,112,3,128,112,3,128,56,7,0,30,30,0,15,252, + 0,3,240,0,18,28,84,22,2,0,0,56,0,0,112,0, + 0,96,0,0,192,0,0,128,0,0,0,0,0,0,0,0, + 0,0,3,240,0,15,252,0,62,31,0,56,7,0,112,3, + 128,96,1,128,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,96,1,192,112,3,128,112, + 3,128,56,7,0,30,30,0,15,252,0,3,240,0,18,28, + 84,22,2,0,1,224,0,1,224,0,3,240,0,3,48,0, + 6,24,0,0,0,0,0,0,0,0,0,0,3,240,0,15, + 252,0,62,31,0,56,7,0,112,3,128,96,1,128,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,96,1,192,112,3,128,112,3,128,56,7,0,30, + 30,0,15,252,0,3,240,0,18,26,78,22,2,0,3,152, + 0,7,248,0,6,112,0,0,0,0,0,0,0,0,0,0, + 3,240,0,15,252,0,62,31,0,56,7,0,112,3,128,96, + 1,128,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,96,1,192,112,3,128,112,3,128, + 56,7,0,31,62,0,15,252,0,3,240,0,18,26,78,22, + 2,0,7,28,0,7,28,0,7,28,0,0,0,0,0,0, + 0,0,0,0,3,240,0,15,252,0,62,31,0,56,7,0, + 112,3,128,96,1,128,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,96,1,192,112,3, + 128,112,3,128,56,7,0,30,30,0,15,252,0,3,240,0, + 16,15,30,28,6,1,64,2,224,7,112,14,56,28,12,56, + 6,96,3,192,1,128,3,192,6,96,12,48,24,24,48,12, + 96,6,64,2,18,24,72,22,2,254,0,0,128,0,1,192, + 3,251,128,15,255,0,62,31,0,56,15,128,112,31,128,96, + 29,128,224,57,192,224,113,192,224,113,192,224,225,192,225,193, + 192,227,193,192,227,129,192,231,1,128,111,3,128,126,3,128, + 60,7,0,62,30,0,63,252,0,115,240,0,224,0,0,96, + 0,0,16,28,56,20,2,0,14,0,7,0,3,0,1,128, + 0,128,0,0,0,0,0,0,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,96,14,112,14,62,124,31,248,15,224, + 16,28,56,20,2,0,0,112,0,224,0,192,1,128,1,0, + 0,0,0,0,0,0,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,96,14,112,14,62,124,31,248,15,224,16,28, + 56,20,2,0,3,192,3,192,7,224,6,96,12,48,0,0, + 0,0,0,0,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,96,14,112,14,62,124,31,248,15,224,16,26,52,20, + 2,0,14,56,14,56,14,56,0,0,0,0,0,0,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,96,6,112,14, + 60,60,31,248,15,224,17,27,81,19,1,0,0,112,0,0, + 96,0,0,192,0,0,128,0,1,128,0,0,0,0,0,0, + 0,224,3,128,240,7,0,112,7,0,56,14,0,60,28,0, + 28,28,0,14,56,0,14,48,0,7,112,0,7,96,0,3, + 224,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,1,192,0,14,20,40, + 17,2,0,224,0,224,0,224,0,224,0,255,192,255,240,224, + 120,224,56,224,28,224,28,224,28,224,56,224,120,255,240,255, + 192,224,0,224,0,224,0,224,0,224,0,14,20,40,15,1, + 0,15,128,63,224,112,112,224,112,224,112,224,112,225,224,227, + 128,231,0,231,0,227,128,227,224,224,248,224,56,224,28,224, + 28,238,28,230,28,231,248,225,240,12,21,42,15,1,0,12, + 0,14,0,6,0,3,0,1,128,0,0,0,0,31,192,63, + 224,112,112,112,112,0,112,15,240,63,240,112,112,224,112,224, + 112,224,112,224,240,127,176,30,48,12,22,44,15,1,0,1, + 192,1,128,3,0,3,0,6,0,12,0,0,0,0,0,31, + 192,63,224,112,112,112,112,0,112,15,240,63,240,112,112,224, + 112,224,112,224,112,224,240,127,176,30,48,12,22,44,15,1, + 0,7,0,15,0,13,128,29,128,24,192,48,64,0,0,0, + 0,31,192,63,224,112,112,112,112,0,112,15,240,63,240,112, + 112,224,112,224,112,224,112,224,240,127,176,30,48,12,20,40, + 15,1,0,30,64,31,192,49,128,0,0,0,0,0,0,31, + 192,63,224,112,112,112,112,0,112,15,240,63,240,112,112,224, + 112,224,112,224,112,224,240,127,176,30,48,12,20,40,15,1, + 0,56,224,56,224,56,224,0,0,0,0,0,0,31,192,63, + 224,112,112,112,112,0,112,15,240,63,240,112,112,224,112,224, + 112,224,112,224,240,127,176,30,48,12,23,46,15,1,0,15, + 0,25,128,16,128,16,128,25,128,15,0,0,0,0,0,0, + 0,31,192,63,224,112,112,112,112,0,112,15,240,63,240,112, + 112,224,112,224,112,224,112,224,240,127,176,30,48,23,14,42, + 25,1,0,31,131,240,63,207,248,112,108,28,112,56,12,0, + 56,14,15,255,254,63,255,254,120,56,0,224,56,0,224,56, + 14,224,120,12,240,236,28,127,199,248,31,3,240,12,21,42, + 14,1,249,31,128,63,224,112,112,224,112,224,112,224,0,224, + 0,224,0,224,0,224,112,224,112,112,224,63,224,31,128,4, + 0,7,128,7,192,0,96,0,96,31,192,15,0,13,22,44, + 15,1,0,56,0,28,0,12,0,6,0,6,0,3,0,0, + 0,0,0,15,128,63,224,112,112,96,48,224,56,255,248,255, + 248,224,0,224,0,224,56,96,112,112,112,63,224,15,128,13, + 22,44,15,1,0,1,192,1,128,3,128,3,0,6,0,4, + 0,0,0,0,0,15,128,63,224,112,112,96,48,224,56,255, + 248,255,248,224,0,224,0,224,56,96,112,112,112,63,224,15, + 128,13,22,44,15,1,0,7,0,15,0,15,128,25,128,24, + 192,48,64,0,0,0,0,15,128,63,224,112,112,96,48,224, + 56,255,248,255,248,224,0,224,0,224,56,96,112,112,112,63, + 224,15,128,13,20,40,15,1,0,56,224,56,224,56,224,0, + 0,0,0,0,0,15,192,63,224,112,112,96,56,224,56,255, + 248,255,248,224,0,224,0,224,56,96,56,112,112,63,224,15, + 128,5,21,21,7,0,0,224,96,48,48,24,0,0,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,5,21,21,7, + 2,0,56,112,96,192,128,0,0,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,8,21,21,7,255,0,60,62,118, + 99,193,0,0,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,8,20,20,7,255,0,227,227,227,0,0,0,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,14,20,40,16, + 1,0,48,32,57,224,15,0,31,128,113,192,0,224,15,240, + 63,240,120,120,112,56,224,24,224,28,224,28,224,28,224,28, + 224,24,96,56,112,112,63,224,15,192,12,20,40,16,2,0, + 28,192,63,192,51,128,0,0,0,0,0,0,239,128,255,224, + 240,240,224,112,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,14,22,44,16,1,0,28,0, + 12,0,14,0,6,0,3,0,1,0,0,0,0,0,15,192, + 63,224,112,112,112,56,224,24,224,28,224,28,224,28,224,28, + 224,24,112,56,112,112,63,224,15,192,14,22,44,16,1,0, + 0,224,1,192,1,128,3,0,3,0,6,0,0,0,0,0, + 15,192,63,224,112,112,112,56,224,24,224,28,224,28,224,28, + 224,28,224,24,112,56,112,112,63,224,15,192,14,22,44,16, + 1,0,7,0,7,128,15,128,12,192,24,192,24,96,0,0, + 0,0,15,192,63,224,112,112,112,56,224,24,224,28,224,28, + 224,28,224,28,224,24,112,56,112,112,63,224,15,192,14,20, + 40,16,1,0,14,96,31,192,17,128,0,0,0,0,0,0, + 15,192,63,224,112,112,112,56,224,24,224,28,224,28,224,28, + 224,28,224,24,112,56,112,112,63,224,15,192,14,20,40,16, + 1,0,28,224,28,224,28,224,0,0,0,0,0,0,15,192, + 63,224,112,112,112,56,224,24,224,28,224,28,224,28,224,28, + 224,24,112,56,112,112,63,224,15,192,17,12,36,29,6,2, + 1,192,0,1,192,0,1,192,0,0,0,0,0,0,0,255, + 255,128,255,255,128,0,0,0,0,0,0,1,192,0,1,192, + 0,1,192,0,14,18,36,16,1,254,0,8,0,24,15,248, + 63,240,112,112,112,248,225,216,225,152,227,28,230,28,238,28, + 236,24,120,56,112,112,127,224,111,192,192,0,128,0,12,22, + 44,16,2,0,56,0,24,0,12,0,12,0,6,0,3,0, + 0,0,0,0,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,240,240,127,240,63,112, + 12,22,44,16,2,0,1,192,1,128,3,0,7,0,6,0, + 12,0,0,0,0,0,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,240,240,127,240, + 63,112,12,22,44,16,2,0,6,0,15,0,15,0,25,128, + 16,128,48,192,0,0,0,0,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,224,112,240,240, + 127,240,63,112,12,20,40,16,2,0,57,192,57,192,57,192, + 0,0,0,0,0,0,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,240,240,127,240, + 63,112,13,27,54,15,1,251,0,224,1,192,1,128,3,0, + 2,0,0,0,0,0,0,0,224,24,224,56,96,56,112,112, + 112,112,56,96,56,224,28,224,29,192,13,192,15,128,7,128, + 7,128,7,0,7,0,6,0,238,0,252,0,120,0,14,25, + 50,17,2,251,224,0,224,0,224,0,224,0,224,0,224,0, + 231,192,255,240,240,112,240,56,224,24,224,28,224,28,224,28, + 224,28,224,24,224,56,240,112,255,240,231,192,224,0,224,0, + 224,0,224,0,224,0,14,25,50,14,0,251,28,224,28,224, + 28,224,0,0,0,0,0,0,224,28,112,24,112,56,48,56, + 56,112,56,112,28,96,28,224,14,224,14,192,7,192,7,128, + 3,128,3,128,3,0,7,0,6,0,6,0,14,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--28-280-72-72-P-133-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 20 + Calculated Max Values w=17 h=21 x= 6 y= 9 dx=29 dy= 0 ascent=20 len=48 + Font Bounding box w=38 h=35 x=-2 y=-7 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =20 descent= 0 + X Font ascent =20 descent= 0 + Max Font ascent =20 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur20n[596] U8G_SECTION(".progmem.u8g_font_fur20n") = { + 0,38,35,254,249,20,0,0,0,0,42,57,0,20,253,20, + 0,11,11,22,19,4,9,17,0,49,128,27,0,27,0,14, + 0,255,224,142,32,27,0,27,0,49,128,17,0,17,16,48, + 29,6,0,1,128,0,1,128,0,1,128,0,1,128,0,1, + 128,0,1,128,0,1,128,0,255,255,128,255,255,128,1,128, + 0,1,128,0,1,128,0,1,128,0,1,128,0,1,128,0, + 1,128,0,5,7,7,8,1,253,56,56,112,112,96,96,224, + 7,2,2,9,1,6,254,254,3,3,3,8,3,0,224,224, + 224,8,21,21,11,2,255,3,6,6,6,4,12,12,12,24, + 24,24,48,48,48,96,96,96,64,192,192,192,13,20,40,16, + 1,0,15,128,63,192,112,224,96,112,96,112,224,48,224,48, + 224,56,224,56,224,56,224,56,224,56,224,56,224,48,224,48, + 96,112,112,112,48,224,63,192,15,128,7,20,20,16,4,0, + 30,62,126,254,206,14,14,14,14,14,14,14,14,14,14,14, + 14,14,14,14,12,20,40,16,2,0,31,128,63,192,112,96, + 112,112,224,112,0,112,0,112,0,112,0,224,1,224,3,192, + 3,128,7,0,14,0,28,0,60,0,120,0,240,0,255,240, + 255,240,13,20,40,16,1,0,15,128,63,224,112,112,112,48, + 224,56,0,56,0,48,0,224,7,192,7,192,0,224,0,112, + 0,56,0,56,224,56,224,56,224,56,112,112,63,224,31,128, + 14,20,40,16,1,0,0,240,1,240,1,240,3,240,7,112, + 6,112,14,112,28,112,24,112,56,112,112,112,96,112,224,112, + 255,252,255,252,0,112,0,112,0,112,0,112,0,112,13,20, + 40,16,1,0,255,224,255,224,224,0,224,0,224,0,224,0, + 224,0,239,128,255,224,240,112,224,112,224,48,0,56,0,56, + 0,56,224,48,224,112,112,224,127,192,31,128,13,20,40,16, + 1,0,15,192,63,224,120,112,112,48,224,56,224,0,224,0, + 231,192,255,224,248,240,224,56,224,56,224,56,224,56,224,56, + 224,56,96,48,48,112,63,224,15,128,12,20,40,16,2,0, + 255,240,255,240,0,112,0,112,0,96,0,224,0,224,1,192, + 1,192,1,128,3,128,3,128,3,0,7,0,7,0,14,0, + 14,0,14,0,28,0,28,0,13,20,40,16,1,0,15,128, + 63,224,112,112,224,48,224,56,224,56,96,48,112,112,31,192, + 31,192,56,96,96,48,224,56,224,56,224,56,224,56,224,56, + 112,112,63,224,15,128,13,20,40,16,1,0,31,192,63,224, + 112,112,224,56,224,56,224,56,224,56,224,56,224,56,112,120, + 63,248,31,56,0,56,0,56,0,56,96,48,96,112,112,224, + 63,192,31,128}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--28-280-72-72-P-133-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 20, '1' Height: 20 + Calculated Max Values w=26 h=29 x= 7 y=16 dx=29 dy= 0 ascent=22 len=96 + Font Bounding box w=38 h=35 x=-2 y=-7 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =20 descent=-5 + X Font ascent =20 descent=-5 + Max Font ascent =22 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur20r[3976] U8G_SECTION(".progmem.u8g_font_fur20r") = { + 0,38,35,254,249,20,5,12,11,23,32,127,251,22,249,20, + 251,0,0,0,8,0,0,3,20,20,11,4,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,0,0,224,224, + 224,9,8,16,13,2,12,227,128,227,128,227,0,227,0,227, + 0,195,0,195,0,67,0,18,20,60,21,1,0,0,195,0, + 0,195,0,0,195,0,1,198,0,1,134,0,1,134,0,31, + 255,192,63,255,192,3,12,0,3,24,0,6,24,0,6,24, + 0,127,255,128,255,255,0,12,48,0,12,48,0,28,96,0, + 24,96,0,24,96,0,24,192,0,14,25,50,16,1,253,2, + 0,2,0,31,192,63,224,114,112,98,48,226,56,226,0,226, + 0,114,0,126,0,63,224,15,240,2,248,2,56,2,28,226, + 28,226,28,226,24,114,56,127,240,31,192,2,0,2,0,2, + 0,23,20,60,25,1,0,30,0,192,127,128,192,97,129,128, + 225,193,0,225,195,0,225,198,0,225,198,0,97,140,0,127, + 136,0,30,24,224,0,49,248,0,51,156,0,103,14,0,71, + 14,0,199,14,1,135,14,1,135,14,3,3,12,2,3,252, + 6,0,240,19,20,60,22,2,0,7,192,0,31,240,0,56, + 48,0,56,48,0,56,48,0,56,112,0,29,224,0,15,192, + 0,31,3,128,63,131,128,115,195,128,225,227,128,224,243,0, + 224,123,0,224,63,0,224,30,0,112,15,0,120,31,128,63, + 251,192,15,225,224,3,8,8,10,4,12,224,224,192,192,192, + 192,192,192,5,24,24,10,3,252,24,48,48,112,112,96,96, + 224,224,224,224,224,224,224,224,224,224,96,96,112,112,48,48, + 24,5,24,24,10,3,252,192,192,96,96,96,112,112,48,48, + 48,56,56,56,56,48,48,48,112,112,96,96,96,192,192,11, + 11,22,19,4,9,17,0,49,128,27,0,27,0,14,0,255, + 224,142,32,27,0,27,0,49,128,17,0,17,16,48,29,6, + 0,1,128,0,1,128,0,1,128,0,1,128,0,1,128,0, + 1,128,0,1,128,0,255,255,128,255,255,128,1,128,0,1, + 128,0,1,128,0,1,128,0,1,128,0,1,128,0,1,128, + 0,5,7,7,8,1,253,56,56,112,112,96,96,224,7,2, + 2,9,1,6,254,254,3,3,3,8,3,0,224,224,224,8, + 21,21,11,2,255,3,6,6,6,4,12,12,12,24,24,24, + 48,48,48,96,96,96,64,192,192,192,13,20,40,16,1,0, + 15,128,63,192,112,224,96,112,96,112,224,48,224,48,224,56, + 224,56,224,56,224,56,224,56,224,56,224,48,224,48,96,112, + 112,112,48,224,63,192,15,128,7,20,20,16,4,0,30,62, + 126,254,206,14,14,14,14,14,14,14,14,14,14,14,14,14, + 14,14,12,20,40,16,2,0,31,128,63,192,112,96,112,112, + 224,112,0,112,0,112,0,112,0,224,1,224,3,192,3,128, + 7,0,14,0,28,0,60,0,120,0,240,0,255,240,255,240, + 13,20,40,16,1,0,15,128,63,224,112,112,112,48,224,56, + 0,56,0,48,0,224,7,192,7,192,0,224,0,112,0,56, + 0,56,224,56,224,56,224,56,112,112,63,224,31,128,14,20, + 40,16,1,0,0,240,1,240,1,240,3,240,7,112,6,112, + 14,112,28,112,24,112,56,112,112,112,96,112,224,112,255,252, + 255,252,0,112,0,112,0,112,0,112,0,112,13,20,40,16, + 1,0,255,224,255,224,224,0,224,0,224,0,224,0,224,0, + 239,128,255,224,240,112,224,112,224,48,0,56,0,56,0,56, + 224,48,224,112,112,224,127,192,31,128,13,20,40,16,1,0, + 15,192,63,224,120,112,112,48,224,56,224,0,224,0,231,192, + 255,224,248,240,224,56,224,56,224,56,224,56,224,56,224,56, + 96,48,48,112,63,224,15,128,12,20,40,16,2,0,255,240, + 255,240,0,112,0,112,0,96,0,224,0,224,1,192,1,192, + 1,128,3,128,3,128,3,0,7,0,7,0,14,0,14,0, + 14,0,28,0,28,0,13,20,40,16,1,0,15,128,63,224, + 112,112,224,48,224,56,224,56,96,48,112,112,31,192,31,192, + 56,96,96,48,224,56,224,56,224,56,224,56,224,56,112,112, + 63,224,15,128,13,20,40,16,1,0,31,192,63,224,112,112, + 224,56,224,56,224,56,224,56,224,56,224,56,112,120,63,248, + 31,56,0,56,0,56,0,56,96,48,96,112,112,224,63,192, + 31,128,3,14,14,8,3,0,224,224,224,0,0,0,0,0, + 0,0,0,224,224,224,4,17,17,8,2,253,112,112,112,0, + 0,0,0,0,0,0,112,112,96,224,192,192,192,17,14,42, + 29,6,1,0,1,128,0,15,128,0,124,0,1,224,0,15, + 0,0,120,0,0,224,0,0,240,0,0,62,0,0,7,128, + 0,0,240,0,0,62,0,0,7,128,0,0,128,17,7,21, + 29,6,5,255,255,128,255,255,128,0,0,0,0,0,0,0, + 0,0,255,255,128,255,255,128,17,14,42,29,6,1,192,0, + 0,248,0,0,31,0,0,3,192,0,0,120,0,0,15,0, + 0,3,128,0,7,128,0,62,0,0,240,0,7,128,0,62, + 0,0,240,0,0,128,0,0,12,20,40,15,1,0,31,0, + 63,192,127,224,224,240,64,112,0,112,0,112,0,96,0,192, + 3,128,7,0,14,0,14,0,14,0,14,0,0,0,0,0, + 14,0,14,0,14,0,25,24,96,28,2,252,0,127,0,0, + 3,255,224,0,15,129,248,0,30,0,60,0,56,0,14,0, + 48,0,6,0,112,125,199,0,96,255,199,0,225,195,195,0, + 227,131,195,0,227,129,195,128,227,129,195,128,227,129,195,128, + 227,129,195,0,227,129,195,0,225,131,199,0,113,199,206,0, + 112,252,252,0,56,56,48,0,60,0,0,0,30,0,0,0, + 15,128,64,0,3,255,192,0,0,127,128,0,19,20,60,21, + 1,0,0,224,0,1,240,0,1,240,0,3,176,0,3,184, + 0,3,56,0,7,28,0,7,28,0,14,14,0,14,14,0, + 30,15,0,28,7,0,28,7,0,63,255,128,63,255,128,112, + 1,192,112,1,192,224,0,224,224,0,224,224,0,224,15,20, + 40,19,2,0,255,224,255,248,224,120,224,28,224,28,224,28, + 224,28,224,24,224,56,255,224,255,240,224,28,224,12,224,14, + 224,14,224,14,224,30,224,60,255,248,255,224,16,20,40,19, + 2,0,7,240,31,252,60,14,48,6,112,7,96,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,96,0, + 96,7,112,6,56,14,31,252,7,240,16,20,40,20,2,0, + 255,192,255,240,224,120,224,28,224,14,224,14,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,14,224,14, + 224,28,224,120,255,240,255,192,13,20,40,17,2,0,255,248, + 255,248,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 255,240,255,240,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,255,248,255,248,12,20,40,16,2,0,255,240,255,240, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,255,224, + 255,224,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,18,20,60,22,2,0,3,248,0,15,254,0, + 30,15,128,56,3,128,112,1,192,96,0,0,224,0,0,224, + 0,0,224,0,0,224,63,192,224,63,192,224,1,192,224,1, + 192,224,1,192,112,1,192,112,1,192,56,1,192,30,7,192, + 15,255,192,3,254,0,15,20,40,19,2,0,224,14,224,14, + 224,14,224,14,224,14,224,14,224,14,224,14,224,14,255,254, + 255,254,224,14,224,14,224,14,224,14,224,14,224,14,224,14, + 224,14,224,14,3,20,20,7,2,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,12,20, + 40,16,2,0,0,112,0,112,0,112,0,112,0,112,0,112, + 0,112,0,112,0,112,0,112,0,112,0,112,0,112,0,112, + 0,112,224,112,224,96,113,224,63,192,31,128,15,20,40,18, + 2,0,224,60,224,120,224,240,224,224,225,192,227,128,231,0, + 238,0,252,0,254,0,238,0,239,0,231,128,227,192,225,224, + 224,240,224,120,224,56,224,60,224,30,12,20,40,15,2,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,255,240,255,240,21,20,60,25,2,0,248,0, + 248,248,0,248,248,1,248,252,1,248,252,1,184,236,3,184, + 238,3,184,238,3,56,230,7,56,231,6,56,227,14,56,227, + 142,56,227,140,56,225,156,56,225,220,56,225,216,56,224,248, + 56,224,240,56,224,112,56,224,112,56,16,20,40,20,2,0, + 240,7,248,7,248,7,252,7,252,7,238,7,238,7,231,7, + 231,135,227,135,227,199,225,199,224,231,224,231,224,119,224,119, + 224,63,224,63,224,31,224,31,18,20,60,22,2,0,3,240, + 0,15,252,0,62,31,0,56,7,0,112,3,128,96,1,128, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,96,1,192,112,3,128,112,3,128,56,7, + 0,30,30,0,15,252,0,3,240,0,14,20,40,17,2,0, + 255,192,255,240,224,120,224,56,224,28,224,28,224,28,224,56, + 224,120,255,240,255,192,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,20,20,60,22,2,0,3,240, + 0,15,252,0,62,31,0,56,7,0,112,3,128,96,1,128, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,96,1,192,112,3,128,112,3,128,56,7, + 0,30,30,0,15,255,240,3,255,240,14,20,40,17,2,0, + 255,192,255,240,224,120,224,56,224,28,224,28,224,28,224,56, + 224,112,255,224,255,224,224,112,224,56,224,56,224,56,224,24, + 224,24,224,24,224,28,224,28,15,20,40,19,2,0,15,192, + 63,240,120,120,96,28,224,28,224,0,224,0,120,0,127,0, + 63,240,7,252,0,60,0,14,0,14,224,14,224,14,224,14, + 120,60,63,248,15,192,16,20,40,18,1,0,255,255,255,255, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,192,16,20,40,20,2,0,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,96,6,112,14,60,60,31,248, + 15,224,17,20,60,18,1,0,224,3,128,224,7,0,224,7, + 0,112,7,0,112,14,0,112,14,0,56,14,0,56,28,0, + 56,28,0,28,56,0,28,56,0,12,56,0,14,112,0,14, + 112,0,7,112,0,7,224,0,7,224,0,3,224,0,3,192, + 0,3,192,0,26,20,80,27,1,0,224,28,1,192,224,30, + 3,128,224,62,3,128,224,62,3,128,112,54,3,0,112,119, + 7,0,112,115,7,0,48,99,7,0,56,99,134,0,56,227, + 142,0,24,225,142,0,28,193,140,0,28,193,220,0,29,193, + 220,0,13,192,216,0,15,128,216,0,15,128,248,0,7,128, + 120,0,7,0,112,0,7,0,112,0,18,20,60,20,1,0, + 120,7,128,56,7,0,60,14,0,30,30,0,14,28,0,15, + 56,0,7,56,0,3,240,0,1,224,0,1,224,0,3,224, + 0,3,240,0,7,120,0,14,56,0,14,28,0,28,30,0, + 56,15,0,120,7,0,112,7,128,224,3,192,17,20,60,19, + 1,0,224,3,128,240,7,0,112,7,0,56,14,0,60,28, + 0,28,28,0,14,56,0,14,48,0,7,112,0,7,96,0, + 3,224,0,1,192,0,1,192,0,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,1,192,0,15,20, + 40,17,1,0,255,252,255,252,0,28,0,56,0,120,0,240, + 0,224,1,192,3,192,3,128,7,0,14,0,30,0,28,0, + 56,0,112,0,240,0,224,0,255,254,255,254,5,25,25,11, + 3,251,248,248,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,248,248,9,21,42,11,1, + 255,192,0,96,0,96,0,96,0,48,0,48,0,48,0,24, + 0,24,0,24,0,8,0,12,0,12,0,12,0,6,0,6, + 0,6,0,3,0,3,0,3,0,1,128,6,25,25,12,3, + 251,252,252,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,252,252,14,17,34,28,7,0, + 3,0,3,0,7,128,7,128,4,128,12,192,8,64,24,96, + 24,96,16,32,48,48,48,48,96,24,96,24,64,8,192,12, + 192,12,14,2,4,14,0,252,255,252,255,252,6,5,5,6, + 255,16,224,112,48,24,12,12,14,28,15,1,0,31,192,63, + 224,112,112,112,112,0,112,15,240,63,240,112,112,224,112,224, + 112,224,112,224,240,127,176,30,48,13,20,40,16,2,0,224, + 0,224,0,224,0,224,0,224,0,224,0,231,192,255,224,240, + 112,224,48,224,56,224,56,224,56,224,56,224,56,224,56,224, + 112,240,112,255,224,231,128,12,14,28,14,1,0,31,128,63, + 224,112,112,224,112,224,112,224,0,224,0,224,0,224,0,224, + 112,96,112,112,224,63,224,31,128,13,20,40,16,1,0,0, + 56,0,56,0,56,0,56,0,56,0,56,31,56,63,248,112, + 248,96,120,224,56,224,56,224,56,224,56,224,56,224,56,112, + 56,112,120,63,248,15,184,13,14,28,15,1,0,15,128,63, + 224,112,112,96,48,224,56,255,248,255,248,224,0,224,0,224, + 56,96,112,112,112,63,224,15,128,9,20,40,10,1,0,7, + 128,31,128,28,0,28,0,28,0,28,0,255,128,255,128,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,13,19,38,16,1,251,31,184,63, + 248,112,120,96,56,224,56,224,56,224,56,224,56,224,56,224, + 56,96,56,112,120,63,248,31,56,0,56,112,48,112,112,63, + 224,15,128,12,20,40,16,2,0,224,0,224,0,224,0,224, + 0,224,0,224,0,239,192,255,224,240,240,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,3,20,20,7,2,0,224,224,224,0,0,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,5,25,25,7,1, + 251,56,56,56,0,0,0,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,240,224,11,20,40,14,2,0, + 224,0,224,0,224,0,224,0,224,0,224,0,225,224,225,192, + 227,128,231,0,238,0,252,0,252,0,254,0,238,0,231,0, + 227,128,227,192,225,192,224,224,3,20,20,7,2,0,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,21,14,42,25,2,0,231,195,224,255,239,240,240,248, + 56,224,120,56,224,112,24,224,112,24,224,112,24,224,112,24, + 224,112,24,224,112,24,224,112,24,224,112,24,224,112,24,224, + 112,24,12,14,28,16,2,0,239,128,255,224,240,240,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,14,14,28,16,1,0,15,192,63,224,112,112, + 112,56,224,24,224,28,224,28,224,28,224,28,224,24,112,56, + 112,112,63,224,15,192,14,19,38,17,2,251,231,192,255,240, + 240,112,240,56,224,24,224,28,224,28,224,28,224,28,224,24, + 224,56,240,112,255,240,231,192,224,0,224,0,224,0,224,0, + 224,0,14,19,38,17,1,251,15,156,63,220,112,124,112,60, + 224,28,224,28,224,28,224,28,224,28,224,28,96,60,112,124, + 63,252,15,156,0,28,0,28,0,28,0,28,0,28,8,14, + 14,10,2,0,239,255,240,224,224,224,224,224,224,224,224,224, + 224,224,12,14,28,14,1,0,31,128,127,192,112,224,224,224, + 224,0,120,0,63,128,15,224,0,224,0,112,224,112,224,224, + 127,192,63,128,8,18,18,10,1,0,8,56,56,56,255,255, + 56,56,56,56,56,56,56,56,56,56,31,15,12,14,28,16, + 2,0,224,112,224,112,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,240,240,127,240,63,112,13,14, + 28,15,1,0,224,24,224,56,224,56,112,48,112,112,56,96, + 56,224,24,192,28,192,29,192,15,128,15,128,7,0,7,0, + 21,14,42,23,1,0,192,112,24,224,248,56,224,248,56,96, + 216,48,97,216,112,113,156,112,49,140,96,51,140,224,59,14, + 224,27,6,192,27,7,192,30,7,128,14,3,128,14,3,128, + 13,14,28,15,1,0,240,56,112,112,56,96,28,224,31,192, + 15,128,7,0,7,128,15,192,29,192,56,224,112,112,112,120, + 224,56,13,19,38,15,1,251,224,24,224,56,96,56,112,112, + 112,112,56,96,56,224,28,224,29,192,13,192,15,128,15,128, + 7,128,7,0,7,0,6,0,14,0,14,0,12,0,10,14, + 28,12,1,0,255,192,255,192,1,192,3,128,7,0,14,0, + 14,0,28,0,56,0,48,0,112,0,224,0,255,192,255,192, + 9,27,54,13,2,249,3,128,15,128,14,0,12,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,56,0,248,0, + 240,0,240,0,56,0,24,0,28,0,28,0,28,0,28,0, + 12,0,12,0,12,0,14,0,15,128,3,128,1,29,29,9, + 4,249,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,9, + 27,54,13,2,249,240,0,248,0,24,0,28,0,28,0,28, + 0,28,0,28,0,28,0,12,0,12,0,14,0,7,128,3, + 128,7,128,14,0,12,0,12,0,28,0,28,0,28,0,28, + 0,28,0,28,0,24,0,248,0,240,0,15,3,6,15,0, + 5,62,14,127,252,224,248,255}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--34-340-72-72-P-161-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 25, '1' Height: 25 + Calculated Max Values w=31 h=37 x= 8 y=22 dx=34 dy= 0 ascent=36 len=132 + Font Bounding box w=46 h=45 x=-2 y=-9 + Calculated Min Values x=-1 y=-9 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =36 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur25[11949] U8G_SECTION(".progmem.u8g_font_fur25") = { + 0,46,45,254,247,25,6,119,15,27,32,255,249,36,247,25, + 249,0,0,0,10,0,0,3,25,25,12,4,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 0,0,0,224,224,224,11,10,20,15,2,15,241,224,112,224, + 112,224,112,224,112,224,112,224,112,224,96,192,96,192,96,192, + 22,25,75,25,2,0,0,112,224,0,112,224,0,96,192,0, + 225,192,0,225,192,0,193,128,0,193,128,63,255,252,63,255, + 248,1,131,0,3,135,0,3,134,0,3,6,0,7,14,0, + 255,255,224,255,255,224,14,28,0,14,28,0,12,24,0,12, + 24,0,28,56,0,28,56,0,24,48,0,56,112,0,56,112, + 0,16,32,64,18,1,252,1,128,1,128,1,128,15,240,31, + 248,63,252,121,158,113,142,113,142,113,142,113,128,113,128,121, + 128,63,128,31,240,15,252,1,254,1,159,1,143,1,135,225, + 135,225,135,225,135,241,135,121,143,127,254,63,252,15,240,1, + 128,1,128,1,128,1,128,28,27,108,32,2,0,0,0,14, + 0,0,0,12,0,31,128,24,0,63,192,24,0,121,224,48, + 0,240,240,48,0,224,112,96,0,224,112,224,0,224,112,192, + 0,224,113,192,0,240,113,128,0,112,227,128,0,63,227,0, + 0,31,134,31,128,0,6,63,192,0,12,121,224,0,12,240, + 240,0,24,224,112,0,56,224,112,0,48,224,112,0,112,224, + 112,0,96,224,112,0,224,224,112,0,192,240,240,1,128,121, + 224,1,128,63,192,3,0,31,128,23,25,75,26,2,1,7, + 248,0,15,252,0,30,30,0,28,14,0,28,14,0,28,14, + 0,30,28,0,30,60,0,15,248,0,7,224,0,15,192,112, + 31,224,112,61,224,112,120,240,112,240,120,112,224,60,112,224, + 30,224,224,15,224,224,7,224,240,3,192,120,3,224,124,15, + 240,63,255,120,31,252,124,7,240,62,4,10,10,13,4,15, + 240,112,112,112,112,112,112,96,96,96,6,30,30,12,3,251, + 12,24,24,56,56,112,112,112,112,240,224,224,224,224,224,224, + 224,224,224,224,240,112,112,112,112,56,56,24,24,12,6,30, + 30,12,3,251,224,96,112,112,48,56,56,56,56,28,28,28, + 28,28,28,28,28,28,28,28,28,60,56,56,56,48,112,112, + 96,224,14,13,26,22,4,12,24,96,28,224,28,224,12,192, + 7,128,243,60,255,252,231,156,7,128,12,192,28,224,60,224, + 24,96,20,21,63,34,7,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,255,255,240,255,255,240,0,96,0,0,96,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,6,9,9,9,2,252,60,120,120, + 112,112,224,224,224,192,8,3,3,10,1,7,255,255,255,3, + 4,4,9,3,0,224,224,224,224,10,28,56,13,2,254,0, + 192,1,192,1,128,1,128,3,128,3,0,3,0,3,0,7, + 0,6,0,6,0,14,0,12,0,12,0,28,0,28,0,24, + 0,24,0,56,0,48,0,48,0,112,0,112,0,96,0,96, + 0,224,0,192,0,192,0,15,25,50,19,2,1,15,224,63, + 248,62,248,120,60,112,28,112,30,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,240, + 14,112,30,112,28,120,28,60,60,63,248,31,240,7,192,8, + 25,25,19,5,0,15,31,63,127,255,231,135,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,15,25, + 50,19,2,1,15,240,63,248,62,252,120,28,120,30,112,14, + 240,14,0,14,0,30,0,28,0,60,0,120,0,120,0,240, + 1,224,3,192,7,128,15,0,31,0,62,0,60,0,120,0, + 240,0,255,254,255,254,16,25,50,19,2,1,15,240,63,248, + 60,28,120,14,112,14,112,14,0,14,0,14,0,28,0,120, + 3,240,3,240,0,248,0,30,0,14,0,15,0,7,0,7, + 240,7,240,7,240,14,120,30,60,124,31,248,7,224,17,25, + 75,19,1,0,0,60,0,0,124,0,0,124,0,0,252,0, + 1,220,0,1,220,0,3,156,0,7,28,0,7,28,0,14, + 28,0,28,28,0,60,28,0,56,28,0,112,28,0,240,28, + 0,224,28,0,255,255,128,255,255,128,255,255,128,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,15, + 25,50,19,2,0,127,252,127,252,127,252,112,0,112,0,112, + 0,112,0,112,0,115,240,127,248,124,60,120,28,112,30,96, + 14,0,14,0,14,0,14,0,14,0,14,224,30,240,28,112, + 60,124,120,63,240,15,192,16,25,50,19,1,1,15,240,31, + 252,60,28,120,30,112,14,240,14,224,0,224,0,224,0,227, + 240,231,252,239,252,252,30,248,14,240,15,240,7,240,7,240, + 7,240,7,112,7,120,14,56,14,62,60,15,248,7,224,15, + 25,50,19,2,0,255,254,255,254,0,14,0,30,0,28,0, + 28,0,60,0,56,0,56,0,120,0,112,0,240,0,240,0, + 224,1,224,1,224,1,192,3,192,3,128,7,128,7,128,7, + 0,15,0,15,0,14,0,16,25,50,19,1,1,15,240,63, + 252,60,60,120,30,112,14,112,14,112,14,112,14,56,28,60, + 60,15,240,15,240,62,56,56,28,112,14,224,7,224,7,224, + 7,224,7,224,7,240,15,120,14,60,60,31,248,7,224,16, + 25,50,19,2,1,31,248,63,252,120,30,112,14,240,15,224, + 15,224,15,224,15,224,15,240,15,112,31,120,63,63,247,15, + 231,0,7,0,7,0,7,0,14,112,14,112,14,112,30,112, + 60,60,120,31,240,15,224,3,18,18,9,3,0,224,224,224, + 224,0,0,0,0,0,0,0,0,0,0,224,224,224,224,6, + 22,22,9,1,252,56,56,56,56,0,0,0,0,0,0,0, + 0,0,60,56,56,56,112,112,112,96,224,21,19,57,34,7, + 1,0,0,8,0,0,56,0,1,240,0,15,192,0,62,0, + 1,248,0,7,192,0,62,0,0,248,0,0,192,0,0,248, + 0,0,62,0,0,7,192,0,1,248,0,0,62,0,0,7, + 192,0,1,248,0,0,56,0,0,8,20,8,24,34,7,6, + 255,255,240,255,255,240,0,0,0,0,0,0,0,0,0,0, + 0,0,255,255,240,255,255,240,21,17,51,34,7,2,224,0, + 0,252,0,0,31,0,0,7,224,0,0,248,0,0,31,0, + 0,7,192,0,0,248,0,0,56,0,0,248,0,7,192,0, + 63,0,0,248,0,7,224,0,31,0,0,248,0,0,224,0, + 0,15,25,50,18,1,1,31,224,63,248,125,252,240,30,96, + 14,0,14,0,14,0,30,0,28,0,60,0,120,0,240,1, + 192,3,128,7,128,7,0,7,0,7,0,7,0,0,0,0, + 0,0,0,7,0,7,0,7,0,30,30,120,34,2,251,0, + 31,240,0,0,255,254,0,3,255,255,0,7,224,31,192,15, + 128,3,224,30,0,0,240,60,0,0,112,56,31,56,120,112, + 63,184,56,112,125,248,56,240,112,120,60,224,240,120,28,224, + 224,56,28,224,224,56,28,224,224,56,28,224,224,56,28,224, + 224,56,28,224,224,56,56,240,224,120,56,112,112,120,120,112, + 120,254,240,120,63,223,224,56,31,15,192,60,0,0,0,30, + 0,0,0,15,128,0,0,7,224,0,0,3,255,248,0,0, + 255,248,0,0,31,240,0,24,25,75,26,1,0,0,60,0, + 0,124,0,0,126,0,0,254,0,0,238,0,0,239,0,1, + 231,0,1,199,128,3,195,128,3,131,192,7,131,192,7,1, + 192,7,1,224,15,0,224,14,0,240,31,255,240,31,255,240, + 31,255,248,60,0,56,56,0,60,120,0,28,112,0,30,112, + 0,30,240,0,14,224,0,15,18,25,75,23,3,0,255,248, + 0,255,254,0,255,255,0,224,15,128,224,7,128,224,3,128, + 224,3,128,224,3,128,224,7,128,224,15,0,255,254,0,255, + 252,0,255,254,0,224,15,0,224,3,128,224,3,192,224,1, + 192,224,1,192,224,1,192,224,3,192,224,7,192,224,15,128, + 255,255,0,255,254,0,255,248,0,19,25,75,23,2,1,3, + 254,0,15,255,128,30,3,192,60,1,192,56,0,224,112,0, + 224,112,0,0,112,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,112,0,0,112,0,224,112,0,224,56,1,224,60,1, + 192,31,7,128,15,255,0,1,252,0,20,25,75,25,3,0, + 255,240,0,255,254,0,255,255,0,224,31,128,224,7,192,224, + 3,192,224,1,224,224,0,224,224,0,240,224,0,240,224,0, + 112,224,0,112,224,0,112,224,0,112,224,0,112,224,0,240, + 224,0,240,224,0,224,224,1,224,224,3,192,224,7,192,224, + 31,128,255,255,0,255,252,0,255,240,0,16,25,50,21,3, + 0,255,254,255,254,255,254,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,255,254,255,254,255,254,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,255,255,255, + 255,255,255,15,25,50,20,3,0,255,254,255,254,255,254,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,255, + 252,255,252,255,252,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,21,25,75,26,2, + 1,1,255,128,7,255,192,15,255,224,30,0,240,60,0,120, + 120,0,56,112,0,0,112,0,0,240,0,0,224,0,0,224, + 0,0,224,15,248,224,15,248,224,15,248,224,0,56,240,0, + 56,112,0,56,112,0,56,120,0,56,60,0,56,62,0,56, + 31,0,248,15,255,248,7,255,240,0,255,128,18,25,75,24, + 3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,3,25,25, + 9,3,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,14,25,50,19, + 2,0,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,224,28,224,28,240,60,120,120,127,240, + 63,224,15,192,18,25,75,23,3,0,224,7,128,224,15,0, + 224,30,0,224,60,0,224,120,0,224,240,0,225,224,0,227, + 192,0,231,128,0,239,0,0,254,0,0,255,0,0,239,128, + 0,231,128,0,231,192,0,227,224,0,225,240,0,224,248,0, + 224,120,0,224,60,0,224,62,0,224,31,0,224,15,128,224, + 7,192,224,3,192,15,25,50,19,3,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,255,254,255,254,255,254,25,25,100, + 31,3,0,248,0,15,128,252,0,31,128,252,0,31,128,252, + 0,31,128,238,0,59,128,238,0,59,128,239,0,123,128,231, + 0,115,128,231,0,115,128,231,128,243,128,227,128,227,128,227, + 128,227,128,225,193,195,128,225,193,195,128,225,193,195,128,224, + 227,131,128,224,227,131,128,224,247,131,128,224,119,3,128,224, + 119,3,128,224,127,3,128,224,62,3,128,224,62,3,128,224, + 28,3,128,224,28,3,128,19,25,75,25,3,0,248,0,224, + 248,0,224,252,0,224,254,0,224,254,0,224,239,0,224,239, + 0,224,231,128,224,231,128,224,227,192,224,227,192,224,225,224, + 224,224,224,224,224,240,224,224,120,224,224,120,224,224,60,224, + 224,60,224,224,30,224,224,30,224,224,15,224,224,15,224,224, + 7,224,224,3,224,224,3,224,22,25,75,26,2,1,3,255, + 0,15,255,192,31,255,224,62,1,240,56,0,112,120,0,120, + 112,0,56,240,0,56,240,0,28,224,0,28,224,0,28,224, + 0,28,224,0,28,224,0,28,224,0,28,240,0,60,112,0, + 56,112,0,56,120,0,120,56,0,112,60,0,240,31,3,224, + 15,255,192,7,255,128,0,252,0,16,25,50,21,3,0,255, + 224,255,252,255,254,224,30,224,15,224,7,224,7,224,7,224, + 7,224,15,224,30,255,254,255,252,255,224,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,24,25,75,27,2,1,3,255,0,15,255,192,31,255,224, + 62,1,240,56,0,112,120,0,120,112,0,56,240,0,56,240, + 0,28,224,0,28,224,0,28,224,0,28,224,0,28,224,0, + 28,224,0,28,240,0,60,112,0,56,112,0,56,120,0,120, + 56,0,112,60,0,240,31,3,224,15,255,255,7,255,255,0, + 255,255,17,25,75,21,3,0,255,240,0,255,252,0,255,254, + 0,224,31,0,224,15,0,224,7,0,224,7,0,224,7,0, + 224,15,0,224,30,0,255,252,0,255,240,0,255,252,0,224, + 60,0,224,30,0,224,14,0,224,14,0,224,14,0,224,15, + 0,224,7,0,224,7,0,224,7,0,224,7,0,224,7,0, + 224,7,128,18,25,75,22,2,1,7,252,0,31,254,0,63, + 255,0,120,7,128,112,3,128,112,3,128,112,0,0,112,0, + 0,120,0,0,124,0,0,63,192,0,31,252,0,7,255,0, + 0,63,128,0,7,128,0,3,192,0,1,192,224,1,192,224, + 1,192,240,1,192,112,3,192,124,15,128,63,255,0,31,254, + 0,7,240,0,19,25,75,21,1,0,255,255,224,255,255,224, + 255,255,224,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,19,25,75,25,3,0,224,0,224,224,0, + 224,224,0,224,224,0,224,224,0,224,224,0,224,224,0,224, + 224,0,224,224,0,224,224,0,224,224,0,224,224,0,224,224, + 0,224,224,0,224,224,0,224,224,0,224,224,0,224,240,0, + 224,240,1,224,112,1,192,120,3,192,62,7,192,63,255,128, + 31,255,0,3,248,0,21,25,75,22,1,0,240,0,120,240, + 0,240,240,0,240,120,0,240,120,1,224,120,1,224,60,1, + 192,60,3,192,60,3,192,28,3,128,30,7,128,14,7,128, + 14,7,0,15,15,0,7,15,0,7,14,0,7,158,0,3, + 158,0,3,156,0,3,252,0,1,252,0,1,248,0,1,248, + 0,0,248,0,0,240,0,31,25,100,33,1,0,224,7,192, + 14,240,7,192,14,240,7,192,30,112,7,192,30,112,14,224, + 28,120,14,224,60,120,14,224,60,56,14,240,56,56,28,112, + 56,60,28,112,120,28,28,112,120,28,60,56,112,28,56,56, + 112,30,56,56,240,14,56,56,224,14,112,28,224,14,112,28, + 224,7,112,29,192,7,112,29,192,7,224,15,192,7,224,15, + 192,3,224,15,128,3,224,7,128,3,192,7,128,1,192,7, + 0,22,25,75,24,1,0,124,0,120,60,0,240,30,1,224, + 31,1,224,15,3,192,7,135,128,7,135,128,3,207,0,1, + 238,0,1,254,0,0,252,0,0,120,0,0,252,0,0,252, + 0,1,222,0,3,207,0,3,143,0,7,135,128,15,3,192, + 14,3,192,30,1,224,60,1,240,56,0,240,120,0,120,240, + 0,124,21,25,75,23,1,0,240,0,120,120,0,112,120,0, + 240,60,1,224,30,1,224,30,3,192,15,3,128,15,7,128, + 7,135,0,3,143,0,3,206,0,1,252,0,1,252,0,0, + 248,0,0,120,0,0,112,0,0,112,0,0,112,0,0,112, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + 0,112,0,18,25,75,22,2,0,127,255,192,127,255,192,127, + 255,192,0,3,192,0,7,128,0,15,128,0,31,0,0,30, + 0,0,60,0,0,124,0,0,248,0,0,240,0,1,224,0, + 3,224,0,7,192,0,15,128,0,15,0,0,31,0,0,62, + 0,0,124,0,0,120,0,0,240,0,0,255,255,192,255,255, + 192,255,255,192,7,32,32,14,4,249,254,254,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,254,254,10,28,56,13,2,254, + 192,0,192,0,224,0,224,0,96,0,96,0,112,0,48,0, + 48,0,56,0,56,0,24,0,24,0,28,0,12,0,12,0, + 14,0,6,0,6,0,6,0,7,0,3,0,3,0,3,128, + 1,128,1,128,1,128,1,192,6,32,32,14,4,249,252,252, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,252,252,18,21, + 63,34,8,0,0,192,0,1,224,0,1,224,0,1,224,0, + 3,48,0,3,48,0,2,16,0,6,24,0,6,24,0,12, + 12,0,12,12,0,12,12,0,24,6,0,24,6,0,24,6, + 0,48,3,0,48,3,0,112,1,128,96,1,128,96,1,128, + 192,0,192,17,2,6,17,0,251,255,255,128,255,255,128,6, + 6,6,8,0,21,224,224,112,56,24,12,15,18,36,19,2, + 0,15,240,63,252,60,60,120,30,112,14,0,14,0,14,15, + 254,63,254,124,14,112,14,224,14,224,30,224,30,240,62,120, + 238,63,238,15,142,16,25,50,20,2,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,227,240,239,248,238,124,248, + 30,240,14,240,15,224,7,224,7,224,7,224,7,224,7,224, + 15,240,14,240,14,248,28,254,124,239,248,227,224,14,18,36, + 18,2,0,15,224,63,240,124,120,112,60,112,28,240,28,224, + 0,224,0,224,0,224,0,224,0,224,0,240,28,112,28,112, + 60,60,120,31,240,15,224,16,25,50,20,2,0,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,15,199,31,247,60, + 127,120,31,112,31,112,15,224,15,224,7,224,7,224,7,224, + 7,224,7,112,15,112,15,56,31,62,63,15,247,7,199,16, + 18,36,19,2,0,7,224,31,248,60,124,120,30,112,14,240, + 14,224,14,255,254,255,255,224,0,224,0,224,0,112,14,112, + 14,120,30,62,124,31,248,7,224,11,25,50,12,1,0,7, + 224,15,224,31,32,28,0,28,0,28,0,28,0,255,224,255, + 224,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,16,25,50,20,2,249,7,231,31,247,62,127,120,31,112, + 15,240,15,224,7,224,7,224,7,224,7,224,7,224,7,240, + 15,112,15,120,31,62,127,31,247,15,199,0,7,0,15,112, + 14,120,30,60,60,31,248,7,224,15,25,50,19,2,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,227,240,239, + 248,252,124,248,28,240,30,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,3,25,25,7,2,0,224,224,224,0,0,0,0,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 5,32,32,9,2,249,56,56,56,0,0,0,0,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,240,224,14,25,50,17,2,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,120,224,240,225,224, + 225,192,227,192,231,128,239,0,254,0,254,0,239,0,231,128, + 231,128,227,192,225,224,225,224,224,240,224,120,224,60,3,25, + 25,8,2,0,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,26,18,72, + 30,2,0,227,224,124,0,239,241,255,0,252,123,143,128,248, + 63,3,128,240,30,3,192,224,28,1,192,224,28,1,192,224, + 28,1,192,224,28,1,192,224,28,1,192,224,28,1,192,224, + 28,1,192,224,28,1,192,224,28,1,192,224,28,1,192,224, + 28,1,192,224,28,1,192,224,28,1,192,15,18,36,19,2, + 0,227,240,239,248,252,124,248,30,240,30,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,17,18,54,21,2,0,7,240,0,31,252, + 0,62,62,0,120,15,0,112,7,0,240,7,0,240,7,128, + 224,3,128,224,3,128,224,3,128,224,3,128,240,7,128,240, + 7,128,112,7,0,120,15,0,62,62,0,31,252,0,7,240, + 0,16,25,50,20,2,249,227,240,231,248,254,60,248,30,240, + 14,240,15,224,7,224,7,224,7,224,7,224,7,224,7,240, + 15,240,14,248,30,254,124,239,248,227,240,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,16,25,50,21,2,249,7, + 199,31,247,62,63,120,31,112,15,240,15,224,7,224,7,224, + 7,224,7,224,7,224,7,240,15,112,15,120,31,62,127,31, + 247,7,199,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,10,18,36,12,2,0,231,192,239,192,254,0,248,0,240, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,14,18,36,18,2, + 0,31,192,127,240,120,248,240,56,224,56,224,0,240,0,126, + 0,63,224,15,248,0,252,0,60,0,28,224,28,240,60,120, + 248,63,240,31,192,10,22,44,12,1,1,28,0,28,0,28, + 0,28,0,255,192,255,192,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,30,0,15,192,7,192,15,18,36,19,2,0,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,240,30,240,62,124,126,63,238,31, + 142,16,18,36,18,1,0,224,7,240,7,240,15,112,14,120, + 14,56,30,56,28,60,28,28,56,30,56,14,56,14,112,15, + 112,7,224,7,224,3,224,3,192,3,192,26,18,72,28,1, + 0,224,30,1,192,224,62,3,192,224,63,3,128,112,63,3, + 128,112,119,3,128,112,115,7,0,56,115,135,0,56,115,135, + 0,56,227,142,0,24,225,206,0,28,225,206,0,29,193,206, + 0,29,192,220,0,15,192,252,0,15,128,252,0,15,128,120, + 0,7,128,120,0,7,128,120,0,17,18,54,19,1,0,112, + 7,0,120,14,0,60,30,0,30,28,0,30,56,0,15,112, + 0,7,240,0,3,224,0,3,192,0,3,224,0,7,224,0, + 15,240,0,14,120,0,28,60,0,60,28,0,120,30,0,112, + 15,0,240,7,128,16,25,50,18,1,249,224,7,240,7,112, + 15,112,14,120,14,56,30,60,28,28,28,28,60,30,56,14, + 56,15,112,7,112,7,240,7,224,3,224,3,224,1,192,1, + 192,3,128,3,128,7,128,7,0,7,0,15,0,13,18,36, + 17,2,0,127,248,127,248,0,120,0,112,0,240,1,224,3, + 192,3,192,7,128,15,0,31,0,30,0,60,0,120,0,120, + 0,240,0,255,248,255,248,11,35,70,17,3,248,1,224,3, + 224,7,128,15,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,30,0,28,0,60,0,248,0,240, + 0,248,0,60,0,28,0,30,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,7,0,7,128,3, + 224,1,224,2,37,37,12,5,247,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,11,35, + 70,17,3,248,240,0,248,0,60,0,28,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,15,0, + 7,0,7,128,3,224,1,224,3,224,7,128,7,0,15,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,28,0,60,0,248,0,240,0,18,4,12,18,0,7, + 31,1,192,63,231,128,121,255,0,224,62,0,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0, + 10,0,0,3,25,25,13,5,249,224,224,224,0,0,0,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,14,26,52,19,2,252,0,48,0,48,0,32,0,96, + 15,224,63,240,124,248,112,220,112,156,241,156,225,128,225,128, + 227,0,227,0,227,0,226,0,246,28,118,28,124,60,60,120, + 63,240,15,192,24,0,24,0,16,0,48,0,17,26,78,19, + 1,0,0,64,0,7,252,0,15,254,0,30,15,0,60,7, + 128,56,3,128,56,0,0,56,0,0,56,0,0,56,0,0, + 255,224,0,255,224,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,255,255,0,255,255,0, + 18,19,57,20,1,6,64,0,128,224,1,192,113,227,128,63, + 255,0,31,62,0,28,14,0,24,6,0,48,3,0,48,3, + 0,48,3,0,48,3,0,48,3,0,24,6,0,28,14,0, + 31,62,0,55,251,0,113,225,128,224,1,192,64,0,128,18, + 25,75,20,1,0,240,1,192,112,3,192,120,3,128,56,7, + 128,60,7,0,28,15,0,30,14,0,254,15,192,255,31,192, + 7,28,0,7,184,0,3,184,0,3,240,0,255,255,192,255, + 255,192,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 2,33,33,12,5,249,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,0,0,0,0,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,12,31,62,16,2,251,31,224,63, + 224,56,32,112,0,112,0,112,0,120,0,124,0,62,0,31, + 128,15,192,63,224,120,240,240,112,224,112,224,112,224,240,241, + 224,127,192,63,128,31,128,7,224,1,224,0,240,0,112,0, + 112,0,112,0,240,65,224,127,192,63,128,10,3,6,10,0, + 22,225,192,225,192,225,192,26,25,100,30,2,1,0,255,192, + 0,3,255,240,0,7,128,120,0,14,0,28,0,28,127,14, + 0,57,255,135,0,115,227,195,0,99,129,225,128,103,128,225, + 128,199,0,0,192,199,0,0,192,199,0,0,192,199,0,0, + 192,199,0,0,192,199,0,0,192,199,0,224,128,99,129,225, + 128,99,195,193,128,49,255,131,0,48,127,7,0,24,0,14, + 0,14,0,28,0,7,128,120,0,1,255,224,0,0,127,128, + 0,12,17,34,14,1,8,31,128,63,192,120,224,96,96,0, + 96,7,224,63,224,56,96,96,96,96,96,96,224,113,224,63, + 96,30,96,0,0,0,0,255,240,13,14,28,19,3,2,14, + 56,28,56,56,112,56,224,112,224,113,192,227,192,227,192,113, + 192,112,224,56,224,24,112,28,56,14,56,18,8,24,21,2, + 7,255,255,192,255,255,192,0,0,192,0,0,192,0,0,192, + 0,0,192,0,0,192,0,0,192,255,26,25,100,30,2,1, + 0,255,192,0,3,255,240,0,7,128,120,0,14,255,156,0, + 24,255,206,0,48,193,231,0,112,192,99,0,96,192,97,128, + 96,192,97,128,192,192,192,192,192,255,128,192,192,255,128,192, + 192,193,192,192,192,192,192,192,192,192,192,192,192,192,225,128, + 96,192,97,128,96,192,97,128,48,192,99,0,56,0,7,0, + 28,0,14,0,15,0,60,0,7,193,248,0,1,255,224,0, + 0,127,128,0,10,2,4,10,0,22,255,192,255,192,7,7, + 7,11,2,18,56,196,130,130,130,196,120,20,21,63,34,7, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,255,255,240,255,255,240,0,96,0,0,96,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,96,0,0,0, + 0,0,0,0,0,0,0,0,0,0,255,255,240,255,255,240, + 10,13,26,12,1,13,63,128,127,128,97,192,225,192,1,192, + 3,128,7,128,14,0,28,0,56,0,240,0,255,192,255,192, + 10,14,28,13,2,12,127,128,255,192,193,192,1,192,7,128, + 14,0,15,128,3,192,0,192,192,192,192,192,227,128,127,128, + 62,0,6,6,6,8,2,21,28,60,56,112,96,192,255,16, + 31,62,20,2,250,7,255,31,140,63,140,127,140,255,140,255, + 140,255,140,255,140,255,140,127,140,127,140,31,140,7,140,1, + 140,1,140,1,140,1,140,1,140,1,140,1,140,1,140,1, + 140,1,140,1,140,1,140,1,140,1,140,1,140,1,140,1, + 140,1,140,3,4,4,9,3,10,224,224,224,224,8,9,9, + 9,2,247,32,32,60,62,7,3,135,255,252,5,13,13,10, + 2,12,56,120,248,152,24,24,24,24,24,24,24,24,24,12, + 16,32,14,1,9,31,128,63,192,112,224,224,96,192,112,192, + 48,192,48,192,48,192,112,224,112,112,224,63,192,31,128,0, + 0,0,0,255,240,13,14,28,19,3,2,227,128,225,192,112, + 192,56,224,56,112,28,112,28,56,30,56,28,112,56,112,56, + 224,112,192,225,192,227,128,23,27,81,27,2,0,56,0,192, + 120,1,192,248,1,128,216,3,128,24,3,0,24,7,0,24, + 6,0,24,14,0,24,12,0,24,24,0,24,24,0,24,48, + 0,24,112,0,24,96,112,0,224,112,0,192,240,1,193,176, + 1,129,48,3,131,48,3,6,48,7,12,48,6,15,254,14, + 15,254,12,0,48,24,0,48,24,0,48,48,0,48,23,27, + 81,27,2,0,56,0,224,120,1,192,248,1,128,216,3,128, + 24,3,0,24,7,0,24,6,0,24,14,0,24,12,0,24, + 28,0,24,24,0,24,56,0,24,48,0,24,112,248,0,227, + 252,0,195,142,1,199,6,1,128,6,3,128,14,3,0,12, + 7,0,56,6,0,112,14,0,224,12,3,192,28,7,128,24, + 7,254,48,7,254,24,26,78,27,2,0,0,0,24,127,128, + 56,255,192,112,193,192,96,3,128,224,14,0,192,15,129,192, + 3,193,128,0,195,128,192,199,0,192,198,0,227,142,0,127, + 140,28,62,28,60,0,24,60,0,48,108,0,112,204,0,97, + 204,0,227,140,0,195,12,1,199,255,1,135,255,3,0,12, + 7,0,12,6,0,12,14,0,12,15,25,50,18,2,249,1, + 192,1,192,1,192,0,0,0,0,0,0,1,192,1,192,1, + 192,1,192,3,192,7,128,15,0,62,0,124,0,120,0,240, + 0,224,0,224,0,224,8,240,14,120,60,63,252,31,248,7, + 224,24,35,105,26,1,0,1,192,0,1,224,0,0,224,0, + 0,112,0,0,48,0,0,24,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,60,0,0,124,0,0,126,0,0,254, + 0,0,238,0,0,239,0,1,231,0,1,199,128,3,195,128, + 3,131,192,7,131,192,7,1,192,7,1,224,15,0,224,14, + 0,240,31,255,240,31,255,240,31,255,248,60,0,56,56,0, + 60,120,0,28,112,0,30,112,0,30,240,0,14,224,0,15, + 24,35,105,26,1,0,0,7,128,0,7,0,0,14,0,0, + 12,0,0,28,0,0,24,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,60,0,0,124,0,0,126,0,0,254,0, + 0,238,0,0,239,0,1,231,0,1,199,128,3,195,128,3, + 131,192,7,131,192,7,1,192,7,1,224,15,0,224,14,0, + 240,31,255,240,31,255,240,31,255,248,60,0,56,56,0,60, + 120,0,28,112,0,30,112,0,30,240,0,14,224,0,15,24, + 35,105,26,1,0,0,60,0,0,124,0,0,110,0,0,230, + 0,0,195,0,1,131,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,60,0,0,124,0,0,126,0,0,254,0,0, + 238,0,0,239,0,1,231,0,1,199,128,3,195,128,3,131, + 192,7,131,192,7,1,192,7,1,224,15,0,224,14,0,240, + 31,255,240,31,255,240,31,255,248,60,0,56,56,0,60,120, + 0,28,112,0,30,112,0,30,240,0,14,224,0,15,24,33, + 99,26,1,0,0,241,128,1,255,0,1,159,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,60,0,0, + 124,0,0,126,0,0,254,0,0,238,0,0,239,0,1,231, + 0,1,199,128,3,195,128,3,131,192,7,131,192,7,1,192, + 7,1,224,15,0,224,14,0,240,31,255,240,31,255,240,31, + 255,248,60,0,56,56,0,60,120,0,28,112,0,30,112,0, + 30,240,0,14,224,0,15,25,33,132,25,0,0,0,225,192, + 0,0,225,192,0,0,225,192,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,62,0, + 0,0,62,0,0,0,62,0,0,0,127,0,0,0,119,0, + 0,0,247,128,0,0,227,128,0,0,227,192,0,1,227,192, + 0,1,193,192,0,3,193,224,0,3,128,224,0,7,128,240, + 0,7,0,112,0,7,0,112,0,15,255,248,0,15,255,248, + 0,31,255,252,0,28,0,28,0,28,0,30,0,60,0,14, + 0,56,0,14,0,120,0,15,0,112,0,7,0,240,0,7, + 128,24,36,108,25,1,0,0,56,0,0,196,0,0,130,0, + 0,130,0,0,130,0,0,196,0,0,124,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,60,0,0,124,0,0,126, + 0,0,254,0,0,238,0,0,239,0,1,231,0,1,199,128, + 3,195,128,3,131,128,7,131,192,7,129,192,7,1,224,15, + 0,224,14,0,240,31,255,240,31,255,240,31,255,248,60,0, + 56,56,0,60,120,0,60,120,0,28,112,0,30,240,0,14, + 224,0,15,31,25,100,34,1,0,0,7,255,252,0,15,255, + 252,0,15,255,252,0,31,192,0,0,29,192,0,0,61,192, + 0,0,57,192,0,0,121,192,0,0,241,192,0,0,241,192, + 0,1,225,192,0,1,225,255,252,3,193,255,252,3,193,255, + 252,7,129,192,0,7,255,192,0,15,255,192,0,15,255,192, + 0,30,1,192,0,28,1,192,0,60,1,192,0,56,1,192, + 0,120,1,255,254,112,1,255,254,240,1,255,254,19,33,99, + 23,2,249,3,254,0,15,255,128,30,3,192,60,1,192,56, + 0,224,112,0,224,112,0,0,112,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,112,0,0,112,0,224,112,0,224,56, + 1,224,60,1,192,31,7,128,15,255,0,3,252,0,0,64, + 0,0,120,0,0,124,0,0,30,0,0,6,0,0,6,0, + 1,254,0,1,252,0,16,35,70,21,3,0,28,0,14,0, + 7,0,7,0,3,128,1,128,0,0,0,0,0,0,0,0, + 255,254,255,254,255,254,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,255,254,255,254,255,254,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,255,255,255,255, + 255,255,16,35,70,21,3,0,0,112,0,240,0,224,1,192, + 1,128,3,0,0,0,0,0,0,0,0,0,255,254,255,254, + 255,254,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,255,254,255,254,255,254,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,255,255,255,255,255,255,16,35, + 70,21,3,0,7,192,7,192,14,224,12,96,28,112,24,48, + 0,0,0,0,0,0,0,0,255,254,255,254,255,254,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,255,254, + 255,254,255,254,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,255,255,255,255,255,255,16,33,66,21,3,0, + 28,112,28,112,28,112,0,0,0,0,0,0,0,0,0,0, + 255,254,255,254,255,254,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,255,254,255,254,255,254,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,255,255,255,255, + 255,255,6,35,35,9,0,0,240,112,56,24,28,12,0,0, + 0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,6,35,35,9,3, + 0,28,56,48,112,224,192,0,0,0,0,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,9,35,70,9,0,0,30,0,62,0,55,0, + 115,0,99,128,193,128,0,0,0,0,0,0,0,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 10,33,66,10,0,0,225,192,225,192,225,192,0,0,0,0, + 0,0,0,0,0,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,22,25,75,24,0,0,31,252, + 0,31,255,128,31,255,192,28,7,224,28,0,240,28,0,120, + 28,0,120,28,0,60,28,0,60,28,0,28,28,0,28,255, + 240,28,255,240,28,255,240,28,28,0,28,28,0,28,28,0, + 60,28,0,56,28,0,120,28,0,120,28,0,240,28,7,224, + 31,255,192,31,255,128,31,252,0,19,33,99,25,3,0,3, + 204,0,7,252,0,14,248,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,248,0,224,248,0,224,252,0,224, + 254,0,224,254,0,224,239,0,224,239,0,224,231,128,224,231, + 128,224,227,192,224,227,192,224,225,224,224,224,224,224,224,240, + 224,224,120,224,224,120,224,224,60,224,224,60,224,224,30,224, + 224,30,224,224,15,224,224,15,224,224,7,224,224,3,224,224, + 3,224,22,36,108,26,2,0,3,192,0,1,192,0,0,224, + 0,0,96,0,0,112,0,0,56,0,0,24,0,0,0,0, + 0,0,0,0,0,0,0,0,0,3,255,0,15,255,192,31, + 255,224,62,1,240,56,0,112,120,0,120,112,0,56,240,0, + 56,240,0,28,224,0,28,224,0,28,224,0,28,224,0,28, + 224,0,28,224,0,28,240,0,60,112,0,56,112,0,56,120, + 0,120,56,0,112,60,0,240,31,3,224,15,255,192,7,255, + 128,0,252,0,22,36,108,26,2,0,0,15,0,0,14,0, + 0,28,0,0,24,0,0,56,0,0,112,0,0,96,0,0, + 0,0,0,0,0,0,0,0,0,0,0,3,255,0,15,255, + 192,31,255,224,62,1,240,56,0,112,120,0,120,112,0,56, + 240,0,56,240,0,28,224,0,28,224,0,28,224,0,28,224, + 0,28,224,0,28,224,0,28,240,0,60,112,0,56,112,0, + 56,120,0,120,56,0,112,60,0,240,31,3,224,15,255,192, + 7,255,128,0,252,0,22,36,108,26,2,0,0,120,0,0, + 120,0,0,252,0,0,206,0,1,206,0,3,135,0,3,3, + 0,0,0,0,0,0,0,0,0,0,0,0,0,3,255,0, + 15,255,192,31,255,224,62,1,240,56,0,112,120,0,120,112, + 0,56,240,0,56,240,0,28,224,0,28,224,0,28,224,0, + 28,224,0,28,224,0,28,224,0,28,240,0,60,112,0,56, + 112,0,56,120,0,120,56,0,112,60,0,240,31,3,224,15, + 255,192,7,255,128,0,252,0,22,33,99,26,2,0,1,243, + 0,3,255,0,3,30,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,3,255,0,15,255,192,31,255,224,62, + 1,240,56,0,112,120,0,120,112,0,56,240,0,56,240,0, + 28,224,0,28,224,0,28,224,0,28,224,0,28,224,0,28, + 224,0,28,240,0,60,112,0,56,112,0,56,120,0,120,56, + 0,112,60,0,240,31,3,224,15,255,192,7,255,128,0,252, + 0,22,33,99,26,2,0,1,195,128,1,195,128,1,195,128, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3, + 255,0,15,255,192,31,255,224,62,1,240,56,0,112,120,0, + 120,112,0,56,240,0,56,240,0,28,224,0,28,224,0,28, + 224,0,28,224,0,28,224,0,28,224,0,28,240,0,60,112, + 0,56,112,0,56,120,0,120,56,0,112,60,0,240,31,3, + 224,15,255,192,7,255,128,0,252,0,18,19,57,34,8,1, + 64,0,128,224,1,192,112,3,128,56,7,0,24,6,0,12, + 12,0,6,24,0,3,48,0,1,224,0,0,192,0,1,224, + 0,3,48,0,6,24,0,12,12,0,24,6,0,48,3,0, + 96,1,128,224,1,192,64,0,128,22,31,93,26,2,253,0, + 0,24,0,0,60,0,0,56,3,255,120,15,255,240,31,255, + 240,62,1,240,56,1,240,120,3,248,112,7,184,240,15,60, + 240,15,60,224,30,28,224,60,28,224,60,28,224,120,28,224, + 240,28,224,224,28,241,224,60,115,192,56,115,128,56,127,128, + 120,63,0,112,62,0,240,31,3,224,63,255,192,63,255,128, + 121,252,0,240,0,0,224,0,0,32,0,0,19,36,108,25, + 3,0,7,0,0,3,128,0,3,128,0,1,192,0,0,224, + 0,0,96,0,0,48,0,0,0,0,0,0,0,0,0,0, + 0,0,0,224,0,224,224,0,224,224,0,224,224,0,224,224, + 0,224,224,0,224,224,0,224,224,0,224,224,0,224,224,0, + 224,224,0,224,224,0,224,224,0,224,224,0,224,224,0,224, + 224,0,224,224,0,224,240,0,224,240,1,224,112,1,192,120, + 3,192,62,7,192,63,255,128,31,255,0,3,248,0,19,36, + 108,25,3,0,0,28,0,0,60,0,0,56,0,0,112,0, + 0,96,0,0,192,0,1,192,0,0,0,0,0,0,0,0, + 0,0,0,0,0,224,0,224,224,0,224,224,0,224,224,0, + 224,224,0,224,224,0,224,224,0,224,224,0,224,224,0,224, + 224,0,224,224,0,224,224,0,224,224,0,224,224,0,224,224, + 0,224,224,0,224,224,0,224,240,0,224,240,1,224,112,1, + 192,120,3,192,62,7,192,63,255,128,31,255,0,3,248,0, + 19,36,108,25,3,0,0,224,0,1,240,0,1,240,0,3, + 184,0,3,28,0,6,12,0,6,14,0,0,0,0,0,0, + 0,0,0,0,0,0,0,224,0,224,224,0,224,224,0,224, + 224,0,224,224,0,224,224,0,224,224,0,224,224,0,224,224, + 0,224,224,0,224,224,0,224,224,0,224,224,0,224,224,0, + 224,224,0,224,224,0,224,224,0,224,240,0,224,240,1,224, + 112,1,192,120,3,192,62,7,192,63,255,128,31,255,0,3, + 248,0,19,33,99,25,3,0,7,14,0,7,14,0,7,14, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 224,0,224,224,0,224,224,0,224,224,0,224,224,0,224,224, + 0,224,224,0,224,224,0,224,224,0,224,224,0,224,224,0, + 224,224,0,224,224,0,224,224,0,224,224,0,224,224,0,224, + 224,0,224,240,0,224,240,1,224,112,1,192,120,3,192,62, + 7,192,63,255,128,31,255,0,3,248,0,21,35,105,23,1, + 0,0,14,0,0,30,0,0,28,0,0,56,0,0,48,0, + 0,96,0,0,0,0,0,0,0,0,0,0,0,0,0,240, + 0,120,120,0,112,120,0,240,60,1,224,30,1,224,30,3, + 192,15,3,128,15,7,128,7,135,0,3,143,0,3,206,0, + 1,252,0,1,252,0,0,248,0,0,120,0,0,112,0,0, + 112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112, + 0,0,112,0,0,112,0,0,112,0,16,25,50,21,3,0, + 224,0,224,0,224,0,224,0,255,224,255,252,255,254,224,62, + 224,15,224,7,224,7,224,7,224,7,224,7,224,15,224,62, + 255,254,255,252,255,224,224,0,224,0,224,0,224,0,224,0, + 224,0,17,25,75,19,2,0,7,224,0,31,248,0,126,124, + 0,112,60,0,240,28,0,224,28,0,224,28,0,224,56,0, + 224,248,0,225,224,0,225,192,0,225,192,0,225,224,0,225, + 240,0,224,252,0,224,63,0,224,15,0,224,7,128,224,3, + 128,224,3,128,231,3,128,227,131,128,227,231,128,225,255,0, + 224,124,0,15,27,54,19,2,0,14,0,7,0,3,128,3, + 128,1,192,0,192,0,0,0,0,0,0,15,240,63,252,60, + 60,120,30,112,14,0,14,0,14,15,254,63,254,124,14,112, + 14,224,14,224,30,224,30,240,62,120,238,63,238,15,142,15, + 28,56,19,2,0,0,112,0,224,0,224,1,192,3,128,3, + 0,6,0,0,0,0,0,0,0,15,240,63,252,60,60,120, + 30,112,14,0,14,0,14,15,254,63,254,124,14,112,14,224, + 14,224,30,224,30,240,62,120,238,63,238,15,142,15,28,56, + 19,2,0,3,192,7,192,7,224,14,224,12,112,28,48,24, + 24,0,0,0,0,0,0,15,240,63,252,60,60,120,30,112, + 14,0,14,0,14,15,254,63,254,124,14,112,14,224,14,224, + 30,224,30,240,62,120,238,63,238,15,142,15,25,50,19,2, + 0,15,152,31,240,25,224,0,0,0,0,0,0,0,0,15, + 240,63,252,60,60,120,30,112,14,0,14,0,14,15,254,63, + 254,124,14,112,14,224,14,224,30,224,30,240,62,120,238,63, + 238,15,142,15,25,50,19,2,0,28,56,28,56,28,56,0, + 0,0,0,0,0,0,0,15,240,63,252,60,60,120,30,112, + 14,0,14,0,14,15,254,63,254,124,14,112,14,224,14,224, + 30,224,30,240,62,120,238,63,238,15,142,15,29,58,19,2, + 0,3,128,12,64,8,32,8,32,8,32,12,64,7,192,0, + 0,0,0,0,0,0,0,15,240,63,252,60,124,120,30,112, + 30,0,30,0,30,15,254,63,254,124,14,112,14,224,14,224, + 30,224,30,240,62,120,238,63,238,15,142,27,18,72,31,2, + 0,15,224,126,0,63,241,255,0,124,121,199,128,112,31,129, + 192,112,15,1,192,0,15,0,224,0,14,0,224,15,255,255, + 224,63,255,255,224,124,14,0,0,240,14,0,0,224,14,0, + 0,224,31,0,224,224,27,1,192,240,59,131,192,124,241,239, + 128,63,225,255,128,31,192,126,0,14,26,52,18,2,248,15, + 224,63,248,60,120,112,60,112,28,240,28,224,0,224,0,224, + 0,224,0,224,0,224,0,240,28,112,28,112,60,60,120,31, + 240,7,224,1,0,1,224,1,240,0,120,0,24,0,24,7, + 240,7,224,16,28,56,19,2,0,28,0,14,0,14,0,7, + 0,3,128,1,128,0,192,0,0,0,0,0,0,7,224,31, + 248,60,124,120,30,112,14,240,14,224,14,255,254,255,255,224, + 0,224,0,224,0,112,14,112,14,120,30,62,124,31,248,7, + 224,16,28,56,19,2,0,0,120,0,240,0,224,1,192,1, + 128,3,128,3,0,0,0,0,0,0,0,7,224,31,248,60, + 124,120,30,112,14,240,14,224,14,255,254,255,255,224,0,224, + 0,224,0,112,14,112,14,120,30,62,124,31,248,7,224,16, + 28,56,19,2,0,3,192,7,192,7,224,14,224,12,112,24, + 48,24,24,0,0,0,0,0,0,7,224,31,248,60,124,120, + 30,112,14,240,14,224,14,255,254,255,255,224,0,224,0,224, + 0,112,14,112,14,120,30,62,124,31,248,7,224,16,25,50, + 19,2,0,28,56,28,56,28,56,0,0,0,0,0,0,0, + 0,7,224,31,248,60,60,120,14,112,14,240,14,224,6,255, + 254,255,255,224,0,224,0,224,0,112,14,112,14,120,30,62, + 60,31,248,7,224,6,27,27,8,255,0,240,112,56,24,28, + 12,0,0,0,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,6,27,27,8,2,0,28,56,112,112, + 224,192,0,0,0,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,9,27,54,8,255,0,62,0,62, + 0,119,0,115,0,227,128,193,128,0,0,0,0,0,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,10,25,50,8,255,0,227,192,227,192,227,192,0, + 0,0,0,0,0,0,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,17,26,78,21,2, + 0,16,4,0,56,28,0,30,248,0,7,192,0,15,192,0, + 60,240,0,112,120,0,0,60,0,7,252,0,31,254,0,62, + 63,0,120,15,0,112,7,0,240,7,128,240,3,128,224,3, + 128,224,3,128,224,3,128,224,3,128,224,3,128,240,7,0, + 112,7,0,120,15,0,62,62,0,31,252,0,7,240,0,15, + 25,50,19,2,0,15,48,31,240,27,224,0,0,0,0,0, + 0,0,0,227,240,239,248,252,124,248,30,240,30,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,17,28,84,21,2,0,14,0,0, + 15,0,0,7,0,0,3,128,0,1,128,0,0,192,0,0, + 224,0,0,0,0,0,0,0,0,0,0,7,240,0,31,252, + 0,62,62,0,120,15,0,112,7,0,240,7,0,240,7,128, + 224,3,128,224,3,128,224,3,128,224,3,128,240,7,128,240, + 7,128,112,7,0,120,15,0,62,62,0,31,252,0,7,240, + 0,17,28,84,21,2,0,0,56,0,0,120,0,0,112,0, + 0,224,0,0,192,0,1,128,0,3,0,0,0,0,0,0, + 0,0,0,0,0,7,240,0,31,252,0,62,62,0,120,15, + 0,112,7,0,240,7,0,240,7,128,224,3,128,224,3,128, + 224,3,128,224,3,128,240,7,128,240,7,128,112,7,0,120, + 15,0,62,62,0,31,252,0,7,240,0,17,28,84,21,2, + 0,1,192,0,3,224,0,3,224,0,7,112,0,14,56,0, + 12,24,0,28,28,0,0,0,0,0,0,0,0,0,0,7, + 240,0,31,252,0,62,62,0,120,15,0,112,7,0,240,7, + 0,240,7,128,224,3,128,224,3,128,224,3,128,224,3,128, + 240,7,128,240,7,128,112,7,0,120,15,0,62,62,0,31, + 252,0,7,240,0,17,25,75,21,2,0,7,152,0,15,248, + 0,12,240,0,0,0,0,0,0,0,0,0,0,0,0,0, + 7,240,0,31,252,0,62,62,0,120,15,0,112,7,0,240, + 7,0,240,7,128,224,3,128,224,3,128,224,3,128,224,3, + 128,240,7,128,240,7,128,112,7,0,120,15,0,62,62,0, + 31,252,0,7,240,0,17,25,75,21,2,0,28,56,0,28, + 56,0,28,56,0,0,0,0,0,0,0,0,0,0,0,0, + 0,7,240,0,31,252,0,62,62,0,120,15,0,112,7,0, + 240,7,0,240,7,128,224,3,128,224,3,128,224,3,128,224, + 3,128,240,7,128,240,7,128,112,7,0,120,15,0,62,62, + 0,31,252,0,7,240,0,20,15,45,34,7,3,0,96,0, + 0,240,0,0,240,0,0,96,0,0,0,0,0,0,0,0, + 0,0,255,255,240,255,255,240,0,0,0,0,0,0,0,96, + 0,0,240,0,0,240,0,0,96,0,17,23,69,21,2,254, + 0,1,0,0,1,128,0,3,128,7,247,0,31,254,0,62, + 62,0,120,31,0,112,63,0,240,55,128,240,119,128,224,227, + 128,225,195,128,225,131,128,227,131,128,231,7,128,254,7,128, + 124,7,0,124,15,0,62,62,0,127,252,0,103,240,0,224, + 0,0,192,0,0,15,28,56,19,2,0,28,0,30,0,14, + 0,7,0,3,0,1,128,1,128,0,0,0,0,0,0,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,240,30,240,30,124,126,63, + 238,31,142,15,28,56,19,2,0,0,112,0,240,0,224,1, + 192,1,128,3,0,7,0,0,0,0,0,0,0,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,240,30,240,30,124,126,63,238,31, + 142,15,28,56,19,2,0,3,128,7,192,7,192,14,224,12, + 96,24,48,24,48,0,0,0,0,0,0,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,240,30,240,30,124,126,63,238,31,142,15, + 25,50,19,2,0,56,112,56,112,56,112,0,0,0,0,0, + 0,0,0,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,240,30,240, + 62,124,126,63,238,31,142,16,34,68,18,1,249,0,56,0, + 112,0,96,0,224,1,192,1,128,0,0,0,0,0,0,224, + 7,240,7,112,15,112,14,120,14,56,30,60,28,28,28,28, + 60,30,56,14,120,15,112,7,112,7,240,7,224,3,224,3, + 224,1,192,1,192,3,128,3,128,231,128,255,0,127,0,62, + 0,16,32,64,20,2,249,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,227,240,231,248,254,60,248,30,240,14,240, + 15,224,7,224,7,224,7,224,7,224,7,224,7,240,15,240, + 14,248,30,254,124,239,248,227,240,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,16,32,64,18,1,249,28,56,28, + 56,28,56,0,0,0,0,0,0,0,0,224,7,224,7,240, + 15,112,14,120,14,56,30,60,28,60,28,28,56,30,56,14, + 120,15,112,15,112,7,240,7,224,3,224,3,192,3,192,3, + 192,3,128,3,128,7,128,7,0,7,0,15,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--34-340-72-72-P-161-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 25 + Calculated Max Values w=20 h=28 x= 7 y=12 dx=34 dy= 0 ascent=26 len=75 + Font Bounding box w=46 h=45 x=-2 y=-9 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =25 descent= 0 + X Font ascent =25 descent= 0 + Max Font ascent =26 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur25n[774] U8G_SECTION(".progmem.u8g_font_fur25n") = { + 0,46,45,254,247,25,0,0,0,0,42,57,0,26,252,25, + 0,14,13,26,22,4,12,24,96,28,224,28,224,12,192,7, + 128,243,60,255,252,231,156,7,128,12,192,28,224,60,224,24, + 96,20,21,63,34,7,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,96,0,0,96,0,0, + 96,0,255,255,240,255,255,240,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,6,9,9,9,2,252,60,120,120,112, + 112,224,224,224,192,8,3,3,10,1,7,255,255,255,3,4, + 4,9,3,0,224,224,224,224,10,28,56,13,2,254,0,192, + 1,192,1,128,1,128,3,128,3,0,3,0,3,0,7,0, + 6,0,6,0,14,0,12,0,12,0,28,0,28,0,24,0, + 24,0,56,0,48,0,48,0,112,0,112,0,96,0,96,0, + 224,0,192,0,192,0,15,25,50,19,2,1,15,224,63,248, + 62,248,120,60,112,28,112,30,224,14,224,14,224,14,224,14, + 224,14,224,14,224,14,224,14,224,14,224,14,224,14,240,14, + 112,30,112,28,120,28,60,60,63,248,31,240,7,192,8,25, + 25,19,5,0,15,31,63,127,255,231,135,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,7,7,15,25,50, + 19,2,1,15,240,63,248,62,252,120,28,120,30,112,14,240, + 14,0,14,0,30,0,28,0,60,0,120,0,120,0,240,1, + 224,3,192,7,128,15,0,31,0,62,0,60,0,120,0,240, + 0,255,254,255,254,16,25,50,19,2,1,15,240,63,248,60, + 28,120,14,112,14,112,14,0,14,0,14,0,28,0,120,3, + 240,3,240,0,248,0,30,0,14,0,15,0,7,0,7,240, + 7,240,7,240,14,120,30,60,124,31,248,7,224,17,25,75, + 19,1,0,0,60,0,0,124,0,0,124,0,0,252,0,1, + 220,0,1,220,0,3,156,0,7,28,0,7,28,0,14,28, + 0,28,28,0,60,28,0,56,28,0,112,28,0,240,28,0, + 224,28,0,255,255,128,255,255,128,255,255,128,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,15,25, + 50,19,2,0,127,252,127,252,127,252,112,0,112,0,112,0, + 112,0,112,0,115,240,127,248,124,60,120,28,112,30,96,14, + 0,14,0,14,0,14,0,14,0,14,224,30,240,28,112,60, + 124,120,63,240,15,192,16,25,50,19,1,1,15,240,31,252, + 60,28,120,30,112,14,240,14,224,0,224,0,224,0,227,240, + 231,252,239,252,252,30,248,14,240,15,240,7,240,7,240,7, + 240,7,112,7,120,14,56,14,62,60,15,248,7,224,15,25, + 50,19,2,0,255,254,255,254,0,14,0,30,0,28,0,28, + 0,60,0,56,0,56,0,120,0,112,0,240,0,240,0,224, + 1,224,1,224,1,192,3,192,3,128,7,128,7,128,7,0, + 15,0,15,0,14,0,16,25,50,19,1,1,15,240,63,252, + 60,60,120,30,112,14,112,14,112,14,112,14,56,28,60,60, + 15,240,15,240,62,56,56,28,112,14,224,7,224,7,224,7, + 224,7,224,7,240,15,120,14,60,60,31,248,7,224,16,25, + 50,19,2,1,31,248,63,252,120,30,112,14,240,15,224,15, + 224,15,224,15,224,15,240,15,112,31,120,63,63,247,15,231, + 0,7,0,7,0,7,0,14,112,14,112,14,112,30,112,60, + 60,120,31,240,15,224}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--34-340-72-72-P-161-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 25, '1' Height: 25 + Calculated Max Values w=31 h=37 x= 8 y=21 dx=34 dy= 0 ascent=28 len=120 + Font Bounding box w=46 h=45 x=-2 y=-9 + Calculated Min Values x= 0 y=-9 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =28 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur25r[5389] U8G_SECTION(".progmem.u8g_font_fur25r") = { + 0,46,45,254,247,25,6,119,15,27,32,127,249,28,247,25, + 249,0,0,0,10,0,0,3,25,25,12,4,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 0,0,0,224,224,224,11,10,20,15,2,15,241,224,112,224, + 112,224,112,224,112,224,112,224,112,224,96,192,96,192,96,192, + 22,25,75,25,2,0,0,112,224,0,112,224,0,96,192,0, + 225,192,0,225,192,0,193,128,0,193,128,63,255,252,63,255, + 248,1,131,0,3,135,0,3,134,0,3,6,0,7,14,0, + 255,255,224,255,255,224,14,28,0,14,28,0,12,24,0,12, + 24,0,28,56,0,28,56,0,24,48,0,56,112,0,56,112, + 0,16,32,64,18,1,252,1,128,1,128,1,128,15,240,31, + 248,63,252,121,158,113,142,113,142,113,142,113,128,113,128,121, + 128,63,128,31,240,15,252,1,254,1,159,1,143,1,135,225, + 135,225,135,225,135,241,135,121,143,127,254,63,252,15,240,1, + 128,1,128,1,128,1,128,28,27,108,32,2,0,0,0,14, + 0,0,0,12,0,31,128,24,0,63,192,24,0,121,224,48, + 0,240,240,48,0,224,112,96,0,224,112,224,0,224,112,192, + 0,224,113,192,0,240,113,128,0,112,227,128,0,63,227,0, + 0,31,134,31,128,0,6,63,192,0,12,121,224,0,12,240, + 240,0,24,224,112,0,56,224,112,0,48,224,112,0,112,224, + 112,0,96,224,112,0,224,224,112,0,192,240,240,1,128,121, + 224,1,128,63,192,3,0,31,128,23,25,75,26,2,1,7, + 248,0,15,252,0,30,30,0,28,14,0,28,14,0,28,14, + 0,30,28,0,30,60,0,15,248,0,7,224,0,15,192,112, + 31,224,112,61,224,112,120,240,112,240,120,112,224,60,112,224, + 30,224,224,15,224,224,7,224,240,3,192,120,3,224,124,15, + 240,63,255,120,31,252,124,7,240,62,4,10,10,13,4,15, + 240,112,112,112,112,112,112,96,96,96,6,30,30,12,3,251, + 12,24,24,56,56,112,112,112,112,240,224,224,224,224,224,224, + 224,224,224,224,240,112,112,112,112,56,56,24,24,12,6,30, + 30,12,3,251,224,96,112,112,48,56,56,56,56,28,28,28, + 28,28,28,28,28,28,28,28,28,60,56,56,56,48,112,112, + 96,224,14,13,26,22,4,12,24,96,28,224,28,224,12,192, + 7,128,243,60,255,252,231,156,7,128,12,192,28,224,60,224, + 24,96,20,21,63,34,7,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,255,255,240,255,255,240,0,96,0,0,96,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,6,9,9,9,2,252,60,120,120, + 112,112,224,224,224,192,8,3,3,10,1,7,255,255,255,3, + 4,4,9,3,0,224,224,224,224,10,28,56,13,2,254,0, + 192,1,192,1,128,1,128,3,128,3,0,3,0,3,0,7, + 0,6,0,6,0,14,0,12,0,12,0,28,0,28,0,24, + 0,24,0,56,0,48,0,48,0,112,0,112,0,96,0,96, + 0,224,0,192,0,192,0,15,25,50,19,2,1,15,224,63, + 248,62,248,120,60,112,28,112,30,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,240, + 14,112,30,112,28,120,28,60,60,63,248,31,240,7,192,8, + 25,25,19,5,0,15,31,63,127,255,231,135,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,15,25, + 50,19,2,1,15,240,63,248,62,252,120,28,120,30,112,14, + 240,14,0,14,0,30,0,28,0,60,0,120,0,120,0,240, + 1,224,3,192,7,128,15,0,31,0,62,0,60,0,120,0, + 240,0,255,254,255,254,16,25,50,19,2,1,15,240,63,248, + 60,28,120,14,112,14,112,14,0,14,0,14,0,28,0,120, + 3,240,3,240,0,248,0,30,0,14,0,15,0,7,0,7, + 240,7,240,7,240,14,120,30,60,124,31,248,7,224,17,25, + 75,19,1,0,0,60,0,0,124,0,0,124,0,0,252,0, + 1,220,0,1,220,0,3,156,0,7,28,0,7,28,0,14, + 28,0,28,28,0,60,28,0,56,28,0,112,28,0,240,28, + 0,224,28,0,255,255,128,255,255,128,255,255,128,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,15, + 25,50,19,2,0,127,252,127,252,127,252,112,0,112,0,112, + 0,112,0,112,0,115,240,127,248,124,60,120,28,112,30,96, + 14,0,14,0,14,0,14,0,14,0,14,224,30,240,28,112, + 60,124,120,63,240,15,192,16,25,50,19,1,1,15,240,31, + 252,60,28,120,30,112,14,240,14,224,0,224,0,224,0,227, + 240,231,252,239,252,252,30,248,14,240,15,240,7,240,7,240, + 7,240,7,112,7,120,14,56,14,62,60,15,248,7,224,15, + 25,50,19,2,0,255,254,255,254,0,14,0,30,0,28,0, + 28,0,60,0,56,0,56,0,120,0,112,0,240,0,240,0, + 224,1,224,1,224,1,192,3,192,3,128,7,128,7,128,7, + 0,15,0,15,0,14,0,16,25,50,19,1,1,15,240,63, + 252,60,60,120,30,112,14,112,14,112,14,112,14,56,28,60, + 60,15,240,15,240,62,56,56,28,112,14,224,7,224,7,224, + 7,224,7,224,7,240,15,120,14,60,60,31,248,7,224,16, + 25,50,19,2,1,31,248,63,252,120,30,112,14,240,15,224, + 15,224,15,224,15,224,15,240,15,112,31,120,63,63,247,15, + 231,0,7,0,7,0,7,0,14,112,14,112,14,112,30,112, + 60,60,120,31,240,15,224,3,18,18,9,3,0,224,224,224, + 224,0,0,0,0,0,0,0,0,0,0,224,224,224,224,6, + 22,22,9,1,252,56,56,56,56,0,0,0,0,0,0,0, + 0,0,60,56,56,56,112,112,112,96,224,21,19,57,34,7, + 1,0,0,8,0,0,56,0,1,240,0,15,192,0,62,0, + 1,248,0,7,192,0,62,0,0,248,0,0,192,0,0,248, + 0,0,62,0,0,7,192,0,1,248,0,0,62,0,0,7, + 192,0,1,248,0,0,56,0,0,8,20,8,24,34,7,6, + 255,255,240,255,255,240,0,0,0,0,0,0,0,0,0,0, + 0,0,255,255,240,255,255,240,21,17,51,34,7,2,224,0, + 0,252,0,0,31,0,0,7,224,0,0,248,0,0,31,0, + 0,7,192,0,0,248,0,0,56,0,0,248,0,7,192,0, + 63,0,0,248,0,7,224,0,31,0,0,248,0,0,224,0, + 0,15,25,50,18,1,1,31,224,63,248,125,252,240,30,96, + 14,0,14,0,14,0,30,0,28,0,60,0,120,0,240,1, + 192,3,128,7,128,7,0,7,0,7,0,7,0,0,0,0, + 0,0,0,7,0,7,0,7,0,30,30,120,34,2,251,0, + 31,240,0,0,255,254,0,3,255,255,0,7,224,31,192,15, + 128,3,224,30,0,0,240,60,0,0,112,56,31,56,120,112, + 63,184,56,112,125,248,56,240,112,120,60,224,240,120,28,224, + 224,56,28,224,224,56,28,224,224,56,28,224,224,56,28,224, + 224,56,28,224,224,56,56,240,224,120,56,112,112,120,120,112, + 120,254,240,120,63,223,224,56,31,15,192,60,0,0,0,30, + 0,0,0,15,128,0,0,7,224,0,0,3,255,248,0,0, + 255,248,0,0,31,240,0,24,25,75,26,1,0,0,60,0, + 0,124,0,0,126,0,0,254,0,0,238,0,0,239,0,1, + 231,0,1,199,128,3,195,128,3,131,192,7,131,192,7,1, + 192,7,1,224,15,0,224,14,0,240,31,255,240,31,255,240, + 31,255,248,60,0,56,56,0,60,120,0,28,112,0,30,112, + 0,30,240,0,14,224,0,15,18,25,75,23,3,0,255,248, + 0,255,254,0,255,255,0,224,15,128,224,7,128,224,3,128, + 224,3,128,224,3,128,224,7,128,224,15,0,255,254,0,255, + 252,0,255,254,0,224,15,0,224,3,128,224,3,192,224,1, + 192,224,1,192,224,1,192,224,3,192,224,7,192,224,15,128, + 255,255,0,255,254,0,255,248,0,19,25,75,23,2,1,3, + 254,0,15,255,128,30,3,192,60,1,192,56,0,224,112,0, + 224,112,0,0,112,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,112,0,0,112,0,224,112,0,224,56,1,224,60,1, + 192,31,7,128,15,255,0,1,252,0,20,25,75,25,3,0, + 255,240,0,255,254,0,255,255,0,224,31,128,224,7,192,224, + 3,192,224,1,224,224,0,224,224,0,240,224,0,240,224,0, + 112,224,0,112,224,0,112,224,0,112,224,0,112,224,0,240, + 224,0,240,224,0,224,224,1,224,224,3,192,224,7,192,224, + 31,128,255,255,0,255,252,0,255,240,0,16,25,50,21,3, + 0,255,254,255,254,255,254,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,255,254,255,254,255,254,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,255,255,255, + 255,255,255,15,25,50,20,3,0,255,254,255,254,255,254,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,255, + 252,255,252,255,252,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,21,25,75,26,2, + 1,1,255,128,7,255,192,15,255,224,30,0,240,60,0,120, + 120,0,56,112,0,0,112,0,0,240,0,0,224,0,0,224, + 0,0,224,15,248,224,15,248,224,15,248,224,0,56,240,0, + 56,112,0,56,112,0,56,120,0,56,60,0,56,62,0,56, + 31,0,248,15,255,248,7,255,240,0,255,128,18,25,75,24, + 3,0,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,255,255,192,255,255,192,255,255,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,3,25,25, + 9,3,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,14,25,50,19, + 2,0,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,224,28,224,28,240,60,120,120,127,240, + 63,224,15,192,18,25,75,23,3,0,224,7,128,224,15,0, + 224,30,0,224,60,0,224,120,0,224,240,0,225,224,0,227, + 192,0,231,128,0,239,0,0,254,0,0,255,0,0,239,128, + 0,231,128,0,231,192,0,227,224,0,225,240,0,224,248,0, + 224,120,0,224,60,0,224,62,0,224,31,0,224,15,128,224, + 7,192,224,3,192,15,25,50,19,3,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,255,254,255,254,255,254,25,25,100, + 31,3,0,248,0,15,128,252,0,31,128,252,0,31,128,252, + 0,31,128,238,0,59,128,238,0,59,128,239,0,123,128,231, + 0,115,128,231,0,115,128,231,128,243,128,227,128,227,128,227, + 128,227,128,225,193,195,128,225,193,195,128,225,193,195,128,224, + 227,131,128,224,227,131,128,224,247,131,128,224,119,3,128,224, + 119,3,128,224,127,3,128,224,62,3,128,224,62,3,128,224, + 28,3,128,224,28,3,128,19,25,75,25,3,0,248,0,224, + 248,0,224,252,0,224,254,0,224,254,0,224,239,0,224,239, + 0,224,231,128,224,231,128,224,227,192,224,227,192,224,225,224, + 224,224,224,224,224,240,224,224,120,224,224,120,224,224,60,224, + 224,60,224,224,30,224,224,30,224,224,15,224,224,15,224,224, + 7,224,224,3,224,224,3,224,22,25,75,26,2,1,3,255, + 0,15,255,192,31,255,224,62,1,240,56,0,112,120,0,120, + 112,0,56,240,0,56,240,0,28,224,0,28,224,0,28,224, + 0,28,224,0,28,224,0,28,224,0,28,240,0,60,112,0, + 56,112,0,56,120,0,120,56,0,112,60,0,240,31,3,224, + 15,255,192,7,255,128,0,252,0,16,25,50,21,3,0,255, + 224,255,252,255,254,224,30,224,15,224,7,224,7,224,7,224, + 7,224,15,224,30,255,254,255,252,255,224,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,24,25,75,27,2,1,3,255,0,15,255,192,31,255,224, + 62,1,240,56,0,112,120,0,120,112,0,56,240,0,56,240, + 0,28,224,0,28,224,0,28,224,0,28,224,0,28,224,0, + 28,224,0,28,240,0,60,112,0,56,112,0,56,120,0,120, + 56,0,112,60,0,240,31,3,224,15,255,255,7,255,255,0, + 255,255,17,25,75,21,3,0,255,240,0,255,252,0,255,254, + 0,224,31,0,224,15,0,224,7,0,224,7,0,224,7,0, + 224,15,0,224,30,0,255,252,0,255,240,0,255,252,0,224, + 60,0,224,30,0,224,14,0,224,14,0,224,14,0,224,15, + 0,224,7,0,224,7,0,224,7,0,224,7,0,224,7,0, + 224,7,128,18,25,75,22,2,1,7,252,0,31,254,0,63, + 255,0,120,7,128,112,3,128,112,3,128,112,0,0,112,0, + 0,120,0,0,124,0,0,63,192,0,31,252,0,7,255,0, + 0,63,128,0,7,128,0,3,192,0,1,192,224,1,192,224, + 1,192,240,1,192,112,3,192,124,15,128,63,255,0,31,254, + 0,7,240,0,19,25,75,21,1,0,255,255,224,255,255,224, + 255,255,224,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,19,25,75,25,3,0,224,0,224,224,0, + 224,224,0,224,224,0,224,224,0,224,224,0,224,224,0,224, + 224,0,224,224,0,224,224,0,224,224,0,224,224,0,224,224, + 0,224,224,0,224,224,0,224,224,0,224,224,0,224,240,0, + 224,240,1,224,112,1,192,120,3,192,62,7,192,63,255,128, + 31,255,0,3,248,0,21,25,75,22,1,0,240,0,120,240, + 0,240,240,0,240,120,0,240,120,1,224,120,1,224,60,1, + 192,60,3,192,60,3,192,28,3,128,30,7,128,14,7,128, + 14,7,0,15,15,0,7,15,0,7,14,0,7,158,0,3, + 158,0,3,156,0,3,252,0,1,252,0,1,248,0,1,248, + 0,0,248,0,0,240,0,31,25,100,33,1,0,224,7,192, + 14,240,7,192,14,240,7,192,30,112,7,192,30,112,14,224, + 28,120,14,224,60,120,14,224,60,56,14,240,56,56,28,112, + 56,60,28,112,120,28,28,112,120,28,60,56,112,28,56,56, + 112,30,56,56,240,14,56,56,224,14,112,28,224,14,112,28, + 224,7,112,29,192,7,112,29,192,7,224,15,192,7,224,15, + 192,3,224,15,128,3,224,7,128,3,192,7,128,1,192,7, + 0,22,25,75,24,1,0,124,0,120,60,0,240,30,1,224, + 31,1,224,15,3,192,7,135,128,7,135,128,3,207,0,1, + 238,0,1,254,0,0,252,0,0,120,0,0,252,0,0,252, + 0,1,222,0,3,207,0,3,143,0,7,135,128,15,3,192, + 14,3,192,30,1,224,60,1,240,56,0,240,120,0,120,240, + 0,124,21,25,75,23,1,0,240,0,120,120,0,112,120,0, + 240,60,1,224,30,1,224,30,3,192,15,3,128,15,7,128, + 7,135,0,3,143,0,3,206,0,1,252,0,1,252,0,0, + 248,0,0,120,0,0,112,0,0,112,0,0,112,0,0,112, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + 0,112,0,18,25,75,22,2,0,127,255,192,127,255,192,127, + 255,192,0,3,192,0,7,128,0,15,128,0,31,0,0,30, + 0,0,60,0,0,124,0,0,248,0,0,240,0,1,224,0, + 3,224,0,7,192,0,15,128,0,15,0,0,31,0,0,62, + 0,0,124,0,0,120,0,0,240,0,0,255,255,192,255,255, + 192,255,255,192,7,32,32,14,4,249,254,254,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,254,254,10,28,56,13,2,254, + 192,0,192,0,224,0,224,0,96,0,96,0,112,0,48,0, + 48,0,56,0,56,0,24,0,24,0,28,0,12,0,12,0, + 14,0,6,0,6,0,6,0,7,0,3,0,3,0,3,128, + 1,128,1,128,1,128,1,192,6,32,32,14,4,249,252,252, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,252,252,18,21, + 63,34,8,0,0,192,0,1,224,0,1,224,0,1,224,0, + 3,48,0,3,48,0,2,16,0,6,24,0,6,24,0,12, + 12,0,12,12,0,12,12,0,24,6,0,24,6,0,24,6, + 0,48,3,0,48,3,0,112,1,128,96,1,128,96,1,128, + 192,0,192,17,2,6,17,0,251,255,255,128,255,255,128,6, + 6,6,8,0,21,224,224,112,56,24,12,15,18,36,19,2, + 0,15,240,63,252,60,60,120,30,112,14,0,14,0,14,15, + 254,63,254,124,14,112,14,224,14,224,30,224,30,240,62,120, + 238,63,238,15,142,16,25,50,20,2,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,227,240,239,248,238,124,248, + 30,240,14,240,15,224,7,224,7,224,7,224,7,224,7,224, + 15,240,14,240,14,248,28,254,124,239,248,227,224,14,18,36, + 18,2,0,15,224,63,240,124,120,112,60,112,28,240,28,224, + 0,224,0,224,0,224,0,224,0,224,0,240,28,112,28,112, + 60,60,120,31,240,15,224,16,25,50,20,2,0,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,15,199,31,247,60, + 127,120,31,112,31,112,15,224,15,224,7,224,7,224,7,224, + 7,224,7,112,15,112,15,56,31,62,63,15,247,7,199,16, + 18,36,19,2,0,7,224,31,248,60,124,120,30,112,14,240, + 14,224,14,255,254,255,255,224,0,224,0,224,0,112,14,112, + 14,120,30,62,124,31,248,7,224,11,25,50,12,1,0,7, + 224,15,224,31,32,28,0,28,0,28,0,28,0,255,224,255, + 224,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,16,25,50,20,2,249,7,231,31,247,62,127,120,31,112, + 15,240,15,224,7,224,7,224,7,224,7,224,7,224,7,240, + 15,112,15,120,31,62,127,31,247,15,199,0,7,0,15,112, + 14,120,30,60,60,31,248,7,224,15,25,50,19,2,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,227,240,239, + 248,252,124,248,28,240,30,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,3,25,25,7,2,0,224,224,224,0,0,0,0,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 5,32,32,9,2,249,56,56,56,0,0,0,0,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,240,224,14,25,50,17,2,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,120,224,240,225,224, + 225,192,227,192,231,128,239,0,254,0,254,0,239,0,231,128, + 231,128,227,192,225,224,225,224,224,240,224,120,224,60,3,25, + 25,8,2,0,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,26,18,72, + 30,2,0,227,224,124,0,239,241,255,0,252,123,143,128,248, + 63,3,128,240,30,3,192,224,28,1,192,224,28,1,192,224, + 28,1,192,224,28,1,192,224,28,1,192,224,28,1,192,224, + 28,1,192,224,28,1,192,224,28,1,192,224,28,1,192,224, + 28,1,192,224,28,1,192,224,28,1,192,15,18,36,19,2, + 0,227,240,239,248,252,124,248,30,240,30,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,17,18,54,21,2,0,7,240,0,31,252, + 0,62,62,0,120,15,0,112,7,0,240,7,0,240,7,128, + 224,3,128,224,3,128,224,3,128,224,3,128,240,7,128,240, + 7,128,112,7,0,120,15,0,62,62,0,31,252,0,7,240, + 0,16,25,50,20,2,249,227,240,231,248,254,60,248,30,240, + 14,240,15,224,7,224,7,224,7,224,7,224,7,224,7,240, + 15,240,14,248,30,254,124,239,248,227,240,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,16,25,50,21,2,249,7, + 199,31,247,62,63,120,31,112,15,240,15,224,7,224,7,224, + 7,224,7,224,7,224,7,240,15,112,15,120,31,62,127,31, + 247,7,199,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,10,18,36,12,2,0,231,192,239,192,254,0,248,0,240, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,14,18,36,18,2, + 0,31,192,127,240,120,248,240,56,224,56,224,0,240,0,126, + 0,63,224,15,248,0,252,0,60,0,28,224,28,240,60,120, + 248,63,240,31,192,10,22,44,12,1,1,28,0,28,0,28, + 0,28,0,255,192,255,192,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,30,0,15,192,7,192,15,18,36,19,2,0,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,240,30,240,62,124,126,63,238,31, + 142,16,18,36,18,1,0,224,7,240,7,240,15,112,14,120, + 14,56,30,56,28,60,28,28,56,30,56,14,56,14,112,15, + 112,7,224,7,224,3,224,3,192,3,192,26,18,72,28,1, + 0,224,30,1,192,224,62,3,192,224,63,3,128,112,63,3, + 128,112,119,3,128,112,115,7,0,56,115,135,0,56,115,135, + 0,56,227,142,0,24,225,206,0,28,225,206,0,29,193,206, + 0,29,192,220,0,15,192,252,0,15,128,252,0,15,128,120, + 0,7,128,120,0,7,128,120,0,17,18,54,19,1,0,112, + 7,0,120,14,0,60,30,0,30,28,0,30,56,0,15,112, + 0,7,240,0,3,224,0,3,192,0,3,224,0,7,224,0, + 15,240,0,14,120,0,28,60,0,60,28,0,120,30,0,112, + 15,0,240,7,128,16,25,50,18,1,249,224,7,240,7,112, + 15,112,14,120,14,56,30,60,28,28,28,28,60,30,56,14, + 56,15,112,7,112,7,240,7,224,3,224,3,224,1,192,1, + 192,3,128,3,128,7,128,7,0,7,0,15,0,13,18,36, + 17,2,0,127,248,127,248,0,120,0,112,0,240,1,224,3, + 192,3,192,7,128,15,0,31,0,30,0,60,0,120,0,120, + 0,240,0,255,248,255,248,11,35,70,17,3,248,1,224,3, + 224,7,128,15,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,30,0,28,0,60,0,248,0,240, + 0,248,0,60,0,28,0,30,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,7,0,7,128,3, + 224,1,224,2,37,37,12,5,247,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,11,35, + 70,17,3,248,240,0,248,0,60,0,28,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,15,0, + 7,0,7,128,3,224,1,224,3,224,7,128,7,0,15,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,28,0,60,0,248,0,240,0,18,4,12,18,0,7, + 31,1,192,63,231,128,121,255,0,224,62,0,255}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--40-400-72-72-P-189-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 30, '1' Height: 30 + Calculated Max Values w=37 h=43 x=10 y=26 dx=40 dy= 0 ascent=43 len=185 + Font Bounding box w=54 h=54 x=-3 y=-11 + Calculated Min Values x=-1 y=-11 dx= 0 dy= 0 + Pure Font ascent =30 descent=-7 + X Font ascent =31 descent=-8 + Max Font ascent =43 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur30[16505] U8G_SECTION(".progmem.u8g_font_fur30") = { + 0,54,54,253,245,30,9,94,20,223,32,255,249,43,245,31, + 248,0,0,0,12,0,0,4,30,30,14,5,0,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,0,0,0,240,240,240,240,12,12,24,18,3, + 18,240,240,240,240,240,240,240,240,240,240,240,240,240,112,224, + 112,224,112,96,112,96,112,96,96,26,30,120,30,2,0,0, + 28,14,0,0,28,28,0,0,28,28,0,0,28,28,0,0, + 56,24,0,0,56,56,0,0,56,56,0,0,112,56,0,0, + 112,112,0,31,255,255,192,31,255,255,128,31,255,255,128,0, + 224,224,0,0,224,224,0,1,192,224,0,1,193,192,0,1, + 193,192,0,127,255,254,0,255,255,254,0,255,255,254,0,3, + 3,128,0,7,7,0,0,7,7,0,0,7,7,0,0,14, + 7,0,0,14,14,0,0,14,14,0,0,14,14,0,0,28, + 28,0,0,28,28,0,0,20,37,111,22,1,252,0,96,0, + 0,96,0,0,96,0,3,252,0,15,254,0,63,255,0,63, + 255,128,124,103,128,120,99,192,240,99,192,240,99,192,240,96, + 0,240,96,0,240,96,0,120,96,0,127,96,0,63,240,0, + 31,254,0,15,255,128,1,255,192,0,111,224,0,97,224,0, + 96,240,0,96,240,0,96,240,240,96,240,240,96,240,240,96, + 240,120,96,240,124,97,224,63,255,192,31,255,128,15,255,0, + 0,96,0,0,96,0,0,96,0,0,96,0,33,31,155,37, + 2,0,0,0,0,224,0,15,192,0,192,0,31,240,1,192, + 0,63,248,1,128,0,120,60,3,0,0,240,60,7,0,0, + 240,30,6,0,0,240,30,14,0,0,240,30,12,0,0,240, + 30,28,0,0,240,30,24,0,0,240,28,56,0,0,112,60, + 48,0,0,120,124,112,0,0,63,248,224,0,0,31,240,192, + 96,0,3,129,195,252,0,0,1,135,254,0,0,3,143,15, + 0,0,3,14,7,0,0,7,30,7,128,0,6,30,7,128, + 0,14,30,7,128,0,28,30,7,128,0,28,30,7,128,0, + 56,30,7,128,0,56,30,7,128,0,112,15,15,0,0,96, + 15,254,0,0,224,7,252,0,0,192,1,248,0,27,30,120, + 30,2,1,3,254,0,0,7,255,0,0,15,143,128,0,15, + 3,192,0,30,3,192,0,30,3,192,0,30,3,192,0,30, + 3,192,0,31,7,128,0,15,15,128,0,15,191,0,0,7, + 252,0,0,3,248,0,0,7,224,15,0,15,240,15,0,63, + 248,15,0,124,124,15,0,120,62,15,0,248,31,15,0,240, + 15,142,0,240,7,206,0,240,3,254,0,240,1,254,0,240, + 0,252,0,248,0,124,0,124,0,126,0,126,1,255,0,63, + 255,255,128,31,255,207,192,7,255,3,224,4,12,12,15,5, + 18,240,240,240,240,112,112,112,112,112,112,112,112,7,36,36, + 15,4,251,14,14,28,28,60,56,56,120,120,120,112,112,240, + 240,240,240,240,240,240,240,240,240,240,240,112,112,120,120,120, + 56,56,60,28,28,14,14,7,36,36,14,4,251,224,224,96, + 112,112,120,56,56,60,60,60,28,28,28,30,30,30,30,30, + 30,30,30,28,28,60,60,60,60,56,56,120,112,112,224,224, + 224,16,15,30,26,5,15,12,48,28,56,14,112,14,112,7, + 224,3,192,253,191,255,255,243,207,3,192,6,96,14,112,30, + 120,28,56,12,48,24,25,75,40,8,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,255,255,255,255, + 255,255,255,255,255,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,7,10,10,11,2,251,62,60,60,124, + 120,120,112,112,224,224,10,3,6,14,2,8,255,192,255,192, + 255,192,4,5,5,11,4,0,240,240,240,240,240,12,33,66, + 16,2,254,0,112,0,112,0,96,0,224,0,224,0,224,0, + 192,1,192,1,192,1,128,3,128,3,128,3,128,7,0,7, + 0,7,0,6,0,14,0,14,0,14,0,28,0,28,0,28, + 0,24,0,56,0,56,0,56,0,112,0,112,0,112,0,96, + 0,224,0,224,0,18,30,90,22,2,1,7,248,0,31,254, + 0,63,255,0,60,15,0,120,7,128,120,7,128,112,7,128, + 112,3,128,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,112,3,192,112,3,128, + 120,7,128,120,7,128,56,7,0,60,15,0,31,254,0,15, + 254,0,7,248,0,10,30,60,22,5,0,7,192,15,192,31, + 192,63,192,127,192,251,192,243,192,195,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,17,30,90,22,2,1,15,248,0, + 31,252,0,63,254,0,124,15,0,120,7,0,120,7,128,120, + 7,128,240,7,128,0,7,128,0,7,128,0,7,128,0,15, + 0,0,31,0,0,30,0,0,62,0,0,124,0,0,248,0, + 0,248,0,1,240,0,3,224,0,7,192,0,15,128,0,31, + 0,0,31,0,0,62,0,0,124,0,0,248,0,0,255,255, + 128,255,255,128,255,255,128,18,30,90,22,2,1,7,248,0, + 31,254,0,62,31,0,60,7,128,124,3,128,120,3,192,120, + 3,192,120,3,192,0,3,192,0,3,128,0,7,128,0,15, + 0,0,62,0,3,252,0,3,248,0,3,254,0,0,63,0, + 0,15,128,0,7,128,0,3,192,0,3,192,0,3,192,240, + 3,192,240,3,192,248,3,192,120,7,128,124,15,128,62,31, + 0,31,254,0,15,248,0,20,30,90,22,1,0,0,15,128, + 0,31,128,0,31,128,0,63,128,0,127,128,0,127,128,0, + 247,128,1,231,128,1,231,128,3,199,128,3,135,128,7,135, + 128,15,7,128,14,7,128,30,7,128,60,7,128,60,7,128, + 120,7,128,240,7,128,240,7,128,255,255,240,255,255,240,255, + 255,240,0,7,128,0,7,128,0,7,128,0,7,128,0,7, + 128,0,7,128,0,7,128,18,30,90,22,2,0,127,255,0, + 127,255,0,127,255,0,120,0,0,120,0,0,120,0,0,120, + 0,0,120,0,0,120,0,0,120,0,0,120,96,0,123,252, + 0,127,254,0,126,31,0,124,7,128,120,7,128,112,3,128, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,240,3,192,240,7,128,240,7,128,120,15,0,127,254, + 0,31,252,0,15,248,0,19,30,90,22,2,1,3,252,0, + 15,255,0,31,255,0,63,15,128,62,7,128,124,3,192,120, + 3,192,120,3,192,240,0,0,240,0,0,240,0,0,240,0, + 0,241,252,0,243,255,0,247,255,128,254,7,128,252,3,192, + 252,3,192,248,1,192,248,1,224,248,1,224,248,1,224,248, + 1,224,248,1,224,120,1,192,124,3,192,60,7,128,31,15, + 128,15,255,0,7,252,0,18,30,90,22,2,0,255,255,192, + 255,255,192,255,255,192,0,3,192,0,3,192,0,7,128,0, + 7,128,0,7,128,0,15,0,0,15,0,0,31,0,0,30, + 0,0,30,0,0,60,0,0,60,0,0,60,0,0,120,0, + 0,120,0,0,248,0,0,240,0,0,240,0,1,240,0,1, + 224,0,1,224,0,3,192,0,3,192,0,7,192,0,7,128, + 0,7,128,0,15,128,0,19,30,90,22,2,1,7,252,0, + 31,254,0,62,15,128,60,7,128,120,3,192,120,3,192,120, + 3,192,120,3,192,120,3,192,120,3,192,56,3,128,60,7, + 128,30,15,0,15,254,0,7,252,0,31,254,0,60,7,128, + 120,3,128,112,1,192,240,1,192,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,120,3,192,120,3,192,62,15, + 128,31,255,0,7,252,0,19,30,90,22,2,1,7,252,0, + 31,255,0,62,31,128,120,7,128,120,3,192,112,3,192,240, + 3,192,240,3,224,240,1,224,240,1,224,240,3,224,240,3, + 224,240,3,224,112,3,224,120,7,224,60,15,224,63,253,224, + 31,249,224,7,241,224,0,1,192,0,1,192,0,1,192,0, + 3,192,112,3,192,112,3,128,120,7,128,56,15,0,62,31, + 0,31,254,0,15,248,0,4,20,20,11,4,0,240,240,240, + 240,240,0,0,0,0,0,0,0,0,0,0,240,240,240,240, + 240,6,26,26,11,2,250,60,60,60,60,60,0,0,0,0, + 0,0,0,0,0,0,0,60,60,60,56,120,112,112,112,224, + 224,24,21,63,40,8,2,0,0,1,0,0,15,0,0,63, + 0,1,252,0,7,224,0,63,0,1,252,0,7,224,0,63, + 0,0,252,0,0,224,0,0,248,0,0,126,0,0,15,192, + 0,3,248,0,0,126,0,0,31,192,0,3,240,0,0,126, + 0,0,31,0,0,3,24,10,30,40,8,7,255,255,255,255, + 255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0, + 0,255,255,255,255,255,255,255,255,255,24,21,63,40,8,2, + 128,0,0,240,0,0,252,0,0,63,128,0,7,224,0,0, + 252,0,0,63,0,0,7,224,0,0,252,0,0,63,0,0, + 7,0,0,31,0,0,126,0,3,240,0,31,192,0,126,0, + 3,248,0,15,192,0,126,0,0,248,0,0,192,0,0,18, + 30,90,21,1,1,15,248,0,31,254,0,63,255,0,126,127, + 128,248,7,128,112,3,192,0,3,192,0,3,192,0,3,192, + 0,7,128,0,7,128,0,15,0,0,30,0,0,60,0,0, + 120,0,1,240,0,1,224,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,3,192,0,0,0,0,0,0,0, + 0,0,0,3,192,0,3,192,0,3,192,0,3,192,0,35, + 37,185,39,2,249,0,7,252,0,0,0,63,255,128,0,0, + 255,255,240,0,1,255,255,248,0,7,248,3,252,0,15,224, + 0,126,0,15,128,0,31,0,31,0,0,15,128,62,0,0, + 7,128,60,0,0,7,192,120,7,231,131,192,120,15,247,131, + 192,112,31,255,129,224,240,62,31,129,224,240,60,15,129,224, + 240,120,7,129,224,240,120,7,129,224,240,120,7,129,224,240, + 120,7,129,224,240,120,7,129,224,240,120,7,129,224,240,120, + 7,129,192,240,120,7,129,192,112,56,15,131,192,120,60,15, + 135,128,120,30,27,255,0,124,31,251,255,0,60,15,240,252, + 0,62,1,128,48,0,31,0,0,0,0,31,128,0,0,0, + 15,224,0,0,0,7,248,0,128,0,3,255,255,128,0,0, + 255,255,128,0,0,63,255,128,0,0,7,254,0,0,28,30, + 120,30,1,0,0,15,0,0,0,31,128,0,0,31,128,0, + 0,63,192,0,0,63,192,0,0,127,192,0,0,121,224,0, + 0,121,224,0,0,241,240,0,0,240,240,0,1,240,240,0, + 1,224,248,0,1,224,120,0,3,224,124,0,3,192,60,0, + 7,192,60,0,7,128,62,0,7,128,30,0,15,128,31,0, + 15,255,255,0,31,255,255,128,31,255,255,128,30,0,7,128, + 60,0,3,192,60,0,3,192,124,0,3,224,120,0,1,224, + 120,0,1,224,240,0,0,240,240,0,0,240,21,30,90,26, + 3,0,255,254,0,255,255,128,255,255,192,255,255,224,240,7, + 224,240,1,240,240,0,240,240,0,240,240,0,240,240,0,240, + 240,0,224,240,1,224,240,7,192,255,255,128,255,255,0,255, + 255,192,240,3,224,240,0,240,240,0,112,240,0,120,240,0, + 120,240,0,120,240,0,120,240,0,248,240,1,248,240,7,240, + 255,255,224,255,255,224,255,255,128,255,254,0,22,30,90,26, + 2,1,1,255,128,7,255,224,15,255,240,31,0,248,62,0, + 120,60,0,60,120,0,60,120,0,60,120,0,0,112,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,112,0, + 0,112,0,0,120,0,60,120,0,60,60,0,60,60,0,120, + 31,0,248,15,255,240,7,255,224,1,255,128,23,30,90,28, + 3,0,255,248,0,255,255,0,255,255,192,255,255,224,240,15, + 240,240,1,248,240,0,248,240,0,124,240,0,60,240,0,60, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 60,240,0,60,240,0,124,240,0,248,240,1,240,240,7,240, + 255,255,224,255,255,192,255,255,0,255,248,0,19,30,90,24, + 3,0,255,255,192,255,255,192,255,255,192,255,255,192,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,255,255,192,255,255,192,255, + 255,192,255,255,192,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 255,255,224,255,255,224,255,255,224,255,255,224,17,30,90,23, + 3,0,255,255,128,255,255,128,255,255,128,255,255,128,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,255,255,0,255,255,0,255, + 255,0,255,255,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,25,30,120,30, + 2,1,0,255,224,0,3,255,248,0,7,255,252,0,15,255, + 254,0,31,128,63,0,62,0,15,0,60,0,7,128,120,0, + 7,128,120,0,0,0,112,0,0,0,240,0,0,0,240,0, + 0,0,240,0,0,0,240,0,0,0,240,3,255,128,240,3, + 255,128,240,3,255,128,240,3,255,128,240,0,7,128,240,0, + 7,128,120,0,7,128,120,0,7,128,124,0,7,128,62,0, + 7,128,62,0,7,128,31,128,7,128,15,255,255,128,7,255, + 255,128,3,255,255,0,0,255,248,0,22,30,90,28,3,0, + 240,0,60,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,255,255,252,255,255,252,255,255,252, + 255,255,252,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,240,0,60,4,30,30,10,3,0, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,17,30, + 90,22,2,0,0,7,128,0,7,128,0,7,128,0,7,128, + 0,7,128,0,7,128,0,7,128,0,7,128,0,7,128,0, + 7,128,0,7,128,0,7,128,0,7,128,0,7,128,0,7, + 128,0,7,128,0,7,128,0,7,128,0,7,128,0,7,128, + 0,7,128,0,7,128,240,7,128,240,7,128,240,15,128,120, + 31,0,127,255,0,63,254,0,31,252,0,15,240,0,22,30, + 90,26,3,0,240,1,240,240,3,224,240,7,192,240,15,128, + 240,31,0,240,30,0,240,60,0,240,124,0,240,248,0,241, + 240,0,243,224,0,247,192,0,255,128,0,255,128,0,255,192, + 0,247,192,0,243,224,0,243,240,0,241,248,0,240,252,0, + 240,124,0,240,62,0,240,31,0,240,31,128,240,15,192,240, + 7,192,240,3,224,240,1,240,240,1,248,240,0,252,17,30, + 90,21,3,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,255,255,128,255,255,128,255,255,128,255,255,128,30,30, + 120,36,3,0,252,0,0,252,254,0,1,252,254,0,1,252, + 254,0,1,252,255,0,3,252,255,0,3,252,247,128,7,188, + 247,128,7,188,247,128,7,188,243,192,15,60,243,192,15,60, + 243,192,14,60,241,224,30,60,241,224,30,60,240,224,28,60, + 240,240,60,60,240,240,60,60,240,120,120,60,240,120,120,60, + 240,120,120,60,240,60,240,60,240,60,240,60,240,28,224,60, + 240,31,224,60,240,31,224,60,240,15,192,60,240,15,192,60, + 240,15,192,60,240,7,128,60,240,7,128,60,22,30,90,28, + 3,0,252,0,60,252,0,60,254,0,60,254,0,60,255,0, + 60,255,0,60,255,128,60,247,128,60,247,192,60,243,192,60, + 243,224,60,241,224,60,241,240,60,240,240,60,240,248,60,240, + 120,60,240,124,60,240,60,60,240,62,60,240,30,60,240,31, + 60,240,15,60,240,15,188,240,7,188,240,3,252,240,3,252, + 240,1,252,240,1,252,240,0,252,240,0,252,26,30,120,30, + 2,1,1,255,224,0,3,255,240,0,15,255,252,0,31,255, + 254,0,31,0,62,0,62,0,31,0,60,0,15,0,120,0, + 7,128,120,0,7,128,112,0,3,128,240,0,3,192,240,0, + 3,192,240,0,3,192,240,0,3,192,240,0,3,192,240,0, + 3,192,240,0,3,192,240,0,3,192,240,0,3,192,112,0, + 3,128,120,0,7,128,120,0,7,128,120,0,15,128,60,0, + 15,0,62,0,31,0,31,128,126,0,15,255,252,0,7,255, + 248,0,3,255,240,0,0,255,192,0,19,30,90,24,3,0, + 255,248,0,255,254,0,255,255,128,255,255,192,240,15,192,240, + 3,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,3,224,240,15,192,255,255,192,255,255,128, + 255,254,0,255,248,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,28,30,120,31,2,1, + 0,255,192,0,3,255,240,0,15,255,252,0,31,255,254,0, + 31,0,62,0,62,0,31,0,60,0,15,128,120,0,7,128, + 120,0,7,128,112,0,3,192,240,0,3,192,240,0,3,192, + 240,0,3,192,240,0,3,192,240,0,3,192,240,0,3,192, + 240,0,3,192,240,0,3,192,240,0,3,192,112,0,3,128, + 120,0,7,128,120,0,7,128,120,0,15,0,60,0,15,0, + 62,0,30,0,31,128,126,0,15,255,255,240,7,255,255,240, + 3,255,255,240,0,255,255,240,20,30,90,25,3,0,255,252, + 0,255,255,0,255,255,192,255,255,224,240,7,224,240,1,224, + 240,0,240,240,0,240,240,0,240,240,0,240,240,0,224,240, + 1,224,240,7,192,255,255,128,255,255,0,255,255,0,255,255, + 128,240,7,192,240,3,192,240,3,192,240,1,224,240,1,224, + 240,1,224,240,1,224,240,0,224,240,0,224,240,0,240,240, + 0,240,240,0,240,240,0,112,22,30,90,26,2,1,3,255, + 0,15,255,192,63,255,224,63,255,240,124,0,240,120,0,120, + 240,0,120,240,0,120,240,0,0,240,0,0,120,0,0,124, + 0,0,63,128,0,31,252,0,15,255,128,0,255,224,0,7, + 240,0,0,248,0,0,120,0,0,56,0,0,60,240,0,60, + 240,0,60,240,0,60,120,0,120,124,0,248,63,255,240,63, + 255,240,31,255,192,7,255,0,23,30,90,25,1,0,255,255, + 254,255,255,254,255,255,254,255,255,254,0,120,0,0,120,0, + 0,120,0,0,120,0,0,120,0,0,120,0,0,120,0,0, + 120,0,0,120,0,0,120,0,0,120,0,0,120,0,0,120, + 0,0,120,0,0,120,0,0,120,0,0,120,0,0,120,0, + 0,120,0,0,120,0,0,120,0,0,120,0,0,120,0,0, + 120,0,0,120,0,0,120,0,23,30,90,29,3,0,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 120,0,60,120,0,60,124,0,124,62,0,248,63,255,248,31, + 255,240,15,255,224,3,255,128,24,30,90,26,1,0,240,0, + 15,248,0,15,248,0,31,120,0,30,124,0,30,124,0,62, + 60,0,60,62,0,60,30,0,124,30,0,120,31,0,120,15, + 0,248,15,0,240,15,0,240,7,129,240,7,129,224,7,129, + 224,3,195,224,3,195,192,3,195,192,1,231,192,1,231,128, + 1,231,128,0,255,128,0,255,0,0,255,0,0,126,0,0, + 126,0,0,126,0,0,60,0,37,30,150,39,1,0,240,0, + 248,0,120,240,0,248,0,120,240,1,248,0,248,120,1,252, + 0,240,120,1,252,0,240,120,1,220,0,240,124,3,222,1, + 224,60,3,222,1,224,60,3,222,1,224,60,3,142,1,224, + 30,7,143,3,192,30,7,143,3,192,30,7,15,3,192,30, + 7,7,3,128,15,15,7,135,128,15,15,7,135,128,15,14, + 3,135,128,7,14,3,135,0,7,158,3,207,0,7,158,3, + 207,0,7,156,1,206,0,3,156,1,222,0,3,252,1,254, + 0,3,252,1,254,0,1,248,0,252,0,1,248,0,252,0, + 1,248,0,252,0,1,240,0,248,0,0,240,0,120,0,0, + 240,0,120,0,26,30,120,28,1,0,62,0,15,0,62,0, + 31,0,31,0,30,0,15,128,60,0,15,128,124,0,7,192, + 120,0,3,224,240,0,3,224,240,0,1,241,224,0,0,243, + 224,0,0,251,192,0,0,127,128,0,0,63,128,0,0,63, + 0,0,0,63,0,0,0,63,128,0,0,127,128,0,0,247, + 192,0,0,243,224,0,1,227,224,0,3,225,240,0,3,192, + 248,0,7,128,248,0,15,128,124,0,15,0,62,0,31,0, + 62,0,62,0,31,0,60,0,31,0,124,0,15,128,248,0, + 7,192,24,30,90,26,1,0,248,0,15,248,0,31,124,0, + 30,124,0,60,62,0,124,30,0,120,31,0,248,15,0,240, + 15,129,224,7,129,224,3,195,192,3,227,192,1,231,128,1, + 247,0,0,255,0,0,254,0,0,126,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 60,0,21,30,90,25,2,0,127,255,248,127,255,248,127,255, + 248,127,255,248,0,0,248,0,1,248,0,1,240,0,3,224, + 0,7,192,0,15,128,0,31,128,0,31,0,0,62,0,0, + 124,0,0,252,0,0,248,0,1,240,0,3,224,0,7,192, + 0,15,192,0,15,128,0,31,0,0,62,0,0,126,0,0, + 252,0,0,248,0,0,255,255,248,255,255,248,255,255,248,255, + 255,248,8,38,38,16,4,248,255,255,255,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,255,255,255,12,33, + 66,16,2,254,224,0,224,0,224,0,96,0,112,0,112,0, + 48,0,56,0,56,0,56,0,28,0,28,0,28,0,12,0, + 14,0,14,0,6,0,7,0,7,0,7,0,3,0,3,128, + 3,128,1,128,1,192,1,192,1,192,0,192,0,224,0,224, + 0,96,0,112,0,112,8,38,38,16,4,248,255,255,255,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,255, + 255,255,20,25,75,40,10,0,0,96,0,0,240,0,0,240, + 0,0,240,0,1,248,0,1,152,0,3,156,0,3,12,0, + 3,12,0,7,14,0,6,6,0,6,6,0,14,7,0,12, + 3,0,28,3,128,28,1,128,24,1,128,56,1,192,48,0, + 192,48,0,192,112,0,224,96,0,96,224,0,112,224,0,112, + 192,0,48,20,3,9,20,0,251,255,255,240,255,255,240,255, + 255,240,8,7,7,9,255,25,240,120,56,28,14,14,7,18, + 20,60,23,2,1,15,254,0,63,255,0,62,15,128,120,7, + 128,120,3,192,0,3,192,0,3,192,3,255,192,15,255,192, + 63,255,192,126,3,192,120,3,192,240,3,192,240,3,192,240, + 7,192,240,7,192,248,15,192,124,63,192,63,251,192,31,227, + 192,19,30,90,24,3,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,243,252,0,247,255,0,255,15,128,252,7, + 128,248,3,192,248,3,192,240,1,192,240,1,224,240,1,224, + 240,1,224,240,1,224,240,1,224,240,1,192,240,3,192,240, + 3,192,248,7,128,252,7,128,254,31,0,247,254,0,243,252, + 0,17,20,60,21,2,1,15,252,0,31,254,0,62,31,0, + 120,15,128,120,7,128,240,7,128,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,7, + 128,112,7,128,120,7,128,120,15,0,62,31,0,31,254,0, + 15,252,0,19,30,90,24,2,0,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,15,249,224,31,253,224,62,31,224, + 60,7,224,120,7,224,120,3,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,120,3,224,120,3,224,60,7,224,31,15,224,15,255,224, + 7,249,224,18,20,60,22,2,1,7,252,0,31,254,0,62, + 31,0,60,7,128,120,3,128,112,3,192,240,3,192,240,3, + 192,255,255,192,255,255,192,255,255,192,240,0,0,240,0,0, + 240,0,0,112,3,192,120,7,128,56,7,128,62,31,0,31, + 254,0,7,252,0,13,30,60,14,1,0,1,248,3,248,7, + 248,15,128,15,0,15,0,15,0,15,0,15,0,15,0,255, + 240,255,240,255,240,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,19,28,84,24,2,249,15,249,224, + 31,253,224,62,31,224,120,7,224,120,3,224,112,3,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,3,224,120,3,224,124,7,224,62,15,224, + 31,253,224,15,249,224,0,129,224,0,1,224,0,3,192,120, + 3,192,120,3,192,60,7,128,63,255,0,15,254,0,3,248, + 0,18,30,90,24,3,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,243,254,0,247,255,0,254,31,128,248,7, + 128,240,7,128,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,4,30,30,8,2,0,240,240,240,240,0,0,0,0,0, + 0,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,7,38,38,11,2,248,30,30,30,30,0, + 0,0,0,0,0,30,30,30,30,30,30,30,30,30,30,30, + 30,30,30,30,30,30,30,30,30,30,30,30,30,30,254,252, + 248,16,30,60,20,3,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,30,240,62,240, + 124,240,248,241,240,243,224,247,192,255,128,255,0,255,0,247, + 128,247,192,243,224,241,240,240,240,240,248,240,124,240,62,240, + 30,240,31,4,30,30,10,3,0,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,30,20,80,36,3,1,243,252,31, + 224,247,254,63,240,254,31,112,248,252,15,224,120,248,7,192, + 60,240,7,128,60,240,7,128,60,240,7,128,60,240,7,128, + 60,240,7,128,60,240,7,128,60,240,7,128,60,240,7,128, + 60,240,7,128,60,240,7,128,60,240,7,128,60,240,7,128, + 60,240,7,128,60,240,7,128,60,240,7,128,60,18,20,60, + 24,3,1,243,254,0,247,255,0,254,31,128,248,7,128,248, + 7,128,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,20, + 20,60,24,2,1,7,252,0,15,255,0,63,15,128,60,3, + 192,120,3,224,120,1,224,240,1,224,240,0,240,240,0,240, + 240,0,240,240,0,240,240,0,240,240,0,240,240,1,224,120, + 1,224,120,3,224,60,3,192,63,15,128,15,255,0,7,254, + 0,19,28,84,24,3,249,243,254,0,247,255,0,254,15,128, + 252,7,192,248,3,192,248,3,192,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,248,3,192,248,3,192,252,7,192,254,15,128,247,255,0, + 243,254,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,19,28,84,24,2, + 249,15,249,224,31,253,224,62,15,224,124,7,224,120,3,224, + 120,3,224,240,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,120,3,224,120,3, + 224,124,7,224,62,15,224,31,253,224,15,249,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,11,20,40,15,3,0,243,224,247,224,255, + 224,254,0,248,0,248,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,16,20,40,20,2,1,31,248,63,254,124,62,248, + 31,240,15,240,0,240,0,124,0,127,192,63,248,15,254,0, + 126,0,31,0,15,240,15,240,15,240,31,124,62,127,252,31, + 248,12,25,50,14,1,1,14,0,30,0,30,0,30,0,30, + 0,255,240,255,240,255,240,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,15,0,15,240,7,240,18,20,60,24,3,0,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,7,192,120, + 15,192,126,31,192,63,251,192,31,243,192,20,20,60,21,1, + 0,240,0,240,240,1,224,120,1,224,120,1,192,124,3,192, + 60,3,192,60,7,128,30,7,128,30,7,0,15,15,0,15, + 14,0,15,14,0,7,158,0,7,156,0,3,252,0,3,248, + 0,3,248,0,1,248,0,1,240,0,0,240,0,31,20,80, + 33,1,0,240,7,192,30,240,15,192,28,240,15,192,60,120, + 15,224,60,120,30,224,56,120,30,224,120,56,28,240,120,60, + 28,112,112,60,60,112,112,28,56,120,240,30,56,56,224,30, + 120,56,224,14,112,57,224,15,112,29,192,15,240,29,192,7, + 224,31,192,7,224,31,128,7,224,15,128,3,192,15,128,3, + 192,15,0,20,20,60,22,1,0,120,1,224,60,3,192,62, + 3,192,31,7,128,15,15,0,7,158,0,7,222,0,3,252, + 0,1,248,0,0,240,0,1,248,0,3,252,0,3,188,0, + 7,158,0,15,31,0,30,15,128,62,7,128,60,3,192,120, + 3,224,240,1,240,20,28,84,21,1,248,240,0,240,240,1, + 224,120,1,224,120,1,192,60,3,192,60,3,192,62,7,128, + 30,7,128,30,7,128,15,15,0,15,15,0,15,158,0,7, + 158,0,7,158,0,3,252,0,3,252,0,1,248,0,1,248, + 0,1,248,0,0,240,0,0,240,0,0,224,0,1,224,0, + 1,224,0,1,192,0,3,192,0,3,128,0,7,128,0,15, + 20,40,19,2,0,127,254,127,254,127,254,0,62,0,124,0, + 120,0,240,1,240,3,224,3,192,7,128,15,128,31,0,30, + 0,60,0,124,0,248,0,255,254,255,254,255,254,13,41,82, + 19,3,246,0,24,1,248,3,248,3,224,7,128,7,128,7, + 128,7,0,7,0,7,0,7,0,7,128,7,128,7,0,7, + 0,7,0,15,0,31,0,62,0,252,0,248,0,252,0,126, + 0,30,0,15,0,15,0,7,0,7,0,7,0,7,128,7, + 128,7,0,7,0,7,0,7,0,7,128,7,128,3,192,3, + 248,1,248,0,120,2,43,43,14,6,245,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,13,41,82,19,3,246,192,0,252,0, + 254,0,30,0,15,0,15,0,7,0,7,0,7,0,7,0, + 7,0,7,128,7,128,7,128,7,128,7,128,7,128,3,192, + 3,224,1,248,0,248,1,248,1,240,3,192,3,192,7,128, + 7,128,7,128,7,128,7,128,7,128,7,0,7,0,7,0, + 7,0,7,0,15,0,31,0,254,0,252,0,240,0,21,5, + 15,21,0,8,2,0,56,31,240,120,63,255,240,120,127,224, + 240,15,128,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,0,0,0,12,0,0,4,28,28,14,5,248, + 240,240,240,240,0,0,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,17,31,93,23, + 3,250,0,12,0,0,12,0,0,24,0,0,24,0,0,24, + 0,15,248,0,63,254,0,62,63,0,120,119,0,120,103,0, + 240,103,128,240,96,0,240,192,0,240,192,0,240,192,0,241, + 128,0,241,128,0,241,128,0,243,7,128,243,7,128,123,7, + 0,126,15,0,62,30,0,31,254,0,15,248,0,12,0,0, + 12,0,0,28,0,0,24,0,0,24,0,0,8,0,0,20, + 31,93,23,2,0,0,16,0,1,255,0,7,255,192,15,135, + 224,15,1,224,30,0,240,30,0,240,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,255,248,0,255,248,0,255, + 248,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,255,255,224,255,255,224,255, + 255,224,21,22,66,25,2,7,192,0,24,224,0,56,96,48, + 48,51,254,96,63,255,224,31,7,192,28,1,192,24,0,192, + 56,0,224,48,0,96,48,0,96,48,0,96,48,0,96,56, + 0,224,24,0,192,28,1,192,14,3,128,31,255,192,59,254, + 224,112,248,112,224,0,56,192,0,24,21,30,90,23,1,0, + 240,0,120,248,0,120,120,0,240,124,0,240,60,1,240,62, + 1,224,30,1,224,30,3,192,15,3,192,15,7,128,255,135, + 248,255,143,248,255,207,248,3,207,0,1,254,0,1,252,0, + 255,255,248,255,255,248,255,255,248,0,120,0,0,120,0,0, + 120,0,0,120,0,0,120,0,0,120,0,0,120,0,0,120, + 0,0,120,0,0,120,0,0,120,0,2,38,38,14,6,248, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 0,0,0,0,0,0,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,15,37,74,19,2,250,15,248,31,248, + 62,24,60,0,120,0,120,0,120,0,120,0,60,0,63,0, + 31,128,15,224,15,240,63,248,124,124,120,62,240,30,240,30, + 240,30,240,60,248,120,127,240,63,224,31,224,7,240,1,248, + 0,124,0,60,0,30,0,30,0,30,0,28,0,60,96,248, + 127,240,127,224,3,0,12,4,8,12,0,26,240,240,240,240, + 240,240,240,240,30,30,120,34,2,1,0,63,240,0,0,255, + 252,0,3,240,63,0,7,128,7,128,15,0,3,192,28,3, + 0,224,56,63,240,112,56,127,248,112,112,248,124,56,97,240, + 30,24,97,224,30,24,225,224,30,28,195,192,0,12,195,192, + 0,12,195,192,0,12,195,192,0,12,195,192,0,12,195,192, + 0,12,193,192,30,12,97,224,30,24,97,224,30,24,96,240, + 60,56,48,255,252,48,56,63,248,112,28,15,224,224,14,0, + 1,192,7,0,3,128,3,192,15,0,1,255,252,0,0,63, + 240,0,14,19,38,16,1,11,15,192,63,240,56,120,112,56, + 0,56,0,56,15,248,63,248,120,56,224,56,224,56,224,120, + 240,248,127,184,31,56,0,0,0,0,255,252,255,252,16,16, + 32,22,3,2,7,7,15,14,14,14,28,28,60,60,56,120, + 120,112,240,240,240,240,120,112,56,120,60,60,28,28,14,14, + 15,14,7,7,21,10,30,25,2,8,255,255,248,255,255,248, + 255,255,248,0,0,24,0,0,24,0,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,255,30,30,120,34,2,1,0, + 63,240,0,0,255,252,0,3,240,63,0,7,128,7,128,14, + 0,1,192,28,127,240,224,56,127,248,112,48,127,252,48,112, + 112,30,56,96,112,14,24,96,112,14,24,192,112,14,12,192, + 112,28,12,192,127,248,12,192,127,240,12,192,127,248,12,192, + 112,28,12,192,112,28,12,192,112,28,12,96,112,12,24,96, + 112,12,24,112,112,14,56,48,112,14,48,56,112,14,112,28, + 0,0,224,14,0,1,192,7,128,7,128,3,240,63,0,1, + 255,252,0,0,63,240,0,12,3,6,12,0,26,255,240,255, + 240,255,240,9,9,18,13,2,21,62,0,127,0,227,128,193, + 128,193,128,193,128,227,128,127,0,62,0,24,24,72,40,8, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,255,255,255,255,255,255,255,255,255,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,0,0,0,0,0,0,0,0,0,0,0, + 255,255,255,255,255,255,255,255,255,12,16,32,14,1,15,31, + 192,127,224,120,240,112,112,224,112,0,112,0,224,1,224,3, + 192,7,128,14,0,60,0,120,0,255,240,255,240,255,240,12, + 16,32,14,1,15,63,192,127,224,112,240,96,112,0,112,0, + 240,7,224,7,128,7,224,0,240,0,112,224,112,224,112,127, + 224,127,192,31,128,8,7,7,9,2,25,15,30,28,56,56, + 112,224,255,18,36,108,22,2,250,3,255,192,15,255,192,63, + 195,0,127,195,0,127,195,0,255,195,0,255,195,0,255,195, + 0,255,195,0,255,195,0,255,195,0,127,195,0,127,195,0, + 63,195,0,15,195,0,0,195,0,0,195,0,0,195,0,0, + 195,0,0,195,0,0,195,0,0,195,0,0,195,0,0,195, + 0,0,195,0,0,195,0,0,195,0,0,195,0,0,195,0, + 0,195,0,0,195,0,0,195,0,0,195,0,0,195,0,0, + 195,0,0,195,0,4,5,5,10,3,11,240,240,240,240,240, + 10,10,20,10,2,246,48,0,48,0,62,0,63,128,7,128, + 1,192,1,192,3,192,255,128,254,0,7,16,16,12,2,14, + 30,62,254,238,142,14,14,14,14,14,14,14,14,14,14,14, + 14,19,38,16,1,10,15,192,63,224,120,112,112,56,224,56, + 224,28,224,28,224,28,224,28,224,28,224,56,112,56,56,112, + 31,224,7,128,0,0,0,0,255,252,255,252,16,16,32,22, + 3,2,224,224,112,112,120,120,56,56,28,60,30,30,15,14, + 15,15,15,15,15,14,30,30,28,60,56,56,120,120,112,112, + 224,224,28,30,120,32,2,0,30,0,12,0,62,0,28,0, + 254,0,56,0,238,0,56,0,142,0,112,0,14,0,112,0, + 14,0,224,0,14,0,192,0,14,1,192,0,14,3,128,0, + 14,3,128,0,14,7,0,0,14,7,0,0,14,14,0,0, + 14,12,7,128,14,28,7,128,0,56,15,128,0,56,31,128, + 0,112,27,128,0,112,59,128,0,224,115,128,0,224,99,128, + 1,192,195,128,1,129,195,128,3,129,255,240,7,1,255,240, + 7,0,3,128,14,0,3,128,14,0,3,128,28,0,3,128, + 28,30,120,32,2,0,30,0,28,0,62,0,28,0,254,0, + 56,0,238,0,56,0,142,0,112,0,14,0,112,0,14,0, + 224,0,14,0,224,0,14,1,192,0,14,3,128,0,14,3, + 128,0,14,7,0,0,14,7,0,0,14,14,0,0,14,14, + 31,128,14,28,63,224,0,56,121,224,0,56,112,112,0,112, + 240,112,0,112,0,112,0,224,0,240,0,224,0,224,1,192, + 3,192,1,128,7,128,3,128,15,0,7,0,60,0,7,0, + 120,0,14,0,255,240,14,0,255,240,28,0,255,240,30,31, + 124,32,1,0,0,0,1,192,63,192,3,128,127,224,3,128, + 112,240,7,0,96,112,6,0,0,112,14,0,0,240,28,0, + 7,224,28,0,7,128,56,0,7,224,56,0,0,240,112,0, + 0,112,112,0,224,112,224,0,224,113,192,0,127,225,192,0, + 127,195,129,224,31,131,129,224,0,7,3,224,0,7,7,224, + 0,14,6,224,0,12,12,224,0,28,28,224,0,56,24,224, + 0,56,48,224,0,112,112,224,0,112,127,252,0,224,127,252, + 0,224,0,224,1,192,0,224,1,128,0,224,3,128,0,224, + 17,28,84,21,2,248,0,240,0,0,240,0,0,240,0,0, + 240,0,0,0,0,0,0,0,0,0,0,0,240,0,0,240, + 0,0,240,0,0,240,0,1,240,0,1,224,0,7,192,0, + 15,128,0,31,0,0,60,0,0,120,0,0,240,0,0,240, + 0,0,240,0,0,240,3,0,240,3,128,124,15,128,127,255, + 0,63,254,0,31,252,0,3,240,0,28,41,164,30,1,0, + 0,240,0,0,0,240,0,0,0,120,0,0,0,56,0,0, + 0,28,0,0,0,14,0,0,0,14,0,0,0,7,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,15,0,0, + 0,31,128,0,0,31,128,0,0,63,192,0,0,63,192,0, + 0,127,192,0,0,121,224,0,0,121,224,0,0,241,240,0, + 0,240,240,0,1,240,240,0,1,224,248,0,1,224,120,0, + 3,224,124,0,3,192,60,0,7,192,60,0,7,128,62,0, + 7,128,30,0,15,128,31,0,15,255,255,0,31,255,255,128, + 31,255,255,128,30,0,7,128,60,0,3,192,60,0,3,192, + 124,0,3,224,120,0,1,224,120,0,1,224,240,0,0,240, + 240,0,0,240,28,41,164,30,1,0,0,0,240,0,0,0, + 240,0,0,1,224,0,0,1,192,0,0,3,128,0,0,7, + 0,0,0,7,0,0,0,14,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,15,0,0,0,31,128,0,0,31, + 128,0,0,63,192,0,0,63,192,0,0,127,192,0,0,121, + 224,0,0,121,224,0,0,241,240,0,0,240,240,0,1,240, + 240,0,1,224,248,0,1,224,120,0,3,224,124,0,3,192, + 60,0,7,192,60,0,7,128,62,0,7,128,30,0,15,128, + 31,0,15,255,255,0,31,255,255,128,31,255,255,128,30,0, + 7,128,60,0,3,192,60,0,3,192,124,0,3,224,120,0, + 1,224,120,0,1,224,240,0,0,240,240,0,0,240,28,41, + 164,30,1,0,0,15,0,0,0,31,128,0,0,31,128,0, + 0,63,192,0,0,57,192,0,0,112,224,0,0,96,96,0, + 0,224,112,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,15,0,0,0,31,128,0,0,31,128,0,0,63,192,0, + 0,63,192,0,0,127,192,0,0,121,224,0,0,121,224,0, + 0,241,240,0,0,240,240,0,1,240,240,0,1,224,248,0, + 1,224,120,0,3,224,124,0,3,192,60,0,7,192,60,0, + 7,128,62,0,7,128,30,0,15,128,31,0,15,255,255,0, + 31,255,255,128,31,255,255,128,30,0,7,128,60,0,3,192, + 60,0,3,192,124,0,3,224,120,0,1,224,120,0,1,224, + 240,0,0,240,240,0,0,240,28,39,156,30,1,0,0,16, + 48,0,0,126,112,0,0,127,224,0,0,231,224,0,0,192, + 128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,15,0,0,0,31,128,0,0,31,128,0,0,63, + 192,0,0,63,192,0,0,127,192,0,0,121,224,0,0,121, + 224,0,0,241,240,0,0,240,240,0,1,240,240,0,1,224, + 248,0,1,224,120,0,3,224,124,0,3,192,60,0,7,192, + 60,0,7,128,62,0,7,128,30,0,15,128,31,0,15,255, + 255,0,31,255,255,128,31,255,255,128,30,0,7,128,60,0, + 3,192,60,0,3,192,124,0,3,224,120,0,1,224,120,0, + 1,224,240,0,0,240,240,0,0,240,29,39,156,30,1,0, + 0,120,120,0,0,120,120,0,0,120,120,0,0,120,120,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,15,128,0,0,15,128,0,0,31,128,0, + 0,31,192,0,0,63,192,0,0,61,224,0,0,125,224,0, + 0,121,240,0,0,120,240,0,0,240,240,0,0,240,248,0, + 1,240,120,0,1,224,124,0,1,224,60,0,3,224,60,0, + 3,192,62,0,7,192,30,0,7,128,31,0,7,128,15,0, + 15,255,255,128,15,255,255,128,31,255,255,128,30,0,3,192, + 30,0,3,192,60,0,3,224,60,0,1,224,120,0,1,224, + 120,0,0,240,120,0,0,240,240,0,0,248,28,43,172,30, + 1,0,0,14,0,0,0,63,0,0,0,49,128,0,0,96, + 192,0,0,96,192,0,0,96,192,0,0,96,192,0,0,49, + 128,0,0,63,128,0,0,14,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,31,0,0,0,31,0,0,0,31, + 128,0,0,63,128,0,0,63,192,0,0,123,192,0,0,123, + 192,0,0,121,224,0,0,241,224,0,0,241,240,0,1,224, + 240,0,1,224,248,0,1,224,120,0,3,192,120,0,3,192, + 124,0,7,192,60,0,7,128,62,0,15,128,30,0,15,0, + 30,0,15,255,255,0,31,255,255,0,31,255,255,128,60,0, + 7,128,60,0,7,192,60,0,3,192,120,0,3,192,120,0, + 1,224,240,0,1,224,240,0,1,240,240,0,0,240,37,30, + 150,39,0,0,0,1,255,255,240,0,1,255,255,240,0,3, + 255,255,240,0,3,255,255,240,0,7,252,0,0,0,7,188, + 0,0,0,15,188,0,0,0,15,60,0,0,0,31,60,0, + 0,0,30,60,0,0,0,62,60,0,0,0,60,60,0,0, + 0,124,60,0,0,0,120,63,255,240,0,248,63,255,240,0, + 240,63,255,240,1,240,63,255,240,1,224,60,0,0,3,224, + 60,0,0,3,255,252,0,0,7,255,252,0,0,7,255,252, + 0,0,15,0,60,0,0,31,0,60,0,0,30,0,60,0, + 0,62,0,60,0,0,60,0,63,255,248,124,0,63,255,248, + 120,0,63,255,248,248,0,63,255,248,22,40,120,26,2,247, + 1,255,128,7,255,224,15,255,240,31,0,248,62,0,120,60, + 0,60,120,0,60,120,0,60,120,0,0,112,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,112, + 0,0,120,0,60,120,0,60,60,0,60,60,0,120,31,0, + 248,15,255,240,7,255,224,3,255,128,0,48,0,0,48,0, + 0,62,0,0,63,128,0,63,192,0,1,192,0,1,192,0, + 1,192,0,255,128,0,254,0,19,41,123,24,3,0,30,0, + 0,15,0,0,7,0,0,3,128,0,3,128,0,1,192,0, + 0,224,0,0,96,0,0,0,0,0,0,0,0,0,0,255, + 255,192,255,255,192,255,255,192,255,255,192,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,255,255,192,255,255,192,255,255,192,255, + 255,192,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,255,255,224, + 255,255,224,255,255,224,255,255,224,19,41,123,24,3,0,0, + 30,0,0,60,0,0,56,0,0,120,0,0,240,0,0,224, + 0,1,192,0,1,128,0,0,0,0,0,0,0,0,0,0, + 255,255,192,255,255,192,255,255,192,255,255,192,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,255,255,192,255,255,192,255,255,192, + 255,255,192,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,255,255, + 224,255,255,224,255,255,224,255,255,224,19,41,123,24,3,0, + 1,224,0,3,240,0,7,240,0,7,120,0,15,56,0,14, + 28,0,28,28,0,24,14,0,0,0,0,0,0,0,0,0, + 0,255,255,192,255,255,192,255,255,192,255,255,192,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,255,255,192,255,255,192,255,255, + 192,255,255,192,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,255, + 255,224,255,255,224,255,255,224,255,255,224,19,39,117,24,3, + 0,30,30,0,30,30,0,30,30,0,30,30,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,192,255, + 255,192,255,255,192,255,255,192,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,255,255,192,255,255,192,255,255,192,255,255,192,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,255,255,224,255,255,224, + 255,255,224,255,255,224,8,41,41,10,255,0,240,120,56,28, + 30,14,7,3,0,0,0,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,7,41,41,10,3,0,30,30,60,56,112, + 112,224,192,0,0,0,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,12,41,82,10,255,0,15,0,31,0,31,128, + 63,128,57,192,112,224,96,224,224,112,0,0,0,0,0,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,12,39,78,11, + 0,0,240,240,240,240,240,240,240,240,0,0,0,0,0,0, + 0,0,0,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 26,30,120,28,0,0,31,255,0,0,31,255,224,0,31,255, + 248,0,31,255,252,0,30,0,254,0,30,0,63,0,30,0, + 31,0,30,0,15,128,30,0,7,128,30,0,7,128,30,0, + 3,192,30,0,3,192,30,0,3,192,30,0,3,192,255,252, + 3,192,255,252,3,192,255,252,3,192,30,0,3,192,30,0, + 3,192,30,0,3,192,30,0,7,128,30,0,7,128,30,0, + 15,128,30,0,31,0,30,0,63,0,30,0,254,0,31,255, + 252,0,31,255,248,0,31,255,224,0,31,255,0,0,22,39, + 117,28,3,0,0,131,0,3,243,0,7,255,0,7,62,0, + 6,8,0,0,0,0,0,0,0,0,0,0,0,0,0,252, + 0,60,252,0,60,254,0,60,254,0,60,255,0,60,255,0, + 60,255,128,60,247,128,60,247,192,60,243,192,60,243,224,60, + 241,224,60,241,240,60,240,240,60,240,248,60,240,120,60,240, + 124,60,240,60,60,240,62,60,240,30,60,240,31,60,240,15, + 60,240,15,188,240,7,188,240,3,252,240,3,252,240,1,252, + 240,1,252,240,0,252,240,0,252,26,41,164,30,2,0,1, + 224,0,0,0,240,0,0,0,120,0,0,0,56,0,0,0, + 28,0,0,0,28,0,0,0,14,0,0,0,7,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,1,255,224,0,3, + 255,240,0,15,255,252,0,31,255,254,0,31,0,62,0,62, + 0,31,0,60,0,15,0,120,0,7,128,120,0,7,128,112, + 0,3,128,240,0,3,192,240,0,3,192,240,0,3,192,240, + 0,3,192,240,0,3,192,240,0,3,192,240,0,3,192,240, + 0,3,192,240,0,3,192,112,0,3,128,120,0,7,128,120, + 0,7,128,120,0,15,128,60,0,15,0,62,0,31,0,31, + 128,126,0,15,255,252,0,7,255,248,0,3,255,240,0,0, + 255,192,0,26,41,164,30,2,0,0,1,224,0,0,3,192, + 0,0,7,128,0,0,7,0,0,0,15,0,0,0,14,0, + 0,0,28,0,0,0,24,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,1,255,224,0,3,255,240,0,15,255,252, + 0,31,255,254,0,31,0,62,0,62,0,31,0,60,0,15, + 0,120,0,7,128,120,0,7,128,112,0,3,128,240,0,3, + 192,240,0,3,192,240,0,3,192,240,0,3,192,240,0,3, + 192,240,0,3,192,240,0,3,192,240,0,3,192,240,0,3, + 192,112,0,3,128,120,0,7,128,120,0,7,128,120,0,15, + 128,60,0,15,0,62,0,31,0,31,128,126,0,15,255,252, + 0,7,255,248,0,3,255,240,0,0,255,192,0,26,41,164, + 30,2,0,0,30,0,0,0,63,0,0,0,63,0,0,0, + 127,128,0,0,115,128,0,0,225,192,0,0,192,224,0,1, + 192,96,0,0,0,0,0,0,0,0,0,0,0,0,0,1, + 255,224,0,3,255,240,0,15,255,252,0,31,255,254,0,31, + 0,62,0,62,0,31,0,60,0,15,0,120,0,7,128,120, + 0,7,128,112,0,3,128,240,0,3,192,240,0,3,192,240, + 0,3,192,240,0,3,192,240,0,3,192,240,0,3,192,240, + 0,3,192,240,0,3,192,240,0,3,192,112,0,3,128,120, + 0,7,128,120,0,7,128,120,0,15,128,60,0,15,0,62, + 0,31,0,31,128,126,0,15,255,252,0,7,255,248,0,3, + 255,240,0,0,255,192,0,26,39,156,30,2,0,0,32,96, + 0,0,252,224,0,0,255,224,0,1,207,192,0,1,129,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,1,255,224,0,3,255,240,0,15,255,252,0,31,255,254, + 0,31,0,62,0,62,0,31,0,60,0,15,0,120,0,7, + 128,120,0,7,128,112,0,3,128,240,0,3,192,240,0,3, + 192,240,0,3,192,240,0,3,192,240,0,3,192,240,0,3, + 192,240,0,3,192,240,0,3,192,240,0,3,192,112,0,3, + 128,120,0,7,128,120,0,7,128,120,0,15,128,60,0,15, + 0,62,0,31,0,31,128,126,0,15,255,252,0,7,255,248, + 0,3,255,240,0,0,255,192,0,26,39,156,30,2,0,0, + 240,240,0,0,240,240,0,0,240,240,0,0,240,240,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,1,255,224,0,3,255,240,0,15,255,252,0,31, + 255,254,0,31,0,62,0,62,0,31,0,60,0,15,0,120, + 0,7,128,120,0,7,128,112,0,3,128,240,0,3,192,240, + 0,3,192,240,0,3,192,240,0,3,192,240,0,3,192,240, + 0,3,192,240,0,3,192,240,0,3,192,240,0,3,192,112, + 0,3,128,120,0,7,128,120,0,7,128,120,0,15,128,60, + 0,15,0,62,0,31,0,31,128,126,0,15,255,252,0,7, + 255,248,0,3,255,240,0,0,255,192,0,22,22,66,40,9, + 1,96,0,24,240,0,60,120,0,120,56,0,112,28,0,224, + 14,1,192,7,3,128,3,135,0,1,206,0,0,252,0,0, + 120,0,0,120,0,0,252,0,1,206,0,3,135,0,7,3, + 128,14,1,192,28,0,224,56,0,112,112,0,56,96,0,24, + 64,0,8,26,38,152,30,2,252,0,0,1,0,0,0,3, + 128,0,0,3,192,0,0,7,128,0,255,199,128,3,255,255, + 0,15,255,255,0,31,255,254,0,31,0,62,0,62,0,127, + 0,124,0,127,0,120,0,255,128,120,1,247,128,240,1,227, + 128,240,3,195,192,240,7,195,192,240,7,131,192,240,15,3, + 192,240,31,3,192,240,30,3,192,240,60,3,192,240,124,3, + 192,240,248,3,192,112,240,3,192,121,240,7,128,123,224,7, + 128,127,192,15,128,63,192,15,0,63,128,31,0,31,128,126, + 0,31,255,252,0,31,255,248,0,63,255,240,0,124,255,192, + 0,120,0,0,0,240,0,0,0,112,0,0,0,32,0,0, + 0,23,41,123,29,3,0,3,192,0,1,192,0,1,224,0, + 0,240,0,0,112,0,0,56,0,0,24,0,0,28,0,0, + 0,0,0,0,0,0,0,0,240,0,30,240,0,30,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 30,240,0,30,240,0,30,240,0,30,120,0,60,120,0,60, + 124,0,124,62,0,248,63,255,248,31,255,240,15,255,224,3, + 255,128,23,41,123,29,3,0,0,7,128,0,7,0,0,15, + 0,0,30,0,0,28,0,0,56,0,0,48,0,0,112,0, + 0,0,0,0,0,0,0,0,0,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,120,0,60,120,0, + 60,124,0,124,62,0,248,63,255,248,31,255,240,15,255,224, + 3,255,128,23,41,123,29,3,0,0,124,0,0,124,0,0, + 254,0,0,238,0,1,199,0,1,199,0,3,131,128,7,1, + 128,0,0,0,0,0,0,0,0,0,240,0,30,240,0,30, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 240,0,30,240,0,30,240,0,30,240,0,30,120,0,60,120, + 0,60,124,0,124,62,0,248,63,255,248,31,255,240,15,255, + 224,3,255,128,23,38,114,29,3,0,3,195,192,3,195,192, + 3,195,192,3,195,192,0,0,0,0,0,0,0,0,0,0, + 0,0,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 30,240,0,30,120,0,60,120,0,60,124,0,124,62,0,248, + 63,255,248,31,255,240,15,255,224,3,255,128,24,41,123,26, + 1,0,0,3,192,0,7,128,0,7,0,0,15,0,0,14, + 0,0,28,0,0,24,0,0,48,0,0,0,0,0,0,0, + 0,0,0,248,0,15,248,0,31,124,0,30,124,0,60,62, + 0,124,30,0,120,31,0,248,15,0,240,15,129,224,7,129, + 224,3,195,192,3,227,192,1,231,128,1,247,0,0,255,0, + 0,254,0,0,126,0,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,19,30,90, + 24,3,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,255,248,0,255,255,0,255,255,128,255,255, + 192,240,15,192,240,3,224,240,1,224,240,1,224,240,1,224, + 240,1,224,240,1,224,240,3,224,240,15,192,255,255,192,255, + 255,128,255,255,0,255,248,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,20,30,90, + 22,2,0,3,248,0,15,254,0,63,255,0,124,15,0,248, + 7,128,240,7,128,240,7,128,240,7,128,240,15,0,240,31, + 0,240,62,0,240,124,0,240,248,0,240,240,0,240,240,0, + 240,248,0,240,126,0,240,63,0,240,31,192,240,15,224,240, + 3,224,240,1,240,240,0,240,240,0,240,243,192,240,243,192, + 240,241,224,240,241,241,224,240,255,224,240,63,128,18,31,93, + 23,2,0,7,128,0,7,128,0,3,192,0,1,192,0,0, + 224,0,0,112,0,0,48,0,0,0,0,0,0,0,0,0, + 0,0,0,0,15,254,0,63,255,0,62,15,128,120,7,128, + 120,3,192,0,3,192,0,3,192,3,255,192,15,255,192,63, + 255,192,126,3,192,120,3,192,240,3,192,240,3,192,240,7, + 192,240,7,192,248,15,192,124,63,192,63,251,192,31,227,192, + 18,32,96,23,2,0,0,60,0,0,60,0,0,120,0,0, + 240,0,0,224,0,1,192,0,1,128,0,3,128,0,0,0, + 0,0,0,0,0,0,0,0,0,0,15,254,0,63,255,0, + 62,15,128,120,7,128,120,3,192,0,3,192,0,3,192,3, + 255,192,15,255,192,63,255,192,126,3,192,120,3,192,240,3, + 192,240,3,192,240,7,192,240,7,192,248,15,192,124,63,192, + 63,251,192,31,227,192,18,32,96,23,2,0,1,224,0,3, + 240,0,3,240,0,7,184,0,7,60,0,14,28,0,12,14, + 0,28,6,0,0,0,0,0,0,0,0,0,0,0,0,0, + 15,254,0,63,255,0,62,15,128,120,7,128,120,3,192,0, + 3,192,0,3,192,3,255,192,15,255,192,63,255,192,126,3, + 192,120,3,192,240,3,192,240,3,192,240,7,192,240,7,192, + 248,15,192,124,63,192,63,251,192,31,227,192,18,30,90,23, + 2,0,7,134,0,15,206,0,15,254,0,28,124,0,24,16, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 15,254,0,63,255,0,62,15,128,120,7,128,120,3,192,0, + 3,192,0,3,192,3,255,192,15,255,192,63,255,192,126,3, + 192,120,3,192,240,3,192,240,3,192,240,7,192,240,7,192, + 248,15,192,124,63,192,63,251,192,31,243,192,18,30,90,23, + 2,0,30,30,0,30,30,0,30,30,0,30,30,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 15,254,0,63,255,0,62,15,128,120,7,128,120,3,192,0, + 3,192,0,3,192,3,255,192,15,255,192,63,255,192,126,3, + 192,120,3,192,240,3,192,240,3,192,240,7,192,240,7,192, + 248,15,192,124,63,192,63,251,192,31,227,192,18,34,102,23, + 2,0,1,224,0,3,240,0,6,24,0,12,12,0,12,12, + 0,12,12,0,12,12,0,6,24,0,3,240,0,1,224,0, + 0,0,0,0,0,0,0,0,0,0,0,0,15,254,0,63, + 255,0,62,15,128,120,7,128,120,3,192,0,3,192,0,3, + 192,3,255,192,15,255,192,63,255,192,126,3,192,120,3,192, + 240,3,192,240,3,192,240,7,192,240,7,192,248,15,192,124, + 63,192,63,251,192,31,227,192,32,20,80,36,2,1,15,248, + 31,240,63,254,63,248,124,30,120,60,120,7,112,30,120,7, + 224,14,0,3,224,15,0,3,192,15,0,127,255,255,31,255, + 255,255,63,255,255,255,126,3,192,0,120,3,192,0,240,3, + 192,0,240,3,192,15,240,7,224,14,240,7,224,30,248,14, + 112,30,126,62,124,124,63,252,63,248,31,240,15,240,17,30, + 90,21,2,247,15,252,0,31,254,0,62,31,0,120,15,128, + 120,7,128,240,7,128,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,7,128,112,7, + 128,120,7,128,120,15,0,62,31,0,31,254,0,15,252,0, + 1,128,0,1,128,0,1,240,0,1,252,0,1,254,0,0, + 14,0,0,14,0,0,14,0,7,252,0,7,240,0,18,32, + 96,22,2,0,30,0,0,15,0,0,7,0,0,3,128,0, + 3,192,0,1,192,0,0,224,0,0,96,0,0,0,0,0, + 0,0,0,0,0,0,0,0,7,252,0,31,254,0,62,31, + 0,60,7,128,120,3,128,112,3,192,240,3,192,240,3,192, + 255,255,192,255,255,192,255,255,192,240,0,0,240,0,0,240, + 0,0,112,3,192,120,7,128,56,7,128,62,31,0,31,254, + 0,7,252,0,18,32,96,22,2,0,0,30,0,0,60,0, + 0,120,0,0,112,0,0,224,0,0,224,0,1,192,0,1, + 128,0,0,0,0,0,0,0,0,0,0,0,0,0,7,252, + 0,31,254,0,62,31,0,60,7,128,120,3,128,112,3,192, + 240,3,192,240,3,192,255,255,192,255,255,192,255,255,192,240, + 0,0,240,0,0,240,0,0,112,3,192,120,7,128,56,7, + 128,62,31,0,31,254,0,7,252,0,18,32,96,22,2,0, + 1,224,0,3,240,0,3,240,0,7,248,0,7,56,0,14, + 28,0,12,12,0,28,14,0,0,0,0,0,0,0,0,0, + 0,0,0,0,7,252,0,31,254,0,62,31,0,60,7,128, + 120,3,128,112,3,192,240,3,192,240,3,192,255,255,192,255, + 255,192,255,255,192,240,0,0,240,0,0,240,0,0,112,3, + 192,120,7,128,56,7,128,62,31,0,31,254,0,7,252,0, + 18,30,90,22,2,0,30,30,0,30,30,0,30,30,0,30, + 30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,7,252,0,31,254,0,62,15,0,60,7,128, + 120,3,128,112,3,192,240,3,192,240,3,192,255,255,192,255, + 255,192,255,255,192,240,0,0,240,0,0,240,0,0,112,3, + 192,120,3,128,60,7,128,62,15,0,31,254,0,7,252,0, + 8,32,32,10,255,0,240,120,56,28,30,14,7,3,0,0, + 0,0,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,9,32,64,10,2,0,15,128,15,0, + 30,0,28,0,56,0,56,0,112,0,224,0,0,0,0,0, + 0,0,0,0,120,0,120,0,120,0,120,0,120,0,120,0, + 120,0,120,0,120,0,120,0,120,0,120,0,120,0,120,0, + 120,0,120,0,120,0,120,0,120,0,120,0,12,32,64,10, + 255,0,15,0,31,128,31,128,59,192,57,192,112,224,224,96, + 192,112,0,0,0,0,0,0,0,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,12,30,60,10,255,0,240,240,240,240,240,240,240,240, + 0,0,0,0,0,0,0,0,0,0,0,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,20,30,90,24,2,0,16,1,0,60,7,0, + 30,31,0,7,252,0,3,240,0,7,240,0,62,120,0,120, + 60,0,96,30,0,0,15,0,7,255,128,31,255,192,63,15, + 192,60,3,192,120,1,224,120,1,224,240,1,224,240,0,240, + 240,0,240,240,0,240,240,0,240,240,0,240,240,0,240,240, + 1,224,120,1,224,120,3,224,60,3,192,63,15,128,31,255, + 0,7,254,0,18,30,90,24,3,0,7,14,0,15,204,0, + 31,252,0,28,248,0,24,16,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,243,254,0,247,255,0,254,31, + 128,248,7,128,248,7,128,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,20,32,96,24,2,0,15,0,0,7,128,0, + 3,128,0,1,192,0,1,192,0,0,224,0,0,112,0,0, + 48,0,0,0,0,0,0,0,0,0,0,0,0,0,7,252, + 0,15,255,0,63,15,128,60,3,192,120,3,224,120,1,224, + 240,1,224,240,0,240,240,0,240,240,0,240,240,0,240,240, + 0,240,240,0,240,240,1,224,120,1,224,120,3,224,60,3, + 192,63,15,128,15,255,0,7,254,0,20,32,96,24,2,0, + 0,30,0,0,30,0,0,60,0,0,56,0,0,112,0,0, + 96,0,0,224,0,1,192,0,0,0,0,0,0,0,0,0, + 0,0,0,0,7,252,0,15,255,0,63,15,128,60,3,192, + 120,3,224,120,1,224,240,1,224,240,0,240,240,0,240,240, + 0,240,240,0,240,240,0,240,240,0,240,240,1,224,120,1, + 224,120,3,224,60,3,192,63,15,128,15,255,0,7,254,0, + 20,32,96,24,2,0,0,240,0,1,248,0,1,248,0,3, + 188,0,3,156,0,7,14,0,6,6,0,12,7,0,0,0, + 0,0,0,0,0,0,0,0,0,0,7,252,0,15,255,0, + 63,15,128,60,3,192,120,3,224,120,1,224,240,1,224,240, + 0,240,240,0,240,240,0,240,240,0,240,240,0,240,240,0, + 240,240,1,224,120,1,224,120,3,224,60,3,192,63,15,128, + 15,255,0,7,254,0,20,30,90,24,2,0,3,135,0,7, + 230,0,15,254,0,14,124,0,12,8,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,7,252,0,15,255,0, + 63,15,128,60,3,192,120,3,224,120,1,224,240,1,224,240, + 0,240,240,0,240,240,0,240,240,0,240,240,0,240,240,0, + 240,240,1,224,120,1,224,120,3,224,60,3,192,63,15,128, + 15,255,0,7,254,0,20,30,90,24,2,0,15,15,0,15, + 15,0,15,15,0,15,15,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,7,252,0,15,255,0, + 63,15,128,60,3,192,120,3,224,120,1,224,240,1,224,240, + 0,240,240,0,240,240,0,240,240,0,240,240,0,240,240,0, + 240,240,1,224,120,1,224,120,3,224,60,3,192,63,15,128, + 15,255,0,7,254,0,24,19,57,40,8,2,0,16,0,0, + 56,0,0,124,0,0,124,0,0,124,0,0,0,0,0,0, + 0,0,0,0,255,255,255,255,255,255,255,255,255,0,0,0, + 0,0,0,0,0,0,0,56,0,0,124,0,0,124,0,0, + 124,0,0,56,0,21,26,78,24,1,254,0,0,56,0,0, + 120,0,0,112,3,255,224,7,255,192,31,135,192,30,3,224, + 60,7,240,60,15,240,120,14,240,120,28,120,120,56,120,120, + 120,120,120,112,120,120,224,120,121,192,120,123,192,240,63,128, + 240,63,1,240,30,1,224,15,135,192,31,255,128,59,255,0, + 112,0,0,240,0,0,96,0,0,18,32,96,24,3,0,30, + 0,0,15,0,0,7,0,0,3,128,0,3,192,0,1,192, + 0,0,224,0,0,96,0,0,0,0,0,0,0,0,0,0, + 0,0,0,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,7,192,120,7,192,124,31,192,63,251,192,31,243,192,18, + 32,96,24,3,0,0,62,0,0,60,0,0,120,0,0,112, + 0,0,224,0,0,224,0,1,192,0,3,128,0,0,0,0, + 0,0,0,0,0,0,0,0,0,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,7,192,120,7,192,124,31,192,63, + 251,192,31,243,192,18,32,96,24,3,0,1,224,0,3,240, + 0,3,240,0,7,120,0,7,56,0,14,28,0,28,12,0, + 24,14,0,0,0,0,0,0,0,0,0,0,0,0,0,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,7,192,120, + 7,192,124,31,192,63,251,192,31,243,192,18,30,90,24,3, + 0,30,30,0,30,30,0,30,30,0,30,30,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,7,192,120, + 15,192,126,31,192,63,251,192,31,243,192,20,40,120,21,1, + 248,0,15,0,0,30,0,0,28,0,0,56,0,0,112,0, + 0,112,0,0,224,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,240,0,240,240,1,224,120,1,224,120,1, + 192,60,3,192,60,3,192,62,7,128,30,7,128,30,7,0, + 15,15,0,15,15,0,15,158,0,7,158,0,7,156,0,3, + 252,0,3,252,0,1,248,0,1,248,0,1,248,0,0,240, + 0,0,240,0,0,224,0,1,224,0,33,224,0,243,192,0, + 127,192,0,127,128,0,31,0,0,19,38,114,24,3,248,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,243,254,0, + 247,255,0,254,15,128,252,7,192,248,3,192,248,3,192,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,1,224,248,3,192,248,3,192,252,7,192, + 254,15,128,247,255,0,243,254,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,20,38,114,22,1,248,15,15,0,15,15,0,15,15,0, + 15,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,240,0,240,248,0,224,120,1,224,120,1, + 224,60,3,192,60,3,192,62,3,128,30,7,128,30,7,128, + 15,15,0,15,15,0,7,143,0,7,158,0,7,222,0,3, + 252,0,3,252,0,1,252,0,1,248,0,0,248,0,0,240, + 0,0,240,0,0,240,0,1,224,0,1,224,0,1,192,0, + 3,192,0,3,192,0,3,128,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--40-400-72-72-P-189-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 30 + Calculated Max Values w=24 h=33 x= 8 y=15 dx=40 dy= 0 ascent=31 len=90 + Font Bounding box w=54 h=54 x=-3 y=-11 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =30 descent= 0 + X Font ascent =30 descent= 0 + Max Font ascent =31 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur30n[1175] U8G_SECTION(".progmem.u8g_font_fur30n") = { + 0,54,54,253,245,30,0,0,0,0,42,57,0,31,251,30, + 0,16,15,30,26,5,15,12,48,28,56,14,112,14,112,7, + 224,3,192,253,191,255,255,243,207,3,192,6,96,14,112,30, + 120,28,56,12,48,24,25,75,40,8,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,255,255,255,255, + 255,255,255,255,255,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,7,10,10,11,2,251,62,60,60,124, + 120,120,112,112,224,224,10,3,6,14,2,8,255,192,255,192, + 255,192,4,5,5,11,4,0,240,240,240,240,240,12,33,66, + 16,2,254,0,112,0,112,0,96,0,224,0,224,0,224,0, + 192,1,192,1,192,1,128,3,128,3,128,3,128,7,0,7, + 0,7,0,6,0,14,0,14,0,14,0,28,0,28,0,28, + 0,24,0,56,0,56,0,56,0,112,0,112,0,112,0,96, + 0,224,0,224,0,18,30,90,22,2,1,7,248,0,31,254, + 0,63,255,0,60,15,0,120,7,128,120,7,128,112,7,128, + 112,3,128,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,112,3,192,112,3,128, + 120,7,128,120,7,128,56,7,0,60,15,0,31,254,0,15, + 254,0,7,248,0,10,30,60,22,5,0,7,192,15,192,31, + 192,63,192,127,192,251,192,243,192,195,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,17,30,90,22,2,1,15,248,0, + 31,252,0,63,254,0,124,15,0,120,7,0,120,7,128,120, + 7,128,240,7,128,0,7,128,0,7,128,0,7,128,0,15, + 0,0,31,0,0,30,0,0,62,0,0,124,0,0,248,0, + 0,248,0,1,240,0,3,224,0,7,192,0,15,128,0,31, + 0,0,31,0,0,62,0,0,124,0,0,248,0,0,255,255, + 128,255,255,128,255,255,128,18,30,90,22,2,1,7,248,0, + 31,254,0,62,31,0,60,7,128,124,3,128,120,3,192,120, + 3,192,120,3,192,0,3,192,0,3,128,0,7,128,0,15, + 0,0,62,0,3,252,0,3,248,0,3,254,0,0,63,0, + 0,15,128,0,7,128,0,3,192,0,3,192,0,3,192,240, + 3,192,240,3,192,248,3,192,120,7,128,124,15,128,62,31, + 0,31,254,0,15,248,0,20,30,90,22,1,0,0,15,128, + 0,31,128,0,31,128,0,63,128,0,127,128,0,127,128,0, + 247,128,1,231,128,1,231,128,3,199,128,3,135,128,7,135, + 128,15,7,128,14,7,128,30,7,128,60,7,128,60,7,128, + 120,7,128,240,7,128,240,7,128,255,255,240,255,255,240,255, + 255,240,0,7,128,0,7,128,0,7,128,0,7,128,0,7, + 128,0,7,128,0,7,128,18,30,90,22,2,0,127,255,0, + 127,255,0,127,255,0,120,0,0,120,0,0,120,0,0,120, + 0,0,120,0,0,120,0,0,120,0,0,120,96,0,123,252, + 0,127,254,0,126,31,0,124,7,128,120,7,128,112,3,128, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,240,3,192,240,7,128,240,7,128,120,15,0,127,254, + 0,31,252,0,15,248,0,19,30,90,22,2,1,3,252,0, + 15,255,0,31,255,0,63,15,128,62,7,128,124,3,192,120, + 3,192,120,3,192,240,0,0,240,0,0,240,0,0,240,0, + 0,241,252,0,243,255,0,247,255,128,254,7,128,252,3,192, + 252,3,192,248,1,192,248,1,224,248,1,224,248,1,224,248, + 1,224,248,1,224,120,1,192,124,3,192,60,7,128,31,15, + 128,15,255,0,7,252,0,18,30,90,22,2,0,255,255,192, + 255,255,192,255,255,192,0,3,192,0,3,192,0,7,128,0, + 7,128,0,7,128,0,15,0,0,15,0,0,31,0,0,30, + 0,0,30,0,0,60,0,0,60,0,0,60,0,0,120,0, + 0,120,0,0,248,0,0,240,0,0,240,0,1,240,0,1, + 224,0,1,224,0,3,192,0,3,192,0,7,192,0,7,128, + 0,7,128,0,15,128,0,19,30,90,22,2,1,7,252,0, + 31,254,0,62,15,128,60,7,128,120,3,192,120,3,192,120, + 3,192,120,3,192,120,3,192,120,3,192,56,3,128,60,7, + 128,30,15,0,15,254,0,7,252,0,31,254,0,60,7,128, + 120,3,128,112,1,192,240,1,192,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,120,3,192,120,3,192,62,15, + 128,31,255,0,7,252,0,19,30,90,22,2,1,7,252,0, + 31,255,0,62,31,128,120,7,128,120,3,192,112,3,192,240, + 3,192,240,3,224,240,1,224,240,1,224,240,3,224,240,3, + 224,240,3,224,112,3,224,120,7,224,60,15,224,63,253,224, + 31,249,224,7,241,224,0,1,192,0,1,192,0,1,192,0, + 3,192,112,3,192,112,3,128,120,7,128,56,15,0,62,31, + 0,31,254,0,15,248,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--40-400-72-72-P-189-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 30, '1' Height: 30 + Calculated Max Values w=37 h=43 x=10 y=25 dx=40 dy= 0 ascent=33 len=185 + Font Bounding box w=54 h=54 x=-3 y=-11 + Calculated Min Values x=-1 y=-11 dx= 0 dy= 0 + Pure Font ascent =30 descent=-7 + X Font ascent =31 descent=-8 + Max Font ascent =33 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur30r[7380] U8G_SECTION(".progmem.u8g_font_fur30r") = { + 0,54,54,253,245,30,9,94,20,223,32,127,249,33,245,31, + 248,0,0,0,12,0,0,4,30,30,14,5,0,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,0,0,0,240,240,240,240,12,12,24,18,3, + 18,240,240,240,240,240,240,240,240,240,240,240,240,240,112,224, + 112,224,112,96,112,96,112,96,96,26,30,120,30,2,0,0, + 28,14,0,0,28,28,0,0,28,28,0,0,28,28,0,0, + 56,24,0,0,56,56,0,0,56,56,0,0,112,56,0,0, + 112,112,0,31,255,255,192,31,255,255,128,31,255,255,128,0, + 224,224,0,0,224,224,0,1,192,224,0,1,193,192,0,1, + 193,192,0,127,255,254,0,255,255,254,0,255,255,254,0,3, + 3,128,0,7,7,0,0,7,7,0,0,7,7,0,0,14, + 7,0,0,14,14,0,0,14,14,0,0,14,14,0,0,28, + 28,0,0,28,28,0,0,20,37,111,22,1,252,0,96,0, + 0,96,0,0,96,0,3,252,0,15,254,0,63,255,0,63, + 255,128,124,103,128,120,99,192,240,99,192,240,99,192,240,96, + 0,240,96,0,240,96,0,120,96,0,127,96,0,63,240,0, + 31,254,0,15,255,128,1,255,192,0,111,224,0,97,224,0, + 96,240,0,96,240,0,96,240,240,96,240,240,96,240,240,96, + 240,120,96,240,124,97,224,63,255,192,31,255,128,15,255,0, + 0,96,0,0,96,0,0,96,0,0,96,0,33,31,155,37, + 2,0,0,0,0,224,0,15,192,0,192,0,31,240,1,192, + 0,63,248,1,128,0,120,60,3,0,0,240,60,7,0,0, + 240,30,6,0,0,240,30,14,0,0,240,30,12,0,0,240, + 30,28,0,0,240,30,24,0,0,240,28,56,0,0,112,60, + 48,0,0,120,124,112,0,0,63,248,224,0,0,31,240,192, + 96,0,3,129,195,252,0,0,1,135,254,0,0,3,143,15, + 0,0,3,14,7,0,0,7,30,7,128,0,6,30,7,128, + 0,14,30,7,128,0,28,30,7,128,0,28,30,7,128,0, + 56,30,7,128,0,56,30,7,128,0,112,15,15,0,0,96, + 15,254,0,0,224,7,252,0,0,192,1,248,0,27,30,120, + 30,2,1,3,254,0,0,7,255,0,0,15,143,128,0,15, + 3,192,0,30,3,192,0,30,3,192,0,30,3,192,0,30, + 3,192,0,31,7,128,0,15,15,128,0,15,191,0,0,7, + 252,0,0,3,248,0,0,7,224,15,0,15,240,15,0,63, + 248,15,0,124,124,15,0,120,62,15,0,248,31,15,0,240, + 15,142,0,240,7,206,0,240,3,254,0,240,1,254,0,240, + 0,252,0,248,0,124,0,124,0,126,0,126,1,255,0,63, + 255,255,128,31,255,207,192,7,255,3,224,4,12,12,15,5, + 18,240,240,240,240,112,112,112,112,112,112,112,112,7,36,36, + 15,4,251,14,14,28,28,60,56,56,120,120,120,112,112,240, + 240,240,240,240,240,240,240,240,240,240,240,112,112,120,120,120, + 56,56,60,28,28,14,14,7,36,36,14,4,251,224,224,96, + 112,112,120,56,56,60,60,60,28,28,28,30,30,30,30,30, + 30,30,30,28,28,60,60,60,60,56,56,120,112,112,224,224, + 224,16,15,30,26,5,15,12,48,28,56,14,112,14,112,7, + 224,3,192,253,191,255,255,243,207,3,192,6,96,14,112,30, + 120,28,56,12,48,24,25,75,40,8,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,255,255,255,255, + 255,255,255,255,255,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,7,10,10,11,2,251,62,60,60,124, + 120,120,112,112,224,224,10,3,6,14,2,8,255,192,255,192, + 255,192,4,5,5,11,4,0,240,240,240,240,240,12,33,66, + 16,2,254,0,112,0,112,0,96,0,224,0,224,0,224,0, + 192,1,192,1,192,1,128,3,128,3,128,3,128,7,0,7, + 0,7,0,6,0,14,0,14,0,14,0,28,0,28,0,28, + 0,24,0,56,0,56,0,56,0,112,0,112,0,112,0,96, + 0,224,0,224,0,18,30,90,22,2,1,7,248,0,31,254, + 0,63,255,0,60,15,0,120,7,128,120,7,128,112,7,128, + 112,3,128,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,112,3,192,112,3,128, + 120,7,128,120,7,128,56,7,0,60,15,0,31,254,0,15, + 254,0,7,248,0,10,30,60,22,5,0,7,192,15,192,31, + 192,63,192,127,192,251,192,243,192,195,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,17,30,90,22,2,1,15,248,0, + 31,252,0,63,254,0,124,15,0,120,7,0,120,7,128,120, + 7,128,240,7,128,0,7,128,0,7,128,0,7,128,0,15, + 0,0,31,0,0,30,0,0,62,0,0,124,0,0,248,0, + 0,248,0,1,240,0,3,224,0,7,192,0,15,128,0,31, + 0,0,31,0,0,62,0,0,124,0,0,248,0,0,255,255, + 128,255,255,128,255,255,128,18,30,90,22,2,1,7,248,0, + 31,254,0,62,31,0,60,7,128,124,3,128,120,3,192,120, + 3,192,120,3,192,0,3,192,0,3,128,0,7,128,0,15, + 0,0,62,0,3,252,0,3,248,0,3,254,0,0,63,0, + 0,15,128,0,7,128,0,3,192,0,3,192,0,3,192,240, + 3,192,240,3,192,248,3,192,120,7,128,124,15,128,62,31, + 0,31,254,0,15,248,0,20,30,90,22,1,0,0,15,128, + 0,31,128,0,31,128,0,63,128,0,127,128,0,127,128,0, + 247,128,1,231,128,1,231,128,3,199,128,3,135,128,7,135, + 128,15,7,128,14,7,128,30,7,128,60,7,128,60,7,128, + 120,7,128,240,7,128,240,7,128,255,255,240,255,255,240,255, + 255,240,0,7,128,0,7,128,0,7,128,0,7,128,0,7, + 128,0,7,128,0,7,128,18,30,90,22,2,0,127,255,0, + 127,255,0,127,255,0,120,0,0,120,0,0,120,0,0,120, + 0,0,120,0,0,120,0,0,120,0,0,120,96,0,123,252, + 0,127,254,0,126,31,0,124,7,128,120,7,128,112,3,128, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,240,3,192,240,7,128,240,7,128,120,15,0,127,254, + 0,31,252,0,15,248,0,19,30,90,22,2,1,3,252,0, + 15,255,0,31,255,0,63,15,128,62,7,128,124,3,192,120, + 3,192,120,3,192,240,0,0,240,0,0,240,0,0,240,0, + 0,241,252,0,243,255,0,247,255,128,254,7,128,252,3,192, + 252,3,192,248,1,192,248,1,224,248,1,224,248,1,224,248, + 1,224,248,1,224,120,1,192,124,3,192,60,7,128,31,15, + 128,15,255,0,7,252,0,18,30,90,22,2,0,255,255,192, + 255,255,192,255,255,192,0,3,192,0,3,192,0,7,128,0, + 7,128,0,7,128,0,15,0,0,15,0,0,31,0,0,30, + 0,0,30,0,0,60,0,0,60,0,0,60,0,0,120,0, + 0,120,0,0,248,0,0,240,0,0,240,0,1,240,0,1, + 224,0,1,224,0,3,192,0,3,192,0,7,192,0,7,128, + 0,7,128,0,15,128,0,19,30,90,22,2,1,7,252,0, + 31,254,0,62,15,128,60,7,128,120,3,192,120,3,192,120, + 3,192,120,3,192,120,3,192,120,3,192,56,3,128,60,7, + 128,30,15,0,15,254,0,7,252,0,31,254,0,60,7,128, + 120,3,128,112,1,192,240,1,192,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,120,3,192,120,3,192,62,15, + 128,31,255,0,7,252,0,19,30,90,22,2,1,7,252,0, + 31,255,0,62,31,128,120,7,128,120,3,192,112,3,192,240, + 3,192,240,3,224,240,1,224,240,1,224,240,3,224,240,3, + 224,240,3,224,112,3,224,120,7,224,60,15,224,63,253,224, + 31,249,224,7,241,224,0,1,192,0,1,192,0,1,192,0, + 3,192,112,3,192,112,3,128,120,7,128,56,15,0,62,31, + 0,31,254,0,15,248,0,4,20,20,11,4,0,240,240,240, + 240,240,0,0,0,0,0,0,0,0,0,0,240,240,240,240, + 240,6,26,26,11,2,250,60,60,60,60,60,0,0,0,0, + 0,0,0,0,0,0,0,60,60,60,56,120,112,112,112,224, + 224,24,21,63,40,8,2,0,0,1,0,0,15,0,0,63, + 0,1,252,0,7,224,0,63,0,1,252,0,7,224,0,63, + 0,0,252,0,0,224,0,0,248,0,0,126,0,0,15,192, + 0,3,248,0,0,126,0,0,31,192,0,3,240,0,0,126, + 0,0,31,0,0,3,24,10,30,40,8,7,255,255,255,255, + 255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0, + 0,255,255,255,255,255,255,255,255,255,24,21,63,40,8,2, + 128,0,0,240,0,0,252,0,0,63,128,0,7,224,0,0, + 252,0,0,63,0,0,7,224,0,0,252,0,0,63,0,0, + 7,0,0,31,0,0,126,0,3,240,0,31,192,0,126,0, + 3,248,0,15,192,0,126,0,0,248,0,0,192,0,0,18, + 30,90,21,1,1,15,248,0,31,254,0,63,255,0,126,127, + 128,248,7,128,112,3,192,0,3,192,0,3,192,0,3,192, + 0,7,128,0,7,128,0,15,0,0,30,0,0,60,0,0, + 120,0,1,240,0,1,224,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,3,192,0,0,0,0,0,0,0, + 0,0,0,3,192,0,3,192,0,3,192,0,3,192,0,35, + 37,185,39,2,249,0,7,252,0,0,0,63,255,128,0,0, + 255,255,240,0,1,255,255,248,0,7,248,3,252,0,15,224, + 0,126,0,15,128,0,31,0,31,0,0,15,128,62,0,0, + 7,128,60,0,0,7,192,120,7,231,131,192,120,15,247,131, + 192,112,31,255,129,224,240,62,31,129,224,240,60,15,129,224, + 240,120,7,129,224,240,120,7,129,224,240,120,7,129,224,240, + 120,7,129,224,240,120,7,129,224,240,120,7,129,224,240,120, + 7,129,192,240,120,7,129,192,112,56,15,131,192,120,60,15, + 135,128,120,30,27,255,0,124,31,251,255,0,60,15,240,252, + 0,62,1,128,48,0,31,0,0,0,0,31,128,0,0,0, + 15,224,0,0,0,7,248,0,128,0,3,255,255,128,0,0, + 255,255,128,0,0,63,255,128,0,0,7,254,0,0,28,30, + 120,30,1,0,0,15,0,0,0,31,128,0,0,31,128,0, + 0,63,192,0,0,63,192,0,0,127,192,0,0,121,224,0, + 0,121,224,0,0,241,240,0,0,240,240,0,1,240,240,0, + 1,224,248,0,1,224,120,0,3,224,124,0,3,192,60,0, + 7,192,60,0,7,128,62,0,7,128,30,0,15,128,31,0, + 15,255,255,0,31,255,255,128,31,255,255,128,30,0,7,128, + 60,0,3,192,60,0,3,192,124,0,3,224,120,0,1,224, + 120,0,1,224,240,0,0,240,240,0,0,240,21,30,90,26, + 3,0,255,254,0,255,255,128,255,255,192,255,255,224,240,7, + 224,240,1,240,240,0,240,240,0,240,240,0,240,240,0,240, + 240,0,224,240,1,224,240,7,192,255,255,128,255,255,0,255, + 255,192,240,3,224,240,0,240,240,0,112,240,0,120,240,0, + 120,240,0,120,240,0,120,240,0,248,240,1,248,240,7,240, + 255,255,224,255,255,224,255,255,128,255,254,0,22,30,90,26, + 2,1,1,255,128,7,255,224,15,255,240,31,0,248,62,0, + 120,60,0,60,120,0,60,120,0,60,120,0,0,112,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,112,0, + 0,112,0,0,120,0,60,120,0,60,60,0,60,60,0,120, + 31,0,248,15,255,240,7,255,224,1,255,128,23,30,90,28, + 3,0,255,248,0,255,255,0,255,255,192,255,255,224,240,15, + 240,240,1,248,240,0,248,240,0,124,240,0,60,240,0,60, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 60,240,0,60,240,0,124,240,0,248,240,1,240,240,7,240, + 255,255,224,255,255,192,255,255,0,255,248,0,19,30,90,24, + 3,0,255,255,192,255,255,192,255,255,192,255,255,192,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,255,255,192,255,255,192,255, + 255,192,255,255,192,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 255,255,224,255,255,224,255,255,224,255,255,224,17,30,90,23, + 3,0,255,255,128,255,255,128,255,255,128,255,255,128,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,255,255,0,255,255,0,255, + 255,0,255,255,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,25,30,120,30, + 2,1,0,255,224,0,3,255,248,0,7,255,252,0,15,255, + 254,0,31,128,63,0,62,0,15,0,60,0,7,128,120,0, + 7,128,120,0,0,0,112,0,0,0,240,0,0,0,240,0, + 0,0,240,0,0,0,240,0,0,0,240,3,255,128,240,3, + 255,128,240,3,255,128,240,3,255,128,240,0,7,128,240,0, + 7,128,120,0,7,128,120,0,7,128,124,0,7,128,62,0, + 7,128,62,0,7,128,31,128,7,128,15,255,255,128,7,255, + 255,128,3,255,255,0,0,255,248,0,22,30,90,28,3,0, + 240,0,60,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,255,255,252,255,255,252,255,255,252, + 255,255,252,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,240,0,60,4,30,30,10,3,0, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,17,30, + 90,22,2,0,0,7,128,0,7,128,0,7,128,0,7,128, + 0,7,128,0,7,128,0,7,128,0,7,128,0,7,128,0, + 7,128,0,7,128,0,7,128,0,7,128,0,7,128,0,7, + 128,0,7,128,0,7,128,0,7,128,0,7,128,0,7,128, + 0,7,128,0,7,128,240,7,128,240,7,128,240,15,128,120, + 31,0,127,255,0,63,254,0,31,252,0,15,240,0,22,30, + 90,26,3,0,240,1,240,240,3,224,240,7,192,240,15,128, + 240,31,0,240,30,0,240,60,0,240,124,0,240,248,0,241, + 240,0,243,224,0,247,192,0,255,128,0,255,128,0,255,192, + 0,247,192,0,243,224,0,243,240,0,241,248,0,240,252,0, + 240,124,0,240,62,0,240,31,0,240,31,128,240,15,192,240, + 7,192,240,3,224,240,1,240,240,1,248,240,0,252,17,30, + 90,21,3,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,255,255,128,255,255,128,255,255,128,255,255,128,30,30, + 120,36,3,0,252,0,0,252,254,0,1,252,254,0,1,252, + 254,0,1,252,255,0,3,252,255,0,3,252,247,128,7,188, + 247,128,7,188,247,128,7,188,243,192,15,60,243,192,15,60, + 243,192,14,60,241,224,30,60,241,224,30,60,240,224,28,60, + 240,240,60,60,240,240,60,60,240,120,120,60,240,120,120,60, + 240,120,120,60,240,60,240,60,240,60,240,60,240,28,224,60, + 240,31,224,60,240,31,224,60,240,15,192,60,240,15,192,60, + 240,15,192,60,240,7,128,60,240,7,128,60,22,30,90,28, + 3,0,252,0,60,252,0,60,254,0,60,254,0,60,255,0, + 60,255,0,60,255,128,60,247,128,60,247,192,60,243,192,60, + 243,224,60,241,224,60,241,240,60,240,240,60,240,248,60,240, + 120,60,240,124,60,240,60,60,240,62,60,240,30,60,240,31, + 60,240,15,60,240,15,188,240,7,188,240,3,252,240,3,252, + 240,1,252,240,1,252,240,0,252,240,0,252,26,30,120,30, + 2,1,1,255,224,0,3,255,240,0,15,255,252,0,31,255, + 254,0,31,0,62,0,62,0,31,0,60,0,15,0,120,0, + 7,128,120,0,7,128,112,0,3,128,240,0,3,192,240,0, + 3,192,240,0,3,192,240,0,3,192,240,0,3,192,240,0, + 3,192,240,0,3,192,240,0,3,192,240,0,3,192,112,0, + 3,128,120,0,7,128,120,0,7,128,120,0,15,128,60,0, + 15,0,62,0,31,0,31,128,126,0,15,255,252,0,7,255, + 248,0,3,255,240,0,0,255,192,0,19,30,90,24,3,0, + 255,248,0,255,254,0,255,255,128,255,255,192,240,15,192,240, + 3,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,3,224,240,15,192,255,255,192,255,255,128, + 255,254,0,255,248,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,28,30,120,31,2,1, + 0,255,192,0,3,255,240,0,15,255,252,0,31,255,254,0, + 31,0,62,0,62,0,31,0,60,0,15,128,120,0,7,128, + 120,0,7,128,112,0,3,192,240,0,3,192,240,0,3,192, + 240,0,3,192,240,0,3,192,240,0,3,192,240,0,3,192, + 240,0,3,192,240,0,3,192,240,0,3,192,112,0,3,128, + 120,0,7,128,120,0,7,128,120,0,15,0,60,0,15,0, + 62,0,30,0,31,128,126,0,15,255,255,240,7,255,255,240, + 3,255,255,240,0,255,255,240,20,30,90,25,3,0,255,252, + 0,255,255,0,255,255,192,255,255,224,240,7,224,240,1,224, + 240,0,240,240,0,240,240,0,240,240,0,240,240,0,224,240, + 1,224,240,7,192,255,255,128,255,255,0,255,255,0,255,255, + 128,240,7,192,240,3,192,240,3,192,240,1,224,240,1,224, + 240,1,224,240,1,224,240,0,224,240,0,224,240,0,240,240, + 0,240,240,0,240,240,0,112,22,30,90,26,2,1,3,255, + 0,15,255,192,63,255,224,63,255,240,124,0,240,120,0,120, + 240,0,120,240,0,120,240,0,0,240,0,0,120,0,0,124, + 0,0,63,128,0,31,252,0,15,255,128,0,255,224,0,7, + 240,0,0,248,0,0,120,0,0,56,0,0,60,240,0,60, + 240,0,60,240,0,60,120,0,120,124,0,248,63,255,240,63, + 255,240,31,255,192,7,255,0,23,30,90,25,1,0,255,255, + 254,255,255,254,255,255,254,255,255,254,0,120,0,0,120,0, + 0,120,0,0,120,0,0,120,0,0,120,0,0,120,0,0, + 120,0,0,120,0,0,120,0,0,120,0,0,120,0,0,120, + 0,0,120,0,0,120,0,0,120,0,0,120,0,0,120,0, + 0,120,0,0,120,0,0,120,0,0,120,0,0,120,0,0, + 120,0,0,120,0,0,120,0,23,30,90,29,3,0,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 240,0,30,240,0,30,240,0,30,240,0,30,240,0,30,240, + 0,30,240,0,30,240,0,30,240,0,30,240,0,30,240,0, + 30,240,0,30,240,0,30,240,0,30,240,0,30,240,0,30, + 120,0,60,120,0,60,124,0,124,62,0,248,63,255,248,31, + 255,240,15,255,224,3,255,128,24,30,90,26,1,0,240,0, + 15,248,0,15,248,0,31,120,0,30,124,0,30,124,0,62, + 60,0,60,62,0,60,30,0,124,30,0,120,31,0,120,15, + 0,248,15,0,240,15,0,240,7,129,240,7,129,224,7,129, + 224,3,195,224,3,195,192,3,195,192,1,231,192,1,231,128, + 1,231,128,0,255,128,0,255,0,0,255,0,0,126,0,0, + 126,0,0,126,0,0,60,0,37,30,150,39,1,0,240,0, + 248,0,120,240,0,248,0,120,240,1,248,0,248,120,1,252, + 0,240,120,1,252,0,240,120,1,220,0,240,124,3,222,1, + 224,60,3,222,1,224,60,3,222,1,224,60,3,142,1,224, + 30,7,143,3,192,30,7,143,3,192,30,7,15,3,192,30, + 7,7,3,128,15,15,7,135,128,15,15,7,135,128,15,14, + 3,135,128,7,14,3,135,0,7,158,3,207,0,7,158,3, + 207,0,7,156,1,206,0,3,156,1,222,0,3,252,1,254, + 0,3,252,1,254,0,1,248,0,252,0,1,248,0,252,0, + 1,248,0,252,0,1,240,0,248,0,0,240,0,120,0,0, + 240,0,120,0,26,30,120,28,1,0,62,0,15,0,62,0, + 31,0,31,0,30,0,15,128,60,0,15,128,124,0,7,192, + 120,0,3,224,240,0,3,224,240,0,1,241,224,0,0,243, + 224,0,0,251,192,0,0,127,128,0,0,63,128,0,0,63, + 0,0,0,63,0,0,0,63,128,0,0,127,128,0,0,247, + 192,0,0,243,224,0,1,227,224,0,3,225,240,0,3,192, + 248,0,7,128,248,0,15,128,124,0,15,0,62,0,31,0, + 62,0,62,0,31,0,60,0,31,0,124,0,15,128,248,0, + 7,192,24,30,90,26,1,0,248,0,15,248,0,31,124,0, + 30,124,0,60,62,0,124,30,0,120,31,0,248,15,0,240, + 15,129,224,7,129,224,3,195,192,3,227,192,1,231,128,1, + 247,0,0,255,0,0,254,0,0,126,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 60,0,21,30,90,25,2,0,127,255,248,127,255,248,127,255, + 248,127,255,248,0,0,248,0,1,248,0,1,240,0,3,224, + 0,7,192,0,15,128,0,31,128,0,31,0,0,62,0,0, + 124,0,0,252,0,0,248,0,1,240,0,3,224,0,7,192, + 0,15,192,0,15,128,0,31,0,0,62,0,0,126,0,0, + 252,0,0,248,0,0,255,255,248,255,255,248,255,255,248,255, + 255,248,8,38,38,16,4,248,255,255,255,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,255,255,255,12,33, + 66,16,2,254,224,0,224,0,224,0,96,0,112,0,112,0, + 48,0,56,0,56,0,56,0,28,0,28,0,28,0,12,0, + 14,0,14,0,6,0,7,0,7,0,7,0,3,0,3,128, + 3,128,1,128,1,192,1,192,1,192,0,192,0,224,0,224, + 0,96,0,112,0,112,8,38,38,16,4,248,255,255,255,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,255, + 255,255,20,25,75,40,10,0,0,96,0,0,240,0,0,240, + 0,0,240,0,1,248,0,1,152,0,3,156,0,3,12,0, + 3,12,0,7,14,0,6,6,0,6,6,0,14,7,0,12, + 3,0,28,3,128,28,1,128,24,1,128,56,1,192,48,0, + 192,48,0,192,112,0,224,96,0,96,224,0,112,224,0,112, + 192,0,48,20,3,9,20,0,251,255,255,240,255,255,240,255, + 255,240,8,7,7,9,255,25,240,120,56,28,14,14,7,18, + 20,60,23,2,1,15,254,0,63,255,0,62,15,128,120,7, + 128,120,3,192,0,3,192,0,3,192,3,255,192,15,255,192, + 63,255,192,126,3,192,120,3,192,240,3,192,240,3,192,240, + 7,192,240,7,192,248,15,192,124,63,192,63,251,192,31,227, + 192,19,30,90,24,3,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,243,252,0,247,255,0,255,15,128,252,7, + 128,248,3,192,248,3,192,240,1,192,240,1,224,240,1,224, + 240,1,224,240,1,224,240,1,224,240,1,192,240,3,192,240, + 3,192,248,7,128,252,7,128,254,31,0,247,254,0,243,252, + 0,17,20,60,21,2,1,15,252,0,31,254,0,62,31,0, + 120,15,128,120,7,128,240,7,128,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,7, + 128,112,7,128,120,7,128,120,15,0,62,31,0,31,254,0, + 15,252,0,19,30,90,24,2,0,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,15,249,224,31,253,224,62,31,224, + 60,7,224,120,7,224,120,3,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,120,3,224,120,3,224,60,7,224,31,15,224,15,255,224, + 7,249,224,18,20,60,22,2,1,7,252,0,31,254,0,62, + 31,0,60,7,128,120,3,128,112,3,192,240,3,192,240,3, + 192,255,255,192,255,255,192,255,255,192,240,0,0,240,0,0, + 240,0,0,112,3,192,120,7,128,56,7,128,62,31,0,31, + 254,0,7,252,0,13,30,60,14,1,0,1,248,3,248,7, + 248,15,128,15,0,15,0,15,0,15,0,15,0,15,0,255, + 240,255,240,255,240,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,19,28,84,24,2,249,15,249,224, + 31,253,224,62,31,224,120,7,224,120,3,224,112,3,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,3,224,120,3,224,124,7,224,62,15,224, + 31,253,224,15,249,224,0,129,224,0,1,224,0,3,192,120, + 3,192,120,3,192,60,7,128,63,255,0,15,254,0,3,248, + 0,18,30,90,24,3,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,243,254,0,247,255,0,254,31,128,248,7, + 128,240,7,128,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,4,30,30,8,2,0,240,240,240,240,0,0,0,0,0, + 0,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,7,38,38,11,2,248,30,30,30,30,0, + 0,0,0,0,0,30,30,30,30,30,30,30,30,30,30,30, + 30,30,30,30,30,30,30,30,30,30,30,30,30,30,254,252, + 248,16,30,60,20,3,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,30,240,62,240, + 124,240,248,241,240,243,224,247,192,255,128,255,0,255,0,247, + 128,247,192,243,224,241,240,240,240,240,248,240,124,240,62,240, + 30,240,31,4,30,30,10,3,0,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,30,20,80,36,3,1,243,252,31, + 224,247,254,63,240,254,31,112,248,252,15,224,120,248,7,192, + 60,240,7,128,60,240,7,128,60,240,7,128,60,240,7,128, + 60,240,7,128,60,240,7,128,60,240,7,128,60,240,7,128, + 60,240,7,128,60,240,7,128,60,240,7,128,60,240,7,128, + 60,240,7,128,60,240,7,128,60,240,7,128,60,18,20,60, + 24,3,1,243,254,0,247,255,0,254,31,128,248,7,128,248, + 7,128,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,20, + 20,60,24,2,1,7,252,0,15,255,0,63,15,128,60,3, + 192,120,3,224,120,1,224,240,1,224,240,0,240,240,0,240, + 240,0,240,240,0,240,240,0,240,240,0,240,240,1,224,120, + 1,224,120,3,224,60,3,192,63,15,128,15,255,0,7,254, + 0,19,28,84,24,3,249,243,254,0,247,255,0,254,15,128, + 252,7,192,248,3,192,248,3,192,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,248,3,192,248,3,192,252,7,192,254,15,128,247,255,0, + 243,254,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,19,28,84,24,2, + 249,15,249,224,31,253,224,62,15,224,124,7,224,120,3,224, + 120,3,224,240,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,120,3,224,120,3, + 224,124,7,224,62,15,224,31,253,224,15,249,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,11,20,40,15,3,0,243,224,247,224,255, + 224,254,0,248,0,248,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,16,20,40,20,2,1,31,248,63,254,124,62,248, + 31,240,15,240,0,240,0,124,0,127,192,63,248,15,254,0, + 126,0,31,0,15,240,15,240,15,240,31,124,62,127,252,31, + 248,12,25,50,14,1,1,14,0,30,0,30,0,30,0,30, + 0,255,240,255,240,255,240,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,15,0,15,240,7,240,18,20,60,24,3,0,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,7,192,120, + 15,192,126,31,192,63,251,192,31,243,192,20,20,60,21,1, + 0,240,0,240,240,1,224,120,1,224,120,1,192,124,3,192, + 60,3,192,60,7,128,30,7,128,30,7,0,15,15,0,15, + 14,0,15,14,0,7,158,0,7,156,0,3,252,0,3,248, + 0,3,248,0,1,248,0,1,240,0,0,240,0,31,20,80, + 33,1,0,240,7,192,30,240,15,192,28,240,15,192,60,120, + 15,224,60,120,30,224,56,120,30,224,120,56,28,240,120,60, + 28,112,112,60,60,112,112,28,56,120,240,30,56,56,224,30, + 120,56,224,14,112,57,224,15,112,29,192,15,240,29,192,7, + 224,31,192,7,224,31,128,7,224,15,128,3,192,15,128,3, + 192,15,0,20,20,60,22,1,0,120,1,224,60,3,192,62, + 3,192,31,7,128,15,15,0,7,158,0,7,222,0,3,252, + 0,1,248,0,0,240,0,1,248,0,3,252,0,3,188,0, + 7,158,0,15,31,0,30,15,128,62,7,128,60,3,192,120, + 3,224,240,1,240,20,28,84,21,1,248,240,0,240,240,1, + 224,120,1,224,120,1,192,60,3,192,60,3,192,62,7,128, + 30,7,128,30,7,128,15,15,0,15,15,0,15,158,0,7, + 158,0,7,158,0,3,252,0,3,252,0,1,248,0,1,248, + 0,1,248,0,0,240,0,0,240,0,0,224,0,1,224,0, + 1,224,0,1,192,0,3,192,0,3,128,0,7,128,0,15, + 20,40,19,2,0,127,254,127,254,127,254,0,62,0,124,0, + 120,0,240,1,240,3,224,3,192,7,128,15,128,31,0,30, + 0,60,0,124,0,248,0,255,254,255,254,255,254,13,41,82, + 19,3,246,0,24,1,248,3,248,3,224,7,128,7,128,7, + 128,7,0,7,0,7,0,7,0,7,128,7,128,7,0,7, + 0,7,0,15,0,31,0,62,0,252,0,248,0,252,0,126, + 0,30,0,15,0,15,0,7,0,7,0,7,0,7,128,7, + 128,7,0,7,0,7,0,7,0,7,128,7,128,3,192,3, + 248,1,248,0,120,2,43,43,14,6,245,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,13,41,82,19,3,246,192,0,252,0, + 254,0,30,0,15,0,15,0,7,0,7,0,7,0,7,0, + 7,0,7,128,7,128,7,128,7,128,7,128,7,128,3,192, + 3,224,1,248,0,248,1,248,1,240,3,192,3,192,7,128, + 7,128,7,128,7,128,7,128,7,128,7,0,7,0,7,0, + 7,0,7,0,15,0,31,0,254,0,252,0,240,0,21,5, + 15,21,0,8,2,0,56,31,240,120,63,255,240,120,127,224, + 240,15,128,255}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--48-480-72-72-P-226-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 35 + Calculated Max Values w=29 h=39 x=10 y=16 dx=49 dy= 0 ascent=36 len=116 + Font Bounding box w=65 h=64 x=-4 y=-13 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =35 descent= 0 + X Font ascent =35 descent= 0 + Max Font ascent =36 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur35n[1417] U8G_SECTION(".progmem.u8g_font_fur35n") = { + 0,65,64,252,243,35,0,0,0,0,42,57,0,36,250,35, + 0,19,19,57,31,6,16,6,12,0,30,15,0,15,30,0, + 15,30,0,7,28,0,3,184,0,1,176,0,193,240,96,255, + 255,224,255,255,224,248,227,224,1,240,0,3,184,0,7,188, + 0,7,28,0,15,30,0,30,15,0,14,14,0,2,8,0, + 29,29,116,49,10,0,0,7,0,0,0,7,0,0,0,7, + 0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7, + 0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7, + 0,0,0,7,0,0,0,7,0,0,255,255,255,248,255,255, + 255,248,255,255,255,248,0,7,0,0,0,7,0,0,0,7, + 0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7, + 0,0,0,7,0,0,0,7,0,0,0,7,0,0,0,7, + 0,0,0,7,0,0,0,7,0,0,9,12,24,13,2,250, + 31,128,31,0,31,0,62,0,62,0,62,0,60,0,124,0, + 120,0,120,0,112,0,240,0,12,4,8,16,2,10,255,240, + 255,240,255,240,255,240,5,6,6,13,5,0,248,248,248,248, + 248,248,15,39,78,19,2,253,0,14,0,30,0,28,0,28, + 0,60,0,56,0,56,0,120,0,112,0,112,0,112,0,240, + 0,224,0,224,1,224,1,192,1,192,1,192,3,192,3,128, + 3,128,7,128,7,0,7,0,15,0,15,0,14,0,14,0, + 30,0,28,0,28,0,60,0,56,0,56,0,56,0,120,0, + 112,0,112,0,240,0,22,35,105,27,2,1,3,255,0,7, + 255,128,31,255,224,31,255,224,62,3,240,62,1,240,124,0, + 248,120,0,248,120,0,120,248,0,120,248,0,124,248,0,124, + 248,0,124,248,0,124,248,0,124,248,0,124,248,0,124,248, + 0,124,248,0,124,248,0,124,248,0,124,248,0,124,248,0, + 124,248,0,124,120,0,124,120,0,120,120,0,120,124,0,248, + 60,0,248,62,1,240,63,3,240,31,255,224,15,255,192,7, + 255,128,1,255,0,12,35,70,27,7,0,3,240,7,240,15, + 240,31,240,127,240,255,240,253,240,241,240,193,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,21,35,105,27,3,1,3,255,0,15,255,128,31,255,192, + 63,255,224,63,1,240,126,0,240,124,0,248,124,0,248,124, + 0,248,124,0,248,0,0,248,0,0,248,0,0,240,0,1, + 240,0,3,224,0,7,224,0,7,192,0,15,128,0,31,128, + 0,63,0,0,126,0,0,252,0,1,248,0,3,240,0,7, + 224,0,15,192,0,31,192,0,31,128,0,63,0,0,126,0, + 0,252,0,0,255,255,248,255,255,248,255,255,248,255,255,248, + 22,35,105,27,2,1,3,255,0,15,255,192,31,255,224,31, + 255,240,63,1,248,62,0,248,124,0,120,124,0,120,124,0, + 124,0,0,120,0,0,120,0,0,248,0,1,240,0,15,224, + 0,255,192,0,255,0,0,255,128,0,255,192,0,15,224,0, + 1,240,0,0,248,0,0,248,0,0,124,0,0,124,0,0, + 124,248,0,124,248,0,124,252,0,124,252,0,120,124,0,248, + 127,3,248,63,255,240,31,255,224,15,255,192,3,255,0,24, + 35,105,27,1,0,0,3,240,0,7,240,0,7,240,0,15, + 240,0,31,240,0,63,240,0,61,240,0,121,240,0,249,240, + 0,241,240,1,225,240,3,225,240,3,193,240,7,129,240,15, + 129,240,15,1,240,30,1,240,62,1,240,60,1,240,120,1, + 240,248,1,240,240,1,240,255,255,255,255,255,255,255,255,255, + 255,255,255,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,21,35, + 105,27,3,0,127,255,224,127,255,224,127,255,224,127,255,224, + 124,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,254,0,125,255,128,127,255, + 192,127,131,224,126,1,240,124,0,240,120,0,248,120,0,120, + 0,0,120,0,0,120,0,0,120,0,0,120,0,0,120,0, + 0,120,248,0,120,248,0,248,248,0,240,248,1,240,126,3, + 224,63,255,224,63,255,192,15,255,128,7,254,0,23,35,105, + 27,2,1,1,255,128,7,255,192,15,255,224,31,193,240,31, + 0,248,62,0,248,62,0,120,124,0,120,124,0,0,120,0, + 0,120,0,0,120,0,0,120,0,0,120,127,0,120,255,192, + 249,255,240,251,255,240,255,131,248,254,0,248,252,0,124,252, + 0,124,248,0,60,248,0,60,248,0,60,248,0,62,248,0, + 60,248,0,60,120,0,60,124,0,124,124,0,120,63,1,248, + 31,255,240,15,255,224,7,255,192,1,255,0,21,35,105,27, + 3,0,255,255,248,255,255,248,255,255,248,255,255,248,0,0, + 120,0,0,248,0,0,240,0,1,240,0,1,240,0,1,224, + 0,3,224,0,3,224,0,7,192,0,7,192,0,7,128,0, + 15,128,0,15,128,0,15,0,0,31,0,0,31,0,0,62, + 0,0,62,0,0,62,0,0,124,0,0,124,0,0,248,0, + 0,248,0,0,248,0,1,240,0,1,240,0,3,240,0,3, + 224,0,3,224,0,7,192,0,7,192,0,22,35,105,27,2, + 1,3,255,128,15,255,224,31,255,240,63,255,248,63,1,248, + 126,0,252,124,0,124,124,0,124,124,0,124,124,0,124,124, + 0,124,60,0,120,62,0,248,31,131,240,15,255,224,3,255, + 128,7,255,128,15,255,224,31,3,240,62,0,248,124,0,120, + 120,0,124,248,0,60,248,0,60,248,0,60,248,0,60,248, + 0,60,248,0,60,248,0,124,124,0,124,126,1,248,63,255, + 248,31,255,240,15,255,224,3,255,128,22,35,105,27,2,1, + 3,255,128,15,255,192,31,255,224,63,255,240,126,1,248,124, + 0,248,120,0,248,248,0,124,248,0,124,248,0,124,248,0, + 124,248,0,124,248,0,124,248,0,124,248,0,252,120,0,252, + 124,1,252,127,3,252,63,255,252,31,255,124,15,254,124,3, + 248,124,0,0,124,0,0,124,0,0,120,0,0,120,0,0, + 248,120,0,248,120,1,240,124,1,240,62,3,224,63,255,224, + 31,255,192,15,255,128,7,254,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--58-580-72-72-P-271-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 42 + Calculated Max Values w=35 h=46 x=12 y=20 dx=59 dy= 0 ascent=43 len=175 + Font Bounding box w=78 h=76 x=-4 y=-15 + Calculated Min Values x= 0 y=-7 dx= 0 dy= 0 + Pure Font ascent =42 descent= 0 + X Font ascent =42 descent= 0 + Max Font ascent =43 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur42n[2135] U8G_SECTION(".progmem.u8g_font_fur42n") = { + 0,78,76,252,241,42,0,0,0,0,42,57,0,43,249,42, + 0,23,22,66,37,7,20,3,1,128,7,131,192,15,131,224, + 7,131,192,7,199,192,3,199,128,1,239,0,0,238,0,0, + 254,0,254,124,254,255,255,254,255,255,254,254,124,254,0,124, + 0,0,238,0,1,239,0,3,199,128,3,199,128,7,195,192, + 15,131,224,15,131,224,3,1,128,35,35,175,59,12,0,0, + 1,224,0,0,0,1,224,0,0,0,1,224,0,0,0,1, + 224,0,0,0,1,224,0,0,0,1,224,0,0,0,1,224, + 0,0,0,1,224,0,0,0,1,224,0,0,0,1,224,0, + 0,0,1,224,0,0,0,1,224,0,0,0,1,224,0,0, + 0,1,224,0,0,0,1,224,0,0,255,255,255,255,224,255, + 255,255,255,224,255,255,255,255,224,255,255,255,255,224,0,1, + 224,0,0,0,1,224,0,0,0,1,224,0,0,0,1,224, + 0,0,0,1,224,0,0,0,1,224,0,0,0,1,224,0, + 0,0,1,224,0,0,0,1,224,0,0,0,1,224,0,0, + 0,1,224,0,0,0,1,224,0,0,0,1,224,0,0,0, + 1,224,0,0,0,1,224,0,0,0,1,224,0,0,10,15, + 30,16,3,249,31,192,31,192,31,128,63,128,63,0,63,0, + 62,0,62,0,126,0,124,0,124,0,120,0,248,0,248,0, + 240,0,14,5,10,18,2,12,255,252,255,252,255,252,255,252, + 255,252,6,7,7,16,6,0,252,252,252,252,252,252,252,17, + 46,138,23,3,253,0,7,128,0,7,128,0,7,128,0,15, + 0,0,15,0,0,15,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,60,0,0,60,0,0,60,0,0,120,0,0, + 120,0,0,120,0,0,240,0,0,240,0,0,240,0,0,240, + 0,1,224,0,1,224,0,1,224,0,3,192,0,3,192,0, + 3,192,0,7,128,0,7,128,0,7,128,0,7,128,0,15, + 0,0,15,0,0,15,0,0,30,0,0,30,0,0,30,0, + 0,62,0,0,60,0,0,60,0,0,60,0,0,120,0,0, + 120,0,0,120,0,0,240,0,0,240,0,0,240,0,0,26, + 42,168,32,3,1,0,255,224,0,3,255,240,0,7,255,252, + 0,15,255,254,0,31,255,254,0,63,128,127,0,63,0,63, + 0,62,0,31,128,126,0,31,128,124,0,15,128,124,0,15, + 192,124,0,15,192,252,0,15,192,252,0,7,192,248,0,7, + 192,248,0,7,192,248,0,7,192,248,0,7,192,248,0,7, + 192,248,0,7,192,248,0,7,192,248,0,7,192,248,0,7, + 192,248,0,7,192,252,0,7,192,252,0,7,192,252,0,7, + 192,252,0,7,192,252,0,15,192,124,0,15,192,124,0,15, + 192,126,0,15,192,126,0,15,128,62,0,31,128,63,0,31, + 128,63,0,63,0,31,192,127,0,31,255,254,0,15,255,252, + 0,7,255,252,0,3,255,240,0,0,255,192,0,14,42,84, + 32,8,0,0,252,1,252,3,252,7,252,15,252,63,252,127, + 252,255,124,254,124,248,124,224,124,128,124,0,124,0,124,0, + 124,0,124,0,124,0,124,0,124,0,124,0,124,0,124,0, + 124,0,124,0,124,0,124,0,124,0,124,0,124,0,124,0, + 124,0,124,0,124,0,124,0,124,0,124,0,124,0,124,0, + 124,0,124,0,124,0,124,25,42,168,32,4,1,1,255,192, + 0,7,255,240,0,15,255,248,0,31,255,252,0,31,255,254, + 0,63,128,127,0,63,0,63,0,127,0,31,128,126,0,31, + 128,126,0,31,128,126,0,15,128,126,0,15,128,0,0,31, + 128,0,0,31,128,0,0,31,0,0,0,63,0,0,0,63, + 0,0,0,126,0,0,0,252,0,0,1,252,0,0,3,248, + 0,0,7,240,0,0,7,224,0,0,15,224,0,0,31,192, + 0,0,63,128,0,0,127,0,0,0,254,0,0,1,252,0, + 0,3,248,0,0,7,240,0,0,15,224,0,0,31,224,0, + 0,63,192,0,0,63,128,0,0,127,0,0,0,254,0,0, + 0,255,255,255,128,255,255,255,128,255,255,255,128,255,255,255, + 128,255,255,255,128,26,42,168,32,3,1,1,255,192,0,7, + 255,240,0,15,255,252,0,31,255,254,0,63,255,255,0,63, + 128,127,0,127,0,31,128,126,0,31,128,126,0,15,128,126, + 0,15,128,252,0,15,128,0,0,15,128,0,0,15,128,0, + 0,31,128,0,0,63,0,0,0,126,0,0,3,252,0,0, + 127,248,0,0,127,240,0,0,127,224,0,0,127,240,0,0, + 127,252,0,0,3,254,0,0,0,127,0,0,0,63,128,0, + 0,31,128,0,0,15,192,0,0,15,192,0,0,7,192,0, + 0,7,192,252,0,7,192,252,0,7,192,252,0,7,192,252, + 0,15,192,254,0,31,192,127,0,63,128,127,128,127,128,63, + 255,255,0,63,255,254,0,31,255,252,0,7,255,248,0,1, + 255,224,0,29,42,168,32,2,0,0,0,127,0,0,0,127, + 0,0,0,255,0,0,1,255,0,0,3,255,0,0,3,255, + 0,0,7,223,0,0,15,223,0,0,15,159,0,0,31,31, + 0,0,63,31,0,0,62,31,0,0,124,31,0,0,252,31, + 0,0,248,31,0,1,240,31,0,3,240,31,0,3,224,31, + 0,7,192,31,0,15,192,31,0,15,128,31,0,31,0,31, + 0,63,0,31,0,126,0,31,0,124,0,31,0,252,0,31, + 0,248,0,31,0,255,255,255,248,255,255,255,248,255,255,255, + 248,255,255,255,248,255,255,255,248,0,0,31,0,0,0,31, + 0,0,0,31,0,0,0,31,0,0,0,31,0,0,0,31, + 0,0,0,31,0,0,0,31,0,0,0,31,0,0,0,31, + 0,26,42,168,32,3,0,127,255,255,0,127,255,255,0,127, + 255,255,0,127,255,255,0,127,255,255,0,124,0,0,0,124, + 0,0,0,124,0,0,0,124,0,0,0,124,0,0,0,124, + 0,0,0,124,0,0,0,124,0,0,0,124,0,0,0,124, + 31,192,0,124,127,240,0,124,255,252,0,125,255,254,0,127, + 224,254,0,127,128,63,0,127,0,31,0,126,0,31,128,126, + 0,15,128,124,0,15,128,0,0,15,192,0,0,15,192,0, + 0,7,192,0,0,7,192,0,0,7,192,0,0,15,192,0, + 0,15,192,252,0,15,192,252,0,15,128,252,0,31,128,254, + 0,31,128,126,0,63,0,127,128,126,0,63,255,254,0,63, + 255,252,0,15,255,248,0,7,255,224,0,1,255,192,0,27, + 42,168,32,3,1,0,127,240,0,1,255,252,0,3,255,254, + 0,15,240,127,0,15,192,63,128,31,128,31,128,63,0,15, + 192,63,0,15,192,62,0,15,192,126,0,0,0,126,0,0, + 0,124,0,0,0,124,0,0,0,124,0,0,0,124,0,0, + 0,124,15,224,0,124,63,248,0,124,255,254,0,124,255,255, + 0,125,255,255,128,127,224,127,128,127,192,31,192,255,128,15, + 192,255,0,7,192,255,0,7,224,254,0,7,224,254,0,7, + 224,254,0,3,224,254,0,3,224,254,0,3,224,254,0,7, + 224,254,0,7,224,126,0,7,224,127,0,7,192,127,0,15, + 192,63,128,15,192,31,192,63,128,31,255,255,0,15,255,255, + 0,7,255,254,0,1,255,248,0,0,127,224,0,26,42,168, + 32,3,0,255,255,255,192,255,255,255,192,255,255,255,192,255, + 255,255,192,255,255,255,192,0,0,7,192,0,0,15,192,0, + 0,15,128,0,0,31,128,0,0,31,128,0,0,31,0,0, + 0,63,0,0,0,63,0,0,0,126,0,0,0,126,0,0, + 0,124,0,0,0,252,0,0,0,252,0,0,1,248,0,0, + 1,248,0,0,1,248,0,0,3,240,0,0,3,240,0,0, + 7,224,0,0,7,224,0,0,15,224,0,0,15,192,0,0, + 15,192,0,0,31,128,0,0,31,128,0,0,63,128,0,0, + 63,0,0,0,63,0,0,0,127,0,0,0,126,0,0,0, + 254,0,0,0,252,0,0,0,252,0,0,1,252,0,0,1, + 248,0,0,3,248,0,0,3,240,0,0,27,42,168,32,2, + 1,0,255,224,0,3,255,252,0,15,255,254,0,31,255,255, + 0,63,255,255,128,63,128,63,192,127,0,31,192,126,0,15, + 192,126,0,7,192,126,0,7,192,124,0,7,192,124,0,7, + 192,126,0,7,192,62,0,15,192,63,0,15,128,31,128,31, + 0,15,224,127,0,7,255,254,0,3,255,248,0,0,255,240, + 0,3,255,248,0,15,255,254,0,31,224,127,0,63,128,31, + 128,62,0,15,192,126,0,7,192,124,0,7,224,252,0,3, + 224,252,0,3,224,248,0,3,224,248,0,3,224,252,0,3, + 224,252,0,3,224,252,0,7,224,254,0,7,224,127,0,15, + 224,127,128,31,192,63,255,255,128,31,255,255,128,15,255,255, + 0,3,255,252,0,0,255,240,0,27,42,168,32,3,1,1, + 255,240,0,7,255,252,0,15,255,254,0,31,255,255,0,63, + 255,255,128,63,128,63,128,126,0,31,192,126,0,15,192,252, + 0,15,192,252,0,7,224,252,0,7,224,248,0,7,224,248, + 0,7,224,248,0,7,224,252,0,7,224,252,0,7,224,252, + 0,15,224,124,0,15,224,126,0,31,224,63,0,63,224,63, + 192,123,224,31,255,243,224,15,255,243,224,3,255,195,224,0, + 255,7,224,0,0,7,224,0,0,7,224,0,0,7,224,0, + 0,7,192,0,0,7,192,0,0,7,192,124,0,15,192,124, + 0,15,128,126,0,31,128,62,0,31,128,63,0,63,0,63, + 128,255,0,31,255,254,0,31,255,252,0,15,255,248,0,7, + 255,240,0,1,255,192,0}; +/* + Fontname: -FreeType-FreeUniversal-Medium-R-Normal--68-680-72-72-P-317-ISO10646-1 + Copyright: (FreeUniversal) Copyright (c) Stephen Wilson 2009 a modification of: Original Font (SIL Sophia) Copyright (c) SIL International, 1994-2008. + Capital A Height: 0, '1' Height: 49 + Calculated Max Values w=41 h=54 x=14 y=23 dx=69 dy= 0 ascent=50 len=250 + Font Bounding box w=92 h=89 x=-5 y=-18 + Calculated Min Values x= 0 y=-9 dx= 0 dy= 0 + Pure Font ascent =49 descent= 0 + X Font ascent =49 descent= 0 + Max Font ascent =50 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_fur49n[2643] U8G_SECTION(".progmem.u8g_font_fur49n") = { + 0,92,89,251,238,49,0,0,0,0,42,57,0,50,247,49, + 0,27,26,104,45,9,23,0,192,96,0,3,192,120,0,15, + 192,126,0,7,224,252,0,3,224,248,0,1,241,240,0,1, + 241,240,0,0,251,224,0,0,123,192,0,0,59,128,0,224, + 63,128,224,255,255,255,224,255,255,255,224,255,255,255,224,255, + 159,63,224,128,63,128,32,0,123,192,0,0,123,192,0,0, + 241,224,0,1,241,240,0,3,241,248,0,3,224,248,0,7, + 224,252,0,15,192,124,0,3,192,120,0,0,128,32,0,41, + 41,246,69,14,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,255,255,255,255,255,128,255,255,255, + 255,255,128,255,255,255,255,255,128,255,255,255,255,255,128,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,0,0,60,0,0, + 0,0,0,60,0,0,0,0,0,60,0,0,0,0,0,60, + 0,0,0,0,0,60,0,0,0,0,0,60,0,0,0,0, + 0,60,0,0,0,0,0,60,0,0,0,12,17,34,19,3, + 247,15,240,15,240,15,224,15,224,31,224,31,192,31,192,31, + 128,63,128,63,0,63,0,62,0,126,0,126,0,124,0,124, + 0,248,0,16,6,12,22,3,14,255,255,255,255,255,255,255, + 255,255,255,255,255,7,8,8,19,7,0,254,254,254,254,254, + 254,254,254,21,54,162,27,3,252,0,0,248,0,0,240,0, + 1,240,0,1,240,0,1,240,0,1,224,0,3,224,0,3, + 224,0,3,192,0,7,192,0,7,192,0,7,128,0,15,128, + 0,15,128,0,15,128,0,15,0,0,31,0,0,31,0,0, + 30,0,0,62,0,0,62,0,0,60,0,0,124,0,0,124, + 0,0,124,0,0,120,0,0,248,0,0,248,0,0,240,0, + 1,240,0,1,240,0,1,240,0,1,224,0,3,224,0,3, + 224,0,3,192,0,7,192,0,7,192,0,7,128,0,15,128, + 0,15,128,0,15,128,0,15,0,0,31,0,0,31,0,0, + 30,0,0,62,0,0,62,0,0,60,0,0,124,0,0,124, + 0,0,124,0,0,120,0,0,248,0,0,31,51,204,38,3, + 255,0,31,240,0,0,127,252,0,1,255,255,0,3,255,255, + 128,7,255,255,192,15,255,255,224,31,240,31,240,31,192,15, + 240,63,128,7,248,63,128,3,248,63,0,1,248,127,0,1, + 252,126,0,1,252,126,0,0,252,126,0,0,252,254,0,0, + 252,254,0,0,254,252,0,0,254,252,0,0,254,252,0,0, + 254,252,0,0,126,252,0,0,126,252,0,0,126,252,0,0, + 126,252,0,0,126,252,0,0,126,252,0,0,126,252,0,0, + 126,252,0,0,126,252,0,0,254,254,0,0,254,254,0,0, + 254,254,0,0,254,254,0,0,254,126,0,0,254,126,0,0, + 252,126,0,0,252,127,0,1,252,127,0,1,252,63,0,1, + 252,63,128,3,248,63,128,3,248,31,192,7,248,31,224,15, + 240,15,248,63,240,15,255,255,224,7,255,255,192,3,255,255, + 128,1,255,255,0,0,127,252,0,0,15,240,0,16,49,98, + 38,9,0,0,127,0,255,1,255,3,255,7,255,31,255,63, + 255,127,255,255,255,255,63,252,63,240,63,192,63,0,63,0, + 63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0, + 63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0, + 63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0, + 63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0, + 63,0,63,0,63,29,50,200,38,4,0,0,31,224,0,0, + 255,252,0,3,255,255,0,7,255,255,128,15,255,255,192,31, + 255,255,224,31,240,31,224,63,224,7,240,63,192,3,240,63, + 128,3,248,127,128,3,248,127,0,1,248,127,0,1,248,127, + 0,1,248,127,0,1,248,0,0,1,248,0,0,1,248,0, + 0,3,248,0,0,3,248,0,0,7,240,0,0,7,240,0, + 0,15,224,0,0,31,224,0,0,63,192,0,0,127,128,0, + 0,127,0,0,0,255,0,0,1,254,0,0,3,252,0,0, + 7,248,0,0,15,240,0,0,31,240,0,0,63,224,0,0, + 127,192,0,0,127,128,0,0,255,0,0,1,254,0,0,3, + 252,0,0,7,248,0,0,15,248,0,0,31,240,0,0,63, + 224,0,0,127,192,0,0,255,128,0,0,255,0,0,0,255, + 255,255,248,255,255,255,248,255,255,255,248,255,255,255,248,255, + 255,255,248,31,51,204,38,3,255,0,31,240,0,0,255,254, + 0,1,255,255,128,3,255,255,192,7,255,255,224,15,248,31, + 240,31,224,7,248,31,192,3,248,63,192,1,252,63,128,0, + 252,63,128,0,252,127,0,0,252,127,0,0,252,127,0,0, + 252,0,0,0,252,0,0,0,252,0,0,1,252,0,0,1, + 248,0,0,3,248,0,0,7,240,0,0,31,224,0,0,255, + 192,0,31,255,128,0,31,254,0,0,31,252,0,0,31,255, + 0,0,31,255,192,0,0,255,224,0,0,15,240,0,0,7, + 248,0,0,3,252,0,0,1,252,0,0,0,254,0,0,0, + 254,0,0,0,126,0,0,0,126,0,0,0,126,254,0,0, + 126,254,0,0,126,255,0,0,126,255,0,0,254,127,0,0, + 254,127,128,1,252,127,128,3,252,63,224,7,248,31,248,31, + 240,15,255,255,224,7,255,255,192,3,255,255,128,0,255,254, + 0,0,31,240,0,34,50,250,38,2,0,0,0,15,240,0, + 0,0,15,240,0,0,0,31,240,0,0,0,63,240,0,0, + 0,63,240,0,0,0,127,240,0,0,0,255,240,0,0,0, + 255,240,0,0,1,251,240,0,0,3,251,240,0,0,3,243, + 240,0,0,7,227,240,0,0,15,227,240,0,0,15,195,240, + 0,0,31,131,240,0,0,63,131,240,0,0,63,3,240,0, + 0,126,3,240,0,0,254,3,240,0,1,252,3,240,0,1, + 248,3,240,0,3,248,3,240,0,7,240,3,240,0,7,224, + 3,240,0,15,224,3,240,0,31,192,3,240,0,31,128,3, + 240,0,63,128,3,240,0,127,0,3,240,0,126,0,3,240, + 0,252,0,3,240,0,252,0,3,240,0,255,255,255,255,192, + 255,255,255,255,192,255,255,255,255,192,255,255,255,255,192,255, + 255,255,255,192,255,255,255,255,192,0,0,3,240,0,0,0, + 3,240,0,0,0,3,240,0,0,0,3,240,0,0,0,3, + 240,0,0,0,3,240,0,0,0,3,240,0,0,0,3,240, + 0,0,0,3,240,0,0,0,3,240,0,0,0,3,240,0, + 0,0,3,240,0,30,50,200,38,4,255,63,255,255,224,63, + 255,255,224,63,255,255,224,63,255,255,224,63,255,255,224,63, + 255,255,224,63,0,0,0,63,0,0,0,63,0,0,0,63, + 0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,63, + 0,0,0,63,0,0,0,63,0,0,0,63,3,248,0,63, + 31,254,0,63,63,255,128,63,127,255,192,63,255,255,224,63, + 248,31,224,63,224,7,240,63,192,3,240,63,128,3,248,63, + 0,1,248,63,0,1,252,62,0,1,252,0,0,0,252,0, + 0,0,252,0,0,0,252,0,0,0,252,0,0,0,252,0, + 0,0,252,0,0,0,252,0,0,0,252,0,0,0,252,254, + 0,1,252,254,0,1,248,254,0,1,248,255,0,3,248,127, + 0,3,240,127,128,7,224,127,192,15,224,63,240,63,192,31, + 255,255,128,15,255,255,0,7,255,254,0,1,255,248,0,0, + 31,224,0,31,51,204,38,3,255,0,7,248,0,0,63,255, + 0,0,255,255,192,1,255,255,224,3,255,255,240,7,252,15, + 240,15,248,7,248,31,224,3,248,31,192,1,252,63,192,1, + 252,63,128,0,252,63,0,0,252,127,0,0,252,127,0,0, + 0,127,0,0,0,126,0,0,0,126,0,0,0,126,0,0, + 0,126,0,0,0,126,0,0,0,126,7,252,0,126,31,255, + 0,126,63,255,192,126,127,255,224,126,255,255,240,127,252,15, + 248,127,240,3,248,255,192,1,252,255,192,1,252,255,128,0, + 254,255,128,0,254,255,0,0,126,255,0,0,126,255,0,0, + 126,255,0,0,126,255,0,0,126,255,0,0,126,255,0,0, + 126,127,0,0,126,127,0,0,126,127,128,0,254,63,128,0, + 252,63,128,1,252,31,192,1,252,31,224,3,248,15,248,15, + 240,7,255,255,224,3,255,255,192,1,255,255,128,0,127,254, + 0,0,15,248,0,30,49,196,38,4,0,255,255,255,252,255, + 255,255,252,255,255,255,252,255,255,255,252,255,255,255,252,0, + 0,0,252,0,0,1,252,0,0,1,252,0,0,1,248,0, + 0,3,248,0,0,3,240,0,0,7,240,0,0,7,240,0, + 0,7,224,0,0,15,224,0,0,15,224,0,0,31,192,0, + 0,31,192,0,0,31,128,0,0,63,128,0,0,63,128,0, + 0,127,0,0,0,127,0,0,0,127,0,0,0,254,0,0, + 0,254,0,0,0,254,0,0,1,252,0,0,1,252,0,0, + 3,248,0,0,3,248,0,0,3,248,0,0,7,240,0,0, + 7,240,0,0,15,240,0,0,15,224,0,0,15,224,0,0, + 31,192,0,0,31,192,0,0,63,192,0,0,63,128,0,0, + 63,128,0,0,127,128,0,0,127,0,0,0,127,0,0,0, + 254,0,0,0,254,0,0,1,254,0,0,1,252,0,0,32, + 51,204,38,3,255,0,15,248,0,0,127,255,0,1,255,255, + 128,3,255,255,224,7,255,255,240,15,248,31,248,31,224,7, + 252,31,192,1,252,63,128,1,252,63,128,0,254,63,0,0, + 254,63,0,0,254,63,0,0,126,63,0,0,126,63,0,0, + 126,63,0,0,254,63,0,0,252,31,128,0,252,31,128,1, + 248,15,192,3,248,15,224,7,240,7,248,31,224,3,255,255, + 192,0,255,255,128,0,127,254,0,1,255,255,128,3,255,255, + 192,15,248,15,240,31,192,3,248,31,128,1,248,63,0,0, + 252,127,0,0,126,126,0,0,126,126,0,0,126,254,0,0, + 127,252,0,0,63,252,0,0,63,252,0,0,63,254,0,0, + 127,254,0,0,127,254,0,0,127,254,0,0,127,127,0,0, + 254,127,128,1,254,63,192,3,252,63,240,15,252,31,255,255, + 248,15,255,255,240,3,255,255,192,0,255,255,0,0,15,248, + 0,31,51,204,38,3,255,0,31,248,0,0,255,255,0,3, + 255,255,192,7,255,255,224,15,255,255,240,31,240,31,248,63, + 192,7,248,63,128,3,252,127,0,1,252,126,0,1,252,126, + 0,0,254,254,0,0,254,254,0,0,254,252,0,0,254,252, + 0,0,254,252,0,0,254,252,0,0,254,252,0,0,254,254, + 0,0,254,254,0,0,254,254,0,0,254,126,0,1,254,127, + 0,1,254,63,128,3,254,63,192,7,254,31,240,31,254,31, + 255,255,126,15,255,254,126,7,255,252,126,1,255,248,126,0, + 63,224,126,0,0,0,126,0,0,0,126,0,0,0,126,0, + 0,0,254,0,0,0,252,0,0,0,252,0,0,0,252,126, + 0,0,252,127,0,1,248,63,0,1,248,63,0,3,248,63, + 0,7,240,63,128,7,240,31,192,31,224,31,224,63,224,15, + 255,255,192,7,255,255,128,3,255,255,0,1,255,252,0,0, + 63,224,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--18-180-72-72-P-89-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=15 h=19 x= 2 y=11 dx=16 dy= 0 ascent=16 len=34 + Font Bounding box w=27 h=26 x=-9 y=-6 + Calculated Min Values x=-3 y=-5 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =16 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb11[4313] U8G_SECTION(".progmem.u8g_font_gdb11") = { + 0,27,26,247,250,11,2,67,5,71,32,255,252,16,251,14, + 252,0,0,0,4,0,0,3,14,14,6,1,255,96,224,96, + 96,96,96,96,64,64,64,0,224,224,192,6,6,6,8,1, + 7,108,236,204,76,76,76,8,10,10,9,1,1,26,18,22, + 127,36,36,254,72,72,216,7,14,14,9,1,254,16,16,126, + 150,144,240,120,30,18,146,210,252,16,16,11,11,22,13,1, + 0,112,64,144,128,137,128,139,0,146,0,85,192,42,32,26, + 32,50,32,34,32,65,192,11,13,26,12,1,0,28,0,102, + 0,70,0,70,0,124,0,120,0,113,224,248,128,252,128,222, + 128,207,0,195,128,125,224,3,6,6,5,1,7,96,224,192, + 64,64,64,4,17,17,6,1,253,16,32,96,64,64,192,192, + 192,192,192,192,192,192,64,96,32,16,4,17,17,6,1,253, + 128,64,96,32,48,48,48,48,48,48,48,48,32,32,96,64, + 128,6,8,8,8,1,6,48,176,252,120,120,252,52,48,7, + 6,6,8,0,2,16,16,16,254,16,16,3,5,5,5,1, + 253,96,224,96,64,192,6,1,1,6,0,4,252,3,3,3, + 5,1,255,224,224,192,8,17,17,9,0,253,3,3,2,6, + 6,4,12,12,24,24,16,48,48,32,96,64,192,7,11,11, + 9,1,0,56,76,70,198,198,198,198,198,196,100,56,7,11, + 11,9,1,0,24,248,24,24,24,24,24,24,24,24,126,7, + 11,11,9,1,0,60,102,102,6,4,8,16,34,66,126,254, + 7,11,11,8,0,0,60,102,102,6,8,28,6,6,6,140, + 120,7,11,11,8,0,0,4,12,12,20,52,36,68,126,132, + 4,30,7,11,11,9,1,0,126,124,64,64,124,134,6,6, + 6,134,124,7,11,11,9,1,0,12,48,96,64,252,198,198, + 198,198,100,56,7,11,11,9,1,0,254,254,134,4,4,8, + 8,24,48,48,96,8,11,11,10,1,0,60,102,102,102,124, + 62,71,195,195,195,60,7,11,11,9,1,0,56,68,198,198, + 198,198,126,4,12,24,224,3,9,9,5,1,255,224,224,192, + 0,0,0,224,224,192,3,11,11,5,1,253,224,224,192,0, + 0,0,96,224,96,64,192,8,6,6,8,0,2,3,30,112, + 240,30,7,8,4,4,8,0,3,127,128,0,255,8,6,6, + 8,0,2,96,188,15,14,120,192,7,14,14,8,1,255,60, + 198,198,134,12,8,16,32,32,32,0,56,56,56,14,16,32, + 16,1,252,7,192,31,240,48,56,64,8,71,68,136,196,152, + 196,152,196,152,196,152,200,159,248,206,224,192,32,112,112,63, + 192,31,128,11,11,22,11,0,0,6,0,14,0,14,0,11, + 0,19,0,19,0,63,128,33,128,33,192,96,192,241,224,9, + 11,22,11,1,0,254,0,99,0,99,0,99,0,126,0,99, + 128,97,128,97,128,97,128,97,128,254,0,8,11,11,10,1, + 0,31,99,64,192,192,192,192,192,192,97,62,9,11,22,11, + 1,0,254,0,99,0,97,0,97,128,97,128,97,128,97,128, + 97,128,97,0,99,0,252,0,9,11,22,9,0,0,255,0, + 49,0,49,0,48,0,48,0,63,0,48,0,48,0,48,128, + 48,128,255,128,9,11,22,9,0,0,255,128,49,0,49,0, + 48,0,48,0,62,0,48,0,48,0,48,0,48,0,248,0, + 11,11,22,11,0,0,15,192,49,192,64,0,192,0,192,0, + 192,0,193,224,192,192,64,192,112,192,31,128,10,11,22,12, + 1,0,243,192,97,128,97,128,97,128,97,128,127,128,97,128, + 97,128,97,128,97,128,243,192,4,11,11,6,1,0,240,96, + 96,96,96,96,96,96,96,96,240,7,14,14,6,254,253,62, + 12,12,12,12,12,12,12,12,12,12,8,136,240,10,11,22, + 11,1,0,243,192,99,0,102,0,108,0,104,0,120,0,108, + 0,102,0,103,0,99,128,241,192,8,11,11,9,1,0,240, + 96,96,96,96,96,96,96,97,97,255,15,11,22,15,0,0, + 112,28,56,56,56,56,56,120,44,88,44,88,38,216,38,152, + 35,152,35,24,243,62,10,11,22,12,1,0,225,192,96,128, + 112,128,120,128,92,128,76,128,70,128,71,128,67,128,65,128, + 225,128,10,11,22,11,0,0,30,0,33,128,64,128,192,192, + 192,192,192,192,192,192,192,192,64,128,97,0,30,0,8,11, + 11,10,1,0,254,99,99,99,98,124,96,96,96,96,240,12, + 14,28,11,0,253,30,0,33,128,64,128,192,192,192,192,192, + 192,192,192,192,192,64,128,97,0,30,0,3,144,1,240,0, + 96,10,11,22,11,1,0,254,0,99,0,99,0,99,0,98, + 0,124,0,100,0,102,0,99,0,99,128,241,192,7,11,11, + 9,1,0,62,198,128,192,112,60,6,2,130,196,248,10,11, + 22,10,0,0,255,192,140,64,140,64,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,30,0,10,11,22,12,1,0, + 241,192,96,128,96,128,96,128,96,128,96,128,96,128,96,128, + 96,128,49,0,30,0,12,11,22,12,0,0,248,240,112,64, + 48,64,48,128,24,128,25,128,29,0,13,0,15,0,6,0, + 6,0,15,11,22,15,0,0,241,30,97,132,49,140,51,200, + 50,200,50,200,28,120,28,112,28,48,24,48,8,48,11,11, + 22,11,0,0,249,224,48,128,57,128,31,0,14,0,6,0, + 15,0,27,0,49,128,33,192,243,224,10,11,22,11,1,0, + 227,192,113,128,49,0,59,0,26,0,14,0,12,0,12,0, + 12,0,12,0,30,0,9,11,22,10,0,0,127,128,67,0, + 71,0,6,0,14,0,12,0,24,0,56,0,48,128,112,128, + 255,128,4,17,17,6,1,253,240,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,240,8,17,17,8,0,253,192, + 64,96,32,48,48,16,24,24,8,12,4,6,6,2,3,3, + 4,17,17,6,1,253,240,16,16,16,16,16,16,16,16,16, + 16,16,16,16,16,16,240,7,9,9,9,1,5,16,48,56, + 40,76,76,68,134,130,8,1,1,9,0,254,255,4,4,4, + 6,0,9,192,96,32,16,8,8,8,9,1,0,60,102,198, + 30,102,198,207,118,9,14,28,10,0,0,96,0,224,0,96, + 0,96,0,96,0,96,0,103,0,127,128,112,128,96,128,96, + 128,97,0,97,0,62,0,7,8,8,8,1,0,62,70,196, + 192,192,192,66,124,9,14,28,10,1,0,3,0,7,0,3, + 0,3,0,3,0,3,0,63,0,67,0,195,0,195,0,195, + 0,195,0,127,128,59,0,7,8,8,9,1,0,60,70,198, + 254,192,192,98,60,7,13,13,6,1,0,30,36,96,96,96, + 252,96,96,96,96,96,96,248,10,12,24,10,0,252,62,192, + 193,0,129,0,193,0,62,0,112,0,254,0,255,128,227,128, + 192,128,193,0,62,0,9,14,28,10,1,0,96,0,224,0, + 96,0,96,0,96,0,96,0,102,0,127,0,115,0,99,0, + 99,0,99,0,99,0,247,128,4,12,12,6,1,0,48,112, + 0,0,96,224,96,96,96,96,96,240,7,16,16,5,253,252, + 14,14,0,0,28,12,12,12,12,12,12,12,12,140,248,224, + 9,14,28,10,1,0,96,0,224,0,96,0,96,0,96,0, + 96,0,103,128,102,0,108,0,120,0,108,0,102,0,103,0, + 243,128,4,14,14,5,1,0,96,224,96,96,96,96,96,96, + 96,96,96,96,96,240,14,8,16,15,1,0,110,112,255,248, + 99,24,99,24,99,24,99,24,99,24,247,188,9,8,16,10, + 1,0,110,0,255,0,115,0,99,0,99,0,99,0,99,0, + 247,128,7,8,8,9,1,0,56,68,198,198,198,198,68,56, + 8,12,12,10,1,252,110,255,97,97,97,97,98,124,96,96, + 96,240,9,12,24,10,1,252,61,0,67,0,195,0,195,0, + 195,0,195,0,127,0,59,0,3,0,3,0,3,0,7,128, + 8,8,8,8,0,0,119,255,50,50,48,48,48,248,6,8, + 8,8,1,0,240,152,144,240,60,132,196,248,6,11,11,7, + 0,0,32,96,96,252,96,96,96,96,100,124,48,10,8,16, + 10,0,0,227,128,97,128,97,128,97,128,97,128,97,128,127, + 192,57,128,9,8,16,9,0,0,243,128,97,0,51,0,50, + 0,30,0,28,0,28,0,8,0,13,8,16,13,0,0,242, + 56,99,16,51,32,53,160,53,160,24,224,24,192,24,192,9, + 8,16,9,0,0,251,128,115,0,62,0,28,0,28,0,22, + 0,35,0,247,128,10,12,24,9,255,252,121,192,48,128,25, + 128,25,0,15,0,14,0,14,0,6,0,4,0,12,0,120, + 0,240,0,7,8,8,8,1,0,254,140,152,56,48,98,226, + 254,6,17,17,5,0,253,8,28,48,48,48,48,48,48,224, + 48,48,48,48,48,48,24,8,1,19,19,4,2,252,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,6,17,17,5,255,253,64,96,48,48,48,48,48,48,28, + 48,48,48,48,48,48,96,192,8,2,2,9,0,4,57,206, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,0,0,0,4,0,0,3,13,13,6,1,251,96,224,64, + 64,64,64,96,96,96,96,96,96,192,7,11,11,9,1,0, + 16,24,126,148,144,144,144,210,124,16,16,8,11,11,9,1, + 0,30,34,98,96,96,252,96,96,97,127,158,7,7,7,9, + 1,2,132,126,68,68,68,68,254,10,11,22,9,255,0,227, + 192,113,0,51,0,58,0,26,0,30,0,12,0,127,128,12, + 0,12,0,30,0,1,19,19,4,2,252,128,128,128,128,128, + 128,128,128,0,0,0,128,128,128,128,128,128,128,128,7,13, + 13,9,1,0,112,152,144,240,252,158,130,98,60,12,68,100, + 124,6,3,3,7,0,9,196,204,140,11,12,24,13,1,0, + 31,0,32,128,79,64,147,32,146,32,144,32,144,32,144,32, + 137,32,78,64,32,128,31,0,5,6,6,5,0,5,112,208, + 176,144,248,240,7,8,8,9,1,0,18,38,108,220,220,108, + 38,18,7,4,4,9,1,1,254,2,2,2,6,1,1,6, + 0,4,252,6,7,7,6,0,6,120,72,188,188,180,104,120, + 7,1,1,9,1,11,254,4,4,4,6,1,7,112,144,144, + 224,7,8,8,7,0,1,16,16,254,16,16,16,0,254,4, + 7,7,6,1,5,112,208,16,32,64,144,240,4,7,7,6, + 1,5,48,80,144,48,16,144,224,4,4,4,6,2,9,112, + 96,192,128,9,12,24,10,1,252,227,0,99,0,99,0,99, + 0,99,0,99,0,127,128,91,0,64,0,64,0,96,0,112, + 0,10,13,26,11,0,254,63,192,98,128,194,128,194,128,98, + 128,62,128,2,128,2,128,2,128,2,128,2,128,2,128,7, + 192,3,3,3,4,0,5,224,224,192,2,4,4,4,2,252, + 192,64,64,192,4,7,7,6,1,5,32,224,32,32,32,32, + 240,4,6,6,5,0,5,96,144,144,144,96,240,8,8,8, + 9,1,0,136,76,102,55,55,102,76,136,10,11,22,11,1, + 0,192,192,65,128,65,0,66,0,68,0,172,0,8,128,19, + 128,50,128,99,192,197,192,9,11,22,11,1,0,192,128,65, + 0,66,0,66,0,68,0,168,0,25,128,18,128,33,0,98, + 128,199,128,11,11,22,11,0,0,96,96,80,192,32,128,17, + 0,146,0,230,0,4,64,9,192,25,64,49,224,98,224,6, + 13,13,8,1,251,56,56,48,16,16,16,32,96,192,196,204, + 204,112,11,16,32,11,0,0,16,0,24,0,12,0,6,0, + 0,0,6,0,14,0,14,0,11,0,19,0,19,0,63,128, + 33,128,33,192,96,192,241,224,11,16,32,11,0,0,1,0, + 3,128,6,0,12,0,0,0,6,0,14,0,14,0,11,0, + 19,0,19,0,63,128,33,128,33,192,96,192,241,224,11,16, + 32,11,0,0,4,0,14,0,31,0,17,0,0,128,6,0, + 14,0,14,0,11,0,19,0,19,0,63,128,33,128,33,192, + 96,192,241,224,11,15,30,11,0,0,12,128,31,128,39,0, + 0,0,6,0,14,0,14,0,11,0,19,0,19,0,63,128, + 33,128,33,192,96,192,241,224,11,15,30,11,0,0,16,128, + 49,128,49,128,0,0,6,0,14,0,14,0,11,0,19,0, + 19,0,63,128,33,128,33,192,96,192,241,224,11,16,32,11, + 0,0,6,0,10,0,10,0,14,0,0,0,6,0,14,0, + 14,0,11,0,19,0,19,0,63,128,33,128,33,192,96,192, + 241,224,14,11,22,15,0,0,15,252,7,140,5,136,13,128, + 9,128,31,248,25,128,17,128,49,132,33,132,243,252,9,15, + 30,10,0,252,31,0,99,0,64,0,192,0,192,0,192,0, + 192,0,192,0,96,0,112,128,31,0,4,0,2,0,6,0, + 28,0,9,16,32,9,0,0,32,0,48,0,24,0,4,0, + 0,0,255,0,49,0,49,0,48,0,48,0,63,0,48,0, + 48,0,48,128,48,128,255,128,9,16,32,9,0,0,2,0, + 7,0,14,0,24,0,0,0,255,0,49,0,49,0,48,0, + 48,0,63,0,48,0,48,0,48,128,48,128,255,128,9,16, + 32,9,0,0,8,0,28,0,30,0,35,0,0,0,255,0, + 49,0,49,0,48,0,48,0,63,0,48,0,48,0,48,128, + 48,128,255,128,9,15,30,9,0,0,33,0,97,0,99,0, + 0,0,255,0,49,0,49,0,48,0,48,0,63,0,48,0, + 48,0,48,128,48,128,255,128,5,16,16,6,0,0,64,224, + 112,16,8,120,48,48,48,48,48,48,48,48,48,120,5,16, + 16,6,1,0,16,56,112,192,0,240,96,96,96,96,96,96, + 96,96,96,240,6,16,16,6,0,0,48,112,120,204,0,120, + 48,48,48,48,48,48,48,48,48,120,7,15,15,6,255,0, + 66,194,194,0,60,24,24,24,24,24,24,24,24,24,60,9, + 11,22,11,1,0,254,0,99,0,97,0,97,128,97,128,249, + 128,97,128,97,128,97,0,99,0,252,0,10,15,30,12,1, + 0,25,0,63,0,46,0,0,0,225,192,96,128,112,128,120, + 128,92,128,76,128,70,128,71,128,67,128,65,128,225,128,10, + 16,32,11,0,0,16,0,24,0,12,0,2,0,0,0,30, + 0,33,128,64,128,192,192,192,192,192,192,192,192,192,192,64, + 128,97,0,30,0,10,16,32,11,0,0,1,0,3,128,6, + 0,12,0,0,0,30,0,33,128,64,128,192,192,192,192,192, + 192,192,192,192,192,64,128,97,0,30,0,10,16,32,11,0, + 0,4,0,14,0,31,0,17,128,0,0,30,0,33,128,64, + 128,192,192,192,192,192,192,192,192,192,192,64,128,97,0,30, + 0,10,15,30,11,0,0,12,128,31,128,39,0,0,0,30, + 0,33,128,64,128,192,192,192,192,192,192,192,192,192,192,64, + 128,97,0,30,0,10,15,30,11,0,0,16,128,49,128,49, + 128,0,0,30,0,33,128,64,128,192,192,192,192,192,192,192, + 192,192,192,64,128,97,0,30,0,6,6,6,8,1,2,140, + 216,112,112,216,140,10,11,22,11,0,0,31,192,35,128,99, + 128,195,192,198,192,204,192,216,192,240,192,113,128,113,0,254, + 0,10,16,32,12,1,0,16,0,56,0,28,0,6,0,0, + 0,241,192,96,128,96,128,96,128,96,128,96,128,96,128,96, + 128,96,128,49,0,30,0,10,16,32,12,1,0,2,0,7, + 0,14,0,24,0,0,0,241,192,96,128,96,128,96,128,96, + 128,96,128,96,128,96,128,96,128,49,0,30,0,10,16,32, + 12,1,0,12,0,14,0,30,0,51,0,0,0,241,192,96, + 128,96,128,96,128,96,128,96,128,96,128,96,128,96,128,49, + 0,30,0,10,15,30,12,1,0,33,0,33,128,33,0,0, + 0,241,192,96,128,96,128,96,128,96,128,96,128,96,128,96, + 128,96,128,49,0,30,0,10,16,32,11,1,0,4,0,7, + 0,12,0,24,0,0,0,227,192,113,128,49,0,59,0,26, + 0,14,0,12,0,12,0,12,0,12,0,30,0,8,11,11, + 10,1,0,240,96,126,99,99,99,99,98,124,96,240,9,13, + 26,11,1,0,14,0,49,128,33,128,97,128,97,0,102,0, + 104,0,100,0,103,0,97,128,104,128,104,128,239,0,8,13, + 13,9,1,0,96,48,16,8,0,60,102,198,30,102,198,207, + 118,8,13,13,9,1,0,12,28,24,48,0,60,102,198,30, + 102,198,207,118,8,13,13,9,1,0,16,56,108,198,0,60, + 102,198,30,102,198,207,118,8,12,12,9,1,0,114,252,0, + 0,60,102,198,30,102,198,207,118,8,12,12,9,1,0,194, + 198,134,0,60,102,198,30,102,198,207,118,8,13,13,9,1, + 0,24,40,40,48,0,60,102,198,30,102,198,207,118,11,8, + 16,13,1,0,61,192,102,32,196,32,63,224,68,0,198,32, + 255,192,115,128,7,12,12,8,1,252,62,70,196,192,192,192, + 102,56,16,8,24,48,7,13,13,9,1,0,96,48,24,8, + 0,60,70,198,254,192,192,98,60,7,13,13,9,1,0,12, + 14,24,48,0,60,70,198,254,192,192,98,60,7,13,13,9, + 1,0,24,56,108,66,0,60,70,198,254,192,192,98,60,7, + 12,12,9,1,0,66,198,194,0,60,70,198,254,192,192,98, + 60,5,13,13,5,0,0,224,96,48,16,0,48,112,48,48, + 48,48,48,120,5,13,13,5,1,0,48,56,96,64,128,96, + 224,96,96,96,96,96,240,6,13,13,5,0,0,48,112,216, + 132,0,48,112,48,48,48,48,48,120,7,12,12,5,255,0, + 66,194,194,0,24,56,24,24,24,24,24,60,7,13,13,9, + 1,0,112,62,56,108,4,62,78,198,198,198,196,76,56,9, + 12,24,10,1,0,57,0,126,0,0,0,0,0,110,0,255, + 0,115,0,99,0,99,0,99,0,99,0,247,128,7,13,13, + 9,1,0,112,48,24,8,0,56,68,198,198,198,198,68,56, + 7,13,13,9,1,0,14,12,24,16,0,56,68,198,198,198, + 198,68,56,7,13,13,9,1,0,24,60,44,66,0,56,68, + 198,198,198,198,68,56,7,12,12,9,1,0,50,124,128,0, + 56,68,198,198,198,198,68,56,7,12,12,9,1,0,66,194, + 66,0,56,68,198,198,198,198,68,56,7,6,6,8,0,2, + 16,16,0,126,144,16,7,9,9,9,1,0,2,58,68,206, + 214,230,230,68,248,10,13,26,10,0,0,24,0,56,0,12, + 0,4,0,0,0,227,128,97,128,97,128,97,128,97,128,97, + 128,127,192,57,128,10,13,26,10,0,0,7,0,6,0,12, + 0,8,0,0,0,227,128,97,128,97,128,97,128,97,128,97, + 128,127,192,57,128,10,13,26,10,0,0,12,0,30,0,18, + 0,33,0,0,0,227,128,97,128,97,128,97,128,97,128,97, + 128,127,192,57,128,10,12,24,10,0,0,33,0,33,128,33, + 0,0,0,227,128,97,128,97,128,97,128,97,128,97,128,127, + 192,57,128,10,17,34,9,255,252,3,0,3,128,6,0,4, + 0,8,0,121,192,48,128,25,128,25,0,15,0,14,0,14, + 0,6,0,4,0,12,0,120,0,240,0,8,18,18,10,1, + 252,96,224,96,96,96,96,110,127,97,97,97,97,98,124,96, + 96,96,240,10,16,32,9,255,252,16,128,48,128,48,128,0, + 0,121,192,48,128,25,128,25,0,15,0,14,0,14,0,6, + 0,4,0,12,0,120,0,240,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--18-180-72-72-P-89-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 11 + Calculated Max Values w= 8 h=17 x= 1 y= 6 dx=10 dy= 0 ascent=14 len=17 + Font Bounding box w=27 h=26 x=-9 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb11n[263] U8G_SECTION(".progmem.u8g_font_gdb11n") = { + 0,27,26,247,250,11,0,0,0,0,42,57,0,14,253,11, + 0,6,8,8,8,1,6,48,176,252,120,120,252,52,48,7, + 6,6,8,0,2,16,16,16,254,16,16,3,5,5,5,1, + 253,96,224,96,64,192,6,1,1,6,0,4,252,3,3,3, + 5,1,255,224,224,192,8,17,17,9,0,253,3,3,2,6, + 6,4,12,12,24,24,16,48,48,32,96,64,192,7,11,11, + 9,1,0,56,76,70,198,198,198,198,198,196,100,56,7,11, + 11,9,1,0,24,248,24,24,24,24,24,24,24,24,126,7, + 11,11,9,1,0,60,102,102,6,4,8,16,34,66,126,254, + 7,11,11,8,0,0,60,102,102,6,8,28,6,6,6,140, + 120,7,11,11,8,0,0,4,12,12,20,52,36,68,126,132, + 4,30,7,11,11,9,1,0,126,124,64,64,124,134,6,6, + 6,134,124,7,11,11,9,1,0,12,48,96,64,252,198,198, + 198,198,100,56,7,11,11,9,1,0,254,254,134,4,4,8, + 8,24,48,48,96,8,11,11,10,1,0,60,102,102,102,124, + 62,71,195,195,195,60,7,11,11,9,1,0,56,68,198,198, + 198,198,126,4,12,24,224}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--18-180-72-72-P-89-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=15 h=19 x= 2 y= 9 dx=16 dy= 0 ascent=15 len=32 + Font Bounding box w=27 h=26 x=-9 y=-6 + Calculated Min Values x=-3 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =15 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb11r[2001] U8G_SECTION(".progmem.u8g_font_gdb11r") = { + 0,27,26,247,250,11,2,67,5,71,32,127,252,15,252,14, + 252,0,0,0,4,0,0,3,14,14,6,1,255,96,224,96, + 96,96,96,96,64,64,64,0,224,224,192,6,6,6,8,1, + 7,108,236,204,76,76,76,8,10,10,9,1,1,26,18,22, + 127,36,36,254,72,72,216,7,14,14,9,1,254,16,16,126, + 150,144,240,120,30,18,146,210,252,16,16,11,11,22,13,1, + 0,112,64,144,128,137,128,139,0,146,0,85,192,42,32,26, + 32,50,32,34,32,65,192,11,13,26,12,1,0,28,0,102, + 0,70,0,70,0,124,0,120,0,113,224,248,128,252,128,222, + 128,207,0,195,128,125,224,3,6,6,5,1,7,96,224,192, + 64,64,64,4,17,17,6,1,253,16,32,96,64,64,192,192, + 192,192,192,192,192,192,64,96,32,16,4,17,17,6,1,253, + 128,64,96,32,48,48,48,48,48,48,48,48,32,32,96,64, + 128,6,8,8,8,1,6,48,176,252,120,120,252,52,48,7, + 6,6,8,0,2,16,16,16,254,16,16,3,5,5,5,1, + 253,96,224,96,64,192,6,1,1,6,0,4,252,3,3,3, + 5,1,255,224,224,192,8,17,17,9,0,253,3,3,2,6, + 6,4,12,12,24,24,16,48,48,32,96,64,192,7,11,11, + 9,1,0,56,76,70,198,198,198,198,198,196,100,56,7,11, + 11,9,1,0,24,248,24,24,24,24,24,24,24,24,126,7, + 11,11,9,1,0,60,102,102,6,4,8,16,34,66,126,254, + 7,11,11,8,0,0,60,102,102,6,8,28,6,6,6,140, + 120,7,11,11,8,0,0,4,12,12,20,52,36,68,126,132, + 4,30,7,11,11,9,1,0,126,124,64,64,124,134,6,6, + 6,134,124,7,11,11,9,1,0,12,48,96,64,252,198,198, + 198,198,100,56,7,11,11,9,1,0,254,254,134,4,4,8, + 8,24,48,48,96,8,11,11,10,1,0,60,102,102,102,124, + 62,71,195,195,195,60,7,11,11,9,1,0,56,68,198,198, + 198,198,126,4,12,24,224,3,9,9,5,1,255,224,224,192, + 0,0,0,224,224,192,3,11,11,5,1,253,224,224,192,0, + 0,0,96,224,96,64,192,8,6,6,8,0,2,3,30,112, + 240,30,7,8,4,4,8,0,3,127,128,0,255,8,6,6, + 8,0,2,96,188,15,14,120,192,7,14,14,8,1,255,60, + 198,198,134,12,8,16,32,32,32,0,56,56,56,14,16,32, + 16,1,252,7,192,31,240,48,56,64,8,71,68,136,196,152, + 196,152,196,152,196,152,200,159,248,206,224,192,32,112,112,63, + 192,31,128,11,11,22,11,0,0,6,0,14,0,14,0,11, + 0,19,0,19,0,63,128,33,128,33,192,96,192,241,224,9, + 11,22,11,1,0,254,0,99,0,99,0,99,0,126,0,99, + 128,97,128,97,128,97,128,97,128,254,0,8,11,11,10,1, + 0,31,99,64,192,192,192,192,192,192,97,62,9,11,22,11, + 1,0,254,0,99,0,97,0,97,128,97,128,97,128,97,128, + 97,128,97,0,99,0,252,0,9,11,22,9,0,0,255,0, + 49,0,49,0,48,0,48,0,63,0,48,0,48,0,48,128, + 48,128,255,128,9,11,22,9,0,0,255,128,49,0,49,0, + 48,0,48,0,62,0,48,0,48,0,48,0,48,0,248,0, + 11,11,22,11,0,0,15,192,49,192,64,0,192,0,192,0, + 192,0,193,224,192,192,64,192,112,192,31,128,10,11,22,12, + 1,0,243,192,97,128,97,128,97,128,97,128,127,128,97,128, + 97,128,97,128,97,128,243,192,4,11,11,6,1,0,240,96, + 96,96,96,96,96,96,96,96,240,7,14,14,6,254,253,62, + 12,12,12,12,12,12,12,12,12,12,8,136,240,10,11,22, + 11,1,0,243,192,99,0,102,0,108,0,104,0,120,0,108, + 0,102,0,103,0,99,128,241,192,8,11,11,9,1,0,240, + 96,96,96,96,96,96,96,97,97,255,15,11,22,15,0,0, + 112,28,56,56,56,56,56,120,44,88,44,88,38,216,38,152, + 35,152,35,24,243,62,10,11,22,12,1,0,225,192,96,128, + 112,128,120,128,92,128,76,128,70,128,71,128,67,128,65,128, + 225,128,10,11,22,11,0,0,30,0,33,128,64,128,192,192, + 192,192,192,192,192,192,192,192,64,128,97,0,30,0,8,11, + 11,10,1,0,254,99,99,99,98,124,96,96,96,96,240,12, + 14,28,11,0,253,30,0,33,128,64,128,192,192,192,192,192, + 192,192,192,192,192,64,128,97,0,30,0,3,144,1,240,0, + 96,10,11,22,11,1,0,254,0,99,0,99,0,99,0,98, + 0,124,0,100,0,102,0,99,0,99,128,241,192,7,11,11, + 9,1,0,62,198,128,192,112,60,6,2,130,196,248,10,11, + 22,10,0,0,255,192,140,64,140,64,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,30,0,10,11,22,12,1,0, + 241,192,96,128,96,128,96,128,96,128,96,128,96,128,96,128, + 96,128,49,0,30,0,12,11,22,12,0,0,248,240,112,64, + 48,64,48,128,24,128,25,128,29,0,13,0,15,0,6,0, + 6,0,15,11,22,15,0,0,241,30,97,132,49,140,51,200, + 50,200,50,200,28,120,28,112,28,48,24,48,8,48,11,11, + 22,11,0,0,249,224,48,128,57,128,31,0,14,0,6,0, + 15,0,27,0,49,128,33,192,243,224,10,11,22,11,1,0, + 227,192,113,128,49,0,59,0,26,0,14,0,12,0,12,0, + 12,0,12,0,30,0,9,11,22,10,0,0,127,128,67,0, + 71,0,6,0,14,0,12,0,24,0,56,0,48,128,112,128, + 255,128,4,17,17,6,1,253,240,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,240,8,17,17,8,0,253,192, + 64,96,32,48,48,16,24,24,8,12,4,6,6,2,3,3, + 4,17,17,6,1,253,240,16,16,16,16,16,16,16,16,16, + 16,16,16,16,16,16,240,7,9,9,9,1,5,16,48,56, + 40,76,76,68,134,130,8,1,1,9,0,254,255,4,4,4, + 6,0,9,192,96,32,16,8,8,8,9,1,0,60,102,198, + 30,102,198,207,118,9,14,28,10,0,0,96,0,224,0,96, + 0,96,0,96,0,96,0,103,0,127,128,112,128,96,128,96, + 128,97,0,97,0,62,0,7,8,8,8,1,0,62,70,196, + 192,192,192,66,124,9,14,28,10,1,0,3,0,7,0,3, + 0,3,0,3,0,3,0,63,0,67,0,195,0,195,0,195, + 0,195,0,127,128,59,0,7,8,8,9,1,0,60,70,198, + 254,192,192,98,60,7,13,13,6,1,0,30,36,96,96,96, + 252,96,96,96,96,96,96,248,10,12,24,10,0,252,62,192, + 193,0,129,0,193,0,62,0,112,0,254,0,255,128,227,128, + 192,128,193,0,62,0,9,14,28,10,1,0,96,0,224,0, + 96,0,96,0,96,0,96,0,102,0,127,0,115,0,99,0, + 99,0,99,0,99,0,247,128,4,12,12,6,1,0,48,112, + 0,0,96,224,96,96,96,96,96,240,7,16,16,5,253,252, + 14,14,0,0,28,12,12,12,12,12,12,12,12,140,248,224, + 9,14,28,10,1,0,96,0,224,0,96,0,96,0,96,0, + 96,0,103,128,102,0,108,0,120,0,108,0,102,0,103,0, + 243,128,4,14,14,5,1,0,96,224,96,96,96,96,96,96, + 96,96,96,96,96,240,14,8,16,15,1,0,110,112,255,248, + 99,24,99,24,99,24,99,24,99,24,247,188,9,8,16,10, + 1,0,110,0,255,0,115,0,99,0,99,0,99,0,99,0, + 247,128,7,8,8,9,1,0,56,68,198,198,198,198,68,56, + 8,12,12,10,1,252,110,255,97,97,97,97,98,124,96,96, + 96,240,9,12,24,10,1,252,61,0,67,0,195,0,195,0, + 195,0,195,0,127,0,59,0,3,0,3,0,3,0,7,128, + 8,8,8,8,0,0,119,255,50,50,48,48,48,248,6,8, + 8,8,1,0,240,152,144,240,60,132,196,248,6,11,11,7, + 0,0,32,96,96,252,96,96,96,96,100,124,48,10,8,16, + 10,0,0,227,128,97,128,97,128,97,128,97,128,97,128,127, + 192,57,128,9,8,16,9,0,0,243,128,97,0,51,0,50, + 0,30,0,28,0,28,0,8,0,13,8,16,13,0,0,242, + 56,99,16,51,32,53,160,53,160,24,224,24,192,24,192,9, + 8,16,9,0,0,251,128,115,0,62,0,28,0,28,0,22, + 0,35,0,247,128,10,12,24,9,255,252,121,192,48,128,25, + 128,25,0,15,0,14,0,14,0,6,0,4,0,12,0,120, + 0,240,0,7,8,8,8,1,0,254,140,152,56,48,98,226, + 254,6,17,17,5,0,253,8,28,48,48,48,48,48,48,224, + 48,48,48,48,48,48,24,8,1,19,19,4,2,252,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,6,17,17,5,255,253,64,96,48,48,48,48,48,48,28, + 48,48,48,48,48,48,96,192,8,2,2,9,0,4,57,206, + 255}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--19-190-72-72-P-94-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=16 h=20 x= 2 y=11 dx=16 dy= 0 ascent=17 len=36 + Font Bounding box w=29 h=28 x=-10 y=-7 + Calculated Min Values x=-3 y=-5 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =15 descent=-4 + Max Font ascent =17 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb12[4626] U8G_SECTION(".progmem.u8g_font_gdb12") = { + 0,29,28,246,249,12,2,113,5,210,32,255,252,17,251,15, + 252,0,0,0,5,0,0,3,14,14,6,1,0,32,96,96, + 96,96,96,96,96,96,96,0,224,224,192,7,6,6,9,1, + 8,102,236,108,76,68,68,9,11,22,10,1,1,27,0,26, + 0,18,0,127,128,54,0,36,0,36,0,255,0,104,0,72, + 0,88,0,8,15,15,9,0,254,8,8,63,75,74,104,60, + 30,11,137,73,235,126,8,8,12,12,24,14,1,0,112,32, + 144,64,136,128,137,128,139,0,146,0,100,224,13,16,25,16, + 17,16,33,16,96,224,12,13,26,13,1,0,30,0,35,0, + 99,0,99,0,118,0,124,0,120,240,252,64,222,64,207,64, + 199,128,193,192,62,240,3,6,6,5,1,8,96,224,96,64, + 64,64,4,18,18,6,1,253,16,48,96,96,64,192,192,192, + 192,192,192,192,192,192,96,96,48,16,4,18,18,6,1,253, + 128,192,96,96,48,48,48,48,48,48,48,48,48,32,96,96, + 192,128,7,7,7,8,1,7,48,180,222,48,222,148,48,7, + 7,7,8,1,2,16,16,16,254,16,16,16,3,6,6,5, + 1,252,96,224,96,96,64,128,6,1,1,7,0,4,252,3, + 3,3,5,1,0,224,224,192,9,18,36,9,0,253,1,128, + 3,0,3,0,3,0,6,0,6,0,4,0,12,0,12,0, + 24,0,24,0,16,0,48,0,48,0,32,0,96,0,96,0, + 192,0,8,11,11,10,1,0,60,102,66,195,195,195,195,195, + 66,98,60,7,12,12,10,1,0,8,120,152,24,24,24,24, + 24,24,24,24,254,7,11,11,9,1,0,60,102,230,6,4, + 8,16,34,66,126,254,7,11,11,9,1,0,60,102,230,6, + 8,28,6,6,6,140,120,8,12,12,9,0,0,6,14,14, + 22,22,38,102,70,255,6,6,31,7,11,11,10,1,0,126, + 124,64,64,124,134,6,6,6,134,124,8,12,12,10,1,0, + 14,56,112,96,192,254,195,195,195,195,98,60,8,11,11,10, + 1,0,255,254,130,6,4,12,8,24,24,48,96,8,11,11, + 10,1,0,60,102,102,102,124,62,71,195,195,195,60,8,11, + 11,10,1,0,60,70,195,195,195,195,63,2,6,12,112,3, + 9,9,5,1,0,224,224,192,0,0,0,224,224,192,3,13, + 13,5,1,252,224,224,64,0,0,0,0,96,224,96,96,64, + 128,8,7,7,9,0,2,1,15,60,96,248,31,3,8,4, + 4,9,0,3,127,128,0,255,8,7,7,9,0,2,96,248, + 15,7,30,120,192,7,14,14,9,1,0,60,70,198,134,6, + 12,8,16,16,16,0,56,56,56,14,17,34,16,1,252,7, + 192,31,240,56,56,32,8,99,164,68,100,204,100,204,100,204, + 100,204,100,204,104,199,248,103,112,112,8,56,24,31,240,15, + 192,12,12,24,12,0,0,6,0,14,0,15,0,11,0,27, + 0,19,128,17,128,63,128,33,192,32,192,96,224,241,240,9, + 12,24,11,1,0,254,0,99,0,99,0,99,0,98,0,126, + 0,99,128,97,128,97,128,97,128,97,128,254,0,9,12,24, + 11,1,0,31,0,99,128,65,0,192,0,192,0,192,0,192, + 0,192,0,192,0,97,128,127,0,60,0,10,12,24,12,1, + 0,254,0,99,128,97,128,96,192,96,192,96,192,96,192,96, + 192,96,192,97,128,99,0,254,0,10,12,24,10,0,0,255, + 128,48,128,48,128,48,0,48,0,63,0,50,0,48,0,48, + 0,48,64,48,128,255,128,9,12,24,10,0,0,255,128,48, + 128,48,128,48,0,48,0,63,0,50,0,48,0,48,0,48, + 0,48,0,252,0,10,12,24,11,1,0,31,128,33,128,65, + 0,64,0,192,0,192,0,192,0,195,192,193,128,65,128,97, + 128,31,0,11,12,24,13,1,0,241,224,96,192,96,192,96, + 192,96,192,127,192,96,192,96,192,96,192,96,192,96,192,241, + 224,4,12,12,6,1,0,240,96,96,96,96,96,96,96,96, + 96,96,240,8,16,16,6,253,252,31,6,6,6,6,6,6, + 6,6,6,6,6,6,68,124,240,11,12,24,12,1,0,243, + 192,99,0,99,0,102,0,108,0,120,0,124,0,110,0,103, + 0,99,0,97,128,241,224,8,12,12,10,1,0,240,96,96, + 96,96,96,96,96,96,97,97,255,15,12,24,16,0,0,112, + 30,56,28,56,28,60,60,44,44,44,108,38,76,38,204,35, + 140,35,140,35,140,241,30,11,12,24,13,1,0,224,224,112, + 64,112,64,120,64,92,64,78,64,78,64,71,64,67,192,65, + 192,65,192,224,192,10,12,24,12,1,0,30,0,33,128,65, + 128,64,192,192,192,192,192,192,192,192,192,192,128,96,128,97, + 0,30,0,9,12,24,11,1,0,254,0,99,0,97,128,97, + 128,97,128,97,0,126,0,96,0,96,0,96,0,96,0,248, + 0,12,15,30,12,1,253,30,0,33,128,65,128,64,192,192, + 192,192,192,192,192,192,192,192,192,96,128,33,0,30,0,3, + 144,1,240,0,96,11,12,24,12,1,0,254,0,99,128,97, + 128,97,128,97,128,127,0,126,0,102,0,99,0,99,128,97, + 192,241,224,8,12,12,10,1,0,62,198,128,128,240,124,30, + 7,3,131,194,252,10,12,24,11,0,0,255,192,140,64,140, + 64,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,30,0,11,12,24,13,1,0,240,224,96,64,96,64,96, + 64,96,64,96,64,96,64,96,64,96,64,96,128,48,128,31, + 0,12,12,24,13,0,0,248,240,112,96,48,64,56,64,24, + 192,24,128,28,128,13,128,15,0,7,0,7,0,6,0,16, + 12,24,16,0,0,248,143,49,134,49,196,49,196,51,196,58, + 108,26,108,30,120,28,56,28,56,12,24,8,16,12,12,24, + 12,0,0,249,224,48,192,56,128,29,0,15,0,14,0,15, + 0,11,0,27,128,49,192,32,224,241,240,11,12,24,12,0, + 0,241,224,48,192,24,128,29,128,13,0,15,0,6,0,6, + 0,6,0,6,0,6,0,15,0,10,12,24,10,0,0,127, + 192,67,128,67,0,7,0,6,0,14,0,28,0,24,0,56, + 0,48,64,112,192,255,192,5,18,18,6,1,253,248,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,248,9, + 18,36,9,0,253,192,0,96,0,96,0,32,0,48,0,48, + 0,16,0,24,0,24,0,12,0,12,0,4,0,6,0,6, + 0,2,0,3,0,3,0,1,128,5,18,18,6,0,253,248, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 248,7,9,9,9,1,5,16,24,40,44,44,68,70,130,130, + 9,1,2,9,0,254,255,128,4,4,4,6,0,10,192,96, + 48,16,8,9,9,9,1,0,60,102,198,14,126,198,198,207, + 118,9,14,28,10,0,0,96,0,224,0,96,0,96,0,96, + 0,103,0,127,0,112,128,96,128,96,128,96,128,97,0,126, + 0,60,0,7,9,9,9,1,0,62,70,196,192,192,192,194, + 124,56,9,14,28,11,1,0,7,0,3,0,3,0,3,0, + 3,0,63,0,67,0,195,0,195,0,195,0,195,0,227,0, + 127,128,59,0,7,9,9,9,1,0,60,100,198,198,254,192, + 226,124,56,7,14,14,6,1,0,30,38,96,96,96,252,96, + 96,96,96,96,96,96,248,10,13,26,10,0,252,60,192,67, + 0,195,0,195,0,226,0,60,0,112,0,124,0,127,128,195, + 128,193,128,193,0,62,0,9,14,28,10,1,0,96,0,224, + 0,96,0,96,0,96,0,102,0,127,0,115,0,99,0,99, + 0,99,0,99,0,99,0,247,128,4,12,12,6,1,0,48, + 112,0,96,224,96,96,96,96,96,96,240,7,16,16,5,253, + 252,14,14,0,12,28,12,12,12,12,12,12,12,12,136,248, + 224,10,14,28,10,1,0,96,0,224,0,96,0,96,0,96, + 0,103,128,99,0,100,0,104,0,124,0,110,0,102,0,99, + 0,243,192,5,14,14,6,0,0,48,240,48,48,48,48,48, + 48,48,48,48,48,48,248,14,9,18,16,1,0,110,112,255, + 248,115,152,99,24,99,24,99,24,99,24,99,24,247,188,9, + 9,18,10,1,0,102,0,255,0,115,0,99,0,99,0,99, + 0,99,0,99,0,247,128,8,9,9,10,1,0,60,70,195, + 195,195,195,194,98,60,9,13,26,11,1,252,103,0,255,0, + 97,128,97,128,97,128,97,128,97,0,127,0,110,0,96,0, + 96,0,96,0,248,0,9,13,26,10,1,252,29,0,103,0, + 195,0,195,0,195,0,195,0,199,0,127,0,59,0,3,0, + 3,0,3,0,15,128,8,9,9,8,0,0,55,255,57,49, + 48,48,48,48,252,6,9,9,8,1,0,240,152,144,224,120, + 28,132,196,248,6,12,12,7,1,0,32,96,96,252,96,96, + 96,96,96,100,124,48,10,9,18,11,0,0,227,128,97,128, + 97,128,97,128,97,128,97,128,99,128,127,192,57,128,10,9, + 18,10,0,0,241,192,97,128,49,0,51,0,58,0,26,0, + 30,0,12,0,8,0,14,9,18,14,0,0,241,60,99,24, + 51,144,51,144,53,176,60,224,28,224,24,96,24,64,10,9, + 18,10,0,0,251,192,113,0,58,0,28,0,12,0,30,0, + 55,0,35,128,247,192,11,13,26,10,255,252,121,224,56,128, + 24,128,25,128,13,0,13,0,14,0,6,0,6,0,4,0, + 12,0,120,0,240,0,7,9,9,9,1,0,254,142,156,24, + 56,48,98,226,254,5,18,18,6,1,253,24,48,96,96,96, + 48,48,48,96,224,48,48,48,96,96,96,48,24,1,20,20, + 4,2,252,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,6,18,18,6,0,253,64,224,48, + 48,48,48,48,48,28,24,48,48,48,48,48,48,96,192,9, + 4,8,9,0,4,48,0,125,128,79,0,134,0,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0, + 0,5,0,0,3,14,14,6,1,251,96,224,64,0,96,96, + 96,96,96,96,96,96,96,64,7,12,12,10,2,0,16,16, + 62,86,144,144,144,144,86,124,16,16,9,11,22,10,0,0, + 15,128,49,128,49,0,112,0,112,0,254,0,112,0,112,0, + 96,128,123,128,255,0,8,7,7,10,1,2,255,66,66,66, + 66,102,255,10,11,22,10,0,0,227,192,113,0,51,0,26, + 0,26,0,12,0,127,128,12,0,12,0,12,0,30,0,1, + 20,20,4,2,252,128,128,128,128,128,128,128,128,128,0,0, + 128,128,128,128,128,128,128,128,128,8,13,13,10,1,0,120, + 152,136,240,190,135,193,113,62,14,34,50,62,6,3,3,7, + 0,10,236,252,220,12,13,26,14,1,0,15,0,48,192,64, + 32,143,32,145,16,145,16,144,16,144,16,144,16,136,160,79, + 32,32,64,31,128,5,7,7,5,0,5,112,208,112,144,248, + 0,240,8,9,9,10,1,0,17,34,102,204,220,204,102,34, + 17,8,4,4,10,1,2,255,1,1,1,6,1,1,7,0, + 4,252,7,7,7,7,0,7,56,68,186,170,178,108,56,8, + 2,2,9,1,11,255,254,5,5,5,7,1,7,112,136,136, + 136,112,8,9,9,8,0,1,8,8,8,127,8,8,8,0, + 255,4,7,7,7,2,6,112,208,16,32,64,144,240,5,7, + 7,6,0,6,56,104,8,24,8,136,112,4,4,4,6,2, + 10,48,96,192,128,10,13,26,11,1,252,99,0,227,0,99, + 0,99,0,99,0,99,0,103,0,127,128,91,64,64,0,64, + 0,96,0,112,0,9,14,28,11,1,254,63,128,101,0,197, + 0,197,0,197,0,101,0,61,0,5,0,5,0,5,0,5, + 0,5,0,5,0,15,128,3,3,3,4,0,5,224,224,192, + 3,4,4,4,1,252,64,96,96,192,5,7,7,7,1,6, + 32,224,32,32,32,32,248,4,7,7,5,0,5,96,144,144, + 144,96,0,240,8,9,9,10,1,0,136,76,102,55,51,55, + 102,76,136,11,11,22,12,1,0,64,64,192,128,65,0,67, + 0,70,0,228,0,8,192,25,64,50,64,35,224,192,224,10, + 11,22,12,1,0,64,64,192,128,65,0,65,0,66,0,228, + 192,9,64,26,128,16,128,33,64,99,192,11,11,22,11,0, + 0,96,32,208,64,32,128,145,128,227,0,2,0,4,192,13, + 64,25,64,19,224,96,224,7,14,14,9,1,251,56,56,48, + 0,16,16,16,32,96,192,194,198,196,120,12,16,32,12,0, + 0,24,0,28,0,3,0,0,0,6,0,14,0,15,0,11, + 0,27,0,19,128,17,128,63,128,33,192,32,192,96,224,241, + 240,12,16,32,12,0,0,1,0,7,128,12,0,0,0,6, + 0,14,0,15,0,11,0,27,0,19,128,17,128,63,128,33, + 192,32,192,96,224,241,240,12,16,32,12,0,0,6,0,15, + 0,16,128,0,0,6,0,14,0,15,0,11,0,27,0,19, + 128,17,128,63,128,33,192,32,192,96,224,241,240,12,16,32, + 12,0,0,12,192,31,128,35,0,0,0,6,0,14,0,15, + 0,11,0,27,0,19,128,17,128,63,128,33,192,32,192,96, + 224,241,240,12,16,32,12,0,0,27,0,27,128,27,0,0, + 0,6,0,14,0,15,0,11,0,27,0,19,128,17,128,63, + 128,33,192,32,192,96,224,241,240,12,17,34,12,0,0,6, + 0,9,0,17,0,14,0,0,0,6,0,14,0,15,0,11, + 0,27,0,19,128,17,128,63,128,33,192,32,192,96,224,241, + 240,15,12,24,15,0,0,31,252,5,132,5,132,13,128,9, + 128,31,248,17,144,17,128,49,128,33,130,97,132,243,252,9, + 16,32,11,1,252,31,0,99,128,65,0,192,0,192,0,192, + 0,192,0,192,0,192,0,96,128,59,128,30,0,8,0,6, + 0,14,0,28,0,10,16,32,10,0,0,48,0,56,0,6, + 0,0,0,255,128,48,128,48,128,48,0,48,0,63,0,50, + 0,48,0,48,0,48,64,48,128,255,128,10,16,32,10,0, + 0,3,0,7,0,24,0,0,0,255,128,48,128,48,128,48, + 0,48,0,63,0,50,0,48,0,48,0,48,64,48,128,255, + 128,10,16,32,10,0,0,12,0,30,0,33,0,0,0,255, + 128,48,128,48,128,48,0,48,0,63,0,50,0,48,0,48, + 0,48,64,48,128,255,128,10,16,32,10,0,0,51,0,63, + 0,54,0,0,0,255,128,48,128,48,128,48,0,48,0,63, + 0,50,0,48,0,48,0,48,64,48,128,255,128,5,16,16, + 6,0,0,192,224,24,0,120,48,48,48,48,48,48,48,48, + 48,48,120,5,16,16,6,1,0,24,56,192,0,240,96,96, + 96,96,96,96,96,96,96,96,240,6,16,16,6,0,0,48, + 120,132,0,120,48,48,48,48,48,48,48,48,48,48,120,6, + 16,16,6,0,0,204,252,216,0,120,48,48,48,48,48,48, + 48,48,48,48,120,10,12,24,12,1,0,254,0,99,128,97, + 128,96,192,96,192,248,192,96,192,96,192,96,192,97,128,99, + 0,254,0,11,16,32,13,1,0,28,128,63,0,39,0,0, + 0,224,224,112,64,112,64,120,64,92,64,78,64,78,64,71, + 64,67,192,65,192,65,192,224,192,10,16,32,12,1,0,48, + 0,56,0,6,0,0,0,30,0,33,128,65,128,64,192,192, + 192,192,192,192,192,192,192,192,128,96,128,97,0,30,0,10, + 16,32,12,1,0,2,0,15,0,24,0,0,0,30,0,33, + 128,65,128,64,192,192,192,192,192,192,192,192,192,192,128,96, + 128,97,0,30,0,10,16,32,12,1,0,12,0,30,0,33, + 0,0,0,30,0,33,128,65,128,64,192,192,192,192,192,192, + 192,192,192,192,128,96,128,97,0,30,0,10,16,32,12,1, + 0,25,128,63,0,70,0,0,0,30,0,33,128,65,128,64, + 192,192,192,192,192,192,192,192,192,192,128,96,128,97,0,30, + 0,10,16,32,12,1,0,55,0,55,0,54,0,0,0,30, + 0,33,128,65,128,64,192,192,192,192,192,192,192,192,192,192, + 128,96,128,97,0,30,0,6,6,6,8,1,2,132,72,48, + 48,72,132,10,12,24,12,1,0,30,192,33,128,97,128,67, + 192,198,192,196,192,200,192,216,192,240,128,97,128,97,0,222, + 0,11,16,32,13,1,0,16,0,60,0,6,0,0,0,240, + 224,96,64,96,64,96,64,96,64,96,64,96,64,96,64,96, + 64,96,128,48,128,31,0,11,16,32,13,1,0,3,0,7, + 128,12,0,0,0,240,224,96,64,96,64,96,64,96,64,96, + 64,96,64,96,64,96,64,96,128,48,128,31,0,11,16,32, + 13,1,0,12,0,30,0,49,0,0,128,240,224,96,64,96, + 64,96,64,96,64,96,64,96,64,96,64,96,64,96,128,48, + 128,31,0,11,16,32,13,1,0,27,0,63,0,51,0,0, + 0,240,224,96,64,96,64,96,64,96,64,96,64,96,64,96, + 64,96,64,96,128,48,128,31,0,11,16,32,12,0,0,1, + 0,7,128,12,0,0,0,241,224,48,192,24,128,29,128,13, + 0,15,0,6,0,6,0,6,0,6,0,6,0,15,0,9, + 12,24,11,1,0,248,0,96,0,126,0,99,0,97,128,97, + 128,97,128,97,128,113,0,110,0,96,0,248,0,9,14,28, + 12,1,0,14,0,51,0,33,128,97,128,97,128,103,0,108, + 0,108,0,102,0,99,0,97,128,104,128,104,128,239,0,8, + 14,14,9,1,0,112,48,24,8,0,60,102,198,14,126,198, + 198,207,118,8,14,14,9,1,0,14,12,24,48,0,60,102, + 198,14,126,198,198,207,118,8,14,14,9,1,0,24,60,108, + 66,0,60,102,198,14,126,198,198,207,118,8,13,13,9,1, + 0,114,126,140,0,60,102,198,14,126,198,198,207,118,8,13, + 13,9,1,0,108,110,108,0,60,102,198,14,126,198,198,207, + 118,8,14,14,9,1,0,56,68,72,56,0,60,102,198,14, + 126,198,198,207,118,12,9,18,14,1,0,29,192,111,32,198, + 48,166,48,63,240,70,0,199,16,251,224,113,192,8,13,13, + 9,1,252,62,70,196,192,192,192,194,127,60,16,12,28,48, + 7,14,14,9,1,0,112,48,24,8,0,60,100,198,198,254, + 192,226,124,56,7,14,14,9,1,0,14,12,24,16,0,60, + 100,198,198,254,192,226,124,56,7,14,14,9,1,0,24,60, + 100,66,0,60,100,198,198,254,192,226,124,56,7,13,13,9, + 1,0,110,126,108,0,60,100,198,198,254,192,226,124,56,5, + 14,14,6,0,0,224,96,48,16,0,48,112,48,48,48,48, + 48,48,120,5,14,14,6,1,0,56,48,96,64,0,96,224, + 96,96,96,96,96,96,240,6,14,14,6,0,0,48,120,200, + 132,0,48,112,48,48,48,48,48,48,120,6,13,13,6,0, + 0,220,220,216,0,48,112,48,48,48,48,48,48,120,8,14, + 14,10,1,0,48,255,28,102,6,63,71,195,195,195,195,194, + 102,60,9,13,26,11,1,0,57,0,63,0,78,0,0,0, + 102,0,255,0,115,0,99,0,99,0,99,0,99,0,99,0, + 247,128,8,14,14,10,1,0,48,112,24,12,0,60,70,195, + 195,195,195,194,98,60,8,14,14,10,1,0,6,12,24,16, + 0,60,70,195,195,195,195,194,98,60,8,14,14,10,1,0, + 24,60,38,66,0,60,70,195,195,195,195,194,98,60,8,13, + 13,10,1,0,57,126,76,0,60,70,195,195,195,195,194,98, + 60,8,13,13,10,1,0,118,126,108,0,60,70,195,195,195, + 195,194,98,60,8,7,7,8,0,2,8,8,0,127,128,8, + 8,8,9,9,10,1,0,63,102,71,203,219,211,226,102,252, + 10,14,28,11,0,0,24,0,60,0,12,0,6,0,0,0, + 227,128,97,128,97,128,97,128,97,128,97,128,99,128,127,192, + 57,128,10,14,28,11,0,0,3,0,7,0,4,0,8,0, + 0,0,227,128,97,128,97,128,97,128,97,128,97,128,99,128, + 127,192,57,128,10,14,28,11,0,0,12,0,14,0,27,0, + 33,0,0,0,227,128,97,128,97,128,97,128,97,128,97,128, + 99,128,127,192,57,128,10,13,26,11,0,0,27,0,63,0, + 51,0,0,0,227,128,97,128,97,128,97,128,97,128,97,128, + 99,128,127,192,57,128,11,18,36,10,255,252,3,128,3,0, + 6,0,4,0,0,0,121,224,56,128,24,128,25,128,13,0, + 13,0,14,0,6,0,6,0,4,0,12,0,120,0,240,0, + 9,18,36,11,1,252,96,0,224,0,96,0,96,0,96,0, + 103,0,111,0,113,128,97,128,97,128,97,128,97,0,127,0, + 110,0,96,0,96,0,96,0,248,0,11,17,34,10,255,252, + 25,128,31,128,27,0,0,0,121,224,56,128,24,128,25,128, + 13,0,13,0,14,0,6,0,6,0,4,0,12,0,120,0, + 240,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--19-190-72-72-P-94-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 12 + Calculated Max Values w= 9 h=18 x= 1 y= 7 dx=10 dy= 0 ascent=15 len=36 + Font Bounding box w=29 h=28 x=-10 y=-7 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =12 descent= 0 + X Font ascent =12 descent= 0 + Max Font ascent =15 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb12n[286] U8G_SECTION(".progmem.u8g_font_gdb12n") = { + 0,29,28,246,249,12,0,0,0,0,42,57,0,15,252,12, + 0,7,7,7,8,1,7,48,180,222,48,222,148,48,7,7, + 7,8,1,2,16,16,16,254,16,16,16,3,6,6,5,1, + 252,96,224,96,96,64,128,6,1,1,7,0,4,252,3,3, + 3,5,1,0,224,224,192,9,18,36,9,0,253,1,128,3, + 0,3,0,3,0,6,0,6,0,4,0,12,0,12,0,24, + 0,24,0,16,0,48,0,48,0,32,0,96,0,96,0,192, + 0,8,11,11,10,1,0,60,102,66,195,195,195,195,195,66, + 98,60,7,12,12,10,1,0,8,120,152,24,24,24,24,24, + 24,24,24,254,7,11,11,9,1,0,60,102,230,6,4,8, + 16,34,66,126,254,7,11,11,9,1,0,60,102,230,6,8, + 28,6,6,6,140,120,8,12,12,9,0,0,6,14,14,22, + 22,38,102,70,255,6,6,31,7,11,11,10,1,0,126,124, + 64,64,124,134,6,6,6,134,124,8,12,12,10,1,0,14, + 56,112,96,192,254,195,195,195,195,98,60,8,11,11,10,1, + 0,255,254,130,6,4,12,8,24,24,48,96,8,11,11,10, + 1,0,60,102,102,102,124,62,71,195,195,195,60,8,11,11, + 10,1,0,60,70,195,195,195,195,63,2,6,12,112}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--19-190-72-72-P-94-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=16 h=20 x= 2 y=10 dx=16 dy= 0 ascent=16 len=36 + Font Bounding box w=29 h=28 x=-10 y=-7 + Calculated Min Values x=-3 y=-4 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =15 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb12r[2190] U8G_SECTION(".progmem.u8g_font_gdb12r") = { + 0,29,28,246,249,12,2,113,5,210,32,127,252,16,252,15, + 252,0,0,0,5,0,0,3,14,14,6,1,0,32,96,96, + 96,96,96,96,96,96,96,0,224,224,192,7,6,6,9,1, + 8,102,236,108,76,68,68,9,11,22,10,1,1,27,0,26, + 0,18,0,127,128,54,0,36,0,36,0,255,0,104,0,72, + 0,88,0,8,15,15,9,0,254,8,8,63,75,74,104,60, + 30,11,137,73,235,126,8,8,12,12,24,14,1,0,112,32, + 144,64,136,128,137,128,139,0,146,0,100,224,13,16,25,16, + 17,16,33,16,96,224,12,13,26,13,1,0,30,0,35,0, + 99,0,99,0,118,0,124,0,120,240,252,64,222,64,207,64, + 199,128,193,192,62,240,3,6,6,5,1,8,96,224,96,64, + 64,64,4,18,18,6,1,253,16,48,96,96,64,192,192,192, + 192,192,192,192,192,192,96,96,48,16,4,18,18,6,1,253, + 128,192,96,96,48,48,48,48,48,48,48,48,48,32,96,96, + 192,128,7,7,7,8,1,7,48,180,222,48,222,148,48,7, + 7,7,8,1,2,16,16,16,254,16,16,16,3,6,6,5, + 1,252,96,224,96,96,64,128,6,1,1,7,0,4,252,3, + 3,3,5,1,0,224,224,192,9,18,36,9,0,253,1,128, + 3,0,3,0,3,0,6,0,6,0,4,0,12,0,12,0, + 24,0,24,0,16,0,48,0,48,0,32,0,96,0,96,0, + 192,0,8,11,11,10,1,0,60,102,66,195,195,195,195,195, + 66,98,60,7,12,12,10,1,0,8,120,152,24,24,24,24, + 24,24,24,24,254,7,11,11,9,1,0,60,102,230,6,4, + 8,16,34,66,126,254,7,11,11,9,1,0,60,102,230,6, + 8,28,6,6,6,140,120,8,12,12,9,0,0,6,14,14, + 22,22,38,102,70,255,6,6,31,7,11,11,10,1,0,126, + 124,64,64,124,134,6,6,6,134,124,8,12,12,10,1,0, + 14,56,112,96,192,254,195,195,195,195,98,60,8,11,11,10, + 1,0,255,254,130,6,4,12,8,24,24,48,96,8,11,11, + 10,1,0,60,102,102,102,124,62,71,195,195,195,60,8,11, + 11,10,1,0,60,70,195,195,195,195,63,2,6,12,112,3, + 9,9,5,1,0,224,224,192,0,0,0,224,224,192,3,13, + 13,5,1,252,224,224,64,0,0,0,0,96,224,96,96,64, + 128,8,7,7,9,0,2,1,15,60,96,248,31,3,8,4, + 4,9,0,3,127,128,0,255,8,7,7,9,0,2,96,248, + 15,7,30,120,192,7,14,14,9,1,0,60,70,198,134,6, + 12,8,16,16,16,0,56,56,56,14,17,34,16,1,252,7, + 192,31,240,56,56,32,8,99,164,68,100,204,100,204,100,204, + 100,204,100,204,104,199,248,103,112,112,8,56,24,31,240,15, + 192,12,12,24,12,0,0,6,0,14,0,15,0,11,0,27, + 0,19,128,17,128,63,128,33,192,32,192,96,224,241,240,9, + 12,24,11,1,0,254,0,99,0,99,0,99,0,98,0,126, + 0,99,128,97,128,97,128,97,128,97,128,254,0,9,12,24, + 11,1,0,31,0,99,128,65,0,192,0,192,0,192,0,192, + 0,192,0,192,0,97,128,127,0,60,0,10,12,24,12,1, + 0,254,0,99,128,97,128,96,192,96,192,96,192,96,192,96, + 192,96,192,97,128,99,0,254,0,10,12,24,10,0,0,255, + 128,48,128,48,128,48,0,48,0,63,0,50,0,48,0,48, + 0,48,64,48,128,255,128,9,12,24,10,0,0,255,128,48, + 128,48,128,48,0,48,0,63,0,50,0,48,0,48,0,48, + 0,48,0,252,0,10,12,24,11,1,0,31,128,33,128,65, + 0,64,0,192,0,192,0,192,0,195,192,193,128,65,128,97, + 128,31,0,11,12,24,13,1,0,241,224,96,192,96,192,96, + 192,96,192,127,192,96,192,96,192,96,192,96,192,96,192,241, + 224,4,12,12,6,1,0,240,96,96,96,96,96,96,96,96, + 96,96,240,8,16,16,6,253,252,31,6,6,6,6,6,6, + 6,6,6,6,6,6,68,124,240,11,12,24,12,1,0,243, + 192,99,0,99,0,102,0,108,0,120,0,124,0,110,0,103, + 0,99,0,97,128,241,224,8,12,12,10,1,0,240,96,96, + 96,96,96,96,96,96,97,97,255,15,12,24,16,0,0,112, + 30,56,28,56,28,60,60,44,44,44,108,38,76,38,204,35, + 140,35,140,35,140,241,30,11,12,24,13,1,0,224,224,112, + 64,112,64,120,64,92,64,78,64,78,64,71,64,67,192,65, + 192,65,192,224,192,10,12,24,12,1,0,30,0,33,128,65, + 128,64,192,192,192,192,192,192,192,192,192,192,128,96,128,97, + 0,30,0,9,12,24,11,1,0,254,0,99,0,97,128,97, + 128,97,128,97,0,126,0,96,0,96,0,96,0,96,0,248, + 0,12,15,30,12,1,253,30,0,33,128,65,128,64,192,192, + 192,192,192,192,192,192,192,192,192,96,128,33,0,30,0,3, + 144,1,240,0,96,11,12,24,12,1,0,254,0,99,128,97, + 128,97,128,97,128,127,0,126,0,102,0,99,0,99,128,97, + 192,241,224,8,12,12,10,1,0,62,198,128,128,240,124,30, + 7,3,131,194,252,10,12,24,11,0,0,255,192,140,64,140, + 64,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,30,0,11,12,24,13,1,0,240,224,96,64,96,64,96, + 64,96,64,96,64,96,64,96,64,96,64,96,128,48,128,31, + 0,12,12,24,13,0,0,248,240,112,96,48,64,56,64,24, + 192,24,128,28,128,13,128,15,0,7,0,7,0,6,0,16, + 12,24,16,0,0,248,143,49,134,49,196,49,196,51,196,58, + 108,26,108,30,120,28,56,28,56,12,24,8,16,12,12,24, + 12,0,0,249,224,48,192,56,128,29,0,15,0,14,0,15, + 0,11,0,27,128,49,192,32,224,241,240,11,12,24,12,0, + 0,241,224,48,192,24,128,29,128,13,0,15,0,6,0,6, + 0,6,0,6,0,6,0,15,0,10,12,24,10,0,0,127, + 192,67,128,67,0,7,0,6,0,14,0,28,0,24,0,56, + 0,48,64,112,192,255,192,5,18,18,6,1,253,248,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,248,9, + 18,36,9,0,253,192,0,96,0,96,0,32,0,48,0,48, + 0,16,0,24,0,24,0,12,0,12,0,4,0,6,0,6, + 0,2,0,3,0,3,0,1,128,5,18,18,6,0,253,248, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 248,7,9,9,9,1,5,16,24,40,44,44,68,70,130,130, + 9,1,2,9,0,254,255,128,4,4,4,6,0,10,192,96, + 48,16,8,9,9,9,1,0,60,102,198,14,126,198,198,207, + 118,9,14,28,10,0,0,96,0,224,0,96,0,96,0,96, + 0,103,0,127,0,112,128,96,128,96,128,96,128,97,0,126, + 0,60,0,7,9,9,9,1,0,62,70,196,192,192,192,194, + 124,56,9,14,28,11,1,0,7,0,3,0,3,0,3,0, + 3,0,63,0,67,0,195,0,195,0,195,0,195,0,227,0, + 127,128,59,0,7,9,9,9,1,0,60,100,198,198,254,192, + 226,124,56,7,14,14,6,1,0,30,38,96,96,96,252,96, + 96,96,96,96,96,96,248,10,13,26,10,0,252,60,192,67, + 0,195,0,195,0,226,0,60,0,112,0,124,0,127,128,195, + 128,193,128,193,0,62,0,9,14,28,10,1,0,96,0,224, + 0,96,0,96,0,96,0,102,0,127,0,115,0,99,0,99, + 0,99,0,99,0,99,0,247,128,4,12,12,6,1,0,48, + 112,0,96,224,96,96,96,96,96,96,240,7,16,16,5,253, + 252,14,14,0,12,28,12,12,12,12,12,12,12,12,136,248, + 224,10,14,28,10,1,0,96,0,224,0,96,0,96,0,96, + 0,103,128,99,0,100,0,104,0,124,0,110,0,102,0,99, + 0,243,192,5,14,14,6,0,0,48,240,48,48,48,48,48, + 48,48,48,48,48,48,248,14,9,18,16,1,0,110,112,255, + 248,115,152,99,24,99,24,99,24,99,24,99,24,247,188,9, + 9,18,10,1,0,102,0,255,0,115,0,99,0,99,0,99, + 0,99,0,99,0,247,128,8,9,9,10,1,0,60,70,195, + 195,195,195,194,98,60,9,13,26,11,1,252,103,0,255,0, + 97,128,97,128,97,128,97,128,97,0,127,0,110,0,96,0, + 96,0,96,0,248,0,9,13,26,10,1,252,29,0,103,0, + 195,0,195,0,195,0,195,0,199,0,127,0,59,0,3,0, + 3,0,3,0,15,128,8,9,9,8,0,0,55,255,57,49, + 48,48,48,48,252,6,9,9,8,1,0,240,152,144,224,120, + 28,132,196,248,6,12,12,7,1,0,32,96,96,252,96,96, + 96,96,96,100,124,48,10,9,18,11,0,0,227,128,97,128, + 97,128,97,128,97,128,97,128,99,128,127,192,57,128,10,9, + 18,10,0,0,241,192,97,128,49,0,51,0,58,0,26,0, + 30,0,12,0,8,0,14,9,18,14,0,0,241,60,99,24, + 51,144,51,144,53,176,60,224,28,224,24,96,24,64,10,9, + 18,10,0,0,251,192,113,0,58,0,28,0,12,0,30,0, + 55,0,35,128,247,192,11,13,26,10,255,252,121,224,56,128, + 24,128,25,128,13,0,13,0,14,0,6,0,6,0,4,0, + 12,0,120,0,240,0,7,9,9,9,1,0,254,142,156,24, + 56,48,98,226,254,5,18,18,6,1,253,24,48,96,96,96, + 48,48,48,96,224,48,48,48,96,96,96,48,24,1,20,20, + 4,2,252,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,6,18,18,6,0,253,64,224,48, + 48,48,48,48,48,28,24,48,48,48,48,48,48,96,192,9, + 4,8,9,0,4,48,0,125,128,79,0,134,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--23-230-72-72-P-114-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=19 h=24 x= 2 y=13 dx=20 dy= 0 ascent=20 len=60 + Font Bounding box w=36 h=33 x=-12 y=-8 + Calculated Min Values x=-3 y=-6 dx= 0 dy= 0 + Pure Font ascent =14 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =20 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb14[6044] U8G_SECTION(".progmem.u8g_font_gdb14") = { + 0,36,33,244,248,14,3,134,7,177,32,255,251,20,250,18, + 251,0,0,0,6,0,0,4,17,17,7,2,0,96,224,224, + 224,224,224,224,224,224,64,64,64,0,0,96,240,224,7,8, + 8,11,2,9,102,238,206,206,198,198,198,196,11,13,26,12, + 1,1,12,192,12,128,9,128,127,224,25,0,19,0,19,0, + 51,0,255,128,38,0,38,0,100,0,140,0,10,18,36,12, + 1,254,12,0,12,0,63,128,127,192,205,128,204,128,236,0, + 124,0,63,0,15,128,13,192,140,192,140,192,204,192,255,128, + 127,0,12,0,12,0,15,14,28,17,1,0,56,24,76,16, + 198,48,198,96,198,192,199,128,101,128,59,56,6,68,12,198, + 12,198,24,198,48,100,96,56,15,16,32,16,1,0,15,0, + 17,128,49,128,49,128,51,0,62,0,60,0,28,254,124,120, + 126,48,207,48,199,160,195,224,193,240,97,252,62,56,3,8, + 8,6,2,9,96,224,192,192,192,192,192,192,5,22,22,8, + 2,252,8,24,48,96,96,96,192,192,192,192,192,192,192,192, + 192,192,96,96,96,48,24,8,5,22,22,8,1,252,128,192, + 96,48,48,48,24,24,24,24,24,24,24,24,24,24,48,48, + 48,96,192,128,9,10,20,10,1,8,24,0,24,0,219,0, + 255,128,60,0,62,0,255,0,219,0,24,0,24,0,8,8, + 8,10,1,2,24,24,24,255,24,24,24,24,4,7,7,6, + 1,252,48,240,48,48,32,96,64,7,1,1,8,1,5,254, + 4,3,3,6,1,0,96,240,224,11,22,44,11,0,252,0, + 96,0,192,0,192,1,128,1,128,3,128,3,0,3,0,7, + 0,6,0,6,0,12,0,12,0,28,0,24,0,24,0,56, + 0,48,0,48,0,96,0,96,0,192,0,10,14,28,12,1, + 0,30,0,51,0,97,128,97,128,225,192,225,192,225,192,225, + 192,225,192,225,192,97,128,97,128,51,0,30,0,8,14,14, + 12,2,0,8,120,248,24,24,24,24,24,24,24,24,24,24, + 255,8,14,14,11,2,0,62,103,227,195,3,6,4,12,24, + 48,33,65,255,255,9,14,28,11,1,0,30,0,99,0,227, + 0,67,0,3,0,6,0,31,0,7,128,3,128,1,128,1, + 128,1,128,67,0,190,0,10,14,28,12,1,0,1,0,7, + 0,7,0,15,0,27,0,19,0,51,0,99,0,99,0,255, + 192,3,0,3,0,3,0,15,192,9,14,28,12,1,0,63, + 128,63,0,32,0,96,0,96,0,126,0,67,0,1,128,1, + 128,1,128,1,128,1,128,195,0,62,0,10,14,28,12,1, + 0,7,0,28,0,48,0,96,0,64,0,223,0,225,128,192, + 192,192,192,192,192,192,192,96,128,49,128,30,0,10,14,28, + 12,1,0,127,192,255,128,129,128,129,128,3,0,3,0,2, + 0,6,0,6,0,12,0,12,0,24,0,56,0,48,0,9, + 14,28,11,1,0,62,0,113,128,241,128,241,128,249,128,127, + 0,63,0,63,128,99,128,193,128,193,128,193,128,99,0,62, + 0,10,14,28,12,1,0,31,0,35,128,65,128,192,192,192, + 192,192,192,192,192,97,192,62,192,0,128,1,128,3,0,14, + 0,56,0,4,10,10,6,1,0,224,240,96,0,0,0,0, + 96,240,224,4,15,15,6,1,252,96,240,224,0,0,0,0, + 0,48,240,48,48,32,96,64,9,7,14,10,1,3,1,128, + 15,128,124,0,224,0,248,0,31,0,3,128,9,4,8,10, + 1,4,255,128,0,0,0,0,255,128,9,7,14,10,1,3, + 192,0,248,0,31,0,3,128,31,0,240,0,128,0,9,16, + 32,10,1,0,63,0,103,128,227,128,227,128,3,128,7,0, + 7,0,14,0,12,0,24,0,24,0,24,0,0,0,28,0, + 60,0,56,0,18,20,60,20,1,251,1,248,0,7,254,0, + 28,15,0,56,3,128,48,1,128,97,233,192,99,24,192,194, + 24,192,198,24,192,198,24,192,198,24,192,198,24,128,199,57, + 128,227,255,0,97,222,0,112,0,0,56,1,0,62,7,0, + 15,252,0,3,240,0,14,14,28,14,0,0,1,0,7,128, + 7,128,5,128,13,192,12,192,8,224,24,224,31,224,16,112, + 48,112,48,48,32,56,248,124,13,14,28,14,0,0,127,128, + 176,192,48,96,48,96,48,96,48,192,63,224,48,112,48,56, + 48,56,48,56,48,56,48,112,255,224,11,14,28,13,1,0, + 15,192,49,192,96,128,64,0,192,0,192,0,192,0,192,0, + 192,0,192,0,224,0,112,96,127,128,31,0,14,14,28,15, + 0,0,127,192,240,240,48,56,48,24,48,28,48,28,48,28, + 48,28,48,28,48,28,48,24,48,56,48,240,255,192,12,14, + 28,12,0,0,255,224,56,96,56,96,56,64,56,0,56,0, + 63,192,56,128,56,0,56,0,56,0,56,48,56,32,255,224, + 11,14,28,12,0,0,255,224,56,96,56,32,56,32,56,0, + 56,0,63,128,57,0,56,0,56,0,56,0,56,0,56,0, + 254,0,12,14,28,14,1,0,15,192,16,224,32,64,96,0, + 64,0,192,0,192,0,192,0,193,240,192,96,96,96,96,96, + 48,96,15,128,16,14,28,16,0,0,252,63,48,12,48,12, + 48,12,48,12,48,12,63,252,48,12,48,12,48,12,48,12, + 48,12,48,12,252,63,6,14,14,8,1,0,252,48,48,48, + 48,48,48,48,48,48,48,48,48,252,10,19,38,8,253,251, + 15,192,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 38,0,124,0,248,0,13,14,28,14,0,0,252,248,48,224, + 48,192,49,128,51,0,54,0,60,0,62,0,55,0,51,128, + 49,192,48,224,48,120,252,120,11,14,28,12,0,0,252,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,96,48,64,255,192,18,14,42,19,1,0, + 240,7,128,120,15,0,120,15,0,124,15,0,124,31,0,108, + 23,0,110,55,0,102,55,0,103,103,0,99,103,0,99,199, + 0,99,199,0,97,135,0,241,143,192,15,14,28,15,0,0, + 248,126,56,24,60,24,62,24,54,24,55,24,51,152,49,152, + 49,216,48,248,48,120,48,56,48,56,252,24,12,14,28,14, + 1,0,15,128,48,192,96,96,64,96,192,48,192,48,192,48, + 192,48,192,48,192,48,96,96,96,64,48,128,31,0,12,14, + 28,13,0,0,127,192,176,224,48,48,48,48,48,48,48,48, + 48,96,55,128,48,0,48,0,48,0,48,0,48,0,252,0, + 15,18,36,14,1,252,15,128,48,192,96,96,64,96,192,48, + 192,48,192,48,192,48,192,48,192,48,96,96,96,96,48,192, + 31,0,1,192,0,228,0,126,0,24,14,14,28,14,0,0, + 127,192,240,224,48,48,48,48,48,48,48,96,63,192,51,128, + 49,192,49,192,48,224,48,112,48,124,252,60,10,14,28,12, + 1,0,31,128,97,192,192,128,192,0,240,0,124,0,63,0, + 15,128,3,192,1,192,128,192,192,128,225,128,254,0,12,14, + 28,13,1,0,255,240,198,48,134,16,134,16,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,31,128, + 15,14,28,15,0,0,252,126,48,24,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,24,48,24,32, + 7,192,15,14,28,15,0,0,252,62,56,8,56,24,56,16, + 28,48,28,48,14,32,14,96,6,96,7,64,7,192,3,128, + 3,128,1,0,19,14,42,20,0,0,252,99,224,48,96,192, + 56,112,192,56,240,128,56,241,128,24,185,128,25,153,128,29, + 29,0,29,29,0,15,15,0,14,15,0,14,7,0,14,6, + 0,4,6,0,14,14,28,14,0,0,252,124,56,48,28,96, + 28,96,14,192,7,128,7,128,7,128,7,192,12,224,24,224, + 24,112,48,56,248,252,13,14,28,14,0,0,240,120,56,48, + 28,96,28,96,14,192,6,128,7,128,3,0,3,0,3,0, + 3,0,3,0,3,0,15,192,11,14,28,13,1,0,127,224, + 193,192,195,128,131,128,7,0,15,0,14,0,28,0,28,0, + 56,0,120,32,112,96,224,96,255,224,6,21,21,8,2,253, + 248,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,252,10,22,44,11,0,252,192,0,96,0,96, + 0,48,0,48,0,48,0,24,0,24,0,28,0,12,0,12, + 0,6,0,6,0,6,0,3,0,3,0,3,0,1,128,1, + 128,1,192,0,192,0,192,5,21,21,7,1,253,248,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,248,9,11,22,11,1,6,8,0,12,0,28,0,22,0, + 54,0,34,0,35,0,99,0,65,128,65,128,129,128,10,1, + 2,11,1,253,255,192,5,5,5,7,0,12,224,224,112,56, + 8,10,10,20,11,1,0,62,0,99,0,227,0,3,0,63, + 0,99,0,195,0,195,0,255,192,123,0,11,17,34,12,0, + 0,96,0,224,0,96,0,96,0,96,0,96,0,96,0,119, + 128,127,192,112,224,96,96,96,96,96,96,96,64,96,192,127, + 128,30,0,9,10,20,10,1,0,31,0,99,128,65,0,192, + 0,192,0,192,0,192,0,225,0,127,128,60,0,12,17,34, + 13,1,0,0,192,3,192,0,192,0,192,0,192,0,192,0, + 192,31,192,33,192,64,192,192,192,192,192,192,192,192,192,97, + 192,127,240,60,192,9,10,20,11,1,0,30,0,99,0,65, + 128,193,128,255,128,192,0,192,0,225,128,127,0,62,0,9, + 17,34,8,0,0,7,128,25,0,16,0,48,0,48,0,48, + 0,48,0,126,0,176,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,0,124,0,11,15,30,12,1,251,30,96,35, + 192,97,128,97,128,97,128,115,0,62,0,48,0,124,0,63, + 128,111,192,192,192,192,192,225,128,62,0,12,17,34,13,1, + 0,48,0,240,0,48,0,48,0,48,0,48,0,48,0,51, + 128,63,192,56,192,48,192,48,192,48,192,48,192,48,192,48, + 192,249,240,5,15,15,7,1,0,48,112,48,0,0,112,240, + 48,48,48,48,48,48,48,248,7,20,20,6,254,251,6,14, + 6,0,0,6,14,6,6,6,6,6,6,6,6,6,6,68, + 248,240,12,17,34,13,1,0,48,0,240,0,48,0,48,0, + 48,0,48,0,48,0,49,240,49,192,51,0,54,0,62,0, + 55,0,51,128,49,192,49,224,248,240,6,17,17,7,1,0, + 48,240,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 252,18,10,30,19,1,0,103,142,0,255,255,0,112,227,0, + 96,195,0,96,195,0,96,195,0,96,195,0,96,195,0,96, + 195,0,241,231,192,12,10,20,13,1,0,51,128,247,192,56, + 192,48,192,48,192,48,192,48,192,48,192,48,192,249,240,10, + 10,20,12,1,0,30,0,33,128,65,128,192,192,192,192,192, + 192,192,192,96,128,113,0,30,0,11,15,30,13,1,251,51, + 128,255,192,56,224,48,96,48,96,48,96,48,96,48,192,63, + 128,55,0,48,0,48,0,48,0,48,0,252,0,11,15,30, + 13,1,251,30,64,97,192,64,192,192,192,192,192,192,192,192, + 192,225,192,127,192,60,192,0,192,0,192,0,192,0,192,3, + 224,9,10,20,10,1,0,119,128,255,128,121,128,113,0,112, + 0,112,0,112,0,112,0,112,0,252,0,8,10,10,10,1, + 0,126,198,198,240,124,63,135,131,194,252,8,14,14,9,0, + 0,16,48,48,48,127,176,48,48,48,48,48,50,63,24,12, + 10,20,13,1,0,97,192,224,192,96,192,96,192,96,192,96, + 192,96,192,97,192,127,240,60,192,12,10,20,12,0,0,248, + 240,112,64,56,192,56,128,28,128,29,128,13,0,15,0,6, + 0,6,0,16,10,20,17,0,0,248,135,112,194,49,198,57, + 230,59,100,27,124,30,124,14,56,12,56,12,16,12,10,20, + 12,0,0,253,240,56,192,29,128,31,0,14,0,15,0,27, + 128,17,192,33,224,243,240,13,15,30,12,255,251,124,120,56, + 32,28,96,28,64,14,192,14,192,6,128,7,128,7,0,3, + 0,3,0,6,0,70,0,124,0,248,0,9,10,20,11,1, + 0,255,128,199,0,135,0,14,0,28,0,60,0,57,0,112, + 128,225,128,255,128,5,22,22,8,2,252,24,48,96,96,96, + 96,48,48,48,48,96,224,48,48,48,48,96,96,96,96,48, + 24,2,24,24,5,2,251,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,5, + 22,22,8,1,252,192,96,48,48,48,48,96,96,96,96,56, + 48,96,96,96,96,48,48,48,48,96,192,10,4,8,11,1, + 5,48,64,124,128,159,0,135,0,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,0,0,0,6,0,0, + 4,16,16,7,1,250,112,240,96,0,32,32,32,112,112,112, + 112,112,112,112,112,96,10,14,28,12,1,0,12,0,12,0, + 31,128,125,192,108,128,204,0,204,0,204,0,204,0,236,192, + 127,128,63,0,12,0,12,0,11,14,28,12,0,0,7,192, + 12,224,24,64,24,64,56,0,56,0,56,0,127,0,184,0, + 56,0,56,32,48,32,127,224,255,224,10,9,18,12,1,2, + 128,64,94,128,51,0,97,128,97,128,97,128,51,128,94,128, + 128,64,12,14,28,12,0,0,241,240,120,192,56,192,29,128, + 29,128,13,0,15,0,6,0,63,192,6,0,6,0,6,0, + 6,0,31,128,2,24,24,5,2,251,192,192,192,192,192,192, + 192,192,192,192,128,0,0,64,192,192,192,192,192,192,192,192, + 192,192,9,16,32,11,1,0,62,0,99,0,99,0,112,0, + 60,0,127,0,199,128,195,128,225,128,121,128,63,0,31,0, + 71,0,67,0,99,0,126,0,7,3,3,9,1,12,198,238, + 198,15,15,30,17,1,0,7,192,24,48,48,24,99,204,108, + 236,200,70,216,6,216,6,216,6,216,6,108,44,103,204,48, + 24,24,48,7,192,6,7,7,6,0,7,120,216,24,248,216, + 252,248,9,10,20,12,1,0,8,128,17,128,51,0,103,0, + 238,0,238,0,103,0,51,0,17,128,8,128,10,5,10,12, + 1,2,255,192,0,192,0,192,0,192,0,192,7,1,1,8, + 1,5,254,8,8,8,8,0,8,60,66,157,149,153,153,86, + 60,9,2,4,11,1,13,255,128,255,128,6,5,5,8,1, + 9,56,76,204,200,112,8,10,10,9,1,2,24,24,24,24, + 255,24,24,24,0,255,6,8,8,8,1,7,120,204,140,24, + 16,32,68,252,6,8,8,8,1,7,56,204,140,56,12,12, + 140,120,6,5,5,7,2,12,56,60,112,96,192,12,15,30, + 13,1,251,96,192,225,192,96,192,96,192,96,192,96,192,96, + 192,113,192,127,240,110,192,96,0,96,0,112,0,112,0,96, + 0,14,17,34,14,0,253,31,252,113,176,225,176,225,176,225, + 176,225,176,113,176,31,176,1,176,1,176,1,176,1,176,1, + 176,1,176,1,176,1,176,7,252,4,3,3,5,0,6,96, + 240,224,4,5,5,5,1,251,32,96,48,48,224,6,8,8, + 8,1,7,48,240,48,48,48,48,48,252,5,7,7,6,0, + 7,112,216,216,216,216,112,248,10,10,20,12,1,0,196,0, + 102,0,99,0,51,128,57,192,61,192,49,128,99,0,102,0, + 196,0,12,14,28,14,1,0,48,16,240,48,48,96,48,192, + 48,128,49,128,255,0,6,96,4,224,13,224,25,96,19,240, + 48,96,96,240,12,14,28,14,1,0,48,48,240,96,48,192, + 48,192,49,128,51,0,254,0,6,240,13,48,26,48,16,96, + 48,192,97,144,195,240,14,14,28,15,0,0,56,8,76,24, + 40,48,60,96,12,64,140,192,121,128,3,24,2,56,6,88, + 12,88,8,252,24,24,48,60,9,16,32,11,1,250,28,0, + 30,0,12,0,0,0,12,0,12,0,12,0,24,0,56,0, + 112,0,96,0,224,0,227,128,227,128,231,0,126,0,14,20, + 40,14,0,0,8,0,28,0,15,0,3,128,0,0,0,0, + 1,0,7,128,7,128,5,128,13,192,12,192,8,224,24,224, + 31,224,16,112,48,112,48,48,32,56,248,124,14,20,40,14, + 0,0,0,128,0,224,3,192,7,0,0,0,0,0,1,0, + 7,128,7,128,5,128,13,192,12,192,8,224,24,224,31,224, + 16,112,48,112,48,48,32,56,248,124,14,20,40,14,0,0, + 3,0,7,128,15,192,12,96,16,0,0,0,1,0,7,128, + 7,128,5,128,13,192,12,192,8,224,24,224,31,224,16,112, + 48,112,48,48,32,56,248,124,14,19,38,14,0,0,4,32, + 15,240,27,192,0,0,0,0,1,0,7,128,7,128,5,128, + 13,192,12,192,8,224,24,224,31,224,16,112,48,112,48,48, + 32,56,248,124,14,19,38,14,0,0,8,64,28,224,24,224, + 0,0,0,0,1,0,7,128,7,128,5,128,13,192,12,192, + 8,224,24,224,31,224,16,112,48,112,48,48,32,56,248,124, + 14,20,40,14,0,0,1,128,6,192,6,192,7,128,0,0, + 0,0,1,0,7,128,7,128,5,128,13,192,12,192,8,224, + 24,224,31,224,16,112,48,112,48,48,32,56,248,124,18,14, + 42,19,0,0,7,255,128,1,225,128,3,96,128,3,96,128, + 6,96,0,6,96,0,7,255,0,12,98,0,12,96,0,24, + 96,0,24,96,0,48,96,64,48,96,192,249,255,128,11,19, + 38,13,1,251,15,192,49,192,96,128,64,0,192,0,192,0, + 192,0,192,0,192,0,192,0,96,0,112,96,63,192,31,128, + 4,0,6,0,3,0,3,0,12,0,12,20,40,12,0,0, + 16,0,56,0,30,0,7,0,0,0,0,0,255,224,56,96, + 56,96,56,64,56,0,56,0,63,192,56,128,56,0,56,0, + 56,0,56,48,56,32,255,224,12,20,40,12,0,0,1,0, + 1,192,7,128,14,0,0,0,0,0,255,224,56,96,56,96, + 56,64,56,0,56,0,63,192,56,128,56,0,56,0,56,0, + 56,48,56,32,255,224,12,20,40,12,0,0,6,0,15,0, + 31,128,48,192,0,0,0,0,255,224,56,96,56,96,56,64, + 56,0,56,0,63,192,56,128,56,0,56,0,56,0,56,48, + 56,32,255,224,12,19,38,12,0,0,16,128,49,192,49,192, + 0,0,0,0,255,224,56,96,56,96,56,64,56,0,56,0, + 63,192,56,128,56,0,56,0,56,0,56,48,56,32,255,224, + 7,20,20,8,0,0,64,224,112,24,4,0,126,24,24,24, + 24,24,24,24,24,24,24,24,24,126,7,20,20,8,1,0, + 8,30,60,96,128,0,252,48,48,48,48,48,48,48,48,48, + 48,48,48,252,7,20,20,8,0,0,16,56,124,198,0,0, + 126,24,24,24,24,24,24,24,24,24,24,24,24,126,8,19, + 19,8,255,0,65,99,227,0,0,63,12,12,12,12,12,12, + 12,12,12,12,12,12,63,14,14,28,15,0,0,127,192,240, + 240,48,56,48,24,48,28,48,28,254,28,48,28,48,28,48, + 28,48,24,48,56,48,240,255,192,15,19,38,15,0,0,2, + 32,15,240,11,224,16,0,0,0,248,126,56,24,60,24,62, + 24,54,24,55,24,51,152,49,152,49,216,48,248,48,120,48, + 56,48,56,252,24,12,20,40,14,1,0,16,0,60,0,30, + 0,3,0,0,0,0,0,15,128,48,192,96,96,64,96,192, + 48,192,48,192,48,192,48,192,48,192,48,96,96,96,64,48, + 128,31,0,12,20,40,14,1,0,1,0,1,192,7,128,14, + 0,0,0,0,0,15,128,48,192,96,96,64,96,192,48,192, + 48,192,48,192,48,192,48,192,48,96,96,96,64,48,128,31, + 0,12,20,40,14,1,0,6,0,15,0,15,128,24,192,32, + 0,0,0,15,128,48,192,96,96,64,96,192,48,192,48,192, + 48,192,48,192,48,192,48,96,96,96,64,48,128,31,0,12, + 19,38,14,1,0,8,64,31,224,55,128,0,0,0,0,15, + 128,48,192,96,96,64,96,192,48,192,48,192,48,192,48,192, + 48,192,48,96,96,96,64,48,128,31,0,12,19,38,14,1, + 0,16,128,57,192,49,192,0,0,0,0,15,128,48,192,96, + 96,64,96,192,48,192,48,192,48,192,48,192,48,192,48,96, + 96,96,64,48,128,31,0,8,7,7,10,1,3,195,102,60, + 24,60,102,195,12,15,30,14,1,255,15,176,16,224,32,224, + 96,224,193,240,195,112,195,48,198,48,204,48,232,32,120,96, + 112,64,112,128,223,0,128,0,15,20,40,15,0,0,4,0, + 14,0,7,0,1,192,0,0,0,0,252,126,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,48,24,48,24, + 24,48,24,32,7,192,15,20,40,15,0,0,0,64,0,240, + 1,224,3,0,0,0,0,0,252,126,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,48,24,24,48, + 24,32,7,192,15,20,40,15,0,0,1,128,3,128,7,192, + 12,96,0,16,0,0,252,126,48,24,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,24,48,24,32, + 7,192,15,19,38,15,0,0,4,32,12,112,12,96,0,0, + 0,0,252,126,48,24,48,24,48,24,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,24,48,24,32,7,192,13,20, + 40,14,0,0,0,128,0,224,3,192,7,0,0,0,0,0, + 240,120,56,48,28,96,28,96,14,192,6,128,7,128,3,0, + 3,0,3,0,3,0,3,0,3,0,15,192,12,14,28,13, + 0,0,252,0,48,0,48,0,63,192,48,96,48,48,48,48, + 48,48,48,48,48,96,55,192,48,0,48,0,252,0,11,17, + 34,14,1,0,15,128,16,192,32,96,32,96,96,96,96,96, + 97,192,99,0,99,0,99,0,99,192,97,192,96,224,104,96, + 104,96,108,64,239,128,10,17,34,11,1,0,48,0,120,0, + 24,0,12,0,6,0,0,0,0,0,62,0,99,0,227,0, + 3,0,63,0,99,0,195,0,195,0,255,192,123,0,10,17, + 34,11,1,0,7,0,7,0,14,0,12,0,24,0,0,0, + 0,0,62,0,99,0,227,0,3,0,63,0,99,0,195,0, + 195,0,255,192,123,0,10,17,34,11,1,0,12,0,30,0, + 62,0,115,0,65,128,0,0,0,0,62,0,99,0,227,0, + 3,0,63,0,99,0,195,0,195,0,255,192,123,0,10,16, + 32,11,1,0,56,128,124,128,127,0,198,0,0,0,0,0, + 62,0,99,0,227,0,3,0,63,0,99,0,195,0,195,0, + 255,192,123,0,10,15,30,11,1,0,99,0,99,128,99,0, + 0,0,0,0,62,0,99,0,227,0,3,0,63,0,99,0, + 195,0,195,0,255,192,123,0,10,16,32,11,1,0,14,0, + 27,0,26,0,28,0,0,0,0,0,62,0,99,0,227,0, + 3,0,63,0,99,0,195,0,195,0,255,192,123,0,15,10, + 20,17,1,0,30,120,119,140,227,6,131,6,31,252,99,0, + 195,0,199,132,253,252,112,240,9,15,30,10,1,251,31,0, + 99,128,65,0,192,0,192,0,192,0,192,0,225,0,126,0, + 60,0,16,0,28,0,12,0,12,0,48,0,9,17,34,11, + 1,0,56,0,56,0,28,0,12,0,6,0,0,0,0,0, + 30,0,99,0,65,128,193,128,255,128,192,0,192,0,225,128, + 127,0,62,0,9,17,34,11,1,0,7,0,7,128,14,0, + 12,0,24,0,0,0,0,0,30,0,99,0,65,128,193,128, + 255,128,192,0,192,0,225,128,127,0,62,0,9,17,34,11, + 1,0,12,0,30,0,63,0,51,0,96,128,0,0,0,0, + 30,0,99,0,65,128,193,128,255,128,192,0,192,0,225,128, + 127,0,62,0,9,15,30,11,1,0,97,128,99,128,99,0, + 0,0,0,0,30,0,99,0,65,128,193,128,255,128,192,0, + 192,0,225,128,127,0,62,0,6,17,17,7,0,0,224,112, + 48,24,8,0,0,56,120,24,24,24,24,24,24,24,124,6, + 17,17,7,1,0,28,60,56,96,64,0,0,112,240,48,48, + 48,48,48,48,48,248,7,17,17,7,0,0,56,56,124,198, + 130,0,0,56,120,24,24,24,24,24,24,24,124,8,15,15, + 7,255,0,99,227,195,0,0,28,60,12,12,12,12,12,12, + 12,62,10,17,34,12,1,0,24,0,125,192,15,128,31,0, + 51,128,3,128,1,192,31,192,97,192,64,192,192,192,192,192, + 192,192,192,128,225,128,113,0,30,0,12,16,32,13,1,0, + 28,64,62,64,63,128,99,0,0,0,0,0,51,128,247,192, + 56,192,48,192,48,192,48,192,48,192,48,192,48,192,249,240, + 10,17,34,12,1,0,56,0,56,0,28,0,6,0,2,0, + 0,0,0,0,30,0,33,128,65,128,192,192,192,192,192,192, + 192,192,96,128,113,0,30,0,10,17,34,12,1,0,3,128, + 7,0,6,0,12,0,8,0,0,0,0,0,30,0,33,128, + 65,128,192,192,192,192,192,192,192,192,96,128,113,0,30,0, + 10,17,34,12,1,0,12,0,30,0,31,0,49,128,96,128, + 0,0,0,0,30,0,33,128,65,128,192,192,192,192,192,192, + 192,192,96,128,113,0,30,0,10,16,32,12,1,0,24,64, + 60,128,127,128,71,0,0,0,0,0,30,0,33,128,65,128, + 192,192,192,192,192,192,192,192,96,128,113,0,30,0,10,15, + 30,12,1,0,49,128,115,128,97,128,0,0,0,0,30,0, + 33,128,65,128,192,192,192,192,192,192,192,192,96,128,113,0, + 30,0,8,8,8,10,1,2,24,24,16,255,0,24,24,24, + 10,12,24,12,1,255,0,64,30,192,51,128,99,192,199,192, + 196,192,200,192,248,192,113,128,113,0,94,0,128,0,12,17, + 34,13,1,0,56,0,28,0,12,0,6,0,2,0,0,0, + 0,0,97,192,224,192,96,192,96,192,96,192,96,192,96,192, + 97,192,127,240,60,192,12,17,34,13,1,0,3,128,7,128, + 6,0,12,0,8,0,0,0,0,0,97,192,224,192,96,192, + 96,192,96,192,96,192,96,192,97,192,127,240,60,192,12,17, + 34,13,1,0,14,0,14,0,31,0,49,128,32,128,0,0, + 0,0,97,192,224,192,96,192,96,192,96,192,96,192,96,192, + 97,192,127,240,60,192,12,15,30,13,1,0,49,128,113,128, + 97,128,0,0,0,0,97,192,224,192,96,192,96,192,96,192, + 96,192,96,192,97,192,127,240,60,192,13,22,44,12,255,251, + 0,192,1,224,1,128,3,0,6,0,0,0,0,0,124,120, + 56,32,28,96,28,64,14,192,14,192,6,128,7,128,7,0, + 3,0,3,0,6,0,70,0,124,0,248,0,11,22,44,13, + 1,251,48,0,240,0,48,0,48,0,48,0,48,0,48,0, + 51,128,63,192,56,224,48,96,48,96,48,96,48,96,48,192, + 63,128,55,0,48,0,48,0,48,0,48,0,252,0,13,20, + 40,12,255,251,24,96,28,224,24,192,0,0,0,0,124,120, + 56,32,28,96,28,64,14,192,14,192,6,128,7,128,7,0, + 3,0,3,0,6,0,70,0,124,0,248,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--23-230-72-72-P-114-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 14 + Calculated Max Values w=11 h=22 x= 2 y= 8 dx=12 dy= 0 ascent=18 len=44 + Font Bounding box w=36 h=33 x=-12 y=-8 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent= 0 + X Font ascent =14 descent= 0 + Max Font ascent =18 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb14n[448] U8G_SECTION(".progmem.u8g_font_gdb14n") = { + 0,36,33,244,248,14,0,0,0,0,42,57,0,18,252,14, + 0,9,10,20,10,1,8,24,0,24,0,219,0,255,128,60, + 0,62,0,255,0,219,0,24,0,24,0,8,8,8,10,1, + 2,24,24,24,255,24,24,24,24,4,7,7,6,1,252,48, + 240,48,48,32,96,64,7,1,1,8,1,5,254,4,3,3, + 6,1,0,96,240,224,11,22,44,11,0,252,0,96,0,192, + 0,192,1,128,1,128,3,128,3,0,3,0,7,0,6,0, + 6,0,12,0,12,0,28,0,24,0,24,0,56,0,48,0, + 48,0,96,0,96,0,192,0,10,14,28,12,1,0,30,0, + 51,0,97,128,97,128,225,192,225,192,225,192,225,192,225,192, + 225,192,97,128,97,128,51,0,30,0,8,14,14,12,2,0, + 8,120,248,24,24,24,24,24,24,24,24,24,24,255,8,14, + 14,11,2,0,62,103,227,195,3,6,4,12,24,48,33,65, + 255,255,9,14,28,11,1,0,30,0,99,0,227,0,67,0, + 3,0,6,0,31,0,7,128,3,128,1,128,1,128,1,128, + 67,0,190,0,10,14,28,12,1,0,1,0,7,0,7,0, + 15,0,27,0,19,0,51,0,99,0,99,0,255,192,3,0, + 3,0,3,0,15,192,9,14,28,12,1,0,63,128,63,0, + 32,0,96,0,96,0,126,0,67,0,1,128,1,128,1,128, + 1,128,1,128,195,0,62,0,10,14,28,12,1,0,7,0, + 28,0,48,0,96,0,64,0,223,0,225,128,192,192,192,192, + 192,192,192,192,96,128,49,128,30,0,10,14,28,12,1,0, + 127,192,255,128,129,128,129,128,3,0,3,0,2,0,6,0, + 6,0,12,0,12,0,24,0,56,0,48,0,9,14,28,11, + 1,0,62,0,113,128,241,128,241,128,249,128,127,0,63,0, + 63,128,99,128,193,128,193,128,193,128,99,0,62,0,10,14, + 28,12,1,0,31,0,35,128,65,128,192,192,192,192,192,192, + 192,192,97,192,62,192,0,128,1,128,3,0,14,0,56,0 + }; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--23-230-72-72-P-114-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=19 h=24 x= 2 y=12 dx=20 dy= 0 ascent=19 len=60 + Font Bounding box w=36 h=33 x=-12 y=-8 + Calculated Min Values x=-3 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =19 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb14r[2842] U8G_SECTION(".progmem.u8g_font_gdb14r") = { + 0,36,33,244,248,14,3,134,7,177,32,127,251,19,251,18, + 251,0,0,0,6,0,0,4,17,17,7,2,0,96,224,224, + 224,224,224,224,224,224,64,64,64,0,0,96,240,224,7,8, + 8,11,2,9,102,238,206,206,198,198,198,196,11,13,26,12, + 1,1,12,192,12,128,9,128,127,224,25,0,19,0,19,0, + 51,0,255,128,38,0,38,0,100,0,140,0,10,18,36,12, + 1,254,12,0,12,0,63,128,127,192,205,128,204,128,236,0, + 124,0,63,0,15,128,13,192,140,192,140,192,204,192,255,128, + 127,0,12,0,12,0,15,14,28,17,1,0,56,24,76,16, + 198,48,198,96,198,192,199,128,101,128,59,56,6,68,12,198, + 12,198,24,198,48,100,96,56,15,16,32,16,1,0,15,0, + 17,128,49,128,49,128,51,0,62,0,60,0,28,254,124,120, + 126,48,207,48,199,160,195,224,193,240,97,252,62,56,3,8, + 8,6,2,9,96,224,192,192,192,192,192,192,5,22,22,8, + 2,252,8,24,48,96,96,96,192,192,192,192,192,192,192,192, + 192,192,96,96,96,48,24,8,5,22,22,8,1,252,128,192, + 96,48,48,48,24,24,24,24,24,24,24,24,24,24,48,48, + 48,96,192,128,9,10,20,10,1,8,24,0,24,0,219,0, + 255,128,60,0,62,0,255,0,219,0,24,0,24,0,8,8, + 8,10,1,2,24,24,24,255,24,24,24,24,4,7,7,6, + 1,252,48,240,48,48,32,96,64,7,1,1,8,1,5,254, + 4,3,3,6,1,0,96,240,224,11,22,44,11,0,252,0, + 96,0,192,0,192,1,128,1,128,3,128,3,0,3,0,7, + 0,6,0,6,0,12,0,12,0,28,0,24,0,24,0,56, + 0,48,0,48,0,96,0,96,0,192,0,10,14,28,12,1, + 0,30,0,51,0,97,128,97,128,225,192,225,192,225,192,225, + 192,225,192,225,192,97,128,97,128,51,0,30,0,8,14,14, + 12,2,0,8,120,248,24,24,24,24,24,24,24,24,24,24, + 255,8,14,14,11,2,0,62,103,227,195,3,6,4,12,24, + 48,33,65,255,255,9,14,28,11,1,0,30,0,99,0,227, + 0,67,0,3,0,6,0,31,0,7,128,3,128,1,128,1, + 128,1,128,67,0,190,0,10,14,28,12,1,0,1,0,7, + 0,7,0,15,0,27,0,19,0,51,0,99,0,99,0,255, + 192,3,0,3,0,3,0,15,192,9,14,28,12,1,0,63, + 128,63,0,32,0,96,0,96,0,126,0,67,0,1,128,1, + 128,1,128,1,128,1,128,195,0,62,0,10,14,28,12,1, + 0,7,0,28,0,48,0,96,0,64,0,223,0,225,128,192, + 192,192,192,192,192,192,192,96,128,49,128,30,0,10,14,28, + 12,1,0,127,192,255,128,129,128,129,128,3,0,3,0,2, + 0,6,0,6,0,12,0,12,0,24,0,56,0,48,0,9, + 14,28,11,1,0,62,0,113,128,241,128,241,128,249,128,127, + 0,63,0,63,128,99,128,193,128,193,128,193,128,99,0,62, + 0,10,14,28,12,1,0,31,0,35,128,65,128,192,192,192, + 192,192,192,192,192,97,192,62,192,0,128,1,128,3,0,14, + 0,56,0,4,10,10,6,1,0,224,240,96,0,0,0,0, + 96,240,224,4,15,15,6,1,252,96,240,224,0,0,0,0, + 0,48,240,48,48,32,96,64,9,7,14,10,1,3,1,128, + 15,128,124,0,224,0,248,0,31,0,3,128,9,4,8,10, + 1,4,255,128,0,0,0,0,255,128,9,7,14,10,1,3, + 192,0,248,0,31,0,3,128,31,0,240,0,128,0,9,16, + 32,10,1,0,63,0,103,128,227,128,227,128,3,128,7,0, + 7,0,14,0,12,0,24,0,24,0,24,0,0,0,28,0, + 60,0,56,0,18,20,60,20,1,251,1,248,0,7,254,0, + 28,15,0,56,3,128,48,1,128,97,233,192,99,24,192,194, + 24,192,198,24,192,198,24,192,198,24,192,198,24,128,199,57, + 128,227,255,0,97,222,0,112,0,0,56,1,0,62,7,0, + 15,252,0,3,240,0,14,14,28,14,0,0,1,0,7,128, + 7,128,5,128,13,192,12,192,8,224,24,224,31,224,16,112, + 48,112,48,48,32,56,248,124,13,14,28,14,0,0,127,128, + 176,192,48,96,48,96,48,96,48,192,63,224,48,112,48,56, + 48,56,48,56,48,56,48,112,255,224,11,14,28,13,1,0, + 15,192,49,192,96,128,64,0,192,0,192,0,192,0,192,0, + 192,0,192,0,224,0,112,96,127,128,31,0,14,14,28,15, + 0,0,127,192,240,240,48,56,48,24,48,28,48,28,48,28, + 48,28,48,28,48,28,48,24,48,56,48,240,255,192,12,14, + 28,12,0,0,255,224,56,96,56,96,56,64,56,0,56,0, + 63,192,56,128,56,0,56,0,56,0,56,48,56,32,255,224, + 11,14,28,12,0,0,255,224,56,96,56,32,56,32,56,0, + 56,0,63,128,57,0,56,0,56,0,56,0,56,0,56,0, + 254,0,12,14,28,14,1,0,15,192,16,224,32,64,96,0, + 64,0,192,0,192,0,192,0,193,240,192,96,96,96,96,96, + 48,96,15,128,16,14,28,16,0,0,252,63,48,12,48,12, + 48,12,48,12,48,12,63,252,48,12,48,12,48,12,48,12, + 48,12,48,12,252,63,6,14,14,8,1,0,252,48,48,48, + 48,48,48,48,48,48,48,48,48,252,10,19,38,8,253,251, + 15,192,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 38,0,124,0,248,0,13,14,28,14,0,0,252,248,48,224, + 48,192,49,128,51,0,54,0,60,0,62,0,55,0,51,128, + 49,192,48,224,48,120,252,120,11,14,28,12,0,0,252,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,96,48,64,255,192,18,14,42,19,1,0, + 240,7,128,120,15,0,120,15,0,124,15,0,124,31,0,108, + 23,0,110,55,0,102,55,0,103,103,0,99,103,0,99,199, + 0,99,199,0,97,135,0,241,143,192,15,14,28,15,0,0, + 248,126,56,24,60,24,62,24,54,24,55,24,51,152,49,152, + 49,216,48,248,48,120,48,56,48,56,252,24,12,14,28,14, + 1,0,15,128,48,192,96,96,64,96,192,48,192,48,192,48, + 192,48,192,48,192,48,96,96,96,64,48,128,31,0,12,14, + 28,13,0,0,127,192,176,224,48,48,48,48,48,48,48,48, + 48,96,55,128,48,0,48,0,48,0,48,0,48,0,252,0, + 15,18,36,14,1,252,15,128,48,192,96,96,64,96,192,48, + 192,48,192,48,192,48,192,48,192,48,96,96,96,96,48,192, + 31,0,1,192,0,228,0,126,0,24,14,14,28,14,0,0, + 127,192,240,224,48,48,48,48,48,48,48,96,63,192,51,128, + 49,192,49,192,48,224,48,112,48,124,252,60,10,14,28,12, + 1,0,31,128,97,192,192,128,192,0,240,0,124,0,63,0, + 15,128,3,192,1,192,128,192,192,128,225,128,254,0,12,14, + 28,13,1,0,255,240,198,48,134,16,134,16,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,31,128, + 15,14,28,15,0,0,252,126,48,24,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,24,48,24,32, + 7,192,15,14,28,15,0,0,252,62,56,8,56,24,56,16, + 28,48,28,48,14,32,14,96,6,96,7,64,7,192,3,128, + 3,128,1,0,19,14,42,20,0,0,252,99,224,48,96,192, + 56,112,192,56,240,128,56,241,128,24,185,128,25,153,128,29, + 29,0,29,29,0,15,15,0,14,15,0,14,7,0,14,6, + 0,4,6,0,14,14,28,14,0,0,252,124,56,48,28,96, + 28,96,14,192,7,128,7,128,7,128,7,192,12,224,24,224, + 24,112,48,56,248,252,13,14,28,14,0,0,240,120,56,48, + 28,96,28,96,14,192,6,128,7,128,3,0,3,0,3,0, + 3,0,3,0,3,0,15,192,11,14,28,13,1,0,127,224, + 193,192,195,128,131,128,7,0,15,0,14,0,28,0,28,0, + 56,0,120,32,112,96,224,96,255,224,6,21,21,8,2,253, + 248,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,252,10,22,44,11,0,252,192,0,96,0,96, + 0,48,0,48,0,48,0,24,0,24,0,28,0,12,0,12, + 0,6,0,6,0,6,0,3,0,3,0,3,0,1,128,1, + 128,1,192,0,192,0,192,5,21,21,7,1,253,248,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,248,9,11,22,11,1,6,8,0,12,0,28,0,22,0, + 54,0,34,0,35,0,99,0,65,128,65,128,129,128,10,1, + 2,11,1,253,255,192,5,5,5,7,0,12,224,224,112,56, + 8,10,10,20,11,1,0,62,0,99,0,227,0,3,0,63, + 0,99,0,195,0,195,0,255,192,123,0,11,17,34,12,0, + 0,96,0,224,0,96,0,96,0,96,0,96,0,96,0,119, + 128,127,192,112,224,96,96,96,96,96,96,96,64,96,192,127, + 128,30,0,9,10,20,10,1,0,31,0,99,128,65,0,192, + 0,192,0,192,0,192,0,225,0,127,128,60,0,12,17,34, + 13,1,0,0,192,3,192,0,192,0,192,0,192,0,192,0, + 192,31,192,33,192,64,192,192,192,192,192,192,192,192,192,97, + 192,127,240,60,192,9,10,20,11,1,0,30,0,99,0,65, + 128,193,128,255,128,192,0,192,0,225,128,127,0,62,0,9, + 17,34,8,0,0,7,128,25,0,16,0,48,0,48,0,48, + 0,48,0,126,0,176,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,0,124,0,11,15,30,12,1,251,30,96,35, + 192,97,128,97,128,97,128,115,0,62,0,48,0,124,0,63, + 128,111,192,192,192,192,192,225,128,62,0,12,17,34,13,1, + 0,48,0,240,0,48,0,48,0,48,0,48,0,48,0,51, + 128,63,192,56,192,48,192,48,192,48,192,48,192,48,192,48, + 192,249,240,5,15,15,7,1,0,48,112,48,0,0,112,240, + 48,48,48,48,48,48,48,248,7,20,20,6,254,251,6,14, + 6,0,0,6,14,6,6,6,6,6,6,6,6,6,6,68, + 248,240,12,17,34,13,1,0,48,0,240,0,48,0,48,0, + 48,0,48,0,48,0,49,240,49,192,51,0,54,0,62,0, + 55,0,51,128,49,192,49,224,248,240,6,17,17,7,1,0, + 48,240,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 252,18,10,30,19,1,0,103,142,0,255,255,0,112,227,0, + 96,195,0,96,195,0,96,195,0,96,195,0,96,195,0,96, + 195,0,241,231,192,12,10,20,13,1,0,51,128,247,192,56, + 192,48,192,48,192,48,192,48,192,48,192,48,192,249,240,10, + 10,20,12,1,0,30,0,33,128,65,128,192,192,192,192,192, + 192,192,192,96,128,113,0,30,0,11,15,30,13,1,251,51, + 128,255,192,56,224,48,96,48,96,48,96,48,96,48,192,63, + 128,55,0,48,0,48,0,48,0,48,0,252,0,11,15,30, + 13,1,251,30,64,97,192,64,192,192,192,192,192,192,192,192, + 192,225,192,127,192,60,192,0,192,0,192,0,192,0,192,3, + 224,9,10,20,10,1,0,119,128,255,128,121,128,113,0,112, + 0,112,0,112,0,112,0,112,0,252,0,8,10,10,10,1, + 0,126,198,198,240,124,63,135,131,194,252,8,14,14,9,0, + 0,16,48,48,48,127,176,48,48,48,48,48,50,63,24,12, + 10,20,13,1,0,97,192,224,192,96,192,96,192,96,192,96, + 192,96,192,97,192,127,240,60,192,12,10,20,12,0,0,248, + 240,112,64,56,192,56,128,28,128,29,128,13,0,15,0,6, + 0,6,0,16,10,20,17,0,0,248,135,112,194,49,198,57, + 230,59,100,27,124,30,124,14,56,12,56,12,16,12,10,20, + 12,0,0,253,240,56,192,29,128,31,0,14,0,15,0,27, + 128,17,192,33,224,243,240,13,15,30,12,255,251,124,120,56, + 32,28,96,28,64,14,192,14,192,6,128,7,128,7,0,3, + 0,3,0,6,0,70,0,124,0,248,0,9,10,20,11,1, + 0,255,128,199,0,135,0,14,0,28,0,60,0,57,0,112, + 128,225,128,255,128,5,22,22,8,2,252,24,48,96,96,96, + 96,48,48,48,48,96,224,48,48,48,48,96,96,96,96,48, + 24,2,24,24,5,2,251,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,5, + 22,22,8,1,252,192,96,48,48,48,48,96,96,96,96,56, + 48,96,96,96,96,48,48,48,48,96,192,10,4,8,11,1, + 5,48,64,124,128,159,0,135,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--27-270-72-72-P-135-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 17, '1' Height: 16 + Calculated Max Values w=23 h=27 x= 3 y=16 dx=23 dy= 0 ascent=23 len=69 + Font Bounding box w=42 h=39 x=-14 y=-10 + Calculated Min Values x=-4 y=-7 dx= 0 dy= 0 + Pure Font ascent =17 descent=-6 + X Font ascent =21 descent=-6 + Max Font ascent =23 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb17[7600] U8G_SECTION(".progmem.u8g_font_gdb17") = { + 0,42,39,242,246,17,4,81,9,172,32,255,250,23,249,21, + 250,0,0,0,7,0,0,4,21,21,8,2,255,48,240,240, + 240,240,112,112,96,96,96,96,96,96,96,64,0,0,112,240, + 240,224,9,9,18,13,2,11,113,128,231,128,231,128,231,128, + 227,0,227,0,99,0,99,0,99,0,13,15,30,14,1,2, + 2,32,6,96,6,96,6,96,12,96,63,248,76,192,24,128, + 25,128,255,224,51,0,51,0,51,0,35,0,102,0,11,20, + 40,13,1,254,6,0,6,0,31,128,127,224,230,224,198,96, + 198,0,246,0,126,0,63,128,7,192,6,224,6,96,198,96, + 198,96,246,192,255,192,31,0,6,0,6,0,18,17,51,20, + 1,0,0,1,0,60,6,0,102,14,0,195,12,0,195,24, + 0,195,48,0,195,112,0,195,96,0,102,192,0,61,143,0, + 3,144,128,3,48,192,6,48,192,12,48,192,24,48,192,56, + 25,128,48,15,0,17,19,57,18,1,0,7,128,0,25,224, + 0,16,224,0,48,224,0,48,224,0,49,192,0,63,128,0, + 63,0,0,30,0,0,62,63,128,127,29,0,127,140,0,239, + 140,0,231,204,0,227,248,0,225,248,0,96,252,0,112,255, + 0,31,14,128,4,9,9,7,2,11,112,224,224,224,224,224, + 96,96,96,7,25,25,9,2,252,4,14,28,56,48,112,112, + 112,224,224,224,224,224,224,224,224,224,96,112,112,48,56,28, + 12,6,7,25,25,9,0,252,64,224,112,56,24,28,28,28, + 14,14,14,14,14,14,14,14,14,28,28,28,56,56,112,96, + 192,10,12,24,12,1,9,12,0,12,0,204,128,237,192,255, + 192,63,0,63,0,255,192,237,192,76,128,12,0,12,0,10, + 10,20,11,1,2,12,0,12,0,12,0,12,0,255,192,12, + 0,12,0,12,0,12,0,12,0,5,8,8,7,1,251,48, + 248,120,56,48,48,96,192,8,1,1,10,1,6,255,4,4, + 4,7,2,255,112,240,240,224,12,25,50,13,0,252,0,48, + 0,112,0,112,0,96,0,224,0,192,1,192,1,192,1,128, + 3,128,3,128,3,0,7,0,6,0,14,0,14,0,12,0, + 28,0,24,0,56,0,56,0,48,0,112,0,96,0,224,0, + 12,16,32,14,1,0,15,0,49,192,48,224,96,224,96,96, + 224,112,224,112,224,112,224,112,224,112,224,112,96,96,112,96, + 112,192,56,192,15,0,10,16,32,14,2,0,6,0,62,0, + 254,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,31,0,255,192,11,16,32,14, + 1,0,15,128,57,192,112,224,112,224,128,224,0,192,1,192, + 3,128,3,0,7,0,14,0,28,32,56,32,48,32,127,224, + 255,224,11,16,32,14,1,0,31,0,115,128,113,192,225,192, + 1,192,3,128,7,128,15,192,3,192,1,224,0,224,0,224, + 0,224,128,192,193,192,63,0,11,16,32,14,2,0,0,128, + 3,128,7,128,7,128,13,128,13,128,25,128,49,128,49,128, + 97,128,255,224,1,128,1,128,1,128,3,192,15,224,11,16, + 32,14,1,0,63,224,63,192,32,0,32,0,96,0,96,0, + 127,0,99,192,1,192,0,224,0,224,0,224,0,224,1,192, + 193,192,63,0,12,16,32,14,1,0,1,192,7,0,28,0, + 56,0,112,0,96,0,239,128,240,224,224,224,224,112,224,112, + 224,112,112,112,112,96,56,192,15,128,12,16,32,14,1,0, + 127,240,127,224,192,96,128,192,0,192,1,192,1,128,1,128, + 3,0,3,0,7,0,6,0,14,0,28,0,28,0,56,0, + 11,16,32,13,1,0,15,128,57,192,112,224,112,224,120,224, + 125,192,63,128,31,128,63,192,115,224,225,224,224,224,224,224, + 224,192,113,128,31,0,12,17,34,14,1,255,15,128,49,192, + 96,224,224,224,224,112,224,112,224,112,240,112,112,240,31,112, + 0,96,0,224,0,224,1,192,3,128,30,0,56,0,4,13, + 13,7,2,255,112,240,240,224,0,0,0,0,0,112,240,240, + 224,5,17,17,7,1,251,56,120,120,48,0,0,0,0,0, + 48,248,120,56,48,48,96,192,11,9,18,12,1,3,0,96, + 3,192,31,128,252,0,240,0,248,0,63,0,7,192,0,224, + 11,5,10,12,1,5,255,224,0,0,0,0,0,0,255,224, + 11,9,18,12,1,3,192,0,248,0,63,0,7,192,1,224, + 15,192,126,0,240,0,192,0,9,20,40,12,1,255,63,0, + 119,128,227,128,227,128,195,128,3,128,3,0,7,0,6,0, + 14,0,12,0,12,0,12,0,12,0,0,0,0,0,28,0, + 60,0,60,0,56,0,20,23,69,23,2,251,0,252,0,3, + 255,0,14,7,128,24,1,192,48,0,224,32,0,96,96,242, + 112,97,142,48,195,14,48,195,14,48,199,14,48,199,14,48, + 199,14,48,199,14,96,199,158,96,227,255,192,99,239,128,113, + 199,0,120,0,0,60,0,64,31,3,192,15,255,0,3,252, + 0,17,17,51,17,0,0,0,192,0,1,192,0,3,192,0, + 3,224,0,2,224,0,6,240,0,6,112,0,6,112,0,12, + 120,0,12,56,0,15,248,0,24,28,0,24,28,0,16,28, + 0,48,14,0,48,14,0,252,63,128,13,17,34,16,1,0, + 127,192,248,224,56,112,56,112,56,112,56,112,56,224,63,192, + 56,240,56,112,56,56,56,56,56,56,56,56,56,48,56,112, + 255,192,13,17,34,15,1,0,7,240,24,120,48,48,112,0, + 96,0,96,0,224,0,224,0,224,0,224,0,224,0,240,0, + 112,0,120,8,60,56,31,224,15,128,16,17,34,17,0,0, + 127,224,248,120,56,60,56,30,56,30,56,15,56,15,56,15, + 56,15,56,15,56,15,56,15,56,30,56,30,56,60,56,120, + 255,224,13,17,34,14,1,0,255,240,120,48,120,48,120,32, + 120,32,120,0,120,0,120,0,127,192,120,128,120,0,120,0, + 120,0,120,16,120,24,120,48,255,240,12,17,34,14,1,0, + 255,240,120,48,120,48,120,48,120,32,120,0,120,0,120,0, + 127,192,120,128,120,0,120,0,120,0,120,0,120,0,120,0, + 254,0,14,17,34,16,1,0,3,240,12,120,48,48,48,0, + 112,0,96,0,224,0,224,0,224,0,224,252,224,56,224,56, + 112,56,112,56,60,56,31,240,7,192,17,17,51,18,0,0, + 254,63,128,60,30,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,63,254,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 254,63,128,7,17,17,9,1,0,254,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,254,12,22,44,9,252,251, + 7,240,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,128,1,128,51,0,126,0,252,0,16,17,34,17, + 1,0,254,126,56,56,56,48,56,112,56,224,57,192,59,128, + 63,0,63,0,59,128,57,192,57,224,56,240,56,120,56,60, + 56,31,254,30,13,17,34,14,1,0,254,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,8,56,24,56,24,255,240,21,17,51,23, + 1,0,248,1,248,56,1,224,60,1,224,60,3,224,62,3, + 224,62,6,224,63,6,224,55,12,224,39,140,224,35,156,224, + 35,152,224,33,216,224,33,240,224,97,240,224,96,224,224,112, + 224,224,248,67,248,18,17,51,18,0,0,248,15,192,124,3, + 0,60,3,0,62,3,0,63,3,0,55,131,0,51,195,0, + 51,195,0,49,227,0,48,243,0,48,123,0,48,123,0,48, + 63,0,48,31,0,48,15,0,48,7,0,252,3,0,15,17, + 34,17,1,0,7,192,24,112,48,56,48,28,96,28,96,14, + 224,14,224,14,224,14,224,14,224,14,224,12,112,28,112,24, + 56,24,28,32,7,192,14,17,34,15,0,0,127,224,248,120, + 56,56,56,28,56,28,56,28,56,28,56,56,60,112,59,224, + 56,0,56,0,56,0,56,0,56,0,56,0,254,0,18,22, + 66,17,1,251,7,192,0,24,112,0,48,56,0,48,28,0, + 96,28,0,96,14,0,224,14,0,224,14,0,224,14,0,224, + 14,0,224,14,0,224,14,0,112,28,0,112,28,0,56,24, + 0,28,48,0,7,192,0,0,112,0,0,60,64,0,31,192, + 0,15,128,0,3,0,16,17,34,16,0,0,63,192,248,112, + 56,56,56,56,56,56,56,56,56,112,63,240,63,192,57,192, + 56,224,56,224,56,112,56,120,56,60,56,63,254,30,12,17, + 34,14,1,0,15,240,48,240,64,32,192,0,224,0,248,0, + 126,0,63,128,31,192,7,224,0,240,0,112,0,48,192,48, + 192,32,240,64,255,128,15,17,34,16,0,0,255,254,195,134, + 195,134,131,134,131,132,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,7,192,15,224,17,17, + 51,18,0,0,254,31,128,56,6,0,56,6,0,56,6,0, + 56,6,0,56,6,0,56,6,0,56,6,0,56,6,0,56, + 6,0,56,6,0,56,6,0,56,6,0,56,4,0,28,12, + 0,14,24,0,3,224,0,18,17,51,18,0,0,254,15,192, + 56,7,0,60,6,0,28,6,0,28,6,0,30,12,0,14, + 12,0,15,24,0,7,24,0,7,24,0,7,176,0,3,176, + 0,3,176,0,1,224,0,1,224,0,1,224,0,0,128,0, + 23,17,51,23,0,0,254,24,126,56,24,24,56,56,24,56, + 60,16,28,60,48,28,110,48,28,110,48,28,110,48,14,199, + 96,14,199,96,14,135,96,15,131,224,15,131,224,7,1,192, + 7,1,192,7,1,192,6,0,128,17,17,51,17,0,0,255, + 63,0,60,12,0,28,24,0,30,24,0,15,48,0,7,112, + 0,7,224,0,3,192,0,1,192,0,3,224,0,3,240,0, + 6,112,0,12,120,0,12,60,0,24,28,0,56,30,0,252, + 63,128,16,17,34,17,0,0,248,31,60,14,28,12,14,24, + 15,24,7,48,7,48,3,224,3,224,1,192,1,192,1,192, + 1,192,1,192,1,192,1,192,7,240,13,17,34,15,1,0, + 127,248,96,240,64,240,193,224,1,192,3,192,7,128,7,128, + 15,0,15,0,30,0,60,0,60,0,120,24,120,24,240,24, + 255,248,6,25,25,9,3,252,252,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 252,11,25,50,13,1,252,192,0,192,0,224,0,96,0,112, + 0,112,0,48,0,56,0,24,0,24,0,28,0,12,0,14, + 0,6,0,6,0,7,0,3,0,3,0,3,128,1,128,1, + 192,0,192,0,192,0,224,0,96,6,25,25,8,0,252,252, + 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12, + 12,12,12,12,12,12,12,252,11,13,26,13,1,7,6,0, + 14,0,14,0,15,0,27,0,19,0,17,128,49,128,33,192, + 96,192,96,192,64,96,192,64,11,1,2,13,1,253,255,224, + 6,6,6,9,0,14,224,240,112,56,24,12,12,12,24,13, + 1,0,31,128,113,192,241,192,129,192,3,192,63,192,113,192, + 225,192,225,192,227,240,253,224,121,128,14,20,40,15,0,0, + 24,0,248,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,240,59,248,62,56,56,28,56,12,56,12,56,12,56,8, + 56,8,60,16,63,224,7,128,11,12,24,12,1,0,15,224, + 48,192,112,192,96,64,224,0,224,0,224,0,224,0,240,64, + 120,224,63,192,31,0,14,20,40,15,1,0,0,48,1,240, + 0,112,0,112,0,112,0,112,0,112,0,112,15,240,48,240, + 96,112,96,112,224,112,224,112,224,112,240,112,248,240,127,244, + 63,124,30,48,11,12,24,13,1,0,15,0,49,192,112,192, + 96,224,224,224,255,192,224,0,224,0,240,64,120,224,63,192, + 31,0,11,19,38,9,1,0,3,224,12,192,24,0,24,0, + 56,0,56,0,56,0,255,128,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,255,0,14,18, + 36,15,0,250,15,140,16,252,32,112,96,48,96,48,112,48, + 56,96,31,128,28,0,124,0,127,224,63,248,127,252,240,60, + 224,28,224,24,112,48,31,192,15,20,40,16,1,0,24,0, + 248,0,56,0,56,0,56,0,56,0,56,0,56,0,56,240, + 59,248,62,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,254,254,7,18,18,8,1,0,56,120,112,0, + 0,0,56,248,56,56,56,56,56,56,56,56,56,254,10,24, + 48,8,252,250,1,192,3,192,3,128,0,0,0,0,0,0, + 3,128,15,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,0,102,0, + 252,0,120,0,14,20,40,15,1,0,24,0,248,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,252,56,112,56,224, + 57,128,59,0,63,0,59,128,57,192,56,224,56,240,56,120, + 252,60,7,20,20,8,1,0,24,248,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,254,23,12,36,23, + 0,0,25,241,240,251,255,248,62,62,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,254,254,254,15,12,24,16,1,0,24,240,251,248, + 62,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,254,254,12,12,24,14,1,0,15,128,49,192,112,224, + 96,112,224,112,224,112,224,112,224,112,224,96,112,96,56,192, + 31,0,13,18,36,15,1,250,25,224,251,240,60,112,56,56, + 56,24,56,24,56,24,56,24,56,16,60,48,63,224,59,192, + 56,0,56,0,56,0,56,0,56,0,254,0,14,18,36,15, + 1,250,15,16,48,240,96,112,96,112,224,112,224,112,224,112, + 240,112,248,240,127,240,127,112,28,112,0,112,0,112,0,112, + 0,112,0,112,1,252,11,12,24,12,1,0,49,224,247,224, + 124,192,120,64,120,64,120,0,120,0,120,0,120,0,120,0, + 120,0,254,0,9,12,24,11,1,0,62,0,71,0,194,0, + 224,0,248,0,126,0,63,0,15,128,131,128,193,128,225,0, + 254,0,10,17,34,10,0,0,8,0,24,0,56,0,56,0, + 56,0,255,192,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,128,63,192,30,0,15,12,24,15,0,0, + 56,56,248,248,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,250,63,190,30,56,14,12,24,14,0,0,252,124, + 120,48,56,48,60,32,28,96,30,96,14,192,14,192,7,128, + 7,128,7,128,3,0,19,12,36,19,0,0,252,33,224,120, + 96,192,56,112,192,56,241,128,28,249,128,28,185,128,29,159, + 0,15,31,0,15,31,0,15,14,0,6,14,0,4,4,0, + 14,12,24,14,0,0,254,252,60,112,28,96,30,192,15,128, + 7,128,7,128,15,192,25,224,24,240,48,120,249,252,15,18, + 36,14,255,250,126,62,60,24,28,24,30,16,14,48,15,48, + 7,96,7,96,3,192,3,192,3,192,1,128,1,128,3,0, + 3,0,126,0,124,0,248,0,11,12,24,13,1,0,127,224, + 67,192,67,192,135,128,15,0,15,0,30,0,60,0,56,32, + 120,96,240,96,255,224,7,25,25,9,1,252,2,14,28,56, + 56,56,56,28,28,28,28,56,240,248,28,28,28,28,56,56, + 56,56,28,14,6,2,27,27,6,2,251,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,7,25,25,9,1,252,192,224,112,56, + 56,56,56,112,112,112,112,62,30,56,112,112,112,112,56,56, + 56,56,112,224,128,12,4,8,13,1,6,56,48,126,32,143, + 192,131,128,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,0,0,0,7,0,0,4,19,19,8,2,249, + 112,240,240,224,32,96,96,96,96,96,96,112,112,112,240,240, + 240,240,192,10,17,34,14,2,255,12,0,12,0,15,128,63, + 192,109,192,108,192,204,0,204,0,204,0,204,0,204,0,236, + 64,125,192,63,128,30,0,12,0,12,0,13,16,32,14,0, + 0,3,240,6,56,12,16,28,16,28,16,60,0,60,0,60, + 0,255,192,60,0,60,0,60,16,56,24,56,24,127,248,255, + 240,12,11,22,14,1,2,192,48,239,112,112,224,96,96,96, + 96,96,96,96,96,112,224,111,96,192,48,128,16,15,16,32, + 14,255,0,248,126,120,56,60,48,30,48,30,96,15,96,7, + 192,7,192,7,192,3,128,63,248,3,128,3,128,3,128,3, + 128,15,224,2,27,27,6,2,251,192,192,192,192,192,192,192, + 192,192,192,192,192,128,0,0,192,192,192,192,192,192,192,192, + 192,192,192,192,10,19,38,13,2,0,31,0,35,128,97,0, + 113,0,120,0,62,0,127,128,207,128,195,192,225,192,240,192, + 124,192,63,128,31,128,7,128,65,128,65,128,97,0,126,0, + 9,4,8,11,1,14,115,128,247,128,247,128,231,0,18,18, + 54,20,1,0,3,240,0,14,28,0,24,6,0,48,3,0, + 97,241,128,102,57,128,198,16,192,204,0,192,204,0,192,204, + 0,192,204,0,192,204,0,192,102,1,128,103,25,128,49,243, + 0,24,6,0,12,12,0,3,240,0,6,9,9,7,1,8, + 120,216,24,120,216,216,252,0,252,11,12,24,14,1,0,4, + 32,8,96,24,192,49,192,115,128,231,128,231,128,115,128,49, + 192,24,192,8,96,4,32,12,6,12,14,1,2,127,240,128, + 48,0,48,0,48,0,48,0,32,8,1,1,10,1,6,255, + 10,9,18,10,255,10,30,0,97,128,255,128,219,192,222,192, + 220,192,251,192,97,128,30,0,11,2,4,13,1,16,127,224, + 255,224,6,7,7,10,2,10,56,76,204,204,204,200,112,10, + 12,24,11,1,2,12,0,12,0,12,0,12,0,255,192,12, + 0,12,0,12,0,12,0,0,0,0,0,255,192,7,10,10, + 9,1,8,60,102,230,6,12,24,16,50,98,254,7,10,10, + 9,1,8,60,102,70,6,28,6,6,6,142,120,6,6,6, + 9,3,14,56,60,112,96,192,128,15,18,36,15,0,250,24, + 24,248,120,56,56,56,56,56,56,56,56,56,56,56,56,60, + 120,63,248,63,190,55,24,48,0,48,0,56,0,56,0,60, + 0,48,0,15,20,40,17,1,253,15,254,49,248,113,152,225, + 152,225,152,225,152,225,152,113,152,121,152,31,152,1,152,1, + 152,1,152,1,152,1,152,1,152,1,152,1,152,1,152,7, + 254,4,4,4,6,1,7,112,240,240,224,5,6,6,6,1, + 250,32,96,120,56,112,224,7,10,10,9,1,8,24,248,24, + 24,24,24,24,24,24,126,7,9,9,8,0,8,56,76,198, + 198,198,228,120,0,254,11,12,24,14,2,0,132,0,198,0, + 99,0,115,128,57,192,61,224,61,224,57,192,115,128,99,0, + 198,0,132,0,15,16,32,17,1,0,48,6,240,12,48,24, + 48,48,48,48,48,96,48,192,253,128,1,140,3,28,6,44, + 12,44,12,76,24,254,48,12,96,62,15,16,32,17,1,0, + 48,6,240,12,48,24,48,24,48,48,48,96,48,192,252,192, + 1,188,3,102,6,70,6,12,12,8,24,16,48,34,112,126, + 15,16,32,17,1,0,56,6,204,12,12,24,56,48,12,48, + 12,96,140,192,121,128,1,140,3,28,6,60,12,44,12,76, + 24,254,48,12,96,62,10,19,38,12,1,249,14,0,30,0, + 30,0,28,0,0,0,6,0,6,0,6,0,14,0,12,0, + 24,0,56,0,112,0,224,0,224,192,225,192,225,192,243,128, + 62,0,17,23,69,17,0,0,6,0,0,15,0,0,7,128, + 0,1,192,0,0,96,0,0,0,0,0,192,0,1,192,0, + 3,192,0,3,224,0,2,224,0,6,240,0,6,112,0,6, + 112,0,12,120,0,12,56,0,15,248,0,24,28,0,24,28, + 0,16,28,0,48,14,0,48,14,0,252,63,128,17,23,69, + 17,0,0,0,48,0,0,120,0,1,224,0,3,128,0,2, + 0,0,0,0,0,0,192,0,1,192,0,3,192,0,3,224, + 0,2,224,0,6,240,0,6,112,0,6,112,0,12,120,0, + 12,56,0,15,248,0,24,28,0,24,28,0,16,28,0,48, + 14,0,48,14,0,252,63,128,17,23,69,17,0,0,1,192, + 0,3,224,0,7,240,0,14,48,0,8,24,0,0,0,0, + 0,192,0,1,192,0,3,192,0,3,224,0,2,224,0,6, + 240,0,6,112,0,6,112,0,12,120,0,12,56,0,15,248, + 0,24,28,0,24,28,0,16,28,0,48,14,0,48,14,0, + 252,63,128,17,22,66,17,0,0,7,140,0,15,248,0,15, + 240,0,16,96,0,0,0,0,0,192,0,1,192,0,3,192, + 0,3,224,0,2,224,0,6,240,0,6,112,0,6,112,0, + 12,120,0,12,56,0,15,248,0,24,28,0,24,28,0,16, + 28,0,48,14,0,48,14,0,252,63,128,17,22,66,17,0, + 0,7,56,0,15,120,0,15,120,0,6,48,0,0,0,0, + 0,192,0,1,192,0,3,192,0,3,224,0,2,224,0,6, + 240,0,6,112,0,6,112,0,12,120,0,12,56,0,15,248, + 0,24,28,0,24,28,0,16,28,0,48,14,0,48,14,0, + 252,63,128,17,23,69,17,0,0,3,224,0,6,96,0,6, + 96,0,7,96,0,3,128,0,0,0,0,0,192,0,1,192, + 0,3,192,0,3,224,0,2,224,0,6,240,0,6,112,0, + 6,112,0,12,120,0,12,56,0,15,248,0,24,28,0,24, + 28,0,16,28,0,48,14,0,48,14,0,252,63,128,21,17, + 51,22,0,0,7,255,240,1,248,48,1,248,48,3,184,48, + 3,184,48,3,56,0,7,56,0,6,56,0,7,255,224,12, + 56,64,12,56,0,28,56,0,24,56,0,24,56,8,48,56, + 24,48,56,24,248,255,248,14,23,46,15,1,250,7,240,24, + 120,48,48,112,0,96,0,96,0,224,0,224,0,224,0,224, + 0,224,0,240,0,112,0,120,8,60,60,63,240,15,192,1, + 0,3,128,3,192,1,192,3,128,6,0,13,23,46,14,1, + 0,24,0,60,0,94,0,7,0,1,128,0,0,255,240,120, + 48,120,48,120,32,120,32,120,0,120,0,120,0,127,192,120, + 128,120,0,120,0,120,0,120,16,120,24,120,48,255,240,13, + 23,46,14,1,0,1,192,3,224,7,128,14,0,24,0,0, + 0,255,240,120,48,120,48,120,32,120,32,120,0,120,0,120, + 0,127,192,120,128,120,0,120,0,120,0,120,16,120,24,120, + 48,255,240,13,23,46,14,1,0,7,0,15,0,31,128,56, + 192,32,96,0,0,255,240,120,48,120,48,120,32,120,32,120, + 0,120,0,120,0,127,192,120,128,120,0,120,0,120,0,120, + 16,120,24,120,48,255,240,13,22,44,14,1,0,28,224,61, + 224,61,224,24,192,0,0,255,240,120,48,120,48,120,32,120, + 32,120,0,120,0,120,0,127,192,120,128,120,0,120,0,120, + 0,120,16,120,24,120,48,255,240,8,23,23,9,0,0,96, + 240,120,28,6,0,127,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,127,8,23,23,9,1,0,6,31,60,112, + 64,0,254,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,254,9,23,46,9,0,0,28,0,62,0,126,0,227, + 0,129,128,0,0,127,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,127,0,9,22,44,9,0,0,115,128,247, + 128,247,128,99,0,0,0,127,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,127,0,16,17,34,17,0,0,63, + 224,248,120,56,60,56,30,56,30,56,15,56,15,56,15,255, + 143,56,15,56,15,56,15,56,30,56,30,56,60,56,120,255, + 224,18,22,66,18,0,0,3,204,0,7,248,0,15,248,0, + 8,112,0,0,0,0,248,15,192,124,3,0,60,3,0,62, + 3,0,63,3,0,55,131,0,51,195,0,51,195,0,49,227, + 0,48,243,0,48,123,0,48,123,0,48,63,0,48,31,0, + 48,15,0,48,7,0,252,3,0,15,23,46,17,1,0,12, + 0,30,0,15,0,3,128,0,64,0,0,7,192,24,112,48, + 56,48,28,96,28,96,14,224,14,224,14,224,14,224,14,224, + 14,224,12,112,28,112,24,56,24,28,32,7,192,15,23,46, + 17,1,0,0,96,0,240,3,224,7,0,4,0,0,0,7, + 192,24,112,48,56,48,28,96,28,96,14,224,14,224,14,224, + 14,224,14,224,14,224,12,112,28,112,24,56,24,28,32,7, + 192,15,23,46,17,1,0,3,128,7,192,15,224,28,96,16, + 48,0,0,7,192,24,112,48,56,48,28,96,28,96,14,224, + 14,224,14,224,14,224,14,224,14,224,12,112,28,112,24,56, + 24,28,32,7,192,15,22,44,17,1,0,15,24,31,240,31, + 224,48,192,0,0,7,192,24,112,48,56,48,28,96,28,96, + 14,224,14,224,14,224,14,224,14,224,14,224,12,112,28,112, + 24,56,24,28,32,7,192,15,22,44,17,1,0,14,112,30, + 240,30,240,12,96,0,0,7,192,24,112,48,56,48,28,96, + 28,96,14,224,14,224,14,224,14,224,14,224,14,224,12,112, + 28,112,24,56,24,28,32,7,192,9,9,18,11,1,3,193, + 128,227,128,119,0,62,0,28,0,62,0,119,0,227,128,193, + 128,15,18,36,17,1,255,7,238,8,124,56,56,48,60,112, + 124,96,254,224,238,225,206,227,142,227,14,231,14,254,12,124, + 28,124,24,56,48,124,32,239,192,128,0,17,23,69,18,0, + 0,3,0,0,7,128,0,3,192,0,0,224,0,0,48,0, + 0,0,0,254,31,128,56,6,0,56,6,0,56,6,0,56, + 6,0,56,6,0,56,6,0,56,6,0,56,6,0,56,6, + 0,56,6,0,56,6,0,56,6,0,56,4,0,28,12,0, + 14,24,0,3,224,0,17,23,69,18,0,0,0,56,0,0, + 124,0,0,240,0,1,192,0,3,0,0,0,0,0,254,31, + 128,56,6,0,56,6,0,56,6,0,56,6,0,56,6,0, + 56,6,0,56,6,0,56,6,0,56,6,0,56,6,0,56, + 6,0,56,6,0,56,4,0,28,12,0,14,24,0,3,224, + 0,17,23,69,18,0,0,0,224,0,1,224,0,3,240,0, + 7,24,0,4,12,0,0,0,0,254,31,128,56,6,0,56, + 6,0,56,6,0,56,6,0,56,6,0,56,6,0,56,6, + 0,56,6,0,56,6,0,56,6,0,56,6,0,56,6,0, + 56,4,0,28,12,0,14,24,0,3,224,0,17,22,66,18, + 0,0,3,156,0,7,188,0,7,188,0,3,24,0,0,0, + 0,254,31,128,56,6,0,56,6,0,56,6,0,56,6,0, + 56,6,0,56,6,0,56,6,0,56,6,0,56,6,0,56, + 6,0,56,6,0,56,6,0,56,4,0,28,12,0,14,24, + 0,3,224,0,16,23,46,17,0,0,0,48,0,248,1,224, + 3,128,2,0,0,0,248,31,60,14,28,12,14,24,15,24, + 7,48,7,48,3,224,3,224,1,192,1,192,1,192,1,192, + 1,192,1,192,1,192,7,240,14,17,34,15,0,0,254,0, + 56,0,56,0,63,192,56,112,56,56,56,28,56,28,56,28, + 56,28,56,56,56,112,59,224,56,0,56,0,56,0,254,0, + 15,20,40,17,0,0,1,240,6,60,12,28,24,14,24,14, + 56,14,56,28,56,56,56,96,56,192,56,192,56,224,56,120, + 56,60,56,30,56,14,57,6,57,134,57,132,249,248,12,20, + 40,13,1,0,56,0,60,0,28,0,14,0,6,0,3,0, + 0,0,0,0,31,128,113,192,241,192,129,192,3,192,63,192, + 113,192,225,192,225,192,227,240,253,224,121,128,12,20,40,13, + 1,0,3,192,3,192,7,128,7,0,14,0,12,0,0,0, + 0,0,31,128,113,192,241,192,129,192,3,192,63,192,113,192, + 225,192,225,192,227,240,253,224,121,128,12,20,40,13,1,0, + 6,0,15,0,31,0,59,128,48,192,96,64,0,0,0,0, + 31,128,113,192,241,192,129,192,3,192,63,192,113,192,225,192, + 225,192,227,240,253,224,121,128,12,19,38,13,1,0,0,32, + 28,96,63,192,71,192,67,128,0,0,0,0,31,128,113,192, + 241,192,129,192,3,192,63,192,113,192,225,192,225,192,227,240, + 253,224,121,128,12,18,36,13,1,0,57,192,61,224,57,192, + 57,192,0,0,0,0,31,128,113,192,241,192,129,192,3,192, + 63,192,113,192,225,192,225,192,227,240,253,224,121,128,12,19, + 38,13,1,0,15,0,27,0,25,128,27,0,30,0,0,0, + 0,0,31,128,113,192,241,192,129,192,3,192,63,192,113,192, + 225,192,225,192,227,240,253,224,121,128,18,12,36,20,1,0, + 7,158,0,31,227,0,56,225,128,112,193,128,64,193,128,15, + 255,0,56,192,0,96,192,0,224,224,128,227,241,192,254,127, + 0,124,62,0,11,18,36,12,1,250,15,224,48,192,112,192, + 96,64,224,0,224,0,224,0,224,0,240,64,120,192,63,128, + 31,0,4,0,14,0,15,0,7,0,14,0,24,0,11,20, + 40,13,1,0,60,0,60,0,30,0,14,0,7,0,1,0, + 0,0,0,0,15,0,49,192,112,192,96,224,224,224,255,192, + 224,0,224,0,240,64,120,224,63,192,31,0,11,20,40,13, + 1,0,1,192,3,192,3,128,7,0,6,0,12,0,0,0, + 0,0,15,0,49,192,112,192,96,224,224,224,255,192,224,0, + 224,0,240,64,120,224,63,192,31,0,11,20,40,13,1,0, + 6,0,15,0,31,128,29,128,48,192,32,96,0,0,0,0, + 15,0,49,192,112,192,96,224,224,224,255,192,224,0,224,0, + 240,64,120,224,63,192,31,0,11,18,36,13,1,0,24,192, + 61,224,61,224,57,192,0,0,0,0,15,0,49,192,112,192, + 96,224,224,224,255,192,224,0,224,0,240,64,120,224,63,192, + 31,0,8,20,20,8,0,0,240,240,120,24,12,4,0,0, + 28,124,28,28,28,28,28,28,28,28,28,127,7,20,20,8, + 1,0,14,30,28,56,48,96,0,0,56,248,56,56,56,56, + 56,56,56,56,56,254,9,20,40,8,0,0,24,0,60,0, + 126,0,118,0,195,0,129,128,0,0,0,0,28,0,124,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,127,0,9,18,36,8,0,0,115,128,247,128,247,128, + 231,0,0,0,0,0,28,0,124,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,127,0,12,19, + 38,14,1,0,12,0,126,112,15,224,15,128,61,192,0,224, + 0,224,15,224,49,240,96,240,96,112,224,112,224,112,224,112, + 224,96,224,96,112,192,56,128,31,0,15,19,38,16,1,0, + 0,16,14,48,31,224,51,224,33,192,0,0,0,0,24,240, + 251,248,62,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,254,254,12,20,40,14,1,0,28,0,60,0, + 14,0,6,0,3,0,1,128,0,0,0,0,15,128,49,192, + 112,224,96,112,224,112,224,112,224,112,224,112,224,96,112,96, + 56,192,31,0,12,20,40,14,1,0,1,192,3,224,3,128, + 7,0,6,0,12,0,0,0,0,0,15,128,49,192,112,224, + 96,112,224,112,224,112,224,112,224,112,224,96,112,96,56,192, + 31,0,12,20,40,14,1,0,7,0,15,0,15,128,29,192, + 56,192,32,96,0,0,0,0,15,128,49,192,112,224,96,112, + 224,112,224,112,224,112,224,112,224,96,112,96,56,192,31,0, + 12,19,38,14,1,0,0,48,30,32,63,224,39,192,65,128, + 0,0,0,0,15,128,49,192,112,224,96,112,224,112,224,112, + 224,112,224,112,224,96,112,96,56,192,31,0,12,18,36,14, + 1,0,28,224,61,224,61,224,24,192,0,0,0,0,15,128, + 49,192,112,224,96,112,224,112,224,112,224,112,224,112,224,96, + 112,96,56,192,31,0,10,10,20,11,1,2,12,0,12,0, + 12,0,0,0,255,192,0,0,0,0,12,0,12,0,12,0, + 12,14,28,14,1,255,0,16,15,176,49,224,112,224,97,240, + 227,112,230,112,230,112,236,112,248,96,112,224,120,192,95,0, + 128,0,15,20,40,15,0,0,14,0,15,0,7,0,3,128, + 1,128,0,192,0,0,0,0,56,56,248,248,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,250,63,190,30,56, + 15,20,40,15,0,0,0,224,0,240,1,192,1,128,3,0, + 2,0,0,0,0,0,56,56,248,248,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,250,63,190,30,56,15,20, + 40,15,0,0,3,128,3,192,7,192,14,224,28,112,24,16, + 0,0,0,0,56,56,248,248,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,250,63,190,30,56,15,18,36,15, + 0,0,14,112,14,112,30,240,14,112,0,0,0,0,56,56, + 248,248,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,250,63,190,30,56,15,26,52,14,255,250,0,112,0,240, + 0,224,1,192,1,128,3,0,0,0,0,0,126,62,60,24, + 28,24,30,16,14,48,15,48,7,96,7,96,3,192,3,192, + 3,192,1,128,1,128,3,0,3,0,126,0,124,0,248,0, + 13,26,52,15,1,250,24,0,248,0,56,0,56,0,56,0, + 56,0,56,0,56,0,57,224,63,240,60,112,56,56,56,24, + 56,24,56,24,56,24,56,16,60,48,63,224,59,192,56,0, + 56,0,56,0,56,0,56,0,254,0,15,24,48,14,255,250, + 7,56,15,120,15,120,14,112,0,0,0,0,126,62,60,24, + 28,24,30,16,14,48,15,48,7,96,7,96,3,192,3,192, + 3,192,1,128,1,128,3,0,3,0,126,0,124,0,248,0 + }; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--27-270-72-72-P-135-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 16 + Calculated Max Values w=12 h=25 x= 2 y= 9 dx=14 dy= 0 ascent=21 len=50 + Font Bounding box w=42 h=39 x=-14 y=-10 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =16 descent= 0 + X Font ascent =16 descent= 0 + Max Font ascent =21 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb17n[542] U8G_SECTION(".progmem.u8g_font_gdb17n") = { + 0,42,39,242,246,16,0,0,0,0,42,57,0,21,251,16, + 0,10,12,24,12,1,9,12,0,12,0,204,128,237,192,255, + 192,63,0,63,0,255,192,237,192,76,128,12,0,12,0,10, + 10,20,11,1,2,12,0,12,0,12,0,12,0,255,192,12, + 0,12,0,12,0,12,0,12,0,5,8,8,7,1,251,48, + 248,120,56,48,48,96,192,8,1,1,10,1,6,255,4,4, + 4,7,2,255,112,240,240,224,12,25,50,13,0,252,0,48, + 0,112,0,112,0,96,0,224,0,192,1,192,1,192,1,128, + 3,128,3,128,3,0,7,0,6,0,14,0,14,0,12,0, + 28,0,24,0,56,0,56,0,48,0,112,0,96,0,224,0, + 12,16,32,14,1,0,15,0,49,192,48,224,96,224,96,96, + 224,112,224,112,224,112,224,112,224,112,224,112,96,96,112,96, + 112,192,56,192,15,0,10,16,32,14,2,0,6,0,62,0, + 254,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,31,0,255,192,11,16,32,14, + 1,0,15,128,57,192,112,224,112,224,128,224,0,192,1,192, + 3,128,3,0,7,0,14,0,28,32,56,32,48,32,127,224, + 255,224,11,16,32,14,1,0,31,0,115,128,113,192,225,192, + 1,192,3,128,7,128,15,192,3,192,1,224,0,224,0,224, + 0,224,128,192,193,192,63,0,11,16,32,14,2,0,0,128, + 3,128,7,128,7,128,13,128,13,128,25,128,49,128,49,128, + 97,128,255,224,1,128,1,128,1,128,3,192,15,224,11,16, + 32,14,1,0,63,224,63,192,32,0,32,0,96,0,96,0, + 127,0,99,192,1,192,0,224,0,224,0,224,0,224,1,192, + 193,192,63,0,12,16,32,14,1,0,1,192,7,0,28,0, + 56,0,112,0,96,0,239,128,240,224,224,224,224,112,224,112, + 224,112,112,112,112,96,56,192,15,128,12,16,32,14,1,0, + 127,240,127,224,192,96,128,192,0,192,1,192,1,128,1,128, + 3,0,3,0,7,0,6,0,14,0,28,0,28,0,56,0, + 11,16,32,13,1,0,15,128,57,192,112,224,112,224,120,224, + 125,192,63,128,31,128,63,192,115,224,225,224,224,224,224,224, + 224,192,113,128,31,0,12,17,34,14,1,255,15,128,49,192, + 96,224,224,224,224,112,224,112,224,112,240,112,112,240,31,112, + 0,96,0,224,0,224,1,192,3,128,30,0,56,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--27-270-72-72-P-135-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 17, '1' Height: 16 + Calculated Max Values w=23 h=27 x= 3 y=14 dx=23 dy= 0 ascent=22 len=69 + Font Bounding box w=42 h=39 x=-14 y=-10 + Calculated Min Values x=-4 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-6 + X Font ascent =21 descent=-6 + Max Font ascent =22 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb17r[3540] U8G_SECTION(".progmem.u8g_font_gdb17r") = { + 0,42,39,242,246,17,4,81,9,172,32,127,250,22,250,21, + 250,0,0,0,7,0,0,4,21,21,8,2,255,48,240,240, + 240,240,112,112,96,96,96,96,96,96,96,64,0,0,112,240, + 240,224,9,9,18,13,2,11,113,128,231,128,231,128,231,128, + 227,0,227,0,99,0,99,0,99,0,13,15,30,14,1,2, + 2,32,6,96,6,96,6,96,12,96,63,248,76,192,24,128, + 25,128,255,224,51,0,51,0,51,0,35,0,102,0,11,20, + 40,13,1,254,6,0,6,0,31,128,127,224,230,224,198,96, + 198,0,246,0,126,0,63,128,7,192,6,224,6,96,198,96, + 198,96,246,192,255,192,31,0,6,0,6,0,18,17,51,20, + 1,0,0,1,0,60,6,0,102,14,0,195,12,0,195,24, + 0,195,48,0,195,112,0,195,96,0,102,192,0,61,143,0, + 3,144,128,3,48,192,6,48,192,12,48,192,24,48,192,56, + 25,128,48,15,0,17,19,57,18,1,0,7,128,0,25,224, + 0,16,224,0,48,224,0,48,224,0,49,192,0,63,128,0, + 63,0,0,30,0,0,62,63,128,127,29,0,127,140,0,239, + 140,0,231,204,0,227,248,0,225,248,0,96,252,0,112,255, + 0,31,14,128,4,9,9,7,2,11,112,224,224,224,224,224, + 96,96,96,7,25,25,9,2,252,4,14,28,56,48,112,112, + 112,224,224,224,224,224,224,224,224,224,96,112,112,48,56,28, + 12,6,7,25,25,9,0,252,64,224,112,56,24,28,28,28, + 14,14,14,14,14,14,14,14,14,28,28,28,56,56,112,96, + 192,10,12,24,12,1,9,12,0,12,0,204,128,237,192,255, + 192,63,0,63,0,255,192,237,192,76,128,12,0,12,0,10, + 10,20,11,1,2,12,0,12,0,12,0,12,0,255,192,12, + 0,12,0,12,0,12,0,12,0,5,8,8,7,1,251,48, + 248,120,56,48,48,96,192,8,1,1,10,1,6,255,4,4, + 4,7,2,255,112,240,240,224,12,25,50,13,0,252,0,48, + 0,112,0,112,0,96,0,224,0,192,1,192,1,192,1,128, + 3,128,3,128,3,0,7,0,6,0,14,0,14,0,12,0, + 28,0,24,0,56,0,56,0,48,0,112,0,96,0,224,0, + 12,16,32,14,1,0,15,0,49,192,48,224,96,224,96,96, + 224,112,224,112,224,112,224,112,224,112,224,112,96,96,112,96, + 112,192,56,192,15,0,10,16,32,14,2,0,6,0,62,0, + 254,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,31,0,255,192,11,16,32,14, + 1,0,15,128,57,192,112,224,112,224,128,224,0,192,1,192, + 3,128,3,0,7,0,14,0,28,32,56,32,48,32,127,224, + 255,224,11,16,32,14,1,0,31,0,115,128,113,192,225,192, + 1,192,3,128,7,128,15,192,3,192,1,224,0,224,0,224, + 0,224,128,192,193,192,63,0,11,16,32,14,2,0,0,128, + 3,128,7,128,7,128,13,128,13,128,25,128,49,128,49,128, + 97,128,255,224,1,128,1,128,1,128,3,192,15,224,11,16, + 32,14,1,0,63,224,63,192,32,0,32,0,96,0,96,0, + 127,0,99,192,1,192,0,224,0,224,0,224,0,224,1,192, + 193,192,63,0,12,16,32,14,1,0,1,192,7,0,28,0, + 56,0,112,0,96,0,239,128,240,224,224,224,224,112,224,112, + 224,112,112,112,112,96,56,192,15,128,12,16,32,14,1,0, + 127,240,127,224,192,96,128,192,0,192,1,192,1,128,1,128, + 3,0,3,0,7,0,6,0,14,0,28,0,28,0,56,0, + 11,16,32,13,1,0,15,128,57,192,112,224,112,224,120,224, + 125,192,63,128,31,128,63,192,115,224,225,224,224,224,224,224, + 224,192,113,128,31,0,12,17,34,14,1,255,15,128,49,192, + 96,224,224,224,224,112,224,112,224,112,240,112,112,240,31,112, + 0,96,0,224,0,224,1,192,3,128,30,0,56,0,4,13, + 13,7,2,255,112,240,240,224,0,0,0,0,0,112,240,240, + 224,5,17,17,7,1,251,56,120,120,48,0,0,0,0,0, + 48,248,120,56,48,48,96,192,11,9,18,12,1,3,0,96, + 3,192,31,128,252,0,240,0,248,0,63,0,7,192,0,224, + 11,5,10,12,1,5,255,224,0,0,0,0,0,0,255,224, + 11,9,18,12,1,3,192,0,248,0,63,0,7,192,1,224, + 15,192,126,0,240,0,192,0,9,20,40,12,1,255,63,0, + 119,128,227,128,227,128,195,128,3,128,3,0,7,0,6,0, + 14,0,12,0,12,0,12,0,12,0,0,0,0,0,28,0, + 60,0,60,0,56,0,20,23,69,23,2,251,0,252,0,3, + 255,0,14,7,128,24,1,192,48,0,224,32,0,96,96,242, + 112,97,142,48,195,14,48,195,14,48,199,14,48,199,14,48, + 199,14,48,199,14,96,199,158,96,227,255,192,99,239,128,113, + 199,0,120,0,0,60,0,64,31,3,192,15,255,0,3,252, + 0,17,17,51,17,0,0,0,192,0,1,192,0,3,192,0, + 3,224,0,2,224,0,6,240,0,6,112,0,6,112,0,12, + 120,0,12,56,0,15,248,0,24,28,0,24,28,0,16,28, + 0,48,14,0,48,14,0,252,63,128,13,17,34,16,1,0, + 127,192,248,224,56,112,56,112,56,112,56,112,56,224,63,192, + 56,240,56,112,56,56,56,56,56,56,56,56,56,48,56,112, + 255,192,13,17,34,15,1,0,7,240,24,120,48,48,112,0, + 96,0,96,0,224,0,224,0,224,0,224,0,224,0,240,0, + 112,0,120,8,60,56,31,224,15,128,16,17,34,17,0,0, + 127,224,248,120,56,60,56,30,56,30,56,15,56,15,56,15, + 56,15,56,15,56,15,56,15,56,30,56,30,56,60,56,120, + 255,224,13,17,34,14,1,0,255,240,120,48,120,48,120,32, + 120,32,120,0,120,0,120,0,127,192,120,128,120,0,120,0, + 120,0,120,16,120,24,120,48,255,240,12,17,34,14,1,0, + 255,240,120,48,120,48,120,48,120,32,120,0,120,0,120,0, + 127,192,120,128,120,0,120,0,120,0,120,0,120,0,120,0, + 254,0,14,17,34,16,1,0,3,240,12,120,48,48,48,0, + 112,0,96,0,224,0,224,0,224,0,224,252,224,56,224,56, + 112,56,112,56,60,56,31,240,7,192,17,17,51,18,0,0, + 254,63,128,60,30,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,63,254,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 254,63,128,7,17,17,9,1,0,254,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,254,12,22,44,9,252,251, + 7,240,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,192,1,192,1,192,1,192,1,192,1,192,1,192, + 1,192,1,128,1,128,51,0,126,0,252,0,16,17,34,17, + 1,0,254,126,56,56,56,48,56,112,56,224,57,192,59,128, + 63,0,63,0,59,128,57,192,57,224,56,240,56,120,56,60, + 56,31,254,30,13,17,34,14,1,0,254,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,8,56,24,56,24,255,240,21,17,51,23, + 1,0,248,1,248,56,1,224,60,1,224,60,3,224,62,3, + 224,62,6,224,63,6,224,55,12,224,39,140,224,35,156,224, + 35,152,224,33,216,224,33,240,224,97,240,224,96,224,224,112, + 224,224,248,67,248,18,17,51,18,0,0,248,15,192,124,3, + 0,60,3,0,62,3,0,63,3,0,55,131,0,51,195,0, + 51,195,0,49,227,0,48,243,0,48,123,0,48,123,0,48, + 63,0,48,31,0,48,15,0,48,7,0,252,3,0,15,17, + 34,17,1,0,7,192,24,112,48,56,48,28,96,28,96,14, + 224,14,224,14,224,14,224,14,224,14,224,12,112,28,112,24, + 56,24,28,32,7,192,14,17,34,15,0,0,127,224,248,120, + 56,56,56,28,56,28,56,28,56,28,56,56,60,112,59,224, + 56,0,56,0,56,0,56,0,56,0,56,0,254,0,18,22, + 66,17,1,251,7,192,0,24,112,0,48,56,0,48,28,0, + 96,28,0,96,14,0,224,14,0,224,14,0,224,14,0,224, + 14,0,224,14,0,224,14,0,112,28,0,112,28,0,56,24, + 0,28,48,0,7,192,0,0,112,0,0,60,64,0,31,192, + 0,15,128,0,3,0,16,17,34,16,0,0,63,192,248,112, + 56,56,56,56,56,56,56,56,56,112,63,240,63,192,57,192, + 56,224,56,224,56,112,56,120,56,60,56,63,254,30,12,17, + 34,14,1,0,15,240,48,240,64,32,192,0,224,0,248,0, + 126,0,63,128,31,192,7,224,0,240,0,112,0,48,192,48, + 192,32,240,64,255,128,15,17,34,16,0,0,255,254,195,134, + 195,134,131,134,131,132,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,7,192,15,224,17,17, + 51,18,0,0,254,31,128,56,6,0,56,6,0,56,6,0, + 56,6,0,56,6,0,56,6,0,56,6,0,56,6,0,56, + 6,0,56,6,0,56,6,0,56,6,0,56,4,0,28,12, + 0,14,24,0,3,224,0,18,17,51,18,0,0,254,15,192, + 56,7,0,60,6,0,28,6,0,28,6,0,30,12,0,14, + 12,0,15,24,0,7,24,0,7,24,0,7,176,0,3,176, + 0,3,176,0,1,224,0,1,224,0,1,224,0,0,128,0, + 23,17,51,23,0,0,254,24,126,56,24,24,56,56,24,56, + 60,16,28,60,48,28,110,48,28,110,48,28,110,48,14,199, + 96,14,199,96,14,135,96,15,131,224,15,131,224,7,1,192, + 7,1,192,7,1,192,6,0,128,17,17,51,17,0,0,255, + 63,0,60,12,0,28,24,0,30,24,0,15,48,0,7,112, + 0,7,224,0,3,192,0,1,192,0,3,224,0,3,240,0, + 6,112,0,12,120,0,12,60,0,24,28,0,56,30,0,252, + 63,128,16,17,34,17,0,0,248,31,60,14,28,12,14,24, + 15,24,7,48,7,48,3,224,3,224,1,192,1,192,1,192, + 1,192,1,192,1,192,1,192,7,240,13,17,34,15,1,0, + 127,248,96,240,64,240,193,224,1,192,3,192,7,128,7,128, + 15,0,15,0,30,0,60,0,60,0,120,24,120,24,240,24, + 255,248,6,25,25,9,3,252,252,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 252,11,25,50,13,1,252,192,0,192,0,224,0,96,0,112, + 0,112,0,48,0,56,0,24,0,24,0,28,0,12,0,14, + 0,6,0,6,0,7,0,3,0,3,0,3,128,1,128,1, + 192,0,192,0,192,0,224,0,96,6,25,25,8,0,252,252, + 12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12, + 12,12,12,12,12,12,12,252,11,13,26,13,1,7,6,0, + 14,0,14,0,15,0,27,0,19,0,17,128,49,128,33,192, + 96,192,96,192,64,96,192,64,11,1,2,13,1,253,255,224, + 6,6,6,9,0,14,224,240,112,56,24,12,12,12,24,13, + 1,0,31,128,113,192,241,192,129,192,3,192,63,192,113,192, + 225,192,225,192,227,240,253,224,121,128,14,20,40,15,0,0, + 24,0,248,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,240,59,248,62,56,56,28,56,12,56,12,56,12,56,8, + 56,8,60,16,63,224,7,128,11,12,24,12,1,0,15,224, + 48,192,112,192,96,64,224,0,224,0,224,0,224,0,240,64, + 120,224,63,192,31,0,14,20,40,15,1,0,0,48,1,240, + 0,112,0,112,0,112,0,112,0,112,0,112,15,240,48,240, + 96,112,96,112,224,112,224,112,224,112,240,112,248,240,127,244, + 63,124,30,48,11,12,24,13,1,0,15,0,49,192,112,192, + 96,224,224,224,255,192,224,0,224,0,240,64,120,224,63,192, + 31,0,11,19,38,9,1,0,3,224,12,192,24,0,24,0, + 56,0,56,0,56,0,255,128,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,255,0,14,18, + 36,15,0,250,15,140,16,252,32,112,96,48,96,48,112,48, + 56,96,31,128,28,0,124,0,127,224,63,248,127,252,240,60, + 224,28,224,24,112,48,31,192,15,20,40,16,1,0,24,0, + 248,0,56,0,56,0,56,0,56,0,56,0,56,0,56,240, + 59,248,62,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,254,254,7,18,18,8,1,0,56,120,112,0, + 0,0,56,248,56,56,56,56,56,56,56,56,56,254,10,24, + 48,8,252,250,1,192,3,192,3,128,0,0,0,0,0,0, + 3,128,15,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,0,102,0, + 252,0,120,0,14,20,40,15,1,0,24,0,248,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,252,56,112,56,224, + 57,128,59,0,63,0,59,128,57,192,56,224,56,240,56,120, + 252,60,7,20,20,8,1,0,24,248,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,254,23,12,36,23, + 0,0,25,241,240,251,255,248,62,62,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,254,254,254,15,12,24,16,1,0,24,240,251,248, + 62,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,254,254,12,12,24,14,1,0,15,128,49,192,112,224, + 96,112,224,112,224,112,224,112,224,112,224,96,112,96,56,192, + 31,0,13,18,36,15,1,250,25,224,251,240,60,112,56,56, + 56,24,56,24,56,24,56,24,56,16,60,48,63,224,59,192, + 56,0,56,0,56,0,56,0,56,0,254,0,14,18,36,15, + 1,250,15,16,48,240,96,112,96,112,224,112,224,112,224,112, + 240,112,248,240,127,240,127,112,28,112,0,112,0,112,0,112, + 0,112,0,112,1,252,11,12,24,12,1,0,49,224,247,224, + 124,192,120,64,120,64,120,0,120,0,120,0,120,0,120,0, + 120,0,254,0,9,12,24,11,1,0,62,0,71,0,194,0, + 224,0,248,0,126,0,63,0,15,128,131,128,193,128,225,0, + 254,0,10,17,34,10,0,0,8,0,24,0,56,0,56,0, + 56,0,255,192,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,128,63,192,30,0,15,12,24,15,0,0, + 56,56,248,248,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,250,63,190,30,56,14,12,24,14,0,0,252,124, + 120,48,56,48,60,32,28,96,30,96,14,192,14,192,7,128, + 7,128,7,128,3,0,19,12,36,19,0,0,252,33,224,120, + 96,192,56,112,192,56,241,128,28,249,128,28,185,128,29,159, + 0,15,31,0,15,31,0,15,14,0,6,14,0,4,4,0, + 14,12,24,14,0,0,254,252,60,112,28,96,30,192,15,128, + 7,128,7,128,15,192,25,224,24,240,48,120,249,252,15,18, + 36,14,255,250,126,62,60,24,28,24,30,16,14,48,15,48, + 7,96,7,96,3,192,3,192,3,192,1,128,1,128,3,0, + 3,0,126,0,124,0,248,0,11,12,24,13,1,0,127,224, + 67,192,67,192,135,128,15,0,15,0,30,0,60,0,56,32, + 120,96,240,96,255,224,7,25,25,9,1,252,2,14,28,56, + 56,56,56,28,28,28,28,56,240,248,28,28,28,28,56,56, + 56,56,28,14,6,2,27,27,6,2,251,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,7,25,25,9,1,252,192,224,112,56, + 56,56,56,112,112,112,112,62,30,56,112,112,112,112,56,56, + 56,56,112,224,128,12,4,8,13,1,6,56,48,126,32,143, + 192,131,128,255}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--32-320-72-72-P-159-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 20, '1' Height: 19 + Calculated Max Values w=27 h=32 x= 3 y=18 dx=28 dy= 0 ascent=28 len=112 + Font Bounding box w=49 h=47 x=-16 y=-12 + Calculated Min Values x=-5 y=-9 dx= 0 dy= 0 + Pure Font ascent =20 descent=-8 + X Font ascent =25 descent=-8 + Max Font ascent =28 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb20[10077] U8G_SECTION(".progmem.u8g_font_gdb20") = { + 0,49,47,240,244,20,5,86,12,137,32,255,248,28,247,25, + 248,0,0,0,8,0,0,5,24,24,10,2,255,24,120,120, + 120,120,120,120,120,120,112,112,112,112,48,48,48,48,0,0, + 112,248,248,248,112,11,10,20,15,2,13,56,224,243,224,241, + 224,241,192,113,192,113,192,113,192,113,192,112,192,96,192,15, + 18,36,16,1,2,1,140,3,152,3,24,3,24,3,56,63, + 254,63,254,6,112,14,96,12,96,12,96,127,252,255,248,24, + 192,24,192,57,128,49,128,49,128,14,25,50,16,1,253,3, + 0,3,0,3,0,31,240,63,248,115,120,227,56,227,16,243, + 0,255,0,127,0,63,224,15,240,3,248,3,124,3,28,195, + 28,195,28,227,28,251,120,255,240,63,224,3,0,3,0,3, + 0,21,20,60,23,1,0,0,0,96,30,0,192,115,129,192, + 97,131,128,225,195,0,225,198,0,225,206,0,225,220,0,97, + 152,0,115,176,0,30,113,224,0,231,112,1,198,48,1,142, + 56,3,142,56,7,14,56,14,14,56,12,6,48,28,7,48, + 56,3,192,21,23,69,22,1,0,1,240,0,7,120,0,14, + 60,0,14,60,0,30,60,0,30,124,0,30,120,0,31,240, + 0,31,224,0,15,192,0,15,128,0,31,143,248,63,195,160, + 123,225,128,123,241,128,241,249,128,240,251,0,240,127,0,240, + 126,0,248,63,0,120,31,240,63,247,240,15,195,192,5,10, + 10,9,2,13,56,240,240,240,112,112,112,112,112,96,9,30, + 60,11,2,251,1,0,3,128,6,0,14,0,28,0,60,0, + 56,0,120,0,120,0,112,0,112,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,112,0,120,0, + 120,0,56,0,60,0,28,0,30,0,14,0,7,0,1,128, + 9,30,60,11,0,251,64,0,240,0,56,0,60,0,28,0, + 30,0,14,0,15,0,15,0,15,0,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,0,15,0, + 15,0,15,0,14,0,30,0,28,0,56,0,48,0,96,0, + 192,0,12,13,26,14,1,11,3,0,15,0,70,64,102,112, + 246,240,63,192,15,0,63,224,254,240,230,112,70,32,7,0, + 14,0,12,12,24,13,1,3,6,0,6,0,6,0,6,0, + 6,0,127,240,255,224,6,0,6,0,6,0,6,0,6,0, + 6,10,10,9,2,250,56,252,252,60,60,56,56,112,96,192, + 10,2,4,11,1,7,255,192,255,128,5,5,5,9,2,255, + 112,248,248,248,112,14,30,60,15,1,251,0,28,0,56,0, + 56,0,120,0,112,0,112,0,224,0,224,0,224,1,192,1, + 192,3,128,3,128,3,128,7,0,7,0,7,0,14,0,14, + 0,28,0,28,0,28,0,56,0,56,0,120,0,112,0,112, + 0,224,0,224,0,192,0,14,18,36,16,1,0,7,192,24, + 224,56,112,112,120,112,120,240,60,240,60,240,60,240,60,240, + 60,240,60,240,60,240,56,112,56,120,56,56,112,28,96,15, + 128,13,19,38,16,2,0,1,128,15,128,127,128,239,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,63,224,127,248,13,19,38, + 16,1,0,15,224,56,240,120,120,240,120,112,120,0,120,0, + 240,0,240,1,224,1,192,3,128,7,0,14,0,28,8,28, + 8,56,24,127,248,255,248,255,248,13,19,38,16,1,0,31, + 128,121,224,112,240,240,240,64,240,0,240,1,224,7,192,15, + 192,3,240,0,240,0,120,0,120,0,120,0,120,128,240,192, + 240,127,224,31,128,14,19,38,17,1,0,0,48,1,240,1, + 240,3,240,7,240,6,240,12,240,12,240,24,240,56,240,48, + 240,96,240,255,252,255,248,0,240,0,240,0,240,1,248,7, + 252,13,19,38,16,1,0,63,248,63,240,63,224,112,0,112, + 0,96,0,96,0,127,128,127,224,97,240,0,248,0,120,0, + 120,0,120,0,120,0,112,128,240,193,224,127,128,14,20,40, + 16,1,0,0,112,3,240,7,128,15,0,28,0,60,0,120, + 0,120,0,115,224,255,240,252,120,240,124,240,60,240,60,240, + 60,112,60,120,56,56,56,28,112,7,192,13,19,38,16,2, + 0,255,248,255,248,255,240,192,48,128,96,128,96,0,224,0, + 192,1,192,1,128,3,128,3,128,7,0,7,0,14,0,14, + 0,30,0,28,0,56,0,14,19,38,16,1,0,15,192,24, + 240,48,120,112,120,112,120,120,120,126,240,63,192,31,224,15, + 240,63,248,120,252,248,124,240,60,240,60,240,56,112,56,56, + 112,31,192,14,20,40,16,1,255,7,192,24,240,56,120,112, + 120,240,60,240,60,240,60,240,60,248,60,124,124,63,252,31, + 60,0,56,0,120,0,112,0,240,1,224,7,128,63,0,56, + 0,5,16,16,9,2,255,112,248,248,248,112,0,0,0,0, + 0,0,112,248,248,248,112,6,21,21,9,2,250,112,248,248, + 248,112,0,0,0,0,0,0,56,252,252,60,60,56,56,112, + 96,192,13,10,20,15,1,4,0,24,0,240,7,240,63,128, + 252,0,248,0,127,0,15,224,1,248,0,48,13,7,14,15, + 1,5,255,248,255,240,0,0,0,0,0,0,255,248,255,240, + 13,10,20,15,1,4,96,0,252,0,63,128,7,240,0,248, + 1,240,15,224,127,0,248,0,192,0,12,24,48,15,1,255, + 31,192,121,224,240,240,240,240,240,240,192,240,0,240,1,224, + 1,192,3,192,3,128,7,0,7,0,6,0,6,0,6,0, + 0,0,0,0,0,0,14,0,31,0,31,0,31,0,14,0, + 26,28,112,28,1,249,0,31,192,0,0,255,248,0,3,255, + 252,0,7,224,62,0,15,128,15,0,30,0,7,128,60,30, + 35,128,60,49,225,128,120,97,225,192,120,225,224,192,240,225, + 224,192,241,225,224,192,241,225,224,192,241,225,224,192,241,225, + 224,192,241,225,225,128,241,225,225,128,248,243,227,0,120,255, + 254,0,120,125,252,0,124,56,240,0,62,0,0,0,62,0, + 2,0,31,128,6,0,15,224,63,0,7,255,248,0,1,255, + 240,0,0,63,128,0,20,20,60,20,0,0,0,32,0,0, + 240,0,0,240,0,1,248,0,1,248,0,1,248,0,3,188, + 0,3,60,0,3,60,0,7,30,0,6,30,0,14,31,0, + 15,255,0,12,7,0,28,7,128,24,7,128,24,3,128,56, + 3,192,56,3,192,254,15,240,17,20,60,19,1,0,63,224, + 0,252,120,0,60,60,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,60,0,60,120,0,63,248,0,60,30,0,60, + 15,0,60,15,0,60,7,128,60,7,128,60,7,128,60,7, + 128,60,15,0,124,30,0,255,248,0,16,20,40,18,1,0, + 1,254,6,31,28,14,56,4,56,0,112,0,112,0,240,0, + 240,0,240,0,240,0,240,0,240,0,248,0,120,0,124,3, + 63,14,31,252,15,248,3,224,18,20,60,20,1,0,63,240, + 0,252,60,0,60,14,0,60,15,0,60,7,128,60,7,128, + 60,3,192,60,3,192,60,3,192,60,3,192,60,3,192,60, + 3,192,60,3,192,60,3,128,60,7,128,60,7,128,60,15, + 0,60,14,0,124,28,0,255,240,0,15,20,40,17,1,0, + 255,252,124,12,60,12,60,12,60,12,60,0,60,0,60,0, + 60,0,63,240,60,32,60,0,60,0,60,0,60,0,60,0, + 60,2,60,6,124,14,255,254,14,20,40,16,1,0,255,252, + 124,12,60,12,60,12,60,12,60,0,60,0,60,0,60,0, + 63,240,60,32,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,126,0,255,0,18,20,60,19,1,0,1,254,0,6, + 15,0,28,6,0,56,4,0,56,0,0,120,0,0,112,0, + 0,240,0,0,240,0,0,240,0,0,240,127,192,240,127,192, + 240,15,0,240,15,0,120,15,0,120,15,0,60,15,0,30, + 15,0,15,254,0,3,240,0,20,20,60,22,1,0,255,15, + 240,126,7,224,60,3,192,60,3,192,60,3,192,60,3,192, + 60,3,192,60,3,192,60,3,192,63,255,192,60,3,192,60, + 3,192,60,3,192,60,3,192,60,3,192,60,3,192,60,3, + 192,60,3,192,126,7,224,255,15,240,8,20,20,10,1,0, + 255,126,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 60,60,126,255,14,27,54,11,252,249,7,252,1,248,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,224,1,224,49,192,127,128,255,0,60,0, + 19,20,60,20,1,0,255,31,192,126,15,0,60,14,0,60, + 28,0,60,56,0,60,112,0,60,224,0,60,224,0,61,192, + 0,63,128,0,63,192,0,61,224,0,60,240,0,60,120,0, + 60,60,0,60,62,0,60,31,0,60,15,128,126,7,224,255, + 3,128,15,20,40,16,1,0,255,0,126,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,2,60,6,124,14,255,254, + 25,20,80,27,1,0,252,0,31,128,62,0,62,0,62,0, + 62,0,62,0,126,0,63,0,126,0,55,0,254,0,55,128, + 222,0,55,129,222,0,51,193,158,0,51,195,158,0,49,195, + 158,0,49,227,30,0,48,231,30,0,48,246,30,0,48,254, + 30,0,48,124,30,0,48,124,30,0,48,56,30,0,120,56, + 63,0,252,24,127,128,19,20,60,21,1,0,248,7,224,124, + 3,192,60,1,128,62,1,128,63,1,128,63,129,128,55,129, + 128,51,193,128,51,225,128,49,225,128,48,241,128,48,249,128, + 48,125,128,48,61,128,48,31,128,48,31,128,48,15,128,48, + 7,128,120,7,128,252,1,128,18,20,60,20,1,0,3,240, + 0,12,28,0,28,14,0,56,7,0,56,7,128,112,7,128, + 112,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,248,3,128,120,7,128,120,7,0,60,15, + 0,30,30,0,15,248,0,3,224,0,16,20,40,18,1,0, + 63,240,252,60,60,30,60,15,60,15,60,15,60,15,60,15, + 60,14,60,30,62,60,61,240,60,0,60,0,60,0,60,0, + 60,0,60,0,126,0,255,128,21,25,75,20,1,251,3,240, + 0,14,28,0,28,14,0,56,15,0,56,7,128,112,7,128, + 112,3,128,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,128,120,3,128,120,7,128,60,7, + 0,28,14,0,14,28,0,3,248,0,0,60,0,0,15,8, + 0,7,248,0,3,240,0,0,224,18,20,60,19,1,0,63, + 224,0,252,120,0,60,60,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,60,0,60,252,0,63,240,0,63,224,0, + 60,240,0,60,112,0,60,120,0,60,60,0,60,62,0,60, + 30,0,60,15,0,126,15,192,255,7,128,13,20,40,16,2, + 0,15,224,48,224,96,96,224,0,224,0,240,0,252,0,127, + 0,127,192,31,224,15,240,3,248,0,248,0,120,128,120,192, + 120,192,112,224,224,255,192,63,0,18,20,60,19,0,0,255, + 255,192,193,225,192,193,224,192,193,224,192,129,224,128,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,3,240,0,7,248,0,19,20,60,21,1, + 0,255,7,224,126,3,192,60,1,128,60,1,128,60,1,128, + 60,1,128,60,1,128,60,1,128,60,1,128,60,1,128,60, + 1,128,60,1,128,60,1,128,60,1,128,60,1,128,60,3, + 0,30,3,0,15,6,0,7,252,0,3,240,0,21,20,60, + 21,0,0,255,3,248,60,0,224,60,0,192,30,0,192,30, + 1,128,15,1,128,15,3,128,15,3,0,7,131,0,7,135, + 0,3,198,0,3,198,0,3,206,0,1,236,0,1,236,0, + 0,248,0,0,248,0,0,248,0,0,112,0,0,96,0,27, + 20,80,27,0,0,255,6,15,224,60,6,3,192,28,15,3, + 128,28,15,3,0,28,15,3,0,30,31,131,0,30,27,131, + 0,14,27,199,0,14,59,198,0,15,49,198,0,15,49,230, + 0,7,112,238,0,7,96,252,0,7,224,252,0,7,192,124, + 0,3,192,124,0,3,192,60,0,3,128,56,0,3,128,56, + 0,3,0,16,0,20,20,60,20,0,0,127,143,224,62,3, + 128,30,7,0,15,6,0,15,142,0,7,140,0,3,220,0, + 3,248,0,1,240,0,0,240,0,0,248,0,1,248,0,3, + 188,0,3,190,0,7,30,0,6,15,0,14,15,128,28,7, + 128,60,7,192,254,31,240,19,20,60,20,0,0,252,7,224, + 60,3,192,30,3,128,15,3,0,15,7,0,7,134,0,3, + 142,0,3,204,0,1,220,0,1,248,0,0,248,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,1,248,0,3,252,0,15,20,40,17,1,0,127, + 254,96,62,96,124,64,124,64,248,0,240,1,240,1,224,3, + 224,7,192,7,192,15,128,15,0,31,0,62,0,62,2,124, + 2,124,6,248,6,255,254,9,30,60,11,2,251,255,128,255, + 128,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,255,128,255,128,13,30,60,15,1,251,192, + 0,224,0,224,0,112,0,112,0,48,0,56,0,56,0,28, + 0,28,0,28,0,14,0,14,0,6,0,7,0,7,0,3, + 128,3,128,3,128,1,192,1,192,0,192,0,224,0,224,0, + 112,0,112,0,112,0,56,0,56,0,24,9,30,60,11,0, + 251,255,128,255,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,255,128,255,128,12,15,30, + 16,2,9,2,0,6,0,15,0,15,0,27,0,27,128,17, + 128,49,192,49,192,96,192,96,224,96,96,192,112,192,48,128, + 32,14,2,4,15,1,252,255,252,255,248,7,8,8,10,0, + 16,112,240,120,56,60,28,14,6,14,15,30,16,1,0,31, + 192,112,224,240,240,192,240,0,240,3,240,31,240,63,240,120, + 240,240,240,240,240,240,240,251,252,126,248,56,96,16,24,48, + 17,0,0,12,0,252,0,124,0,60,0,60,0,60,0,60, + 0,60,0,60,0,60,120,61,252,63,254,63,30,60,15,60, + 7,60,7,60,7,60,7,60,6,60,14,62,28,63,248,31, + 240,7,192,13,15,30,15,1,0,3,248,12,120,56,48,112, + 16,112,0,240,0,240,0,240,0,240,0,248,0,248,8,124, + 56,63,240,31,224,15,128,16,24,48,18,1,0,0,28,0, + 252,0,60,0,60,0,60,0,60,0,60,0,60,0,60,7, + 252,24,124,56,60,112,60,112,60,240,60,240,60,240,60,240, + 60,248,60,248,60,124,124,127,255,63,190,30,24,13,15,30, + 15,1,0,7,192,24,224,56,112,112,120,112,120,240,120,255, + 240,240,0,240,0,240,0,248,8,124,56,127,240,63,224,15, + 128,13,24,48,11,1,0,1,240,7,248,14,112,28,32,28, + 0,60,0,60,0,60,0,60,0,255,192,60,128,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,127,0,255,128,16,23,46,17,0,248,7,227,28, + 127,56,126,120,60,120,60,120,60,120,60,60,56,60,112,15, + 192,14,0,28,0,31,192,63,252,15,254,31,255,120,127,240, + 15,240,14,240,14,120,28,63,248,15,192,17,24,72,18,1, + 0,12,0,0,252,0,0,124,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,120,0,61, + 252,0,63,254,0,63,30,0,62,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,126,63,0,255,127,128,8,21,21,10,1,0,28, + 62,62,28,0,0,28,252,124,60,60,60,60,60,60,60,60, + 60,60,126,255,12,29,58,9,251,248,0,224,1,240,1,240, + 0,224,0,0,0,0,0,224,7,224,3,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,192,1,192,99,128,255,0, + 254,0,120,0,17,24,72,18,1,0,12,0,0,252,0,0, + 124,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,63,128,60,30,0,60,60,0,60,112, + 0,60,224,0,61,192,0,63,192,0,63,224,0,61,224,0, + 60,240,0,60,120,0,60,60,0,60,62,0,126,31,128,255, + 15,0,8,24,24,10,1,0,12,252,124,60,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,126,255, + 26,15,60,28,1,0,28,120,60,0,252,252,254,0,127,255, + 255,0,63,31,143,0,60,30,15,0,60,30,15,0,60,30, + 15,0,60,30,15,0,60,30,15,0,60,30,15,0,60,30, + 15,0,60,30,15,0,60,30,15,0,126,63,31,128,255,127, + 191,192,17,15,45,18,1,0,12,60,0,252,252,0,127,254, + 0,63,30,0,62,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,126, + 63,0,255,127,128,15,15,30,17,1,0,7,224,24,112,56, + 56,112,60,112,30,240,30,240,30,240,30,240,30,240,30,240, + 28,120,28,56,56,28,48,15,192,16,23,46,18,1,248,12, + 120,252,252,127,254,62,62,60,31,60,15,60,15,60,15,60, + 15,60,15,60,14,62,30,63,252,61,248,60,240,60,0,60, + 0,60,0,60,0,60,0,60,0,127,0,255,128,17,23,69, + 18,1,248,3,194,0,12,54,0,56,30,0,112,30,0,112, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,248,30, + 0,248,30,0,124,126,0,127,254,0,63,222,0,15,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,63,0,0,255,128,13,15,30,14,1,0,24,240, + 249,248,123,248,62,48,60,48,60,48,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,126,0,255,0,11,15,30,13, + 1,0,31,192,97,192,225,128,224,128,248,0,254,0,127,128, + 127,192,31,224,7,224,129,224,192,224,192,192,224,192,255,0, + 11,20,40,12,0,0,4,0,28,0,60,0,60,0,60,0, + 255,224,60,64,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,96,63,224,31,128,14,0,17,15, + 45,18,0,0,28,14,0,252,126,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,126,0,63,255,128,31,223,0,15,12, + 0,16,15,30,16,0,0,254,31,124,14,60,12,60,12,30, + 28,30,24,15,24,15,48,7,48,7,240,7,224,3,224,3, + 192,1,192,1,128,23,15,45,23,0,0,254,24,62,124,24, + 28,60,28,24,60,60,24,28,62,48,30,126,48,30,111,48, + 14,111,112,15,199,96,15,199,224,7,195,224,7,131,192,7, + 131,192,3,1,192,2,1,128,16,15,30,17,0,0,255,63, + 62,28,30,24,15,48,15,240,7,224,3,192,3,224,3,224, + 6,240,14,248,28,120,24,60,120,62,252,127,17,23,69,16, + 255,248,127,15,128,62,7,0,30,6,0,30,6,0,15,14, + 0,15,12,0,7,140,0,7,152,0,7,152,0,3,248,0, + 3,240,0,1,240,0,1,240,0,1,224,0,0,224,0,0, + 192,0,0,192,0,1,192,0,1,128,0,39,128,0,127,0, + 0,254,0,0,120,0,0,13,15,30,15,1,0,127,248,96, + 248,65,240,65,224,3,224,7,192,7,128,15,128,15,0,31, + 0,62,16,60,24,124,24,248,24,255,248,9,30,60,12,2, + 251,1,0,7,128,14,0,28,0,60,0,60,0,60,0,60, + 0,62,0,30,0,30,0,30,0,30,0,60,0,120,0,252, + 0,60,0,30,0,30,0,30,0,30,0,62,0,60,0,60, + 0,60,0,60,0,28,0,30,0,7,0,1,128,2,32,32, + 7,3,250,64,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,128,9,30,60,12,1,251,64,0,240,0,60,0,28, + 0,30,0,30,0,30,0,30,0,62,0,60,0,60,0,60, + 0,60,0,30,0,31,128,15,0,30,0,60,0,60,0,60, + 0,60,0,62,0,30,0,30,0,30,0,30,0,28,0,56, + 0,112,0,192,0,14,6,12,16,1,7,28,8,62,12,127, + 136,71,240,131,240,128,224,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,8,0,0,5,24, + 24,10,2,247,112,248,248,248,112,0,0,48,48,48,48,112, + 112,112,112,120,120,120,120,120,120,120,120,96,13,20,40,16, + 2,255,3,0,3,0,3,0,15,248,31,248,59,56,115,16, + 227,0,227,0,227,0,227,0,227,0,227,0,115,24,123,48, + 63,224,31,192,3,0,3,0,3,0,14,19,38,16,1,0, + 1,252,6,60,14,28,28,12,28,8,60,0,60,0,60,0, + 60,0,255,224,60,0,60,0,60,0,60,4,56,4,56,12, + 127,252,255,252,128,48,12,13,26,16,2,3,192,48,239,112, + 112,224,48,192,96,96,96,96,96,96,96,96,112,224,57,192, + 111,96,192,48,128,16,18,19,57,16,255,0,248,31,192,252, + 15,128,62,6,0,30,14,0,31,12,0,15,156,0,7,152, + 0,7,248,0,3,240,0,3,240,0,3,240,0,1,224,0, + 63,255,0,1,224,0,1,224,0,1,224,0,1,224,0,3, + 240,0,7,248,0,2,32,32,7,3,250,64,192,192,192,192, + 192,192,192,192,192,192,192,192,192,128,0,0,64,192,192,192, + 192,192,192,192,192,192,192,192,192,192,128,12,22,44,16,2, + 0,15,192,49,224,112,224,112,64,124,0,126,0,63,128,127, + 192,99,224,225,240,224,240,240,112,252,112,127,112,63,224,31, + 192,7,224,65,224,64,224,224,224,240,192,127,0,11,5,10, + 13,1,17,112,224,241,224,241,224,241,224,225,192,21,21,63, + 23,1,0,1,252,0,7,7,0,12,1,128,24,0,192,48, + 126,96,96,199,48,97,134,48,195,2,24,199,0,24,199,0, + 24,199,0,24,199,0,24,199,0,24,199,128,24,99,199,48, + 97,252,48,48,248,96,16,0,64,8,1,128,6,3,0,1, + 252,0,7,11,11,9,1,9,60,204,140,60,108,204,206,252, + 0,0,254,14,15,30,16,1,0,2,8,6,28,12,56,28, + 112,56,112,120,224,241,224,243,192,241,224,120,224,56,112,28, + 112,12,56,6,24,2,12,13,7,14,16,2,3,255,248,255, + 248,0,24,0,24,0,24,0,24,0,16,10,2,4,11,1, + 7,255,192,255,128,12,11,22,11,0,11,31,128,48,192,126, + 96,219,48,219,48,222,48,219,48,217,48,100,224,48,192,31, + 128,14,3,6,16,1,18,127,248,127,252,255,248,7,8,8, + 11,2,12,60,126,70,198,198,204,252,120,12,15,30,13,1, + 2,6,0,6,0,6,0,6,0,6,0,127,240,255,224,6, + 0,6,0,6,0,6,0,4,0,0,0,255,240,255,224,8, + 11,11,11,2,10,62,115,227,3,6,6,12,24,49,97,255, + 9,11,22,11,1,10,62,0,231,0,231,0,7,0,28,0, + 63,0,7,128,3,128,3,128,199,0,126,0,8,8,8,10, + 3,16,28,30,63,60,120,112,224,192,18,23,69,19,1,248, + 28,6,0,252,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,62,62,0,63,255,128,63,223,192,51,142,0,48,0,0, + 48,0,0,56,0,0,56,0,0,56,0,0,60,0,0,62, + 0,0,48,0,0,17,24,72,19,1,252,15,255,128,60,127, + 0,120,102,0,112,102,0,240,102,0,240,102,0,240,102,0, + 240,102,0,120,102,0,120,102,0,60,102,0,15,230,0,0, + 102,0,0,102,0,0,102,0,0,102,0,0,102,0,0,102, + 0,0,102,0,0,102,0,0,102,0,0,102,0,0,255,0, + 1,255,128,5,5,5,7,1,8,112,248,248,248,112,7,7, + 7,7,0,249,24,48,60,62,30,60,240,8,11,11,11,2, + 10,8,248,24,24,24,24,24,24,24,24,255,7,11,11,9, + 1,9,56,76,198,198,198,198,198,108,56,0,254,13,15,30, + 16,2,0,129,0,195,128,97,128,112,192,56,224,60,112,30, + 120,30,120,30,120,60,112,56,224,112,192,97,192,193,128,131, + 0,17,19,57,20,2,0,48,3,128,240,3,0,48,6,0, + 48,12,0,48,28,0,48,24,0,48,48,0,48,96,0,120, + 224,0,132,193,0,1,135,0,3,15,0,7,11,0,6,19, + 0,12,51,0,24,63,128,56,67,0,48,3,0,224,15,128, + 17,19,57,20,2,0,48,1,128,240,3,0,48,7,0,48, + 6,0,48,12,0,48,24,0,48,56,0,48,48,0,120,96, + 0,132,192,0,1,207,0,1,153,128,3,49,128,7,1,0, + 14,3,0,12,6,0,24,12,0,56,24,128,112,63,128,18, + 19,57,20,1,0,60,1,192,102,1,128,70,3,0,12,6, + 0,28,14,0,6,12,0,6,24,0,134,48,0,124,112,0, + 0,96,128,0,195,128,1,135,128,3,133,128,3,9,128,6, + 25,128,12,31,192,28,33,128,24,1,128,112,7,192,13,23, + 46,15,1,248,7,0,15,128,15,128,15,128,7,0,0,0, + 0,0,3,0,3,0,3,0,7,0,6,0,14,0,28,0, + 60,0,120,0,112,0,240,24,240,120,240,120,240,120,120,240, + 63,192,20,28,84,20,0,0,3,0,0,7,128,0,7,192, + 0,15,224,0,1,224,0,0,112,0,0,24,0,0,0,0, + 0,32,0,0,240,0,0,240,0,1,248,0,1,248,0,1, + 248,0,3,188,0,3,60,0,3,60,0,7,30,0,6,30, + 0,14,31,0,15,255,0,12,7,0,28,7,128,24,7,128, + 24,3,128,56,3,192,56,3,192,254,15,240,20,28,84,20, + 0,0,0,8,0,0,30,0,0,62,0,0,124,0,0,240, + 0,1,224,0,1,128,0,0,0,0,0,32,0,0,240,0, + 0,240,0,1,248,0,1,248,0,1,248,0,3,188,0,3, + 60,0,3,60,0,7,30,0,6,30,0,14,31,0,15,255, + 0,12,7,0,28,7,128,24,7,128,24,3,128,56,3,192, + 56,3,192,254,15,240,20,27,81,20,0,0,0,224,0,0, + 240,0,1,248,0,3,252,0,7,14,0,4,6,0,0,0, + 0,0,32,0,0,240,0,0,240,0,1,248,0,1,248,0, + 1,248,0,3,188,0,3,60,0,3,60,0,7,30,0,6, + 30,0,14,31,0,15,255,0,12,7,0,28,7,128,24,7, + 128,24,3,128,56,3,192,56,3,192,254,15,240,20,26,78, + 20,0,0,3,195,0,7,254,0,7,254,0,12,124,0,8, + 0,0,0,0,0,0,32,0,0,240,0,0,240,0,1,248, + 0,1,248,0,1,248,0,3,188,0,3,60,0,3,60,0, + 7,30,0,6,30,0,14,31,0,15,255,0,12,7,0,28, + 7,128,24,7,128,24,3,128,56,3,192,56,3,192,254,15, + 240,20,26,78,20,0,0,6,12,0,15,30,0,15,30,0, + 15,30,0,14,28,0,0,0,0,0,32,0,0,240,0,0, + 240,0,1,248,0,1,248,0,1,248,0,3,188,0,3,60, + 0,3,60,0,7,30,0,6,30,0,14,31,0,15,255,0, + 12,7,0,28,7,128,24,7,128,24,3,128,56,3,192,56, + 3,192,254,15,240,20,27,81,20,0,0,0,112,0,1,152, + 0,1,152,0,1,144,0,0,224,0,0,0,0,0,0,0, + 0,32,0,0,240,0,0,240,0,1,248,0,1,248,0,1, + 248,0,3,188,0,3,60,0,3,60,0,7,30,0,6,30, + 0,14,31,0,15,255,0,12,7,0,28,7,128,24,7,128, + 24,3,128,56,3,192,56,3,192,254,15,240,25,20,80,26, + 0,0,3,255,255,0,0,255,3,0,0,255,3,0,0,239, + 3,0,0,239,3,0,1,207,0,0,1,207,0,0,3,143, + 0,0,3,143,0,0,3,255,254,0,7,15,4,0,6,15, + 0,0,14,15,0,0,14,15,0,0,12,15,0,0,28,15, + 0,0,24,15,0,128,24,15,1,128,56,31,1,128,254,63, + 255,128,16,27,54,18,1,249,1,254,6,31,28,14,56,4, + 56,0,112,0,112,0,240,0,240,0,240,0,240,0,240,0, + 240,0,248,0,120,0,124,1,126,7,63,254,31,252,15,240, + 0,192,1,192,1,240,0,240,0,240,1,224,3,128,15,28, + 56,17,1,0,8,0,28,0,62,0,31,0,7,128,1,192, + 0,64,0,0,255,252,124,12,60,12,60,12,60,12,60,0, + 60,0,60,0,60,0,63,240,60,32,60,0,60,0,60,0, + 60,0,60,0,60,2,60,6,124,14,255,254,15,28,56,17, + 1,0,0,96,0,240,1,248,1,240,3,192,7,0,12,0, + 0,0,255,252,124,12,60,12,60,12,60,12,60,0,60,0, + 60,0,60,0,63,240,60,32,60,0,60,0,60,0,60,0, + 60,0,60,2,60,6,124,14,255,254,15,27,54,17,1,0, + 3,128,7,192,15,192,31,224,28,112,48,24,0,0,255,252, + 124,12,60,12,60,12,60,12,60,0,60,0,60,0,60,0, + 63,240,60,32,60,0,60,0,60,0,60,0,60,0,60,2, + 60,6,124,14,255,254,15,26,52,17,1,0,56,112,56,112, + 120,240,120,240,48,96,0,0,255,252,124,12,60,12,60,12, + 60,12,60,0,60,0,60,0,60,0,63,240,60,32,60,0, + 60,0,60,0,60,0,60,0,60,2,60,6,124,14,255,254, + 9,28,56,10,0,0,32,0,240,0,248,0,124,0,30,0, + 15,0,3,0,0,0,127,128,63,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,63,0,127,128,10,28, + 56,10,1,0,2,0,7,128,15,192,31,0,62,0,120,0, + 96,0,0,0,255,0,126,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,126,0,255,0,10,27,54,10, + 0,0,12,0,30,0,63,0,127,128,225,192,192,64,0,0, + 127,128,63,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,63,0,127,128,11,26,52,10,255,0,112,224, + 241,224,241,224,241,224,96,192,0,0,63,192,31,128,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,31,128, + 63,192,18,20,60,20,1,0,63,240,0,252,60,0,60,14, + 0,60,15,0,60,7,128,60,7,128,60,3,192,60,3,192, + 60,3,192,255,195,192,60,3,192,60,3,192,60,3,192,60, + 3,128,60,7,128,60,7,128,60,15,0,60,14,0,124,28, + 0,255,240,0,19,26,78,21,1,0,3,195,0,7,254,0, + 15,252,0,12,120,0,24,0,0,0,0,0,248,7,224,124, + 3,192,60,1,128,62,1,128,63,1,128,63,129,128,55,129, + 128,51,193,128,51,225,128,49,225,128,48,241,128,48,249,128, + 48,125,128,48,61,128,48,31,128,48,31,128,48,15,128,48, + 7,128,120,7,128,252,1,128,18,28,84,20,1,0,2,0, + 0,15,0,0,15,128,0,7,192,0,3,224,0,0,240,0, + 0,48,0,0,0,0,3,240,0,12,28,0,28,14,0,56, + 7,0,56,7,128,112,7,128,112,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,248,3,128, + 120,7,128,120,7,0,60,15,0,30,30,0,15,248,0,3, + 224,0,18,28,84,20,1,0,0,16,0,0,60,0,0,124, + 0,0,248,0,1,224,0,3,192,0,3,0,0,0,0,0, + 3,240,0,12,28,0,28,14,0,56,7,0,56,7,128,112, + 7,128,112,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,248,3,128,120,7,128,120,7,0, + 60,15,0,30,30,0,15,248,0,3,224,0,18,27,81,20, + 1,0,0,192,0,1,224,0,3,240,0,7,248,0,14,28, + 0,8,12,0,0,0,0,3,240,0,12,28,0,28,14,0, + 56,7,0,56,7,128,112,7,128,112,3,192,240,3,192,240, + 3,192,240,3,192,240,3,192,240,3,192,240,3,192,248,3, + 128,120,7,128,120,7,0,60,15,0,30,30,0,15,248,0, + 3,224,0,18,26,78,20,1,0,3,198,0,15,252,0,15, + 252,0,24,120,0,16,0,0,0,0,0,3,240,0,12,28, + 0,28,14,0,56,7,0,56,7,128,112,7,128,112,3,192, + 240,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,248,3,128,120,7,128,120,7,0,60,15,0,30,30, + 0,15,248,0,3,224,0,18,26,78,20,1,0,14,28,0, + 30,60,0,30,60,0,30,60,0,28,56,0,0,0,0,3, + 240,0,12,28,0,28,14,0,56,7,0,56,7,128,112,7, + 128,112,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,192,248,3,128,120,7,128,120,7,0,60, + 15,0,30,30,0,15,248,0,3,224,0,11,10,20,13,1, + 4,96,96,240,224,57,192,31,128,15,0,15,0,31,128,57, + 192,112,224,224,96,18,21,63,20,1,255,3,241,192,12,31, + 128,28,15,0,56,15,0,56,31,128,112,63,128,112,63,192, + 240,123,192,240,243,192,240,227,192,241,195,192,241,195,192,243, + 131,192,247,3,128,126,7,128,126,7,0,60,7,0,62,14, + 0,127,248,0,227,224,0,128,0,0,19,28,84,21,1,0, + 3,0,0,7,128,0,15,192,0,7,192,0,1,224,0,0, + 112,0,0,24,0,0,0,0,255,7,224,126,3,192,60,1, + 128,60,1,128,60,1,128,60,1,128,60,1,128,60,1,128, + 60,1,128,60,1,128,60,1,128,60,1,128,60,1,128,60, + 1,128,60,1,128,60,3,0,30,3,0,15,6,0,7,252, + 0,3,240,0,19,28,84,21,1,0,0,8,0,0,30,0, + 0,62,0,0,124,0,0,240,0,1,192,0,1,128,0,0, + 0,0,255,7,224,126,3,192,60,1,128,60,1,128,60,1, + 128,60,1,128,60,1,128,60,1,128,60,1,128,60,1,128, + 60,1,128,60,1,128,60,1,128,60,1,128,60,1,128,60, + 3,0,30,3,0,15,6,0,7,252,0,3,240,0,19,27, + 81,21,1,0,0,224,0,0,240,0,1,248,0,3,252,0, + 7,14,0,12,6,0,0,0,0,255,7,224,126,3,192,60, + 1,128,60,1,128,60,1,128,60,1,128,60,1,128,60,1, + 128,60,1,128,60,1,128,60,1,128,60,1,128,60,1,128, + 60,1,128,60,1,128,60,3,0,30,3,0,15,6,0,7, + 252,0,3,240,0,19,26,78,21,1,0,6,12,0,15,30, + 0,15,30,0,15,30,0,14,28,0,0,0,0,255,7,224, + 126,3,192,60,1,128,60,1,128,60,1,128,60,1,128,60, + 1,128,60,1,128,60,1,128,60,1,128,60,1,128,60,1, + 128,60,1,128,60,1,128,60,1,128,60,3,0,30,3,0, + 15,6,0,7,252,0,3,240,0,19,28,84,20,0,0,0, + 8,0,0,30,0,0,62,0,0,124,0,0,240,0,1,192, + 0,1,128,0,0,0,0,252,7,224,60,3,192,30,3,128, + 15,3,0,15,7,0,7,134,0,3,142,0,3,204,0,1, + 220,0,1,248,0,0,248,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,1,248,0, + 3,252,0,16,20,40,18,1,0,255,128,126,0,60,0,60, + 0,63,240,60,60,60,30,60,15,60,15,60,15,60,15,60, + 14,60,30,60,60,63,240,60,0,60,0,60,0,126,0,255, + 128,18,24,72,21,1,0,0,248,0,3,254,0,15,31,0, + 14,15,128,28,7,128,28,7,128,60,7,128,60,7,128,60, + 15,0,60,60,0,60,112,0,60,224,0,60,224,0,60,240, + 0,60,252,0,60,127,0,60,63,128,60,15,192,60,7,192, + 61,3,192,60,129,192,60,193,128,124,225,128,252,254,0,14, + 24,48,16,1,0,28,0,62,0,30,0,15,0,7,0,3, + 128,1,128,0,192,0,0,31,192,112,224,240,240,192,240,0, + 240,3,240,31,240,63,240,120,240,240,240,240,240,240,240,251, + 252,126,248,56,96,14,24,48,16,1,0,0,224,1,240,1, + 224,3,192,3,128,3,0,7,0,6,0,0,0,31,192,112, + 224,240,240,192,240,0,240,3,240,31,240,63,240,120,240,240, + 240,240,240,240,240,251,252,126,248,56,96,14,23,46,16,1, + 0,3,128,7,128,15,192,31,224,28,224,56,48,32,16,0, + 0,31,192,112,224,240,240,192,240,0,240,3,240,31,240,63, + 240,120,240,240,240,240,240,240,240,251,252,126,248,56,96,14, + 22,44,16,1,0,14,8,31,24,63,240,99,240,64,224,0, + 0,0,0,31,192,112,224,240,240,192,240,0,240,3,240,31, + 240,63,240,120,240,240,240,240,240,240,240,251,252,126,248,56, + 96,14,22,44,16,1,0,56,112,120,240,120,240,120,240,48, + 96,0,0,0,0,31,192,112,224,240,240,192,240,0,240,3, + 240,31,240,63,240,120,240,240,240,240,240,240,240,251,252,126, + 248,56,96,14,22,44,16,1,0,3,128,4,192,12,192,12, + 192,7,128,0,0,0,0,31,192,112,224,240,240,192,240,0, + 240,3,240,31,240,63,240,120,240,240,240,240,240,240,240,251, + 252,126,248,56,96,22,15,45,23,1,0,3,227,224,31,252, + 112,60,252,56,120,120,60,112,120,60,128,120,60,7,255,248, + 28,120,0,120,120,0,112,120,0,240,124,8,249,254,28,255, + 191,248,127,31,240,60,7,192,14,22,44,15,1,249,3,248, + 12,120,56,48,112,16,112,0,240,0,240,0,240,0,240,0, + 240,0,248,8,124,28,63,248,31,240,15,192,3,0,3,192, + 3,224,5,224,1,224,3,192,14,0,13,24,48,15,1,0, + 14,0,30,0,31,0,15,0,7,128,3,128,1,192,0,192, + 0,0,7,192,24,224,56,112,112,120,112,120,240,120,255,240, + 240,0,240,0,240,0,248,8,124,56,127,240,63,224,15,128, + 13,24,48,15,1,0,0,224,0,240,1,240,1,224,3,192, + 3,128,7,0,6,0,0,0,7,192,24,224,56,112,112,120, + 112,120,240,120,255,240,240,0,240,0,240,0,248,8,124,56, + 127,240,63,224,15,128,13,23,46,15,1,0,3,128,7,192, + 15,192,15,224,28,112,56,48,48,24,0,0,7,192,24,224, + 56,112,112,120,112,120,240,120,255,240,240,0,240,0,240,0, + 248,8,124,56,127,240,63,224,15,128,13,22,44,15,1,0, + 56,112,56,112,120,240,120,240,48,96,0,0,0,0,7,192, + 24,224,56,112,112,120,112,120,240,120,255,240,240,0,240,0, + 240,0,248,8,124,56,127,240,63,224,15,128,9,24,48,10, + 0,0,112,0,248,0,120,0,60,0,28,0,14,0,6,0, + 2,0,0,0,14,0,126,0,62,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,63,0, + 127,128,9,24,48,10,1,0,7,0,15,128,15,0,30,0, + 28,0,56,0,48,0,32,0,0,0,28,0,252,0,124,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,126,0,255,0,10,23,46,10,0,0,28,0, + 30,0,63,0,127,0,115,128,193,192,128,64,0,0,14,0, + 126,0,62,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,63,0,127,128,11,22,44,10, + 255,0,112,224,241,224,241,224,241,224,225,192,0,0,0,0, + 7,0,63,0,31,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,31,128,63,192,14,23, + 46,16,1,0,14,0,63,28,95,248,3,224,15,224,60,224, + 0,112,0,56,15,248,24,248,56,124,112,60,112,60,240,60, + 240,60,240,60,240,60,240,56,240,56,120,112,120,112,60,96, + 15,128,17,22,66,19,1,0,7,6,0,15,204,0,31,252, + 0,17,248,0,48,112,0,0,0,0,0,0,0,12,60,0, + 252,252,0,127,254,0,63,30,0,62,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,126,63,0,255,127,128,15,24,48,17,1,0, + 14,0,31,0,15,0,7,0,3,128,1,128,0,192,0,192, + 0,0,7,224,24,112,56,56,112,60,112,30,240,30,240,30, + 240,30,240,30,240,30,240,28,120,28,56,56,28,48,15,192, + 15,24,48,17,1,0,0,240,0,248,0,240,1,224,1,192, + 3,128,3,0,6,0,0,0,7,224,24,112,56,56,112,60, + 112,30,240,30,240,30,240,30,240,30,240,30,240,28,120,28, + 56,56,28,48,15,192,15,23,46,17,1,0,3,128,3,192, + 7,224,15,224,30,112,24,56,48,24,0,0,7,224,24,112, + 56,56,112,60,112,30,240,30,240,30,240,30,240,30,240,30, + 240,28,120,28,56,56,28,48,15,192,15,22,44,17,1,0, + 14,12,31,136,31,248,49,240,32,224,0,0,0,0,7,224, + 24,112,56,56,112,60,112,30,240,30,240,30,240,30,240,30, + 240,30,240,28,120,28,56,56,28,48,15,192,15,22,44,17, + 1,0,24,48,60,120,60,120,56,112,56,112,0,0,0,0, + 7,224,24,112,56,56,112,60,112,30,240,30,240,30,240,30, + 240,30,240,30,240,28,120,28,56,56,28,48,15,192,12,12, + 24,13,1,3,6,0,14,0,14,0,12,0,0,0,255,240, + 255,224,0,0,6,0,14,0,14,0,12,0,15,16,32,17, + 1,255,7,238,24,124,56,60,112,124,112,254,240,254,241,222, + 243,158,243,158,247,30,254,28,124,28,124,56,124,48,111,192, + 128,0,17,24,72,18,0,0,7,0,0,15,128,0,7,128, + 0,3,192,0,1,192,0,0,224,0,0,96,0,0,48,0, + 0,0,0,28,14,0,252,126,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,126,0,63,255,128,31,223,0,15,12,0, + 17,24,72,18,0,0,0,56,0,0,124,0,0,120,0,0, + 240,0,0,224,0,0,192,0,1,128,0,1,128,0,0,0, + 0,28,14,0,252,126,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,126,0,63,255,128,31,223,0,15,12,0,17,23, + 69,18,0,0,0,192,0,1,224,0,3,240,0,7,248,0, + 7,56,0,14,12,0,8,4,0,0,0,0,28,14,0,252, + 126,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,126,0, + 63,255,128,31,223,0,15,12,0,17,22,66,18,0,0,14, + 28,0,30,60,0,30,60,0,30,60,0,12,24,0,0,0, + 0,0,0,0,28,14,0,252,126,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,126,0,63,255,128,31,223,0,15,12, + 0,17,32,96,16,255,248,0,56,0,0,62,0,0,124,0, + 0,120,0,0,240,0,0,224,0,0,192,0,1,128,0,0, + 0,0,127,15,128,62,7,0,30,6,0,30,6,0,15,14, + 0,15,12,0,7,140,0,7,152,0,7,152,0,3,248,0, + 3,240,0,1,240,0,1,240,0,1,224,0,0,224,0,0, + 192,0,0,192,0,1,192,0,1,128,0,39,128,0,127,0, + 0,254,0,0,120,0,0,16,32,64,18,1,248,12,0,252, + 0,124,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 120,61,252,63,254,62,62,60,31,60,15,60,15,60,15,60, + 15,60,15,60,14,63,30,63,252,61,248,60,240,60,0,60, + 0,60,0,60,0,60,0,60,0,127,0,255,128,17,30,90, + 16,255,248,6,12,0,15,30,0,15,30,0,14,28,0,14, + 28,0,0,0,0,0,0,0,127,15,128,62,7,0,30,6, + 0,30,6,0,15,14,0,15,12,0,7,140,0,7,152,0, + 7,152,0,3,248,0,3,240,0,1,240,0,1,240,0,1, + 224,0,0,224,0,0,192,0,0,192,0,1,192,0,1,128, + 0,39,128,0,127,0,0,254,0,0,120,0,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--32-320-72-72-P-159-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 19 + Calculated Max Values w=14 h=30 x= 2 y=11 dx=17 dy= 0 ascent=25 len=60 + Font Bounding box w=49 h=47 x=-16 y=-12 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =19 descent= 0 + X Font ascent =19 descent= 0 + Max Font ascent =25 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb20n[624] U8G_SECTION(".progmem.u8g_font_gdb20n") = { + 0,49,47,240,244,19,0,0,0,0,42,57,0,25,250,19, + 0,12,13,26,14,1,11,3,0,15,0,70,64,102,112,246, + 240,63,192,15,0,63,224,254,240,230,112,70,32,7,0,14, + 0,12,12,24,13,1,3,6,0,6,0,6,0,6,0,6, + 0,127,240,255,224,6,0,6,0,6,0,6,0,6,0,6, + 10,10,9,2,250,56,252,252,60,60,56,56,112,96,192,10, + 2,4,11,1,7,255,192,255,128,5,5,5,9,2,255,112, + 248,248,248,112,14,30,60,15,1,251,0,28,0,56,0,56, + 0,120,0,112,0,112,0,224,0,224,0,224,1,192,1,192, + 3,128,3,128,3,128,7,0,7,0,7,0,14,0,14,0, + 28,0,28,0,28,0,56,0,56,0,120,0,112,0,112,0, + 224,0,224,0,192,0,14,18,36,16,1,0,7,192,24,224, + 56,112,112,120,112,120,240,60,240,60,240,60,240,60,240,60, + 240,60,240,60,240,56,112,56,120,56,56,112,28,96,15,128, + 13,19,38,16,2,0,1,128,15,128,127,128,239,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,63,224,127,248,13,19,38,16, + 1,0,15,224,56,240,120,120,240,120,112,120,0,120,0,240, + 0,240,1,224,1,192,3,128,7,0,14,0,28,8,28,8, + 56,24,127,248,255,248,255,248,13,19,38,16,1,0,31,128, + 121,224,112,240,240,240,64,240,0,240,1,224,7,192,15,192, + 3,240,0,240,0,120,0,120,0,120,0,120,128,240,192,240, + 127,224,31,128,14,19,38,17,1,0,0,48,1,240,1,240, + 3,240,7,240,6,240,12,240,12,240,24,240,56,240,48,240, + 96,240,255,252,255,248,0,240,0,240,0,240,1,248,7,252, + 13,19,38,16,1,0,63,248,63,240,63,224,112,0,112,0, + 96,0,96,0,127,128,127,224,97,240,0,248,0,120,0,120, + 0,120,0,120,0,112,128,240,193,224,127,128,14,20,40,16, + 1,0,0,112,3,240,7,128,15,0,28,0,60,0,120,0, + 120,0,115,224,255,240,252,120,240,124,240,60,240,60,240,60, + 112,60,120,56,56,56,28,112,7,192,13,19,38,16,2,0, + 255,248,255,248,255,240,192,48,128,96,128,96,0,224,0,192, + 1,192,1,128,3,128,3,128,7,0,7,0,14,0,14,0, + 30,0,28,0,56,0,14,19,38,16,1,0,15,192,24,240, + 48,120,112,120,112,120,120,120,126,240,63,192,31,224,15,240, + 63,248,120,252,248,124,240,60,240,60,240,56,112,56,56,112, + 31,192,14,20,40,16,1,255,7,192,24,240,56,120,112,120, + 240,60,240,60,240,60,240,60,248,60,124,124,63,252,31,60, + 0,56,0,120,0,112,0,240,1,224,7,128,63,0,56,0 + }; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--32-320-72-72-P-159-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 20, '1' Height: 19 + Calculated Max Values w=27 h=32 x= 3 y=16 dx=28 dy= 0 ascent=26 len=112 + Font Bounding box w=49 h=47 x=-16 y=-12 + Calculated Min Values x=-5 y=-8 dx= 0 dy= 0 + Pure Font ascent =20 descent=-8 + X Font ascent =25 descent=-8 + Max Font ascent =26 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb20r[4680] U8G_SECTION(".progmem.u8g_font_gdb20r") = { + 0,49,47,240,244,20,5,86,12,137,32,127,248,26,248,25, + 248,0,0,0,8,0,0,5,24,24,10,2,255,24,120,120, + 120,120,120,120,120,120,112,112,112,112,48,48,48,48,0,0, + 112,248,248,248,112,11,10,20,15,2,13,56,224,243,224,241, + 224,241,192,113,192,113,192,113,192,113,192,112,192,96,192,15, + 18,36,16,1,2,1,140,3,152,3,24,3,24,3,56,63, + 254,63,254,6,112,14,96,12,96,12,96,127,252,255,248,24, + 192,24,192,57,128,49,128,49,128,14,25,50,16,1,253,3, + 0,3,0,3,0,31,240,63,248,115,120,227,56,227,16,243, + 0,255,0,127,0,63,224,15,240,3,248,3,124,3,28,195, + 28,195,28,227,28,251,120,255,240,63,224,3,0,3,0,3, + 0,21,20,60,23,1,0,0,0,96,30,0,192,115,129,192, + 97,131,128,225,195,0,225,198,0,225,206,0,225,220,0,97, + 152,0,115,176,0,30,113,224,0,231,112,1,198,48,1,142, + 56,3,142,56,7,14,56,14,14,56,12,6,48,28,7,48, + 56,3,192,21,23,69,22,1,0,1,240,0,7,120,0,14, + 60,0,14,60,0,30,60,0,30,124,0,30,120,0,31,240, + 0,31,224,0,15,192,0,15,128,0,31,143,248,63,195,160, + 123,225,128,123,241,128,241,249,128,240,251,0,240,127,0,240, + 126,0,248,63,0,120,31,240,63,247,240,15,195,192,5,10, + 10,9,2,13,56,240,240,240,112,112,112,112,112,96,9,30, + 60,11,2,251,1,0,3,128,6,0,14,0,28,0,60,0, + 56,0,120,0,120,0,112,0,112,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,112,0,120,0, + 120,0,56,0,60,0,28,0,30,0,14,0,7,0,1,128, + 9,30,60,11,0,251,64,0,240,0,56,0,60,0,28,0, + 30,0,14,0,15,0,15,0,15,0,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,0,15,0, + 15,0,15,0,14,0,30,0,28,0,56,0,48,0,96,0, + 192,0,12,13,26,14,1,11,3,0,15,0,70,64,102,112, + 246,240,63,192,15,0,63,224,254,240,230,112,70,32,7,0, + 14,0,12,12,24,13,1,3,6,0,6,0,6,0,6,0, + 6,0,127,240,255,224,6,0,6,0,6,0,6,0,6,0, + 6,10,10,9,2,250,56,252,252,60,60,56,56,112,96,192, + 10,2,4,11,1,7,255,192,255,128,5,5,5,9,2,255, + 112,248,248,248,112,14,30,60,15,1,251,0,28,0,56,0, + 56,0,120,0,112,0,112,0,224,0,224,0,224,1,192,1, + 192,3,128,3,128,3,128,7,0,7,0,7,0,14,0,14, + 0,28,0,28,0,28,0,56,0,56,0,120,0,112,0,112, + 0,224,0,224,0,192,0,14,18,36,16,1,0,7,192,24, + 224,56,112,112,120,112,120,240,60,240,60,240,60,240,60,240, + 60,240,60,240,60,240,56,112,56,120,56,56,112,28,96,15, + 128,13,19,38,16,2,0,1,128,15,128,127,128,239,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,63,224,127,248,13,19,38, + 16,1,0,15,224,56,240,120,120,240,120,112,120,0,120,0, + 240,0,240,1,224,1,192,3,128,7,0,14,0,28,8,28, + 8,56,24,127,248,255,248,255,248,13,19,38,16,1,0,31, + 128,121,224,112,240,240,240,64,240,0,240,1,224,7,192,15, + 192,3,240,0,240,0,120,0,120,0,120,0,120,128,240,192, + 240,127,224,31,128,14,19,38,17,1,0,0,48,1,240,1, + 240,3,240,7,240,6,240,12,240,12,240,24,240,56,240,48, + 240,96,240,255,252,255,248,0,240,0,240,0,240,1,248,7, + 252,13,19,38,16,1,0,63,248,63,240,63,224,112,0,112, + 0,96,0,96,0,127,128,127,224,97,240,0,248,0,120,0, + 120,0,120,0,120,0,112,128,240,193,224,127,128,14,20,40, + 16,1,0,0,112,3,240,7,128,15,0,28,0,60,0,120, + 0,120,0,115,224,255,240,252,120,240,124,240,60,240,60,240, + 60,112,60,120,56,56,56,28,112,7,192,13,19,38,16,2, + 0,255,248,255,248,255,240,192,48,128,96,128,96,0,224,0, + 192,1,192,1,128,3,128,3,128,7,0,7,0,14,0,14, + 0,30,0,28,0,56,0,14,19,38,16,1,0,15,192,24, + 240,48,120,112,120,112,120,120,120,126,240,63,192,31,224,15, + 240,63,248,120,252,248,124,240,60,240,60,240,56,112,56,56, + 112,31,192,14,20,40,16,1,255,7,192,24,240,56,120,112, + 120,240,60,240,60,240,60,240,60,248,60,124,124,63,252,31, + 60,0,56,0,120,0,112,0,240,1,224,7,128,63,0,56, + 0,5,16,16,9,2,255,112,248,248,248,112,0,0,0,0, + 0,0,112,248,248,248,112,6,21,21,9,2,250,112,248,248, + 248,112,0,0,0,0,0,0,56,252,252,60,60,56,56,112, + 96,192,13,10,20,15,1,4,0,24,0,240,7,240,63,128, + 252,0,248,0,127,0,15,224,1,248,0,48,13,7,14,15, + 1,5,255,248,255,240,0,0,0,0,0,0,255,248,255,240, + 13,10,20,15,1,4,96,0,252,0,63,128,7,240,0,248, + 1,240,15,224,127,0,248,0,192,0,12,24,48,15,1,255, + 31,192,121,224,240,240,240,240,240,240,192,240,0,240,1,224, + 1,192,3,192,3,128,7,0,7,0,6,0,6,0,6,0, + 0,0,0,0,0,0,14,0,31,0,31,0,31,0,14,0, + 26,28,112,28,1,249,0,31,192,0,0,255,248,0,3,255, + 252,0,7,224,62,0,15,128,15,0,30,0,7,128,60,30, + 35,128,60,49,225,128,120,97,225,192,120,225,224,192,240,225, + 224,192,241,225,224,192,241,225,224,192,241,225,224,192,241,225, + 224,192,241,225,225,128,241,225,225,128,248,243,227,0,120,255, + 254,0,120,125,252,0,124,56,240,0,62,0,0,0,62,0, + 2,0,31,128,6,0,15,224,63,0,7,255,248,0,1,255, + 240,0,0,63,128,0,20,20,60,20,0,0,0,32,0,0, + 240,0,0,240,0,1,248,0,1,248,0,1,248,0,3,188, + 0,3,60,0,3,60,0,7,30,0,6,30,0,14,31,0, + 15,255,0,12,7,0,28,7,128,24,7,128,24,3,128,56, + 3,192,56,3,192,254,15,240,17,20,60,19,1,0,63,224, + 0,252,120,0,60,60,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,60,0,60,120,0,63,248,0,60,30,0,60, + 15,0,60,15,0,60,7,128,60,7,128,60,7,128,60,7, + 128,60,15,0,124,30,0,255,248,0,16,20,40,18,1,0, + 1,254,6,31,28,14,56,4,56,0,112,0,112,0,240,0, + 240,0,240,0,240,0,240,0,240,0,248,0,120,0,124,3, + 63,14,31,252,15,248,3,224,18,20,60,20,1,0,63,240, + 0,252,60,0,60,14,0,60,15,0,60,7,128,60,7,128, + 60,3,192,60,3,192,60,3,192,60,3,192,60,3,192,60, + 3,192,60,3,192,60,3,128,60,7,128,60,7,128,60,15, + 0,60,14,0,124,28,0,255,240,0,15,20,40,17,1,0, + 255,252,124,12,60,12,60,12,60,12,60,0,60,0,60,0, + 60,0,63,240,60,32,60,0,60,0,60,0,60,0,60,0, + 60,2,60,6,124,14,255,254,14,20,40,16,1,0,255,252, + 124,12,60,12,60,12,60,12,60,0,60,0,60,0,60,0, + 63,240,60,32,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,126,0,255,0,18,20,60,19,1,0,1,254,0,6, + 15,0,28,6,0,56,4,0,56,0,0,120,0,0,112,0, + 0,240,0,0,240,0,0,240,0,0,240,127,192,240,127,192, + 240,15,0,240,15,0,120,15,0,120,15,0,60,15,0,30, + 15,0,15,254,0,3,240,0,20,20,60,22,1,0,255,15, + 240,126,7,224,60,3,192,60,3,192,60,3,192,60,3,192, + 60,3,192,60,3,192,60,3,192,63,255,192,60,3,192,60, + 3,192,60,3,192,60,3,192,60,3,192,60,3,192,60,3, + 192,60,3,192,126,7,224,255,15,240,8,20,20,10,1,0, + 255,126,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 60,60,126,255,14,27,54,11,252,249,7,252,1,248,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,224,1,224,49,192,127,128,255,0,60,0, + 19,20,60,20,1,0,255,31,192,126,15,0,60,14,0,60, + 28,0,60,56,0,60,112,0,60,224,0,60,224,0,61,192, + 0,63,128,0,63,192,0,61,224,0,60,240,0,60,120,0, + 60,60,0,60,62,0,60,31,0,60,15,128,126,7,224,255, + 3,128,15,20,40,16,1,0,255,0,126,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,2,60,6,124,14,255,254, + 25,20,80,27,1,0,252,0,31,128,62,0,62,0,62,0, + 62,0,62,0,126,0,63,0,126,0,55,0,254,0,55,128, + 222,0,55,129,222,0,51,193,158,0,51,195,158,0,49,195, + 158,0,49,227,30,0,48,231,30,0,48,246,30,0,48,254, + 30,0,48,124,30,0,48,124,30,0,48,56,30,0,120,56, + 63,0,252,24,127,128,19,20,60,21,1,0,248,7,224,124, + 3,192,60,1,128,62,1,128,63,1,128,63,129,128,55,129, + 128,51,193,128,51,225,128,49,225,128,48,241,128,48,249,128, + 48,125,128,48,61,128,48,31,128,48,31,128,48,15,128,48, + 7,128,120,7,128,252,1,128,18,20,60,20,1,0,3,240, + 0,12,28,0,28,14,0,56,7,0,56,7,128,112,7,128, + 112,3,192,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,248,3,128,120,7,128,120,7,0,60,15, + 0,30,30,0,15,248,0,3,224,0,16,20,40,18,1,0, + 63,240,252,60,60,30,60,15,60,15,60,15,60,15,60,15, + 60,14,60,30,62,60,61,240,60,0,60,0,60,0,60,0, + 60,0,60,0,126,0,255,128,21,25,75,20,1,251,3,240, + 0,14,28,0,28,14,0,56,15,0,56,7,128,112,7,128, + 112,3,128,240,3,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,192,240,3,128,120,3,128,120,7,128,60,7, + 0,28,14,0,14,28,0,3,248,0,0,60,0,0,15,8, + 0,7,248,0,3,240,0,0,224,18,20,60,19,1,0,63, + 224,0,252,120,0,60,60,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,60,0,60,252,0,63,240,0,63,224,0, + 60,240,0,60,112,0,60,120,0,60,60,0,60,62,0,60, + 30,0,60,15,0,126,15,192,255,7,128,13,20,40,16,2, + 0,15,224,48,224,96,96,224,0,224,0,240,0,252,0,127, + 0,127,192,31,224,15,240,3,248,0,248,0,120,128,120,192, + 120,192,112,224,224,255,192,63,0,18,20,60,19,0,0,255, + 255,192,193,225,192,193,224,192,193,224,192,129,224,128,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,3,240,0,7,248,0,19,20,60,21,1, + 0,255,7,224,126,3,192,60,1,128,60,1,128,60,1,128, + 60,1,128,60,1,128,60,1,128,60,1,128,60,1,128,60, + 1,128,60,1,128,60,1,128,60,1,128,60,1,128,60,3, + 0,30,3,0,15,6,0,7,252,0,3,240,0,21,20,60, + 21,0,0,255,3,248,60,0,224,60,0,192,30,0,192,30, + 1,128,15,1,128,15,3,128,15,3,0,7,131,0,7,135, + 0,3,198,0,3,198,0,3,206,0,1,236,0,1,236,0, + 0,248,0,0,248,0,0,248,0,0,112,0,0,96,0,27, + 20,80,27,0,0,255,6,15,224,60,6,3,192,28,15,3, + 128,28,15,3,0,28,15,3,0,30,31,131,0,30,27,131, + 0,14,27,199,0,14,59,198,0,15,49,198,0,15,49,230, + 0,7,112,238,0,7,96,252,0,7,224,252,0,7,192,124, + 0,3,192,124,0,3,192,60,0,3,128,56,0,3,128,56, + 0,3,0,16,0,20,20,60,20,0,0,127,143,224,62,3, + 128,30,7,0,15,6,0,15,142,0,7,140,0,3,220,0, + 3,248,0,1,240,0,0,240,0,0,248,0,1,248,0,3, + 188,0,3,190,0,7,30,0,6,15,0,14,15,128,28,7, + 128,60,7,192,254,31,240,19,20,60,20,0,0,252,7,224, + 60,3,192,30,3,128,15,3,0,15,7,0,7,134,0,3, + 142,0,3,204,0,1,220,0,1,248,0,0,248,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,1,248,0,3,252,0,15,20,40,17,1,0,127, + 254,96,62,96,124,64,124,64,248,0,240,1,240,1,224,3, + 224,7,192,7,192,15,128,15,0,31,0,62,0,62,2,124, + 2,124,6,248,6,255,254,9,30,60,11,2,251,255,128,255, + 128,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,255,128,255,128,13,30,60,15,1,251,192, + 0,224,0,224,0,112,0,112,0,48,0,56,0,56,0,28, + 0,28,0,28,0,14,0,14,0,6,0,7,0,7,0,3, + 128,3,128,3,128,1,192,1,192,0,192,0,224,0,224,0, + 112,0,112,0,112,0,56,0,56,0,24,9,30,60,11,0, + 251,255,128,255,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,255,128,255,128,12,15,30, + 16,2,9,2,0,6,0,15,0,15,0,27,0,27,128,17, + 128,49,192,49,192,96,192,96,224,96,96,192,112,192,48,128, + 32,14,2,4,15,1,252,255,252,255,248,7,8,8,10,0, + 16,112,240,120,56,60,28,14,6,14,15,30,16,1,0,31, + 192,112,224,240,240,192,240,0,240,3,240,31,240,63,240,120, + 240,240,240,240,240,240,240,251,252,126,248,56,96,16,24,48, + 17,0,0,12,0,252,0,124,0,60,0,60,0,60,0,60, + 0,60,0,60,0,60,120,61,252,63,254,63,30,60,15,60, + 7,60,7,60,7,60,7,60,6,60,14,62,28,63,248,31, + 240,7,192,13,15,30,15,1,0,3,248,12,120,56,48,112, + 16,112,0,240,0,240,0,240,0,240,0,248,0,248,8,124, + 56,63,240,31,224,15,128,16,24,48,18,1,0,0,28,0, + 252,0,60,0,60,0,60,0,60,0,60,0,60,0,60,7, + 252,24,124,56,60,112,60,112,60,240,60,240,60,240,60,240, + 60,248,60,248,60,124,124,127,255,63,190,30,24,13,15,30, + 15,1,0,7,192,24,224,56,112,112,120,112,120,240,120,255, + 240,240,0,240,0,240,0,248,8,124,56,127,240,63,224,15, + 128,13,24,48,11,1,0,1,240,7,248,14,112,28,32,28, + 0,60,0,60,0,60,0,60,0,255,192,60,128,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,127,0,255,128,16,23,46,17,0,248,7,227,28, + 127,56,126,120,60,120,60,120,60,120,60,60,56,60,112,15, + 192,14,0,28,0,31,192,63,252,15,254,31,255,120,127,240, + 15,240,14,240,14,120,28,63,248,15,192,17,24,72,18,1, + 0,12,0,0,252,0,0,124,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,120,0,61, + 252,0,63,254,0,63,30,0,62,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,126,63,0,255,127,128,8,21,21,10,1,0,28, + 62,62,28,0,0,28,252,124,60,60,60,60,60,60,60,60, + 60,60,126,255,12,29,58,9,251,248,0,224,1,240,1,240, + 0,224,0,0,0,0,0,224,7,224,3,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,192,1,192,99,128,255,0, + 254,0,120,0,17,24,72,18,1,0,12,0,0,252,0,0, + 124,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,63,128,60,30,0,60,60,0,60,112, + 0,60,224,0,61,192,0,63,192,0,63,224,0,61,224,0, + 60,240,0,60,120,0,60,60,0,60,62,0,126,31,128,255, + 15,0,8,24,24,10,1,0,12,252,124,60,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,126,255, + 26,15,60,28,1,0,28,120,60,0,252,252,254,0,127,255, + 255,0,63,31,143,0,60,30,15,0,60,30,15,0,60,30, + 15,0,60,30,15,0,60,30,15,0,60,30,15,0,60,30, + 15,0,60,30,15,0,60,30,15,0,126,63,31,128,255,127, + 191,192,17,15,45,18,1,0,12,60,0,252,252,0,127,254, + 0,63,30,0,62,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,126, + 63,0,255,127,128,15,15,30,17,1,0,7,224,24,112,56, + 56,112,60,112,30,240,30,240,30,240,30,240,30,240,30,240, + 28,120,28,56,56,28,48,15,192,16,23,46,18,1,248,12, + 120,252,252,127,254,62,62,60,31,60,15,60,15,60,15,60, + 15,60,15,60,14,62,30,63,252,61,248,60,240,60,0,60, + 0,60,0,60,0,60,0,60,0,127,0,255,128,17,23,69, + 18,1,248,3,194,0,12,54,0,56,30,0,112,30,0,112, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,248,30, + 0,248,30,0,124,126,0,127,254,0,63,222,0,15,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,63,0,0,255,128,13,15,30,14,1,0,24,240, + 249,248,123,248,62,48,60,48,60,48,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,126,0,255,0,11,15,30,13, + 1,0,31,192,97,192,225,128,224,128,248,0,254,0,127,128, + 127,192,31,224,7,224,129,224,192,224,192,192,224,192,255,0, + 11,20,40,12,0,0,4,0,28,0,60,0,60,0,60,0, + 255,224,60,64,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,96,63,224,31,128,14,0,17,15, + 45,18,0,0,28,14,0,252,126,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,126,0,63,255,128,31,223,0,15,12, + 0,16,15,30,16,0,0,254,31,124,14,60,12,60,12,30, + 28,30,24,15,24,15,48,7,48,7,240,7,224,3,224,3, + 192,1,192,1,128,23,15,45,23,0,0,254,24,62,124,24, + 28,60,28,24,60,60,24,28,62,48,30,126,48,30,111,48, + 14,111,112,15,199,96,15,199,224,7,195,224,7,131,192,7, + 131,192,3,1,192,2,1,128,16,15,30,17,0,0,255,63, + 62,28,30,24,15,48,15,240,7,224,3,192,3,224,3,224, + 6,240,14,248,28,120,24,60,120,62,252,127,17,23,69,16, + 255,248,127,15,128,62,7,0,30,6,0,30,6,0,15,14, + 0,15,12,0,7,140,0,7,152,0,7,152,0,3,248,0, + 3,240,0,1,240,0,1,240,0,1,224,0,0,224,0,0, + 192,0,0,192,0,1,192,0,1,128,0,39,128,0,127,0, + 0,254,0,0,120,0,0,13,15,30,15,1,0,127,248,96, + 248,65,240,65,224,3,224,7,192,7,128,15,128,15,0,31, + 0,62,16,60,24,124,24,248,24,255,248,9,30,60,12,2, + 251,1,0,7,128,14,0,28,0,60,0,60,0,60,0,60, + 0,62,0,30,0,30,0,30,0,30,0,60,0,120,0,252, + 0,60,0,30,0,30,0,30,0,30,0,62,0,60,0,60, + 0,60,0,60,0,28,0,30,0,7,0,1,128,2,32,32, + 7,3,250,64,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,128,9,30,60,12,1,251,64,0,240,0,60,0,28, + 0,30,0,30,0,30,0,30,0,62,0,60,0,60,0,60, + 0,60,0,30,0,31,128,15,0,30,0,60,0,60,0,60, + 0,60,0,62,0,30,0,30,0,30,0,30,0,28,0,56, + 0,112,0,192,0,14,6,12,16,1,7,28,8,62,12,127, + 136,71,240,131,240,128,224,255}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--40-400-72-72-P-200-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=34 h=41 x= 4 y=23 dx=35 dy= 0 ascent=34 len=136 + Font Bounding box w=61 h=57 x=-20 y=-14 + Calculated Min Values x=-6 y=-11 dx= 0 dy= 0 + Pure Font ascent =25 descent=-9 + X Font ascent =31 descent=-9 + Max Font ascent =34 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb25[14643] U8G_SECTION(".progmem.u8g_font_gdb25") = { + 0,61,57,236,242,25,7,167,18,92,32,255,247,34,245,31, + 247,0,0,0,10,0,0,6,30,30,12,3,255,12,60,252, + 252,252,124,120,120,120,120,120,120,120,120,120,120,120,120,56, + 48,48,32,0,0,56,124,252,252,252,120,13,13,26,19,3, + 16,24,56,248,248,248,248,248,248,248,248,248,248,248,240,112, + 240,112,112,112,112,112,112,112,112,112,112,19,23,69,20,1, + 2,0,97,192,0,227,128,0,227,128,0,195,128,1,195,0, + 1,199,0,31,255,224,31,255,224,35,142,0,3,142,0,3, + 14,0,7,12,0,7,28,0,7,28,0,127,255,128,255,255, + 128,14,56,0,12,56,0,28,48,0,28,112,0,24,112,0, + 24,112,0,32,224,0,17,30,90,21,2,253,0,192,0,1, + 192,0,1,192,0,3,240,0,31,254,0,63,255,128,113,223, + 0,225,207,0,225,199,0,225,194,0,241,192,0,255,192,0, + 127,192,0,63,248,0,15,252,0,3,254,0,1,255,0,1, + 223,128,1,207,128,193,199,128,193,199,128,225,199,128,241,207, + 0,253,207,0,255,254,0,63,252,0,7,224,0,1,192,0, + 1,192,0,1,128,0,26,25,100,28,1,0,0,0,3,0, + 15,128,15,0,63,192,14,0,113,224,28,0,112,224,56,0, + 224,112,120,0,224,112,112,0,224,112,224,0,224,113,192,0, + 224,115,192,0,96,103,128,0,112,103,0,0,48,206,62,0, + 31,28,99,0,0,60,195,128,0,56,193,128,0,113,193,192, + 0,225,193,192,1,225,193,192,1,193,193,192,3,129,193,192, + 7,0,225,128,15,0,227,128,14,0,127,0,28,0,62,0, + 27,28,112,28,1,0,0,126,0,0,1,255,128,0,3,143, + 128,0,7,7,192,0,7,7,192,0,15,7,192,0,15,7, + 192,0,15,15,128,0,15,159,0,0,15,191,0,0,7,254, + 0,0,7,248,0,0,7,240,0,0,15,240,255,224,31,241, + 255,192,63,248,61,128,125,252,60,0,124,254,28,0,248,254, + 28,0,248,127,28,0,248,63,184,0,248,31,248,0,248,15, + 240,0,252,7,248,0,124,3,252,0,63,7,255,192,31,254, + 127,128,7,240,28,0,5,13,13,11,3,16,24,248,248,248, + 248,248,248,112,112,112,112,112,112,11,37,74,13,2,250,0, + 64,1,224,3,192,7,128,15,0,15,0,30,0,30,0,60, + 0,60,0,124,0,124,0,120,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,120, + 0,124,0,124,0,124,0,60,0,62,0,30,0,31,0,15, + 0,7,128,3,192,1,224,0,64,11,37,74,13,0,250,64, + 0,240,0,120,0,60,0,30,0,31,0,15,0,15,128,7, + 128,7,192,7,192,7,192,7,192,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,192,7, + 192,7,192,7,192,7,128,15,128,15,0,15,0,30,0,30, + 0,60,0,120,0,240,0,64,0,16,16,32,18,1,14,0, + 192,3,192,3,192,99,140,123,158,125,191,127,252,15,224,7, + 224,63,252,253,190,249,158,51,142,3,192,3,192,3,0,15, + 14,28,17,1,4,1,128,3,128,3,128,3,128,3,128,3, + 128,127,254,255,252,3,128,3,128,3,128,3,128,3,128,3, + 0,8,12,12,11,2,249,30,127,255,127,31,31,30,30,60, + 56,112,96,12,2,4,14,1,9,127,240,255,240,6,6,6, + 11,3,255,56,124,252,252,252,120,17,38,114,19,1,249,0, + 1,128,0,7,128,0,7,128,0,15,0,0,15,0,0,15, + 0,0,30,0,0,30,0,0,28,0,0,60,0,0,60,0, + 0,120,0,0,120,0,0,120,0,0,240,0,0,240,0,0, + 224,0,1,224,0,1,224,0,3,192,0,3,192,0,3,192, + 0,7,128,0,7,128,0,7,0,0,15,0,0,15,0,0, + 30,0,0,30,0,0,30,0,0,60,0,0,60,0,0,56, + 0,0,120,0,0,120,0,0,240,0,0,240,0,0,192,0, + 0,18,24,72,20,1,0,3,240,0,7,252,0,30,62,0, + 28,31,0,60,15,0,120,15,128,120,15,128,120,7,128,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,248,7,192,248,7,192,120,7,128,124,7,128,124,15,128, + 60,15,0,62,14,0,31,30,0,15,248,0,3,224,0,16, + 24,48,20,2,0,0,96,3,224,31,224,255,224,99,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,7, + 240,127,255,127,255,16,24,48,20,2,0,3,248,15,252,60, + 62,124,63,120,31,248,31,112,31,0,31,0,62,0,60,0, + 124,0,120,0,240,1,224,3,224,3,192,7,128,15,1,30, + 3,60,3,120,3,127,255,255,255,255,255,16,24,48,20,2, + 0,7,240,31,248,60,124,120,62,248,62,248,62,64,62,0, + 60,0,124,0,240,7,240,7,252,0,254,0,62,0,63,0, + 31,0,31,0,31,0,31,0,30,192,62,240,124,127,248,15, + 192,17,24,72,20,1,0,0,12,0,0,124,0,0,124,0, + 0,252,0,1,252,0,1,252,0,3,188,0,7,188,0,7, + 60,0,14,60,0,14,60,0,28,60,0,56,60,0,56,60, + 0,112,60,0,255,255,128,255,255,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,3,255,128,3,255,128,17, + 24,72,20,1,0,31,255,0,31,255,128,31,254,0,31,252, + 0,24,0,0,56,0,0,56,0,0,56,0,0,56,0,0, + 63,240,0,63,252,0,48,126,0,96,31,0,0,31,0,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,31, + 0,96,31,0,248,126,0,63,252,0,7,224,0,17,24,72, + 20,2,0,0,14,0,0,126,0,1,240,0,7,192,0,15, + 128,0,30,0,0,62,0,0,60,0,0,124,0,0,121,248, + 0,127,254,0,254,63,0,252,31,0,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,124,15,128,124,15,0,60, + 31,0,31,30,0,15,252,0,3,240,0,17,24,72,20,2, + 0,127,255,128,127,255,0,255,255,0,255,255,0,224,6,0, + 192,14,0,128,12,0,0,28,0,0,28,0,0,56,0,0, + 56,0,0,112,0,0,112,0,0,240,0,0,224,0,1,224, + 0,1,192,0,3,192,0,3,192,0,7,128,0,7,128,0, + 15,128,0,31,0,0,28,0,0,17,24,72,21,2,0,3, + 240,0,15,252,0,28,62,0,24,31,0,56,31,0,56,31, + 0,56,31,0,60,62,0,63,60,0,31,248,0,15,240,0, + 7,252,0,14,254,0,62,63,0,124,31,128,120,31,128,248, + 15,128,248,15,128,248,15,128,248,15,0,124,31,0,126,62, + 0,63,252,0,7,224,0,17,25,75,20,2,255,3,240,0, + 15,252,0,30,62,0,60,30,0,120,31,0,120,31,0,248, + 15,128,248,15,128,248,15,128,248,15,128,248,15,128,124,31, + 128,126,63,128,63,255,128,15,207,0,0,15,0,0,31,0, + 0,30,0,0,62,0,0,124,0,0,248,0,1,240,0,15, + 192,0,63,0,0,56,0,0,6,19,19,11,3,255,56,124, + 252,252,252,120,0,0,0,0,0,0,0,56,124,252,252,252, + 120,8,26,26,11,2,249,8,62,126,126,126,124,0,0,0, + 0,0,0,0,0,30,127,255,127,31,31,30,30,60,56,112, + 96,16,13,26,18,1,5,0,3,0,31,0,255,3,252,31, + 224,127,128,252,0,254,0,127,192,15,248,1,255,0,63,0, + 6,16,8,16,18,1,7,127,255,255,255,0,0,0,0,0, + 0,0,0,127,255,255,255,16,13,26,18,1,5,112,0,252, + 0,255,128,31,240,3,254,0,127,0,63,0,255,7,248,63, + 224,127,0,248,0,192,0,15,30,60,18,1,255,7,240,31, + 248,60,124,120,126,248,62,248,62,248,62,224,62,0,62,0, + 124,0,124,0,248,0,240,1,240,1,224,1,192,3,192,3, + 128,3,128,3,128,3,128,0,0,0,0,0,0,3,128,7, + 192,15,192,15,192,15,192,7,128,31,34,136,35,2,248,0, + 7,248,0,0,63,255,0,0,255,255,192,1,248,15,224,3, + 192,1,240,7,128,0,248,15,0,0,120,30,0,0,60,60, + 3,195,60,56,15,238,28,120,30,126,30,120,60,62,14,112, + 120,62,14,240,120,62,14,240,248,62,14,240,248,62,14,240, + 248,62,14,240,248,62,14,240,248,62,12,240,248,62,28,240, + 252,62,28,248,124,126,56,120,127,255,240,120,127,191,224,124, + 63,159,192,60,30,15,0,62,0,0,0,31,0,0,0,31, + 128,0,48,15,224,0,240,7,248,7,224,1,255,255,192,0, + 127,255,0,0,15,248,0,25,25,100,25,0,0,0,4,0, + 0,0,30,0,0,0,62,0,0,0,126,0,0,0,127,0, + 0,0,111,0,0,0,239,128,0,0,239,128,0,0,199,128, + 0,1,199,192,0,1,199,192,0,1,131,192,0,3,131,224, + 0,3,131,224,0,3,255,224,0,7,255,240,0,7,0,240, + 0,6,0,248,0,14,0,248,0,14,0,120,0,12,0,124, + 0,28,0,124,0,28,0,124,0,255,129,255,0,255,129,255, + 128,22,25,75,24,0,0,15,254,0,255,255,128,223,15,224, + 31,3,240,31,1,240,31,1,240,31,1,240,31,1,240,31, + 1,224,31,3,224,31,15,128,31,255,0,31,255,224,31,3, + 240,31,1,248,31,0,248,31,0,124,31,0,124,31,0,124, + 31,0,124,31,0,124,31,0,248,31,3,240,127,255,224,255, + 255,0,20,25,75,22,1,0,0,127,128,3,255,240,7,135, + 224,15,1,224,30,0,192,60,0,64,60,0,0,124,0,0, + 120,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,252,0,0,124,0,0,124,0, + 0,126,0,32,63,0,112,31,193,224,15,255,192,7,255,0, + 1,252,0,22,25,75,25,1,0,15,252,0,255,255,128,255, + 15,192,31,3,224,31,1,240,31,1,248,31,0,248,31,0, + 248,31,0,124,31,0,124,31,0,124,31,0,124,31,0,124, + 31,0,124,31,0,124,31,0,124,31,0,120,31,0,248,31, + 0,248,31,1,240,31,1,240,31,3,224,31,7,192,127,255, + 128,255,252,0,19,25,75,21,1,0,255,255,192,255,255,192, + 62,1,192,30,1,192,30,1,128,30,1,128,30,0,128,30, + 0,0,30,0,0,30,0,0,30,0,0,31,255,0,31,254, + 0,30,6,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,96,30,0,96,30,0,224,63,1,224,255, + 255,224,255,255,192,18,25,75,20,1,0,255,255,192,255,255, + 192,62,1,192,30,1,192,30,1,192,30,0,192,30,0,128, + 30,0,0,30,0,0,30,0,0,30,0,0,31,254,0,31, + 254,0,30,4,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,62,0,0, + 255,192,0,255,224,0,22,25,75,24,1,0,0,127,128,1, + 255,240,7,131,240,15,1,224,30,0,224,60,0,64,60,0, + 0,124,0,0,120,0,0,248,0,0,248,0,0,248,0,0, + 248,15,252,248,15,252,248,1,240,248,1,240,252,1,240,124, + 1,240,124,1,240,126,1,240,63,1,240,31,129,240,15,255, + 192,7,255,128,0,252,0,25,25,100,27,1,0,255,227,255, + 128,127,227,255,128,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,31,255,252,0,31,255,252, + 0,31,0,124,0,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,127,195,255,128,255,227,255, + 128,11,25,50,13,1,0,255,224,127,224,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,127,192,255,224,18,33,99,13,251,248,3, + 255,192,1,255,128,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,60,0,0,60,0, + 0,56,0,16,120,0,56,112,0,127,224,0,255,128,0,62, + 0,0,24,25,75,25,0,0,255,227,254,127,193,254,31,0, + 240,31,1,224,31,3,192,31,7,128,31,15,0,31,14,0, + 31,28,0,31,60,0,31,120,0,31,240,0,31,248,0,31, + 124,0,31,60,0,31,62,0,31,31,0,31,15,128,31,7, + 192,31,3,224,31,3,240,31,1,248,31,0,255,127,224,127, + 255,224,60,20,25,75,20,0,0,255,224,0,127,224,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,48,31,0,96,31,0,96,31,128,224,127,255, + 224,255,255,224,31,25,100,34,1,0,255,0,1,254,127,0, + 1,254,31,128,1,240,31,128,3,240,31,192,3,240,31,192, + 7,240,31,192,7,240,31,224,14,240,29,224,14,240,29,240, + 30,240,28,240,28,240,28,248,28,240,28,248,56,240,28,124, + 56,248,28,124,112,248,28,60,112,248,28,62,224,248,28,30, + 224,248,28,31,224,248,28,31,192,248,28,15,192,248,28,15, + 128,248,28,7,128,248,255,7,7,254,255,3,7,254,25,25, + 100,27,1,0,254,0,255,128,255,0,127,0,31,0,28,0, + 31,128,28,0,31,192,28,0,31,192,28,0,31,224,28,0, + 29,240,28,0,29,248,28,0,28,248,28,0,28,124,28,0, + 28,126,28,0,28,62,28,0,28,31,28,0,28,15,156,0, + 28,15,156,0,28,7,220,0,28,3,252,0,28,3,252,0, + 28,1,252,0,28,0,252,0,28,0,252,0,28,0,124,0, + 127,0,60,0,255,128,12,0,23,25,75,25,1,0,0,126, + 0,3,255,192,7,135,224,14,1,240,30,0,248,60,0,248, + 60,0,124,124,0,124,120,0,126,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,252,0, + 60,124,0,124,124,0,120,62,0,120,62,0,240,31,1,224, + 15,195,192,7,255,0,0,252,0,21,25,75,23,1,0,15, + 254,0,255,255,192,255,7,224,31,3,240,31,1,248,31,0, + 248,31,0,248,31,0,248,31,0,248,31,0,248,31,1,240, + 31,1,240,31,135,224,31,127,128,31,62,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,127,224,0,255,224,0,27,31,124,25,1,250, + 0,126,0,0,3,255,192,0,7,135,224,0,14,1,240,0, + 30,0,248,0,60,0,248,0,60,0,124,0,124,0,124,0, + 120,0,124,0,248,0,62,0,248,0,62,0,248,0,62,0, + 248,0,62,0,248,0,62,0,248,0,62,0,248,0,62,0, + 252,0,60,0,124,0,124,0,124,0,120,0,62,0,120,0, + 62,0,240,0,31,1,224,0,15,195,192,0,7,255,128,0, + 0,255,0,0,0,7,224,0,0,1,248,96,0,0,255,224, + 0,0,127,192,0,0,31,128,0,0,7,0,23,25,75,24, + 1,0,15,252,0,255,255,128,255,15,192,31,7,192,31,3, + 224,31,3,224,31,3,224,31,3,224,31,3,224,31,7,192, + 31,7,128,31,255,0,31,254,0,31,124,0,31,30,0,31, + 15,0,31,15,0,31,7,128,31,7,192,31,3,224,31,3, + 224,31,1,240,31,1,254,127,192,254,255,224,248,17,25,75, + 21,2,0,3,252,0,31,255,0,60,63,0,112,14,0,240, + 6,0,240,0,0,248,0,0,252,0,0,254,0,0,127,128, + 0,63,224,0,31,248,0,7,254,0,1,255,0,0,127,0, + 0,31,128,0,15,128,0,7,128,192,7,128,192,7,128,224, + 7,0,240,14,0,252,28,0,255,248,0,31,224,0,23,25, + 75,23,0,0,127,255,252,127,255,254,96,124,14,224,124,12, + 192,124,12,192,124,12,192,124,12,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,0,124,0,0,124,0,3,255,128,3,255,128,25, + 25,100,27,1,0,255,224,255,128,127,224,255,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,24, + 0,15,128,56,0,15,128,56,0,7,192,112,0,3,224,224, + 0,1,255,192,0,0,127,0,0,26,25,100,27,0,0,255, + 192,63,192,127,192,63,192,31,0,14,0,31,0,14,0,15, + 128,28,0,15,128,28,0,15,128,28,0,7,192,56,0,7, + 192,56,0,3,224,48,0,3,224,112,0,3,224,112,0,1, + 240,224,0,1,240,224,0,0,240,224,0,0,249,192,0,0, + 249,192,0,0,125,192,0,0,127,128,0,0,63,128,0,0, + 63,0,0,0,63,0,0,0,31,0,0,0,30,0,0,0, + 8,0,0,34,25,125,34,0,0,255,192,224,127,192,127,128, + 224,63,192,30,0,224,14,0,31,1,240,14,0,31,1,240, + 12,0,15,1,248,28,0,15,3,248,28,0,15,131,248,28, + 0,15,131,252,28,0,7,135,60,24,0,7,135,60,56,0, + 7,134,62,56,0,7,206,30,56,0,3,206,31,56,0,3, + 204,15,48,0,3,220,15,112,0,3,252,15,240,0,3,248, + 7,240,0,1,248,7,224,0,1,248,7,224,0,1,240,3, + 224,0,1,240,3,224,0,0,240,1,224,0,0,224,1,192, + 0,0,192,1,128,0,25,25,100,25,0,0,127,225,255,0, + 127,225,255,0,31,128,124,0,15,128,112,0,15,192,240,0, + 7,224,224,0,3,225,192,0,1,243,192,0,1,251,128,0, + 0,255,0,0,0,127,0,0,0,126,0,0,0,62,0,0, + 0,127,0,0,0,127,128,0,0,239,192,0,1,231,192,0, + 1,195,224,0,3,131,240,0,7,129,240,0,7,0,248,0, + 14,0,252,0,30,0,254,0,255,131,255,128,255,131,255,128, + 24,25,75,25,0,0,126,0,255,255,0,255,31,0,56,15, + 128,56,15,192,112,7,192,112,3,224,224,3,224,224,1,241, + 192,1,241,192,0,251,128,0,251,128,0,127,0,0,127,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,1,255,192,1,255, + 192,19,25,75,22,1,0,63,255,224,63,255,224,120,7,192, + 112,15,192,96,15,128,96,31,128,32,63,0,0,62,0,0, + 126,0,0,124,0,0,252,0,1,248,0,1,240,0,3,240, + 0,3,224,0,7,224,0,15,192,0,15,128,0,31,128,32, + 31,0,96,63,0,96,126,0,96,124,0,224,255,255,224,255, + 255,224,11,37,74,14,2,250,255,224,255,224,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,255,224, + 255,224,17,38,114,19,1,249,192,0,0,240,0,0,112,0, + 0,112,0,0,120,0,0,56,0,0,60,0,0,60,0,0, + 28,0,0,30,0,0,30,0,0,14,0,0,15,0,0,7, + 0,0,7,128,0,7,128,0,3,128,0,3,192,0,3,192, + 0,1,192,0,1,224,0,0,224,0,0,224,0,0,240,0, + 0,112,0,0,120,0,0,120,0,0,56,0,0,60,0,0, + 60,0,0,28,0,0,30,0,0,14,0,0,15,0,0,15, + 0,0,7,0,0,7,128,0,1,128,10,37,74,13,1,250, + 255,192,255,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,255,192,255,192,16,19,38,20,2,11, + 0,128,3,128,3,192,3,192,7,224,6,224,14,224,12,112, + 12,112,28,120,24,56,24,56,48,28,48,28,112,28,96,14, + 96,14,224,7,128,6,17,2,6,19,1,251,127,255,128,255, + 255,128,9,10,20,13,0,20,56,0,248,0,252,0,124,0, + 62,0,30,0,15,0,7,0,3,128,1,0,19,18,54,20, + 1,0,1,248,0,15,254,0,62,63,0,124,31,0,124,31, + 0,112,31,0,0,31,0,1,255,0,15,255,0,63,31,0, + 124,31,0,120,31,0,248,31,0,248,31,32,248,127,224,255, + 223,192,127,159,128,62,14,0,20,30,90,21,0,0,6,0, + 0,254,0,0,254,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,31,0,62,127,192,63,255,192,63,199,224,63,1, + 224,62,1,240,62,0,240,62,0,240,62,0,240,62,0,240, + 62,0,240,62,0,224,62,1,224,62,1,192,63,131,128,63, + 255,0,15,252,0,1,240,0,16,18,36,18,1,0,1,252, + 7,255,31,31,60,15,60,7,120,6,120,0,248,0,248,0, + 248,0,248,0,248,0,124,0,126,3,63,7,63,254,15,252, + 3,240,21,30,90,22,1,0,0,1,192,0,63,192,0,63, + 192,0,7,192,0,7,192,0,7,192,0,7,192,0,7,192, + 0,7,192,0,7,192,0,7,192,0,7,192,3,247,192,15, + 255,192,30,31,192,60,15,192,124,7,192,120,7,192,248,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,252,7,192, + 252,15,192,126,31,192,127,255,248,63,247,248,31,231,224,7, + 131,128,17,18,54,19,1,0,1,240,0,15,252,0,30,62, + 0,60,31,0,120,15,0,120,15,128,248,15,128,255,255,128, + 255,254,0,248,0,0,248,0,0,248,0,0,252,0,0,126, + 1,128,127,7,0,63,254,0,31,252,0,7,240,0,17,29, + 87,14,0,0,0,63,0,0,255,128,3,143,0,7,134,0, + 7,0,0,15,0,0,15,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,127,252,0,255,248,0,31,16,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,127,240,0,255,240,0,21,27,81,22,0, + 247,1,248,24,15,255,248,30,31,240,60,15,128,124,7,192, + 124,7,192,124,7,192,124,7,192,62,7,128,63,15,0,31, + 254,0,3,248,0,7,128,0,15,128,0,31,192,0,31,255, + 0,31,255,224,7,255,240,30,255,248,124,3,248,120,0,248, + 248,0,248,248,0,240,252,1,224,127,3,192,31,255,0,3, + 248,0,22,30,90,23,1,0,6,0,0,254,0,0,254,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,15,128,62, + 63,192,62,127,224,62,255,224,63,199,224,63,3,224,62,3, + 224,62,3,224,62,3,224,62,3,224,62,3,224,62,3,224, + 62,3,224,62,3,224,62,3,224,62,3,224,255,143,248,255, + 223,252,10,27,54,12,1,0,30,0,63,0,63,0,63,0, + 30,0,0,0,0,0,0,0,0,0,14,0,254,0,254,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,255,128,255,192,15,36, + 72,11,250,247,0,60,0,126,0,126,0,126,0,60,0,0, + 0,0,0,0,0,0,0,28,3,252,3,252,0,124,0,124, + 0,124,0,124,0,124,0,124,0,124,0,124,0,124,0,124, + 0,124,0,124,0,124,0,124,0,124,0,124,0,124,0,120, + 0,120,32,240,120,224,255,192,255,128,60,0,21,30,90,22, + 1,0,6,0,0,254,0,0,254,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,15,240,62,7,240,62,7,128,62, + 15,0,62,62,0,62,120,0,62,240,0,63,224,0,63,240, + 0,62,248,0,62,124,0,62,62,0,62,31,0,62,31,128, + 62,15,192,62,7,224,255,131,248,255,129,224,10,30,60,12, + 1,0,6,0,254,0,254,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,255,128,255,192,34,18, + 90,34,0,0,6,15,192,248,0,255,63,227,252,0,255,127, + 255,254,0,31,227,252,126,0,31,129,248,62,0,31,1,240, + 62,0,31,1,240,62,0,31,1,240,62,0,31,1,240,62, + 0,31,1,240,62,0,31,1,240,62,0,31,1,240,62,0, + 31,1,240,62,0,31,1,240,62,0,31,1,240,62,0,31, + 1,240,62,0,127,199,252,255,128,255,199,252,255,192,22,18, + 54,23,1,0,14,15,128,254,63,192,254,255,224,63,255,224, + 63,199,224,63,3,224,62,3,224,62,3,224,62,3,224,62, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,62,3,224,255,143,248,255,223,252,19,18,54,21,1,0, + 1,248,0,7,254,0,30,31,128,60,15,128,124,7,192,120, + 7,192,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,192,124,3,192,124,7,128,62,7,128,63,15,0, + 15,252,0,3,240,0,20,27,81,22,1,247,14,31,0,254, + 127,128,254,255,192,63,135,224,63,3,224,62,1,240,62,0, + 240,62,0,240,62,0,240,62,0,240,62,0,240,62,0,224, + 62,0,224,62,1,192,63,195,192,63,255,128,62,255,0,62, + 60,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,255,192,0,255,192,0,21,27,81, + 22,1,247,1,240,64,7,252,224,14,31,192,60,15,192,60, + 7,192,120,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,248,7,192,252,7,192,252,15,192,126,31,192,127,255,192, + 63,247,192,31,231,192,7,135,192,0,7,192,0,7,192,0, + 7,192,0,7,192,0,7,192,0,7,192,0,7,192,0,63, + 240,0,63,248,16,18,36,18,1,0,14,30,254,127,254,255, + 63,255,63,207,31,135,31,6,30,6,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,62,0,255,192,255,224,14,18, + 36,17,2,0,15,192,63,248,120,248,240,112,240,48,248,48, + 254,0,127,128,63,224,15,248,3,248,192,252,192,124,224,60, + 224,60,248,120,255,240,63,192,15,25,50,15,0,0,3,0, + 7,0,15,0,31,0,31,0,31,0,31,0,127,254,255,252, + 31,8,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,140,31,254,31,248,15,224,7,128, + 22,18,54,23,1,0,14,0,224,254,31,224,126,7,224,62, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,62,3,224,62,3,224,62,3,224,62,3,224,62,7,224, + 63,31,252,31,251,252,31,243,240,15,193,192,20,18,54,20, + 0,0,255,131,240,127,3,240,62,1,192,31,1,192,31,1, + 128,15,3,128,15,131,0,15,135,0,7,199,0,7,206,0, + 3,238,0,3,236,0,1,252,0,1,252,0,0,248,0,0, + 248,0,0,240,0,0,96,0,28,18,72,29,0,0,255,131, + 3,240,127,3,129,240,62,3,128,192,30,7,193,192,31,7, + 193,192,31,15,193,192,15,15,227,128,15,157,227,128,15,157, + 243,128,7,153,243,0,7,248,255,0,7,240,255,0,3,240, + 126,0,3,240,126,0,3,224,62,0,1,224,60,0,1,192, + 28,0,1,128,24,0,21,18,54,21,0,0,255,199,240,255, + 199,240,63,131,192,15,131,128,15,199,0,7,238,0,3,252, + 0,1,248,0,1,248,0,0,252,0,1,254,0,3,190,0, + 7,31,0,6,31,128,12,15,192,28,7,224,127,31,248,255, + 31,248,21,27,81,20,255,247,127,193,248,63,129,248,31,0, + 224,15,128,224,15,129,192,7,193,192,7,193,128,7,195,128, + 3,227,128,3,231,0,1,247,0,1,246,0,0,254,0,0, + 254,0,0,252,0,0,124,0,0,120,0,0,56,0,0,56, + 0,0,112,0,0,112,0,0,224,0,33,224,0,127,192,0, + 127,128,0,255,0,0,124,0,0,16,18,36,19,1,0,63, + 255,63,255,112,62,112,126,96,124,96,248,1,248,1,240,3, + 224,7,224,7,192,15,128,31,129,31,3,62,3,124,3,127, + 255,255,255,11,37,74,14,2,250,0,96,1,224,3,192,7, + 128,15,0,31,0,31,0,31,0,31,0,31,0,31,128,15, + 128,15,128,15,128,15,128,15,0,31,0,62,0,252,0,255, + 0,31,0,15,128,15,128,15,128,15,128,15,128,31,128,31, + 0,31,0,31,0,31,0,31,0,15,0,15,128,7,192,1, + 224,0,96,3,41,41,9,3,248,96,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,192,11,37,74,14,1,250,192,0,240,0,124,0,62,0, + 30,0,31,0,31,0,31,0,31,0,31,0,63,0,62,0, + 62,0,62,0,62,0,62,0,31,0,31,224,7,224,15,128, + 31,0,30,0,62,0,62,0,62,0,62,0,63,0,31,0, + 31,0,31,0,31,0,31,0,30,0,60,0,120,0,240,0, + 192,0,18,6,18,20,1,9,15,0,192,31,192,128,63,225, + 0,99,255,0,192,254,0,128,56,0,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,0,0,0,10,0, + 0,6,29,29,12,3,245,120,252,252,252,248,112,0,16,48, + 56,56,120,120,120,120,120,120,120,120,120,120,120,124,124,252, + 252,252,248,192,16,25,50,20,2,255,0,192,1,192,1,192, + 1,248,7,255,31,255,61,223,121,198,121,198,113,192,241,192, + 241,192,241,192,241,192,241,192,241,192,121,195,125,199,63,206, + 31,252,15,248,3,192,1,192,1,192,1,128,19,25,75,20, + 1,255,0,127,0,1,255,192,3,199,192,7,131,192,7,1, + 192,15,1,128,15,1,128,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,127,252,0,255,248,0,31,0,0,31, + 0,0,31,0,0,31,0,0,30,0,96,30,0,192,30,0, + 192,63,255,192,127,255,192,255,255,192,64,31,128,17,16,48, + 20,1,4,64,0,128,224,1,128,115,243,128,63,255,0,30, + 30,0,28,14,0,56,7,0,56,7,0,56,7,0,56,7, + 0,56,7,0,28,14,0,62,31,0,127,255,128,243,243,128, + 96,1,128,22,24,72,20,254,0,254,3,252,255,3,252,31, + 0,240,31,128,224,15,193,192,7,193,192,7,227,128,3,227, + 128,3,247,128,1,247,0,0,255,0,0,254,0,0,254,0, + 0,124,0,31,255,240,31,255,224,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,0,124,0,3,255,128,3,255, + 128,3,41,41,9,3,248,96,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,128,0,0,0,64,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,192, + 16,28,56,20,2,0,7,224,31,252,60,124,120,56,120,24, + 124,24,127,0,63,192,63,240,127,248,243,252,240,254,240,63, + 240,31,248,15,126,15,127,15,63,206,15,254,3,252,0,254, + 48,126,48,62,48,30,56,30,60,60,63,248,15,224,14,6, + 12,16,1,21,112,56,120,60,248,124,248,124,240,120,112,56, + 27,26,104,30,1,0,0,63,128,0,1,255,240,0,7,192, + 124,0,15,0,30,0,30,0,15,0,60,31,135,128,56,127, + 227,128,112,225,193,192,113,193,193,192,225,192,193,224,227,128, + 128,224,227,128,0,224,227,128,0,224,227,128,0,224,227,128, + 0,224,227,128,0,224,225,192,1,224,113,224,33,192,112,240, + 113,192,56,127,227,128,60,31,7,128,30,0,15,0,15,0, + 30,0,7,192,124,0,1,255,240,0,0,63,128,0,9,14, + 28,11,1,11,30,0,62,0,103,0,231,0,7,0,63,0, + 103,0,231,0,231,0,255,128,119,0,0,0,255,128,255,128, + 17,18,54,21,1,0,0,128,128,1,129,128,3,3,0,7, + 7,0,14,14,0,30,30,0,60,60,0,124,124,0,248,248, + 0,252,248,0,124,124,0,60,60,0,30,30,0,14,14,0, + 7,7,0,3,3,0,1,129,128,0,128,128,17,9,27,20, + 2,3,255,255,128,255,255,128,0,3,128,0,3,128,0,3, + 128,0,3,128,0,3,128,0,3,128,0,3,0,12,2,4, + 14,1,9,127,240,255,240,13,15,30,14,1,14,15,128,31, + 192,48,96,96,48,95,16,137,136,137,136,143,136,139,8,137, + 8,73,144,124,240,48,96,31,192,15,128,16,3,6,20,2, + 23,255,255,255,255,255,254,10,10,20,14,2,15,15,0,63, + 128,115,192,97,192,225,192,225,192,225,128,243,128,127,0,60, + 0,15,18,36,16,1,3,1,128,3,128,3,128,3,128,3, + 128,3,128,127,254,255,252,3,128,3,128,3,128,3,128,3, + 128,3,0,0,0,0,0,127,254,255,252,11,15,30,13,1, + 12,7,192,31,224,56,224,120,224,112,224,0,192,1,192,3, + 128,3,0,6,0,12,0,24,32,48,96,127,224,255,224,11, + 15,30,13,0,12,7,128,31,224,56,224,56,224,32,224,1, + 192,3,128,7,192,0,224,0,224,0,224,128,224,225,192,127, + 192,31,0,9,10,20,13,4,20,14,0,31,128,31,128,63, + 0,62,0,60,0,120,0,112,0,224,0,64,0,22,27,81, + 23,1,247,14,0,96,254,7,224,254,3,224,62,3,224,62, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,62,3,224,62,3,224,63,7,224,63,143,224,63,255,228, + 63,251,252,59,241,248,57,225,224,56,0,0,56,0,0,60, + 0,0,60,0,0,60,0,0,62,0,0,63,0,0,62,0, + 0,48,0,0,22,30,90,24,1,251,3,255,252,31,255,252, + 63,29,240,124,28,224,124,28,224,248,28,224,248,28,224,248, + 28,224,248,28,224,248,28,224,124,28,224,126,28,224,63,28, + 224,31,252,224,3,252,224,0,28,224,0,28,224,0,28,224, + 0,28,224,0,28,224,0,28,224,0,28,224,0,28,224,0, + 28,224,0,28,224,0,28,224,0,28,224,0,28,224,0,127, + 248,0,255,252,6,6,6,8,1,11,56,124,252,252,252,120, + 8,9,9,9,1,247,24,56,60,63,127,31,30,252,224,10, + 15,30,14,2,12,6,0,62,0,254,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,63, + 0,255,192,9,14,28,11,1,11,30,0,63,0,119,0,227, + 128,227,128,227,128,227,128,227,128,119,0,126,0,60,0,0, + 0,255,128,255,128,17,18,54,21,2,0,64,64,0,224,224, + 0,112,112,0,56,56,0,60,60,0,30,30,0,31,31,0, + 15,143,128,15,143,128,15,143,128,15,143,128,31,31,0,30, + 30,0,60,60,0,56,56,0,112,112,0,96,96,0,192,192, + 0,22,24,72,25,2,0,12,0,24,252,0,56,28,0,112, + 28,0,224,28,1,192,28,1,192,28,3,128,28,7,0,28, + 6,0,28,14,0,62,28,0,255,184,0,0,56,112,0,112, + 240,0,225,240,1,193,112,1,195,112,3,134,112,7,4,112, + 14,15,252,14,31,248,28,0,112,56,0,112,112,1,252,21, + 24,72,25,2,0,12,0,56,252,0,112,28,0,112,28,0, + 224,28,1,192,28,3,128,28,3,128,28,7,0,28,14,0, + 28,28,0,62,28,0,255,184,0,0,113,240,0,227,248,0, + 230,56,1,206,56,3,128,48,7,0,96,7,0,224,14,0, + 192,28,1,136,60,7,8,56,15,248,112,15,248,23,24,72, + 25,1,0,31,0,12,63,128,28,115,128,56,227,128,112,7, + 0,224,31,0,224,3,129,192,3,131,128,3,131,0,135,135, + 0,255,14,0,60,28,0,0,28,56,0,56,120,0,112,248, + 0,224,184,0,225,184,1,195,56,3,130,56,7,7,254,7, + 15,252,14,0,56,28,0,56,56,0,254,16,29,58,18,1, + 245,3,192,7,224,7,224,7,224,7,192,3,128,0,0,0, + 0,1,192,1,192,1,192,1,192,3,192,3,128,7,128,15, + 0,31,0,62,0,60,0,124,0,248,0,248,7,248,31,248, + 31,248,31,252,30,126,60,63,248,15,224,25,34,136,25,0, + 0,0,192,0,0,3,224,0,0,3,240,0,0,3,248,0, + 0,0,252,0,0,0,62,0,0,0,15,0,0,0,2,0, + 0,0,0,0,0,0,4,0,0,0,30,0,0,0,62,0, + 0,0,126,0,0,0,127,0,0,0,111,0,0,0,239,128, + 0,0,239,128,0,0,199,128,0,1,199,192,0,1,199,192, + 0,1,131,192,0,3,131,224,0,3,131,224,0,3,255,224, + 0,7,255,240,0,7,0,240,0,6,0,248,0,14,0,248, + 0,14,0,120,0,12,0,124,0,28,0,124,0,28,0,124, + 0,255,129,255,0,255,129,255,128,25,34,136,25,0,0,0, + 1,128,0,0,3,192,0,0,7,224,0,0,15,192,0,0, + 31,0,0,0,124,0,0,0,240,0,0,0,64,0,0,0, + 0,0,0,0,4,0,0,0,30,0,0,0,62,0,0,0, + 126,0,0,0,127,0,0,0,111,0,0,0,239,128,0,0, + 239,128,0,0,199,128,0,1,199,192,0,1,199,192,0,1, + 131,192,0,3,131,224,0,3,131,224,0,3,255,224,0,7, + 255,240,0,7,0,240,0,6,0,248,0,14,0,248,0,14, + 0,120,0,12,0,124,0,28,0,124,0,28,0,124,0,255, + 129,255,0,255,129,255,128,25,34,136,25,0,0,0,28,0, + 0,0,62,0,0,0,127,0,0,0,255,128,0,1,255,128, + 0,1,227,192,0,3,128,224,0,2,0,64,0,0,0,0, + 0,0,4,0,0,0,30,0,0,0,62,0,0,0,126,0, + 0,0,127,0,0,0,111,0,0,0,239,128,0,0,239,128, + 0,0,199,128,0,1,199,192,0,1,199,192,0,1,131,192, + 0,3,131,224,0,3,131,224,0,3,255,224,0,7,255,240, + 0,7,0,240,0,6,0,248,0,14,0,248,0,14,0,120, + 0,12,0,124,0,28,0,124,0,28,0,124,0,255,129,255, + 0,255,129,255,128,25,33,132,25,0,0,0,248,48,0,1, + 254,240,0,3,255,224,0,3,255,192,0,6,31,128,0,6, + 3,0,0,4,0,0,0,0,0,0,0,0,4,0,0,0, + 30,0,0,0,62,0,0,0,126,0,0,0,127,0,0,0, + 111,0,0,0,239,128,0,0,239,128,0,0,199,128,0,1, + 199,192,0,1,199,192,0,1,131,192,0,3,131,224,0,3, + 131,224,0,3,255,224,0,7,255,240,0,7,0,240,0,6, + 0,248,0,14,0,248,0,14,0,120,0,12,0,124,0,28, + 0,124,0,28,0,124,0,255,129,255,0,255,129,255,128,25, + 32,128,25,0,0,1,192,224,0,3,193,224,0,7,195,224, + 0,7,195,224,0,3,193,224,0,1,129,192,0,0,0,0, + 0,0,4,0,0,0,30,0,0,0,62,0,0,0,126,0, + 0,0,127,0,0,0,111,0,0,0,239,128,0,0,239,128, + 0,0,199,128,0,1,199,192,0,1,199,192,0,1,131,192, + 0,3,131,224,0,3,131,224,0,3,255,224,0,7,255,240, + 0,7,0,240,0,6,0,248,0,14,0,248,0,14,0,120, + 0,12,0,124,0,28,0,124,0,28,0,124,0,255,129,255, + 0,255,129,255,128,25,34,136,25,0,0,0,30,0,0,0, + 127,0,0,0,119,0,0,0,103,0,0,0,231,0,0,0, + 119,0,0,0,126,0,0,0,56,0,0,0,0,0,0,0, + 4,0,0,0,30,0,0,0,62,0,0,0,126,0,0,0, + 127,0,0,0,111,0,0,0,239,128,0,0,239,128,0,0, + 199,128,0,1,199,192,0,1,199,192,0,1,131,192,0,3, + 131,224,0,3,131,224,0,3,255,224,0,7,255,240,0,7, + 0,240,0,6,0,248,0,14,0,248,0,14,0,120,0,12, + 0,124,0,28,0,124,0,28,0,124,0,255,129,255,0,255, + 129,255,128,32,25,100,32,0,0,0,255,255,252,0,255,255, + 252,0,31,240,28,0,61,240,12,0,61,240,12,0,57,240, + 12,0,121,240,12,0,113,240,0,0,241,240,0,0,225,240, + 0,0,225,240,0,1,255,255,240,1,255,255,240,3,193,240, + 32,3,129,240,0,3,129,240,0,7,129,240,0,7,1,240, + 0,15,1,240,0,14,1,240,3,14,1,240,3,30,1,240, + 6,28,1,240,14,255,7,255,254,255,15,255,254,20,34,102, + 22,1,247,0,127,128,3,255,240,7,135,224,15,1,224,30, + 0,192,60,0,64,60,0,0,124,0,0,120,0,0,120,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,252,0,0,124,0,0,126,0,0,127, + 0,96,63,129,224,31,255,192,15,255,0,7,254,0,1,240, + 0,0,224,0,0,248,0,0,252,0,1,252,0,0,124,0, + 0,120,0,1,240,0,1,192,0,19,34,102,21,1,0,6, + 0,0,31,0,0,31,128,0,31,192,0,7,224,0,1,240, + 0,0,120,0,0,16,0,0,0,0,255,255,192,255,255,192, + 62,1,192,30,1,192,30,1,128,30,1,128,30,0,128,30, + 0,0,30,0,0,30,0,0,30,0,0,31,255,0,31,254, + 0,30,6,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,96,30,0,96,30,0,224,63,1,224,255, + 255,224,255,255,192,19,34,102,21,1,0,0,12,0,0,31, + 0,0,63,0,0,126,0,0,248,0,1,224,0,3,128,0, + 2,0,0,0,0,0,255,255,192,255,255,192,62,1,192,30, + 1,192,30,1,128,30,1,128,30,0,128,30,0,0,30,0, + 0,30,0,0,30,0,0,31,255,0,31,254,0,30,6,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,96,30,0,96,30,0,224,63,1,224,255,255,224,255,255, + 192,19,34,102,21,1,0,0,224,0,1,240,0,3,248,0, + 7,252,0,15,252,0,15,30,0,28,7,0,16,2,0,0, + 0,0,255,255,192,255,255,192,62,1,192,30,1,192,30,1, + 128,30,1,128,30,0,128,30,0,0,30,0,0,30,0,0, + 30,0,0,31,255,0,31,254,0,30,6,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,96,30,0, + 96,30,0,224,63,1,224,255,255,224,255,255,192,19,32,96, + 21,1,0,14,7,0,30,15,0,31,15,128,30,15,0,30, + 15,0,12,6,0,0,0,0,255,255,192,255,255,192,62,1, + 192,30,1,192,30,1,128,30,1,128,30,0,128,30,0,0, + 30,0,0,30,0,0,30,0,0,31,255,0,31,254,0,30, + 6,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,96,30,0,96,30,0,224,63,1,224,255,255,224, + 255,255,192,12,34,68,13,0,0,48,0,248,0,252,0,254, + 0,63,0,15,128,3,192,0,128,0,0,127,240,63,240,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,63,224,127,240,12,34,68, + 13,1,0,0,192,1,224,3,240,7,224,31,128,62,0,120, + 0,32,0,0,0,255,224,127,224,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,127,192,255,224,13,34,68,13,0,0,7,0,15, + 128,31,192,63,224,127,224,248,240,224,56,128,16,0,0,127, + 240,63,240,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,63,224,127, + 240,14,32,64,13,255,0,56,28,120,60,248,124,248,124,120, + 60,112,56,0,0,63,248,31,248,7,192,7,192,7,192,7, + 192,7,192,7,192,7,192,7,192,7,192,7,192,7,192,7, + 192,7,192,7,192,7,192,7,192,7,192,7,192,7,192,7, + 192,7,192,31,240,63,248,22,25,75,25,1,0,15,252,0, + 255,255,128,255,15,192,31,3,224,31,1,240,31,1,248,31, + 0,248,31,0,248,31,0,124,31,0,124,31,0,124,255,248, + 124,255,248,124,31,0,124,31,0,124,31,0,124,31,0,120, + 31,0,248,31,0,248,31,1,240,31,1,240,31,3,224,31, + 7,192,127,255,128,255,252,0,25,33,132,27,1,0,0,240, + 48,0,1,254,224,0,3,255,224,0,3,255,192,0,6,31, + 128,0,6,3,0,0,4,0,0,0,0,0,0,0,254,0, + 255,128,255,0,127,0,31,0,28,0,31,128,28,0,31,192, + 28,0,31,192,28,0,31,224,28,0,29,240,28,0,29,248, + 28,0,28,248,28,0,28,124,28,0,28,126,28,0,28,62, + 28,0,28,31,28,0,28,15,156,0,28,15,156,0,28,7, + 220,0,28,3,252,0,28,3,252,0,28,1,252,0,28,0, + 252,0,28,0,252,0,28,0,124,0,127,0,60,0,255,128, + 12,0,23,34,102,25,1,0,1,128,0,7,192,0,7,224, + 0,7,240,0,1,248,0,0,124,0,0,30,0,0,4,0, + 0,0,0,0,126,0,3,255,192,7,135,224,14,1,240,30, + 0,248,60,0,248,60,0,124,124,0,124,120,0,126,248,0, + 62,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,252,0,60,124,0,124,124,0,120,62,0,120,62, + 0,240,31,1,224,15,195,192,7,255,0,0,252,0,23,34, + 102,25,1,0,0,3,0,0,7,192,0,15,192,0,31,128, + 0,62,0,0,120,0,0,224,0,0,128,0,0,0,0,0, + 126,0,3,255,192,7,135,224,14,1,240,30,0,248,60,0, + 248,60,0,124,124,0,124,120,0,126,248,0,62,248,0,62, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,252, + 0,60,124,0,124,124,0,120,62,0,120,62,0,240,31,1, + 224,15,195,192,7,255,0,0,252,0,23,34,102,25,1,0, + 0,56,0,0,124,0,0,254,0,1,255,0,3,255,0,3, + 199,128,7,1,192,4,0,128,0,0,0,0,126,0,3,255, + 192,7,135,224,14,1,240,30,0,248,60,0,248,60,0,124, + 124,0,124,120,0,126,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,252,0,60,124,0, + 124,124,0,120,62,0,120,62,0,240,31,1,224,15,195,192, + 7,255,0,0,252,0,23,33,99,25,1,0,1,240,96,3, + 252,224,7,255,192,7,255,128,14,63,128,12,6,0,8,0, + 0,0,0,0,0,126,0,3,255,192,7,135,224,14,1,240, + 30,0,248,60,0,248,60,0,124,124,0,124,120,0,126,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,248,0, + 62,248,0,62,252,0,60,124,0,124,124,0,120,62,0,120, + 62,0,240,31,1,224,15,195,192,7,255,0,0,252,0,23, + 32,96,25,1,0,3,129,192,7,131,192,7,195,224,7,131, + 192,7,131,192,3,1,128,0,0,0,0,126,0,3,255,192, + 7,135,224,14,1,240,30,0,248,60,0,248,60,0,124,124, + 0,124,120,0,126,248,0,62,248,0,62,248,0,62,248,0, + 62,248,0,62,248,0,62,248,0,62,252,0,60,124,0,124, + 124,0,120,62,0,120,62,0,240,31,1,224,15,195,192,7, + 255,0,0,252,0,13,12,24,17,2,5,96,48,240,120,120, + 240,61,224,31,192,15,128,15,128,31,192,57,224,120,240,240, + 120,96,48,23,26,78,25,1,255,0,126,30,3,255,252,7, + 135,248,14,3,240,30,1,248,60,1,252,60,3,252,124,7, + 252,120,15,254,248,15,126,248,30,62,248,62,62,248,60,62, + 248,120,62,248,240,62,248,240,62,253,224,60,127,192,124,127, + 128,120,127,128,120,63,0,240,31,129,224,63,195,192,127,255, + 0,240,252,0,192,0,0,25,34,136,27,1,0,0,192,0, + 0,3,224,0,0,3,240,0,0,3,248,0,0,0,252,0, + 0,0,30,0,0,0,7,0,0,0,2,0,0,0,0,0, + 0,255,224,255,128,127,224,255,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,24,0,15,128,56, + 0,15,128,56,0,7,192,112,0,3,224,224,0,1,255,192, + 0,0,127,0,0,25,34,136,27,1,0,0,1,128,0,0, + 3,224,0,0,7,224,0,0,15,192,0,0,31,0,0,0, + 60,0,0,0,112,0,0,0,64,0,0,0,0,0,0,255, + 224,255,128,127,224,255,0,31,0,28,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,28,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,28,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,28,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,24,0,15,128,56,0,15, + 128,56,0,7,192,112,0,3,224,224,0,1,255,192,0,0, + 127,0,0,25,34,136,27,1,0,0,28,0,0,0,62,0, + 0,0,127,0,0,0,255,128,0,1,255,192,0,1,227,192, + 0,3,128,224,0,2,0,64,0,0,0,0,0,255,224,255, + 128,127,224,255,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,24,0,15,128,56,0,15,128,56, + 0,7,192,112,0,3,224,224,0,1,255,192,0,0,127,0, + 0,25,32,128,27,1,0,1,192,224,0,3,225,240,0,3, + 225,240,0,3,193,224,0,3,193,224,0,1,128,192,0,0, + 0,0,0,255,224,255,128,127,224,255,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,28,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,28,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,28,0,31,0,28,0,31, + 0,28,0,31,0,28,0,31,0,28,0,31,0,24,0,15, + 128,56,0,15,128,56,0,7,192,112,0,3,224,224,0,1, + 255,192,0,0,127,0,0,24,34,102,25,0,0,0,1,128, + 0,3,192,0,7,224,0,31,192,0,63,0,0,124,0,0, + 240,0,0,64,0,0,0,0,126,0,255,255,0,255,31,0, + 56,15,128,56,15,192,112,7,192,112,3,224,224,3,224,224, + 1,241,192,1,241,192,0,251,128,0,251,128,0,127,0,0, + 127,0,0,62,0,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,62,0,1,255,192, + 1,255,192,21,25,75,23,1,0,255,224,0,127,224,0,31, + 0,0,31,0,0,31,0,0,31,254,0,31,255,192,31,7, + 224,31,3,240,31,1,248,31,0,248,31,0,248,31,0,248, + 31,0,248,31,0,248,31,1,240,31,1,240,31,135,224,31, + 127,128,31,62,0,31,0,0,31,0,0,31,0,0,127,224, + 0,255,224,0,23,30,90,25,0,0,0,31,128,0,255,224, + 1,195,240,3,128,248,7,128,248,15,0,124,15,0,124,15, + 0,124,31,0,124,31,0,248,31,1,248,31,7,240,31,15, + 128,31,31,0,31,30,0,31,30,0,31,31,0,31,31,128, + 31,15,224,31,7,248,31,3,252,31,0,252,31,0,126,31, + 48,62,31,48,30,31,48,30,31,56,28,31,60,60,127,63, + 248,255,15,224,19,30,90,20,1,0,7,0,0,31,128,0, + 15,128,0,15,192,0,7,192,0,3,224,0,1,224,0,0, + 224,0,0,112,0,0,48,0,0,0,0,0,0,0,1,248, + 0,15,254,0,62,63,0,124,31,0,124,31,0,112,31,0, + 0,31,0,1,255,0,15,255,0,63,31,0,124,31,0,120, + 31,0,248,31,0,248,31,32,248,127,224,255,223,192,127,159, + 128,62,14,0,19,30,90,20,1,0,0,56,0,0,62,0, + 0,126,0,0,124,0,0,248,0,0,240,0,1,224,0,1, + 192,0,3,128,0,1,0,0,0,0,0,0,0,0,1,248, + 0,15,254,0,62,63,0,124,31,0,124,31,0,112,31,0, + 0,31,0,1,255,0,15,255,0,63,31,0,124,31,0,120, + 31,0,248,31,0,248,31,32,248,127,224,255,223,192,127,159, + 128,62,14,0,19,29,87,20,1,0,1,224,0,1,224,0, + 3,240,0,7,248,0,7,252,0,15,60,0,30,30,0,56, + 7,0,16,2,0,0,0,0,0,0,0,1,248,0,15,254, + 0,62,63,0,124,31,0,124,31,0,112,31,0,0,31,0, + 1,255,0,15,255,0,63,31,0,124,31,0,120,31,0,248, + 31,0,248,31,32,248,127,224,255,223,192,127,159,128,62,14, + 0,19,27,81,20,1,0,7,129,128,15,227,0,31,255,0, + 63,254,0,49,252,0,96,56,0,0,0,0,0,0,0,0, + 0,0,1,248,0,15,254,0,62,63,0,124,31,0,124,31, + 0,112,31,0,0,31,0,1,255,0,15,255,0,63,31,0, + 124,31,0,120,31,0,248,31,0,248,31,32,248,127,224,255, + 223,192,127,159,128,62,14,0,19,27,81,20,1,0,12,6, + 0,30,15,0,62,31,0,62,31,0,62,31,0,28,14,0, + 0,0,0,0,0,0,0,0,0,1,248,0,15,254,0,62, + 63,0,124,31,0,124,31,0,112,31,0,0,31,0,1,255, + 0,15,255,0,63,31,0,124,31,0,120,31,0,248,31,0, + 248,31,32,248,127,224,255,223,192,127,159,128,62,14,0,19, + 28,84,20,1,0,0,240,0,3,248,0,3,184,0,7,56, + 0,7,56,0,7,56,0,3,240,0,1,224,0,0,0,0, + 0,0,0,1,248,0,15,254,0,62,63,0,124,31,0,124, + 31,0,112,31,0,0,31,0,1,255,0,15,255,0,63,31, + 0,124,31,0,120,31,0,248,31,0,248,31,32,248,127,224, + 255,223,192,127,159,128,62,14,0,27,18,72,29,1,0,0, + 252,62,0,7,254,255,128,15,191,199,128,30,15,131,192,62, + 15,129,192,124,15,1,224,0,15,1,224,0,255,255,224,15, + 255,255,192,31,15,0,0,124,15,0,0,120,15,0,0,248, + 15,128,0,248,31,128,96,252,127,225,224,255,227,255,192,127, + 193,255,0,63,0,124,0,17,27,81,18,1,247,1,252,0, + 7,255,0,31,31,0,60,15,0,60,7,0,120,6,0,120, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,252,0,0,126,1,0,127,7,128,63,254,0,31,252,0, + 7,240,0,1,192,0,1,192,0,1,240,0,3,248,0,0, + 248,0,0,248,0,1,240,0,3,224,0,7,0,0,17,30, + 90,19,1,0,3,128,0,15,128,0,31,192,0,7,192,0, + 3,192,0,1,224,0,0,224,0,0,112,0,0,48,0,0, + 56,0,0,0,0,0,0,0,1,240,0,15,252,0,30,62, + 0,60,31,0,120,15,0,120,15,128,248,15,128,255,255,128, + 255,254,0,248,0,0,248,0,0,248,0,0,252,0,0,126, + 1,128,127,7,0,63,254,0,31,252,0,7,240,0,17,30, + 90,19,1,0,0,60,0,0,63,0,0,62,0,0,124,0, + 0,120,0,0,240,0,0,240,0,1,224,0,1,192,0,1, + 128,0,0,0,0,0,0,0,1,240,0,15,252,0,30,62, + 0,60,31,0,120,15,0,120,15,128,248,15,128,255,255,128, + 255,254,0,248,0,0,248,0,0,248,0,0,252,0,0,126, + 1,128,127,7,0,63,254,0,31,252,0,7,240,0,17,29, + 87,19,1,0,0,224,0,1,240,0,3,248,0,3,248,0, + 7,252,0,15,30,0,14,14,0,28,7,0,24,3,0,0, + 0,0,0,0,0,1,240,0,15,252,0,30,62,0,60,31, + 0,120,15,0,120,15,128,248,15,128,255,255,128,255,254,0, + 248,0,0,248,0,0,248,0,0,252,0,0,126,1,128,127, + 7,0,63,254,0,31,252,0,7,240,0,17,27,81,19,1, + 0,14,7,0,30,15,0,31,15,128,30,15,0,30,15,0, + 28,14,0,0,0,0,0,0,0,0,0,0,1,240,0,15, + 252,0,30,62,0,60,31,0,120,15,0,120,15,128,248,15, + 128,255,255,128,255,254,0,248,0,0,248,0,0,248,0,0, + 252,0,0,126,1,128,127,7,0,63,254,0,31,252,0,7, + 240,0,11,30,60,12,0,0,56,0,252,0,124,0,62,0, + 62,0,31,0,15,0,7,128,3,128,1,128,0,0,0,0, + 7,0,127,0,127,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 127,192,127,224,11,30,60,12,1,0,3,128,3,224,7,224, + 7,192,15,128,15,0,30,0,28,0,24,0,48,0,0,0, + 0,0,14,0,254,0,254,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,255,128,255,192,14,29,58,12,255,0,7,128,7,192, + 15,192,31,224,31,240,60,240,120,120,112,28,192,8,0,0, + 0,0,3,128,63,128,63,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,63,224,63,240,14,27,54,12,255,0,48,24,120,60, + 248,124,248,124,248,124,112,56,0,0,0,0,0,0,3,128, + 63,128,63,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,63,224, + 63,240,18,29,87,20,1,0,3,0,0,31,192,0,63,231, + 192,3,255,0,0,252,0,3,252,0,15,252,0,30,30,0, + 0,31,0,0,15,0,0,15,128,3,231,128,15,255,128,30, + 63,192,60,31,192,124,15,192,120,7,192,248,7,192,248,7, + 192,248,7,192,248,7,192,248,7,128,248,7,128,124,15,128, + 124,15,0,126,14,0,63,28,0,15,248,0,3,224,0,22, + 27,81,23,1,0,1,192,64,3,248,224,7,255,192,15,255, + 128,12,127,0,24,30,0,0,0,0,0,0,0,0,0,0, + 14,15,128,254,63,192,254,255,224,63,255,224,63,199,224,63, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,62,3,224,62,3,224,62,3,224,62,3,224,62,3,224, + 255,143,248,255,223,252,19,30,90,21,1,0,3,128,0,15, + 192,0,15,192,0,7,192,0,3,224,0,1,224,0,0,240, + 0,0,112,0,0,56,0,0,16,0,0,0,0,0,0,0, + 1,248,0,7,254,0,30,31,128,60,15,128,124,7,192,120, + 7,192,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,192,124,3,192,124,7,128,62,7,128,63,15,0, + 15,252,0,3,240,0,19,30,90,21,1,0,0,28,0,0, + 63,0,0,63,0,0,62,0,0,124,0,0,120,0,0,240, + 0,0,224,0,1,192,0,0,128,0,0,0,0,0,0,0, + 1,248,0,7,254,0,30,31,128,60,15,128,124,7,192,120, + 7,192,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,192,124,3,192,124,7,128,62,7,128,63,15,0, + 15,252,0,3,240,0,19,29,87,21,1,0,0,240,0,0, + 240,0,1,248,0,3,252,0,7,252,0,7,158,0,15,15, + 0,28,3,0,8,1,128,0,0,0,0,0,0,1,248,0, + 7,254,0,30,31,128,60,15,128,124,7,192,120,7,192,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 192,124,3,192,124,7,128,62,7,128,63,15,0,15,252,0, + 3,240,0,19,27,81,21,1,0,3,128,128,7,241,192,15, + 255,128,31,255,0,24,254,0,48,60,0,0,0,0,0,0, + 0,0,0,0,1,248,0,7,254,0,30,31,128,60,15,128, + 124,7,192,120,7,192,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,192,124,3,192,124,7,128,62,7, + 128,63,15,0,15,252,0,3,240,0,19,27,81,21,1,0, + 14,7,0,15,7,128,31,15,128,31,15,128,30,15,0,14, + 7,0,0,0,0,0,0,0,0,0,0,1,248,0,7,254, + 0,30,31,128,60,15,128,124,7,192,120,7,192,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,192,124, + 3,192,124,7,128,62,7,128,63,15,0,15,252,0,3,240, + 0,15,15,30,17,1,3,3,0,7,0,7,0,7,0,6, + 0,0,0,127,254,255,252,0,0,0,0,3,0,7,0,7, + 0,7,0,6,0,19,20,60,21,1,255,0,0,32,1,248, + 224,7,255,192,30,31,128,60,15,192,60,31,192,120,31,224, + 120,59,224,248,115,224,248,227,224,249,227,224,249,195,224,251, + 131,192,127,3,192,126,7,128,62,7,128,63,15,0,63,252, + 0,99,240,0,192,0,0,22,30,90,23,1,0,3,128,0, + 7,192,0,15,192,0,3,224,0,1,224,0,0,240,0,0, + 240,0,0,120,0,0,56,0,0,24,0,0,0,0,0,0, + 0,14,0,224,254,31,224,126,7,224,62,3,224,62,3,224, + 62,3,224,62,3,224,62,3,224,62,3,224,62,3,224,62, + 3,224,62,3,224,62,3,224,62,7,224,63,31,252,31,251, + 252,31,243,240,15,193,192,22,30,90,23,1,0,0,30,0, + 0,31,0,0,63,128,0,62,0,0,124,0,0,120,0,0, + 112,0,0,224,0,0,224,0,1,192,0,0,0,0,0,0, + 0,14,0,224,254,31,224,126,7,224,62,3,224,62,3,224, + 62,3,224,62,3,224,62,3,224,62,3,224,62,3,224,62, + 3,224,62,3,224,62,3,224,62,7,224,63,31,252,31,251, + 252,31,243,240,15,193,192,22,29,87,23,1,0,0,112,0, + 0,248,0,1,248,0,3,252,0,3,254,0,7,158,0,15, + 7,0,14,3,128,8,1,0,0,0,0,0,0,0,14,0, + 224,254,31,224,126,7,224,62,3,224,62,3,224,62,3,224, + 62,3,224,62,3,224,62,3,224,62,3,224,62,3,224,62, + 3,224,62,3,224,62,7,224,63,31,252,31,251,252,31,243, + 240,15,193,192,22,27,81,23,1,0,7,3,128,15,7,128, + 31,15,128,31,15,128,31,15,128,14,7,0,0,0,0,0, + 0,0,0,0,0,14,0,224,254,31,224,126,7,224,62,3, + 224,62,3,224,62,3,224,62,3,224,62,3,224,62,3,224, + 62,3,224,62,3,224,62,3,224,62,3,224,62,7,224,63, + 31,252,31,251,252,31,243,240,15,193,192,21,39,117,20,255, + 247,0,7,0,0,15,192,0,15,128,0,31,0,0,31,0, + 0,62,0,0,60,0,0,120,0,0,112,0,0,96,0,0, + 0,0,0,0,0,127,193,248,63,129,248,31,0,224,15,128, + 224,15,129,192,7,193,192,7,193,128,7,195,128,3,227,128, + 3,231,0,1,247,0,1,246,0,0,254,0,0,254,0,0, + 252,0,0,124,0,0,120,0,0,56,0,0,56,0,0,112, + 0,0,112,0,0,224,0,33,224,0,127,192,0,127,128,0, + 255,0,0,124,0,0,20,39,117,22,1,247,6,0,0,254, + 0,0,254,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,31,0,62,127,128,62,255,192,63,135,224,63,3,224,62, + 1,240,62,0,240,62,0,240,62,0,240,62,0,240,62,0, + 240,62,0,224,62,0,224,62,1,192,63,195,192,63,255,128, + 62,255,0,62,60,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,255,192,0,255,192, + 0,21,36,108,20,255,247,3,129,192,7,195,224,7,195,224, + 7,195,224,7,131,192,7,3,128,0,0,0,0,0,0,0, + 0,0,127,193,248,63,129,248,31,0,224,15,128,224,15,129, + 192,7,193,192,7,193,128,7,195,128,3,227,128,3,231,0, + 1,247,0,1,246,0,0,254,0,0,254,0,0,252,0,0, + 124,0,0,120,0,0,56,0,0,56,0,0,112,0,0,112, + 0,0,224,0,33,224,0,127,192,0,127,128,0,255,0,0, + 124,0,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--40-400-72-72-P-200-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 24 + Calculated Max Values w=18 h=38 x= 3 y=14 dx=21 dy= 0 ascent=31 len=114 + Font Bounding box w=61 h=57 x=-20 y=-14 + Calculated Min Values x= 0 y=-7 dx= 0 dy= 0 + Pure Font ascent =24 descent= 0 + X Font ascent =24 descent= 0 + Max Font ascent =31 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb25n[960] U8G_SECTION(".progmem.u8g_font_gdb25n") = { + 0,61,57,236,242,24,0,0,0,0,42,57,0,31,249,24, + 0,16,16,32,18,1,14,0,192,3,192,3,192,99,140,123, + 158,125,191,127,252,15,224,7,224,63,252,253,190,249,158,51, + 142,3,192,3,192,3,0,15,14,28,17,1,4,1,128,3, + 128,3,128,3,128,3,128,3,128,127,254,255,252,3,128,3, + 128,3,128,3,128,3,128,3,0,8,12,12,11,2,249,30, + 127,255,127,31,31,30,30,60,56,112,96,12,2,4,14,1, + 9,127,240,255,240,6,6,6,11,3,255,56,124,252,252,252, + 120,17,38,114,19,1,249,0,1,128,0,7,128,0,7,128, + 0,15,0,0,15,0,0,15,0,0,30,0,0,30,0,0, + 28,0,0,60,0,0,60,0,0,120,0,0,120,0,0,120, + 0,0,240,0,0,240,0,0,224,0,1,224,0,1,224,0, + 3,192,0,3,192,0,3,192,0,7,128,0,7,128,0,7, + 0,0,15,0,0,15,0,0,30,0,0,30,0,0,30,0, + 0,60,0,0,60,0,0,56,0,0,120,0,0,120,0,0, + 240,0,0,240,0,0,192,0,0,18,24,72,20,1,0,3, + 240,0,7,252,0,30,62,0,28,31,0,60,15,0,120,15, + 128,120,15,128,120,7,128,248,7,192,248,7,192,248,7,192, + 248,7,192,248,7,192,248,7,192,248,7,192,248,7,192,120, + 7,128,124,7,128,124,15,128,60,15,0,62,14,0,31,30, + 0,15,248,0,3,224,0,16,24,48,20,2,0,0,96,3, + 224,31,224,255,224,99,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,7,240,127,255,127,255,16,24,48, + 20,2,0,3,248,15,252,60,62,124,63,120,31,248,31,112, + 31,0,31,0,62,0,60,0,124,0,120,0,240,1,224,3, + 224,3,192,7,128,15,1,30,3,60,3,120,3,127,255,255, + 255,255,255,16,24,48,20,2,0,7,240,31,248,60,124,120, + 62,248,62,248,62,64,62,0,60,0,124,0,240,7,240,7, + 252,0,254,0,62,0,63,0,31,0,31,0,31,0,31,0, + 30,192,62,240,124,127,248,15,192,17,24,72,20,1,0,0, + 12,0,0,124,0,0,124,0,0,252,0,1,252,0,1,252, + 0,3,188,0,7,188,0,7,60,0,14,60,0,14,60,0, + 28,60,0,56,60,0,56,60,0,112,60,0,255,255,128,255, + 255,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,3,255,128,3,255,128,17,24,72,20,1,0,31,255,0, + 31,255,128,31,254,0,31,252,0,24,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,63,240,0,63,252,0,48,126, + 0,96,31,0,0,31,0,0,15,128,0,15,128,0,15,128, + 0,15,128,0,15,128,0,31,0,96,31,0,248,126,0,63, + 252,0,7,224,0,17,24,72,20,2,0,0,14,0,0,126, + 0,1,240,0,7,192,0,15,128,0,30,0,0,62,0,0, + 60,0,0,124,0,0,121,248,0,127,254,0,254,63,0,252, + 31,0,248,15,128,248,15,128,248,15,128,248,15,128,248,15, + 128,124,15,128,124,15,0,60,31,0,31,30,0,15,252,0, + 3,240,0,17,24,72,20,2,0,127,255,128,127,255,0,255, + 255,0,255,255,0,224,6,0,192,14,0,128,12,0,0,28, + 0,0,28,0,0,56,0,0,56,0,0,112,0,0,112,0, + 0,240,0,0,224,0,1,224,0,1,192,0,3,192,0,3, + 192,0,7,128,0,7,128,0,15,128,0,31,0,0,28,0, + 0,17,24,72,21,2,0,3,240,0,15,252,0,28,62,0, + 24,31,0,56,31,0,56,31,0,56,31,0,60,62,0,63, + 60,0,31,248,0,15,240,0,7,252,0,14,254,0,62,63, + 0,124,31,128,120,31,128,248,15,128,248,15,128,248,15,128, + 248,15,0,124,31,0,126,62,0,63,252,0,7,224,0,17, + 25,75,20,2,255,3,240,0,15,252,0,30,62,0,60,30, + 0,120,31,0,120,31,0,248,15,128,248,15,128,248,15,128, + 248,15,128,248,15,128,124,31,128,126,63,128,63,255,128,15, + 207,0,0,15,0,0,31,0,0,30,0,0,62,0,0,124, + 0,0,248,0,1,240,0,15,192,0,63,0,0,56,0,0 + }; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--40-400-72-72-P-200-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=34 h=41 x= 3 y=20 dx=35 dy= 0 ascent=33 len=136 + Font Bounding box w=61 h=57 x=-20 y=-14 + Calculated Min Values x=-6 y=-9 dx= 0 dy= 0 + Pure Font ascent =25 descent=-9 + X Font ascent =31 descent=-9 + Max Font ascent =33 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb25r[6779] U8G_SECTION(".progmem.u8g_font_gdb25r") = { + 0,61,57,236,242,25,7,167,18,92,32,127,247,33,247,31, + 247,0,0,0,10,0,0,6,30,30,12,3,255,12,60,252, + 252,252,124,120,120,120,120,120,120,120,120,120,120,120,120,56, + 48,48,32,0,0,56,124,252,252,252,120,13,13,26,19,3, + 16,24,56,248,248,248,248,248,248,248,248,248,248,248,240,112, + 240,112,112,112,112,112,112,112,112,112,112,19,23,69,20,1, + 2,0,97,192,0,227,128,0,227,128,0,195,128,1,195,0, + 1,199,0,31,255,224,31,255,224,35,142,0,3,142,0,3, + 14,0,7,12,0,7,28,0,7,28,0,127,255,128,255,255, + 128,14,56,0,12,56,0,28,48,0,28,112,0,24,112,0, + 24,112,0,32,224,0,17,30,90,21,2,253,0,192,0,1, + 192,0,1,192,0,3,240,0,31,254,0,63,255,128,113,223, + 0,225,207,0,225,199,0,225,194,0,241,192,0,255,192,0, + 127,192,0,63,248,0,15,252,0,3,254,0,1,255,0,1, + 223,128,1,207,128,193,199,128,193,199,128,225,199,128,241,207, + 0,253,207,0,255,254,0,63,252,0,7,224,0,1,192,0, + 1,192,0,1,128,0,26,25,100,28,1,0,0,0,3,0, + 15,128,15,0,63,192,14,0,113,224,28,0,112,224,56,0, + 224,112,120,0,224,112,112,0,224,112,224,0,224,113,192,0, + 224,115,192,0,96,103,128,0,112,103,0,0,48,206,62,0, + 31,28,99,0,0,60,195,128,0,56,193,128,0,113,193,192, + 0,225,193,192,1,225,193,192,1,193,193,192,3,129,193,192, + 7,0,225,128,15,0,227,128,14,0,127,0,28,0,62,0, + 27,28,112,28,1,0,0,126,0,0,1,255,128,0,3,143, + 128,0,7,7,192,0,7,7,192,0,15,7,192,0,15,7, + 192,0,15,15,128,0,15,159,0,0,15,191,0,0,7,254, + 0,0,7,248,0,0,7,240,0,0,15,240,255,224,31,241, + 255,192,63,248,61,128,125,252,60,0,124,254,28,0,248,254, + 28,0,248,127,28,0,248,63,184,0,248,31,248,0,248,15, + 240,0,252,7,248,0,124,3,252,0,63,7,255,192,31,254, + 127,128,7,240,28,0,5,13,13,11,3,16,24,248,248,248, + 248,248,248,112,112,112,112,112,112,11,37,74,13,2,250,0, + 64,1,224,3,192,7,128,15,0,15,0,30,0,30,0,60, + 0,60,0,124,0,124,0,120,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,120, + 0,124,0,124,0,124,0,60,0,62,0,30,0,31,0,15, + 0,7,128,3,192,1,224,0,64,11,37,74,13,0,250,64, + 0,240,0,120,0,60,0,30,0,31,0,15,0,15,128,7, + 128,7,192,7,192,7,192,7,192,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,192,7, + 192,7,192,7,192,7,128,15,128,15,0,15,0,30,0,30, + 0,60,0,120,0,240,0,64,0,16,16,32,18,1,14,0, + 192,3,192,3,192,99,140,123,158,125,191,127,252,15,224,7, + 224,63,252,253,190,249,158,51,142,3,192,3,192,3,0,15, + 14,28,17,1,4,1,128,3,128,3,128,3,128,3,128,3, + 128,127,254,255,252,3,128,3,128,3,128,3,128,3,128,3, + 0,8,12,12,11,2,249,30,127,255,127,31,31,30,30,60, + 56,112,96,12,2,4,14,1,9,127,240,255,240,6,6,6, + 11,3,255,56,124,252,252,252,120,17,38,114,19,1,249,0, + 1,128,0,7,128,0,7,128,0,15,0,0,15,0,0,15, + 0,0,30,0,0,30,0,0,28,0,0,60,0,0,60,0, + 0,120,0,0,120,0,0,120,0,0,240,0,0,240,0,0, + 224,0,1,224,0,1,224,0,3,192,0,3,192,0,3,192, + 0,7,128,0,7,128,0,7,0,0,15,0,0,15,0,0, + 30,0,0,30,0,0,30,0,0,60,0,0,60,0,0,56, + 0,0,120,0,0,120,0,0,240,0,0,240,0,0,192,0, + 0,18,24,72,20,1,0,3,240,0,7,252,0,30,62,0, + 28,31,0,60,15,0,120,15,128,120,15,128,120,7,128,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,248,7,192,248,7,192,120,7,128,124,7,128,124,15,128, + 60,15,0,62,14,0,31,30,0,15,248,0,3,224,0,16, + 24,48,20,2,0,0,96,3,224,31,224,255,224,99,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,3, + 224,3,224,3,224,3,224,3,224,3,224,3,224,3,224,7, + 240,127,255,127,255,16,24,48,20,2,0,3,248,15,252,60, + 62,124,63,120,31,248,31,112,31,0,31,0,62,0,60,0, + 124,0,120,0,240,1,224,3,224,3,192,7,128,15,1,30, + 3,60,3,120,3,127,255,255,255,255,255,16,24,48,20,2, + 0,7,240,31,248,60,124,120,62,248,62,248,62,64,62,0, + 60,0,124,0,240,7,240,7,252,0,254,0,62,0,63,0, + 31,0,31,0,31,0,31,0,30,192,62,240,124,127,248,15, + 192,17,24,72,20,1,0,0,12,0,0,124,0,0,124,0, + 0,252,0,1,252,0,1,252,0,3,188,0,7,188,0,7, + 60,0,14,60,0,14,60,0,28,60,0,56,60,0,56,60, + 0,112,60,0,255,255,128,255,255,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,3,255,128,3,255,128,17, + 24,72,20,1,0,31,255,0,31,255,128,31,254,0,31,252, + 0,24,0,0,56,0,0,56,0,0,56,0,0,56,0,0, + 63,240,0,63,252,0,48,126,0,96,31,0,0,31,0,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,31, + 0,96,31,0,248,126,0,63,252,0,7,224,0,17,24,72, + 20,2,0,0,14,0,0,126,0,1,240,0,7,192,0,15, + 128,0,30,0,0,62,0,0,60,0,0,124,0,0,121,248, + 0,127,254,0,254,63,0,252,31,0,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,124,15,128,124,15,0,60, + 31,0,31,30,0,15,252,0,3,240,0,17,24,72,20,2, + 0,127,255,128,127,255,0,255,255,0,255,255,0,224,6,0, + 192,14,0,128,12,0,0,28,0,0,28,0,0,56,0,0, + 56,0,0,112,0,0,112,0,0,240,0,0,224,0,1,224, + 0,1,192,0,3,192,0,3,192,0,7,128,0,7,128,0, + 15,128,0,31,0,0,28,0,0,17,24,72,21,2,0,3, + 240,0,15,252,0,28,62,0,24,31,0,56,31,0,56,31, + 0,56,31,0,60,62,0,63,60,0,31,248,0,15,240,0, + 7,252,0,14,254,0,62,63,0,124,31,128,120,31,128,248, + 15,128,248,15,128,248,15,128,248,15,0,124,31,0,126,62, + 0,63,252,0,7,224,0,17,25,75,20,2,255,3,240,0, + 15,252,0,30,62,0,60,30,0,120,31,0,120,31,0,248, + 15,128,248,15,128,248,15,128,248,15,128,248,15,128,124,31, + 128,126,63,128,63,255,128,15,207,0,0,15,0,0,31,0, + 0,30,0,0,62,0,0,124,0,0,248,0,1,240,0,15, + 192,0,63,0,0,56,0,0,6,19,19,11,3,255,56,124, + 252,252,252,120,0,0,0,0,0,0,0,56,124,252,252,252, + 120,8,26,26,11,2,249,8,62,126,126,126,124,0,0,0, + 0,0,0,0,0,30,127,255,127,31,31,30,30,60,56,112, + 96,16,13,26,18,1,5,0,3,0,31,0,255,3,252,31, + 224,127,128,252,0,254,0,127,192,15,248,1,255,0,63,0, + 6,16,8,16,18,1,7,127,255,255,255,0,0,0,0,0, + 0,0,0,127,255,255,255,16,13,26,18,1,5,112,0,252, + 0,255,128,31,240,3,254,0,127,0,63,0,255,7,248,63, + 224,127,0,248,0,192,0,15,30,60,18,1,255,7,240,31, + 248,60,124,120,126,248,62,248,62,248,62,224,62,0,62,0, + 124,0,124,0,248,0,240,1,240,1,224,1,192,3,192,3, + 128,3,128,3,128,3,128,0,0,0,0,0,0,3,128,7, + 192,15,192,15,192,15,192,7,128,31,34,136,35,2,248,0, + 7,248,0,0,63,255,0,0,255,255,192,1,248,15,224,3, + 192,1,240,7,128,0,248,15,0,0,120,30,0,0,60,60, + 3,195,60,56,15,238,28,120,30,126,30,120,60,62,14,112, + 120,62,14,240,120,62,14,240,248,62,14,240,248,62,14,240, + 248,62,14,240,248,62,14,240,248,62,12,240,248,62,28,240, + 252,62,28,248,124,126,56,120,127,255,240,120,127,191,224,124, + 63,159,192,60,30,15,0,62,0,0,0,31,0,0,0,31, + 128,0,48,15,224,0,240,7,248,7,224,1,255,255,192,0, + 127,255,0,0,15,248,0,25,25,100,25,0,0,0,4,0, + 0,0,30,0,0,0,62,0,0,0,126,0,0,0,127,0, + 0,0,111,0,0,0,239,128,0,0,239,128,0,0,199,128, + 0,1,199,192,0,1,199,192,0,1,131,192,0,3,131,224, + 0,3,131,224,0,3,255,224,0,7,255,240,0,7,0,240, + 0,6,0,248,0,14,0,248,0,14,0,120,0,12,0,124, + 0,28,0,124,0,28,0,124,0,255,129,255,0,255,129,255, + 128,22,25,75,24,0,0,15,254,0,255,255,128,223,15,224, + 31,3,240,31,1,240,31,1,240,31,1,240,31,1,240,31, + 1,224,31,3,224,31,15,128,31,255,0,31,255,224,31,3, + 240,31,1,248,31,0,248,31,0,124,31,0,124,31,0,124, + 31,0,124,31,0,124,31,0,248,31,3,240,127,255,224,255, + 255,0,20,25,75,22,1,0,0,127,128,3,255,240,7,135, + 224,15,1,224,30,0,192,60,0,64,60,0,0,124,0,0, + 120,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,252,0,0,124,0,0,124,0, + 0,126,0,32,63,0,112,31,193,224,15,255,192,7,255,0, + 1,252,0,22,25,75,25,1,0,15,252,0,255,255,128,255, + 15,192,31,3,224,31,1,240,31,1,248,31,0,248,31,0, + 248,31,0,124,31,0,124,31,0,124,31,0,124,31,0,124, + 31,0,124,31,0,124,31,0,124,31,0,120,31,0,248,31, + 0,248,31,1,240,31,1,240,31,3,224,31,7,192,127,255, + 128,255,252,0,19,25,75,21,1,0,255,255,192,255,255,192, + 62,1,192,30,1,192,30,1,128,30,1,128,30,0,128,30, + 0,0,30,0,0,30,0,0,30,0,0,31,255,0,31,254, + 0,30,6,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,96,30,0,96,30,0,224,63,1,224,255, + 255,224,255,255,192,18,25,75,20,1,0,255,255,192,255,255, + 192,62,1,192,30,1,192,30,1,192,30,0,192,30,0,128, + 30,0,0,30,0,0,30,0,0,30,0,0,31,254,0,31, + 254,0,30,4,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,62,0,0, + 255,192,0,255,224,0,22,25,75,24,1,0,0,127,128,1, + 255,240,7,131,240,15,1,224,30,0,224,60,0,64,60,0, + 0,124,0,0,120,0,0,248,0,0,248,0,0,248,0,0, + 248,15,252,248,15,252,248,1,240,248,1,240,252,1,240,124, + 1,240,124,1,240,126,1,240,63,1,240,31,129,240,15,255, + 192,7,255,128,0,252,0,25,25,100,27,1,0,255,227,255, + 128,127,227,255,128,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,31,255,252,0,31,255,252, + 0,31,0,124,0,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,31,0,124,0,31,0,124, + 0,31,0,124,0,31,0,124,0,127,195,255,128,255,227,255, + 128,11,25,50,13,1,0,255,224,127,224,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,127,192,255,224,18,33,99,13,251,248,3, + 255,192,1,255,128,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,60,0,0,60,0, + 0,56,0,16,120,0,56,112,0,127,224,0,255,128,0,62, + 0,0,24,25,75,25,0,0,255,227,254,127,193,254,31,0, + 240,31,1,224,31,3,192,31,7,128,31,15,0,31,14,0, + 31,28,0,31,60,0,31,120,0,31,240,0,31,248,0,31, + 124,0,31,60,0,31,62,0,31,31,0,31,15,128,31,7, + 192,31,3,224,31,3,240,31,1,248,31,0,255,127,224,127, + 255,224,60,20,25,75,20,0,0,255,224,0,127,224,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,48,31,0,96,31,0,96,31,128,224,127,255, + 224,255,255,224,31,25,100,34,1,0,255,0,1,254,127,0, + 1,254,31,128,1,240,31,128,3,240,31,192,3,240,31,192, + 7,240,31,192,7,240,31,224,14,240,29,224,14,240,29,240, + 30,240,28,240,28,240,28,248,28,240,28,248,56,240,28,124, + 56,248,28,124,112,248,28,60,112,248,28,62,224,248,28,30, + 224,248,28,31,224,248,28,31,192,248,28,15,192,248,28,15, + 128,248,28,7,128,248,255,7,7,254,255,3,7,254,25,25, + 100,27,1,0,254,0,255,128,255,0,127,0,31,0,28,0, + 31,128,28,0,31,192,28,0,31,192,28,0,31,224,28,0, + 29,240,28,0,29,248,28,0,28,248,28,0,28,124,28,0, + 28,126,28,0,28,62,28,0,28,31,28,0,28,15,156,0, + 28,15,156,0,28,7,220,0,28,3,252,0,28,3,252,0, + 28,1,252,0,28,0,252,0,28,0,252,0,28,0,124,0, + 127,0,60,0,255,128,12,0,23,25,75,25,1,0,0,126, + 0,3,255,192,7,135,224,14,1,240,30,0,248,60,0,248, + 60,0,124,124,0,124,120,0,126,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,252,0, + 60,124,0,124,124,0,120,62,0,120,62,0,240,31,1,224, + 15,195,192,7,255,0,0,252,0,21,25,75,23,1,0,15, + 254,0,255,255,192,255,7,224,31,3,240,31,1,248,31,0, + 248,31,0,248,31,0,248,31,0,248,31,0,248,31,1,240, + 31,1,240,31,135,224,31,127,128,31,62,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,127,224,0,255,224,0,27,31,124,25,1,250, + 0,126,0,0,3,255,192,0,7,135,224,0,14,1,240,0, + 30,0,248,0,60,0,248,0,60,0,124,0,124,0,124,0, + 120,0,124,0,248,0,62,0,248,0,62,0,248,0,62,0, + 248,0,62,0,248,0,62,0,248,0,62,0,248,0,62,0, + 252,0,60,0,124,0,124,0,124,0,120,0,62,0,120,0, + 62,0,240,0,31,1,224,0,15,195,192,0,7,255,128,0, + 0,255,0,0,0,7,224,0,0,1,248,96,0,0,255,224, + 0,0,127,192,0,0,31,128,0,0,7,0,23,25,75,24, + 1,0,15,252,0,255,255,128,255,15,192,31,7,192,31,3, + 224,31,3,224,31,3,224,31,3,224,31,3,224,31,7,192, + 31,7,128,31,255,0,31,254,0,31,124,0,31,30,0,31, + 15,0,31,15,0,31,7,128,31,7,192,31,3,224,31,3, + 224,31,1,240,31,1,254,127,192,254,255,224,248,17,25,75, + 21,2,0,3,252,0,31,255,0,60,63,0,112,14,0,240, + 6,0,240,0,0,248,0,0,252,0,0,254,0,0,127,128, + 0,63,224,0,31,248,0,7,254,0,1,255,0,0,127,0, + 0,31,128,0,15,128,0,7,128,192,7,128,192,7,128,224, + 7,0,240,14,0,252,28,0,255,248,0,31,224,0,23,25, + 75,23,0,0,127,255,252,127,255,254,96,124,14,224,124,12, + 192,124,12,192,124,12,192,124,12,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,0,124,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,0,124,0,0,124,0,3,255,128,3,255,128,25, + 25,100,27,1,0,255,224,255,128,127,224,255,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,28, + 0,31,0,28,0,31,0,28,0,31,0,28,0,31,0,24, + 0,15,128,56,0,15,128,56,0,7,192,112,0,3,224,224, + 0,1,255,192,0,0,127,0,0,26,25,100,27,0,0,255, + 192,63,192,127,192,63,192,31,0,14,0,31,0,14,0,15, + 128,28,0,15,128,28,0,15,128,28,0,7,192,56,0,7, + 192,56,0,3,224,48,0,3,224,112,0,3,224,112,0,1, + 240,224,0,1,240,224,0,0,240,224,0,0,249,192,0,0, + 249,192,0,0,125,192,0,0,127,128,0,0,63,128,0,0, + 63,0,0,0,63,0,0,0,31,0,0,0,30,0,0,0, + 8,0,0,34,25,125,34,0,0,255,192,224,127,192,127,128, + 224,63,192,30,0,224,14,0,31,1,240,14,0,31,1,240, + 12,0,15,1,248,28,0,15,3,248,28,0,15,131,248,28, + 0,15,131,252,28,0,7,135,60,24,0,7,135,60,56,0, + 7,134,62,56,0,7,206,30,56,0,3,206,31,56,0,3, + 204,15,48,0,3,220,15,112,0,3,252,15,240,0,3,248, + 7,240,0,1,248,7,224,0,1,248,7,224,0,1,240,3, + 224,0,1,240,3,224,0,0,240,1,224,0,0,224,1,192, + 0,0,192,1,128,0,25,25,100,25,0,0,127,225,255,0, + 127,225,255,0,31,128,124,0,15,128,112,0,15,192,240,0, + 7,224,224,0,3,225,192,0,1,243,192,0,1,251,128,0, + 0,255,0,0,0,127,0,0,0,126,0,0,0,62,0,0, + 0,127,0,0,0,127,128,0,0,239,192,0,1,231,192,0, + 1,195,224,0,3,131,240,0,7,129,240,0,7,0,248,0, + 14,0,252,0,30,0,254,0,255,131,255,128,255,131,255,128, + 24,25,75,25,0,0,126,0,255,255,0,255,31,0,56,15, + 128,56,15,192,112,7,192,112,3,224,224,3,224,224,1,241, + 192,1,241,192,0,251,128,0,251,128,0,127,0,0,127,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,1,255,192,1,255, + 192,19,25,75,22,1,0,63,255,224,63,255,224,120,7,192, + 112,15,192,96,15,128,96,31,128,32,63,0,0,62,0,0, + 126,0,0,124,0,0,252,0,1,248,0,1,240,0,3,240, + 0,3,224,0,7,224,0,15,192,0,15,128,0,31,128,32, + 31,0,96,63,0,96,126,0,96,124,0,224,255,255,224,255, + 255,224,11,37,74,14,2,250,255,224,255,224,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,255,224, + 255,224,17,38,114,19,1,249,192,0,0,240,0,0,112,0, + 0,112,0,0,120,0,0,56,0,0,60,0,0,60,0,0, + 28,0,0,30,0,0,30,0,0,14,0,0,15,0,0,7, + 0,0,7,128,0,7,128,0,3,128,0,3,192,0,3,192, + 0,1,192,0,1,224,0,0,224,0,0,224,0,0,240,0, + 0,112,0,0,120,0,0,120,0,0,56,0,0,60,0,0, + 60,0,0,28,0,0,30,0,0,14,0,0,15,0,0,15, + 0,0,7,0,0,7,128,0,1,128,10,37,74,13,1,250, + 255,192,255,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,255,192,255,192,16,19,38,20,2,11, + 0,128,3,128,3,192,3,192,7,224,6,224,14,224,12,112, + 12,112,28,120,24,56,24,56,48,28,48,28,112,28,96,14, + 96,14,224,7,128,6,17,2,6,19,1,251,127,255,128,255, + 255,128,9,10,20,13,0,20,56,0,248,0,252,0,124,0, + 62,0,30,0,15,0,7,0,3,128,1,0,19,18,54,20, + 1,0,1,248,0,15,254,0,62,63,0,124,31,0,124,31, + 0,112,31,0,0,31,0,1,255,0,15,255,0,63,31,0, + 124,31,0,120,31,0,248,31,0,248,31,32,248,127,224,255, + 223,192,127,159,128,62,14,0,20,30,90,21,0,0,6,0, + 0,254,0,0,254,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,0,0,62, + 0,0,62,31,0,62,127,192,63,255,192,63,199,224,63,1, + 224,62,1,240,62,0,240,62,0,240,62,0,240,62,0,240, + 62,0,240,62,0,224,62,1,224,62,1,192,63,131,128,63, + 255,0,15,252,0,1,240,0,16,18,36,18,1,0,1,252, + 7,255,31,31,60,15,60,7,120,6,120,0,248,0,248,0, + 248,0,248,0,248,0,124,0,126,3,63,7,63,254,15,252, + 3,240,21,30,90,22,1,0,0,1,192,0,63,192,0,63, + 192,0,7,192,0,7,192,0,7,192,0,7,192,0,7,192, + 0,7,192,0,7,192,0,7,192,0,7,192,3,247,192,15, + 255,192,30,31,192,60,15,192,124,7,192,120,7,192,248,7, + 192,248,7,192,248,7,192,248,7,192,248,7,192,252,7,192, + 252,15,192,126,31,192,127,255,248,63,247,248,31,231,224,7, + 131,128,17,18,54,19,1,0,1,240,0,15,252,0,30,62, + 0,60,31,0,120,15,0,120,15,128,248,15,128,255,255,128, + 255,254,0,248,0,0,248,0,0,248,0,0,252,0,0,126, + 1,128,127,7,0,63,254,0,31,252,0,7,240,0,17,29, + 87,14,0,0,0,63,0,0,255,128,3,143,0,7,134,0, + 7,0,0,15,0,0,15,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,127,252,0,255,248,0,31,16,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,127,240,0,255,240,0,21,27,81,22,0, + 247,1,248,24,15,255,248,30,31,240,60,15,128,124,7,192, + 124,7,192,124,7,192,124,7,192,62,7,128,63,15,0,31, + 254,0,3,248,0,7,128,0,15,128,0,31,192,0,31,255, + 0,31,255,224,7,255,240,30,255,248,124,3,248,120,0,248, + 248,0,248,248,0,240,252,1,224,127,3,192,31,255,0,3, + 248,0,22,30,90,23,1,0,6,0,0,254,0,0,254,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,15,128,62, + 63,192,62,127,224,62,255,224,63,199,224,63,3,224,62,3, + 224,62,3,224,62,3,224,62,3,224,62,3,224,62,3,224, + 62,3,224,62,3,224,62,3,224,62,3,224,255,143,248,255, + 223,252,10,27,54,12,1,0,30,0,63,0,63,0,63,0, + 30,0,0,0,0,0,0,0,0,0,14,0,254,0,254,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,255,128,255,192,15,36, + 72,11,250,247,0,60,0,126,0,126,0,126,0,60,0,0, + 0,0,0,0,0,0,0,28,3,252,3,252,0,124,0,124, + 0,124,0,124,0,124,0,124,0,124,0,124,0,124,0,124, + 0,124,0,124,0,124,0,124,0,124,0,124,0,124,0,120, + 0,120,32,240,120,224,255,192,255,128,60,0,21,30,90,22, + 1,0,6,0,0,254,0,0,254,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,15,240,62,7,240,62,7,128,62, + 15,0,62,62,0,62,120,0,62,240,0,63,224,0,63,240, + 0,62,248,0,62,124,0,62,62,0,62,31,0,62,31,128, + 62,15,192,62,7,224,255,131,248,255,129,224,10,30,60,12, + 1,0,6,0,254,0,254,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,255,128,255,192,34,18, + 90,34,0,0,6,15,192,248,0,255,63,227,252,0,255,127, + 255,254,0,31,227,252,126,0,31,129,248,62,0,31,1,240, + 62,0,31,1,240,62,0,31,1,240,62,0,31,1,240,62, + 0,31,1,240,62,0,31,1,240,62,0,31,1,240,62,0, + 31,1,240,62,0,31,1,240,62,0,31,1,240,62,0,31, + 1,240,62,0,127,199,252,255,128,255,199,252,255,192,22,18, + 54,23,1,0,14,15,128,254,63,192,254,255,224,63,255,224, + 63,199,224,63,3,224,62,3,224,62,3,224,62,3,224,62, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,62,3,224,255,143,248,255,223,252,19,18,54,21,1,0, + 1,248,0,7,254,0,30,31,128,60,15,128,124,7,192,120, + 7,192,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,192,124,3,192,124,7,128,62,7,128,63,15,0, + 15,252,0,3,240,0,20,27,81,22,1,247,14,31,0,254, + 127,128,254,255,192,63,135,224,63,3,224,62,1,240,62,0, + 240,62,0,240,62,0,240,62,0,240,62,0,240,62,0,224, + 62,0,224,62,1,192,63,195,192,63,255,128,62,255,0,62, + 60,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,255,192,0,255,192,0,21,27,81, + 22,1,247,1,240,64,7,252,224,14,31,192,60,15,192,60, + 7,192,120,7,192,248,7,192,248,7,192,248,7,192,248,7, + 192,248,7,192,252,7,192,252,15,192,126,31,192,127,255,192, + 63,247,192,31,231,192,7,135,192,0,7,192,0,7,192,0, + 7,192,0,7,192,0,7,192,0,7,192,0,7,192,0,63, + 240,0,63,248,16,18,36,18,1,0,14,30,254,127,254,255, + 63,255,63,207,31,135,31,6,30,6,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,62,0,255,192,255,224,14,18, + 36,17,2,0,15,192,63,248,120,248,240,112,240,48,248,48, + 254,0,127,128,63,224,15,248,3,248,192,252,192,124,224,60, + 224,60,248,120,255,240,63,192,15,25,50,15,0,0,3,0, + 7,0,15,0,31,0,31,0,31,0,31,0,127,254,255,252, + 31,8,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,140,31,254,31,248,15,224,7,128, + 22,18,54,23,1,0,14,0,224,254,31,224,126,7,224,62, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,62,3,224,62,3,224,62,3,224,62,3,224,62,7,224, + 63,31,252,31,251,252,31,243,240,15,193,192,20,18,54,20, + 0,0,255,131,240,127,3,240,62,1,192,31,1,192,31,1, + 128,15,3,128,15,131,0,15,135,0,7,199,0,7,206,0, + 3,238,0,3,236,0,1,252,0,1,252,0,0,248,0,0, + 248,0,0,240,0,0,96,0,28,18,72,29,0,0,255,131, + 3,240,127,3,129,240,62,3,128,192,30,7,193,192,31,7, + 193,192,31,15,193,192,15,15,227,128,15,157,227,128,15,157, + 243,128,7,153,243,0,7,248,255,0,7,240,255,0,3,240, + 126,0,3,240,126,0,3,224,62,0,1,224,60,0,1,192, + 28,0,1,128,24,0,21,18,54,21,0,0,255,199,240,255, + 199,240,63,131,192,15,131,128,15,199,0,7,238,0,3,252, + 0,1,248,0,1,248,0,0,252,0,1,254,0,3,190,0, + 7,31,0,6,31,128,12,15,192,28,7,224,127,31,248,255, + 31,248,21,27,81,20,255,247,127,193,248,63,129,248,31,0, + 224,15,128,224,15,129,192,7,193,192,7,193,128,7,195,128, + 3,227,128,3,231,0,1,247,0,1,246,0,0,254,0,0, + 254,0,0,252,0,0,124,0,0,120,0,0,56,0,0,56, + 0,0,112,0,0,112,0,0,224,0,33,224,0,127,192,0, + 127,128,0,255,0,0,124,0,0,16,18,36,19,1,0,63, + 255,63,255,112,62,112,126,96,124,96,248,1,248,1,240,3, + 224,7,224,7,192,15,128,31,129,31,3,62,3,124,3,127, + 255,255,255,11,37,74,14,2,250,0,96,1,224,3,192,7, + 128,15,0,31,0,31,0,31,0,31,0,31,0,31,128,15, + 128,15,128,15,128,15,128,15,0,31,0,62,0,252,0,255, + 0,31,0,15,128,15,128,15,128,15,128,15,128,31,128,31, + 0,31,0,31,0,31,0,31,0,15,0,15,128,7,192,1, + 224,0,96,3,41,41,9,3,248,96,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,192,11,37,74,14,1,250,192,0,240,0,124,0,62,0, + 30,0,31,0,31,0,31,0,31,0,31,0,63,0,62,0, + 62,0,62,0,62,0,62,0,31,0,31,224,7,224,15,128, + 31,0,30,0,62,0,62,0,62,0,62,0,63,0,31,0, + 31,0,31,0,31,0,31,0,30,0,60,0,120,0,240,0, + 192,0,18,6,18,20,1,9,15,0,192,31,192,128,63,225, + 0,99,255,0,192,254,0,128,56,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--48-480-72-72-P-238-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 30, '1' Height: 29 + Calculated Max Values w=41 h=49 x= 5 y=27 dx=42 dy= 0 ascent=42 len=210 + Font Bounding box w=74 h=69 x=-24 y=-17 + Calculated Min Values x=-7 y=-13 dx= 0 dy= 0 + Pure Font ascent =30 descent=-11 + X Font ascent =38 descent=-11 + Max Font ascent =42 descent=-13 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb30[19508] U8G_SECTION(".progmem.u8g_font_gdb30") = { + 0,74,69,232,239,30,10,50,24,78,32,255,245,42,243,38, + 245,0,0,0,12,0,0,8,36,36,15,3,255,6,31,127, + 126,126,126,126,126,126,126,62,62,62,62,62,62,62,60,60, + 60,60,60,60,28,28,24,0,0,0,62,127,255,255,255,254, + 124,16,16,32,23,3,19,14,3,126,31,254,63,254,63,124, + 63,124,63,124,63,124,63,124,30,124,30,124,30,60,30,60, + 30,56,30,56,30,56,14,22,27,81,24,2,3,0,56,48, + 0,120,112,0,112,240,0,112,224,0,240,224,0,225,224,0, + 225,192,31,255,252,31,255,252,63,255,252,3,195,128,3,195, + 128,3,135,128,3,135,0,7,135,0,7,135,0,255,255,240, + 255,255,240,255,255,224,14,30,0,14,28,0,30,28,0,28, + 60,0,28,60,0,28,56,0,60,56,0,56,112,0,20,36, + 108,24,2,252,0,48,0,0,112,0,0,112,0,0,112,0, + 3,255,0,15,255,224,63,255,240,124,119,240,120,115,224,240, + 113,224,240,112,192,248,112,0,252,112,0,255,112,0,127,240, + 0,63,248,0,31,254,0,7,255,128,0,255,192,0,127,224, + 0,119,224,0,113,240,0,113,240,224,112,240,224,112,240,240, + 112,240,248,112,224,252,113,224,255,119,192,255,255,192,63,255, + 0,7,252,0,0,112,0,0,112,0,0,112,0,0,96,0, + 31,30,120,34,2,0,0,0,0,16,7,192,0,240,31,224, + 1,224,56,240,3,192,120,120,3,128,112,120,7,128,240,60, + 15,0,240,60,30,0,240,60,28,0,240,60,60,0,240,60, + 120,0,240,60,240,0,112,57,224,0,120,57,224,0,56,115, + 192,0,31,231,131,224,15,143,12,48,0,15,24,56,0,30, + 56,28,0,60,56,28,0,120,120,30,0,120,120,30,0,240, + 120,30,1,224,120,30,3,192,120,30,3,192,120,28,7,128, + 60,60,15,0,30,56,30,0,15,240,28,0,7,192,31,34, + 136,33,2,0,0,31,128,0,0,127,224,0,0,227,240,0, + 1,225,248,0,3,193,248,0,3,193,248,0,7,193,248,0, + 7,193,248,0,7,195,240,0,7,195,240,0,7,231,224,0, + 7,239,192,0,3,255,128,0,3,255,0,0,3,252,0,0, + 1,248,0,0,7,252,63,252,15,252,127,254,31,254,31,184, + 63,127,15,128,62,127,7,128,126,63,135,128,252,31,199,128, + 252,31,231,128,252,15,247,0,252,7,255,0,252,3,254,0, + 252,1,252,0,254,0,255,0,127,0,127,128,127,129,255,248, + 63,255,223,248,15,255,15,244,3,252,7,128,7,16,16,13, + 3,19,14,126,254,254,124,124,124,124,124,124,124,60,60,56, + 56,56,13,45,90,16,3,249,0,16,0,120,0,240,1,224, + 3,224,7,192,7,128,15,128,31,0,31,0,63,0,62,0, + 62,0,126,0,126,0,126,0,124,0,252,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 252,0,126,0,126,0,126,0,126,0,62,0,63,0,63,0, + 31,0,15,128,15,128,7,192,3,192,1,224,0,240,0,120, + 0,16,13,44,88,16,0,249,64,0,240,0,120,0,60,0, + 30,0,31,0,15,128,15,192,7,192,7,224,7,224,3,224, + 3,240,3,240,3,240,1,240,1,248,1,248,1,248,1,248, + 1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,240, + 3,240,3,240,3,240,3,224,3,224,7,224,7,192,7,192, + 15,128,15,0,31,0,62,0,60,0,120,0,240,0,64,0, + 19,20,60,21,1,17,0,48,0,1,240,0,1,240,0,32, + 240,0,112,225,128,120,227,192,126,231,224,127,255,224,31,255, + 0,3,248,0,3,248,0,31,255,0,127,255,192,254,231,192, + 124,227,192,48,225,192,0,240,128,0,240,0,1,240,0,0, + 192,0,18,18,54,20,1,4,0,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,127,255,192, + 255,255,192,255,255,128,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,192,0,10,15, + 30,13,1,247,7,0,63,128,255,192,127,192,63,192,15,192, + 15,192,15,128,15,128,15,0,31,0,30,0,60,0,120,0, + 48,0,15,3,6,17,1,11,127,254,127,252,255,252,8,7, + 7,13,3,255,62,127,255,255,255,254,124,21,46,138,23,1, + 248,0,0,56,0,0,248,0,0,240,0,1,240,0,1,240, + 0,1,224,0,3,224,0,3,224,0,3,192,0,7,192,0, + 7,128,0,15,128,0,15,128,0,15,0,0,31,0,0,31, + 0,0,30,0,0,62,0,0,60,0,0,124,0,0,124,0, + 0,120,0,0,248,0,0,248,0,0,240,0,1,240,0,1, + 224,0,3,224,0,3,224,0,3,192,0,7,192,0,7,192, + 0,7,128,0,15,128,0,15,0,0,31,0,0,31,0,0, + 30,0,0,62,0,0,62,0,0,60,0,0,124,0,0,120, + 0,0,248,0,0,248,0,0,192,0,0,22,29,87,24,1, + 0,0,252,0,3,255,0,7,143,192,15,7,224,30,3,224, + 62,1,240,62,1,240,124,1,248,124,1,248,124,0,248,252, + 0,252,252,0,252,252,0,252,252,0,252,252,0,252,252,0, + 252,252,0,252,252,0,252,252,0,252,124,0,248,124,0,248, + 126,0,248,62,1,240,62,1,240,31,1,224,31,3,192,15, + 135,128,3,255,0,0,252,0,19,29,87,24,3,0,0,16, + 0,0,248,0,7,248,0,63,248,0,255,248,0,225,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1, + 248,0,1,248,0,1,248,0,1,248,0,1,248,0,1,248, + 0,1,248,0,1,248,0,1,248,0,1,248,0,1,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,15,255,0,127, + 255,224,127,255,224,20,29,87,24,1,0,0,255,0,7,255, + 192,15,143,224,63,7,224,62,3,240,126,3,240,126,3,240, + 120,3,240,0,3,240,0,7,224,0,7,224,0,15,192,0, + 15,128,0,31,128,0,31,0,0,62,0,0,124,0,0,248, + 0,0,248,0,1,240,0,3,224,32,7,192,48,15,128,48, + 15,0,48,30,0,112,63,255,240,127,255,240,255,255,240,127, + 255,240,20,29,87,24,1,0,1,254,0,7,255,128,31,31, + 192,63,15,192,62,7,224,126,7,224,60,7,224,0,7,224, + 0,7,192,0,15,192,0,31,128,0,127,0,1,254,0,1, + 255,128,2,63,192,0,15,224,0,7,224,0,3,240,0,3, + 240,0,3,240,0,3,240,0,3,240,0,3,240,64,7,224, + 96,15,224,252,31,192,63,255,128,31,254,0,3,248,0,21, + 29,87,25,2,0,0,1,128,0,15,128,0,31,128,0,63, + 128,0,63,128,0,127,128,0,255,128,0,239,128,1,239,128, + 3,207,128,3,143,128,7,143,128,7,15,128,14,15,128,30, + 15,128,28,15,128,56,15,128,56,15,128,127,255,248,255,255, + 240,255,255,224,0,15,128,0,15,128,0,15,128,0,15,128, + 0,15,128,0,31,192,1,255,240,1,255,240,20,29,87,24, + 2,0,0,0,32,31,255,240,31,255,192,31,255,192,31,255, + 128,28,0,0,28,0,0,28,0,0,60,0,0,60,0,0, + 56,0,0,59,252,0,63,255,0,63,255,128,120,31,192,32, + 15,224,0,7,224,0,7,240,0,3,240,0,3,240,0,3, + 240,0,3,240,0,3,240,0,7,224,64,7,224,224,15,192, + 252,31,128,63,254,0,7,248,0,20,29,87,24,2,0,0, + 1,128,0,31,192,0,127,0,1,252,0,3,240,0,7,192, + 0,15,128,0,31,128,0,63,0,0,62,0,0,126,0,0, + 124,126,0,125,255,128,255,255,192,255,15,224,254,7,224,252, + 7,240,252,3,240,252,3,240,252,3,240,252,3,240,124,3, + 240,126,3,224,126,3,224,62,3,192,31,7,192,15,143,128, + 7,255,0,1,248,0,21,28,84,24,2,0,127,255,240,127, + 255,248,127,255,240,127,255,224,112,1,224,224,1,224,192,1, + 192,64,3,192,0,3,128,0,7,128,0,7,0,0,15,0, + 0,15,0,0,30,0,0,30,0,0,60,0,0,60,0,0, + 124,0,0,120,0,0,248,0,0,240,0,1,240,0,1,240, + 0,3,224,0,3,224,0,7,224,0,15,192,0,6,0,0, + 20,29,87,24,2,0,0,252,0,7,255,128,15,31,192,30, + 15,192,28,7,224,60,7,224,60,7,224,60,7,224,62,15, + 192,63,143,128,31,255,0,31,254,0,15,252,0,3,255,0, + 7,255,128,15,255,192,31,31,224,62,15,240,126,7,240,252, + 3,240,252,3,240,252,3,240,252,3,240,252,3,224,126,3, + 224,126,7,192,63,15,128,31,254,0,3,248,0,20,29,87, + 24,2,255,1,252,0,7,255,0,15,31,128,30,15,192,62, + 7,224,124,7,224,124,7,224,252,3,240,252,3,240,252,3, + 240,252,3,240,252,3,240,254,3,240,126,7,240,127,15,240, + 63,255,240,31,251,224,7,227,224,0,7,224,0,7,192,0, + 7,192,0,15,128,0,31,0,0,62,0,0,252,0,3,248, + 0,15,224,0,63,128,0,56,0,0,8,23,23,13,3,255, + 62,127,255,255,255,254,124,0,0,0,0,0,0,0,0,0, + 62,127,255,255,255,254,124,10,31,62,13,1,247,15,128,31, + 192,63,192,63,192,63,192,31,128,14,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,63, + 128,255,192,127,192,63,192,15,192,15,192,15,128,15,128,15, + 0,31,0,30,0,60,0,120,0,48,0,20,16,48,22,1, + 6,0,0,96,0,1,240,0,15,224,0,127,224,3,255,128, + 15,252,0,127,224,0,127,0,0,254,0,0,255,192,0,63, + 248,0,7,254,0,1,255,192,0,63,224,0,7,240,0,0, + 192,20,10,30,22,1,8,127,255,224,127,255,240,255,255,224, + 0,0,0,0,0,0,0,0,0,0,0,0,127,255,224,127, + 255,240,255,255,224,20,16,48,22,1,6,48,0,0,126,0, + 0,255,192,0,63,240,0,15,254,0,1,255,192,0,63,224, + 0,7,240,0,31,224,0,127,224,3,255,0,31,248,0,127, + 224,0,127,0,0,248,0,0,64,0,0,19,35,105,22,2, + 255,1,254,0,15,255,128,63,31,192,126,15,192,124,7,224, + 252,7,224,252,7,224,252,7,224,240,7,224,0,7,192,0, + 15,192,0,15,128,0,31,128,0,63,0,0,126,0,0,124, + 0,0,248,0,1,240,0,1,224,0,3,224,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,128,0,0,0,0,0, + 0,0,0,0,0,1,240,0,3,248,0,7,248,0,7,248, + 0,7,248,0,7,240,0,3,224,0,38,42,210,42,2,246, + 0,0,255,192,0,0,7,255,248,0,0,31,255,254,0,0, + 127,255,255,0,0,255,0,255,128,1,248,0,31,192,3,224, + 0,7,224,7,192,0,3,224,15,128,0,1,240,31,0,0, + 1,240,31,0,252,24,248,62,3,254,120,248,60,7,255,240, + 120,124,15,135,240,124,124,31,3,240,124,120,31,3,240,60, + 120,62,3,240,60,248,62,3,240,60,248,126,3,240,60,248, + 126,3,240,60,248,126,3,240,60,248,126,3,240,60,248,126, + 3,240,56,248,126,3,240,56,248,126,3,240,120,252,127,3, + 240,112,252,63,7,240,224,124,63,143,249,224,124,31,255,255, + 192,126,31,251,255,128,62,15,241,254,0,63,3,224,248,0, + 63,128,0,0,0,31,192,0,0,0,15,224,0,0,128,15, + 240,0,1,192,7,252,0,7,192,3,255,128,127,128,0,255, + 255,254,0,0,127,255,252,0,0,31,255,240,0,0,1,255, + 0,0,30,30,120,30,0,0,0,1,128,0,0,7,128,0, + 0,15,192,0,0,31,192,0,0,31,224,0,0,31,224,0, + 0,63,224,0,0,63,240,0,0,59,240,0,0,121,240,0, + 0,121,248,0,0,113,248,0,0,240,252,0,0,240,252,0, + 0,224,252,0,1,224,126,0,1,224,126,0,1,192,126,0, + 3,255,255,0,3,255,255,0,3,128,31,0,7,128,31,128, + 7,0,31,128,7,0,15,192,15,0,15,192,14,0,15,192, + 14,0,7,224,30,0,7,224,255,192,63,252,255,192,63,252, + 26,30,120,29,0,0,3,255,128,0,255,255,240,0,127,193, + 252,0,15,192,126,0,15,192,127,0,15,192,63,0,15,192, + 63,0,15,192,63,0,15,192,63,0,15,192,62,0,15,192, + 126,0,15,192,252,0,15,195,248,0,15,255,224,0,15,255, + 252,0,15,192,254,0,15,192,63,0,15,192,31,128,15,192, + 31,128,15,192,15,192,15,192,15,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,15,128,15,192,31,128,15,192, + 63,0,31,192,254,0,127,255,252,0,127,255,224,0,24,30, + 90,27,1,0,0,31,224,0,255,252,1,255,254,7,224,254, + 15,128,126,31,128,60,31,0,28,62,0,0,62,0,0,126, + 0,0,124,0,0,252,0,0,252,0,0,252,0,0,252,0, + 0,252,0,0,252,0,0,252,0,0,252,0,0,254,0,0, + 126,0,0,126,0,0,127,0,0,63,128,2,63,192,15,31, + 240,62,15,255,248,7,255,240,1,255,192,0,127,0,29,30, + 120,31,0,0,3,255,192,0,255,255,248,0,127,192,254,0, + 143,192,63,128,15,192,31,192,15,192,15,192,15,192,7,224, + 15,192,7,240,15,192,3,240,15,192,3,240,15,192,3,248, + 15,192,1,248,15,192,1,248,15,192,1,248,15,192,1,248, + 15,192,1,248,15,192,1,248,15,192,1,248,15,192,1,248, + 15,192,1,240,15,192,3,240,15,192,3,240,15,192,7,224, + 15,192,7,224,15,192,15,192,15,192,31,128,15,192,63,0, + 31,224,254,0,127,255,248,0,127,255,192,0,23,30,90,25, + 1,0,255,255,248,255,255,252,63,128,56,31,128,56,31,128, + 24,31,128,24,31,128,24,31,128,24,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,255,224,31,255,224,31, + 128,192,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,6,31,128,6,31,128,14, + 31,128,14,63,192,30,255,255,254,255,255,252,22,30,90,24, + 1,0,255,255,248,255,255,252,63,128,60,31,128,28,31,128, + 24,31,128,24,31,128,24,31,128,24,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,255,192,31,255,224,31, + 129,128,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,63,192,0,255,248,0,255,248,0,27,30,120,29, + 1,0,0,15,248,0,0,127,255,128,1,240,127,128,3,192, + 63,0,7,128,15,0,15,0,14,0,31,0,0,0,62,0, + 0,0,62,0,0,0,126,0,0,0,124,0,0,0,124,0, + 0,0,252,0,0,0,252,0,0,0,252,1,255,224,252,1, + 255,224,252,0,127,192,252,0,31,128,252,0,31,128,254,0, + 31,128,126,0,31,128,127,0,31,128,127,0,31,128,63,128, + 31,128,63,192,31,128,31,240,63,0,15,255,254,0,7,255, + 252,0,1,255,240,0,0,63,128,0,30,30,120,33,1,0, + 255,240,63,252,255,240,63,252,63,192,15,240,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,255,255,224,31,255,255,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,63,192,15,240, + 255,240,63,252,255,240,63,252,12,30,60,16,2,0,255,240, + 255,240,63,192,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,63,192,255,240,255,240,21,40,120,16,249,246, + 0,255,248,0,255,248,0,31,224,0,15,192,0,15,192,0, + 15,192,0,15,192,0,15,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,15,192,0,15,192,0,15,192, + 0,15,192,0,15,192,0,15,192,0,15,192,0,15,192,0, + 15,192,0,15,192,0,15,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,15,192,0,15,128,0,15,128, + 0,15,128,0,31,0,24,30,0,62,62,0,127,248,0,255, + 240,0,127,224,0,31,128,0,29,30,120,30,1,0,255,240, + 255,224,255,240,255,224,63,192,31,0,31,128,62,0,31,128, + 124,0,31,128,248,0,31,129,240,0,31,129,224,0,31,131, + 192,0,31,135,128,0,31,143,0,0,31,159,0,0,31,190, + 0,0,31,188,0,0,31,252,0,0,31,254,0,0,31,191, + 0,0,31,159,128,0,31,143,192,0,31,135,224,0,31,135, + 240,0,31,131,248,0,31,129,252,0,31,128,254,0,31,128, + 126,0,31,128,127,0,31,128,63,192,63,192,31,240,255,240, + 15,248,255,240,7,128,23,30,90,24,1,0,255,240,0,255, + 240,0,63,192,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,4,31,128,6,31,128,14,31,128,30,63,192,60, + 255,255,252,255,255,252,38,30,150,41,1,0,255,128,0,15, + 248,255,192,0,15,248,15,192,0,31,192,15,224,0,31,192, + 15,224,0,31,192,15,240,0,63,192,15,240,0,63,192,15, + 248,0,127,192,15,248,0,119,192,14,252,0,247,192,14,252, + 0,247,192,14,124,1,231,192,14,126,1,231,192,14,62,1, + 199,192,14,63,3,199,192,14,31,3,135,192,14,31,135,135, + 192,14,31,135,135,192,14,15,143,7,192,14,15,207,7,192, + 30,7,222,7,192,30,7,254,7,192,30,3,252,7,192,30, + 3,252,7,192,30,3,248,7,192,30,1,248,7,224,30,1, + 248,7,224,31,0,240,15,224,255,192,240,63,252,255,192,96, + 63,252,30,30,120,32,1,0,255,0,15,252,255,128,15,252, + 63,192,3,240,31,192,1,224,31,224,1,224,31,240,1,224, + 31,240,1,224,31,248,1,224,31,252,1,224,30,254,1,224, + 30,126,1,224,30,63,1,224,30,63,129,224,30,31,129,224, + 30,15,193,224,30,7,225,224,30,7,225,224,30,3,241,224, + 30,1,249,224,30,1,253,224,30,0,253,224,30,0,127,224, + 30,0,63,224,30,0,63,224,30,0,31,224,30,0,15,224, + 30,0,7,224,63,0,7,224,255,192,3,224,255,192,0,224, + 27,30,120,30,1,0,0,31,192,0,0,255,240,0,3,225, + 252,0,7,128,126,0,15,0,63,0,31,0,31,0,30,0, + 31,128,62,0,15,128,126,0,15,192,124,0,15,192,124,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,254,0,7,192,126,0,15,192,126,0,15,128,127,0, + 15,128,63,0,31,0,31,128,31,0,31,192,62,0,15,240, + 252,0,7,255,240,0,1,255,224,0,0,127,0,0,25,30, + 120,27,0,0,3,255,192,0,255,255,248,0,127,193,252,0, + 143,192,126,0,15,192,63,0,15,192,63,0,15,192,31,128, + 15,192,31,128,15,192,31,128,15,192,31,128,15,192,31,128, + 15,192,31,0,15,192,63,0,15,192,62,0,15,192,126,0, + 15,208,252,0,15,223,240,0,15,207,192,0,15,192,0,0, + 15,192,0,0,15,192,0,0,15,192,0,0,15,192,0,0, + 15,192,0,0,15,192,0,0,15,192,0,0,15,192,0,0, + 31,224,0,0,127,252,0,0,127,252,0,0,32,38,152,30, + 1,248,0,31,192,0,0,255,240,0,3,225,252,0,7,128, + 126,0,15,0,63,0,31,0,31,0,30,0,31,128,62,0, + 15,128,126,0,15,192,124,0,15,192,124,0,7,192,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,254,0, + 7,192,126,0,15,192,126,0,15,128,127,0,15,128,63,0, + 31,0,31,128,31,0,31,192,62,0,15,240,252,0,7,255, + 248,0,1,255,224,0,0,127,240,0,0,1,252,0,0,0, + 254,2,0,0,63,135,0,0,31,255,0,0,15,254,0,0, + 3,252,0,0,1,252,0,0,0,120,29,30,120,29,0,0, + 7,255,128,0,255,255,240,0,127,193,252,0,143,192,126,0, + 15,192,126,0,15,192,63,0,15,192,63,0,15,192,63,0, + 15,192,63,0,15,192,63,0,15,192,126,0,15,192,126,0, + 15,192,252,0,15,255,248,0,15,255,240,0,15,255,192,0, + 15,199,192,0,15,195,224,0,15,193,240,0,15,193,240,0, + 15,192,248,0,15,192,252,0,15,192,126,0,15,192,126,0, + 15,192,63,0,15,192,63,128,15,192,31,192,31,224,31,248, + 127,248,15,248,127,248,15,128,20,30,90,25,3,0,1,255, + 0,15,255,192,30,15,224,60,7,192,120,3,192,248,1,128, + 248,0,0,252,0,0,254,0,0,255,0,0,127,192,0,127, + 240,0,63,252,0,31,255,0,7,255,128,1,255,192,0,127, + 224,0,31,224,0,7,240,0,3,240,0,1,240,192,1,240, + 224,1,240,224,1,224,240,3,224,248,3,192,254,15,128,255, + 255,0,127,254,0,15,240,0,27,30,120,28,0,0,127,255, + 255,224,127,255,255,224,112,31,128,224,112,31,128,224,96,31, + 128,224,96,31,128,224,224,31,128,96,64,31,128,96,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,63,192,0,1,255, + 248,0,1,255,248,0,29,30,120,32,1,0,255,240,31,248, + 255,240,31,248,63,192,7,224,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,128,31,192,7,128,15,192,7,128,15,224,7,0, + 7,224,15,0,3,248,62,0,1,255,252,0,0,255,240,0, + 0,31,192,0,31,30,120,32,0,0,255,240,7,254,255,240, + 7,254,31,128,0,240,15,192,0,224,15,192,0,224,15,192, + 1,224,7,224,1,192,7,224,3,192,3,240,3,192,3,240, + 3,128,3,240,7,128,1,248,7,128,1,248,7,0,0,248, + 15,0,0,252,14,0,0,252,14,0,0,126,30,0,0,126, + 28,0,0,62,28,0,0,63,60,0,0,63,56,0,0,31, + 248,0,0,31,240,0,0,15,240,0,0,15,240,0,0,15, + 224,0,0,7,224,0,0,7,224,0,0,3,192,0,0,3, + 0,0,41,30,180,41,0,0,255,240,12,3,255,128,255,240, + 30,3,255,128,31,128,30,0,124,0,15,128,30,0,56,0, + 15,128,63,0,120,0,15,128,63,0,120,0,15,192,63,128, + 112,0,7,192,127,128,112,0,7,192,127,128,112,0,7,192, + 127,192,240,0,7,224,247,192,224,0,3,224,231,224,224,0, + 3,224,227,224,224,0,3,225,227,225,224,0,3,241,195,241, + 224,0,3,241,193,241,192,0,1,243,193,241,192,0,1,243, + 128,249,192,0,1,251,128,251,192,0,1,255,128,255,192,0, + 0,255,0,127,128,0,0,255,0,127,128,0,0,254,0,127, + 128,0,0,254,0,63,128,0,0,126,0,63,0,0,0,124, + 0,31,0,0,0,124,0,31,0,0,0,124,0,31,0,0, + 0,120,0,14,0,0,0,48,0,12,0,0,29,30,120,30, + 1,0,255,240,127,240,255,240,127,240,63,192,31,128,31,192, + 15,0,15,192,30,0,7,224,60,0,7,240,60,0,3,240, + 120,0,1,248,240,0,1,252,240,0,0,255,224,0,0,127, + 192,0,0,127,192,0,0,63,128,0,0,31,128,0,0,31, + 192,0,0,63,224,0,0,127,224,0,0,127,240,0,0,243, + 248,0,1,241,248,0,1,225,252,0,3,192,254,0,7,192, + 126,0,7,128,63,0,15,0,63,128,31,0,31,192,63,0, + 63,224,255,192,255,248,255,192,255,248,29,30,120,29,0,0, + 127,0,31,248,255,128,31,248,31,192,3,192,15,192,3,128, + 7,224,7,128,3,240,7,0,3,240,15,0,1,248,14,0, + 1,248,30,0,0,252,28,0,0,124,60,0,0,126,56,0, + 0,63,120,0,0,63,240,0,0,31,240,0,0,31,224,0, + 0,15,224,0,0,15,192,0,0,15,192,0,0,15,192,0, + 0,15,192,0,0,15,192,0,0,15,192,0,0,15,192,0, + 0,15,192,0,0,15,192,0,0,15,192,0,0,31,224,0, + 0,255,252,0,0,255,252,0,23,30,90,26,1,0,63,255, + 254,63,255,254,60,0,254,56,1,252,56,1,248,48,3,248, + 48,7,240,64,7,240,0,15,224,0,15,192,0,31,192,0, + 63,128,0,63,128,0,127,0,0,126,0,0,254,0,1,252, + 0,1,252,0,3,248,0,3,248,0,7,240,0,15,224,0, + 15,224,4,31,192,6,31,192,6,63,128,14,127,0,14,127, + 0,30,255,255,254,127,255,254,12,45,90,16,3,248,255,240, + 255,240,255,240,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,255,240,255,240,255,240,21,46,138,23,1,248,224,0, + 0,248,0,0,120,0,0,120,0,0,124,0,0,60,0,0, + 60,0,0,62,0,0,30,0,0,31,0,0,15,0,0,15, + 0,0,15,128,0,7,128,0,7,128,0,7,192,0,3,192, + 0,3,192,0,3,224,0,1,224,0,1,240,0,0,240,0, + 0,240,0,0,248,0,0,120,0,0,120,0,0,124,0,0, + 60,0,0,60,0,0,62,0,0,30,0,0,31,0,0,15, + 0,0,15,0,0,15,128,0,7,128,0,7,128,0,7,192, + 0,3,192,0,3,192,0,1,224,0,1,224,0,1,240,0, + 0,240,0,0,240,0,0,56,12,45,90,16,1,248,255,240, + 255,240,255,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,255,240,255,240,255,240,19,23,69,24,2,13,0,32, + 0,0,112,0,0,240,0,1,240,0,1,248,0,1,248,0, + 3,188,0,3,188,0,7,60,0,7,30,0,6,30,0,14, + 14,0,14,15,0,12,15,0,28,7,128,28,7,128,24,3, + 128,56,3,192,48,3,192,112,1,224,112,1,224,96,0,224, + 192,0,192,21,3,9,23,1,250,127,255,248,127,255,248,255, + 255,240,11,11,22,15,0,24,60,0,252,0,254,0,126,0, + 63,0,31,0,15,128,7,128,3,192,1,192,0,224,23,22, + 66,24,1,0,0,255,0,15,255,128,31,15,192,62,7,224, + 126,7,224,252,7,224,96,7,224,0,7,224,0,31,224,1, + 255,224,7,255,224,31,231,224,63,135,224,63,7,224,126,7, + 224,126,7,224,126,7,224,126,31,228,127,63,252,63,247,254, + 63,231,240,15,131,128,24,36,108,26,0,0,3,0,0,63, + 128,0,255,128,0,127,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,131,224,31,143,248,31,191,252,31, + 255,252,31,240,254,31,192,126,31,128,63,31,128,63,31,128, + 31,31,128,31,31,128,31,31,128,31,31,128,31,31,128,30, + 31,128,30,31,128,60,31,128,56,31,240,248,31,255,240,15, + 255,192,3,255,128,0,126,0,20,22,66,22,1,0,0,127, + 128,1,255,240,7,135,224,15,3,224,30,1,224,62,0,192, + 124,0,192,124,0,0,252,0,0,252,0,0,252,0,0,252, + 0,0,252,0,0,252,0,0,254,0,0,126,0,32,127,0, + 112,63,193,224,63,255,192,31,255,128,7,255,0,1,252,0, + 25,36,144,27,2,0,0,0,56,0,0,15,248,0,0,15, + 248,0,0,3,248,0,0,1,248,0,0,1,248,0,0,1, + 248,0,0,1,248,0,0,1,248,0,0,1,248,0,0,1, + 248,0,0,1,248,0,0,1,248,0,0,1,248,0,0,249, + 248,0,7,255,248,0,15,255,248,0,31,135,248,0,63,3, + 248,0,62,1,248,0,126,1,248,0,124,1,248,0,252,1, + 248,0,252,1,248,0,252,1,248,0,252,1,248,0,252,1, + 248,0,252,1,248,0,254,1,248,0,126,1,248,0,127,3, + 248,0,127,135,253,0,63,255,255,128,31,253,254,0,15,248, + 252,0,3,224,224,0,19,22,66,23,2,0,0,252,0,7, + 255,0,15,31,128,30,15,128,62,15,192,124,7,192,124,7, + 224,124,7,224,252,7,224,255,255,224,255,255,128,252,0,0, + 252,0,0,252,0,0,254,0,0,126,0,64,127,0,224,63, + 131,192,63,255,128,31,255,0,15,254,0,3,248,0,20,37, + 111,16,1,0,0,15,128,0,63,224,0,255,240,1,255,224, + 3,227,224,7,193,192,7,193,0,15,128,0,15,128,0,15, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,127,255,0,255,254,0,31,132,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,63,224,0,255,252,0, + 255,252,0,25,33,132,25,0,245,0,126,1,128,3,255,223, + 128,7,135,255,0,15,3,254,0,30,1,240,0,30,0,248, + 0,62,0,248,0,62,0,248,0,62,0,248,0,62,0,248, + 0,63,0,240,0,31,129,224,0,15,195,192,0,7,255,128, + 0,1,254,0,0,3,224,0,0,7,192,0,0,15,192,0, + 0,31,254,0,0,31,255,240,0,15,255,252,0,7,255,254, + 0,15,159,255,0,62,0,127,0,124,0,63,0,252,0,31, + 0,252,0,30,0,254,0,30,0,255,0,60,0,127,192,248, + 0,63,255,240,0,15,255,192,0,1,254,0,0,26,36,144, + 28,1,0,1,128,0,0,63,128,0,0,255,128,0,0,255, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,129,240,0,31, + 143,252,0,31,159,252,0,31,255,254,0,31,248,254,0,31, + 224,126,0,31,192,126,0,31,128,126,0,31,128,126,0,31, + 128,126,0,31,128,126,0,31,128,126,0,31,128,126,0,31, + 128,126,0,31,128,126,0,31,128,126,0,31,128,126,0,31, + 128,126,0,31,128,126,0,63,192,255,0,255,243,255,192,255, + 243,255,192,12,32,64,14,1,0,7,128,15,192,31,192,31, + 192,31,128,15,0,0,0,0,0,0,0,0,0,3,128,127, + 128,255,128,127,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,63,192,255,240,255,240,17,43,129,14,250,245,0, + 15,0,0,31,128,0,63,128,0,63,128,0,63,0,0,30, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,128, + 0,127,128,0,255,128,0,127,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,0,0,31,0,0,62,0,16,62, + 0,60,124,0,127,248,0,255,224,0,255,192,0,63,0,0, + 26,36,144,26,1,0,1,128,0,0,63,128,0,0,255,128, + 0,0,255,128,0,0,31,128,0,0,31,128,0,0,31,128, + 0,0,31,128,0,0,31,128,0,0,31,128,0,0,31,128, + 0,0,31,128,0,0,31,128,0,0,31,128,0,0,31,129, + 255,128,31,129,255,128,31,128,252,0,31,128,248,0,31,131, + 224,0,31,135,192,0,31,143,128,0,31,158,0,0,31,188, + 0,0,31,252,0,0,31,190,0,0,31,191,0,0,31,159, + 128,0,31,143,192,0,31,135,224,0,31,135,240,0,31,131, + 248,0,31,129,252,0,31,128,252,0,63,128,255,192,255,240, + 127,192,255,240,62,0,12,36,72,14,1,0,1,128,63,128, + 255,128,255,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,192, + 255,240,255,240,39,22,110,41,1,0,3,3,224,31,128,127, + 143,248,127,192,255,159,249,255,224,127,255,255,255,240,31,241, + 255,135,240,31,224,255,3,240,31,128,252,3,240,31,128,252, + 3,240,31,128,252,3,240,31,128,252,3,240,31,128,252,3, + 240,31,128,252,3,240,31,128,252,3,240,31,128,252,3,240, + 31,128,252,3,240,31,128,252,3,240,31,128,252,3,240,31, + 128,252,3,240,31,128,252,3,240,63,128,252,3,248,255,247, + 255,159,254,255,247,255,159,254,26,22,88,28,1,0,3,1, + 240,0,127,135,252,0,255,159,252,0,63,191,254,0,31,248, + 254,0,31,224,126,0,31,192,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,63,192,255,0,255,243, + 255,192,255,243,255,192,21,22,66,25,2,0,0,252,0,3, + 255,0,15,15,192,30,7,224,62,7,224,62,3,240,124,3, + 240,124,1,248,252,1,248,252,1,248,252,1,248,252,1,248, + 252,1,248,252,1,248,252,1,240,126,1,240,126,3,224,62, + 3,224,63,3,192,31,135,128,7,254,0,1,248,0,24,33, + 99,27,1,245,3,3,224,127,143,248,255,159,252,63,255,252, + 31,240,254,31,192,126,31,128,63,31,128,63,31,128,31,31, + 128,31,31,128,31,31,128,31,31,128,31,31,128,30,31,128, + 30,31,128,62,31,192,60,31,240,124,31,255,248,31,255,240, + 31,159,224,31,135,128,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,63,192, + 0,255,248,0,255,248,0,24,33,99,26,2,245,0,124,8, + 1,255,28,7,255,248,15,135,248,30,3,248,62,1,248,124, + 1,248,124,1,248,252,1,248,252,1,248,252,1,248,252,1, + 248,252,1,248,252,1,248,254,1,248,126,1,248,127,3,248, + 127,143,248,63,255,248,31,253,248,15,249,248,3,225,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1, + 248,0,1,248,0,1,248,0,3,248,0,31,255,0,31,255, + 20,22,66,21,1,0,3,7,192,127,143,240,255,191,240,63, + 255,224,31,241,224,31,224,224,31,192,224,31,128,192,31,128, + 192,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 192,0,255,248,0,255,248,0,16,22,44,20,2,0,7,248, + 31,254,60,62,120,30,248,14,248,12,252,0,255,0,127,192, + 127,240,63,248,15,254,3,254,0,255,128,127,192,63,224,31, + 224,31,240,30,248,60,255,248,63,224,18,30,90,18,255,0, + 0,192,0,1,192,0,7,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,63,255,192,255,255,128,15,193, + 0,15,192,0,15,192,0,15,192,0,15,192,0,15,192,0, + 15,192,0,15,192,0,15,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,15,192,128,15,227,192,15,255, + 128,7,255,0,3,252,0,1,240,0,26,22,88,27,1,0, + 3,128,28,0,255,135,252,0,255,135,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,129,252,0,31,199,252,128,31,255,255,128,15,254,255,192, + 7,248,126,0,3,224,112,0,24,22,66,24,0,0,255,224, + 255,255,224,255,63,128,60,31,128,60,31,128,56,15,192,120, + 15,192,112,7,192,112,7,224,240,7,224,224,3,241,224,3, + 241,192,1,249,192,1,251,128,0,255,128,0,255,128,0,127, + 0,0,127,0,0,126,0,0,62,0,0,60,0,0,24,0, + 34,22,110,34,0,0,255,224,96,63,192,255,224,112,63,192, + 63,0,240,7,0,31,0,248,15,0,31,128,248,14,0,15, + 129,252,14,0,15,129,252,30,0,15,195,252,28,0,7,195, + 254,28,0,7,195,190,28,0,7,231,63,60,0,3,231,31, + 56,0,3,239,31,184,0,3,254,31,248,0,1,254,15,240, + 0,1,252,15,240,0,1,252,7,240,0,0,252,7,224,0, + 0,248,3,224,0,0,248,3,224,0,0,112,1,192,0,0, + 96,1,128,0,25,22,88,25,0,0,127,241,255,0,127,241, + 255,0,31,192,124,0,15,224,112,0,7,224,224,0,7,241, + 224,0,3,251,192,0,1,255,128,0,0,255,0,0,0,254, + 0,0,0,127,0,0,0,127,0,0,0,127,128,0,0,255, + 192,0,1,207,224,0,3,199,224,0,7,131,240,0,7,3, + 248,0,14,1,252,0,30,1,254,0,255,135,255,128,255,135, + 255,128,25,33,132,24,255,245,127,240,127,128,127,240,127,128, + 31,192,30,0,15,192,28,0,15,192,28,0,7,224,60,0, + 7,224,56,0,3,240,56,0,3,240,112,0,1,240,112,0, + 1,248,240,0,1,248,224,0,0,252,224,0,0,253,224,0, + 0,125,192,0,0,127,192,0,0,127,128,0,0,63,128,0, + 0,63,128,0,0,31,0,0,0,31,0,0,0,14,0,0, + 0,14,0,0,0,30,0,0,0,28,0,0,0,60,0,0, + 0,120,0,0,32,248,0,0,63,240,0,0,127,224,0,0, + 255,192,0,0,255,128,0,0,126,0,0,0,20,22,66,22, + 1,0,63,255,240,63,255,240,56,15,224,56,15,192,48,31, + 192,48,31,128,32,63,0,0,127,0,0,126,0,0,252,0, + 1,252,0,1,248,0,3,240,0,7,240,0,7,224,0,15, + 224,48,31,192,48,31,128,112,63,128,112,127,0,240,127,255, + 240,255,255,224,14,45,90,17,2,249,0,8,0,60,0,248, + 1,240,3,224,7,224,7,192,15,192,15,192,15,192,15,192, + 15,192,15,224,7,224,7,224,7,224,7,224,7,224,7,192, + 15,192,15,128,63,0,254,0,255,128,31,192,7,192,7,224, + 7,224,7,224,7,224,7,224,7,224,15,224,15,192,15,192, + 15,192,15,192,15,192,15,192,7,192,7,224,3,240,0,248, + 0,124,0,8,4,49,49,11,4,246,48,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,192,14,44,88,17,1, + 249,64,0,248,0,124,0,63,0,31,128,15,128,15,192,15, + 192,15,192,15,192,15,192,15,192,31,192,31,128,31,128,31, + 128,31,128,31,128,31,128,15,192,15,252,7,252,1,248,7, + 224,15,192,15,128,31,128,31,128,31,128,31,128,31,128,31, + 192,15,192,15,192,15,192,15,192,15,192,15,128,31,128,31, + 0,62,0,124,0,240,0,64,0,21,8,24,23,1,11,7, + 128,8,15,224,24,31,240,16,63,252,48,49,255,224,96,127, + 192,64,31,128,192,15,0,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,12,0,0,8,35, + 35,15,3,243,62,127,255,255,255,254,124,0,0,12,28,28, + 28,60,60,60,60,60,62,62,62,62,62,62,62,62,126,126, + 126,126,126,127,126,120,96,21,30,90,24,2,255,0,24,0, + 0,56,0,0,56,0,0,56,0,0,127,192,3,255,240,7, + 255,248,31,187,240,62,56,240,60,56,96,124,56,32,120,56, + 0,248,56,0,248,56,0,248,56,0,248,56,0,248,56,0, + 248,56,0,252,56,0,124,56,16,126,56,56,63,56,240,31, + 251,224,15,255,192,7,255,128,1,252,0,0,56,0,0,56, + 0,0,56,0,0,48,0,22,29,87,24,1,0,0,31,192, + 0,255,248,1,225,248,3,192,248,7,192,120,7,128,112,15, + 128,48,15,128,48,15,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,255,255,0,255,255,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,16,31,0,12,31, + 0,24,30,0,56,62,0,120,63,255,248,127,255,248,255,255, + 248,128,15,240,20,20,60,24,2,4,64,0,32,224,0,96, + 113,248,240,63,255,192,31,15,128,30,7,128,28,3,128,56, + 1,192,56,1,192,56,1,192,56,1,192,56,1,192,60,3, + 192,30,7,128,31,15,128,31,255,128,57,249,192,112,0,224, + 224,0,112,64,0,32,27,28,112,24,254,0,127,0,127,224, + 255,128,127,224,127,192,15,0,15,224,30,0,15,224,30,0, + 7,240,60,0,3,240,60,0,3,248,56,0,1,252,120,0, + 0,252,112,0,0,254,240,0,0,126,224,0,0,127,224,0, + 0,63,192,0,0,63,192,0,0,31,192,0,0,31,128,0, + 15,255,255,0,15,255,254,0,0,31,128,0,0,31,128,0, + 0,31,128,0,0,31,128,0,0,31,128,0,0,31,128,0, + 0,63,192,0,1,255,248,0,1,255,248,0,4,49,49,11, + 4,246,48,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,224,0,0,0,0,0,112,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,192,18,34,102,23,3,0,3,252,0,15,255,0,30, + 31,0,60,15,0,124,7,0,124,6,0,126,2,0,127,128, + 0,63,224,0,63,240,0,63,252,0,127,254,0,123,255,0, + 240,255,128,240,63,128,240,31,192,240,7,192,248,7,192,124, + 3,192,127,3,192,63,195,192,31,243,128,15,255,128,7,255, + 0,1,255,0,0,127,128,96,63,128,96,31,128,112,15,128, + 112,15,128,120,15,0,126,30,0,127,252,0,15,240,0,17, + 7,21,19,1,26,56,7,0,124,15,128,252,31,128,252,31, + 128,252,31,128,248,31,0,112,14,0,31,31,124,35,2,0, + 0,31,224,0,0,127,252,0,1,240,31,0,7,192,7,128, + 15,0,1,224,30,0,0,224,28,3,240,112,56,31,254,56, + 56,60,124,56,112,120,60,28,112,240,28,28,240,240,24,28, + 224,224,0,14,225,224,0,14,225,224,0,14,225,224,0,14, + 225,224,0,14,225,224,0,14,225,240,0,14,240,240,0,30, + 112,248,6,28,112,126,30,28,56,127,252,56,56,31,240,56, + 28,7,192,112,14,0,0,224,15,0,1,224,7,192,7,128, + 1,240,31,0,0,127,252,0,0,31,240,0,12,16,32,13, + 1,14,15,0,63,128,99,192,227,192,131,192,7,192,63,192, + 123,192,243,192,243,192,247,224,255,240,115,128,0,0,255,224, + 255,224,20,22,66,25,2,0,0,192,32,1,192,112,1,192, + 224,3,129,224,7,131,192,15,7,192,31,15,128,62,15,128, + 126,31,0,252,63,0,252,126,0,252,126,0,252,63,0,126, + 31,0,62,15,128,31,15,128,15,7,192,7,131,192,3,129, + 224,1,192,224,0,192,112,0,192,32,21,11,33,24,2,4, + 127,255,248,255,255,248,255,255,248,0,0,120,0,0,120,0, + 0,120,0,0,120,0,0,120,0,0,120,0,0,120,0,0, + 96,15,3,6,17,1,11,127,254,127,252,255,252,17,17,51, + 17,0,17,3,224,0,15,248,0,60,30,0,48,6,0,103, + 227,0,99,51,0,195,49,128,195,49,128,195,225,128,195,65, + 128,195,97,128,99,35,0,99,51,0,55,158,0,60,30,0, + 15,248,0,3,224,0,20,4,12,24,2,27,127,255,240,255, + 255,240,255,255,224,255,255,224,11,13,26,17,3,17,15,0, + 31,192,63,192,123,224,113,224,241,224,241,224,241,224,241,192, + 251,192,127,128,127,0,30,0,18,22,66,20,1,3,0,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,127,255,192,255,255,192,255,255,128,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,192, + 0,0,0,0,0,0,0,127,255,192,127,255,192,255,255,128, + 13,17,34,17,2,15,7,224,31,240,120,248,120,120,248,120, + 0,120,0,240,0,224,1,224,3,192,7,128,15,0,30,8, + 60,8,120,24,255,248,255,248,13,18,36,17,1,14,7,224, + 31,240,60,248,120,120,124,120,0,120,0,240,1,224,7,240, + 5,240,0,120,0,120,0,120,0,120,128,120,224,240,127,224, + 31,128,11,11,22,15,5,24,15,0,15,192,31,224,31,128, + 63,0,62,0,124,0,120,0,240,0,224,0,64,0,27,33, + 132,28,1,245,3,0,6,0,255,128,254,0,255,128,126,0, + 63,128,126,0,31,128,126,0,31,128,126,0,31,128,126,0, + 31,128,126,0,31,128,126,0,31,128,126,0,31,128,126,0, + 31,128,126,0,31,128,126,0,31,128,126,0,31,128,126,0, + 31,192,254,0,31,227,254,0,31,255,254,64,31,255,127,224, + 30,254,127,192,30,124,63,128,30,56,28,0,30,0,0,0, + 30,0,0,0,31,0,0,0,31,0,0,0,31,0,0,0, + 31,0,0,0,31,128,0,0,31,128,0,0,31,192,0,0, + 31,0,0,0,24,0,0,0,26,36,144,29,1,250,1,255, + 255,192,7,255,255,192,31,195,255,0,63,3,222,0,126,3, + 222,0,124,3,222,0,252,3,222,0,252,3,222,0,252,3, + 222,0,252,3,222,0,252,3,222,0,126,3,222,0,127,3, + 222,0,63,3,222,0,31,195,222,0,7,255,222,0,1,255, + 222,0,0,3,222,0,0,3,222,0,0,3,222,0,0,3, + 222,0,0,3,222,0,0,3,222,0,0,3,222,0,0,3, + 222,0,0,3,222,0,0,3,222,0,0,3,222,0,0,3, + 222,0,0,3,222,0,0,3,222,0,0,3,222,0,0,3, + 222,0,0,7,255,0,0,31,255,192,0,31,255,192,7,7, + 7,10,1,13,60,126,254,254,254,252,120,10,10,20,11,1, + 246,14,0,28,0,30,0,63,128,63,192,15,192,15,192,31, + 128,254,0,112,0,13,17,34,17,2,15,1,128,15,128,255, + 128,71,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,63,240,127,248,11,16,32, + 13,1,14,15,0,63,128,123,192,113,192,241,224,241,224,241, + 224,241,224,241,224,241,192,123,192,63,128,30,0,0,0,255, + 224,255,224,20,22,66,25,3,0,64,32,0,224,112,0,112, + 56,0,120,28,0,56,30,0,60,15,0,30,15,128,31,7, + 192,31,135,224,15,199,240,15,227,240,15,227,240,15,199,240, + 31,135,224,31,7,192,30,15,128,60,15,0,56,30,0,120, + 28,0,112,56,0,224,48,0,64,96,0,27,29,116,30,2, + 0,3,0,1,192,63,0,3,128,255,0,7,128,15,0,15, + 0,15,0,14,0,15,0,28,0,15,0,60,0,15,0,120, + 0,15,0,112,0,15,0,240,0,15,1,224,0,15,1,192, + 0,31,131,128,0,255,231,128,0,0,15,0,0,0,14,1, + 0,0,28,15,128,0,60,15,128,0,120,31,128,0,112,55, + 128,0,224,55,128,1,224,103,128,3,192,199,128,3,129,199, + 128,7,129,255,224,15,3,255,192,30,0,7,128,28,0,7, + 128,60,0,63,224,26,29,116,30,2,0,3,0,1,192,63, + 0,7,128,255,0,7,128,15,0,15,0,15,0,30,0,15, + 0,60,0,15,0,60,0,15,0,120,0,15,0,240,0,15, + 0,224,0,15,1,224,0,15,3,192,0,31,135,128,0,255, + 231,0,0,0,15,0,0,0,30,63,0,0,60,127,192,0, + 56,231,192,0,121,195,192,0,241,131,192,1,224,3,128,1, + 192,7,0,3,192,14,0,7,128,28,0,15,0,56,0,14, + 0,112,64,30,0,224,64,60,1,255,192,120,3,255,192,28, + 29,116,30,1,0,15,128,0,224,63,192,1,192,115,224,3, + 192,241,224,7,128,129,192,7,0,3,128,14,0,15,192,30, + 0,15,224,60,0,1,240,56,0,0,240,120,0,0,240,240, + 0,0,240,224,0,225,225,192,0,127,195,192,0,31,7,128, + 0,0,7,0,128,0,14,7,192,0,30,7,192,0,60,11, + 192,0,56,27,192,0,112,19,192,0,240,51,192,1,224,99, + 192,1,192,227,192,3,192,255,240,7,129,255,224,15,0,3, + 192,14,0,3,192,30,0,31,240,18,35,105,22,2,243,0, + 248,0,1,252,0,3,252,0,3,252,0,3,252,0,3,248, + 0,1,240,0,0,0,0,0,0,0,0,0,0,0,112,0, + 0,240,0,0,240,0,0,240,0,0,240,0,1,240,0,1, + 224,0,3,224,0,7,192,0,15,192,0,15,128,0,31,0, + 0,63,0,0,126,0,0,126,0,0,252,0,0,252,3,192, + 252,15,192,252,15,192,252,15,192,252,15,128,126,31,128,127, + 31,0,63,254,0,15,240,0,30,42,168,30,0,0,0,32, + 0,0,0,112,0,0,0,248,0,0,1,252,0,0,1,254, + 0,0,0,255,0,0,0,63,128,0,0,15,192,0,0,3, + 224,0,0,0,224,0,0,0,64,0,0,0,0,0,0,1, + 128,0,0,7,128,0,0,15,192,0,0,31,192,0,0,31, + 224,0,0,31,224,0,0,63,224,0,0,63,240,0,0,59, + 240,0,0,121,240,0,0,121,248,0,0,113,248,0,0,240, + 252,0,0,240,252,0,0,224,252,0,1,224,126,0,1,224, + 126,0,1,192,126,0,3,255,255,0,3,255,255,0,3,128, + 31,0,7,128,31,128,7,0,31,128,7,0,15,192,15,0, + 15,192,14,0,15,192,14,0,7,224,30,0,7,224,255,192, + 63,252,255,192,63,252,30,42,168,30,0,0,0,0,32,0, + 0,0,48,0,0,0,124,0,0,0,254,0,0,1,254,0, + 0,3,248,0,0,7,224,0,0,15,128,0,0,31,0,0, + 0,60,0,0,0,16,0,0,0,0,0,0,0,1,128,0, + 0,7,128,0,0,15,192,0,0,31,192,0,0,31,224,0, + 0,31,224,0,0,63,224,0,0,63,240,0,0,59,240,0, + 0,121,240,0,0,121,248,0,0,113,248,0,0,240,252,0, + 0,240,252,0,0,224,252,0,1,224,126,0,1,224,126,0, + 1,192,126,0,3,255,255,0,3,255,255,0,3,128,31,0, + 7,128,31,128,7,0,31,128,7,0,15,192,15,0,15,192, + 14,0,15,192,14,0,7,224,30,0,7,224,255,192,63,252, + 255,192,63,252,30,41,164,30,0,0,0,7,0,0,0,7, + 128,0,0,15,192,0,0,31,224,0,0,63,240,0,0,127, + 248,0,0,248,248,0,1,240,60,0,1,192,14,0,1,0, + 8,0,0,0,0,0,0,1,128,0,0,7,128,0,0,15, + 192,0,0,31,192,0,0,31,224,0,0,31,224,0,0,63, + 224,0,0,63,240,0,0,59,240,0,0,121,240,0,0,121, + 248,0,0,113,248,0,0,240,252,0,0,240,252,0,0,224, + 252,0,1,224,126,0,1,224,126,0,1,192,126,0,3,255, + 255,0,3,255,255,0,3,128,31,0,7,128,31,128,7,0, + 31,128,7,0,15,192,15,0,15,192,14,0,15,192,14,0, + 7,224,30,0,7,224,255,192,63,252,255,192,63,252,30,40, + 160,30,0,0,0,16,4,0,0,127,7,0,0,255,254,0, + 1,255,254,0,1,255,252,0,3,255,248,0,3,3,240,0, + 2,0,64,0,0,0,0,0,0,0,0,0,0,1,128,0, + 0,7,128,0,0,15,192,0,0,31,192,0,0,31,224,0, + 0,31,224,0,0,63,224,0,0,63,240,0,0,59,240,0, + 0,121,240,0,0,121,248,0,0,113,248,0,0,240,252,0, + 0,240,252,0,0,224,252,0,1,224,126,0,1,224,126,0, + 1,192,126,0,3,255,255,0,3,255,255,0,3,128,31,0, + 7,128,31,128,7,0,31,128,7,0,15,192,15,0,15,192, + 14,0,15,192,14,0,7,224,30,0,7,224,255,192,63,252, + 255,192,63,252,30,40,160,30,0,0,0,64,16,0,0,240, + 60,0,1,248,126,0,1,248,126,0,1,248,126,0,1,240, + 124,0,1,240,124,0,0,64,32,0,0,0,0,0,0,0, + 0,0,0,1,128,0,0,7,128,0,0,15,192,0,0,31, + 192,0,0,31,224,0,0,31,224,0,0,63,224,0,0,63, + 240,0,0,59,240,0,0,121,240,0,0,121,248,0,0,113, + 248,0,0,240,252,0,0,240,252,0,0,224,252,0,1,224, + 126,0,1,224,126,0,1,192,126,0,3,255,255,0,3,255, + 255,0,3,128,31,0,7,128,31,128,7,0,31,128,7,0, + 15,192,15,0,15,192,14,0,15,192,14,0,7,224,30,0, + 7,224,255,192,63,252,255,192,63,252,30,42,168,30,0,0, + 0,1,0,0,0,15,224,0,0,31,224,0,0,28,240,0, + 0,60,240,0,0,60,240,0,0,60,224,0,0,63,224,0, + 0,31,128,0,0,4,0,0,0,0,0,0,0,0,0,0, + 0,1,128,0,0,7,128,0,0,15,192,0,0,31,192,0, + 0,31,224,0,0,31,224,0,0,63,224,0,0,63,240,0, + 0,59,240,0,0,121,240,0,0,121,248,0,0,113,248,0, + 0,240,252,0,0,240,252,0,0,224,252,0,1,224,126,0, + 1,224,126,0,1,192,126,0,3,255,255,0,3,255,255,0, + 3,128,31,0,7,128,31,128,7,0,31,128,7,0,15,192, + 15,0,15,192,14,0,15,192,14,0,7,224,30,0,7,224, + 255,192,63,252,255,192,63,252,38,30,150,39,0,0,0,127, + 255,255,240,0,127,255,255,248,0,15,255,0,112,0,7,255, + 0,112,0,15,63,0,112,0,15,63,0,48,0,15,63,0, + 48,0,30,63,0,48,0,30,63,0,0,0,60,63,0,0, + 0,60,63,0,0,0,60,63,0,0,0,120,63,0,0,0, + 127,255,255,192,0,255,255,255,128,0,240,63,1,128,0,224, + 63,0,0,1,224,63,0,0,1,224,63,0,0,3,192,63, + 0,0,3,192,63,0,0,3,128,63,0,0,7,128,63,0, + 0,7,128,63,0,12,15,0,63,0,12,15,0,63,0,28, + 14,0,63,0,28,31,0,127,128,124,255,193,255,255,248,255, + 193,255,255,248,24,40,120,27,1,246,0,31,224,0,255,252, + 1,255,254,7,224,254,15,192,126,31,128,60,31,0,28,62, + 0,0,62,0,0,126,0,0,124,0,0,124,0,0,252,0, + 0,252,0,0,252,0,0,252,0,0,252,0,0,252,0,0, + 252,0,0,252,0,0,254,0,0,126,0,0,127,0,0,63, + 128,2,63,128,7,31,224,15,15,252,254,7,255,248,3,255, + 240,0,255,192,0,30,0,0,28,0,0,31,0,0,63,192, + 0,63,192,0,15,192,0,15,128,0,31,128,0,254,0,0, + 112,0,23,42,126,25,1,0,1,0,0,3,128,0,15,192, + 0,15,224,0,31,240,0,7,248,0,1,252,0,0,126,0, + 0,31,0,0,7,0,0,2,0,0,0,0,255,255,248,255, + 255,252,63,128,56,31,128,56,31,128,24,31,128,24,31,128, + 24,31,128,24,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,255,224,31,255,224,31,128,192,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,6,31,128,6,31,128,14,31,128,14,63,192,30, + 255,255,254,255,255,252,23,42,126,25,1,0,0,2,0,0, + 3,128,0,7,224,0,15,240,0,31,240,0,63,192,0,127, + 0,0,252,0,1,240,0,1,192,0,1,0,0,0,0,0, + 255,255,248,255,255,252,63,128,56,31,128,56,31,128,24,31, + 128,24,31,128,24,31,128,24,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,255,224,31,255,224,31,128,192, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,6,31,128,6,31,128,14,31,128, + 14,63,192,30,255,255,254,255,255,252,23,41,123,25,1,0, + 0,56,0,0,124,0,0,254,0,0,255,0,1,255,0,3, + 255,128,7,199,192,15,1,224,14,0,224,8,0,64,0,0, + 0,255,255,248,255,255,252,63,128,56,31,128,56,31,128,24, + 31,128,24,31,128,24,31,128,24,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,255,224,31,255,224,31,128, + 192,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,6,31,128,6,31,128,14,31, + 128,14,63,192,30,255,255,254,255,255,252,23,40,120,25,1, + 0,2,0,128,7,129,224,15,195,240,15,195,240,15,195,240, + 15,131,224,15,3,192,4,1,0,0,0,0,0,0,0,255, + 255,248,255,255,252,63,128,56,31,128,56,31,128,24,31,128, + 24,31,128,24,31,128,24,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,255,224,31,255,224,31,128,192,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,6,31,128,6,31,128,14,31,128,14, + 63,192,30,255,255,254,255,255,252,15,42,84,16,255,0,8, + 0,28,0,62,0,127,0,127,128,191,192,15,224,3,240,0, + 248,0,56,0,16,0,0,31,254,31,254,7,248,3,240,3, + 240,3,240,3,240,3,240,3,240,3,240,3,240,3,240,3, + 240,3,240,3,240,3,240,3,240,3,240,3,240,3,240,3, + 240,3,240,3,240,3,240,3,240,3,240,3,240,7,248,31, + 254,31,254,14,42,84,16,2,0,0,128,0,224,1,248,3, + 252,7,252,15,240,31,192,63,0,124,0,112,0,32,0,0, + 0,255,240,255,240,63,192,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,63,192,255,240,255,240,16,41,82, + 16,0,0,3,128,7,192,15,224,15,240,31,240,63,248,124, + 124,240,30,224,15,128,4,0,0,63,252,63,252,15,240,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,15, + 240,63,252,63,252,16,40,80,16,0,0,32,8,120,30,252, + 63,252,63,252,63,248,62,240,60,64,16,0,0,0,0,63, + 252,63,252,15,240,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,7,224,7,224,7,224,7,224,7,224,7, + 224,7,224,7,224,15,240,63,252,63,252,29,30,120,31,0, + 0,3,255,192,0,255,255,248,0,127,192,254,0,143,192,63, + 128,15,192,31,192,15,192,15,192,15,192,7,224,15,192,7, + 240,15,192,3,240,15,192,3,240,15,192,3,248,15,192,1, + 248,15,192,1,248,127,255,1,248,255,255,1,248,15,192,1, + 248,15,192,1,248,15,192,1,248,15,192,1,248,15,192,1, + 240,15,192,3,240,15,192,3,240,15,192,7,224,15,192,7, + 224,15,192,15,192,15,192,31,128,15,192,63,0,31,224,254, + 0,127,255,248,0,127,255,192,0,30,40,160,32,1,0,0, + 16,4,0,0,127,7,0,0,255,255,0,0,255,254,0,1, + 255,252,0,3,255,252,0,3,3,248,0,2,0,64,0,0, + 0,0,0,0,0,0,0,255,0,15,252,255,128,15,252,63, + 192,3,240,31,192,1,224,31,224,1,224,31,240,1,224,31, + 240,1,224,31,248,1,224,31,252,1,224,30,254,1,224,30, + 126,1,224,30,63,1,224,30,63,129,224,30,31,129,224,30, + 15,193,224,30,7,225,224,30,7,225,224,30,3,241,224,30, + 1,249,224,30,1,253,224,30,0,253,224,30,0,127,224,30, + 0,63,224,30,0,63,224,30,0,31,224,30,0,15,224,30, + 0,7,224,63,0,7,224,255,192,3,224,255,192,0,224,27, + 42,168,30,1,0,0,64,0,0,0,224,0,0,1,240,0, + 0,3,248,0,0,3,252,0,0,1,254,0,0,0,127,0, + 0,0,31,128,0,0,7,192,0,0,1,192,0,0,0,128, + 0,0,0,0,0,0,31,192,0,0,255,240,0,3,225,252, + 0,7,128,126,0,15,0,63,0,31,0,31,0,30,0,31, + 128,62,0,15,128,126,0,15,192,124,0,15,192,124,0,7, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,254,0,7,192,126,0,15,192,126,0,15,128,127,0,15, + 128,63,0,31,0,31,128,31,0,31,192,62,0,15,240,252, + 0,7,255,240,0,1,255,224,0,0,127,0,0,27,42,168, + 30,1,0,0,0,64,0,0,0,96,0,0,0,248,0,0, + 1,252,0,0,3,252,0,0,7,240,0,0,15,192,0,0, + 31,128,0,0,62,0,0,0,120,0,0,0,32,0,0,0, + 0,0,0,0,31,192,0,0,255,240,0,3,225,252,0,7, + 128,126,0,15,0,63,0,31,0,31,0,30,0,31,128,62, + 0,15,128,126,0,15,192,124,0,15,192,124,0,7,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,254, + 0,7,192,126,0,15,192,126,0,15,128,127,0,15,128,63, + 0,31,0,31,128,31,0,31,192,62,0,15,240,252,0,7, + 255,240,0,1,255,224,0,0,127,0,0,27,41,164,30,1, + 0,0,6,0,0,0,15,0,0,0,31,128,0,0,63,192, + 0,0,127,224,0,0,255,240,0,1,249,248,0,3,224,120, + 0,3,128,28,0,2,0,8,0,0,0,0,0,0,31,192, + 0,0,255,240,0,3,225,252,0,7,128,126,0,15,0,63, + 0,31,0,31,0,30,0,31,128,62,0,15,128,126,0,15, + 192,124,0,15,192,124,0,7,224,252,0,7,224,252,0,7, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,7,224,252,0,7,224,254,0,7,192,126,0,15, + 192,126,0,15,128,127,0,15,128,63,0,31,0,31,128,31, + 0,31,192,62,0,15,240,252,0,7,255,240,0,1,255,224, + 0,0,127,0,0,27,40,160,30,1,0,0,32,8,0,0, + 254,14,0,1,255,254,0,1,255,252,0,3,255,248,0,7, + 255,248,0,6,7,240,0,2,0,128,0,0,0,0,0,0, + 0,0,0,0,31,192,0,0,255,240,0,3,225,252,0,7, + 128,126,0,15,0,63,0,31,0,31,0,30,0,31,128,62, + 0,15,128,126,0,15,192,124,0,15,192,124,0,7,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,252, + 0,7,224,252,0,7,224,252,0,7,224,252,0,7,224,254, + 0,7,192,126,0,15,192,126,0,15,128,127,0,15,128,63, + 0,31,0,31,128,31,0,31,192,62,0,15,240,252,0,7, + 255,240,0,1,255,224,0,0,127,0,0,27,40,160,30,1, + 0,0,128,32,0,1,240,124,0,1,240,124,0,3,240,252, + 0,3,240,252,0,3,240,252,0,3,224,248,0,0,128,32, + 0,0,0,0,0,0,0,0,0,0,31,192,0,0,255,240, + 0,3,225,252,0,7,128,126,0,15,0,63,0,31,0,31, + 0,30,0,31,128,62,0,15,128,126,0,15,192,124,0,15, + 192,124,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,7,224,252,0,7,224,252,0,7,224,252,0,7, + 224,252,0,7,224,254,0,7,192,126,0,15,192,126,0,15, + 128,127,0,15,128,63,0,31,0,31,128,31,0,31,192,62, + 0,15,240,252,0,7,255,240,0,1,255,224,0,0,127,0, + 0,16,15,30,20,2,6,96,6,240,15,120,31,60,62,30, + 124,15,248,7,240,3,192,7,224,15,248,30,124,60,62,120, + 31,240,15,96,6,27,31,124,30,1,255,0,31,195,224,0, + 255,247,192,3,225,255,128,7,128,127,0,15,0,63,0,31, + 0,63,128,30,0,127,128,62,0,255,192,126,0,255,192,124, + 1,255,192,124,3,239,224,252,3,231,224,252,7,199,224,252, + 15,135,224,252,15,7,224,252,31,7,224,252,62,7,224,252, + 60,7,224,252,120,7,192,254,248,7,192,127,240,15,192,127, + 224,15,128,127,192,15,128,63,128,31,0,63,128,31,0,31, + 192,62,0,31,240,252,0,63,255,240,0,121,255,224,0,248, + 127,0,0,192,0,0,0,29,42,168,32,1,0,0,32,0, + 0,0,48,0,0,0,248,0,0,1,252,0,0,1,254,0, + 0,0,127,0,0,0,31,128,0,0,15,192,0,0,3,224, + 0,0,0,240,0,0,0,64,0,0,0,0,0,255,240,31, + 248,255,240,31,248,63,192,7,224,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,128,31,192,7,128,15,192,7,128,15,224,7, + 0,7,224,15,0,3,248,62,0,1,255,252,0,0,255,240, + 0,0,31,192,0,29,42,168,32,1,0,0,0,32,0,0, + 0,56,0,0,0,124,0,0,0,254,0,0,1,254,0,0, + 3,252,0,0,7,240,0,0,15,192,0,0,31,0,0,0, + 28,0,0,0,16,0,0,0,0,0,0,255,240,31,248,255, + 240,31,248,63,192,7,224,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,128,31,192,7,128,15,192,7,128,15,224,7,0,7, + 224,15,0,3,248,62,0,1,255,252,0,0,255,240,0,0, + 31,192,0,29,41,164,32,1,0,0,3,128,0,0,7,128, + 0,0,15,192,0,0,31,224,0,0,63,240,0,0,127,248, + 0,0,124,124,0,0,240,62,0,1,192,14,0,0,128,4, + 0,0,0,0,0,255,240,31,248,255,240,31,248,63,192,7, + 224,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,192,31,128,3, + 192,31,128,3,192,31,128,3,192,31,128,3,128,31,192,7, + 128,15,192,7,128,15,224,7,0,7,224,15,0,3,248,62, + 0,1,255,252,0,0,255,240,0,0,31,192,0,29,40,160, + 32,1,0,0,32,8,0,0,248,62,0,0,248,62,0,1, + 248,126,0,1,248,126,0,1,248,126,0,0,240,60,0,0, + 64,16,0,0,0,0,0,0,0,0,0,255,240,31,248,255, + 240,31,248,63,192,7,224,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,192,31,128,3,192,31,128,3,192,31,128,3,192,31, + 128,3,128,31,192,7,128,15,192,7,128,15,224,7,0,7, + 224,15,0,3,248,62,0,1,255,252,0,0,255,240,0,0, + 31,192,0,29,42,168,29,0,0,0,0,32,0,0,0,48, + 0,0,0,124,0,0,1,254,0,0,3,254,0,0,7,248, + 0,0,15,224,0,0,31,128,0,0,62,0,0,0,60,0, + 0,0,16,0,0,0,0,0,0,127,0,31,248,255,128,31, + 248,31,192,3,192,15,192,3,128,7,224,7,128,3,240,7, + 0,3,240,15,0,1,248,14,0,1,248,30,0,0,252,28, + 0,0,124,60,0,0,126,56,0,0,63,120,0,0,63,240, + 0,0,31,240,0,0,31,224,0,0,15,224,0,0,15,192, + 0,0,15,192,0,0,15,192,0,0,15,192,0,0,15,192, + 0,0,15,192,0,0,15,192,0,0,15,192,0,0,15,192, + 0,0,15,192,0,0,31,224,0,0,255,252,0,0,255,252, + 0,24,30,90,27,1,0,255,248,0,255,248,0,63,192,0, + 31,128,0,31,128,0,31,128,0,31,255,128,31,255,240,31, + 131,248,31,128,252,31,128,126,31,128,127,31,128,63,31,128, + 63,31,128,63,31,128,63,31,128,63,31,128,62,31,128,126, + 31,128,252,31,129,248,31,191,240,31,191,128,31,128,0,31, + 128,0,31,128,0,31,128,0,63,192,0,255,248,0,255,248, + 0,28,36,144,31,1,0,0,7,240,0,0,63,252,0,0, + 255,254,0,1,240,255,0,3,224,63,128,7,192,31,128,7, + 192,31,192,15,128,15,192,15,128,15,192,31,128,15,192,31, + 128,15,192,31,128,31,128,31,128,63,0,31,128,126,0,31, + 129,248,0,31,135,224,0,31,135,128,0,31,143,128,0,31, + 143,128,0,31,143,192,0,31,143,224,0,31,135,248,0,31, + 135,254,0,31,131,255,128,31,128,255,192,31,128,63,224,31, + 128,31,240,31,128,7,240,31,140,3,240,31,142,1,240,31, + 142,1,240,31,142,1,240,31,143,1,224,63,143,195,192,255, + 143,255,128,255,129,254,0,23,35,105,24,1,0,1,192,0, + 15,192,0,15,224,0,7,240,0,3,240,0,1,248,0,0, + 248,0,0,124,0,0,60,0,0,30,0,0,12,0,0,0, + 0,0,0,0,0,255,0,15,255,128,31,15,192,62,7,224, + 126,7,224,252,7,224,96,7,224,0,7,224,0,31,224,1, + 255,224,7,255,224,31,231,224,63,135,224,63,7,224,126,7, + 224,126,7,224,126,7,224,126,31,228,127,63,252,63,247,254, + 63,231,240,15,131,128,23,35,105,24,1,0,0,15,0,0, + 15,192,0,31,224,0,31,128,0,63,0,0,62,0,0,124, + 0,0,120,0,0,240,0,0,224,0,0,192,0,0,0,0, + 0,0,0,0,255,0,15,255,128,31,15,192,62,7,224,126, + 7,224,252,7,224,96,7,224,0,7,224,0,31,224,1,255, + 224,7,255,224,31,231,224,63,135,224,63,7,224,126,7,224, + 126,7,224,126,7,224,126,31,228,127,63,252,63,247,254,63, + 231,240,15,131,128,23,35,105,24,1,0,0,120,0,0,252, + 0,0,252,0,1,254,0,3,255,0,3,255,0,7,207,128, + 15,135,192,15,1,192,28,0,224,8,0,64,0,0,0,0, + 0,0,0,255,0,15,255,128,31,15,192,62,7,224,126,7, + 224,252,7,224,96,7,224,0,7,224,0,31,224,1,255,224, + 7,255,224,31,231,224,63,135,224,63,7,224,126,7,224,126, + 7,224,126,7,224,126,31,228,127,63,252,63,247,254,63,231, + 240,15,131,128,23,33,99,24,1,0,3,192,48,7,240,48, + 15,252,96,31,255,224,31,255,192,56,127,128,48,15,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,255,0,15,255, + 128,31,15,192,62,7,224,126,7,224,252,7,224,96,7,224, + 0,7,224,0,31,224,1,255,224,7,255,224,31,231,224,63, + 135,224,63,7,224,126,7,224,126,7,224,126,7,224,126,31, + 228,127,63,252,63,247,254,63,231,240,15,131,128,23,33,99, + 24,1,0,7,1,192,15,131,224,31,135,224,31,135,224,31, + 135,224,31,7,192,14,3,128,0,0,0,0,0,0,0,0, + 0,0,0,0,0,255,0,15,255,128,31,15,192,62,7,224, + 126,7,224,252,7,224,96,7,224,0,7,224,0,31,224,1, + 255,224,7,255,224,31,231,224,63,135,224,63,7,224,126,7, + 224,126,7,224,126,7,224,126,31,228,127,63,252,63,247,254, + 63,231,240,15,131,128,23,34,102,24,1,0,0,60,0,0, + 254,0,1,239,0,3,207,0,3,207,0,3,207,0,3,238, + 0,1,252,0,0,248,0,0,0,0,0,0,0,0,0,0, + 0,255,0,15,255,128,31,15,192,62,7,224,126,7,224,252, + 7,224,96,7,224,0,7,224,0,31,224,1,255,224,7,255, + 224,31,231,224,63,135,224,63,7,224,126,7,224,126,7,224, + 126,7,224,126,31,228,127,63,252,63,247,254,63,231,240,15, + 131,128,33,22,110,35,1,0,0,63,3,224,0,1,255,159, + 248,0,7,255,252,62,0,15,135,248,30,0,31,3,240,31, + 0,63,3,240,15,0,127,3,224,15,128,120,3,224,15,128, + 0,3,224,15,128,0,127,255,255,128,3,255,255,254,0,15, + 195,224,0,0,63,3,224,0,0,126,3,224,0,0,124,3, + 240,0,0,252,3,240,1,0,252,7,248,7,0,254,31,252, + 31,0,255,252,255,254,0,127,248,127,252,0,127,224,63,240, + 0,31,128,15,192,0,20,32,96,22,2,246,0,127,128,1, + 255,240,7,135,224,15,3,224,30,1,224,62,0,192,124,0, + 192,124,0,0,252,0,0,252,0,0,252,0,0,252,0,0, + 252,0,0,252,0,0,254,0,0,126,0,0,127,0,96,127, + 129,224,63,255,192,31,255,128,15,254,0,3,252,0,0,240, + 0,0,224,0,0,252,0,1,254,0,0,254,0,0,126,0, + 0,124,0,0,252,0,3,240,0,1,128,0,19,35,105,23, + 2,0,3,128,0,15,192,0,31,224,0,7,224,0,3,240, + 0,1,240,0,0,248,0,0,120,0,0,60,0,0,28,0, + 0,8,0,0,0,0,0,0,0,0,252,0,7,255,0,15, + 31,128,30,15,128,62,15,192,124,7,192,124,7,224,124,7, + 224,252,7,224,255,255,224,255,255,128,252,0,0,252,0,0, + 252,0,0,254,0,0,126,0,64,127,0,224,63,131,192,63, + 255,128,31,255,0,15,254,0,3,248,0,19,35,105,23,2, + 0,0,14,0,0,31,192,0,31,192,0,63,128,0,63,0, + 0,126,0,0,124,0,0,248,0,0,240,0,1,224,0,0, + 192,0,0,0,0,0,0,0,0,252,0,7,255,0,15,31, + 128,30,15,128,62,15,192,124,7,192,124,7,224,124,7,224, + 252,7,224,255,255,224,255,255,128,252,0,0,252,0,0,252, + 0,0,254,0,0,126,0,64,127,0,224,63,131,192,63,255, + 128,31,255,0,15,254,0,3,248,0,19,35,105,23,2,0, + 0,120,0,0,248,0,1,252,0,1,254,0,3,254,0,7, + 255,0,15,223,128,15,7,128,30,3,192,60,1,224,24,0, + 64,0,0,0,0,0,0,0,252,0,7,255,0,15,31,128, + 30,15,128,62,15,192,124,7,192,124,7,224,124,7,224,252, + 7,224,255,255,224,255,255,128,252,0,0,252,0,0,252,0, + 0,254,0,0,126,0,64,127,0,224,63,131,192,63,255,128, + 31,255,0,15,254,0,3,248,0,19,33,99,23,2,0,15, + 3,192,31,7,192,31,135,224,31,135,224,31,7,192,31,7, + 192,14,3,128,0,0,0,0,0,0,0,0,0,0,0,0, + 0,252,0,7,255,0,15,31,128,30,15,128,62,15,192,124, + 7,192,124,7,224,124,7,224,252,7,224,255,255,224,255,255, + 128,252,0,0,252,0,0,252,0,0,254,0,0,126,0,64, + 127,0,224,63,131,192,63,255,128,31,255,0,15,254,0,3, + 248,0,13,35,70,14,0,0,28,0,126,0,254,0,127,0, + 31,0,15,128,7,128,3,192,1,192,0,224,0,64,0,0, + 0,0,1,192,63,192,127,192,63,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,15,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,31,224,127,248,127,248,14,35, + 70,14,1,0,0,224,1,252,1,252,3,248,3,240,7,224, + 7,192,15,128,15,0,30,0,8,0,0,0,0,0,3,128, + 127,128,255,128,127,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,63,192,255,240,255,240,16,35,70,14,255,0, + 3,192,3,224,7,240,15,240,15,248,31,252,62,124,60,30, + 120,15,240,7,64,3,0,0,0,0,0,224,31,224,63,224, + 31,224,7,224,7,224,7,224,7,224,7,224,7,224,7,224, + 7,224,7,224,7,224,7,224,7,224,7,224,7,224,7,224, + 15,240,63,252,63,252,16,33,66,14,255,0,56,14,124,31, + 124,31,252,63,252,63,124,31,120,30,0,0,0,0,0,0, + 0,0,0,224,31,224,63,224,31,224,7,224,7,224,7,224, + 7,224,7,224,7,224,7,224,7,224,7,224,7,224,7,224, + 7,224,7,224,7,224,7,224,15,240,63,252,63,252,21,34, + 102,25,2,0,1,192,0,15,224,0,63,240,248,31,255,248, + 0,255,192,0,126,0,1,255,0,7,239,128,31,143,128,2, + 7,192,0,3,224,0,3,224,1,251,240,7,253,240,15,255, + 240,31,15,248,62,7,248,62,3,248,124,3,248,124,1,248, + 252,1,248,252,1,248,252,1,248,252,1,248,252,1,240,252, + 1,240,252,1,240,126,3,224,126,3,224,63,3,192,63,7, + 128,31,143,0,7,254,0,1,248,0,26,33,132,28,1,0, + 0,240,12,0,1,252,12,0,3,255,28,0,3,255,248,0, + 7,255,240,0,14,31,224,0,12,3,192,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,3,1,240,0, + 127,135,252,0,255,159,252,0,63,191,254,0,31,248,254,0, + 31,224,126,0,31,192,126,0,31,128,126,0,31,128,126,0, + 31,128,126,0,31,128,126,0,31,128,126,0,31,128,126,0, + 31,128,126,0,31,128,126,0,31,128,126,0,31,128,126,0, + 31,128,126,0,31,128,126,0,63,192,255,0,255,243,255,192, + 255,243,255,192,21,35,105,25,2,0,1,192,0,15,224,0, + 15,224,0,7,240,0,3,240,0,1,248,0,0,248,0,0, + 124,0,0,60,0,0,30,0,0,12,0,0,0,0,0,0, + 0,0,252,0,3,255,0,15,15,192,30,7,224,62,7,224, + 62,3,240,124,3,240,124,1,248,252,1,248,252,1,248,252, + 1,248,252,1,248,252,1,248,252,1,248,252,1,240,126,1, + 240,126,3,224,62,3,224,63,3,192,31,135,128,7,254,0, + 1,248,0,21,35,105,25,2,0,0,15,0,0,15,192,0, + 31,224,0,31,128,0,63,0,0,62,0,0,124,0,0,120, + 0,0,240,0,0,224,0,0,192,0,0,0,0,0,0,0, + 0,252,0,3,255,0,15,15,192,30,7,224,62,7,224,62, + 3,240,124,3,240,124,1,248,252,1,248,252,1,248,252,1, + 248,252,1,248,252,1,248,252,1,248,252,1,240,126,1,240, + 126,3,224,62,3,224,63,3,192,31,135,128,7,254,0,1, + 248,0,21,35,105,25,2,0,0,120,0,0,252,0,0,252, + 0,1,254,0,3,255,0,3,255,0,7,207,128,15,135,192, + 15,1,192,28,0,224,8,0,64,0,0,0,0,0,0,0, + 252,0,3,255,0,15,15,192,30,7,224,62,7,224,62,3, + 240,124,3,240,124,1,248,252,1,248,252,1,248,252,1,248, + 252,1,248,252,1,248,252,1,248,252,1,240,126,1,240,126, + 3,224,62,3,224,63,3,192,31,135,128,7,254,0,1,248, + 0,21,33,99,25,2,0,3,192,48,7,240,48,15,252,96, + 31,255,224,31,255,192,56,127,128,48,15,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,252,0,3,255,0,15,15, + 192,30,7,224,62,7,224,62,3,240,124,3,240,124,1,248, + 252,1,248,252,1,248,252,1,248,252,1,248,252,1,248,252, + 1,248,252,1,240,126,1,240,126,3,224,62,3,224,63,3, + 192,31,135,128,7,254,0,1,248,0,21,33,99,25,2,0, + 7,1,192,15,131,224,31,135,224,31,135,224,31,135,224,31, + 7,192,14,3,128,0,0,0,0,0,0,0,0,0,0,0, + 0,0,252,0,3,255,0,15,15,192,30,7,224,62,7,224, + 62,3,240,124,3,240,124,1,248,252,1,248,252,1,248,252, + 1,248,252,1,248,252,1,248,252,1,248,252,1,240,126,1, + 240,126,3,224,62,3,224,63,3,192,31,135,128,7,254,0, + 1,248,0,18,18,54,20,1,4,0,192,0,1,224,0,1, + 224,0,1,224,0,1,224,0,0,192,0,0,0,0,127,255, + 192,127,255,192,255,255,128,0,0,0,0,0,0,0,192,0, + 1,224,0,1,224,0,1,224,0,1,224,0,0,192,0,21, + 24,72,25,2,255,0,0,24,0,252,56,3,255,240,15,15, + 224,30,7,224,62,3,240,60,7,240,124,15,240,124,31,248, + 252,29,248,252,57,248,252,121,248,252,241,248,252,225,248,253, + 193,248,255,193,240,127,129,240,127,1,224,62,3,224,63,3, + 192,63,135,128,127,254,0,113,248,0,192,0,0,26,35,140, + 27,1,0,0,224,0,0,3,240,0,0,7,240,0,0,1, + 248,0,0,0,248,0,0,0,124,0,0,0,62,0,0,0, + 30,0,0,0,15,0,0,0,7,0,0,0,2,0,0,0, + 0,0,0,0,0,0,0,3,128,28,0,255,135,252,0,255, + 135,252,0,31,128,252,0,31,128,252,0,31,128,252,0,31, + 128,252,0,31,128,252,0,31,128,252,0,31,128,252,0,31, + 128,252,0,31,128,252,0,31,128,252,0,31,128,252,0,31, + 128,252,0,31,128,252,0,31,129,252,0,31,199,252,128,31, + 255,255,128,15,254,255,192,7,248,126,0,3,224,112,0,26, + 35,140,27,1,0,0,3,128,0,0,7,240,0,0,7,240, + 0,0,15,224,0,0,15,192,0,0,31,128,0,0,31,0, + 0,0,62,0,0,0,60,0,0,0,120,0,0,0,48,0, + 0,0,0,0,0,0,0,0,0,3,128,28,0,255,135,252, + 0,255,135,252,0,31,128,252,0,31,128,252,0,31,128,252, + 0,31,128,252,0,31,128,252,0,31,128,252,0,31,128,252, + 0,31,128,252,0,31,128,252,0,31,128,252,0,31,128,252, + 0,31,128,252,0,31,128,252,0,31,129,252,0,31,199,252, + 128,31,255,255,128,15,254,255,192,7,248,126,0,3,224,112, + 0,26,35,140,27,1,0,0,30,0,0,0,62,0,0,0, + 127,0,0,0,255,128,0,0,255,128,0,1,255,192,0,3, + 247,224,0,3,193,224,0,7,128,240,0,15,0,112,0,6, + 0,48,0,0,0,0,0,0,0,0,0,3,128,28,0,255, + 135,252,0,255,135,252,0,31,128,252,0,31,128,252,0,31, + 128,252,0,31,128,252,0,31,128,252,0,31,128,252,0,31, + 128,252,0,31,128,252,0,31,128,252,0,31,128,252,0,31, + 128,252,0,31,128,252,0,31,128,252,0,31,129,252,0,31, + 199,252,128,31,255,255,128,15,254,255,192,7,248,126,0,3, + 224,112,0,26,33,132,27,1,0,3,192,240,0,7,193,240, + 0,7,225,248,0,7,225,248,0,7,193,240,0,7,193,240, + 0,7,129,224,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,3,128,28,0,255,135,252,0,255,135,252, + 0,31,128,252,0,31,128,252,0,31,128,252,0,31,128,252, + 0,31,128,252,0,31,128,252,0,31,128,252,0,31,128,252, + 0,31,128,252,0,31,128,252,0,31,128,252,0,31,128,252, + 0,31,128,252,0,31,129,252,0,31,199,252,128,31,255,255, + 128,15,254,255,192,7,248,126,0,3,224,112,0,25,46,184, + 24,255,245,0,1,224,0,0,3,248,0,0,3,248,0,0, + 3,240,0,0,7,224,0,0,7,192,0,0,15,128,0,0, + 15,0,0,0,30,0,0,0,28,0,0,0,56,0,0,0, + 0,0,0,0,0,0,0,127,240,127,128,127,240,127,128,31, + 192,30,0,15,192,28,0,15,192,28,0,7,224,60,0,7, + 224,56,0,3,240,56,0,3,240,112,0,1,240,112,0,1, + 248,240,0,1,248,224,0,0,252,224,0,0,253,224,0,0, + 125,192,0,0,127,192,0,0,127,128,0,0,63,128,0,0, + 63,128,0,0,31,0,0,0,31,0,0,0,14,0,0,0, + 14,0,0,0,30,0,0,0,28,0,0,0,60,0,0,0, + 120,0,0,32,248,0,0,63,240,0,0,127,224,0,0,255, + 192,0,0,255,128,0,0,126,0,0,0,24,47,141,27,1, + 245,3,0,0,63,128,0,255,128,0,255,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,131,224,31,143, + 248,31,191,252,31,255,252,31,240,254,31,192,126,31,128,63, + 31,128,63,31,128,31,31,128,31,31,128,31,31,128,31,31, + 128,31,31,128,30,31,128,30,31,128,62,31,192,60,31,240, + 124,31,255,248,31,255,240,31,159,224,31,135,128,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,63,192,0,255,248,0,255,248,0,25,44, + 176,24,255,245,0,224,56,0,1,240,124,0,3,240,252,0, + 3,240,252,0,3,240,252,0,3,224,248,0,1,192,112,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 127,240,127,128,127,240,127,128,31,192,30,0,15,192,28,0, + 15,192,28,0,7,224,60,0,7,224,56,0,3,240,56,0, + 3,240,112,0,1,240,112,0,1,248,240,0,1,248,224,0, + 0,252,224,0,0,253,224,0,0,125,192,0,0,127,192,0, + 0,127,128,0,0,63,128,0,0,63,128,0,0,31,0,0, + 0,31,0,0,0,14,0,0,0,14,0,0,0,30,0,0, + 0,28,0,0,0,60,0,0,0,120,0,0,32,248,0,0, + 63,240,0,0,127,224,0,0,255,192,0,0,255,128,0,0, + 126,0,0,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--48-480-72-72-P-238-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 29 + Calculated Max Values w=22 h=46 x= 3 y=17 dx=25 dy= 0 ascent=38 len=138 + Font Bounding box w=74 h=69 x=-24 y=-17 + Calculated Min Values x= 0 y=-9 dx= 0 dy= 0 + Pure Font ascent =29 descent= 0 + X Font ascent =29 descent= 0 + Max Font ascent =38 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb30n[1275] U8G_SECTION(".progmem.u8g_font_gdb30n") = { + 0,74,69,232,239,29,0,0,0,0,42,57,0,38,247,29, + 0,19,20,60,21,1,17,0,48,0,1,240,0,1,240,0, + 32,240,0,112,225,128,120,227,192,126,231,224,127,255,224,31, + 255,0,3,248,0,3,248,0,31,255,0,127,255,192,254,231, + 192,124,227,192,48,225,192,0,240,128,0,240,0,1,240,0, + 0,192,0,18,18,54,20,1,4,0,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,127,255, + 192,255,255,192,255,255,128,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,192,0,10, + 15,30,13,1,247,7,0,63,128,255,192,127,192,63,192,15, + 192,15,192,15,128,15,128,15,0,31,0,30,0,60,0,120, + 0,48,0,15,3,6,17,1,11,127,254,127,252,255,252,8, + 7,7,13,3,255,62,127,255,255,255,254,124,21,46,138,23, + 1,248,0,0,56,0,0,248,0,0,240,0,1,240,0,1, + 240,0,1,224,0,3,224,0,3,224,0,3,192,0,7,192, + 0,7,128,0,15,128,0,15,128,0,15,0,0,31,0,0, + 31,0,0,30,0,0,62,0,0,60,0,0,124,0,0,124, + 0,0,120,0,0,248,0,0,248,0,0,240,0,1,240,0, + 1,224,0,3,224,0,3,224,0,3,192,0,7,192,0,7, + 192,0,7,128,0,15,128,0,15,0,0,31,0,0,31,0, + 0,30,0,0,62,0,0,62,0,0,60,0,0,124,0,0, + 120,0,0,248,0,0,248,0,0,192,0,0,22,29,87,24, + 1,0,0,252,0,3,255,0,7,143,192,15,7,224,30,3, + 224,62,1,240,62,1,240,124,1,248,124,1,248,124,0,248, + 252,0,252,252,0,252,252,0,252,252,0,252,252,0,252,252, + 0,252,252,0,252,252,0,252,252,0,252,124,0,248,124,0, + 248,126,0,248,62,1,240,62,1,240,31,1,224,31,3,192, + 15,135,128,3,255,0,0,252,0,19,29,87,24,3,0,0, + 16,0,0,248,0,7,248,0,63,248,0,255,248,0,225,248, + 0,1,248,0,1,248,0,1,248,0,1,248,0,1,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1, + 248,0,1,248,0,1,248,0,1,248,0,1,248,0,1,248, + 0,1,248,0,1,248,0,1,248,0,1,248,0,15,255,0, + 127,255,224,127,255,224,20,29,87,24,1,0,0,255,0,7, + 255,192,15,143,224,63,7,224,62,3,240,126,3,240,126,3, + 240,120,3,240,0,3,240,0,7,224,0,7,224,0,15,192, + 0,15,128,0,31,128,0,31,0,0,62,0,0,124,0,0, + 248,0,0,248,0,1,240,0,3,224,32,7,192,48,15,128, + 48,15,0,48,30,0,112,63,255,240,127,255,240,255,255,240, + 127,255,240,20,29,87,24,1,0,1,254,0,7,255,128,31, + 31,192,63,15,192,62,7,224,126,7,224,60,7,224,0,7, + 224,0,7,192,0,15,192,0,31,128,0,127,0,1,254,0, + 1,255,128,2,63,192,0,15,224,0,7,224,0,3,240,0, + 3,240,0,3,240,0,3,240,0,3,240,0,3,240,64,7, + 224,96,15,224,252,31,192,63,255,128,31,254,0,3,248,0, + 21,29,87,25,2,0,0,1,128,0,15,128,0,31,128,0, + 63,128,0,63,128,0,127,128,0,255,128,0,239,128,1,239, + 128,3,207,128,3,143,128,7,143,128,7,15,128,14,15,128, + 30,15,128,28,15,128,56,15,128,56,15,128,127,255,248,255, + 255,240,255,255,224,0,15,128,0,15,128,0,15,128,0,15, + 128,0,15,128,0,31,192,1,255,240,1,255,240,20,29,87, + 24,2,0,0,0,32,31,255,240,31,255,192,31,255,192,31, + 255,128,28,0,0,28,0,0,28,0,0,60,0,0,60,0, + 0,56,0,0,59,252,0,63,255,0,63,255,128,120,31,192, + 32,15,224,0,7,224,0,7,240,0,3,240,0,3,240,0, + 3,240,0,3,240,0,3,240,0,7,224,64,7,224,224,15, + 192,252,31,128,63,254,0,7,248,0,20,29,87,24,2,0, + 0,1,128,0,31,192,0,127,0,1,252,0,3,240,0,7, + 192,0,15,128,0,31,128,0,63,0,0,62,0,0,126,0, + 0,124,126,0,125,255,128,255,255,192,255,15,224,254,7,224, + 252,7,240,252,3,240,252,3,240,252,3,240,252,3,240,124, + 3,240,126,3,224,126,3,224,62,3,192,31,7,192,15,143, + 128,7,255,0,1,248,0,21,28,84,24,2,0,127,255,240, + 127,255,248,127,255,240,127,255,224,112,1,224,224,1,224,192, + 1,192,64,3,192,0,3,128,0,7,128,0,7,0,0,15, + 0,0,15,0,0,30,0,0,30,0,0,60,0,0,60,0, + 0,124,0,0,120,0,0,248,0,0,240,0,1,240,0,1, + 240,0,3,224,0,3,224,0,7,224,0,15,192,0,6,0, + 0,20,29,87,24,2,0,0,252,0,7,255,128,15,31,192, + 30,15,192,28,7,224,60,7,224,60,7,224,60,7,224,62, + 15,192,63,143,128,31,255,0,31,254,0,15,252,0,3,255, + 0,7,255,128,15,255,192,31,31,224,62,15,240,126,7,240, + 252,3,240,252,3,240,252,3,240,252,3,240,252,3,224,126, + 3,224,126,7,192,63,15,128,31,254,0,3,248,0,20,29, + 87,24,2,255,1,252,0,7,255,0,15,31,128,30,15,192, + 62,7,224,124,7,224,124,7,224,252,3,240,252,3,240,252, + 3,240,252,3,240,252,3,240,254,3,240,126,7,240,127,15, + 240,63,255,240,31,251,224,7,227,224,0,7,224,0,7,192, + 0,7,192,0,15,128,0,31,0,0,62,0,0,252,0,3, + 248,0,15,224,0,63,128,0,56,0,0}; +/* + Fontname: -FreeType-Gentium Basic-Bold-R-Normal--48-480-72-72-P-238-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 30, '1' Height: 29 + Calculated Max Values w=41 h=49 x= 4 y=24 dx=42 dy= 0 ascent=39 len=210 + Font Bounding box w=74 h=69 x=-24 y=-17 + Calculated Min Values x=-7 y=-11 dx= 0 dy= 0 + Pure Font ascent =30 descent=-11 + X Font ascent =38 descent=-11 + Max Font ascent =39 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdb30r[9112] U8G_SECTION(".progmem.u8g_font_gdb30r") = { + 0,74,69,232,239,30,10,50,24,78,32,127,245,39,245,38, + 245,0,0,0,12,0,0,8,36,36,15,3,255,6,31,127, + 126,126,126,126,126,126,126,62,62,62,62,62,62,62,60,60, + 60,60,60,60,28,28,24,0,0,0,62,127,255,255,255,254, + 124,16,16,32,23,3,19,14,3,126,31,254,63,254,63,124, + 63,124,63,124,63,124,63,124,30,124,30,124,30,60,30,60, + 30,56,30,56,30,56,14,22,27,81,24,2,3,0,56,48, + 0,120,112,0,112,240,0,112,224,0,240,224,0,225,224,0, + 225,192,31,255,252,31,255,252,63,255,252,3,195,128,3,195, + 128,3,135,128,3,135,0,7,135,0,7,135,0,255,255,240, + 255,255,240,255,255,224,14,30,0,14,28,0,30,28,0,28, + 60,0,28,60,0,28,56,0,60,56,0,56,112,0,20,36, + 108,24,2,252,0,48,0,0,112,0,0,112,0,0,112,0, + 3,255,0,15,255,224,63,255,240,124,119,240,120,115,224,240, + 113,224,240,112,192,248,112,0,252,112,0,255,112,0,127,240, + 0,63,248,0,31,254,0,7,255,128,0,255,192,0,127,224, + 0,119,224,0,113,240,0,113,240,224,112,240,224,112,240,240, + 112,240,248,112,224,252,113,224,255,119,192,255,255,192,63,255, + 0,7,252,0,0,112,0,0,112,0,0,112,0,0,96,0, + 31,30,120,34,2,0,0,0,0,16,7,192,0,240,31,224, + 1,224,56,240,3,192,120,120,3,128,112,120,7,128,240,60, + 15,0,240,60,30,0,240,60,28,0,240,60,60,0,240,60, + 120,0,240,60,240,0,112,57,224,0,120,57,224,0,56,115, + 192,0,31,231,131,224,15,143,12,48,0,15,24,56,0,30, + 56,28,0,60,56,28,0,120,120,30,0,120,120,30,0,240, + 120,30,1,224,120,30,3,192,120,30,3,192,120,28,7,128, + 60,60,15,0,30,56,30,0,15,240,28,0,7,192,31,34, + 136,33,2,0,0,31,128,0,0,127,224,0,0,227,240,0, + 1,225,248,0,3,193,248,0,3,193,248,0,7,193,248,0, + 7,193,248,0,7,195,240,0,7,195,240,0,7,231,224,0, + 7,239,192,0,3,255,128,0,3,255,0,0,3,252,0,0, + 1,248,0,0,7,252,63,252,15,252,127,254,31,254,31,184, + 63,127,15,128,62,127,7,128,126,63,135,128,252,31,199,128, + 252,31,231,128,252,15,247,0,252,7,255,0,252,3,254,0, + 252,1,252,0,254,0,255,0,127,0,127,128,127,129,255,248, + 63,255,223,248,15,255,15,244,3,252,7,128,7,16,16,13, + 3,19,14,126,254,254,124,124,124,124,124,124,124,60,60,56, + 56,56,13,45,90,16,3,249,0,16,0,120,0,240,1,224, + 3,224,7,192,7,128,15,128,31,0,31,0,63,0,62,0, + 62,0,126,0,126,0,126,0,124,0,252,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 252,0,126,0,126,0,126,0,126,0,62,0,63,0,63,0, + 31,0,15,128,15,128,7,192,3,192,1,224,0,240,0,120, + 0,16,13,44,88,16,0,249,64,0,240,0,120,0,60,0, + 30,0,31,0,15,128,15,192,7,192,7,224,7,224,3,224, + 3,240,3,240,3,240,1,240,1,248,1,248,1,248,1,248, + 1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,240, + 3,240,3,240,3,240,3,224,3,224,7,224,7,192,7,192, + 15,128,15,0,31,0,62,0,60,0,120,0,240,0,64,0, + 19,20,60,21,1,17,0,48,0,1,240,0,1,240,0,32, + 240,0,112,225,128,120,227,192,126,231,224,127,255,224,31,255, + 0,3,248,0,3,248,0,31,255,0,127,255,192,254,231,192, + 124,227,192,48,225,192,0,240,128,0,240,0,1,240,0,0, + 192,0,18,18,54,20,1,4,0,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,127,255,192, + 255,255,192,255,255,128,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,192,0,10,15, + 30,13,1,247,7,0,63,128,255,192,127,192,63,192,15,192, + 15,192,15,128,15,128,15,0,31,0,30,0,60,0,120,0, + 48,0,15,3,6,17,1,11,127,254,127,252,255,252,8,7, + 7,13,3,255,62,127,255,255,255,254,124,21,46,138,23,1, + 248,0,0,56,0,0,248,0,0,240,0,1,240,0,1,240, + 0,1,224,0,3,224,0,3,224,0,3,192,0,7,192,0, + 7,128,0,15,128,0,15,128,0,15,0,0,31,0,0,31, + 0,0,30,0,0,62,0,0,60,0,0,124,0,0,124,0, + 0,120,0,0,248,0,0,248,0,0,240,0,1,240,0,1, + 224,0,3,224,0,3,224,0,3,192,0,7,192,0,7,192, + 0,7,128,0,15,128,0,15,0,0,31,0,0,31,0,0, + 30,0,0,62,0,0,62,0,0,60,0,0,124,0,0,120, + 0,0,248,0,0,248,0,0,192,0,0,22,29,87,24,1, + 0,0,252,0,3,255,0,7,143,192,15,7,224,30,3,224, + 62,1,240,62,1,240,124,1,248,124,1,248,124,0,248,252, + 0,252,252,0,252,252,0,252,252,0,252,252,0,252,252,0, + 252,252,0,252,252,0,252,252,0,252,124,0,248,124,0,248, + 126,0,248,62,1,240,62,1,240,31,1,224,31,3,192,15, + 135,128,3,255,0,0,252,0,19,29,87,24,3,0,0,16, + 0,0,248,0,7,248,0,63,248,0,255,248,0,225,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1, + 248,0,1,248,0,1,248,0,1,248,0,1,248,0,1,248, + 0,1,248,0,1,248,0,1,248,0,1,248,0,1,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,15,255,0,127, + 255,224,127,255,224,20,29,87,24,1,0,0,255,0,7,255, + 192,15,143,224,63,7,224,62,3,240,126,3,240,126,3,240, + 120,3,240,0,3,240,0,7,224,0,7,224,0,15,192,0, + 15,128,0,31,128,0,31,0,0,62,0,0,124,0,0,248, + 0,0,248,0,1,240,0,3,224,32,7,192,48,15,128,48, + 15,0,48,30,0,112,63,255,240,127,255,240,255,255,240,127, + 255,240,20,29,87,24,1,0,1,254,0,7,255,128,31,31, + 192,63,15,192,62,7,224,126,7,224,60,7,224,0,7,224, + 0,7,192,0,15,192,0,31,128,0,127,0,1,254,0,1, + 255,128,2,63,192,0,15,224,0,7,224,0,3,240,0,3, + 240,0,3,240,0,3,240,0,3,240,0,3,240,64,7,224, + 96,15,224,252,31,192,63,255,128,31,254,0,3,248,0,21, + 29,87,25,2,0,0,1,128,0,15,128,0,31,128,0,63, + 128,0,63,128,0,127,128,0,255,128,0,239,128,1,239,128, + 3,207,128,3,143,128,7,143,128,7,15,128,14,15,128,30, + 15,128,28,15,128,56,15,128,56,15,128,127,255,248,255,255, + 240,255,255,224,0,15,128,0,15,128,0,15,128,0,15,128, + 0,15,128,0,31,192,1,255,240,1,255,240,20,29,87,24, + 2,0,0,0,32,31,255,240,31,255,192,31,255,192,31,255, + 128,28,0,0,28,0,0,28,0,0,60,0,0,60,0,0, + 56,0,0,59,252,0,63,255,0,63,255,128,120,31,192,32, + 15,224,0,7,224,0,7,240,0,3,240,0,3,240,0,3, + 240,0,3,240,0,3,240,0,7,224,64,7,224,224,15,192, + 252,31,128,63,254,0,7,248,0,20,29,87,24,2,0,0, + 1,128,0,31,192,0,127,0,1,252,0,3,240,0,7,192, + 0,15,128,0,31,128,0,63,0,0,62,0,0,126,0,0, + 124,126,0,125,255,128,255,255,192,255,15,224,254,7,224,252, + 7,240,252,3,240,252,3,240,252,3,240,252,3,240,124,3, + 240,126,3,224,126,3,224,62,3,192,31,7,192,15,143,128, + 7,255,0,1,248,0,21,28,84,24,2,0,127,255,240,127, + 255,248,127,255,240,127,255,224,112,1,224,224,1,224,192,1, + 192,64,3,192,0,3,128,0,7,128,0,7,0,0,15,0, + 0,15,0,0,30,0,0,30,0,0,60,0,0,60,0,0, + 124,0,0,120,0,0,248,0,0,240,0,1,240,0,1,240, + 0,3,224,0,3,224,0,7,224,0,15,192,0,6,0,0, + 20,29,87,24,2,0,0,252,0,7,255,128,15,31,192,30, + 15,192,28,7,224,60,7,224,60,7,224,60,7,224,62,15, + 192,63,143,128,31,255,0,31,254,0,15,252,0,3,255,0, + 7,255,128,15,255,192,31,31,224,62,15,240,126,7,240,252, + 3,240,252,3,240,252,3,240,252,3,240,252,3,224,126,3, + 224,126,7,192,63,15,128,31,254,0,3,248,0,20,29,87, + 24,2,255,1,252,0,7,255,0,15,31,128,30,15,192,62, + 7,224,124,7,224,124,7,224,252,3,240,252,3,240,252,3, + 240,252,3,240,252,3,240,254,3,240,126,7,240,127,15,240, + 63,255,240,31,251,224,7,227,224,0,7,224,0,7,192,0, + 7,192,0,15,128,0,31,0,0,62,0,0,252,0,3,248, + 0,15,224,0,63,128,0,56,0,0,8,23,23,13,3,255, + 62,127,255,255,255,254,124,0,0,0,0,0,0,0,0,0, + 62,127,255,255,255,254,124,10,31,62,13,1,247,15,128,31, + 192,63,192,63,192,63,192,31,128,14,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,63, + 128,255,192,127,192,63,192,15,192,15,192,15,128,15,128,15, + 0,31,0,30,0,60,0,120,0,48,0,20,16,48,22,1, + 6,0,0,96,0,1,240,0,15,224,0,127,224,3,255,128, + 15,252,0,127,224,0,127,0,0,254,0,0,255,192,0,63, + 248,0,7,254,0,1,255,192,0,63,224,0,7,240,0,0, + 192,20,10,30,22,1,8,127,255,224,127,255,240,255,255,224, + 0,0,0,0,0,0,0,0,0,0,0,0,127,255,224,127, + 255,240,255,255,224,20,16,48,22,1,6,48,0,0,126,0, + 0,255,192,0,63,240,0,15,254,0,1,255,192,0,63,224, + 0,7,240,0,31,224,0,127,224,3,255,0,31,248,0,127, + 224,0,127,0,0,248,0,0,64,0,0,19,35,105,22,2, + 255,1,254,0,15,255,128,63,31,192,126,15,192,124,7,224, + 252,7,224,252,7,224,252,7,224,240,7,224,0,7,192,0, + 15,192,0,15,128,0,31,128,0,63,0,0,126,0,0,124, + 0,0,248,0,1,240,0,1,224,0,3,224,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,128,0,0,0,0,0, + 0,0,0,0,0,1,240,0,3,248,0,7,248,0,7,248, + 0,7,248,0,7,240,0,3,224,0,38,42,210,42,2,246, + 0,0,255,192,0,0,7,255,248,0,0,31,255,254,0,0, + 127,255,255,0,0,255,0,255,128,1,248,0,31,192,3,224, + 0,7,224,7,192,0,3,224,15,128,0,1,240,31,0,0, + 1,240,31,0,252,24,248,62,3,254,120,248,60,7,255,240, + 120,124,15,135,240,124,124,31,3,240,124,120,31,3,240,60, + 120,62,3,240,60,248,62,3,240,60,248,126,3,240,60,248, + 126,3,240,60,248,126,3,240,60,248,126,3,240,60,248,126, + 3,240,56,248,126,3,240,56,248,126,3,240,120,252,127,3, + 240,112,252,63,7,240,224,124,63,143,249,224,124,31,255,255, + 192,126,31,251,255,128,62,15,241,254,0,63,3,224,248,0, + 63,128,0,0,0,31,192,0,0,0,15,224,0,0,128,15, + 240,0,1,192,7,252,0,7,192,3,255,128,127,128,0,255, + 255,254,0,0,127,255,252,0,0,31,255,240,0,0,1,255, + 0,0,30,30,120,30,0,0,0,1,128,0,0,7,128,0, + 0,15,192,0,0,31,192,0,0,31,224,0,0,31,224,0, + 0,63,224,0,0,63,240,0,0,59,240,0,0,121,240,0, + 0,121,248,0,0,113,248,0,0,240,252,0,0,240,252,0, + 0,224,252,0,1,224,126,0,1,224,126,0,1,192,126,0, + 3,255,255,0,3,255,255,0,3,128,31,0,7,128,31,128, + 7,0,31,128,7,0,15,192,15,0,15,192,14,0,15,192, + 14,0,7,224,30,0,7,224,255,192,63,252,255,192,63,252, + 26,30,120,29,0,0,3,255,128,0,255,255,240,0,127,193, + 252,0,15,192,126,0,15,192,127,0,15,192,63,0,15,192, + 63,0,15,192,63,0,15,192,63,0,15,192,62,0,15,192, + 126,0,15,192,252,0,15,195,248,0,15,255,224,0,15,255, + 252,0,15,192,254,0,15,192,63,0,15,192,31,128,15,192, + 31,128,15,192,15,192,15,192,15,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,15,128,15,192,31,128,15,192, + 63,0,31,192,254,0,127,255,252,0,127,255,224,0,24,30, + 90,27,1,0,0,31,224,0,255,252,1,255,254,7,224,254, + 15,128,126,31,128,60,31,0,28,62,0,0,62,0,0,126, + 0,0,124,0,0,252,0,0,252,0,0,252,0,0,252,0, + 0,252,0,0,252,0,0,252,0,0,252,0,0,254,0,0, + 126,0,0,126,0,0,127,0,0,63,128,2,63,192,15,31, + 240,62,15,255,248,7,255,240,1,255,192,0,127,0,29,30, + 120,31,0,0,3,255,192,0,255,255,248,0,127,192,254,0, + 143,192,63,128,15,192,31,192,15,192,15,192,15,192,7,224, + 15,192,7,240,15,192,3,240,15,192,3,240,15,192,3,248, + 15,192,1,248,15,192,1,248,15,192,1,248,15,192,1,248, + 15,192,1,248,15,192,1,248,15,192,1,248,15,192,1,248, + 15,192,1,240,15,192,3,240,15,192,3,240,15,192,7,224, + 15,192,7,224,15,192,15,192,15,192,31,128,15,192,63,0, + 31,224,254,0,127,255,248,0,127,255,192,0,23,30,90,25, + 1,0,255,255,248,255,255,252,63,128,56,31,128,56,31,128, + 24,31,128,24,31,128,24,31,128,24,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,255,224,31,255,224,31, + 128,192,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,6,31,128,6,31,128,14, + 31,128,14,63,192,30,255,255,254,255,255,252,22,30,90,24, + 1,0,255,255,248,255,255,252,63,128,60,31,128,28,31,128, + 24,31,128,24,31,128,24,31,128,24,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,255,192,31,255,224,31, + 129,128,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,63,192,0,255,248,0,255,248,0,27,30,120,29, + 1,0,0,15,248,0,0,127,255,128,1,240,127,128,3,192, + 63,0,7,128,15,0,15,0,14,0,31,0,0,0,62,0, + 0,0,62,0,0,0,126,0,0,0,124,0,0,0,124,0, + 0,0,252,0,0,0,252,0,0,0,252,1,255,224,252,1, + 255,224,252,0,127,192,252,0,31,128,252,0,31,128,254,0, + 31,128,126,0,31,128,127,0,31,128,127,0,31,128,63,128, + 31,128,63,192,31,128,31,240,63,0,15,255,254,0,7,255, + 252,0,1,255,240,0,0,63,128,0,30,30,120,33,1,0, + 255,240,63,252,255,240,63,252,63,192,15,240,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,255,255,224,31,255,255,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,31,128,7,224, + 31,128,7,224,31,128,7,224,31,128,7,224,63,192,15,240, + 255,240,63,252,255,240,63,252,12,30,60,16,2,0,255,240, + 255,240,63,192,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,63,192,255,240,255,240,21,40,120,16,249,246, + 0,255,248,0,255,248,0,31,224,0,15,192,0,15,192,0, + 15,192,0,15,192,0,15,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,15,192,0,15,192,0,15,192, + 0,15,192,0,15,192,0,15,192,0,15,192,0,15,192,0, + 15,192,0,15,192,0,15,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,15,192,0,15,128,0,15,128, + 0,15,128,0,31,0,24,30,0,62,62,0,127,248,0,255, + 240,0,127,224,0,31,128,0,29,30,120,30,1,0,255,240, + 255,224,255,240,255,224,63,192,31,0,31,128,62,0,31,128, + 124,0,31,128,248,0,31,129,240,0,31,129,224,0,31,131, + 192,0,31,135,128,0,31,143,0,0,31,159,0,0,31,190, + 0,0,31,188,0,0,31,252,0,0,31,254,0,0,31,191, + 0,0,31,159,128,0,31,143,192,0,31,135,224,0,31,135, + 240,0,31,131,248,0,31,129,252,0,31,128,254,0,31,128, + 126,0,31,128,127,0,31,128,63,192,63,192,31,240,255,240, + 15,248,255,240,7,128,23,30,90,24,1,0,255,240,0,255, + 240,0,63,192,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,4,31,128,6,31,128,14,31,128,30,63,192,60, + 255,255,252,255,255,252,38,30,150,41,1,0,255,128,0,15, + 248,255,192,0,15,248,15,192,0,31,192,15,224,0,31,192, + 15,224,0,31,192,15,240,0,63,192,15,240,0,63,192,15, + 248,0,127,192,15,248,0,119,192,14,252,0,247,192,14,252, + 0,247,192,14,124,1,231,192,14,126,1,231,192,14,62,1, + 199,192,14,63,3,199,192,14,31,3,135,192,14,31,135,135, + 192,14,31,135,135,192,14,15,143,7,192,14,15,207,7,192, + 30,7,222,7,192,30,7,254,7,192,30,3,252,7,192,30, + 3,252,7,192,30,3,248,7,192,30,1,248,7,224,30,1, + 248,7,224,31,0,240,15,224,255,192,240,63,252,255,192,96, + 63,252,30,30,120,32,1,0,255,0,15,252,255,128,15,252, + 63,192,3,240,31,192,1,224,31,224,1,224,31,240,1,224, + 31,240,1,224,31,248,1,224,31,252,1,224,30,254,1,224, + 30,126,1,224,30,63,1,224,30,63,129,224,30,31,129,224, + 30,15,193,224,30,7,225,224,30,7,225,224,30,3,241,224, + 30,1,249,224,30,1,253,224,30,0,253,224,30,0,127,224, + 30,0,63,224,30,0,63,224,30,0,31,224,30,0,15,224, + 30,0,7,224,63,0,7,224,255,192,3,224,255,192,0,224, + 27,30,120,30,1,0,0,31,192,0,0,255,240,0,3,225, + 252,0,7,128,126,0,15,0,63,0,31,0,31,0,30,0, + 31,128,62,0,15,128,126,0,15,192,124,0,15,192,124,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,254,0,7,192,126,0,15,192,126,0,15,128,127,0, + 15,128,63,0,31,0,31,128,31,0,31,192,62,0,15,240, + 252,0,7,255,240,0,1,255,224,0,0,127,0,0,25,30, + 120,27,0,0,3,255,192,0,255,255,248,0,127,193,252,0, + 143,192,126,0,15,192,63,0,15,192,63,0,15,192,31,128, + 15,192,31,128,15,192,31,128,15,192,31,128,15,192,31,128, + 15,192,31,0,15,192,63,0,15,192,62,0,15,192,126,0, + 15,208,252,0,15,223,240,0,15,207,192,0,15,192,0,0, + 15,192,0,0,15,192,0,0,15,192,0,0,15,192,0,0, + 15,192,0,0,15,192,0,0,15,192,0,0,15,192,0,0, + 31,224,0,0,127,252,0,0,127,252,0,0,32,38,152,30, + 1,248,0,31,192,0,0,255,240,0,3,225,252,0,7,128, + 126,0,15,0,63,0,31,0,31,0,30,0,31,128,62,0, + 15,128,126,0,15,192,124,0,15,192,124,0,7,192,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,252,0, + 7,224,252,0,7,224,252,0,7,224,252,0,7,224,254,0, + 7,192,126,0,15,192,126,0,15,128,127,0,15,128,63,0, + 31,0,31,128,31,0,31,192,62,0,15,240,252,0,7,255, + 248,0,1,255,224,0,0,127,240,0,0,1,252,0,0,0, + 254,2,0,0,63,135,0,0,31,255,0,0,15,254,0,0, + 3,252,0,0,1,252,0,0,0,120,29,30,120,29,0,0, + 7,255,128,0,255,255,240,0,127,193,252,0,143,192,126,0, + 15,192,126,0,15,192,63,0,15,192,63,0,15,192,63,0, + 15,192,63,0,15,192,63,0,15,192,126,0,15,192,126,0, + 15,192,252,0,15,255,248,0,15,255,240,0,15,255,192,0, + 15,199,192,0,15,195,224,0,15,193,240,0,15,193,240,0, + 15,192,248,0,15,192,252,0,15,192,126,0,15,192,126,0, + 15,192,63,0,15,192,63,128,15,192,31,192,31,224,31,248, + 127,248,15,248,127,248,15,128,20,30,90,25,3,0,1,255, + 0,15,255,192,30,15,224,60,7,192,120,3,192,248,1,128, + 248,0,0,252,0,0,254,0,0,255,0,0,127,192,0,127, + 240,0,63,252,0,31,255,0,7,255,128,1,255,192,0,127, + 224,0,31,224,0,7,240,0,3,240,0,1,240,192,1,240, + 224,1,240,224,1,224,240,3,224,248,3,192,254,15,128,255, + 255,0,127,254,0,15,240,0,27,30,120,28,0,0,127,255, + 255,224,127,255,255,224,112,31,128,224,112,31,128,224,96,31, + 128,224,96,31,128,224,224,31,128,96,64,31,128,96,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,63,192,0,1,255, + 248,0,1,255,248,0,29,30,120,32,1,0,255,240,31,248, + 255,240,31,248,63,192,7,224,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,192,31,128,3,192,31,128,3,192,31,128,3,192, + 31,128,3,128,31,192,7,128,15,192,7,128,15,224,7,0, + 7,224,15,0,3,248,62,0,1,255,252,0,0,255,240,0, + 0,31,192,0,31,30,120,32,0,0,255,240,7,254,255,240, + 7,254,31,128,0,240,15,192,0,224,15,192,0,224,15,192, + 1,224,7,224,1,192,7,224,3,192,3,240,3,192,3,240, + 3,128,3,240,7,128,1,248,7,128,1,248,7,0,0,248, + 15,0,0,252,14,0,0,252,14,0,0,126,30,0,0,126, + 28,0,0,62,28,0,0,63,60,0,0,63,56,0,0,31, + 248,0,0,31,240,0,0,15,240,0,0,15,240,0,0,15, + 224,0,0,7,224,0,0,7,224,0,0,3,192,0,0,3, + 0,0,41,30,180,41,0,0,255,240,12,3,255,128,255,240, + 30,3,255,128,31,128,30,0,124,0,15,128,30,0,56,0, + 15,128,63,0,120,0,15,128,63,0,120,0,15,192,63,128, + 112,0,7,192,127,128,112,0,7,192,127,128,112,0,7,192, + 127,192,240,0,7,224,247,192,224,0,3,224,231,224,224,0, + 3,224,227,224,224,0,3,225,227,225,224,0,3,241,195,241, + 224,0,3,241,193,241,192,0,1,243,193,241,192,0,1,243, + 128,249,192,0,1,251,128,251,192,0,1,255,128,255,192,0, + 0,255,0,127,128,0,0,255,0,127,128,0,0,254,0,127, + 128,0,0,254,0,63,128,0,0,126,0,63,0,0,0,124, + 0,31,0,0,0,124,0,31,0,0,0,124,0,31,0,0, + 0,120,0,14,0,0,0,48,0,12,0,0,29,30,120,30, + 1,0,255,240,127,240,255,240,127,240,63,192,31,128,31,192, + 15,0,15,192,30,0,7,224,60,0,7,240,60,0,3,240, + 120,0,1,248,240,0,1,252,240,0,0,255,224,0,0,127, + 192,0,0,127,192,0,0,63,128,0,0,31,128,0,0,31, + 192,0,0,63,224,0,0,127,224,0,0,127,240,0,0,243, + 248,0,1,241,248,0,1,225,252,0,3,192,254,0,7,192, + 126,0,7,128,63,0,15,0,63,128,31,0,31,192,63,0, + 63,224,255,192,255,248,255,192,255,248,29,30,120,29,0,0, + 127,0,31,248,255,128,31,248,31,192,3,192,15,192,3,128, + 7,224,7,128,3,240,7,0,3,240,15,0,1,248,14,0, + 1,248,30,0,0,252,28,0,0,124,60,0,0,126,56,0, + 0,63,120,0,0,63,240,0,0,31,240,0,0,31,224,0, + 0,15,224,0,0,15,192,0,0,15,192,0,0,15,192,0, + 0,15,192,0,0,15,192,0,0,15,192,0,0,15,192,0, + 0,15,192,0,0,15,192,0,0,15,192,0,0,31,224,0, + 0,255,252,0,0,255,252,0,23,30,90,26,1,0,63,255, + 254,63,255,254,60,0,254,56,1,252,56,1,248,48,3,248, + 48,7,240,64,7,240,0,15,224,0,15,192,0,31,192,0, + 63,128,0,63,128,0,127,0,0,126,0,0,254,0,1,252, + 0,1,252,0,3,248,0,3,248,0,7,240,0,15,224,0, + 15,224,4,31,192,6,31,192,6,63,128,14,127,0,14,127, + 0,30,255,255,254,127,255,254,12,45,90,16,3,248,255,240, + 255,240,255,240,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,255,240,255,240,255,240,21,46,138,23,1,248,224,0, + 0,248,0,0,120,0,0,120,0,0,124,0,0,60,0,0, + 60,0,0,62,0,0,30,0,0,31,0,0,15,0,0,15, + 0,0,15,128,0,7,128,0,7,128,0,7,192,0,3,192, + 0,3,192,0,3,224,0,1,224,0,1,240,0,0,240,0, + 0,240,0,0,248,0,0,120,0,0,120,0,0,124,0,0, + 60,0,0,60,0,0,62,0,0,30,0,0,31,0,0,15, + 0,0,15,0,0,15,128,0,7,128,0,7,128,0,7,192, + 0,3,192,0,3,192,0,1,224,0,1,224,0,1,240,0, + 0,240,0,0,240,0,0,56,12,45,90,16,1,248,255,240, + 255,240,255,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,1,240,1,240,1,240,1,240,1,240,1,240,1,240, + 1,240,255,240,255,240,255,240,19,23,69,24,2,13,0,32, + 0,0,112,0,0,240,0,1,240,0,1,248,0,1,248,0, + 3,188,0,3,188,0,7,60,0,7,30,0,6,30,0,14, + 14,0,14,15,0,12,15,0,28,7,128,28,7,128,24,3, + 128,56,3,192,48,3,192,112,1,224,112,1,224,96,0,224, + 192,0,192,21,3,9,23,1,250,127,255,248,127,255,248,255, + 255,240,11,11,22,15,0,24,60,0,252,0,254,0,126,0, + 63,0,31,0,15,128,7,128,3,192,1,192,0,224,23,22, + 66,24,1,0,0,255,0,15,255,128,31,15,192,62,7,224, + 126,7,224,252,7,224,96,7,224,0,7,224,0,31,224,1, + 255,224,7,255,224,31,231,224,63,135,224,63,7,224,126,7, + 224,126,7,224,126,7,224,126,31,228,127,63,252,63,247,254, + 63,231,240,15,131,128,24,36,108,26,0,0,3,0,0,63, + 128,0,255,128,0,127,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,131,224,31,143,248,31,191,252,31, + 255,252,31,240,254,31,192,126,31,128,63,31,128,63,31,128, + 31,31,128,31,31,128,31,31,128,31,31,128,31,31,128,30, + 31,128,30,31,128,60,31,128,56,31,240,248,31,255,240,15, + 255,192,3,255,128,0,126,0,20,22,66,22,1,0,0,127, + 128,1,255,240,7,135,224,15,3,224,30,1,224,62,0,192, + 124,0,192,124,0,0,252,0,0,252,0,0,252,0,0,252, + 0,0,252,0,0,252,0,0,254,0,0,126,0,32,127,0, + 112,63,193,224,63,255,192,31,255,128,7,255,0,1,252,0, + 25,36,144,27,2,0,0,0,56,0,0,15,248,0,0,15, + 248,0,0,3,248,0,0,1,248,0,0,1,248,0,0,1, + 248,0,0,1,248,0,0,1,248,0,0,1,248,0,0,1, + 248,0,0,1,248,0,0,1,248,0,0,1,248,0,0,249, + 248,0,7,255,248,0,15,255,248,0,31,135,248,0,63,3, + 248,0,62,1,248,0,126,1,248,0,124,1,248,0,252,1, + 248,0,252,1,248,0,252,1,248,0,252,1,248,0,252,1, + 248,0,252,1,248,0,254,1,248,0,126,1,248,0,127,3, + 248,0,127,135,253,0,63,255,255,128,31,253,254,0,15,248, + 252,0,3,224,224,0,19,22,66,23,2,0,0,252,0,7, + 255,0,15,31,128,30,15,128,62,15,192,124,7,192,124,7, + 224,124,7,224,252,7,224,255,255,224,255,255,128,252,0,0, + 252,0,0,252,0,0,254,0,0,126,0,64,127,0,224,63, + 131,192,63,255,128,31,255,0,15,254,0,3,248,0,20,37, + 111,16,1,0,0,15,128,0,63,224,0,255,240,1,255,224, + 3,227,224,7,193,192,7,193,0,15,128,0,15,128,0,15, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,127,255,0,255,254,0,31,132,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,63,224,0,255,252,0, + 255,252,0,25,33,132,25,0,245,0,126,1,128,3,255,223, + 128,7,135,255,0,15,3,254,0,30,1,240,0,30,0,248, + 0,62,0,248,0,62,0,248,0,62,0,248,0,62,0,248, + 0,63,0,240,0,31,129,224,0,15,195,192,0,7,255,128, + 0,1,254,0,0,3,224,0,0,7,192,0,0,15,192,0, + 0,31,254,0,0,31,255,240,0,15,255,252,0,7,255,254, + 0,15,159,255,0,62,0,127,0,124,0,63,0,252,0,31, + 0,252,0,30,0,254,0,30,0,255,0,60,0,127,192,248, + 0,63,255,240,0,15,255,192,0,1,254,0,0,26,36,144, + 28,1,0,1,128,0,0,63,128,0,0,255,128,0,0,255, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,129,240,0,31, + 143,252,0,31,159,252,0,31,255,254,0,31,248,254,0,31, + 224,126,0,31,192,126,0,31,128,126,0,31,128,126,0,31, + 128,126,0,31,128,126,0,31,128,126,0,31,128,126,0,31, + 128,126,0,31,128,126,0,31,128,126,0,31,128,126,0,31, + 128,126,0,31,128,126,0,63,192,255,0,255,243,255,192,255, + 243,255,192,12,32,64,14,1,0,7,128,15,192,31,192,31, + 192,31,128,15,0,0,0,0,0,0,0,0,0,3,128,127, + 128,255,128,127,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,63,192,255,240,255,240,17,43,129,14,250,245,0, + 15,0,0,31,128,0,63,128,0,63,128,0,63,0,0,30, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,128, + 0,127,128,0,255,128,0,127,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,0,0,31,0,0,62,0,16,62, + 0,60,124,0,127,248,0,255,224,0,255,192,0,63,0,0, + 26,36,144,26,1,0,1,128,0,0,63,128,0,0,255,128, + 0,0,255,128,0,0,31,128,0,0,31,128,0,0,31,128, + 0,0,31,128,0,0,31,128,0,0,31,128,0,0,31,128, + 0,0,31,128,0,0,31,128,0,0,31,128,0,0,31,129, + 255,128,31,129,255,128,31,128,252,0,31,128,248,0,31,131, + 224,0,31,135,192,0,31,143,128,0,31,158,0,0,31,188, + 0,0,31,252,0,0,31,190,0,0,31,191,0,0,31,159, + 128,0,31,143,192,0,31,135,224,0,31,135,240,0,31,131, + 248,0,31,129,252,0,31,128,252,0,63,128,255,192,255,240, + 127,192,255,240,62,0,12,36,72,14,1,0,1,128,63,128, + 255,128,255,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,192, + 255,240,255,240,39,22,110,41,1,0,3,3,224,31,128,127, + 143,248,127,192,255,159,249,255,224,127,255,255,255,240,31,241, + 255,135,240,31,224,255,3,240,31,128,252,3,240,31,128,252, + 3,240,31,128,252,3,240,31,128,252,3,240,31,128,252,3, + 240,31,128,252,3,240,31,128,252,3,240,31,128,252,3,240, + 31,128,252,3,240,31,128,252,3,240,31,128,252,3,240,31, + 128,252,3,240,31,128,252,3,240,63,128,252,3,248,255,247, + 255,159,254,255,247,255,159,254,26,22,88,28,1,0,3,1, + 240,0,127,135,252,0,255,159,252,0,63,191,254,0,31,248, + 254,0,31,224,126,0,31,192,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,63,192,255,0,255,243, + 255,192,255,243,255,192,21,22,66,25,2,0,0,252,0,3, + 255,0,15,15,192,30,7,224,62,7,224,62,3,240,124,3, + 240,124,1,248,252,1,248,252,1,248,252,1,248,252,1,248, + 252,1,248,252,1,248,252,1,240,126,1,240,126,3,224,62, + 3,224,63,3,192,31,135,128,7,254,0,1,248,0,24,33, + 99,27,1,245,3,3,224,127,143,248,255,159,252,63,255,252, + 31,240,254,31,192,126,31,128,63,31,128,63,31,128,31,31, + 128,31,31,128,31,31,128,31,31,128,31,31,128,30,31,128, + 30,31,128,62,31,192,60,31,240,124,31,255,248,31,255,240, + 31,159,224,31,135,128,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,63,192, + 0,255,248,0,255,248,0,24,33,99,26,2,245,0,124,8, + 1,255,28,7,255,248,15,135,248,30,3,248,62,1,248,124, + 1,248,124,1,248,252,1,248,252,1,248,252,1,248,252,1, + 248,252,1,248,252,1,248,254,1,248,126,1,248,127,3,248, + 127,143,248,63,255,248,31,253,248,15,249,248,3,225,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1, + 248,0,1,248,0,1,248,0,3,248,0,31,255,0,31,255, + 20,22,66,21,1,0,3,7,192,127,143,240,255,191,240,63, + 255,224,31,241,224,31,224,224,31,192,224,31,128,192,31,128, + 192,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 192,0,255,248,0,255,248,0,16,22,44,20,2,0,7,248, + 31,254,60,62,120,30,248,14,248,12,252,0,255,0,127,192, + 127,240,63,248,15,254,3,254,0,255,128,127,192,63,224,31, + 224,31,240,30,248,60,255,248,63,224,18,30,90,18,255,0, + 0,192,0,1,192,0,7,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,63,255,192,255,255,128,15,193, + 0,15,192,0,15,192,0,15,192,0,15,192,0,15,192,0, + 15,192,0,15,192,0,15,192,0,15,192,0,15,192,0,15, + 192,0,15,192,0,15,192,0,15,192,128,15,227,192,15,255, + 128,7,255,0,3,252,0,1,240,0,26,22,88,27,1,0, + 3,128,28,0,255,135,252,0,255,135,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,129,252,0,31,199,252,128,31,255,255,128,15,254,255,192, + 7,248,126,0,3,224,112,0,24,22,66,24,0,0,255,224, + 255,255,224,255,63,128,60,31,128,60,31,128,56,15,192,120, + 15,192,112,7,192,112,7,224,240,7,224,224,3,241,224,3, + 241,192,1,249,192,1,251,128,0,255,128,0,255,128,0,127, + 0,0,127,0,0,126,0,0,62,0,0,60,0,0,24,0, + 34,22,110,34,0,0,255,224,96,63,192,255,224,112,63,192, + 63,0,240,7,0,31,0,248,15,0,31,128,248,14,0,15, + 129,252,14,0,15,129,252,30,0,15,195,252,28,0,7,195, + 254,28,0,7,195,190,28,0,7,231,63,60,0,3,231,31, + 56,0,3,239,31,184,0,3,254,31,248,0,1,254,15,240, + 0,1,252,15,240,0,1,252,7,240,0,0,252,7,224,0, + 0,248,3,224,0,0,248,3,224,0,0,112,1,192,0,0, + 96,1,128,0,25,22,88,25,0,0,127,241,255,0,127,241, + 255,0,31,192,124,0,15,224,112,0,7,224,224,0,7,241, + 224,0,3,251,192,0,1,255,128,0,0,255,0,0,0,254, + 0,0,0,127,0,0,0,127,0,0,0,127,128,0,0,255, + 192,0,1,207,224,0,3,199,224,0,7,131,240,0,7,3, + 248,0,14,1,252,0,30,1,254,0,255,135,255,128,255,135, + 255,128,25,33,132,24,255,245,127,240,127,128,127,240,127,128, + 31,192,30,0,15,192,28,0,15,192,28,0,7,224,60,0, + 7,224,56,0,3,240,56,0,3,240,112,0,1,240,112,0, + 1,248,240,0,1,248,224,0,0,252,224,0,0,253,224,0, + 0,125,192,0,0,127,192,0,0,127,128,0,0,63,128,0, + 0,63,128,0,0,31,0,0,0,31,0,0,0,14,0,0, + 0,14,0,0,0,30,0,0,0,28,0,0,0,60,0,0, + 0,120,0,0,32,248,0,0,63,240,0,0,127,224,0,0, + 255,192,0,0,255,128,0,0,126,0,0,0,20,22,66,22, + 1,0,63,255,240,63,255,240,56,15,224,56,15,192,48,31, + 192,48,31,128,32,63,0,0,127,0,0,126,0,0,252,0, + 1,252,0,1,248,0,3,240,0,7,240,0,7,224,0,15, + 224,48,31,192,48,31,128,112,63,128,112,127,0,240,127,255, + 240,255,255,224,14,45,90,17,2,249,0,8,0,60,0,248, + 1,240,3,224,7,224,7,192,15,192,15,192,15,192,15,192, + 15,192,15,224,7,224,7,224,7,224,7,224,7,224,7,192, + 15,192,15,128,63,0,254,0,255,128,31,192,7,192,7,224, + 7,224,7,224,7,224,7,224,7,224,15,224,15,192,15,192, + 15,192,15,192,15,192,15,192,7,192,7,224,3,240,0,248, + 0,124,0,8,4,49,49,11,4,246,48,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,192,14,44,88,17,1, + 249,64,0,248,0,124,0,63,0,31,128,15,128,15,192,15, + 192,15,192,15,192,15,192,15,192,31,192,31,128,31,128,31, + 128,31,128,31,128,31,128,15,192,15,252,7,252,1,248,7, + 224,15,192,15,128,31,128,31,128,31,128,31,128,31,128,31, + 192,15,192,15,192,15,192,15,192,15,192,15,128,31,128,31, + 0,62,0,124,0,240,0,64,0,21,8,24,23,1,11,7, + 128,8,15,224,24,31,240,16,63,252,48,49,255,224,96,127, + 192,64,31,128,192,15,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--17-170-72-72-P-77-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=14 h=17 x= 2 y= 9 dx=14 dy= 0 ascent=15 len=30 + Font Bounding box w=25 h=24 x=-9 y=-6 + Calculated Min Values x=-2 y=-5 dx= 0 dy= 0 + Pure Font ascent =10 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =15 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr10[3670] U8G_SECTION(".progmem.u8g_font_gdr10") = { + 0,25,24,247,250,10,2,30,4,177,32,255,252,15,251,13, + 252,0,0,0,4,0,0,2,12,12,5,1,0,64,192,64, + 64,64,64,64,64,64,0,64,64,5,5,5,7,1,7,216, + 216,88,72,72,7,9,9,8,1,1,20,36,126,40,72,252, + 80,80,144,7,12,12,8,0,255,16,56,84,80,112,56,30, + 18,146,212,120,16,10,10,20,12,1,0,96,128,145,0,146, + 0,150,0,164,0,105,128,18,64,50,64,34,64,65,128,10, + 12,24,11,1,0,28,0,36,0,36,0,36,0,40,0,51, + 192,81,0,153,0,141,0,134,0,135,0,121,192,2,5,5, + 4,1,7,192,192,64,64,64,3,16,16,5,1,253,32,64, + 64,128,128,128,128,128,128,128,128,128,128,64,64,32,3,16, + 16,5,1,253,128,64,64,32,32,32,32,32,32,32,32,32, + 32,64,64,128,6,7,7,8,1,6,32,168,236,48,252,164, + 32,6,6,6,7,1,2,32,32,32,252,32,32,2,4,4, + 4,1,253,192,64,64,128,4,1,1,6,1,4,240,1,2, + 2,4,2,0,128,128,8,16,16,8,0,253,3,2,6,4, + 4,12,8,8,16,16,48,32,32,96,64,192,6,10,10,8, + 1,0,56,72,132,132,132,132,132,132,72,112,5,10,10,8, + 2,0,32,224,32,32,32,32,32,32,32,248,5,10,10,8, + 2,0,56,200,136,8,16,32,32,64,136,248,6,10,10,8, + 1,0,112,136,136,16,48,8,4,4,140,120,6,10,10,8, + 1,0,8,24,40,40,72,136,252,8,8,60,6,10,10,8, + 1,0,124,64,64,120,140,4,4,4,132,120,6,10,10,8, + 1,0,24,32,64,128,248,132,132,132,72,56,6,10,10,8, + 1,0,252,132,8,8,8,16,16,32,32,64,6,10,10,8, + 1,0,120,196,196,200,56,204,132,132,132,120,6,10,10,8, + 1,0,56,200,132,132,132,124,4,8,16,96,1,8,8,4, + 2,0,128,128,0,0,0,0,128,128,2,11,11,4,1,253, + 64,64,0,0,0,0,0,192,64,64,128,6,5,5,7,1, + 2,12,112,128,112,12,6,3,3,7,1,3,252,0,252,6, + 5,5,7,1,2,192,56,12,112,128,6,12,12,7,1,0, + 56,68,132,4,4,8,16,32,32,32,32,32,12,14,28,14, + 1,253,15,128,16,64,96,32,71,144,136,144,144,144,144,144, + 144,144,144,144,137,160,78,192,96,0,48,96,15,128,10,10, + 20,10,0,0,4,0,12,0,20,0,18,0,18,0,30,0, + 33,0,33,0,65,128,227,192,7,10,10,9,1,0,248,68, + 68,68,124,70,66,66,66,252,7,10,10,9,1,0,62,66, + 128,128,128,128,128,128,66,60,8,10,10,10,1,0,252,70, + 65,65,65,65,65,66,66,252,7,10,10,8,1,0,252,68, + 64,64,124,64,64,64,66,254,7,10,10,8,1,0,254,68, + 64,64,120,64,64,64,64,224,9,10,20,10,1,0,30,0, + 99,0,128,0,128,0,128,0,135,128,129,0,129,0,97,0, + 62,0,9,10,20,11,1,0,227,128,65,0,65,0,65,0, + 127,0,65,0,65,0,65,0,65,0,227,128,3,10,10,5, + 1,0,224,64,64,64,64,64,64,64,64,224,6,13,13,5, + 254,253,60,8,8,8,8,8,8,8,8,8,8,16,224,9, + 10,20,10,1,0,231,0,68,0,72,0,80,0,96,0,80, + 0,88,0,76,0,70,0,227,128,7,10,10,8,1,0,224, + 64,64,64,64,64,64,64,66,254,12,10,20,14,1,0,192, + 112,96,96,96,224,112,224,81,96,89,32,74,32,78,32,68, + 32,228,240,9,10,20,11,1,0,195,128,97,0,97,0,81, + 0,73,0,77,0,69,0,67,0,67,0,225,0,8,10,10, + 10,1,0,60,66,129,129,129,129,129,130,66,60,7,10,10, + 9,1,0,252,70,66,66,70,120,64,64,64,224,10,12,24, + 10,1,254,60,0,66,0,129,0,129,0,129,0,129,0,129, + 0,130,0,66,0,60,0,6,128,3,192,9,10,20,10,1, + 0,252,0,70,0,66,0,66,0,68,0,120,0,76,0,68, + 0,70,0,227,128,6,10,10,8,1,0,120,140,128,192,112, + 8,4,132,132,248,9,10,20,9,0,0,255,128,136,128,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,28,0,9, + 10,20,11,1,0,227,128,65,0,65,0,65,0,65,0,65, + 0,65,0,65,0,34,0,60,0,11,10,20,11,0,0,241, + 224,32,128,32,128,49,0,17,0,25,0,10,0,10,0,14, + 0,4,0,14,10,20,14,0,0,241,28,99,8,35,16,35, + 144,36,144,52,144,20,80,24,96,24,96,24,32,10,10,20, + 10,0,0,243,192,33,0,51,0,26,0,12,0,12,0,18, + 0,49,0,33,128,243,192,9,10,20,10,1,0,195,128,97, + 0,50,0,22,0,28,0,8,0,8,0,8,0,8,0,28, + 0,8,10,10,9,0,0,127,66,70,4,8,24,16,33,97, + 255,4,16,16,5,1,253,240,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,240,8,16,16,8,0,253,192,64,64, + 32,32,48,16,16,8,8,12,4,4,6,2,3,4,16,16, + 5,0,253,240,16,16,16,16,16,16,16,16,16,16,16,16, + 16,16,240,7,8,8,8,1,5,16,48,56,72,72,76,132, + 134,6,1,1,8,1,254,252,4,3,3,5,0,9,192,96, + 48,7,8,8,8,1,0,28,100,4,28,100,132,140,118,8, + 13,13,9,0,0,64,192,64,64,64,78,115,65,65,65,65, + 66,60,6,8,8,7,1,0,60,72,128,128,128,128,196,120, + 8,13,13,9,1,0,6,2,2,2,2,62,66,130,130,130, + 130,70,59,6,8,8,8,1,0,56,68,132,252,128,128,68, + 120,6,13,13,5,1,0,28,40,64,64,64,240,64,64,64, + 64,64,64,240,8,12,12,8,0,252,63,70,130,130,196,56, + 96,60,195,129,194,124,8,13,13,9,1,0,64,192,64,64, + 64,78,82,98,66,66,66,66,231,3,11,11,5,1,0,64, + 192,0,64,192,64,64,64,64,64,224,5,15,15,4,254,252, + 8,24,0,8,24,8,8,8,8,8,8,8,8,16,224,8, + 13,13,9,1,0,64,192,64,64,64,78,72,80,96,80,72, + 76,231,3,13,13,5,1,0,64,192,64,64,64,64,64,64, + 64,64,64,64,224,11,8,16,12,1,0,221,192,102,64,68, + 64,68,64,68,64,68,64,68,64,238,224,8,8,8,9,1, + 0,78,210,98,66,66,66,66,231,7,8,8,9,1,0,56, + 68,130,130,130,130,68,56,7,12,12,9,1,252,92,230,66, + 66,66,66,68,120,64,64,64,224,8,12,12,9,1,252,62, + 66,130,130,130,130,70,58,2,2,2,7,6,8,8,7,1, + 0,220,104,64,64,64,64,64,224,5,8,8,7,1,0,112, + 136,128,96,24,136,136,240,5,10,10,6,1,0,64,64,248, + 64,64,64,64,64,64,120,9,8,16,9,0,0,195,0,65, + 0,65,0,65,0,65,0,65,0,67,0,61,128,8,8,8, + 8,0,0,227,98,34,36,52,20,24,8,12,8,16,12,0, + 0,226,112,102,32,38,32,39,64,41,64,57,64,24,128,16, + 128,8,8,8,9,0,0,247,34,52,24,28,36,66,231,8, + 12,12,8,0,252,231,98,34,36,52,20,24,8,8,16,160, + 192,6,8,8,8,1,0,252,136,16,48,32,64,196,252,4, + 16,16,6,1,253,48,64,64,64,96,32,32,64,224,32,32, + 96,64,64,64,32,1,17,17,4,2,253,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,5,16,16,5, + 0,253,64,32,32,32,32,32,32,56,48,32,32,32,32,32, + 32,192,8,2,2,8,0,4,57,206,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,0,0,0,4,0, + 0,2,13,13,5,1,251,64,64,0,0,64,64,64,64,64, + 64,64,192,192,6,10,10,8,1,0,16,28,116,144,144,144, + 144,116,56,16,7,11,11,8,1,255,60,68,68,64,64,240, + 64,64,66,134,252,4,6,6,8,2,2,144,240,144,144,240, + 144,9,10,20,8,255,0,231,128,34,0,22,0,20,0,8, + 0,62,0,8,0,8,0,8,0,28,0,1,17,17,4,2, + 253,128,128,128,128,128,128,128,128,0,128,128,128,128,128,128, + 128,128,6,12,12,8,1,0,112,152,128,96,184,140,196,100, + 24,136,200,112,5,2,2,7,1,9,136,136,10,10,20,12, + 1,0,30,0,127,128,114,128,160,64,160,64,160,64,176,64, + 94,128,97,128,30,0,4,6,6,4,0,5,96,160,96,160, + 240,240,6,8,8,8,1,0,36,72,72,144,144,72,72,36, + 7,3,3,8,0,2,254,2,2,4,1,1,6,1,4,240, + 6,6,6,6,0,6,120,132,180,180,180,120,6,1,1,8, + 1,9,252,4,4,4,6,1,6,112,144,144,224,6,8,8, + 7,1,1,32,32,32,252,32,32,64,248,4,7,7,6,1, + 5,112,144,16,32,64,144,240,4,7,7,5,0,5,112,144, + 16,48,16,144,224,3,3,3,5,2,9,96,64,128,9,12, + 24,9,0,252,195,0,65,0,65,0,65,0,65,0,65,0, + 99,0,125,128,64,0,64,0,96,0,96,0,8,12,12,10, + 1,254,63,202,138,138,202,122,10,10,10,10,10,31,1,2, + 2,2,1,5,128,128,2,4,4,4,1,252,128,192,64,128, + 4,6,6,6,0,5,96,160,32,32,32,112,4,6,6,5, + 0,5,96,144,144,144,96,240,7,8,8,8,1,0,144,72, + 108,36,54,108,72,144,9,10,20,10,1,0,193,0,66,0, + 66,0,68,0,72,0,169,0,23,0,37,0,39,128,67,128, + 8,10,10,10,1,0,193,66,68,68,72,171,21,34,37,79, + 10,11,22,10,0,0,112,0,80,128,33,0,18,0,18,0, + 228,0,8,128,11,128,18,128,19,192,33,192,6,13,13,8, + 1,251,32,32,0,32,32,32,64,64,128,128,132,136,112,10, + 15,30,10,0,0,32,0,24,0,12,0,0,0,0,0,4, + 0,12,0,20,0,18,0,18,0,30,0,33,0,33,0,65, + 128,227,192,10,15,30,10,0,0,2,0,7,0,12,0,16, + 0,0,0,4,0,12,0,20,0,18,0,18,0,30,0,33, + 0,33,0,65,128,227,192,10,15,30,10,0,0,12,0,12, + 0,18,0,33,0,0,0,4,0,12,0,20,0,18,0,18, + 0,30,0,33,0,33,0,65,128,227,192,10,14,28,10,0, + 0,10,0,25,0,38,0,0,0,4,0,12,0,20,0,18, + 0,18,0,30,0,33,0,33,0,65,128,227,192,10,13,26, + 10,0,0,34,0,34,0,0,0,4,0,12,0,20,0,18, + 0,18,0,30,0,33,0,33,0,65,128,227,192,10,15,30, + 10,0,0,12,0,20,0,28,0,0,0,0,0,4,0,12, + 0,20,0,18,0,18,0,30,0,33,0,33,0,65,128,227, + 192,12,10,20,13,1,0,31,224,10,32,10,0,18,0,31, + 224,50,0,34,0,34,0,66,16,231,240,7,14,14,9,1, + 252,62,66,128,128,128,128,128,128,66,102,24,24,8,16,7, + 15,15,8,1,0,64,224,16,8,0,252,68,64,64,124,64, + 64,64,66,254,7,15,15,8,1,0,8,28,48,0,0,252, + 68,64,64,124,64,64,64,66,254,7,15,15,8,1,0,16, + 56,72,4,0,252,68,64,64,124,64,64,64,66,254,7,13, + 13,8,1,0,136,136,0,252,68,64,64,124,64,64,64,66, + 254,4,15,15,5,0,0,128,192,32,16,0,112,32,32,32, + 32,32,32,32,32,112,4,15,15,5,1,0,32,48,64,128, + 0,224,64,64,64,64,64,64,64,64,224,5,15,15,5,0, + 0,32,112,136,0,0,112,32,32,32,32,32,32,32,32,112, + 5,13,13,5,0,0,136,136,0,112,32,32,32,32,32,32, + 32,32,112,8,10,10,10,1,0,252,70,65,65,241,65,65, + 66,66,252,9,14,28,11,1,0,18,0,58,0,4,0,0, + 0,195,128,97,0,97,0,81,0,73,0,77,0,69,0,67, + 0,67,0,225,0,8,15,15,10,1,0,32,112,8,4,0, + 60,66,129,129,129,129,129,130,66,60,8,15,15,10,1,0, + 4,14,24,0,0,60,66,129,129,129,129,129,130,66,60,8, + 15,15,10,1,0,8,28,36,66,0,60,66,129,129,129,129, + 129,130,66,60,8,14,14,10,1,0,18,50,76,0,60,66, + 129,129,129,129,129,130,66,60,8,13,13,10,1,0,68,68, + 0,60,66,129,129,129,129,129,130,66,60,5,5,5,7,1, + 2,136,80,32,80,136,8,10,10,10,1,0,29,98,131,133, + 137,145,161,194,66,188,9,15,30,11,1,0,32,0,48,0, + 12,0,0,0,0,0,227,128,65,0,65,0,65,0,65,0, + 65,0,65,0,65,0,34,0,60,0,9,15,30,11,1,0, + 2,0,6,0,8,0,16,0,0,0,227,128,65,0,65,0, + 65,0,65,0,65,0,65,0,65,0,34,0,60,0,9,15, + 30,11,1,0,8,0,28,0,34,0,0,0,0,0,227,128, + 65,0,65,0,65,0,65,0,65,0,65,0,65,0,34,0, + 60,0,9,13,26,11,1,0,34,0,34,0,0,0,227,128, + 65,0,65,0,65,0,65,0,65,0,65,0,65,0,34,0, + 60,0,9,15,30,10,1,0,4,0,14,0,24,0,0,0, + 0,0,195,128,97,0,50,0,22,0,28,0,8,0,8,0, + 8,0,8,0,28,0,7,10,10,9,1,0,224,64,124,70, + 66,66,66,124,64,224,8,13,13,10,1,0,28,38,66,66, + 68,72,80,88,78,67,81,81,206,7,12,12,8,1,0,64, + 32,16,0,28,100,4,28,100,132,140,118,7,12,12,8,1, + 0,8,16,32,0,28,100,4,28,100,132,140,118,7,12,12, + 8,1,0,48,72,136,4,28,100,4,28,100,132,140,118,7, + 11,11,8,1,0,100,152,0,28,100,4,28,100,132,140,118, + 7,11,11,8,1,0,136,136,0,28,100,4,28,100,132,140, + 118,7,12,12,8,1,0,48,80,112,0,28,100,4,28,100, + 132,140,118,10,8,16,12,1,0,59,128,204,64,136,64,63, + 192,72,0,136,0,156,192,231,0,6,12,12,7,1,252,60, + 72,128,128,128,128,196,120,32,48,16,32,6,12,12,8,1, + 0,96,32,16,0,56,68,132,252,128,128,68,120,6,12,12, + 8,1,0,12,24,32,0,56,68,132,252,128,128,68,120,6, + 12,12,8,1,0,48,72,132,0,56,68,132,252,128,128,68, + 120,6,11,11,8,1,0,132,136,0,56,68,132,252,128,128, + 68,120,4,12,12,5,0,0,192,64,32,0,32,96,32,32, + 32,32,32,112,4,12,12,5,1,0,48,96,64,0,64,192, + 64,64,64,64,64,224,5,12,12,5,0,0,32,80,136,0, + 32,96,32,32,32,32,32,112,5,11,11,5,0,0,136,136, + 0,32,96,32,32,32,32,32,112,6,12,12,8,1,0,104, + 28,120,8,52,204,132,132,132,132,72,112,8,11,11,9,1, + 0,54,76,0,78,210,98,66,66,66,66,231,7,12,12,9, + 1,0,96,32,16,0,56,68,130,130,130,130,68,56,7,12, + 12,9,1,0,12,8,16,0,56,68,130,130,130,130,68,56, + 7,12,12,9,1,0,16,40,68,0,56,68,130,130,130,130, + 68,56,7,11,11,9,1,0,52,216,0,56,68,130,130,130, + 130,68,56,7,11,11,9,1,0,132,132,0,56,68,130,130, + 130,130,68,56,5,6,6,7,1,2,32,32,0,248,32,32, + 7,8,8,9,1,0,62,68,142,146,146,226,68,248,9,12, + 24,9,0,0,48,0,24,0,8,0,0,0,195,0,65,0, + 65,0,65,0,65,0,65,0,67,0,61,128,9,12,24,9, + 0,0,6,0,4,0,8,0,0,0,195,0,65,0,65,0, + 65,0,65,0,65,0,67,0,61,128,9,12,24,9,0,0, + 8,0,20,0,34,0,0,0,195,0,65,0,65,0,65,0, + 65,0,65,0,67,0,61,128,9,11,22,9,0,0,34,0, + 66,0,0,0,195,0,65,0,65,0,65,0,65,0,65,0, + 67,0,61,128,8,16,16,8,0,252,6,12,8,0,231,98, + 34,36,52,20,24,8,8,16,160,192,7,17,17,9,1,252, + 64,192,64,64,64,92,102,66,66,66,66,100,120,64,64,64, + 224,8,15,15,8,0,252,66,66,0,231,98,34,36,52,20, + 24,8,8,16,160,192}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--17-170-72-72-P-77-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 10 + Calculated Max Values w= 8 h=16 x= 2 y= 6 dx= 8 dy= 0 ascent=13 len=16 + Font Bounding box w=25 h=24 x=-9 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =13 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr10n[249] U8G_SECTION(".progmem.u8g_font_gdr10n") = { + 0,25,24,247,250,10,0,0,0,0,42,57,0,13,253,10, + 0,6,7,7,8,1,6,32,168,236,48,252,164,32,6,6, + 6,7,1,2,32,32,32,252,32,32,2,4,4,4,1,253, + 192,64,64,128,4,1,1,6,1,4,240,1,2,2,4,2, + 0,128,128,8,16,16,8,0,253,3,2,6,4,4,12,8, + 8,16,16,48,32,32,96,64,192,6,10,10,8,1,0,56, + 72,132,132,132,132,132,132,72,112,5,10,10,8,2,0,32, + 224,32,32,32,32,32,32,32,248,5,10,10,8,2,0,56, + 200,136,8,16,32,32,64,136,248,6,10,10,8,1,0,112, + 136,136,16,48,8,4,4,140,120,6,10,10,8,1,0,8, + 24,40,40,72,136,252,8,8,60,6,10,10,8,1,0,124, + 64,64,120,140,4,4,4,132,120,6,10,10,8,1,0,24, + 32,64,128,248,132,132,132,72,56,6,10,10,8,1,0,252, + 132,8,8,8,16,16,32,32,64,6,10,10,8,1,0,120, + 196,196,200,56,204,132,132,132,120,6,10,10,8,1,0,56, + 200,132,132,132,124,4,8,16,96}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--17-170-72-72-P-77-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=14 h=17 x= 2 y= 9 dx=14 dy= 0 ascent=14 len=28 + Font Bounding box w=25 h=24 x=-9 y=-6 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =10 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =14 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr10r[1723] U8G_SECTION(".progmem.u8g_font_gdr10r") = { + 0,25,24,247,250,10,2,30,4,177,32,127,252,14,252,13, + 252,0,0,0,4,0,0,2,12,12,5,1,0,64,192,64, + 64,64,64,64,64,64,0,64,64,5,5,5,7,1,7,216, + 216,88,72,72,7,9,9,8,1,1,20,36,126,40,72,252, + 80,80,144,7,12,12,8,0,255,16,56,84,80,112,56,30, + 18,146,212,120,16,10,10,20,12,1,0,96,128,145,0,146, + 0,150,0,164,0,105,128,18,64,50,64,34,64,65,128,10, + 12,24,11,1,0,28,0,36,0,36,0,36,0,40,0,51, + 192,81,0,153,0,141,0,134,0,135,0,121,192,2,5,5, + 4,1,7,192,192,64,64,64,3,16,16,5,1,253,32,64, + 64,128,128,128,128,128,128,128,128,128,128,64,64,32,3,16, + 16,5,1,253,128,64,64,32,32,32,32,32,32,32,32,32, + 32,64,64,128,6,7,7,8,1,6,32,168,236,48,252,164, + 32,6,6,6,7,1,2,32,32,32,252,32,32,2,4,4, + 4,1,253,192,64,64,128,4,1,1,6,1,4,240,1,2, + 2,4,2,0,128,128,8,16,16,8,0,253,3,2,6,4, + 4,12,8,8,16,16,48,32,32,96,64,192,6,10,10,8, + 1,0,56,72,132,132,132,132,132,132,72,112,5,10,10,8, + 2,0,32,224,32,32,32,32,32,32,32,248,5,10,10,8, + 2,0,56,200,136,8,16,32,32,64,136,248,6,10,10,8, + 1,0,112,136,136,16,48,8,4,4,140,120,6,10,10,8, + 1,0,8,24,40,40,72,136,252,8,8,60,6,10,10,8, + 1,0,124,64,64,120,140,4,4,4,132,120,6,10,10,8, + 1,0,24,32,64,128,248,132,132,132,72,56,6,10,10,8, + 1,0,252,132,8,8,8,16,16,32,32,64,6,10,10,8, + 1,0,120,196,196,200,56,204,132,132,132,120,6,10,10,8, + 1,0,56,200,132,132,132,124,4,8,16,96,1,8,8,4, + 2,0,128,128,0,0,0,0,128,128,2,11,11,4,1,253, + 64,64,0,0,0,0,0,192,64,64,128,6,5,5,7,1, + 2,12,112,128,112,12,6,3,3,7,1,3,252,0,252,6, + 5,5,7,1,2,192,56,12,112,128,6,12,12,7,1,0, + 56,68,132,4,4,8,16,32,32,32,32,32,12,14,28,14, + 1,253,15,128,16,64,96,32,71,144,136,144,144,144,144,144, + 144,144,144,144,137,160,78,192,96,0,48,96,15,128,10,10, + 20,10,0,0,4,0,12,0,20,0,18,0,18,0,30,0, + 33,0,33,0,65,128,227,192,7,10,10,9,1,0,248,68, + 68,68,124,70,66,66,66,252,7,10,10,9,1,0,62,66, + 128,128,128,128,128,128,66,60,8,10,10,10,1,0,252,70, + 65,65,65,65,65,66,66,252,7,10,10,8,1,0,252,68, + 64,64,124,64,64,64,66,254,7,10,10,8,1,0,254,68, + 64,64,120,64,64,64,64,224,9,10,20,10,1,0,30,0, + 99,0,128,0,128,0,128,0,135,128,129,0,129,0,97,0, + 62,0,9,10,20,11,1,0,227,128,65,0,65,0,65,0, + 127,0,65,0,65,0,65,0,65,0,227,128,3,10,10,5, + 1,0,224,64,64,64,64,64,64,64,64,224,6,13,13,5, + 254,253,60,8,8,8,8,8,8,8,8,8,8,16,224,9, + 10,20,10,1,0,231,0,68,0,72,0,80,0,96,0,80, + 0,88,0,76,0,70,0,227,128,7,10,10,8,1,0,224, + 64,64,64,64,64,64,64,66,254,12,10,20,14,1,0,192, + 112,96,96,96,224,112,224,81,96,89,32,74,32,78,32,68, + 32,228,240,9,10,20,11,1,0,195,128,97,0,97,0,81, + 0,73,0,77,0,69,0,67,0,67,0,225,0,8,10,10, + 10,1,0,60,66,129,129,129,129,129,130,66,60,7,10,10, + 9,1,0,252,70,66,66,70,120,64,64,64,224,10,12,24, + 10,1,254,60,0,66,0,129,0,129,0,129,0,129,0,129, + 0,130,0,66,0,60,0,6,128,3,192,9,10,20,10,1, + 0,252,0,70,0,66,0,66,0,68,0,120,0,76,0,68, + 0,70,0,227,128,6,10,10,8,1,0,120,140,128,192,112, + 8,4,132,132,248,9,10,20,9,0,0,255,128,136,128,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,28,0,9, + 10,20,11,1,0,227,128,65,0,65,0,65,0,65,0,65, + 0,65,0,65,0,34,0,60,0,11,10,20,11,0,0,241, + 224,32,128,32,128,49,0,17,0,25,0,10,0,10,0,14, + 0,4,0,14,10,20,14,0,0,241,28,99,8,35,16,35, + 144,36,144,52,144,20,80,24,96,24,96,24,32,10,10,20, + 10,0,0,243,192,33,0,51,0,26,0,12,0,12,0,18, + 0,49,0,33,128,243,192,9,10,20,10,1,0,195,128,97, + 0,50,0,22,0,28,0,8,0,8,0,8,0,8,0,28, + 0,8,10,10,9,0,0,127,66,70,4,8,24,16,33,97, + 255,4,16,16,5,1,253,240,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,240,8,16,16,8,0,253,192,64,64, + 32,32,48,16,16,8,8,12,4,4,6,2,3,4,16,16, + 5,0,253,240,16,16,16,16,16,16,16,16,16,16,16,16, + 16,16,240,7,8,8,8,1,5,16,48,56,72,72,76,132, + 134,6,1,1,8,1,254,252,4,3,3,5,0,9,192,96, + 48,7,8,8,8,1,0,28,100,4,28,100,132,140,118,8, + 13,13,9,0,0,64,192,64,64,64,78,115,65,65,65,65, + 66,60,6,8,8,7,1,0,60,72,128,128,128,128,196,120, + 8,13,13,9,1,0,6,2,2,2,2,62,66,130,130,130, + 130,70,59,6,8,8,8,1,0,56,68,132,252,128,128,68, + 120,6,13,13,5,1,0,28,40,64,64,64,240,64,64,64, + 64,64,64,240,8,12,12,8,0,252,63,70,130,130,196,56, + 96,60,195,129,194,124,8,13,13,9,1,0,64,192,64,64, + 64,78,82,98,66,66,66,66,231,3,11,11,5,1,0,64, + 192,0,64,192,64,64,64,64,64,224,5,15,15,4,254,252, + 8,24,0,8,24,8,8,8,8,8,8,8,8,16,224,8, + 13,13,9,1,0,64,192,64,64,64,78,72,80,96,80,72, + 76,231,3,13,13,5,1,0,64,192,64,64,64,64,64,64, + 64,64,64,64,224,11,8,16,12,1,0,221,192,102,64,68, + 64,68,64,68,64,68,64,68,64,238,224,8,8,8,9,1, + 0,78,210,98,66,66,66,66,231,7,8,8,9,1,0,56, + 68,130,130,130,130,68,56,7,12,12,9,1,252,92,230,66, + 66,66,66,68,120,64,64,64,224,8,12,12,9,1,252,62, + 66,130,130,130,130,70,58,2,2,2,7,6,8,8,7,1, + 0,220,104,64,64,64,64,64,224,5,8,8,7,1,0,112, + 136,128,96,24,136,136,240,5,10,10,6,1,0,64,64,248, + 64,64,64,64,64,64,120,9,8,16,9,0,0,195,0,65, + 0,65,0,65,0,65,0,65,0,67,0,61,128,8,8,8, + 8,0,0,227,98,34,36,52,20,24,8,12,8,16,12,0, + 0,226,112,102,32,38,32,39,64,41,64,57,64,24,128,16, + 128,8,8,8,9,0,0,247,34,52,24,28,36,66,231,8, + 12,12,8,0,252,231,98,34,36,52,20,24,8,8,16,160, + 192,6,8,8,8,1,0,252,136,16,48,32,64,196,252,4, + 16,16,6,1,253,48,64,64,64,96,32,32,64,224,32,32, + 96,64,64,64,32,1,17,17,4,2,253,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,5,16,16,5, + 0,253,64,32,32,32,32,32,32,56,48,32,32,32,32,32, + 32,192,8,2,2,8,0,4,57,206,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--18-180-72-72-P-81-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=15 h=19 x= 2 y=10 dx=15 dy= 0 ascent=16 len=34 + Font Bounding box w=26 h=25 x=-9 y=-6 + Calculated Min Values x=-2 y=-5 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =16 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr11[3977] U8G_SECTION(".progmem.u8g_font_gdr11") = { + 0,26,25,247,250,11,2,61,5,21,32,255,252,16,251,14, + 252,0,0,0,4,0,0,2,13,13,5,1,0,64,64,64, + 64,64,64,64,64,64,64,0,192,128,5,6,6,8,1,7, + 200,200,72,72,72,72,8,10,10,8,1,1,18,20,20,127, + 36,40,254,72,80,144,7,14,14,8,1,254,16,16,126,148, + 144,240,56,28,20,148,148,248,16,16,11,11,22,13,1,0, + 96,192,161,128,145,0,146,0,166,0,101,192,10,32,18,32, + 50,32,34,32,65,192,11,13,26,12,1,0,28,0,34,0, + 34,0,34,0,36,0,56,0,49,224,216,128,156,128,142,128, + 135,0,135,128,124,224,2,6,6,5,1,7,192,192,64,64, + 64,64,3,17,17,6,1,253,32,64,64,128,128,128,128,128, + 128,128,128,128,128,128,64,64,32,3,17,17,6,1,253,128, + 64,64,32,32,32,32,32,32,32,32,32,32,32,64,64,128, + 6,8,8,8,1,6,48,16,164,120,120,164,16,48,7,6, + 6,7,0,2,16,16,16,254,16,16,2,5,5,4,1,253, + 64,192,64,64,128,5,1,1,6,1,4,248,2,2,2,4, + 1,0,192,128,8,17,17,8,0,253,1,2,2,6,4,4, + 12,8,8,16,16,48,32,32,96,64,192,6,11,11,8,1, + 0,48,72,132,132,132,132,132,132,132,72,48,6,11,11,8, + 1,0,16,240,16,16,16,16,16,16,16,16,124,6,11,11, + 8,1,0,28,100,68,4,8,8,16,32,68,68,252,6,11, + 11,7,0,0,56,68,68,4,24,12,4,4,4,140,120,7, + 11,11,8,0,0,4,12,12,20,36,36,68,254,4,4,30, + 6,11,11,8,1,0,124,64,64,64,120,132,4,4,4,132, + 120,6,11,11,8,1,0,12,48,64,192,184,196,132,132,132, + 72,56,7,11,11,8,1,0,254,132,4,8,8,8,16,16, + 32,32,96,7,11,11,9,1,0,120,196,196,196,120,60,194, + 130,130,130,124,6,11,11,8,1,0,56,200,132,132,132,132, + 124,4,8,16,224,2,8,8,4,1,0,192,128,0,0,0, + 0,192,128,2,11,11,4,1,253,192,128,0,0,0,0,64, + 192,64,64,128,6,6,6,8,1,2,4,56,224,192,56,12, + 6,4,4,8,1,3,252,0,0,252,6,6,6,8,1,2, + 192,112,12,28,112,128,6,13,13,8,1,0,56,68,132,132, + 4,8,16,32,32,32,0,48,32,13,15,30,15,1,253,7, + 192,24,96,32,16,64,16,135,136,136,136,144,136,144,136,144, + 136,144,144,137,144,78,224,96,16,48,32,15,192,11,11,22, + 11,0,0,4,0,12,0,14,0,18,0,18,0,19,0,31, + 0,33,0,33,128,32,128,241,224,8,11,11,10,1,0,252, + 66,66,68,126,67,65,65,65,67,254,8,11,11,10,1,0, + 62,66,128,128,128,128,128,128,128,67,60,9,11,22,11,1, + 0,252,0,67,0,65,0,64,128,64,128,64,128,64,128,64, + 128,65,0,67,0,252,0,7,11,11,9,1,0,254,66,64, + 64,124,64,64,64,66,66,254,7,11,11,9,1,0,254,66, + 64,64,124,64,64,64,64,64,240,10,11,22,11,1,0,15, + 0,49,128,64,0,128,0,128,0,128,0,131,192,128,128,64, + 128,96,128,31,0,10,11,22,12,1,0,225,192,64,128,64, + 128,64,128,64,128,127,128,64,128,64,128,64,128,64,128,225, + 192,3,11,11,5,1,0,224,64,64,64,64,64,64,64,64, + 64,224,6,14,14,6,254,253,60,8,8,8,8,8,8,8, + 8,8,8,8,144,224,9,11,22,10,1,0,231,128,70,0, + 76,0,72,0,80,0,112,0,88,0,72,0,68,0,70,0, + 227,128,7,11,11,9,1,0,224,64,64,64,64,64,64,64, + 66,66,254,13,11,22,15,1,0,224,56,96,96,96,96,80, + 160,80,160,88,160,73,32,77,48,70,48,70,48,228,120,10, + 11,22,12,1,0,193,192,96,128,112,128,80,128,72,128,76, + 128,70,128,66,128,65,128,65,128,224,128,9,11,22,11,1, + 0,30,0,99,0,129,0,128,128,128,128,128,128,128,128,128, + 128,65,0,98,0,60,0,7,11,11,9,1,0,252,66,66, + 66,66,92,96,64,64,64,240,10,14,28,11,1,253,30,0, + 99,0,129,0,128,128,128,128,128,128,128,128,128,128,65,0, + 98,0,60,0,6,0,3,64,1,192,9,11,22,10,1,0, + 252,0,70,0,66,0,66,0,68,0,72,0,120,0,76,0, + 70,0,66,0,227,128,7,11,11,9,1,0,60,198,128,128, + 112,28,6,2,130,196,248,9,11,22,10,0,0,255,128,136, + 128,136,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,28,0,10,11,22,12,1,0,225,192,64,128,64,128,64, + 128,64,128,64,128,64,128,64,128,64,128,33,0,30,0,11, + 11,22,12,0,0,240,224,32,64,32,128,48,128,16,128,25, + 0,9,0,9,0,14,0,6,0,4,0,15,11,22,15,0, + 0,241,30,33,8,33,136,34,136,50,136,50,200,20,80,20, + 112,20,48,24,48,8,32,11,11,22,11,0,0,243,192,32, + 128,49,0,26,0,14,0,4,0,14,0,19,0,49,128,32, + 192,241,224,10,11,22,11,0,0,225,192,48,128,17,0,25, + 0,10,0,14,0,4,0,4,0,4,0,4,0,14,0,8, + 11,11,9,1,0,255,134,132,12,24,16,48,32,65,193,255, + 4,17,17,6,1,253,240,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,240,8,17,17,8,0,253,192,64,96, + 32,32,48,16,16,8,8,12,4,4,6,2,2,1,4,17, + 17,5,0,253,240,16,16,16,16,16,16,16,16,16,16,16, + 16,16,16,16,240,7,9,9,9,1,5,16,48,56,40,76, + 76,68,134,130,7,1,1,8,1,254,254,4,4,4,6,0, + 9,192,96,32,16,7,8,8,8,1,0,60,68,132,28,100, + 132,140,118,8,14,14,9,0,0,64,192,64,64,64,64,78, + 115,65,65,65,65,66,60,6,8,8,8,1,0,60,68,128, + 128,128,128,196,120,7,14,14,9,1,0,12,4,4,4,4, + 4,60,196,132,132,132,132,76,118,6,8,8,8,1,0,56, + 68,132,252,128,128,68,120,6,14,14,6,1,0,28,40,64, + 64,64,64,248,64,64,64,64,64,64,240,9,12,24,8,0, + 252,61,128,194,0,130,0,194,0,124,0,32,0,112,0,63, + 0,193,0,129,0,130,0,124,0,8,14,14,10,1,0,64, + 192,64,64,64,64,78,114,98,66,66,66,66,231,3,12,12, + 5,1,0,192,192,0,0,64,192,64,64,64,64,64,224,5, + 16,16,5,254,252,24,24,0,0,8,24,8,8,8,8,8, + 8,8,8,16,224,8,14,14,9,1,0,64,192,64,64,64, + 64,79,72,80,112,80,72,68,231,3,14,14,5,1,0,64, + 192,64,64,64,64,64,64,64,64,64,64,64,224,13,8,16, + 15,1,0,206,112,115,144,98,16,66,16,66,16,66,16,66, + 16,231,56,8,8,8,10,1,0,78,210,98,66,66,66,66, + 231,7,8,8,9,1,0,56,196,130,130,130,130,68,56,8, + 12,12,10,1,252,206,115,65,65,65,65,98,92,64,64,64, + 224,8,12,12,9,1,252,62,66,130,130,130,130,70,58,2, + 2,2,15,6,8,8,7,1,0,220,100,64,64,64,64,64, + 224,5,8,8,7,1,0,112,136,128,96,24,136,136,240,5, + 11,11,6,1,0,64,64,64,248,64,64,64,64,64,64,120, + 8,8,8,10,1,0,198,66,66,66,66,66,70,59,9,8, + 16,9,0,0,243,128,98,0,34,0,50,0,20,0,20,0, + 28,0,8,0,13,8,16,13,0,0,242,56,98,32,39,32, + 37,32,53,160,24,192,24,192,16,192,9,8,16,9,0,0, + 247,128,34,0,20,0,24,0,28,0,38,0,35,0,247,128, + 9,12,24,9,0,252,243,128,97,0,34,0,50,0,20,0, + 20,0,28,0,8,0,8,0,16,0,176,0,224,0,6,8, + 8,8,1,0,252,136,24,16,32,64,196,252,5,17,17,6, + 1,253,24,32,32,32,32,32,32,32,192,32,32,32,32,32, + 32,32,24,1,19,19,4,2,252,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,5,17,17,6, + 0,253,64,160,32,32,32,32,32,32,24,32,32,32,32,32, + 32,64,192,8,2,2,9,0,4,57,206,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,4, + 0,0,2,13,13,5,1,251,64,192,0,64,64,64,64,64, + 64,64,64,64,64,7,11,11,8,1,0,16,24,118,144,144, + 144,144,212,126,16,16,7,11,11,8,1,0,60,68,68,64, + 64,240,64,64,66,130,254,6,6,6,8,1,2,248,76,72, + 72,120,132,9,11,22,8,0,0,231,128,98,0,50,0,20, + 0,28,0,8,0,127,0,8,0,8,0,8,0,28,0,1, + 19,19,4,2,252,128,128,128,128,128,128,128,128,0,0,0, + 128,128,128,128,128,128,128,128,7,13,13,9,1,0,112,152, + 128,224,248,142,130,66,60,12,132,196,120,5,2,2,7,1, + 10,136,136,11,11,22,13,1,0,31,0,32,128,94,64,162, + 32,160,32,160,32,160,32,177,32,94,64,32,128,31,0,5, + 6,6,5,0,5,48,80,112,144,248,240,7,8,8,9,1, + 0,38,36,72,152,152,72,36,38,7,3,3,8,1,2,254, + 2,2,5,1,1,6,1,4,248,6,7,7,6,0,6,120, + 72,188,188,180,104,120,6,1,1,9,1,10,252,4,4,4, + 6,1,7,112,144,144,224,7,8,8,7,0,1,16,16,254, + 16,16,16,0,126,4,7,7,6,1,5,112,144,16,32,64, + 144,240,5,7,7,6,0,5,56,72,8,24,8,136,112,3, + 4,4,6,2,9,32,96,64,128,8,12,12,10,1,252,198, + 66,66,66,66,66,102,123,64,64,64,96,8,13,13,10,1, + 254,63,202,138,138,138,202,122,10,10,10,10,10,31,1,2, + 2,3,1,5,128,128,2,4,4,4,1,252,192,64,192,128, + 4,7,7,6,1,5,32,224,32,32,32,32,240,4,6,6, + 5,0,5,96,144,144,144,96,240,7,8,8,9,1,0,144, + 72,100,54,54,100,72,144,10,11,22,11,1,0,192,128,65, + 0,65,0,66,0,70,0,164,0,8,128,27,128,18,128,35, + 192,101,192,9,11,22,11,1,0,193,0,65,0,66,0,68, + 0,68,0,168,0,11,128,20,128,33,0,34,128,71,128,10, + 11,22,10,0,0,96,128,144,128,33,0,17,0,18,0,228, + 0,4,128,11,128,18,128,19,192,37,192,6,13,13,8,1, + 251,16,48,0,16,16,16,32,64,128,132,132,136,112,11,15, + 30,11,0,0,16,0,56,0,4,0,2,0,4,0,12,0, + 14,0,18,0,18,0,19,0,31,0,33,0,33,128,32,128, + 241,224,11,15,30,11,0,0,1,0,7,0,12,0,0,0, + 4,0,12,0,14,0,18,0,18,0,19,0,31,0,33,0, + 33,128,32,128,241,224,11,15,30,11,0,0,4,0,14,0, + 17,0,32,0,4,0,12,0,14,0,18,0,18,0,19,0, + 31,0,33,0,33,128,32,128,241,224,11,15,30,11,0,0, + 9,0,29,0,34,0,0,0,4,0,12,0,14,0,18,0, + 18,0,19,0,31,0,33,0,33,128,32,128,241,224,11,14, + 28,11,0,0,33,0,33,0,0,0,4,0,12,0,14,0, + 18,0,18,0,19,0,31,0,33,0,33,128,32,128,241,224, + 11,16,32,11,0,0,4,0,10,0,18,0,12,0,0,0, + 4,0,12,0,14,0,18,0,18,0,19,0,31,0,33,0, + 33,128,32,128,241,224,13,11,22,14,0,0,15,248,5,8, + 5,0,9,0,15,240,17,0,17,0,17,0,33,8,33,8, + 243,248,9,15,30,10,1,252,62,0,66,0,128,0,128,0, + 128,0,128,0,128,0,128,0,192,0,97,128,62,0,8,0, + 12,0,4,0,8,0,7,15,15,9,1,0,64,224,24,0, + 254,66,64,64,124,64,64,64,66,66,254,7,15,15,9,1, + 0,4,12,48,0,254,66,64,64,124,64,64,64,66,66,254, + 7,15,15,9,1,0,16,40,68,0,254,66,64,64,124,64, + 64,64,66,66,254,7,14,14,9,1,0,68,68,0,254,66, + 64,64,124,64,64,64,66,66,254,4,15,15,5,0,0,128, + 192,48,0,112,32,32,32,32,32,32,32,32,32,112,5,15, + 15,5,1,0,16,56,192,0,224,64,64,64,64,64,64,64, + 64,64,224,5,15,15,5,0,0,32,80,136,0,112,32,32, + 32,32,32,32,32,32,32,112,5,14,14,5,0,0,136,136, + 0,112,32,32,32,32,32,32,32,32,32,112,9,11,22,11, + 1,0,252,0,67,0,65,0,64,128,64,128,240,128,64,128, + 64,128,65,0,67,0,252,0,10,15,30,12,1,0,25,0, + 57,0,38,0,0,0,193,192,96,128,112,128,80,128,72,128, + 76,128,70,128,66,128,65,128,65,128,224,128,9,15,30,11, + 1,0,32,0,112,0,12,0,0,0,30,0,99,0,129,0, + 128,128,128,128,128,128,128,128,128,128,65,0,98,0,60,0, + 9,15,30,11,1,0,2,0,6,0,24,0,0,0,30,0, + 99,0,129,0,128,128,128,128,128,128,128,128,128,128,65,0, + 98,0,60,0,9,15,30,11,1,0,8,0,20,0,34,0, + 0,0,30,0,99,0,129,0,128,128,128,128,128,128,128,128, + 128,128,65,0,98,0,60,0,9,15,30,11,1,0,18,0, + 58,0,68,0,0,0,30,0,99,0,129,0,128,128,128,128, + 128,128,128,128,128,128,65,0,98,0,60,0,9,14,28,11, + 1,0,34,0,34,0,0,0,30,0,99,0,129,0,128,128, + 128,128,128,128,128,128,128,128,65,0,98,0,60,0,6,6, + 6,7,1,2,140,88,48,48,88,140,9,11,22,11,1,0, + 30,128,35,0,67,0,134,128,132,128,136,128,144,128,176,128, + 97,0,98,0,188,0,10,15,30,12,1,0,32,0,24,0, + 4,0,2,0,225,192,64,128,64,128,64,128,64,128,64,128, + 64,128,64,128,64,128,33,0,30,0,10,15,30,12,1,0, + 2,0,7,0,8,0,16,0,225,192,64,128,64,128,64,128, + 64,128,64,128,64,128,64,128,64,128,33,0,30,0,10,15, + 30,12,1,0,12,0,30,0,34,0,1,0,225,192,64,128, + 64,128,64,128,64,128,64,128,64,128,64,128,64,128,33,0, + 30,0,10,14,28,12,1,0,34,0,34,0,0,0,225,192, + 64,128,64,128,64,128,64,128,64,128,64,128,64,128,64,128, + 33,0,30,0,10,15,30,11,0,0,1,0,7,0,12,0, + 0,0,225,192,48,128,17,0,25,0,10,0,14,0,4,0, + 4,0,4,0,4,0,14,0,7,11,11,9,1,0,240,64, + 124,70,66,66,66,68,124,64,240,8,14,14,10,1,0,28, + 38,66,66,66,76,80,80,76,71,65,81,81,222,7,13,13, + 8,1,0,64,96,48,16,0,60,68,132,28,100,132,140,118, + 7,13,13,8,1,0,12,8,16,32,0,60,68,132,28,100, + 132,140,118,7,13,13,8,1,0,48,56,72,132,0,60,68, + 132,28,100,132,140,118,7,12,12,8,1,0,116,152,0,0, + 60,68,132,28,100,132,140,118,7,12,12,8,1,0,132,132, + 0,0,60,68,132,28,100,132,140,118,7,13,13,8,1,0, + 48,72,72,48,0,60,68,132,28,100,132,140,118,11,8,16, + 12,1,0,29,192,102,32,68,32,159,224,100,0,132,0,142, + 32,115,192,7,12,12,8,1,252,60,68,128,128,128,128,194, + 124,16,24,8,16,6,13,13,8,1,0,96,32,16,16,0, + 56,68,132,252,128,128,68,120,6,13,13,8,1,0,12,8, + 16,16,0,56,68,132,252,128,128,68,120,6,13,13,8,1, + 0,16,56,108,68,0,56,68,132,252,128,128,68,120,6,12, + 12,8,1,0,68,68,0,0,56,68,132,252,128,128,68,120, + 4,13,13,5,0,0,192,64,32,32,16,32,96,32,32,32, + 32,32,112,4,13,13,5,1,0,48,32,64,64,0,64,192, + 64,64,64,64,64,224,5,13,13,5,0,0,32,112,216,136, + 0,32,96,32,32,32,32,32,112,5,12,12,5,0,0,136, + 136,0,0,32,96,32,32,32,32,32,112,7,13,13,9,1, + 0,96,30,56,68,4,62,198,130,130,130,132,68,56,8,12, + 12,10,1,0,50,76,0,0,78,210,98,66,66,66,66,231, + 7,13,13,9,1,0,96,32,16,8,0,56,196,130,130,130, + 130,68,56,7,13,13,9,1,0,4,12,24,16,0,56,196, + 130,130,130,130,68,56,7,13,13,9,1,0,16,56,36,68, + 0,56,196,130,130,130,130,68,56,7,12,12,9,1,0,50, + 92,0,0,56,196,130,130,130,130,68,56,7,12,12,9,1, + 0,68,68,0,0,56,196,130,130,130,130,68,56,6,6,6, + 7,1,2,32,32,0,252,32,32,7,9,9,9,1,0,2, + 62,68,138,146,162,226,68,248,8,13,13,10,1,0,96,48, + 16,8,0,198,66,66,66,66,66,70,59,8,13,13,10,1, + 0,4,12,8,16,0,198,66,66,66,66,66,70,59,8,13, + 13,10,1,0,24,56,36,66,0,198,66,66,66,66,66,70, + 59,8,12,12,10,1,0,68,68,0,0,198,66,66,66,66, + 66,70,59,9,17,34,9,0,252,2,0,4,0,12,0,8, + 0,0,0,243,128,97,0,34,0,50,0,20,0,20,0,28, + 0,8,0,8,0,16,0,176,0,224,0,8,18,18,10,1, + 252,64,192,64,64,64,64,78,115,65,65,65,65,98,124,64, + 64,64,240,9,16,32,9,0,252,34,0,34,0,0,0,0, + 0,243,128,97,0,34,0,50,0,20,0,20,0,28,0,8, + 0,8,0,16,0,176,0,224,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--18-180-72-72-P-81-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 11 + Calculated Max Values w= 8 h=17 x= 1 y= 6 dx= 9 dy= 0 ascent=14 len=17 + Font Bounding box w=26 h=25 x=-9 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent= 0 + X Font ascent =11 descent= 0 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr11n[262] U8G_SECTION(".progmem.u8g_font_gdr11n") = { + 0,26,25,247,250,11,0,0,0,0,42,57,0,14,253,11, + 0,6,8,8,8,1,6,48,16,164,120,120,164,16,48,7, + 6,6,7,0,2,16,16,16,254,16,16,2,5,5,4,1, + 253,64,192,64,64,128,5,1,1,6,1,4,248,2,2,2, + 4,1,0,192,128,8,17,17,8,0,253,1,2,2,6,4, + 4,12,8,8,16,16,48,32,32,96,64,192,6,11,11,8, + 1,0,48,72,132,132,132,132,132,132,132,72,48,6,11,11, + 8,1,0,16,240,16,16,16,16,16,16,16,16,124,6,11, + 11,8,1,0,28,100,68,4,8,8,16,32,68,68,252,6, + 11,11,7,0,0,56,68,68,4,24,12,4,4,4,140,120, + 7,11,11,8,0,0,4,12,12,20,36,36,68,254,4,4, + 30,6,11,11,8,1,0,124,64,64,64,120,132,4,4,4, + 132,120,6,11,11,8,1,0,12,48,64,192,184,196,132,132, + 132,72,56,7,11,11,8,1,0,254,132,4,8,8,8,16, + 16,32,32,96,7,11,11,9,1,0,120,196,196,196,120,60, + 194,130,130,130,124,6,11,11,8,1,0,56,200,132,132,132, + 132,124,4,8,16,224}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--18-180-72-72-P-81-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=15 h=19 x= 2 y= 9 dx=15 dy= 0 ascent=15 len=30 + Font Bounding box w=26 h=25 x=-9 y=-6 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =15 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr11r[1868] U8G_SECTION(".progmem.u8g_font_gdr11r") = { + 0,26,25,247,250,11,2,61,5,21,32,127,252,15,252,14, + 252,0,0,0,4,0,0,2,13,13,5,1,0,64,64,64, + 64,64,64,64,64,64,64,0,192,128,5,6,6,8,1,7, + 200,200,72,72,72,72,8,10,10,8,1,1,18,20,20,127, + 36,40,254,72,80,144,7,14,14,8,1,254,16,16,126,148, + 144,240,56,28,20,148,148,248,16,16,11,11,22,13,1,0, + 96,192,161,128,145,0,146,0,166,0,101,192,10,32,18,32, + 50,32,34,32,65,192,11,13,26,12,1,0,28,0,34,0, + 34,0,34,0,36,0,56,0,49,224,216,128,156,128,142,128, + 135,0,135,128,124,224,2,6,6,5,1,7,192,192,64,64, + 64,64,3,17,17,6,1,253,32,64,64,128,128,128,128,128, + 128,128,128,128,128,128,64,64,32,3,17,17,6,1,253,128, + 64,64,32,32,32,32,32,32,32,32,32,32,32,64,64,128, + 6,8,8,8,1,6,48,16,164,120,120,164,16,48,7,6, + 6,7,0,2,16,16,16,254,16,16,2,5,5,4,1,253, + 64,192,64,64,128,5,1,1,6,1,4,248,2,2,2,4, + 1,0,192,128,8,17,17,8,0,253,1,2,2,6,4,4, + 12,8,8,16,16,48,32,32,96,64,192,6,11,11,8,1, + 0,48,72,132,132,132,132,132,132,132,72,48,6,11,11,8, + 1,0,16,240,16,16,16,16,16,16,16,16,124,6,11,11, + 8,1,0,28,100,68,4,8,8,16,32,68,68,252,6,11, + 11,7,0,0,56,68,68,4,24,12,4,4,4,140,120,7, + 11,11,8,0,0,4,12,12,20,36,36,68,254,4,4,30, + 6,11,11,8,1,0,124,64,64,64,120,132,4,4,4,132, + 120,6,11,11,8,1,0,12,48,64,192,184,196,132,132,132, + 72,56,7,11,11,8,1,0,254,132,4,8,8,8,16,16, + 32,32,96,7,11,11,9,1,0,120,196,196,196,120,60,194, + 130,130,130,124,6,11,11,8,1,0,56,200,132,132,132,132, + 124,4,8,16,224,2,8,8,4,1,0,192,128,0,0,0, + 0,192,128,2,11,11,4,1,253,192,128,0,0,0,0,64, + 192,64,64,128,6,6,6,8,1,2,4,56,224,192,56,12, + 6,4,4,8,1,3,252,0,0,252,6,6,6,8,1,2, + 192,112,12,28,112,128,6,13,13,8,1,0,56,68,132,132, + 4,8,16,32,32,32,0,48,32,13,15,30,15,1,253,7, + 192,24,96,32,16,64,16,135,136,136,136,144,136,144,136,144, + 136,144,144,137,144,78,224,96,16,48,32,15,192,11,11,22, + 11,0,0,4,0,12,0,14,0,18,0,18,0,19,0,31, + 0,33,0,33,128,32,128,241,224,8,11,11,10,1,0,252, + 66,66,68,126,67,65,65,65,67,254,8,11,11,10,1,0, + 62,66,128,128,128,128,128,128,128,67,60,9,11,22,11,1, + 0,252,0,67,0,65,0,64,128,64,128,64,128,64,128,64, + 128,65,0,67,0,252,0,7,11,11,9,1,0,254,66,64, + 64,124,64,64,64,66,66,254,7,11,11,9,1,0,254,66, + 64,64,124,64,64,64,64,64,240,10,11,22,11,1,0,15, + 0,49,128,64,0,128,0,128,0,128,0,131,192,128,128,64, + 128,96,128,31,0,10,11,22,12,1,0,225,192,64,128,64, + 128,64,128,64,128,127,128,64,128,64,128,64,128,64,128,225, + 192,3,11,11,5,1,0,224,64,64,64,64,64,64,64,64, + 64,224,6,14,14,6,254,253,60,8,8,8,8,8,8,8, + 8,8,8,8,144,224,9,11,22,10,1,0,231,128,70,0, + 76,0,72,0,80,0,112,0,88,0,72,0,68,0,70,0, + 227,128,7,11,11,9,1,0,224,64,64,64,64,64,64,64, + 66,66,254,13,11,22,15,1,0,224,56,96,96,96,96,80, + 160,80,160,88,160,73,32,77,48,70,48,70,48,228,120,10, + 11,22,12,1,0,193,192,96,128,112,128,80,128,72,128,76, + 128,70,128,66,128,65,128,65,128,224,128,9,11,22,11,1, + 0,30,0,99,0,129,0,128,128,128,128,128,128,128,128,128, + 128,65,0,98,0,60,0,7,11,11,9,1,0,252,66,66, + 66,66,92,96,64,64,64,240,10,14,28,11,1,253,30,0, + 99,0,129,0,128,128,128,128,128,128,128,128,128,128,65,0, + 98,0,60,0,6,0,3,64,1,192,9,11,22,10,1,0, + 252,0,70,0,66,0,66,0,68,0,72,0,120,0,76,0, + 70,0,66,0,227,128,7,11,11,9,1,0,60,198,128,128, + 112,28,6,2,130,196,248,9,11,22,10,0,0,255,128,136, + 128,136,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,28,0,10,11,22,12,1,0,225,192,64,128,64,128,64, + 128,64,128,64,128,64,128,64,128,64,128,33,0,30,0,11, + 11,22,12,0,0,240,224,32,64,32,128,48,128,16,128,25, + 0,9,0,9,0,14,0,6,0,4,0,15,11,22,15,0, + 0,241,30,33,8,33,136,34,136,50,136,50,200,20,80,20, + 112,20,48,24,48,8,32,11,11,22,11,0,0,243,192,32, + 128,49,0,26,0,14,0,4,0,14,0,19,0,49,128,32, + 192,241,224,10,11,22,11,0,0,225,192,48,128,17,0,25, + 0,10,0,14,0,4,0,4,0,4,0,4,0,14,0,8, + 11,11,9,1,0,255,134,132,12,24,16,48,32,65,193,255, + 4,17,17,6,1,253,240,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,240,8,17,17,8,0,253,192,64,96, + 32,32,48,16,16,8,8,12,4,4,6,2,2,1,4,17, + 17,5,0,253,240,16,16,16,16,16,16,16,16,16,16,16, + 16,16,16,16,240,7,9,9,9,1,5,16,48,56,40,76, + 76,68,134,130,7,1,1,8,1,254,254,4,4,4,6,0, + 9,192,96,32,16,7,8,8,8,1,0,60,68,132,28,100, + 132,140,118,8,14,14,9,0,0,64,192,64,64,64,64,78, + 115,65,65,65,65,66,60,6,8,8,8,1,0,60,68,128, + 128,128,128,196,120,7,14,14,9,1,0,12,4,4,4,4, + 4,60,196,132,132,132,132,76,118,6,8,8,8,1,0,56, + 68,132,252,128,128,68,120,6,14,14,6,1,0,28,40,64, + 64,64,64,248,64,64,64,64,64,64,240,9,12,24,8,0, + 252,61,128,194,0,130,0,194,0,124,0,32,0,112,0,63, + 0,193,0,129,0,130,0,124,0,8,14,14,10,1,0,64, + 192,64,64,64,64,78,114,98,66,66,66,66,231,3,12,12, + 5,1,0,192,192,0,0,64,192,64,64,64,64,64,224,5, + 16,16,5,254,252,24,24,0,0,8,24,8,8,8,8,8, + 8,8,8,16,224,8,14,14,9,1,0,64,192,64,64,64, + 64,79,72,80,112,80,72,68,231,3,14,14,5,1,0,64, + 192,64,64,64,64,64,64,64,64,64,64,64,224,13,8,16, + 15,1,0,206,112,115,144,98,16,66,16,66,16,66,16,66, + 16,231,56,8,8,8,10,1,0,78,210,98,66,66,66,66, + 231,7,8,8,9,1,0,56,196,130,130,130,130,68,56,8, + 12,12,10,1,252,206,115,65,65,65,65,98,92,64,64,64, + 224,8,12,12,9,1,252,62,66,130,130,130,130,70,58,2, + 2,2,15,6,8,8,7,1,0,220,100,64,64,64,64,64, + 224,5,8,8,7,1,0,112,136,128,96,24,136,136,240,5, + 11,11,6,1,0,64,64,64,248,64,64,64,64,64,64,120, + 8,8,8,10,1,0,198,66,66,66,66,66,70,59,9,8, + 16,9,0,0,243,128,98,0,34,0,50,0,20,0,20,0, + 28,0,8,0,13,8,16,13,0,0,242,56,98,32,39,32, + 37,32,53,160,24,192,24,192,16,192,9,8,16,9,0,0, + 247,128,34,0,20,0,24,0,28,0,38,0,35,0,247,128, + 9,12,24,9,0,252,243,128,97,0,34,0,50,0,20,0, + 20,0,28,0,8,0,8,0,16,0,176,0,224,0,6,8, + 8,8,1,0,252,136,24,16,32,64,196,252,5,17,17,6, + 1,253,24,32,32,32,32,32,32,32,192,32,32,32,32,32, + 32,32,24,1,19,19,4,2,252,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,5,17,17,6, + 0,253,64,160,32,32,32,32,32,32,24,32,32,32,32,32, + 32,64,192,8,2,2,9,0,4,57,206,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--19-190-72-72-P-84-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=16 h=20 x= 2 y=11 dx=16 dy= 0 ascent=17 len=36 + Font Bounding box w=28 h=28 x=-10 y=-7 + Calculated Min Values x=-2 y=-5 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =15 descent=-4 + Max Font ascent =17 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr12[4200] U8G_SECTION(".progmem.u8g_font_gdr12") = { + 0,28,28,246,249,12,2,80,5,85,32,255,252,17,251,15, + 252,0,0,0,4,0,0,2,15,15,5,2,255,128,128,128, + 128,128,128,128,128,128,128,0,0,192,192,128,6,6,6,8, + 1,8,204,76,72,72,72,72,8,11,11,9,1,1,26,18, + 18,127,36,36,36,254,72,72,80,7,15,15,9,1,254,16, + 16,126,148,144,208,112,28,22,18,146,146,252,16,16,11,11, + 22,13,1,0,112,64,144,128,137,128,139,0,146,0,117,192, + 10,32,26,32,18,32,34,32,65,192,11,13,26,12,1,0, + 28,0,34,0,34,0,34,0,36,0,56,0,49,224,216,128, + 140,128,140,128,135,0,199,128,60,224,2,6,6,5,1,8, + 192,64,64,64,64,64,4,18,18,6,1,253,48,96,64,64, + 128,128,128,128,128,128,128,128,128,128,192,64,96,48,4,18, + 18,6,1,253,192,96,32,48,16,16,16,16,16,16,16,16, + 16,16,32,32,96,128,7,7,7,8,1,7,16,148,222,48, + 252,146,16,7,7,7,8,0,2,16,16,16,254,16,16,16, + 2,5,5,4,1,253,64,192,64,64,128,5,1,1,6,1, + 4,248,2,3,3,4,1,255,192,192,128,8,18,18,9,0, + 253,1,1,3,2,6,4,4,12,8,8,24,16,48,32,32, + 96,64,192,7,11,11,9,1,0,56,68,130,130,130,130,130, + 130,132,68,56,6,12,12,9,1,0,16,112,144,16,16,16, + 16,16,16,16,16,252,6,12,12,8,1,0,60,68,196,4, + 4,8,16,16,32,68,132,252,7,12,12,8,0,0,28,38, + 98,2,4,28,2,2,2,2,134,124,7,12,12,9,1,0, + 4,12,12,20,20,36,68,68,254,4,4,30,6,11,11,9, + 2,0,124,64,64,64,120,132,4,4,4,132,120,7,12,12, + 9,1,0,12,48,64,64,128,252,198,130,130,130,68,56,7, + 11,11,9,1,0,254,130,4,4,8,8,24,16,48,32,96, + 7,12,12,9,1,0,120,196,196,196,232,60,78,130,130,130, + 194,124,7,11,11,9,1,0,56,68,130,130,130,198,122,2, + 4,8,112,2,10,10,4,1,255,128,192,128,0,0,0,0, + 192,192,128,2,12,12,4,1,253,128,192,128,0,0,0,0, + 64,192,64,64,128,7,6,6,8,1,2,6,28,224,192,56, + 6,7,4,4,8,1,3,254,0,0,254,7,6,6,8,1, + 2,192,112,14,28,112,128,6,15,15,8,1,255,56,68,132, + 132,4,8,16,16,32,32,32,0,48,48,32,14,15,30,16, + 1,253,7,224,24,48,32,8,71,200,136,68,144,68,144,68, + 144,68,144,68,144,72,136,200,71,112,32,8,24,48,15,192, + 11,12,24,11,0,0,4,0,6,0,14,0,10,0,11,0, + 17,0,17,0,31,128,33,128,32,128,32,192,241,224,8,12, + 12,10,1,0,252,66,66,66,68,126,67,65,65,65,67,254, + 8,12,12,10,1,0,30,99,128,128,128,128,128,128,128,192, + 99,60,9,12,24,11,1,0,252,0,67,0,65,0,64,128, + 64,128,64,128,64,128,64,128,64,128,65,0,66,0,252,0, + 8,12,12,9,1,0,254,66,64,64,64,124,72,64,64,66, + 67,254,7,12,12,9,1,0,254,66,64,64,64,124,72,64, + 64,64,64,240,10,12,24,11,1,0,15,0,49,128,64,0, + 128,0,128,0,128,0,131,192,128,128,128,128,64,128,96,128, + 31,0,10,12,24,12,1,0,225,192,64,128,64,128,64,128, + 64,128,127,128,64,128,64,128,64,128,64,128,64,128,225,192, + 3,12,12,6,1,0,224,64,64,64,64,64,64,64,64,64, + 64,224,6,15,15,6,255,253,60,8,8,8,8,8,8,8, + 8,8,8,8,8,144,224,10,12,24,11,1,0,231,128,66, + 0,68,0,72,0,80,0,96,0,80,0,88,0,76,0,70, + 0,67,0,225,192,7,12,12,9,1,0,224,64,64,64,64, + 64,64,64,64,66,66,254,14,12,24,15,1,0,224,56,96, + 48,112,112,80,80,80,80,88,144,72,144,77,16,69,16,71, + 16,66,16,226,124,10,12,24,12,1,0,193,192,96,128,112, + 128,80,128,88,128,76,128,68,128,70,128,67,128,65,128,65, + 128,224,128,9,12,24,11,1,0,30,0,99,0,129,0,128, + 128,128,128,128,128,128,128,128,128,128,128,65,0,98,0,60, + 0,8,12,12,10,1,0,252,66,65,65,65,66,92,64,64, + 64,64,240,11,15,30,11,1,253,30,0,99,0,129,0,128, + 128,128,128,128,128,128,128,128,128,128,128,65,0,98,0,60, + 0,6,0,3,32,0,192,10,12,24,11,1,0,252,0,67, + 0,65,0,65,0,65,0,66,0,124,0,76,0,70,0,67, + 0,67,0,225,192,7,12,12,9,1,0,60,198,128,128,224, + 56,12,2,2,130,196,248,9,12,24,10,1,0,255,128,136, + 128,136,128,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,62,0,10,12,24,12,1,0,225,192,64,128,64, + 128,64,128,64,128,64,128,64,128,64,128,64,128,64,128,33, + 0,30,0,12,12,24,12,0,0,240,240,32,64,48,64,48, + 64,16,128,24,128,9,128,9,0,13,0,7,0,6,0,6, + 0,16,12,24,16,0,0,241,15,33,132,33,132,33,132,50, + 196,50,72,18,104,20,104,28,40,28,56,8,48,8,16,11, + 12,24,12,0,0,249,224,32,128,49,128,25,0,14,0,6, + 0,6,0,11,0,25,128,48,128,32,192,241,224,11,12,24, + 11,0,0,225,224,48,128,49,128,25,0,10,0,14,0,4, + 0,4,0,4,0,4,0,4,0,31,0,8,12,12,10,1, + 0,255,130,134,4,12,24,16,48,96,65,193,255,4,18,18, + 6,1,253,240,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,240,7,18,18,9,1,253,128,128,192,64,64, + 32,32,48,16,16,24,8,8,4,4,6,2,2,4,18,18, + 5,0,253,240,16,16,16,16,16,16,16,16,16,16,16,16, + 16,16,16,16,240,7,9,9,9,1,5,16,24,40,44,44, + 68,70,130,130,7,1,1,9,1,254,254,4,4,4,6,0, + 10,192,96,32,16,7,9,9,9,1,0,60,68,132,4,60, + 196,132,140,118,9,14,28,10,0,0,64,0,192,0,64,0, + 64,0,64,0,70,0,89,0,96,128,64,128,64,128,64,128, + 65,0,97,0,62,0,6,9,9,8,1,0,60,68,128,128, + 128,128,128,196,120,8,14,14,10,1,0,6,2,2,2,2, + 62,66,130,130,130,130,130,70,59,7,9,9,9,1,0,60, + 68,130,130,254,128,128,66,60,6,14,14,6,1,0,28,36, + 64,64,64,248,64,64,64,64,64,64,64,240,10,13,26,10, + 0,252,62,192,67,0,129,0,129,0,194,0,60,0,48,0, + 120,0,39,128,192,128,128,128,193,0,62,0,8,14,14,10, + 1,0,64,192,64,64,64,76,82,98,66,66,66,66,66,231, + 3,12,12,5,1,0,192,192,0,64,192,64,64,64,64,64, + 64,224,5,16,16,5,254,252,24,24,0,8,24,8,8,8, + 8,8,8,8,8,8,16,224,8,14,14,10,1,0,64,192, + 64,64,64,79,68,72,112,112,88,76,70,231,3,14,14,5, + 1,0,64,192,64,64,64,64,64,64,64,64,64,64,64,224, + 13,9,18,15,1,0,204,96,82,144,99,16,66,16,66,16, + 66,16,66,16,66,16,231,56,8,9,9,10,1,0,76,210, + 98,66,66,66,66,66,231,8,9,9,10,1,0,60,66,129, + 129,129,129,130,66,60,8,13,13,10,1,252,206,114,65,65, + 65,65,66,98,92,64,64,64,240,9,13,26,10,1,252,29, + 0,99,0,129,0,129,0,129,0,129,0,129,0,71,0,57, + 0,1,0,1,0,1,0,7,128,6,9,9,8,1,0,92, + 228,96,64,64,64,64,64,240,5,9,9,7,1,0,112,136, + 128,192,48,8,136,136,240,5,12,12,7,1,0,64,64,64, + 248,64,64,64,64,64,64,72,112,8,9,9,10,1,0,198, + 66,66,66,66,66,66,70,59,9,9,18,9,0,0,243,128, + 97,0,33,0,50,0,18,0,18,0,28,0,12,0,8,0, + 13,9,18,13,0,0,242,56,99,16,35,16,37,16,53,160, + 20,160,24,224,24,192,24,64,9,9,18,10,0,0,243,128, + 33,0,50,0,28,0,12,0,22,0,34,0,33,0,243,128, + 9,13,26,9,0,252,243,128,97,0,33,0,50,0,18,0, + 20,0,28,0,12,0,8,0,8,0,16,0,176,0,224,0, + 7,9,9,8,1,0,254,132,8,24,48,32,98,194,254,5, + 18,18,6,1,253,8,16,32,32,32,32,32,32,64,224,32, + 32,32,32,32,32,32,24,1,20,20,4,2,252,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,5,18,18,6,0,253,192,32,32,32,32,32,32,32,56, + 16,32,32,32,32,32,32,64,128,9,4,8,9,0,4,48, + 0,125,128,79,0,134,0,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,4,0,0,2,14, + 14,5,2,251,64,192,64,128,128,128,128,128,128,128,128,128, + 128,128,7,12,12,9,1,0,16,16,62,212,144,144,144,144, + 210,124,16,16,7,12,12,9,1,0,60,70,68,64,64,64, + 240,64,64,66,66,254,7,6,6,9,1,3,132,126,68,68, + 68,254,9,11,22,9,0,0,231,128,99,0,50,0,20,0, + 28,0,8,0,127,0,8,0,8,0,8,0,62,0,1,20, + 20,4,2,252,128,128,128,128,128,128,128,128,128,0,0,128, + 128,128,128,128,128,128,128,128,7,13,13,9,1,0,112,152, + 128,224,184,134,130,98,60,12,132,196,120,5,2,2,7,1, + 10,136,136,12,12,24,14,1,0,15,0,48,192,94,32,146, + 32,160,16,160,16,160,16,160,16,144,160,79,32,32,64,31, + 128,5,7,7,5,0,5,48,208,112,208,176,72,240,7,8, + 8,9,1,0,34,36,76,216,216,76,36,34,8,4,4,9, + 0,2,255,1,1,1,5,1,1,6,1,4,248,7,6,6, + 7,0,7,56,238,170,178,238,56,6,1,1,9,2,11,252, + 5,5,5,7,1,7,112,136,136,136,112,7,9,9,8,0, + 1,16,16,16,254,16,16,16,0,126,4,7,7,6,1,6, + 112,144,16,32,64,144,240,5,8,8,6,0,5,56,72,8, + 16,8,8,136,112,4,4,4,6,2,10,48,96,64,128,8, + 13,13,10,1,252,194,70,66,66,66,66,102,126,91,64,64, + 64,96,8,14,14,10,1,254,63,70,134,134,134,70,62,6, + 6,6,6,6,6,15,1,2,2,3,1,5,128,128,2,4, + 4,4,2,252,192,192,64,128,5,7,7,6,1,6,32,224, + 32,32,32,32,248,4,7,7,5,0,5,96,144,144,144,144, + 96,240,7,8,8,9,1,0,136,72,36,50,50,36,72,136, + 10,11,22,11,1,0,192,128,65,0,65,0,66,0,68,0, + 228,0,9,128,18,128,18,128,39,192,65,192,9,11,22,11, + 1,0,192,128,65,0,66,0,66,0,68,0,239,128,12,128, + 17,0,49,0,34,128,71,128,10,12,24,11,1,0,96,0, + 144,128,33,0,18,0,146,0,228,0,8,0,9,128,18,128, + 50,128,39,192,65,192,6,14,14,8,1,251,16,48,16,16, + 16,16,32,32,64,128,132,132,136,112,11,16,32,11,0,0, + 16,0,60,0,2,0,0,0,4,0,6,0,14,0,10,0, + 11,0,17,0,17,0,31,128,33,128,32,128,32,192,241,224, + 11,16,32,11,0,0,1,0,7,128,8,0,0,0,4,0, + 6,0,14,0,10,0,11,0,17,0,17,0,31,128,33,128, + 32,128,32,192,241,224,11,16,32,11,0,0,4,0,10,0, + 17,0,0,0,4,0,6,0,14,0,10,0,11,0,17,0, + 17,0,31,128,33,128,32,128,32,192,241,224,11,15,30,11, + 0,0,29,128,39,0,0,0,4,0,6,0,14,0,10,0, + 11,0,17,0,17,0,31,128,33,128,32,128,32,192,241,224, + 11,15,30,11,0,0,33,0,33,0,0,0,4,0,6,0, + 14,0,10,0,11,0,17,0,17,0,31,128,33,128,32,128, + 32,192,241,224,11,17,34,11,0,0,14,0,18,0,18,0, + 12,0,0,0,4,0,6,0,14,0,10,0,11,0,17,0, + 17,0,31,128,33,128,32,128,32,192,241,224,14,12,24,15, + 0,0,31,248,5,8,5,0,9,0,9,0,31,240,17,32, + 17,0,33,0,33,8,97,12,243,248,9,16,32,10,1,252, + 30,0,99,0,128,0,128,0,128,0,128,0,128,0,128,0, + 128,0,65,0,97,128,62,0,8,0,12,0,4,0,8,0, + 8,16,16,9,1,0,64,48,8,0,254,66,64,64,64,124, + 72,64,64,66,67,254,8,16,16,9,1,0,4,14,48,0, + 254,66,64,64,64,124,72,64,64,66,67,254,8,16,16,9, + 1,0,24,44,68,2,254,66,64,64,64,124,72,64,64,66, + 67,254,8,15,15,9,1,0,132,132,0,254,66,64,64,64, + 124,72,64,64,66,67,254,4,16,16,6,0,0,128,96,16, + 0,112,32,32,32,32,32,32,32,32,32,32,112,5,16,16, + 6,1,0,24,48,192,0,224,64,64,64,64,64,64,64,64, + 64,64,224,6,16,16,6,0,0,48,88,132,0,112,32,32, + 32,32,32,32,32,32,32,32,112,6,15,15,6,0,0,132, + 136,0,112,32,32,32,32,32,32,32,32,32,32,112,10,12, + 24,11,0,0,126,0,33,128,32,128,32,64,32,64,124,64, + 160,64,32,64,32,64,32,128,33,0,126,0,10,15,30,12, + 1,0,25,0,38,0,0,0,193,192,96,128,112,128,80,128, + 88,128,76,128,68,128,70,128,67,128,65,128,65,128,224,128, + 9,16,32,11,1,0,32,0,24,0,4,0,0,0,30,0, + 99,0,129,0,128,128,128,128,128,128,128,128,128,128,128,128, + 65,0,98,0,60,0,9,16,32,11,1,0,3,0,6,0, + 24,0,0,0,30,0,99,0,129,0,128,128,128,128,128,128, + 128,128,128,128,128,128,65,0,98,0,60,0,9,16,32,11, + 1,0,12,0,22,0,34,0,1,0,30,0,99,0,129,0, + 128,128,128,128,128,128,128,128,128,128,128,128,65,0,98,0, + 60,0,9,15,30,11,1,0,25,0,110,0,0,0,30,0, + 99,0,129,0,128,128,128,128,128,128,128,128,128,128,128,128, + 65,0,98,0,60,0,9,15,30,11,1,0,66,0,66,0, + 0,0,30,0,99,0,129,0,128,128,128,128,128,128,128,128, + 128,128,128,128,65,0,98,0,60,0,6,6,6,8,1,2, + 132,72,48,48,72,132,9,12,24,11,1,0,30,128,35,0, + 67,0,131,128,132,128,136,128,136,128,144,128,225,0,97,0, + 98,0,188,0,10,16,32,12,1,0,48,0,24,0,6,0, + 0,0,225,192,64,128,64,128,64,128,64,128,64,128,64,128, + 64,128,64,128,64,128,33,0,30,0,10,16,32,12,1,0, + 1,0,6,0,8,0,0,0,225,192,64,128,64,128,64,128, + 64,128,64,128,64,128,64,128,64,128,64,128,33,0,30,0, + 10,16,32,12,1,0,12,0,26,0,33,0,0,0,225,192, + 64,128,64,128,64,128,64,128,64,128,64,128,64,128,64,128, + 64,128,33,0,30,0,10,15,30,12,1,0,33,0,33,0, + 0,0,225,192,64,128,64,128,64,128,64,128,64,128,64,128, + 64,128,64,128,64,128,33,0,30,0,11,16,32,11,0,0, + 1,0,3,128,12,0,0,0,225,224,48,128,49,128,25,0, + 10,0,14,0,4,0,4,0,4,0,4,0,4,0,31,0, + 8,12,12,10,1,0,240,64,124,66,65,65,65,65,98,92, + 64,240,9,14,28,11,1,0,30,0,35,0,65,0,65,0, + 65,0,70,0,72,0,72,0,70,0,67,128,64,128,72,128, + 72,128,207,0,7,14,14,9,1,0,96,32,16,16,8,60, + 68,132,4,60,196,132,140,118,7,14,14,9,1,0,12,8, + 16,16,0,60,68,132,4,60,196,132,140,118,7,14,14,9, + 1,0,16,56,76,132,0,60,68,132,4,60,196,132,140,118, + 7,13,13,9,1,0,34,116,152,0,60,68,132,4,60,196, + 132,140,118,7,12,12,9,1,0,132,132,0,60,68,132,4, + 60,196,132,140,118,7,14,14,9,1,0,56,72,72,48,0, + 60,68,132,4,60,196,132,140,118,11,9,18,13,1,0,57, + 192,70,64,196,32,4,32,31,224,100,0,132,0,142,32,115, + 192,7,13,13,8,1,252,60,68,128,128,128,128,128,98,60, + 16,24,8,16,7,14,14,9,1,0,96,32,16,8,0,60, + 68,130,130,254,128,128,66,60,7,14,14,9,1,0,4,14, + 8,16,0,60,68,130,130,254,128,128,66,60,7,14,14,9, + 1,0,24,56,36,66,0,60,68,130,130,254,128,128,66,60, + 7,12,12,9,1,0,130,132,0,60,68,130,130,254,128,128, + 66,60,4,14,14,5,0,0,192,64,32,16,0,32,96,32, + 32,32,32,32,32,112,4,14,14,5,1,0,16,48,96,64, + 0,64,192,64,64,64,64,64,64,224,6,14,14,5,0,0, + 32,112,200,132,0,32,96,32,32,32,32,32,32,112,6,12, + 12,5,255,0,132,132,0,16,48,16,16,16,16,16,16,56, + 7,13,13,9,1,0,96,30,56,68,60,70,130,130,130,130, + 132,68,56,8,13,13,10,1,0,51,58,76,0,76,210,98, + 66,66,66,66,66,231,8,14,14,10,1,0,96,48,16,8, + 0,60,66,129,129,129,129,130,66,60,8,14,14,10,1,0, + 6,12,8,16,0,60,66,129,129,129,129,130,66,60,8,14, + 14,10,1,0,24,56,36,66,0,60,66,129,129,129,129,130, + 66,60,8,13,13,10,1,0,50,122,76,0,60,66,129,129, + 129,129,130,66,60,8,12,12,10,1,0,130,130,0,60,66, + 129,129,129,129,130,66,60,6,6,6,8,1,2,32,32,252, + 0,32,32,8,9,9,10,1,0,29,102,135,137,153,145,226, + 98,252,8,14,14,10,1,0,96,48,16,8,0,198,66,66, + 66,66,66,66,70,59,8,14,14,10,1,0,6,12,8,16, + 0,198,66,66,66,66,66,66,70,59,8,14,14,10,1,0, + 24,28,36,66,0,198,66,66,66,66,66,66,70,59,8,12, + 12,10,1,0,130,130,0,198,66,66,66,66,66,66,70,59, + 9,18,36,9,0,252,3,0,6,0,4,0,8,0,0,0, + 243,128,97,0,33,0,50,0,18,0,20,0,28,0,12,0, + 8,0,8,0,16,0,176,0,224,0,8,18,18,10,1,252, + 64,192,64,64,64,78,114,65,65,65,65,66,98,124,64,64, + 64,240,9,16,32,9,0,252,65,0,65,0,0,0,243,128, + 97,0,33,0,50,0,18,0,20,0,28,0,12,0,8,0, + 8,0,16,0,176,0,224,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--19-190-72-72-P-84-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 12 + Calculated Max Values w= 8 h=18 x= 2 y= 7 dx= 9 dy= 0 ascent=15 len=18 + Font Bounding box w=28 h=28 x=-10 y=-7 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =12 descent= 0 + X Font ascent =12 descent= 0 + Max Font ascent =15 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr12n[270] U8G_SECTION(".progmem.u8g_font_gdr12n") = { + 0,28,28,246,249,12,0,0,0,0,42,57,0,15,253,12, + 0,7,7,7,8,1,7,16,148,222,48,252,146,16,7,7, + 7,8,0,2,16,16,16,254,16,16,16,2,5,5,4,1, + 253,64,192,64,64,128,5,1,1,6,1,4,248,2,3,3, + 4,1,255,192,192,128,8,18,18,9,0,253,1,1,3,2, + 6,4,4,12,8,8,24,16,48,32,32,96,64,192,7,11, + 11,9,1,0,56,68,130,130,130,130,130,130,132,68,56,6, + 12,12,9,1,0,16,112,144,16,16,16,16,16,16,16,16, + 252,6,12,12,8,1,0,60,68,196,4,4,8,16,16,32, + 68,132,252,7,12,12,8,0,0,28,38,98,2,4,28,2, + 2,2,2,134,124,7,12,12,9,1,0,4,12,12,20,20, + 36,68,68,254,4,4,30,6,11,11,9,2,0,124,64,64, + 64,120,132,4,4,4,132,120,7,12,12,9,1,0,12,48, + 64,64,128,252,198,130,130,130,68,56,7,11,11,9,1,0, + 254,130,4,4,8,8,24,16,48,32,96,7,12,12,9,1, + 0,120,196,196,196,232,60,78,130,130,130,194,124,7,11,11, + 9,1,0,56,68,130,130,130,198,122,2,4,8,112}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--19-190-72-72-P-84-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=16 h=20 x= 2 y=10 dx=16 dy= 0 ascent=16 len=30 + Font Bounding box w=28 h=28 x=-10 y=-7 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =15 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr12r[1992] U8G_SECTION(".progmem.u8g_font_gdr12r") = { + 0,28,28,246,249,12,2,80,5,85,32,127,252,16,252,15, + 252,0,0,0,4,0,0,2,15,15,5,2,255,128,128,128, + 128,128,128,128,128,128,128,0,0,192,192,128,6,6,6,8, + 1,8,204,76,72,72,72,72,8,11,11,9,1,1,26,18, + 18,127,36,36,36,254,72,72,80,7,15,15,9,1,254,16, + 16,126,148,144,208,112,28,22,18,146,146,252,16,16,11,11, + 22,13,1,0,112,64,144,128,137,128,139,0,146,0,117,192, + 10,32,26,32,18,32,34,32,65,192,11,13,26,12,1,0, + 28,0,34,0,34,0,34,0,36,0,56,0,49,224,216,128, + 140,128,140,128,135,0,199,128,60,224,2,6,6,5,1,8, + 192,64,64,64,64,64,4,18,18,6,1,253,48,96,64,64, + 128,128,128,128,128,128,128,128,128,128,192,64,96,48,4,18, + 18,6,1,253,192,96,32,48,16,16,16,16,16,16,16,16, + 16,16,32,32,96,128,7,7,7,8,1,7,16,148,222,48, + 252,146,16,7,7,7,8,0,2,16,16,16,254,16,16,16, + 2,5,5,4,1,253,64,192,64,64,128,5,1,1,6,1, + 4,248,2,3,3,4,1,255,192,192,128,8,18,18,9,0, + 253,1,1,3,2,6,4,4,12,8,8,24,16,48,32,32, + 96,64,192,7,11,11,9,1,0,56,68,130,130,130,130,130, + 130,132,68,56,6,12,12,9,1,0,16,112,144,16,16,16, + 16,16,16,16,16,252,6,12,12,8,1,0,60,68,196,4, + 4,8,16,16,32,68,132,252,7,12,12,8,0,0,28,38, + 98,2,4,28,2,2,2,2,134,124,7,12,12,9,1,0, + 4,12,12,20,20,36,68,68,254,4,4,30,6,11,11,9, + 2,0,124,64,64,64,120,132,4,4,4,132,120,7,12,12, + 9,1,0,12,48,64,64,128,252,198,130,130,130,68,56,7, + 11,11,9,1,0,254,130,4,4,8,8,24,16,48,32,96, + 7,12,12,9,1,0,120,196,196,196,232,60,78,130,130,130, + 194,124,7,11,11,9,1,0,56,68,130,130,130,198,122,2, + 4,8,112,2,10,10,4,1,255,128,192,128,0,0,0,0, + 192,192,128,2,12,12,4,1,253,128,192,128,0,0,0,0, + 64,192,64,64,128,7,6,6,8,1,2,6,28,224,192,56, + 6,7,4,4,8,1,3,254,0,0,254,7,6,6,8,1, + 2,192,112,14,28,112,128,6,15,15,8,1,255,56,68,132, + 132,4,8,16,16,32,32,32,0,48,48,32,14,15,30,16, + 1,253,7,224,24,48,32,8,71,200,136,68,144,68,144,68, + 144,68,144,68,144,72,136,200,71,112,32,8,24,48,15,192, + 11,12,24,11,0,0,4,0,6,0,14,0,10,0,11,0, + 17,0,17,0,31,128,33,128,32,128,32,192,241,224,8,12, + 12,10,1,0,252,66,66,66,68,126,67,65,65,65,67,254, + 8,12,12,10,1,0,30,99,128,128,128,128,128,128,128,192, + 99,60,9,12,24,11,1,0,252,0,67,0,65,0,64,128, + 64,128,64,128,64,128,64,128,64,128,65,0,66,0,252,0, + 8,12,12,9,1,0,254,66,64,64,64,124,72,64,64,66, + 67,254,7,12,12,9,1,0,254,66,64,64,64,124,72,64, + 64,64,64,240,10,12,24,11,1,0,15,0,49,128,64,0, + 128,0,128,0,128,0,131,192,128,128,128,128,64,128,96,128, + 31,0,10,12,24,12,1,0,225,192,64,128,64,128,64,128, + 64,128,127,128,64,128,64,128,64,128,64,128,64,128,225,192, + 3,12,12,6,1,0,224,64,64,64,64,64,64,64,64,64, + 64,224,6,15,15,6,255,253,60,8,8,8,8,8,8,8, + 8,8,8,8,8,144,224,10,12,24,11,1,0,231,128,66, + 0,68,0,72,0,80,0,96,0,80,0,88,0,76,0,70, + 0,67,0,225,192,7,12,12,9,1,0,224,64,64,64,64, + 64,64,64,64,66,66,254,14,12,24,15,1,0,224,56,96, + 48,112,112,80,80,80,80,88,144,72,144,77,16,69,16,71, + 16,66,16,226,124,10,12,24,12,1,0,193,192,96,128,112, + 128,80,128,88,128,76,128,68,128,70,128,67,128,65,128,65, + 128,224,128,9,12,24,11,1,0,30,0,99,0,129,0,128, + 128,128,128,128,128,128,128,128,128,128,128,65,0,98,0,60, + 0,8,12,12,10,1,0,252,66,65,65,65,66,92,64,64, + 64,64,240,11,15,30,11,1,253,30,0,99,0,129,0,128, + 128,128,128,128,128,128,128,128,128,128,128,65,0,98,0,60, + 0,6,0,3,32,0,192,10,12,24,11,1,0,252,0,67, + 0,65,0,65,0,65,0,66,0,124,0,76,0,70,0,67, + 0,67,0,225,192,7,12,12,9,1,0,60,198,128,128,224, + 56,12,2,2,130,196,248,9,12,24,10,1,0,255,128,136, + 128,136,128,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,62,0,10,12,24,12,1,0,225,192,64,128,64, + 128,64,128,64,128,64,128,64,128,64,128,64,128,64,128,33, + 0,30,0,12,12,24,12,0,0,240,240,32,64,48,64,48, + 64,16,128,24,128,9,128,9,0,13,0,7,0,6,0,6, + 0,16,12,24,16,0,0,241,15,33,132,33,132,33,132,50, + 196,50,72,18,104,20,104,28,40,28,56,8,48,8,16,11, + 12,24,12,0,0,249,224,32,128,49,128,25,0,14,0,6, + 0,6,0,11,0,25,128,48,128,32,192,241,224,11,12,24, + 11,0,0,225,224,48,128,49,128,25,0,10,0,14,0,4, + 0,4,0,4,0,4,0,4,0,31,0,8,12,12,10,1, + 0,255,130,134,4,12,24,16,48,96,65,193,255,4,18,18, + 6,1,253,240,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,240,7,18,18,9,1,253,128,128,192,64,64, + 32,32,48,16,16,24,8,8,4,4,6,2,2,4,18,18, + 5,0,253,240,16,16,16,16,16,16,16,16,16,16,16,16, + 16,16,16,16,240,7,9,9,9,1,5,16,24,40,44,44, + 68,70,130,130,7,1,1,9,1,254,254,4,4,4,6,0, + 10,192,96,32,16,7,9,9,9,1,0,60,68,132,4,60, + 196,132,140,118,9,14,28,10,0,0,64,0,192,0,64,0, + 64,0,64,0,70,0,89,0,96,128,64,128,64,128,64,128, + 65,0,97,0,62,0,6,9,9,8,1,0,60,68,128,128, + 128,128,128,196,120,8,14,14,10,1,0,6,2,2,2,2, + 62,66,130,130,130,130,130,70,59,7,9,9,9,1,0,60, + 68,130,130,254,128,128,66,60,6,14,14,6,1,0,28,36, + 64,64,64,248,64,64,64,64,64,64,64,240,10,13,26,10, + 0,252,62,192,67,0,129,0,129,0,194,0,60,0,48,0, + 120,0,39,128,192,128,128,128,193,0,62,0,8,14,14,10, + 1,0,64,192,64,64,64,76,82,98,66,66,66,66,66,231, + 3,12,12,5,1,0,192,192,0,64,192,64,64,64,64,64, + 64,224,5,16,16,5,254,252,24,24,0,8,24,8,8,8, + 8,8,8,8,8,8,16,224,8,14,14,10,1,0,64,192, + 64,64,64,79,68,72,112,112,88,76,70,231,3,14,14,5, + 1,0,64,192,64,64,64,64,64,64,64,64,64,64,64,224, + 13,9,18,15,1,0,204,96,82,144,99,16,66,16,66,16, + 66,16,66,16,66,16,231,56,8,9,9,10,1,0,76,210, + 98,66,66,66,66,66,231,8,9,9,10,1,0,60,66,129, + 129,129,129,130,66,60,8,13,13,10,1,252,206,114,65,65, + 65,65,66,98,92,64,64,64,240,9,13,26,10,1,252,29, + 0,99,0,129,0,129,0,129,0,129,0,129,0,71,0,57, + 0,1,0,1,0,1,0,7,128,6,9,9,8,1,0,92, + 228,96,64,64,64,64,64,240,5,9,9,7,1,0,112,136, + 128,192,48,8,136,136,240,5,12,12,7,1,0,64,64,64, + 248,64,64,64,64,64,64,72,112,8,9,9,10,1,0,198, + 66,66,66,66,66,66,70,59,9,9,18,9,0,0,243,128, + 97,0,33,0,50,0,18,0,18,0,28,0,12,0,8,0, + 13,9,18,13,0,0,242,56,99,16,35,16,37,16,53,160, + 20,160,24,224,24,192,24,64,9,9,18,10,0,0,243,128, + 33,0,50,0,28,0,12,0,22,0,34,0,33,0,243,128, + 9,13,26,9,0,252,243,128,97,0,33,0,50,0,18,0, + 20,0,28,0,12,0,8,0,8,0,16,0,176,0,224,0, + 7,9,9,8,1,0,254,132,8,24,48,32,98,194,254,5, + 18,18,6,1,253,8,16,32,32,32,32,32,32,64,224,32, + 32,32,32,32,32,32,24,1,20,20,4,2,252,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,5,18,18,6,0,253,192,32,32,32,32,32,32,32,56, + 16,32,32,32,32,32,32,64,128,9,4,8,9,0,4,48, + 0,125,128,79,0,134,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--23-230-72-72-P-110-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=24 x= 2 y=13 dx=20 dy= 0 ascent=20 len=57 + Font Bounding box w=35 h=33 x=-12 y=-8 + Calculated Min Values x=-3 y=-6 dx= 0 dy= 0 + Pure Font ascent =14 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =20 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr14[5942] U8G_SECTION(".progmem.u8g_font_gdr14") = { + 0,35,33,244,248,14,3,95,7,136,32,255,251,20,250,18, + 251,0,0,0,5,0,0,2,17,17,6,2,0,64,192,192, + 192,192,192,192,192,192,192,192,192,128,0,192,192,192,6,8, + 8,10,2,9,204,204,204,204,204,204,204,140,10,13,26,11, + 1,1,12,128,9,128,9,0,9,0,127,192,19,0,18,0, + 50,0,255,128,36,0,100,0,68,0,76,0,9,18,36,11, + 1,254,12,0,12,0,63,128,109,128,205,0,204,0,236,0, + 124,0,63,0,15,0,13,128,13,128,141,128,205,128,239,0, + 126,0,12,0,12,0,14,14,28,16,1,0,56,24,72,48, + 204,96,204,64,204,192,205,128,75,0,114,56,6,76,12,204, + 8,204,16,204,48,200,96,112,14,16,32,16,1,0,15,0, + 25,128,49,128,49,128,49,0,51,0,60,0,60,252,124,112, + 102,48,199,48,195,176,193,224,192,224,96,176,63,28,2,8, + 8,6,2,9,192,192,192,192,192,192,192,128,6,22,22,7, + 1,252,12,24,16,32,96,96,64,192,192,192,192,192,192,192, + 192,64,96,96,32,48,24,12,6,22,22,7,0,252,192,96, + 48,16,24,24,8,12,12,12,12,12,12,12,12,8,24,24, + 16,32,96,192,9,10,20,10,1,8,24,0,24,0,137,0, + 235,128,60,0,60,0,235,0,137,0,24,0,24,0,8,8, + 8,9,1,2,24,24,24,255,24,24,24,24,4,6,6,5, + 0,253,112,240,48,48,32,64,6,1,1,8,1,5,252,2, + 3,3,5,2,0,192,192,192,9,22,44,11,1,252,0,128, + 1,128,1,0,3,0,3,0,2,0,6,0,6,0,12,0, + 12,0,8,0,24,0,24,0,16,0,48,0,48,0,96,0, + 96,0,64,0,192,0,192,0,128,0,9,14,28,11,1,0, + 28,0,39,0,99,0,67,128,193,128,193,128,193,128,193,128, + 193,128,193,128,193,0,97,0,98,0,28,0,8,14,14,11, + 2,0,24,120,152,24,24,24,24,24,24,24,24,24,24,255, + 8,14,14,11,1,0,60,103,195,131,3,6,6,12,24,24, + 48,97,193,255,9,14,28,12,1,0,30,0,103,0,195,0, + 3,0,2,0,4,0,30,0,3,0,1,128,1,128,1,128, + 1,128,195,0,60,0,10,14,28,11,0,0,3,0,7,0, + 7,0,11,0,27,0,19,0,35,0,99,0,67,0,255,192, + 3,0,3,0,3,0,15,192,9,14,28,11,0,0,0,128, + 63,0,32,0,32,0,96,0,126,0,67,0,1,128,1,128, + 1,128,1,128,1,0,195,0,60,0,9,14,28,11,1,0, + 3,0,12,0,48,0,32,0,96,0,222,0,227,0,193,128, + 193,128,193,128,193,128,97,0,99,0,30,0,9,13,26,11, + 1,0,127,128,129,0,129,0,3,0,2,0,6,0,4,0, + 12,0,8,0,24,0,24,0,48,0,32,0,9,14,28,11, + 1,0,62,0,71,0,195,0,195,0,195,0,118,0,30,0, + 39,0,99,128,193,128,193,128,193,128,99,0,60,0,9,14, + 28,11,1,0,30,0,99,0,67,0,193,128,193,128,193,128, + 193,128,99,128,61,128,1,0,3,0,6,0,8,0,112,0, + 2,11,11,5,2,0,192,192,192,0,0,0,0,0,192,192, + 192,4,14,14,5,0,253,48,48,48,0,0,0,0,0,112, + 240,48,48,32,64,8,7,7,10,1,3,1,15,120,192,112, + 30,3,8,4,4,10,1,4,255,0,0,255,8,7,7,10, + 1,3,192,120,15,3,30,240,128,8,17,17,10,1,0,62, + 103,195,195,3,3,6,12,12,24,24,24,16,0,24,24,24, + 17,19,57,19,1,252,1,240,0,6,28,0,24,6,0,48, + 3,0,32,3,0,97,211,128,66,49,128,196,49,128,204,49, + 128,204,49,128,204,49,128,204,49,0,236,51,0,102,114,0, + 99,156,0,48,0,0,56,2,0,14,15,0,3,240,0,13, + 14,28,14,0,0,2,0,3,0,5,0,5,128,5,128,8, + 128,8,192,8,192,31,192,16,96,16,96,32,48,32,48,248, + 120,11,14,28,12,0,0,127,0,177,192,48,192,48,192,48, + 192,49,128,63,128,49,192,48,224,48,96,48,96,48,96,48, + 192,255,128,11,14,28,12,1,0,7,192,24,96,32,0,96, + 0,64,0,192,0,192,0,192,0,192,0,192,0,96,0,96, + 32,56,64,15,128,13,14,28,14,0,0,127,128,176,224,48, + 112,48,48,48,24,48,24,48,24,48,24,48,24,48,24,48, + 48,48,112,48,224,255,128,11,14,28,11,0,0,255,192,48, + 64,48,64,48,0,48,0,48,0,63,128,49,0,48,0,48, + 0,48,0,48,32,48,96,255,192,10,14,28,11,0,0,255, + 192,48,64,48,64,48,0,48,0,48,0,63,128,49,0,48, + 0,48,0,48,0,48,0,48,0,252,0,11,14,28,13,1, + 0,15,128,16,192,32,0,96,0,192,0,192,0,192,0,195, + 224,192,192,192,192,96,192,96,192,48,192,31,0,15,14,28, + 15,0,0,252,126,48,24,48,24,48,24,48,24,48,24,63, + 248,48,24,48,24,48,24,48,24,48,24,48,24,252,126,6, + 14,14,7,0,0,252,48,48,48,48,48,48,48,48,48,48, + 48,48,252,9,18,36,7,254,252,31,128,6,0,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,4,0,72,0,240,0,13,14,28, + 13,0,0,252,240,48,64,48,128,49,0,50,0,54,0,60, + 0,54,0,54,0,51,0,49,128,48,192,48,96,252,56,11, + 14,28,11,0,0,252,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,32,48,64,255, + 192,17,14,42,19,1,0,240,7,0,112,14,0,112,14,0, + 120,30,0,104,22,0,108,22,0,108,38,0,102,38,0,102, + 102,0,99,70,0,99,198,0,97,134,0,97,134,0,241,15, + 128,15,14,28,15,0,0,240,126,48,24,56,24,60,24,52, + 24,50,24,51,24,49,152,48,152,48,216,48,120,48,56,48, + 56,252,24,12,14,28,14,1,0,15,128,48,192,32,96,96, + 96,192,48,192,48,192,48,192,48,192,48,192,48,96,96,96, + 64,48,128,31,0,11,14,28,12,0,0,127,128,176,192,48, + 96,48,96,48,96,48,96,48,192,63,0,48,0,48,0,48, + 0,48,0,48,0,252,0,14,17,34,14,1,253,15,128,48, + 192,32,96,96,96,192,48,192,48,192,48,192,48,192,48,192, + 48,96,96,96,96,48,192,31,0,1,128,0,196,0,56,13, + 14,28,13,0,0,127,0,177,128,48,192,48,192,48,192,48, + 128,49,0,62,0,51,0,49,0,49,128,48,192,48,192,252, + 120,9,14,28,11,1,0,62,0,99,0,192,0,192,0,224, + 0,120,0,62,0,15,0,3,128,1,128,129,128,129,0,195, + 0,124,0,12,14,28,13,0,0,255,240,134,16,134,16,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,31,128,15,14,28,15,0,0,252,126,48,24,48, + 24,48,24,48,24,48,24,48,24,48,24,48,24,48,24,48, + 24,24,48,28,96,7,192,14,14,28,15,0,0,248,60,48, + 24,48,16,24,16,24,48,24,32,12,96,12,64,4,64,6, + 192,6,128,3,128,3,128,1,0,19,14,42,20,0,0,248, + 67,224,48,96,128,48,96,128,48,224,128,16,177,128,16,177, + 0,25,145,0,25,25,0,25,25,0,11,11,0,14,14,0, + 14,14,0,14,6,0,4,6,0,14,14,28,14,0,0,252, + 248,48,48,24,96,28,192,12,128,7,128,3,0,3,128,5, + 128,12,192,24,96,16,112,48,48,248,124,14,14,28,14,0, + 0,224,124,48,48,24,32,24,96,12,64,6,192,7,128,3, + 0,3,0,3,0,3,0,3,0,3,0,15,192,10,14,28, + 12,1,0,127,192,65,128,129,128,3,0,6,0,6,0,12, + 0,28,0,24,0,48,0,48,0,96,64,192,64,255,192,5, + 22,22,7,1,252,248,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,248,9,22,44,11,1, + 252,128,0,192,0,192,0,64,0,96,0,32,0,48,0,48, + 0,16,0,24,0,24,0,8,0,12,0,4,0,4,0,6, + 0,2,0,3,0,3,0,1,0,1,128,0,128,5,22,22, + 8,1,252,248,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,248,9,11,22,11,1,6,8, + 0,12,0,28,0,22,0,54,0,34,0,35,0,99,0,65, + 128,65,128,129,128,9,1,2,11,1,253,255,128,5,5,5, + 7,0,12,224,96,48,16,8,10,10,20,11,1,0,30,0, + 99,0,195,0,3,0,31,0,99,0,195,0,195,0,199,0, + 123,192,10,17,34,12,1,0,96,0,224,0,96,0,96,0, + 96,0,96,0,96,0,103,0,121,128,113,192,96,192,96,192, + 96,192,96,192,96,128,113,0,30,0,9,10,20,10,1,0, + 15,0,49,128,96,0,192,0,192,0,192,0,192,0,96,0, + 113,128,30,0,11,17,34,12,1,0,1,128,7,128,1,128, + 1,128,1,128,1,128,1,128,31,128,35,128,65,128,193,128, + 193,128,193,128,193,128,225,128,103,160,57,192,9,10,20,11, + 1,0,30,0,33,0,65,128,255,128,192,0,192,0,192,0, + 224,0,113,128,62,0,9,17,34,7,0,0,7,128,9,0, + 16,0,48,0,48,0,48,0,48,0,126,0,176,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,252,0,12,15, + 30,12,0,251,31,48,49,192,96,192,96,192,96,192,49,128, + 31,0,24,0,56,0,31,192,96,112,192,48,192,48,96,96, + 63,128,13,17,34,13,0,0,48,0,240,0,48,0,48,0, + 48,0,48,0,48,0,51,192,52,96,56,96,48,96,48,96, + 48,96,48,96,48,96,48,96,253,248,6,15,15,6,0,0, + 48,48,48,0,0,48,240,48,48,48,48,48,48,48,252,7, + 20,20,6,253,251,6,6,6,0,0,6,30,6,6,6,6, + 6,6,6,6,6,6,4,8,240,12,17,34,12,0,0,48, + 0,240,0,48,0,48,0,48,0,48,0,48,0,49,224,49, + 128,51,0,52,0,60,0,54,0,51,0,49,128,48,192,248, + 240,6,17,17,6,0,0,48,240,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,252,20,10,30,20,0,0,113,199, + 128,182,104,192,56,112,192,48,96,192,48,96,192,48,96,192, + 48,96,192,48,96,192,48,96,192,253,251,240,13,10,20,13, + 0,0,113,192,182,96,56,96,48,96,48,96,48,96,48,96, + 48,96,48,96,253,248,10,10,20,12,1,0,30,0,35,128, + 65,128,192,192,192,192,192,192,192,192,224,128,113,0,30,0, + 11,15,30,12,0,251,115,128,188,192,56,224,48,96,48,96, + 48,96,48,96,48,64,56,192,55,0,48,0,48,0,48,0, + 48,0,252,0,11,15,30,12,1,251,30,128,35,128,97,128, + 193,128,193,128,193,128,193,128,225,128,99,128,61,128,1,128, + 1,128,1,128,1,128,7,224,9,10,20,9,0,0,51,128, + 252,128,56,0,48,0,48,0,48,0,48,0,48,0,48,0, + 252,0,7,10,10,9,1,0,124,204,192,224,120,30,6,134, + 134,248,8,14,14,8,0,0,16,48,48,48,127,176,48,48, + 48,48,48,48,49,30,11,10,20,12,1,0,97,128,231,128, + 97,128,97,128,97,128,97,128,97,128,97,128,103,160,57,192, + 11,10,20,11,0,0,249,224,32,64,48,128,48,128,25,128, + 25,0,9,0,14,0,6,0,4,0,16,10,20,16,0,0, + 248,143,33,130,49,196,49,196,19,100,26,108,26,40,12,56, + 12,56,12,16,11,10,20,12,0,0,249,224,48,128,25,0, + 15,0,6,0,14,0,11,0,17,128,32,192,241,224,12,15, + 30,11,255,251,124,240,16,32,24,64,24,64,12,192,12,128, + 4,128,7,0,3,0,3,0,2,0,6,0,4,0,120,0, + 240,0,8,10,10,10,1,0,255,131,134,12,8,24,48,97, + 65,255,6,22,22,8,1,252,4,24,16,48,48,48,56,24, + 24,24,48,240,24,24,24,24,48,48,48,48,24,4,2,24, + 24,5,2,251,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,6,22,22,8, + 1,252,128,96,48,48,48,48,96,96,96,96,60,16,32,96, + 96,112,48,48,48,32,96,128,10,4,8,11,1,5,48,64, + 124,128,159,0,135,0,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,0,0,5,0,0,2,16,16, + 6,2,250,192,192,128,64,192,192,192,192,192,192,192,192,192, + 192,192,128,9,14,28,11,1,0,12,0,12,0,31,128,109, + 128,76,0,204,0,204,0,204,0,204,0,236,128,125,128,63, + 0,12,0,12,0,10,14,28,11,0,0,7,128,24,192,16, + 128,48,128,48,0,48,0,48,0,126,0,48,0,48,0,48, + 0,32,64,32,64,255,192,9,7,14,11,1,3,221,128,119, + 0,99,0,99,0,115,0,127,0,128,128,12,14,28,11,255, + 0,225,240,48,64,48,192,25,128,29,128,15,0,7,0,6, + 0,63,192,6,0,6,0,6,0,6,0,31,128,2,24,24, + 5,2,251,192,192,192,192,192,192,192,192,192,192,128,0,0, + 64,192,192,192,192,192,192,192,192,192,192,9,16,32,11,1, + 0,30,0,99,0,98,0,112,0,56,0,94,0,199,0,195, + 128,225,128,113,128,63,0,15,0,7,0,67,0,99,0,62, + 0,7,3,3,9,1,12,198,198,198,15,14,28,16,0,0, + 7,192,24,48,49,248,98,44,198,6,204,6,204,6,204,6, + 204,6,206,38,102,76,51,152,24,48,7,192,6,8,8,6, + 0,6,112,152,24,56,120,124,0,124,9,10,20,11,1,0, + 17,128,17,0,34,0,102,0,204,0,204,0,102,0,34,0, + 17,0,17,128,10,5,10,11,0,2,255,192,0,192,0,192, + 0,192,0,192,6,1,1,8,1,5,252,8,8,8,8,0, + 8,60,66,189,149,153,153,86,60,7,1,1,11,2,13,254, + 4,5,5,8,2,9,96,240,240,240,96,8,10,10,9,1, + 2,24,24,24,24,255,24,24,24,0,255,6,8,8,8,1, + 7,120,140,140,8,16,32,68,252,7,8,8,7,255,7,60, + 102,6,28,6,6,134,120,5,5,5,7,2,12,24,48,32, + 64,192,12,15,30,13,1,251,96,192,224,192,96,192,96,192, + 96,192,96,192,96,192,113,192,127,208,92,224,64,0,64,0, + 96,0,96,0,112,0,13,17,34,14,0,253,31,248,99,96, + 195,96,195,96,195,96,227,96,115,96,63,96,3,96,3,96, + 3,96,3,96,3,96,3,96,3,96,3,96,15,248,2,3, + 3,3,1,6,192,192,192,4,5,5,5,1,251,96,96,112, + 48,192,6,8,8,8,1,7,48,240,48,48,48,48,48,252, + 4,8,8,6,1,6,96,240,240,240,240,96,0,240,8,10, + 10,11,2,0,136,140,68,98,51,51,102,68,140,136,12,14, + 28,13,0,0,24,96,120,192,24,192,25,128,27,0,27,0, + 126,0,4,96,12,224,25,96,18,96,51,240,96,96,192,240, + 13,14,28,14,0,0,48,16,240,32,48,96,48,64,48,128, + 48,128,249,0,3,120,2,152,4,24,12,48,8,32,16,72, + 49,248,12,14,28,14,1,0,112,32,152,64,24,64,56,128, + 77,128,141,0,114,0,6,96,4,224,9,96,25,96,19,240, + 32,96,96,240,8,16,16,10,1,250,24,24,16,4,12,12, + 12,24,48,96,96,192,195,195,230,124,13,20,40,14,0,0, + 16,0,28,0,14,0,3,0,0,128,0,0,2,0,3,0, + 5,0,5,128,5,128,8,128,8,192,8,192,31,192,16,96, + 16,96,32,48,32,48,248,120,13,20,40,14,0,0,0,128, + 0,192,3,160,6,0,0,0,0,0,2,0,3,0,5,0, + 5,128,5,128,8,128,8,192,8,192,31,192,16,96,16,96, + 32,48,32,48,248,120,13,20,40,14,0,0,2,0,7,0, + 13,128,8,64,16,0,0,0,2,0,3,0,5,0,5,128, + 5,128,8,128,8,192,8,192,31,192,16,96,16,96,32,48, + 32,48,248,120,13,19,38,14,0,0,4,64,14,96,19,192, + 0,0,0,0,2,0,3,0,5,0,5,128,5,128,8,128, + 8,192,8,192,31,192,16,96,16,96,32,48,32,48,248,120, + 13,18,36,14,0,0,8,64,12,96,8,64,0,0,2,0, + 3,0,5,0,5,128,5,128,8,128,8,192,8,192,31,192, + 16,96,16,96,32,48,32,48,248,120,13,20,40,14,0,0, + 2,0,7,0,7,128,7,0,0,0,0,0,2,0,3,0, + 5,0,5,128,5,128,8,128,8,192,8,192,31,192,16,96, + 16,96,32,48,32,48,248,120,18,14,42,18,0,0,7,255, + 128,1,96,128,3,96,128,2,96,0,6,96,0,6,96,0, + 7,255,0,12,98,0,8,96,0,24,96,0,16,96,0,16, + 96,64,48,96,64,249,255,128,11,19,38,12,1,251,7,192, + 24,96,32,0,96,0,64,0,192,0,192,0,192,0,192,0, + 192,0,224,0,96,128,113,192,62,0,8,0,4,0,14,0, + 6,0,24,0,11,20,40,11,0,0,32,0,56,0,28,0, + 6,0,1,0,0,0,255,192,48,64,48,64,48,0,48,0, + 48,0,63,128,49,0,48,0,48,0,48,0,48,32,48,96, + 255,192,11,20,40,11,0,0,1,0,1,128,7,0,12,0, + 0,0,0,0,255,192,48,64,48,64,48,0,48,0,48,0, + 63,128,49,0,48,0,48,0,48,0,48,32,48,96,255,192, + 11,20,40,11,0,0,4,0,14,0,27,0,48,128,0,0, + 0,0,255,192,48,64,48,64,48,0,48,0,48,0,63,128, + 49,0,48,0,48,0,48,0,48,32,48,96,255,192,11,18, + 36,11,0,0,16,128,49,128,49,128,0,0,255,192,48,64, + 48,64,48,0,48,0,48,0,63,128,49,0,48,0,48,0, + 48,0,48,32,48,96,255,192,6,20,20,7,0,0,128,192, + 112,24,0,0,252,48,48,48,48,48,48,48,48,48,48,48, + 48,252,7,20,20,7,0,0,4,14,28,48,64,0,252,48, + 48,48,48,48,48,48,48,48,48,48,48,252,7,20,20,7, + 0,0,16,56,108,134,0,0,252,48,48,48,48,48,48,48, + 48,48,48,48,48,252,7,18,18,7,0,0,66,198,198,0, + 252,48,48,48,48,48,48,48,48,48,48,48,48,252,13,14, + 28,14,0,0,127,128,176,224,48,112,48,48,48,24,48,24, + 254,24,48,24,48,24,48,24,48,48,48,112,48,224,255,128, + 15,19,38,15,0,0,2,32,7,32,9,192,0,0,0,0, + 240,126,48,24,56,24,60,24,52,24,50,24,51,24,49,152, + 48,152,48,216,48,120,48,56,48,56,252,24,12,20,40,14, + 1,0,16,0,56,0,12,0,2,0,1,0,0,0,15,128, + 48,192,32,96,96,96,192,48,192,48,192,48,192,48,192,48, + 192,48,96,96,96,64,48,128,31,0,12,20,40,14,1,0, + 1,0,1,192,3,0,12,0,0,0,0,0,15,128,48,192, + 32,96,96,96,192,48,192,48,192,48,192,48,192,48,192,48, + 96,96,96,64,48,128,31,0,12,20,40,14,1,0,6,0, + 14,0,11,0,16,128,32,0,0,0,15,128,48,192,32,96, + 96,96,192,48,192,48,192,48,192,48,192,48,192,48,96,96, + 96,64,48,128,31,0,12,19,38,14,1,0,8,128,28,64, + 55,128,0,0,0,0,15,128,48,192,32,96,96,96,192,48, + 192,48,192,48,192,48,192,48,192,48,96,96,96,64,48,128, + 31,0,12,18,36,14,1,0,16,128,24,192,16,128,0,0, + 15,128,48,192,32,96,96,96,192,48,192,48,192,48,192,48, + 192,48,192,48,96,96,96,64,48,128,31,0,7,7,7,9, + 1,3,194,102,60,24,60,102,194,12,15,30,14,1,255,15, + 48,48,224,32,224,64,224,193,176,195,48,194,48,198,48,204, + 48,200,48,88,32,112,64,112,128,207,0,128,0,15,20,40, + 15,0,0,8,0,14,0,7,0,1,128,0,64,0,0,252, + 126,48,24,48,24,48,24,48,24,48,24,48,24,48,24,48, + 24,48,24,48,24,24,48,28,96,7,192,15,20,40,15,0, + 0,0,64,0,96,1,192,3,0,0,0,0,0,252,126,48, + 24,48,24,48,24,48,24,48,24,48,24,48,24,48,24,48, + 24,48,24,24,48,28,96,7,192,15,20,40,15,0,0,1, + 0,3,128,6,192,12,96,0,0,0,0,252,126,48,24,48, + 24,48,24,48,24,48,24,48,24,48,24,48,24,48,24,48, + 24,24,48,28,96,7,192,15,18,36,15,0,0,4,32,12, + 96,12,96,0,0,252,126,48,24,48,24,48,24,48,24,48, + 24,48,24,48,24,48,24,48,24,48,24,24,48,28,96,7, + 192,14,20,40,14,0,0,0,128,0,224,1,128,6,0,0, + 0,0,0,224,124,48,48,24,32,24,96,12,64,6,192,7, + 128,3,0,3,0,3,0,3,0,3,0,3,0,15,192,11, + 14,28,12,0,0,252,0,48,0,48,0,63,128,48,192,48, + 96,48,96,48,96,48,96,48,192,63,128,48,0,48,0,252, + 0,13,17,34,13,0,0,7,128,8,192,16,96,48,96,48, + 96,48,224,51,192,55,0,54,0,55,0,51,192,48,240,48, + 56,48,24,52,24,50,16,243,224,10,17,34,11,1,0,96, + 0,48,0,16,0,8,0,4,0,0,0,0,0,30,0,99, + 0,195,0,3,0,31,0,99,0,195,0,195,0,199,0,123, + 192,10,17,34,11,1,0,3,0,6,0,12,0,8,0,16, + 0,0,0,0,0,30,0,99,0,195,0,3,0,31,0,99, + 0,195,0,195,0,199,0,123,192,10,17,34,11,1,0,24, + 0,28,0,54,0,98,0,65,0,0,0,0,0,30,0,99, + 0,195,0,3,0,31,0,99,0,195,0,195,0,199,0,123, + 192,10,15,30,11,1,0,57,0,78,0,0,0,0,0,0, + 0,30,0,99,0,195,0,3,0,31,0,99,0,195,0,195, + 0,199,0,123,192,10,15,30,11,1,0,33,0,99,0,99, + 0,0,0,0,0,30,0,99,0,195,0,3,0,31,0,99, + 0,195,0,195,0,199,0,123,192,10,16,32,11,1,0,28, + 0,60,0,60,0,24,0,0,0,0,0,30,0,99,0,195, + 0,3,0,31,0,99,0,195,0,195,0,199,0,123,192,14, + 10,20,16,1,0,30,112,99,152,195,12,131,12,31,252,115, + 0,195,0,195,0,197,132,120,248,9,15,30,10,1,251,15, + 0,49,128,96,0,192,0,192,0,192,0,192,0,192,0,99, + 0,124,0,16,0,8,0,28,0,12,0,48,0,9,17,34, + 11,1,0,48,0,112,0,24,0,8,0,4,0,0,0,0, + 0,30,0,33,0,65,128,255,128,192,0,192,0,192,0,224, + 0,113,128,62,0,9,17,34,11,1,0,3,0,6,0,6, + 0,12,0,8,0,0,0,0,0,30,0,33,0,65,128,255, + 128,192,0,192,0,192,0,224,0,113,128,62,0,9,17,34, + 11,1,0,12,0,28,0,54,0,35,0,65,0,0,0,0, + 0,30,0,33,0,65,128,255,128,192,0,192,0,192,0,224, + 0,113,128,62,0,9,15,30,11,1,0,33,0,49,128,33, + 0,0,0,0,0,30,0,33,0,65,128,255,128,192,0,192, + 0,192,0,224,0,113,128,62,0,6,17,17,6,0,0,192, + 96,32,48,16,0,0,48,240,48,48,48,48,48,48,48,252, + 7,17,17,6,0,0,12,14,24,16,32,0,0,48,240,48, + 48,48,48,48,48,48,252,7,17,17,6,0,0,48,56,104, + 196,130,0,0,48,240,48,48,48,48,48,48,48,252,7,15, + 15,6,0,0,198,198,198,0,0,48,240,48,48,48,48,48, + 48,48,252,9,16,32,11,1,0,48,0,91,128,12,0,50, + 0,3,0,1,0,31,128,99,128,67,128,193,128,193,128,193, + 128,193,0,227,0,98,0,60,0,13,15,30,13,0,0,14, + 64,19,128,0,0,0,0,0,0,113,192,182,96,56,96,48, + 96,48,96,48,96,48,96,48,96,48,96,253,248,10,17,34, + 12,1,0,48,0,48,0,24,0,12,0,4,0,0,0,0, + 0,30,0,35,128,65,128,192,192,192,192,192,192,192,192,224, + 128,113,0,30,0,10,17,34,12,1,0,3,0,3,0,6, + 0,4,0,8,0,0,0,0,0,30,0,35,128,65,128,192, + 192,192,192,192,192,192,192,224,128,113,0,30,0,10,17,34, + 12,1,0,12,0,30,0,18,0,33,0,64,128,0,0,0, + 0,30,0,35,128,65,128,192,192,192,192,192,192,192,192,224, + 128,113,0,30,0,10,15,30,12,1,0,56,128,71,0,0, + 0,0,0,0,0,30,0,35,128,65,128,192,192,192,192,192, + 192,192,192,224,128,113,0,30,0,10,15,30,12,1,0,49, + 128,49,128,33,0,0,0,0,0,30,0,35,128,65,128,192, + 192,192,192,192,192,192,192,224,128,113,0,30,0,8,7,7, + 9,1,3,24,24,0,255,0,24,24,10,12,24,12,1,255, + 0,64,30,192,35,128,67,192,194,192,196,192,200,192,216,192, + 240,128,113,0,222,0,128,0,11,17,34,12,1,0,48,0, + 24,0,24,0,12,0,4,0,0,0,0,0,97,128,231,128, + 97,128,97,128,97,128,97,128,97,128,97,128,103,160,57,192, + 11,17,34,12,1,0,3,0,3,128,6,0,4,0,8,0, + 0,0,0,0,97,128,231,128,97,128,97,128,97,128,97,128, + 97,128,97,128,103,160,57,192,11,17,34,12,1,0,12,0, + 14,0,26,0,49,0,32,128,0,0,0,0,97,128,231,128, + 97,128,97,128,97,128,97,128,97,128,97,128,103,160,57,192, + 11,15,30,12,1,0,49,128,49,128,49,128,0,0,0,0, + 97,128,231,128,97,128,97,128,97,128,97,128,97,128,97,128, + 103,160,57,192,12,22,44,11,255,251,0,192,0,192,1,128, + 3,0,2,0,0,0,0,0,124,240,16,32,24,64,24,64, + 12,192,12,128,4,128,7,0,3,0,3,0,2,0,6,0, + 4,0,120,0,240,0,11,22,44,12,0,251,48,0,240,0, + 48,0,48,0,48,0,48,0,48,0,51,128,60,192,56,224, + 48,96,48,96,48,96,48,96,48,64,56,128,55,0,48,0, + 48,0,48,0,48,0,252,0,12,20,40,11,255,251,12,96, + 12,96,8,64,0,0,0,0,124,240,16,32,24,64,24,64, + 12,192,12,128,4,128,7,0,3,0,3,0,2,0,6,0, + 4,0,120,0,240,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--23-230-72-72-P-110-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 14 + Calculated Max Values w=10 h=22 x= 2 y= 8 dx=12 dy= 0 ascent=18 len=44 + Font Bounding box w=35 h=33 x=-12 y=-8 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent= 0 + X Font ascent =14 descent= 0 + Max Font ascent =18 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr14n[445] U8G_SECTION(".progmem.u8g_font_gdr14n") = { + 0,35,33,244,248,14,0,0,0,0,42,57,0,18,252,14, + 0,9,10,20,10,1,8,24,0,24,0,137,0,235,128,60, + 0,60,0,235,0,137,0,24,0,24,0,8,8,8,9,1, + 2,24,24,24,255,24,24,24,24,4,6,6,5,0,253,112, + 240,48,48,32,64,6,1,1,8,1,5,252,2,3,3,5, + 2,0,192,192,192,9,22,44,11,1,252,0,128,1,128,1, + 0,3,0,3,0,2,0,6,0,6,0,12,0,12,0,8, + 0,24,0,24,0,16,0,48,0,48,0,96,0,96,0,64, + 0,192,0,192,0,128,0,9,14,28,11,1,0,28,0,39, + 0,99,0,67,128,193,128,193,128,193,128,193,128,193,128,193, + 128,193,0,97,0,98,0,28,0,8,14,14,11,2,0,24, + 120,152,24,24,24,24,24,24,24,24,24,24,255,8,14,14, + 11,1,0,60,103,195,131,3,6,6,12,24,24,48,97,193, + 255,9,14,28,12,1,0,30,0,103,0,195,0,3,0,2, + 0,4,0,30,0,3,0,1,128,1,128,1,128,1,128,195, + 0,60,0,10,14,28,11,0,0,3,0,7,0,7,0,11, + 0,27,0,19,0,35,0,99,0,67,0,255,192,3,0,3, + 0,3,0,15,192,9,14,28,11,0,0,0,128,63,0,32, + 0,32,0,96,0,126,0,67,0,1,128,1,128,1,128,1, + 128,1,0,195,0,60,0,9,14,28,11,1,0,3,0,12, + 0,48,0,32,0,96,0,222,0,227,0,193,128,193,128,193, + 128,193,128,97,0,99,0,30,0,9,13,26,11,1,0,127, + 128,129,0,129,0,3,0,2,0,6,0,4,0,12,0,8, + 0,24,0,24,0,48,0,32,0,9,14,28,11,1,0,62, + 0,71,0,195,0,195,0,195,0,118,0,30,0,39,0,99, + 128,193,128,193,128,193,128,99,0,60,0,9,14,28,11,1, + 0,30,0,99,0,67,0,193,128,193,128,193,128,193,128,99, + 128,61,128,1,0,3,0,6,0,8,0,112,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--23-230-72-72-P-110-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=24 x= 2 y=12 dx=20 dy= 0 ascent=19 len=57 + Font Bounding box w=35 h=33 x=-12 y=-8 + Calculated Min Values x=-3 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =19 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr14r[2791] U8G_SECTION(".progmem.u8g_font_gdr14r") = { + 0,35,33,244,248,14,3,95,7,136,32,127,251,19,251,18, + 251,0,0,0,5,0,0,2,17,17,6,2,0,64,192,192, + 192,192,192,192,192,192,192,192,192,128,0,192,192,192,6,8, + 8,10,2,9,204,204,204,204,204,204,204,140,10,13,26,11, + 1,1,12,128,9,128,9,0,9,0,127,192,19,0,18,0, + 50,0,255,128,36,0,100,0,68,0,76,0,9,18,36,11, + 1,254,12,0,12,0,63,128,109,128,205,0,204,0,236,0, + 124,0,63,0,15,0,13,128,13,128,141,128,205,128,239,0, + 126,0,12,0,12,0,14,14,28,16,1,0,56,24,72,48, + 204,96,204,64,204,192,205,128,75,0,114,56,6,76,12,204, + 8,204,16,204,48,200,96,112,14,16,32,16,1,0,15,0, + 25,128,49,128,49,128,49,0,51,0,60,0,60,252,124,112, + 102,48,199,48,195,176,193,224,192,224,96,176,63,28,2,8, + 8,6,2,9,192,192,192,192,192,192,192,128,6,22,22,7, + 1,252,12,24,16,32,96,96,64,192,192,192,192,192,192,192, + 192,64,96,96,32,48,24,12,6,22,22,7,0,252,192,96, + 48,16,24,24,8,12,12,12,12,12,12,12,12,8,24,24, + 16,32,96,192,9,10,20,10,1,8,24,0,24,0,137,0, + 235,128,60,0,60,0,235,0,137,0,24,0,24,0,8,8, + 8,9,1,2,24,24,24,255,24,24,24,24,4,6,6,5, + 0,253,112,240,48,48,32,64,6,1,1,8,1,5,252,2, + 3,3,5,2,0,192,192,192,9,22,44,11,1,252,0,128, + 1,128,1,0,3,0,3,0,2,0,6,0,6,0,12,0, + 12,0,8,0,24,0,24,0,16,0,48,0,48,0,96,0, + 96,0,64,0,192,0,192,0,128,0,9,14,28,11,1,0, + 28,0,39,0,99,0,67,128,193,128,193,128,193,128,193,128, + 193,128,193,128,193,0,97,0,98,0,28,0,8,14,14,11, + 2,0,24,120,152,24,24,24,24,24,24,24,24,24,24,255, + 8,14,14,11,1,0,60,103,195,131,3,6,6,12,24,24, + 48,97,193,255,9,14,28,12,1,0,30,0,103,0,195,0, + 3,0,2,0,4,0,30,0,3,0,1,128,1,128,1,128, + 1,128,195,0,60,0,10,14,28,11,0,0,3,0,7,0, + 7,0,11,0,27,0,19,0,35,0,99,0,67,0,255,192, + 3,0,3,0,3,0,15,192,9,14,28,11,0,0,0,128, + 63,0,32,0,32,0,96,0,126,0,67,0,1,128,1,128, + 1,128,1,128,1,0,195,0,60,0,9,14,28,11,1,0, + 3,0,12,0,48,0,32,0,96,0,222,0,227,0,193,128, + 193,128,193,128,193,128,97,0,99,0,30,0,9,13,26,11, + 1,0,127,128,129,0,129,0,3,0,2,0,6,0,4,0, + 12,0,8,0,24,0,24,0,48,0,32,0,9,14,28,11, + 1,0,62,0,71,0,195,0,195,0,195,0,118,0,30,0, + 39,0,99,128,193,128,193,128,193,128,99,0,60,0,9,14, + 28,11,1,0,30,0,99,0,67,0,193,128,193,128,193,128, + 193,128,99,128,61,128,1,0,3,0,6,0,8,0,112,0, + 2,11,11,5,2,0,192,192,192,0,0,0,0,0,192,192, + 192,4,14,14,5,0,253,48,48,48,0,0,0,0,0,112, + 240,48,48,32,64,8,7,7,10,1,3,1,15,120,192,112, + 30,3,8,4,4,10,1,4,255,0,0,255,8,7,7,10, + 1,3,192,120,15,3,30,240,128,8,17,17,10,1,0,62, + 103,195,195,3,3,6,12,12,24,24,24,16,0,24,24,24, + 17,19,57,19,1,252,1,240,0,6,28,0,24,6,0,48, + 3,0,32,3,0,97,211,128,66,49,128,196,49,128,204,49, + 128,204,49,128,204,49,128,204,49,0,236,51,0,102,114,0, + 99,156,0,48,0,0,56,2,0,14,15,0,3,240,0,13, + 14,28,14,0,0,2,0,3,0,5,0,5,128,5,128,8, + 128,8,192,8,192,31,192,16,96,16,96,32,48,32,48,248, + 120,11,14,28,12,0,0,127,0,177,192,48,192,48,192,48, + 192,49,128,63,128,49,192,48,224,48,96,48,96,48,96,48, + 192,255,128,11,14,28,12,1,0,7,192,24,96,32,0,96, + 0,64,0,192,0,192,0,192,0,192,0,192,0,96,0,96, + 32,56,64,15,128,13,14,28,14,0,0,127,128,176,224,48, + 112,48,48,48,24,48,24,48,24,48,24,48,24,48,24,48, + 48,48,112,48,224,255,128,11,14,28,11,0,0,255,192,48, + 64,48,64,48,0,48,0,48,0,63,128,49,0,48,0,48, + 0,48,0,48,32,48,96,255,192,10,14,28,11,0,0,255, + 192,48,64,48,64,48,0,48,0,48,0,63,128,49,0,48, + 0,48,0,48,0,48,0,48,0,252,0,11,14,28,13,1, + 0,15,128,16,192,32,0,96,0,192,0,192,0,192,0,195, + 224,192,192,192,192,96,192,96,192,48,192,31,0,15,14,28, + 15,0,0,252,126,48,24,48,24,48,24,48,24,48,24,63, + 248,48,24,48,24,48,24,48,24,48,24,48,24,252,126,6, + 14,14,7,0,0,252,48,48,48,48,48,48,48,48,48,48, + 48,48,252,9,18,36,7,254,252,31,128,6,0,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,4,0,72,0,240,0,13,14,28, + 13,0,0,252,240,48,64,48,128,49,0,50,0,54,0,60, + 0,54,0,54,0,51,0,49,128,48,192,48,96,252,56,11, + 14,28,11,0,0,252,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,32,48,64,255, + 192,17,14,42,19,1,0,240,7,0,112,14,0,112,14,0, + 120,30,0,104,22,0,108,22,0,108,38,0,102,38,0,102, + 102,0,99,70,0,99,198,0,97,134,0,97,134,0,241,15, + 128,15,14,28,15,0,0,240,126,48,24,56,24,60,24,52, + 24,50,24,51,24,49,152,48,152,48,216,48,120,48,56,48, + 56,252,24,12,14,28,14,1,0,15,128,48,192,32,96,96, + 96,192,48,192,48,192,48,192,48,192,48,192,48,96,96,96, + 64,48,128,31,0,11,14,28,12,0,0,127,128,176,192,48, + 96,48,96,48,96,48,96,48,192,63,0,48,0,48,0,48, + 0,48,0,48,0,252,0,14,17,34,14,1,253,15,128,48, + 192,32,96,96,96,192,48,192,48,192,48,192,48,192,48,192, + 48,96,96,96,96,48,192,31,0,1,128,0,196,0,56,13, + 14,28,13,0,0,127,0,177,128,48,192,48,192,48,192,48, + 128,49,0,62,0,51,0,49,0,49,128,48,192,48,192,252, + 120,9,14,28,11,1,0,62,0,99,0,192,0,192,0,224, + 0,120,0,62,0,15,0,3,128,1,128,129,128,129,0,195, + 0,124,0,12,14,28,13,0,0,255,240,134,16,134,16,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,31,128,15,14,28,15,0,0,252,126,48,24,48, + 24,48,24,48,24,48,24,48,24,48,24,48,24,48,24,48, + 24,24,48,28,96,7,192,14,14,28,15,0,0,248,60,48, + 24,48,16,24,16,24,48,24,32,12,96,12,64,4,64,6, + 192,6,128,3,128,3,128,1,0,19,14,42,20,0,0,248, + 67,224,48,96,128,48,96,128,48,224,128,16,177,128,16,177, + 0,25,145,0,25,25,0,25,25,0,11,11,0,14,14,0, + 14,14,0,14,6,0,4,6,0,14,14,28,14,0,0,252, + 248,48,48,24,96,28,192,12,128,7,128,3,0,3,128,5, + 128,12,192,24,96,16,112,48,48,248,124,14,14,28,14,0, + 0,224,124,48,48,24,32,24,96,12,64,6,192,7,128,3, + 0,3,0,3,0,3,0,3,0,3,0,15,192,10,14,28, + 12,1,0,127,192,65,128,129,128,3,0,6,0,6,0,12, + 0,28,0,24,0,48,0,48,0,96,64,192,64,255,192,5, + 22,22,7,1,252,248,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,248,9,22,44,11,1, + 252,128,0,192,0,192,0,64,0,96,0,32,0,48,0,48, + 0,16,0,24,0,24,0,8,0,12,0,4,0,4,0,6, + 0,2,0,3,0,3,0,1,0,1,128,0,128,5,22,22, + 8,1,252,248,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,248,9,11,22,11,1,6,8, + 0,12,0,28,0,22,0,54,0,34,0,35,0,99,0,65, + 128,65,128,129,128,9,1,2,11,1,253,255,128,5,5,5, + 7,0,12,224,96,48,16,8,10,10,20,11,1,0,30,0, + 99,0,195,0,3,0,31,0,99,0,195,0,195,0,199,0, + 123,192,10,17,34,12,1,0,96,0,224,0,96,0,96,0, + 96,0,96,0,96,0,103,0,121,128,113,192,96,192,96,192, + 96,192,96,192,96,128,113,0,30,0,9,10,20,10,1,0, + 15,0,49,128,96,0,192,0,192,0,192,0,192,0,96,0, + 113,128,30,0,11,17,34,12,1,0,1,128,7,128,1,128, + 1,128,1,128,1,128,1,128,31,128,35,128,65,128,193,128, + 193,128,193,128,193,128,225,128,103,160,57,192,9,10,20,11, + 1,0,30,0,33,0,65,128,255,128,192,0,192,0,192,0, + 224,0,113,128,62,0,9,17,34,7,0,0,7,128,9,0, + 16,0,48,0,48,0,48,0,48,0,126,0,176,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,252,0,12,15, + 30,12,0,251,31,48,49,192,96,192,96,192,96,192,49,128, + 31,0,24,0,56,0,31,192,96,112,192,48,192,48,96,96, + 63,128,13,17,34,13,0,0,48,0,240,0,48,0,48,0, + 48,0,48,0,48,0,51,192,52,96,56,96,48,96,48,96, + 48,96,48,96,48,96,48,96,253,248,6,15,15,6,0,0, + 48,48,48,0,0,48,240,48,48,48,48,48,48,48,252,7, + 20,20,6,253,251,6,6,6,0,0,6,30,6,6,6,6, + 6,6,6,6,6,6,4,8,240,12,17,34,12,0,0,48, + 0,240,0,48,0,48,0,48,0,48,0,48,0,49,224,49, + 128,51,0,52,0,60,0,54,0,51,0,49,128,48,192,248, + 240,6,17,17,6,0,0,48,240,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,252,20,10,30,20,0,0,113,199, + 128,182,104,192,56,112,192,48,96,192,48,96,192,48,96,192, + 48,96,192,48,96,192,48,96,192,253,251,240,13,10,20,13, + 0,0,113,192,182,96,56,96,48,96,48,96,48,96,48,96, + 48,96,48,96,253,248,10,10,20,12,1,0,30,0,35,128, + 65,128,192,192,192,192,192,192,192,192,224,128,113,0,30,0, + 11,15,30,12,0,251,115,128,188,192,56,224,48,96,48,96, + 48,96,48,96,48,64,56,192,55,0,48,0,48,0,48,0, + 48,0,252,0,11,15,30,12,1,251,30,128,35,128,97,128, + 193,128,193,128,193,128,193,128,225,128,99,128,61,128,1,128, + 1,128,1,128,1,128,7,224,9,10,20,9,0,0,51,128, + 252,128,56,0,48,0,48,0,48,0,48,0,48,0,48,0, + 252,0,7,10,10,9,1,0,124,204,192,224,120,30,6,134, + 134,248,8,14,14,8,0,0,16,48,48,48,127,176,48,48, + 48,48,48,48,49,30,11,10,20,12,1,0,97,128,231,128, + 97,128,97,128,97,128,97,128,97,128,97,128,103,160,57,192, + 11,10,20,11,0,0,249,224,32,64,48,128,48,128,25,128, + 25,0,9,0,14,0,6,0,4,0,16,10,20,16,0,0, + 248,143,33,130,49,196,49,196,19,100,26,108,26,40,12,56, + 12,56,12,16,11,10,20,12,0,0,249,224,48,128,25,0, + 15,0,6,0,14,0,11,0,17,128,32,192,241,224,12,15, + 30,11,255,251,124,240,16,32,24,64,24,64,12,192,12,128, + 4,128,7,0,3,0,3,0,2,0,6,0,4,0,120,0, + 240,0,8,10,10,10,1,0,255,131,134,12,8,24,48,97, + 65,255,6,22,22,8,1,252,4,24,16,48,48,48,56,24, + 24,24,48,240,24,24,24,24,48,48,48,48,24,4,2,24, + 24,5,2,251,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,6,22,22,8, + 1,252,128,96,48,48,48,48,96,96,96,96,60,16,32,96, + 96,112,48,48,48,32,96,128,10,4,8,11,1,5,48,64, + 124,128,159,0,135,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--27-270-72-72-P-125-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 17, '1' Height: 16 + Calculated Max Values w=22 h=27 x= 3 y=16 dx=23 dy= 0 ascent=23 len=66 + Font Bounding box w=40 h=38 x=-14 y=-9 + Calculated Min Values x=-3 y=-7 dx= 0 dy= 0 + Pure Font ascent =17 descent=-6 + X Font ascent =21 descent=-6 + Max Font ascent =23 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr17[7056] U8G_SECTION(".progmem.u8g_font_gdr17") = { + 0,40,38,242,247,17,4,64,9,46,32,255,250,23,249,21, + 250,0,0,0,6,0,0,3,21,21,7,2,255,96,224,224, + 224,224,96,96,96,96,96,64,64,64,64,64,0,0,96,224, + 224,192,7,9,9,11,2,11,102,230,230,198,198,70,70,70, + 70,12,15,30,13,1,2,6,96,6,96,4,64,4,64,12, + 192,63,240,8,128,25,128,17,0,255,224,51,0,34,0,34, + 0,102,0,68,0,11,20,40,12,0,254,6,0,6,0,15, + 128,55,224,102,64,102,0,102,0,118,0,62,0,31,128,7, + 192,6,224,6,96,134,96,198,96,230,192,127,192,31,0,6, + 0,6,0,17,16,48,19,1,0,56,6,0,108,12,0,198, + 24,0,198,24,0,198,48,0,198,96,0,198,192,0,108,192, + 0,57,158,0,3,51,0,6,97,128,6,97,128,12,97,128, + 24,97,128,48,51,0,32,30,0,17,19,57,18,1,0,3, + 192,0,12,224,0,8,96,0,24,96,0,24,96,0,24,192, + 0,29,192,0,31,128,0,14,0,0,62,63,128,119,29,0, + 103,12,0,195,140,0,193,204,0,193,232,0,192,248,0,96, + 120,0,112,222,0,31,7,128,3,9,9,7,2,11,96,224, + 224,192,192,64,64,64,64,6,25,25,9,2,252,4,8,24, + 48,32,96,96,96,192,192,192,192,192,192,192,192,192,224,96, + 96,96,48,24,8,4,6,25,25,9,1,252,128,64,96,48, + 24,24,24,24,12,12,12,12,12,12,12,12,12,24,24,24, + 48,48,96,64,128,10,12,24,12,1,9,12,0,12,0,140, + 0,204,192,119,128,30,0,30,0,119,128,204,192,12,128,12, + 0,12,0,10,9,18,11,1,3,12,0,12,0,12,0,12, + 0,255,192,12,0,12,0,12,0,12,0,4,7,7,6,1, + 252,112,240,48,48,32,96,64,7,1,1,9,1,6,254,3, + 4,4,6,2,255,96,224,224,192,11,25,50,13,1,252,0, + 96,0,96,0,192,0,192,1,128,1,128,1,128,3,0,3, + 0,6,0,6,0,6,0,12,0,12,0,12,0,24,0,24, + 0,48,0,48,0,48,0,96,0,96,0,224,0,192,0,192, + 0,11,16,32,13,1,0,15,0,49,128,96,192,64,192,64, + 224,192,96,192,96,192,96,192,96,192,96,192,96,192,64,96, + 64,96,192,49,128,30,0,9,16,32,13,2,0,12,0,60, + 0,252,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,255,128,10,16,32, + 13,1,0,15,0,49,128,96,192,96,192,0,192,0,192,1, + 128,1,128,3,0,6,0,12,0,28,0,24,0,48,64,96, + 64,255,192,10,16,32,13,1,0,30,0,99,0,97,128,193, + 128,1,128,3,0,6,0,31,0,3,128,1,192,0,192,0, + 192,0,192,1,128,193,128,62,0,11,16,32,13,1,0,1, + 128,3,128,7,128,5,128,13,128,25,128,17,128,49,128,97, + 128,65,128,255,224,1,128,1,128,1,128,1,128,15,224,10, + 16,32,13,1,0,63,192,32,0,32,0,32,0,96,0,96, + 0,127,0,67,128,1,192,0,192,0,192,0,192,0,192,1, + 128,193,128,62,0,11,16,32,13,1,0,3,128,14,0,24, + 0,48,0,96,0,96,0,207,0,241,192,192,224,192,96,192, + 96,192,96,96,96,96,64,48,128,31,0,11,16,32,13,1, + 0,127,224,64,192,128,192,0,128,1,128,1,128,3,0,3, + 0,6,0,6,0,4,0,12,0,12,0,24,0,24,0,48, + 0,11,16,32,13,1,0,31,0,113,128,224,192,224,192,224, + 192,241,128,63,0,15,128,51,192,96,224,192,96,192,96,192, + 96,192,64,96,128,31,0,11,17,34,13,1,255,31,0,49, + 128,96,192,192,192,192,96,192,96,192,96,224,96,113,224,30, + 96,0,224,0,192,0,192,1,128,3,0,14,0,48,0,3, + 14,14,6,2,255,64,224,224,224,0,0,0,0,0,0,96, + 224,224,192,4,17,17,6,1,252,32,112,112,112,0,0,0, + 0,0,0,112,240,48,48,32,96,64,10,9,18,12,1,3, + 0,192,3,192,31,0,120,0,224,0,248,0,30,0,7,192, + 0,192,10,5,10,12,1,5,255,192,0,0,0,0,0,0, + 255,192,10,9,18,12,1,3,192,0,248,0,30,0,7,192, + 1,192,7,128,60,0,240,0,128,0,10,20,40,12,1,255, + 31,0,97,128,192,192,192,192,192,192,0,192,1,128,1,128, + 3,0,6,0,6,0,12,0,12,0,12,0,8,0,0,0, + 12,0,28,0,28,0,24,0,20,22,66,22,1,251,0,252, + 0,3,7,0,12,1,192,24,0,192,48,0,96,32,244,96, + 97,28,112,67,12,48,194,12,48,198,12,48,198,12,48,198, + 12,48,198,12,32,198,12,96,227,12,64,99,60,128,97,199, + 0,48,0,0,56,0,0,28,0,64,7,3,128,1,252,0, + 16,17,34,16,0,0,0,128,1,128,3,128,3,192,2,192, + 6,192,6,96,4,96,12,112,12,48,15,240,24,24,24,24, + 16,24,48,12,48,12,248,63,12,17,34,14,1,0,127,128, + 176,192,48,96,48,96,48,96,48,64,49,128,63,192,48,224, + 48,96,48,48,48,48,48,48,48,48,48,96,48,224,255,128, + 12,17,34,14,1,0,7,224,24,112,48,0,32,0,96,0, + 64,0,192,0,192,0,192,0,192,0,192,0,192,0,96,0, + 96,0,48,16,24,32,15,192,14,17,34,16,1,0,127,128, + 176,224,48,48,48,24,48,24,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,48,24,48,24,48,48,48,96,255,128, + 12,17,34,13,1,0,255,224,48,32,48,32,48,0,48,0, + 48,0,48,0,63,192,48,128,48,0,48,0,48,0,48,0, + 48,0,48,16,48,48,255,224,11,17,34,13,1,0,255,224, + 48,32,48,32,48,0,48,0,48,0,48,0,63,128,49,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,252,0, + 14,17,34,16,1,0,3,240,12,56,16,0,32,0,96,0, + 64,0,192,0,192,0,192,0,192,252,192,24,192,24,96,24, + 96,24,48,24,24,24,7,224,16,17,34,18,1,0,252,63, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,63,252, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,252,63, + 6,17,17,8,1,0,252,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,252,10,22,44,8,253,251,31,192,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,2,0,6,0,68,0,248,0,15,17,34,16,1,0,252, + 252,48,48,48,96,48,192,49,128,51,0,54,0,52,0,62, + 0,54,0,51,0,49,128,49,192,48,224,48,112,48,56,252, + 30,12,17,34,13,1,0,252,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,16,48,48,255,224,20,17,51,22,1,0,240, + 1,224,56,1,192,56,3,192,44,2,192,44,6,192,44,6, + 192,38,4,192,38,12,192,35,8,192,35,24,192,35,152,192, + 33,144,192,33,176,192,32,224,192,32,224,192,32,64,192,248, + 67,240,16,17,34,18,1,0,240,63,48,12,56,12,60,12, + 52,12,54,12,51,12,51,12,49,140,48,204,48,204,48,108, + 48,60,48,60,48,28,48,28,252,12,14,17,34,16,1,0, + 7,192,24,96,48,48,96,24,96,24,64,12,192,12,192,12, + 192,12,192,12,192,12,192,8,96,24,96,16,48,48,24,96, + 15,128,12,17,34,14,1,0,127,128,176,224,48,96,48,48, + 48,48,48,48,48,48,48,96,48,192,63,128,48,0,48,0, + 48,0,48,0,48,0,48,0,252,0,16,21,42,16,1,252, + 7,192,24,96,48,48,96,24,96,24,64,12,192,12,192,12, + 192,12,192,12,192,12,192,12,96,24,96,24,48,48,24,96, + 15,192,0,192,0,96,0,49,0,14,14,17,34,15,1,0, + 127,0,177,192,48,96,48,96,48,96,48,96,48,192,49,192, + 63,0,51,0,49,128,49,128,48,192,48,224,48,96,48,112, + 252,60,10,17,34,13,2,0,31,0,99,128,193,0,192,0, + 224,0,240,0,124,0,126,0,31,128,7,128,1,192,0,192, + 0,192,128,192,128,128,193,0,126,0,14,17,34,15,0,0, + 255,252,131,4,131,4,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 15,192,16,17,34,18,1,0,252,63,48,12,48,12,48,12, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,48,12, + 48,12,48,24,24,24,12,48,7,224,17,17,51,18,0,0, + 252,15,128,48,6,0,24,6,0,24,4,0,24,12,0,12, + 12,0,12,8,0,14,24,0,6,24,0,6,16,0,3,48, + 0,3,32,0,3,96,0,1,224,0,1,192,0,1,192,0, + 0,128,0,22,17,51,23,0,0,252,16,124,48,16,16,48, + 56,16,24,56,48,24,56,48,24,108,48,24,108,32,24,76, + 32,12,198,96,12,198,96,12,134,96,13,131,64,7,131,64, + 7,3,192,7,1,192,7,1,192,6,1,128,16,17,34,17, + 0,0,124,63,56,28,24,24,12,48,14,48,7,96,3,192, + 3,192,1,192,3,192,3,224,6,112,12,48,12,24,24,28, + 56,14,252,63,15,17,34,16,0,0,240,62,56,12,24,24, + 28,24,14,48,6,32,7,96,3,192,3,192,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,7,224,12,17,34,14, + 1,0,127,240,64,96,64,224,128,192,1,192,3,128,3,0, + 7,0,6,0,14,0,28,0,24,0,56,0,48,16,112,16, + 224,48,255,240,6,25,25,8,2,252,252,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,252,11,25,50,13,1,252,128,0,192,0,64,0,96, + 0,96,0,48,0,48,0,48,0,24,0,24,0,8,0,12, + 0,12,0,6,0,6,0,2,0,3,0,3,0,1,128,1, + 128,1,128,0,192,0,192,0,64,0,96,6,25,25,9,1, + 252,252,12,12,12,12,12,12,12,12,12,12,12,12,12,12, + 12,12,12,12,12,12,12,12,12,252,11,13,26,13,1,7, + 6,0,14,0,14,0,15,0,27,0,19,0,17,128,49,128, + 33,192,96,192,96,192,64,96,192,64,11,1,2,13,1,253, + 255,224,6,6,6,9,0,14,96,224,48,24,8,4,11,12, + 24,12,1,0,31,0,97,128,225,128,1,128,1,128,31,128, + 121,128,225,128,193,128,193,128,199,128,121,224,13,20,40,14, + 0,0,48,0,240,0,48,0,48,0,48,0,48,0,48,0, + 48,0,49,224,54,112,56,48,48,56,48,24,48,24,48,24, + 48,24,48,16,48,48,56,96,15,128,10,12,24,12,1,0, + 15,192,48,192,96,128,64,0,192,0,192,0,192,0,192,0, + 192,0,96,64,48,192,31,0,13,20,40,14,1,0,0,96, + 1,224,0,96,0,96,0,96,0,96,0,96,0,96,15,224, + 48,224,96,96,64,96,192,96,192,96,192,96,192,96,192,96, + 96,224,49,120,30,96,10,12,24,12,1,0,15,0,49,128, + 96,192,64,192,255,192,192,0,192,0,192,0,224,0,96,64, + 48,128,31,0,10,20,40,8,1,0,3,192,12,128,24,0, + 16,0,48,0,48,0,48,0,48,0,255,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 254,0,13,18,36,13,0,250,15,24,48,240,32,96,96,96, + 96,96,96,96,56,192,31,0,24,0,56,0,63,128,31,240, + 48,120,192,24,192,24,192,16,112,96,31,128,14,20,40,15, + 1,0,48,0,240,0,48,0,48,0,48,0,48,0,48,0, + 48,0,49,224,50,48,52,48,56,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,252,252,6,18,18,7,1,0, + 48,112,48,0,0,0,48,240,48,48,48,48,48,48,48,48, + 48,252,8,24,24,7,253,250,3,7,3,0,0,0,3,15, + 3,3,3,3,3,3,3,3,3,3,3,3,2,2,4,248, + 13,20,40,14,1,0,48,0,240,0,48,0,48,0,48,0, + 48,0,48,0,48,0,49,240,48,192,49,128,51,0,52,0, + 60,0,54,0,51,0,49,128,48,192,48,224,248,120,6,20, + 20,7,1,0,48,240,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,252,20,12,36,21,1,0,113,195, + 128,182,108,192,56,112,192,56,112,192,48,96,192,48,96,192, + 48,96,192,48,96,192,48,96,192,48,96,192,48,96,192,253, + 251,240,14,12,24,15,1,0,113,224,178,48,52,48,56,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,252,252, + 12,12,24,14,1,0,15,128,48,192,96,96,64,112,192,48, + 192,48,192,48,192,48,224,32,96,96,48,192,31,0,12,18, + 36,14,1,250,113,192,182,224,56,96,48,48,48,48,48,48, + 48,48,48,48,48,32,48,96,56,64,55,128,48,0,48,0, + 48,0,48,0,48,0,252,0,13,18,36,14,1,250,15,32, + 48,224,96,96,64,96,192,96,192,96,192,96,192,96,192,96, + 96,224,49,96,30,96,0,96,0,96,0,96,0,96,0,96, + 1,248,10,12,24,11,1,0,51,192,244,128,56,128,56,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,252,0, + 8,12,12,10,1,0,62,70,194,224,240,124,30,7,131,131, + 198,124,9,17,34,9,0,0,16,0,48,0,48,0,48,0, + 48,0,255,128,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,49,0,30,128,14,12,24,14,0,0, + 48,48,240,240,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,112,56,188,31,48,13,12,24,13,0,0,248,120, + 48,48,48,32,24,96,24,64,28,64,12,192,12,128,7,128, + 7,0,7,0,2,0,19,12,36,19,0,0,248,99,224,48, + 96,128,48,96,128,48,241,128,24,177,128,25,177,0,25,153, + 0,13,27,0,15,26,0,14,14,0,6,14,0,4,4,0, + 13,12,24,14,0,0,252,248,56,96,24,64,12,128,7,128, + 7,0,7,128,13,128,8,192,16,96,48,112,248,248,14,18, + 36,13,255,250,124,60,24,24,24,16,12,48,12,32,14,32, + 6,96,6,64,3,192,3,128,3,128,1,128,1,0,3,0, + 2,0,6,0,124,0,240,0,10,12,24,12,1,0,127,192, + 65,128,131,128,3,0,6,0,12,0,28,0,24,0,48,0, + 112,64,96,64,255,192,6,25,25,9,2,252,4,8,24,48, + 48,48,48,24,24,24,24,48,224,56,24,24,24,24,48,48, + 48,48,16,24,4,2,27,27,6,2,251,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,6,25,25,9,1,252,128,96,32,48, + 48,48,48,96,96,96,96,48,28,48,96,96,96,96,48,48, + 48,48,96,64,128,12,4,8,13,1,6,56,48,126,32,143, + 192,131,128,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,0,0,0,6,0,0,3,19,19,7,2,249, + 96,224,224,192,64,64,64,64,64,96,96,96,96,224,224,224, + 224,224,192,11,17,34,13,1,255,6,0,6,0,7,128,31, + 224,38,64,102,0,198,0,198,0,198,0,198,0,198,0,230, + 32,118,64,63,128,15,0,6,0,6,0,11,16,32,13,1, + 0,7,192,24,224,16,64,48,64,48,0,48,0,48,0,48, + 0,255,0,48,0,48,0,48,0,48,32,32,32,96,96,255, + 224,9,8,16,13,2,4,128,128,93,0,119,0,99,0,99, + 0,119,0,93,0,128,128,14,16,32,13,255,0,240,124,48, + 48,24,96,28,96,12,192,14,192,7,128,3,128,3,0,63, + 240,3,0,3,0,3,0,3,0,3,0,15,192,2,27,27, + 6,2,251,192,192,192,192,192,192,192,192,192,192,192,192,128, + 0,0,192,192,192,192,192,192,192,192,192,192,192,192,10,19, + 38,13,1,0,31,0,35,128,97,0,96,0,112,0,60,0, + 127,0,199,128,195,192,193,192,224,192,120,192,63,128,15,0, + 3,128,65,128,65,128,97,0,62,0,9,3,6,11,1,15, + 193,128,193,128,193,128,17,17,51,19,1,0,3,224,0,12, + 24,0,48,6,0,48,246,0,99,27,0,102,1,0,204,1, + 128,204,1,128,204,1,128,204,1,128,204,1,128,70,19,0, + 103,19,0,49,230,0,48,6,0,12,24,0,3,224,0,7, + 8,8,7,0,8,56,76,140,60,108,108,126,126,10,12,24, + 13,1,0,8,64,24,192,16,128,49,128,99,0,230,0,231, + 0,99,0,49,128,16,128,8,192,8,64,11,6,12,13,1, + 2,255,224,0,96,0,96,0,96,0,96,0,96,7,1,1, + 9,1,6,254,9,9,18,10,0,10,62,0,99,0,255,128, + 146,128,156,128,152,128,213,128,107,0,62,0,9,1,2,13, + 2,16,255,128,6,6,6,10,2,10,56,76,204,204,200,112, + 10,12,24,11,1,2,12,0,12,0,12,0,12,0,255,192, + 12,0,12,0,12,0,12,0,0,0,0,0,255,128,7,10, + 10,9,1,8,60,70,198,6,12,24,16,32,66,254,8,10, + 10,9,255,8,30,35,67,2,14,3,3,3,198,60,5,6, + 6,9,3,14,24,56,48,96,192,128,14,18,36,14,0,250, + 48,48,240,112,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,56,240,63,188,55,56,48,0,48,0,48,0,48,0, + 56,0,48,0,13,20,40,15,1,253,31,248,49,224,97,224, + 193,224,193,224,193,224,193,224,97,224,113,224,31,224,1,224, + 1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224, + 7,248,2,3,3,4,1,8,192,192,192,5,6,6,6,0, + 250,48,32,56,88,16,224,7,10,10,9,1,8,24,248,24, + 24,24,24,24,24,24,126,6,8,8,8,1,8,56,76,204, + 204,204,200,112,252,10,12,24,13,2,0,132,0,198,0,98, + 0,35,0,49,128,24,192,25,192,49,128,35,0,98,0,198, + 0,132,0,14,16,32,16,1,0,48,24,240,56,48,48,48, + 96,48,192,48,192,49,128,255,0,3,24,6,56,12,88,12, + 88,24,152,17,252,48,24,96,60,13,16,32,15,1,0,48, + 8,240,16,48,48,48,32,48,96,48,192,48,128,253,128,3, + 112,2,152,7,24,4,16,8,48,24,96,16,200,49,248,14, + 16,32,16,1,0,56,24,204,16,12,48,56,32,12,64,12, + 192,140,128,113,128,3,24,2,56,6,88,12,88,8,152,25, + 252,16,24,48,60,10,19,38,12,1,249,6,0,14,0,14, + 0,12,0,2,0,6,0,6,0,6,0,12,0,28,0,56, + 0,112,0,96,0,192,0,192,192,192,192,192,192,97,128,62, + 0,16,23,46,16,0,0,12,0,30,0,7,0,1,128,0, + 64,0,0,0,128,1,128,3,128,3,192,2,192,6,192,6, + 96,4,96,12,112,12,48,15,240,24,24,24,24,16,24,48, + 12,48,12,248,63,16,23,46,16,0,0,0,48,0,112,1, + 192,3,128,2,0,0,0,0,128,1,128,3,128,3,192,2, + 192,6,192,6,96,4,96,12,112,12,48,15,240,24,24,24, + 24,16,24,48,12,48,12,248,63,16,22,44,16,0,0,3, + 128,6,192,12,32,8,16,0,0,0,128,1,128,3,128,3, + 192,2,192,6,192,6,96,4,96,12,112,12,48,15,240,24, + 24,24,24,16,24,48,12,48,12,248,63,16,22,44,16,0, + 0,0,16,7,176,9,224,16,192,0,0,0,128,1,128,3, + 128,3,192,2,192,6,192,6,96,4,96,12,112,12,48,15, + 240,24,24,24,24,16,24,48,12,48,12,248,63,16,21,42, + 16,0,0,12,48,12,48,8,32,0,0,0,128,1,128,3, + 128,3,192,2,192,6,192,6,96,4,96,12,112,12,48,15, + 240,24,24,24,24,16,24,48,12,48,12,248,63,16,23,46, + 16,0,0,1,192,3,96,3,96,3,192,1,128,0,0,0, + 128,1,128,3,128,3,192,2,192,6,192,6,96,4,96,12, + 112,12,48,15,240,24,24,24,24,16,24,48,12,48,12,248, + 63,20,17,51,21,0,0,7,255,224,1,176,32,1,176,32, + 1,48,0,3,48,0,3,48,0,6,48,0,7,255,192,4, + 48,128,12,48,0,12,48,0,24,48,0,24,48,0,16,48, + 0,48,48,16,48,48,48,248,255,240,12,23,46,14,1,250, + 7,224,24,112,48,0,32,0,96,0,64,0,192,0,192,0, + 192,0,192,0,192,0,192,0,224,0,96,32,112,32,61,192, + 31,128,4,0,4,0,7,0,3,0,2,0,28,0,12,23, + 46,13,1,0,48,0,120,0,28,0,6,0,1,0,0,0, + 255,224,48,32,48,32,48,0,48,0,48,0,48,0,63,192, + 48,128,48,0,48,0,48,0,48,0,48,0,48,16,48,48, + 255,224,12,23,46,13,1,0,0,192,3,192,7,0,12,0, + 16,0,0,0,255,224,48,32,48,32,48,0,48,0,48,0, + 48,0,63,192,48,128,48,0,48,0,48,0,48,0,48,0, + 48,16,48,48,255,224,12,22,44,13,1,0,14,0,27,0, + 48,128,64,64,0,0,255,224,48,32,48,32,48,0,48,0, + 48,0,48,0,63,192,48,128,48,0,48,0,48,0,48,0, + 48,0,48,16,48,48,255,224,12,21,42,13,1,0,32,128, + 97,128,32,128,0,0,255,224,48,32,48,32,48,0,48,0, + 48,0,48,0,63,192,48,128,48,0,48,0,48,0,48,0, + 48,0,48,16,48,48,255,224,8,23,23,8,255,0,96,240, + 56,12,2,0,63,12,12,12,12,12,12,12,12,12,12,12, + 12,12,12,12,63,7,23,23,8,1,0,6,14,56,112,64, + 0,252,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,252,8,22,22,8,0,0,56,108,194,129,0,126,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,126,8,21, + 21,8,0,0,195,195,130,0,126,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,126,14,17,34,16,1,0,127, + 128,176,224,48,48,48,24,48,24,48,12,48,12,48,12,255, + 12,48,12,48,12,48,12,48,24,48,24,48,48,48,96,255, + 128,16,22,44,18,1,0,0,16,7,176,9,224,16,192,0, + 0,240,63,48,12,56,12,60,12,52,12,54,12,51,12,51, + 12,49,140,48,204,48,204,48,108,48,60,48,60,48,28,48, + 28,252,12,14,23,46,16,1,0,24,0,28,0,7,0,3, + 128,0,128,0,0,7,192,24,96,48,48,96,24,96,24,64, + 12,192,12,192,12,192,12,192,12,192,12,192,8,96,24,96, + 16,48,48,24,96,15,128,14,23,46,16,1,0,0,96,0, + 240,1,192,3,0,4,0,0,0,7,192,24,96,48,48,96, + 24,96,24,64,12,192,12,192,12,192,12,192,12,192,12,192, + 8,96,24,96,16,48,48,24,96,15,128,14,22,44,16,1, + 0,3,128,4,192,8,96,16,32,0,0,7,192,24,96,48, + 48,96,24,96,24,64,12,192,12,192,12,192,12,192,12,192, + 12,192,8,96,24,96,16,48,48,24,96,15,128,14,22,44, + 16,1,0,0,32,15,48,19,224,32,128,0,0,7,192,24, + 96,48,48,96,24,96,24,64,12,192,12,192,12,192,12,192, + 12,192,12,192,8,96,24,96,16,48,48,24,96,15,128,14, + 21,42,16,1,0,24,96,24,96,16,64,0,0,7,192,24, + 96,48,48,96,24,96,24,64,12,192,12,192,12,192,12,192, + 12,192,12,192,8,96,24,96,16,48,48,24,96,15,128,9, + 9,18,11,1,3,193,128,99,0,54,0,28,0,28,0,28, + 0,54,0,99,0,193,128,14,18,36,16,1,255,7,204,24, + 120,48,48,32,120,96,120,64,220,193,204,193,140,195,12,199, + 12,198,12,204,8,104,24,120,16,48,48,120,96,207,128,128, + 0,16,23,46,18,1,0,12,0,30,0,7,0,1,192,0, + 64,0,0,252,63,48,12,48,12,48,12,48,12,48,12,48, + 12,48,12,48,12,48,12,48,12,48,12,48,12,48,24,24, + 24,12,48,7,224,16,23,46,18,1,0,0,48,0,112,1, + 192,3,128,2,0,0,0,252,63,48,12,48,12,48,12,48, + 12,48,12,48,12,48,12,48,12,48,12,48,12,48,12,48, + 12,48,24,24,24,12,48,7,224,16,22,44,18,1,0,1, + 128,2,64,4,32,8,16,0,0,252,63,48,12,48,12,48, + 12,48,12,48,12,48,12,48,12,48,12,48,12,48,12,48, + 12,48,12,48,24,24,24,12,48,7,224,16,21,42,18,1, + 0,12,48,12,48,8,32,0,0,252,63,48,12,48,12,48, + 12,48,12,48,12,48,12,48,12,48,12,48,12,48,12,48, + 12,48,12,48,24,24,24,12,48,7,224,15,23,46,16,0, + 0,0,48,0,112,0,192,3,128,2,0,0,0,240,62,56, + 12,24,24,28,24,14,48,6,32,7,96,3,192,3,192,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,7,224,12, + 17,34,14,1,0,252,0,48,0,48,0,63,128,48,224,48, + 96,48,48,48,48,48,48,48,48,48,48,48,96,56,192,55, + 128,48,0,48,0,252,0,14,20,40,15,1,0,3,192,12, + 224,24,112,16,48,48,48,48,48,48,96,49,192,51,0,54, + 0,54,0,55,128,51,224,48,248,48,60,48,28,50,12,50, + 12,51,24,243,240,11,20,40,12,1,0,48,0,120,0,24, + 0,12,0,4,0,2,0,0,0,0,0,31,0,97,128,225, + 128,1,128,1,128,31,128,121,128,225,128,193,128,193,128,199, + 128,121,224,11,20,40,12,1,0,1,128,3,128,3,0,6, + 0,4,0,8,0,0,0,0,0,31,0,97,128,225,128,1, + 128,1,128,31,128,121,128,225,128,193,128,193,128,199,128,121, + 224,11,19,38,12,1,0,12,0,30,0,19,0,33,128,64, + 192,0,0,0,0,31,0,97,128,225,128,1,128,1,128,31, + 128,121,128,225,128,193,128,193,128,199,128,121,224,11,18,36, + 12,1,0,24,64,60,128,71,0,0,0,0,0,0,0,31, + 0,97,128,225,128,1,128,1,128,31,128,121,128,225,128,193, + 128,193,128,199,128,121,224,11,18,36,12,1,0,97,128,97, + 128,97,128,0,0,0,0,0,0,31,0,97,128,225,128,1, + 128,1,128,31,128,121,128,225,128,193,128,193,128,199,128,121, + 224,11,19,38,12,1,0,14,0,11,0,27,0,27,0,14, + 0,0,0,0,0,31,0,97,128,225,128,1,128,1,128,31, + 128,121,128,225,128,193,128,193,128,199,128,121,224,17,12,36, + 19,1,0,31,62,0,97,195,0,97,193,128,193,129,128,15, + 255,128,57,128,0,97,128,0,193,128,0,193,128,0,193,193, + 0,198,227,0,120,124,0,10,18,36,12,1,250,15,192,48, + 192,96,128,64,0,192,0,192,0,192,0,192,0,224,0,96, + 64,120,192,63,0,12,0,4,0,7,0,3,0,2,0,28, + 0,10,20,40,12,1,0,48,0,56,0,24,0,12,0,6, + 0,2,0,0,0,0,0,15,0,49,128,96,192,64,192,255, + 192,192,0,192,0,192,0,224,0,96,64,48,128,31,0,10, + 20,40,12,1,0,1,192,1,128,3,0,2,0,4,0,12, + 0,0,0,0,0,15,0,49,128,96,192,64,192,255,192,192, + 0,192,0,192,0,224,0,96,64,48,128,31,0,10,19,38, + 12,1,0,6,0,15,0,25,0,48,128,32,64,0,0,0, + 0,15,0,49,128,96,192,64,192,255,192,192,0,192,0,192, + 0,224,0,96,64,48,128,31,0,10,18,36,12,1,0,32, + 128,48,192,32,128,0,0,0,0,0,0,15,0,49,128,96, + 192,64,192,255,192,192,0,192,0,192,0,224,0,96,64,48, + 128,31,0,7,20,20,7,0,0,192,224,112,48,24,8,0, + 0,24,120,24,24,24,24,24,24,24,24,24,126,7,20,20, + 7,1,0,14,12,24,16,48,96,0,0,48,240,48,48,48, + 48,48,48,48,48,48,252,8,19,19,7,0,0,24,60,100, + 194,129,0,0,24,120,24,24,24,24,24,24,24,24,24,126, + 8,18,18,7,0,0,130,195,130,0,0,0,24,120,24,24, + 24,24,24,24,24,24,24,126,11,19,38,13,1,0,24,0, + 60,224,7,128,31,0,49,128,0,192,0,192,15,192,49,224, + 96,224,64,96,192,96,192,96,192,96,192,64,224,192,96,192, + 49,128,30,0,14,18,36,15,1,0,12,32,31,64,35,128, + 0,0,0,0,0,0,113,224,178,48,52,48,56,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,252,252,12,20, + 40,14,1,0,56,0,24,0,12,0,4,0,6,0,3,0, + 0,0,0,0,15,128,48,192,96,96,64,112,192,48,192,48, + 192,48,192,48,224,32,96,96,48,192,31,0,12,20,40,14, + 1,0,0,192,1,128,3,128,3,0,6,0,4,0,0,0, + 0,0,15,128,48,192,96,96,64,112,192,48,192,48,192,48, + 192,48,224,32,96,96,48,192,31,0,12,19,38,14,1,0, + 6,0,15,0,25,128,16,128,32,64,0,0,0,0,15,128, + 48,192,96,96,64,112,192,48,192,48,192,48,192,48,224,32, + 96,96,48,192,31,0,12,18,36,14,1,0,28,96,62,64, + 35,128,0,0,0,0,0,0,15,128,48,192,96,96,64,112, + 192,48,192,48,192,48,192,48,224,32,96,96,48,192,31,0, + 12,18,36,14,1,0,48,192,48,192,48,192,0,0,0,0, + 0,0,15,128,48,192,96,96,64,112,192,48,192,48,192,48, + 192,48,224,32,96,96,48,192,31,0,9,9,18,11,1,3, + 12,0,12,0,0,0,0,0,255,128,0,0,0,0,12,0, + 12,0,12,14,28,14,1,255,0,16,15,176,49,224,96,224, + 65,240,195,48,198,48,198,48,204,48,248,32,112,96,120,192, + 223,0,128,0,14,20,40,14,0,0,28,0,12,0,6,0, + 3,0,1,0,1,128,0,0,0,0,48,48,240,240,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,112,56,188, + 31,48,14,20,40,14,0,0,0,96,0,224,0,192,1,128, + 3,0,2,0,0,0,0,0,48,48,240,240,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,112,56,188,31,48, + 14,19,38,14,0,0,3,0,7,128,4,192,8,96,16,32, + 0,0,0,0,48,48,240,240,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,112,56,188,31,48,14,18,36,14, + 0,0,24,96,24,96,24,96,0,0,0,0,0,0,48,48, + 240,240,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,112,56,188,31,48,14,26,52,13,255,250,0,112,0,96, + 0,224,0,192,1,128,1,0,0,0,0,0,124,60,24,24, + 24,16,12,48,12,32,14,32,6,96,6,64,3,192,3,128, + 3,128,1,128,1,0,3,0,2,0,6,0,124,0,240,0, + 12,26,52,14,1,250,48,0,240,0,48,0,48,0,48,0, + 48,0,48,0,48,0,51,192,52,224,56,96,48,48,48,48, + 48,48,48,48,48,48,48,32,48,96,56,64,55,128,48,0, + 48,0,48,0,48,0,48,0,252,0,14,24,48,13,255,250, + 12,48,12,48,8,32,0,0,0,0,0,0,124,60,24,24, + 24,16,12,48,12,32,14,32,6,96,6,64,3,192,3,128, + 3,128,1,128,1,0,3,0,2,0,6,0,124,0,240,0 + }; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--27-270-72-72-P-125-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 16 + Calculated Max Values w=11 h=25 x= 2 y= 9 dx=13 dy= 0 ascent=21 len=50 + Font Bounding box w=40 h=38 x=-14 y=-9 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =16 descent= 0 + X Font ascent =16 descent= 0 + Max Font ascent =21 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr17n[539] U8G_SECTION(".progmem.u8g_font_gdr17n") = { + 0,40,38,242,247,16,0,0,0,0,42,57,0,21,252,16, + 0,10,12,24,12,1,9,12,0,12,0,140,0,204,192,119, + 128,30,0,30,0,119,128,204,192,12,128,12,0,12,0,10, + 9,18,11,1,3,12,0,12,0,12,0,12,0,255,192,12, + 0,12,0,12,0,12,0,4,7,7,6,1,252,112,240,48, + 48,32,96,64,7,1,1,9,1,6,254,3,4,4,6,2, + 255,96,224,224,192,11,25,50,13,1,252,0,96,0,96,0, + 192,0,192,1,128,1,128,1,128,3,0,3,0,6,0,6, + 0,6,0,12,0,12,0,12,0,24,0,24,0,48,0,48, + 0,48,0,96,0,96,0,224,0,192,0,192,0,11,16,32, + 13,1,0,15,0,49,128,96,192,64,192,64,224,192,96,192, + 96,192,96,192,96,192,96,192,96,192,64,96,64,96,192,49, + 128,30,0,9,16,32,13,2,0,12,0,60,0,252,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,255,128,10,16,32,13,1,0,15, + 0,49,128,96,192,96,192,0,192,0,192,1,128,1,128,3, + 0,6,0,12,0,28,0,24,0,48,64,96,64,255,192,10, + 16,32,13,1,0,30,0,99,0,97,128,193,128,1,128,3, + 0,6,0,31,0,3,128,1,192,0,192,0,192,0,192,1, + 128,193,128,62,0,11,16,32,13,1,0,1,128,3,128,7, + 128,5,128,13,128,25,128,17,128,49,128,97,128,65,128,255, + 224,1,128,1,128,1,128,1,128,15,224,10,16,32,13,1, + 0,63,192,32,0,32,0,32,0,96,0,96,0,127,0,67, + 128,1,192,0,192,0,192,0,192,0,192,1,128,193,128,62, + 0,11,16,32,13,1,0,3,128,14,0,24,0,48,0,96, + 0,96,0,207,0,241,192,192,224,192,96,192,96,192,96,96, + 96,96,64,48,128,31,0,11,16,32,13,1,0,127,224,64, + 192,128,192,0,128,1,128,1,128,3,0,3,0,6,0,6, + 0,4,0,12,0,12,0,24,0,24,0,48,0,11,16,32, + 13,1,0,31,0,113,128,224,192,224,192,224,192,241,128,63, + 0,15,128,51,192,96,224,192,96,192,96,192,96,192,64,96, + 128,31,0,11,17,34,13,1,255,31,0,49,128,96,192,192, + 192,192,96,192,96,192,96,224,96,113,224,30,96,0,224,0, + 192,0,192,1,128,3,0,14,0,48,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--27-270-72-72-P-125-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 17, '1' Height: 16 + Calculated Max Values w=22 h=27 x= 2 y=14 dx=23 dy= 0 ascent=22 len=66 + Font Bounding box w=40 h=38 x=-14 y=-9 + Calculated Min Values x=-3 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-6 + X Font ascent =21 descent=-6 + Max Font ascent =22 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr17r[3380] U8G_SECTION(".progmem.u8g_font_gdr17r") = { + 0,40,38,242,247,17,4,64,9,46,32,127,250,22,250,21, + 250,0,0,0,6,0,0,3,21,21,7,2,255,96,224,224, + 224,224,96,96,96,96,96,64,64,64,64,64,0,0,96,224, + 224,192,7,9,9,11,2,11,102,230,230,198,198,70,70,70, + 70,12,15,30,13,1,2,6,96,6,96,4,64,4,64,12, + 192,63,240,8,128,25,128,17,0,255,224,51,0,34,0,34, + 0,102,0,68,0,11,20,40,12,0,254,6,0,6,0,15, + 128,55,224,102,64,102,0,102,0,118,0,62,0,31,128,7, + 192,6,224,6,96,134,96,198,96,230,192,127,192,31,0,6, + 0,6,0,17,16,48,19,1,0,56,6,0,108,12,0,198, + 24,0,198,24,0,198,48,0,198,96,0,198,192,0,108,192, + 0,57,158,0,3,51,0,6,97,128,6,97,128,12,97,128, + 24,97,128,48,51,0,32,30,0,17,19,57,18,1,0,3, + 192,0,12,224,0,8,96,0,24,96,0,24,96,0,24,192, + 0,29,192,0,31,128,0,14,0,0,62,63,128,119,29,0, + 103,12,0,195,140,0,193,204,0,193,232,0,192,248,0,96, + 120,0,112,222,0,31,7,128,3,9,9,7,2,11,96,224, + 224,192,192,64,64,64,64,6,25,25,9,2,252,4,8,24, + 48,32,96,96,96,192,192,192,192,192,192,192,192,192,224,96, + 96,96,48,24,8,4,6,25,25,9,1,252,128,64,96,48, + 24,24,24,24,12,12,12,12,12,12,12,12,12,24,24,24, + 48,48,96,64,128,10,12,24,12,1,9,12,0,12,0,140, + 0,204,192,119,128,30,0,30,0,119,128,204,192,12,128,12, + 0,12,0,10,9,18,11,1,3,12,0,12,0,12,0,12, + 0,255,192,12,0,12,0,12,0,12,0,4,7,7,6,1, + 252,112,240,48,48,32,96,64,7,1,1,9,1,6,254,3, + 4,4,6,2,255,96,224,224,192,11,25,50,13,1,252,0, + 96,0,96,0,192,0,192,1,128,1,128,1,128,3,0,3, + 0,6,0,6,0,6,0,12,0,12,0,12,0,24,0,24, + 0,48,0,48,0,48,0,96,0,96,0,224,0,192,0,192, + 0,11,16,32,13,1,0,15,0,49,128,96,192,64,192,64, + 224,192,96,192,96,192,96,192,96,192,96,192,96,192,64,96, + 64,96,192,49,128,30,0,9,16,32,13,2,0,12,0,60, + 0,252,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,255,128,10,16,32, + 13,1,0,15,0,49,128,96,192,96,192,0,192,0,192,1, + 128,1,128,3,0,6,0,12,0,28,0,24,0,48,64,96, + 64,255,192,10,16,32,13,1,0,30,0,99,0,97,128,193, + 128,1,128,3,0,6,0,31,0,3,128,1,192,0,192,0, + 192,0,192,1,128,193,128,62,0,11,16,32,13,1,0,1, + 128,3,128,7,128,5,128,13,128,25,128,17,128,49,128,97, + 128,65,128,255,224,1,128,1,128,1,128,1,128,15,224,10, + 16,32,13,1,0,63,192,32,0,32,0,32,0,96,0,96, + 0,127,0,67,128,1,192,0,192,0,192,0,192,0,192,1, + 128,193,128,62,0,11,16,32,13,1,0,3,128,14,0,24, + 0,48,0,96,0,96,0,207,0,241,192,192,224,192,96,192, + 96,192,96,96,96,96,64,48,128,31,0,11,16,32,13,1, + 0,127,224,64,192,128,192,0,128,1,128,1,128,3,0,3, + 0,6,0,6,0,4,0,12,0,12,0,24,0,24,0,48, + 0,11,16,32,13,1,0,31,0,113,128,224,192,224,192,224, + 192,241,128,63,0,15,128,51,192,96,224,192,96,192,96,192, + 96,192,64,96,128,31,0,11,17,34,13,1,255,31,0,49, + 128,96,192,192,192,192,96,192,96,192,96,224,96,113,224,30, + 96,0,224,0,192,0,192,1,128,3,0,14,0,48,0,3, + 14,14,6,2,255,64,224,224,224,0,0,0,0,0,0,96, + 224,224,192,4,17,17,6,1,252,32,112,112,112,0,0,0, + 0,0,0,112,240,48,48,32,96,64,10,9,18,12,1,3, + 0,192,3,192,31,0,120,0,224,0,248,0,30,0,7,192, + 0,192,10,5,10,12,1,5,255,192,0,0,0,0,0,0, + 255,192,10,9,18,12,1,3,192,0,248,0,30,0,7,192, + 1,192,7,128,60,0,240,0,128,0,10,20,40,12,1,255, + 31,0,97,128,192,192,192,192,192,192,0,192,1,128,1,128, + 3,0,6,0,6,0,12,0,12,0,12,0,8,0,0,0, + 12,0,28,0,28,0,24,0,20,22,66,22,1,251,0,252, + 0,3,7,0,12,1,192,24,0,192,48,0,96,32,244,96, + 97,28,112,67,12,48,194,12,48,198,12,48,198,12,48,198, + 12,48,198,12,32,198,12,96,227,12,64,99,60,128,97,199, + 0,48,0,0,56,0,0,28,0,64,7,3,128,1,252,0, + 16,17,34,16,0,0,0,128,1,128,3,128,3,192,2,192, + 6,192,6,96,4,96,12,112,12,48,15,240,24,24,24,24, + 16,24,48,12,48,12,248,63,12,17,34,14,1,0,127,128, + 176,192,48,96,48,96,48,96,48,64,49,128,63,192,48,224, + 48,96,48,48,48,48,48,48,48,48,48,96,48,224,255,128, + 12,17,34,14,1,0,7,224,24,112,48,0,32,0,96,0, + 64,0,192,0,192,0,192,0,192,0,192,0,192,0,96,0, + 96,0,48,16,24,32,15,192,14,17,34,16,1,0,127,128, + 176,224,48,48,48,24,48,24,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,48,24,48,24,48,48,48,96,255,128, + 12,17,34,13,1,0,255,224,48,32,48,32,48,0,48,0, + 48,0,48,0,63,192,48,128,48,0,48,0,48,0,48,0, + 48,0,48,16,48,48,255,224,11,17,34,13,1,0,255,224, + 48,32,48,32,48,0,48,0,48,0,48,0,63,128,49,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,252,0, + 14,17,34,16,1,0,3,240,12,56,16,0,32,0,96,0, + 64,0,192,0,192,0,192,0,192,252,192,24,192,24,96,24, + 96,24,48,24,24,24,7,224,16,17,34,18,1,0,252,63, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,63,252, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,252,63, + 6,17,17,8,1,0,252,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,252,10,22,44,8,253,251,31,192,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,2,0,6,0,68,0,248,0,15,17,34,16,1,0,252, + 252,48,48,48,96,48,192,49,128,51,0,54,0,52,0,62, + 0,54,0,51,0,49,128,49,192,48,224,48,112,48,56,252, + 30,12,17,34,13,1,0,252,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,16,48,48,255,224,20,17,51,22,1,0,240, + 1,224,56,1,192,56,3,192,44,2,192,44,6,192,44,6, + 192,38,4,192,38,12,192,35,8,192,35,24,192,35,152,192, + 33,144,192,33,176,192,32,224,192,32,224,192,32,64,192,248, + 67,240,16,17,34,18,1,0,240,63,48,12,56,12,60,12, + 52,12,54,12,51,12,51,12,49,140,48,204,48,204,48,108, + 48,60,48,60,48,28,48,28,252,12,14,17,34,16,1,0, + 7,192,24,96,48,48,96,24,96,24,64,12,192,12,192,12, + 192,12,192,12,192,12,192,8,96,24,96,16,48,48,24,96, + 15,128,12,17,34,14,1,0,127,128,176,224,48,96,48,48, + 48,48,48,48,48,48,48,96,48,192,63,128,48,0,48,0, + 48,0,48,0,48,0,48,0,252,0,16,21,42,16,1,252, + 7,192,24,96,48,48,96,24,96,24,64,12,192,12,192,12, + 192,12,192,12,192,12,192,12,96,24,96,24,48,48,24,96, + 15,192,0,192,0,96,0,49,0,14,14,17,34,15,1,0, + 127,0,177,192,48,96,48,96,48,96,48,96,48,192,49,192, + 63,0,51,0,49,128,49,128,48,192,48,224,48,96,48,112, + 252,60,10,17,34,13,2,0,31,0,99,128,193,0,192,0, + 224,0,240,0,124,0,126,0,31,128,7,128,1,192,0,192, + 0,192,128,192,128,128,193,0,126,0,14,17,34,15,0,0, + 255,252,131,4,131,4,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 15,192,16,17,34,18,1,0,252,63,48,12,48,12,48,12, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,48,12, + 48,12,48,24,24,24,12,48,7,224,17,17,51,18,0,0, + 252,15,128,48,6,0,24,6,0,24,4,0,24,12,0,12, + 12,0,12,8,0,14,24,0,6,24,0,6,16,0,3,48, + 0,3,32,0,3,96,0,1,224,0,1,192,0,1,192,0, + 0,128,0,22,17,51,23,0,0,252,16,124,48,16,16,48, + 56,16,24,56,48,24,56,48,24,108,48,24,108,32,24,76, + 32,12,198,96,12,198,96,12,134,96,13,131,64,7,131,64, + 7,3,192,7,1,192,7,1,192,6,1,128,16,17,34,17, + 0,0,124,63,56,28,24,24,12,48,14,48,7,96,3,192, + 3,192,1,192,3,192,3,224,6,112,12,48,12,24,24,28, + 56,14,252,63,15,17,34,16,0,0,240,62,56,12,24,24, + 28,24,14,48,6,32,7,96,3,192,3,192,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,7,224,12,17,34,14, + 1,0,127,240,64,96,64,224,128,192,1,192,3,128,3,0, + 7,0,6,0,14,0,28,0,24,0,56,0,48,16,112,16, + 224,48,255,240,6,25,25,8,2,252,252,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,252,11,25,50,13,1,252,128,0,192,0,64,0,96, + 0,96,0,48,0,48,0,48,0,24,0,24,0,8,0,12, + 0,12,0,6,0,6,0,2,0,3,0,3,0,1,128,1, + 128,1,128,0,192,0,192,0,64,0,96,6,25,25,9,1, + 252,252,12,12,12,12,12,12,12,12,12,12,12,12,12,12, + 12,12,12,12,12,12,12,12,12,252,11,13,26,13,1,7, + 6,0,14,0,14,0,15,0,27,0,19,0,17,128,49,128, + 33,192,96,192,96,192,64,96,192,64,11,1,2,13,1,253, + 255,224,6,6,6,9,0,14,96,224,48,24,8,4,11,12, + 24,12,1,0,31,0,97,128,225,128,1,128,1,128,31,128, + 121,128,225,128,193,128,193,128,199,128,121,224,13,20,40,14, + 0,0,48,0,240,0,48,0,48,0,48,0,48,0,48,0, + 48,0,49,224,54,112,56,48,48,56,48,24,48,24,48,24, + 48,24,48,16,48,48,56,96,15,128,10,12,24,12,1,0, + 15,192,48,192,96,128,64,0,192,0,192,0,192,0,192,0, + 192,0,96,64,48,192,31,0,13,20,40,14,1,0,0,96, + 1,224,0,96,0,96,0,96,0,96,0,96,0,96,15,224, + 48,224,96,96,64,96,192,96,192,96,192,96,192,96,192,96, + 96,224,49,120,30,96,10,12,24,12,1,0,15,0,49,128, + 96,192,64,192,255,192,192,0,192,0,192,0,224,0,96,64, + 48,128,31,0,10,20,40,8,1,0,3,192,12,128,24,0, + 16,0,48,0,48,0,48,0,48,0,255,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 254,0,13,18,36,13,0,250,15,24,48,240,32,96,96,96, + 96,96,96,96,56,192,31,0,24,0,56,0,63,128,31,240, + 48,120,192,24,192,24,192,16,112,96,31,128,14,20,40,15, + 1,0,48,0,240,0,48,0,48,0,48,0,48,0,48,0, + 48,0,49,224,50,48,52,48,56,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,252,252,6,18,18,7,1,0, + 48,112,48,0,0,0,48,240,48,48,48,48,48,48,48,48, + 48,252,8,24,24,7,253,250,3,7,3,0,0,0,3,15, + 3,3,3,3,3,3,3,3,3,3,3,3,2,2,4,248, + 13,20,40,14,1,0,48,0,240,0,48,0,48,0,48,0, + 48,0,48,0,48,0,49,240,48,192,49,128,51,0,52,0, + 60,0,54,0,51,0,49,128,48,192,48,224,248,120,6,20, + 20,7,1,0,48,240,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,252,20,12,36,21,1,0,113,195, + 128,182,108,192,56,112,192,56,112,192,48,96,192,48,96,192, + 48,96,192,48,96,192,48,96,192,48,96,192,48,96,192,253, + 251,240,14,12,24,15,1,0,113,224,178,48,52,48,56,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,252,252, + 12,12,24,14,1,0,15,128,48,192,96,96,64,112,192,48, + 192,48,192,48,192,48,224,32,96,96,48,192,31,0,12,18, + 36,14,1,250,113,192,182,224,56,96,48,48,48,48,48,48, + 48,48,48,48,48,32,48,96,56,64,55,128,48,0,48,0, + 48,0,48,0,48,0,252,0,13,18,36,14,1,250,15,32, + 48,224,96,96,64,96,192,96,192,96,192,96,192,96,192,96, + 96,224,49,96,30,96,0,96,0,96,0,96,0,96,0,96, + 1,248,10,12,24,11,1,0,51,192,244,128,56,128,56,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,252,0, + 8,12,12,10,1,0,62,70,194,224,240,124,30,7,131,131, + 198,124,9,17,34,9,0,0,16,0,48,0,48,0,48,0, + 48,0,255,128,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,49,0,30,128,14,12,24,14,0,0, + 48,48,240,240,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,112,56,188,31,48,13,12,24,13,0,0,248,120, + 48,48,48,32,24,96,24,64,28,64,12,192,12,128,7,128, + 7,0,7,0,2,0,19,12,36,19,0,0,248,99,224,48, + 96,128,48,96,128,48,241,128,24,177,128,25,177,0,25,153, + 0,13,27,0,15,26,0,14,14,0,6,14,0,4,4,0, + 13,12,24,14,0,0,252,248,56,96,24,64,12,128,7,128, + 7,0,7,128,13,128,8,192,16,96,48,112,248,248,14,18, + 36,13,255,250,124,60,24,24,24,16,12,48,12,32,14,32, + 6,96,6,64,3,192,3,128,3,128,1,128,1,0,3,0, + 2,0,6,0,124,0,240,0,10,12,24,12,1,0,127,192, + 65,128,131,128,3,0,6,0,12,0,28,0,24,0,48,0, + 112,64,96,64,255,192,6,25,25,9,2,252,4,8,24,48, + 48,48,48,24,24,24,24,48,224,56,24,24,24,24,48,48, + 48,48,16,24,4,2,27,27,6,2,251,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,6,25,25,9,1,252,128,96,32,48, + 48,48,48,96,96,96,96,48,28,48,96,96,96,96,48,48, + 48,48,96,64,128,12,4,8,13,1,6,56,48,126,32,143, + 192,131,128,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--32-320-72-72-P-146-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 20, '1' Height: 19 + Calculated Max Values w=27 h=32 x= 3 y=19 dx=27 dy= 0 ascent=27 len=81 + Font Bounding box w=47 h=44 x=-16 y=-10 + Calculated Min Values x=-4 y=-9 dx= 0 dy= 0 + Pure Font ascent =20 descent=-8 + X Font ascent =25 descent=-8 + Max Font ascent =27 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr20[9119] U8G_SECTION(".progmem.u8g_font_gdr20") = { + 0,47,44,240,246,20,4,220,11,144,32,255,248,27,247,25, + 248,0,0,0,7,0,0,4,23,23,9,2,0,48,112,112, + 112,112,112,112,112,112,96,96,96,96,96,96,96,96,64,0, + 112,240,240,224,8,10,10,14,3,13,227,199,199,199,199,195, + 195,195,195,194,14,18,36,15,1,2,1,24,3,24,3,16, + 2,48,6,48,63,252,4,96,12,96,12,96,12,64,8,192, + 255,248,24,128,17,128,49,128,49,128,49,0,35,0,12,25, + 50,15,1,253,6,0,6,0,6,0,31,192,63,240,102,96, + 102,0,102,0,102,0,118,0,62,0,31,128,7,192,7,224, + 6,112,6,48,6,48,134,48,198,48,230,96,255,192,127,128, + 6,0,6,0,6,0,20,20,60,22,1,255,30,0,192,99, + 1,128,67,3,128,193,131,0,193,134,0,193,140,0,193,156, + 0,97,24,0,99,48,0,60,115,192,0,108,96,0,200,96, + 1,152,48,3,152,48,3,24,48,6,24,48,14,8,32,28, + 12,96,24,7,128,48,0,0,19,22,66,21,2,0,3,192, + 0,4,224,0,8,96,0,24,96,0,24,96,0,24,96,0, + 24,192,0,29,128,0,15,0,0,12,0,0,28,63,224,62, + 14,128,119,6,0,99,134,0,193,134,0,193,198,0,192,236, + 0,192,124,0,192,60,0,96,30,0,48,47,192,31,195,128, + 3,10,10,8,3,13,224,192,192,192,192,192,192,192,192,192, + 7,30,30,10,2,251,2,12,24,24,48,48,96,96,96,96, + 192,192,192,192,192,192,192,192,192,192,224,96,96,96,112,48, + 56,24,12,2,7,30,30,10,1,251,128,96,48,56,24,28, + 12,12,12,14,6,6,6,6,6,6,6,6,6,6,12,12, + 12,12,24,24,48,48,96,128,12,13,26,14,1,11,6,0, + 6,0,134,0,102,48,242,240,27,128,6,0,27,128,114,240, + 230,48,6,32,6,0,6,0,12,11,22,13,1,3,6,0, + 6,0,6,0,6,0,6,0,255,240,6,0,6,0,6,0, + 6,0,6,0,4,8,8,7,2,251,112,240,48,48,48,32, + 64,192,9,1,2,11,1,8,255,128,4,4,4,7,2,0, + 112,240,240,224,13,30,60,15,1,251,0,24,0,56,0,48, + 0,48,0,112,0,96,0,96,0,224,0,192,1,192,1,128, + 1,128,3,128,3,0,7,0,6,0,6,0,14,0,12,0, + 12,0,28,0,24,0,56,0,48,0,48,0,112,0,96,0, + 96,0,224,0,192,0,13,19,38,15,1,0,7,128,24,192, + 32,96,96,48,64,48,64,56,192,24,192,24,192,24,192,24, + 192,24,192,24,192,24,192,16,96,16,96,48,48,32,24,64, + 15,128,11,19,38,15,2,0,2,0,30,0,126,0,134,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,15,0,127,224,11,19, + 38,15,2,0,15,128,48,192,96,96,96,96,96,96,0,96, + 0,96,0,192,0,192,1,128,3,0,7,0,6,0,12,0, + 24,0,48,32,112,32,224,32,255,224,11,19,38,15,2,0, + 31,0,113,128,96,192,224,192,0,192,0,192,1,128,3,0, + 15,0,3,192,0,192,0,224,0,96,0,96,0,96,0,96, + 128,192,193,128,127,0,12,19,38,15,1,0,0,64,1,192, + 3,192,3,192,6,192,12,192,12,192,24,192,48,192,48,192, + 96,192,224,192,255,240,0,192,0,192,0,192,0,192,0,192, + 7,240,11,19,38,15,2,0,63,224,32,0,32,0,96,0, + 96,0,96,0,96,0,127,0,97,192,0,192,0,96,0,96, + 0,96,0,96,0,96,0,64,128,192,193,128,63,0,12,20, + 40,15,2,0,0,192,7,0,14,0,24,0,48,0,112,0, + 96,0,96,0,207,128,240,224,224,96,192,112,192,48,192,48, + 192,48,96,48,96,32,32,96,48,64,15,128,12,19,38,15, + 2,0,255,240,128,96,128,96,0,224,0,192,0,192,1,128, + 1,128,3,0,3,0,7,0,6,0,6,0,12,0,12,0, + 28,0,24,0,56,0,48,0,12,19,38,15,2,0,31,128, + 48,192,96,96,224,96,224,96,224,96,248,192,127,128,31,128, + 31,192,49,224,96,112,192,112,192,48,192,48,192,32,96,32, + 112,64,31,128,12,20,40,15,2,255,15,128,49,192,32,224, + 64,96,192,112,192,48,192,48,192,48,192,48,96,112,48,176, + 31,48,0,96,0,96,0,96,0,192,1,128,7,0,30,0, + 48,0,4,15,15,7,2,0,112,240,240,96,0,0,0,0, + 0,0,0,112,240,240,224,4,20,20,7,2,251,112,240,240, + 96,0,0,0,0,0,0,0,0,112,240,48,48,48,32,64, + 192,12,10,20,14,1,4,0,48,0,240,7,192,62,0,248, + 0,240,0,126,0,15,128,1,240,0,112,12,6,12,14,1, + 6,255,240,0,0,0,0,0,0,0,0,255,240,12,10,20, + 14,1,4,96,0,248,0,31,0,7,224,0,240,1,240,7, + 192,62,0,240,0,192,0,10,23,46,14,2,0,31,0,99, + 128,65,192,192,192,192,192,128,192,0,192,1,128,1,128,3, + 0,3,0,6,0,14,0,12,0,12,0,12,0,12,0,0, + 0,0,0,14,0,30,0,30,0,28,0,24,25,75,26,1, + 251,0,63,128,1,192,224,2,0,56,12,0,28,24,0,12, + 16,60,142,32,67,134,96,129,135,65,129,131,193,1,131,195, + 1,131,195,1,131,195,1,131,195,1,131,195,1,131,195,1, + 130,225,129,134,97,131,132,112,197,200,48,120,240,56,0,0, + 28,0,4,15,0,28,3,192,112,0,127,128,19,20,60,19, + 0,0,0,64,0,0,224,0,0,224,0,1,224,0,1,240, + 0,1,176,0,3,48,0,3,56,0,3,24,0,6,28,0, + 6,28,0,6,12,0,15,254,0,12,6,0,8,6,0,24, + 7,0,24,3,0,16,3,0,48,3,128,254,15,224,14,20, + 40,17,1,0,63,192,240,112,48,56,48,24,48,24,48,24, + 48,24,48,48,48,224,63,224,48,112,48,56,48,28,48,12, + 48,12,48,12,48,12,48,24,48,48,255,192,14,20,40,17, + 1,0,3,248,12,28,16,8,48,0,96,0,96,0,64,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,96,0, + 96,0,112,0,56,4,28,24,7,224,17,20,60,19,1,0, + 63,224,0,240,56,0,48,12,0,48,6,0,48,3,0,48, + 3,0,48,3,128,48,1,128,48,1,128,48,1,128,48,1, + 128,48,1,128,48,1,128,48,3,0,48,3,0,48,3,0, + 48,6,0,48,12,0,48,56,0,255,224,0,13,20,40,16, + 1,0,255,240,48,16,48,16,48,16,48,0,48,0,48,0, + 48,0,48,0,63,224,48,64,48,0,48,0,48,0,48,0, + 48,0,48,8,48,8,48,24,255,248,12,20,40,15,1,0, + 255,240,48,16,48,16,48,16,48,0,48,0,48,0,48,0, + 48,0,63,192,48,128,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,254,0,18,20,60,19,1,0,1,254, + 0,6,15,0,8,0,0,16,0,0,32,0,0,96,0,0, + 64,0,0,192,0,0,192,0,0,192,0,0,192,0,0,192, + 31,192,192,7,0,192,3,0,96,3,0,96,3,0,48,3, + 0,24,3,0,12,3,0,3,252,0,19,20,60,21,1,0, + 252,7,224,48,1,128,48,1,128,48,1,128,48,1,128,48, + 1,128,48,1,128,48,1,128,48,1,128,63,255,128,48,1, + 128,48,1,128,48,1,128,48,1,128,48,1,128,48,1,128, + 48,1,128,48,1,128,48,1,128,252,7,224,6,20,20,10, + 2,0,252,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,252,11,25,50,10,253,251,15,224,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,1,0,1,0,3,0,98,0,252,0,17,20, + 60,19,1,0,252,127,0,48,24,0,48,48,0,48,96,0, + 48,224,0,49,192,0,49,128,0,51,0,0,54,0,0,62, + 0,0,54,0,0,55,0,0,51,128,0,49,192,0,48,224, + 0,48,112,0,48,120,0,48,60,0,48,30,0,252,15,128, + 13,20,40,15,1,0,252,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,8,48,8,48,24,255,248,24,20, + 60,26,1,0,248,0,62,60,0,56,60,0,120,62,0,120, + 54,0,216,54,0,216,55,0,152,51,1,152,51,129,152,49, + 131,24,49,195,24,49,198,24,48,198,24,48,230,24,48,108, + 24,48,124,24,48,56,24,48,56,24,48,56,24,252,16,255, + 19,20,60,21,1,0,240,7,224,56,1,128,60,1,128,60, + 1,128,62,1,128,55,1,128,51,129,128,51,129,128,49,193, + 128,48,225,128,48,97,128,48,113,128,48,57,128,48,29,128, + 48,13,128,48,15,128,48,7,128,48,3,128,48,3,128,252, + 1,128,17,20,60,19,1,0,3,240,0,12,24,0,16,12, + 0,48,6,0,32,3,0,96,3,0,64,3,128,192,1,128, + 192,1,128,192,1,128,192,1,128,192,1,128,192,1,128,224, + 1,0,96,3,0,96,2,0,48,6,0,56,4,0,12,24, + 0,7,224,0,15,20,40,17,1,0,63,224,240,56,48,28, + 48,14,48,6,48,6,48,6,48,6,48,12,48,12,52,56, + 51,224,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 254,0,19,25,75,19,1,251,3,240,0,12,24,0,16,12, + 0,48,6,0,32,3,0,96,3,0,64,3,128,192,1,128, + 192,1,128,192,1,128,192,1,128,192,1,128,192,1,128,224, + 1,0,96,3,0,96,3,0,48,6,0,24,4,0,12,24, + 0,7,240,0,0,112,0,0,24,0,0,14,32,0,7,192, + 0,1,128,18,20,60,18,1,0,63,192,0,240,112,0,48, + 24,0,48,12,0,48,12,0,48,12,0,48,12,0,48,24, + 0,48,112,0,63,224,0,63,192,0,49,192,0,48,224,0, + 48,112,0,48,112,0,48,56,0,48,60,0,48,28,0,48, + 15,0,252,15,192,12,20,40,15,2,0,15,224,48,224,64, + 64,192,0,192,0,224,0,248,0,126,0,127,0,31,192,7, + 224,1,240,0,240,0,112,0,48,0,48,128,32,192,96,224, + 192,127,0,16,20,40,18,1,0,255,255,129,131,129,129,129, + 129,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,15, + 240,19,20,60,21,1,0,252,7,224,48,1,128,48,1,128, + 48,1,128,48,1,128,48,1,128,48,1,128,48,1,128,48, + 1,128,48,1,128,48,1,128,48,1,128,48,1,128,48,1, + 128,48,1,128,48,1,0,24,3,0,28,6,0,14,12,0, + 3,240,0,20,20,60,21,0,0,254,3,240,56,0,192,24, + 0,128,28,1,128,12,1,128,14,3,0,14,3,0,6,3, + 0,7,6,0,7,6,0,3,6,0,3,140,0,1,140,0, + 1,204,0,1,216,0,0,216,0,0,248,0,0,240,0,0, + 112,0,0,96,0,27,20,80,27,0,0,254,4,15,224,56, + 4,3,0,24,14,3,0,24,14,3,0,28,15,3,0,28, + 27,2,0,12,27,6,0,12,27,134,0,12,49,134,0,14, + 49,134,0,14,49,196,0,6,96,204,0,6,96,204,0,7, + 96,236,0,7,192,108,0,3,192,120,0,3,192,120,0,3, + 128,56,0,3,128,56,0,3,0,48,0,19,20,60,20,0, + 0,127,31,192,60,7,0,28,6,0,14,6,0,7,12,0, + 7,28,0,3,152,0,1,240,0,1,240,0,0,224,0,0, + 240,0,1,240,0,1,184,0,3,28,0,7,12,0,6,14, + 0,12,7,0,28,3,128,56,3,192,255,15,224,18,20,60, + 19,0,0,240,31,192,56,7,0,28,6,0,12,12,0,14, + 12,0,7,24,0,7,24,0,3,48,0,3,176,0,1,224, + 0,1,224,0,0,192,0,0,192,0,0,192,0,0,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,7,248,0,14, + 20,40,17,1,0,127,252,96,28,64,56,64,120,0,112,0, + 224,0,224,1,192,3,192,3,128,7,0,7,0,14,0,30, + 0,28,0,56,0,56,4,112,4,240,12,255,252,7,30,30, + 10,2,251,254,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 254,13,30,60,15,1,251,192,0,192,0,96,0,96,0,112, + 0,48,0,48,0,24,0,24,0,28,0,12,0,12,0,14, + 0,6,0,6,0,3,0,3,0,3,128,1,128,1,128,0, + 192,0,192,0,192,0,96,0,96,0,112,0,48,0,48,0, + 24,0,24,7,30,30,10,1,251,254,6,6,6,6,6,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,6,254,12,15,30,16,2,9,2,0,6, + 0,15,0,15,0,27,0,27,128,17,128,49,192,49,192,96, + 192,96,224,96,96,192,112,192,48,128,32,13,1,2,15,1, + 253,255,248,7,7,7,10,0,16,96,240,56,24,12,4,2, + 13,15,30,15,1,0,15,192,48,224,112,96,96,96,0,96, + 0,96,15,224,63,224,126,96,240,96,224,96,192,96,192,96, + 65,224,62,120,15,24,48,16,0,0,48,0,240,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,240,49,248, + 54,28,60,12,56,14,48,6,48,6,48,6,48,6,48,6, + 48,4,48,12,48,8,28,16,7,224,12,15,30,14,1,0, + 7,224,24,96,32,32,96,0,64,0,192,0,192,0,192,0, + 192,0,192,0,192,0,96,0,112,32,56,112,31,128,15,24, + 48,17,1,0,0,24,0,120,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,7,248,24,56,32,24,96,24,64,24, + 192,24,192,24,192,24,192,24,192,24,192,24,96,24,112,56, + 56,222,15,24,13,15,30,15,1,0,7,192,24,96,32,48, + 96,24,64,24,192,24,255,240,192,0,192,0,192,0,224,0, + 96,0,112,8,56,48,15,192,11,24,48,10,1,0,3,224, + 4,192,24,0,16,0,48,0,48,0,48,0,48,0,48,0, + 255,0,50,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,254,0,15,23, + 46,16,1,248,7,134,24,252,32,96,96,48,96,48,96,48, + 96,48,112,96,56,64,31,128,8,0,16,0,60,0,63,224, + 15,248,63,252,112,124,224,12,192,12,192,8,96,16,112,32, + 31,192,16,24,48,18,1,0,16,0,240,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,112,49,136,54,12, + 56,12,56,12,48,12,48,12,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,252,63,6,21,21,9,1,0,48,112, + 112,96,0,0,48,240,48,48,48,48,48,48,48,48,48,48, + 48,48,252,9,29,58,8,252,248,1,128,3,128,3,128,3, + 0,0,0,0,0,1,128,7,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,0,3,0,2,0,124, + 0,248,0,15,24,48,16,1,0,16,0,240,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,252,48,112,48, + 224,49,128,51,0,54,0,62,0,54,0,55,0,51,128,49, + 192,48,224,48,112,48,120,252,62,6,24,24,9,1,0,16, + 240,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,252,24,15,45,26,1,0,240,240,120, + 51,25,140,52,26,12,56,28,12,56,28,12,48,24,12,48, + 24,12,48,24,12,48,24,12,48,24,12,48,24,12,48,24, + 12,48,24,12,48,24,12,252,126,63,16,15,30,18,1,0, + 112,112,177,136,54,12,56,12,56,12,48,12,48,12,48,12, + 48,12,48,12,48,12,48,12,48,12,48,12,252,63,14,15, + 30,16,1,0,7,192,24,112,32,56,96,24,64,28,192,12, + 192,12,192,12,192,12,192,12,224,8,96,24,112,16,56,32, + 15,192,15,23,46,17,1,248,112,240,179,24,52,28,56,12, + 48,14,48,6,48,6,48,6,48,6,48,6,48,4,48,12, + 48,8,60,16,55,224,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,254,0,14,23,46,16,1,248,7,144,24,112, + 32,48,96,48,64,48,192,48,192,48,192,48,192,48,192,48, + 192,48,96,48,96,112,48,176,31,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,1,252,11,15,30,13,1,0, + 49,224,243,224,52,64,56,64,56,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,254,0,9,15, + 30,12,2,0,63,0,67,0,193,0,192,0,224,0,248,0, + 126,0,63,0,15,128,3,128,1,128,129,128,129,0,195,0, + 252,0,10,20,40,11,1,0,16,0,48,0,48,0,48,0, + 48,0,255,192,49,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,128,31,64, + 15,15,30,17,1,0,48,24,240,120,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,48,24,48,56, + 24,222,15,24,15,15,30,16,0,0,252,62,56,12,56,8, + 24,24,28,24,12,16,12,48,14,48,6,32,7,96,7,64, + 3,64,3,192,1,128,1,0,22,15,45,23,0,0,252,16, + 124,48,24,24,56,56,16,24,56,48,24,60,48,28,108,48, + 12,110,32,12,78,96,12,198,96,14,199,64,6,131,64,7, + 131,192,7,131,192,3,1,128,2,1,0,16,15,30,16,0, + 0,254,63,60,28,28,16,14,48,6,96,7,192,3,192,1, + 192,3,192,6,224,12,112,12,56,24,24,56,28,252,63,16, + 23,46,16,255,248,126,31,28,6,28,4,12,12,14,12,14, + 8,6,24,7,24,3,16,3,48,3,176,1,160,1,224,1, + 224,0,192,0,192,0,128,1,128,1,128,3,0,126,0,124, + 0,248,0,12,15,30,14,1,0,127,240,64,96,64,224,1, + 192,1,128,3,128,7,0,6,0,14,0,28,0,28,0,56, + 16,112,16,112,48,255,240,8,30,30,11,2,251,3,6,12, + 8,24,24,24,24,28,12,12,12,12,24,48,248,28,12,12, + 12,12,28,24,24,24,24,24,12,6,3,2,32,32,7,3, + 250,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,8,30,30,11,1,251,192,96,48,24,24,24,24,24,56, + 48,48,48,48,56,31,12,24,48,48,48,48,56,24,24,24, + 24,16,48,96,192,14,6,12,16,1,7,28,8,62,12,127, + 136,71,240,131,240,128,224,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,7,0,0,4,24, + 24,9,2,247,112,240,240,224,0,0,32,96,96,96,96,96, + 96,96,96,96,112,112,112,112,112,112,112,64,12,20,40,15, + 2,255,6,0,6,0,6,0,15,224,54,224,102,96,102,0, + 198,0,198,0,198,0,198,0,198,0,198,0,230,32,118,48, + 63,192,31,128,6,0,6,0,6,0,13,19,38,15,1,0, + 7,224,8,112,16,48,16,32,48,32,48,0,48,0,48,0, + 48,0,255,0,48,0,48,0,48,0,48,0,48,8,32,24, + 96,48,127,240,131,240,11,10,20,15,2,4,192,96,127,192, + 49,192,96,192,96,192,96,192,113,192,63,128,64,64,128,32, + 16,19,38,15,255,0,240,63,56,28,28,24,28,56,14,48, + 6,112,7,96,3,192,3,192,1,128,1,128,63,252,1,128, + 1,128,1,128,1,128,1,128,1,128,15,240,2,32,32,7, + 3,250,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 128,0,0,64,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,11,22,44,15,2,0,31,128,49,192,96,128,96,0, + 112,0,120,0,62,0,111,128,199,192,193,224,192,224,224,96, + 240,96,124,96,63,192,15,128,3,192,1,192,64,192,64,192, + 96,128,63,0,9,4,8,13,2,17,97,128,227,128,227,128, + 195,0,21,20,60,24,1,0,1,252,0,6,3,0,24,0, + 192,48,0,96,48,124,96,97,134,48,99,0,48,194,0,24, + 198,0,24,198,0,24,198,0,24,198,0,24,199,0,24,99, + 0,48,97,198,48,48,248,96,48,0,96,24,0,192,6,3, + 0,1,252,0,7,10,10,8,1,9,56,204,140,28,108,204, + 220,238,0,254,12,14,28,16,1,0,6,16,4,48,8,96, + 24,96,48,192,113,192,227,128,227,128,113,192,48,192,24,96, + 8,96,4,48,6,16,13,6,12,15,1,3,255,248,0,24, + 0,24,0,24,0,24,0,24,9,1,2,11,1,8,255,128, + 10,11,22,11,1,11,30,0,97,0,126,128,147,64,151,64, + 156,64,148,64,146,64,105,128,33,0,30,0,10,1,2,16, + 3,19,255,192,7,7,7,11,2,12,60,110,198,198,198,236, + 120,12,14,28,13,1,2,6,0,6,0,6,0,6,0,6, + 0,255,240,6,0,6,0,6,0,6,0,4,0,0,0,0, + 0,255,224,8,11,11,10,1,10,62,99,195,3,6,6,12, + 24,50,97,255,9,12,24,11,0,9,31,0,51,128,97,128, + 1,128,3,0,15,0,1,128,1,128,1,128,1,128,195,0, + 62,0,7,7,7,10,3,16,12,30,24,48,48,96,192,15, + 23,46,17,1,248,48,8,240,56,48,24,48,24,48,24,48, + 24,48,24,48,24,48,24,48,24,56,56,56,120,63,248,55, + 222,51,152,48,0,48,0,48,0,48,0,56,0,56,0,56, + 0,48,0,15,24,48,18,1,252,15,254,48,252,96,216,64, + 216,192,216,192,216,192,216,192,216,224,216,112,216,56,216,15, + 216,0,216,0,216,0,216,0,216,0,216,0,216,0,216,0, + 216,0,216,0,216,0,216,3,254,3,4,4,5,1,9,96, + 224,224,192,5,7,7,7,1,249,48,32,48,120,24,48,224, + 8,11,11,11,2,10,24,248,24,24,24,24,24,24,24,24, + 255,7,10,10,9,1,9,56,108,198,198,198,198,108,56,0, + 254,12,14,28,16,2,0,130,0,65,0,97,128,48,192,56, + 224,28,96,12,112,28,112,30,96,56,224,48,192,97,128,65, + 0,130,0,16,19,38,19,2,0,48,6,240,14,48,12,48, + 24,48,56,48,48,48,96,48,224,48,192,205,130,1,142,3, + 30,6,22,6,38,12,70,24,127,24,134,48,6,96,31,15, + 19,38,18,2,0,48,6,240,12,48,8,48,24,48,48,48, + 48,48,96,48,192,48,192,205,128,1,28,3,102,6,70,4, + 6,12,12,24,24,24,48,48,98,96,254,17,19,57,19,1, + 0,60,3,0,70,6,0,6,4,0,28,12,0,6,24,0, + 6,16,0,6,48,0,142,96,0,120,96,0,0,193,0,1, + 135,0,1,143,0,3,11,0,2,19,0,6,35,0,12,63, + 128,12,67,0,24,3,0,48,15,128,10,24,48,13,2,247, + 14,0,30,0,30,0,28,0,0,0,0,0,0,0,12,0, + 12,0,12,0,12,0,28,0,24,0,48,0,48,0,96,0, + 96,0,192,0,192,64,192,192,192,192,224,128,97,128,62,0, + 19,27,81,19,0,0,6,0,0,15,0,0,7,128,0,1, + 192,0,0,96,0,0,16,0,0,0,0,0,64,0,0,224, + 0,0,224,0,1,224,0,1,240,0,1,176,0,3,48,0, + 3,56,0,3,24,0,6,28,0,6,28,0,6,12,0,15, + 254,0,12,6,0,8,6,0,24,7,0,24,3,0,16,3, + 0,48,3,128,254,15,224,19,27,81,19,0,0,0,8,0, + 0,30,0,0,60,0,0,112,0,1,192,0,1,0,0,0, + 0,0,0,64,0,0,224,0,0,224,0,1,224,0,1,240, + 0,1,176,0,3,48,0,3,56,0,3,24,0,6,28,0, + 6,28,0,6,12,0,15,254,0,12,6,0,8,6,0,24, + 7,0,24,3,0,16,3,0,48,3,128,254,15,224,19,27, + 81,19,0,0,0,224,0,1,224,0,1,240,0,3,56,0, + 6,12,0,12,4,0,0,0,0,0,64,0,0,224,0,0, + 224,0,1,224,0,1,240,0,1,176,0,3,48,0,3,56, + 0,3,24,0,6,28,0,6,28,0,6,12,0,15,254,0, + 12,6,0,8,6,0,24,7,0,24,3,0,16,3,0,48, + 3,128,254,15,224,19,26,78,19,0,0,3,132,0,7,230, + 0,4,252,0,8,56,0,0,0,0,0,0,0,0,64,0, + 0,224,0,0,224,0,1,224,0,1,240,0,1,176,0,3, + 48,0,3,56,0,3,24,0,6,28,0,6,28,0,6,12, + 0,15,254,0,12,6,0,8,6,0,24,7,0,24,3,0, + 16,3,0,48,3,128,254,15,224,19,25,75,19,0,0,6, + 12,0,6,12,0,14,28,0,6,12,0,0,0,0,0,64, + 0,0,224,0,0,224,0,1,224,0,1,240,0,1,176,0, + 3,48,0,3,56,0,3,24,0,6,28,0,6,28,0,6, + 12,0,15,254,0,12,6,0,8,6,0,24,7,0,24,3, + 0,16,3,0,48,3,128,254,15,224,19,27,81,19,0,0, + 0,224,0,1,176,0,1,48,0,3,48,0,1,176,0,1, + 224,0,0,0,0,0,64,0,0,224,0,0,224,0,1,224, + 0,1,240,0,1,176,0,3,48,0,3,56,0,3,24,0, + 6,28,0,6,28,0,6,12,0,15,254,0,12,6,0,8, + 6,0,24,7,0,24,3,0,16,3,0,48,3,128,254,15, + 224,23,20,60,25,0,0,3,255,252,0,124,4,0,108,4, + 0,236,4,0,204,0,1,204,0,1,140,0,1,140,0,3, + 140,0,3,255,248,7,12,16,6,12,0,6,12,0,12,12, + 0,12,12,0,28,12,0,24,12,2,24,12,2,48,12,6, + 252,63,254,15,27,54,17,1,249,3,248,12,28,16,8,48, + 0,96,0,96,0,64,0,192,0,192,0,192,0,192,0,192, + 0,192,0,224,0,96,0,112,0,120,2,60,12,31,248,15, + 240,0,128,0,128,1,224,0,224,0,96,0,192,3,0,13, + 27,54,16,1,0,16,0,56,0,28,0,15,0,3,128,0, + 192,0,0,255,240,48,16,48,16,48,16,48,0,48,0,48, + 0,48,0,48,0,63,224,48,64,48,0,48,0,48,0,48, + 0,48,0,48,8,48,8,48,24,255,248,13,27,54,16,1, + 0,0,32,0,240,1,224,3,128,7,0,12,0,0,0,255, + 240,48,16,48,16,48,16,48,0,48,0,48,0,48,0,48, + 0,63,224,48,64,48,0,48,0,48,0,48,0,48,0,48, + 8,48,8,48,24,255,248,13,27,54,16,1,0,3,0,7, + 128,15,192,28,192,56,96,32,48,0,0,255,240,48,16,48, + 16,48,16,48,0,48,0,48,0,48,0,48,0,63,224,48, + 64,48,0,48,0,48,0,48,0,48,0,48,8,48,8,48, + 24,255,248,13,25,50,16,1,0,24,48,56,112,56,112,48, + 96,0,0,255,240,48,16,48,16,48,16,48,0,48,0,48, + 0,48,0,48,0,63,224,48,64,48,0,48,0,48,0,48, + 0,48,0,48,8,48,8,48,24,255,248,9,27,54,10,255, + 0,96,0,240,0,120,0,28,0,7,0,1,0,0,0,31, + 128,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,31,128,8,27,27,10,2,0,6,15,30, + 56,96,128,0,252,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,252,10,27,54,10,0,0,28,0, + 30,0,62,0,115,0,193,128,128,192,0,0,63,0,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,63,0,10,25,50,10,0,0,193,128,225,192,225,192, + 193,128,0,0,63,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,63,0,18,20,60,19, + 0,0,31,240,0,120,28,0,24,6,0,24,3,0,24,1, + 128,24,1,128,24,1,192,24,0,192,24,0,192,255,128,192, + 24,0,192,24,0,192,24,0,192,24,1,128,24,1,128,24, + 1,128,24,3,0,24,6,0,24,28,0,127,240,0,19,26, + 78,21,1,0,3,132,0,7,230,0,4,124,0,8,56,0, + 0,0,0,0,0,0,240,7,224,56,1,128,60,1,128,60, + 1,128,62,1,128,55,1,128,51,129,128,51,129,128,49,193, + 128,48,225,128,48,97,128,48,113,128,48,57,128,48,29,128, + 48,13,128,48,15,128,48,7,128,48,3,128,48,3,128,252, + 1,128,17,27,81,19,1,0,12,0,0,30,0,0,15,0, + 0,3,128,0,0,224,0,0,32,0,0,0,0,3,240,0, + 12,24,0,16,12,0,48,6,0,32,3,0,96,3,0,64, + 3,128,192,1,128,192,1,128,192,1,128,192,1,128,192,1, + 128,192,1,128,224,1,0,96,3,0,96,2,0,48,6,0, + 56,4,0,12,24,0,7,224,0,17,27,81,19,1,0,0, + 24,0,0,60,0,0,120,0,0,224,0,1,128,0,2,0, + 0,0,0,0,3,240,0,12,24,0,16,12,0,48,6,0, + 32,3,0,96,3,0,64,3,128,192,1,128,192,1,128,192, + 1,128,192,1,128,192,1,128,192,1,128,224,1,0,96,3, + 0,96,2,0,48,6,0,56,4,0,12,24,0,7,224,0, + 17,27,81,19,1,0,1,192,0,1,224,0,3,224,0,7, + 48,0,12,24,0,8,12,0,0,0,0,3,240,0,12,24, + 0,16,12,0,48,6,0,32,3,0,96,3,0,64,3,128, + 192,1,128,192,1,128,192,1,128,192,1,128,192,1,128,192, + 1,128,224,1,0,96,3,0,96,2,0,48,6,0,56,4, + 0,12,24,0,7,224,0,17,26,78,19,1,0,3,4,0, + 7,204,0,8,248,0,16,112,0,0,0,0,0,0,0,3, + 240,0,12,24,0,16,12,0,48,6,0,32,3,0,96,3, + 0,64,3,128,192,1,128,192,1,128,192,1,128,192,1,128, + 192,1,128,192,1,128,224,1,0,96,3,0,96,2,0,48, + 6,0,56,4,0,12,24,0,7,224,0,17,25,75,19,1, + 0,12,24,0,14,28,0,14,28,0,12,24,0,0,0,0, + 3,240,0,12,24,0,16,12,0,48,6,0,32,3,0,96, + 3,0,64,3,128,192,1,128,192,1,128,192,1,128,192,1, + 128,192,1,128,192,1,128,224,1,0,96,3,0,96,2,0, + 48,6,0,56,4,0,12,24,0,7,224,0,11,10,20,13, + 1,4,192,96,96,192,49,128,27,0,14,0,14,0,27,0, + 49,128,96,192,192,96,17,21,63,19,1,255,3,241,128,4, + 31,0,24,14,0,48,30,0,32,31,0,96,63,0,64,59, + 128,192,115,128,192,225,128,192,225,128,193,193,128,195,129,128, + 195,1,128,231,1,0,110,3,0,124,2,0,124,6,0,56, + 4,0,124,24,0,199,224,0,128,0,0,19,27,81,21,1, + 0,6,0,0,15,0,0,7,128,0,1,192,0,0,96,0, + 0,16,0,0,0,0,252,7,224,48,1,128,48,1,128,48, + 1,128,48,1,128,48,1,128,48,1,128,48,1,128,48,1, + 128,48,1,128,48,1,128,48,1,128,48,1,128,48,1,128, + 48,1,128,48,1,0,24,3,0,28,6,0,14,12,0,3, + 240,0,19,27,81,21,1,0,0,12,0,0,30,0,0,60, + 0,0,112,0,0,192,0,1,0,0,0,0,0,252,7,224, + 48,1,128,48,1,128,48,1,128,48,1,128,48,1,128,48, + 1,128,48,1,128,48,1,128,48,1,128,48,1,128,48,1, + 128,48,1,128,48,1,128,48,1,128,48,1,0,24,3,0, + 28,6,0,14,12,0,3,240,0,19,27,81,21,1,0,0, + 224,0,0,240,0,1,240,0,3,152,0,6,12,0,4,6, + 0,0,0,0,252,7,224,48,1,128,48,1,128,48,1,128, + 48,1,128,48,1,128,48,1,128,48,1,128,48,1,128,48, + 1,128,48,1,128,48,1,128,48,1,128,48,1,128,48,1, + 128,48,1,0,24,3,0,28,6,0,14,12,0,3,240,0, + 19,25,75,21,1,0,6,12,0,7,14,0,7,14,0,6, + 12,0,0,0,0,252,7,224,48,1,128,48,1,128,48,1, + 128,48,1,128,48,1,128,48,1,128,48,1,128,48,1,128, + 48,1,128,48,1,128,48,1,128,48,1,128,48,1,128,48, + 1,128,48,1,0,24,3,0,28,6,0,14,12,0,3,240, + 0,18,27,81,19,0,0,0,12,0,0,30,0,0,60,0, + 0,112,0,0,192,0,1,0,0,0,0,0,240,31,192,56, + 7,0,28,6,0,12,12,0,14,12,0,7,24,0,7,24, + 0,3,48,0,3,176,0,1,224,0,1,224,0,0,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,7,248,0,15,20,40,17,1,0,254,0, + 48,0,48,0,48,0,63,224,48,120,48,28,48,14,48,6, + 48,6,48,6,48,6,48,12,48,12,52,56,51,224,48,0, + 48,0,48,0,254,0,16,24,48,18,1,0,1,224,6,56, + 8,24,16,28,16,12,48,12,48,12,48,28,48,56,48,240, + 49,192,49,128,49,128,49,192,48,240,48,124,48,62,48,15, + 48,7,48,3,49,3,49,3,49,134,241,248,13,23,46,15, + 1,0,56,0,56,0,28,0,14,0,6,0,3,0,1,0, + 0,0,15,192,48,224,112,96,96,96,0,96,0,96,15,224, + 63,224,126,96,240,96,224,96,192,96,192,96,65,224,62,120, + 13,23,46,15,1,0,0,224,0,224,1,192,1,128,3,0, + 2,0,4,0,0,0,15,192,48,224,112,96,96,96,0,96, + 0,96,15,224,63,224,126,96,240,96,224,96,192,96,192,96, + 65,224,62,120,13,23,46,15,1,0,7,0,7,0,15,128, + 29,192,24,192,48,96,32,32,0,0,15,192,48,224,112,96, + 96,96,0,96,0,96,15,224,63,224,126,96,240,96,224,96, + 192,96,192,96,65,224,62,120,13,21,42,15,1,0,28,16, + 63,32,35,192,64,0,0,0,0,0,15,192,48,224,112,96, + 96,96,0,96,0,96,15,224,63,224,126,96,240,96,224,96, + 192,96,192,96,65,224,62,120,13,21,42,15,1,0,48,96, + 56,112,48,96,48,96,0,0,0,0,15,192,48,224,112,96, + 96,96,0,96,0,96,15,224,63,224,126,96,240,96,224,96, + 192,96,192,96,65,224,62,120,13,22,44,15,1,0,7,128, + 13,128,12,192,12,128,13,128,15,0,0,0,15,192,48,224, + 112,96,96,96,0,96,0,96,15,224,63,224,126,96,240,96, + 224,96,192,96,192,96,65,224,62,120,19,15,45,22,2,0, + 31,143,0,113,176,192,96,224,192,224,224,96,128,192,96,0, + 192,96,7,255,192,28,192,0,112,192,0,96,192,0,192,192, + 0,192,224,0,193,96,64,194,112,224,124,31,0,12,22,44, + 14,1,249,7,224,24,96,32,32,96,0,64,0,192,0,192, + 0,192,0,192,0,192,0,224,0,112,16,120,96,63,192,31, + 128,2,0,2,0,7,128,3,128,1,128,3,0,12,0,13, + 23,46,15,1,0,24,0,60,0,12,0,6,0,3,0,1, + 0,1,128,0,0,7,192,24,96,32,48,96,24,64,24,192, + 24,255,240,192,0,192,0,192,0,224,0,96,0,112,8,56, + 48,15,192,13,23,46,15,1,0,0,96,0,240,0,192,1, + 128,1,128,3,0,6,0,0,0,7,192,24,96,32,48,96, + 24,64,24,192,24,255,240,192,0,192,0,192,0,224,0,96, + 0,112,8,56,48,15,192,13,23,46,15,1,0,3,0,7, + 128,15,128,12,192,24,96,16,32,32,16,0,0,7,192,24, + 96,32,48,96,24,64,24,192,24,255,240,192,0,192,0,192, + 0,224,0,96,0,112,8,56,48,15,192,13,21,42,15,1, + 0,24,48,56,112,56,112,48,96,0,0,0,0,7,192,24, + 96,32,48,96,24,64,24,192,24,255,240,192,0,192,0,192, + 0,224,0,96,0,112,8,56,48,15,192,7,23,23,9,0, + 0,224,224,112,48,24,12,4,0,24,120,24,24,24,24,24, + 24,24,24,24,24,24,24,126,8,23,23,9,1,0,7,7, + 14,12,24,48,32,0,48,240,48,48,48,48,48,48,48,48, + 48,48,48,48,252,9,23,46,9,0,0,28,0,28,0,62, + 0,119,0,99,0,193,128,128,128,0,0,24,0,120,0,24, + 0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,0,126,0,10,21,42,9,0,0,193, + 128,193,128,227,192,193,128,0,0,0,0,24,0,120,0,24, + 0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,0,126,0,14,23,46,16,1,0,12, + 0,62,24,3,240,3,192,30,224,48,96,0,112,0,56,7, + 152,24,120,32,60,96,28,64,12,192,12,192,12,192,12,192, + 12,192,8,224,24,96,16,112,48,56,96,15,128,16,21,42, + 18,1,0,7,8,15,144,24,224,16,0,0,0,0,0,112, + 112,177,136,54,12,56,12,56,12,48,12,48,12,48,12,48, + 12,48,12,48,12,48,12,48,12,48,12,252,63,14,23,46, + 16,1,0,28,0,28,0,14,0,6,0,3,0,1,128,0, + 128,0,0,7,192,24,112,32,56,96,24,64,28,192,12,192, + 12,192,12,192,12,192,12,224,8,96,24,112,16,56,32,15, + 192,14,23,46,16,1,0,0,112,0,112,0,224,1,192,1, + 128,3,0,2,0,0,0,7,192,24,112,32,56,96,24,64, + 28,192,12,192,12,192,12,192,12,192,12,224,8,96,24,112, + 16,56,32,15,192,14,23,46,16,1,0,3,128,3,128,7, + 192,14,192,12,96,24,48,48,16,0,0,7,192,24,112,32, + 56,96,24,64,28,192,12,192,12,192,12,192,12,192,12,224, + 8,96,24,112,16,56,32,15,192,14,21,42,16,1,0,14, + 8,31,144,17,224,32,0,0,0,0,0,7,192,24,112,32, + 56,96,24,64,28,192,12,192,12,192,12,192,12,192,12,224, + 8,96,24,112,16,56,32,15,192,14,21,42,16,1,0,24, + 48,24,48,56,112,24,48,0,0,0,0,7,192,24,112,32, + 56,96,24,64,28,192,12,192,12,192,12,192,12,192,12,224, + 8,96,24,112,16,56,32,15,192,11,10,20,13,1,4,6, + 0,6,0,6,0,0,0,0,0,255,224,0,0,6,0,6, + 0,6,0,14,16,32,16,1,255,7,204,24,120,32,120,96, + 120,64,252,193,220,193,140,195,140,199,12,198,12,236,8,124, + 24,120,16,120,32,207,192,128,0,15,23,46,17,1,0,28, + 0,28,0,14,0,7,0,3,0,1,128,0,128,0,0,48, + 24,240,120,48,24,48,24,48,24,48,24,48,24,48,24,48, + 24,48,24,48,24,48,24,48,56,24,222,15,24,15,23,46, + 17,1,0,0,112,0,112,0,224,0,192,1,128,1,0,2, + 0,0,0,48,24,240,120,48,24,48,24,48,24,48,24,48, + 24,48,24,48,24,48,24,48,24,48,24,48,56,24,222,15, + 24,15,23,46,17,1,0,3,128,3,128,7,192,14,224,12, + 96,24,48,16,16,0,0,48,24,240,120,48,24,48,24,48, + 24,48,24,48,24,48,24,48,24,48,24,48,24,48,24,48, + 56,24,222,15,24,15,21,42,17,1,0,24,48,28,56,24, + 48,24,48,0,0,0,0,48,24,240,120,48,24,48,24,48, + 24,48,24,48,24,48,24,48,24,48,24,48,24,48,24,48, + 56,24,222,15,24,16,31,62,16,255,248,0,28,0,28,0, + 56,0,112,0,96,0,192,0,128,0,0,126,31,28,6,28, + 4,12,12,14,12,14,8,6,24,7,24,3,16,3,48,3, + 176,1,160,1,224,1,224,0,192,0,192,0,128,1,128,1, + 128,3,0,126,0,124,0,248,0,15,32,64,17,1,248,16, + 0,240,0,48,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,240,51,24,52,28,56,12,48,14,48,6,48,6,48, + 6,48,6,48,6,48,4,48,12,56,8,60,16,55,224,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,254,0,16, + 29,58,16,255,248,6,12,14,28,14,28,6,12,0,0,0, + 0,126,31,28,6,28,4,12,12,14,12,14,8,6,24,7, + 24,3,16,3,48,3,176,1,160,1,224,1,224,0,192,0, + 192,0,128,1,128,1,128,3,0,126,0,124,0,248,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--32-320-72-72-P-146-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 19 + Calculated Max Values w=13 h=30 x= 2 y=11 dx=15 dy= 0 ascent=25 len=60 + Font Bounding box w=47 h=44 x=-16 y=-10 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =19 descent= 0 + X Font ascent =19 descent= 0 + Max Font ascent =25 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr20n[619] U8G_SECTION(".progmem.u8g_font_gdr20n") = { + 0,47,44,240,246,19,0,0,0,0,42,57,0,25,251,19, + 0,12,13,26,14,1,11,6,0,6,0,134,0,102,48,242, + 240,27,128,6,0,27,128,114,240,230,48,6,32,6,0,6, + 0,12,11,22,13,1,3,6,0,6,0,6,0,6,0,6, + 0,255,240,6,0,6,0,6,0,6,0,6,0,4,8,8, + 7,2,251,112,240,48,48,48,32,64,192,9,1,2,11,1, + 8,255,128,4,4,4,7,2,0,112,240,240,224,13,30,60, + 15,1,251,0,24,0,56,0,48,0,48,0,112,0,96,0, + 96,0,224,0,192,1,192,1,128,1,128,3,128,3,0,7, + 0,6,0,6,0,14,0,12,0,12,0,28,0,24,0,56, + 0,48,0,48,0,112,0,96,0,96,0,224,0,192,0,13, + 19,38,15,1,0,7,128,24,192,32,96,96,48,64,48,64, + 56,192,24,192,24,192,24,192,24,192,24,192,24,192,24,192, + 16,96,16,96,48,48,32,24,64,15,128,11,19,38,15,2, + 0,2,0,30,0,126,0,134,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,15,0,127,224,11,19,38,15,2,0,15,128,48, + 192,96,96,96,96,96,96,0,96,0,96,0,192,0,192,1, + 128,3,0,7,0,6,0,12,0,24,0,48,32,112,32,224, + 32,255,224,11,19,38,15,2,0,31,0,113,128,96,192,224, + 192,0,192,0,192,1,128,3,0,15,0,3,192,0,192,0, + 224,0,96,0,96,0,96,0,96,128,192,193,128,127,0,12, + 19,38,15,1,0,0,64,1,192,3,192,3,192,6,192,12, + 192,12,192,24,192,48,192,48,192,96,192,224,192,255,240,0, + 192,0,192,0,192,0,192,0,192,7,240,11,19,38,15,2, + 0,63,224,32,0,32,0,96,0,96,0,96,0,96,0,127, + 0,97,192,0,192,0,96,0,96,0,96,0,96,0,96,0, + 64,128,192,193,128,63,0,12,20,40,15,2,0,0,192,7, + 0,14,0,24,0,48,0,112,0,96,0,96,0,207,128,240, + 224,224,96,192,112,192,48,192,48,192,48,96,48,96,32,32, + 96,48,64,15,128,12,19,38,15,2,0,255,240,128,96,128, + 96,0,224,0,192,0,192,1,128,1,128,3,0,3,0,7, + 0,6,0,6,0,12,0,12,0,28,0,24,0,56,0,48, + 0,12,19,38,15,2,0,31,128,48,192,96,96,224,96,224, + 96,224,96,248,192,127,128,31,128,31,192,49,224,96,112,192, + 112,192,48,192,48,192,32,96,32,112,64,31,128,12,20,40, + 15,2,255,15,128,49,192,32,224,64,96,192,112,192,48,192, + 48,192,48,192,48,96,112,48,176,31,48,0,96,0,96,0, + 96,0,192,1,128,7,0,30,0,48,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--32-320-72-72-P-146-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 20, '1' Height: 19 + Calculated Max Values w=27 h=32 x= 3 y=16 dx=27 dy= 0 ascent=26 len=80 + Font Bounding box w=47 h=44 x=-16 y=-10 + Calculated Min Values x=-4 y=-8 dx= 0 dy= 0 + Pure Font ascent =20 descent=-8 + X Font ascent =25 descent=-8 + Max Font ascent =26 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr20r[4232] U8G_SECTION(".progmem.u8g_font_gdr20r") = { + 0,47,44,240,246,20,4,220,11,144,32,127,248,26,248,25, + 248,0,0,0,7,0,0,4,23,23,9,2,0,48,112,112, + 112,112,112,112,112,112,96,96,96,96,96,96,96,96,64,0, + 112,240,240,224,8,10,10,14,3,13,227,199,199,199,199,195, + 195,195,195,194,14,18,36,15,1,2,1,24,3,24,3,16, + 2,48,6,48,63,252,4,96,12,96,12,96,12,64,8,192, + 255,248,24,128,17,128,49,128,49,128,49,0,35,0,12,25, + 50,15,1,253,6,0,6,0,6,0,31,192,63,240,102,96, + 102,0,102,0,102,0,118,0,62,0,31,128,7,192,7,224, + 6,112,6,48,6,48,134,48,198,48,230,96,255,192,127,128, + 6,0,6,0,6,0,20,20,60,22,1,255,30,0,192,99, + 1,128,67,3,128,193,131,0,193,134,0,193,140,0,193,156, + 0,97,24,0,99,48,0,60,115,192,0,108,96,0,200,96, + 1,152,48,3,152,48,3,24,48,6,24,48,14,8,32,28, + 12,96,24,7,128,48,0,0,19,22,66,21,2,0,3,192, + 0,4,224,0,8,96,0,24,96,0,24,96,0,24,96,0, + 24,192,0,29,128,0,15,0,0,12,0,0,28,63,224,62, + 14,128,119,6,0,99,134,0,193,134,0,193,198,0,192,236, + 0,192,124,0,192,60,0,96,30,0,48,47,192,31,195,128, + 3,10,10,8,3,13,224,192,192,192,192,192,192,192,192,192, + 7,30,30,10,2,251,2,12,24,24,48,48,96,96,96,96, + 192,192,192,192,192,192,192,192,192,192,224,96,96,96,112,48, + 56,24,12,2,7,30,30,10,1,251,128,96,48,56,24,28, + 12,12,12,14,6,6,6,6,6,6,6,6,6,6,12,12, + 12,12,24,24,48,48,96,128,12,13,26,14,1,11,6,0, + 6,0,134,0,102,48,242,240,27,128,6,0,27,128,114,240, + 230,48,6,32,6,0,6,0,12,11,22,13,1,3,6,0, + 6,0,6,0,6,0,6,0,255,240,6,0,6,0,6,0, + 6,0,6,0,4,8,8,7,2,251,112,240,48,48,48,32, + 64,192,9,1,2,11,1,8,255,128,4,4,4,7,2,0, + 112,240,240,224,13,30,60,15,1,251,0,24,0,56,0,48, + 0,48,0,112,0,96,0,96,0,224,0,192,1,192,1,128, + 1,128,3,128,3,0,7,0,6,0,6,0,14,0,12,0, + 12,0,28,0,24,0,56,0,48,0,48,0,112,0,96,0, + 96,0,224,0,192,0,13,19,38,15,1,0,7,128,24,192, + 32,96,96,48,64,48,64,56,192,24,192,24,192,24,192,24, + 192,24,192,24,192,24,192,16,96,16,96,48,48,32,24,64, + 15,128,11,19,38,15,2,0,2,0,30,0,126,0,134,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,15,0,127,224,11,19, + 38,15,2,0,15,128,48,192,96,96,96,96,96,96,0,96, + 0,96,0,192,0,192,1,128,3,0,7,0,6,0,12,0, + 24,0,48,32,112,32,224,32,255,224,11,19,38,15,2,0, + 31,0,113,128,96,192,224,192,0,192,0,192,1,128,3,0, + 15,0,3,192,0,192,0,224,0,96,0,96,0,96,0,96, + 128,192,193,128,127,0,12,19,38,15,1,0,0,64,1,192, + 3,192,3,192,6,192,12,192,12,192,24,192,48,192,48,192, + 96,192,224,192,255,240,0,192,0,192,0,192,0,192,0,192, + 7,240,11,19,38,15,2,0,63,224,32,0,32,0,96,0, + 96,0,96,0,96,0,127,0,97,192,0,192,0,96,0,96, + 0,96,0,96,0,96,0,64,128,192,193,128,63,0,12,20, + 40,15,2,0,0,192,7,0,14,0,24,0,48,0,112,0, + 96,0,96,0,207,128,240,224,224,96,192,112,192,48,192,48, + 192,48,96,48,96,32,32,96,48,64,15,128,12,19,38,15, + 2,0,255,240,128,96,128,96,0,224,0,192,0,192,1,128, + 1,128,3,0,3,0,7,0,6,0,6,0,12,0,12,0, + 28,0,24,0,56,0,48,0,12,19,38,15,2,0,31,128, + 48,192,96,96,224,96,224,96,224,96,248,192,127,128,31,128, + 31,192,49,224,96,112,192,112,192,48,192,48,192,32,96,32, + 112,64,31,128,12,20,40,15,2,255,15,128,49,192,32,224, + 64,96,192,112,192,48,192,48,192,48,192,48,96,112,48,176, + 31,48,0,96,0,96,0,96,0,192,1,128,7,0,30,0, + 48,0,4,15,15,7,2,0,112,240,240,96,0,0,0,0, + 0,0,0,112,240,240,224,4,20,20,7,2,251,112,240,240, + 96,0,0,0,0,0,0,0,0,112,240,48,48,48,32,64, + 192,12,10,20,14,1,4,0,48,0,240,7,192,62,0,248, + 0,240,0,126,0,15,128,1,240,0,112,12,6,12,14,1, + 6,255,240,0,0,0,0,0,0,0,0,255,240,12,10,20, + 14,1,4,96,0,248,0,31,0,7,224,0,240,1,240,7, + 192,62,0,240,0,192,0,10,23,46,14,2,0,31,0,99, + 128,65,192,192,192,192,192,128,192,0,192,1,128,1,128,3, + 0,3,0,6,0,14,0,12,0,12,0,12,0,12,0,0, + 0,0,0,14,0,30,0,30,0,28,0,24,25,75,26,1, + 251,0,63,128,1,192,224,2,0,56,12,0,28,24,0,12, + 16,60,142,32,67,134,96,129,135,65,129,131,193,1,131,195, + 1,131,195,1,131,195,1,131,195,1,131,195,1,131,195,1, + 130,225,129,134,97,131,132,112,197,200,48,120,240,56,0,0, + 28,0,4,15,0,28,3,192,112,0,127,128,19,20,60,19, + 0,0,0,64,0,0,224,0,0,224,0,1,224,0,1,240, + 0,1,176,0,3,48,0,3,56,0,3,24,0,6,28,0, + 6,28,0,6,12,0,15,254,0,12,6,0,8,6,0,24, + 7,0,24,3,0,16,3,0,48,3,128,254,15,224,14,20, + 40,17,1,0,63,192,240,112,48,56,48,24,48,24,48,24, + 48,24,48,48,48,224,63,224,48,112,48,56,48,28,48,12, + 48,12,48,12,48,12,48,24,48,48,255,192,14,20,40,17, + 1,0,3,248,12,28,16,8,48,0,96,0,96,0,64,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,96,0, + 96,0,112,0,56,4,28,24,7,224,17,20,60,19,1,0, + 63,224,0,240,56,0,48,12,0,48,6,0,48,3,0,48, + 3,0,48,3,128,48,1,128,48,1,128,48,1,128,48,1, + 128,48,1,128,48,1,128,48,3,0,48,3,0,48,3,0, + 48,6,0,48,12,0,48,56,0,255,224,0,13,20,40,16, + 1,0,255,240,48,16,48,16,48,16,48,0,48,0,48,0, + 48,0,48,0,63,224,48,64,48,0,48,0,48,0,48,0, + 48,0,48,8,48,8,48,24,255,248,12,20,40,15,1,0, + 255,240,48,16,48,16,48,16,48,0,48,0,48,0,48,0, + 48,0,63,192,48,128,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,254,0,18,20,60,19,1,0,1,254, + 0,6,15,0,8,0,0,16,0,0,32,0,0,96,0,0, + 64,0,0,192,0,0,192,0,0,192,0,0,192,0,0,192, + 31,192,192,7,0,192,3,0,96,3,0,96,3,0,48,3, + 0,24,3,0,12,3,0,3,252,0,19,20,60,21,1,0, + 252,7,224,48,1,128,48,1,128,48,1,128,48,1,128,48, + 1,128,48,1,128,48,1,128,48,1,128,63,255,128,48,1, + 128,48,1,128,48,1,128,48,1,128,48,1,128,48,1,128, + 48,1,128,48,1,128,48,1,128,252,7,224,6,20,20,10, + 2,0,252,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,252,11,25,50,10,253,251,15,224,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,1,0,1,0,3,0,98,0,252,0,17,20, + 60,19,1,0,252,127,0,48,24,0,48,48,0,48,96,0, + 48,224,0,49,192,0,49,128,0,51,0,0,54,0,0,62, + 0,0,54,0,0,55,0,0,51,128,0,49,192,0,48,224, + 0,48,112,0,48,120,0,48,60,0,48,30,0,252,15,128, + 13,20,40,15,1,0,252,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,8,48,8,48,24,255,248,24,20, + 60,26,1,0,248,0,62,60,0,56,60,0,120,62,0,120, + 54,0,216,54,0,216,55,0,152,51,1,152,51,129,152,49, + 131,24,49,195,24,49,198,24,48,198,24,48,230,24,48,108, + 24,48,124,24,48,56,24,48,56,24,48,56,24,252,16,255, + 19,20,60,21,1,0,240,7,224,56,1,128,60,1,128,60, + 1,128,62,1,128,55,1,128,51,129,128,51,129,128,49,193, + 128,48,225,128,48,97,128,48,113,128,48,57,128,48,29,128, + 48,13,128,48,15,128,48,7,128,48,3,128,48,3,128,252, + 1,128,17,20,60,19,1,0,3,240,0,12,24,0,16,12, + 0,48,6,0,32,3,0,96,3,0,64,3,128,192,1,128, + 192,1,128,192,1,128,192,1,128,192,1,128,192,1,128,224, + 1,0,96,3,0,96,2,0,48,6,0,56,4,0,12,24, + 0,7,224,0,15,20,40,17,1,0,63,224,240,56,48,28, + 48,14,48,6,48,6,48,6,48,6,48,12,48,12,52,56, + 51,224,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 254,0,19,25,75,19,1,251,3,240,0,12,24,0,16,12, + 0,48,6,0,32,3,0,96,3,0,64,3,128,192,1,128, + 192,1,128,192,1,128,192,1,128,192,1,128,192,1,128,224, + 1,0,96,3,0,96,3,0,48,6,0,24,4,0,12,24, + 0,7,240,0,0,112,0,0,24,0,0,14,32,0,7,192, + 0,1,128,18,20,60,18,1,0,63,192,0,240,112,0,48, + 24,0,48,12,0,48,12,0,48,12,0,48,12,0,48,24, + 0,48,112,0,63,224,0,63,192,0,49,192,0,48,224,0, + 48,112,0,48,112,0,48,56,0,48,60,0,48,28,0,48, + 15,0,252,15,192,12,20,40,15,2,0,15,224,48,224,64, + 64,192,0,192,0,224,0,248,0,126,0,127,0,31,192,7, + 224,1,240,0,240,0,112,0,48,0,48,128,32,192,96,224, + 192,127,0,16,20,40,18,1,0,255,255,129,131,129,129,129, + 129,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,15, + 240,19,20,60,21,1,0,252,7,224,48,1,128,48,1,128, + 48,1,128,48,1,128,48,1,128,48,1,128,48,1,128,48, + 1,128,48,1,128,48,1,128,48,1,128,48,1,128,48,1, + 128,48,1,128,48,1,0,24,3,0,28,6,0,14,12,0, + 3,240,0,20,20,60,21,0,0,254,3,240,56,0,192,24, + 0,128,28,1,128,12,1,128,14,3,0,14,3,0,6,3, + 0,7,6,0,7,6,0,3,6,0,3,140,0,1,140,0, + 1,204,0,1,216,0,0,216,0,0,248,0,0,240,0,0, + 112,0,0,96,0,27,20,80,27,0,0,254,4,15,224,56, + 4,3,0,24,14,3,0,24,14,3,0,28,15,3,0,28, + 27,2,0,12,27,6,0,12,27,134,0,12,49,134,0,14, + 49,134,0,14,49,196,0,6,96,204,0,6,96,204,0,7, + 96,236,0,7,192,108,0,3,192,120,0,3,192,120,0,3, + 128,56,0,3,128,56,0,3,0,48,0,19,20,60,20,0, + 0,127,31,192,60,7,0,28,6,0,14,6,0,7,12,0, + 7,28,0,3,152,0,1,240,0,1,240,0,0,224,0,0, + 240,0,1,240,0,1,184,0,3,28,0,7,12,0,6,14, + 0,12,7,0,28,3,128,56,3,192,255,15,224,18,20,60, + 19,0,0,240,31,192,56,7,0,28,6,0,12,12,0,14, + 12,0,7,24,0,7,24,0,3,48,0,3,176,0,1,224, + 0,1,224,0,0,192,0,0,192,0,0,192,0,0,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,7,248,0,14, + 20,40,17,1,0,127,252,96,28,64,56,64,120,0,112,0, + 224,0,224,1,192,3,192,3,128,7,0,7,0,14,0,30, + 0,28,0,56,0,56,4,112,4,240,12,255,252,7,30,30, + 10,2,251,254,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 254,13,30,60,15,1,251,192,0,192,0,96,0,96,0,112, + 0,48,0,48,0,24,0,24,0,28,0,12,0,12,0,14, + 0,6,0,6,0,3,0,3,0,3,128,1,128,1,128,0, + 192,0,192,0,192,0,96,0,96,0,112,0,48,0,48,0, + 24,0,24,7,30,30,10,1,251,254,6,6,6,6,6,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,6,254,12,15,30,16,2,9,2,0,6, + 0,15,0,15,0,27,0,27,128,17,128,49,192,49,192,96, + 192,96,224,96,96,192,112,192,48,128,32,13,1,2,15,1, + 253,255,248,7,7,7,10,0,16,96,240,56,24,12,4,2, + 13,15,30,15,1,0,15,192,48,224,112,96,96,96,0,96, + 0,96,15,224,63,224,126,96,240,96,224,96,192,96,192,96, + 65,224,62,120,15,24,48,16,0,0,48,0,240,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,240,49,248, + 54,28,60,12,56,14,48,6,48,6,48,6,48,6,48,6, + 48,4,48,12,48,8,28,16,7,224,12,15,30,14,1,0, + 7,224,24,96,32,32,96,0,64,0,192,0,192,0,192,0, + 192,0,192,0,192,0,96,0,112,32,56,112,31,128,15,24, + 48,17,1,0,0,24,0,120,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,7,248,24,56,32,24,96,24,64,24, + 192,24,192,24,192,24,192,24,192,24,192,24,96,24,112,56, + 56,222,15,24,13,15,30,15,1,0,7,192,24,96,32,48, + 96,24,64,24,192,24,255,240,192,0,192,0,192,0,224,0, + 96,0,112,8,56,48,15,192,11,24,48,10,1,0,3,224, + 4,192,24,0,16,0,48,0,48,0,48,0,48,0,48,0, + 255,0,50,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,254,0,15,23, + 46,16,1,248,7,134,24,252,32,96,96,48,96,48,96,48, + 96,48,112,96,56,64,31,128,8,0,16,0,60,0,63,224, + 15,248,63,252,112,124,224,12,192,12,192,8,96,16,112,32, + 31,192,16,24,48,18,1,0,16,0,240,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,112,49,136,54,12, + 56,12,56,12,48,12,48,12,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,252,63,6,21,21,9,1,0,48,112, + 112,96,0,0,48,240,48,48,48,48,48,48,48,48,48,48, + 48,48,252,9,29,58,8,252,248,1,128,3,128,3,128,3, + 0,0,0,0,0,1,128,7,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,0,3,0,2,0,124, + 0,248,0,15,24,48,16,1,0,16,0,240,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,252,48,112,48, + 224,49,128,51,0,54,0,62,0,54,0,55,0,51,128,49, + 192,48,224,48,112,48,120,252,62,6,24,24,9,1,0,16, + 240,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,252,24,15,45,26,1,0,240,240,120, + 51,25,140,52,26,12,56,28,12,56,28,12,48,24,12,48, + 24,12,48,24,12,48,24,12,48,24,12,48,24,12,48,24, + 12,48,24,12,48,24,12,252,126,63,16,15,30,18,1,0, + 112,112,177,136,54,12,56,12,56,12,48,12,48,12,48,12, + 48,12,48,12,48,12,48,12,48,12,48,12,252,63,14,15, + 30,16,1,0,7,192,24,112,32,56,96,24,64,28,192,12, + 192,12,192,12,192,12,192,12,224,8,96,24,112,16,56,32, + 15,192,15,23,46,17,1,248,112,240,179,24,52,28,56,12, + 48,14,48,6,48,6,48,6,48,6,48,6,48,4,48,12, + 48,8,60,16,55,224,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,254,0,14,23,46,16,1,248,7,144,24,112, + 32,48,96,48,64,48,192,48,192,48,192,48,192,48,192,48, + 192,48,96,48,96,112,48,176,31,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,1,252,11,15,30,13,1,0, + 49,224,243,224,52,64,56,64,56,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,254,0,9,15, + 30,12,2,0,63,0,67,0,193,0,192,0,224,0,248,0, + 126,0,63,0,15,128,3,128,1,128,129,128,129,0,195,0, + 252,0,10,20,40,11,1,0,16,0,48,0,48,0,48,0, + 48,0,255,192,49,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,128,31,64, + 15,15,30,17,1,0,48,24,240,120,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,48,24,48,56, + 24,222,15,24,15,15,30,16,0,0,252,62,56,12,56,8, + 24,24,28,24,12,16,12,48,14,48,6,32,7,96,7,64, + 3,64,3,192,1,128,1,0,22,15,45,23,0,0,252,16, + 124,48,24,24,56,56,16,24,56,48,24,60,48,28,108,48, + 12,110,32,12,78,96,12,198,96,14,199,64,6,131,64,7, + 131,192,7,131,192,3,1,128,2,1,0,16,15,30,16,0, + 0,254,63,60,28,28,16,14,48,6,96,7,192,3,192,1, + 192,3,192,6,224,12,112,12,56,24,24,56,28,252,63,16, + 23,46,16,255,248,126,31,28,6,28,4,12,12,14,12,14, + 8,6,24,7,24,3,16,3,48,3,176,1,160,1,224,1, + 224,0,192,0,192,0,128,1,128,1,128,3,0,126,0,124, + 0,248,0,12,15,30,14,1,0,127,240,64,96,64,224,1, + 192,1,128,3,128,7,0,6,0,14,0,28,0,28,0,56, + 16,112,16,112,48,255,240,8,30,30,11,2,251,3,6,12, + 8,24,24,24,24,28,12,12,12,12,24,48,248,28,12,12, + 12,12,28,24,24,24,24,24,12,6,3,2,32,32,7,3, + 250,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,8,30,30,11,1,251,192,96,48,24,24,24,24,24,56, + 48,48,48,48,56,31,12,24,48,48,48,48,56,24,24,24, + 24,16,48,96,192,14,6,12,16,1,7,28,8,62,12,127, + 136,71,240,131,240,128,224,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--40-400-72-72-P-182-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=33 h=41 x= 4 y=23 dx=34 dy= 0 ascent=34 len=132 + Font Bounding box w=59 h=57 x=-20 y=-14 + Calculated Min Values x=-4 y=-11 dx= 0 dy= 0 + Pure Font ascent =25 descent=-9 + X Font ascent =31 descent=-9 + Max Font ascent =34 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr25[13042] U8G_SECTION(".progmem.u8g_font_gdr25") = { + 0,59,57,236,242,25,6,209,16,163,32,255,247,34,245,31, + 247,0,0,0,9,0,0,5,30,30,11,3,255,48,112,240, + 112,112,112,112,112,112,112,112,112,112,112,112,112,112,112,112, + 96,96,96,0,0,0,112,248,248,248,112,11,13,26,17,3, + 16,112,224,241,224,241,224,241,224,241,224,112,224,96,192,96, + 192,96,192,96,192,96,192,96,192,96,192,17,23,69,19,2, + 2,0,194,0,1,134,0,1,134,0,1,142,0,3,140,0, + 3,12,0,3,12,0,63,255,128,63,255,128,6,24,0,6, + 56,0,14,48,0,12,48,0,12,48,0,255,254,0,255,254, + 0,24,96,0,24,224,0,48,192,0,48,192,0,48,192,0, + 113,192,0,97,128,0,16,30,60,19,1,253,1,128,1,128, + 1,128,3,224,15,252,57,254,49,156,113,136,113,128,113,128, + 121,128,61,128,63,128,31,224,7,248,1,252,1,190,1,143, + 1,143,1,135,193,135,193,135,225,142,241,142,255,252,63,240, + 15,192,1,128,1,128,1,128,25,25,100,27,1,255,15,128, + 6,0,63,192,28,0,113,224,56,0,112,224,56,0,224,112, + 112,0,224,112,224,0,224,112,224,0,224,113,192,0,224,115, + 128,0,112,231,0,0,120,231,0,0,63,206,60,0,31,28, + 254,0,0,29,207,0,0,57,199,0,0,115,131,128,0,227, + 131,128,0,227,131,128,1,195,131,128,3,131,131,128,3,131, + 131,128,7,1,199,0,14,1,199,0,28,0,254,0,24,0, + 120,0,24,28,84,27,2,0,0,248,0,1,252,0,3,30, + 0,7,14,0,14,14,0,14,14,0,14,14,0,14,12,0, + 14,28,0,15,56,0,7,112,0,7,192,0,7,131,255,15, + 135,255,29,193,242,57,224,240,112,240,112,112,112,112,224,120, + 112,224,60,112,224,30,224,224,15,224,224,7,192,240,3,192, + 120,3,240,60,30,248,31,252,127,7,224,56,4,13,13,10, + 3,16,112,240,240,240,240,112,96,96,96,96,96,96,96,9, + 37,74,13,3,250,0,128,3,128,7,0,14,0,12,0,28, + 0,24,0,56,0,56,0,112,0,112,0,112,0,112,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,112,0,112,0,112,0,112,0,56, + 0,56,0,28,0,28,0,14,0,7,0,3,128,0,128,9, + 37,74,13,1,250,128,0,224,0,112,0,56,0,28,0,28, + 0,14,0,14,0,14,0,7,0,7,0,7,0,7,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,3,128,7,0,7,0,7,0,7,0,14,0,14, + 0,12,0,28,0,24,0,56,0,112,0,224,0,128,0,16, + 16,32,18,1,14,1,128,1,128,1,128,97,132,113,142,121, + 159,31,248,7,192,3,192,31,248,121,158,241,142,33,134,1, + 128,1,128,1,128,15,14,28,16,1,4,3,128,3,128,3, + 128,3,128,3,128,3,128,255,254,255,254,3,128,3,128,3, + 128,3,128,3,128,3,128,6,10,10,9,2,250,60,252,60, + 28,28,24,24,48,32,64,11,2,4,13,1,9,127,224,255, + 224,5,5,5,9,2,255,112,248,248,248,112,17,38,114,19, + 1,249,0,1,128,0,7,0,0,7,0,0,7,0,0,14, + 0,0,14,0,0,14,0,0,28,0,0,28,0,0,56,0, + 0,56,0,0,56,0,0,112,0,0,112,0,0,112,0,0, + 224,0,0,224,0,1,192,0,1,192,0,1,192,0,3,128, + 0,3,128,0,3,128,0,7,0,0,7,0,0,14,0,0, + 14,0,0,14,0,0,28,0,0,28,0,0,28,0,0,56, + 0,0,56,0,0,112,0,0,112,0,0,112,0,0,224,0, + 0,192,0,0,17,24,72,19,1,0,3,224,0,15,248,0, + 28,60,0,56,30,0,48,14,0,112,7,0,96,7,0,96, + 7,128,224,3,128,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,224,3,128,224,3,128,240,3,0,112,7,0, + 112,7,0,120,6,0,60,14,0,30,28,0,15,248,0,7, + 224,0,14,24,48,19,3,0,1,128,7,128,63,128,255,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,15,224,127,252,14,24,48,19,2,0,3,224, + 15,248,24,120,48,60,112,28,96,28,224,28,0,28,0,24, + 0,56,0,48,0,112,0,224,1,192,1,128,3,128,7,0, + 14,0,28,0,24,4,48,4,112,12,255,252,255,252,15,24, + 48,19,1,0,3,224,15,248,28,120,56,60,112,28,112,28, + 0,28,0,24,0,48,0,96,3,224,3,248,0,60,0,28, + 0,14,0,14,0,14,0,14,0,14,0,28,64,28,240,120, + 63,240,15,192,16,24,48,19,1,0,0,24,0,120,0,120, + 0,248,1,248,1,184,3,56,7,56,6,56,12,56,28,56, + 24,56,48,56,112,56,96,56,255,255,255,254,0,56,0,56, + 0,56,0,56,0,56,0,124,3,255,15,24,48,19,1,0, + 0,4,31,252,31,248,24,0,24,0,24,0,48,0,48,0, + 48,0,63,224,63,248,48,124,64,28,0,30,0,14,0,14, + 0,14,0,14,0,14,0,28,64,28,240,120,63,240,15,192, + 15,24,48,19,2,0,0,56,0,240,3,192,7,0,14,0, + 28,0,56,0,112,0,112,0,99,224,239,248,248,60,240,28, + 224,30,224,14,224,14,224,14,224,14,112,14,112,12,56,28, + 60,56,31,240,7,192,15,23,46,19,2,0,127,254,255,254, + 192,12,192,12,128,28,0,24,0,56,0,48,0,112,0,96, + 0,96,0,224,0,192,1,192,1,128,3,128,3,0,7,0, + 7,0,14,0,14,0,28,0,56,0,15,24,48,19,2,0, + 15,192,63,240,120,120,112,60,240,28,224,28,224,28,240,24, + 120,48,62,96,31,192,7,240,24,120,48,60,112,30,96,14, + 224,14,224,14,224,14,224,12,112,28,124,56,63,240,15,192, + 15,25,50,19,2,255,7,192,15,240,56,120,48,60,112,28, + 96,28,224,14,224,14,224,14,224,14,240,14,112,30,120,62, + 63,238,15,140,0,28,0,28,0,24,0,56,0,112,0,224, + 1,192,7,128,30,0,48,0,5,19,19,9,2,255,120,248, + 248,248,96,0,0,0,0,0,0,0,0,0,112,248,248,248, + 112,6,24,24,9,2,250,120,248,248,248,96,0,0,0,0, + 0,0,0,0,0,60,252,60,28,28,24,24,48,32,64,15, + 13,26,18,1,5,0,2,0,30,0,254,3,240,31,192,126, + 0,240,0,252,0,63,128,7,224,1,252,0,62,0,12,15, + 8,16,18,1,7,127,254,255,254,0,0,0,0,0,0,0, + 0,127,254,255,254,15,13,26,18,1,5,96,0,252,0,63, + 0,15,224,1,252,0,126,0,30,0,126,3,240,31,192,126, + 0,248,0,192,0,14,30,60,17,2,255,7,224,31,240,56, + 120,112,56,224,28,224,28,224,28,192,28,0,28,0,56,0, + 56,0,112,0,240,0,224,1,192,3,128,3,128,7,0,7, + 0,7,0,7,0,7,0,0,0,0,0,0,0,7,0,15, + 128,15,128,15,128,7,0,30,33,132,32,1,249,0,7,248, + 0,0,63,254,0,0,240,31,128,1,192,7,192,3,0,1, + 224,6,0,0,240,12,0,0,112,24,0,0,120,56,3,198, + 56,48,15,252,56,112,28,60,60,112,56,28,28,96,112,28, + 28,224,96,28,28,224,224,28,28,224,224,28,28,224,224,28, + 28,224,224,28,28,224,224,28,28,224,224,28,24,240,240,28, + 56,112,112,28,48,112,120,60,96,120,60,94,224,56,31,143, + 128,60,15,15,0,30,0,0,0,31,0,0,0,15,128,0, + 32,7,192,0,192,1,248,15,128,0,255,254,0,0,31,240, + 0,23,25,75,24,0,0,0,8,0,0,56,0,0,60,0, + 0,60,0,0,108,0,0,110,0,0,110,0,0,198,0,0, + 199,0,0,199,0,1,131,0,1,131,128,1,131,128,3,1, + 128,3,255,192,3,255,192,6,0,224,6,0,224,6,0,224, + 12,0,112,12,0,112,12,0,112,24,0,56,28,0,120,255, + 1,254,19,25,75,22,1,0,31,240,0,255,254,0,28,31, + 0,28,7,128,28,3,128,28,3,128,28,3,128,28,3,128, + 28,7,0,28,6,0,28,28,0,31,254,0,31,255,0,28, + 15,128,28,3,192,28,1,224,28,0,224,28,0,224,28,0, + 224,28,0,224,28,1,224,28,1,192,28,7,128,63,255,0, + 255,252,0,19,25,75,21,1,0,0,254,0,3,255,192,7, + 7,192,12,1,128,24,0,0,56,0,0,112,0,0,112,0, + 0,112,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,112,0,0,112, + 0,0,120,0,0,60,0,64,30,1,224,15,135,128,7,254, + 0,1,248,0,21,25,75,24,1,0,31,248,0,255,255,0, + 28,15,128,28,3,192,28,1,224,28,0,240,28,0,112,28, + 0,112,28,0,120,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,112,28,0,112, + 28,0,112,28,0,224,28,1,224,28,3,192,28,15,128,63, + 254,0,255,248,0,18,25,75,20,1,0,255,255,0,63,255, + 0,28,3,0,28,1,0,28,1,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,31,252,0,31,252,0,28, + 8,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,64,28,0,192,28,1,128, + 63,255,128,255,255,128,17,25,75,19,1,0,255,255,128,63, + 255,128,28,3,0,28,1,0,28,1,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,31,252,0,31,248,0, + 28,24,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,62,0,0,255,128,0,21,25,75,23,1,0,0,127,0, + 1,255,192,7,3,224,14,0,192,28,0,0,56,0,0,48, + 0,0,112,0,0,112,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,15,248,224,1,224,224,0,224,224,0,224, + 112,0,224,112,0,224,120,0,224,60,0,224,30,0,224,15, + 129,192,7,255,128,1,252,0,24,25,75,26,1,0,255,129, + 255,62,0,124,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,31, + 255,248,31,255,248,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,62,0,124,255,129,255,9,25,50,12,1,0,255, + 128,62,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,62,0,255, + 128,15,32,64,12,252,249,7,254,0,248,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,96,0,96,0,224,0, + 192,49,128,127,0,252,0,22,25,75,23,1,0,255,135,248, + 62,1,192,28,3,128,28,7,0,28,14,0,28,12,0,28, + 24,0,28,56,0,28,112,0,28,224,0,29,192,0,31,128, + 0,31,192,0,29,224,0,28,224,0,28,112,0,28,56,0, + 28,60,0,28,30,0,28,15,0,28,7,128,28,3,192,28, + 3,224,62,1,252,255,128,240,18,25,75,19,1,0,255,128, + 0,62,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,192,28,0,128, + 30,1,128,63,255,128,255,255,128,30,25,100,32,1,0,254, + 0,1,248,30,0,3,224,31,0,3,224,31,0,3,224,31, + 0,7,224,27,128,6,224,27,128,14,224,25,192,12,224,25, + 192,12,224,24,224,28,224,24,224,24,224,24,224,56,224,24, + 112,48,224,24,112,112,224,24,56,96,224,24,56,96,224,24, + 28,224,224,24,28,192,224,24,31,192,224,24,15,128,224,24, + 15,128,224,24,7,128,224,24,7,0,224,60,7,1,224,255, + 2,7,252,24,25,75,26,1,0,248,1,255,60,0,124,30, + 0,56,30,0,56,31,0,56,31,128,56,29,128,56,29,192, + 56,28,224,56,28,96,56,28,112,56,28,56,56,28,28,56, + 28,28,56,28,14,56,28,7,56,28,7,56,28,3,184,28, + 3,248,28,1,248,28,0,248,28,0,248,28,0,120,62,0, + 56,255,128,24,21,25,75,24,1,0,0,252,0,3,255,0, + 7,7,128,12,3,192,24,1,224,56,0,224,112,0,112,112, + 0,112,96,0,120,224,0,56,224,0,56,224,0,56,224,0, + 56,224,0,56,224,0,56,224,0,56,240,0,48,112,0,112, + 112,0,96,120,0,224,60,0,192,30,1,128,15,7,0,7, + 254,0,1,248,0,18,25,75,21,1,0,31,248,0,255,254, + 0,28,31,0,28,7,128,28,3,192,28,1,192,28,1,192, + 28,1,192,28,1,192,28,1,192,28,3,128,28,7,128,28, + 15,0,29,254,0,28,248,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 62,0,0,255,128,0,24,31,93,24,1,250,0,252,0,3, + 255,0,7,7,128,12,3,192,24,1,224,56,0,224,112,0, + 112,112,0,112,96,0,120,224,0,56,224,0,56,224,0,56, + 224,0,56,224,0,56,224,0,56,224,0,56,240,0,48,112, + 0,112,112,0,112,56,0,224,60,0,192,30,1,192,15,7, + 128,7,254,0,1,252,0,0,14,0,0,7,0,0,3,130, + 0,1,227,0,0,254,0,0,60,21,25,75,22,1,0,31, + 240,0,255,254,0,28,31,0,28,7,0,28,7,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,7,0,28,6,0, + 28,28,0,31,240,0,28,112,0,28,56,0,28,56,0,28, + 28,0,28,30,0,28,14,0,28,7,0,28,7,128,28,3, + 128,28,3,192,62,1,248,255,129,240,15,25,50,19,2,0, + 7,224,31,248,120,124,112,24,224,0,224,0,224,0,240,0, + 248,0,126,0,63,128,31,224,7,248,1,252,0,124,0,30, + 0,30,0,14,128,14,128,14,192,28,224,28,240,120,255,240, + 31,128,21,25,75,22,0,0,127,255,248,255,255,248,192,112, + 24,192,112,24,128,112,16,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,248,0, + 3,254,0,24,25,75,26,1,0,255,129,255,62,0,124,28, + 0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28, + 0,112,14,0,112,14,0,112,15,0,224,7,193,192,3,255, + 128,0,126,0,25,25,100,26,0,0,255,128,127,128,28,0, + 14,0,30,0,12,0,14,0,28,0,14,0,24,0,15,0, + 24,0,7,0,56,0,7,0,48,0,3,128,48,0,3,128, + 112,0,3,192,96,0,1,192,224,0,1,192,224,0,1,224, + 192,0,0,225,192,0,0,225,128,0,0,113,128,0,0,115, + 128,0,0,123,0,0,0,59,0,0,0,63,0,0,0,62, + 0,0,0,30,0,0,0,30,0,0,0,8,0,0,33,25, + 125,34,0,0,255,128,192,127,128,28,0,192,14,0,28,0, + 192,12,0,28,1,224,12,0,14,1,224,28,0,14,1,224, + 28,0,14,3,240,24,0,14,3,112,24,0,7,3,48,24, + 0,7,7,56,56,0,7,6,56,56,0,7,6,24,48,0, + 7,14,28,48,0,3,140,28,48,0,3,140,14,112,0,3, + 156,14,96,0,3,152,14,96,0,1,216,7,96,0,1,248, + 7,96,0,1,240,7,224,0,1,240,3,192,0,1,240,3, + 192,0,0,224,3,192,0,0,224,1,192,0,0,192,1,128, + 0,23,25,75,25,1,0,255,135,252,60,0,240,28,0,224, + 30,1,192,15,1,128,7,3,128,7,135,0,3,198,0,1, + 238,0,0,252,0,0,252,0,0,120,0,0,120,0,0,124, + 0,0,254,0,1,206,0,1,207,0,3,135,128,3,3,128, + 7,3,192,14,1,224,12,0,224,28,0,240,60,0,248,255, + 3,254,23,25,75,24,0,0,248,1,254,60,0,120,30,0, + 96,14,0,224,7,0,192,7,129,192,3,129,128,3,195,128, + 1,195,0,0,231,0,0,238,0,0,126,0,0,124,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,124,0, + 1,255,0,18,25,75,21,1,0,63,255,192,63,255,192,48, + 3,128,32,7,128,96,15,0,96,14,0,0,30,0,0,28, + 0,0,56,0,0,120,0,0,112,0,0,240,0,1,224,0, + 1,192,0,3,192,0,3,128,0,7,0,0,15,0,0,14, + 0,0,30,0,64,60,0,64,56,0,192,120,0,192,127,255, + 192,255,255,192,9,37,74,12,3,250,255,128,255,128,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 255,128,255,128,17,38,114,19,1,249,192,0,0,224,0,0, + 112,0,0,112,0,0,48,0,0,56,0,0,56,0,0,24, + 0,0,28,0,0,28,0,0,14,0,0,14,0,0,6,0, + 0,7,0,0,7,0,0,3,0,0,3,128,0,3,128,0, + 1,192,0,1,192,0,0,192,0,0,224,0,0,224,0,0, + 96,0,0,112,0,0,112,0,0,56,0,0,56,0,0,24, + 0,0,28,0,0,28,0,0,12,0,0,14,0,0,14,0, + 0,7,0,0,7,0,0,3,0,0,1,128,9,37,74,13, + 1,250,255,128,255,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,255,128,255,128,16,19,38,20, + 2,11,0,128,3,128,3,192,3,192,7,224,6,224,14,224, + 12,112,12,112,28,120,24,56,24,56,48,28,48,28,112,28, + 96,14,96,14,224,7,128,6,17,2,6,19,1,251,127,255, + 128,255,255,0,8,9,9,13,1,20,224,240,112,56,56,28, + 14,6,3,16,18,36,18,2,0,3,224,31,240,56,120,112, + 56,240,56,192,56,0,56,0,120,7,248,28,56,112,56,96, + 56,224,56,224,56,224,120,241,185,127,63,60,24,18,30,90, + 20,0,0,12,0,0,124,0,0,188,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,60,0,28,255,0,29,143,0, + 31,7,128,30,3,128,28,3,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,128,28,1,128,28,3, + 128,30,3,0,31,134,0,7,252,0,1,240,0,15,18,36, + 17,2,0,1,248,7,254,28,28,56,12,112,4,112,0,224, + 0,224,0,224,0,224,0,224,0,224,0,240,0,112,4,120, + 6,62,28,31,248,7,224,19,30,90,21,2,0,0,3,0, + 0,63,0,0,15,0,0,7,0,0,7,0,0,7,0,0, + 7,0,0,7,0,0,7,0,0,7,0,0,7,0,0,7, + 0,3,247,0,15,255,0,28,31,0,56,15,0,48,7,0, + 112,7,0,96,7,0,224,7,0,224,7,0,224,7,0,224, + 7,0,224,7,0,240,7,0,112,15,0,120,31,0,60,55, + 224,31,231,192,7,131,0,14,18,36,18,2,0,3,192,15, + 240,28,120,48,56,112,28,96,28,224,28,255,252,255,248,224, + 0,224,0,224,0,240,0,112,4,120,12,60,56,31,240,7, + 192,15,30,60,12,1,0,0,120,1,254,3,28,6,8,14, + 0,12,0,12,0,28,0,28,0,28,0,28,0,28,0,127, + 240,255,224,28,64,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,62, + 0,255,192,18,27,81,19,1,247,3,224,192,15,255,192,28, + 63,0,56,28,0,112,14,0,112,14,0,112,14,0,112,14, + 0,120,28,0,60,56,0,31,240,0,7,192,0,6,0,0, + 12,0,0,28,0,0,31,224,0,15,254,0,12,63,128,24, + 3,192,112,1,192,224,1,192,224,1,192,224,3,128,240,3, + 128,124,15,0,63,252,0,7,240,0,21,30,90,22,1,0, + 12,0,0,252,0,0,124,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,31,0,28,63,128,28,227,192,29,129,192, + 31,1,192,30,1,192,30,1,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,192,62,3,192,255,143,248,9,27,54,11,1,0, + 28,0,60,0,60,0,60,0,24,0,0,0,0,0,0,0, + 0,0,12,0,252,0,60,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,60,0,255,128,11,36,72,10,252,247,0,224,1,224, + 1,224,1,224,0,192,0,0,0,0,0,0,0,0,0,96, + 7,224,1,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,192,0,192,1,192,1,128,35,0, + 254,0,248,0,19,30,90,20,1,0,12,0,0,252,0,0, + 60,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,31, + 224,28,7,0,28,14,0,28,28,0,28,48,0,28,224,0, + 29,192,0,31,128,0,29,192,0,29,224,0,28,240,0,28, + 120,0,28,56,0,28,28,0,28,30,0,28,15,0,60,7, + 128,255,3,224,9,30,60,11,1,0,12,0,252,0,124,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,60,0,255,128,31,18,72,32,1,0,12,30,3,192, + 252,127,15,224,60,199,152,240,29,131,176,112,31,3,224,112, + 30,3,192,112,28,3,128,112,28,3,128,112,28,3,128,112, + 28,3,128,112,28,3,128,112,28,3,128,112,28,3,128,112, + 28,3,128,112,28,3,128,112,28,3,128,112,60,7,192,240, + 255,159,243,254,21,18,54,22,1,0,12,15,0,252,63,128, + 60,99,192,29,129,192,29,1,192,30,1,192,30,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,192,28,1,192,28,1,192,62,3,192,255,143,248, + 16,18,36,20,2,0,3,224,15,248,28,60,48,30,112,14, + 96,15,224,7,224,7,224,7,224,7,224,7,224,7,240,6, + 112,14,120,12,62,56,31,240,7,192,18,27,81,21,1,247, + 12,28,0,252,127,0,60,143,128,29,7,128,30,3,128,30, + 3,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,128,28,1,128,28,3,128,30,3,0,31,6,0, + 29,252,0,28,120,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,62,0,0,255,128, + 0,19,27,81,21,2,247,1,241,128,7,251,0,28,31,0, + 56,15,0,48,7,0,112,7,0,96,7,0,224,7,0,224, + 7,0,224,7,0,224,7,0,224,7,0,240,7,0,112,15, + 0,120,31,0,60,55,0,31,231,0,7,135,0,0,7,0, + 0,7,0,0,7,0,0,7,0,0,7,0,0,7,0,0, + 7,0,0,7,0,0,63,224,14,18,36,16,1,0,12,60, + 252,252,61,140,29,12,31,4,30,0,30,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,30,0, + 255,128,11,18,36,15,2,0,31,0,127,128,115,192,225,128, + 224,128,240,0,248,0,126,0,31,0,15,192,3,224,1,224, + 128,224,128,224,192,224,225,192,255,128,62,0,13,25,50,14, + 0,0,4,0,12,0,28,0,28,0,28,0,28,0,28,0, + 127,248,255,240,28,32,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,30,56, + 15,240,7,128,21,18,54,21,0,0,12,0,192,252,15,192, + 28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,3,192,28,7,192,30,29,200,15,241,240,7,192,192, + 19,18,54,20,0,0,255,7,224,60,1,192,28,1,128,28, + 3,128,14,3,0,14,3,0,14,6,0,7,6,0,7,6, + 0,3,140,0,3,140,0,3,156,0,1,216,0,1,216,0, + 0,240,0,0,240,0,0,240,0,0,64,0,28,18,72,28, + 0,0,255,3,7,240,60,7,0,192,28,7,0,192,28,7, + 129,128,28,15,129,128,14,15,129,128,14,13,195,128,14,25, + 195,0,6,25,195,0,7,24,227,0,7,48,230,0,3,48, + 118,0,3,176,118,0,3,224,124,0,1,224,60,0,1,224, + 60,0,1,192,60,0,1,128,16,0,20,18,54,20,0,0, + 127,143,224,30,3,128,14,3,0,7,6,0,7,140,0,3, + 156,0,1,216,0,0,240,0,0,240,0,0,240,0,1,184, + 0,1,156,0,3,30,0,6,14,0,14,7,0,12,3,128, + 60,3,192,255,15,240,20,27,81,20,255,247,127,131,240,30, + 0,224,14,0,192,14,0,192,7,1,128,7,1,128,7,3, + 0,3,131,0,3,131,0,1,198,0,1,198,0,1,198,0, + 0,236,0,0,236,0,0,120,0,0,120,0,0,120,0,0, + 48,0,0,48,0,0,96,0,0,96,0,0,224,0,1,192, + 0,67,128,0,127,0,0,254,0,0,124,0,0,15,18,36, + 18,1,0,63,254,63,254,96,28,96,56,64,56,0,112,0, + 224,1,192,1,192,3,128,7,0,7,0,14,0,28,2,56, + 2,56,6,127,254,255,254,11,37,74,14,2,250,0,64,1, + 224,3,128,7,0,6,0,14,0,14,0,14,0,14,0,14, + 0,15,0,7,0,7,0,7,0,7,0,7,0,14,0,28, + 0,124,0,254,0,15,0,7,0,7,0,7,0,7,0,7, + 0,15,0,14,0,14,0,14,0,14,0,14,0,14,0,7, + 0,3,0,1,192,0,64,3,41,41,9,3,248,96,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,192,11,37,74,14,1,250,64,0,112,0, + 56,0,28,0,12,0,14,0,14,0,14,0,14,0,14,0, + 30,0,28,0,28,0,28,0,28,0,28,0,14,0,15,192, + 3,224,7,0,14,0,12,0,28,0,28,0,28,0,28,0, + 30,0,14,0,14,0,14,0,14,0,14,0,12,0,28,0, + 56,0,112,0,192,0,18,6,18,20,1,9,15,0,192,31, + 192,128,63,225,0,99,255,0,192,254,0,128,56,0,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,0, + 0,0,9,0,0,5,29,29,11,3,245,112,248,248,248,112, + 0,0,96,96,96,96,112,112,112,112,112,112,112,112,112,112, + 112,112,112,112,240,240,240,192,15,25,50,19,2,255,1,128, + 1,128,1,128,1,240,7,252,31,254,57,140,113,132,113,128, + 97,128,225,128,225,128,225,128,225,128,225,128,241,128,113,128, + 121,134,61,140,63,248,31,240,3,192,1,128,1,128,1,128, + 17,25,75,19,1,255,0,252,0,3,255,0,7,15,0,14, + 7,0,12,6,0,12,2,0,28,2,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,127,224,0,255,224,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,24, + 0,128,24,1,0,24,3,0,63,223,0,127,255,0,192,255, + 0,13,13,26,19,3,5,192,24,239,184,127,240,56,224,96, + 112,96,48,96,48,96,48,120,240,63,224,111,176,192,24,128, + 8,21,24,72,19,255,0,120,7,248,252,1,248,62,1,224, + 31,3,128,15,3,128,7,135,0,7,135,0,3,206,0,1, + 206,0,1,252,0,0,248,0,0,248,0,0,112,0,0,112, + 0,15,255,192,31,255,128,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,248,0,3,254,0,3, + 41,41,9,3,248,96,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,128,0,0,0,64,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,192,15,28, + 56,19,2,0,7,224,15,248,28,120,56,24,56,8,56,0, + 60,0,31,0,31,128,63,224,99,248,224,252,224,124,224,30, + 240,30,120,14,62,14,31,14,15,220,3,248,0,248,0,60, + 32,28,32,28,48,28,60,56,63,240,7,192,12,5,10,16, + 2,22,96,48,224,112,224,112,224,112,192,96,25,25,100,29, + 2,0,0,127,0,0,3,255,224,0,7,128,240,0,14,0, + 56,0,28,31,28,0,56,127,206,0,112,225,199,0,97,192, + 131,0,99,128,3,0,195,0,1,128,199,0,1,128,199,0, + 1,128,199,0,1,128,199,0,1,128,199,0,1,128,199,128, + 1,128,99,128,3,0,99,192,67,0,113,241,135,0,56,255, + 14,0,28,60,28,0,14,0,56,0,7,128,240,0,3,255, + 224,0,0,127,0,0,8,14,14,10,1,11,28,60,70,198, + 6,30,102,198,198,206,119,0,255,255,15,18,36,19,2,0, + 2,6,6,4,12,12,12,24,24,56,56,112,112,224,241,224, + 225,192,225,192,241,224,112,240,56,112,24,56,12,24,12,12, + 6,4,2,6,17,8,24,19,1,4,255,255,128,255,255,128, + 0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + 3,0,11,2,4,13,1,9,127,224,255,224,13,14,28,14, + 1,14,15,128,63,224,112,96,127,48,200,152,136,136,143,8, + 138,8,137,8,201,152,92,240,112,112,63,224,15,128,13,2, + 4,20,3,23,127,248,255,248,8,9,9,14,3,15,28,62, + 103,231,231,231,230,124,56,15,18,36,16,1,3,3,128,3, + 128,3,128,3,128,3,128,3,128,255,254,255,254,3,128,3, + 128,3,128,3,128,3,128,3,0,0,0,0,0,127,252,255, + 252,11,15,30,14,1,12,15,128,31,192,49,224,96,224,64, + 224,0,192,1,192,1,128,3,0,6,0,12,0,24,32,48, + 32,127,224,255,224,11,16,32,13,1,11,31,0,63,128,99, + 192,225,192,1,192,1,128,7,0,31,128,1,192,0,224,0, + 224,0,224,0,224,193,192,127,128,30,0,8,9,9,13,4, + 20,7,15,30,28,56,48,112,96,192,20,27,81,21,1,247, + 12,1,128,252,7,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,3,128,28,3, + 128,28,3,128,28,3,128,30,7,128,31,31,128,31,251,144, + 27,243,224,25,225,128,24,0,0,24,0,0,24,0,0,28, + 0,0,28,0,0,28,0,0,30,0,0,30,0,0,24,0, + 0,20,30,90,22,1,251,3,255,240,28,63,192,48,59,128, + 112,59,128,96,59,128,224,59,128,224,59,128,224,59,128,224, + 59,128,240,59,128,112,59,128,120,59,128,62,59,128,31,251, + 128,7,251,128,0,59,128,0,59,128,0,59,128,0,59,128, + 0,59,128,0,59,128,0,59,128,0,59,128,0,59,128,0, + 59,128,0,59,128,0,59,128,0,59,128,0,127,192,1,255, + 240,3,5,5,6,1,11,96,224,224,224,192,7,9,9,9, + 1,247,24,16,56,60,62,14,12,56,224,10,15,30,13,2, + 12,6,0,62,0,254,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,255,192,9, + 14,28,11,1,11,30,0,63,0,103,0,67,128,193,128,193, + 128,193,128,193,128,225,0,115,0,126,0,60,0,255,128,255, + 128,15,18,36,19,3,0,129,0,193,128,96,192,112,96,48, + 112,56,48,28,56,30,28,15,30,15,30,30,28,28,56,56, + 56,48,112,112,224,96,192,193,128,129,0,19,24,72,23,2, + 0,12,0,192,252,1,224,28,1,128,28,3,128,28,3,0, + 28,6,0,28,14,0,28,12,0,28,24,0,28,56,0,28, + 48,0,255,224,0,0,224,0,0,192,192,1,193,192,1,130, + 192,3,2,192,7,4,192,6,8,192,12,16,192,28,31,224, + 24,63,224,48,0,192,112,3,224,20,24,72,24,2,0,12, + 0,96,252,0,192,28,0,192,28,1,128,28,3,0,28,3, + 0,28,6,0,28,14,0,28,12,0,28,24,0,28,56,0, + 255,176,0,0,97,224,0,99,240,0,196,112,1,204,112,1, + 128,96,3,0,224,7,0,192,6,1,128,12,3,32,28,6, + 16,24,15,240,48,31,240,20,25,75,23,1,0,30,0,0, + 63,0,48,103,128,96,195,128,224,3,0,192,6,1,128,31, + 129,128,3,195,0,0,231,0,0,230,0,97,204,0,63,220, + 0,15,24,0,0,48,0,0,48,96,0,96,224,0,225,96, + 0,195,96,1,130,96,3,132,96,3,12,112,6,31,240,14, + 0,96,12,0,96,24,1,240,14,29,58,18,2,245,3,128, + 7,192,7,192,7,192,3,128,0,0,0,0,3,128,3,128, + 3,128,3,128,3,128,7,0,7,0,14,0,28,0,60,0, + 56,0,112,0,112,0,224,0,224,12,224,28,224,28,224,28, + 240,56,120,112,63,224,31,128,23,34,102,24,0,0,3,0, + 0,7,128,0,7,224,0,1,240,0,0,120,0,0,60,0, + 0,14,0,0,2,0,0,0,0,0,8,0,0,56,0,0, + 60,0,0,60,0,0,108,0,0,110,0,0,110,0,0,198, + 0,0,199,0,0,199,0,1,131,0,1,131,128,1,131,128, + 3,1,128,3,255,192,3,255,192,6,0,224,6,0,224,6, + 0,224,12,0,112,12,0,112,12,0,112,24,0,56,28,0, + 120,255,1,254,23,34,102,24,0,0,0,1,128,0,3,192, + 0,7,192,0,15,0,0,30,0,0,56,0,0,96,0,0, + 192,0,0,0,0,0,8,0,0,56,0,0,60,0,0,60, + 0,0,108,0,0,110,0,0,110,0,0,198,0,0,199,0, + 0,199,0,1,131,0,1,131,128,1,131,128,3,1,128,3, + 255,192,3,255,192,6,0,224,6,0,224,6,0,224,12,0, + 112,12,0,112,12,0,112,24,0,56,28,0,120,255,1,254, + 23,33,99,24,0,0,0,56,0,0,124,0,0,254,0,1, + 231,0,1,131,128,3,1,192,6,0,128,0,0,0,0,8, + 0,0,56,0,0,60,0,0,60,0,0,108,0,0,110,0, + 0,110,0,0,198,0,0,199,0,0,199,0,1,131,0,1, + 131,128,1,131,128,3,1,128,3,255,192,3,255,192,6,0, + 224,6,0,224,6,0,224,12,0,112,12,0,112,12,0,112, + 24,0,56,28,0,120,255,1,254,23,32,96,24,0,0,0, + 224,64,1,248,192,3,253,128,6,31,0,4,6,0,0,0, + 0,0,0,0,0,8,0,0,56,0,0,60,0,0,60,0, + 0,108,0,0,110,0,0,110,0,0,198,0,0,199,0,0, + 199,0,1,131,0,1,131,128,1,131,128,3,1,128,3,255, + 192,3,255,192,6,0,224,6,0,224,6,0,224,12,0,112, + 12,0,112,12,0,112,24,0,56,28,0,120,255,1,254,23, + 31,93,24,0,0,3,129,192,3,129,192,3,129,192,3,1, + 128,3,1,128,0,0,0,0,8,0,0,56,0,0,60,0, + 0,60,0,0,108,0,0,110,0,0,110,0,0,198,0,0, + 199,0,0,199,0,1,131,0,1,131,128,1,131,128,3,1, + 128,3,255,192,3,255,192,6,0,224,6,0,224,6,0,224, + 12,0,112,12,0,112,12,0,112,24,0,56,28,0,120,255, + 1,254,23,34,102,24,0,0,0,62,0,0,126,0,0,199, + 0,0,195,0,0,195,0,0,230,0,0,252,0,0,48,0, + 0,0,0,0,8,0,0,56,0,0,60,0,0,60,0,0, + 108,0,0,110,0,0,110,0,0,198,0,0,199,0,0,199, + 0,1,131,0,1,131,128,1,131,128,3,1,128,3,255,192, + 3,255,192,6,0,224,6,0,224,6,0,224,12,0,112,12, + 0,112,12,0,112,24,0,56,28,0,120,255,1,254,30,25, + 100,31,0,0,1,255,255,240,0,63,255,240,0,25,192,48, + 0,25,192,16,0,57,192,16,0,49,192,0,0,113,192,0, + 0,97,192,0,0,97,192,0,0,225,192,0,0,255,255,192, + 1,255,255,192,1,193,192,128,1,129,192,0,3,129,192,0, + 3,1,192,0,7,1,192,0,7,1,192,0,6,1,192,0, + 14,1,192,0,12,1,192,4,28,1,192,12,28,1,192,24, + 60,3,255,248,255,15,255,248,18,34,102,21,1,247,0,126, + 0,3,255,192,7,7,192,14,1,128,28,0,0,56,0,0, + 48,0,0,112,0,0,112,0,0,96,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,240,0,0,112,0,0,120,0,0,56,0,64,60,0,192, + 30,3,128,15,254,0,7,252,0,1,240,0,0,64,0,0, + 96,0,0,240,0,0,120,0,0,56,0,0,48,0,0,224, + 0,3,128,0,18,34,102,20,1,0,12,0,0,62,0,0, + 63,0,0,15,128,0,3,192,0,0,224,0,0,112,0,0, + 16,0,0,0,0,255,255,0,63,255,0,28,3,0,28,1, + 0,28,1,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,31,252,0,31,252,0,28,8,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,64,28,0,192,28,1,128,63,255,128,255,255,128, + 18,34,102,20,1,0,0,12,0,0,30,0,0,62,0,0, + 120,0,0,240,0,1,192,0,3,0,0,6,0,0,0,0, + 0,255,255,0,63,255,0,28,3,0,28,1,0,28,1,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,31, + 252,0,31,252,0,28,8,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,64, + 28,0,192,28,1,128,63,255,128,255,255,128,18,33,99,20, + 1,0,1,192,0,3,224,0,7,240,0,7,56,0,12,28, + 0,24,14,0,16,2,0,0,0,0,255,255,0,63,255,0, + 28,3,0,28,1,0,28,1,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,31,252,0,31,252,0,28,8, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,64,28,0,192,28,1,128,63, + 255,128,255,255,128,18,31,93,20,1,0,28,14,0,28,14, + 0,28,14,0,28,14,0,24,12,0,0,0,0,255,255,0, + 63,255,0,28,3,0,28,1,0,28,1,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,31,252,0,31,252, + 0,28,8,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,64,28,0,192,28, + 1,128,63,255,128,255,255,128,11,34,68,12,255,0,96,0, + 248,0,252,0,62,0,15,0,3,128,1,192,0,64,0,0, + 63,224,15,128,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,15,128, + 63,224,11,34,68,12,1,0,0,192,1,224,3,224,7,128, + 15,0,28,0,48,0,96,0,0,0,255,128,62,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,62,0,255,128,12,33,66,12, + 0,0,14,0,31,0,63,128,57,192,96,224,192,112,128,32, + 0,0,127,192,31,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 31,0,127,192,12,31,62,12,0,0,224,112,224,112,224,112, + 224,112,192,96,0,0,127,192,31,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,31,0,127,192,21,25,75,24,1,0,31,248, + 0,255,255,0,28,15,128,28,3,192,28,1,224,28,0,240, + 28,0,112,28,0,112,28,0,120,28,0,56,28,0,56,255, + 240,56,255,224,56,28,0,56,28,0,56,28,0,56,28,0, + 112,28,0,112,28,0,112,28,0,224,28,1,224,28,3,192, + 28,15,128,63,254,0,255,248,0,24,32,96,26,1,0,0, + 240,64,1,248,96,3,252,192,2,31,128,6,6,0,0,0, + 0,0,0,0,248,1,255,60,0,124,30,0,56,30,0,56, + 31,0,56,31,128,56,29,128,56,29,192,56,28,224,56,28, + 96,56,28,112,56,28,56,56,28,28,56,28,28,56,28,14, + 56,28,7,56,28,7,56,28,3,184,28,3,248,28,1,248, + 28,0,248,28,0,248,28,0,120,62,0,56,255,128,24,21, + 34,102,24,1,0,3,0,0,7,128,0,15,192,0,3,224, + 0,0,240,0,0,56,0,0,28,0,0,4,0,0,0,0, + 0,252,0,3,255,0,7,7,128,12,3,192,24,1,224,56, + 0,224,112,0,112,112,0,112,96,0,120,224,0,56,224,0, + 56,224,0,56,224,0,56,224,0,56,224,0,56,224,0,56, + 240,0,48,112,0,112,112,0,96,120,0,224,60,0,192,30, + 1,128,15,7,0,7,254,0,1,248,0,21,34,102,24,1, + 0,0,3,0,0,7,128,0,15,192,0,31,0,0,60,0, + 0,112,0,0,224,0,0,128,0,0,0,0,0,252,0,3, + 255,0,7,7,128,12,3,192,24,1,224,56,0,224,112,0, + 112,112,0,112,96,0,120,224,0,56,224,0,56,224,0,56, + 224,0,56,224,0,56,224,0,56,224,0,56,240,0,48,112, + 0,112,112,0,96,120,0,224,60,0,192,30,1,128,15,7, + 0,7,254,0,1,248,0,21,33,99,24,1,0,0,120,0, + 0,252,0,0,252,0,1,206,0,3,135,0,6,1,128,4, + 0,128,0,0,0,0,252,0,3,255,0,7,7,128,12,3, + 192,24,1,224,56,0,224,112,0,112,112,0,112,96,0,120, + 224,0,56,224,0,56,224,0,56,224,0,56,224,0,56,224, + 0,56,224,0,56,240,0,48,112,0,112,112,0,96,120,0, + 224,60,0,192,30,1,128,15,7,0,7,254,0,1,248,0, + 21,32,96,24,1,0,1,224,128,3,240,192,7,249,128,6, + 63,0,12,12,0,0,0,0,0,0,0,0,252,0,3,255, + 0,7,7,128,12,3,192,24,1,224,56,0,224,112,0,112, + 112,0,112,96,0,120,224,0,56,224,0,56,224,0,56,224, + 0,56,224,0,56,224,0,56,224,0,56,240,0,48,112,0, + 112,112,0,96,120,0,224,60,0,192,30,1,128,15,7,0, + 7,254,0,1,248,0,21,31,93,24,1,0,3,1,128,7, + 3,128,7,3,128,7,3,128,2,1,0,0,0,0,0,252, + 0,3,255,0,7,7,128,12,3,192,24,1,224,56,0,224, + 112,0,112,112,0,112,96,0,120,224,0,56,224,0,56,224, + 0,56,224,0,56,224,0,56,224,0,56,224,0,56,240,0, + 48,112,0,112,112,0,96,120,0,224,60,0,192,30,1,128, + 15,7,0,7,254,0,1,248,0,13,12,24,16,2,5,192, + 48,224,120,112,224,57,192,31,128,15,0,15,0,31,128,57, + 192,112,224,224,112,192,56,21,26,78,24,1,255,0,252,56, + 3,255,112,7,7,224,12,3,224,24,1,224,56,3,240,48, + 7,240,112,7,112,96,14,120,224,28,56,224,28,56,224,56, + 56,224,112,56,224,112,56,224,224,56,225,192,56,243,128,48, + 115,128,112,119,0,96,126,0,224,60,0,192,62,1,128,63, + 7,0,119,254,0,225,248,0,128,0,0,24,34,102,26,1, + 0,1,128,0,3,192,0,3,224,0,0,240,0,0,120,0, + 0,28,0,0,6,0,0,3,0,0,0,0,255,129,255,62, + 0,124,28,0,56,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28, + 0,56,28,0,112,14,0,112,14,0,112,15,0,224,7,193, + 192,3,255,128,0,126,0,24,34,102,26,1,0,0,1,128, + 0,3,224,0,7,224,0,15,128,0,30,0,0,56,0,0, + 112,0,0,64,0,0,0,0,255,129,255,62,0,124,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28, + 0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0, + 112,14,0,112,14,0,112,15,0,224,7,193,192,3,255,128, + 0,126,0,24,33,99,26,1,0,0,28,0,0,62,0,0, + 127,0,0,231,0,1,193,128,3,128,192,2,0,64,0,0, + 0,255,129,255,62,0,124,28,0,56,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28, + 0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,112,14,0,112,14,0,112, + 15,0,224,7,193,192,3,255,128,0,126,0,24,31,93,26, + 1,0,1,128,192,3,129,192,3,129,192,3,129,192,1,0, + 128,0,0,0,255,129,255,62,0,124,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28, + 0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,112,14,0,112, + 14,0,112,15,0,224,7,193,192,3,255,128,0,126,0,23, + 34,102,24,0,0,0,1,128,0,3,192,0,7,192,0,15, + 0,0,30,0,0,56,0,0,96,0,0,192,0,0,0,0, + 248,1,254,60,0,120,30,0,96,14,0,224,7,0,192,7, + 129,192,3,129,128,3,195,128,1,195,0,0,231,0,0,238, + 0,0,126,0,0,124,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,124,0,1,255,0,18,25,75,21,1, + 0,255,128,0,60,0,0,28,0,0,28,0,0,31,248,0, + 31,254,0,28,31,0,28,7,128,28,3,128,28,3,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,3, + 128,28,7,128,28,15,0,29,254,0,28,248,0,28,0,0, + 28,0,0,28,0,0,62,0,0,255,128,0,20,30,90,23, + 1,0,0,124,0,1,255,0,3,15,128,6,3,128,14,3, + 192,12,1,192,12,1,192,28,1,192,28,1,192,28,3,128, + 28,7,128,28,31,0,28,120,0,28,240,0,28,224,0,28, + 224,0,28,240,0,28,124,0,28,63,0,28,31,192,28,7, + 224,28,1,224,28,0,240,28,0,112,28,128,112,28,128,112, + 28,192,96,28,224,224,60,255,192,252,63,0,16,29,58,18, + 2,0,56,0,60,0,28,0,14,0,14,0,7,0,3,128, + 1,128,0,192,0,0,0,0,3,224,31,240,56,120,112,56, + 240,56,192,56,0,56,0,120,7,248,28,56,112,56,96,56, + 224,56,224,56,224,120,241,185,127,63,60,24,16,29,58,18, + 2,0,0,56,0,120,0,112,0,224,0,192,1,192,3,128, + 3,0,6,0,0,0,0,0,3,224,31,240,56,120,112,56, + 240,56,192,56,0,56,0,120,7,248,28,56,112,56,96,56, + 224,56,224,56,224,120,241,185,127,63,60,24,16,29,58,18, + 2,0,3,128,7,128,7,192,15,224,30,224,28,112,56,56, + 48,24,96,12,0,0,0,0,3,224,31,240,56,120,112,56, + 240,56,192,56,0,56,0,120,7,248,28,56,112,56,96,56, + 224,56,224,56,224,120,241,185,127,63,60,24,16,27,54,18, + 2,0,14,4,31,12,63,152,99,240,64,224,0,0,0,0, + 0,0,0,0,3,224,31,240,56,120,112,56,240,56,192,56, + 0,56,0,120,7,248,28,56,112,56,96,56,224,56,224,56, + 224,120,241,185,127,63,60,24,16,27,54,18,2,0,48,24, + 48,24,112,56,112,56,48,24,0,0,0,0,0,0,0,0, + 3,224,31,240,56,120,112,56,240,56,192,56,0,56,0,120, + 7,248,28,56,112,56,96,56,224,56,224,56,224,120,241,185, + 127,63,60,24,16,28,56,18,2,0,3,192,7,224,12,96, + 12,96,24,96,12,96,15,192,7,128,0,0,0,0,3,224, + 31,240,56,120,112,56,240,56,192,56,0,56,0,120,7,248, + 28,56,112,56,96,56,224,56,224,56,224,120,241,185,127,63, + 60,24,24,18,54,28,2,0,3,225,240,15,243,252,56,119, + 30,112,60,14,224,60,7,240,56,7,192,56,7,1,255,255, + 15,255,254,30,56,0,120,56,0,112,56,0,224,56,0,224, + 60,2,224,92,3,241,159,14,127,15,248,60,3,224,15,27, + 54,17,2,247,1,248,7,254,28,28,56,12,48,4,112,0, + 96,0,224,0,224,0,224,0,224,0,224,0,224,0,240,0, + 112,8,120,24,63,240,31,224,15,128,2,0,2,0,3,128, + 7,192,1,192,1,128,7,0,28,0,14,29,58,18,2,0, + 28,0,60,0,30,0,14,0,7,0,3,128,1,128,0,192, + 0,64,0,0,0,0,3,192,15,240,28,120,48,56,112,28, + 96,28,224,28,255,252,255,248,224,0,224,0,224,0,240,0, + 112,4,120,12,60,56,31,240,7,192,14,29,58,18,2,0, + 0,56,0,60,0,120,0,112,0,224,0,192,1,128,1,0, + 3,0,0,0,0,0,3,192,15,240,28,120,48,56,112,28, + 96,28,224,28,255,252,255,248,224,0,224,0,224,0,240,0, + 112,4,120,12,60,56,31,240,7,192,14,29,58,18,2,0, + 1,128,3,192,7,224,7,224,14,112,28,56,24,24,48,12, + 32,4,0,0,0,0,3,192,15,240,28,120,48,56,112,28, + 96,28,224,28,255,252,255,248,224,0,224,0,224,0,240,0, + 112,4,120,12,60,56,31,240,7,192,14,27,54,18,2,0, + 24,12,56,28,56,28,56,28,48,24,0,0,0,0,0,0, + 0,0,3,192,15,240,28,120,48,56,112,28,96,28,224,28, + 255,252,255,248,224,0,224,0,224,0,240,0,112,4,120,12, + 60,56,31,240,7,192,10,29,58,11,0,0,224,0,240,0, + 120,0,56,0,28,0,12,0,14,0,6,0,3,0,0,0, + 0,0,6,0,126,0,30,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,30,0,127,192,10,29,58,11,1,0,1,192,3,192, + 3,128,7,128,7,0,14,0,12,0,24,0,16,0,0,0, + 0,0,12,0,252,0,60,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,60,0,255,128,13,29,58,11,255,0,7,0,7,128, + 15,128,31,192,29,192,56,224,112,112,96,48,192,24,0,0, + 0,0,3,0,63,0,15,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,15,0,63,224,12,27,54,11,0,0,192,96,224,112, + 224,112,192,96,192,96,0,0,0,0,0,0,0,0,6,0, + 126,0,30,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,30,0, + 127,192,16,28,56,20,2,0,6,0,63,6,7,159,1,248, + 3,224,15,112,28,56,0,28,0,28,0,14,3,206,15,254, + 28,127,48,31,112,15,96,15,224,7,224,7,224,7,224,7, + 224,6,224,6,240,14,112,12,120,28,60,56,31,240,7,192, + 21,27,81,22,1,0,1,192,128,7,225,0,7,243,0,12, + 126,0,8,28,0,0,0,0,0,0,0,0,0,0,0,0, + 0,12,15,0,252,63,128,60,99,192,29,129,192,29,1,192, + 30,1,192,30,1,192,28,1,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,62,3,192,255,143,248,16,29,58,20,2,0,28,0,30, + 0,14,0,7,0,3,128,3,128,1,192,0,192,0,96,0, + 0,0,0,3,224,15,248,28,60,48,30,112,14,96,15,224, + 7,224,7,224,7,224,7,224,7,224,7,240,6,112,14,120, + 12,62,56,31,240,7,192,16,29,58,20,2,0,0,28,0, + 60,0,56,0,112,0,112,0,224,0,192,1,128,3,0,0, + 0,0,0,3,224,15,248,28,60,48,30,112,14,96,15,224, + 7,224,7,224,7,224,7,224,7,224,7,240,6,112,14,120, + 12,62,56,31,240,7,192,16,29,58,20,2,0,1,192,3, + 192,3,224,7,240,7,112,14,56,28,28,24,12,48,6,0, + 0,0,0,3,224,15,248,28,60,48,30,112,14,96,15,224, + 7,224,7,224,7,224,7,224,7,224,7,240,6,112,14,120, + 12,62,56,31,240,7,192,16,27,54,20,2,0,7,2,15, + 134,31,204,49,248,32,112,0,0,0,0,0,0,0,0,3, + 224,15,248,28,60,48,30,112,14,96,15,224,7,224,7,224, + 7,224,7,224,7,224,7,240,6,112,14,120,12,62,56,31, + 240,7,192,16,27,54,20,2,0,24,12,24,12,28,14,24, + 12,24,12,0,0,0,0,0,0,0,0,3,224,15,248,28, + 60,48,30,112,14,96,15,224,7,224,7,224,7,224,7,224, + 7,224,7,240,6,112,14,120,12,62,56,31,240,7,192,14, + 14,28,16,1,4,1,128,3,128,3,128,3,0,0,0,0, + 0,127,252,255,252,0,0,0,0,1,128,3,128,3,128,3, + 0,16,20,40,20,2,255,0,1,3,227,15,254,28,60,48, + 30,112,30,96,63,224,103,224,199,224,135,225,135,227,7,230, + 7,252,6,120,14,120,12,60,56,127,240,199,192,128,0,21, + 29,87,21,0,0,7,0,0,7,128,0,3,192,0,1,192, + 0,0,224,0,0,96,0,0,48,0,0,48,0,0,24,0, + 0,0,0,0,0,0,12,0,192,252,15,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,192,28,1,192,28,1,192,28,1,192,28,3,192, + 28,7,192,30,29,200,15,241,240,7,192,192,21,29,87,21, + 0,0,0,7,0,0,15,128,0,14,0,0,30,0,0,28, + 0,0,56,0,0,48,0,0,96,0,0,64,0,0,0,0, + 0,0,0,12,0,192,252,15,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,192,28,1,192,28,1,192,28,3,192,28,7,192, + 30,29,200,15,241,240,7,192,192,21,29,87,21,0,0,0, + 112,0,0,120,0,0,248,0,1,252,0,1,222,0,3,142, + 0,7,7,0,6,3,0,12,1,128,0,0,0,0,0,0, + 12,0,192,252,15,192,28,1,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,192,28,1,192,28,3,192,28,7,192,30,29,200, + 15,241,240,7,192,192,21,27,81,21,0,0,6,3,0,7, + 3,128,7,3,128,6,3,0,6,3,0,0,0,0,0,0, + 0,0,0,0,0,0,0,12,0,192,252,15,192,28,1,192, + 28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,3, + 192,28,7,192,30,29,200,15,241,240,7,192,192,20,38,114, + 20,255,247,0,3,128,0,7,128,0,7,0,0,14,0,0, + 12,0,0,28,0,0,56,0,0,48,0,0,96,0,0,0, + 0,0,0,0,127,131,240,30,0,224,14,0,192,14,0,192, + 7,1,128,7,1,128,7,3,0,3,131,0,3,131,0,1, + 198,0,1,198,0,1,198,0,0,236,0,0,236,0,0,120, + 0,0,120,0,0,120,0,0,48,0,0,48,0,0,96,0, + 0,96,0,0,224,0,1,192,0,67,128,0,127,0,0,254, + 0,0,124,0,0,18,39,117,21,1,247,12,0,0,252,0, + 0,60,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 60,0,28,255,0,29,143,0,31,7,128,30,3,128,28,3, + 192,28,1,192,28,1,192,28,1,192,28,1,192,28,1,192, + 28,1,128,28,1,128,28,3,128,30,3,0,31,134,0,31, + 252,0,28,240,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,62,0,0,255,128,0, + 20,36,108,20,255,247,3,1,128,3,1,128,7,3,128,7, + 3,128,3,1,128,0,0,0,0,0,0,0,0,0,0,0, + 0,127,131,240,30,0,224,14,0,192,14,0,192,7,1,128, + 7,1,128,7,3,0,3,131,0,3,131,0,1,198,0,1, + 198,0,1,198,0,0,236,0,0,236,0,0,120,0,0,120, + 0,0,120,0,0,48,0,0,48,0,0,96,0,0,96,0, + 0,224,0,1,192,0,67,128,0,127,0,0,254,0,0,124, + 0,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--40-400-72-72-P-182-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 24 + Calculated Max Values w=17 h=38 x= 3 y=14 dx=19 dy= 0 ascent=31 len=114 + Font Bounding box w=59 h=57 x=-20 y=-14 + Calculated Min Values x= 0 y=-7 dx= 0 dy= 0 + Pure Font ascent =24 descent= 0 + X Font ascent =24 descent= 0 + Max Font ascent =31 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr25n[810] U8G_SECTION(".progmem.u8g_font_gdr25n") = { + 0,59,57,236,242,24,0,0,0,0,42,57,0,31,249,24, + 0,16,16,32,18,1,14,1,128,1,128,1,128,97,132,113, + 142,121,159,31,248,7,192,3,192,31,248,121,158,241,142,33, + 134,1,128,1,128,1,128,15,14,28,16,1,4,3,128,3, + 128,3,128,3,128,3,128,3,128,255,254,255,254,3,128,3, + 128,3,128,3,128,3,128,3,128,6,10,10,9,2,250,60, + 252,60,28,28,24,24,48,32,64,11,2,4,13,1,9,127, + 224,255,224,5,5,5,9,2,255,112,248,248,248,112,17,38, + 114,19,1,249,0,1,128,0,7,0,0,7,0,0,7,0, + 0,14,0,0,14,0,0,14,0,0,28,0,0,28,0,0, + 56,0,0,56,0,0,56,0,0,112,0,0,112,0,0,112, + 0,0,224,0,0,224,0,1,192,0,1,192,0,1,192,0, + 3,128,0,3,128,0,3,128,0,7,0,0,7,0,0,14, + 0,0,14,0,0,14,0,0,28,0,0,28,0,0,28,0, + 0,56,0,0,56,0,0,112,0,0,112,0,0,112,0,0, + 224,0,0,192,0,0,17,24,72,19,1,0,3,224,0,15, + 248,0,28,60,0,56,30,0,48,14,0,112,7,0,96,7, + 0,96,7,128,224,3,128,224,3,128,224,3,128,224,3,128, + 224,3,128,224,3,128,224,3,128,224,3,128,240,3,0,112, + 7,0,112,7,0,120,6,0,60,14,0,30,28,0,15,248, + 0,7,224,0,14,24,48,19,3,0,1,128,7,128,63,128, + 255,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,15,224,127,252,14,24,48,19,2,0, + 3,224,15,248,24,120,48,60,112,28,96,28,224,28,0,28, + 0,24,0,56,0,48,0,112,0,224,1,192,1,128,3,128, + 7,0,14,0,28,0,24,4,48,4,112,12,255,252,255,252, + 15,24,48,19,1,0,3,224,15,248,28,120,56,60,112,28, + 112,28,0,28,0,24,0,48,0,96,3,224,3,248,0,60, + 0,28,0,14,0,14,0,14,0,14,0,14,0,28,64,28, + 240,120,63,240,15,192,16,24,48,19,1,0,0,24,0,120, + 0,120,0,248,1,248,1,184,3,56,7,56,6,56,12,56, + 28,56,24,56,48,56,112,56,96,56,255,255,255,254,0,56, + 0,56,0,56,0,56,0,56,0,124,3,255,15,24,48,19, + 1,0,0,4,31,252,31,248,24,0,24,0,24,0,48,0, + 48,0,48,0,63,224,63,248,48,124,64,28,0,30,0,14, + 0,14,0,14,0,14,0,14,0,28,64,28,240,120,63,240, + 15,192,15,24,48,19,2,0,0,56,0,240,3,192,7,0, + 14,0,28,0,56,0,112,0,112,0,99,224,239,248,248,60, + 240,28,224,30,224,14,224,14,224,14,224,14,112,14,112,12, + 56,28,60,56,31,240,7,192,15,23,46,19,2,0,127,254, + 255,254,192,12,192,12,128,28,0,24,0,56,0,48,0,112, + 0,96,0,96,0,224,0,192,1,192,1,128,3,128,3,0, + 7,0,7,0,14,0,14,0,28,0,56,0,15,24,48,19, + 2,0,15,192,63,240,120,120,112,60,240,28,224,28,224,28, + 240,24,120,48,62,96,31,192,7,240,24,120,48,60,112,30, + 96,14,224,14,224,14,224,14,224,12,112,28,124,56,63,240, + 15,192,15,25,50,19,2,255,7,192,15,240,56,120,48,60, + 112,28,96,28,224,14,224,14,224,14,224,14,240,14,112,30, + 120,62,63,238,15,140,0,28,0,28,0,24,0,56,0,112, + 0,224,1,192,7,128,30,0,48,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--40-400-72-72-P-182-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=33 h=41 x= 3 y=20 dx=34 dy= 0 ascent=33 len=132 + Font Bounding box w=59 h=57 x=-20 y=-14 + Calculated Min Values x=-4 y=-9 dx= 0 dy= 0 + Pure Font ascent =25 descent=-9 + X Font ascent =31 descent=-9 + Max Font ascent =33 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr25r[6239] U8G_SECTION(".progmem.u8g_font_gdr25r") = { + 0,59,57,236,242,25,6,209,16,163,32,127,247,33,247,31, + 247,0,0,0,9,0,0,5,30,30,11,3,255,48,112,240, + 112,112,112,112,112,112,112,112,112,112,112,112,112,112,112,112, + 96,96,96,0,0,0,112,248,248,248,112,11,13,26,17,3, + 16,112,224,241,224,241,224,241,224,241,224,112,224,96,192,96, + 192,96,192,96,192,96,192,96,192,96,192,17,23,69,19,2, + 2,0,194,0,1,134,0,1,134,0,1,142,0,3,140,0, + 3,12,0,3,12,0,63,255,128,63,255,128,6,24,0,6, + 56,0,14,48,0,12,48,0,12,48,0,255,254,0,255,254, + 0,24,96,0,24,224,0,48,192,0,48,192,0,48,192,0, + 113,192,0,97,128,0,16,30,60,19,1,253,1,128,1,128, + 1,128,3,224,15,252,57,254,49,156,113,136,113,128,113,128, + 121,128,61,128,63,128,31,224,7,248,1,252,1,190,1,143, + 1,143,1,135,193,135,193,135,225,142,241,142,255,252,63,240, + 15,192,1,128,1,128,1,128,25,25,100,27,1,255,15,128, + 6,0,63,192,28,0,113,224,56,0,112,224,56,0,224,112, + 112,0,224,112,224,0,224,112,224,0,224,113,192,0,224,115, + 128,0,112,231,0,0,120,231,0,0,63,206,60,0,31,28, + 254,0,0,29,207,0,0,57,199,0,0,115,131,128,0,227, + 131,128,0,227,131,128,1,195,131,128,3,131,131,128,3,131, + 131,128,7,1,199,0,14,1,199,0,28,0,254,0,24,0, + 120,0,24,28,84,27,2,0,0,248,0,1,252,0,3,30, + 0,7,14,0,14,14,0,14,14,0,14,14,0,14,12,0, + 14,28,0,15,56,0,7,112,0,7,192,0,7,131,255,15, + 135,255,29,193,242,57,224,240,112,240,112,112,112,112,224,120, + 112,224,60,112,224,30,224,224,15,224,224,7,192,240,3,192, + 120,3,240,60,30,248,31,252,127,7,224,56,4,13,13,10, + 3,16,112,240,240,240,240,112,96,96,96,96,96,96,96,9, + 37,74,13,3,250,0,128,3,128,7,0,14,0,12,0,28, + 0,24,0,56,0,56,0,112,0,112,0,112,0,112,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,112,0,112,0,112,0,112,0,56, + 0,56,0,28,0,28,0,14,0,7,0,3,128,0,128,9, + 37,74,13,1,250,128,0,224,0,112,0,56,0,28,0,28, + 0,14,0,14,0,14,0,7,0,7,0,7,0,7,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,3,128,7,0,7,0,7,0,7,0,14,0,14, + 0,12,0,28,0,24,0,56,0,112,0,224,0,128,0,16, + 16,32,18,1,14,1,128,1,128,1,128,97,132,113,142,121, + 159,31,248,7,192,3,192,31,248,121,158,241,142,33,134,1, + 128,1,128,1,128,15,14,28,16,1,4,3,128,3,128,3, + 128,3,128,3,128,3,128,255,254,255,254,3,128,3,128,3, + 128,3,128,3,128,3,128,6,10,10,9,2,250,60,252,60, + 28,28,24,24,48,32,64,11,2,4,13,1,9,127,224,255, + 224,5,5,5,9,2,255,112,248,248,248,112,17,38,114,19, + 1,249,0,1,128,0,7,0,0,7,0,0,7,0,0,14, + 0,0,14,0,0,14,0,0,28,0,0,28,0,0,56,0, + 0,56,0,0,56,0,0,112,0,0,112,0,0,112,0,0, + 224,0,0,224,0,1,192,0,1,192,0,1,192,0,3,128, + 0,3,128,0,3,128,0,7,0,0,7,0,0,14,0,0, + 14,0,0,14,0,0,28,0,0,28,0,0,28,0,0,56, + 0,0,56,0,0,112,0,0,112,0,0,112,0,0,224,0, + 0,192,0,0,17,24,72,19,1,0,3,224,0,15,248,0, + 28,60,0,56,30,0,48,14,0,112,7,0,96,7,0,96, + 7,128,224,3,128,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,224,3,128,224,3,128,240,3,0,112,7,0, + 112,7,0,120,6,0,60,14,0,30,28,0,15,248,0,7, + 224,0,14,24,48,19,3,0,1,128,7,128,63,128,255,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,15,224,127,252,14,24,48,19,2,0,3,224, + 15,248,24,120,48,60,112,28,96,28,224,28,0,28,0,24, + 0,56,0,48,0,112,0,224,1,192,1,128,3,128,7,0, + 14,0,28,0,24,4,48,4,112,12,255,252,255,252,15,24, + 48,19,1,0,3,224,15,248,28,120,56,60,112,28,112,28, + 0,28,0,24,0,48,0,96,3,224,3,248,0,60,0,28, + 0,14,0,14,0,14,0,14,0,14,0,28,64,28,240,120, + 63,240,15,192,16,24,48,19,1,0,0,24,0,120,0,120, + 0,248,1,248,1,184,3,56,7,56,6,56,12,56,28,56, + 24,56,48,56,112,56,96,56,255,255,255,254,0,56,0,56, + 0,56,0,56,0,56,0,124,3,255,15,24,48,19,1,0, + 0,4,31,252,31,248,24,0,24,0,24,0,48,0,48,0, + 48,0,63,224,63,248,48,124,64,28,0,30,0,14,0,14, + 0,14,0,14,0,14,0,28,64,28,240,120,63,240,15,192, + 15,24,48,19,2,0,0,56,0,240,3,192,7,0,14,0, + 28,0,56,0,112,0,112,0,99,224,239,248,248,60,240,28, + 224,30,224,14,224,14,224,14,224,14,112,14,112,12,56,28, + 60,56,31,240,7,192,15,23,46,19,2,0,127,254,255,254, + 192,12,192,12,128,28,0,24,0,56,0,48,0,112,0,96, + 0,96,0,224,0,192,1,192,1,128,3,128,3,0,7,0, + 7,0,14,0,14,0,28,0,56,0,15,24,48,19,2,0, + 15,192,63,240,120,120,112,60,240,28,224,28,224,28,240,24, + 120,48,62,96,31,192,7,240,24,120,48,60,112,30,96,14, + 224,14,224,14,224,14,224,12,112,28,124,56,63,240,15,192, + 15,25,50,19,2,255,7,192,15,240,56,120,48,60,112,28, + 96,28,224,14,224,14,224,14,224,14,240,14,112,30,120,62, + 63,238,15,140,0,28,0,28,0,24,0,56,0,112,0,224, + 1,192,7,128,30,0,48,0,5,19,19,9,2,255,120,248, + 248,248,96,0,0,0,0,0,0,0,0,0,112,248,248,248, + 112,6,24,24,9,2,250,120,248,248,248,96,0,0,0,0, + 0,0,0,0,0,60,252,60,28,28,24,24,48,32,64,15, + 13,26,18,1,5,0,2,0,30,0,254,3,240,31,192,126, + 0,240,0,252,0,63,128,7,224,1,252,0,62,0,12,15, + 8,16,18,1,7,127,254,255,254,0,0,0,0,0,0,0, + 0,127,254,255,254,15,13,26,18,1,5,96,0,252,0,63, + 0,15,224,1,252,0,126,0,30,0,126,3,240,31,192,126, + 0,248,0,192,0,14,30,60,17,2,255,7,224,31,240,56, + 120,112,56,224,28,224,28,224,28,192,28,0,28,0,56,0, + 56,0,112,0,240,0,224,1,192,3,128,3,128,7,0,7, + 0,7,0,7,0,7,0,0,0,0,0,0,0,7,0,15, + 128,15,128,15,128,7,0,30,33,132,32,1,249,0,7,248, + 0,0,63,254,0,0,240,31,128,1,192,7,192,3,0,1, + 224,6,0,0,240,12,0,0,112,24,0,0,120,56,3,198, + 56,48,15,252,56,112,28,60,60,112,56,28,28,96,112,28, + 28,224,96,28,28,224,224,28,28,224,224,28,28,224,224,28, + 28,224,224,28,28,224,224,28,28,224,224,28,24,240,240,28, + 56,112,112,28,48,112,120,60,96,120,60,94,224,56,31,143, + 128,60,15,15,0,30,0,0,0,31,0,0,0,15,128,0, + 32,7,192,0,192,1,248,15,128,0,255,254,0,0,31,240, + 0,23,25,75,24,0,0,0,8,0,0,56,0,0,60,0, + 0,60,0,0,108,0,0,110,0,0,110,0,0,198,0,0, + 199,0,0,199,0,1,131,0,1,131,128,1,131,128,3,1, + 128,3,255,192,3,255,192,6,0,224,6,0,224,6,0,224, + 12,0,112,12,0,112,12,0,112,24,0,56,28,0,120,255, + 1,254,19,25,75,22,1,0,31,240,0,255,254,0,28,31, + 0,28,7,128,28,3,128,28,3,128,28,3,128,28,3,128, + 28,7,0,28,6,0,28,28,0,31,254,0,31,255,0,28, + 15,128,28,3,192,28,1,224,28,0,224,28,0,224,28,0, + 224,28,0,224,28,1,224,28,1,192,28,7,128,63,255,0, + 255,252,0,19,25,75,21,1,0,0,254,0,3,255,192,7, + 7,192,12,1,128,24,0,0,56,0,0,112,0,0,112,0, + 0,112,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,112,0,0,112, + 0,0,120,0,0,60,0,64,30,1,224,15,135,128,7,254, + 0,1,248,0,21,25,75,24,1,0,31,248,0,255,255,0, + 28,15,128,28,3,192,28,1,224,28,0,240,28,0,112,28, + 0,112,28,0,120,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,112,28,0,112, + 28,0,112,28,0,224,28,1,224,28,3,192,28,15,128,63, + 254,0,255,248,0,18,25,75,20,1,0,255,255,0,63,255, + 0,28,3,0,28,1,0,28,1,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,31,252,0,31,252,0,28, + 8,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,64,28,0,192,28,1,128, + 63,255,128,255,255,128,17,25,75,19,1,0,255,255,128,63, + 255,128,28,3,0,28,1,0,28,1,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,31,252,0,31,248,0, + 28,24,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,62,0,0,255,128,0,21,25,75,23,1,0,0,127,0, + 1,255,192,7,3,224,14,0,192,28,0,0,56,0,0,48, + 0,0,112,0,0,112,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,15,248,224,1,224,224,0,224,224,0,224, + 112,0,224,112,0,224,120,0,224,60,0,224,30,0,224,15, + 129,192,7,255,128,1,252,0,24,25,75,26,1,0,255,129, + 255,62,0,124,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,31, + 255,248,31,255,248,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,62,0,124,255,129,255,9,25,50,12,1,0,255, + 128,62,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,62,0,255, + 128,15,32,64,12,252,249,7,254,0,248,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,96,0,96,0,224,0, + 192,49,128,127,0,252,0,22,25,75,23,1,0,255,135,248, + 62,1,192,28,3,128,28,7,0,28,14,0,28,12,0,28, + 24,0,28,56,0,28,112,0,28,224,0,29,192,0,31,128, + 0,31,192,0,29,224,0,28,224,0,28,112,0,28,56,0, + 28,60,0,28,30,0,28,15,0,28,7,128,28,3,192,28, + 3,224,62,1,252,255,128,240,18,25,75,19,1,0,255,128, + 0,62,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,192,28,0,128, + 30,1,128,63,255,128,255,255,128,30,25,100,32,1,0,254, + 0,1,248,30,0,3,224,31,0,3,224,31,0,3,224,31, + 0,7,224,27,128,6,224,27,128,14,224,25,192,12,224,25, + 192,12,224,24,224,28,224,24,224,24,224,24,224,56,224,24, + 112,48,224,24,112,112,224,24,56,96,224,24,56,96,224,24, + 28,224,224,24,28,192,224,24,31,192,224,24,15,128,224,24, + 15,128,224,24,7,128,224,24,7,0,224,60,7,1,224,255, + 2,7,252,24,25,75,26,1,0,248,1,255,60,0,124,30, + 0,56,30,0,56,31,0,56,31,128,56,29,128,56,29,192, + 56,28,224,56,28,96,56,28,112,56,28,56,56,28,28,56, + 28,28,56,28,14,56,28,7,56,28,7,56,28,3,184,28, + 3,248,28,1,248,28,0,248,28,0,248,28,0,120,62,0, + 56,255,128,24,21,25,75,24,1,0,0,252,0,3,255,0, + 7,7,128,12,3,192,24,1,224,56,0,224,112,0,112,112, + 0,112,96,0,120,224,0,56,224,0,56,224,0,56,224,0, + 56,224,0,56,224,0,56,224,0,56,240,0,48,112,0,112, + 112,0,96,120,0,224,60,0,192,30,1,128,15,7,0,7, + 254,0,1,248,0,18,25,75,21,1,0,31,248,0,255,254, + 0,28,31,0,28,7,128,28,3,192,28,1,192,28,1,192, + 28,1,192,28,1,192,28,1,192,28,3,128,28,7,128,28, + 15,0,29,254,0,28,248,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 62,0,0,255,128,0,24,31,93,24,1,250,0,252,0,3, + 255,0,7,7,128,12,3,192,24,1,224,56,0,224,112,0, + 112,112,0,112,96,0,120,224,0,56,224,0,56,224,0,56, + 224,0,56,224,0,56,224,0,56,224,0,56,240,0,48,112, + 0,112,112,0,112,56,0,224,60,0,192,30,1,192,15,7, + 128,7,254,0,1,252,0,0,14,0,0,7,0,0,3,130, + 0,1,227,0,0,254,0,0,60,21,25,75,22,1,0,31, + 240,0,255,254,0,28,31,0,28,7,0,28,7,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,7,0,28,6,0, + 28,28,0,31,240,0,28,112,0,28,56,0,28,56,0,28, + 28,0,28,30,0,28,14,0,28,7,0,28,7,128,28,3, + 128,28,3,192,62,1,248,255,129,240,15,25,50,19,2,0, + 7,224,31,248,120,124,112,24,224,0,224,0,224,0,240,0, + 248,0,126,0,63,128,31,224,7,248,1,252,0,124,0,30, + 0,30,0,14,128,14,128,14,192,28,224,28,240,120,255,240, + 31,128,21,25,75,22,0,0,127,255,248,255,255,248,192,112, + 24,192,112,24,128,112,16,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,112, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,248,0, + 3,254,0,24,25,75,26,1,0,255,129,255,62,0,124,28, + 0,56,28,0,56,28,0,56,28,0,56,28,0,56,28,0, + 56,28,0,56,28,0,56,28,0,56,28,0,56,28,0,56, + 28,0,56,28,0,56,28,0,56,28,0,56,28,0,56,28, + 0,112,14,0,112,14,0,112,15,0,224,7,193,192,3,255, + 128,0,126,0,25,25,100,26,0,0,255,128,127,128,28,0, + 14,0,30,0,12,0,14,0,28,0,14,0,24,0,15,0, + 24,0,7,0,56,0,7,0,48,0,3,128,48,0,3,128, + 112,0,3,192,96,0,1,192,224,0,1,192,224,0,1,224, + 192,0,0,225,192,0,0,225,128,0,0,113,128,0,0,115, + 128,0,0,123,0,0,0,59,0,0,0,63,0,0,0,62, + 0,0,0,30,0,0,0,30,0,0,0,8,0,0,33,25, + 125,34,0,0,255,128,192,127,128,28,0,192,14,0,28,0, + 192,12,0,28,1,224,12,0,14,1,224,28,0,14,1,224, + 28,0,14,3,240,24,0,14,3,112,24,0,7,3,48,24, + 0,7,7,56,56,0,7,6,56,56,0,7,6,24,48,0, + 7,14,28,48,0,3,140,28,48,0,3,140,14,112,0,3, + 156,14,96,0,3,152,14,96,0,1,216,7,96,0,1,248, + 7,96,0,1,240,7,224,0,1,240,3,192,0,1,240,3, + 192,0,0,224,3,192,0,0,224,1,192,0,0,192,1,128, + 0,23,25,75,25,1,0,255,135,252,60,0,240,28,0,224, + 30,1,192,15,1,128,7,3,128,7,135,0,3,198,0,1, + 238,0,0,252,0,0,252,0,0,120,0,0,120,0,0,124, + 0,0,254,0,1,206,0,1,207,0,3,135,128,3,3,128, + 7,3,192,14,1,224,12,0,224,28,0,240,60,0,248,255, + 3,254,23,25,75,24,0,0,248,1,254,60,0,120,30,0, + 96,14,0,224,7,0,192,7,129,192,3,129,128,3,195,128, + 1,195,0,0,231,0,0,238,0,0,126,0,0,124,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,124,0, + 1,255,0,18,25,75,21,1,0,63,255,192,63,255,192,48, + 3,128,32,7,128,96,15,0,96,14,0,0,30,0,0,28, + 0,0,56,0,0,120,0,0,112,0,0,240,0,1,224,0, + 1,192,0,3,192,0,3,128,0,7,0,0,15,0,0,14, + 0,0,30,0,64,60,0,64,56,0,192,120,0,192,127,255, + 192,255,255,192,9,37,74,12,3,250,255,128,255,128,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 255,128,255,128,17,38,114,19,1,249,192,0,0,224,0,0, + 112,0,0,112,0,0,48,0,0,56,0,0,56,0,0,24, + 0,0,28,0,0,28,0,0,14,0,0,14,0,0,6,0, + 0,7,0,0,7,0,0,3,0,0,3,128,0,3,128,0, + 1,192,0,1,192,0,0,192,0,0,224,0,0,224,0,0, + 96,0,0,112,0,0,112,0,0,56,0,0,56,0,0,24, + 0,0,28,0,0,28,0,0,12,0,0,14,0,0,14,0, + 0,7,0,0,7,0,0,3,0,0,1,128,9,37,74,13, + 1,250,255,128,255,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,255,128,255,128,16,19,38,20, + 2,11,0,128,3,128,3,192,3,192,7,224,6,224,14,224, + 12,112,12,112,28,120,24,56,24,56,48,28,48,28,112,28, + 96,14,96,14,224,7,128,6,17,2,6,19,1,251,127,255, + 128,255,255,0,8,9,9,13,1,20,224,240,112,56,56,28, + 14,6,3,16,18,36,18,2,0,3,224,31,240,56,120,112, + 56,240,56,192,56,0,56,0,120,7,248,28,56,112,56,96, + 56,224,56,224,56,224,120,241,185,127,63,60,24,18,30,90, + 20,0,0,12,0,0,124,0,0,188,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,60,0,28,255,0,29,143,0, + 31,7,128,30,3,128,28,3,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,128,28,1,128,28,3, + 128,30,3,0,31,134,0,7,252,0,1,240,0,15,18,36, + 17,2,0,1,248,7,254,28,28,56,12,112,4,112,0,224, + 0,224,0,224,0,224,0,224,0,224,0,240,0,112,4,120, + 6,62,28,31,248,7,224,19,30,90,21,2,0,0,3,0, + 0,63,0,0,15,0,0,7,0,0,7,0,0,7,0,0, + 7,0,0,7,0,0,7,0,0,7,0,0,7,0,0,7, + 0,3,247,0,15,255,0,28,31,0,56,15,0,48,7,0, + 112,7,0,96,7,0,224,7,0,224,7,0,224,7,0,224, + 7,0,224,7,0,240,7,0,112,15,0,120,31,0,60,55, + 224,31,231,192,7,131,0,14,18,36,18,2,0,3,192,15, + 240,28,120,48,56,112,28,96,28,224,28,255,252,255,248,224, + 0,224,0,224,0,240,0,112,4,120,12,60,56,31,240,7, + 192,15,30,60,12,1,0,0,120,1,254,3,28,6,8,14, + 0,12,0,12,0,28,0,28,0,28,0,28,0,28,0,127, + 240,255,224,28,64,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,62, + 0,255,192,18,27,81,19,1,247,3,224,192,15,255,192,28, + 63,0,56,28,0,112,14,0,112,14,0,112,14,0,112,14, + 0,120,28,0,60,56,0,31,240,0,7,192,0,6,0,0, + 12,0,0,28,0,0,31,224,0,15,254,0,12,63,128,24, + 3,192,112,1,192,224,1,192,224,1,192,224,3,128,240,3, + 128,124,15,0,63,252,0,7,240,0,21,30,90,22,1,0, + 12,0,0,252,0,0,124,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,31,0,28,63,128,28,227,192,29,129,192, + 31,1,192,30,1,192,30,1,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,192,62,3,192,255,143,248,9,27,54,11,1,0, + 28,0,60,0,60,0,60,0,24,0,0,0,0,0,0,0, + 0,0,12,0,252,0,60,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,60,0,255,128,11,36,72,10,252,247,0,224,1,224, + 1,224,1,224,0,192,0,0,0,0,0,0,0,0,0,96, + 7,224,1,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,192,0,192,1,192,1,128,35,0, + 254,0,248,0,19,30,90,20,1,0,12,0,0,252,0,0, + 60,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,31, + 224,28,7,0,28,14,0,28,28,0,28,48,0,28,224,0, + 29,192,0,31,128,0,29,192,0,29,224,0,28,240,0,28, + 120,0,28,56,0,28,28,0,28,30,0,28,15,0,60,7, + 128,255,3,224,9,30,60,11,1,0,12,0,252,0,124,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,60,0,255,128,31,18,72,32,1,0,12,30,3,192, + 252,127,15,224,60,199,152,240,29,131,176,112,31,3,224,112, + 30,3,192,112,28,3,128,112,28,3,128,112,28,3,128,112, + 28,3,128,112,28,3,128,112,28,3,128,112,28,3,128,112, + 28,3,128,112,28,3,128,112,28,3,128,112,60,7,192,240, + 255,159,243,254,21,18,54,22,1,0,12,15,0,252,63,128, + 60,99,192,29,129,192,29,1,192,30,1,192,30,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,192,28,1,192,28,1,192,62,3,192,255,143,248, + 16,18,36,20,2,0,3,224,15,248,28,60,48,30,112,14, + 96,15,224,7,224,7,224,7,224,7,224,7,224,7,240,6, + 112,14,120,12,62,56,31,240,7,192,18,27,81,21,1,247, + 12,28,0,252,127,0,60,143,128,29,7,128,30,3,128,30, + 3,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,1,128,28,1,128,28,3,128,30,3,0,31,6,0, + 29,252,0,28,120,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,62,0,0,255,128, + 0,19,27,81,21,2,247,1,241,128,7,251,0,28,31,0, + 56,15,0,48,7,0,112,7,0,96,7,0,224,7,0,224, + 7,0,224,7,0,224,7,0,224,7,0,240,7,0,112,15, + 0,120,31,0,60,55,0,31,231,0,7,135,0,0,7,0, + 0,7,0,0,7,0,0,7,0,0,7,0,0,7,0,0, + 7,0,0,7,0,0,63,224,14,18,36,16,1,0,12,60, + 252,252,61,140,29,12,31,4,30,0,30,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,30,0, + 255,128,11,18,36,15,2,0,31,0,127,128,115,192,225,128, + 224,128,240,0,248,0,126,0,31,0,15,192,3,224,1,224, + 128,224,128,224,192,224,225,192,255,128,62,0,13,25,50,14, + 0,0,4,0,12,0,28,0,28,0,28,0,28,0,28,0, + 127,248,255,240,28,32,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,30,56, + 15,240,7,128,21,18,54,21,0,0,12,0,192,252,15,192, + 28,1,192,28,1,192,28,1,192,28,1,192,28,1,192,28, + 1,192,28,1,192,28,1,192,28,1,192,28,1,192,28,1, + 192,28,3,192,28,7,192,30,29,200,15,241,240,7,192,192, + 19,18,54,20,0,0,255,7,224,60,1,192,28,1,128,28, + 3,128,14,3,0,14,3,0,14,6,0,7,6,0,7,6, + 0,3,140,0,3,140,0,3,156,0,1,216,0,1,216,0, + 0,240,0,0,240,0,0,240,0,0,64,0,28,18,72,28, + 0,0,255,3,7,240,60,7,0,192,28,7,0,192,28,7, + 129,128,28,15,129,128,14,15,129,128,14,13,195,128,14,25, + 195,0,6,25,195,0,7,24,227,0,7,48,230,0,3,48, + 118,0,3,176,118,0,3,224,124,0,1,224,60,0,1,224, + 60,0,1,192,60,0,1,128,16,0,20,18,54,20,0,0, + 127,143,224,30,3,128,14,3,0,7,6,0,7,140,0,3, + 156,0,1,216,0,0,240,0,0,240,0,0,240,0,1,184, + 0,1,156,0,3,30,0,6,14,0,14,7,0,12,3,128, + 60,3,192,255,15,240,20,27,81,20,255,247,127,131,240,30, + 0,224,14,0,192,14,0,192,7,1,128,7,1,128,7,3, + 0,3,131,0,3,131,0,1,198,0,1,198,0,1,198,0, + 0,236,0,0,236,0,0,120,0,0,120,0,0,120,0,0, + 48,0,0,48,0,0,96,0,0,96,0,0,224,0,1,192, + 0,67,128,0,127,0,0,254,0,0,124,0,0,15,18,36, + 18,1,0,63,254,63,254,96,28,96,56,64,56,0,112,0, + 224,1,192,1,192,3,128,7,0,7,0,14,0,28,2,56, + 2,56,6,127,254,255,254,11,37,74,14,2,250,0,64,1, + 224,3,128,7,0,6,0,14,0,14,0,14,0,14,0,14, + 0,15,0,7,0,7,0,7,0,7,0,7,0,14,0,28, + 0,124,0,254,0,15,0,7,0,7,0,7,0,7,0,7, + 0,15,0,14,0,14,0,14,0,14,0,14,0,14,0,7, + 0,3,0,1,192,0,64,3,41,41,9,3,248,96,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,192,11,37,74,14,1,250,64,0,112,0, + 56,0,28,0,12,0,14,0,14,0,14,0,14,0,14,0, + 30,0,28,0,28,0,28,0,28,0,28,0,14,0,15,192, + 3,224,7,0,14,0,12,0,28,0,28,0,28,0,28,0, + 30,0,14,0,14,0,14,0,14,0,14,0,12,0,28,0, + 56,0,112,0,192,0,18,6,18,20,1,9,15,0,192,31, + 192,128,63,225,0,99,255,0,192,254,0,128,56,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--48-480-72-72-P-218-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 30, '1' Height: 29 + Calculated Max Values w=40 h=49 x= 5 y=28 dx=41 dy= 0 ascent=42 len=195 + Font Bounding box w=71 h=68 x=-24 y=-17 + Calculated Min Values x=-5 y=-13 dx= 0 dy= 0 + Pure Font ascent =30 descent=-11 + X Font ascent =38 descent=-11 + Max Font ascent =42 descent=-13 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr30[18369] U8G_SECTION(".progmem.u8g_font_gdr30") = { + 0,71,68,232,239,30,9,231,23,124,32,255,245,42,243,38, + 245,0,0,0,11,0,0,6,36,36,13,3,255,12,60,124, + 124,124,124,124,120,120,120,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,0,0,0,0,56,124,252,252,248, + 112,13,16,32,20,4,19,48,56,240,248,240,248,240,240,240, + 240,240,240,240,112,240,112,240,112,240,112,112,112,112,112,96, + 112,96,112,96,112,96,112,21,27,81,23,2,3,0,48,96, + 0,112,224,0,96,192,0,224,192,0,225,192,0,225,192,0, + 193,128,1,195,128,31,255,248,31,255,248,3,135,0,3,135, + 0,3,7,0,3,6,0,7,14,0,7,14,0,6,14,0, + 255,255,192,255,255,192,12,28,0,12,24,0,28,56,0,28, + 56,0,24,48,0,56,112,0,56,112,0,48,96,0,20,36, + 108,23,1,252,0,96,0,0,96,0,0,96,0,0,96,0, + 3,254,0,15,255,128,62,127,192,120,103,128,112,99,128,240, + 96,0,240,96,0,240,96,0,248,96,0,126,96,0,127,224, + 0,63,240,0,15,254,0,1,255,0,0,127,192,0,111,224, + 0,99,224,0,97,240,0,96,240,0,96,240,64,96,240,96, + 96,240,112,96,224,120,97,224,124,99,192,127,255,128,31,255, + 0,7,248,0,0,96,0,0,96,0,0,96,0,0,96,0, + 31,30,120,34,1,255,7,192,0,96,31,224,1,240,60,240, + 1,192,120,120,3,192,112,120,7,128,240,60,7,0,240,60, + 14,0,240,60,30,0,240,60,60,0,240,60,56,0,240,60, + 120,0,120,56,240,0,120,120,224,0,60,241,192,0,31,227, + 195,224,15,135,143,240,0,7,30,120,0,15,60,60,0,30, + 56,60,0,28,120,30,0,56,120,30,0,120,120,30,0,240, + 120,30,0,224,120,30,1,192,120,30,3,192,60,28,3,128, + 60,60,7,0,30,120,15,0,15,240,12,0,7,192,30,34, + 136,32,2,0,0,63,0,0,0,255,128,0,1,199,192,0, + 3,131,224,0,7,1,224,0,7,1,224,0,15,1,224,0, + 15,1,224,0,15,3,224,0,15,3,192,0,15,135,192,0, + 15,143,128,0,7,191,0,0,7,254,0,0,7,248,0,0, + 7,240,0,0,15,240,63,248,31,240,127,252,62,120,30,48, + 60,124,15,0,124,60,15,0,120,30,7,0,240,31,7,0, + 240,15,135,0,240,7,198,0,240,3,198,0,240,3,236,0, + 240,1,252,0,248,0,252,0,120,0,126,0,60,0,255,0, + 63,3,143,200,15,255,7,240,3,248,3,192,4,16,16,12, + 4,19,48,240,240,240,240,240,240,240,240,240,112,112,96,96, + 96,96,11,45,90,15,3,249,0,32,0,224,1,192,3,128, + 3,128,7,0,14,0,14,0,28,0,28,0,60,0,56,0, + 56,0,120,0,120,0,120,0,112,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,240,0, + 240,0,120,0,120,0,120,0,120,0,56,0,60,0,60,0, + 28,0,30,0,14,0,15,0,7,0,3,128,1,192,0,224, + 0,32,11,45,90,15,1,249,128,0,224,0,112,0,56,0, + 28,0,30,0,14,0,15,0,7,0,7,128,7,128,3,128, + 3,192,3,192,3,192,3,192,1,224,1,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224, + 1,192,3,192,3,192,3,192,3,128,3,128,7,128,7,0, + 15,0,14,0,14,0,28,0,56,0,56,0,112,0,224,0, + 128,0,18,20,60,21,2,17,0,192,0,1,192,0,1,192, + 0,1,192,0,193,193,0,240,195,192,248,207,192,124,223,0, + 15,252,0,3,224,0,3,224,0,15,252,0,60,223,0,248, + 207,128,240,195,128,64,193,128,1,192,0,1,192,0,1,192, + 0,1,128,0,17,17,51,20,1,5,0,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1, + 192,0,255,255,128,255,255,128,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,1,128,0,7,13,13, + 11,2,249,8,60,254,254,30,30,30,28,28,56,48,96,64, + 14,2,4,16,1,11,127,252,255,248,6,6,6,11,3,255, + 56,124,252,252,248,112,20,46,138,23,1,248,0,0,48,0, + 0,240,0,0,240,0,0,224,0,1,224,0,1,192,0,1, + 192,0,3,192,0,3,128,0,7,128,0,7,128,0,7,0, + 0,15,0,0,15,0,0,14,0,0,30,0,0,28,0,0, + 28,0,0,60,0,0,56,0,0,120,0,0,120,0,0,112, + 0,0,240,0,0,224,0,0,224,0,1,224,0,1,192,0, + 3,192,0,3,192,0,3,128,0,7,128,0,7,128,0,7, + 0,0,15,0,0,14,0,0,30,0,0,30,0,0,28,0, + 0,60,0,0,60,0,0,56,0,0,120,0,0,112,0,0, + 240,0,0,192,0,0,19,29,87,23,2,0,1,248,0,7, + 252,0,14,30,0,28,15,0,24,7,128,56,7,128,56,3, + 192,112,3,192,112,3,192,112,3,224,240,1,224,240,1,224, + 240,1,224,240,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,192,120,1,192,120,3,192,120,3, + 128,60,3,128,60,3,0,30,7,0,15,14,0,7,252,0, + 3,240,0,17,29,87,23,3,0,0,96,0,1,224,0,15, + 224,0,127,224,0,255,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,3,240,0,63,254,0,127,255,128, + 17,29,87,22,2,0,1,248,0,7,254,0,28,31,0,56, + 15,0,120,15,128,112,7,128,240,7,128,224,7,128,0,7, + 128,0,7,128,0,15,0,0,15,0,0,30,0,0,30,0, + 0,60,0,0,120,0,0,240,0,0,240,0,1,224,0,3, + 192,0,7,128,0,15,0,0,15,0,0,30,0,128,60,0, + 128,120,0,128,240,1,128,255,255,128,255,255,128,18,29,87, + 22,1,0,1,248,0,7,254,0,30,31,0,60,15,0,56, + 7,128,120,7,128,112,7,128,0,7,128,0,7,0,0,15, + 0,0,30,0,0,60,0,0,248,0,3,254,0,0,63,0, + 0,15,128,0,7,128,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,7,128,128,7,128,224,15, + 0,120,62,0,63,252,0,7,224,0,19,29,87,23,1,0, + 0,3,0,0,15,0,0,31,0,0,63,0,0,127,0,0, + 127,0,0,239,0,0,207,0,1,207,0,3,143,0,3,143, + 0,7,15,0,14,15,0,14,15,0,28,15,0,24,15,0, + 56,15,0,112,15,0,112,15,0,255,255,224,255,255,192,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,63,128,1,255,224,18,29,87,23,2,0,0,0,128, + 0,1,128,31,255,0,31,254,0,24,0,0,24,0,0,24, + 0,0,24,0,0,56,0,0,56,0,0,56,0,0,63,240, + 0,63,252,0,120,63,0,32,15,0,0,7,128,0,7,192, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,128,0,7,128,128,7,128,224,15,0,120,62,0,63,252, + 0,7,240,0,18,29,87,23,3,0,0,7,0,0,63,0, + 0,248,0,1,224,0,3,192,0,15,0,0,14,0,0,30, + 0,0,60,0,0,56,0,0,120,0,0,120,248,0,119,254, + 0,254,31,0,248,15,128,240,7,128,240,7,192,240,3,192, + 240,3,192,240,3,192,240,3,192,248,3,192,120,3,128,120, + 3,128,60,7,128,60,7,0,31,14,0,15,252,0,3,240, + 0,19,27,81,23,2,0,127,255,192,127,255,224,96,1,192, + 64,3,192,192,3,128,0,3,128,0,7,0,0,7,0,0, + 14,0,0,14,0,0,28,0,0,28,0,0,56,0,0,56, + 0,0,56,0,0,112,0,0,112,0,0,224,0,0,224,0, + 1,192,0,1,192,0,3,192,0,7,128,0,7,128,0,15, + 0,0,15,0,0,28,0,0,18,29,87,22,2,0,3,248, + 0,15,254,0,28,31,0,56,15,0,48,7,128,112,7,128, + 112,7,128,112,7,128,112,7,0,120,15,0,62,30,0,31, + 188,0,15,240,0,3,252,0,7,254,0,30,63,0,60,15, + 128,120,7,192,112,7,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,128,120,7,128,124,7,0,62,14,0,31, + 252,0,7,224,0,19,30,90,23,2,255,1,248,0,7,254, + 0,14,31,0,28,15,128,56,7,128,120,3,192,112,3,192, + 240,3,224,240,1,224,240,1,224,240,1,224,240,1,224,248, + 1,224,120,3,224,124,7,224,62,13,224,31,249,224,7,225, + 192,0,3,192,0,3,192,0,7,128,0,7,128,0,15,0, + 0,30,0,0,60,0,0,120,0,0,240,0,3,224,0,31, + 128,0,56,0,0,6,23,23,11,3,255,56,124,252,252,248, + 112,0,0,0,0,0,0,0,0,0,0,0,56,124,252,252, + 248,112,7,29,29,11,2,249,28,62,126,126,124,56,0,0, + 0,0,0,0,0,0,0,0,8,60,254,254,30,30,30,28, + 28,56,48,96,64,19,15,45,21,1,6,0,0,96,0,3, + 192,0,31,192,0,127,0,3,252,0,31,224,0,127,0,0, + 124,0,0,254,0,0,63,192,0,7,240,0,1,254,0,0, + 63,192,0,7,224,0,1,128,19,9,27,21,1,9,127,255, + 224,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,127,255,224,255,255,192,19,15,45,21,1,6,48, + 0,0,252,0,0,127,128,0,15,240,0,3,254,0,0,127, + 128,0,15,224,0,3,192,0,31,192,0,255,0,3,248,0, + 31,192,0,127,0,0,120,0,0,192,0,0,17,36,108,21, + 2,255,3,248,0,15,254,0,60,63,0,120,15,0,120,15, + 128,240,7,128,240,7,128,240,7,128,224,7,128,0,7,128, + 0,15,0,0,15,0,0,30,0,0,30,0,0,60,0,0, + 120,0,0,112,0,0,224,0,1,224,0,1,192,0,3,192, + 0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + 0,0,0,0,0,0,0,0,0,0,0,0,1,192,0,3, + 224,0,7,224,0,7,224,0,7,192,0,3,128,0,36,39, + 195,39,1,248,0,0,255,128,0,0,7,255,224,0,0,31, + 1,248,0,0,120,0,62,0,0,224,0,31,0,1,192,0, + 15,0,7,128,0,7,128,7,0,0,3,192,14,0,0,1, + 192,28,0,124,33,224,28,1,255,96,224,56,3,135,224,224, + 56,7,3,224,224,120,14,1,224,240,112,14,1,224,112,112, + 30,1,224,112,240,28,1,224,112,240,60,1,224,112,240,60, + 1,224,112,240,60,1,224,112,240,60,1,224,112,240,60,1, + 224,112,240,60,1,224,96,248,60,1,224,224,248,62,1,224, + 192,120,30,1,224,192,120,31,3,225,128,124,15,5,225,0, + 60,15,141,242,0,62,7,248,252,0,31,1,224,112,0,31, + 0,0,0,0,15,128,0,0,0,7,192,0,1,0,3,240, + 0,3,128,1,248,0,14,0,0,127,0,252,0,0,31,255, + 240,0,0,3,255,0,0,28,30,120,29,0,0,0,2,0, + 0,0,7,0,0,0,15,0,0,0,15,0,0,0,31,128, + 0,0,31,128,0,0,27,128,0,0,59,192,0,0,57,192, + 0,0,49,224,0,0,113,224,0,0,112,224,0,0,96,240, + 0,0,224,240,0,0,224,112,0,0,192,120,0,1,192,120, + 0,1,192,56,0,1,255,252,0,3,255,252,0,3,128,30, + 0,3,0,30,0,7,0,30,0,7,0,15,0,6,0,15, + 0,14,0,15,0,14,0,7,128,12,0,7,128,62,0,7, + 192,255,192,63,240,24,30,90,27,0,0,7,254,0,255,255, + 192,111,7,224,15,1,240,15,0,248,15,0,120,15,0,120, + 15,0,120,15,0,120,15,0,112,15,0,240,15,1,224,15, + 7,192,15,255,192,15,255,240,15,1,248,15,0,124,15,0, + 62,15,0,30,15,0,31,15,0,15,15,0,15,15,0,15, + 15,0,15,15,0,14,15,0,30,15,0,60,15,0,248,63, + 255,240,127,255,128,23,30,90,26,1,0,0,31,224,0,255, + 252,1,192,252,7,128,56,14,0,16,14,0,0,28,0,0, + 56,0,0,56,0,0,120,0,0,112,0,0,112,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,120,0,0,120,0,0,124,0,0, + 60,0,0,30,0,4,31,0,14,15,128,56,7,224,240,1, + 255,192,0,127,0,25,30,120,28,1,0,7,254,0,0,255, + 255,192,0,111,3,240,0,15,0,248,0,15,0,124,0,15, + 0,62,0,15,0,30,0,15,0,31,0,15,0,15,0,15, + 0,15,0,15,0,15,128,15,0,7,128,15,0,7,128,15, + 0,7,128,15,0,7,128,15,0,7,128,15,0,7,128,15, + 0,7,128,15,0,7,128,15,0,7,0,15,0,15,0,15, + 0,15,0,15,0,30,0,15,0,30,0,15,0,60,0,15, + 0,124,0,15,0,248,0,15,3,224,0,63,255,192,0,127, + 254,0,0,21,30,90,24,1,0,255,255,224,127,255,240,30, + 0,96,30,0,96,30,0,96,30,0,96,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 31,255,128,31,255,128,30,3,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,8,30,0,24,30,0,24,31,0,56,127,255,240, + 255,255,240,20,30,90,23,1,0,255,255,240,127,255,240,30, + 0,96,30,0,96,30,0,32,30,0,32,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 31,255,0,31,255,0,30,6,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,127,128,0, + 255,224,0,24,30,90,28,2,0,0,31,224,0,255,248,1, + 192,252,7,128,56,15,0,16,30,0,0,28,0,0,56,0, + 0,56,0,0,120,0,0,112,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,7,255,240,0,254,240, + 0,60,240,0,60,248,0,60,120,0,60,120,0,60,60,0, + 60,62,0,60,30,0,60,15,0,60,7,192,248,3,255,224, + 0,127,0,27,30,120,31,2,0,255,192,127,224,127,128,63, + 192,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,31,255,255,0,31,255,255,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,127,0,31,192,255,192,127, + 224,10,30,60,14,2,0,255,192,127,128,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,127, + 128,255,192,17,38,114,15,252,248,7,255,128,0,255,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,56,0,0,56,0,0,56,0,0,112,0,0,112,0,0, + 224,0,112,192,0,255,0,0,124,0,0,26,30,120,28,1, + 0,255,193,255,128,127,128,124,0,30,0,120,0,30,0,240, + 0,30,1,224,0,30,1,192,0,30,3,128,0,30,7,0, + 0,30,14,0,0,30,28,0,0,30,56,0,0,30,120,0, + 0,30,112,0,0,30,224,0,0,31,224,0,0,30,240,0, + 0,30,120,0,0,30,124,0,0,30,62,0,0,30,30,0, + 0,30,15,0,0,30,7,128,0,30,7,192,0,30,3,224, + 0,30,1,240,0,30,0,248,0,30,0,124,0,30,0,126, + 0,127,128,63,192,255,192,31,0,21,30,90,23,1,0,255, + 192,0,127,128,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,8,30,0,24,30,0,24, + 31,0,48,127,255,240,255,255,240,36,30,150,39,1,0,127, + 0,0,15,224,31,128,0,31,128,15,128,0,31,0,15,128, + 0,63,0,15,192,0,63,0,15,192,0,55,0,15,224,0, + 119,0,14,224,0,119,0,14,240,0,231,0,14,240,0,231, + 0,14,120,0,199,0,14,120,1,199,0,14,56,1,199,0, + 14,60,3,135,0,14,28,3,135,0,14,30,7,7,0,14, + 30,7,7,0,14,15,6,7,0,14,15,14,7,0,14,7, + 14,7,0,14,7,156,7,0,14,3,156,7,0,14,3,216, + 7,0,14,3,248,7,0,14,1,248,7,0,14,1,240,7, + 0,14,0,240,7,0,14,0,224,7,0,63,0,224,31,192, + 255,192,96,127,240,27,30,120,31,2,0,252,0,63,224,124, + 0,15,128,30,0,7,0,31,0,7,0,31,0,7,0,31, + 128,7,0,31,192,7,0,29,192,7,0,28,224,7,0,28, + 240,7,0,28,120,7,0,28,56,7,0,28,60,7,0,28, + 30,7,0,28,14,7,0,28,15,7,0,28,7,135,0,28, + 7,135,0,28,3,199,0,28,1,231,0,28,1,231,0,28, + 0,247,0,28,0,127,0,28,0,127,0,28,0,63,0,28, + 0,31,0,28,0,31,0,28,0,15,0,62,0,7,0,255, + 128,3,0,25,30,120,29,2,0,0,63,0,0,0,255,224, + 0,3,193,240,0,7,0,248,0,14,0,124,0,28,0,62, + 0,60,0,30,0,56,0,31,0,120,0,15,0,120,0,15, + 0,112,0,15,128,240,0,7,128,240,0,7,128,240,0,7, + 128,240,0,7,128,240,0,7,128,240,0,7,128,240,0,7, + 128,240,0,7,128,248,0,7,0,120,0,15,0,120,0,15, + 0,124,0,14,0,60,0,28,0,62,0,28,0,31,0,56, + 0,15,128,112,0,7,193,224,0,3,255,128,0,0,254,0, + 0,22,30,90,25,1,0,7,254,0,255,255,192,111,7,224, + 15,1,240,15,0,248,15,0,124,15,0,60,15,0,60,15, + 0,60,15,0,60,15,0,60,15,0,60,15,0,120,15,0, + 120,15,0,240,15,131,224,15,127,192,15,62,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,63,192,0,127,240, + 0,28,37,148,29,2,249,0,63,0,0,0,255,224,0,3, + 193,240,0,7,0,248,0,14,0,124,0,28,0,62,0,60, + 0,30,0,56,0,31,0,120,0,15,0,120,0,15,0,112, + 0,15,128,240,0,7,128,240,0,7,128,240,0,7,128,240, + 0,7,128,240,0,7,128,240,0,7,128,240,0,7,128,240, + 0,7,128,248,0,7,0,120,0,15,0,120,0,15,0,124, + 0,14,0,60,0,30,0,62,0,28,0,31,0,56,0,15, + 128,112,0,7,193,224,0,3,255,192,0,0,127,128,0,0, + 3,192,0,0,1,224,0,0,0,248,16,0,0,124,48,0, + 0,31,224,0,0,15,224,0,0,3,128,26,30,120,27,1, + 0,7,254,0,0,255,255,192,0,111,7,224,0,15,1,240, + 0,15,0,240,0,15,0,120,0,15,0,120,0,15,0,120, + 0,15,0,120,0,15,0,120,0,15,0,112,0,15,0,240, + 0,15,1,224,0,15,3,192,0,15,255,0,0,15,254,0, + 0,15,14,0,0,15,7,0,0,15,7,128,0,15,3,128, + 0,15,3,192,0,15,1,192,0,15,1,224,0,15,0,240, + 0,15,0,240,0,15,0,120,0,15,0,124,0,15,0,62, + 0,63,192,63,192,127,224,31,0,18,30,90,23,3,0,3, + 248,0,31,254,0,60,63,0,120,14,0,112,4,0,240,0, + 0,240,0,0,240,0,0,248,0,0,252,0,0,127,0,0, + 127,192,0,63,240,0,31,248,0,7,254,0,1,255,0,0, + 127,128,0,31,128,0,15,192,0,7,192,0,3,192,0,3, + 192,0,3,192,128,3,128,192,3,128,224,7,0,240,15,0, + 252,62,0,255,248,0,15,224,0,26,30,120,26,0,0,127, + 255,255,192,127,255,255,192,96,30,1,128,192,30,1,128,192, + 30,1,128,128,30,0,128,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 127,128,0,1,255,224,0,27,30,120,31,2,0,255,192,127, + 224,127,128,63,192,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,30,0,15,0,30,0,15,0,30, + 0,7,128,60,0,7,192,120,0,3,224,240,0,1,255,224, + 0,0,63,128,0,30,30,120,31,0,0,255,224,15,252,31, + 0,1,240,15,0,0,224,15,0,1,192,7,0,1,192,7, + 128,1,192,7,128,3,128,3,192,3,128,3,192,3,128,3, + 192,7,0,1,224,7,0,1,224,6,0,0,224,14,0,0, + 240,14,0,0,240,12,0,0,120,28,0,0,120,28,0,0, + 120,56,0,0,60,56,0,0,60,56,0,0,28,112,0,0, + 30,112,0,0,30,112,0,0,15,224,0,0,15,224,0,0, + 15,224,0,0,7,192,0,0,7,192,0,0,3,128,0,0, + 3,0,0,40,30,150,41,0,0,255,224,24,3,255,63,0, + 24,0,252,14,0,28,0,48,15,0,60,0,112,15,0,60, + 0,112,15,0,62,0,112,7,0,126,0,96,7,0,127,0, + 224,7,128,127,0,224,7,128,103,0,224,7,128,231,128,224, + 3,128,231,128,192,3,192,195,129,192,3,193,195,193,192,3, + 193,195,193,192,1,193,129,193,192,1,195,129,225,128,1,227, + 129,227,128,1,227,0,227,128,1,231,0,243,128,0,231,0, + 243,128,0,246,0,115,0,0,254,0,127,0,0,254,0,63, + 0,0,124,0,63,0,0,124,0,62,0,0,124,0,30,0, + 0,124,0,30,0,0,120,0,30,0,0,48,0,8,0,28, + 30,120,30,1,0,255,224,255,224,255,224,255,224,63,0,31, + 0,31,0,30,0,15,128,28,0,7,128,56,0,3,192,120, + 0,3,224,112,0,1,224,224,0,0,241,224,0,0,249,192, + 0,0,127,128,0,0,63,128,0,0,31,0,0,0,31,0, + 0,0,31,0,0,0,63,128,0,0,63,192,0,0,115,224, + 0,0,241,224,0,0,224,240,0,1,192,248,0,3,192,120, + 0,3,128,60,0,7,0,62,0,15,0,31,0,14,0,15, + 0,62,0,15,192,255,192,127,240,255,192,127,240,28,30,120, + 29,0,0,252,0,63,240,254,0,63,240,31,0,15,128,15, + 0,7,0,15,128,14,0,7,192,14,0,3,192,28,0,3, + 224,60,0,1,224,56,0,0,240,120,0,0,248,112,0,0, + 120,224,0,0,125,224,0,0,61,192,0,0,63,192,0,0, + 31,128,0,0,31,128,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,63,192,0,0,255,240,0,22,30,90,25,1, + 0,63,255,252,63,255,252,56,0,120,48,0,248,48,1,240, + 32,1,224,32,3,224,0,3,192,0,7,128,0,15,128,0, + 15,0,0,31,0,0,30,0,0,60,0,0,124,0,0,120, + 0,0,248,0,1,240,0,1,224,0,3,224,0,3,192,0, + 7,128,0,15,128,0,15,0,4,31,0,12,62,0,12,60, + 0,12,124,0,28,127,255,252,255,255,252,11,45,90,15,3, + 248,255,224,255,224,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,255,224,255,224,20,46,138,23,1, + 248,224,0,0,112,0,0,112,0,0,120,0,0,56,0,0, + 56,0,0,28,0,0,28,0,0,30,0,0,14,0,0,14, + 0,0,15,0,0,7,0,0,7,0,0,7,128,0,3,128, + 0,3,192,0,1,192,0,1,192,0,1,224,0,0,224,0, + 0,224,0,0,240,0,0,112,0,0,112,0,0,56,0,0, + 56,0,0,60,0,0,28,0,0,28,0,0,30,0,0,14, + 0,0,14,0,0,7,0,0,7,0,0,7,128,0,3,128, + 0,3,128,0,3,192,0,1,192,0,1,192,0,1,224,0, + 0,224,0,0,240,0,0,112,0,0,48,11,45,90,15,1, + 248,255,224,255,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,255,224,255,224,19,23,69,24,2, + 13,0,32,0,0,112,0,0,240,0,1,240,0,1,248,0, + 1,248,0,3,188,0,3,188,0,7,60,0,7,30,0,6, + 30,0,14,14,0,14,15,0,12,15,0,28,7,128,28,7, + 128,24,3,128,56,3,192,48,3,192,112,1,224,112,1,224, + 96,0,224,192,0,192,20,2,6,23,1,251,127,255,240,255, + 255,240,9,10,20,15,1,25,240,0,248,0,120,0,60,0, + 28,0,14,0,7,0,3,0,1,128,1,128,20,22,66,22, + 2,0,1,248,0,15,254,0,28,30,0,120,15,0,112,15, + 0,240,15,0,128,15,0,0,15,0,0,15,0,0,255,0, + 7,255,0,31,143,0,62,15,0,120,15,0,248,15,0,240, + 15,0,240,15,0,240,31,0,240,63,0,120,239,32,127,143, + 240,30,7,128,22,36,108,24,0,0,6,0,0,126,0,0, + 254,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,15,128,30,63,224,30,127,240,30,227,240, + 31,192,248,31,128,248,31,0,124,30,0,124,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 56,30,0,56,30,0,112,30,0,96,31,0,224,15,193,192, + 3,255,0,0,252,0,18,22,66,21,2,0,0,127,0,3, + 255,192,7,7,192,14,1,128,28,0,128,56,0,0,120,0, + 0,112,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,248,0,0,120,0,0,120,0,0,60, + 0,64,62,1,192,31,131,128,7,254,0,1,248,0,23,36, + 108,25,2,0,0,0,224,0,15,224,0,15,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,253, + 224,3,255,224,15,15,224,28,3,224,60,1,224,56,1,224, + 120,1,224,112,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,120,1,224,120,1, + 224,124,3,224,62,5,228,31,25,254,15,240,248,7,192,224, + 18,22,66,22,2,0,0,248,0,7,254,0,14,15,0,28, + 7,128,56,7,128,56,3,192,112,3,192,112,3,192,255,255, + 192,255,255,128,240,0,0,240,0,0,240,0,0,240,0,0, + 248,0,0,120,0,0,120,0,0,124,0,192,62,1,128,31, + 7,0,15,254,0,3,248,0,19,36,108,15,0,0,0,15, + 128,0,63,224,0,99,192,1,193,128,3,128,0,3,128,0, + 7,128,0,7,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,63,254,0,255,252,0,15,8, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,31,224,0,127,248,0,24,33,99,24,0,245, + 0,252,2,3,255,126,7,7,252,14,3,224,30,1,224,28, + 1,240,60,0,240,60,0,240,60,0,240,60,0,240,62,0, + 224,31,1,192,15,131,128,7,255,0,1,252,0,3,192,0, + 7,128,0,15,128,0,15,224,0,7,255,128,3,255,240,7, + 191,252,14,0,254,60,0,31,120,0,15,240,0,15,240,0, + 15,240,0,14,248,0,28,124,0,56,63,128,240,15,255,192, + 1,254,0,23,36,108,26,2,0,6,0,0,126,0,0,254, + 0,0,62,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,7,128,28,31,224,28,49,224,28,96,240,28, + 192,240,29,128,240,31,0,240,31,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,63, + 131,248,255,199,254,10,32,64,13,2,0,28,0,30,0,62, + 0,62,0,28,0,0,0,0,0,0,0,0,0,0,0,6, + 0,126,0,254,0,62,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,63,0,255,192,14,43,86,12,251, + 245,0,56,0,60,0,124,0,124,0,56,0,0,0,0,0, + 0,0,0,0,0,0,12,0,252,1,252,0,124,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,56,0,56,0,120,0,112,0,112,48, + 224,127,128,255,0,124,0,23,36,108,24,1,0,6,0,0, + 126,0,0,254,0,0,62,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,7,252,30,1,240,30,1,192, + 30,3,128,30,7,0,30,14,0,30,56,0,30,112,0,30, + 224,0,31,224,0,30,240,0,30,248,0,30,120,0,30,60, + 0,30,30,0,30,15,0,30,15,128,30,7,192,30,3,224, + 30,1,224,63,0,254,255,192,124,12,36,72,13,1,0,3, + 0,63,0,127,0,31,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,31,128,255,240,36,22,110,39,2,0,12,7,192, + 124,0,254,31,224,255,0,62,49,227,143,0,30,96,247,7, + 128,30,192,254,7,128,31,128,252,7,128,31,0,248,7,128, + 31,0,248,7,128,30,0,240,7,128,30,0,240,7,128,30, + 0,240,7,128,30,0,240,7,128,30,0,240,7,128,30,0, + 240,7,128,30,0,240,7,128,30,0,240,7,128,30,0,240, + 7,128,30,0,240,7,128,30,0,240,7,128,30,0,240,7, + 128,127,131,252,31,192,255,199,254,63,240,23,22,66,26,2, + 0,12,7,192,254,15,224,62,49,224,30,96,240,30,192,240, + 30,128,240,31,0,240,31,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,127,131,248, + 255,199,254,20,22,66,24,2,0,0,252,0,7,255,0,14, + 15,128,28,7,192,56,3,192,56,3,224,112,1,224,112,1, + 240,240,0,240,240,0,240,240,0,240,240,0,240,240,0,240, + 240,0,240,248,0,224,120,1,224,124,1,192,60,1,192,62, + 3,128,31,7,0,15,254,0,3,240,0,21,33,99,25,2, + 245,12,7,128,254,31,192,62,35,224,30,65,240,30,129,240, + 31,0,240,31,0,248,30,0,248,30,0,120,30,0,120,30, + 0,120,30,0,120,30,0,120,30,0,120,30,0,112,30,0, + 112,30,0,224,30,0,224,31,1,192,31,195,128,30,255,0, + 30,62,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,127,0, + 0,255,224,0,22,33,99,25,2,245,0,252,48,3,255,96, + 7,15,224,30,3,224,28,1,224,56,1,224,120,1,224,112, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,1,224,120,1,224,120,1,224,124,3,224, + 62,7,224,31,29,224,15,249,224,3,225,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,3,240,0,31,252,17,22,66, + 19,1,0,4,15,0,126,63,128,254,127,128,30,227,128,30, + 195,128,31,129,0,31,128,0,31,0,0,31,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,63, + 128,0,255,224,0,15,22,44,19,2,0,15,192,63,248,120, + 120,112,56,240,16,240,0,248,0,252,0,127,0,63,192,31, + 240,7,248,1,252,0,126,0,62,128,30,128,30,192,30,224, + 60,240,120,255,240,31,192,16,30,60,17,0,0,3,0,7, + 0,15,0,15,0,15,0,15,0,15,0,15,0,63,255,255, + 255,15,4,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,1,7,135,7,254,3,240,24,22,66,25,1,0,6, + 0,112,254,7,240,126,7,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,1,240,31,2,240,15,12,255,15,248,252,3,224, + 112,23,22,66,24,0,0,255,192,254,62,0,60,30,0,56, + 30,0,48,15,0,112,15,0,112,7,0,96,7,128,224,7, + 128,192,3,193,192,3,193,192,1,193,128,1,227,128,1,227, + 0,0,243,0,0,247,0,0,118,0,0,126,0,0,126,0, + 0,60,0,0,60,0,0,16,0,33,22,110,34,0,0,255, + 192,96,63,128,62,0,224,15,0,30,0,224,14,0,30,0, + 240,14,0,14,1,240,12,0,15,1,240,12,0,15,1,248, + 28,0,7,3,248,28,0,7,3,56,24,0,7,131,60,24, + 0,3,135,28,56,0,3,134,30,48,0,3,198,30,48,0, + 1,206,14,112,0,1,204,15,96,0,1,252,15,96,0,1, + 252,7,96,0,0,248,7,224,0,0,248,7,192,0,0,240, + 3,192,0,0,112,3,192,0,0,96,3,0,0,24,22,66, + 24,0,0,127,227,254,127,227,254,31,128,248,15,128,224,7, + 128,192,3,193,192,1,227,128,0,247,0,0,254,0,0,124, + 0,0,60,0,0,62,0,0,127,0,0,239,0,1,199,128, + 3,131,192,3,1,224,7,0,240,14,0,248,62,0,252,255, + 131,255,255,131,255,24,33,99,24,255,245,127,224,255,31,0, + 62,15,0,28,15,0,24,7,128,56,7,128,56,3,128,48, + 3,192,112,3,192,96,1,224,224,1,224,224,0,224,192,0, + 241,192,0,241,192,0,121,128,0,123,128,0,59,0,0,63, + 0,0,63,0,0,30,0,0,30,0,0,12,0,0,12,0, + 0,28,0,0,24,0,0,56,0,0,112,0,0,112,0,0, + 224,0,63,192,0,127,128,0,255,0,0,124,0,0,17,22, + 66,21,2,0,127,255,128,127,255,128,96,15,0,96,15,0, + 64,30,0,64,60,0,0,60,0,0,120,0,0,240,0,0, + 240,0,1,224,0,3,192,0,3,192,0,7,128,0,15,0, + 0,14,0,0,30,0,128,60,0,128,120,0,128,120,1,128, + 255,255,128,255,255,128,13,45,90,16,2,249,0,8,0,56, + 0,112,1,224,1,192,3,128,3,128,7,128,7,128,7,128, + 7,128,7,128,7,192,3,192,3,192,3,192,3,192,3,192, + 3,128,7,128,7,0,30,0,126,0,255,0,7,128,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,7,192,7,128, + 7,128,7,128,7,128,7,128,7,128,3,128,3,192,1,192, + 0,224,0,120,0,24,4,49,49,11,4,246,112,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,224,13,45,90, + 16,1,249,192,0,240,0,56,0,28,0,30,0,14,0,15, + 0,15,0,15,0,15,0,15,0,15,0,31,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,15,0,7,240,3, + 248,3,192,7,0,15,0,14,0,30,0,30,0,30,0,30, + 0,30,0,31,0,15,0,15,0,15,0,15,0,15,0,14, + 0,30,0,28,0,56,0,112,0,224,0,128,0,21,8,24, + 23,1,11,7,128,8,15,224,24,31,240,16,63,252,48,49, + 255,224,96,127,192,64,31,128,192,15,0,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,11, + 0,0,6,35,35,13,3,243,56,124,252,252,252,248,112,0, + 16,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 120,120,120,120,120,124,124,124,124,120,96,18,30,90,23,2, + 255,0,96,0,0,96,0,0,96,0,0,96,0,0,255,0, + 3,255,128,15,255,192,30,99,128,60,97,128,56,97,0,120, + 96,0,112,96,0,240,96,0,240,96,0,240,96,0,240,96, + 0,240,96,0,240,96,0,248,96,0,120,96,0,124,96,192, + 62,97,128,63,231,128,31,255,0,15,252,0,3,248,0,0, + 96,0,0,96,0,0,96,0,0,96,0,19,29,87,23,2, + 0,0,127,0,1,255,224,3,131,224,7,1,192,6,0,192, + 14,0,192,14,0,192,30,0,64,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,255,248,0,255,248, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 28,0,0,28,0,32,28,0,32,24,0,96,56,0,224,63, + 255,224,127,255,224,192,255,224,15,15,30,23,4,7,128,2, + 192,6,103,204,63,248,56,56,112,28,96,12,96,12,96,12, + 96,12,48,24,56,56,127,252,231,206,192,6,25,28,112,23, + 254,0,126,0,255,128,254,0,63,128,31,0,30,0,15,128, + 60,0,7,192,120,0,3,192,112,0,3,224,240,0,1,224, + 224,0,0,241,224,0,0,241,192,0,0,123,192,0,0,127, + 128,0,0,63,0,0,0,63,0,0,0,30,0,0,0,30, + 0,0,15,255,252,0,15,255,252,0,0,30,0,0,0,30, + 0,0,0,30,0,0,0,30,0,0,0,30,0,0,0,30, + 0,0,0,30,0,0,0,30,0,0,0,127,128,0,1,255, + 224,0,4,49,49,11,4,246,112,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,224,0,0, + 0,0,0,112,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,224,19,34,102,24,2,0,1, + 248,0,7,254,0,30,31,0,60,7,0,60,6,0,60,0, + 0,62,0,0,63,0,0,31,128,0,31,224,0,31,248,0, + 63,252,0,121,255,0,240,127,128,240,63,192,240,15,192,240, + 7,224,248,3,224,124,1,224,126,1,224,63,129,192,31,225, + 192,7,251,128,3,255,0,0,255,0,0,63,128,0,15,128, + 16,7,128,16,7,128,24,7,128,28,7,0,30,15,0,31, + 254,0,3,240,0,15,5,10,19,2,27,112,14,240,30,240, + 30,240,30,224,28,30,30,120,34,2,0,0,31,224,0,0, + 255,252,0,1,224,30,0,7,128,7,128,14,0,1,192,28, + 3,240,224,24,15,252,96,48,60,60,48,112,112,8,56,96, + 224,0,24,97,224,0,24,193,224,0,12,195,192,0,12,195, + 192,0,12,195,192,0,12,195,192,0,12,195,192,0,12,195, + 192,0,12,195,224,0,12,97,224,0,24,97,240,8,24,112, + 248,12,56,48,124,48,48,24,63,224,96,28,15,128,224,14, + 0,1,192,7,128,7,128,1,224,30,0,0,255,252,0,0, + 31,224,0,11,15,30,12,1,14,15,0,31,0,51,128,97, + 128,97,128,3,128,29,128,97,128,193,128,193,128,239,128,253, + 224,121,128,255,192,255,192,18,21,63,23,2,0,0,128,64, + 1,128,192,3,1,128,7,3,0,14,7,0,14,14,0,28, + 30,0,60,60,0,120,60,0,240,120,0,240,120,0,248,120, + 0,120,60,0,60,60,0,28,30,0,14,14,0,14,7,0, + 7,3,0,3,1,128,1,128,192,0,128,64,20,10,30,23, + 1,4,127,255,240,255,255,240,0,0,112,0,0,112,0,0, + 112,0,0,112,0,0,112,0,0,112,0,0,112,0,0,96, + 14,2,4,16,1,11,127,252,255,248,15,17,34,17,1,17, + 7,192,31,240,56,56,96,12,79,132,196,70,132,66,132,194, + 135,130,133,130,132,130,196,198,68,100,106,60,56,56,31,240, + 7,192,16,2,4,24,4,28,127,255,255,254,11,11,22,17, + 3,18,15,0,63,192,113,224,96,224,224,224,224,224,224,224, + 224,192,241,128,127,0,62,0,17,22,66,20,1,3,0,192, + 0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,255,255,128,255,255,128,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + 0,0,0,0,0,0,0,0,0,0,127,255,128,255,255,128, + 13,17,34,17,2,15,7,192,31,240,112,248,96,120,224,120, + 0,120,0,112,0,224,1,224,3,192,7,128,15,0,30,0, + 60,8,120,24,255,248,255,248,14,18,36,16,1,14,15,128, + 63,224,113,240,224,240,192,240,0,240,1,224,7,128,15,224, + 1,240,0,120,0,60,0,60,0,60,128,120,224,248,63,224, + 15,128,10,10,20,15,5,25,7,128,7,192,15,0,15,0, + 30,0,60,0,56,0,112,0,96,0,192,0,25,33,132,26, + 1,245,6,0,24,0,254,0,248,0,126,0,120,0,30,0, + 120,0,30,0,120,0,30,0,120,0,30,0,120,0,30,0, + 120,0,30,0,120,0,30,0,120,0,30,0,120,0,30,0, + 120,0,30,0,120,0,30,0,120,0,30,0,120,0,31,0, + 248,0,31,1,248,0,31,131,248,0,31,255,121,0,27,254, + 127,128,25,252,126,0,24,240,56,0,24,0,0,0,24,0, + 0,0,24,0,0,0,28,0,0,0,28,0,0,0,28,0, + 0,0,30,0,0,0,30,0,0,0,31,0,0,0,31,0, + 0,0,24,0,0,0,23,36,108,26,1,250,1,255,254,15, + 255,254,31,7,252,60,7,112,120,7,112,120,7,112,240,7, + 112,240,7,112,240,7,112,240,7,112,240,7,112,248,7,112, + 120,7,112,124,7,112,62,7,112,31,135,112,15,255,112,1, + 255,112,0,7,112,0,7,112,0,7,112,0,7,112,0,7, + 112,0,7,112,0,7,112,0,7,112,0,7,112,0,7,112, + 0,7,112,0,7,112,0,7,112,0,7,112,0,7,112,0, + 7,112,0,31,248,0,63,254,4,5,5,7,2,14,112,240, + 240,240,224,8,10,10,11,2,246,24,56,48,62,127,15,15, + 30,120,224,13,17,34,16,2,15,3,128,31,128,255,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,15,192,127,248,12,15,30,14,1, + 14,15,128,63,192,49,224,96,96,192,112,192,48,192,48,192, + 48,224,48,224,96,120,192,63,128,31,0,255,240,255,240,18, + 21,63,23,3,0,64,64,0,224,96,0,96,48,0,48,24, + 0,56,28,0,28,14,0,14,15,0,15,7,128,7,135,128, + 7,195,192,3,195,192,7,195,192,7,135,128,15,7,128,30, + 15,0,28,14,0,56,28,0,48,56,0,112,48,0,96,96, + 0,192,64,0,24,29,87,28,2,0,4,0,4,60,0,14, + 204,0,24,12,0,56,12,0,48,12,0,112,12,0,224,12, + 0,192,12,1,192,12,3,128,12,3,0,12,7,0,12,6, + 0,127,142,0,0,28,0,0,24,4,0,56,28,0,112,28, + 0,96,44,0,224,108,1,192,76,1,192,140,3,129,12,3, + 3,12,7,3,255,14,7,254,12,0,12,28,0,12,56,0, + 127,24,29,87,28,2,0,4,0,6,60,0,14,204,0,28, + 12,0,24,12,0,56,12,0,112,12,0,112,12,0,224,12, + 0,192,12,1,192,12,3,128,12,3,0,12,7,0,127,142, + 0,0,14,0,0,28,60,0,24,255,0,57,199,0,115,131, + 0,99,3,0,224,2,1,192,4,1,128,8,3,128,16,7, + 0,32,7,0,65,14,0,129,12,1,255,28,1,255,25,29, + 116,28,1,0,15,128,3,0,31,192,7,0,49,192,14,0, + 112,192,12,0,0,192,28,0,1,128,24,0,15,0,56,0, + 1,192,112,0,0,192,96,0,0,192,224,0,0,193,192,0, + 0,193,128,0,193,195,128,0,127,135,0,0,30,7,0,0, + 0,14,2,0,0,12,14,0,0,28,14,0,0,56,22,0, + 0,48,38,0,0,112,102,0,0,224,198,0,0,224,134,0, + 1,193,134,128,3,131,255,0,3,128,6,0,7,0,6,0, + 6,0,6,0,14,0,63,128,17,35,105,21,2,243,0,224, + 0,1,240,0,3,240,0,3,240,0,3,224,0,1,192,0, + 0,0,0,0,0,0,0,0,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,1,224,0,1,192,0,3,192, + 0,3,128,0,7,0,0,15,0,0,30,0,0,60,0,0, + 60,0,0,120,0,0,120,0,0,240,0,0,240,3,128,240, + 7,128,240,7,128,240,7,128,248,15,0,120,15,0,126,30, + 0,63,248,0,15,224,0,28,41,164,29,0,0,0,128,0, + 0,1,192,0,0,3,240,0,0,1,248,0,0,0,124,0, + 0,0,31,0,0,0,7,128,0,0,1,192,0,0,0,128, + 0,0,0,0,0,0,0,0,0,0,2,0,0,0,7,0, + 0,0,15,0,0,0,15,0,0,0,31,128,0,0,31,128, + 0,0,27,128,0,0,59,192,0,0,57,192,0,0,49,224, + 0,0,113,224,0,0,112,224,0,0,96,240,0,0,224,240, + 0,0,224,112,0,0,192,120,0,1,192,120,0,1,192,56, + 0,1,255,252,0,3,255,252,0,3,128,30,0,3,0,30, + 0,7,0,30,0,7,0,15,0,6,0,15,0,14,0,15, + 0,14,0,7,128,12,0,7,128,62,0,7,192,255,192,63, + 240,28,41,164,29,0,0,0,0,32,0,0,0,56,0,0, + 0,252,0,0,1,248,0,0,3,224,0,0,15,128,0,0, + 30,0,0,0,56,0,0,0,32,0,0,0,0,0,0,0, + 0,0,0,0,2,0,0,0,7,0,0,0,15,0,0,0, + 15,0,0,0,31,128,0,0,31,128,0,0,27,128,0,0, + 59,192,0,0,57,192,0,0,49,224,0,0,113,224,0,0, + 112,224,0,0,96,240,0,0,224,240,0,0,224,112,0,0, + 192,120,0,1,192,120,0,1,192,56,0,1,255,252,0,3, + 255,252,0,3,128,30,0,3,0,30,0,7,0,30,0,7, + 0,15,0,6,0,15,0,14,0,15,0,14,0,7,128,12, + 0,7,128,62,0,7,192,255,192,63,240,28,41,164,29,0, + 0,0,6,0,0,0,15,0,0,0,31,128,0,0,63,192, + 0,0,121,224,0,0,240,240,0,1,192,56,0,1,128,24, + 0,1,0,16,0,0,0,0,0,0,0,0,0,0,2,0, + 0,0,7,0,0,0,15,0,0,0,15,0,0,0,31,128, + 0,0,31,128,0,0,27,128,0,0,59,192,0,0,57,192, + 0,0,49,224,0,0,113,224,0,0,112,224,0,0,96,240, + 0,0,224,240,0,0,224,112,0,0,192,120,0,1,192,120, + 0,1,192,56,0,1,255,252,0,3,255,252,0,3,128,30, + 0,3,0,30,0,7,0,30,0,7,0,15,0,6,0,15, + 0,14,0,15,0,14,0,7,128,12,0,7,128,62,0,7, + 192,255,192,63,240,28,39,156,29,0,0,0,16,8,0,0, + 124,12,0,0,254,28,0,1,255,248,0,1,135,240,0,3, + 3,224,0,2,1,0,0,0,0,0,0,0,0,0,0,0, + 2,0,0,0,7,0,0,0,15,0,0,0,15,0,0,0, + 31,128,0,0,31,128,0,0,27,128,0,0,59,192,0,0, + 57,192,0,0,49,224,0,0,113,224,0,0,112,224,0,0, + 96,240,0,0,224,240,0,0,224,112,0,0,192,120,0,1, + 192,120,0,1,192,56,0,1,255,252,0,3,255,252,0,3, + 128,30,0,3,0,30,0,7,0,30,0,7,0,15,0,6, + 0,15,0,14,0,15,0,14,0,7,128,12,0,7,128,62, + 0,7,192,255,192,63,240,28,38,152,29,0,0,0,128,32, + 0,0,224,56,0,1,224,120,0,1,224,120,0,1,224,120, + 0,0,128,32,0,0,0,0,0,0,0,0,0,0,2,0, + 0,0,7,0,0,0,15,0,0,0,15,0,0,0,31,128, + 0,0,31,128,0,0,27,128,0,0,59,192,0,0,57,192, + 0,0,49,224,0,0,113,224,0,0,112,224,0,0,96,240, + 0,0,224,240,0,0,224,112,0,0,192,120,0,1,192,120, + 0,1,192,56,0,1,255,252,0,3,255,252,0,3,128,30, + 0,3,0,30,0,7,0,30,0,7,0,15,0,6,0,15, + 0,14,0,15,0,14,0,7,128,12,0,7,128,62,0,7, + 192,255,192,63,240,28,42,168,29,0,0,0,2,0,0,0, + 15,128,0,0,31,192,0,0,24,192,0,0,48,192,0,0, + 48,192,0,0,48,192,0,0,63,128,0,0,31,0,0,0, + 8,0,0,0,0,0,0,0,0,0,0,0,2,0,0,0, + 7,0,0,0,15,0,0,0,15,0,0,0,31,128,0,0, + 31,128,0,0,27,128,0,0,59,192,0,0,57,192,0,0, + 49,224,0,0,113,224,0,0,112,224,0,0,96,240,0,0, + 224,240,0,0,224,112,0,0,192,120,0,1,192,120,0,1, + 192,56,0,1,255,252,0,3,255,252,0,3,128,30,0,3, + 0,30,0,7,0,30,0,7,0,15,0,6,0,15,0,14, + 0,15,0,14,0,7,128,12,0,7,128,62,0,7,192,255, + 192,63,240,36,30,150,37,0,0,0,127,255,255,192,0,31, + 255,255,224,0,7,252,0,192,0,7,60,0,192,0,7,60, + 0,192,0,14,60,0,192,0,14,60,0,0,0,30,60,0, + 0,0,28,60,0,0,0,28,60,0,0,0,60,60,0,0, + 0,56,60,0,0,0,120,60,0,0,0,127,255,255,0,0, + 127,255,255,0,0,240,60,6,0,0,224,60,0,0,1,224, + 60,0,0,1,192,60,0,0,1,192,60,0,0,3,128,60, + 0,0,3,128,60,0,0,7,128,60,0,0,7,0,60,0, + 0,7,0,60,0,16,14,0,60,0,48,14,0,60,0,48, + 30,0,62,0,112,62,0,127,255,224,255,193,255,255,224,22, + 40,120,26,2,246,0,31,224,0,255,252,1,192,252,7,128, + 56,14,0,16,14,0,0,28,0,0,56,0,0,56,0,0, + 120,0,0,112,0,0,112,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,248,0,0,120,0,0,124,0,0,60,0,0,62,0,8, + 31,0,60,15,128,240,15,255,224,3,255,128,0,254,0,0, + 24,0,0,16,0,0,28,0,0,62,0,0,63,0,0,15, + 0,0,15,0,0,30,0,0,120,0,1,192,0,21,41,123, + 24,1,0,4,0,0,14,0,0,31,0,0,15,192,0,3, + 224,0,0,240,0,0,60,0,0,14,0,0,4,0,0,0, + 0,0,0,0,255,255,224,127,255,240,30,0,96,30,0,96, + 30,0,96,30,0,96,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,31,255,128,31,255, + 128,30,3,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,8,30, + 0,24,30,0,24,31,0,56,127,255,240,255,255,240,21,41, + 123,24,1,0,0,1,0,0,3,192,0,7,224,0,15,192, + 0,63,0,0,124,0,0,240,0,1,192,0,1,0,0,0, + 0,0,0,0,0,255,255,224,127,255,240,30,0,96,30,0, + 96,30,0,96,30,0,96,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,31,255,128,31, + 255,128,30,3,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,8, + 30,0,24,30,0,24,31,0,56,127,255,240,255,255,240,21, + 41,123,24,1,0,0,48,0,0,120,0,0,252,0,1,254, + 0,3,207,0,7,7,0,14,1,128,28,0,192,16,0,128, + 0,0,0,0,0,0,255,255,224,127,255,240,30,0,96,30, + 0,96,30,0,96,30,0,96,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,31,255,128, + 31,255,128,30,3,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 8,30,0,24,30,0,24,31,0,56,127,255,240,255,255,240, + 21,38,114,24,1,0,4,1,0,15,3,192,15,3,192,15, + 3,192,14,3,128,4,1,0,0,0,0,0,0,0,255,255, + 224,127,255,240,30,0,96,30,0,96,30,0,96,30,0,96, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,31,255,128,31,255,128,30,3,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,8,30,0,24,30,0,24,31, + 0,56,127,255,240,255,255,240,13,41,82,14,255,0,32,0, + 112,0,252,0,126,0,31,0,7,128,1,224,0,112,0,32, + 0,0,0,0,31,248,15,240,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,15,240,31,248, + 13,41,82,14,2,0,0,64,0,112,1,248,3,240,7,192, + 31,0,60,0,112,0,64,0,0,0,0,0,255,192,127,128, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,127,128,255,192,15,41,82,14,255,0,1,128, + 3,192,7,224,15,240,30,120,56,60,112,12,224,6,64,4, + 0,0,0,0,31,248,15,240,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,15,240,31,248, + 14,38,76,14,0,0,64,16,112,28,240,60,240,60,224,56, + 64,16,0,0,0,0,63,240,31,224,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,31,224, + 63,240,25,30,120,28,1,0,7,254,0,0,255,255,192,0, + 127,3,240,0,15,0,248,0,15,0,124,0,15,0,62,0, + 15,0,30,0,15,0,31,0,15,0,15,0,15,0,15,0, + 15,0,15,128,15,0,7,128,15,0,7,128,15,0,7,128, + 255,254,7,128,255,252,7,128,15,0,7,128,15,0,7,128, + 15,0,7,128,15,0,7,0,15,0,15,0,15,0,15,0, + 15,0,30,0,15,0,30,0,15,0,60,0,15,0,124,0, + 15,0,248,0,15,3,224,0,31,255,192,0,127,254,0,0, + 27,39,156,31,2,0,0,32,16,0,0,124,12,0,0,254, + 24,0,1,255,240,0,3,15,240,0,3,3,224,0,2,1, + 0,0,0,0,0,0,0,0,0,0,252,0,63,224,124,0, + 15,128,30,0,7,0,31,0,7,0,31,0,7,0,31,128, + 7,0,31,192,7,0,29,192,7,0,28,224,7,0,28,240, + 7,0,28,120,7,0,28,56,7,0,28,60,7,0,28,30, + 7,0,28,14,7,0,28,15,7,0,28,7,135,0,28,7, + 135,0,28,3,199,0,28,1,231,0,28,1,231,0,28,0, + 247,0,28,0,127,0,28,0,127,0,28,0,63,0,28,0, + 31,0,28,0,31,0,28,0,15,0,62,0,7,0,255,128, + 3,0,25,41,164,29,2,0,2,0,0,0,3,128,0,0, + 7,192,0,0,7,224,0,0,1,248,0,0,0,124,0,0, + 0,30,0,0,0,7,128,0,0,1,0,0,0,0,0,0, + 0,0,0,0,0,63,0,0,0,255,224,0,3,193,240,0, + 7,0,248,0,14,0,124,0,28,0,62,0,60,0,30,0, + 56,0,31,0,120,0,15,0,120,0,15,0,112,0,15,128, + 240,0,7,128,240,0,7,128,240,0,7,128,240,0,7,128, + 240,0,7,128,240,0,7,128,240,0,7,128,240,0,7,128, + 248,0,7,0,120,0,15,0,120,0,15,0,124,0,14,0, + 60,0,28,0,62,0,28,0,31,0,56,0,15,128,112,0, + 7,193,224,0,3,255,128,0,0,254,0,0,25,41,164,29, + 2,0,0,0,128,0,0,0,224,0,0,1,240,0,0,7, + 240,0,0,15,192,0,0,30,0,0,0,56,0,0,0,224, + 0,0,0,128,0,0,0,0,0,0,0,0,0,0,0,63, + 0,0,0,255,224,0,3,193,240,0,7,0,248,0,14,0, + 124,0,28,0,62,0,60,0,30,0,56,0,31,0,120,0, + 15,0,120,0,15,0,112,0,15,128,240,0,7,128,240,0, + 7,128,240,0,7,128,240,0,7,128,240,0,7,128,240,0, + 7,128,240,0,7,128,240,0,7,128,248,0,7,0,120,0, + 15,0,120,0,15,0,124,0,14,0,60,0,28,0,62,0, + 28,0,31,0,56,0,15,128,112,0,7,193,224,0,3,255, + 128,0,0,254,0,0,25,41,164,29,2,0,0,28,0,0, + 0,62,0,0,0,126,0,0,0,127,0,0,0,227,128,0, + 1,193,192,0,3,128,224,0,6,0,112,0,4,0,32,0, + 0,0,0,0,0,0,0,0,0,63,0,0,0,255,224,0, + 3,193,240,0,7,0,248,0,14,0,124,0,28,0,62,0, + 60,0,30,0,56,0,31,0,120,0,15,0,120,0,15,0, + 112,0,15,128,240,0,7,128,240,0,7,128,240,0,7,128, + 240,0,7,128,240,0,7,128,240,0,7,128,240,0,7,128, + 240,0,7,128,248,0,7,0,120,0,15,0,120,0,15,0, + 124,0,14,0,60,0,28,0,62,0,28,0,31,0,56,0, + 15,128,112,0,7,193,224,0,3,255,128,0,0,254,0,0, + 25,39,156,29,2,0,0,64,32,0,1,248,48,0,3,252, + 48,0,3,255,224,0,6,31,192,0,4,15,128,0,12,2, + 0,0,0,0,0,0,0,0,0,0,0,63,0,0,0,255, + 224,0,3,193,240,0,7,0,248,0,14,0,124,0,28,0, + 62,0,60,0,30,0,56,0,31,0,120,0,15,0,120,0, + 15,0,112,0,15,128,240,0,7,128,240,0,7,128,240,0, + 7,128,240,0,7,128,240,0,7,128,240,0,7,128,240,0, + 7,128,240,0,7,128,248,0,7,0,120,0,15,0,120,0, + 15,0,124,0,14,0,60,0,28,0,62,0,28,0,31,0, + 56,0,15,128,112,0,7,193,224,0,3,255,128,0,0,254, + 0,0,25,38,152,29,2,0,1,0,64,0,3,128,224,0, + 3,128,224,0,7,129,224,0,3,128,224,0,2,0,128,0, + 0,0,0,0,0,0,0,0,0,63,0,0,0,255,224,0, + 3,193,240,0,7,0,248,0,14,0,124,0,28,0,62,0, + 60,0,30,0,56,0,31,0,120,0,15,0,120,0,15,0, + 112,0,15,128,240,0,7,128,240,0,7,128,240,0,7,128, + 240,0,7,128,240,0,7,128,240,0,7,128,240,0,7,128, + 240,0,7,128,248,0,7,0,120,0,15,0,120,0,15,0, + 124,0,14,0,60,0,28,0,62,0,28,0,31,0,56,0, + 15,128,112,0,7,193,224,0,3,255,128,0,0,254,0,0, + 15,14,28,20,2,6,96,6,240,14,120,28,60,56,30,112, + 15,224,7,192,7,192,15,224,30,112,60,56,120,28,240,14, + 96,6,25,31,124,29,2,255,0,63,7,128,1,255,207,0, + 3,193,254,0,7,0,126,0,14,0,60,0,28,0,126,0, + 56,0,126,0,56,0,255,0,120,1,239,0,120,1,239,0, + 112,3,207,128,240,7,135,128,240,7,7,128,240,15,7,128, + 240,30,7,128,240,60,7,128,240,60,7,128,240,120,7,128, + 240,240,7,128,240,224,7,0,121,224,7,0,123,192,15,0, + 123,128,14,0,63,128,12,0,63,0,28,0,30,0,56,0, + 31,0,112,0,63,193,224,0,121,255,128,0,240,126,0,0, + 192,0,0,0,27,41,164,31,2,0,0,128,0,0,1,192, + 0,0,3,240,0,0,1,248,0,0,0,124,0,0,0,30, + 0,0,0,7,128,0,0,1,192,0,0,0,128,0,0,0, + 0,0,0,0,0,0,255,192,127,224,127,128,63,192,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 30,0,15,0,30,0,15,0,30,0,7,128,60,0,7,192, + 120,0,3,224,240,0,1,255,224,0,0,63,128,0,27,41, + 164,31,2,0,0,0,32,0,0,0,120,0,0,0,252,0, + 0,1,248,0,0,3,224,0,0,15,128,0,0,30,0,0, + 0,56,0,0,0,32,0,0,0,0,0,0,0,0,0,0, + 255,192,127,224,127,128,63,192,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,30,0,15,0,30,0, + 15,0,30,0,7,128,60,0,7,192,120,0,3,224,240,0, + 1,255,224,0,0,63,128,0,27,41,164,31,2,0,0,6, + 0,0,0,15,0,0,0,31,128,0,0,63,192,0,0,121, + 224,0,0,224,240,0,1,192,48,0,3,128,24,0,1,0, + 16,0,0,0,0,0,0,0,0,0,255,192,127,224,127,128, + 63,192,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,15,0,30,0,15,0,30,0,15,0,30,0, + 15,0,30,0,30,0,15,0,30,0,15,0,30,0,7,128, + 60,0,7,192,120,0,3,224,240,0,1,255,224,0,0,63, + 128,0,27,38,152,31,2,0,0,128,32,0,0,224,56,0, + 1,224,120,0,1,224,120,0,1,192,112,0,0,128,32,0, + 0,0,0,0,0,0,0,0,255,192,127,224,127,128,63,192, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,15,0,30,0,15,0,30,0,15,0,30,0,15,0, + 30,0,30,0,15,0,30,0,15,0,30,0,7,128,60,0, + 7,192,120,0,3,224,240,0,1,255,224,0,0,63,128,0, + 28,41,164,29,0,0,0,0,32,0,0,0,56,0,0,0, + 252,0,0,1,248,0,0,3,224,0,0,7,128,0,0,30, + 0,0,0,56,0,0,0,32,0,0,0,0,0,0,0,0, + 0,0,252,0,63,240,254,0,63,240,31,0,15,128,15,0, + 7,0,15,128,14,0,7,192,14,0,3,192,28,0,3,224, + 60,0,1,224,56,0,0,240,120,0,0,248,112,0,0,120, + 224,0,0,125,224,0,0,61,192,0,0,63,192,0,0,31, + 128,0,0,31,128,0,0,15,0,0,0,15,0,0,0,15, + 0,0,0,15,0,0,0,15,0,0,0,15,0,0,0,15, + 0,0,0,15,0,0,0,15,0,0,0,15,0,0,0,15, + 0,0,0,63,192,0,0,255,240,0,21,30,90,25,2,0, + 255,224,0,127,128,0,30,0,0,30,0,0,30,0,0,30, + 0,0,31,254,0,31,255,128,30,15,192,30,3,224,30,1, + 240,30,0,248,30,0,120,30,0,120,30,0,120,30,0,120, + 30,0,120,30,0,120,30,0,240,30,0,240,30,1,224,31, + 7,192,30,255,128,30,124,0,30,0,0,30,0,0,30,0, + 0,30,0,0,127,128,0,255,224,0,25,36,144,27,1,0, + 0,31,128,0,0,127,224,0,1,195,240,0,3,128,248,0, + 7,0,120,0,7,0,124,0,14,0,60,0,14,0,60,0, + 14,0,60,0,30,0,60,0,30,0,60,0,30,0,120,0, + 30,1,248,0,30,7,240,0,30,15,192,0,30,31,0,0, + 30,60,0,0,30,60,0,0,30,60,0,0,30,62,0,0, + 30,63,0,0,30,31,192,0,30,15,240,0,30,3,252,0, + 30,0,254,0,30,0,127,0,30,0,31,128,30,0,15,128, + 30,0,7,128,30,32,7,128,30,48,7,128,30,48,7,0, + 30,56,15,0,30,60,30,0,62,63,252,0,254,7,224,0, + 20,35,105,22,2,0,30,0,0,62,0,0,31,0,0,15, + 0,0,7,128,0,3,192,0,1,192,0,0,224,0,0,96, + 0,0,48,0,0,0,0,0,0,0,0,0,0,1,248,0, + 15,254,0,28,30,0,120,15,0,112,15,0,240,15,0,128, + 15,0,0,15,0,0,15,0,0,255,0,7,255,0,31,143, + 0,62,15,0,120,15,0,248,15,0,240,15,0,240,15,0, + 240,31,0,240,63,0,120,239,32,127,143,240,30,7,128,20, + 35,105,22,2,0,0,15,0,0,31,0,0,30,0,0,60, + 0,0,56,0,0,112,0,0,112,0,0,224,0,1,192,0, + 1,128,0,0,0,0,0,0,0,0,0,0,1,248,0,15, + 254,0,28,30,0,120,15,0,112,15,0,240,15,0,128,15, + 0,0,15,0,0,15,0,0,255,0,7,255,0,31,143,0, + 62,15,0,120,15,0,248,15,0,240,15,0,240,15,0,240, + 31,0,240,63,0,120,239,32,127,143,240,30,7,128,20,34, + 102,22,2,0,0,224,0,1,240,0,3,240,0,7,56,0, + 6,28,0,12,14,0,24,6,0,48,3,0,32,1,128,0, + 0,0,0,0,0,0,0,0,1,248,0,15,254,0,28,30, + 0,120,15,0,112,15,0,240,15,0,128,15,0,0,15,0, + 0,15,0,0,255,0,7,255,0,31,143,0,62,15,0,120, + 15,0,248,15,0,240,15,0,240,15,0,240,31,0,240,63, + 0,120,239,32,127,143,240,30,7,128,20,32,96,22,2,0, + 7,0,128,15,193,128,31,193,0,63,243,0,48,254,0,96, + 56,0,0,0,0,0,0,0,0,0,0,0,0,0,1,248, + 0,15,254,0,28,30,0,120,15,0,112,15,0,240,15,0, + 128,15,0,0,15,0,0,15,0,0,255,0,7,255,0,31, + 143,0,62,15,0,120,15,0,248,15,0,240,15,0,240,15, + 0,240,31,0,240,63,0,120,239,32,127,143,240,30,7,128, + 20,32,96,22,2,0,28,7,0,28,7,0,60,15,0,60, + 15,0,24,6,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,1,248,0,15,254,0,28,30,0,120,15,0, + 112,15,0,240,15,0,128,15,0,0,15,0,0,15,0,0, + 255,0,7,255,0,31,143,0,62,15,0,120,15,0,248,15, + 0,240,15,0,240,15,0,240,31,0,240,63,0,120,239,32, + 127,143,240,30,7,128,20,34,102,22,2,0,0,240,0,1, + 248,0,3,24,0,3,24,0,6,24,0,6,24,0,7,56, + 0,3,240,0,1,192,0,0,0,0,0,0,0,0,0,0, + 1,248,0,15,254,0,28,30,0,120,15,0,112,15,0,240, + 15,0,128,15,0,0,15,0,0,15,0,0,255,0,7,255, + 0,31,143,0,62,15,0,120,15,0,248,15,0,240,15,0, + 240,15,0,240,31,0,240,63,0,120,239,32,127,143,240,30, + 7,128,29,22,88,33,2,0,1,248,31,128,7,252,127,192, + 28,62,225,224,56,31,192,240,112,15,128,112,240,15,128,120, + 240,15,0,120,192,15,0,120,0,127,255,248,3,255,255,240, + 15,143,0,0,30,15,0,0,60,15,0,0,120,15,0,0, + 240,15,0,0,240,15,128,0,240,31,128,24,240,63,192,48, + 248,243,224,240,127,227,255,192,127,128,255,128,30,0,126,0, + 18,32,96,21,2,246,0,127,0,1,255,192,7,7,192,14, + 1,128,28,0,128,56,0,0,120,0,0,112,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,248,0,0,120,1,0,124,3,128,62,7,0,31, + 254,0,31,248,0,7,240,0,0,192,0,0,128,0,0,224, + 0,0,240,0,1,248,0,0,120,0,0,120,0,0,240,0, + 3,192,0,14,0,0,18,35,105,22,2,0,14,0,0,31, + 0,0,15,128,0,7,128,0,3,192,0,1,192,0,0,224, + 0,0,112,0,0,48,0,0,24,0,0,0,0,0,0,0, + 0,0,0,0,248,0,7,254,0,14,15,0,28,7,128,56, + 7,128,56,3,192,112,3,192,112,3,192,255,255,192,255,255, + 128,240,0,0,240,0,0,240,0,0,240,0,0,248,0,0, + 120,0,0,120,0,0,124,0,192,62,1,128,31,7,0,15, + 254,0,3,248,0,18,35,105,22,2,0,0,7,0,0,15, + 128,0,15,0,0,30,0,0,60,0,0,56,0,0,112,0, + 0,96,0,0,192,0,0,128,0,0,0,0,0,0,0,0, + 0,0,0,248,0,7,254,0,14,15,0,28,7,128,56,7, + 128,56,3,192,112,3,192,112,3,192,255,255,192,255,255,128, + 240,0,0,240,0,0,240,0,0,240,0,0,248,0,0,120, + 0,0,120,0,0,124,0,192,62,1,128,31,7,0,15,254, + 0,3,248,0,18,34,102,22,2,0,0,240,0,0,240,0, + 1,248,0,3,156,0,7,14,0,14,6,0,12,3,0,24, + 1,128,16,0,128,0,0,0,0,0,0,0,0,0,0,248, + 0,7,254,0,14,15,0,28,7,128,56,7,128,56,3,192, + 112,3,192,112,3,192,255,255,192,255,255,128,240,0,0,240, + 0,0,240,0,0,240,0,0,248,0,0,120,0,0,120,0, + 0,124,0,192,62,1,128,31,7,0,15,254,0,3,248,0, + 18,32,96,22,2,0,14,3,128,30,7,128,30,7,128,30, + 7,128,28,7,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,248,0,7,254,0,14,15,0,28,7,128, + 56,7,128,56,3,192,112,3,192,112,3,192,255,255,192,255, + 255,128,240,0,0,240,0,0,240,0,0,240,0,0,248,0, + 0,120,0,0,120,0,0,124,0,192,62,1,128,31,7,0, + 15,254,0,3,248,0,12,35,70,13,0,0,240,0,248,0, + 120,0,60,0,28,0,14,0,7,0,3,0,1,128,0,128, + 0,0,0,0,0,0,1,128,31,128,63,128,15,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,15,192, + 63,240,12,35,70,13,2,0,0,224,1,240,3,224,3,192, + 7,128,7,0,14,0,28,0,24,0,48,0,0,0,0,0, + 0,0,6,0,126,0,254,0,62,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,63,0,255,192,15,34, + 68,13,255,0,3,128,7,192,7,224,14,240,28,112,56,56, + 112,12,96,6,192,2,0,0,0,0,0,0,0,192,15,192, + 31,192,7,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,7,224,31,248,14,32,64,13,0,0,96,24, + 240,60,240,60,224,56,224,56,0,0,0,0,0,0,0,0, + 0,0,1,128,31,128,63,128,15,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,15,192,63,240,20,34, + 102,24,2,0,3,0,0,31,192,128,31,225,224,1,255,192, + 0,126,0,0,252,0,3,254,0,15,143,0,4,7,128,0, + 3,128,0,3,192,0,1,192,1,241,224,7,255,224,14,31, + 224,28,7,240,56,3,240,56,1,240,120,1,240,112,0,240, + 240,0,240,240,0,240,240,0,240,240,0,240,240,0,224,240, + 0,224,248,1,224,120,1,192,124,1,192,124,3,128,62,7, + 0,31,14,0,15,252,0,3,240,0,23,32,96,26,2,0, + 1,224,32,3,240,48,7,248,96,7,252,192,14,63,128,8, + 15,0,0,0,0,0,0,0,0,0,0,0,0,0,12,7, + 192,254,15,224,62,49,224,30,96,240,30,192,240,30,128,240, + 31,0,240,31,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,127,131,248,255,199,254, + 20,35,105,24,2,0,15,0,0,15,0,0,7,128,0,3, + 192,0,1,192,0,0,224,0,0,112,0,0,112,0,0,56, + 0,0,24,0,0,0,0,0,0,0,0,0,0,0,252,0, + 7,255,0,14,15,128,28,7,192,56,3,192,56,3,224,112, + 1,224,112,1,240,240,0,240,240,0,240,240,0,240,240,0, + 240,240,0,240,240,0,240,248,0,224,120,1,224,124,1,192, + 60,1,192,62,3,128,31,7,0,15,254,0,3,240,0,20, + 35,105,24,2,0,0,7,128,0,7,192,0,15,128,0,15, + 0,0,30,0,0,60,0,0,56,0,0,112,0,0,96,0, + 0,192,0,0,0,0,0,0,0,0,0,0,0,252,0,7, + 255,0,14,15,128,28,7,192,56,3,192,56,3,224,112,1, + 224,112,1,240,240,0,240,240,0,240,240,0,240,240,0,240, + 240,0,240,240,0,240,248,0,224,120,1,224,124,1,192,60, + 1,192,62,3,128,31,7,0,15,254,0,3,240,0,20,34, + 102,24,2,0,0,112,0,0,248,0,1,252,0,1,220,0, + 3,142,0,7,7,0,14,3,128,12,1,192,24,0,192,0, + 0,0,0,0,0,0,0,0,0,252,0,7,255,0,14,15, + 128,28,7,192,56,3,192,56,3,224,112,1,224,112,1,240, + 240,0,240,240,0,240,240,0,240,240,0,240,240,0,240,240, + 0,240,248,0,224,120,1,224,124,1,192,60,1,192,62,3, + 128,31,7,0,15,254,0,3,240,0,20,32,96,24,2,0, + 3,192,64,7,224,96,15,240,192,15,249,128,28,127,0,16, + 30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,252, + 0,7,255,0,14,15,128,28,7,192,56,3,192,56,3,224, + 112,1,224,112,1,240,240,0,240,240,0,240,240,0,240,240, + 0,240,240,0,240,240,0,240,248,0,224,120,1,224,124,1, + 192,60,1,192,62,3,128,31,7,0,15,254,0,3,240,0, + 20,32,96,24,2,0,6,1,128,15,3,192,15,3,192,14, + 3,128,14,3,128,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,252,0,7,255,0,14,15,128,28,7,192, + 56,3,192,56,3,224,112,1,224,112,1,240,240,0,240,240, + 0,240,240,0,240,240,0,240,240,0,240,240,0,240,248,0, + 224,120,1,224,124,1,192,60,1,192,62,3,128,31,7,0, + 15,254,0,3,240,0,17,15,45,20,1,6,0,224,0,1, + 224,0,1,224,0,1,192,0,0,0,0,0,0,0,0,0, + 0,127,255,128,255,255,128,0,0,0,0,0,0,0,224,0, + 1,224,0,1,224,0,1,192,0,20,24,72,24,2,255,0, + 0,48,1,248,112,7,254,224,14,15,192,28,7,192,56,3, + 224,56,7,224,112,15,224,112,28,240,240,24,240,240,56,240, + 240,112,240,240,224,240,240,192,240,241,192,240,243,128,224,255, + 0,224,126,1,192,126,1,192,62,3,128,63,7,0,119,254, + 0,225,248,0,128,0,0,24,35,105,25,1,0,3,128,0, + 7,192,0,3,192,0,1,224,0,0,240,0,0,112,0,0, + 56,0,0,24,0,0,12,0,0,4,0,0,0,0,0,0, + 0,0,0,0,6,0,112,254,7,240,126,7,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,1,240,31,2,240,15,12,255, + 15,248,252,3,224,112,24,35,105,25,1,0,0,1,192,0, + 3,224,0,7,192,0,7,128,0,15,0,0,14,0,0,28, + 0,0,56,0,0,48,0,0,96,0,0,0,0,0,0,0, + 0,0,0,6,0,112,254,7,240,126,7,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,1,240,31,2,240,15,12,255,15, + 248,252,3,224,112,24,34,102,25,1,0,0,56,0,0,124, + 0,0,126,0,0,231,0,1,195,0,3,129,128,3,0,192, + 6,0,96,12,0,32,0,0,0,0,0,0,0,0,0,6, + 0,112,254,7,240,126,7,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,1,240,31,2,240,15,12,255,15,248,252,3,224, + 112,24,32,96,25,1,0,3,0,192,7,129,224,7,129,224, + 7,129,224,7,1,192,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,6,0,112,254,7,240,126,7,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,1,240,31,2,240,15,12, + 255,15,248,252,3,224,112,24,46,138,24,255,245,0,0,240, + 0,0,248,0,1,224,0,3,224,0,3,192,0,7,128,0, + 7,0,0,14,0,0,12,0,0,24,0,0,0,0,0,0, + 0,0,0,0,127,224,255,31,0,62,15,0,28,15,0,24, + 7,128,56,7,128,56,3,128,48,3,192,112,3,192,96,1, + 224,224,1,224,224,0,224,192,0,241,192,0,241,192,0,121, + 128,0,123,128,0,59,0,0,63,0,0,63,0,0,30,0, + 0,30,0,0,12,0,0,12,0,0,28,0,0,24,0,0, + 56,0,0,112,0,0,112,0,0,224,0,63,192,0,127,128, + 0,255,0,0,124,0,0,21,47,141,25,2,245,6,0,0, + 126,0,0,254,0,0,62,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,15,0,28,63,192,28,99,224, + 28,193,224,29,129,240,31,0,240,31,0,248,30,0,248,30, + 0,120,30,0,120,30,0,120,30,0,120,30,0,120,30,0, + 120,30,0,112,30,0,112,30,0,224,30,0,224,31,129,192, + 31,195,128,31,255,0,30,124,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,63,0,0,255,224,0,24,43,129,24,255,245, + 0,192,48,1,192,112,1,224,120,3,192,240,1,128,96,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,127,224, + 255,31,0,62,15,0,28,15,0,24,7,128,56,7,128,56, + 3,128,48,3,192,112,3,192,96,1,224,224,1,224,224,0, + 224,192,0,241,192,0,241,192,0,121,128,0,123,128,0,59, + 0,0,63,0,0,63,0,0,30,0,0,30,0,0,12,0, + 0,12,0,0,28,0,0,24,0,0,56,0,0,112,0,0, + 112,0,0,224,0,63,192,0,127,128,0,255,0,0,124,0, + 0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--48-480-72-72-P-218-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 29 + Calculated Max Values w=20 h=46 x= 3 y=17 dx=23 dy= 0 ascent=38 len=138 + Font Bounding box w=71 h=68 x=-24 y=-17 + Calculated Min Values x= 0 y=-8 dx= 0 dy= 0 + Pure Font ascent =29 descent= 0 + X Font ascent =29 descent= 0 + Max Font ascent =38 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr30n[1252] U8G_SECTION(".progmem.u8g_font_gdr30n") = { + 0,71,68,232,239,29,0,0,0,0,42,57,0,38,248,29, + 0,18,20,60,21,2,17,0,192,0,1,192,0,1,192,0, + 1,192,0,193,193,0,240,195,192,248,207,192,124,223,0,15, + 252,0,3,224,0,3,224,0,15,252,0,60,223,0,248,207, + 128,240,195,128,64,193,128,1,192,0,1,192,0,1,192,0, + 1,128,0,17,17,51,20,1,5,0,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + 0,255,255,128,255,255,128,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,1,128,0,7,13,13,11, + 2,249,8,60,254,254,30,30,30,28,28,56,48,96,64,14, + 2,4,16,1,11,127,252,255,248,6,6,6,11,3,255,56, + 124,252,252,248,112,20,46,138,23,1,248,0,0,48,0,0, + 240,0,0,240,0,0,224,0,1,224,0,1,192,0,1,192, + 0,3,192,0,3,128,0,7,128,0,7,128,0,7,0,0, + 15,0,0,15,0,0,14,0,0,30,0,0,28,0,0,28, + 0,0,60,0,0,56,0,0,120,0,0,120,0,0,112,0, + 0,240,0,0,224,0,0,224,0,1,224,0,1,192,0,3, + 192,0,3,192,0,3,128,0,7,128,0,7,128,0,7,0, + 0,15,0,0,14,0,0,30,0,0,30,0,0,28,0,0, + 60,0,0,60,0,0,56,0,0,120,0,0,112,0,0,240, + 0,0,192,0,0,19,29,87,23,2,0,1,248,0,7,252, + 0,14,30,0,28,15,0,24,7,128,56,7,128,56,3,192, + 112,3,192,112,3,192,112,3,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,1,192,120,1,192,120,3,192,120,3,128, + 60,3,128,60,3,0,30,7,0,15,14,0,7,252,0,3, + 240,0,17,29,87,23,3,0,0,96,0,1,224,0,15,224, + 0,127,224,0,255,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,3,240,0,63,254,0,127,255,128,17, + 29,87,22,2,0,1,248,0,7,254,0,28,31,0,56,15, + 0,120,15,128,112,7,128,240,7,128,224,7,128,0,7,128, + 0,7,128,0,15,0,0,15,0,0,30,0,0,30,0,0, + 60,0,0,120,0,0,240,0,0,240,0,1,224,0,3,192, + 0,7,128,0,15,0,0,15,0,0,30,0,128,60,0,128, + 120,0,128,240,1,128,255,255,128,255,255,128,18,29,87,22, + 1,0,1,248,0,7,254,0,30,31,0,60,15,0,56,7, + 128,120,7,128,112,7,128,0,7,128,0,7,0,0,15,0, + 0,30,0,0,60,0,0,248,0,3,254,0,0,63,0,0, + 15,128,0,7,128,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,7,128,128,7,128,224,15,0, + 120,62,0,63,252,0,7,224,0,19,29,87,23,1,0,0, + 3,0,0,15,0,0,31,0,0,63,0,0,127,0,0,127, + 0,0,239,0,0,207,0,1,207,0,3,143,0,3,143,0, + 7,15,0,14,15,0,14,15,0,28,15,0,24,15,0,56, + 15,0,112,15,0,112,15,0,255,255,224,255,255,192,0,15, + 0,0,15,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,63,128,1,255,224,18,29,87,23,2,0,0,0,128,0, + 1,128,31,255,0,31,254,0,24,0,0,24,0,0,24,0, + 0,24,0,0,56,0,0,56,0,0,56,0,0,63,240,0, + 63,252,0,120,63,0,32,15,0,0,7,128,0,7,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 128,0,7,128,128,7,128,224,15,0,120,62,0,63,252,0, + 7,240,0,18,29,87,23,3,0,0,7,0,0,63,0,0, + 248,0,1,224,0,3,192,0,15,0,0,14,0,0,30,0, + 0,60,0,0,56,0,0,120,0,0,120,248,0,119,254,0, + 254,31,0,248,15,128,240,7,128,240,7,192,240,3,192,240, + 3,192,240,3,192,240,3,192,248,3,192,120,3,128,120,3, + 128,60,7,128,60,7,0,31,14,0,15,252,0,3,240,0, + 19,27,81,23,2,0,127,255,192,127,255,224,96,1,192,64, + 3,192,192,3,128,0,3,128,0,7,0,0,7,0,0,14, + 0,0,14,0,0,28,0,0,28,0,0,56,0,0,56,0, + 0,56,0,0,112,0,0,112,0,0,224,0,0,224,0,1, + 192,0,1,192,0,3,192,0,7,128,0,7,128,0,15,0, + 0,15,0,0,28,0,0,18,29,87,22,2,0,3,248,0, + 15,254,0,28,31,0,56,15,0,48,7,128,112,7,128,112, + 7,128,112,7,128,112,7,0,120,15,0,62,30,0,31,188, + 0,15,240,0,3,252,0,7,254,0,30,63,0,60,15,128, + 120,7,192,112,7,192,240,3,192,240,3,192,240,3,192,240, + 3,192,240,3,128,120,7,128,124,7,0,62,14,0,31,252, + 0,7,224,0,19,30,90,23,2,255,1,248,0,7,254,0, + 14,31,0,28,15,128,56,7,128,120,3,192,112,3,192,240, + 3,224,240,1,224,240,1,224,240,1,224,240,1,224,248,1, + 224,120,3,224,124,7,224,62,13,224,31,249,224,7,225,192, + 0,3,192,0,3,192,0,7,128,0,7,128,0,15,0,0, + 30,0,0,60,0,0,120,0,0,240,0,3,224,0,31,128, + 0,56,0,0}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--48-480-72-72-P-218-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 30, '1' Height: 29 + Calculated Max Values w=40 h=49 x= 4 y=25 dx=41 dy= 0 ascent=39 len=195 + Font Bounding box w=71 h=68 x=-24 y=-17 + Calculated Min Values x=-5 y=-11 dx= 0 dy= 0 + Pure Font ascent =30 descent=-11 + X Font ascent =38 descent=-11 + Max Font ascent =39 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr30r[8588] U8G_SECTION(".progmem.u8g_font_gdr30r") = { + 0,71,68,232,239,30,9,231,23,124,32,127,245,39,245,38, + 245,0,0,0,11,0,0,6,36,36,13,3,255,12,60,124, + 124,124,124,124,120,120,120,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,0,0,0,0,56,124,252,252,248, + 112,13,16,32,20,4,19,48,56,240,248,240,248,240,240,240, + 240,240,240,240,112,240,112,240,112,240,112,112,112,112,112,96, + 112,96,112,96,112,96,112,21,27,81,23,2,3,0,48,96, + 0,112,224,0,96,192,0,224,192,0,225,192,0,225,192,0, + 193,128,1,195,128,31,255,248,31,255,248,3,135,0,3,135, + 0,3,7,0,3,6,0,7,14,0,7,14,0,6,14,0, + 255,255,192,255,255,192,12,28,0,12,24,0,28,56,0,28, + 56,0,24,48,0,56,112,0,56,112,0,48,96,0,20,36, + 108,23,1,252,0,96,0,0,96,0,0,96,0,0,96,0, + 3,254,0,15,255,128,62,127,192,120,103,128,112,99,128,240, + 96,0,240,96,0,240,96,0,248,96,0,126,96,0,127,224, + 0,63,240,0,15,254,0,1,255,0,0,127,192,0,111,224, + 0,99,224,0,97,240,0,96,240,0,96,240,64,96,240,96, + 96,240,112,96,224,120,97,224,124,99,192,127,255,128,31,255, + 0,7,248,0,0,96,0,0,96,0,0,96,0,0,96,0, + 31,30,120,34,1,255,7,192,0,96,31,224,1,240,60,240, + 1,192,120,120,3,192,112,120,7,128,240,60,7,0,240,60, + 14,0,240,60,30,0,240,60,60,0,240,60,56,0,240,60, + 120,0,120,56,240,0,120,120,224,0,60,241,192,0,31,227, + 195,224,15,135,143,240,0,7,30,120,0,15,60,60,0,30, + 56,60,0,28,120,30,0,56,120,30,0,120,120,30,0,240, + 120,30,0,224,120,30,1,192,120,30,3,192,60,28,3,128, + 60,60,7,0,30,120,15,0,15,240,12,0,7,192,30,34, + 136,32,2,0,0,63,0,0,0,255,128,0,1,199,192,0, + 3,131,224,0,7,1,224,0,7,1,224,0,15,1,224,0, + 15,1,224,0,15,3,224,0,15,3,192,0,15,135,192,0, + 15,143,128,0,7,191,0,0,7,254,0,0,7,248,0,0, + 7,240,0,0,15,240,63,248,31,240,127,252,62,120,30,48, + 60,124,15,0,124,60,15,0,120,30,7,0,240,31,7,0, + 240,15,135,0,240,7,198,0,240,3,198,0,240,3,236,0, + 240,1,252,0,248,0,252,0,120,0,126,0,60,0,255,0, + 63,3,143,200,15,255,7,240,3,248,3,192,4,16,16,12, + 4,19,48,240,240,240,240,240,240,240,240,240,112,112,96,96, + 96,96,11,45,90,15,3,249,0,32,0,224,1,192,3,128, + 3,128,7,0,14,0,14,0,28,0,28,0,60,0,56,0, + 56,0,120,0,120,0,120,0,112,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,240,0, + 240,0,120,0,120,0,120,0,120,0,56,0,60,0,60,0, + 28,0,30,0,14,0,15,0,7,0,3,128,1,192,0,224, + 0,32,11,45,90,15,1,249,128,0,224,0,112,0,56,0, + 28,0,30,0,14,0,15,0,7,0,7,128,7,128,3,128, + 3,192,3,192,3,192,3,192,1,224,1,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,224,1,224,1,224,1,224, + 1,192,3,192,3,192,3,192,3,128,3,128,7,128,7,0, + 15,0,14,0,14,0,28,0,56,0,56,0,112,0,224,0, + 128,0,18,20,60,21,2,17,0,192,0,1,192,0,1,192, + 0,1,192,0,193,193,0,240,195,192,248,207,192,124,223,0, + 15,252,0,3,224,0,3,224,0,15,252,0,60,223,0,248, + 207,128,240,195,128,64,193,128,1,192,0,1,192,0,1,192, + 0,1,128,0,17,17,51,20,1,5,0,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,1,192,0,1,192,0,1, + 192,0,255,255,128,255,255,128,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,1,128,0,7,13,13, + 11,2,249,8,60,254,254,30,30,30,28,28,56,48,96,64, + 14,2,4,16,1,11,127,252,255,248,6,6,6,11,3,255, + 56,124,252,252,248,112,20,46,138,23,1,248,0,0,48,0, + 0,240,0,0,240,0,0,224,0,1,224,0,1,192,0,1, + 192,0,3,192,0,3,128,0,7,128,0,7,128,0,7,0, + 0,15,0,0,15,0,0,14,0,0,30,0,0,28,0,0, + 28,0,0,60,0,0,56,0,0,120,0,0,120,0,0,112, + 0,0,240,0,0,224,0,0,224,0,1,224,0,1,192,0, + 3,192,0,3,192,0,3,128,0,7,128,0,7,128,0,7, + 0,0,15,0,0,14,0,0,30,0,0,30,0,0,28,0, + 0,60,0,0,60,0,0,56,0,0,120,0,0,112,0,0, + 240,0,0,192,0,0,19,29,87,23,2,0,1,248,0,7, + 252,0,14,30,0,28,15,0,24,7,128,56,7,128,56,3, + 192,112,3,192,112,3,192,112,3,224,240,1,224,240,1,224, + 240,1,224,240,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,192,120,1,192,120,3,192,120,3, + 128,60,3,128,60,3,0,30,7,0,15,14,0,7,252,0, + 3,240,0,17,29,87,23,3,0,0,96,0,1,224,0,15, + 224,0,127,224,0,255,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,3,240,0,63,254,0,127,255,128, + 17,29,87,22,2,0,1,248,0,7,254,0,28,31,0,56, + 15,0,120,15,128,112,7,128,240,7,128,224,7,128,0,7, + 128,0,7,128,0,15,0,0,15,0,0,30,0,0,30,0, + 0,60,0,0,120,0,0,240,0,0,240,0,1,224,0,3, + 192,0,7,128,0,15,0,0,15,0,0,30,0,128,60,0, + 128,120,0,128,240,1,128,255,255,128,255,255,128,18,29,87, + 22,1,0,1,248,0,7,254,0,30,31,0,60,15,0,56, + 7,128,120,7,128,112,7,128,0,7,128,0,7,0,0,15, + 0,0,30,0,0,60,0,0,248,0,3,254,0,0,63,0, + 0,15,128,0,7,128,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,7,128,128,7,128,224,15, + 0,120,62,0,63,252,0,7,224,0,19,29,87,23,1,0, + 0,3,0,0,15,0,0,31,0,0,63,0,0,127,0,0, + 127,0,0,239,0,0,207,0,1,207,0,3,143,0,3,143, + 0,7,15,0,14,15,0,14,15,0,28,15,0,24,15,0, + 56,15,0,112,15,0,112,15,0,255,255,224,255,255,192,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,63,128,1,255,224,18,29,87,23,2,0,0,0,128, + 0,1,128,31,255,0,31,254,0,24,0,0,24,0,0,24, + 0,0,24,0,0,56,0,0,56,0,0,56,0,0,63,240, + 0,63,252,0,120,63,0,32,15,0,0,7,128,0,7,192, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,128,0,7,128,128,7,128,224,15,0,120,62,0,63,252, + 0,7,240,0,18,29,87,23,3,0,0,7,0,0,63,0, + 0,248,0,1,224,0,3,192,0,15,0,0,14,0,0,30, + 0,0,60,0,0,56,0,0,120,0,0,120,248,0,119,254, + 0,254,31,0,248,15,128,240,7,128,240,7,192,240,3,192, + 240,3,192,240,3,192,240,3,192,248,3,192,120,3,128,120, + 3,128,60,7,128,60,7,0,31,14,0,15,252,0,3,240, + 0,19,27,81,23,2,0,127,255,192,127,255,224,96,1,192, + 64,3,192,192,3,128,0,3,128,0,7,0,0,7,0,0, + 14,0,0,14,0,0,28,0,0,28,0,0,56,0,0,56, + 0,0,56,0,0,112,0,0,112,0,0,224,0,0,224,0, + 1,192,0,1,192,0,3,192,0,7,128,0,7,128,0,15, + 0,0,15,0,0,28,0,0,18,29,87,22,2,0,3,248, + 0,15,254,0,28,31,0,56,15,0,48,7,128,112,7,128, + 112,7,128,112,7,128,112,7,0,120,15,0,62,30,0,31, + 188,0,15,240,0,3,252,0,7,254,0,30,63,0,60,15, + 128,120,7,192,112,7,192,240,3,192,240,3,192,240,3,192, + 240,3,192,240,3,128,120,7,128,124,7,0,62,14,0,31, + 252,0,7,224,0,19,30,90,23,2,255,1,248,0,7,254, + 0,14,31,0,28,15,128,56,7,128,120,3,192,112,3,192, + 240,3,224,240,1,224,240,1,224,240,1,224,240,1,224,248, + 1,224,120,3,224,124,7,224,62,13,224,31,249,224,7,225, + 192,0,3,192,0,3,192,0,7,128,0,7,128,0,15,0, + 0,30,0,0,60,0,0,120,0,0,240,0,3,224,0,31, + 128,0,56,0,0,6,23,23,11,3,255,56,124,252,252,248, + 112,0,0,0,0,0,0,0,0,0,0,0,56,124,252,252, + 248,112,7,29,29,11,2,249,28,62,126,126,124,56,0,0, + 0,0,0,0,0,0,0,0,8,60,254,254,30,30,30,28, + 28,56,48,96,64,19,15,45,21,1,6,0,0,96,0,3, + 192,0,31,192,0,127,0,3,252,0,31,224,0,127,0,0, + 124,0,0,254,0,0,63,192,0,7,240,0,1,254,0,0, + 63,192,0,7,224,0,1,128,19,9,27,21,1,9,127,255, + 224,255,255,192,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,127,255,224,255,255,192,19,15,45,21,1,6,48, + 0,0,252,0,0,127,128,0,15,240,0,3,254,0,0,127, + 128,0,15,224,0,3,192,0,31,192,0,255,0,3,248,0, + 31,192,0,127,0,0,120,0,0,192,0,0,17,36,108,21, + 2,255,3,248,0,15,254,0,60,63,0,120,15,0,120,15, + 128,240,7,128,240,7,128,240,7,128,224,7,128,0,7,128, + 0,15,0,0,15,0,0,30,0,0,30,0,0,60,0,0, + 120,0,0,112,0,0,224,0,1,224,0,1,192,0,3,192, + 0,3,128,0,3,128,0,3,128,0,3,128,0,3,128,0, + 0,0,0,0,0,0,0,0,0,0,0,0,1,192,0,3, + 224,0,7,224,0,7,224,0,7,192,0,3,128,0,36,39, + 195,39,1,248,0,0,255,128,0,0,7,255,224,0,0,31, + 1,248,0,0,120,0,62,0,0,224,0,31,0,1,192,0, + 15,0,7,128,0,7,128,7,0,0,3,192,14,0,0,1, + 192,28,0,124,33,224,28,1,255,96,224,56,3,135,224,224, + 56,7,3,224,224,120,14,1,224,240,112,14,1,224,112,112, + 30,1,224,112,240,28,1,224,112,240,60,1,224,112,240,60, + 1,224,112,240,60,1,224,112,240,60,1,224,112,240,60,1, + 224,112,240,60,1,224,96,248,60,1,224,224,248,62,1,224, + 192,120,30,1,224,192,120,31,3,225,128,124,15,5,225,0, + 60,15,141,242,0,62,7,248,252,0,31,1,224,112,0,31, + 0,0,0,0,15,128,0,0,0,7,192,0,1,0,3,240, + 0,3,128,1,248,0,14,0,0,127,0,252,0,0,31,255, + 240,0,0,3,255,0,0,28,30,120,29,0,0,0,2,0, + 0,0,7,0,0,0,15,0,0,0,15,0,0,0,31,128, + 0,0,31,128,0,0,27,128,0,0,59,192,0,0,57,192, + 0,0,49,224,0,0,113,224,0,0,112,224,0,0,96,240, + 0,0,224,240,0,0,224,112,0,0,192,120,0,1,192,120, + 0,1,192,56,0,1,255,252,0,3,255,252,0,3,128,30, + 0,3,0,30,0,7,0,30,0,7,0,15,0,6,0,15, + 0,14,0,15,0,14,0,7,128,12,0,7,128,62,0,7, + 192,255,192,63,240,24,30,90,27,0,0,7,254,0,255,255, + 192,111,7,224,15,1,240,15,0,248,15,0,120,15,0,120, + 15,0,120,15,0,120,15,0,112,15,0,240,15,1,224,15, + 7,192,15,255,192,15,255,240,15,1,248,15,0,124,15,0, + 62,15,0,30,15,0,31,15,0,15,15,0,15,15,0,15, + 15,0,15,15,0,14,15,0,30,15,0,60,15,0,248,63, + 255,240,127,255,128,23,30,90,26,1,0,0,31,224,0,255, + 252,1,192,252,7,128,56,14,0,16,14,0,0,28,0,0, + 56,0,0,56,0,0,120,0,0,112,0,0,112,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,120,0,0,120,0,0,124,0,0, + 60,0,0,30,0,4,31,0,14,15,128,56,7,224,240,1, + 255,192,0,127,0,25,30,120,28,1,0,7,254,0,0,255, + 255,192,0,111,3,240,0,15,0,248,0,15,0,124,0,15, + 0,62,0,15,0,30,0,15,0,31,0,15,0,15,0,15, + 0,15,0,15,0,15,128,15,0,7,128,15,0,7,128,15, + 0,7,128,15,0,7,128,15,0,7,128,15,0,7,128,15, + 0,7,128,15,0,7,128,15,0,7,0,15,0,15,0,15, + 0,15,0,15,0,30,0,15,0,30,0,15,0,60,0,15, + 0,124,0,15,0,248,0,15,3,224,0,63,255,192,0,127, + 254,0,0,21,30,90,24,1,0,255,255,224,127,255,240,30, + 0,96,30,0,96,30,0,96,30,0,96,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 31,255,128,31,255,128,30,3,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,8,30,0,24,30,0,24,31,0,56,127,255,240, + 255,255,240,20,30,90,23,1,0,255,255,240,127,255,240,30, + 0,96,30,0,96,30,0,32,30,0,32,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 31,255,0,31,255,0,30,6,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,127,128,0, + 255,224,0,24,30,90,28,2,0,0,31,224,0,255,248,1, + 192,252,7,128,56,15,0,16,30,0,0,28,0,0,56,0, + 0,56,0,0,120,0,0,112,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,240,0,0,240,7,255,240,0,254,240, + 0,60,240,0,60,248,0,60,120,0,60,120,0,60,60,0, + 60,62,0,60,30,0,60,15,0,60,7,192,248,3,255,224, + 0,127,0,27,30,120,31,2,0,255,192,127,224,127,128,63, + 192,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,31,255,255,0,31,255,255,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,127,0,31,192,255,192,127, + 224,10,30,60,14,2,0,255,192,127,128,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,127, + 128,255,192,17,38,114,15,252,248,7,255,128,0,255,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,56,0,0,56,0,0,56,0,0,112,0,0,112,0,0, + 224,0,112,192,0,255,0,0,124,0,0,26,30,120,28,1, + 0,255,193,255,128,127,128,124,0,30,0,120,0,30,0,240, + 0,30,1,224,0,30,1,192,0,30,3,128,0,30,7,0, + 0,30,14,0,0,30,28,0,0,30,56,0,0,30,120,0, + 0,30,112,0,0,30,224,0,0,31,224,0,0,30,240,0, + 0,30,120,0,0,30,124,0,0,30,62,0,0,30,30,0, + 0,30,15,0,0,30,7,128,0,30,7,192,0,30,3,224, + 0,30,1,240,0,30,0,248,0,30,0,124,0,30,0,126, + 0,127,128,63,192,255,192,31,0,21,30,90,23,1,0,255, + 192,0,127,128,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,8,30,0,24,30,0,24, + 31,0,48,127,255,240,255,255,240,36,30,150,39,1,0,127, + 0,0,15,224,31,128,0,31,128,15,128,0,31,0,15,128, + 0,63,0,15,192,0,63,0,15,192,0,55,0,15,224,0, + 119,0,14,224,0,119,0,14,240,0,231,0,14,240,0,231, + 0,14,120,0,199,0,14,120,1,199,0,14,56,1,199,0, + 14,60,3,135,0,14,28,3,135,0,14,30,7,7,0,14, + 30,7,7,0,14,15,6,7,0,14,15,14,7,0,14,7, + 14,7,0,14,7,156,7,0,14,3,156,7,0,14,3,216, + 7,0,14,3,248,7,0,14,1,248,7,0,14,1,240,7, + 0,14,0,240,7,0,14,0,224,7,0,63,0,224,31,192, + 255,192,96,127,240,27,30,120,31,2,0,252,0,63,224,124, + 0,15,128,30,0,7,0,31,0,7,0,31,0,7,0,31, + 128,7,0,31,192,7,0,29,192,7,0,28,224,7,0,28, + 240,7,0,28,120,7,0,28,56,7,0,28,60,7,0,28, + 30,7,0,28,14,7,0,28,15,7,0,28,7,135,0,28, + 7,135,0,28,3,199,0,28,1,231,0,28,1,231,0,28, + 0,247,0,28,0,127,0,28,0,127,0,28,0,63,0,28, + 0,31,0,28,0,31,0,28,0,15,0,62,0,7,0,255, + 128,3,0,25,30,120,29,2,0,0,63,0,0,0,255,224, + 0,3,193,240,0,7,0,248,0,14,0,124,0,28,0,62, + 0,60,0,30,0,56,0,31,0,120,0,15,0,120,0,15, + 0,112,0,15,128,240,0,7,128,240,0,7,128,240,0,7, + 128,240,0,7,128,240,0,7,128,240,0,7,128,240,0,7, + 128,240,0,7,128,248,0,7,0,120,0,15,0,120,0,15, + 0,124,0,14,0,60,0,28,0,62,0,28,0,31,0,56, + 0,15,128,112,0,7,193,224,0,3,255,128,0,0,254,0, + 0,22,30,90,25,1,0,7,254,0,255,255,192,111,7,224, + 15,1,240,15,0,248,15,0,124,15,0,60,15,0,60,15, + 0,60,15,0,60,15,0,60,15,0,60,15,0,120,15,0, + 120,15,0,240,15,131,224,15,127,192,15,62,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,63,192,0,127,240, + 0,28,37,148,29,2,249,0,63,0,0,0,255,224,0,3, + 193,240,0,7,0,248,0,14,0,124,0,28,0,62,0,60, + 0,30,0,56,0,31,0,120,0,15,0,120,0,15,0,112, + 0,15,128,240,0,7,128,240,0,7,128,240,0,7,128,240, + 0,7,128,240,0,7,128,240,0,7,128,240,0,7,128,240, + 0,7,128,248,0,7,0,120,0,15,0,120,0,15,0,124, + 0,14,0,60,0,30,0,62,0,28,0,31,0,56,0,15, + 128,112,0,7,193,224,0,3,255,192,0,0,127,128,0,0, + 3,192,0,0,1,224,0,0,0,248,16,0,0,124,48,0, + 0,31,224,0,0,15,224,0,0,3,128,26,30,120,27,1, + 0,7,254,0,0,255,255,192,0,111,7,224,0,15,1,240, + 0,15,0,240,0,15,0,120,0,15,0,120,0,15,0,120, + 0,15,0,120,0,15,0,120,0,15,0,112,0,15,0,240, + 0,15,1,224,0,15,3,192,0,15,255,0,0,15,254,0, + 0,15,14,0,0,15,7,0,0,15,7,128,0,15,3,128, + 0,15,3,192,0,15,1,192,0,15,1,224,0,15,0,240, + 0,15,0,240,0,15,0,120,0,15,0,124,0,15,0,62, + 0,63,192,63,192,127,224,31,0,18,30,90,23,3,0,3, + 248,0,31,254,0,60,63,0,120,14,0,112,4,0,240,0, + 0,240,0,0,240,0,0,248,0,0,252,0,0,127,0,0, + 127,192,0,63,240,0,31,248,0,7,254,0,1,255,0,0, + 127,128,0,31,128,0,15,192,0,7,192,0,3,192,0,3, + 192,0,3,192,128,3,128,192,3,128,224,7,0,240,15,0, + 252,62,0,255,248,0,15,224,0,26,30,120,26,0,0,127, + 255,255,192,127,255,255,192,96,30,1,128,192,30,1,128,192, + 30,1,128,128,30,0,128,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 30,0,0,0,30,0,0,0,30,0,0,0,30,0,0,0, + 127,128,0,1,255,224,0,27,30,120,31,2,0,255,192,127, + 224,127,128,63,192,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,15,0,30,0,15,0,30,0,15, + 0,30,0,15,0,30,0,30,0,15,0,30,0,15,0,30, + 0,7,128,60,0,7,192,120,0,3,224,240,0,1,255,224, + 0,0,63,128,0,30,30,120,31,0,0,255,224,15,252,31, + 0,1,240,15,0,0,224,15,0,1,192,7,0,1,192,7, + 128,1,192,7,128,3,128,3,192,3,128,3,192,3,128,3, + 192,7,0,1,224,7,0,1,224,6,0,0,224,14,0,0, + 240,14,0,0,240,12,0,0,120,28,0,0,120,28,0,0, + 120,56,0,0,60,56,0,0,60,56,0,0,28,112,0,0, + 30,112,0,0,30,112,0,0,15,224,0,0,15,224,0,0, + 15,224,0,0,7,192,0,0,7,192,0,0,3,128,0,0, + 3,0,0,40,30,150,41,0,0,255,224,24,3,255,63,0, + 24,0,252,14,0,28,0,48,15,0,60,0,112,15,0,60, + 0,112,15,0,62,0,112,7,0,126,0,96,7,0,127,0, + 224,7,128,127,0,224,7,128,103,0,224,7,128,231,128,224, + 3,128,231,128,192,3,192,195,129,192,3,193,195,193,192,3, + 193,195,193,192,1,193,129,193,192,1,195,129,225,128,1,227, + 129,227,128,1,227,0,227,128,1,231,0,243,128,0,231,0, + 243,128,0,246,0,115,0,0,254,0,127,0,0,254,0,63, + 0,0,124,0,63,0,0,124,0,62,0,0,124,0,30,0, + 0,124,0,30,0,0,120,0,30,0,0,48,0,8,0,28, + 30,120,30,1,0,255,224,255,224,255,224,255,224,63,0,31, + 0,31,0,30,0,15,128,28,0,7,128,56,0,3,192,120, + 0,3,224,112,0,1,224,224,0,0,241,224,0,0,249,192, + 0,0,127,128,0,0,63,128,0,0,31,0,0,0,31,0, + 0,0,31,0,0,0,63,128,0,0,63,192,0,0,115,224, + 0,0,241,224,0,0,224,240,0,1,192,248,0,3,192,120, + 0,3,128,60,0,7,0,62,0,15,0,31,0,14,0,15, + 0,62,0,15,192,255,192,127,240,255,192,127,240,28,30,120, + 29,0,0,252,0,63,240,254,0,63,240,31,0,15,128,15, + 0,7,0,15,128,14,0,7,192,14,0,3,192,28,0,3, + 224,60,0,1,224,56,0,0,240,120,0,0,248,112,0,0, + 120,224,0,0,125,224,0,0,61,192,0,0,63,192,0,0, + 31,128,0,0,31,128,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,63,192,0,0,255,240,0,22,30,90,25,1, + 0,63,255,252,63,255,252,56,0,120,48,0,248,48,1,240, + 32,1,224,32,3,224,0,3,192,0,7,128,0,15,128,0, + 15,0,0,31,0,0,30,0,0,60,0,0,124,0,0,120, + 0,0,248,0,1,240,0,1,224,0,3,224,0,3,192,0, + 7,128,0,15,128,0,15,0,4,31,0,12,62,0,12,60, + 0,12,124,0,28,127,255,252,255,255,252,11,45,90,15,3, + 248,255,224,255,224,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,255,224,255,224,20,46,138,23,1, + 248,224,0,0,112,0,0,112,0,0,120,0,0,56,0,0, + 56,0,0,28,0,0,28,0,0,30,0,0,14,0,0,14, + 0,0,15,0,0,7,0,0,7,0,0,7,128,0,3,128, + 0,3,192,0,1,192,0,1,192,0,1,224,0,0,224,0, + 0,224,0,0,240,0,0,112,0,0,112,0,0,56,0,0, + 56,0,0,60,0,0,28,0,0,28,0,0,30,0,0,14, + 0,0,14,0,0,7,0,0,7,0,0,7,128,0,3,128, + 0,3,128,0,3,192,0,1,192,0,1,192,0,1,224,0, + 0,224,0,0,240,0,0,112,0,0,48,11,45,90,15,1, + 248,255,224,255,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,1,224,1,224,1,224,1,224,1, + 224,1,224,1,224,1,224,255,224,255,224,19,23,69,24,2, + 13,0,32,0,0,112,0,0,240,0,1,240,0,1,248,0, + 1,248,0,3,188,0,3,188,0,7,60,0,7,30,0,6, + 30,0,14,14,0,14,15,0,12,15,0,28,7,128,28,7, + 128,24,3,128,56,3,192,48,3,192,112,1,224,112,1,224, + 96,0,224,192,0,192,20,2,6,23,1,251,127,255,240,255, + 255,240,9,10,20,15,1,25,240,0,248,0,120,0,60,0, + 28,0,14,0,7,0,3,0,1,128,1,128,20,22,66,22, + 2,0,1,248,0,15,254,0,28,30,0,120,15,0,112,15, + 0,240,15,0,128,15,0,0,15,0,0,15,0,0,255,0, + 7,255,0,31,143,0,62,15,0,120,15,0,248,15,0,240, + 15,0,240,15,0,240,31,0,240,63,0,120,239,32,127,143, + 240,30,7,128,22,36,108,24,0,0,6,0,0,126,0,0, + 254,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,15,128,30,63,224,30,127,240,30,227,240, + 31,192,248,31,128,248,31,0,124,30,0,124,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 56,30,0,56,30,0,112,30,0,96,31,0,224,15,193,192, + 3,255,0,0,252,0,18,22,66,21,2,0,0,127,0,3, + 255,192,7,7,192,14,1,128,28,0,128,56,0,0,120,0, + 0,112,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,0,248,0,0,120,0,0,120,0,0,60, + 0,64,62,1,192,31,131,128,7,254,0,1,248,0,23,36, + 108,25,2,0,0,0,224,0,15,224,0,15,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,253, + 224,3,255,224,15,15,224,28,3,224,60,1,224,56,1,224, + 120,1,224,112,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,120,1,224,120,1, + 224,124,3,224,62,5,228,31,25,254,15,240,248,7,192,224, + 18,22,66,22,2,0,0,248,0,7,254,0,14,15,0,28, + 7,128,56,7,128,56,3,192,112,3,192,112,3,192,255,255, + 192,255,255,128,240,0,0,240,0,0,240,0,0,240,0,0, + 248,0,0,120,0,0,120,0,0,124,0,192,62,1,128,31, + 7,0,15,254,0,3,248,0,19,36,108,15,0,0,0,15, + 128,0,63,224,0,99,192,1,193,128,3,128,0,3,128,0, + 7,128,0,7,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,63,254,0,255,252,0,15,8, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,31,224,0,127,248,0,24,33,99,24,0,245, + 0,252,2,3,255,126,7,7,252,14,3,224,30,1,224,28, + 1,240,60,0,240,60,0,240,60,0,240,60,0,240,62,0, + 224,31,1,192,15,131,128,7,255,0,1,252,0,3,192,0, + 7,128,0,15,128,0,15,224,0,7,255,128,3,255,240,7, + 191,252,14,0,254,60,0,31,120,0,15,240,0,15,240,0, + 15,240,0,14,248,0,28,124,0,56,63,128,240,15,255,192, + 1,254,0,23,36,108,26,2,0,6,0,0,126,0,0,254, + 0,0,62,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,7,128,28,31,224,28,49,224,28,96,240,28, + 192,240,29,128,240,31,0,240,31,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,63, + 131,248,255,199,254,10,32,64,13,2,0,28,0,30,0,62, + 0,62,0,28,0,0,0,0,0,0,0,0,0,0,0,6, + 0,126,0,254,0,62,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,63,0,255,192,14,43,86,12,251, + 245,0,56,0,60,0,124,0,124,0,56,0,0,0,0,0, + 0,0,0,0,0,0,12,0,252,1,252,0,124,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,56,0,56,0,120,0,112,0,112,48, + 224,127,128,255,0,124,0,23,36,108,24,1,0,6,0,0, + 126,0,0,254,0,0,62,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,7,252,30,1,240,30,1,192, + 30,3,128,30,7,0,30,14,0,30,56,0,30,112,0,30, + 224,0,31,224,0,30,240,0,30,248,0,30,120,0,30,60, + 0,30,30,0,30,15,0,30,15,128,30,7,192,30,3,224, + 30,1,224,63,0,254,255,192,124,12,36,72,13,1,0,3, + 0,63,0,127,0,31,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,31,128,255,240,36,22,110,39,2,0,12,7,192, + 124,0,254,31,224,255,0,62,49,227,143,0,30,96,247,7, + 128,30,192,254,7,128,31,128,252,7,128,31,0,248,7,128, + 31,0,248,7,128,30,0,240,7,128,30,0,240,7,128,30, + 0,240,7,128,30,0,240,7,128,30,0,240,7,128,30,0, + 240,7,128,30,0,240,7,128,30,0,240,7,128,30,0,240, + 7,128,30,0,240,7,128,30,0,240,7,128,30,0,240,7, + 128,127,131,252,31,192,255,199,254,63,240,23,22,66,26,2, + 0,12,7,192,254,15,224,62,49,224,30,96,240,30,192,240, + 30,128,240,31,0,240,31,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,127,131,248, + 255,199,254,20,22,66,24,2,0,0,252,0,7,255,0,14, + 15,128,28,7,192,56,3,192,56,3,224,112,1,224,112,1, + 240,240,0,240,240,0,240,240,0,240,240,0,240,240,0,240, + 240,0,240,248,0,224,120,1,224,124,1,192,60,1,192,62, + 3,128,31,7,0,15,254,0,3,240,0,21,33,99,25,2, + 245,12,7,128,254,31,192,62,35,224,30,65,240,30,129,240, + 31,0,240,31,0,248,30,0,248,30,0,120,30,0,120,30, + 0,120,30,0,120,30,0,120,30,0,120,30,0,112,30,0, + 112,30,0,224,30,0,224,31,1,192,31,195,128,30,255,0, + 30,62,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,127,0, + 0,255,224,0,22,33,99,25,2,245,0,252,48,3,255,96, + 7,15,224,30,3,224,28,1,224,56,1,224,120,1,224,112, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,1,224,120,1,224,120,1,224,124,3,224, + 62,7,224,31,29,224,15,249,224,3,225,224,0,1,224,0, + 1,224,0,1,224,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,3,240,0,31,252,17,22,66, + 19,1,0,4,15,0,126,63,128,254,127,128,30,227,128,30, + 195,128,31,129,0,31,128,0,31,0,0,31,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,63, + 128,0,255,224,0,15,22,44,19,2,0,15,192,63,248,120, + 120,112,56,240,16,240,0,248,0,252,0,127,0,63,192,31, + 240,7,248,1,252,0,126,0,62,128,30,128,30,192,30,224, + 60,240,120,255,240,31,192,16,30,60,17,0,0,3,0,7, + 0,15,0,15,0,15,0,15,0,15,0,15,0,63,255,255, + 255,15,4,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,1,7,135,7,254,3,240,24,22,66,25,1,0,6, + 0,112,254,7,240,126,7,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,1,240,31,2,240,15,12,255,15,248,252,3,224, + 112,23,22,66,24,0,0,255,192,254,62,0,60,30,0,56, + 30,0,48,15,0,112,15,0,112,7,0,96,7,128,224,7, + 128,192,3,193,192,3,193,192,1,193,128,1,227,128,1,227, + 0,0,243,0,0,247,0,0,118,0,0,126,0,0,126,0, + 0,60,0,0,60,0,0,16,0,33,22,110,34,0,0,255, + 192,96,63,128,62,0,224,15,0,30,0,224,14,0,30,0, + 240,14,0,14,1,240,12,0,15,1,240,12,0,15,1,248, + 28,0,7,3,248,28,0,7,3,56,24,0,7,131,60,24, + 0,3,135,28,56,0,3,134,30,48,0,3,198,30,48,0, + 1,206,14,112,0,1,204,15,96,0,1,252,15,96,0,1, + 252,7,96,0,0,248,7,224,0,0,248,7,192,0,0,240, + 3,192,0,0,112,3,192,0,0,96,3,0,0,24,22,66, + 24,0,0,127,227,254,127,227,254,31,128,248,15,128,224,7, + 128,192,3,193,192,1,227,128,0,247,0,0,254,0,0,124, + 0,0,60,0,0,62,0,0,127,0,0,239,0,1,199,128, + 3,131,192,3,1,224,7,0,240,14,0,248,62,0,252,255, + 131,255,255,131,255,24,33,99,24,255,245,127,224,255,31,0, + 62,15,0,28,15,0,24,7,128,56,7,128,56,3,128,48, + 3,192,112,3,192,96,1,224,224,1,224,224,0,224,192,0, + 241,192,0,241,192,0,121,128,0,123,128,0,59,0,0,63, + 0,0,63,0,0,30,0,0,30,0,0,12,0,0,12,0, + 0,28,0,0,24,0,0,56,0,0,112,0,0,112,0,0, + 224,0,63,192,0,127,128,0,255,0,0,124,0,0,17,22, + 66,21,2,0,127,255,128,127,255,128,96,15,0,96,15,0, + 64,30,0,64,60,0,0,60,0,0,120,0,0,240,0,0, + 240,0,1,224,0,3,192,0,3,192,0,7,128,0,15,0, + 0,14,0,0,30,0,128,60,0,128,120,0,128,120,1,128, + 255,255,128,255,255,128,13,45,90,16,2,249,0,8,0,56, + 0,112,1,224,1,192,3,128,3,128,7,128,7,128,7,128, + 7,128,7,128,7,192,3,192,3,192,3,192,3,192,3,192, + 3,128,7,128,7,0,30,0,126,0,255,0,7,128,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,7,192,7,128, + 7,128,7,128,7,128,7,128,7,128,3,128,3,192,1,192, + 0,224,0,120,0,24,4,49,49,11,4,246,112,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,224,13,45,90, + 16,1,249,192,0,240,0,56,0,28,0,30,0,14,0,15, + 0,15,0,15,0,15,0,15,0,15,0,31,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,15,0,7,240,3, + 248,3,192,7,0,15,0,14,0,30,0,30,0,30,0,30, + 0,30,0,31,0,15,0,15,0,15,0,15,0,15,0,14, + 0,30,0,28,0,56,0,112,0,224,0,128,0,21,8,24, + 23,1,11,7,128,8,15,224,24,31,240,16,63,252,48,49, + 255,224,96,127,192,64,31,128,192,15,0,255}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--15-150-72-72-P-70-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w=12 h=15 x= 2 y= 8 dx=13 dy= 0 ascent=13 len=26 + Font Bounding box w=23 h=21 x=-8 y=-5 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr9[3248] U8G_SECTION(".progmem.u8g_font_gdr9") = { + 0,23,21,248,251,9,1,255,4,54,32,255,252,13,252,12, + 252,0,0,0,3,0,0,2,11,11,4,1,0,192,192,192, + 192,192,64,128,128,0,128,128,4,5,5,6,1,6,208,144, + 144,144,144,6,8,8,7,1,1,44,40,252,72,80,248,80, + 160,6,11,11,7,0,255,16,60,84,80,112,24,20,148,212, + 120,16,9,9,18,11,1,0,97,0,146,0,148,0,152,0, + 107,0,20,128,36,128,68,128,195,0,9,11,22,10,1,0, + 56,0,72,0,72,0,72,0,112,0,103,128,162,0,146,0, + 138,0,134,0,123,0,2,5,5,4,1,6,192,128,128,128, + 128,3,14,14,5,1,254,32,64,64,128,128,128,128,128,128, + 128,128,64,64,32,3,14,14,5,1,254,128,64,64,32,32, + 32,32,32,32,32,32,64,64,128,5,6,6,7,1,5,32, + 168,112,112,168,32,5,5,5,6,1,2,32,32,248,32,32, + 2,4,4,3,1,254,64,192,64,128,5,1,1,5,0,3, + 248,1,2,2,3,1,0,128,128,7,14,14,7,0,254,6, + 4,4,8,8,8,16,16,32,32,32,64,64,192,5,9,9, + 7,1,0,112,144,136,136,136,136,136,80,112,5,9,9,7, + 1,0,32,224,32,32,32,32,32,32,248,5,9,9,7,1, + 0,56,72,136,8,16,32,64,136,248,6,9,9,7,0,0, + 48,72,136,16,120,4,4,132,120,6,9,9,7,0,0,8, + 24,40,40,72,72,252,8,60,5,9,9,7,1,0,120,128, + 128,240,136,8,8,136,112,5,9,9,7,1,0,24,96,64, + 176,200,136,136,136,112,5,9,9,7,1,0,248,136,8,16, + 16,32,32,96,64,5,9,9,7,1,0,112,200,136,208,112, + 136,136,136,112,5,9,9,7,1,0,112,152,136,136,136,120, + 16,16,224,1,7,7,3,1,0,128,128,0,0,0,128,128, + 2,9,9,3,1,254,128,128,0,0,0,64,192,64,128,6, + 5,5,7,0,2,4,56,64,176,12,6,3,3,7,0,3, + 124,128,252,6,5,5,7,0,2,192,56,4,56,192,5,11, + 11,7,1,0,112,136,136,8,16,16,32,32,32,32,32,11, + 13,26,13,1,253,15,0,48,192,64,64,142,32,178,32,162, + 32,162,32,162,32,162,64,95,128,64,0,48,192,31,0,9, + 9,18,9,0,0,8,0,8,0,20,0,20,0,36,0,62, + 0,34,0,67,0,227,128,7,9,9,9,1,0,248,68,68, + 124,70,66,66,66,252,7,9,9,8,1,0,60,68,128,128, + 128,128,128,70,56,8,9,9,9,0,0,252,66,65,65,65, + 65,65,66,252,6,9,9,7,1,0,252,68,64,120,64,64, + 64,68,252,6,9,9,7,1,0,252,68,64,120,64,64,64, + 64,224,8,9,9,9,1,0,30,100,128,128,143,130,130,66, + 60,9,9,18,10,0,0,227,128,65,0,65,0,65,0,127, + 0,65,0,65,0,65,0,227,128,3,9,9,4,1,0,224, + 64,64,64,64,64,64,64,224,5,12,12,5,255,253,56,16, + 16,16,16,16,16,16,16,16,32,192,8,9,9,9,1,0, + 239,68,72,80,96,80,72,68,231,6,9,9,7,1,0,224, + 64,64,64,64,64,64,68,252,12,9,18,12,0,0,96,96, + 32,192,80,192,81,64,73,64,73,64,70,64,70,64,228,240, + 10,9,18,10,0,0,193,192,96,128,80,128,88,128,76,128, + 70,128,67,128,65,128,224,128,7,9,9,9,1,0,56,68, + 130,130,130,130,130,68,56,7,9,9,8,0,0,252,66,66, + 66,92,96,64,64,224,8,11,11,9,1,254,56,68,130,130, + 130,130,130,68,56,13,3,8,9,9,8,0,0,248,68,68, + 68,88,104,72,68,231,5,9,9,7,1,0,112,152,128,64, + 48,8,136,136,240,7,9,9,8,1,0,254,146,16,16,16, + 16,16,16,56,9,9,18,10,0,0,227,128,65,0,65,0, + 65,0,65,0,65,0,65,0,98,0,60,0,9,9,18,10, + 0,0,227,128,97,0,33,0,34,0,18,0,18,0,28,0, + 12,0,8,0,12,9,18,13,0,0,226,112,66,32,38,32, + 37,32,41,32,41,192,56,192,16,192,16,192,9,9,18,9, + 0,0,247,128,98,0,54,0,28,0,8,0,20,0,34,0, + 35,0,243,128,9,9,18,9,0,0,227,128,98,0,50,0, + 20,0,28,0,8,0,8,0,8,0,28,0,7,9,9,8, + 0,0,126,68,4,8,16,16,34,66,254,3,15,15,5,1, + 253,224,128,128,128,128,128,128,128,128,128,128,128,128,128,224, + 7,14,14,7,0,254,192,64,64,32,32,32,16,16,8,8, + 8,4,4,6,3,15,15,5,1,253,224,32,32,32,32,32, + 32,32,32,32,32,32,32,32,224,6,7,7,7,1,4,32, + 48,80,80,136,136,140,7,1,1,7,0,254,254,3,3,3, + 5,0,8,192,64,32,6,7,7,7,1,0,56,72,136,56, + 200,136,252,7,11,11,8,0,0,192,64,64,64,92,98,66, + 66,66,68,56,5,7,7,7,1,0,120,136,128,128,128,200, + 112,7,11,11,8,1,0,12,4,4,4,60,196,132,132,132, + 204,118,5,7,7,7,1,0,112,72,136,248,128,200,112,5, + 11,11,5,1,0,24,104,64,64,240,64,64,64,64,64,240, + 7,11,11,7,0,252,126,132,132,196,120,96,120,70,130,134, + 120,8,11,11,8,0,0,192,64,64,64,78,114,66,66,66, + 66,231,3,10,10,4,1,0,64,64,0,192,64,64,64,64, + 64,224,4,14,14,4,255,252,16,16,0,48,16,16,16,16, + 16,16,16,16,32,192,7,11,11,8,0,0,192,64,64,64, + 78,72,112,112,80,72,230,3,11,11,4,1,0,192,64,64, + 64,64,64,64,64,64,64,224,11,7,14,11,0,0,221,192, + 102,64,68,64,68,64,68,64,68,64,238,224,8,7,7,8, + 0,0,78,242,66,66,66,66,231,6,7,7,8,1,0,56, + 204,132,132,132,200,112,7,11,11,8,0,252,92,230,66,66, + 66,68,120,64,64,64,224,7,11,11,8,1,252,60,68,132, + 132,132,204,116,4,4,4,14,5,7,7,6,0,0,216,104, + 64,64,64,64,224,4,7,7,6,1,0,96,176,128,96,16, + 144,224,5,9,9,5,0,0,64,64,248,64,64,64,64,64, + 120,8,7,7,8,0,0,198,66,66,66,66,70,59,7,7, + 7,7,0,0,230,68,36,40,56,24,16,10,7,14,11,0, + 0,228,192,68,128,110,128,42,128,50,128,49,0,17,0,7, + 7,7,8,0,0,238,100,56,24,40,68,238,7,11,11,7, + 0,252,230,68,36,36,40,24,16,16,16,32,192,5,7,7, + 7,1,0,248,144,32,32,64,136,248,3,14,14,5,1,254, + 32,64,64,64,32,32,64,224,32,32,64,64,64,32,1,15, + 15,3,1,253,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,3,14,14,5,1,254,128,64,64,64,128,128,192, + 96,128,128,64,64,64,128,7,3,3,7,0,3,50,220,128, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,0,0,0,3,0,0,2,11,11,4,1,252,128,128,0, + 128,128,128,192,192,192,192,192,5,9,9,7,1,0,32,56, + 232,160,160,160,232,112,32,6,9,9,7,1,0,56,68,72, + 64,240,64,64,68,252,3,5,5,7,2,2,160,224,160,160, + 224,7,9,9,7,0,0,206,100,40,56,16,124,16,16,56, + 1,15,15,3,1,253,128,128,128,128,128,128,128,0,128,128, + 128,128,128,128,128,6,11,11,8,1,0,112,144,128,224,184, + 132,68,56,136,136,112,4,2,2,6,1,8,144,144,9,9, + 18,11,1,0,62,0,93,0,166,128,160,128,160,128,160,128, + 182,128,93,0,62,0,4,5,5,4,0,4,96,160,224,224, + 240,5,7,7,7,1,0,104,72,144,176,144,72,104,6,4, + 4,7,1,1,252,4,4,4,5,1,1,5,0,3,248,5, + 6,6,5,0,5,112,136,184,168,168,112,5,1,1,7,1, + 8,248,3,4,4,5,1,5,96,160,160,192,6,7,7,6, + 0,1,16,16,124,16,16,0,252,4,6,6,5,0,4,48, + 208,32,32,80,240,4,6,6,5,0,4,48,80,32,16,144, + 96,3,3,3,5,2,8,96,128,128,8,11,11,8,0,252, + 198,66,66,66,66,70,123,64,64,64,96,8,11,11,9,0, + 254,127,138,138,202,122,10,10,10,10,10,31,1,2,2,2, + 1,4,128,128,2,3,3,3,1,253,128,64,192,3,5,5, + 5,1,5,192,64,64,64,224,3,5,5,4,0,4,96,160, + 160,192,224,6,7,7,7,1,0,160,80,72,44,72,80,160, + 8,9,9,9,1,0,194,68,68,72,178,22,42,79,199,7, + 9,9,9,1,0,194,68,72,72,182,26,36,74,206,9,9, + 18,9,0,0,49,0,82,0,52,0,20,0,233,0,11,0, + 21,0,39,128,99,128,5,11,11,7,1,252,32,32,32,32, + 32,64,128,128,136,136,112,9,12,24,9,0,0,48,0,12, + 0,0,0,8,0,8,0,20,0,20,0,36,0,62,0,34, + 0,67,0,227,128,9,12,24,9,0,0,6,0,24,0,0, + 0,8,0,8,0,20,0,20,0,36,0,62,0,34,0,67, + 0,227,128,9,12,24,9,0,0,28,0,34,0,0,0,8, + 0,8,0,20,0,20,0,36,0,62,0,34,0,67,0,227, + 128,9,12,24,9,0,0,58,0,60,0,0,0,8,0,8, + 0,20,0,20,0,36,0,62,0,34,0,67,0,227,128,9, + 11,22,9,0,0,36,0,36,0,8,0,8,0,20,0,20, + 0,36,0,62,0,34,0,67,0,227,128,9,13,26,9,0, + 0,12,0,20,0,20,0,8,0,8,0,8,0,20,0,20, + 0,36,0,62,0,34,0,67,0,227,128,11,9,18,12,0, + 0,31,224,10,32,18,0,31,192,18,0,34,0,34,0,34, + 32,231,224,6,12,12,8,1,253,60,68,128,128,128,128,128, + 68,120,32,16,48,6,12,12,7,1,0,224,16,0,252,68, + 64,120,64,64,64,68,252,6,12,12,7,1,0,24,96,0, + 252,68,64,120,64,64,64,68,252,6,12,12,7,1,0,112, + 136,0,252,68,64,120,64,64,64,68,252,6,11,11,7,1, + 0,144,144,124,68,64,120,64,64,64,68,252,4,12,12,4, + 0,0,192,32,0,112,32,32,32,32,32,32,32,112,4,12, + 12,4,1,0,112,128,0,224,64,64,64,64,64,64,64,224, + 4,12,12,4,0,0,96,144,0,112,32,32,32,32,32,32, + 32,112,4,11,11,4,0,0,144,144,96,32,32,32,32,32, + 32,32,112,8,9,9,9,0,0,252,66,65,65,241,65,65, + 66,252,10,12,24,10,0,0,26,0,60,0,0,0,193,192, + 96,128,80,128,88,128,76,128,70,128,67,128,65,128,224,128, + 7,12,12,9,1,0,96,24,0,56,68,130,130,130,130,130, + 68,56,7,12,12,9,1,0,12,48,0,56,68,130,130,130, + 130,130,68,56,7,12,12,9,1,0,56,68,0,56,68,130, + 130,130,130,130,68,56,7,12,12,9,1,0,52,120,0,56, + 68,130,130,130,130,130,68,56,7,11,11,9,1,0,72,72, + 56,68,130,130,130,130,130,68,56,4,4,4,6,1,2,144, + 96,96,144,7,9,9,9,1,0,58,68,138,138,146,162,194, + 68,184,9,12,24,10,0,0,56,0,4,0,0,0,227,128, + 65,0,65,0,65,0,65,0,65,0,65,0,98,0,60,0, + 9,12,24,10,0,0,6,0,24,0,0,0,227,128,65,0, + 65,0,65,0,65,0,65,0,65,0,98,0,60,0,9,12, + 24,10,0,0,28,0,34,0,0,0,227,128,65,0,65,0, + 65,0,65,0,65,0,65,0,98,0,60,0,9,11,22,10, + 0,0,34,0,36,0,195,128,65,0,65,0,65,0,65,0, + 65,0,65,0,98,0,60,0,9,12,24,9,0,0,6,0, + 24,0,0,0,227,128,98,0,50,0,20,0,28,0,8,0, + 8,0,8,0,28,0,7,9,9,8,0,0,224,124,70,66, + 66,66,100,92,224,8,11,11,8,0,0,28,34,66,66,68, + 72,76,67,65,73,206,6,11,11,7,1,0,192,96,32,0, + 56,72,136,56,200,136,252,6,11,11,7,1,0,24,16,32, + 0,56,72,136,56,200,136,252,6,11,11,7,1,0,32,80, + 136,0,56,72,136,56,200,136,252,6,10,10,7,1,0,104, + 176,0,56,72,136,56,200,136,252,6,10,10,7,1,0,144, + 144,0,56,72,136,56,200,136,252,6,11,11,7,1,0,48, + 80,80,48,56,72,136,56,200,136,252,9,7,14,10,1,0, + 63,0,76,128,136,128,63,128,200,0,136,128,247,0,5,10, + 10,7,1,253,120,136,128,128,128,200,112,32,16,48,5,11, + 11,7,1,0,64,32,32,16,112,72,136,248,128,200,112,5, + 11,11,7,1,0,24,16,32,0,112,72,136,248,128,200,112, + 5,11,11,7,1,0,32,80,136,0,112,72,136,248,128,200, + 112,5,10,10,7,1,0,144,152,0,112,72,136,248,128,200, + 112,4,11,11,4,0,0,128,64,32,0,96,32,32,32,32, + 32,112,3,11,11,4,1,0,32,64,128,0,192,64,64,64, + 64,64,224,4,11,11,4,0,0,96,80,144,0,96,32,32, + 32,32,32,112,4,10,10,4,0,0,144,144,0,96,32,32, + 32,32,32,112,5,11,11,7,1,0,200,48,80,16,120,136, + 136,136,136,144,112,8,10,10,8,0,0,18,108,0,78,242, + 66,66,66,66,231,6,11,11,8,1,0,64,32,16,0,56, + 204,132,132,132,200,112,6,11,11,8,1,0,8,16,32,0, + 56,204,132,132,132,200,112,6,11,11,8,1,0,48,80,136, + 0,56,204,132,132,132,200,112,6,10,10,8,1,0,104,152, + 0,56,204,132,132,132,200,112,6,10,10,8,1,0,136,136, + 0,56,204,132,132,132,200,112,6,4,4,6,0,2,16,124, + 128,16,6,7,7,8,1,0,60,204,148,164,164,200,240,8, + 11,11,8,0,0,32,16,8,0,198,66,66,66,66,70,59, + 8,11,11,8,0,0,4,8,16,0,198,66,66,66,66,70, + 59,8,11,11,8,0,0,24,24,36,0,198,66,66,66,66, + 70,59,8,10,10,8,0,0,36,68,0,198,66,66,66,66, + 70,59,7,15,15,7,0,252,4,8,16,0,230,68,36,36, + 40,24,16,16,16,32,192,7,15,15,8,0,252,192,64,64, + 64,76,114,66,66,66,68,120,64,64,64,224,7,14,14,7, + 0,252,68,68,0,230,68,36,36,40,24,16,16,16,32,192 + }; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--15-150-72-72-P-70-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 0, '1' Height: 9 + Calculated Max Values w= 7 h=14 x= 1 y= 5 dx= 7 dy= 0 ascent=12 len=14 + Font Bounding box w=23 h=21 x=-8 y=-5 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent =12 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr9n[235] U8G_SECTION(".progmem.u8g_font_gdr9n") = { + 0,23,21,248,251,9,0,0,0,0,42,57,0,12,254,9, + 0,5,6,6,7,1,5,32,168,112,112,168,32,5,5,5, + 6,1,2,32,32,248,32,32,2,4,4,3,1,254,64,192, + 64,128,5,1,1,5,0,3,248,1,2,2,3,1,0,128, + 128,7,14,14,7,0,254,6,4,4,8,8,8,16,16,32, + 32,32,64,64,192,5,9,9,7,1,0,112,144,136,136,136, + 136,136,80,112,5,9,9,7,1,0,32,224,32,32,32,32, + 32,32,248,5,9,9,7,1,0,56,72,136,8,16,32,64, + 136,248,6,9,9,7,0,0,48,72,136,16,120,4,4,132, + 120,6,9,9,7,0,0,8,24,40,40,72,72,252,8,60, + 5,9,9,7,1,0,120,128,128,240,136,8,8,136,112,5, + 9,9,7,1,0,24,96,64,176,200,136,136,136,112,5,9, + 9,7,1,0,248,136,8,16,16,32,32,96,64,5,9,9, + 7,1,0,112,200,136,208,112,136,136,136,112,5,9,9,7, + 1,0,112,152,136,136,136,120,16,16,224}; +/* + Fontname: -FreeType-Gentium Basic-Medium-R-Normal--15-150-72-72-P-70-ISO10646-1 + Copyright: Copyright (c) SIL International, 2003-2008. + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w=12 h=15 x= 1 y= 8 dx=13 dy= 0 ascent=12 len=26 + Font Bounding box w=23 h=21 x=-8 y=-5 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =12 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_gdr9r[1553] U8G_SECTION(".progmem.u8g_font_gdr9r") = { + 0,23,21,248,251,9,1,255,4,54,32,127,252,12,252,12, + 252,0,0,0,3,0,0,2,11,11,4,1,0,192,192,192, + 192,192,64,128,128,0,128,128,4,5,5,6,1,6,208,144, + 144,144,144,6,8,8,7,1,1,44,40,252,72,80,248,80, + 160,6,11,11,7,0,255,16,60,84,80,112,24,20,148,212, + 120,16,9,9,18,11,1,0,97,0,146,0,148,0,152,0, + 107,0,20,128,36,128,68,128,195,0,9,11,22,10,1,0, + 56,0,72,0,72,0,72,0,112,0,103,128,162,0,146,0, + 138,0,134,0,123,0,2,5,5,4,1,6,192,128,128,128, + 128,3,14,14,5,1,254,32,64,64,128,128,128,128,128,128, + 128,128,64,64,32,3,14,14,5,1,254,128,64,64,32,32, + 32,32,32,32,32,32,64,64,128,5,6,6,7,1,5,32, + 168,112,112,168,32,5,5,5,6,1,2,32,32,248,32,32, + 2,4,4,3,1,254,64,192,64,128,5,1,1,5,0,3, + 248,1,2,2,3,1,0,128,128,7,14,14,7,0,254,6, + 4,4,8,8,8,16,16,32,32,32,64,64,192,5,9,9, + 7,1,0,112,144,136,136,136,136,136,80,112,5,9,9,7, + 1,0,32,224,32,32,32,32,32,32,248,5,9,9,7,1, + 0,56,72,136,8,16,32,64,136,248,6,9,9,7,0,0, + 48,72,136,16,120,4,4,132,120,6,9,9,7,0,0,8, + 24,40,40,72,72,252,8,60,5,9,9,7,1,0,120,128, + 128,240,136,8,8,136,112,5,9,9,7,1,0,24,96,64, + 176,200,136,136,136,112,5,9,9,7,1,0,248,136,8,16, + 16,32,32,96,64,5,9,9,7,1,0,112,200,136,208,112, + 136,136,136,112,5,9,9,7,1,0,112,152,136,136,136,120, + 16,16,224,1,7,7,3,1,0,128,128,0,0,0,128,128, + 2,9,9,3,1,254,128,128,0,0,0,64,192,64,128,6, + 5,5,7,0,2,4,56,64,176,12,6,3,3,7,0,3, + 124,128,252,6,5,5,7,0,2,192,56,4,56,192,5,11, + 11,7,1,0,112,136,136,8,16,16,32,32,32,32,32,11, + 13,26,13,1,253,15,0,48,192,64,64,142,32,178,32,162, + 32,162,32,162,32,162,64,95,128,64,0,48,192,31,0,9, + 9,18,9,0,0,8,0,8,0,20,0,20,0,36,0,62, + 0,34,0,67,0,227,128,7,9,9,9,1,0,248,68,68, + 124,70,66,66,66,252,7,9,9,8,1,0,60,68,128,128, + 128,128,128,70,56,8,9,9,9,0,0,252,66,65,65,65, + 65,65,66,252,6,9,9,7,1,0,252,68,64,120,64,64, + 64,68,252,6,9,9,7,1,0,252,68,64,120,64,64,64, + 64,224,8,9,9,9,1,0,30,100,128,128,143,130,130,66, + 60,9,9,18,10,0,0,227,128,65,0,65,0,65,0,127, + 0,65,0,65,0,65,0,227,128,3,9,9,4,1,0,224, + 64,64,64,64,64,64,64,224,5,12,12,5,255,253,56,16, + 16,16,16,16,16,16,16,16,32,192,8,9,9,9,1,0, + 239,68,72,80,96,80,72,68,231,6,9,9,7,1,0,224, + 64,64,64,64,64,64,68,252,12,9,18,12,0,0,96,96, + 32,192,80,192,81,64,73,64,73,64,70,64,70,64,228,240, + 10,9,18,10,0,0,193,192,96,128,80,128,88,128,76,128, + 70,128,67,128,65,128,224,128,7,9,9,9,1,0,56,68, + 130,130,130,130,130,68,56,7,9,9,8,0,0,252,66,66, + 66,92,96,64,64,224,8,11,11,9,1,254,56,68,130,130, + 130,130,130,68,56,13,3,8,9,9,8,0,0,248,68,68, + 68,88,104,72,68,231,5,9,9,7,1,0,112,152,128,64, + 48,8,136,136,240,7,9,9,8,1,0,254,146,16,16,16, + 16,16,16,56,9,9,18,10,0,0,227,128,65,0,65,0, + 65,0,65,0,65,0,65,0,98,0,60,0,9,9,18,10, + 0,0,227,128,97,0,33,0,34,0,18,0,18,0,28,0, + 12,0,8,0,12,9,18,13,0,0,226,112,66,32,38,32, + 37,32,41,32,41,192,56,192,16,192,16,192,9,9,18,9, + 0,0,247,128,98,0,54,0,28,0,8,0,20,0,34,0, + 35,0,243,128,9,9,18,9,0,0,227,128,98,0,50,0, + 20,0,28,0,8,0,8,0,8,0,28,0,7,9,9,8, + 0,0,126,68,4,8,16,16,34,66,254,3,15,15,5,1, + 253,224,128,128,128,128,128,128,128,128,128,128,128,128,128,224, + 7,14,14,7,0,254,192,64,64,32,32,32,16,16,8,8, + 8,4,4,6,3,15,15,5,1,253,224,32,32,32,32,32, + 32,32,32,32,32,32,32,32,224,6,7,7,7,1,4,32, + 48,80,80,136,136,140,7,1,1,7,0,254,254,3,3,3, + 5,0,8,192,64,32,6,7,7,7,1,0,56,72,136,56, + 200,136,252,7,11,11,8,0,0,192,64,64,64,92,98,66, + 66,66,68,56,5,7,7,7,1,0,120,136,128,128,128,200, + 112,7,11,11,8,1,0,12,4,4,4,60,196,132,132,132, + 204,118,5,7,7,7,1,0,112,72,136,248,128,200,112,5, + 11,11,5,1,0,24,104,64,64,240,64,64,64,64,64,240, + 7,11,11,7,0,252,126,132,132,196,120,96,120,70,130,134, + 120,8,11,11,8,0,0,192,64,64,64,78,114,66,66,66, + 66,231,3,10,10,4,1,0,64,64,0,192,64,64,64,64, + 64,224,4,14,14,4,255,252,16,16,0,48,16,16,16,16, + 16,16,16,16,32,192,7,11,11,8,0,0,192,64,64,64, + 78,72,112,112,80,72,230,3,11,11,4,1,0,192,64,64, + 64,64,64,64,64,64,64,224,11,7,14,11,0,0,221,192, + 102,64,68,64,68,64,68,64,68,64,238,224,8,7,7,8, + 0,0,78,242,66,66,66,66,231,6,7,7,8,1,0,56, + 204,132,132,132,200,112,7,11,11,8,0,252,92,230,66,66, + 66,68,120,64,64,64,224,7,11,11,8,1,252,60,68,132, + 132,132,204,116,4,4,4,14,5,7,7,6,0,0,216,104, + 64,64,64,64,224,4,7,7,6,1,0,96,176,128,96,16, + 144,224,5,9,9,5,0,0,64,64,248,64,64,64,64,64, + 120,8,7,7,8,0,0,198,66,66,66,66,70,59,7,7, + 7,7,0,0,230,68,36,40,56,24,16,10,7,14,11,0, + 0,228,192,68,128,110,128,42,128,50,128,49,0,17,0,7, + 7,7,8,0,0,238,100,56,24,40,68,238,7,11,11,7, + 0,252,230,68,36,36,40,24,16,16,16,32,192,5,7,7, + 7,1,0,248,144,32,32,64,136,248,3,14,14,5,1,254, + 32,64,64,64,32,32,64,224,32,32,64,64,64,32,1,15, + 15,3,1,253,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,3,14,14,5,1,254,128,64,64,64,128,128,192, + 96,128,128,64,64,64,128,7,3,3,7,0,3,50,220,128, + 255}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--11-80-100-100-P-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=10 h=11 x= 1 y= 7 dx=11 dy= 0 ascent=11 len=18 + Font Bounding box w=12 h=19 x=-1 y=-5 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB08[2677] U8G_SECTION(".progmem.u8g_font_helvB08") = { + 0,12,19,255,251,8,1,182,3,122,32,255,254,11,254,8, + 254,0,0,0,3,0,1,2,8,8,4,1,0,192,192,192, + 192,128,128,0,192,3,3,3,5,1,5,160,160,160,7,7, + 7,6,255,0,40,40,126,40,252,80,80,5,10,10,6,0, + 255,32,112,168,224,112,56,40,168,112,32,7,8,8,8,0, + 0,98,180,104,16,16,44,86,140,7,8,8,8,0,0,112, + 216,216,112,222,204,220,118,1,3,3,3,1,5,128,128,128, + 3,10,10,4,0,254,32,96,64,192,192,192,192,64,96,32, + 3,10,10,4,0,254,128,192,64,96,96,96,96,64,192,128, + 3,3,3,4,0,5,160,64,160,6,5,5,6,0,1,48, + 48,252,48,48,2,4,4,3,0,254,192,192,64,128,4,1, + 1,5,0,3,240,2,2,2,3,0,0,192,192,4,8,8, + 4,0,0,16,16,32,32,64,64,128,128,5,8,8,6,0, + 0,112,216,216,216,216,216,216,112,3,8,8,6,1,0,96, + 224,96,96,96,96,96,96,5,8,8,6,0,0,112,216,24, + 24,48,96,192,248,5,8,8,6,0,0,112,216,24,48,24, + 24,216,112,6,8,8,6,0,0,8,24,56,88,152,252,24, + 24,5,8,8,6,0,0,248,192,192,240,24,152,216,112,5, + 8,8,6,0,0,112,216,192,240,216,216,216,112,5,8,8, + 6,0,0,248,24,24,48,48,96,96,96,5,8,8,6,0, + 0,112,216,216,112,216,216,216,112,5,8,8,6,0,0,112, + 216,216,216,120,24,216,112,2,6,6,3,0,0,192,192,0, + 0,192,192,2,8,8,3,0,254,192,192,0,0,192,192,64, + 128,4,5,5,5,0,1,48,96,192,96,48,5,3,3,6, + 0,2,248,0,248,4,5,5,5,0,1,192,96,48,96,192, + 5,8,8,6,0,0,112,216,24,48,96,96,0,96,10,9, + 18,11,0,255,31,0,96,128,77,64,146,64,162,64,164,128, + 155,0,64,0,62,0,7,8,8,8,0,0,56,56,108,108, + 108,254,198,198,6,8,8,7,0,0,248,204,204,248,204,204, + 204,248,7,8,8,8,0,0,60,102,194,192,192,194,102,60, + 6,8,8,7,0,0,240,216,204,204,204,204,216,240,5,8, + 8,6,0,0,248,192,192,248,192,192,192,248,5,8,8,6, + 0,0,248,192,192,240,192,192,192,192,7,8,8,8,0,0, + 60,102,194,192,206,198,102,58,6,8,8,7,0,0,204,204, + 204,252,204,204,204,204,2,8,8,3,0,0,192,192,192,192, + 192,192,192,192,5,8,8,6,0,0,24,24,24,24,24,24, + 216,112,7,8,8,7,0,0,204,216,240,224,240,216,204,198, + 5,8,8,6,0,0,192,192,192,192,192,192,192,248,9,8, + 16,10,0,0,193,128,227,128,227,128,247,128,213,128,221,128, + 201,128,201,128,7,8,8,8,0,0,198,230,230,214,214,206, + 206,198,7,8,8,8,0,0,56,108,198,198,198,198,108,56, + 6,8,8,7,0,0,248,204,204,204,248,192,192,192,7,9, + 9,8,0,255,56,108,198,198,198,214,108,60,2,6,8,8, + 7,0,0,248,204,204,204,248,204,204,204,6,8,8,7,0, + 0,120,204,224,120,28,140,204,120,6,8,8,7,0,0,252, + 48,48,48,48,48,48,48,6,8,8,7,0,0,204,204,204, + 204,204,204,204,120,7,8,8,8,0,0,198,198,108,108,108, + 56,56,16,10,8,16,11,0,0,204,192,204,192,204,192,109, + 128,109,128,127,128,51,0,51,0,7,8,8,8,0,0,198, + 198,108,56,56,108,198,198,8,8,8,9,0,0,195,195,102, + 102,60,24,24,24,6,8,8,7,0,0,252,12,24,48,112, + 96,192,252,3,10,10,4,0,254,224,192,192,192,192,192,192, + 192,192,224,4,8,8,4,0,0,128,128,64,64,32,32,16, + 16,3,10,10,4,0,254,224,96,96,96,96,96,96,96,96, + 224,4,4,4,5,0,4,96,240,144,144,6,1,1,6,0, + 254,252,2,2,2,3,0,7,128,64,6,6,6,6,0,0, + 112,152,120,216,216,108,5,8,8,6,0,0,192,192,240,216, + 216,216,216,240,4,6,6,5,0,0,112,208,192,192,208,112, + 5,8,8,6,0,0,24,24,120,216,216,216,216,120,5,6, + 6,6,0,0,112,216,248,192,216,112,5,8,8,4,255,0, + 56,96,240,96,96,96,96,96,5,8,8,6,0,254,104,216, + 216,216,216,120,24,112,5,8,8,6,0,0,192,192,240,216, + 216,216,216,216,2,8,8,3,0,0,192,0,192,192,192,192, + 192,192,3,10,10,3,255,254,96,0,96,96,96,96,96,96, + 96,192,6,8,8,6,0,0,192,192,216,240,224,240,216,204, + 2,8,8,3,0,0,192,192,192,192,192,192,192,192,8,6, + 6,9,0,0,182,219,219,219,219,219,5,6,6,6,0,0, + 176,216,216,216,216,216,5,6,6,6,0,0,112,216,216,216, + 216,112,5,8,8,6,0,254,176,216,216,216,216,240,192,192, + 5,8,8,6,0,254,104,216,216,216,216,120,24,24,4,6, + 6,4,0,0,176,224,192,192,192,192,5,6,6,6,0,0, + 112,216,112,24,216,112,4,8,8,4,255,0,96,96,240,96, + 96,96,96,48,5,6,6,6,0,0,216,216,216,216,216,104, + 5,6,6,6,0,0,216,216,216,80,112,32,7,6,6,8, + 0,0,214,214,214,108,108,108,6,6,6,7,0,0,204,120, + 48,120,204,204,5,8,8,6,0,254,216,216,216,216,120,48, + 48,96,5,6,6,6,0,0,248,24,48,96,192,248,4,10, + 10,5,0,254,48,96,96,96,192,96,96,96,96,48,1,10, + 10,3,1,254,128,128,128,128,128,128,128,128,128,128,4,10, + 10,5,0,254,192,96,96,96,48,96,96,96,96,192,5,2, + 2,6,0,3,104,176,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,0,0,3,0,1,2,8,8, + 4,1,254,192,0,64,64,192,192,192,192,5,8,8,6,0, + 255,16,112,216,160,160,216,112,64,5,8,8,6,0,0,56, + 104,96,240,96,96,104,216,6,6,6,6,0,1,132,120,72, + 72,120,132,6,8,8,7,0,0,132,132,204,72,252,48,252, + 48,1,10,10,3,1,254,128,128,128,128,0,0,128,128,128, + 128,5,10,10,6,0,254,112,200,224,112,152,200,112,56,152, + 112,3,1,1,3,0,7,160,8,8,8,10,1,0,60,66, + 153,165,161,157,66,60,3,5,5,5,1,3,224,32,160,0, + 224,6,3,3,7,0,1,108,216,108,5,3,3,7,1,2, + 248,8,8,4,1,1,5,0,3,240,8,8,8,10,1,0, + 60,66,189,165,185,165,66,60,3,1,1,3,0,7,224,3, + 3,3,4,0,5,96,160,192,6,7,7,6,0,0,48,48, + 252,48,48,0,252,3,4,4,3,0,4,96,160,64,224,3, + 4,4,3,0,4,224,64,32,192,2,2,2,3,0,7,64, + 128,5,8,8,6,0,254,216,216,216,216,216,232,192,192,6, + 10,10,6,0,254,124,232,232,232,104,40,40,40,40,40,2, + 1,1,3,0,3,192,2,2,2,3,0,254,64,192,2,4, + 4,3,0,4,64,192,64,64,3,5,5,5,1,3,224,160, + 224,0,224,6,3,3,7,0,1,216,108,216,8,8,8,9, + 0,0,68,196,72,72,18,38,47,66,7,8,8,9,0,0, + 68,196,72,72,22,42,36,78,8,8,8,9,0,0,228,68, + 40,200,18,38,47,66,5,8,8,6,0,254,48,0,48,48, + 96,192,216,112,7,11,11,8,0,0,32,16,0,56,56,108, + 108,108,254,198,198,7,11,11,8,0,0,8,16,0,56,56, + 108,108,108,254,198,198,7,11,11,8,0,0,16,40,0,56, + 56,108,108,108,254,198,198,7,11,11,8,0,0,20,40,0, + 56,56,108,108,108,254,198,198,7,10,10,8,0,0,40,0, + 56,56,108,108,108,254,198,198,7,11,11,8,0,0,16,40, + 16,56,56,108,108,108,254,198,198,9,8,16,10,0,0,63, + 128,60,0,108,0,111,128,108,0,252,0,204,0,207,128,7, + 10,10,8,0,254,60,102,194,192,192,194,102,60,16,48,5, + 11,11,6,0,0,64,32,0,248,192,192,248,192,192,192,248, + 5,11,11,6,0,0,16,32,0,248,192,192,248,192,192,192, + 248,5,11,11,6,0,0,32,80,0,248,192,192,248,192,192, + 192,248,5,10,10,6,0,0,80,0,248,192,192,248,192,192, + 192,248,2,11,11,3,0,0,128,64,0,192,192,192,192,192, + 192,192,192,2,11,11,3,0,0,64,128,0,192,192,192,192, + 192,192,192,192,3,11,11,3,255,0,64,160,0,96,96,96, + 96,96,96,96,96,4,10,10,3,255,0,144,0,96,96,96, + 96,96,96,96,96,7,8,8,7,255,0,120,108,102,246,102, + 102,108,120,7,11,11,8,0,0,20,40,0,198,230,230,214, + 214,206,206,198,7,11,11,8,0,0,16,8,0,56,108,198, + 198,198,198,108,56,7,11,11,8,0,0,8,16,0,56,108, + 198,198,198,198,108,56,7,11,11,8,0,0,16,40,0,56, + 108,198,198,198,198,108,56,7,11,11,8,0,0,20,40,0, + 56,108,198,198,198,198,108,56,7,10,10,8,0,0,40,0, + 56,108,198,198,198,198,108,56,6,5,5,6,0,1,204,120, + 48,120,204,7,8,8,8,0,0,58,108,206,214,214,230,108, + 184,6,11,11,7,0,0,32,16,0,204,204,204,204,204,204, + 204,120,6,11,11,7,0,0,8,16,0,204,204,204,204,204, + 204,204,120,6,11,11,7,0,0,32,80,0,204,204,204,204, + 204,204,204,120,6,10,10,7,0,0,72,0,204,204,204,204, + 204,204,204,120,8,11,11,9,0,0,4,8,0,195,195,102, + 102,60,24,24,24,6,8,8,7,0,0,192,248,204,204,204, + 248,192,192,5,8,8,6,0,0,112,200,200,208,200,200,200, + 208,6,9,9,6,0,0,32,16,0,112,152,120,216,216,108, + 6,9,9,6,0,0,16,32,0,112,152,120,216,216,108,6, + 9,9,6,0,0,32,80,0,112,152,120,216,216,108,6,9, + 9,6,0,0,40,80,0,112,152,120,216,216,108,6,8,8, + 6,0,0,80,0,112,152,120,216,216,108,6,9,9,6,0, + 0,32,80,32,112,152,120,216,216,108,8,6,6,9,0,0, + 126,155,127,216,219,110,4,8,8,5,0,254,112,208,192,192, + 208,112,32,96,5,9,9,6,0,0,64,32,0,112,216,248, + 192,216,112,5,9,9,6,0,0,16,32,0,112,216,248,192, + 216,112,5,9,9,6,0,0,32,80,0,112,216,248,192,216, + 112,5,8,8,6,0,0,80,0,112,216,248,192,216,112,2, + 9,9,3,0,0,128,64,0,192,192,192,192,192,192,2,9, + 9,3,0,0,64,128,0,192,192,192,192,192,192,3,9,9, + 3,0,0,64,160,0,192,192,192,192,192,192,3,8,8,3, + 0,0,160,0,192,192,192,192,192,192,5,9,9,6,0,0, + 80,96,160,112,216,216,216,216,112,5,9,9,6,0,0,80, + 160,0,176,216,216,216,216,216,5,9,9,6,0,0,64,32, + 0,112,216,216,216,216,112,5,9,9,6,0,0,16,32,0, + 112,216,216,216,216,112,5,9,9,6,0,0,32,80,0,112, + 216,216,216,216,112,5,9,9,6,0,0,80,160,0,112,216, + 216,216,216,112,5,8,8,6,0,0,80,0,112,216,216,216, + 216,112,6,5,5,6,0,1,48,0,252,0,48,7,6,6, + 6,255,0,58,108,124,108,108,184,5,9,9,6,0,0,64, + 32,0,216,216,216,216,216,104,5,9,9,6,0,0,16,32, + 0,216,216,216,216,216,104,5,9,9,6,0,0,32,80,0, + 216,216,216,216,216,104,5,8,8,6,0,0,80,0,216,216, + 216,216,216,104,5,11,11,6,0,254,16,32,0,216,216,216, + 216,120,48,48,96,5,10,10,6,0,254,192,192,240,216,200, + 200,216,240,192,192,5,10,10,6,0,254,80,0,216,216,216, + 216,120,48,48,96}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--11-80-100-100-P-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=10 h=10 x= 1 y= 7 dx=11 dy= 0 ascent= 9 len=18 + Font Bounding box w=12 h=19 x=-1 y=-5 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB08r[1287] U8G_SECTION(".progmem.u8g_font_helvB08r") = { + 0,12,19,255,251,8,1,182,3,122,32,127,254,9,254,8, + 254,0,0,0,3,0,1,2,8,8,4,1,0,192,192,192, + 192,128,128,0,192,3,3,3,5,1,5,160,160,160,7,7, + 7,6,255,0,40,40,126,40,252,80,80,5,10,10,6,0, + 255,32,112,168,224,112,56,40,168,112,32,7,8,8,8,0, + 0,98,180,104,16,16,44,86,140,7,8,8,8,0,0,112, + 216,216,112,222,204,220,118,1,3,3,3,1,5,128,128,128, + 3,10,10,4,0,254,32,96,64,192,192,192,192,64,96,32, + 3,10,10,4,0,254,128,192,64,96,96,96,96,64,192,128, + 3,3,3,4,0,5,160,64,160,6,5,5,6,0,1,48, + 48,252,48,48,2,4,4,3,0,254,192,192,64,128,4,1, + 1,5,0,3,240,2,2,2,3,0,0,192,192,4,8,8, + 4,0,0,16,16,32,32,64,64,128,128,5,8,8,6,0, + 0,112,216,216,216,216,216,216,112,3,8,8,6,1,0,96, + 224,96,96,96,96,96,96,5,8,8,6,0,0,112,216,24, + 24,48,96,192,248,5,8,8,6,0,0,112,216,24,48,24, + 24,216,112,6,8,8,6,0,0,8,24,56,88,152,252,24, + 24,5,8,8,6,0,0,248,192,192,240,24,152,216,112,5, + 8,8,6,0,0,112,216,192,240,216,216,216,112,5,8,8, + 6,0,0,248,24,24,48,48,96,96,96,5,8,8,6,0, + 0,112,216,216,112,216,216,216,112,5,8,8,6,0,0,112, + 216,216,216,120,24,216,112,2,6,6,3,0,0,192,192,0, + 0,192,192,2,8,8,3,0,254,192,192,0,0,192,192,64, + 128,4,5,5,5,0,1,48,96,192,96,48,5,3,3,6, + 0,2,248,0,248,4,5,5,5,0,1,192,96,48,96,192, + 5,8,8,6,0,0,112,216,24,48,96,96,0,96,10,9, + 18,11,0,255,31,0,96,128,77,64,146,64,162,64,164,128, + 155,0,64,0,62,0,7,8,8,8,0,0,56,56,108,108, + 108,254,198,198,6,8,8,7,0,0,248,204,204,248,204,204, + 204,248,7,8,8,8,0,0,60,102,194,192,192,194,102,60, + 6,8,8,7,0,0,240,216,204,204,204,204,216,240,5,8, + 8,6,0,0,248,192,192,248,192,192,192,248,5,8,8,6, + 0,0,248,192,192,240,192,192,192,192,7,8,8,8,0,0, + 60,102,194,192,206,198,102,58,6,8,8,7,0,0,204,204, + 204,252,204,204,204,204,2,8,8,3,0,0,192,192,192,192, + 192,192,192,192,5,8,8,6,0,0,24,24,24,24,24,24, + 216,112,7,8,8,7,0,0,204,216,240,224,240,216,204,198, + 5,8,8,6,0,0,192,192,192,192,192,192,192,248,9,8, + 16,10,0,0,193,128,227,128,227,128,247,128,213,128,221,128, + 201,128,201,128,7,8,8,8,0,0,198,230,230,214,214,206, + 206,198,7,8,8,8,0,0,56,108,198,198,198,198,108,56, + 6,8,8,7,0,0,248,204,204,204,248,192,192,192,7,9, + 9,8,0,255,56,108,198,198,198,214,108,60,2,6,8,8, + 7,0,0,248,204,204,204,248,204,204,204,6,8,8,7,0, + 0,120,204,224,120,28,140,204,120,6,8,8,7,0,0,252, + 48,48,48,48,48,48,48,6,8,8,7,0,0,204,204,204, + 204,204,204,204,120,7,8,8,8,0,0,198,198,108,108,108, + 56,56,16,10,8,16,11,0,0,204,192,204,192,204,192,109, + 128,109,128,127,128,51,0,51,0,7,8,8,8,0,0,198, + 198,108,56,56,108,198,198,8,8,8,9,0,0,195,195,102, + 102,60,24,24,24,6,8,8,7,0,0,252,12,24,48,112, + 96,192,252,3,10,10,4,0,254,224,192,192,192,192,192,192, + 192,192,224,4,8,8,4,0,0,128,128,64,64,32,32,16, + 16,3,10,10,4,0,254,224,96,96,96,96,96,96,96,96, + 224,4,4,4,5,0,4,96,240,144,144,6,1,1,6,0, + 254,252,2,2,2,3,0,7,128,64,6,6,6,6,0,0, + 112,152,120,216,216,108,5,8,8,6,0,0,192,192,240,216, + 216,216,216,240,4,6,6,5,0,0,112,208,192,192,208,112, + 5,8,8,6,0,0,24,24,120,216,216,216,216,120,5,6, + 6,6,0,0,112,216,248,192,216,112,5,8,8,4,255,0, + 56,96,240,96,96,96,96,96,5,8,8,6,0,254,104,216, + 216,216,216,120,24,112,5,8,8,6,0,0,192,192,240,216, + 216,216,216,216,2,8,8,3,0,0,192,0,192,192,192,192, + 192,192,3,10,10,3,255,254,96,0,96,96,96,96,96,96, + 96,192,6,8,8,6,0,0,192,192,216,240,224,240,216,204, + 2,8,8,3,0,0,192,192,192,192,192,192,192,192,8,6, + 6,9,0,0,182,219,219,219,219,219,5,6,6,6,0,0, + 176,216,216,216,216,216,5,6,6,6,0,0,112,216,216,216, + 216,112,5,8,8,6,0,254,176,216,216,216,216,240,192,192, + 5,8,8,6,0,254,104,216,216,216,216,120,24,24,4,6, + 6,4,0,0,176,224,192,192,192,192,5,6,6,6,0,0, + 112,216,112,24,216,112,4,8,8,4,255,0,96,96,240,96, + 96,96,96,48,5,6,6,6,0,0,216,216,216,216,216,104, + 5,6,6,6,0,0,216,216,216,80,112,32,7,6,6,8, + 0,0,214,214,214,108,108,108,6,6,6,7,0,0,204,120, + 48,120,204,204,5,8,8,6,0,254,216,216,216,216,120,48, + 48,96,5,6,6,6,0,0,248,24,48,96,192,248,4,10, + 10,5,0,254,48,96,96,96,192,96,96,96,96,48,1,10, + 10,3,1,254,128,128,128,128,128,128,128,128,128,128,4,10, + 10,5,0,254,192,96,96,96,48,96,96,96,96,192,5,2, + 2,6,0,3,104,176,255}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--14-100-100-100-P-82-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=14 h=14 x= 2 y= 9 dx=15 dy= 0 ascent=14 len=28 + Font Bounding box w=17 h=23 x=-1 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB10[3692] U8G_SECTION(".progmem.u8g_font_helvB10") = { + 0,17,23,255,250,11,2,27,4,205,32,255,253,14,253,11, + 253,0,0,0,4,0,1,2,11,11,4,1,0,192,192,192, + 192,192,192,128,128,0,192,192,5,3,3,7,1,8,216,216, + 144,9,10,20,9,0,0,27,0,27,0,27,0,127,128,54, + 0,54,0,255,0,108,0,108,0,108,0,7,14,14,8,0, + 254,16,124,214,214,208,240,120,28,22,214,214,124,16,16,12, + 11,22,13,0,0,120,64,204,192,205,128,121,0,3,0,6, + 0,4,0,13,224,11,48,27,48,17,224,9,10,20,11,1, + 0,56,0,108,0,108,0,56,0,115,0,251,0,206,0,198, + 0,207,0,125,128,2,3,3,4,1,8,192,192,128,4,14, + 14,5,1,253,48,96,96,192,192,192,192,192,192,192,192,96, + 96,48,4,14,14,5,0,253,192,96,96,48,48,48,48,48, + 48,48,48,96,96,192,5,4,4,6,0,7,32,248,112,216, + 8,7,7,9,0,1,24,24,24,255,24,24,24,3,3,3, + 4,0,255,96,96,192,3,1,1,4,0,4,224,2,2,2, + 4,1,0,192,192,4,11,11,4,0,0,16,16,48,32,32, + 96,64,64,192,128,128,7,11,11,8,0,0,56,108,198,198, + 198,198,198,198,198,108,56,4,11,11,8,1,0,48,240,48, + 48,48,48,48,48,48,48,48,7,11,11,8,0,0,124,198, + 198,6,14,12,24,48,96,192,254,7,11,11,8,0,0,124, + 198,198,6,6,60,6,6,198,198,124,8,11,11,8,0,0, + 6,14,30,54,102,198,198,255,6,6,6,7,11,11,8,0, + 0,126,96,96,192,252,14,6,6,198,204,120,7,11,11,8, + 0,0,60,102,102,192,220,230,198,198,198,198,124,7,11,11, + 8,0,0,254,6,12,12,24,24,48,48,96,96,96,7,11, + 11,8,0,0,124,198,198,198,198,124,198,198,198,198,124,7, + 11,11,8,0,0,124,198,198,198,198,198,126,6,198,204,120, + 2,8,8,5,2,0,192,192,0,0,0,0,192,192,3,9, + 9,5,1,255,96,96,0,0,0,0,96,96,192,6,5,5, + 8,1,2,28,112,192,112,28,7,3,3,9,1,3,254,0, + 254,6,5,5,8,1,2,224,56,12,56,224,7,11,11,9, + 1,0,124,198,198,6,12,24,48,48,0,48,48,13,12,24, + 14,0,255,15,128,56,224,112,112,102,176,205,152,217,152,219, + 24,219,48,206,224,96,0,49,128,31,0,10,11,22,10,0, + 0,12,0,12,0,30,0,18,0,51,0,51,0,97,128,127, + 128,97,128,192,192,192,192,8,11,11,10,1,0,254,199,195, + 195,198,252,198,195,195,199,254,9,11,22,11,1,0,31,0, + 123,128,96,128,192,0,192,0,192,0,192,0,192,0,96,128, + 123,128,31,0,9,11,22,11,1,0,252,0,199,0,195,0, + 193,128,193,128,193,128,193,128,193,128,195,0,199,0,252,0, + 7,11,11,9,1,0,254,192,192,192,192,254,192,192,192,192, + 254,7,11,11,9,1,0,254,192,192,192,192,252,192,192,192, + 192,192,9,11,22,11,1,0,31,0,123,128,96,128,192,0, + 192,0,199,128,193,128,193,128,97,128,123,128,30,128,8,11, + 11,10,1,0,195,195,195,195,195,255,195,195,195,195,195,2, + 11,11,4,1,0,192,192,192,192,192,192,192,192,192,192,192, + 7,11,11,8,0,0,6,6,6,6,6,6,6,198,198,238, + 124,9,11,22,10,1,0,195,0,198,0,204,0,216,0,240, + 0,240,0,216,0,204,0,198,0,195,0,193,128,7,11,11, + 8,1,0,192,192,192,192,192,192,192,192,192,192,254,11,11, + 22,13,1,0,192,96,192,96,224,224,224,224,241,224,209,96, + 209,96,219,96,202,96,206,96,196,96,9,11,22,11,1,0, + 193,128,225,128,225,128,209,128,217,128,201,128,205,128,197,128, + 195,128,195,128,193,128,10,11,22,12,1,0,30,0,115,128, + 97,128,192,192,192,192,192,192,192,192,192,192,97,128,115,128, + 30,0,8,11,11,10,1,0,254,199,195,195,199,254,192,192, + 192,192,192,10,11,22,12,1,0,30,0,115,128,97,128,192, + 192,192,192,192,192,192,192,198,192,99,128,115,128,30,192,9, + 11,22,11,1,0,254,0,199,0,195,0,195,0,198,0,254, + 0,199,0,195,0,195,0,195,0,193,128,8,11,11,10,1, + 0,126,231,195,224,120,30,7,3,195,238,124,8,11,11,8, + 0,0,255,24,24,24,24,24,24,24,24,24,24,9,11,22, + 11,1,0,193,128,193,128,193,128,193,128,193,128,193,128,193, + 128,193,128,193,128,99,0,62,0,10,11,22,10,0,0,192, + 192,192,192,97,128,97,128,115,128,51,0,51,0,30,0,30, + 0,12,0,12,0,14,11,22,14,0,0,195,12,195,12,195, + 12,103,152,100,152,100,152,108,216,44,208,56,112,24,96,24, + 96,9,11,22,9,0,0,193,128,193,128,99,0,54,0,28, + 0,28,0,54,0,99,0,99,0,193,128,193,128,10,11,22, + 10,0,0,192,192,97,128,97,128,51,0,51,0,30,0,30, + 0,12,0,12,0,12,0,12,0,8,11,11,9,0,0,255, + 3,6,12,28,24,48,112,96,192,255,4,14,14,5,1,253, + 240,192,192,192,192,192,192,192,192,192,192,192,192,240,4,11, + 11,4,0,0,128,128,192,64,64,96,32,32,48,16,16,4, + 14,14,5,0,253,240,48,48,48,48,48,48,48,48,48,48, + 48,48,240,6,5,5,8,1,6,48,120,72,204,204,8,1, + 1,8,0,253,255,3,2,2,5,1,9,192,96,7,8,8, + 8,1,0,120,204,12,124,204,204,220,118,7,11,11,9,1, + 0,192,192,192,216,236,198,198,198,198,236,216,6,8,8,8, + 1,0,56,108,204,192,192,204,108,56,7,11,11,9,1,0, + 6,6,6,54,110,198,198,198,198,110,54,6,8,8,8,1, + 0,120,204,204,252,192,192,236,120,5,11,11,4,0,0,56, + 96,96,240,96,96,96,96,96,96,96,7,11,11,9,1,253, + 58,110,198,198,198,198,110,54,6,206,124,7,11,11,9,1, + 0,192,192,192,220,238,198,198,198,198,198,198,2,11,11,4, + 1,0,192,192,0,192,192,192,192,192,192,192,192,3,14,14, + 4,0,253,96,96,0,96,96,96,96,96,96,96,96,96,224, + 192,6,11,11,8,1,0,192,192,192,204,216,240,240,216,216, + 204,204,2,11,11,4,1,0,192,192,192,192,192,192,192,192, + 192,192,192,10,8,16,12,1,0,219,128,238,192,204,192,204, + 192,204,192,204,192,204,192,204,192,7,8,8,9,1,0,220, + 238,198,198,198,198,198,198,7,8,8,9,1,0,56,108,198, + 198,198,198,108,56,7,11,11,9,1,253,216,236,198,198,198, + 198,236,216,192,192,192,7,11,11,9,1,253,54,110,198,198, + 198,198,110,54,6,6,6,5,8,8,6,1,0,216,248,192, + 192,192,192,192,192,6,8,8,8,1,0,120,204,224,120,28, + 12,236,120,5,10,10,5,0,0,96,96,248,96,96,96,96, + 96,104,48,7,8,8,9,1,0,198,198,198,198,198,198,238, + 118,8,8,8,8,0,0,195,195,102,102,36,60,24,24,10, + 8,16,10,0,0,204,192,204,192,204,192,109,128,109,128,51, + 0,51,0,51,0,7,8,8,7,0,0,198,198,108,56,56, + 108,198,198,8,11,11,8,0,253,195,195,102,102,36,60,24, + 24,24,48,112,6,8,8,6,0,0,252,12,24,48,48,96, + 192,252,5,14,14,6,0,253,24,48,48,48,48,96,192,96, + 48,48,48,48,48,24,1,14,14,4,2,253,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,5,14,14,6,1,253, + 192,96,96,96,96,48,24,48,96,96,96,96,96,192,7,3, + 3,9,1,3,114,222,140,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,4,0,1,2,11, + 11,4,1,253,192,192,0,64,64,192,192,192,192,192,192,7, + 10,10,8,0,255,4,60,110,200,208,208,230,102,124,64,8, + 11,11,8,0,0,60,102,102,96,252,48,48,48,96,251,222, + 7,7,7,8,0,2,130,124,108,108,108,124,130,8,11,11, + 9,0,0,195,195,195,102,102,60,126,24,126,24,24,1,14, + 14,4,2,253,128,128,128,128,128,128,0,0,128,128,128,128, + 128,128,6,14,14,8,1,253,120,204,204,224,120,220,204,204, + 236,120,28,204,204,120,5,2,2,5,0,9,216,216,10,11, + 22,12,1,0,30,0,97,128,76,128,210,192,144,64,144,64, + 144,64,146,64,76,128,97,128,30,0,5,7,7,6,0,4, + 112,144,112,208,248,0,248,7,5,5,9,1,2,54,108,216, + 108,54,7,4,4,9,1,2,254,254,2,2,3,1,1,4, + 0,4,224,10,11,22,12,1,0,30,0,97,128,92,128,146, + 64,146,64,156,64,146,64,146,64,82,128,97,128,30,0,5, + 1,1,5,0,9,248,4,4,4,6,1,7,96,144,144,96, + 8,9,9,9,0,0,24,24,24,255,24,24,24,0,255,4, + 6,6,5,0,5,96,176,48,96,192,240,4,6,6,5,0, + 5,96,176,96,48,176,96,3,2,2,5,1,9,96,192,7, + 11,11,9,1,253,198,198,198,198,198,198,238,246,192,192,192, + 8,14,14,8,0,253,63,122,250,250,250,122,58,10,10,10, + 10,10,10,10,2,2,2,4,1,3,192,192,5,3,3,5, + 0,253,24,216,112,3,6,6,4,0,5,96,224,96,96,96, + 96,5,7,7,6,0,4,112,216,216,216,112,0,248,7,5, + 5,9,1,2,216,108,54,108,216,12,11,22,12,0,0,97, + 128,225,128,99,0,99,0,102,0,102,32,6,96,12,224,13, + 96,25,240,24,96,11,11,22,12,0,0,97,128,225,128,99, + 0,99,0,102,0,102,192,7,96,12,96,12,192,25,128,25, + 224,12,11,22,12,0,0,97,128,177,128,99,0,51,0,182, + 0,102,32,6,96,12,224,13,96,25,240,24,96,7,11,11, + 9,1,253,24,24,0,24,24,48,96,192,198,198,124,10,14, + 28,10,0,0,24,0,12,0,0,0,12,0,12,0,30,0, + 18,0,51,0,51,0,97,128,127,128,97,128,192,192,192,192, + 10,14,28,10,0,0,6,0,12,0,0,0,12,0,12,0, + 30,0,18,0,51,0,51,0,97,128,127,128,97,128,192,192, + 192,192,10,14,28,10,0,0,14,0,27,0,0,0,12,0, + 12,0,30,0,18,0,51,0,51,0,97,128,127,128,97,128, + 192,192,192,192,10,14,28,10,0,0,13,0,22,0,0,0, + 12,0,12,0,30,0,18,0,51,0,51,0,97,128,127,128, + 97,128,192,192,192,192,10,14,28,10,0,0,51,0,51,0, + 0,0,12,0,12,0,30,0,18,0,51,0,51,0,97,128, + 127,128,97,128,192,192,192,192,10,14,28,10,0,0,12,0, + 18,0,12,0,12,0,12,0,30,0,18,0,51,0,51,0, + 97,128,127,128,97,128,192,192,192,192,14,11,22,15,0,0, + 15,252,15,0,27,0,19,0,51,0,51,248,99,0,127,0, + 99,0,195,0,195,252,9,14,28,11,1,253,31,0,123,128, + 96,128,192,0,192,0,192,0,192,0,192,0,96,128,123,128, + 31,0,6,0,54,0,28,0,7,14,14,9,1,0,48,24, + 0,254,192,192,192,192,254,192,192,192,192,254,7,14,14,9, + 1,0,12,24,0,254,192,192,192,192,254,192,192,192,192,254, + 7,14,14,9,1,0,28,54,0,254,192,192,192,192,254,192, + 192,192,192,254,7,14,14,9,1,0,108,108,0,254,192,192, + 192,192,254,192,192,192,192,254,3,14,14,4,0,0,192,96, + 0,96,96,96,96,96,96,96,96,96,96,96,3,14,14,4, + 1,0,96,192,0,192,192,192,192,192,192,192,192,192,192,192, + 5,14,14,4,0,0,112,216,0,96,96,96,96,96,96,96, + 96,96,96,96,5,14,14,4,0,0,216,216,0,96,96,96, + 96,96,96,96,96,96,96,96,10,11,22,11,0,0,126,0, + 99,128,97,128,96,192,96,192,248,192,96,192,96,192,97,128, + 99,128,126,0,9,14,28,11,1,0,26,0,44,0,0,0, + 193,128,225,128,225,128,209,128,217,128,201,128,205,128,197,128, + 195,128,195,128,193,128,10,14,28,12,1,0,24,0,12,0, + 0,0,30,0,115,128,97,128,192,192,192,192,192,192,192,192, + 192,192,97,128,115,128,30,0,10,14,28,12,1,0,6,0, + 12,0,0,0,30,0,115,128,97,128,192,192,192,192,192,192, + 192,192,192,192,97,128,115,128,30,0,10,14,28,12,1,0, + 14,0,27,0,0,0,30,0,115,128,97,128,192,192,192,192, + 192,192,192,192,192,192,97,128,115,128,30,0,10,14,28,12, + 1,0,13,0,22,0,0,0,30,0,115,128,97,128,192,192, + 192,192,192,192,192,192,192,192,97,128,115,128,30,0,10,14, + 28,12,1,0,51,0,51,0,0,0,30,0,115,128,97,128, + 192,192,192,192,192,192,192,192,192,192,97,128,115,128,30,0, + 8,7,7,9,0,1,195,102,60,24,60,102,195,12,11,22, + 12,0,0,15,48,57,224,48,192,97,224,99,96,102,96,108, + 96,120,96,48,192,121,192,207,0,9,14,28,11,1,0,24, + 0,12,0,0,0,193,128,193,128,193,128,193,128,193,128,193, + 128,193,128,193,128,193,128,99,0,62,0,9,14,28,11,1, + 0,6,0,12,0,0,0,193,128,193,128,193,128,193,128,193, + 128,193,128,193,128,193,128,193,128,99,0,62,0,9,14,28, + 11,1,0,28,0,54,0,0,0,193,128,193,128,193,128,193, + 128,193,128,193,128,193,128,193,128,193,128,99,0,62,0,9, + 14,28,11,1,0,99,0,99,0,0,0,193,128,193,128,193, + 128,193,128,193,128,193,128,193,128,193,128,193,128,99,0,62, + 0,10,14,28,10,0,0,6,0,12,0,0,0,192,192,97, + 128,97,128,51,0,51,0,30,0,30,0,12,0,12,0,12, + 0,12,0,8,11,11,10,1,0,192,192,254,199,195,195,199, + 254,192,192,192,6,11,11,8,1,0,120,204,204,204,216,216, + 204,204,204,204,216,7,11,11,8,1,0,48,24,0,120,204, + 12,124,204,204,220,118,7,11,11,8,1,0,24,48,0,120, + 204,12,124,204,204,220,118,7,11,11,8,1,0,56,108,0, + 120,204,12,124,204,204,220,118,7,11,11,8,1,0,52,88, + 0,120,204,12,124,204,204,220,118,7,11,11,8,1,0,108, + 108,0,120,204,12,124,204,204,220,118,7,11,11,8,1,0, + 48,72,48,120,204,12,124,204,204,220,118,11,8,16,13,1, + 0,123,192,206,96,12,96,127,224,204,0,204,0,222,96,119, + 192,7,11,11,9,1,253,60,102,198,192,192,198,102,60,24, + 88,112,6,11,11,8,1,0,96,48,0,120,204,204,252,192, + 192,236,120,6,11,11,8,1,0,24,48,0,120,204,204,252, + 192,192,236,120,6,11,11,8,1,0,56,108,0,120,204,204, + 252,192,192,236,120,6,11,11,8,1,0,108,108,0,120,204, + 204,252,192,192,236,120,3,11,11,4,0,0,192,96,0,96, + 96,96,96,96,96,96,96,3,11,11,4,1,0,96,192,0, + 192,192,192,192,192,192,192,192,5,11,11,4,0,0,112,216, + 0,96,96,96,96,96,96,96,96,5,11,11,4,0,0,216, + 216,0,96,96,96,96,96,96,96,96,7,11,11,9,1,0, + 108,56,72,60,108,198,198,198,198,108,56,7,11,11,9,1, + 0,52,88,0,220,238,198,198,198,198,198,198,7,11,11,9, + 1,0,48,24,0,56,108,198,198,198,198,108,56,7,11,11, + 9,1,0,24,48,0,56,108,198,198,198,198,108,56,7,11, + 11,9,1,0,56,108,0,56,108,198,198,198,198,108,56,7, + 11,11,9,1,0,52,88,0,56,108,198,198,198,198,108,56, + 7,11,11,9,1,0,108,108,0,56,108,198,198,198,198,108, + 56,8,7,7,9,0,1,24,24,0,255,0,24,24,7,8, + 8,9,1,0,58,108,206,214,214,230,108,184,7,11,11,9, + 1,0,48,24,0,198,198,198,198,198,198,238,118,7,11,11, + 9,1,0,12,24,0,198,198,198,198,198,198,238,118,7,11, + 11,9,1,0,56,108,0,198,198,198,198,198,198,238,118,7, + 11,11,9,1,0,108,108,0,198,198,198,198,198,198,238,118, + 8,14,14,8,0,253,12,24,0,195,195,102,102,36,60,24, + 24,24,48,112,7,14,14,9,1,253,192,192,192,216,236,198, + 198,198,198,236,216,192,192,192,8,14,14,8,0,253,54,54, + 0,195,195,102,102,36,60,24,24,24,48,112}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--14-100-100-100-P-82-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=14 h=14 x= 2 y= 9 dx=14 dy= 0 ascent=12 len=24 + Font Bounding box w=17 h=23 x=-1 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB10r[1720] U8G_SECTION(".progmem.u8g_font_helvB10r") = { + 0,17,23,255,250,11,2,27,4,205,32,127,253,12,253,11, + 253,0,0,0,4,0,1,2,11,11,4,1,0,192,192,192, + 192,192,192,128,128,0,192,192,5,3,3,7,1,8,216,216, + 144,9,10,20,9,0,0,27,0,27,0,27,0,127,128,54, + 0,54,0,255,0,108,0,108,0,108,0,7,14,14,8,0, + 254,16,124,214,214,208,240,120,28,22,214,214,124,16,16,12, + 11,22,13,0,0,120,64,204,192,205,128,121,0,3,0,6, + 0,4,0,13,224,11,48,27,48,17,224,9,10,20,11,1, + 0,56,0,108,0,108,0,56,0,115,0,251,0,206,0,198, + 0,207,0,125,128,2,3,3,4,1,8,192,192,128,4,14, + 14,5,1,253,48,96,96,192,192,192,192,192,192,192,192,96, + 96,48,4,14,14,5,0,253,192,96,96,48,48,48,48,48, + 48,48,48,96,96,192,5,4,4,6,0,7,32,248,112,216, + 8,7,7,9,0,1,24,24,24,255,24,24,24,3,3,3, + 4,0,255,96,96,192,3,1,1,4,0,4,224,2,2,2, + 4,1,0,192,192,4,11,11,4,0,0,16,16,48,32,32, + 96,64,64,192,128,128,7,11,11,8,0,0,56,108,198,198, + 198,198,198,198,198,108,56,4,11,11,8,1,0,48,240,48, + 48,48,48,48,48,48,48,48,7,11,11,8,0,0,124,198, + 198,6,14,12,24,48,96,192,254,7,11,11,8,0,0,124, + 198,198,6,6,60,6,6,198,198,124,8,11,11,8,0,0, + 6,14,30,54,102,198,198,255,6,6,6,7,11,11,8,0, + 0,126,96,96,192,252,14,6,6,198,204,120,7,11,11,8, + 0,0,60,102,102,192,220,230,198,198,198,198,124,7,11,11, + 8,0,0,254,6,12,12,24,24,48,48,96,96,96,7,11, + 11,8,0,0,124,198,198,198,198,124,198,198,198,198,124,7, + 11,11,8,0,0,124,198,198,198,198,198,126,6,198,204,120, + 2,8,8,5,2,0,192,192,0,0,0,0,192,192,3,9, + 9,5,1,255,96,96,0,0,0,0,96,96,192,6,5,5, + 8,1,2,28,112,192,112,28,7,3,3,9,1,3,254,0, + 254,6,5,5,8,1,2,224,56,12,56,224,7,11,11,9, + 1,0,124,198,198,6,12,24,48,48,0,48,48,13,12,24, + 14,0,255,15,128,56,224,112,112,102,176,205,152,217,152,219, + 24,219,48,206,224,96,0,49,128,31,0,10,11,22,10,0, + 0,12,0,12,0,30,0,18,0,51,0,51,0,97,128,127, + 128,97,128,192,192,192,192,8,11,11,10,1,0,254,199,195, + 195,198,252,198,195,195,199,254,9,11,22,11,1,0,31,0, + 123,128,96,128,192,0,192,0,192,0,192,0,192,0,96,128, + 123,128,31,0,9,11,22,11,1,0,252,0,199,0,195,0, + 193,128,193,128,193,128,193,128,193,128,195,0,199,0,252,0, + 7,11,11,9,1,0,254,192,192,192,192,254,192,192,192,192, + 254,7,11,11,9,1,0,254,192,192,192,192,252,192,192,192, + 192,192,9,11,22,11,1,0,31,0,123,128,96,128,192,0, + 192,0,199,128,193,128,193,128,97,128,123,128,30,128,8,11, + 11,10,1,0,195,195,195,195,195,255,195,195,195,195,195,2, + 11,11,4,1,0,192,192,192,192,192,192,192,192,192,192,192, + 7,11,11,8,0,0,6,6,6,6,6,6,6,198,198,238, + 124,9,11,22,10,1,0,195,0,198,0,204,0,216,0,240, + 0,240,0,216,0,204,0,198,0,195,0,193,128,7,11,11, + 8,1,0,192,192,192,192,192,192,192,192,192,192,254,11,11, + 22,13,1,0,192,96,192,96,224,224,224,224,241,224,209,96, + 209,96,219,96,202,96,206,96,196,96,9,11,22,11,1,0, + 193,128,225,128,225,128,209,128,217,128,201,128,205,128,197,128, + 195,128,195,128,193,128,10,11,22,12,1,0,30,0,115,128, + 97,128,192,192,192,192,192,192,192,192,192,192,97,128,115,128, + 30,0,8,11,11,10,1,0,254,199,195,195,199,254,192,192, + 192,192,192,10,11,22,12,1,0,30,0,115,128,97,128,192, + 192,192,192,192,192,192,192,198,192,99,128,115,128,30,192,9, + 11,22,11,1,0,254,0,199,0,195,0,195,0,198,0,254, + 0,199,0,195,0,195,0,195,0,193,128,8,11,11,10,1, + 0,126,231,195,224,120,30,7,3,195,238,124,8,11,11,8, + 0,0,255,24,24,24,24,24,24,24,24,24,24,9,11,22, + 11,1,0,193,128,193,128,193,128,193,128,193,128,193,128,193, + 128,193,128,193,128,99,0,62,0,10,11,22,10,0,0,192, + 192,192,192,97,128,97,128,115,128,51,0,51,0,30,0,30, + 0,12,0,12,0,14,11,22,14,0,0,195,12,195,12,195, + 12,103,152,100,152,100,152,108,216,44,208,56,112,24,96,24, + 96,9,11,22,9,0,0,193,128,193,128,99,0,54,0,28, + 0,28,0,54,0,99,0,99,0,193,128,193,128,10,11,22, + 10,0,0,192,192,97,128,97,128,51,0,51,0,30,0,30, + 0,12,0,12,0,12,0,12,0,8,11,11,9,0,0,255, + 3,6,12,28,24,48,112,96,192,255,4,14,14,5,1,253, + 240,192,192,192,192,192,192,192,192,192,192,192,192,240,4,11, + 11,4,0,0,128,128,192,64,64,96,32,32,48,16,16,4, + 14,14,5,0,253,240,48,48,48,48,48,48,48,48,48,48, + 48,48,240,6,5,5,8,1,6,48,120,72,204,204,8,1, + 1,8,0,253,255,3,2,2,5,1,9,192,96,7,8,8, + 8,1,0,120,204,12,124,204,204,220,118,7,11,11,9,1, + 0,192,192,192,216,236,198,198,198,198,236,216,6,8,8,8, + 1,0,56,108,204,192,192,204,108,56,7,11,11,9,1,0, + 6,6,6,54,110,198,198,198,198,110,54,6,8,8,8,1, + 0,120,204,204,252,192,192,236,120,5,11,11,4,0,0,56, + 96,96,240,96,96,96,96,96,96,96,7,11,11,9,1,253, + 58,110,198,198,198,198,110,54,6,206,124,7,11,11,9,1, + 0,192,192,192,220,238,198,198,198,198,198,198,2,11,11,4, + 1,0,192,192,0,192,192,192,192,192,192,192,192,3,14,14, + 4,0,253,96,96,0,96,96,96,96,96,96,96,96,96,224, + 192,6,11,11,8,1,0,192,192,192,204,216,240,240,216,216, + 204,204,2,11,11,4,1,0,192,192,192,192,192,192,192,192, + 192,192,192,10,8,16,12,1,0,219,128,238,192,204,192,204, + 192,204,192,204,192,204,192,204,192,7,8,8,9,1,0,220, + 238,198,198,198,198,198,198,7,8,8,9,1,0,56,108,198, + 198,198,198,108,56,7,11,11,9,1,253,216,236,198,198,198, + 198,236,216,192,192,192,7,11,11,9,1,253,54,110,198,198, + 198,198,110,54,6,6,6,5,8,8,6,1,0,216,248,192, + 192,192,192,192,192,6,8,8,8,1,0,120,204,224,120,28, + 12,236,120,5,10,10,5,0,0,96,96,248,96,96,96,96, + 96,104,48,7,8,8,9,1,0,198,198,198,198,198,198,238, + 118,8,8,8,8,0,0,195,195,102,102,36,60,24,24,10, + 8,16,10,0,0,204,192,204,192,204,192,109,128,109,128,51, + 0,51,0,51,0,7,8,8,7,0,0,198,198,108,56,56, + 108,198,198,8,11,11,8,0,253,195,195,102,102,36,60,24, + 24,24,48,112,6,8,8,6,0,0,252,12,24,48,48,96, + 192,252,5,14,14,6,0,253,24,48,48,48,48,96,192,96, + 48,48,48,48,48,24,1,14,14,4,2,253,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,5,14,14,6,1,253, + 192,96,96,96,96,48,24,48,96,96,96,96,96,192,7,3, + 3,9,1,3,114,222,140,255}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--17-120-100-100-P-92-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=14 h=17 x= 2 y=10 dx=16 dy= 0 ascent=16 len=32 + Font Bounding box w=20 h=27 x=-2 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB12[4077] U8G_SECTION(".progmem.u8g_font_helvB12") = { + 0,20,27,254,249,12,2,74,5,106,32,255,252,16,252,12, + 252,0,0,0,5,0,1,2,12,12,6,2,0,192,192,192, + 192,192,192,128,128,128,0,192,192,5,4,4,8,1,8,216, + 216,216,72,9,12,24,9,0,0,27,0,27,0,27,0,127, + 128,127,128,54,0,54,0,255,0,255,0,108,0,108,0,108, + 0,7,14,14,9,1,255,16,124,254,214,208,240,120,60,30, + 22,214,254,124,16,13,12,24,14,0,0,48,64,120,128,204, + 128,205,0,121,0,50,0,2,96,4,240,5,152,9,152,8, + 240,16,96,10,12,24,12,1,0,60,0,126,0,102,0,102, + 0,60,0,56,192,125,192,207,128,199,0,199,0,127,128,57, + 192,2,4,4,4,1,8,192,192,192,64,4,15,15,6,1, + 253,48,112,96,192,192,192,192,192,192,192,192,192,96,112,48, + 4,15,15,6,0,253,192,224,96,48,48,48,48,48,48,48, + 48,48,96,224,192,5,5,5,6,0,7,32,168,112,112,136, + 8,8,8,10,1,0,24,24,24,255,255,24,24,24,2,5, + 5,4,1,253,192,192,64,64,128,4,2,2,5,0,3,240, + 240,2,2,2,4,1,0,192,192,4,12,12,5,0,0,16, + 16,48,32,32,96,64,64,192,128,128,128,8,12,12,9,0, + 0,60,126,231,195,195,195,195,195,195,231,126,60,5,12,12, + 9,1,0,8,24,248,248,24,24,24,24,24,24,24,24,8, + 12,12,9,0,0,60,126,231,195,195,7,14,28,56,112,255, + 255,8,12,12,9,0,0,60,126,231,195,7,30,30,7,195, + 231,126,60,8,12,12,9,0,0,14,30,54,54,102,102,198, + 255,255,6,6,6,8,12,12,9,0,0,63,63,48,48,124, + 126,71,3,3,231,126,60,8,12,12,9,0,0,60,126,231, + 192,220,254,231,195,195,231,126,60,8,12,12,9,0,0,255, + 255,6,6,12,12,24,24,24,48,48,48,8,12,12,9,0, + 0,60,126,231,195,102,60,126,231,195,231,126,60,8,12,12, + 9,0,0,60,126,231,195,195,231,127,59,3,231,126,60,2, + 8,8,5,2,0,192,192,0,0,0,0,192,192,2,11,11, + 5,2,253,192,192,0,0,0,0,192,192,64,64,128,8,8, + 8,10,1,0,3,15,60,224,224,60,15,3,8,6,6,10, + 1,1,255,255,0,0,255,255,8,8,8,10,1,0,192,240, + 60,7,7,60,240,192,7,12,12,10,1,0,124,254,198,198, + 6,14,12,24,24,0,24,24,13,14,28,16,1,254,15,192, + 56,96,96,16,71,216,204,72,136,200,152,200,152,136,153,152, + 201,144,70,96,96,0,56,192,15,128,11,12,24,12,0,0, + 14,0,14,0,31,0,27,0,59,128,49,128,113,192,96,192, + 127,192,255,224,192,96,192,96,9,12,24,11,1,0,254,0, + 255,0,195,128,193,128,195,128,255,0,255,0,195,128,193,128, + 195,128,255,0,254,0,10,12,24,12,1,0,31,0,63,128, + 113,192,96,192,224,0,192,0,192,0,224,0,96,192,113,192, + 63,128,31,0,10,12,24,12,1,0,252,0,255,0,195,128, + 193,128,193,192,192,192,192,192,193,192,193,128,195,128,255,0, + 252,0,8,12,12,10,1,0,255,255,192,192,192,254,254,192, + 192,192,255,255,8,12,12,10,1,0,255,255,192,192,192,254, + 254,192,192,192,192,192,10,12,24,12,1,0,31,0,63,128, + 113,192,96,192,224,0,192,0,195,192,227,192,96,192,113,192, + 63,192,30,192,10,12,24,12,1,0,192,192,192,192,192,192, + 192,192,255,192,255,192,192,192,192,192,192,192,192,192,192,192, + 192,192,2,12,12,4,1,0,192,192,192,192,192,192,192,192, + 192,192,192,192,7,12,12,9,1,0,6,6,6,6,6,6, + 6,6,198,198,254,124,11,12,24,12,1,0,193,192,195,128, + 199,0,206,0,220,0,248,0,252,0,206,0,199,0,195,128, + 193,192,192,224,8,12,12,10,1,0,192,192,192,192,192,192, + 192,192,192,192,255,255,11,12,24,13,1,0,224,224,224,224, + 224,224,241,224,241,224,209,96,219,96,219,96,202,96,206,96, + 206,96,196,96,10,12,24,12,1,0,224,192,240,192,240,192, + 216,192,216,192,204,192,204,192,198,192,198,192,195,192,195,192, + 193,192,11,12,24,13,1,0,31,0,63,128,113,192,96,192, + 224,224,192,96,192,96,224,224,96,192,113,192,63,128,31,0, + 9,12,24,11,1,0,254,0,255,0,195,128,193,128,193,128, + 195,128,255,0,254,0,192,0,192,0,192,0,192,0,11,13, + 26,13,1,255,31,0,63,128,113,192,96,192,224,224,192,96, + 192,96,226,96,103,192,115,192,63,128,31,192,0,128,10,12, + 24,12,1,0,255,0,255,128,193,128,193,128,195,128,255,0, + 255,0,195,128,193,128,193,128,193,192,193,192,9,12,24,11, + 1,0,62,0,127,0,227,128,193,128,240,0,126,0,31,0, + 3,128,193,128,227,128,127,0,62,0,10,12,24,10,0,0, + 255,192,255,192,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,10,12,24,12,1,0,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 225,192,127,128,63,0,10,12,24,11,0,0,192,192,192,192, + 97,128,97,128,97,128,51,0,51,0,51,0,30,0,30,0, + 12,0,12,0,14,12,24,15,0,0,195,12,195,12,195,12, + 99,24,103,152,103,152,52,176,60,240,60,240,24,96,24,96, + 24,96,9,12,24,11,1,0,193,128,227,128,99,0,54,0, + 62,0,28,0,28,0,62,0,54,0,99,0,227,128,193,128, + 10,12,24,11,0,0,192,192,225,192,97,128,51,0,51,0, + 30,0,30,0,12,0,12,0,12,0,12,0,12,0,8,12, + 12,10,1,0,255,255,7,6,12,28,56,48,96,224,255,255, + 4,15,15,6,1,253,240,240,192,192,192,192,192,192,192,192, + 192,192,192,240,240,4,12,12,5,0,0,128,128,192,64,64, + 96,32,32,48,16,16,16,4,15,15,6,0,253,240,240,48, + 48,48,48,48,48,48,48,48,48,48,240,240,8,7,7,10, + 1,5,24,24,60,102,102,195,195,9,1,2,9,0,253,255, + 128,3,3,3,6,2,10,128,192,32,8,9,9,9,1,0, + 124,254,198,14,126,230,198,254,119,8,12,12,10,1,0,192, + 192,192,220,254,231,195,195,195,231,254,220,8,9,9,9,1, + 0,60,126,231,192,192,192,231,126,60,8,12,12,10,1,0, + 3,3,3,63,127,231,195,195,195,231,127,59,8,9,9,10, + 1,0,60,126,195,255,255,192,231,126,60,4,12,12,6,1, + 0,48,112,96,240,240,96,96,96,96,96,96,96,8,13,13, + 10,1,252,59,127,231,195,195,195,231,127,59,3,231,126,60, + 8,12,12,10,1,0,192,192,192,222,255,227,195,195,195,195, + 195,195,2,12,12,4,1,0,192,192,0,192,192,192,192,192, + 192,192,192,192,3,16,16,5,1,252,96,96,0,96,96,96, + 96,96,96,96,96,96,96,96,224,192,8,12,12,9,1,0, + 192,192,192,199,206,220,248,252,236,206,198,199,2,12,12,4, + 1,0,192,192,192,192,192,192,192,192,192,192,192,192,12,9, + 18,14,1,0,222,224,255,240,231,48,198,48,198,48,198,48, + 198,48,198,48,198,48,8,9,9,10,1,0,222,255,227,195, + 195,195,195,195,195,8,9,9,10,1,0,60,126,231,195,195, + 195,231,126,60,8,13,13,10,1,252,220,254,231,195,195,195, + 231,254,220,192,192,192,192,8,13,13,10,1,252,59,127,231, + 195,195,195,231,127,59,3,3,3,3,5,9,9,6,1,0, + 216,248,224,192,192,192,192,192,192,7,9,9,9,1,0,124, + 254,198,240,124,14,198,254,124,4,11,11,6,1,0,96,96, + 240,240,96,96,96,96,96,112,48,8,9,9,10,1,0,195, + 195,195,195,195,195,199,255,123,8,9,9,9,0,0,195,195, + 102,102,102,60,60,24,24,12,9,18,13,0,0,198,48,198, + 48,102,96,102,96,111,96,63,192,57,192,25,128,25,128,7, + 9,9,9,1,0,198,198,108,124,56,124,108,198,198,8,13, + 13,9,0,252,195,195,99,102,54,54,60,28,24,24,24,112, + 96,7,9,9,8,0,0,254,254,14,28,24,56,112,254,254, + 4,15,15,6,1,253,48,112,96,96,96,96,96,192,96,96, + 96,96,96,112,48,1,16,16,4,1,252,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,4,15,15,6,1, + 253,192,224,96,96,96,96,96,48,96,96,96,96,96,224,192, + 8,3,3,10,1,3,113,153,142,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,0,0,0,5,0,1, + 2,12,12,6,1,253,192,192,0,64,64,64,192,192,192,192, + 192,192,8,11,11,9,0,255,4,60,126,239,200,216,208,247, + 126,60,32,8,12,12,9,0,0,28,62,99,99,96,48,124, + 48,48,32,127,255,7,7,7,9,1,2,186,124,198,198,198, + 124,186,8,12,12,9,0,0,195,195,102,102,60,24,126,24, + 126,24,24,24,1,16,16,5,2,252,128,128,128,128,128,128, + 128,0,0,128,128,128,128,128,128,128,8,15,15,9,0,253, + 60,126,102,96,120,126,199,195,243,126,30,6,102,126,60,5, + 2,2,6,0,10,216,216,12,12,24,12,0,0,15,0,57, + 192,96,96,79,32,217,176,144,16,144,16,217,176,79,32,96, + 32,57,192,15,0,5,7,7,6,1,5,96,144,112,144,120, + 0,248,8,6,6,9,0,2,51,102,204,204,102,51,8,5, + 5,10,0,2,255,255,3,3,3,4,2,2,5,0,3,240, + 240,12,12,24,12,0,0,15,0,57,192,96,96,95,32,217, + 176,153,144,158,16,219,48,91,32,96,96,57,192,15,0,5, + 1,1,6,0,10,248,4,5,5,7,1,7,96,144,144,144, + 96,8,11,11,10,1,0,24,24,24,255,255,24,24,24,0, + 255,255,5,7,7,6,0,5,112,216,216,48,96,248,248,5, + 7,7,6,0,5,112,216,24,48,24,216,112,3,3,3,6, + 1,10,32,96,128,8,12,12,10,1,253,195,195,195,195,195, + 195,199,255,251,192,192,192,8,15,15,9,0,253,127,242,242, + 242,242,242,114,18,18,18,18,18,18,18,18,2,2,2,5, + 1,4,192,192,5,4,4,6,0,252,32,48,152,112,4,7, + 7,6,1,5,48,240,240,48,48,48,48,5,7,7,6,0, + 5,112,216,136,216,112,0,248,8,6,6,9,1,2,204,102, + 51,51,102,204,13,12,24,14,1,0,48,192,240,128,241,128, + 49,0,51,48,50,112,54,240,4,176,13,176,9,248,24,48, + 16,48,12,12,24,14,0,0,48,128,241,128,241,0,51,0, + 50,0,54,224,53,176,13,176,8,96,24,192,17,240,49,240, + 13,12,24,14,0,0,112,64,216,192,24,128,49,128,25,48, + 219,112,114,240,6,176,5,176,13,248,8,48,24,48,7,12, + 12,10,1,253,48,48,0,48,48,96,224,192,198,198,254,124, + 11,16,32,12,0,0,16,0,24,0,4,0,0,0,14,0, + 14,0,31,0,27,0,59,128,49,128,113,192,96,192,127,192, + 255,224,192,96,192,96,11,16,32,12,0,0,2,0,6,0, + 8,0,0,0,14,0,14,0,31,0,27,0,59,128,49,128, + 113,192,96,192,127,192,255,224,192,96,192,96,11,16,32,12, + 0,0,4,0,14,0,17,0,0,0,14,0,14,0,31,0, + 27,0,59,128,49,128,113,192,96,192,127,192,255,224,192,96, + 192,96,11,15,30,12,0,0,14,128,23,0,0,0,14,0, + 14,0,31,0,27,0,59,128,49,128,113,192,96,192,127,192, + 255,224,192,96,192,96,11,15,30,12,0,0,49,128,49,128, + 0,0,14,0,14,0,31,0,27,0,59,128,49,128,113,192, + 96,192,127,192,255,224,192,96,192,96,11,16,32,12,0,0, + 12,0,18,0,18,0,12,0,14,0,14,0,31,0,27,0, + 59,128,49,128,113,192,96,192,127,192,255,224,192,96,192,96, + 14,12,24,15,0,0,31,252,31,252,27,0,51,0,51,0, + 51,248,99,248,127,0,127,0,195,0,195,252,195,252,10,16, + 32,12,1,252,31,0,63,128,113,192,96,192,224,0,192,0, + 192,0,224,0,96,192,113,192,63,128,31,0,4,0,6,0, + 19,0,14,0,8,16,16,10,1,0,32,48,8,0,255,255, + 192,192,192,254,254,192,192,192,255,255,8,16,16,10,1,0, + 4,12,16,0,255,255,192,192,192,254,254,192,192,192,255,255, + 8,16,16,10,1,0,8,28,34,0,255,255,192,192,192,254, + 254,192,192,192,255,255,8,15,15,10,1,0,102,102,0,255, + 255,192,192,192,254,254,192,192,192,255,255,3,16,16,4,0, + 0,128,192,32,0,96,96,96,96,96,96,96,96,96,96,96, + 96,3,16,16,4,1,0,32,96,128,0,192,192,192,192,192, + 192,192,192,192,192,192,192,5,16,16,4,0,0,32,112,136, + 0,96,96,96,96,96,96,96,96,96,96,96,96,6,15,15, + 4,255,0,204,204,0,48,48,48,48,48,48,48,48,48,48, + 48,48,12,12,24,12,0,0,63,0,63,192,48,224,48,96, + 48,112,252,48,252,48,48,112,48,96,48,224,63,192,63,0, + 10,15,30,12,1,0,29,0,46,0,0,0,224,192,240,192, + 240,192,216,192,216,192,204,192,204,192,198,192,198,192,195,192, + 195,192,193,192,11,16,32,13,1,0,8,0,12,0,2,0, + 0,0,31,0,63,128,113,192,96,192,224,224,192,96,192,96, + 224,224,96,192,113,192,63,128,31,0,11,16,32,13,1,0, + 1,0,3,0,4,0,0,0,31,0,63,128,113,192,96,192, + 224,224,192,96,192,96,224,224,96,192,113,192,63,128,31,0, + 11,16,32,13,1,0,4,0,14,0,17,0,0,0,31,0, + 63,128,113,192,96,192,224,224,192,96,192,96,224,224,96,192, + 113,192,63,128,31,0,11,15,30,13,1,0,14,128,23,0, + 0,0,31,0,63,128,113,192,96,192,224,224,192,96,192,96, + 224,224,96,192,113,192,63,128,31,0,11,15,30,13,1,0, + 25,128,25,128,0,0,31,0,63,128,113,192,96,192,224,224, + 192,96,192,96,224,224,96,192,113,192,63,128,31,0,9,9, + 18,10,0,0,65,0,227,128,119,0,62,0,28,0,62,0, + 119,0,227,128,65,0,11,12,24,13,1,0,31,32,63,192, + 112,192,97,192,227,96,198,96,204,96,216,224,112,192,97,192, + 127,128,159,0,10,16,32,12,1,0,16,0,24,0,4,0, + 0,0,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,225,192,127,128,63,0,10,16,32,12,1,0, + 2,0,6,0,8,0,0,0,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,225,192,127,128,63,0, + 10,16,32,12,1,0,4,0,14,0,17,0,0,0,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 225,192,127,128,63,0,10,15,30,12,1,0,51,0,51,0, + 0,0,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,225,192,127,128,63,0,10,16,32,11,0,0, + 2,0,6,0,8,0,0,0,192,192,225,192,97,128,51,0, + 51,0,30,0,30,0,12,0,12,0,12,0,12,0,12,0, + 9,12,24,11,1,0,192,0,254,0,255,0,195,128,193,128, + 193,128,195,128,255,0,254,0,192,0,192,0,192,0,8,12, + 12,10,1,0,124,254,198,198,220,222,195,195,195,195,222,220, + 8,13,13,9,1,0,32,48,8,0,124,254,198,14,126,230, + 198,254,119,8,13,13,9,1,0,4,12,16,0,124,254,198, + 14,126,230,198,254,119,8,13,13,9,1,0,16,56,68,0, + 124,254,198,14,126,230,198,254,119,8,12,12,9,1,0,58, + 92,0,124,254,198,14,126,230,198,254,119,8,12,12,9,1, + 0,108,108,0,124,254,198,14,126,230,198,254,119,8,13,13, + 9,1,0,24,36,36,24,124,254,198,14,126,230,198,254,119, + 13,9,18,15,1,0,125,224,255,240,198,24,15,248,127,248, + 230,0,207,56,255,240,121,224,8,13,13,9,1,252,60,126, + 231,192,192,192,231,126,60,16,24,76,56,8,13,13,10,1, + 0,32,48,8,0,60,126,195,255,255,192,231,126,60,8,13, + 13,10,1,0,4,12,16,0,60,126,195,255,255,192,231,126, + 60,8,13,13,10,1,0,8,28,34,0,60,126,195,255,255, + 192,231,126,60,8,12,12,10,1,0,54,54,0,60,126,195, + 255,255,192,231,126,60,3,13,13,4,0,0,128,192,32,0, + 96,96,96,96,96,96,96,96,96,3,13,13,4,1,0,32, + 96,128,0,192,192,192,192,192,192,192,192,192,5,13,13,4, + 0,0,32,112,136,0,96,96,96,96,96,96,96,96,96,5, + 12,12,4,0,0,216,216,0,96,96,96,96,96,96,96,96, + 96,8,12,12,10,1,0,96,124,248,28,126,231,195,195,195, + 231,126,60,8,12,12,10,1,0,58,92,0,222,255,227,195, + 195,195,195,195,195,8,13,13,10,1,0,32,48,8,0,60, + 126,231,195,195,195,231,126,60,8,13,13,10,1,0,8,24, + 32,0,60,126,231,195,195,195,231,126,60,8,13,13,10,1, + 0,16,56,68,0,60,126,231,195,195,195,231,126,60,8,12, + 12,10,1,0,58,92,0,60,126,231,195,195,195,231,126,60, + 8,12,12,10,1,0,108,108,0,60,126,231,195,195,195,231, + 126,60,8,8,8,10,1,0,24,24,0,255,255,0,24,24, + 8,9,9,10,1,0,61,127,231,207,219,243,231,254,188,8, + 13,13,10,1,0,32,48,8,0,195,195,195,195,195,195,199, + 255,123,8,13,13,10,1,0,8,24,32,0,195,195,195,195, + 195,195,199,255,123,8,13,13,10,1,0,16,56,68,0,195, + 195,195,195,195,195,199,255,123,8,12,12,10,1,0,108,108, + 0,195,195,195,195,195,195,199,255,123,8,17,17,9,0,252, + 4,12,16,0,195,195,99,102,54,54,60,28,24,24,24,112, + 96,8,16,16,10,1,252,192,192,192,220,254,231,195,195,195, + 231,254,220,192,192,192,192,8,16,16,9,0,252,54,54,0, + 195,195,99,102,54,54,60,28,24,24,24,112,96}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--17-120-100-100-P-92-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=14 h=16 x= 2 y=10 dx=16 dy= 0 ascent=13 len=28 + Font Bounding box w=20 h=27 x=-2 y=-7 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB12r[1914] U8G_SECTION(".progmem.u8g_font_helvB12r") = { + 0,20,27,254,249,12,2,74,5,106,32,127,252,13,252,12, + 252,0,0,0,5,0,1,2,12,12,6,2,0,192,192,192, + 192,192,192,128,128,128,0,192,192,5,4,4,8,1,8,216, + 216,216,72,9,12,24,9,0,0,27,0,27,0,27,0,127, + 128,127,128,54,0,54,0,255,0,255,0,108,0,108,0,108, + 0,7,14,14,9,1,255,16,124,254,214,208,240,120,60,30, + 22,214,254,124,16,13,12,24,14,0,0,48,64,120,128,204, + 128,205,0,121,0,50,0,2,96,4,240,5,152,9,152,8, + 240,16,96,10,12,24,12,1,0,60,0,126,0,102,0,102, + 0,60,0,56,192,125,192,207,128,199,0,199,0,127,128,57, + 192,2,4,4,4,1,8,192,192,192,64,4,15,15,6,1, + 253,48,112,96,192,192,192,192,192,192,192,192,192,96,112,48, + 4,15,15,6,0,253,192,224,96,48,48,48,48,48,48,48, + 48,48,96,224,192,5,5,5,6,0,7,32,168,112,112,136, + 8,8,8,10,1,0,24,24,24,255,255,24,24,24,2,5, + 5,4,1,253,192,192,64,64,128,4,2,2,5,0,3,240, + 240,2,2,2,4,1,0,192,192,4,12,12,5,0,0,16, + 16,48,32,32,96,64,64,192,128,128,128,8,12,12,9,0, + 0,60,126,231,195,195,195,195,195,195,231,126,60,5,12,12, + 9,1,0,8,24,248,248,24,24,24,24,24,24,24,24,8, + 12,12,9,0,0,60,126,231,195,195,7,14,28,56,112,255, + 255,8,12,12,9,0,0,60,126,231,195,7,30,30,7,195, + 231,126,60,8,12,12,9,0,0,14,30,54,54,102,102,198, + 255,255,6,6,6,8,12,12,9,0,0,63,63,48,48,124, + 126,71,3,3,231,126,60,8,12,12,9,0,0,60,126,231, + 192,220,254,231,195,195,231,126,60,8,12,12,9,0,0,255, + 255,6,6,12,12,24,24,24,48,48,48,8,12,12,9,0, + 0,60,126,231,195,102,60,126,231,195,231,126,60,8,12,12, + 9,0,0,60,126,231,195,195,231,127,59,3,231,126,60,2, + 8,8,5,2,0,192,192,0,0,0,0,192,192,2,11,11, + 5,2,253,192,192,0,0,0,0,192,192,64,64,128,8,8, + 8,10,1,0,3,15,60,224,224,60,15,3,8,6,6,10, + 1,1,255,255,0,0,255,255,8,8,8,10,1,0,192,240, + 60,7,7,60,240,192,7,12,12,10,1,0,124,254,198,198, + 6,14,12,24,24,0,24,24,13,14,28,16,1,254,15,192, + 56,96,96,16,71,216,204,72,136,200,152,200,152,136,153,152, + 201,144,70,96,96,0,56,192,15,128,11,12,24,12,0,0, + 14,0,14,0,31,0,27,0,59,128,49,128,113,192,96,192, + 127,192,255,224,192,96,192,96,9,12,24,11,1,0,254,0, + 255,0,195,128,193,128,195,128,255,0,255,0,195,128,193,128, + 195,128,255,0,254,0,10,12,24,12,1,0,31,0,63,128, + 113,192,96,192,224,0,192,0,192,0,224,0,96,192,113,192, + 63,128,31,0,10,12,24,12,1,0,252,0,255,0,195,128, + 193,128,193,192,192,192,192,192,193,192,193,128,195,128,255,0, + 252,0,8,12,12,10,1,0,255,255,192,192,192,254,254,192, + 192,192,255,255,8,12,12,10,1,0,255,255,192,192,192,254, + 254,192,192,192,192,192,10,12,24,12,1,0,31,0,63,128, + 113,192,96,192,224,0,192,0,195,192,227,192,96,192,113,192, + 63,192,30,192,10,12,24,12,1,0,192,192,192,192,192,192, + 192,192,255,192,255,192,192,192,192,192,192,192,192,192,192,192, + 192,192,2,12,12,4,1,0,192,192,192,192,192,192,192,192, + 192,192,192,192,7,12,12,9,1,0,6,6,6,6,6,6, + 6,6,198,198,254,124,11,12,24,12,1,0,193,192,195,128, + 199,0,206,0,220,0,248,0,252,0,206,0,199,0,195,128, + 193,192,192,224,8,12,12,10,1,0,192,192,192,192,192,192, + 192,192,192,192,255,255,11,12,24,13,1,0,224,224,224,224, + 224,224,241,224,241,224,209,96,219,96,219,96,202,96,206,96, + 206,96,196,96,10,12,24,12,1,0,224,192,240,192,240,192, + 216,192,216,192,204,192,204,192,198,192,198,192,195,192,195,192, + 193,192,11,12,24,13,1,0,31,0,63,128,113,192,96,192, + 224,224,192,96,192,96,224,224,96,192,113,192,63,128,31,0, + 9,12,24,11,1,0,254,0,255,0,195,128,193,128,193,128, + 195,128,255,0,254,0,192,0,192,0,192,0,192,0,11,13, + 26,13,1,255,31,0,63,128,113,192,96,192,224,224,192,96, + 192,96,226,96,103,192,115,192,63,128,31,192,0,128,10,12, + 24,12,1,0,255,0,255,128,193,128,193,128,195,128,255,0, + 255,0,195,128,193,128,193,128,193,192,193,192,9,12,24,11, + 1,0,62,0,127,0,227,128,193,128,240,0,126,0,31,0, + 3,128,193,128,227,128,127,0,62,0,10,12,24,10,0,0, + 255,192,255,192,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,10,12,24,12,1,0,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 225,192,127,128,63,0,10,12,24,11,0,0,192,192,192,192, + 97,128,97,128,97,128,51,0,51,0,51,0,30,0,30,0, + 12,0,12,0,14,12,24,15,0,0,195,12,195,12,195,12, + 99,24,103,152,103,152,52,176,60,240,60,240,24,96,24,96, + 24,96,9,12,24,11,1,0,193,128,227,128,99,0,54,0, + 62,0,28,0,28,0,62,0,54,0,99,0,227,128,193,128, + 10,12,24,11,0,0,192,192,225,192,97,128,51,0,51,0, + 30,0,30,0,12,0,12,0,12,0,12,0,12,0,8,12, + 12,10,1,0,255,255,7,6,12,28,56,48,96,224,255,255, + 4,15,15,6,1,253,240,240,192,192,192,192,192,192,192,192, + 192,192,192,240,240,4,12,12,5,0,0,128,128,192,64,64, + 96,32,32,48,16,16,16,4,15,15,6,0,253,240,240,48, + 48,48,48,48,48,48,48,48,48,48,240,240,8,7,7,10, + 1,5,24,24,60,102,102,195,195,9,1,2,9,0,253,255, + 128,3,3,3,6,2,10,128,192,32,8,9,9,9,1,0, + 124,254,198,14,126,230,198,254,119,8,12,12,10,1,0,192, + 192,192,220,254,231,195,195,195,231,254,220,8,9,9,9,1, + 0,60,126,231,192,192,192,231,126,60,8,12,12,10,1,0, + 3,3,3,63,127,231,195,195,195,231,127,59,8,9,9,10, + 1,0,60,126,195,255,255,192,231,126,60,4,12,12,6,1, + 0,48,112,96,240,240,96,96,96,96,96,96,96,8,13,13, + 10,1,252,59,127,231,195,195,195,231,127,59,3,231,126,60, + 8,12,12,10,1,0,192,192,192,222,255,227,195,195,195,195, + 195,195,2,12,12,4,1,0,192,192,0,192,192,192,192,192, + 192,192,192,192,3,16,16,5,1,252,96,96,0,96,96,96, + 96,96,96,96,96,96,96,96,224,192,8,12,12,9,1,0, + 192,192,192,199,206,220,248,252,236,206,198,199,2,12,12,4, + 1,0,192,192,192,192,192,192,192,192,192,192,192,192,12,9, + 18,14,1,0,222,224,255,240,231,48,198,48,198,48,198,48, + 198,48,198,48,198,48,8,9,9,10,1,0,222,255,227,195, + 195,195,195,195,195,8,9,9,10,1,0,60,126,231,195,195, + 195,231,126,60,8,13,13,10,1,252,220,254,231,195,195,195, + 231,254,220,192,192,192,192,8,13,13,10,1,252,59,127,231, + 195,195,195,231,127,59,3,3,3,3,5,9,9,6,1,0, + 216,248,224,192,192,192,192,192,192,7,9,9,9,1,0,124, + 254,198,240,124,14,198,254,124,4,11,11,6,1,0,96,96, + 240,240,96,96,96,96,96,112,48,8,9,9,10,1,0,195, + 195,195,195,195,195,199,255,123,8,9,9,9,0,0,195,195, + 102,102,102,60,60,24,24,12,9,18,13,0,0,198,48,198, + 48,102,96,102,96,111,96,63,192,57,192,25,128,25,128,7, + 9,9,9,1,0,198,198,108,124,56,124,108,198,198,8,13, + 13,9,0,252,195,195,99,102,54,54,60,28,24,24,24,112, + 96,7,9,9,8,0,0,254,254,14,28,24,56,112,254,254, + 4,15,15,6,1,253,48,112,96,96,96,96,96,192,96,96, + 96,96,96,112,48,1,16,16,4,1,252,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,4,15,15,6,1, + 253,192,224,96,96,96,96,96,48,96,96,96,96,96,224,192, + 8,3,3,10,1,3,113,153,142,255}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--20-140-100-100-P-105-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 13 + Calculated Max Values w=16 h=19 x= 2 y=12 dx=18 dy= 0 ascent=18 len=38 + Font Bounding box w=22 h=29 x=-2 y=-7 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =18 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB14[5489] U8G_SECTION(".progmem.u8g_font_helvB14") = { + 0,22,29,254,249,14,3,23,6,234,32,255,252,18,251,14, + 252,0,0,0,5,0,1,3,14,14,5,1,0,224,224,224, + 224,224,224,224,224,192,192,0,224,224,224,5,5,5,7,1, + 9,216,216,216,216,144,11,13,26,11,0,0,13,128,13,128, + 13,128,127,224,127,224,27,0,27,0,27,0,255,192,255,192, + 54,0,54,0,54,0,10,16,32,10,0,254,4,0,63,0, + 127,128,229,128,228,0,228,0,124,0,63,0,15,128,9,192, + 233,192,233,192,127,128,63,0,8,0,8,0,13,13,26,16, + 1,0,120,96,252,96,204,192,204,128,253,128,123,0,2,0, + 6,240,13,248,9,152,25,152,49,248,48,240,13,14,28,14, + 1,0,30,0,63,0,115,128,97,128,115,0,62,0,28,96, + 126,96,231,224,195,192,193,192,227,224,127,112,62,56,2,5, + 5,4,1,9,192,192,192,192,128,6,18,18,7,1,252,28, + 56,48,112,96,224,224,224,224,224,224,224,224,96,112,48,56, + 28,6,18,18,7,0,252,224,112,48,56,24,28,28,28,28, + 28,28,28,28,24,56,48,112,224,7,6,6,9,1,8,16, + 214,124,56,108,68,8,8,8,11,1,1,24,24,24,255,255, + 24,24,24,3,6,6,5,1,253,224,224,224,96,192,128,5, + 3,3,6,0,4,248,248,248,3,3,3,5,1,0,224,224, + 224,5,14,14,5,0,0,24,24,24,56,48,48,48,112,96, + 96,224,192,192,192,9,13,26,10,0,0,28,0,127,0,119, + 0,227,128,227,128,227,128,227,128,227,128,227,128,227,128,119, + 0,127,0,28,0,6,13,13,10,1,0,28,60,252,252,28, + 28,28,28,28,28,28,28,28,9,13,26,10,0,0,62,0, + 127,0,227,128,227,128,3,128,7,0,31,0,62,0,120,0, + 112,0,224,0,255,128,255,128,9,13,26,10,0,0,62,0, + 127,0,231,0,227,0,7,0,30,0,31,0,7,128,3,128, + 227,128,231,128,127,0,62,0,9,13,26,10,0,0,7,0, + 15,0,31,0,63,0,55,0,119,0,103,0,231,0,255,128, + 255,128,7,0,7,0,7,0,9,13,26,10,0,0,255,0, + 255,0,224,0,224,0,254,0,255,0,231,128,3,128,3,128, + 227,128,231,128,255,0,126,0,9,13,26,10,0,0,63,0, + 127,128,113,128,224,0,238,0,255,0,243,128,225,128,225,128, + 225,128,243,128,127,0,62,0,9,13,26,10,0,0,255,128, + 255,128,3,128,7,0,14,0,14,0,28,0,28,0,56,0, + 56,0,112,0,112,0,112,0,9,13,26,10,0,0,62,0, + 127,0,227,128,227,128,227,128,127,0,62,0,119,0,227,128, + 227,128,227,128,127,0,62,0,9,13,26,10,0,0,62,0, + 127,0,231,128,195,128,195,128,195,128,231,128,127,128,59,128, + 3,128,199,0,255,0,126,0,3,10,10,6,1,0,224,224, + 224,0,0,0,0,224,224,224,3,13,13,6,1,253,224,224, + 224,0,0,0,0,224,224,224,96,192,128,9,9,18,11,1, + 0,3,128,15,128,62,0,120,0,224,0,120,0,62,0,15, + 128,3,128,9,5,10,11,1,3,255,128,255,128,0,0,255, + 128,255,128,9,9,18,11,1,0,224,0,248,0,62,0,15, + 0,3,128,15,0,62,0,248,0,224,0,8,14,14,10,1, + 0,126,255,231,231,14,30,28,56,56,56,0,56,56,56,16, + 17,34,18,1,253,7,240,31,252,60,30,112,6,99,183,231, + 243,198,99,204,99,204,195,204,198,204,198,239,252,231,184,112, + 0,60,0,31,240,7,240,12,14,28,14,1,0,15,0,15, + 0,31,128,25,128,25,128,57,192,57,192,48,192,112,224,127, + 224,127,224,224,112,224,112,224,112,11,14,28,14,2,0,254, + 0,255,128,227,192,225,192,225,192,227,128,255,128,255,192,225, + 224,224,224,224,224,225,224,255,192,255,0,12,14,28,14,1, + 0,15,128,63,224,120,224,112,112,240,112,224,0,224,0,224, + 0,224,0,240,112,112,112,120,224,63,224,15,128,12,14,28, + 14,1,0,255,0,255,192,225,224,224,224,224,112,224,112,224, + 112,224,112,224,112,224,112,224,224,225,224,255,192,255,0,10, + 14,28,13,2,0,255,192,255,192,224,0,224,0,224,0,224, + 0,255,128,255,128,224,0,224,0,224,0,224,0,255,192,255, + 192,10,14,28,12,1,0,255,192,255,192,224,0,224,0,224, + 0,224,0,255,128,255,128,224,0,224,0,224,0,224,0,224, + 0,224,0,12,14,28,15,1,0,15,128,63,224,120,224,112, + 112,240,112,224,0,224,0,227,240,227,240,240,112,112,112,120, + 240,63,240,31,176,12,14,28,14,1,0,224,112,224,112,224, + 112,224,112,224,112,224,112,255,240,255,240,224,112,224,112,224, + 112,224,112,224,112,224,112,3,14,14,5,1,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,9,14,28,10,0, + 0,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,227,128,227,128,247,128,127,0,62,0,13,14,28, + 14,1,0,224,240,225,224,227,192,231,128,239,0,254,0,252, + 0,254,0,239,0,231,128,227,192,225,224,224,240,224,120,9, + 14,28,11,1,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,255,128,255, + 128,14,14,28,16,1,0,224,28,224,28,240,60,240,60,248, + 124,248,124,248,124,236,220,236,220,236,220,231,156,231,156,227, + 28,227,28,12,14,28,14,1,0,224,112,240,112,240,112,248, + 112,252,112,236,112,238,112,230,112,231,112,227,112,225,240,225, + 240,224,240,224,112,13,14,28,15,1,0,15,128,63,224,120, + 240,112,112,240,120,224,56,224,56,224,56,224,56,240,120,112, + 112,120,240,63,224,15,128,11,14,28,13,1,0,255,0,255, + 192,225,224,224,224,224,224,224,224,225,224,255,192,255,0,224, + 0,224,0,224,0,224,0,224,0,13,15,30,15,1,255,15, + 128,63,224,120,240,112,112,240,120,224,56,224,56,224,56,224, + 56,243,120,115,240,121,240,63,224,15,240,0,48,12,14,28, + 14,1,0,255,0,255,192,225,224,224,224,224,224,225,224,255, + 192,255,128,225,192,224,224,224,224,224,224,224,224,224,240,11, + 14,28,13,1,0,63,128,127,192,241,224,224,224,240,0,126, + 0,63,128,15,192,1,224,224,224,224,224,241,224,127,192,63, + 128,11,14,28,11,0,0,255,224,255,224,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,12,14,28,14,1,0,224,112,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,112, + 224,127,224,31,128,13,14,28,13,0,0,224,56,224,56,112, + 112,112,112,48,96,56,224,56,224,29,192,29,192,13,128,15, + 128,15,128,7,0,7,0,15,14,28,17,1,0,227,142,227, + 142,227,142,227,142,115,156,115,156,115,156,118,220,54,216,54, + 216,62,248,28,112,28,112,28,112,12,14,28,12,0,0,224, + 112,224,112,112,224,121,224,25,128,31,128,15,0,31,128,25, + 128,57,192,112,224,112,224,224,112,224,112,13,14,28,13,0, + 0,224,56,224,56,112,112,56,224,56,224,29,192,29,192,15, + 128,7,0,7,0,7,0,7,0,7,0,7,0,10,14,28, + 12,1,0,255,192,255,192,1,192,3,128,7,0,7,0,14, + 0,28,0,56,0,56,0,112,0,224,0,255,192,255,192,5, + 18,18,6,1,252,248,248,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,248,248,5,14,14,5,0,0,192,192,192, + 224,96,96,96,112,48,48,56,24,24,24,5,18,18,6,0, + 252,248,248,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,248,248,10,7,14,10,0,6,12,0,30,0,30,0,51, + 0,115,128,97,128,225,192,10,2,4,10,0,252,255,192,255, + 192,5,3,3,5,0,11,224,112,56,10,10,20,11,1,0, + 62,0,127,0,99,128,7,128,63,128,123,128,227,128,231,128, + 251,128,123,192,10,14,28,12,1,0,224,0,224,0,224,0, + 224,0,239,0,255,128,243,128,225,192,225,192,225,192,225,192, + 243,128,255,128,239,0,9,10,20,11,1,0,30,0,127,128, + 115,128,224,0,224,0,224,0,224,0,115,128,127,128,30,0, + 10,14,28,12,1,0,1,192,1,192,1,192,1,192,61,192, + 127,192,115,192,225,192,225,192,225,192,225,192,115,192,127,192, + 61,192,9,10,20,11,1,0,30,0,127,0,115,128,225,128, + 255,128,255,128,224,0,115,128,127,128,30,0,7,14,14,7, + 0,0,30,62,56,56,254,254,56,56,56,56,56,56,56,56, + 10,14,28,12,1,252,61,192,127,192,115,192,225,192,225,192, + 225,192,225,192,115,192,127,192,61,192,1,192,115,128,127,128, + 30,0,9,14,28,11,1,0,224,0,224,0,224,0,224,0, + 239,0,255,128,243,128,227,128,227,128,227,128,227,128,227,128, + 227,128,227,128,3,14,14,5,1,0,224,224,224,0,224,224, + 224,224,224,224,224,224,224,224,5,18,18,5,255,252,56,56, + 56,0,56,56,56,56,56,56,56,56,56,56,56,56,248,240, + 9,14,28,10,1,0,224,0,224,0,224,0,224,0,231,0, + 238,0,252,0,248,0,248,0,252,0,238,0,231,0,231,128, + 227,128,3,14,14,5,1,0,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,15,10,20,17,1,0,239,60,255,254, + 243,206,227,142,227,142,227,142,227,142,227,142,227,142,227,142, + 9,10,20,11,1,0,239,0,255,128,243,128,227,128,227,128, + 227,128,227,128,227,128,227,128,227,128,10,10,20,12,1,0, + 30,0,127,128,115,128,225,192,225,192,225,192,225,192,115,128, + 127,128,30,0,10,14,28,12,1,252,239,0,255,128,243,128, + 225,192,225,192,225,192,225,192,243,128,255,128,239,0,224,0, + 224,0,224,0,224,0,10,14,28,12,1,252,61,192,127,192, + 115,192,225,192,225,192,225,192,225,192,115,192,127,192,61,192, + 1,192,1,192,1,192,1,192,6,10,10,7,1,0,236,252, + 252,224,224,224,224,224,224,224,9,10,20,11,1,0,63,0, + 127,128,227,128,224,0,255,0,63,128,3,128,227,128,255,0, + 126,0,6,13,13,6,0,0,112,112,112,252,252,112,112,112, + 112,112,112,124,60,9,10,20,11,1,0,227,128,227,128,227, + 128,227,128,227,128,227,128,227,128,231,128,255,128,123,128,9, + 10,20,9,0,0,227,128,227,128,227,128,119,0,119,0,119, + 0,62,0,62,0,28,0,28,0,15,10,20,15,0,0,227, + 142,227,142,227,142,115,156,119,220,118,220,62,248,60,120,28, + 112,28,112,9,10,20,11,1,0,227,128,227,128,119,0,62, + 0,28,0,62,0,119,0,119,0,227,128,227,128,9,14,28, + 11,1,252,227,128,227,128,227,128,119,0,119,0,119,0,62, + 0,62,0,28,0,28,0,28,0,24,0,120,0,112,0,8, + 10,10,10,1,0,255,255,7,14,28,56,112,224,255,255,7, + 18,18,8,1,252,14,28,56,56,56,56,56,112,224,112,56, + 56,56,56,56,56,28,14,2,18,18,5,1,252,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,7, + 18,18,8,0,252,224,112,56,56,56,56,56,28,14,28,56, + 56,56,56,56,56,112,224,9,3,6,11,1,4,121,128,255, + 128,207,0,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,0,0,0,5,0,1,3,14,14,6,2,252, + 224,224,224,0,96,96,224,224,224,224,224,224,224,224,8,14, + 14,10,1,254,2,2,62,127,231,200,200,208,208,227,127,126, + 64,64,10,13,26,11,0,0,31,0,63,192,113,192,112,0, + 112,0,56,0,127,0,28,0,28,0,56,0,112,192,255,192, + 239,128,9,8,16,11,1,2,193,128,255,128,119,0,99,0, + 99,0,119,0,255,128,193,128,9,13,26,10,0,0,227,128, + 227,128,227,128,119,0,119,0,62,0,255,128,28,0,255,128, + 28,0,28,0,28,0,28,0,2,18,18,5,1,252,192,192, + 192,192,192,192,192,192,0,0,192,192,192,192,192,192,192,192, + 9,18,36,10,0,252,62,0,127,0,227,128,227,128,240,0, + 124,0,254,0,199,0,195,128,225,128,113,128,63,128,15,0, + 7,128,227,128,227,128,127,0,62,0,5,2,2,7,1,12, + 216,216,14,14,28,15,1,0,15,192,56,112,96,24,199,140, + 207,204,152,196,152,4,152,4,152,68,207,204,199,140,96,24, + 56,112,15,192,6,9,9,8,1,5,120,140,124,204,204,116, + 0,252,252,10,8,16,11,0,1,29,192,59,128,119,0,238, + 0,238,0,119,0,59,128,29,192,9,5,10,11,1,3,255, + 128,255,128,1,128,1,128,1,128,5,3,3,6,0,4,248, + 248,248,13,14,28,15,1,0,15,128,48,96,96,16,95,144, + 153,200,152,200,153,200,159,8,153,136,153,136,88,208,96,48, + 56,224,15,128,5,2,2,7,1,12,248,248,6,6,6,7, + 0,7,120,252,204,204,252,120,9,9,18,11,1,0,28,0, + 28,0,255,128,255,128,28,0,28,0,0,0,255,128,255,128, + 6,8,8,6,0,5,120,252,204,28,120,224,252,252,6,8, + 8,6,0,5,120,252,204,56,60,204,252,120,5,3,3,5, + 0,11,56,112,224,9,14,28,11,1,252,227,128,227,128,227, + 128,227,128,227,128,227,128,227,128,231,128,255,128,251,128,224, + 0,224,0,224,0,224,0,9,18,36,10,0,252,63,128,123, + 0,251,0,251,0,251,0,251,0,251,0,123,0,59,0,27, + 0,27,0,27,0,27,0,27,0,27,0,27,0,27,0,27, + 0,2,2,2,5,1,6,192,192,5,5,5,7,1,251,96, + 112,24,248,240,4,8,8,6,0,5,48,240,240,48,48,48, + 48,48,6,9,9,8,1,5,120,204,204,204,204,120,0,252, + 252,10,8,16,11,0,1,238,0,119,0,59,128,29,192,29, + 192,59,128,119,0,238,0,14,13,26,15,0,0,48,96,240, + 96,240,192,48,192,49,128,49,152,51,56,54,56,6,120,12, + 216,12,252,24,24,24,24,15,13,26,15,0,0,48,96,240, + 96,240,192,48,192,49,128,49,188,51,126,54,102,6,14,12, + 60,12,112,24,126,24,126,14,13,26,15,0,0,120,48,252, + 48,204,96,56,96,60,192,204,216,253,184,123,56,3,120,6, + 216,6,252,12,24,12,24,8,14,14,10,1,252,28,28,28, + 0,28,28,28,56,120,112,231,231,255,126,12,18,36,14,1, + 0,56,0,28,0,6,0,0,0,15,0,15,0,31,128,25, + 128,25,128,57,192,57,192,48,192,112,224,127,224,127,224,224, + 112,224,112,224,112,12,18,36,14,1,0,1,192,3,128,6, + 0,0,0,15,0,15,0,31,128,25,128,25,128,57,192,57, + 192,48,192,112,224,127,224,127,224,224,112,224,112,224,112,12, + 18,36,14,1,0,7,0,15,128,29,192,0,0,15,0,15, + 0,31,128,25,128,25,128,57,192,57,192,48,192,112,224,127, + 224,127,224,224,112,224,112,224,112,12,18,36,14,1,0,14, + 32,31,192,35,128,0,0,15,0,15,0,31,128,25,128,25, + 128,57,192,57,192,48,192,112,224,127,224,127,224,224,112,224, + 112,224,112,12,18,36,14,1,0,25,128,25,128,25,128,0, + 0,15,0,15,0,31,128,25,128,25,128,57,192,57,192,48, + 192,112,224,127,224,127,224,224,112,224,112,224,112,12,18,36, + 14,1,0,15,0,25,128,25,128,15,0,15,0,15,0,31, + 128,25,128,25,128,57,192,57,192,48,192,112,224,127,224,127, + 224,224,112,224,112,224,112,16,14,28,18,1,0,15,255,15, + 255,31,128,27,128,59,128,59,128,51,254,115,254,115,128,127, + 128,255,128,227,128,227,255,227,255,12,19,38,14,1,251,15, + 128,63,224,120,224,112,112,240,112,224,0,224,0,224,0,224, + 0,240,112,112,112,120,224,63,224,15,128,12,0,14,0,3, + 0,31,0,30,0,10,18,36,13,2,0,56,0,28,0,6, + 0,0,0,255,192,255,192,224,0,224,0,224,0,224,0,255, + 128,255,128,224,0,224,0,224,0,224,0,255,192,255,192,10, + 18,36,13,2,0,3,128,7,0,12,0,0,0,255,192,255, + 192,224,0,224,0,224,0,224,0,255,128,255,128,224,0,224, + 0,224,0,224,0,255,192,255,192,10,18,36,13,2,0,14, + 0,31,0,59,128,0,0,255,192,255,192,224,0,224,0,224, + 0,224,0,255,128,255,128,224,0,224,0,224,0,224,0,255, + 192,255,192,10,18,36,13,2,0,51,0,51,0,51,0,0, + 0,255,192,255,192,224,0,224,0,224,0,224,0,255,128,255, + 128,224,0,224,0,224,0,224,0,255,192,255,192,5,18,18, + 5,255,0,224,112,24,0,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,5,18,18,5,1,0,56,112,192,0,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,7,18,18, + 5,255,0,56,124,238,0,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,6,18,18,5,0,0,204,204,204,0,112, + 112,112,112,112,112,112,112,112,112,112,112,112,112,14,14,28, + 14,255,0,63,192,63,240,56,120,56,56,56,28,56,28,255, + 28,255,28,56,28,56,28,56,56,56,120,63,240,63,192,12, + 18,36,14,1,0,14,32,31,192,35,128,0,0,224,112,240, + 112,240,112,248,112,252,112,236,112,238,112,230,112,231,112,227, + 112,225,240,225,240,224,240,224,112,13,18,36,15,1,0,28, + 0,14,0,3,0,0,0,15,128,63,224,120,240,112,112,240, + 120,224,56,224,56,224,56,224,56,240,120,112,112,120,240,63, + 224,15,128,13,18,36,15,1,0,1,192,3,128,6,0,0, + 0,15,128,63,224,120,240,112,112,240,120,224,56,224,56,224, + 56,224,56,240,120,112,112,120,240,63,224,15,128,13,18,36, + 15,1,0,7,0,15,128,29,192,0,0,15,128,63,224,120, + 240,112,112,240,120,224,56,224,56,224,56,224,56,240,120,112, + 112,120,240,63,224,15,128,13,18,36,15,1,0,7,16,15, + 224,17,192,0,0,15,128,63,224,120,240,112,112,240,120,224, + 56,224,56,224,56,224,56,240,120,112,112,120,240,63,224,15, + 128,13,18,36,15,1,0,12,192,12,192,12,192,0,0,15, + 128,63,224,120,240,112,112,240,120,224,56,224,56,224,56,224, + 56,240,120,112,112,120,240,63,224,15,128,10,8,16,11,0, + 1,225,192,115,128,63,0,30,0,30,0,63,0,115,128,225, + 192,15,14,28,15,0,0,7,198,31,252,60,56,56,120,120, + 220,113,156,113,28,115,28,118,28,124,60,56,56,60,120,127, + 240,199,192,12,18,36,14,1,0,28,0,14,0,3,0,0, + 0,224,112,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,112,224,112,112,224,127,224,31,128,12,18,36, + 14,1,0,1,192,3,128,6,0,0,0,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,112,224,127,224,31,128,12,18,36,14,1,0,7,0,15, + 128,29,192,0,0,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,112,224,127,224,31, + 128,12,18,36,14,1,0,25,128,25,128,25,128,0,0,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,112,112,224,127,224,31,128,13,18,36,13,0, + 0,1,192,3,128,6,0,0,0,224,56,224,56,112,112,56, + 224,56,224,29,192,29,192,15,128,7,0,7,0,7,0,7, + 0,7,0,7,0,11,14,28,13,1,0,224,0,224,0,224, + 0,255,0,255,192,225,224,224,224,224,224,225,224,255,192,255, + 0,224,0,224,0,224,0,8,14,14,10,1,0,60,126,231, + 231,231,231,238,238,231,231,231,231,239,238,10,14,28,11,1, + 0,112,0,56,0,12,0,0,0,62,0,127,0,115,128,7, + 128,63,128,123,128,227,128,231,128,251,128,123,192,10,14,28, + 11,1,0,3,128,7,0,12,0,0,0,62,0,127,0,115, + 128,7,128,63,128,123,128,227,128,231,128,251,128,123,192,10, + 14,28,11,1,0,28,0,62,0,119,0,0,0,62,0,127, + 0,115,128,7,128,63,128,123,128,227,128,231,128,251,128,123, + 192,10,14,28,11,1,0,59,0,127,0,110,0,0,0,62, + 0,127,0,115,128,7,128,63,128,123,128,227,128,231,128,251, + 128,123,192,10,14,28,11,1,0,51,0,51,0,51,0,0, + 0,62,0,127,0,115,128,7,128,63,128,123,128,227,128,231, + 128,251,128,123,192,10,14,28,11,1,0,60,0,102,0,102, + 0,60,0,62,0,127,0,115,128,7,128,63,128,123,128,227, + 128,231,128,251,128,123,192,14,10,20,16,1,0,61,240,127, + 248,103,28,15,28,63,252,119,0,231,0,239,156,255,252,121, + 240,9,15,30,10,1,251,30,0,127,128,115,128,224,0,224, + 0,224,0,224,0,115,128,127,128,30,0,24,0,28,0,6, + 0,62,0,60,0,9,14,28,11,1,0,112,0,56,0,12, + 0,0,0,30,0,127,0,115,128,225,128,255,128,255,128,224, + 0,115,128,127,128,30,0,9,14,28,11,1,0,3,128,7, + 0,12,0,0,0,30,0,127,0,115,128,225,128,255,128,255, + 128,224,0,115,128,127,128,30,0,9,14,28,11,1,0,28, + 0,62,0,119,0,0,0,30,0,127,0,115,128,225,128,255, + 128,255,128,224,0,115,128,127,128,30,0,9,14,28,11,1, + 0,51,0,51,0,51,0,0,0,30,0,127,0,115,128,225, + 128,255,128,255,128,224,0,115,128,127,128,30,0,5,14,14, + 5,255,0,224,112,24,0,56,56,56,56,56,56,56,56,56, + 56,5,14,14,5,1,0,56,112,192,0,224,224,224,224,224, + 224,224,224,224,224,7,14,14,5,255,0,56,124,238,0,56, + 56,56,56,56,56,56,56,56,56,5,14,14,5,0,0,216, + 216,216,0,112,112,112,112,112,112,112,112,112,112,10,14,28, + 12,1,0,96,0,55,0,60,0,102,0,31,0,127,128,115, + 128,225,192,225,192,225,192,225,192,115,128,127,128,30,0,9, + 14,28,11,1,0,59,0,127,0,110,0,0,0,239,0,255, + 128,243,128,227,128,227,128,227,128,227,128,227,128,227,128,227, + 128,10,14,28,12,1,0,112,0,56,0,12,0,0,0,30, + 0,127,128,115,128,225,192,225,192,225,192,225,192,115,128,127, + 128,30,0,10,14,28,12,1,0,3,128,7,0,12,0,0, + 0,30,0,127,128,115,128,225,192,225,192,225,192,225,192,115, + 128,127,128,30,0,10,14,28,12,1,0,28,0,62,0,119, + 0,0,0,30,0,127,128,115,128,225,192,225,192,225,192,225, + 192,115,128,127,128,30,0,10,14,28,12,1,0,59,0,127, + 0,110,0,0,0,30,0,127,128,115,128,225,192,225,192,225, + 192,225,192,115,128,127,128,30,0,10,14,28,12,1,0,51, + 0,51,0,51,0,0,0,30,0,127,128,115,128,225,192,225, + 192,225,192,225,192,115,128,127,128,30,0,9,8,16,11,1, + 1,28,0,28,0,0,0,255,128,255,128,0,0,28,0,28, + 0,12,10,20,12,0,0,15,48,63,224,57,192,115,224,119, + 224,126,224,124,224,57,192,127,192,207,0,9,14,28,11,1, + 0,112,0,56,0,12,0,0,0,227,128,227,128,227,128,227, + 128,227,128,227,128,227,128,231,128,255,128,123,128,9,14,28, + 11,1,0,3,128,7,0,12,0,0,0,227,128,227,128,227, + 128,227,128,227,128,227,128,227,128,231,128,255,128,123,128,9, + 14,28,11,1,0,28,0,62,0,119,0,0,0,227,128,227, + 128,227,128,227,128,227,128,227,128,227,128,231,128,255,128,123, + 128,9,14,28,11,1,0,51,0,51,0,51,0,0,0,227, + 128,227,128,227,128,227,128,227,128,227,128,227,128,231,128,255, + 128,123,128,9,18,36,11,1,252,7,0,14,0,24,0,0, + 0,227,128,227,128,227,128,119,0,119,0,119,0,62,0,62, + 0,28,0,28,0,28,0,24,0,120,0,112,0,10,18,36, + 12,1,252,224,0,224,0,224,0,224,0,239,0,255,128,243, + 128,225,192,225,192,225,192,225,192,243,128,255,128,239,0,224, + 0,224,0,224,0,224,0,9,18,36,11,1,252,51,0,51, + 0,51,0,0,0,227,128,227,128,227,128,119,0,119,0,119, + 0,62,0,62,0,28,0,28,0,28,0,24,0,120,0,112, + 0}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--20-140-100-100-P-105-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 13 + Calculated Max Values w=16 h=18 x= 2 y=11 dx=18 dy= 0 ascent=14 len=34 + Font Bounding box w=22 h=29 x=-2 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =14 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB14r[2548] U8G_SECTION(".progmem.u8g_font_helvB14r") = { + 0,22,29,254,249,14,3,23,6,234,32,127,252,14,252,14, + 252,0,0,0,5,0,1,3,14,14,5,1,0,224,224,224, + 224,224,224,224,224,192,192,0,224,224,224,5,5,5,7,1, + 9,216,216,216,216,144,11,13,26,11,0,0,13,128,13,128, + 13,128,127,224,127,224,27,0,27,0,27,0,255,192,255,192, + 54,0,54,0,54,0,10,16,32,10,0,254,4,0,63,0, + 127,128,229,128,228,0,228,0,124,0,63,0,15,128,9,192, + 233,192,233,192,127,128,63,0,8,0,8,0,13,13,26,16, + 1,0,120,96,252,96,204,192,204,128,253,128,123,0,2,0, + 6,240,13,248,9,152,25,152,49,248,48,240,13,14,28,14, + 1,0,30,0,63,0,115,128,97,128,115,0,62,0,28,96, + 126,96,231,224,195,192,193,192,227,224,127,112,62,56,2,5, + 5,4,1,9,192,192,192,192,128,6,18,18,7,1,252,28, + 56,48,112,96,224,224,224,224,224,224,224,224,96,112,48,56, + 28,6,18,18,7,0,252,224,112,48,56,24,28,28,28,28, + 28,28,28,28,24,56,48,112,224,7,6,6,9,1,8,16, + 214,124,56,108,68,8,8,8,11,1,1,24,24,24,255,255, + 24,24,24,3,6,6,5,1,253,224,224,224,96,192,128,5, + 3,3,6,0,4,248,248,248,3,3,3,5,1,0,224,224, + 224,5,14,14,5,0,0,24,24,24,56,48,48,48,112,96, + 96,224,192,192,192,9,13,26,10,0,0,28,0,127,0,119, + 0,227,128,227,128,227,128,227,128,227,128,227,128,227,128,119, + 0,127,0,28,0,6,13,13,10,1,0,28,60,252,252,28, + 28,28,28,28,28,28,28,28,9,13,26,10,0,0,62,0, + 127,0,227,128,227,128,3,128,7,0,31,0,62,0,120,0, + 112,0,224,0,255,128,255,128,9,13,26,10,0,0,62,0, + 127,0,231,0,227,0,7,0,30,0,31,0,7,128,3,128, + 227,128,231,128,127,0,62,0,9,13,26,10,0,0,7,0, + 15,0,31,0,63,0,55,0,119,0,103,0,231,0,255,128, + 255,128,7,0,7,0,7,0,9,13,26,10,0,0,255,0, + 255,0,224,0,224,0,254,0,255,0,231,128,3,128,3,128, + 227,128,231,128,255,0,126,0,9,13,26,10,0,0,63,0, + 127,128,113,128,224,0,238,0,255,0,243,128,225,128,225,128, + 225,128,243,128,127,0,62,0,9,13,26,10,0,0,255,128, + 255,128,3,128,7,0,14,0,14,0,28,0,28,0,56,0, + 56,0,112,0,112,0,112,0,9,13,26,10,0,0,62,0, + 127,0,227,128,227,128,227,128,127,0,62,0,119,0,227,128, + 227,128,227,128,127,0,62,0,9,13,26,10,0,0,62,0, + 127,0,231,128,195,128,195,128,195,128,231,128,127,128,59,128, + 3,128,199,0,255,0,126,0,3,10,10,6,1,0,224,224, + 224,0,0,0,0,224,224,224,3,13,13,6,1,253,224,224, + 224,0,0,0,0,224,224,224,96,192,128,9,9,18,11,1, + 0,3,128,15,128,62,0,120,0,224,0,120,0,62,0,15, + 128,3,128,9,5,10,11,1,3,255,128,255,128,0,0,255, + 128,255,128,9,9,18,11,1,0,224,0,248,0,62,0,15, + 0,3,128,15,0,62,0,248,0,224,0,8,14,14,10,1, + 0,126,255,231,231,14,30,28,56,56,56,0,56,56,56,16, + 17,34,18,1,253,7,240,31,252,60,30,112,6,99,183,231, + 243,198,99,204,99,204,195,204,198,204,198,239,252,231,184,112, + 0,60,0,31,240,7,240,12,14,28,14,1,0,15,0,15, + 0,31,128,25,128,25,128,57,192,57,192,48,192,112,224,127, + 224,127,224,224,112,224,112,224,112,11,14,28,14,2,0,254, + 0,255,128,227,192,225,192,225,192,227,128,255,128,255,192,225, + 224,224,224,224,224,225,224,255,192,255,0,12,14,28,14,1, + 0,15,128,63,224,120,224,112,112,240,112,224,0,224,0,224, + 0,224,0,240,112,112,112,120,224,63,224,15,128,12,14,28, + 14,1,0,255,0,255,192,225,224,224,224,224,112,224,112,224, + 112,224,112,224,112,224,112,224,224,225,224,255,192,255,0,10, + 14,28,13,2,0,255,192,255,192,224,0,224,0,224,0,224, + 0,255,128,255,128,224,0,224,0,224,0,224,0,255,192,255, + 192,10,14,28,12,1,0,255,192,255,192,224,0,224,0,224, + 0,224,0,255,128,255,128,224,0,224,0,224,0,224,0,224, + 0,224,0,12,14,28,15,1,0,15,128,63,224,120,224,112, + 112,240,112,224,0,224,0,227,240,227,240,240,112,112,112,120, + 240,63,240,31,176,12,14,28,14,1,0,224,112,224,112,224, + 112,224,112,224,112,224,112,255,240,255,240,224,112,224,112,224, + 112,224,112,224,112,224,112,3,14,14,5,1,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,9,14,28,10,0, + 0,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,227,128,227,128,247,128,127,0,62,0,13,14,28, + 14,1,0,224,240,225,224,227,192,231,128,239,0,254,0,252, + 0,254,0,239,0,231,128,227,192,225,224,224,240,224,120,9, + 14,28,11,1,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,255,128,255, + 128,14,14,28,16,1,0,224,28,224,28,240,60,240,60,248, + 124,248,124,248,124,236,220,236,220,236,220,231,156,231,156,227, + 28,227,28,12,14,28,14,1,0,224,112,240,112,240,112,248, + 112,252,112,236,112,238,112,230,112,231,112,227,112,225,240,225, + 240,224,240,224,112,13,14,28,15,1,0,15,128,63,224,120, + 240,112,112,240,120,224,56,224,56,224,56,224,56,240,120,112, + 112,120,240,63,224,15,128,11,14,28,13,1,0,255,0,255, + 192,225,224,224,224,224,224,224,224,225,224,255,192,255,0,224, + 0,224,0,224,0,224,0,224,0,13,15,30,15,1,255,15, + 128,63,224,120,240,112,112,240,120,224,56,224,56,224,56,224, + 56,243,120,115,240,121,240,63,224,15,240,0,48,12,14,28, + 14,1,0,255,0,255,192,225,224,224,224,224,224,225,224,255, + 192,255,128,225,192,224,224,224,224,224,224,224,224,224,240,11, + 14,28,13,1,0,63,128,127,192,241,224,224,224,240,0,126, + 0,63,128,15,192,1,224,224,224,224,224,241,224,127,192,63, + 128,11,14,28,11,0,0,255,224,255,224,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,12,14,28,14,1,0,224,112,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,112,224,112,112, + 224,127,224,31,128,13,14,28,13,0,0,224,56,224,56,112, + 112,112,112,48,96,56,224,56,224,29,192,29,192,13,128,15, + 128,15,128,7,0,7,0,15,14,28,17,1,0,227,142,227, + 142,227,142,227,142,115,156,115,156,115,156,118,220,54,216,54, + 216,62,248,28,112,28,112,28,112,12,14,28,12,0,0,224, + 112,224,112,112,224,121,224,25,128,31,128,15,0,31,128,25, + 128,57,192,112,224,112,224,224,112,224,112,13,14,28,13,0, + 0,224,56,224,56,112,112,56,224,56,224,29,192,29,192,15, + 128,7,0,7,0,7,0,7,0,7,0,7,0,10,14,28, + 12,1,0,255,192,255,192,1,192,3,128,7,0,7,0,14, + 0,28,0,56,0,56,0,112,0,224,0,255,192,255,192,5, + 18,18,6,1,252,248,248,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,248,248,5,14,14,5,0,0,192,192,192, + 224,96,96,96,112,48,48,56,24,24,24,5,18,18,6,0, + 252,248,248,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,248,248,10,7,14,10,0,6,12,0,30,0,30,0,51, + 0,115,128,97,128,225,192,10,2,4,10,0,252,255,192,255, + 192,5,3,3,5,0,11,224,112,56,10,10,20,11,1,0, + 62,0,127,0,99,128,7,128,63,128,123,128,227,128,231,128, + 251,128,123,192,10,14,28,12,1,0,224,0,224,0,224,0, + 224,0,239,0,255,128,243,128,225,192,225,192,225,192,225,192, + 243,128,255,128,239,0,9,10,20,11,1,0,30,0,127,128, + 115,128,224,0,224,0,224,0,224,0,115,128,127,128,30,0, + 10,14,28,12,1,0,1,192,1,192,1,192,1,192,61,192, + 127,192,115,192,225,192,225,192,225,192,225,192,115,192,127,192, + 61,192,9,10,20,11,1,0,30,0,127,0,115,128,225,128, + 255,128,255,128,224,0,115,128,127,128,30,0,7,14,14,7, + 0,0,30,62,56,56,254,254,56,56,56,56,56,56,56,56, + 10,14,28,12,1,252,61,192,127,192,115,192,225,192,225,192, + 225,192,225,192,115,192,127,192,61,192,1,192,115,128,127,128, + 30,0,9,14,28,11,1,0,224,0,224,0,224,0,224,0, + 239,0,255,128,243,128,227,128,227,128,227,128,227,128,227,128, + 227,128,227,128,3,14,14,5,1,0,224,224,224,0,224,224, + 224,224,224,224,224,224,224,224,5,18,18,5,255,252,56,56, + 56,0,56,56,56,56,56,56,56,56,56,56,56,56,248,240, + 9,14,28,10,1,0,224,0,224,0,224,0,224,0,231,0, + 238,0,252,0,248,0,248,0,252,0,238,0,231,0,231,128, + 227,128,3,14,14,5,1,0,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,15,10,20,17,1,0,239,60,255,254, + 243,206,227,142,227,142,227,142,227,142,227,142,227,142,227,142, + 9,10,20,11,1,0,239,0,255,128,243,128,227,128,227,128, + 227,128,227,128,227,128,227,128,227,128,10,10,20,12,1,0, + 30,0,127,128,115,128,225,192,225,192,225,192,225,192,115,128, + 127,128,30,0,10,14,28,12,1,252,239,0,255,128,243,128, + 225,192,225,192,225,192,225,192,243,128,255,128,239,0,224,0, + 224,0,224,0,224,0,10,14,28,12,1,252,61,192,127,192, + 115,192,225,192,225,192,225,192,225,192,115,192,127,192,61,192, + 1,192,1,192,1,192,1,192,6,10,10,7,1,0,236,252, + 252,224,224,224,224,224,224,224,9,10,20,11,1,0,63,0, + 127,128,227,128,224,0,255,0,63,128,3,128,227,128,255,0, + 126,0,6,13,13,6,0,0,112,112,112,252,252,112,112,112, + 112,112,112,124,60,9,10,20,11,1,0,227,128,227,128,227, + 128,227,128,227,128,227,128,227,128,231,128,255,128,123,128,9, + 10,20,9,0,0,227,128,227,128,227,128,119,0,119,0,119, + 0,62,0,62,0,28,0,28,0,15,10,20,15,0,0,227, + 142,227,142,227,142,115,156,119,220,118,220,62,248,60,120,28, + 112,28,112,9,10,20,11,1,0,227,128,227,128,119,0,62, + 0,28,0,62,0,119,0,119,0,227,128,227,128,9,14,28, + 11,1,252,227,128,227,128,227,128,119,0,119,0,119,0,62, + 0,62,0,28,0,28,0,28,0,24,0,120,0,112,0,8, + 10,10,10,1,0,255,255,7,14,28,56,112,224,255,255,7, + 18,18,8,1,252,14,28,56,56,56,56,56,112,224,112,56, + 56,56,56,56,56,28,14,2,18,18,5,1,252,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,7, + 18,18,8,0,252,224,112,56,56,56,56,56,28,14,28,56, + 56,56,56,56,56,112,224,9,3,6,11,1,4,121,128,255, + 128,207,0,255}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--25-180-100-100-P-138-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 19, '1' Height: 18 + Calculated Max Values w=22 h=24 x= 3 y=17 dx=24 dy= 0 ascent=24 len=72 + Font Bounding box w=28 h=37 x=-2 y=-8 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =19 descent=-5 + X Font ascent =19 descent=-5 + Max Font ascent =24 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB18[7527] U8G_SECTION(".progmem.u8g_font_helvB18") = { + 0,28,37,254,248,19,4,35,9,107,32,255,251,24,251,19, + 251,0,0,0,6,0,1,3,19,19,7,2,0,224,224,224, + 224,224,224,224,224,224,224,224,192,192,192,0,0,224,224,224, + 5,6,6,9,2,13,216,216,216,216,216,144,12,18,36,14, + 1,0,12,192,12,192,12,192,12,192,12,192,127,240,127,240, + 25,128,25,128,25,128,25,128,255,224,255,224,51,0,51,0, + 51,0,51,0,51,0,12,21,42,13,0,254,6,0,63,128, + 127,224,246,224,230,112,230,112,246,0,126,0,62,0,15,0, + 7,192,7,224,6,240,230,112,230,112,230,112,246,240,127,224, + 31,192,6,0,6,0,21,18,54,22,0,0,0,7,0,62, + 7,0,127,14,0,227,142,0,193,156,0,193,156,0,227,184, + 0,127,56,0,62,112,0,0,112,0,0,227,224,0,231,240, + 1,206,56,1,204,24,3,140,24,3,142,56,7,7,240,7, + 3,224,16,18,36,18,1,0,15,128,31,192,61,224,56,224, + 56,224,56,224,29,192,15,128,31,0,63,156,123,220,113,252, + 224,248,224,112,224,248,241,252,127,206,31,135,2,6,6,6, + 2,13,192,192,192,192,192,128,6,24,24,8,1,251,12,28, + 56,56,112,112,96,224,224,224,224,224,224,224,224,224,224,96, + 112,112,56,56,28,12,6,24,24,8,1,251,192,224,112,112, + 56,56,24,28,28,28,28,28,28,28,28,28,28,24,56,56, + 112,112,224,192,8,7,7,10,1,12,24,24,219,255,60,102, + 102,12,12,24,15,1,1,6,0,6,0,6,0,6,0,6, + 0,255,240,255,240,6,0,6,0,6,0,6,0,6,0,3, + 6,6,7,2,253,224,224,224,96,96,192,7,3,3,8,0, + 6,254,254,254,3,3,3,7,2,0,224,224,224,7,19,19, + 8,1,0,6,6,6,12,12,12,24,24,24,24,48,48,48, + 96,96,96,192,192,192,12,18,36,13,0,0,31,128,63,192, + 121,224,112,224,112,224,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,112,224,112,224,121,224,63,192,31,128, + 7,18,18,13,2,0,14,14,30,254,254,14,14,14,14,14, + 14,14,14,14,14,14,14,14,12,18,36,13,0,0,31,0, + 127,192,113,224,224,224,224,112,224,112,0,112,0,224,1,224, + 3,192,7,128,31,0,60,0,120,0,240,0,224,0,255,240, + 255,240,12,18,36,13,0,0,31,0,127,192,113,192,224,224, + 224,224,224,224,0,224,1,192,15,128,15,224,0,224,0,112, + 0,112,224,112,224,240,113,224,127,224,31,128,12,18,36,13, + 0,0,1,192,3,192,3,192,7,192,7,192,13,192,29,192, + 25,192,49,192,113,192,97,192,225,192,255,240,255,240,1,192, + 1,192,1,192,1,192,12,18,36,13,0,0,127,224,127,224, + 112,0,112,0,112,0,112,0,127,128,127,192,113,224,0,224, + 0,112,0,112,0,112,224,112,224,240,241,224,127,192,31,128, + 12,18,36,13,0,0,15,128,63,224,120,224,112,112,224,112, + 224,0,224,0,239,0,255,192,249,224,240,224,224,112,224,112, + 224,112,112,224,121,224,63,192,31,128,12,18,36,13,0,0, + 255,240,255,240,0,240,0,224,1,192,1,192,3,128,3,128, + 7,0,7,0,14,0,14,0,30,0,28,0,28,0,60,0, + 56,0,56,0,12,18,36,13,0,0,15,0,63,192,57,192, + 112,224,112,224,112,224,112,224,57,192,31,128,63,192,112,224, + 224,112,224,112,224,112,224,112,112,224,127,224,31,128,12,18, + 36,13,0,0,31,128,127,192,121,224,240,224,224,112,224,112, + 224,112,224,112,240,240,121,240,127,240,31,112,0,112,0,112, + 224,224,243,224,127,192,31,0,3,14,14,7,2,0,224,224, + 224,0,0,0,0,0,0,0,0,224,224,224,3,17,17,7, + 2,253,224,224,224,0,0,0,0,0,0,0,0,224,224,224, + 96,96,192,13,12,24,15,0,1,0,56,0,248,3,224,15, + 128,62,0,240,0,240,0,62,0,15,128,3,224,0,248,0, + 56,10,5,10,14,2,5,255,192,255,192,0,0,255,192,255, + 192,13,12,24,14,1,1,224,0,248,0,62,0,15,128,3, + 224,0,120,0,120,3,224,15,128,62,0,248,0,224,0,11, + 19,38,15,2,0,31,128,127,192,121,224,240,224,224,224,225, + 224,1,192,3,192,7,128,7,0,14,0,14,0,14,0,14, + 0,0,0,0,0,14,0,14,0,14,0,22,22,66,24,1, + 252,1,255,0,7,255,192,15,129,240,30,0,120,60,0,56, + 120,125,156,112,255,156,241,199,28,227,135,28,227,14,28,231, + 14,56,231,12,56,231,28,112,231,28,112,227,157,224,243,255, + 192,113,247,0,120,0,0,60,0,0,31,7,0,15,255,0, + 3,252,0,16,19,38,18,1,0,3,192,3,192,7,224,7, + 224,14,96,14,112,14,112,28,56,28,56,28,56,56,28,56, + 28,63,252,127,254,112,14,112,14,224,7,224,7,224,7,15, + 19,38,18,2,0,255,224,255,248,224,120,224,28,224,28,224, + 28,224,28,224,56,255,240,255,248,224,28,224,14,224,14,224, + 14,224,14,224,30,224,124,255,248,255,224,16,19,38,18,1, + 0,7,240,31,252,62,62,120,15,112,7,240,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,240,7,112,7,120, + 15,62,62,31,252,7,240,16,19,38,19,2,0,255,224,255, + 248,224,124,224,30,224,14,224,15,224,7,224,7,224,7,224, + 7,224,7,224,7,224,7,224,15,224,14,224,30,224,124,255, + 248,255,224,13,19,38,16,2,0,255,240,255,240,224,0,224, + 0,224,0,224,0,224,0,224,0,255,224,255,224,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,255,248,255,248,12, + 19,38,15,2,0,255,240,255,240,224,0,224,0,224,0,224, + 0,224,0,224,0,255,224,255,224,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,17,19,57,19,1, + 0,7,240,0,31,252,0,62,62,0,120,15,0,112,7,0, + 240,0,0,224,0,0,224,0,0,224,0,0,224,127,128,224, + 127,128,224,3,128,224,3,128,240,3,128,112,7,128,120,15, + 128,62,63,128,31,251,128,7,243,128,15,19,38,19,2,0, + 224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14, + 255,254,255,254,224,14,224,14,224,14,224,14,224,14,224,14, + 224,14,224,14,224,14,3,19,19,7,2,0,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,11, + 19,38,14,1,0,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,224,224,224, + 224,224,224,224,224,113,224,127,192,63,128,14,19,38,18,2, + 0,224,60,224,120,224,240,225,224,227,192,231,128,239,0,254, + 0,254,0,255,0,247,128,227,128,225,192,225,224,224,224,224, + 112,224,120,224,56,224,60,12,19,38,15,2,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,255, + 240,255,240,19,19,57,23,2,0,224,0,224,240,1,224,240, + 1,224,248,3,224,248,3,224,252,7,224,236,6,224,238,14, + 224,230,12,224,231,28,224,231,28,224,227,24,224,227,184,224, + 227,184,224,225,240,224,225,240,224,224,224,224,224,224,224,224, + 224,224,15,19,38,19,2,0,224,14,240,14,240,14,248,14, + 248,14,252,14,238,14,238,14,231,14,227,142,227,142,225,206, + 224,206,224,238,224,126,224,62,224,62,224,30,224,14,17,19, + 57,19,1,0,7,240,0,31,252,0,62,62,0,120,15,0, + 112,7,0,240,7,128,224,3,128,224,3,128,224,3,128,224, + 3,128,224,3,128,224,3,128,224,3,128,240,7,128,112,7, + 0,120,15,0,62,62,0,31,252,0,7,240,0,14,19,38, + 17,2,0,255,224,255,248,224,56,224,28,224,28,224,28,224, + 28,224,56,255,248,255,240,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,17,20,60,19,1,255,7, + 240,0,31,252,0,62,62,0,120,15,0,112,7,0,240,7, + 128,224,3,128,224,3,128,224,3,128,224,3,128,224,3,128, + 224,3,128,224,3,128,240,39,128,112,119,0,120,63,0,62, + 30,0,31,254,0,7,247,0,0,2,0,14,19,38,17,2, + 0,255,224,255,248,224,56,224,28,224,28,224,28,224,28,224, + 56,255,248,255,240,224,120,224,56,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,14,19,38,17,2,0,15,192,63, + 240,120,248,240,56,224,56,224,0,240,0,124,0,63,192,7, + 240,0,248,0,60,0,28,224,28,224,28,224,60,248,248,127, + 240,31,192,15,19,38,15,0,0,255,254,255,254,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,15, + 19,38,19,2,0,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,240,30,112,28,124,124,63,248,15,224,16,19,38,18,1, + 0,224,7,224,7,240,15,112,14,120,30,56,28,56,28,60, + 60,28,56,28,56,30,120,14,112,14,112,14,112,7,224,7, + 224,3,192,3,192,3,192,21,19,57,23,1,0,224,112,56, + 224,112,56,224,112,56,224,112,56,112,248,112,112,248,112,112, + 216,112,113,220,112,49,220,96,57,220,224,57,140,224,59,142, + 224,27,142,192,27,142,192,31,7,192,31,7,192,14,3,128, + 14,3,128,14,3,128,16,19,38,18,1,0,224,7,240,15, + 120,30,56,28,28,56,14,112,15,240,7,224,3,192,3,192, + 7,224,15,240,14,112,28,56,60,60,56,28,112,14,240,15, + 224,7,15,19,38,17,1,0,224,14,240,14,112,28,120,28, + 56,56,60,56,28,112,28,112,14,224,14,224,7,192,7,192, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,14,19, + 38,16,1,0,255,252,255,252,0,60,0,120,0,240,1,224, + 1,224,3,192,7,128,7,128,15,0,30,0,30,0,60,0, + 56,0,120,0,240,0,255,252,255,252,5,24,24,8,1,251, + 248,248,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,248,248,7,19,19,8,0,0,192,192, + 192,96,96,96,48,48,48,48,24,24,24,12,12,12,6,6, + 6,5,24,24,8,2,251,248,248,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,248,248,11, + 9,18,14,1,10,14,0,14,0,31,0,27,0,59,128,113, + 192,113,192,224,224,224,224,14,2,4,14,0,251,255,252,255, + 252,6,4,4,8,1,15,224,112,56,28,12,14,28,14,1, + 0,31,128,63,192,113,224,112,224,0,224,7,224,63,224,124, + 224,240,224,224,224,225,224,243,224,127,240,62,112,12,19,38, + 15,2,0,224,0,224,0,224,0,224,0,224,0,239,128,255, + 192,249,224,240,224,224,112,224,112,224,112,224,112,224,112,224, + 112,240,224,249,224,255,192,239,128,11,14,28,13,1,0,31, + 128,63,192,121,224,112,224,224,0,224,0,224,0,224,0,224, + 0,224,0,112,224,121,224,63,192,31,128,12,19,38,15,1, + 0,0,112,0,112,0,112,0,112,0,112,31,112,63,240,121, + 240,112,240,224,112,224,112,224,112,224,112,224,112,224,112,112, + 240,121,240,63,240,31,112,12,14,28,14,1,0,15,0,63, + 192,121,224,112,224,224,112,224,112,255,240,255,240,224,0,224, + 0,112,112,120,240,63,224,15,128,7,19,19,9,1,0,30, + 62,56,56,56,254,254,56,56,56,56,56,56,56,56,56,56, + 56,56,12,19,38,15,1,251,31,112,63,240,121,240,112,240, + 224,112,224,112,224,112,224,112,224,112,224,112,112,240,121,240, + 63,240,31,112,0,112,224,112,240,224,127,224,31,128,11,19, + 38,15,2,0,224,0,224,0,224,0,224,0,224,0,239,0, + 255,192,241,192,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,3,19,19,7,2,0, + 224,224,224,0,0,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,5,24,24,7,0,251,56,56,56,0,0,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,248, + 240,11,19,38,14,2,0,224,0,224,0,224,0,224,0,224, + 0,225,192,227,192,231,128,239,0,254,0,252,0,254,0,239, + 0,231,0,231,128,227,192,225,192,225,224,224,224,3,19,19, + 7,2,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,17,14,42,21,2,0,239,62,0,255, + 255,0,243,231,128,225,195,128,225,195,128,225,195,128,225,195, + 128,225,195,128,225,195,128,225,195,128,225,195,128,225,195,128, + 225,195,128,225,195,128,11,14,28,15,2,0,239,128,255,192, + 241,192,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,12,14,28,14,1,0,15,0, + 63,192,121,224,112,224,224,112,224,112,224,112,224,112,224,112, + 224,112,112,224,121,224,63,192,15,0,12,19,38,15,2,251, + 239,128,255,192,249,224,240,224,224,112,224,112,224,112,224,112, + 224,112,224,112,240,224,249,224,255,192,239,128,224,0,224,0, + 224,0,224,0,224,0,12,19,38,15,1,251,31,112,63,240, + 121,240,112,240,224,112,224,112,224,112,224,112,224,112,224,112, + 112,240,121,240,63,240,31,112,0,112,0,112,0,112,0,112, + 0,112,7,14,14,10,2,0,238,254,254,240,224,224,224,224, + 224,224,224,224,224,224,11,14,28,13,1,0,63,0,127,128, + 243,192,225,192,224,0,252,0,127,128,15,192,1,224,224,224, + 224,224,241,224,127,192,63,128,7,18,18,9,1,0,56,56, + 56,56,254,254,56,56,56,56,56,56,56,56,56,56,62,30, + 11,14,28,15,2,0,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,225,224,115,224,126,224, + 28,224,12,14,28,14,1,0,224,112,224,112,224,112,112,224, + 112,224,112,224,57,192,57,192,57,192,31,128,31,128,15,0, + 15,0,15,0,19,14,42,19,0,0,224,224,224,224,224,224, + 96,224,192,113,241,192,113,241,192,49,177,128,51,185,128,59, + 187,128,27,27,0,31,31,0,31,31,0,14,14,0,14,14, + 0,14,14,0,11,14,28,13,1,0,224,224,241,224,113,192, + 59,128,63,128,31,0,14,0,31,0,31,0,59,128,123,192, + 113,192,241,224,224,224,13,19,38,15,1,251,224,56,224,56, + 112,56,120,112,56,112,60,240,28,224,28,224,15,192,15,192, + 7,192,7,128,3,128,3,128,7,0,7,0,14,0,62,0, + 60,0,11,14,28,13,1,0,255,224,255,224,1,192,3,128, + 7,128,15,0,14,0,30,0,60,0,56,0,112,0,240,0, + 255,224,255,224,7,24,24,10,1,251,14,28,56,56,56,56, + 56,56,56,56,112,224,224,112,56,56,56,56,56,56,56,56, + 28,14,2,24,24,7,3,251,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 7,24,24,10,2,251,224,112,56,56,56,56,56,56,56,56, + 28,14,14,28,56,56,56,56,56,56,56,56,112,224,11,4, + 8,14,1,5,120,224,254,224,239,224,227,192,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0, + 6,0,1,3,19,19,7,2,251,224,224,224,0,0,96,96, + 96,224,224,224,224,224,224,224,224,224,224,224,11,18,36,14, + 1,254,1,128,1,128,31,128,63,192,123,224,115,96,227,0, + 230,0,230,0,230,0,230,0,236,0,236,224,125,224,127,192, + 63,128,24,0,24,0,13,18,36,14,1,0,31,128,63,192, + 112,224,112,224,112,0,120,0,56,0,28,0,255,192,255,192, + 28,0,28,0,28,0,56,0,56,0,127,56,255,248,241,240, + 12,12,24,14,1,3,192,48,239,112,127,224,57,192,112,224, + 112,224,112,224,112,224,57,192,127,224,239,112,192,48,13,18, + 36,14,0,0,224,56,224,56,112,112,112,112,56,224,56,224, + 29,192,29,192,127,240,127,240,7,0,127,240,127,240,7,0, + 7,0,7,0,7,0,7,0,2,24,24,7,3,251,192,192, + 192,192,192,192,192,192,192,192,0,0,0,0,192,192,192,192, + 192,192,192,192,192,192,12,24,48,14,1,251,31,128,63,192, + 121,224,112,224,120,224,60,0,30,0,127,0,247,128,227,192, + 225,224,224,224,112,112,120,112,60,112,30,224,15,192,7,128, + 3,192,113,224,112,224,121,224,63,192,31,128,7,2,2,9, + 1,16,238,238,19,19,57,19,0,0,1,240,0,15,254,0, + 30,15,0,56,3,128,112,1,192,97,240,192,227,184,224,198, + 12,96,198,0,96,198,0,96,198,0,96,198,12,96,227,184, + 224,97,240,192,112,1,192,56,3,128,30,15,0,15,254,0, + 1,240,0,8,12,12,10,1,7,124,254,198,30,126,230,198, + 255,123,0,255,255,10,8,16,13,1,3,29,192,59,128,119, + 0,238,0,238,0,119,0,59,128,29,192,12,7,14,15,1, + 4,255,240,255,240,0,48,0,48,0,48,0,48,0,48,7, + 3,3,8,0,6,254,254,254,19,19,57,19,0,0,3,248, + 0,15,254,0,28,15,0,56,3,128,115,249,192,99,28,192, + 227,12,224,195,12,96,195,24,96,195,240,96,195,48,96,195, + 24,96,227,24,96,99,12,224,112,0,192,56,1,192,30,3, + 128,15,254,0,3,248,0,7,2,2,9,1,17,254,254,8, + 7,7,9,0,11,60,102,195,195,195,102,60,11,13,26,15, + 2,0,14,0,14,0,14,0,14,0,255,224,255,224,14,0, + 14,0,14,0,14,0,0,0,255,224,255,224,6,10,10,7, + 0,8,120,252,204,12,28,120,224,192,252,252,6,10,10,7, + 0,8,120,252,204,12,56,56,12,204,252,120,6,4,4,8, + 1,15,28,56,112,224,11,19,38,15,2,251,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 225,224,243,224,254,224,236,224,224,0,224,0,224,0,224,0, + 224,0,11,24,48,13,1,251,15,224,63,224,124,192,124,192, + 252,192,252,192,252,192,252,192,252,192,124,192,124,192,60,192, + 28,192,12,192,12,192,12,192,12,192,12,192,12,192,12,192, + 12,192,12,192,12,192,12,192,3,3,3,7,2,6,224,224, + 224,6,6,6,8,1,251,112,120,28,28,252,120,4,10,10, + 7,1,8,48,48,240,240,48,48,48,48,48,48,8,12,12, + 10,1,7,60,126,231,195,195,195,231,126,60,0,255,255,10, + 8,16,13,1,3,238,0,119,0,59,128,29,192,29,192,59, + 128,119,0,238,0,17,18,54,19,1,0,48,24,0,48,24, + 0,240,48,0,240,48,0,48,96,0,48,96,0,48,192,0, + 48,192,0,49,134,0,49,142,0,3,30,0,3,30,0,6, + 54,0,6,102,0,12,127,128,12,127,128,24,6,0,24,6, + 0,16,18,36,19,1,0,48,24,48,24,240,48,240,48,48, + 96,48,96,48,192,48,192,49,158,49,191,3,51,3,3,6, + 7,6,30,12,56,12,48,24,63,24,63,17,18,54,19,1, + 0,120,24,0,252,24,0,204,48,0,12,48,0,56,96,0, + 56,96,0,12,192,0,204,192,0,253,134,0,121,142,0,3, + 30,0,3,30,0,6,54,0,6,102,0,12,127,128,12,127, + 128,24,6,0,24,6,0,11,19,38,15,2,251,14,0,14, + 0,14,0,0,0,0,0,14,0,14,0,14,0,14,0,28, + 0,60,0,120,0,112,0,240,224,224,224,225,224,243,192,127, + 192,63,0,16,24,48,18,1,0,14,0,7,0,3,128,1, + 192,0,0,3,192,3,192,7,224,7,224,14,96,14,112,14, + 112,28,56,28,56,28,56,56,28,56,28,63,252,127,254,112, + 14,112,14,224,7,224,7,224,7,16,24,48,18,1,0,0, + 112,0,224,1,192,3,128,0,0,3,192,3,192,7,224,7, + 224,14,96,14,112,14,112,28,56,28,56,28,56,56,28,56, + 28,63,252,127,254,112,14,112,14,224,7,224,7,224,7,16, + 24,48,18,1,0,1,192,3,224,7,112,14,56,0,0,3, + 192,3,192,7,224,7,224,14,96,14,112,14,112,28,56,28, + 56,28,56,56,28,56,28,63,252,127,254,112,14,112,14,224, + 7,224,7,224,7,16,23,46,18,1,0,7,152,15,248,12, + 240,0,0,3,192,3,192,7,224,7,224,14,96,14,112,14, + 112,28,56,28,56,28,56,56,28,56,28,63,252,127,254,112, + 14,112,14,224,7,224,7,224,7,16,23,46,18,1,0,14, + 112,14,112,0,0,0,0,3,192,3,192,7,224,7,224,14, + 96,14,112,14,112,28,56,28,56,28,56,56,28,56,28,63, + 252,127,254,112,14,112,14,224,7,224,7,224,7,16,24,48, + 18,1,0,3,192,6,96,4,32,6,96,3,192,3,192,3, + 192,7,224,7,224,14,96,14,112,14,112,28,56,28,56,28, + 56,56,28,56,28,63,252,127,254,112,14,112,14,224,7,224, + 7,224,7,22,19,57,24,1,0,3,255,248,3,255,248,7, + 112,0,7,112,0,14,112,0,14,112,0,14,112,0,28,112, + 0,28,127,240,28,127,240,56,112,0,56,112,0,63,240,0, + 127,240,0,112,112,0,112,112,0,224,112,0,224,127,252,224, + 127,252,16,24,48,18,1,251,7,240,31,252,62,62,120,15, + 112,7,240,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,240,7,112,7,120,15,62,62,31,252,7,240,3,192, + 0,224,0,224,7,224,3,192,13,24,48,16,2,0,56,0, + 28,0,14,0,7,0,0,0,255,240,255,240,224,0,224,0, + 224,0,224,0,224,0,224,0,255,224,255,224,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,255,248,255,248,13,24, + 48,16,2,0,1,192,3,128,7,0,14,0,0,0,255,240, + 255,240,224,0,224,0,224,0,224,0,224,0,224,0,255,224, + 255,224,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 255,248,255,248,13,24,48,16,2,0,7,0,15,128,29,192, + 56,224,0,0,255,240,255,240,224,0,224,0,224,0,224,0, + 224,0,224,0,255,224,255,224,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,255,248,255,248,13,23,46,16,2,0, + 56,224,56,224,0,0,0,0,255,240,255,240,224,0,224,0, + 224,0,224,0,224,0,224,0,255,224,255,224,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,255,248,255,248,6,24, + 24,7,0,0,224,112,56,28,0,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,6,24,24,7, + 1,0,28,56,112,224,0,112,112,112,112,112,112,112,112,112, + 112,112,112,112,112,112,112,112,112,112,9,24,48,7,255,0, + 28,0,62,0,119,0,227,128,0,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 7,23,23,7,0,0,238,238,0,0,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,19,19,57, + 19,255,0,31,252,0,31,255,0,28,15,128,28,3,192,28, + 1,192,28,1,224,28,0,224,28,0,224,255,192,224,255,192, + 224,28,0,224,28,0,224,28,0,224,28,1,224,28,1,192, + 28,3,192,28,15,128,31,255,0,31,252,0,15,23,46,19, + 2,0,15,48,31,240,25,224,0,0,224,14,240,14,240,14, + 248,14,248,14,252,14,238,14,238,14,231,14,227,142,227,142, + 225,206,224,206,224,238,224,126,224,62,224,62,224,30,224,14, + 17,24,72,19,1,0,14,0,0,7,0,0,3,128,0,1, + 192,0,0,0,0,7,240,0,31,252,0,62,62,0,120,15, + 0,112,7,0,240,7,128,224,3,128,224,3,128,224,3,128, + 224,3,128,224,3,128,224,3,128,224,3,128,240,7,128,112, + 7,0,120,15,0,62,62,0,31,252,0,7,240,0,17,24, + 72,19,1,0,0,56,0,0,112,0,0,224,0,1,192,0, + 0,0,0,7,240,0,31,252,0,62,62,0,120,15,0,112, + 7,0,240,7,128,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,224,3,128,224,3,128,240,7,128,112,7,0, + 120,15,0,62,62,0,31,252,0,7,240,0,17,24,72,19, + 1,0,1,192,0,3,224,0,7,112,0,14,56,0,0,0, + 0,7,240,0,31,252,0,62,62,0,120,15,0,112,7,0, + 240,7,128,224,3,128,224,3,128,224,3,128,224,3,128,224, + 3,128,224,3,128,224,3,128,240,7,128,112,7,0,120,15, + 0,62,62,0,31,252,0,7,240,0,17,23,69,19,1,0, + 7,152,0,15,248,0,12,240,0,0,0,0,7,240,0,31, + 252,0,62,62,0,120,15,0,112,7,0,240,7,128,224,3, + 128,224,3,128,224,3,128,224,3,128,224,3,128,224,3,128, + 224,3,128,240,7,128,112,7,0,120,15,0,62,62,0,31, + 252,0,7,240,0,17,23,69,19,1,0,14,56,0,14,56, + 0,0,0,0,0,0,0,7,240,0,31,252,0,62,62,0, + 120,15,0,112,7,0,240,7,128,224,3,128,224,3,128,224, + 3,128,224,3,128,224,3,128,224,3,128,224,3,128,240,7, + 128,112,7,0,120,15,0,62,62,0,31,252,0,7,240,0, + 12,12,24,15,1,1,64,32,224,112,112,224,57,192,31,128, + 15,0,15,0,31,128,57,192,112,224,224,112,64,32,19,19, + 57,19,0,0,3,248,96,15,254,224,31,31,192,60,3,128, + 56,7,128,120,15,192,112,29,192,112,57,192,112,113,192,112, + 225,192,113,193,192,115,129,192,119,1,192,126,3,192,60,3, + 128,60,7,128,127,31,0,239,254,0,195,248,0,15,24,48, + 19,2,0,14,0,7,0,3,128,1,192,0,0,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,240,30,112,28,124,124,63, + 248,15,224,15,24,48,19,2,0,0,112,0,224,1,192,3, + 128,0,0,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,240, + 30,112,28,124,124,63,248,15,224,15,24,48,19,2,0,3, + 128,7,192,14,224,28,112,0,0,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,240,30,112,28,124,124,63,248,15,224,15, + 23,46,19,2,0,28,112,28,112,0,0,0,0,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,240,30,112,28,124,124,63, + 248,15,224,15,24,48,17,1,0,0,112,0,224,1,192,3, + 128,0,0,224,14,240,30,112,28,120,60,56,56,60,120,28, + 112,30,240,14,224,15,224,7,192,7,192,3,128,3,128,3, + 128,3,128,3,128,3,128,3,128,14,19,38,17,2,0,224, + 0,224,0,224,0,224,0,255,224,255,248,224,56,224,28,224, + 28,224,28,224,28,224,56,255,248,255,240,224,0,224,0,224, + 0,224,0,224,0,11,19,38,14,2,0,30,0,127,128,243, + 128,225,192,225,192,225,192,225,192,227,128,239,0,239,128,227, + 192,225,192,224,224,224,224,224,224,224,224,225,192,239,192,239, + 128,12,19,38,14,1,0,28,0,14,0,7,0,3,128,0, + 0,31,128,63,192,113,224,112,224,0,224,7,224,63,224,124, + 224,240,224,224,224,225,224,243,224,127,240,62,112,12,19,38, + 14,1,0,1,192,3,128,7,0,14,0,0,0,31,128,63, + 192,113,224,112,224,0,224,7,224,63,224,124,224,240,224,224, + 224,225,224,243,224,127,240,62,112,12,19,38,14,1,0,7, + 0,15,128,29,192,56,224,0,0,31,128,63,192,113,224,112, + 224,0,224,7,224,63,224,124,224,240,224,224,224,225,224,243, + 224,127,240,62,112,12,19,38,14,1,0,60,192,127,192,103, + 128,0,0,0,0,31,128,63,192,113,224,112,224,0,224,7, + 224,63,224,124,224,240,224,224,224,225,224,243,224,127,240,62, + 112,12,18,36,14,1,0,57,192,57,192,0,0,0,0,31, + 128,63,192,113,224,112,224,0,224,7,224,63,224,124,224,240, + 224,224,224,225,224,243,224,127,240,62,112,12,19,38,14,1, + 0,7,0,13,128,8,128,13,128,7,0,31,128,63,192,113, + 224,112,224,0,224,7,224,63,224,124,224,240,224,224,224,225, + 224,243,224,127,240,62,112,20,14,42,22,1,0,31,143,0, + 63,255,192,113,249,224,112,240,224,0,224,112,7,224,112,63, + 255,240,124,255,240,240,224,0,224,224,0,225,240,112,243,248, + 240,127,63,224,62,15,128,11,19,38,13,1,251,31,128,63, + 192,121,224,112,224,224,0,224,0,224,0,224,0,224,0,224, + 0,112,224,121,224,63,192,31,128,30,0,7,0,7,0,63, + 0,30,0,12,19,38,14,1,0,28,0,14,0,7,0,3, + 128,0,0,15,0,63,192,121,224,112,224,224,112,224,112,255, + 240,255,240,224,0,224,0,112,112,120,240,63,224,15,128,12, + 19,38,14,1,0,3,128,7,0,14,0,28,0,0,0,15, + 0,63,192,121,224,112,224,224,112,224,112,255,240,255,240,224, + 0,224,0,112,112,120,240,63,224,15,128,12,19,38,14,1, + 0,7,0,15,128,29,192,56,224,0,0,15,0,63,192,121, + 224,112,224,224,112,224,112,255,240,255,240,224,0,224,0,112, + 112,120,240,63,224,15,128,12,18,36,14,1,0,57,192,57, + 192,0,0,0,0,15,0,63,192,121,224,112,224,224,112,224, + 112,255,240,255,240,224,0,224,0,112,112,120,240,63,224,15, + 128,6,19,19,7,0,0,224,112,56,28,0,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,6,19,19,7,1,0, + 28,56,112,224,0,112,112,112,112,112,112,112,112,112,112,112, + 112,112,112,9,19,38,7,255,0,28,0,62,0,119,0,227, + 128,0,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,7, + 18,18,7,0,0,238,238,0,0,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,12,19,38,14,1,0,112,0,29, + 192,7,0,31,0,97,128,15,192,63,192,121,224,112,224,224, + 112,224,112,224,112,224,112,224,112,224,112,112,224,121,224,63, + 192,15,0,11,19,38,15,2,0,60,192,127,192,103,128,0, + 0,0,0,239,128,255,192,241,192,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,12, + 19,38,14,1,0,28,0,14,0,7,0,3,128,0,0,15, + 0,63,192,121,224,112,224,224,112,224,112,224,112,224,112,224, + 112,224,112,112,224,121,224,63,192,15,0,12,19,38,14,1, + 0,3,128,7,0,14,0,28,0,0,0,15,0,63,192,121, + 224,112,224,224,112,224,112,224,112,224,112,224,112,224,112,112, + 224,121,224,63,192,15,0,12,19,38,14,1,0,14,0,31, + 0,59,128,113,192,0,0,15,0,63,192,121,224,112,224,224, + 112,224,112,224,112,224,112,224,112,224,112,112,224,121,224,63, + 192,15,0,12,19,38,14,1,0,60,192,127,192,103,128,0, + 0,0,0,15,0,63,192,121,224,112,224,224,112,224,112,224, + 112,224,112,224,112,224,112,112,224,121,224,63,192,15,0,12, + 18,36,14,1,0,57,192,57,192,0,0,0,0,15,0,63, + 192,121,224,112,224,224,112,224,112,224,112,224,112,224,112,224, + 112,112,224,121,224,63,192,15,0,11,12,24,15,2,1,14, + 0,14,0,14,0,0,0,0,0,255,224,255,224,0,0,0, + 0,14,0,14,0,14,0,14,14,28,14,0,0,7,140,31, + 252,60,248,56,112,112,248,113,248,115,184,119,56,126,56,124, + 56,56,112,124,240,255,224,199,128,11,19,38,15,2,0,56, + 0,28,0,14,0,7,0,0,0,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,225,224,115, + 224,126,224,28,224,11,19,38,15,2,0,3,128,7,0,14, + 0,28,0,0,0,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,225,224,115,224,126,224,28, + 224,11,19,38,15,2,0,14,0,31,0,59,128,113,192,0, + 0,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,225,224,115,224,126,224,28,224,11,18,36, + 15,2,0,57,192,57,192,0,0,0,0,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,225, + 224,115,224,126,224,28,224,13,24,48,15,1,251,0,224,1, + 192,3,128,7,0,0,0,224,56,224,56,112,56,120,112,56, + 112,60,240,28,224,28,224,15,192,15,192,7,192,7,128,3, + 128,3,128,7,0,7,0,14,0,62,0,60,0,12,24,48, + 15,2,251,224,0,224,0,224,0,224,0,224,0,239,128,255, + 192,249,224,240,224,224,112,224,112,224,112,224,112,224,112,224, + 112,240,224,249,224,255,192,239,128,224,0,224,0,224,0,224, + 0,224,0,13,23,46,15,1,251,28,224,28,224,0,0,0, + 0,224,56,224,56,112,56,120,112,56,112,60,240,28,224,28, + 224,15,192,15,192,7,192,7,128,3,128,3,128,7,0,7, + 0,14,0,62,0,60,0}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--25-180-100-100-P-138-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 19, '1' Height: 18 + Calculated Max Values w=22 h=24 x= 3 y=15 dx=24 dy= 0 ascent=19 len=66 + Font Bounding box w=28 h=37 x=-2 y=-8 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =19 descent=-5 + X Font ascent =19 descent=-5 + Max Font ascent =19 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB18r[3453] U8G_SECTION(".progmem.u8g_font_helvB18r") = { + 0,28,37,254,248,19,4,35,9,107,32,127,251,19,251,19, + 251,0,0,0,6,0,1,3,19,19,7,2,0,224,224,224, + 224,224,224,224,224,224,224,224,192,192,192,0,0,224,224,224, + 5,6,6,9,2,13,216,216,216,216,216,144,12,18,36,14, + 1,0,12,192,12,192,12,192,12,192,12,192,127,240,127,240, + 25,128,25,128,25,128,25,128,255,224,255,224,51,0,51,0, + 51,0,51,0,51,0,12,21,42,13,0,254,6,0,63,128, + 127,224,246,224,230,112,230,112,246,0,126,0,62,0,15,0, + 7,192,7,224,6,240,230,112,230,112,230,112,246,240,127,224, + 31,192,6,0,6,0,21,18,54,22,0,0,0,7,0,62, + 7,0,127,14,0,227,142,0,193,156,0,193,156,0,227,184, + 0,127,56,0,62,112,0,0,112,0,0,227,224,0,231,240, + 1,206,56,1,204,24,3,140,24,3,142,56,7,7,240,7, + 3,224,16,18,36,18,1,0,15,128,31,192,61,224,56,224, + 56,224,56,224,29,192,15,128,31,0,63,156,123,220,113,252, + 224,248,224,112,224,248,241,252,127,206,31,135,2,6,6,6, + 2,13,192,192,192,192,192,128,6,24,24,8,1,251,12,28, + 56,56,112,112,96,224,224,224,224,224,224,224,224,224,224,96, + 112,112,56,56,28,12,6,24,24,8,1,251,192,224,112,112, + 56,56,24,28,28,28,28,28,28,28,28,28,28,24,56,56, + 112,112,224,192,8,7,7,10,1,12,24,24,219,255,60,102, + 102,12,12,24,15,1,1,6,0,6,0,6,0,6,0,6, + 0,255,240,255,240,6,0,6,0,6,0,6,0,6,0,3, + 6,6,7,2,253,224,224,224,96,96,192,7,3,3,8,0, + 6,254,254,254,3,3,3,7,2,0,224,224,224,7,19,19, + 8,1,0,6,6,6,12,12,12,24,24,24,24,48,48,48, + 96,96,96,192,192,192,12,18,36,13,0,0,31,128,63,192, + 121,224,112,224,112,224,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,112,224,112,224,121,224,63,192,31,128, + 7,18,18,13,2,0,14,14,30,254,254,14,14,14,14,14, + 14,14,14,14,14,14,14,14,12,18,36,13,0,0,31,0, + 127,192,113,224,224,224,224,112,224,112,0,112,0,224,1,224, + 3,192,7,128,31,0,60,0,120,0,240,0,224,0,255,240, + 255,240,12,18,36,13,0,0,31,0,127,192,113,192,224,224, + 224,224,224,224,0,224,1,192,15,128,15,224,0,224,0,112, + 0,112,224,112,224,240,113,224,127,224,31,128,12,18,36,13, + 0,0,1,192,3,192,3,192,7,192,7,192,13,192,29,192, + 25,192,49,192,113,192,97,192,225,192,255,240,255,240,1,192, + 1,192,1,192,1,192,12,18,36,13,0,0,127,224,127,224, + 112,0,112,0,112,0,112,0,127,128,127,192,113,224,0,224, + 0,112,0,112,0,112,224,112,224,240,241,224,127,192,31,128, + 12,18,36,13,0,0,15,128,63,224,120,224,112,112,224,112, + 224,0,224,0,239,0,255,192,249,224,240,224,224,112,224,112, + 224,112,112,224,121,224,63,192,31,128,12,18,36,13,0,0, + 255,240,255,240,0,240,0,224,1,192,1,192,3,128,3,128, + 7,0,7,0,14,0,14,0,30,0,28,0,28,0,60,0, + 56,0,56,0,12,18,36,13,0,0,15,0,63,192,57,192, + 112,224,112,224,112,224,112,224,57,192,31,128,63,192,112,224, + 224,112,224,112,224,112,224,112,112,224,127,224,31,128,12,18, + 36,13,0,0,31,128,127,192,121,224,240,224,224,112,224,112, + 224,112,224,112,240,240,121,240,127,240,31,112,0,112,0,112, + 224,224,243,224,127,192,31,0,3,14,14,7,2,0,224,224, + 224,0,0,0,0,0,0,0,0,224,224,224,3,17,17,7, + 2,253,224,224,224,0,0,0,0,0,0,0,0,224,224,224, + 96,96,192,13,12,24,15,0,1,0,56,0,248,3,224,15, + 128,62,0,240,0,240,0,62,0,15,128,3,224,0,248,0, + 56,10,5,10,14,2,5,255,192,255,192,0,0,255,192,255, + 192,13,12,24,14,1,1,224,0,248,0,62,0,15,128,3, + 224,0,120,0,120,3,224,15,128,62,0,248,0,224,0,11, + 19,38,15,2,0,31,128,127,192,121,224,240,224,224,224,225, + 224,1,192,3,192,7,128,7,0,14,0,14,0,14,0,14, + 0,0,0,0,0,14,0,14,0,14,0,22,22,66,24,1, + 252,1,255,0,7,255,192,15,129,240,30,0,120,60,0,56, + 120,125,156,112,255,156,241,199,28,227,135,28,227,14,28,231, + 14,56,231,12,56,231,28,112,231,28,112,227,157,224,243,255, + 192,113,247,0,120,0,0,60,0,0,31,7,0,15,255,0, + 3,252,0,16,19,38,18,1,0,3,192,3,192,7,224,7, + 224,14,96,14,112,14,112,28,56,28,56,28,56,56,28,56, + 28,63,252,127,254,112,14,112,14,224,7,224,7,224,7,15, + 19,38,18,2,0,255,224,255,248,224,120,224,28,224,28,224, + 28,224,28,224,56,255,240,255,248,224,28,224,14,224,14,224, + 14,224,14,224,30,224,124,255,248,255,224,16,19,38,18,1, + 0,7,240,31,252,62,62,120,15,112,7,240,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,240,7,112,7,120, + 15,62,62,31,252,7,240,16,19,38,19,2,0,255,224,255, + 248,224,124,224,30,224,14,224,15,224,7,224,7,224,7,224, + 7,224,7,224,7,224,7,224,15,224,14,224,30,224,124,255, + 248,255,224,13,19,38,16,2,0,255,240,255,240,224,0,224, + 0,224,0,224,0,224,0,224,0,255,224,255,224,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,255,248,255,248,12, + 19,38,15,2,0,255,240,255,240,224,0,224,0,224,0,224, + 0,224,0,224,0,255,224,255,224,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,17,19,57,19,1, + 0,7,240,0,31,252,0,62,62,0,120,15,0,112,7,0, + 240,0,0,224,0,0,224,0,0,224,0,0,224,127,128,224, + 127,128,224,3,128,224,3,128,240,3,128,112,7,128,120,15, + 128,62,63,128,31,251,128,7,243,128,15,19,38,19,2,0, + 224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14, + 255,254,255,254,224,14,224,14,224,14,224,14,224,14,224,14, + 224,14,224,14,224,14,3,19,19,7,2,0,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,11, + 19,38,14,1,0,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,224,224,224, + 224,224,224,224,224,113,224,127,192,63,128,14,19,38,18,2, + 0,224,60,224,120,224,240,225,224,227,192,231,128,239,0,254, + 0,254,0,255,0,247,128,227,128,225,192,225,224,224,224,224, + 112,224,120,224,56,224,60,12,19,38,15,2,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,255, + 240,255,240,19,19,57,23,2,0,224,0,224,240,1,224,240, + 1,224,248,3,224,248,3,224,252,7,224,236,6,224,238,14, + 224,230,12,224,231,28,224,231,28,224,227,24,224,227,184,224, + 227,184,224,225,240,224,225,240,224,224,224,224,224,224,224,224, + 224,224,15,19,38,19,2,0,224,14,240,14,240,14,248,14, + 248,14,252,14,238,14,238,14,231,14,227,142,227,142,225,206, + 224,206,224,238,224,126,224,62,224,62,224,30,224,14,17,19, + 57,19,1,0,7,240,0,31,252,0,62,62,0,120,15,0, + 112,7,0,240,7,128,224,3,128,224,3,128,224,3,128,224, + 3,128,224,3,128,224,3,128,224,3,128,240,7,128,112,7, + 0,120,15,0,62,62,0,31,252,0,7,240,0,14,19,38, + 17,2,0,255,224,255,248,224,56,224,28,224,28,224,28,224, + 28,224,56,255,248,255,240,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,17,20,60,19,1,255,7, + 240,0,31,252,0,62,62,0,120,15,0,112,7,0,240,7, + 128,224,3,128,224,3,128,224,3,128,224,3,128,224,3,128, + 224,3,128,224,3,128,240,39,128,112,119,0,120,63,0,62, + 30,0,31,254,0,7,247,0,0,2,0,14,19,38,17,2, + 0,255,224,255,248,224,56,224,28,224,28,224,28,224,28,224, + 56,255,248,255,240,224,120,224,56,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,14,19,38,17,2,0,15,192,63, + 240,120,248,240,56,224,56,224,0,240,0,124,0,63,192,7, + 240,0,248,0,60,0,28,224,28,224,28,224,60,248,248,127, + 240,31,192,15,19,38,15,0,0,255,254,255,254,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,15, + 19,38,19,2,0,224,14,224,14,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,224,14,224, + 14,240,30,112,28,124,124,63,248,15,224,16,19,38,18,1, + 0,224,7,224,7,240,15,112,14,120,30,56,28,56,28,60, + 60,28,56,28,56,30,120,14,112,14,112,14,112,7,224,7, + 224,3,192,3,192,3,192,21,19,57,23,1,0,224,112,56, + 224,112,56,224,112,56,224,112,56,112,248,112,112,248,112,112, + 216,112,113,220,112,49,220,96,57,220,224,57,140,224,59,142, + 224,27,142,192,27,142,192,31,7,192,31,7,192,14,3,128, + 14,3,128,14,3,128,16,19,38,18,1,0,224,7,240,15, + 120,30,56,28,28,56,14,112,15,240,7,224,3,192,3,192, + 7,224,15,240,14,112,28,56,60,60,56,28,112,14,240,15, + 224,7,15,19,38,17,1,0,224,14,240,14,112,28,120,28, + 56,56,60,56,28,112,28,112,14,224,14,224,7,192,7,192, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,14,19, + 38,16,1,0,255,252,255,252,0,60,0,120,0,240,1,224, + 1,224,3,192,7,128,7,128,15,0,30,0,30,0,60,0, + 56,0,120,0,240,0,255,252,255,252,5,24,24,8,1,251, + 248,248,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,248,248,7,19,19,8,0,0,192,192, + 192,96,96,96,48,48,48,48,24,24,24,12,12,12,6,6, + 6,5,24,24,8,2,251,248,248,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,248,248,11, + 9,18,14,1,10,14,0,14,0,31,0,27,0,59,128,113, + 192,113,192,224,224,224,224,14,2,4,14,0,251,255,252,255, + 252,6,4,4,8,1,15,224,112,56,28,12,14,28,14,1, + 0,31,128,63,192,113,224,112,224,0,224,7,224,63,224,124, + 224,240,224,224,224,225,224,243,224,127,240,62,112,12,19,38, + 15,2,0,224,0,224,0,224,0,224,0,224,0,239,128,255, + 192,249,224,240,224,224,112,224,112,224,112,224,112,224,112,224, + 112,240,224,249,224,255,192,239,128,11,14,28,13,1,0,31, + 128,63,192,121,224,112,224,224,0,224,0,224,0,224,0,224, + 0,224,0,112,224,121,224,63,192,31,128,12,19,38,15,1, + 0,0,112,0,112,0,112,0,112,0,112,31,112,63,240,121, + 240,112,240,224,112,224,112,224,112,224,112,224,112,224,112,112, + 240,121,240,63,240,31,112,12,14,28,14,1,0,15,0,63, + 192,121,224,112,224,224,112,224,112,255,240,255,240,224,0,224, + 0,112,112,120,240,63,224,15,128,7,19,19,9,1,0,30, + 62,56,56,56,254,254,56,56,56,56,56,56,56,56,56,56, + 56,56,12,19,38,15,1,251,31,112,63,240,121,240,112,240, + 224,112,224,112,224,112,224,112,224,112,224,112,112,240,121,240, + 63,240,31,112,0,112,224,112,240,224,127,224,31,128,11,19, + 38,15,2,0,224,0,224,0,224,0,224,0,224,0,239,0, + 255,192,241,192,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,3,19,19,7,2,0, + 224,224,224,0,0,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,5,24,24,7,0,251,56,56,56,0,0,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,248, + 240,11,19,38,14,2,0,224,0,224,0,224,0,224,0,224, + 0,225,192,227,192,231,128,239,0,254,0,252,0,254,0,239, + 0,231,0,231,128,227,192,225,192,225,224,224,224,3,19,19, + 7,2,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,17,14,42,21,2,0,239,62,0,255, + 255,0,243,231,128,225,195,128,225,195,128,225,195,128,225,195, + 128,225,195,128,225,195,128,225,195,128,225,195,128,225,195,128, + 225,195,128,225,195,128,11,14,28,15,2,0,239,128,255,192, + 241,192,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,12,14,28,14,1,0,15,0, + 63,192,121,224,112,224,224,112,224,112,224,112,224,112,224,112, + 224,112,112,224,121,224,63,192,15,0,12,19,38,15,2,251, + 239,128,255,192,249,224,240,224,224,112,224,112,224,112,224,112, + 224,112,224,112,240,224,249,224,255,192,239,128,224,0,224,0, + 224,0,224,0,224,0,12,19,38,15,1,251,31,112,63,240, + 121,240,112,240,224,112,224,112,224,112,224,112,224,112,224,112, + 112,240,121,240,63,240,31,112,0,112,0,112,0,112,0,112, + 0,112,7,14,14,10,2,0,238,254,254,240,224,224,224,224, + 224,224,224,224,224,224,11,14,28,13,1,0,63,0,127,128, + 243,192,225,192,224,0,252,0,127,128,15,192,1,224,224,224, + 224,224,241,224,127,192,63,128,7,18,18,9,1,0,56,56, + 56,56,254,254,56,56,56,56,56,56,56,56,56,56,62,30, + 11,14,28,15,2,0,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,225,224,115,224,126,224, + 28,224,12,14,28,14,1,0,224,112,224,112,224,112,112,224, + 112,224,112,224,57,192,57,192,57,192,31,128,31,128,15,0, + 15,0,15,0,19,14,42,19,0,0,224,224,224,224,224,224, + 96,224,192,113,241,192,113,241,192,49,177,128,51,185,128,59, + 187,128,27,27,0,31,31,0,31,31,0,14,14,0,14,14, + 0,14,14,0,11,14,28,13,1,0,224,224,241,224,113,192, + 59,128,63,128,31,0,14,0,31,0,31,0,59,128,123,192, + 113,192,241,224,224,224,13,19,38,15,1,251,224,56,224,56, + 112,56,120,112,56,112,60,240,28,224,28,224,15,192,15,192, + 7,192,7,128,3,128,3,128,7,0,7,0,14,0,62,0, + 60,0,11,14,28,13,1,0,255,224,255,224,1,192,3,128, + 7,128,15,0,14,0,30,0,60,0,56,0,112,0,240,0, + 255,224,255,224,7,24,24,10,1,251,14,28,56,56,56,56, + 56,56,56,56,112,224,224,112,56,56,56,56,56,56,56,56, + 28,14,2,24,24,7,3,251,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 7,24,24,10,2,251,224,112,56,56,56,56,56,56,56,56, + 28,14,14,28,56,56,56,56,56,56,56,56,112,224,11,4, + 8,14,1,5,120,224,254,224,239,224,227,192,255}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--34-240-100-100-P-182-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 23 + Calculated Max Values w=31 h=32 x= 4 y=21 dx=33 dy= 0 ascent=31 len=120 + Font Bounding box w=40 h=49 x=-6 y=-12 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =31 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB24[11554] U8G_SECTION(".progmem.u8g_font_helvB24") = { + 0,40,49,250,244,25,5,252,14,144,32,255,249,31,249,25, + 249,0,0,0,9,0,1,5,25,25,11,3,0,248,248,248, + 248,248,248,248,248,248,248,248,112,112,112,112,112,112,112,0, + 0,248,248,248,248,248,11,9,18,16,2,16,241,224,241,224, + 241,224,241,224,241,224,241,224,241,224,96,192,96,192,18,25, + 75,19,0,255,3,199,0,3,199,0,3,143,0,3,143,0, + 7,143,0,7,142,0,7,142,0,127,255,192,127,255,192,127, + 255,192,127,255,192,15,28,0,14,28,0,14,28,0,14,60, + 0,255,255,128,255,255,128,255,255,128,255,255,128,28,120,0, + 60,120,0,60,112,0,60,112,0,56,240,0,56,240,0,16, + 28,56,18,1,253,1,128,1,128,15,240,63,252,127,254,253, + 190,249,159,241,159,241,143,249,128,255,128,127,192,63,240,15, + 252,1,254,1,255,1,159,1,143,241,143,241,159,249,159,127, + 254,127,254,63,248,7,224,1,128,1,128,1,128,26,23,92, + 29,1,0,14,0,48,0,63,128,112,0,127,192,96,0,113, + 192,224,0,224,224,192,0,224,225,192,0,224,227,128,0,224, + 227,128,0,113,199,0,0,127,198,0,0,63,142,0,0,14, + 12,28,0,0,28,127,0,0,24,255,128,0,56,227,128,0, + 49,193,192,0,113,193,192,0,97,193,192,0,225,193,192,1, + 192,227,128,1,192,255,128,3,128,127,0,3,0,28,0,20, + 25,75,24,2,0,3,224,0,15,248,0,31,252,0,31,252, + 0,30,60,0,62,60,0,62,60,0,31,60,0,31,248,0, + 15,248,0,15,240,0,15,224,0,63,241,224,127,241,224,124, + 249,192,248,255,192,240,127,192,240,63,128,240,31,0,248,15, + 128,252,63,192,127,255,224,127,251,224,31,241,240,7,192,0, + 4,9,9,8,2,16,240,240,240,240,240,240,240,96,96,8, + 31,31,11,1,250,7,15,30,30,60,60,56,120,120,120,240, + 240,240,240,240,240,240,240,240,248,120,120,120,120,60,60,28, + 30,14,15,7,8,31,31,11,1,250,224,240,120,120,60,60, + 28,30,30,30,15,15,15,15,15,15,15,15,15,31,30,30, + 30,28,60,60,56,120,112,240,224,10,11,22,13,1,13,12, + 0,12,0,76,128,237,192,255,192,127,128,30,0,63,0,127, + 128,115,128,33,0,16,16,32,19,1,0,3,192,3,192,3, + 192,3,192,3,192,3,192,255,255,255,255,255,255,255,255,3, + 192,3,192,3,192,3,192,3,192,3,192,5,11,11,9,2, + 250,248,248,248,248,248,24,24,56,112,224,128,9,5,10,11, + 1,7,255,128,255,128,255,128,255,128,255,128,5,5,5,9, + 2,0,248,248,248,248,248,8,25,25,9,0,0,3,3,3, + 3,6,6,6,14,12,12,12,28,24,24,24,48,48,48,112, + 96,96,96,192,192,192,15,24,48,18,1,0,15,224,31,240, + 63,248,127,252,124,124,248,62,248,62,248,62,240,30,240,30, + 240,30,240,30,240,30,240,30,240,30,240,30,248,62,248,62, + 248,62,124,124,127,252,63,248,31,240,15,224,10,23,46,18, + 2,0,1,192,3,192,7,192,31,192,255,192,255,192,255,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 16,24,48,18,1,0,15,224,63,248,127,252,127,254,252,126, + 248,63,248,31,240,31,240,31,0,63,0,62,0,126,0,252, + 1,248,7,240,15,224,31,128,63,0,126,0,252,0,255,255, + 255,255,255,255,255,255,16,24,48,18,1,0,15,224,63,248, + 127,252,127,252,248,62,240,62,240,30,240,30,0,62,0,124, + 3,248,3,240,3,252,0,126,0,63,0,31,240,31,240,31, + 240,63,248,62,127,254,127,252,63,248,15,224,16,24,48,18, + 1,0,0,248,0,248,1,248,3,248,3,248,7,248,15,120, + 14,120,30,120,28,120,60,120,120,120,112,120,240,120,224,120, + 255,255,255,255,255,255,255,255,0,120,0,120,0,120,0,120, + 0,120,15,24,48,18,1,0,63,252,63,252,63,252,63,252, + 56,0,120,0,120,0,120,0,123,224,127,248,127,252,127,252, + 120,126,0,62,0,62,0,30,0,30,240,62,240,62,248,124, + 127,252,127,248,63,240,15,192,15,24,48,18,1,0,7,224, + 31,248,63,252,63,254,124,62,120,30,240,0,240,0,243,224, + 247,248,255,252,255,252,252,126,248,62,240,30,240,30,240,30, + 240,30,248,62,124,124,127,252,63,248,31,240,7,192,16,24, + 48,18,1,0,255,255,255,255,255,255,255,255,0,30,0,62, + 0,60,0,120,0,248,0,240,1,240,1,224,3,224,3,192, + 7,192,7,192,7,128,15,128,15,128,15,128,31,0,31,0, + 31,0,31,0,17,24,72,18,0,0,7,240,0,31,252,0, + 63,254,0,62,62,0,124,31,0,120,15,0,120,15,0,120, + 15,0,124,31,0,62,62,0,31,252,0,31,252,0,63,254, + 0,124,31,0,248,15,128,240,7,128,240,7,128,240,7,128, + 248,15,128,126,63,0,127,254,0,63,254,0,31,252,0,7, + 240,0,15,24,48,18,1,0,7,192,31,240,63,248,127,252, + 124,124,248,62,240,30,240,30,240,30,240,30,248,62,252,126, + 127,254,127,254,63,222,7,158,0,30,0,30,240,60,248,124, + 127,248,127,248,31,240,7,192,5,17,17,11,3,0,248,248, + 248,248,248,0,0,0,0,0,0,0,248,248,248,248,248,5, + 23,23,11,3,250,248,248,248,248,248,0,0,0,0,0,0, + 0,248,248,248,248,248,24,24,56,112,224,128,16,16,32,19, + 1,0,0,3,0,31,0,127,3,255,15,254,127,248,255,192, + 254,0,254,0,255,192,127,240,15,254,3,255,0,127,0,31, + 0,3,15,12,24,19,2,2,255,254,255,254,255,254,255,254, + 0,0,0,0,0,0,0,0,255,254,255,254,255,254,255,254, + 16,16,32,19,1,0,192,0,240,0,254,0,255,192,127,240, + 31,254,3,255,0,127,0,127,3,255,31,254,127,240,255,192, + 254,0,240,0,192,0,16,25,50,20,2,0,15,224,63,248, + 127,252,127,254,252,126,248,63,248,31,240,31,240,31,0,63, + 0,126,0,254,1,252,1,248,3,224,3,192,7,192,7,192, + 0,0,0,0,7,192,7,192,7,192,7,192,7,192,29,30, + 120,33,1,251,0,15,224,0,0,127,252,0,1,255,254,0, + 3,240,63,128,7,192,7,192,15,0,3,192,30,0,1,224, + 28,0,0,240,60,7,220,112,56,31,252,112,112,60,252,56, + 112,120,120,56,240,240,56,56,224,224,56,56,225,224,56,56, + 225,192,112,120,225,192,112,112,225,192,112,112,225,224,240,224, + 241,225,241,224,112,255,255,192,120,127,63,128,56,62,30,0, + 60,0,0,0,30,0,0,0,15,128,0,0,15,240,60,0, + 3,255,252,0,1,255,252,0,0,127,224,0,22,25,75,23, + 0,0,0,252,0,0,252,0,1,254,0,1,254,0,1,254, + 0,3,255,0,3,255,0,3,255,0,7,207,128,7,207,128, + 7,207,128,15,135,128,15,135,192,15,135,192,31,3,192,31, + 3,224,31,255,224,31,255,224,63,255,240,63,255,240,62,1, + 240,124,0,248,124,0,248,252,0,252,248,0,124,19,25,75, + 24,3,0,255,252,0,255,255,0,255,255,128,255,255,128,248, + 15,192,248,7,192,248,7,192,248,7,192,248,7,192,248,15, + 128,255,255,0,255,255,0,255,255,128,255,255,192,248,7,192, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 7,224,255,255,192,255,255,192,255,255,128,255,254,0,21,25, + 75,24,1,0,1,254,0,7,255,128,15,255,192,31,255,224, + 63,135,240,62,1,240,124,1,248,124,0,248,124,0,248,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,124,0,248,124,0,248,126,1,248,62,1,240, + 63,135,240,31,255,224,15,255,192,7,255,128,1,254,0,21, + 25,75,24,2,0,255,248,0,255,255,0,255,255,128,255,255, + 192,248,15,224,248,3,224,248,3,240,248,1,240,248,1,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,1,248,248,1,240,248,3,240,248,3, + 224,248,15,224,255,255,192,255,255,128,255,255,0,255,248,0, + 18,25,75,22,2,0,255,255,128,255,255,128,255,255,128,255, + 255,128,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,255,255,0,255,255,0,255,255,0,255,255,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,255,255,192,255,255,192,255,255,192,255,255, + 192,16,25,50,20,2,0,255,255,255,255,255,255,255,255,248, + 0,248,0,248,0,248,0,248,0,248,0,255,254,255,254,255, + 254,255,254,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,22,25,75,25,1,0,0, + 255,0,3,255,192,15,255,224,31,255,240,31,195,248,63,0, + 248,126,0,124,124,0,124,252,0,0,248,0,0,248,0,0, + 248,0,0,248,15,252,248,15,252,248,15,252,248,15,252,252, + 0,124,124,0,124,126,0,124,126,0,252,63,131,252,63,255, + 252,31,255,220,7,255,156,3,254,28,19,25,75,23,2,0, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,255,255, + 224,255,255,224,255,255,224,255,255,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,5,25,25,9,2, + 0,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,15,25,50,18,1,0, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,248,62, + 248,62,248,62,248,62,248,62,252,126,255,252,127,252,63,248, + 15,224,20,25,75,24,2,0,248,7,224,248,7,224,248,15, + 192,248,31,128,248,63,0,248,126,0,248,252,0,248,248,0, + 249,248,0,251,240,0,255,224,0,255,224,0,255,240,0,255, + 240,0,255,248,0,252,252,0,248,126,0,248,126,0,248,63, + 0,248,31,128,248,15,128,248,15,192,248,7,224,248,3,240, + 248,3,240,16,25,50,20,2,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,255,255,255,255,255,255,255,255,23,25,75,27,2, + 0,254,0,254,254,0,254,255,1,254,255,1,254,255,1,254, + 255,1,254,255,131,254,255,131,254,251,131,190,251,131,190,251, + 199,190,251,199,190,251,199,190,249,199,62,249,239,62,249,239, + 62,249,239,62,249,239,62,248,238,62,248,254,62,248,254,62, + 248,254,62,248,124,62,248,124,62,248,124,62,19,25,75,24, + 2,0,248,3,224,252,3,224,252,3,224,254,3,224,254,3, + 224,255,3,224,255,3,224,255,131,224,255,195,224,251,195,224, + 251,227,224,249,227,224,249,243,224,248,243,224,248,251,224,248, + 123,224,248,63,224,248,63,224,248,31,224,248,31,224,248,15, + 224,248,15,224,248,7,224,248,7,224,248,3,224,23,25,75, + 25,1,0,1,255,0,7,255,192,15,255,224,31,255,240,63, + 199,248,63,1,248,126,0,252,124,0,124,124,0,124,248,0, + 62,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,124,0,124,124,0,124,126,0,252,63,1,248,63, + 199,248,31,255,240,15,255,224,7,255,192,1,255,0,18,25, + 75,22,2,0,255,248,0,255,254,0,255,255,0,255,255,128, + 248,31,128,248,15,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,15,192,248,31,128,255,255,128,255,255,0,255,252, + 0,255,240,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,23, + 26,78,26,1,255,1,255,0,7,255,192,15,255,224,31,255, + 240,63,199,248,63,1,248,126,0,252,124,0,124,252,0,126, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,2,62,252,7,62,124,15,188,126,15,252,63,7, + 248,63,195,240,31,255,248,15,255,252,7,255,254,1,255,60, + 0,0,24,19,25,75,24,2,0,255,254,0,255,255,128,255, + 255,192,255,255,192,248,7,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,7,192,248,15,192,255,255,128,255,255,0, + 255,255,0,255,255,128,248,15,192,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 224,248,3,224,19,25,75,22,1,0,3,248,0,15,254,0, + 31,255,0,63,255,128,62,31,128,124,7,192,120,7,192,120, + 3,192,124,0,0,127,0,0,63,240,0,63,254,0,31,255, + 128,3,255,192,0,63,192,0,7,224,0,3,224,248,3,224, + 248,3,224,124,3,224,126,15,192,63,255,192,31,255,128,15, + 255,0,3,248,0,19,25,75,20,0,0,255,255,224,255,255, + 224,255,255,224,255,255,224,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,19,25,75,24,2,0,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,248,3,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,252,7,224,127,31,192,127,255,192,63,255, + 128,31,255,0,7,252,0,20,25,75,22,1,0,248,1,240, + 248,1,240,124,3,224,124,3,224,124,3,224,60,3,192,62, + 7,192,62,7,192,30,7,128,31,15,128,31,15,128,15,15, + 0,15,15,0,15,15,0,7,158,0,7,158,0,7,158,0, + 7,254,0,3,252,0,3,252,0,3,252,0,1,248,0,1, + 248,0,1,248,0,0,240,0,29,25,100,31,1,0,248,31, + 129,248,248,31,129,248,120,31,129,240,120,31,129,240,120,31, + 129,240,124,63,195,224,124,63,195,224,124,63,195,224,60,63, + 195,224,60,57,195,192,62,121,227,192,62,121,231,192,30,121, + 231,192,30,121,231,128,30,112,231,128,30,112,231,128,15,240, + 255,0,15,240,255,0,15,240,255,0,15,224,127,0,7,224, + 126,0,7,224,126,0,7,224,126,0,3,192,60,0,3,192, + 60,0,20,25,75,22,1,0,252,3,224,126,7,224,126,7, + 192,63,15,192,31,15,128,31,159,0,15,159,0,15,190,0, + 7,254,0,7,252,0,3,252,0,3,248,0,1,248,0,3, + 248,0,3,252,0,7,252,0,7,254,0,15,191,0,31,159, + 0,31,31,128,63,15,128,62,15,192,126,7,192,252,7,224, + 252,3,240,20,25,75,22,1,0,252,3,240,252,3,224,126, + 7,224,62,7,192,63,15,192,63,15,128,31,15,128,31,159, + 0,15,159,0,15,254,0,7,254,0,7,252,0,3,252,0, + 3,248,0,3,248,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,17,25,75,20,1,0,255,255,128,255,255,128, + 255,255,128,255,255,128,0,15,128,0,31,128,0,63,0,0, + 126,0,0,124,0,0,252,0,1,248,0,3,240,0,3,240, + 0,7,224,0,15,192,0,15,128,0,31,128,0,63,0,0, + 126,0,0,126,0,0,252,0,0,255,255,128,255,255,128,255, + 255,128,255,255,128,8,31,31,11,2,250,255,255,255,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,255,255,255,9,25,50,9,0,0, + 192,0,192,0,224,0,96,0,96,0,112,0,112,0,48,0, + 56,0,56,0,24,0,28,0,28,0,12,0,12,0,14,0, + 14,0,6,0,7,0,7,0,3,0,3,128,3,128,1,128, + 1,128,8,31,31,11,0,250,255,255,255,15,15,15,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,255,255,255,14,14,28,19,2,9,7,128,15, + 192,15,192,15,192,31,224,31,224,60,240,60,240,56,112,120, + 120,120,120,112,60,240,60,240,60,18,2,6,18,0,250,255, + 255,192,255,255,192,5,5,5,11,2,20,224,240,112,120,56, + 15,18,36,18,1,0,15,240,63,252,127,252,124,62,248,30, + 248,30,0,254,15,254,63,254,127,30,248,30,248,30,240,62, + 248,126,255,254,255,254,127,222,63,30,16,25,50,20,2,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,243,240, + 247,252,255,252,255,254,252,62,248,31,240,31,240,15,240,15, + 240,15,240,15,240,31,240,31,248,62,255,254,255,252,247,248, + 241,240,15,18,36,18,1,0,7,224,31,248,63,252,63,252, + 124,62,120,62,240,30,240,0,240,0,240,0,240,0,240,30, + 248,30,124,62,127,252,63,248,31,248,7,224,16,25,50,20, + 1,0,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 15,207,31,239,63,255,127,255,124,63,248,31,240,15,240,15, + 240,15,240,15,240,15,240,15,248,31,124,63,127,255,63,239, + 31,239,15,143,16,18,36,18,1,0,7,224,31,248,63,252, + 127,254,124,62,248,31,240,31,255,255,255,255,255,255,240,0, + 240,0,248,30,124,62,127,252,63,252,31,240,7,192,10,25, + 50,11,0,0,7,192,15,192,31,192,31,0,30,0,30,0, + 30,0,255,192,255,192,255,192,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,16,25,50,20,1,249,15,207,31,239, + 63,255,127,255,124,63,248,31,248,31,240,15,240,15,240,15, + 240,15,248,31,248,31,124,63,127,255,63,255,31,239,15,207, + 0,15,248,31,248,31,126,126,127,254,63,252,15,240,15,25, + 50,20,2,0,240,0,240,0,240,0,240,0,240,0,240,0, + 240,0,241,224,247,248,255,252,255,252,252,62,248,30,248,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,4,25,25,9,2,0,240,240,240,240, + 0,0,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,6,32,32,9,0,249,60,60,60,60,0, + 0,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,252,252,248,248,15,25,50,19,2, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 62,240,124,240,248,241,240,243,224,247,192,255,128,255,192,255, + 192,255,224,255,224,249,240,241,240,240,248,240,120,240,124,240, + 62,240,62,4,25,25,9,2,0,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,24,18,54,30,2,0,241,224,248,247,251,254,255,255, + 254,255,255,255,252,127,31,248,62,15,240,60,15,240,60,15, + 240,60,15,240,60,15,240,60,15,240,60,15,240,60,15,240, + 60,15,240,60,15,240,60,15,240,60,15,240,60,15,15,18, + 36,20,2,0,241,240,247,252,255,252,255,254,252,62,248,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,240,30,17,18,54,20,1,0,7,240, + 0,31,252,0,63,254,0,127,255,0,124,31,0,248,15,128, + 248,15,128,240,7,128,240,7,128,240,7,128,240,7,128,248, + 15,128,248,15,128,124,31,0,127,255,0,63,254,0,31,252, + 0,7,240,0,16,25,50,20,2,249,241,240,247,248,255,252, + 255,254,252,62,248,31,248,31,240,15,240,15,240,15,240,15, + 248,31,248,31,252,62,255,254,255,252,247,248,241,240,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,16,25,50,20, + 1,249,7,207,31,239,63,255,127,255,124,63,248,31,240,15, + 240,15,240,15,240,15,240,15,240,15,248,31,124,63,127,255, + 63,255,63,239,15,207,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,10,18,36,13,2,0,240,192,243,192,247,192, + 255,192,255,192,252,0,248,0,248,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,16,18, + 36,19,1,0,7,240,31,252,63,254,124,62,120,31,120,31, + 124,0,127,192,63,248,15,254,3,255,0,63,248,15,248,15, + 124,31,127,254,63,252,15,240,9,22,44,11,1,0,60,0, + 60,0,60,0,60,0,255,128,255,128,255,128,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,63,128,63,128,31,128,15,128,15,18,36,20,2,0, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,240,30,248,62,248,126,255,254,127,254, + 127,222,31,30,17,18,54,19,0,0,248,15,128,248,15,128, + 124,31,0,124,31,0,60,30,0,60,30,0,62,62,0,30, + 60,0,30,60,0,30,60,0,15,120,0,15,120,0,15,120, + 0,7,240,0,7,240,0,7,240,0,3,224,0,3,224,0, + 25,18,72,26,0,0,248,62,15,128,248,62,15,128,120,62, + 15,0,124,62,31,0,124,127,31,0,60,127,30,0,60,127, + 30,0,60,119,30,0,60,247,158,0,30,227,188,0,30,227, + 188,0,30,227,188,0,31,227,252,0,15,193,248,0,15,193, + 248,0,15,193,248,0,7,128,240,0,7,128,240,0,16,18, + 36,19,1,0,248,31,252,63,124,62,62,124,62,120,31,248, + 15,240,7,224,3,192,7,224,15,224,15,240,31,248,62,120, + 62,124,124,62,252,63,248,31,16,25,50,19,1,249,248,31, + 248,31,248,30,120,62,124,62,124,60,60,60,62,124,62,120, + 30,120,30,120,31,240,15,240,15,240,15,224,7,224,7,224, + 7,192,7,192,7,192,15,128,63,128,63,0,63,0,60,0, + 14,18,36,17,1,0,255,252,255,252,255,252,255,252,0,248, + 1,240,3,240,7,224,15,192,31,128,31,0,62,0,124,0, + 248,0,255,252,255,252,255,252,255,252,9,32,64,13,2,249, + 15,128,31,128,63,128,62,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,124,0,120,0, + 224,0,120,0,124,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,63,128,31,128,15,128, + 3,31,31,9,3,250,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,9,32,64,13,2,249,248,0,252,0,254, + 0,62,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,31,0,15,0,3,128,15,0,31, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,254,0,252,0,248,0,14,6,12,19,2, + 5,56,0,126,12,255,156,231,252,193,248,0,112,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0, + 0,9,0,1,5,24,24,11,2,250,248,248,248,248,248,0, + 0,112,112,112,112,112,112,248,248,248,248,248,248,248,248,248, + 248,248,15,24,48,18,1,253,0,32,0,32,0,96,7,240, + 31,248,63,252,127,252,124,190,248,158,249,158,241,128,241,128, + 243,0,243,0,243,30,250,30,126,62,127,252,63,248,31,240, + 15,192,12,0,8,0,8,0,17,24,72,18,0,0,3,240, + 0,31,252,0,63,254,0,63,255,0,126,31,0,124,15,128, + 124,15,128,124,7,128,124,0,0,126,0,0,62,0,0,255, + 240,0,255,240,0,31,0,0,15,0,0,15,0,0,15,0, + 0,31,0,0,30,0,0,61,227,0,127,255,128,255,255,128, + 255,255,0,96,126,0,15,15,30,18,1,4,224,14,247,222, + 255,254,127,252,60,120,120,60,112,28,112,28,112,28,120,60, + 60,120,127,252,255,254,247,222,224,14,18,24,72,18,0,0, + 248,7,192,248,7,192,124,15,128,60,15,0,30,30,0,30, + 30,0,15,60,0,15,60,0,7,248,0,7,248,0,3,240, + 0,1,224,0,63,255,0,63,255,0,1,224,0,1,224,0, + 63,255,0,63,255,0,1,224,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,3,31,31,9,3,250,224,224, + 224,224,224,224,224,224,224,224,224,224,224,0,0,0,0,0, + 0,224,224,224,224,224,224,224,224,224,224,224,224,16,32,64, + 18,1,249,15,240,31,248,63,248,126,124,124,60,124,60,126, + 0,127,0,63,192,31,224,63,248,127,252,113,254,240,255,240, + 63,248,31,252,15,127,15,127,159,63,254,31,248,7,252,1, + 254,0,126,0,62,120,30,120,30,124,62,63,252,63,252,31, + 248,7,224,10,4,8,11,0,21,243,192,243,192,243,192,243, + 192,26,25,100,24,0,0,0,127,128,0,3,255,224,0,7, + 128,248,0,31,0,60,0,28,0,14,0,56,0,7,0,112, + 63,3,0,112,127,131,128,224,243,193,128,225,192,225,192,193, + 192,224,192,195,128,0,192,195,128,0,192,195,128,0,192,195, + 128,0,192,193,192,224,192,225,192,225,192,224,243,195,128,96, + 127,131,128,112,63,7,0,56,0,14,0,30,0,60,0,15, + 128,248,0,7,255,224,0,1,255,128,0,9,16,32,12,1, + 9,62,0,127,0,227,128,195,128,31,128,127,128,243,128,227, + 128,227,128,255,128,123,128,0,0,0,0,255,128,255,128,255, + 128,12,13,26,18,3,2,8,16,24,48,56,112,120,240,241, + 224,225,192,225,192,241,224,249,240,120,240,56,112,24,48,8, + 16,16,10,20,19,1,4,255,255,255,255,255,255,255,255,0, + 15,0,15,0,15,0,15,0,15,0,15,9,5,10,11,1, + 7,255,128,255,128,255,128,255,128,255,128,26,25,100,24,0, + 0,0,255,128,0,3,255,224,0,7,128,248,0,30,0,60, + 0,28,0,14,0,56,255,135,0,112,255,195,0,112,225,227, + 128,224,224,225,128,224,224,225,128,192,224,225,192,192,225,193, + 192,192,255,129,192,192,255,1,192,192,227,129,192,192,227,193, + 192,224,225,193,128,224,224,227,128,112,224,243,128,112,224,119, + 0,56,0,14,0,30,0,28,0,15,128,120,0,7,255,224, + 0,1,255,128,0,10,3,6,11,0,21,255,192,255,192,255, + 192,9,10,20,13,2,14,62,0,127,0,99,0,193,128,193, + 128,193,128,193,128,99,0,127,0,62,0,16,22,44,19,1, + 0,3,192,3,192,3,192,3,192,3,192,3,192,255,255,255, + 255,255,255,255,255,3,192,3,192,3,192,3,192,3,192,3, + 192,0,0,0,0,255,255,255,255,255,255,255,255,10,15,30, + 11,0,9,63,0,127,128,243,192,225,192,225,192,1,192,3, + 192,7,128,15,0,62,0,120,0,112,0,255,192,255,192,255, + 192,10,15,30,11,0,9,30,0,127,128,243,192,225,192,225, + 192,3,192,15,128,15,128,3,192,1,192,225,192,225,192,243, + 192,127,128,62,0,6,5,5,11,4,20,60,120,112,224,224, + 15,25,50,20,2,249,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,248,62, + 248,126,255,254,255,254,255,222,247,158,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,17,31,93,18,0,250,15,255, + 128,31,255,128,63,140,0,127,140,0,127,140,0,255,140,0, + 255,140,0,255,140,0,255,140,0,255,140,0,127,140,0,127, + 140,0,63,140,0,63,140,0,15,140,0,1,140,0,1,140, + 0,1,140,0,1,140,0,1,140,0,1,140,0,1,140,0, + 1,140,0,1,140,0,1,140,0,1,140,0,1,140,0,1, + 140,0,1,140,0,1,140,0,1,140,0,4,5,5,9,2, + 11,96,240,240,240,96,7,8,8,11,2,249,48,48,48,124, + 30,14,252,248,6,15,15,11,2,9,28,60,252,252,28,28, + 28,28,28,28,28,28,28,28,28,10,16,32,12,1,9,63, + 0,127,128,115,128,225,192,225,192,225,192,225,192,225,192,115, + 128,127,128,63,0,0,0,0,0,255,192,255,192,255,192,12, + 12,24,18,3,3,129,0,193,128,225,192,241,224,120,240,56, + 112,56,112,120,240,241,224,225,192,193,128,129,0,26,24,96, + 28,0,0,0,0,56,0,6,0,112,0,30,0,112,0,254, + 0,224,0,254,1,192,0,14,1,192,0,14,3,128,0,14, + 3,128,0,14,7,0,0,14,7,0,0,14,14,7,0,14, + 28,15,0,14,28,31,0,14,56,31,0,0,56,55,0,0, + 112,103,0,0,112,231,0,0,224,199,0,1,193,135,0,1, + 193,255,192,3,129,255,192,3,128,7,0,7,0,7,0,7, + 0,7,0,25,24,96,28,1,0,0,0,224,0,12,1,192, + 0,28,1,192,0,252,3,128,0,252,3,128,0,28,7,0, + 0,28,14,0,0,28,14,0,0,28,28,0,0,28,28,0, + 0,28,56,126,0,28,48,255,0,28,113,231,128,28,225,195, + 128,0,225,195,128,1,192,7,128,1,192,15,0,3,128,30, + 0,7,0,60,0,7,0,120,0,14,0,240,0,14,1,255, + 128,28,1,255,128,28,1,255,128,25,24,96,27,1,0,63, + 0,28,0,127,128,56,0,243,192,56,0,225,192,112,0,225, + 192,224,0,3,192,224,0,15,129,192,0,15,129,192,0,15, + 195,128,0,1,199,0,0,225,199,14,0,225,206,30,0,243, + 206,30,0,127,156,62,0,63,28,126,0,0,56,238,0,0, + 112,206,0,0,113,142,0,0,227,142,0,0,227,255,128,1, + 195,255,128,1,192,14,0,3,128,14,0,3,128,14,0,16, + 24,48,20,1,250,3,224,3,224,3,224,3,224,0,0,0, + 0,3,192,3,192,3,192,7,192,31,128,63,128,127,0,126, + 0,252,0,248,15,248,15,248,15,252,31,126,127,127,254,63, + 254,63,252,15,240,22,31,93,23,0,0,3,192,0,1,224, + 0,0,240,0,0,120,0,0,60,0,0,0,0,0,252,0, + 0,252,0,1,254,0,1,254,0,1,254,0,3,255,0,3, + 255,0,3,255,0,7,207,128,7,207,128,7,207,128,15,135, + 128,15,135,192,15,135,192,31,3,192,31,3,224,31,255,224, + 31,255,224,63,255,240,63,255,240,62,1,240,124,0,248,124, + 0,248,252,0,252,248,0,124,22,31,93,23,0,0,0,15, + 0,0,30,0,0,60,0,0,120,0,0,240,0,0,0,0, + 0,252,0,0,252,0,1,254,0,1,254,0,1,254,0,3, + 255,0,3,255,0,3,255,0,7,207,128,7,207,128,7,207, + 128,15,135,128,15,135,192,15,135,192,31,3,192,31,3,224, + 31,255,224,31,255,224,63,255,240,63,255,240,62,1,240,124, + 0,248,124,0,248,252,0,252,248,0,124,22,31,93,23,0, + 0,0,48,0,0,120,0,0,252,0,1,206,0,3,135,0, + 0,0,0,0,252,0,0,252,0,1,254,0,1,254,0,1, + 254,0,3,255,0,3,255,0,3,255,0,7,207,128,7,207, + 128,7,207,128,15,135,128,15,135,192,15,135,192,31,3,192, + 31,3,224,31,255,224,31,255,224,63,255,240,63,255,240,62, + 1,240,124,0,248,124,0,248,252,0,252,248,0,124,22,30, + 90,23,0,0,0,241,128,1,255,128,3,255,0,3,30,0, + 0,0,0,0,252,0,0,252,0,1,254,0,1,254,0,1, + 254,0,3,255,0,3,255,0,3,255,0,7,207,128,7,207, + 128,7,207,128,15,135,128,15,135,192,15,135,192,31,3,192, + 31,3,224,31,255,224,31,255,224,63,255,240,63,255,240,62, + 1,240,124,0,248,124,0,248,252,0,252,248,0,124,22,31, + 93,23,0,0,3,207,0,3,207,0,3,207,0,3,207,0, + 0,0,0,0,0,0,0,252,0,0,252,0,1,254,0,1, + 254,0,1,254,0,3,255,0,3,255,0,3,255,0,7,207, + 128,7,207,128,7,207,128,15,135,128,15,135,192,15,135,192, + 31,3,192,31,3,224,31,255,224,31,255,224,63,255,240,63, + 255,240,62,1,240,124,0,248,124,0,248,252,0,252,248,0, + 124,22,31,93,23,0,0,0,120,0,0,204,0,0,132,0, + 0,132,0,0,204,0,0,120,0,0,0,0,0,252,0,1, + 254,0,1,254,0,1,254,0,3,255,0,3,255,0,3,255, + 0,7,207,128,7,207,128,7,207,128,15,135,128,15,135,192, + 15,135,192,31,3,192,31,3,224,31,255,224,31,255,224,63, + 255,240,63,255,240,62,1,240,124,0,248,124,0,248,252,0, + 252,248,0,124,31,25,100,32,0,0,0,255,255,252,0,255, + 255,252,0,255,255,252,1,255,255,252,1,243,192,0,1,227, + 192,0,3,227,192,0,3,227,192,0,3,195,192,0,7,195, + 192,0,7,195,192,0,7,195,255,248,15,131,255,248,15,131, + 255,248,15,131,255,248,31,3,192,0,31,255,192,0,31,255, + 192,0,63,255,192,0,63,255,192,0,62,3,192,0,124,3, + 255,254,124,3,255,254,248,3,255,254,248,3,255,254,21,32, + 96,23,1,249,1,254,0,7,255,128,15,255,192,31,255,224, + 63,135,240,62,1,240,124,1,240,124,0,248,124,0,248,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,124,0,248,124,0,248,126,1,248,62,1,240, + 63,135,240,31,255,224,15,255,192,7,255,128,1,252,0,0, + 96,0,0,96,0,0,248,0,0,28,0,0,28,0,1,248, + 0,1,240,0,18,31,93,22,2,0,30,0,0,15,0,0, + 7,128,0,3,192,0,1,224,0,0,0,0,255,255,128,255, + 255,128,255,255,128,255,255,128,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,255,255,0,255,255,0, + 255,255,0,255,255,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,255,255,192,255,255, + 192,255,255,192,255,255,192,18,31,93,22,2,0,0,120,0, + 0,240,0,1,224,0,3,192,0,7,128,0,0,0,0,255, + 255,128,255,255,128,255,255,128,255,255,128,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,255,255,0, + 255,255,0,255,255,0,255,255,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,255,255, + 192,255,255,192,255,255,192,255,255,192,18,31,93,22,2,0, + 0,192,0,1,224,0,3,240,0,7,56,0,14,28,0,0, + 0,0,255,255,128,255,255,128,255,255,128,255,255,128,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 255,255,0,255,255,0,255,255,0,255,255,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,255,255,192,255,255,192,255,255,192,255,255,192,18,31,93, + 22,2,0,30,60,0,30,60,0,30,60,0,30,60,0,0, + 0,0,0,0,0,255,255,128,255,255,128,255,255,128,255,255, + 128,248,0,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,255,255,0,255,255,0,255,255,0,255,255,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,255,255,192,255,255,192,255,255,192,255,255,192, + 8,31,31,9,0,0,240,120,60,30,15,0,62,62,62,62, + 62,62,62,62,62,62,62,62,62,62,62,62,62,62,62,62, + 62,62,62,62,62,8,31,31,9,2,0,15,30,60,120,240, + 0,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,10,31,62,9,0,0, + 12,0,30,0,63,0,115,128,225,192,0,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,10,31, + 62,9,0,0,243,192,243,192,243,192,243,192,0,0,0,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,23,25,75,23,255,0,31,255,128,31,255,224,31,255, + 240,31,255,248,31,7,248,31,0,252,31,0,252,31,0,124, + 31,0,126,31,0,62,31,0,62,255,240,62,255,240,62,255, + 240,62,31,0,62,31,0,62,31,0,124,31,0,124,31,0, + 124,31,0,248,31,3,248,31,255,240,31,255,240,31,255,192, + 31,255,128,19,30,90,24,2,0,3,198,0,7,254,0,15, + 252,0,12,120,0,0,0,0,248,3,224,252,3,224,252,3, + 224,254,3,224,254,3,224,255,3,224,255,3,224,255,131,224, + 255,195,224,251,195,224,251,227,224,249,227,224,249,243,224,248, + 243,224,248,251,224,248,123,224,248,63,224,248,63,224,248,31, + 224,248,31,224,248,15,224,248,15,224,248,7,224,248,7,224, + 248,3,224,23,31,93,25,1,0,1,224,0,0,240,0,0, + 120,0,0,60,0,0,30,0,0,0,0,1,255,0,7,255, + 192,15,255,224,31,255,240,63,199,248,63,1,248,126,0,252, + 124,0,124,124,0,124,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,124,0,124,124,0, + 124,126,0,252,63,1,248,63,199,248,31,255,240,15,255,224, + 7,255,192,1,255,0,23,31,93,25,1,0,0,7,128,0, + 15,0,0,30,0,0,60,0,0,120,0,0,0,0,1,255, + 0,7,255,192,15,255,224,31,255,240,63,199,248,63,1,248, + 126,0,252,124,0,124,124,0,124,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,124,0, + 124,124,0,124,126,0,252,63,1,248,63,199,248,31,255,240, + 15,255,224,7,255,192,1,255,0,23,31,93,25,1,0,0, + 24,0,0,60,0,0,126,0,0,231,0,1,195,128,0,0, + 0,1,255,0,7,255,192,15,255,224,31,255,240,63,199,248, + 63,1,248,126,0,252,124,0,124,124,0,124,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,248,0, + 62,124,0,124,124,0,124,126,0,252,63,1,248,63,199,248, + 31,255,240,15,255,224,7,255,192,1,255,0,23,30,90,25, + 1,0,0,120,192,0,255,192,1,255,128,1,143,0,0,0, + 0,1,255,0,7,255,192,15,255,224,31,255,240,63,199,248, + 63,1,248,126,0,252,124,0,124,124,0,124,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,248,0, + 62,124,0,124,124,0,124,126,0,252,63,1,248,63,199,248, + 31,255,240,15,255,224,7,255,192,1,255,0,23,31,93,25, + 1,0,1,231,128,1,231,128,1,231,128,1,231,128,0,0, + 0,0,0,0,1,255,0,7,255,192,15,255,224,31,255,240, + 63,199,248,63,1,248,126,0,252,124,0,124,124,0,124,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,248,0, + 62,248,0,62,124,0,124,124,0,124,126,0,252,63,1,248, + 63,199,248,31,255,240,15,255,224,7,255,192,1,255,0,15, + 16,32,19,2,0,32,8,112,28,248,62,252,126,126,252,63, + 248,31,240,15,224,15,224,31,240,63,248,126,252,252,126,248, + 62,112,28,32,8,24,25,75,25,1,0,1,255,7,7,255, + 206,15,255,252,31,255,248,63,199,248,63,0,248,126,1,252, + 124,3,252,124,7,188,248,7,62,248,14,62,248,28,62,248, + 56,62,248,112,62,248,224,62,248,224,62,125,192,124,127,128, + 124,127,0,252,63,1,248,63,199,248,63,255,240,63,255,224, + 119,255,192,225,255,0,19,31,93,24,2,0,7,128,0,3, + 192,0,1,224,0,0,240,0,0,120,0,0,0,0,248,3, + 224,248,3,224,248,3,224,248,3,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,252,7,224,127,31,192,127,255,192, + 63,255,128,31,255,0,7,252,0,19,31,93,24,2,0,0, + 30,0,0,60,0,0,120,0,0,240,0,1,224,0,0,0, + 0,248,3,224,248,3,224,248,3,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,248,3,224,252,7,224,127,31,192, + 127,255,192,63,255,128,31,255,0,7,252,0,19,31,93,24, + 2,0,0,96,0,0,240,0,1,248,0,3,156,0,7,14, + 0,0,0,0,248,3,224,248,3,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,248,3,224,248,3,224,252,7,224, + 127,31,192,127,255,192,63,255,128,31,255,0,7,252,0,19, + 31,93,24,2,0,15,30,0,15,30,0,15,30,0,15,30, + 0,0,0,0,0,0,0,248,3,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,248,3,224,248,3,224,248,3,224, + 252,7,224,127,31,192,127,255,192,63,255,128,31,255,0,7, + 252,0,20,31,93,22,1,0,0,30,0,0,60,0,0,120, + 0,0,240,0,1,224,0,0,0,0,252,3,240,252,3,240, + 126,7,224,62,7,192,63,15,192,63,15,128,31,15,128,31, + 159,0,15,159,0,15,254,0,7,254,0,7,252,0,3,252, + 0,3,248,0,3,248,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,18,25,75,22,2,0,248,0,0,248,0, + 0,248,0,0,255,248,0,255,254,0,255,255,0,255,255,128, + 248,31,128,248,15,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,15,192,248,31,128,255,255,128,255,255,0,255,254, + 0,255,252,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,17,25,75,20,2,0,15,192,0,63, + 240,0,127,252,0,255,252,0,248,126,0,248,62,0,240,62, + 0,240,62,0,240,124,0,240,252,0,241,248,0,241,252,0, + 241,254,0,240,127,0,240,31,0,240,31,128,240,15,128,240, + 15,128,240,15,128,240,31,128,240,63,0,241,255,0,241,254, + 0,241,252,0,241,240,0,15,25,50,18,1,0,15,0,7, + 128,3,128,1,192,0,224,0,0,0,0,15,240,63,252,127, + 252,124,62,248,30,248,30,1,254,15,254,63,254,127,30,248, + 30,240,30,240,62,248,126,255,254,255,254,127,222,63,30,15, + 25,50,18,1,0,0,120,0,240,0,224,1,192,3,128,0, + 0,0,0,15,240,63,252,127,252,124,62,248,30,248,30,1, + 254,15,254,63,254,127,30,248,30,240,30,240,62,248,126,255, + 254,255,254,127,222,63,30,15,25,50,18,1,0,1,128,3, + 192,7,224,14,112,28,56,0,0,0,0,15,240,63,252,127, + 252,124,62,248,30,248,30,1,254,15,254,63,254,127,30,248, + 30,240,30,240,62,248,126,255,254,255,254,127,222,63,30,15, + 24,48,18,1,0,7,140,15,252,31,248,24,240,0,0,0, + 0,15,240,63,252,127,252,124,62,248,30,248,30,1,254,15, + 254,63,254,127,30,248,30,240,30,240,62,248,126,255,254,255, + 254,127,222,63,30,15,24,48,18,1,0,30,120,30,120,30, + 120,30,120,0,0,0,0,15,240,63,252,127,252,124,62,248, + 30,248,30,1,254,15,254,63,254,127,30,248,30,240,30,240, + 62,248,126,255,254,255,254,127,222,63,30,15,25,50,18,1, + 0,3,192,6,96,4,32,4,32,6,96,3,192,0,0,15, + 240,63,252,127,252,124,62,248,30,248,30,1,254,15,254,63, + 254,127,30,248,30,248,30,240,62,248,126,255,254,255,254,127, + 222,63,30,26,19,76,29,1,0,7,224,248,0,31,251,254, + 0,63,255,255,0,63,255,255,0,124,63,15,128,120,30,7, + 128,120,30,7,192,0,62,7,192,7,255,255,192,63,255,255, + 192,127,255,255,192,124,30,0,0,248,30,0,0,248,30,7, + 192,252,63,15,192,255,255,255,128,127,247,255,0,63,227,254, + 0,15,129,248,0,15,25,50,18,1,249,7,224,31,248,63, + 252,63,252,124,62,120,30,248,30,240,0,240,0,240,0,240, + 0,248,30,248,30,124,62,127,252,63,248,31,248,7,224,3, + 0,3,0,7,192,0,224,0,224,15,192,15,128,16,25,50, + 18,1,0,15,0,7,128,3,128,1,192,0,224,0,0,0, + 0,7,224,31,248,63,252,127,254,124,62,248,30,240,31,255, + 255,255,255,255,255,240,0,240,0,248,30,124,62,127,254,63, + 252,31,240,7,192,16,25,50,18,1,0,0,120,0,240,0, + 224,1,192,3,128,0,0,0,0,7,224,31,248,63,252,127, + 254,124,62,248,30,240,31,255,255,255,255,255,255,240,0,240, + 0,248,30,124,62,127,254,63,252,31,240,7,192,16,25,50, + 18,1,0,1,128,3,192,7,224,14,112,28,56,0,0,0, + 0,7,224,31,248,63,252,127,254,124,62,248,30,240,31,255, + 255,255,255,255,255,240,0,240,0,248,30,124,62,127,254,63, + 252,31,240,7,192,16,24,48,18,1,0,30,120,30,120,30, + 120,30,120,0,0,0,0,7,224,31,248,63,252,127,254,124, + 62,248,30,240,31,255,255,255,255,255,255,240,0,240,0,248, + 30,124,62,127,254,63,252,31,240,7,192,7,25,25,9,1, + 0,240,120,56,28,14,0,0,30,30,30,30,30,30,30,30, + 30,30,30,30,30,30,30,30,30,30,6,25,25,9,2,0, + 60,56,112,112,224,0,0,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,10,25,50,9,255,0,12, + 0,30,0,63,0,115,128,225,192,0,0,0,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,10,24,48,9,255,0,243,192,243,192,243,192,243,192,0, + 0,0,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,17,26,78,20,1,0,48,0,0, + 120,32,0,124,240,0,63,224,0,31,192,0,63,224,0,115, + 240,0,33,248,0,7,252,0,31,254,0,63,254,0,127,255, + 0,124,31,0,248,15,128,248,15,128,240,7,128,240,7,128, + 240,7,128,248,15,128,248,15,128,252,31,128,126,63,0,127, + 255,0,63,254,0,31,252,0,7,240,0,15,24,48,20,2, + 0,15,24,31,248,63,240,49,224,0,0,0,0,243,240,247, + 248,255,252,255,254,252,62,248,62,240,30,240,30,240,30,240, + 30,240,30,240,30,240,30,240,30,240,30,240,30,240,30,240, + 30,17,25,75,20,1,0,7,128,0,3,192,0,1,192,0, + 1,224,0,0,240,0,0,0,0,0,0,0,7,240,0,31, + 252,0,63,254,0,127,255,0,124,31,0,248,15,128,248,15, + 128,240,7,128,240,7,128,240,7,128,240,7,128,248,15,128, + 248,15,128,124,31,0,127,255,0,63,254,0,31,252,0,7, + 240,0,17,25,75,20,1,0,0,120,0,0,240,0,0,224, + 0,1,192,0,3,192,0,0,0,0,0,0,0,7,240,0, + 31,252,0,63,254,0,127,255,0,124,31,0,248,15,128,248, + 15,128,240,7,128,240,7,128,240,7,128,240,7,128,248,15, + 128,248,15,128,124,31,0,127,255,0,63,254,0,31,252,0, + 7,240,0,17,25,75,20,1,0,0,192,0,1,224,0,3, + 240,0,7,56,0,14,28,0,0,0,0,0,0,0,7,240, + 0,31,252,0,63,254,0,127,255,0,124,31,0,248,15,128, + 248,15,128,240,7,128,240,7,128,240,7,128,240,7,128,248, + 15,128,248,15,128,124,31,0,127,255,0,63,254,0,31,252, + 0,7,240,0,17,24,72,20,1,0,7,140,0,15,252,0, + 31,248,0,24,240,0,0,0,0,0,0,0,7,240,0,31, + 252,0,63,254,0,127,255,0,124,31,0,248,15,128,248,15, + 128,240,7,128,240,7,128,240,7,128,240,7,128,248,15,128, + 248,15,128,124,31,0,127,255,0,63,254,0,31,252,0,7, + 240,0,17,24,72,20,1,0,30,60,0,30,60,0,30,60, + 0,30,60,0,0,0,0,0,0,0,7,240,0,31,252,0, + 63,254,0,127,255,0,124,31,0,248,15,128,248,15,128,240, + 7,128,240,7,128,240,7,128,240,7,128,248,15,128,248,15, + 128,124,31,0,127,255,0,63,254,0,31,252,0,7,240,0, + 16,16,32,19,1,0,3,192,3,192,3,192,3,192,0,0, + 0,0,255,255,255,255,255,255,255,255,0,0,0,0,3,192, + 3,192,3,192,3,192,21,18,54,20,255,0,1,252,56,7, + 255,112,15,255,224,31,255,192,31,143,192,62,7,224,62,15, + 224,60,29,224,60,57,224,60,113,224,62,227,224,63,131,224, + 63,7,224,31,143,192,31,255,192,63,255,128,119,255,0,225, + 252,0,15,25,50,20,2,0,30,0,15,0,7,0,3,128, + 1,192,0,0,0,0,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,248,62, + 248,126,255,254,127,254,127,222,31,30,15,25,50,20,2,0, + 0,240,1,224,1,192,3,128,7,0,0,0,0,0,240,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,248,62,248,126,255,254,127,254,127,222, + 31,30,15,25,50,20,2,0,3,0,7,128,15,192,28,224, + 56,112,0,0,0,0,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,248,62, + 248,126,255,254,127,254,127,222,31,30,15,25,50,20,2,0, + 60,120,60,120,60,120,60,120,0,0,0,0,0,0,240,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,248,62,248,126,255,254,127,254,127,222, + 31,30,16,32,64,19,1,249,0,120,0,240,1,224,1,192, + 3,128,0,0,0,0,248,31,248,31,248,31,120,30,124,62, + 124,60,60,60,60,60,62,120,62,120,30,120,31,240,31,240, + 15,240,15,224,7,224,7,224,7,192,7,192,7,192,15,128, + 63,128,63,0,63,0,60,0,16,32,64,20,2,249,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,243,240,247,252, + 255,254,255,254,252,63,248,31,248,31,240,15,240,15,240,15, + 240,15,248,31,248,31,252,62,255,254,255,252,247,248,241,240, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,16,31, + 62,19,1,249,30,120,30,120,30,120,30,120,0,0,0,0, + 248,31,248,31,248,31,120,62,124,62,124,60,124,60,62,124, + 62,120,62,120,30,120,31,240,31,240,15,240,15,224,7,224, + 7,224,7,192,7,192,7,192,15,128,63,128,63,0,63,0, + 60,0}; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--34-240-100-100-P-182-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 23 + Calculated Max Values w=17 h=25 x= 2 y=13 dx=19 dy= 0 ascent=25 len=72 + Font Bounding box w=40 h=49 x=-6 y=-12 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =23 descent= 0 + X Font ascent =23 descent= 0 + Max Font ascent =25 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB24n[720] U8G_SECTION(".progmem.u8g_font_helvB24n") = { + 0,40,49,250,244,23,0,0,0,0,42,57,0,25,250,23, + 0,10,11,22,13,1,13,12,0,12,0,76,128,237,192,255, + 192,127,128,30,0,63,0,127,128,115,128,33,0,16,16,32, + 19,1,0,3,192,3,192,3,192,3,192,3,192,3,192,255, + 255,255,255,255,255,255,255,3,192,3,192,3,192,3,192,3, + 192,3,192,5,11,11,9,2,250,248,248,248,248,248,24,24, + 56,112,224,128,9,5,10,11,1,7,255,128,255,128,255,128, + 255,128,255,128,5,5,5,9,2,0,248,248,248,248,248,8, + 25,25,9,0,0,3,3,3,3,6,6,6,14,12,12,12, + 28,24,24,24,48,48,48,112,96,96,96,192,192,192,15,24, + 48,18,1,0,15,224,31,240,63,248,127,252,124,124,248,62, + 248,62,248,62,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,248,62,248,62,248,62,124,124,127,252,63,248, + 31,240,15,224,10,23,46,18,2,0,1,192,3,192,7,192, + 31,192,255,192,255,192,255,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,16,24,48,18,1,0,15,224, + 63,248,127,252,127,254,252,126,248,63,248,31,240,31,240,31, + 0,63,0,62,0,126,0,252,1,248,7,240,15,224,31,128, + 63,0,126,0,252,0,255,255,255,255,255,255,255,255,16,24, + 48,18,1,0,15,224,63,248,127,252,127,252,248,62,240,62, + 240,30,240,30,0,62,0,124,3,248,3,240,3,252,0,126, + 0,63,0,31,240,31,240,31,240,63,248,62,127,254,127,252, + 63,248,15,224,16,24,48,18,1,0,0,248,0,248,1,248, + 3,248,3,248,7,248,15,120,14,120,30,120,28,120,60,120, + 120,120,112,120,240,120,224,120,255,255,255,255,255,255,255,255, + 0,120,0,120,0,120,0,120,0,120,15,24,48,18,1,0, + 63,252,63,252,63,252,63,252,56,0,120,0,120,0,120,0, + 123,224,127,248,127,252,127,252,120,126,0,62,0,62,0,30, + 0,30,240,62,240,62,248,124,127,252,127,248,63,240,15,192, + 15,24,48,18,1,0,7,224,31,248,63,252,63,254,124,62, + 120,30,240,0,240,0,243,224,247,248,255,252,255,252,252,126, + 248,62,240,30,240,30,240,30,240,30,248,62,124,124,127,252, + 63,248,31,240,7,192,16,24,48,18,1,0,255,255,255,255, + 255,255,255,255,0,30,0,62,0,60,0,120,0,248,0,240, + 1,240,1,224,3,224,3,192,7,192,7,192,7,128,15,128, + 15,128,15,128,31,0,31,0,31,0,31,0,17,24,72,18, + 0,0,7,240,0,31,252,0,63,254,0,62,62,0,124,31, + 0,120,15,0,120,15,0,120,15,0,124,31,0,62,62,0, + 31,252,0,31,252,0,63,254,0,124,31,0,248,15,128,240, + 7,128,240,7,128,240,7,128,248,15,128,126,63,0,127,254, + 0,63,254,0,31,252,0,7,240,0,15,24,48,18,1,0, + 7,192,31,240,63,248,127,252,124,124,248,62,240,30,240,30, + 240,30,240,30,248,62,252,126,127,254,127,254,63,222,7,158, + 0,30,0,30,240,60,248,124,127,248,127,248,31,240,7,192 + }; +/* + Fontname: -Adobe-Helvetica-Bold-R-Normal--34-240-100-100-P-182-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 23 + Calculated Max Values w=29 h=32 x= 3 y=20 dx=33 dy= 0 ascent=25 len=120 + Font Bounding box w=40 h=49 x=-6 y=-12 + Calculated Min Values x= 0 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =25 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvB24r[5214] U8G_SECTION(".progmem.u8g_font_helvB24r") = { + 0,40,49,250,244,25,5,252,14,144,32,127,249,25,249,25, + 249,0,0,0,9,0,1,5,25,25,11,3,0,248,248,248, + 248,248,248,248,248,248,248,248,112,112,112,112,112,112,112,0, + 0,248,248,248,248,248,11,9,18,16,2,16,241,224,241,224, + 241,224,241,224,241,224,241,224,241,224,96,192,96,192,18,25, + 75,19,0,255,3,199,0,3,199,0,3,143,0,3,143,0, + 7,143,0,7,142,0,7,142,0,127,255,192,127,255,192,127, + 255,192,127,255,192,15,28,0,14,28,0,14,28,0,14,60, + 0,255,255,128,255,255,128,255,255,128,255,255,128,28,120,0, + 60,120,0,60,112,0,60,112,0,56,240,0,56,240,0,16, + 28,56,18,1,253,1,128,1,128,15,240,63,252,127,254,253, + 190,249,159,241,159,241,143,249,128,255,128,127,192,63,240,15, + 252,1,254,1,255,1,159,1,143,241,143,241,159,249,159,127, + 254,127,254,63,248,7,224,1,128,1,128,1,128,26,23,92, + 29,1,0,14,0,48,0,63,128,112,0,127,192,96,0,113, + 192,224,0,224,224,192,0,224,225,192,0,224,227,128,0,224, + 227,128,0,113,199,0,0,127,198,0,0,63,142,0,0,14, + 12,28,0,0,28,127,0,0,24,255,128,0,56,227,128,0, + 49,193,192,0,113,193,192,0,97,193,192,0,225,193,192,1, + 192,227,128,1,192,255,128,3,128,127,0,3,0,28,0,20, + 25,75,24,2,0,3,224,0,15,248,0,31,252,0,31,252, + 0,30,60,0,62,60,0,62,60,0,31,60,0,31,248,0, + 15,248,0,15,240,0,15,224,0,63,241,224,127,241,224,124, + 249,192,248,255,192,240,127,192,240,63,128,240,31,0,248,15, + 128,252,63,192,127,255,224,127,251,224,31,241,240,7,192,0, + 4,9,9,8,2,16,240,240,240,240,240,240,240,96,96,8, + 31,31,11,1,250,7,15,30,30,60,60,56,120,120,120,240, + 240,240,240,240,240,240,240,240,248,120,120,120,120,60,60,28, + 30,14,15,7,8,31,31,11,1,250,224,240,120,120,60,60, + 28,30,30,30,15,15,15,15,15,15,15,15,15,31,30,30, + 30,28,60,60,56,120,112,240,224,10,11,22,13,1,13,12, + 0,12,0,76,128,237,192,255,192,127,128,30,0,63,0,127, + 128,115,128,33,0,16,16,32,19,1,0,3,192,3,192,3, + 192,3,192,3,192,3,192,255,255,255,255,255,255,255,255,3, + 192,3,192,3,192,3,192,3,192,3,192,5,11,11,9,2, + 250,248,248,248,248,248,24,24,56,112,224,128,9,5,10,11, + 1,7,255,128,255,128,255,128,255,128,255,128,5,5,5,9, + 2,0,248,248,248,248,248,8,25,25,9,0,0,3,3,3, + 3,6,6,6,14,12,12,12,28,24,24,24,48,48,48,112, + 96,96,96,192,192,192,15,24,48,18,1,0,15,224,31,240, + 63,248,127,252,124,124,248,62,248,62,248,62,240,30,240,30, + 240,30,240,30,240,30,240,30,240,30,240,30,248,62,248,62, + 248,62,124,124,127,252,63,248,31,240,15,224,10,23,46,18, + 2,0,1,192,3,192,7,192,31,192,255,192,255,192,255,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 16,24,48,18,1,0,15,224,63,248,127,252,127,254,252,126, + 248,63,248,31,240,31,240,31,0,63,0,62,0,126,0,252, + 1,248,7,240,15,224,31,128,63,0,126,0,252,0,255,255, + 255,255,255,255,255,255,16,24,48,18,1,0,15,224,63,248, + 127,252,127,252,248,62,240,62,240,30,240,30,0,62,0,124, + 3,248,3,240,3,252,0,126,0,63,0,31,240,31,240,31, + 240,63,248,62,127,254,127,252,63,248,15,224,16,24,48,18, + 1,0,0,248,0,248,1,248,3,248,3,248,7,248,15,120, + 14,120,30,120,28,120,60,120,120,120,112,120,240,120,224,120, + 255,255,255,255,255,255,255,255,0,120,0,120,0,120,0,120, + 0,120,15,24,48,18,1,0,63,252,63,252,63,252,63,252, + 56,0,120,0,120,0,120,0,123,224,127,248,127,252,127,252, + 120,126,0,62,0,62,0,30,0,30,240,62,240,62,248,124, + 127,252,127,248,63,240,15,192,15,24,48,18,1,0,7,224, + 31,248,63,252,63,254,124,62,120,30,240,0,240,0,243,224, + 247,248,255,252,255,252,252,126,248,62,240,30,240,30,240,30, + 240,30,248,62,124,124,127,252,63,248,31,240,7,192,16,24, + 48,18,1,0,255,255,255,255,255,255,255,255,0,30,0,62, + 0,60,0,120,0,248,0,240,1,240,1,224,3,224,3,192, + 7,192,7,192,7,128,15,128,15,128,15,128,31,0,31,0, + 31,0,31,0,17,24,72,18,0,0,7,240,0,31,252,0, + 63,254,0,62,62,0,124,31,0,120,15,0,120,15,0,120, + 15,0,124,31,0,62,62,0,31,252,0,31,252,0,63,254, + 0,124,31,0,248,15,128,240,7,128,240,7,128,240,7,128, + 248,15,128,126,63,0,127,254,0,63,254,0,31,252,0,7, + 240,0,15,24,48,18,1,0,7,192,31,240,63,248,127,252, + 124,124,248,62,240,30,240,30,240,30,240,30,248,62,252,126, + 127,254,127,254,63,222,7,158,0,30,0,30,240,60,248,124, + 127,248,127,248,31,240,7,192,5,17,17,11,3,0,248,248, + 248,248,248,0,0,0,0,0,0,0,248,248,248,248,248,5, + 23,23,11,3,250,248,248,248,248,248,0,0,0,0,0,0, + 0,248,248,248,248,248,24,24,56,112,224,128,16,16,32,19, + 1,0,0,3,0,31,0,127,3,255,15,254,127,248,255,192, + 254,0,254,0,255,192,127,240,15,254,3,255,0,127,0,31, + 0,3,15,12,24,19,2,2,255,254,255,254,255,254,255,254, + 0,0,0,0,0,0,0,0,255,254,255,254,255,254,255,254, + 16,16,32,19,1,0,192,0,240,0,254,0,255,192,127,240, + 31,254,3,255,0,127,0,127,3,255,31,254,127,240,255,192, + 254,0,240,0,192,0,16,25,50,20,2,0,15,224,63,248, + 127,252,127,254,252,126,248,63,248,31,240,31,240,31,0,63, + 0,126,0,254,1,252,1,248,3,224,3,192,7,192,7,192, + 0,0,0,0,7,192,7,192,7,192,7,192,7,192,29,30, + 120,33,1,251,0,15,224,0,0,127,252,0,1,255,254,0, + 3,240,63,128,7,192,7,192,15,0,3,192,30,0,1,224, + 28,0,0,240,60,7,220,112,56,31,252,112,112,60,252,56, + 112,120,120,56,240,240,56,56,224,224,56,56,225,224,56,56, + 225,192,112,120,225,192,112,112,225,192,112,112,225,224,240,224, + 241,225,241,224,112,255,255,192,120,127,63,128,56,62,30,0, + 60,0,0,0,30,0,0,0,15,128,0,0,15,240,60,0, + 3,255,252,0,1,255,252,0,0,127,224,0,22,25,75,23, + 0,0,0,252,0,0,252,0,1,254,0,1,254,0,1,254, + 0,3,255,0,3,255,0,3,255,0,7,207,128,7,207,128, + 7,207,128,15,135,128,15,135,192,15,135,192,31,3,192,31, + 3,224,31,255,224,31,255,224,63,255,240,63,255,240,62,1, + 240,124,0,248,124,0,248,252,0,252,248,0,124,19,25,75, + 24,3,0,255,252,0,255,255,0,255,255,128,255,255,128,248, + 15,192,248,7,192,248,7,192,248,7,192,248,7,192,248,15, + 128,255,255,0,255,255,0,255,255,128,255,255,192,248,7,192, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 7,224,255,255,192,255,255,192,255,255,128,255,254,0,21,25, + 75,24,1,0,1,254,0,7,255,128,15,255,192,31,255,224, + 63,135,240,62,1,240,124,1,248,124,0,248,124,0,248,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,124,0,248,124,0,248,126,1,248,62,1,240, + 63,135,240,31,255,224,15,255,192,7,255,128,1,254,0,21, + 25,75,24,2,0,255,248,0,255,255,0,255,255,128,255,255, + 192,248,15,224,248,3,224,248,3,240,248,1,240,248,1,248, + 248,0,248,248,0,248,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,1,248,248,1,240,248,3,240,248,3, + 224,248,15,224,255,255,192,255,255,128,255,255,0,255,248,0, + 18,25,75,22,2,0,255,255,128,255,255,128,255,255,128,255, + 255,128,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,255,255,0,255,255,0,255,255,0,255,255,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,255,255,192,255,255,192,255,255,192,255,255, + 192,16,25,50,20,2,0,255,255,255,255,255,255,255,255,248, + 0,248,0,248,0,248,0,248,0,248,0,255,254,255,254,255, + 254,255,254,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,22,25,75,25,1,0,0, + 255,0,3,255,192,15,255,224,31,255,240,31,195,248,63,0, + 248,126,0,124,124,0,124,252,0,0,248,0,0,248,0,0, + 248,0,0,248,15,252,248,15,252,248,15,252,248,15,252,252, + 0,124,124,0,124,126,0,124,126,0,252,63,131,252,63,255, + 252,31,255,220,7,255,156,3,254,28,19,25,75,23,2,0, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,255,255, + 224,255,255,224,255,255,224,255,255,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,5,25,25,9,2, + 0,248,248,248,248,248,248,248,248,248,248,248,248,248,248,248, + 248,248,248,248,248,248,248,248,248,248,15,25,50,18,1,0, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,248,62, + 248,62,248,62,248,62,248,62,252,126,255,252,127,252,63,248, + 15,224,20,25,75,24,2,0,248,7,224,248,7,224,248,15, + 192,248,31,128,248,63,0,248,126,0,248,252,0,248,248,0, + 249,248,0,251,240,0,255,224,0,255,224,0,255,240,0,255, + 240,0,255,248,0,252,252,0,248,126,0,248,126,0,248,63, + 0,248,31,128,248,15,128,248,15,192,248,7,224,248,3,240, + 248,3,240,16,25,50,20,2,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,255,255,255,255,255,255,255,255,23,25,75,27,2, + 0,254,0,254,254,0,254,255,1,254,255,1,254,255,1,254, + 255,1,254,255,131,254,255,131,254,251,131,190,251,131,190,251, + 199,190,251,199,190,251,199,190,249,199,62,249,239,62,249,239, + 62,249,239,62,249,239,62,248,238,62,248,254,62,248,254,62, + 248,254,62,248,124,62,248,124,62,248,124,62,19,25,75,24, + 2,0,248,3,224,252,3,224,252,3,224,254,3,224,254,3, + 224,255,3,224,255,3,224,255,131,224,255,195,224,251,195,224, + 251,227,224,249,227,224,249,243,224,248,243,224,248,251,224,248, + 123,224,248,63,224,248,63,224,248,31,224,248,31,224,248,15, + 224,248,15,224,248,7,224,248,7,224,248,3,224,23,25,75, + 25,1,0,1,255,0,7,255,192,15,255,224,31,255,240,63, + 199,248,63,1,248,126,0,252,124,0,124,124,0,124,248,0, + 62,248,0,62,248,0,62,248,0,62,248,0,62,248,0,62, + 248,0,62,124,0,124,124,0,124,126,0,252,63,1,248,63, + 199,248,31,255,240,15,255,224,7,255,192,1,255,0,18,25, + 75,22,2,0,255,248,0,255,254,0,255,255,0,255,255,128, + 248,31,128,248,15,192,248,7,192,248,7,192,248,7,192,248, + 7,192,248,15,192,248,31,128,255,255,128,255,255,0,255,252, + 0,255,240,0,248,0,0,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,23, + 26,78,26,1,255,1,255,0,7,255,192,15,255,224,31,255, + 240,63,199,248,63,1,248,126,0,252,124,0,124,252,0,126, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,2,62,252,7,62,124,15,188,126,15,252,63,7, + 248,63,195,240,31,255,248,15,255,252,7,255,254,1,255,60, + 0,0,24,19,25,75,24,2,0,255,254,0,255,255,128,255, + 255,192,255,255,192,248,7,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,7,192,248,15,192,255,255,128,255,255,0, + 255,255,0,255,255,128,248,15,192,248,7,192,248,7,192,248, + 7,192,248,7,192,248,7,192,248,7,192,248,7,192,248,7, + 224,248,3,224,19,25,75,22,1,0,3,248,0,15,254,0, + 31,255,0,63,255,128,62,31,128,124,7,192,120,7,192,120, + 3,192,124,0,0,127,0,0,63,240,0,63,254,0,31,255, + 128,3,255,192,0,63,192,0,7,224,0,3,224,248,3,224, + 248,3,224,124,3,224,126,15,192,63,255,192,31,255,128,15, + 255,0,3,248,0,19,25,75,20,0,0,255,255,224,255,255, + 224,255,255,224,255,255,224,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,19,25,75,24,2,0,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,248,3,224,248,3,224,248,3,224, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,252,7,224,127,31,192,127,255,192,63,255, + 128,31,255,0,7,252,0,20,25,75,22,1,0,248,1,240, + 248,1,240,124,3,224,124,3,224,124,3,224,60,3,192,62, + 7,192,62,7,192,30,7,128,31,15,128,31,15,128,15,15, + 0,15,15,0,15,15,0,7,158,0,7,158,0,7,158,0, + 7,254,0,3,252,0,3,252,0,3,252,0,1,248,0,1, + 248,0,1,248,0,0,240,0,29,25,100,31,1,0,248,31, + 129,248,248,31,129,248,120,31,129,240,120,31,129,240,120,31, + 129,240,124,63,195,224,124,63,195,224,124,63,195,224,60,63, + 195,224,60,57,195,192,62,121,227,192,62,121,231,192,30,121, + 231,192,30,121,231,128,30,112,231,128,30,112,231,128,15,240, + 255,0,15,240,255,0,15,240,255,0,15,224,127,0,7,224, + 126,0,7,224,126,0,7,224,126,0,3,192,60,0,3,192, + 60,0,20,25,75,22,1,0,252,3,224,126,7,224,126,7, + 192,63,15,192,31,15,128,31,159,0,15,159,0,15,190,0, + 7,254,0,7,252,0,3,252,0,3,248,0,1,248,0,3, + 248,0,3,252,0,7,252,0,7,254,0,15,191,0,31,159, + 0,31,31,128,63,15,128,62,15,192,126,7,192,252,7,224, + 252,3,240,20,25,75,22,1,0,252,3,240,252,3,224,126, + 7,224,62,7,192,63,15,192,63,15,128,31,15,128,31,159, + 0,15,159,0,15,254,0,7,254,0,7,252,0,3,252,0, + 3,248,0,3,248,0,1,240,0,1,240,0,1,240,0,1, + 240,0,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,17,25,75,20,1,0,255,255,128,255,255,128, + 255,255,128,255,255,128,0,15,128,0,31,128,0,63,0,0, + 126,0,0,124,0,0,252,0,1,248,0,3,240,0,3,240, + 0,7,224,0,15,192,0,15,128,0,31,128,0,63,0,0, + 126,0,0,126,0,0,252,0,0,255,255,128,255,255,128,255, + 255,128,255,255,128,8,31,31,11,2,250,255,255,255,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,255,255,255,9,25,50,9,0,0, + 192,0,192,0,224,0,96,0,96,0,112,0,112,0,48,0, + 56,0,56,0,24,0,28,0,28,0,12,0,12,0,14,0, + 14,0,6,0,7,0,7,0,3,0,3,128,3,128,1,128, + 1,128,8,31,31,11,0,250,255,255,255,15,15,15,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,255,255,255,14,14,28,19,2,9,7,128,15, + 192,15,192,15,192,31,224,31,224,60,240,60,240,56,112,120, + 120,120,120,112,60,240,60,240,60,18,2,6,18,0,250,255, + 255,192,255,255,192,5,5,5,11,2,20,224,240,112,120,56, + 15,18,36,18,1,0,15,240,63,252,127,252,124,62,248,30, + 248,30,0,254,15,254,63,254,127,30,248,30,248,30,240,62, + 248,126,255,254,255,254,127,222,63,30,16,25,50,20,2,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,243,240, + 247,252,255,252,255,254,252,62,248,31,240,31,240,15,240,15, + 240,15,240,15,240,31,240,31,248,62,255,254,255,252,247,248, + 241,240,15,18,36,18,1,0,7,224,31,248,63,252,63,252, + 124,62,120,62,240,30,240,0,240,0,240,0,240,0,240,30, + 248,30,124,62,127,252,63,248,31,248,7,224,16,25,50,20, + 1,0,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 15,207,31,239,63,255,127,255,124,63,248,31,240,15,240,15, + 240,15,240,15,240,15,240,15,248,31,124,63,127,255,63,239, + 31,239,15,143,16,18,36,18,1,0,7,224,31,248,63,252, + 127,254,124,62,248,31,240,31,255,255,255,255,255,255,240,0, + 240,0,248,30,124,62,127,252,63,252,31,240,7,192,10,25, + 50,11,0,0,7,192,15,192,31,192,31,0,30,0,30,0, + 30,0,255,192,255,192,255,192,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,16,25,50,20,1,249,15,207,31,239, + 63,255,127,255,124,63,248,31,248,31,240,15,240,15,240,15, + 240,15,248,31,248,31,124,63,127,255,63,255,31,239,15,207, + 0,15,248,31,248,31,126,126,127,254,63,252,15,240,15,25, + 50,20,2,0,240,0,240,0,240,0,240,0,240,0,240,0, + 240,0,241,224,247,248,255,252,255,252,252,62,248,30,248,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,4,25,25,9,2,0,240,240,240,240, + 0,0,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,6,32,32,9,0,249,60,60,60,60,0, + 0,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,252,252,248,248,15,25,50,19,2, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 62,240,124,240,248,241,240,243,224,247,192,255,128,255,192,255, + 192,255,224,255,224,249,240,241,240,240,248,240,120,240,124,240, + 62,240,62,4,25,25,9,2,0,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,24,18,54,30,2,0,241,224,248,247,251,254,255,255, + 254,255,255,255,252,127,31,248,62,15,240,60,15,240,60,15, + 240,60,15,240,60,15,240,60,15,240,60,15,240,60,15,240, + 60,15,240,60,15,240,60,15,240,60,15,240,60,15,15,18, + 36,20,2,0,241,240,247,252,255,252,255,254,252,62,248,30, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,240,30,17,18,54,20,1,0,7,240, + 0,31,252,0,63,254,0,127,255,0,124,31,0,248,15,128, + 248,15,128,240,7,128,240,7,128,240,7,128,240,7,128,248, + 15,128,248,15,128,124,31,0,127,255,0,63,254,0,31,252, + 0,7,240,0,16,25,50,20,2,249,241,240,247,248,255,252, + 255,254,252,62,248,31,248,31,240,15,240,15,240,15,240,15, + 248,31,248,31,252,62,255,254,255,252,247,248,241,240,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,16,25,50,20, + 1,249,7,207,31,239,63,255,127,255,124,63,248,31,240,15, + 240,15,240,15,240,15,240,15,240,15,248,31,124,63,127,255, + 63,255,63,239,15,207,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,10,18,36,13,2,0,240,192,243,192,247,192, + 255,192,255,192,252,0,248,0,248,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,240,0,16,18, + 36,19,1,0,7,240,31,252,63,254,124,62,120,31,120,31, + 124,0,127,192,63,248,15,254,3,255,0,63,248,15,248,15, + 124,31,127,254,63,252,15,240,9,22,44,11,1,0,60,0, + 60,0,60,0,60,0,255,128,255,128,255,128,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,63,128,63,128,31,128,15,128,15,18,36,20,2,0, + 240,30,240,30,240,30,240,30,240,30,240,30,240,30,240,30, + 240,30,240,30,240,30,240,30,248,62,248,126,255,254,127,254, + 127,222,31,30,17,18,54,19,0,0,248,15,128,248,15,128, + 124,31,0,124,31,0,60,30,0,60,30,0,62,62,0,30, + 60,0,30,60,0,30,60,0,15,120,0,15,120,0,15,120, + 0,7,240,0,7,240,0,7,240,0,3,224,0,3,224,0, + 25,18,72,26,0,0,248,62,15,128,248,62,15,128,120,62, + 15,0,124,62,31,0,124,127,31,0,60,127,30,0,60,127, + 30,0,60,119,30,0,60,247,158,0,30,227,188,0,30,227, + 188,0,30,227,188,0,31,227,252,0,15,193,248,0,15,193, + 248,0,15,193,248,0,7,128,240,0,7,128,240,0,16,18, + 36,19,1,0,248,31,252,63,124,62,62,124,62,120,31,248, + 15,240,7,224,3,192,7,224,15,224,15,240,31,248,62,120, + 62,124,124,62,252,63,248,31,16,25,50,19,1,249,248,31, + 248,31,248,30,120,62,124,62,124,60,60,60,62,124,62,120, + 30,120,30,120,31,240,15,240,15,240,15,224,7,224,7,224, + 7,192,7,192,7,192,15,128,63,128,63,0,63,0,60,0, + 14,18,36,17,1,0,255,252,255,252,255,252,255,252,0,248, + 1,240,3,240,7,224,15,192,31,128,31,0,62,0,124,0, + 248,0,255,252,255,252,255,252,255,252,9,32,64,13,2,249, + 15,128,31,128,63,128,62,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,124,0,120,0, + 224,0,120,0,124,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,63,128,31,128,15,128, + 3,31,31,9,3,250,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,9,32,64,13,2,249,248,0,252,0,254, + 0,62,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,31,0,15,0,3,128,15,0,31, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,254,0,252,0,248,0,14,6,12,19,2, + 5,56,0,126,12,255,156,231,252,193,248,0,112,255}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--11-80-100-100-P-56-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=10 h=11 x= 1 y= 7 dx=11 dy= 0 ascent=11 len=18 + Font Bounding box w=13 h=18 x=-2 y=-4 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR08[2687] U8G_SECTION(".progmem.u8g_font_helvR08") = { + 0,13,18,254,252,8,1,178,3,111,32,255,254,11,254,8, + 254,0,0,0,3,0,1,1,8,8,3,1,0,128,128,128, + 128,128,128,0,128,3,2,2,4,1,6,160,160,6,7,7, + 6,0,0,40,40,124,40,248,80,80,5,10,10,6,0,255, + 32,112,168,160,112,40,40,168,112,32,8,8,8,9,0,0, + 100,148,104,8,16,22,41,38,6,8,8,8,1,0,96,144, + 144,96,148,136,152,100,1,2,2,2,0,6,128,128,3,10, + 10,4,0,254,32,64,64,128,128,128,128,64,64,32,3,10, + 10,4,1,254,128,64,64,32,32,32,32,64,64,128,3,3, + 3,4,0,5,160,64,160,5,5,5,6,0,1,32,32,248, + 32,32,2,3,3,3,0,254,64,64,128,3,1,1,4,0, + 3,224,1,1,1,3,1,0,128,3,8,8,3,0,0,32, + 32,64,64,64,64,128,128,5,8,8,6,0,0,112,136,136, + 136,136,136,136,112,2,8,8,6,1,0,64,192,64,64,64, + 64,64,64,5,8,8,6,0,0,112,136,8,8,48,64,128, + 248,5,8,8,6,0,0,112,136,8,48,8,8,136,112,5, + 8,8,6,0,0,16,48,80,80,144,248,16,16,5,8,8, + 6,0,0,120,64,64,112,8,8,136,112,5,8,8,6,0, + 0,112,136,128,240,136,136,136,112,5,8,8,6,0,0,248, + 8,16,32,32,64,64,64,5,8,8,6,0,0,112,136,136, + 112,136,136,136,112,5,8,8,6,0,0,112,136,136,136,120, + 8,136,112,1,6,6,3,1,0,128,0,0,0,0,128,2, + 8,8,3,0,254,64,0,0,0,0,64,64,128,3,5,5, + 6,1,1,32,64,128,64,32,4,3,3,5,0,2,240,0, + 240,3,5,5,6,1,1,128,64,32,64,128,4,8,8,6, + 1,0,96,144,16,32,64,64,0,64,10,9,18,11,0,255, + 31,0,32,128,77,64,146,64,162,64,164,128,155,0,64,0, + 62,0,7,8,8,7,0,0,16,16,40,40,68,124,130,130, + 5,8,8,7,1,0,240,136,136,240,136,136,136,240,6,8, + 8,8,1,0,120,132,128,128,128,128,132,120,6,8,8,8, + 1,0,240,136,132,132,132,132,136,240,5,8,8,7,1,0, + 248,128,128,248,128,128,128,248,5,8,8,6,1,0,248,128, + 128,240,128,128,128,128,6,8,8,8,1,0,120,132,128,128, + 140,132,132,124,6,8,8,8,1,0,132,132,132,252,132,132, + 132,132,1,8,8,3,1,0,128,128,128,128,128,128,128,128, + 4,8,8,5,0,0,16,16,16,16,16,16,144,96,5,8, + 8,7,1,0,136,144,160,224,144,144,136,136,4,8,8,6, + 1,0,128,128,128,128,128,128,128,240,7,8,8,9,1,0, + 130,198,198,170,170,146,146,146,6,8,8,8,1,0,196,196, + 164,164,148,148,140,140,6,8,8,8,1,0,120,132,132,132, + 132,132,132,120,5,8,8,7,1,0,240,136,136,240,128,128, + 128,128,7,9,9,8,1,255,120,132,132,132,132,148,140,124, + 2,5,8,8,7,1,0,240,136,136,240,136,136,136,136,5, + 8,8,7,1,0,112,136,128,112,8,136,136,112,5,8,8, + 5,0,0,248,32,32,32,32,32,32,32,6,8,8,8,1, + 0,132,132,132,132,132,132,132,120,7,8,8,7,0,0,130, + 130,68,68,68,40,40,16,9,8,16,9,0,0,136,128,136, + 128,73,0,73,0,85,0,34,0,34,0,34,0,5,8,8, + 7,1,0,136,136,80,32,80,80,136,136,7,8,8,7,0, + 0,130,68,68,40,40,16,16,16,5,8,8,7,1,0,248, + 8,16,32,32,64,128,248,2,10,10,3,1,254,192,128,128, + 128,128,128,128,128,128,192,3,8,8,3,0,0,128,128,64, + 64,64,64,32,32,2,10,10,3,0,254,192,64,64,64,64, + 64,64,64,64,192,5,5,5,6,0,3,32,32,80,80,136, + 6,1,1,6,0,254,252,2,2,2,3,0,7,128,64,5, + 6,6,5,0,0,224,16,112,144,144,104,5,8,8,6,0, + 0,128,128,176,200,136,136,200,176,4,6,6,5,0,0,96, + 144,128,128,144,96,5,8,8,6,0,0,8,8,104,152,136, + 136,152,104,4,6,6,5,0,0,96,144,240,128,144,96,4, + 8,8,4,0,0,48,64,224,64,64,64,64,64,5,8,8, + 6,0,254,104,152,136,136,152,104,8,112,5,8,8,6,0, + 0,128,128,176,200,136,136,136,136,1,8,8,2,0,0,128, + 0,128,128,128,128,128,128,2,10,10,2,255,254,64,0,64, + 64,64,64,64,64,64,128,4,8,8,5,0,0,128,128,144, + 160,192,160,144,144,1,8,8,2,0,0,128,128,128,128,128, + 128,128,128,7,6,6,8,0,0,236,146,146,146,146,146,5, + 6,6,6,0,0,176,200,136,136,136,136,5,6,6,6,0, + 0,112,136,136,136,136,112,5,8,8,6,0,254,176,200,136, + 136,200,176,128,128,5,8,8,6,0,254,104,152,136,136,152, + 104,8,8,3,6,6,4,0,0,160,192,128,128,128,128,4, + 6,6,5,0,0,96,144,96,16,144,96,3,8,8,4,0, + 0,64,64,224,64,64,64,64,96,4,6,6,5,0,0,144, + 144,144,144,144,112,5,6,6,6,0,0,136,136,80,80,32, + 32,7,6,6,8,0,0,146,146,84,84,40,40,5,6,6, + 6,0,0,136,80,32,80,136,136,5,8,8,5,255,254,72, + 72,80,80,48,32,32,192,4,6,6,5,0,0,240,16,32, + 64,128,240,3,10,10,3,0,254,32,64,64,64,128,64,64, + 64,64,32,1,10,10,3,1,254,128,128,128,128,128,128,128, + 128,128,128,3,10,10,3,0,254,128,64,64,64,32,64,64, + 64,64,128,6,2,2,7,0,3,100,152,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,3, + 0,1,1,8,8,3,1,254,128,0,128,128,128,128,128,128, + 5,8,8,6,1,255,16,112,168,160,160,168,112,64,5,8, + 8,6,0,0,48,72,64,224,64,64,72,176,4,6,6,5, + 0,1,144,96,144,144,96,144,5,8,8,6,0,0,136,136, + 136,80,248,32,248,32,1,10,10,3,1,254,128,128,128,128, + 0,0,128,128,128,128,5,10,10,6,0,254,112,136,192,112, + 152,200,112,24,136,112,3,1,1,3,0,7,160,7,7,7, + 9,1,0,56,68,154,162,154,68,56,3,5,5,4,0,3, + 224,32,160,0,224,5,5,5,6,0,0,40,80,160,80,40, + 5,3,3,7,1,2,248,8,8,3,1,1,4,0,3,224, + 7,7,7,9,1,0,56,68,186,178,170,68,56,3,1,1, + 3,0,7,224,4,4,4,4,0,4,96,144,144,96,5,7, + 7,6,0,0,32,32,248,32,32,0,248,3,4,4,3,0, + 4,96,160,64,224,3,4,4,3,0,4,224,64,32,192,2, + 2,2,3,0,7,64,128,4,8,8,5,0,254,144,144,144, + 144,144,240,128,128,6,10,10,6,0,254,124,232,232,232,104, + 40,40,40,40,40,2,1,1,3,0,3,192,2,2,2,3, + 0,254,64,192,2,4,4,3,0,4,64,192,64,64,3,5, + 5,4,0,3,224,160,224,0,224,5,5,5,6,0,0,160, + 80,40,80,160,9,8,16,9,0,0,68,0,196,0,72,0, + 72,0,17,0,19,0,39,128,33,0,8,8,8,9,0,0, + 68,196,72,72,19,21,34,39,9,8,16,9,0,0,224,0, + 68,0,36,0,200,0,9,0,19,0,23,128,33,0,4,8, + 8,6,1,254,32,0,32,32,64,128,144,96,7,11,11,7, + 0,0,32,16,0,16,16,40,40,68,124,130,130,7,11,11, + 7,0,0,8,16,0,16,16,40,40,68,124,130,130,7,11, + 11,7,0,0,16,40,0,16,16,40,40,68,124,130,130,7, + 11,11,7,0,0,20,40,0,16,16,40,40,68,124,130,130, + 7,10,10,7,0,0,40,0,16,16,40,40,68,124,130,130, + 7,11,11,7,0,0,16,40,16,16,16,40,40,68,124,130, + 130,9,8,16,10,0,0,31,128,24,0,40,0,47,128,72, + 0,120,0,136,0,143,128,6,10,10,8,1,254,120,132,128, + 128,128,128,132,120,16,48,5,11,11,7,1,0,64,32,0, + 248,128,128,248,128,128,128,248,5,11,11,7,1,0,16,32, + 0,248,128,128,248,128,128,128,248,5,11,11,7,1,0,32, + 80,0,248,128,128,248,128,128,128,248,5,10,10,7,1,0, + 80,0,248,128,128,248,128,128,128,248,2,11,11,3,0,0, + 128,64,0,64,64,64,64,64,64,64,64,2,11,11,3,1, + 0,64,128,0,128,128,128,128,128,128,128,128,3,11,11,3, + 0,0,64,160,0,64,64,64,64,64,64,64,64,3,10,10, + 3,0,0,160,0,64,64,64,64,64,64,64,64,7,8,8, + 8,0,0,120,68,66,242,66,66,68,120,6,11,11,8,1, + 0,40,80,0,196,196,164,164,148,148,140,140,6,11,11,8, + 1,0,32,16,0,120,132,132,132,132,132,132,120,6,11,11, + 8,1,0,8,16,0,120,132,132,132,132,132,132,120,6,11, + 11,8,1,0,32,80,0,120,132,132,132,132,132,132,120,6, + 11,11,8,1,0,40,80,0,120,132,132,132,132,132,132,120, + 6,10,10,8,1,0,72,0,120,132,132,132,132,132,132,120, + 5,5,5,6,0,1,136,80,32,80,136,6,10,10,8,1, + 255,4,120,140,148,148,164,164,196,120,128,6,11,11,8,1, + 0,32,16,0,132,132,132,132,132,132,132,120,6,11,11,8, + 1,0,8,16,0,132,132,132,132,132,132,132,120,6,11,11, + 8,1,0,32,80,0,132,132,132,132,132,132,132,120,6,10, + 10,8,1,0,72,0,132,132,132,132,132,132,132,120,7,11, + 11,7,0,0,8,16,0,130,68,68,40,40,16,16,16,5, + 8,8,7,1,0,128,128,240,136,136,240,128,128,4,8,8, + 5,0,0,96,144,144,160,144,144,144,160,5,9,9,5,0, + 0,64,32,0,224,16,112,144,144,104,5,9,9,5,0,0, + 32,64,0,224,16,112,144,144,104,5,9,9,5,0,0,32, + 80,0,224,16,112,144,144,104,5,9,9,5,0,0,80,160, + 0,224,16,112,144,144,104,5,8,8,5,0,0,80,0,224, + 16,112,144,144,104,5,9,9,5,0,0,32,80,32,224,16, + 112,144,144,104,7,6,6,8,0,0,236,18,126,144,146,108, + 4,8,8,5,0,254,96,144,128,128,144,96,32,96,4,9, + 9,5,0,0,64,32,0,96,144,240,128,144,96,4,9,9, + 5,0,0,32,64,0,96,144,240,128,144,96,4,9,9,5, + 0,0,64,160,0,96,144,240,128,144,96,4,8,8,5,0, + 0,160,0,96,144,240,128,144,96,2,9,9,2,255,0,128, + 64,0,64,64,64,64,64,64,2,9,9,2,0,0,64,128, + 0,128,128,128,128,128,128,3,9,9,2,255,0,64,160,0, + 64,64,64,64,64,64,3,8,8,2,255,0,160,0,64,64, + 64,64,64,64,5,9,9,6,0,0,64,120,144,120,136,136, + 136,136,112,4,9,9,5,0,0,80,160,0,224,144,144,144, + 144,144,5,9,9,6,0,0,64,32,0,112,136,136,136,136, + 112,5,9,9,6,0,0,16,32,0,112,136,136,136,136,112, + 5,9,9,6,0,0,32,80,0,112,136,136,136,136,112,5, + 9,9,6,0,0,40,80,0,112,136,136,136,136,112,5,8, + 8,6,0,0,80,0,112,136,136,136,136,112,5,5,5,6, + 0,1,32,0,248,0,32,7,6,6,6,255,0,58,76,84, + 100,68,184,4,9,9,5,0,0,64,32,0,144,144,144,144, + 144,112,4,9,9,5,0,0,16,32,0,144,144,144,144,144, + 112,4,9,9,5,0,0,64,160,0,144,144,144,144,144,112, + 4,8,8,5,0,0,160,0,144,144,144,144,144,112,5,11, + 11,5,255,254,8,16,0,72,72,80,80,48,32,32,192,5, + 10,10,6,0,254,128,128,176,200,136,136,200,176,128,128,5, + 10,10,5,255,254,80,0,72,72,80,80,48,32,32,192}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--11-80-100-100-P-56-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=10 h=10 x= 1 y= 7 dx=11 dy= 0 ascent= 9 len=18 + Font Bounding box w=13 h=18 x=-2 y=-4 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR08r[1276] U8G_SECTION(".progmem.u8g_font_helvR08r") = { + 0,13,18,254,252,8,1,178,3,111,32,127,254,9,254,8, + 254,0,0,0,3,0,1,1,8,8,3,1,0,128,128,128, + 128,128,128,0,128,3,2,2,4,1,6,160,160,6,7,7, + 6,0,0,40,40,124,40,248,80,80,5,10,10,6,0,255, + 32,112,168,160,112,40,40,168,112,32,8,8,8,9,0,0, + 100,148,104,8,16,22,41,38,6,8,8,8,1,0,96,144, + 144,96,148,136,152,100,1,2,2,2,0,6,128,128,3,10, + 10,4,0,254,32,64,64,128,128,128,128,64,64,32,3,10, + 10,4,1,254,128,64,64,32,32,32,32,64,64,128,3,3, + 3,4,0,5,160,64,160,5,5,5,6,0,1,32,32,248, + 32,32,2,3,3,3,0,254,64,64,128,3,1,1,4,0, + 3,224,1,1,1,3,1,0,128,3,8,8,3,0,0,32, + 32,64,64,64,64,128,128,5,8,8,6,0,0,112,136,136, + 136,136,136,136,112,2,8,8,6,1,0,64,192,64,64,64, + 64,64,64,5,8,8,6,0,0,112,136,8,8,48,64,128, + 248,5,8,8,6,0,0,112,136,8,48,8,8,136,112,5, + 8,8,6,0,0,16,48,80,80,144,248,16,16,5,8,8, + 6,0,0,120,64,64,112,8,8,136,112,5,8,8,6,0, + 0,112,136,128,240,136,136,136,112,5,8,8,6,0,0,248, + 8,16,32,32,64,64,64,5,8,8,6,0,0,112,136,136, + 112,136,136,136,112,5,8,8,6,0,0,112,136,136,136,120, + 8,136,112,1,6,6,3,1,0,128,0,0,0,0,128,2, + 8,8,3,0,254,64,0,0,0,0,64,64,128,3,5,5, + 6,1,1,32,64,128,64,32,4,3,3,5,0,2,240,0, + 240,3,5,5,6,1,1,128,64,32,64,128,4,8,8,6, + 1,0,96,144,16,32,64,64,0,64,10,9,18,11,0,255, + 31,0,32,128,77,64,146,64,162,64,164,128,155,0,64,0, + 62,0,7,8,8,7,0,0,16,16,40,40,68,124,130,130, + 5,8,8,7,1,0,240,136,136,240,136,136,136,240,6,8, + 8,8,1,0,120,132,128,128,128,128,132,120,6,8,8,8, + 1,0,240,136,132,132,132,132,136,240,5,8,8,7,1,0, + 248,128,128,248,128,128,128,248,5,8,8,6,1,0,248,128, + 128,240,128,128,128,128,6,8,8,8,1,0,120,132,128,128, + 140,132,132,124,6,8,8,8,1,0,132,132,132,252,132,132, + 132,132,1,8,8,3,1,0,128,128,128,128,128,128,128,128, + 4,8,8,5,0,0,16,16,16,16,16,16,144,96,5,8, + 8,7,1,0,136,144,160,224,144,144,136,136,4,8,8,6, + 1,0,128,128,128,128,128,128,128,240,7,8,8,9,1,0, + 130,198,198,170,170,146,146,146,6,8,8,8,1,0,196,196, + 164,164,148,148,140,140,6,8,8,8,1,0,120,132,132,132, + 132,132,132,120,5,8,8,7,1,0,240,136,136,240,128,128, + 128,128,7,9,9,8,1,255,120,132,132,132,132,148,140,124, + 2,5,8,8,7,1,0,240,136,136,240,136,136,136,136,5, + 8,8,7,1,0,112,136,128,112,8,136,136,112,5,8,8, + 5,0,0,248,32,32,32,32,32,32,32,6,8,8,8,1, + 0,132,132,132,132,132,132,132,120,7,8,8,7,0,0,130, + 130,68,68,68,40,40,16,9,8,16,9,0,0,136,128,136, + 128,73,0,73,0,85,0,34,0,34,0,34,0,5,8,8, + 7,1,0,136,136,80,32,80,80,136,136,7,8,8,7,0, + 0,130,68,68,40,40,16,16,16,5,8,8,7,1,0,248, + 8,16,32,32,64,128,248,2,10,10,3,1,254,192,128,128, + 128,128,128,128,128,128,192,3,8,8,3,0,0,128,128,64, + 64,64,64,32,32,2,10,10,3,0,254,192,64,64,64,64, + 64,64,64,64,192,5,5,5,6,0,3,32,32,80,80,136, + 6,1,1,6,0,254,252,2,2,2,3,0,7,128,64,5, + 6,6,5,0,0,224,16,112,144,144,104,5,8,8,6,0, + 0,128,128,176,200,136,136,200,176,4,6,6,5,0,0,96, + 144,128,128,144,96,5,8,8,6,0,0,8,8,104,152,136, + 136,152,104,4,6,6,5,0,0,96,144,240,128,144,96,4, + 8,8,4,0,0,48,64,224,64,64,64,64,64,5,8,8, + 6,0,254,104,152,136,136,152,104,8,112,5,8,8,6,0, + 0,128,128,176,200,136,136,136,136,1,8,8,2,0,0,128, + 0,128,128,128,128,128,128,2,10,10,2,255,254,64,0,64, + 64,64,64,64,64,64,128,4,8,8,5,0,0,128,128,144, + 160,192,160,144,144,1,8,8,2,0,0,128,128,128,128,128, + 128,128,128,7,6,6,8,0,0,236,146,146,146,146,146,5, + 6,6,6,0,0,176,200,136,136,136,136,5,6,6,6,0, + 0,112,136,136,136,136,112,5,8,8,6,0,254,176,200,136, + 136,200,176,128,128,5,8,8,6,0,254,104,152,136,136,152, + 104,8,8,3,6,6,4,0,0,160,192,128,128,128,128,4, + 6,6,5,0,0,96,144,96,16,144,96,3,8,8,4,0, + 0,64,64,224,64,64,64,64,96,4,6,6,5,0,0,144, + 144,144,144,144,112,5,6,6,6,0,0,136,136,80,80,32, + 32,7,6,6,8,0,0,146,146,84,84,40,40,5,6,6, + 6,0,0,136,80,32,80,136,136,5,8,8,5,255,254,72, + 72,80,80,48,32,32,192,4,6,6,5,0,0,240,16,32, + 64,128,240,3,10,10,3,0,254,32,64,64,64,128,64,64, + 64,64,32,1,10,10,3,1,254,128,128,128,128,128,128,128, + 128,128,128,3,10,10,3,0,254,128,64,64,64,32,64,64, + 64,64,128,6,2,2,7,0,3,100,152,255}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--14-100-100-100-P-76-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=13 h=14 x= 2 y= 9 dx=14 dy= 0 ascent=14 len=28 + Font Bounding box w=17 h=22 x=-2 y=-5 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR10[3527] U8G_SECTION(".progmem.u8g_font_helvR10") = { + 0,17,22,254,251,11,2,10,4,133,32,255,253,14,253,11, + 253,0,0,0,4,0,1,1,11,11,4,2,0,128,128,128, + 128,128,128,128,128,0,128,128,3,3,3,5,1,8,160,160, + 160,7,10,10,8,0,0,20,20,20,126,40,40,252,80,80, + 80,7,14,14,8,0,254,16,124,146,146,144,80,56,20,18, + 146,146,124,16,16,11,11,22,12,0,0,112,128,137,0,137, + 0,114,0,2,0,4,0,8,0,9,192,18,32,18,32,33, + 192,8,10,10,10,1,0,48,72,72,48,32,82,138,132,138, + 113,1,3,3,3,1,8,128,128,128,3,14,14,5,1,253, + 32,64,64,128,128,128,128,128,128,128,128,64,64,32,3,14, + 14,5,1,253,128,64,64,32,32,32,32,32,32,32,32,64, + 64,128,5,5,5,7,1,6,32,168,112,168,32,7,7,7, + 9,1,1,16,16,16,254,16,16,16,2,4,4,3,0,254, + 64,64,64,128,3,1,1,4,0,4,224,1,2,2,3,1, + 0,128,128,4,11,11,4,0,0,16,16,32,32,32,64,64, + 64,128,128,128,6,11,11,8,1,0,120,132,132,132,132,132, + 132,132,132,132,120,3,11,11,8,2,0,32,224,32,32,32, + 32,32,32,32,32,32,6,11,11,8,1,0,120,132,132,4, + 8,16,32,64,128,128,252,6,11,11,8,1,0,120,132,132, + 4,4,56,4,4,132,132,120,7,11,11,8,1,0,4,12, + 20,36,68,132,132,254,4,4,4,6,11,11,8,1,0,252, + 128,128,128,248,4,4,4,132,132,120,6,11,11,8,1,0, + 120,132,128,128,184,196,132,132,132,132,120,6,11,11,8,1, + 0,252,4,8,8,16,16,32,32,64,64,64,6,11,11,8, + 1,0,120,132,132,132,132,120,132,132,132,132,120,6,11,11, + 8,1,0,120,132,132,132,132,124,4,4,132,132,120,1,8, + 8,3,1,0,128,128,0,0,0,0,128,128,2,10,10,4, + 0,254,64,64,0,0,0,0,64,64,64,128,6,5,5,8, + 1,2,12,48,192,48,12,6,3,3,9,1,3,252,0,252, + 6,5,5,8,1,2,192,48,12,48,192,6,11,11,8,1, + 0,48,204,132,132,4,8,16,32,0,32,32,11,12,24,13, + 1,255,15,0,48,192,64,32,70,160,137,32,145,32,145,32, + 147,64,141,128,64,0,96,128,31,0,9,11,22,9,0,0, + 8,0,28,0,20,0,20,0,34,0,34,0,65,0,127,0, + 65,0,128,128,128,128,7,11,11,9,1,0,252,134,130,130, + 132,248,132,130,130,134,252,8,11,11,10,1,0,28,99,65, + 128,128,128,128,128,65,99,28,8,11,11,10,1,0,248,134, + 130,129,129,129,129,129,130,134,248,7,11,11,9,1,0,254, + 128,128,128,128,252,128,128,128,128,254,7,11,11,8,1,0, + 254,128,128,128,128,252,128,128,128,128,128,9,11,22,11,1, + 0,30,0,97,128,64,128,128,0,128,0,135,128,128,128,128, + 128,64,128,99,128,28,128,8,11,11,10,1,0,129,129,129, + 129,129,255,129,129,129,129,129,1,11,11,4,2,0,128,128, + 128,128,128,128,128,128,128,128,128,6,11,11,7,0,0,4, + 4,4,4,4,4,4,4,132,132,120,8,11,11,9,1,0, + 130,132,136,144,160,224,144,136,132,130,129,6,11,11,8,2, + 0,128,128,128,128,128,128,128,128,128,128,252,11,11,22,12, + 0,0,128,32,192,96,192,96,160,160,160,160,145,32,145,32, + 138,32,138,32,132,32,132,32,8,11,11,10,1,0,193,161, + 161,145,145,137,137,133,133,131,131,9,11,22,11,1,0,28, + 0,99,0,65,0,128,128,128,128,128,128,128,128,128,128,65, + 0,99,0,28,0,7,11,11,9,1,0,252,134,130,130,134, + 252,128,128,128,128,128,9,11,22,11,1,0,28,0,99,0, + 65,0,128,128,128,128,128,128,136,128,132,128,67,0,99,0, + 28,128,8,11,11,10,1,0,254,131,129,129,130,252,130,129, + 129,129,129,7,11,11,9,1,0,56,198,130,128,96,24,6, + 2,130,198,56,9,11,22,9,0,0,255,128,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,11,11,10,1,0,129,129,129,129,129,129,129,129,129,66, + 60,9,11,22,9,0,0,128,128,128,128,65,0,65,0,99, + 0,34,0,34,0,20,0,20,0,8,0,8,0,13,11,22, + 13,0,0,130,8,130,8,133,8,69,16,69,16,69,16,40, + 160,40,160,40,160,16,64,16,64,9,11,22,9,0,0,128, + 128,65,0,34,0,20,0,8,0,8,0,20,0,34,0,65, + 0,65,0,128,128,9,11,22,9,0,0,128,128,193,128,65, + 0,34,0,34,0,20,0,28,0,8,0,8,0,8,0,8, + 0,7,11,11,9,1,0,254,2,4,8,24,16,32,96,64, + 128,254,3,14,14,4,1,253,224,128,128,128,128,128,128,128, + 128,128,128,128,128,224,4,11,11,4,0,0,128,128,64,64, + 64,32,32,32,16,16,16,3,14,14,4,0,253,224,32,32, + 32,32,32,32,32,32,32,32,32,32,224,5,5,5,7,1, + 6,32,80,80,136,136,8,1,1,8,0,253,255,2,2,2, + 5,1,9,128,64,7,8,8,8,1,0,120,204,4,124,196, + 132,204,118,6,11,11,7,1,0,128,128,128,184,204,132,132, + 132,132,204,184,6,8,8,7,1,0,120,204,128,128,128,132, + 204,120,6,11,11,8,1,0,4,4,4,116,204,132,132,132, + 132,204,116,6,8,8,8,1,0,120,204,132,252,128,128,204, + 120,4,11,11,4,0,0,48,64,64,224,64,64,64,64,64, + 64,64,6,11,11,8,1,253,116,204,132,132,132,132,204,116, + 4,204,120,6,11,11,8,1,0,128,128,128,184,204,132,132, + 132,132,132,132,1,11,11,3,1,0,128,128,0,128,128,128, + 128,128,128,128,128,3,14,14,3,255,253,32,32,0,32,32, + 32,32,32,32,32,32,32,32,192,6,11,11,7,1,0,128, + 128,128,136,144,160,192,160,144,136,132,1,11,11,3,1,0, + 128,128,128,128,128,128,128,128,128,128,128,9,8,16,11,1, + 0,179,0,204,128,136,128,136,128,136,128,136,128,136,128,136, + 128,6,8,8,8,1,0,184,204,132,132,132,132,132,132,6, + 8,8,8,1,0,120,204,132,132,132,132,204,120,6,11,11, + 8,1,253,184,204,132,132,132,132,204,184,128,128,128,6,11, + 11,8,1,253,116,204,132,132,132,132,204,116,4,4,4,4, + 8,8,5,1,0,176,192,128,128,128,128,128,128,5,8,8, + 7,1,0,112,136,192,112,24,8,136,112,4,10,10,4,0, + 0,64,64,224,64,64,64,64,64,64,48,6,8,8,7,1, + 0,132,132,132,132,132,132,204,116,7,8,8,7,0,0,130, + 130,68,68,68,40,40,16,9,8,16,10,0,0,136,128,136, + 128,136,128,73,0,73,0,85,0,34,0,34,0,7,8,8, + 7,0,0,198,68,40,16,16,40,68,198,7,11,11,7,0, + 253,130,194,68,68,36,40,24,16,16,48,96,6,8,8,7, + 0,0,252,4,8,16,32,64,128,252,5,14,14,5,0,253, + 24,32,32,32,32,64,128,64,32,32,32,32,32,24,1,14, + 14,3,1,253,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,5,14,14,5,0,253,192,32,32,32,32,16,8,16, + 32,32,32,32,32,192,6,3,3,8,1,3,100,180,152,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 0,0,0,4,0,1,1,11,11,4,1,253,128,128,0,128, + 128,128,128,128,128,128,128,6,10,10,8,1,255,4,120,204, + 144,144,160,164,204,120,128,7,11,11,8,0,0,56,68,64, + 64,248,32,32,32,64,98,220,6,6,6,8,1,2,132,120, + 72,72,120,132,7,11,11,7,0,0,130,130,130,68,68,40, + 254,16,254,16,16,1,14,14,3,1,253,128,128,128,128,128, + 128,0,0,128,128,128,128,128,128,5,14,14,8,2,253,112, + 216,136,192,112,152,136,136,200,112,24,136,216,112,5,1,1, + 5,0,9,216,10,11,22,12,1,0,30,0,97,128,92,128, + 162,192,162,64,160,64,162,64,156,64,64,128,97,128,30,0, + 4,7,7,6,1,4,224,16,112,144,208,0,240,6,5,5, + 8,1,2,36,72,144,72,36,7,4,4,9,1,2,254,2, + 2,2,3,1,1,4,0,4,224,10,11,22,12,1,0,30, + 0,97,128,92,128,146,64,146,64,156,64,146,64,146,64,64, + 128,97,128,30,0,4,1,1,4,0,9,240,4,4,4,6, + 1,7,96,144,144,96,7,9,9,9,1,0,16,16,16,254, + 16,16,16,0,254,4,6,6,5,0,5,96,144,16,32,64, + 240,4,6,6,5,0,5,96,144,32,16,144,96,2,2,2, + 5,2,9,64,128,6,11,11,8,1,253,132,132,132,132,132, + 132,204,180,128,128,128,7,14,14,8,0,253,62,116,244,244, + 244,116,52,20,20,20,20,20,20,20,2,1,1,4,1,4, + 192,4,3,3,5,0,253,32,144,96,2,6,6,5,1,5, + 64,192,64,64,64,64,4,7,7,6,1,4,96,144,144,144, + 96,0,240,6,5,5,8,1,2,144,72,36,72,144,10,11, + 22,12,1,0,66,0,194,0,68,0,68,0,72,0,72,128, + 9,128,18,128,20,128,39,192,32,128,9,11,22,12,1,0, + 66,0,194,0,68,0,68,0,72,0,75,0,20,128,16,128, + 17,0,34,0,39,128,11,11,22,12,0,0,97,0,145,0, + 34,0,18,0,148,0,100,64,4,192,9,64,10,64,19,224, + 16,64,6,11,11,8,1,253,16,16,0,16,32,64,128,132, + 132,204,48,9,14,28,9,0,0,16,0,8,0,0,0,8, + 0,28,0,20,0,20,0,34,0,34,0,65,0,127,0,65, + 0,128,128,128,128,9,14,28,9,0,0,4,0,8,0,0, + 0,8,0,28,0,20,0,20,0,34,0,34,0,65,0,127, + 0,65,0,128,128,128,128,9,14,28,9,0,0,12,0,18, + 0,0,0,8,0,28,0,20,0,20,0,34,0,34,0,65, + 0,127,0,65,0,128,128,128,128,9,14,28,9,0,0,26, + 0,44,0,0,0,8,0,28,0,20,0,20,0,34,0,34, + 0,65,0,127,0,65,0,128,128,128,128,9,13,26,9,0, + 0,54,0,0,0,8,0,28,0,20,0,20,0,34,0,34, + 0,65,0,127,0,65,0,128,128,128,128,9,14,28,9,0, + 0,12,0,18,0,18,0,12,0,12,0,20,0,20,0,34, + 0,34,0,65,0,127,0,65,0,128,128,128,128,12,11,22, + 14,1,0,31,240,18,0,18,0,34,0,34,0,35,240,126, + 0,66,0,66,0,130,0,131,240,8,14,14,10,1,253,28, + 99,65,128,128,128,128,128,65,99,28,8,36,24,7,14,14, + 9,1,0,32,16,0,254,128,128,128,128,252,128,128,128,128, + 254,7,14,14,9,1,0,8,16,0,254,128,128,128,128,252, + 128,128,128,128,254,7,14,14,9,1,0,24,36,0,254,128, + 128,128,128,252,128,128,128,128,254,7,13,13,9,1,0,108, + 0,254,128,128,128,128,252,128,128,128,128,254,2,14,14,4, + 1,0,128,64,0,64,64,64,64,64,64,64,64,64,64,64, + 2,14,14,4,2,0,64,128,0,128,128,128,128,128,128,128, + 128,128,128,128,4,14,14,4,1,0,96,144,0,64,64,64, + 64,64,64,64,64,64,64,64,5,13,13,4,0,0,216,0, + 32,32,32,32,32,32,32,32,32,32,32,9,11,22,10,0, + 0,124,0,67,0,65,0,64,128,64,128,240,128,64,128,64, + 128,65,0,67,0,124,0,8,14,14,10,1,0,26,44,0, + 193,161,161,145,145,137,137,133,133,131,131,9,14,28,11,1, + 0,16,0,8,0,0,0,28,0,99,0,65,0,128,128,128, + 128,128,128,128,128,128,128,65,0,99,0,28,0,9,14,28, + 11,1,0,4,0,8,0,0,0,28,0,99,0,65,0,128, + 128,128,128,128,128,128,128,128,128,65,0,99,0,28,0,9, + 14,28,11,1,0,12,0,18,0,0,0,28,0,99,0,65, + 0,128,128,128,128,128,128,128,128,128,128,65,0,99,0,28, + 0,9,14,28,11,1,0,26,0,44,0,0,0,28,0,99, + 0,65,0,128,128,128,128,128,128,128,128,128,128,65,0,99, + 0,28,0,9,13,26,11,1,0,51,0,0,0,28,0,99, + 0,65,0,128,128,128,128,128,128,128,128,128,128,65,0,99, + 0,28,0,7,7,7,9,1,1,130,68,40,16,40,68,130, + 11,11,22,11,0,0,14,32,49,192,32,128,65,64,66,64, + 68,64,72,64,80,64,32,128,113,128,142,0,8,14,14,10, + 1,0,16,8,0,129,129,129,129,129,129,129,129,129,66,60, + 8,14,14,10,1,0,4,8,0,129,129,129,129,129,129,129, + 129,129,66,60,8,14,14,10,1,0,24,36,0,129,129,129, + 129,129,129,129,129,129,66,60,8,13,13,10,1,0,102,0, + 129,129,129,129,129,129,129,129,129,66,60,9,14,28,9,0, + 0,4,0,8,0,0,0,128,128,193,128,65,0,34,0,34, + 0,20,0,28,0,8,0,8,0,8,0,8,0,7,11,11, + 9,1,0,128,128,252,134,130,130,134,252,128,128,128,5,11, + 11,7,1,0,112,136,136,136,176,144,136,136,136,136,176,7, + 11,11,8,1,0,32,16,0,120,204,4,124,196,132,204,118, + 7,11,11,8,1,0,16,32,0,120,204,4,124,196,132,204, + 118,7,11,11,8,1,0,48,72,0,120,204,4,124,196,132, + 204,118,7,11,11,8,1,0,52,88,0,120,204,4,124,196, + 132,204,118,7,11,11,8,1,0,72,72,0,120,204,4,124, + 196,132,204,118,7,12,12,8,1,0,48,72,48,0,120,204, + 4,124,196,132,204,118,11,8,16,13,1,0,123,192,198,96, + 4,32,127,224,196,0,132,0,206,96,123,192,6,11,11,8, + 1,253,120,204,128,128,128,132,204,120,16,72,48,6,11,11, + 8,1,0,32,16,0,120,204,132,252,128,128,204,120,6,11, + 11,8,1,0,16,32,0,120,204,132,252,128,128,204,120,6, + 11,11,8,1,0,48,72,0,120,204,132,252,128,128,204,120, + 6,11,11,8,1,0,72,72,0,120,204,132,252,128,128,204, + 120,2,11,11,3,1,0,128,64,0,128,128,128,128,128,128, + 128,128,2,11,11,3,1,0,64,128,0,128,128,128,128,128, + 128,128,128,4,11,11,3,0,0,96,144,0,64,64,64,64, + 64,64,64,64,3,11,11,3,0,0,160,160,0,64,64,64, + 64,64,64,64,64,6,11,11,8,1,0,216,112,144,120,204, + 132,132,132,132,204,120,6,11,11,8,1,0,104,176,0,184, + 204,132,132,132,132,132,132,6,11,11,8,1,0,32,16,0, + 120,204,132,132,132,132,204,120,6,11,11,8,1,0,16,32, + 0,120,204,132,132,132,132,204,120,6,11,11,8,1,0,48, + 72,0,120,204,132,132,132,132,204,120,6,11,11,8,1,0, + 104,176,0,120,204,132,132,132,132,204,120,6,11,11,8,1, + 0,72,72,0,120,204,132,132,132,132,204,120,7,7,7,9, + 1,1,16,16,0,254,0,16,16,8,8,8,8,0,0,61, + 98,70,74,82,98,70,188,6,11,11,8,1,0,32,16,0, + 132,132,132,132,132,132,204,116,6,11,11,8,1,0,16,32, + 0,132,132,132,132,132,132,204,116,6,11,11,8,1,0,48, + 72,0,132,132,132,132,132,132,204,116,6,11,11,8,1,0, + 72,72,0,132,132,132,132,132,132,204,116,7,14,14,7,0, + 253,8,16,0,130,194,68,68,36,40,24,16,16,48,96,6, + 14,14,8,1,253,128,128,128,184,204,132,132,132,132,204,184, + 128,128,128,7,14,14,7,0,253,36,36,0,130,194,68,68, + 36,40,24,16,16,48,96}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--14-100-100-100-P-76-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=13 h=14 x= 2 y= 9 dx=13 dy= 0 ascent=12 len=24 + Font Bounding box w=17 h=22 x=-2 y=-5 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR10r[1648] U8G_SECTION(".progmem.u8g_font_helvR10r") = { + 0,17,22,254,251,11,2,10,4,133,32,127,253,12,253,11, + 253,0,0,0,4,0,1,1,11,11,4,2,0,128,128,128, + 128,128,128,128,128,0,128,128,3,3,3,5,1,8,160,160, + 160,7,10,10,8,0,0,20,20,20,126,40,40,252,80,80, + 80,7,14,14,8,0,254,16,124,146,146,144,80,56,20,18, + 146,146,124,16,16,11,11,22,12,0,0,112,128,137,0,137, + 0,114,0,2,0,4,0,8,0,9,192,18,32,18,32,33, + 192,8,10,10,10,1,0,48,72,72,48,32,82,138,132,138, + 113,1,3,3,3,1,8,128,128,128,3,14,14,5,1,253, + 32,64,64,128,128,128,128,128,128,128,128,64,64,32,3,14, + 14,5,1,253,128,64,64,32,32,32,32,32,32,32,32,64, + 64,128,5,5,5,7,1,6,32,168,112,168,32,7,7,7, + 9,1,1,16,16,16,254,16,16,16,2,4,4,3,0,254, + 64,64,64,128,3,1,1,4,0,4,224,1,2,2,3,1, + 0,128,128,4,11,11,4,0,0,16,16,32,32,32,64,64, + 64,128,128,128,6,11,11,8,1,0,120,132,132,132,132,132, + 132,132,132,132,120,3,11,11,8,2,0,32,224,32,32,32, + 32,32,32,32,32,32,6,11,11,8,1,0,120,132,132,4, + 8,16,32,64,128,128,252,6,11,11,8,1,0,120,132,132, + 4,4,56,4,4,132,132,120,7,11,11,8,1,0,4,12, + 20,36,68,132,132,254,4,4,4,6,11,11,8,1,0,252, + 128,128,128,248,4,4,4,132,132,120,6,11,11,8,1,0, + 120,132,128,128,184,196,132,132,132,132,120,6,11,11,8,1, + 0,252,4,8,8,16,16,32,32,64,64,64,6,11,11,8, + 1,0,120,132,132,132,132,120,132,132,132,132,120,6,11,11, + 8,1,0,120,132,132,132,132,124,4,4,132,132,120,1,8, + 8,3,1,0,128,128,0,0,0,0,128,128,2,10,10,4, + 0,254,64,64,0,0,0,0,64,64,64,128,6,5,5,8, + 1,2,12,48,192,48,12,6,3,3,9,1,3,252,0,252, + 6,5,5,8,1,2,192,48,12,48,192,6,11,11,8,1, + 0,48,204,132,132,4,8,16,32,0,32,32,11,12,24,13, + 1,255,15,0,48,192,64,32,70,160,137,32,145,32,145,32, + 147,64,141,128,64,0,96,128,31,0,9,11,22,9,0,0, + 8,0,28,0,20,0,20,0,34,0,34,0,65,0,127,0, + 65,0,128,128,128,128,7,11,11,9,1,0,252,134,130,130, + 132,248,132,130,130,134,252,8,11,11,10,1,0,28,99,65, + 128,128,128,128,128,65,99,28,8,11,11,10,1,0,248,134, + 130,129,129,129,129,129,130,134,248,7,11,11,9,1,0,254, + 128,128,128,128,252,128,128,128,128,254,7,11,11,8,1,0, + 254,128,128,128,128,252,128,128,128,128,128,9,11,22,11,1, + 0,30,0,97,128,64,128,128,0,128,0,135,128,128,128,128, + 128,64,128,99,128,28,128,8,11,11,10,1,0,129,129,129, + 129,129,255,129,129,129,129,129,1,11,11,4,2,0,128,128, + 128,128,128,128,128,128,128,128,128,6,11,11,7,0,0,4, + 4,4,4,4,4,4,4,132,132,120,8,11,11,9,1,0, + 130,132,136,144,160,224,144,136,132,130,129,6,11,11,8,2, + 0,128,128,128,128,128,128,128,128,128,128,252,11,11,22,12, + 0,0,128,32,192,96,192,96,160,160,160,160,145,32,145,32, + 138,32,138,32,132,32,132,32,8,11,11,10,1,0,193,161, + 161,145,145,137,137,133,133,131,131,9,11,22,11,1,0,28, + 0,99,0,65,0,128,128,128,128,128,128,128,128,128,128,65, + 0,99,0,28,0,7,11,11,9,1,0,252,134,130,130,134, + 252,128,128,128,128,128,9,11,22,11,1,0,28,0,99,0, + 65,0,128,128,128,128,128,128,136,128,132,128,67,0,99,0, + 28,128,8,11,11,10,1,0,254,131,129,129,130,252,130,129, + 129,129,129,7,11,11,9,1,0,56,198,130,128,96,24,6, + 2,130,198,56,9,11,22,9,0,0,255,128,8,0,8,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,11,11,10,1,0,129,129,129,129,129,129,129,129,129,66, + 60,9,11,22,9,0,0,128,128,128,128,65,0,65,0,99, + 0,34,0,34,0,20,0,20,0,8,0,8,0,13,11,22, + 13,0,0,130,8,130,8,133,8,69,16,69,16,69,16,40, + 160,40,160,40,160,16,64,16,64,9,11,22,9,0,0,128, + 128,65,0,34,0,20,0,8,0,8,0,20,0,34,0,65, + 0,65,0,128,128,9,11,22,9,0,0,128,128,193,128,65, + 0,34,0,34,0,20,0,28,0,8,0,8,0,8,0,8, + 0,7,11,11,9,1,0,254,2,4,8,24,16,32,96,64, + 128,254,3,14,14,4,1,253,224,128,128,128,128,128,128,128, + 128,128,128,128,128,224,4,11,11,4,0,0,128,128,64,64, + 64,32,32,32,16,16,16,3,14,14,4,0,253,224,32,32, + 32,32,32,32,32,32,32,32,32,32,224,5,5,5,7,1, + 6,32,80,80,136,136,8,1,1,8,0,253,255,2,2,2, + 5,1,9,128,64,7,8,8,8,1,0,120,204,4,124,196, + 132,204,118,6,11,11,7,1,0,128,128,128,184,204,132,132, + 132,132,204,184,6,8,8,7,1,0,120,204,128,128,128,132, + 204,120,6,11,11,8,1,0,4,4,4,116,204,132,132,132, + 132,204,116,6,8,8,8,1,0,120,204,132,252,128,128,204, + 120,4,11,11,4,0,0,48,64,64,224,64,64,64,64,64, + 64,64,6,11,11,8,1,253,116,204,132,132,132,132,204,116, + 4,204,120,6,11,11,8,1,0,128,128,128,184,204,132,132, + 132,132,132,132,1,11,11,3,1,0,128,128,0,128,128,128, + 128,128,128,128,128,3,14,14,3,255,253,32,32,0,32,32, + 32,32,32,32,32,32,32,32,192,6,11,11,7,1,0,128, + 128,128,136,144,160,192,160,144,136,132,1,11,11,3,1,0, + 128,128,128,128,128,128,128,128,128,128,128,9,8,16,11,1, + 0,179,0,204,128,136,128,136,128,136,128,136,128,136,128,136, + 128,6,8,8,8,1,0,184,204,132,132,132,132,132,132,6, + 8,8,8,1,0,120,204,132,132,132,132,204,120,6,11,11, + 8,1,253,184,204,132,132,132,132,204,184,128,128,128,6,11, + 11,8,1,253,116,204,132,132,132,132,204,116,4,4,4,4, + 8,8,5,1,0,176,192,128,128,128,128,128,128,5,8,8, + 7,1,0,112,136,192,112,24,8,136,112,4,10,10,4,0, + 0,64,64,224,64,64,64,64,64,64,48,6,8,8,7,1, + 0,132,132,132,132,132,132,204,116,7,8,8,7,0,0,130, + 130,68,68,68,40,40,16,9,8,16,10,0,0,136,128,136, + 128,136,128,73,0,73,0,85,0,34,0,34,0,7,8,8, + 7,0,0,198,68,40,16,16,40,68,198,7,11,11,7,0, + 253,130,194,68,68,36,40,24,16,16,48,96,6,8,8,7, + 0,0,252,4,8,16,32,64,128,252,5,14,14,5,0,253, + 24,32,32,32,32,64,128,64,32,32,32,32,32,24,1,14, + 14,3,1,253,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,5,14,14,5,0,253,192,32,32,32,32,16,8,16, + 32,32,32,32,32,192,6,3,3,8,1,3,100,180,152,255 + }; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--17-120-100-100-P-88-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=14 h=16 x= 3 y=10 dx=17 dy= 0 ascent=16 len=32 + Font Bounding box w=20 h=26 x=-2 y=-6 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR12[4077] U8G_SECTION(".progmem.u8g_font_helvR12") = { + 0,20,26,254,250,12,2,91,5,99,32,255,252,16,252,12, + 252,0,0,0,5,0,1,1,12,12,5,2,0,128,128,128, + 128,128,128,128,128,128,0,128,128,4,4,4,6,1,8,144, + 144,144,144,8,11,11,9,0,0,18,18,18,127,36,36,36, + 254,72,72,72,7,15,15,9,1,254,16,124,146,146,144,80, + 48,24,20,18,146,146,124,16,16,12,12,24,14,0,0,112, + 64,136,128,136,128,137,0,114,0,2,0,4,0,4,224,9, + 16,17,16,17,16,32,224,10,12,24,11,0,0,24,0,36, + 0,66,0,66,0,36,0,24,0,41,0,69,0,130,0,131, + 0,68,128,56,64,2,4,4,3,0,8,192,192,64,64,3, + 16,16,6,1,252,32,64,64,64,128,128,128,128,128,128,128, + 128,64,64,64,32,3,16,16,6,1,252,128,64,64,64,32, + 32,32,32,32,32,32,32,64,64,64,128,5,5,5,6,0, + 7,32,168,112,80,136,9,9,18,10,0,0,8,0,8,0, + 8,0,8,0,255,128,8,0,8,0,8,0,8,0,2,4, + 4,4,1,254,64,64,64,128,4,1,1,5,0,4,240,1, + 2,2,4,2,0,128,128,4,12,12,5,0,0,16,16,32, + 32,32,32,64,64,64,128,128,128,7,12,12,9,1,0,56, + 68,68,130,130,130,130,130,130,68,68,56,3,12,12,9,3, + 0,32,32,96,160,32,32,32,32,32,32,32,32,7,12,12, + 9,1,0,56,68,130,130,2,4,8,48,64,128,128,254,7, + 12,12,9,1,0,56,68,130,130,4,56,4,2,130,130,68, + 56,8,12,12,9,0,0,12,20,20,36,36,68,68,132,255, + 4,4,4,7,12,12,9,1,0,62,32,32,64,120,68,2, + 2,2,130,68,56,7,12,12,9,1,0,60,66,130,128,184, + 196,130,130,130,130,68,56,8,12,12,9,0,0,255,1,2, + 4,4,8,8,16,16,16,32,32,7,12,12,9,1,0,56, + 68,130,130,68,56,68,130,130,130,68,56,7,12,12,9,1, + 0,56,68,130,130,130,130,70,58,2,130,132,120,1,9,9, + 4,2,0,128,128,0,0,0,0,0,128,128,2,11,11,4, + 1,254,64,64,0,0,0,0,0,64,64,64,128,9,9,18, + 10,0,0,1,128,6,0,24,0,96,0,128,0,96,0,24, + 0,6,0,1,128,8,4,4,10,0,2,255,0,0,255,9, + 9,18,10,1,0,192,0,48,0,12,0,3,0,0,128,3, + 0,12,0,48,0,192,0,7,12,12,9,1,0,56,68,130, + 130,2,4,8,16,16,0,16,16,13,14,28,17,1,254,7, + 128,24,96,32,16,67,208,76,72,136,72,144,136,144,136,144, + 144,153,144,78,96,64,0,48,96,15,128,10,12,24,11,0, + 0,12,0,12,0,18,0,18,0,18,0,33,0,33,0,127, + 128,64,128,64,128,128,64,128,64,9,12,24,11,1,0,252, + 0,130,0,129,0,129,0,130,0,254,0,129,0,128,128,128, + 128,128,128,129,0,254,0,10,12,24,12,1,0,15,0,48, + 128,64,64,64,0,128,0,128,0,128,0,128,0,64,0,64, + 64,48,128,15,0,10,12,24,12,1,0,252,0,131,0,128, + 128,128,128,128,64,128,64,128,64,128,64,128,128,128,128,131, + 0,252,0,8,12,12,11,1,0,255,128,128,128,128,255,128, + 128,128,128,128,255,7,12,12,10,1,0,254,128,128,128,128, + 254,128,128,128,128,128,128,10,12,24,13,1,0,14,0,49, + 128,64,64,64,0,128,0,128,0,135,192,128,64,64,64,64, + 192,49,64,14,64,9,12,24,12,1,0,128,128,128,128,128, + 128,128,128,128,128,255,128,128,128,128,128,128,128,128,128,128, + 128,128,128,1,12,12,4,1,0,128,128,128,128,128,128,128, + 128,128,128,128,128,6,12,12,8,0,0,4,4,4,4,4, + 4,4,4,132,132,132,120,8,12,12,11,1,0,129,130,132, + 136,144,176,200,136,132,130,130,129,7,12,12,9,1,0,128, + 128,128,128,128,128,128,128,128,128,128,254,11,12,24,13,1, + 0,128,32,192,96,192,96,160,160,160,160,160,160,145,32,145, + 32,145,32,138,32,138,32,132,32,9,12,24,12,1,0,128, + 128,192,128,160,128,160,128,144,128,136,128,136,128,132,128,130, + 128,130,128,129,128,128,128,11,12,24,13,1,0,14,0,49, + 128,64,64,64,64,128,32,128,32,128,32,128,32,64,64,64, + 64,49,128,14,0,8,12,12,11,2,0,252,130,129,129,130, + 252,128,128,128,128,128,128,11,13,26,13,1,255,14,0,49, + 128,64,64,64,64,128,32,128,32,128,32,128,32,64,64,66, + 64,49,128,14,128,0,64,9,12,24,12,2,0,252,0,130, + 0,129,0,129,0,130,0,252,0,130,0,129,0,129,0,129, + 0,129,0,128,128,9,12,24,11,1,0,62,0,65,0,128, + 128,128,128,64,0,48,0,14,0,1,0,128,128,128,128,65, + 0,62,0,9,12,24,10,0,0,255,128,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,9,12,24,12,1,0,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,65,0,62,0,10, + 12,24,11,0,0,128,64,128,64,64,128,64,128,64,128,33, + 0,33,0,18,0,18,0,18,0,12,0,12,0,13,12,24, + 15,1,0,130,8,130,8,130,8,69,16,69,16,69,16,40, + 160,40,160,40,160,16,64,16,64,16,64,8,12,12,11,1, + 0,129,66,66,36,36,24,24,36,36,66,66,129,9,12,24, + 11,1,0,128,128,65,0,65,0,34,0,34,0,20,0,28, + 0,8,0,8,0,8,0,8,0,8,0,9,12,24,10,0, + 0,127,128,1,0,3,0,2,0,4,0,12,0,8,0,16, + 0,48,0,32,0,64,0,255,128,3,15,15,5,1,253,224, + 128,128,128,128,128,128,128,128,128,128,128,128,128,224,4,12, + 12,5,0,0,128,128,64,64,64,64,32,32,32,16,16,16, + 3,15,15,5,0,253,224,32,32,32,32,32,32,32,32,32, + 32,32,32,32,224,7,7,7,8,0,5,16,40,40,68,68, + 130,130,9,1,2,9,0,253,255,128,3,3,3,6,0,10, + 128,192,32,8,9,9,9,1,0,124,130,2,6,122,130,130, + 134,123,7,12,12,9,1,0,128,128,128,184,196,130,130,130, + 130,130,196,184,7,9,9,8,1,0,56,68,130,128,128,128, + 130,68,56,7,12,12,9,1,0,2,2,2,58,70,130,130, + 130,130,130,70,58,7,9,9,9,1,0,56,68,130,130,254, + 128,130,68,56,4,12,12,5,1,0,48,64,64,240,64,64, + 64,64,64,64,64,64,7,13,13,9,1,252,58,70,130,130, + 130,130,130,70,58,2,130,132,120,7,12,12,9,1,0,128, + 128,128,188,194,130,130,130,130,130,130,130,1,12,12,3,1, + 0,128,128,0,128,128,128,128,128,128,128,128,128,3,16,16, + 4,255,252,32,32,0,32,32,32,32,32,32,32,32,32,32, + 32,32,192,7,12,12,8,0,0,128,128,128,132,136,144,160, + 224,144,136,132,130,1,12,12,3,1,0,128,128,128,128,128, + 128,128,128,128,128,128,128,11,9,18,14,2,0,185,192,198, + 32,132,32,132,32,132,32,132,32,132,32,132,32,132,32,7, + 9,9,9,1,0,188,194,130,130,130,130,130,130,130,7,9, + 9,9,1,0,56,68,130,130,130,130,130,68,56,7,13,13, + 9,1,252,184,196,130,130,130,130,130,196,184,128,128,128,128, + 7,13,13,9,1,252,58,70,130,130,130,130,130,70,58,2, + 2,2,2,4,9,9,5,1,0,176,192,128,128,128,128,128, + 128,128,6,9,9,8,1,0,120,132,132,192,48,12,132,132, + 120,4,11,11,5,1,0,64,64,240,64,64,64,64,64,64, + 64,48,7,9,9,9,1,0,130,130,130,130,130,130,130,134, + 122,7,9,9,8,0,0,130,130,68,68,68,40,40,56,16, + 11,9,18,12,0,0,132,32,132,32,68,64,78,64,74,64, + 42,128,42,128,17,0,17,0,7,9,9,8,0,0,130,68, + 68,40,16,40,68,68,130,7,12,12,8,0,253,130,130,68, + 68,40,40,56,16,16,32,32,192,6,9,9,8,1,0,252, + 4,8,16,32,32,64,128,252,3,16,16,6,1,252,32,64, + 64,64,64,64,64,128,64,64,64,64,64,64,64,32,1,16, + 16,4,1,252,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,3,16,16,6,1,252,128,64,64,64,64,64, + 64,32,64,64,64,64,64,64,64,128,8,2,2,10,1,4, + 113,142,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,5,0,1,1,12,12,6,2,253,128, + 128,0,128,128,128,128,128,128,128,128,128,7,13,13,9,1, + 254,4,4,56,76,138,144,144,144,162,100,56,64,64,8,12, + 12,9,0,0,14,17,33,32,32,16,126,8,16,32,121,134, + 8,7,7,9,0,3,189,102,66,66,66,102,189,9,12,24, + 9,0,0,128,128,65,0,65,0,34,0,34,0,20,0,127, + 0,8,0,127,0,8,0,8,0,8,0,1,16,16,4,1, + 252,128,128,128,128,128,128,0,0,0,0,128,128,128,128,128, + 128,7,15,15,9,1,253,56,68,70,96,152,140,134,194,98, + 50,28,4,196,68,56,3,2,2,5,1,10,160,160,12,12, + 24,12,0,0,15,0,48,192,71,32,72,160,144,16,144,16, + 144,16,144,16,72,160,71,32,48,192,15,0,5,7,7,6, + 1,5,96,144,112,144,120,0,248,6,6,6,9,1,2,36, + 72,144,144,72,36,8,5,5,10,0,1,255,1,1,1,1, + 4,1,1,5,0,4,240,12,12,24,12,0,0,15,0,48, + 192,64,32,79,32,136,144,136,144,143,16,138,16,73,32,72, + 160,48,192,15,0,5,1,1,6,0,10,248,5,5,5,7, + 1,7,112,136,136,136,112,9,11,22,10,0,0,8,0,8, + 0,8,0,8,0,255,128,8,0,8,0,8,0,8,0,0, + 0,255,128,5,7,7,6,0,5,112,136,136,16,96,128,248, + 5,7,7,6,0,5,112,136,8,48,8,136,112,3,3,3, + 6,1,10,32,96,128,7,13,13,9,1,252,130,130,130,130, + 130,130,130,134,250,128,128,128,128,7,15,15,9,1,253,62, + 116,244,244,244,244,116,52,20,20,20,20,20,20,20,1,2, + 2,5,2,4,128,128,4,4,4,6,0,252,32,32,144,96, + 3,7,7,6,0,5,32,224,32,32,32,32,32,4,7,7, + 6,1,5,96,144,144,144,96,0,240,6,6,6,9,1,2, + 144,72,36,36,72,144,12,12,24,14,0,0,32,64,224,128, + 32,128,33,0,34,0,34,32,36,96,4,160,9,32,17,240, + 16,32,32,32,12,13,26,14,0,0,0,64,32,128,224,128, + 33,0,34,0,34,0,36,224,37,16,9,16,8,32,16,192, + 33,0,33,240,13,12,24,14,0,0,112,64,136,64,8,128, + 48,128,9,0,137,16,114,48,2,80,4,144,4,248,8,16, + 8,16,7,12,12,10,1,253,16,16,0,16,16,32,64,128, + 130,130,68,56,10,16,32,11,0,0,16,0,24,0,4,0, + 0,0,12,0,12,0,18,0,18,0,18,0,33,0,33,0, + 127,128,64,128,64,128,128,64,128,64,10,16,32,11,0,0, + 2,0,6,0,8,0,0,0,12,0,12,0,18,0,18,0, + 18,0,33,0,33,0,127,128,64,128,64,128,128,64,128,64, + 10,16,32,11,0,0,4,0,14,0,17,0,0,0,12,0, + 12,0,18,0,18,0,18,0,33,0,33,0,127,128,64,128, + 64,128,128,64,128,64,10,15,30,11,0,0,26,0,44,0, + 0,0,12,0,12,0,18,0,18,0,18,0,33,0,33,0, + 127,128,64,128,64,128,128,64,128,64,10,15,30,11,0,0, + 18,0,18,0,0,0,12,0,12,0,18,0,18,0,18,0, + 33,0,33,0,127,128,64,128,64,128,128,64,128,64,10,15, + 30,11,0,0,12,0,18,0,18,0,12,0,12,0,18,0, + 18,0,18,0,33,0,33,0,127,128,64,128,64,128,128,64, + 128,64,14,12,24,16,0,0,7,252,9,0,9,0,17,0, + 17,0,33,252,33,0,127,0,65,0,65,0,129,0,129,252, + 10,16,32,12,1,252,15,0,48,128,64,64,64,0,128,0, + 128,0,128,0,128,0,64,0,64,64,48,128,15,0,4,0, + 4,0,18,0,12,0,8,16,16,11,1,0,32,48,8,0, + 255,128,128,128,128,255,128,128,128,128,128,255,8,16,16,11, + 1,0,4,12,16,0,255,128,128,128,128,255,128,128,128,128, + 128,255,8,16,16,11,1,0,16,56,68,0,255,128,128,128, + 128,255,128,128,128,128,128,255,8,15,15,11,1,0,36,36, + 0,255,128,128,128,128,255,128,128,128,128,128,255,3,16,16, + 4,0,0,128,192,32,0,64,64,64,64,64,64,64,64,64, + 64,64,64,3,16,16,4,0,0,32,96,128,0,64,64,64, + 64,64,64,64,64,64,64,64,64,5,16,16,4,255,0,32, + 112,136,0,32,32,32,32,32,32,32,32,32,32,32,32,3, + 15,15,4,0,0,160,160,0,64,64,64,64,64,64,64,64, + 64,64,64,64,12,12,24,12,0,0,63,0,32,192,32,32, + 32,32,32,16,248,16,32,16,32,16,32,32,32,32,32,192, + 63,0,9,15,30,12,1,0,26,0,44,0,0,0,128,128, + 192,128,160,128,160,128,144,128,136,128,136,128,132,128,130,128, + 130,128,129,128,128,128,11,16,32,13,1,0,8,0,12,0, + 2,0,0,0,14,0,49,128,64,64,64,64,128,32,128,32, + 128,32,128,32,64,64,64,64,49,128,14,0,11,16,32,13, + 1,0,1,0,3,0,4,0,0,0,14,0,49,128,64,64, + 64,64,128,32,128,32,128,32,128,32,64,64,64,64,49,128, + 14,0,11,16,32,13,1,0,4,0,14,0,17,0,0,0, + 14,0,49,128,64,64,64,64,128,32,128,32,128,32,128,32, + 64,64,64,64,49,128,14,0,11,15,30,13,1,0,13,0, + 22,0,0,0,14,0,49,128,64,64,64,64,128,32,128,32, + 128,32,128,32,64,64,64,64,49,128,14,0,11,15,30,13, + 1,0,17,0,17,0,0,0,14,0,49,128,64,64,64,64, + 128,32,128,32,128,32,128,32,64,64,64,64,49,128,14,0, + 8,8,8,10,1,0,129,66,36,24,24,36,66,129,11,14, + 28,13,1,255,0,64,14,128,49,128,65,64,66,64,130,32, + 132,32,132,32,136,32,72,64,80,64,49,128,46,0,64,0, + 9,16,32,12,1,0,32,0,48,0,8,0,0,0,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,65,0,62,0,9,16,32,12,1,0,2,0,6,0, + 8,0,0,0,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,65,0,62,0,9,16,32,12, + 1,0,8,0,28,0,34,0,0,0,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,65,0, + 62,0,9,15,30,12,1,0,34,0,34,0,0,0,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,65,0,62,0,9,16,32,11,1,0,2,0,6,0, + 8,0,0,0,128,128,65,0,65,0,34,0,34,0,20,0, + 28,0,8,0,8,0,8,0,8,0,8,0,8,12,12,11, + 2,0,128,128,252,130,129,129,130,252,128,128,128,128,7,12, + 12,10,2,0,120,132,130,130,132,188,134,130,130,130,132,184, + 8,13,13,9,1,0,32,48,8,0,124,130,2,6,122,130, + 130,134,123,8,13,13,9,1,0,4,12,16,0,124,130,2, + 6,122,130,130,134,123,8,13,13,9,1,0,16,56,68,0, + 124,130,2,6,122,130,130,134,123,8,12,12,9,1,0,52, + 88,0,124,130,2,6,122,130,130,134,123,8,12,12,9,1, + 0,40,40,0,124,130,2,6,122,130,130,134,123,8,13,13, + 9,1,0,16,40,16,0,124,130,2,6,122,130,130,134,123, + 13,9,18,15,1,0,124,224,131,16,2,8,6,8,123,248, + 130,0,130,8,135,16,120,224,7,13,13,8,1,252,56,68, + 130,128,128,128,130,68,56,16,16,72,48,7,13,13,9,1, + 0,64,96,16,0,56,68,130,130,254,128,130,68,56,7,13, + 13,9,1,0,8,24,32,0,56,68,130,130,254,128,130,68, + 56,7,13,13,9,1,0,16,56,68,0,56,68,130,130,254, + 128,130,68,56,7,12,12,9,1,0,40,40,0,56,68,130, + 130,254,128,130,68,56,3,13,13,4,1,0,128,192,32,0, + 64,64,64,64,64,64,64,64,64,3,13,13,4,1,0,32, + 96,128,0,64,64,64,64,64,64,64,64,64,5,13,13,4, + 0,0,32,112,136,0,32,32,32,32,32,32,32,32,32,3, + 12,12,4,1,0,160,160,0,64,64,64,64,64,64,64,64, + 64,7,12,12,9,1,0,72,48,88,60,68,130,130,130,130, + 130,68,56,7,12,12,9,1,0,52,88,0,188,194,130,130, + 130,130,130,130,130,7,13,13,9,1,0,32,48,8,0,56, + 68,130,130,130,130,130,68,56,7,13,13,9,1,0,8,24, + 32,0,56,68,130,130,130,130,130,68,56,7,13,13,9,1, + 0,16,56,68,0,56,68,130,130,130,130,130,68,56,7,12, + 12,9,1,0,52,88,0,56,68,130,130,130,130,130,68,56, + 7,12,12,9,1,0,40,40,0,56,68,130,130,130,130,130, + 68,56,7,9,9,10,1,0,16,16,0,0,254,0,0,16, + 16,7,10,10,10,1,0,2,60,68,138,146,146,162,162,68, + 184,7,13,13,9,1,0,32,48,8,0,130,130,130,130,130, + 130,130,134,122,7,13,13,9,1,0,4,12,16,0,130,130, + 130,130,130,130,130,134,122,7,13,13,9,1,0,16,56,68, + 0,130,130,130,130,130,130,130,134,122,7,12,12,9,1,0, + 40,40,0,130,130,130,130,130,130,130,134,122,7,16,16,8, + 0,253,8,24,32,0,130,130,68,68,40,40,56,16,16,32, + 32,192,7,16,16,9,1,252,128,128,128,184,196,130,130,130, + 130,130,196,184,128,128,128,128,7,15,15,8,0,253,40,40, + 0,130,130,68,68,40,40,56,16,16,32,32,192}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--17-120-100-100-P-88-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=13 h=16 x= 3 y=10 dx=17 dy= 0 ascent=13 len=28 + Font Bounding box w=20 h=26 x=-2 y=-6 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =12 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR12r[1907] U8G_SECTION(".progmem.u8g_font_helvR12r") = { + 0,20,26,254,250,12,2,91,5,99,32,127,252,13,252,12, + 252,0,0,0,5,0,1,1,12,12,5,2,0,128,128,128, + 128,128,128,128,128,128,0,128,128,4,4,4,6,1,8,144, + 144,144,144,8,11,11,9,0,0,18,18,18,127,36,36,36, + 254,72,72,72,7,15,15,9,1,254,16,124,146,146,144,80, + 48,24,20,18,146,146,124,16,16,12,12,24,14,0,0,112, + 64,136,128,136,128,137,0,114,0,2,0,4,0,4,224,9, + 16,17,16,17,16,32,224,10,12,24,11,0,0,24,0,36, + 0,66,0,66,0,36,0,24,0,41,0,69,0,130,0,131, + 0,68,128,56,64,2,4,4,3,0,8,192,192,64,64,3, + 16,16,6,1,252,32,64,64,64,128,128,128,128,128,128,128, + 128,64,64,64,32,3,16,16,6,1,252,128,64,64,64,32, + 32,32,32,32,32,32,32,64,64,64,128,5,5,5,6,0, + 7,32,168,112,80,136,9,9,18,10,0,0,8,0,8,0, + 8,0,8,0,255,128,8,0,8,0,8,0,8,0,2,4, + 4,4,1,254,64,64,64,128,4,1,1,5,0,4,240,1, + 2,2,4,2,0,128,128,4,12,12,5,0,0,16,16,32, + 32,32,32,64,64,64,128,128,128,7,12,12,9,1,0,56, + 68,68,130,130,130,130,130,130,68,68,56,3,12,12,9,3, + 0,32,32,96,160,32,32,32,32,32,32,32,32,7,12,12, + 9,1,0,56,68,130,130,2,4,8,48,64,128,128,254,7, + 12,12,9,1,0,56,68,130,130,4,56,4,2,130,130,68, + 56,8,12,12,9,0,0,12,20,20,36,36,68,68,132,255, + 4,4,4,7,12,12,9,1,0,62,32,32,64,120,68,2, + 2,2,130,68,56,7,12,12,9,1,0,60,66,130,128,184, + 196,130,130,130,130,68,56,8,12,12,9,0,0,255,1,2, + 4,4,8,8,16,16,16,32,32,7,12,12,9,1,0,56, + 68,130,130,68,56,68,130,130,130,68,56,7,12,12,9,1, + 0,56,68,130,130,130,130,70,58,2,130,132,120,1,9,9, + 4,2,0,128,128,0,0,0,0,0,128,128,2,11,11,4, + 1,254,64,64,0,0,0,0,0,64,64,64,128,9,9,18, + 10,0,0,1,128,6,0,24,0,96,0,128,0,96,0,24, + 0,6,0,1,128,8,4,4,10,0,2,255,0,0,255,9, + 9,18,10,1,0,192,0,48,0,12,0,3,0,0,128,3, + 0,12,0,48,0,192,0,7,12,12,9,1,0,56,68,130, + 130,2,4,8,16,16,0,16,16,13,14,28,17,1,254,7, + 128,24,96,32,16,67,208,76,72,136,72,144,136,144,136,144, + 144,153,144,78,96,64,0,48,96,15,128,10,12,24,11,0, + 0,12,0,12,0,18,0,18,0,18,0,33,0,33,0,127, + 128,64,128,64,128,128,64,128,64,9,12,24,11,1,0,252, + 0,130,0,129,0,129,0,130,0,254,0,129,0,128,128,128, + 128,128,128,129,0,254,0,10,12,24,12,1,0,15,0,48, + 128,64,64,64,0,128,0,128,0,128,0,128,0,64,0,64, + 64,48,128,15,0,10,12,24,12,1,0,252,0,131,0,128, + 128,128,128,128,64,128,64,128,64,128,64,128,128,128,128,131, + 0,252,0,8,12,12,11,1,0,255,128,128,128,128,255,128, + 128,128,128,128,255,7,12,12,10,1,0,254,128,128,128,128, + 254,128,128,128,128,128,128,10,12,24,13,1,0,14,0,49, + 128,64,64,64,0,128,0,128,0,135,192,128,64,64,64,64, + 192,49,64,14,64,9,12,24,12,1,0,128,128,128,128,128, + 128,128,128,128,128,255,128,128,128,128,128,128,128,128,128,128, + 128,128,128,1,12,12,4,1,0,128,128,128,128,128,128,128, + 128,128,128,128,128,6,12,12,8,0,0,4,4,4,4,4, + 4,4,4,132,132,132,120,8,12,12,11,1,0,129,130,132, + 136,144,176,200,136,132,130,130,129,7,12,12,9,1,0,128, + 128,128,128,128,128,128,128,128,128,128,254,11,12,24,13,1, + 0,128,32,192,96,192,96,160,160,160,160,160,160,145,32,145, + 32,145,32,138,32,138,32,132,32,9,12,24,12,1,0,128, + 128,192,128,160,128,160,128,144,128,136,128,136,128,132,128,130, + 128,130,128,129,128,128,128,11,12,24,13,1,0,14,0,49, + 128,64,64,64,64,128,32,128,32,128,32,128,32,64,64,64, + 64,49,128,14,0,8,12,12,11,2,0,252,130,129,129,130, + 252,128,128,128,128,128,128,11,13,26,13,1,255,14,0,49, + 128,64,64,64,64,128,32,128,32,128,32,128,32,64,64,66, + 64,49,128,14,128,0,64,9,12,24,12,2,0,252,0,130, + 0,129,0,129,0,130,0,252,0,130,0,129,0,129,0,129, + 0,129,0,128,128,9,12,24,11,1,0,62,0,65,0,128, + 128,128,128,64,0,48,0,14,0,1,0,128,128,128,128,65, + 0,62,0,9,12,24,10,0,0,255,128,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,9,12,24,12,1,0,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,65,0,62,0,10, + 12,24,11,0,0,128,64,128,64,64,128,64,128,64,128,33, + 0,33,0,18,0,18,0,18,0,12,0,12,0,13,12,24, + 15,1,0,130,8,130,8,130,8,69,16,69,16,69,16,40, + 160,40,160,40,160,16,64,16,64,16,64,8,12,12,11,1, + 0,129,66,66,36,36,24,24,36,36,66,66,129,9,12,24, + 11,1,0,128,128,65,0,65,0,34,0,34,0,20,0,28, + 0,8,0,8,0,8,0,8,0,8,0,9,12,24,10,0, + 0,127,128,1,0,3,0,2,0,4,0,12,0,8,0,16, + 0,48,0,32,0,64,0,255,128,3,15,15,5,1,253,224, + 128,128,128,128,128,128,128,128,128,128,128,128,128,224,4,12, + 12,5,0,0,128,128,64,64,64,64,32,32,32,16,16,16, + 3,15,15,5,0,253,224,32,32,32,32,32,32,32,32,32, + 32,32,32,32,224,7,7,7,8,0,5,16,40,40,68,68, + 130,130,9,1,2,9,0,253,255,128,3,3,3,6,0,10, + 128,192,32,8,9,9,9,1,0,124,130,2,6,122,130,130, + 134,123,7,12,12,9,1,0,128,128,128,184,196,130,130,130, + 130,130,196,184,7,9,9,8,1,0,56,68,130,128,128,128, + 130,68,56,7,12,12,9,1,0,2,2,2,58,70,130,130, + 130,130,130,70,58,7,9,9,9,1,0,56,68,130,130,254, + 128,130,68,56,4,12,12,5,1,0,48,64,64,240,64,64, + 64,64,64,64,64,64,7,13,13,9,1,252,58,70,130,130, + 130,130,130,70,58,2,130,132,120,7,12,12,9,1,0,128, + 128,128,188,194,130,130,130,130,130,130,130,1,12,12,3,1, + 0,128,128,0,128,128,128,128,128,128,128,128,128,3,16,16, + 4,255,252,32,32,0,32,32,32,32,32,32,32,32,32,32, + 32,32,192,7,12,12,8,0,0,128,128,128,132,136,144,160, + 224,144,136,132,130,1,12,12,3,1,0,128,128,128,128,128, + 128,128,128,128,128,128,128,11,9,18,14,2,0,185,192,198, + 32,132,32,132,32,132,32,132,32,132,32,132,32,132,32,7, + 9,9,9,1,0,188,194,130,130,130,130,130,130,130,7,9, + 9,9,1,0,56,68,130,130,130,130,130,68,56,7,13,13, + 9,1,252,184,196,130,130,130,130,130,196,184,128,128,128,128, + 7,13,13,9,1,252,58,70,130,130,130,130,130,70,58,2, + 2,2,2,4,9,9,5,1,0,176,192,128,128,128,128,128, + 128,128,6,9,9,8,1,0,120,132,132,192,48,12,132,132, + 120,4,11,11,5,1,0,64,64,240,64,64,64,64,64,64, + 64,48,7,9,9,9,1,0,130,130,130,130,130,130,130,134, + 122,7,9,9,8,0,0,130,130,68,68,68,40,40,56,16, + 11,9,18,12,0,0,132,32,132,32,68,64,78,64,74,64, + 42,128,42,128,17,0,17,0,7,9,9,8,0,0,130,68, + 68,40,16,40,68,68,130,7,12,12,8,0,253,130,130,68, + 68,40,40,56,16,16,32,32,192,6,9,9,8,1,0,252, + 4,8,16,32,32,64,128,252,3,16,16,6,1,252,32,64, + 64,64,64,64,64,128,64,64,64,64,64,64,64,32,1,16, + 16,4,1,252,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,3,16,16,6,1,252,128,64,64,64,64,64, + 64,32,64,64,64,64,64,64,64,128,8,2,2,10,1,4, + 113,142,255}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--20-140-100-100-P-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 13 + Calculated Max Values w=16 h=18 x= 2 y=12 dx=18 dy= 0 ascent=18 len=36 + Font Bounding box w=22 h=29 x=-2 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =18 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR14[4920] U8G_SECTION(".progmem.u8g_font_helvR14") = { + 0,22,29,254,249,14,2,149,6,82,32,255,252,18,252,14, + 252,0,0,0,5,0,1,2,14,14,6,2,0,192,192,192, + 192,192,192,192,192,128,128,0,0,192,192,5,5,5,5,0, + 9,216,216,216,216,216,10,13,26,10,0,0,9,0,9,0, + 9,0,127,192,127,192,18,0,18,0,18,0,255,128,255,128, + 36,0,36,0,36,0,9,16,32,10,1,254,8,0,62,0, + 127,0,203,0,200,0,232,0,120,0,62,0,15,0,9,128, + 201,128,235,128,127,0,62,0,8,0,8,0,14,13,26,16, + 1,0,120,96,204,192,204,192,205,128,205,128,123,0,3,0, + 6,120,6,204,12,204,12,204,24,204,24,120,12,13,26,13, + 1,0,60,0,126,0,102,0,102,0,60,0,124,0,238,192, + 198,192,195,192,195,128,231,192,126,224,60,112,1,5,5,3, + 1,9,128,128,128,128,128,4,18,18,6,0,252,16,48,96, + 96,192,192,192,192,192,192,192,192,192,192,96,96,48,16,4, + 18,18,6,1,252,128,192,96,96,48,48,48,48,48,48,48, + 48,48,48,96,96,192,128,5,7,7,7,1,7,32,168,248, + 32,248,168,32,8,10,10,10,1,0,24,24,24,24,255,255, + 24,24,24,24,2,5,5,5,1,253,192,192,64,64,128,5, + 1,1,6,0,5,248,2,2,2,5,1,0,192,192,5,14, + 14,5,0,0,24,24,24,24,48,48,48,96,96,96,192,192, + 192,192,8,13,13,10,1,0,60,126,102,195,195,195,195,195, + 195,195,102,126,60,5,13,13,10,2,0,24,248,248,24,24, + 24,24,24,24,24,24,24,24,8,13,13,10,1,0,60,254, + 195,3,7,14,28,56,112,224,192,255,255,8,13,13,10,1, + 0,62,127,195,195,6,28,30,7,3,195,199,126,60,9,13, + 26,10,0,0,3,0,7,0,15,0,27,0,51,0,51,0, + 99,0,195,0,255,128,255,128,3,0,3,0,3,0,8,13, + 13,10,1,0,254,254,192,192,252,254,199,3,3,195,199,254, + 124,8,13,13,10,1,0,60,127,99,192,192,220,254,195,195, + 195,227,126,60,8,13,13,10,1,0,255,255,3,6,12,12, + 24,24,48,48,96,96,96,8,13,13,10,1,0,60,126,231, + 195,195,102,126,231,195,195,231,126,60,8,13,13,10,1,0, + 60,126,199,195,195,195,127,59,3,3,198,254,124,2,10,10, + 5,1,0,192,192,0,0,0,0,0,0,192,192,2,13,13, + 5,1,253,192,192,0,0,0,0,0,0,192,192,64,64,128, + 8,9,9,10,1,0,3,15,60,112,192,112,60,15,3,7, + 5,5,11,2,2,254,254,0,254,254,8,9,9,10,1,0, + 192,240,60,14,3,14,60,240,192,7,14,14,10,1,0,124, + 254,198,198,14,28,56,48,48,48,0,0,48,48,16,17,34, + 18,1,253,3,240,15,252,28,14,48,6,99,211,103,115,198, + 51,204,99,204,102,204,102,204,204,207,248,103,112,112,0,56, + 0,31,240,7,224,12,14,28,13,0,0,6,0,6,0,15, + 0,15,0,25,128,25,128,48,192,48,192,63,192,127,224,96, + 96,96,96,192,48,192,48,11,14,28,13,1,0,255,0,255, + 128,193,192,192,192,192,192,193,128,255,128,255,192,192,224,192, + 96,192,96,192,224,255,192,255,128,12,14,28,14,1,0,15, + 128,63,224,112,112,96,48,224,0,192,0,192,0,192,0,192, + 0,224,0,96,48,112,112,63,224,15,128,12,14,28,14,1, + 0,255,128,255,192,192,224,192,96,192,48,192,48,192,48,192, + 48,192,48,192,48,192,96,192,224,255,192,255,128,10,14,28, + 13,2,0,255,192,255,192,192,0,192,0,192,0,192,0,255, + 128,255,128,192,0,192,0,192,0,192,0,255,192,255,192,9, + 14,28,12,2,0,255,128,255,128,192,0,192,0,192,0,192, + 0,255,0,255,0,192,0,192,0,192,0,192,0,192,0,192, + 0,13,14,28,15,1,0,15,192,63,240,112,56,96,24,224, + 24,192,0,192,0,192,248,192,248,224,24,96,24,112,56,63, + 248,15,216,11,14,28,14,1,0,192,96,192,96,192,96,192, + 96,192,96,192,96,255,224,255,224,192,96,192,96,192,96,192, + 96,192,96,192,96,2,14,14,6,2,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,8,14,14,10,0,0,3, + 3,3,3,3,3,3,3,3,195,195,231,126,60,12,14,28, + 13,2,0,192,224,193,192,195,128,199,0,206,0,220,0,248, + 0,252,0,206,0,199,0,195,128,193,192,192,224,192,112,9, + 14,28,11,1,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,255,128,255, + 128,14,14,28,16,1,0,192,12,192,12,224,28,224,28,240, + 60,240,60,216,108,216,108,204,204,204,204,196,140,199,140,195, + 12,195,12,11,14,28,14,1,0,192,96,224,96,240,96,240, + 96,216,96,204,96,204,96,198,96,198,96,195,96,193,224,193, + 224,192,224,192,96,13,14,28,15,1,0,15,128,63,224,112, + 112,96,48,224,56,192,24,192,24,192,24,192,24,224,56,96, + 48,112,112,63,224,15,128,10,14,28,13,2,0,255,0,255, + 128,193,192,192,192,192,192,193,192,255,128,255,0,192,0,192, + 0,192,0,192,0,192,0,192,0,13,15,30,15,1,255,15, + 128,63,224,112,112,96,48,224,56,192,24,192,24,192,24,192, + 24,225,184,97,176,112,240,63,224,15,176,0,48,11,14,28, + 14,1,0,255,128,255,192,192,224,192,96,192,96,192,224,255, + 192,255,128,192,192,192,192,192,96,192,96,192,96,192,96,10, + 14,28,13,1,0,30,0,127,128,225,192,192,192,224,0,124, + 0,31,0,3,128,1,192,0,192,192,192,225,192,127,128,63, + 0,10,14,28,12,1,0,255,192,255,192,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,11,14,28,14,1,0,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,96,96, + 192,127,192,31,0,12,14,28,13,0,0,192,48,192,48,96, + 96,96,96,96,96,48,192,48,192,48,192,25,128,25,128,25, + 128,15,0,15,0,6,0,16,14,28,18,1,0,193,131,193, + 131,193,131,195,195,99,198,98,70,102,102,102,102,54,108,54, + 108,52,44,28,56,24,24,24,24,11,14,28,13,1,0,192, + 96,192,96,96,192,113,192,49,128,27,0,14,0,14,0,27, + 0,49,128,113,192,96,192,192,96,192,96,12,14,28,13,0, + 0,192,48,192,48,96,96,96,96,48,192,57,192,25,128,15, + 0,6,0,6,0,6,0,6,0,6,0,6,0,10,14,28, + 12,1,0,255,192,255,192,0,192,1,128,3,0,6,0,12, + 0,28,0,24,0,48,0,96,0,192,0,255,192,255,192,4, + 18,18,5,0,252,240,240,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,240,240,5,14,14,5,0,0,192,192,192, + 96,96,96,48,48,48,48,24,24,24,24,4,18,18,5,0, + 252,240,240,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,240,240,7,6,6,9,1,7,16,56,108,108,198,198,11, + 2,4,11,0,252,255,224,255,224,4,3,3,4,0,11,192, + 96,48,9,10,20,11,1,0,126,0,231,0,195,0,7,0, + 127,0,227,0,195,0,195,0,231,128,121,128,9,14,28,11, + 1,0,192,0,192,0,192,0,192,0,222,0,255,0,227,0, + 193,128,193,128,193,128,193,128,227,0,255,0,222,0,8,10, + 10,10,1,0,62,127,99,192,192,192,192,99,127,62,9,14, + 28,11,1,0,1,128,1,128,1,128,1,128,61,128,127,128, + 99,128,193,128,193,128,193,128,193,128,99,128,127,128,61,128, + 8,10,10,10,1,0,60,126,195,195,255,192,192,227,127,60, + 6,14,14,6,0,0,28,60,48,48,252,252,48,48,48,48, + 48,48,48,48,9,14,28,11,1,252,61,128,127,128,97,128, + 193,128,193,128,193,128,193,128,99,128,127,128,61,128,1,128, + 99,0,127,0,28,0,8,14,14,10,1,0,192,192,192,192, + 222,255,227,195,195,195,195,195,195,195,2,14,14,4,1,0, + 192,192,0,0,192,192,192,192,192,192,192,192,192,192,4,18, + 18,4,255,252,48,48,0,0,48,48,48,48,48,48,48,48, + 48,48,48,48,240,224,8,14,14,9,1,0,192,192,192,192, + 198,204,216,240,248,216,204,206,198,199,2,14,14,4,1,0, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,14,10, + 20,16,1,0,222,120,255,252,227,140,195,12,195,12,195,12, + 195,12,195,12,195,12,195,12,8,10,10,10,1,0,222,255, + 227,195,195,195,195,195,195,195,9,10,20,11,1,0,62,0, + 127,0,99,0,193,128,193,128,193,128,193,128,99,0,127,0, + 62,0,9,14,28,11,1,252,222,0,255,0,227,0,193,128, + 193,128,193,128,193,128,227,0,255,0,222,0,192,0,192,0, + 192,0,192,0,9,14,28,11,1,252,61,128,127,128,99,128, + 193,128,193,128,193,128,193,128,99,128,127,128,61,128,1,128, + 1,128,1,128,1,128,5,10,10,6,1,0,216,216,224,192, + 192,192,192,192,192,192,7,10,10,9,1,0,60,126,198,192, + 252,62,6,198,252,120,6,13,13,6,0,0,48,48,48,252, + 252,48,48,48,48,48,48,60,28,8,10,10,10,1,0,195, + 195,195,195,195,195,195,199,255,123,8,10,10,10,1,0,195, + 195,195,102,102,102,36,60,24,24,12,10,20,14,1,0,198, + 48,198,48,198,48,102,96,102,96,105,96,41,64,57,192,25, + 128,25,128,8,10,10,10,1,0,195,231,102,60,24,24,60, + 102,231,195,8,14,14,10,1,252,195,195,195,102,102,102,36, + 60,24,24,24,24,112,112,7,10,10,9,1,0,254,254,6, + 12,24,48,96,192,254,254,6,18,18,6,255,252,12,24,48, + 48,48,48,48,96,192,96,48,48,48,48,48,48,24,12,2, + 18,18,5,1,252,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,6,18,18,6,0,252,192,96,48, + 48,48,48,48,24,12,24,48,48,48,48,48,48,96,192,8, + 3,3,10,1,4,115,255,206,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,0,0,0,5,0,1,2, + 14,14,6,2,252,192,192,0,0,64,64,192,192,192,192,192, + 192,192,192,8,14,14,10,1,254,4,4,62,127,107,200,200, + 200,200,107,127,62,16,16,9,13,26,10,0,0,30,0,63, + 0,97,128,97,128,96,0,48,0,126,0,24,0,24,0,48, + 0,96,128,255,128,223,0,8,7,7,10,1,3,195,255,102, + 102,102,255,195,8,13,13,10,1,0,195,195,102,102,102,60, + 255,24,255,24,24,24,24,2,18,18,5,1,252,192,192,192, + 192,192,192,192,0,0,0,0,192,192,192,192,192,192,192,8, + 18,18,10,1,252,60,126,195,195,240,124,110,199,195,227,115, + 62,14,7,195,195,126,60,5,2,2,6,0,12,216,216,13, + 14,28,15,1,0,15,128,48,96,64,16,71,16,136,136,144, + 136,144,8,144,8,144,8,136,136,71,16,64,16,48,96,15, + 128,5,8,8,7,1,6,112,152,56,72,216,104,0,248,7, + 6,6,9,1,2,54,108,216,216,108,54,9,5,10,11,1, + 3,255,128,255,128,1,128,1,128,1,128,5,1,1,6,0, + 5,248,13,14,28,14,0,0,15,128,48,96,64,16,79,144, + 136,72,136,72,136,72,143,136,137,8,136,136,72,80,64,16, + 48,96,15,128,5,1,1,5,0,12,248,5,5,5,7,1, + 8,112,216,136,216,112,8,11,11,10,1,0,24,24,24,255, + 255,24,24,24,0,255,255,5,8,8,6,0,5,112,248,152, + 24,48,96,248,248,5,8,8,6,0,5,112,248,152,48,48, + 152,248,112,4,3,3,4,0,11,48,96,192,8,14,14,10, + 1,252,195,195,195,195,195,195,195,231,255,219,192,192,192,192, + 8,18,18,10,1,252,63,114,242,242,242,242,242,114,50,18, + 18,18,18,18,18,18,18,18,2,2,2,4,1,4,192,192, + 5,5,5,5,0,252,96,112,24,216,240,4,8,8,6,0, + 5,48,240,240,48,48,48,48,48,5,8,8,7,1,6,112, + 216,136,136,216,112,0,248,7,6,6,9,1,2,216,108,54, + 54,108,216,14,13,26,15,0,0,48,48,240,48,240,96,48, + 192,48,192,49,136,49,24,51,56,6,120,6,216,12,252,24, + 24,24,24,14,13,26,15,0,0,48,48,240,48,240,96,48, + 192,48,192,49,184,49,124,51,76,6,12,6,24,12,48,24, + 124,24,124,14,13,26,15,0,0,112,48,248,48,152,96,48, + 192,48,192,153,136,249,24,115,56,6,120,6,216,12,252,24, + 24,24,24,7,14,14,10,1,252,24,24,0,0,24,24,24, + 56,112,224,198,198,254,124,12,18,36,13,0,0,24,0,12, + 0,6,0,0,0,6,0,6,0,15,0,15,0,25,128,25, + 128,48,192,48,192,63,192,127,224,96,96,96,96,192,48,192, + 48,12,18,36,13,0,0,1,128,3,0,6,0,0,0,6, + 0,6,0,15,0,15,0,25,128,25,128,48,192,48,192,63, + 192,127,224,96,96,96,96,192,48,192,48,12,18,36,13,0, + 0,6,0,15,0,25,128,0,0,6,0,6,0,15,0,15, + 0,25,128,25,128,48,192,48,192,63,192,127,224,96,96,96, + 96,192,48,192,48,12,18,36,13,0,0,12,128,22,128,19, + 0,0,0,6,0,6,0,15,0,15,0,25,128,25,128,48, + 192,48,192,63,192,127,224,96,96,96,96,192,48,192,48,12, + 17,34,13,0,0,25,128,25,128,0,0,6,0,6,0,15, + 0,15,0,25,128,25,128,48,192,48,192,63,192,127,224,96, + 96,96,96,192,48,192,48,12,17,34,13,0,0,6,0,9, + 0,9,0,6,0,6,0,15,0,15,0,25,128,25,128,48, + 192,48,192,63,192,127,224,96,96,96,96,192,48,192,48,16, + 14,28,18,1,0,7,255,7,255,13,128,13,128,25,128,25, + 128,49,254,49,254,63,128,127,128,97,128,97,128,193,255,193, + 255,12,18,36,14,1,252,15,128,63,224,112,112,96,48,224, + 0,192,0,192,0,192,0,192,0,224,0,96,48,112,112,63, + 224,15,128,6,0,3,0,27,0,30,0,10,18,36,13,2, + 0,48,0,24,0,12,0,0,0,255,192,255,192,192,0,192, + 0,192,0,192,0,255,128,255,128,192,0,192,0,192,0,192, + 0,255,192,255,192,10,18,36,13,2,0,3,0,6,0,12, + 0,0,0,255,192,255,192,192,0,192,0,192,0,192,0,255, + 128,255,128,192,0,192,0,192,0,192,0,255,192,255,192,10, + 18,36,13,2,0,12,0,30,0,51,0,0,0,255,192,255, + 192,192,0,192,0,192,0,192,0,255,128,255,128,192,0,192, + 0,192,0,192,0,255,192,255,192,10,17,34,13,2,0,51, + 0,51,0,0,0,255,192,255,192,192,0,192,0,192,0,192, + 0,255,128,255,128,192,0,192,0,192,0,192,0,255,192,255, + 192,4,18,18,6,0,0,192,96,48,0,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,4,18,18,6,2,0,48, + 96,192,0,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,6,18,18,6,0,0,48,120,132,0,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,6,17,17,6,0,0,204, + 204,0,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 14,14,28,14,255,0,63,224,63,240,48,56,48,24,48,12, + 48,12,254,12,254,12,48,12,48,12,48,24,48,56,63,240, + 63,224,11,18,36,14,1,0,12,128,22,128,19,0,0,0, + 192,96,224,96,240,96,240,96,216,96,204,96,204,96,198,96, + 198,96,195,96,193,224,193,224,192,224,192,96,13,18,36,15, + 1,0,24,0,12,0,6,0,0,0,15,128,63,224,112,112, + 96,48,224,56,192,24,192,24,192,24,192,24,224,56,96,48, + 112,112,63,224,15,128,13,18,36,15,1,0,1,128,3,0, + 6,0,0,0,15,128,63,224,112,112,96,48,224,56,192,24, + 192,24,192,24,192,24,224,56,96,48,112,112,63,224,15,128, + 13,18,36,15,1,0,3,0,7,128,12,192,0,0,15,128, + 63,224,112,112,96,48,224,56,192,24,192,24,192,24,192,24, + 224,56,96,48,112,112,63,224,15,128,13,18,36,15,1,0, + 6,64,11,64,9,128,0,0,15,128,63,224,112,112,96,48, + 224,56,192,24,192,24,192,24,192,24,224,56,96,48,112,112, + 63,224,15,128,13,17,34,15,1,0,12,192,12,192,0,0, + 15,128,63,224,112,112,96,48,224,56,192,24,192,24,192,24, + 192,24,224,56,96,48,112,112,63,224,15,128,10,9,18,10, + 0,0,192,192,97,128,51,0,30,0,12,0,30,0,51,0, + 97,128,192,192,14,14,28,15,0,0,7,204,31,248,56,48, + 48,120,112,220,97,140,99,12,98,12,102,12,108,28,56,24, + 56,56,111,240,199,192,11,18,36,14,1,0,24,0,12,0, + 6,0,0,0,192,96,192,96,192,96,192,96,192,96,192,96, + 192,96,192,96,192,96,192,96,192,96,96,192,127,192,31,0, + 11,18,36,14,1,0,3,0,6,0,12,0,0,0,192,96, + 192,96,192,96,192,96,192,96,192,96,192,96,192,96,192,96, + 192,96,192,96,96,192,127,192,31,0,11,18,36,14,1,0, + 6,0,15,0,25,128,0,0,192,96,192,96,192,96,192,96, + 192,96,192,96,192,96,192,96,192,96,192,96,192,96,96,192, + 127,192,31,0,11,17,34,14,1,0,49,128,49,128,0,0, + 192,96,192,96,192,96,192,96,192,96,192,96,192,96,192,96, + 192,96,192,96,192,96,96,192,127,192,31,0,12,18,36,13, + 0,0,1,128,3,0,6,0,0,0,192,48,192,48,96,96, + 96,96,48,192,57,192,25,128,15,0,6,0,6,0,6,0, + 6,0,6,0,6,0,10,14,28,12,1,0,192,0,192,0, + 192,0,255,0,255,128,193,192,192,192,192,192,193,192,255,128, + 255,0,192,0,192,0,192,0,7,14,14,9,1,0,56,124, + 198,198,198,198,220,220,198,198,198,198,222,220,9,14,28,11, + 1,0,48,0,24,0,12,0,0,0,126,0,231,0,195,0, + 7,0,127,0,227,0,195,0,195,0,231,128,121,128,9,14, + 28,11,1,0,12,0,24,0,48,0,0,0,126,0,231,0, + 195,0,7,0,127,0,227,0,195,0,195,0,231,128,121,128, + 9,14,28,11,1,0,24,0,60,0,102,0,0,0,126,0, + 231,0,195,0,7,0,127,0,227,0,195,0,195,0,231,128, + 121,128,9,14,28,11,1,0,50,0,90,0,76,0,0,0, + 126,0,231,0,195,0,7,0,127,0,227,0,195,0,195,0, + 231,128,121,128,9,14,28,11,1,0,102,0,102,0,0,0, + 0,0,126,0,231,0,195,0,7,0,127,0,227,0,195,0, + 195,0,231,128,121,128,9,14,28,11,1,0,24,0,36,0, + 36,0,24,0,126,0,231,0,195,0,7,0,127,0,227,0, + 195,0,195,0,231,128,121,128,14,10,20,17,2,0,126,240, + 231,248,195,12,7,12,127,252,227,0,195,0,195,140,231,252, + 122,240,8,14,14,10,1,252,62,127,99,192,192,192,192,99, + 127,62,24,12,108,120,8,14,14,10,1,0,48,24,12,0, + 60,126,195,195,255,192,192,227,127,60,8,14,14,10,1,0, + 12,24,48,0,60,126,195,195,255,192,192,227,127,60,8,14, + 14,10,1,0,24,60,102,0,60,126,195,195,255,192,192,227, + 127,60,8,14,14,10,1,0,102,102,0,0,60,126,195,195, + 255,192,192,227,127,60,4,14,14,4,0,0,192,96,48,0, + 96,96,96,96,96,96,96,96,96,96,4,14,14,4,0,0, + 48,96,192,0,96,96,96,96,96,96,96,96,96,96,6,14, + 14,4,255,0,48,120,204,0,48,48,48,48,48,48,48,48, + 48,48,5,14,14,4,0,0,216,216,0,0,96,96,96,96, + 96,96,96,96,96,96,9,14,28,11,1,0,96,0,54,0, + 56,0,76,0,62,0,127,0,99,0,193,128,193,128,193,128, + 193,128,99,0,127,0,62,0,8,14,14,10,1,0,50,90, + 76,0,222,255,227,195,195,195,195,195,195,195,9,14,28,11, + 1,0,48,0,24,0,12,0,0,0,62,0,127,0,99,0, + 193,128,193,128,193,128,193,128,99,0,127,0,62,0,9,14, + 28,11,1,0,6,0,12,0,24,0,0,0,62,0,127,0, + 99,0,193,128,193,128,193,128,193,128,99,0,127,0,62,0, + 9,14,28,11,1,0,24,0,60,0,102,0,0,0,62,0, + 127,0,99,0,193,128,193,128,193,128,193,128,99,0,127,0, + 62,0,9,14,28,11,1,0,50,0,90,0,76,0,0,0, + 62,0,127,0,99,0,193,128,193,128,193,128,193,128,99,0, + 127,0,62,0,9,14,28,11,1,0,51,0,51,0,0,0, + 0,0,62,0,127,0,99,0,193,128,193,128,193,128,193,128, + 99,0,127,0,62,0,8,8,8,10,1,1,24,24,0,255, + 255,0,24,24,11,10,20,11,0,0,14,96,63,192,49,128, + 99,192,102,192,108,192,120,192,49,128,127,128,206,0,8,14, + 14,10,1,0,48,24,12,0,195,195,195,195,195,195,195,199, + 255,123,8,14,14,10,1,0,6,12,24,0,195,195,195,195, + 195,195,195,199,255,123,8,14,14,10,1,0,24,60,102,0, + 195,195,195,195,195,195,195,199,255,123,8,14,14,10,1,0, + 102,102,0,0,195,195,195,195,195,195,195,199,255,123,8,18, + 18,10,1,252,6,12,24,0,195,195,195,102,102,102,36,60, + 24,24,24,24,112,112,9,18,36,11,1,252,192,0,192,0, + 192,0,192,0,222,0,255,0,227,0,193,128,193,128,193,128, + 193,128,227,0,255,0,222,0,192,0,192,0,192,0,192,0, + 8,18,18,10,1,252,102,102,0,0,195,195,195,102,102,102, + 36,60,24,24,24,24,112,112}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--20-140-100-100-P-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 13 + Calculated Max Values w=16 h=18 x= 2 y=11 dx=18 dy= 0 ascent=14 len=34 + Font Bounding box w=22 h=29 x=-2 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =14 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR14r[2281] U8G_SECTION(".progmem.u8g_font_helvR14r") = { + 0,22,29,254,249,14,2,149,6,82,32,127,252,14,252,14, + 252,0,0,0,5,0,1,2,14,14,6,2,0,192,192,192, + 192,192,192,192,192,128,128,0,0,192,192,5,5,5,5,0, + 9,216,216,216,216,216,10,13,26,10,0,0,9,0,9,0, + 9,0,127,192,127,192,18,0,18,0,18,0,255,128,255,128, + 36,0,36,0,36,0,9,16,32,10,1,254,8,0,62,0, + 127,0,203,0,200,0,232,0,120,0,62,0,15,0,9,128, + 201,128,235,128,127,0,62,0,8,0,8,0,14,13,26,16, + 1,0,120,96,204,192,204,192,205,128,205,128,123,0,3,0, + 6,120,6,204,12,204,12,204,24,204,24,120,12,13,26,13, + 1,0,60,0,126,0,102,0,102,0,60,0,124,0,238,192, + 198,192,195,192,195,128,231,192,126,224,60,112,1,5,5,3, + 1,9,128,128,128,128,128,4,18,18,6,0,252,16,48,96, + 96,192,192,192,192,192,192,192,192,192,192,96,96,48,16,4, + 18,18,6,1,252,128,192,96,96,48,48,48,48,48,48,48, + 48,48,48,96,96,192,128,5,7,7,7,1,7,32,168,248, + 32,248,168,32,8,10,10,10,1,0,24,24,24,24,255,255, + 24,24,24,24,2,5,5,5,1,253,192,192,64,64,128,5, + 1,1,6,0,5,248,2,2,2,5,1,0,192,192,5,14, + 14,5,0,0,24,24,24,24,48,48,48,96,96,96,192,192, + 192,192,8,13,13,10,1,0,60,126,102,195,195,195,195,195, + 195,195,102,126,60,5,13,13,10,2,0,24,248,248,24,24, + 24,24,24,24,24,24,24,24,8,13,13,10,1,0,60,254, + 195,3,7,14,28,56,112,224,192,255,255,8,13,13,10,1, + 0,62,127,195,195,6,28,30,7,3,195,199,126,60,9,13, + 26,10,0,0,3,0,7,0,15,0,27,0,51,0,51,0, + 99,0,195,0,255,128,255,128,3,0,3,0,3,0,8,13, + 13,10,1,0,254,254,192,192,252,254,199,3,3,195,199,254, + 124,8,13,13,10,1,0,60,127,99,192,192,220,254,195,195, + 195,227,126,60,8,13,13,10,1,0,255,255,3,6,12,12, + 24,24,48,48,96,96,96,8,13,13,10,1,0,60,126,231, + 195,195,102,126,231,195,195,231,126,60,8,13,13,10,1,0, + 60,126,199,195,195,195,127,59,3,3,198,254,124,2,10,10, + 5,1,0,192,192,0,0,0,0,0,0,192,192,2,13,13, + 5,1,253,192,192,0,0,0,0,0,0,192,192,64,64,128, + 8,9,9,10,1,0,3,15,60,112,192,112,60,15,3,7, + 5,5,11,2,2,254,254,0,254,254,8,9,9,10,1,0, + 192,240,60,14,3,14,60,240,192,7,14,14,10,1,0,124, + 254,198,198,14,28,56,48,48,48,0,0,48,48,16,17,34, + 18,1,253,3,240,15,252,28,14,48,6,99,211,103,115,198, + 51,204,99,204,102,204,102,204,204,207,248,103,112,112,0,56, + 0,31,240,7,224,12,14,28,13,0,0,6,0,6,0,15, + 0,15,0,25,128,25,128,48,192,48,192,63,192,127,224,96, + 96,96,96,192,48,192,48,11,14,28,13,1,0,255,0,255, + 128,193,192,192,192,192,192,193,128,255,128,255,192,192,224,192, + 96,192,96,192,224,255,192,255,128,12,14,28,14,1,0,15, + 128,63,224,112,112,96,48,224,0,192,0,192,0,192,0,192, + 0,224,0,96,48,112,112,63,224,15,128,12,14,28,14,1, + 0,255,128,255,192,192,224,192,96,192,48,192,48,192,48,192, + 48,192,48,192,48,192,96,192,224,255,192,255,128,10,14,28, + 13,2,0,255,192,255,192,192,0,192,0,192,0,192,0,255, + 128,255,128,192,0,192,0,192,0,192,0,255,192,255,192,9, + 14,28,12,2,0,255,128,255,128,192,0,192,0,192,0,192, + 0,255,0,255,0,192,0,192,0,192,0,192,0,192,0,192, + 0,13,14,28,15,1,0,15,192,63,240,112,56,96,24,224, + 24,192,0,192,0,192,248,192,248,224,24,96,24,112,56,63, + 248,15,216,11,14,28,14,1,0,192,96,192,96,192,96,192, + 96,192,96,192,96,255,224,255,224,192,96,192,96,192,96,192, + 96,192,96,192,96,2,14,14,6,2,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,8,14,14,10,0,0,3, + 3,3,3,3,3,3,3,3,195,195,231,126,60,12,14,28, + 13,2,0,192,224,193,192,195,128,199,0,206,0,220,0,248, + 0,252,0,206,0,199,0,195,128,193,192,192,224,192,112,9, + 14,28,11,1,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,255,128,255, + 128,14,14,28,16,1,0,192,12,192,12,224,28,224,28,240, + 60,240,60,216,108,216,108,204,204,204,204,196,140,199,140,195, + 12,195,12,11,14,28,14,1,0,192,96,224,96,240,96,240, + 96,216,96,204,96,204,96,198,96,198,96,195,96,193,224,193, + 224,192,224,192,96,13,14,28,15,1,0,15,128,63,224,112, + 112,96,48,224,56,192,24,192,24,192,24,192,24,224,56,96, + 48,112,112,63,224,15,128,10,14,28,13,2,0,255,0,255, + 128,193,192,192,192,192,192,193,192,255,128,255,0,192,0,192, + 0,192,0,192,0,192,0,192,0,13,15,30,15,1,255,15, + 128,63,224,112,112,96,48,224,56,192,24,192,24,192,24,192, + 24,225,184,97,176,112,240,63,224,15,176,0,48,11,14,28, + 14,1,0,255,128,255,192,192,224,192,96,192,96,192,224,255, + 192,255,128,192,192,192,192,192,96,192,96,192,96,192,96,10, + 14,28,13,1,0,30,0,127,128,225,192,192,192,224,0,124, + 0,31,0,3,128,1,192,0,192,192,192,225,192,127,128,63, + 0,10,14,28,12,1,0,255,192,255,192,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,11,14,28,14,1,0,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,96,96, + 192,127,192,31,0,12,14,28,13,0,0,192,48,192,48,96, + 96,96,96,96,96,48,192,48,192,48,192,25,128,25,128,25, + 128,15,0,15,0,6,0,16,14,28,18,1,0,193,131,193, + 131,193,131,195,195,99,198,98,70,102,102,102,102,54,108,54, + 108,52,44,28,56,24,24,24,24,11,14,28,13,1,0,192, + 96,192,96,96,192,113,192,49,128,27,0,14,0,14,0,27, + 0,49,128,113,192,96,192,192,96,192,96,12,14,28,13,0, + 0,192,48,192,48,96,96,96,96,48,192,57,192,25,128,15, + 0,6,0,6,0,6,0,6,0,6,0,6,0,10,14,28, + 12,1,0,255,192,255,192,0,192,1,128,3,0,6,0,12, + 0,28,0,24,0,48,0,96,0,192,0,255,192,255,192,4, + 18,18,5,0,252,240,240,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,240,240,5,14,14,5,0,0,192,192,192, + 96,96,96,48,48,48,48,24,24,24,24,4,18,18,5,0, + 252,240,240,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,240,240,7,6,6,9,1,7,16,56,108,108,198,198,11, + 2,4,11,0,252,255,224,255,224,4,3,3,4,0,11,192, + 96,48,9,10,20,11,1,0,126,0,231,0,195,0,7,0, + 127,0,227,0,195,0,195,0,231,128,121,128,9,14,28,11, + 1,0,192,0,192,0,192,0,192,0,222,0,255,0,227,0, + 193,128,193,128,193,128,193,128,227,0,255,0,222,0,8,10, + 10,10,1,0,62,127,99,192,192,192,192,99,127,62,9,14, + 28,11,1,0,1,128,1,128,1,128,1,128,61,128,127,128, + 99,128,193,128,193,128,193,128,193,128,99,128,127,128,61,128, + 8,10,10,10,1,0,60,126,195,195,255,192,192,227,127,60, + 6,14,14,6,0,0,28,60,48,48,252,252,48,48,48,48, + 48,48,48,48,9,14,28,11,1,252,61,128,127,128,97,128, + 193,128,193,128,193,128,193,128,99,128,127,128,61,128,1,128, + 99,0,127,0,28,0,8,14,14,10,1,0,192,192,192,192, + 222,255,227,195,195,195,195,195,195,195,2,14,14,4,1,0, + 192,192,0,0,192,192,192,192,192,192,192,192,192,192,4,18, + 18,4,255,252,48,48,0,0,48,48,48,48,48,48,48,48, + 48,48,48,48,240,224,8,14,14,9,1,0,192,192,192,192, + 198,204,216,240,248,216,204,206,198,199,2,14,14,4,1,0, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,14,10, + 20,16,1,0,222,120,255,252,227,140,195,12,195,12,195,12, + 195,12,195,12,195,12,195,12,8,10,10,10,1,0,222,255, + 227,195,195,195,195,195,195,195,9,10,20,11,1,0,62,0, + 127,0,99,0,193,128,193,128,193,128,193,128,99,0,127,0, + 62,0,9,14,28,11,1,252,222,0,255,0,227,0,193,128, + 193,128,193,128,193,128,227,0,255,0,222,0,192,0,192,0, + 192,0,192,0,9,14,28,11,1,252,61,128,127,128,99,128, + 193,128,193,128,193,128,193,128,99,128,127,128,61,128,1,128, + 1,128,1,128,1,128,5,10,10,6,1,0,216,216,224,192, + 192,192,192,192,192,192,7,10,10,9,1,0,60,126,198,192, + 252,62,6,198,252,120,6,13,13,6,0,0,48,48,48,252, + 252,48,48,48,48,48,48,60,28,8,10,10,10,1,0,195, + 195,195,195,195,195,195,199,255,123,8,10,10,10,1,0,195, + 195,195,102,102,102,36,60,24,24,12,10,20,14,1,0,198, + 48,198,48,198,48,102,96,102,96,105,96,41,64,57,192,25, + 128,25,128,8,10,10,10,1,0,195,231,102,60,24,24,60, + 102,231,195,8,14,14,10,1,252,195,195,195,102,102,102,36, + 60,24,24,24,24,112,112,7,10,10,9,1,0,254,254,6, + 12,24,48,96,192,254,254,6,18,18,6,255,252,12,24,48, + 48,48,48,48,96,192,96,48,48,48,48,48,48,24,12,2, + 18,18,5,1,252,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,6,18,18,6,0,252,192,96,48, + 48,48,48,48,24,12,24,48,48,48,48,48,48,96,192,8, + 3,3,10,1,4,115,255,206,255}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--25-180-100-100-P-130-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 19, '1' Height: 18 + Calculated Max Values w=22 h=24 x= 3 y=16 dx=25 dy= 0 ascent=24 len=69 + Font Bounding box w=28 h=37 x=-3 y=-8 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =19 descent=-5 + X Font ascent =19 descent=-5 + Max Font ascent =24 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR18[7307] U8G_SECTION(".progmem.u8g_font_helvR18") = { + 0,28,37,253,248,19,4,37,9,49,32,255,251,24,251,19, + 251,0,0,0,6,0,1,2,19,19,6,2,0,192,192,192, + 192,192,192,192,192,192,192,192,192,128,128,0,0,192,192,192, + 6,6,6,8,1,13,204,204,204,204,204,68,11,17,34,14, + 2,0,12,192,12,192,12,192,25,128,255,224,255,224,25,128, + 25,128,51,0,51,0,255,224,255,224,51,0,51,0,102,0, + 102,0,102,0,11,22,44,13,1,254,6,0,6,0,31,128, + 63,192,118,224,102,96,102,96,102,0,118,0,62,0,62,0, + 15,128,7,192,6,224,6,96,198,96,198,96,230,224,127,192, + 63,128,6,0,6,0,19,18,54,22,1,0,0,6,0,60, + 12,0,126,12,0,195,24,0,195,24,0,195,48,0,195,48, + 0,126,96,0,60,96,0,0,192,0,0,199,128,1,143,192, + 1,152,96,3,24,96,3,24,96,6,24,96,6,15,192,4, + 7,128,14,18,36,17,2,0,15,0,31,128,57,192,48,192, + 48,192,48,192,25,128,15,0,30,0,63,24,115,152,97,216, + 192,240,192,96,192,240,225,216,127,156,30,0,2,6,6,6, + 2,13,192,192,192,192,192,64,5,24,24,8,2,251,24,24, + 48,48,96,96,96,192,192,192,192,192,192,192,192,192,192,96, + 96,96,48,48,24,24,5,24,24,8,1,251,192,192,96,96, + 48,48,48,24,24,24,24,24,24,24,24,24,24,48,48,48, + 96,96,192,192,7,7,7,10,1,12,16,16,214,124,56,108, + 68,12,12,24,14,1,1,6,0,6,0,6,0,6,0,6, + 0,255,240,255,240,6,0,6,0,6,0,6,0,6,0,2, + 6,6,6,2,253,192,192,192,64,64,128,6,2,2,8,1, + 6,252,252,2,3,3,6,2,0,192,192,192,7,19,19,7, + 0,0,6,4,12,12,8,24,24,16,16,48,48,32,96,96, + 64,192,192,128,128,11,18,36,13,1,0,31,0,63,128,113, + 192,96,192,96,192,224,224,192,96,192,96,192,96,192,96,192, + 96,192,96,224,224,96,192,96,192,113,192,63,128,31,0,6, + 18,18,13,2,0,12,12,28,252,252,12,12,12,12,12,12, + 12,12,12,12,12,12,12,11,18,36,13,1,0,30,0,127, + 128,97,192,192,192,192,96,192,96,0,224,0,192,1,192,3, + 128,15,0,28,0,56,0,112,0,224,0,192,0,255,224,255, + 224,11,18,36,13,1,0,31,0,127,128,97,128,192,192,192, + 192,192,192,0,192,1,128,15,0,15,192,0,192,0,96,0, + 96,192,96,192,192,97,192,127,128,31,0,11,18,36,13,1, + 0,1,128,3,128,3,128,7,128,15,128,13,128,25,128,57, + 128,49,128,97,128,225,128,193,128,255,224,255,224,1,128,1, + 128,1,128,1,128,11,18,36,13,1,0,127,192,127,192,96, + 0,96,0,96,0,96,0,126,0,127,128,113,192,0,192,0, + 224,0,96,0,96,192,224,192,192,225,192,127,128,30,0,11, + 18,36,13,1,0,15,0,63,192,112,192,96,96,224,96,192, + 0,192,0,207,0,223,128,241,192,224,192,192,96,192,96,192, + 96,224,224,113,192,127,192,31,0,11,18,36,13,1,0,255, + 224,255,224,0,224,0,192,1,128,1,128,3,0,3,0,6, + 0,6,0,12,0,12,0,28,0,24,0,24,0,56,0,48, + 0,48,0,11,18,36,13,1,0,14,0,63,128,49,128,96, + 192,96,192,96,192,49,128,31,0,63,128,113,192,96,192,192, + 96,192,96,192,96,192,96,96,192,127,192,31,0,11,18,36, + 13,1,0,31,0,127,192,113,192,224,192,192,96,192,96,192, + 96,192,96,224,224,113,224,127,96,30,96,0,96,0,224,192, + 192,225,192,127,128,30,0,2,14,14,6,2,0,192,192,192, + 0,0,0,0,0,0,0,0,192,192,192,2,17,17,6,2, + 253,192,192,192,0,0,0,0,0,0,0,0,192,192,192,64, + 64,128,12,12,24,15,1,1,0,48,0,240,3,192,15,0, + 60,0,224,0,224,0,60,0,15,0,3,192,0,240,0,48, + 10,5,10,15,2,5,255,192,255,192,0,0,255,192,255,192, + 12,12,24,15,1,1,192,0,240,0,60,0,15,0,3,192, + 0,112,0,112,3,192,15,0,60,0,240,0,192,0,10,19, + 38,12,1,0,31,0,127,128,113,192,224,192,192,192,193,192, + 1,128,3,128,7,0,6,0,12,0,12,0,12,0,12,0, + 0,0,0,0,12,0,12,0,12,0,22,23,69,25,2,252, + 0,255,0,3,255,192,15,1,224,28,0,112,56,0,24,48, + 0,24,96,115,12,96,251,12,193,199,12,195,134,12,195,6, + 12,198,6,12,198,12,28,198,12,24,198,12,56,231,28,112, + 99,247,224,113,227,128,56,0,0,28,0,0,15,3,0,7, + 255,0,0,252,0,15,19,38,17,1,0,3,128,3,128,6, + 192,6,192,12,64,12,96,12,96,24,48,24,48,24,48,48, + 24,63,248,63,248,96,12,96,12,96,12,192,6,192,6,192, + 6,14,19,38,17,2,0,255,192,255,240,192,112,192,24,192, + 24,192,24,192,24,192,48,255,224,255,240,192,24,192,12,192, + 12,192,12,192,12,192,28,192,120,255,240,255,192,15,19,38, + 18,1,0,7,224,31,248,60,60,112,14,96,6,224,6,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,224,6,96, + 6,112,14,60,60,31,248,7,224,15,19,38,18,2,0,255, + 192,255,240,192,120,192,28,192,12,192,14,192,6,192,6,192, + 6,192,6,192,6,192,6,192,6,192,14,192,12,192,28,192, + 120,255,240,255,192,12,19,38,16,2,0,255,240,255,240,192, + 0,192,0,192,0,192,0,192,0,192,0,255,224,255,224,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,255,240,255, + 240,11,19,38,14,2,0,255,224,255,224,192,0,192,0,192, + 0,192,0,192,0,192,0,255,192,255,192,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,16,19,38, + 19,1,0,7,224,31,248,60,60,112,14,96,6,224,6,192, + 0,192,0,192,0,192,127,192,127,192,3,192,3,224,3,96, + 7,112,15,60,63,31,251,7,227,14,19,38,18,2,0,192, + 12,192,12,192,12,192,12,192,12,192,12,192,12,192,12,255, + 252,255,252,192,12,192,12,192,12,192,12,192,12,192,12,192, + 12,192,12,192,12,2,19,19,8,3,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,10,19, + 38,13,1,0,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,192,192,192,192, + 192,192,192,192,97,128,127,128,63,0,13,19,38,18,3,0, + 192,56,192,112,192,224,193,192,195,128,199,0,206,0,220,0, + 252,0,254,0,231,0,195,128,193,128,193,192,192,224,192,96, + 192,112,192,56,192,24,11,19,38,14,2,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,255,224, + 255,224,17,19,57,21,2,0,192,1,128,224,3,128,224,3, + 128,240,7,128,240,7,128,216,13,128,216,13,128,216,13,128, + 204,25,128,204,25,128,204,25,128,198,49,128,198,49,128,198, + 49,128,195,97,128,195,97,128,195,97,128,193,193,128,193,193, + 128,14,19,38,18,2,0,224,12,240,12,240,12,216,12,220, + 12,204,12,206,12,198,12,199,12,195,12,195,140,193,140,193, + 204,192,204,192,236,192,108,192,60,192,60,192,28,16,19,38, + 18,1,0,7,224,31,248,60,60,112,14,96,6,224,7,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,224,7,96, + 6,112,14,60,60,31,248,7,224,13,19,38,16,2,0,255, + 224,255,240,192,48,192,24,192,24,192,24,192,24,192,48,255, + 240,255,224,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,16,19,38,18,1,0,7,224,31,248,60, + 60,112,14,96,6,224,7,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,224,7,96,230,112,126,60,28,31,254,7, + 231,13,19,38,17,2,0,255,224,255,240,192,48,192,24,192, + 24,192,24,192,24,192,48,255,240,255,224,192,112,192,48,192, + 24,192,24,192,24,192,24,192,24,192,24,192,24,13,19,38, + 16,2,0,15,128,63,224,96,96,192,48,192,48,192,0,224, + 0,124,0,63,128,7,224,0,240,0,56,0,24,0,24,192, + 24,192,56,240,112,127,224,31,128,14,19,38,16,1,0,255, + 252,255,252,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,14,19,38,18,2,0,192,12,192,12,192, + 12,192,12,192,12,192,12,192,12,192,12,192,12,192,12,192, + 12,192,12,192,12,192,12,192,12,96,24,112,56,63,240,15, + 192,15,19,38,17,1,0,192,6,192,6,224,14,96,12,112, + 28,48,24,48,24,56,56,24,48,24,48,28,112,12,96,12, + 96,14,224,6,192,6,192,3,128,3,128,3,128,20,19,57, + 22,1,0,192,96,48,192,96,48,192,96,48,192,240,48,96, + 240,96,97,152,96,97,152,96,97,152,96,97,152,96,49,152, + 192,51,12,192,51,12,192,51,12,192,27,13,128,27,13,128, + 30,7,128,14,7,0,12,3,0,12,3,0,15,19,38,17, + 1,0,192,6,224,14,112,28,48,24,24,48,28,112,14,224, + 7,192,3,128,3,128,7,192,14,224,12,96,28,112,56,56, + 48,24,96,12,224,14,192,6,14,19,38,16,1,0,192,12, + 224,28,96,24,112,56,48,48,56,112,24,96,28,224,12,192, + 15,192,7,128,7,128,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,13,19,38,15,1,0,255,248,255,248,0,56, + 0,112,0,224,1,192,1,192,3,128,7,0,7,0,14,0, + 28,0,28,0,56,0,112,0,112,0,224,0,255,248,255,248, + 4,24,24,7,2,251,240,240,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,240,240,8,19, + 19,7,0,0,192,64,64,96,32,32,48,16,16,16,24,8, + 8,12,4,4,6,2,3,4,24,24,7,1,251,240,240,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,240,240,10,9,18,12,1,10,12,0,12,0,30, + 0,18,0,51,0,97,128,97,128,192,192,192,192,14,2,4, + 14,0,251,255,252,255,252,5,4,4,7,1,15,192,96,48, + 24,11,14,28,13,1,0,31,0,63,128,97,192,96,192,0, + 192,7,192,63,192,120,192,224,192,192,192,193,192,227,192,126, + 224,60,96,11,19,38,14,2,0,192,0,192,0,192,0,192, + 0,192,0,207,0,223,128,241,192,224,192,192,224,192,96,192, + 96,192,96,192,96,192,224,224,192,241,192,223,128,207,0,10, + 14,28,12,1,0,31,0,63,128,113,192,96,192,224,0,192, + 0,192,0,192,0,192,0,224,0,96,192,113,192,63,128,31, + 0,11,19,38,14,1,0,0,96,0,96,0,96,0,96,0, + 96,30,96,63,96,113,224,96,224,224,96,192,96,192,96,192, + 96,192,96,224,96,96,224,113,224,63,96,30,96,11,14,28, + 13,1,0,14,0,63,128,113,192,96,192,192,96,192,96,255, + 224,255,224,192,0,192,0,96,96,112,224,63,192,15,0,6, + 19,19,8,1,0,28,60,48,48,48,252,252,48,48,48,48, + 48,48,48,48,48,48,48,48,11,19,38,14,1,251,30,96, + 63,96,113,224,96,224,224,96,192,96,192,96,192,96,192,96, + 224,96,96,224,113,224,63,96,30,96,0,96,192,96,224,192, + 127,192,31,0,10,19,38,13,2,0,192,0,192,0,192,0, + 192,0,192,0,206,0,223,128,241,128,224,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 2,19,19,6,2,0,192,192,192,0,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,4,24,24,6,0,251,48, + 48,48,0,0,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,240,224,10,19,38,12,2,0,192,0,192, + 0,192,0,192,0,192,0,193,128,195,128,199,0,206,0,220, + 0,248,0,252,0,206,0,198,0,199,0,195,128,193,128,193, + 192,192,192,2,19,19,6,2,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,16,14,28,20, + 2,0,206,60,255,126,227,199,193,131,193,131,193,131,193,131, + 193,131,193,131,193,131,193,131,193,131,193,131,193,131,10,14, + 28,14,2,0,206,0,223,128,241,128,224,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 11,14,28,13,1,0,31,0,63,128,113,192,96,192,224,224, + 192,96,192,96,192,96,192,96,224,224,96,192,113,192,63,128, + 31,0,11,19,38,14,2,251,207,0,223,128,241,192,224,192, + 192,224,192,96,192,96,192,96,192,96,192,224,224,192,241,192, + 223,128,207,0,192,0,192,0,192,0,192,0,192,0,11,19, + 38,14,1,251,30,96,63,96,113,224,96,224,224,96,192,96, + 192,96,192,96,192,96,224,96,96,224,113,224,63,96,30,96, + 0,96,0,96,0,96,0,96,0,96,6,14,14,9,2,0, + 204,220,248,240,224,192,192,192,192,192,192,192,192,192,10,14, + 28,12,1,0,63,0,127,128,225,192,192,192,192,0,248,0, + 127,0,15,128,1,192,192,192,192,192,225,192,127,128,63,0, + 6,18,18,8,1,0,48,48,48,48,252,252,48,48,48,48, + 48,48,48,48,48,48,60,28,10,14,28,14,2,0,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,193,192,99,192,126,192,28,192,11,14,28,13,1,0, + 192,96,192,96,192,96,96,192,96,192,113,192,49,128,49,128, + 27,0,27,0,27,0,14,0,14,0,14,0,18,14,42,18, + 0,0,192,192,192,192,192,192,97,225,128,97,225,128,97,225, + 128,49,35,0,51,51,0,51,51,0,27,54,0,26,22,0, + 30,30,0,14,28,0,12,12,0,12,12,0,10,14,28,12, + 1,0,192,192,225,192,97,128,51,0,30,0,30,0,12,0, + 30,0,30,0,51,0,115,128,97,128,192,192,192,192,12,19, + 38,13,0,251,192,48,192,48,96,48,112,96,48,96,56,224, + 24,192,24,192,13,128,13,128,7,128,7,0,3,0,3,0, + 6,0,6,0,12,0,60,0,56,0,10,14,28,12,1,0, + 255,192,255,192,1,128,3,0,7,0,14,0,12,0,28,0, + 56,0,48,0,96,0,224,0,255,192,255,192,6,24,24,8, + 1,251,12,24,48,48,48,48,48,48,48,48,96,192,192,96, + 48,48,48,48,48,48,48,48,24,12,1,24,24,6,2,251, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,6,24,24,8,1,251,192,96, + 48,48,48,48,48,48,48,48,24,12,12,24,48,48,48,48, + 48,48,48,48,96,192,10,4,8,14,2,5,112,192,252,192, + 207,192,195,128,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,6,0,1,2,19,19,6,2, + 251,192,192,192,0,0,64,64,192,192,192,192,192,192,192,192, + 192,192,192,192,10,18,36,13,1,254,1,128,1,128,31,0, + 63,128,115,192,102,192,198,0,204,0,204,0,204,0,216,0, + 216,0,216,192,113,192,127,128,63,0,96,0,96,0,12,18, + 36,14,1,0,31,128,63,224,112,112,96,48,96,0,112,0, + 48,0,24,0,255,128,255,128,24,0,24,0,24,0,48,0, + 48,0,103,48,255,240,240,224,11,12,24,13,1,3,192,96, + 238,224,127,192,49,128,96,192,96,192,96,192,96,192,49,128, + 127,192,238,224,192,96,14,18,36,14,0,0,224,28,96,24, + 112,56,48,48,56,112,24,96,28,224,12,192,63,240,63,240, + 3,0,63,240,63,240,3,0,3,0,3,0,3,0,3,0, + 2,24,24,6,2,251,192,192,192,192,192,192,192,192,192,192, + 0,0,0,0,192,192,192,192,192,192,192,192,192,192,11,24, + 48,13,1,251,31,0,63,128,113,192,96,192,112,192,56,0, + 28,0,126,0,231,0,195,128,193,192,192,192,96,96,112,96, + 56,96,28,192,15,128,7,0,3,128,97,192,96,192,113,192, + 63,128,31,0,6,2,2,8,1,16,204,204,19,19,57,19, + 1,0,3,248,0,14,14,0,48,1,128,96,0,192,65,240, + 64,195,24,96,134,12,32,132,0,32,132,0,32,132,0,32, + 132,0,32,134,12,32,195,24,96,65,240,64,96,0,192,48, + 1,128,24,3,0,14,14,0,3,248,0,7,12,12,9,1, + 7,120,204,204,28,108,204,204,220,118,0,254,254,9,8,16, + 14,2,3,25,128,51,0,102,0,204,0,204,0,102,0,51, + 0,25,128,13,8,16,15,1,2,255,248,255,248,0,24,0, + 24,0,24,0,24,0,24,0,24,6,2,2,8,1,6,252, + 252,18,19,57,19,1,0,7,248,0,28,14,0,48,3,0, + 96,1,128,67,240,128,194,24,192,130,8,64,130,8,64,130, + 8,64,130,16,64,131,240,64,130,32,64,130,16,64,194,16, + 192,66,8,128,96,1,128,48,3,0,28,14,0,7,248,0, + 6,2,2,8,1,16,252,252,8,7,7,9,0,11,60,102, + 195,195,195,102,60,12,13,26,14,1,0,6,0,6,0,6, + 0,6,0,255,240,255,240,6,0,6,0,6,0,6,0,0, + 0,255,240,255,240,7,10,10,7,0,8,60,126,198,6,12, + 24,48,96,254,254,7,10,10,7,0,8,124,254,198,6,60, + 60,6,198,254,124,5,4,4,7,1,15,24,48,96,192,10, + 19,38,14,2,251,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,193,192,227,192,254,192,220, + 192,192,0,192,0,192,0,192,0,192,0,10,24,48,12,1, + 251,31,192,127,192,125,128,253,128,253,128,253,128,253,128,253, + 128,253,128,125,128,125,128,61,128,13,128,13,128,13,128,13, + 128,13,128,13,128,13,128,13,128,13,128,13,128,13,128,13, + 128,2,3,3,6,2,6,192,192,192,5,6,6,7,1,251, + 96,112,24,24,248,112,4,10,10,7,0,8,48,48,240,240, + 48,48,48,48,48,48,7,12,12,9,1,7,56,108,198,198, + 198,198,198,108,56,0,254,254,9,8,16,14,3,3,204,0, + 102,0,51,0,25,128,25,128,51,0,102,0,204,0,18,18, + 54,19,1,0,48,24,0,48,24,0,240,48,0,240,48,0, + 48,96,0,48,96,0,48,192,0,48,192,0,49,131,0,49, + 135,0,3,15,0,3,15,0,6,27,0,6,51,0,12,127, + 192,12,127,192,24,3,0,24,3,0,18,18,54,19,1,0, + 48,24,0,48,24,0,240,48,0,240,48,0,48,96,0,48, + 96,0,48,192,0,48,192,0,49,135,128,49,143,192,3,24, + 192,3,0,192,6,1,128,6,3,0,12,6,0,12,12,0, + 24,31,192,24,31,192,19,18,54,19,0,0,124,12,0,254, + 12,0,198,24,0,6,24,0,60,48,0,60,48,0,6,96, + 0,198,96,0,254,193,128,124,195,128,1,135,128,1,135,128, + 3,13,128,3,25,128,6,63,224,6,63,224,12,1,128,12, + 1,128,10,19,38,12,1,251,12,0,12,0,12,0,0,0, + 0,0,12,0,12,0,12,0,12,0,24,0,56,0,112,0, + 96,0,224,192,192,192,193,192,227,128,127,128,62,0,15,24, + 48,17,1,0,12,0,6,0,3,0,1,128,0,0,3,128, + 3,128,6,192,6,192,12,64,12,96,12,96,24,48,24,48, + 24,48,48,24,63,248,63,248,96,12,96,12,96,12,192,6, + 192,6,192,6,15,24,48,17,1,0,0,96,0,192,1,128, + 3,0,0,0,3,128,3,128,6,192,6,192,12,64,12,96, + 12,96,24,48,24,48,24,48,48,24,63,248,63,248,96,12, + 96,12,96,12,192,6,192,6,192,6,15,24,48,17,1,0, + 1,128,3,192,6,96,12,48,0,0,3,128,3,128,6,192, + 6,192,12,64,12,96,12,96,24,48,24,48,24,48,48,24, + 63,248,63,248,96,12,96,12,96,12,192,6,192,6,192,6, + 15,23,46,17,1,0,7,16,13,176,8,224,0,0,3,128, + 3,128,6,192,6,192,12,64,12,96,12,96,24,48,24,48, + 24,48,48,24,63,248,63,248,96,12,96,12,96,12,192,6, + 192,6,192,6,15,23,46,17,1,0,12,96,12,96,0,0, + 0,0,3,128,3,128,6,192,6,192,12,64,12,96,12,96, + 24,48,24,48,24,48,48,24,63,248,63,248,96,12,96,12, + 96,12,192,6,192,6,192,6,15,24,48,17,1,0,3,128, + 4,64,4,64,3,128,0,0,3,128,3,128,6,192,6,192, + 12,64,12,96,12,96,24,48,24,48,24,48,48,24,63,248, + 63,248,96,12,96,12,96,12,192,6,192,6,192,6,21,19, + 57,23,1,0,3,255,248,3,255,248,6,96,0,6,96,0, + 12,96,0,12,96,0,12,96,0,24,96,0,24,127,248,24, + 127,248,48,96,0,63,224,0,63,224,0,96,96,0,96,96, + 0,96,96,0,192,96,0,192,127,248,192,127,248,15,24,48, + 18,1,251,7,224,31,248,60,60,112,14,96,6,224,6,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,224,6,96, + 6,112,14,60,60,31,248,7,224,1,128,0,192,0,192,7, + 192,3,128,12,24,48,16,2,0,48,0,24,0,12,0,6, + 0,0,0,255,240,255,240,192,0,192,0,192,0,192,0,192, + 0,192,0,255,224,255,224,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,255,240,255,240,12,24,48,16,2,0,1, + 128,3,0,6,0,12,0,0,0,255,240,255,240,192,0,192, + 0,192,0,192,0,192,0,192,0,255,224,255,224,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,255,240,255,240,12, + 24,48,16,2,0,6,0,15,0,25,128,48,192,0,0,255, + 240,255,240,192,0,192,0,192,0,192,0,192,0,192,0,255, + 224,255,224,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,255,240,255,240,12,23,46,16,2,0,24,192,24,192,0, + 0,0,0,255,240,255,240,192,0,192,0,192,0,192,0,192, + 0,192,0,255,224,255,224,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,255,240,255,240,5,24,24,8,1,0,192, + 96,48,24,0,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,5,24,24,8,2,0,24,48,96, + 192,0,96,96,96,96,96,96,96,96,96,96,96,96,96,96, + 96,96,96,96,96,8,24,24,8,0,0,24,60,102,195,0, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,6,23,23,8,1,0,204,204,0,0,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 18,19,57,18,255,0,31,248,0,31,254,0,24,15,0,24, + 3,128,24,1,128,24,1,192,24,0,192,24,0,192,255,128, + 192,255,128,192,24,0,192,24,0,192,24,0,192,24,1,192, + 24,1,128,24,3,128,24,15,0,31,254,0,31,248,0,14, + 23,46,18,2,0,14,32,27,96,17,192,0,0,224,12,240, + 12,240,12,216,12,220,12,204,12,206,12,198,12,199,12,195, + 12,195,140,193,140,193,204,192,204,192,236,192,108,192,60,192, + 60,192,28,16,24,48,18,1,0,12,0,6,0,3,0,1, + 128,0,0,7,224,31,248,60,60,112,14,96,6,224,7,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,224,7,96, + 6,112,14,60,60,31,248,7,224,16,24,48,18,1,0,0, + 48,0,96,0,192,1,128,0,0,7,224,31,248,60,60,112, + 14,96,6,224,7,192,3,192,3,192,3,192,3,192,3,192, + 3,192,3,224,7,96,6,112,14,60,60,31,248,7,224,16, + 24,48,18,1,0,0,192,1,224,3,48,6,24,0,0,7, + 224,31,248,60,60,112,14,96,6,224,7,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,224,7,96,6,112,14,60, + 60,31,248,7,224,16,23,46,18,1,0,3,136,6,216,4, + 112,0,0,7,224,31,248,60,60,112,14,96,6,224,7,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,224,7,96, + 6,112,14,60,60,31,248,7,224,16,23,46,18,1,0,6, + 48,6,48,0,0,0,0,7,224,31,248,60,60,112,14,96, + 6,224,7,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,224,7,96,6,112,14,60,60,31,248,7,224,13,12,24, + 14,0,1,192,24,96,48,48,96,24,192,13,128,7,0,7, + 0,13,128,24,192,48,96,96,48,192,24,18,19,57,18,0, + 0,3,240,192,15,253,192,30,31,128,56,7,0,48,15,0, + 112,29,128,96,57,128,96,113,128,96,225,128,97,193,128,99, + 129,128,103,1,128,110,1,128,124,3,128,56,3,0,56,7, + 0,126,30,0,239,252,0,195,240,0,14,24,48,18,2,0, + 24,0,12,0,6,0,3,0,0,0,192,12,192,12,192,12, + 192,12,192,12,192,12,192,12,192,12,192,12,192,12,192,12, + 192,12,192,12,192,12,192,12,96,24,112,56,63,240,15,192, + 14,24,48,18,2,0,0,96,0,192,1,128,3,0,0,0, + 192,12,192,12,192,12,192,12,192,12,192,12,192,12,192,12, + 192,12,192,12,192,12,192,12,192,12,192,12,192,12,96,24, + 112,56,63,240,15,192,14,24,48,18,2,0,3,0,7,128, + 12,192,24,96,0,0,192,12,192,12,192,12,192,12,192,12, + 192,12,192,12,192,12,192,12,192,12,192,12,192,12,192,12, + 192,12,192,12,96,24,112,56,63,240,15,192,14,23,46,18, + 2,0,24,192,24,192,0,0,0,0,192,12,192,12,192,12, + 192,12,192,12,192,12,192,12,192,12,192,12,192,12,192,12, + 192,12,192,12,192,12,192,12,96,24,112,56,63,240,15,192, + 14,24,48,16,1,0,0,96,0,192,1,128,3,0,0,0, + 192,12,224,28,96,24,112,56,48,48,56,112,24,96,28,224, + 12,192,15,192,7,128,7,128,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,13,19,38,16,2,0,192,0,192,0, + 192,0,192,0,255,224,255,240,192,48,192,24,192,24,192,24, + 192,24,192,48,255,240,255,224,192,0,192,0,192,0,192,0, + 192,0,10,19,38,15,3,0,28,0,127,0,227,0,193,128, + 193,128,193,128,195,0,199,0,206,0,207,0,195,128,193,128, + 192,192,192,192,192,192,193,128,195,128,207,0,206,0,11,19, + 38,13,1,0,24,0,12,0,6,0,3,0,0,0,31,0, + 63,128,97,192,96,192,0,192,7,192,63,192,120,192,224,192, + 192,192,193,192,227,192,126,224,60,96,11,19,38,13,1,0, + 1,128,3,0,6,0,12,0,0,0,31,0,63,128,97,192, + 96,192,0,192,7,192,63,192,120,192,224,192,192,192,193,192, + 227,192,126,224,60,96,11,19,38,13,1,0,12,0,30,0, + 51,0,97,128,0,0,31,0,63,128,97,192,96,192,0,192, + 7,192,63,192,120,192,224,192,192,192,193,192,227,192,126,224, + 60,96,11,18,36,13,1,0,28,64,54,192,35,128,0,0, + 31,0,63,128,97,192,96,192,0,192,7,192,63,192,120,192, + 224,192,192,192,193,192,227,192,126,224,60,96,11,18,36,13, + 1,0,51,0,51,0,0,0,0,0,31,0,63,128,97,192, + 96,192,0,192,7,192,63,192,120,192,224,192,192,192,193,192, + 227,192,126,224,60,96,11,19,38,13,1,0,6,0,9,0, + 9,0,6,0,0,0,31,0,63,128,97,192,96,192,0,192, + 7,192,63,192,120,192,224,192,192,192,193,192,227,192,126,224, + 60,96,19,14,42,21,1,0,31,14,0,63,191,128,97,241, + 192,96,224,192,0,192,96,7,192,96,63,255,224,120,255,224, + 224,192,0,192,192,0,193,224,96,227,240,224,126,63,192,60, + 15,0,10,19,38,12,1,251,31,0,63,128,113,192,96,192, + 224,0,192,0,192,0,192,0,192,0,224,0,96,192,113,192, + 63,128,31,0,12,0,6,0,6,0,62,0,28,0,11,19, + 38,13,1,0,24,0,12,0,6,0,3,0,0,0,14,0, + 63,128,113,192,96,192,192,96,192,96,255,224,255,224,192,0, + 192,0,96,96,112,224,63,192,15,0,11,19,38,13,1,0, + 3,0,6,0,12,0,24,0,0,0,14,0,63,128,113,192, + 96,192,192,96,192,96,255,224,255,224,192,0,192,0,96,96, + 112,224,63,192,15,0,11,19,38,13,1,0,12,0,30,0, + 51,0,97,128,0,0,14,0,63,128,113,192,96,192,192,96, + 192,96,255,224,255,224,192,0,192,0,96,96,112,224,63,192, + 15,0,11,18,36,13,1,0,51,0,51,0,0,0,0,0, + 14,0,63,128,113,192,96,192,192,96,192,96,255,224,255,224, + 192,0,192,0,96,96,112,224,63,192,15,0,5,19,19,6, + 0,0,192,96,48,24,0,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,5,19,19,6,1,0,24,48,96,192,0, + 96,96,96,96,96,96,96,96,96,96,96,96,96,96,8,19, + 19,6,255,0,24,60,102,195,0,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,6,18,18,6,0,0,204,204,0, + 0,48,48,48,48,48,48,48,48,48,48,48,48,48,48,11, + 19,38,13,1,0,96,0,57,128,14,0,30,0,99,0,31, + 128,63,128,113,192,96,192,224,224,192,96,192,96,192,96,192, + 96,224,224,96,192,113,192,63,128,31,0,10,18,36,14,2, + 0,56,128,109,128,71,0,0,0,206,0,223,128,241,128,224, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,11,19,38,13,1,0,24,0,12,0,6, + 0,3,0,0,0,31,0,63,128,113,192,96,192,224,224,192, + 96,192,96,192,96,192,96,224,224,96,192,113,192,63,128,31, + 0,11,19,38,13,1,0,3,0,6,0,12,0,24,0,0, + 0,31,0,63,128,113,192,96,192,224,224,192,96,192,96,192, + 96,192,96,224,224,96,192,113,192,63,128,31,0,11,19,38, + 13,1,0,12,0,30,0,51,0,97,128,0,0,31,0,63, + 128,113,192,96,192,224,224,192,96,192,96,192,96,192,96,224, + 224,96,192,113,192,63,128,31,0,11,18,36,13,1,0,28, + 64,54,192,35,128,0,0,31,0,63,128,113,192,96,192,224, + 224,192,96,192,96,192,96,192,96,224,224,96,192,113,192,63, + 128,31,0,11,18,36,13,1,0,51,0,51,0,0,0,0, + 0,31,0,63,128,113,192,96,192,224,224,192,96,192,96,192, + 96,192,96,224,224,96,192,113,192,63,128,31,0,12,12,24, + 14,1,1,6,0,6,0,6,0,0,0,0,0,255,240,255, + 240,0,0,0,0,6,0,6,0,6,0,13,14,28,13,0, + 0,15,152,31,248,56,112,48,224,113,240,99,176,99,48,102, + 48,108,48,124,112,56,96,112,224,255,192,207,128,10,19,38, + 14,2,0,48,0,24,0,12,0,6,0,0,0,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,193,192,99,192,126,192,28,192,10,19,38,14,2,0,3, + 0,6,0,12,0,24,0,0,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,193,192,99, + 192,126,192,28,192,10,19,38,14,2,0,12,0,30,0,51, + 0,97,128,0,0,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,193,192,99,192,126,192,28, + 192,10,18,36,14,2,0,51,0,51,0,0,0,0,0,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,193,192,99,192,126,192,28,192,12,24,48,13,0, + 251,0,192,1,128,3,0,6,0,0,0,192,48,192,48,96, + 48,112,96,48,96,56,224,24,192,24,192,13,128,13,128,7, + 128,7,0,3,0,3,0,6,0,6,0,12,0,60,0,56, + 0,11,24,48,14,2,251,192,0,192,0,192,0,192,0,192, + 0,207,0,223,128,241,192,224,192,192,224,192,96,192,96,192, + 96,192,96,192,224,224,192,241,192,223,128,207,0,192,0,192, + 0,192,0,192,0,192,0,12,23,46,13,0,251,25,128,25, + 128,0,0,0,0,192,48,192,48,96,48,112,96,48,96,56, + 224,24,192,24,192,13,128,13,128,7,128,7,0,3,0,3, + 0,6,0,6,0,12,0,60,0,56,0}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--25-180-100-100-P-130-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 19, '1' Height: 18 + Calculated Max Values w=22 h=24 x= 3 y=15 dx=25 dy= 0 ascent=20 len=69 + Font Bounding box w=28 h=37 x=-3 y=-8 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =19 descent=-5 + X Font ascent =19 descent=-5 + Max Font ascent =20 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR18r[3381] U8G_SECTION(".progmem.u8g_font_helvR18r") = { + 0,28,37,253,248,19,4,37,9,49,32,127,251,20,251,19, + 251,0,0,0,6,0,1,2,19,19,6,2,0,192,192,192, + 192,192,192,192,192,192,192,192,192,128,128,0,0,192,192,192, + 6,6,6,8,1,13,204,204,204,204,204,68,11,17,34,14, + 2,0,12,192,12,192,12,192,25,128,255,224,255,224,25,128, + 25,128,51,0,51,0,255,224,255,224,51,0,51,0,102,0, + 102,0,102,0,11,22,44,13,1,254,6,0,6,0,31,128, + 63,192,118,224,102,96,102,96,102,0,118,0,62,0,62,0, + 15,128,7,192,6,224,6,96,198,96,198,96,230,224,127,192, + 63,128,6,0,6,0,19,18,54,22,1,0,0,6,0,60, + 12,0,126,12,0,195,24,0,195,24,0,195,48,0,195,48, + 0,126,96,0,60,96,0,0,192,0,0,199,128,1,143,192, + 1,152,96,3,24,96,3,24,96,6,24,96,6,15,192,4, + 7,128,14,18,36,17,2,0,15,0,31,128,57,192,48,192, + 48,192,48,192,25,128,15,0,30,0,63,24,115,152,97,216, + 192,240,192,96,192,240,225,216,127,156,30,0,2,6,6,6, + 2,13,192,192,192,192,192,64,5,24,24,8,2,251,24,24, + 48,48,96,96,96,192,192,192,192,192,192,192,192,192,192,96, + 96,96,48,48,24,24,5,24,24,8,1,251,192,192,96,96, + 48,48,48,24,24,24,24,24,24,24,24,24,24,48,48,48, + 96,96,192,192,7,7,7,10,1,12,16,16,214,124,56,108, + 68,12,12,24,14,1,1,6,0,6,0,6,0,6,0,6, + 0,255,240,255,240,6,0,6,0,6,0,6,0,6,0,2, + 6,6,6,2,253,192,192,192,64,64,128,6,2,2,8,1, + 6,252,252,2,3,3,6,2,0,192,192,192,7,19,19,7, + 0,0,6,4,12,12,8,24,24,16,16,48,48,32,96,96, + 64,192,192,128,128,11,18,36,13,1,0,31,0,63,128,113, + 192,96,192,96,192,224,224,192,96,192,96,192,96,192,96,192, + 96,192,96,224,224,96,192,96,192,113,192,63,128,31,0,6, + 18,18,13,2,0,12,12,28,252,252,12,12,12,12,12,12, + 12,12,12,12,12,12,12,11,18,36,13,1,0,30,0,127, + 128,97,192,192,192,192,96,192,96,0,224,0,192,1,192,3, + 128,15,0,28,0,56,0,112,0,224,0,192,0,255,224,255, + 224,11,18,36,13,1,0,31,0,127,128,97,128,192,192,192, + 192,192,192,0,192,1,128,15,0,15,192,0,192,0,96,0, + 96,192,96,192,192,97,192,127,128,31,0,11,18,36,13,1, + 0,1,128,3,128,3,128,7,128,15,128,13,128,25,128,57, + 128,49,128,97,128,225,128,193,128,255,224,255,224,1,128,1, + 128,1,128,1,128,11,18,36,13,1,0,127,192,127,192,96, + 0,96,0,96,0,96,0,126,0,127,128,113,192,0,192,0, + 224,0,96,0,96,192,224,192,192,225,192,127,128,30,0,11, + 18,36,13,1,0,15,0,63,192,112,192,96,96,224,96,192, + 0,192,0,207,0,223,128,241,192,224,192,192,96,192,96,192, + 96,224,224,113,192,127,192,31,0,11,18,36,13,1,0,255, + 224,255,224,0,224,0,192,1,128,1,128,3,0,3,0,6, + 0,6,0,12,0,12,0,28,0,24,0,24,0,56,0,48, + 0,48,0,11,18,36,13,1,0,14,0,63,128,49,128,96, + 192,96,192,96,192,49,128,31,0,63,128,113,192,96,192,192, + 96,192,96,192,96,192,96,96,192,127,192,31,0,11,18,36, + 13,1,0,31,0,127,192,113,192,224,192,192,96,192,96,192, + 96,192,96,224,224,113,224,127,96,30,96,0,96,0,224,192, + 192,225,192,127,128,30,0,2,14,14,6,2,0,192,192,192, + 0,0,0,0,0,0,0,0,192,192,192,2,17,17,6,2, + 253,192,192,192,0,0,0,0,0,0,0,0,192,192,192,64, + 64,128,12,12,24,15,1,1,0,48,0,240,3,192,15,0, + 60,0,224,0,224,0,60,0,15,0,3,192,0,240,0,48, + 10,5,10,15,2,5,255,192,255,192,0,0,255,192,255,192, + 12,12,24,15,1,1,192,0,240,0,60,0,15,0,3,192, + 0,112,0,112,3,192,15,0,60,0,240,0,192,0,10,19, + 38,12,1,0,31,0,127,128,113,192,224,192,192,192,193,192, + 1,128,3,128,7,0,6,0,12,0,12,0,12,0,12,0, + 0,0,0,0,12,0,12,0,12,0,22,23,69,25,2,252, + 0,255,0,3,255,192,15,1,224,28,0,112,56,0,24,48, + 0,24,96,115,12,96,251,12,193,199,12,195,134,12,195,6, + 12,198,6,12,198,12,28,198,12,24,198,12,56,231,28,112, + 99,247,224,113,227,128,56,0,0,28,0,0,15,3,0,7, + 255,0,0,252,0,15,19,38,17,1,0,3,128,3,128,6, + 192,6,192,12,64,12,96,12,96,24,48,24,48,24,48,48, + 24,63,248,63,248,96,12,96,12,96,12,192,6,192,6,192, + 6,14,19,38,17,2,0,255,192,255,240,192,112,192,24,192, + 24,192,24,192,24,192,48,255,224,255,240,192,24,192,12,192, + 12,192,12,192,12,192,28,192,120,255,240,255,192,15,19,38, + 18,1,0,7,224,31,248,60,60,112,14,96,6,224,6,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,224,6,96, + 6,112,14,60,60,31,248,7,224,15,19,38,18,2,0,255, + 192,255,240,192,120,192,28,192,12,192,14,192,6,192,6,192, + 6,192,6,192,6,192,6,192,6,192,14,192,12,192,28,192, + 120,255,240,255,192,12,19,38,16,2,0,255,240,255,240,192, + 0,192,0,192,0,192,0,192,0,192,0,255,224,255,224,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,255,240,255, + 240,11,19,38,14,2,0,255,224,255,224,192,0,192,0,192, + 0,192,0,192,0,192,0,255,192,255,192,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,16,19,38, + 19,1,0,7,224,31,248,60,60,112,14,96,6,224,6,192, + 0,192,0,192,0,192,127,192,127,192,3,192,3,224,3,96, + 7,112,15,60,63,31,251,7,227,14,19,38,18,2,0,192, + 12,192,12,192,12,192,12,192,12,192,12,192,12,192,12,255, + 252,255,252,192,12,192,12,192,12,192,12,192,12,192,12,192, + 12,192,12,192,12,2,19,19,8,3,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,10,19, + 38,13,1,0,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,192,192,192,192, + 192,192,192,192,97,128,127,128,63,0,13,19,38,18,3,0, + 192,56,192,112,192,224,193,192,195,128,199,0,206,0,220,0, + 252,0,254,0,231,0,195,128,193,128,193,192,192,224,192,96, + 192,112,192,56,192,24,11,19,38,14,2,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,255,224, + 255,224,17,19,57,21,2,0,192,1,128,224,3,128,224,3, + 128,240,7,128,240,7,128,216,13,128,216,13,128,216,13,128, + 204,25,128,204,25,128,204,25,128,198,49,128,198,49,128,198, + 49,128,195,97,128,195,97,128,195,97,128,193,193,128,193,193, + 128,14,19,38,18,2,0,224,12,240,12,240,12,216,12,220, + 12,204,12,206,12,198,12,199,12,195,12,195,140,193,140,193, + 204,192,204,192,236,192,108,192,60,192,60,192,28,16,19,38, + 18,1,0,7,224,31,248,60,60,112,14,96,6,224,7,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,224,7,96, + 6,112,14,60,60,31,248,7,224,13,19,38,16,2,0,255, + 224,255,240,192,48,192,24,192,24,192,24,192,24,192,48,255, + 240,255,224,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,16,19,38,18,1,0,7,224,31,248,60, + 60,112,14,96,6,224,7,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,224,7,96,230,112,126,60,28,31,254,7, + 231,13,19,38,17,2,0,255,224,255,240,192,48,192,24,192, + 24,192,24,192,24,192,48,255,240,255,224,192,112,192,48,192, + 24,192,24,192,24,192,24,192,24,192,24,192,24,13,19,38, + 16,2,0,15,128,63,224,96,96,192,48,192,48,192,0,224, + 0,124,0,63,128,7,224,0,240,0,56,0,24,0,24,192, + 24,192,56,240,112,127,224,31,128,14,19,38,16,1,0,255, + 252,255,252,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,14,19,38,18,2,0,192,12,192,12,192, + 12,192,12,192,12,192,12,192,12,192,12,192,12,192,12,192, + 12,192,12,192,12,192,12,192,12,96,24,112,56,63,240,15, + 192,15,19,38,17,1,0,192,6,192,6,224,14,96,12,112, + 28,48,24,48,24,56,56,24,48,24,48,28,112,12,96,12, + 96,14,224,6,192,6,192,3,128,3,128,3,128,20,19,57, + 22,1,0,192,96,48,192,96,48,192,96,48,192,240,48,96, + 240,96,97,152,96,97,152,96,97,152,96,97,152,96,49,152, + 192,51,12,192,51,12,192,51,12,192,27,13,128,27,13,128, + 30,7,128,14,7,0,12,3,0,12,3,0,15,19,38,17, + 1,0,192,6,224,14,112,28,48,24,24,48,28,112,14,224, + 7,192,3,128,3,128,7,192,14,224,12,96,28,112,56,56, + 48,24,96,12,224,14,192,6,14,19,38,16,1,0,192,12, + 224,28,96,24,112,56,48,48,56,112,24,96,28,224,12,192, + 15,192,7,128,7,128,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,13,19,38,15,1,0,255,248,255,248,0,56, + 0,112,0,224,1,192,1,192,3,128,7,0,7,0,14,0, + 28,0,28,0,56,0,112,0,112,0,224,0,255,248,255,248, + 4,24,24,7,2,251,240,240,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,240,240,8,19, + 19,7,0,0,192,64,64,96,32,32,48,16,16,16,24,8, + 8,12,4,4,6,2,3,4,24,24,7,1,251,240,240,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,240,240,10,9,18,12,1,10,12,0,12,0,30, + 0,18,0,51,0,97,128,97,128,192,192,192,192,14,2,4, + 14,0,251,255,252,255,252,5,4,4,7,1,15,192,96,48, + 24,11,14,28,13,1,0,31,0,63,128,97,192,96,192,0, + 192,7,192,63,192,120,192,224,192,192,192,193,192,227,192,126, + 224,60,96,11,19,38,14,2,0,192,0,192,0,192,0,192, + 0,192,0,207,0,223,128,241,192,224,192,192,224,192,96,192, + 96,192,96,192,96,192,224,224,192,241,192,223,128,207,0,10, + 14,28,12,1,0,31,0,63,128,113,192,96,192,224,0,192, + 0,192,0,192,0,192,0,224,0,96,192,113,192,63,128,31, + 0,11,19,38,14,1,0,0,96,0,96,0,96,0,96,0, + 96,30,96,63,96,113,224,96,224,224,96,192,96,192,96,192, + 96,192,96,224,96,96,224,113,224,63,96,30,96,11,14,28, + 13,1,0,14,0,63,128,113,192,96,192,192,96,192,96,255, + 224,255,224,192,0,192,0,96,96,112,224,63,192,15,0,6, + 19,19,8,1,0,28,60,48,48,48,252,252,48,48,48,48, + 48,48,48,48,48,48,48,48,11,19,38,14,1,251,30,96, + 63,96,113,224,96,224,224,96,192,96,192,96,192,96,192,96, + 224,96,96,224,113,224,63,96,30,96,0,96,192,96,224,192, + 127,192,31,0,10,19,38,13,2,0,192,0,192,0,192,0, + 192,0,192,0,206,0,223,128,241,128,224,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 2,19,19,6,2,0,192,192,192,0,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,4,24,24,6,0,251,48, + 48,48,0,0,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,240,224,10,19,38,12,2,0,192,0,192, + 0,192,0,192,0,192,0,193,128,195,128,199,0,206,0,220, + 0,248,0,252,0,206,0,198,0,199,0,195,128,193,128,193, + 192,192,192,2,19,19,6,2,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,16,14,28,20, + 2,0,206,60,255,126,227,199,193,131,193,131,193,131,193,131, + 193,131,193,131,193,131,193,131,193,131,193,131,193,131,10,14, + 28,14,2,0,206,0,223,128,241,128,224,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 11,14,28,13,1,0,31,0,63,128,113,192,96,192,224,224, + 192,96,192,96,192,96,192,96,224,224,96,192,113,192,63,128, + 31,0,11,19,38,14,2,251,207,0,223,128,241,192,224,192, + 192,224,192,96,192,96,192,96,192,96,192,224,224,192,241,192, + 223,128,207,0,192,0,192,0,192,0,192,0,192,0,11,19, + 38,14,1,251,30,96,63,96,113,224,96,224,224,96,192,96, + 192,96,192,96,192,96,224,96,96,224,113,224,63,96,30,96, + 0,96,0,96,0,96,0,96,0,96,6,14,14,9,2,0, + 204,220,248,240,224,192,192,192,192,192,192,192,192,192,10,14, + 28,12,1,0,63,0,127,128,225,192,192,192,192,0,248,0, + 127,0,15,128,1,192,192,192,192,192,225,192,127,128,63,0, + 6,18,18,8,1,0,48,48,48,48,252,252,48,48,48,48, + 48,48,48,48,48,48,60,28,10,14,28,14,2,0,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,193,192,99,192,126,192,28,192,11,14,28,13,1,0, + 192,96,192,96,192,96,96,192,96,192,113,192,49,128,49,128, + 27,0,27,0,27,0,14,0,14,0,14,0,18,14,42,18, + 0,0,192,192,192,192,192,192,97,225,128,97,225,128,97,225, + 128,49,35,0,51,51,0,51,51,0,27,54,0,26,22,0, + 30,30,0,14,28,0,12,12,0,12,12,0,10,14,28,12, + 1,0,192,192,225,192,97,128,51,0,30,0,30,0,12,0, + 30,0,30,0,51,0,115,128,97,128,192,192,192,192,12,19, + 38,13,0,251,192,48,192,48,96,48,112,96,48,96,56,224, + 24,192,24,192,13,128,13,128,7,128,7,0,3,0,3,0, + 6,0,6,0,12,0,60,0,56,0,10,14,28,12,1,0, + 255,192,255,192,1,128,3,0,7,0,14,0,12,0,28,0, + 56,0,48,0,96,0,224,0,255,192,255,192,6,24,24,8, + 1,251,12,24,48,48,48,48,48,48,48,48,96,192,192,96, + 48,48,48,48,48,48,48,48,24,12,1,24,24,6,2,251, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,6,24,24,8,1,251,192,96, + 48,48,48,48,48,48,48,48,24,12,12,24,48,48,48,48, + 48,48,48,48,96,192,10,4,8,14,2,5,112,192,252,192, + 207,192,195,128,255}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--34-240-100-100-P-176-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=29 h=32 x= 4 y=22 dx=34 dy= 0 ascent=31 len=120 + Font Bounding box w=39 h=48 x=-5 y=-11 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =31 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR24[10931] U8G_SECTION(".progmem.u8g_font_helvR24") = { + 0,39,48,251,245,25,5,215,14,105,32,255,249,31,249,25, + 249,0,0,0,9,0,1,3,25,25,9,4,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,64,64, + 0,0,224,224,224,224,8,8,8,12,2,15,231,231,231,231, + 231,231,66,66,17,23,69,19,1,0,3,135,0,3,135,0, + 3,6,0,3,6,0,7,14,0,7,14,0,127,255,128,127, + 255,128,127,255,128,14,28,0,14,28,0,12,24,0,28,56, + 0,28,56,0,255,255,0,255,255,0,255,255,0,56,112,0, + 56,112,0,48,96,0,48,96,0,112,224,0,112,224,0,16, + 31,62,18,1,252,1,128,1,128,1,128,15,240,31,248,61, + 188,113,142,113,142,225,142,225,128,225,128,113,128,125,128,63, + 192,31,240,7,252,1,254,1,158,1,143,1,135,225,135,225, + 135,113,142,113,142,61,188,63,248,15,240,1,128,1,128,1, + 128,1,128,26,24,96,29,1,0,0,0,48,0,31,0,112, + 0,127,128,96,0,115,192,224,0,224,192,192,0,192,225,192, + 0,192,225,128,0,192,227,128,0,224,195,0,0,115,199,0, + 0,127,134,0,0,31,14,0,0,0,12,0,0,0,28,62, + 0,0,24,127,128,0,56,243,128,0,48,193,192,0,113,192, + 192,0,97,192,192,0,225,192,192,0,192,193,192,1,192,227, + 128,1,128,127,128,3,128,62,0,18,23,69,22,2,0,7, + 192,0,15,224,0,30,112,0,60,56,0,56,56,0,56,56, + 0,60,112,0,30,240,0,15,224,0,7,192,0,15,128,0, + 63,192,0,121,199,0,112,231,0,224,246,0,224,126,0,224, + 60,0,224,28,0,240,62,0,120,127,0,127,247,128,63,227, + 192,15,0,0,3,8,8,6,2,15,224,224,224,224,224,224, + 224,64,7,31,31,11,2,249,6,12,12,24,24,56,48,112, + 112,112,96,224,224,224,224,224,224,224,224,224,96,112,112,112, + 48,56,24,24,12,12,6,7,31,31,11,1,249,192,96,96, + 48,48,56,24,28,28,28,12,14,14,14,14,14,14,14,14, + 12,12,28,28,24,24,56,48,112,96,96,192,10,11,22,13, + 1,15,12,0,12,0,76,128,237,192,127,128,63,0,30,0, + 63,0,115,128,225,192,64,128,17,16,48,19,1,1,1,192, + 0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,255,255,128,255,255,128,255,255,128,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,1,192,0,3,9, + 9,9,3,251,224,224,224,224,32,96,96,192,128,8,2,2, + 11,1,8,255,255,3,4,4,9,3,0,224,224,224,224,9, + 24,48,9,0,0,1,128,1,128,1,128,3,0,3,0,3, + 0,6,0,6,0,6,0,12,0,12,0,12,0,8,0,24, + 0,24,0,24,0,48,0,48,0,48,0,96,0,96,0,96, + 0,192,0,192,0,15,24,48,18,1,0,7,192,31,240,63, + 248,60,120,120,60,112,28,112,28,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,112,28,112, + 28,112,60,60,120,63,248,31,240,7,192,8,24,24,18,3, + 0,3,7,7,15,63,255,255,7,7,7,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,15,24,48,18,1,0,7, + 192,31,240,63,248,120,60,112,28,240,14,224,14,224,14,0, + 14,0,28,0,60,0,120,0,240,3,224,7,192,31,0,60, + 0,120,0,112,0,224,0,224,0,255,254,255,254,255,254,15, + 24,48,18,1,0,7,192,31,240,63,248,56,56,112,28,112, + 28,112,28,112,28,0,28,0,56,3,248,3,240,3,248,0, + 60,0,30,0,14,224,14,224,14,224,14,112,28,120,60,63, + 248,31,240,7,192,16,24,48,18,0,0,0,24,0,56,0, + 120,0,120,0,248,1,248,3,184,3,184,7,56,14,56,14, + 56,28,56,56,56,56,56,112,56,224,56,255,255,255,255,255, + 255,0,56,0,56,0,56,0,56,0,56,15,24,48,18,1, + 0,63,252,63,252,63,252,56,0,56,0,56,0,112,0,112, + 0,119,192,127,240,127,248,120,124,112,28,0,30,0,14,0, + 14,0,14,224,14,224,30,240,28,120,124,127,248,63,240,15, + 128,15,24,48,18,1,0,3,192,15,240,31,248,60,56,56, + 28,112,28,112,0,112,0,96,0,227,192,239,240,255,248,248, + 60,240,28,240,14,224,14,224,14,96,14,112,14,112,28,56, + 60,63,248,31,240,7,192,15,24,48,18,1,0,255,254,255, + 254,255,254,0,14,0,28,0,24,0,56,0,112,0,112,0, + 224,0,224,1,192,1,192,3,128,3,128,7,0,7,0,7, + 0,14,0,14,0,14,0,28,0,28,0,28,0,15,24,48, + 18,1,0,7,192,31,240,63,248,56,60,112,28,112,28,112, + 28,112,28,120,60,60,120,31,240,15,224,63,248,120,60,112, + 28,224,14,224,14,224,14,224,14,240,28,120,60,63,248,31, + 240,7,192,15,24,48,18,1,0,7,192,31,240,63,248,120, + 124,112,60,240,28,224,30,224,14,224,14,224,14,224,30,224, + 30,112,62,127,254,63,238,15,206,0,14,0,28,224,28,240, + 60,120,120,63,240,63,224,15,128,3,18,18,9,4,0,224, + 224,224,224,0,0,0,0,0,0,0,0,0,0,224,224,224, + 224,3,22,22,9,4,251,224,224,224,224,0,0,0,0,0, + 0,0,0,0,224,224,224,224,32,96,96,192,128,16,16,32, + 19,2,0,0,3,0,15,0,63,1,252,7,224,31,128,254, + 0,240,0,240,0,254,0,31,128,7,224,1,252,0,127,0, + 15,0,3,15,9,18,19,2,4,255,254,255,254,255,254,0, + 0,0,0,0,0,255,254,255,254,255,254,16,16,32,19,1, + 0,192,0,240,0,254,0,63,128,7,224,1,248,0,127,0, + 15,0,15,0,127,1,248,7,224,63,128,254,0,240,0,192, + 0,14,25,50,18,2,0,7,192,31,240,63,248,120,56,112, + 28,240,28,224,28,224,28,0,28,0,56,0,56,0,112,0, + 224,1,224,1,192,3,128,3,128,3,128,3,128,0,0,0, + 0,3,128,3,128,3,128,3,128,29,30,120,34,1,251,0, + 7,192,0,0,63,248,0,0,255,254,0,3,240,63,128,7, + 192,7,192,15,0,3,224,30,0,1,224,28,0,0,240,56, + 15,140,112,56,31,220,56,112,60,252,56,112,112,124,56,96, + 224,56,24,224,224,56,24,225,224,56,24,225,192,112,56,225, + 192,112,56,225,192,112,112,225,192,224,112,225,224,224,224,112, + 243,243,192,112,255,127,128,120,62,127,0,60,0,0,0,30, + 0,0,0,31,0,0,0,15,128,0,0,3,224,120,0,1, + 255,248,0,0,127,224,0,20,25,75,22,1,0,0,240,0, + 0,240,0,0,248,0,1,248,0,1,248,0,3,156,0,3, + 156,0,3,156,0,7,158,0,7,14,0,7,14,0,15,15, + 0,15,15,0,14,7,0,30,7,128,31,255,128,31,255,128, + 63,255,192,60,3,192,56,1,192,120,1,224,120,1,224,112, + 0,224,240,0,240,240,0,240,17,25,75,22,3,0,255,240, + 0,255,252,0,255,254,0,224,62,0,224,15,0,224,15,0, + 224,7,0,224,7,0,224,15,0,224,14,0,224,62,0,255, + 252,0,255,252,0,255,254,0,224,31,0,224,7,128,224,3, + 128,224,3,128,224,3,128,224,3,128,224,7,128,224,15,0, + 255,254,0,255,254,0,255,248,0,20,25,75,24,2,0,1, + 252,0,7,255,0,15,255,128,31,7,192,60,1,224,56,0, + 224,112,0,240,112,0,112,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,112,240,0,112,112,0,240,120,0,224,60,1,224,63,7, + 192,31,255,128,7,254,0,1,248,0,18,25,75,24,3,0, + 255,240,0,255,252,0,255,254,0,224,31,0,224,15,0,224, + 7,128,224,3,128,224,3,128,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,3,192,224,3,128,224,3,128,224,7,128,224,15,0,224, + 30,0,255,254,0,255,252,0,255,240,0,17,25,75,22,3, + 0,255,255,0,255,255,0,255,255,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,255,255,0,255,255,0,255,255,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,255,255,128,255,255,128,255,255,128,16,25,50,20, + 3,0,255,255,255,255,255,255,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,255,252,255,252,255,252,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,22,25,75,25,1,0,0,254,0,3,255,128, + 15,255,192,31,131,240,62,0,240,60,0,120,120,0,56,112, + 0,56,240,0,0,224,0,0,224,0,0,224,0,0,224,15, + 252,224,15,252,224,15,252,224,0,28,240,0,28,112,0,28, + 120,0,60,56,0,60,60,0,252,31,1,252,15,255,220,7, + 255,28,1,252,28,18,25,75,24,3,0,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255, + 255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,3,25,25,9,3,0,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,13,25,50,16,1,0,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,224,56,224,56,224, + 56,224,56,240,120,120,240,127,240,63,224,31,128,20,25,75, + 22,3,0,224,3,192,224,7,128,224,15,0,224,30,0,224, + 60,0,224,120,0,224,240,0,225,224,0,227,192,0,231,192, + 0,239,128,0,255,192,0,255,192,0,249,224,0,240,240,0, + 224,112,0,224,120,0,224,60,0,224,28,0,224,30,0,224, + 15,0,224,7,128,224,3,192,224,3,224,224,1,240,14,25, + 50,18,3,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 255,252,255,252,255,252,21,25,75,27,3,0,240,0,120,240, + 0,120,248,0,248,248,0,248,252,1,248,252,1,248,252,1, + 248,236,1,184,238,3,184,238,3,184,230,3,56,231,7,56, + 231,7,56,227,6,56,227,142,56,227,142,56,227,142,56,225, + 140,56,225,220,56,225,220,56,224,216,56,224,248,56,224,248, + 56,224,112,56,224,112,56,19,25,75,24,2,0,240,0,224, + 240,0,224,248,0,224,252,0,224,252,0,224,254,0,224,239, + 0,224,231,0,224,231,128,224,227,192,224,227,192,224,225,224, + 224,224,224,224,224,240,224,224,120,224,224,56,224,224,60,224, + 224,28,224,224,30,224,224,15,224,224,7,224,224,7,224,224, + 3,224,224,1,224,224,1,224,23,25,75,25,1,0,0,254, + 0,3,255,128,15,239,224,31,1,240,62,0,248,60,0,120, + 120,0,60,112,0,28,240,0,30,224,0,14,224,0,14,224, + 0,14,224,0,14,224,0,14,224,0,14,224,0,14,240,0, + 30,240,0,30,120,0,60,60,0,120,62,0,248,31,1,240, + 15,239,224,3,255,128,0,254,0,17,25,75,22,3,0,255, + 248,0,255,254,0,255,255,0,224,15,0,224,7,128,224,3, + 128,224,3,128,224,3,128,224,3,128,224,3,128,224,7,128, + 224,15,0,255,255,0,255,254,0,255,248,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,23,26,78,26,1,255, + 0,254,0,3,255,128,15,239,224,31,1,240,62,0,248,60, + 0,120,120,0,60,112,0,28,240,0,30,224,0,14,224,0, + 14,224,0,14,224,0,14,224,0,14,224,0,14,224,0,14, + 240,0,30,240,2,30,120,7,60,60,7,184,62,3,248,31, + 1,240,15,239,248,3,255,188,0,254,30,0,0,12,19,25, + 75,24,3,0,255,252,0,255,255,0,255,255,128,224,7,128, + 224,3,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 3,192,224,3,128,224,15,128,255,255,0,255,254,0,255,255, + 0,224,15,128,224,7,128,224,3,128,224,3,192,224,3,192, + 224,3,192,224,1,192,224,1,192,224,1,192,224,1,224,19, + 25,75,22,1,0,3,248,0,15,254,0,31,255,0,60,15, + 128,56,3,192,112,1,192,112,1,192,112,0,0,120,0,0, + 124,0,0,63,192,0,31,248,0,7,255,0,0,127,128,0, + 15,192,0,1,224,0,0,224,224,0,224,240,0,224,112,1, + 224,120,1,192,62,7,192,63,255,128,15,254,0,3,248,0, + 19,25,75,20,0,0,255,255,224,255,255,224,255,255,224,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,18,25,75,24,3,0,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 240,3,192,120,7,128,124,15,128,63,255,0,31,254,0,3, + 240,0,19,25,75,22,1,0,240,1,224,240,1,224,240,1, + 224,112,1,192,120,3,192,120,3,192,56,3,128,56,3,128, + 60,7,128,28,7,0,28,7,0,30,15,0,14,14,0,14, + 14,0,15,14,0,7,28,0,7,28,0,7,156,0,3,184, + 0,3,184,0,3,184,0,1,240,0,1,240,0,0,224,0, + 0,224,0,29,25,100,31,1,0,240,7,0,120,240,7,0, + 120,240,15,128,120,112,15,128,112,112,15,128,112,120,29,192, + 240,120,29,192,240,56,29,192,224,56,29,192,224,56,56,224, + 224,60,56,225,224,28,56,225,192,28,48,225,192,28,112,113, + 192,28,112,113,192,14,112,115,128,14,224,59,128,14,224,59, + 128,14,224,59,128,7,224,63,128,7,192,31,0,7,192,31, + 0,7,192,31,0,3,128,14,0,3,128,14,0,20,25,75, + 22,1,0,248,0,240,120,1,224,60,3,192,28,3,192,30, + 7,128,15,7,0,15,15,0,7,158,0,3,156,0,3,252, + 0,1,248,0,0,240,0,0,240,0,1,248,0,1,248,0, + 3,156,0,7,158,0,7,14,0,15,15,0,30,7,128,30, + 7,128,60,3,192,120,1,224,120,1,224,240,0,240,21,25, + 75,22,0,0,240,0,120,120,0,240,120,0,224,60,1,224, + 28,1,192,30,3,192,14,7,128,15,7,128,7,143,0,3, + 142,0,3,222,0,1,220,0,1,252,0,0,248,0,0,248, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,18, + 25,75,20,1,0,127,255,192,127,255,192,127,255,192,0,7, + 128,0,15,128,0,15,0,0,30,0,0,60,0,0,60,0, + 0,120,0,0,240,0,1,224,0,1,224,0,3,192,0,7, + 128,0,7,128,0,15,0,0,30,0,0,60,0,0,60,0, + 0,120,0,0,240,0,0,255,255,192,255,255,192,255,255,192, + 6,32,32,9,2,249,252,252,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,252,252,9,24,48,9,0,0,192,0,192,0, + 96,0,96,0,96,0,48,0,48,0,48,0,16,0,24,0, + 24,0,24,0,12,0,12,0,12,0,6,0,6,0,6,0, + 2,0,3,0,3,0,3,0,1,128,1,128,6,32,32,9, + 1,249,252,252,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 252,252,12,13,26,16,1,11,6,0,15,0,15,0,31,128, + 25,128,25,128,57,192,48,192,112,224,96,96,96,96,224,112, + 192,48,18,2,6,18,0,250,255,255,192,255,255,192,6,5, + 5,11,1,20,224,240,112,56,28,16,18,36,18,1,0,15, + 224,63,248,60,120,112,60,112,28,0,28,0,60,1,252,31, + 252,126,28,120,28,240,28,224,28,224,60,224,124,121,254,127, + 223,63,143,15,25,50,18,2,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,227,224,239,240,255,248,248,60,240, + 28,240,30,224,14,224,14,224,14,224,14,224,14,224,14,240, + 30,240,28,252,60,255,248,239,240,231,224,14,18,36,16,1, + 0,7,192,31,240,63,248,56,60,112,28,112,28,224,0,224, + 0,224,0,224,0,224,0,224,28,224,28,112,28,120,56,63, + 248,31,240,7,192,15,25,50,18,1,0,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,7,206,31,238,63,254,124, + 62,112,30,240,30,224,14,224,14,224,14,224,14,224,14,224, + 14,240,30,240,30,120,62,127,254,63,238,15,206,15,18,36, + 18,2,0,7,192,31,240,63,248,120,60,112,28,240,14,224, + 14,224,14,255,254,255,254,224,0,224,0,240,14,112,30,120, + 60,63,248,31,240,7,192,8,25,25,9,1,0,15,31,60, + 56,56,56,56,255,255,255,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,15,25,50,18,1,249,7,206,31,238, + 63,254,124,62,112,30,240,30,224,14,224,14,224,14,224,14, + 224,14,224,14,240,30,112,62,120,62,63,254,31,238,7,142, + 0,14,224,14,224,28,240,28,124,120,63,248,31,224,14,25, + 50,18,2,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,227,224,239,240,255,248,248,60,240,28,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,3,25,25,7,2,0,224,224,224,224, + 0,0,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,6,32,32,7,255,249,28,28,28,28,0, + 0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,60,252,248,15,25,50,16,1, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 120,224,240,225,224,227,192,231,128,239,0,255,0,255,0,251, + 128,243,192,225,192,225,224,224,224,224,240,224,120,224,56,224, + 60,224,30,3,25,25,7,2,0,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,23,18,54,27,2,0,227,192,240,239,243,252,255,247, + 252,248,126,30,240,60,14,224,56,14,224,56,14,224,56,14, + 224,56,14,224,56,14,224,56,14,224,56,14,224,56,14,224, + 56,14,224,56,14,224,56,14,224,56,14,224,56,14,14,18, + 36,18,2,0,227,224,239,248,255,248,248,60,240,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,15,18,36,18,1,0,7,192, + 31,240,63,248,120,60,112,28,240,30,224,14,224,14,224,14, + 224,14,224,14,224,14,240,30,112,28,120,60,63,248,31,240, + 7,192,15,25,50,18,2,249,3,192,239,240,255,248,248,60, + 240,28,240,30,224,14,224,14,224,14,224,14,224,14,224,14, + 240,30,240,28,248,60,255,248,239,240,231,224,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,15,25,50,18,1,249, + 7,192,31,238,63,254,124,62,112,30,240,30,224,14,224,14, + 224,14,224,14,224,14,224,14,240,30,112,30,120,62,63,254, + 31,238,15,206,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,8,18,18,11,2,0,231,239,255,252,240,240,224,224, + 224,224,224,224,224,224,224,224,224,224,13,18,36,16,2,0, + 15,128,63,224,127,224,112,240,224,112,224,0,112,0,126,0, + 63,192,7,240,0,240,0,120,224,56,224,56,240,112,127,240, + 127,224,31,128,8,22,22,9,1,0,56,56,56,56,255,255, + 255,56,56,56,56,56,56,56,56,56,56,56,56,60,63,31, + 14,18,36,18,2,0,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,60,240,124,127,252,127,220,31,28,15,18,36,16,0,0, + 224,14,224,14,112,28,112,28,112,28,56,56,56,56,56,56, + 28,112,28,112,28,112,14,224,14,224,14,224,7,192,7,192, + 3,128,3,128,23,18,54,23,0,0,224,56,14,224,56,14, + 112,124,28,112,124,28,112,108,28,56,238,28,56,238,56,56, + 238,56,56,198,56,24,198,48,29,199,112,29,199,112,29,199, + 112,13,131,96,15,131,224,15,131,224,7,1,192,7,1,192, + 15,18,36,16,0,0,240,30,120,28,56,56,60,112,28,112, + 14,224,15,224,7,192,3,128,7,192,7,192,15,224,30,224, + 28,112,56,120,56,56,112,28,240,30,14,25,50,16,1,249, + 224,28,224,28,240,56,112,56,112,56,112,112,56,112,56,112, + 56,224,60,224,28,224,29,192,29,192,15,192,15,128,15,128, + 7,0,7,0,7,0,14,0,14,0,28,0,124,0,120,0, + 112,0,14,18,36,16,1,0,127,248,127,248,127,248,0,120, + 0,240,0,224,1,192,3,192,7,128,7,0,14,0,28,0, + 60,0,120,0,112,0,255,252,255,252,255,252,8,32,32,11, + 1,249,15,31,28,24,24,24,24,24,24,24,24,24,56,56, + 112,224,224,112,56,56,24,24,24,24,24,24,24,24,24,28, + 31,15,2,31,31,9,3,249,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,8,32,32,11,1,249,240,248,56, + 24,24,24,24,24,24,24,24,24,28,28,14,7,7,14,28, + 28,24,24,24,24,24,24,24,24,24,56,248,240,14,6,12, + 19,2,9,24,0,124,12,127,12,199,220,193,248,0,240,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 0,0,0,9,0,1,3,25,25,11,4,249,224,224,224,224, + 0,0,64,64,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,14,25,50,19,2,252,0,32,0,96,0, + 64,7,224,31,240,60,248,120,188,112,156,112,156,225,128,225, + 0,225,0,227,0,227,0,226,12,226,28,118,28,124,60,60, + 120,31,240,15,224,8,0,24,0,16,0,16,0,15,24,48, + 19,1,0,3,192,15,248,31,252,60,60,120,30,112,14,112, + 14,112,0,112,0,56,0,56,0,255,192,255,192,12,0,14, + 0,14,0,12,0,28,0,24,0,56,0,115,134,255,254,255, + 254,96,124,12,13,26,18,3,5,230,48,255,240,127,240,112, + 224,96,96,224,112,224,112,224,112,96,96,112,224,127,240,255, + 240,230,48,16,24,48,18,1,0,224,7,224,7,112,14,112, + 14,56,28,56,28,28,56,28,56,14,112,14,112,7,224,127, + 254,127,254,127,254,1,192,1,192,127,254,127,254,127,254,1, + 192,1,192,1,192,1,192,1,192,2,32,32,9,3,249,192, + 192,192,192,192,192,192,192,192,192,192,192,192,0,0,0,0, + 0,0,192,192,192,192,192,192,192,192,192,192,192,192,192,15, + 32,64,18,1,249,3,192,15,240,31,248,28,120,56,60,56, + 28,56,28,60,0,30,0,31,128,63,224,113,240,224,248,224, + 124,224,28,224,30,112,14,124,14,62,14,31,28,15,156,3, + 248,1,240,0,240,0,120,112,56,112,56,120,56,56,112,63, + 240,31,224,7,128,8,3,3,11,1,22,231,231,231,24,25, + 75,25,0,0,0,254,0,3,255,128,7,1,224,12,0,112, + 24,0,24,48,126,12,96,255,134,97,193,198,195,128,195,195, + 0,3,199,0,3,134,0,1,134,0,1,134,0,1,134,0, + 1,199,0,3,195,128,195,97,225,198,96,255,134,48,62,12, + 24,0,24,28,0,56,7,1,224,3,255,128,0,254,0,10, + 15,30,12,1,10,63,0,119,128,97,128,1,128,7,128,127, + 128,225,128,193,128,195,128,231,128,125,192,0,0,0,0,255, + 192,255,192,12,9,18,18,3,5,28,112,56,224,113,192,227, + 128,195,0,227,128,113,192,56,224,28,112,16,9,18,19,1, + 3,255,255,255,255,255,255,0,7,0,7,0,7,0,7,0, + 7,0,7,8,2,2,11,1,8,255,255,24,25,75,25,0, + 0,0,126,0,3,255,128,7,1,224,12,0,112,24,0,24, + 48,0,12,97,255,6,97,255,134,193,129,195,193,128,195,193, + 128,195,129,129,129,129,255,1,129,252,1,129,142,1,193,134, + 3,193,131,3,97,129,134,97,129,198,48,0,12,24,0,24, + 28,0,56,7,1,224,3,255,128,0,126,0,9,2,4,11, + 1,22,255,128,255,128,9,9,18,13,2,15,62,0,127,0, + 227,128,193,128,193,128,193,128,227,128,127,0,62,0,17,21, + 63,19,1,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,1,192,0,255,255,128,255,255,128,255, + 255,128,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + 0,1,192,0,0,0,0,0,0,0,255,255,128,255,255,128, + 255,255,128,9,15,30,11,1,9,30,0,127,0,99,0,193, + 128,193,128,1,128,3,0,7,0,30,0,56,0,112,0,224, + 0,192,0,255,128,255,128,9,15,30,11,1,9,62,0,127, + 0,227,128,193,128,193,128,3,128,15,0,15,0,3,128,1, + 128,193,128,193,128,227,128,127,0,62,0,7,5,5,11,3, + 22,30,60,56,112,224,14,24,48,19,2,250,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,60,240,124,255,252,255,220,255,28, + 224,0,224,0,224,0,224,0,224,0,224,0,16,30,60,17, + 1,251,7,255,31,255,63,140,63,140,127,140,127,140,255,140, + 255,140,255,140,255,140,127,140,127,140,63,140,63,140,31,140, + 3,140,1,140,1,140,1,140,1,140,1,140,1,140,1,140, + 1,140,1,140,1,140,1,140,1,140,1,140,1,140,4,4, + 4,9,3,11,96,240,240,96,7,7,7,11,2,249,24,24, + 60,14,6,206,124,5,15,15,11,2,9,24,56,248,248,24, + 24,24,24,24,24,24,24,24,24,24,10,15,30,12,1,10, + 30,0,127,128,97,128,225,192,192,192,192,192,192,192,192,192, + 225,192,97,128,127,128,30,0,0,0,255,192,255,192,12,9, + 18,18,3,5,227,128,113,192,56,224,28,112,12,48,28,112, + 56,224,113,192,227,128,25,25,100,28,1,0,0,0,48,0, + 24,0,112,0,56,0,96,0,248,0,224,0,248,1,192,0, + 24,1,128,0,24,3,128,0,24,3,0,0,24,7,0,0, + 24,14,0,0,24,12,0,0,24,28,6,0,24,24,14,0, + 24,56,30,0,24,112,62,0,24,96,118,0,0,224,102,0, + 1,192,198,0,1,129,198,0,3,131,134,0,3,3,255,128, + 7,3,255,128,6,0,6,0,14,0,6,0,12,0,6,0, + 25,25,100,28,1,0,0,0,96,0,24,0,224,0,56,0, + 192,0,248,1,128,0,248,3,128,0,24,3,0,0,24,6, + 0,0,24,14,0,0,24,12,0,0,24,28,0,0,24,24, + 0,0,24,56,60,0,24,48,255,0,24,112,195,128,24,97, + 129,128,24,193,129,128,1,192,3,128,1,128,7,0,3,128, + 14,0,3,0,60,0,6,0,112,0,14,0,224,0,12,1, + 192,0,28,1,255,128,24,1,255,128,25,24,96,28,1,0, + 62,0,14,0,127,0,12,0,99,128,24,0,193,128,56,0, + 193,128,48,0,3,128,96,0,15,0,224,0,15,128,192,0, + 1,193,128,0,0,195,128,0,192,195,6,0,192,199,14,0, + 97,206,30,0,127,140,62,0,30,24,118,0,0,56,102,0, + 0,48,198,0,0,97,198,0,0,227,134,0,1,195,255,128, + 1,131,255,128,3,0,6,0,7,0,6,0,6,0,6,0, + 14,25,50,19,3,249,3,128,3,128,3,128,3,128,0,0, + 0,0,3,128,3,128,3,128,7,128,7,0,15,0,30,0, + 60,0,120,0,112,0,240,0,224,28,224,28,224,28,240,60, + 120,120,127,240,63,224,7,128,20,31,93,22,1,0,3,192, + 0,1,224,0,0,224,0,0,112,0,0,56,0,0,0,0, + 0,240,0,0,240,0,0,240,0,1,248,0,1,248,0,3, + 252,0,3,156,0,3,156,0,7,158,0,7,14,0,7,14, + 0,15,15,0,14,15,0,14,7,0,30,7,128,31,255,128, + 31,255,128,63,255,192,60,3,192,56,1,192,120,1,224,120, + 1,224,112,0,224,240,0,240,240,0,240,20,31,93,22,1, + 0,0,60,0,0,120,0,0,112,0,0,224,0,1,192,0, + 0,0,0,0,240,0,0,240,0,0,240,0,1,248,0,1, + 248,0,3,252,0,3,156,0,3,156,0,7,158,0,7,14, + 0,7,14,0,15,15,0,15,15,0,14,7,0,30,7,128, + 31,255,128,31,255,128,63,255,192,60,3,192,120,1,192,120, + 1,224,120,1,224,112,0,224,240,0,240,240,0,240,20,31, + 93,22,1,0,0,64,0,0,224,0,1,240,0,3,184,0, + 7,28,0,0,0,0,0,240,0,0,240,0,0,240,0,1, + 248,0,1,248,0,3,252,0,3,156,0,3,156,0,7,158, + 0,7,14,0,7,14,0,15,15,0,15,15,0,14,7,0, + 30,7,128,31,255,128,31,255,128,63,255,192,60,3,192,56, + 1,192,120,1,224,120,1,224,112,0,224,240,0,240,240,0, + 240,20,30,90,22,1,0,1,198,0,3,254,0,7,252,0, + 6,56,0,0,0,0,0,240,0,0,240,0,0,240,0,1, + 248,0,1,248,0,3,252,0,3,156,0,3,156,0,7,158, + 0,7,14,0,7,14,0,15,15,0,15,15,0,14,7,0, + 30,7,128,31,255,128,31,255,128,63,255,192,60,3,192,56, + 1,192,120,1,224,120,1,224,112,0,224,240,0,240,240,0, + 240,20,30,90,22,1,0,3,156,0,3,156,0,3,156,0, + 0,0,0,0,0,0,0,240,0,0,240,0,0,240,0,1, + 248,0,1,248,0,3,252,0,3,156,0,3,156,0,7,158, + 0,7,14,0,7,14,0,15,15,0,15,15,0,14,7,0, + 30,7,128,31,255,128,31,255,128,63,255,192,60,3,192,56, + 1,192,120,1,224,120,1,224,112,0,224,240,0,240,240,0, + 240,20,31,93,22,1,0,0,240,0,1,152,0,1,8,0, + 1,8,0,1,152,0,0,240,0,0,0,0,0,240,0,0, + 240,0,1,248,0,1,248,0,3,252,0,3,156,0,3,156, + 0,7,158,0,7,14,0,7,14,0,15,15,0,14,15,0, + 14,7,0,30,7,128,31,255,128,31,255,128,63,255,192,60, + 3,192,56,1,192,120,1,224,120,1,224,112,0,224,240,0, + 240,240,0,240,29,25,100,32,1,0,0,127,255,248,0,127, + 255,248,0,255,255,248,0,227,128,0,1,195,128,0,1,195, + 128,0,3,195,128,0,3,131,128,0,3,131,128,0,7,131, + 128,0,7,3,128,0,7,3,255,240,15,3,255,240,14,3, + 255,240,30,3,128,0,31,255,128,0,31,255,128,0,63,255, + 128,0,56,3,128,0,120,3,128,0,120,3,128,0,112,3, + 128,0,240,3,255,248,224,3,255,248,224,3,255,248,20,32, + 96,23,2,249,1,248,0,7,254,0,15,255,128,31,7,128, + 60,3,192,120,1,224,112,0,224,112,0,224,240,0,0,240, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,240,0,112,240,0,112,112,0,240,112,0,224,120,1,224, + 60,3,192,31,7,192,15,255,128,7,254,0,1,248,0,0, + 96,0,0,96,0,0,240,0,0,56,0,0,24,0,3,56, + 0,1,240,0,17,31,93,22,3,0,15,0,0,7,128,0, + 3,128,0,1,192,0,0,224,0,0,0,0,255,255,0,255, + 255,0,255,255,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,255,255,0, + 255,255,0,255,255,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,255,255, + 128,255,255,128,255,255,128,17,31,93,22,3,0,0,120,0, + 0,240,0,0,224,0,1,192,0,3,128,0,0,0,0,255, + 255,0,255,255,0,255,255,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 255,255,0,255,255,0,255,255,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,255,255,128,255,255,128,255,255,128,17,31,93,22,3,0, + 0,128,0,1,192,0,3,224,0,7,112,0,14,56,0,0, + 0,0,255,255,0,255,255,0,255,255,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,255,255,0,255,255,0,255,255,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,255,255,128,255,255,128,255,255,128,17,30,90, + 22,3,0,28,56,0,28,56,0,28,56,0,0,0,0,0, + 0,0,255,255,0,255,255,0,255,255,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,255,255,0,255,255,0,255,255,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,255,255,128,255,255,128,255,255,128,7,31,31, + 9,0,0,240,120,56,28,14,0,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,7,31,31,9,2,0,30,60,56,112,224,0,112,112, + 112,112,112,112,112,112,112,112,112,112,112,112,112,112,112,112, + 112,112,112,112,112,112,112,9,31,62,9,0,0,8,0,28, + 0,62,0,119,0,227,128,0,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,9,30,60,9,0, + 0,227,128,227,128,227,128,0,0,0,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,21,25,75, + 23,0,0,31,254,0,31,255,128,31,255,192,28,3,224,28, + 0,224,28,0,240,28,0,112,28,0,112,28,0,56,28,0, + 56,28,0,56,255,192,56,255,192,56,28,0,56,28,0,56, + 28,0,56,28,0,120,28,0,112,28,0,112,28,0,240,28, + 0,224,28,3,192,31,255,192,31,255,128,31,254,0,19,30, + 90,24,2,0,1,198,0,3,254,0,7,252,0,6,56,0, + 0,0,0,240,0,224,248,0,224,248,0,224,252,0,224,252, + 0,224,254,0,224,239,0,224,231,0,224,231,128,224,227,192, + 224,227,192,224,225,224,224,224,224,224,224,240,224,224,120,224, + 224,56,224,224,60,224,224,28,224,224,30,224,224,15,224,224, + 7,224,224,7,224,224,3,224,224,1,224,224,1,224,23,31, + 93,25,1,0,0,240,0,0,120,0,0,56,0,0,28,0, + 0,14,0,0,0,0,0,254,0,3,255,128,15,255,224,31, + 1,240,62,0,248,60,0,120,120,0,60,112,0,28,112,0, + 28,240,0,30,224,0,14,224,0,14,224,0,14,224,0,14, + 224,0,14,240,0,30,240,0,30,112,0,28,120,0,60,60, + 0,120,62,0,248,31,1,240,15,255,224,3,255,128,0,254, + 0,23,31,93,25,1,0,0,15,0,0,30,0,0,28,0, + 0,56,0,0,112,0,0,0,0,0,254,0,3,255,128,15, + 255,224,31,1,240,62,0,248,60,0,120,120,0,60,112,0, + 28,112,0,28,240,0,30,224,0,14,224,0,14,224,0,14, + 224,0,14,224,0,14,240,0,30,240,0,30,112,0,28,120, + 0,60,60,0,120,62,0,248,31,1,240,15,255,224,3,255, + 128,0,254,0,23,31,93,25,1,0,0,16,0,0,56,0, + 0,124,0,0,238,0,1,199,0,0,0,0,0,254,0,3, + 255,128,15,255,224,31,1,240,62,0,248,60,0,120,120,0, + 60,112,0,28,112,0,28,240,0,30,224,0,14,224,0,14, + 224,0,14,224,0,14,224,0,14,240,0,30,240,0,30,112, + 0,28,120,0,60,60,0,120,62,0,248,31,1,240,15,255, + 224,3,255,128,0,254,0,23,30,90,25,1,0,0,113,128, + 0,255,128,1,255,0,1,142,0,0,0,0,0,254,0,3, + 255,128,15,255,224,31,1,240,62,0,248,60,0,120,120,0, + 60,112,0,28,112,0,28,240,0,30,224,0,14,224,0,14, + 224,0,14,224,0,14,224,0,14,240,0,30,240,0,30,112, + 0,28,120,0,60,60,0,120,62,0,248,31,1,240,15,255, + 224,3,255,128,0,254,0,23,29,87,25,1,0,1,195,128, + 1,195,128,1,195,128,0,0,0,0,254,0,3,255,128,15, + 255,224,31,1,240,62,0,248,60,0,120,120,0,60,112,0, + 28,112,0,28,240,0,30,224,0,14,224,0,14,224,0,14, + 224,0,14,224,0,14,240,0,30,240,0,30,112,0,28,120, + 0,60,60,0,120,62,0,248,31,1,240,15,255,224,3,255, + 128,0,254,0,15,15,30,19,2,1,64,4,224,14,240,30, + 120,60,60,120,31,240,15,224,7,192,7,192,15,224,30,240, + 60,120,120,60,240,30,96,12,23,25,75,25,1,0,0,254, + 6,3,255,140,15,255,248,31,1,240,62,0,248,60,0,248, + 120,1,188,112,3,28,112,6,28,240,6,30,224,12,14,224, + 24,14,224,48,14,224,96,14,224,192,14,225,128,30,243,0, + 30,118,0,28,124,0,60,60,0,120,62,0,248,63,1,240, + 111,255,224,195,255,128,0,254,0,18,31,93,24,3,0,7, + 128,0,3,192,0,1,192,0,0,224,0,0,112,0,0,0, + 0,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,240,3,192,120,7,128, + 124,15,128,63,255,0,31,254,0,3,240,0,18,31,93,24, + 3,0,0,120,0,0,240,0,0,224,0,1,192,0,3,128, + 0,0,0,0,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,240,3,192, + 120,7,128,124,15,128,63,255,0,31,254,0,3,240,0,18, + 31,93,24,3,0,0,64,0,0,224,0,1,240,0,3,184, + 0,7,28,0,0,0,0,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 240,3,192,120,7,128,124,15,128,63,255,0,31,254,0,3, + 240,0,18,30,90,24,3,0,14,28,0,14,28,0,14,28, + 0,0,0,0,0,0,0,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 240,3,192,120,7,128,124,15,128,63,255,0,31,254,0,3, + 240,0,19,31,93,22,1,0,0,60,0,0,120,0,0,112, + 0,0,224,0,1,192,0,0,0,0,224,0,224,240,1,224, + 112,1,192,120,3,192,56,3,128,60,7,128,28,15,0,30, + 15,0,15,30,0,7,28,0,7,188,0,3,184,0,3,248, + 0,1,240,0,1,240,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,17,25,75,22,3,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,255,248,0,255,254,0, + 255,255,0,224,15,0,224,7,0,224,7,128,224,3,128,224, + 3,128,224,7,128,224,7,0,224,15,0,255,254,0,255,252, + 0,255,248,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,14,25,50,20,4,0,15,128,63,224, + 127,240,120,240,240,120,224,56,224,56,224,56,224,120,224,240, + 227,224,227,224,227,240,224,120,224,60,224,28,224,28,224,28, + 224,28,224,28,224,56,224,120,231,240,231,224,231,128,16,25, + 50,18,1,0,15,0,7,128,3,128,1,192,0,224,0,0, + 0,0,15,224,63,248,60,124,112,28,112,28,0,28,0,28, + 0,252,31,252,127,156,120,28,240,28,224,28,224,60,224,124, + 121,252,127,223,63,143,16,25,50,18,1,0,0,240,1,224, + 1,192,3,128,7,0,0,0,0,0,15,224,63,248,60,124, + 112,28,112,28,0,28,0,28,0,252,31,252,127,156,120,28, + 240,28,224,28,224,60,224,124,120,252,127,223,63,143,16,25, + 50,18,1,0,1,0,3,128,7,192,14,224,28,112,0,0, + 0,0,15,224,63,248,60,124,112,28,112,28,0,28,0,28, + 0,252,31,252,127,156,120,28,240,28,224,28,224,60,224,124, + 120,252,127,223,63,143,16,24,48,18,1,0,7,24,15,248, + 31,240,24,224,0,0,0,0,15,224,63,248,60,124,112,28, + 112,28,0,28,0,28,0,252,31,252,127,156,120,28,240,28, + 224,28,224,60,224,124,120,252,127,223,63,143,16,23,46,18, + 1,0,14,112,14,112,14,112,0,0,0,0,15,224,63,248, + 60,252,112,28,112,28,0,28,0,28,0,252,31,252,127,156, + 120,28,240,28,224,28,224,60,224,124,121,252,127,223,63,143, + 16,25,50,18,1,0,3,128,6,192,4,64,4,64,6,192, + 3,128,0,0,15,224,63,248,60,124,112,28,112,28,0,28, + 0,28,0,252,31,252,127,156,120,28,240,28,224,28,224,60, + 224,124,120,252,127,223,63,143,26,18,72,29,1,0,7,192, + 248,0,31,241,254,0,60,127,143,0,112,62,3,128,112,30, + 3,128,0,28,1,192,0,28,1,192,0,252,1,192,15,255, + 255,192,63,255,255,192,126,31,255,192,240,28,0,0,224,28, + 1,192,224,30,1,192,224,126,3,128,248,247,143,0,127,231, + 255,0,63,129,252,0,14,25,50,17,1,249,7,192,31,240, + 63,248,56,56,112,28,112,28,224,0,224,0,224,0,224,0, + 224,0,224,28,224,28,112,56,120,120,63,240,31,224,7,128, + 3,0,3,0,7,128,1,192,0,192,25,192,15,128,15,25, + 50,18,1,0,30,0,15,0,7,0,3,128,1,192,0,0, + 0,0,7,192,31,240,62,120,120,28,112,28,240,14,224,14, + 224,14,255,254,255,254,224,0,224,0,224,14,112,14,120,28, + 60,124,31,240,15,224,15,25,50,18,1,0,1,224,3,192, + 3,128,7,0,14,0,0,0,0,0,7,192,31,240,60,120, + 120,28,112,28,240,14,224,14,224,14,255,254,255,254,224,0, + 224,0,224,14,112,14,120,28,60,124,31,240,15,224,15,25, + 50,18,1,0,1,0,3,128,7,192,14,224,28,112,0,0, + 0,0,7,192,31,240,60,120,120,28,112,28,240,14,224,14, + 224,14,255,254,255,254,224,0,224,0,224,14,112,14,120,28, + 60,124,31,240,7,192,15,23,46,18,1,0,28,112,28,112, + 28,112,0,0,0,0,7,192,31,240,60,120,120,28,112,28, + 240,14,224,14,224,14,255,254,255,254,224,0,224,0,224,14, + 112,14,120,28,60,124,31,240,7,192,7,25,25,9,0,0, + 240,120,56,28,14,0,0,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,7,25,25,9,2,0,30, + 60,56,112,224,0,0,112,112,112,112,112,112,112,112,112,112, + 112,112,112,112,112,112,112,112,9,25,50,9,0,0,8,0, + 28,0,62,0,119,0,227,128,0,0,0,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 8,23,23,9,1,0,231,231,231,0,0,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,15,25,50, + 19,1,0,120,64,60,224,31,192,15,128,31,128,59,192,17, + 224,7,240,31,248,63,248,120,60,112,28,112,28,224,14,224, + 14,224,14,224,14,224,14,224,14,112,28,112,28,120,60,63, + 248,31,240,7,192,14,24,48,18,2,0,14,48,31,240,63, + 224,49,192,0,0,0,0,3,192,239,240,255,248,248,60,240, + 28,240,28,224,28,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,224,28,224,28,15,25,50,19,1, + 0,30,0,15,0,7,0,3,128,1,192,0,0,0,0,7, + 192,31,240,63,248,120,60,112,28,112,28,224,14,224,14,224, + 14,224,14,224,14,224,14,112,28,112,28,120,60,63,248,31, + 240,7,192,15,25,50,19,1,0,1,224,3,192,3,128,7, + 0,14,0,0,0,0,0,7,192,31,240,63,248,120,60,112, + 28,112,28,224,14,224,14,224,14,224,14,224,14,224,14,112, + 28,112,28,120,60,63,248,31,240,7,192,15,25,50,19,1, + 0,1,0,3,128,7,192,14,224,28,112,0,0,0,0,7, + 192,31,240,63,248,120,60,112,28,112,28,224,14,224,14,224, + 14,224,14,224,14,224,14,112,28,112,28,120,60,63,248,31, + 240,7,192,15,24,48,19,1,0,14,48,31,240,63,224,49, + 192,0,0,0,0,7,192,31,240,63,248,120,60,112,28,112, + 28,224,14,224,14,224,14,224,14,224,14,224,14,112,28,112, + 28,120,60,63,248,31,240,7,192,15,23,46,19,1,0,28, + 112,28,112,28,112,0,0,0,0,7,192,31,240,63,248,120, + 60,112,28,112,28,224,14,224,14,224,14,224,14,224,14,224, + 14,112,28,112,28,120,60,63,248,31,240,7,192,15,15,30, + 19,2,1,3,128,3,128,3,128,0,0,0,0,0,0,255, + 254,255,254,255,254,0,0,0,0,0,0,3,128,3,128,3, + 128,16,18,36,19,2,0,7,195,31,246,63,252,120,120,112, + 28,112,60,224,110,224,206,225,142,227,14,230,14,236,14,120, + 28,112,28,56,60,127,248,223,240,135,192,14,25,50,19,2, + 0,30,0,15,0,7,0,3,128,1,192,0,0,0,0,224, + 28,224,28,224,28,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,224,60,224,60,240,252,127,252,63, + 220,15,0,14,25,50,19,2,0,1,224,3,192,3,128,7, + 0,14,0,0,0,0,0,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,224,28,224,28,224,28,224,28,224, + 60,224,60,240,252,127,252,63,220,15,0,14,25,50,19,2, + 0,1,0,3,128,7,192,14,224,28,112,0,0,0,0,224, + 28,224,28,224,28,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,224,60,224,60,240,252,127,252,63, + 220,15,0,14,23,46,19,2,0,28,224,28,224,28,224,0, + 0,0,0,224,28,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,224,28,224,28,224,60,224,60,240, + 252,127,252,63,220,15,0,14,32,64,17,1,249,0,240,1, + 224,1,192,3,128,7,0,0,0,0,0,224,28,224,28,224, + 60,112,56,112,56,112,56,120,112,56,112,56,240,60,224,28, + 224,29,192,29,192,15,192,15,128,15,128,7,0,7,0,7, + 0,14,0,14,0,30,0,124,0,124,0,112,0,15,31,62, + 19,2,250,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,231,224,239,240,255,248,248,60,240,28,240,30,224,14,224, + 14,224,14,224,14,224,14,224,14,240,28,240,28,248,60,255, + 248,239,240,227,192,224,0,224,0,224,0,224,0,224,0,224, + 0,14,30,60,17,1,249,28,112,28,112,28,112,0,0,0, + 0,224,28,224,28,224,60,112,56,112,56,112,120,120,112,56, + 112,56,240,60,224,28,224,29,192,29,192,15,192,15,128,15, + 128,7,0,7,0,7,0,14,0,14,0,30,0,124,0,124, + 0,112,0}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--34-240-100-100-P-176-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 24 + Calculated Max Values w=17 h=24 x= 3 y=15 dx=19 dy= 0 ascent=26 len=48 + Font Bounding box w=39 h=48 x=-5 y=-11 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =24 descent= 0 + X Font ascent =24 descent= 0 + Max Font ascent =26 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR24n[702] U8G_SECTION(".progmem.u8g_font_helvR24n") = { + 0,39,48,251,245,24,0,0,0,0,42,57,0,26,251,24, + 0,10,11,22,13,1,15,12,0,12,0,76,128,237,192,127, + 128,63,0,30,0,63,0,115,128,225,192,64,128,17,16,48, + 19,1,1,1,192,0,1,192,0,1,192,0,1,192,0,1, + 192,0,1,192,0,1,192,0,255,255,128,255,255,128,255,255, + 128,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,3,9,9,9,3,251,224,224,224,224,32,96,96, + 192,128,8,2,2,11,1,8,255,255,3,4,4,9,3,0, + 224,224,224,224,9,24,48,9,0,0,1,128,1,128,1,128, + 3,0,3,0,3,0,6,0,6,0,6,0,12,0,12,0, + 12,0,8,0,24,0,24,0,24,0,48,0,48,0,48,0, + 96,0,96,0,96,0,192,0,192,0,15,24,48,18,1,0, + 7,192,31,240,63,248,60,120,120,60,112,28,112,28,224,14, + 224,14,224,14,224,14,224,14,224,14,224,14,224,14,224,14, + 224,14,112,28,112,28,112,60,60,120,63,248,31,240,7,192, + 8,24,24,18,3,0,3,7,7,15,63,255,255,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,15,24, + 48,18,1,0,7,192,31,240,63,248,120,60,112,28,240,14, + 224,14,224,14,0,14,0,28,0,60,0,120,0,240,3,224, + 7,192,31,0,60,0,120,0,112,0,224,0,224,0,255,254, + 255,254,255,254,15,24,48,18,1,0,7,192,31,240,63,248, + 56,56,112,28,112,28,112,28,112,28,0,28,0,56,3,248, + 3,240,3,248,0,60,0,30,0,14,224,14,224,14,224,14, + 112,28,120,60,63,248,31,240,7,192,16,24,48,18,0,0, + 0,24,0,56,0,120,0,120,0,248,1,248,3,184,3,184, + 7,56,14,56,14,56,28,56,56,56,56,56,112,56,224,56, + 255,255,255,255,255,255,0,56,0,56,0,56,0,56,0,56, + 15,24,48,18,1,0,63,252,63,252,63,252,56,0,56,0, + 56,0,112,0,112,0,119,192,127,240,127,248,120,124,112,28, + 0,30,0,14,0,14,0,14,224,14,224,30,240,28,120,124, + 127,248,63,240,15,128,15,24,48,18,1,0,3,192,15,240, + 31,248,60,56,56,28,112,28,112,0,112,0,96,0,227,192, + 239,240,255,248,248,60,240,28,240,14,224,14,224,14,96,14, + 112,14,112,28,56,60,63,248,31,240,7,192,15,24,48,18, + 1,0,255,254,255,254,255,254,0,14,0,28,0,24,0,56, + 0,112,0,112,0,224,0,224,1,192,1,192,3,128,3,128, + 7,0,7,0,7,0,14,0,14,0,14,0,28,0,28,0, + 28,0,15,24,48,18,1,0,7,192,31,240,63,248,56,60, + 112,28,112,28,112,28,112,28,120,60,60,120,31,240,15,224, + 63,248,120,60,112,28,224,14,224,14,224,14,224,14,240,28, + 120,60,63,248,31,240,7,192,15,24,48,18,1,0,7,192, + 31,240,63,248,120,124,112,60,240,28,224,30,224,14,224,14, + 224,14,224,30,224,30,112,62,127,254,63,238,15,206,0,14, + 0,28,224,28,240,60,120,120,63,240,63,224,15,128}; +/* + Fontname: -Adobe-Helvetica-Medium-R-Normal--34-240-100-100-P-176-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=29 h=32 x= 4 y=20 dx=34 dy= 0 ascent=27 len=120 + Font Bounding box w=39 h=48 x=-5 y=-11 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =27 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_helvR24r[4992] U8G_SECTION(".progmem.u8g_font_helvR24r") = { + 0,39,48,251,245,25,5,215,14,105,32,127,249,27,249,25, + 249,0,0,0,9,0,1,3,25,25,9,4,0,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,64,64, + 0,0,224,224,224,224,8,8,8,12,2,15,231,231,231,231, + 231,231,66,66,17,23,69,19,1,0,3,135,0,3,135,0, + 3,6,0,3,6,0,7,14,0,7,14,0,127,255,128,127, + 255,128,127,255,128,14,28,0,14,28,0,12,24,0,28,56, + 0,28,56,0,255,255,0,255,255,0,255,255,0,56,112,0, + 56,112,0,48,96,0,48,96,0,112,224,0,112,224,0,16, + 31,62,18,1,252,1,128,1,128,1,128,15,240,31,248,61, + 188,113,142,113,142,225,142,225,128,225,128,113,128,125,128,63, + 192,31,240,7,252,1,254,1,158,1,143,1,135,225,135,225, + 135,113,142,113,142,61,188,63,248,15,240,1,128,1,128,1, + 128,1,128,26,24,96,29,1,0,0,0,48,0,31,0,112, + 0,127,128,96,0,115,192,224,0,224,192,192,0,192,225,192, + 0,192,225,128,0,192,227,128,0,224,195,0,0,115,199,0, + 0,127,134,0,0,31,14,0,0,0,12,0,0,0,28,62, + 0,0,24,127,128,0,56,243,128,0,48,193,192,0,113,192, + 192,0,97,192,192,0,225,192,192,0,192,193,192,1,192,227, + 128,1,128,127,128,3,128,62,0,18,23,69,22,2,0,7, + 192,0,15,224,0,30,112,0,60,56,0,56,56,0,56,56, + 0,60,112,0,30,240,0,15,224,0,7,192,0,15,128,0, + 63,192,0,121,199,0,112,231,0,224,246,0,224,126,0,224, + 60,0,224,28,0,240,62,0,120,127,0,127,247,128,63,227, + 192,15,0,0,3,8,8,6,2,15,224,224,224,224,224,224, + 224,64,7,31,31,11,2,249,6,12,12,24,24,56,48,112, + 112,112,96,224,224,224,224,224,224,224,224,224,96,112,112,112, + 48,56,24,24,12,12,6,7,31,31,11,1,249,192,96,96, + 48,48,56,24,28,28,28,12,14,14,14,14,14,14,14,14, + 12,12,28,28,24,24,56,48,112,96,96,192,10,11,22,13, + 1,15,12,0,12,0,76,128,237,192,127,128,63,0,30,0, + 63,0,115,128,225,192,64,128,17,16,48,19,1,1,1,192, + 0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,255,255,128,255,255,128,255,255,128,1,192,0,1, + 192,0,1,192,0,1,192,0,1,192,0,1,192,0,3,9, + 9,9,3,251,224,224,224,224,32,96,96,192,128,8,2,2, + 11,1,8,255,255,3,4,4,9,3,0,224,224,224,224,9, + 24,48,9,0,0,1,128,1,128,1,128,3,0,3,0,3, + 0,6,0,6,0,6,0,12,0,12,0,12,0,8,0,24, + 0,24,0,24,0,48,0,48,0,48,0,96,0,96,0,96, + 0,192,0,192,0,15,24,48,18,1,0,7,192,31,240,63, + 248,60,120,120,60,112,28,112,28,224,14,224,14,224,14,224, + 14,224,14,224,14,224,14,224,14,224,14,224,14,112,28,112, + 28,112,60,60,120,63,248,31,240,7,192,8,24,24,18,3, + 0,3,7,7,15,63,255,255,7,7,7,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,15,24,48,18,1,0,7, + 192,31,240,63,248,120,60,112,28,240,14,224,14,224,14,0, + 14,0,28,0,60,0,120,0,240,3,224,7,192,31,0,60, + 0,120,0,112,0,224,0,224,0,255,254,255,254,255,254,15, + 24,48,18,1,0,7,192,31,240,63,248,56,56,112,28,112, + 28,112,28,112,28,0,28,0,56,3,248,3,240,3,248,0, + 60,0,30,0,14,224,14,224,14,224,14,112,28,120,60,63, + 248,31,240,7,192,16,24,48,18,0,0,0,24,0,56,0, + 120,0,120,0,248,1,248,3,184,3,184,7,56,14,56,14, + 56,28,56,56,56,56,56,112,56,224,56,255,255,255,255,255, + 255,0,56,0,56,0,56,0,56,0,56,15,24,48,18,1, + 0,63,252,63,252,63,252,56,0,56,0,56,0,112,0,112, + 0,119,192,127,240,127,248,120,124,112,28,0,30,0,14,0, + 14,0,14,224,14,224,30,240,28,120,124,127,248,63,240,15, + 128,15,24,48,18,1,0,3,192,15,240,31,248,60,56,56, + 28,112,28,112,0,112,0,96,0,227,192,239,240,255,248,248, + 60,240,28,240,14,224,14,224,14,96,14,112,14,112,28,56, + 60,63,248,31,240,7,192,15,24,48,18,1,0,255,254,255, + 254,255,254,0,14,0,28,0,24,0,56,0,112,0,112,0, + 224,0,224,1,192,1,192,3,128,3,128,7,0,7,0,7, + 0,14,0,14,0,14,0,28,0,28,0,28,0,15,24,48, + 18,1,0,7,192,31,240,63,248,56,60,112,28,112,28,112, + 28,112,28,120,60,60,120,31,240,15,224,63,248,120,60,112, + 28,224,14,224,14,224,14,224,14,240,28,120,60,63,248,31, + 240,7,192,15,24,48,18,1,0,7,192,31,240,63,248,120, + 124,112,60,240,28,224,30,224,14,224,14,224,14,224,30,224, + 30,112,62,127,254,63,238,15,206,0,14,0,28,224,28,240, + 60,120,120,63,240,63,224,15,128,3,18,18,9,4,0,224, + 224,224,224,0,0,0,0,0,0,0,0,0,0,224,224,224, + 224,3,22,22,9,4,251,224,224,224,224,0,0,0,0,0, + 0,0,0,0,224,224,224,224,32,96,96,192,128,16,16,32, + 19,2,0,0,3,0,15,0,63,1,252,7,224,31,128,254, + 0,240,0,240,0,254,0,31,128,7,224,1,252,0,127,0, + 15,0,3,15,9,18,19,2,4,255,254,255,254,255,254,0, + 0,0,0,0,0,255,254,255,254,255,254,16,16,32,19,1, + 0,192,0,240,0,254,0,63,128,7,224,1,248,0,127,0, + 15,0,15,0,127,1,248,7,224,63,128,254,0,240,0,192, + 0,14,25,50,18,2,0,7,192,31,240,63,248,120,56,112, + 28,240,28,224,28,224,28,0,28,0,56,0,56,0,112,0, + 224,1,224,1,192,3,128,3,128,3,128,3,128,0,0,0, + 0,3,128,3,128,3,128,3,128,29,30,120,34,1,251,0, + 7,192,0,0,63,248,0,0,255,254,0,3,240,63,128,7, + 192,7,192,15,0,3,224,30,0,1,224,28,0,0,240,56, + 15,140,112,56,31,220,56,112,60,252,56,112,112,124,56,96, + 224,56,24,224,224,56,24,225,224,56,24,225,192,112,56,225, + 192,112,56,225,192,112,112,225,192,224,112,225,224,224,224,112, + 243,243,192,112,255,127,128,120,62,127,0,60,0,0,0,30, + 0,0,0,31,0,0,0,15,128,0,0,3,224,120,0,1, + 255,248,0,0,127,224,0,20,25,75,22,1,0,0,240,0, + 0,240,0,0,248,0,1,248,0,1,248,0,3,156,0,3, + 156,0,3,156,0,7,158,0,7,14,0,7,14,0,15,15, + 0,15,15,0,14,7,0,30,7,128,31,255,128,31,255,128, + 63,255,192,60,3,192,56,1,192,120,1,224,120,1,224,112, + 0,224,240,0,240,240,0,240,17,25,75,22,3,0,255,240, + 0,255,252,0,255,254,0,224,62,0,224,15,0,224,15,0, + 224,7,0,224,7,0,224,15,0,224,14,0,224,62,0,255, + 252,0,255,252,0,255,254,0,224,31,0,224,7,128,224,3, + 128,224,3,128,224,3,128,224,3,128,224,7,128,224,15,0, + 255,254,0,255,254,0,255,248,0,20,25,75,24,2,0,1, + 252,0,7,255,0,15,255,128,31,7,192,60,1,224,56,0, + 224,112,0,240,112,0,112,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,112,240,0,112,112,0,240,120,0,224,60,1,224,63,7, + 192,31,255,128,7,254,0,1,248,0,18,25,75,24,3,0, + 255,240,0,255,252,0,255,254,0,224,31,0,224,15,0,224, + 7,128,224,3,128,224,3,128,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,3,192,224,3,128,224,3,128,224,7,128,224,15,0,224, + 30,0,255,254,0,255,252,0,255,240,0,17,25,75,22,3, + 0,255,255,0,255,255,0,255,255,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,255,255,0,255,255,0,255,255,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,255,255,128,255,255,128,255,255,128,16,25,50,20, + 3,0,255,255,255,255,255,255,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,255,252,255,252,255,252,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,22,25,75,25,1,0,0,254,0,3,255,128, + 15,255,192,31,131,240,62,0,240,60,0,120,120,0,56,112, + 0,56,240,0,0,224,0,0,224,0,0,224,0,0,224,15, + 252,224,15,252,224,15,252,224,0,28,240,0,28,112,0,28, + 120,0,60,56,0,60,60,0,252,31,1,252,15,255,220,7, + 255,28,1,252,28,18,25,75,24,3,0,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,255,255,192,255, + 255,192,255,255,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,3,25,25,9,3,0,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,13,25,50,16,1,0,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,224,56,224,56,224, + 56,224,56,240,120,120,240,127,240,63,224,31,128,20,25,75, + 22,3,0,224,3,192,224,7,128,224,15,0,224,30,0,224, + 60,0,224,120,0,224,240,0,225,224,0,227,192,0,231,192, + 0,239,128,0,255,192,0,255,192,0,249,224,0,240,240,0, + 224,112,0,224,120,0,224,60,0,224,28,0,224,30,0,224, + 15,0,224,7,128,224,3,192,224,3,224,224,1,240,14,25, + 50,18,3,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,224,0,224,0,224,0, + 255,252,255,252,255,252,21,25,75,27,3,0,240,0,120,240, + 0,120,248,0,248,248,0,248,252,1,248,252,1,248,252,1, + 248,236,1,184,238,3,184,238,3,184,230,3,56,231,7,56, + 231,7,56,227,6,56,227,142,56,227,142,56,227,142,56,225, + 140,56,225,220,56,225,220,56,224,216,56,224,248,56,224,248, + 56,224,112,56,224,112,56,19,25,75,24,2,0,240,0,224, + 240,0,224,248,0,224,252,0,224,252,0,224,254,0,224,239, + 0,224,231,0,224,231,128,224,227,192,224,227,192,224,225,224, + 224,224,224,224,224,240,224,224,120,224,224,56,224,224,60,224, + 224,28,224,224,30,224,224,15,224,224,7,224,224,7,224,224, + 3,224,224,1,224,224,1,224,23,25,75,25,1,0,0,254, + 0,3,255,128,15,239,224,31,1,240,62,0,248,60,0,120, + 120,0,60,112,0,28,240,0,30,224,0,14,224,0,14,224, + 0,14,224,0,14,224,0,14,224,0,14,224,0,14,240,0, + 30,240,0,30,120,0,60,60,0,120,62,0,248,31,1,240, + 15,239,224,3,255,128,0,254,0,17,25,75,22,3,0,255, + 248,0,255,254,0,255,255,0,224,15,0,224,7,128,224,3, + 128,224,3,128,224,3,128,224,3,128,224,3,128,224,7,128, + 224,15,0,255,255,0,255,254,0,255,248,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,23,26,78,26,1,255, + 0,254,0,3,255,128,15,239,224,31,1,240,62,0,248,60, + 0,120,120,0,60,112,0,28,240,0,30,224,0,14,224,0, + 14,224,0,14,224,0,14,224,0,14,224,0,14,224,0,14, + 240,0,30,240,2,30,120,7,60,60,7,184,62,3,248,31, + 1,240,15,239,248,3,255,188,0,254,30,0,0,12,19,25, + 75,24,3,0,255,252,0,255,255,0,255,255,128,224,7,128, + 224,3,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 3,192,224,3,128,224,15,128,255,255,0,255,254,0,255,255, + 0,224,15,128,224,7,128,224,3,128,224,3,192,224,3,192, + 224,3,192,224,1,192,224,1,192,224,1,192,224,1,224,19, + 25,75,22,1,0,3,248,0,15,254,0,31,255,0,60,15, + 128,56,3,192,112,1,192,112,1,192,112,0,0,120,0,0, + 124,0,0,63,192,0,31,248,0,7,255,0,0,127,128,0, + 15,192,0,1,224,0,0,224,224,0,224,240,0,224,112,1, + 224,120,1,192,62,7,192,63,255,128,15,254,0,3,248,0, + 19,25,75,20,0,0,255,255,224,255,255,224,255,255,224,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,18,25,75,24,3,0,224,1,192,224,1,192,224,1,192, + 224,1,192,224,1,192,224,1,192,224,1,192,224,1,192,224, + 1,192,224,1,192,224,1,192,224,1,192,224,1,192,224,1, + 192,224,1,192,224,1,192,224,1,192,224,1,192,224,1,192, + 240,3,192,120,7,128,124,15,128,63,255,0,31,254,0,3, + 240,0,19,25,75,22,1,0,240,1,224,240,1,224,240,1, + 224,112,1,192,120,3,192,120,3,192,56,3,128,56,3,128, + 60,7,128,28,7,0,28,7,0,30,15,0,14,14,0,14, + 14,0,15,14,0,7,28,0,7,28,0,7,156,0,3,184, + 0,3,184,0,3,184,0,1,240,0,1,240,0,0,224,0, + 0,224,0,29,25,100,31,1,0,240,7,0,120,240,7,0, + 120,240,15,128,120,112,15,128,112,112,15,128,112,120,29,192, + 240,120,29,192,240,56,29,192,224,56,29,192,224,56,56,224, + 224,60,56,225,224,28,56,225,192,28,48,225,192,28,112,113, + 192,28,112,113,192,14,112,115,128,14,224,59,128,14,224,59, + 128,14,224,59,128,7,224,63,128,7,192,31,0,7,192,31, + 0,7,192,31,0,3,128,14,0,3,128,14,0,20,25,75, + 22,1,0,248,0,240,120,1,224,60,3,192,28,3,192,30, + 7,128,15,7,0,15,15,0,7,158,0,3,156,0,3,252, + 0,1,248,0,0,240,0,0,240,0,1,248,0,1,248,0, + 3,156,0,7,158,0,7,14,0,15,15,0,30,7,128,30, + 7,128,60,3,192,120,1,224,120,1,224,240,0,240,21,25, + 75,22,0,0,240,0,120,120,0,240,120,0,224,60,1,224, + 28,1,192,30,3,192,14,7,128,15,7,128,7,143,0,3, + 142,0,3,222,0,1,220,0,1,252,0,0,248,0,0,248, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,18, + 25,75,20,1,0,127,255,192,127,255,192,127,255,192,0,7, + 128,0,15,128,0,15,0,0,30,0,0,60,0,0,60,0, + 0,120,0,0,240,0,1,224,0,1,224,0,3,192,0,7, + 128,0,7,128,0,15,0,0,30,0,0,60,0,0,60,0, + 0,120,0,0,240,0,0,255,255,192,255,255,192,255,255,192, + 6,32,32,9,2,249,252,252,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,252,252,9,24,48,9,0,0,192,0,192,0, + 96,0,96,0,96,0,48,0,48,0,48,0,16,0,24,0, + 24,0,24,0,12,0,12,0,12,0,6,0,6,0,6,0, + 2,0,3,0,3,0,3,0,1,128,1,128,6,32,32,9, + 1,249,252,252,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 252,252,12,13,26,16,1,11,6,0,15,0,15,0,31,128, + 25,128,25,128,57,192,48,192,112,224,96,96,96,96,224,112, + 192,48,18,2,6,18,0,250,255,255,192,255,255,192,6,5, + 5,11,1,20,224,240,112,56,28,16,18,36,18,1,0,15, + 224,63,248,60,120,112,60,112,28,0,28,0,60,1,252,31, + 252,126,28,120,28,240,28,224,28,224,60,224,124,121,254,127, + 223,63,143,15,25,50,18,2,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,227,224,239,240,255,248,248,60,240, + 28,240,30,224,14,224,14,224,14,224,14,224,14,224,14,240, + 30,240,28,252,60,255,248,239,240,231,224,14,18,36,16,1, + 0,7,192,31,240,63,248,56,60,112,28,112,28,224,0,224, + 0,224,0,224,0,224,0,224,28,224,28,112,28,120,56,63, + 248,31,240,7,192,15,25,50,18,1,0,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,7,206,31,238,63,254,124, + 62,112,30,240,30,224,14,224,14,224,14,224,14,224,14,224, + 14,240,30,240,30,120,62,127,254,63,238,15,206,15,18,36, + 18,2,0,7,192,31,240,63,248,120,60,112,28,240,14,224, + 14,224,14,255,254,255,254,224,0,224,0,240,14,112,30,120, + 60,63,248,31,240,7,192,8,25,25,9,1,0,15,31,60, + 56,56,56,56,255,255,255,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,15,25,50,18,1,249,7,206,31,238, + 63,254,124,62,112,30,240,30,224,14,224,14,224,14,224,14, + 224,14,224,14,240,30,112,62,120,62,63,254,31,238,7,142, + 0,14,224,14,224,28,240,28,124,120,63,248,31,224,14,25, + 50,18,2,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,227,224,239,240,255,248,248,60,240,28,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,3,25,25,7,2,0,224,224,224,224, + 0,0,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,6,32,32,7,255,249,28,28,28,28,0, + 0,0,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,60,252,248,15,25,50,16,1, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 120,224,240,225,224,227,192,231,128,239,0,255,0,255,0,251, + 128,243,192,225,192,225,224,224,224,224,240,224,120,224,56,224, + 60,224,30,3,25,25,7,2,0,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,23,18,54,27,2,0,227,192,240,239,243,252,255,247, + 252,248,126,30,240,60,14,224,56,14,224,56,14,224,56,14, + 224,56,14,224,56,14,224,56,14,224,56,14,224,56,14,224, + 56,14,224,56,14,224,56,14,224,56,14,224,56,14,14,18, + 36,18,2,0,227,224,239,248,255,248,248,60,240,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,15,18,36,18,1,0,7,192, + 31,240,63,248,120,60,112,28,240,30,224,14,224,14,224,14, + 224,14,224,14,224,14,240,30,112,28,120,60,63,248,31,240, + 7,192,15,25,50,18,2,249,3,192,239,240,255,248,248,60, + 240,28,240,30,224,14,224,14,224,14,224,14,224,14,224,14, + 240,30,240,28,248,60,255,248,239,240,231,224,224,0,224,0, + 224,0,224,0,224,0,224,0,224,0,15,25,50,18,1,249, + 7,192,31,238,63,254,124,62,112,30,240,30,224,14,224,14, + 224,14,224,14,224,14,224,14,240,30,112,30,120,62,63,254, + 31,238,15,206,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,8,18,18,11,2,0,231,239,255,252,240,240,224,224, + 224,224,224,224,224,224,224,224,224,224,13,18,36,16,2,0, + 15,128,63,224,127,224,112,240,224,112,224,0,112,0,126,0, + 63,192,7,240,0,240,0,120,224,56,224,56,240,112,127,240, + 127,224,31,128,8,22,22,9,1,0,56,56,56,56,255,255, + 255,56,56,56,56,56,56,56,56,56,56,56,56,60,63,31, + 14,18,36,18,2,0,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,60,240,124,127,252,127,220,31,28,15,18,36,16,0,0, + 224,14,224,14,112,28,112,28,112,28,56,56,56,56,56,56, + 28,112,28,112,28,112,14,224,14,224,14,224,7,192,7,192, + 3,128,3,128,23,18,54,23,0,0,224,56,14,224,56,14, + 112,124,28,112,124,28,112,108,28,56,238,28,56,238,56,56, + 238,56,56,198,56,24,198,48,29,199,112,29,199,112,29,199, + 112,13,131,96,15,131,224,15,131,224,7,1,192,7,1,192, + 15,18,36,16,0,0,240,30,120,28,56,56,60,112,28,112, + 14,224,15,224,7,192,3,128,7,192,7,192,15,224,30,224, + 28,112,56,120,56,56,112,28,240,30,14,25,50,16,1,249, + 224,28,224,28,240,56,112,56,112,56,112,112,56,112,56,112, + 56,224,60,224,28,224,29,192,29,192,15,192,15,128,15,128, + 7,0,7,0,7,0,14,0,14,0,28,0,124,0,120,0, + 112,0,14,18,36,16,1,0,127,248,127,248,127,248,0,120, + 0,240,0,224,1,192,3,192,7,128,7,0,14,0,28,0, + 60,0,120,0,112,0,255,252,255,252,255,252,8,32,32,11, + 1,249,15,31,28,24,24,24,24,24,24,24,24,24,56,56, + 112,224,224,112,56,56,24,24,24,24,24,24,24,24,24,28, + 31,15,2,31,31,9,3,249,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,8,32,32,11,1,249,240,248,56, + 24,24,24,24,24,24,24,24,24,28,28,14,7,7,14,28, + 28,24,24,24,24,24,24,24,24,24,56,248,240,14,6,12, + 19,2,9,24,0,124,12,127,12,199,220,193,248,0,240,255 + }; +/* + Fontname: -FreeType-Lucasfont Alternate-Medium-R-Normal--8-80-72-72-P-50-ISO10646-1 + Copyright: Copyright Patrick Lauke 2012 Lucasfont Alternate is based on Lucasfont by Patrick Lauke (http://fontstruct.com/fontstructors/redux) + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 9 h=10 x= 1 y= 4 dx=10 dy= 0 ascent=10 len=14 + Font Bounding box w= 9 h=11 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-1 + X Font ascent = 7 descent=-1 + Max Font ascent =10 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_lucasfont_alternate[2193] U8G_SECTION(".progmem.u8g_font_lucasfont_alternate") = { + 0,9,11,0,255,7,1,148,3,22,32,255,255,10,255,7, + 255,0,0,0,4,0,0,1,7,7,2,0,0,128,128,128, + 128,0,0,128,3,3,3,4,0,4,160,160,160,5,7,7, + 6,0,0,80,80,248,80,248,80,80,5,7,7,6,0,0, + 32,120,128,248,8,240,32,7,7,7,8,0,0,2,68,8, + 16,32,68,128,6,7,7,7,0,0,96,144,144,96,148,136, + 116,1,3,3,2,0,4,128,128,128,3,7,7,4,0,0, + 32,64,128,128,128,64,32,3,7,7,4,0,0,128,64,32, + 32,32,64,128,7,5,5,8,0,1,68,40,254,40,68,5, + 5,5,6,0,1,32,32,248,32,32,2,3,3,3,0,255, + 64,64,128,6,1,1,7,0,3,252,1,2,2,2,0,0, + 128,128,7,7,7,8,0,0,2,4,8,16,32,64,128,5, + 7,7,6,0,0,112,136,136,136,136,136,112,5,7,7,6, + 0,0,32,96,32,32,32,32,248,5,7,7,6,0,0,112, + 136,8,16,32,64,248,5,7,7,6,0,0,240,8,8,120, + 8,8,240,5,7,7,6,0,0,16,48,80,144,248,16,16, + 5,7,7,6,0,0,248,128,112,8,8,136,112,5,7,7, + 6,0,0,112,136,128,240,136,136,112,5,7,7,6,0,0, + 248,8,16,32,32,32,32,5,7,7,6,0,0,112,136,136, + 112,136,136,112,5,7,7,6,0,0,112,136,136,120,8,136, + 112,1,4,4,2,0,1,128,0,0,128,2,6,6,3,0, + 255,64,0,0,64,64,128,4,7,7,5,0,0,16,32,64, + 128,64,32,16,5,3,3,6,0,2,248,0,248,4,7,7, + 5,0,0,128,64,32,16,32,64,128,5,7,7,6,0,0, + 112,136,8,16,32,0,32,7,7,7,8,0,0,124,130,154, + 170,190,128,124,5,7,7,6,0,0,112,136,136,248,136,136, + 136,5,7,7,6,0,0,240,136,136,240,136,136,240,5,7, + 7,6,0,0,120,128,128,128,128,128,120,5,7,7,6,0, + 0,240,136,136,136,136,136,240,5,7,7,6,0,0,248,128, + 128,240,128,128,248,5,7,7,6,0,0,248,128,128,240,128, + 128,128,5,7,7,6,0,0,112,136,128,184,136,136,112,5, + 7,7,6,0,0,136,136,136,248,136,136,136,1,7,7,2, + 0,0,128,128,128,128,128,128,128,5,7,7,6,0,0,8, + 8,8,8,8,136,112,5,7,7,6,0,0,136,144,160,192, + 160,144,136,5,7,7,6,0,0,128,128,128,128,128,128,248, + 7,7,7,8,0,0,130,198,170,146,130,130,130,6,7,7, + 7,0,0,132,196,164,148,140,132,132,5,7,7,6,0,0, + 112,136,136,136,136,136,112,5,7,7,6,0,0,240,136,136, + 240,128,128,128,5,7,7,6,0,0,112,136,136,136,168,144, + 104,5,7,7,6,0,0,240,136,136,240,160,144,136,5,7, + 7,6,0,0,112,136,128,112,8,136,112,5,7,7,6,0, + 0,248,32,32,32,32,32,32,5,7,7,6,0,0,136,136, + 136,136,136,136,112,5,7,7,6,0,0,136,136,136,136,136, + 80,32,7,7,7,8,0,0,130,130,130,146,170,198,130,5, + 7,7,6,0,0,136,136,80,32,80,136,136,5,7,7,6, + 0,0,136,136,136,80,32,32,32,5,7,7,6,0,0,248, + 8,16,32,64,128,248,3,7,7,4,0,0,224,128,128,128, + 128,128,224,7,7,7,8,0,0,128,64,32,16,8,4,2, + 3,7,7,4,0,0,224,32,32,32,32,32,224,255,7,1, + 1,8,0,0,254,255,5,5,5,6,0,0,112,8,120,136, + 120,5,6,6,6,0,0,128,128,240,136,136,240,4,5,5, + 5,0,0,112,128,128,128,112,5,6,6,6,0,0,8,8, + 120,136,136,120,5,5,5,6,0,0,112,136,240,128,120,4, + 6,6,5,0,0,48,64,240,64,64,64,5,6,6,6,0, + 255,112,136,136,120,8,112,5,6,6,6,0,0,128,128,240, + 136,136,136,1,6,6,2,0,0,128,0,128,128,128,128,3, + 7,7,4,0,255,32,0,32,32,32,32,192,4,6,6,5, + 0,0,128,128,144,224,160,144,2,6,6,3,0,0,192,64, + 64,64,64,64,7,5,5,8,0,0,252,146,146,146,146,5, + 5,5,6,0,0,240,136,136,136,136,5,5,5,6,0,0, + 112,136,136,136,112,5,6,6,6,0,255,240,136,136,240,128, + 128,5,6,6,6,0,255,120,136,136,120,8,8,5,5,5, + 6,0,0,240,136,128,128,128,5,5,5,6,0,0,120,128, + 112,8,240,5,6,6,6,0,0,32,248,32,32,32,16,5, + 5,5,6,0,0,136,136,136,136,120,5,5,5,6,0,0, + 136,136,136,80,32,7,5,5,8,0,0,146,146,146,146,126, + 5,5,5,6,0,0,136,80,32,80,136,5,6,6,6,0, + 255,136,136,136,120,8,112,5,5,5,6,0,0,248,16,32, + 64,248,4,7,7,5,0,0,48,64,64,128,64,64,48,1, + 7,7,2,0,0,128,128,128,128,128,128,128,4,7,7,5, + 0,0,192,32,32,16,32,32,192,6,2,2,7,0,3,100, + 152,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,1,7,7,2,0,0,128,0,0,128,128,128,128, + 5,7,7,6,0,0,32,112,168,160,168,112,32,5,7,7, + 6,0,0,56,64,64,240,64,64,248,255,5,7,7,6,0, + 0,136,136,80,32,248,32,32,1,7,7,2,0,0,128,128, + 128,0,128,128,128,255,255,8,8,8,9,0,255,60,66,153, + 161,161,153,66,60,255,6,5,5,7,0,1,36,72,144,72, + 36,5,3,3,6,0,1,248,8,8,5,1,1,6,0,3, + 248,255,255,255,5,7,7,6,0,0,32,32,248,32,32,0, + 248,255,255,255,255,6,7,7,7,0,0,124,244,244,116,20, + 20,20,1,1,1,2,0,3,128,255,255,255,6,5,5,7, + 0,1,144,72,36,72,144,255,255,255,5,7,7,6,0,0, + 32,0,32,64,128,136,112,5,10,10,6,0,0,64,32,0, + 112,136,136,248,136,136,136,5,10,10,6,0,0,16,32,0, + 112,136,136,248,136,136,136,5,10,10,6,0,0,32,80,0, + 112,136,136,248,136,136,136,5,10,10,6,0,0,104,144,0, + 112,136,136,248,136,136,136,5,9,9,6,0,0,80,0,112, + 136,136,248,136,136,136,5,10,10,6,0,0,32,80,32,112, + 136,136,248,136,136,136,9,7,14,10,0,0,119,128,136,0, + 136,0,255,0,136,0,136,0,143,128,255,5,10,10,6,0, + 0,64,32,0,248,128,128,240,128,128,248,5,10,10,6,0, + 0,16,32,0,248,128,128,240,128,128,248,5,10,10,6,0, + 0,32,80,0,248,128,128,240,128,128,248,5,9,9,6,0, + 0,80,0,248,128,128,240,128,128,248,2,10,10,3,0,0, + 128,64,0,64,64,64,64,64,64,64,2,10,10,4,1,0, + 64,128,0,128,128,128,128,128,128,128,3,10,10,4,0,0, + 64,160,0,64,64,64,64,64,64,64,3,9,9,4,0,0, + 160,0,64,64,64,64,64,64,64,6,7,7,7,0,0,120, + 68,68,244,68,68,120,6,10,10,7,0,0,100,152,0,132, + 196,164,148,140,132,132,5,10,10,6,0,0,64,32,0,112, + 136,136,136,136,136,112,5,10,10,6,0,0,16,32,0,112, + 136,136,136,136,136,112,5,10,10,6,0,0,32,80,0,112, + 136,136,136,136,136,112,5,10,10,6,0,0,104,144,0,112, + 136,136,136,136,136,112,5,8,8,6,0,0,136,112,136,136, + 136,136,136,112,5,5,5,6,0,1,136,80,32,80,136,255, + 5,10,10,6,0,0,64,32,0,136,136,136,136,136,136,112, + 5,10,10,6,0,0,16,32,0,136,136,136,136,136,136,112, + 5,10,10,6,0,0,32,80,0,136,136,136,136,136,136,112, + 5,8,8,6,0,0,136,0,136,136,136,136,136,112,5,10, + 10,6,0,0,16,32,0,136,136,136,80,32,32,32,255,4, + 8,8,5,0,255,96,144,144,160,144,144,160,128,5,8,8, + 6,0,0,64,32,0,112,8,120,136,120,5,8,8,6,0, + 0,16,32,0,112,8,120,136,120,5,8,8,6,0,0,32, + 80,0,112,8,120,136,120,5,8,8,6,0,0,104,144,0, + 112,8,120,136,120,5,7,7,6,0,0,80,0,112,8,120, + 136,120,5,9,9,6,0,0,32,80,32,0,112,8,120,136, + 120,9,5,10,10,0,0,119,0,8,128,127,0,136,0,119, + 128,255,5,8,8,6,0,0,64,32,0,112,136,240,128,120, + 5,8,8,6,0,0,16,32,0,112,136,240,128,120,5,8, + 8,6,0,0,32,80,0,112,136,240,128,120,5,7,7,6, + 0,0,80,0,112,136,240,128,120,2,7,7,3,0,0,128, + 64,0,64,64,64,64,2,7,7,3,0,0,64,128,0,128, + 128,128,128,3,7,7,4,0,0,64,160,0,64,64,64,64, + 3,6,6,4,0,0,160,0,64,64,64,64,255,5,8,8, + 6,0,0,104,144,0,240,136,136,136,136,5,8,8,6,0, + 0,64,32,0,112,136,136,136,112,5,8,8,6,0,0,16, + 32,0,112,136,136,136,112,5,8,8,6,0,0,32,80,0, + 112,136,136,136,112,5,8,8,6,0,0,104,144,0,112,136, + 136,136,112,5,7,7,6,0,0,80,0,112,136,136,136,112, + 5,5,5,6,0,1,32,0,248,0,32,255,5,8,8,6, + 0,0,64,32,0,136,136,136,136,120,5,8,8,6,0,0, + 16,32,0,136,136,136,136,120,5,8,8,6,0,0,32,80, + 0,136,136,136,136,120,5,7,7,6,0,0,80,0,136,136, + 136,136,120,5,9,9,6,0,255,16,32,0,136,136,136,120, + 8,112,255,5,8,8,6,0,255,80,0,136,136,136,120,8, + 112}; +/* + Fontname: -FreeType-Lucasfont Alternate-Medium-R-Normal--8-80-72-72-P-50-ISO10646-1 + Copyright: Copyright Patrick Lauke 2012 Lucasfont Alternate is based on Lucasfont by Patrick Lauke (http://fontstruct.com/fontstructors/redux) + Capital A Height: 0, '1' Height: 7 + Calculated Max Values w= 7 h= 7 x= 0 y= 3 dx= 8 dy= 0 ascent= 7 len= 7 + Font Bounding box w= 9 h=11 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 7 descent= 0 + X Font ascent = 7 descent= 0 + Max Font ascent = 7 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_lucasfont_alternaten[206] U8G_SECTION(".progmem.u8g_font_lucasfont_alternaten") = { + 0,9,11,0,255,7,0,0,0,0,42,57,0,7,255,7, + 0,7,5,5,8,0,1,68,40,254,40,68,5,5,5,6, + 0,1,32,32,248,32,32,2,3,3,3,0,255,64,64,128, + 6,1,1,7,0,3,252,1,2,2,2,0,0,128,128,7, + 7,7,8,0,0,2,4,8,16,32,64,128,5,7,7,6, + 0,0,112,136,136,136,136,136,112,5,7,7,6,0,0,32, + 96,32,32,32,32,248,5,7,7,6,0,0,112,136,8,16, + 32,64,248,5,7,7,6,0,0,240,8,8,120,8,8,240, + 5,7,7,6,0,0,16,48,80,144,248,16,16,5,7,7, + 6,0,0,248,128,112,8,8,136,112,5,7,7,6,0,0, + 112,136,128,240,136,136,112,5,7,7,6,0,0,248,8,16, + 32,32,32,32,5,7,7,6,0,0,112,136,136,112,136,136, + 112,5,7,7,6,0,0,112,136,136,120,8,136,112}; +/* + Fontname: -FreeType-Lucasfont Alternate-Medium-R-Normal--8-80-72-72-P-50-ISO10646-1 + Copyright: Copyright Patrick Lauke 2012 Lucasfont Alternate is based on Lucasfont by Patrick Lauke (http://fontstruct.com/fontstructors/redux) + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 7 h= 7 x= 0 y= 4 dx= 8 dy= 0 ascent= 7 len= 7 + Font Bounding box w= 9 h=11 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-1 + X Font ascent = 7 descent=-1 + Max Font ascent = 7 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_lucasfont_alternater[1138] U8G_SECTION(".progmem.u8g_font_lucasfont_alternater") = { + 0,9,11,0,255,7,1,148,3,22,32,127,255,7,255,7, + 255,0,0,0,4,0,0,1,7,7,2,0,0,128,128,128, + 128,0,0,128,3,3,3,4,0,4,160,160,160,5,7,7, + 6,0,0,80,80,248,80,248,80,80,5,7,7,6,0,0, + 32,120,128,248,8,240,32,7,7,7,8,0,0,2,68,8, + 16,32,68,128,6,7,7,7,0,0,96,144,144,96,148,136, + 116,1,3,3,2,0,4,128,128,128,3,7,7,4,0,0, + 32,64,128,128,128,64,32,3,7,7,4,0,0,128,64,32, + 32,32,64,128,7,5,5,8,0,1,68,40,254,40,68,5, + 5,5,6,0,1,32,32,248,32,32,2,3,3,3,0,255, + 64,64,128,6,1,1,7,0,3,252,1,2,2,2,0,0, + 128,128,7,7,7,8,0,0,2,4,8,16,32,64,128,5, + 7,7,6,0,0,112,136,136,136,136,136,112,5,7,7,6, + 0,0,32,96,32,32,32,32,248,5,7,7,6,0,0,112, + 136,8,16,32,64,248,5,7,7,6,0,0,240,8,8,120, + 8,8,240,5,7,7,6,0,0,16,48,80,144,248,16,16, + 5,7,7,6,0,0,248,128,112,8,8,136,112,5,7,7, + 6,0,0,112,136,128,240,136,136,112,5,7,7,6,0,0, + 248,8,16,32,32,32,32,5,7,7,6,0,0,112,136,136, + 112,136,136,112,5,7,7,6,0,0,112,136,136,120,8,136, + 112,1,4,4,2,0,1,128,0,0,128,2,6,6,3,0, + 255,64,0,0,64,64,128,4,7,7,5,0,0,16,32,64, + 128,64,32,16,5,3,3,6,0,2,248,0,248,4,7,7, + 5,0,0,128,64,32,16,32,64,128,5,7,7,6,0,0, + 112,136,8,16,32,0,32,7,7,7,8,0,0,124,130,154, + 170,190,128,124,5,7,7,6,0,0,112,136,136,248,136,136, + 136,5,7,7,6,0,0,240,136,136,240,136,136,240,5,7, + 7,6,0,0,120,128,128,128,128,128,120,5,7,7,6,0, + 0,240,136,136,136,136,136,240,5,7,7,6,0,0,248,128, + 128,240,128,128,248,5,7,7,6,0,0,248,128,128,240,128, + 128,128,5,7,7,6,0,0,112,136,128,184,136,136,112,5, + 7,7,6,0,0,136,136,136,248,136,136,136,1,7,7,2, + 0,0,128,128,128,128,128,128,128,5,7,7,6,0,0,8, + 8,8,8,8,136,112,5,7,7,6,0,0,136,144,160,192, + 160,144,136,5,7,7,6,0,0,128,128,128,128,128,128,248, + 7,7,7,8,0,0,130,198,170,146,130,130,130,6,7,7, + 7,0,0,132,196,164,148,140,132,132,5,7,7,6,0,0, + 112,136,136,136,136,136,112,5,7,7,6,0,0,240,136,136, + 240,128,128,128,5,7,7,6,0,0,112,136,136,136,168,144, + 104,5,7,7,6,0,0,240,136,136,240,160,144,136,5,7, + 7,6,0,0,112,136,128,112,8,136,112,5,7,7,6,0, + 0,248,32,32,32,32,32,32,5,7,7,6,0,0,136,136, + 136,136,136,136,112,5,7,7,6,0,0,136,136,136,136,136, + 80,32,7,7,7,8,0,0,130,130,130,146,170,198,130,5, + 7,7,6,0,0,136,136,80,32,80,136,136,5,7,7,6, + 0,0,136,136,136,80,32,32,32,5,7,7,6,0,0,248, + 8,16,32,64,128,248,3,7,7,4,0,0,224,128,128,128, + 128,128,224,7,7,7,8,0,0,128,64,32,16,8,4,2, + 3,7,7,4,0,0,224,32,32,32,32,32,224,255,7,1, + 1,8,0,0,254,255,5,5,5,6,0,0,112,8,120,136, + 120,5,6,6,6,0,0,128,128,240,136,136,240,4,5,5, + 5,0,0,112,128,128,128,112,5,6,6,6,0,0,8,8, + 120,136,136,120,5,5,5,6,0,0,112,136,240,128,120,4, + 6,6,5,0,0,48,64,240,64,64,64,5,6,6,6,0, + 255,112,136,136,120,8,112,5,6,6,6,0,0,128,128,240, + 136,136,136,1,6,6,2,0,0,128,0,128,128,128,128,3, + 7,7,4,0,255,32,0,32,32,32,32,192,4,6,6,5, + 0,0,128,128,144,224,160,144,2,6,6,3,0,0,192,64, + 64,64,64,64,7,5,5,8,0,0,252,146,146,146,146,5, + 5,5,6,0,0,240,136,136,136,136,5,5,5,6,0,0, + 112,136,136,136,112,5,6,6,6,0,255,240,136,136,240,128, + 128,5,6,6,6,0,255,120,136,136,120,8,8,5,5,5, + 6,0,0,240,136,128,128,128,5,5,5,6,0,0,120,128, + 112,8,240,5,6,6,6,0,0,32,248,32,32,32,16,5, + 5,5,6,0,0,136,136,136,136,120,5,5,5,6,0,0, + 136,136,136,80,32,7,5,5,8,0,0,146,146,146,146,126, + 5,5,5,6,0,0,136,80,32,80,136,5,6,6,6,0, + 255,136,136,136,120,8,112,5,5,5,6,0,0,248,16,32, + 64,248,4,7,7,5,0,0,48,64,64,128,64,64,48,1, + 7,7,2,0,0,128,128,128,128,128,128,128,4,7,7,5, + 0,0,192,32,32,16,32,32,192,6,2,2,7,0,3,100, + 152,255}; +/* + Fontname: m2icon5 + Copyright: public domain + Capital A Height: 5, '1' Height: 0 + Calculated Max Values w= 9 h= 6 x= 0 y= 0 dx=10 dy= 0 ascent= 5 len=10 + Font Bounding box w= 9 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_m2icon_5[221] U8G_SECTION(".progmem.u8g_font_m2icon_5") = { + 1,9,6,0,255,5,0,17,0,172,65,104,255,5,255,5, + 255,2,117,149,28,254,130,130,254,2,69,133,112,208,144,144, + 240,2,84,100,216,112,112,216,2,117,133,6,12,216,112,32, + 2,68,84,240,144,144,240,2,68,84,240,144,208,240,2,68, + 84,240,240,240,240,2,85,101,248,136,136,136,248,2,85,101, + 248,136,168,136,248,2,85,101,248,248,248,248,248,2,68,84, + 224,176,240,112,2,68,84,224,176,240,112,2,68,84,224,240, + 240,112,2,85,101,240,152,152,248,120,2,85,101,240,152,216, + 248,120,2,85,101,240,248,248,248,120,2,68,84,96,144,144, + 96,2,68,84,96,144,208,96,2,68,84,96,240,240,96,255, + 255,255,255,255,255,255,255,255,255,255,255,255,2,117,133,32, + 64,254,64,32,2,85,101,32,112,168,32,32,255,255,255,2, + 149,170,28,0,254,0,130,0,191,128,255,0,1,22,38,128, + 128,128,128,128,128,2,85,101,32,32,248,32,32}; +/* + Fontname: m2icon_7 + Copyright: public domain + Capital A Height: 7, '1' Height: 0 + Calculated Max Values w=12 h= 8 x= 0 y= 1 dx=13 dy= 0 ascent= 7 len=14 + Font Bounding box w=12 h= 8 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-1 + X Font ascent = 7 descent=-1 + Max Font ascent = 7 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_m2icon_7[275] U8G_SECTION(".progmem.u8g_font_m2icon_7") = { + 1,12,8,0,255,7,0,17,0,214,65,104,255,7,255,7, + 255,2,151,174,15,0,255,128,128,128,128,128,128,128,128,128, + 255,128,2,87,103,56,104,232,136,136,136,248,3,84,100,216, + 112,112,216,2,134,150,3,6,12,216,112,32,2,102,118,252, + 132,132,132,132,252,2,102,118,252,132,180,180,132,252,2,102, + 118,252,252,252,252,252,252,2,119,151,254,130,130,130,130,130, + 254,2,119,151,254,130,186,186,186,130,254,2,119,151,254,254, + 254,254,254,254,254,2,102,118,248,140,140,140,252,124,2,102, + 118,248,140,172,140,252,124,2,102,134,248,252,252,252,252,124, + 2,119,151,252,134,134,134,134,254,126,2,119,151,252,134,182, + 182,134,254,126,2,119,151,252,254,254,254,254,254,126,2,102, + 118,120,204,132,132,204,120,2,102,118,120,204,180,180,204,120, + 2,102,118,120,252,252,252,252,120,255,255,255,255,255,255,255, + 255,255,255,255,255,255,2,135,151,16,48,95,129,95,48,16, + 2,119,135,16,40,68,238,40,40,56,255,255,255,2,199,222, + 15,0,255,128,128,128,159,240,160,32,192,64,255,128,1,24, + 40,128,128,128,128,128,128,128,128,2,119,199,16,0,16,186, + 16,0,16}; +/* + Fontname: m2icon_9 + Copyright: public domain + Capital A Height: 8, '1' Height: 0 + Calculated Max Values w=13 h=11 x= 0 y= 1 dx=12 dy= 0 ascent= 9 len=18 + Font Bounding box w=13 h=11 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_m2icon_9[471] U8G_SECTION(".progmem.u8g_font_m2icon_9") = { + 0,13,11,0,254,8,0,17,1,111,65,105,254,9,254,8, + 254,10,8,16,11,0,0,15,128,255,192,128,64,128,64,128, + 64,128,64,128,64,255,192,6,8,8,7,0,0,60,84,148, + 244,132,132,132,252,6,5,5,7,0,1,204,120,48,120,204, + 10,7,14,12,0,0,0,192,1,128,3,0,198,0,108,0, + 56,0,16,0,8,8,8,9,0,0,255,129,129,129,129,129, + 129,255,8,8,8,9,0,0,255,129,189,189,189,189,129,255, + 8,8,8,9,0,0,255,255,255,255,255,255,255,255,9,9, + 18,10,0,0,255,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,255,128,9,9,18,10,0,0,255,128,128,128, + 190,128,190,128,190,128,190,128,190,128,128,128,255,128,9,9, + 18,11,0,0,255,128,255,128,255,128,255,128,255,128,255,128, + 255,128,255,128,255,128,8,8,8,8,0,0,254,131,131,131, + 131,131,255,127,8,8,8,9,0,0,254,131,187,187,187,131, + 255,127,8,8,8,9,0,0,254,255,255,255,255,255,255,127, + 9,9,18,10,0,0,255,0,129,128,129,128,129,128,129,128, + 129,128,129,128,255,128,127,128,9,9,18,10,0,0,255,0, + 129,128,189,128,189,128,189,128,189,128,129,128,255,128,127,128, + 9,9,18,10,0,0,255,0,255,128,255,128,255,128,255,128, + 255,128,255,128,255,128,127,128,8,8,8,9,0,0,60,66, + 129,129,129,129,66,60,8,8,8,9,0,0,60,66,153,189, + 189,153,66,60,8,8,8,9,0,0,60,126,255,255,255,255, + 126,60,255,255,255,255,255,255,255,255,255,255,255,255,255,10, + 8,16,11,0,0,24,0,40,0,79,192,128,64,128,64,79, + 192,40,0,24,0,8,9,9,9,0,0,24,36,66,129,231, + 36,36,36,60,255,255,255,13,8,16,11,0,0,15,128,255, + 192,128,64,128,64,159,248,160,16,192,32,255,192,1,11,11, + 2,0,254,128,128,128,128,128,128,128,128,128,128,128,9,9, + 18,10,0,0,8,0,0,0,8,0,8,0,190,128,8,0, + 8,0,0,0,8,0,255}; +/* + Fontname: micro + Copyright: Public domain font. Share and enjoy. + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 3 h= 5 x= 1 y= 5 dx= 4 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 4 h= 5 x= 0 y= 0 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_micro[855] U8G_SECTION(".progmem.u8g_font_micro") = { + 1,4,5,0,0,5,0,255,1,245,32,255,0,5,0,5, + 0,7,0,64,2,37,69,192,192,192,0,192,5,50,66,160, + 160,2,53,69,160,224,160,224,160,2,53,69,64,224,192,96, + 224,3,52,68,160,96,192,160,2,53,69,64,64,224,192,64, + 21,34,66,64,192,18,37,69,64,128,128,128,64,2,37,69, + 128,64,64,64,128,2,53,69,160,64,224,64,160,3,51,67, + 64,224,64,2,34,66,64,192,4,49,65,224,2,34,66,192, + 192,2,53,69,32,32,64,64,128,2,53,69,64,160,160,160, + 64,2,37,69,64,192,64,64,64,2,53,69,192,32,64,128, + 224,2,53,69,192,32,96,32,224,2,53,69,160,160,160,224, + 32,2,53,69,224,128,192,32,192,2,53,69,96,128,224,160, + 224,2,53,69,224,32,32,64,64,2,53,69,224,160,224,160, + 224,2,53,69,224,160,224,32,192,2,37,69,192,192,0,192, + 192,2,37,69,192,192,0,64,192,2,53,69,32,64,128,64, + 32,3,51,67,224,0,224,2,53,69,128,64,32,64,128,2, + 53,69,224,32,96,0,64,2,53,69,96,160,192,128,96,2, + 53,69,224,160,224,160,160,2,53,69,224,160,192,160,224,2, + 53,69,224,128,128,128,224,2,53,69,192,160,160,160,192,2, + 53,69,224,128,224,128,224,2,53,69,224,128,224,128,128,2, + 53,69,224,128,160,160,224,2,53,69,160,160,224,160,160,2, + 53,69,224,64,64,64,224,2,53,69,32,32,32,160,224,2, + 53,69,160,160,192,160,160,2,53,69,128,128,128,128,224,2, + 53,69,160,224,160,160,160,2,53,69,224,160,160,160,160,2, + 53,69,224,160,160,160,224,2,53,69,224,160,224,128,128,2, + 53,69,224,160,160,192,96,2,53,69,224,160,192,160,160,2, + 53,69,224,128,224,32,224,2,53,69,224,64,64,64,64,2, + 53,69,160,160,160,160,224,2,53,69,160,160,160,160,64,2, + 53,69,160,160,160,224,160,2,53,69,160,224,64,224,160,2, + 53,69,160,160,224,64,64,2,53,69,224,32,64,128,224,18, + 37,69,192,128,128,128,192,2,53,69,128,128,64,64,32,2, + 37,69,192,64,64,64,192,5,50,66,64,160,2,49,65,224, + 21,34,66,128,192,2,52,68,224,96,160,224,2,53,69,128, + 224,160,160,224,2,52,68,224,128,128,224,2,53,69,32,224, + 160,160,224,2,52,68,224,160,192,224,2,53,69,96,128,192, + 128,128,2,52,68,224,160,96,224,2,53,69,128,224,160,160, + 160,18,20,68,128,128,128,128,2,52,68,32,32,160,224,2, + 53,69,128,160,192,192,160,2,37,69,192,64,64,64,64,2, + 52,68,160,224,160,160,2,52,68,224,160,160,160,2,52,68, + 224,160,160,224,2,52,68,224,160,224,128,2,52,68,224,160, + 224,32,2,52,68,224,160,128,128,2,52,68,224,192,96,224, + 2,53,69,64,224,64,64,96,2,52,68,160,160,160,224,2, + 52,68,160,160,160,64,2,52,68,160,160,224,160,2,52,68, + 160,64,64,160,2,52,68,160,160,96,192,2,52,68,224,96, + 192,224,2,53,69,96,64,192,64,96,18,21,69,128,128,128, + 128,128,2,53,69,192,64,96,64,192,4,50,66,192,96,2, + 53,69,96,64,64,64,192,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--11-80-100-100-P-66-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=11 h=11 x= 2 y= 6 dx=12 dy= 0 ascent=11 len=22 + Font Bounding box w=17 h=19 x=-2 y=-5 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB08[2760] U8G_SECTION(".progmem.u8g_font_ncenB08") = { + 0,17,19,254,251,8,1,193,3,159,32,255,254,11,254,8, + 254,0,0,0,3,0,1,2,8,8,3,0,0,192,192,192, + 128,128,0,192,192,3,3,3,6,1,5,160,160,160,7,8, + 8,8,0,0,20,20,126,40,40,252,80,80,5,10,10,6, + 0,255,32,120,168,160,240,120,40,168,240,32,10,8,16,11, + 0,0,102,0,218,0,212,0,213,128,107,64,11,64,19,64, + 17,128,8,8,8,9,0,0,48,104,104,48,88,204,207,118, + 1,3,3,4,1,5,128,128,128,4,10,10,5,0,254,16, + 32,96,192,192,192,192,96,32,16,4,10,10,5,0,254,128, + 64,96,48,48,48,48,96,64,128,5,5,5,6,0,3,32, + 168,112,168,32,5,5,5,6,0,1,32,32,248,32,32,2, + 4,4,3,0,254,192,192,64,128,3,1,1,4,0,3,224, + 2,2,2,3,0,0,192,192,4,8,8,5,0,0,16,16, + 32,32,64,64,128,128,5,8,8,6,0,0,112,216,216,216, + 216,216,216,112,4,8,8,6,1,0,96,224,96,96,96,96, + 96,240,5,8,8,6,0,0,112,216,216,24,48,64,248,248, + 5,8,8,6,0,0,112,216,216,48,24,216,216,112,5,8, + 8,6,0,0,56,56,88,88,152,248,24,56,5,8,8,6, + 0,0,248,240,128,240,24,216,216,112,5,8,8,6,0,0, + 112,216,192,240,216,216,216,112,4,8,8,6,0,0,240,240, + 16,32,32,96,96,96,5,8,8,6,0,0,112,216,216,112, + 216,216,216,112,5,8,8,6,0,0,112,216,216,216,120,24, + 216,112,2,5,5,3,0,0,192,192,0,192,192,2,7,7, + 3,0,254,192,192,0,192,192,64,128,6,5,5,7,0,1, + 12,48,192,48,12,5,3,3,6,0,2,248,0,248,6,5, + 5,7,0,1,192,48,12,48,192,5,8,8,6,0,0,112, + 216,24,48,64,0,96,96,9,10,20,10,0,255,28,0,99, + 0,65,0,158,128,182,128,182,128,155,0,64,0,96,0,30, + 0,9,8,16,8,255,0,8,0,28,0,28,0,38,0,38, + 0,127,0,67,0,231,128,7,8,8,8,0,0,252,102,102, + 124,102,102,102,252,7,8,8,8,0,0,58,70,194,192,192, + 194,66,60,8,8,8,9,0,0,252,98,99,99,99,99,98, + 252,6,8,8,7,0,0,252,100,104,120,104,100,100,252,6, + 8,8,7,0,0,252,100,100,104,120,104,96,240,7,8,8, + 8,0,0,58,70,194,192,206,198,70,58,9,8,16,10,0, + 0,247,128,99,0,99,0,127,0,99,0,99,0,99,0,247, + 128,4,8,8,5,0,0,240,96,96,96,96,96,96,240,6, + 8,8,7,0,0,60,24,24,24,216,216,152,112,9,8,16, + 9,0,0,243,0,98,0,100,0,104,0,124,0,102,0,99, + 0,243,128,6,8,8,7,0,0,240,96,96,96,96,100,100, + 252,11,8,16,12,0,0,241,224,113,192,90,192,90,192,90, + 192,76,192,76,192,237,224,8,8,8,9,0,0,199,98,114, + 122,94,78,70,226,7,8,8,8,0,0,56,68,198,198,198, + 198,68,56,7,8,8,8,0,0,252,102,102,102,124,96,96, + 240,8,9,9,8,0,255,56,68,198,198,198,246,108,61,6, + 8,8,8,9,0,0,252,102,102,100,124,102,102,247,6,8, + 8,7,0,0,116,204,196,240,60,140,204,184,6,8,8,7, + 0,0,252,180,180,48,48,48,48,120,8,8,8,9,0,0, + 247,98,98,98,98,98,98,60,8,8,8,9,0,0,247,98, + 98,52,52,52,24,24,11,8,16,12,0,0,246,224,102,64, + 102,64,107,64,107,64,59,128,49,128,49,128,8,8,8,9, + 0,0,247,98,116,56,28,46,70,239,8,8,8,9,0,0, + 247,98,52,52,24,24,24,60,6,8,8,7,0,0,252,140, + 28,56,112,224,196,252,3,10,10,4,0,254,224,192,192,192, + 192,192,192,192,192,224,4,8,8,5,0,0,128,128,64,64, + 32,32,16,16,3,10,10,4,0,254,224,96,96,96,96,96, + 96,96,96,224,5,6,6,6,0,2,32,32,112,80,136,136, + 6,1,1,6,0,254,252,3,2,2,4,0,6,192,96,4, + 5,5,5,0,0,224,48,112,176,240,6,8,8,7,0,0, + 192,192,192,216,236,204,204,184,5,5,5,6,0,0,112,200, + 192,200,112,6,8,8,7,0,0,28,12,12,124,204,204,220, + 108,5,5,5,6,0,0,112,216,248,192,120,5,8,8,5, + 0,0,56,104,96,240,96,96,96,240,6,8,8,6,0,254, + 8,112,216,216,112,124,140,248,6,8,8,7,0,0,192,192, + 192,216,236,204,204,204,4,8,8,5,0,0,96,96,0,224, + 96,96,96,240,3,10,10,5,0,254,96,96,0,224,96,96, + 96,96,96,192,6,8,8,6,0,0,192,192,192,216,240,240, + 216,220,4,8,8,5,0,0,224,96,96,96,96,96,96,240, + 10,5,10,11,0,0,217,128,238,192,204,192,204,192,204,192, + 6,5,5,7,0,0,216,236,204,204,204,6,5,5,7,0, + 0,120,204,204,204,120,6,7,7,7,0,254,216,236,204,204, + 248,192,224,7,7,7,7,0,254,124,204,204,220,108,12,30, + 4,5,5,5,0,0,208,240,192,192,192,4,5,5,5,0, + 0,112,192,240,48,224,3,7,7,4,0,0,64,192,224,192, + 192,192,96,6,5,5,7,0,0,204,204,204,220,108,6,5, + 5,7,0,0,236,104,104,48,48,9,5,10,10,0,0,237, + 128,109,0,109,0,54,0,54,0,6,5,5,7,0,0,236, + 104,48,88,220,6,7,7,7,0,254,236,104,104,48,48,224, + 192,5,5,5,6,0,0,248,176,96,200,248,4,10,10,5, + 0,254,48,96,96,96,192,96,96,96,96,48,1,8,8,6, + 2,0,128,128,128,128,128,128,128,128,4,10,10,5,0,254, + 192,96,96,96,48,96,96,96,96,192,6,2,2,7,0,3, + 116,184,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,3,0,1,2,8,8,3,0,254,192, + 192,0,64,64,192,192,192,5,7,7,6,0,255,8,120,208, + 208,232,112,64,7,8,8,8,0,0,60,100,96,252,48,98, + 190,220,7,5,5,8,0,1,186,108,108,108,186,8,8,8, + 9,0,0,247,98,52,54,24,62,24,60,1,8,8,6,2, + 0,128,128,128,0,128,128,128,128,4,10,10,5,0,254,112, + 144,192,96,176,208,96,48,144,224,3,2,2,4,0,6,160, + 160,8,8,8,9,0,0,60,66,157,165,161,157,66,60,3, + 6,6,4,0,2,192,32,224,160,0,224,6,5,5,7,0, + 0,36,108,216,108,36,5,3,3,6,0,2,248,8,8,3, + 1,1,4,0,3,224,8,8,8,9,0,0,60,66,189,165, + 185,173,66,60,4,1,1,5,0,6,240,3,4,4,4,0, + 4,64,160,160,64,5,5,5,6,0,1,32,248,32,0,248, + 3,4,4,3,0,4,96,160,64,224,3,4,4,3,0,4, + 224,64,32,192,3,2,2,4,0,6,96,192,6,7,7,7, + 0,254,204,204,204,220,236,192,192,7,8,8,8,0,0,126, + 244,244,116,20,20,20,62,2,2,2,3,0,3,192,192,2, + 3,3,4,1,254,128,64,192,3,4,4,3,0,4,64,192, + 64,224,4,6,6,5,0,2,96,144,144,96,0,240,6,5, + 5,7,0,0,144,216,108,216,144,8,8,8,9,0,0,68, + 196,72,232,18,22,47,34,8,8,8,9,0,0,68,196,72, + 232,19,21,34,39,8,8,8,9,0,0,228,68,40,200,18, + 22,47,34,5,8,8,6,0,254,48,48,0,16,96,192,216, + 112,9,11,22,8,255,0,48,0,24,0,0,0,8,0,28, + 0,28,0,38,0,38,0,127,0,67,0,231,128,9,11,22, + 8,255,0,6,0,12,0,0,0,8,0,28,0,28,0,38, + 0,38,0,127,0,67,0,231,128,9,11,22,8,255,0,28, + 0,54,0,0,0,8,0,28,0,28,0,38,0,38,0,127, + 0,67,0,231,128,9,11,22,8,255,0,26,0,44,0,0, + 0,8,0,28,0,28,0,38,0,38,0,127,0,67,0,231, + 128,9,11,22,8,255,0,20,0,20,0,0,0,8,0,28, + 0,28,0,38,0,38,0,127,0,67,0,231,128,9,11,22, + 8,255,0,24,0,36,0,24,0,8,0,28,0,28,0,38, + 0,38,0,127,0,67,0,231,128,10,8,16,11,0,0,63, + 192,22,64,22,128,39,128,62,128,70,64,70,64,239,192,7, + 10,10,8,0,254,58,70,194,192,192,194,66,60,16,48,6, + 11,11,7,0,0,96,48,0,252,100,104,120,104,100,100,252, + 6,11,11,7,0,0,24,48,0,252,100,104,120,104,100,100, + 252,6,11,11,7,0,0,56,108,0,252,100,104,120,104,100, + 100,252,6,11,11,7,0,0,40,40,0,252,100,104,120,104, + 100,100,252,4,11,11,5,0,0,192,96,0,240,96,96,96, + 96,96,96,240,4,11,11,5,0,0,48,96,0,240,96,96, + 96,96,96,96,240,5,11,11,5,0,0,112,216,0,240,96, + 96,96,96,96,96,240,4,11,11,5,0,0,80,80,0,240, + 96,96,96,96,96,96,240,8,8,8,9,0,0,252,98,99, + 243,99,99,98,252,8,11,11,9,0,0,26,44,0,199,98, + 114,122,94,78,70,226,7,11,11,8,0,0,48,24,0,56, + 68,198,198,198,198,68,56,7,11,11,8,0,0,24,48,0, + 56,68,198,198,198,198,68,56,7,11,11,8,0,0,56,108, + 0,56,68,198,198,198,198,68,56,7,11,11,8,0,0,52, + 88,0,56,68,198,198,198,198,68,56,7,11,11,8,0,0, + 40,40,0,56,68,198,198,198,198,68,56,5,5,5,6,0, + 1,216,112,32,112,216,7,8,8,8,0,0,58,68,206,214, + 214,230,68,184,8,11,11,9,0,0,48,24,0,247,98,98, + 98,98,98,98,60,8,11,11,9,0,0,12,24,0,247,98, + 98,98,98,98,98,60,8,11,11,9,0,0,28,54,0,247, + 98,98,98,98,98,98,60,8,11,11,9,0,0,20,20,0, + 247,98,98,98,98,98,98,60,8,11,11,9,0,0,12,24, + 0,247,98,52,52,24,24,24,60,7,8,8,8,0,0,224, + 124,102,102,102,124,96,240,7,8,8,8,0,0,60,102,102, + 108,102,102,102,236,4,8,8,5,0,0,192,96,0,224,48, + 112,176,240,4,8,8,5,0,0,48,96,0,224,48,112,176, + 240,5,9,9,5,0,0,32,112,216,0,224,48,112,176,240, + 5,8,8,5,0,0,104,176,0,224,48,112,176,240,4,8, + 8,5,0,0,160,160,0,224,48,112,176,240,4,8,8,5, + 0,0,96,144,96,224,48,112,176,240,8,5,5,9,0,0, + 238,155,127,216,239,5,7,7,6,0,254,112,200,192,200,112, + 32,96,5,8,8,6,0,0,96,48,0,112,216,248,192,120, + 5,8,8,6,0,0,48,96,0,112,216,248,192,120,5,9, + 9,6,0,0,32,112,216,0,112,216,248,192,120,5,8,8, + 6,0,0,80,80,0,112,216,248,192,120,4,8,8,5,0, + 0,192,96,0,224,96,96,96,240,4,8,8,5,0,0,48, + 96,0,224,96,96,96,240,5,9,9,5,0,0,32,112,216, + 0,224,96,96,96,240,4,8,8,5,0,0,160,160,0,224, + 96,96,96,240,6,8,8,7,0,0,200,112,144,120,204,204, + 204,120,6,8,8,7,0,0,104,176,0,216,236,204,204,204, + 6,8,8,7,0,0,96,48,0,120,204,204,204,120,6,8, + 8,7,0,0,24,48,0,120,204,204,204,120,6,9,9,7, + 0,0,32,112,216,0,120,204,204,204,120,6,8,8,7,0, + 0,52,88,0,120,204,204,204,120,6,8,8,7,0,0,80, + 80,0,120,204,204,204,120,5,5,5,6,0,1,32,0,248, + 0,32,6,7,7,7,0,255,4,120,220,236,204,120,128,6, + 8,8,7,0,0,96,48,0,204,204,204,220,108,6,8,8, + 7,0,0,24,48,0,204,204,204,220,108,6,9,9,7,0, + 0,32,112,216,0,204,204,204,220,108,6,8,8,7,0,0, + 80,80,0,204,204,204,220,108,6,10,10,7,0,254,24,48, + 0,236,104,104,48,48,224,192,6,10,10,7,0,254,192,192, + 192,216,236,204,204,248,192,224,6,10,10,7,0,254,80,80, + 0,236,104,104,48,48,224,192}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--11-80-100-100-P-66-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=11 h=10 x= 2 y= 6 dx=12 dy= 0 ascent= 9 len=20 + Font Bounding box w=17 h=19 x=-2 y=-5 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB08r[1315] U8G_SECTION(".progmem.u8g_font_ncenB08r") = { + 0,17,19,254,251,8,1,193,3,159,32,127,254,9,254,8, + 254,0,0,0,3,0,1,2,8,8,3,0,0,192,192,192, + 128,128,0,192,192,3,3,3,6,1,5,160,160,160,7,8, + 8,8,0,0,20,20,126,40,40,252,80,80,5,10,10,6, + 0,255,32,120,168,160,240,120,40,168,240,32,10,8,16,11, + 0,0,102,0,218,0,212,0,213,128,107,64,11,64,19,64, + 17,128,8,8,8,9,0,0,48,104,104,48,88,204,207,118, + 1,3,3,4,1,5,128,128,128,4,10,10,5,0,254,16, + 32,96,192,192,192,192,96,32,16,4,10,10,5,0,254,128, + 64,96,48,48,48,48,96,64,128,5,5,5,6,0,3,32, + 168,112,168,32,5,5,5,6,0,1,32,32,248,32,32,2, + 4,4,3,0,254,192,192,64,128,3,1,1,4,0,3,224, + 2,2,2,3,0,0,192,192,4,8,8,5,0,0,16,16, + 32,32,64,64,128,128,5,8,8,6,0,0,112,216,216,216, + 216,216,216,112,4,8,8,6,1,0,96,224,96,96,96,96, + 96,240,5,8,8,6,0,0,112,216,216,24,48,64,248,248, + 5,8,8,6,0,0,112,216,216,48,24,216,216,112,5,8, + 8,6,0,0,56,56,88,88,152,248,24,56,5,8,8,6, + 0,0,248,240,128,240,24,216,216,112,5,8,8,6,0,0, + 112,216,192,240,216,216,216,112,4,8,8,6,0,0,240,240, + 16,32,32,96,96,96,5,8,8,6,0,0,112,216,216,112, + 216,216,216,112,5,8,8,6,0,0,112,216,216,216,120,24, + 216,112,2,5,5,3,0,0,192,192,0,192,192,2,7,7, + 3,0,254,192,192,0,192,192,64,128,6,5,5,7,0,1, + 12,48,192,48,12,5,3,3,6,0,2,248,0,248,6,5, + 5,7,0,1,192,48,12,48,192,5,8,8,6,0,0,112, + 216,24,48,64,0,96,96,9,10,20,10,0,255,28,0,99, + 0,65,0,158,128,182,128,182,128,155,0,64,0,96,0,30, + 0,9,8,16,8,255,0,8,0,28,0,28,0,38,0,38, + 0,127,0,67,0,231,128,7,8,8,8,0,0,252,102,102, + 124,102,102,102,252,7,8,8,8,0,0,58,70,194,192,192, + 194,66,60,8,8,8,9,0,0,252,98,99,99,99,99,98, + 252,6,8,8,7,0,0,252,100,104,120,104,100,100,252,6, + 8,8,7,0,0,252,100,100,104,120,104,96,240,7,8,8, + 8,0,0,58,70,194,192,206,198,70,58,9,8,16,10,0, + 0,247,128,99,0,99,0,127,0,99,0,99,0,99,0,247, + 128,4,8,8,5,0,0,240,96,96,96,96,96,96,240,6, + 8,8,7,0,0,60,24,24,24,216,216,152,112,9,8,16, + 9,0,0,243,0,98,0,100,0,104,0,124,0,102,0,99, + 0,243,128,6,8,8,7,0,0,240,96,96,96,96,100,100, + 252,11,8,16,12,0,0,241,224,113,192,90,192,90,192,90, + 192,76,192,76,192,237,224,8,8,8,9,0,0,199,98,114, + 122,94,78,70,226,7,8,8,8,0,0,56,68,198,198,198, + 198,68,56,7,8,8,8,0,0,252,102,102,102,124,96,96, + 240,8,9,9,8,0,255,56,68,198,198,198,246,108,61,6, + 8,8,8,9,0,0,252,102,102,100,124,102,102,247,6,8, + 8,7,0,0,116,204,196,240,60,140,204,184,6,8,8,7, + 0,0,252,180,180,48,48,48,48,120,8,8,8,9,0,0, + 247,98,98,98,98,98,98,60,8,8,8,9,0,0,247,98, + 98,52,52,52,24,24,11,8,16,12,0,0,246,224,102,64, + 102,64,107,64,107,64,59,128,49,128,49,128,8,8,8,9, + 0,0,247,98,116,56,28,46,70,239,8,8,8,9,0,0, + 247,98,52,52,24,24,24,60,6,8,8,7,0,0,252,140, + 28,56,112,224,196,252,3,10,10,4,0,254,224,192,192,192, + 192,192,192,192,192,224,4,8,8,5,0,0,128,128,64,64, + 32,32,16,16,3,10,10,4,0,254,224,96,96,96,96,96, + 96,96,96,224,5,6,6,6,0,2,32,32,112,80,136,136, + 6,1,1,6,0,254,252,3,2,2,4,0,6,192,96,4, + 5,5,5,0,0,224,48,112,176,240,6,8,8,7,0,0, + 192,192,192,216,236,204,204,184,5,5,5,6,0,0,112,200, + 192,200,112,6,8,8,7,0,0,28,12,12,124,204,204,220, + 108,5,5,5,6,0,0,112,216,248,192,120,5,8,8,5, + 0,0,56,104,96,240,96,96,96,240,6,8,8,6,0,254, + 8,112,216,216,112,124,140,248,6,8,8,7,0,0,192,192, + 192,216,236,204,204,204,4,8,8,5,0,0,96,96,0,224, + 96,96,96,240,3,10,10,5,0,254,96,96,0,224,96,96, + 96,96,96,192,6,8,8,6,0,0,192,192,192,216,240,240, + 216,220,4,8,8,5,0,0,224,96,96,96,96,96,96,240, + 10,5,10,11,0,0,217,128,238,192,204,192,204,192,204,192, + 6,5,5,7,0,0,216,236,204,204,204,6,5,5,7,0, + 0,120,204,204,204,120,6,7,7,7,0,254,216,236,204,204, + 248,192,224,7,7,7,7,0,254,124,204,204,220,108,12,30, + 4,5,5,5,0,0,208,240,192,192,192,4,5,5,5,0, + 0,112,192,240,48,224,3,7,7,4,0,0,64,192,224,192, + 192,192,96,6,5,5,7,0,0,204,204,204,220,108,6,5, + 5,7,0,0,236,104,104,48,48,9,5,10,10,0,0,237, + 128,109,0,109,0,54,0,54,0,6,5,5,7,0,0,236, + 104,48,88,220,6,7,7,7,0,254,236,104,104,48,48,224, + 192,5,5,5,6,0,0,248,176,96,200,248,4,10,10,5, + 0,254,48,96,96,96,192,96,96,96,96,48,1,8,8,6, + 2,0,128,128,128,128,128,128,128,128,4,10,10,5,0,254, + 192,96,96,96,48,96,96,96,96,192,6,2,2,7,0,3, + 116,184,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--14-100-100-100-P-87-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=15 h=15 x= 3 y= 8 dx=15 dy= 0 ascent=15 len=30 + Font Bounding box w=20 h=25 x=-2 y=-6 + Calculated Min Values x=-2 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =15 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB10[4003] U8G_SECTION(".progmem.u8g_font_ncenB10") = { + 0,20,25,254,250,11,2,24,5,41,32,255,253,15,253,11, + 253,0,0,0,4,0,1,2,11,11,4,1,0,192,192,192, + 192,192,128,128,0,192,192,192,3,4,4,5,1,7,160,160, + 160,160,7,10,10,8,0,0,20,20,20,126,40,40,252,80, + 80,80,7,13,13,8,0,255,16,124,214,150,208,240,124,30, + 22,210,214,124,16,12,11,22,13,0,0,48,128,111,0,201, + 0,202,0,210,0,100,96,4,208,9,144,9,144,17,160,16, + 192,12,11,22,13,0,0,30,0,51,0,51,0,50,0,28, + 0,60,224,78,64,199,128,195,144,227,224,124,192,1,4,4, + 3,1,7,128,128,128,128,4,13,13,5,0,254,16,32,96, + 64,192,192,192,192,192,64,96,32,16,4,13,13,5,0,254, + 128,64,96,32,48,48,48,48,48,32,96,64,128,5,5,5, + 6,0,6,32,168,112,168,32,7,7,7,8,0,1,16,16, + 16,254,16,16,16,2,5,5,4,1,254,192,192,192,64,128, + 4,2,2,5,0,3,240,240,2,3,3,4,1,0,192,192, + 192,4,11,11,5,0,0,16,16,16,32,32,32,64,64,64, + 128,128,7,11,11,8,0,0,56,108,198,198,198,198,198,198, + 198,108,56,5,11,11,8,1,0,48,240,48,48,48,48,48, + 48,48,48,120,7,11,11,8,0,0,120,206,198,6,6,12, + 24,48,98,254,254,7,11,11,8,0,0,120,206,198,6,12, + 60,6,6,198,206,120,7,11,11,8,0,0,12,28,28,44, + 44,76,76,254,12,12,30,7,11,11,8,0,0,126,124,64, + 64,92,110,6,6,198,206,120,7,11,11,8,0,0,60,102, + 198,192,220,238,198,198,198,230,120,7,11,11,8,0,0,254, + 254,132,140,12,24,24,24,48,48,48,7,11,11,8,0,0, + 120,230,198,198,244,60,94,198,198,206,60,7,11,11,8,0, + 0,60,206,198,198,198,238,118,6,198,204,120,2,7,7,4, + 1,0,192,192,192,0,192,192,192,2,9,9,4,1,254,192, + 192,192,0,192,192,192,64,128,7,7,7,8,0,1,2,14, + 56,224,56,14,2,7,3,3,8,0,3,254,0,254,7,7, + 7,8,0,1,128,224,56,14,56,224,128,6,11,11,7,0, + 0,120,204,204,12,24,48,32,0,48,48,48,13,11,22,14, + 0,0,15,192,56,112,99,152,108,216,204,216,217,152,217,176, + 219,176,205,192,96,16,63,224,10,11,22,11,0,0,12,0, + 12,0,22,0,22,0,18,0,35,0,35,0,63,0,65,128, + 65,128,227,192,9,11,22,10,0,0,254,0,99,0,99,0, + 99,0,102,0,127,0,97,128,97,128,97,128,99,128,254,0, + 10,11,22,11,0,0,31,64,112,192,96,64,192,64,192,0, + 192,0,192,0,192,0,96,64,112,192,31,0,11,11,22,12, + 0,0,255,0,97,192,96,192,96,96,96,96,96,96,96,96, + 96,96,96,192,97,192,255,0,9,11,22,10,0,0,255,128, + 97,128,96,128,100,128,100,0,124,0,100,0,100,128,96,128, + 97,128,255,128,9,11,22,10,0,0,255,128,97,128,96,128, + 100,128,100,0,124,0,100,0,100,0,96,0,96,0,240,0, + 11,11,22,12,0,0,31,64,112,192,96,64,192,64,192,0, + 192,0,195,224,192,192,96,192,113,192,30,64,11,11,22,12, + 0,0,241,224,96,192,96,192,96,192,96,192,127,192,96,192, + 96,192,96,192,96,192,241,224,4,11,11,7,1,0,240,96, + 96,96,96,96,96,96,96,96,240,7,11,11,9,0,0,30, + 12,12,12,12,12,12,204,204,156,112,11,11,22,12,0,0, + 243,192,97,0,98,0,100,0,104,0,124,0,110,0,103,0, + 99,128,97,192,243,224,9,11,22,10,0,0,240,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,128,96,128,97,128, + 255,128,13,11,22,14,0,0,240,120,112,112,112,112,88,176, + 88,176,88,176,77,48,77,48,77,48,70,48,230,120,11,11, + 22,12,0,0,224,224,112,64,120,64,92,64,76,64,70,64, + 71,64,67,192,65,192,64,192,224,64,11,11,22,12,0,0, + 31,0,113,192,96,192,192,96,192,96,192,96,192,96,192,96, + 96,192,113,192,31,0,9,11,22,10,0,0,255,0,99,128, + 97,128,97,128,99,128,126,0,96,0,96,0,96,0,96,0, + 240,0,11,14,28,12,0,253,31,0,113,192,96,192,192,96, + 192,96,192,96,192,96,220,96,102,192,115,192,31,0,3,32, + 3,160,1,192,11,11,22,12,0,0,255,0,99,128,97,128, + 97,128,99,0,126,0,99,0,99,0,97,128,97,160,241,192, + 9,11,22,10,0,0,61,0,227,0,193,0,193,0,240,0, + 126,0,15,128,129,128,129,128,195,128,190,0,10,11,22,11, + 0,0,255,192,204,192,140,64,140,64,12,0,12,0,12,0, + 12,0,12,0,12,0,30,0,11,11,22,12,0,0,240,224, + 96,64,96,64,96,64,96,64,96,64,96,64,96,64,96,64, + 48,128,31,0,10,11,22,11,0,0,241,192,96,128,96,128, + 49,0,49,0,49,0,26,0,26,0,26,0,12,0,12,0, + 13,11,22,14,0,0,247,184,99,16,99,16,99,16,53,160, + 53,160,53,160,53,160,24,192,24,192,24,192,11,11,22,12, + 0,0,249,224,112,192,48,128,25,0,13,0,14,0,22,0, + 19,0,33,128,97,192,243,224,10,11,22,11,0,0,241,192, + 96,128,49,0,49,0,26,0,26,0,12,0,12,0,12,0, + 12,0,30,0,8,11,11,9,0,0,255,195,135,142,12,24, + 48,113,225,195,255,4,13,13,5,0,254,240,192,192,192,192, + 192,192,192,192,192,192,192,240,6,11,11,7,0,0,128,128, + 64,64,32,32,16,16,8,8,4,4,13,13,5,0,254,240, + 48,48,48,48,48,48,48,48,48,48,48,240,7,7,7,8, + 0,4,16,16,56,40,108,68,198,7,1,1,7,0,254,254, + 4,3,3,6,1,8,192,96,16,8,7,7,9,0,0,60, + 102,6,62,198,206,119,9,11,22,10,0,0,224,0,96,0, + 96,0,96,0,110,0,115,0,97,128,97,128,97,128,99,0, + 94,0,7,7,7,8,0,0,60,102,198,192,194,102,60,9, + 11,22,10,0,0,7,0,3,0,3,0,3,0,59,0,103, + 0,195,0,195,0,195,0,103,0,59,128,8,7,7,9,0, + 0,60,102,195,255,192,99,62,6,11,11,6,0,0,56,108, + 108,96,248,96,96,96,96,96,240,7,11,11,8,0,253,6, + 124,198,198,124,128,252,126,130,134,124,9,11,22,10,0,0, + 224,0,96,0,96,0,96,0,110,0,115,0,99,0,99,0, + 99,0,99,0,247,128,4,10,10,5,0,0,96,96,0,224, + 96,96,96,96,96,240,5,13,13,5,254,253,24,24,0,56, + 24,24,24,24,24,24,24,216,112,8,11,11,9,0,0,224, + 96,96,96,103,102,108,120,108,102,231,4,11,11,5,0,0, + 224,96,96,96,96,96,96,96,96,96,240,14,7,14,15,0, + 0,238,112,115,152,99,24,99,24,99,24,99,24,247,188,9, + 7,14,10,0,0,238,0,115,0,99,0,99,0,99,0,99, + 0,247,128,8,7,7,9,0,0,60,102,195,195,195,102,60, + 9,10,20,10,0,253,238,0,115,0,97,128,97,128,97,128, + 115,0,110,0,96,0,96,0,240,0,9,10,20,9,0,253, + 61,0,103,0,195,0,195,0,195,0,103,0,59,0,3,0, + 3,0,7,128,7,7,7,7,0,0,238,118,96,96,96,96, + 240,6,7,7,7,0,0,124,196,224,120,28,140,248,6,10, + 10,6,0,0,32,32,96,248,96,96,96,100,100,56,9,7, + 14,10,0,0,231,0,99,0,99,0,99,0,99,0,103,0, + 59,128,8,7,7,7,255,0,247,98,98,52,52,24,24,13, + 7,14,12,255,0,247,184,99,16,99,16,53,160,53,160,24, + 192,24,192,8,7,7,9,0,0,231,102,60,24,60,70,231, + 8,10,10,7,255,253,247,98,98,52,52,24,24,16,208,224, + 6,7,7,7,0,0,252,140,24,48,96,196,252,5,13,13, + 6,0,254,24,32,96,96,96,64,128,64,96,96,96,32,24, + 1,11,11,8,3,0,128,128,128,128,128,128,128,128,128,128, + 128,5,13,13,6,0,254,192,32,48,48,48,16,8,16,48, + 48,48,32,192,7,2,2,8,0,4,118,220,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,0,0,0, + 4,0,1,2,11,11,5,1,253,192,192,192,0,64,64,192, + 192,192,192,192,7,9,9,8,0,255,4,60,110,206,208,210, + 118,60,32,8,11,11,9,0,0,28,38,102,96,252,48,48, + 32,225,191,222,8,8,8,9,0,2,153,126,102,195,195,102, + 126,153,10,11,22,11,0,0,241,192,96,128,49,0,49,0, + 26,0,26,0,63,0,12,0,63,0,12,0,30,0,1,11, + 11,8,3,0,128,128,128,128,0,0,128,128,128,128,128,6, + 13,13,7,0,254,56,108,76,96,120,156,204,228,120,28,204, + 200,112,5,2,2,7,1,8,216,216,11,11,22,12,0,0, + 14,0,49,128,64,64,79,64,153,32,144,32,153,32,78,64, + 64,64,49,128,14,0,5,7,7,6,0,4,224,48,112,176, + 216,0,248,7,5,5,8,0,1,54,108,216,108,54,7,4, + 4,8,0,2,254,2,2,2,4,2,2,5,0,3,240,240, + 11,11,22,12,0,0,14,0,49,128,64,64,94,64,137,32, + 142,32,138,32,91,64,64,64,49,128,14,0,5,1,1,7, + 1,8,248,4,4,4,6,1,7,96,144,144,96,7,7,7, + 8,0,1,16,16,254,16,16,0,254,5,6,6,5,255,5, + 112,152,24,48,96,248,5,6,6,5,255,5,112,152,48,24, + 152,112,4,3,3,6,1,8,48,96,128,9,10,20,10,0, + 253,247,0,99,0,99,0,99,0,99,0,103,0,123,128,64, + 0,96,0,96,0,9,11,22,10,0,0,127,128,251,0,251, + 0,251,0,251,0,123,0,27,0,27,0,27,0,27,0,63, + 128,2,2,2,5,1,4,192,192,3,3,3,5,1,253,64, + 32,224,4,6,6,5,0,5,96,224,96,96,96,240,5,7, + 7,6,0,4,112,216,216,216,112,0,248,7,5,5,8,0, + 1,216,108,54,108,216,11,11,22,12,0,0,97,0,227,0, + 98,0,102,0,100,0,252,192,9,192,26,192,20,192,55,224, + 32,192,11,11,22,12,0,0,97,0,227,0,98,0,102,0, + 100,0,253,192,10,96,24,96,16,192,49,128,35,224,12,11, + 22,12,255,0,112,128,153,128,49,0,27,0,154,0,118,96, + 4,224,13,96,10,96,27,240,16,96,6,11,11,7,0,253, + 48,48,48,0,16,48,96,192,204,204,120,10,15,30,11,0, + 0,48,0,24,0,4,0,0,0,12,0,12,0,22,0,22, + 0,18,0,35,0,35,0,63,0,65,128,65,128,227,192,10, + 15,30,11,0,0,3,0,6,0,8,0,0,0,12,0,12, + 0,22,0,22,0,18,0,35,0,35,0,63,0,65,128,65, + 128,227,192,10,15,30,11,0,0,4,0,14,0,17,0,0, + 0,12,0,12,0,22,0,22,0,18,0,35,0,35,0,63, + 0,65,128,65,128,227,192,10,14,28,11,0,0,29,0,46, + 0,0,0,12,0,12,0,22,0,22,0,18,0,35,0,35, + 0,63,0,65,128,65,128,227,192,10,14,28,11,0,0,51, + 0,51,0,0,0,12,0,12,0,22,0,22,0,18,0,35, + 0,35,0,63,0,65,128,65,128,227,192,10,15,30,11,0, + 0,12,0,18,0,12,0,0,0,12,0,12,0,22,0,22, + 0,18,0,35,0,35,0,63,0,65,128,65,128,227,192,15, + 11,22,15,255,0,15,254,5,134,5,130,9,146,9,144,17, + 240,31,144,33,146,33,130,65,134,227,254,10,14,28,11,0, + 253,31,64,112,192,96,64,192,64,192,0,192,0,192,0,192, + 0,96,64,112,192,31,0,4,0,2,0,14,0,9,15,30, + 10,0,0,24,0,12,0,2,0,0,0,255,128,97,128,96, + 128,100,128,100,0,124,0,100,0,100,128,96,128,97,128,255, + 128,9,15,30,10,0,0,3,0,6,0,8,0,0,0,255, + 128,97,128,96,128,100,128,100,0,124,0,100,0,100,128,96, + 128,97,128,255,128,9,15,30,10,0,0,4,0,14,0,17, + 0,0,0,255,128,97,128,96,128,100,128,100,0,124,0,100, + 0,100,128,96,128,97,128,255,128,9,14,28,10,0,0,51, + 0,51,0,0,0,255,128,97,128,96,128,100,128,100,0,124, + 0,100,0,100,128,96,128,97,128,255,128,4,15,15,7,1, + 0,192,96,16,0,240,96,96,96,96,96,96,96,96,96,240, + 5,15,15,7,1,0,24,48,64,0,240,96,96,96,96,96, + 96,96,96,96,240,5,15,15,7,1,0,32,112,136,0,240, + 96,96,96,96,96,96,96,96,96,240,6,14,14,7,0,0, + 204,204,0,120,48,48,48,48,48,48,48,48,48,120,11,11, + 22,12,0,0,255,0,97,192,96,192,96,96,96,96,248,96, + 96,96,96,96,96,192,97,192,255,0,11,14,28,12,0,0, + 14,128,23,0,0,0,224,224,112,64,120,64,92,64,76,64, + 70,64,71,64,67,192,65,192,64,192,224,64,11,15,30,12, + 0,0,24,0,12,0,2,0,0,0,31,0,113,192,96,192, + 192,96,192,96,192,96,192,96,192,96,96,192,113,192,31,0, + 11,15,30,12,0,0,0,192,1,128,2,0,0,0,31,0, + 113,192,96,192,192,96,192,96,192,96,192,96,192,96,96,192, + 113,192,31,0,11,15,30,12,0,0,4,0,14,0,17,0, + 0,0,31,0,113,192,96,192,192,96,192,96,192,96,192,96, + 192,96,96,192,113,192,31,0,11,14,28,12,0,0,14,128, + 23,0,0,0,31,0,113,192,96,192,192,96,192,96,192,96, + 192,96,192,96,96,192,113,192,31,0,11,14,28,12,0,0, + 25,128,25,128,0,0,31,0,113,192,96,192,192,96,192,96, + 192,96,192,96,192,96,96,192,113,192,31,0,8,7,7,8, + 0,1,195,102,60,24,60,102,195,11,11,22,12,0,0,31, + 32,113,192,96,192,193,96,194,96,196,96,200,96,208,96,96, + 192,113,192,159,0,11,15,30,12,0,0,12,0,6,0,1, + 0,0,0,240,224,96,64,96,64,96,64,96,64,96,64,96, + 64,96,64,96,64,48,128,31,0,11,15,30,12,0,0,1, + 128,3,0,4,0,0,0,240,224,96,64,96,64,96,64,96, + 64,96,64,96,64,96,64,96,64,48,128,31,0,11,15,30, + 12,0,0,4,0,14,0,17,0,0,0,240,224,96,64,96, + 64,96,64,96,64,96,64,96,64,96,64,96,64,48,128,31, + 0,11,14,28,12,0,0,25,128,25,128,0,0,240,224,96, + 64,96,64,96,64,96,64,96,64,96,64,96,64,96,64,48, + 128,31,0,10,15,30,11,0,0,1,128,3,0,4,0,0, + 0,241,192,96,128,49,0,49,0,26,0,26,0,12,0,12, + 0,12,0,12,0,30,0,9,11,22,10,0,0,240,0,96, + 0,127,0,99,128,97,128,97,128,99,128,126,0,96,0,96, + 0,240,0,8,11,11,9,0,0,30,35,99,98,108,98,99, + 99,99,99,238,8,11,11,9,0,0,48,24,4,0,60,102, + 6,62,198,206,119,8,11,11,9,0,0,12,24,32,0,60, + 102,6,62,198,206,119,8,11,11,9,0,0,16,56,108,0, + 60,102,6,62,198,206,119,8,10,10,9,0,0,52,88,0, + 60,102,6,62,198,206,119,8,10,10,9,0,0,108,108,0, + 60,102,6,62,198,206,119,8,11,11,9,0,0,24,36,24, + 0,60,102,6,62,198,206,119,13,7,14,14,0,0,57,224, + 103,48,6,24,63,248,198,0,199,24,121,240,7,10,10,8, + 0,253,60,102,198,192,194,102,60,16,8,56,8,11,11,9, + 0,0,48,24,4,0,60,102,195,255,192,99,62,8,11,11, + 9,0,0,12,24,32,0,60,102,195,255,192,99,62,8,11, + 11,9,0,0,16,56,108,0,60,102,195,255,192,99,62,8, + 10,10,9,0,0,108,108,0,60,102,195,255,192,99,62,4, + 11,11,5,0,0,192,96,16,0,224,96,96,96,96,96,240, + 4,11,11,5,0,0,48,96,128,0,224,96,96,96,96,96, + 240,5,11,11,5,0,0,32,112,216,0,224,96,96,96,96, + 96,240,5,10,10,5,0,0,216,216,0,224,96,96,96,96, + 96,240,8,11,11,9,0,0,198,56,120,140,62,102,195,195, + 195,102,60,9,10,20,10,0,0,26,0,44,0,0,0,238, + 0,115,0,99,0,99,0,99,0,99,0,247,128,8,11,11, + 9,0,0,48,24,4,0,60,102,195,195,195,102,60,8,11, + 11,9,0,0,12,24,32,0,60,102,195,195,195,102,60,8, + 11,11,9,0,0,16,56,108,0,60,102,195,195,195,102,60, + 8,10,10,9,0,0,52,88,0,60,102,195,195,195,102,60, + 8,10,10,9,0,0,108,108,0,60,102,195,195,195,102,60, + 8,7,7,8,0,1,24,24,0,255,0,24,24,8,9,9, + 9,0,255,2,60,110,203,211,211,102,60,64,9,11,22,10, + 0,0,48,0,24,0,4,0,0,0,247,128,99,0,99,0, + 99,0,99,0,103,0,59,128,9,11,22,10,0,0,12,0, + 24,0,32,0,0,0,247,128,99,0,99,0,99,0,99,0, + 103,0,59,128,9,11,22,10,0,0,8,0,28,0,54,0, + 0,0,247,128,99,0,99,0,99,0,99,0,103,0,59,128, + 9,10,20,10,0,0,54,0,54,0,0,0,247,128,99,0, + 99,0,99,0,99,0,103,0,59,128,8,14,14,7,255,253, + 6,12,16,0,247,98,98,52,52,24,24,16,208,224,9,14, + 28,10,0,253,224,0,96,0,96,0,96,0,110,0,115,0, + 97,128,97,128,97,128,115,0,110,0,96,0,96,0,240,0, + 8,13,13,7,255,253,54,54,0,247,98,98,52,52,24,24, + 16,208,224}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--14-100-100-100-P-87-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=14 h=14 x= 3 y= 8 dx=15 dy= 0 ascent=12 len=28 + Font Bounding box w=20 h=25 x=-2 y=-6 + Calculated Min Values x=-2 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB10r[1853] U8G_SECTION(".progmem.u8g_font_ncenB10r") = { + 0,20,25,254,250,11,2,24,5,41,32,127,253,12,253,11, + 253,0,0,0,4,0,1,2,11,11,4,1,0,192,192,192, + 192,192,128,128,0,192,192,192,3,4,4,5,1,7,160,160, + 160,160,7,10,10,8,0,0,20,20,20,126,40,40,252,80, + 80,80,7,13,13,8,0,255,16,124,214,150,208,240,124,30, + 22,210,214,124,16,12,11,22,13,0,0,48,128,111,0,201, + 0,202,0,210,0,100,96,4,208,9,144,9,144,17,160,16, + 192,12,11,22,13,0,0,30,0,51,0,51,0,50,0,28, + 0,60,224,78,64,199,128,195,144,227,224,124,192,1,4,4, + 3,1,7,128,128,128,128,4,13,13,5,0,254,16,32,96, + 64,192,192,192,192,192,64,96,32,16,4,13,13,5,0,254, + 128,64,96,32,48,48,48,48,48,32,96,64,128,5,5,5, + 6,0,6,32,168,112,168,32,7,7,7,8,0,1,16,16, + 16,254,16,16,16,2,5,5,4,1,254,192,192,192,64,128, + 4,2,2,5,0,3,240,240,2,3,3,4,1,0,192,192, + 192,4,11,11,5,0,0,16,16,16,32,32,32,64,64,64, + 128,128,7,11,11,8,0,0,56,108,198,198,198,198,198,198, + 198,108,56,5,11,11,8,1,0,48,240,48,48,48,48,48, + 48,48,48,120,7,11,11,8,0,0,120,206,198,6,6,12, + 24,48,98,254,254,7,11,11,8,0,0,120,206,198,6,12, + 60,6,6,198,206,120,7,11,11,8,0,0,12,28,28,44, + 44,76,76,254,12,12,30,7,11,11,8,0,0,126,124,64, + 64,92,110,6,6,198,206,120,7,11,11,8,0,0,60,102, + 198,192,220,238,198,198,198,230,120,7,11,11,8,0,0,254, + 254,132,140,12,24,24,24,48,48,48,7,11,11,8,0,0, + 120,230,198,198,244,60,94,198,198,206,60,7,11,11,8,0, + 0,60,206,198,198,198,238,118,6,198,204,120,2,7,7,4, + 1,0,192,192,192,0,192,192,192,2,9,9,4,1,254,192, + 192,192,0,192,192,192,64,128,7,7,7,8,0,1,2,14, + 56,224,56,14,2,7,3,3,8,0,3,254,0,254,7,7, + 7,8,0,1,128,224,56,14,56,224,128,6,11,11,7,0, + 0,120,204,204,12,24,48,32,0,48,48,48,13,11,22,14, + 0,0,15,192,56,112,99,152,108,216,204,216,217,152,217,176, + 219,176,205,192,96,16,63,224,10,11,22,11,0,0,12,0, + 12,0,22,0,22,0,18,0,35,0,35,0,63,0,65,128, + 65,128,227,192,9,11,22,10,0,0,254,0,99,0,99,0, + 99,0,102,0,127,0,97,128,97,128,97,128,99,128,254,0, + 10,11,22,11,0,0,31,64,112,192,96,64,192,64,192,0, + 192,0,192,0,192,0,96,64,112,192,31,0,11,11,22,12, + 0,0,255,0,97,192,96,192,96,96,96,96,96,96,96,96, + 96,96,96,192,97,192,255,0,9,11,22,10,0,0,255,128, + 97,128,96,128,100,128,100,0,124,0,100,0,100,128,96,128, + 97,128,255,128,9,11,22,10,0,0,255,128,97,128,96,128, + 100,128,100,0,124,0,100,0,100,0,96,0,96,0,240,0, + 11,11,22,12,0,0,31,64,112,192,96,64,192,64,192,0, + 192,0,195,224,192,192,96,192,113,192,30,64,11,11,22,12, + 0,0,241,224,96,192,96,192,96,192,96,192,127,192,96,192, + 96,192,96,192,96,192,241,224,4,11,11,7,1,0,240,96, + 96,96,96,96,96,96,96,96,240,7,11,11,9,0,0,30, + 12,12,12,12,12,12,204,204,156,112,11,11,22,12,0,0, + 243,192,97,0,98,0,100,0,104,0,124,0,110,0,103,0, + 99,128,97,192,243,224,9,11,22,10,0,0,240,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,128,96,128,97,128, + 255,128,13,11,22,14,0,0,240,120,112,112,112,112,88,176, + 88,176,88,176,77,48,77,48,77,48,70,48,230,120,11,11, + 22,12,0,0,224,224,112,64,120,64,92,64,76,64,70,64, + 71,64,67,192,65,192,64,192,224,64,11,11,22,12,0,0, + 31,0,113,192,96,192,192,96,192,96,192,96,192,96,192,96, + 96,192,113,192,31,0,9,11,22,10,0,0,255,0,99,128, + 97,128,97,128,99,128,126,0,96,0,96,0,96,0,96,0, + 240,0,11,14,28,12,0,253,31,0,113,192,96,192,192,96, + 192,96,192,96,192,96,220,96,102,192,115,192,31,0,3,32, + 3,160,1,192,11,11,22,12,0,0,255,0,99,128,97,128, + 97,128,99,0,126,0,99,0,99,0,97,128,97,160,241,192, + 9,11,22,10,0,0,61,0,227,0,193,0,193,0,240,0, + 126,0,15,128,129,128,129,128,195,128,190,0,10,11,22,11, + 0,0,255,192,204,192,140,64,140,64,12,0,12,0,12,0, + 12,0,12,0,12,0,30,0,11,11,22,12,0,0,240,224, + 96,64,96,64,96,64,96,64,96,64,96,64,96,64,96,64, + 48,128,31,0,10,11,22,11,0,0,241,192,96,128,96,128, + 49,0,49,0,49,0,26,0,26,0,26,0,12,0,12,0, + 13,11,22,14,0,0,247,184,99,16,99,16,99,16,53,160, + 53,160,53,160,53,160,24,192,24,192,24,192,11,11,22,12, + 0,0,249,224,112,192,48,128,25,0,13,0,14,0,22,0, + 19,0,33,128,97,192,243,224,10,11,22,11,0,0,241,192, + 96,128,49,0,49,0,26,0,26,0,12,0,12,0,12,0, + 12,0,30,0,8,11,11,9,0,0,255,195,135,142,12,24, + 48,113,225,195,255,4,13,13,5,0,254,240,192,192,192,192, + 192,192,192,192,192,192,192,240,6,11,11,7,0,0,128,128, + 64,64,32,32,16,16,8,8,4,4,13,13,5,0,254,240, + 48,48,48,48,48,48,48,48,48,48,48,240,7,7,7,8, + 0,4,16,16,56,40,108,68,198,7,1,1,7,0,254,254, + 4,3,3,6,1,8,192,96,16,8,7,7,9,0,0,60, + 102,6,62,198,206,119,9,11,22,10,0,0,224,0,96,0, + 96,0,96,0,110,0,115,0,97,128,97,128,97,128,99,0, + 94,0,7,7,7,8,0,0,60,102,198,192,194,102,60,9, + 11,22,10,0,0,7,0,3,0,3,0,3,0,59,0,103, + 0,195,0,195,0,195,0,103,0,59,128,8,7,7,9,0, + 0,60,102,195,255,192,99,62,6,11,11,6,0,0,56,108, + 108,96,248,96,96,96,96,96,240,7,11,11,8,0,253,6, + 124,198,198,124,128,252,126,130,134,124,9,11,22,10,0,0, + 224,0,96,0,96,0,96,0,110,0,115,0,99,0,99,0, + 99,0,99,0,247,128,4,10,10,5,0,0,96,96,0,224, + 96,96,96,96,96,240,5,13,13,5,254,253,24,24,0,56, + 24,24,24,24,24,24,24,216,112,8,11,11,9,0,0,224, + 96,96,96,103,102,108,120,108,102,231,4,11,11,5,0,0, + 224,96,96,96,96,96,96,96,96,96,240,14,7,14,15,0, + 0,238,112,115,152,99,24,99,24,99,24,99,24,247,188,9, + 7,14,10,0,0,238,0,115,0,99,0,99,0,99,0,99, + 0,247,128,8,7,7,9,0,0,60,102,195,195,195,102,60, + 9,10,20,10,0,253,238,0,115,0,97,128,97,128,97,128, + 115,0,110,0,96,0,96,0,240,0,9,10,20,9,0,253, + 61,0,103,0,195,0,195,0,195,0,103,0,59,0,3,0, + 3,0,7,128,7,7,7,7,0,0,238,118,96,96,96,96, + 240,6,7,7,7,0,0,124,196,224,120,28,140,248,6,10, + 10,6,0,0,32,32,96,248,96,96,96,100,100,56,9,7, + 14,10,0,0,231,0,99,0,99,0,99,0,99,0,103,0, + 59,128,8,7,7,7,255,0,247,98,98,52,52,24,24,13, + 7,14,12,255,0,247,184,99,16,99,16,53,160,53,160,24, + 192,24,192,8,7,7,9,0,0,231,102,60,24,60,70,231, + 8,10,10,7,255,253,247,98,98,52,52,24,24,16,208,224, + 6,7,7,7,0,0,252,140,24,48,96,196,252,5,13,13, + 6,0,254,24,32,96,96,96,64,128,64,96,96,96,32,24, + 1,11,11,8,3,0,128,128,128,128,128,128,128,128,128,128, + 128,5,13,13,6,0,254,192,32,48,48,48,16,8,16,48, + 48,48,32,192,7,2,2,8,0,4,118,220,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--17-120-100-100-P-99-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=16 h=16 x= 4 y=10 dx=16 dy= 0 ascent=16 len=32 + Font Bounding box w=22 h=27 x=-3 y=-7 + Calculated Min Values x=-2 y=-3 dx= 0 dy= 0 + Pure Font ascent =12 descent=-3 + X Font ascent =12 descent=-3 + Max Font ascent =16 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB12[4735] U8G_SECTION(".progmem.u8g_font_ncenB12") = { + 0,22,27,253,249,12,2,152,5,246,32,255,253,16,253,12, + 253,0,0,0,4,1,1,3,12,12,5,1,0,64,224,224, + 224,224,64,64,0,64,224,224,64,5,5,5,6,0,7,216, + 216,216,144,144,10,12,24,10,0,0,25,128,25,128,25,128, + 127,192,127,192,51,0,51,0,255,128,255,128,102,0,102,0, + 102,0,9,15,30,10,0,255,8,0,8,0,62,0,105,0, + 203,128,201,0,252,0,127,0,31,128,73,128,233,128,201,128, + 107,0,62,0,8,0,12,12,24,14,1,0,56,128,119,128, + 101,0,197,0,202,0,202,224,117,208,5,144,11,16,11,32, + 19,32,17,192,12,12,24,14,1,0,15,0,25,128,25,128, + 25,0,30,0,60,240,110,96,231,64,199,128,227,144,243,240, + 124,224,2,5,5,4,1,7,192,192,192,128,128,4,14,14, + 6,1,254,16,32,96,96,192,192,192,192,192,192,96,96,32, + 16,4,14,14,6,0,254,128,64,96,96,48,48,48,48,48, + 48,96,96,64,128,7,7,7,8,0,5,16,84,214,56,214, + 84,16,8,8,8,10,1,0,24,24,24,255,255,24,24,24, + 4,6,6,5,0,253,96,240,112,32,96,128,4,2,2,5, + 0,3,240,240,4,3,3,5,0,0,96,240,96,5,12,12, + 5,0,0,8,8,16,16,16,32,32,64,64,64,128,128,9, + 12,24,10,0,0,28,0,54,0,99,0,99,0,227,128,227, + 128,227,128,227,128,99,0,99,0,54,0,28,0,7,12,12, + 10,1,0,24,248,56,56,56,56,56,56,56,56,56,254,8, + 12,12,10,1,0,60,70,231,231,71,14,12,24,49,97,255, + 255,9,12,24,10,0,0,62,0,103,0,115,0,35,0,6, + 0,31,0,7,0,3,128,99,128,243,128,103,0,62,0,9, + 12,24,10,0,0,2,0,6,0,14,0,30,0,46,0,46, + 0,78,0,142,0,255,128,14,0,14,0,63,128,8,12,12, + 10,1,0,127,126,64,64,124,78,7,71,231,231,206,124,9, + 12,24,10,0,0,31,0,51,128,103,128,99,0,224,0,238, + 0,247,0,227,128,227,128,99,128,119,0,30,0,8,12,12, + 10,1,0,255,254,134,134,132,12,12,24,24,56,56,16,8, + 12,12,10,1,0,60,102,231,231,102,60,102,231,231,231,102, + 60,9,12,24,10,0,0,60,0,119,0,227,0,227,128,227, + 128,119,128,59,128,3,128,99,0,243,0,230,0,124,0,4, + 8,8,5,0,0,96,240,96,0,0,96,240,96,4,11,11, + 5,0,253,96,240,96,0,0,96,240,112,32,96,128,8,8, + 8,10,1,1,3,15,60,240,240,60,15,3,8,6,6,10, + 1,1,255,255,0,0,255,255,8,8,8,10,1,1,192,240, + 60,15,15,60,240,192,8,12,12,8,0,0,60,102,247,103, + 14,12,16,0,16,56,56,16,12,13,26,12,0,255,15,128, + 56,224,96,32,70,176,205,144,153,144,153,144,153,176,219,160, + 76,64,96,48,56,224,15,128,13,12,24,13,0,0,6,0, + 7,0,7,0,15,0,11,128,27,128,17,192,63,192,49,192, + 32,224,96,224,241,248,12,12,24,13,0,0,255,192,56,224, + 56,112,56,112,56,224,63,192,56,224,56,112,56,112,56,112, + 56,224,255,192,11,12,24,13,1,0,15,160,56,224,112,96, + 112,32,224,32,224,0,224,0,224,32,112,32,112,64,56,192, + 15,0,13,12,24,14,0,0,255,128,56,224,56,112,56,112, + 56,56,56,56,56,56,56,56,56,112,56,112,56,224,255,128, + 11,12,24,12,0,0,255,224,56,96,56,96,57,32,59,0, + 63,0,59,0,57,32,56,32,56,96,56,96,255,224,11,12, + 24,12,0,0,255,224,56,96,56,96,57,32,59,0,63,0, + 59,0,57,0,56,0,56,0,56,0,254,0,13,12,24,14, + 1,0,15,160,56,224,112,96,112,32,224,32,224,0,227,248, + 224,224,112,224,112,224,57,224,15,32,14,12,24,15,0,0, + 254,252,56,112,56,112,56,112,56,112,63,240,56,112,56,112, + 56,112,56,112,56,112,254,252,7,12,12,7,0,0,254,56, + 56,56,56,56,56,56,56,56,56,254,10,12,24,11,0,0, + 31,192,7,0,7,0,7,0,7,0,7,0,103,0,247,0, + 231,0,135,0,206,0,124,0,14,12,24,13,0,0,254,248, + 56,96,56,192,57,128,59,0,63,128,63,128,59,192,57,224, + 56,240,56,120,254,252,11,12,24,12,0,0,254,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,32,56,32,56,96, + 56,96,255,224,16,12,24,16,0,0,252,63,60,60,46,60, + 46,92,46,92,39,92,39,156,39,156,35,156,35,28,33,28, + 249,63,14,12,24,14,0,0,240,124,56,16,60,16,62,16, + 47,16,39,144,35,208,33,240,32,240,32,112,32,48,248,16, + 12,12,24,14,1,0,15,0,57,192,112,224,112,224,224,112, + 224,112,224,112,224,112,112,224,112,224,57,192,15,0,12,12, + 24,13,0,0,255,192,56,224,56,112,56,112,56,112,56,224, + 63,192,56,0,56,0,56,0,56,0,254,0,12,15,30,14, + 1,253,15,0,57,192,112,224,112,224,224,112,224,112,224,112, + 230,112,105,96,121,224,57,192,15,128,1,208,1,240,0,224, + 13,12,24,14,0,0,255,192,56,224,56,112,56,112,56,224, + 63,192,57,128,57,192,56,224,56,232,56,248,252,112,9,12, + 24,11,1,0,62,128,67,128,193,128,192,128,248,128,126,0, + 63,0,143,128,129,128,193,128,225,0,190,0,11,12,24,12, + 0,0,255,224,206,96,142,32,142,32,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,63,128,14,12,24,14,0,0, + 254,124,56,16,56,16,56,16,56,16,56,16,56,16,56,16, + 56,16,28,32,30,96,7,128,13,12,24,13,255,0,254,120, + 56,48,60,32,28,32,28,64,14,64,14,128,15,128,7,128, + 7,0,3,0,3,0,15,12,24,16,0,0,251,222,113,140, + 49,136,57,200,57,216,59,208,26,208,30,240,28,224,12,96, + 12,96,12,96,12,12,24,12,0,0,249,240,112,96,56,64, + 28,128,31,0,15,0,15,0,15,128,19,192,33,192,96,224, + 249,240,13,12,24,12,255,0,254,248,56,96,28,64,28,128, + 14,128,15,0,7,0,7,0,7,0,7,0,7,0,31,192, + 9,12,24,11,1,0,255,128,195,128,135,0,135,0,14,0, + 28,0,28,0,56,128,112,128,113,128,227,128,255,128,4,14, + 14,6,1,254,240,192,192,192,192,192,192,192,192,192,192,192, + 192,240,7,12,12,10,1,0,192,192,96,96,48,48,24,24, + 12,12,6,6,4,14,14,7,1,254,240,48,48,48,48,48, + 48,48,48,48,48,48,48,240,8,7,7,10,1,5,24,24, + 60,102,102,195,195,8,2,2,8,0,254,255,255,4,3,3, + 6,0,9,192,224,48,9,8,16,10,0,0,126,0,231,0, + 199,0,31,0,103,0,231,0,239,0,119,128,11,12,24,11, + 255,0,248,0,56,0,56,0,56,0,59,128,61,192,56,224, + 56,224,56,224,56,224,61,192,43,128,8,8,8,9,0,0, + 62,115,231,224,224,227,118,60,11,12,24,11,0,0,7,128, + 3,128,3,128,3,128,59,128,119,128,227,128,227,128,227,128, + 227,128,119,128,58,224,9,8,16,10,0,0,62,0,119,0, + 227,128,255,128,224,0,225,128,115,0,62,0,9,12,24,7, + 255,0,15,0,27,128,59,0,56,0,254,0,56,0,56,0, + 56,0,56,0,56,0,56,0,254,0,9,12,24,10,0,253, + 1,128,63,128,119,0,227,128,227,128,247,0,124,0,96,0, + 127,0,255,128,195,128,255,0,11,12,24,11,255,0,240,0, + 112,0,112,0,112,0,119,128,121,192,121,192,113,192,113,192, + 113,192,113,192,251,224,5,12,12,6,0,0,96,240,96,0, + 240,112,112,112,112,112,112,248,6,15,15,6,254,253,24,60, + 24,0,124,28,28,28,28,28,28,28,220,216,112,11,12,24, + 11,0,0,240,0,112,0,112,0,112,0,119,192,115,128,119, + 0,126,0,127,0,115,128,113,192,251,224,5,12,12,6,0, + 0,240,112,112,112,112,112,112,112,112,112,112,248,15,8,16, + 16,0,0,247,56,123,220,115,156,115,156,115,156,115,156,115, + 156,251,190,11,8,16,11,255,0,247,128,121,192,113,192,113, + 192,113,192,113,192,113,192,251,224,10,8,16,11,0,0,30, + 0,115,128,225,192,225,192,225,192,225,192,115,128,30,0,10, + 11,22,11,255,253,247,0,123,128,113,192,113,192,113,192,113, + 192,123,128,119,0,112,0,112,0,248,0,10,11,22,10,255, + 253,62,128,115,128,227,128,227,128,227,128,227,128,115,128,63, + 128,3,128,3,128,7,192,9,8,16,9,0,0,247,0,123, + 128,115,0,112,0,112,0,112,0,112,0,248,0,7,8,8, + 8,0,0,122,198,226,252,126,142,198,188,6,11,11,7,0, + 0,16,16,48,252,112,112,112,112,116,124,56,11,8,16,11, + 255,0,243,192,113,192,113,192,113,192,113,192,113,192,123,192, + 62,224,10,8,16,10,0,0,251,192,113,128,115,0,59,0, + 58,0,30,0,28,0,12,0,15,8,16,15,0,0,251,222, + 113,140,57,200,59,216,30,240,30,240,12,96,12,96,9,8, + 16,10,0,0,251,128,113,0,62,0,28,0,28,0,62,0, + 71,0,239,128,10,11,22,10,255,253,251,192,113,128,57,128, + 57,0,31,0,14,0,14,0,6,0,52,0,116,0,56,0, + 7,8,8,9,0,0,254,204,156,56,48,114,230,254,4,14, + 14,6,1,254,48,96,96,96,96,96,192,96,96,96,96,96, + 96,48,2,12,12,10,4,0,192,192,192,192,192,192,192,192, + 192,192,192,192,4,14,14,6,0,254,192,96,96,96,96,96, + 48,96,96,96,96,96,96,192,8,3,3,10,1,3,114,255, + 78,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,0,0,0,4,1,1,3,12,12,5,1,253,64,224, + 224,64,0,64,64,224,224,224,224,64,8,12,12,10,0,254, + 1,2,62,115,231,231,232,233,114,60,32,64,9,12,24,10, + 0,0,31,0,57,128,115,128,115,128,113,0,56,0,254,0, + 24,0,24,0,120,128,191,0,110,0,8,8,8,10,1,2, + 90,255,102,195,195,102,255,90,10,12,24,10,0,0,251,192, + 113,128,49,0,59,0,26,0,30,0,63,0,12,0,63,0, + 12,0,12,0,63,0,2,12,12,10,4,0,192,192,192,192, + 192,0,0,192,192,192,192,192,6,15,15,9,1,253,56,76, + 76,96,48,120,140,132,196,120,48,24,200,200,112,5,2,2, + 6,0,9,216,216,12,12,24,12,0,0,31,128,57,192,96, + 96,207,176,217,48,152,16,152,16,217,176,207,48,96,96,57, + 192,31,128,6,7,7,6,0,5,112,152,120,216,108,0,248, + 6,5,5,8,1,2,36,108,216,108,36,8,5,5,10,0, + 2,255,255,3,3,3,4,2,2,5,0,3,240,240,12,12, + 24,12,0,0,31,128,57,192,96,96,223,48,201,48,142,16, + 139,16,201,176,221,240,96,96,57,192,31,128,5,1,1,6, + 0,10,248,5,5,5,7,1,7,112,216,136,216,112,8,9, + 9,10,1,0,24,24,255,255,24,24,0,255,255,5,7,7, + 6,0,5,112,152,216,16,32,120,248,6,7,7,6,0,5, + 120,204,76,24,76,204,120,4,3,3,6,1,9,48,112,192, + 11,11,22,11,0,253,243,192,113,192,113,192,113,192,113,192, + 113,192,123,192,110,224,96,0,112,0,112,0,11,12,24,12, + 0,0,127,224,249,128,249,128,249,128,249,128,121,128,25,128, + 25,128,25,128,25,128,25,128,127,224,4,3,3,5,0,3, + 96,240,96,4,4,4,6,0,253,64,96,48,224,4,7,7, + 6,1,5,32,224,96,96,96,96,240,5,7,7,6,0,5, + 112,216,216,216,112,0,248,6,5,5,8,1,2,144,216,108, + 216,144,12,12,24,14,1,0,32,64,224,192,97,128,97,0, + 99,0,98,32,246,96,12,224,9,32,27,240,48,96,32,240, + 12,12,24,14,1,0,32,64,224,192,97,128,97,0,99,0, + 98,224,247,48,13,176,8,32,24,64,48,240,33,240,13,12, + 24,14,0,0,120,32,204,96,76,192,24,128,77,128,205,16, + 123,48,6,112,4,144,13,248,24,48,16,120,8,12,12,8, + 0,253,8,28,28,8,0,8,48,112,230,239,102,60,13,16, + 32,13,0,0,24,0,28,0,6,0,0,0,6,0,7,0, + 7,0,15,0,11,128,27,128,17,192,63,192,49,192,32,224, + 96,224,241,248,13,16,32,13,0,0,1,128,3,128,6,0, + 0,0,6,0,7,0,7,0,15,0,11,128,27,128,17,192, + 63,192,49,192,32,224,96,224,241,248,13,16,32,13,0,0, + 2,0,7,0,13,128,0,0,6,0,7,0,7,0,15,0, + 11,128,27,128,17,192,63,192,49,192,32,224,96,224,241,248, + 13,15,30,13,0,0,14,128,23,0,0,0,6,0,7,0, + 7,0,15,0,11,128,27,128,17,192,63,192,49,192,32,224, + 96,224,241,248,13,15,30,13,0,0,25,128,25,128,0,0, + 6,0,7,0,7,0,15,0,11,128,27,128,17,192,63,192, + 49,192,32,224,96,224,241,248,13,16,32,13,0,0,6,0, + 11,0,6,0,0,0,6,0,7,0,7,0,15,0,11,128, + 27,128,17,192,63,192,49,192,32,224,96,224,241,248,16,12, + 24,16,255,0,31,255,7,195,5,195,5,201,9,216,9,248, + 17,216,31,201,33,193,33,195,97,195,247,255,11,15,30,13, + 1,253,15,160,56,224,112,96,112,32,224,32,224,0,224,0, + 224,32,112,32,112,64,56,192,15,0,12,0,6,0,28,0, + 11,16,32,12,0,0,24,0,28,0,6,0,0,0,255,224, + 56,96,56,96,57,32,59,0,63,0,59,0,57,32,56,32, + 56,96,56,96,255,224,11,16,32,12,0,0,1,128,3,128, + 6,0,0,0,255,224,56,96,56,96,57,32,59,0,63,0, + 59,0,57,32,56,32,56,96,56,96,255,224,11,16,32,12, + 0,0,2,0,7,0,13,128,0,0,255,224,56,96,56,96, + 57,32,59,0,63,0,59,0,57,32,56,32,56,96,56,96, + 255,224,11,15,30,12,0,0,25,128,25,128,0,0,255,224, + 56,96,56,96,57,32,59,0,63,0,59,0,57,32,56,32, + 56,96,56,96,255,224,7,16,16,7,0,0,96,112,24,0, + 254,56,56,56,56,56,56,56,56,56,56,254,7,16,16,7, + 0,0,12,28,48,0,254,56,56,56,56,56,56,56,56,56, + 56,254,7,16,16,7,0,0,16,56,108,0,254,56,56,56, + 56,56,56,56,56,56,56,254,7,15,15,7,0,0,108,108, + 0,254,56,56,56,56,56,56,56,56,56,56,254,13,12,24, + 14,0,0,255,128,56,224,56,112,56,112,56,56,126,56,56, + 56,56,56,56,112,56,112,56,224,255,128,14,15,30,14,0, + 0,7,64,11,128,0,0,240,124,56,16,60,16,62,16,47, + 16,39,144,35,208,33,240,32,240,32,112,32,48,248,16,12, + 16,32,14,1,0,24,0,28,0,6,0,0,0,15,0,57, + 192,112,224,112,224,224,112,224,112,224,112,224,112,112,224,112, + 224,57,192,15,0,12,16,32,14,1,0,1,128,3,128,6, + 0,0,0,15,0,57,192,112,224,112,224,224,112,224,112,224, + 112,224,112,112,224,112,224,57,192,15,0,12,16,32,14,1, + 0,6,0,15,0,25,128,0,0,15,0,57,192,112,224,112, + 224,224,112,224,112,224,112,224,112,112,224,112,224,57,192,15, + 0,12,15,30,14,1,0,14,128,23,0,0,0,15,0,57, + 192,112,224,112,224,224,112,224,112,224,112,224,112,112,224,112, + 224,57,192,15,0,12,15,30,14,1,0,25,128,25,128,0, + 0,15,0,57,192,112,224,112,224,224,112,224,112,224,112,224, + 112,112,224,112,224,57,192,15,0,8,8,8,10,1,0,66, + 231,126,56,28,126,231,66,12,14,28,14,1,255,0,16,15, + 32,57,192,112,224,112,224,225,112,226,112,228,112,232,112,112, + 224,112,224,57,192,79,0,128,0,14,16,32,14,0,0,6, + 0,7,0,1,128,0,0,254,124,56,16,56,16,56,16,56, + 16,56,16,56,16,56,16,56,16,28,32,30,96,7,128,14, + 16,32,14,0,0,0,96,0,224,1,128,0,0,254,124,56, + 16,56,16,56,16,56,16,56,16,56,16,56,16,56,16,28, + 32,30,96,7,128,14,16,32,14,0,0,1,128,3,192,6, + 96,0,0,254,124,56,16,56,16,56,16,56,16,56,16,56, + 16,56,16,56,16,28,32,30,96,7,128,14,15,30,14,0, + 0,6,96,6,96,0,0,254,124,56,16,56,16,56,16,56, + 16,56,16,56,16,56,16,56,16,28,32,30,96,7,128,13, + 16,32,12,255,0,0,192,1,192,3,0,0,0,254,248,56, + 96,28,64,28,128,14,128,15,0,7,0,7,0,7,0,7, + 0,7,0,31,192,12,12,24,13,0,0,254,0,56,0,63, + 192,56,224,56,112,56,112,56,112,56,224,63,192,56,0,56, + 0,254,0,10,12,24,10,0,0,31,0,51,128,115,128,115, + 128,115,0,119,0,113,128,113,192,113,192,113,192,123,128,247, + 0,9,12,24,10,0,0,96,0,112,0,24,0,0,0,126, + 0,231,0,199,0,31,0,103,0,231,0,239,0,119,128,9, + 12,24,10,0,0,6,0,14,0,24,0,0,0,126,0,231, + 0,199,0,31,0,103,0,231,0,239,0,119,128,9,12,24, + 10,0,0,16,0,56,0,108,0,0,0,126,0,231,0,199, + 0,31,0,103,0,231,0,239,0,119,128,9,11,22,10,0, + 0,58,0,92,0,0,0,126,0,231,0,199,0,31,0,103, + 0,231,0,239,0,119,128,9,11,22,10,0,0,108,0,108, + 0,0,0,126,0,231,0,199,0,31,0,103,0,231,0,239, + 0,119,128,9,12,24,10,0,0,24,0,44,0,24,0,0, + 0,126,0,231,0,199,0,31,0,103,0,231,0,239,0,119, + 128,13,8,16,15,0,0,125,224,231,48,199,56,63,248,103, + 0,231,24,239,48,123,224,8,11,11,9,0,253,62,115,231, + 227,224,227,118,60,24,12,56,9,12,24,10,0,0,48,0, + 56,0,12,0,0,0,62,0,119,0,227,128,255,128,224,0, + 225,128,115,0,62,0,9,12,24,10,0,0,6,0,14,0, + 24,0,0,0,62,0,119,0,227,128,255,128,224,0,225,128, + 115,0,62,0,9,12,24,10,0,0,8,0,28,0,54,0, + 0,0,62,0,119,0,227,128,255,128,224,0,225,128,115,0, + 62,0,9,11,22,10,0,0,54,0,54,0,0,0,62,0, + 119,0,227,128,255,128,224,0,225,128,115,0,62,0,5,12, + 12,6,0,0,192,224,48,0,240,112,112,112,112,112,112,248, + 5,12,12,6,0,0,24,56,96,0,240,112,112,112,112,112, + 112,248,5,12,12,6,0,0,32,112,216,0,240,112,112,112, + 112,112,112,248,5,11,11,6,0,0,216,216,0,240,112,112, + 112,112,112,112,248,9,13,26,11,0,0,96,0,59,0,28, + 0,54,0,7,0,31,0,119,128,227,128,227,128,227,128,227, + 128,119,0,28,0,11,11,22,11,255,0,14,128,23,0,0, + 0,247,128,121,192,113,192,113,192,113,192,113,192,113,192,251, + 224,10,12,24,11,0,0,24,0,28,0,6,0,0,0,63, + 0,115,128,225,192,225,192,225,192,225,192,115,128,63,0,10, + 12,24,11,0,0,3,0,7,0,12,0,0,0,63,0,115, + 128,225,192,225,192,225,192,225,192,115,128,63,0,10,12,24, + 11,0,0,12,0,30,0,51,0,0,0,63,0,115,128,225, + 192,225,192,225,192,225,192,115,128,63,0,10,11,22,11,0, + 0,29,0,46,0,0,0,63,0,115,128,225,192,225,192,225, + 192,225,192,115,128,63,0,10,11,22,11,0,0,54,0,54, + 0,0,0,63,0,115,128,225,192,225,192,225,192,225,192,115, + 128,63,0,8,8,8,10,1,0,24,24,0,255,255,0,24, + 24,9,12,24,10,0,254,0,128,1,0,30,0,115,0,231, + 128,235,128,235,128,243,128,103,0,60,0,64,0,128,0,11, + 12,24,11,255,0,24,0,28,0,6,0,0,0,243,192,113, + 192,113,192,113,192,113,192,113,192,123,192,62,224,11,12,24, + 11,255,0,3,0,7,0,12,0,0,0,243,192,113,192,113, + 192,113,192,113,192,113,192,123,192,62,224,11,12,24,11,255, + 0,4,0,14,0,27,0,0,0,243,192,113,192,113,192,113, + 192,113,192,113,192,123,192,62,224,11,11,22,11,255,0,27, + 0,27,0,0,0,243,192,113,192,113,192,113,192,113,192,113, + 192,123,192,62,224,11,15,30,10,255,253,3,0,7,0,12, + 0,0,0,251,224,112,192,56,128,25,128,29,0,15,0,14, + 0,6,0,52,0,116,0,56,0,10,15,30,11,255,253,240, + 0,112,0,112,0,112,0,119,0,123,128,113,192,113,192,113, + 192,113,192,123,128,119,0,112,0,112,0,252,0,11,14,28, + 10,255,253,27,0,27,0,0,0,251,224,48,192,56,128,25, + 128,29,0,15,0,14,0,6,0,52,0,116,0,56,0}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--17-120-100-100-P-99-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=16 h=15 x= 4 y= 9 dx=16 dy= 0 ascent=14 len=30 + Font Bounding box w=22 h=27 x=-3 y=-7 + Calculated Min Values x=-2 y=-3 dx= 0 dy= 0 + Pure Font ascent =12 descent=-3 + X Font ascent =12 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB12r[2194] U8G_SECTION(".progmem.u8g_font_ncenB12r") = { + 0,22,27,253,249,12,2,152,5,246,32,127,253,14,253,12, + 253,0,0,0,4,1,1,3,12,12,5,1,0,64,224,224, + 224,224,64,64,0,64,224,224,64,5,5,5,6,0,7,216, + 216,216,144,144,10,12,24,10,0,0,25,128,25,128,25,128, + 127,192,127,192,51,0,51,0,255,128,255,128,102,0,102,0, + 102,0,9,15,30,10,0,255,8,0,8,0,62,0,105,0, + 203,128,201,0,252,0,127,0,31,128,73,128,233,128,201,128, + 107,0,62,0,8,0,12,12,24,14,1,0,56,128,119,128, + 101,0,197,0,202,0,202,224,117,208,5,144,11,16,11,32, + 19,32,17,192,12,12,24,14,1,0,15,0,25,128,25,128, + 25,0,30,0,60,240,110,96,231,64,199,128,227,144,243,240, + 124,224,2,5,5,4,1,7,192,192,192,128,128,4,14,14, + 6,1,254,16,32,96,96,192,192,192,192,192,192,96,96,32, + 16,4,14,14,6,0,254,128,64,96,96,48,48,48,48,48, + 48,96,96,64,128,7,7,7,8,0,5,16,84,214,56,214, + 84,16,8,8,8,10,1,0,24,24,24,255,255,24,24,24, + 4,6,6,5,0,253,96,240,112,32,96,128,4,2,2,5, + 0,3,240,240,4,3,3,5,0,0,96,240,96,5,12,12, + 5,0,0,8,8,16,16,16,32,32,64,64,64,128,128,9, + 12,24,10,0,0,28,0,54,0,99,0,99,0,227,128,227, + 128,227,128,227,128,99,0,99,0,54,0,28,0,7,12,12, + 10,1,0,24,248,56,56,56,56,56,56,56,56,56,254,8, + 12,12,10,1,0,60,70,231,231,71,14,12,24,49,97,255, + 255,9,12,24,10,0,0,62,0,103,0,115,0,35,0,6, + 0,31,0,7,0,3,128,99,128,243,128,103,0,62,0,9, + 12,24,10,0,0,2,0,6,0,14,0,30,0,46,0,46, + 0,78,0,142,0,255,128,14,0,14,0,63,128,8,12,12, + 10,1,0,127,126,64,64,124,78,7,71,231,231,206,124,9, + 12,24,10,0,0,31,0,51,128,103,128,99,0,224,0,238, + 0,247,0,227,128,227,128,99,128,119,0,30,0,8,12,12, + 10,1,0,255,254,134,134,132,12,12,24,24,56,56,16,8, + 12,12,10,1,0,60,102,231,231,102,60,102,231,231,231,102, + 60,9,12,24,10,0,0,60,0,119,0,227,0,227,128,227, + 128,119,128,59,128,3,128,99,0,243,0,230,0,124,0,4, + 8,8,5,0,0,96,240,96,0,0,96,240,96,4,11,11, + 5,0,253,96,240,96,0,0,96,240,112,32,96,128,8,8, + 8,10,1,1,3,15,60,240,240,60,15,3,8,6,6,10, + 1,1,255,255,0,0,255,255,8,8,8,10,1,1,192,240, + 60,15,15,60,240,192,8,12,12,8,0,0,60,102,247,103, + 14,12,16,0,16,56,56,16,12,13,26,12,0,255,15,128, + 56,224,96,32,70,176,205,144,153,144,153,144,153,176,219,160, + 76,64,96,48,56,224,15,128,13,12,24,13,0,0,6,0, + 7,0,7,0,15,0,11,128,27,128,17,192,63,192,49,192, + 32,224,96,224,241,248,12,12,24,13,0,0,255,192,56,224, + 56,112,56,112,56,224,63,192,56,224,56,112,56,112,56,112, + 56,224,255,192,11,12,24,13,1,0,15,160,56,224,112,96, + 112,32,224,32,224,0,224,0,224,32,112,32,112,64,56,192, + 15,0,13,12,24,14,0,0,255,128,56,224,56,112,56,112, + 56,56,56,56,56,56,56,56,56,112,56,112,56,224,255,128, + 11,12,24,12,0,0,255,224,56,96,56,96,57,32,59,0, + 63,0,59,0,57,32,56,32,56,96,56,96,255,224,11,12, + 24,12,0,0,255,224,56,96,56,96,57,32,59,0,63,0, + 59,0,57,0,56,0,56,0,56,0,254,0,13,12,24,14, + 1,0,15,160,56,224,112,96,112,32,224,32,224,0,227,248, + 224,224,112,224,112,224,57,224,15,32,14,12,24,15,0,0, + 254,252,56,112,56,112,56,112,56,112,63,240,56,112,56,112, + 56,112,56,112,56,112,254,252,7,12,12,7,0,0,254,56, + 56,56,56,56,56,56,56,56,56,254,10,12,24,11,0,0, + 31,192,7,0,7,0,7,0,7,0,7,0,103,0,247,0, + 231,0,135,0,206,0,124,0,14,12,24,13,0,0,254,248, + 56,96,56,192,57,128,59,0,63,128,63,128,59,192,57,224, + 56,240,56,120,254,252,11,12,24,12,0,0,254,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,32,56,32,56,96, + 56,96,255,224,16,12,24,16,0,0,252,63,60,60,46,60, + 46,92,46,92,39,92,39,156,39,156,35,156,35,28,33,28, + 249,63,14,12,24,14,0,0,240,124,56,16,60,16,62,16, + 47,16,39,144,35,208,33,240,32,240,32,112,32,48,248,16, + 12,12,24,14,1,0,15,0,57,192,112,224,112,224,224,112, + 224,112,224,112,224,112,112,224,112,224,57,192,15,0,12,12, + 24,13,0,0,255,192,56,224,56,112,56,112,56,112,56,224, + 63,192,56,0,56,0,56,0,56,0,254,0,12,15,30,14, + 1,253,15,0,57,192,112,224,112,224,224,112,224,112,224,112, + 230,112,105,96,121,224,57,192,15,128,1,208,1,240,0,224, + 13,12,24,14,0,0,255,192,56,224,56,112,56,112,56,224, + 63,192,57,128,57,192,56,224,56,232,56,248,252,112,9,12, + 24,11,1,0,62,128,67,128,193,128,192,128,248,128,126,0, + 63,0,143,128,129,128,193,128,225,0,190,0,11,12,24,12, + 0,0,255,224,206,96,142,32,142,32,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,63,128,14,12,24,14,0,0, + 254,124,56,16,56,16,56,16,56,16,56,16,56,16,56,16, + 56,16,28,32,30,96,7,128,13,12,24,13,255,0,254,120, + 56,48,60,32,28,32,28,64,14,64,14,128,15,128,7,128, + 7,0,3,0,3,0,15,12,24,16,0,0,251,222,113,140, + 49,136,57,200,57,216,59,208,26,208,30,240,28,224,12,96, + 12,96,12,96,12,12,24,12,0,0,249,240,112,96,56,64, + 28,128,31,0,15,0,15,0,15,128,19,192,33,192,96,224, + 249,240,13,12,24,12,255,0,254,248,56,96,28,64,28,128, + 14,128,15,0,7,0,7,0,7,0,7,0,7,0,31,192, + 9,12,24,11,1,0,255,128,195,128,135,0,135,0,14,0, + 28,0,28,0,56,128,112,128,113,128,227,128,255,128,4,14, + 14,6,1,254,240,192,192,192,192,192,192,192,192,192,192,192, + 192,240,7,12,12,10,1,0,192,192,96,96,48,48,24,24, + 12,12,6,6,4,14,14,7,1,254,240,48,48,48,48,48, + 48,48,48,48,48,48,48,240,8,7,7,10,1,5,24,24, + 60,102,102,195,195,8,2,2,8,0,254,255,255,4,3,3, + 6,0,9,192,224,48,9,8,16,10,0,0,126,0,231,0, + 199,0,31,0,103,0,231,0,239,0,119,128,11,12,24,11, + 255,0,248,0,56,0,56,0,56,0,59,128,61,192,56,224, + 56,224,56,224,56,224,61,192,43,128,8,8,8,9,0,0, + 62,115,231,224,224,227,118,60,11,12,24,11,0,0,7,128, + 3,128,3,128,3,128,59,128,119,128,227,128,227,128,227,128, + 227,128,119,128,58,224,9,8,16,10,0,0,62,0,119,0, + 227,128,255,128,224,0,225,128,115,0,62,0,9,12,24,7, + 255,0,15,0,27,128,59,0,56,0,254,0,56,0,56,0, + 56,0,56,0,56,0,56,0,254,0,9,12,24,10,0,253, + 1,128,63,128,119,0,227,128,227,128,247,0,124,0,96,0, + 127,0,255,128,195,128,255,0,11,12,24,11,255,0,240,0, + 112,0,112,0,112,0,119,128,121,192,121,192,113,192,113,192, + 113,192,113,192,251,224,5,12,12,6,0,0,96,240,96,0, + 240,112,112,112,112,112,112,248,6,15,15,6,254,253,24,60, + 24,0,124,28,28,28,28,28,28,28,220,216,112,11,12,24, + 11,0,0,240,0,112,0,112,0,112,0,119,192,115,128,119, + 0,126,0,127,0,115,128,113,192,251,224,5,12,12,6,0, + 0,240,112,112,112,112,112,112,112,112,112,112,248,15,8,16, + 16,0,0,247,56,123,220,115,156,115,156,115,156,115,156,115, + 156,251,190,11,8,16,11,255,0,247,128,121,192,113,192,113, + 192,113,192,113,192,113,192,251,224,10,8,16,11,0,0,30, + 0,115,128,225,192,225,192,225,192,225,192,115,128,30,0,10, + 11,22,11,255,253,247,0,123,128,113,192,113,192,113,192,113, + 192,123,128,119,0,112,0,112,0,248,0,10,11,22,10,255, + 253,62,128,115,128,227,128,227,128,227,128,227,128,115,128,63, + 128,3,128,3,128,7,192,9,8,16,9,0,0,247,0,123, + 128,115,0,112,0,112,0,112,0,112,0,248,0,7,8,8, + 8,0,0,122,198,226,252,126,142,198,188,6,11,11,7,0, + 0,16,16,48,252,112,112,112,112,116,124,56,11,8,16,11, + 255,0,243,192,113,192,113,192,113,192,113,192,113,192,123,192, + 62,224,10,8,16,10,0,0,251,192,113,128,115,0,59,0, + 58,0,30,0,28,0,12,0,15,8,16,15,0,0,251,222, + 113,140,57,200,59,216,30,240,30,240,12,96,12,96,9,8, + 16,10,0,0,251,128,113,0,62,0,28,0,28,0,62,0, + 71,0,239,128,10,11,22,10,255,253,251,192,113,128,57,128, + 57,0,31,0,14,0,14,0,6,0,52,0,116,0,56,0, + 7,8,8,9,0,0,254,204,156,56,48,114,230,254,4,14, + 14,6,1,254,48,96,96,96,96,96,192,96,96,96,96,96, + 96,48,2,12,12,10,4,0,192,192,192,192,192,192,192,192, + 192,192,192,192,4,14,14,6,0,254,192,96,96,96,96,96, + 48,96,96,96,96,96,96,192,8,3,3,10,1,3,114,255, + 78,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--20-140-100-100-P-113-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=19 x= 4 y=11 dx=21 dy= 0 ascent=19 len=42 + Font Bounding box w=24 h=32 x=-3 y=-8 + Calculated Min Values x=-3 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =19 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB14[5558] U8G_SECTION(".progmem.u8g_font_ncenB14") = { + 0,24,32,253,248,14,3,71,7,51,32,255,252,19,252,14, + 252,0,0,0,5,0,1,4,14,14,6,1,0,96,240,240, + 240,240,240,96,96,96,0,96,240,240,96,5,5,5,8,1, + 9,216,216,216,216,216,11,12,24,12,0,1,13,128,13,128, + 13,128,127,224,127,224,27,0,27,0,255,192,255,192,54,0, + 54,0,54,0,9,18,36,11,1,254,8,0,8,0,62,0, + 107,128,203,128,201,128,232,0,252,0,255,0,127,128,31,128, + 11,128,201,128,233,128,235,0,62,0,8,0,8,0,14,15, + 30,15,0,255,56,192,103,64,196,192,196,128,197,128,201,0, + 115,0,2,56,6,100,4,196,12,196,8,196,24,200,16,112, + 16,0,16,14,28,17,1,0,7,128,12,192,24,192,24,192, + 29,128,31,0,14,62,63,24,119,144,227,224,225,224,224,241, + 241,254,127,28,2,5,5,5,1,9,192,192,192,192,192,5, + 16,16,6,0,254,24,48,112,96,224,192,192,192,192,192,192, + 224,96,112,48,24,5,16,16,6,0,254,192,96,112,48,56, + 24,24,24,24,24,24,56,48,112,96,192,7,7,7,8,0, + 7,56,146,214,56,214,146,56,10,10,20,11,0,0,12,0, + 12,0,12,0,12,0,255,192,255,192,12,0,12,0,12,0, + 12,0,4,7,7,5,0,253,96,240,240,112,32,64,128,5, + 3,3,6,0,3,248,248,248,4,4,4,5,0,0,96,240, + 240,96,6,14,14,7,0,0,12,12,8,24,24,16,48,48, + 32,96,96,64,192,192,9,14,28,11,1,0,28,0,119,0, + 99,0,227,128,227,128,227,128,227,128,227,128,227,128,227,128, + 227,128,99,0,119,0,28,0,7,14,14,11,2,0,24,56, + 248,56,56,56,56,56,56,56,56,56,56,254,9,14,28,11, + 1,0,30,0,103,0,227,128,227,128,99,128,3,128,7,0, + 7,0,14,0,24,0,48,0,96,128,255,128,255,128,9,14, + 28,11,1,0,30,0,103,0,227,128,227,128,99,128,3,0, + 28,0,3,0,3,128,99,128,227,128,227,128,103,0,62,0, + 9,14,28,11,1,0,1,0,3,0,7,0,15,0,15,0, + 23,0,39,0,71,0,71,0,135,0,255,128,7,0,7,0, + 15,128,9,14,28,11,1,0,127,128,127,0,64,0,64,0, + 64,0,126,0,71,0,3,128,3,128,99,128,227,128,227,128, + 103,0,62,0,9,14,28,11,1,0,31,0,115,128,99,128, + 227,0,224,0,238,0,247,0,227,128,227,128,227,128,227,128, + 99,128,115,0,28,0,9,14,28,11,1,0,255,128,255,128, + 129,128,131,0,6,0,6,0,12,0,12,0,28,0,28,0, + 56,0,56,0,56,0,56,0,9,14,28,11,1,0,28,0, + 99,0,193,128,193,128,225,128,251,0,126,0,63,0,79,128, + 195,128,193,128,193,128,227,0,60,0,9,14,28,11,1,0, + 28,0,103,0,227,0,227,128,227,128,227,128,227,128,119,128, + 59,128,3,128,99,128,227,0,231,0,124,0,4,9,9,6, + 1,0,96,240,240,96,0,96,240,240,96,4,12,12,6,1, + 253,96,240,240,96,0,96,240,240,112,32,64,128,10,10,20, + 11,0,0,0,192,3,192,15,0,60,0,240,0,240,0,60, + 0,15,0,3,192,0,192,9,6,12,11,1,2,255,128,255, + 128,0,0,0,0,255,128,255,128,10,10,20,11,0,0,192, + 0,240,0,60,0,15,0,3,192,3,192,15,0,60,0,240, + 0,192,0,9,14,28,10,0,0,31,0,103,128,227,128,227, + 128,99,128,3,0,6,0,12,0,24,0,0,0,24,0,60, + 0,60,0,24,0,15,14,28,16,0,0,7,240,28,12,48, + 4,99,230,102,102,204,102,204,102,216,204,216,204,217,216,206, + 240,96,8,112,48,31,224,14,14,28,14,255,0,1,0,1, + 128,3,128,3,192,5,192,4,192,8,224,8,224,16,112,31, + 240,32,112,32,56,96,56,240,124,12,14,28,14,0,0,255, + 192,113,224,112,224,112,224,112,224,113,192,127,128,112,224,112, + 112,112,112,112,112,112,112,112,224,255,128,12,14,28,14,0, + 0,15,144,60,240,112,48,112,48,224,16,224,16,224,0,224, + 0,224,0,224,16,112,16,112,32,60,96,15,128,14,14,28, + 16,0,0,255,192,112,240,112,56,112,56,112,28,112,28,112, + 28,112,28,112,28,112,28,112,56,112,56,112,240,255,192,11, + 14,28,13,0,0,255,224,112,224,112,96,113,32,113,32,115, + 0,127,0,115,0,113,0,113,32,112,32,112,96,112,224,255, + 224,11,14,28,13,0,0,255,224,112,224,112,96,113,32,113, + 32,115,0,127,0,115,0,113,0,113,0,112,0,112,0,112, + 0,252,0,13,14,28,15,0,0,15,144,60,240,112,48,112, + 48,224,16,224,16,224,0,224,0,224,248,224,112,112,112,112, + 112,60,240,15,144,14,14,28,16,0,0,248,124,112,56,112, + 56,112,56,112,56,112,56,127,248,112,56,112,56,112,56,112, + 56,112,56,112,56,248,124,5,14,14,9,1,0,248,112,112, + 112,112,112,112,112,112,112,112,112,112,248,10,14,28,12,255, + 0,7,192,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,99,128,243,128,243,128,195,128,103,0,60,0,14,14,28, + 16,0,0,248,248,112,96,112,192,113,128,115,0,118,0,126, + 0,127,0,119,128,115,192,113,224,112,240,112,120,248,252,10, + 14,28,12,0,0,248,0,112,0,112,0,112,0,112,0,112, + 0,112,0,112,0,112,0,112,64,112,64,112,192,113,192,255, + 192,17,14,42,19,0,0,252,15,128,60,15,0,62,15,0, + 46,23,0,39,23,0,39,23,0,39,39,0,35,167,0,35, + 167,0,35,199,0,33,199,0,33,199,0,112,135,0,248,143, + 128,14,14,28,16,0,0,240,124,120,56,60,16,60,16,62, + 16,47,16,39,144,35,208,33,240,32,240,32,240,32,112,112, + 48,248,16,14,14,28,16,0,0,15,192,60,240,112,56,112, + 56,224,28,224,28,224,28,224,28,224,28,224,28,112,56,112, + 56,60,240,15,192,12,14,28,14,0,0,255,128,113,224,112, + 240,112,240,112,240,112,240,113,224,127,128,112,0,112,0,112, + 0,112,0,112,0,248,0,14,18,36,16,0,252,15,192,60, + 240,112,56,112,56,224,28,224,28,224,28,224,28,224,28,239, + 28,115,152,113,184,61,240,15,192,0,192,0,232,0,248,0, + 112,13,14,28,16,0,0,255,224,112,240,112,112,112,112,112, + 112,112,224,127,128,113,192,113,192,113,224,112,224,112,224,112, + 232,248,112,10,14,28,12,0,0,30,128,115,128,225,128,224, + 128,240,0,252,0,127,0,31,128,7,192,131,192,129,192,193, + 192,243,128,159,0,11,14,28,13,0,0,255,224,206,96,142, + 32,142,32,142,32,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,31,0,14,14,28,16,0,0,248,124,112, + 56,112,16,112,16,112,16,112,16,112,16,112,16,112,16,112, + 16,112,16,112,16,56,96,15,192,15,14,28,14,255,0,252, + 62,120,28,56,8,60,16,28,16,28,16,14,32,14,32,7, + 64,7,64,3,128,3,128,1,0,1,0,20,14,42,19,255, + 0,253,249,240,120,240,224,56,112,64,60,120,128,28,120,128, + 28,120,128,30,189,0,14,157,0,14,157,0,15,30,0,7, + 14,0,7,14,0,2,4,0,2,4,0,15,14,28,17,0, + 0,126,124,60,56,30,48,14,96,15,192,7,128,3,192,7, + 192,7,224,12,240,24,112,56,120,112,60,248,126,13,14,28, + 15,0,0,252,120,120,48,56,32,60,96,28,64,30,128,15, + 128,7,0,7,0,7,0,7,0,7,0,7,0,31,192,12, + 14,28,13,0,0,255,240,224,112,192,224,129,224,131,192,7, + 128,7,0,15,0,30,0,60,16,120,16,112,48,224,112,255, + 240,4,16,16,6,1,254,240,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,240,8,14,14,9,0,0,192,192,96, + 96,48,48,24,24,12,12,6,6,3,3,4,16,16,6,0, + 254,240,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 240,8,8,8,9,0,6,24,24,60,60,102,102,195,195,9, + 2,4,9,0,253,255,128,255,128,5,4,4,7,1,10,192, + 224,112,24,10,9,18,11,0,0,127,0,227,128,195,128,7, + 128,59,128,227,128,227,128,231,128,121,192,12,14,28,12,255, + 0,240,0,112,0,112,0,112,0,112,0,119,128,120,224,112, + 112,112,112,112,112,112,112,112,112,120,224,111,128,9,9,18, + 10,0,0,31,0,115,128,225,128,224,0,224,0,224,0,224, + 128,113,128,30,0,12,14,28,13,0,0,1,224,0,224,0, + 224,0,224,0,224,30,224,113,224,224,224,224,224,224,224,224, + 224,224,224,113,224,30,240,10,9,18,11,0,0,30,0,115, + 128,225,192,225,192,255,192,224,0,224,64,112,192,31,0,8, + 14,14,7,0,0,30,55,119,112,112,252,112,112,112,112,112, + 112,112,248,11,15,30,11,0,252,0,96,0,224,63,0,115, + 128,97,128,97,128,115,128,63,0,96,0,127,128,63,192,193, + 192,192,192,225,128,127,0,12,14,28,13,0,0,240,0,112, + 0,112,0,112,0,112,0,119,192,121,224,112,224,112,224,112, + 224,112,224,112,224,112,224,249,240,5,14,14,6,0,0,112, + 112,112,0,0,240,112,112,112,112,112,112,112,248,7,18,18, + 6,253,252,14,14,14,0,0,30,14,14,14,14,14,14,14, + 14,14,238,236,120,12,14,28,13,0,0,240,0,112,0,112, + 0,112,0,112,0,115,224,113,128,114,0,118,0,127,0,119, + 128,115,192,113,224,251,240,5,14,14,6,0,0,240,112,112, + 112,112,112,112,112,112,112,112,112,112,248,19,9,27,20,0, + 0,247,223,128,121,243,192,112,225,192,112,225,192,112,225,192, + 112,225,192,112,225,192,112,225,192,249,243,224,12,9,18,13, + 0,0,247,192,121,224,112,224,112,224,112,224,112,224,112,224, + 112,224,249,240,11,9,18,12,0,0,31,0,113,192,224,224, + 224,224,224,224,224,224,224,224,113,192,31,0,12,13,26,12, + 255,252,231,128,120,224,112,112,112,112,112,112,112,112,112,112, + 120,224,119,128,112,0,112,0,112,0,248,0,12,13,26,12, + 0,252,30,96,113,224,224,224,224,224,224,224,224,224,224,224, + 113,224,30,224,0,224,0,224,0,224,1,240,8,9,9,9, + 0,0,246,123,115,112,112,112,112,112,248,9,9,18,10,0, + 0,61,0,99,0,225,0,252,0,127,0,15,128,131,128,195, + 0,190,0,7,13,13,8,0,0,16,16,48,112,252,112,112, + 112,112,112,114,114,60,12,9,18,13,0,0,249,224,112,224, + 112,224,112,224,112,224,112,224,112,224,121,224,62,240,10,9, + 18,9,255,0,249,192,112,128,112,128,57,0,57,0,30,0, + 30,0,12,0,12,0,16,9,18,15,255,0,251,231,113,194, + 113,194,57,228,57,228,30,120,30,120,12,48,12,48,11,9, + 18,12,0,0,253,224,120,192,61,128,31,0,14,0,31,0, + 55,128,99,192,247,224,11,13,26,12,0,252,248,224,112,64, + 112,64,56,128,56,128,29,0,29,0,14,0,14,0,4,0, + 196,0,232,0,112,0,9,9,18,10,0,0,255,128,199,128, + 143,0,30,0,60,0,120,128,240,128,225,128,255,128,5,16, + 16,6,0,254,24,48,112,112,112,112,96,192,96,112,112,112, + 112,112,48,24,2,14,14,11,4,0,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,5,16,16,6,0,254,192,96, + 112,112,112,112,48,24,48,112,112,112,112,112,96,192,10,3, + 6,12,1,4,57,192,127,128,231,0,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,0,0,0,5,0, + 1,4,14,14,7,1,252,96,240,240,96,0,96,96,96,240, + 240,240,240,240,96,9,13,26,11,1,254,0,128,0,128,31, + 0,115,128,227,128,228,0,228,0,232,0,232,128,113,128,30, + 0,32,0,32,0,10,14,28,11,0,0,31,0,49,128,115, + 128,115,128,112,0,112,0,56,0,255,128,28,0,28,0,24, + 64,112,192,159,192,239,128,9,9,18,10,0,2,221,128,255, + 128,99,0,193,128,193,128,193,128,99,0,255,128,221,128,14, + 14,28,15,0,0,252,60,120,24,56,16,28,48,30,32,14, + 96,7,192,31,240,3,128,31,240,3,128,3,128,3,128,15, + 224,2,14,14,11,4,0,192,192,192,192,192,192,0,0,192, + 192,192,192,192,192,7,16,16,8,0,254,120,204,140,192,112, + 124,158,134,194,242,124,28,4,196,204,120,6,2,2,10,2, + 11,204,204,14,14,28,15,0,0,7,128,24,96,32,16,71, + 200,76,200,152,68,152,4,152,4,152,4,76,72,71,136,32, + 16,24,96,7,128,7,8,8,8,0,6,120,204,60,204,220, + 110,0,254,8,5,5,9,0,3,51,102,204,102,51,9,6, + 12,10,0,2,255,128,255,128,1,128,1,128,1,128,1,128, + 5,3,3,6,0,3,248,248,248,14,14,28,15,0,0,7, + 128,24,96,32,16,95,136,76,200,140,196,140,196,143,132,141, + 132,76,200,94,232,32,16,24,96,7,128,6,2,2,8,1, + 11,252,252,6,6,6,7,0,8,120,204,132,132,204,120,10, + 11,22,11,0,0,12,0,12,0,12,0,255,192,255,192,12, + 0,12,0,12,0,0,0,255,192,255,192,6,8,8,6,0, + 6,120,204,204,24,48,96,196,252,6,8,8,6,0,6,120, + 204,12,56,12,204,204,120,5,4,4,7,1,11,24,56,112, + 192,12,13,26,13,0,252,249,240,112,224,112,224,112,224,112, + 224,112,224,112,224,121,224,110,240,96,0,240,0,240,0,96, + 0,13,14,28,14,0,0,63,248,126,112,254,112,254,112,254, + 112,254,112,126,112,62,112,14,112,14,112,14,112,14,112,14, + 112,31,248,4,4,4,5,0,3,96,240,240,96,4,4,4, + 6,1,252,64,112,48,224,6,8,8,6,0,6,48,240,48, + 48,48,48,48,252,6,8,8,7,0,6,120,204,204,204,204, + 120,0,252,8,5,5,9,0,3,204,102,51,102,204,14,14, + 28,15,0,0,48,96,240,96,48,192,48,192,49,128,49,128, + 51,24,255,56,6,120,6,216,13,152,13,252,24,24,24,60, + 14,14,28,15,0,0,48,96,240,96,48,192,48,192,49,128, + 49,128,51,120,255,204,6,204,6,24,12,48,12,96,24,196, + 24,252,14,14,28,15,0,0,120,96,204,96,12,192,56,192, + 13,128,205,128,207,24,123,56,6,120,6,216,13,152,13,252, + 24,24,24,60,9,14,28,10,0,252,12,0,30,0,30,0, + 12,0,0,0,12,0,24,0,48,0,96,0,227,0,227,128, + 227,128,243,0,124,0,14,19,38,14,255,0,12,0,14,0, + 7,0,1,128,0,0,1,0,1,128,3,128,3,192,5,192, + 4,192,8,224,8,224,16,112,31,240,32,112,32,56,96,56, + 240,124,14,19,38,14,255,0,0,96,0,224,1,192,3,0, + 0,0,1,0,1,128,3,128,3,192,5,192,4,192,8,224, + 8,224,16,112,31,240,32,112,32,56,96,56,240,124,14,19, + 38,14,255,0,1,128,3,192,6,96,12,48,0,0,1,0, + 1,128,3,128,3,192,5,192,4,192,8,224,8,224,16,112, + 31,240,32,112,32,56,96,56,240,124,14,18,36,14,255,0, + 3,144,7,224,9,192,0,0,1,0,1,128,3,128,3,192, + 5,192,4,192,8,224,8,224,16,112,31,240,32,112,32,56, + 96,56,240,124,14,17,34,14,255,0,6,96,6,96,0,0, + 1,0,1,128,3,128,3,192,5,192,4,192,8,224,8,224, + 16,112,31,240,32,112,32,56,96,56,240,124,14,19,38,14, + 255,0,1,128,2,64,2,64,1,128,0,0,1,0,1,128, + 3,128,3,192,5,192,4,192,8,224,8,224,16,112,31,240, + 32,112,32,56,96,56,240,124,20,14,42,21,0,0,3,255, + 240,0,248,112,0,184,48,1,56,144,1,56,144,2,57,128, + 4,63,128,4,57,128,15,248,128,16,56,144,16,56,16,32, + 56,48,96,56,112,240,255,240,12,18,36,14,0,252,15,144, + 60,112,112,48,112,48,224,16,224,16,224,0,224,0,224,0, + 224,16,240,16,112,32,60,96,15,128,2,0,3,128,1,128, + 7,0,11,19,38,13,0,0,48,0,56,0,28,0,6,0, + 0,0,255,224,112,224,112,96,113,32,113,32,115,0,127,0, + 115,0,113,0,113,32,112,32,112,96,112,224,255,224,11,19, + 38,13,0,0,1,128,3,128,7,0,12,0,0,0,255,224, + 112,224,112,96,113,32,113,32,115,0,127,0,115,0,113,0, + 113,32,112,32,112,96,112,224,255,224,11,19,38,13,0,0, + 6,0,15,0,25,128,48,192,0,0,255,224,112,224,112,96, + 113,32,113,32,115,0,127,0,115,0,113,0,113,32,112,32, + 112,96,112,224,255,224,11,17,34,13,0,0,25,128,25,128, + 0,0,255,224,112,224,112,96,113,32,113,32,115,0,127,0, + 115,0,113,0,113,32,112,32,112,96,112,224,255,224,6,19, + 19,9,0,0,192,224,112,24,0,124,56,56,56,56,56,56, + 56,56,56,56,56,56,124,6,19,19,9,1,0,12,28,56, + 96,0,248,112,112,112,112,112,112,112,112,112,112,112,112,248, + 8,19,19,9,0,0,24,60,102,195,0,124,56,56,56,56, + 56,56,56,56,56,56,56,56,124,6,17,17,9,1,0,204, + 204,0,248,112,112,112,112,112,112,112,112,112,112,112,112,248, + 14,14,28,16,0,0,255,192,112,240,112,56,112,56,112,28, + 112,28,252,28,112,28,112,28,112,28,112,56,112,56,112,240, + 255,192,14,18,36,16,0,0,7,32,15,192,19,128,0,0, + 240,124,120,56,60,16,60,16,62,16,47,16,39,144,35,208, + 33,240,32,240,32,240,32,112,112,48,248,16,14,19,38,16, + 0,0,12,0,14,0,7,0,1,128,0,0,15,192,60,240, + 112,56,112,56,224,28,224,28,224,28,224,28,224,28,224,28, + 112,56,112,56,60,240,15,192,14,19,38,16,0,0,0,192, + 1,192,3,128,6,0,0,0,15,192,60,240,112,56,112,56, + 224,28,224,28,224,28,224,28,224,28,224,28,112,56,112,56, + 60,240,15,192,14,19,38,16,0,0,3,0,7,128,12,192, + 24,96,0,0,15,192,60,240,112,56,112,56,224,28,224,28, + 224,28,224,28,224,28,224,28,112,56,112,56,60,240,15,192, + 14,18,36,16,0,0,7,32,15,192,19,128,0,0,15,192, + 60,240,112,56,112,56,224,28,224,28,224,28,224,28,224,28, + 224,28,112,56,112,56,60,240,15,192,14,17,34,16,0,0, + 12,192,12,192,0,0,15,192,60,240,112,56,112,56,224,28, + 224,28,224,28,224,28,224,28,224,28,112,56,112,56,60,240, + 15,192,10,10,20,11,0,0,64,128,225,192,115,128,63,0, + 30,0,30,0,63,0,115,128,225,192,64,128,14,15,30,16, + 0,0,0,8,15,208,60,240,112,56,112,88,224,156,225,28, + 225,28,226,28,228,28,232,28,112,56,48,56,60,240,79,192, + 14,19,38,16,0,0,12,0,14,0,7,0,1,128,0,0, + 248,124,112,56,112,16,112,16,112,16,112,16,112,16,112,16, + 112,16,112,16,112,16,112,16,56,96,31,192,14,19,38,16, + 0,0,0,96,0,224,1,192,3,0,0,0,248,124,112,56, + 112,16,112,16,112,16,112,16,112,16,112,16,112,16,112,16, + 112,16,112,16,56,96,31,192,14,19,38,16,0,0,3,0, + 7,128,12,192,24,96,0,0,248,124,112,56,112,16,112,16, + 112,16,112,16,112,16,112,16,112,16,112,16,112,16,112,16, + 56,96,31,192,14,17,34,16,0,0,12,192,12,192,0,0, + 248,124,112,56,112,16,112,16,112,16,112,16,112,16,112,16, + 112,16,112,16,112,16,112,16,56,96,31,192,13,19,38,15, + 0,0,0,96,0,224,1,192,3,0,0,0,252,120,120,48, + 56,32,60,96,28,64,30,128,15,128,7,0,7,0,7,0, + 7,0,7,0,7,0,31,192,12,14,28,14,1,0,248,0, + 112,0,112,0,127,192,113,224,112,240,112,240,112,240,112,240, + 113,224,127,128,112,0,112,0,248,0,11,14,28,12,0,0, + 30,0,51,128,113,192,113,192,113,192,113,128,119,0,113,192, + 112,224,112,224,112,224,112,224,113,192,247,0,10,14,28,11, + 0,0,48,0,56,0,28,0,6,0,0,0,127,0,227,128, + 195,128,7,128,59,128,227,128,227,128,231,128,121,192,10,14, + 28,11,0,0,3,0,7,0,14,0,24,0,0,0,127,0, + 227,128,195,128,7,128,59,128,227,128,227,128,231,128,121,192, + 10,14,28,11,0,0,12,0,30,0,51,0,97,128,0,0, + 127,0,227,128,195,128,7,128,59,128,227,128,227,128,231,128, + 121,192,10,13,26,11,0,0,24,128,63,0,70,0,0,0, + 127,0,227,128,195,128,7,128,59,128,227,128,227,128,231,128, + 121,192,10,12,24,11,0,0,51,0,51,0,0,0,127,0, + 227,128,195,128,7,128,59,128,227,128,227,128,231,128,121,192, + 10,14,28,11,0,0,12,0,18,0,18,0,12,0,0,0, + 127,0,227,128,195,128,7,128,59,128,227,128,227,128,231,128, + 121,192,16,9,18,17,0,0,63,120,99,206,227,135,7,135, + 59,255,227,128,227,129,231,195,120,252,9,13,26,10,0,252, + 31,0,115,128,225,128,224,0,224,0,224,0,224,128,113,128, + 30,0,8,0,14,0,6,0,28,0,10,14,28,11,0,0, + 48,0,56,0,28,0,6,0,0,0,30,0,115,128,225,192, + 225,192,255,192,224,0,224,64,112,192,31,0,10,14,28,11, + 0,0,3,0,7,0,14,0,24,0,0,0,30,0,115,128, + 225,192,225,192,255,192,224,0,224,64,112,192,31,0,10,14, + 28,11,0,0,12,0,30,0,51,0,97,128,0,0,30,0, + 115,128,225,192,225,192,255,192,224,0,224,64,112,192,31,0, + 10,12,24,11,0,0,51,0,51,0,0,0,30,0,115,128, + 225,192,225,192,255,192,224,0,224,64,112,192,31,0,6,14, + 14,6,255,0,192,224,112,24,0,120,56,56,56,56,56,56, + 56,124,6,14,14,6,0,0,12,28,56,96,0,240,112,112, + 112,112,112,112,112,248,8,14,14,6,255,0,24,60,102,195, + 0,120,56,56,56,56,56,56,56,124,5,12,12,6,0,0, + 216,216,0,240,112,112,112,112,112,112,112,248,11,14,28,12, + 0,0,192,0,51,0,28,0,102,0,3,0,31,128,113,192, + 224,224,224,224,224,224,224,224,224,224,113,192,31,0,12,13, + 26,13,0,0,12,64,31,128,35,0,0,0,247,192,121,224, + 112,224,112,224,112,224,112,224,112,224,112,224,249,240,11,14, + 28,12,0,0,48,0,56,0,28,0,6,0,0,0,31,0, + 113,192,224,224,224,224,224,224,224,224,224,224,113,192,31,0, + 11,14,28,12,0,0,1,128,3,128,7,0,12,0,0,0, + 31,0,113,192,224,224,224,224,224,224,224,224,224,224,113,192, + 31,0,11,14,28,12,0,0,6,0,15,0,25,128,48,192, + 0,0,31,0,113,192,224,224,224,224,224,224,224,224,224,224, + 113,192,31,0,11,13,26,12,0,0,24,128,63,0,70,0, + 0,0,31,0,113,192,224,224,224,224,224,224,224,224,224,224, + 113,192,31,0,11,12,24,12,0,0,51,0,51,0,0,0, + 31,0,113,192,224,224,224,224,224,224,224,224,224,224,113,192, + 31,0,10,10,20,11,0,0,12,0,12,0,0,0,0,0, + 255,192,255,192,0,0,0,0,12,0,12,0,10,11,22,11, + 0,255,1,0,31,0,115,128,227,192,229,192,229,192,233,192, + 233,192,115,128,62,0,32,0,12,14,28,13,0,0,24,0, + 28,0,14,0,3,0,0,0,249,240,112,224,112,224,112,224, + 112,224,112,224,112,224,121,224,62,240,12,14,28,13,0,0, + 3,0,7,0,14,0,24,0,0,0,249,240,112,224,112,224, + 112,224,112,224,112,224,112,224,121,224,62,240,12,14,28,13, + 0,0,6,0,15,0,25,128,48,192,0,0,249,240,112,224, + 112,224,112,224,112,224,112,224,112,224,121,224,62,240,12,12, + 24,13,0,0,25,128,25,128,0,0,249,240,112,224,112,224, + 112,224,112,224,112,224,112,224,121,224,62,240,11,18,36,12, + 0,252,1,128,3,128,7,0,12,0,0,0,248,224,112,64, + 112,64,56,128,56,128,29,0,29,0,14,0,14,0,4,0, + 196,0,232,0,112,0,12,18,36,12,255,252,240,0,112,0, + 112,0,112,0,112,0,119,128,120,224,112,112,112,112,112,112, + 112,112,112,112,120,224,119,128,112,0,112,0,112,0,248,0, + 11,16,32,12,0,252,25,128,25,128,0,0,248,224,112,64, + 112,64,56,128,56,128,29,0,29,0,14,0,14,0,4,0, + 196,0,232,0,112,0}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--20-140-100-100-P-113-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=18 x= 4 y=10 dx=20 dy= 0 ascent=16 len=42 + Font Bounding box w=24 h=32 x=-3 y=-8 + Calculated Min Values x=-3 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB14r[2603] U8G_SECTION(".progmem.u8g_font_ncenB14r") = { + 0,24,32,253,248,14,3,71,7,51,32,127,252,16,252,14, + 252,0,0,0,5,0,1,4,14,14,6,1,0,96,240,240, + 240,240,240,96,96,96,0,96,240,240,96,5,5,5,8,1, + 9,216,216,216,216,216,11,12,24,12,0,1,13,128,13,128, + 13,128,127,224,127,224,27,0,27,0,255,192,255,192,54,0, + 54,0,54,0,9,18,36,11,1,254,8,0,8,0,62,0, + 107,128,203,128,201,128,232,0,252,0,255,0,127,128,31,128, + 11,128,201,128,233,128,235,0,62,0,8,0,8,0,14,15, + 30,15,0,255,56,192,103,64,196,192,196,128,197,128,201,0, + 115,0,2,56,6,100,4,196,12,196,8,196,24,200,16,112, + 16,0,16,14,28,17,1,0,7,128,12,192,24,192,24,192, + 29,128,31,0,14,62,63,24,119,144,227,224,225,224,224,241, + 241,254,127,28,2,5,5,5,1,9,192,192,192,192,192,5, + 16,16,6,0,254,24,48,112,96,224,192,192,192,192,192,192, + 224,96,112,48,24,5,16,16,6,0,254,192,96,112,48,56, + 24,24,24,24,24,24,56,48,112,96,192,7,7,7,8,0, + 7,56,146,214,56,214,146,56,10,10,20,11,0,0,12,0, + 12,0,12,0,12,0,255,192,255,192,12,0,12,0,12,0, + 12,0,4,7,7,5,0,253,96,240,240,112,32,64,128,5, + 3,3,6,0,3,248,248,248,4,4,4,5,0,0,96,240, + 240,96,6,14,14,7,0,0,12,12,8,24,24,16,48,48, + 32,96,96,64,192,192,9,14,28,11,1,0,28,0,119,0, + 99,0,227,128,227,128,227,128,227,128,227,128,227,128,227,128, + 227,128,99,0,119,0,28,0,7,14,14,11,2,0,24,56, + 248,56,56,56,56,56,56,56,56,56,56,254,9,14,28,11, + 1,0,30,0,103,0,227,128,227,128,99,128,3,128,7,0, + 7,0,14,0,24,0,48,0,96,128,255,128,255,128,9,14, + 28,11,1,0,30,0,103,0,227,128,227,128,99,128,3,0, + 28,0,3,0,3,128,99,128,227,128,227,128,103,0,62,0, + 9,14,28,11,1,0,1,0,3,0,7,0,15,0,15,0, + 23,0,39,0,71,0,71,0,135,0,255,128,7,0,7,0, + 15,128,9,14,28,11,1,0,127,128,127,0,64,0,64,0, + 64,0,126,0,71,0,3,128,3,128,99,128,227,128,227,128, + 103,0,62,0,9,14,28,11,1,0,31,0,115,128,99,128, + 227,0,224,0,238,0,247,0,227,128,227,128,227,128,227,128, + 99,128,115,0,28,0,9,14,28,11,1,0,255,128,255,128, + 129,128,131,0,6,0,6,0,12,0,12,0,28,0,28,0, + 56,0,56,0,56,0,56,0,9,14,28,11,1,0,28,0, + 99,0,193,128,193,128,225,128,251,0,126,0,63,0,79,128, + 195,128,193,128,193,128,227,0,60,0,9,14,28,11,1,0, + 28,0,103,0,227,0,227,128,227,128,227,128,227,128,119,128, + 59,128,3,128,99,128,227,0,231,0,124,0,4,9,9,6, + 1,0,96,240,240,96,0,96,240,240,96,4,12,12,6,1, + 253,96,240,240,96,0,96,240,240,112,32,64,128,10,10,20, + 11,0,0,0,192,3,192,15,0,60,0,240,0,240,0,60, + 0,15,0,3,192,0,192,9,6,12,11,1,2,255,128,255, + 128,0,0,0,0,255,128,255,128,10,10,20,11,0,0,192, + 0,240,0,60,0,15,0,3,192,3,192,15,0,60,0,240, + 0,192,0,9,14,28,10,0,0,31,0,103,128,227,128,227, + 128,99,128,3,0,6,0,12,0,24,0,0,0,24,0,60, + 0,60,0,24,0,15,14,28,16,0,0,7,240,28,12,48, + 4,99,230,102,102,204,102,204,102,216,204,216,204,217,216,206, + 240,96,8,112,48,31,224,14,14,28,14,255,0,1,0,1, + 128,3,128,3,192,5,192,4,192,8,224,8,224,16,112,31, + 240,32,112,32,56,96,56,240,124,12,14,28,14,0,0,255, + 192,113,224,112,224,112,224,112,224,113,192,127,128,112,224,112, + 112,112,112,112,112,112,112,112,224,255,128,12,14,28,14,0, + 0,15,144,60,240,112,48,112,48,224,16,224,16,224,0,224, + 0,224,0,224,16,112,16,112,32,60,96,15,128,14,14,28, + 16,0,0,255,192,112,240,112,56,112,56,112,28,112,28,112, + 28,112,28,112,28,112,28,112,56,112,56,112,240,255,192,11, + 14,28,13,0,0,255,224,112,224,112,96,113,32,113,32,115, + 0,127,0,115,0,113,0,113,32,112,32,112,96,112,224,255, + 224,11,14,28,13,0,0,255,224,112,224,112,96,113,32,113, + 32,115,0,127,0,115,0,113,0,113,0,112,0,112,0,112, + 0,252,0,13,14,28,15,0,0,15,144,60,240,112,48,112, + 48,224,16,224,16,224,0,224,0,224,248,224,112,112,112,112, + 112,60,240,15,144,14,14,28,16,0,0,248,124,112,56,112, + 56,112,56,112,56,112,56,127,248,112,56,112,56,112,56,112, + 56,112,56,112,56,248,124,5,14,14,9,1,0,248,112,112, + 112,112,112,112,112,112,112,112,112,112,248,10,14,28,12,255, + 0,7,192,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,99,128,243,128,243,128,195,128,103,0,60,0,14,14,28, + 16,0,0,248,248,112,96,112,192,113,128,115,0,118,0,126, + 0,127,0,119,128,115,192,113,224,112,240,112,120,248,252,10, + 14,28,12,0,0,248,0,112,0,112,0,112,0,112,0,112, + 0,112,0,112,0,112,0,112,64,112,64,112,192,113,192,255, + 192,17,14,42,19,0,0,252,15,128,60,15,0,62,15,0, + 46,23,0,39,23,0,39,23,0,39,39,0,35,167,0,35, + 167,0,35,199,0,33,199,0,33,199,0,112,135,0,248,143, + 128,14,14,28,16,0,0,240,124,120,56,60,16,60,16,62, + 16,47,16,39,144,35,208,33,240,32,240,32,240,32,112,112, + 48,248,16,14,14,28,16,0,0,15,192,60,240,112,56,112, + 56,224,28,224,28,224,28,224,28,224,28,224,28,112,56,112, + 56,60,240,15,192,12,14,28,14,0,0,255,128,113,224,112, + 240,112,240,112,240,112,240,113,224,127,128,112,0,112,0,112, + 0,112,0,112,0,248,0,14,18,36,16,0,252,15,192,60, + 240,112,56,112,56,224,28,224,28,224,28,224,28,224,28,239, + 28,115,152,113,184,61,240,15,192,0,192,0,232,0,248,0, + 112,13,14,28,16,0,0,255,224,112,240,112,112,112,112,112, + 112,112,224,127,128,113,192,113,192,113,224,112,224,112,224,112, + 232,248,112,10,14,28,12,0,0,30,128,115,128,225,128,224, + 128,240,0,252,0,127,0,31,128,7,192,131,192,129,192,193, + 192,243,128,159,0,11,14,28,13,0,0,255,224,206,96,142, + 32,142,32,142,32,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,31,0,14,14,28,16,0,0,248,124,112, + 56,112,16,112,16,112,16,112,16,112,16,112,16,112,16,112, + 16,112,16,112,16,56,96,15,192,15,14,28,14,255,0,252, + 62,120,28,56,8,60,16,28,16,28,16,14,32,14,32,7, + 64,7,64,3,128,3,128,1,0,1,0,20,14,42,19,255, + 0,253,249,240,120,240,224,56,112,64,60,120,128,28,120,128, + 28,120,128,30,189,0,14,157,0,14,157,0,15,30,0,7, + 14,0,7,14,0,2,4,0,2,4,0,15,14,28,17,0, + 0,126,124,60,56,30,48,14,96,15,192,7,128,3,192,7, + 192,7,224,12,240,24,112,56,120,112,60,248,126,13,14,28, + 15,0,0,252,120,120,48,56,32,60,96,28,64,30,128,15, + 128,7,0,7,0,7,0,7,0,7,0,7,0,31,192,12, + 14,28,13,0,0,255,240,224,112,192,224,129,224,131,192,7, + 128,7,0,15,0,30,0,60,16,120,16,112,48,224,112,255, + 240,4,16,16,6,1,254,240,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,240,8,14,14,9,0,0,192,192,96, + 96,48,48,24,24,12,12,6,6,3,3,4,16,16,6,0, + 254,240,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 240,8,8,8,9,0,6,24,24,60,60,102,102,195,195,9, + 2,4,9,0,253,255,128,255,128,5,4,4,7,1,10,192, + 224,112,24,10,9,18,11,0,0,127,0,227,128,195,128,7, + 128,59,128,227,128,227,128,231,128,121,192,12,14,28,12,255, + 0,240,0,112,0,112,0,112,0,112,0,119,128,120,224,112, + 112,112,112,112,112,112,112,112,112,120,224,111,128,9,9,18, + 10,0,0,31,0,115,128,225,128,224,0,224,0,224,0,224, + 128,113,128,30,0,12,14,28,13,0,0,1,224,0,224,0, + 224,0,224,0,224,30,224,113,224,224,224,224,224,224,224,224, + 224,224,224,113,224,30,240,10,9,18,11,0,0,30,0,115, + 128,225,192,225,192,255,192,224,0,224,64,112,192,31,0,8, + 14,14,7,0,0,30,55,119,112,112,252,112,112,112,112,112, + 112,112,248,11,15,30,11,0,252,0,96,0,224,63,0,115, + 128,97,128,97,128,115,128,63,0,96,0,127,128,63,192,193, + 192,192,192,225,128,127,0,12,14,28,13,0,0,240,0,112, + 0,112,0,112,0,112,0,119,192,121,224,112,224,112,224,112, + 224,112,224,112,224,112,224,249,240,5,14,14,6,0,0,112, + 112,112,0,0,240,112,112,112,112,112,112,112,248,7,18,18, + 6,253,252,14,14,14,0,0,30,14,14,14,14,14,14,14, + 14,14,238,236,120,12,14,28,13,0,0,240,0,112,0,112, + 0,112,0,112,0,115,224,113,128,114,0,118,0,127,0,119, + 128,115,192,113,224,251,240,5,14,14,6,0,0,240,112,112, + 112,112,112,112,112,112,112,112,112,112,248,19,9,27,20,0, + 0,247,223,128,121,243,192,112,225,192,112,225,192,112,225,192, + 112,225,192,112,225,192,112,225,192,249,243,224,12,9,18,13, + 0,0,247,192,121,224,112,224,112,224,112,224,112,224,112,224, + 112,224,249,240,11,9,18,12,0,0,31,0,113,192,224,224, + 224,224,224,224,224,224,224,224,113,192,31,0,12,13,26,12, + 255,252,231,128,120,224,112,112,112,112,112,112,112,112,112,112, + 120,224,119,128,112,0,112,0,112,0,248,0,12,13,26,12, + 0,252,30,96,113,224,224,224,224,224,224,224,224,224,224,224, + 113,224,30,224,0,224,0,224,0,224,1,240,8,9,9,9, + 0,0,246,123,115,112,112,112,112,112,248,9,9,18,10,0, + 0,61,0,99,0,225,0,252,0,127,0,15,128,131,128,195, + 0,190,0,7,13,13,8,0,0,16,16,48,112,252,112,112, + 112,112,112,114,114,60,12,9,18,13,0,0,249,224,112,224, + 112,224,112,224,112,224,112,224,112,224,121,224,62,240,10,9, + 18,9,255,0,249,192,112,128,112,128,57,0,57,0,30,0, + 30,0,12,0,12,0,16,9,18,15,255,0,251,231,113,194, + 113,194,57,228,57,228,30,120,30,120,12,48,12,48,11,9, + 18,12,0,0,253,224,120,192,61,128,31,0,14,0,31,0, + 55,128,99,192,247,224,11,13,26,12,0,252,248,224,112,64, + 112,64,56,128,56,128,29,0,29,0,14,0,14,0,4,0, + 196,0,232,0,112,0,9,9,18,10,0,0,255,128,199,128, + 143,0,30,0,60,0,120,128,240,128,225,128,255,128,5,16, + 16,6,0,254,24,48,112,112,112,112,96,192,96,112,112,112, + 112,112,48,24,2,14,14,11,4,0,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,5,16,16,6,0,254,192,96, + 112,112,112,112,48,24,48,112,112,112,112,112,96,192,10,3, + 6,12,1,4,57,192,127,128,231,0,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--25-180-100-100-P-149-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=26 h=24 x= 6 y=15 dx=26 dy= 0 ascent=24 len=72 + Font Bounding box w=33 h=40 x=-4 y=-10 + Calculated Min Values x=-3 y=-5 dx= 0 dy= 0 + Pure Font ascent =18 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =24 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB18[8114] U8G_SECTION(".progmem.u8g_font_ncenB18") = { + 0,33,40,252,246,18,4,68,10,106,32,255,251,24,251,18, + 251,0,0,0,7,0,1,5,18,18,7,1,0,112,248,248, + 248,112,112,112,112,112,112,32,32,0,0,112,248,248,112,6, + 6,6,8,1,12,204,204,204,204,204,136,12,18,36,14,1, + 0,12,192,12,192,12,192,12,192,12,192,127,240,127,240,25, + 128,25,128,25,128,25,128,255,224,255,224,51,0,51,0,51, + 0,51,0,51,0,12,23,46,14,1,253,4,0,4,0,31, + 192,116,96,100,240,228,240,228,240,244,96,252,0,255,0,127, + 192,31,224,7,240,5,240,100,240,244,112,244,112,244,96,100, + 224,63,128,4,0,4,0,4,0,19,18,54,21,1,0,30, + 14,0,123,54,0,113,204,0,241,12,0,225,24,0,226,24, + 0,226,48,0,100,48,0,56,96,0,0,99,192,0,207,96, + 0,206,32,1,158,32,1,156,32,3,28,64,3,28,64,6, + 12,128,6,7,0,20,18,54,22,1,0,1,240,0,7,56, + 0,14,24,0,14,24,0,14,24,0,15,48,0,15,224,0, + 7,192,0,15,192,0,57,227,240,113,241,192,240,241,128,240, + 121,0,240,127,0,240,62,16,120,31,16,124,63,224,31,199, + 192,2,6,6,6,2,12,192,192,192,192,192,192,6,21,21, + 8,1,253,4,12,24,48,48,96,96,224,224,224,224,224,224, + 224,96,96,48,48,24,12,4,6,21,21,8,1,253,128,192, + 96,48,48,24,24,28,28,28,28,28,28,28,24,24,48,48, + 96,192,128,9,10,20,11,1,8,28,0,28,0,201,128,235, + 128,62,0,62,0,235,128,201,128,28,0,28,0,12,12,24, + 14,1,1,6,0,6,0,6,0,6,0,6,0,255,240,255, + 240,6,0,6,0,6,0,6,0,6,0,5,8,8,7,1, + 252,112,248,248,120,48,32,64,128,6,3,3,8,1,5,252, + 252,252,5,4,4,7,1,0,112,248,248,112,7,18,18,9, + 1,0,6,6,6,12,12,12,24,24,24,48,48,48,96,96, + 96,192,192,192,12,18,36,14,1,0,15,0,57,192,112,224, + 112,224,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,112,224,112,224,57,192,15,0,10,18, + 36,14,2,0,30,0,254,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,63,0,255,192,11,18,36,14,1,0,31,0, + 99,192,225,224,241,224,241,224,241,224,97,224,1,192,3,192, + 3,128,7,0,14,0,24,32,48,32,112,96,255,224,255,224, + 255,224,12,18,36,14,1,0,15,128,49,224,112,224,120,240, + 120,240,120,240,48,224,1,192,15,0,1,192,0,224,96,240, + 240,240,240,240,240,240,224,224,97,224,31,128,12,18,36,14, + 1,0,0,192,1,192,3,192,7,192,7,192,15,192,27,192, + 19,192,51,192,99,192,99,192,195,192,255,240,255,240,3,192, + 3,192,3,192,15,240,12,18,36,14,1,0,127,240,127,224, + 127,192,64,0,64,0,64,0,95,0,113,192,96,224,0,240, + 0,240,0,240,96,240,240,240,240,240,240,224,97,192,63,0, + 12,18,36,14,1,0,15,128,56,192,113,224,113,224,241,224, + 240,192,240,0,247,128,249,224,240,224,240,240,240,240,240,240, + 240,240,240,240,112,224,121,224,31,128,12,18,36,14,1,0, + 255,240,255,240,255,224,192,96,128,192,129,192,3,128,3,128, + 7,0,7,0,15,0,15,0,30,0,30,0,30,0,30,0, + 30,0,12,0,12,18,36,14,1,0,15,0,57,192,112,224, + 112,224,112,224,120,224,124,192,63,128,31,128,63,192,119,224, + 225,240,224,240,224,112,224,112,224,96,112,192,31,128,12,18, + 36,14,1,0,31,128,121,224,112,224,240,240,240,240,240,240, + 240,240,240,240,112,240,121,240,30,240,0,240,48,240,120,240, + 120,224,120,224,49,192,31,0,5,12,12,7,1,0,112,248, + 248,112,0,0,0,0,112,248,248,112,5,16,16,7,1,252, + 112,248,248,112,0,0,0,0,112,248,248,120,48,32,64,128, + 12,12,24,14,1,1,0,48,0,240,3,192,15,0,60,0, + 240,0,240,0,60,0,15,0,3,192,0,240,0,48,12,6, + 12,14,1,4,255,240,255,240,0,0,0,0,255,240,255,240, + 12,12,24,14,1,1,192,0,240,0,60,0,15,0,3,192, + 0,240,0,240,3,192,15,0,60,0,240,0,192,0,11,18, + 36,13,1,0,63,0,99,192,241,224,241,224,97,224,1,224, + 1,192,3,128,7,0,12,0,24,0,24,0,0,0,0,0, + 28,0,62,0,62,0,28,0,19,18,54,20,1,0,1,252, + 0,15,6,0,12,1,128,48,0,192,48,220,192,99,188,96, + 103,28,96,199,28,96,206,28,96,206,56,96,206,56,64,206, + 56,192,206,121,128,103,191,0,96,0,0,56,1,0,28,7, + 0,7,252,0,19,18,54,19,0,0,0,96,0,0,96,0, + 0,240,0,0,240,0,1,120,0,1,120,0,3,60,0,2, + 60,0,2,60,0,6,30,0,4,30,0,7,254,0,12,15, + 0,8,15,0,8,15,0,24,7,128,56,7,128,254,31,224, + 17,18,54,19,1,0,255,248,0,60,62,0,60,31,0,60, + 31,0,60,31,0,60,31,0,60,30,0,60,60,0,63,248, + 0,60,30,0,60,15,0,60,15,128,60,15,128,60,15,128, + 60,15,128,60,15,128,60,31,0,255,252,0,17,18,54,19, + 1,0,3,249,128,15,15,128,60,3,128,60,1,128,120,1, + 128,120,0,128,248,0,128,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,120,0,128,120,0,128,60,1,0,60, + 1,0,15,6,0,3,248,0,18,18,54,20,1,0,255,240, + 0,60,60,0,60,15,0,60,15,0,60,7,128,60,7,128, + 60,7,192,60,7,192,60,7,192,60,7,192,60,7,192,60, + 7,192,60,7,128,60,7,128,60,15,0,60,15,0,60,60, + 0,255,240,0,15,18,36,18,1,0,255,254,60,30,60,6, + 60,2,60,2,60,34,60,32,60,96,63,224,60,96,60,32, + 60,32,60,2,60,2,60,2,60,6,60,30,255,254,15,18, + 36,17,1,0,255,254,60,30,60,6,60,2,60,2,60,34, + 60,32,60,96,63,224,60,96,60,32,60,32,60,0,60,0, + 60,0,60,0,60,0,255,0,18,18,54,20,1,0,3,249, + 128,15,15,128,60,3,128,60,1,128,120,1,128,120,0,128, + 248,0,128,248,0,0,248,0,0,248,0,0,248,15,192,248, + 7,128,120,7,128,120,7,128,60,7,128,60,7,128,15,13, + 128,3,248,128,19,18,54,21,1,0,255,31,224,60,7,128, + 60,7,128,60,7,128,60,7,128,60,7,128,60,7,128,60, + 7,128,63,255,128,60,7,128,60,7,128,60,7,128,60,7, + 128,60,7,128,60,7,128,60,7,128,60,7,128,255,31,224, + 8,18,18,10,1,0,255,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,255,14,18,36,16,0,0,3,252, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,96,240,240,240,240,240,224,240,192,224,97,224, + 63,128,20,18,54,21,1,0,255,15,192,60,3,0,60,6, + 0,60,12,0,60,24,0,60,48,0,60,96,0,60,224,0, + 61,240,0,63,248,0,62,248,0,60,124,0,60,62,0,60, + 31,0,60,31,0,60,15,128,60,7,192,255,15,240,15,18, + 36,17,1,0,255,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,2,60,2, + 60,2,60,6,60,30,255,254,22,18,54,24,1,0,252,1, + 252,60,1,240,62,3,240,62,2,240,46,2,240,47,6,240, + 39,4,240,39,132,240,39,140,240,35,136,240,35,200,240,35, + 216,240,33,208,240,33,240,240,32,224,240,32,224,240,112,96, + 240,248,67,252,20,18,54,22,1,0,252,7,240,62,1,192, + 31,0,128,31,128,128,31,192,128,23,224,128,19,240,128,17, + 240,128,16,248,128,16,124,128,16,126,128,16,63,128,16,31, + 128,16,15,128,16,7,128,16,3,128,56,1,128,254,0,128, + 19,18,54,21,1,0,3,248,0,15,30,0,60,7,128,60, + 7,128,120,3,192,120,3,192,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,248,3,224,120,3,192,120,3,192, + 60,7,128,60,7,128,15,30,0,3,248,0,17,18,54,18, + 1,0,255,252,0,60,31,0,60,15,0,60,15,128,60,15, + 128,60,15,128,60,15,128,60,15,0,60,31,0,63,248,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,255,128,0,19,23,69,21,1,251,3,248, + 0,15,30,0,60,7,128,60,7,128,120,3,192,120,3,192, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,251, + 227,224,126,115,192,124,51,192,60,51,128,60,27,128,15,30, + 0,3,254,0,0,14,0,0,15,32,0,7,192,0,7,192, + 0,3,128,19,18,54,21,1,0,255,248,0,60,62,0,60, + 31,0,60,31,0,60,31,0,60,31,0,60,30,0,60,60, + 0,63,224,0,60,120,0,60,60,0,60,60,0,60,62,0, + 60,30,0,60,31,32,60,15,32,60,15,192,255,135,128,14, + 18,36,16,1,0,15,200,56,120,96,24,224,24,224,8,240, + 8,254,0,255,192,127,240,63,248,15,252,1,252,128,60,128, + 28,192,28,192,24,240,112,159,192,16,18,36,18,1,0,255, + 255,227,199,195,195,131,193,131,193,131,193,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,15,240,19,18,54,21,1,0,255,15,224,60,3,128,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,2,0,30,2,0,31,140,0,7,248,0,19, + 18,54,19,0,0,255,15,224,60,3,128,60,3,0,30,2, + 0,30,2,0,30,6,0,15,4,0,15,4,0,15,12,0, + 7,136,0,7,136,0,7,152,0,3,208,0,3,208,0,1, + 224,0,1,224,0,0,192,0,0,192,0,26,18,72,26,0, + 0,255,127,159,192,60,30,7,0,60,30,6,0,30,15,4, + 0,30,15,4,0,30,15,12,0,15,31,136,0,15,23,136, + 0,15,23,152,0,7,179,208,0,7,163,208,0,7,163,240, + 0,3,225,224,0,3,193,224,0,3,193,224,0,1,192,192, + 0,1,128,192,0,1,128,192,0,20,18,54,20,0,0,255, + 135,224,62,1,128,31,3,0,31,134,0,15,140,0,7,216, + 0,3,240,0,3,224,0,1,240,0,0,248,0,1,248,0, + 3,124,0,6,62,0,4,31,0,12,31,0,24,15,128,48, + 7,192,252,31,240,18,18,54,18,0,0,255,15,192,60,3, + 0,30,2,0,30,6,0,15,4,0,15,12,0,7,136,0, + 7,152,0,3,208,0,3,240,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,7,248, + 0,15,18,36,17,1,0,127,254,112,62,96,124,64,120,64, + 248,0,240,1,224,3,224,3,192,7,128,15,128,15,0,30, + 0,62,2,60,2,120,6,248,14,255,254,6,21,21,8,1, + 253,252,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,252,10,18,36,12,1,0,192,0,224,0, + 224,0,112,0,112,0,56,0,56,0,28,0,28,0,14,0, + 14,0,7,0,7,0,3,128,3,128,1,192,1,192,0,192, + 6,21,21,8,1,253,252,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,252,10,10,20,15,2, + 8,12,0,12,0,30,0,30,0,51,0,51,0,97,128,97, + 128,192,192,192,192,12,2,4,12,0,252,255,240,255,240,5, + 5,5,7,1,13,224,224,112,48,24,14,12,24,15,0,0, + 127,128,241,224,240,240,96,240,1,240,14,240,120,240,240,240, + 240,240,240,240,249,252,126,56,16,18,36,16,255,0,252,0, + 60,0,60,0,60,0,60,0,60,0,61,240,63,28,62,30, + 60,14,60,15,60,15,60,15,60,15,60,14,60,30,62,28, + 39,240,13,12,24,14,0,0,15,240,56,120,120,120,112,48, + 240,0,240,0,240,0,240,0,120,8,120,8,60,48,31,224, + 16,18,36,17,0,0,0,252,0,60,0,60,0,60,0,60, + 0,60,15,188,56,252,120,124,112,60,240,60,240,60,240,60, + 240,60,112,60,120,124,56,252,15,191,14,12,24,15,0,0, + 15,192,56,112,120,120,112,56,240,60,255,252,240,0,240,0, + 120,8,120,8,60,48,15,224,12,18,36,10,0,0,7,224, + 28,240,28,240,60,96,60,0,60,0,255,128,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 255,0,13,18,36,15,1,251,0,56,31,248,121,224,240,240, + 240,240,240,240,240,240,121,224,63,128,96,0,224,0,255,192, + 127,240,127,248,96,56,192,24,224,48,127,224,17,18,54,18, + 0,0,252,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,248,0,61,252,0,62,62,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,254,63,128,8,18,18,9,0,0,24,60, + 60,24,0,0,252,60,60,60,60,60,60,60,60,60,60,255, + 8,23,23,7,253,251,6,15,15,6,0,0,63,15,15,15, + 15,15,15,15,15,15,15,15,15,15,206,206,120,17,18,54, + 17,0,0,252,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,254,0,60,56,0,60,48,0,60,96, + 0,60,192,0,63,192,0,63,224,0,60,240,0,60,120,0, + 60,60,0,60,30,0,255,127,128,8,18,18,9,0,0,252, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 255,24,12,36,25,0,0,252,240,240,61,249,248,62,126,124, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,60,254,126,127,17,12,36,18,0, + 0,252,248,0,61,252,0,62,62,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,254,63,128,14,12,24,15,0,0,15,192,56,112,120, + 120,112,56,240,60,240,60,240,60,240,60,112,56,120,120,56, + 112,15,192,16,17,34,16,255,251,253,240,63,28,60,30,60, + 14,60,15,60,15,60,15,60,15,60,14,62,30,63,28,61, + 240,60,0,60,0,60,0,60,0,255,0,16,17,34,16,0, + 251,15,132,60,236,120,60,112,60,240,60,240,60,240,60,240, + 60,112,60,120,124,56,252,15,188,0,60,0,60,0,60,0, + 60,0,255,12,12,24,12,0,0,252,224,61,240,62,240,60, + 96,60,0,60,0,60,0,60,0,60,0,60,0,60,0,255, + 0,10,12,24,11,0,0,62,128,99,128,193,128,224,128,252, + 0,255,128,127,192,15,192,129,192,192,192,225,128,191,0,10, + 17,34,10,0,0,4,0,12,0,12,0,28,0,60,0,255, + 128,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 64,60,64,31,128,15,0,17,12,36,18,0,0,254,126,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,62,62,0,31,222,0,15,159, + 128,16,12,24,15,255,0,255,31,60,4,30,12,30,8,15, + 24,15,16,7,176,7,160,3,224,3,192,1,192,1,128,23, + 12,36,22,255,0,255,63,62,60,30,8,60,30,8,30,63, + 24,30,47,16,30,47,16,15,103,176,15,71,160,7,195,224, + 7,131,192,3,129,192,3,1,128,17,12,36,16,255,0,255, + 31,0,62,12,0,31,24,0,15,176,0,7,224,0,3,192, + 0,1,224,0,3,240,0,6,248,0,12,124,0,24,62,0, + 124,127,128,16,17,34,15,255,251,254,63,60,12,30,8,30, + 24,15,16,15,48,7,160,7,224,3,192,3,192,1,192,1, + 128,1,128,97,0,243,0,254,0,120,0,11,12,24,12,0, + 0,255,224,225,224,195,224,135,192,143,128,15,0,30,0,62, + 32,124,32,248,96,240,224,255,224,6,21,21,8,1,253,28, + 48,112,112,112,112,112,112,112,96,192,96,112,112,112,112,112, + 112,112,48,28,3,18,18,15,6,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,6,21,21,8, + 1,253,224,48,56,56,56,56,56,56,56,24,12,24,56,56, + 56,56,56,56,56,48,224,12,5,10,15,1,4,56,32,126, + 112,255,240,231,224,65,192,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,7,0,1,5,18, + 18,7,1,251,112,248,248,112,0,0,32,32,112,112,112,112, + 112,112,248,248,248,112,12,15,30,14,1,255,0,32,0,64, + 15,192,56,240,121,240,113,96,242,0,242,0,244,0,244,0, + 120,16,120,16,60,96,47,192,64,0,14,18,36,15,0,0, + 3,224,15,48,14,120,30,120,30,48,30,0,30,0,30,0, + 127,224,15,0,15,0,15,0,7,0,7,4,126,12,207,252, + 207,248,113,240,12,12,24,14,1,2,207,48,255,240,127,224, + 112,224,224,112,224,112,224,112,224,112,112,224,127,224,255,240, + 207,48,19,18,54,19,0,0,255,143,224,62,3,0,62,3, + 0,31,6,0,31,6,0,15,140,0,15,140,0,7,216,0, + 7,248,0,31,254,0,1,224,0,1,224,0,31,254,0,1, + 224,0,1,224,0,1,224,0,3,240,0,15,252,0,3,18, + 18,14,6,0,224,224,224,224,224,224,224,0,0,0,224,224, + 224,224,224,224,224,224,11,20,40,13,1,254,31,0,35,128, + 99,128,99,0,120,0,62,0,63,128,71,192,193,224,224,224, + 240,96,124,96,63,64,15,128,3,128,1,128,48,128,112,128, + 113,0,62,0,10,4,8,12,1,14,97,128,243,192,243,192, + 97,128,19,18,54,21,1,0,3,248,0,15,254,0,60,7, + 128,48,1,128,97,248,192,103,24,192,198,8,96,206,0,96, + 206,0,96,206,0,96,206,0,96,199,4,96,103,136,192,97, + 240,192,48,1,128,60,7,128,15,254,0,3,248,0,8,10, + 10,10,1,8,120,206,6,126,198,206,119,0,0,255,11,7, + 14,13,1,3,28,224,57,192,115,128,231,0,115,128,57,192, + 28,224,11,6,12,13,1,4,255,224,255,224,0,96,0,96, + 0,96,0,96,6,3,3,8,1,5,252,252,252,19,18,54, + 21,1,0,3,248,0,15,254,0,60,7,128,48,1,128,103, + 240,192,99,24,192,195,24,96,195,24,96,195,240,96,195,96, + 96,195,48,96,195,48,96,99,24,192,103,156,192,48,1,128, + 60,7,128,15,254,0,3,248,0,8,2,2,10,1,15,255, + 255,8,7,7,9,0,11,60,102,195,195,195,102,60,12,11, + 22,14,1,1,6,0,6,0,6,0,255,240,255,240,6,0, + 6,0,6,0,0,0,255,240,255,240,7,11,11,8,0,7, + 124,206,198,198,14,12,24,48,98,254,254,7,11,11,8,0, + 7,124,206,198,6,12,60,14,6,198,206,124,5,5,5,7, + 1,14,24,56,112,96,192,17,17,51,18,0,251,254,63,128, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,62,62,0,63,222,0,39,159, + 128,48,0,0,48,0,0,120,0,0,120,0,0,48,0,0, + 16,18,36,18,1,0,31,255,127,156,127,156,255,156,255,156, + 255,156,127,156,127,156,31,156,3,156,3,156,3,156,3,156, + 3,156,3,156,3,156,3,156,15,255,3,4,4,7,2,5, + 224,224,224,224,5,6,6,7,1,251,16,32,112,56,24,240, + 6,11,11,8,0,7,48,240,48,48,48,48,48,48,48,48, + 252,9,10,20,11,1,8,28,0,99,0,227,128,227,128,227, + 128,99,0,28,0,0,0,0,0,255,128,11,7,14,13,1, + 3,231,0,115,128,57,192,28,224,57,192,115,128,231,0,18, + 18,54,21,1,0,48,6,0,240,6,0,48,12,0,48,24, + 0,48,24,0,48,48,0,48,96,0,48,99,0,48,199,0, + 49,135,0,253,143,0,3,27,0,6,19,0,6,51,0,12, + 99,0,24,127,192,24,3,0,48,7,128,18,18,54,21,1, + 0,48,6,0,240,6,0,48,12,0,48,24,0,48,24,0, + 48,48,0,48,96,0,48,111,128,48,201,192,49,152,192,253, + 152,192,3,1,192,6,1,128,6,3,0,12,6,0,24,12, + 64,24,31,192,48,31,192,19,18,54,21,0,0,124,3,0, + 206,3,0,198,6,0,6,12,0,12,12,0,56,24,0,12, + 48,0,6,49,128,198,99,128,206,195,128,124,197,128,1,141, + 128,3,25,128,3,25,128,6,49,128,12,63,224,12,1,128, + 24,3,192,11,18,36,13,1,251,7,0,15,128,15,128,7, + 0,0,0,0,0,3,0,3,0,6,0,28,0,56,0,112, + 0,240,0,240,192,241,224,241,224,120,192,31,128,19,24,72, + 19,0,0,6,0,0,7,0,0,3,128,0,1,192,0,0, + 96,0,0,0,0,0,96,0,0,96,0,0,240,0,0,240, + 0,1,120,0,1,120,0,3,60,0,2,60,0,2,60,0, + 6,30,0,4,30,0,7,254,0,12,15,0,8,15,0,8, + 15,0,24,7,128,56,7,128,254,31,224,19,24,72,19,0, + 0,0,6,0,0,14,0,0,28,0,0,48,0,0,96,0, + 0,0,0,0,96,0,0,96,0,0,240,0,0,240,0,1, + 120,0,1,120,0,3,60,0,2,60,0,2,60,0,6,30, + 0,4,30,0,7,254,0,12,15,0,8,15,0,8,15,0, + 24,7,128,56,7,128,254,31,224,19,23,69,19,0,0,0, + 96,0,0,240,0,1,152,0,3,12,0,0,0,0,0,96, + 0,0,96,0,0,240,0,0,240,0,1,120,0,1,120,0, + 3,60,0,2,60,0,2,60,0,6,30,0,4,30,0,7, + 254,0,12,15,0,8,15,0,8,15,0,24,7,128,56,7, + 128,254,31,224,19,22,66,19,0,0,0,226,0,1,252,0, + 2,56,0,0,0,0,0,96,0,0,96,0,0,240,0,0, + 240,0,1,120,0,1,120,0,3,60,0,2,60,0,2,60, + 0,6,30,0,4,30,0,7,254,0,12,15,0,8,15,0, + 8,15,0,24,7,128,56,7,128,254,31,224,19,23,69,19, + 0,0,3,156,0,3,156,0,3,156,0,0,0,0,0,0, + 0,0,96,0,0,96,0,0,240,0,0,240,0,1,120,0, + 1,120,0,3,60,0,2,60,0,2,60,0,6,30,0,4, + 30,0,7,254,0,12,15,0,8,15,0,8,15,0,24,7, + 128,56,7,128,254,31,224,19,24,72,19,0,0,0,240,0, + 1,152,0,1,8,0,1,152,0,0,240,0,0,0,0,0, + 96,0,0,96,0,0,240,0,0,240,0,1,120,0,1,120, + 0,3,60,0,2,60,0,2,60,0,6,30,0,4,30,0, + 7,254,0,12,15,0,8,15,0,8,15,0,24,7,128,56, + 7,128,254,31,224,25,18,72,26,0,0,1,255,255,128,0, + 111,3,128,0,111,1,128,0,207,0,128,0,207,0,128,1, + 143,8,128,1,143,8,0,3,15,24,0,3,15,248,0,6, + 15,24,0,7,255,8,0,12,15,8,0,12,15,0,128,24, + 15,0,128,24,15,0,128,48,15,1,128,112,15,3,128,252, + 63,255,128,17,23,69,19,1,251,3,249,128,15,15,128,60, + 3,128,60,1,128,120,1,128,120,0,128,248,0,128,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,120,0,128, + 120,0,128,60,1,0,60,1,0,15,6,0,3,248,0,0, + 128,0,1,192,0,0,224,0,0,96,0,3,192,0,15,24, + 48,18,1,0,12,0,14,0,7,0,1,128,0,192,0,0, + 255,254,60,30,60,6,60,2,60,2,60,34,60,32,60,96, + 63,224,60,96,60,32,60,32,60,2,60,2,60,2,60,6, + 60,30,255,254,15,24,48,18,1,0,0,24,0,56,0,112, + 0,192,1,128,0,0,255,254,60,30,60,6,60,2,60,2, + 60,34,60,32,60,96,63,224,60,96,60,32,60,32,60,2, + 60,2,60,2,60,6,60,30,255,254,15,23,46,18,1,0, + 1,128,3,192,6,96,12,48,0,0,255,254,60,30,60,6, + 60,2,60,2,60,34,60,32,60,96,63,224,60,96,60,32, + 60,32,60,2,60,2,60,2,60,6,60,30,255,254,15,23, + 46,18,1,0,14,112,14,112,14,112,0,0,0,0,255,254, + 60,30,60,6,60,2,60,2,60,34,60,32,60,96,63,224, + 60,96,60,32,60,32,60,2,60,2,60,2,60,6,60,30, + 255,254,8,24,24,10,1,0,192,224,112,24,12,0,255,60, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,255, + 8,24,24,10,1,0,3,7,14,24,48,0,255,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,60,255,8,23, + 23,10,1,0,24,60,102,195,0,255,60,60,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,255,8,23,23,10,1, + 0,231,231,231,0,0,255,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,255,18,18,54,20,1,0,255,240, + 0,60,60,0,60,15,0,60,15,0,60,7,128,60,7,128, + 60,7,192,60,7,192,255,135,192,60,7,192,60,7,192,60, + 7,192,60,7,128,60,7,128,60,15,0,60,15,0,60,60, + 0,255,240,0,20,22,66,22,1,0,0,226,0,1,252,0, + 2,56,0,0,0,0,252,7,240,62,1,192,31,0,128,31, + 128,128,31,192,128,23,224,128,19,240,128,17,240,128,16,248, + 128,16,124,128,16,126,128,16,63,128,16,31,128,16,15,128, + 16,7,128,16,3,128,56,1,128,254,0,128,19,24,72,21, + 1,0,6,0,0,7,0,0,3,128,0,0,192,0,0,96, + 0,0,0,0,3,248,0,15,30,0,60,7,128,60,7,128, + 120,3,192,120,3,192,248,3,224,248,3,224,248,3,224,248, + 3,224,248,3,224,248,3,224,120,3,192,120,3,192,60,7, + 128,60,7,128,15,30,0,3,248,0,19,23,69,21,1,0, + 0,24,0,0,56,0,0,96,0,0,192,0,0,0,0,3, + 248,0,15,30,0,60,7,128,60,7,128,120,3,192,120,3, + 192,248,3,224,248,3,224,248,3,224,248,3,224,248,3,224, + 248,3,224,120,3,192,120,3,192,60,7,128,60,7,128,15, + 30,0,3,248,0,19,23,69,21,1,0,0,96,0,0,240, + 0,1,152,0,3,12,0,0,0,0,3,248,0,15,30,0, + 60,7,128,60,7,128,120,3,192,120,3,192,248,3,224,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,120,3, + 192,120,3,192,60,7,128,60,7,128,15,30,0,3,248,0, + 19,22,66,21,1,0,0,226,0,1,252,0,2,56,0,0, + 0,0,3,248,0,15,30,0,60,7,128,60,7,128,120,3, + 192,120,3,192,248,3,224,248,3,224,248,3,224,248,3,224, + 248,3,224,248,3,224,120,3,192,120,3,192,60,7,128,60, + 7,128,15,30,0,3,248,0,19,23,69,21,1,0,7,28, + 0,7,28,0,7,28,0,0,0,0,0,0,0,3,248,0, + 15,30,0,60,7,128,60,7,128,120,3,192,120,3,192,248, + 3,224,248,3,224,248,3,224,248,3,224,248,3,224,248,3, + 224,120,3,192,120,3,192,60,7,128,60,7,128,15,30,0, + 3,248,0,12,12,24,14,1,1,192,48,224,112,112,224,57, + 192,31,128,15,0,15,0,31,128,57,192,112,224,224,112,192, + 48,20,18,54,21,0,0,1,252,48,7,143,96,30,3,192, + 30,3,192,60,7,224,60,13,224,124,25,240,124,49,240,124, + 97,240,124,193,240,125,129,240,127,1,240,62,1,224,60,1, + 224,62,3,192,126,3,192,199,143,0,129,252,0,19,24,72, + 21,1,0,3,0,0,3,128,0,1,192,0,0,96,0,0, + 48,0,0,0,0,255,15,224,60,3,128,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,60,1,0,60,1,0,60,1,0,60, + 1,0,30,2,0,31,142,0,7,248,0,19,24,72,21,1, + 0,0,6,0,0,14,0,0,28,0,0,48,0,0,96,0, + 0,0,0,255,15,224,60,3,128,60,1,0,60,1,0,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,60,1,0, + 30,2,0,31,142,0,7,248,0,19,23,69,21,1,0,0, + 96,0,0,240,0,1,152,0,3,12,0,0,0,0,255,15, + 224,60,3,128,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,60,1,0,60,1,0,60,1,0,60, + 1,0,60,1,0,60,1,0,60,1,0,30,2,0,31,142, + 0,7,248,0,19,23,69,21,1,0,7,28,0,7,28,0, + 7,28,0,0,0,0,0,0,0,255,15,224,60,3,128,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,30,2,0,31,142,0,7,248,0,18, + 24,72,18,0,0,0,6,0,0,14,0,0,28,0,0,48, + 0,0,96,0,0,0,0,255,15,192,60,3,0,30,6,0, + 30,6,0,15,12,0,15,12,0,7,152,0,7,152,0,3, + 240,0,3,240,0,1,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,7,248,0,16,18,36, + 18,1,0,255,128,60,0,60,0,60,0,63,248,60,62,60, + 30,60,31,60,31,60,31,60,31,60,30,60,62,63,240,60, + 0,60,0,60,0,255,128,15,18,36,15,255,0,7,224,30, + 120,28,60,60,60,60,60,60,56,60,112,61,224,60,60,60, + 30,60,30,60,30,60,30,60,30,60,30,60,28,61,60,253, + 240,14,18,36,15,0,0,12,0,14,0,7,0,3,0,1, + 128,0,0,127,128,241,224,240,240,96,240,1,240,14,240,120, + 240,240,240,240,240,240,240,249,252,126,56,14,18,36,15,0, + 0,1,128,3,128,7,0,6,0,12,0,0,0,127,128,241, + 224,240,240,96,240,1,240,14,240,120,240,240,240,240,240,240, + 240,249,252,126,56,14,18,36,15,0,0,2,0,7,0,15, + 128,24,192,48,96,0,0,127,128,241,224,240,240,96,240,1, + 240,14,240,120,240,240,240,240,240,240,240,249,252,126,56,14, + 17,34,15,0,0,14,32,31,192,35,128,0,0,0,0,127, + 128,241,224,240,240,96,240,1,240,14,240,120,240,240,240,240, + 240,240,240,249,252,126,56,14,17,34,15,0,0,56,224,56, + 224,56,224,0,0,0,0,127,128,241,224,240,240,96,240,1, + 240,14,240,120,240,240,240,240,240,240,240,249,252,126,56,14, + 18,36,15,0,0,7,0,13,128,8,128,13,128,7,0,0, + 0,127,128,241,224,240,240,96,240,1,240,14,240,120,240,240, + 240,240,240,240,240,249,252,126,56,22,12,36,23,0,0,31, + 207,192,121,248,112,112,248,120,112,240,56,1,240,60,14,255, + 252,120,240,0,240,240,0,240,248,8,240,248,8,249,188,48, + 126,15,224,13,17,34,14,0,251,15,240,56,120,120,120,112, + 48,240,0,240,0,240,0,240,0,120,8,120,8,60,48,31, + 224,2,0,7,0,3,128,1,128,15,0,14,18,36,15,0, + 0,12,0,14,0,7,0,3,0,1,128,0,0,15,192,56, + 112,120,120,112,56,240,60,255,252,240,0,240,0,120,8,120, + 8,60,48,15,224,14,18,36,15,0,0,0,96,0,224,1, + 192,3,128,6,0,0,0,15,192,56,112,120,120,112,56,240, + 60,255,252,240,0,240,0,120,8,120,8,60,48,15,224,14, + 18,36,15,0,0,2,0,7,0,15,128,24,192,48,96,0, + 0,15,192,56,112,120,120,112,56,240,60,255,252,240,0,240, + 0,120,8,120,8,60,48,15,224,14,17,34,15,0,0,28, + 112,28,112,28,112,0,0,0,0,15,192,56,112,120,120,112, + 56,240,60,255,252,240,0,240,0,120,8,120,8,60,48,15, + 224,8,18,18,9,0,0,96,112,56,24,12,0,252,60,60, + 60,60,60,60,60,60,60,60,255,8,18,18,9,0,0,12, + 28,56,48,96,0,252,60,60,60,60,60,60,60,60,60,60, + 255,9,18,36,9,0,0,8,0,28,0,62,0,99,0,193, + 128,0,0,252,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,60,0,60,0,255,0,8,17,17,9,0, + 0,231,231,231,0,0,252,60,60,60,60,60,60,60,60,60, + 60,255,14,18,36,15,0,0,192,0,57,192,15,0,15,0, + 49,192,0,224,15,240,56,112,120,120,112,56,240,60,240,60, + 240,60,240,60,112,56,120,120,56,112,15,192,17,17,51,18, + 0,0,3,136,0,7,240,0,8,224,0,0,0,0,0,0, + 0,252,248,0,61,252,0,62,62,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,254,63,128,14,18,36,15,0,0,12,0,14,0,7, + 0,3,0,1,128,0,0,15,192,56,112,120,120,112,56,240, + 60,240,60,240,60,240,60,112,56,120,120,56,112,15,192,14, + 18,36,15,0,0,0,96,0,224,1,192,3,0,6,0,0, + 0,15,192,56,112,120,120,112,56,240,60,240,60,240,60,240, + 60,112,56,120,120,56,112,15,192,14,18,36,15,0,0,2, + 0,7,0,15,128,24,192,48,96,0,0,15,192,56,112,120, + 120,112,56,240,60,240,60,240,60,240,60,112,56,120,120,56, + 112,15,192,14,17,34,15,0,0,7,16,15,224,17,192,0, + 0,0,0,15,192,56,112,120,120,112,56,240,60,240,60,240, + 60,240,60,112,56,120,120,56,112,15,192,14,17,34,15,0, + 0,56,224,56,224,56,224,0,0,0,0,15,192,56,112,120, + 120,112,56,240,60,240,60,240,60,240,60,112,56,120,120,56, + 112,15,192,12,12,24,14,1,1,6,0,6,0,6,0,0, + 0,0,0,255,240,255,240,0,0,0,0,6,0,6,0,6, + 0,14,18,36,15,0,253,0,16,0,16,0,32,15,224,56, + 112,120,120,112,184,240,188,241,60,241,60,242,60,114,56,124, + 120,60,112,15,192,8,0,16,0,16,0,17,18,54,18,0, + 0,3,0,0,3,128,0,1,192,0,0,192,0,0,96,0, + 0,0,0,254,63,128,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,62,62, + 0,31,222,0,15,159,128,17,18,54,18,0,0,0,96,0, + 0,224,0,1,192,0,1,128,0,3,0,0,0,0,0,254, + 63,128,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,62,62,0,31,222,0, + 15,159,128,17,18,54,18,0,0,0,128,0,1,192,0,3, + 224,0,6,48,0,12,24,0,0,0,0,254,63,128,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,62,62,0,31,222,0,15,159,128,17, + 17,51,18,0,0,14,56,0,14,56,0,14,56,0,0,0, + 0,0,0,0,254,63,128,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,62, + 62,0,31,222,0,15,159,128,16,23,46,15,255,251,0,48, + 0,112,0,224,0,192,1,128,0,0,254,63,60,12,30,8, + 30,24,15,16,15,48,7,160,7,224,3,192,3,192,1,192, + 1,128,1,128,97,0,243,0,254,0,120,0,16,23,46,16, + 255,251,252,0,60,0,60,0,60,0,60,0,60,0,61,240, + 63,28,60,30,60,14,60,15,60,15,60,15,60,15,60,14, + 62,30,63,28,61,240,60,0,60,0,60,0,60,0,255,0, + 16,22,44,15,255,251,14,56,14,56,14,56,0,0,0,0, + 254,63,60,12,30,8,30,24,15,16,15,48,7,160,7,224, + 3,192,3,192,1,192,1,128,1,128,97,0,243,0,254,0, + 120,0}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--25-180-100-100-P-149-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=26 h=23 x= 6 y=13 dx=26 dy= 0 ascent=20 len=72 + Font Bounding box w=33 h=40 x=-4 y=-10 + Calculated Min Values x=-3 y=-5 dx= 0 dy= 0 + Pure Font ascent =18 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =20 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB18r[3736] U8G_SECTION(".progmem.u8g_font_ncenB18r") = { + 0,33,40,252,246,18,4,68,10,106,32,127,251,20,251,18, + 251,0,0,0,7,0,1,5,18,18,7,1,0,112,248,248, + 248,112,112,112,112,112,112,32,32,0,0,112,248,248,112,6, + 6,6,8,1,12,204,204,204,204,204,136,12,18,36,14,1, + 0,12,192,12,192,12,192,12,192,12,192,127,240,127,240,25, + 128,25,128,25,128,25,128,255,224,255,224,51,0,51,0,51, + 0,51,0,51,0,12,23,46,14,1,253,4,0,4,0,31, + 192,116,96,100,240,228,240,228,240,244,96,252,0,255,0,127, + 192,31,224,7,240,5,240,100,240,244,112,244,112,244,96,100, + 224,63,128,4,0,4,0,4,0,19,18,54,21,1,0,30, + 14,0,123,54,0,113,204,0,241,12,0,225,24,0,226,24, + 0,226,48,0,100,48,0,56,96,0,0,99,192,0,207,96, + 0,206,32,1,158,32,1,156,32,3,28,64,3,28,64,6, + 12,128,6,7,0,20,18,54,22,1,0,1,240,0,7,56, + 0,14,24,0,14,24,0,14,24,0,15,48,0,15,224,0, + 7,192,0,15,192,0,57,227,240,113,241,192,240,241,128,240, + 121,0,240,127,0,240,62,16,120,31,16,124,63,224,31,199, + 192,2,6,6,6,2,12,192,192,192,192,192,192,6,21,21, + 8,1,253,4,12,24,48,48,96,96,224,224,224,224,224,224, + 224,96,96,48,48,24,12,4,6,21,21,8,1,253,128,192, + 96,48,48,24,24,28,28,28,28,28,28,28,24,24,48,48, + 96,192,128,9,10,20,11,1,8,28,0,28,0,201,128,235, + 128,62,0,62,0,235,128,201,128,28,0,28,0,12,12,24, + 14,1,1,6,0,6,0,6,0,6,0,6,0,255,240,255, + 240,6,0,6,0,6,0,6,0,6,0,5,8,8,7,1, + 252,112,248,248,120,48,32,64,128,6,3,3,8,1,5,252, + 252,252,5,4,4,7,1,0,112,248,248,112,7,18,18,9, + 1,0,6,6,6,12,12,12,24,24,24,48,48,48,96,96, + 96,192,192,192,12,18,36,14,1,0,15,0,57,192,112,224, + 112,224,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,112,224,112,224,57,192,15,0,10,18, + 36,14,2,0,30,0,254,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,63,0,255,192,11,18,36,14,1,0,31,0, + 99,192,225,224,241,224,241,224,241,224,97,224,1,192,3,192, + 3,128,7,0,14,0,24,32,48,32,112,96,255,224,255,224, + 255,224,12,18,36,14,1,0,15,128,49,224,112,224,120,240, + 120,240,120,240,48,224,1,192,15,0,1,192,0,224,96,240, + 240,240,240,240,240,240,224,224,97,224,31,128,12,18,36,14, + 1,0,0,192,1,192,3,192,7,192,7,192,15,192,27,192, + 19,192,51,192,99,192,99,192,195,192,255,240,255,240,3,192, + 3,192,3,192,15,240,12,18,36,14,1,0,127,240,127,224, + 127,192,64,0,64,0,64,0,95,0,113,192,96,224,0,240, + 0,240,0,240,96,240,240,240,240,240,240,224,97,192,63,0, + 12,18,36,14,1,0,15,128,56,192,113,224,113,224,241,224, + 240,192,240,0,247,128,249,224,240,224,240,240,240,240,240,240, + 240,240,240,240,112,224,121,224,31,128,12,18,36,14,1,0, + 255,240,255,240,255,224,192,96,128,192,129,192,3,128,3,128, + 7,0,7,0,15,0,15,0,30,0,30,0,30,0,30,0, + 30,0,12,0,12,18,36,14,1,0,15,0,57,192,112,224, + 112,224,112,224,120,224,124,192,63,128,31,128,63,192,119,224, + 225,240,224,240,224,112,224,112,224,96,112,192,31,128,12,18, + 36,14,1,0,31,128,121,224,112,224,240,240,240,240,240,240, + 240,240,240,240,112,240,121,240,30,240,0,240,48,240,120,240, + 120,224,120,224,49,192,31,0,5,12,12,7,1,0,112,248, + 248,112,0,0,0,0,112,248,248,112,5,16,16,7,1,252, + 112,248,248,112,0,0,0,0,112,248,248,120,48,32,64,128, + 12,12,24,14,1,1,0,48,0,240,3,192,15,0,60,0, + 240,0,240,0,60,0,15,0,3,192,0,240,0,48,12,6, + 12,14,1,4,255,240,255,240,0,0,0,0,255,240,255,240, + 12,12,24,14,1,1,192,0,240,0,60,0,15,0,3,192, + 0,240,0,240,3,192,15,0,60,0,240,0,192,0,11,18, + 36,13,1,0,63,0,99,192,241,224,241,224,97,224,1,224, + 1,192,3,128,7,0,12,0,24,0,24,0,0,0,0,0, + 28,0,62,0,62,0,28,0,19,18,54,20,1,0,1,252, + 0,15,6,0,12,1,128,48,0,192,48,220,192,99,188,96, + 103,28,96,199,28,96,206,28,96,206,56,96,206,56,64,206, + 56,192,206,121,128,103,191,0,96,0,0,56,1,0,28,7, + 0,7,252,0,19,18,54,19,0,0,0,96,0,0,96,0, + 0,240,0,0,240,0,1,120,0,1,120,0,3,60,0,2, + 60,0,2,60,0,6,30,0,4,30,0,7,254,0,12,15, + 0,8,15,0,8,15,0,24,7,128,56,7,128,254,31,224, + 17,18,54,19,1,0,255,248,0,60,62,0,60,31,0,60, + 31,0,60,31,0,60,31,0,60,30,0,60,60,0,63,248, + 0,60,30,0,60,15,0,60,15,128,60,15,128,60,15,128, + 60,15,128,60,15,128,60,31,0,255,252,0,17,18,54,19, + 1,0,3,249,128,15,15,128,60,3,128,60,1,128,120,1, + 128,120,0,128,248,0,128,248,0,0,248,0,0,248,0,0, + 248,0,0,248,0,0,120,0,128,120,0,128,60,1,0,60, + 1,0,15,6,0,3,248,0,18,18,54,20,1,0,255,240, + 0,60,60,0,60,15,0,60,15,0,60,7,128,60,7,128, + 60,7,192,60,7,192,60,7,192,60,7,192,60,7,192,60, + 7,192,60,7,128,60,7,128,60,15,0,60,15,0,60,60, + 0,255,240,0,15,18,36,18,1,0,255,254,60,30,60,6, + 60,2,60,2,60,34,60,32,60,96,63,224,60,96,60,32, + 60,32,60,2,60,2,60,2,60,6,60,30,255,254,15,18, + 36,17,1,0,255,254,60,30,60,6,60,2,60,2,60,34, + 60,32,60,96,63,224,60,96,60,32,60,32,60,0,60,0, + 60,0,60,0,60,0,255,0,18,18,54,20,1,0,3,249, + 128,15,15,128,60,3,128,60,1,128,120,1,128,120,0,128, + 248,0,128,248,0,0,248,0,0,248,0,0,248,15,192,248, + 7,128,120,7,128,120,7,128,60,7,128,60,7,128,15,13, + 128,3,248,128,19,18,54,21,1,0,255,31,224,60,7,128, + 60,7,128,60,7,128,60,7,128,60,7,128,60,7,128,60, + 7,128,63,255,128,60,7,128,60,7,128,60,7,128,60,7, + 128,60,7,128,60,7,128,60,7,128,60,7,128,255,31,224, + 8,18,18,10,1,0,255,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,255,14,18,36,16,0,0,3,252, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,96,240,240,240,240,240,224,240,192,224,97,224, + 63,128,20,18,54,21,1,0,255,15,192,60,3,0,60,6, + 0,60,12,0,60,24,0,60,48,0,60,96,0,60,224,0, + 61,240,0,63,248,0,62,248,0,60,124,0,60,62,0,60, + 31,0,60,31,0,60,15,128,60,7,192,255,15,240,15,18, + 36,17,1,0,255,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,2,60,2, + 60,2,60,6,60,30,255,254,22,18,54,24,1,0,252,1, + 252,60,1,240,62,3,240,62,2,240,46,2,240,47,6,240, + 39,4,240,39,132,240,39,140,240,35,136,240,35,200,240,35, + 216,240,33,208,240,33,240,240,32,224,240,32,224,240,112,96, + 240,248,67,252,20,18,54,22,1,0,252,7,240,62,1,192, + 31,0,128,31,128,128,31,192,128,23,224,128,19,240,128,17, + 240,128,16,248,128,16,124,128,16,126,128,16,63,128,16,31, + 128,16,15,128,16,7,128,16,3,128,56,1,128,254,0,128, + 19,18,54,21,1,0,3,248,0,15,30,0,60,7,128,60, + 7,128,120,3,192,120,3,192,248,3,224,248,3,224,248,3, + 224,248,3,224,248,3,224,248,3,224,120,3,192,120,3,192, + 60,7,128,60,7,128,15,30,0,3,248,0,17,18,54,18, + 1,0,255,252,0,60,31,0,60,15,0,60,15,128,60,15, + 128,60,15,128,60,15,128,60,15,0,60,31,0,63,248,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,255,128,0,19,23,69,21,1,251,3,248, + 0,15,30,0,60,7,128,60,7,128,120,3,192,120,3,192, + 248,3,224,248,3,224,248,3,224,248,3,224,248,3,224,251, + 227,224,126,115,192,124,51,192,60,51,128,60,27,128,15,30, + 0,3,254,0,0,14,0,0,15,32,0,7,192,0,7,192, + 0,3,128,19,18,54,21,1,0,255,248,0,60,62,0,60, + 31,0,60,31,0,60,31,0,60,31,0,60,30,0,60,60, + 0,63,224,0,60,120,0,60,60,0,60,60,0,60,62,0, + 60,30,0,60,31,32,60,15,32,60,15,192,255,135,128,14, + 18,36,16,1,0,15,200,56,120,96,24,224,24,224,8,240, + 8,254,0,255,192,127,240,63,248,15,252,1,252,128,60,128, + 28,192,28,192,24,240,112,159,192,16,18,36,18,1,0,255, + 255,227,199,195,195,131,193,131,193,131,193,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,15,240,19,18,54,21,1,0,255,15,224,60,3,128,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,2,0,30,2,0,31,140,0,7,248,0,19, + 18,54,19,0,0,255,15,224,60,3,128,60,3,0,30,2, + 0,30,2,0,30,6,0,15,4,0,15,4,0,15,12,0, + 7,136,0,7,136,0,7,152,0,3,208,0,3,208,0,1, + 224,0,1,224,0,0,192,0,0,192,0,26,18,72,26,0, + 0,255,127,159,192,60,30,7,0,60,30,6,0,30,15,4, + 0,30,15,4,0,30,15,12,0,15,31,136,0,15,23,136, + 0,15,23,152,0,7,179,208,0,7,163,208,0,7,163,240, + 0,3,225,224,0,3,193,224,0,3,193,224,0,1,192,192, + 0,1,128,192,0,1,128,192,0,20,18,54,20,0,0,255, + 135,224,62,1,128,31,3,0,31,134,0,15,140,0,7,216, + 0,3,240,0,3,224,0,1,240,0,0,248,0,1,248,0, + 3,124,0,6,62,0,4,31,0,12,31,0,24,15,128,48, + 7,192,252,31,240,18,18,54,18,0,0,255,15,192,60,3, + 0,30,2,0,30,6,0,15,4,0,15,12,0,7,136,0, + 7,152,0,3,208,0,3,240,0,1,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,7,248, + 0,15,18,36,17,1,0,127,254,112,62,96,124,64,120,64, + 248,0,240,1,224,3,224,3,192,7,128,15,128,15,0,30, + 0,62,2,60,2,120,6,248,14,255,254,6,21,21,8,1, + 253,252,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,252,10,18,36,12,1,0,192,0,224,0, + 224,0,112,0,112,0,56,0,56,0,28,0,28,0,14,0, + 14,0,7,0,7,0,3,128,3,128,1,192,1,192,0,192, + 6,21,21,8,1,253,252,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,252,10,10,20,15,2, + 8,12,0,12,0,30,0,30,0,51,0,51,0,97,128,97, + 128,192,192,192,192,12,2,4,12,0,252,255,240,255,240,5, + 5,5,7,1,13,224,224,112,48,24,14,12,24,15,0,0, + 127,128,241,224,240,240,96,240,1,240,14,240,120,240,240,240, + 240,240,240,240,249,252,126,56,16,18,36,16,255,0,252,0, + 60,0,60,0,60,0,60,0,60,0,61,240,63,28,62,30, + 60,14,60,15,60,15,60,15,60,15,60,14,60,30,62,28, + 39,240,13,12,24,14,0,0,15,240,56,120,120,120,112,48, + 240,0,240,0,240,0,240,0,120,8,120,8,60,48,31,224, + 16,18,36,17,0,0,0,252,0,60,0,60,0,60,0,60, + 0,60,15,188,56,252,120,124,112,60,240,60,240,60,240,60, + 240,60,112,60,120,124,56,252,15,191,14,12,24,15,0,0, + 15,192,56,112,120,120,112,56,240,60,255,252,240,0,240,0, + 120,8,120,8,60,48,15,224,12,18,36,10,0,0,7,224, + 28,240,28,240,60,96,60,0,60,0,255,128,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 255,0,13,18,36,15,1,251,0,56,31,248,121,224,240,240, + 240,240,240,240,240,240,121,224,63,128,96,0,224,0,255,192, + 127,240,127,248,96,56,192,24,224,48,127,224,17,18,54,18, + 0,0,252,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,248,0,61,252,0,62,62,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,254,63,128,8,18,18,9,0,0,24,60, + 60,24,0,0,252,60,60,60,60,60,60,60,60,60,60,255, + 8,23,23,7,253,251,6,15,15,6,0,0,63,15,15,15, + 15,15,15,15,15,15,15,15,15,15,206,206,120,17,18,54, + 17,0,0,252,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,254,0,60,56,0,60,48,0,60,96, + 0,60,192,0,63,192,0,63,224,0,60,240,0,60,120,0, + 60,60,0,60,30,0,255,127,128,8,18,18,9,0,0,252, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 255,24,12,36,25,0,0,252,240,240,61,249,248,62,126,124, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,60,254,126,127,17,12,36,18,0, + 0,252,248,0,61,252,0,62,62,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,254,63,128,14,12,24,15,0,0,15,192,56,112,120, + 120,112,56,240,60,240,60,240,60,240,60,112,56,120,120,56, + 112,15,192,16,17,34,16,255,251,253,240,63,28,60,30,60, + 14,60,15,60,15,60,15,60,15,60,14,62,30,63,28,61, + 240,60,0,60,0,60,0,60,0,255,0,16,17,34,16,0, + 251,15,132,60,236,120,60,112,60,240,60,240,60,240,60,240, + 60,112,60,120,124,56,252,15,188,0,60,0,60,0,60,0, + 60,0,255,12,12,24,12,0,0,252,224,61,240,62,240,60, + 96,60,0,60,0,60,0,60,0,60,0,60,0,60,0,255, + 0,10,12,24,11,0,0,62,128,99,128,193,128,224,128,252, + 0,255,128,127,192,15,192,129,192,192,192,225,128,191,0,10, + 17,34,10,0,0,4,0,12,0,12,0,28,0,60,0,255, + 128,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 64,60,64,31,128,15,0,17,12,36,18,0,0,254,126,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,62,62,0,31,222,0,15,159, + 128,16,12,24,15,255,0,255,31,60,4,30,12,30,8,15, + 24,15,16,7,176,7,160,3,224,3,192,1,192,1,128,23, + 12,36,22,255,0,255,63,62,60,30,8,60,30,8,30,63, + 24,30,47,16,30,47,16,15,103,176,15,71,160,7,195,224, + 7,131,192,3,129,192,3,1,128,17,12,36,16,255,0,255, + 31,0,62,12,0,31,24,0,15,176,0,7,224,0,3,192, + 0,1,224,0,3,240,0,6,248,0,12,124,0,24,62,0, + 124,127,128,16,17,34,15,255,251,254,63,60,12,30,8,30, + 24,15,16,15,48,7,160,7,224,3,192,3,192,1,192,1, + 128,1,128,97,0,243,0,254,0,120,0,11,12,24,12,0, + 0,255,224,225,224,195,224,135,192,143,128,15,0,30,0,62, + 32,124,32,248,96,240,224,255,224,6,21,21,8,1,253,28, + 48,112,112,112,112,112,112,112,96,192,96,112,112,112,112,112, + 112,112,48,28,3,18,18,15,6,0,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,6,21,21,8, + 1,253,224,48,56,56,56,56,56,56,56,24,12,24,56,56, + 56,56,56,56,56,48,224,12,5,10,15,1,4,56,32,126, + 112,255,240,231,224,65,192,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--34-240-100-100-P-193-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=32 h=33 x= 8 y=18 dx=33 dy= 0 ascent=33 len=132 + Font Bounding box w=39 h=53 x=-4 y=-13 + Calculated Min Values x=-3 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =33 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB24[12964] U8G_SECTION(".progmem.u8g_font_ncenB24") = { + 0,39,53,252,243,25,6,143,16,147,32,255,249,33,249,25, + 249,0,0,0,9,1,1,6,25,25,10,2,0,120,252,252, + 252,252,252,252,120,120,120,120,48,48,48,48,48,48,0,0, + 120,252,252,252,252,120,11,11,22,11,0,14,96,192,241,224, + 241,224,241,224,241,224,241,224,241,224,96,192,96,192,96,192, + 96,192,16,25,50,19,1,255,7,28,7,28,7,28,7,28, + 14,56,14,56,14,56,127,255,127,255,127,255,14,56,12,48, + 28,112,28,112,255,254,255,254,255,254,28,112,28,112,56,224, + 56,224,56,224,56,224,56,224,56,224,17,30,90,19,1,252, + 1,128,0,1,128,0,1,128,0,7,240,0,31,252,0,57, + 158,0,113,143,0,113,159,0,241,159,0,241,142,0,253,128, + 0,255,128,0,127,240,0,127,252,0,63,254,0,15,255,0, + 1,255,128,1,191,128,113,143,128,249,135,128,249,135,128,249, + 135,0,241,143,0,121,158,0,63,252,0,7,224,0,1,128, + 0,1,128,0,1,128,0,1,128,0,26,24,96,27,0,0, + 0,0,24,0,7,192,48,0,15,96,112,0,30,57,224,0, + 60,31,96,0,60,16,192,0,120,16,128,0,120,17,128,0, + 240,49,0,0,240,35,0,0,240,98,0,0,240,198,31,0, + 123,140,61,128,63,12,120,192,0,24,240,64,0,17,240,64, + 0,49,224,64,0,33,224,192,0,99,224,192,0,195,193,128, + 0,195,193,128,1,131,195,0,1,129,230,0,3,0,252,0, + 24,25,75,28,2,0,0,124,0,1,255,0,3,199,0,7, + 135,128,7,131,128,7,131,128,7,199,128,7,199,0,7,239, + 0,7,252,0,3,248,0,7,241,255,15,249,255,61,248,124, + 120,252,56,120,254,112,248,126,96,248,63,224,252,63,192,252, + 31,193,254,15,227,255,15,243,127,255,254,63,243,254,15,128, + 252,4,11,11,8,2,14,96,240,240,240,240,240,240,96,96, + 96,96,9,27,54,13,2,253,3,128,7,0,14,0,28,0, + 28,0,56,0,56,0,120,0,120,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,112,0,120,0, + 56,0,56,0,28,0,28,0,14,0,7,0,3,128,9,27, + 54,13,1,253,224,0,48,0,56,0,28,0,28,0,14,0, + 14,0,15,0,7,0,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,15,0,15,0,14,0,14,0, + 28,0,28,0,56,0,112,0,192,0,12,15,30,17,2,10, + 6,0,14,0,14,0,230,112,230,112,246,240,63,192,15,0, + 127,224,246,240,230,112,230,112,7,0,7,0,6,0,16,16, + 32,20,2,1,3,192,3,192,3,192,3,192,3,192,3,192, + 255,255,255,255,255,255,255,255,3,192,3,192,3,192,3,192, + 3,192,3,192,6,11,11,9,2,251,120,248,252,252,252,124, + 28,24,48,112,224,8,4,4,11,1,6,255,255,255,255,6, + 6,6,9,1,0,120,252,252,252,252,120,10,25,50,9,255, + 0,0,192,1,192,1,192,1,128,3,128,3,128,3,0,7, + 0,7,0,6,0,14,0,14,0,12,0,28,0,28,0,24, + 0,56,0,56,0,48,0,112,0,112,0,96,0,224,0,224, + 0,192,0,16,24,48,19,1,0,3,192,15,240,30,120,60, + 60,124,62,120,30,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,248,31,120,30,120,30,124, + 62,60,60,30,120,15,240,3,192,13,24,48,19,3,0,1, + 128,7,128,255,128,255,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,255,248,255,248,17, + 24,72,19,1,0,15,240,0,63,252,0,120,126,0,240,63, + 0,248,31,0,252,31,0,252,31,0,252,31,0,124,63,0, + 56,62,0,0,124,0,0,248,0,0,240,0,1,224,0,3, + 192,0,3,129,128,7,1,128,14,1,128,28,3,128,63,255, + 128,127,255,0,127,255,0,255,255,0,255,255,0,16,24,48, + 19,1,0,15,224,63,248,120,124,248,62,252,62,252,62,252, + 62,120,62,0,124,0,112,7,224,7,192,0,248,0,126,0, + 62,0,63,120,31,252,31,252,31,252,63,248,62,120,126,63, + 248,7,224,17,24,72,19,0,0,0,4,0,0,12,0,0, + 28,0,0,60,0,0,124,0,0,252,0,1,252,0,1,252, + 0,3,124,0,6,124,0,12,124,0,28,124,0,56,124,0, + 112,124,0,224,124,0,192,124,0,255,255,128,255,255,128,0, + 124,0,0,124,0,0,124,0,0,124,0,3,255,128,3,255, + 128,16,24,48,19,1,0,31,255,63,254,63,254,63,252,63, + 240,48,0,48,0,48,0,48,0,55,224,63,248,56,124,48, + 62,32,62,0,31,0,31,56,31,124,31,252,31,252,62,120, + 62,112,252,63,240,15,192,17,24,72,19,1,0,3,240,0, + 15,252,0,31,30,0,62,62,0,60,62,0,124,62,0,120, + 28,0,248,0,0,248,0,0,248,0,0,249,248,0,255,254, + 0,255,127,0,252,31,0,248,31,128,248,15,128,248,15,128, + 248,15,128,248,15,128,124,31,0,124,31,0,62,62,0,31, + 252,0,7,240,0,16,24,48,19,2,0,255,255,255,254,255, + 254,255,252,255,252,192,24,192,24,192,56,128,112,0,112,0, + 240,0,224,1,224,1,224,3,224,3,192,7,192,7,192,15, + 192,15,192,15,192,15,192,15,192,7,128,17,24,72,19,1, + 0,7,240,0,15,252,0,60,62,0,56,31,0,120,15,0, + 120,15,0,120,15,0,124,15,0,126,30,0,127,252,0,63, + 240,0,31,252,0,15,254,0,63,255,0,120,127,0,248,31, + 128,240,15,128,240,15,128,240,15,0,240,15,0,248,30,0, + 124,60,0,63,240,0,7,192,0,17,24,72,19,1,0,3, + 192,0,31,248,0,62,124,0,124,62,0,252,31,0,248,31, + 0,248,15,128,248,15,128,248,15,128,252,31,128,252,63,128, + 127,111,128,63,207,128,31,143,128,0,15,128,0,15,128,112, + 15,0,248,31,0,252,31,0,248,30,0,248,62,0,112,252, + 0,63,240,0,15,192,0,6,16,16,9,2,0,120,252,252, + 252,252,120,0,0,0,0,120,252,252,252,252,120,6,21,21, + 9,2,251,120,252,252,252,252,120,0,0,0,0,120,248,252, + 252,252,124,28,24,48,112,224,16,18,36,20,2,0,0,3, + 0,15,0,127,1,255,7,252,31,240,127,128,254,0,248,0, + 252,0,255,128,63,224,15,248,3,254,0,127,0,31,0,7, + 0,1,16,10,20,20,2,3,255,255,255,255,255,255,255,255, + 0,0,0,0,255,255,255,255,255,255,255,255,16,18,36,20, + 2,0,192,0,240,0,254,0,255,128,63,224,15,248,1,254, + 0,127,0,31,0,63,1,255,7,252,31,240,127,192,254,0, + 248,0,224,0,128,0,14,25,50,16,1,0,15,192,63,240, + 113,248,240,248,248,252,248,252,248,252,112,252,0,248,1,248, + 1,240,3,224,3,128,7,0,7,0,6,0,6,0,0,0, + 0,0,15,0,31,128,31,128,31,128,31,128,15,0,23,25, + 75,25,0,0,0,127,0,1,255,192,7,227,240,15,0,120, + 30,0,28,28,0,12,56,60,6,48,255,230,113,227,230,113, + 227,198,99,195,198,227,131,198,231,135,134,231,135,140,231,7, + 140,231,15,28,231,15,24,227,31,112,115,247,224,48,227,204, + 56,0,28,28,0,120,15,1,240,7,255,224,1,255,0,25, + 25,100,25,0,0,0,28,0,0,0,28,0,0,0,30,0, + 0,0,62,0,0,0,63,0,0,0,127,0,0,0,127,128, + 0,0,127,128,0,0,255,128,0,0,207,192,0,1,207,192, + 0,1,143,192,0,1,135,224,0,3,135,224,0,3,7,240, + 0,7,3,240,0,7,255,240,0,7,255,248,0,14,1,248, + 0,12,1,252,0,28,0,252,0,28,0,254,0,62,0,254, + 0,255,131,255,128,255,131,255,128,23,25,75,25,1,0,255, + 255,128,255,255,224,31,131,240,31,129,248,31,129,248,31,128, + 252,31,128,252,31,128,252,31,128,248,31,129,248,31,129,240, + 31,135,224,31,255,0,31,255,192,31,131,240,31,128,252,31, + 128,252,31,128,254,31,128,126,31,128,254,31,128,252,31,128, + 252,31,131,248,255,255,240,255,255,192,22,25,75,24,1,0, + 0,126,24,3,255,184,7,193,248,31,128,248,31,0,120,62, + 0,56,126,0,56,126,0,24,254,0,24,252,0,8,252,0, + 0,252,0,0,252,0,0,252,0,0,252,0,0,254,0,0, + 254,0,12,254,0,28,126,0,24,126,0,56,63,0,48,31, + 128,112,15,193,224,7,255,192,0,255,0,24,25,75,26,1, + 0,255,255,0,255,255,224,31,131,240,31,129,248,31,128,252, + 31,128,126,31,128,126,31,128,127,31,128,63,31,128,63,31, + 128,63,31,128,63,31,128,63,31,128,63,31,128,63,31,128, + 63,31,128,127,31,128,126,31,128,126,31,128,126,31,128,252, + 31,129,248,31,131,240,255,255,224,255,255,0,21,25,75,23, + 1,0,255,255,248,255,255,248,31,129,248,31,128,248,31,128, + 120,31,128,56,31,128,56,31,134,24,31,134,24,31,142,0, + 31,142,0,31,158,0,31,254,0,31,254,0,31,158,0,31, + 142,0,31,134,24,31,134,24,31,134,24,31,128,56,31,128, + 56,31,128,120,31,129,248,255,255,248,255,255,248,21,25,75, + 23,1,0,255,255,248,255,255,248,31,193,248,31,128,248,31, + 128,120,31,128,56,31,128,24,31,131,24,31,131,24,31,135, + 8,31,135,0,31,159,0,31,255,0,31,255,0,31,143,0, + 31,135,0,31,131,0,31,131,0,31,131,0,31,128,0,31, + 128,0,31,128,0,31,128,0,255,248,0,255,248,0,25,25, + 100,26,1,0,0,126,12,0,3,255,220,0,7,193,252,0, + 15,128,124,0,31,0,60,0,63,0,28,0,126,0,28,0, + 126,0,12,0,254,0,12,0,254,0,4,0,254,0,0,0, + 252,0,0,0,252,0,0,0,252,0,0,0,252,7,255,128, + 252,7,255,128,252,0,124,0,254,0,124,0,126,0,124,0, + 126,0,124,0,63,0,252,0,31,0,252,0,15,129,220,0, + 7,255,28,0,0,252,12,0,26,25,100,28,1,0,255,243, + 255,192,255,243,255,192,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,255, + 254,0,31,255,254,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,255,243,255,192,255,243, + 255,192,12,25,50,14,1,0,255,240,255,240,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,255,240,255,240,20,25,75,20,0,0, + 0,255,240,0,255,240,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,24,31,128,126,31,128,126,31,128, + 254,31,128,254,31,128,254,31,128,252,31,0,96,63,0,96, + 62,0,56,254,0,63,248,0,15,224,0,25,25,100,27,1, + 0,255,243,255,128,255,243,255,128,31,128,126,0,31,128,120, + 0,31,128,240,0,31,129,224,0,31,129,192,0,31,131,128, + 0,31,135,0,0,31,143,0,0,31,159,0,0,31,191,128, + 0,31,255,192,0,31,239,192,0,31,239,224,0,31,199,224, + 0,31,135,240,0,31,131,248,0,31,129,248,0,31,129,252, + 0,31,128,252,0,31,128,254,0,31,128,255,0,255,243,255, + 128,255,243,255,128,21,25,75,23,1,0,255,240,0,255,240, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,24,31,128, + 24,31,128,24,31,128,56,31,128,56,31,128,120,31,129,248, + 255,255,248,255,255,248,31,25,100,32,0,0,127,224,7,254, + 127,240,15,254,15,240,15,240,15,240,15,240,13,248,27,240, + 13,248,27,240,13,248,27,240,12,252,59,240,12,252,51,240, + 12,252,51,240,12,124,115,240,12,126,99,240,12,126,99,240, + 12,62,227,240,12,63,195,240,12,63,195,240,12,31,195,240, + 12,31,131,240,12,31,131,240,12,15,131,240,12,15,3,240, + 12,15,3,240,30,15,3,240,255,198,31,254,255,198,31,254, + 27,25,100,27,0,0,255,128,127,224,255,192,127,224,63,224, + 15,0,15,224,6,0,15,240,6,0,15,248,6,0,15,252, + 6,0,13,254,6,0,12,254,6,0,12,255,6,0,12,127, + 134,0,12,63,198,0,12,31,230,0,12,15,230,0,12,15, + 246,0,12,7,254,0,12,3,254,0,12,1,254,0,12,0, + 254,0,12,0,126,0,12,0,126,0,12,0,62,0,30,0, + 30,0,255,192,14,0,255,192,6,0,24,25,75,26,1,0, + 0,126,0,3,255,192,15,193,240,31,128,248,63,0,252,62, + 0,124,126,0,126,126,0,126,252,0,63,252,0,63,252,0, + 63,252,0,63,252,0,63,252,0,63,252,0,63,252,0,63, + 252,0,63,126,0,126,126,0,126,62,0,124,63,0,252,31, + 128,248,15,193,240,3,255,192,0,126,0,22,25,75,24,1, + 0,255,255,128,255,255,224,31,131,240,31,129,248,31,128,252, + 31,128,252,31,128,252,31,128,252,31,128,252,31,128,252,31, + 129,248,31,131,240,31,255,224,31,255,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,255,240,0,255,240,0,25,31,124,26, + 1,250,0,126,0,0,3,255,192,0,15,193,240,0,31,128, + 248,0,63,0,252,0,62,0,124,0,126,0,126,0,126,0, + 126,0,252,0,63,0,252,0,63,0,252,0,63,0,252,0, + 63,0,252,0,63,0,252,0,63,0,252,0,63,0,252,60, + 63,0,252,254,63,0,127,135,126,0,127,131,254,0,63,3, + 252,0,63,3,252,0,31,131,248,0,15,195,240,0,3,255, + 224,0,0,127,224,0,0,3,225,128,0,3,225,128,0,1, + 243,128,0,1,255,0,0,0,254,0,0,0,60,0,25,25, + 100,27,1,0,255,255,128,0,255,255,240,0,31,131,248,0, + 31,129,248,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,129,248,0,31,129,240,0, + 31,135,192,0,31,255,0,0,31,255,192,0,31,135,224,0, + 31,131,224,0,31,131,240,0,31,131,240,0,31,131,240,0, + 31,131,249,128,31,129,249,128,31,129,251,0,31,129,255,0, + 255,240,254,0,255,240,124,0,19,25,75,21,1,0,3,240, + 192,31,253,192,60,31,192,120,7,192,112,3,192,240,1,192, + 240,0,192,248,0,192,255,0,192,255,240,0,127,254,0,127, + 255,0,63,255,128,15,255,192,7,255,224,64,127,224,96,7, + 224,96,3,224,112,1,224,120,1,224,120,1,192,126,3,192, + 127,7,128,103,255,0,97,252,0,21,25,75,23,1,0,255, + 255,248,255,255,248,241,248,120,225,248,56,225,248,56,193,248, + 24,193,248,24,193,248,24,129,248,8,129,248,8,1,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1, + 248,0,1,248,0,1,248,0,1,248,0,1,248,0,1,248, + 0,1,248,0,15,255,128,15,255,128,26,25,100,28,1,0, + 255,240,255,192,255,240,255,192,31,128,30,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,28,0, + 15,192,24,0,15,224,56,0,7,248,240,0,3,255,224,0, + 0,255,192,0,25,25,100,25,0,0,255,224,255,128,255,224, + 255,128,63,128,62,0,31,128,28,0,31,128,28,0,31,192, + 24,0,15,192,56,0,15,192,48,0,7,224,112,0,7,224, + 112,0,7,240,96,0,3,240,224,0,3,240,192,0,1,248, + 192,0,1,249,192,0,1,249,128,0,0,255,128,0,0,255, + 0,0,0,255,0,0,0,127,0,0,0,126,0,0,0,62, + 0,0,0,62,0,0,0,60,0,0,0,28,0,0,32,25, + 100,32,0,0,255,223,249,255,255,223,249,255,63,7,224,124, + 63,7,224,56,31,131,224,48,31,131,240,112,31,131,240,112, + 15,193,240,96,15,195,248,96,15,195,248,224,7,195,248,192, + 7,231,248,192,7,230,252,192,7,230,253,128,3,254,125,128, + 3,252,127,128,3,252,127,128,1,252,63,0,1,248,63,0, + 1,248,63,0,0,248,62,0,0,248,30,0,0,240,30,0, + 0,112,28,0,0,112,12,0,24,25,75,24,0,0,255,227, + 255,255,227,255,63,128,252,31,192,120,31,192,112,15,224,224, + 7,224,192,7,241,192,3,255,128,3,255,0,1,255,0,0, + 254,0,0,254,0,0,127,0,0,127,128,0,255,128,1,223, + 192,3,143,224,3,143,224,7,7,240,14,3,240,30,3,248, + 63,3,252,255,239,255,255,239,255,24,25,75,24,0,0,255, + 241,255,255,241,255,63,128,124,31,192,56,31,192,112,15,224, + 112,15,224,224,7,240,192,3,241,192,3,249,128,1,251,128, + 1,255,0,0,255,0,0,126,0,0,126,0,0,126,0,0, + 126,0,0,126,0,0,126,0,0,126,0,0,126,0,0,126, + 0,0,126,0,3,255,192,3,255,192,19,25,75,21,1,0, + 127,255,224,127,255,224,126,15,224,120,15,224,112,31,192,112, + 31,128,96,63,128,96,127,0,64,126,0,0,254,0,1,252, + 0,1,252,0,3,248,0,3,240,0,7,240,0,15,224,32, + 15,224,96,31,192,96,31,128,96,63,128,224,127,0,224,127, + 1,224,254,7,224,255,255,224,255,255,224,8,29,29,13,3, + 252,255,255,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,255,255,16,25, + 50,20,2,0,240,0,248,0,120,0,124,0,60,0,62,0, + 30,0,31,0,15,0,15,128,7,128,7,192,3,192,3,224, + 1,224,1,240,0,240,0,248,0,120,0,124,0,60,0,62, + 0,30,0,30,0,15,8,29,29,13,1,252,255,255,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,255,255,16,14,28,20,2,11,3, + 192,7,224,7,224,15,240,15,240,15,240,30,120,30,120,60, + 60,60,60,124,62,120,30,248,31,240,15,16,3,6,16,0, + 251,255,255,255,255,255,255,7,6,6,11,2,17,96,240,248, + 124,30,6,18,16,48,20,1,0,15,240,0,63,252,0,120, + 126,0,124,62,0,124,62,0,56,62,0,0,62,0,3,254, + 0,31,190,0,126,62,0,124,62,0,252,62,0,252,62,0, + 252,127,64,127,255,192,63,143,128,19,25,75,21,0,0,255, + 0,0,255,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,63,0,31,255,128, + 31,207,192,31,135,192,31,3,224,31,3,224,31,3,224,31, + 3,224,31,3,224,31,3,224,31,3,224,31,3,192,31,7, + 192,31,143,128,29,255,0,24,124,0,15,16,32,17,1,0, + 3,240,15,252,62,62,124,62,124,62,248,28,248,0,248,0, + 248,0,248,0,252,2,252,6,126,6,63,28,31,248,7,224, + 20,25,75,22,1,0,0,127,128,0,127,128,0,31,128,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,15,207,128,31,239,128,62,63,128,124,31,128,120,31,128, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,31,128,124,31,128,124,127,128,63,239,240,15,143, + 240,16,16,32,18,1,0,3,224,15,248,60,60,120,30,120, + 30,248,31,248,31,255,255,255,255,248,0,248,0,252,3,124, + 6,63,14,31,252,7,240,15,25,50,13,0,0,0,240,3, + 252,7,158,15,62,15,62,31,28,31,0,31,0,31,0,255, + 240,255,240,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,255,224,255,224,20, + 25,75,20,1,249,0,1,224,0,3,240,7,255,240,31,124, + 224,62,62,0,124,31,0,124,31,0,124,31,0,124,31,0, + 124,31,0,62,62,0,31,126,0,31,248,0,124,0,0,248, + 0,0,255,252,0,255,255,0,63,255,0,31,255,128,127,255, + 128,240,7,128,240,7,128,248,15,0,127,254,0,15,240,0, + 20,25,75,22,1,0,254,0,0,254,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,62,0,62,255,128,63,255,128,63,143,192,63,7,192, + 63,7,192,62,7,192,62,7,192,62,7,192,62,7,192,62, + 7,192,62,7,192,62,7,192,62,7,192,255,159,240,255,159, + 240,9,25,50,12,2,0,28,0,62,0,62,0,62,0,28, + 0,0,0,0,0,0,0,0,0,254,0,254,0,62,0,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,255,128,255,128,12,32,64,12,253,249,0, + 224,1,240,1,240,1,240,0,224,0,0,0,0,0,0,0, + 0,7,240,7,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,113,240,249,224,249,224,251,192,127,128,30,0,20, + 25,75,22,1,0,254,0,0,254,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,63,224,62,63,224,62,15,0,62,14,0,62,60,0,62, + 112,0,62,248,0,63,252,0,63,254,0,63,126,0,62,63, + 0,62,31,128,62,31,192,62,15,224,255,191,240,255,191,240, + 10,25,50,12,1,0,254,0,254,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,255,192,255,192,29,16,64,31,1,0,254,126, + 31,0,254,255,63,192,63,255,255,192,63,159,231,224,63,15, + 195,224,62,15,131,224,62,15,131,224,62,15,131,224,62,15, + 131,224,62,15,131,224,62,15,131,224,62,15,131,224,62,15, + 131,224,62,15,131,224,255,191,239,248,255,191,239,248,20,16, + 48,22,1,0,254,62,0,254,255,128,63,255,128,63,143,192, + 63,7,192,62,7,192,62,7,192,62,7,192,62,7,192,62, + 7,192,62,7,192,62,7,192,62,7,192,62,7,192,255,159, + 240,255,159,240,17,16,48,19,1,0,3,224,0,15,248,0, + 62,62,0,124,31,0,124,31,0,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,124,31,0,124,31, + 0,62,62,0,15,248,0,3,224,0,19,23,69,21,1,249, + 254,126,0,254,255,128,63,143,192,63,7,192,63,7,224,62, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,63,7,192,63,7,192,63,143,128,63,255,0,62,126,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,0,0,255, + 128,0,255,128,0,20,23,69,20,1,249,7,225,128,31,249, + 128,62,31,128,124,31,128,124,15,128,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,124,31,128,124, + 31,128,62,63,128,31,239,128,7,207,128,0,15,128,0,15, + 128,0,15,128,0,15,128,0,15,128,0,127,240,0,127,240, + 15,16,32,16,1,0,252,124,252,254,61,254,61,190,63,62, + 62,28,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,255,192,255,192,14,16,32,16,1,0,15,216,60,248, + 112,56,240,24,254,8,255,192,255,240,127,248,63,248,15,252, + 192,252,192,60,224,56,248,120,255,240,207,192,12,23,46,14, + 1,0,6,0,6,0,14,0,14,0,14,0,30,0,62,0, + 255,224,255,224,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,48,62,48,62,48,62,96,63,224,31,192,15,128, + 20,16,48,22,1,0,254,31,192,254,31,192,62,7,192,62, + 7,192,62,7,192,62,7,192,62,7,192,62,7,192,62,7, + 192,62,7,192,62,15,192,62,15,192,63,31,192,31,255,192, + 31,247,240,7,199,240,19,16,48,19,0,0,255,143,224,255, + 143,224,63,3,192,63,3,128,31,3,0,31,135,0,15,134, + 0,15,198,0,7,204,0,7,236,0,3,248,0,3,248,0, + 1,248,0,1,240,0,0,240,0,0,224,0,27,16,64,29, + 1,0,255,191,239,224,255,191,239,224,126,31,131,192,62,15, + 131,128,63,15,131,0,31,15,195,0,31,143,198,0,15,159, + 230,0,15,155,230,0,15,251,236,0,7,241,252,0,7,241, + 248,0,3,225,248,0,3,224,240,0,1,192,240,0,1,192, + 96,0,19,16,48,19,0,0,255,223,224,255,223,224,63,7, + 0,31,142,0,31,220,0,15,248,0,7,240,0,3,240,0, + 1,248,0,3,252,0,7,254,0,14,126,0,28,63,0,60, + 63,128,255,127,224,255,127,224,19,23,69,19,0,249,255,143, + 224,255,143,224,63,3,128,63,3,128,31,3,0,31,135,0, + 15,134,0,15,198,0,7,204,0,7,236,0,3,248,0,3, + 248,0,1,248,0,1,240,0,0,240,0,0,224,0,0,96, + 0,112,192,0,248,192,0,249,128,0,255,0,0,127,0,0, + 60,0,0,14,16,32,16,1,0,127,252,127,252,112,252,97, + 248,97,248,67,240,7,224,7,224,15,192,31,128,31,12,63, + 12,126,28,124,28,255,252,255,252,8,30,30,13,3,252,3, + 14,28,60,60,60,60,60,60,60,60,60,60,56,240,248,60, + 60,60,60,60,60,60,60,60,60,60,28,14,3,4,25,25, + 20,8,0,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,8,28,28,13, + 1,253,224,120,60,60,60,60,60,60,60,60,60,60,28,15, + 31,60,60,60,60,60,60,60,60,60,60,60,120,224,16,6, + 12,20,2,6,14,4,63,142,127,255,255,254,113,252,32,112, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,0,0,0,9,1,1,6,25,25,10,2,249,120,252,252, + 252,252,120,0,0,48,48,48,48,48,48,120,120,120,120,124, + 252,252,252,252,252,120,15,22,44,19,1,253,0,6,0,6, + 0,12,3,252,14,124,60,62,124,62,120,126,248,126,248,220, + 248,192,249,128,253,128,255,2,255,6,126,6,63,28,31,248, + 15,224,24,0,24,0,48,0,17,24,72,19,1,0,1,248, + 0,7,252,0,15,142,0,15,15,0,31,31,0,31,31,0, + 31,31,0,31,14,0,15,0,0,15,0,0,7,128,0,127, + 248,0,127,248,0,7,128,0,7,128,0,7,128,0,3,128, + 0,3,129,128,123,3,128,255,199,0,199,255,0,199,254,0, + 253,254,0,120,124,0,16,16,32,19,1,3,99,198,247,239, + 255,254,127,252,60,62,120,30,112,14,112,14,112,14,112,14, + 120,30,60,60,127,254,255,255,247,239,99,198,19,24,72,19, + 0,0,255,31,224,255,31,224,124,7,128,62,7,0,62,7, + 0,31,6,0,31,14,0,15,140,0,15,140,0,7,216,0, + 7,216,0,3,240,0,31,254,0,31,254,0,1,224,0,1, + 224,0,31,254,0,31,254,0,1,224,0,1,224,0,1,224, + 0,1,224,0,15,252,0,15,252,0,4,25,25,20,8,0, + 240,240,240,240,240,240,240,240,240,240,0,0,0,0,0,240, + 240,240,240,240,240,240,240,240,240,12,29,58,16,2,253,31, + 0,115,128,99,192,227,192,227,192,241,128,120,0,124,0,62, + 0,30,0,63,0,111,128,199,192,227,224,225,224,240,240,120, + 112,124,112,62,96,31,192,15,128,7,192,3,224,97,224,240, + 224,240,224,240,224,121,192,63,0,11,5,10,11,0,18,96, + 192,241,224,241,224,241,224,96,192,24,25,75,25,1,0,0, + 255,0,3,255,192,7,129,224,30,0,112,24,0,24,48,0, + 12,112,127,14,96,243,134,97,193,134,227,193,135,195,128,131, + 195,128,3,195,128,3,195,128,3,195,128,3,195,128,7,193, + 192,134,225,225,134,96,255,12,112,60,28,56,0,56,28,0, + 112,15,129,192,3,255,128,0,254,0,11,15,30,12,0,10, + 63,0,227,192,241,192,227,192,15,192,113,192,225,192,227,192, + 247,224,253,224,0,0,0,0,0,0,255,224,255,224,12,11, + 22,16,2,3,4,16,12,48,24,96,56,224,113,192,243,192, + 113,192,56,224,24,96,12,48,4,16,16,10,20,20,2,3, + 255,255,255,255,255,255,255,255,0,15,0,15,0,15,0,15, + 0,15,0,15,8,4,4,11,1,6,255,255,255,255,23,25, + 75,24,0,0,0,254,0,3,255,128,7,1,224,12,0,112, + 24,0,56,48,0,24,97,254,12,96,231,12,192,227,142,192, + 227,134,192,227,134,192,231,6,192,252,6,192,238,6,192,231, + 6,192,231,6,192,227,134,96,227,140,99,241,204,48,0,24, + 24,0,24,28,0,112,7,0,224,3,255,128,0,252,0,11, + 3,6,11,0,18,255,224,255,224,255,224,9,10,20,13,2, + 13,62,0,127,0,99,0,193,128,193,128,193,128,193,128,99, + 0,127,0,62,0,16,17,34,20,2,0,3,192,3,192,3, + 192,3,192,255,255,255,255,255,255,255,255,3,192,3,192,3, + 192,3,192,0,0,255,255,255,255,255,255,255,255,10,14,28, + 11,0,9,63,0,99,128,193,192,241,192,241,192,113,192,3, + 128,7,0,14,0,24,64,48,64,127,192,255,192,255,192,11, + 14,28,11,0,9,63,0,115,192,113,192,33,192,1,192,3, + 128,31,0,3,192,1,224,113,224,241,224,225,224,99,192,63, + 0,7,6,6,11,2,17,12,30,62,124,240,192,20,23,69, + 22,1,249,254,63,192,254,63,192,62,7,192,62,7,192,62, + 7,192,62,7,192,62,7,192,62,7,192,62,7,192,62,7, + 192,62,15,192,62,15,192,63,31,192,63,255,192,63,247,240, + 55,199,240,48,0,0,48,0,0,120,0,0,120,0,0,120, + 0,0,120,0,0,48,0,0,21,25,75,25,1,0,15,255, + 248,63,255,248,127,227,192,127,227,192,255,227,192,255,227,192, + 255,227,192,255,227,192,127,227,192,127,227,192,63,227,192,31, + 227,192,7,227,192,1,227,192,1,227,192,1,227,192,1,227, + 192,1,227,192,1,227,192,1,227,192,1,227,192,1,227,192, + 1,227,192,15,255,248,15,255,248,6,6,6,9,1,5,120, + 252,252,252,252,120,7,7,7,11,1,249,24,48,124,14,14, + 220,120,9,14,28,11,1,9,12,0,252,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,255,128,11,15,30,12,0,10,14,0,63,128,113,192, + 241,224,224,224,224,224,224,224,241,224,113,192,63,128,14,0, + 0,0,0,0,127,224,127,224,12,11,22,16,2,3,130,0, + 195,0,97,128,113,192,56,224,60,240,56,224,113,192,97,128, + 195,0,130,0,25,23,92,28,1,0,12,0,56,0,252,0, + 48,0,28,0,112,0,28,0,224,0,28,0,192,0,28,1, + 192,0,28,1,128,0,28,3,128,0,28,7,0,0,28,7, + 2,0,28,14,6,0,28,12,14,0,28,28,30,0,255,184, + 62,0,0,56,110,0,0,112,206,0,0,97,142,0,0,227, + 14,0,0,195,255,128,1,192,14,0,3,128,14,0,3,0, + 14,0,7,0,63,128,25,23,92,28,1,0,12,0,56,0, + 252,0,112,0,28,0,112,0,28,0,224,0,28,0,192,0, + 28,1,192,0,28,1,128,0,28,3,128,0,28,7,0,0, + 28,6,126,0,28,14,199,0,28,13,135,128,28,29,227,128, + 255,185,231,128,0,56,231,128,0,112,15,0,0,96,14,0, + 0,224,28,0,1,192,48,128,1,192,96,128,3,128,255,128, + 3,1,255,128,7,1,255,128,26,23,92,28,0,0,63,0, + 28,0,115,192,56,0,113,192,56,0,33,192,112,0,1,192, + 96,0,3,128,224,0,31,0,192,0,3,193,192,0,1,227, + 128,0,113,227,129,0,241,231,3,0,225,230,7,0,99,206, + 15,0,63,28,31,0,0,28,55,0,0,56,103,0,0,48, + 199,0,0,113,135,0,0,97,255,192,0,224,7,0,1,192, + 7,0,1,192,7,0,3,128,31,192,15,25,50,16,1,249, + 3,192,7,224,7,224,7,224,7,224,3,192,0,0,0,0, + 1,128,1,128,1,128,3,128,7,0,31,0,62,0,126,0, + 124,0,252,124,252,124,252,126,252,124,124,60,126,60,63,240, + 15,192,25,31,124,25,0,0,0,48,0,0,0,120,0,0, + 0,124,0,0,0,62,0,0,0,15,0,0,0,3,0,0, + 0,0,0,0,0,28,0,0,0,30,0,0,0,62,0,0, + 0,63,0,0,0,127,0,0,0,127,128,0,0,127,128,0, + 0,255,128,0,0,207,192,0,1,207,192,0,1,143,192,0, + 1,135,224,0,3,135,224,0,3,7,240,0,7,3,240,0, + 7,255,240,0,7,255,248,0,14,1,248,0,12,1,252,0, + 28,0,252,0,28,0,254,0,62,0,254,0,255,131,255,128, + 255,131,255,128,25,32,128,25,0,0,0,1,128,0,0,3, + 192,0,0,7,192,0,0,15,128,0,0,30,0,0,0,24, + 0,0,0,0,0,0,0,28,0,0,0,28,0,0,0,30, + 0,0,0,62,0,0,0,63,0,0,0,127,0,0,0,127, + 128,0,0,127,128,0,0,255,128,0,0,207,192,0,1,207, + 192,0,1,143,192,0,1,135,224,0,3,135,224,0,3,7, + 240,0,7,3,240,0,7,255,240,0,7,255,248,0,14,1, + 248,0,12,1,252,0,28,0,252,0,28,0,254,0,62,0, + 254,0,255,131,255,128,255,131,255,128,25,31,124,25,0,0, + 0,28,0,0,0,62,0,0,0,127,0,0,0,227,128,0, + 1,128,192,0,0,0,0,0,0,28,0,0,0,28,0,0, + 0,30,0,0,0,62,0,0,0,63,0,0,0,127,0,0, + 0,127,128,0,0,127,128,0,0,255,128,0,0,207,192,0, + 1,207,192,0,1,143,192,0,1,135,224,0,3,135,224,0, + 3,7,240,0,7,3,240,0,7,255,240,0,7,255,248,0, + 14,1,248,0,12,1,252,0,28,0,252,0,28,0,254,0, + 62,0,254,0,255,131,255,128,255,131,255,128,25,31,124,25, + 0,0,0,56,96,0,0,127,224,0,0,255,192,0,0,195, + 128,0,0,0,0,0,0,0,0,0,0,28,0,0,0,28, + 0,0,0,30,0,0,0,62,0,0,0,63,0,0,0,127, + 0,0,0,127,128,0,0,127,128,0,0,255,128,0,0,207, + 192,0,1,207,192,0,1,143,192,0,1,135,224,0,3,135, + 224,0,3,7,240,0,7,3,240,0,7,255,240,0,7,255, + 248,0,14,1,248,0,12,1,252,0,28,0,252,0,28,0, + 254,0,62,0,254,0,255,131,255,128,255,131,255,128,25,31, + 124,25,0,0,0,193,128,0,1,227,192,0,1,227,192,0, + 1,227,192,0,0,193,128,0,0,0,0,0,0,28,0,0, + 0,28,0,0,0,30,0,0,0,62,0,0,0,63,0,0, + 0,127,0,0,0,127,128,0,0,127,128,0,0,255,128,0, + 0,207,192,0,1,207,192,0,1,143,192,0,1,135,224,0, + 3,135,224,0,3,7,240,0,7,3,240,0,7,255,240,0, + 7,255,248,0,14,1,248,0,12,1,252,0,28,0,252,0, + 28,0,254,0,62,0,254,0,255,131,255,128,255,131,255,128, + 25,33,132,25,0,0,0,62,0,0,0,119,0,0,0,99, + 0,0,0,99,0,0,0,119,0,0,0,62,0,0,0,0, + 0,0,0,0,0,0,0,28,0,0,0,28,0,0,0,30, + 0,0,0,62,0,0,0,63,0,0,0,127,0,0,0,127, + 128,0,0,127,128,0,0,255,128,0,0,207,192,0,1,207, + 192,0,1,143,192,0,1,135,224,0,3,135,224,0,3,7, + 240,0,7,3,240,0,7,255,240,0,7,255,248,0,14,1, + 248,0,12,1,252,0,28,0,252,0,28,0,254,0,62,0, + 254,0,255,131,255,128,255,131,255,128,31,25,100,33,255,0, + 1,255,255,254,1,255,255,254,0,123,240,126,0,59,240,62, + 0,51,240,30,0,51,240,14,0,115,240,6,0,99,240,198, + 0,227,240,198,0,195,241,194,1,195,241,192,1,131,243,192, + 3,131,255,192,3,3,255,192,7,255,243,192,7,255,241,192, + 14,3,240,198,14,3,240,198,12,3,240,198,28,3,240,14, + 24,3,240,14,56,3,240,30,124,3,240,126,255,31,255,254, + 255,31,255,254,22,32,96,24,1,249,0,126,24,3,255,184, + 7,193,248,31,128,248,31,0,120,62,0,56,126,0,56,126, + 0,24,254,0,24,252,0,8,252,0,0,252,0,0,252,0, + 0,252,0,0,252,0,0,254,0,0,254,0,12,254,0,28, + 126,0,24,126,0,56,63,0,48,31,128,112,15,193,224,7, + 255,192,0,255,0,0,48,0,0,96,0,0,248,0,0,28, + 0,0,28,0,1,184,0,0,240,0,21,32,96,23,1,0, + 0,192,0,1,224,0,1,240,0,0,248,0,0,60,0,0, + 12,0,0,0,0,255,255,248,255,255,248,31,129,248,31,128, + 248,31,128,120,31,128,56,31,128,56,31,134,24,31,134,24, + 31,142,0,31,142,0,31,158,0,31,254,0,31,254,0,31, + 158,0,31,142,0,31,134,24,31,134,24,31,134,24,31,128, + 56,31,128,56,31,128,120,31,129,248,255,255,248,255,255,248, + 21,32,96,23,1,0,0,3,0,0,7,128,0,15,128,0, + 31,0,0,60,0,0,48,0,0,0,0,255,255,248,255,255, + 248,31,129,248,31,128,248,31,128,120,31,128,56,31,128,56, + 31,134,24,31,134,24,31,142,0,31,142,0,31,158,0,31, + 254,0,31,254,0,31,158,0,31,142,0,31,134,24,31,134, + 24,31,134,24,31,128,56,31,128,56,31,128,120,31,129,248, + 255,255,248,255,255,248,21,32,96,23,1,0,0,56,0,0, + 124,0,0,254,0,1,199,0,3,1,128,0,0,0,0,0, + 0,255,255,248,255,255,248,31,129,248,31,128,248,31,128,120, + 31,128,56,31,128,56,31,134,24,31,134,24,31,142,0,31, + 142,0,31,158,0,31,254,0,31,254,0,31,158,0,31,142, + 0,31,134,24,31,134,24,31,134,24,31,128,56,31,128,56, + 31,128,120,31,129,248,255,255,248,255,255,248,21,32,96,23, + 1,0,1,131,0,3,199,128,3,199,128,3,199,128,1,131, + 0,0,0,0,0,0,0,255,255,248,255,255,248,31,129,248, + 31,128,248,31,128,120,31,128,56,31,128,56,31,134,24,31, + 134,24,31,142,0,31,142,0,31,158,0,31,254,0,31,254, + 0,31,158,0,31,142,0,31,134,24,31,134,24,31,134,24, + 31,128,56,31,128,56,31,128,120,31,129,248,255,255,248,255, + 255,248,12,33,66,14,1,0,48,0,120,0,124,0,62,0, + 15,0,3,0,0,0,0,0,255,240,255,240,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,255,240,255,240,12,33,66,14,1,0, + 0,192,1,224,3,224,7,192,15,0,12,0,0,0,0,0, + 255,240,255,240,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,255,240, + 255,240,12,32,64,14,1,0,7,0,15,128,31,192,56,224, + 96,48,0,0,0,0,255,240,255,240,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,255,240,255,240,12,32,64,14,1,0,48,96, + 120,240,120,240,120,240,48,96,0,0,0,0,255,240,255,240, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,255,240,255,240,24,25, + 75,26,1,0,255,255,0,255,255,224,31,131,240,31,129,248, + 31,128,252,31,128,124,31,128,126,31,128,126,31,128,127,31, + 128,63,31,128,63,31,128,63,255,248,63,255,248,63,31,128, + 63,31,128,63,31,128,63,31,128,127,31,128,126,31,128,126, + 31,128,252,31,128,248,31,131,240,255,255,224,255,255,0,27, + 31,124,27,0,0,0,56,96,0,0,127,224,0,0,255,192, + 0,0,195,128,0,0,0,0,0,0,0,0,0,255,128,127, + 224,255,192,127,224,63,224,15,0,15,224,6,0,15,240,6, + 0,15,248,6,0,15,252,6,0,13,254,6,0,12,254,6, + 0,12,255,6,0,12,127,134,0,12,63,198,0,12,31,230, + 0,12,15,230,0,12,15,246,0,12,7,254,0,12,3,254, + 0,12,1,254,0,12,0,254,0,12,0,126,0,12,0,126, + 0,12,0,62,0,30,0,30,0,255,192,14,0,255,192,6, + 0,24,32,96,26,1,0,1,128,0,3,192,0,3,224,0, + 1,240,0,0,120,0,0,24,0,0,0,0,0,126,0,3, + 255,192,15,193,240,31,128,248,63,0,252,62,0,124,126,0, + 126,126,0,126,252,0,63,252,0,63,252,0,63,252,0,63, + 252,0,63,252,0,63,252,0,63,252,0,63,252,0,63,126, + 0,126,126,0,126,62,0,124,63,0,252,31,128,248,15,193, + 240,3,255,192,0,126,0,24,32,96,26,1,0,0,0,192, + 0,1,224,0,3,224,0,7,192,0,15,0,0,12,0,0, + 0,0,0,126,0,3,255,192,15,193,240,31,128,248,63,0, + 252,62,0,124,126,0,126,126,0,126,252,0,63,252,0,63, + 252,0,63,252,0,63,252,0,63,252,0,63,252,0,63,252, + 0,63,252,0,63,126,0,126,126,0,126,62,0,124,63,0, + 252,31,128,248,15,193,240,3,255,192,0,126,0,24,32,96, + 26,1,0,0,28,0,0,62,0,0,127,0,0,227,128,1, + 128,192,0,0,0,0,0,0,0,126,0,3,255,192,15,193, + 240,31,128,248,63,0,252,62,0,124,126,0,126,126,0,126, + 252,0,63,252,0,63,252,0,63,252,0,63,252,0,63,252, + 0,63,252,0,63,252,0,63,252,0,63,126,0,126,126,0, + 126,62,0,124,63,0,252,31,128,248,15,193,240,3,255,192, + 0,126,0,24,31,93,26,1,0,0,112,192,0,255,192,1, + 255,128,1,135,0,0,0,0,0,0,0,0,126,0,3,255, + 192,15,193,240,31,128,248,63,0,252,62,0,124,126,0,126, + 126,0,126,252,0,63,252,0,63,252,0,63,252,0,63,252, + 0,63,252,0,63,252,0,63,252,0,63,252,0,63,126,0, + 126,126,0,126,62,0,124,63,0,252,31,128,248,15,193,240, + 3,255,192,0,126,0,24,32,96,26,1,0,0,193,128,1, + 227,192,1,227,192,1,227,192,0,193,128,0,0,0,0,0, + 0,0,126,0,3,255,192,15,193,240,31,128,248,63,0,252, + 62,0,124,126,0,126,126,0,126,252,0,63,252,0,63,252, + 0,63,252,0,63,252,0,63,252,0,63,252,0,63,252,0, + 63,252,0,63,126,0,126,126,0,126,62,0,124,63,0,252, + 31,128,248,15,193,240,3,255,192,0,126,0,16,17,34,20, + 2,0,32,4,112,14,248,31,252,63,126,126,63,252,31,248, + 15,240,7,224,15,240,31,248,63,252,126,126,252,63,248,31, + 112,14,32,4,24,27,81,26,1,255,0,0,12,0,126,24, + 3,255,248,7,195,240,31,128,248,31,0,248,62,0,252,126, + 1,254,126,3,126,254,7,127,252,6,63,252,12,63,252,28, + 63,252,24,63,252,48,63,252,96,63,252,224,63,254,192,127, + 127,128,126,127,128,126,63,0,124,31,0,248,31,128,248,15, + 193,224,27,255,192,48,126,0,48,0,0,26,32,128,28,1, + 0,0,48,0,0,0,120,0,0,0,124,0,0,0,62,0, + 0,0,15,0,0,0,3,0,0,0,0,0,0,255,240,255, + 192,255,240,255,192,31,128,30,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,12,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,12,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,12,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,12,0,31,128,28,0,15,192,24, + 0,15,224,56,0,7,248,240,0,3,255,224,0,0,255,192, + 0,26,32,128,28,1,0,0,0,96,0,0,0,240,0,0, + 1,240,0,0,3,224,0,0,7,128,0,0,6,0,0,0, + 0,0,0,255,240,255,192,255,240,255,192,31,128,30,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,12,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,12,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,12,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,12,0,31, + 128,28,0,15,192,24,0,15,224,56,0,7,248,240,0,3, + 255,224,0,0,255,192,0,26,32,128,28,1,0,0,14,0, + 0,0,31,0,0,0,63,128,0,0,113,192,0,0,192,96, + 0,0,0,0,0,0,0,0,0,255,240,255,192,255,240,255, + 192,31,128,30,0,31,128,12,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,12,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,12,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,12,0,31,128,12,0,31,128,12, + 0,31,128,12,0,31,128,28,0,15,192,24,0,15,224,56, + 0,7,248,240,0,3,255,224,0,0,255,192,0,26,32,128, + 28,1,0,0,48,96,0,0,120,240,0,0,120,240,0,0, + 120,240,0,0,48,96,0,0,0,0,0,0,0,0,0,255, + 240,255,192,255,240,255,192,31,128,30,0,31,128,12,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,12,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,12,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,12,0,31, + 128,12,0,31,128,12,0,31,128,12,0,31,128,28,0,15, + 192,24,0,15,224,56,0,7,248,240,0,3,255,224,0,0, + 255,192,0,24,33,99,24,0,0,0,0,96,0,0,240,0, + 1,240,0,3,224,0,7,128,0,6,0,0,0,0,0,0, + 0,255,241,255,255,241,255,63,128,124,31,192,56,31,192,112, + 15,224,112,15,224,224,7,240,192,3,241,192,3,249,128,1, + 251,128,1,255,0,0,255,0,0,126,0,0,126,0,0,126, + 0,0,126,0,0,126,0,0,126,0,0,126,0,0,126,0, + 0,126,0,0,126,0,3,255,192,3,255,192,22,25,75,24, + 1,0,255,240,0,255,240,0,31,128,0,31,128,0,31,128, + 0,31,255,128,31,255,224,31,131,240,31,129,248,31,128,252, + 31,128,252,31,128,252,31,128,252,31,128,252,31,128,252,31, + 129,248,31,131,240,31,255,224,31,255,0,31,128,0,31,128, + 0,31,128,0,31,128,0,255,240,0,255,240,0,18,25,75, + 20,0,0,3,252,0,7,190,0,15,15,0,15,15,0,31, + 15,128,31,15,128,31,15,128,31,15,0,31,15,0,31,14, + 0,31,28,0,31,126,0,31,15,128,31,15,128,31,7,192, + 31,7,192,31,7,192,31,7,192,31,7,192,31,7,192,31, + 7,128,31,7,128,31,79,0,255,254,0,255,120,0,18,23, + 69,20,1,0,3,0,0,7,128,0,7,192,0,3,224,0, + 0,240,0,0,48,0,0,0,0,15,240,0,63,252,0,120, + 62,0,124,62,0,124,62,0,56,62,0,0,62,0,3,254, + 0,31,190,0,126,62,0,124,62,0,252,62,0,252,62,0, + 252,127,64,127,255,192,63,143,128,18,23,69,20,1,0,0, + 96,0,0,240,0,1,240,0,3,224,0,7,128,0,6,0, + 0,0,0,0,15,240,0,63,252,0,120,62,0,124,62,0, + 124,62,0,56,62,0,0,62,0,3,254,0,31,190,0,126, + 62,0,124,62,0,252,62,0,252,62,0,252,127,64,127,255, + 192,63,143,128,18,22,66,20,1,0,1,192,0,3,224,0, + 7,240,0,14,56,0,24,12,0,0,0,0,15,240,0,63, + 252,0,120,62,0,124,62,0,124,62,0,56,62,0,0,62, + 0,3,254,0,31,190,0,126,62,0,124,62,0,252,62,0, + 252,62,0,252,127,64,127,255,192,63,143,128,18,22,66,20, + 1,0,7,12,0,15,252,0,31,248,0,24,112,0,0,0, + 0,0,0,0,15,240,0,63,252,0,120,62,0,124,62,0, + 124,62,0,56,62,0,0,62,0,3,254,0,31,190,0,126, + 62,0,124,62,0,252,62,0,252,62,0,252,127,64,127,255, + 192,63,143,128,18,23,69,20,1,0,12,24,0,30,60,0, + 30,60,0,30,60,0,12,24,0,0,0,0,0,0,0,15, + 240,0,63,252,0,120,62,0,124,62,0,124,62,0,56,62, + 0,0,62,0,3,254,0,31,190,0,126,62,0,124,62,0, + 252,62,0,252,62,0,252,127,64,127,255,192,63,143,128,18, + 23,69,20,1,0,3,224,0,7,112,0,6,48,0,6,48, + 0,7,112,0,3,224,0,0,0,0,15,240,0,63,252,0, + 120,62,0,124,62,0,124,62,0,56,62,0,0,62,0,3, + 254,0,31,190,0,126,62,0,124,62,0,252,62,0,252,62, + 0,252,127,64,127,255,192,63,143,128,26,16,64,28,1,0, + 7,224,248,0,30,123,222,0,56,63,15,0,124,63,15,128, + 124,62,7,128,120,62,7,192,49,254,7,192,15,255,255,192, + 63,255,255,192,126,62,0,0,252,62,0,0,248,63,0,192, + 248,127,1,128,252,239,131,128,127,199,255,0,63,1,252,0, + 15,23,46,17,1,249,3,240,14,60,62,62,124,62,124,62, + 248,28,248,0,248,0,248,0,248,0,252,2,252,6,126,6, + 63,28,31,248,7,240,1,128,3,0,7,192,0,224,0,224, + 13,192,7,128,16,23,46,18,1,0,6,0,15,0,15,128, + 7,192,1,224,0,96,0,0,3,224,14,120,60,60,124,30, + 124,30,248,31,248,31,255,255,255,255,248,0,248,0,252,3, + 124,6,63,14,31,252,7,240,16,23,46,18,1,0,0,48, + 0,120,0,248,1,240,3,192,3,0,0,0,3,224,14,120, + 60,60,124,30,124,30,248,31,248,31,255,255,255,255,248,0, + 248,0,252,3,124,6,63,14,31,252,7,240,16,22,44,18, + 1,0,1,192,3,224,7,240,14,56,24,12,0,0,3,224, + 14,120,60,60,124,30,124,30,248,31,248,31,255,255,255,255, + 248,0,248,0,252,3,124,6,63,14,31,252,7,240,16,23, + 46,18,1,0,12,24,30,60,30,60,30,60,12,24,0,0, + 0,0,3,224,14,120,60,60,124,30,124,30,248,31,248,31, + 255,255,255,255,248,0,248,0,252,3,124,6,63,14,31,252, + 7,240,9,23,46,11,1,0,96,0,240,0,248,0,124,0, + 30,0,6,0,0,0,254,0,254,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,255,128,255,128,9,23,46,11,1,0,6,0,15,0, + 31,0,62,0,120,0,96,0,0,0,254,0,254,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,255,128,255,128,11,22,44,11,255,0, + 14,0,31,0,63,128,113,192,192,96,0,0,63,128,63,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,63,224,63,224,11,23,46,11, + 0,0,96,192,241,224,241,224,241,224,96,192,0,0,0,0, + 127,0,127,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,127,192,127,192, + 17,26,78,20,1,0,0,4,0,14,14,0,15,156,0,3, + 248,0,1,240,0,3,248,0,7,120,0,14,60,0,4,62, + 0,0,30,0,3,255,0,15,63,0,60,31,0,124,31,128, + 120,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,124,31,0,124,31,0,62,62,0,15,248, + 0,3,224,0,20,22,66,22,1,0,3,134,0,7,254,0, + 15,252,0,12,56,0,0,0,0,0,0,0,254,62,0,254, + 255,128,63,255,128,63,143,192,63,7,192,63,7,192,62,7, + 192,62,7,192,62,7,192,62,7,192,62,7,192,62,7,192, + 62,7,192,62,7,192,255,159,240,255,159,240,17,23,69,19, + 1,0,6,0,0,15,0,0,15,128,0,7,192,0,1,224, + 0,0,96,0,0,0,0,3,224,0,15,248,0,62,62,0, + 124,31,0,124,31,0,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,124,31,0,124,31,0,62,62, + 0,15,248,0,3,224,0,17,23,69,19,1,0,0,24,0, + 0,60,0,0,124,0,0,248,0,1,224,0,1,128,0,0, + 0,0,3,224,0,15,248,0,62,62,0,124,31,0,124,31, + 0,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 248,15,128,124,31,0,124,31,0,62,62,0,15,248,0,3, + 224,0,17,22,66,19,1,0,1,192,0,3,224,0,7,240, + 0,14,56,0,24,12,0,0,0,0,3,224,0,15,248,0, + 62,62,0,124,31,0,124,31,0,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,124,31,0,124,31, + 0,62,62,0,15,248,0,3,224,0,17,22,66,19,1,0, + 3,134,0,7,254,0,15,252,0,12,56,0,0,0,0,0, + 0,0,3,224,0,15,248,0,62,62,0,124,31,0,124,31, + 0,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 248,15,128,124,31,0,124,31,0,62,62,0,15,248,0,3, + 224,0,17,23,69,19,1,0,12,24,0,30,60,0,30,60, + 0,30,60,0,12,24,0,0,0,0,0,0,0,3,224,0, + 15,248,0,62,62,0,124,31,0,124,31,0,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,248,15,128,124,31, + 0,124,31,0,62,62,0,15,248,0,3,224,0,17,17,51, + 20,2,0,1,192,0,3,224,0,3,224,0,3,224,0,1, + 192,0,0,0,0,255,255,128,255,255,128,255,255,128,255,255, + 128,0,0,0,0,0,0,1,192,0,3,224,0,3,224,0, + 3,224,0,1,192,0,17,22,66,19,1,253,0,2,0,0, + 6,0,0,12,0,3,236,0,15,248,0,62,62,0,124,63, + 0,124,111,0,248,79,128,248,207,128,248,143,128,249,143,128, + 251,15,128,250,15,128,126,31,0,124,31,0,62,62,0,31, + 248,0,27,224,0,48,0,0,48,0,0,32,0,0,20,23, + 69,22,1,0,3,0,0,7,128,0,7,192,0,3,224,0, + 0,240,0,0,48,0,0,0,0,254,31,192,254,31,192,62, + 7,192,62,7,192,62,7,192,62,7,192,62,7,192,62,7, + 192,62,7,192,62,7,192,62,15,192,62,15,192,63,31,192, + 31,255,192,31,247,240,7,199,240,20,23,69,22,1,0,0, + 24,0,0,60,0,0,124,0,0,248,0,1,224,0,1,128, + 0,0,0,0,254,31,192,254,31,192,62,7,192,62,7,192, + 62,7,192,62,7,192,62,7,192,62,7,192,62,7,192,62, + 7,192,62,15,192,62,15,192,63,31,192,31,255,192,31,247, + 240,7,199,240,20,22,66,22,1,0,0,224,0,1,240,0, + 3,248,0,7,28,0,12,6,0,0,0,0,254,31,192,254, + 31,192,62,7,192,62,7,192,62,7,192,62,7,192,62,7, + 192,62,7,192,62,7,192,62,7,192,62,15,192,62,15,192, + 63,31,192,31,255,192,31,247,240,7,199,240,20,23,69,22, + 1,0,6,12,0,15,30,0,15,30,0,15,30,0,6,12, + 0,0,0,0,0,0,0,254,31,192,254,31,192,62,7,192, + 62,7,192,62,7,192,62,7,192,62,7,192,62,7,192,62, + 7,192,62,7,192,62,15,192,62,15,192,63,31,192,31,255, + 192,31,247,240,7,199,240,19,30,90,19,0,249,0,12,0, + 0,30,0,0,62,0,0,124,0,0,240,0,0,192,0,0, + 0,0,255,143,224,255,143,224,63,3,128,63,3,128,31,3, + 0,31,135,0,15,134,0,15,198,0,7,204,0,7,236,0, + 3,248,0,3,248,0,1,248,0,1,240,0,0,240,0,0, + 224,0,0,96,0,112,192,0,248,192,0,249,128,0,255,0, + 0,127,0,0,60,0,0,20,29,87,22,0,249,255,0,0, + 255,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 63,0,31,127,192,31,199,224,31,131,224,31,131,240,31,3, + 240,31,3,240,31,1,240,31,1,240,31,1,240,31,3,240, + 31,131,224,31,131,224,31,199,192,31,255,128,31,63,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,127,224, + 0,127,224,0,19,30,90,19,0,249,3,6,0,7,143,0, + 7,143,0,7,143,0,3,6,0,0,0,0,0,0,0,255, + 143,224,255,143,224,63,3,128,63,3,128,31,3,0,31,135, + 0,15,134,0,15,198,0,7,204,0,7,236,0,3,248,0, + 3,248,0,1,248,0,1,240,0,0,240,0,0,224,0,0, + 96,0,112,192,0,248,192,0,249,128,0,255,0,0,127,0, + 0,60,0,0}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--34-240-100-100-P-193-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 24 + Calculated Max Values w=17 h=25 x= 3 y=10 dx=20 dy= 0 ascent=25 len=72 + Font Bounding box w=39 h=53 x=-4 y=-13 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =24 descent= 0 + X Font ascent =24 descent= 0 + Max Font ascent =25 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB24n[846] U8G_SECTION(".progmem.u8g_font_ncenB24n") = { + 0,39,53,252,243,24,0,0,0,0,42,57,0,25,251,24, + 0,12,15,30,17,2,10,6,0,14,0,14,0,230,112,230, + 112,246,240,63,192,15,0,127,224,246,240,230,112,230,112,7, + 0,7,0,6,0,16,16,32,20,2,1,3,192,3,192,3, + 192,3,192,3,192,3,192,255,255,255,255,255,255,255,255,3, + 192,3,192,3,192,3,192,3,192,3,192,6,11,11,9,2, + 251,120,248,252,252,252,124,28,24,48,112,224,8,4,4,11, + 1,6,255,255,255,255,6,6,6,9,1,0,120,252,252,252, + 252,120,10,25,50,9,255,0,0,192,1,192,1,192,1,128, + 3,128,3,128,3,0,7,0,7,0,6,0,14,0,14,0, + 12,0,28,0,28,0,24,0,56,0,56,0,48,0,112,0, + 112,0,96,0,224,0,224,0,192,0,16,24,48,19,1,0, + 3,192,15,240,30,120,60,60,124,62,120,30,248,31,248,31, + 248,31,248,31,248,31,248,31,248,31,248,31,248,31,248,31, + 248,31,120,30,120,30,124,62,60,60,30,120,15,240,3,192, + 13,24,48,19,3,0,1,128,7,128,255,128,255,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,255,248,255,248,17,24,72,19,1,0,15,240,0,63, + 252,0,120,126,0,240,63,0,248,31,0,252,31,0,252,31, + 0,252,31,0,124,63,0,56,62,0,0,124,0,0,248,0, + 0,240,0,1,224,0,3,192,0,3,129,128,7,1,128,14, + 1,128,28,3,128,63,255,128,127,255,0,127,255,0,255,255, + 0,255,255,0,16,24,48,19,1,0,15,224,63,248,120,124, + 248,62,252,62,252,62,252,62,120,62,0,124,0,112,7,224, + 7,192,0,248,0,126,0,62,0,63,120,31,252,31,252,31, + 252,63,248,62,120,126,63,248,7,224,17,24,72,19,0,0, + 0,4,0,0,12,0,0,28,0,0,60,0,0,124,0,0, + 252,0,1,252,0,1,252,0,3,124,0,6,124,0,12,124, + 0,28,124,0,56,124,0,112,124,0,224,124,0,192,124,0, + 255,255,128,255,255,128,0,124,0,0,124,0,0,124,0,0, + 124,0,3,255,128,3,255,128,16,24,48,19,1,0,31,255, + 63,254,63,254,63,252,63,240,48,0,48,0,48,0,48,0, + 55,224,63,248,56,124,48,62,32,62,0,31,0,31,56,31, + 124,31,252,31,252,62,120,62,112,252,63,240,15,192,17,24, + 72,19,1,0,3,240,0,15,252,0,31,30,0,62,62,0, + 60,62,0,124,62,0,120,28,0,248,0,0,248,0,0,248, + 0,0,249,248,0,255,254,0,255,127,0,252,31,0,248,31, + 128,248,15,128,248,15,128,248,15,128,248,15,128,124,31,0, + 124,31,0,62,62,0,31,252,0,7,240,0,16,24,48,19, + 2,0,255,255,255,254,255,254,255,252,255,252,192,24,192,24, + 192,56,128,112,0,112,0,240,0,224,1,224,1,224,3,224, + 3,192,7,192,7,192,15,192,15,192,15,192,15,192,15,192, + 7,128,17,24,72,19,1,0,7,240,0,15,252,0,60,62, + 0,56,31,0,120,15,0,120,15,0,120,15,0,124,15,0, + 126,30,0,127,252,0,63,240,0,31,252,0,15,254,0,63, + 255,0,120,127,0,248,31,128,240,15,128,240,15,128,240,15, + 0,240,15,0,248,30,0,124,60,0,63,240,0,7,192,0, + 17,24,72,19,1,0,3,192,0,31,248,0,62,124,0,124, + 62,0,252,31,0,248,31,0,248,15,128,248,15,128,248,15, + 128,252,31,128,252,63,128,127,111,128,63,207,128,31,143,128, + 0,15,128,0,15,128,112,15,0,248,31,0,252,31,0,248, + 30,0,248,62,0,112,252,0,63,240,0,15,192,0}; +/* + Fontname: -Adobe-New Century Schoolbook-Bold-R-Normal--34-240-100-100-P-193-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=32 h=32 x= 8 y=17 dx=32 dy= 0 ascent=26 len=124 + Font Bounding box w=39 h=53 x=-4 y=-13 + Calculated Min Values x=-3 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =26 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenB24r[5937] U8G_SECTION(".progmem.u8g_font_ncenB24r") = { + 0,39,53,252,243,25,6,143,16,147,32,127,249,26,249,25, + 249,0,0,0,9,1,1,6,25,25,10,2,0,120,252,252, + 252,252,252,252,120,120,120,120,48,48,48,48,48,48,0,0, + 120,252,252,252,252,120,11,11,22,11,0,14,96,192,241,224, + 241,224,241,224,241,224,241,224,241,224,96,192,96,192,96,192, + 96,192,16,25,50,19,1,255,7,28,7,28,7,28,7,28, + 14,56,14,56,14,56,127,255,127,255,127,255,14,56,12,48, + 28,112,28,112,255,254,255,254,255,254,28,112,28,112,56,224, + 56,224,56,224,56,224,56,224,56,224,17,30,90,19,1,252, + 1,128,0,1,128,0,1,128,0,7,240,0,31,252,0,57, + 158,0,113,143,0,113,159,0,241,159,0,241,142,0,253,128, + 0,255,128,0,127,240,0,127,252,0,63,254,0,15,255,0, + 1,255,128,1,191,128,113,143,128,249,135,128,249,135,128,249, + 135,0,241,143,0,121,158,0,63,252,0,7,224,0,1,128, + 0,1,128,0,1,128,0,1,128,0,26,24,96,27,0,0, + 0,0,24,0,7,192,48,0,15,96,112,0,30,57,224,0, + 60,31,96,0,60,16,192,0,120,16,128,0,120,17,128,0, + 240,49,0,0,240,35,0,0,240,98,0,0,240,198,31,0, + 123,140,61,128,63,12,120,192,0,24,240,64,0,17,240,64, + 0,49,224,64,0,33,224,192,0,99,224,192,0,195,193,128, + 0,195,193,128,1,131,195,0,1,129,230,0,3,0,252,0, + 24,25,75,28,2,0,0,124,0,1,255,0,3,199,0,7, + 135,128,7,131,128,7,131,128,7,199,128,7,199,0,7,239, + 0,7,252,0,3,248,0,7,241,255,15,249,255,61,248,124, + 120,252,56,120,254,112,248,126,96,248,63,224,252,63,192,252, + 31,193,254,15,227,255,15,243,127,255,254,63,243,254,15,128, + 252,4,11,11,8,2,14,96,240,240,240,240,240,240,96,96, + 96,96,9,27,54,13,2,253,3,128,7,0,14,0,28,0, + 28,0,56,0,56,0,120,0,120,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,240,0,112,0,120,0, + 56,0,56,0,28,0,28,0,14,0,7,0,3,128,9,27, + 54,13,1,253,224,0,48,0,56,0,28,0,28,0,14,0, + 14,0,15,0,7,0,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,15,0,15,0,14,0,14,0, + 28,0,28,0,56,0,112,0,192,0,12,15,30,17,2,10, + 6,0,14,0,14,0,230,112,230,112,246,240,63,192,15,0, + 127,224,246,240,230,112,230,112,7,0,7,0,6,0,16,16, + 32,20,2,1,3,192,3,192,3,192,3,192,3,192,3,192, + 255,255,255,255,255,255,255,255,3,192,3,192,3,192,3,192, + 3,192,3,192,6,11,11,9,2,251,120,248,252,252,252,124, + 28,24,48,112,224,8,4,4,11,1,6,255,255,255,255,6, + 6,6,9,1,0,120,252,252,252,252,120,10,25,50,9,255, + 0,0,192,1,192,1,192,1,128,3,128,3,128,3,0,7, + 0,7,0,6,0,14,0,14,0,12,0,28,0,28,0,24, + 0,56,0,56,0,48,0,112,0,112,0,96,0,224,0,224, + 0,192,0,16,24,48,19,1,0,3,192,15,240,30,120,60, + 60,124,62,120,30,248,31,248,31,248,31,248,31,248,31,248, + 31,248,31,248,31,248,31,248,31,248,31,120,30,120,30,124, + 62,60,60,30,120,15,240,3,192,13,24,48,19,3,0,1, + 128,7,128,255,128,255,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,255,248,255,248,17, + 24,72,19,1,0,15,240,0,63,252,0,120,126,0,240,63, + 0,248,31,0,252,31,0,252,31,0,252,31,0,124,63,0, + 56,62,0,0,124,0,0,248,0,0,240,0,1,224,0,3, + 192,0,3,129,128,7,1,128,14,1,128,28,3,128,63,255, + 128,127,255,0,127,255,0,255,255,0,255,255,0,16,24,48, + 19,1,0,15,224,63,248,120,124,248,62,252,62,252,62,252, + 62,120,62,0,124,0,112,7,224,7,192,0,248,0,126,0, + 62,0,63,120,31,252,31,252,31,252,63,248,62,120,126,63, + 248,7,224,17,24,72,19,0,0,0,4,0,0,12,0,0, + 28,0,0,60,0,0,124,0,0,252,0,1,252,0,1,252, + 0,3,124,0,6,124,0,12,124,0,28,124,0,56,124,0, + 112,124,0,224,124,0,192,124,0,255,255,128,255,255,128,0, + 124,0,0,124,0,0,124,0,0,124,0,3,255,128,3,255, + 128,16,24,48,19,1,0,31,255,63,254,63,254,63,252,63, + 240,48,0,48,0,48,0,48,0,55,224,63,248,56,124,48, + 62,32,62,0,31,0,31,56,31,124,31,252,31,252,62,120, + 62,112,252,63,240,15,192,17,24,72,19,1,0,3,240,0, + 15,252,0,31,30,0,62,62,0,60,62,0,124,62,0,120, + 28,0,248,0,0,248,0,0,248,0,0,249,248,0,255,254, + 0,255,127,0,252,31,0,248,31,128,248,15,128,248,15,128, + 248,15,128,248,15,128,124,31,0,124,31,0,62,62,0,31, + 252,0,7,240,0,16,24,48,19,2,0,255,255,255,254,255, + 254,255,252,255,252,192,24,192,24,192,56,128,112,0,112,0, + 240,0,224,1,224,1,224,3,224,3,192,7,192,7,192,15, + 192,15,192,15,192,15,192,15,192,7,128,17,24,72,19,1, + 0,7,240,0,15,252,0,60,62,0,56,31,0,120,15,0, + 120,15,0,120,15,0,124,15,0,126,30,0,127,252,0,63, + 240,0,31,252,0,15,254,0,63,255,0,120,127,0,248,31, + 128,240,15,128,240,15,128,240,15,0,240,15,0,248,30,0, + 124,60,0,63,240,0,7,192,0,17,24,72,19,1,0,3, + 192,0,31,248,0,62,124,0,124,62,0,252,31,0,248,31, + 0,248,15,128,248,15,128,248,15,128,252,31,128,252,63,128, + 127,111,128,63,207,128,31,143,128,0,15,128,0,15,128,112, + 15,0,248,31,0,252,31,0,248,30,0,248,62,0,112,252, + 0,63,240,0,15,192,0,6,16,16,9,2,0,120,252,252, + 252,252,120,0,0,0,0,120,252,252,252,252,120,6,21,21, + 9,2,251,120,252,252,252,252,120,0,0,0,0,120,248,252, + 252,252,124,28,24,48,112,224,16,18,36,20,2,0,0,3, + 0,15,0,127,1,255,7,252,31,240,127,128,254,0,248,0, + 252,0,255,128,63,224,15,248,3,254,0,127,0,31,0,7, + 0,1,16,10,20,20,2,3,255,255,255,255,255,255,255,255, + 0,0,0,0,255,255,255,255,255,255,255,255,16,18,36,20, + 2,0,192,0,240,0,254,0,255,128,63,224,15,248,1,254, + 0,127,0,31,0,63,1,255,7,252,31,240,127,192,254,0, + 248,0,224,0,128,0,14,25,50,16,1,0,15,192,63,240, + 113,248,240,248,248,252,248,252,248,252,112,252,0,248,1,248, + 1,240,3,224,3,128,7,0,7,0,6,0,6,0,0,0, + 0,0,15,0,31,128,31,128,31,128,31,128,15,0,23,25, + 75,25,0,0,0,127,0,1,255,192,7,227,240,15,0,120, + 30,0,28,28,0,12,56,60,6,48,255,230,113,227,230,113, + 227,198,99,195,198,227,131,198,231,135,134,231,135,140,231,7, + 140,231,15,28,231,15,24,227,31,112,115,247,224,48,227,204, + 56,0,28,28,0,120,15,1,240,7,255,224,1,255,0,25, + 25,100,25,0,0,0,28,0,0,0,28,0,0,0,30,0, + 0,0,62,0,0,0,63,0,0,0,127,0,0,0,127,128, + 0,0,127,128,0,0,255,128,0,0,207,192,0,1,207,192, + 0,1,143,192,0,1,135,224,0,3,135,224,0,3,7,240, + 0,7,3,240,0,7,255,240,0,7,255,248,0,14,1,248, + 0,12,1,252,0,28,0,252,0,28,0,254,0,62,0,254, + 0,255,131,255,128,255,131,255,128,23,25,75,25,1,0,255, + 255,128,255,255,224,31,131,240,31,129,248,31,129,248,31,128, + 252,31,128,252,31,128,252,31,128,248,31,129,248,31,129,240, + 31,135,224,31,255,0,31,255,192,31,131,240,31,128,252,31, + 128,252,31,128,254,31,128,126,31,128,254,31,128,252,31,128, + 252,31,131,248,255,255,240,255,255,192,22,25,75,24,1,0, + 0,126,24,3,255,184,7,193,248,31,128,248,31,0,120,62, + 0,56,126,0,56,126,0,24,254,0,24,252,0,8,252,0, + 0,252,0,0,252,0,0,252,0,0,252,0,0,254,0,0, + 254,0,12,254,0,28,126,0,24,126,0,56,63,0,48,31, + 128,112,15,193,224,7,255,192,0,255,0,24,25,75,26,1, + 0,255,255,0,255,255,224,31,131,240,31,129,248,31,128,252, + 31,128,126,31,128,126,31,128,127,31,128,63,31,128,63,31, + 128,63,31,128,63,31,128,63,31,128,63,31,128,63,31,128, + 63,31,128,127,31,128,126,31,128,126,31,128,126,31,128,252, + 31,129,248,31,131,240,255,255,224,255,255,0,21,25,75,23, + 1,0,255,255,248,255,255,248,31,129,248,31,128,248,31,128, + 120,31,128,56,31,128,56,31,134,24,31,134,24,31,142,0, + 31,142,0,31,158,0,31,254,0,31,254,0,31,158,0,31, + 142,0,31,134,24,31,134,24,31,134,24,31,128,56,31,128, + 56,31,128,120,31,129,248,255,255,248,255,255,248,21,25,75, + 23,1,0,255,255,248,255,255,248,31,193,248,31,128,248,31, + 128,120,31,128,56,31,128,24,31,131,24,31,131,24,31,135, + 8,31,135,0,31,159,0,31,255,0,31,255,0,31,143,0, + 31,135,0,31,131,0,31,131,0,31,131,0,31,128,0,31, + 128,0,31,128,0,31,128,0,255,248,0,255,248,0,25,25, + 100,26,1,0,0,126,12,0,3,255,220,0,7,193,252,0, + 15,128,124,0,31,0,60,0,63,0,28,0,126,0,28,0, + 126,0,12,0,254,0,12,0,254,0,4,0,254,0,0,0, + 252,0,0,0,252,0,0,0,252,0,0,0,252,7,255,128, + 252,7,255,128,252,0,124,0,254,0,124,0,126,0,124,0, + 126,0,124,0,63,0,252,0,31,0,252,0,15,129,220,0, + 7,255,28,0,0,252,12,0,26,25,100,28,1,0,255,243, + 255,192,255,243,255,192,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,255, + 254,0,31,255,254,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,31,128,126,0,31,128, + 126,0,31,128,126,0,31,128,126,0,255,243,255,192,255,243, + 255,192,12,25,50,14,1,0,255,240,255,240,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,255,240,255,240,20,25,75,20,0,0, + 0,255,240,0,255,240,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,24,31,128,126,31,128,126,31,128, + 254,31,128,254,31,128,254,31,128,252,31,0,96,63,0,96, + 62,0,56,254,0,63,248,0,15,224,0,25,25,100,27,1, + 0,255,243,255,128,255,243,255,128,31,128,126,0,31,128,120, + 0,31,128,240,0,31,129,224,0,31,129,192,0,31,131,128, + 0,31,135,0,0,31,143,0,0,31,159,0,0,31,191,128, + 0,31,255,192,0,31,239,192,0,31,239,224,0,31,199,224, + 0,31,135,240,0,31,131,248,0,31,129,248,0,31,129,252, + 0,31,128,252,0,31,128,254,0,31,128,255,0,255,243,255, + 128,255,243,255,128,21,25,75,23,1,0,255,240,0,255,240, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,24,31,128, + 24,31,128,24,31,128,56,31,128,56,31,128,120,31,129,248, + 255,255,248,255,255,248,31,25,100,32,0,0,127,224,7,254, + 127,240,15,254,15,240,15,240,15,240,15,240,13,248,27,240, + 13,248,27,240,13,248,27,240,12,252,59,240,12,252,51,240, + 12,252,51,240,12,124,115,240,12,126,99,240,12,126,99,240, + 12,62,227,240,12,63,195,240,12,63,195,240,12,31,195,240, + 12,31,131,240,12,31,131,240,12,15,131,240,12,15,3,240, + 12,15,3,240,30,15,3,240,255,198,31,254,255,198,31,254, + 27,25,100,27,0,0,255,128,127,224,255,192,127,224,63,224, + 15,0,15,224,6,0,15,240,6,0,15,248,6,0,15,252, + 6,0,13,254,6,0,12,254,6,0,12,255,6,0,12,127, + 134,0,12,63,198,0,12,31,230,0,12,15,230,0,12,15, + 246,0,12,7,254,0,12,3,254,0,12,1,254,0,12,0, + 254,0,12,0,126,0,12,0,126,0,12,0,62,0,30,0, + 30,0,255,192,14,0,255,192,6,0,24,25,75,26,1,0, + 0,126,0,3,255,192,15,193,240,31,128,248,63,0,252,62, + 0,124,126,0,126,126,0,126,252,0,63,252,0,63,252,0, + 63,252,0,63,252,0,63,252,0,63,252,0,63,252,0,63, + 252,0,63,126,0,126,126,0,126,62,0,124,63,0,252,31, + 128,248,15,193,240,3,255,192,0,126,0,22,25,75,24,1, + 0,255,255,128,255,255,224,31,131,240,31,129,248,31,128,252, + 31,128,252,31,128,252,31,128,252,31,128,252,31,128,252,31, + 129,248,31,131,240,31,255,224,31,255,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,255,240,0,255,240,0,25,31,124,26, + 1,250,0,126,0,0,3,255,192,0,15,193,240,0,31,128, + 248,0,63,0,252,0,62,0,124,0,126,0,126,0,126,0, + 126,0,252,0,63,0,252,0,63,0,252,0,63,0,252,0, + 63,0,252,0,63,0,252,0,63,0,252,0,63,0,252,60, + 63,0,252,254,63,0,127,135,126,0,127,131,254,0,63,3, + 252,0,63,3,252,0,31,131,248,0,15,195,240,0,3,255, + 224,0,0,127,224,0,0,3,225,128,0,3,225,128,0,1, + 243,128,0,1,255,0,0,0,254,0,0,0,60,0,25,25, + 100,27,1,0,255,255,128,0,255,255,240,0,31,131,248,0, + 31,129,248,0,31,128,252,0,31,128,252,0,31,128,252,0, + 31,128,252,0,31,128,252,0,31,129,248,0,31,129,240,0, + 31,135,192,0,31,255,0,0,31,255,192,0,31,135,224,0, + 31,131,224,0,31,131,240,0,31,131,240,0,31,131,240,0, + 31,131,249,128,31,129,249,128,31,129,251,0,31,129,255,0, + 255,240,254,0,255,240,124,0,19,25,75,21,1,0,3,240, + 192,31,253,192,60,31,192,120,7,192,112,3,192,240,1,192, + 240,0,192,248,0,192,255,0,192,255,240,0,127,254,0,127, + 255,0,63,255,128,15,255,192,7,255,224,64,127,224,96,7, + 224,96,3,224,112,1,224,120,1,224,120,1,192,126,3,192, + 127,7,128,103,255,0,97,252,0,21,25,75,23,1,0,255, + 255,248,255,255,248,241,248,120,225,248,56,225,248,56,193,248, + 24,193,248,24,193,248,24,129,248,8,129,248,8,1,248,0, + 1,248,0,1,248,0,1,248,0,1,248,0,1,248,0,1, + 248,0,1,248,0,1,248,0,1,248,0,1,248,0,1,248, + 0,1,248,0,15,255,128,15,255,128,26,25,100,28,1,0, + 255,240,255,192,255,240,255,192,31,128,30,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,12,0, + 31,128,12,0,31,128,12,0,31,128,12,0,31,128,28,0, + 15,192,24,0,15,224,56,0,7,248,240,0,3,255,224,0, + 0,255,192,0,25,25,100,25,0,0,255,224,255,128,255,224, + 255,128,63,128,62,0,31,128,28,0,31,128,28,0,31,192, + 24,0,15,192,56,0,15,192,48,0,7,224,112,0,7,224, + 112,0,7,240,96,0,3,240,224,0,3,240,192,0,1,248, + 192,0,1,249,192,0,1,249,128,0,0,255,128,0,0,255, + 0,0,0,255,0,0,0,127,0,0,0,126,0,0,0,62, + 0,0,0,62,0,0,0,60,0,0,0,28,0,0,32,25, + 100,32,0,0,255,223,249,255,255,223,249,255,63,7,224,124, + 63,7,224,56,31,131,224,48,31,131,240,112,31,131,240,112, + 15,193,240,96,15,195,248,96,15,195,248,224,7,195,248,192, + 7,231,248,192,7,230,252,192,7,230,253,128,3,254,125,128, + 3,252,127,128,3,252,127,128,1,252,63,0,1,248,63,0, + 1,248,63,0,0,248,62,0,0,248,30,0,0,240,30,0, + 0,112,28,0,0,112,12,0,24,25,75,24,0,0,255,227, + 255,255,227,255,63,128,252,31,192,120,31,192,112,15,224,224, + 7,224,192,7,241,192,3,255,128,3,255,0,1,255,0,0, + 254,0,0,254,0,0,127,0,0,127,128,0,255,128,1,223, + 192,3,143,224,3,143,224,7,7,240,14,3,240,30,3,248, + 63,3,252,255,239,255,255,239,255,24,25,75,24,0,0,255, + 241,255,255,241,255,63,128,124,31,192,56,31,192,112,15,224, + 112,15,224,224,7,240,192,3,241,192,3,249,128,1,251,128, + 1,255,0,0,255,0,0,126,0,0,126,0,0,126,0,0, + 126,0,0,126,0,0,126,0,0,126,0,0,126,0,0,126, + 0,0,126,0,3,255,192,3,255,192,19,25,75,21,1,0, + 127,255,224,127,255,224,126,15,224,120,15,224,112,31,192,112, + 31,128,96,63,128,96,127,0,64,126,0,0,254,0,1,252, + 0,1,252,0,3,248,0,3,240,0,7,240,0,15,224,32, + 15,224,96,31,192,96,31,128,96,63,128,224,127,0,224,127, + 1,224,254,7,224,255,255,224,255,255,224,8,29,29,13,3, + 252,255,255,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,255,255,16,25, + 50,20,2,0,240,0,248,0,120,0,124,0,60,0,62,0, + 30,0,31,0,15,0,15,128,7,128,7,192,3,192,3,224, + 1,224,1,240,0,240,0,248,0,120,0,124,0,60,0,62, + 0,30,0,30,0,15,8,29,29,13,1,252,255,255,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,255,255,16,14,28,20,2,11,3, + 192,7,224,7,224,15,240,15,240,15,240,30,120,30,120,60, + 60,60,60,124,62,120,30,248,31,240,15,16,3,6,16,0, + 251,255,255,255,255,255,255,7,6,6,11,2,17,96,240,248, + 124,30,6,18,16,48,20,1,0,15,240,0,63,252,0,120, + 126,0,124,62,0,124,62,0,56,62,0,0,62,0,3,254, + 0,31,190,0,126,62,0,124,62,0,252,62,0,252,62,0, + 252,127,64,127,255,192,63,143,128,19,25,75,21,0,0,255, + 0,0,255,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,63,0,31,255,128, + 31,207,192,31,135,192,31,3,224,31,3,224,31,3,224,31, + 3,224,31,3,224,31,3,224,31,3,224,31,3,192,31,7, + 192,31,143,128,29,255,0,24,124,0,15,16,32,17,1,0, + 3,240,15,252,62,62,124,62,124,62,248,28,248,0,248,0, + 248,0,248,0,252,2,252,6,126,6,63,28,31,248,7,224, + 20,25,75,22,1,0,0,127,128,0,127,128,0,31,128,0, + 15,128,0,15,128,0,15,128,0,15,128,0,15,128,0,15, + 128,15,207,128,31,239,128,62,63,128,124,31,128,120,31,128, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,31,128,124,31,128,124,127,128,63,239,240,15,143, + 240,16,16,32,18,1,0,3,224,15,248,60,60,120,30,120, + 30,248,31,248,31,255,255,255,255,248,0,248,0,252,3,124, + 6,63,14,31,252,7,240,15,25,50,13,0,0,0,240,3, + 252,7,158,15,62,15,62,31,28,31,0,31,0,31,0,255, + 240,255,240,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,255,224,255,224,20, + 25,75,20,1,249,0,1,224,0,3,240,7,255,240,31,124, + 224,62,62,0,124,31,0,124,31,0,124,31,0,124,31,0, + 124,31,0,62,62,0,31,126,0,31,248,0,124,0,0,248, + 0,0,255,252,0,255,255,0,63,255,0,31,255,128,127,255, + 128,240,7,128,240,7,128,248,15,0,127,254,0,15,240,0, + 20,25,75,22,1,0,254,0,0,254,0,0,62,0,0,62, + 0,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,62,0,62,255,128,63,255,128,63,143,192,63,7,192, + 63,7,192,62,7,192,62,7,192,62,7,192,62,7,192,62, + 7,192,62,7,192,62,7,192,62,7,192,255,159,240,255,159, + 240,9,25,50,12,2,0,28,0,62,0,62,0,62,0,28, + 0,0,0,0,0,0,0,0,0,254,0,254,0,62,0,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,255,128,255,128,12,32,64,12,253,249,0, + 224,1,240,1,240,1,240,0,224,0,0,0,0,0,0,0, + 0,7,240,7,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,113,240,249,224,249,224,251,192,127,128,30,0,20, + 25,75,22,1,0,254,0,0,254,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,63,224,62,63,224,62,15,0,62,14,0,62,60,0,62, + 112,0,62,248,0,63,252,0,63,254,0,63,126,0,62,63, + 0,62,31,128,62,31,192,62,15,224,255,191,240,255,191,240, + 10,25,50,12,1,0,254,0,254,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,255,192,255,192,29,16,64,31,1,0,254,126, + 31,0,254,255,63,192,63,255,255,192,63,159,231,224,63,15, + 195,224,62,15,131,224,62,15,131,224,62,15,131,224,62,15, + 131,224,62,15,131,224,62,15,131,224,62,15,131,224,62,15, + 131,224,62,15,131,224,255,191,239,248,255,191,239,248,20,16, + 48,22,1,0,254,62,0,254,255,128,63,255,128,63,143,192, + 63,7,192,62,7,192,62,7,192,62,7,192,62,7,192,62, + 7,192,62,7,192,62,7,192,62,7,192,62,7,192,255,159, + 240,255,159,240,17,16,48,19,1,0,3,224,0,15,248,0, + 62,62,0,124,31,0,124,31,0,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,124,31,0,124,31, + 0,62,62,0,15,248,0,3,224,0,19,23,69,21,1,249, + 254,126,0,254,255,128,63,143,192,63,7,192,63,7,224,62, + 3,224,62,3,224,62,3,224,62,3,224,62,3,224,62,3, + 224,63,7,192,63,7,192,63,143,128,63,255,0,62,126,0, + 62,0,0,62,0,0,62,0,0,62,0,0,62,0,0,255, + 128,0,255,128,0,20,23,69,20,1,249,7,225,128,31,249, + 128,62,31,128,124,31,128,124,15,128,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,124,31,128,124, + 31,128,62,63,128,31,239,128,7,207,128,0,15,128,0,15, + 128,0,15,128,0,15,128,0,15,128,0,127,240,0,127,240, + 15,16,32,16,1,0,252,124,252,254,61,254,61,190,63,62, + 62,28,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,255,192,255,192,14,16,32,16,1,0,15,216,60,248, + 112,56,240,24,254,8,255,192,255,240,127,248,63,248,15,252, + 192,252,192,60,224,56,248,120,255,240,207,192,12,23,46,14, + 1,0,6,0,6,0,14,0,14,0,14,0,30,0,62,0, + 255,224,255,224,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,48,62,48,62,48,62,96,63,224,31,192,15,128, + 20,16,48,22,1,0,254,31,192,254,31,192,62,7,192,62, + 7,192,62,7,192,62,7,192,62,7,192,62,7,192,62,7, + 192,62,7,192,62,15,192,62,15,192,63,31,192,31,255,192, + 31,247,240,7,199,240,19,16,48,19,0,0,255,143,224,255, + 143,224,63,3,192,63,3,128,31,3,0,31,135,0,15,134, + 0,15,198,0,7,204,0,7,236,0,3,248,0,3,248,0, + 1,248,0,1,240,0,0,240,0,0,224,0,27,16,64,29, + 1,0,255,191,239,224,255,191,239,224,126,31,131,192,62,15, + 131,128,63,15,131,0,31,15,195,0,31,143,198,0,15,159, + 230,0,15,155,230,0,15,251,236,0,7,241,252,0,7,241, + 248,0,3,225,248,0,3,224,240,0,1,192,240,0,1,192, + 96,0,19,16,48,19,0,0,255,223,224,255,223,224,63,7, + 0,31,142,0,31,220,0,15,248,0,7,240,0,3,240,0, + 1,248,0,3,252,0,7,254,0,14,126,0,28,63,0,60, + 63,128,255,127,224,255,127,224,19,23,69,19,0,249,255,143, + 224,255,143,224,63,3,128,63,3,128,31,3,0,31,135,0, + 15,134,0,15,198,0,7,204,0,7,236,0,3,248,0,3, + 248,0,1,248,0,1,240,0,0,240,0,0,224,0,0,96, + 0,112,192,0,248,192,0,249,128,0,255,0,0,127,0,0, + 60,0,0,14,16,32,16,1,0,127,252,127,252,112,252,97, + 248,97,248,67,240,7,224,7,224,15,192,31,128,31,12,63, + 12,126,28,124,28,255,252,255,252,8,30,30,13,3,252,3, + 14,28,60,60,60,60,60,60,60,60,60,60,56,240,248,60, + 60,60,60,60,60,60,60,60,60,60,28,14,3,4,25,25, + 20,8,0,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,8,28,28,13, + 1,253,224,120,60,60,60,60,60,60,60,60,60,60,28,15, + 31,60,60,60,60,60,60,60,60,60,60,60,120,224,16,6, + 12,20,2,6,14,4,63,142,127,255,255,254,113,252,32,112, + 255}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--11-80-100-100-P-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=11 h=11 x= 2 y= 6 dx=12 dy= 0 ascent=11 len=16 + Font Bounding box w=14 h=18 x=-2 y=-4 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent =11 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR08[2642] U8G_SECTION(".progmem.u8g_font_ncenR08") = { + 0,14,18,254,252,8,1,180,3,120,32,255,254,11,254,8, + 254,0,0,0,3,0,1,1,8,8,4,1,0,128,128,128, + 128,128,0,128,128,3,3,3,6,1,5,160,160,160,7,8, + 8,8,0,0,20,20,126,40,40,252,80,80,4,10,10,5, + 0,255,32,112,160,160,96,80,80,80,224,64,8,8,8,9, + 0,0,100,148,152,104,22,25,41,38,9,8,16,10,0,0, + 48,0,72,0,80,0,38,0,84,0,136,0,140,128,115,0, + 1,3,3,4,1,5,128,128,128,3,9,9,4,0,255,32, + 64,64,128,128,128,64,64,32,3,9,9,4,0,255,128,64, + 64,32,32,32,64,64,128,5,5,5,6,0,3,32,168,112, + 168,32,5,5,5,6,0,0,32,32,248,32,32,2,3,3, + 3,0,254,64,64,128,3,1,1,4,0,2,224,1,2,2, + 4,1,0,128,128,3,9,9,4,0,255,32,32,32,64,64, + 64,128,128,128,4,8,8,5,0,0,96,144,144,144,144,144, + 144,96,3,8,8,5,1,0,64,192,64,64,64,64,64,224, + 4,8,8,5,0,0,96,144,144,16,32,64,144,240,4,8, + 8,5,0,0,96,144,16,96,16,144,144,96,5,8,8,5, + 0,0,16,48,80,80,144,248,16,56,4,8,8,5,0,0, + 240,128,128,224,16,16,144,96,4,8,8,5,0,0,112,144, + 128,224,144,144,144,96,4,8,8,5,0,0,240,144,32,32, + 32,64,64,64,4,8,8,5,0,0,96,144,144,96,144,144, + 144,96,4,8,8,5,0,0,96,144,144,144,112,16,144,224, + 1,5,5,4,1,0,128,128,0,128,128,2,6,6,4,0, + 255,64,64,0,64,64,128,6,5,5,7,0,0,12,48,192, + 48,12,5,3,3,6,0,1,248,0,248,6,5,5,7,0, + 0,192,48,12,48,192,4,8,8,5,0,0,96,144,16,32, + 64,0,64,64,8,10,10,9,0,255,60,66,129,157,165,173, + 182,128,64,60,7,8,8,8,0,0,16,16,40,40,68,124, + 68,238,6,8,8,7,0,0,248,68,68,120,68,68,68,248, + 6,8,8,7,0,0,60,68,128,128,128,128,68,56,7,8, + 8,8,0,0,248,68,66,66,66,66,68,248,6,8,8,7, + 0,0,252,68,84,112,80,68,68,252,6,8,8,7,0,0, + 252,68,84,112,80,64,64,224,7,8,8,8,0,0,60,68, + 128,128,142,132,68,56,8,8,8,9,0,0,231,66,66,126, + 66,66,66,231,3,8,8,4,0,0,224,64,64,64,64,64, + 64,224,4,8,8,5,0,0,112,32,32,32,32,160,160,192, + 7,8,8,8,0,0,230,68,72,80,112,72,68,238,6,8, + 8,7,0,0,224,64,64,64,64,68,68,252,9,8,16,10, + 0,0,193,128,99,0,99,0,85,0,85,0,85,0,73,0, + 235,128,8,8,8,9,0,0,231,98,82,82,74,74,70,230, + 7,8,8,8,0,0,56,68,130,130,130,130,68,56,6,8, + 8,7,0,0,248,68,68,68,120,64,64,224,7,9,9,8, + 0,255,56,68,130,130,130,178,76,56,6,7,8,8,8,0, + 0,248,68,68,72,120,68,68,198,5,8,8,6,0,0,120, + 136,128,224,24,8,136,240,7,8,8,8,0,0,254,146,146, + 16,16,16,16,56,7,8,8,8,0,0,238,68,68,68,68, + 68,68,56,7,8,8,8,0,0,238,68,68,68,40,40,16, + 16,11,8,16,12,0,0,238,224,68,64,68,64,42,128,42, + 128,42,128,17,0,17,0,6,8,8,7,0,0,204,72,72, + 48,48,72,72,204,7,8,8,8,0,0,198,68,40,40,16, + 16,16,56,5,8,8,6,0,0,248,136,144,32,32,72,136, + 248,2,9,9,3,0,255,192,128,128,128,128,128,128,128,192, + 4,8,8,5,0,0,128,128,64,64,32,32,16,16,2,9, + 9,3,0,255,192,64,64,64,64,64,64,64,192,5,6,6, + 6,0,2,32,32,80,80,136,136,6,1,1,6,0,254,252, + 2,2,2,3,0,6,128,64,5,5,5,6,0,0,96,144, + 112,144,248,5,8,8,5,255,0,192,64,64,112,72,72,72, + 112,4,5,5,5,0,0,112,144,128,144,96,5,8,8,6, + 0,0,48,16,16,112,144,144,144,120,4,5,5,5,0,0, + 96,144,240,128,112,4,8,8,4,0,0,48,80,64,224,64, + 64,64,224,5,7,7,6,0,254,120,144,160,64,120,136,112, + 6,8,8,6,255,0,192,64,64,112,72,72,72,236,3,7, + 7,4,0,0,64,0,192,64,64,64,224,2,9,9,4,0, + 254,64,0,192,64,64,64,64,64,128,6,8,8,7,0,0, + 192,64,64,88,80,112,72,236,3,8,8,4,0,0,192,64, + 64,64,64,64,64,224,9,5,10,10,0,0,182,0,73,0, + 73,0,73,0,237,128,6,5,5,7,0,0,176,72,72,72, + 236,4,5,5,5,0,0,96,144,144,144,96,4,7,7,5, + 0,254,96,144,144,144,224,128,192,5,7,7,6,0,254,104, + 144,144,144,112,16,56,4,5,5,5,0,0,208,96,64,64, + 224,4,5,5,5,0,0,112,128,96,16,224,3,7,7,3, + 0,0,128,128,192,128,128,128,96,5,5,5,6,0,0,144, + 144,144,144,104,6,5,5,6,0,0,220,136,80,80,32,8, + 5,5,8,0,0,147,170,170,68,68,5,5,5,6,0,0, + 216,80,32,80,216,6,7,7,6,0,254,220,136,80,80,32, + 32,192,4,5,5,5,0,0,240,32,64,128,240,3,9,9, + 4,0,255,32,64,64,64,128,64,64,64,32,1,8,8,6, + 2,0,128,128,128,128,128,128,128,128,3,9,9,4,0,255, + 128,64,64,64,32,64,64,64,128,6,2,2,7,0,2,100, + 152,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,0,0,0,3,0,1,1,8,8,4,1,254,128,128, + 0,128,128,128,128,128,5,7,7,6,0,255,16,120,168,160, + 200,112,64,6,8,8,7,0,0,56,72,64,248,32,32,68, + 248,6,6,6,7,0,1,132,120,72,72,120,132,7,8,8, + 8,0,0,198,68,40,108,16,124,16,56,1,8,8,6,2, + 0,128,128,128,0,0,128,128,128,4,10,10,5,0,254,112, + 144,128,96,144,144,96,16,144,224,3,1,1,4,0,6,160, + 9,8,16,10,0,0,62,0,65,0,156,128,164,128,160,128, + 156,128,65,0,62,0,4,6,6,5,0,2,224,32,96,176, + 0,240,5,3,3,6,0,1,72,144,72,5,3,3,6,0, + 1,248,8,8,3,1,1,4,0,2,224,9,8,16,10,0, + 0,62,0,65,0,188,128,148,128,152,128,182,128,65,0,62, + 0,4,1,1,5,0,6,240,3,4,4,4,0,4,64,160, + 160,64,5,5,5,6,0,0,32,248,32,0,248,3,4,4, + 3,0,4,96,160,64,224,3,4,4,3,0,4,224,64,32, + 192,2,2,2,3,0,6,64,128,5,7,7,6,0,254,144, + 144,144,144,232,128,128,6,10,10,7,0,254,124,168,168,168, + 104,40,40,40,40,124,1,2,2,4,1,2,128,128,2,3, + 3,3,0,254,128,64,192,3,4,4,3,0,4,64,192,64, + 224,4,6,6,5,0,2,96,144,144,96,0,240,5,3,3, + 6,0,1,144,72,144,7,8,8,7,0,0,72,200,80,240, + 36,44,94,68,6,8,8,7,0,0,72,200,80,240,44,52, + 72,92,7,8,8,7,0,0,232,72,48,208,36,44,94,68, + 4,8,8,5,0,254,32,32,0,32,64,128,144,96,7,11, + 11,8,0,0,32,16,0,16,16,40,40,68,124,68,238,7, + 11,11,8,0,0,8,16,0,16,16,40,40,68,124,68,238, + 7,11,11,8,0,0,16,40,0,16,16,40,40,68,124,68, + 238,7,11,11,8,0,0,20,40,0,16,16,40,40,68,124, + 68,238,7,10,10,8,0,0,40,0,16,16,40,40,68,124, + 68,238,7,11,11,8,0,0,16,40,16,16,16,40,40,68, + 124,68,238,10,8,16,11,0,0,31,192,12,64,21,64,23, + 0,61,0,36,64,68,64,231,192,6,10,10,7,0,254,60, + 68,128,128,128,128,68,56,16,48,6,11,11,7,0,0,32, + 16,0,252,68,84,112,80,68,68,252,6,11,11,7,0,0, + 8,16,0,252,68,84,112,80,68,68,252,6,11,11,7,0, + 0,16,40,0,252,68,84,112,80,68,68,252,6,10,10,7, + 0,0,40,0,252,68,84,112,80,68,68,252,3,11,11,4, + 0,0,128,64,0,224,64,64,64,64,64,64,224,3,11,11, + 4,0,0,32,64,0,224,64,64,64,64,64,64,224,3,11, + 11,4,0,0,64,160,0,224,64,64,64,64,64,64,224,3, + 10,10,4,0,0,160,0,224,64,64,64,64,64,64,224,7, + 8,8,8,0,0,248,68,66,226,66,66,68,248,8,11,11, + 9,0,0,20,40,0,231,98,82,82,74,74,70,230,7,11, + 11,8,0,0,32,16,0,56,68,130,130,130,130,68,56,7, + 11,11,8,0,0,8,16,0,56,68,130,130,130,130,68,56, + 7,11,11,8,0,0,16,40,0,56,68,130,130,130,130,68, + 56,7,11,11,8,0,0,20,40,0,56,68,130,130,130,130, + 68,56,7,10,10,8,0,0,40,0,56,68,130,130,130,130, + 68,56,5,5,5,6,0,0,136,80,32,80,136,8,8,8, + 8,255,0,29,34,69,73,81,97,98,156,7,11,11,8,0, + 0,32,16,0,238,68,68,68,68,68,68,56,7,11,11,8, + 0,0,8,16,0,238,68,68,68,68,68,68,56,7,11,11, + 8,0,0,16,40,0,238,68,68,68,68,68,68,56,7,10, + 10,8,0,0,40,0,238,68,68,68,68,68,68,56,7,11, + 11,8,0,0,8,16,0,198,68,40,40,16,16,16,56,6, + 8,8,7,0,0,192,120,68,68,68,120,64,224,6,8,8, + 7,0,0,48,72,72,88,68,68,84,216,5,8,8,6,0, + 0,64,32,0,96,144,112,144,248,5,8,8,6,0,0,32, + 64,0,96,144,112,144,248,5,8,8,6,0,0,32,80,0, + 96,144,112,144,248,5,8,8,6,0,0,80,160,0,96,144, + 112,144,248,5,7,7,6,0,0,80,0,96,144,112,144,248, + 5,8,8,6,0,0,32,80,32,96,144,112,144,248,7,5, + 5,8,0,0,108,146,126,144,238,4,7,7,5,0,254,112, + 144,128,144,96,32,96,4,8,8,5,0,0,64,32,0,96, + 144,240,128,112,4,8,8,5,0,0,32,64,0,96,144,240, + 128,112,4,8,8,5,0,0,32,80,0,96,144,240,128,112, + 4,7,7,5,0,0,80,0,96,144,240,128,112,3,8,8, + 4,0,0,128,64,0,192,64,64,64,224,3,8,8,4,0, + 0,32,64,0,192,64,64,64,224,3,8,8,4,0,0,64, + 160,0,192,64,64,64,224,3,7,7,4,0,0,160,0,192, + 64,64,64,224,4,8,8,5,0,0,80,96,160,96,144,144, + 144,96,6,8,8,7,0,0,40,80,0,176,72,72,72,236, + 4,8,8,5,0,0,64,32,0,96,144,144,144,96,4,8, + 8,5,0,0,32,64,0,96,144,144,144,96,4,8,8,5, + 0,0,32,80,0,96,144,144,144,96,4,8,8,5,0,0, + 80,160,0,96,144,144,144,96,4,7,7,5,0,0,80,0, + 96,144,144,144,96,5,5,5,6,0,0,32,0,248,0,32, + 5,6,6,5,0,255,104,144,176,208,96,128,5,8,8,6, + 0,0,64,32,0,144,144,144,144,104,5,8,8,6,0,0, + 32,64,0,144,144,144,144,104,5,8,8,6,0,0,32,80, + 0,144,144,144,144,104,5,7,7,6,0,0,80,0,144,144, + 144,144,104,6,10,10,6,0,254,16,32,0,220,136,80,80, + 32,32,192,5,10,10,5,255,254,192,64,64,112,72,72,72, + 112,64,224,6,9,9,6,0,254,80,0,220,136,80,80,32, + 32,192}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--11-80-100-100-P-60-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 8, '1' Height: 8 + Calculated Max Values w=11 h=10 x= 2 y= 6 dx=12 dy= 0 ascent= 9 len=16 + Font Bounding box w=14 h=18 x=-2 y=-4 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent=-2 + X Font ascent = 8 descent=-2 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR08r[1266] U8G_SECTION(".progmem.u8g_font_ncenR08r") = { + 0,14,18,254,252,8,1,180,3,120,32,127,254,9,254,8, + 254,0,0,0,3,0,1,1,8,8,4,1,0,128,128,128, + 128,128,0,128,128,3,3,3,6,1,5,160,160,160,7,8, + 8,8,0,0,20,20,126,40,40,252,80,80,4,10,10,5, + 0,255,32,112,160,160,96,80,80,80,224,64,8,8,8,9, + 0,0,100,148,152,104,22,25,41,38,9,8,16,10,0,0, + 48,0,72,0,80,0,38,0,84,0,136,0,140,128,115,0, + 1,3,3,4,1,5,128,128,128,3,9,9,4,0,255,32, + 64,64,128,128,128,64,64,32,3,9,9,4,0,255,128,64, + 64,32,32,32,64,64,128,5,5,5,6,0,3,32,168,112, + 168,32,5,5,5,6,0,0,32,32,248,32,32,2,3,3, + 3,0,254,64,64,128,3,1,1,4,0,2,224,1,2,2, + 4,1,0,128,128,3,9,9,4,0,255,32,32,32,64,64, + 64,128,128,128,4,8,8,5,0,0,96,144,144,144,144,144, + 144,96,3,8,8,5,1,0,64,192,64,64,64,64,64,224, + 4,8,8,5,0,0,96,144,144,16,32,64,144,240,4,8, + 8,5,0,0,96,144,16,96,16,144,144,96,5,8,8,5, + 0,0,16,48,80,80,144,248,16,56,4,8,8,5,0,0, + 240,128,128,224,16,16,144,96,4,8,8,5,0,0,112,144, + 128,224,144,144,144,96,4,8,8,5,0,0,240,144,32,32, + 32,64,64,64,4,8,8,5,0,0,96,144,144,96,144,144, + 144,96,4,8,8,5,0,0,96,144,144,144,112,16,144,224, + 1,5,5,4,1,0,128,128,0,128,128,2,6,6,4,0, + 255,64,64,0,64,64,128,6,5,5,7,0,0,12,48,192, + 48,12,5,3,3,6,0,1,248,0,248,6,5,5,7,0, + 0,192,48,12,48,192,4,8,8,5,0,0,96,144,16,32, + 64,0,64,64,8,10,10,9,0,255,60,66,129,157,165,173, + 182,128,64,60,7,8,8,8,0,0,16,16,40,40,68,124, + 68,238,6,8,8,7,0,0,248,68,68,120,68,68,68,248, + 6,8,8,7,0,0,60,68,128,128,128,128,68,56,7,8, + 8,8,0,0,248,68,66,66,66,66,68,248,6,8,8,7, + 0,0,252,68,84,112,80,68,68,252,6,8,8,7,0,0, + 252,68,84,112,80,64,64,224,7,8,8,8,0,0,60,68, + 128,128,142,132,68,56,8,8,8,9,0,0,231,66,66,126, + 66,66,66,231,3,8,8,4,0,0,224,64,64,64,64,64, + 64,224,4,8,8,5,0,0,112,32,32,32,32,160,160,192, + 7,8,8,8,0,0,230,68,72,80,112,72,68,238,6,8, + 8,7,0,0,224,64,64,64,64,68,68,252,9,8,16,10, + 0,0,193,128,99,0,99,0,85,0,85,0,85,0,73,0, + 235,128,8,8,8,9,0,0,231,98,82,82,74,74,70,230, + 7,8,8,8,0,0,56,68,130,130,130,130,68,56,6,8, + 8,7,0,0,248,68,68,68,120,64,64,224,7,9,9,8, + 0,255,56,68,130,130,130,178,76,56,6,7,8,8,8,0, + 0,248,68,68,72,120,68,68,198,5,8,8,6,0,0,120, + 136,128,224,24,8,136,240,7,8,8,8,0,0,254,146,146, + 16,16,16,16,56,7,8,8,8,0,0,238,68,68,68,68, + 68,68,56,7,8,8,8,0,0,238,68,68,68,40,40,16, + 16,11,8,16,12,0,0,238,224,68,64,68,64,42,128,42, + 128,42,128,17,0,17,0,6,8,8,7,0,0,204,72,72, + 48,48,72,72,204,7,8,8,8,0,0,198,68,40,40,16, + 16,16,56,5,8,8,6,0,0,248,136,144,32,32,72,136, + 248,2,9,9,3,0,255,192,128,128,128,128,128,128,128,192, + 4,8,8,5,0,0,128,128,64,64,32,32,16,16,2,9, + 9,3,0,255,192,64,64,64,64,64,64,64,192,5,6,6, + 6,0,2,32,32,80,80,136,136,6,1,1,6,0,254,252, + 2,2,2,3,0,6,128,64,5,5,5,6,0,0,96,144, + 112,144,248,5,8,8,5,255,0,192,64,64,112,72,72,72, + 112,4,5,5,5,0,0,112,144,128,144,96,5,8,8,6, + 0,0,48,16,16,112,144,144,144,120,4,5,5,5,0,0, + 96,144,240,128,112,4,8,8,4,0,0,48,80,64,224,64, + 64,64,224,5,7,7,6,0,254,120,144,160,64,120,136,112, + 6,8,8,6,255,0,192,64,64,112,72,72,72,236,3,7, + 7,4,0,0,64,0,192,64,64,64,224,2,9,9,4,0, + 254,64,0,192,64,64,64,64,64,128,6,8,8,7,0,0, + 192,64,64,88,80,112,72,236,3,8,8,4,0,0,192,64, + 64,64,64,64,64,224,9,5,10,10,0,0,182,0,73,0, + 73,0,73,0,237,128,6,5,5,7,0,0,176,72,72,72, + 236,4,5,5,5,0,0,96,144,144,144,96,4,7,7,5, + 0,254,96,144,144,144,224,128,192,5,7,7,6,0,254,104, + 144,144,144,112,16,56,4,5,5,5,0,0,208,96,64,64, + 224,4,5,5,5,0,0,112,128,96,16,224,3,7,7,3, + 0,0,128,128,192,128,128,128,96,5,5,5,6,0,0,144, + 144,144,144,104,6,5,5,6,0,0,220,136,80,80,32,8, + 5,5,8,0,0,147,170,170,68,68,5,5,5,6,0,0, + 216,80,32,80,216,6,7,7,6,0,254,220,136,80,80,32, + 32,192,4,5,5,5,0,0,240,32,64,128,240,3,9,9, + 4,0,255,32,64,64,64,128,64,64,64,32,1,8,8,6, + 2,0,128,128,128,128,128,128,128,128,3,9,9,4,0,255, + 128,64,64,64,32,64,64,64,128,6,2,2,7,0,2,100, + 152,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--14-100-100-100-P-82-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=17 h=14 x= 4 y= 8 dx=16 dy= 0 ascent=14 len=33 + Font Bounding box w=18 h=24 x=-2 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR10[3813] U8G_SECTION(".progmem.u8g_font_ncenR10") = { + 0,18,24,254,250,11,2,24,5,38,32,255,253,14,253,11, + 253,0,0,0,4,0,1,1,11,11,3,1,0,128,128,128, + 128,128,128,128,128,0,128,128,3,4,4,5,1,7,160,160, + 160,160,8,11,11,8,0,0,18,18,18,127,36,36,36,254, + 72,72,72,6,14,14,8,1,254,32,120,164,172,160,224,120, + 28,20,212,148,120,16,16,11,11,22,12,0,0,51,0,77, + 0,138,0,138,0,148,0,100,192,9,32,10,32,18,32,18, + 64,33,128,11,11,22,13,1,0,28,0,50,0,34,0,52, + 0,24,0,57,224,76,128,135,0,131,32,197,192,120,192,1, + 4,4,3,1,7,128,128,128,128,4,13,13,5,0,254,16, + 32,64,64,128,128,128,128,128,64,64,32,16,4,13,13,6, + 1,254,128,64,32,32,16,16,16,16,16,32,32,64,128,5, + 5,5,7,1,6,32,168,112,168,32,7,7,7,9,1,0, + 16,16,16,254,16,16,16,2,4,4,4,0,254,192,64,64, + 128,4,1,1,5,0,3,240,1,2,2,4,1,0,128,128, + 4,11,11,4,0,0,16,16,16,32,32,32,64,64,64,128, + 128,6,11,11,8,1,0,120,204,132,132,132,132,132,132,132, + 204,120,5,11,11,8,1,0,32,224,32,32,32,32,32,32, + 32,32,248,6,11,11,8,1,0,120,140,196,4,4,8,16, + 32,68,132,252,6,11,11,8,1,0,120,140,196,4,8,56, + 12,4,196,140,120,7,11,11,8,0,0,12,28,20,36,68, + 68,132,254,4,4,14,6,11,11,8,1,0,252,128,128,184, + 204,132,4,4,196,140,120,6,11,11,8,1,0,56,68,140, + 128,184,204,132,132,132,204,120,6,11,11,8,1,0,252,132, + 136,8,16,16,16,32,32,32,32,6,11,11,8,1,0,120, + 204,132,196,104,120,140,132,132,204,120,6,11,11,8,1,0, + 120,204,132,132,132,204,116,4,196,136,112,1,7,7,4,1, + 0,128,128,0,0,0,128,128,2,9,9,4,0,254,64,64, + 0,0,0,192,64,64,128,8,7,7,10,1,0,3,12,48, + 192,48,12,3,7,4,4,9,1,2,254,0,0,254,8,7, + 7,10,1,0,192,48,12,3,12,48,192,5,11,11,6,0, + 0,112,152,136,8,16,32,32,32,0,32,32,12,11,22,13, + 0,0,31,224,32,16,70,144,137,144,144,144,145,16,145,16, + 147,48,141,192,64,16,63,224,11,11,22,10,255,0,4,0, + 4,0,10,0,10,0,10,0,17,0,17,0,63,128,32,128, + 32,128,251,224,9,11,22,10,0,0,254,0,35,0,33,0, + 33,0,34,0,63,0,33,128,32,128,32,128,33,128,255,0, + 9,11,22,11,1,0,30,128,97,128,64,128,192,128,128,0, + 128,0,128,0,192,128,64,128,97,0,30,0,10,11,22,11, + 0,0,255,0,32,128,32,192,32,64,32,64,32,64,32,64, + 32,64,32,192,32,128,255,0,9,11,22,10,0,0,255,128, + 32,128,32,128,36,0,36,0,60,0,36,0,36,0,32,128, + 32,128,255,128,9,11,22,10,0,0,255,128,32,128,32,128, + 36,0,36,0,60,0,36,0,36,0,32,0,32,0,248,0, + 10,11,22,11,0,0,30,128,97,128,64,128,192,128,128,0, + 128,0,135,192,192,128,64,128,97,128,30,128,11,11,22,12, + 0,0,251,224,32,128,32,128,32,128,32,128,63,128,32,128, + 32,128,32,128,32,128,251,224,5,11,11,6,0,0,248,32, + 32,32,32,32,32,32,32,32,248,7,11,11,7,0,0,62, + 8,8,8,8,8,8,200,136,136,112,11,11,22,11,0,0, + 251,192,33,0,34,0,36,0,40,0,56,0,52,0,38,0, + 35,0,33,128,251,224,9,11,22,10,0,0,248,0,32,0, + 32,0,32,0,32,0,32,0,32,0,32,0,32,128,32,128, + 255,128,15,11,22,16,0,0,240,30,48,24,40,40,40,40, + 44,72,36,72,38,136,34,136,35,136,33,8,249,62,12,11, + 22,13,0,0,225,240,48,64,56,64,40,64,44,64,38,64, + 35,64,33,64,33,192,32,192,248,64,10,11,22,11,0,0, + 30,0,97,128,64,128,192,192,128,64,128,64,128,64,192,192, + 64,128,97,128,30,0,9,11,22,10,0,0,255,0,33,128, + 32,128,32,128,33,0,62,0,32,0,32,0,32,0,32,0, + 248,0,11,13,26,11,0,254,30,0,97,128,64,128,192,192, + 128,64,128,64,128,64,220,192,98,128,99,128,31,0,1,32, + 0,192,11,11,22,11,0,0,255,0,33,128,32,128,32,128, + 33,0,62,0,35,0,33,0,33,32,33,160,248,192,7,11, + 11,8,0,0,122,198,130,130,224,56,14,130,130,198,188,9, + 11,22,10,0,0,255,128,136,128,136,128,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,62,0,12,11,22,13,0, + 0,249,240,32,64,32,64,32,64,32,64,32,64,32,64,32, + 64,32,64,48,128,31,0,11,11,22,10,255,0,251,224,32, + 128,48,128,17,0,17,0,25,0,10,0,10,0,10,0,4, + 0,4,0,17,11,33,16,255,0,251,239,128,32,131,0,48, + 194,0,17,194,0,17,68,0,25,100,0,11,40,0,10,40, + 0,14,56,0,6,16,0,4,16,0,12,11,22,13,0,0, + 253,240,48,64,24,128,13,0,5,0,6,0,11,0,9,0, + 17,128,32,192,251,240,11,11,22,10,255,0,251,224,96,128, + 49,0,17,0,26,0,10,0,4,0,4,0,4,0,4,0, + 31,0,8,11,11,9,0,0,255,131,134,12,8,24,48,32, + 97,193,255,3,13,13,4,0,254,224,128,128,128,128,128,128, + 128,128,128,128,128,224,6,11,11,8,1,0,128,128,64,64, + 32,32,16,16,8,8,4,3,13,13,4,0,254,224,32,32, + 32,32,32,32,32,32,32,32,32,224,5,6,6,7,1,5, + 32,32,80,80,136,136,7,1,1,7,0,254,254,3,3,3, + 5,1,8,128,64,32,7,7,7,8,0,0,56,76,4,60, + 196,140,118,7,11,11,7,255,0,192,64,64,64,92,102,66, + 66,66,102,92,6,7,7,7,0,0,120,204,128,128,128,196, + 120,7,11,11,8,0,0,12,4,4,4,116,204,132,132,132, + 204,118,6,7,7,7,0,0,120,204,132,252,128,196,120,5, + 11,11,5,0,0,56,72,64,64,240,64,64,64,64,64,224, + 7,10,10,8,0,253,118,204,132,204,120,128,124,198,130,124, + 8,11,11,9,0,0,192,64,64,64,92,102,66,66,66,66, + 231,3,10,10,4,0,0,64,64,0,192,64,64,64,64,64, + 224,3,13,13,4,255,253,32,32,0,96,32,32,32,32,32, + 32,32,160,192,8,11,11,9,0,0,192,64,64,64,94,72, + 80,120,76,70,239,3,11,11,4,0,0,192,64,64,64,64, + 64,64,64,64,64,224,13,7,14,14,0,0,220,224,103,48, + 66,16,66,16,66,16,66,16,231,56,8,7,7,9,0,0, + 220,102,66,66,66,66,231,6,7,7,7,0,0,120,204,132, + 132,132,204,120,7,10,10,8,0,253,220,102,66,66,66,102, + 92,64,64,224,7,10,10,7,0,253,116,204,132,132,132,204, + 116,4,4,14,6,7,7,7,0,0,220,100,64,64,64,64, + 224,5,7,7,6,0,0,120,136,192,112,24,136,240,5,9, + 9,5,0,0,64,64,240,64,64,64,64,72,48,8,7,7, + 9,0,0,231,66,66,66,66,102,59,7,7,7,8,0,0, + 238,68,68,40,40,16,16,11,7,14,12,0,0,238,224,68, + 64,68,64,42,128,42,128,17,0,17,0,7,7,7,8,0, + 0,206,100,56,16,56,76,230,7,10,10,8,0,253,238,68, + 68,40,40,16,16,32,160,192,6,7,7,7,0,0,252,140, + 152,48,100,196,252,3,13,13,4,0,254,32,64,64,64,64, + 64,128,64,64,64,64,64,32,1,11,11,9,4,0,128,128, + 128,128,128,128,128,128,128,128,128,3,13,13,5,1,254,128, + 64,64,64,64,64,32,64,64,64,64,64,128,7,2,2,9, + 1,3,114,140,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,4,0,1,1,11,11,4,1, + 253,128,128,0,128,128,128,128,128,128,128,128,6,11,11,8, + 1,254,4,4,120,204,144,144,160,228,120,128,128,7,11,11, + 8,0,0,60,98,70,64,32,252,16,16,96,178,206,7,7, + 7,8,0,2,186,68,130,130,130,68,186,9,11,22,8,0, + 0,227,128,65,0,34,0,34,0,20,0,20,0,62,0,8, + 0,62,0,8,0,28,0,1,11,11,9,4,0,128,128,128, + 128,0,0,128,128,128,128,128,5,13,13,7,1,254,120,136, + 128,192,112,152,136,200,112,24,8,136,240,4,2,2,6,1, + 8,144,144,12,11,22,14,1,0,15,0,48,192,79,32,89, + 32,144,16,144,16,152,144,79,32,64,32,48,192,15,0,5, + 7,7,6,0,4,96,144,112,144,248,0,248,6,5,5,7, + 0,1,36,72,144,72,36,7,4,4,9,0,1,254,2,2, + 2,4,1,1,5,0,3,240,12,11,22,14,1,0,15,0, + 48,192,94,32,73,32,137,16,142,16,139,16,89,160,64,32, + 48,192,15,0,5,1,1,5,0,8,248,4,4,4,6,1, + 7,96,144,144,96,7,7,7,9,1,0,16,16,254,16,16, + 0,254,4,6,6,5,0,5,96,144,32,64,144,240,4,6, + 6,5,0,5,96,144,32,16,144,96,3,3,3,5,1,8, + 32,64,128,8,10,10,9,0,253,231,66,66,66,66,102,123, + 64,96,64,7,13,13,9,1,254,126,212,212,212,212,116,20, + 20,20,20,20,20,62,2,2,2,4,1,3,192,192,3,4, + 4,5,0,253,64,64,32,192,3,6,6,5,1,5,64,192, + 64,64,64,224,4,7,7,5,0,4,96,144,144,144,96,0, + 240,6,5,5,7,0,1,144,72,36,72,144,10,11,22,12, + 0,0,65,0,193,0,66,0,66,0,68,0,228,128,9,128, + 18,128,20,128,39,192,32,128,10,11,22,12,0,0,65,0, + 193,0,66,0,66,0,68,0,229,128,10,64,16,128,17,0, + 34,64,35,192,10,11,22,12,0,0,97,0,145,0,34,0, + 18,0,148,0,100,128,9,128,18,128,20,128,39,192,32,128, + 5,11,11,6,0,253,32,32,0,32,32,32,64,128,136,200, + 112,11,14,28,10,255,0,8,0,4,0,0,0,4,0,4, + 0,10,0,10,0,10,0,17,0,17,0,63,128,32,128,32, + 128,251,224,11,14,28,10,255,0,2,0,4,0,0,0,4, + 0,4,0,10,0,10,0,10,0,17,0,17,0,63,128,32, + 128,32,128,251,224,11,14,28,10,255,0,4,0,10,0,17, + 0,4,0,4,0,10,0,10,0,10,0,17,0,17,0,63, + 128,32,128,32,128,251,224,11,14,28,10,255,0,12,128,19, + 0,0,0,4,0,4,0,10,0,10,0,10,0,17,0,17, + 0,63,128,32,128,32,128,251,224,11,13,26,10,255,0,17, + 0,17,0,4,0,4,0,10,0,10,0,10,0,17,0,17, + 0,63,128,32,128,32,128,251,224,11,14,28,10,255,0,12, + 0,18,0,12,0,4,0,4,0,10,0,10,0,10,0,17, + 0,17,0,63,128,32,128,32,128,251,224,14,11,22,15,0, + 0,15,252,5,4,9,4,9,32,17,32,17,224,63,32,33, + 32,65,4,65,4,227,252,9,14,28,11,1,253,30,128,97, + 128,64,128,192,128,128,0,128,0,128,0,192,128,64,128,97, + 0,30,0,8,0,4,0,24,0,9,14,28,10,0,0,16, + 0,8,0,0,0,255,128,32,128,32,128,36,0,36,0,60, + 0,36,0,36,0,32,128,32,128,255,128,9,14,28,10,0, + 0,4,0,8,0,0,0,255,128,32,128,32,128,36,0,36, + 0,60,0,36,0,36,0,32,128,32,128,255,128,9,14,28, + 10,0,0,12,0,18,0,0,0,255,128,32,128,32,128,36, + 0,36,0,60,0,36,0,36,0,32,128,32,128,255,128,9, + 14,28,10,0,0,18,0,18,0,0,0,255,128,32,128,32, + 128,36,0,36,0,60,0,36,0,36,0,32,128,32,128,255, + 128,5,14,14,6,0,0,64,32,0,248,32,32,32,32,32, + 32,32,32,32,248,5,14,14,6,0,0,16,32,0,248,32, + 32,32,32,32,32,32,32,32,248,5,14,14,6,0,0,48, + 72,0,248,32,32,32,32,32,32,32,32,32,248,5,14,14, + 6,0,0,80,80,0,248,32,32,32,32,32,32,32,32,32, + 248,10,11,22,11,0,0,255,0,32,128,32,192,32,64,32, + 64,248,64,32,64,32,64,32,192,32,128,255,0,12,14,28, + 13,0,0,12,128,19,0,0,0,225,240,48,64,48,64,40, + 64,44,64,38,64,35,64,33,64,32,192,32,64,248,64,10, + 14,28,11,0,0,8,0,4,0,0,0,30,0,97,128,64, + 128,192,192,128,64,128,64,128,64,192,192,64,128,97,128,30, + 0,10,14,28,11,0,0,2,0,4,0,0,0,30,0,97, + 128,64,128,192,192,128,64,128,64,128,64,192,192,64,128,97, + 128,30,0,10,14,28,11,0,0,12,0,18,0,0,0,30, + 0,97,128,64,128,192,192,128,64,128,64,128,64,192,192,64, + 128,97,128,30,0,10,14,28,11,0,0,25,0,38,0,0, + 0,30,0,97,128,64,128,192,192,128,64,128,64,128,64,192, + 192,64,128,97,128,30,0,10,14,28,11,0,0,18,0,18, + 0,0,0,30,0,97,128,64,128,192,192,128,64,128,64,128, + 64,192,192,64,128,97,128,30,0,7,7,7,9,1,0,130, + 68,40,16,40,68,130,11,11,22,11,255,0,15,32,48,192, + 32,192,97,96,66,32,68,32,72,32,112,96,32,64,112,192, + 143,0,12,14,28,13,0,0,8,0,4,0,0,0,249,240, + 32,64,32,64,32,64,32,64,32,64,32,64,32,64,32,64, + 48,128,31,0,12,14,28,13,0,0,1,0,2,0,0,0, + 249,240,32,64,32,64,32,64,32,64,32,64,32,64,32,64, + 32,64,48,128,31,0,12,14,28,13,0,0,6,0,9,0, + 0,0,249,240,32,64,32,64,32,64,32,64,32,64,32,64, + 32,64,32,64,48,128,31,0,12,14,28,13,0,0,9,0, + 9,0,0,0,249,240,32,64,32,64,32,64,32,64,32,64, + 32,64,32,64,32,64,48,128,31,0,11,14,28,10,255,0, + 2,0,4,0,0,0,251,224,96,128,49,0,17,0,26,0, + 10,0,4,0,4,0,4,0,4,0,31,0,9,11,22,10, + 0,0,248,0,32,0,63,0,33,128,32,128,32,128,33,0, + 62,0,32,0,32,0,248,0,7,11,11,8,0,0,56,100, + 68,76,88,68,66,66,66,86,220,7,11,11,8,0,0,32, + 16,8,0,56,76,4,60,196,140,118,7,11,11,8,0,0, + 8,16,32,0,56,76,4,60,196,140,118,7,11,11,8,0, + 0,16,40,68,0,56,76,4,60,196,140,118,7,10,10,8, + 0,0,50,76,0,56,76,4,60,196,140,118,7,10,10,8, + 0,0,72,72,0,56,76,4,60,196,140,118,7,11,11,8, + 0,0,48,72,48,0,56,76,4,60,196,140,118,11,7,14, + 12,0,0,59,192,78,96,4,32,63,224,196,0,142,32,115, + 192,6,10,10,7,0,253,120,204,128,128,128,196,120,32,16, + 96,6,11,11,7,0,0,64,32,16,0,120,204,132,252,128, + 196,120,6,11,11,7,0,0,8,16,32,0,120,204,132,252, + 128,196,120,6,11,11,7,0,0,16,40,68,0,120,204,132, + 252,128,196,120,6,10,10,7,0,0,72,72,0,120,204,132, + 252,128,196,120,3,11,11,4,0,0,128,64,32,0,192,64, + 64,64,64,64,224,3,11,11,4,0,0,32,64,128,0,192, + 64,64,64,64,64,224,5,11,11,4,255,0,32,80,136,0, + 96,32,32,32,32,32,112,4,10,10,4,255,0,144,144,0, + 96,32,32,32,32,32,112,7,11,11,7,255,0,76,48,208, + 8,60,102,66,66,66,102,60,8,10,10,9,0,0,50,76, + 0,220,102,66,66,66,66,231,6,11,11,7,0,0,64,32, + 16,0,120,204,132,132,132,204,120,6,11,11,7,0,0,16, + 32,64,0,120,204,132,132,132,204,120,6,11,11,7,0,0, + 32,80,136,0,120,204,132,132,132,204,120,6,10,10,7,0, + 0,100,152,0,120,204,132,132,132,204,120,6,10,10,7,0, + 0,72,72,0,120,204,132,132,132,204,120,7,7,7,9,1, + 0,16,16,0,254,0,16,16,6,9,9,7,0,255,8,120, + 220,148,164,164,204,120,64,8,11,11,9,0,0,32,16,8, + 0,231,66,66,66,66,102,59,8,11,11,9,0,0,2,4, + 8,0,231,66,66,66,66,102,59,8,11,11,9,0,0,8, + 20,34,0,231,66,66,66,66,102,59,8,10,10,9,0,0, + 36,36,0,231,66,66,66,66,102,59,7,14,14,8,0,253, + 4,8,16,0,238,68,68,40,40,16,16,32,160,192,7,14, + 14,8,0,253,192,64,64,64,92,102,66,66,66,102,92,64, + 64,224,7,13,13,8,0,253,72,72,0,238,68,68,40,40, + 16,16,32,160,192}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--14-100-100-100-P-82-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=17 h=14 x= 4 y= 8 dx=16 dy= 0 ascent=12 len=33 + Font Bounding box w=18 h=24 x=-2 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =11 descent=-3 + X Font ascent =11 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR10r[1781] U8G_SECTION(".progmem.u8g_font_ncenR10r") = { + 0,18,24,254,250,11,2,24,5,38,32,127,253,12,253,11, + 253,0,0,0,4,0,1,1,11,11,3,1,0,128,128,128, + 128,128,128,128,128,0,128,128,3,4,4,5,1,7,160,160, + 160,160,8,11,11,8,0,0,18,18,18,127,36,36,36,254, + 72,72,72,6,14,14,8,1,254,32,120,164,172,160,224,120, + 28,20,212,148,120,16,16,11,11,22,12,0,0,51,0,77, + 0,138,0,138,0,148,0,100,192,9,32,10,32,18,32,18, + 64,33,128,11,11,22,13,1,0,28,0,50,0,34,0,52, + 0,24,0,57,224,76,128,135,0,131,32,197,192,120,192,1, + 4,4,3,1,7,128,128,128,128,4,13,13,5,0,254,16, + 32,64,64,128,128,128,128,128,64,64,32,16,4,13,13,6, + 1,254,128,64,32,32,16,16,16,16,16,32,32,64,128,5, + 5,5,7,1,6,32,168,112,168,32,7,7,7,9,1,0, + 16,16,16,254,16,16,16,2,4,4,4,0,254,192,64,64, + 128,4,1,1,5,0,3,240,1,2,2,4,1,0,128,128, + 4,11,11,4,0,0,16,16,16,32,32,32,64,64,64,128, + 128,6,11,11,8,1,0,120,204,132,132,132,132,132,132,132, + 204,120,5,11,11,8,1,0,32,224,32,32,32,32,32,32, + 32,32,248,6,11,11,8,1,0,120,140,196,4,4,8,16, + 32,68,132,252,6,11,11,8,1,0,120,140,196,4,8,56, + 12,4,196,140,120,7,11,11,8,0,0,12,28,20,36,68, + 68,132,254,4,4,14,6,11,11,8,1,0,252,128,128,184, + 204,132,4,4,196,140,120,6,11,11,8,1,0,56,68,140, + 128,184,204,132,132,132,204,120,6,11,11,8,1,0,252,132, + 136,8,16,16,16,32,32,32,32,6,11,11,8,1,0,120, + 204,132,196,104,120,140,132,132,204,120,6,11,11,8,1,0, + 120,204,132,132,132,204,116,4,196,136,112,1,7,7,4,1, + 0,128,128,0,0,0,128,128,2,9,9,4,0,254,64,64, + 0,0,0,192,64,64,128,8,7,7,10,1,0,3,12,48, + 192,48,12,3,7,4,4,9,1,2,254,0,0,254,8,7, + 7,10,1,0,192,48,12,3,12,48,192,5,11,11,6,0, + 0,112,152,136,8,16,32,32,32,0,32,32,12,11,22,13, + 0,0,31,224,32,16,70,144,137,144,144,144,145,16,145,16, + 147,48,141,192,64,16,63,224,11,11,22,10,255,0,4,0, + 4,0,10,0,10,0,10,0,17,0,17,0,63,128,32,128, + 32,128,251,224,9,11,22,10,0,0,254,0,35,0,33,0, + 33,0,34,0,63,0,33,128,32,128,32,128,33,128,255,0, + 9,11,22,11,1,0,30,128,97,128,64,128,192,128,128,0, + 128,0,128,0,192,128,64,128,97,0,30,0,10,11,22,11, + 0,0,255,0,32,128,32,192,32,64,32,64,32,64,32,64, + 32,64,32,192,32,128,255,0,9,11,22,10,0,0,255,128, + 32,128,32,128,36,0,36,0,60,0,36,0,36,0,32,128, + 32,128,255,128,9,11,22,10,0,0,255,128,32,128,32,128, + 36,0,36,0,60,0,36,0,36,0,32,0,32,0,248,0, + 10,11,22,11,0,0,30,128,97,128,64,128,192,128,128,0, + 128,0,135,192,192,128,64,128,97,128,30,128,11,11,22,12, + 0,0,251,224,32,128,32,128,32,128,32,128,63,128,32,128, + 32,128,32,128,32,128,251,224,5,11,11,6,0,0,248,32, + 32,32,32,32,32,32,32,32,248,7,11,11,7,0,0,62, + 8,8,8,8,8,8,200,136,136,112,11,11,22,11,0,0, + 251,192,33,0,34,0,36,0,40,0,56,0,52,0,38,0, + 35,0,33,128,251,224,9,11,22,10,0,0,248,0,32,0, + 32,0,32,0,32,0,32,0,32,0,32,0,32,128,32,128, + 255,128,15,11,22,16,0,0,240,30,48,24,40,40,40,40, + 44,72,36,72,38,136,34,136,35,136,33,8,249,62,12,11, + 22,13,0,0,225,240,48,64,56,64,40,64,44,64,38,64, + 35,64,33,64,33,192,32,192,248,64,10,11,22,11,0,0, + 30,0,97,128,64,128,192,192,128,64,128,64,128,64,192,192, + 64,128,97,128,30,0,9,11,22,10,0,0,255,0,33,128, + 32,128,32,128,33,0,62,0,32,0,32,0,32,0,32,0, + 248,0,11,13,26,11,0,254,30,0,97,128,64,128,192,192, + 128,64,128,64,128,64,220,192,98,128,99,128,31,0,1,32, + 0,192,11,11,22,11,0,0,255,0,33,128,32,128,32,128, + 33,0,62,0,35,0,33,0,33,32,33,160,248,192,7,11, + 11,8,0,0,122,198,130,130,224,56,14,130,130,198,188,9, + 11,22,10,0,0,255,128,136,128,136,128,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,62,0,12,11,22,13,0, + 0,249,240,32,64,32,64,32,64,32,64,32,64,32,64,32, + 64,32,64,48,128,31,0,11,11,22,10,255,0,251,224,32, + 128,48,128,17,0,17,0,25,0,10,0,10,0,10,0,4, + 0,4,0,17,11,33,16,255,0,251,239,128,32,131,0,48, + 194,0,17,194,0,17,68,0,25,100,0,11,40,0,10,40, + 0,14,56,0,6,16,0,4,16,0,12,11,22,13,0,0, + 253,240,48,64,24,128,13,0,5,0,6,0,11,0,9,0, + 17,128,32,192,251,240,11,11,22,10,255,0,251,224,96,128, + 49,0,17,0,26,0,10,0,4,0,4,0,4,0,4,0, + 31,0,8,11,11,9,0,0,255,131,134,12,8,24,48,32, + 97,193,255,3,13,13,4,0,254,224,128,128,128,128,128,128, + 128,128,128,128,128,224,6,11,11,8,1,0,128,128,64,64, + 32,32,16,16,8,8,4,3,13,13,4,0,254,224,32,32, + 32,32,32,32,32,32,32,32,32,224,5,6,6,7,1,5, + 32,32,80,80,136,136,7,1,1,7,0,254,254,3,3,3, + 5,1,8,128,64,32,7,7,7,8,0,0,56,76,4,60, + 196,140,118,7,11,11,7,255,0,192,64,64,64,92,102,66, + 66,66,102,92,6,7,7,7,0,0,120,204,128,128,128,196, + 120,7,11,11,8,0,0,12,4,4,4,116,204,132,132,132, + 204,118,6,7,7,7,0,0,120,204,132,252,128,196,120,5, + 11,11,5,0,0,56,72,64,64,240,64,64,64,64,64,224, + 7,10,10,8,0,253,118,204,132,204,120,128,124,198,130,124, + 8,11,11,9,0,0,192,64,64,64,92,102,66,66,66,66, + 231,3,10,10,4,0,0,64,64,0,192,64,64,64,64,64, + 224,3,13,13,4,255,253,32,32,0,96,32,32,32,32,32, + 32,32,160,192,8,11,11,9,0,0,192,64,64,64,94,72, + 80,120,76,70,239,3,11,11,4,0,0,192,64,64,64,64, + 64,64,64,64,64,224,13,7,14,14,0,0,220,224,103,48, + 66,16,66,16,66,16,66,16,231,56,8,7,7,9,0,0, + 220,102,66,66,66,66,231,6,7,7,7,0,0,120,204,132, + 132,132,204,120,7,10,10,8,0,253,220,102,66,66,66,102, + 92,64,64,224,7,10,10,7,0,253,116,204,132,132,132,204, + 116,4,4,14,6,7,7,7,0,0,220,100,64,64,64,64, + 224,5,7,7,6,0,0,120,136,192,112,24,136,240,5,9, + 9,5,0,0,64,64,240,64,64,64,64,72,48,8,7,7, + 9,0,0,231,66,66,66,66,102,59,7,7,7,8,0,0, + 238,68,68,40,40,16,16,11,7,14,12,0,0,238,224,68, + 64,68,64,42,128,42,128,17,0,17,0,7,7,7,8,0, + 0,206,100,56,16,56,76,230,7,10,10,8,0,253,238,68, + 68,40,40,16,16,32,160,192,6,7,7,7,0,0,252,140, + 152,48,100,196,252,3,13,13,4,0,254,32,64,64,64,64, + 64,128,64,64,64,64,64,32,1,11,11,9,4,0,128,128, + 128,128,128,128,128,128,128,128,128,3,13,13,5,1,254,128, + 64,64,64,64,64,32,64,64,64,64,64,128,7,2,2,9, + 1,3,114,140,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--17-120-100-100-P-91-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=16 h=16 x= 4 y= 9 dx=17 dy= 0 ascent=16 len=32 + Font Bounding box w=21 h=26 x=-3 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =12 descent=-3 + X Font ascent =12 descent=-3 + Max Font ascent =16 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR12[4247] U8G_SECTION(".progmem.u8g_font_ncenR12") = { + 0,21,26,253,250,12,2,59,5,140,32,255,253,16,253,12, + 253,0,0,0,4,1,1,2,12,12,5,1,0,192,192,192, + 192,192,128,128,128,128,0,192,192,4,4,4,6,1,8,144, + 144,144,144,8,12,12,9,0,0,18,18,18,18,127,36,36, + 254,72,72,72,72,7,15,15,9,1,254,16,16,60,82,150, + 150,240,124,30,210,210,148,120,16,16,12,12,24,14,1,0, + 56,128,103,128,69,0,197,0,138,0,138,224,117,144,5,16, + 11,16,10,32,18,32,17,192,12,12,24,13,0,0,30,0, + 51,0,49,0,51,0,26,0,28,240,44,96,102,64,198,128, + 195,144,231,144,124,224,1,4,4,3,1,8,128,128,128,128, + 4,14,14,6,1,254,16,32,64,64,128,128,128,128,128,128, + 64,64,32,16,4,14,14,6,0,254,128,64,32,32,16,16, + 16,16,16,16,32,32,64,128,7,7,7,8,0,5,16,84, + 214,56,214,84,16,7,9,9,10,1,0,16,16,16,16,254, + 16,16,16,16,2,5,5,4,1,253,192,192,64,64,128,4, + 1,1,5,0,3,240,2,2,2,4,1,0,192,192,5,12, + 12,5,0,0,8,8,16,16,16,32,32,64,64,64,128,128, + 8,12,12,9,0,0,60,102,66,195,195,195,195,195,195,66, + 102,60,6,12,12,9,1,0,16,240,48,48,48,48,48,48, + 48,48,48,252,7,12,12,9,1,0,56,68,134,198,198,12, + 8,16,34,66,254,254,7,12,12,9,1,0,120,140,198,198, + 12,56,12,6,198,198,140,120,8,12,12,9,0,0,4,12, + 28,44,44,76,76,140,255,12,12,63,7,12,12,9,1,0, + 126,120,64,64,120,204,134,6,198,198,140,120,8,12,12,9, + 0,0,60,102,70,192,192,252,230,195,195,195,102,60,7,12, + 12,9,1,0,254,254,132,132,8,8,16,16,16,48,48,48, + 8,12,12,9,0,0,60,102,66,98,118,60,110,199,195,195, + 102,60,8,12,12,9,0,0,60,102,195,195,195,103,63,3, + 3,98,102,56,2,8,8,4,1,0,192,192,0,0,0,0, + 192,192,2,11,11,4,1,253,192,192,0,0,0,0,192,192, + 64,64,128,8,8,8,10,1,0,3,12,48,192,192,48,12, + 3,8,4,4,10,1,2,255,0,0,255,8,8,8,10,0, + 0,192,48,12,3,3,12,48,192,7,12,12,7,0,0,56, + 76,230,70,6,12,24,16,16,0,48,48,13,13,26,12,255, + 255,7,128,24,96,32,16,70,208,77,144,152,144,153,144,145, + 32,155,32,76,200,64,16,48,96,15,128,11,12,24,12,0, + 0,4,0,4,0,14,0,14,0,22,0,19,0,19,0,63, + 128,33,128,65,128,64,192,243,224,11,12,24,12,0,0,255, + 128,49,192,48,192,48,192,49,128,63,192,48,224,48,96,48, + 96,48,96,48,192,255,128,10,12,24,12,1,0,31,64,112, + 192,96,64,224,64,192,64,192,0,192,0,192,0,224,64,96, + 64,112,128,31,0,12,12,24,13,0,0,255,0,49,192,48, + 96,48,96,48,48,48,48,48,48,48,48,48,96,48,96,49, + 192,255,0,10,12,24,12,0,0,255,192,48,192,48,64,50, + 64,50,0,62,0,54,0,50,0,50,64,48,64,48,192,255, + 192,10,12,24,11,0,0,255,192,48,192,48,64,50,64,50, + 0,62,0,54,0,50,0,50,0,48,0,48,0,252,0,11, + 12,24,13,1,0,31,64,112,192,96,64,224,64,192,64,192, + 0,195,224,192,192,224,192,96,192,113,192,30,64,13,12,24, + 14,0,0,253,248,48,96,48,96,48,96,48,96,63,224,48, + 96,48,96,48,96,48,96,48,96,253,248,6,12,12,7,0, + 0,252,48,48,48,48,48,48,48,48,48,48,252,9,12,24, + 9,0,0,31,128,6,0,6,0,6,0,6,0,6,0,6, + 0,70,0,230,0,198,0,132,0,120,0,12,12,24,13,0, + 0,253,240,48,192,48,128,49,0,50,0,54,0,59,0,51, + 128,49,128,48,192,48,224,253,240,10,12,24,11,0,0,252, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,64,48, + 64,48,64,48,192,255,192,15,12,24,16,0,0,248,62,56, + 56,56,56,44,88,44,88,46,88,38,152,38,152,35,152,35, + 24,35,24,249,62,13,12,24,13,0,0,240,248,56,32,60, + 32,44,32,46,32,39,32,35,160,33,160,32,224,32,224,32, + 96,248,32,11,12,24,13,1,0,14,0,49,128,96,192,96, + 192,192,96,192,96,192,96,192,96,96,192,96,192,49,128,14, + 0,11,12,24,11,0,0,255,128,48,192,48,96,48,96,48, + 96,48,192,63,128,48,0,48,0,48,0,48,0,252,0,11, + 15,30,13,1,253,14,0,49,128,96,192,96,192,192,96,192, + 96,192,96,204,96,82,64,115,192,51,128,15,0,3,64,3, + 64,1,128,12,12,24,12,0,0,255,0,48,192,48,96,48, + 96,48,192,63,0,51,128,48,192,48,192,48,208,48,208,252, + 96,8,12,12,10,1,0,61,99,193,193,224,124,62,135,131, + 131,198,188,10,12,24,11,0,0,255,192,204,192,140,64,140, + 64,140,64,12,0,12,0,12,0,12,0,12,0,12,0,63, + 0,13,12,24,13,0,0,252,248,48,32,48,32,48,32,48, + 32,48,32,48,32,48,32,48,32,48,32,24,64,15,128,11, + 12,24,12,0,0,248,224,112,64,48,64,48,128,24,128,25, + 0,25,0,13,0,14,0,14,0,4,0,4,0,15,12,24, + 16,0,0,247,206,99,4,99,4,49,136,49,136,57,200,26, + 208,26,208,10,80,12,96,4,32,4,32,11,12,24,11,0, + 0,241,224,96,192,48,128,25,0,30,0,12,0,6,0,15, + 0,19,0,33,128,96,192,241,224,12,12,24,12,0,0,252, + 240,48,64,24,128,24,128,13,0,13,0,6,0,6,0,6, + 0,6,0,6,0,31,128,9,12,24,10,0,0,127,128,97, + 128,67,0,67,0,6,0,12,0,12,0,24,128,48,128,48, + 128,97,128,255,128,3,14,14,6,1,254,224,128,128,128,128, + 128,128,128,128,128,128,128,128,224,6,12,12,10,2,0,128, + 128,64,64,32,32,16,16,8,8,4,4,3,14,14,6,1, + 254,224,32,32,32,32,32,32,32,32,32,32,32,32,224,8, + 7,7,10,1,5,24,24,60,36,102,66,195,8,1,1,8, + 0,254,255,3,3,3,5,0,9,128,64,32,7,8,8,9, + 1,0,120,204,204,28,108,204,204,118,8,12,12,9,0,0, + 224,96,96,96,124,102,99,99,99,99,102,92,6,8,8,7, + 0,0,56,108,204,192,192,192,108,56,8,12,12,10,1,0, + 14,6,6,6,62,102,198,198,198,198,102,59,7,8,8,8, + 0,0,56,68,198,254,192,192,102,60,6,12,12,6,0,0, + 56,108,96,96,248,96,96,96,96,96,96,248,9,11,22,9, + 0,253,61,128,102,128,102,0,102,0,102,0,60,0,64,0, + 126,0,195,0,195,0,126,0,9,12,24,10,0,0,224,0, + 96,0,96,0,96,0,110,0,119,0,99,0,99,0,99,0, + 99,0,99,0,247,128,4,12,12,5,0,0,96,96,0,0, + 224,96,96,96,96,96,96,240,4,15,15,5,255,253,48,48, + 0,0,112,48,48,48,48,48,48,48,48,176,224,9,12,24, + 10,0,0,224,0,96,0,96,0,96,0,111,128,102,0,108, + 0,120,0,124,0,102,0,99,0,247,128,4,12,12,5,0, + 0,224,96,96,96,96,96,96,96,96,96,96,240,14,8,16, + 15,0,0,238,112,115,152,99,24,99,24,99,24,99,24,99, + 24,247,188,9,8,16,10,0,0,238,0,115,0,99,0,99, + 0,99,0,99,0,99,0,247,128,7,8,8,8,0,0,56, + 108,198,198,198,198,108,56,8,11,11,9,0,253,220,102,99, + 99,99,99,102,124,96,96,240,8,11,11,9,0,253,57,102, + 198,198,198,198,102,62,6,6,15,7,8,8,7,0,0,236, + 118,102,96,96,96,96,240,6,8,8,8,0,0,116,204,196, + 112,56,140,204,184,6,11,11,7,0,0,32,32,96,248,96, + 96,96,96,100,100,56,9,8,16,10,0,0,231,0,99,0, + 99,0,99,0,99,0,99,0,99,0,61,128,9,8,16,9, + 0,0,247,128,99,0,50,0,54,0,28,0,28,0,8,0, + 8,0,13,8,16,13,0,0,239,120,102,48,51,32,51,96, + 29,192,29,192,8,128,8,128,8,8,8,9,0,0,247,98, + 52,56,28,44,70,239,8,11,11,9,0,253,247,98,54,52, + 28,28,8,8,24,208,224,6,8,8,8,1,0,252,140,152, + 48,48,100,196,252,3,14,14,6,1,254,32,64,64,64,64, + 64,128,64,64,64,64,64,64,32,1,12,12,10,4,0,128, + 128,128,128,128,128,128,128,128,128,128,128,3,14,14,6,1, + 254,128,64,64,64,64,64,32,64,64,64,64,64,64,128,8, + 2,2,10,1,3,115,206,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,4,1,1,2,12, + 12,5,1,253,192,192,0,64,64,64,64,192,192,192,192,192, + 6,12,12,9,1,254,4,4,56,76,204,144,144,228,100,56, + 64,64,9,12,24,9,0,0,30,0,49,0,35,0,35,0, + 48,0,16,0,254,0,16,0,16,0,112,128,191,0,78,0, + 7,8,8,9,1,2,186,108,198,130,130,198,108,186,9,12, + 24,9,0,0,243,128,97,0,34,0,50,0,20,0,20,0, + 62,0,8,0,62,0,8,0,8,0,62,0,1,12,12,10, + 4,0,128,128,128,128,128,0,0,128,128,128,128,128,6,15, + 15,8,1,253,56,72,64,96,48,88,140,132,196,104,48,24, + 8,72,112,5,2,2,5,0,9,216,216,12,12,24,12,0, + 0,31,128,48,192,71,32,205,176,152,144,144,16,144,16,152, + 144,205,176,71,32,48,192,31,128,5,7,7,6,0,5,224, + 144,112,144,232,0,240,6,5,5,7,0,1,36,72,216,72, + 36,8,5,5,10,1,1,255,1,1,1,1,4,1,1,5, + 0,3,240,12,12,24,12,0,0,31,128,48,192,95,32,201, + 176,137,144,143,16,137,16,137,144,200,176,92,224,48,192,31, + 128,5,1,1,5,0,9,248,5,5,5,7,1,7,112,136, + 136,136,112,7,9,9,10,1,0,16,16,16,254,16,16,16, + 0,254,5,7,7,6,0,5,112,216,136,16,32,72,248,5, + 7,7,6,0,5,112,216,136,48,136,216,112,3,3,3,5, + 0,9,32,96,128,10,11,22,10,0,253,231,0,99,0,99, + 0,99,0,99,0,99,0,99,0,125,192,96,0,96,0,96, + 0,8,15,15,10,0,253,127,234,202,202,202,234,122,10,10, + 10,10,10,10,10,31,2,2,2,5,1,3,192,192,3,4, + 4,5,1,253,64,64,32,192,3,7,7,6,1,5,64,192, + 64,64,64,64,224,4,7,7,5,0,5,96,144,144,144,96, + 0,240,6,5,5,7,0,1,144,72,108,72,144,11,12,24, + 14,1,0,64,64,192,192,65,128,65,0,66,0,70,64,236, + 192,9,64,18,64,51,224,96,64,64,224,11,12,24,13,1, + 0,64,128,193,128,67,0,66,0,68,0,77,192,251,96,18, + 32,32,192,97,0,195,32,131,224,13,12,24,14,0,0,112, + 24,216,48,136,96,48,192,136,128,217,144,115,48,6,80,4, + 144,12,248,24,16,48,56,7,12,12,7,0,253,24,24,0, + 16,16,48,96,192,196,206,100,56,11,16,32,12,0,0,24, + 0,12,0,2,0,0,0,4,0,4,0,14,0,14,0,22, + 0,19,0,19,0,63,128,33,128,65,128,64,192,243,224,11, + 16,32,12,0,0,3,0,6,0,8,0,0,0,4,0,4, + 0,14,0,14,0,22,0,19,0,19,0,63,128,33,128,65, + 128,64,192,243,224,11,16,32,12,0,0,4,0,14,0,17, + 0,0,0,4,0,4,0,14,0,14,0,22,0,19,0,19, + 0,63,128,33,128,65,128,64,192,243,224,11,15,30,12,0, + 0,29,0,46,0,0,0,4,0,4,0,14,0,14,0,22, + 0,19,0,19,0,63,128,33,128,65,128,64,192,243,224,11, + 15,30,12,0,0,18,0,18,0,0,0,4,0,4,0,14, + 0,14,0,22,0,19,0,19,0,63,128,33,128,65,128,64, + 192,243,224,11,16,32,12,0,0,12,0,18,0,12,0,0, + 0,4,0,4,0,14,0,14,0,22,0,19,0,19,0,63, + 128,33,128,65,128,64,192,243,224,16,12,24,17,0,0,15, + 255,2,195,2,193,4,193,4,200,8,248,8,216,31,201,16, + 193,32,193,32,195,251,255,10,15,30,12,1,253,31,64,112, + 192,96,64,224,64,192,64,192,0,192,0,192,0,224,64,96, + 64,112,128,31,0,8,0,4,0,24,0,10,16,32,12,0, + 0,24,0,12,0,2,0,0,0,255,192,48,192,48,64,48, + 64,50,0,62,0,54,0,50,0,48,64,48,64,48,192,255, + 192,10,16,32,12,0,0,3,0,6,0,8,0,0,0,255, + 192,48,192,48,64,48,64,50,0,62,0,54,0,50,0,48, + 64,48,64,48,192,255,192,10,16,32,12,0,0,4,0,14, + 0,17,0,0,0,255,192,48,192,48,64,48,64,50,0,62, + 0,54,0,50,0,48,64,48,64,48,192,255,192,10,15,30, + 12,0,0,17,0,17,0,0,0,255,192,48,192,48,64,48, + 64,50,0,62,0,54,0,50,0,48,64,48,64,48,192,255, + 192,6,16,16,7,0,0,192,96,16,0,252,48,48,48,48, + 48,48,48,48,48,48,252,6,16,16,7,0,0,12,24,32, + 0,252,48,48,48,48,48,48,48,48,48,48,252,6,16,16, + 7,0,0,32,112,136,0,252,48,48,48,48,48,48,48,48, + 48,48,252,6,15,15,7,0,0,72,72,0,252,48,48,48, + 48,48,48,48,48,48,48,252,12,12,24,13,0,0,255,0, + 49,192,48,96,48,96,48,48,124,48,48,48,48,48,48,96, + 48,96,49,192,255,0,13,15,30,13,0,0,14,64,19,128, + 0,0,240,248,56,32,60,32,44,32,46,32,39,32,35,160, + 33,160,32,224,32,224,32,96,248,32,11,16,32,13,1,0, + 24,0,12,0,2,0,0,0,14,0,49,128,96,192,96,192, + 192,96,192,96,192,96,192,96,96,192,96,192,49,128,14,0, + 11,16,32,13,1,0,1,128,3,0,4,0,0,0,14,0, + 49,128,96,192,96,192,192,96,192,96,192,96,192,96,96,192, + 96,192,49,128,14,0,11,16,32,13,1,0,4,0,14,0, + 17,0,0,0,14,0,49,128,96,192,96,192,192,96,192,96, + 192,96,192,96,96,192,96,192,49,128,14,0,11,15,30,13, + 1,0,14,128,23,0,0,0,14,0,49,128,96,192,96,192, + 192,96,192,96,192,96,192,96,96,192,96,192,49,128,14,0, + 11,15,30,13,1,0,17,0,17,0,0,0,14,0,49,128, + 96,192,96,192,192,96,192,96,192,96,192,96,96,192,96,192, + 49,128,14,0,8,8,8,10,1,0,129,66,36,24,24,36, + 66,129,11,14,28,13,1,255,0,32,14,64,49,128,97,192, + 97,64,194,96,196,96,196,96,200,96,80,192,112,192,49,128, + 78,0,128,0,13,16,32,13,0,0,12,0,6,0,1,0, + 0,0,252,248,48,32,48,32,48,32,48,32,48,32,48,32, + 48,32,48,32,48,32,24,64,15,128,13,16,32,13,0,0, + 0,192,1,128,2,0,0,0,252,248,48,32,48,32,48,32, + 48,32,48,32,48,32,48,32,48,32,48,32,24,64,15,128, + 13,16,32,13,0,0,2,0,7,0,8,128,0,0,252,248, + 48,32,48,32,48,32,48,32,48,32,48,32,48,32,48,32, + 48,32,24,64,15,128,13,15,30,13,0,0,8,128,8,128, + 0,0,252,248,48,32,48,32,48,32,48,32,48,32,48,32, + 48,32,48,32,48,32,24,64,15,128,12,16,32,12,0,0, + 1,128,3,0,4,0,0,0,252,240,48,64,24,128,24,128, + 13,0,13,0,6,0,6,0,6,0,6,0,6,0,31,128, + 11,12,24,11,0,0,252,0,48,0,48,0,63,128,48,192, + 48,96,48,96,48,192,63,128,48,0,48,0,252,0,8,12, + 12,10,1,0,60,102,99,99,102,124,102,99,99,99,118,236, + 7,12,12,9,1,0,64,96,16,0,120,204,204,28,108,204, + 204,118,7,12,12,9,1,0,4,12,16,0,120,204,204,28, + 108,204,204,118,7,12,12,9,1,0,16,56,68,0,120,204, + 204,28,108,204,204,118,7,11,11,9,1,0,52,88,0,120, + 204,204,28,108,204,204,118,7,11,11,9,1,0,72,72,0, + 120,204,204,28,108,204,204,118,7,13,13,9,1,0,48,72, + 72,48,0,120,204,204,28,108,204,204,118,12,8,16,13,0, + 0,121,192,206,32,198,48,31,240,102,0,198,16,207,32,121, + 192,6,11,11,7,0,253,56,108,204,192,192,196,108,56,32, + 16,96,7,12,12,8,0,0,32,48,8,0,56,68,198,254, + 192,192,102,60,7,12,12,8,0,0,4,12,16,0,56,68, + 198,254,192,192,102,60,7,12,12,8,0,0,16,56,68,0, + 56,68,198,254,192,192,102,60,7,11,11,8,0,0,36,36, + 0,56,68,198,254,192,192,102,60,4,12,12,5,0,0,128, + 192,32,0,224,96,96,96,96,96,96,240,4,12,12,5,0, + 0,16,48,64,0,224,96,96,96,96,96,96,240,5,12,12, + 5,255,0,32,112,136,0,112,48,48,48,48,48,48,120,4, + 11,11,5,0,0,144,144,0,224,96,96,96,96,96,96,240, + 7,13,13,8,0,0,64,38,24,104,12,60,110,198,198,198, + 198,108,56,9,11,22,10,0,0,26,0,44,0,0,0,238, + 0,115,0,99,0,99,0,99,0,99,0,99,0,247,128,7, + 12,12,8,0,0,64,96,16,0,56,108,198,198,198,198,108, + 56,7,12,12,8,0,0,4,12,16,0,56,108,198,198,198, + 198,108,56,7,12,12,8,0,0,16,56,68,0,56,108,198, + 198,198,198,108,56,7,11,11,8,0,0,52,88,0,56,108, + 198,198,198,198,108,56,7,11,11,8,0,0,72,72,0,56, + 108,198,198,198,198,108,56,8,7,7,10,1,1,24,24,0, + 255,0,24,24,7,10,10,8,0,255,2,60,100,206,214,214, + 230,76,120,128,9,12,24,10,0,0,32,0,48,0,8,0, + 0,0,231,0,99,0,99,0,99,0,99,0,99,0,99,0, + 61,128,9,12,24,10,0,0,2,0,6,0,8,0,0,0, + 231,0,99,0,99,0,99,0,99,0,99,0,99,0,61,128, + 9,12,24,10,0,0,8,0,28,0,34,0,0,0,231,0, + 99,0,99,0,99,0,99,0,99,0,99,0,61,128,9,11, + 22,10,0,0,36,0,36,0,0,0,231,0,99,0,99,0, + 99,0,99,0,99,0,99,0,61,128,8,15,15,9,0,253, + 2,6,8,0,247,98,54,52,28,24,8,24,16,208,224,8, + 14,14,9,0,253,224,96,96,124,102,99,99,99,99,102,124, + 96,96,240,8,14,14,9,0,253,36,36,0,247,98,54,52, + 28,24,8,24,16,208,224}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--17-120-100-100-P-91-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 12, '1' Height: 12 + Calculated Max Values w=15 h=15 x= 4 y= 9 dx=16 dy= 0 ascent=13 len=30 + Font Bounding box w=21 h=26 x=-3 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =12 descent=-3 + X Font ascent =12 descent=-3 + Max Font ascent =13 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR12r[1976] U8G_SECTION(".progmem.u8g_font_ncenR12r") = { + 0,21,26,253,250,12,2,59,5,140,32,127,253,13,253,12, + 253,0,0,0,4,1,1,2,12,12,5,1,0,192,192,192, + 192,192,128,128,128,128,0,192,192,4,4,4,6,1,8,144, + 144,144,144,8,12,12,9,0,0,18,18,18,18,127,36,36, + 254,72,72,72,72,7,15,15,9,1,254,16,16,60,82,150, + 150,240,124,30,210,210,148,120,16,16,12,12,24,14,1,0, + 56,128,103,128,69,0,197,0,138,0,138,224,117,144,5,16, + 11,16,10,32,18,32,17,192,12,12,24,13,0,0,30,0, + 51,0,49,0,51,0,26,0,28,240,44,96,102,64,198,128, + 195,144,231,144,124,224,1,4,4,3,1,8,128,128,128,128, + 4,14,14,6,1,254,16,32,64,64,128,128,128,128,128,128, + 64,64,32,16,4,14,14,6,0,254,128,64,32,32,16,16, + 16,16,16,16,32,32,64,128,7,7,7,8,0,5,16,84, + 214,56,214,84,16,7,9,9,10,1,0,16,16,16,16,254, + 16,16,16,16,2,5,5,4,1,253,192,192,64,64,128,4, + 1,1,5,0,3,240,2,2,2,4,1,0,192,192,5,12, + 12,5,0,0,8,8,16,16,16,32,32,64,64,64,128,128, + 8,12,12,9,0,0,60,102,66,195,195,195,195,195,195,66, + 102,60,6,12,12,9,1,0,16,240,48,48,48,48,48,48, + 48,48,48,252,7,12,12,9,1,0,56,68,134,198,198,12, + 8,16,34,66,254,254,7,12,12,9,1,0,120,140,198,198, + 12,56,12,6,198,198,140,120,8,12,12,9,0,0,4,12, + 28,44,44,76,76,140,255,12,12,63,7,12,12,9,1,0, + 126,120,64,64,120,204,134,6,198,198,140,120,8,12,12,9, + 0,0,60,102,70,192,192,252,230,195,195,195,102,60,7,12, + 12,9,1,0,254,254,132,132,8,8,16,16,16,48,48,48, + 8,12,12,9,0,0,60,102,66,98,118,60,110,199,195,195, + 102,60,8,12,12,9,0,0,60,102,195,195,195,103,63,3, + 3,98,102,56,2,8,8,4,1,0,192,192,0,0,0,0, + 192,192,2,11,11,4,1,253,192,192,0,0,0,0,192,192, + 64,64,128,8,8,8,10,1,0,3,12,48,192,192,48,12, + 3,8,4,4,10,1,2,255,0,0,255,8,8,8,10,0, + 0,192,48,12,3,3,12,48,192,7,12,12,7,0,0,56, + 76,230,70,6,12,24,16,16,0,48,48,13,13,26,12,255, + 255,7,128,24,96,32,16,70,208,77,144,152,144,153,144,145, + 32,155,32,76,200,64,16,48,96,15,128,11,12,24,12,0, + 0,4,0,4,0,14,0,14,0,22,0,19,0,19,0,63, + 128,33,128,65,128,64,192,243,224,11,12,24,12,0,0,255, + 128,49,192,48,192,48,192,49,128,63,192,48,224,48,96,48, + 96,48,96,48,192,255,128,10,12,24,12,1,0,31,64,112, + 192,96,64,224,64,192,64,192,0,192,0,192,0,224,64,96, + 64,112,128,31,0,12,12,24,13,0,0,255,0,49,192,48, + 96,48,96,48,48,48,48,48,48,48,48,48,96,48,96,49, + 192,255,0,10,12,24,12,0,0,255,192,48,192,48,64,50, + 64,50,0,62,0,54,0,50,0,50,64,48,64,48,192,255, + 192,10,12,24,11,0,0,255,192,48,192,48,64,50,64,50, + 0,62,0,54,0,50,0,50,0,48,0,48,0,252,0,11, + 12,24,13,1,0,31,64,112,192,96,64,224,64,192,64,192, + 0,195,224,192,192,224,192,96,192,113,192,30,64,13,12,24, + 14,0,0,253,248,48,96,48,96,48,96,48,96,63,224,48, + 96,48,96,48,96,48,96,48,96,253,248,6,12,12,7,0, + 0,252,48,48,48,48,48,48,48,48,48,48,252,9,12,24, + 9,0,0,31,128,6,0,6,0,6,0,6,0,6,0,6, + 0,70,0,230,0,198,0,132,0,120,0,12,12,24,13,0, + 0,253,240,48,192,48,128,49,0,50,0,54,0,59,0,51, + 128,49,128,48,192,48,224,253,240,10,12,24,11,0,0,252, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,64,48, + 64,48,64,48,192,255,192,15,12,24,16,0,0,248,62,56, + 56,56,56,44,88,44,88,46,88,38,152,38,152,35,152,35, + 24,35,24,249,62,13,12,24,13,0,0,240,248,56,32,60, + 32,44,32,46,32,39,32,35,160,33,160,32,224,32,224,32, + 96,248,32,11,12,24,13,1,0,14,0,49,128,96,192,96, + 192,192,96,192,96,192,96,192,96,96,192,96,192,49,128,14, + 0,11,12,24,11,0,0,255,128,48,192,48,96,48,96,48, + 96,48,192,63,128,48,0,48,0,48,0,48,0,252,0,11, + 15,30,13,1,253,14,0,49,128,96,192,96,192,192,96,192, + 96,192,96,204,96,82,64,115,192,51,128,15,0,3,64,3, + 64,1,128,12,12,24,12,0,0,255,0,48,192,48,96,48, + 96,48,192,63,0,51,128,48,192,48,192,48,208,48,208,252, + 96,8,12,12,10,1,0,61,99,193,193,224,124,62,135,131, + 131,198,188,10,12,24,11,0,0,255,192,204,192,140,64,140, + 64,140,64,12,0,12,0,12,0,12,0,12,0,12,0,63, + 0,13,12,24,13,0,0,252,248,48,32,48,32,48,32,48, + 32,48,32,48,32,48,32,48,32,48,32,24,64,15,128,11, + 12,24,12,0,0,248,224,112,64,48,64,48,128,24,128,25, + 0,25,0,13,0,14,0,14,0,4,0,4,0,15,12,24, + 16,0,0,247,206,99,4,99,4,49,136,49,136,57,200,26, + 208,26,208,10,80,12,96,4,32,4,32,11,12,24,11,0, + 0,241,224,96,192,48,128,25,0,30,0,12,0,6,0,15, + 0,19,0,33,128,96,192,241,224,12,12,24,12,0,0,252, + 240,48,64,24,128,24,128,13,0,13,0,6,0,6,0,6, + 0,6,0,6,0,31,128,9,12,24,10,0,0,127,128,97, + 128,67,0,67,0,6,0,12,0,12,0,24,128,48,128,48, + 128,97,128,255,128,3,14,14,6,1,254,224,128,128,128,128, + 128,128,128,128,128,128,128,128,224,6,12,12,10,2,0,128, + 128,64,64,32,32,16,16,8,8,4,4,3,14,14,6,1, + 254,224,32,32,32,32,32,32,32,32,32,32,32,32,224,8, + 7,7,10,1,5,24,24,60,36,102,66,195,8,1,1,8, + 0,254,255,3,3,3,5,0,9,128,64,32,7,8,8,9, + 1,0,120,204,204,28,108,204,204,118,8,12,12,9,0,0, + 224,96,96,96,124,102,99,99,99,99,102,92,6,8,8,7, + 0,0,56,108,204,192,192,192,108,56,8,12,12,10,1,0, + 14,6,6,6,62,102,198,198,198,198,102,59,7,8,8,8, + 0,0,56,68,198,254,192,192,102,60,6,12,12,6,0,0, + 56,108,96,96,248,96,96,96,96,96,96,248,9,11,22,9, + 0,253,61,128,102,128,102,0,102,0,102,0,60,0,64,0, + 126,0,195,0,195,0,126,0,9,12,24,10,0,0,224,0, + 96,0,96,0,96,0,110,0,119,0,99,0,99,0,99,0, + 99,0,99,0,247,128,4,12,12,5,0,0,96,96,0,0, + 224,96,96,96,96,96,96,240,4,15,15,5,255,253,48,48, + 0,0,112,48,48,48,48,48,48,48,48,176,224,9,12,24, + 10,0,0,224,0,96,0,96,0,96,0,111,128,102,0,108, + 0,120,0,124,0,102,0,99,0,247,128,4,12,12,5,0, + 0,224,96,96,96,96,96,96,96,96,96,96,240,14,8,16, + 15,0,0,238,112,115,152,99,24,99,24,99,24,99,24,99, + 24,247,188,9,8,16,10,0,0,238,0,115,0,99,0,99, + 0,99,0,99,0,99,0,247,128,7,8,8,8,0,0,56, + 108,198,198,198,198,108,56,8,11,11,9,0,253,220,102,99, + 99,99,99,102,124,96,96,240,8,11,11,9,0,253,57,102, + 198,198,198,198,102,62,6,6,15,7,8,8,7,0,0,236, + 118,102,96,96,96,96,240,6,8,8,8,0,0,116,204,196, + 112,56,140,204,184,6,11,11,7,0,0,32,32,96,248,96, + 96,96,96,100,100,56,9,8,16,10,0,0,231,0,99,0, + 99,0,99,0,99,0,99,0,99,0,61,128,9,8,16,9, + 0,0,247,128,99,0,50,0,54,0,28,0,28,0,8,0, + 8,0,13,8,16,13,0,0,239,120,102,48,51,32,51,96, + 29,192,29,192,8,128,8,128,8,8,8,9,0,0,247,98, + 52,56,28,44,70,239,8,11,11,9,0,253,247,98,54,52, + 28,28,8,8,24,208,224,6,8,8,8,1,0,252,140,152, + 48,48,100,196,252,3,14,14,6,1,254,32,64,64,64,64, + 64,128,64,64,64,64,64,64,32,1,12,12,10,4,0,128, + 128,128,128,128,128,128,128,128,128,128,128,3,14,14,6,1, + 254,128,64,64,64,64,64,32,64,64,64,64,64,64,128,8, + 2,2,10,1,3,115,206,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--20-140-100-100-P-103-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=19 x= 4 y=11 dx=19 dy= 0 ascent=19 len=42 + Font Bounding box w=27 h=30 x=-4 y=-7 + Calculated Min Values x=-3 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =19 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR14[5319] U8G_SECTION(".progmem.u8g_font_ncenR14") = { + 0,27,30,252,249,14,3,41,7,30,32,255,252,19,252,14, + 252,0,0,0,5,0,1,2,14,14,5,1,0,192,192,192, + 192,192,192,192,128,128,128,0,0,192,192,4,5,5,7,1, + 9,144,144,144,144,144,10,13,26,11,0,0,9,0,9,0, + 9,0,9,0,127,192,18,0,18,0,18,0,255,128,36,0, + 36,0,36,0,36,0,9,17,34,10,0,254,8,0,8,0, + 63,0,105,128,201,128,200,0,232,0,120,0,30,0,15,0, + 11,128,9,128,201,128,203,0,126,0,8,0,8,0,15,14, + 28,16,0,0,28,32,50,32,99,192,98,64,196,128,196,128, + 201,28,113,50,2,98,2,98,4,196,4,196,8,200,8,112, + 13,14,28,14,0,0,30,0,51,0,33,0,35,0,54,0, + 28,0,57,248,124,96,238,64,199,128,195,128,193,200,227,240, + 124,96,1,5,5,4,1,9,128,128,128,128,128,6,17,17, + 7,0,253,4,24,48,96,96,192,192,192,192,192,192,192,96, + 96,48,24,4,6,17,17,7,0,253,128,96,48,24,24,12, + 12,12,12,12,12,12,24,24,48,96,128,7,7,7,10,1, + 7,16,146,214,56,214,146,16,9,9,18,10,0,1,8,0, + 8,0,8,0,8,0,255,128,8,0,8,0,8,0,8,0, + 3,5,5,5,0,253,96,96,32,64,128,5,1,1,6,0, + 5,248,2,2,2,5,1,0,192,192,5,14,14,6,0,0, + 8,8,8,16,16,16,32,32,32,64,64,64,128,128,9,14, + 28,10,0,0,28,0,99,0,99,0,193,128,193,128,193,128, + 193,128,193,128,193,128,193,128,193,128,99,0,99,0,28,0, + 8,14,14,10,1,0,24,248,24,24,24,24,24,24,24,24, + 24,24,24,255,9,14,28,10,0,0,30,0,99,0,193,128, + 193,128,1,128,1,128,3,0,6,0,12,0,24,0,48,128, + 96,128,255,128,255,128,9,14,28,10,0,0,62,0,99,0, + 97,128,1,128,1,128,3,0,30,0,3,0,1,128,1,128, + 1,128,193,128,195,0,126,0,10,14,28,10,0,0,3,0, + 7,0,11,0,11,0,19,0,19,0,35,0,35,0,67,0, + 67,0,255,192,3,0,3,0,15,128,9,14,28,10,0,0, + 127,128,127,0,64,0,64,0,64,0,94,0,99,0,65,128, + 1,128,1,128,1,128,193,128,195,0,126,0,9,14,28,10, + 0,0,15,0,49,128,97,128,96,0,192,0,206,0,223,0, + 227,128,193,128,193,128,193,128,193,128,99,0,62,0,9,14, + 28,10,0,0,255,128,255,128,129,0,131,0,2,0,6,0, + 6,0,12,0,12,0,24,0,24,0,24,0,24,0,24,0, + 9,14,28,10,0,0,62,0,99,0,65,0,65,0,97,0, + 114,0,62,0,47,0,67,128,193,128,193,128,193,128,99,0, + 62,0,9,14,28,10,0,0,62,0,99,0,193,128,193,128, + 193,128,193,128,227,128,125,128,57,128,1,128,3,0,195,0, + 198,0,120,0,2,9,9,5,1,0,192,192,0,0,0,0, + 0,192,192,3,12,12,5,0,253,96,96,0,0,0,0,0, + 96,96,32,64,128,9,9,18,10,0,1,0,128,3,128,14, + 0,56,0,224,0,56,0,14,0,3,128,0,128,9,4,8, + 10,0,4,255,128,0,0,0,0,255,128,9,9,18,10,0, + 1,128,0,224,0,56,0,14,0,3,128,14,0,56,0,224, + 0,128,0,7,14,14,8,0,0,60,206,198,6,6,4,8, + 8,16,16,0,0,48,48,13,14,28,14,0,0,7,128,24, + 96,32,16,70,208,77,200,140,200,152,200,153,144,153,144,155, + 160,76,192,64,16,32,96,31,128,14,14,28,13,255,0,3, + 0,3,0,3,0,5,128,5,128,5,128,8,192,8,192,31, + 224,16,96,16,96,32,48,32,48,248,252,12,14,28,13,0, + 0,255,128,48,192,48,96,48,96,48,96,48,192,63,128,48, + 96,48,48,48,48,48,48,48,48,48,96,255,192,12,14,28, + 13,0,0,15,144,56,112,96,48,96,16,192,16,192,0,192, + 0,192,0,192,0,192,0,96,16,96,16,56,96,15,192,14, + 14,28,15,0,0,255,192,48,112,48,24,48,24,48,12,48, + 12,48,12,48,12,48,12,48,12,48,24,48,24,48,112,255, + 192,11,14,28,12,0,0,255,224,48,96,48,32,48,32,49, + 32,49,0,63,0,49,0,49,0,48,32,48,32,48,32,48, + 96,255,224,11,14,28,12,0,0,255,224,48,96,48,32,48, + 32,49,32,49,0,63,0,49,0,49,0,48,0,48,0,48, + 0,48,0,252,0,14,14,28,15,0,0,15,200,56,120,96, + 24,96,8,192,8,192,0,192,0,192,0,192,124,192,24,96, + 24,96,24,56,120,15,200,15,14,28,16,0,0,252,126,48, + 24,48,24,48,24,48,24,48,24,63,248,48,24,48,24,48, + 24,48,24,48,24,48,24,252,126,6,14,14,7,0,0,252, + 48,48,48,48,48,48,48,48,48,48,48,48,252,9,14,28, + 10,0,0,31,128,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,198,0,198,0,132,0,120,0,15, + 14,28,15,0,0,252,248,48,96,48,64,48,128,49,0,50, + 0,54,0,63,0,51,128,49,192,48,224,48,112,48,56,252, + 254,11,14,28,12,0,0,252,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,32,48,32,48,32,48, + 96,255,224,17,14,42,18,0,0,248,15,128,56,14,0,44, + 22,0,44,22,0,44,22,0,38,38,0,38,38,0,38,38, + 0,35,70,0,35,70,0,35,70,0,33,134,0,33,134,0, + 249,159,128,14,14,28,15,0,0,240,124,48,16,56,16,60, + 16,46,16,38,16,35,16,35,144,33,144,32,208,32,240,32, + 112,32,48,248,16,14,14,28,15,0,0,15,192,56,112,96, + 24,96,24,192,12,192,12,192,12,192,12,192,12,192,12,96, + 24,96,24,56,112,15,192,11,14,28,12,0,0,255,128,48, + 192,48,96,48,96,48,96,48,96,48,192,63,0,48,0,48, + 0,48,0,48,0,48,0,252,0,15,18,36,15,0,252,15, + 192,56,112,96,24,96,24,192,12,192,12,192,12,192,12,192, + 12,207,12,113,152,96,152,56,240,15,224,0,96,0,114,0, + 62,0,28,14,14,28,14,0,0,255,128,48,192,48,96,48, + 96,48,96,48,192,63,0,49,128,48,192,48,192,48,224,48, + 96,48,116,248,56,10,14,28,11,0,0,62,128,97,128,192, + 128,192,128,192,0,240,0,126,0,31,128,3,192,128,192,128, + 192,192,192,225,128,191,0,12,14,28,13,0,0,255,240,198, + 48,134,16,134,16,134,16,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,31,128,14,14,28,15,0,0,252, + 124,48,16,48,16,48,16,48,16,48,16,48,16,48,16,48, + 16,48,16,48,16,48,16,24,32,15,192,14,14,28,13,255, + 0,252,124,48,16,48,16,24,32,24,32,24,32,12,64,12, + 64,12,64,6,128,6,128,6,128,3,0,3,0,20,14,42, + 19,255,0,253,249,240,48,96,64,48,96,64,24,112,128,24, + 112,128,24,112,128,12,153,0,12,153,0,12,153,0,5,9, + 0,7,14,0,7,14,0,3,6,0,3,6,0,13,14,28, + 14,1,0,248,240,48,64,56,192,24,128,13,128,15,0,6, + 0,7,0,15,128,9,128,16,192,48,224,32,96,249,248,14, + 14,28,13,255,0,252,124,48,16,24,32,24,32,12,64,12, + 64,6,128,7,128,3,0,3,0,3,0,3,0,3,0,15, + 192,10,14,28,11,0,0,255,192,192,192,129,128,131,128,131, + 0,6,0,14,0,28,0,24,0,48,64,112,64,96,64,192, + 192,255,192,4,17,17,6,1,253,240,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,240,7,14,14,10,1,0, + 128,128,192,64,96,32,48,16,24,8,12,4,6,2,4,17, + 17,6,0,253,240,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,240,9,9,18,10,0,5,8,0,8,0,28, + 0,20,0,54,0,34,0,99,0,65,0,193,128,9,1,2, + 9,0,254,255,128,4,3,3,6,1,10,192,96,16,9,9, + 18,10,0,0,28,0,98,0,99,0,3,0,31,0,99,0, + 195,0,199,0,121,128,10,14,28,10,255,0,224,0,96,0, + 96,0,96,0,96,0,111,0,113,128,96,192,96,192,96,192, + 96,192,96,192,113,128,79,0,8,9,9,9,0,0,60,99, + 195,192,192,192,193,99,62,10,14,28,11,0,0,3,128,1, + 128,1,128,1,128,1,128,61,128,99,128,193,128,193,128,193, + 128,193,128,193,128,99,128,61,192,8,9,9,9,0,0,60, + 102,195,195,255,192,193,99,62,8,14,14,7,0,0,14,27, + 51,48,48,252,48,48,48,48,48,48,48,120,10,14,28,11, + 0,252,0,192,31,192,51,0,97,128,97,128,51,0,62,0, + 64,0,127,0,63,128,65,192,128,192,193,128,127,0,10,14, + 28,11,0,0,224,0,96,0,96,0,96,0,96,0,111,0, + 115,128,97,128,97,128,97,128,97,128,97,128,97,128,243,192, + 4,13,13,5,0,0,96,96,0,0,224,96,96,96,96,96, + 96,96,240,6,17,17,5,253,252,12,12,0,0,28,12,12, + 12,12,12,12,12,12,12,204,200,112,10,14,28,10,0,0, + 224,0,96,0,96,0,96,0,96,0,103,128,98,0,100,0, + 104,0,120,0,108,0,102,0,99,0,247,192,4,14,14,5, + 0,0,224,96,96,96,96,96,96,96,96,96,96,96,96,240, + 16,9,18,17,0,0,239,60,115,206,97,134,97,134,97,134, + 97,134,97,134,97,134,243,207,10,9,18,11,0,0,239,0, + 115,128,97,128,97,128,97,128,97,128,97,128,97,128,243,192, + 9,9,18,10,0,0,62,0,99,0,193,128,193,128,193,128, + 193,128,193,128,99,0,62,0,10,13,26,11,0,252,239,0, + 113,128,96,192,96,192,96,192,96,192,96,192,113,128,111,0, + 96,0,96,0,96,0,240,0,10,13,26,10,0,252,60,128, + 99,128,193,128,193,128,193,128,193,128,193,128,99,128,61,128, + 1,128,1,128,1,128,3,192,7,9,9,8,0,0,230,110, + 114,96,96,96,96,96,240,7,9,9,8,0,0,122,198,130, + 224,124,14,130,198,188,6,12,12,6,0,0,96,96,96,248, + 96,96,96,96,96,96,100,56,10,9,18,11,0,0,227,128, + 97,128,97,128,97,128,97,128,97,128,97,128,115,128,61,192, + 10,9,18,11,0,0,241,192,96,128,96,128,49,0,49,0, + 26,0,30,0,12,0,12,0,15,9,18,16,0,0,247,222, + 97,132,97,132,50,200,50,200,52,208,28,112,28,112,8,32, + 9,9,18,10,0,0,243,128,97,0,50,0,28,0,8,0, + 28,0,38,0,67,0,231,128,10,13,26,11,0,252,241,192, + 96,128,49,0,49,0,26,0,26,0,12,0,12,0,8,0, + 8,0,16,0,208,0,224,0,7,9,9,8,0,0,254,134, + 140,24,24,48,98,198,254,5,17,17,6,0,253,24,32,96, + 96,96,96,96,64,128,64,96,96,96,96,96,32,24,2,14, + 14,11,4,0,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,5,17,17,6,0,253,192,32,48,48,48,48,48,16, + 8,16,48,48,48,48,48,32,192,10,3,6,11,0,4,56, + 192,109,128,199,0,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,0,0,0,5,0,1,2,14,14,5, + 1,252,192,192,0,0,64,64,64,192,192,192,192,192,192,192, + 8,13,13,10,1,254,2,2,30,103,203,200,200,208,208,115, + 62,32,32,10,14,28,11,0,0,15,0,25,128,49,128,48, + 0,48,0,24,0,255,128,12,0,12,0,12,0,12,0,120, + 64,158,64,247,128,9,9,18,12,1,3,156,128,255,128,99, + 0,193,128,193,128,193,128,99,0,255,128,156,128,14,14,28, + 15,0,0,252,124,48,16,24,32,24,32,12,64,12,64,6, + 128,31,224,3,0,3,0,31,224,3,0,3,0,15,192,2, + 14,14,10,4,0,192,192,192,192,192,0,0,0,192,192,192, + 192,192,192,8,17,17,9,0,253,60,102,70,64,96,120,62, + 79,195,227,122,60,14,6,98,102,60,6,2,2,7,0,10, + 204,204,14,14,28,15,0,0,7,128,24,96,32,16,71,136, + 72,200,144,68,144,4,144,4,144,4,72,72,71,136,32,16, + 24,96,7,128,6,8,8,7,0,6,112,136,56,200,152,108, + 0,252,8,7,7,9,0,2,17,51,102,204,102,51,17,9, + 5,10,10,0,3,255,128,0,128,0,128,0,128,0,128,5, + 1,1,6,0,5,248,14,14,28,15,0,0,7,128,24,96, + 32,16,79,136,68,200,132,68,132,196,135,132,132,132,68,72, + 78,104,32,16,24,96,7,128,6,1,1,7,0,10,252,6, + 6,6,7,0,8,120,204,132,132,204,120,9,9,18,10,0, + 1,8,0,8,0,8,0,255,128,8,0,8,0,8,0,0, + 0,255,128,6,8,8,6,0,6,120,204,140,24,48,96,196, + 252,6,8,8,6,0,6,120,204,140,56,12,140,204,120,4, + 3,3,6,1,11,48,96,128,10,13,26,11,0,252,227,192, + 97,128,97,128,97,128,97,128,97,128,97,128,115,128,125,192, + 64,0,64,0,96,0,96,0,10,17,34,11,0,253,63,192, + 233,0,201,0,201,0,201,0,201,0,233,0,57,0,9,0, + 9,0,9,0,9,0,9,0,9,0,9,0,9,0,63,192, + 2,2,2,5,1,5,192,192,4,4,4,6,0,252,64,112, + 16,224,6,8,8,6,0,6,48,240,48,48,48,48,48,252, + 5,8,8,6,0,6,112,216,136,136,216,112,0,248,8,7, + 7,9,0,2,136,204,102,51,102,204,136,15,14,28,15,0, + 0,48,32,240,32,48,64,48,64,48,128,48,128,49,24,253, + 56,2,40,2,88,4,152,4,254,8,24,8,60,14,14,28, + 15,0,0,48,32,240,32,48,64,48,64,48,128,48,128,49, + 120,253,204,2,140,2,24,4,48,4,96,8,196,8,252,15, + 14,28,15,0,0,120,32,204,32,140,64,56,64,12,128,140, + 128,205,24,121,56,2,40,2,88,4,152,4,254,8,24,8, + 60,7,14,14,8,0,252,24,24,0,0,16,16,32,32,64, + 192,192,198,230,120,14,18,36,13,255,0,12,0,6,0,1, + 0,0,0,3,0,3,0,3,0,5,128,5,128,5,128,8, + 192,8,192,31,224,16,96,16,96,32,48,32,48,248,252,14, + 18,36,13,255,0,0,192,1,128,2,0,0,0,3,0,3, + 0,3,0,5,128,5,128,5,128,8,192,8,192,31,224,16, + 96,16,96,32,48,32,48,248,252,14,18,36,13,255,0,3, + 0,7,128,8,64,0,0,3,0,3,0,3,0,5,128,5, + 128,5,128,8,192,8,192,31,224,16,96,16,96,32,48,32, + 48,248,252,14,17,34,13,255,0,7,64,11,128,0,0,3, + 0,3,0,3,0,5,128,5,128,5,128,8,192,8,192,31, + 224,16,96,16,96,32,48,32,48,248,252,14,17,34,13,255, + 0,12,192,12,192,0,0,3,0,3,0,3,0,5,128,5, + 128,5,128,8,192,8,192,31,224,16,96,16,96,32,48,32, + 48,248,252,14,19,38,13,255,0,3,0,4,128,4,128,3, + 0,0,0,3,0,3,0,3,0,5,128,5,128,5,128,8, + 192,8,192,31,224,16,96,16,96,32,48,32,48,248,252,18, + 14,42,18,255,0,7,255,192,1,96,192,2,96,64,2,96, + 64,4,98,64,4,98,0,8,126,0,8,98,0,31,226,0, + 16,96,64,32,96,64,32,96,64,96,96,192,241,255,192,12, + 18,36,13,0,252,15,144,56,112,96,48,96,16,192,16,192, + 0,192,0,192,0,192,0,192,0,96,16,96,16,56,96,15, + 192,4,0,7,0,1,0,14,0,11,18,36,12,0,0,24, + 0,12,0,2,0,0,0,255,224,48,96,48,32,48,32,49, + 32,49,0,63,0,49,0,49,0,48,32,48,32,48,32,48, + 96,255,224,11,18,36,12,0,0,3,0,6,0,8,0,0, + 0,255,224,48,96,48,32,48,32,49,32,49,0,63,0,49, + 0,49,0,48,32,48,32,48,32,48,96,255,224,11,18,36, + 12,0,0,6,0,15,0,16,128,0,0,255,224,48,96,48, + 32,48,32,49,32,49,0,63,0,49,0,49,0,48,32,48, + 32,48,32,48,96,255,224,11,17,34,12,0,0,25,128,25, + 128,0,0,255,224,48,96,48,32,48,32,49,32,49,0,63, + 0,49,0,49,0,48,32,48,32,48,32,48,96,255,224,6, + 18,18,7,0,0,192,96,16,0,252,48,48,48,48,48,48, + 48,48,48,48,48,48,252,6,18,18,7,0,0,12,24,32, + 0,252,48,48,48,48,48,48,48,48,48,48,48,48,252,6, + 18,18,7,0,0,48,120,132,0,252,48,48,48,48,48,48, + 48,48,48,48,48,48,252,6,17,17,7,0,0,204,204,0, + 252,48,48,48,48,48,48,48,48,48,48,48,48,252,14,14, + 28,15,0,0,255,192,48,112,48,24,48,24,48,12,48,12, + 254,12,48,12,48,12,48,12,48,24,48,24,48,112,255,192, + 14,17,34,15,0,0,7,64,11,128,0,0,240,124,48,16, + 56,16,60,16,46,16,38,16,35,16,35,144,33,144,32,208, + 32,240,32,112,32,48,248,16,14,18,36,15,0,0,12,0, + 6,0,1,0,0,0,15,192,56,112,96,24,96,24,192,12, + 192,12,192,12,192,12,192,12,192,12,96,24,96,24,56,112, + 15,192,14,18,36,15,0,0,0,192,1,128,2,0,0,0, + 15,192,56,112,96,24,96,24,192,12,192,12,192,12,192,12, + 192,12,192,12,96,24,96,24,56,112,15,192,14,18,36,15, + 0,0,3,0,7,128,8,64,0,0,15,192,56,112,96,24, + 96,24,192,12,192,12,192,12,192,12,192,12,192,12,96,24, + 96,24,56,112,15,192,14,17,34,15,0,0,7,64,11,128, + 0,0,15,192,56,112,96,24,96,24,192,12,192,12,192,12, + 192,12,192,12,192,12,96,24,96,24,56,112,15,192,14,17, + 34,15,0,0,12,192,12,192,0,0,15,192,56,112,96,24, + 96,24,192,12,192,12,192,12,192,12,192,12,192,12,96,24, + 96,24,56,112,15,192,10,9,18,10,0,1,192,192,97,128, + 51,0,30,0,12,0,30,0,51,0,97,128,192,192,15,14, + 28,15,255,0,7,228,28,56,48,28,48,44,96,70,96,134, + 97,6,98,6,100,6,104,6,48,12,48,12,92,56,135,224, + 14,18,36,15,0,0,6,0,3,0,0,128,0,0,252,124, + 48,16,48,16,48,16,48,16,48,16,48,16,48,16,48,16, + 48,16,48,16,48,16,24,32,15,192,14,18,36,15,0,0, + 0,192,1,128,2,0,0,0,252,124,48,16,48,16,48,16, + 48,16,48,16,48,16,48,16,48,16,48,16,48,16,48,16, + 24,32,15,192,14,18,36,15,0,0,3,0,7,128,8,64, + 0,0,252,124,48,16,48,16,48,16,48,16,48,16,48,16, + 48,16,48,16,48,16,48,16,48,16,24,32,15,192,14,17, + 34,15,0,0,12,96,12,96,0,0,252,124,48,16,48,16, + 48,16,48,16,48,16,48,16,48,16,48,16,48,16,48,16, + 48,16,24,32,15,192,14,18,36,13,255,0,0,96,0,192, + 1,0,0,0,252,124,48,16,24,32,24,32,12,64,12,64, + 6,128,7,128,3,0,3,0,3,0,3,0,3,0,15,192, + 11,14,28,12,0,0,252,0,48,0,48,0,63,128,48,192, + 48,96,48,96,48,96,48,96,48,192,63,0,48,0,48,0, + 252,0,9,14,28,10,0,0,30,0,35,0,97,0,97,0, + 99,0,110,0,99,0,97,128,97,128,97,128,97,128,109,128, + 109,0,230,0,9,13,26,10,0,0,48,0,24,0,4,0, + 0,0,28,0,98,0,99,0,3,0,31,0,99,0,195,0, + 199,0,121,128,9,13,26,10,0,0,6,0,12,0,16,0, + 0,0,28,0,98,0,99,0,3,0,31,0,99,0,195,0, + 199,0,121,128,9,13,26,10,0,0,24,0,60,0,66,0, + 0,0,28,0,98,0,99,0,3,0,31,0,99,0,195,0, + 199,0,121,128,9,12,24,10,0,0,58,0,92,0,0,0, + 28,0,98,0,99,0,3,0,31,0,99,0,195,0,199,0, + 121,128,9,12,24,10,0,0,102,0,102,0,0,0,28,0, + 98,0,99,0,3,0,31,0,99,0,195,0,199,0,121,128, + 9,14,28,10,0,0,24,0,36,0,36,0,24,0,0,0, + 28,0,98,0,99,0,3,0,31,0,99,0,195,0,199,0, + 121,128,15,9,18,16,0,0,28,248,99,140,99,6,3,6, + 31,254,99,0,195,0,197,134,120,252,8,13,13,9,0,252, + 60,99,195,192,192,192,193,99,62,16,28,4,56,8,13,13, + 9,0,0,96,48,8,0,60,102,195,195,255,192,193,99,62, + 8,13,13,9,0,0,6,12,16,0,60,102,195,195,255,192, + 193,99,62,8,13,13,9,0,0,24,60,66,0,60,102,195, + 195,255,192,193,99,62,8,12,12,9,0,0,102,102,0,60, + 102,195,195,255,192,193,99,62,5,13,13,5,255,0,192,96, + 16,0,112,48,48,48,48,48,48,48,120,5,13,13,5,0, + 0,24,48,64,0,224,96,96,96,96,96,96,96,240,6,13, + 13,5,255,0,48,120,132,0,112,48,48,48,48,48,48,48, + 120,6,12,12,5,255,0,204,204,0,112,48,48,48,48,48, + 48,48,120,9,14,28,10,0,0,192,0,54,0,56,0,204, + 0,6,0,63,0,99,0,193,128,193,128,193,128,193,128,193, + 128,99,0,62,0,10,12,24,11,0,0,60,128,79,0,0, + 0,239,0,115,128,97,128,97,128,97,128,97,128,97,128,97, + 128,243,192,9,13,26,10,0,0,96,0,48,0,8,0,0, + 0,62,0,99,0,193,128,193,128,193,128,193,128,193,128,99, + 0,62,0,9,13,26,10,0,0,3,0,6,0,8,0,0, + 0,62,0,99,0,193,128,193,128,193,128,193,128,193,128,99, + 0,62,0,9,13,26,10,0,0,24,0,60,0,66,0,0, + 0,62,0,99,0,193,128,193,128,193,128,193,128,193,128,99, + 0,62,0,9,12,24,10,0,0,58,0,92,0,0,0,62, + 0,99,0,193,128,193,128,193,128,193,128,193,128,99,0,62, + 0,9,12,24,10,0,0,99,0,99,0,0,0,62,0,99, + 0,193,128,193,128,193,128,193,128,193,128,99,0,62,0,10, + 7,14,10,0,2,12,0,12,0,0,0,255,192,0,0,12, + 0,12,0,9,12,24,10,0,254,0,128,62,128,99,0,197, + 128,197,128,201,128,201,128,209,128,115,0,62,0,64,0,64, + 0,10,13,26,11,0,0,48,0,24,0,4,0,0,0,227, + 192,97,128,97,128,97,128,97,128,97,128,97,128,115,128,61, + 192,10,13,26,11,0,0,3,0,6,0,8,0,0,0,227, + 192,97,128,97,128,97,128,97,128,97,128,97,128,115,128,61, + 192,10,13,26,11,0,0,12,0,30,0,33,0,0,0,227, + 192,97,128,97,128,97,128,97,128,97,128,97,128,115,128,61, + 192,10,12,24,11,0,0,51,0,51,0,0,0,227,192,97, + 128,97,128,97,128,97,128,97,128,97,128,115,128,61,192,10, + 17,34,11,0,252,3,0,6,0,8,0,0,0,241,192,96, + 128,49,0,49,0,26,0,26,0,12,0,12,0,8,0,8, + 0,16,0,208,0,224,0,10,18,36,11,0,252,224,0,96, + 0,96,0,96,0,96,0,111,0,113,128,96,192,96,192,96, + 192,96,192,96,192,113,128,111,0,96,0,96,0,96,0,240, + 0,10,16,32,11,0,252,51,0,51,0,0,0,241,192,96, + 128,49,0,49,0,26,0,26,0,12,0,12,0,8,0,8, + 0,16,0,208,0,224,0}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--20-140-100-100-P-103-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 14, '1' Height: 14 + Calculated Max Values w=20 h=18 x= 4 y=10 dx=19 dy= 0 ascent=15 len=42 + Font Bounding box w=27 h=30 x=-4 y=-7 + Calculated Min Values x=-3 y=-4 dx= 0 dy= 0 + Pure Font ascent =14 descent=-4 + X Font ascent =14 descent=-4 + Max Font ascent =15 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR14r[2534] U8G_SECTION(".progmem.u8g_font_ncenR14r") = { + 0,27,30,252,249,14,3,41,7,30,32,127,252,15,252,14, + 252,0,0,0,5,0,1,2,14,14,5,1,0,192,192,192, + 192,192,192,192,128,128,128,0,0,192,192,4,5,5,7,1, + 9,144,144,144,144,144,10,13,26,11,0,0,9,0,9,0, + 9,0,9,0,127,192,18,0,18,0,18,0,255,128,36,0, + 36,0,36,0,36,0,9,17,34,10,0,254,8,0,8,0, + 63,0,105,128,201,128,200,0,232,0,120,0,30,0,15,0, + 11,128,9,128,201,128,203,0,126,0,8,0,8,0,15,14, + 28,16,0,0,28,32,50,32,99,192,98,64,196,128,196,128, + 201,28,113,50,2,98,2,98,4,196,4,196,8,200,8,112, + 13,14,28,14,0,0,30,0,51,0,33,0,35,0,54,0, + 28,0,57,248,124,96,238,64,199,128,195,128,193,200,227,240, + 124,96,1,5,5,4,1,9,128,128,128,128,128,6,17,17, + 7,0,253,4,24,48,96,96,192,192,192,192,192,192,192,96, + 96,48,24,4,6,17,17,7,0,253,128,96,48,24,24,12, + 12,12,12,12,12,12,24,24,48,96,128,7,7,7,10,1, + 7,16,146,214,56,214,146,16,9,9,18,10,0,1,8,0, + 8,0,8,0,8,0,255,128,8,0,8,0,8,0,8,0, + 3,5,5,5,0,253,96,96,32,64,128,5,1,1,6,0, + 5,248,2,2,2,5,1,0,192,192,5,14,14,6,0,0, + 8,8,8,16,16,16,32,32,32,64,64,64,128,128,9,14, + 28,10,0,0,28,0,99,0,99,0,193,128,193,128,193,128, + 193,128,193,128,193,128,193,128,193,128,99,0,99,0,28,0, + 8,14,14,10,1,0,24,248,24,24,24,24,24,24,24,24, + 24,24,24,255,9,14,28,10,0,0,30,0,99,0,193,128, + 193,128,1,128,1,128,3,0,6,0,12,0,24,0,48,128, + 96,128,255,128,255,128,9,14,28,10,0,0,62,0,99,0, + 97,128,1,128,1,128,3,0,30,0,3,0,1,128,1,128, + 1,128,193,128,195,0,126,0,10,14,28,10,0,0,3,0, + 7,0,11,0,11,0,19,0,19,0,35,0,35,0,67,0, + 67,0,255,192,3,0,3,0,15,128,9,14,28,10,0,0, + 127,128,127,0,64,0,64,0,64,0,94,0,99,0,65,128, + 1,128,1,128,1,128,193,128,195,0,126,0,9,14,28,10, + 0,0,15,0,49,128,97,128,96,0,192,0,206,0,223,0, + 227,128,193,128,193,128,193,128,193,128,99,0,62,0,9,14, + 28,10,0,0,255,128,255,128,129,0,131,0,2,0,6,0, + 6,0,12,0,12,0,24,0,24,0,24,0,24,0,24,0, + 9,14,28,10,0,0,62,0,99,0,65,0,65,0,97,0, + 114,0,62,0,47,0,67,128,193,128,193,128,193,128,99,0, + 62,0,9,14,28,10,0,0,62,0,99,0,193,128,193,128, + 193,128,193,128,227,128,125,128,57,128,1,128,3,0,195,0, + 198,0,120,0,2,9,9,5,1,0,192,192,0,0,0,0, + 0,192,192,3,12,12,5,0,253,96,96,0,0,0,0,0, + 96,96,32,64,128,9,9,18,10,0,1,0,128,3,128,14, + 0,56,0,224,0,56,0,14,0,3,128,0,128,9,4,8, + 10,0,4,255,128,0,0,0,0,255,128,9,9,18,10,0, + 1,128,0,224,0,56,0,14,0,3,128,14,0,56,0,224, + 0,128,0,7,14,14,8,0,0,60,206,198,6,6,4,8, + 8,16,16,0,0,48,48,13,14,28,14,0,0,7,128,24, + 96,32,16,70,208,77,200,140,200,152,200,153,144,153,144,155, + 160,76,192,64,16,32,96,31,128,14,14,28,13,255,0,3, + 0,3,0,3,0,5,128,5,128,5,128,8,192,8,192,31, + 224,16,96,16,96,32,48,32,48,248,252,12,14,28,13,0, + 0,255,128,48,192,48,96,48,96,48,96,48,192,63,128,48, + 96,48,48,48,48,48,48,48,48,48,96,255,192,12,14,28, + 13,0,0,15,144,56,112,96,48,96,16,192,16,192,0,192, + 0,192,0,192,0,192,0,96,16,96,16,56,96,15,192,14, + 14,28,15,0,0,255,192,48,112,48,24,48,24,48,12,48, + 12,48,12,48,12,48,12,48,12,48,24,48,24,48,112,255, + 192,11,14,28,12,0,0,255,224,48,96,48,32,48,32,49, + 32,49,0,63,0,49,0,49,0,48,32,48,32,48,32,48, + 96,255,224,11,14,28,12,0,0,255,224,48,96,48,32,48, + 32,49,32,49,0,63,0,49,0,49,0,48,0,48,0,48, + 0,48,0,252,0,14,14,28,15,0,0,15,200,56,120,96, + 24,96,8,192,8,192,0,192,0,192,0,192,124,192,24,96, + 24,96,24,56,120,15,200,15,14,28,16,0,0,252,126,48, + 24,48,24,48,24,48,24,48,24,63,248,48,24,48,24,48, + 24,48,24,48,24,48,24,252,126,6,14,14,7,0,0,252, + 48,48,48,48,48,48,48,48,48,48,48,48,252,9,14,28, + 10,0,0,31,128,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,198,0,198,0,132,0,120,0,15, + 14,28,15,0,0,252,248,48,96,48,64,48,128,49,0,50, + 0,54,0,63,0,51,128,49,192,48,224,48,112,48,56,252, + 254,11,14,28,12,0,0,252,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,32,48,32,48,32,48, + 96,255,224,17,14,42,18,0,0,248,15,128,56,14,0,44, + 22,0,44,22,0,44,22,0,38,38,0,38,38,0,38,38, + 0,35,70,0,35,70,0,35,70,0,33,134,0,33,134,0, + 249,159,128,14,14,28,15,0,0,240,124,48,16,56,16,60, + 16,46,16,38,16,35,16,35,144,33,144,32,208,32,240,32, + 112,32,48,248,16,14,14,28,15,0,0,15,192,56,112,96, + 24,96,24,192,12,192,12,192,12,192,12,192,12,192,12,96, + 24,96,24,56,112,15,192,11,14,28,12,0,0,255,128,48, + 192,48,96,48,96,48,96,48,96,48,192,63,0,48,0,48, + 0,48,0,48,0,48,0,252,0,15,18,36,15,0,252,15, + 192,56,112,96,24,96,24,192,12,192,12,192,12,192,12,192, + 12,207,12,113,152,96,152,56,240,15,224,0,96,0,114,0, + 62,0,28,14,14,28,14,0,0,255,128,48,192,48,96,48, + 96,48,96,48,192,63,0,49,128,48,192,48,192,48,224,48, + 96,48,116,248,56,10,14,28,11,0,0,62,128,97,128,192, + 128,192,128,192,0,240,0,126,0,31,128,3,192,128,192,128, + 192,192,192,225,128,191,0,12,14,28,13,0,0,255,240,198, + 48,134,16,134,16,134,16,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,31,128,14,14,28,15,0,0,252, + 124,48,16,48,16,48,16,48,16,48,16,48,16,48,16,48, + 16,48,16,48,16,48,16,24,32,15,192,14,14,28,13,255, + 0,252,124,48,16,48,16,24,32,24,32,24,32,12,64,12, + 64,12,64,6,128,6,128,6,128,3,0,3,0,20,14,42, + 19,255,0,253,249,240,48,96,64,48,96,64,24,112,128,24, + 112,128,24,112,128,12,153,0,12,153,0,12,153,0,5,9, + 0,7,14,0,7,14,0,3,6,0,3,6,0,13,14,28, + 14,1,0,248,240,48,64,56,192,24,128,13,128,15,0,6, + 0,7,0,15,128,9,128,16,192,48,224,32,96,249,248,14, + 14,28,13,255,0,252,124,48,16,24,32,24,32,12,64,12, + 64,6,128,7,128,3,0,3,0,3,0,3,0,3,0,15, + 192,10,14,28,11,0,0,255,192,192,192,129,128,131,128,131, + 0,6,0,14,0,28,0,24,0,48,64,112,64,96,64,192, + 192,255,192,4,17,17,6,1,253,240,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,240,7,14,14,10,1,0, + 128,128,192,64,96,32,48,16,24,8,12,4,6,2,4,17, + 17,6,0,253,240,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,240,9,9,18,10,0,5,8,0,8,0,28, + 0,20,0,54,0,34,0,99,0,65,0,193,128,9,1,2, + 9,0,254,255,128,4,3,3,6,1,10,192,96,16,9,9, + 18,10,0,0,28,0,98,0,99,0,3,0,31,0,99,0, + 195,0,199,0,121,128,10,14,28,10,255,0,224,0,96,0, + 96,0,96,0,96,0,111,0,113,128,96,192,96,192,96,192, + 96,192,96,192,113,128,79,0,8,9,9,9,0,0,60,99, + 195,192,192,192,193,99,62,10,14,28,11,0,0,3,128,1, + 128,1,128,1,128,1,128,61,128,99,128,193,128,193,128,193, + 128,193,128,193,128,99,128,61,192,8,9,9,9,0,0,60, + 102,195,195,255,192,193,99,62,8,14,14,7,0,0,14,27, + 51,48,48,252,48,48,48,48,48,48,48,120,10,14,28,11, + 0,252,0,192,31,192,51,0,97,128,97,128,51,0,62,0, + 64,0,127,0,63,128,65,192,128,192,193,128,127,0,10,14, + 28,11,0,0,224,0,96,0,96,0,96,0,96,0,111,0, + 115,128,97,128,97,128,97,128,97,128,97,128,97,128,243,192, + 4,13,13,5,0,0,96,96,0,0,224,96,96,96,96,96, + 96,96,240,6,17,17,5,253,252,12,12,0,0,28,12,12, + 12,12,12,12,12,12,12,204,200,112,10,14,28,10,0,0, + 224,0,96,0,96,0,96,0,96,0,103,128,98,0,100,0, + 104,0,120,0,108,0,102,0,99,0,247,192,4,14,14,5, + 0,0,224,96,96,96,96,96,96,96,96,96,96,96,96,240, + 16,9,18,17,0,0,239,60,115,206,97,134,97,134,97,134, + 97,134,97,134,97,134,243,207,10,9,18,11,0,0,239,0, + 115,128,97,128,97,128,97,128,97,128,97,128,97,128,243,192, + 9,9,18,10,0,0,62,0,99,0,193,128,193,128,193,128, + 193,128,193,128,99,0,62,0,10,13,26,11,0,252,239,0, + 113,128,96,192,96,192,96,192,96,192,96,192,113,128,111,0, + 96,0,96,0,96,0,240,0,10,13,26,10,0,252,60,128, + 99,128,193,128,193,128,193,128,193,128,193,128,99,128,61,128, + 1,128,1,128,1,128,3,192,7,9,9,8,0,0,230,110, + 114,96,96,96,96,96,240,7,9,9,8,0,0,122,198,130, + 224,124,14,130,198,188,6,12,12,6,0,0,96,96,96,248, + 96,96,96,96,96,96,100,56,10,9,18,11,0,0,227,128, + 97,128,97,128,97,128,97,128,97,128,97,128,115,128,61,192, + 10,9,18,11,0,0,241,192,96,128,96,128,49,0,49,0, + 26,0,30,0,12,0,12,0,15,9,18,16,0,0,247,222, + 97,132,97,132,50,200,50,200,52,208,28,112,28,112,8,32, + 9,9,18,10,0,0,243,128,97,0,50,0,28,0,8,0, + 28,0,38,0,67,0,231,128,10,13,26,11,0,252,241,192, + 96,128,49,0,49,0,26,0,26,0,12,0,12,0,8,0, + 8,0,16,0,208,0,224,0,7,9,9,8,0,0,254,134, + 140,24,24,48,98,198,254,5,17,17,6,0,253,24,32,96, + 96,96,96,96,64,128,64,96,96,96,96,96,32,24,2,14, + 14,11,4,0,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,5,17,17,6,0,253,192,32,48,48,48,48,48,16, + 8,16,48,48,48,48,48,32,192,10,3,6,11,0,4,56, + 192,109,128,199,0,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--25-180-100-100-P-136-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=25 h=24 x= 6 y=15 dx=25 dy= 0 ascent=24 len=72 + Font Bounding box w=31 h=37 x=-3 y=-8 + Calculated Min Values x=-2 y=-5 dx= 0 dy= 0 + Pure Font ascent =18 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =24 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR18[7488] U8G_SECTION(".progmem.u8g_font_ncenR18") = { + 0,31,37,253,248,18,4,33,9,197,32,255,251,24,251,18, + 251,0,0,0,7,0,1,3,18,18,7,2,0,64,224,224, + 224,224,224,224,224,224,224,224,64,64,64,0,224,224,224,6, + 6,6,10,2,12,204,204,204,204,204,204,13,16,32,15,1, + 1,12,96,12,96,12,96,12,96,12,96,127,248,24,192,24, + 192,24,192,24,192,255,240,49,128,49,128,49,128,49,128,49, + 128,11,22,44,13,1,254,4,0,4,0,31,0,101,128,68, + 192,196,192,197,192,197,128,228,0,252,0,127,0,31,192,7, + 192,4,224,100,96,228,96,196,96,196,64,100,192,63,0,4, + 0,4,0,18,19,57,20,1,255,30,24,0,51,40,0,97, + 216,0,97,16,0,193,48,0,193,32,0,194,96,0,194,64, + 0,196,199,128,120,140,192,1,152,64,1,24,64,3,48,64, + 2,48,64,6,48,128,4,48,128,12,49,0,8,30,0,8, + 0,0,18,18,54,20,1,0,7,192,0,12,224,0,24,96, + 0,24,96,0,24,96,0,24,192,0,13,128,0,14,0,0, + 30,63,128,103,30,0,99,140,0,193,200,0,192,232,0,192, + 112,0,224,56,64,112,124,64,127,207,128,31,7,0,2,6, + 6,6,2,12,192,192,192,192,192,192,7,21,21,9,1,253, + 2,12,24,48,48,96,96,192,192,192,192,192,192,192,96,96, + 48,48,24,12,2,7,21,21,8,0,253,128,96,48,24,24, + 12,12,6,6,6,6,6,6,6,12,12,24,24,48,96,128, + 7,9,9,9,1,9,16,56,146,214,56,214,146,56,16,12, + 12,24,14,1,1,6,0,6,0,6,0,6,0,6,0,255, + 240,255,240,6,0,6,0,6,0,6,0,6,0,4,7,7, + 6,1,252,96,240,240,48,32,64,128,6,2,2,8,1,6, + 252,252,3,3,3,7,2,0,224,224,224,7,18,18,8,0, + 0,6,6,6,12,12,12,24,24,24,48,48,48,96,96,96, + 192,192,192,11,18,36,13,1,0,14,0,17,0,49,128,32, + 128,96,192,96,192,224,224,224,224,224,224,224,224,224,224,224, + 224,96,192,96,192,32,128,49,128,17,0,14,0,8,18,18, + 13,3,0,8,56,248,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,255,11,18,36,13,1,0,31,0,113,192,64, + 192,224,224,224,224,64,224,0,192,1,192,1,128,3,0,6, + 0,12,0,24,0,48,32,96,32,192,96,255,224,255,224,11, + 18,36,13,1,0,31,0,99,128,193,192,225,192,225,192,65, + 128,1,128,3,0,31,0,1,128,0,192,0,224,64,224,224, + 224,224,192,193,192,97,128,30,0,12,18,36,13,0,0,0, + 64,0,192,1,192,3,192,6,192,12,192,8,192,24,192,48, + 192,96,192,64,192,192,192,128,192,255,240,0,192,0,192,0, + 192,3,240,11,18,36,13,1,0,127,192,127,128,64,0,64, + 0,64,0,64,0,64,0,95,0,99,128,0,192,0,192,0, + 224,96,224,224,224,224,192,64,192,97,128,31,0,11,18,36, + 13,1,0,15,128,56,224,32,224,96,96,96,0,96,0,224, + 0,239,0,241,128,224,192,224,192,224,224,224,224,96,224,96, + 192,96,192,49,128,31,0,10,18,36,13,2,0,255,192,255, + 192,128,128,129,128,1,0,3,0,3,0,2,0,6,0,6, + 0,4,0,12,0,12,0,12,0,28,0,28,0,28,0,8, + 0,11,18,36,13,1,0,31,0,49,128,32,128,96,192,96, + 192,112,192,57,128,63,0,31,0,55,128,97,192,192,224,192, + 96,192,96,192,96,96,192,113,192,31,0,11,18,36,13,1, + 0,31,0,49,128,112,192,96,192,224,224,224,224,224,224,96, + 224,112,224,49,224,30,224,0,224,0,192,0,192,193,192,225, + 128,227,128,62,0,3,12,12,7,2,0,224,224,224,0,0, + 0,0,0,0,224,224,224,4,16,16,7,2,252,224,224,224, + 0,0,0,0,0,0,96,240,240,48,32,64,128,12,12,24, + 14,1,1,0,48,0,240,3,192,15,0,60,0,240,0,240, + 0,60,0,15,0,3,192,0,240,0,48,12,6,12,15,1, + 4,255,240,255,240,0,0,0,0,255,240,255,240,12,12,24, + 14,1,1,192,0,240,0,60,0,15,0,3,192,0,240,0, + 240,3,192,15,0,60,0,240,0,192,0,10,18,36,12,1, + 0,30,0,99,128,193,192,225,192,225,192,1,192,3,128,7, + 0,14,0,12,0,24,0,16,0,16,0,0,0,0,0,56, + 0,56,0,56,0,17,18,54,19,1,0,1,248,0,6,6, + 0,24,3,0,16,1,128,96,216,128,99,56,128,198,24,128, + 198,24,128,204,24,128,204,49,0,204,49,0,204,114,0,196, + 180,0,195,56,0,96,1,0,96,2,0,24,12,0,31,248, + 0,19,18,54,19,0,0,0,64,0,0,96,0,0,224,0, + 0,240,0,1,48,0,1,56,0,2,24,0,2,28,0,4, + 12,0,4,12,0,8,14,0,15,254,0,16,6,0,16,7, + 0,32,3,0,32,3,128,96,3,128,248,15,224,14,18,36, + 18,2,0,255,192,48,112,48,48,48,56,48,56,48,56,48, + 48,48,96,63,240,48,56,48,24,48,28,48,28,48,28,48, + 28,48,24,48,56,255,224,15,18,36,17,1,0,7,242,28, + 30,56,6,48,2,112,2,96,2,224,0,224,0,224,0,224, + 0,224,0,224,0,96,2,112,2,48,6,56,4,28,28,7, + 240,16,18,36,20,2,0,255,224,48,56,48,12,48,12,48, + 6,48,6,48,7,48,7,48,7,48,7,48,7,48,7,48, + 6,48,6,48,12,48,12,48,56,255,224,13,18,36,16,1, + 0,255,248,48,56,48,24,48,8,48,8,48,136,48,128,49, + 128,63,128,49,128,48,128,48,128,48,8,48,8,48,8,48, + 24,48,56,255,248,13,18,36,16,1,0,255,248,48,56,48, + 24,48,8,48,8,48,136,48,128,49,128,63,128,49,128,48, + 128,48,128,48,0,48,0,48,0,48,0,48,0,252,0,17, + 18,54,18,1,0,7,250,0,28,30,0,48,6,0,48,6, + 0,112,2,0,96,2,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,63,128,224,6,0,96,6,0,112,6,0,48, + 6,0,48,14,0,28,30,0,7,242,0,17,18,54,21,2, + 0,252,31,128,48,6,0,48,6,0,48,6,0,48,6,0, + 48,6,0,48,6,0,48,6,0,63,254,0,48,6,0,48, + 6,0,48,6,0,48,6,0,48,6,0,48,6,0,48,6, + 0,48,6,0,252,31,128,6,18,18,9,2,0,252,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,252,11, + 18,36,14,1,0,7,224,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,97,128,241,128,225, + 128,193,128,193,128,99,0,62,0,18,18,54,20,2,0,252, + 127,0,48,28,0,48,24,0,48,48,0,48,96,0,48,192, + 0,49,128,0,51,0,0,55,0,0,63,128,0,57,192,0, + 48,224,0,48,112,0,48,56,0,48,28,0,48,14,0,48, + 7,0,252,31,192,13,18,36,16,2,0,254,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,8,48,8,48,8,48,24,48,56,255,248,20, + 18,54,23,1,0,252,1,240,60,1,192,30,3,192,22,2, + 192,23,2,192,19,2,192,19,4,192,19,132,192,17,132,192, + 17,136,192,17,200,192,16,200,192,16,208,192,16,240,192,16, + 112,192,16,96,192,56,96,192,254,35,240,19,18,54,21,1, + 0,248,15,224,60,3,128,28,1,0,30,1,0,23,1,0, + 19,129,0,17,129,0,16,193,0,16,225,0,16,97,0,16, + 49,0,16,57,0,16,29,0,16,15,0,16,7,0,16,7, + 0,56,3,0,254,1,0,17,18,54,19,1,0,7,240,0, + 28,28,0,48,6,0,48,6,0,112,7,0,96,3,0,224, + 3,128,224,3,128,224,3,128,224,3,128,224,3,128,224,3, + 128,96,3,0,112,7,0,48,6,0,48,6,0,28,28,0, + 7,240,0,13,18,36,16,2,0,255,192,48,112,48,48,48, + 56,48,56,48,56,48,56,48,48,48,112,63,192,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,252,0,17,22,66, + 19,1,252,7,240,0,28,28,0,48,6,0,48,6,0,112, + 7,0,96,3,0,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,227,195,128,100,99,0,104,39,0,56,54,0, + 56,22,0,28,28,0,7,248,0,0,24,128,0,12,128,0, + 15,0,0,6,0,15,18,36,18,2,0,255,192,48,112,48, + 48,48,56,48,56,48,56,48,48,48,96,63,128,49,192,48, + 224,48,96,48,112,48,112,48,50,48,50,48,60,252,28,13, + 18,36,15,1,0,31,144,112,240,64,48,192,48,192,16,224, + 16,120,0,62,0,15,128,3,224,0,240,0,56,128,24,128, + 24,192,24,192,48,240,112,159,192,14,18,36,17,1,0,255, + 252,227,28,195,12,131,4,131,4,131,4,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,31,224,16,18,36,19,2,0,252,31,48,14,48,4,48, + 4,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,56,12,24,8,30,56,7,224,18,18,54, + 18,0,0,254,7,192,56,1,0,24,1,0,28,2,0,28, + 2,0,12,2,0,14,4,0,6,4,0,7,8,0,7,8, + 0,3,8,0,3,144,0,1,144,0,1,160,0,1,224,0, + 0,224,0,0,192,0,0,64,0,25,18,72,25,0,0,254, + 63,143,128,56,14,2,0,56,14,2,0,24,14,2,0,24, + 22,4,0,28,23,4,0,12,19,4,0,12,19,4,0,14, + 35,136,0,6,33,136,0,6,33,136,0,7,65,208,0,3, + 64,208,0,3,192,240,0,3,128,240,0,1,128,96,0,1, + 128,96,0,0,128,32,0,19,18,54,19,0,0,127,143,128, + 30,6,0,14,4,0,7,8,0,7,16,0,3,144,0,1, + 160,0,1,192,0,0,224,0,0,224,0,1,112,0,1,56, + 0,2,28,0,4,28,0,4,14,0,8,7,0,24,7,128, + 252,31,224,16,18,36,17,0,0,252,63,56,12,24,8,28, + 24,12,16,14,48,6,32,7,96,3,64,3,192,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,7,224,14,18,36, + 16,1,0,127,252,112,24,96,56,64,48,64,96,0,224,0, + 192,1,128,3,128,3,0,6,0,14,0,28,0,24,4,48, + 4,112,12,96,28,255,252,5,21,21,7,2,253,248,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,248,10,18,36,11,0,0,192,0,192,0,96,0,96,0, + 48,0,48,0,24,0,24,0,12,0,12,0,6,0,6,0, + 3,0,3,0,1,128,1,128,0,192,0,192,5,21,21,7, + 0,253,248,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,248,10,10,20,12,1,8,12,0,12, + 0,30,0,30,0,51,0,51,0,97,128,97,128,192,192,192, + 192,12,2,4,12,0,253,255,240,255,240,5,4,4,8,1, + 14,192,224,48,8,12,12,24,13,1,0,31,0,113,128,112, + 192,96,192,0,192,7,192,56,192,96,192,192,192,192,192,225, + 240,126,96,13,18,36,14,0,0,240,0,48,0,48,0,48, + 0,48,0,48,0,55,192,60,112,56,48,48,56,48,24,48, + 24,48,24,48,24,48,56,56,48,60,112,39,192,10,12,24, + 12,1,0,31,0,113,192,97,192,224,192,192,0,192,0,192, + 0,192,0,224,0,96,64,112,192,31,128,13,18,36,14,1, + 0,1,224,0,96,0,96,0,96,0,96,0,96,30,96,113, + 224,96,224,224,96,192,96,192,96,192,96,192,96,224,96,96, + 224,113,224,31,120,11,12,24,13,1,0,31,0,113,192,96, + 192,224,224,192,96,255,224,192,0,192,0,224,0,96,64,112, + 192,31,128,9,18,36,8,1,0,15,0,25,128,49,128,48, + 0,48,0,48,0,252,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,252,0,13,17,34, + 12,0,251,31,56,49,216,96,192,96,192,96,192,96,192,49, + 128,31,0,48,0,96,0,63,0,31,192,96,224,192,96,192, + 96,224,192,127,128,14,18,36,14,0,0,240,0,48,0,48, + 0,48,0,48,0,48,0,49,192,55,224,56,112,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,252,252,6, + 18,18,8,1,0,48,48,48,0,0,0,240,48,48,48,48, + 48,48,48,48,48,48,252,7,23,23,8,254,251,6,6,6, + 0,0,0,30,6,6,6,6,6,6,6,6,6,6,6,6, + 6,198,204,120,14,18,36,15,1,0,240,0,48,0,48,0, + 48,0,48,0,48,0,51,240,48,192,49,128,51,0,54,0, + 62,0,55,0,51,128,49,192,48,224,48,112,252,252,6,18, + 18,8,1,0,240,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,252,22,12,36,22,0,0,241,193,192,55, + 231,224,56,120,112,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,252,252,252, + 14,12,24,14,0,0,241,192,55,224,56,112,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,252,252,11,12, + 24,13,1,0,31,0,113,192,96,192,224,224,192,96,192,96, + 192,96,192,96,224,224,96,192,113,192,31,0,13,17,34,14, + 0,251,247,192,60,112,56,48,48,56,48,24,48,24,48,24, + 48,24,48,56,56,48,60,112,55,192,48,0,48,0,48,0, + 48,0,252,0,13,17,34,14,1,251,30,32,113,224,96,224, + 224,96,192,96,192,96,192,96,192,96,224,96,96,224,113,224, + 31,96,0,96,0,96,0,96,0,96,1,248,10,12,24,10, + 0,0,243,128,53,192,56,192,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,252,0,9,12,24,11,1,0, + 61,0,103,0,195,0,193,0,224,0,124,0,31,0,3,128, + 129,128,193,128,227,0,190,0,8,16,16,10,1,0,16,16, + 48,112,255,48,48,48,48,48,48,48,49,49,57,30,14,12, + 24,14,0,0,240,240,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,56,112,31,176,14,60,15,12,24,13, + 255,0,252,126,48,24,48,16,56,48,24,32,28,96,12,64, + 14,192,6,128,7,128,3,0,3,0,19,12,36,17,255,0, + 252,243,224,48,96,128,48,96,128,48,112,128,56,177,0,24, + 177,0,24,177,0,29,58,0,13,26,0,13,26,0,14,28, + 0,6,12,0,13,12,24,12,0,0,248,240,112,96,56,192, + 25,128,15,0,7,0,7,0,13,128,24,192,48,224,96,112, + 240,248,13,17,34,12,255,251,120,56,48,16,56,32,24,32, + 24,96,28,64,12,192,14,128,6,128,7,128,3,0,3,0, + 2,0,2,0,196,0,236,0,120,0,9,12,24,11,1,0, + 255,128,195,128,135,0,134,0,12,0,28,0,24,0,48,0, + 112,128,224,128,193,128,255,128,6,21,21,8,1,253,12,16, + 48,48,48,48,48,48,48,32,192,32,48,48,48,48,48,48, + 48,16,12,2,18,18,15,6,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,6,21,21,7,1, + 253,192,32,48,48,48,48,48,48,48,16,12,16,48,48,48, + 48,48,48,48,32,192,12,4,8,14,1,6,60,48,126,112, + 231,224,195,192,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,7,0,1,3,19,19,7,2, + 251,224,224,224,0,0,64,64,64,224,224,224,224,224,224,224, + 224,224,224,64,10,18,36,14,2,253,0,64,0,64,0,128, + 31,128,113,192,97,192,226,192,194,0,196,0,196,0,200,0, + 232,0,112,64,112,192,63,0,32,0,64,0,64,0,13,18, + 36,14,0,0,3,192,14,48,12,112,28,112,28,32,28,0, + 28,0,14,0,127,192,7,0,7,0,7,0,7,0,7,0, + 118,8,140,8,143,240,115,224,13,12,24,15,1,4,71,16, + 255,248,112,112,32,32,96,48,96,48,96,48,96,48,32,32, + 112,112,255,248,71,16,16,18,36,17,0,0,252,63,56,12, + 24,8,28,24,12,16,14,48,6,32,7,96,3,64,3,192, + 31,248,1,128,1,128,31,248,1,128,1,128,1,128,15,240, + 2,18,18,15,6,0,192,192,192,192,192,192,192,0,0,0, + 192,192,192,192,192,192,192,192,10,22,44,12,1,252,31,0, + 35,128,97,128,97,128,120,0,60,0,31,0,47,128,67,192, + 193,192,192,192,224,192,240,192,124,128,63,0,15,0,3,128, + 1,128,97,128,97,128,113,0,62,0,6,2,2,8,1,15, + 204,204,18,18,54,20,1,0,3,240,0,12,12,0,16,2, + 0,32,1,0,67,240,128,70,24,128,140,8,64,140,0,64, + 140,0,64,140,0,64,140,0,64,140,8,64,70,24,128,67, + 224,128,32,1,0,16,2,0,12,12,0,3,240,0,7,10, + 10,9,1,8,120,76,4,124,196,204,118,0,0,254,10,7, + 14,12,1,3,24,192,49,128,99,0,198,0,99,0,49,128, + 24,192,12,7,14,14,1,3,255,240,255,240,0,48,0,48, + 0,48,0,48,0,48,6,2,2,8,1,6,252,252,18,18, + 54,20,1,0,3,240,0,12,12,0,16,2,0,32,1,0, + 71,240,128,67,24,128,131,24,64,131,24,64,131,16,64,131, + 224,64,131,48,64,131,24,64,67,12,128,71,142,128,32,1, + 0,16,2,0,12,12,0,3,240,0,7,1,1,9,1,15, + 254,8,7,7,9,0,11,60,102,195,195,195,102,60,12,11, + 22,14,1,2,6,0,6,0,6,0,255,240,255,240,6,0, + 6,0,6,0,0,0,255,240,255,240,7,11,11,8,0,7, + 124,198,198,6,12,24,48,96,192,194,254,7,11,11,8,0, + 7,124,198,198,6,12,60,6,6,198,198,124,5,4,4,8, + 2,15,24,56,96,128,14,17,34,14,0,251,240,240,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,56,112, + 63,176,46,60,32,0,32,0,112,0,112,0,32,0,13,22, + 44,15,1,252,31,248,115,48,227,48,227,48,227,48,227,48, + 227,48,227,48,115,48,31,48,3,48,3,48,3,48,3,48, + 3,48,3,48,3,48,3,48,3,48,3,48,3,48,7,248, + 3,3,3,7,2,5,224,224,224,4,4,4,7,1,252,64, + 112,16,224,6,11,11,8,1,7,16,48,240,48,48,48,48, + 48,48,48,252,7,10,10,9,1,8,56,68,198,198,198,68, + 56,0,0,254,10,7,14,12,1,3,198,0,99,0,49,128, + 24,192,49,128,99,0,198,0,18,18,54,19,0,0,16,4, + 0,48,12,0,240,8,0,48,24,0,48,16,0,48,48,0, + 48,32,0,48,99,0,48,71,0,48,207,0,252,139,0,1, + 155,0,1,19,0,3,51,0,2,99,0,6,127,192,4,3, + 0,12,7,128,18,18,54,19,0,0,16,8,0,48,24,0, + 240,16,0,48,48,0,48,32,0,48,96,0,48,64,0,48, + 207,128,48,152,192,49,152,192,253,0,192,3,1,128,2,3, + 0,6,6,0,4,12,0,12,24,0,8,24,64,24,31,192, + 18,18,54,19,0,0,124,4,0,198,12,0,198,8,0,6, + 24,0,12,16,0,60,48,0,6,32,0,6,99,0,198,71, + 0,198,207,0,124,139,0,1,155,0,1,19,0,3,51,0, + 2,99,0,6,127,192,4,3,0,12,7,128,10,18,36,12, + 1,252,7,0,7,0,7,0,0,0,0,0,2,0,2,0, + 6,0,12,0,28,0,56,0,112,0,224,0,225,192,225,192, + 224,192,113,128,30,0,19,23,69,19,0,0,3,0,0,3, + 128,0,0,192,0,0,32,0,0,0,0,0,64,0,0,96, + 0,0,224,0,0,240,0,1,48,0,1,56,0,2,24,0, + 2,28,0,4,12,0,4,12,0,8,14,0,15,254,0,16, + 6,0,16,7,0,32,3,0,32,3,128,96,3,128,248,15, + 224,19,23,69,19,0,0,0,24,0,0,56,0,0,96,0, + 0,128,0,0,0,0,0,64,0,0,96,0,0,224,0,0, + 240,0,1,48,0,1,56,0,2,24,0,2,28,0,4,12, + 0,4,12,0,8,14,0,15,254,0,16,6,0,16,7,0, + 32,3,0,32,3,128,96,3,128,248,15,224,19,23,69,19, + 0,0,0,96,0,0,240,0,1,152,0,2,4,0,0,0, + 0,0,64,0,0,96,0,0,224,0,0,240,0,1,48,0, + 1,56,0,2,24,0,2,28,0,4,12,0,4,12,0,8, + 14,0,15,254,0,16,6,0,16,7,0,32,3,0,32,3, + 128,96,3,128,248,15,224,19,22,66,19,0,0,1,196,0, + 3,248,0,4,112,0,0,0,0,0,64,0,0,96,0,0, + 224,0,0,240,0,1,48,0,1,56,0,2,24,0,2,28, + 0,4,12,0,4,12,0,8,14,0,15,254,0,16,6,0, + 16,7,0,32,3,0,32,3,128,96,3,128,248,15,224,19, + 22,66,19,0,0,3,24,0,3,24,0,0,0,0,0,0, + 0,0,64,0,0,96,0,0,224,0,0,240,0,1,48,0, + 1,56,0,2,24,0,2,28,0,4,12,0,4,12,0,8, + 14,0,15,254,0,16,6,0,16,7,0,32,3,0,32,3, + 128,96,3,128,248,15,224,19,24,72,19,0,0,0,224,0, + 1,16,0,1,16,0,1,16,0,0,224,0,0,0,0,0, + 64,0,0,96,0,0,224,0,0,240,0,1,48,0,1,56, + 0,2,24,0,2,28,0,4,12,0,4,12,0,8,14,0, + 15,254,0,16,6,0,16,7,0,32,3,0,32,3,128,96, + 3,128,248,15,224,24,18,54,25,0,0,1,255,255,0,38, + 7,0,102,3,0,70,1,0,198,1,0,134,17,1,134,16, + 1,6,48,3,7,240,2,6,48,7,254,16,4,6,16,12, + 6,1,8,6,1,24,6,1,16,6,3,48,6,7,252,31, + 255,15,23,46,17,1,251,7,242,28,30,56,6,48,2,112, + 2,96,2,224,0,224,0,224,0,224,0,224,0,224,0,96, + 2,112,2,48,6,56,4,28,28,7,240,3,224,1,0,1, + 192,0,64,3,128,13,23,46,16,1,0,24,0,28,0,6, + 0,1,0,0,0,255,248,48,56,48,24,48,8,48,8,48, + 136,48,128,49,128,63,128,49,128,48,128,48,128,48,8,48, + 8,48,8,48,24,48,56,255,248,13,23,46,16,1,0,0, + 96,0,224,1,128,2,0,0,0,255,248,48,56,48,24,48, + 8,48,8,48,136,48,128,49,128,63,128,49,128,48,128,48, + 128,48,8,48,8,48,8,48,24,48,56,255,248,13,23,46, + 16,1,0,3,0,7,128,12,192,16,32,0,0,255,248,48, + 56,48,24,48,8,48,8,48,136,48,128,49,128,63,128,49, + 128,48,128,48,128,48,8,48,8,48,8,48,24,48,56,255, + 248,13,22,44,16,1,0,12,96,12,96,0,0,0,0,255, + 248,48,56,48,24,48,8,48,8,48,136,48,128,49,128,63, + 128,49,128,48,128,48,128,48,8,48,8,48,8,48,24,48, + 56,255,248,6,23,23,9,2,0,192,224,48,8,0,252,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,252, + 7,23,23,9,2,0,6,14,24,32,0,252,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,252,8,23,23, + 9,1,0,24,60,102,129,0,126,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,24,126,7,22,22,9,2,0, + 198,198,0,0,252,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,252,16,18,36,20,2,0,255,224,48,56, + 48,12,48,12,48,6,48,6,48,7,48,7,254,7,48,7, + 48,7,48,7,48,6,48,6,48,12,48,12,48,56,255,224, + 19,22,66,21,1,0,1,196,0,3,248,0,4,112,0,0, + 0,0,248,15,224,60,3,128,28,1,0,30,1,0,23,1, + 0,19,129,0,17,129,0,16,193,0,16,225,0,16,97,0, + 16,49,0,16,57,0,16,29,0,16,15,0,16,7,0,16, + 7,0,56,3,0,254,1,0,17,23,69,19,1,0,12,0, + 0,14,0,0,3,0,0,0,128,0,0,0,0,7,240,0, + 28,28,0,48,6,0,48,6,0,112,7,0,96,3,0,224, + 3,128,224,3,128,224,3,128,224,3,128,224,3,128,224,3, + 128,96,3,0,112,7,0,48,6,0,48,6,0,28,28,0, + 7,240,0,17,23,69,19,1,0,0,24,0,0,56,0,0, + 96,0,0,128,0,0,0,0,7,240,0,28,28,0,48,6, + 0,48,6,0,112,7,0,96,3,0,224,3,128,224,3,128, + 224,3,128,224,3,128,224,3,128,224,3,128,96,3,0,112, + 7,0,48,6,0,48,6,0,28,28,0,7,240,0,17,23, + 69,19,1,0,0,192,0,1,224,0,3,48,0,4,8,0, + 0,0,0,7,240,0,28,28,0,48,6,0,48,6,0,112, + 7,0,96,3,0,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,224,3,128,96,3,0,112,7,0,48,6,0, + 48,6,0,28,28,0,7,240,0,17,22,66,19,1,0,3, + 136,0,7,240,0,8,224,0,0,0,0,7,240,0,28,28, + 0,48,6,0,48,6,0,112,7,0,96,3,0,224,3,128, + 224,3,128,224,3,128,224,3,128,224,3,128,224,3,128,96, + 3,0,112,7,0,48,6,0,48,6,0,28,28,0,7,240, + 0,17,22,66,19,1,0,6,48,0,6,48,0,0,0,0, + 0,0,0,7,240,0,28,28,0,48,6,0,48,6,0,112, + 7,0,96,3,0,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,224,3,128,96,3,0,112,7,0,48,6,0, + 48,6,0,28,28,0,7,240,0,13,12,24,14,1,1,192, + 24,96,48,48,96,24,192,13,128,7,0,7,0,13,128,24, + 192,48,96,96,48,192,24,17,19,57,19,1,0,0,3,0, + 7,246,0,28,28,0,48,14,0,48,30,0,96,51,0,96, + 99,0,224,67,128,224,195,128,225,131,128,227,3,128,226,3, + 128,230,3,128,108,3,0,120,3,0,48,6,0,48,6,0, + 124,28,0,199,240,0,16,23,46,19,2,0,6,0,7,0, + 1,128,0,64,0,0,252,31,48,14,48,4,48,4,48,4, + 48,4,48,4,48,4,48,4,48,4,48,4,48,4,48,4, + 48,4,56,12,24,8,30,56,7,224,16,23,46,19,2,0, + 0,48,0,112,0,192,1,0,0,0,252,31,48,14,48,4, + 48,4,48,4,48,4,48,4,48,4,48,4,48,4,48,4, + 48,4,48,4,48,4,56,12,24,8,30,56,7,224,16,23, + 46,19,2,0,1,128,3,192,6,96,8,16,0,0,252,31, + 48,14,48,4,48,4,48,4,48,4,48,4,48,4,48,4, + 48,4,48,4,48,4,48,4,48,4,56,12,24,8,30,56, + 7,224,16,22,44,19,2,0,6,48,6,48,0,0,0,0, + 252,31,48,14,48,4,48,4,48,4,48,4,48,4,48,4, + 48,4,48,4,48,4,48,4,48,4,48,4,56,12,24,8, + 30,56,7,224,16,23,46,17,0,0,0,48,0,112,0,192, + 1,0,0,0,252,63,56,12,24,8,28,24,12,16,14,48, + 6,32,7,96,3,64,3,192,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,7,224,13,18,36,16,2,0,252,0, + 48,0,48,0,48,0,63,128,48,224,48,48,48,56,48,56, + 48,56,48,56,48,48,48,224,63,128,48,0,48,0,48,0, + 252,0,12,18,36,14,1,0,15,128,24,192,48,96,48,96, + 48,96,48,96,48,192,51,192,48,96,48,48,48,48,48,48, + 48,48,48,48,54,48,54,48,54,96,243,192,12,18,36,13, + 1,0,24,0,28,0,6,0,1,0,0,0,0,0,31,0, + 113,128,112,192,96,192,0,192,7,192,56,192,96,192,192,192, + 192,192,225,240,126,96,12,18,36,13,1,0,1,128,3,128, + 6,0,8,0,0,0,0,0,31,0,113,128,112,192,96,192, + 0,192,7,192,56,192,96,192,192,192,192,192,225,240,126,96, + 12,18,36,13,1,0,6,0,15,0,25,128,32,64,0,0, + 0,0,31,0,113,128,112,192,96,192,0,192,7,192,56,192, + 96,192,192,192,192,192,225,240,126,96,12,17,34,13,1,0, + 28,64,63,128,71,0,0,0,0,0,31,0,113,128,112,192, + 96,192,0,192,7,192,56,192,96,192,192,192,192,192,225,240, + 126,96,12,16,32,13,1,0,25,128,25,128,0,0,0,0, + 31,0,113,128,112,192,96,192,0,192,7,192,56,192,96,192, + 192,192,192,192,225,240,126,96,12,19,38,13,1,0,14,0, + 17,0,17,0,17,0,14,0,0,0,0,0,31,0,113,128, + 112,192,96,192,0,192,7,192,56,192,96,192,192,192,192,192, + 225,240,126,96,19,12,36,21,1,0,31,31,0,113,241,192, + 96,224,192,0,224,224,0,192,96,7,255,224,56,192,0,96, + 192,0,192,224,0,192,224,64,227,112,192,124,31,128,10,16, + 32,12,1,252,31,0,113,192,97,192,224,192,192,0,192,0, + 192,0,192,0,224,0,96,64,112,192,31,128,8,0,14,0, + 2,0,28,0,11,18,36,13,1,0,24,0,28,0,6,0, + 1,0,0,0,0,0,31,0,113,192,96,192,224,224,192,96, + 255,224,192,0,192,0,224,0,96,64,112,192,31,128,11,18, + 36,13,1,0,1,128,3,128,6,0,8,0,0,0,0,0, + 31,0,113,192,96,192,224,224,192,96,255,224,192,0,192,0, + 224,0,96,64,112,192,31,128,11,18,36,13,1,0,6,0, + 15,0,25,128,32,64,0,0,0,0,31,0,113,192,96,192, + 224,224,192,96,255,224,192,0,192,0,224,0,96,64,112,192, + 31,128,11,16,32,13,1,0,49,128,49,128,0,0,0,0, + 31,0,113,192,96,192,224,224,192,96,255,224,192,0,192,0, + 224,0,96,64,112,192,31,128,6,18,18,8,1,0,192,224, + 48,8,0,0,240,48,48,48,48,48,48,48,48,48,48,252, + 6,18,18,8,1,0,24,56,96,128,0,0,240,48,48,48, + 48,48,48,48,48,48,48,252,8,18,18,8,0,0,24,60, + 102,129,0,0,120,24,24,24,24,24,24,24,24,24,24,126, + 6,16,16,8,1,0,204,204,0,0,240,48,48,48,48,48, + 48,48,48,48,48,252,11,18,36,13,1,0,192,0,51,0, + 28,0,28,0,102,0,3,0,31,128,113,192,96,192,224,224, + 192,96,192,96,192,96,192,96,224,224,96,192,113,192,31,0, + 14,17,34,14,0,0,7,16,15,224,17,192,0,0,0,0, + 241,192,55,224,56,112,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,252,252,11,18,36,13,1,0,24,0, + 28,0,6,0,1,0,0,0,0,0,31,0,113,192,96,192, + 224,224,192,96,192,96,192,96,192,96,224,224,96,192,113,192, + 31,0,11,18,36,13,1,0,1,128,3,128,6,0,8,0, + 0,0,0,0,31,0,113,192,96,192,224,224,192,96,192,96, + 192,96,192,96,224,224,96,192,113,192,31,0,11,18,36,13, + 1,0,14,0,31,0,49,128,64,64,0,0,0,0,31,0, + 113,192,96,192,224,224,192,96,192,96,192,96,192,96,224,224, + 96,192,113,192,31,0,11,17,34,13,1,0,28,64,63,128, + 71,0,0,0,0,0,31,0,113,192,96,192,224,224,192,96, + 192,96,192,96,192,96,224,224,96,192,113,192,31,0,11,16, + 32,13,1,0,49,128,49,128,0,0,0,0,31,0,113,192, + 96,192,224,224,192,96,192,96,192,96,192,96,224,224,96,192, + 113,192,31,0,12,10,20,14,1,2,6,0,6,0,0,0, + 0,0,255,240,255,240,0,0,0,0,6,0,6,0,11,16, + 32,13,1,254,0,64,0,128,31,128,113,192,98,192,226,224, + 196,96,196,96,196,96,200,96,200,224,80,192,113,192,63,0, + 32,0,64,0,14,18,36,14,0,0,12,0,14,0,3,0, + 0,128,0,0,0,0,240,240,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,56,112,31,176,14,60,14,18, + 36,14,0,0,0,192,1,192,3,0,4,0,0,0,0,0, + 240,240,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,56,112,31,176,14,60,14,18,36,14,0,0,3,0, + 7,128,12,192,16,32,0,0,0,0,240,240,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,56,112,31,176, + 14,60,14,16,32,14,0,0,12,192,12,192,0,0,0,0, + 240,240,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,56,112,31,176,14,60,13,23,46,12,255,251,0,96, + 0,224,1,128,2,0,0,0,0,0,120,56,48,16,56,48, + 24,32,24,32,12,96,12,64,6,192,6,128,7,128,3,0, + 3,0,2,0,2,0,196,0,236,0,120,0,13,23,46,14, + 0,251,240,0,48,0,48,0,48,0,48,0,48,0,55,192, + 60,112,56,48,48,56,48,24,48,24,48,24,48,24,48,56, + 56,48,60,112,55,192,48,0,48,0,48,0,48,0,252,0, + 13,21,42,12,255,251,12,96,12,96,0,0,0,0,120,56, + 48,16,56,48,24,32,24,32,12,96,12,64,6,192,6,128, + 7,128,3,0,3,0,2,0,2,0,196,0,236,0,120,0 + }; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--25-180-100-100-P-136-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=25 h=23 x= 6 y=14 dx=25 dy= 0 ascent=20 len=72 + Font Bounding box w=31 h=37 x=-3 y=-8 + Calculated Min Values x=-2 y=-5 dx= 0 dy= 0 + Pure Font ascent =18 descent=-5 + X Font ascent =18 descent=-5 + Max Font ascent =20 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR18r[3477] U8G_SECTION(".progmem.u8g_font_ncenR18r") = { + 0,31,37,253,248,18,4,33,9,197,32,127,251,20,251,18, + 251,0,0,0,7,0,1,3,18,18,7,2,0,64,224,224, + 224,224,224,224,224,224,224,224,64,64,64,0,224,224,224,6, + 6,6,10,2,12,204,204,204,204,204,204,13,16,32,15,1, + 1,12,96,12,96,12,96,12,96,12,96,127,248,24,192,24, + 192,24,192,24,192,255,240,49,128,49,128,49,128,49,128,49, + 128,11,22,44,13,1,254,4,0,4,0,31,0,101,128,68, + 192,196,192,197,192,197,128,228,0,252,0,127,0,31,192,7, + 192,4,224,100,96,228,96,196,96,196,64,100,192,63,0,4, + 0,4,0,18,19,57,20,1,255,30,24,0,51,40,0,97, + 216,0,97,16,0,193,48,0,193,32,0,194,96,0,194,64, + 0,196,199,128,120,140,192,1,152,64,1,24,64,3,48,64, + 2,48,64,6,48,128,4,48,128,12,49,0,8,30,0,8, + 0,0,18,18,54,20,1,0,7,192,0,12,224,0,24,96, + 0,24,96,0,24,96,0,24,192,0,13,128,0,14,0,0, + 30,63,128,103,30,0,99,140,0,193,200,0,192,232,0,192, + 112,0,224,56,64,112,124,64,127,207,128,31,7,0,2,6, + 6,6,2,12,192,192,192,192,192,192,7,21,21,9,1,253, + 2,12,24,48,48,96,96,192,192,192,192,192,192,192,96,96, + 48,48,24,12,2,7,21,21,8,0,253,128,96,48,24,24, + 12,12,6,6,6,6,6,6,6,12,12,24,24,48,96,128, + 7,9,9,9,1,9,16,56,146,214,56,214,146,56,16,12, + 12,24,14,1,1,6,0,6,0,6,0,6,0,6,0,255, + 240,255,240,6,0,6,0,6,0,6,0,6,0,4,7,7, + 6,1,252,96,240,240,48,32,64,128,6,2,2,8,1,6, + 252,252,3,3,3,7,2,0,224,224,224,7,18,18,8,0, + 0,6,6,6,12,12,12,24,24,24,48,48,48,96,96,96, + 192,192,192,11,18,36,13,1,0,14,0,17,0,49,128,32, + 128,96,192,96,192,224,224,224,224,224,224,224,224,224,224,224, + 224,96,192,96,192,32,128,49,128,17,0,14,0,8,18,18, + 13,3,0,8,56,248,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,255,11,18,36,13,1,0,31,0,113,192,64, + 192,224,224,224,224,64,224,0,192,1,192,1,128,3,0,6, + 0,12,0,24,0,48,32,96,32,192,96,255,224,255,224,11, + 18,36,13,1,0,31,0,99,128,193,192,225,192,225,192,65, + 128,1,128,3,0,31,0,1,128,0,192,0,224,64,224,224, + 224,224,192,193,192,97,128,30,0,12,18,36,13,0,0,0, + 64,0,192,1,192,3,192,6,192,12,192,8,192,24,192,48, + 192,96,192,64,192,192,192,128,192,255,240,0,192,0,192,0, + 192,3,240,11,18,36,13,1,0,127,192,127,128,64,0,64, + 0,64,0,64,0,64,0,95,0,99,128,0,192,0,192,0, + 224,96,224,224,224,224,192,64,192,97,128,31,0,11,18,36, + 13,1,0,15,128,56,224,32,224,96,96,96,0,96,0,224, + 0,239,0,241,128,224,192,224,192,224,224,224,224,96,224,96, + 192,96,192,49,128,31,0,10,18,36,13,2,0,255,192,255, + 192,128,128,129,128,1,0,3,0,3,0,2,0,6,0,6, + 0,4,0,12,0,12,0,12,0,28,0,28,0,28,0,8, + 0,11,18,36,13,1,0,31,0,49,128,32,128,96,192,96, + 192,112,192,57,128,63,0,31,0,55,128,97,192,192,224,192, + 96,192,96,192,96,96,192,113,192,31,0,11,18,36,13,1, + 0,31,0,49,128,112,192,96,192,224,224,224,224,224,224,96, + 224,112,224,49,224,30,224,0,224,0,192,0,192,193,192,225, + 128,227,128,62,0,3,12,12,7,2,0,224,224,224,0,0, + 0,0,0,0,224,224,224,4,16,16,7,2,252,224,224,224, + 0,0,0,0,0,0,96,240,240,48,32,64,128,12,12,24, + 14,1,1,0,48,0,240,3,192,15,0,60,0,240,0,240, + 0,60,0,15,0,3,192,0,240,0,48,12,6,12,15,1, + 4,255,240,255,240,0,0,0,0,255,240,255,240,12,12,24, + 14,1,1,192,0,240,0,60,0,15,0,3,192,0,240,0, + 240,3,192,15,0,60,0,240,0,192,0,10,18,36,12,1, + 0,30,0,99,128,193,192,225,192,225,192,1,192,3,128,7, + 0,14,0,12,0,24,0,16,0,16,0,0,0,0,0,56, + 0,56,0,56,0,17,18,54,19,1,0,1,248,0,6,6, + 0,24,3,0,16,1,128,96,216,128,99,56,128,198,24,128, + 198,24,128,204,24,128,204,49,0,204,49,0,204,114,0,196, + 180,0,195,56,0,96,1,0,96,2,0,24,12,0,31,248, + 0,19,18,54,19,0,0,0,64,0,0,96,0,0,224,0, + 0,240,0,1,48,0,1,56,0,2,24,0,2,28,0,4, + 12,0,4,12,0,8,14,0,15,254,0,16,6,0,16,7, + 0,32,3,0,32,3,128,96,3,128,248,15,224,14,18,36, + 18,2,0,255,192,48,112,48,48,48,56,48,56,48,56,48, + 48,48,96,63,240,48,56,48,24,48,28,48,28,48,28,48, + 28,48,24,48,56,255,224,15,18,36,17,1,0,7,242,28, + 30,56,6,48,2,112,2,96,2,224,0,224,0,224,0,224, + 0,224,0,224,0,96,2,112,2,48,6,56,4,28,28,7, + 240,16,18,36,20,2,0,255,224,48,56,48,12,48,12,48, + 6,48,6,48,7,48,7,48,7,48,7,48,7,48,7,48, + 6,48,6,48,12,48,12,48,56,255,224,13,18,36,16,1, + 0,255,248,48,56,48,24,48,8,48,8,48,136,48,128,49, + 128,63,128,49,128,48,128,48,128,48,8,48,8,48,8,48, + 24,48,56,255,248,13,18,36,16,1,0,255,248,48,56,48, + 24,48,8,48,8,48,136,48,128,49,128,63,128,49,128,48, + 128,48,128,48,0,48,0,48,0,48,0,48,0,252,0,17, + 18,54,18,1,0,7,250,0,28,30,0,48,6,0,48,6, + 0,112,2,0,96,2,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,63,128,224,6,0,96,6,0,112,6,0,48, + 6,0,48,14,0,28,30,0,7,242,0,17,18,54,21,2, + 0,252,31,128,48,6,0,48,6,0,48,6,0,48,6,0, + 48,6,0,48,6,0,48,6,0,63,254,0,48,6,0,48, + 6,0,48,6,0,48,6,0,48,6,0,48,6,0,48,6, + 0,48,6,0,252,31,128,6,18,18,9,2,0,252,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,252,11, + 18,36,14,1,0,7,224,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,97,128,241,128,225, + 128,193,128,193,128,99,0,62,0,18,18,54,20,2,0,252, + 127,0,48,28,0,48,24,0,48,48,0,48,96,0,48,192, + 0,49,128,0,51,0,0,55,0,0,63,128,0,57,192,0, + 48,224,0,48,112,0,48,56,0,48,28,0,48,14,0,48, + 7,0,252,31,192,13,18,36,16,2,0,254,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,8,48,8,48,8,48,24,48,56,255,248,20, + 18,54,23,1,0,252,1,240,60,1,192,30,3,192,22,2, + 192,23,2,192,19,2,192,19,4,192,19,132,192,17,132,192, + 17,136,192,17,200,192,16,200,192,16,208,192,16,240,192,16, + 112,192,16,96,192,56,96,192,254,35,240,19,18,54,21,1, + 0,248,15,224,60,3,128,28,1,0,30,1,0,23,1,0, + 19,129,0,17,129,0,16,193,0,16,225,0,16,97,0,16, + 49,0,16,57,0,16,29,0,16,15,0,16,7,0,16,7, + 0,56,3,0,254,1,0,17,18,54,19,1,0,7,240,0, + 28,28,0,48,6,0,48,6,0,112,7,0,96,3,0,224, + 3,128,224,3,128,224,3,128,224,3,128,224,3,128,224,3, + 128,96,3,0,112,7,0,48,6,0,48,6,0,28,28,0, + 7,240,0,13,18,36,16,2,0,255,192,48,112,48,48,48, + 56,48,56,48,56,48,56,48,48,48,112,63,192,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,252,0,17,22,66, + 19,1,252,7,240,0,28,28,0,48,6,0,48,6,0,112, + 7,0,96,3,0,224,3,128,224,3,128,224,3,128,224,3, + 128,224,3,128,227,195,128,100,99,0,104,39,0,56,54,0, + 56,22,0,28,28,0,7,248,0,0,24,128,0,12,128,0, + 15,0,0,6,0,15,18,36,18,2,0,255,192,48,112,48, + 48,48,56,48,56,48,56,48,48,48,96,63,128,49,192,48, + 224,48,96,48,112,48,112,48,50,48,50,48,60,252,28,13, + 18,36,15,1,0,31,144,112,240,64,48,192,48,192,16,224, + 16,120,0,62,0,15,128,3,224,0,240,0,56,128,24,128, + 24,192,24,192,48,240,112,159,192,14,18,36,17,1,0,255, + 252,227,28,195,12,131,4,131,4,131,4,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,31,224,16,18,36,19,2,0,252,31,48,14,48,4,48, + 4,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,56,12,24,8,30,56,7,224,18,18,54, + 18,0,0,254,7,192,56,1,0,24,1,0,28,2,0,28, + 2,0,12,2,0,14,4,0,6,4,0,7,8,0,7,8, + 0,3,8,0,3,144,0,1,144,0,1,160,0,1,224,0, + 0,224,0,0,192,0,0,64,0,25,18,72,25,0,0,254, + 63,143,128,56,14,2,0,56,14,2,0,24,14,2,0,24, + 22,4,0,28,23,4,0,12,19,4,0,12,19,4,0,14, + 35,136,0,6,33,136,0,6,33,136,0,7,65,208,0,3, + 64,208,0,3,192,240,0,3,128,240,0,1,128,96,0,1, + 128,96,0,0,128,32,0,19,18,54,19,0,0,127,143,128, + 30,6,0,14,4,0,7,8,0,7,16,0,3,144,0,1, + 160,0,1,192,0,0,224,0,0,224,0,1,112,0,1,56, + 0,2,28,0,4,28,0,4,14,0,8,7,0,24,7,128, + 252,31,224,16,18,36,17,0,0,252,63,56,12,24,8,28, + 24,12,16,14,48,6,32,7,96,3,64,3,192,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,7,224,14,18,36, + 16,1,0,127,252,112,24,96,56,64,48,64,96,0,224,0, + 192,1,128,3,128,3,0,6,0,14,0,28,0,24,4,48, + 4,112,12,96,28,255,252,5,21,21,7,2,253,248,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,248,10,18,36,11,0,0,192,0,192,0,96,0,96,0, + 48,0,48,0,24,0,24,0,12,0,12,0,6,0,6,0, + 3,0,3,0,1,128,1,128,0,192,0,192,5,21,21,7, + 0,253,248,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,248,10,10,20,12,1,8,12,0,12, + 0,30,0,30,0,51,0,51,0,97,128,97,128,192,192,192, + 192,12,2,4,12,0,253,255,240,255,240,5,4,4,8,1, + 14,192,224,48,8,12,12,24,13,1,0,31,0,113,128,112, + 192,96,192,0,192,7,192,56,192,96,192,192,192,192,192,225, + 240,126,96,13,18,36,14,0,0,240,0,48,0,48,0,48, + 0,48,0,48,0,55,192,60,112,56,48,48,56,48,24,48, + 24,48,24,48,24,48,56,56,48,60,112,39,192,10,12,24, + 12,1,0,31,0,113,192,97,192,224,192,192,0,192,0,192, + 0,192,0,224,0,96,64,112,192,31,128,13,18,36,14,1, + 0,1,224,0,96,0,96,0,96,0,96,0,96,30,96,113, + 224,96,224,224,96,192,96,192,96,192,96,192,96,224,96,96, + 224,113,224,31,120,11,12,24,13,1,0,31,0,113,192,96, + 192,224,224,192,96,255,224,192,0,192,0,224,0,96,64,112, + 192,31,128,9,18,36,8,1,0,15,0,25,128,49,128,48, + 0,48,0,48,0,252,0,48,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,252,0,13,17,34, + 12,0,251,31,56,49,216,96,192,96,192,96,192,96,192,49, + 128,31,0,48,0,96,0,63,0,31,192,96,224,192,96,192, + 96,224,192,127,128,14,18,36,14,0,0,240,0,48,0,48, + 0,48,0,48,0,48,0,49,192,55,224,56,112,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,252,252,6, + 18,18,8,1,0,48,48,48,0,0,0,240,48,48,48,48, + 48,48,48,48,48,48,252,7,23,23,8,254,251,6,6,6, + 0,0,0,30,6,6,6,6,6,6,6,6,6,6,6,6, + 6,198,204,120,14,18,36,15,1,0,240,0,48,0,48,0, + 48,0,48,0,48,0,51,240,48,192,49,128,51,0,54,0, + 62,0,55,0,51,128,49,192,48,224,48,112,252,252,6,18, + 18,8,1,0,240,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,252,22,12,36,22,0,0,241,193,192,55, + 231,224,56,120,112,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,252,252,252, + 14,12,24,14,0,0,241,192,55,224,56,112,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,252,252,11,12, + 24,13,1,0,31,0,113,192,96,192,224,224,192,96,192,96, + 192,96,192,96,224,224,96,192,113,192,31,0,13,17,34,14, + 0,251,247,192,60,112,56,48,48,56,48,24,48,24,48,24, + 48,24,48,56,56,48,60,112,55,192,48,0,48,0,48,0, + 48,0,252,0,13,17,34,14,1,251,30,32,113,224,96,224, + 224,96,192,96,192,96,192,96,192,96,224,96,96,224,113,224, + 31,96,0,96,0,96,0,96,0,96,1,248,10,12,24,10, + 0,0,243,128,53,192,56,192,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,252,0,9,12,24,11,1,0, + 61,0,103,0,195,0,193,0,224,0,124,0,31,0,3,128, + 129,128,193,128,227,0,190,0,8,16,16,10,1,0,16,16, + 48,112,255,48,48,48,48,48,48,48,49,49,57,30,14,12, + 24,14,0,0,240,240,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,56,112,31,176,14,60,15,12,24,13, + 255,0,252,126,48,24,48,16,56,48,24,32,28,96,12,64, + 14,192,6,128,7,128,3,0,3,0,19,12,36,17,255,0, + 252,243,224,48,96,128,48,96,128,48,112,128,56,177,0,24, + 177,0,24,177,0,29,58,0,13,26,0,13,26,0,14,28, + 0,6,12,0,13,12,24,12,0,0,248,240,112,96,56,192, + 25,128,15,0,7,0,7,0,13,128,24,192,48,224,96,112, + 240,248,13,17,34,12,255,251,120,56,48,16,56,32,24,32, + 24,96,28,64,12,192,14,128,6,128,7,128,3,0,3,0, + 2,0,2,0,196,0,236,0,120,0,9,12,24,11,1,0, + 255,128,195,128,135,0,134,0,12,0,28,0,24,0,48,0, + 112,128,224,128,193,128,255,128,6,21,21,8,1,253,12,16, + 48,48,48,48,48,48,48,32,192,32,48,48,48,48,48,48, + 48,16,12,2,18,18,15,6,0,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,6,21,21,7,1, + 253,192,32,48,48,48,48,48,48,48,16,12,16,48,48,48, + 48,48,48,48,32,192,12,4,8,14,1,6,60,48,126,112, + 231,224,195,192,255}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--34-240-100-100-P-181-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=31 h=32 x= 9 y=19 dx=32 dy= 0 ascent=32 len=128 + Font Bounding box w=39 h=50 x=-6 y=-11 + Calculated Min Values x=-2 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =32 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR24[11729] U8G_SECTION(".progmem.u8g_font_ncenR24") = { + 0,39,50,250,245,25,5,159,15,28,32,255,249,32,249,25, + 249,0,0,0,9,1,1,4,25,25,10,3,0,96,240,240, + 240,240,240,240,96,96,96,96,96,96,96,96,96,96,96,0, + 0,0,96,240,240,96,9,8,16,13,2,17,227,128,227,128, + 227,128,227,128,65,0,65,0,65,0,65,0,16,23,46,19, + 2,0,3,12,3,12,3,12,7,28,6,24,6,24,6,24, + 127,255,127,255,6,24,14,56,12,56,12,48,255,254,255,254, + 12,48,12,48,28,112,28,112,24,96,24,96,24,96,24,96, + 14,31,62,18,2,252,2,0,2,0,2,0,15,192,63,240, + 114,112,226,56,194,120,194,120,194,48,194,0,226,0,250,0, + 127,0,63,192,31,240,3,248,2,124,2,60,98,28,242,12, + 242,12,226,28,194,24,226,120,127,240,31,192,2,0,2,0, + 2,0,2,0,24,25,75,27,1,255,3,128,32,15,192,224, + 28,227,192,56,127,192,56,97,128,112,97,128,112,99,0,240, + 99,0,224,102,0,224,196,0,224,204,0,225,136,28,115,24, + 126,62,16,227,0,49,195,0,99,195,0,99,131,0,199,131, + 0,199,3,1,135,6,1,135,6,3,7,12,2,3,152,6, + 1,240,4,0,0,22,25,75,27,2,0,1,248,0,7,188, + 0,6,28,0,14,14,0,14,14,0,14,14,0,14,12,0, + 14,28,0,15,56,0,15,112,0,7,224,0,7,128,0,15, + 199,252,59,193,240,113,224,224,113,240,192,224,240,192,224,249, + 128,224,125,128,240,63,4,240,30,4,248,15,12,126,63,248, + 63,243,248,31,193,224,3,8,8,7,2,17,224,224,224,224, + 64,64,64,64,8,29,29,11,2,252,1,7,6,12,24,48, + 48,48,96,96,96,96,224,224,224,224,224,96,96,96,96,48, + 48,16,24,12,6,7,3,8,29,29,11,2,252,192,224,96, + 48,24,8,12,12,6,6,6,6,7,7,7,7,7,6,6, + 6,6,12,12,28,24,48,96,192,192,12,14,28,17,2,11, + 6,0,6,0,6,0,198,112,230,112,127,224,31,128,31,0, + 127,192,230,112,198,112,6,0,6,0,6,0,16,17,34,20, + 2,255,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 255,255,255,255,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,5,10,10,9,2,250,112,248,248,120,24,24, + 48,96,224,128,8,3,3,11,1,7,255,255,255,4,4,4, + 9,2,0,96,240,240,96,10,25,50,9,255,0,0,192,0, + 192,0,192,1,128,1,128,1,128,3,0,3,0,3,0,6, + 0,6,0,6,0,12,0,12,0,12,0,24,0,24,0,24, + 0,48,0,48,0,48,0,96,0,96,0,96,0,192,0,16, + 24,48,18,2,0,3,192,15,240,28,56,24,24,56,28,120, + 30,112,14,240,15,240,15,240,15,240,15,240,15,240,15,240, + 15,240,15,240,15,240,15,112,14,120,30,56,28,24,24,28, + 56,15,240,3,192,13,24,48,18,3,0,3,0,7,0,255, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,15,128,255,248,15,24,48,18,1, + 0,7,224,31,248,56,28,96,30,112,14,120,14,120,14,120, + 14,48,30,0,28,0,28,0,56,0,120,0,112,0,224,1, + 192,3,128,7,2,14,2,28,6,56,6,127,254,255,254,255, + 254,15,24,48,18,1,0,7,224,31,248,56,56,112,28,120, + 28,120,28,48,28,0,28,0,56,0,112,1,224,15,240,0, + 248,0,60,0,28,0,30,96,14,240,14,240,14,240,30,224, + 28,120,124,63,240,15,192,16,24,48,18,1,0,0,48,0, + 48,0,112,0,240,1,240,1,240,3,112,6,112,6,112,12, + 112,24,112,24,112,48,112,96,112,96,112,192,112,255,255,255, + 255,0,112,0,112,0,112,0,112,0,248,3,254,14,24,48, + 18,2,0,56,8,63,248,63,240,63,224,48,0,48,0,32, + 0,96,0,99,192,111,240,124,120,112,56,96,60,0,28,0, + 28,0,28,96,28,240,28,240,28,240,60,224,56,112,120,127, + 240,31,128,15,24,48,18,1,0,3,240,15,252,28,62,56, + 30,56,30,48,12,112,0,112,0,112,0,241,224,247,248,254, + 60,252,28,248,30,240,14,240,14,240,14,112,14,112,14,112, + 30,56,28,56,60,31,240,7,192,13,24,48,18,3,0,255, + 248,255,248,255,248,192,16,192,48,128,32,128,96,128,64,0, + 192,0,192,1,128,1,128,1,128,3,0,3,0,3,0,7, + 0,7,0,7,0,15,0,15,0,15,0,15,0,6,0,15, + 24,48,18,1,0,7,224,31,248,60,56,56,28,112,28,112, + 12,112,12,120,24,60,56,63,112,31,224,7,240,7,248,29, + 252,56,124,112,30,112,30,224,14,224,14,224,14,112,28,120, + 60,63,248,15,224,15,24,48,18,1,0,15,192,63,240,120, + 120,112,56,240,60,224,28,224,28,224,30,224,30,240,30,240, + 62,120,126,120,126,63,222,31,158,0,30,0,28,0,28,96, + 56,240,56,240,112,241,224,127,192,63,0,4,16,16,9,3, + 0,96,240,240,96,0,0,0,0,0,0,0,0,96,240,240, + 96,5,21,21,9,1,251,48,120,120,48,0,0,0,0,0, + 0,0,0,48,120,120,56,24,16,48,96,192,16,18,36,20, + 2,255,0,1,0,7,0,31,0,124,1,240,7,192,31,0, + 124,0,240,0,240,0,124,0,31,0,7,192,1,240,0,124, + 0,31,0,7,0,1,16,8,16,20,2,4,255,255,255,255, + 0,0,0,0,0,0,0,0,255,255,255,255,16,18,36,20, + 2,255,128,0,224,0,248,0,62,0,15,128,3,224,0,248, + 0,62,0,15,0,15,0,62,0,248,3,224,15,128,62,0, + 248,0,224,0,128,0,12,25,50,14,1,0,63,128,115,224, + 192,224,192,240,224,112,224,112,224,112,0,240,0,240,1,224, + 1,192,3,128,3,0,6,0,4,0,4,0,12,0,12,0, + 0,0,0,0,0,0,12,0,30,0,30,0,12,0,22,25, + 75,25,1,0,0,254,0,3,255,128,15,135,192,30,0,224, + 28,0,112,48,0,56,48,0,24,96,251,152,97,207,140,227, + 143,140,199,135,140,199,7,12,207,7,12,207,15,8,206,15, + 24,206,14,24,206,30,48,102,62,96,103,126,192,51,231,152, + 56,0,56,28,0,112,15,129,224,7,255,128,0,254,0,23, + 25,75,23,0,0,0,16,0,0,56,0,0,56,0,0,120, + 0,0,124,0,0,124,0,0,220,0,0,222,0,1,158,0, + 1,142,0,1,143,0,3,7,0,3,7,128,3,7,128,6, + 3,128,7,255,192,7,255,192,12,1,192,12,1,224,12,1, + 224,24,0,240,24,0,240,56,0,248,124,1,252,254,3,254, + 20,25,75,23,1,0,255,254,0,63,255,128,14,7,192,14, + 1,192,14,1,224,14,1,224,14,1,224,14,1,224,14,1, + 192,14,1,192,14,3,128,15,255,0,15,252,0,14,15,128, + 14,3,192,14,1,224,14,0,240,14,0,240,14,0,240,14, + 0,240,14,0,240,14,1,224,14,3,224,63,255,192,255,255, + 0,20,25,75,22,1,0,1,252,96,7,255,96,14,3,224, + 28,1,224,60,0,224,56,0,224,120,0,96,120,0,96,240, + 0,32,240,0,32,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,48,120,0,48,120,0,48, + 120,0,96,60,0,96,28,0,192,15,3,128,7,255,0,1, + 252,0,22,25,75,25,1,0,255,254,0,63,255,192,14,3, + 224,14,0,240,14,0,112,14,0,120,14,0,120,14,0,60, + 14,0,60,14,0,60,14,0,60,14,0,60,14,0,60,14, + 0,60,14,0,60,14,0,60,14,0,60,14,0,60,14,0, + 56,14,0,120,14,0,112,14,0,224,14,3,224,63,255,192, + 255,254,0,20,25,75,24,1,0,255,255,240,63,255,240,14, + 1,240,14,0,112,14,0,112,14,0,48,14,4,48,14,4, + 16,14,4,16,14,12,0,14,60,0,15,252,0,15,252,0, + 14,60,0,14,12,0,14,12,0,14,4,16,14,4,16,14, + 0,16,14,0,48,14,0,48,14,0,112,14,1,240,63,255, + 240,255,255,240,20,25,75,22,1,0,255,255,240,63,255,240, + 14,1,240,14,0,112,14,0,48,14,0,48,14,0,16,14, + 4,16,14,4,16,14,12,0,14,12,0,14,60,0,15,252, + 0,15,252,0,14,28,0,14,12,0,14,4,0,14,4,0, + 14,4,0,14,0,0,14,0,0,14,0,0,14,0,0,63, + 128,0,255,224,0,24,25,75,24,1,0,1,254,48,7,255, + 176,15,3,240,30,0,240,60,0,112,56,0,112,120,0,48, + 112,0,48,112,0,16,240,0,16,240,0,0,240,0,0,240, + 0,0,240,0,0,240,7,255,240,0,248,240,0,112,112,0, + 112,112,0,112,120,0,112,56,0,240,28,0,240,15,1,176, + 7,255,48,1,254,16,25,25,100,27,1,0,255,227,255,128, + 63,128,254,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,15,255,248,0,15,255,248,0, + 14,0,56,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,63,128,254,0,255,227,255,128, + 11,25,50,13,1,0,255,224,63,128,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,63,128,255,224,17,25,75,18,0,0,3,255, + 128,0,124,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,112,56, + 0,248,56,0,248,56,0,248,56,0,240,56,0,192,120,0, + 224,112,0,127,240,0,31,192,0,25,25,100,25,1,0,255, + 227,255,0,63,129,252,0,14,0,240,0,14,0,224,0,14, + 1,192,0,14,1,128,0,14,3,0,0,14,6,0,0,14, + 14,0,0,14,28,0,0,14,56,0,0,14,124,0,0,14, + 254,0,0,15,222,0,0,15,143,0,0,15,7,128,0,14, + 7,192,0,14,3,192,0,14,1,224,0,14,1,240,0,14, + 0,240,0,14,0,120,0,14,0,124,0,63,0,62,0,255, + 192,255,128,20,25,75,22,1,0,255,224,0,63,128,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,16,14,0,16,14, + 0,16,14,0,48,14,0,48,14,0,112,14,1,240,63,255, + 224,255,255,224,29,25,100,30,0,0,127,128,15,248,31,128, + 15,192,15,128,15,128,15,192,15,128,13,192,27,128,13,192, + 27,128,13,224,19,128,12,224,51,128,12,224,51,128,12,240, + 35,128,12,112,99,128,12,112,99,128,12,120,99,128,12,56, + 195,128,12,56,195,128,12,60,195,128,12,28,131,128,12,29, + 131,128,12,31,131,128,12,31,3,128,12,15,3,128,12,15, + 3,128,12,14,3,128,63,6,15,224,255,198,63,248,26,25, + 100,28,1,0,255,0,255,192,31,0,63,0,15,128,12,0, + 15,192,12,0,15,192,12,0,13,224,12,0,13,240,12,0, + 12,248,12,0,12,120,12,0,12,124,12,0,12,62,12,0, + 12,30,12,0,12,31,12,0,12,15,140,0,12,7,140,0, + 12,7,204,0,12,3,204,0,12,1,236,0,12,0,236,0, + 12,0,252,0,12,0,124,0,12,0,60,0,12,0,60,0, + 63,0,28,0,255,192,12,0,22,25,75,24,1,0,1,254, + 0,7,255,128,15,3,192,28,0,224,60,0,240,56,0,112, + 120,0,120,112,0,56,240,0,60,240,0,60,224,0,28,224, + 0,28,224,0,28,224,0,28,224,0,28,240,0,60,240,0, + 56,112,0,56,120,0,120,56,0,112,60,0,240,28,0,224, + 15,3,192,7,255,128,1,254,0,20,25,75,22,1,0,255, + 254,0,63,255,128,14,7,192,14,1,224,14,0,240,14,0, + 240,14,0,112,14,0,112,14,0,240,14,0,240,14,1,224, + 14,7,192,15,255,128,15,254,0,14,0,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,63,128,0,255,224,0,23,31,93,24,1,250, + 0,254,0,3,255,128,15,1,224,30,0,240,60,0,120,56, + 0,56,120,0,60,112,0,28,240,0,30,240,0,30,224,0, + 14,224,0,14,224,0,14,224,0,14,240,0,30,240,0,30, + 112,124,28,121,222,60,121,135,56,61,3,112,29,3,112,31, + 3,224,15,131,192,3,255,128,0,255,192,0,3,198,0,1, + 198,0,1,228,0,1,252,0,0,248,0,0,112,21,25,75, + 23,1,0,255,254,0,63,255,128,14,7,192,14,1,192,14, + 1,224,14,0,224,14,0,224,14,1,224,14,1,224,14,1, + 192,14,3,192,14,15,0,15,252,0,15,254,0,14,15,0, + 14,7,0,14,7,128,14,3,128,14,3,128,14,3,136,14, + 3,136,14,3,136,14,3,216,63,129,240,255,225,224,17,25, + 75,20,2,0,15,241,0,63,251,0,112,31,0,96,7,0, + 224,7,0,224,3,0,224,1,0,240,1,0,240,0,0,126, + 0,0,127,224,0,31,252,0,7,254,0,0,127,0,0,15, + 128,128,7,128,128,3,128,192,3,128,192,3,128,192,3,128, + 224,7,128,240,7,0,248,14,0,223,252,0,135,240,0,19, + 25,75,21,1,0,255,255,224,255,255,224,240,227,224,224,224, + 224,192,224,96,192,224,96,128,224,32,128,224,32,128,224,32, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,3,248,0,15,254,0, + 26,25,100,26,0,0,255,224,255,192,63,128,63,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,15,0,24,0,7,0,24,0,7,128,48,0,3,224, + 240,0,1,255,192,0,0,127,0,0,23,25,75,23,0,0, + 255,195,254,62,0,248,30,0,112,30,0,112,14,0,96,15, + 0,96,15,0,64,7,0,192,7,128,192,7,128,128,3,129, + 128,3,193,128,3,193,0,1,195,0,1,227,0,1,226,0, + 0,230,0,0,246,0,0,244,0,0,124,0,0,124,0,0, + 56,0,0,56,0,0,56,0,0,16,0,31,25,100,31,0, + 0,255,31,241,254,126,7,192,124,60,3,128,56,28,3,128, + 48,30,3,192,48,30,3,192,96,14,3,192,96,14,3,224, + 96,15,3,224,96,7,6,224,192,7,6,224,192,7,132,240, + 192,7,140,112,192,3,140,113,128,3,140,121,128,3,200,57, + 128,1,216,57,0,1,248,63,0,1,248,31,0,0,240,31, + 0,0,240,30,0,0,240,30,0,0,224,14,0,0,96,12, + 0,0,96,12,0,23,25,75,22,0,0,255,199,252,63,1, + 240,31,0,224,15,1,192,15,129,128,7,131,128,3,195,0, + 3,230,0,1,238,0,0,252,0,0,248,0,0,120,0,0, + 124,0,0,124,0,0,254,0,1,223,0,1,143,0,3,135, + 128,3,7,128,6,3,192,14,3,224,12,1,224,28,0,240, + 62,0,248,255,135,254,23,25,75,23,0,0,255,131,254,126, + 0,248,62,0,112,30,0,96,15,0,224,15,0,192,7,129, + 128,7,193,128,3,195,0,3,227,0,1,230,0,0,246,0, + 0,252,0,0,124,0,0,120,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,254,0,3,255,128,17,25,75,19,1,0,127,255,128, + 127,255,128,120,15,0,112,15,0,96,30,0,96,62,0,96, + 60,0,64,124,0,64,120,0,0,240,0,0,240,0,1,224, + 0,3,224,0,3,192,0,7,128,0,7,128,128,15,0,128, + 31,0,128,30,1,128,62,1,128,60,1,128,120,3,128,120, + 7,128,255,255,128,255,255,128,7,29,29,11,3,252,254,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,254,15,25,50,20,2, + 0,224,0,112,0,112,0,56,0,56,0,28,0,28,0,14, + 0,14,0,7,0,7,0,3,128,3,128,3,128,1,192,1, + 192,0,224,0,224,0,112,0,112,0,56,0,56,0,28,0, + 28,0,14,7,29,29,11,1,252,254,6,6,6,6,6,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,254,16,13,26,20,2,12,3,192,3,192, + 7,224,7,224,14,112,14,112,28,56,28,56,56,28,56,28, + 112,14,112,14,224,7,16,2,4,16,0,252,255,255,255,255, + 7,6,6,11,1,17,192,224,112,56,12,6,16,16,32,17, + 1,0,15,192,63,240,120,120,112,56,96,56,0,56,1,248, + 15,248,60,56,112,56,224,56,224,56,224,120,241,253,127,159, + 62,14,15,25,50,17,0,0,24,0,248,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,57,224,59,248,62,28, + 60,28,60,14,56,14,56,14,56,14,56,14,56,14,56,14, + 60,14,60,28,62,28,55,248,33,224,12,16,32,14,1,0, + 7,128,31,224,56,112,112,240,112,240,224,96,224,0,224,0, + 224,0,224,0,224,0,112,16,112,48,56,96,63,192,15,128, + 16,25,50,18,1,0,0,12,0,124,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,7,156,31,220,56,124,112,60, + 112,60,224,28,224,28,224,28,224,28,224,28,224,28,240,60, + 112,60,120,124,31,220,7,159,14,16,32,16,1,0,7,192, + 31,240,56,120,112,56,96,28,224,28,224,28,255,252,224,0, + 224,0,224,0,240,4,112,12,120,56,63,240,15,192,14,25, + 50,11,0,0,1,248,7,28,14,28,12,28,28,8,28,0, + 28,0,28,0,28,0,255,192,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,255,192,16,23,46,17,1,249,7,159,31,251, + 56,115,112,56,112,56,112,56,112,56,112,56,56,112,31,224, + 55,128,96,0,96,0,127,224,127,248,63,252,48,62,96,14, + 224,14,224,14,248,60,127,248,15,192,19,25,75,20,0,0, + 12,0,0,252,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,112,0,29,252, + 0,31,30,0,30,14,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,255,63,224,9,24,48,10,1, + 0,24,0,60,0,60,0,24,0,0,0,0,0,0,0,0, + 0,28,0,252,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,255, + 128,9,31,62,10,254,249,3,0,7,128,7,128,3,0,0, + 0,0,0,0,0,0,0,3,128,31,128,3,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,67,128,227,0,227, + 0,230,0,124,0,19,25,75,20,0,0,12,0,0,252,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,127,128,28,30,0,28,24,0,28, + 48,0,28,96,0,28,192,0,29,192,0,31,224,0,30,240, + 0,28,120,0,28,60,0,28,28,0,28,14,0,28,15,0, + 28,7,128,255,31,224,9,25,50,11,1,0,12,0,28,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,255,128,27,16, + 64,27,0,0,28,240,120,0,253,252,254,0,31,29,142,0, + 30,15,7,0,30,15,7,0,28,14,7,0,28,14,7,0, + 28,14,7,0,28,14,7,0,28,14,7,0,28,14,7,0, + 28,14,7,0,28,14,7,0,28,14,7,0,28,14,7,0, + 255,63,159,224,19,16,48,19,0,0,28,120,0,253,254,0, + 31,142,0,30,7,0,30,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,255,31,224,14,16,32,16,1,0, + 7,128,31,224,56,112,112,56,112,56,224,28,224,28,224,28, + 224,28,224,28,224,28,112,56,112,56,56,112,31,224,7,128, + 16,23,46,19,1,249,25,240,251,252,62,30,60,14,60,7, + 56,7,56,7,56,7,56,7,56,7,56,7,60,14,60,14, + 62,28,59,252,57,240,56,0,56,0,56,0,56,0,56,0, + 124,0,255,0,16,23,46,17,1,249,7,196,31,236,56,60, + 112,60,112,28,224,28,224,28,224,28,224,28,224,28,224,28, + 240,60,112,60,56,124,63,220,15,156,0,28,0,28,0,28, + 0,28,0,28,0,62,0,255,14,16,32,15,0,0,28,120, + 253,252,31,60,30,60,30,24,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,255,128,11,16, + 32,15,2,0,30,192,127,192,225,192,192,192,192,192,240,64, + 254,0,127,128,63,192,7,224,128,224,192,96,192,96,224,224, + 255,192,159,0,12,23,46,13,0,0,4,0,4,0,12,0, + 12,0,28,0,28,0,60,0,255,224,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,16,28,16,28,48, + 28,48,30,96,15,224,7,192,18,16,48,20,0,0,28,7, + 0,252,63,0,28,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,28, + 15,0,28,15,0,30,63,0,15,247,192,7,199,0,17,16, + 48,17,0,0,255,31,128,124,7,0,60,6,0,30,6,0, + 30,12,0,14,12,0,15,8,0,7,24,0,7,24,0,7, + 176,0,3,176,0,3,224,0,1,224,0,1,224,0,0,192, + 0,0,192,0,24,16,48,24,0,0,254,127,63,120,60,14, + 56,28,12,60,28,28,28,30,24,28,30,24,14,54,16,14, + 39,48,15,103,48,7,103,96,7,67,96,3,195,192,3,195, + 192,3,129,192,1,129,128,1,129,128,16,16,32,19,1,0, + 255,127,60,28,30,24,14,48,15,48,7,96,3,192,3,192, + 1,224,3,224,6,112,12,120,28,56,56,60,120,30,254,127, + 18,23,69,20,1,249,255,31,192,60,7,0,60,6,0,28, + 6,0,30,12,0,14,12,0,15,8,0,7,24,0,7,24, + 0,7,176,0,3,176,0,3,224,0,1,224,0,1,224,0, + 0,192,0,0,192,0,1,128,0,1,128,0,99,0,0,243, + 0,0,230,0,0,252,0,0,112,0,0,13,16,32,15,1, + 0,127,248,120,120,96,240,96,224,65,224,67,192,3,128,7, + 128,15,0,14,0,30,8,60,8,56,24,120,56,240,248,255, + 248,6,30,30,11,3,252,12,28,56,48,48,48,48,48,48, + 48,48,48,48,112,224,224,112,48,48,48,48,48,48,48,48, + 48,48,56,28,12,2,25,25,20,9,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,6,30,30,11,2,252,192,224,112,48,48,48, + 48,48,48,48,48,48,48,56,28,28,56,48,48,48,48,48, + 48,48,48,48,48,112,224,192,16,4,8,20,2,6,30,3, + 127,135,225,254,192,120,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,0,0,9,1,1,4,25,25, + 10,3,249,96,240,240,96,0,0,0,96,96,96,96,96,96, + 96,96,96,96,96,240,240,240,240,240,240,96,13,24,48,18, + 2,252,0,24,0,24,0,16,0,48,7,224,31,240,56,112, + 112,112,112,240,224,224,224,128,225,128,225,0,227,0,227,0, + 242,16,118,48,60,96,31,224,15,128,8,0,24,0,16,0, + 16,0,16,23,46,19,1,0,1,240,7,252,14,14,12,14, + 28,30,28,30,28,28,28,0,30,0,14,0,14,0,255,248, + 15,0,7,0,7,0,7,0,6,0,6,0,126,3,223,7, + 143,142,223,252,112,240,16,17,34,19,1,3,67,194,239,247, + 127,254,60,60,112,14,112,14,224,7,224,7,224,7,224,7, + 224,7,112,14,112,14,60,60,127,254,239,247,3,192,17,23, + 69,19,0,0,255,31,128,60,15,0,28,6,0,30,6,0, + 14,4,0,15,12,0,7,8,0,7,24,0,3,144,0,3, + 176,0,1,224,0,0,224,0,7,252,0,7,252,0,0,224, + 0,0,224,0,7,252,0,7,252,0,0,224,0,0,224,0, + 0,224,0,7,248,0,7,248,0,2,25,25,20,9,0,192, + 192,192,192,192,192,192,192,192,192,0,0,0,0,0,192,192, + 192,192,192,192,192,192,192,192,12,30,60,17,2,251,15,0, + 57,192,48,192,113,192,113,192,112,128,56,0,60,0,30,0, + 15,0,63,128,99,192,193,224,192,240,192,112,224,48,240,48, + 120,48,60,96,31,192,15,0,7,128,3,192,1,192,16,224, + 56,224,56,224,48,192,57,192,15,0,9,3,6,11,1,19, + 99,0,247,128,99,0,24,25,75,25,0,0,0,126,0,3, + 255,128,7,129,224,14,0,112,24,0,56,48,0,28,48,127, + 12,96,227,134,97,129,134,67,128,134,195,0,131,199,0,3, + 199,0,3,199,0,3,199,0,3,195,0,3,67,128,6,97, + 193,134,97,227,140,48,126,12,24,0,24,28,0,112,7,1, + 224,3,255,128,0,126,0,11,14,28,11,0,11,63,0,99, + 128,97,128,99,128,15,128,121,128,225,128,193,128,227,128,125, + 224,0,0,0,0,0,0,255,192,11,11,22,14,1,2,4, + 32,12,96,24,192,49,128,115,128,231,0,115,128,49,128,24, + 192,12,96,4,32,16,9,18,20,1,3,255,255,255,255,0, + 3,0,3,0,3,0,3,0,3,0,3,0,3,8,3,3, + 11,1,7,255,255,255,24,24,72,25,0,0,0,126,0,3, + 255,192,15,1,240,28,0,56,56,0,24,51,252,12,96,199, + 14,96,195,6,64,195,6,192,195,3,192,198,3,192,252,3, + 192,204,3,192,206,3,192,198,3,96,199,6,96,195,6,96, + 195,142,51,227,204,24,0,24,28,0,112,7,0,224,3,255, + 192,0,126,0,10,2,4,11,0,19,255,192,255,192,9,9, + 18,13,2,14,62,0,119,0,193,128,193,128,128,128,193,128, + 193,128,119,0,62,0,16,16,32,20,2,0,1,128,1,128, + 1,128,1,128,255,255,255,255,1,128,1,128,1,128,1,128, + 1,128,0,0,0,0,0,0,255,255,255,255,10,14,28,11, + 0,9,63,0,115,128,97,128,113,128,113,128,1,128,3,0, + 7,0,14,0,28,0,56,64,112,64,255,192,255,192,9,14, + 28,11,1,9,62,0,99,0,113,128,97,128,1,128,7,0, + 62,0,7,0,3,0,97,128,225,128,195,128,231,0,126,0, + 7,6,6,11,2,19,6,14,28,56,96,192,17,23,69,20, + 1,249,56,14,0,248,62,0,56,14,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,30,0,56,30,0,60,126,0,63,238,0,47, + 143,128,32,0,0,32,0,0,112,0,0,112,0,0,112,0, + 0,112,0,0,32,0,0,17,30,90,20,2,251,15,255,128, + 63,255,128,120,198,0,240,198,0,240,198,0,240,198,0,240, + 198,0,240,198,0,240,198,0,240,198,0,120,198,0,124,198, + 0,63,198,0,15,198,0,0,198,0,0,198,0,0,198,0, + 0,198,0,0,198,0,0,198,0,0,198,0,0,198,0,0, + 198,0,0,198,0,0,198,0,0,198,0,0,198,0,0,198, + 0,3,255,128,3,255,128,4,4,4,9,2,6,96,240,240, + 96,6,7,7,11,1,249,16,32,120,12,12,140,120,8,14, + 14,11,1,9,56,248,24,24,24,24,24,24,24,24,24,24, + 24,255,11,14,28,10,255,11,14,0,59,128,96,192,224,224, + 192,96,192,96,224,224,96,192,59,128,14,0,0,0,0,0, + 0,0,127,192,11,11,22,14,1,2,132,0,198,0,99,0, + 49,128,57,192,28,224,57,192,49,128,99,0,198,0,132,0, + 25,23,92,28,1,0,56,0,24,0,248,0,48,0,24,0, + 48,0,24,0,96,0,24,0,192,0,24,0,128,0,24,1, + 128,0,24,3,0,0,24,6,0,0,24,6,4,0,24,12, + 12,0,24,24,28,0,24,24,60,0,255,48,108,0,0,96, + 76,0,0,192,204,0,0,193,140,0,1,131,12,0,3,3, + 255,128,3,0,12,0,6,0,12,0,12,0,12,0,8,0, + 63,0,25,23,92,28,1,0,56,0,24,0,248,0,48,0, + 24,0,32,0,24,0,96,0,24,0,192,0,24,1,128,0, + 24,1,128,0,24,3,0,0,24,6,0,0,24,6,62,0, + 24,12,99,0,24,24,193,128,24,48,193,128,255,48,225,128, + 0,96,195,0,0,192,7,0,0,192,14,0,1,128,28,0, + 3,0,56,0,3,0,112,128,6,0,224,128,12,1,255,128, + 8,1,255,128,25,23,92,28,1,0,62,0,8,0,99,0, + 24,0,113,128,48,0,97,128,48,0,1,128,96,0,7,0, + 192,0,30,1,128,0,7,1,128,0,3,131,0,0,97,134, + 4,0,225,134,12,0,195,140,28,0,231,24,60,0,126,48, + 108,0,0,48,204,0,0,96,204,0,0,193,140,0,0,195, + 12,0,1,131,255,128,3,0,12,0,6,0,12,0,6,0, + 12,0,12,0,63,0,12,25,50,14,1,249,3,0,7,128, + 7,128,3,0,0,0,0,0,0,0,3,0,3,0,2,0, + 2,0,6,0,12,0,28,0,56,0,120,0,112,0,240,0, + 224,112,224,112,224,112,240,48,112,48,60,224,31,192,23,32, + 96,23,0,0,6,0,0,7,0,0,3,128,0,1,192,0, + 0,96,0,0,48,0,0,0,0,0,16,0,0,56,0,0, + 56,0,0,120,0,0,124,0,0,124,0,0,220,0,0,222, + 0,1,158,0,1,142,0,1,143,0,3,7,0,3,7,128, + 3,7,128,6,3,128,7,255,192,7,255,192,12,1,192,12, + 1,224,12,1,224,24,0,240,24,0,240,56,0,248,124,1, + 252,254,3,254,23,32,96,23,0,0,0,1,128,0,3,128, + 0,7,0,0,14,0,0,24,0,0,48,0,0,0,0,0, + 16,0,0,56,0,0,56,0,0,120,0,0,124,0,0,124, + 0,0,220,0,0,222,0,1,158,0,1,142,0,1,143,0, + 3,7,0,3,7,128,3,7,128,6,3,128,7,255,192,7, + 255,192,12,1,192,12,1,224,12,1,224,24,0,240,24,0, + 240,56,0,248,124,1,252,254,3,254,23,31,93,23,0,0, + 0,24,0,0,60,0,0,126,0,0,195,0,1,129,128,0, + 0,0,0,16,0,0,56,0,0,56,0,0,120,0,0,124, + 0,0,124,0,0,220,0,0,222,0,1,158,0,1,142,0, + 1,143,0,3,7,0,3,7,128,3,7,128,6,3,128,7, + 255,192,7,255,192,12,1,192,12,1,224,12,1,224,24,0, + 240,24,0,240,56,0,248,124,1,252,254,3,254,23,30,90, + 23,0,0,0,241,128,1,255,0,3,30,0,0,0,0,0, + 0,0,0,16,0,0,56,0,0,56,0,0,120,0,0,124, + 0,0,124,0,0,220,0,0,222,0,1,158,0,1,142,0, + 1,143,0,3,7,0,3,7,128,3,7,128,6,3,128,7, + 255,192,7,255,192,12,1,192,12,1,224,12,1,224,24,0, + 240,24,0,240,56,0,248,124,1,252,254,3,254,23,30,90, + 23,0,0,1,134,0,3,207,0,1,134,0,0,0,0,0, + 0,0,0,16,0,0,56,0,0,56,0,0,120,0,0,124, + 0,0,124,0,0,220,0,0,222,0,1,158,0,1,142,0, + 1,143,0,3,7,0,3,7,128,3,7,128,6,3,128,7, + 255,192,7,255,192,12,1,192,12,1,224,12,1,224,24,0, + 240,24,0,240,56,0,248,124,1,252,254,3,254,23,32,96, + 23,0,0,0,120,0,0,204,0,0,132,0,0,132,0,0, + 204,0,0,120,0,0,0,0,0,16,0,0,56,0,0,56, + 0,0,120,0,0,124,0,0,124,0,0,220,0,0,222,0, + 1,158,0,1,142,0,1,143,0,3,7,0,3,7,128,3, + 7,128,6,3,128,7,255,192,7,255,192,12,1,192,12,1, + 224,12,1,224,24,0,240,24,0,240,56,0,248,124,1,252, + 254,3,254,30,25,100,32,0,0,1,255,255,252,0,127,255, + 252,0,29,192,124,0,25,192,28,0,25,192,28,0,49,192, + 12,0,49,192,140,0,97,192,132,0,97,193,132,0,193,193, + 128,0,193,195,128,1,129,255,128,1,129,255,128,3,1,195, + 128,3,255,193,128,7,255,193,128,6,1,192,132,12,1,192, + 132,12,1,192,4,24,1,192,12,24,1,192,12,48,1,192, + 28,48,1,192,124,120,7,255,252,254,31,255,252,20,32,96, + 22,1,249,0,248,96,3,255,96,15,7,224,28,1,224,60, + 0,224,56,0,224,120,0,96,120,0,96,240,0,96,240,0, + 32,240,0,0,240,0,0,240,0,0,240,0,0,240,0,0, + 240,0,0,240,0,48,120,0,48,120,0,32,120,0,96,60, + 0,96,28,0,192,14,1,128,7,207,0,1,254,0,0,32, + 0,0,64,0,0,240,0,0,24,0,0,24,0,1,24,0, + 0,240,0,20,32,96,24,1,0,3,0,0,3,128,0,1, + 192,0,0,224,0,0,48,0,0,24,0,0,0,0,255,255, + 240,63,255,240,14,1,240,14,0,112,14,0,112,14,0,48, + 14,4,48,14,4,16,14,4,16,14,12,0,14,60,0,15, + 252,0,15,252,0,14,60,0,14,12,0,14,12,0,14,4, + 16,14,4,16,14,0,16,14,0,48,14,0,48,14,0,112, + 14,1,240,63,255,240,255,255,240,20,32,96,24,1,0,0, + 1,128,0,3,128,0,7,0,0,14,0,0,24,0,0,48, + 0,0,0,0,255,255,240,63,255,240,14,1,240,14,0,112, + 14,0,112,14,0,48,14,4,48,14,4,16,14,4,16,14, + 12,0,14,60,0,15,252,0,15,252,0,14,60,0,14,12, + 0,14,12,0,14,4,16,14,4,16,14,0,16,14,0,48, + 14,0,48,14,0,112,14,1,240,63,255,240,255,255,240,20, + 32,96,24,1,0,0,48,0,0,120,0,0,252,0,1,134, + 0,3,3,0,0,0,0,0,0,0,255,255,240,63,255,240, + 14,1,240,14,0,112,14,0,112,14,0,48,14,4,48,14, + 4,16,14,4,16,14,12,0,14,60,0,15,252,0,15,252, + 0,14,60,0,14,12,0,14,12,0,14,4,16,14,4,16, + 14,0,16,14,0,48,14,0,48,14,0,112,14,1,240,63, + 255,240,255,255,240,20,30,90,24,1,0,0,198,0,1,239, + 0,0,198,0,0,0,0,0,0,0,255,255,240,63,255,240, + 14,1,240,14,0,112,14,0,112,14,0,48,14,4,48,14, + 4,16,14,4,16,14,12,0,14,60,0,15,252,0,15,252, + 0,14,60,0,14,12,0,14,12,0,14,4,16,14,4,16, + 14,0,16,14,0,48,14,0,48,14,0,112,14,1,240,63, + 255,240,255,255,240,11,32,64,13,1,0,96,0,112,0,56, + 0,28,0,6,0,3,0,0,0,255,224,63,128,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,63,128,255,224,11,32,64,13,1, + 0,0,192,1,192,3,128,7,0,12,0,24,0,0,0,255, + 224,63,128,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,63,128,255, + 224,11,31,62,13,1,0,6,0,15,0,31,128,48,192,96, + 96,0,0,255,224,63,128,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,63,128,255,224,11,30,60,13,1,0,49,128,123,192,49, + 128,0,0,0,0,255,224,63,128,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,63,128,255,224,22,25,75,24,1,0,255,252,0, + 255,255,128,30,7,192,14,1,224,14,0,240,14,0,112,14, + 0,120,14,0,120,14,0,56,14,0,60,14,0,60,14,0, + 60,127,224,60,127,224,60,14,0,60,14,0,60,14,0,60, + 14,0,56,14,0,120,14,0,120,14,0,112,14,0,224,14, + 1,192,255,255,128,255,254,0,26,30,120,28,1,0,0,30, + 48,0,0,63,224,0,0,99,192,0,0,0,0,0,0,0, + 0,0,255,0,255,192,31,0,63,0,15,128,12,0,15,192, + 12,0,15,192,12,0,13,224,12,0,13,240,12,0,12,248, + 12,0,12,120,12,0,12,124,12,0,12,62,12,0,12,30, + 12,0,12,31,12,0,12,15,140,0,12,7,140,0,12,7, + 204,0,12,3,204,0,12,1,236,0,12,0,236,0,12,0, + 252,0,12,0,124,0,12,0,60,0,12,0,60,0,63,0, + 28,0,255,192,12,0,22,32,96,24,1,0,6,0,0,7, + 0,0,3,128,0,1,192,0,0,96,0,0,48,0,0,0, + 0,1,254,0,7,255,128,15,3,192,28,0,224,60,0,240, + 56,0,112,120,0,120,120,0,120,240,0,60,240,0,60,240, + 0,60,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,56,120,0,120,120,0,120,56,0,112,60,0,240, + 28,0,224,15,3,192,7,255,128,1,254,0,22,32,96,24, + 1,0,0,3,0,0,7,0,0,14,0,0,28,0,0,48, + 0,0,96,0,0,0,0,1,254,0,7,255,128,15,3,192, + 28,0,224,60,0,240,56,0,112,120,0,120,120,0,120,240, + 0,60,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,240,0,56,120,0,120,120,0,120, + 56,0,112,60,0,240,28,0,224,15,3,192,7,255,128,1, + 254,0,22,31,93,24,1,0,0,48,0,0,120,0,0,252, + 0,1,134,0,3,3,0,0,0,0,1,254,0,7,255,128, + 15,3,192,28,0,224,60,0,240,56,0,112,120,0,120,120, + 0,120,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,240,0,60,240,0,56,120,0,120, + 120,0,120,56,0,112,60,0,240,28,0,224,15,3,192,7, + 255,128,1,254,0,22,30,90,24,1,0,0,241,128,1,255, + 0,3,30,0,0,0,0,0,0,0,1,254,0,7,255,128, + 15,3,192,28,0,224,60,0,240,56,0,112,120,0,120,120, + 0,120,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,240,0,60,240,0,56,120,0,120, + 120,0,120,56,0,112,60,0,240,28,0,224,15,3,192,7, + 255,128,1,254,0,22,30,90,24,1,0,0,198,0,1,239, + 0,0,198,0,0,0,0,0,0,0,1,254,0,7,255,128, + 15,3,192,28,0,224,60,0,240,56,0,112,120,0,120,120, + 0,120,240,0,60,240,0,60,240,0,60,240,0,60,240,0, + 60,240,0,60,240,0,60,240,0,60,240,0,56,120,0,120, + 120,0,120,56,0,112,60,0,240,28,0,224,15,3,192,7, + 255,128,1,254,0,17,15,45,20,2,1,224,3,128,112,7, + 0,56,14,0,28,28,0,14,56,0,7,112,0,3,224,0, + 1,192,0,3,224,0,7,112,0,14,56,0,28,28,0,56, + 14,0,112,7,0,224,3,128,22,28,84,24,1,254,0,0, + 24,1,254,48,7,255,176,14,3,224,28,0,224,60,1,240, + 56,1,240,120,3,120,120,6,120,240,6,60,240,12,60,240, + 24,60,240,56,60,240,48,60,240,96,60,240,224,60,240,192, + 60,113,128,56,123,0,120,123,0,120,62,0,112,60,0,240, + 30,1,224,31,3,192,55,255,128,113,254,0,96,0,0,192, + 0,0,26,32,128,26,0,0,0,48,0,0,0,56,0,0, + 0,28,0,0,0,14,0,0,0,3,0,0,0,1,128,0, + 0,0,0,0,255,224,255,192,63,128,63,0,14,0,12,0, + 14,0,12,0,14,0,12,0,14,0,12,0,14,0,12,0, + 14,0,12,0,14,0,12,0,14,0,12,0,14,0,12,0, + 14,0,12,0,14,0,12,0,14,0,12,0,14,0,12,0, + 14,0,12,0,14,0,12,0,14,0,12,0,14,0,12,0, + 15,0,24,0,7,0,24,0,7,128,48,0,3,224,240,0, + 1,255,192,0,0,127,0,0,26,32,128,26,0,0,0,0, + 48,0,0,0,112,0,0,0,224,0,0,1,192,0,0,3, + 0,0,0,6,0,0,0,0,0,0,255,224,255,192,63,128, + 63,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,15,0,24,0,7,0,24,0,7,128, + 48,0,3,224,240,0,1,255,192,0,0,127,0,0,26,31, + 124,26,0,0,0,6,0,0,0,15,0,0,0,31,128,0, + 0,48,192,0,0,96,96,0,0,0,0,0,255,224,255,192, + 63,128,63,0,14,0,12,0,14,0,12,0,14,0,12,0, + 14,0,12,0,14,0,12,0,14,0,12,0,14,0,12,0, + 14,0,12,0,14,0,12,0,14,0,12,0,14,0,12,0, + 14,0,12,0,14,0,12,0,14,0,12,0,14,0,12,0, + 14,0,12,0,14,0,12,0,15,0,24,0,7,0,24,0, + 7,128,48,0,3,224,240,0,1,255,192,0,0,127,0,0, + 26,30,120,26,0,0,0,48,192,0,0,121,224,0,0,48, + 192,0,0,0,0,0,0,0,0,0,255,224,255,192,63,128, + 63,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,15,0,24,0,7,0,24,0,7,128, + 48,0,3,224,240,0,1,255,192,0,0,127,0,0,23,32, + 96,23,0,0,0,1,128,0,3,128,0,7,0,0,14,0, + 0,24,0,0,48,0,0,0,0,255,131,254,126,0,248,62, + 0,112,30,0,96,15,0,224,15,0,192,7,129,128,7,193, + 128,3,195,0,3,227,0,1,230,0,0,246,0,0,252,0, + 0,124,0,0,120,0,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,254, + 0,3,255,128,20,25,75,22,1,0,255,224,0,31,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,15,254,0,15, + 255,128,14,3,192,14,1,224,14,0,240,14,0,240,14,0, + 240,14,0,240,14,0,240,14,1,224,14,3,224,15,255,192, + 15,255,0,14,0,0,14,0,0,14,0,0,14,0,0,31, + 0,0,255,224,0,17,26,78,19,0,255,3,248,0,7,156, + 0,14,14,0,14,15,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,14,0,28,14,0,28,248,0,28,248,0,28, + 14,0,28,7,0,28,7,0,28,7,128,28,3,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,231,128,28,231,0, + 60,231,0,252,254,0,0,56,0,16,23,46,17,1,0,12, + 0,14,0,7,0,3,128,0,192,0,96,0,0,7,192,31, + 240,120,120,112,56,112,56,112,56,1,248,15,248,60,56,112, + 56,224,56,224,56,224,120,240,253,127,159,63,14,16,23,46, + 17,1,0,0,48,0,112,0,224,1,192,3,0,6,0,0, + 0,7,192,31,240,120,120,112,56,112,56,112,56,1,248,15, + 248,60,56,112,56,224,56,224,56,224,120,240,253,127,159,63, + 14,16,22,44,17,1,0,3,0,7,128,15,192,24,96,48, + 48,0,0,7,192,31,240,120,120,112,56,112,56,112,56,1, + 248,15,248,60,56,112,56,224,56,224,56,224,120,240,253,127, + 159,62,14,16,21,42,17,1,0,15,24,31,240,49,224,0, + 0,0,0,7,192,31,240,120,120,112,56,112,56,112,56,1, + 248,15,248,60,56,112,56,224,56,224,56,224,120,240,253,127, + 159,62,14,16,21,42,17,1,0,12,96,30,240,12,96,0, + 0,0,0,7,192,31,240,120,120,112,56,112,56,112,56,1, + 248,15,248,60,56,112,56,224,56,224,56,224,120,240,253,127, + 159,62,14,16,23,46,17,1,0,7,128,12,192,8,64,8, + 64,12,192,7,128,0,0,7,192,31,240,120,120,112,56,112, + 56,112,56,1,248,15,248,60,56,112,56,224,56,224,56,224, + 120,240,253,127,159,62,14,23,16,48,25,1,0,15,195,224, + 63,231,248,112,124,28,112,60,12,112,56,14,112,56,14,1, + 248,14,15,255,254,60,56,0,112,56,0,240,56,0,224,60, + 2,224,124,6,240,254,28,127,207,248,63,3,240,12,23,46, + 14,1,249,7,128,31,224,56,112,112,240,112,240,224,96,224, + 0,224,0,224,0,224,0,240,0,240,16,120,48,124,96,63, + 192,15,0,2,0,4,0,15,0,1,128,1,128,17,128,15, + 0,14,23,46,16,1,0,24,0,28,0,14,0,7,0,1, + 128,0,192,0,0,7,192,31,240,56,56,112,24,112,28,240, + 28,240,28,255,252,224,0,224,0,240,0,240,4,120,12,60, + 56,31,240,7,192,14,23,46,16,1,0,0,24,0,56,0, + 112,0,224,1,128,3,0,0,0,7,192,31,240,56,120,112, + 56,96,28,224,28,224,28,255,252,224,0,224,0,240,0,240, + 4,120,12,60,56,31,240,7,192,14,22,44,16,1,0,3, + 0,7,128,15,192,24,96,48,48,0,0,7,192,31,240,56, + 56,112,24,112,28,240,28,240,28,255,252,224,0,224,0,240, + 0,240,4,120,12,60,56,31,240,7,192,14,21,42,16,1, + 0,12,96,30,240,12,96,0,0,0,0,7,192,31,240,56, + 56,112,24,112,28,240,28,240,28,255,252,224,0,224,0,240, + 0,240,4,120,12,60,24,31,240,7,192,9,23,46,11,1, + 0,192,0,224,0,112,0,56,0,12,0,6,0,0,0,252, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,255,128,9, + 23,46,11,1,0,1,128,3,128,7,0,14,0,24,0,48, + 0,0,0,252,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,255,128,10,22,44,11,0,0,12,0,30,0,63,0,97, + 128,192,192,0,0,126,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,127,192,9,21,42,11,1,0,99,0,247,128,99, + 0,0,0,0,0,252,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,255,128,14,25,50,17,1,0,48,0,60,0,14, + 224,7,192,15,128,13,192,0,224,0,240,0,112,7,248,31, + 248,56,120,112,60,112,60,224,28,224,28,224,28,224,28,224, + 28,224,28,240,60,112,56,120,120,63,240,15,192,19,21,63, + 19,0,0,3,198,0,7,252,0,12,120,0,0,0,0,0, + 0,0,28,120,0,253,254,0,31,158,0,30,15,0,30,7, + 0,28,7,0,28,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,255, + 31,224,14,23,46,16,1,0,48,0,56,0,28,0,14,0, + 3,0,1,128,0,0,7,128,31,224,56,112,112,56,112,56, + 224,28,224,28,224,28,224,28,224,28,224,28,240,60,112,56, + 120,120,31,224,7,128,14,23,46,16,1,0,0,24,0,56, + 0,112,0,224,1,128,3,0,0,0,7,128,31,224,56,112, + 112,56,112,56,224,28,224,28,224,28,224,28,224,28,224,28, + 240,60,112,56,120,120,31,224,7,128,14,22,44,16,1,0, + 3,0,7,128,15,192,24,96,48,48,0,0,7,128,31,224, + 56,112,112,56,112,56,224,28,224,28,224,28,224,28,224,28, + 224,28,112,56,112,56,56,112,31,224,7,128,14,21,42,16, + 1,0,15,24,31,240,49,224,0,0,0,0,7,128,31,224, + 56,112,112,56,112,56,224,28,224,28,224,28,224,28,224,28, + 224,28,112,56,112,56,56,112,31,224,7,128,14,21,42,16, + 1,0,24,192,61,224,24,192,0,0,0,0,7,128,31,224, + 56,112,112,56,112,56,224,28,224,28,224,28,224,28,224,28, + 224,28,112,56,112,56,56,112,31,224,7,128,16,16,32,20, + 2,0,1,128,3,192,3,192,1,128,0,0,0,0,0,0, + 255,255,255,255,0,0,0,0,0,0,1,128,3,192,3,192, + 1,128,14,22,44,16,1,253,0,24,0,24,0,48,7,240, + 31,240,56,112,112,248,112,216,225,156,225,156,227,28,227,28, + 230,28,230,28,236,56,124,56,120,112,63,224,63,128,48,0, + 96,0,96,0,18,23,69,20,0,0,6,0,0,7,0,0, + 3,128,0,1,192,0,0,96,0,0,48,0,0,0,0,28, + 7,0,252,63,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,28,7,0,28,7,0,28,7,0, + 28,15,0,28,15,0,14,63,0,15,247,192,7,199,0,18, + 23,69,20,0,0,0,12,0,0,28,0,0,56,0,0,112, + 0,0,192,0,1,128,0,0,0,0,28,7,0,252,63,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,7,0,28,15,0,28,15, + 0,14,63,0,15,247,192,7,199,0,18,22,66,20,0,0, + 0,192,0,1,224,0,3,240,0,6,24,0,12,12,0,0, + 0,0,28,7,0,252,63,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,15,0,28,15,0,14,63,0,15,247,192,7, + 199,0,18,21,63,20,0,0,3,24,0,7,188,0,3,24, + 0,0,0,0,0,0,0,28,7,0,252,63,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,15,0,28,15,0,14,63, + 0,15,247,192,7,199,0,17,30,90,19,1,249,0,12,0, + 0,28,0,0,56,0,0,112,0,0,192,0,1,128,0,0, + 0,0,255,31,128,124,7,0,60,6,0,28,6,0,30,12, + 0,14,12,0,15,8,0,7,24,0,7,24,0,7,176,0, + 3,176,0,3,224,0,1,224,0,1,224,0,0,192,0,0, + 192,0,1,128,0,1,128,0,99,0,0,227,0,0,230,0, + 0,252,0,0,112,0,0,16,29,58,19,1,249,56,0,248, + 0,56,0,56,0,56,0,56,0,56,240,59,252,63,30,60, + 14,60,15,56,7,56,7,56,7,56,7,56,7,56,7,60, + 15,60,14,62,30,59,252,57,240,56,0,56,0,56,0,56, + 0,56,0,56,0,255,0,18,28,84,20,1,249,3,24,0, + 7,188,0,3,24,0,0,0,0,0,0,0,255,31,192,124, + 7,0,60,6,0,28,6,0,30,12,0,14,12,0,15,8, + 0,7,24,0,7,24,0,7,176,0,3,176,0,3,224,0, + 1,224,0,1,224,0,0,192,0,0,192,0,1,128,0,1, + 128,0,99,0,0,227,0,0,230,0,0,252,0,0,112,0, + 0}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--34-240-100-100-P-181-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 24 + Calculated Max Values w=16 h=25 x= 3 y=11 dx=20 dy= 0 ascent=25 len=50 + Font Bounding box w=39 h=50 x=-6 y=-11 + Calculated Min Values x=-1 y=-6 dx= 0 dy= 0 + Pure Font ascent =24 descent= 0 + X Font ascent =24 descent= 0 + Max Font ascent =25 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR24n[722] U8G_SECTION(".progmem.u8g_font_ncenR24n") = { + 0,39,50,250,245,24,0,0,0,0,42,57,0,25,250,24, + 0,12,14,28,17,2,11,6,0,6,0,6,0,198,112,230, + 112,127,224,31,128,31,0,127,192,230,112,198,112,6,0,6, + 0,6,0,16,17,34,20,2,255,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,255,255,255,255,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,5,10,10,9,2, + 250,112,248,248,120,24,24,48,96,224,128,8,3,3,11,1, + 7,255,255,255,4,4,4,9,2,0,96,240,240,96,10,25, + 50,9,255,0,0,192,0,192,0,192,1,128,1,128,1,128, + 3,0,3,0,3,0,6,0,6,0,6,0,12,0,12,0, + 12,0,24,0,24,0,24,0,48,0,48,0,48,0,96,0, + 96,0,96,0,192,0,16,24,48,18,2,0,3,192,15,240, + 28,56,24,24,56,28,120,30,112,14,240,15,240,15,240,15, + 240,15,240,15,240,15,240,15,240,15,240,15,240,15,112,14, + 120,30,56,28,24,24,28,56,15,240,3,192,13,24,48,18, + 3,0,3,0,7,0,255,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,15,128, + 255,248,15,24,48,18,1,0,7,224,31,248,56,28,96,30, + 112,14,120,14,120,14,120,14,48,30,0,28,0,28,0,56, + 0,120,0,112,0,224,1,192,3,128,7,2,14,2,28,6, + 56,6,127,254,255,254,255,254,15,24,48,18,1,0,7,224, + 31,248,56,56,112,28,120,28,120,28,48,28,0,28,0,56, + 0,112,1,224,15,240,0,248,0,60,0,28,0,30,96,14, + 240,14,240,14,240,30,224,28,120,124,63,240,15,192,16,24, + 48,18,1,0,0,48,0,48,0,112,0,240,1,240,1,240, + 3,112,6,112,6,112,12,112,24,112,24,112,48,112,96,112, + 96,112,192,112,255,255,255,255,0,112,0,112,0,112,0,112, + 0,248,3,254,14,24,48,18,2,0,56,8,63,248,63,240, + 63,224,48,0,48,0,32,0,96,0,99,192,111,240,124,120, + 112,56,96,60,0,28,0,28,0,28,96,28,240,28,240,28, + 240,60,224,56,112,120,127,240,31,128,15,24,48,18,1,0, + 3,240,15,252,28,62,56,30,56,30,48,12,112,0,112,0, + 112,0,241,224,247,248,254,60,252,28,248,30,240,14,240,14, + 240,14,112,14,112,14,112,30,56,28,56,60,31,240,7,192, + 13,24,48,18,3,0,255,248,255,248,255,248,192,16,192,48, + 128,32,128,96,128,64,0,192,0,192,1,128,1,128,1,128, + 3,0,3,0,3,0,7,0,7,0,7,0,15,0,15,0, + 15,0,15,0,6,0,15,24,48,18,1,0,7,224,31,248, + 60,56,56,28,112,28,112,12,112,12,120,24,60,56,63,112, + 31,224,7,240,7,248,29,252,56,124,112,30,112,30,224,14, + 224,14,224,14,112,28,120,60,63,248,15,224,15,24,48,18, + 1,0,15,192,63,240,120,120,112,56,240,60,224,28,224,28, + 224,30,224,30,240,30,240,62,120,126,120,126,63,222,31,158, + 0,30,0,28,0,28,96,56,240,56,240,112,241,224,127,192, + 63,0}; +/* + Fontname: -Adobe-New Century Schoolbook-Medium-R-Normal--34-240-100-100-P-181-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 25, '1' Height: 24 + Calculated Max Values w=31 h=31 x= 9 y=17 dx=31 dy= 0 ascent=27 len=100 + Font Bounding box w=39 h=50 x=-6 y=-11 + Calculated Min Values x=-2 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent=-7 + X Font ascent =25 descent=-7 + Max Font ascent =27 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_ncenR24r[5367] U8G_SECTION(".progmem.u8g_font_ncenR24r") = { + 0,39,50,250,245,25,5,159,15,28,32,127,249,27,249,25, + 249,0,0,0,9,1,1,4,25,25,10,3,0,96,240,240, + 240,240,240,240,96,96,96,96,96,96,96,96,96,96,96,0, + 0,0,96,240,240,96,9,8,16,13,2,17,227,128,227,128, + 227,128,227,128,65,0,65,0,65,0,65,0,16,23,46,19, + 2,0,3,12,3,12,3,12,7,28,6,24,6,24,6,24, + 127,255,127,255,6,24,14,56,12,56,12,48,255,254,255,254, + 12,48,12,48,28,112,28,112,24,96,24,96,24,96,24,96, + 14,31,62,18,2,252,2,0,2,0,2,0,15,192,63,240, + 114,112,226,56,194,120,194,120,194,48,194,0,226,0,250,0, + 127,0,63,192,31,240,3,248,2,124,2,60,98,28,242,12, + 242,12,226,28,194,24,226,120,127,240,31,192,2,0,2,0, + 2,0,2,0,24,25,75,27,1,255,3,128,32,15,192,224, + 28,227,192,56,127,192,56,97,128,112,97,128,112,99,0,240, + 99,0,224,102,0,224,196,0,224,204,0,225,136,28,115,24, + 126,62,16,227,0,49,195,0,99,195,0,99,131,0,199,131, + 0,199,3,1,135,6,1,135,6,3,7,12,2,3,152,6, + 1,240,4,0,0,22,25,75,27,2,0,1,248,0,7,188, + 0,6,28,0,14,14,0,14,14,0,14,14,0,14,12,0, + 14,28,0,15,56,0,15,112,0,7,224,0,7,128,0,15, + 199,252,59,193,240,113,224,224,113,240,192,224,240,192,224,249, + 128,224,125,128,240,63,4,240,30,4,248,15,12,126,63,248, + 63,243,248,31,193,224,3,8,8,7,2,17,224,224,224,224, + 64,64,64,64,8,29,29,11,2,252,1,7,6,12,24,48, + 48,48,96,96,96,96,224,224,224,224,224,96,96,96,96,48, + 48,16,24,12,6,7,3,8,29,29,11,2,252,192,224,96, + 48,24,8,12,12,6,6,6,6,7,7,7,7,7,6,6, + 6,6,12,12,28,24,48,96,192,192,12,14,28,17,2,11, + 6,0,6,0,6,0,198,112,230,112,127,224,31,128,31,0, + 127,192,230,112,198,112,6,0,6,0,6,0,16,17,34,20, + 2,255,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 255,255,255,255,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,5,10,10,9,2,250,112,248,248,120,24,24, + 48,96,224,128,8,3,3,11,1,7,255,255,255,4,4,4, + 9,2,0,96,240,240,96,10,25,50,9,255,0,0,192,0, + 192,0,192,1,128,1,128,1,128,3,0,3,0,3,0,6, + 0,6,0,6,0,12,0,12,0,12,0,24,0,24,0,24, + 0,48,0,48,0,48,0,96,0,96,0,96,0,192,0,16, + 24,48,18,2,0,3,192,15,240,28,56,24,24,56,28,120, + 30,112,14,240,15,240,15,240,15,240,15,240,15,240,15,240, + 15,240,15,240,15,240,15,112,14,120,30,56,28,24,24,28, + 56,15,240,3,192,13,24,48,18,3,0,3,0,7,0,255, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,7,0,7,0,7,0,7,0,7, + 0,7,0,7,0,7,0,15,128,255,248,15,24,48,18,1, + 0,7,224,31,248,56,28,96,30,112,14,120,14,120,14,120, + 14,48,30,0,28,0,28,0,56,0,120,0,112,0,224,1, + 192,3,128,7,2,14,2,28,6,56,6,127,254,255,254,255, + 254,15,24,48,18,1,0,7,224,31,248,56,56,112,28,120, + 28,120,28,48,28,0,28,0,56,0,112,1,224,15,240,0, + 248,0,60,0,28,0,30,96,14,240,14,240,14,240,30,224, + 28,120,124,63,240,15,192,16,24,48,18,1,0,0,48,0, + 48,0,112,0,240,1,240,1,240,3,112,6,112,6,112,12, + 112,24,112,24,112,48,112,96,112,96,112,192,112,255,255,255, + 255,0,112,0,112,0,112,0,112,0,248,3,254,14,24,48, + 18,2,0,56,8,63,248,63,240,63,224,48,0,48,0,32, + 0,96,0,99,192,111,240,124,120,112,56,96,60,0,28,0, + 28,0,28,96,28,240,28,240,28,240,60,224,56,112,120,127, + 240,31,128,15,24,48,18,1,0,3,240,15,252,28,62,56, + 30,56,30,48,12,112,0,112,0,112,0,241,224,247,248,254, + 60,252,28,248,30,240,14,240,14,240,14,112,14,112,14,112, + 30,56,28,56,60,31,240,7,192,13,24,48,18,3,0,255, + 248,255,248,255,248,192,16,192,48,128,32,128,96,128,64,0, + 192,0,192,1,128,1,128,1,128,3,0,3,0,3,0,7, + 0,7,0,7,0,15,0,15,0,15,0,15,0,6,0,15, + 24,48,18,1,0,7,224,31,248,60,56,56,28,112,28,112, + 12,112,12,120,24,60,56,63,112,31,224,7,240,7,248,29, + 252,56,124,112,30,112,30,224,14,224,14,224,14,112,28,120, + 60,63,248,15,224,15,24,48,18,1,0,15,192,63,240,120, + 120,112,56,240,60,224,28,224,28,224,30,224,30,240,30,240, + 62,120,126,120,126,63,222,31,158,0,30,0,28,0,28,96, + 56,240,56,240,112,241,224,127,192,63,0,4,16,16,9,3, + 0,96,240,240,96,0,0,0,0,0,0,0,0,96,240,240, + 96,5,21,21,9,1,251,48,120,120,48,0,0,0,0,0, + 0,0,0,48,120,120,56,24,16,48,96,192,16,18,36,20, + 2,255,0,1,0,7,0,31,0,124,1,240,7,192,31,0, + 124,0,240,0,240,0,124,0,31,0,7,192,1,240,0,124, + 0,31,0,7,0,1,16,8,16,20,2,4,255,255,255,255, + 0,0,0,0,0,0,0,0,255,255,255,255,16,18,36,20, + 2,255,128,0,224,0,248,0,62,0,15,128,3,224,0,248, + 0,62,0,15,0,15,0,62,0,248,3,224,15,128,62,0, + 248,0,224,0,128,0,12,25,50,14,1,0,63,128,115,224, + 192,224,192,240,224,112,224,112,224,112,0,240,0,240,1,224, + 1,192,3,128,3,0,6,0,4,0,4,0,12,0,12,0, + 0,0,0,0,0,0,12,0,30,0,30,0,12,0,22,25, + 75,25,1,0,0,254,0,3,255,128,15,135,192,30,0,224, + 28,0,112,48,0,56,48,0,24,96,251,152,97,207,140,227, + 143,140,199,135,140,199,7,12,207,7,12,207,15,8,206,15, + 24,206,14,24,206,30,48,102,62,96,103,126,192,51,231,152, + 56,0,56,28,0,112,15,129,224,7,255,128,0,254,0,23, + 25,75,23,0,0,0,16,0,0,56,0,0,56,0,0,120, + 0,0,124,0,0,124,0,0,220,0,0,222,0,1,158,0, + 1,142,0,1,143,0,3,7,0,3,7,128,3,7,128,6, + 3,128,7,255,192,7,255,192,12,1,192,12,1,224,12,1, + 224,24,0,240,24,0,240,56,0,248,124,1,252,254,3,254, + 20,25,75,23,1,0,255,254,0,63,255,128,14,7,192,14, + 1,192,14,1,224,14,1,224,14,1,224,14,1,224,14,1, + 192,14,1,192,14,3,128,15,255,0,15,252,0,14,15,128, + 14,3,192,14,1,224,14,0,240,14,0,240,14,0,240,14, + 0,240,14,0,240,14,1,224,14,3,224,63,255,192,255,255, + 0,20,25,75,22,1,0,1,252,96,7,255,96,14,3,224, + 28,1,224,60,0,224,56,0,224,120,0,96,120,0,96,240, + 0,32,240,0,32,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,48,120,0,48,120,0,48, + 120,0,96,60,0,96,28,0,192,15,3,128,7,255,0,1, + 252,0,22,25,75,25,1,0,255,254,0,63,255,192,14,3, + 224,14,0,240,14,0,112,14,0,120,14,0,120,14,0,60, + 14,0,60,14,0,60,14,0,60,14,0,60,14,0,60,14, + 0,60,14,0,60,14,0,60,14,0,60,14,0,60,14,0, + 56,14,0,120,14,0,112,14,0,224,14,3,224,63,255,192, + 255,254,0,20,25,75,24,1,0,255,255,240,63,255,240,14, + 1,240,14,0,112,14,0,112,14,0,48,14,4,48,14,4, + 16,14,4,16,14,12,0,14,60,0,15,252,0,15,252,0, + 14,60,0,14,12,0,14,12,0,14,4,16,14,4,16,14, + 0,16,14,0,48,14,0,48,14,0,112,14,1,240,63,255, + 240,255,255,240,20,25,75,22,1,0,255,255,240,63,255,240, + 14,1,240,14,0,112,14,0,48,14,0,48,14,0,16,14, + 4,16,14,4,16,14,12,0,14,12,0,14,60,0,15,252, + 0,15,252,0,14,28,0,14,12,0,14,4,0,14,4,0, + 14,4,0,14,0,0,14,0,0,14,0,0,14,0,0,63, + 128,0,255,224,0,24,25,75,24,1,0,1,254,48,7,255, + 176,15,3,240,30,0,240,60,0,112,56,0,112,120,0,48, + 112,0,48,112,0,16,240,0,16,240,0,0,240,0,0,240, + 0,0,240,0,0,240,7,255,240,0,248,240,0,112,112,0, + 112,112,0,112,120,0,112,56,0,240,28,0,240,15,1,176, + 7,255,48,1,254,16,25,25,100,27,1,0,255,227,255,128, + 63,128,254,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,15,255,248,0,15,255,248,0, + 14,0,56,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,14,0,56,0,14,0,56,0, + 14,0,56,0,14,0,56,0,63,128,254,0,255,227,255,128, + 11,25,50,13,1,0,255,224,63,128,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,63,128,255,224,17,25,75,18,0,0,3,255, + 128,0,124,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,112,56, + 0,248,56,0,248,56,0,248,56,0,240,56,0,192,120,0, + 224,112,0,127,240,0,31,192,0,25,25,100,25,1,0,255, + 227,255,0,63,129,252,0,14,0,240,0,14,0,224,0,14, + 1,192,0,14,1,128,0,14,3,0,0,14,6,0,0,14, + 14,0,0,14,28,0,0,14,56,0,0,14,124,0,0,14, + 254,0,0,15,222,0,0,15,143,0,0,15,7,128,0,14, + 7,192,0,14,3,192,0,14,1,224,0,14,1,240,0,14, + 0,240,0,14,0,120,0,14,0,124,0,63,0,62,0,255, + 192,255,128,20,25,75,22,1,0,255,224,0,63,128,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,16,14,0,16,14, + 0,16,14,0,48,14,0,48,14,0,112,14,1,240,63,255, + 224,255,255,224,29,25,100,30,0,0,127,128,15,248,31,128, + 15,192,15,128,15,128,15,192,15,128,13,192,27,128,13,192, + 27,128,13,224,19,128,12,224,51,128,12,224,51,128,12,240, + 35,128,12,112,99,128,12,112,99,128,12,120,99,128,12,56, + 195,128,12,56,195,128,12,60,195,128,12,28,131,128,12,29, + 131,128,12,31,131,128,12,31,3,128,12,15,3,128,12,15, + 3,128,12,14,3,128,63,6,15,224,255,198,63,248,26,25, + 100,28,1,0,255,0,255,192,31,0,63,0,15,128,12,0, + 15,192,12,0,15,192,12,0,13,224,12,0,13,240,12,0, + 12,248,12,0,12,120,12,0,12,124,12,0,12,62,12,0, + 12,30,12,0,12,31,12,0,12,15,140,0,12,7,140,0, + 12,7,204,0,12,3,204,0,12,1,236,0,12,0,236,0, + 12,0,252,0,12,0,124,0,12,0,60,0,12,0,60,0, + 63,0,28,0,255,192,12,0,22,25,75,24,1,0,1,254, + 0,7,255,128,15,3,192,28,0,224,60,0,240,56,0,112, + 120,0,120,112,0,56,240,0,60,240,0,60,224,0,28,224, + 0,28,224,0,28,224,0,28,224,0,28,240,0,60,240,0, + 56,112,0,56,120,0,120,56,0,112,60,0,240,28,0,224, + 15,3,192,7,255,128,1,254,0,20,25,75,22,1,0,255, + 254,0,63,255,128,14,7,192,14,1,224,14,0,240,14,0, + 240,14,0,112,14,0,112,14,0,240,14,0,240,14,1,224, + 14,7,192,15,255,128,15,254,0,14,0,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,63,128,0,255,224,0,23,31,93,24,1,250, + 0,254,0,3,255,128,15,1,224,30,0,240,60,0,120,56, + 0,56,120,0,60,112,0,28,240,0,30,240,0,30,224,0, + 14,224,0,14,224,0,14,224,0,14,240,0,30,240,0,30, + 112,124,28,121,222,60,121,135,56,61,3,112,29,3,112,31, + 3,224,15,131,192,3,255,128,0,255,192,0,3,198,0,1, + 198,0,1,228,0,1,252,0,0,248,0,0,112,21,25,75, + 23,1,0,255,254,0,63,255,128,14,7,192,14,1,192,14, + 1,224,14,0,224,14,0,224,14,1,224,14,1,224,14,1, + 192,14,3,192,14,15,0,15,252,0,15,254,0,14,15,0, + 14,7,0,14,7,128,14,3,128,14,3,128,14,3,136,14, + 3,136,14,3,136,14,3,216,63,129,240,255,225,224,17,25, + 75,20,2,0,15,241,0,63,251,0,112,31,0,96,7,0, + 224,7,0,224,3,0,224,1,0,240,1,0,240,0,0,126, + 0,0,127,224,0,31,252,0,7,254,0,0,127,0,0,15, + 128,128,7,128,128,3,128,192,3,128,192,3,128,192,3,128, + 224,7,128,240,7,0,248,14,0,223,252,0,135,240,0,19, + 25,75,21,1,0,255,255,224,255,255,224,240,227,224,224,224, + 224,192,224,96,192,224,96,128,224,32,128,224,32,128,224,32, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,3,248,0,15,254,0, + 26,25,100,26,0,0,255,224,255,192,63,128,63,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,14,0,12,0,14,0,12,0,14,0,12,0,14,0, + 12,0,15,0,24,0,7,0,24,0,7,128,48,0,3,224, + 240,0,1,255,192,0,0,127,0,0,23,25,75,23,0,0, + 255,195,254,62,0,248,30,0,112,30,0,112,14,0,96,15, + 0,96,15,0,64,7,0,192,7,128,192,7,128,128,3,129, + 128,3,193,128,3,193,0,1,195,0,1,227,0,1,226,0, + 0,230,0,0,246,0,0,244,0,0,124,0,0,124,0,0, + 56,0,0,56,0,0,56,0,0,16,0,31,25,100,31,0, + 0,255,31,241,254,126,7,192,124,60,3,128,56,28,3,128, + 48,30,3,192,48,30,3,192,96,14,3,192,96,14,3,224, + 96,15,3,224,96,7,6,224,192,7,6,224,192,7,132,240, + 192,7,140,112,192,3,140,113,128,3,140,121,128,3,200,57, + 128,1,216,57,0,1,248,63,0,1,248,31,0,0,240,31, + 0,0,240,30,0,0,240,30,0,0,224,14,0,0,96,12, + 0,0,96,12,0,23,25,75,22,0,0,255,199,252,63,1, + 240,31,0,224,15,1,192,15,129,128,7,131,128,3,195,0, + 3,230,0,1,238,0,0,252,0,0,248,0,0,120,0,0, + 124,0,0,124,0,0,254,0,1,223,0,1,143,0,3,135, + 128,3,7,128,6,3,192,14,3,224,12,1,224,28,0,240, + 62,0,248,255,135,254,23,25,75,23,0,0,255,131,254,126, + 0,248,62,0,112,30,0,96,15,0,224,15,0,192,7,129, + 128,7,193,128,3,195,0,3,227,0,1,230,0,0,246,0, + 0,252,0,0,124,0,0,120,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,254,0,3,255,128,17,25,75,19,1,0,127,255,128, + 127,255,128,120,15,0,112,15,0,96,30,0,96,62,0,96, + 60,0,64,124,0,64,120,0,0,240,0,0,240,0,1,224, + 0,3,224,0,3,192,0,7,128,0,7,128,128,15,0,128, + 31,0,128,30,1,128,62,1,128,60,1,128,120,3,128,120, + 7,128,255,255,128,255,255,128,7,29,29,11,3,252,254,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,254,15,25,50,20,2, + 0,224,0,112,0,112,0,56,0,56,0,28,0,28,0,14, + 0,14,0,7,0,7,0,3,128,3,128,3,128,1,192,1, + 192,0,224,0,224,0,112,0,112,0,56,0,56,0,28,0, + 28,0,14,7,29,29,11,1,252,254,6,6,6,6,6,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,254,16,13,26,20,2,12,3,192,3,192, + 7,224,7,224,14,112,14,112,28,56,28,56,56,28,56,28, + 112,14,112,14,224,7,16,2,4,16,0,252,255,255,255,255, + 7,6,6,11,1,17,192,224,112,56,12,6,16,16,32,17, + 1,0,15,192,63,240,120,120,112,56,96,56,0,56,1,248, + 15,248,60,56,112,56,224,56,224,56,224,120,241,253,127,159, + 62,14,15,25,50,17,0,0,24,0,248,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,57,224,59,248,62,28, + 60,28,60,14,56,14,56,14,56,14,56,14,56,14,56,14, + 60,14,60,28,62,28,55,248,33,224,12,16,32,14,1,0, + 7,128,31,224,56,112,112,240,112,240,224,96,224,0,224,0, + 224,0,224,0,224,0,112,16,112,48,56,96,63,192,15,128, + 16,25,50,18,1,0,0,12,0,124,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,7,156,31,220,56,124,112,60, + 112,60,224,28,224,28,224,28,224,28,224,28,224,28,240,60, + 112,60,120,124,31,220,7,159,14,16,32,16,1,0,7,192, + 31,240,56,120,112,56,96,28,224,28,224,28,255,252,224,0, + 224,0,224,0,240,4,112,12,120,56,63,240,15,192,14,25, + 50,11,0,0,1,248,7,28,14,28,12,28,28,8,28,0, + 28,0,28,0,28,0,255,192,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,255,192,16,23,46,17,1,249,7,159,31,251, + 56,115,112,56,112,56,112,56,112,56,112,56,56,112,31,224, + 55,128,96,0,96,0,127,224,127,248,63,252,48,62,96,14, + 224,14,224,14,248,60,127,248,15,192,19,25,75,20,0,0, + 12,0,0,252,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,112,0,29,252, + 0,31,30,0,30,14,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,255,63,224,9,24,48,10,1, + 0,24,0,60,0,60,0,24,0,0,0,0,0,0,0,0, + 0,28,0,252,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,255, + 128,9,31,62,10,254,249,3,0,7,128,7,128,3,0,0, + 0,0,0,0,0,0,0,3,128,31,128,3,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,3,128,3,128,3, + 128,3,128,3,128,3,128,3,128,3,128,67,128,227,0,227, + 0,230,0,124,0,19,25,75,20,0,0,12,0,0,252,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,127,128,28,30,0,28,24,0,28, + 48,0,28,96,0,28,192,0,29,192,0,31,224,0,30,240, + 0,28,120,0,28,60,0,28,28,0,28,14,0,28,15,0, + 28,7,128,255,31,224,9,25,50,11,1,0,12,0,28,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,255,128,27,16, + 64,27,0,0,28,240,120,0,253,252,254,0,31,29,142,0, + 30,15,7,0,30,15,7,0,28,14,7,0,28,14,7,0, + 28,14,7,0,28,14,7,0,28,14,7,0,28,14,7,0, + 28,14,7,0,28,14,7,0,28,14,7,0,28,14,7,0, + 255,63,159,224,19,16,48,19,0,0,28,120,0,253,254,0, + 31,142,0,30,7,0,30,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,255,31,224,14,16,32,16,1,0, + 7,128,31,224,56,112,112,56,112,56,224,28,224,28,224,28, + 224,28,224,28,224,28,112,56,112,56,56,112,31,224,7,128, + 16,23,46,19,1,249,25,240,251,252,62,30,60,14,60,7, + 56,7,56,7,56,7,56,7,56,7,56,7,60,14,60,14, + 62,28,59,252,57,240,56,0,56,0,56,0,56,0,56,0, + 124,0,255,0,16,23,46,17,1,249,7,196,31,236,56,60, + 112,60,112,28,224,28,224,28,224,28,224,28,224,28,224,28, + 240,60,112,60,56,124,63,220,15,156,0,28,0,28,0,28, + 0,28,0,28,0,62,0,255,14,16,32,15,0,0,28,120, + 253,252,31,60,30,60,30,24,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,255,128,11,16, + 32,15,2,0,30,192,127,192,225,192,192,192,192,192,240,64, + 254,0,127,128,63,192,7,224,128,224,192,96,192,96,224,224, + 255,192,159,0,12,23,46,13,0,0,4,0,4,0,12,0, + 12,0,28,0,28,0,60,0,255,224,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,16,28,16,28,48, + 28,48,30,96,15,224,7,192,18,16,48,20,0,0,28,7, + 0,252,63,0,28,7,0,28,7,0,28,7,0,28,7,0, + 28,7,0,28,7,0,28,7,0,28,7,0,28,7,0,28, + 15,0,28,15,0,30,63,0,15,247,192,7,199,0,17,16, + 48,17,0,0,255,31,128,124,7,0,60,6,0,30,6,0, + 30,12,0,14,12,0,15,8,0,7,24,0,7,24,0,7, + 176,0,3,176,0,3,224,0,1,224,0,1,224,0,0,192, + 0,0,192,0,24,16,48,24,0,0,254,127,63,120,60,14, + 56,28,12,60,28,28,28,30,24,28,30,24,14,54,16,14, + 39,48,15,103,48,7,103,96,7,67,96,3,195,192,3,195, + 192,3,129,192,1,129,128,1,129,128,16,16,32,19,1,0, + 255,127,60,28,30,24,14,48,15,48,7,96,3,192,3,192, + 1,224,3,224,6,112,12,120,28,56,56,60,120,30,254,127, + 18,23,69,20,1,249,255,31,192,60,7,0,60,6,0,28, + 6,0,30,12,0,14,12,0,15,8,0,7,24,0,7,24, + 0,7,176,0,3,176,0,3,224,0,1,224,0,1,224,0, + 0,192,0,0,192,0,1,128,0,1,128,0,99,0,0,243, + 0,0,230,0,0,252,0,0,112,0,0,13,16,32,15,1, + 0,127,248,120,120,96,240,96,224,65,224,67,192,3,128,7, + 128,15,0,14,0,30,8,60,8,56,24,120,56,240,248,255, + 248,6,30,30,11,3,252,12,28,56,48,48,48,48,48,48, + 48,48,48,48,112,224,224,112,48,48,48,48,48,48,48,48, + 48,48,56,28,12,2,25,25,20,9,0,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,6,30,30,11,2,252,192,224,112,48,48,48, + 48,48,48,48,48,48,48,56,28,28,56,48,48,48,48,48, + 48,48,48,48,48,112,224,192,16,4,8,20,2,6,30,3, + 127,135,225,254,192,120,255}; +/* + Fontname: -FreeType-Org_v01-Medium-R-Normal--8-80-72-72-P-43-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w=11 h= 9 x= 1 y= 4 dx=12 dy= 0 ascent= 9 len=10 + Font Bounding box w=11 h=11 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 9 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_orgv01[1535] U8G_SECTION(".progmem.u8g_font_orgv01") = { + 1,11,11,0,254,5,0,249,1,238,32,255,255,9,254,5, + 255,2,0,64,2,21,37,128,128,128,0,128,6,49,65,160, + 2,85,101,80,248,80,248,80,2,85,101,248,160,248,40,248, + 2,85,101,136,16,32,64,136,2,85,101,240,144,248,144,232, + 6,17,33,128,2,37,53,64,128,128,128,64,2,37,53,128, + 64,64,64,128,3,51,67,160,64,160,3,51,67,64,224,64, + 1,18,34,128,128,4,65,81,240,2,17,33,128,2,85,101, + 8,16,32,64,128,2,85,101,248,136,136,136,248,2,21,37, + 128,128,128,128,128,2,85,101,248,8,248,128,248,2,85,101, + 248,8,248,8,248,2,85,101,136,136,248,8,8,2,85,101, + 248,128,248,8,248,2,85,101,248,128,248,136,248,2,85,101, + 248,8,8,8,8,2,85,101,248,136,248,136,248,2,85,101, + 248,136,248,8,248,2,20,36,128,0,0,128,2,20,36,128, + 0,128,128,2,53,69,32,64,128,64,32,3,67,83,240,0, + 240,2,53,69,128,64,32,64,128,2,85,101,248,8,56,0, + 32,2,85,101,248,168,184,128,248,2,85,101,248,136,248,136, + 136,2,85,101,240,136,240,136,240,2,85,101,248,128,128,128, + 248,2,85,101,240,136,136,136,240,2,85,101,248,128,248,128, + 248,2,85,101,248,128,248,128,128,2,85,101,248,128,184,136, + 248,2,85,101,136,136,248,136,136,2,85,101,248,32,32,32, + 248,2,85,101,120,16,16,144,248,2,85,101,136,176,192,176, + 136,2,85,101,128,128,128,128,248,2,85,101,248,168,168,168, + 168,2,85,101,248,136,136,136,136,2,85,101,248,136,136,136, + 248,2,85,101,248,136,248,128,128,2,85,101,248,136,136,152, + 248,2,85,101,248,136,248,144,144,2,85,101,248,128,248,8, + 248,2,85,101,248,32,32,32,32,2,85,101,136,136,136,136, + 248,2,85,101,136,136,136,80,32,2,85,101,168,168,168,168, + 248,2,85,101,136,80,32,80,136,2,85,101,136,136,80,32, + 32,2,85,101,248,8,248,128,248,2,37,53,192,128,128,128, + 192,2,85,101,128,64,32,16,8,2,37,53,192,64,64,64, + 192,5,50,66,64,160,1,81,97,248,6,17,33,128,2,68, + 84,240,16,240,240,2,69,85,128,240,144,144,240,2,68,84, + 240,128,128,240,2,69,85,16,240,144,144,240,2,68,84,240, + 240,128,240,2,53,69,96,64,224,64,64,1,69,85,240,144, + 144,240,16,2,69,85,128,240,144,144,144,2,20,36,128,128, + 128,128,1,37,53,64,64,64,64,192,2,69,85,128,160,240, + 144,144,2,21,37,128,128,128,128,128,2,84,100,248,168,136, + 136,2,68,84,240,144,144,144,2,68,84,240,144,144,240,1, + 69,85,240,144,144,240,128,1,69,85,240,144,144,240,32,2, + 68,84,240,128,128,128,2,68,84,64,112,16,240,2,85,101, + 32,248,32,32,32,2,68,84,144,144,144,240,2,68,84,144, + 144,144,112,2,84,100,136,136,168,248,2,68,84,144,96,96, + 144,1,69,85,144,144,144,240,16,2,68,84,32,224,128,240, + 2,53,69,32,64,192,64,32,2,21,37,128,128,128,128,128, + 2,53,69,128,64,96,64,128,3,83,99,8,248,128,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 2,20,36,128,0,128,128,2,85,101,32,248,160,248,32,2, + 85,101,64,224,64,72,120,2,85,101,136,112,80,112,136,2, + 85,101,136,248,32,112,32,2,21,37,128,128,0,128,128,2, + 86,102,248,128,248,248,8,248,4,81,97,248,18,85,117,248, + 168,200,168,248,2,181,202,251,224,138,0,251,224,136,32,139, + 224,19,83,115,72,144,72,3,66,82,240,16,255,2,85,101, + 248,248,200,200,248,6,81,97,248,2,0,112,2,0,112,2, + 0,112,2,0,112,2,0,112,2,0,112,2,0,112,2,0, + 112,2,0,112,2,0,112,2,0,112,4,83,99,144,72,144, + 2,0,112,2,0,112,2,0,112,18,85,117,32,0,224,128, + 248,2,88,104,64,32,0,248,136,248,136,136,2,88,104,16, + 32,0,248,136,248,136,136,2,88,104,32,80,0,248,136,248, + 136,136,2,89,105,8,248,128,0,248,136,248,136,136,2,87, + 103,80,0,248,136,248,136,136,2,87,103,32,0,248,136,248, + 136,136,2,85,101,248,160,248,160,184,0,87,103,248,128,128, + 128,248,16,48,2,88,104,64,32,0,248,128,248,128,248,2, + 88,104,16,32,0,248,128,248,128,248,2,88,104,32,80,0, + 248,128,248,128,248,2,86,102,80,248,128,248,128,248,2,88, + 104,64,32,0,248,32,32,32,248,2,88,104,16,32,0,248, + 32,32,32,248,2,88,104,32,80,0,248,32,32,32,248,2, + 87,103,80,0,248,32,32,32,248,2,85,101,240,136,232,136, + 240,2,89,105,8,248,128,0,248,136,136,136,136,2,88,104, + 64,32,0,248,136,136,136,248,2,88,104,16,32,0,248,136, + 136,136,248,2,88,104,32,80,0,248,136,136,136,248,2,89, + 105,8,248,128,0,248,136,136,136,248,2,87,103,80,0,248, + 136,136,136,248,3,51,67,160,64,160,2,85,101,248,152,168, + 200,248,2,87,103,64,32,136,136,136,136,248,2,87,103,16, + 32,136,136,136,136,248,2,86,102,32,80,136,136,136,248,2, + 86,102,80,0,136,136,136,248,2,88,104,16,32,0,136,136, + 80,32,32,18,85,117,128,240,136,240,128,1,86,102,240,136, + 176,136,176,128,2,68,84,240,16,240,240,2,71,87,64,32, + 0,240,16,240,240,2,71,87,32,64,0,240,16,240,240,2, + 71,87,96,144,0,240,16,240,240,2,70,86,144,0,240,16, + 240,240,2,70,86,32,0,240,16,240,240,2,116,132,254,30, + 240,254,0,70,86,240,128,128,240,32,96,2,71,87,64,32, + 0,240,240,128,240,2,71,87,32,64,0,240,240,128,240,2, + 71,87,96,144,0,240,240,128,240,2,70,86,144,0,240,240, + 128,240,2,39,39,128,64,0,64,64,64,64,2,39,39,64, + 128,0,128,128,128,128,2,55,39,64,160,0,64,64,64,64, + 2,54,38,160,0,64,64,64,64,2,85,85,56,16,240,144, + 240,2,71,87,80,160,0,240,144,144,144,2,71,87,64,32, + 0,240,144,144,240,2,71,87,32,64,0,240,144,144,240,2, + 71,87,96,144,0,240,144,144,240,2,71,87,80,160,0,240, + 144,144,240,2,70,86,144,0,240,144,144,240,2,85,101,32, + 0,248,0,32,2,68,84,240,176,208,240,2,71,87,64,32, + 0,144,144,144,240,2,71,87,32,64,0,144,144,144,240,2, + 71,87,96,144,0,144,144,144,240,2,70,86,144,0,144,144, + 144,240,1,72,88,32,64,0,144,144,144,240,16,18,85,117, + 128,240,136,240,128,1,71,87,144,0,144,144,144,240,16}; +/* + Fontname: -FreeType-Org_v01-Medium-R-Normal--8-80-72-72-P-43-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 2 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w=11 h=11 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_orgv01n[130] U8G_SECTION(".progmem.u8g_font_orgv01n") = { + 1,11,11,0,254,5,0,0,0,0,42,57,0,5,255,5, + 0,3,51,67,160,64,160,3,51,67,64,224,64,1,18,34, + 128,128,4,65,81,240,2,17,33,128,2,85,101,8,16,32, + 64,128,2,85,101,248,136,136,136,248,2,21,37,128,128,128, + 128,128,2,85,101,248,8,248,128,248,2,85,101,248,8,248, + 8,248,2,85,101,136,136,248,8,8,2,85,101,248,128,248, + 8,248,2,85,101,248,128,248,136,248,2,85,101,248,8,8, + 8,8,2,85,101,248,136,248,136,248,2,85,101,248,136,248, + 8,248}; +/* + Fontname: -FreeType-Org_v01-Medium-R-Normal--8-80-72-72-P-43-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 0 y= 4 dx= 6 dy= 0 ascent= 5 len= 5 + Font Bounding box w=11 h=11 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_orgv01r[719] U8G_SECTION(".progmem.u8g_font_orgv01r") = { + 1,11,11,0,254,5,0,249,1,238,32,127,255,5,255,5, + 255,2,0,64,2,21,37,128,128,128,0,128,6,49,65,160, + 2,85,101,80,248,80,248,80,2,85,101,248,160,248,40,248, + 2,85,101,136,16,32,64,136,2,85,101,240,144,248,144,232, + 6,17,33,128,2,37,53,64,128,128,128,64,2,37,53,128, + 64,64,64,128,3,51,67,160,64,160,3,51,67,64,224,64, + 1,18,34,128,128,4,65,81,240,2,17,33,128,2,85,101, + 8,16,32,64,128,2,85,101,248,136,136,136,248,2,21,37, + 128,128,128,128,128,2,85,101,248,8,248,128,248,2,85,101, + 248,8,248,8,248,2,85,101,136,136,248,8,8,2,85,101, + 248,128,248,8,248,2,85,101,248,128,248,136,248,2,85,101, + 248,8,8,8,8,2,85,101,248,136,248,136,248,2,85,101, + 248,136,248,8,248,2,20,36,128,0,0,128,2,20,36,128, + 0,128,128,2,53,69,32,64,128,64,32,3,67,83,240,0, + 240,2,53,69,128,64,32,64,128,2,85,101,248,8,56,0, + 32,2,85,101,248,168,184,128,248,2,85,101,248,136,248,136, + 136,2,85,101,240,136,240,136,240,2,85,101,248,128,128,128, + 248,2,85,101,240,136,136,136,240,2,85,101,248,128,248,128, + 248,2,85,101,248,128,248,128,128,2,85,101,248,128,184,136, + 248,2,85,101,136,136,248,136,136,2,85,101,248,32,32,32, + 248,2,85,101,120,16,16,144,248,2,85,101,136,176,192,176, + 136,2,85,101,128,128,128,128,248,2,85,101,248,168,168,168, + 168,2,85,101,248,136,136,136,136,2,85,101,248,136,136,136, + 248,2,85,101,248,136,248,128,128,2,85,101,248,136,136,152, + 248,2,85,101,248,136,248,144,144,2,85,101,248,128,248,8, + 248,2,85,101,248,32,32,32,32,2,85,101,136,136,136,136, + 248,2,85,101,136,136,136,80,32,2,85,101,168,168,168,168, + 248,2,85,101,136,80,32,80,136,2,85,101,136,136,80,32, + 32,2,85,101,248,8,248,128,248,2,37,53,192,128,128,128, + 192,2,85,101,128,64,32,16,8,2,37,53,192,64,64,64, + 192,5,50,66,64,160,1,81,97,248,6,17,33,128,2,68, + 84,240,16,240,240,2,69,85,128,240,144,144,240,2,68,84, + 240,128,128,240,2,69,85,16,240,144,144,240,2,68,84,240, + 240,128,240,2,53,69,96,64,224,64,64,1,69,85,240,144, + 144,240,16,2,69,85,128,240,144,144,144,2,20,36,128,128, + 128,128,1,37,53,64,64,64,64,192,2,69,85,128,160,240, + 144,144,2,21,37,128,128,128,128,128,2,84,100,248,168,136, + 136,2,68,84,240,144,144,144,2,68,84,240,144,144,240,1, + 69,85,240,144,144,240,128,1,69,85,240,144,144,240,32,2, + 68,84,240,128,128,128,2,68,84,64,112,16,240,2,85,101, + 32,248,32,32,32,2,68,84,144,144,144,240,2,68,84,144, + 144,144,112,2,84,100,136,136,168,248,2,68,84,144,96,96, + 144,1,69,85,144,144,144,240,16,2,68,84,32,224,128,240, + 2,53,69,32,64,192,64,32,2,21,37,128,128,128,128,128, + 2,53,69,128,64,96,64,128,3,83,99,8,248,128,255}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--25-250-72-72-P-136-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=26 h=24 x= 5 y=14 dx=27 dy= 0 ascent=24 len=72 + Font Bounding box w=70 h=31 x=-22 y=-7 + Calculated Min Values x=-1 y=-6 dx= 0 dy= 0 + Pure Font ascent =18 descent=-6 + X Font ascent =18 descent=-6 + Max Font ascent =24 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb18[7637] U8G_SECTION(".progmem.u8g_font_osb18") = { + 0,70,31,234,249,18,4,190,10,54,32,255,250,24,250,18, + 250,0,0,0,7,0,0,4,18,18,6,1,0,96,240,240, + 240,240,240,96,96,96,96,96,64,0,0,96,240,240,96,6, + 6,6,10,2,12,204,204,204,204,204,204,15,18,36,19,2, + 0,6,24,6,24,4,16,4,16,12,48,255,254,255,254,12, + 48,8,32,8,32,24,96,24,96,255,254,255,254,16,64,16, + 64,48,192,48,192,11,22,44,14,2,254,9,0,9,0,31, + 128,105,64,73,32,201,32,201,96,249,224,249,64,127,0,63, + 128,31,192,15,192,73,224,233,224,201,96,137,96,137,96,73, + 192,63,128,9,0,9,0,17,18,54,21,2,0,56,4,0, + 68,12,0,198,8,0,198,24,0,198,48,0,198,32,0,198, + 96,0,76,64,0,56,192,0,1,142,0,1,27,0,3,49, + 128,2,49,128,4,49,128,12,49,128,8,49,128,24,17,0, + 16,14,0,17,18,54,19,1,0,3,192,0,4,32,0,12, + 32,0,12,32,0,12,32,0,14,64,0,15,128,0,7,0, + 0,15,143,128,27,195,0,49,194,0,96,226,0,224,244,0, + 224,120,0,240,56,0,240,60,0,126,223,128,63,15,0,2, + 6,6,6,2,12,192,192,192,192,192,192,7,23,23,9,1, + 251,2,4,8,16,48,96,96,96,224,224,224,224,224,224,224, + 96,96,96,48,16,8,4,2,7,23,23,9,0,251,128,64, + 32,16,24,12,12,14,14,14,14,14,14,14,14,14,12,12, + 24,16,32,64,128,9,10,20,13,2,8,24,0,24,0,201, + 128,235,128,28,0,44,0,235,128,217,128,24,0,24,0,21, + 21,63,23,1,253,0,48,0,0,48,0,0,48,0,0,48, + 0,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 0,48,0,255,255,248,255,255,248,0,48,0,0,48,0,0, + 48,0,0,48,0,0,48,0,0,48,0,0,48,0,0,48, + 0,0,48,0,4,9,9,7,2,251,224,240,240,240,16,32, + 32,64,128,6,3,3,8,1,5,252,252,252,4,4,4,8, + 2,0,96,240,240,96,9,23,46,11,1,251,1,128,1,128, + 1,0,3,0,3,0,2,0,6,0,6,0,4,0,12,0, + 12,0,8,0,24,0,24,0,24,0,16,0,48,0,48,0, + 32,0,96,0,96,0,64,0,192,0,12,18,36,15,1,0, + 15,0,25,128,48,192,112,224,112,224,240,224,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,112,224,112,224,48,192, + 25,128,15,0,8,18,18,15,3,0,24,56,248,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,255,11,18,36,15, + 2,0,31,0,113,192,96,224,224,224,240,224,248,224,121,192, + 1,192,3,0,6,0,8,0,48,32,64,32,64,32,255,224, + 191,224,143,192,135,128,12,18,36,15,1,0,31,0,49,192, + 96,224,112,224,120,224,120,224,0,192,1,128,62,0,1,192, + 0,224,0,240,112,240,248,240,240,240,192,224,65,192,63,0, + 11,18,36,15,2,0,3,0,7,0,7,0,15,0,15,0, + 23,0,55,0,39,0,103,0,71,0,199,0,135,0,255,224, + 7,0,7,0,7,0,7,0,63,224,11,18,36,15,2,0, + 65,128,127,128,126,0,120,0,64,0,64,0,95,0,99,128, + 65,192,65,224,1,224,33,224,241,224,241,224,225,192,193,192, + 67,128,62,0,11,18,36,15,2,0,7,128,24,64,48,224, + 113,224,113,224,240,0,240,0,247,128,249,192,240,224,240,224, + 240,224,240,224,112,224,112,224,48,192,57,192,15,0,11,18, + 36,15,2,0,156,64,190,96,255,32,255,224,128,32,128,64, + 128,64,0,128,1,128,3,0,7,0,6,0,14,0,30,0, + 30,0,30,0,30,0,12,0,12,18,36,15,1,0,31,128, + 32,64,64,32,192,32,192,32,240,32,252,64,127,128,127,192, + 63,224,103,240,193,240,192,112,192,48,192,48,96,32,112,64, + 31,128,12,18,36,15,2,0,31,0,113,128,96,192,224,224, + 224,224,224,240,224,240,96,240,113,240,30,240,0,240,0,240, + 56,224,120,224,120,224,97,192,33,128,30,0,4,12,12,8, + 2,0,96,240,240,96,0,0,0,0,96,240,240,96,4,17, + 17,7,2,251,96,240,240,96,0,0,0,0,224,240,240,240, + 16,32,32,64,128,19,21,63,24,2,252,0,0,96,0,1, + 224,0,7,128,0,14,0,0,56,0,0,224,0,3,128,0, + 15,0,0,60,0,0,112,0,0,224,0,0,120,0,0,28, + 0,0,7,0,0,1,192,0,0,112,0,0,60,0,0,15, + 0,0,3,128,0,0,224,0,0,32,21,7,21,23,1,3, + 255,255,248,255,255,248,0,0,0,0,0,0,0,0,0,255, + 255,248,255,255,248,19,21,63,24,2,252,192,0,0,240,0, + 0,60,0,0,14,0,0,3,128,0,0,224,0,0,56,0, + 0,30,0,0,7,128,0,1,192,0,0,224,0,3,192,0, + 7,0,0,28,0,0,112,0,1,192,0,7,128,0,30,0, + 0,56,0,0,224,0,0,128,0,0,8,18,18,12,2,0, + 60,78,135,135,135,78,12,24,16,32,36,36,24,0,24,60, + 60,24,18,18,54,20,1,0,3,240,0,12,12,0,24,3, + 0,48,237,0,97,173,128,99,28,128,199,28,192,207,24,192, + 206,24,192,206,56,192,206,56,192,206,56,128,78,49,128,110, + 91,0,35,156,0,48,0,0,12,4,0,3,248,0,17,18, + 54,19,1,0,0,192,0,0,192,0,0,192,0,1,224,0, + 1,224,0,1,224,0,2,240,0,2,240,0,4,112,0,4, + 120,0,4,120,0,8,56,0,15,252,0,8,60,0,16,28, + 0,16,30,0,48,30,0,252,127,128,15,18,36,18,2,0, + 255,224,56,56,56,56,56,28,56,28,56,28,56,56,56,48, + 63,192,56,56,56,28,56,30,56,30,56,30,56,30,56,28, + 56,56,255,240,13,18,36,17,2,0,7,136,24,120,48,56, + 112,24,112,24,240,8,240,8,240,8,240,0,240,0,240,0, + 240,8,240,8,112,8,112,8,56,16,24,32,7,192,16,18, + 36,19,2,0,255,224,56,56,56,28,56,14,56,14,56,14, + 56,15,56,15,56,15,56,15,56,15,56,15,56,14,56,14, + 56,12,56,28,56,56,255,224,14,18,36,18,2,0,255,252, + 56,28,56,12,56,12,56,4,56,68,56,64,56,192,56,192, + 63,192,56,192,56,68,56,68,56,4,56,4,56,12,56,28, + 255,252,14,18,36,17,2,0,255,252,56,60,56,28,56,12, + 56,4,56,68,56,68,56,192,56,192,63,192,56,192,56,64, + 56,64,56,0,56,0,56,0,56,0,255,0,15,18,36,18, + 2,0,7,136,24,104,48,56,112,24,112,8,112,8,240,8, + 240,0,240,0,241,254,240,56,240,56,240,56,112,56,112,56, + 48,40,24,72,15,136,17,18,54,20,2,0,255,127,128,56, + 14,0,56,14,0,56,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,63,254,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,255, + 127,128,8,18,18,11,2,0,255,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,255,11,18,36,13,1,0, + 31,224,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,115,128,243,128,243,128,227,128,195,128, + 67,0,60,0,17,18,54,19,2,0,254,127,0,56,24,0, + 56,16,0,56,32,0,56,64,0,56,192,0,57,128,0,59, + 192,0,59,192,0,61,224,0,57,240,0,56,240,0,56,248, + 0,56,120,0,56,124,0,56,60,0,56,62,0,254,127,128, + 14,18,36,17,2,0,255,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,4,56,4,56,4, + 56,12,56,12,56,28,56,60,255,252,20,18,54,22,1,0, + 254,3,240,30,3,192,30,3,192,31,5,192,31,5,192,23, + 5,192,23,133,192,23,137,192,19,201,192,19,201,192,17,209, + 192,17,241,192,17,241,192,16,241,192,16,225,192,16,225,192, + 56,97,192,254,111,240,17,18,54,18,1,0,252,63,128,60, + 14,0,62,4,0,31,4,0,31,4,0,31,132,0,23,196, + 0,19,196,0,17,228,0,17,244,0,16,244,0,16,124,0, + 16,124,0,16,60,0,16,28,0,16,28,0,56,12,0,254, + 4,0,15,18,36,18,2,0,7,192,8,32,56,48,48,24, + 112,28,112,28,240,30,240,30,240,30,240,30,240,30,240,30, + 112,28,112,28,48,24,48,56,8,32,7,192,15,18,36,18, + 2,0,255,240,56,56,56,28,56,30,56,30,56,30,56,30, + 56,28,56,56,63,224,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,255,128,15,24,48,18,2,250,7,192,8,32, + 56,56,48,24,112,28,112,28,240,30,240,30,240,30,240,30, + 240,30,240,30,112,28,112,28,51,152,52,176,28,226,7,194, + 0,194,0,194,0,230,0,254,0,124,0,56,16,18,36,19, + 2,0,255,224,56,120,56,56,56,60,56,60,56,60,56,56, + 56,112,63,192,56,96,56,48,56,56,56,56,56,57,56,57, + 56,57,56,57,255,158,12,18,36,15,2,0,30,32,97,160, + 192,224,192,96,224,32,240,32,252,0,126,0,63,128,15,192, + 135,224,129,240,128,240,192,48,192,48,224,32,176,96,143,128, + 15,18,36,18,2,0,255,254,231,30,199,14,135,14,135,6, + 135,6,7,2,7,2,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,31,224,18,18,54,20,2,0, + 255,31,192,56,7,0,56,2,0,56,2,0,56,2,0,56, + 2,0,56,2,0,56,2,0,56,2,0,56,2,0,56,2, + 0,56,2,0,56,2,0,56,2,0,24,2,0,28,4,0, + 14,8,0,3,240,0,17,18,54,19,2,0,255,63,128,60, + 6,0,60,4,0,30,4,0,30,8,0,30,8,0,15,8, + 0,15,16,0,7,144,0,7,144,0,7,160,0,3,224,0, + 3,224,0,3,192,0,1,192,0,1,192,0,1,192,0,0, + 128,0,26,18,72,27,1,0,255,191,223,192,30,15,6,0, + 30,15,6,0,15,15,4,0,15,15,132,0,15,15,132,0, + 7,143,140,0,7,139,200,0,7,147,200,0,3,211,200,0, + 3,209,240,0,3,225,240,0,1,225,240,0,1,224,240,0, + 1,224,224,0,0,192,224,0,0,192,96,0,0,192,64,0, + 16,18,36,19,2,0,255,63,62,24,30,16,31,16,15,32, + 15,224,7,192,7,192,3,192,3,224,3,224,2,240,4,240, + 8,120,8,120,16,60,48,60,252,255,16,18,36,19,2,0, + 254,127,60,12,60,8,30,16,30,16,30,16,15,32,15,32, + 7,64,7,192,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,15,240,13,18,36,16,2,0,127,248,112,120,96,240, + 97,240,65,224,67,224,3,192,7,192,7,128,15,0,15,0, + 30,0,30,8,60,8,124,24,120,24,248,56,255,248,6,22, + 22,10,2,252,252,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,252,9,23,46,11,1,251, + 192,0,64,0,96,0,96,0,32,0,48,0,48,0,16,0, + 24,0,24,0,24,0,8,0,12,0,12,0,4,0,6,0, + 6,0,2,0,3,0,3,0,1,0,1,128,1,128,6,22, + 22,10,2,252,252,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,252,11,9,18,15,2,9, + 4,0,12,0,30,0,27,0,51,0,49,128,96,192,192,192, + 192,96,13,2,4,13,0,252,255,248,255,248,4,4,4,11, + 2,13,192,224,96,48,11,12,24,13,1,0,30,0,99,0, + 99,128,115,128,35,128,31,128,115,128,227,128,227,160,227,160, + 247,160,121,192,12,18,36,13,0,0,248,0,56,0,56,0, + 56,0,56,0,56,0,59,128,60,224,60,224,56,112,56,112, + 56,112,56,112,56,112,56,112,60,224,36,192,35,128,9,12, + 24,12,1,0,30,0,49,0,113,128,227,128,227,128,224,0, + 224,0,224,0,224,128,112,128,49,0,30,0,12,18,36,13, + 1,0,7,192,1,192,1,192,1,192,1,192,1,192,29,192, + 115,192,99,192,225,192,225,192,225,192,225,192,225,192,225,192, + 99,192,115,192,29,240,9,12,24,12,1,0,30,0,51,0, + 99,128,227,128,227,128,255,128,224,0,224,0,224,128,112,128, + 49,0,30,0,9,18,36,9,1,0,15,0,29,128,59,128, + 59,128,57,0,56,0,252,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,252,0,12,18, + 36,14,1,250,30,112,51,176,113,240,113,192,113,192,113,192, + 51,128,30,0,96,0,127,128,127,192,63,224,96,224,128,96, + 128,96,128,64,64,192,63,0,12,18,36,13,0,0,248,0, + 56,0,56,0,56,0,56,0,56,0,57,192,62,224,60,224, + 56,224,56,224,56,224,56,224,56,224,56,224,56,224,56,224, + 253,240,5,18,18,7,1,0,112,112,112,32,0,0,240,112, + 112,112,112,112,112,112,112,112,112,248,7,24,24,8,255,250, + 14,14,14,4,0,0,62,14,14,14,14,14,14,14,14,14, + 14,14,14,110,238,238,204,120,13,18,36,13,0,0,248,0, + 56,0,56,0,56,0,56,0,56,0,57,240,56,192,56,128, + 57,0,57,0,59,128,63,128,57,192,57,192,56,224,56,224, + 255,248,7,18,18,8,0,0,248,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,254,18,12,36,19,1,0, + 243,142,0,125,247,0,121,231,0,113,199,0,113,199,0,113, + 199,0,113,199,0,113,199,0,113,199,0,113,199,0,113,199, + 0,251,239,192,11,12,24,13,1,0,243,128,125,192,121,192, + 113,192,113,192,113,192,113,192,113,192,113,192,113,192,113,192, + 251,224,10,12,24,12,1,0,30,0,51,0,97,128,225,192, + 225,192,225,192,225,192,225,192,225,192,97,128,51,0,30,0, + 12,18,36,13,0,250,251,128,60,192,60,224,56,112,56,112, + 56,112,56,112,56,112,56,112,60,224,60,224,59,192,56,0, + 56,0,56,0,56,0,56,0,254,0,11,18,36,13,1,250, + 28,64,50,64,99,192,225,192,225,192,225,192,225,192,225,192, + 225,192,99,192,115,192,61,192,1,192,1,192,1,192,1,192, + 1,192,7,224,9,12,24,11,1,0,243,0,117,128,123,128, + 123,128,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 248,0,9,12,24,11,1,0,57,0,199,0,195,0,225,0, + 240,0,124,0,63,0,143,128,131,128,193,128,225,0,158,0, + 8,17,17,10,1,0,16,16,16,48,112,254,112,112,112,112, + 112,113,113,113,113,114,60,12,12,24,13,0,0,249,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,224,56,224,57, + 224,58,224,28,240,12,12,24,13,1,0,253,240,112,64,56, + 64,56,128,28,128,28,128,29,0,15,0,14,0,14,0,6, + 0,4,0,19,12,36,19,0,0,253,251,224,56,112,128,28, + 112,128,28,113,0,28,121,0,14,185,0,14,154,0,14,158, + 0,7,28,0,7,12,0,2,12,0,2,8,0,12,12,24, + 13,0,0,253,240,56,64,28,128,31,0,15,0,15,0,7, + 0,7,128,11,192,17,192,17,224,253,240,12,18,36,12,0, + 250,252,240,112,64,56,64,56,128,28,128,28,128,29,0,15, + 0,15,0,7,0,6,0,6,0,2,0,4,0,116,0,116, + 0,104,0,56,0,10,12,24,12,1,0,127,192,99,128,71, + 128,71,0,15,0,14,0,28,0,60,64,56,64,120,64,112, + 192,255,192,8,23,23,10,1,251,3,28,56,56,56,56,56, + 56,56,56,48,192,48,56,56,56,56,56,56,56,56,28,3, + 2,23,23,8,3,251,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,8,23,23, + 11,2,251,192,112,56,56,56,56,56,56,56,56,28,7,28, + 56,56,56,56,56,56,56,56,112,192,14,5,10,16,1,4, + 120,8,255,4,143,196,131,252,64,120,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,0,0,0,7,0, + 0,4,18,18,6,1,250,96,240,240,96,0,0,64,96,96, + 96,96,96,240,240,240,240,240,96,9,18,36,15,3,253,4, + 0,4,0,4,0,30,0,53,0,117,128,231,128,231,128,228, + 0,228,0,228,0,228,0,100,128,116,128,31,0,4,0,4, + 0,4,0,16,18,36,19,2,0,0,248,1,132,3,6,7, + 14,7,14,7,0,7,0,63,0,7,240,7,128,3,128,3, + 128,3,128,3,1,123,2,143,204,135,252,120,240,12,12,24, + 14,1,3,132,16,223,176,112,224,96,96,192,48,192,48,192, + 48,192,48,64,96,96,96,127,224,207,48,14,18,36,14,0, + 0,254,124,56,16,60,16,60,32,30,32,30,64,14,64,15, + 128,7,128,127,240,7,0,127,240,7,0,7,0,7,0,7, + 0,7,0,31,224,2,22,22,8,3,252,192,192,192,192,192, + 192,192,192,192,0,0,0,0,192,192,192,192,192,192,192,192, + 192,11,23,46,15,1,251,15,0,48,128,96,192,97,192,97, + 192,112,128,124,0,63,0,223,128,143,192,129,224,192,96,248, + 32,126,32,63,64,15,128,3,192,49,192,112,192,112,192,96, + 128,33,128,30,0,8,3,3,12,2,14,231,231,231,18,18, + 54,20,1,0,3,240,0,12,12,0,16,2,0,33,201,0, + 67,56,128,70,24,128,142,8,64,142,8,64,142,0,64,142, + 0,64,142,8,64,142,8,64,70,8,128,67,16,128,33,225, + 0,16,2,0,12,12,0,3,240,0,7,9,9,10,1,9, + 120,204,204,60,76,204,206,126,254,7,10,10,12,3,1,32, + 100,68,204,204,204,204,196,100,34,13,7,14,15,1,4,255, + 248,255,248,0,24,0,24,0,24,0,24,0,24,6,3,3, + 8,1,5,252,252,252,18,18,54,20,1,0,3,240,0,12, + 12,0,16,2,0,47,225,0,71,48,128,71,56,128,135,56, + 64,135,48,64,135,192,64,135,48,64,135,56,64,135,56,64, + 71,58,128,71,58,128,47,157,0,16,2,0,12,12,0,3, + 240,0,7,2,2,11,2,14,254,254,8,7,7,14,3,11, + 60,102,131,129,129,194,126,21,18,54,23,1,254,0,48,0, + 0,48,0,0,48,0,0,48,0,0,48,0,0,48,0,255, + 255,248,255,255,248,0,48,0,0,48,0,0,48,0,0,48, + 0,0,48,0,0,48,0,0,48,0,0,0,0,255,255,248, + 255,255,248,7,11,11,11,2,7,124,206,206,238,28,48,98, + 66,254,190,8,8,11,11,12,2,7,60,198,231,231,6,56, + 6,103,231,199,60,4,4,4,11,5,13,48,112,96,192,13, + 18,36,15,1,250,97,128,225,192,225,192,225,192,225,192,225, + 192,225,192,64,136,64,136,65,248,127,120,94,48,64,0,96, + 0,96,0,112,0,112,0,112,0,13,21,42,15,1,253,31, + 248,126,96,126,96,254,96,254,96,254,96,254,96,126,96,62, + 96,14,96,6,96,6,96,6,96,6,96,6,96,6,96,6, + 96,6,96,6,96,6,96,6,96,4,4,4,8,2,6,96, + 240,240,96,5,5,5,11,3,250,32,96,24,24,240,6,11, + 11,11,3,7,48,240,112,112,112,112,112,112,112,112,252,7, + 9,9,9,1,9,56,68,198,198,198,198,68,56,254,7,10, + 10,13,3,1,152,140,68,102,102,102,102,70,76,136,18,18, + 54,22,3,0,48,8,0,240,8,0,112,16,0,112,48,0, + 112,32,0,112,96,0,112,64,0,112,195,0,112,135,0,113, + 143,0,253,15,0,3,23,0,2,39,0,4,39,0,12,63, + 192,8,7,0,24,7,0,16,31,192,18,18,54,23,3,0, + 48,4,0,240,8,0,112,24,0,112,16,0,112,48,0,112, + 32,0,112,96,0,112,79,0,112,147,192,113,177,192,253,57, + 192,3,3,128,2,6,0,6,8,0,4,16,64,8,63,192, + 24,47,192,16,39,128,20,18,54,23,2,0,124,2,0,199, + 6,0,231,4,0,6,12,0,56,8,0,6,16,0,7,16, + 0,231,33,192,231,97,192,198,67,192,60,133,192,0,133,192, + 1,9,192,1,9,192,2,31,240,6,1,192,4,1,192,8, + 7,240,8,18,18,12,2,250,48,120,120,48,56,68,68,4, + 8,24,48,114,97,225,225,225,114,60,17,23,69,19,1,1, + 7,0,0,7,0,0,1,128,0,0,128,0,0,0,0,0, + 192,0,0,192,0,1,192,0,1,224,0,1,224,0,3,224, + 0,2,240,0,2,240,0,4,240,0,4,120,0,4,120,0, + 8,56,0,15,252,0,8,60,0,16,28,0,16,30,0,48, + 30,0,252,255,128,17,23,69,19,1,1,0,56,0,0,48, + 0,0,96,0,0,192,0,0,0,0,0,192,0,0,192,0, + 0,192,0,1,224,0,1,224,0,1,224,0,2,240,0,2, + 240,0,4,112,0,4,120,0,4,120,0,8,56,0,15,252, + 0,8,60,0,16,28,0,16,30,0,48,30,0,252,127,128, + 17,23,69,19,1,0,0,192,0,1,192,0,3,96,0,6, + 24,0,0,0,0,0,192,0,0,192,0,0,192,0,1,224, + 0,1,224,0,1,224,0,2,240,0,2,240,0,4,112,0, + 4,120,0,4,120,0,8,56,0,15,252,0,8,60,0,16, + 28,0,16,30,0,48,30,0,252,127,128,17,23,69,19,1, + 0,1,8,0,7,240,0,4,240,0,0,0,0,0,0,0, + 0,192,0,0,192,0,1,192,0,1,224,0,1,224,0,3, + 224,0,2,240,0,2,240,0,4,240,0,4,120,0,4,120, + 0,8,56,0,15,252,0,8,60,0,16,28,0,16,30,0, + 48,30,0,252,255,128,16,23,46,18,1,0,14,112,14,112, + 14,112,0,0,0,0,1,128,1,128,1,128,3,192,3,192, + 3,192,5,224,5,224,4,224,8,240,8,240,8,112,31,248, + 16,120,16,60,48,60,48,60,252,255,18,23,69,19,1,0, + 1,224,0,2,16,0,2,16,0,1,224,0,0,0,0,0, + 192,0,0,192,0,0,224,0,1,224,0,1,224,0,1,240, + 0,2,240,0,2,240,0,4,120,0,4,120,0,4,120,0, + 8,60,0,15,252,0,8,28,0,16,30,0,16,30,0,48, + 30,0,252,127,192,23,18,54,25,1,0,0,127,254,0,60, + 14,0,60,6,0,124,6,0,92,2,0,220,34,0,156,32, + 1,156,96,1,28,96,3,31,224,2,28,96,6,28,34,7, + 252,34,8,28,2,8,28,2,24,28,6,56,28,14,254,127, + 254,13,24,48,17,2,250,7,136,24,120,48,56,112,24,112, + 24,240,8,240,8,240,8,240,0,240,0,240,0,240,8,240, + 8,112,8,112,8,56,16,24,32,7,192,2,0,3,128,0, + 192,0,192,8,192,7,128,14,23,46,18,2,1,28,0,12, + 0,6,0,1,0,0,0,255,252,56,28,56,12,56,12,56, + 4,56,68,56,64,56,192,56,192,63,192,56,192,56,68,56, + 68,56,4,56,4,56,12,56,28,255,252,14,23,46,18,2, + 1,0,224,0,192,1,128,2,0,0,0,255,252,56,28,56, + 12,56,12,56,4,56,68,56,64,56,192,56,192,63,192,56, + 192,56,68,56,68,56,4,56,4,56,12,56,28,255,252,14, + 23,46,18,2,0,3,0,7,128,12,192,16,32,0,0,255, + 252,56,28,56,12,56,12,56,4,56,68,56,64,56,192,56, + 192,63,192,56,192,56,68,56,68,56,4,56,4,56,12,56, + 28,255,252,14,23,46,18,2,0,28,224,28,224,28,224,0, + 0,0,0,255,252,56,28,56,12,56,12,56,4,56,68,56, + 64,56,192,56,192,63,192,56,192,56,68,56,68,56,4,56, + 12,56,12,56,28,255,252,8,23,23,11,2,1,192,96,48, + 16,0,255,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,255,8,23,23,11,2,1,7,14,8,16,0,255, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 255,8,23,23,11,2,0,16,56,108,130,0,255,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,56,56,255,8,23, + 23,11,2,0,231,231,231,0,0,255,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,255,16,18,36,19,2, + 0,255,224,56,56,56,28,56,14,56,14,56,14,56,15,56, + 15,255,15,56,15,56,15,56,15,56,14,56,14,56,12,56, + 28,56,56,255,224,17,23,69,18,1,0,3,136,0,3,240, + 0,4,96,0,0,0,0,0,0,0,252,63,128,60,14,0, + 62,4,0,31,4,0,31,4,0,23,132,0,23,196,0,19, + 196,0,17,228,0,17,244,0,16,244,0,16,124,0,16,124, + 0,16,60,0,16,28,0,16,28,0,56,12,0,254,4,0, + 15,24,48,18,2,0,12,0,12,0,14,0,3,0,1,0, + 0,0,7,192,8,32,56,48,48,24,112,28,112,28,240,30, + 240,30,240,30,240,30,240,30,240,30,112,28,112,28,48,24, + 48,56,8,32,7,192,15,24,48,18,2,0,0,96,0,96, + 0,224,1,128,1,0,0,0,7,192,8,32,56,48,48,24, + 112,28,112,28,240,30,240,30,240,30,240,30,240,30,240,30, + 112,28,112,28,48,24,48,56,8,32,7,192,15,24,48,18, + 2,0,1,0,3,128,7,128,14,192,24,48,0,0,7,192, + 8,32,56,48,48,24,112,28,112,28,240,30,240,30,240,30, + 240,30,240,30,240,30,112,28,112,28,48,24,48,56,8,32, + 7,192,15,23,46,18,2,0,7,32,15,224,16,192,0,0, + 0,0,7,192,8,32,56,48,48,24,112,28,112,28,240,30, + 240,30,240,30,240,30,240,30,240,30,112,28,112,28,48,24, + 48,56,8,32,7,192,15,23,46,18,2,0,28,224,28,224, + 28,224,0,0,0,0,7,192,8,32,56,48,48,24,112,28, + 112,28,240,30,240,30,240,30,240,30,240,30,240,30,112,28, + 112,28,48,24,48,56,8,32,7,192,16,15,30,24,4,0, + 192,3,96,6,48,12,24,24,12,48,6,96,3,192,1,128, + 3,192,6,96,12,48,56,24,112,12,224,6,192,3,15,18, + 36,18,2,0,7,194,8,116,48,60,48,56,112,60,112,124, + 240,94,240,222,241,158,243,30,246,30,244,30,124,28,120,28, + 56,24,120,24,92,32,135,192,18,24,72,20,2,0,6,0, + 0,7,0,0,3,0,0,1,128,0,0,0,0,0,0,0, + 255,31,192,56,7,0,56,2,0,56,2,0,56,2,0,56, + 2,0,56,2,0,56,2,0,56,2,0,56,2,0,56,2, + 0,56,2,0,56,2,0,56,2,0,24,2,0,28,4,0, + 14,8,0,3,240,0,18,24,72,20,2,0,0,24,0,0, + 56,0,0,112,0,0,192,0,0,128,0,0,0,0,255,31, + 192,56,7,0,56,2,0,56,2,0,56,2,0,56,2,0, + 56,2,0,56,2,0,56,2,0,56,2,0,56,2,0,56, + 2,0,56,2,0,56,2,0,24,2,0,28,4,0,14,8, + 0,3,240,0,18,24,72,20,2,0,0,128,0,1,192,0, + 1,224,0,6,48,0,8,8,0,0,0,0,255,31,192,56, + 7,0,56,2,0,56,2,0,56,2,0,56,2,0,56,2, + 0,56,2,0,56,2,0,56,2,0,56,2,0,56,2,0, + 56,2,0,56,2,0,24,2,0,28,4,0,14,8,0,3, + 240,0,18,23,69,20,2,0,7,56,0,7,56,0,7,56, + 0,0,0,0,0,0,0,255,31,192,56,7,0,56,2,0, + 56,2,0,56,2,0,56,2,0,56,2,0,56,2,0,56, + 2,0,56,2,0,56,2,0,56,2,0,56,2,0,56,2, + 0,24,2,0,28,4,0,14,8,0,3,240,0,16,23,46, + 19,2,1,0,112,0,96,0,192,1,0,0,0,254,127,60, + 12,60,8,30,16,30,16,30,16,15,32,15,32,7,64,7, + 192,3,128,3,128,3,128,3,128,3,128,3,128,3,128,15, + 240,15,18,36,18,2,0,255,128,56,0,56,0,63,224,56, + 56,56,28,56,30,56,30,56,30,56,30,56,28,56,56,63, + 224,56,0,56,0,56,0,56,0,255,128,12,18,36,13,0, + 0,7,128,12,192,24,224,56,224,56,224,56,224,56,192,59, + 0,56,192,56,96,56,112,56,112,56,112,56,112,56,112,63, + 112,63,96,251,192,11,18,36,13,1,0,32,0,48,0,48, + 0,24,0,4,0,0,0,30,0,99,0,99,128,115,128,7, + 128,27,128,115,128,227,128,227,160,227,160,247,160,121,192,11, + 18,36,13,1,0,3,0,3,0,6,0,4,0,8,0,0, + 0,30,0,99,0,99,128,115,128,35,128,31,128,115,128,227, + 128,227,160,227,160,247,160,121,192,11,18,36,13,1,0,12, + 0,12,0,30,0,50,0,65,0,0,0,30,0,99,0,99, + 128,115,128,35,128,31,128,115,128,227,128,227,160,227,160,247, + 160,121,192,11,17,34,13,1,0,57,0,127,0,70,0,0, + 0,0,0,30,0,99,0,99,128,115,128,35,128,31,128,115, + 128,227,128,227,160,227,160,247,160,121,192,11,17,34,13,1, + 0,119,0,119,0,119,0,0,0,0,0,30,0,99,0,99, + 128,115,128,35,128,31,128,115,128,227,128,227,160,227,160,247, + 160,121,192,11,18,36,13,1,0,28,0,38,0,34,0,34, + 0,28,0,0,0,30,0,99,0,99,128,115,128,35,128,31, + 128,115,128,227,128,227,160,227,160,231,160,121,192,15,12,24, + 18,1,0,62,248,99,140,99,142,115,142,7,142,27,254,115, + 128,227,128,227,130,227,130,247,196,120,120,9,18,36,12,1, + 250,30,0,49,0,113,128,227,128,227,128,224,0,224,0,224, + 0,224,128,112,128,49,0,30,0,8,0,8,0,6,0,6, + 0,6,0,28,0,9,18,36,12,1,0,32,0,112,0,48, + 0,24,0,4,0,0,0,30,0,51,0,99,128,227,128,227, + 128,255,128,224,0,224,0,224,128,112,128,49,0,30,0,9, + 18,36,12,1,0,3,0,7,0,6,0,12,0,8,0,0, + 0,30,0,51,0,99,128,227,128,227,128,255,128,224,0,224, + 0,224,128,112,128,49,0,30,0,9,18,36,12,1,0,12, + 0,28,0,28,0,50,0,65,0,0,0,30,0,51,0,99, + 128,227,128,227,128,255,128,224,0,224,0,224,128,112,128,49, + 0,30,0,9,17,34,12,1,0,115,128,115,128,115,128,0, + 0,0,0,30,0,51,0,99,128,227,128,227,128,255,128,224, + 0,224,0,224,0,112,128,49,0,30,0,7,18,18,8,1, + 0,192,224,112,16,8,0,120,56,56,56,56,56,56,56,56, + 56,56,126,6,18,18,8,1,0,12,28,24,48,0,0,240, + 112,112,112,112,112,112,112,112,112,112,248,7,18,18,7,0, + 0,56,56,108,198,0,0,120,56,56,56,56,56,56,56,56, + 56,56,126,7,17,17,8,1,0,238,238,238,0,0,120,56, + 56,56,56,56,56,56,56,56,56,126,10,18,36,12,1,0, + 57,128,30,0,14,0,31,0,39,0,3,128,31,128,51,192, + 97,192,225,192,225,192,225,192,225,192,225,192,225,192,97,128, + 51,128,30,0,11,17,34,13,1,0,24,128,63,128,39,0, + 0,0,0,0,243,128,125,192,121,192,113,192,113,192,113,192, + 113,192,113,192,113,192,113,192,113,192,251,224,10,18,36,12, + 1,0,48,0,48,0,24,0,12,0,4,0,0,0,30,0, + 51,0,97,128,225,192,225,192,225,192,225,192,225,192,225,192, + 97,128,51,0,30,0,10,18,36,12,1,0,3,0,3,0, + 7,0,4,0,8,0,0,0,30,0,51,0,97,128,225,192, + 225,192,225,192,225,192,225,192,225,192,97,128,51,0,30,0, + 10,18,36,12,1,0,12,0,14,0,30,0,51,0,96,128, + 0,0,30,0,51,0,97,128,225,192,225,192,225,192,225,192, + 225,192,225,192,97,128,51,0,30,0,10,17,34,12,1,0, + 56,128,63,0,70,0,0,0,0,0,30,0,51,0,97,128, + 225,192,225,192,225,192,225,192,225,192,225,192,97,128,51,0, + 30,0,10,17,34,12,1,0,115,128,115,128,115,128,0,0, + 0,0,30,0,51,0,97,128,225,192,225,192,225,192,225,192, + 225,192,225,192,97,128,51,0,30,0,21,17,51,23,1,254, + 0,48,0,0,120,0,0,120,0,0,48,0,0,0,0,0, + 0,0,0,0,0,0,0,0,255,255,248,255,255,248,0,0, + 0,0,0,0,0,0,0,0,48,0,0,120,0,0,120,0, + 0,48,0,10,12,24,12,1,0,30,64,51,128,97,128,225, + 192,227,192,229,192,233,192,241,192,241,192,97,128,115,0,158, + 0,12,18,36,13,0,0,24,0,24,0,12,0,6,0,2, + 0,0,0,249,224,56,224,56,224,56,224,56,224,56,224,56, + 224,56,224,56,224,57,224,58,224,28,240,12,18,36,13,0, + 0,1,128,1,128,3,0,2,0,0,0,0,0,249,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,224,56,224,57, + 224,58,224,28,240,12,18,36,13,0,0,6,0,6,0,15, + 0,25,128,0,0,0,0,249,224,56,224,56,224,56,224,56, + 224,56,224,56,224,56,224,56,224,57,224,58,224,28,240,12, + 17,34,13,0,0,57,192,57,192,57,192,0,0,0,0,249, + 224,56,224,56,224,56,224,56,224,56,224,56,224,56,224,56, + 224,57,224,58,224,28,240,12,24,48,12,0,250,1,128,1, + 128,3,0,6,0,4,0,0,0,252,240,112,64,56,64,56, + 128,28,128,28,128,29,0,15,0,15,0,7,0,6,0,6, + 0,2,0,4,0,116,0,116,0,104,0,56,0,12,23,46, + 13,0,250,24,0,120,0,184,0,56,0,56,0,57,224,58, + 240,60,112,60,112,56,112,56,96,56,224,56,192,56,128,57, + 0,58,0,60,0,56,0,56,0,56,0,56,0,96,0,128, + 0,13,23,46,13,0,250,28,224,28,224,28,224,0,0,0, + 0,254,120,56,32,60,64,28,64,30,64,14,64,14,128,7, + 128,7,128,7,0,3,0,3,0,2,0,2,0,58,0,60, + 0,52,0,56,0}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--25-250-72-72-P-136-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 18 + Calculated Max Values w=21 h=23 x= 3 y= 8 dx=23 dy= 0 ascent=18 len=63 + Font Bounding box w=70 h=31 x=-22 y=-7 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =18 descent= 0 + X Font ascent =18 descent= 0 + Max Font ascent =18 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb18n[600] U8G_SECTION(".progmem.u8g_font_osb18n") = { + 0,70,31,234,249,18,0,0,0,0,42,57,0,18,251,18, + 0,9,10,20,13,2,8,24,0,24,0,201,128,235,128,28, + 0,44,0,235,128,217,128,24,0,24,0,21,21,63,23,1, + 253,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 0,48,0,0,48,0,0,48,0,0,48,0,0,48,0,255, + 255,248,255,255,248,0,48,0,0,48,0,0,48,0,0,48, + 0,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 4,9,9,7,2,251,224,240,240,240,16,32,32,64,128,6, + 3,3,8,1,5,252,252,252,4,4,4,8,2,0,96,240, + 240,96,9,23,46,11,1,251,1,128,1,128,1,0,3,0, + 3,0,2,0,6,0,6,0,4,0,12,0,12,0,8,0, + 24,0,24,0,24,0,16,0,48,0,48,0,32,0,96,0, + 96,0,64,0,192,0,12,18,36,15,1,0,15,0,25,128, + 48,192,112,224,112,224,240,224,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,112,224,112,224,48,192,25,128,15,0, + 8,18,18,15,3,0,24,56,248,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,255,11,18,36,15,2,0,31,0, + 113,192,96,224,224,224,240,224,248,224,121,192,1,192,3,0, + 6,0,8,0,48,32,64,32,64,32,255,224,191,224,143,192, + 135,128,12,18,36,15,1,0,31,0,49,192,96,224,112,224, + 120,224,120,224,0,192,1,128,62,0,1,192,0,224,0,240, + 112,240,248,240,240,240,192,224,65,192,63,0,11,18,36,15, + 2,0,3,0,7,0,7,0,15,0,15,0,23,0,55,0, + 39,0,103,0,71,0,199,0,135,0,255,224,7,0,7,0, + 7,0,7,0,63,224,11,18,36,15,2,0,65,128,127,128, + 126,0,120,0,64,0,64,0,95,0,99,128,65,192,65,224, + 1,224,33,224,241,224,241,224,225,192,193,192,67,128,62,0, + 11,18,36,15,2,0,7,128,24,64,48,224,113,224,113,224, + 240,0,240,0,247,128,249,192,240,224,240,224,240,224,240,224, + 112,224,112,224,48,192,57,192,15,0,11,18,36,15,2,0, + 156,64,190,96,255,32,255,224,128,32,128,64,128,64,0,128, + 1,128,3,0,7,0,6,0,14,0,30,0,30,0,30,0, + 30,0,12,0,12,18,36,15,1,0,31,128,32,64,64,32, + 192,32,192,32,240,32,252,64,127,128,127,192,63,224,103,240, + 193,240,192,112,192,48,192,48,96,32,112,64,31,128,12,18, + 36,15,2,0,31,0,113,128,96,192,224,224,224,224,224,240, + 224,240,96,240,113,240,30,240,0,240,0,240,56,224,120,224, + 120,224,97,192,33,128,30,0}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--25-250-72-72-P-136-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=26 h=24 x= 3 y=13 dx=27 dy= 0 ascent=20 len=72 + Font Bounding box w=70 h=31 x=-22 y=-7 + Calculated Min Values x=-1 y=-6 dx= 0 dy= 0 + Pure Font ascent =18 descent=-6 + X Font ascent =18 descent=-6 + Max Font ascent =20 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb18r[3611] U8G_SECTION(".progmem.u8g_font_osb18r") = { + 0,70,31,234,249,18,4,190,10,54,32,127,250,20,250,18, + 250,0,0,0,7,0,0,4,18,18,6,1,0,96,240,240, + 240,240,240,96,96,96,96,96,64,0,0,96,240,240,96,6, + 6,6,10,2,12,204,204,204,204,204,204,15,18,36,19,2, + 0,6,24,6,24,4,16,4,16,12,48,255,254,255,254,12, + 48,8,32,8,32,24,96,24,96,255,254,255,254,16,64,16, + 64,48,192,48,192,11,22,44,14,2,254,9,0,9,0,31, + 128,105,64,73,32,201,32,201,96,249,224,249,64,127,0,63, + 128,31,192,15,192,73,224,233,224,201,96,137,96,137,96,73, + 192,63,128,9,0,9,0,17,18,54,21,2,0,56,4,0, + 68,12,0,198,8,0,198,24,0,198,48,0,198,32,0,198, + 96,0,76,64,0,56,192,0,1,142,0,1,27,0,3,49, + 128,2,49,128,4,49,128,12,49,128,8,49,128,24,17,0, + 16,14,0,17,18,54,19,1,0,3,192,0,4,32,0,12, + 32,0,12,32,0,12,32,0,14,64,0,15,128,0,7,0, + 0,15,143,128,27,195,0,49,194,0,96,226,0,224,244,0, + 224,120,0,240,56,0,240,60,0,126,223,128,63,15,0,2, + 6,6,6,2,12,192,192,192,192,192,192,7,23,23,9,1, + 251,2,4,8,16,48,96,96,96,224,224,224,224,224,224,224, + 96,96,96,48,16,8,4,2,7,23,23,9,0,251,128,64, + 32,16,24,12,12,14,14,14,14,14,14,14,14,14,12,12, + 24,16,32,64,128,9,10,20,13,2,8,24,0,24,0,201, + 128,235,128,28,0,44,0,235,128,217,128,24,0,24,0,21, + 21,63,23,1,253,0,48,0,0,48,0,0,48,0,0,48, + 0,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 0,48,0,255,255,248,255,255,248,0,48,0,0,48,0,0, + 48,0,0,48,0,0,48,0,0,48,0,0,48,0,0,48, + 0,0,48,0,4,9,9,7,2,251,224,240,240,240,16,32, + 32,64,128,6,3,3,8,1,5,252,252,252,4,4,4,8, + 2,0,96,240,240,96,9,23,46,11,1,251,1,128,1,128, + 1,0,3,0,3,0,2,0,6,0,6,0,4,0,12,0, + 12,0,8,0,24,0,24,0,24,0,16,0,48,0,48,0, + 32,0,96,0,96,0,64,0,192,0,12,18,36,15,1,0, + 15,0,25,128,48,192,112,224,112,224,240,224,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,112,224,112,224,48,192, + 25,128,15,0,8,18,18,15,3,0,24,56,248,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,255,11,18,36,15, + 2,0,31,0,113,192,96,224,224,224,240,224,248,224,121,192, + 1,192,3,0,6,0,8,0,48,32,64,32,64,32,255,224, + 191,224,143,192,135,128,12,18,36,15,1,0,31,0,49,192, + 96,224,112,224,120,224,120,224,0,192,1,128,62,0,1,192, + 0,224,0,240,112,240,248,240,240,240,192,224,65,192,63,0, + 11,18,36,15,2,0,3,0,7,0,7,0,15,0,15,0, + 23,0,55,0,39,0,103,0,71,0,199,0,135,0,255,224, + 7,0,7,0,7,0,7,0,63,224,11,18,36,15,2,0, + 65,128,127,128,126,0,120,0,64,0,64,0,95,0,99,128, + 65,192,65,224,1,224,33,224,241,224,241,224,225,192,193,192, + 67,128,62,0,11,18,36,15,2,0,7,128,24,64,48,224, + 113,224,113,224,240,0,240,0,247,128,249,192,240,224,240,224, + 240,224,240,224,112,224,112,224,48,192,57,192,15,0,11,18, + 36,15,2,0,156,64,190,96,255,32,255,224,128,32,128,64, + 128,64,0,128,1,128,3,0,7,0,6,0,14,0,30,0, + 30,0,30,0,30,0,12,0,12,18,36,15,1,0,31,128, + 32,64,64,32,192,32,192,32,240,32,252,64,127,128,127,192, + 63,224,103,240,193,240,192,112,192,48,192,48,96,32,112,64, + 31,128,12,18,36,15,2,0,31,0,113,128,96,192,224,224, + 224,224,224,240,224,240,96,240,113,240,30,240,0,240,0,240, + 56,224,120,224,120,224,97,192,33,128,30,0,4,12,12,8, + 2,0,96,240,240,96,0,0,0,0,96,240,240,96,4,17, + 17,7,2,251,96,240,240,96,0,0,0,0,224,240,240,240, + 16,32,32,64,128,19,21,63,24,2,252,0,0,96,0,1, + 224,0,7,128,0,14,0,0,56,0,0,224,0,3,128,0, + 15,0,0,60,0,0,112,0,0,224,0,0,120,0,0,28, + 0,0,7,0,0,1,192,0,0,112,0,0,60,0,0,15, + 0,0,3,128,0,0,224,0,0,32,21,7,21,23,1,3, + 255,255,248,255,255,248,0,0,0,0,0,0,0,0,0,255, + 255,248,255,255,248,19,21,63,24,2,252,192,0,0,240,0, + 0,60,0,0,14,0,0,3,128,0,0,224,0,0,56,0, + 0,30,0,0,7,128,0,1,192,0,0,224,0,3,192,0, + 7,0,0,28,0,0,112,0,1,192,0,7,128,0,30,0, + 0,56,0,0,224,0,0,128,0,0,8,18,18,12,2,0, + 60,78,135,135,135,78,12,24,16,32,36,36,24,0,24,60, + 60,24,18,18,54,20,1,0,3,240,0,12,12,0,24,3, + 0,48,237,0,97,173,128,99,28,128,199,28,192,207,24,192, + 206,24,192,206,56,192,206,56,192,206,56,128,78,49,128,110, + 91,0,35,156,0,48,0,0,12,4,0,3,248,0,17,18, + 54,19,1,0,0,192,0,0,192,0,0,192,0,1,224,0, + 1,224,0,1,224,0,2,240,0,2,240,0,4,112,0,4, + 120,0,4,120,0,8,56,0,15,252,0,8,60,0,16,28, + 0,16,30,0,48,30,0,252,127,128,15,18,36,18,2,0, + 255,224,56,56,56,56,56,28,56,28,56,28,56,56,56,48, + 63,192,56,56,56,28,56,30,56,30,56,30,56,30,56,28, + 56,56,255,240,13,18,36,17,2,0,7,136,24,120,48,56, + 112,24,112,24,240,8,240,8,240,8,240,0,240,0,240,0, + 240,8,240,8,112,8,112,8,56,16,24,32,7,192,16,18, + 36,19,2,0,255,224,56,56,56,28,56,14,56,14,56,14, + 56,15,56,15,56,15,56,15,56,15,56,15,56,14,56,14, + 56,12,56,28,56,56,255,224,14,18,36,18,2,0,255,252, + 56,28,56,12,56,12,56,4,56,68,56,64,56,192,56,192, + 63,192,56,192,56,68,56,68,56,4,56,4,56,12,56,28, + 255,252,14,18,36,17,2,0,255,252,56,60,56,28,56,12, + 56,4,56,68,56,68,56,192,56,192,63,192,56,192,56,64, + 56,64,56,0,56,0,56,0,56,0,255,0,15,18,36,18, + 2,0,7,136,24,104,48,56,112,24,112,8,112,8,240,8, + 240,0,240,0,241,254,240,56,240,56,240,56,112,56,112,56, + 48,40,24,72,15,136,17,18,54,20,2,0,255,127,128,56, + 14,0,56,14,0,56,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,63,254,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,255, + 127,128,8,18,18,11,2,0,255,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,255,11,18,36,13,1,0, + 31,224,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,115,128,243,128,243,128,227,128,195,128, + 67,0,60,0,17,18,54,19,2,0,254,127,0,56,24,0, + 56,16,0,56,32,0,56,64,0,56,192,0,57,128,0,59, + 192,0,59,192,0,61,224,0,57,240,0,56,240,0,56,248, + 0,56,120,0,56,124,0,56,60,0,56,62,0,254,127,128, + 14,18,36,17,2,0,255,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,4,56,4,56,4, + 56,12,56,12,56,28,56,60,255,252,20,18,54,22,1,0, + 254,3,240,30,3,192,30,3,192,31,5,192,31,5,192,23, + 5,192,23,133,192,23,137,192,19,201,192,19,201,192,17,209, + 192,17,241,192,17,241,192,16,241,192,16,225,192,16,225,192, + 56,97,192,254,111,240,17,18,54,18,1,0,252,63,128,60, + 14,0,62,4,0,31,4,0,31,4,0,31,132,0,23,196, + 0,19,196,0,17,228,0,17,244,0,16,244,0,16,124,0, + 16,124,0,16,60,0,16,28,0,16,28,0,56,12,0,254, + 4,0,15,18,36,18,2,0,7,192,8,32,56,48,48,24, + 112,28,112,28,240,30,240,30,240,30,240,30,240,30,240,30, + 112,28,112,28,48,24,48,56,8,32,7,192,15,18,36,18, + 2,0,255,240,56,56,56,28,56,30,56,30,56,30,56,30, + 56,28,56,56,63,224,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,255,128,15,24,48,18,2,250,7,192,8,32, + 56,56,48,24,112,28,112,28,240,30,240,30,240,30,240,30, + 240,30,240,30,112,28,112,28,51,152,52,176,28,226,7,194, + 0,194,0,194,0,230,0,254,0,124,0,56,16,18,36,19, + 2,0,255,224,56,120,56,56,56,60,56,60,56,60,56,56, + 56,112,63,192,56,96,56,48,56,56,56,56,56,57,56,57, + 56,57,56,57,255,158,12,18,36,15,2,0,30,32,97,160, + 192,224,192,96,224,32,240,32,252,0,126,0,63,128,15,192, + 135,224,129,240,128,240,192,48,192,48,224,32,176,96,143,128, + 15,18,36,18,2,0,255,254,231,30,199,14,135,14,135,6, + 135,6,7,2,7,2,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,31,224,18,18,54,20,2,0, + 255,31,192,56,7,0,56,2,0,56,2,0,56,2,0,56, + 2,0,56,2,0,56,2,0,56,2,0,56,2,0,56,2, + 0,56,2,0,56,2,0,56,2,0,24,2,0,28,4,0, + 14,8,0,3,240,0,17,18,54,19,2,0,255,63,128,60, + 6,0,60,4,0,30,4,0,30,8,0,30,8,0,15,8, + 0,15,16,0,7,144,0,7,144,0,7,160,0,3,224,0, + 3,224,0,3,192,0,1,192,0,1,192,0,1,192,0,0, + 128,0,26,18,72,27,1,0,255,191,223,192,30,15,6,0, + 30,15,6,0,15,15,4,0,15,15,132,0,15,15,132,0, + 7,143,140,0,7,139,200,0,7,147,200,0,3,211,200,0, + 3,209,240,0,3,225,240,0,1,225,240,0,1,224,240,0, + 1,224,224,0,0,192,224,0,0,192,96,0,0,192,64,0, + 16,18,36,19,2,0,255,63,62,24,30,16,31,16,15,32, + 15,224,7,192,7,192,3,192,3,224,3,224,2,240,4,240, + 8,120,8,120,16,60,48,60,252,255,16,18,36,19,2,0, + 254,127,60,12,60,8,30,16,30,16,30,16,15,32,15,32, + 7,64,7,192,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,15,240,13,18,36,16,2,0,127,248,112,120,96,240, + 97,240,65,224,67,224,3,192,7,192,7,128,15,0,15,0, + 30,0,30,8,60,8,124,24,120,24,248,56,255,248,6,22, + 22,10,2,252,252,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,252,9,23,46,11,1,251, + 192,0,64,0,96,0,96,0,32,0,48,0,48,0,16,0, + 24,0,24,0,24,0,8,0,12,0,12,0,4,0,6,0, + 6,0,2,0,3,0,3,0,1,0,1,128,1,128,6,22, + 22,10,2,252,252,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,252,11,9,18,15,2,9, + 4,0,12,0,30,0,27,0,51,0,49,128,96,192,192,192, + 192,96,13,2,4,13,0,252,255,248,255,248,4,4,4,11, + 2,13,192,224,96,48,11,12,24,13,1,0,30,0,99,0, + 99,128,115,128,35,128,31,128,115,128,227,128,227,160,227,160, + 247,160,121,192,12,18,36,13,0,0,248,0,56,0,56,0, + 56,0,56,0,56,0,59,128,60,224,60,224,56,112,56,112, + 56,112,56,112,56,112,56,112,60,224,36,192,35,128,9,12, + 24,12,1,0,30,0,49,0,113,128,227,128,227,128,224,0, + 224,0,224,0,224,128,112,128,49,0,30,0,12,18,36,13, + 1,0,7,192,1,192,1,192,1,192,1,192,1,192,29,192, + 115,192,99,192,225,192,225,192,225,192,225,192,225,192,225,192, + 99,192,115,192,29,240,9,12,24,12,1,0,30,0,51,0, + 99,128,227,128,227,128,255,128,224,0,224,0,224,128,112,128, + 49,0,30,0,9,18,36,9,1,0,15,0,29,128,59,128, + 59,128,57,0,56,0,252,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,252,0,12,18, + 36,14,1,250,30,112,51,176,113,240,113,192,113,192,113,192, + 51,128,30,0,96,0,127,128,127,192,63,224,96,224,128,96, + 128,96,128,64,64,192,63,0,12,18,36,13,0,0,248,0, + 56,0,56,0,56,0,56,0,56,0,57,192,62,224,60,224, + 56,224,56,224,56,224,56,224,56,224,56,224,56,224,56,224, + 253,240,5,18,18,7,1,0,112,112,112,32,0,0,240,112, + 112,112,112,112,112,112,112,112,112,248,7,24,24,8,255,250, + 14,14,14,4,0,0,62,14,14,14,14,14,14,14,14,14, + 14,14,14,110,238,238,204,120,13,18,36,13,0,0,248,0, + 56,0,56,0,56,0,56,0,56,0,57,240,56,192,56,128, + 57,0,57,0,59,128,63,128,57,192,57,192,56,224,56,224, + 255,248,7,18,18,8,0,0,248,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,254,18,12,36,19,1,0, + 243,142,0,125,247,0,121,231,0,113,199,0,113,199,0,113, + 199,0,113,199,0,113,199,0,113,199,0,113,199,0,113,199, + 0,251,239,192,11,12,24,13,1,0,243,128,125,192,121,192, + 113,192,113,192,113,192,113,192,113,192,113,192,113,192,113,192, + 251,224,10,12,24,12,1,0,30,0,51,0,97,128,225,192, + 225,192,225,192,225,192,225,192,225,192,97,128,51,0,30,0, + 12,18,36,13,0,250,251,128,60,192,60,224,56,112,56,112, + 56,112,56,112,56,112,56,112,60,224,60,224,59,192,56,0, + 56,0,56,0,56,0,56,0,254,0,11,18,36,13,1,250, + 28,64,50,64,99,192,225,192,225,192,225,192,225,192,225,192, + 225,192,99,192,115,192,61,192,1,192,1,192,1,192,1,192, + 1,192,7,224,9,12,24,11,1,0,243,0,117,128,123,128, + 123,128,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 248,0,9,12,24,11,1,0,57,0,199,0,195,0,225,0, + 240,0,124,0,63,0,143,128,131,128,193,128,225,0,158,0, + 8,17,17,10,1,0,16,16,16,48,112,254,112,112,112,112, + 112,113,113,113,113,114,60,12,12,24,13,0,0,249,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,224,56,224,57, + 224,58,224,28,240,12,12,24,13,1,0,253,240,112,64,56, + 64,56,128,28,128,28,128,29,0,15,0,14,0,14,0,6, + 0,4,0,19,12,36,19,0,0,253,251,224,56,112,128,28, + 112,128,28,113,0,28,121,0,14,185,0,14,154,0,14,158, + 0,7,28,0,7,12,0,2,12,0,2,8,0,12,12,24, + 13,0,0,253,240,56,64,28,128,31,0,15,0,15,0,7, + 0,7,128,11,192,17,192,17,224,253,240,12,18,36,12,0, + 250,252,240,112,64,56,64,56,128,28,128,28,128,29,0,15, + 0,15,0,7,0,6,0,6,0,2,0,4,0,116,0,116, + 0,104,0,56,0,10,12,24,12,1,0,127,192,99,128,71, + 128,71,0,15,0,14,0,28,0,60,64,56,64,120,64,112, + 192,255,192,8,23,23,10,1,251,3,28,56,56,56,56,56, + 56,56,56,48,192,48,56,56,56,56,56,56,56,56,28,3, + 2,23,23,8,3,251,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,8,23,23, + 11,2,251,192,112,56,56,56,56,56,56,56,56,28,7,28, + 56,56,56,56,56,56,56,56,112,192,14,5,10,16,1,4, + 120,8,255,4,143,196,131,252,64,120,255}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--28-280-72-72-P-153-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 21, '1' Height: 21 + Calculated Max Values w=28 h=29 x= 5 y=17 dx=31 dy= 0 ascent=28 len=87 + Font Bounding box w=77 h=36 x=-24 y=-8 + Calculated Min Values x=-1 y=-8 dx= 0 dy= 0 + Pure Font ascent =21 descent=-7 + X Font ascent =21 descent=-7 + Max Font ascent =28 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb21[9612] U8G_SECTION(".progmem.u8g_font_osb21") = { + 0,77,36,232,248,21,5,141,12,241,32,255,249,28,248,21, + 249,0,0,0,8,0,0,5,21,21,9,2,1,240,248,248, + 248,248,112,112,112,112,32,32,32,32,32,32,0,0,112,248, + 248,112,7,6,6,11,2,16,238,238,238,238,198,68,16,21, + 42,20,2,0,6,12,6,12,6,12,6,8,6,24,6,24, + 255,255,255,255,12,24,12,24,12,48,12,48,12,48,8,48, + 255,255,255,255,24,32,24,96,24,96,16,96,48,96,13,25, + 50,16,2,254,9,0,11,0,61,192,105,48,73,8,201,8, + 201,56,233,120,249,112,253,0,127,0,127,0,63,192,15,224, + 15,240,73,248,233,248,233,56,201,24,137,24,137,16,73,32, + 57,192,15,0,9,0,19,22,66,25,3,0,0,1,0,60, + 3,0,102,2,0,231,4,0,231,4,0,231,8,0,231,8, + 0,231,16,0,231,48,0,102,32,0,102,96,0,24,64,0, + 0,195,0,0,140,192,1,140,192,1,28,224,2,28,224,2, + 28,224,4,28,224,4,28,224,8,12,192,24,7,128,20,21, + 63,22,1,1,3,224,0,6,16,0,14,16,0,14,16,0, + 14,16,0,14,48,0,15,32,0,15,64,0,7,128,0,3, + 192,0,7,195,240,9,224,192,48,224,128,112,240,128,112,121, + 0,240,59,0,240,62,0,240,30,0,248,31,16,126,111,160, + 63,199,192,3,6,6,7,2,16,224,224,224,224,192,64,8, + 27,27,10,2,250,1,2,4,8,24,48,48,112,112,240,240, + 240,240,240,240,240,240,112,112,112,48,48,24,8,4,2,1, + 8,26,26,10,1,250,128,192,96,48,24,24,12,12,14,14, + 14,14,15,15,15,14,14,14,14,12,12,24,24,48,96,192, + 11,12,24,14,2,9,14,0,14,0,78,192,228,224,245,192, + 14,0,14,0,245,192,228,192,78,192,14,0,14,0,24,25, + 75,26,1,252,0,24,0,0,24,0,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0, + 24,0,0,24,0,0,24,0,255,255,255,255,255,255,0,24, + 0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,5, + 10,10,7,1,251,112,248,248,248,120,8,16,16,32,192,7, + 3,3,11,2,6,254,254,254,4,4,4,8,2,0,96,240, + 240,96,9,27,54,13,2,250,1,128,1,128,1,128,3,0, + 3,0,3,0,2,0,6,0,6,0,6,0,12,0,12,0, + 12,0,24,0,24,0,24,0,16,0,48,0,48,0,48,0, + 96,0,96,0,96,0,192,0,192,0,192,0,128,0,14,21, + 42,16,1,1,15,192,24,96,56,112,56,112,120,120,120,120, + 248,120,248,124,248,124,248,124,248,124,248,124,248,124,248,124, + 248,120,120,120,120,120,56,112,56,112,24,96,15,192,9,21, + 42,16,3,0,6,0,14,0,30,0,254,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,255,128,12,21, + 42,16,2,1,63,192,97,224,96,224,224,240,224,240,240,240, + 248,240,121,224,49,224,3,192,7,128,14,0,28,0,48,16, + 96,16,64,16,192,16,255,240,255,224,143,224,135,192,13,21, + 42,16,2,1,63,192,96,224,96,224,224,240,240,240,248,240, + 120,240,112,240,0,224,1,192,31,0,0,224,0,240,0,112, + 112,120,248,120,248,120,240,120,224,112,96,240,59,192,13,21, + 42,16,1,0,1,192,1,192,3,192,3,192,7,192,7,192, + 15,192,27,192,27,192,51,192,35,192,99,192,67,192,195,192, + 255,248,3,192,3,192,3,192,3,192,3,192,31,248,13,21, + 42,16,2,0,96,224,127,192,127,128,127,0,120,0,64,0, + 64,0,64,0,79,0,113,224,64,240,64,240,0,248,0,248, + 112,248,248,248,248,248,240,240,224,240,97,224,59,192,13,21, + 42,16,2,1,15,224,24,32,56,48,48,240,112,240,112,240, + 240,96,240,0,240,0,247,128,248,224,240,112,240,112,240,112, + 240,120,112,120,112,112,112,112,48,112,56,96,13,192,11,21, + 42,16,3,0,156,64,190,96,255,32,255,32,199,224,129,160, + 128,64,128,64,0,128,0,128,1,0,3,0,7,0,6,0, + 14,0,14,0,30,0,30,0,30,0,30,0,30,0,14,21, + 42,16,2,1,31,192,48,32,96,48,96,16,224,16,240,16, + 248,32,254,32,127,192,63,192,31,240,31,248,99,248,64,248, + 192,60,192,24,192,24,192,24,96,16,112,48,31,192,13,21, + 42,16,2,1,31,128,48,192,112,96,112,112,240,112,240,112, + 240,120,240,120,240,120,112,120,112,120,56,248,15,120,0,120, + 0,120,56,112,120,112,120,96,112,224,96,192,63,128,4,14, + 14,8,2,0,96,240,240,240,96,0,0,0,0,0,96,240, + 240,96,5,19,19,8,2,251,96,240,240,240,96,0,0,0, + 0,112,240,248,248,248,8,16,16,32,192,21,24,72,26,2, + 252,0,0,24,0,0,56,0,0,240,0,3,192,0,15,0, + 0,28,0,0,120,0,1,224,0,7,128,0,14,0,0,60, + 0,0,240,0,0,224,0,0,120,0,0,30,0,0,7,128, + 0,1,192,0,0,240,0,0,60,0,0,15,0,0,3,128, + 0,1,224,0,0,120,0,0,24,24,8,24,26,1,4,255, + 255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0, + 0,255,255,255,255,255,255,21,24,72,26,3,252,128,0,0, + 224,0,0,120,0,0,30,0,0,7,128,0,1,192,0,0, + 240,0,0,60,0,0,15,0,0,3,128,0,1,224,0,0, + 120,0,0,56,0,0,240,0,3,192,0,15,0,0,28,0, + 0,120,0,1,224,0,7,128,0,14,0,0,60,0,0,240, + 0,0,192,0,0,9,21,42,13,2,1,126,0,71,0,135, + 128,135,128,135,128,135,128,71,0,14,0,12,0,28,0,16, + 0,48,0,34,0,34,0,34,0,28,0,0,0,12,0,30, + 0,30,0,12,0,20,22,66,22,1,0,0,32,0,3,222, + 0,12,3,0,24,0,128,48,0,192,48,112,96,97,207,96, + 99,142,48,199,142,48,199,14,48,199,14,48,207,14,48,207, + 28,48,207,28,32,207,28,96,79,60,64,103,44,128,99,199, + 0,48,0,0,24,0,0,12,2,0,3,252,0,19,21,63, + 22,2,0,0,64,0,0,96,0,0,224,0,0,224,0,0, + 240,0,1,240,0,1,240,0,1,248,0,2,120,0,2,120, + 0,2,124,0,4,60,0,4,60,0,4,62,0,15,254,0, + 8,30,0,8,31,0,16,15,0,16,15,0,48,15,128,254, + 127,224,17,21,63,19,1,0,255,240,0,30,28,0,30,14, + 0,30,15,0,30,15,0,30,15,0,30,15,0,30,14,0, + 30,14,0,30,24,0,31,224,0,30,28,0,30,15,0,30, + 7,0,30,7,128,30,7,128,30,7,128,30,7,128,30,7, + 0,30,14,0,255,248,0,15,21,42,18,2,1,15,230,28, + 30,56,30,56,14,120,14,120,6,248,6,248,6,248,2,248, + 0,248,0,248,0,248,0,248,2,248,2,120,2,120,4,56, + 4,60,12,28,8,15,240,19,21,63,21,1,0,255,248,0, + 30,14,0,30,7,0,30,3,128,30,3,192,30,3,192,30, + 3,192,30,3,224,30,3,224,30,3,224,30,3,224,30,3, + 224,30,3,224,30,3,224,30,3,192,30,3,192,30,3,192, + 30,3,128,30,7,0,30,14,0,255,248,0,16,21,42,19, + 1,0,255,255,30,15,30,7,30,3,30,3,30,1,30,17, + 30,16,30,48,30,48,31,240,30,48,30,48,30,17,30,17, + 30,1,30,1,30,3,30,7,30,15,255,255,17,21,63,19, + 1,0,255,255,128,30,15,128,30,7,128,30,3,128,30,1, + 128,30,1,128,30,17,128,30,17,128,30,48,0,30,48,0, + 31,240,0,30,48,0,30,48,0,30,16,0,30,16,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,255,192, + 0,17,22,66,20,2,0,0,128,0,7,114,0,28,30,0, + 24,14,0,56,6,0,120,6,0,120,6,0,120,2,0,248, + 2,0,248,0,0,248,0,0,248,0,0,248,255,128,248,30, + 0,248,30,0,248,30,0,120,30,0,120,30,0,56,30,0, + 56,22,0,28,34,0,14,194,0,20,21,63,22,1,0,255, + 223,240,30,3,192,30,3,192,30,3,192,30,3,192,30,3, + 192,30,3,192,30,3,192,30,3,192,30,3,192,31,255,192, + 30,3,192,30,3,192,30,3,192,30,3,192,30,3,192,30, + 3,192,30,3,192,30,3,192,30,3,192,255,223,240,9,21, + 42,11,1,0,255,128,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,255,128,13,21, + 42,15,1,0,15,248,1,224,1,224,1,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,224,1,224,1,224,113,224, + 249,224,249,224,249,192,225,192,193,192,65,128,55,0,19,21, + 63,21,1,0,255,159,192,30,7,0,30,6,0,30,12,0, + 30,8,0,30,16,0,30,32,0,30,96,0,30,240,0,31, + 240,0,31,248,0,30,248,0,30,124,0,30,124,0,30,62, + 0,30,30,0,30,31,0,30,15,0,30,15,128,30,15,128, + 255,159,224,17,21,63,19,1,0,255,128,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,1,0, + 30,1,128,30,1,128,30,1,128,30,3,128,30,3,128,30, + 7,128,30,15,128,255,255,128,23,21,63,25,1,0,254,0, + 254,30,0,240,31,1,240,31,1,240,31,1,240,31,129,240, + 23,130,240,23,194,240,23,194,240,19,196,240,19,228,240,17, + 228,240,17,228,240,17,248,240,16,248,240,16,248,240,16,248, + 240,16,112,240,16,112,240,56,48,240,254,35,254,21,21,63, + 22,1,0,254,15,248,31,1,192,31,0,128,15,128,128,15, + 192,128,15,192,128,11,224,128,11,240,128,9,248,128,8,248, + 128,8,252,128,8,126,128,8,62,128,8,31,128,8,31,128, + 8,15,128,8,7,128,8,7,128,8,3,128,28,1,128,255, + 129,128,17,22,66,20,2,0,0,128,0,7,112,0,12,24, + 0,24,12,0,56,14,0,120,14,0,120,15,0,120,15,0, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,120,15,0,120,15,0,120,15,0,56,14, + 0,24,12,0,12,24,0,7,112,0,17,21,63,19,1,0, + 255,248,0,30,14,0,30,7,0,30,7,128,30,7,128,30, + 7,128,30,7,128,30,7,128,30,15,0,30,14,0,31,248, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,255,192,0,17, + 29,87,20,2,249,0,128,0,7,112,0,12,24,0,24,12, + 0,56,14,0,120,14,0,120,15,0,120,15,0,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,120,15,0,120,15,0,121,142,0,58,78,0,30,124, + 0,30,120,128,6,112,128,1,224,128,0,96,128,0,113,128, + 0,127,128,0,127,0,0,63,0,0,30,0,19,21,63,21, + 1,0,255,240,0,30,28,0,30,14,0,30,15,0,30,15, + 0,30,15,0,30,15,0,30,14,0,30,28,0,31,224,0, + 30,48,0,30,28,0,30,28,0,30,28,0,30,30,0,30, + 30,0,30,30,32,30,30,32,30,30,32,30,14,64,255,207, + 192,13,22,44,17,3,0,4,0,59,144,64,240,192,112,192, + 112,224,48,240,48,248,16,254,16,127,0,63,128,31,224,15, + 240,131,240,129,248,128,120,192,56,192,24,224,24,224,16,240, + 48,159,192,17,21,63,20,2,0,255,255,128,227,207,128,195, + 199,128,195,195,128,131,195,128,131,193,128,131,193,128,3,193, + 128,3,192,128,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,31,248,0,19,21,63,22,2,0,255,15, + 224,60,3,128,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,60,1,0,60,1,0,60,1,0,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,28,1,0,28,2,0,14,4,0,7,248,0,20,21,63, + 22,1,0,255,207,240,30,1,128,31,1,0,31,1,0,15, + 1,0,15,130,0,15,130,0,7,130,0,7,196,0,7,196, + 0,3,196,0,3,232,0,3,232,0,1,232,0,1,248,0, + 0,240,0,0,240,0,0,240,0,0,96,0,0,96,0,0, + 96,0,28,21,84,31,2,0,255,191,231,240,62,15,129,192, + 30,7,129,128,30,7,129,128,31,7,193,0,15,7,193,0, + 15,7,193,0,15,143,226,0,7,137,226,0,7,137,226,0, + 7,201,246,0,3,208,244,0,3,208,244,0,3,240,252,0, + 1,240,124,0,1,224,120,0,1,224,120,0,0,224,56,0, + 0,192,48,0,0,192,48,0,0,64,16,0,19,21,63,20, + 1,0,255,159,192,63,6,0,31,6,0,15,4,0,15,136, + 0,7,152,0,7,208,0,3,240,0,3,224,0,1,240,0, + 1,240,0,0,248,0,1,248,0,3,124,0,2,124,0,6, + 62,0,4,62,0,8,30,0,24,31,0,24,31,128,254,63, + 224,18,21,63,21,2,0,255,31,192,62,7,0,30,6,0, + 30,4,0,31,4,0,15,4,0,15,136,0,7,136,0,7, + 144,0,7,208,0,3,240,0,3,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,7,248,0,15,21,42,19,2,0,127,254,120,62, + 112,124,96,124,96,248,64,248,65,240,1,240,3,224,3,224, + 7,192,7,128,15,128,31,2,31,2,62,2,62,6,124,6, + 124,14,248,30,255,254,7,26,26,11,2,251,254,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,254,10,27,54,13,1,250,192,0,96,0, + 96,0,96,0,32,0,48,0,48,0,48,0,24,0,24,0, + 24,0,12,0,12,0,12,0,4,0,6,0,6,0,6,0, + 3,0,3,0,3,0,1,128,1,128,1,128,0,128,0,192, + 0,192,7,26,26,11,2,251,254,30,30,30,30,30,30,30, + 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30, + 30,254,12,10,20,16,2,12,6,0,7,0,15,0,29,128, + 25,128,48,192,48,224,96,96,224,48,192,48,15,2,4,15, + 0,251,255,254,255,254,5,5,5,12,2,16,192,224,112,48, + 24,12,14,28,14,1,0,30,0,99,128,99,192,243,192,115, + 192,35,192,15,192,51,192,115,192,243,192,243,208,243,208,243, + 208,125,224,13,21,42,14,0,0,252,0,60,0,60,0,60, + 0,60,0,60,0,60,0,61,192,62,96,60,112,60,112,60, + 120,60,120,60,120,60,120,60,120,60,120,60,112,52,112,38, + 96,35,192,10,14,28,13,1,0,15,0,56,128,112,192,113, + 192,243,192,243,128,240,0,240,0,240,0,240,0,112,64,112, + 64,56,128,15,0,13,21,42,15,1,0,3,224,1,224,1, + 224,1,224,1,224,1,224,1,224,29,224,51,224,113,224,113, + 224,241,224,241,224,241,224,241,224,241,224,241,224,113,224,113, + 224,51,224,29,248,11,14,28,13,1,0,15,0,51,128,113, + 192,113,192,241,192,241,224,255,224,240,0,240,0,240,32,112, + 64,112,64,56,128,15,0,11,21,42,10,1,0,7,128,12, + 192,28,192,61,224,61,192,60,0,60,0,254,0,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,254,0,14,21,42,16,1,249,15,24,57, + 236,121,252,121,248,121,224,121,224,57,192,57,192,15,0,112, + 0,192,0,255,0,255,224,127,240,63,248,64,56,128,24,128, + 16,128,48,96,96,31,128,14,21,42,16,1,0,252,0,60, + 0,60,0,60,0,60,0,60,0,60,0,61,224,62,112,60, + 112,60,120,60,120,60,120,60,120,60,120,60,120,60,120,60, + 120,60,120,60,120,254,252,6,21,21,8,1,0,48,120,120, + 48,0,0,0,248,120,120,120,120,120,120,120,120,120,120,120, + 120,252,8,28,28,8,255,249,6,15,15,6,0,0,0,31, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,79,255, + 239,238,206,56,14,21,42,16,1,0,252,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,248,60,96,60,64,60,128, + 60,128,61,128,63,128,63,192,61,224,60,224,60,240,60,112, + 60,120,254,252,8,21,21,9,1,0,252,60,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,255,20, + 14,42,23,2,0,249,199,128,126,233,192,120,241,192,120,241, + 224,120,241,224,120,241,224,120,241,224,120,241,224,120,241,224, + 120,241,224,120,241,224,120,241,224,120,241,224,253,251,240,13, + 14,28,16,2,0,251,192,124,224,120,224,120,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,253, + 248,12,14,28,14,1,0,15,0,49,128,112,192,112,224,240, + 224,240,224,240,240,240,240,240,224,240,224,112,224,112,192,49, + 128,15,0,13,21,42,15,1,249,253,192,62,96,60,112,60, + 112,60,120,60,120,60,120,60,120,60,120,60,120,60,112,60, + 112,62,96,61,192,60,0,60,0,60,0,60,0,60,0,60, + 0,254,0,13,21,42,14,1,249,30,32,51,32,113,96,113, + 224,241,224,241,224,241,224,241,224,241,224,241,224,113,224,113, + 224,51,224,29,224,1,224,1,224,1,224,1,224,1,224,1, + 224,3,248,10,14,28,12,2,0,251,128,125,128,123,192,123, + 128,121,128,120,0,120,0,120,0,120,0,120,0,120,0,120, + 0,120,0,252,0,10,14,28,13,2,0,60,128,67,128,193, + 128,193,128,224,128,248,0,126,0,63,128,143,128,131,192,192, + 192,224,192,240,128,143,0,9,20,40,10,0,0,8,0,8, + 0,8,0,24,0,24,0,56,0,255,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,128,56,128,56,128,56,128,57, + 128,57,0,14,0,14,14,28,15,0,0,253,248,60,120,60, + 120,60,120,60,120,60,120,60,120,60,120,60,120,60,120,60, + 120,60,248,29,120,14,124,13,14,28,15,1,0,252,248,120, + 32,56,32,60,32,28,64,28,64,30,64,14,128,14,128,15, + 0,7,0,7,0,6,0,2,0,20,14,42,22,1,0,253, + 253,240,120,120,64,56,120,64,60,56,64,28,120,128,28,124, + 128,30,92,128,14,157,0,14,159,0,15,143,0,7,14,0, + 7,14,0,6,6,0,2,4,0,13,14,28,15,1,0,254, + 248,60,96,60,64,30,128,30,128,15,0,7,0,7,128,7, + 192,11,192,9,224,16,224,48,240,253,248,13,21,42,15,1, + 249,252,248,120,32,56,32,60,64,28,64,28,64,30,64,14, + 128,15,128,7,128,7,128,7,0,3,0,3,0,2,0,2, + 0,50,0,122,0,116,0,116,0,56,0,11,14,28,13,1, + 0,127,224,97,224,67,192,67,128,71,128,15,0,15,0,30, + 0,30,32,60,32,56,32,120,96,240,224,255,224,9,27,54, + 12,1,250,0,128,7,0,14,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,28,0,28,0,56,0,224,0,56, + 0,28,0,28,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,14,0,7,0,0,128,2,27,27,8,3,250,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,9,27,54,13,2,250, + 192,0,56,0,28,0,28,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,14,0,1,128,14,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,28,0, + 28,0,56,0,192,0,16,6,12,18,1,5,124,2,127,1, + 143,193,131,241,128,254,64,62,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,0,0,0,8,0,0,5, + 21,21,9,2,249,112,248,248,112,0,0,32,32,32,32,32, + 112,112,112,112,248,248,248,248,248,112,10,21,42,16,3,253, + 2,0,2,0,2,0,15,0,26,128,50,192,114,192,243,192, + 243,192,242,0,242,0,242,0,242,0,242,64,114,64,50,64, + 30,128,15,0,2,0,2,0,2,0,17,21,63,20,2,1, + 0,254,0,1,131,0,3,131,0,3,135,128,7,135,128,7, + 135,0,7,128,0,7,128,0,7,128,0,31,128,0,39,248, + 0,7,128,0,7,192,0,3,192,0,3,128,0,3,128,0, + 3,128,128,123,1,128,143,135,0,135,254,0,121,252,0,13, + 13,26,17,2,3,207,152,255,248,112,112,96,48,192,24,192, + 24,192,24,192,24,192,24,96,48,112,112,255,248,207,152,15, + 21,42,16,1,0,254,126,124,24,124,24,60,16,60,16,30, + 32,30,32,30,64,15,64,15,128,7,128,127,248,7,128,127, + 248,7,128,7,128,7,128,7,128,7,128,7,128,63,240,2, + 26,26,8,3,251,192,192,192,192,192,192,192,192,192,192,0, + 0,0,0,0,0,192,192,192,192,192,192,192,192,192,192,13, + 27,54,18,1,250,15,128,16,64,32,96,96,224,97,224,97, + 224,112,128,124,0,63,0,95,192,79,240,195,240,192,248,224, + 56,248,24,126,16,127,144,31,224,7,224,1,224,48,224,120, + 96,120,96,112,96,96,192,48,128,31,0,9,4,8,13,2, + 16,99,0,247,128,247,128,99,0,20,21,63,22,1,1,3, + 252,0,12,3,0,16,0,128,32,0,64,32,244,64,65,140, + 32,67,132,32,131,132,16,135,132,16,135,132,16,135,128,16, + 135,128,16,135,128,16,135,130,16,67,132,32,67,132,32,33, + 136,64,32,240,64,16,0,128,12,3,0,3,252,0,8,11, + 11,10,1,10,56,76,108,108,60,204,205,205,118,0,255,7, + 11,11,13,3,2,34,68,196,204,204,204,204,204,68,98,34, + 14,8,16,16,1,4,255,252,255,252,0,12,0,12,0,12, + 0,12,0,12,0,12,7,3,3,11,2,6,254,254,254,20, + 21,63,22,1,1,3,252,0,12,3,0,16,0,128,32,0, + 64,47,248,64,67,206,32,67,206,32,131,207,16,131,206,16, + 131,206,16,131,240,16,131,204,16,131,206,16,131,206,16,67, + 206,160,67,206,160,35,206,192,47,231,64,16,0,128,12,3, + 0,3,252,0,7,2,2,13,3,17,254,254,9,10,20,17, + 4,12,8,0,62,0,119,0,193,128,193,128,193,128,193,128, + 99,0,127,0,28,0,24,22,66,26,1,254,0,24,0,0, + 24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24, + 0,0,24,0,255,255,255,255,255,255,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0, + 24,0,0,0,0,0,0,0,255,255,255,255,255,255,9,12, + 24,13,2,9,62,0,71,0,199,128,231,0,111,0,12,0, + 24,0,33,0,65,128,255,0,159,0,142,0,10,13,26,13, + 2,8,62,0,67,0,195,128,227,128,99,128,3,0,60,0, + 7,0,3,128,243,192,227,128,199,128,62,0,5,5,5,12, + 5,16,24,56,112,96,192,14,22,44,17,2,248,96,192,224, + 224,241,224,241,224,225,224,225,224,224,224,224,224,96,192,64, + 196,64,196,65,252,127,124,78,56,64,0,64,0,96,0,224, + 0,240,0,240,0,112,0,96,0,13,25,50,17,2,252,31, + 248,126,96,254,96,254,96,254,96,254,96,254,96,254,96,254, + 96,126,96,62,96,6,96,6,96,6,96,6,96,6,96,6, + 96,6,96,6,96,6,96,6,96,6,96,6,96,6,96,6, + 96,4,4,4,8,2,7,96,240,240,96,5,6,6,13,4, + 249,32,64,48,24,24,240,7,12,12,13,3,9,28,252,60, + 60,60,60,60,60,60,60,60,254,8,11,11,11,2,10,60, + 102,230,231,231,231,230,102,60,0,255,7,11,11,13,3,2, + 136,68,102,102,102,102,102,102,68,140,136,22,21,63,26,3, + 0,12,1,128,28,1,0,252,3,0,60,2,0,60,6,0, + 60,12,0,60,12,0,60,24,0,60,16,0,60,48,112,60, + 32,240,60,97,240,254,65,240,0,194,240,0,130,240,1,132, + 240,3,8,240,3,15,252,6,0,240,4,0,240,12,3,248, + 21,22,66,26,3,0,0,1,128,28,1,0,252,3,0,60, + 2,0,60,6,0,60,4,0,60,12,0,60,24,0,60,24, + 0,60,51,224,60,36,112,60,108,120,60,78,120,254,206,120, + 0,134,112,1,128,192,1,1,0,3,2,8,2,4,8,6, + 15,248,4,11,240,12,8,224,22,21,63,25,2,0,62,0, + 128,67,1,128,195,129,0,227,131,0,99,130,0,3,6,0, + 60,4,0,7,8,0,3,152,0,243,208,112,227,176,112,199, + 160,240,62,97,240,0,65,240,0,194,240,0,130,240,1,132, + 240,1,7,252,3,0,240,2,0,240,6,3,252,9,22,44, + 13,2,249,24,0,60,0,60,0,60,0,24,0,0,0,28, + 0,34,0,34,0,34,0,6,0,12,0,28,0,56,0,112, + 0,113,0,240,128,240,128,240,128,240,128,113,0,62,0,19, + 27,81,22,2,1,3,0,0,3,128,0,1,128,0,0,192, + 0,0,64,0,0,0,0,0,64,0,0,96,0,0,224,0, + 0,224,0,0,240,0,1,240,0,1,240,0,1,248,0,2, + 120,0,2,120,0,2,124,0,4,60,0,4,60,0,4,62, + 0,15,254,0,8,30,0,8,31,0,16,15,0,16,15,0, + 48,15,128,254,127,224,19,27,81,21,2,1,0,24,0,0, + 56,0,0,48,0,0,96,0,0,64,0,0,0,0,0,64, + 0,0,96,0,0,224,0,0,224,0,0,240,0,1,240,0, + 1,240,0,1,248,0,2,120,0,2,120,0,2,124,0,4, + 60,0,4,60,0,8,60,0,15,254,0,8,30,0,16,30, + 0,16,15,0,16,15,0,48,15,128,254,127,224,19,27,81, + 22,2,0,0,64,0,0,224,0,1,240,0,3,24,0,4, + 4,0,0,0,0,0,64,0,0,96,0,0,224,0,0,224, + 0,0,240,0,1,240,0,1,240,0,1,248,0,2,120,0, + 2,120,0,2,124,0,4,60,0,4,60,0,4,62,0,15, + 254,0,8,30,0,8,31,0,16,15,0,16,15,0,48,15, + 128,254,127,224,19,27,81,21,2,0,0,4,0,1,200,0, + 3,248,0,4,112,0,0,0,0,0,0,0,0,64,0,0, + 96,0,0,224,0,0,224,0,0,240,0,1,240,0,1,240, + 0,1,248,0,2,120,0,2,120,0,2,124,0,4,60,0, + 4,60,0,4,60,0,15,254,0,8,30,0,24,30,0,16, + 15,0,16,15,0,48,15,128,254,127,224,19,27,81,22,2, + 0,3,12,0,7,158,0,7,158,0,3,12,0,0,0,0, + 0,0,0,0,96,0,0,96,0,0,224,0,0,240,0,0, + 240,0,1,240,0,1,248,0,1,120,0,2,120,0,2,124, + 0,2,60,0,4,60,0,4,62,0,4,30,0,15,254,0, + 8,31,0,8,15,0,16,15,0,16,15,0,48,15,128,254, + 127,224,19,27,81,21,1,0,0,240,0,1,8,0,1,8, + 0,1,8,0,0,240,0,0,0,0,0,96,0,0,96,0, + 0,240,0,0,240,0,0,240,0,1,248,0,1,248,0,1, + 120,0,1,120,0,2,124,0,2,60,0,2,60,0,4,62, + 0,4,30,0,7,254,0,8,31,0,8,15,0,8,15,0, + 24,15,0,24,15,128,254,63,224,26,21,84,28,0,0,0, + 63,255,192,0,15,131,192,0,15,129,192,0,31,128,192,0, + 23,128,192,0,55,128,64,0,39,132,64,0,103,132,0,0, + 71,140,0,0,199,156,0,0,135,252,0,1,135,156,0,1, + 7,140,0,3,7,132,64,3,255,132,64,6,7,128,64,4, + 7,128,64,12,7,128,192,12,7,129,192,28,7,131,192,255, + 63,255,192,15,28,56,18,2,250,15,230,28,30,56,30,56, + 14,120,14,120,6,248,6,248,6,248,2,248,0,248,0,248, + 0,248,0,248,2,120,2,120,2,120,4,56,4,60,12,28, + 8,6,48,1,192,1,0,1,192,0,96,0,96,4,96,3, + 192,16,27,54,19,1,1,6,0,7,0,3,0,1,128,0, + 0,0,0,255,255,30,15,30,7,30,3,30,3,30,1,30, + 17,30,16,30,48,30,48,31,240,30,48,30,48,30,17,30, + 17,30,1,30,1,30,3,30,7,30,15,255,255,16,27,54, + 19,1,1,0,56,0,120,0,96,0,192,0,0,0,0,255, + 255,30,15,30,7,30,3,30,3,30,1,30,17,30,16,30, + 48,30,48,31,240,30,48,30,48,30,17,30,17,30,1,30, + 1,30,3,30,7,30,15,255,255,16,27,54,19,1,0,0, + 128,1,192,3,96,6,56,8,0,0,0,255,255,30,15,30, + 7,30,3,30,3,30,1,30,17,30,16,30,48,30,48,31, + 240,30,48,30,48,30,17,30,17,30,1,30,1,30,3,30, + 7,30,15,255,255,16,27,54,19,1,0,6,24,15,60,15, + 60,6,24,0,0,0,0,255,255,30,15,30,7,30,3,30, + 3,30,1,30,17,30,16,30,48,30,48,31,240,30,48,30, + 48,30,17,30,17,30,1,30,1,30,3,30,7,30,15,255, + 255,9,27,54,11,1,1,96,0,112,0,56,0,8,0,0, + 0,0,0,255,128,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,255,128,10,27,54, + 12,1,1,3,128,3,128,6,0,12,0,8,0,0,0,255, + 192,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,255,192,9,27,54,11,1,0,12, + 0,28,0,62,0,99,0,0,128,0,0,255,128,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,255,128,10,27,54,13,2,0,97,128,243,192,243, + 192,97,128,0,0,0,0,255,192,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,255, + 192,19,21,63,22,2,0,255,248,0,30,14,0,30,7,0, + 30,3,128,30,3,192,30,3,192,30,3,192,30,3,224,30, + 3,224,30,3,224,255,131,224,30,3,224,30,3,224,30,3, + 224,30,3,192,30,3,192,30,3,128,30,3,128,30,7,0, + 30,14,0,255,248,0,21,26,78,22,1,1,0,226,0,1, + 254,0,2,28,0,0,0,0,0,0,0,254,15,248,31,1, + 192,31,0,128,15,128,128,15,192,128,15,192,128,11,224,128, + 11,240,128,9,248,128,8,248,128,8,252,128,8,126,128,8, + 62,128,8,31,128,8,31,128,8,15,128,8,7,128,8,7, + 128,8,3,128,28,1,128,255,129,128,17,27,81,20,2,1, + 14,0,0,7,0,0,3,0,0,1,128,0,0,0,0,0, + 128,0,7,112,0,12,24,0,24,12,0,56,14,0,120,14, + 0,120,15,0,120,15,0,248,15,128,248,15,128,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,120,15,0,120, + 15,0,120,15,0,56,14,0,24,12,0,12,24,0,7,112, + 0,17,27,81,20,2,1,0,56,0,0,112,0,0,96,0, + 0,192,0,0,0,0,0,128,0,7,112,0,12,24,0,24, + 12,0,56,14,0,120,14,0,120,15,0,120,15,0,248,15, + 128,248,15,128,248,15,128,248,15,128,248,15,128,248,15,128, + 248,15,128,120,15,0,120,15,0,120,15,0,56,14,0,24, + 12,0,12,24,0,7,112,0,17,27,81,20,2,0,0,128, + 0,1,192,0,3,96,0,6,48,0,8,8,0,0,128,0, + 7,112,0,12,24,0,24,12,0,56,14,0,120,14,0,120, + 15,0,120,15,0,248,15,128,248,15,128,248,15,128,248,15, + 128,248,15,128,248,15,128,248,15,128,120,15,0,120,15,0, + 120,15,0,56,14,0,24,12,0,12,24,0,7,112,0,17, + 27,81,20,2,0,0,8,0,7,136,0,7,240,0,8,224, + 0,0,0,0,0,128,0,7,112,0,12,24,0,24,12,0, + 56,14,0,120,14,0,120,15,0,120,15,0,248,15,128,248, + 15,128,248,15,128,248,15,128,248,15,128,248,15,128,248,15, + 128,120,15,0,120,15,0,120,15,0,56,14,0,24,12,0, + 12,24,0,7,112,0,17,27,81,20,2,0,12,48,0,30, + 120,0,30,120,0,12,48,0,0,0,0,0,128,0,7,112, + 0,12,24,0,24,12,0,56,14,0,120,14,0,120,15,0, + 120,15,0,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,248,15,128,120,15,0,120,15,0,120,15, + 0,56,14,0,24,12,0,12,24,0,7,112,0,18,19,57, + 26,4,254,64,0,64,224,0,192,112,1,128,56,3,0,28, + 6,0,14,12,0,7,24,0,3,176,0,1,224,0,0,224, + 0,1,240,0,3,56,0,6,28,0,12,12,0,24,6,0, + 48,3,0,112,1,128,224,0,192,64,0,0,17,22,66,20, + 2,0,0,128,0,7,113,128,12,27,0,24,14,0,56,14, + 0,56,14,0,120,31,0,120,31,0,248,47,128,248,111,128, + 248,79,128,248,143,128,249,15,128,251,15,128,250,15,128,124, + 15,0,124,15,0,120,14,0,56,14,0,56,12,0,108,24, + 0,199,112,0,19,27,81,22,2,1,7,0,0,3,128,0, + 1,128,0,0,192,0,0,0,0,0,0,0,255,15,224,60, + 3,128,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,60,1,0,60,1,0,60,1,0,28, + 1,0,28,2,0,14,4,0,7,248,0,19,27,81,22,2, + 1,0,28,0,0,56,0,0,48,0,0,96,0,0,0,0, + 0,0,0,255,15,224,60,3,128,60,1,0,60,1,0,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,28,1,0,28,2,0,14,4,0,7, + 248,0,19,27,81,22,2,0,0,192,0,0,224,0,1,240, + 0,6,24,0,0,4,0,0,0,0,255,15,224,60,3,128, + 60,1,0,60,1,0,60,1,0,60,1,0,60,1,0,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,60,1,0,60,1,0,60,1,0,28,3,0, + 28,2,0,14,4,0,7,248,0,19,27,81,22,2,0,3, + 12,0,7,158,0,7,158,0,3,12,0,0,0,0,0,0, + 0,255,143,224,60,3,128,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,60,1,0,60,1,0,60,1,0,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,60,1,0,28,1,0,28,2,0,14,4,0,7,248,0, + 19,27,81,21,2,1,0,28,0,0,60,0,0,48,0,0, + 96,0,0,0,0,0,0,0,255,31,224,62,7,0,30,6, + 0,30,6,0,31,4,0,15,4,0,15,136,0,7,136,0, + 7,144,0,7,208,0,3,240,0,3,224,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,7,248,0,17,21,63,19,1,0,255,192,0, + 30,0,0,30,0,0,30,0,0,31,248,0,30,14,0,30, + 15,0,30,7,128,30,7,128,30,7,128,30,7,128,30,7, + 128,30,15,0,30,14,0,31,248,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,255,192,0,14,21,42,16, + 1,0,7,192,12,96,28,112,28,112,60,112,60,112,60,112, + 60,96,61,128,60,96,60,48,60,56,60,56,60,56,60,60, + 60,60,60,56,63,184,63,184,63,48,253,224,12,21,42,14, + 1,0,96,0,112,0,56,0,24,0,12,0,4,0,0,0, + 30,0,99,128,99,192,243,192,115,192,7,192,27,192,115,192, + 115,192,243,192,243,208,243,208,243,208,125,224,12,21,42,14, + 1,0,1,128,3,128,3,0,6,0,12,0,8,0,0,0, + 30,0,99,128,99,192,243,192,115,192,35,192,15,192,51,192, + 115,192,243,192,243,208,243,208,243,208,125,224,12,21,42,14, + 1,0,12,0,12,0,30,0,19,0,33,128,64,128,0,0, + 30,0,99,128,99,192,243,192,115,192,35,192,15,192,51,192, + 115,192,243,192,243,208,243,208,243,208,125,224,12,20,40,14, + 1,0,56,128,127,128,71,0,0,0,0,0,0,0,30,0, + 99,128,99,192,243,192,115,192,3,192,31,192,51,192,115,192, + 243,192,243,208,243,208,245,208,121,224,12,20,40,14,1,0, + 97,128,243,192,243,192,97,128,0,0,0,0,30,0,99,128, + 99,192,243,192,115,192,35,192,15,192,51,192,115,192,243,192, + 243,208,243,208,243,208,125,224,12,21,42,14,1,1,30,0, + 33,0,33,0,33,0,50,0,12,0,0,0,31,0,99,128, + 97,192,241,192,113,192,33,192,15,192,49,192,97,192,225,192, + 225,208,225,208,227,208,124,224,17,14,42,19,1,0,62,60, + 0,99,230,0,99,199,0,243,199,128,115,199,128,7,199,128, + 27,255,128,115,192,0,115,192,0,243,192,128,243,192,128,243, + 225,0,242,225,0,124,62,0,10,21,42,13,1,249,15,0, + 56,128,112,192,113,192,243,192,243,128,240,0,240,0,240,0, + 240,0,112,64,112,64,56,128,31,0,4,0,8,0,6,0, + 3,0,3,0,3,0,30,0,11,21,42,13,1,0,48,0, + 48,0,56,0,24,0,12,0,0,0,0,0,15,0,51,128, + 113,192,113,192,241,192,241,224,255,224,240,0,240,0,240,32, + 112,64,112,64,56,128,15,0,11,21,42,13,1,0,1,128, + 3,128,3,128,6,0,4,0,8,0,0,0,15,0,51,128, + 113,192,113,192,241,192,241,224,255,224,240,0,240,0,240,32, + 112,64,112,64,56,128,15,0,11,21,42,13,1,0,12,0, + 14,0,30,0,27,0,49,128,64,0,0,0,15,0,51,128, + 113,192,113,192,241,192,241,224,255,224,240,0,240,0,240,32, + 112,64,112,64,56,128,15,0,11,20,40,13,1,0,49,128, + 123,192,123,192,49,128,0,0,0,0,15,0,51,128,113,192, + 113,192,241,192,241,224,255,224,240,0,240,0,240,32,112,64, + 112,64,56,128,15,0,7,21,21,9,1,0,192,224,112,48, + 24,8,0,124,60,60,60,60,60,60,60,60,60,60,60,60, + 126,6,21,21,9,2,0,12,12,28,56,32,0,0,248,120, + 120,120,120,120,120,120,120,120,120,120,120,252,8,21,21,8, + 1,0,56,56,124,110,131,0,0,252,60,60,60,60,60,60, + 60,60,60,60,60,60,254,8,20,20,9,1,0,102,255,255, + 102,0,0,124,60,60,60,60,60,60,60,60,60,60,60,60, + 126,12,21,42,14,1,0,60,64,31,128,15,0,15,0,55, + 128,3,128,3,192,31,192,49,224,113,224,112,224,240,224,240, + 240,240,240,240,240,240,224,240,224,112,224,113,192,49,192,15, + 0,13,19,38,16,2,1,30,64,63,192,35,128,0,0,0, + 0,251,192,124,224,120,224,120,240,120,240,120,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,253,248,12,21,42, + 14,1,0,48,0,56,0,56,0,12,0,6,0,2,0,0, + 0,15,0,49,128,112,192,112,224,240,224,240,224,240,240,240, + 240,240,224,240,224,112,224,112,192,49,128,15,0,12,21,42, + 14,1,0,1,128,1,192,3,128,3,0,6,0,4,0,0, + 0,15,0,49,128,112,192,112,224,240,224,240,224,240,240,240, + 240,240,224,240,224,112,224,112,192,49,128,15,0,12,21,42, + 14,1,0,6,0,14,0,15,0,27,0,48,128,32,64,0, + 0,15,0,49,128,112,192,112,224,240,224,240,224,240,240,240, + 240,240,224,240,224,112,224,112,192,49,128,15,0,12,20,40, + 14,1,0,28,64,63,192,71,128,0,0,0,0,0,0,15, + 0,49,128,112,192,112,224,240,224,240,224,240,240,240,240,240, + 224,240,224,112,224,112,192,49,128,15,0,12,20,40,14,1, + 0,49,128,123,192,123,192,49,128,0,0,0,0,15,0,49, + 128,112,192,112,224,240,224,240,224,240,240,240,240,240,224,240, + 224,112,224,112,192,49,128,15,0,24,19,57,26,1,254,0, + 24,0,0,60,0,0,60,0,0,24,0,0,0,0,0,0, + 0,0,0,0,0,0,0,255,255,255,255,255,255,0,0,0, + 0,0,0,0,0,0,0,0,0,0,24,0,0,60,0,0, + 60,0,0,60,0,0,24,0,12,14,28,14,1,0,15,16, + 49,160,113,192,112,224,241,224,243,224,242,240,244,240,248,224, + 240,224,112,224,112,192,121,128,143,0,14,21,42,15,0,0, + 24,0,28,0,12,0,6,0,3,0,0,0,0,0,253,248, + 60,120,60,120,60,120,60,120,60,120,60,120,60,120,60,120, + 60,120,60,248,60,248,29,120,14,124,14,21,42,15,0,0, + 0,192,0,192,1,192,1,128,3,0,0,0,0,0,253,248, + 60,120,60,120,60,120,60,120,60,120,60,120,60,120,60,120, + 60,120,60,120,60,248,29,120,14,124,14,21,42,15,0,0, + 3,0,7,0,7,128,12,128,24,64,0,0,0,0,253,248, + 60,120,60,120,60,120,60,120,60,120,60,120,60,120,60,120, + 60,120,60,120,60,248,29,120,14,124,14,20,40,15,0,0, + 24,192,61,224,61,224,24,192,0,0,0,0,253,248,60,120, + 60,120,60,120,60,120,60,120,60,120,60,120,60,120,60,120, + 60,120,60,248,29,120,14,124,13,28,56,15,1,249,0,192, + 0,192,1,192,3,128,2,0,0,0,0,0,252,248,120,32, + 56,32,60,64,28,64,28,64,30,64,14,128,15,128,7,128, + 7,0,7,0,3,0,3,0,2,0,2,0,50,0,124,0, + 116,0,116,0,56,0,13,26,52,15,1,250,28,0,124,0, + 188,0,60,0,60,0,60,0,60,240,63,120,60,120,60,120, + 60,120,60,120,60,112,60,112,60,96,60,192,60,128,61,0, + 62,0,60,0,60,0,60,0,60,0,60,0,48,0,192,0, + 13,27,54,15,1,249,24,96,60,240,60,240,24,96,0,0, + 0,0,254,120,120,48,56,32,60,32,28,32,30,64,30,64, + 14,64,15,128,7,128,7,128,7,0,3,0,3,0,1,0, + 2,0,50,0,122,0,116,0,116,0,56,0}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--28-280-72-72-P-153-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 21 + Calculated Max Values w=24 h=27 x= 3 y= 9 dx=26 dy= 0 ascent=22 len=75 + Font Bounding box w=77 h=36 x=-24 y=-8 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =21 descent= 0 + X Font ascent =21 descent= 0 + Max Font ascent =22 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb21n[703] U8G_SECTION(".progmem.u8g_font_osb21n") = { + 0,77,36,232,248,21,0,0,0,0,42,57,0,22,250,21, + 0,11,12,24,14,2,9,14,0,14,0,78,192,228,224,245, + 192,14,0,14,0,245,192,228,192,78,192,14,0,14,0,24, + 25,75,26,1,252,0,24,0,0,24,0,0,24,0,0,24, + 0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,0,255,255,255,255,255,255,0, + 24,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24, + 0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0, + 5,10,10,7,1,251,112,248,248,248,120,8,16,16,32,192, + 7,3,3,11,2,6,254,254,254,4,4,4,8,2,0,96, + 240,240,96,9,27,54,13,2,250,1,128,1,128,1,128,3, + 0,3,0,3,0,2,0,6,0,6,0,6,0,12,0,12, + 0,12,0,24,0,24,0,24,0,16,0,48,0,48,0,48, + 0,96,0,96,0,96,0,192,0,192,0,192,0,128,0,14, + 21,42,16,1,1,15,192,24,96,56,112,56,112,120,120,120, + 120,248,120,248,124,248,124,248,124,248,124,248,124,248,124,248, + 124,248,120,120,120,120,120,56,112,56,112,24,96,15,192,9, + 21,42,16,3,0,6,0,14,0,30,0,254,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,255,128,12, + 21,42,16,2,1,63,192,97,224,96,224,224,240,224,240,240, + 240,248,240,121,224,49,224,3,192,7,128,14,0,28,0,48, + 16,96,16,64,16,192,16,255,240,255,224,143,224,135,192,13, + 21,42,16,2,1,63,192,96,224,96,224,224,240,240,240,248, + 240,120,240,112,240,0,224,1,192,31,0,0,224,0,240,0, + 112,112,120,248,120,248,120,240,120,224,112,96,240,59,192,13, + 21,42,16,1,0,1,192,1,192,3,192,3,192,7,192,7, + 192,15,192,27,192,27,192,51,192,35,192,99,192,67,192,195, + 192,255,248,3,192,3,192,3,192,3,192,3,192,31,248,13, + 21,42,16,2,0,96,224,127,192,127,128,127,0,120,0,64, + 0,64,0,64,0,79,0,113,224,64,240,64,240,0,248,0, + 248,112,248,248,248,248,248,240,240,224,240,97,224,59,192,13, + 21,42,16,2,1,15,224,24,32,56,48,48,240,112,240,112, + 240,240,96,240,0,240,0,247,128,248,224,240,112,240,112,240, + 112,240,120,112,120,112,112,112,112,48,112,56,96,13,192,11, + 21,42,16,3,0,156,64,190,96,255,32,255,32,199,224,129, + 160,128,64,128,64,0,128,0,128,1,0,3,0,7,0,6, + 0,14,0,14,0,30,0,30,0,30,0,30,0,30,0,14, + 21,42,16,2,1,31,192,48,32,96,48,96,16,224,16,240, + 16,248,32,254,32,127,192,63,192,31,240,31,248,99,248,64, + 248,192,60,192,24,192,24,192,24,96,16,112,48,31,192,13, + 21,42,16,2,1,31,128,48,192,112,96,112,112,240,112,240, + 112,240,120,240,120,240,120,112,120,112,120,56,248,15,120,0, + 120,0,120,56,112,120,112,120,96,112,224,96,192,63,128}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--28-280-72-72-P-153-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 21, '1' Height: 21 + Calculated Max Values w=28 h=29 x= 3 y=16 dx=31 dy= 0 ascent=23 len=87 + Font Bounding box w=77 h=36 x=-24 y=-8 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =21 descent=-7 + X Font ascent =21 descent=-7 + Max Font ascent =23 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb21r[4521] U8G_SECTION(".progmem.u8g_font_osb21r") = { + 0,77,36,232,248,21,5,141,12,241,32,127,249,23,249,21, + 249,0,0,0,8,0,0,5,21,21,9,2,1,240,248,248, + 248,248,112,112,112,112,32,32,32,32,32,32,0,0,112,248, + 248,112,7,6,6,11,2,16,238,238,238,238,198,68,16,21, + 42,20,2,0,6,12,6,12,6,12,6,8,6,24,6,24, + 255,255,255,255,12,24,12,24,12,48,12,48,12,48,8,48, + 255,255,255,255,24,32,24,96,24,96,16,96,48,96,13,25, + 50,16,2,254,9,0,11,0,61,192,105,48,73,8,201,8, + 201,56,233,120,249,112,253,0,127,0,127,0,63,192,15,224, + 15,240,73,248,233,248,233,56,201,24,137,24,137,16,73,32, + 57,192,15,0,9,0,19,22,66,25,3,0,0,1,0,60, + 3,0,102,2,0,231,4,0,231,4,0,231,8,0,231,8, + 0,231,16,0,231,48,0,102,32,0,102,96,0,24,64,0, + 0,195,0,0,140,192,1,140,192,1,28,224,2,28,224,2, + 28,224,4,28,224,4,28,224,8,12,192,24,7,128,20,21, + 63,22,1,1,3,224,0,6,16,0,14,16,0,14,16,0, + 14,16,0,14,48,0,15,32,0,15,64,0,7,128,0,3, + 192,0,7,195,240,9,224,192,48,224,128,112,240,128,112,121, + 0,240,59,0,240,62,0,240,30,0,248,31,16,126,111,160, + 63,199,192,3,6,6,7,2,16,224,224,224,224,192,64,8, + 27,27,10,2,250,1,2,4,8,24,48,48,112,112,240,240, + 240,240,240,240,240,240,112,112,112,48,48,24,8,4,2,1, + 8,26,26,10,1,250,128,192,96,48,24,24,12,12,14,14, + 14,14,15,15,15,14,14,14,14,12,12,24,24,48,96,192, + 11,12,24,14,2,9,14,0,14,0,78,192,228,224,245,192, + 14,0,14,0,245,192,228,192,78,192,14,0,14,0,24,25, + 75,26,1,252,0,24,0,0,24,0,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,0, + 24,0,0,24,0,0,24,0,255,255,255,255,255,255,0,24, + 0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,0,0,24,0,0,24,0,5, + 10,10,7,1,251,112,248,248,248,120,8,16,16,32,192,7, + 3,3,11,2,6,254,254,254,4,4,4,8,2,0,96,240, + 240,96,9,27,54,13,2,250,1,128,1,128,1,128,3,0, + 3,0,3,0,2,0,6,0,6,0,6,0,12,0,12,0, + 12,0,24,0,24,0,24,0,16,0,48,0,48,0,48,0, + 96,0,96,0,96,0,192,0,192,0,192,0,128,0,14,21, + 42,16,1,1,15,192,24,96,56,112,56,112,120,120,120,120, + 248,120,248,124,248,124,248,124,248,124,248,124,248,124,248,124, + 248,120,120,120,120,120,56,112,56,112,24,96,15,192,9,21, + 42,16,3,0,6,0,14,0,30,0,254,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,255,128,12,21, + 42,16,2,1,63,192,97,224,96,224,224,240,224,240,240,240, + 248,240,121,224,49,224,3,192,7,128,14,0,28,0,48,16, + 96,16,64,16,192,16,255,240,255,224,143,224,135,192,13,21, + 42,16,2,1,63,192,96,224,96,224,224,240,240,240,248,240, + 120,240,112,240,0,224,1,192,31,0,0,224,0,240,0,112, + 112,120,248,120,248,120,240,120,224,112,96,240,59,192,13,21, + 42,16,1,0,1,192,1,192,3,192,3,192,7,192,7,192, + 15,192,27,192,27,192,51,192,35,192,99,192,67,192,195,192, + 255,248,3,192,3,192,3,192,3,192,3,192,31,248,13,21, + 42,16,2,0,96,224,127,192,127,128,127,0,120,0,64,0, + 64,0,64,0,79,0,113,224,64,240,64,240,0,248,0,248, + 112,248,248,248,248,248,240,240,224,240,97,224,59,192,13,21, + 42,16,2,1,15,224,24,32,56,48,48,240,112,240,112,240, + 240,96,240,0,240,0,247,128,248,224,240,112,240,112,240,112, + 240,120,112,120,112,112,112,112,48,112,56,96,13,192,11,21, + 42,16,3,0,156,64,190,96,255,32,255,32,199,224,129,160, + 128,64,128,64,0,128,0,128,1,0,3,0,7,0,6,0, + 14,0,14,0,30,0,30,0,30,0,30,0,30,0,14,21, + 42,16,2,1,31,192,48,32,96,48,96,16,224,16,240,16, + 248,32,254,32,127,192,63,192,31,240,31,248,99,248,64,248, + 192,60,192,24,192,24,192,24,96,16,112,48,31,192,13,21, + 42,16,2,1,31,128,48,192,112,96,112,112,240,112,240,112, + 240,120,240,120,240,120,112,120,112,120,56,248,15,120,0,120, + 0,120,56,112,120,112,120,96,112,224,96,192,63,128,4,14, + 14,8,2,0,96,240,240,240,96,0,0,0,0,0,96,240, + 240,96,5,19,19,8,2,251,96,240,240,240,96,0,0,0, + 0,112,240,248,248,248,8,16,16,32,192,21,24,72,26,2, + 252,0,0,24,0,0,56,0,0,240,0,3,192,0,15,0, + 0,28,0,0,120,0,1,224,0,7,128,0,14,0,0,60, + 0,0,240,0,0,224,0,0,120,0,0,30,0,0,7,128, + 0,1,192,0,0,240,0,0,60,0,0,15,0,0,3,128, + 0,1,224,0,0,120,0,0,24,24,8,24,26,1,4,255, + 255,255,255,255,255,0,0,0,0,0,0,0,0,0,0,0, + 0,255,255,255,255,255,255,21,24,72,26,3,252,128,0,0, + 224,0,0,120,0,0,30,0,0,7,128,0,1,192,0,0, + 240,0,0,60,0,0,15,0,0,3,128,0,1,224,0,0, + 120,0,0,56,0,0,240,0,3,192,0,15,0,0,28,0, + 0,120,0,1,224,0,7,128,0,14,0,0,60,0,0,240, + 0,0,192,0,0,9,21,42,13,2,1,126,0,71,0,135, + 128,135,128,135,128,135,128,71,0,14,0,12,0,28,0,16, + 0,48,0,34,0,34,0,34,0,28,0,0,0,12,0,30, + 0,30,0,12,0,20,22,66,22,1,0,0,32,0,3,222, + 0,12,3,0,24,0,128,48,0,192,48,112,96,97,207,96, + 99,142,48,199,142,48,199,14,48,199,14,48,207,14,48,207, + 28,48,207,28,32,207,28,96,79,60,64,103,44,128,99,199, + 0,48,0,0,24,0,0,12,2,0,3,252,0,19,21,63, + 22,2,0,0,64,0,0,96,0,0,224,0,0,224,0,0, + 240,0,1,240,0,1,240,0,1,248,0,2,120,0,2,120, + 0,2,124,0,4,60,0,4,60,0,4,62,0,15,254,0, + 8,30,0,8,31,0,16,15,0,16,15,0,48,15,128,254, + 127,224,17,21,63,19,1,0,255,240,0,30,28,0,30,14, + 0,30,15,0,30,15,0,30,15,0,30,15,0,30,14,0, + 30,14,0,30,24,0,31,224,0,30,28,0,30,15,0,30, + 7,0,30,7,128,30,7,128,30,7,128,30,7,128,30,7, + 0,30,14,0,255,248,0,15,21,42,18,2,1,15,230,28, + 30,56,30,56,14,120,14,120,6,248,6,248,6,248,2,248, + 0,248,0,248,0,248,0,248,2,248,2,120,2,120,4,56, + 4,60,12,28,8,15,240,19,21,63,21,1,0,255,248,0, + 30,14,0,30,7,0,30,3,128,30,3,192,30,3,192,30, + 3,192,30,3,224,30,3,224,30,3,224,30,3,224,30,3, + 224,30,3,224,30,3,224,30,3,192,30,3,192,30,3,192, + 30,3,128,30,7,0,30,14,0,255,248,0,16,21,42,19, + 1,0,255,255,30,15,30,7,30,3,30,3,30,1,30,17, + 30,16,30,48,30,48,31,240,30,48,30,48,30,17,30,17, + 30,1,30,1,30,3,30,7,30,15,255,255,17,21,63,19, + 1,0,255,255,128,30,15,128,30,7,128,30,3,128,30,1, + 128,30,1,128,30,17,128,30,17,128,30,48,0,30,48,0, + 31,240,0,30,48,0,30,48,0,30,16,0,30,16,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,255,192, + 0,17,22,66,20,2,0,0,128,0,7,114,0,28,30,0, + 24,14,0,56,6,0,120,6,0,120,6,0,120,2,0,248, + 2,0,248,0,0,248,0,0,248,0,0,248,255,128,248,30, + 0,248,30,0,248,30,0,120,30,0,120,30,0,56,30,0, + 56,22,0,28,34,0,14,194,0,20,21,63,22,1,0,255, + 223,240,30,3,192,30,3,192,30,3,192,30,3,192,30,3, + 192,30,3,192,30,3,192,30,3,192,30,3,192,31,255,192, + 30,3,192,30,3,192,30,3,192,30,3,192,30,3,192,30, + 3,192,30,3,192,30,3,192,30,3,192,255,223,240,9,21, + 42,11,1,0,255,128,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,255,128,13,21, + 42,15,1,0,15,248,1,224,1,224,1,224,1,224,1,224, + 1,224,1,224,1,224,1,224,1,224,1,224,1,224,113,224, + 249,224,249,224,249,192,225,192,193,192,65,128,55,0,19,21, + 63,21,1,0,255,159,192,30,7,0,30,6,0,30,12,0, + 30,8,0,30,16,0,30,32,0,30,96,0,30,240,0,31, + 240,0,31,248,0,30,248,0,30,124,0,30,124,0,30,62, + 0,30,30,0,30,31,0,30,15,0,30,15,128,30,15,128, + 255,159,224,17,21,63,19,1,0,255,128,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,1,0, + 30,1,128,30,1,128,30,1,128,30,3,128,30,3,128,30, + 7,128,30,15,128,255,255,128,23,21,63,25,1,0,254,0, + 254,30,0,240,31,1,240,31,1,240,31,1,240,31,129,240, + 23,130,240,23,194,240,23,194,240,19,196,240,19,228,240,17, + 228,240,17,228,240,17,248,240,16,248,240,16,248,240,16,248, + 240,16,112,240,16,112,240,56,48,240,254,35,254,21,21,63, + 22,1,0,254,15,248,31,1,192,31,0,128,15,128,128,15, + 192,128,15,192,128,11,224,128,11,240,128,9,248,128,8,248, + 128,8,252,128,8,126,128,8,62,128,8,31,128,8,31,128, + 8,15,128,8,7,128,8,7,128,8,3,128,28,1,128,255, + 129,128,17,22,66,20,2,0,0,128,0,7,112,0,12,24, + 0,24,12,0,56,14,0,120,14,0,120,15,0,120,15,0, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,248,15,128,120,15,0,120,15,0,120,15,0,56,14, + 0,24,12,0,12,24,0,7,112,0,17,21,63,19,1,0, + 255,248,0,30,14,0,30,7,0,30,7,128,30,7,128,30, + 7,128,30,7,128,30,7,128,30,15,0,30,14,0,31,248, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,255,192,0,17, + 29,87,20,2,249,0,128,0,7,112,0,12,24,0,24,12, + 0,56,14,0,120,14,0,120,15,0,120,15,0,248,15,128, + 248,15,128,248,15,128,248,15,128,248,15,128,248,15,128,248, + 15,128,120,15,0,120,15,0,121,142,0,58,78,0,30,124, + 0,30,120,128,6,112,128,1,224,128,0,96,128,0,113,128, + 0,127,128,0,127,0,0,63,0,0,30,0,19,21,63,21, + 1,0,255,240,0,30,28,0,30,14,0,30,15,0,30,15, + 0,30,15,0,30,15,0,30,14,0,30,28,0,31,224,0, + 30,48,0,30,28,0,30,28,0,30,28,0,30,30,0,30, + 30,0,30,30,32,30,30,32,30,30,32,30,14,64,255,207, + 192,13,22,44,17,3,0,4,0,59,144,64,240,192,112,192, + 112,224,48,240,48,248,16,254,16,127,0,63,128,31,224,15, + 240,131,240,129,248,128,120,192,56,192,24,224,24,224,16,240, + 48,159,192,17,21,63,20,2,0,255,255,128,227,207,128,195, + 199,128,195,195,128,131,195,128,131,193,128,131,193,128,3,193, + 128,3,192,128,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,31,248,0,19,21,63,22,2,0,255,15, + 224,60,3,128,60,1,0,60,1,0,60,1,0,60,1,0, + 60,1,0,60,1,0,60,1,0,60,1,0,60,1,0,60, + 1,0,60,1,0,60,1,0,60,1,0,60,1,0,60,1, + 0,28,1,0,28,2,0,14,4,0,7,248,0,20,21,63, + 22,1,0,255,207,240,30,1,128,31,1,0,31,1,0,15, + 1,0,15,130,0,15,130,0,7,130,0,7,196,0,7,196, + 0,3,196,0,3,232,0,3,232,0,1,232,0,1,248,0, + 0,240,0,0,240,0,0,240,0,0,96,0,0,96,0,0, + 96,0,28,21,84,31,2,0,255,191,231,240,62,15,129,192, + 30,7,129,128,30,7,129,128,31,7,193,0,15,7,193,0, + 15,7,193,0,15,143,226,0,7,137,226,0,7,137,226,0, + 7,201,246,0,3,208,244,0,3,208,244,0,3,240,252,0, + 1,240,124,0,1,224,120,0,1,224,120,0,0,224,56,0, + 0,192,48,0,0,192,48,0,0,64,16,0,19,21,63,20, + 1,0,255,159,192,63,6,0,31,6,0,15,4,0,15,136, + 0,7,152,0,7,208,0,3,240,0,3,224,0,1,240,0, + 1,240,0,0,248,0,1,248,0,3,124,0,2,124,0,6, + 62,0,4,62,0,8,30,0,24,31,0,24,31,128,254,63, + 224,18,21,63,21,2,0,255,31,192,62,7,0,30,6,0, + 30,4,0,31,4,0,15,4,0,15,136,0,7,136,0,7, + 144,0,7,208,0,3,240,0,3,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,1,224,0,1,224,0,1,224,0, + 1,224,0,7,248,0,15,21,42,19,2,0,127,254,120,62, + 112,124,96,124,96,248,64,248,65,240,1,240,3,224,3,224, + 7,192,7,128,15,128,31,2,31,2,62,2,62,6,124,6, + 124,14,248,30,255,254,7,26,26,11,2,251,254,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,254,10,27,54,13,1,250,192,0,96,0, + 96,0,96,0,32,0,48,0,48,0,48,0,24,0,24,0, + 24,0,12,0,12,0,12,0,4,0,6,0,6,0,6,0, + 3,0,3,0,3,0,1,128,1,128,1,128,0,128,0,192, + 0,192,7,26,26,11,2,251,254,30,30,30,30,30,30,30, + 30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30, + 30,254,12,10,20,16,2,12,6,0,7,0,15,0,29,128, + 25,128,48,192,48,224,96,96,224,48,192,48,15,2,4,15, + 0,251,255,254,255,254,5,5,5,12,2,16,192,224,112,48, + 24,12,14,28,14,1,0,30,0,99,128,99,192,243,192,115, + 192,35,192,15,192,51,192,115,192,243,192,243,208,243,208,243, + 208,125,224,13,21,42,14,0,0,252,0,60,0,60,0,60, + 0,60,0,60,0,60,0,61,192,62,96,60,112,60,112,60, + 120,60,120,60,120,60,120,60,120,60,120,60,112,52,112,38, + 96,35,192,10,14,28,13,1,0,15,0,56,128,112,192,113, + 192,243,192,243,128,240,0,240,0,240,0,240,0,112,64,112, + 64,56,128,15,0,13,21,42,15,1,0,3,224,1,224,1, + 224,1,224,1,224,1,224,1,224,29,224,51,224,113,224,113, + 224,241,224,241,224,241,224,241,224,241,224,241,224,113,224,113, + 224,51,224,29,248,11,14,28,13,1,0,15,0,51,128,113, + 192,113,192,241,192,241,224,255,224,240,0,240,0,240,32,112, + 64,112,64,56,128,15,0,11,21,42,10,1,0,7,128,12, + 192,28,192,61,224,61,192,60,0,60,0,254,0,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,0,60,0,254,0,14,21,42,16,1,249,15,24,57, + 236,121,252,121,248,121,224,121,224,57,192,57,192,15,0,112, + 0,192,0,255,0,255,224,127,240,63,248,64,56,128,24,128, + 16,128,48,96,96,31,128,14,21,42,16,1,0,252,0,60, + 0,60,0,60,0,60,0,60,0,60,0,61,224,62,112,60, + 112,60,120,60,120,60,120,60,120,60,120,60,120,60,120,60, + 120,60,120,60,120,254,252,6,21,21,8,1,0,48,120,120, + 48,0,0,0,248,120,120,120,120,120,120,120,120,120,120,120, + 120,252,8,28,28,8,255,249,6,15,15,6,0,0,0,31, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,79,255, + 239,238,206,56,14,21,42,16,1,0,252,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,248,60,96,60,64,60,128, + 60,128,61,128,63,128,63,192,61,224,60,224,60,240,60,112, + 60,120,254,252,8,21,21,9,1,0,252,60,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,255,20, + 14,42,23,2,0,249,199,128,126,233,192,120,241,192,120,241, + 224,120,241,224,120,241,224,120,241,224,120,241,224,120,241,224, + 120,241,224,120,241,224,120,241,224,120,241,224,253,251,240,13, + 14,28,16,2,0,251,192,124,224,120,224,120,240,120,240,120, + 240,120,240,120,240,120,240,120,240,120,240,120,240,120,240,253, + 248,12,14,28,14,1,0,15,0,49,128,112,192,112,224,240, + 224,240,224,240,240,240,240,240,224,240,224,112,224,112,192,49, + 128,15,0,13,21,42,15,1,249,253,192,62,96,60,112,60, + 112,60,120,60,120,60,120,60,120,60,120,60,120,60,112,60, + 112,62,96,61,192,60,0,60,0,60,0,60,0,60,0,60, + 0,254,0,13,21,42,14,1,249,30,32,51,32,113,96,113, + 224,241,224,241,224,241,224,241,224,241,224,241,224,113,224,113, + 224,51,224,29,224,1,224,1,224,1,224,1,224,1,224,1, + 224,3,248,10,14,28,12,2,0,251,128,125,128,123,192,123, + 128,121,128,120,0,120,0,120,0,120,0,120,0,120,0,120, + 0,120,0,252,0,10,14,28,13,2,0,60,128,67,128,193, + 128,193,128,224,128,248,0,126,0,63,128,143,128,131,192,192, + 192,224,192,240,128,143,0,9,20,40,10,0,0,8,0,8, + 0,8,0,24,0,24,0,56,0,255,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,128,56,128,56,128,56,128,57, + 128,57,0,14,0,14,14,28,15,0,0,253,248,60,120,60, + 120,60,120,60,120,60,120,60,120,60,120,60,120,60,120,60, + 120,60,248,29,120,14,124,13,14,28,15,1,0,252,248,120, + 32,56,32,60,32,28,64,28,64,30,64,14,128,14,128,15, + 0,7,0,7,0,6,0,2,0,20,14,42,22,1,0,253, + 253,240,120,120,64,56,120,64,60,56,64,28,120,128,28,124, + 128,30,92,128,14,157,0,14,159,0,15,143,0,7,14,0, + 7,14,0,6,6,0,2,4,0,13,14,28,15,1,0,254, + 248,60,96,60,64,30,128,30,128,15,0,7,0,7,128,7, + 192,11,192,9,224,16,224,48,240,253,248,13,21,42,15,1, + 249,252,248,120,32,56,32,60,64,28,64,28,64,30,64,14, + 128,15,128,7,128,7,128,7,0,3,0,3,0,2,0,2, + 0,50,0,122,0,116,0,116,0,56,0,11,14,28,13,1, + 0,127,224,97,224,67,192,67,128,71,128,15,0,15,0,30, + 0,30,32,60,32,56,32,120,96,240,224,255,224,9,27,54, + 12,1,250,0,128,7,0,14,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,28,0,28,0,56,0,224,0,56, + 0,28,0,28,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,14,0,7,0,0,128,2,27,27,8,3,250,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,9,27,54,13,2,250, + 192,0,56,0,28,0,28,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,14,0,1,128,14,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,28,0, + 28,0,56,0,192,0,16,6,12,18,1,5,124,2,127,1, + 143,193,131,241,128,254,64,62,255}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--34-340-72-72-P-184-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 26, '1' Height: 25 + Calculated Max Values w=34 h=33 x= 6 y=20 dx=36 dy= 0 ascent=34 len=125 + Font Bounding box w=95 h=44 x=-29 y=-10 + Calculated Min Values x=-2 y=-10 dx= 0 dy= 0 + Pure Font ascent =26 descent=-8 + X Font ascent =26 descent=-8 + Max Font ascent =34 descent=-10 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb26[12640] U8G_SECTION(".progmem.u8g_font_osb26") = { + 0,95,44,227,246,26,7,105,16,163,32,255,248,34,246,26, + 248,0,0,0,10,0,0,6,25,25,10,2,1,120,252,252, + 252,252,252,120,120,120,120,48,48,48,48,48,48,48,0,0, + 0,120,252,252,252,120,8,8,8,12,2,18,231,231,231,231, + 231,231,66,66,20,25,75,24,2,0,3,131,0,3,131,0, + 3,3,0,3,3,0,3,3,0,3,7,0,3,7,0,255, + 255,240,255,255,240,6,6,0,6,6,0,6,6,0,6,14, + 0,6,14,0,14,12,0,12,12,0,12,12,0,255,255,224, + 255,255,224,12,28,0,12,24,0,28,24,0,24,24,0,24, + 24,0,24,24,0,16,31,62,20,2,253,2,32,2,32,2, + 32,15,248,26,38,50,34,114,35,114,35,114,47,122,47,126, + 46,126,46,63,160,63,224,31,240,15,248,7,252,3,254,2, + 126,114,63,250,47,250,47,242,39,226,39,194,38,98,38,50, + 44,30,56,3,224,2,32,2,32,23,26,78,29,3,0,8, + 0,48,54,0,32,99,0,96,99,0,192,227,128,192,227,129, + 128,227,129,0,227,131,0,227,130,0,227,134,0,99,12,0, + 54,8,0,28,24,0,0,16,112,0,48,216,0,97,140,0, + 97,140,0,195,142,0,131,142,1,131,142,1,3,142,3,3, + 142,6,3,142,4,1,140,12,1,140,8,0,248,24,25,75, + 26,1,1,1,252,0,3,4,0,3,2,0,7,2,0,7, + 2,0,7,6,0,7,132,0,7,200,0,3,240,0,3,224, + 0,1,240,0,3,240,127,6,248,28,12,124,8,24,60,24, + 56,62,16,112,31,16,240,15,32,240,15,224,248,7,192,248, + 3,192,252,3,225,126,7,242,127,253,254,31,240,124,3,8, + 8,7,2,18,224,224,224,224,224,224,64,64,10,31,62,12, + 2,250,0,192,1,0,2,0,6,0,12,0,24,0,56,0, + 56,0,120,0,112,0,112,0,240,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,112,0,112,0,112,0, + 56,0,56,0,24,0,28,0,12,0,6,0,3,0,1,128, + 9,32,64,12,1,250,192,0,96,0,48,0,24,0,28,0, + 12,0,14,0,6,0,7,0,7,0,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,0,7,0,7,0,14,0,14,0,12,0,24,0,48,0, + 96,0,192,0,128,0,12,14,28,17,3,11,14,0,14,0, + 14,0,196,112,228,240,245,224,14,0,14,0,245,224,228,240, + 196,112,14,0,14,0,14,0,29,30,120,31,1,251,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,255,255,255,248,255,255,255,248,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,7,11,11,10,2,249,120,252,254,254, + 126,6,4,12,8,48,224,9,4,8,13,2,7,255,128,255, + 128,255,128,255,128,5,5,5,9,2,0,112,248,248,248,112, + 12,33,66,15,2,249,0,112,0,96,0,96,0,224,0,192, + 0,192,1,192,1,192,1,128,1,128,3,128,3,0,3,0, + 7,0,6,0,6,0,6,0,14,0,12,0,12,0,28,0, + 24,0,24,0,56,0,56,0,48,0,48,0,112,0,96,0, + 96,0,224,0,192,0,192,0,16,25,50,20,2,1,7,224, + 14,112,28,56,60,60,60,60,124,62,124,62,124,62,252,63, + 252,63,252,63,252,63,252,63,252,63,252,63,252,63,252,63, + 124,62,124,62,124,62,60,60,60,60,28,56,14,112,7,224, + 12,25,50,20,4,0,7,0,7,0,31,0,255,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,255,240,15,25,50,20,2,1,31,240, + 48,120,96,60,96,62,224,62,240,62,248,62,252,62,124,124, + 56,124,0,248,1,240,1,224,3,128,7,0,12,2,24,2, + 48,2,32,2,76,6,127,254,127,252,71,252,67,252,65,248, + 15,26,52,20,2,0,1,0,14,240,56,120,48,60,112,62, + 120,62,124,62,124,62,60,62,24,60,0,120,0,112,31,192, + 0,240,0,120,0,60,0,60,56,62,124,62,252,62,252,62, + 248,62,224,60,96,124,96,120,31,224,16,25,50,20,2,0, + 0,120,0,120,0,248,1,248,1,248,3,248,3,248,6,248, + 6,248,12,248,12,248,24,248,56,248,48,248,96,248,96,248, + 192,248,255,255,0,248,0,248,0,248,0,248,0,248,0,248, + 15,255,15,26,52,20,3,0,0,8,48,56,63,240,63,224, + 63,128,62,0,32,0,32,0,32,0,32,0,39,192,56,112, + 48,120,32,60,32,60,0,62,0,62,56,62,120,62,252,62, + 248,62,248,60,224,60,96,120,112,112,31,224,16,25,50,20, + 2,1,7,240,12,8,28,12,56,60,56,124,120,124,120,120, + 120,48,248,0,248,0,251,224,252,56,252,60,248,30,248,31, + 248,31,248,31,248,31,120,31,120,31,120,31,56,30,28,30, + 12,60,7,240,15,25,50,20,3,0,79,28,95,156,127,198, + 127,230,127,254,224,246,192,4,192,12,128,12,128,24,0,16, + 0,48,0,96,0,224,1,192,1,192,3,192,7,128,7,128, + 15,128,15,128,15,128,15,128,15,128,7,0,17,25,75,20, + 2,1,7,240,0,24,12,0,48,12,0,48,6,0,112,6, + 0,112,6,0,120,6,0,124,4,0,127,12,0,127,152,0, + 63,224,0,31,248,0,15,252,0,15,254,0,49,255,0,96, + 127,0,64,31,0,192,15,128,192,7,0,192,7,0,192,3, + 0,96,6,0,96,6,0,56,12,0,14,240,0,15,25,50, + 20,2,1,31,192,60,112,120,48,120,56,248,60,248,60,248, + 60,248,62,248,62,248,62,248,62,120,62,124,126,60,126,15, + 190,0,62,0,62,12,60,30,60,62,60,62,56,60,56,48, + 112,16,96,15,192,5,17,17,9,2,0,112,248,248,248,112, + 0,0,0,0,0,0,0,112,248,248,248,112,6,23,23,9, + 2,249,112,248,248,248,112,0,0,0,0,0,0,0,112,248, + 252,252,252,12,12,8,16,48,192,26,29,116,32,3,251,0, + 0,1,192,0,0,3,192,0,0,15,0,0,0,62,0,0, + 0,248,0,0,1,224,0,0,7,128,0,0,31,0,0,0, + 124,0,0,0,240,0,0,3,192,0,0,15,128,0,0,62, + 0,0,0,120,0,0,0,224,0,0,0,120,0,0,0,62, + 0,0,0,15,128,0,0,3,192,0,0,0,240,0,0,0, + 124,0,0,0,31,0,0,0,7,128,0,0,1,224,0,0, + 0,248,0,0,0,62,0,0,0,15,0,0,0,3,192,0, + 0,1,192,29,9,36,33,2,5,255,255,255,248,255,255,255, + 248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,255,255,255,248,255,255,255,248,26,29,116, + 32,3,251,224,0,0,0,240,0,0,0,60,0,0,0,31, + 0,0,0,7,192,0,0,1,224,0,0,0,120,0,0,0, + 62,0,0,0,15,128,0,0,3,192,0,0,0,240,0,0, + 0,124,0,0,0,31,0,0,0,7,128,0,0,1,192,0, + 0,7,128,0,0,31,0,0,0,124,0,0,0,240,0,0, + 3,192,0,0,15,128,0,0,62,0,0,0,120,0,0,1, + 224,0,0,7,192,0,0,31,0,0,0,60,0,0,0,240, + 0,0,0,224,0,0,0,11,25,50,16,2,1,63,128,67, + 192,129,224,129,224,129,224,131,224,195,192,67,192,3,128,7, + 0,6,0,12,0,8,0,24,0,17,0,17,0,17,0,14, + 0,0,0,0,0,14,0,31,0,31,0,31,0,14,0,25, + 25,100,27,1,1,0,255,192,0,3,0,48,0,6,0,24, + 0,12,0,12,0,24,0,6,0,48,30,243,0,48,114,243, + 0,96,225,227,0,97,225,225,128,227,193,225,128,195,193,225, + 128,195,193,193,128,199,131,193,128,199,131,193,128,199,131,195, + 0,199,131,195,0,231,135,130,0,103,135,134,0,99,139,204, + 0,49,240,240,0,48,0,0,0,24,0,0,0,12,0,0, + 0,7,0,96,0,1,255,192,0,23,26,78,25,1,0,0, + 16,0,0,24,0,0,56,0,0,56,0,0,60,0,0,124, + 0,0,124,0,0,126,0,0,254,0,0,254,0,0,158,0, + 1,159,0,1,159,0,1,31,0,3,15,128,3,15,128,3, + 15,128,6,7,192,7,255,192,6,7,192,4,7,224,12,3, + 224,12,3,224,28,3,240,28,3,240,255,159,254,20,25,75, + 24,2,0,255,254,0,31,7,128,31,7,192,31,3,192,31, + 3,224,31,3,224,31,3,224,31,3,224,31,3,192,31,7, + 128,31,7,0,31,248,0,31,7,0,31,3,192,31,1,224, + 31,1,224,31,1,240,31,1,240,31,1,240,31,1,240,31, + 1,240,31,1,224,31,3,192,31,7,128,255,254,0,19,25, + 75,22,2,1,3,248,64,14,6,192,30,3,192,60,3,192, + 60,1,192,124,1,192,124,0,192,124,0,192,252,0,192,252, + 0,64,252,0,64,252,0,0,252,0,0,252,0,0,252,0, + 0,252,0,0,252,0,96,124,0,64,124,0,64,124,0,64, + 60,0,192,30,0,128,30,1,0,15,3,0,3,252,0,23, + 25,75,27,2,0,255,255,0,31,3,192,31,0,224,31,0, + 240,31,0,120,31,0,120,31,0,124,31,0,124,31,0,126, + 31,0,126,31,0,126,31,0,126,31,0,126,31,0,126,31, + 0,126,31,0,126,31,0,124,31,0,124,31,0,124,31,0, + 120,31,0,120,31,0,240,31,0,224,31,3,192,255,255,0, + 20,25,75,23,2,0,255,255,224,31,1,224,31,0,224,31, + 0,224,31,0,96,31,0,96,31,0,32,31,4,32,31,4, + 0,31,12,0,31,12,0,31,28,0,31,252,0,31,28,0, + 31,12,0,31,12,48,31,4,48,31,4,48,31,0,48,31, + 0,112,31,0,112,31,0,240,31,1,240,31,3,240,255,255, + 240,20,25,75,23,2,0,255,255,240,31,3,240,31,0,240, + 31,0,240,31,0,112,31,0,112,31,0,48,31,4,48,31, + 4,48,31,12,48,31,12,0,31,28,0,31,252,0,31,28, + 0,31,12,0,31,12,0,31,4,0,31,4,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,255, + 240,0,21,26,78,24,2,0,0,32,0,3,220,32,7,3, + 96,14,1,224,28,1,224,60,0,224,60,0,224,124,0,96, + 124,0,96,252,0,32,252,0,32,252,0,0,252,0,0,252, + 63,248,252,3,224,252,3,224,252,3,224,252,3,224,124,3, + 224,124,3,224,124,3,224,60,3,224,60,3,96,30,6,96, + 14,12,96,3,184,32,25,25,100,28,2,0,255,231,255,128, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,255,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,255,231,255,128, + 11,25,50,14,2,0,255,224,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,255,224,16,25,50,18,1,0,7,255, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,120,248, + 248,248,248,248,248,248,240,248,224,240,64,240,97,224,63,192, + 24,25,75,27,2,0,255,227,252,31,0,224,31,0,192,31, + 0,128,31,1,128,31,3,0,31,6,0,31,12,0,31,28, + 0,31,28,0,31,62,0,31,126,0,31,255,0,31,191,0, + 31,31,128,31,31,128,31,15,192,31,15,192,31,7,224,31, + 7,224,31,3,240,31,1,240,31,1,248,31,1,252,255,231, + 255,20,25,75,23,2,0,255,224,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,48,31,0,48,31,0,48,31,0,48,31,0,112, + 31,0,112,31,0,240,31,0,240,31,1,240,31,3,240,255, + 255,240,27,25,100,30,2,0,255,0,63,224,15,0,63,0, + 15,128,63,0,15,128,63,0,15,128,127,0,15,192,95,0, + 15,192,95,0,11,224,95,0,11,224,223,0,11,224,159,0, + 9,240,159,0,9,240,159,0,9,241,31,0,8,249,31,0, + 8,249,31,0,8,249,31,0,8,126,31,0,8,126,31,0, + 8,62,31,0,8,62,31,0,8,60,31,0,8,28,31,0, + 24,28,31,0,60,28,31,0,255,8,255,224,24,25,75,27, + 2,0,255,3,255,31,128,124,31,128,56,15,192,16,7,224, + 16,7,240,16,7,240,16,5,248,16,5,252,16,4,252,16, + 4,126,16,4,127,16,4,63,16,4,31,144,4,31,208,4, + 15,208,4,7,240,4,7,240,4,3,240,4,1,240,4,1, + 240,4,0,240,14,0,112,31,0,48,255,192,48,20,25,75, + 24,2,1,3,252,0,6,6,0,14,7,0,28,3,128,60, + 3,192,60,3,192,124,3,224,124,3,224,124,3,224,252,3, + 240,252,3,240,252,3,240,252,3,240,252,3,240,252,3,240, + 252,3,240,124,3,224,124,3,224,124,3,224,60,3,192,60, + 3,192,28,3,128,14,7,0,6,6,0,3,252,0,20,25, + 75,24,2,0,255,254,0,31,3,128,31,3,192,31,1,224, + 31,1,240,31,1,240,31,1,240,31,1,240,31,1,240,31, + 1,224,31,3,192,31,7,128,31,254,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,255,240,0,20, + 33,99,24,2,249,3,252,0,6,6,0,14,7,0,28,3, + 128,60,3,192,60,3,192,124,3,224,124,3,224,124,3,224, + 252,3,240,252,3,240,252,3,240,252,3,240,252,3,240,252, + 3,240,252,3,240,124,3,240,124,3,224,124,3,224,60,243, + 192,61,155,192,29,11,128,15,15,128,7,15,16,3,156,16, + 0,108,16,0,12,16,0,12,48,0,14,48,0,15,240,0, + 15,224,0,7,224,0,3,128,22,25,75,25,2,0,255,252, + 0,31,7,128,31,7,192,31,3,192,31,3,224,31,3,224, + 31,3,224,31,3,224,31,3,192,31,7,192,31,15,0,31, + 248,0,31,14,0,31,15,0,31,7,128,31,7,192,31,7, + 192,31,7,192,31,7,192,31,7,196,31,7,196,31,7,196, + 31,7,196,31,3,200,255,241,248,16,25,50,21,3,1,31, + 198,32,118,96,62,224,30,224,14,240,6,248,6,252,6,255, + 2,127,128,127,192,63,240,15,248,7,252,129,254,128,254,192, + 127,192,31,192,15,224,7,224,7,240,6,248,6,220,12,135, + 120,21,25,75,25,3,0,255,255,248,248,248,248,240,248,120, + 224,248,120,192,248,56,192,248,56,128,248,24,128,248,24,128, + 248,24,128,248,24,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,15, + 255,0,23,25,75,26,2,0,255,225,254,31,0,120,31,0, + 48,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,16,15,0,32,15,0,32,7,128,64,3,192,192, + 1,255,0,24,25,75,27,2,0,255,241,255,31,128,56,15, + 128,48,15,192,48,15,192,48,7,192,32,7,224,32,7,224, + 96,3,224,64,3,240,64,1,240,192,1,240,128,1,248,128, + 0,249,128,0,249,128,0,253,0,0,125,0,0,127,0,0, + 126,0,0,62,0,0,62,0,0,60,0,0,28,0,0,28, + 0,0,24,0,34,25,125,36,1,0,255,231,255,127,192,31, + 129,248,14,0,15,128,248,14,0,15,128,252,12,0,15,192, + 124,12,0,7,192,124,12,0,7,192,124,8,0,7,224,254, + 24,0,3,224,190,24,0,3,224,190,24,0,3,241,159,16, + 0,1,241,159,48,0,1,241,31,48,0,1,249,15,32,0, + 1,251,15,160,0,0,250,15,224,0,0,254,15,224,0,0, + 254,7,192,0,0,126,7,192,0,0,124,7,192,0,0,124, + 3,192,0,0,60,3,128,0,0,56,3,128,0,0,56,1, + 128,0,0,24,1,128,0,23,25,75,26,2,0,255,231,252, + 31,193,224,15,192,192,15,193,128,7,225,128,7,227,0,3, + 242,0,3,246,0,1,244,0,1,248,0,0,248,0,0,252, + 0,0,124,0,0,62,0,0,126,0,0,127,0,0,159,0, + 1,159,128,1,15,128,3,15,192,6,7,224,4,7,224,12, + 3,240,28,7,240,255,143,254,23,25,75,26,2,0,255,225, + 254,31,128,112,31,128,96,15,128,96,15,192,64,7,192,192, + 7,224,192,7,224,128,3,225,128,3,241,0,1,241,0,1, + 251,0,0,250,0,0,254,0,0,252,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,0,124,0,3,255,128,18,25,75,22,2,0,127, + 255,192,124,15,192,120,31,128,112,31,128,96,63,0,96,63, + 0,64,126,0,64,126,0,64,252,0,0,252,0,1,248,0, + 1,240,0,3,240,0,7,224,0,7,224,0,15,192,64,15, + 192,64,31,128,64,31,128,64,63,0,192,63,1,192,126,1, + 192,126,3,192,252,15,192,255,255,192,8,31,31,14,3,250, + 255,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,255,11, + 33,66,15,2,249,192,0,192,0,224,0,96,0,96,0,96, + 0,112,0,48,0,48,0,56,0,24,0,24,0,28,0,12, + 0,12,0,12,0,14,0,6,0,6,0,7,0,3,0,3, + 0,3,0,3,128,1,128,1,128,1,192,0,192,0,192,0, + 224,0,96,0,96,0,96,8,31,31,13,2,250,255,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,15,15,15,15,255,16,12,24,20, + 2,14,1,128,3,128,3,192,7,224,14,96,14,112,28,56, + 24,56,56,28,112,12,96,14,224,7,18,2,6,18,0,250, + 255,255,192,255,255,192,6,7,7,15,3,18,224,224,240,120, + 24,12,4,15,17,34,18,2,0,15,128,49,224,96,240,112, + 240,120,240,120,240,32,240,7,240,28,240,56,240,120,240,240, + 240,240,242,240,242,240,242,121,252,62,120,15,25,50,18,1, + 0,252,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,240,61,56,62,60,62,28,62,30,62,30,60,30,60, + 30,60,30,60,30,60,30,62,30,62,30,62,28,50,60,35, + 56,33,224,13,17,34,16,2,0,7,128,28,96,56,32,120, + 112,120,240,248,240,240,224,240,64,240,0,240,0,240,0,240, + 8,120,16,120,16,56,16,28,32,7,192,17,25,75,20,2, + 0,1,252,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,15,60,0,28,188,0,56, + 124,0,120,124,0,120,60,0,240,60,0,240,60,0,240,60, + 0,240,60,0,240,60,0,240,60,0,240,60,0,120,60,0, + 120,124,0,56,124,0,28,188,0,15,63,128,13,17,34,17, + 2,0,7,128,24,224,56,240,120,240,120,240,240,120,240,120, + 240,120,255,248,240,0,240,0,240,8,120,8,120,24,56,16, + 28,32,7,192,12,25,50,12,1,0,3,192,14,112,30,112, + 28,240,60,240,60,240,60,0,60,0,255,128,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,255,128,17,25,75,19, + 1,248,7,199,0,28,249,128,60,115,128,120,123,128,120,123, + 0,120,120,0,120,120,0,120,120,0,60,112,0,28,224,0, + 7,192,0,56,0,0,96,0,0,127,192,0,127,248,0,127, + 252,0,63,254,0,63,254,0,64,14,0,128,6,0,128,6, + 0,128,4,0,64,12,0,32,56,0,31,224,0,17,25,75, + 19,1,0,252,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,120,0,61,188, + 0,61,28,0,62,30,0,62,30,0,62,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,255,127,128,8,25, + 25,11,2,0,56,124,124,124,56,0,0,0,252,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,255,10,33,66, + 10,254,248,3,128,7,192,7,192,7,192,3,128,0,0,0, + 0,0,0,31,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,99,192,243,192,243,192,243,128,231, + 128,103,0,62,0,17,25,75,19,1,0,252,0,0,60,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,127,0,60,24,0,60,16,0,60,48,0,60, + 32,0,60,64,0,60,192,0,60,224,0,61,224,0,62,240, + 0,62,240,0,60,120,0,60,124,0,60,60,0,60,62,0, + 60,62,0,255,127,128,9,25,50,11,1,0,252,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,255,128,25,17, + 68,28,1,0,252,120,120,0,61,188,158,0,61,31,30,0, + 62,31,30,0,62,30,31,0,62,30,31,0,60,30,31,0, + 60,30,31,0,60,30,31,0,60,30,31,0,60,30,31,0, + 60,30,31,0,60,30,31,0,60,30,31,0,60,30,31,0, + 60,30,31,0,255,127,191,128,17,17,51,19,1,0,252,120, + 0,61,188,0,61,28,0,62,30,0,62,30,0,62,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,255,127, + 128,14,17,34,18,2,0,7,128,28,224,56,112,120,120,120, + 120,240,60,240,60,240,60,240,60,240,60,240,60,240,60,120, + 120,120,120,56,112,24,224,7,128,15,25,50,18,1,248,252, + 240,61,56,62,60,62,28,62,30,62,30,60,30,60,30,60, + 30,60,30,60,30,62,30,62,30,62,28,62,60,61,56,60, + 240,60,0,60,0,60,0,60,0,60,0,60,0,60,0,255, + 128,16,25,50,19,2,248,15,132,28,196,56,100,120,124,120, + 60,240,60,240,60,240,60,240,60,240,60,240,60,240,60,120, + 124,120,124,56,124,28,188,15,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,1,255,12,17,34,14,1,0,252, + 224,61,112,62,240,62,240,62,240,62,96,60,0,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,255, + 0,11,17,34,14,2,0,60,64,99,64,193,192,192,192,224, + 192,240,64,252,0,127,0,63,128,31,192,135,224,129,224,192, + 224,224,96,224,96,144,192,143,128,11,24,48,13,1,0,12, + 0,12,0,12,0,12,0,12,0,28,0,60,0,255,192,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 32,60,32,60,32,60,32,60,96,60,64,31,192,15,128,17, + 17,51,19,1,0,252,126,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,62,0,60,62,0,60,62,0,60, + 94,0,30,158,0,15,31,128,17,17,51,18,0,0,255,159, + 128,30,6,0,30,4,0,30,4,0,15,12,0,15,8,0, + 15,8,0,7,152,0,7,144,0,3,208,0,3,240,0,3, + 224,0,1,224,0,1,192,0,1,192,0,0,192,0,0,128, + 0,25,17,68,26,0,0,255,63,207,128,30,15,6,0,30, + 15,6,0,30,15,4,0,15,7,132,0,15,15,132,0,7, + 143,136,0,7,139,200,0,7,147,200,0,3,211,208,0,3, + 209,240,0,3,225,240,0,1,225,224,0,1,224,224,0,1, + 192,224,0,0,192,192,0,0,192,64,0,16,17,34,18,1, + 0,255,126,62,24,30,16,31,16,15,32,15,192,7,192,3, + 192,3,192,1,224,3,240,2,240,4,248,8,120,8,124,24, + 126,254,127,17,25,75,18,0,248,255,159,128,62,6,0,30, + 4,0,31,4,0,15,8,0,15,8,0,15,136,0,7,136, + 0,7,144,0,3,208,0,3,208,0,3,224,0,1,224,0, + 1,224,0,0,224,0,0,192,0,0,64,0,0,64,0,0, + 128,0,28,128,0,60,128,0,60,128,0,57,0,0,59,0, + 0,30,0,0,13,17,34,16,1,0,127,248,112,248,96,240, + 97,224,67,224,67,192,7,192,7,128,15,128,15,0,31,8, + 30,8,60,24,124,24,120,56,248,120,255,248,11,33,66,15, + 2,249,0,32,3,192,7,0,15,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 56,0,224,0,56,0,28,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,14,0,7,0, + 3,192,0,32,2,32,32,10,4,249,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,11,33,66,15,3,249, + 128,0,240,0,60,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,15,0,7,0, + 1,224,7,0,15,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,60,0,240,0, + 128,0,19,7,21,23,2,6,62,0,64,127,128,32,255,240, + 32,135,252,32,129,255,224,128,63,192,64,15,128,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0, + 0,10,0,0,6,26,26,10,2,248,120,252,252,252,120,0, + 0,0,32,48,48,48,48,48,48,120,120,120,120,252,252,252, + 252,252,252,120,13,25,50,19,3,252,1,0,1,0,1,0, + 1,0,15,192,29,32,57,48,121,112,121,112,249,112,241,96, + 241,0,241,0,241,0,241,0,241,8,121,16,121,16,57,16, + 29,32,15,192,1,0,1,0,1,0,1,0,21,26,78,24, + 2,0,0,2,0,0,61,192,0,112,96,0,240,112,1,224, + 112,1,224,240,3,224,240,3,224,224,3,224,0,3,224,0, + 3,224,0,31,224,0,35,225,0,1,254,0,1,240,0,1, + 240,0,0,240,0,0,240,0,0,240,0,0,224,0,0,224, + 8,60,192,16,199,192,48,131,255,224,131,255,192,124,63,128, + 18,17,51,20,1,3,64,0,128,227,241,192,127,255,128,60, + 15,0,56,7,0,48,3,0,112,3,128,96,1,128,96,1, + 128,96,1,128,96,1,128,112,3,128,48,3,0,56,7,0, + 62,31,0,127,255,128,99,241,128,18,25,75,20,1,0,255, + 143,192,63,3,128,63,3,0,31,3,0,31,130,0,15,130, + 0,15,196,0,15,196,0,7,196,0,7,232,0,3,232,0, + 3,248,0,3,240,0,63,255,128,1,240,0,1,240,0,63, + 255,128,1,240,0,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,31,254,0,2,32,32,10,4,250, + 192,192,192,192,192,192,192,192,192,192,192,192,192,0,0,0, + 0,0,0,192,192,192,192,192,192,192,192,192,192,192,192,192, + 15,32,64,22,2,249,7,224,28,24,56,24,48,28,112,124, + 112,124,112,124,120,56,124,0,63,0,31,224,127,240,71,252, + 193,252,192,126,224,30,248,14,254,6,127,134,63,228,31,248, + 7,248,1,248,0,124,60,60,60,28,124,28,124,28,112,24, + 48,56,24,112,15,192,11,4,8,15,2,19,113,192,241,224, + 241,224,113,192,24,25,75,28,2,1,1,255,128,6,0,64, + 12,0,48,24,0,24,48,60,136,32,227,132,65,193,134,65, + 193,130,195,192,130,131,192,131,131,192,129,131,192,1,131,192, + 1,131,192,1,131,192,65,131,192,131,195,192,130,65,192,130, + 65,193,134,32,227,4,48,60,8,16,0,24,12,0,48,6, + 0,64,1,255,128,10,13,26,13,1,12,60,0,70,0,199, + 0,231,0,71,0,63,0,103,0,231,0,231,64,231,64,123, + 128,0,0,255,128,9,15,30,17,4,1,8,0,24,128,48, + 128,97,0,99,0,227,0,227,0,227,0,227,0,227,0,227, + 0,97,0,49,128,48,128,8,0,16,9,18,20,2,5,255, + 255,255,255,0,3,0,3,0,3,0,3,0,3,0,3,0, + 3,9,4,8,13,2,7,255,128,255,128,255,128,255,128,24, + 25,75,28,2,1,1,255,128,6,0,64,12,0,48,24,0, + 24,55,254,8,33,227,132,65,227,198,65,227,194,193,227,194, + 129,227,195,129,231,129,129,252,1,129,231,1,129,227,129,129, + 227,193,129,227,195,193,227,210,65,227,210,65,227,214,33,227, + 212,55,249,232,16,0,24,12,0,48,6,0,64,1,255,128, + 9,2,4,15,3,20,255,128,255,128,11,10,20,19,4,16, + 63,128,123,192,224,192,192,96,192,96,192,96,192,224,97,192, + 63,128,31,0,29,26,104,33,2,254,0,6,0,0,0,6, + 0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6, + 0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6, + 0,0,255,255,255,248,255,255,255,248,0,6,0,0,0,6, + 0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6, + 0,0,0,6,0,0,0,6,0,0,0,6,0,0,0,6, + 0,0,0,0,0,0,0,0,0,0,255,255,255,240,255,255, + 255,240,10,16,32,15,3,9,31,0,103,128,195,192,195,192, + 227,192,243,128,7,128,14,0,28,0,48,64,64,64,64,64, + 255,192,255,192,159,128,135,0,11,16,32,15,2,9,31,0, + 35,128,99,192,115,192,115,192,51,128,3,0,28,0,3,128, + 3,192,97,224,241,224,241,224,227,224,99,192,63,0,6,7, + 7,15,6,18,28,28,60,120,96,192,128,17,27,81,20,2, + 246,96,48,0,112,120,0,240,120,0,240,120,0,240,120,0, + 240,120,0,240,120,0,240,120,0,240,120,0,96,56,0,96, + 48,128,96,48,128,96,113,128,32,127,128,48,255,128,95,207, + 0,71,143,0,64,0,0,96,0,0,96,0,0,112,0,0, + 112,0,0,120,0,0,120,0,0,120,0,0,120,0,0,48, + 0,0,17,30,90,20,2,251,15,255,128,63,140,0,127,140, + 0,127,140,0,255,140,0,255,140,0,255,140,0,255,140,0, + 255,140,0,127,140,0,127,140,0,63,140,0,31,140,0,1, + 140,0,1,140,0,1,140,0,1,140,0,1,140,0,1,140, + 0,1,140,0,1,140,0,1,140,0,1,140,0,1,140,0, + 1,140,0,1,140,0,1,140,0,1,140,0,1,140,0,1, + 140,0,5,5,5,9,2,9,112,248,248,248,112,7,7,7, + 15,4,249,32,32,24,14,14,14,252,8,15,15,16,4,10, + 12,28,252,60,60,60,60,60,60,60,60,60,60,60,255,9, + 13,26,13,2,12,28,0,103,0,99,0,227,128,227,128,227, + 128,227,128,227,128,99,0,103,0,28,0,0,0,255,128,9, + 14,28,17,4,2,132,0,198,0,99,0,99,0,115,128,115, + 128,115,128,115,128,115,128,99,128,99,0,195,0,134,0,12, + 0,25,26,104,31,4,0,0,0,48,0,12,0,48,0,28, + 0,96,0,252,0,96,0,60,0,192,0,60,0,128,0,60, + 1,128,0,60,3,0,0,60,3,0,0,60,6,0,0,60, + 6,0,0,60,12,14,0,60,12,30,0,60,24,30,0,60, + 16,62,0,255,48,62,0,0,96,94,0,0,96,158,0,0, + 192,158,0,0,193,30,0,1,131,30,0,1,131,255,128,3, + 0,30,0,2,0,30,0,6,0,30,0,12,0,255,128,25, + 26,104,31,4,0,0,0,48,0,28,0,32,0,252,0,96, + 0,60,0,64,0,60,0,192,0,60,1,128,0,60,1,128, + 0,60,3,0,0,60,3,0,0,60,6,0,0,60,4,62, + 0,60,12,207,0,60,9,135,128,60,25,135,128,60,49,199, + 128,255,49,231,0,0,96,207,0,0,96,28,0,0,192,56, + 0,0,128,96,0,1,128,64,128,3,0,128,128,3,1,255, + 128,6,1,255,128,6,1,63,0,12,1,14,0,26,26,104, + 30,2,0,0,0,24,0,31,0,24,0,35,128,48,0,99, + 192,48,0,115,192,96,0,115,192,64,0,51,128,192,0,3, + 0,128,0,28,1,128,0,3,131,0,0,3,195,0,0,113, + 230,7,0,241,228,15,0,227,236,15,0,99,200,31,0,63, + 24,31,0,0,16,47,0,0,48,79,0,0,96,79,0,0, + 96,143,0,0,192,143,0,0,129,255,192,1,128,15,0,1, + 0,15,0,3,0,15,0,2,0,127,192,11,26,52,16,2, + 248,28,0,62,0,62,0,62,0,28,0,0,0,0,0,30, + 0,49,0,33,0,33,0,1,0,2,0,6,0,14,0,28, + 0,60,0,120,192,120,64,248,32,240,32,240,32,240,32,120, + 64,120,64,31,128,23,33,99,25,1,0,1,128,0,1,192, + 0,0,224,0,0,96,0,0,48,0,0,16,0,0,0,0, + 0,16,0,0,24,0,0,56,0,0,56,0,0,60,0,0, + 124,0,0,124,0,0,126,0,0,254,0,0,254,0,0,158, + 0,1,159,0,1,159,0,1,31,0,3,15,128,3,15,128, + 3,15,128,6,7,192,7,255,192,6,7,192,4,7,224,12, + 3,224,12,3,224,28,3,240,28,3,240,255,159,254,23,33, + 99,25,1,0,0,3,0,0,7,128,0,7,0,0,14,0, + 0,28,0,0,16,0,0,0,0,0,16,0,0,24,0,0, + 56,0,0,56,0,0,60,0,0,124,0,0,124,0,0,126, + 0,0,254,0,0,254,0,0,159,0,1,159,0,1,159,0, + 1,31,128,3,15,128,3,15,128,3,15,128,6,7,192,7, + 255,192,6,7,192,12,7,224,12,3,224,12,3,224,28,3, + 240,60,3,248,255,159,254,23,33,99,25,1,0,0,16,0, + 0,56,0,0,56,0,0,124,0,0,199,0,1,129,128,0, + 0,0,0,16,0,0,24,0,0,56,0,0,56,0,0,60, + 0,0,124,0,0,124,0,0,126,0,0,254,0,0,254,0, + 0,158,0,1,159,0,1,159,0,1,31,0,3,15,128,3, + 15,128,3,15,128,6,7,192,7,255,192,6,7,192,4,7, + 224,12,3,224,12,3,224,28,3,240,28,3,240,255,159,254, + 23,32,96,25,1,0,0,112,128,0,249,0,1,191,0,1, + 14,0,0,0,0,0,0,0,0,0,0,0,24,0,0,56, + 0,0,56,0,0,60,0,0,124,0,0,124,0,0,126,0, + 0,254,0,0,254,0,0,159,0,1,159,0,1,159,0,1, + 31,128,3,15,128,3,15,128,3,15,128,6,7,192,7,255, + 192,6,7,192,12,7,224,12,3,224,12,3,224,28,3,240, + 60,3,248,255,159,254,23,32,96,25,1,0,1,195,128,3, + 199,128,3,199,128,1,195,128,0,0,0,0,0,0,0,24, + 0,0,56,0,0,56,0,0,56,0,0,60,0,0,124,0, + 0,124,0,0,126,0,0,254,0,0,254,0,0,159,0,1, + 159,0,1,159,0,1,15,128,3,15,128,2,15,128,2,15, + 192,6,7,192,7,255,192,4,7,192,4,3,224,8,3,224, + 8,3,224,24,1,240,24,3,240,255,159,254,23,33,99,25, + 1,0,0,60,0,0,126,0,0,195,0,0,195,0,0,199, + 0,0,126,0,0,60,0,0,0,0,0,24,0,0,56,0, + 0,56,0,0,60,0,0,124,0,0,124,0,0,126,0,0, + 254,0,0,254,0,0,159,0,1,159,0,1,159,0,1,15, + 0,3,15,128,3,15,128,2,15,128,2,7,192,7,255,192, + 4,7,192,4,3,224,12,3,224,8,3,224,24,1,240,28, + 1,240,255,159,254,32,25,100,34,1,0,0,15,255,255,0, + 3,240,31,0,7,240,15,0,7,240,7,0,5,240,7,0, + 13,240,3,0,9,240,3,0,25,240,35,0,25,240,32,0, + 49,240,96,0,49,240,96,0,97,240,224,0,97,255,224,0, + 193,240,224,0,193,240,96,1,129,240,96,1,129,240,33,3, + 255,240,33,3,1,240,3,6,1,240,3,6,1,240,7,12, + 1,240,7,12,1,240,15,62,1,240,63,255,143,255,255,19, + 33,99,22,2,249,3,248,192,14,6,192,30,3,192,60,3, + 192,60,1,192,124,1,192,124,0,192,124,0,192,252,0,192, + 252,0,64,252,0,64,252,0,0,252,0,0,252,0,0,252, + 0,0,252,0,0,252,0,96,124,0,64,124,0,64,124,0, + 64,60,0,192,62,0,128,30,1,0,15,2,0,3,156,0, + 0,224,0,0,128,0,0,240,0,0,56,0,0,56,0,0, + 56,0,2,48,0,1,224,0,20,33,99,23,2,0,3,0, + 0,7,128,0,3,128,0,1,192,0,0,224,0,0,32,0, + 0,0,0,0,0,0,255,255,224,31,1,224,31,0,224,31, + 0,224,31,0,96,31,0,96,31,0,32,31,4,32,31,4, + 0,31,12,0,31,12,0,31,28,0,31,252,0,31,28,0, + 31,12,0,31,12,48,31,4,48,31,4,48,31,0,48,31, + 0,112,31,0,112,31,0,240,31,1,240,31,3,240,255,255, + 240,20,33,99,23,2,0,0,6,0,0,14,0,0,30,0, + 0,28,0,0,48,0,0,96,0,0,0,0,0,0,0,255, + 255,224,31,1,224,31,0,224,31,0,224,31,0,96,31,0, + 96,31,0,32,31,4,32,31,4,0,31,12,0,31,12,0, + 31,28,0,31,252,0,31,28,0,31,12,0,31,12,48,31, + 4,48,31,4,48,31,0,48,31,0,112,31,0,112,31,0, + 240,31,0,240,31,3,240,255,255,240,20,33,99,23,2,0, + 0,32,0,0,96,0,0,240,0,1,248,0,3,140,0,6, + 3,0,0,0,0,0,0,0,255,255,224,31,1,224,31,0, + 224,31,0,224,31,0,96,31,0,96,31,0,32,31,4,32, + 31,4,0,31,12,0,31,12,0,31,28,0,31,252,0,31, + 28,0,31,12,0,31,12,48,31,4,48,31,4,48,31,0, + 48,31,0,112,31,0,112,31,0,240,31,1,240,31,3,240, + 255,255,240,20,32,96,23,2,0,7,14,0,7,143,0,7, + 143,0,7,14,0,0,0,0,0,0,0,0,0,0,255,255, + 224,31,1,224,31,0,224,31,0,224,31,0,96,31,0,96, + 31,0,32,31,4,32,31,4,0,31,12,0,31,12,0,31, + 28,0,31,252,0,31,28,0,31,12,0,31,12,48,31,4, + 48,31,4,48,31,0,48,31,0,112,31,0,112,31,0,240, + 31,0,240,31,3,240,255,255,240,11,33,66,14,2,0,96, + 0,112,0,120,0,56,0,28,0,4,0,0,0,0,0,255, + 224,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,255, + 224,11,33,66,14,2,0,0,192,1,192,3,192,3,128,7, + 0,4,0,0,0,0,0,255,224,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,255,224,11,33,66,14,2,0,4, + 0,14,0,14,0,31,0,113,128,192,96,0,0,0,0,255, + 224,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,255, + 224,11,32,64,15,2,0,112,224,241,224,241,224,112,224,0, + 0,0,0,0,0,255,224,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,255,224,23,25,75,27,2,0,255,255,0, + 31,3,192,31,0,224,31,0,240,31,0,120,31,0,120,31, + 0,124,31,0,124,31,0,126,31,0,126,31,0,126,255,224, + 126,31,0,126,31,0,126,31,0,126,31,0,126,31,0,124, + 31,0,124,31,0,124,31,0,120,31,0,120,31,0,240,31, + 0,224,31,3,192,255,255,0,24,32,96,27,2,0,0,112, + 64,0,252,192,0,159,128,0,135,0,0,0,0,0,0,0, + 0,0,0,255,3,255,31,128,124,31,128,56,15,192,16,7, + 224,16,7,240,16,7,240,16,5,248,16,5,252,16,4,252, + 16,4,126,16,4,127,16,4,63,16,4,31,144,4,31,208, + 4,15,208,4,7,240,4,7,240,4,3,240,4,1,240,4, + 1,240,4,0,240,14,0,112,31,0,48,255,192,48,20,33, + 99,24,2,1,7,0,0,7,128,0,3,128,0,1,192,0, + 0,192,0,0,96,0,0,0,0,0,0,0,3,252,0,6, + 6,0,14,7,0,28,3,128,60,3,192,60,3,192,124,3, + 224,124,3,224,124,3,224,252,3,240,252,3,240,252,3,240, + 252,3,240,252,3,240,252,3,240,252,3,240,124,3,224,124, + 3,224,124,3,224,60,3,192,60,3,192,28,3,128,14,7, + 0,6,6,0,3,252,0,20,33,99,24,2,1,0,14,0, + 0,30,0,0,28,0,0,56,0,0,48,0,0,96,0,0, + 0,0,0,0,0,3,252,0,6,6,0,14,7,0,28,3, + 128,60,3,192,60,3,192,124,3,224,124,3,224,124,3,224, + 252,3,240,252,3,240,252,3,240,252,3,240,252,3,240,252, + 3,240,252,3,240,124,3,224,124,3,224,124,3,224,60,3, + 192,60,3,192,28,3,128,14,7,0,6,6,0,3,252,0, + 20,33,99,24,2,0,0,96,0,0,96,0,0,240,0,1, + 248,0,3,156,0,6,6,0,0,0,0,0,0,0,3,252, + 0,6,6,0,14,7,0,28,3,128,60,3,192,60,3,192, + 124,3,224,124,3,224,124,3,224,252,3,240,252,3,240,252, + 3,240,252,3,240,252,3,240,252,3,240,252,3,240,124,3, + 224,124,3,224,124,3,224,60,3,192,60,3,192,28,3,128, + 14,7,0,6,6,0,3,252,0,20,32,96,24,2,0,1, + 194,0,3,230,0,6,124,0,4,56,0,0,0,0,0,0, + 0,0,0,0,3,252,0,6,6,0,14,7,0,28,3,128, + 60,3,192,60,3,192,124,3,224,124,3,224,124,3,224,252, + 3,240,252,3,240,252,3,240,252,3,240,252,3,240,252,3, + 240,252,3,240,124,3,224,124,3,224,124,3,224,60,3,192, + 60,3,192,28,3,128,14,7,0,6,6,0,3,252,0,20, + 32,96,24,2,0,7,14,0,7,143,0,7,143,0,7,14, + 0,0,0,0,0,0,0,0,0,0,3,252,0,6,6,0, + 14,7,0,28,3,128,60,3,192,60,3,192,124,3,224,124, + 3,224,124,3,224,252,3,240,252,3,240,252,3,240,252,3, + 240,252,3,240,252,3,240,252,3,240,124,3,224,124,3,224, + 124,3,224,60,3,192,60,3,192,28,3,128,14,7,0,6, + 6,0,3,252,0,22,23,69,32,5,254,64,0,8,224,0, + 28,240,0,60,120,0,120,56,0,240,28,0,224,14,1,192, + 7,3,128,3,135,0,1,206,0,0,252,0,0,120,0,0, + 120,0,0,252,0,1,206,0,3,135,0,7,3,128,14,1, + 192,28,0,224,56,0,112,112,0,56,224,0,28,64,0,8, + 20,25,75,24,2,1,3,252,48,6,6,96,14,3,192,28, + 3,128,60,3,192,60,3,192,124,3,224,124,7,224,124,15, + 224,252,11,240,252,19,240,252,35,240,252,99,240,252,67,240, + 252,131,240,253,3,240,127,3,224,126,3,224,124,3,224,60, + 3,192,60,3,192,28,3,128,60,7,0,102,6,0,195,252, + 0,23,33,99,26,2,1,1,192,0,1,224,0,0,224,0, + 0,112,0,0,56,0,0,8,0,0,0,0,0,0,0,255, + 225,254,31,0,120,31,0,48,31,0,16,31,0,16,31,0, + 16,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,15,0,32,15,0, + 32,7,128,64,3,192,192,1,255,0,23,33,99,26,2,1, + 0,3,128,0,3,128,0,7,128,0,14,0,0,12,0,0, + 24,0,0,0,0,0,0,0,255,225,254,31,0,120,31,0, + 48,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,16,15,0,32,15,0,32,7,128,64,3,192,192, + 1,255,0,23,33,99,26,2,0,0,8,0,0,24,0,0, + 60,0,0,126,0,0,227,0,1,128,192,0,0,0,0,0, + 0,255,225,254,31,0,120,31,0,48,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,16,31,0,16,31,0,16,31,0,16,15,0,48, + 15,128,32,7,128,64,3,192,192,1,255,0,23,32,96,26, + 2,0,1,195,128,1,227,192,1,227,192,1,195,128,0,0, + 0,0,0,0,0,0,0,255,225,254,31,0,120,31,0,48, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,15,0,32,15,0,32,7,128,64,3,192,192,1, + 255,0,23,33,99,26,2,0,0,1,128,0,3,128,0,7, + 128,0,7,0,0,12,0,0,8,0,0,0,0,0,0,0, + 255,225,254,31,128,112,31,128,96,15,128,96,15,192,64,7, + 192,192,7,224,192,7,224,128,3,225,128,3,241,0,1,241, + 0,1,251,0,0,250,0,0,254,0,0,252,0,0,124,0, + 0,124,0,0,124,0,0,124,0,0,124,0,0,124,0,0, + 124,0,0,124,0,0,124,0,3,255,128,20,25,75,24,2, + 0,255,240,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,254,0,31,7,128,31,3,192,31,1,224,31,1,240,31, + 1,240,31,1,240,31,1,240,31,1,240,31,1,224,31,3, + 192,31,7,128,31,254,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,255,240,0,16,25,50,19, + 1,0,3,224,6,120,14,60,30,60,28,60,60,60,60,60, + 60,56,60,112,61,192,60,48,60,28,60,30,60,30,60,15, + 60,15,60,15,60,15,60,15,60,15,61,207,63,222,63,158, + 61,156,252,248,15,25,50,18,2,0,48,0,56,0,60,0, + 28,0,14,0,2,0,0,0,0,0,15,128,49,224,96,240, + 112,240,120,240,120,240,48,240,3,240,28,240,56,240,120,240, + 240,240,240,242,240,242,240,242,121,252,62,120,15,25,50,18, + 2,0,0,224,0,224,1,224,1,192,3,0,6,0,4,0, + 0,0,15,128,49,224,96,240,112,240,120,240,120,240,32,240, + 7,240,28,240,56,240,120,240,240,240,240,242,240,242,240,242, + 121,252,62,120,15,25,50,18,2,0,7,0,7,0,15,0, + 13,128,24,192,112,96,0,0,0,0,15,128,49,224,96,240, + 112,240,120,240,120,240,32,240,7,240,28,240,56,240,120,240, + 240,240,240,242,240,242,240,242,121,252,62,120,15,24,48,18, + 2,0,28,32,63,32,103,224,65,192,0,0,0,0,0,0, + 15,128,49,224,96,240,112,240,120,240,120,240,48,240,7,240, + 28,240,56,240,120,240,240,240,240,242,240,242,240,242,121,252, + 62,120,15,24,48,18,2,0,112,224,120,240,120,240,112,224, + 0,0,0,0,0,0,15,128,49,224,96,240,112,240,120,240, + 120,240,32,240,7,240,28,240,56,240,120,240,240,240,240,242, + 240,242,240,242,121,252,62,120,15,25,50,18,2,1,15,128, + 25,192,16,192,16,192,24,192,15,128,7,0,0,0,15,128, + 49,224,96,240,112,240,120,240,120,240,32,240,7,240,24,240, + 56,240,112,240,240,240,240,242,240,242,240,242,121,252,62,120, + 21,17,51,25,2,0,31,143,128,49,248,224,96,248,240,112, + 248,112,120,248,120,120,240,120,48,240,120,3,240,120,28,255, + 248,56,240,0,120,240,0,240,240,8,240,248,8,240,248,8, + 240,248,16,121,188,48,62,15,192,13,24,48,16,2,249,7, + 128,28,96,56,32,120,112,120,240,248,240,240,224,240,64,240, + 0,240,0,240,0,240,8,120,16,120,16,56,16,28,32,15, + 192,2,0,4,0,3,128,1,192,1,192,17,192,15,128,13, + 25,50,17,2,0,48,0,56,0,60,0,28,0,6,0,3, + 0,0,0,0,0,7,128,24,224,56,240,120,240,120,240,240, + 120,240,120,240,120,255,248,240,0,240,0,240,8,120,8,120, + 24,56,16,28,32,7,192,13,25,50,17,2,0,0,96,0, + 224,1,224,1,192,3,128,6,0,0,0,0,0,7,128,24, + 224,56,240,120,240,120,240,240,120,240,120,240,120,255,248,240, + 0,240,0,240,8,120,8,120,24,56,16,28,32,7,192,13, + 25,50,17,2,0,7,0,7,0,15,128,13,128,24,192,48, + 112,0,0,0,0,7,128,24,224,56,240,120,240,120,240,240, + 120,240,120,240,120,255,248,240,0,240,0,240,8,120,8,120, + 24,56,16,28,32,7,192,13,24,48,17,2,0,56,224,120, + 240,120,240,56,224,0,0,0,0,0,0,7,128,24,224,56, + 240,120,240,120,240,240,120,240,120,240,120,255,248,240,0,240, + 0,240,8,120,8,120,24,56,16,28,32,7,192,8,25,25, + 10,1,0,192,224,240,112,24,12,0,0,252,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,255,8,25,25,10, + 1,0,3,7,7,14,28,16,0,0,252,60,60,60,60,60, + 60,60,60,60,60,60,60,60,60,60,255,10,25,50,10,0, + 0,28,0,30,0,30,0,55,0,97,128,192,192,0,0,0, + 0,126,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,127,128,10,24,48,11,1,0,115,128,243,192,243,192,115, + 128,0,0,0,0,0,0,126,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,127,128,14,25,50,18,2,0,30, + 48,15,96,15,128,7,128,15,192,49,224,1,224,0,240,15, + 248,28,248,56,120,120,120,120,124,240,124,240,60,240,60,240, + 60,240,60,240,60,240,124,120,120,120,120,56,112,28,224,7, + 192,17,23,69,19,1,1,7,136,0,15,248,0,16,240,0, + 0,0,0,0,0,0,0,0,0,252,120,0,61,188,0,61, + 28,0,62,30,0,62,30,0,62,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,255,127,128,14,25,50,18, + 2,0,24,0,60,0,28,0,14,0,7,0,3,0,0,0, + 0,0,7,128,28,224,56,112,120,120,120,120,240,60,240,60, + 240,60,240,60,240,60,240,60,240,60,120,120,120,120,56,112, + 24,224,7,128,14,25,50,18,2,0,0,96,0,240,0,224, + 1,192,3,128,3,0,0,0,0,0,7,128,28,224,56,112, + 120,120,120,120,240,60,240,60,240,60,240,60,240,60,240,60, + 240,60,120,120,120,120,56,112,24,224,7,128,14,25,50,18, + 2,0,3,0,7,128,7,128,15,192,28,224,48,48,32,16, + 0,0,7,128,28,224,56,112,120,120,120,120,240,60,240,60, + 240,60,240,60,240,60,240,60,240,60,120,120,120,120,56,112, + 24,224,7,128,14,24,48,18,2,0,14,16,31,144,39,224, + 33,224,0,0,0,0,0,0,7,128,28,224,56,112,120,120, + 120,120,240,60,240,60,240,60,240,60,240,60,240,60,240,60, + 120,120,120,120,56,112,24,224,7,128,14,24,48,18,2,0, + 56,112,60,240,60,240,56,112,0,0,0,0,0,0,7,128, + 28,224,56,112,120,120,120,120,240,60,240,60,240,60,240,60, + 240,60,240,60,240,60,120,120,120,120,56,112,24,224,7,128, + 29,23,92,31,1,254,0,7,0,0,0,15,128,0,0,15, + 128,0,0,15,128,0,0,7,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,255, + 255,248,255,255,255,248,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7, + 0,0,0,15,128,0,0,15,128,0,0,15,128,0,0,7, + 0,0,14,17,34,18,2,0,7,132,24,232,56,120,120,120, + 120,120,240,124,240,188,241,188,243,60,246,60,244,60,248,60, + 120,120,120,120,120,112,92,96,135,128,17,25,75,19,1,0, + 12,0,0,30,0,0,14,0,0,7,0,0,3,0,0,0, + 128,0,0,0,0,0,0,0,252,126,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,62,0,60,62,0,60, + 62,0,60,94,0,30,158,0,15,31,128,17,25,75,19,1, + 0,0,48,0,0,112,0,0,112,0,0,224,0,1,192,0, + 1,0,0,0,0,0,0,0,0,252,126,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,62,0,60,62,0, + 60,62,0,60,94,0,30,158,0,15,31,128,17,25,75,19, + 1,0,1,128,0,3,192,0,3,192,0,7,224,0,12,48, + 0,24,24,0,0,0,0,0,0,0,252,126,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,62,0,60,62, + 0,60,62,0,60,94,0,30,158,0,15,31,128,17,24,72, + 19,1,0,28,112,0,30,120,0,30,120,0,28,112,0,0, + 0,0,0,0,0,0,0,0,252,126,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,62,0,60,62,0,60, + 62,0,60,94,0,30,158,0,15,31,128,17,33,99,18,0, + 248,0,28,0,0,28,0,0,60,0,0,112,0,0,96,0, + 0,192,0,0,0,0,0,0,0,255,159,128,62,6,0,30, + 4,0,31,4,0,15,4,0,15,8,0,15,136,0,7,136, + 0,7,152,0,3,208,0,3,208,0,3,240,0,1,224,0, + 1,224,0,0,224,0,0,192,0,0,64,0,0,64,0,0, + 64,0,28,128,0,60,128,0,60,128,0,57,0,0,59,0, + 0,30,0,0,15,32,64,18,1,247,12,0,28,0,124,0, + 188,0,60,0,60,0,60,0,60,120,60,252,61,30,63,30, + 62,30,62,30,62,30,60,30,60,28,60,28,60,56,60,56, + 60,48,60,96,60,192,61,0,62,0,60,0,60,0,60,0, + 60,0,60,0,60,0,48,0,192,0,17,32,96,18,0,248, + 14,28,0,15,60,0,15,60,0,14,28,0,0,0,0,0, + 0,0,0,0,0,255,159,128,62,6,0,30,4,0,30,4, + 0,15,8,0,15,8,0,15,8,0,7,136,0,7,144,0, + 3,208,0,3,208,0,3,224,0,1,224,0,1,224,0,0, + 224,0,0,192,0,0,192,0,0,64,0,0,128,0,28,128, + 0,60,128,0,61,0,0,57,0,0,59,0,0,30,0,0 + }; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--34-340-72-72-P-184-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 25 + Calculated Max Values w=29 h=33 x= 4 y=11 dx=31 dy= 0 ascent=26 len=120 + Font Bounding box w=95 h=44 x=-29 y=-10 + Calculated Min Values x= 0 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent= 0 + X Font ascent =25 descent= 0 + Max Font ascent =26 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb26n[880] U8G_SECTION(".progmem.u8g_font_osb26n") = { + 0,95,44,227,246,25,0,0,0,0,42,57,0,26,249,25, + 0,12,14,28,17,3,11,14,0,14,0,14,0,196,112,228, + 240,245,224,14,0,14,0,245,224,228,240,196,112,14,0,14, + 0,14,0,29,30,120,31,1,251,0,3,0,0,0,3,0, + 0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0, + 0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0, + 0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0, + 0,255,255,255,248,255,255,255,248,0,3,0,0,0,3,0, + 0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0, + 0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0, + 0,0,3,0,0,0,3,0,0,0,3,0,0,0,3,0, + 0,7,11,11,10,2,249,120,252,254,254,126,6,4,12,8, + 48,224,9,4,8,13,2,7,255,128,255,128,255,128,255,128, + 5,5,5,9,2,0,112,248,248,248,112,12,33,66,15,2, + 249,0,112,0,96,0,96,0,224,0,192,0,192,1,192,1, + 192,1,128,1,128,3,128,3,0,3,0,7,0,6,0,6, + 0,6,0,14,0,12,0,12,0,28,0,24,0,24,0,56, + 0,56,0,48,0,48,0,112,0,96,0,96,0,224,0,192, + 0,192,0,16,25,50,20,2,1,7,224,14,112,28,56,60, + 60,60,60,124,62,124,62,124,62,252,63,252,63,252,63,252, + 63,252,63,252,63,252,63,252,63,252,63,124,62,124,62,124, + 62,60,60,60,60,28,56,14,112,7,224,12,25,50,20,4, + 0,7,0,7,0,31,0,255,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,255,240,15,25,50,20,2,1,31,240,48,120,96,60,96, + 62,224,62,240,62,248,62,252,62,124,124,56,124,0,248,1, + 240,1,224,3,128,7,0,12,2,24,2,48,2,32,2,76, + 6,127,254,127,252,71,252,67,252,65,248,15,26,52,20,2, + 0,1,0,14,240,56,120,48,60,112,62,120,62,124,62,124, + 62,60,62,24,60,0,120,0,112,31,192,0,240,0,120,0, + 60,0,60,56,62,124,62,252,62,252,62,248,62,224,60,96, + 124,96,120,31,224,16,25,50,20,2,0,0,120,0,120,0, + 248,1,248,1,248,3,248,3,248,6,248,6,248,12,248,12, + 248,24,248,56,248,48,248,96,248,96,248,192,248,255,255,0, + 248,0,248,0,248,0,248,0,248,0,248,15,255,15,26,52, + 20,3,0,0,8,48,56,63,240,63,224,63,128,62,0,32, + 0,32,0,32,0,32,0,39,192,56,112,48,120,32,60,32, + 60,0,62,0,62,56,62,120,62,252,62,248,62,248,60,224, + 60,96,120,112,112,31,224,16,25,50,20,2,1,7,240,12, + 8,28,12,56,60,56,124,120,124,120,120,120,48,248,0,248, + 0,251,224,252,56,252,60,248,30,248,31,248,31,248,31,248, + 31,120,31,120,31,120,31,56,30,28,30,12,60,7,240,15, + 25,50,20,3,0,79,28,95,156,127,198,127,230,127,254,224, + 246,192,4,192,12,128,12,128,24,0,16,0,48,0,96,0, + 224,1,192,1,192,3,192,7,128,7,128,15,128,15,128,15, + 128,15,128,15,128,7,0,17,25,75,20,2,1,7,240,0, + 24,12,0,48,12,0,48,6,0,112,6,0,112,6,0,120, + 6,0,124,4,0,127,12,0,127,152,0,63,224,0,31,248, + 0,15,252,0,15,254,0,49,255,0,96,127,0,64,31,0, + 192,15,128,192,7,0,192,7,0,192,3,0,96,6,0,96, + 6,0,56,12,0,14,240,0,15,25,50,20,2,1,31,192, + 60,112,120,48,120,56,248,60,248,60,248,60,248,62,248,62, + 248,62,248,62,120,62,124,126,60,126,15,190,0,62,0,62, + 12,60,30,60,62,60,62,56,60,56,48,112,16,96,15,192 + }; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--34-340-72-72-P-184-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 26, '1' Height: 25 + Calculated Max Values w=34 h=33 x= 4 y=18 dx=36 dy= 0 ascent=28 len=125 + Font Bounding box w=95 h=44 x=-29 y=-10 + Calculated Min Values x=-2 y=-8 dx= 0 dy= 0 + Pure Font ascent =26 descent=-8 + X Font ascent =26 descent=-8 + Max Font ascent =28 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb26r[5950] U8G_SECTION(".progmem.u8g_font_osb26r") = { + 0,95,44,227,246,26,7,105,16,163,32,127,248,28,248,26, + 248,0,0,0,10,0,0,6,25,25,10,2,1,120,252,252, + 252,252,252,120,120,120,120,48,48,48,48,48,48,48,0,0, + 0,120,252,252,252,120,8,8,8,12,2,18,231,231,231,231, + 231,231,66,66,20,25,75,24,2,0,3,131,0,3,131,0, + 3,3,0,3,3,0,3,3,0,3,7,0,3,7,0,255, + 255,240,255,255,240,6,6,0,6,6,0,6,6,0,6,14, + 0,6,14,0,14,12,0,12,12,0,12,12,0,255,255,224, + 255,255,224,12,28,0,12,24,0,28,24,0,24,24,0,24, + 24,0,24,24,0,16,31,62,20,2,253,2,32,2,32,2, + 32,15,248,26,38,50,34,114,35,114,35,114,47,122,47,126, + 46,126,46,63,160,63,224,31,240,15,248,7,252,3,254,2, + 126,114,63,250,47,250,47,242,39,226,39,194,38,98,38,50, + 44,30,56,3,224,2,32,2,32,23,26,78,29,3,0,8, + 0,48,54,0,32,99,0,96,99,0,192,227,128,192,227,129, + 128,227,129,0,227,131,0,227,130,0,227,134,0,99,12,0, + 54,8,0,28,24,0,0,16,112,0,48,216,0,97,140,0, + 97,140,0,195,142,0,131,142,1,131,142,1,3,142,3,3, + 142,6,3,142,4,1,140,12,1,140,8,0,248,24,25,75, + 26,1,1,1,252,0,3,4,0,3,2,0,7,2,0,7, + 2,0,7,6,0,7,132,0,7,200,0,3,240,0,3,224, + 0,1,240,0,3,240,127,6,248,28,12,124,8,24,60,24, + 56,62,16,112,31,16,240,15,32,240,15,224,248,7,192,248, + 3,192,252,3,225,126,7,242,127,253,254,31,240,124,3,8, + 8,7,2,18,224,224,224,224,224,224,64,64,10,31,62,12, + 2,250,0,192,1,0,2,0,6,0,12,0,24,0,56,0, + 56,0,120,0,112,0,112,0,240,0,240,0,240,0,240,0, + 240,0,240,0,240,0,240,0,240,0,112,0,112,0,112,0, + 56,0,56,0,24,0,28,0,12,0,6,0,3,0,1,128, + 9,32,64,12,1,250,192,0,96,0,48,0,24,0,28,0, + 12,0,14,0,6,0,7,0,7,0,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,0,7,0,7,0,14,0,14,0,12,0,24,0,48,0, + 96,0,192,0,128,0,12,14,28,17,3,11,14,0,14,0, + 14,0,196,112,228,240,245,224,14,0,14,0,245,224,228,240, + 196,112,14,0,14,0,14,0,29,30,120,31,1,251,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,255,255,255,248,255,255,255,248,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,7,11,11,10,2,249,120,252,254,254, + 126,6,4,12,8,48,224,9,4,8,13,2,7,255,128,255, + 128,255,128,255,128,5,5,5,9,2,0,112,248,248,248,112, + 12,33,66,15,2,249,0,112,0,96,0,96,0,224,0,192, + 0,192,1,192,1,192,1,128,1,128,3,128,3,0,3,0, + 7,0,6,0,6,0,6,0,14,0,12,0,12,0,28,0, + 24,0,24,0,56,0,56,0,48,0,48,0,112,0,96,0, + 96,0,224,0,192,0,192,0,16,25,50,20,2,1,7,224, + 14,112,28,56,60,60,60,60,124,62,124,62,124,62,252,63, + 252,63,252,63,252,63,252,63,252,63,252,63,252,63,252,63, + 124,62,124,62,124,62,60,60,60,60,28,56,14,112,7,224, + 12,25,50,20,4,0,7,0,7,0,31,0,255,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,255,240,15,25,50,20,2,1,31,240, + 48,120,96,60,96,62,224,62,240,62,248,62,252,62,124,124, + 56,124,0,248,1,240,1,224,3,128,7,0,12,2,24,2, + 48,2,32,2,76,6,127,254,127,252,71,252,67,252,65,248, + 15,26,52,20,2,0,1,0,14,240,56,120,48,60,112,62, + 120,62,124,62,124,62,60,62,24,60,0,120,0,112,31,192, + 0,240,0,120,0,60,0,60,56,62,124,62,252,62,252,62, + 248,62,224,60,96,124,96,120,31,224,16,25,50,20,2,0, + 0,120,0,120,0,248,1,248,1,248,3,248,3,248,6,248, + 6,248,12,248,12,248,24,248,56,248,48,248,96,248,96,248, + 192,248,255,255,0,248,0,248,0,248,0,248,0,248,0,248, + 15,255,15,26,52,20,3,0,0,8,48,56,63,240,63,224, + 63,128,62,0,32,0,32,0,32,0,32,0,39,192,56,112, + 48,120,32,60,32,60,0,62,0,62,56,62,120,62,252,62, + 248,62,248,60,224,60,96,120,112,112,31,224,16,25,50,20, + 2,1,7,240,12,8,28,12,56,60,56,124,120,124,120,120, + 120,48,248,0,248,0,251,224,252,56,252,60,248,30,248,31, + 248,31,248,31,248,31,120,31,120,31,120,31,56,30,28,30, + 12,60,7,240,15,25,50,20,3,0,79,28,95,156,127,198, + 127,230,127,254,224,246,192,4,192,12,128,12,128,24,0,16, + 0,48,0,96,0,224,1,192,1,192,3,192,7,128,7,128, + 15,128,15,128,15,128,15,128,15,128,7,0,17,25,75,20, + 2,1,7,240,0,24,12,0,48,12,0,48,6,0,112,6, + 0,112,6,0,120,6,0,124,4,0,127,12,0,127,152,0, + 63,224,0,31,248,0,15,252,0,15,254,0,49,255,0,96, + 127,0,64,31,0,192,15,128,192,7,0,192,7,0,192,3, + 0,96,6,0,96,6,0,56,12,0,14,240,0,15,25,50, + 20,2,1,31,192,60,112,120,48,120,56,248,60,248,60,248, + 60,248,62,248,62,248,62,248,62,120,62,124,126,60,126,15, + 190,0,62,0,62,12,60,30,60,62,60,62,56,60,56,48, + 112,16,96,15,192,5,17,17,9,2,0,112,248,248,248,112, + 0,0,0,0,0,0,0,112,248,248,248,112,6,23,23,9, + 2,249,112,248,248,248,112,0,0,0,0,0,0,0,112,248, + 252,252,252,12,12,8,16,48,192,26,29,116,32,3,251,0, + 0,1,192,0,0,3,192,0,0,15,0,0,0,62,0,0, + 0,248,0,0,1,224,0,0,7,128,0,0,31,0,0,0, + 124,0,0,0,240,0,0,3,192,0,0,15,128,0,0,62, + 0,0,0,120,0,0,0,224,0,0,0,120,0,0,0,62, + 0,0,0,15,128,0,0,3,192,0,0,0,240,0,0,0, + 124,0,0,0,31,0,0,0,7,128,0,0,1,224,0,0, + 0,248,0,0,0,62,0,0,0,15,0,0,0,3,192,0, + 0,1,192,29,9,36,33,2,5,255,255,255,248,255,255,255, + 248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,255,255,255,248,255,255,255,248,26,29,116, + 32,3,251,224,0,0,0,240,0,0,0,60,0,0,0,31, + 0,0,0,7,192,0,0,1,224,0,0,0,120,0,0,0, + 62,0,0,0,15,128,0,0,3,192,0,0,0,240,0,0, + 0,124,0,0,0,31,0,0,0,7,128,0,0,1,192,0, + 0,7,128,0,0,31,0,0,0,124,0,0,0,240,0,0, + 3,192,0,0,15,128,0,0,62,0,0,0,120,0,0,1, + 224,0,0,7,192,0,0,31,0,0,0,60,0,0,0,240, + 0,0,0,224,0,0,0,11,25,50,16,2,1,63,128,67, + 192,129,224,129,224,129,224,131,224,195,192,67,192,3,128,7, + 0,6,0,12,0,8,0,24,0,17,0,17,0,17,0,14, + 0,0,0,0,0,14,0,31,0,31,0,31,0,14,0,25, + 25,100,27,1,1,0,255,192,0,3,0,48,0,6,0,24, + 0,12,0,12,0,24,0,6,0,48,30,243,0,48,114,243, + 0,96,225,227,0,97,225,225,128,227,193,225,128,195,193,225, + 128,195,193,193,128,199,131,193,128,199,131,193,128,199,131,195, + 0,199,131,195,0,231,135,130,0,103,135,134,0,99,139,204, + 0,49,240,240,0,48,0,0,0,24,0,0,0,12,0,0, + 0,7,0,96,0,1,255,192,0,23,26,78,25,1,0,0, + 16,0,0,24,0,0,56,0,0,56,0,0,60,0,0,124, + 0,0,124,0,0,126,0,0,254,0,0,254,0,0,158,0, + 1,159,0,1,159,0,1,31,0,3,15,128,3,15,128,3, + 15,128,6,7,192,7,255,192,6,7,192,4,7,224,12,3, + 224,12,3,224,28,3,240,28,3,240,255,159,254,20,25,75, + 24,2,0,255,254,0,31,7,128,31,7,192,31,3,192,31, + 3,224,31,3,224,31,3,224,31,3,224,31,3,192,31,7, + 128,31,7,0,31,248,0,31,7,0,31,3,192,31,1,224, + 31,1,224,31,1,240,31,1,240,31,1,240,31,1,240,31, + 1,240,31,1,224,31,3,192,31,7,128,255,254,0,19,25, + 75,22,2,1,3,248,64,14,6,192,30,3,192,60,3,192, + 60,1,192,124,1,192,124,0,192,124,0,192,252,0,192,252, + 0,64,252,0,64,252,0,0,252,0,0,252,0,0,252,0, + 0,252,0,0,252,0,96,124,0,64,124,0,64,124,0,64, + 60,0,192,30,0,128,30,1,0,15,3,0,3,252,0,23, + 25,75,27,2,0,255,255,0,31,3,192,31,0,224,31,0, + 240,31,0,120,31,0,120,31,0,124,31,0,124,31,0,126, + 31,0,126,31,0,126,31,0,126,31,0,126,31,0,126,31, + 0,126,31,0,126,31,0,124,31,0,124,31,0,124,31,0, + 120,31,0,120,31,0,240,31,0,224,31,3,192,255,255,0, + 20,25,75,23,2,0,255,255,224,31,1,224,31,0,224,31, + 0,224,31,0,96,31,0,96,31,0,32,31,4,32,31,4, + 0,31,12,0,31,12,0,31,28,0,31,252,0,31,28,0, + 31,12,0,31,12,48,31,4,48,31,4,48,31,0,48,31, + 0,112,31,0,112,31,0,240,31,1,240,31,3,240,255,255, + 240,20,25,75,23,2,0,255,255,240,31,3,240,31,0,240, + 31,0,240,31,0,112,31,0,112,31,0,48,31,4,48,31, + 4,48,31,12,48,31,12,0,31,28,0,31,252,0,31,28, + 0,31,12,0,31,12,0,31,4,0,31,4,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,255, + 240,0,21,26,78,24,2,0,0,32,0,3,220,32,7,3, + 96,14,1,224,28,1,224,60,0,224,60,0,224,124,0,96, + 124,0,96,252,0,32,252,0,32,252,0,0,252,0,0,252, + 63,248,252,3,224,252,3,224,252,3,224,252,3,224,124,3, + 224,124,3,224,124,3,224,60,3,224,60,3,96,30,6,96, + 14,12,96,3,184,32,25,25,100,28,2,0,255,231,255,128, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,255,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,31,0,248,0, + 31,0,248,0,31,0,248,0,31,0,248,0,255,231,255,128, + 11,25,50,14,2,0,255,224,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,255,224,16,25,50,18,1,0,7,255, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,120,248, + 248,248,248,248,248,248,240,248,224,240,64,240,97,224,63,192, + 24,25,75,27,2,0,255,227,252,31,0,224,31,0,192,31, + 0,128,31,1,128,31,3,0,31,6,0,31,12,0,31,28, + 0,31,28,0,31,62,0,31,126,0,31,255,0,31,191,0, + 31,31,128,31,31,128,31,15,192,31,15,192,31,7,224,31, + 7,224,31,3,240,31,1,240,31,1,248,31,1,252,255,231, + 255,20,25,75,23,2,0,255,224,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,48,31,0,48,31,0,48,31,0,48,31,0,112, + 31,0,112,31,0,240,31,0,240,31,1,240,31,3,240,255, + 255,240,27,25,100,30,2,0,255,0,63,224,15,0,63,0, + 15,128,63,0,15,128,63,0,15,128,127,0,15,192,95,0, + 15,192,95,0,11,224,95,0,11,224,223,0,11,224,159,0, + 9,240,159,0,9,240,159,0,9,241,31,0,8,249,31,0, + 8,249,31,0,8,249,31,0,8,126,31,0,8,126,31,0, + 8,62,31,0,8,62,31,0,8,60,31,0,8,28,31,0, + 24,28,31,0,60,28,31,0,255,8,255,224,24,25,75,27, + 2,0,255,3,255,31,128,124,31,128,56,15,192,16,7,224, + 16,7,240,16,7,240,16,5,248,16,5,252,16,4,252,16, + 4,126,16,4,127,16,4,63,16,4,31,144,4,31,208,4, + 15,208,4,7,240,4,7,240,4,3,240,4,1,240,4,1, + 240,4,0,240,14,0,112,31,0,48,255,192,48,20,25,75, + 24,2,1,3,252,0,6,6,0,14,7,0,28,3,128,60, + 3,192,60,3,192,124,3,224,124,3,224,124,3,224,252,3, + 240,252,3,240,252,3,240,252,3,240,252,3,240,252,3,240, + 252,3,240,124,3,224,124,3,224,124,3,224,60,3,192,60, + 3,192,28,3,128,14,7,0,6,6,0,3,252,0,20,25, + 75,24,2,0,255,254,0,31,3,128,31,3,192,31,1,224, + 31,1,240,31,1,240,31,1,240,31,1,240,31,1,240,31, + 1,224,31,3,192,31,7,128,31,254,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,255,240,0,20, + 33,99,24,2,249,3,252,0,6,6,0,14,7,0,28,3, + 128,60,3,192,60,3,192,124,3,224,124,3,224,124,3,224, + 252,3,240,252,3,240,252,3,240,252,3,240,252,3,240,252, + 3,240,252,3,240,124,3,240,124,3,224,124,3,224,60,243, + 192,61,155,192,29,11,128,15,15,128,7,15,16,3,156,16, + 0,108,16,0,12,16,0,12,48,0,14,48,0,15,240,0, + 15,224,0,7,224,0,3,128,22,25,75,25,2,0,255,252, + 0,31,7,128,31,7,192,31,3,192,31,3,224,31,3,224, + 31,3,224,31,3,224,31,3,192,31,7,192,31,15,0,31, + 248,0,31,14,0,31,15,0,31,7,128,31,7,192,31,7, + 192,31,7,192,31,7,192,31,7,196,31,7,196,31,7,196, + 31,7,196,31,3,200,255,241,248,16,25,50,21,3,1,31, + 198,32,118,96,62,224,30,224,14,240,6,248,6,252,6,255, + 2,127,128,127,192,63,240,15,248,7,252,129,254,128,254,192, + 127,192,31,192,15,224,7,224,7,240,6,248,6,220,12,135, + 120,21,25,75,25,3,0,255,255,248,248,248,248,240,248,120, + 224,248,120,192,248,56,192,248,56,128,248,24,128,248,24,128, + 248,24,128,248,24,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,248,0,0,248,0,0,248,0,15, + 255,0,23,25,75,26,2,0,255,225,254,31,0,120,31,0, + 48,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,16,15,0,32,15,0,32,7,128,64,3,192,192, + 1,255,0,24,25,75,27,2,0,255,241,255,31,128,56,15, + 128,48,15,192,48,15,192,48,7,192,32,7,224,32,7,224, + 96,3,224,64,3,240,64,1,240,192,1,240,128,1,248,128, + 0,249,128,0,249,128,0,253,0,0,125,0,0,127,0,0, + 126,0,0,62,0,0,62,0,0,60,0,0,28,0,0,28, + 0,0,24,0,34,25,125,36,1,0,255,231,255,127,192,31, + 129,248,14,0,15,128,248,14,0,15,128,252,12,0,15,192, + 124,12,0,7,192,124,12,0,7,192,124,8,0,7,224,254, + 24,0,3,224,190,24,0,3,224,190,24,0,3,241,159,16, + 0,1,241,159,48,0,1,241,31,48,0,1,249,15,32,0, + 1,251,15,160,0,0,250,15,224,0,0,254,15,224,0,0, + 254,7,192,0,0,126,7,192,0,0,124,7,192,0,0,124, + 3,192,0,0,60,3,128,0,0,56,3,128,0,0,56,1, + 128,0,0,24,1,128,0,23,25,75,26,2,0,255,231,252, + 31,193,224,15,192,192,15,193,128,7,225,128,7,227,0,3, + 242,0,3,246,0,1,244,0,1,248,0,0,248,0,0,252, + 0,0,124,0,0,62,0,0,126,0,0,127,0,0,159,0, + 1,159,128,1,15,128,3,15,192,6,7,224,4,7,224,12, + 3,240,28,7,240,255,143,254,23,25,75,26,2,0,255,225, + 254,31,128,112,31,128,96,15,128,96,15,192,64,7,192,192, + 7,224,192,7,224,128,3,225,128,3,241,0,1,241,0,1, + 251,0,0,250,0,0,254,0,0,252,0,0,124,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,124,0,0,124,0, + 0,124,0,0,124,0,3,255,128,18,25,75,22,2,0,127, + 255,192,124,15,192,120,31,128,112,31,128,96,63,0,96,63, + 0,64,126,0,64,126,0,64,252,0,0,252,0,1,248,0, + 1,240,0,3,240,0,7,224,0,7,224,0,15,192,64,15, + 192,64,31,128,64,31,128,64,63,0,192,63,1,192,126,1, + 192,126,3,192,252,15,192,255,255,192,8,31,31,14,3,250, + 255,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,240,240,255,11, + 33,66,15,2,249,192,0,192,0,224,0,96,0,96,0,96, + 0,112,0,48,0,48,0,56,0,24,0,24,0,28,0,12, + 0,12,0,12,0,14,0,6,0,6,0,7,0,3,0,3, + 0,3,0,3,128,1,128,1,128,1,192,0,192,0,192,0, + 224,0,96,0,96,0,96,8,31,31,13,2,250,255,15,15, + 15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15, + 15,15,15,15,15,15,15,15,15,15,15,255,16,12,24,20, + 2,14,1,128,3,128,3,192,7,224,14,96,14,112,28,56, + 24,56,56,28,112,12,96,14,224,7,18,2,6,18,0,250, + 255,255,192,255,255,192,6,7,7,15,3,18,224,224,240,120, + 24,12,4,15,17,34,18,2,0,15,128,49,224,96,240,112, + 240,120,240,120,240,32,240,7,240,28,240,56,240,120,240,240, + 240,240,242,240,242,240,242,121,252,62,120,15,25,50,18,1, + 0,252,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 0,60,240,61,56,62,60,62,28,62,30,62,30,60,30,60, + 30,60,30,60,30,60,30,62,30,62,30,62,28,50,60,35, + 56,33,224,13,17,34,16,2,0,7,128,28,96,56,32,120, + 112,120,240,248,240,240,224,240,64,240,0,240,0,240,0,240, + 8,120,16,120,16,56,16,28,32,7,192,17,25,75,20,2, + 0,1,252,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,15,60,0,28,188,0,56, + 124,0,120,124,0,120,60,0,240,60,0,240,60,0,240,60, + 0,240,60,0,240,60,0,240,60,0,240,60,0,120,60,0, + 120,124,0,56,124,0,28,188,0,15,63,128,13,17,34,17, + 2,0,7,128,24,224,56,240,120,240,120,240,240,120,240,120, + 240,120,255,248,240,0,240,0,240,8,120,8,120,24,56,16, + 28,32,7,192,12,25,50,12,1,0,3,192,14,112,30,112, + 28,240,60,240,60,240,60,0,60,0,255,128,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,255,128,17,25,75,19, + 1,248,7,199,0,28,249,128,60,115,128,120,123,128,120,123, + 0,120,120,0,120,120,0,120,120,0,60,112,0,28,224,0, + 7,192,0,56,0,0,96,0,0,127,192,0,127,248,0,127, + 252,0,63,254,0,63,254,0,64,14,0,128,6,0,128,6, + 0,128,4,0,64,12,0,32,56,0,31,224,0,17,25,75, + 19,1,0,252,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,120,0,61,188, + 0,61,28,0,62,30,0,62,30,0,62,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,255,127,128,8,25, + 25,11,2,0,56,124,124,124,56,0,0,0,252,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,255,10,33,66, + 10,254,248,3,128,7,192,7,192,7,192,3,128,0,0,0, + 0,0,0,31,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,99,192,243,192,243,192,243,128,231, + 128,103,0,62,0,17,25,75,19,1,0,252,0,0,60,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,127,0,60,24,0,60,16,0,60,48,0,60, + 32,0,60,64,0,60,192,0,60,224,0,61,224,0,62,240, + 0,62,240,0,60,120,0,60,124,0,60,60,0,60,62,0, + 60,62,0,255,127,128,9,25,50,11,1,0,252,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,255,128,25,17, + 68,28,1,0,252,120,120,0,61,188,158,0,61,31,30,0, + 62,31,30,0,62,30,31,0,62,30,31,0,60,30,31,0, + 60,30,31,0,60,30,31,0,60,30,31,0,60,30,31,0, + 60,30,31,0,60,30,31,0,60,30,31,0,60,30,31,0, + 60,30,31,0,255,127,191,128,17,17,51,19,1,0,252,120, + 0,61,188,0,61,28,0,62,30,0,62,30,0,62,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,255,127, + 128,14,17,34,18,2,0,7,128,28,224,56,112,120,120,120, + 120,240,60,240,60,240,60,240,60,240,60,240,60,240,60,120, + 120,120,120,56,112,24,224,7,128,15,25,50,18,1,248,252, + 240,61,56,62,60,62,28,62,30,62,30,60,30,60,30,60, + 30,60,30,60,30,62,30,62,30,62,28,62,60,61,56,60, + 240,60,0,60,0,60,0,60,0,60,0,60,0,60,0,255, + 128,16,25,50,19,2,248,15,132,28,196,56,100,120,124,120, + 60,240,60,240,60,240,60,240,60,240,60,240,60,240,60,120, + 124,120,124,56,124,28,188,15,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,1,255,12,17,34,14,1,0,252, + 224,61,112,62,240,62,240,62,240,62,96,60,0,60,0,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,255, + 0,11,17,34,14,2,0,60,64,99,64,193,192,192,192,224, + 192,240,64,252,0,127,0,63,128,31,192,135,224,129,224,192, + 224,224,96,224,96,144,192,143,128,11,24,48,13,1,0,12, + 0,12,0,12,0,12,0,12,0,28,0,60,0,255,192,60, + 0,60,0,60,0,60,0,60,0,60,0,60,0,60,0,60, + 32,60,32,60,32,60,32,60,96,60,64,31,192,15,128,17, + 17,51,19,1,0,252,126,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,62,0,60,62,0,60,62,0,60, + 94,0,30,158,0,15,31,128,17,17,51,18,0,0,255,159, + 128,30,6,0,30,4,0,30,4,0,15,12,0,15,8,0, + 15,8,0,7,152,0,7,144,0,3,208,0,3,240,0,3, + 224,0,1,224,0,1,192,0,1,192,0,0,192,0,0,128, + 0,25,17,68,26,0,0,255,63,207,128,30,15,6,0,30, + 15,6,0,30,15,4,0,15,7,132,0,15,15,132,0,7, + 143,136,0,7,139,200,0,7,147,200,0,3,211,208,0,3, + 209,240,0,3,225,240,0,1,225,224,0,1,224,224,0,1, + 192,224,0,0,192,192,0,0,192,64,0,16,17,34,18,1, + 0,255,126,62,24,30,16,31,16,15,32,15,192,7,192,3, + 192,3,192,1,224,3,240,2,240,4,248,8,120,8,124,24, + 126,254,127,17,25,75,18,0,248,255,159,128,62,6,0,30, + 4,0,31,4,0,15,8,0,15,8,0,15,136,0,7,136, + 0,7,144,0,3,208,0,3,208,0,3,224,0,1,224,0, + 1,224,0,0,224,0,0,192,0,0,64,0,0,64,0,0, + 128,0,28,128,0,60,128,0,60,128,0,57,0,0,59,0, + 0,30,0,0,13,17,34,16,1,0,127,248,112,248,96,240, + 97,224,67,224,67,192,7,192,7,128,15,128,15,0,31,8, + 30,8,60,24,124,24,120,56,248,120,255,248,11,33,66,15, + 2,249,0,32,3,192,7,0,15,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 56,0,224,0,56,0,28,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,14,0,7,0, + 3,192,0,32,2,32,32,10,4,249,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,11,33,66,15,3,249, + 128,0,240,0,60,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,15,0,7,0, + 1,224,7,0,15,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,60,0,240,0, + 128,0,19,7,21,23,2,6,62,0,64,127,128,32,255,240, + 32,135,252,32,129,255,224,128,63,192,64,15,128,255}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--38-380-72-72-P-206-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 29, '1' Height: 28 + Calculated Max Values w=38 h=37 x= 7 y=23 dx=41 dy= 0 ascent=38 len=165 + Font Bounding box w=107 h=49 x=-33 y=-11 + Calculated Min Values x=-2 y=-11 dx= 0 dy= 0 + Pure Font ascent =29 descent=-9 + X Font ascent =29 descent=-9 + Max Font ascent =38 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb29[15818] U8G_SECTION(".progmem.u8g_font_osb29") = { + 0,107,49,223,245,29,9,166,21,115,32,255,247,38,245,29, + 247,0,0,0,11,0,0,6,28,28,10,2,1,120,252,252, + 252,252,252,252,120,120,120,120,120,48,48,48,48,48,48,48, + 48,0,0,120,252,252,252,252,120,10,9,18,16,3,20,243, + 192,243,192,243,192,243,192,243,192,243,192,97,128,97,128,97, + 128,22,28,84,28,3,0,1,192,224,1,192,224,1,192,224, + 1,192,224,1,128,192,1,128,192,1,128,192,3,129,252,255, + 255,252,255,255,252,3,129,128,3,1,128,3,1,128,7,3, + 128,7,3,128,7,3,128,7,3,128,6,3,0,255,255,252, + 255,255,252,255,255,252,14,7,0,14,7,0,14,6,0,12, + 6,0,12,6,0,28,14,0,28,14,0,18,34,102,22,2, + 253,1,16,0,1,16,0,1,16,0,7,252,0,29,19,0, + 57,17,128,49,16,192,113,16,192,113,17,192,113,19,192,121, + 23,192,127,23,128,127,19,0,63,144,0,63,240,0,31,240, + 0,15,252,0,7,254,0,1,255,0,1,255,128,1,63,128, + 121,31,192,249,23,192,249,19,192,249,17,192,225,17,192,193, + 17,192,97,17,128,97,19,0,57,22,0,15,60,0,1,208, + 0,1,16,0,1,16,0,26,29,116,32,3,0,4,0,12, + 0,27,0,8,0,49,128,24,0,113,192,16,0,113,192,48, + 0,241,224,96,0,241,224,96,0,241,224,192,0,241,224,128, + 0,241,225,128,0,241,225,0,0,113,195,0,0,113,194,0, + 0,59,134,0,0,30,12,0,0,0,12,28,0,0,24,119, + 0,0,16,227,128,0,48,227,128,0,33,227,192,0,97,227, + 192,0,65,227,192,0,193,227,192,1,129,227,192,1,129,227, + 192,3,1,227,128,2,0,227,128,6,0,99,0,4,0,62, + 0,27,28,112,31,2,1,0,254,0,0,1,195,0,0,3, + 129,0,0,7,129,128,0,7,129,128,0,7,129,128,0,7, + 131,128,0,7,195,0,0,7,198,0,0,3,236,0,0,3, + 248,0,0,1,240,0,0,0,248,0,0,1,252,31,224,7, + 124,3,128,14,62,3,0,28,63,3,0,56,31,134,0,120, + 15,134,0,120,7,196,0,248,7,232,0,248,3,248,0,248, + 1,240,0,252,1,248,0,254,0,248,32,127,1,252,64,63, + 254,127,192,31,248,31,128,4,9,9,10,3,20,240,240,240, + 240,240,240,96,96,96,11,35,70,13,2,249,0,96,0,192, + 1,128,3,0,6,0,12,0,28,0,24,0,56,0,56,0, + 120,0,120,0,120,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,120,0,120,0,120,0,120,0, + 56,0,56,0,28,0,12,0,14,0,7,0,3,0,1,128, + 0,96,11,36,72,14,1,249,192,0,96,0,48,0,24,0, + 12,0,14,0,7,0,7,0,3,128,3,128,3,192,3,192, + 3,192,3,192,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,192,3,192,3,192,3,128,3,128,7,0, + 7,0,6,0,12,0,28,0,56,0,112,0,192,0,128,0, + 14,16,32,19,3,12,3,0,7,128,7,128,199,24,227,60, + 242,124,122,248,7,128,7,128,250,248,242,124,227,60,199,24, + 7,128,7,128,3,0,33,33,165,37,2,251,0,1,192,0, + 0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + 0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0, + 1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1, + 192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192, + 0,0,0,1,192,0,0,255,255,255,255,128,255,255,255,255, + 128,255,255,255,255,128,0,1,192,0,0,0,1,192,0,0, + 0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0, + 1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1, + 192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192, + 0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0, + 0,7,13,13,10,2,249,120,252,252,254,254,126,6,4,4, + 8,24,96,192,10,4,8,14,2,8,255,192,255,192,255,192, + 255,192,6,6,6,10,2,0,120,252,252,252,252,120,13,37, + 74,17,2,248,0,24,0,56,0,56,0,48,0,112,0,112, + 0,96,0,96,0,224,0,224,0,192,1,192,1,192,1,128, + 3,128,3,128,3,128,3,0,7,0,7,0,6,0,14,0, + 14,0,12,0,12,0,28,0,28,0,24,0,56,0,56,0, + 48,0,112,0,112,0,112,0,96,0,224,0,224,0,18,28, + 84,22,2,1,3,240,0,14,28,0,14,28,0,28,14,0, + 60,15,0,60,15,0,124,15,128,124,15,128,124,15,128,252, + 15,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15, + 192,252,15,192,252,15,192,252,15,192,252,15,192,124,15,128, + 124,15,128,124,15,128,60,15,0,60,15,0,28,14,0,12, + 28,0,14,28,0,3,240,0,13,28,56,22,5,0,3,128, + 7,128,15,128,255,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,255,248,17,28,84,22,2,1,15,248,0,24, + 62,0,48,63,0,112,31,0,240,31,128,240,31,128,252,31, + 128,252,31,128,254,31,128,126,63,0,60,63,0,0,126,0, + 0,252,0,0,248,0,1,224,0,3,128,0,6,0,0,12, + 0,128,24,0,128,16,0,128,32,0,128,47,1,128,127,255, + 128,127,255,128,71,255,0,67,255,0,65,254,0,64,252,0, + 17,28,84,22,2,1,15,248,0,24,62,0,48,63,0,48, + 31,0,112,31,128,120,31,128,124,31,128,124,31,128,124,31, + 128,60,31,0,0,31,0,0,62,0,0,120,0,15,192,0, + 0,120,0,0,62,0,0,63,0,0,31,0,16,31,128,124, + 31,128,252,31,128,252,31,128,252,31,128,248,31,128,240,63, + 0,112,62,0,56,124,0,31,248,0,18,28,84,22,2,0, + 0,124,0,0,124,0,0,252,0,0,252,0,1,252,0,1, + 252,0,3,252,0,3,252,0,6,252,0,6,252,0,12,252, + 0,12,252,0,24,252,0,24,252,0,48,252,0,48,252,0, + 96,252,0,96,252,0,192,252,0,255,255,192,0,252,0,0, + 252,0,0,252,0,0,252,0,0,252,0,0,252,0,0,252, + 0,15,255,192,17,29,87,22,3,0,0,6,0,112,28,0, + 127,252,0,127,248,0,127,224,0,127,192,0,126,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,103,224,0,104,120, + 0,112,62,0,96,62,0,96,31,0,0,31,0,0,31,128, + 0,31,128,56,31,128,124,31,128,252,31,128,252,31,128,248, + 31,0,240,31,0,224,30,0,96,62,0,48,124,0,31,240, + 0,18,29,87,22,3,0,0,32,0,3,220,0,7,6,0, + 14,6,0,30,15,0,60,31,0,60,63,0,124,63,0,124, + 62,0,124,28,0,252,0,0,252,0,0,252,0,0,253,248, + 0,255,30,0,254,31,0,252,15,128,252,15,128,252,15,192, + 252,15,192,252,15,192,124,15,192,124,15,192,124,15,192,60, + 15,128,28,15,128,30,15,0,14,30,0,3,252,0,17,28, + 84,22,3,0,103,135,0,111,199,0,127,227,128,127,241,128, + 127,249,128,127,255,128,96,125,128,64,1,0,64,3,0,64, + 3,0,192,6,0,0,4,0,0,12,0,0,24,0,0,56, + 0,0,112,0,0,112,0,0,240,0,1,240,0,3,224,0, + 3,224,0,3,224,0,7,224,0,7,224,0,7,224,0,7, + 224,0,7,224,0,3,192,0,19,29,87,22,2,0,0,64, + 0,7,184,0,28,6,0,56,3,0,112,1,0,112,1,128, + 240,1,128,240,1,128,248,1,128,252,3,0,255,2,0,127, + 196,0,127,248,0,63,252,0,31,255,0,15,255,128,27,255, + 128,48,255,192,96,63,192,96,15,192,224,3,224,224,1,192, + 224,1,192,224,1,192,224,1,192,112,1,128,56,1,0,28, + 6,0,15,252,0,18,28,84,22,3,1,15,240,0,30,28, + 0,60,30,0,124,14,0,124,15,0,252,15,128,252,15,128, + 252,15,128,252,15,128,252,15,192,252,15,192,124,15,192,124, + 15,192,62,31,192,30,63,192,7,239,192,0,15,192,0,15, + 192,0,15,192,30,15,128,31,15,128,63,15,128,63,15,0, + 62,15,0,56,30,0,24,28,0,24,56,0,15,240,0,6, + 19,19,10,2,0,120,252,252,252,252,120,0,0,0,0,0, + 0,0,120,252,252,252,252,120,7,26,26,10,2,249,120,252, + 252,252,252,120,0,0,0,0,0,0,0,120,252,252,254,254, + 126,6,4,4,8,16,96,192,29,33,132,36,3,250,0,0, + 0,24,0,0,0,120,0,0,1,240,0,0,7,192,0,0, + 31,128,0,0,62,0,0,0,248,0,0,3,224,0,0,15, + 192,0,0,31,0,0,0,124,0,0,1,240,0,0,7,192, + 0,0,15,128,0,0,62,0,0,0,248,0,0,0,240,0, + 0,0,124,0,0,0,62,0,0,0,15,128,0,0,3,224, + 0,0,0,248,0,0,0,124,0,0,0,31,0,0,0,7, + 192,0,0,1,240,0,0,0,252,0,0,0,62,0,0,0, + 15,128,0,0,3,224,0,0,1,248,0,0,0,120,0,0, + 0,16,32,11,44,36,2,5,255,255,255,255,255,255,255,255, + 255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255, + 255,255,255,255,29,33,132,36,4,250,192,0,0,0,240,0, + 0,0,124,0,0,0,31,0,0,0,15,192,0,0,3,224, + 0,0,0,248,0,0,0,62,0,0,0,31,128,0,0,7, + 192,0,0,1,240,0,0,0,124,0,0,0,31,0,0,0, + 15,128,0,0,3,224,0,0,0,248,0,0,0,120,0,0, + 1,240,0,0,3,224,0,0,15,128,0,0,62,0,0,0, + 248,0,0,1,240,0,0,7,192,0,0,31,0,0,0,124, + 0,0,1,248,0,0,3,224,0,0,15,128,0,0,62,0, + 0,0,252,0,0,0,240,0,0,0,64,0,0,0,12,28, + 56,18,3,1,63,128,119,224,65,224,129,240,129,240,129,240, + 129,240,129,224,193,224,67,192,3,128,7,0,6,0,12,0, + 8,0,24,0,16,64,16,64,16,64,24,128,15,0,0,0, + 7,128,15,192,15,192,15,192,15,192,7,128,28,29,116,32, + 2,0,0,2,0,0,0,125,240,0,1,192,28,0,3,0, + 6,0,6,0,3,0,12,0,1,128,24,15,61,192,56,28, + 188,192,48,56,248,224,112,112,120,224,112,240,120,96,225,224, + 120,112,225,224,248,112,225,224,240,112,227,224,240,112,227,192, + 240,112,227,192,240,112,227,193,224,96,227,193,224,224,99,193, + 224,192,99,195,224,192,115,194,225,128,49,228,227,0,56,120, + 124,0,28,0,0,0,12,0,0,0,7,0,0,0,3,128, + 24,0,0,255,224,0,26,29,116,29,2,0,0,4,0,0, + 0,6,0,0,0,14,0,0,0,14,0,0,0,15,0,0, + 0,31,0,0,0,31,0,0,0,31,128,0,0,63,128,0, + 0,47,128,0,0,47,192,0,0,111,192,0,0,79,192,0, + 0,71,192,0,0,199,224,0,0,135,224,0,0,131,224,0, + 1,131,240,0,1,3,240,0,3,1,240,0,3,255,248,0, + 2,1,248,0,6,0,248,0,6,0,252,0,4,0,252,0, + 12,0,252,0,12,0,124,0,30,0,254,0,255,199,255,192, + 22,28,84,27,3,0,255,255,0,31,131,192,31,131,224,31, + 129,240,31,129,248,31,129,248,31,129,248,31,129,248,31,129, + 248,31,129,240,31,129,240,31,131,192,31,131,128,31,252,0, + 31,131,128,31,129,224,31,128,240,31,128,248,31,128,252,31, + 128,252,31,128,252,31,128,252,31,128,252,31,128,248,31,128, + 248,31,129,240,31,131,224,255,255,128,21,28,84,26,3,1, + 1,254,48,7,3,48,14,1,240,30,0,240,60,0,240,60, + 0,112,124,0,112,124,0,48,124,0,48,252,0,48,252,0, + 48,252,0,16,252,0,0,252,0,0,252,0,0,252,0,0, + 252,0,0,252,0,24,252,0,24,124,0,16,124,0,16,124, + 0,16,60,0,48,60,0,32,30,0,96,14,0,192,7,1, + 128,1,254,0,25,28,112,30,3,0,255,255,128,0,31,128, + 224,0,31,128,112,0,31,128,56,0,31,128,60,0,31,128, + 30,0,31,128,30,0,31,128,31,0,31,128,31,0,31,128, + 31,0,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,0,31,128,31,0,31,128,31,0,31,128, + 30,0,31,128,30,0,31,128,60,0,31,128,56,0,31,128, + 112,0,31,128,224,0,255,255,128,0,22,28,84,26,2,0, + 255,255,252,15,192,124,15,192,60,15,192,28,15,192,28,15, + 192,12,15,192,12,15,192,12,15,193,4,15,193,0,15,195, + 0,15,195,0,15,199,0,15,255,0,15,199,0,15,195,0, + 15,195,0,15,193,4,15,193,4,15,193,4,15,192,12,15, + 192,12,15,192,12,15,192,28,15,192,28,15,192,60,15,192, + 252,255,255,252,22,28,84,25,2,0,255,255,252,31,128,252, + 31,128,124,31,128,60,31,128,28,31,128,28,31,128,28,31, + 128,12,31,129,12,31,129,12,31,131,12,31,131,0,31,135, + 0,31,255,0,31,143,0,31,135,0,31,131,0,31,129,0, + 31,129,0,31,129,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,255,252,0,24,29, + 87,28,3,0,0,16,0,1,239,24,3,3,152,14,0,248, + 30,0,248,28,0,120,60,0,56,60,0,56,124,0,24,124, + 0,24,124,0,24,252,0,8,252,0,0,252,0,0,252,0, + 0,252,31,255,252,1,248,252,1,248,252,1,248,252,1,248, + 124,1,248,124,1,248,124,1,248,60,1,248,60,1,248,30, + 3,152,14,3,24,7,6,24,1,220,24,27,28,112,31,2, + 0,255,251,255,224,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,255,255,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,255,251,255, + 224,13,28,56,17,2,0,255,248,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,255,248,18, + 28,84,20,1,0,7,255,192,0,126,0,0,126,0,0,126, + 0,0,126,0,0,126,0,0,126,0,0,126,0,0,126,0, + 0,126,0,0,126,0,0,126,0,0,126,0,0,126,0,0, + 126,0,0,126,0,0,126,0,16,126,0,124,126,0,252,126, + 0,252,126,0,252,126,0,248,126,0,240,124,0,224,124,0, + 96,120,0,32,240,0,31,224,0,26,28,112,29,2,0,255, + 241,255,0,31,128,120,0,31,128,112,0,31,128,96,0,31, + 128,64,0,31,128,192,0,31,129,128,0,31,131,0,0,31, + 134,0,0,31,134,0,0,31,142,0,0,31,159,0,0,31, + 191,0,0,31,255,128,0,31,223,128,0,31,159,192,0,31, + 143,192,0,31,143,224,0,31,135,224,0,31,135,240,0,31, + 131,240,0,31,131,248,0,31,129,248,0,31,129,252,0,31, + 128,252,0,31,128,254,0,31,128,254,0,255,243,255,192,22, + 28,84,25,2,0,255,248,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,12,31,128,12,31,128,12,31,128, + 12,31,128,28,31,128,28,31,128,60,31,128,60,31,128,124, + 31,128,252,31,129,252,255,255,252,31,28,112,34,2,0,255, + 128,15,254,15,128,15,224,15,192,15,224,15,192,15,224,15, + 192,15,224,15,224,23,224,15,224,23,224,15,240,23,224,13, + 240,23,224,13,240,39,224,13,248,39,224,12,248,39,224,12, + 248,39,224,12,252,71,224,12,124,71,224,12,124,71,224,12, + 126,71,224,12,62,135,224,12,63,135,224,12,63,135,224,12, + 31,135,224,12,31,7,224,12,31,7,224,12,15,7,224,12, + 15,7,224,28,14,7,224,62,6,7,224,255,134,63,254,27, + 28,112,30,2,0,255,128,255,224,31,192,63,0,31,192,30, + 0,15,224,12,0,7,240,12,0,7,240,12,0,7,248,12, + 0,7,248,12,0,6,252,12,0,6,254,12,0,6,126,12, + 0,6,63,12,0,6,63,140,0,6,31,140,0,6,31,204, + 0,6,15,236,0,6,7,236,0,6,7,252,0,6,3,252, + 0,6,1,252,0,6,1,252,0,6,0,252,0,6,0,252, + 0,6,0,124,0,6,0,60,0,15,0,60,0,31,128,28, + 0,255,224,12,0,22,28,84,27,3,1,1,254,0,3,3, + 0,6,1,128,14,1,192,28,0,224,60,0,240,60,0,240, + 124,0,248,124,0,248,124,0,248,252,0,252,252,0,252,252, + 0,252,252,0,252,252,0,252,252,0,252,252,0,252,252,0, + 252,124,0,248,124,0,248,124,0,248,60,0,240,60,0,240, + 28,0,224,14,1,192,6,1,128,3,3,0,1,254,0,23, + 28,84,27,2,0,255,255,128,31,129,240,31,128,248,31,128, + 252,31,128,124,31,128,126,31,128,126,31,128,126,31,128,126, + 31,128,126,31,128,124,31,128,252,31,128,248,31,129,224,31, + 255,128,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,255,248,0,22,37,111,27,3,248,1, + 254,0,3,3,0,6,1,128,14,1,192,28,0,224,60,0, + 240,60,0,240,124,0,248,124,0,248,124,0,248,252,0,252, + 252,0,252,252,0,252,252,0,252,252,0,252,252,0,252,252, + 0,252,252,0,252,124,0,248,124,0,248,124,0,248,60,56, + 240,60,76,240,30,133,224,14,135,224,7,135,192,3,135,132, + 1,238,4,0,22,4,0,6,4,0,7,12,0,7,12,0, + 7,252,0,7,248,0,7,248,0,3,240,0,1,224,25,28, + 112,28,2,0,255,255,0,0,31,135,192,0,31,131,224,0, + 31,129,240,0,31,129,248,0,31,129,248,0,31,129,248,0, + 31,129,248,0,31,129,248,0,31,129,240,0,31,131,224,0, + 31,135,192,0,31,254,0,0,31,135,128,0,31,131,192,0, + 31,129,240,0,31,129,240,0,31,129,248,0,31,129,248,0, + 31,129,248,0,31,129,248,0,31,129,248,128,31,129,248,128, + 31,129,248,128,31,129,248,128,31,129,249,0,31,128,249,0, + 255,248,126,0,18,29,87,23,3,0,1,0,0,31,225,128, + 48,57,128,96,31,128,96,15,128,224,7,128,240,3,128,240, + 3,128,248,1,128,254,1,128,255,1,128,127,192,0,127,224, + 0,63,248,0,31,252,0,7,255,0,3,255,0,128,255,128, + 128,127,128,192,31,192,192,15,192,192,7,192,224,3,192,224, + 1,192,240,1,128,248,1,128,248,3,0,206,2,0,135,188, + 0,24,28,84,27,2,0,255,255,255,252,126,63,248,126,31, + 240,126,15,224,126,15,224,126,7,192,126,7,192,126,3,192, + 126,3,192,126,3,128,126,3,128,126,2,0,126,0,0,126, + 0,0,126,0,0,126,0,0,126,0,0,126,0,0,126,0, + 0,126,0,0,126,0,0,126,0,0,126,0,0,126,0,0, + 126,0,0,126,0,0,126,0,7,255,224,26,28,112,30,3, + 0,255,240,127,192,31,128,31,0,31,128,14,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,15,128,12,0,15,192,12, + 0,7,192,24,0,7,224,56,0,1,252,240,0,0,255,192, + 0,27,28,112,30,2,0,255,248,127,224,31,192,15,0,15, + 192,6,0,15,192,6,0,7,224,4,0,7,224,12,0,7, + 224,8,0,3,240,8,0,3,240,8,0,3,240,24,0,1, + 248,16,0,1,248,16,0,1,252,48,0,0,252,32,0,0, + 252,32,0,0,254,96,0,0,126,64,0,0,126,64,0,0, + 127,192,0,0,63,128,0,0,63,128,0,0,63,128,0,0, + 31,0,0,0,31,0,0,0,31,0,0,0,14,0,0,0, + 14,0,0,0,14,0,0,38,28,140,41,2,0,255,243,255, + 207,252,31,192,126,1,224,15,192,126,0,192,15,192,62,0, + 192,7,192,63,0,128,7,224,63,0,128,7,224,63,1,128, + 7,224,63,129,0,3,240,63,129,0,3,240,127,131,0,3, + 240,111,195,0,1,248,79,194,0,1,248,207,194,0,1,248, + 199,230,0,0,252,135,230,0,0,252,135,228,0,0,253,131, + 244,0,0,127,131,252,0,0,127,3,248,0,0,127,3,248, + 0,0,127,1,248,0,0,63,1,248,0,0,62,1,240,0, + 0,62,0,240,0,0,30,0,240,0,0,28,0,240,0,0, + 28,0,96,0,0,12,0,96,0,26,28,112,29,2,0,255, + 241,255,128,31,224,124,0,15,224,56,0,15,224,48,0,7, + 240,96,0,7,240,96,0,3,248,192,0,3,248,128,0,1, + 253,128,0,0,255,0,0,0,254,0,0,0,126,0,0,0, + 127,0,0,0,63,0,0,0,63,128,0,0,31,128,0,0, + 63,192,0,0,111,192,0,0,79,224,0,0,199,224,0,1, + 135,240,0,1,131,240,0,3,3,248,0,2,1,248,0,6, + 1,252,0,14,0,252,0,30,1,254,0,255,199,255,192,25, + 28,112,28,2,0,255,240,255,128,31,192,60,0,31,192,24, + 0,15,192,24,0,15,224,24,0,7,224,16,0,7,224,48, + 0,3,240,32,0,3,240,32,0,1,248,96,0,1,248,64, + 0,1,252,64,0,0,252,192,0,0,254,128,0,0,127,128, + 0,0,127,128,0,0,63,0,0,0,63,0,0,0,63,0, + 0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0, + 0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0, + 0,1,255,224,0,20,28,84,25,3,0,127,255,240,126,7, + 240,124,7,224,120,15,224,112,15,192,96,31,192,96,31,128, + 96,63,128,64,63,0,64,127,0,0,254,0,0,254,0,1, + 252,0,1,248,0,3,248,0,3,240,0,7,240,0,7,224, + 16,15,224,16,15,192,16,31,192,48,31,128,48,63,128,112, + 63,0,112,127,0,240,126,1,240,254,7,240,255,255,240,9, + 35,70,15,3,249,255,128,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,255,128,13,37,74,17,2, + 248,192,0,224,0,224,0,96,0,112,0,112,0,48,0,56, + 0,56,0,24,0,24,0,28,0,28,0,12,0,14,0,14, + 0,6,0,6,0,7,0,7,0,3,0,3,128,3,128,1, + 128,1,192,1,192,0,192,0,192,0,224,0,224,0,96,0, + 112,0,112,0,48,0,48,0,56,0,56,9,35,70,15,3, + 249,255,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,255,128,18,14,42,22,2,15,0,192,0, + 0,192,0,1,224,0,3,240,0,3,240,0,7,56,0,7, + 56,0,14,28,0,28,14,0,28,14,0,56,7,0,56,7, + 0,112,3,128,224,1,192,20,3,9,20,0,249,255,255,240, + 255,255,240,255,255,240,7,7,7,17,3,21,224,240,240,120, + 60,12,6,17,19,57,20,2,0,15,192,0,24,240,0,48, + 120,0,112,120,0,124,124,0,124,124,0,124,124,0,0,252, + 0,7,124,0,28,124,0,56,124,0,120,124,0,248,124,0, + 248,124,128,248,124,128,248,124,128,252,253,128,127,191,0,62, + 30,0,18,28,84,20,0,0,255,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,60,0,31,78,0,31,143,0,31,135,128,31, + 7,128,31,7,128,31,7,192,31,7,192,31,7,192,31,7, + 192,31,7,192,31,7,192,31,7,192,31,7,128,31,7,128, + 31,135,0,25,143,0,16,206,0,16,120,0,14,19,38,18, + 2,0,7,224,14,48,60,24,60,28,120,60,120,124,248,124, + 248,120,248,48,248,0,248,0,248,0,248,0,120,4,120,4, + 56,4,28,8,14,16,7,224,18,28,84,21,2,0,0,254, + 0,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,15,62,0,28,190,0,60, + 126,0,120,126,0,120,62,0,120,62,0,248,62,0,248,62, + 0,248,62,0,248,62,0,248,62,0,248,62,0,248,62,0, + 120,62,0,120,62,0,120,126,0,60,126,0,28,190,0,15, + 63,192,14,19,38,18,2,0,7,192,28,224,56,112,56,120, + 120,120,120,124,248,124,248,124,248,124,255,252,248,0,248,0, + 248,0,120,4,120,4,56,8,60,8,30,16,7,224,14,28, + 56,13,1,0,1,240,7,24,15,28,30,60,30,124,62,124, + 62,56,62,0,62,0,255,192,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,255,192,19,28,84,22, + 2,247,7,225,192,30,118,96,60,60,224,60,60,224,124,62, + 192,124,62,0,124,62,0,124,62,0,60,60,0,60,60,0, + 30,120,0,7,224,0,56,0,0,96,0,0,96,0,0,127, + 224,0,127,254,0,127,255,0,63,255,128,31,255,128,96,7, + 128,192,3,128,128,3,128,128,3,0,128,3,0,64,6,0, + 48,28,0,15,240,0,20,28,84,22,1,0,255,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,30,0,31,111,0,31,135,128, + 31,135,192,31,135,192,31,7,192,31,7,192,31,7,192,31, + 7,192,31,7,192,31,7,192,31,7,192,31,7,192,31,7, + 192,31,7,192,31,7,192,31,7,192,31,7,192,255,223,240, + 8,28,28,12,2,0,60,126,126,126,126,60,0,0,0,252, + 124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124, + 124,255,12,37,74,13,254,247,1,224,3,240,3,240,3,240, + 3,240,1,224,0,0,0,0,0,0,15,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,123,224,251,224,251,224,243,192,227,192,103,128, + 30,0,20,28,84,21,1,0,255,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,31,192,31,7,0,31,6,0,31,4,0,31, + 8,0,31,16,0,31,16,0,31,48,0,31,120,0,31,248, + 0,31,188,0,31,60,0,31,30,0,31,31,0,31,15,0, + 31,15,128,31,15,128,31,15,192,255,223,240,11,28,56,12, + 1,0,255,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,255,224,27,19,76,30,2,0, + 254,60,30,0,62,222,111,0,63,31,143,0,63,31,143,128, + 63,31,143,128,62,31,15,128,62,31,15,128,62,31,15,128, + 62,31,15,128,62,31,15,128,62,31,15,128,62,31,15,128, + 62,31,15,128,62,31,15,128,62,31,15,128,62,31,15,128, + 62,31,15,128,62,31,15,128,255,63,223,224,19,19,57,22, + 2,0,254,60,0,62,222,0,63,15,0,63,15,128,63,15, + 128,62,15,128,62,15,128,62,15,128,62,15,128,62,15,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 15,128,62,15,128,62,15,128,255,191,224,16,19,38,20,2, + 0,7,192,12,112,28,56,56,60,120,30,120,30,248,30,248, + 31,248,31,248,31,248,31,248,31,248,30,120,30,120,30,56, + 60,28,56,12,112,7,192,18,28,84,21,1,247,255,60,0, + 31,78,0,31,143,0,31,135,128,31,7,128,31,7,128,31, + 7,192,31,7,192,31,7,192,31,7,192,31,7,192,31,7, + 192,31,7,192,31,7,128,31,7,128,31,135,128,31,143,0, + 31,78,0,31,60,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,255,192, + 0,17,28,84,20,2,247,7,130,0,28,194,0,60,102,0, + 120,126,0,120,62,0,120,62,0,248,62,0,248,62,0,248, + 62,0,248,62,0,248,62,0,248,62,0,248,62,0,120,62, + 0,120,62,0,120,126,0,60,126,0,28,190,0,15,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,255,128,14,19,38,17,2, + 0,254,48,62,120,62,188,63,60,63,124,62,124,62,56,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,255,128,13,19,38,16,2,0,31,16,97, + 208,96,112,224,48,224,48,240,16,248,0,126,0,127,128,63, + 224,15,240,135,240,193,248,192,120,224,56,224,24,240,16,156, + 48,135,192,12,27,54,14,1,0,6,0,6,0,6,0,6, + 0,6,0,14,0,30,0,62,0,255,224,62,0,62,0,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,16,62, + 16,62,16,62,16,62,16,62,32,62,32,31,192,7,128,19, + 19,57,21,1,0,254,63,128,62,15,128,62,15,128,62,15, + 128,62,15,128,62,15,128,62,15,128,62,15,128,62,15,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 31,128,62,31,128,30,47,128,30,79,128,7,143,224,18,19, + 57,20,1,0,255,143,192,62,3,0,30,2,0,30,2,0, + 31,2,0,15,4,0,15,4,0,15,132,0,7,136,0,7, + 200,0,7,216,0,3,208,0,3,240,0,3,240,0,1,224, + 0,1,224,0,0,224,0,0,192,0,0,192,0,28,19,76, + 30,1,0,255,63,231,240,62,15,129,192,30,7,129,128,30, + 7,129,128,31,7,193,0,15,7,193,0,15,7,195,0,15, + 143,226,0,7,137,226,0,7,137,230,0,7,217,244,0,3, + 208,244,0,3,240,248,0,3,240,248,0,1,224,248,0,1, + 224,112,0,1,192,112,0,0,192,112,0,0,192,32,0,18, + 19,57,20,1,0,255,63,128,126,14,0,62,12,0,31,8, + 0,31,16,0,15,176,0,15,160,0,7,192,0,3,192,0, + 3,224,0,1,240,0,3,240,0,2,248,0,4,248,0,12, + 124,0,8,126,0,24,62,0,56,63,0,254,127,192,19,28, + 84,20,0,247,255,207,224,63,3,128,31,3,0,31,2,0, + 15,2,0,15,130,0,15,130,0,7,196,0,7,196,0,3, + 196,0,3,232,0,3,232,0,1,248,0,1,248,0,0,240, + 0,0,240,0,0,112,0,0,96,0,0,96,0,0,32,0, + 0,64,0,12,64,0,30,64,0,62,64,0,62,128,0,60, + 128,0,29,0,0,14,0,0,14,19,38,17,1,0,127,252, + 120,124,112,248,96,248,65,240,65,224,67,224,3,192,7,192, + 7,128,15,128,31,4,31,4,62,4,62,12,124,12,120,28, + 248,60,255,252,12,35,70,16,2,249,1,240,7,128,15,0, + 15,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,30,0,30,0,56,0,224,0,56,0, + 30,0,30,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,15,0,15,0,7,128,1,240, + 3,36,36,11,4,248,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,12,37,74,16,2,248, + 128,0,240,0,28,0,15,0,15,0,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 7,128,3,192,0,112,3,192,7,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,0,15,0,28,0,248,0,128,0,21,8,24,25,2,6, + 62,0,48,127,192,16,255,240,8,135,252,8,129,255,24,128, + 127,248,192,31,240,96,3,224,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,0,0,0,11,0,0,6, + 29,29,10,2,247,120,252,252,252,252,120,0,0,32,48,48, + 48,48,48,48,48,112,120,120,120,120,252,252,252,252,252,252, + 120,120,14,28,56,22,4,251,1,128,1,128,1,128,1,128, + 3,192,15,176,29,152,61,152,121,184,121,184,249,184,249,184, + 249,128,249,128,249,128,249,128,249,128,249,132,121,132,121,132, + 61,136,29,152,15,176,3,192,1,128,1,128,1,128,1,128, + 23,29,87,27,2,0,0,1,0,0,30,224,0,120,16,0, + 248,24,0,240,28,1,240,60,1,240,124,3,240,124,3,240, + 120,3,240,0,3,240,0,3,240,0,3,240,0,31,240,64, + 1,255,128,1,248,0,0,248,0,0,248,0,0,248,0,0, + 120,0,0,120,0,0,112,0,0,112,6,60,112,4,127,224, + 28,131,255,248,129,255,240,195,63,224,124,31,192,18,20,60, + 21,2,3,0,0,128,195,225,128,239,249,192,255,255,128,120, + 15,0,112,7,0,96,3,0,224,1,128,192,1,128,192,1, + 128,192,1,128,192,1,128,224,1,128,96,3,0,112,7,0, + 120,15,0,255,255,128,239,249,192,195,225,128,0,0,128,21, + 28,84,23,1,0,255,195,248,63,0,224,63,0,192,31,128, + 192,31,128,128,31,192,128,15,193,0,15,193,0,7,227,0, + 7,226,0,7,246,0,3,244,0,3,252,0,1,248,0,63, + 255,192,1,248,0,1,248,0,1,248,0,63,255,192,1,248, + 0,1,248,0,1,248,0,1,248,0,1,248,0,1,248,0, + 1,248,0,1,248,0,15,255,128,3,35,35,11,4,249,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,0,0,0, + 0,0,0,0,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,17,36,108,24,2,248,1,240,0,6,12,0,12,6, + 0,24,7,0,56,31,0,56,63,0,56,63,0,56,62,0, + 60,28,0,63,0,0,63,192,0,31,224,0,63,248,0,103, + 254,0,67,255,0,192,255,0,192,63,128,224,15,128,248,3, + 128,254,1,128,127,129,128,127,225,0,63,249,0,15,254,0, + 3,254,0,0,254,0,0,63,0,14,15,0,31,7,0,63, + 7,0,63,7,0,62,7,0,56,6,0,24,12,0,12,24, + 0,7,240,0,12,5,10,16,2,22,112,224,249,240,249,240, + 249,240,112,224,28,28,112,32,2,1,0,127,224,0,1,128, + 24,0,6,0,12,0,12,0,3,0,24,0,1,0,16,30, + 33,128,48,113,160,192,96,224,224,64,97,224,96,96,97,224, + 96,96,193,224,32,32,195,224,32,48,195,224,32,48,195,224, + 0,48,195,224,0,48,195,224,0,48,195,224,16,48,193,224, + 16,32,65,224,48,96,97,224,32,96,96,240,96,64,48,112, + 192,192,16,31,1,128,24,0,1,0,12,0,3,0,6,0, + 12,0,1,128,24,0,0,127,224,0,11,14,28,15,2,14, + 30,0,35,0,99,128,115,128,115,128,15,128,51,128,99,128, + 227,128,227,160,227,160,125,192,0,0,255,224,10,16,32,18, + 4,1,24,64,48,192,112,128,97,128,225,128,227,128,227,128, + 227,128,227,128,227,128,227,128,97,128,97,128,48,192,24,64, + 8,0,19,11,33,22,2,5,255,255,224,255,255,224,255,255, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,10,4,8,14,2,8,255, + 192,255,192,255,192,255,192,28,28,112,32,2,1,0,127,224, + 0,1,128,24,0,6,0,12,0,12,0,3,0,24,0,1, + 0,19,255,193,128,48,249,224,192,96,248,240,64,96,248,248, + 96,96,248,248,96,192,248,248,32,192,248,240,48,192,249,224, + 48,192,254,0,48,192,249,192,48,192,249,224,48,192,249,240, + 48,192,249,240,32,64,249,242,96,96,249,242,96,96,249,242, + 64,48,249,246,192,19,254,253,128,24,0,121,0,12,0,3, + 0,6,0,12,0,1,128,24,0,0,127,224,0,10,3,6, + 16,3,23,255,192,255,192,255,192,12,11,22,22,5,18,31, + 128,127,224,112,96,224,48,192,48,192,48,192,48,224,112,112, + 224,63,192,31,128,32,29,116,36,2,254,0,1,192,0,0, + 1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0, + 1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0, + 1,192,0,255,255,255,255,255,255,255,255,255,255,255,255,0, + 1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0, + 1,192,0,0,1,192,0,0,1,192,0,0,1,192,0,0, + 1,192,0,0,1,192,0,0,1,192,0,0,0,0,0,0, + 0,0,0,255,255,255,255,255,255,255,255,255,255,255,255,11, + 17,34,17,3,11,31,0,99,192,225,224,225,224,241,224,241, + 224,115,192,7,128,14,0,28,0,48,32,96,32,64,96,255, + 224,255,224,143,192,135,128,12,18,36,16,2,10,31,0,51, + 192,97,224,113,224,121,224,121,224,1,192,3,128,30,0,3, + 192,1,224,1,240,121,240,249,240,241,240,225,224,99,192,31, + 0,7,7,7,17,7,21,14,30,30,60,120,96,192,19,30, + 90,22,2,245,112,28,0,112,28,0,248,62,0,248,62,0, + 248,62,0,248,62,0,248,62,0,240,62,0,240,62,0,240, + 62,0,112,28,0,112,28,0,96,28,32,96,24,32,32,56, + 96,32,127,224,61,255,192,47,231,192,39,195,192,32,0,0, + 32,0,0,112,0,0,112,0,0,120,0,0,120,0,0,124, + 0,0,124,0,0,124,0,0,124,0,0,56,0,0,18,33, + 99,23,3,251,15,255,192,63,206,0,127,206,0,127,206,0, + 255,206,0,255,206,0,255,206,0,255,206,0,255,206,0,255, + 206,0,255,206,0,255,206,0,127,206,0,63,206,0,7,206, + 0,1,206,0,1,206,0,1,206,0,1,206,0,1,206,0, + 1,206,0,1,206,0,1,206,0,1,206,0,1,206,0,1, + 206,0,1,206,0,1,206,0,1,206,0,1,206,0,1,206, + 0,1,206,0,1,206,0,6,6,6,10,2,10,120,252,252, + 252,252,120,7,8,8,17,5,248,32,32,56,12,14,14,14, + 252,8,17,17,16,4,11,12,28,252,60,60,60,60,60,60, + 60,60,60,60,60,60,60,255,10,14,28,14,2,14,30,0, + 51,0,115,128,243,192,243,192,243,192,243,192,243,192,243,192, + 115,128,51,0,30,0,0,0,255,192,10,16,32,18,4,1, + 6,0,131,0,195,0,97,128,97,128,113,192,113,192,113,192, + 113,192,113,192,97,192,97,128,65,128,195,0,134,0,4,0, + 28,29,116,34,4,0,0,0,12,0,12,0,12,0,28,0, + 24,0,252,0,24,0,60,0,48,0,60,0,32,0,60,0, + 96,0,60,0,192,0,60,0,192,0,60,1,128,0,60,1, + 128,0,60,3,0,0,60,2,3,128,60,6,3,128,60,12, + 7,128,60,12,15,128,60,24,15,128,255,24,31,128,0,48, + 23,128,0,32,39,128,0,96,103,128,0,192,71,128,0,192, + 199,128,1,128,255,240,1,128,7,128,3,0,7,128,2,0, + 7,128,6,0,7,128,12,0,63,240,27,29,116,34,4,0, + 0,0,12,0,12,0,24,0,28,0,24,0,252,0,48,0, + 60,0,48,0,60,0,96,0,60,0,96,0,60,0,192,0, + 60,1,128,0,60,1,128,0,60,3,0,0,60,3,31,0, + 60,6,115,192,60,6,225,224,60,12,225,224,60,8,241,224, + 255,24,241,224,0,48,115,192,0,48,3,128,0,96,7,0, + 0,96,14,0,0,192,24,0,0,128,48,32,1,128,64,32, + 3,0,64,96,3,0,191,224,6,0,255,224,6,0,159,192, + 12,0,135,128,30,29,116,34,2,0,0,0,3,0,31,0, + 3,0,51,192,6,0,97,224,4,0,113,224,12,0,121,224, + 8,0,121,224,24,0,1,192,48,0,3,128,48,0,30,0, + 96,0,3,192,64,0,1,224,192,0,49,240,128,224,249,241, + 128,224,249,243,1,224,225,226,3,224,99,230,3,224,63,132, + 5,224,0,12,5,224,0,8,9,224,0,16,25,224,0,48, + 17,224,0,32,49,224,0,96,63,252,0,64,1,224,0,192, + 1,224,0,128,1,224,1,0,1,224,3,0,15,252,12,29, + 58,18,3,247,30,0,63,0,63,0,63,0,63,0,30,0, + 0,0,14,0,17,0,32,128,32,128,32,128,1,128,3,0, + 3,0,6,0,14,0,28,0,60,96,120,32,120,48,248,16, + 248,16,248,16,248,16,248,48,124,96,63,192,31,128,26,37, + 148,29,2,0,0,224,0,0,0,240,0,0,0,240,0,0, + 0,120,0,0,0,56,0,0,0,12,0,0,0,6,0,0, + 0,0,0,0,0,4,0,0,0,6,0,0,0,14,0,0, + 0,14,0,0,0,15,0,0,0,31,0,0,0,31,0,0, + 0,31,128,0,0,63,128,0,0,47,128,0,0,47,192,0, + 0,111,192,0,0,79,192,0,0,71,192,0,0,199,224,0, + 0,135,224,0,0,131,224,0,1,131,240,0,1,3,240,0, + 3,1,240,0,3,255,248,0,2,1,248,0,6,0,248,0, + 6,0,252,0,4,0,252,0,12,0,252,0,12,0,124,0, + 30,0,254,0,255,199,255,192,26,37,148,29,2,0,0,0, + 224,0,0,0,224,0,0,1,224,0,0,3,192,0,0,3, + 128,0,0,6,0,0,0,12,0,0,0,0,0,0,0,4, + 0,0,0,6,0,0,0,14,0,0,0,14,0,0,0,31, + 0,0,0,31,0,0,0,31,0,0,0,63,128,0,0,63, + 128,0,0,47,128,0,0,111,192,0,0,111,192,0,0,79, + 192,0,0,199,192,0,0,199,224,0,0,135,224,0,1,131, + 224,0,1,131,240,0,1,3,240,0,3,1,240,0,3,255, + 248,0,2,1,248,0,6,0,248,0,6,0,252,0,4,0, + 252,0,12,0,252,0,12,0,126,0,62,0,255,0,255,199, + 255,192,26,37,148,29,2,0,0,4,0,0,0,14,0,0, + 0,14,0,0,0,31,0,0,0,59,128,0,0,224,192,0, + 1,128,48,0,0,0,0,0,0,4,0,0,0,6,0,0, + 0,14,0,0,0,14,0,0,0,15,0,0,0,31,0,0, + 0,31,0,0,0,31,128,0,0,63,128,0,0,47,128,0, + 0,47,192,0,0,111,192,0,0,79,192,0,0,71,192,0, + 0,199,224,0,0,135,224,0,0,131,224,0,1,131,240,0, + 1,3,240,0,3,1,240,0,3,255,248,0,2,1,248,0, + 6,0,248,0,6,0,252,0,4,0,252,0,12,0,252,0, + 12,0,124,0,30,0,254,0,255,199,255,192,26,36,144,29, + 2,0,0,56,32,0,0,126,32,0,0,255,224,0,0,143, + 192,0,0,131,128,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,6,0,0,0,14,0,0,0,14,0,0,0,15, + 0,0,0,31,0,0,0,31,0,0,0,63,128,0,0,63, + 128,0,0,47,128,0,0,111,192,0,0,111,192,0,0,79, + 192,0,0,199,192,0,0,199,224,0,0,135,224,0,1,131, + 224,0,1,131,240,0,1,3,240,0,3,1,240,0,3,255, + 248,0,2,1,248,0,6,0,248,0,6,0,252,0,4,0, + 252,0,12,0,252,0,12,0,126,0,62,0,255,0,255,199, + 255,192,26,36,144,29,2,0,0,224,224,0,1,241,240,0, + 1,241,240,0,1,241,240,0,0,224,224,0,0,0,0,0, + 0,0,0,0,0,4,0,0,0,14,0,0,0,14,0,0, + 0,14,0,0,0,31,0,0,0,31,0,0,0,31,0,0, + 0,63,128,0,0,63,128,0,0,63,128,0,0,111,192,0, + 0,111,192,0,0,79,192,0,0,199,192,0,0,199,224,0, + 0,135,224,0,1,131,224,0,1,131,240,0,1,3,240,0, + 3,1,240,0,3,255,248,0,2,1,248,0,6,0,248,0, + 6,0,252,0,4,0,252,0,12,0,124,0,12,0,124,0, + 30,0,126,0,255,199,255,192,26,37,148,29,2,0,0,31, + 0,0,0,63,128,0,0,97,192,0,0,96,192,0,0,96, + 192,0,0,113,192,0,0,63,128,0,0,30,0,0,0,0, + 0,0,0,6,0,0,0,14,0,0,0,14,0,0,0,15, + 0,0,0,31,0,0,0,31,0,0,0,31,128,0,0,63, + 128,0,0,63,128,0,0,47,128,0,0,111,192,0,0,79, + 192,0,0,71,192,0,0,135,224,0,0,135,224,0,0,131, + 224,0,1,3,240,0,1,3,240,0,3,1,240,0,3,255, + 248,0,2,1,248,0,6,0,248,0,4,0,252,0,4,0, + 252,0,12,0,252,0,12,0,124,0,28,0,254,0,255,199, + 255,192,36,28,140,38,1,0,0,7,255,255,224,0,1,254, + 3,224,0,1,254,1,224,0,1,254,0,224,0,1,254,0, + 224,0,3,126,0,96,0,3,126,0,96,0,6,126,0,32, + 0,6,126,4,32,0,12,126,4,0,0,12,126,12,0,0, + 24,126,12,0,0,24,126,28,0,0,48,127,252,0,0,48, + 126,60,0,0,96,126,28,0,0,96,126,12,0,0,192,126, + 4,48,0,192,126,4,48,1,255,254,4,48,1,128,126,0, + 48,3,0,126,0,112,3,0,126,0,112,6,0,126,0,240, + 6,0,126,0,240,14,0,126,1,240,63,0,126,7,240,255, + 199,255,255,240,21,37,111,26,3,248,1,254,48,7,3,48, + 14,1,240,30,0,240,60,0,240,60,0,112,124,0,112,124, + 0,48,124,0,48,252,0,48,252,0,48,252,0,16,252,0, + 0,252,0,0,252,0,0,252,0,0,252,0,0,252,0,24, + 252,0,24,124,0,16,124,0,16,124,0,16,60,0,48,60, + 0,32,30,0,96,14,0,192,7,1,128,1,254,0,0,32, + 0,0,96,0,0,120,0,0,28,0,0,14,0,0,14,0, + 0,14,0,2,28,0,1,248,0,22,37,111,26,2,0,1, + 128,0,1,192,0,1,224,0,0,224,0,0,112,0,0,24, + 0,0,8,0,0,0,0,0,0,0,255,255,252,15,192,124, + 15,192,60,15,192,28,15,192,28,15,192,12,15,192,12,15, + 192,12,15,193,4,15,193,0,15,195,0,15,195,0,15,199, + 0,15,255,0,15,199,0,15,195,0,15,195,0,15,193,4, + 15,193,4,15,193,4,15,192,12,15,192,12,15,192,12,15, + 192,28,15,192,28,15,192,60,15,192,252,255,255,252,22,37, + 111,26,2,0,0,1,192,0,3,192,0,3,192,0,7,128, + 0,14,0,0,12,0,0,24,0,0,0,0,0,0,0,255, + 255,252,15,192,124,15,192,60,15,192,28,15,192,28,15,192, + 12,15,192,12,15,192,4,15,193,4,15,193,0,15,195,0, + 15,195,0,15,199,0,15,255,0,15,199,0,15,195,0,15, + 195,0,15,193,4,15,193,4,15,193,4,15,192,4,15,192, + 12,15,192,12,15,192,28,15,192,28,15,192,60,15,192,252, + 255,255,252,22,37,111,26,2,0,0,8,0,0,24,0,0, + 60,0,0,126,0,0,231,0,1,193,128,3,0,64,0,0, + 0,0,0,0,255,255,252,15,192,124,15,192,60,15,192,28, + 15,192,28,15,192,12,15,192,12,15,192,12,15,193,4,15, + 193,0,15,195,0,15,195,0,15,199,0,15,255,0,15,199, + 0,15,195,0,15,195,0,15,193,4,15,193,4,15,193,4, + 15,192,12,15,192,12,15,192,12,15,192,28,15,192,28,15, + 192,60,15,192,252,255,255,252,22,36,108,26,2,0,1,193, + 192,3,227,224,3,227,224,3,227,224,1,193,192,0,0,0, + 0,0,0,0,0,0,255,255,252,15,192,124,15,192,60,15, + 192,28,15,192,28,15,192,12,15,192,12,15,192,4,15,193, + 4,15,193,0,15,195,0,15,195,0,15,199,0,15,255,0, + 15,199,0,15,195,0,15,195,0,15,193,4,15,193,4,15, + 193,4,15,192,4,15,192,12,15,192,12,15,192,28,15,192, + 28,15,192,60,15,192,252,255,255,252,13,37,74,17,2,0, + 96,0,112,0,120,0,56,0,28,0,14,0,2,0,0,0, + 0,0,255,248,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,255,248,13,37,74,17,2,0, + 0,112,0,240,1,240,1,224,3,128,7,0,4,0,0,0, + 0,0,255,248,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,255,248,13,37,74,17,2,0, + 6,0,6,0,15,0,31,128,57,192,112,112,192,24,0,0, + 0,0,255,248,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,255,248,13,36,72,16,2,0, + 112,112,248,248,248,248,248,248,112,112,0,0,0,0,0,0, + 255,248,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,255,248,25,28,112,29,2,0,255,255, + 128,0,31,128,224,0,31,128,112,0,31,128,56,0,31,128, + 60,0,31,128,30,0,31,128,30,0,31,128,31,0,31,128, + 31,0,31,128,31,0,31,128,31,128,31,128,31,128,31,128, + 31,128,255,248,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,0,31,128,31,0,31,128, + 31,0,31,128,30,0,31,128,30,0,31,128,60,0,31,128, + 56,0,31,128,112,0,31,128,224,0,255,255,128,0,27,36, + 144,30,2,0,0,24,0,0,0,62,32,0,0,127,224,0, + 0,71,192,0,0,1,128,0,0,0,0,0,0,0,0,0, + 0,0,0,0,255,128,255,224,31,192,63,0,31,192,30,0, + 15,224,12,0,7,240,12,0,7,240,12,0,7,248,12,0, + 7,248,12,0,6,252,12,0,6,254,12,0,6,126,12,0, + 6,63,12,0,6,63,140,0,6,31,140,0,6,31,204,0, + 6,15,236,0,6,7,236,0,6,7,252,0,6,3,252,0, + 6,1,252,0,6,1,252,0,6,0,252,0,6,0,252,0, + 6,0,124,0,6,0,60,0,15,0,60,0,31,128,28,0, + 255,224,12,0,22,37,111,27,3,1,7,128,0,7,128,0, + 3,192,0,1,192,0,0,224,0,0,112,0,0,16,0,0, + 0,0,0,0,0,1,254,0,3,3,0,6,1,128,14,1, + 192,28,0,224,60,0,240,60,0,240,124,0,248,124,0,248, + 124,0,248,252,0,252,252,0,252,252,0,252,252,0,252,252, + 0,252,252,0,252,252,0,252,252,0,252,124,0,248,124,0, + 248,124,0,248,60,0,240,60,0,240,28,0,224,14,1,192, + 6,1,128,3,3,0,1,254,0,22,37,111,27,3,1,0, + 7,128,0,7,128,0,15,0,0,14,0,0,28,0,0,56, + 0,0,32,0,0,0,0,0,0,0,1,254,0,3,3,0, + 6,1,128,14,1,192,28,0,224,60,0,240,60,0,240,124, + 0,248,124,0,248,124,0,248,252,0,252,252,0,252,252,0, + 252,252,0,252,252,0,252,252,0,252,252,0,252,252,0,252, + 124,0,248,124,0,248,124,0,248,60,0,240,60,0,240,28, + 0,224,14,1,192,6,1,128,3,3,0,1,254,0,22,37, + 111,27,3,0,0,48,0,0,48,0,0,120,0,0,252,0, + 1,206,0,3,135,0,6,1,128,0,0,0,0,0,0,1, + 254,0,3,3,0,6,1,128,14,1,192,28,0,224,60,0, + 240,60,0,240,124,0,248,124,0,248,124,0,248,252,0,252, + 252,0,252,252,0,252,252,0,252,252,0,252,252,0,252,252, + 0,252,252,0,252,124,0,248,124,0,248,124,0,248,60,0, + 240,60,0,240,28,0,224,14,1,192,6,1,128,3,3,0, + 1,254,0,22,36,108,27,3,0,1,192,128,3,241,128,3, + 255,0,4,63,0,4,12,0,0,0,0,0,0,0,0,0, + 0,1,254,0,3,3,0,6,1,128,14,1,192,28,0,224, + 60,0,240,60,0,240,124,0,248,124,0,248,124,0,248,252, + 0,252,252,0,252,252,0,252,252,0,252,252,0,252,252,0, + 252,252,0,252,252,0,252,124,0,248,124,0,248,124,0,248, + 60,0,240,60,0,240,28,0,224,14,1,192,6,1,128,3, + 3,0,1,254,0,22,36,108,27,3,0,3,131,128,7,199, + 192,7,199,192,7,199,192,3,131,128,0,0,0,0,0,0, + 0,0,0,1,254,0,3,3,0,6,1,128,14,1,192,28, + 0,224,60,0,240,60,0,240,124,0,248,124,0,248,124,0, + 248,252,0,252,252,0,252,252,0,252,252,0,252,252,0,252, + 252,0,252,252,0,252,252,0,252,124,0,248,124,0,248,124, + 0,248,60,0,240,60,0,240,28,0,224,14,1,192,6,1, + 128,3,3,0,1,254,0,24,25,75,36,6,254,64,0,2, + 224,0,7,240,0,14,120,0,28,60,0,60,30,0,120,15, + 0,240,7,129,224,3,195,192,1,231,128,0,239,0,0,126, + 0,0,60,0,0,124,0,0,254,0,1,231,0,3,195,128, + 7,129,192,15,0,224,30,0,112,60,0,56,120,0,28,112, + 0,14,224,0,7,192,0,2,22,28,84,27,3,1,1,254, + 12,3,3,152,6,3,208,14,1,240,28,1,224,60,1,240, + 60,1,240,124,1,248,124,3,248,124,6,248,252,14,252,252, + 12,252,252,24,252,252,56,252,252,112,252,252,96,252,252,192, + 252,253,192,252,125,128,248,127,0,248,126,0,248,62,0,240, + 62,0,240,30,0,224,62,1,192,46,1,128,103,3,0,193, + 254,0,26,37,148,30,3,1,0,224,0,0,0,240,0,0, + 0,120,0,0,0,56,0,0,0,28,0,0,0,12,0,0, + 0,6,0,0,0,0,0,0,0,0,0,0,255,240,127,192, + 31,128,31,0,31,128,14,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,15,128,12,0,15,192,12,0,7,192,24,0, + 7,224,56,0,1,252,240,0,0,255,192,0,26,37,148,30, + 3,1,0,0,224,0,0,1,224,0,0,1,224,0,0,3, + 192,0,0,7,0,0,0,6,0,0,0,12,0,0,0,0, + 0,0,0,0,0,0,255,240,127,192,31,128,31,0,31,128, + 14,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,15,128, + 12,0,15,192,12,0,7,192,24,0,7,224,56,0,1,252, + 240,0,0,255,192,0,26,37,148,30,3,0,0,4,0,0, + 0,14,0,0,0,31,0,0,0,31,128,0,0,59,192,0, + 0,224,224,0,1,128,48,0,0,0,0,0,0,0,0,0, + 255,240,127,192,31,128,31,0,31,128,14,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,31,128,6,0,31,128,6,0, + 31,128,6,0,31,128,6,0,15,128,4,0,15,128,12,0, + 7,192,24,0,7,224,24,0,1,240,112,0,0,255,192,0, + 26,36,144,30,3,0,0,224,224,0,1,241,240,0,1,241, + 240,0,1,241,240,0,0,224,224,0,0,0,0,0,0,0, + 0,0,0,0,0,0,255,240,127,192,31,128,31,0,31,128, + 14,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,31,128, + 6,0,31,128,6,0,31,128,6,0,31,128,6,0,15,128, + 12,0,15,192,12,0,7,192,24,0,7,224,56,0,1,252, + 240,0,0,255,192,0,25,37,148,28,2,0,0,0,224,0, + 0,0,224,0,0,1,224,0,0,3,192,0,0,3,128,0, + 0,6,0,0,0,12,0,0,0,0,0,0,0,0,0,0, + 255,240,255,128,31,192,60,0,31,192,24,0,15,192,24,0, + 15,224,24,0,7,224,16,0,7,224,48,0,3,240,32,0, + 3,240,32,0,1,248,96,0,1,248,64,0,1,252,64,0, + 0,252,192,0,0,254,128,0,0,127,128,0,0,127,128,0, + 0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0, + 0,63,0,0,0,63,0,0,0,63,0,0,0,63,0,0, + 0,63,0,0,0,63,0,0,0,63,0,0,1,255,224,0, + 23,28,84,27,2,0,255,248,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,255,128,31,129,224,31,128,248,31,128, + 252,31,128,124,31,128,126,31,128,126,31,128,126,31,128,126, + 31,128,126,31,128,124,31,128,252,31,128,248,31,129,224,31, + 255,128,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,255,248,0,19,28,84,22,1,0, + 0,248,0,3,156,0,7,142,0,15,15,0,15,15,0,15, + 15,0,31,15,0,31,15,0,31,14,0,31,28,0,31,112, + 0,31,12,0,31,7,0,31,7,128,31,3,192,31,3,192, + 31,3,192,31,3,224,31,3,224,31,3,224,31,3,224,31, + 3,224,31,115,224,31,243,192,31,243,192,31,227,128,31,103, + 0,255,62,0,17,28,84,20,2,0,56,0,0,60,0,0, + 60,0,0,30,0,0,14,0,0,3,0,0,1,0,0,0, + 0,0,0,0,0,15,192,0,24,240,0,48,120,0,112,120, + 0,124,124,0,124,124,0,56,124,0,1,252,0,14,124,0, + 28,124,0,56,124,0,120,124,0,248,124,0,248,124,128,248, + 124,128,248,124,128,252,253,128,127,191,0,62,30,0,17,28, + 84,20,2,0,0,48,0,0,112,0,0,240,0,0,224,0, + 1,192,0,1,128,0,3,0,0,0,0,0,0,0,0,15, + 192,0,24,240,0,48,120,0,112,120,0,124,124,0,124,124, + 0,124,124,0,0,252,0,7,124,0,28,124,0,56,124,0, + 120,124,0,248,124,0,248,124,128,248,124,128,248,124,128,252, + 253,128,127,191,0,62,30,0,17,28,84,20,2,0,3,0, + 0,3,128,0,7,128,0,7,192,0,12,224,0,24,112,0, + 48,24,0,0,0,0,0,0,0,15,192,0,24,240,0,48, + 120,0,112,120,0,124,124,0,124,124,0,124,124,0,0,252, + 0,7,124,0,28,124,0,56,124,0,120,124,0,248,124,0, + 248,124,128,248,124,128,248,124,128,252,253,128,127,191,0,62, + 30,0,17,27,81,20,2,0,14,8,0,31,152,0,63,240, + 0,35,240,0,32,224,0,0,0,0,0,0,0,0,0,0, + 15,192,0,24,240,0,48,120,0,112,120,0,124,124,0,124, + 124,0,124,124,0,0,252,0,7,124,0,28,124,0,56,124, + 0,120,124,0,248,124,0,248,124,128,248,124,128,248,124,128, + 252,253,128,127,191,0,62,30,0,17,27,81,20,2,0,56, + 112,0,124,248,0,124,248,0,124,248,0,56,112,0,0,0, + 0,0,0,0,0,0,0,15,192,0,24,240,0,48,120,0, + 112,120,0,124,124,0,124,124,0,124,124,0,0,252,0,7, + 124,0,28,124,0,56,124,0,120,124,0,248,124,0,248,124, + 128,248,124,128,248,124,128,252,253,128,127,191,0,62,30,0, + 17,28,84,20,2,1,15,192,0,12,192,0,24,96,0,24, + 96,0,24,96,0,28,224,0,15,192,0,7,128,0,0,0, + 0,15,192,0,16,240,0,48,120,0,112,120,0,120,124,0, + 124,124,0,124,124,0,0,252,0,7,124,0,28,124,0,56, + 124,0,120,124,0,248,124,0,248,124,128,248,124,128,248,124, + 128,252,253,128,127,255,0,62,62,0,23,19,57,27,2,0, + 15,195,224,24,238,112,48,124,56,112,124,60,120,124,60,124, + 124,62,124,124,62,24,124,62,3,252,62,14,127,254,60,124, + 0,120,124,0,248,124,2,248,124,2,248,124,2,248,124,4, + 252,222,4,127,143,8,63,3,240,14,27,54,18,2,248,7, + 224,14,48,60,24,60,28,120,60,120,124,248,124,248,120,248, + 48,248,0,248,0,248,0,248,0,120,4,120,4,56,4,60, + 8,30,16,7,224,2,0,2,0,3,128,0,192,0,224,0, + 224,0,224,7,128,14,28,56,18,2,0,56,0,56,0,60, + 0,30,0,14,0,7,0,1,0,0,0,0,0,7,192,28, + 224,56,112,56,120,120,120,120,124,248,124,248,124,248,124,255, + 252,248,0,248,0,248,4,120,4,120,4,56,8,60,24,30, + 48,7,192,14,28,56,18,2,0,0,112,0,112,0,240,1, + 224,1,192,3,128,2,0,0,0,0,0,7,192,28,224,56, + 112,56,120,120,120,120,124,248,124,248,124,255,252,248,0,248, + 0,248,0,248,4,120,4,120,12,56,8,60,24,30,48,7, + 192,14,28,56,18,2,0,3,0,7,128,7,128,15,192,12, + 192,24,96,48,56,0,0,0,0,7,192,28,224,56,112,56, + 120,120,120,120,124,248,124,248,124,248,124,255,252,248,0,248, + 0,248,0,120,4,120,4,56,8,60,8,30,16,7,224,14, + 27,54,18,2,0,56,112,124,248,124,248,124,248,56,112,0, + 0,0,0,0,0,7,192,28,224,56,112,56,120,120,120,120, + 124,248,124,248,124,248,124,255,252,248,0,248,0,248,0,120, + 4,120,12,56,8,60,24,30,48,7,192,10,28,56,12,1, + 0,224,0,240,0,248,0,120,0,28,0,14,0,2,0,0, + 0,0,0,127,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,127,192,9,28,56,12,2,0,1, + 128,3,128,7,128,15,0,14,0,28,0,16,0,0,0,0, + 0,254,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,255,128,11,28,56,11,1,0,14,0,30, + 0,31,0,63,0,115,128,224,192,128,96,0,0,0,0,127, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,127,192,11,27,54,12,1,0,113,192,251,224,251, + 224,251,224,113,192,0,0,0,0,0,0,127,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,127, + 192,16,28,56,20,2,0,31,8,15,184,7,224,7,224,7, + 224,13,240,16,248,0,248,0,124,7,252,30,126,60,62,56, + 62,120,30,120,31,248,31,248,31,248,31,248,31,248,31,248, + 31,248,30,120,30,120,30,56,60,60,60,12,112,7,224,19, + 27,81,22,2,0,0,2,0,7,194,0,15,254,0,15,252, + 0,8,120,0,0,0,0,0,0,0,0,0,0,254,60,0, + 62,222,0,63,15,0,63,15,128,63,15,128,62,15,128,62, + 15,128,62,15,128,62,15,128,62,15,128,62,15,128,62,15, + 128,62,15,128,62,15,128,62,15,128,62,15,128,62,15,128, + 62,15,128,255,191,224,16,28,56,20,2,0,24,0,28,0, + 30,0,15,0,7,0,3,128,0,192,0,0,0,0,7,192, + 12,112,28,56,56,60,120,30,120,30,248,30,248,31,248,31, + 248,31,248,31,248,31,248,30,120,30,120,30,56,60,28,56, + 12,112,7,192,16,28,56,20,2,0,0,56,0,56,0,120, + 0,240,0,224,1,192,3,0,0,0,0,0,7,192,12,112, + 28,56,56,60,120,30,120,30,248,30,248,31,248,31,248,31, + 248,31,248,31,248,30,120,30,120,30,56,60,28,56,12,112, + 7,192,16,28,56,20,2,0,3,128,3,192,3,192,7,224, + 14,112,28,56,48,12,0,0,0,0,7,192,12,112,28,56, + 56,60,120,30,120,30,248,30,248,31,248,31,248,31,248,31, + 248,31,248,30,120,30,120,30,56,60,28,56,12,112,7,192, + 16,27,54,20,2,0,14,4,31,140,31,248,35,248,32,112, + 0,0,0,0,0,0,7,192,12,112,28,56,56,60,120,30, + 120,30,248,30,248,31,248,31,248,31,248,31,248,31,248,30, + 120,30,120,30,56,60,28,56,12,112,7,192,16,27,54,20, + 2,0,28,56,62,124,62,124,62,124,28,56,0,0,0,0, + 0,0,7,192,12,112,28,56,56,60,120,30,120,30,248,30, + 248,31,248,31,248,31,248,31,248,31,248,30,120,30,120,30, + 56,60,28,56,12,112,7,192,33,26,130,37,2,253,0,3, + 192,0,0,0,7,224,0,0,0,7,224,0,0,0,7,224, + 0,0,0,7,224,0,0,0,3,192,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,255,255,255,255,128,255,255,255,255,128,255, + 255,255,255,128,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,3,192,0,0,0,7,224,0,0,0,7,224,0, + 0,0,7,224,0,0,0,7,224,0,0,0,3,192,0,0, + 16,19,38,20,2,0,7,225,12,114,28,60,56,60,120,62, + 120,62,248,126,248,95,248,223,249,159,251,31,254,31,252,30, + 124,30,120,30,60,28,124,56,78,48,135,192,19,28,84,21, + 1,0,12,0,0,30,0,0,15,0,0,7,0,0,3,128, + 0,1,192,0,0,64,0,0,0,0,0,0,0,254,63,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 15,128,62,15,128,62,15,128,62,15,128,62,15,128,62,15, + 128,62,15,128,62,15,128,62,31,128,62,31,128,30,47,128, + 31,79,128,7,143,224,19,28,84,21,1,0,0,28,0,0, + 60,0,0,60,0,0,120,0,0,224,0,0,192,0,1,128, + 0,0,0,0,0,0,0,254,63,128,62,15,128,62,15,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 15,128,62,15,128,62,15,128,62,15,128,62,15,128,62,15, + 128,62,31,128,62,31,128,30,47,128,30,79,128,7,143,224, + 19,28,84,21,1,0,1,192,0,1,224,0,3,224,0,3, + 240,0,7,56,0,12,28,0,24,4,0,0,0,0,0,0, + 0,254,63,128,62,15,128,62,15,128,62,15,128,62,15,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 15,128,62,15,128,62,15,128,62,15,128,62,31,128,62,31, + 128,30,47,128,30,79,128,7,143,224,19,27,81,21,1,0, + 28,28,0,62,62,0,62,62,0,62,62,0,28,28,0,0, + 0,0,0,0,0,0,0,0,254,63,128,62,15,128,62,15, + 128,62,15,128,62,15,128,62,15,128,62,15,128,62,15,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 15,128,62,31,128,62,31,128,30,47,128,30,79,128,7,143, + 224,18,37,111,19,0,247,0,14,0,0,30,0,0,30,0, + 0,60,0,0,48,0,0,96,0,0,192,0,0,0,0,0, + 0,0,255,207,192,63,3,0,31,3,0,31,2,0,15,2, + 0,15,130,0,15,132,0,7,196,0,7,196,0,3,196,0, + 3,232,0,3,232,0,1,248,0,1,240,0,0,240,0,0, + 240,0,0,96,0,0,96,0,0,96,0,0,32,0,0,64, + 0,12,64,0,30,64,0,62,128,0,62,128,0,60,128,0, + 29,0,0,14,0,0,18,36,108,20,0,247,3,0,0,15, + 0,0,63,0,0,223,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,31,0,31,63,128,31,71,128,31,135,192, + 31,135,192,31,7,192,31,7,192,31,7,192,31,7,128,31, + 7,128,31,15,0,31,15,0,31,14,0,31,12,0,31,24, + 0,31,48,0,31,96,0,31,128,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,0,30, + 0,0,56,0,0,224,0,0,19,36,108,20,0,247,7,14, + 0,15,159,0,15,159,0,15,159,0,7,14,0,0,0,0, + 0,0,0,0,0,0,255,207,224,63,3,0,31,3,0,31, + 2,0,15,2,0,15,130,0,15,132,0,7,196,0,7,196, + 0,3,196,0,3,232,0,3,232,0,1,248,0,1,240,0, + 0,240,0,0,240,0,0,240,0,0,96,0,0,96,0,0, + 32,0,0,64,0,12,64,0,30,64,0,62,64,0,62,128, + 0,60,128,0,29,0,0,14,0,0}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--38-380-72-72-P-206-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 28 + Calculated Max Values w=33 h=37 x= 5 y=12 dx=37 dy= 0 ascent=29 len=165 + Font Bounding box w=107 h=49 x=-33 y=-11 + Calculated Min Values x= 0 y=-8 dx= 0 dy= 0 + Pure Font ascent =28 descent= 0 + X Font ascent =28 descent= 0 + Max Font ascent =29 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb29n[1232] U8G_SECTION(".progmem.u8g_font_osb29n") = { + 0,107,49,223,245,28,0,0,0,0,42,57,0,29,248,28, + 0,14,16,32,19,3,12,3,0,7,128,7,128,199,24,227, + 60,242,124,122,248,7,128,7,128,250,248,242,124,227,60,199, + 24,7,128,7,128,3,0,33,33,165,37,2,251,0,1,192, + 0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0, + 0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + 0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0, + 1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1, + 192,0,0,0,1,192,0,0,255,255,255,255,128,255,255,255, + 255,128,255,255,255,255,128,0,1,192,0,0,0,1,192,0, + 0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + 0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0, + 1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1, + 192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192, + 0,0,7,13,13,10,2,249,120,252,252,254,254,126,6,4, + 4,8,24,96,192,10,4,8,14,2,8,255,192,255,192,255, + 192,255,192,6,6,6,10,2,0,120,252,252,252,252,120,13, + 37,74,17,2,248,0,24,0,56,0,56,0,48,0,112,0, + 112,0,96,0,96,0,224,0,224,0,192,1,192,1,192,1, + 128,3,128,3,128,3,128,3,0,7,0,7,0,6,0,14, + 0,14,0,12,0,12,0,28,0,28,0,24,0,56,0,56, + 0,48,0,112,0,112,0,112,0,96,0,224,0,224,0,18, + 28,84,22,2,1,3,240,0,14,28,0,14,28,0,28,14, + 0,60,15,0,60,15,0,124,15,128,124,15,128,124,15,128, + 252,15,192,252,15,192,252,15,192,252,15,192,252,15,192,252, + 15,192,252,15,192,252,15,192,252,15,192,252,15,192,124,15, + 128,124,15,128,124,15,128,60,15,0,60,15,0,28,14,0, + 12,28,0,14,28,0,3,240,0,13,28,56,22,5,0,3, + 128,7,128,15,128,255,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,255,248,17,28,84,22,2,1,15,248,0, + 24,62,0,48,63,0,112,31,0,240,31,128,240,31,128,252, + 31,128,252,31,128,254,31,128,126,63,0,60,63,0,0,126, + 0,0,252,0,0,248,0,1,224,0,3,128,0,6,0,0, + 12,0,128,24,0,128,16,0,128,32,0,128,47,1,128,127, + 255,128,127,255,128,71,255,0,67,255,0,65,254,0,64,252, + 0,17,28,84,22,2,1,15,248,0,24,62,0,48,63,0, + 48,31,0,112,31,128,120,31,128,124,31,128,124,31,128,124, + 31,128,60,31,0,0,31,0,0,62,0,0,120,0,15,192, + 0,0,120,0,0,62,0,0,63,0,0,31,0,16,31,128, + 124,31,128,252,31,128,252,31,128,252,31,128,248,31,128,240, + 63,0,112,62,0,56,124,0,31,248,0,18,28,84,22,2, + 0,0,124,0,0,124,0,0,252,0,0,252,0,1,252,0, + 1,252,0,3,252,0,3,252,0,6,252,0,6,252,0,12, + 252,0,12,252,0,24,252,0,24,252,0,48,252,0,48,252, + 0,96,252,0,96,252,0,192,252,0,255,255,192,0,252,0, + 0,252,0,0,252,0,0,252,0,0,252,0,0,252,0,0, + 252,0,15,255,192,17,29,87,22,3,0,0,6,0,112,28, + 0,127,252,0,127,248,0,127,224,0,127,192,0,126,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,103,224,0,104, + 120,0,112,62,0,96,62,0,96,31,0,0,31,0,0,31, + 128,0,31,128,56,31,128,124,31,128,252,31,128,252,31,128, + 248,31,0,240,31,0,224,30,0,96,62,0,48,124,0,31, + 240,0,18,29,87,22,3,0,0,32,0,3,220,0,7,6, + 0,14,6,0,30,15,0,60,31,0,60,63,0,124,63,0, + 124,62,0,124,28,0,252,0,0,252,0,0,252,0,0,253, + 248,0,255,30,0,254,31,0,252,15,128,252,15,128,252,15, + 192,252,15,192,252,15,192,124,15,192,124,15,192,124,15,192, + 60,15,128,28,15,128,30,15,0,14,30,0,3,252,0,17, + 28,84,22,3,0,103,135,0,111,199,0,127,227,128,127,241, + 128,127,249,128,127,255,128,96,125,128,64,1,0,64,3,0, + 64,3,0,192,6,0,0,4,0,0,12,0,0,24,0,0, + 56,0,0,112,0,0,112,0,0,240,0,1,240,0,3,224, + 0,3,224,0,3,224,0,7,224,0,7,224,0,7,224,0, + 7,224,0,7,224,0,3,192,0,19,29,87,22,2,0,0, + 64,0,7,184,0,28,6,0,56,3,0,112,1,0,112,1, + 128,240,1,128,240,1,128,248,1,128,252,3,0,255,2,0, + 127,196,0,127,248,0,63,252,0,31,255,0,15,255,128,27, + 255,128,48,255,192,96,63,192,96,15,192,224,3,224,224,1, + 192,224,1,192,224,1,192,224,1,192,112,1,128,56,1,0, + 28,6,0,15,252,0,18,28,84,22,3,1,15,240,0,30, + 28,0,60,30,0,124,14,0,124,15,0,252,15,128,252,15, + 128,252,15,128,252,15,128,252,15,192,252,15,192,124,15,192, + 124,15,192,62,31,192,30,63,192,7,239,192,0,15,192,0, + 15,192,0,15,192,30,15,128,31,15,128,63,15,128,63,15, + 0,62,15,0,56,30,0,24,28,0,24,56,0,15,240,0 + }; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--38-380-72-72-P-206-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 29, '1' Height: 28 + Calculated Max Values w=38 h=37 x= 5 y=21 dx=41 dy= 0 ascent=31 len=165 + Font Bounding box w=107 h=49 x=-33 y=-11 + Calculated Min Values x=-2 y=-9 dx= 0 dy= 0 + Pure Font ascent =29 descent=-9 + X Font ascent =29 descent=-9 + Max Font ascent =31 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb29r[7481] U8G_SECTION(".progmem.u8g_font_osb29r") = { + 0,107,49,223,245,29,9,166,21,115,32,127,247,31,247,29, + 247,0,0,0,11,0,0,6,28,28,10,2,1,120,252,252, + 252,252,252,252,120,120,120,120,120,48,48,48,48,48,48,48, + 48,0,0,120,252,252,252,252,120,10,9,18,16,3,20,243, + 192,243,192,243,192,243,192,243,192,243,192,97,128,97,128,97, + 128,22,28,84,28,3,0,1,192,224,1,192,224,1,192,224, + 1,192,224,1,128,192,1,128,192,1,128,192,3,129,252,255, + 255,252,255,255,252,3,129,128,3,1,128,3,1,128,7,3, + 128,7,3,128,7,3,128,7,3,128,6,3,0,255,255,252, + 255,255,252,255,255,252,14,7,0,14,7,0,14,6,0,12, + 6,0,12,6,0,28,14,0,28,14,0,18,34,102,22,2, + 253,1,16,0,1,16,0,1,16,0,7,252,0,29,19,0, + 57,17,128,49,16,192,113,16,192,113,17,192,113,19,192,121, + 23,192,127,23,128,127,19,0,63,144,0,63,240,0,31,240, + 0,15,252,0,7,254,0,1,255,0,1,255,128,1,63,128, + 121,31,192,249,23,192,249,19,192,249,17,192,225,17,192,193, + 17,192,97,17,128,97,19,0,57,22,0,15,60,0,1,208, + 0,1,16,0,1,16,0,26,29,116,32,3,0,4,0,12, + 0,27,0,8,0,49,128,24,0,113,192,16,0,113,192,48, + 0,241,224,96,0,241,224,96,0,241,224,192,0,241,224,128, + 0,241,225,128,0,241,225,0,0,113,195,0,0,113,194,0, + 0,59,134,0,0,30,12,0,0,0,12,28,0,0,24,119, + 0,0,16,227,128,0,48,227,128,0,33,227,192,0,97,227, + 192,0,65,227,192,0,193,227,192,1,129,227,192,1,129,227, + 192,3,1,227,128,2,0,227,128,6,0,99,0,4,0,62, + 0,27,28,112,31,2,1,0,254,0,0,1,195,0,0,3, + 129,0,0,7,129,128,0,7,129,128,0,7,129,128,0,7, + 131,128,0,7,195,0,0,7,198,0,0,3,236,0,0,3, + 248,0,0,1,240,0,0,0,248,0,0,1,252,31,224,7, + 124,3,128,14,62,3,0,28,63,3,0,56,31,134,0,120, + 15,134,0,120,7,196,0,248,7,232,0,248,3,248,0,248, + 1,240,0,252,1,248,0,254,0,248,32,127,1,252,64,63, + 254,127,192,31,248,31,128,4,9,9,10,3,20,240,240,240, + 240,240,240,96,96,96,11,35,70,13,2,249,0,96,0,192, + 1,128,3,0,6,0,12,0,28,0,24,0,56,0,56,0, + 120,0,120,0,120,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,120,0,120,0,120,0,120,0, + 56,0,56,0,28,0,12,0,14,0,7,0,3,0,1,128, + 0,96,11,36,72,14,1,249,192,0,96,0,48,0,24,0, + 12,0,14,0,7,0,7,0,3,128,3,128,3,192,3,192, + 3,192,3,192,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,192,3,192,3,192,3,128,3,128,7,0, + 7,0,6,0,12,0,28,0,56,0,112,0,192,0,128,0, + 14,16,32,19,3,12,3,0,7,128,7,128,199,24,227,60, + 242,124,122,248,7,128,7,128,250,248,242,124,227,60,199,24, + 7,128,7,128,3,0,33,33,165,37,2,251,0,1,192,0, + 0,0,1,192,0,0,0,1,192,0,0,0,1,192,0,0, + 0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0, + 1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1, + 192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192, + 0,0,0,1,192,0,0,255,255,255,255,128,255,255,255,255, + 128,255,255,255,255,128,0,1,192,0,0,0,1,192,0,0, + 0,1,192,0,0,0,1,192,0,0,0,1,192,0,0,0, + 1,192,0,0,0,1,192,0,0,0,1,192,0,0,0,1, + 192,0,0,0,1,192,0,0,0,1,192,0,0,0,1,192, + 0,0,0,1,192,0,0,0,1,192,0,0,0,1,192,0, + 0,7,13,13,10,2,249,120,252,252,254,254,126,6,4,4, + 8,24,96,192,10,4,8,14,2,8,255,192,255,192,255,192, + 255,192,6,6,6,10,2,0,120,252,252,252,252,120,13,37, + 74,17,2,248,0,24,0,56,0,56,0,48,0,112,0,112, + 0,96,0,96,0,224,0,224,0,192,1,192,1,192,1,128, + 3,128,3,128,3,128,3,0,7,0,7,0,6,0,14,0, + 14,0,12,0,12,0,28,0,28,0,24,0,56,0,56,0, + 48,0,112,0,112,0,112,0,96,0,224,0,224,0,18,28, + 84,22,2,1,3,240,0,14,28,0,14,28,0,28,14,0, + 60,15,0,60,15,0,124,15,128,124,15,128,124,15,128,252, + 15,192,252,15,192,252,15,192,252,15,192,252,15,192,252,15, + 192,252,15,192,252,15,192,252,15,192,252,15,192,124,15,128, + 124,15,128,124,15,128,60,15,0,60,15,0,28,14,0,12, + 28,0,14,28,0,3,240,0,13,28,56,22,5,0,3,128, + 7,128,15,128,255,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,255,248,17,28,84,22,2,1,15,248,0,24, + 62,0,48,63,0,112,31,0,240,31,128,240,31,128,252,31, + 128,252,31,128,254,31,128,126,63,0,60,63,0,0,126,0, + 0,252,0,0,248,0,1,224,0,3,128,0,6,0,0,12, + 0,128,24,0,128,16,0,128,32,0,128,47,1,128,127,255, + 128,127,255,128,71,255,0,67,255,0,65,254,0,64,252,0, + 17,28,84,22,2,1,15,248,0,24,62,0,48,63,0,48, + 31,0,112,31,128,120,31,128,124,31,128,124,31,128,124,31, + 128,60,31,0,0,31,0,0,62,0,0,120,0,15,192,0, + 0,120,0,0,62,0,0,63,0,0,31,0,16,31,128,124, + 31,128,252,31,128,252,31,128,252,31,128,248,31,128,240,63, + 0,112,62,0,56,124,0,31,248,0,18,28,84,22,2,0, + 0,124,0,0,124,0,0,252,0,0,252,0,1,252,0,1, + 252,0,3,252,0,3,252,0,6,252,0,6,252,0,12,252, + 0,12,252,0,24,252,0,24,252,0,48,252,0,48,252,0, + 96,252,0,96,252,0,192,252,0,255,255,192,0,252,0,0, + 252,0,0,252,0,0,252,0,0,252,0,0,252,0,0,252, + 0,15,255,192,17,29,87,22,3,0,0,6,0,112,28,0, + 127,252,0,127,248,0,127,224,0,127,192,0,126,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,103,224,0,104,120, + 0,112,62,0,96,62,0,96,31,0,0,31,0,0,31,128, + 0,31,128,56,31,128,124,31,128,252,31,128,252,31,128,248, + 31,0,240,31,0,224,30,0,96,62,0,48,124,0,31,240, + 0,18,29,87,22,3,0,0,32,0,3,220,0,7,6,0, + 14,6,0,30,15,0,60,31,0,60,63,0,124,63,0,124, + 62,0,124,28,0,252,0,0,252,0,0,252,0,0,253,248, + 0,255,30,0,254,31,0,252,15,128,252,15,128,252,15,192, + 252,15,192,252,15,192,124,15,192,124,15,192,124,15,192,60, + 15,128,28,15,128,30,15,0,14,30,0,3,252,0,17,28, + 84,22,3,0,103,135,0,111,199,0,127,227,128,127,241,128, + 127,249,128,127,255,128,96,125,128,64,1,0,64,3,0,64, + 3,0,192,6,0,0,4,0,0,12,0,0,24,0,0,56, + 0,0,112,0,0,112,0,0,240,0,1,240,0,3,224,0, + 3,224,0,3,224,0,7,224,0,7,224,0,7,224,0,7, + 224,0,7,224,0,3,192,0,19,29,87,22,2,0,0,64, + 0,7,184,0,28,6,0,56,3,0,112,1,0,112,1,128, + 240,1,128,240,1,128,248,1,128,252,3,0,255,2,0,127, + 196,0,127,248,0,63,252,0,31,255,0,15,255,128,27,255, + 128,48,255,192,96,63,192,96,15,192,224,3,224,224,1,192, + 224,1,192,224,1,192,224,1,192,112,1,128,56,1,0,28, + 6,0,15,252,0,18,28,84,22,3,1,15,240,0,30,28, + 0,60,30,0,124,14,0,124,15,0,252,15,128,252,15,128, + 252,15,128,252,15,128,252,15,192,252,15,192,124,15,192,124, + 15,192,62,31,192,30,63,192,7,239,192,0,15,192,0,15, + 192,0,15,192,30,15,128,31,15,128,63,15,128,63,15,0, + 62,15,0,56,30,0,24,28,0,24,56,0,15,240,0,6, + 19,19,10,2,0,120,252,252,252,252,120,0,0,0,0,0, + 0,0,120,252,252,252,252,120,7,26,26,10,2,249,120,252, + 252,252,252,120,0,0,0,0,0,0,0,120,252,252,254,254, + 126,6,4,4,8,16,96,192,29,33,132,36,3,250,0,0, + 0,24,0,0,0,120,0,0,1,240,0,0,7,192,0,0, + 31,128,0,0,62,0,0,0,248,0,0,3,224,0,0,15, + 192,0,0,31,0,0,0,124,0,0,1,240,0,0,7,192, + 0,0,15,128,0,0,62,0,0,0,248,0,0,0,240,0, + 0,0,124,0,0,0,62,0,0,0,15,128,0,0,3,224, + 0,0,0,248,0,0,0,124,0,0,0,31,0,0,0,7, + 192,0,0,1,240,0,0,0,252,0,0,0,62,0,0,0, + 15,128,0,0,3,224,0,0,1,248,0,0,0,120,0,0, + 0,16,32,11,44,36,2,5,255,255,255,255,255,255,255,255, + 255,255,255,255,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,255,255,255,255,255,255,255,255, + 255,255,255,255,29,33,132,36,4,250,192,0,0,0,240,0, + 0,0,124,0,0,0,31,0,0,0,15,192,0,0,3,224, + 0,0,0,248,0,0,0,62,0,0,0,31,128,0,0,7, + 192,0,0,1,240,0,0,0,124,0,0,0,31,0,0,0, + 15,128,0,0,3,224,0,0,0,248,0,0,0,120,0,0, + 1,240,0,0,3,224,0,0,15,128,0,0,62,0,0,0, + 248,0,0,1,240,0,0,7,192,0,0,31,0,0,0,124, + 0,0,1,248,0,0,3,224,0,0,15,128,0,0,62,0, + 0,0,252,0,0,0,240,0,0,0,64,0,0,0,12,28, + 56,18,3,1,63,128,119,224,65,224,129,240,129,240,129,240, + 129,240,129,224,193,224,67,192,3,128,7,0,6,0,12,0, + 8,0,24,0,16,64,16,64,16,64,24,128,15,0,0,0, + 7,128,15,192,15,192,15,192,15,192,7,128,28,29,116,32, + 2,0,0,2,0,0,0,125,240,0,1,192,28,0,3,0, + 6,0,6,0,3,0,12,0,1,128,24,15,61,192,56,28, + 188,192,48,56,248,224,112,112,120,224,112,240,120,96,225,224, + 120,112,225,224,248,112,225,224,240,112,227,224,240,112,227,192, + 240,112,227,192,240,112,227,193,224,96,227,193,224,224,99,193, + 224,192,99,195,224,192,115,194,225,128,49,228,227,0,56,120, + 124,0,28,0,0,0,12,0,0,0,7,0,0,0,3,128, + 24,0,0,255,224,0,26,29,116,29,2,0,0,4,0,0, + 0,6,0,0,0,14,0,0,0,14,0,0,0,15,0,0, + 0,31,0,0,0,31,0,0,0,31,128,0,0,63,128,0, + 0,47,128,0,0,47,192,0,0,111,192,0,0,79,192,0, + 0,71,192,0,0,199,224,0,0,135,224,0,0,131,224,0, + 1,131,240,0,1,3,240,0,3,1,240,0,3,255,248,0, + 2,1,248,0,6,0,248,0,6,0,252,0,4,0,252,0, + 12,0,252,0,12,0,124,0,30,0,254,0,255,199,255,192, + 22,28,84,27,3,0,255,255,0,31,131,192,31,131,224,31, + 129,240,31,129,248,31,129,248,31,129,248,31,129,248,31,129, + 248,31,129,240,31,129,240,31,131,192,31,131,128,31,252,0, + 31,131,128,31,129,224,31,128,240,31,128,248,31,128,252,31, + 128,252,31,128,252,31,128,252,31,128,252,31,128,248,31,128, + 248,31,129,240,31,131,224,255,255,128,21,28,84,26,3,1, + 1,254,48,7,3,48,14,1,240,30,0,240,60,0,240,60, + 0,112,124,0,112,124,0,48,124,0,48,252,0,48,252,0, + 48,252,0,16,252,0,0,252,0,0,252,0,0,252,0,0, + 252,0,0,252,0,24,252,0,24,124,0,16,124,0,16,124, + 0,16,60,0,48,60,0,32,30,0,96,14,0,192,7,1, + 128,1,254,0,25,28,112,30,3,0,255,255,128,0,31,128, + 224,0,31,128,112,0,31,128,56,0,31,128,60,0,31,128, + 30,0,31,128,30,0,31,128,31,0,31,128,31,0,31,128, + 31,0,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,0,31,128,31,0,31,128,31,0,31,128, + 30,0,31,128,30,0,31,128,60,0,31,128,56,0,31,128, + 112,0,31,128,224,0,255,255,128,0,22,28,84,26,2,0, + 255,255,252,15,192,124,15,192,60,15,192,28,15,192,28,15, + 192,12,15,192,12,15,192,12,15,193,4,15,193,0,15,195, + 0,15,195,0,15,199,0,15,255,0,15,199,0,15,195,0, + 15,195,0,15,193,4,15,193,4,15,193,4,15,192,12,15, + 192,12,15,192,12,15,192,28,15,192,28,15,192,60,15,192, + 252,255,255,252,22,28,84,25,2,0,255,255,252,31,128,252, + 31,128,124,31,128,60,31,128,28,31,128,28,31,128,28,31, + 128,12,31,129,12,31,129,12,31,131,12,31,131,0,31,135, + 0,31,255,0,31,143,0,31,135,0,31,131,0,31,129,0, + 31,129,0,31,129,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,255,252,0,24,29, + 87,28,3,0,0,16,0,1,239,24,3,3,152,14,0,248, + 30,0,248,28,0,120,60,0,56,60,0,56,124,0,24,124, + 0,24,124,0,24,252,0,8,252,0,0,252,0,0,252,0, + 0,252,31,255,252,1,248,252,1,248,252,1,248,252,1,248, + 124,1,248,124,1,248,124,1,248,60,1,248,60,1,248,30, + 3,152,14,3,24,7,6,24,1,220,24,27,28,112,31,2, + 0,255,251,255,224,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,255,255,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,31,128,63, + 0,31,128,63,0,31,128,63,0,31,128,63,0,255,251,255, + 224,13,28,56,17,2,0,255,248,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,255,248,18, + 28,84,20,1,0,7,255,192,0,126,0,0,126,0,0,126, + 0,0,126,0,0,126,0,0,126,0,0,126,0,0,126,0, + 0,126,0,0,126,0,0,126,0,0,126,0,0,126,0,0, + 126,0,0,126,0,0,126,0,16,126,0,124,126,0,252,126, + 0,252,126,0,252,126,0,248,126,0,240,124,0,224,124,0, + 96,120,0,32,240,0,31,224,0,26,28,112,29,2,0,255, + 241,255,0,31,128,120,0,31,128,112,0,31,128,96,0,31, + 128,64,0,31,128,192,0,31,129,128,0,31,131,0,0,31, + 134,0,0,31,134,0,0,31,142,0,0,31,159,0,0,31, + 191,0,0,31,255,128,0,31,223,128,0,31,159,192,0,31, + 143,192,0,31,143,224,0,31,135,224,0,31,135,240,0,31, + 131,240,0,31,131,248,0,31,129,248,0,31,129,252,0,31, + 128,252,0,31,128,254,0,31,128,254,0,255,243,255,192,22, + 28,84,25,2,0,255,248,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,12,31,128,12,31,128,12,31,128, + 12,31,128,28,31,128,28,31,128,60,31,128,60,31,128,124, + 31,128,252,31,129,252,255,255,252,31,28,112,34,2,0,255, + 128,15,254,15,128,15,224,15,192,15,224,15,192,15,224,15, + 192,15,224,15,224,23,224,15,224,23,224,15,240,23,224,13, + 240,23,224,13,240,39,224,13,248,39,224,12,248,39,224,12, + 248,39,224,12,252,71,224,12,124,71,224,12,124,71,224,12, + 126,71,224,12,62,135,224,12,63,135,224,12,63,135,224,12, + 31,135,224,12,31,7,224,12,31,7,224,12,15,7,224,12, + 15,7,224,28,14,7,224,62,6,7,224,255,134,63,254,27, + 28,112,30,2,0,255,128,255,224,31,192,63,0,31,192,30, + 0,15,224,12,0,7,240,12,0,7,240,12,0,7,248,12, + 0,7,248,12,0,6,252,12,0,6,254,12,0,6,126,12, + 0,6,63,12,0,6,63,140,0,6,31,140,0,6,31,204, + 0,6,15,236,0,6,7,236,0,6,7,252,0,6,3,252, + 0,6,1,252,0,6,1,252,0,6,0,252,0,6,0,252, + 0,6,0,124,0,6,0,60,0,15,0,60,0,31,128,28, + 0,255,224,12,0,22,28,84,27,3,1,1,254,0,3,3, + 0,6,1,128,14,1,192,28,0,224,60,0,240,60,0,240, + 124,0,248,124,0,248,124,0,248,252,0,252,252,0,252,252, + 0,252,252,0,252,252,0,252,252,0,252,252,0,252,252,0, + 252,124,0,248,124,0,248,124,0,248,60,0,240,60,0,240, + 28,0,224,14,1,192,6,1,128,3,3,0,1,254,0,23, + 28,84,27,2,0,255,255,128,31,129,240,31,128,248,31,128, + 252,31,128,124,31,128,126,31,128,126,31,128,126,31,128,126, + 31,128,126,31,128,124,31,128,252,31,128,248,31,129,224,31, + 255,128,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,255,248,0,22,37,111,27,3,248,1, + 254,0,3,3,0,6,1,128,14,1,192,28,0,224,60,0, + 240,60,0,240,124,0,248,124,0,248,124,0,248,252,0,252, + 252,0,252,252,0,252,252,0,252,252,0,252,252,0,252,252, + 0,252,252,0,252,124,0,248,124,0,248,124,0,248,60,56, + 240,60,76,240,30,133,224,14,135,224,7,135,192,3,135,132, + 1,238,4,0,22,4,0,6,4,0,7,12,0,7,12,0, + 7,252,0,7,248,0,7,248,0,3,240,0,1,224,25,28, + 112,28,2,0,255,255,0,0,31,135,192,0,31,131,224,0, + 31,129,240,0,31,129,248,0,31,129,248,0,31,129,248,0, + 31,129,248,0,31,129,248,0,31,129,240,0,31,131,224,0, + 31,135,192,0,31,254,0,0,31,135,128,0,31,131,192,0, + 31,129,240,0,31,129,240,0,31,129,248,0,31,129,248,0, + 31,129,248,0,31,129,248,0,31,129,248,128,31,129,248,128, + 31,129,248,128,31,129,248,128,31,129,249,0,31,128,249,0, + 255,248,126,0,18,29,87,23,3,0,1,0,0,31,225,128, + 48,57,128,96,31,128,96,15,128,224,7,128,240,3,128,240, + 3,128,248,1,128,254,1,128,255,1,128,127,192,0,127,224, + 0,63,248,0,31,252,0,7,255,0,3,255,0,128,255,128, + 128,127,128,192,31,192,192,15,192,192,7,192,224,3,192,224, + 1,192,240,1,128,248,1,128,248,3,0,206,2,0,135,188, + 0,24,28,84,27,2,0,255,255,255,252,126,63,248,126,31, + 240,126,15,224,126,15,224,126,7,192,126,7,192,126,3,192, + 126,3,192,126,3,128,126,3,128,126,2,0,126,0,0,126, + 0,0,126,0,0,126,0,0,126,0,0,126,0,0,126,0, + 0,126,0,0,126,0,0,126,0,0,126,0,0,126,0,0, + 126,0,0,126,0,0,126,0,7,255,224,26,28,112,30,3, + 0,255,240,127,192,31,128,31,0,31,128,14,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,31,128,6,0,31,128,6, + 0,31,128,6,0,31,128,6,0,15,128,12,0,15,192,12, + 0,7,192,24,0,7,224,56,0,1,252,240,0,0,255,192, + 0,27,28,112,30,2,0,255,248,127,224,31,192,15,0,15, + 192,6,0,15,192,6,0,7,224,4,0,7,224,12,0,7, + 224,8,0,3,240,8,0,3,240,8,0,3,240,24,0,1, + 248,16,0,1,248,16,0,1,252,48,0,0,252,32,0,0, + 252,32,0,0,254,96,0,0,126,64,0,0,126,64,0,0, + 127,192,0,0,63,128,0,0,63,128,0,0,63,128,0,0, + 31,0,0,0,31,0,0,0,31,0,0,0,14,0,0,0, + 14,0,0,0,14,0,0,38,28,140,41,2,0,255,243,255, + 207,252,31,192,126,1,224,15,192,126,0,192,15,192,62,0, + 192,7,192,63,0,128,7,224,63,0,128,7,224,63,1,128, + 7,224,63,129,0,3,240,63,129,0,3,240,127,131,0,3, + 240,111,195,0,1,248,79,194,0,1,248,207,194,0,1,248, + 199,230,0,0,252,135,230,0,0,252,135,228,0,0,253,131, + 244,0,0,127,131,252,0,0,127,3,248,0,0,127,3,248, + 0,0,127,1,248,0,0,63,1,248,0,0,62,1,240,0, + 0,62,0,240,0,0,30,0,240,0,0,28,0,240,0,0, + 28,0,96,0,0,12,0,96,0,26,28,112,29,2,0,255, + 241,255,128,31,224,124,0,15,224,56,0,15,224,48,0,7, + 240,96,0,7,240,96,0,3,248,192,0,3,248,128,0,1, + 253,128,0,0,255,0,0,0,254,0,0,0,126,0,0,0, + 127,0,0,0,63,0,0,0,63,128,0,0,31,128,0,0, + 63,192,0,0,111,192,0,0,79,224,0,0,199,224,0,1, + 135,240,0,1,131,240,0,3,3,248,0,2,1,248,0,6, + 1,252,0,14,0,252,0,30,1,254,0,255,199,255,192,25, + 28,112,28,2,0,255,240,255,128,31,192,60,0,31,192,24, + 0,15,192,24,0,15,224,24,0,7,224,16,0,7,224,48, + 0,3,240,32,0,3,240,32,0,1,248,96,0,1,248,64, + 0,1,252,64,0,0,252,192,0,0,254,128,0,0,127,128, + 0,0,127,128,0,0,63,0,0,0,63,0,0,0,63,0, + 0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0, + 0,0,63,0,0,0,63,0,0,0,63,0,0,0,63,0, + 0,1,255,224,0,20,28,84,25,3,0,127,255,240,126,7, + 240,124,7,224,120,15,224,112,15,192,96,31,192,96,31,128, + 96,63,128,64,63,0,64,127,0,0,254,0,0,254,0,1, + 252,0,1,248,0,3,248,0,3,240,0,7,240,0,7,224, + 16,15,224,16,15,192,16,31,192,48,31,128,48,63,128,112, + 63,0,112,127,0,240,126,1,240,254,7,240,255,255,240,9, + 35,70,15,3,249,255,128,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,248,0,248,0,248,0,248, + 0,248,0,248,0,248,0,248,0,255,128,13,37,74,17,2, + 248,192,0,224,0,224,0,96,0,112,0,112,0,48,0,56, + 0,56,0,24,0,24,0,28,0,28,0,12,0,14,0,14, + 0,6,0,6,0,7,0,7,0,3,0,3,128,3,128,1, + 128,1,192,1,192,0,192,0,192,0,224,0,224,0,96,0, + 112,0,112,0,48,0,48,0,56,0,56,9,35,70,15,3, + 249,255,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,255,128,18,14,42,22,2,15,0,192,0, + 0,192,0,1,224,0,3,240,0,3,240,0,7,56,0,7, + 56,0,14,28,0,28,14,0,28,14,0,56,7,0,56,7, + 0,112,3,128,224,1,192,20,3,9,20,0,249,255,255,240, + 255,255,240,255,255,240,7,7,7,17,3,21,224,240,240,120, + 60,12,6,17,19,57,20,2,0,15,192,0,24,240,0,48, + 120,0,112,120,0,124,124,0,124,124,0,124,124,0,0,252, + 0,7,124,0,28,124,0,56,124,0,120,124,0,248,124,0, + 248,124,128,248,124,128,248,124,128,252,253,128,127,191,0,62, + 30,0,18,28,84,20,0,0,255,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,60,0,31,78,0,31,143,0,31,135,128,31, + 7,128,31,7,128,31,7,192,31,7,192,31,7,192,31,7, + 192,31,7,192,31,7,192,31,7,192,31,7,128,31,7,128, + 31,135,0,25,143,0,16,206,0,16,120,0,14,19,38,18, + 2,0,7,224,14,48,60,24,60,28,120,60,120,124,248,124, + 248,120,248,48,248,0,248,0,248,0,248,0,120,4,120,4, + 56,4,28,8,14,16,7,224,18,28,84,21,2,0,0,254, + 0,0,62,0,0,62,0,0,62,0,0,62,0,0,62,0, + 0,62,0,0,62,0,0,62,0,15,62,0,28,190,0,60, + 126,0,120,126,0,120,62,0,120,62,0,248,62,0,248,62, + 0,248,62,0,248,62,0,248,62,0,248,62,0,248,62,0, + 120,62,0,120,62,0,120,126,0,60,126,0,28,190,0,15, + 63,192,14,19,38,18,2,0,7,192,28,224,56,112,56,120, + 120,120,120,124,248,124,248,124,248,124,255,252,248,0,248,0, + 248,0,120,4,120,4,56,8,60,8,30,16,7,224,14,28, + 56,13,1,0,1,240,7,24,15,28,30,60,30,124,62,124, + 62,56,62,0,62,0,255,192,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,62,0,62,0,62,0, + 62,0,62,0,62,0,62,0,62,0,255,192,19,28,84,22, + 2,247,7,225,192,30,118,96,60,60,224,60,60,224,124,62, + 192,124,62,0,124,62,0,124,62,0,60,60,0,60,60,0, + 30,120,0,7,224,0,56,0,0,96,0,0,96,0,0,127, + 224,0,127,254,0,127,255,0,63,255,128,31,255,128,96,7, + 128,192,3,128,128,3,128,128,3,0,128,3,0,64,6,0, + 48,28,0,15,240,0,20,28,84,22,1,0,255,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,30,0,31,111,0,31,135,128, + 31,135,192,31,135,192,31,7,192,31,7,192,31,7,192,31, + 7,192,31,7,192,31,7,192,31,7,192,31,7,192,31,7, + 192,31,7,192,31,7,192,31,7,192,31,7,192,255,223,240, + 8,28,28,12,2,0,60,126,126,126,126,60,0,0,0,252, + 124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124, + 124,255,12,37,74,13,254,247,1,224,3,240,3,240,3,240, + 3,240,1,224,0,0,0,0,0,0,15,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,123,224,251,224,251,224,243,192,227,192,103,128, + 30,0,20,28,84,21,1,0,255,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,31,192,31,7,0,31,6,0,31,4,0,31, + 8,0,31,16,0,31,16,0,31,48,0,31,120,0,31,248, + 0,31,188,0,31,60,0,31,30,0,31,31,0,31,15,0, + 31,15,128,31,15,128,31,15,192,255,223,240,11,28,56,12, + 1,0,255,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,255,224,27,19,76,30,2,0, + 254,60,30,0,62,222,111,0,63,31,143,0,63,31,143,128, + 63,31,143,128,62,31,15,128,62,31,15,128,62,31,15,128, + 62,31,15,128,62,31,15,128,62,31,15,128,62,31,15,128, + 62,31,15,128,62,31,15,128,62,31,15,128,62,31,15,128, + 62,31,15,128,62,31,15,128,255,63,223,224,19,19,57,22, + 2,0,254,60,0,62,222,0,63,15,0,63,15,128,63,15, + 128,62,15,128,62,15,128,62,15,128,62,15,128,62,15,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 15,128,62,15,128,62,15,128,255,191,224,16,19,38,20,2, + 0,7,192,12,112,28,56,56,60,120,30,120,30,248,30,248, + 31,248,31,248,31,248,31,248,31,248,30,120,30,120,30,56, + 60,28,56,12,112,7,192,18,28,84,21,1,247,255,60,0, + 31,78,0,31,143,0,31,135,128,31,7,128,31,7,128,31, + 7,192,31,7,192,31,7,192,31,7,192,31,7,192,31,7, + 192,31,7,192,31,7,128,31,7,128,31,135,128,31,143,0, + 31,78,0,31,60,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,255,192, + 0,17,28,84,20,2,247,7,130,0,28,194,0,60,102,0, + 120,126,0,120,62,0,120,62,0,248,62,0,248,62,0,248, + 62,0,248,62,0,248,62,0,248,62,0,248,62,0,120,62, + 0,120,62,0,120,126,0,60,126,0,28,190,0,15,62,0, + 0,62,0,0,62,0,0,62,0,0,62,0,0,62,0,0, + 62,0,0,62,0,0,62,0,0,255,128,14,19,38,17,2, + 0,254,48,62,120,62,188,63,60,63,124,62,124,62,56,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,0,62, + 0,62,0,62,0,255,128,13,19,38,16,2,0,31,16,97, + 208,96,112,224,48,224,48,240,16,248,0,126,0,127,128,63, + 224,15,240,135,240,193,248,192,120,224,56,224,24,240,16,156, + 48,135,192,12,27,54,14,1,0,6,0,6,0,6,0,6, + 0,6,0,14,0,30,0,62,0,255,224,62,0,62,0,62, + 0,62,0,62,0,62,0,62,0,62,0,62,0,62,16,62, + 16,62,16,62,16,62,16,62,32,62,32,31,192,7,128,19, + 19,57,21,1,0,254,63,128,62,15,128,62,15,128,62,15, + 128,62,15,128,62,15,128,62,15,128,62,15,128,62,15,128, + 62,15,128,62,15,128,62,15,128,62,15,128,62,15,128,62, + 31,128,62,31,128,30,47,128,30,79,128,7,143,224,18,19, + 57,20,1,0,255,143,192,62,3,0,30,2,0,30,2,0, + 31,2,0,15,4,0,15,4,0,15,132,0,7,136,0,7, + 200,0,7,216,0,3,208,0,3,240,0,3,240,0,1,224, + 0,1,224,0,0,224,0,0,192,0,0,192,0,28,19,76, + 30,1,0,255,63,231,240,62,15,129,192,30,7,129,128,30, + 7,129,128,31,7,193,0,15,7,193,0,15,7,195,0,15, + 143,226,0,7,137,226,0,7,137,230,0,7,217,244,0,3, + 208,244,0,3,240,248,0,3,240,248,0,1,224,248,0,1, + 224,112,0,1,192,112,0,0,192,112,0,0,192,32,0,18, + 19,57,20,1,0,255,63,128,126,14,0,62,12,0,31,8, + 0,31,16,0,15,176,0,15,160,0,7,192,0,3,192,0, + 3,224,0,1,240,0,3,240,0,2,248,0,4,248,0,12, + 124,0,8,126,0,24,62,0,56,63,0,254,127,192,19,28, + 84,20,0,247,255,207,224,63,3,128,31,3,0,31,2,0, + 15,2,0,15,130,0,15,130,0,7,196,0,7,196,0,3, + 196,0,3,232,0,3,232,0,1,248,0,1,248,0,0,240, + 0,0,240,0,0,112,0,0,96,0,0,96,0,0,32,0, + 0,64,0,12,64,0,30,64,0,62,64,0,62,128,0,60, + 128,0,29,0,0,14,0,0,14,19,38,17,1,0,127,252, + 120,124,112,248,96,248,65,240,65,224,67,224,3,192,7,192, + 7,128,15,128,31,4,31,4,62,4,62,12,124,12,120,28, + 248,60,255,252,12,35,70,16,2,249,1,240,7,128,15,0, + 15,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,30,0,30,0,56,0,224,0,56,0, + 30,0,30,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,15,0,15,0,7,128,1,240, + 3,36,36,11,4,248,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,12,37,74,16,2,248, + 128,0,240,0,28,0,15,0,15,0,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 7,128,3,192,0,112,3,192,7,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,0,15,0,28,0,248,0,128,0,21,8,24,25,2,6, + 62,0,48,127,192,16,255,240,8,135,252,8,129,255,24,128, + 127,248,192,31,240,96,3,224,255}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--48-480-72-72-P-258-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 35, '1' Height: 34 + Calculated Max Values w=49 h=46 x= 9 y=28 dx=52 dy= 0 ascent=45 len=246 + Font Bounding box w=133 h=60 x=-41 y=-14 + Calculated Min Values x=-2 y=-12 dx= 0 dy= 0 + Pure Font ascent =35 descent=-10 + X Font ascent =35 descent=-10 + Max Font ascent =45 descent=-12 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb35[22095] U8G_SECTION(".progmem.u8g_font_osb35") = { + 0,133,60,215,242,35,12,218,29,222,32,255,246,45,244,35, + 246,0,0,0,13,0,0,8,34,34,14,3,1,126,126,255, + 255,255,255,255,255,126,126,126,126,60,60,60,60,60,24,24, + 24,24,24,24,24,24,0,0,0,126,255,255,255,255,126,12, + 12,24,18,3,23,32,64,241,224,249,240,249,240,249,240,249, + 240,249,240,112,224,112,224,112,224,112,224,112,224,28,34,136, + 34,3,0,0,112,14,0,0,112,14,0,0,112,14,0,0, + 112,14,0,0,240,30,0,0,224,28,0,0,224,28,0,0, + 224,28,0,0,224,28,0,255,255,255,240,255,255,255,240,255, + 255,255,240,1,192,56,0,1,192,56,0,1,192,56,0,1, + 192,56,0,3,192,56,0,3,128,120,0,3,128,112,0,3, + 128,112,0,3,128,112,0,3,128,112,0,255,255,255,224,255, + 255,255,224,255,255,255,224,7,0,224,0,7,0,224,0,7, + 0,224,0,7,0,224,0,15,1,224,0,14,1,224,0,14, + 1,192,0,14,1,192,0,14,1,192,0,23,42,126,28,2, + 252,0,195,0,0,195,0,0,195,0,0,195,0,3,255,192, + 7,195,112,28,195,24,60,195,12,56,195,14,120,195,14,120, + 195,30,120,195,62,124,195,126,126,195,126,127,195,124,127,195, + 56,63,243,0,63,251,0,31,255,0,31,255,128,7,255,192, + 3,255,240,0,255,248,0,255,248,0,223,252,0,199,252,124, + 195,254,124,195,254,252,195,126,252,195,62,248,195,30,240,195, + 30,224,195,28,96,195,28,112,195,56,56,195,56,28,195,96, + 7,255,192,0,195,0,0,195,0,0,195,0,0,195,0,33, + 35,175,41,4,0,0,0,0,48,0,15,192,0,96,0,60, + 240,0,224,0,56,112,0,192,0,120,120,1,128,0,120,120, + 1,128,0,248,124,3,0,0,248,124,7,0,0,248,124,6, + 0,0,248,124,14,0,0,248,124,12,0,0,248,124,24,0, + 0,120,120,24,0,0,120,120,48,0,0,56,240,112,0,0, + 28,224,96,0,0,15,192,192,0,0,0,0,192,0,0,0, + 1,128,240,0,0,3,131,156,0,0,3,7,158,0,0,7, + 15,15,0,0,6,15,15,0,0,12,31,15,128,0,12,31, + 15,128,0,24,31,15,128,0,56,31,15,128,0,48,31,15, + 128,0,96,31,15,128,0,96,31,15,128,0,192,15,15,0, + 1,192,15,15,0,1,128,7,14,0,3,128,7,158,0,3, + 0,1,248,0,33,34,170,37,2,1,0,31,224,0,0,0, + 112,112,0,0,0,224,48,0,0,0,224,24,0,0,1,224, + 24,0,0,1,224,24,0,0,1,224,24,0,0,1,240,56, + 0,0,1,240,48,0,0,1,248,96,0,0,1,248,192,0, + 0,0,255,128,0,0,0,255,0,0,0,0,126,0,0,0, + 0,63,0,0,0,0,255,129,255,128,1,223,128,62,0,3, + 143,192,28,0,7,15,224,24,0,14,7,224,56,0,30,3, + 240,48,0,60,1,248,48,0,124,1,248,96,0,124,0,252, + 96,0,252,0,126,192,0,252,0,127,128,0,252,0,63,128, + 0,254,0,31,128,0,255,0,31,128,0,255,0,15,193,128, + 127,192,63,225,0,63,248,247,243,0,31,255,195,254,0,15, + 254,0,252,0,5,12,12,11,3,23,32,240,248,248,248,248, + 248,112,112,112,112,112,14,43,86,18,3,248,0,28,0,56, + 0,112,0,224,1,192,3,128,7,0,15,0,14,0,30,0, + 30,0,60,0,60,0,124,0,124,0,124,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 124,0,124,0,124,0,124,0,60,0,60,0,30,0,30,0, + 14,0,15,0,7,0,3,128,1,192,0,224,0,112,0,56, + 0,12,13,43,86,17,1,248,192,0,224,0,48,0,24,0, + 28,0,14,0,7,0,7,128,3,128,3,192,1,224,1,224, + 1,224,1,240,1,240,1,240,1,248,1,248,1,248,1,248, + 1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,240, + 1,240,1,240,1,224,1,224,3,192,3,192,3,128,7,128, + 7,0,14,0,28,0,56,0,112,0,224,0,128,0,17,19, + 57,24,4,13,1,128,0,3,192,0,3,192,0,227,195,0, + 241,135,128,248,143,128,252,159,128,126,191,0,3,192,0,3, + 192,0,126,191,0,252,159,128,248,143,128,241,135,128,225,195, + 0,3,192,0,3,192,0,3,192,0,1,128,0,41,41,246, + 45,2,249,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,255,255,255,255,255,128,255,255,255,255,255, + 128,255,255,255,255,255,128,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,9,15,30,13,2,248,126, + 0,255,0,255,128,255,128,255,128,127,128,1,128,1,128,1, + 128,3,0,2,0,6,0,28,0,56,0,96,0,12,5,10, + 18,3,10,255,240,255,240,255,240,255,240,255,240,8,6,6, + 14,3,1,126,255,255,255,255,126,16,44,88,22,3,247,0, + 7,0,15,0,14,0,14,0,14,0,30,0,28,0,28,0, + 60,0,56,0,56,0,120,0,112,0,112,0,240,0,224,0, + 224,0,224,1,224,1,192,1,192,3,192,3,128,3,128,7, + 128,7,0,7,0,15,0,14,0,14,0,14,0,30,0,28, + 0,28,0,60,0,56,0,56,0,120,0,112,0,112,0,240, + 0,224,0,224,0,224,0,23,35,105,28,2,0,0,16,0, + 0,254,0,3,199,128,7,131,192,15,1,224,15,1,224,31, + 1,240,63,1,248,63,1,248,127,1,248,127,1,252,127,1, + 252,127,1,252,255,1,254,255,1,254,255,1,254,255,1,254, + 255,1,254,255,1,254,255,1,254,255,1,254,255,1,254,255, + 1,254,127,1,252,127,1,252,127,1,252,127,1,252,63,1, + 248,63,1,248,31,1,240,15,1,224,15,1,224,7,131,192, + 3,199,128,0,254,0,16,34,68,28,6,0,0,240,0,240, + 1,240,7,240,255,240,7,240,7,240,7,240,7,240,7,240, + 7,240,7,240,7,240,7,240,7,240,7,240,7,240,7,240, + 7,240,7,240,7,240,7,240,7,240,7,240,7,240,7,240, + 7,240,7,240,7,240,7,240,7,240,7,240,255,255,255,255, + 21,34,102,28,3,1,7,255,0,14,15,192,28,7,224,56, + 7,240,120,3,240,120,3,248,248,3,248,252,3,248,255,3, + 248,255,3,248,255,7,248,127,7,240,63,15,240,12,15,224, + 0,31,192,0,63,128,0,127,0,0,252,0,1,240,0,3, + 192,0,7,128,0,14,0,24,12,0,24,24,0,24,48,0, + 24,96,0,24,111,192,56,127,255,248,255,255,240,239,255,240, + 195,255,240,193,255,224,192,255,192,192,63,128,22,34,102,28, + 3,1,7,255,0,14,15,192,28,7,224,56,7,240,120,3, + 240,124,3,248,126,3,248,127,3,248,127,3,248,127,3,248, + 63,3,240,30,3,240,0,7,224,0,7,192,0,15,0,7, + 248,0,0,31,128,0,15,192,0,7,224,0,7,240,0,3, + 248,0,3,248,62,3,252,127,3,252,255,3,252,255,3,252, + 255,3,252,254,3,252,252,3,248,248,7,248,120,7,240,56, + 15,224,30,31,192,15,255,0,23,34,102,28,2,0,0,7, + 192,0,15,192,0,15,192,0,31,192,0,63,192,0,63,192, + 0,127,192,0,127,192,0,255,192,0,223,192,1,223,192,1, + 159,192,3,159,192,7,31,192,6,31,192,14,31,192,12,31, + 192,28,31,192,24,31,192,56,31,192,112,31,192,96,31,192, + 224,31,192,255,255,254,0,31,192,0,31,192,0,31,192,0, + 31,192,0,31,192,0,31,192,0,31,192,0,31,192,7,255, + 252,7,255,252,21,34,102,28,4,0,32,0,192,60,7,128, + 63,255,128,63,255,0,63,254,0,63,248,0,63,224,0,63, + 0,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 0,49,252,0,54,63,0,60,15,192,56,15,224,48,15,224, + 32,7,240,0,7,240,0,7,248,0,7,248,8,7,248,62, + 7,248,126,7,248,254,7,248,254,7,248,254,7,240,248,7, + 240,240,7,224,112,15,192,48,15,192,28,31,0,15,252,0, + 22,34,102,28,3,1,0,255,128,3,192,192,7,192,96,15, + 128,240,31,131,240,31,7,240,63,15,240,63,15,240,127,15, + 224,127,7,192,127,3,0,127,0,0,255,0,0,255,0,0, + 255,63,0,255,255,192,255,195,224,255,131,240,255,3,248,255, + 1,248,255,1,252,255,1,252,255,1,252,127,1,252,127,1, + 252,127,1,252,127,1,252,63,1,248,63,1,248,31,1,248, + 15,129,240,7,131,224,3,195,192,1,255,0,20,34,102,28, + 5,1,71,224,224,207,240,224,223,248,112,255,252,48,255,254, + 48,255,255,240,255,255,240,224,31,176,192,0,32,192,0,96, + 128,0,96,128,0,192,128,1,192,0,1,128,0,3,128,0, + 7,0,0,15,0,0,14,0,0,30,0,0,60,0,0,124, + 0,0,252,0,1,252,0,1,248,0,3,248,0,3,248,0, + 7,248,0,7,248,0,7,248,0,7,248,0,7,248,0,7, + 248,0,3,248,0,3,240,0,23,34,102,28,3,1,1,255, + 128,7,0,192,12,0,96,28,0,48,56,0,24,56,0,24, + 120,0,24,120,0,24,124,0,24,126,0,24,127,0,48,127, + 192,32,127,240,96,63,255,128,63,255,0,31,255,192,15,255, + 240,7,255,248,15,255,248,24,63,252,48,15,252,112,3,254, + 96,0,254,224,0,126,224,0,62,224,0,30,224,0,30,224, + 0,12,240,0,28,112,0,24,56,0,24,28,0,48,15,0, + 192,3,255,0,22,34,102,28,3,1,3,254,0,15,15,0, + 31,7,128,62,7,192,126,3,224,126,3,240,126,3,240,254, + 3,248,254,3,248,254,3,248,254,3,248,254,3,252,254,3, + 252,254,3,252,126,3,252,127,7,252,63,7,252,31,15,252, + 15,255,252,3,243,252,0,3,252,0,3,252,0,3,248,7, + 3,248,31,131,248,31,195,248,63,195,240,63,195,240,63,131, + 224,62,7,224,60,7,192,28,15,128,14,31,0,7,252,0, + 8,22,22,14,3,1,126,255,255,255,255,126,0,0,0,0, + 0,0,0,0,0,0,126,255,255,255,255,126,9,31,62,13, + 2,248,63,0,127,128,127,128,127,128,127,128,63,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,126,0,255,0,255,128,255,128,255,128,127,128,1,128, + 1,128,1,128,3,0,3,0,6,0,28,0,56,0,96,0, + 37,40,200,45,4,249,0,0,0,0,48,0,0,0,0,240, + 0,0,0,1,248,0,0,0,7,224,0,0,0,31,128,0, + 0,0,126,0,0,0,1,252,0,0,0,7,240,0,0,0, + 15,192,0,0,0,63,0,0,0,0,252,0,0,0,3,240, + 0,0,0,15,224,0,0,0,63,128,0,0,0,126,0,0, + 0,1,248,0,0,0,7,224,0,0,0,31,128,0,0,0, + 127,0,0,0,0,252,0,0,0,0,248,0,0,0,0,126, + 0,0,0,0,31,128,0,0,0,15,224,0,0,0,3,248, + 0,0,0,0,252,0,0,0,0,63,0,0,0,0,15,192, + 0,0,0,3,240,0,0,0,1,252,0,0,0,0,127,0, + 0,0,0,31,192,0,0,0,7,224,0,0,0,1,248,0, + 0,0,0,126,0,0,0,0,63,128,0,0,0,15,224,0, + 0,0,3,248,0,0,0,0,248,0,0,0,0,48,41,13, + 78,45,2,6,255,255,255,255,255,128,255,255,255,255,255,128, + 255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 255,255,255,255,255,128,255,255,255,255,255,128,255,255,255,255, + 255,128,37,40,200,45,4,249,96,0,0,0,0,120,0,0, + 0,0,252,0,0,0,0,63,0,0,0,0,15,192,0,0, + 0,3,240,0,0,0,1,252,0,0,0,0,127,0,0,0, + 0,31,128,0,0,0,7,224,0,0,0,1,248,0,0,0, + 0,126,0,0,0,0,63,128,0,0,0,15,224,0,0,0, + 3,240,0,0,0,0,252,0,0,0,0,63,0,0,0,0, + 15,192,0,0,0,7,240,0,0,0,1,248,0,0,0,0, + 248,0,0,0,3,240,0,0,0,15,192,0,0,0,63,128, + 0,0,0,254,0,0,0,1,248,0,0,0,7,224,0,0, + 0,31,128,0,0,0,126,0,0,0,1,252,0,0,0,7, + 240,0,0,0,31,192,0,0,0,63,0,0,0,0,252,0, + 0,0,3,240,0,0,0,15,224,0,0,0,63,128,0,0, + 0,254,0,0,0,0,248,0,0,0,0,96,0,0,0,0, + 15,34,68,22,3,1,31,240,59,248,96,252,96,252,192,126, + 192,126,192,126,192,126,192,126,64,252,96,252,48,248,1,240, + 1,224,3,192,3,128,7,0,7,0,14,0,12,16,12,16, + 12,16,12,16,6,32,3,192,0,0,0,0,0,128,3,224, + 7,240,7,240,7,240,7,240,3,224,35,34,170,39,2,1, + 0,15,255,0,0,0,56,1,224,0,0,224,0,112,0,1, + 128,0,28,0,7,0,0,14,0,14,0,0,7,0,12,0, + 248,3,0,28,3,205,243,128,56,7,135,241,128,56,15,7, + 225,192,112,31,7,225,192,112,62,7,224,224,112,62,7,224, + 224,224,124,7,192,224,224,124,7,192,224,224,124,7,192,224, + 224,252,15,192,224,224,248,15,128,224,224,248,15,128,224,224, + 248,15,129,192,224,248,31,129,192,224,248,31,129,128,112,248, + 31,3,128,112,248,63,3,0,112,120,111,6,0,56,60,199, + 140,0,56,31,3,240,0,28,0,0,0,0,14,0,0,0, + 0,7,0,0,0,0,3,128,0,0,0,1,192,0,96,0, + 0,120,1,192,0,0,31,255,0,0,33,35,175,36,2,0, + 0,0,192,0,0,0,1,192,0,0,0,1,224,0,0,0, + 1,224,0,0,0,3,224,0,0,0,3,240,0,0,0,3, + 240,0,0,0,7,240,0,0,0,7,248,0,0,0,7,248, + 0,0,0,15,248,0,0,0,15,252,0,0,0,15,252,0, + 0,0,25,252,0,0,0,25,254,0,0,0,25,254,0,0, + 0,48,254,0,0,0,48,255,0,0,0,32,255,0,0,0, + 96,127,0,0,0,96,127,128,0,0,64,127,128,0,0,192, + 63,128,0,0,192,63,192,0,0,255,255,192,0,1,255,255, + 192,0,1,128,31,224,0,1,0,31,224,0,3,0,15,224, + 0,3,0,15,240,0,2,0,15,240,0,6,0,7,240,0, + 15,0,7,248,0,31,0,15,252,0,255,240,255,255,128,28, + 34,136,33,3,0,255,255,240,0,15,224,126,0,15,224,31, + 0,15,224,31,128,15,224,15,192,15,224,15,192,15,224,15, + 224,15,224,15,224,15,224,15,224,15,224,15,224,15,224,15, + 224,15,224,15,192,15,224,15,192,15,224,31,128,15,224,30, + 0,15,224,60,0,15,255,224,0,15,224,124,0,15,224,63, + 0,15,224,31,128,15,224,15,192,15,224,15,224,15,224,15, + 240,15,224,15,240,15,224,15,240,15,224,15,240,15,224,15, + 240,15,224,15,240,15,224,15,224,15,224,15,224,15,224,31, + 192,15,224,31,128,15,224,126,0,255,255,248,0,26,34,136, + 31,3,1,0,127,193,128,1,224,241,128,3,192,63,128,15, + 128,31,128,15,128,15,128,31,0,15,128,63,0,7,128,63, + 0,7,128,127,0,3,128,127,0,3,128,127,0,3,128,127, + 0,1,128,255,0,1,128,255,0,1,128,255,0,1,128,255, + 0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255, + 0,0,0,255,0,0,0,255,0,0,192,127,0,0,192,127, + 0,0,192,127,0,0,128,63,0,1,128,63,0,1,128,63, + 0,1,128,31,128,3,0,15,128,3,0,7,128,6,0,3, + 192,12,0,1,224,56,0,0,127,224,0,32,34,136,37,3, + 0,255,255,248,0,15,224,31,0,15,224,7,128,15,224,3, + 224,15,224,1,240,15,224,1,240,15,224,0,248,15,224,0, + 252,15,224,0,252,15,224,0,254,15,224,0,254,15,224,0, + 254,15,224,0,255,15,224,0,255,15,224,0,255,15,224,0, + 255,15,224,0,255,15,224,0,255,15,224,0,255,15,224,0, + 255,15,224,0,255,15,224,0,254,15,224,0,254,15,224,0, + 254,15,224,0,254,15,224,0,252,15,224,0,252,15,224,0, + 248,15,224,1,240,15,224,1,224,15,224,3,192,15,224,7, + 128,15,224,30,0,255,255,248,0,27,34,136,33,3,0,255, + 255,255,224,15,224,31,224,15,224,7,224,15,224,3,224,15, + 224,1,224,15,224,1,224,15,224,0,224,15,224,0,224,15, + 224,0,96,15,224,48,96,15,224,48,96,15,224,48,0,15, + 224,112,0,15,224,112,0,15,224,240,0,15,225,240,0,15, + 255,240,0,15,225,240,0,15,224,240,0,15,224,112,0,15, + 224,112,32,15,224,48,96,15,224,48,96,15,224,48,96,15, + 224,0,96,15,224,0,96,15,224,0,224,15,224,0,224,15, + 224,1,224,15,224,3,224,15,224,3,224,15,224,15,224,255, + 255,255,224,255,255,255,224,28,34,136,32,3,0,255,255,255, + 240,7,240,15,240,7,240,3,240,7,240,1,240,7,240,1, + 240,7,240,0,240,7,240,0,240,7,240,0,112,7,240,0, + 112,7,240,24,48,7,240,24,48,7,240,24,48,7,240,56, + 48,7,240,56,0,7,240,120,0,7,240,248,0,7,255,248, + 0,7,240,248,0,7,240,120,0,7,240,56,0,7,240,56, + 0,7,240,24,0,7,240,24,0,7,240,24,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,255,255,128,0,30,34,136,35,3,1,0,127,224,192,0, + 224,120,192,3,192,31,192,7,128,15,192,15,128,7,192,31, + 0,7,192,31,0,3,192,63,0,3,192,63,0,1,192,127, + 0,1,192,127,0,1,192,127,0,0,192,255,0,0,192,255, + 0,0,192,255,0,0,0,255,0,0,0,255,0,0,0,255, + 3,255,252,255,3,255,252,255,0,31,192,255,0,31,192,255, + 0,31,192,127,0,31,192,127,0,31,192,127,0,31,192,127, + 0,31,192,63,0,31,192,63,0,31,192,31,0,31,192,15, + 128,57,192,15,128,49,192,7,192,96,192,1,224,192,192,0, + 127,128,192,34,34,170,39,3,0,255,255,63,255,192,7,240, + 1,252,0,7,240,1,252,0,7,240,1,252,0,7,240,1, + 252,0,7,240,1,252,0,7,240,1,252,0,7,240,1,252, + 0,7,240,1,252,0,7,240,1,252,0,7,240,1,252,0, + 7,240,1,252,0,7,240,1,252,0,7,240,1,252,0,7, + 240,1,252,0,7,240,1,252,0,7,255,255,252,0,7,240, + 1,252,0,7,240,1,252,0,7,240,1,252,0,7,240,1, + 252,0,7,240,1,252,0,7,240,1,252,0,7,240,1,252, + 0,7,240,1,252,0,7,240,1,252,0,7,240,1,252,0, + 7,240,1,252,0,7,240,1,252,0,7,240,1,252,0,7, + 240,1,252,0,7,240,1,252,0,7,240,1,252,0,255,255, + 63,255,192,16,34,68,21,3,0,255,255,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,255,255,23,34,102, + 26,2,0,1,255,254,0,15,224,0,15,224,0,15,224,0, + 15,224,0,15,224,0,15,224,0,15,224,0,15,224,0,15, + 224,0,15,224,0,15,224,0,15,224,0,15,224,0,15,224, + 0,15,224,0,15,224,0,15,224,0,15,224,0,15,224,0, + 15,224,30,15,224,126,15,224,127,15,224,255,15,224,255,15, + 224,254,15,224,254,15,224,248,15,192,112,15,192,96,15,128, + 48,31,0,24,30,0,15,248,0,33,34,170,37,3,0,255, + 255,31,254,0,7,240,7,240,0,7,240,3,192,0,7,240, + 3,128,0,7,240,3,0,0,7,240,7,0,0,7,240,14, + 0,0,7,240,12,0,0,7,240,24,0,0,7,240,48,0, + 0,7,240,96,0,0,7,240,224,0,0,7,240,224,0,0, + 7,241,240,0,0,7,243,240,0,0,7,247,248,0,0,7, + 255,252,0,0,7,255,252,0,0,7,249,254,0,0,7,241, + 254,0,0,7,240,255,0,0,7,240,255,0,0,7,240,127, + 128,0,7,240,127,128,0,7,240,63,192,0,7,240,63,192, + 0,7,240,31,224,0,7,240,31,224,0,7,240,15,240,0, + 7,240,15,240,0,7,240,7,248,0,7,240,7,248,0,7, + 240,7,252,0,255,255,63,255,128,28,34,136,32,3,0,255, + 255,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,48,7, + 240,0,48,7,240,0,48,7,240,0,112,7,240,0,112,7, + 240,0,112,7,240,0,240,7,240,0,240,7,240,0,240,7, + 240,1,240,7,240,3,240,7,240,3,240,7,240,7,240,255, + 255,255,240,255,255,255,240,39,34,170,43,2,0,255,240,0, + 63,254,7,240,0,63,192,7,248,0,63,192,7,248,0,63, + 192,7,248,0,127,192,7,252,0,127,192,7,252,0,95,192, + 7,252,0,95,192,7,254,0,223,192,6,254,0,223,192,6, + 255,0,159,192,6,127,0,159,192,6,127,1,159,192,6,127, + 129,159,192,6,63,129,31,192,6,63,129,31,192,6,63,195, + 31,192,6,31,194,31,192,6,31,226,31,192,6,15,226,31, + 192,6,15,230,31,192,6,15,244,31,192,6,7,244,31,192, + 6,7,244,31,192,6,7,252,31,192,6,3,248,31,192,6, + 3,248,31,192,6,1,248,31,192,6,1,248,31,192,6,1, + 240,31,192,6,0,240,31,192,15,0,240,31,192,63,192,240, + 31,192,255,240,97,255,254,34,35,175,37,2,255,255,224,15, + 255,192,31,240,3,255,0,15,240,0,252,0,15,248,0,120, + 0,7,252,0,48,0,3,254,0,48,0,3,254,0,48,0, + 3,255,0,48,0,3,255,128,48,0,3,255,128,48,0,3, + 127,192,48,0,3,63,224,48,0,3,31,224,48,0,3,31, + 240,48,0,3,15,248,48,0,3,7,248,48,0,3,7,252, + 48,0,3,3,254,48,0,3,1,255,48,0,3,1,255,48, + 0,3,0,255,176,0,3,0,127,240,0,3,0,127,240,0, + 3,0,63,240,0,3,0,31,240,0,3,0,15,240,0,3, + 0,15,240,0,3,0,7,240,0,3,0,3,240,0,3,0, + 3,240,0,7,128,1,240,0,15,192,0,240,0,63,240,0, + 240,0,255,252,0,112,0,0,0,0,48,0,28,34,136,33, + 3,1,0,63,192,0,0,224,112,0,3,192,56,0,7,128, + 30,0,15,128,30,0,15,0,15,0,31,0,15,128,63,0, + 15,192,63,0,15,192,127,0,15,192,127,0,15,224,127,0, + 15,224,127,0,15,224,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,127,0,15,224,127,0,15,224,127,0, + 15,224,127,0,15,192,63,0,15,192,63,0,15,192,31,0, + 15,128,15,0,15,0,15,128,31,0,7,128,30,0,3,192, + 60,0,0,224,112,0,0,63,192,0,29,34,136,34,3,0, + 255,255,248,0,7,240,63,0,7,240,15,192,7,240,15,224, + 7,240,15,240,7,240,7,240,7,240,7,248,7,240,7,248, + 7,240,7,248,7,240,7,248,7,240,7,248,7,240,7,248, + 7,240,7,240,7,240,15,240,7,240,15,224,7,240,15,192, + 7,240,31,0,7,255,252,0,7,240,0,0,7,240,0,0, + 7,240,0,0,7,240,0,0,7,240,0,0,7,240,0,0, + 7,240,0,0,7,240,0,0,7,240,0,0,7,240,0,0, + 7,240,0,0,7,240,0,0,7,240,0,0,7,240,0,0, + 7,240,0,0,255,255,128,0,28,45,180,33,3,246,0,63, + 192,0,0,224,112,0,3,192,56,0,7,128,30,0,15,128, + 30,0,15,0,15,0,31,0,15,128,63,0,15,128,63,0, + 15,192,127,0,15,192,127,0,15,224,127,0,15,224,127,0, + 15,224,255,0,15,240,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,127,0,15,224,127,0,15,224,127,0, + 15,224,63,0,15,192,63,15,15,192,31,17,143,128,15,160, + 223,0,15,160,223,0,7,160,254,0,3,224,252,16,0,240, + 248,16,0,127,224,16,0,0,224,16,0,0,224,16,0,0, + 224,48,0,0,240,48,0,0,248,112,0,0,255,240,0,0, + 255,224,0,0,127,224,0,0,127,192,0,0,63,128,0,0, + 31,0,32,36,144,36,3,254,255,255,240,0,7,240,126,0, + 7,240,63,0,7,240,63,128,7,240,31,192,7,240,31,192, + 7,240,31,224,7,240,31,224,7,240,31,224,7,240,31,224, + 7,240,31,224,7,240,31,192,7,240,63,192,7,240,63,0, + 7,240,126,0,7,255,240,0,7,240,240,0,7,240,62,0, + 7,240,63,0,7,240,31,128,7,240,31,128,7,240,31,192, + 7,240,31,192,7,240,31,192,7,240,31,192,7,240,31,195, + 7,240,31,195,7,240,31,195,7,240,31,195,7,240,31,195, + 7,240,31,198,7,240,31,198,7,240,15,238,255,255,135,252, + 0,0,3,248,0,0,0,96,23,34,102,29,4,1,7,252, + 24,24,15,24,56,3,248,112,1,248,112,0,248,240,0,120, + 248,0,120,248,0,56,252,0,24,254,0,24,255,128,24,255, + 224,8,127,240,0,127,252,0,63,254,0,31,255,128,15,255, + 192,3,255,240,1,255,248,128,127,248,192,31,252,192,15,252, + 192,3,254,224,1,254,224,0,126,224,0,62,240,0,30,248, + 0,30,248,0,28,252,0,28,254,0,24,239,0,48,195,128, + 96,193,255,128,29,34,136,34,3,0,255,255,255,248,255,63, + 231,248,252,31,193,248,248,31,192,248,248,31,192,248,240,31, + 192,120,224,31,192,56,224,31,192,56,224,31,192,56,192,31, + 192,24,192,31,192,24,192,31,192,24,192,31,192,24,128,31, + 192,8,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,3,255, + 254,0,33,34,170,38,3,0,255,255,7,255,128,15,224,1, + 254,0,15,224,0,120,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,15,224,0,48,0,15, + 224,0,48,0,15,224,0,48,0,15,224,0,48,0,15,224, + 0,48,0,15,224,0,48,0,15,224,0,48,0,15,224,0, + 48,0,15,224,0,48,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,7,224,0,48,0,7, + 224,0,96,0,7,240,0,96,0,3,240,0,192,0,1,248, + 1,192,0,0,252,3,128,0,0,127,159,0,0,0,31,252, + 0,0,34,34,170,37,2,0,255,255,135,255,192,15,248,0, + 126,0,7,248,0,56,0,7,248,0,56,0,3,248,0,48, + 0,3,252,0,48,0,3,252,0,48,0,1,254,0,96,0, + 1,254,0,96,0,0,254,0,96,0,0,255,0,192,0,0, + 255,0,192,0,0,127,0,192,0,0,127,129,128,0,0,127, + 129,128,0,0,63,129,128,0,0,63,195,0,0,0,63,195, + 0,0,0,31,195,0,0,0,31,230,0,0,0,15,230,0, + 0,0,15,246,0,0,0,15,252,0,0,0,7,252,0,0, + 0,7,252,0,0,0,7,248,0,0,0,3,248,0,0,0, + 3,248,0,0,0,3,240,0,0,0,1,240,0,0,0,1, + 240,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224, + 0,0,49,34,238,52,2,0,255,255,63,255,207,255,128,31, + 252,7,254,0,252,0,7,248,3,252,0,112,0,7,248,1, + 252,0,112,0,3,248,1,254,0,96,0,3,252,1,254,0, + 96,0,3,252,0,254,0,96,0,1,252,0,254,0,192,0, + 1,254,1,255,0,192,0,1,254,1,255,0,192,0,0,254, + 1,255,1,128,0,0,255,3,127,129,128,0,0,255,3,63, + 129,128,0,0,127,3,63,129,128,0,0,127,135,63,195,0, + 0,0,127,134,31,195,0,0,0,63,134,31,195,0,0,0, + 63,198,31,231,0,0,0,31,204,15,230,0,0,0,31,204, + 15,230,0,0,0,31,236,15,246,0,0,0,15,248,7,252, + 0,0,0,15,248,7,252,0,0,0,15,248,7,252,0,0, + 0,7,248,3,252,0,0,0,7,240,3,248,0,0,0,7, + 240,3,248,0,0,0,3,240,1,248,0,0,0,3,224,1, + 240,0,0,0,3,224,1,240,0,0,0,1,224,0,240,0, + 0,0,1,192,0,240,0,0,0,1,192,0,224,0,0,0, + 0,192,0,96,0,0,33,34,170,36,2,0,127,255,31,254, + 0,31,252,3,240,0,7,248,3,192,0,3,248,3,128,0, + 3,252,3,128,0,1,252,3,0,0,1,254,7,0,0,0, + 255,6,0,0,0,255,12,0,0,0,127,140,0,0,0,127, + 152,0,0,0,63,240,0,0,0,63,240,0,0,0,31,224, + 0,0,0,31,224,0,0,0,15,240,0,0,0,15,248,0, + 0,0,7,248,0,0,0,7,252,0,0,0,7,252,0,0, + 0,15,254,0,0,0,29,254,0,0,0,24,255,0,0,0, + 56,255,0,0,0,48,127,128,0,0,96,127,128,0,0,224, + 63,192,0,0,192,63,224,0,1,128,31,224,0,3,128,31, + 240,0,3,128,15,240,0,7,128,15,248,0,31,128,31,252, + 0,255,240,127,255,128,32,34,136,35,2,0,255,254,15,255, + 31,248,1,248,15,248,0,240,7,248,0,224,7,248,0,192, + 3,252,0,192,3,252,0,192,1,252,1,128,1,254,1,128, + 0,254,3,0,0,255,3,0,0,255,3,0,0,127,134,0, + 0,127,134,0,0,63,196,0,0,63,204,0,0,31,204,0, + 0,31,248,0,0,15,248,0,0,15,248,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,255,255,0,25,34,136,31,3,0,127,255,255,128,127,128, + 127,128,126,0,255,0,124,0,255,0,120,1,254,0,120,3, + 254,0,112,3,252,0,112,7,252,0,96,7,248,0,96,15, + 248,0,96,15,240,0,64,31,224,0,0,31,224,0,0,63, + 192,0,0,63,192,0,0,127,128,0,0,127,128,0,0,255, + 0,0,0,255,0,0,1,254,0,0,3,254,0,128,3,252, + 0,128,7,248,0,128,7,248,0,128,15,240,1,128,15,240, + 1,128,31,224,3,128,31,224,3,128,63,192,7,128,63,192, + 15,128,127,128,31,128,127,128,63,128,255,255,255,128,255,255, + 255,128,11,42,84,18,4,248,255,224,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,255,224,16,44,88,22, + 3,247,224,0,224,0,224,0,240,0,112,0,112,0,120,0, + 56,0,56,0,60,0,28,0,28,0,30,0,14,0,14,0, + 14,0,15,0,7,0,7,0,7,128,3,128,3,128,3,192, + 1,192,1,192,1,224,0,224,0,224,0,224,0,240,0,112, + 0,112,0,120,0,56,0,56,0,60,0,28,0,28,0,30, + 0,14,0,14,0,14,0,15,0,7,11,42,84,18,3,248, + 255,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,255,224,22,17,51,28,3,18,0,48,0,0,112,0, + 0,120,0,0,252,0,0,252,0,1,254,0,3,207,0,3, + 143,0,7,135,128,15,3,128,15,3,192,30,1,224,60,0, + 224,60,0,240,120,0,120,112,0,56,240,0,60,25,3,12, + 25,0,248,255,255,255,128,255,255,255,128,255,255,255,128,8, + 9,9,21,4,25,96,240,248,124,60,30,15,3,1,21,22, + 66,24,2,1,15,248,0,24,62,0,56,63,0,120,31,0, + 124,31,128,126,31,128,126,31,128,62,31,128,8,63,128,1, + 255,128,7,159,128,30,31,128,62,31,128,124,31,128,124,31, + 128,252,31,128,252,31,136,252,31,136,252,31,152,254,63,144, + 127,127,240,63,143,224,22,34,102,25,1,0,255,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,159,128,31,179,224,31,225,224,31,193,240,31,193,248,31, + 192,248,31,192,248,31,128,252,31,128,252,31,128,252,31,128, + 252,31,128,252,31,128,252,31,128,252,31,128,252,31,128,248, + 31,192,248,31,193,248,29,193,240,24,225,224,24,99,192,16, + 63,128,18,22,66,22,2,1,3,252,0,15,6,0,31,3, + 0,62,3,128,62,7,128,126,15,128,124,31,128,252,31,128, + 252,31,0,252,14,0,252,0,0,252,0,0,252,0,0,252, + 0,0,252,0,0,124,0,64,124,0,192,62,0,128,62,0, + 128,30,1,0,15,130,0,3,252,0,23,34,102,26,2,0, + 0,63,224,0,7,224,0,7,224,0,7,224,0,7,224,0, + 7,224,0,7,224,0,7,224,0,7,224,0,7,224,0,7, + 224,0,7,224,7,231,224,31,23,224,30,31,224,62,15,224, + 126,15,224,124,15,224,124,7,224,252,7,224,252,7,224,252, + 7,224,252,7,224,252,7,224,252,7,224,252,7,224,252,7, + 224,124,7,224,124,15,224,126,15,224,62,15,224,30,31,224, + 15,23,224,7,231,254,18,22,66,23,2,1,3,252,0,14, + 30,0,30,31,0,62,15,128,60,15,128,124,15,128,124,15, + 192,252,15,192,252,15,192,252,15,192,255,255,192,252,0,0, + 252,0,0,252,0,0,252,0,64,124,0,64,124,0,192,62, + 0,192,62,0,128,31,1,0,15,131,0,3,252,0,18,34, + 102,16,1,1,0,255,0,1,199,128,7,199,128,7,199,192, + 15,143,192,15,143,192,31,143,192,31,143,128,31,135,128,31, + 128,0,31,128,0,31,128,0,255,240,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,255,240,0,24,33,99,27,2,246, + 7,254,62,31,15,71,63,7,143,62,7,207,126,7,238,126, + 7,228,126,7,224,126,7,224,126,7,224,62,7,192,31,15, + 128,15,15,0,3,252,0,12,0,0,48,0,0,48,0,0, + 112,0,0,112,0,0,127,255,128,127,255,224,63,255,240,31, + 255,240,7,255,248,60,1,248,96,0,120,192,0,56,192,0, + 56,192,0,48,192,0,112,96,0,96,48,1,192,30,7,128, + 3,252,0,24,34,102,27,1,0,255,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,143,224, + 31,145,240,31,160,248,31,160,252,31,192,252,31,192,252,31, + 192,252,31,128,252,31,128,252,31,128,252,31,128,252,31,128, + 252,31,128,252,31,128,252,31,128,252,31,128,252,31,128,252, + 31,128,252,31,128,252,31,128,252,31,128,252,255,227,255,11, + 35,70,15,2,0,4,0,31,0,63,128,63,128,63,128,63, + 128,31,0,4,0,0,0,0,0,0,0,0,0,0,0,255, + 0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63, + 0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63, + 0,63,0,63,0,63,0,63,0,255,224,15,46,92,16,254, + 245,0,16,0,124,0,254,0,254,0,254,0,254,0,124,0, + 16,0,0,0,0,0,0,0,0,0,0,7,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,56,252,124,252,252, + 252,252,252,248,248,248,248,113,240,49,224,31,128,25,34,136, + 27,1,0,255,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,131,254,0,31,128,240,0,31,128,96,0,31, + 128,192,0,31,128,128,0,31,129,128,0,31,131,0,0,31, + 134,0,0,31,143,0,0,31,159,0,0,31,159,128,0,31, + 191,128,0,31,239,192,0,31,199,224,0,31,135,224,0,31, + 131,240,0,31,129,248,0,31,129,248,0,31,128,252,0,31, + 128,252,0,31,128,254,0,255,243,255,128,12,34,68,14,1, + 0,255,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,255,240,34,22,110,37,2,1,255,31,193,248,0, + 63,35,230,124,0,63,67,228,62,0,63,131,248,63,0,63, + 131,248,63,0,63,131,248,63,0,63,3,240,63,0,63,3, + 240,63,0,63,3,240,63,0,63,3,240,63,0,63,3,240, + 63,0,63,3,240,63,0,63,3,240,63,0,63,3,240,63, + 0,63,3,240,63,0,63,3,240,63,0,63,3,240,63,0, + 63,3,240,63,0,63,3,240,63,0,63,3,240,63,0,63, + 3,240,63,0,255,207,252,255,192,23,22,66,27,2,1,255, + 31,192,63,35,224,63,65,240,63,65,248,63,129,248,63,129, + 248,63,1,248,63,1,248,63,1,248,63,1,248,63,1,248, + 63,1,248,63,1,248,63,1,248,63,1,248,63,1,248,63, + 1,248,63,1,248,63,1,248,63,1,248,63,1,248,255,199, + 254,20,22,66,24,2,1,3,252,0,15,15,0,30,7,128, + 62,7,192,62,7,192,124,3,224,124,3,224,252,3,240,252, + 3,240,252,3,240,252,3,240,252,3,240,252,3,240,252,3, + 240,252,3,240,124,3,224,124,3,224,62,7,192,62,7,192, + 30,7,128,15,15,0,3,252,0,22,33,99,25,1,246,255, + 159,128,31,163,192,31,225,224,31,193,240,31,192,248,31,192, + 248,31,192,248,31,128,252,31,128,252,31,128,252,31,128,252, + 31,128,252,31,128,252,31,128,252,31,128,252,31,192,252,31, + 192,248,31,192,248,31,193,240,31,225,240,31,179,224,31,159, + 128,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,255, + 240,0,22,33,99,25,2,246,7,240,32,15,24,96,30,28, + 96,62,14,224,126,15,224,124,15,224,124,7,224,252,7,224, + 252,7,224,252,7,224,252,7,224,252,7,224,252,7,224,252, + 7,224,252,7,224,124,7,224,124,15,224,126,15,224,62,15, + 224,30,31,224,31,23,224,7,231,224,0,7,224,0,7,224, + 0,7,224,0,7,224,0,7,224,0,7,224,0,7,224,0, + 7,224,0,7,224,0,7,224,0,63,252,17,22,66,20,2, + 1,255,31,0,63,63,128,63,79,128,63,79,128,63,159,128, + 63,159,128,63,159,0,63,14,0,63,0,0,63,0,0,63, + 0,0,63,0,0,63,0,0,63,0,0,63,0,0,63,0, + 0,63,0,0,63,0,0,63,0,0,63,0,0,63,0,0, + 255,192,0,16,22,44,21,3,1,31,196,48,116,96,60,224, + 28,224,28,240,12,248,4,254,4,127,128,127,224,63,240,31, + 252,7,254,129,254,192,127,192,31,224,15,224,7,240,7,248, + 6,204,14,135,248,15,32,64,17,1,0,1,128,1,128,1, + 128,1,128,1,128,3,128,3,128,7,128,15,128,63,128,255, + 248,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,130,31,130,31,130,31,130,31, + 134,31,134,31,132,15,196,15,248,7,240,24,22,66,26,1, + 0,255,143,248,31,129,248,31,129,248,31,129,248,31,129,248, + 31,129,248,31,129,248,31,129,248,31,129,248,31,129,248,31, + 129,248,31,129,248,31,129,248,31,129,248,31,129,248,31,129, + 248,31,131,248,31,131,248,31,133,248,15,133,248,15,201,248, + 7,241,255,23,23,69,25,1,255,255,241,254,63,192,120,31, + 128,48,15,192,48,15,192,32,7,192,96,7,224,96,7,224, + 64,3,224,192,3,240,128,3,240,128,1,241,128,1,249,0, + 0,249,0,0,255,0,0,254,0,0,126,0,0,126,0,0, + 124,0,0,60,0,0,60,0,0,24,0,0,24,0,35,23, + 115,37,1,255,255,231,255,31,224,63,129,252,7,128,31,128, + 252,3,0,15,128,252,2,0,15,192,124,2,0,15,192,124, + 6,0,7,192,126,4,0,7,224,254,4,0,3,224,191,12, + 0,3,224,191,8,0,3,241,159,24,0,1,241,31,144,0, + 1,241,31,144,0,1,251,31,176,0,0,250,15,224,0,0, + 250,15,224,0,0,254,15,224,0,0,124,7,192,0,0,124, + 7,192,0,0,60,7,192,0,0,56,3,128,0,0,56,3, + 128,0,0,24,3,0,0,23,22,66,25,1,0,255,231,252, + 63,192,240,31,192,224,15,192,192,15,225,128,7,227,0,3, + 242,0,3,254,0,1,252,0,1,252,0,0,252,0,0,126, + 0,0,127,0,0,127,0,0,223,128,1,159,192,3,15,192, + 2,15,224,6,7,224,14,7,240,30,7,248,255,207,254,23, + 33,99,25,1,245,255,241,254,63,192,120,31,128,48,15,192, + 32,15,192,32,15,192,96,7,224,64,7,224,64,3,240,192, + 3,240,128,1,248,128,1,249,128,0,249,0,0,253,0,0, + 253,0,0,126,0,0,126,0,0,62,0,0,60,0,0,28, + 0,0,28,0,0,12,0,0,8,0,0,8,0,0,8,0, + 15,16,0,31,16,0,63,144,0,63,32,0,62,32,0,62, + 64,0,31,192,0,15,0,0,18,22,66,22,2,0,127,255, + 192,124,15,192,120,31,128,112,63,0,96,63,0,96,126,0, + 64,126,0,64,252,0,1,248,0,1,248,0,3,240,0,3, + 240,0,7,224,64,15,192,64,15,192,64,31,128,192,31,0, + 192,63,1,192,126,1,192,126,3,192,252,15,192,255,255,192, + 14,43,86,20,3,247,0,60,0,240,3,192,7,128,7,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,0,15,0,28,0, + 240,0,60,0,30,0,15,0,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,7,128,7,128,3,192,0,240,0,60,3,44,44,13, + 5,247,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,15,43, + 86,20,3,247,240,0,60,0,15,0,7,128,7,128,7,192, + 7,192,7,192,7,192,7,192,7,192,7,192,7,192,7,192, + 7,192,7,192,7,192,7,192,3,192,3,192,0,240,0,62, + 0,240,1,224,3,192,7,192,7,192,7,192,7,192,7,192, + 7,192,7,192,7,192,7,192,7,192,7,192,7,192,7,192, + 7,128,7,128,15,0,60,0,240,0,27,9,36,31,2,8, + 31,128,1,128,63,240,0,192,127,254,0,96,255,255,128,96, + 193,255,240,96,192,63,255,224,192,15,255,192,96,1,255,128, + 48,0,63,0,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,13,0,0,8,35,35,14,3, + 245,60,126,255,255,255,126,60,0,0,0,24,24,24,24,24, + 24,24,24,60,60,60,60,126,126,126,126,254,255,255,255,255, + 255,255,126,60,18,34,102,28,5,250,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,1,240,0,7,236,0,15, + 103,0,30,99,0,62,99,128,126,103,128,126,111,128,124,111, + 128,252,111,128,252,103,0,252,96,0,252,96,0,252,96,0, + 252,96,0,252,96,0,252,96,0,124,96,192,124,96,192,62, + 96,128,62,97,128,30,97,0,15,99,0,7,252,0,0,248, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 29,34,136,34,3,1,0,1,255,0,0,7,129,192,0,31, + 0,224,0,31,0,224,0,63,0,240,0,126,1,240,0,126, + 3,240,0,254,3,240,0,254,3,224,0,254,1,192,0,254, + 0,0,0,254,0,0,0,254,0,0,0,254,0,0,15,254, + 0,0,24,126,6,0,0,127,252,0,0,127,0,0,0,63, + 0,0,0,63,0,0,0,63,0,0,0,63,0,0,0,31, + 0,0,0,31,0,0,0,30,0,0,0,30,0,24,30,28, + 0,56,127,220,0,112,195,248,0,224,128,255,255,224,128,127, + 255,192,128,255,255,128,193,207,255,0,127,3,252,0,24,22, + 66,28,2,5,96,126,6,243,255,207,127,255,254,63,129,252, + 30,0,120,60,0,60,56,0,28,56,0,28,112,0,14,112, + 0,14,112,0,14,112,0,14,112,0,14,112,0,14,56,0, + 28,56,0,28,60,0,60,30,0,120,63,129,252,127,255,254, + 243,255,207,96,126,6,26,34,136,28,1,0,255,248,63,192, + 63,224,15,0,31,224,14,0,31,224,12,0,31,224,12,0, + 15,240,8,0,15,240,8,0,7,240,24,0,7,248,16,0, + 3,248,48,0,3,252,32,0,3,252,96,0,1,254,64,0, + 1,254,192,0,0,254,128,0,0,255,128,0,0,255,0,0, + 63,255,254,0,0,127,0,0,0,127,0,0,0,127,0,0, + 0,127,0,0,63,255,254,0,0,127,0,0,0,127,0,0, + 0,127,0,0,0,127,0,0,0,127,0,0,0,127,0,0, + 0,127,0,0,0,127,0,0,0,127,0,0,0,127,0,0, + 7,255,248,0,3,42,42,13,5,248,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,0,0,0,0,0, + 0,0,0,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,22,43,129,30,2,248,1,255,0,7,1,192, + 14,0,224,28,0,224,28,1,240,60,3,240,60,7,240,60, + 7,240,62,7,224,62,3,192,63,0,0,31,192,0,31,248, + 0,15,254,0,31,255,128,55,255,192,97,255,240,96,127,248, + 224,31,248,224,7,252,240,1,252,252,0,124,255,0,60,255, + 192,28,127,240,24,63,252,24,31,255,16,15,255,160,3,255, + 192,0,255,224,0,63,224,0,15,240,6,3,240,31,129,240, + 63,128,240,63,128,240,63,128,240,63,0,240,62,0,224,28, + 1,192,28,3,192,15,7,0,3,252,0,15,6,12,21,3, + 26,120,60,252,126,252,126,252,126,252,126,120,60,35,34,170, + 39,2,1,0,15,254,0,0,0,112,3,192,0,0,192,0, + 96,0,3,128,0,56,0,6,0,0,28,0,12,0,0,6, + 0,24,3,225,134,0,24,15,25,131,0,48,30,15,129,128, + 48,62,7,129,128,96,60,3,128,192,96,124,3,128,192,96, + 124,1,128,192,192,252,1,128,96,192,252,1,128,96,192,252, + 0,0,96,192,252,0,0,96,192,252,0,0,96,192,252,0, + 0,96,192,252,0,128,96,192,252,0,128,96,64,124,0,128, + 192,96,124,1,128,192,96,60,1,0,192,48,62,3,1,128, + 48,30,2,1,128,24,15,12,3,0,24,3,248,6,0,12, + 0,0,6,0,6,0,0,12,0,3,128,0,56,0,0,192, + 0,96,0,0,112,1,192,0,0,15,254,0,0,14,17,34, + 18,2,17,31,0,51,192,97,224,113,224,121,224,57,224,7, + 224,57,224,113,224,241,224,241,228,241,228,241,228,126,248,0, + 0,127,252,127,252,13,20,40,23,5,1,4,0,28,24,24, + 48,56,112,112,96,112,224,241,224,241,224,241,224,241,224,241, + 224,241,224,241,224,112,224,112,224,112,96,56,48,24,16,12, + 0,4,0,23,13,39,27,2,6,255,255,254,255,255,254,255, + 255,254,0,0,14,0,0,14,0,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14, + 12,5,10,18,3,10,255,240,255,240,255,240,255,240,255,240, + 35,34,170,39,2,1,0,15,254,0,0,0,112,3,192,0, + 0,192,0,96,0,3,128,0,56,0,6,0,0,28,0,12, + 0,0,6,0,24,255,252,6,0,24,62,31,3,0,48,62, + 15,129,128,48,62,15,193,128,96,62,15,192,192,96,62,15, + 192,192,96,62,15,192,192,192,62,15,128,96,192,62,31,0, + 96,192,63,248,0,96,192,62,60,0,96,192,62,30,0,96, + 192,62,15,0,96,192,62,15,128,96,192,62,15,128,96,64, + 62,15,128,192,96,62,15,136,192,96,62,15,136,192,48,62, + 15,137,128,48,62,15,145,128,24,255,231,243,0,24,0,3, + 230,0,12,0,0,6,0,6,0,0,12,0,3,128,0,56, + 0,0,192,0,96,0,0,112,1,192,0,0,15,254,0,0, + 12,3,6,20,4,28,255,240,255,240,255,240,16,15,30,28, + 6,20,15,240,31,248,62,124,120,30,240,14,224,7,224,7, + 224,7,224,7,224,14,112,14,124,60,63,252,31,240,3,192, + 41,36,216,45,2,253,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0, + 0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,255,255,255,255,255,128, + 255,255,255,255,255,128,255,255,255,255,255,128,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0, + 0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255, + 255,0,255,255,255,255,255,0,255,255,255,255,255,0,14,21, + 42,21,4,14,31,240,48,248,96,124,224,124,240,124,248,124, + 248,120,120,248,1,240,1,224,3,128,6,0,12,4,16,4, + 32,4,32,12,127,252,127,252,79,248,71,248,1,224,16,21, + 42,22,3,14,31,224,48,248,112,124,112,124,124,124,124,124, + 60,124,0,120,0,224,15,128,0,240,0,124,0,62,16,63, + 124,63,252,63,252,63,240,63,112,126,112,252,31,240,8,9, + 9,21,9,25,6,15,31,62,60,120,240,192,128,24,35,105, + 29,3,244,120,3,192,124,3,192,252,7,224,252,7,224,252, + 7,224,252,7,224,252,7,224,252,7,224,252,7,224,248,7, + 224,248,7,224,120,7,192,112,3,192,112,3,193,112,3,129, + 48,3,131,48,7,135,48,7,255,56,15,254,62,62,254,47, + 252,126,35,248,60,32,0,0,48,0,0,112,0,0,112,0, + 0,120,0,0,120,0,0,124,0,0,124,0,0,126,0,0, + 126,0,0,126,0,0,62,0,0,28,0,0,23,41,123,28, + 3,249,3,255,254,15,240,224,63,240,224,127,240,224,127,240, + 224,255,240,224,255,240,224,255,240,224,255,240,224,255,240,224, + 255,240,224,255,240,224,255,240,224,255,240,224,127,240,224,63, + 240,224,31,240,224,7,240,224,0,112,224,0,112,224,0,112, + 224,0,112,224,0,112,224,0,112,224,0,112,224,0,112,224, + 0,112,224,0,112,224,0,112,224,0,112,224,0,112,224,0, + 112,224,0,112,224,0,112,224,0,112,224,0,112,224,0,112, + 224,0,112,224,0,112,224,0,112,224,0,112,224,8,7,7, + 14,3,12,60,126,255,255,255,126,60,10,10,20,21,5,246, + 8,0,8,0,24,0,15,0,7,128,3,192,3,192,3,192, + 199,128,63,0,11,20,40,21,5,14,7,0,15,0,255,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 255,224,13,17,34,19,3,17,15,128,24,192,56,224,112,112, + 112,112,240,120,240,120,240,120,240,120,240,120,240,120,112,112, + 112,224,56,224,15,128,0,0,255,248,13,20,40,23,5,1, + 1,0,193,128,96,192,112,224,48,112,56,112,56,120,60,120, + 60,120,60,120,60,120,60,120,60,120,56,112,56,112,48,112, + 96,224,64,192,1,128,1,0,36,36,180,44,5,255,0,0, + 0,48,0,7,0,0,48,0,7,0,0,96,0,31,0,0, + 224,0,255,0,0,192,0,31,0,1,192,0,31,0,1,128, + 0,31,0,3,0,0,31,0,7,0,0,31,0,6,0,0, + 31,0,14,0,0,31,0,12,0,0,31,0,24,0,0,31, + 0,24,0,0,31,0,48,0,0,31,0,112,15,0,31,0, + 96,31,0,31,0,224,31,0,31,0,192,63,0,31,1,128, + 127,0,255,227,128,127,0,0,3,0,223,0,0,7,1,159, + 0,0,6,1,159,0,0,12,3,31,0,0,12,2,31,0, + 0,24,6,31,0,0,56,12,31,0,0,48,15,255,240,0, + 112,0,31,0,0,96,0,31,0,0,192,0,31,0,1,192, + 0,31,0,1,128,0,31,0,3,128,1,255,224,3,0,0, + 0,0,35,36,180,43,5,255,0,0,0,56,0,7,0,0, + 48,0,7,0,0,112,0,31,0,0,224,0,255,0,0,192, + 0,31,0,1,192,0,31,0,1,128,0,31,0,3,128,0, + 31,0,3,0,0,31,0,7,0,0,31,0,14,0,0,31, + 0,12,0,0,31,0,28,0,0,31,0,24,0,0,31,0, + 56,126,0,31,0,113,143,128,31,0,99,7,192,31,0,231, + 3,224,31,0,199,3,224,31,1,199,131,224,255,227,135,195, + 224,0,3,3,199,192,0,7,1,135,128,0,6,0,15,0, + 0,14,0,30,0,0,12,0,56,0,0,24,0,96,0,0, + 56,0,128,32,0,48,1,0,32,0,112,2,0,32,0,96, + 2,255,224,0,192,7,255,224,1,192,6,255,192,1,128,4, + 127,192,3,128,4,63,128,3,0,0,0,0,38,36,180,44, + 3,255,0,0,0,12,0,31,224,0,12,0,48,248,0,24, + 0,112,124,0,56,0,112,124,0,48,0,124,124,0,112,0, + 124,124,0,96,0,60,124,0,192,0,0,120,1,192,0,0, + 224,1,128,0,15,128,3,128,0,0,240,3,0,0,0,124, + 7,0,0,0,62,6,0,0,16,63,12,0,0,124,63,28, + 3,192,252,63,24,7,192,252,63,56,7,192,240,63,48,15, + 192,112,126,112,31,192,112,252,224,31,192,31,240,192,55,192, + 0,1,192,103,192,0,1,128,103,192,0,3,128,199,192,0, + 3,0,135,192,0,6,1,135,192,0,14,3,7,192,0,12, + 3,255,252,0,28,0,7,192,0,24,0,7,192,0,56,0, + 7,192,0,112,0,7,192,0,96,0,7,192,0,224,0,127, + 248,0,192,0,0,0,16,35,70,23,3,245,7,0,15,128, + 31,192,31,192,31,192,15,128,7,0,0,0,0,0,7,128, + 12,224,16,48,16,48,16,48,16,48,0,96,0,224,0,192, + 3,192,7,128,15,128,31,0,31,4,62,4,126,6,124,2, + 252,3,252,3,252,3,252,3,252,6,126,6,63,12,31,248, + 7,224,33,45,225,36,2,0,0,56,0,0,0,0,60,0, + 0,0,0,62,0,0,0,0,62,0,0,0,0,31,0,0, + 0,0,7,0,0,0,0,3,128,0,0,0,1,192,0,0, + 0,0,64,0,0,0,0,0,0,0,0,0,192,0,0,0, + 1,192,0,0,0,1,224,0,0,0,1,224,0,0,0,3, + 224,0,0,0,3,240,0,0,0,3,240,0,0,0,7,240, + 0,0,0,7,248,0,0,0,7,248,0,0,0,15,248,0, + 0,0,15,252,0,0,0,15,252,0,0,0,25,252,0,0, + 0,25,254,0,0,0,25,254,0,0,0,48,254,0,0,0, + 48,255,0,0,0,32,255,0,0,0,96,127,0,0,0,96, + 127,128,0,0,64,127,128,0,0,192,63,128,0,0,192,63, + 192,0,0,255,255,192,0,1,255,255,192,0,1,128,31,224, + 0,1,0,31,224,0,3,0,15,224,0,3,0,15,240,0, + 2,0,15,240,0,6,0,7,240,0,15,0,7,248,0,31, + 0,15,252,0,255,240,255,255,128,33,45,225,36,2,0,0, + 0,14,0,0,0,0,15,0,0,0,0,31,0,0,0,0, + 62,0,0,0,0,60,0,0,0,0,120,0,0,0,0,240, + 0,0,0,0,192,0,0,0,0,128,0,0,0,0,0,0, + 0,0,0,192,0,0,0,1,192,0,0,0,1,224,0,0, + 0,1,224,0,0,0,3,224,0,0,0,3,240,0,0,0, + 3,240,0,0,0,7,240,0,0,0,7,248,0,0,0,7, + 248,0,0,0,15,248,0,0,0,15,252,0,0,0,15,252, + 0,0,0,25,252,0,0,0,25,254,0,0,0,25,254,0, + 0,0,48,254,0,0,0,48,255,0,0,0,32,255,0,0, + 0,96,127,0,0,0,96,127,128,0,0,64,127,128,0,0, + 192,63,128,0,0,192,63,192,0,0,255,255,192,0,1,255, + 255,192,0,1,128,31,224,0,1,0,31,224,0,3,0,15, + 224,0,3,0,15,240,0,6,0,15,240,0,6,0,7,240, + 0,15,0,7,248,0,255,240,255,255,128,255,240,255,255,128, + 33,44,220,36,2,0,0,1,192,0,0,0,1,224,0,0, + 0,3,224,0,0,0,7,240,0,0,0,15,120,0,0,0, + 30,30,0,0,0,120,7,0,0,0,64,1,128,0,0,0, + 0,0,0,0,0,192,0,0,0,1,192,0,0,0,1,224, + 0,0,0,1,224,0,0,0,3,224,0,0,0,3,240,0, + 0,0,3,240,0,0,0,7,240,0,0,0,7,248,0,0, + 0,7,248,0,0,0,15,248,0,0,0,15,252,0,0,0, + 15,252,0,0,0,25,252,0,0,0,25,254,0,0,0,25, + 254,0,0,0,48,254,0,0,0,48,255,0,0,0,32,255, + 0,0,0,96,127,0,0,0,96,127,128,0,0,64,127,128, + 0,0,192,63,128,0,0,192,63,192,0,0,255,255,192,0, + 1,255,255,192,0,1,128,31,224,0,1,0,31,224,0,3, + 0,15,224,0,3,0,15,240,0,2,0,15,240,0,6,0, + 7,240,0,15,0,7,248,0,31,0,15,252,0,255,240,255, + 255,128,33,43,215,36,2,0,0,15,1,0,0,0,31,227, + 0,0,0,63,254,0,0,0,33,254,0,0,0,32,124,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,192,0,0,0,1,192,0,0,0,1,224,0,0,0, + 1,224,0,0,0,3,224,0,0,0,3,240,0,0,0,3, + 240,0,0,0,7,240,0,0,0,7,248,0,0,0,7,248, + 0,0,0,15,248,0,0,0,15,252,0,0,0,15,252,0, + 0,0,25,252,0,0,0,25,254,0,0,0,25,254,0,0, + 0,48,254,0,0,0,48,255,0,0,0,32,255,0,0,0, + 96,127,0,0,0,96,127,128,0,0,64,127,128,0,0,192, + 63,128,0,0,192,63,192,0,0,255,255,192,0,1,255,255, + 192,0,1,128,31,224,0,1,0,31,224,0,3,0,15,224, + 0,3,0,15,240,0,6,0,15,240,0,6,0,7,240,0, + 15,0,7,248,0,255,240,255,255,128,255,240,255,255,128,33, + 43,215,36,2,0,0,60,15,0,0,0,126,31,128,0,0, + 126,31,128,0,0,126,31,128,0,0,126,31,128,0,0,60, + 15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,192,0,0,0,1,224,0,0,0,1,224,0, + 0,0,1,224,0,0,0,3,240,0,0,0,3,240,0,0, + 0,3,240,0,0,0,7,248,0,0,0,7,248,0,0,0, + 7,248,0,0,0,15,252,0,0,0,15,252,0,0,0,25, + 252,0,0,0,25,254,0,0,0,24,254,0,0,0,48,254, + 0,0,0,48,255,0,0,0,48,127,0,0,0,96,127,0, + 0,0,96,127,128,0,0,96,63,128,0,0,192,63,128,0, + 0,192,63,192,0,0,255,255,192,0,1,255,255,192,0,1, + 128,31,224,0,1,128,15,224,0,3,0,15,224,0,3,0, + 15,240,0,3,0,7,240,0,7,0,7,240,0,15,0,7, + 248,0,31,128,15,252,0,255,240,255,255,128,33,45,225,36, + 2,0,0,1,224,0,0,0,7,248,0,0,0,14,28,0, + 0,0,12,12,0,0,0,12,12,0,0,0,12,12,0,0, + 0,14,28,0,0,0,7,248,0,0,0,3,240,0,0,0, + 0,0,0,0,0,0,192,0,0,0,1,192,0,0,0,1, + 224,0,0,0,1,224,0,0,0,3,224,0,0,0,3,240, + 0,0,0,3,240,0,0,0,7,240,0,0,0,7,248,0, + 0,0,7,248,0,0,0,15,248,0,0,0,13,252,0,0, + 0,13,252,0,0,0,29,252,0,0,0,25,254,0,0,0, + 24,254,0,0,0,56,254,0,0,0,48,255,0,0,0,48, + 127,0,0,0,112,127,0,0,0,96,127,128,0,0,96,63, + 128,0,0,224,63,128,0,0,192,63,192,0,0,255,255,192, + 0,1,255,255,192,0,1,128,31,224,0,1,128,31,224,0, + 3,0,15,224,0,3,0,15,240,0,3,0,15,240,0,7, + 0,7,240,0,15,0,7,248,0,31,128,15,252,0,255,240, + 255,255,128,45,34,204,48,1,0,0,0,127,255,255,240,0, + 0,31,248,7,240,0,0,15,248,1,240,0,0,15,248,0, + 240,0,0,31,248,0,240,0,0,27,248,0,112,0,0,59, + 248,0,112,0,0,51,248,0,48,0,0,115,248,0,48,0, + 0,99,248,12,48,0,0,227,248,12,16,0,0,195,248,12, + 0,0,1,195,248,28,0,0,1,131,248,28,0,0,3,131, + 248,60,0,0,3,3,248,124,0,0,7,3,255,252,0,0, + 6,3,248,124,0,0,14,3,248,60,0,0,12,3,248,28, + 0,0,28,3,248,28,0,0,24,3,248,12,24,0,56,3, + 248,12,24,0,63,255,248,12,24,0,96,3,248,0,56,0, + 224,3,248,0,56,0,192,3,248,0,56,1,192,3,248,0, + 120,1,128,3,248,0,120,3,128,3,248,0,248,7,128,3, + 248,1,248,15,128,3,248,3,248,255,248,127,255,255,248,255, + 248,127,255,255,248,26,45,180,31,3,246,0,127,193,128,1, + 224,241,128,3,192,63,128,7,128,31,128,15,128,15,128,31, + 0,15,128,63,0,7,128,63,0,7,128,63,0,3,128,127, + 0,3,128,127,0,1,128,127,0,1,128,255,0,1,128,255, + 0,1,128,255,0,1,128,255,0,0,0,255,0,0,0,255, + 0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255, + 0,0,192,127,0,0,192,127,0,0,192,127,0,0,128,63, + 0,0,128,63,0,1,128,63,0,1,128,31,128,3,0,15, + 128,3,0,7,128,6,0,3,192,12,0,1,224,56,0,0, + 127,224,0,0,12,0,0,0,8,0,0,0,30,0,0,0, + 31,128,0,0,3,192,0,0,1,224,0,0,1,224,0,0, + 1,224,0,0,129,192,0,0,199,192,0,0,63,0,0,27, + 45,180,33,3,0,0,224,0,0,1,240,0,0,1,240,0, + 0,0,248,0,0,0,124,0,0,0,60,0,0,0,14,0, + 0,0,6,0,0,0,2,0,0,0,0,0,0,0,0,0, + 0,255,255,255,224,15,224,31,224,15,224,7,224,15,224,3, + 224,15,224,1,224,15,224,1,224,15,224,0,224,15,224,0, + 224,15,224,0,96,15,224,48,96,15,224,48,96,15,224,48, + 0,15,224,112,0,15,224,112,0,15,224,240,0,15,225,240, + 0,15,255,240,0,15,225,240,0,15,224,240,0,15,224,112, + 0,15,224,112,32,15,224,48,96,15,224,48,96,15,224,48, + 96,15,224,0,96,15,224,0,96,15,224,0,224,15,224,0, + 224,15,224,1,224,15,224,3,224,15,224,3,224,15,224,15, + 224,255,255,255,224,255,255,255,224,27,45,180,33,3,0,0, + 0,56,0,0,0,120,0,0,0,248,0,0,0,248,0,0, + 1,240,0,0,3,192,0,0,3,128,0,0,6,0,0,0, + 4,0,0,0,0,0,0,0,0,0,0,255,255,255,224,15, + 224,31,224,15,224,7,224,15,224,3,224,15,224,1,224,15, + 224,1,224,15,224,0,224,15,224,0,224,15,224,0,96,15, + 224,48,96,15,224,48,96,15,224,48,0,15,224,112,0,15, + 224,112,0,15,224,240,0,15,225,240,0,15,255,240,0,15, + 225,240,0,15,224,240,0,15,224,112,0,15,224,112,32,15, + 224,48,96,15,224,48,96,15,224,48,96,15,224,0,96,15, + 224,0,224,15,224,0,224,15,224,0,224,15,224,1,224,15, + 224,3,224,15,224,3,224,15,224,15,224,255,255,255,224,255, + 255,255,224,27,44,176,33,3,0,0,6,0,0,0,15,0, + 0,0,15,128,0,0,31,192,0,0,57,224,0,0,240,112, + 0,3,192,28,0,0,0,4,0,0,0,0,0,0,0,0, + 0,255,255,255,224,15,224,31,224,15,224,7,224,15,224,3, + 224,15,224,1,224,15,224,1,224,15,224,0,224,15,224,0, + 224,15,224,0,96,15,224,48,96,15,224,48,96,15,224,48, + 0,15,224,112,0,15,224,112,0,15,224,240,0,15,225,240, + 0,15,255,240,0,15,225,240,0,15,224,240,0,15,224,112, + 0,15,224,112,32,15,224,48,96,15,224,48,96,15,224,48, + 96,15,224,0,96,15,224,0,96,15,224,0,224,15,224,0, + 224,15,224,1,224,15,224,3,224,15,224,3,224,15,224,15, + 224,255,255,255,224,255,255,255,224,27,43,172,33,3,0,1, + 224,120,0,3,240,252,0,3,240,252,0,3,240,252,0,3, + 240,252,0,1,224,120,0,0,0,0,0,0,0,0,0,0, + 0,0,0,255,255,255,224,15,224,31,224,15,224,7,224,15, + 224,3,224,15,224,1,224,15,224,1,224,15,224,0,224,15, + 224,0,224,15,224,0,224,15,224,48,96,15,224,48,96,15, + 224,48,0,15,224,112,0,15,224,112,0,15,224,240,0,15, + 225,240,0,15,255,240,0,15,225,240,0,15,224,240,0,15, + 224,112,0,15,224,112,96,15,224,48,96,15,224,48,96,15, + 224,48,96,15,224,0,96,15,224,0,224,15,224,0,224,15, + 224,0,224,15,224,1,224,15,224,3,224,15,224,3,224,15, + 224,15,224,255,255,255,224,255,255,255,224,16,45,90,21,3, + 0,56,0,124,0,124,0,62,0,31,0,15,0,3,128,1, + 192,0,0,0,0,0,0,255,255,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,255,255,16,45,90,21,3, + 0,0,14,0,30,0,62,0,60,0,120,0,240,0,224,1, + 192,0,0,0,0,0,0,255,255,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,255,255,16,44,88,21,3, + 0,1,192,3,192,3,224,7,240,31,120,60,28,240,7,0, + 1,0,0,0,0,255,255,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,255,255,255,255,16,43,86,21,3,0,120, + 30,252,63,252,63,252,63,252,63,120,30,0,0,0,0,0, + 0,255,255,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,255,255,32,34,136,37,3,0,255,255,248,0,7, + 240,31,0,7,240,7,128,7,240,3,224,7,240,1,240,7, + 240,1,240,7,240,0,248,7,240,0,252,7,240,0,252,7, + 240,0,254,7,240,0,254,7,240,0,254,7,240,0,255,7, + 240,0,255,7,240,0,255,7,240,0,255,255,255,0,255,7, + 240,0,255,7,240,0,255,7,240,0,255,7,240,0,255,7, + 240,0,254,7,240,0,254,7,240,0,254,7,240,0,254,7, + 240,0,252,7,240,0,252,7,240,0,248,7,240,1,240,7, + 240,1,224,7,240,3,192,7,240,7,128,7,240,31,0,255, + 255,248,0,34,44,220,37,2,255,0,7,128,128,0,0,15, + 241,128,0,0,31,255,0,0,0,16,255,0,0,0,16,60, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,255,224,15,255,192,31,240,3,255,0, + 15,240,0,252,0,15,248,0,120,0,7,252,0,48,0,3, + 254,0,48,0,3,254,0,48,0,3,255,0,48,0,3,255, + 128,48,0,3,255,128,48,0,3,127,192,48,0,3,63,224, + 48,0,3,31,224,48,0,3,31,240,48,0,3,15,248,48, + 0,3,7,248,48,0,3,7,252,48,0,3,3,254,48,0, + 3,1,255,48,0,3,1,255,48,0,3,0,255,176,0,3, + 0,127,240,0,3,0,127,240,0,3,0,63,240,0,3,0, + 31,240,0,3,0,15,240,0,3,0,15,240,0,3,0,7, + 240,0,3,0,3,240,0,3,0,3,240,0,7,128,1,240, + 0,15,192,0,240,0,63,240,0,240,0,255,252,0,112,0, + 0,0,0,48,0,28,45,180,33,3,0,0,192,0,0,1, + 224,0,0,1,240,0,0,0,248,0,0,0,120,0,0,0, + 60,0,0,0,28,0,0,0,6,0,0,0,2,0,0,0, + 0,0,0,0,0,0,0,0,63,192,0,0,224,112,0,3, + 192,56,0,7,128,30,0,15,128,30,0,15,0,15,0,31, + 0,15,128,63,0,15,192,63,0,15,192,127,0,15,192,127, + 0,15,224,127,0,15,224,127,0,15,224,255,0,15,240,255, + 0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255, + 0,15,240,255,0,15,240,255,0,15,240,127,0,15,224,127, + 0,15,224,127,0,15,224,127,0,15,192,63,0,15,192,63, + 0,15,192,31,0,15,128,15,0,15,0,15,128,31,0,7, + 128,30,0,3,192,60,0,0,224,112,0,0,63,192,0,28, + 45,180,33,3,0,0,0,48,0,0,0,120,0,0,0,248, + 0,0,1,240,0,0,1,224,0,0,3,192,0,0,3,128, + 0,0,6,0,0,0,4,0,0,0,0,0,0,0,0,0, + 0,0,63,192,0,0,224,112,0,3,192,56,0,7,128,30, + 0,15,128,30,0,15,0,15,0,31,0,15,128,63,0,15, + 192,63,0,15,192,127,0,15,192,127,0,15,224,127,0,15, + 224,127,0,15,224,255,0,15,240,255,0,15,240,255,0,15, + 240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15, + 240,255,0,15,240,127,0,15,224,127,0,15,224,127,0,15, + 224,127,0,15,192,63,0,15,192,63,0,15,192,31,0,15, + 128,15,0,15,0,15,128,31,0,7,128,30,0,3,192,60, + 0,0,224,112,0,0,63,192,0,28,45,180,33,3,0,0, + 6,0,0,0,14,0,0,0,15,0,0,0,31,128,0,0, + 63,192,0,0,121,224,0,0,240,240,0,3,192,60,0,3, + 0,12,0,0,0,0,0,0,0,0,0,0,63,192,0,0, + 224,112,0,3,192,56,0,7,128,30,0,15,128,30,0,15, + 0,15,0,31,0,15,128,63,0,15,192,63,0,15,192,127, + 0,15,192,127,0,15,224,127,0,15,224,127,0,15,224,255, + 0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255, + 0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,127, + 0,15,224,127,0,15,224,127,0,15,224,127,0,15,192,63, + 0,15,192,63,0,15,192,31,0,15,128,15,0,15,0,15, + 128,31,0,7,128,30,0,3,192,60,0,0,224,112,0,0, + 63,192,0,28,44,176,33,3,0,0,0,8,0,0,126,24, + 0,0,255,248,0,1,255,240,0,1,7,224,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,63,192,0,0,224,112,0,3,192,56,0,7,128,30, + 0,15,128,30,0,15,0,15,0,31,0,15,128,63,0,15, + 192,63,0,15,192,127,0,15,192,127,0,15,224,127,0,15, + 224,127,0,15,224,255,0,15,240,255,0,15,240,255,0,15, + 240,255,0,15,240,255,0,15,240,255,0,15,240,255,0,15, + 240,255,0,15,240,127,0,15,224,127,0,15,224,127,0,15, + 224,127,0,15,192,63,0,15,192,63,0,15,192,31,0,15, + 128,15,0,15,0,15,128,31,0,7,128,30,0,3,192,60, + 0,0,224,112,0,0,63,192,0,28,44,176,33,3,0,1, + 224,120,0,3,240,252,0,3,240,252,0,3,240,252,0,3, + 240,252,0,1,224,120,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,63,192,0,0,224,112,0,3, + 192,56,0,7,128,30,0,15,128,30,0,15,0,15,0,31, + 0,15,128,63,0,15,192,63,0,15,192,127,0,15,192,127, + 0,15,224,127,0,15,224,127,0,15,224,255,0,15,240,255, + 0,15,240,255,0,15,240,255,0,15,240,255,0,15,240,255, + 0,15,240,255,0,15,240,255,0,15,240,127,0,15,224,127, + 0,15,224,127,0,15,224,127,0,15,192,63,0,15,192,63, + 0,15,192,31,0,15,128,15,0,15,0,15,128,31,0,7, + 128,30,0,3,192,60,0,0,224,112,0,0,63,192,0,31, + 30,120,45,7,253,32,0,0,0,112,0,0,12,248,0,0, + 30,124,0,0,60,62,0,0,120,31,0,1,240,15,128,3, + 224,7,192,7,192,3,224,15,128,1,240,31,0,0,248,62, + 0,0,124,124,0,0,62,248,0,0,31,240,0,0,15,224, + 0,0,7,192,0,0,15,224,0,0,31,240,0,0,62,248, + 0,0,124,60,0,0,248,30,0,1,240,15,0,3,224,7, + 128,7,192,3,192,15,128,1,224,31,0,0,240,62,0,0, + 120,124,0,0,60,248,0,0,30,112,0,0,12,28,34,136, + 33,3,1,0,63,224,48,0,224,112,96,1,192,60,192,7, + 128,31,192,15,128,31,128,15,0,15,0,31,0,15,128,63, + 0,15,192,63,0,31,192,63,0,31,224,127,0,63,224,127, + 0,111,224,127,0,239,224,255,0,207,240,255,1,143,240,255, + 3,15,240,255,7,15,240,255,14,15,240,255,12,15,240,255, + 24,15,240,255,48,15,240,255,112,15,224,127,96,15,224,127, + 192,15,224,127,128,15,192,63,128,15,192,63,0,15,192,31, + 0,15,128,15,0,15,0,31,128,30,0,63,128,30,0,51, + 192,56,0,96,224,112,0,192,127,192,0,33,45,225,38,3, + 0,0,24,0,0,0,0,60,0,0,0,0,62,0,0,0, + 0,31,0,0,0,0,15,128,0,0,0,7,128,0,0,0, + 1,192,0,0,0,0,224,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,255,255,7,255,128,15,224,1, + 254,0,15,224,0,120,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,15,224,0,48,0,15, + 224,0,48,0,15,224,0,48,0,15,224,0,48,0,15,224, + 0,48,0,15,224,0,48,0,15,224,0,48,0,15,224,0, + 48,0,15,224,0,48,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,7,224,0,48,0,7, + 224,0,96,0,7,240,0,96,0,3,240,0,192,0,1,248, + 1,192,0,0,252,3,128,0,0,127,159,0,0,0,31,252, + 0,0,33,45,225,38,3,0,0,0,7,0,0,0,0,15, + 0,0,0,0,15,0,0,0,0,31,0,0,0,0,60,0, + 0,0,0,56,0,0,0,0,112,0,0,0,0,224,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,7,255,128,15,224,1,254,0,15,224,0,120,0,15,224, + 0,48,0,15,224,0,48,0,15,224,0,48,0,15,224,0, + 48,0,15,224,0,48,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,15,224,0,48,0,15, + 224,0,48,0,15,224,0,48,0,15,224,0,48,0,15,224, + 0,48,0,15,224,0,48,0,15,224,0,48,0,15,224,0, + 48,0,15,224,0,48,0,15,224,0,48,0,15,224,0,48, + 0,7,224,0,48,0,7,224,0,96,0,7,240,0,96,0, + 3,240,0,192,0,1,248,1,192,0,0,252,3,128,0,0, + 127,159,0,0,0,31,252,0,0,33,45,225,38,3,0,0, + 0,64,0,0,0,0,224,0,0,0,1,240,0,0,0,3, + 240,0,0,0,7,248,0,0,0,15,28,0,0,0,30,15, + 0,0,0,112,3,128,0,0,0,0,128,0,0,0,0,0, + 0,0,0,0,0,0,255,255,7,255,128,15,224,1,254,0, + 15,224,0,120,0,15,224,0,48,0,15,224,0,48,0,15, + 224,0,48,0,15,224,0,48,0,15,224,0,48,0,15,224, + 0,48,0,15,224,0,48,0,15,224,0,48,0,15,224,0, + 48,0,15,224,0,48,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,15,224,0,48,0,15, + 224,0,48,0,15,224,0,48,0,15,224,0,48,0,15,224, + 0,48,0,15,224,0,48,0,7,224,0,48,0,7,224,0, + 96,0,7,240,0,96,0,3,240,0,192,0,1,248,1,192, + 0,0,252,3,128,0,0,127,159,0,0,0,31,252,0,0, + 33,44,220,38,3,0,0,60,15,0,0,0,126,31,128,0, + 0,126,31,128,0,0,126,31,128,0,0,126,31,128,0,0, + 60,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,255,254,7,255,128,15,224,1, + 254,0,15,224,0,120,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,15,224,0,48,0,15, + 224,0,48,0,15,224,0,48,0,15,224,0,48,0,15,224, + 0,48,0,15,224,0,48,0,15,224,0,48,0,15,224,0, + 48,0,15,224,0,48,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,7,224,0,48,0,7, + 224,0,96,0,7,240,0,96,0,3,240,0,192,0,1,248, + 1,192,0,0,252,3,128,0,0,127,159,0,0,0,31,252, + 0,0,32,45,180,35,2,0,0,0,7,0,0,0,15,0, + 0,0,31,0,0,0,31,0,0,0,60,0,0,0,120,0, + 0,0,112,0,0,0,192,0,0,0,128,0,0,0,0,0, + 0,0,0,0,255,254,15,255,31,248,1,248,15,248,0,240, + 7,248,0,224,7,248,0,192,3,252,0,192,3,252,0,192, + 1,252,1,128,1,254,1,128,0,254,3,0,0,255,3,0, + 0,255,3,0,0,127,134,0,0,127,134,0,0,63,196,0, + 0,63,204,0,0,31,204,0,0,31,248,0,0,15,248,0, + 0,15,248,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,255,255,0,29,34,136,34, + 3,0,255,255,128,0,7,240,0,0,7,240,0,0,7,240, + 0,0,7,240,0,0,7,240,0,0,7,255,248,0,7,240, + 63,0,7,240,15,192,7,240,15,224,7,240,15,240,7,240, + 7,240,7,240,7,248,7,240,7,248,7,240,7,248,7,240, + 7,248,7,240,7,248,7,240,7,248,7,240,7,240,7,240, + 15,240,7,240,15,224,7,240,15,192,7,240,31,0,7,255, + 252,0,7,240,0,0,7,240,0,0,7,240,0,0,7,240, + 0,0,7,240,0,0,7,240,0,0,7,240,0,0,7,240, + 0,0,7,240,0,0,255,255,128,0,23,34,102,27,2,0, + 0,127,0,1,227,128,3,195,224,7,193,224,7,193,240,15, + 129,240,15,129,240,15,129,240,31,129,240,31,129,224,31,129, + 224,31,129,192,31,131,128,31,188,0,31,131,0,31,129,192, + 31,128,240,31,128,248,31,128,248,31,128,124,31,128,124,31, + 128,126,31,128,126,31,128,126,31,128,126,31,128,126,31,128, + 126,31,184,126,31,252,124,31,252,124,31,248,252,31,248,248, + 31,184,240,255,159,224,21,34,102,24,2,0,24,0,0,60, + 0,0,62,0,0,30,0,0,15,0,0,7,128,0,3,128, + 0,1,192,0,0,192,0,0,0,0,0,0,0,0,0,0, + 15,248,0,24,62,0,56,63,0,120,31,0,124,31,128,126, + 31,128,126,31,128,60,31,128,0,127,128,3,223,128,15,31, + 128,30,31,128,62,31,128,124,31,128,252,31,128,252,31,128, + 252,31,136,252,31,136,252,31,152,254,63,144,127,127,240,63, + 143,224,21,34,102,24,2,0,0,12,0,0,30,0,0,62, + 0,0,62,0,0,124,0,0,120,0,0,224,0,0,192,0, + 1,128,0,0,0,0,0,0,0,0,0,0,15,248,0,24, + 62,0,56,63,0,120,31,0,124,31,128,126,31,128,126,31, + 128,62,31,128,8,63,128,1,255,128,7,159,128,30,31,128, + 62,31,128,124,31,128,124,31,128,252,31,128,252,31,136,252, + 31,136,252,31,152,254,63,144,127,127,240,63,143,224,21,34, + 102,24,2,0,1,192,0,1,224,0,3,224,0,3,224,0, + 7,240,0,7,56,0,14,28,0,28,14,0,48,7,0,0, + 0,0,0,0,0,0,0,0,15,248,0,24,62,0,56,63, + 0,120,31,0,124,31,128,126,31,128,126,31,128,62,31,128, + 8,63,128,1,255,128,7,159,128,30,31,128,62,31,128,124, + 31,128,124,31,128,252,31,128,252,31,136,252,31,136,252,31, + 152,254,63,144,127,127,240,63,143,224,21,32,96,24,2,0, + 15,3,0,31,195,0,63,254,0,49,252,0,32,120,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,248, + 0,24,62,0,56,63,0,120,31,0,124,31,128,126,31,128, + 126,31,128,62,31,128,8,63,128,1,255,128,7,159,128,30, + 31,128,62,31,128,124,31,128,124,31,128,252,31,128,252,31, + 136,252,31,136,252,31,152,254,63,144,127,127,240,63,143,224, + 21,32,96,24,2,0,60,30,0,126,63,0,126,63,0,126, + 63,0,126,63,0,60,30,0,0,0,0,0,0,0,0,0, + 0,0,0,0,15,248,0,24,62,0,56,63,0,120,31,0, + 124,31,128,126,31,128,126,31,128,62,31,128,8,63,128,1, + 255,128,7,159,128,30,31,128,62,31,128,124,31,128,124,31, + 128,252,31,128,252,31,136,252,31,136,252,31,152,254,63,144, + 127,127,240,63,143,224,21,34,102,24,2,1,3,240,0,7, + 248,0,14,28,0,12,12,0,12,12,0,12,12,0,14,28, + 0,7,248,0,1,224,0,0,0,0,0,0,0,0,0,0, + 15,248,0,24,62,0,56,63,0,120,31,0,124,31,128,126, + 31,128,126,31,128,62,31,128,8,63,128,1,255,128,7,31, + 128,30,31,128,62,31,128,124,31,128,124,31,128,252,31,128, + 252,31,136,252,31,136,252,31,152,254,63,144,127,111,240,63, + 199,224,29,22,88,34,2,1,15,240,255,128,24,63,195,192, + 56,63,195,224,120,31,131,240,124,31,129,240,126,31,129,240, + 126,31,129,248,62,31,129,248,0,63,129,248,1,255,129,248, + 7,31,255,248,30,31,128,0,62,31,128,0,124,31,128,0, + 124,31,128,8,252,31,128,8,252,31,128,24,252,31,192,16, + 252,31,192,16,254,51,192,32,127,97,240,64,63,192,255,128, + 18,32,96,22,2,247,3,252,0,15,6,0,31,7,0,62, + 7,128,62,7,128,126,15,128,124,31,128,252,31,128,252,31, + 0,252,14,0,252,0,0,252,0,0,252,0,0,252,0,0, + 252,0,0,124,0,64,124,0,192,62,0,128,62,1,128,30, + 1,0,15,130,0,3,252,0,0,128,0,0,128,0,1,128, + 0,0,240,0,0,56,0,0,60,0,0,60,0,0,60,0, + 4,120,0,3,240,0,18,34,102,23,2,0,28,0,0,30, + 0,0,30,0,0,31,0,0,15,128,0,7,128,0,3,192, + 0,0,192,0,0,96,0,0,0,0,0,0,0,0,0,0, + 3,252,0,14,30,0,30,31,0,62,15,128,60,15,128,124, + 15,128,124,15,192,252,15,192,252,15,192,252,15,192,255,255, + 192,252,0,0,252,0,0,252,0,0,252,0,64,124,0,64, + 124,0,192,62,0,192,62,1,128,31,1,0,15,135,0,3, + 252,0,18,34,102,23,2,0,0,14,0,0,31,0,0,31, + 0,0,62,0,0,60,0,0,120,0,0,240,0,0,224,0, + 1,128,0,0,0,0,0,0,0,0,0,0,3,252,0,14, + 30,0,30,31,0,62,15,128,60,15,128,124,15,128,124,15, + 192,252,15,192,252,15,192,252,15,192,255,255,192,252,0,0, + 252,0,0,252,0,0,252,0,64,124,0,64,124,0,192,62, + 0,192,62,0,128,31,1,0,15,131,0,3,252,0,18,34, + 102,23,2,0,1,224,0,1,224,0,1,240,0,3,240,0, + 3,248,0,7,56,0,14,28,0,28,14,0,56,3,0,0, + 0,0,0,0,0,0,0,0,3,252,0,14,30,0,30,31, + 0,62,15,128,60,15,128,124,15,128,124,15,192,252,15,192, + 252,15,192,252,15,192,255,255,192,252,0,0,252,0,0,252, + 0,0,252,0,64,124,0,64,124,0,192,62,0,192,62,0, + 128,31,1,0,15,131,0,3,252,0,18,32,96,23,2,0, + 30,15,0,63,31,128,63,31,128,63,31,128,63,31,128,30, + 15,0,0,0,0,0,0,0,0,0,0,0,0,0,3,252, + 0,14,30,0,30,31,0,62,15,128,60,15,128,124,15,128, + 124,15,192,252,15,192,252,15,192,252,15,192,255,255,192,252, + 0,0,252,0,0,252,0,0,252,0,64,124,0,64,124,0, + 192,62,0,192,62,0,128,31,1,0,15,131,0,3,252,0, + 12,34,68,15,1,0,96,0,240,0,248,0,248,0,124,0, + 28,0,14,0,7,0,3,0,0,0,0,0,0,0,127,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,31,128,31,128,31,128,31,128, + 31,128,31,128,31,128,31,128,127,240,12,34,68,15,2,0, + 0,224,1,240,1,240,3,224,7,192,7,128,15,0,28,0, + 24,0,0,0,0,0,0,0,255,0,63,0,63,0,63,0, + 63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0, + 63,0,63,0,63,0,63,0,63,0,63,0,63,0,63,0, + 63,0,255,224,14,34,68,14,0,0,7,128,15,128,15,128, + 15,192,31,224,60,224,56,112,112,60,192,12,0,0,0,0, + 0,0,63,192,15,192,15,192,15,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,15,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,15,192,15,192,63,248,14,32, + 64,14,1,0,120,120,252,252,252,252,252,252,252,252,120,120, + 0,0,0,0,0,0,0,0,63,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,15,192,15,192,15,192,15,192, + 15,192,15,192,15,192,15,192,15,192,15,192,15,192,15,192, + 15,192,63,248,20,34,102,24,2,0,15,193,128,15,227,0, + 7,254,0,3,248,0,1,248,0,1,252,0,3,254,0,14, + 126,0,24,63,0,0,63,128,0,31,128,0,15,192,7,255, + 192,15,15,224,30,7,224,62,7,224,62,7,224,124,7,240, + 124,3,240,252,3,240,252,3,240,252,3,240,252,3,240,252, + 3,240,252,3,240,252,3,240,252,3,240,124,3,224,124,7, + 224,62,7,192,62,7,192,30,7,128,15,15,0,3,252,0, + 23,32,96,27,2,0,3,224,96,7,248,64,15,255,192,12, + 127,128,8,15,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,255,31,192,63,35,224,63,65,240,63,65,248, + 63,129,248,63,129,248,63,1,248,63,1,248,63,1,248,63, + 1,248,63,1,248,63,1,248,63,1,248,63,1,248,63,1, + 248,63,1,248,63,1,248,63,1,248,63,1,248,63,1,248, + 63,1,248,255,199,254,20,34,102,24,2,0,14,0,0,31, + 0,0,31,0,0,15,128,0,7,192,0,3,192,0,1,224, + 0,0,96,0,0,48,0,0,0,0,0,0,0,0,0,0, + 3,252,0,15,15,0,30,7,128,62,7,192,62,7,192,124, + 3,224,124,3,224,252,3,240,252,3,240,252,3,240,252,3, + 240,252,3,240,252,3,240,252,3,240,252,3,240,124,3,224, + 124,3,224,62,7,192,62,7,192,30,7,128,15,15,0,3, + 252,0,20,34,102,24,2,0,0,7,0,0,15,128,0,15, + 128,0,31,0,0,62,0,0,60,0,0,120,0,0,224,0, + 0,192,0,0,0,0,0,0,0,0,0,0,3,252,0,15, + 15,0,30,7,128,62,7,192,62,7,192,124,3,224,124,3, + 224,252,3,240,252,3,240,252,3,240,252,3,240,252,3,240, + 252,3,240,252,3,240,252,3,240,124,3,224,124,3,224,62, + 7,192,62,7,192,30,7,128,15,15,0,3,252,0,20,34, + 102,24,2,0,0,240,0,0,240,0,1,248,0,1,248,0, + 3,252,0,3,156,0,7,14,0,14,7,0,24,1,128,0, + 0,0,0,0,0,0,0,0,3,252,0,15,15,0,30,7, + 128,62,7,192,62,7,192,124,3,224,124,3,224,252,3,240, + 252,3,240,252,3,240,252,3,240,252,3,240,252,3,240,252, + 3,240,252,3,240,124,3,224,124,3,224,62,7,192,62,7, + 192,30,7,128,15,15,0,3,252,0,20,32,96,24,2,0, + 7,192,128,15,240,128,31,255,128,16,255,0,16,62,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,252, + 0,15,15,0,30,7,128,62,7,192,62,7,192,124,3,224, + 124,3,224,252,3,240,252,3,240,252,3,240,252,3,240,252, + 3,240,252,3,240,252,3,240,252,3,240,124,3,224,124,3, + 224,62,7,192,62,7,192,30,7,128,15,15,0,3,252,0, + 20,32,96,24,2,0,30,15,0,63,31,128,63,31,128,63, + 31,128,63,31,128,30,15,0,0,0,0,0,0,0,0,0, + 0,0,0,0,3,252,0,15,15,0,30,7,128,62,7,192, + 62,7,192,124,3,224,124,3,224,252,3,240,252,3,240,252, + 3,240,252,3,240,252,3,240,252,3,240,252,3,240,252,3, + 240,124,3,224,124,3,224,62,7,192,62,7,192,30,7,128, + 15,15,0,3,252,0,41,32,192,45,2,253,0,0,28,0, + 0,0,0,0,62,0,0,0,0,0,127,0,0,0,0,0, + 127,0,0,0,0,0,127,0,0,0,0,0,62,0,0,0, + 0,0,28,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 255,255,255,255,255,128,255,255,255,255,255,128,255,255,255,255, + 255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,28,0,0,0,0,0,62,0,0,0,0,0, + 127,0,0,0,0,0,127,0,0,0,0,0,127,0,0,0, + 0,0,62,0,0,0,0,0,28,0,0,0,20,22,66,24, + 2,1,3,252,48,15,15,96,30,15,192,62,7,192,62,7, + 192,124,7,224,124,7,224,252,15,240,252,27,240,252,51,240, + 252,115,240,252,227,240,252,195,240,253,131,240,255,3,240,126, + 3,224,126,3,224,62,7,192,62,7,192,63,7,128,111,15, + 0,195,252,0,24,34,102,26,1,0,7,0,0,7,128,0, + 7,192,0,7,192,0,3,224,0,1,224,0,0,112,0,0, + 48,0,0,24,0,0,0,0,0,0,0,0,0,0,255,143, + 248,31,129,248,31,129,248,31,129,248,31,129,248,31,129,248, + 31,129,248,31,129,248,31,129,248,31,129,248,31,129,248,31, + 129,248,31,129,248,31,129,248,31,129,248,31,129,248,31,131, + 248,31,131,248,31,133,248,15,133,248,15,201,248,7,241,255, + 24,34,102,26,1,0,0,3,128,0,3,128,0,7,128,0, + 15,128,0,15,0,0,30,0,0,28,0,0,56,0,0,48, + 0,0,0,0,0,0,0,0,0,0,255,143,248,31,129,248, + 31,129,248,31,129,248,31,129,248,31,129,248,31,129,248,31, + 129,248,31,129,248,31,129,248,31,129,248,31,129,248,31,129, + 248,31,129,248,31,129,248,31,129,248,31,131,248,31,131,248, + 31,133,248,15,133,248,15,201,248,7,241,255,24,34,102,26, + 1,0,0,56,0,0,120,0,0,124,0,0,252,0,0,254, + 0,1,206,0,3,135,0,7,3,128,14,0,192,0,0,0, + 0,0,0,0,0,0,255,143,248,31,129,248,31,129,248,31, + 129,248,31,129,248,31,129,248,31,129,248,31,129,248,31,129, + 248,31,129,248,31,129,248,31,129,248,31,129,248,31,129,248, + 31,129,248,31,129,248,31,131,248,31,131,248,31,133,248,15, + 133,248,15,201,248,7,241,255,24,32,96,26,1,0,7,131, + 192,15,199,224,15,199,224,15,199,224,15,199,224,7,131,192, + 0,0,0,0,0,0,0,0,0,0,0,0,255,135,248,31, + 129,248,31,129,248,31,129,248,31,129,248,31,129,248,31,129, + 248,31,129,248,31,129,248,31,129,248,31,129,248,31,129,248, + 31,129,248,31,129,248,31,129,248,31,129,248,31,131,248,31, + 131,248,31,133,248,15,133,248,15,201,248,7,241,255,23,45, + 135,25,1,245,0,1,192,0,1,224,0,3,224,0,7,192, + 0,7,128,0,15,0,0,14,0,0,28,0,0,24,0,0, + 0,0,0,0,0,0,0,0,255,241,254,63,192,120,31,128, + 48,15,192,32,15,192,32,15,192,96,7,224,64,7,224,64, + 3,240,192,3,240,128,1,248,128,1,249,128,0,249,0,0, + 253,0,0,253,0,0,126,0,0,126,0,0,62,0,0,60, + 0,0,28,0,0,28,0,0,12,0,0,8,0,0,8,0, + 0,8,0,15,16,0,31,16,0,63,144,0,63,32,0,62, + 32,0,62,64,0,31,192,0,15,0,0,22,44,132,25,1, + 244,3,128,0,15,128,0,63,128,0,255,128,0,223,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 135,240,31,159,248,31,177,248,31,160,252,31,192,252,31,192, + 252,31,192,252,31,128,252,31,128,252,31,128,248,31,129,248, + 31,129,240,31,129,240,31,129,224,31,131,192,31,131,128,31, + 135,128,31,134,0,31,140,0,31,152,0,31,224,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,30,0,0,120,0,0,224, + 0,0,128,0,0,23,44,132,25,1,245,3,193,224,7,227, + 240,7,227,240,7,227,240,7,227,240,3,193,224,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,255,241,254,63, + 192,120,31,128,48,15,192,32,15,192,32,15,192,96,7,224, + 64,7,224,64,3,240,192,3,240,128,1,240,128,1,249,128, + 0,249,0,0,253,0,0,253,0,0,126,0,0,126,0,0, + 62,0,0,60,0,0,28,0,0,28,0,0,12,0,0,8, + 0,0,8,0,0,8,0,15,16,0,31,16,0,63,144,0, + 63,32,0,62,32,0,62,64,0,31,192,0,15,0,0}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--48-480-72-72-P-258-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 34 + Calculated Max Values w=41 h=44 x= 6 y=13 dx=45 dy= 0 ascent=35 len=246 + Font Bounding box w=133 h=60 x=-41 y=-14 + Calculated Min Values x= 0 y=-9 dx= 0 dy= 0 + Pure Font ascent =34 descent= 0 + X Font ascent =34 descent= 0 + Max Font ascent =35 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb35n[1539] U8G_SECTION(".progmem.u8g_font_osb35n") = { + 0,133,60,215,242,34,0,0,0,0,42,57,0,35,247,34, + 0,17,19,57,24,4,13,1,128,0,3,192,0,3,192,0, + 227,195,0,241,135,128,248,143,128,252,159,128,126,191,0,3, + 192,0,3,192,0,126,191,0,252,159,128,248,143,128,241,135, + 128,225,195,0,3,192,0,3,192,0,3,192,0,1,128,0, + 41,41,246,45,2,249,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0, + 0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0, + 0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,255,255,255,255,255,128,255,255, + 255,255,255,128,255,255,255,255,255,128,0,0,28,0,0,0, + 0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0, + 0,0,28,0,0,0,0,0,28,0,0,0,0,0,28,0, + 0,0,0,0,28,0,0,0,0,0,28,0,0,0,0,0, + 28,0,0,0,0,0,28,0,0,0,0,0,28,0,0,0, + 0,0,28,0,0,0,0,0,28,0,0,0,9,15,30,13, + 2,248,126,0,255,0,255,128,255,128,255,128,127,128,1,128, + 1,128,1,128,3,0,2,0,6,0,28,0,56,0,96,0, + 12,5,10,18,3,10,255,240,255,240,255,240,255,240,255,240, + 8,6,6,14,3,1,126,255,255,255,255,126,16,44,88,22, + 3,247,0,7,0,15,0,14,0,14,0,14,0,30,0,28, + 0,28,0,60,0,56,0,56,0,120,0,112,0,112,0,240, + 0,224,0,224,0,224,1,224,1,192,1,192,3,192,3,128, + 3,128,7,128,7,0,7,0,15,0,14,0,14,0,14,0, + 30,0,28,0,28,0,60,0,56,0,56,0,120,0,112,0, + 112,0,240,0,224,0,224,0,224,0,23,35,105,28,2,0, + 0,16,0,0,254,0,3,199,128,7,131,192,15,1,224,15, + 1,224,31,1,240,63,1,248,63,1,248,127,1,248,127,1, + 252,127,1,252,127,1,252,255,1,254,255,1,254,255,1,254, + 255,1,254,255,1,254,255,1,254,255,1,254,255,1,254,255, + 1,254,255,1,254,127,1,252,127,1,252,127,1,252,127,1, + 252,63,1,248,63,1,248,31,1,240,15,1,224,15,1,224, + 7,131,192,3,199,128,0,254,0,16,34,68,28,6,0,0, + 240,0,240,1,240,7,240,255,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,255, + 255,255,255,21,34,102,28,3,1,7,255,0,14,15,192,28, + 7,224,56,7,240,120,3,240,120,3,248,248,3,248,252,3, + 248,255,3,248,255,3,248,255,7,248,127,7,240,63,15,240, + 12,15,224,0,31,192,0,63,128,0,127,0,0,252,0,1, + 240,0,3,192,0,7,128,0,14,0,24,12,0,24,24,0, + 24,48,0,24,96,0,24,111,192,56,127,255,248,255,255,240, + 239,255,240,195,255,240,193,255,224,192,255,192,192,63,128,22, + 34,102,28,3,1,7,255,0,14,15,192,28,7,224,56,7, + 240,120,3,240,124,3,248,126,3,248,127,3,248,127,3,248, + 127,3,248,63,3,240,30,3,240,0,7,224,0,7,192,0, + 15,0,7,248,0,0,31,128,0,15,192,0,7,224,0,7, + 240,0,3,248,0,3,248,62,3,252,127,3,252,255,3,252, + 255,3,252,255,3,252,254,3,252,252,3,248,248,7,248,120, + 7,240,56,15,224,30,31,192,15,255,0,23,34,102,28,2, + 0,0,7,192,0,15,192,0,15,192,0,31,192,0,63,192, + 0,63,192,0,127,192,0,127,192,0,255,192,0,223,192,1, + 223,192,1,159,192,3,159,192,7,31,192,6,31,192,14,31, + 192,12,31,192,28,31,192,24,31,192,56,31,192,112,31,192, + 96,31,192,224,31,192,255,255,254,0,31,192,0,31,192,0, + 31,192,0,31,192,0,31,192,0,31,192,0,31,192,0,31, + 192,7,255,252,7,255,252,21,34,102,28,4,0,32,0,192, + 60,7,128,63,255,128,63,255,0,63,254,0,63,248,0,63, + 224,0,63,0,0,48,0,0,48,0,0,48,0,0,48,0, + 0,48,0,0,49,252,0,54,63,0,60,15,192,56,15,224, + 48,15,224,32,7,240,0,7,240,0,7,248,0,7,248,8, + 7,248,62,7,248,126,7,248,254,7,248,254,7,248,254,7, + 240,248,7,240,240,7,224,112,15,192,48,15,192,28,31,0, + 15,252,0,22,34,102,28,3,1,0,255,128,3,192,192,7, + 192,96,15,128,240,31,131,240,31,7,240,63,15,240,63,15, + 240,127,15,224,127,7,192,127,3,0,127,0,0,255,0,0, + 255,0,0,255,63,0,255,255,192,255,195,224,255,131,240,255, + 3,248,255,1,248,255,1,252,255,1,252,255,1,252,127,1, + 252,127,1,252,127,1,252,127,1,252,63,1,248,63,1,248, + 31,1,248,15,129,240,7,131,224,3,195,192,1,255,0,20, + 34,102,28,5,1,71,224,224,207,240,224,223,248,112,255,252, + 48,255,254,48,255,255,240,255,255,240,224,31,176,192,0,32, + 192,0,96,128,0,96,128,0,192,128,1,192,0,1,128,0, + 3,128,0,7,0,0,15,0,0,14,0,0,30,0,0,60, + 0,0,124,0,0,252,0,1,252,0,1,248,0,3,248,0, + 3,248,0,7,248,0,7,248,0,7,248,0,7,248,0,7, + 248,0,7,248,0,3,248,0,3,240,0,23,34,102,28,3, + 1,1,255,128,7,0,192,12,0,96,28,0,48,56,0,24, + 56,0,24,120,0,24,120,0,24,124,0,24,126,0,24,127, + 0,48,127,192,32,127,240,96,63,255,128,63,255,0,31,255, + 192,15,255,240,7,255,248,15,255,248,24,63,252,48,15,252, + 112,3,254,96,0,254,224,0,126,224,0,62,224,0,30,224, + 0,30,224,0,12,240,0,28,112,0,24,56,0,24,28,0, + 48,15,0,192,3,255,0,22,34,102,28,3,1,3,254,0, + 15,15,0,31,7,128,62,7,192,126,3,224,126,3,240,126, + 3,240,254,3,248,254,3,248,254,3,248,254,3,248,254,3, + 252,254,3,252,254,3,252,126,3,252,127,7,252,63,7,252, + 31,15,252,15,255,252,3,243,252,0,3,252,0,3,252,0, + 3,248,7,3,248,31,131,248,31,195,248,63,195,240,63,195, + 240,63,131,224,62,7,224,60,7,192,28,15,128,14,31,0, + 7,252,0}; +/* + Fontname: -FreeType-Old Standard TT-Bold-R-Normal--48-480-72-72-P-258-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 35, '1' Height: 34 + Calculated Max Values w=49 h=46 x= 6 y=25 dx=52 dy= 0 ascent=38 len=246 + Font Bounding box w=133 h=60 x=-41 y=-14 + Calculated Min Values x=-2 y=-11 dx= 0 dy= 0 + Pure Font ascent =35 descent=-10 + X Font ascent =35 descent=-10 + Max Font ascent =38 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osb35r[10245] U8G_SECTION(".progmem.u8g_font_osb35r") = { + 0,133,60,215,242,35,12,218,29,222,32,127,246,38,245,35, + 246,0,0,0,13,0,0,8,34,34,14,3,1,126,126,255, + 255,255,255,255,255,126,126,126,126,60,60,60,60,60,24,24, + 24,24,24,24,24,24,0,0,0,126,255,255,255,255,126,12, + 12,24,18,3,23,32,64,241,224,249,240,249,240,249,240,249, + 240,249,240,112,224,112,224,112,224,112,224,112,224,28,34,136, + 34,3,0,0,112,14,0,0,112,14,0,0,112,14,0,0, + 112,14,0,0,240,30,0,0,224,28,0,0,224,28,0,0, + 224,28,0,0,224,28,0,255,255,255,240,255,255,255,240,255, + 255,255,240,1,192,56,0,1,192,56,0,1,192,56,0,1, + 192,56,0,3,192,56,0,3,128,120,0,3,128,112,0,3, + 128,112,0,3,128,112,0,3,128,112,0,255,255,255,224,255, + 255,255,224,255,255,255,224,7,0,224,0,7,0,224,0,7, + 0,224,0,7,0,224,0,15,1,224,0,14,1,224,0,14, + 1,192,0,14,1,192,0,14,1,192,0,23,42,126,28,2, + 252,0,195,0,0,195,0,0,195,0,0,195,0,3,255,192, + 7,195,112,28,195,24,60,195,12,56,195,14,120,195,14,120, + 195,30,120,195,62,124,195,126,126,195,126,127,195,124,127,195, + 56,63,243,0,63,251,0,31,255,0,31,255,128,7,255,192, + 3,255,240,0,255,248,0,255,248,0,223,252,0,199,252,124, + 195,254,124,195,254,252,195,126,252,195,62,248,195,30,240,195, + 30,224,195,28,96,195,28,112,195,56,56,195,56,28,195,96, + 7,255,192,0,195,0,0,195,0,0,195,0,0,195,0,33, + 35,175,41,4,0,0,0,0,48,0,15,192,0,96,0,60, + 240,0,224,0,56,112,0,192,0,120,120,1,128,0,120,120, + 1,128,0,248,124,3,0,0,248,124,7,0,0,248,124,6, + 0,0,248,124,14,0,0,248,124,12,0,0,248,124,24,0, + 0,120,120,24,0,0,120,120,48,0,0,56,240,112,0,0, + 28,224,96,0,0,15,192,192,0,0,0,0,192,0,0,0, + 1,128,240,0,0,3,131,156,0,0,3,7,158,0,0,7, + 15,15,0,0,6,15,15,0,0,12,31,15,128,0,12,31, + 15,128,0,24,31,15,128,0,56,31,15,128,0,48,31,15, + 128,0,96,31,15,128,0,96,31,15,128,0,192,15,15,0, + 1,192,15,15,0,1,128,7,14,0,3,128,7,158,0,3, + 0,1,248,0,33,34,170,37,2,1,0,31,224,0,0,0, + 112,112,0,0,0,224,48,0,0,0,224,24,0,0,1,224, + 24,0,0,1,224,24,0,0,1,224,24,0,0,1,240,56, + 0,0,1,240,48,0,0,1,248,96,0,0,1,248,192,0, + 0,0,255,128,0,0,0,255,0,0,0,0,126,0,0,0, + 0,63,0,0,0,0,255,129,255,128,1,223,128,62,0,3, + 143,192,28,0,7,15,224,24,0,14,7,224,56,0,30,3, + 240,48,0,60,1,248,48,0,124,1,248,96,0,124,0,252, + 96,0,252,0,126,192,0,252,0,127,128,0,252,0,63,128, + 0,254,0,31,128,0,255,0,31,128,0,255,0,15,193,128, + 127,192,63,225,0,63,248,247,243,0,31,255,195,254,0,15, + 254,0,252,0,5,12,12,11,3,23,32,240,248,248,248,248, + 248,112,112,112,112,112,14,43,86,18,3,248,0,28,0,56, + 0,112,0,224,1,192,3,128,7,0,15,0,14,0,30,0, + 30,0,60,0,60,0,124,0,124,0,124,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 124,0,124,0,124,0,124,0,60,0,60,0,30,0,30,0, + 14,0,15,0,7,0,3,128,1,192,0,224,0,112,0,56, + 0,12,13,43,86,17,1,248,192,0,224,0,48,0,24,0, + 28,0,14,0,7,0,7,128,3,128,3,192,1,224,1,224, + 1,224,1,240,1,240,1,240,1,248,1,248,1,248,1,248, + 1,248,1,248,1,248,1,248,1,248,1,248,1,248,1,240, + 1,240,1,240,1,224,1,224,3,192,3,192,3,128,7,128, + 7,0,14,0,28,0,56,0,112,0,224,0,128,0,17,19, + 57,24,4,13,1,128,0,3,192,0,3,192,0,227,195,0, + 241,135,128,248,143,128,252,159,128,126,191,0,3,192,0,3, + 192,0,126,191,0,252,159,128,248,143,128,241,135,128,225,195, + 0,3,192,0,3,192,0,3,192,0,1,128,0,41,41,246, + 45,2,249,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,255,255,255,255,255,128,255,255,255,255,255, + 128,255,255,255,255,255,128,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,0,0,28,0,0,0,0, + 0,28,0,0,0,0,0,28,0,0,0,0,0,28,0,0, + 0,0,0,28,0,0,0,0,0,28,0,0,0,0,0,28, + 0,0,0,0,0,28,0,0,0,9,15,30,13,2,248,126, + 0,255,0,255,128,255,128,255,128,127,128,1,128,1,128,1, + 128,3,0,2,0,6,0,28,0,56,0,96,0,12,5,10, + 18,3,10,255,240,255,240,255,240,255,240,255,240,8,6,6, + 14,3,1,126,255,255,255,255,126,16,44,88,22,3,247,0, + 7,0,15,0,14,0,14,0,14,0,30,0,28,0,28,0, + 60,0,56,0,56,0,120,0,112,0,112,0,240,0,224,0, + 224,0,224,1,224,1,192,1,192,3,192,3,128,3,128,7, + 128,7,0,7,0,15,0,14,0,14,0,14,0,30,0,28, + 0,28,0,60,0,56,0,56,0,120,0,112,0,112,0,240, + 0,224,0,224,0,224,0,23,35,105,28,2,0,0,16,0, + 0,254,0,3,199,128,7,131,192,15,1,224,15,1,224,31, + 1,240,63,1,248,63,1,248,127,1,248,127,1,252,127,1, + 252,127,1,252,255,1,254,255,1,254,255,1,254,255,1,254, + 255,1,254,255,1,254,255,1,254,255,1,254,255,1,254,255, + 1,254,127,1,252,127,1,252,127,1,252,127,1,252,63,1, + 248,63,1,248,31,1,240,15,1,224,15,1,224,7,131,192, + 3,199,128,0,254,0,16,34,68,28,6,0,0,240,0,240, + 1,240,7,240,255,240,7,240,7,240,7,240,7,240,7,240, + 7,240,7,240,7,240,7,240,7,240,7,240,7,240,7,240, + 7,240,7,240,7,240,7,240,7,240,7,240,7,240,7,240, + 7,240,7,240,7,240,7,240,7,240,7,240,255,255,255,255, + 21,34,102,28,3,1,7,255,0,14,15,192,28,7,224,56, + 7,240,120,3,240,120,3,248,248,3,248,252,3,248,255,3, + 248,255,3,248,255,7,248,127,7,240,63,15,240,12,15,224, + 0,31,192,0,63,128,0,127,0,0,252,0,1,240,0,3, + 192,0,7,128,0,14,0,24,12,0,24,24,0,24,48,0, + 24,96,0,24,111,192,56,127,255,248,255,255,240,239,255,240, + 195,255,240,193,255,224,192,255,192,192,63,128,22,34,102,28, + 3,1,7,255,0,14,15,192,28,7,224,56,7,240,120,3, + 240,124,3,248,126,3,248,127,3,248,127,3,248,127,3,248, + 63,3,240,30,3,240,0,7,224,0,7,192,0,15,0,7, + 248,0,0,31,128,0,15,192,0,7,224,0,7,240,0,3, + 248,0,3,248,62,3,252,127,3,252,255,3,252,255,3,252, + 255,3,252,254,3,252,252,3,248,248,7,248,120,7,240,56, + 15,224,30,31,192,15,255,0,23,34,102,28,2,0,0,7, + 192,0,15,192,0,15,192,0,31,192,0,63,192,0,63,192, + 0,127,192,0,127,192,0,255,192,0,223,192,1,223,192,1, + 159,192,3,159,192,7,31,192,6,31,192,14,31,192,12,31, + 192,28,31,192,24,31,192,56,31,192,112,31,192,96,31,192, + 224,31,192,255,255,254,0,31,192,0,31,192,0,31,192,0, + 31,192,0,31,192,0,31,192,0,31,192,0,31,192,7,255, + 252,7,255,252,21,34,102,28,4,0,32,0,192,60,7,128, + 63,255,128,63,255,0,63,254,0,63,248,0,63,224,0,63, + 0,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 0,49,252,0,54,63,0,60,15,192,56,15,224,48,15,224, + 32,7,240,0,7,240,0,7,248,0,7,248,8,7,248,62, + 7,248,126,7,248,254,7,248,254,7,248,254,7,240,248,7, + 240,240,7,224,112,15,192,48,15,192,28,31,0,15,252,0, + 22,34,102,28,3,1,0,255,128,3,192,192,7,192,96,15, + 128,240,31,131,240,31,7,240,63,15,240,63,15,240,127,15, + 224,127,7,192,127,3,0,127,0,0,255,0,0,255,0,0, + 255,63,0,255,255,192,255,195,224,255,131,240,255,3,248,255, + 1,248,255,1,252,255,1,252,255,1,252,127,1,252,127,1, + 252,127,1,252,127,1,252,63,1,248,63,1,248,31,1,248, + 15,129,240,7,131,224,3,195,192,1,255,0,20,34,102,28, + 5,1,71,224,224,207,240,224,223,248,112,255,252,48,255,254, + 48,255,255,240,255,255,240,224,31,176,192,0,32,192,0,96, + 128,0,96,128,0,192,128,1,192,0,1,128,0,3,128,0, + 7,0,0,15,0,0,14,0,0,30,0,0,60,0,0,124, + 0,0,252,0,1,252,0,1,248,0,3,248,0,3,248,0, + 7,248,0,7,248,0,7,248,0,7,248,0,7,248,0,7, + 248,0,3,248,0,3,240,0,23,34,102,28,3,1,1,255, + 128,7,0,192,12,0,96,28,0,48,56,0,24,56,0,24, + 120,0,24,120,0,24,124,0,24,126,0,24,127,0,48,127, + 192,32,127,240,96,63,255,128,63,255,0,31,255,192,15,255, + 240,7,255,248,15,255,248,24,63,252,48,15,252,112,3,254, + 96,0,254,224,0,126,224,0,62,224,0,30,224,0,30,224, + 0,12,240,0,28,112,0,24,56,0,24,28,0,48,15,0, + 192,3,255,0,22,34,102,28,3,1,3,254,0,15,15,0, + 31,7,128,62,7,192,126,3,224,126,3,240,126,3,240,254, + 3,248,254,3,248,254,3,248,254,3,248,254,3,252,254,3, + 252,254,3,252,126,3,252,127,7,252,63,7,252,31,15,252, + 15,255,252,3,243,252,0,3,252,0,3,252,0,3,248,7, + 3,248,31,131,248,31,195,248,63,195,240,63,195,240,63,131, + 224,62,7,224,60,7,192,28,15,128,14,31,0,7,252,0, + 8,22,22,14,3,1,126,255,255,255,255,126,0,0,0,0, + 0,0,0,0,0,0,126,255,255,255,255,126,9,31,62,13, + 2,248,63,0,127,128,127,128,127,128,127,128,63,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,126,0,255,0,255,128,255,128,255,128,127,128,1,128, + 1,128,1,128,3,0,3,0,6,0,28,0,56,0,96,0, + 37,40,200,45,4,249,0,0,0,0,48,0,0,0,0,240, + 0,0,0,1,248,0,0,0,7,224,0,0,0,31,128,0, + 0,0,126,0,0,0,1,252,0,0,0,7,240,0,0,0, + 15,192,0,0,0,63,0,0,0,0,252,0,0,0,3,240, + 0,0,0,15,224,0,0,0,63,128,0,0,0,126,0,0, + 0,1,248,0,0,0,7,224,0,0,0,31,128,0,0,0, + 127,0,0,0,0,252,0,0,0,0,248,0,0,0,0,126, + 0,0,0,0,31,128,0,0,0,15,224,0,0,0,3,248, + 0,0,0,0,252,0,0,0,0,63,0,0,0,0,15,192, + 0,0,0,3,240,0,0,0,1,252,0,0,0,0,127,0, + 0,0,0,31,192,0,0,0,7,224,0,0,0,1,248,0, + 0,0,0,126,0,0,0,0,63,128,0,0,0,15,224,0, + 0,0,3,248,0,0,0,0,248,0,0,0,0,48,41,13, + 78,45,2,6,255,255,255,255,255,128,255,255,255,255,255,128, + 255,255,255,255,255,128,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 255,255,255,255,255,128,255,255,255,255,255,128,255,255,255,255, + 255,128,37,40,200,45,4,249,96,0,0,0,0,120,0,0, + 0,0,252,0,0,0,0,63,0,0,0,0,15,192,0,0, + 0,3,240,0,0,0,1,252,0,0,0,0,127,0,0,0, + 0,31,128,0,0,0,7,224,0,0,0,1,248,0,0,0, + 0,126,0,0,0,0,63,128,0,0,0,15,224,0,0,0, + 3,240,0,0,0,0,252,0,0,0,0,63,0,0,0,0, + 15,192,0,0,0,7,240,0,0,0,1,248,0,0,0,0, + 248,0,0,0,3,240,0,0,0,15,192,0,0,0,63,128, + 0,0,0,254,0,0,0,1,248,0,0,0,7,224,0,0, + 0,31,128,0,0,0,126,0,0,0,1,252,0,0,0,7, + 240,0,0,0,31,192,0,0,0,63,0,0,0,0,252,0, + 0,0,3,240,0,0,0,15,224,0,0,0,63,128,0,0, + 0,254,0,0,0,0,248,0,0,0,0,96,0,0,0,0, + 15,34,68,22,3,1,31,240,59,248,96,252,96,252,192,126, + 192,126,192,126,192,126,192,126,64,252,96,252,48,248,1,240, + 1,224,3,192,3,128,7,0,7,0,14,0,12,16,12,16, + 12,16,12,16,6,32,3,192,0,0,0,0,0,128,3,224, + 7,240,7,240,7,240,7,240,3,224,35,34,170,39,2,1, + 0,15,255,0,0,0,56,1,224,0,0,224,0,112,0,1, + 128,0,28,0,7,0,0,14,0,14,0,0,7,0,12,0, + 248,3,0,28,3,205,243,128,56,7,135,241,128,56,15,7, + 225,192,112,31,7,225,192,112,62,7,224,224,112,62,7,224, + 224,224,124,7,192,224,224,124,7,192,224,224,124,7,192,224, + 224,252,15,192,224,224,248,15,128,224,224,248,15,128,224,224, + 248,15,129,192,224,248,31,129,192,224,248,31,129,128,112,248, + 31,3,128,112,248,63,3,0,112,120,111,6,0,56,60,199, + 140,0,56,31,3,240,0,28,0,0,0,0,14,0,0,0, + 0,7,0,0,0,0,3,128,0,0,0,1,192,0,96,0, + 0,120,1,192,0,0,31,255,0,0,33,35,175,36,2,0, + 0,0,192,0,0,0,1,192,0,0,0,1,224,0,0,0, + 1,224,0,0,0,3,224,0,0,0,3,240,0,0,0,3, + 240,0,0,0,7,240,0,0,0,7,248,0,0,0,7,248, + 0,0,0,15,248,0,0,0,15,252,0,0,0,15,252,0, + 0,0,25,252,0,0,0,25,254,0,0,0,25,254,0,0, + 0,48,254,0,0,0,48,255,0,0,0,32,255,0,0,0, + 96,127,0,0,0,96,127,128,0,0,64,127,128,0,0,192, + 63,128,0,0,192,63,192,0,0,255,255,192,0,1,255,255, + 192,0,1,128,31,224,0,1,0,31,224,0,3,0,15,224, + 0,3,0,15,240,0,2,0,15,240,0,6,0,7,240,0, + 15,0,7,248,0,31,0,15,252,0,255,240,255,255,128,28, + 34,136,33,3,0,255,255,240,0,15,224,126,0,15,224,31, + 0,15,224,31,128,15,224,15,192,15,224,15,192,15,224,15, + 224,15,224,15,224,15,224,15,224,15,224,15,224,15,224,15, + 224,15,224,15,192,15,224,15,192,15,224,31,128,15,224,30, + 0,15,224,60,0,15,255,224,0,15,224,124,0,15,224,63, + 0,15,224,31,128,15,224,15,192,15,224,15,224,15,224,15, + 240,15,224,15,240,15,224,15,240,15,224,15,240,15,224,15, + 240,15,224,15,240,15,224,15,224,15,224,15,224,15,224,31, + 192,15,224,31,128,15,224,126,0,255,255,248,0,26,34,136, + 31,3,1,0,127,193,128,1,224,241,128,3,192,63,128,15, + 128,31,128,15,128,15,128,31,0,15,128,63,0,7,128,63, + 0,7,128,127,0,3,128,127,0,3,128,127,0,3,128,127, + 0,1,128,255,0,1,128,255,0,1,128,255,0,1,128,255, + 0,0,0,255,0,0,0,255,0,0,0,255,0,0,0,255, + 0,0,0,255,0,0,0,255,0,0,192,127,0,0,192,127, + 0,0,192,127,0,0,128,63,0,1,128,63,0,1,128,63, + 0,1,128,31,128,3,0,15,128,3,0,7,128,6,0,3, + 192,12,0,1,224,56,0,0,127,224,0,32,34,136,37,3, + 0,255,255,248,0,15,224,31,0,15,224,7,128,15,224,3, + 224,15,224,1,240,15,224,1,240,15,224,0,248,15,224,0, + 252,15,224,0,252,15,224,0,254,15,224,0,254,15,224,0, + 254,15,224,0,255,15,224,0,255,15,224,0,255,15,224,0, + 255,15,224,0,255,15,224,0,255,15,224,0,255,15,224,0, + 255,15,224,0,255,15,224,0,254,15,224,0,254,15,224,0, + 254,15,224,0,254,15,224,0,252,15,224,0,252,15,224,0, + 248,15,224,1,240,15,224,1,224,15,224,3,192,15,224,7, + 128,15,224,30,0,255,255,248,0,27,34,136,33,3,0,255, + 255,255,224,15,224,31,224,15,224,7,224,15,224,3,224,15, + 224,1,224,15,224,1,224,15,224,0,224,15,224,0,224,15, + 224,0,96,15,224,48,96,15,224,48,96,15,224,48,0,15, + 224,112,0,15,224,112,0,15,224,240,0,15,225,240,0,15, + 255,240,0,15,225,240,0,15,224,240,0,15,224,112,0,15, + 224,112,32,15,224,48,96,15,224,48,96,15,224,48,96,15, + 224,0,96,15,224,0,96,15,224,0,224,15,224,0,224,15, + 224,1,224,15,224,3,224,15,224,3,224,15,224,15,224,255, + 255,255,224,255,255,255,224,28,34,136,32,3,0,255,255,255, + 240,7,240,15,240,7,240,3,240,7,240,1,240,7,240,1, + 240,7,240,0,240,7,240,0,240,7,240,0,112,7,240,0, + 112,7,240,24,48,7,240,24,48,7,240,24,48,7,240,56, + 48,7,240,56,0,7,240,120,0,7,240,248,0,7,255,248, + 0,7,240,248,0,7,240,120,0,7,240,56,0,7,240,56, + 0,7,240,24,0,7,240,24,0,7,240,24,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,255,255,128,0,30,34,136,35,3,1,0,127,224,192,0, + 224,120,192,3,192,31,192,7,128,15,192,15,128,7,192,31, + 0,7,192,31,0,3,192,63,0,3,192,63,0,1,192,127, + 0,1,192,127,0,1,192,127,0,0,192,255,0,0,192,255, + 0,0,192,255,0,0,0,255,0,0,0,255,0,0,0,255, + 3,255,252,255,3,255,252,255,0,31,192,255,0,31,192,255, + 0,31,192,127,0,31,192,127,0,31,192,127,0,31,192,127, + 0,31,192,63,0,31,192,63,0,31,192,31,0,31,192,15, + 128,57,192,15,128,49,192,7,192,96,192,1,224,192,192,0, + 127,128,192,34,34,170,39,3,0,255,255,63,255,192,7,240, + 1,252,0,7,240,1,252,0,7,240,1,252,0,7,240,1, + 252,0,7,240,1,252,0,7,240,1,252,0,7,240,1,252, + 0,7,240,1,252,0,7,240,1,252,0,7,240,1,252,0, + 7,240,1,252,0,7,240,1,252,0,7,240,1,252,0,7, + 240,1,252,0,7,240,1,252,0,7,255,255,252,0,7,240, + 1,252,0,7,240,1,252,0,7,240,1,252,0,7,240,1, + 252,0,7,240,1,252,0,7,240,1,252,0,7,240,1,252, + 0,7,240,1,252,0,7,240,1,252,0,7,240,1,252,0, + 7,240,1,252,0,7,240,1,252,0,7,240,1,252,0,7, + 240,1,252,0,7,240,1,252,0,7,240,1,252,0,255,255, + 63,255,192,16,34,68,21,3,0,255,255,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,7,240,7,240,7, + 240,7,240,7,240,7,240,7,240,7,240,255,255,23,34,102, + 26,2,0,1,255,254,0,15,224,0,15,224,0,15,224,0, + 15,224,0,15,224,0,15,224,0,15,224,0,15,224,0,15, + 224,0,15,224,0,15,224,0,15,224,0,15,224,0,15,224, + 0,15,224,0,15,224,0,15,224,0,15,224,0,15,224,0, + 15,224,30,15,224,126,15,224,127,15,224,255,15,224,255,15, + 224,254,15,224,254,15,224,248,15,192,112,15,192,96,15,128, + 48,31,0,24,30,0,15,248,0,33,34,170,37,3,0,255, + 255,31,254,0,7,240,7,240,0,7,240,3,192,0,7,240, + 3,128,0,7,240,3,0,0,7,240,7,0,0,7,240,14, + 0,0,7,240,12,0,0,7,240,24,0,0,7,240,48,0, + 0,7,240,96,0,0,7,240,224,0,0,7,240,224,0,0, + 7,241,240,0,0,7,243,240,0,0,7,247,248,0,0,7, + 255,252,0,0,7,255,252,0,0,7,249,254,0,0,7,241, + 254,0,0,7,240,255,0,0,7,240,255,0,0,7,240,127, + 128,0,7,240,127,128,0,7,240,63,192,0,7,240,63,192, + 0,7,240,31,224,0,7,240,31,224,0,7,240,15,240,0, + 7,240,15,240,0,7,240,7,248,0,7,240,7,248,0,7, + 240,7,252,0,255,255,63,255,128,28,34,136,32,3,0,255, + 255,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,0,7, + 240,0,0,7,240,0,0,7,240,0,0,7,240,0,48,7, + 240,0,48,7,240,0,48,7,240,0,112,7,240,0,112,7, + 240,0,112,7,240,0,240,7,240,0,240,7,240,0,240,7, + 240,1,240,7,240,3,240,7,240,3,240,7,240,7,240,255, + 255,255,240,255,255,255,240,39,34,170,43,2,0,255,240,0, + 63,254,7,240,0,63,192,7,248,0,63,192,7,248,0,63, + 192,7,248,0,127,192,7,252,0,127,192,7,252,0,95,192, + 7,252,0,95,192,7,254,0,223,192,6,254,0,223,192,6, + 255,0,159,192,6,127,0,159,192,6,127,1,159,192,6,127, + 129,159,192,6,63,129,31,192,6,63,129,31,192,6,63,195, + 31,192,6,31,194,31,192,6,31,226,31,192,6,15,226,31, + 192,6,15,230,31,192,6,15,244,31,192,6,7,244,31,192, + 6,7,244,31,192,6,7,252,31,192,6,3,248,31,192,6, + 3,248,31,192,6,1,248,31,192,6,1,248,31,192,6,1, + 240,31,192,6,0,240,31,192,15,0,240,31,192,63,192,240, + 31,192,255,240,97,255,254,34,35,175,37,2,255,255,224,15, + 255,192,31,240,3,255,0,15,240,0,252,0,15,248,0,120, + 0,7,252,0,48,0,3,254,0,48,0,3,254,0,48,0, + 3,255,0,48,0,3,255,128,48,0,3,255,128,48,0,3, + 127,192,48,0,3,63,224,48,0,3,31,224,48,0,3,31, + 240,48,0,3,15,248,48,0,3,7,248,48,0,3,7,252, + 48,0,3,3,254,48,0,3,1,255,48,0,3,1,255,48, + 0,3,0,255,176,0,3,0,127,240,0,3,0,127,240,0, + 3,0,63,240,0,3,0,31,240,0,3,0,15,240,0,3, + 0,15,240,0,3,0,7,240,0,3,0,3,240,0,3,0, + 3,240,0,7,128,1,240,0,15,192,0,240,0,63,240,0, + 240,0,255,252,0,112,0,0,0,0,48,0,28,34,136,33, + 3,1,0,63,192,0,0,224,112,0,3,192,56,0,7,128, + 30,0,15,128,30,0,15,0,15,0,31,0,15,128,63,0, + 15,192,63,0,15,192,127,0,15,192,127,0,15,224,127,0, + 15,224,127,0,15,224,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,127,0,15,224,127,0,15,224,127,0, + 15,224,127,0,15,192,63,0,15,192,63,0,15,192,31,0, + 15,128,15,0,15,0,15,128,31,0,7,128,30,0,3,192, + 60,0,0,224,112,0,0,63,192,0,29,34,136,34,3,0, + 255,255,248,0,7,240,63,0,7,240,15,192,7,240,15,224, + 7,240,15,240,7,240,7,240,7,240,7,248,7,240,7,248, + 7,240,7,248,7,240,7,248,7,240,7,248,7,240,7,248, + 7,240,7,240,7,240,15,240,7,240,15,224,7,240,15,192, + 7,240,31,0,7,255,252,0,7,240,0,0,7,240,0,0, + 7,240,0,0,7,240,0,0,7,240,0,0,7,240,0,0, + 7,240,0,0,7,240,0,0,7,240,0,0,7,240,0,0, + 7,240,0,0,7,240,0,0,7,240,0,0,7,240,0,0, + 7,240,0,0,255,255,128,0,28,45,180,33,3,246,0,63, + 192,0,0,224,112,0,3,192,56,0,7,128,30,0,15,128, + 30,0,15,0,15,0,31,0,15,128,63,0,15,128,63,0, + 15,192,127,0,15,192,127,0,15,224,127,0,15,224,127,0, + 15,224,255,0,15,240,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,255,0,15,240,255,0,15,240,255,0, + 15,240,255,0,15,240,127,0,15,224,127,0,15,224,127,0, + 15,224,63,0,15,192,63,15,15,192,31,17,143,128,15,160, + 223,0,15,160,223,0,7,160,254,0,3,224,252,16,0,240, + 248,16,0,127,224,16,0,0,224,16,0,0,224,16,0,0, + 224,48,0,0,240,48,0,0,248,112,0,0,255,240,0,0, + 255,224,0,0,127,224,0,0,127,192,0,0,63,128,0,0, + 31,0,32,36,144,36,3,254,255,255,240,0,7,240,126,0, + 7,240,63,0,7,240,63,128,7,240,31,192,7,240,31,192, + 7,240,31,224,7,240,31,224,7,240,31,224,7,240,31,224, + 7,240,31,224,7,240,31,192,7,240,63,192,7,240,63,0, + 7,240,126,0,7,255,240,0,7,240,240,0,7,240,62,0, + 7,240,63,0,7,240,31,128,7,240,31,128,7,240,31,192, + 7,240,31,192,7,240,31,192,7,240,31,192,7,240,31,195, + 7,240,31,195,7,240,31,195,7,240,31,195,7,240,31,195, + 7,240,31,198,7,240,31,198,7,240,15,238,255,255,135,252, + 0,0,3,248,0,0,0,96,23,34,102,29,4,1,7,252, + 24,24,15,24,56,3,248,112,1,248,112,0,248,240,0,120, + 248,0,120,248,0,56,252,0,24,254,0,24,255,128,24,255, + 224,8,127,240,0,127,252,0,63,254,0,31,255,128,15,255, + 192,3,255,240,1,255,248,128,127,248,192,31,252,192,15,252, + 192,3,254,224,1,254,224,0,126,224,0,62,240,0,30,248, + 0,30,248,0,28,252,0,28,254,0,24,239,0,48,195,128, + 96,193,255,128,29,34,136,34,3,0,255,255,255,248,255,63, + 231,248,252,31,193,248,248,31,192,248,248,31,192,248,240,31, + 192,120,224,31,192,56,224,31,192,56,224,31,192,56,192,31, + 192,24,192,31,192,24,192,31,192,24,192,31,192,24,128,31, + 192,8,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,0,31, + 192,0,0,31,192,0,0,31,192,0,0,31,192,0,3,255, + 254,0,33,34,170,38,3,0,255,255,7,255,128,15,224,1, + 254,0,15,224,0,120,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,15,224,0,48,0,15, + 224,0,48,0,15,224,0,48,0,15,224,0,48,0,15,224, + 0,48,0,15,224,0,48,0,15,224,0,48,0,15,224,0, + 48,0,15,224,0,48,0,15,224,0,48,0,15,224,0,48, + 0,15,224,0,48,0,15,224,0,48,0,15,224,0,48,0, + 15,224,0,48,0,15,224,0,48,0,7,224,0,48,0,7, + 224,0,96,0,7,240,0,96,0,3,240,0,192,0,1,248, + 1,192,0,0,252,3,128,0,0,127,159,0,0,0,31,252, + 0,0,34,34,170,37,2,0,255,255,135,255,192,15,248,0, + 126,0,7,248,0,56,0,7,248,0,56,0,3,248,0,48, + 0,3,252,0,48,0,3,252,0,48,0,1,254,0,96,0, + 1,254,0,96,0,0,254,0,96,0,0,255,0,192,0,0, + 255,0,192,0,0,127,0,192,0,0,127,129,128,0,0,127, + 129,128,0,0,63,129,128,0,0,63,195,0,0,0,63,195, + 0,0,0,31,195,0,0,0,31,230,0,0,0,15,230,0, + 0,0,15,246,0,0,0,15,252,0,0,0,7,252,0,0, + 0,7,252,0,0,0,7,248,0,0,0,3,248,0,0,0, + 3,248,0,0,0,3,240,0,0,0,1,240,0,0,0,1, + 240,0,0,0,0,224,0,0,0,0,224,0,0,0,0,224, + 0,0,49,34,238,52,2,0,255,255,63,255,207,255,128,31, + 252,7,254,0,252,0,7,248,3,252,0,112,0,7,248,1, + 252,0,112,0,3,248,1,254,0,96,0,3,252,1,254,0, + 96,0,3,252,0,254,0,96,0,1,252,0,254,0,192,0, + 1,254,1,255,0,192,0,1,254,1,255,0,192,0,0,254, + 1,255,1,128,0,0,255,3,127,129,128,0,0,255,3,63, + 129,128,0,0,127,3,63,129,128,0,0,127,135,63,195,0, + 0,0,127,134,31,195,0,0,0,63,134,31,195,0,0,0, + 63,198,31,231,0,0,0,31,204,15,230,0,0,0,31,204, + 15,230,0,0,0,31,236,15,246,0,0,0,15,248,7,252, + 0,0,0,15,248,7,252,0,0,0,15,248,7,252,0,0, + 0,7,248,3,252,0,0,0,7,240,3,248,0,0,0,7, + 240,3,248,0,0,0,3,240,1,248,0,0,0,3,224,1, + 240,0,0,0,3,224,1,240,0,0,0,1,224,0,240,0, + 0,0,1,192,0,240,0,0,0,1,192,0,224,0,0,0, + 0,192,0,96,0,0,33,34,170,36,2,0,127,255,31,254, + 0,31,252,3,240,0,7,248,3,192,0,3,248,3,128,0, + 3,252,3,128,0,1,252,3,0,0,1,254,7,0,0,0, + 255,6,0,0,0,255,12,0,0,0,127,140,0,0,0,127, + 152,0,0,0,63,240,0,0,0,63,240,0,0,0,31,224, + 0,0,0,31,224,0,0,0,15,240,0,0,0,15,248,0, + 0,0,7,248,0,0,0,7,252,0,0,0,7,252,0,0, + 0,15,254,0,0,0,29,254,0,0,0,24,255,0,0,0, + 56,255,0,0,0,48,127,128,0,0,96,127,128,0,0,224, + 63,192,0,0,192,63,224,0,1,128,31,224,0,3,128,31, + 240,0,3,128,15,240,0,7,128,15,248,0,31,128,31,252, + 0,255,240,127,255,128,32,34,136,35,2,0,255,254,15,255, + 31,248,1,248,15,248,0,240,7,248,0,224,7,248,0,192, + 3,252,0,192,3,252,0,192,1,252,1,128,1,254,1,128, + 0,254,3,0,0,255,3,0,0,255,3,0,0,127,134,0, + 0,127,134,0,0,63,196,0,0,63,204,0,0,31,204,0, + 0,31,248,0,0,15,248,0,0,15,248,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,7,240,0,0,7,240,0,0,7,240,0,0,7,240,0, + 0,255,255,0,25,34,136,31,3,0,127,255,255,128,127,128, + 127,128,126,0,255,0,124,0,255,0,120,1,254,0,120,3, + 254,0,112,3,252,0,112,7,252,0,96,7,248,0,96,15, + 248,0,96,15,240,0,64,31,224,0,0,31,224,0,0,63, + 192,0,0,63,192,0,0,127,128,0,0,127,128,0,0,255, + 0,0,0,255,0,0,1,254,0,0,3,254,0,128,3,252, + 0,128,7,248,0,128,7,248,0,128,15,240,1,128,15,240, + 1,128,31,224,3,128,31,224,3,128,63,192,7,128,63,192, + 15,128,127,128,31,128,127,128,63,128,255,255,255,128,255,255, + 255,128,11,42,84,18,4,248,255,224,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,248,0,248,0,255,224,16,44,88,22, + 3,247,224,0,224,0,224,0,240,0,112,0,112,0,120,0, + 56,0,56,0,60,0,28,0,28,0,30,0,14,0,14,0, + 14,0,15,0,7,0,7,0,7,128,3,128,3,128,3,192, + 1,192,1,192,1,224,0,224,0,224,0,224,0,240,0,112, + 0,112,0,120,0,56,0,56,0,60,0,28,0,28,0,30, + 0,14,0,14,0,14,0,15,0,7,11,42,84,18,3,248, + 255,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,3,224,3,224,3,224,3,224,3,224,3,224,3,224, + 3,224,255,224,22,17,51,28,3,18,0,48,0,0,112,0, + 0,120,0,0,252,0,0,252,0,1,254,0,3,207,0,3, + 143,0,7,135,128,15,3,128,15,3,192,30,1,224,60,0, + 224,60,0,240,120,0,120,112,0,56,240,0,60,25,3,12, + 25,0,248,255,255,255,128,255,255,255,128,255,255,255,128,8, + 9,9,21,4,25,96,240,248,124,60,30,15,3,1,21,22, + 66,24,2,1,15,248,0,24,62,0,56,63,0,120,31,0, + 124,31,128,126,31,128,126,31,128,62,31,128,8,63,128,1, + 255,128,7,159,128,30,31,128,62,31,128,124,31,128,124,31, + 128,252,31,128,252,31,136,252,31,136,252,31,152,254,63,144, + 127,127,240,63,143,224,22,34,102,25,1,0,255,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,159,128,31,179,224,31,225,224,31,193,240,31,193,248,31, + 192,248,31,192,248,31,128,252,31,128,252,31,128,252,31,128, + 252,31,128,252,31,128,252,31,128,252,31,128,252,31,128,248, + 31,192,248,31,193,248,29,193,240,24,225,224,24,99,192,16, + 63,128,18,22,66,22,2,1,3,252,0,15,6,0,31,3, + 0,62,3,128,62,7,128,126,15,128,124,31,128,252,31,128, + 252,31,0,252,14,0,252,0,0,252,0,0,252,0,0,252, + 0,0,252,0,0,124,0,64,124,0,192,62,0,128,62,0, + 128,30,1,0,15,130,0,3,252,0,23,34,102,26,2,0, + 0,63,224,0,7,224,0,7,224,0,7,224,0,7,224,0, + 7,224,0,7,224,0,7,224,0,7,224,0,7,224,0,7, + 224,0,7,224,7,231,224,31,23,224,30,31,224,62,15,224, + 126,15,224,124,15,224,124,7,224,252,7,224,252,7,224,252, + 7,224,252,7,224,252,7,224,252,7,224,252,7,224,252,7, + 224,124,7,224,124,15,224,126,15,224,62,15,224,30,31,224, + 15,23,224,7,231,254,18,22,66,23,2,1,3,252,0,14, + 30,0,30,31,0,62,15,128,60,15,128,124,15,128,124,15, + 192,252,15,192,252,15,192,252,15,192,255,255,192,252,0,0, + 252,0,0,252,0,0,252,0,64,124,0,64,124,0,192,62, + 0,192,62,0,128,31,1,0,15,131,0,3,252,0,18,34, + 102,16,1,1,0,255,0,1,199,128,7,199,128,7,199,192, + 15,143,192,15,143,192,31,143,192,31,143,128,31,135,128,31, + 128,0,31,128,0,31,128,0,255,240,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,255,240,0,24,33,99,27,2,246, + 7,254,62,31,15,71,63,7,143,62,7,207,126,7,238,126, + 7,228,126,7,224,126,7,224,126,7,224,62,7,192,31,15, + 128,15,15,0,3,252,0,12,0,0,48,0,0,48,0,0, + 112,0,0,112,0,0,127,255,128,127,255,224,63,255,240,31, + 255,240,7,255,248,60,1,248,96,0,120,192,0,56,192,0, + 56,192,0,48,192,0,112,96,0,96,48,1,192,30,7,128, + 3,252,0,24,34,102,27,1,0,255,128,0,31,128,0,31, + 128,0,31,128,0,31,128,0,31,128,0,31,128,0,31,128, + 0,31,128,0,31,128,0,31,128,0,31,128,0,31,143,224, + 31,145,240,31,160,248,31,160,252,31,192,252,31,192,252,31, + 192,252,31,128,252,31,128,252,31,128,252,31,128,252,31,128, + 252,31,128,252,31,128,252,31,128,252,31,128,252,31,128,252, + 31,128,252,31,128,252,31,128,252,31,128,252,255,227,255,11, + 35,70,15,2,0,4,0,31,0,63,128,63,128,63,128,63, + 128,31,0,4,0,0,0,0,0,0,0,0,0,0,0,255, + 0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63, + 0,63,0,63,0,63,0,63,0,63,0,63,0,63,0,63, + 0,63,0,63,0,63,0,63,0,255,224,15,46,92,16,254, + 245,0,16,0,124,0,254,0,254,0,254,0,254,0,124,0, + 16,0,0,0,0,0,0,0,0,0,0,7,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,0,252,0,252,0, + 252,0,252,0,252,0,252,0,252,0,252,56,252,124,252,252, + 252,252,252,248,248,248,248,113,240,49,224,31,128,25,34,136, + 27,1,0,255,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,128,0,0,31,128,0,0,31,128,0,0,31, + 128,0,0,31,131,254,0,31,128,240,0,31,128,96,0,31, + 128,192,0,31,128,128,0,31,129,128,0,31,131,0,0,31, + 134,0,0,31,143,0,0,31,159,0,0,31,159,128,0,31, + 191,128,0,31,239,192,0,31,199,224,0,31,135,224,0,31, + 131,240,0,31,129,248,0,31,129,248,0,31,128,252,0,31, + 128,252,0,31,128,254,0,255,243,255,128,12,34,68,14,1, + 0,255,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,255,240,34,22,110,37,2,1,255,31,193,248,0, + 63,35,230,124,0,63,67,228,62,0,63,131,248,63,0,63, + 131,248,63,0,63,131,248,63,0,63,3,240,63,0,63,3, + 240,63,0,63,3,240,63,0,63,3,240,63,0,63,3,240, + 63,0,63,3,240,63,0,63,3,240,63,0,63,3,240,63, + 0,63,3,240,63,0,63,3,240,63,0,63,3,240,63,0, + 63,3,240,63,0,63,3,240,63,0,63,3,240,63,0,63, + 3,240,63,0,255,207,252,255,192,23,22,66,27,2,1,255, + 31,192,63,35,224,63,65,240,63,65,248,63,129,248,63,129, + 248,63,1,248,63,1,248,63,1,248,63,1,248,63,1,248, + 63,1,248,63,1,248,63,1,248,63,1,248,63,1,248,63, + 1,248,63,1,248,63,1,248,63,1,248,63,1,248,255,199, + 254,20,22,66,24,2,1,3,252,0,15,15,0,30,7,128, + 62,7,192,62,7,192,124,3,224,124,3,224,252,3,240,252, + 3,240,252,3,240,252,3,240,252,3,240,252,3,240,252,3, + 240,252,3,240,124,3,224,124,3,224,62,7,192,62,7,192, + 30,7,128,15,15,0,3,252,0,22,33,99,25,1,246,255, + 159,128,31,163,192,31,225,224,31,193,240,31,192,248,31,192, + 248,31,192,248,31,128,252,31,128,252,31,128,252,31,128,252, + 31,128,252,31,128,252,31,128,252,31,128,252,31,192,252,31, + 192,248,31,192,248,31,193,240,31,225,240,31,179,224,31,159, + 128,31,128,0,31,128,0,31,128,0,31,128,0,31,128,0, + 31,128,0,31,128,0,31,128,0,31,128,0,31,128,0,255, + 240,0,22,33,99,25,2,246,7,240,32,15,24,96,30,28, + 96,62,14,224,126,15,224,124,15,224,124,7,224,252,7,224, + 252,7,224,252,7,224,252,7,224,252,7,224,252,7,224,252, + 7,224,252,7,224,124,7,224,124,15,224,126,15,224,62,15, + 224,30,31,224,31,23,224,7,231,224,0,7,224,0,7,224, + 0,7,224,0,7,224,0,7,224,0,7,224,0,7,224,0, + 7,224,0,7,224,0,7,224,0,63,252,17,22,66,20,2, + 1,255,31,0,63,63,128,63,79,128,63,79,128,63,159,128, + 63,159,128,63,159,0,63,14,0,63,0,0,63,0,0,63, + 0,0,63,0,0,63,0,0,63,0,0,63,0,0,63,0, + 0,63,0,0,63,0,0,63,0,0,63,0,0,63,0,0, + 255,192,0,16,22,44,21,3,1,31,196,48,116,96,60,224, + 28,224,28,240,12,248,4,254,4,127,128,127,224,63,240,31, + 252,7,254,129,254,192,127,192,31,224,15,224,7,240,7,248, + 6,204,14,135,248,15,32,64,17,1,0,1,128,1,128,1, + 128,1,128,1,128,3,128,3,128,7,128,15,128,63,128,255, + 248,31,128,31,128,31,128,31,128,31,128,31,128,31,128,31, + 128,31,128,31,128,31,128,31,130,31,130,31,130,31,130,31, + 134,31,134,31,132,15,196,15,248,7,240,24,22,66,26,1, + 0,255,143,248,31,129,248,31,129,248,31,129,248,31,129,248, + 31,129,248,31,129,248,31,129,248,31,129,248,31,129,248,31, + 129,248,31,129,248,31,129,248,31,129,248,31,129,248,31,129, + 248,31,131,248,31,131,248,31,133,248,15,133,248,15,201,248, + 7,241,255,23,23,69,25,1,255,255,241,254,63,192,120,31, + 128,48,15,192,48,15,192,32,7,192,96,7,224,96,7,224, + 64,3,224,192,3,240,128,3,240,128,1,241,128,1,249,0, + 0,249,0,0,255,0,0,254,0,0,126,0,0,126,0,0, + 124,0,0,60,0,0,60,0,0,24,0,0,24,0,35,23, + 115,37,1,255,255,231,255,31,224,63,129,252,7,128,31,128, + 252,3,0,15,128,252,2,0,15,192,124,2,0,15,192,124, + 6,0,7,192,126,4,0,7,224,254,4,0,3,224,191,12, + 0,3,224,191,8,0,3,241,159,24,0,1,241,31,144,0, + 1,241,31,144,0,1,251,31,176,0,0,250,15,224,0,0, + 250,15,224,0,0,254,15,224,0,0,124,7,192,0,0,124, + 7,192,0,0,60,7,192,0,0,56,3,128,0,0,56,3, + 128,0,0,24,3,0,0,23,22,66,25,1,0,255,231,252, + 63,192,240,31,192,224,15,192,192,15,225,128,7,227,0,3, + 242,0,3,254,0,1,252,0,1,252,0,0,252,0,0,126, + 0,0,127,0,0,127,0,0,223,128,1,159,192,3,15,192, + 2,15,224,6,7,224,14,7,240,30,7,248,255,207,254,23, + 33,99,25,1,245,255,241,254,63,192,120,31,128,48,15,192, + 32,15,192,32,15,192,96,7,224,64,7,224,64,3,240,192, + 3,240,128,1,248,128,1,249,128,0,249,0,0,253,0,0, + 253,0,0,126,0,0,126,0,0,62,0,0,60,0,0,28, + 0,0,28,0,0,12,0,0,8,0,0,8,0,0,8,0, + 15,16,0,31,16,0,63,144,0,63,32,0,62,32,0,62, + 64,0,31,192,0,15,0,0,18,22,66,22,2,0,127,255, + 192,124,15,192,120,31,128,112,63,0,96,63,0,96,126,0, + 64,126,0,64,252,0,1,248,0,1,248,0,3,240,0,3, + 240,0,7,224,64,15,192,64,15,192,64,31,128,192,31,0, + 192,63,1,192,126,1,192,126,3,192,252,15,192,255,255,192, + 14,43,86,20,3,247,0,60,0,240,3,192,7,128,7,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,0,15,0,28,0, + 240,0,60,0,30,0,15,0,15,128,15,128,15,128,15,128, + 15,128,15,128,15,128,15,128,15,128,15,128,15,128,15,128, + 15,128,7,128,7,128,3,192,0,240,0,60,3,44,44,13, + 5,247,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,15,43, + 86,20,3,247,240,0,60,0,15,0,7,128,7,128,7,192, + 7,192,7,192,7,192,7,192,7,192,7,192,7,192,7,192, + 7,192,7,192,7,192,7,192,3,192,3,192,0,240,0,62, + 0,240,1,224,3,192,7,192,7,192,7,192,7,192,7,192, + 7,192,7,192,7,192,7,192,7,192,7,192,7,192,7,192, + 7,128,7,128,15,0,60,0,240,0,27,9,36,31,2,8, + 31,128,1,128,63,240,0,192,127,254,0,96,255,255,128,96, + 193,255,240,96,192,63,255,224,192,15,255,192,96,1,255,128, + 48,0,63,0,255}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--26-260-72-72-P-138-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=26 h=24 x= 5 y=15 dx=28 dy= 0 ascent=25 len=72 + Font Bounding box w=68 h=33 x=-21 y=-8 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =18 descent=-6 + X Font ascent =19 descent=-6 + Max Font ascent =25 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr18[7816] U8G_SECTION(".progmem.u8g_font_osr18") = { + 0,68,33,235,248,18,4,197,10,125,32,255,250,25,249,19, + 250,0,0,0,7,0,0,3,18,18,7,2,0,224,224,224, + 224,224,224,64,64,64,64,64,64,64,64,0,224,224,224,6, + 5,5,10,2,13,204,204,204,204,72,14,18,36,18,2,0, + 4,32,4,32,4,32,4,32,4,32,255,252,8,64,8,64, + 8,64,8,64,8,64,24,64,255,252,16,128,16,128,16,128, + 16,128,16,128,11,22,44,15,2,254,9,0,9,0,31,128, + 41,64,73,32,73,32,73,96,73,96,105,0,61,0,31,128, + 15,192,9,192,9,96,233,32,233,32,201,32,201,64,105,64, + 31,128,9,0,9,0,18,18,54,22,2,0,56,2,0,68, + 4,0,198,8,0,198,8,0,198,16,0,198,32,0,198,32, + 0,68,64,0,56,64,0,0,134,0,1,25,128,1,48,128, + 2,48,192,4,48,192,4,48,192,8,48,192,8,24,128,16, + 15,0,18,18,54,20,1,0,7,128,0,8,64,0,24,64, + 0,24,64,0,24,192,0,28,128,0,15,0,0,6,31,192, + 15,6,0,23,6,0,35,132,0,97,196,0,192,232,0,192, + 240,0,192,112,0,224,120,128,96,220,128,63,15,0,2,5, + 5,7,2,13,192,192,192,192,64,6,23,23,10,3,252,8, + 16,48,32,64,64,192,128,128,128,128,128,128,128,128,192,64, + 64,96,32,16,24,12,6,23,23,9,1,252,64,32,48,16, + 24,8,8,12,4,4,4,4,4,4,12,8,8,8,16,16, + 32,64,192,10,10,20,14,2,8,12,0,12,0,204,192,201, + 192,42,0,30,0,235,192,201,192,12,0,12,0,22,22,66, + 24,1,252,0,16,0,0,16,0,0,16,0,0,16,0,0, + 16,0,0,16,0,0,16,0,0,16,0,0,16,0,0,16, + 0,255,255,252,0,16,0,0,16,0,0,16,0,0,16,0, + 0,16,0,0,16,0,0,16,0,0,16,0,0,16,0,0, + 16,0,0,16,0,3,8,8,7,2,252,192,224,224,32,32, + 64,64,128,7,1,1,11,2,6,254,3,3,3,7,2,0, + 224,224,224,8,24,24,12,2,250,1,1,2,2,2,4,4, + 4,12,8,8,24,16,16,16,32,32,32,64,64,64,128,128, + 128,12,18,36,15,1,0,15,0,16,192,32,64,96,96,96, + 32,192,48,192,48,192,48,192,48,192,48,192,48,192,48,192, + 48,96,32,96,96,32,64,16,192,15,0,9,18,36,15,3, + 0,8,0,8,0,24,0,248,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,255,128,10,18,36,15,2,0,30,0,99,128,129, + 192,128,192,128,192,224,192,240,192,32,192,1,128,3,0,6, + 0,8,0,16,0,32,0,64,64,192,64,255,192,255,192,11, + 18,36,15,2,0,63,0,97,128,192,192,224,192,240,192,0, + 192,0,192,1,128,62,0,1,128,0,192,0,96,96,96,240, + 96,240,96,192,192,65,128,63,0,12,18,36,15,2,0,1, + 0,3,0,3,0,7,0,15,0,11,0,19,0,51,0,35, + 0,67,0,195,0,131,0,255,224,3,0,3,0,3,0,3, + 0,31,240,11,18,36,15,2,0,96,192,127,128,126,0,64, + 0,64,0,64,0,95,0,97,128,64,192,64,224,0,96,0, + 96,96,96,240,96,224,192,192,192,65,128,62,0,11,18,36, + 15,2,0,15,0,24,128,48,64,96,192,96,192,64,0,192, + 0,207,0,209,192,224,192,224,224,224,96,224,96,224,96,96, + 224,96,192,49,128,15,0,10,18,36,15,3,0,255,192,255, + 192,128,64,128,64,128,128,0,128,1,0,1,0,2,0,6, + 0,6,0,12,0,12,0,30,0,30,0,30,0,30,0,14, + 0,12,18,36,15,2,0,31,128,48,224,96,96,192,48,192, + 48,224,48,240,32,124,64,63,128,55,224,96,240,192,112,192, + 48,192,48,192,48,96,96,112,192,31,128,11,18,36,15,2, + 0,30,0,49,128,96,192,224,192,192,64,192,96,192,96,192, + 224,96,224,113,96,30,96,0,96,0,64,96,192,96,192,64, + 128,65,0,62,0,3,12,12,7,2,0,224,224,224,0,0, + 0,0,0,0,224,224,224,4,16,16,8,2,252,96,240,240, + 0,0,0,0,0,96,240,240,16,16,32,32,64,20,21,63, + 24,2,253,0,0,48,0,0,192,0,3,0,0,12,0,0, + 48,0,0,224,0,3,128,0,14,0,0,24,0,0,96,0, + 0,192,0,0,48,0,0,12,0,0,7,0,0,1,192,0, + 0,112,0,0,24,0,0,6,0,0,1,128,0,0,96,0, + 0,16,22,6,18,24,1,4,255,255,252,0,0,0,0,0, + 0,0,0,0,0,0,0,255,255,252,20,21,63,24,2,253, + 192,0,0,48,0,0,12,0,0,3,0,0,0,192,0,0, + 112,0,0,28,0,0,7,0,0,1,128,0,0,96,0,0, + 48,0,0,192,0,3,0,0,14,0,0,56,0,0,224,0, + 1,128,0,6,0,0,24,0,0,96,0,0,128,0,0,9, + 18,36,12,2,0,62,0,67,0,129,128,129,128,225,128,97, + 128,3,0,6,0,12,0,16,0,48,0,34,0,34,0,28, + 0,0,0,28,0,28,0,28,0,18,18,54,20,1,0,3, + 248,0,12,6,0,16,109,0,33,156,128,67,12,128,70,8, + 64,142,8,64,142,24,64,140,24,64,140,16,64,140,48,128, + 140,48,128,140,241,0,71,30,0,96,0,0,32,0,0,24, + 12,0,7,240,0,18,18,54,20,2,0,0,128,0,0,192, + 0,1,192,0,1,192,0,1,224,0,3,224,0,2,96,0, + 2,112,0,6,112,0,4,48,0,4,56,0,12,56,0,15, + 248,0,24,28,0,16,12,0,16,12,0,48,14,0,254,63, + 192,15,18,36,17,1,0,255,240,24,28,24,12,24,6,24, + 6,24,6,24,12,24,24,31,224,24,24,24,12,24,6,24, + 6,24,6,24,6,24,12,24,28,255,240,14,18,36,18,2, + 0,7,132,24,108,32,60,96,28,96,12,192,12,192,4,192, + 0,192,0,192,0,192,0,192,4,96,4,96,4,32,8,48, + 24,24,48,7,192,17,18,54,20,1,0,255,240,0,24,12, + 0,24,6,0,24,3,0,24,3,0,24,1,128,24,1,128, + 24,1,128,24,1,128,24,1,128,24,1,128,24,1,128,24, + 1,128,24,3,0,24,3,0,24,6,0,24,12,0,255,240, + 0,15,18,36,18,1,0,255,254,24,6,24,2,24,2,24, + 2,24,34,24,32,24,96,31,224,24,96,24,32,24,32,24, + 34,24,2,24,2,24,6,24,14,255,254,15,18,36,17,1, + 0,255,254,24,6,24,2,24,2,24,2,24,34,24,32,24, + 96,31,224,24,96,24,32,24,32,24,32,24,0,24,0,24, + 0,24,0,127,0,17,18,54,19,2,0,7,196,0,24,100, + 0,48,28,0,96,28,0,96,12,0,96,4,0,192,4,0, + 192,0,0,192,127,128,192,28,0,192,28,0,192,28,0,192, + 28,0,96,28,0,96,28,0,48,52,0,24,100,0,7,132, + 0,18,18,54,20,1,0,255,63,192,24,6,0,24,6,0, + 24,6,0,24,6,0,24,6,0,24,6,0,24,6,0,31, + 254,0,24,6,0,24,6,0,24,6,0,24,6,0,24,6, + 0,24,6,0,24,6,0,24,6,0,255,63,192,8,18,18, + 10,1,0,255,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,255,12,18,36,14,1,0,7,240,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,97,128,241,128,225,128,193,128,67,0,62,0,17, + 18,54,19,1,0,255,63,128,24,14,0,24,8,0,24,16, + 0,24,32,0,24,64,0,24,128,0,25,192,0,26,192,0, + 28,224,0,24,96,0,24,112,0,24,56,0,24,56,0,24, + 28,0,24,28,0,24,14,0,255,127,128,15,18,36,17,1, + 0,255,0,24,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,0,24,2,24,2,24,2,24,6,24, + 6,24,14,255,254,20,18,54,22,1,0,252,3,240,28,3, + 128,30,5,128,22,5,128,22,5,128,23,5,128,19,9,128, + 19,9,128,19,137,128,19,145,128,17,145,128,17,209,128,17, + 209,128,16,225,128,16,225,128,16,225,128,16,65,128,254,79, + 240,18,18,54,19,1,0,252,15,192,28,2,0,30,2,0, + 22,2,0,23,2,0,19,130,0,17,130,0,17,194,0,16, + 226,0,16,226,0,16,114,0,16,50,0,16,58,0,16,30, + 0,16,14,0,16,14,0,16,6,0,254,2,0,15,18,36, + 18,2,0,7,192,24,48,48,24,32,8,96,12,96,12,192, + 6,192,6,192,6,192,6,192,6,192,6,96,12,96,12,32, + 8,48,24,24,48,7,192,15,18,36,17,1,0,255,240,24, + 28,24,12,24,6,24,6,24,6,24,12,24,24,31,240,24, + 0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,255, + 0,15,22,44,18,2,252,7,192,24,48,48,24,32,8,96, + 12,96,12,192,6,192,6,192,6,192,6,192,6,192,6,96, + 12,99,140,36,76,52,120,28,114,7,226,0,98,0,118,0, + 60,0,24,17,18,54,19,1,0,255,240,0,24,24,0,24, + 12,0,24,12,0,24,12,0,24,12,0,24,24,0,31,224, + 0,24,48,0,24,56,0,24,24,0,24,24,0,24,24,0, + 24,28,128,24,28,128,24,28,128,24,31,0,255,15,0,13, + 18,36,16,2,0,30,32,97,160,192,96,192,96,192,32,192, + 32,224,0,124,0,63,128,15,224,129,240,128,112,128,24,192, + 24,192,24,224,16,152,32,135,192,15,18,36,18,2,0,255, + 254,195,14,131,6,131,2,3,2,3,2,3,2,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,31,240,19,18,54,21,1,0,255,15,224,24,1,0,24, + 1,0,24,1,0,24,1,0,24,1,0,24,1,0,24,1, + 0,24,1,0,24,1,0,24,1,0,24,1,0,24,1,0, + 24,1,0,12,1,0,12,2,0,6,4,0,1,248,0,18, + 18,54,20,1,0,255,31,192,28,3,0,28,2,0,12,2, + 0,14,6,0,6,4,0,7,4,0,7,8,0,3,8,0, + 3,136,0,3,144,0,1,144,0,1,208,0,0,224,0,0, + 224,0,0,224,0,0,64,0,0,64,0,26,18,72,28,1, + 0,255,63,159,192,28,14,3,0,12,6,2,0,12,14,2, + 0,14,15,6,0,14,15,4,0,6,19,4,0,7,19,140, + 0,7,19,136,0,3,49,136,0,3,161,216,0,3,161,208, + 0,1,160,208,0,1,192,240,0,1,192,224,0,0,192,96, + 0,0,128,96,0,0,128,64,0,18,18,54,20,1,0,127, + 191,128,14,12,0,14,12,0,7,8,0,7,16,0,3,176, + 0,1,160,0,1,192,0,0,192,0,0,224,0,1,96,0, + 3,112,0,2,56,0,4,56,0,12,28,0,8,12,0,24, + 14,0,254,63,192,17,18,54,19,1,0,255,31,128,28,6, + 0,28,4,0,14,4,0,6,8,0,7,8,0,3,144,0, + 3,160,0,1,224,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,0,192,0,0,192,0,0,192,0,7,252, + 0,14,18,36,17,2,0,127,252,112,56,96,48,64,112,64, + 224,128,192,1,192,3,128,3,0,7,0,14,0,12,4,28, + 4,56,4,48,12,112,28,224,56,255,248,5,23,23,10,3, + 251,248,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,248,8,24,24,12,2,250,128,128, + 128,64,64,64,32,32,32,16,16,16,16,8,8,8,4,4, + 4,2,2,2,1,1,5,23,23,10,2,251,248,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,248,11,9,18,15,2,9,4,0,14,0,10,0,17, + 0,49,128,32,128,64,64,64,96,128,32,14,1,2,14,0, + 252,255,252,4,4,4,11,2,13,192,224,96,16,11,12,24, + 13,1,0,30,0,99,0,65,128,97,128,33,128,15,128,113, + 128,193,128,195,160,195,160,197,160,121,192,11,18,36,13,0, + 0,240,0,48,0,48,0,48,0,48,0,48,0,51,128,52, + 192,56,96,56,96,48,96,48,96,48,96,48,96,48,96,56, + 96,40,192,39,128,9,12,24,11,1,0,30,0,33,0,96, + 128,193,128,193,128,192,0,192,0,192,0,192,128,96,128,33, + 0,30,0,12,18,36,14,1,0,7,192,0,192,0,192,0, + 192,0,192,0,192,28,192,98,192,97,192,193,192,192,192,192, + 192,192,192,192,192,192,192,97,192,97,192,30,240,9,12,24, + 12,1,0,30,0,35,0,97,128,193,128,193,128,255,128,192, + 0,192,0,192,128,96,128,33,0,30,0,9,18,36,9,1, + 0,15,0,24,128,49,128,49,0,48,0,48,0,254,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,0,254,0,12,18,36,15,2,250,30,112,97,176,225, + 240,192,192,192,192,192,192,225,128,97,128,30,0,224,0,255, + 0,127,192,64,96,128,32,128,32,128,32,192,64,63,128,13, + 18,36,15,1,0,240,0,48,0,48,0,48,0,48,0,48, + 0,51,192,52,192,56,96,56,96,48,96,48,96,48,96,48, + 96,48,96,48,96,48,96,253,248,6,18,18,8,1,0,112, + 112,32,0,0,0,240,48,48,48,48,48,48,48,48,48,48, + 252,7,24,24,8,255,250,6,6,0,0,0,0,62,6,6, + 6,6,6,6,6,6,6,6,6,6,6,198,198,140,120,12, + 18,36,14,1,0,240,0,48,0,48,0,48,0,48,0,48, + 0,49,240,48,128,49,0,50,0,50,0,54,0,59,0,51, + 0,49,128,49,192,48,224,253,240,6,18,18,8,1,0,240, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 252,19,12,36,21,1,0,243,199,0,52,249,128,56,113,192, + 56,97,192,48,97,192,48,97,192,48,97,192,48,97,192,48, + 97,192,48,97,192,48,97,192,253,251,224,13,12,24,15,1, + 0,243,192,52,192,56,96,56,96,48,96,48,96,48,96,48, + 96,48,96,48,96,48,96,253,248,10,12,24,13,1,0,30, + 0,33,128,97,128,192,192,192,192,192,192,192,192,192,192,192, + 192,97,128,33,128,30,0,11,18,36,14,1,250,243,128,52, + 192,56,96,56,96,48,96,48,96,48,96,48,96,48,96,56, + 96,56,192,55,128,48,0,48,0,48,0,48,0,48,0,252, + 0,12,18,36,13,1,250,28,64,98,64,97,192,192,192,192, + 192,192,192,192,192,192,192,192,192,97,192,97,192,30,192,0, + 192,0,192,0,192,0,192,0,192,3,240,9,12,24,11,1, + 0,243,128,52,128,57,128,56,128,56,0,48,0,48,0,48, + 0,48,0,48,0,48,0,252,0,9,12,24,11,1,0,125, + 0,131,0,129,0,193,0,240,0,124,0,31,0,131,128,128, + 128,192,128,224,128,159,0,8,17,17,10,1,0,16,16,16, + 48,48,254,48,48,48,48,48,48,48,49,49,51,30,13,12, + 24,14,0,0,241,224,48,96,48,96,48,96,48,96,48,96, + 48,96,48,96,48,224,48,224,57,96,30,120,13,12,24,14, + 1,0,252,248,48,96,48,64,24,64,24,128,12,128,12,128, + 13,0,7,0,7,0,2,0,2,0,19,12,36,21,1,0, + 253,251,224,48,96,128,48,96,128,24,113,0,24,177,0,12, + 177,0,12,154,0,13,26,0,7,28,0,7,12,0,2,12, + 0,2,8,0,12,12,24,14,1,0,249,224,48,128,57,0, + 25,0,14,0,14,0,6,0,11,0,19,0,17,128,33,192, + 243,240,13,18,36,14,0,250,252,248,56,32,24,32,24,64, + 12,64,12,64,12,128,6,128,6,128,7,0,3,0,3,0, + 2,0,2,0,34,0,98,0,100,0,56,0,9,12,24,12, + 1,0,255,128,195,128,131,0,134,0,142,0,12,0,24,0, + 56,0,48,128,96,128,96,128,255,128,6,23,23,12,3,251, + 12,16,48,48,48,48,56,24,24,24,16,224,48,16,24,24, + 56,48,48,48,48,16,12,1,24,24,7,3,250,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,6,23,23,11,3,251,192,32,48,48,48, + 112,96,96,96,96,32,28,48,96,96,96,96,112,48,48,48, + 32,192,15,5,10,17,1,4,32,4,254,2,143,194,129,254, + 64,124,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,7,0,0,3,18,18,7,2,250,224, + 224,224,0,64,64,64,64,64,64,64,64,224,224,224,224,224, + 224,9,18,36,15,3,253,4,0,4,0,4,0,31,0,53, + 0,100,128,229,128,197,128,196,0,196,0,196,0,228,128,100, + 128,53,0,31,0,4,0,4,0,4,0,14,18,36,19,2, + 0,0,248,1,132,3,4,2,12,6,0,6,0,6,0,62, + 0,7,224,6,0,6,0,6,0,6,0,6,0,116,4,140, + 4,139,248,112,240,11,11,22,15,2,2,159,32,113,192,64, + 64,128,96,128,32,128,32,128,32,128,32,64,64,96,192,159, + 32,15,18,36,15,0,0,252,126,56,24,24,16,28,16,12, + 32,14,64,6,64,7,128,3,128,63,240,3,0,3,0,63, + 240,3,0,3,0,3,0,3,0,31,224,1,23,23,7,3, + 251,128,128,128,128,128,128,128,128,128,0,0,0,0,0,128, + 128,128,128,128,128,128,128,128,10,23,46,17,3,251,30,0, + 33,0,35,0,35,0,32,0,48,0,28,0,46,0,71,0, + 131,128,129,192,192,192,224,64,112,64,56,128,29,0,6,0, + 3,0,3,0,49,0,49,0,34,0,28,0,7,2,2,11, + 2,15,198,198,19,18,54,21,1,0,3,248,0,12,6,0, + 16,225,0,33,28,128,67,12,64,70,4,64,134,4,32,134, + 0,32,134,0,32,134,0,32,134,0,32,134,8,32,67,8, + 64,67,8,64,32,240,128,16,1,0,12,6,0,3,248,0, + 7,8,8,11,2,10,240,200,24,104,136,154,100,252,6,10, + 10,12,3,1,32,68,136,136,136,136,136,136,68,32,13,6, + 12,15,1,3,255,248,0,8,0,8,0,8,0,8,0,8, + 7,1,1,11,2,6,254,19,18,54,21,1,0,3,248,0, + 12,6,0,31,225,0,35,24,128,67,24,64,67,24,64,131, + 24,32,131,24,32,131,224,32,131,16,32,131,24,32,131,24, + 32,67,26,64,67,26,64,47,142,128,16,1,0,12,6,0, + 3,248,0,7,1,1,11,2,15,254,7,7,7,15,4,11, + 56,68,130,130,130,68,56,22,18,54,24,1,255,0,16,0, + 0,16,0,0,16,0,0,16,0,0,16,0,0,16,0,0, + 16,0,255,255,252,0,16,0,0,16,0,0,16,0,0,16, + 0,0,16,0,0,16,0,0,16,0,0,0,0,0,0,0, + 255,255,252,7,10,10,11,2,8,124,134,134,230,6,8,16, + 96,66,254,7,11,11,12,3,7,120,132,198,198,4,120,14, + 70,198,134,120,4,4,4,11,5,13,48,48,96,128,14,19, + 38,17,2,249,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,64,192,64,128,64,132,163,252,159,28,128,0,128,0, + 192,0,192,0,192,0,224,0,64,0,11,22,44,14,2,252, + 63,224,120,128,248,128,248,128,248,128,248,128,248,128,120,128, + 8,128,8,128,8,128,8,128,8,128,8,128,8,128,8,128, + 8,128,8,128,8,128,8,128,8,128,8,128,3,3,3,7, + 2,7,224,224,224,5,5,5,11,3,251,64,48,24,24,240, + 6,11,11,12,3,7,16,16,240,48,48,48,48,48,48,48, + 252,6,9,9,10,2,9,112,136,132,132,132,132,72,48,252, + 7,10,10,13,3,1,8,68,68,34,34,34,34,68,68,136, + 18,18,54,23,3,0,16,4,0,240,12,0,48,8,0,48, + 16,0,48,16,0,48,32,0,48,96,0,48,67,0,48,135, + 0,48,139,0,253,11,0,3,19,0,2,19,0,6,35,0, + 4,63,192,8,3,0,24,3,0,16,15,192,17,18,54,22, + 3,0,16,4,0,240,8,0,48,8,0,48,16,0,48,16, + 0,48,32,0,48,64,0,48,78,0,48,179,128,48,161,128, + 253,49,128,3,17,128,2,3,0,4,6,0,4,8,0,8, + 16,128,24,49,128,16,63,128,18,18,54,23,3,0,120,4, + 0,134,12,0,198,8,0,4,16,0,120,16,0,12,32,0, + 6,96,0,198,67,0,198,135,0,142,139,0,121,11,0,2, + 19,0,2,19,0,4,35,0,12,63,192,8,3,0,16,3, + 0,16,15,192,9,18,36,12,1,250,28,0,28,0,28,0, + 0,0,28,0,34,0,34,0,6,0,4,0,24,0,48,0, + 96,0,227,0,195,128,192,128,224,128,97,0,62,0,18,24, + 72,20,2,0,6,0,0,6,0,0,3,0,0,0,128,0, + 0,0,0,0,0,0,0,128,0,0,192,0,1,192,0,1, + 192,0,1,224,0,3,224,0,2,96,0,2,112,0,6,112, + 0,4,48,0,4,56,0,12,24,0,15,248,0,24,28,0, + 16,12,0,16,14,0,48,14,0,254,63,192,18,24,72,20, + 2,0,0,16,0,0,48,0,0,96,0,0,64,0,0,128, + 0,0,0,0,0,128,0,0,192,0,1,192,0,1,192,0, + 1,224,0,3,224,0,2,96,0,2,112,0,6,112,0,4, + 48,0,4,56,0,12,56,0,15,248,0,24,28,0,16,12, + 0,16,14,0,48,14,0,254,63,192,18,24,72,20,2,0, + 0,128,0,0,192,0,1,96,0,2,48,0,4,8,0,0, + 0,0,0,128,0,0,192,0,1,192,0,1,192,0,1,224, + 0,3,224,0,2,96,0,2,112,0,6,112,0,4,48,0, + 4,56,0,12,56,0,15,248,0,24,28,0,16,12,0,16, + 12,0,48,14,0,254,63,192,18,23,69,20,2,0,3,144, + 0,5,240,0,0,0,0,0,0,0,0,0,0,0,128,0, + 0,128,0,1,192,0,1,192,0,1,224,0,3,224,0,2, + 96,0,2,112,0,6,112,0,4,48,0,12,56,0,12,56, + 0,15,248,0,24,28,0,16,28,0,16,12,0,48,14,0, + 254,63,192,18,23,69,20,1,0,6,24,0,6,24,0,2, + 16,0,0,0,0,0,0,0,0,192,0,0,192,0,0,192, + 0,1,224,0,1,224,0,1,96,0,2,112,0,2,112,0, + 2,48,0,4,56,0,4,24,0,12,24,0,15,252,0,8, + 12,0,24,12,0,24,14,0,56,6,0,254,63,192,17,24, + 72,20,2,0,1,192,0,2,32,0,2,32,0,2,32,0, + 1,192,0,0,0,0,0,128,0,0,128,0,1,192,0,1, + 192,0,1,192,0,2,224,0,2,96,0,2,96,0,4,112, + 0,4,112,0,12,48,0,8,56,0,15,248,0,24,28,0, + 16,28,0,16,12,0,48,14,0,254,127,128,24,18,54,26, + 0,0,0,127,255,0,28,7,0,28,3,0,44,1,0,44, + 1,0,76,17,0,76,16,0,140,48,0,143,240,1,12,48, + 3,12,16,2,12,17,7,252,17,4,12,1,8,12,1,8, + 12,3,24,12,7,254,63,255,14,24,48,18,2,250,7,132, + 24,108,32,60,96,28,96,12,192,12,192,4,192,0,192,0, + 192,0,192,0,192,4,96,4,96,4,96,8,48,24,24,48, + 7,192,2,0,3,128,0,192,0,192,8,192,7,128,15,24, + 48,18,1,0,4,0,6,0,3,0,1,128,0,0,0,0, + 255,254,24,6,24,2,24,2,24,2,24,34,24,32,24,96, + 31,224,24,96,24,32,24,32,24,34,24,2,24,2,24,6, + 24,14,255,254,15,24,48,18,1,0,0,48,0,48,0,96, + 0,192,0,0,0,0,255,254,24,14,24,6,24,2,24,2, + 24,34,24,32,24,96,31,224,24,96,24,32,24,32,24,34, + 24,2,24,2,24,6,24,14,255,254,15,24,48,18,1,0, + 0,128,1,192,3,64,6,48,8,8,0,0,255,254,24,6, + 24,2,24,2,24,2,24,34,24,32,24,96,31,224,24,96, + 24,32,24,32,24,34,24,2,24,2,24,6,24,14,255,254, + 15,23,46,18,1,0,6,48,6,48,4,16,0,0,0,0, + 255,254,24,14,24,6,24,2,24,2,24,34,24,32,24,96, + 31,224,24,96,24,32,24,32,24,34,24,2,24,2,24,6, + 24,14,255,254,8,24,24,10,1,0,64,96,48,16,8,0, + 255,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,255,8,24,24,10,1,0,3,3,6,8,0,0,255,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,255, + 8,24,24,10,1,0,8,24,52,66,129,0,255,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,255,8,23, + 23,10,1,0,195,195,66,0,0,255,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,24,24,255,17,18,54,19,1, + 0,255,240,0,24,12,0,24,6,0,24,3,0,24,3,0, + 24,1,128,24,1,128,24,1,128,127,1,128,24,1,128,24, + 1,128,24,1,128,24,1,128,24,3,0,24,3,0,24,6, + 0,24,12,0,255,240,0,18,24,72,19,1,0,3,200,0, + 2,248,0,0,0,0,0,0,0,0,0,0,0,0,0,252, + 15,192,28,2,0,30,2,0,22,2,0,23,2,0,19,130, + 0,17,130,0,17,194,0,16,226,0,16,226,0,16,114,0, + 16,50,0,16,58,0,16,30,0,16,14,0,16,14,0,16, + 6,0,252,2,0,15,24,48,18,2,1,28,0,12,0,6, + 0,2,0,1,0,0,0,7,192,24,48,48,24,32,8,96, + 12,96,12,192,6,192,6,192,6,192,6,192,6,192,6,96, + 12,96,12,32,8,48,24,24,48,7,192,15,24,48,18,2, + 1,0,112,0,96,0,192,0,128,1,0,0,0,7,192,24, + 48,48,24,32,8,96,12,96,12,192,6,192,6,192,6,192, + 6,192,6,192,6,96,12,96,12,32,8,48,24,24,48,7, + 192,15,24,48,18,2,0,1,0,3,128,6,192,12,96,16, + 16,0,0,7,192,24,48,48,24,32,8,96,12,96,12,192, + 6,192,6,192,6,192,6,192,6,192,6,96,12,96,12,32, + 8,48,24,24,48,7,192,15,24,48,18,2,0,15,16,19, + 224,0,0,0,0,0,0,0,0,7,192,24,48,48,24,32, + 8,96,12,96,12,192,6,192,6,192,6,192,6,192,6,192, + 6,96,12,96,12,32,8,48,24,24,48,7,192,15,24,48, + 18,2,0,8,0,12,96,12,96,0,0,0,0,0,0,7, + 192,24,48,48,24,32,8,96,12,96,12,192,6,192,6,192, + 6,192,6,192,6,192,6,96,12,96,12,32,8,48,24,24, + 48,7,192,16,16,32,24,4,255,0,1,64,3,32,6,16, + 12,8,24,4,48,2,96,1,192,1,128,3,64,6,32,12, + 16,24,8,48,4,96,2,192,1,15,18,36,18,2,0,7, + 194,24,52,48,28,32,12,96,28,96,44,192,70,192,198,193, + 134,195,6,198,6,196,6,232,12,112,12,96,8,112,24,88, + 48,135,192,19,24,72,21,1,1,3,0,0,3,128,0,0, + 128,0,0,64,0,0,0,0,0,0,0,255,15,224,24,1, + 0,24,1,0,24,1,0,24,1,0,24,1,0,24,1,0, + 24,1,0,24,1,0,24,1,0,24,1,0,24,1,0,24, + 1,0,24,1,0,12,1,0,12,2,0,6,4,0,1,248, + 0,19,24,72,21,1,1,0,28,0,0,24,0,0,48,0, + 0,32,0,0,64,0,0,0,0,255,15,224,24,1,0,24, + 1,0,24,1,0,24,1,0,24,1,0,24,1,0,24,1, + 0,24,1,0,24,1,0,24,1,0,24,1,0,24,1,0, + 24,1,0,12,1,0,12,2,0,6,4,0,1,248,0,19, + 24,72,21,1,0,0,96,0,0,224,0,1,176,0,3,8, + 0,0,4,0,0,0,0,255,15,224,24,1,0,24,1,0, + 24,1,0,24,1,0,24,1,0,24,1,0,24,1,0,24, + 1,0,24,1,0,24,1,0,24,1,0,24,1,0,24,1, + 0,12,1,0,12,2,0,6,4,0,1,248,0,19,23,69, + 21,1,1,3,24,0,3,24,0,0,0,0,0,0,0,0, + 0,0,255,15,224,24,1,0,24,1,0,24,1,0,24,1, + 0,24,1,0,24,1,0,24,1,0,24,1,0,24,1,0, + 24,1,0,24,1,0,24,1,0,24,1,0,12,1,0,12, + 2,0,6,4,0,1,248,0,17,24,72,19,1,0,0,24, + 0,0,56,0,0,48,0,0,64,0,0,0,0,0,0,0, + 255,31,128,28,6,0,28,4,0,14,4,0,6,8,0,7, + 8,0,3,144,0,3,160,0,1,224,0,0,192,0,0,192, + 0,0,192,0,0,192,0,0,192,0,0,192,0,0,192,0, + 0,192,0,7,252,0,15,18,36,17,1,0,255,0,24,0, + 24,0,31,224,24,24,24,12,24,6,24,6,24,6,24,14, + 24,12,24,24,31,240,24,0,24,0,24,0,24,0,255,0, + 12,18,36,14,1,0,7,128,24,224,24,96,48,96,48,192, + 48,128,55,0,49,128,48,64,48,96,48,112,48,48,48,48, + 48,48,54,48,54,112,52,96,243,192,11,18,36,13,1,0, + 96,0,96,0,48,0,24,0,8,0,0,0,30,0,99,0, + 65,128,97,128,33,128,15,128,113,128,193,128,195,160,195,160, + 197,160,121,192,11,18,36,13,1,0,1,128,3,128,3,0, + 4,0,8,0,0,0,62,0,65,0,65,128,97,128,33,128, + 15,128,113,128,193,128,193,160,195,160,197,160,120,192,11,18, + 36,13,1,0,8,0,12,0,28,0,50,0,65,0,0,0, + 30,0,99,0,65,128,97,128,33,128,15,128,113,128,193,128, + 195,160,195,160,197,160,121,192,11,17,34,13,1,0,56,128, + 79,0,0,0,0,0,0,0,30,0,99,0,65,128,97,128, + 33,128,15,128,113,128,193,128,195,160,195,160,197,160,121,192, + 11,17,34,13,1,0,99,0,99,0,1,0,0,0,0,0, + 60,0,67,0,67,0,99,0,3,0,15,0,115,0,195,0, + 195,32,199,32,203,32,121,192,11,18,36,13,1,0,28,0, + 34,0,34,0,34,0,28,0,0,0,60,0,67,0,67,0, + 99,0,35,0,15,0,115,0,195,0,195,32,199,32,199,32, + 121,192,16,12,24,18,1,0,30,120,99,198,65,134,97,131, + 1,131,31,255,97,128,193,128,195,129,195,130,196,194,120,124, + 9,18,36,11,1,250,30,0,33,0,96,128,193,128,193,128, + 192,0,192,0,192,0,192,0,96,128,33,0,30,0,8,0, + 12,0,2,0,3,0,3,0,30,0,9,18,36,12,1,0, + 96,0,112,0,48,0,8,0,0,0,0,0,30,0,35,0, + 97,128,193,128,193,128,255,128,192,0,192,0,192,128,96,128, + 33,0,30,0,9,18,36,12,1,0,1,0,3,0,2,0, + 4,0,8,0,0,0,30,0,35,0,97,128,193,128,193,128, + 255,128,192,0,192,0,192,128,96,128,33,0,30,0,9,18, + 36,12,1,0,8,0,12,0,28,0,18,0,33,0,0,0, + 30,0,35,0,97,128,193,128,193,128,255,128,192,0,192,0, + 192,128,96,128,33,0,30,0,9,17,34,12,1,0,51,0, + 51,0,1,0,0,0,0,0,30,0,35,0,97,128,193,128, + 193,128,255,128,192,0,192,0,192,128,96,128,33,0,30,0, + 7,18,18,8,0,0,192,224,96,16,8,0,120,24,24,24, + 24,24,24,24,24,24,24,126,6,18,18,7,1,0,4,12, + 24,16,32,0,240,48,48,48,48,48,48,48,48,48,48,252, + 8,17,17,8,0,0,24,56,36,195,0,120,24,24,24,24, + 24,24,24,24,24,24,126,7,17,17,9,1,0,4,198,198, + 0,0,120,24,24,24,24,24,24,24,24,24,24,124,10,18, + 36,13,1,0,56,128,27,0,12,0,22,0,35,0,3,0, + 31,128,33,128,97,192,192,192,192,192,192,192,192,192,192,192, + 192,192,97,128,33,128,30,0,13,17,34,15,1,0,14,64, + 19,192,0,0,0,0,0,0,243,192,52,192,56,96,56,96, + 48,96,48,96,48,96,48,96,48,96,48,96,48,96,253,248, + 10,18,36,13,1,0,96,0,48,0,16,0,8,0,4,0, + 0,0,30,0,33,128,97,128,192,192,192,192,192,192,192,192, + 192,192,192,192,97,128,33,128,30,0,10,18,36,13,1,0, + 1,128,3,128,3,0,4,0,0,0,0,0,30,0,33,128, + 97,128,192,192,192,192,192,192,192,192,192,192,192,192,97,128, + 33,128,30,0,10,18,36,13,1,0,4,0,12,0,14,0, + 18,0,33,0,0,0,30,0,33,128,97,128,192,192,192,192, + 192,192,192,192,192,192,192,192,97,128,33,128,30,0,10,17, + 34,13,1,0,60,128,47,0,0,0,0,0,0,0,30,0, + 33,128,97,128,192,192,192,192,192,192,192,192,192,192,192,192, + 97,128,33,128,30,0,10,17,34,13,1,0,49,128,49,128, + 1,0,0,0,0,0,30,0,33,128,97,128,192,192,192,192, + 192,192,192,192,192,192,192,192,97,128,33,128,30,0,22,16, + 48,24,1,255,0,112,0,0,112,0,0,112,0,0,0,0, + 0,0,0,0,0,0,0,0,0,255,255,252,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,112,0,0,112, + 0,0,112,0,10,12,24,13,1,0,30,64,33,128,96,128, + 193,192,194,192,196,192,200,192,208,192,208,192,97,128,97,128, + 158,0,13,18,36,14,0,0,16,0,24,0,12,0,4,0, + 2,0,0,0,241,224,48,96,48,96,48,96,48,96,48,96, + 48,96,48,96,48,224,48,224,57,96,30,120,13,18,36,14, + 0,0,0,192,0,192,1,128,2,0,0,0,0,0,241,224, + 48,96,48,96,48,96,48,96,48,96,48,96,48,96,48,224, + 48,224,57,96,30,120,13,18,36,14,0,0,2,0,6,0, + 5,0,8,128,16,0,0,0,241,224,48,96,48,96,48,96, + 48,96,48,96,48,96,48,96,48,224,48,224,57,96,30,120, + 13,17,34,14,0,0,24,192,24,192,0,0,0,0,0,0, + 240,224,48,96,48,96,48,96,48,96,48,96,48,96,48,96, + 48,224,48,224,57,96,30,120,13,24,48,14,0,250,0,96, + 0,224,0,192,1,0,0,0,0,0,252,248,56,32,24,32, + 24,64,12,64,12,64,12,128,6,128,6,128,7,0,3,0, + 3,0,3,0,2,0,34,0,98,0,100,0,56,0,11,24, + 48,14,1,250,48,0,240,0,48,0,48,0,48,0,48,0, + 49,192,54,224,52,96,56,96,56,96,48,96,48,192,48,192, + 49,128,49,0,50,0,60,0,48,0,48,0,48,0,48,0, + 48,0,96,0,13,23,46,14,0,250,8,64,12,96,12,96, + 0,0,0,0,252,120,24,32,24,32,24,64,12,64,12,64, + 14,128,6,128,6,128,7,0,3,0,3,0,2,0,2,0, + 34,0,114,0,100,0,56,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--26-260-72-72-P-138-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 18 + Calculated Max Values w=22 h=24 x= 3 y= 8 dx=24 dy= 0 ascent=18 len=66 + Font Bounding box w=68 h=33 x=-21 y=-8 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =18 descent= 0 + X Font ascent =18 descent= 0 + Max Font ascent =18 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr18n[595] U8G_SECTION(".progmem.u8g_font_osr18n") = { + 0,68,33,235,248,18,0,0,0,0,42,57,0,18,250,18, + 0,10,10,20,14,2,8,12,0,12,0,204,192,201,192,42, + 0,30,0,235,192,201,192,12,0,12,0,22,22,66,24,1, + 252,0,16,0,0,16,0,0,16,0,0,16,0,0,16,0, + 0,16,0,0,16,0,0,16,0,0,16,0,0,16,0,255, + 255,252,0,16,0,0,16,0,0,16,0,0,16,0,0,16, + 0,0,16,0,0,16,0,0,16,0,0,16,0,0,16,0, + 0,16,0,3,8,8,7,2,252,192,224,224,32,32,64,64, + 128,7,1,1,11,2,6,254,3,3,3,7,2,0,224,224, + 224,8,24,24,12,2,250,1,1,2,2,2,4,4,4,12, + 8,8,24,16,16,16,32,32,32,64,64,64,128,128,128,12, + 18,36,15,1,0,15,0,16,192,32,64,96,96,96,32,192, + 48,192,48,192,48,192,48,192,48,192,48,192,48,192,48,96, + 32,96,96,32,64,16,192,15,0,9,18,36,15,3,0,8, + 0,8,0,24,0,248,0,24,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24, + 0,255,128,10,18,36,15,2,0,30,0,99,128,129,192,128, + 192,128,192,224,192,240,192,32,192,1,128,3,0,6,0,8, + 0,16,0,32,0,64,64,192,64,255,192,255,192,11,18,36, + 15,2,0,63,0,97,128,192,192,224,192,240,192,0,192,0, + 192,1,128,62,0,1,128,0,192,0,96,96,96,240,96,240, + 96,192,192,65,128,63,0,12,18,36,15,2,0,1,0,3, + 0,3,0,7,0,15,0,11,0,19,0,51,0,35,0,67, + 0,195,0,131,0,255,224,3,0,3,0,3,0,3,0,31, + 240,11,18,36,15,2,0,96,192,127,128,126,0,64,0,64, + 0,64,0,95,0,97,128,64,192,64,224,0,96,0,96,96, + 96,240,96,224,192,192,192,65,128,62,0,11,18,36,15,2, + 0,15,0,24,128,48,64,96,192,96,192,64,0,192,0,207, + 0,209,192,224,192,224,224,224,96,224,96,224,96,96,224,96, + 192,49,128,15,0,10,18,36,15,3,0,255,192,255,192,128, + 64,128,64,128,128,0,128,1,0,1,0,2,0,6,0,6, + 0,12,0,12,0,30,0,30,0,30,0,30,0,14,0,12, + 18,36,15,2,0,31,128,48,224,96,96,192,48,192,48,224, + 48,240,32,124,64,63,128,55,224,96,240,192,112,192,48,192, + 48,192,48,96,96,112,192,31,128,11,18,36,15,2,0,30, + 0,49,128,96,192,224,192,192,64,192,96,192,96,192,224,96, + 224,113,96,30,96,0,96,0,64,96,192,96,192,64,128,65, + 0,62,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--26-260-72-72-P-138-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 18, '1' Height: 18 + Calculated Max Values w=26 h=24 x= 3 y=13 dx=28 dy= 0 ascent=20 len=72 + Font Bounding box w=68 h=33 x=-21 y=-8 + Calculated Min Values x=-1 y=-6 dx= 0 dy= 0 + Pure Font ascent =18 descent=-6 + X Font ascent =19 descent=-6 + Max Font ascent =20 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr18r[3683] U8G_SECTION(".progmem.u8g_font_osr18r") = { + 0,68,33,235,248,18,4,197,10,125,32,127,250,20,250,19, + 250,0,0,0,7,0,0,3,18,18,7,2,0,224,224,224, + 224,224,224,64,64,64,64,64,64,64,64,0,224,224,224,6, + 5,5,10,2,13,204,204,204,204,72,14,18,36,18,2,0, + 4,32,4,32,4,32,4,32,4,32,255,252,8,64,8,64, + 8,64,8,64,8,64,24,64,255,252,16,128,16,128,16,128, + 16,128,16,128,11,22,44,15,2,254,9,0,9,0,31,128, + 41,64,73,32,73,32,73,96,73,96,105,0,61,0,31,128, + 15,192,9,192,9,96,233,32,233,32,201,32,201,64,105,64, + 31,128,9,0,9,0,18,18,54,22,2,0,56,2,0,68, + 4,0,198,8,0,198,8,0,198,16,0,198,32,0,198,32, + 0,68,64,0,56,64,0,0,134,0,1,25,128,1,48,128, + 2,48,192,4,48,192,4,48,192,8,48,192,8,24,128,16, + 15,0,18,18,54,20,1,0,7,128,0,8,64,0,24,64, + 0,24,64,0,24,192,0,28,128,0,15,0,0,6,31,192, + 15,6,0,23,6,0,35,132,0,97,196,0,192,232,0,192, + 240,0,192,112,0,224,120,128,96,220,128,63,15,0,2,5, + 5,7,2,13,192,192,192,192,64,6,23,23,10,3,252,8, + 16,48,32,64,64,192,128,128,128,128,128,128,128,128,192,64, + 64,96,32,16,24,12,6,23,23,9,1,252,64,32,48,16, + 24,8,8,12,4,4,4,4,4,4,12,8,8,8,16,16, + 32,64,192,10,10,20,14,2,8,12,0,12,0,204,192,201, + 192,42,0,30,0,235,192,201,192,12,0,12,0,22,22,66, + 24,1,252,0,16,0,0,16,0,0,16,0,0,16,0,0, + 16,0,0,16,0,0,16,0,0,16,0,0,16,0,0,16, + 0,255,255,252,0,16,0,0,16,0,0,16,0,0,16,0, + 0,16,0,0,16,0,0,16,0,0,16,0,0,16,0,0, + 16,0,0,16,0,3,8,8,7,2,252,192,224,224,32,32, + 64,64,128,7,1,1,11,2,6,254,3,3,3,7,2,0, + 224,224,224,8,24,24,12,2,250,1,1,2,2,2,4,4, + 4,12,8,8,24,16,16,16,32,32,32,64,64,64,128,128, + 128,12,18,36,15,1,0,15,0,16,192,32,64,96,96,96, + 32,192,48,192,48,192,48,192,48,192,48,192,48,192,48,192, + 48,96,32,96,96,32,64,16,192,15,0,9,18,36,15,3, + 0,8,0,8,0,24,0,248,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,255,128,10,18,36,15,2,0,30,0,99,128,129, + 192,128,192,128,192,224,192,240,192,32,192,1,128,3,0,6, + 0,8,0,16,0,32,0,64,64,192,64,255,192,255,192,11, + 18,36,15,2,0,63,0,97,128,192,192,224,192,240,192,0, + 192,0,192,1,128,62,0,1,128,0,192,0,96,96,96,240, + 96,240,96,192,192,65,128,63,0,12,18,36,15,2,0,1, + 0,3,0,3,0,7,0,15,0,11,0,19,0,51,0,35, + 0,67,0,195,0,131,0,255,224,3,0,3,0,3,0,3, + 0,31,240,11,18,36,15,2,0,96,192,127,128,126,0,64, + 0,64,0,64,0,95,0,97,128,64,192,64,224,0,96,0, + 96,96,96,240,96,224,192,192,192,65,128,62,0,11,18,36, + 15,2,0,15,0,24,128,48,64,96,192,96,192,64,0,192, + 0,207,0,209,192,224,192,224,224,224,96,224,96,224,96,96, + 224,96,192,49,128,15,0,10,18,36,15,3,0,255,192,255, + 192,128,64,128,64,128,128,0,128,1,0,1,0,2,0,6, + 0,6,0,12,0,12,0,30,0,30,0,30,0,30,0,14, + 0,12,18,36,15,2,0,31,128,48,224,96,96,192,48,192, + 48,224,48,240,32,124,64,63,128,55,224,96,240,192,112,192, + 48,192,48,192,48,96,96,112,192,31,128,11,18,36,15,2, + 0,30,0,49,128,96,192,224,192,192,64,192,96,192,96,192, + 224,96,224,113,96,30,96,0,96,0,64,96,192,96,192,64, + 128,65,0,62,0,3,12,12,7,2,0,224,224,224,0,0, + 0,0,0,0,224,224,224,4,16,16,8,2,252,96,240,240, + 0,0,0,0,0,96,240,240,16,16,32,32,64,20,21,63, + 24,2,253,0,0,48,0,0,192,0,3,0,0,12,0,0, + 48,0,0,224,0,3,128,0,14,0,0,24,0,0,96,0, + 0,192,0,0,48,0,0,12,0,0,7,0,0,1,192,0, + 0,112,0,0,24,0,0,6,0,0,1,128,0,0,96,0, + 0,16,22,6,18,24,1,4,255,255,252,0,0,0,0,0, + 0,0,0,0,0,0,0,255,255,252,20,21,63,24,2,253, + 192,0,0,48,0,0,12,0,0,3,0,0,0,192,0,0, + 112,0,0,28,0,0,7,0,0,1,128,0,0,96,0,0, + 48,0,0,192,0,3,0,0,14,0,0,56,0,0,224,0, + 1,128,0,6,0,0,24,0,0,96,0,0,128,0,0,9, + 18,36,12,2,0,62,0,67,0,129,128,129,128,225,128,97, + 128,3,0,6,0,12,0,16,0,48,0,34,0,34,0,28, + 0,0,0,28,0,28,0,28,0,18,18,54,20,1,0,3, + 248,0,12,6,0,16,109,0,33,156,128,67,12,128,70,8, + 64,142,8,64,142,24,64,140,24,64,140,16,64,140,48,128, + 140,48,128,140,241,0,71,30,0,96,0,0,32,0,0,24, + 12,0,7,240,0,18,18,54,20,2,0,0,128,0,0,192, + 0,1,192,0,1,192,0,1,224,0,3,224,0,2,96,0, + 2,112,0,6,112,0,4,48,0,4,56,0,12,56,0,15, + 248,0,24,28,0,16,12,0,16,12,0,48,14,0,254,63, + 192,15,18,36,17,1,0,255,240,24,28,24,12,24,6,24, + 6,24,6,24,12,24,24,31,224,24,24,24,12,24,6,24, + 6,24,6,24,6,24,12,24,28,255,240,14,18,36,18,2, + 0,7,132,24,108,32,60,96,28,96,12,192,12,192,4,192, + 0,192,0,192,0,192,0,192,4,96,4,96,4,32,8,48, + 24,24,48,7,192,17,18,54,20,1,0,255,240,0,24,12, + 0,24,6,0,24,3,0,24,3,0,24,1,128,24,1,128, + 24,1,128,24,1,128,24,1,128,24,1,128,24,1,128,24, + 1,128,24,3,0,24,3,0,24,6,0,24,12,0,255,240, + 0,15,18,36,18,1,0,255,254,24,6,24,2,24,2,24, + 2,24,34,24,32,24,96,31,224,24,96,24,32,24,32,24, + 34,24,2,24,2,24,6,24,14,255,254,15,18,36,17,1, + 0,255,254,24,6,24,2,24,2,24,2,24,34,24,32,24, + 96,31,224,24,96,24,32,24,32,24,32,24,0,24,0,24, + 0,24,0,127,0,17,18,54,19,2,0,7,196,0,24,100, + 0,48,28,0,96,28,0,96,12,0,96,4,0,192,4,0, + 192,0,0,192,127,128,192,28,0,192,28,0,192,28,0,192, + 28,0,96,28,0,96,28,0,48,52,0,24,100,0,7,132, + 0,18,18,54,20,1,0,255,63,192,24,6,0,24,6,0, + 24,6,0,24,6,0,24,6,0,24,6,0,24,6,0,31, + 254,0,24,6,0,24,6,0,24,6,0,24,6,0,24,6, + 0,24,6,0,24,6,0,24,6,0,255,63,192,8,18,18, + 10,1,0,255,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,255,12,18,36,14,1,0,7,240,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,97,128,241,128,225,128,193,128,67,0,62,0,17, + 18,54,19,1,0,255,63,128,24,14,0,24,8,0,24,16, + 0,24,32,0,24,64,0,24,128,0,25,192,0,26,192,0, + 28,224,0,24,96,0,24,112,0,24,56,0,24,56,0,24, + 28,0,24,28,0,24,14,0,255,127,128,15,18,36,17,1, + 0,255,0,24,0,24,0,24,0,24,0,24,0,24,0,24, + 0,24,0,24,0,24,0,24,2,24,2,24,2,24,6,24, + 6,24,14,255,254,20,18,54,22,1,0,252,3,240,28,3, + 128,30,5,128,22,5,128,22,5,128,23,5,128,19,9,128, + 19,9,128,19,137,128,19,145,128,17,145,128,17,209,128,17, + 209,128,16,225,128,16,225,128,16,225,128,16,65,128,254,79, + 240,18,18,54,19,1,0,252,15,192,28,2,0,30,2,0, + 22,2,0,23,2,0,19,130,0,17,130,0,17,194,0,16, + 226,0,16,226,0,16,114,0,16,50,0,16,58,0,16,30, + 0,16,14,0,16,14,0,16,6,0,254,2,0,15,18,36, + 18,2,0,7,192,24,48,48,24,32,8,96,12,96,12,192, + 6,192,6,192,6,192,6,192,6,192,6,96,12,96,12,32, + 8,48,24,24,48,7,192,15,18,36,17,1,0,255,240,24, + 28,24,12,24,6,24,6,24,6,24,12,24,24,31,240,24, + 0,24,0,24,0,24,0,24,0,24,0,24,0,24,0,255, + 0,15,22,44,18,2,252,7,192,24,48,48,24,32,8,96, + 12,96,12,192,6,192,6,192,6,192,6,192,6,192,6,96, + 12,99,140,36,76,52,120,28,114,7,226,0,98,0,118,0, + 60,0,24,17,18,54,19,1,0,255,240,0,24,24,0,24, + 12,0,24,12,0,24,12,0,24,12,0,24,24,0,31,224, + 0,24,48,0,24,56,0,24,24,0,24,24,0,24,24,0, + 24,28,128,24,28,128,24,28,128,24,31,0,255,15,0,13, + 18,36,16,2,0,30,32,97,160,192,96,192,96,192,32,192, + 32,224,0,124,0,63,128,15,224,129,240,128,112,128,24,192, + 24,192,24,224,16,152,32,135,192,15,18,36,18,2,0,255, + 254,195,14,131,6,131,2,3,2,3,2,3,2,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,31,240,19,18,54,21,1,0,255,15,224,24,1,0,24, + 1,0,24,1,0,24,1,0,24,1,0,24,1,0,24,1, + 0,24,1,0,24,1,0,24,1,0,24,1,0,24,1,0, + 24,1,0,12,1,0,12,2,0,6,4,0,1,248,0,18, + 18,54,20,1,0,255,31,192,28,3,0,28,2,0,12,2, + 0,14,6,0,6,4,0,7,4,0,7,8,0,3,8,0, + 3,136,0,3,144,0,1,144,0,1,208,0,0,224,0,0, + 224,0,0,224,0,0,64,0,0,64,0,26,18,72,28,1, + 0,255,63,159,192,28,14,3,0,12,6,2,0,12,14,2, + 0,14,15,6,0,14,15,4,0,6,19,4,0,7,19,140, + 0,7,19,136,0,3,49,136,0,3,161,216,0,3,161,208, + 0,1,160,208,0,1,192,240,0,1,192,224,0,0,192,96, + 0,0,128,96,0,0,128,64,0,18,18,54,20,1,0,127, + 191,128,14,12,0,14,12,0,7,8,0,7,16,0,3,176, + 0,1,160,0,1,192,0,0,192,0,0,224,0,1,96,0, + 3,112,0,2,56,0,4,56,0,12,28,0,8,12,0,24, + 14,0,254,63,192,17,18,54,19,1,0,255,31,128,28,6, + 0,28,4,0,14,4,0,6,8,0,7,8,0,3,144,0, + 3,160,0,1,224,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,0,192,0,0,192,0,0,192,0,7,252, + 0,14,18,36,17,2,0,127,252,112,56,96,48,64,112,64, + 224,128,192,1,192,3,128,3,0,7,0,14,0,12,4,28, + 4,56,4,48,12,112,28,224,56,255,248,5,23,23,10,3, + 251,248,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,248,8,24,24,12,2,250,128,128, + 128,64,64,64,32,32,32,16,16,16,16,8,8,8,4,4, + 4,2,2,2,1,1,5,23,23,10,2,251,248,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,248,11,9,18,15,2,9,4,0,14,0,10,0,17, + 0,49,128,32,128,64,64,64,96,128,32,14,1,2,14,0, + 252,255,252,4,4,4,11,2,13,192,224,96,16,11,12,24, + 13,1,0,30,0,99,0,65,128,97,128,33,128,15,128,113, + 128,193,128,195,160,195,160,197,160,121,192,11,18,36,13,0, + 0,240,0,48,0,48,0,48,0,48,0,48,0,51,128,52, + 192,56,96,56,96,48,96,48,96,48,96,48,96,48,96,56, + 96,40,192,39,128,9,12,24,11,1,0,30,0,33,0,96, + 128,193,128,193,128,192,0,192,0,192,0,192,128,96,128,33, + 0,30,0,12,18,36,14,1,0,7,192,0,192,0,192,0, + 192,0,192,0,192,28,192,98,192,97,192,193,192,192,192,192, + 192,192,192,192,192,192,192,97,192,97,192,30,240,9,12,24, + 12,1,0,30,0,35,0,97,128,193,128,193,128,255,128,192, + 0,192,0,192,128,96,128,33,0,30,0,9,18,36,9,1, + 0,15,0,24,128,49,128,49,0,48,0,48,0,254,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,48,0,48, + 0,48,0,254,0,12,18,36,15,2,250,30,112,97,176,225, + 240,192,192,192,192,192,192,225,128,97,128,30,0,224,0,255, + 0,127,192,64,96,128,32,128,32,128,32,192,64,63,128,13, + 18,36,15,1,0,240,0,48,0,48,0,48,0,48,0,48, + 0,51,192,52,192,56,96,56,96,48,96,48,96,48,96,48, + 96,48,96,48,96,48,96,253,248,6,18,18,8,1,0,112, + 112,32,0,0,0,240,48,48,48,48,48,48,48,48,48,48, + 252,7,24,24,8,255,250,6,6,0,0,0,0,62,6,6, + 6,6,6,6,6,6,6,6,6,6,6,198,198,140,120,12, + 18,36,14,1,0,240,0,48,0,48,0,48,0,48,0,48, + 0,49,240,48,128,49,0,50,0,50,0,54,0,59,0,51, + 0,49,128,49,192,48,224,253,240,6,18,18,8,1,0,240, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 252,19,12,36,21,1,0,243,199,0,52,249,128,56,113,192, + 56,97,192,48,97,192,48,97,192,48,97,192,48,97,192,48, + 97,192,48,97,192,48,97,192,253,251,224,13,12,24,15,1, + 0,243,192,52,192,56,96,56,96,48,96,48,96,48,96,48, + 96,48,96,48,96,48,96,253,248,10,12,24,13,1,0,30, + 0,33,128,97,128,192,192,192,192,192,192,192,192,192,192,192, + 192,97,128,33,128,30,0,11,18,36,14,1,250,243,128,52, + 192,56,96,56,96,48,96,48,96,48,96,48,96,48,96,56, + 96,56,192,55,128,48,0,48,0,48,0,48,0,48,0,252, + 0,12,18,36,13,1,250,28,64,98,64,97,192,192,192,192, + 192,192,192,192,192,192,192,192,192,97,192,97,192,30,192,0, + 192,0,192,0,192,0,192,0,192,3,240,9,12,24,11,1, + 0,243,128,52,128,57,128,56,128,56,0,48,0,48,0,48, + 0,48,0,48,0,48,0,252,0,9,12,24,11,1,0,125, + 0,131,0,129,0,193,0,240,0,124,0,31,0,131,128,128, + 128,192,128,224,128,159,0,8,17,17,10,1,0,16,16,16, + 48,48,254,48,48,48,48,48,48,48,49,49,51,30,13,12, + 24,14,0,0,241,224,48,96,48,96,48,96,48,96,48,96, + 48,96,48,96,48,224,48,224,57,96,30,120,13,12,24,14, + 1,0,252,248,48,96,48,64,24,64,24,128,12,128,12,128, + 13,0,7,0,7,0,2,0,2,0,19,12,36,21,1,0, + 253,251,224,48,96,128,48,96,128,24,113,0,24,177,0,12, + 177,0,12,154,0,13,26,0,7,28,0,7,12,0,2,12, + 0,2,8,0,12,12,24,14,1,0,249,224,48,128,57,0, + 25,0,14,0,14,0,6,0,11,0,19,0,17,128,33,192, + 243,240,13,18,36,14,0,250,252,248,56,32,24,32,24,64, + 12,64,12,64,12,128,6,128,6,128,7,0,3,0,3,0, + 2,0,2,0,34,0,98,0,100,0,56,0,9,12,24,12, + 1,0,255,128,195,128,131,0,134,0,142,0,12,0,24,0, + 56,0,48,128,96,128,96,128,255,128,6,23,23,12,3,251, + 12,16,48,48,48,48,56,24,24,24,16,224,48,16,24,24, + 56,48,48,48,48,16,12,1,24,24,7,3,250,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,6,23,23,11,3,251,192,32,48,48,48, + 112,96,96,96,96,32,28,48,96,96,96,96,112,48,48,48, + 32,192,15,5,10,17,1,4,32,4,254,2,143,194,129,254, + 64,124,255}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--29-290-72-72-P-154-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 21, '1' Height: 21 + Calculated Max Values w=29 h=28 x= 6 y=17 dx=32 dy= 0 ascent=28 len=88 + Font Bounding box w=76 h=38 x=-24 y=-9 + Calculated Min Values x=-1 y=-8 dx= 0 dy= 0 + Pure Font ascent =21 descent=-7 + X Font ascent =22 descent=-7 + Max Font ascent =28 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr21[9530] U8G_SECTION(".progmem.u8g_font_osr21") = { + 0,76,38,232,247,21,5,131,12,189,32,255,249,28,248,22, + 249,0,0,0,8,0,0,4,21,21,8,2,0,96,240,240, + 240,240,240,96,96,96,96,96,96,96,96,96,64,0,96,240, + 240,96,7,5,5,11,2,17,238,204,204,204,68,15,21,42, + 19,2,0,2,16,6,16,6,16,4,16,4,48,4,48,255, + 254,4,32,12,32,12,32,8,32,8,96,8,96,8,64,255, + 254,24,64,24,64,16,192,16,192,16,128,16,128,13,25,50, + 17,2,254,5,0,5,0,15,128,53,96,37,16,69,24,69, + 24,69,56,69,56,117,48,61,0,63,0,15,192,7,224,5, + 240,5,48,101,24,229,24,229,24,197,24,69,48,69,32,61, + 192,7,0,5,0,19,21,63,25,3,0,60,1,0,70,2, + 0,66,2,0,195,4,0,195,8,0,195,8,0,195,16,0, + 195,16,0,66,32,0,102,32,0,56,64,0,0,67,0,0, + 140,192,1,8,64,1,24,96,2,24,96,2,24,96,4,24, + 96,4,24,96,8,8,64,8,7,128,20,21,63,23,2,0, + 3,128,0,12,64,0,8,32,0,24,32,0,24,32,0,24, + 96,0,28,64,0,12,128,0,15,0,0,7,15,240,15,1, + 128,27,129,0,51,193,0,97,194,0,96,226,0,224,244,0, + 224,124,0,224,56,0,224,60,0,96,60,32,59,198,192,3, + 5,5,7,2,17,224,192,192,192,64,6,28,28,10,3,250, + 4,12,24,16,32,32,64,64,64,128,128,128,128,128,128,128, + 128,128,128,192,64,64,32,32,16,24,8,4,6,28,28,11, + 2,250,128,192,64,32,48,16,24,8,8,8,4,4,4,4, + 4,4,4,4,12,8,8,24,16,48,32,96,192,128,10,12, + 24,14,2,9,12,0,14,0,204,64,228,192,53,0,14,0, + 63,0,229,192,196,192,12,0,14,0,12,0,24,25,75,26, + 1,252,0,8,0,0,8,0,0,8,0,0,8,0,0,8, + 0,0,8,0,0,8,0,0,8,0,0,8,0,0,8,0, + 0,8,0,0,8,0,255,255,255,0,8,0,0,8,0,0, + 8,0,0,8,0,0,8,0,0,8,0,0,8,0,0,8, + 0,0,8,0,0,8,0,0,8,0,0,8,0,4,8,8, + 8,2,251,224,240,240,16,16,16,32,64,7,2,2,11,2, + 7,254,254,4,4,4,8,2,0,96,240,240,96,9,28,56, + 13,2,250,0,128,0,128,1,128,1,0,1,0,1,0,2, + 0,2,0,2,0,6,0,4,0,4,0,12,0,8,0,8, + 0,24,0,16,0,16,0,16,0,32,0,32,0,32,0,64, + 0,64,0,64,0,192,0,128,0,128,0,14,21,42,17,1, + 0,7,128,24,64,48,32,32,48,96,16,96,24,96,24,224, + 24,224,24,224,24,224,28,224,28,224,24,224,24,224,24,96, + 24,96,24,96,48,48,32,16,96,15,192,10,21,42,17,3, + 0,2,0,6,0,6,0,14,0,254,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,255,192,12,21,42,17,2, + 0,31,0,32,192,64,96,128,112,128,112,192,112,240,112,112, + 112,32,96,0,224,0,192,1,0,6,0,12,0,24,0,48, + 16,96,16,64,16,224,112,255,240,255,240,12,21,42,17,2, + 0,31,0,97,192,192,224,224,96,240,96,112,112,0,96,0, + 96,0,224,48,192,63,0,0,192,0,96,0,112,0,112,96, + 112,240,112,240,112,192,96,192,192,127,128,14,21,42,17,2, + 0,0,64,0,192,1,192,1,192,3,192,7,192,5,192,13, + 192,9,192,17,192,49,192,33,192,65,192,193,192,255,252,1, + 192,1,192,1,192,1,192,1,192,15,252,12,21,42,17,2, + 0,96,64,127,128,127,0,64,0,64,0,64,0,64,0,79, + 0,112,192,64,96,64,96,0,112,0,112,0,112,96,112,240, + 112,240,112,224,96,192,224,64,192,63,128,12,21,42,17,2, + 0,7,128,24,64,16,96,48,224,96,224,96,192,96,0,224, + 0,231,128,232,192,240,96,240,96,224,112,224,112,224,112,224, + 112,96,112,96,96,112,96,48,192,31,128,11,21,42,17,3, + 0,255,224,255,224,192,32,128,32,128,64,128,64,0,64,0, + 128,1,0,1,0,2,0,6,0,6,0,12,0,12,0,12, + 0,30,0,30,0,30,0,30,0,30,0,14,21,42,17,2, + 0,15,128,48,96,96,48,224,24,224,24,224,24,224,24,240, + 16,124,32,63,192,15,224,51,240,96,248,224,56,224,28,224, + 28,224,24,224,24,96,24,112,48,31,192,12,21,42,17,2, + 0,15,0,48,128,96,64,96,96,224,96,224,96,224,112,224, + 112,224,112,96,112,96,240,49,176,14,48,0,48,0,32,48, + 96,112,96,112,64,96,192,96,128,63,0,4,14,14,8,2, + 0,96,240,240,96,0,0,0,0,0,0,96,240,240,96,4, + 18,18,8,2,251,96,240,240,96,0,0,0,0,0,0,224, + 240,240,16,16,16,32,64,22,24,72,27,2,251,0,0,12, + 0,0,56,0,0,96,0,1,128,0,7,0,0,28,0,0, + 112,0,0,192,0,3,0,0,14,0,0,56,0,0,224,0, + 0,224,0,0,48,0,0,12,0,0,7,0,0,1,192,0, + 0,112,0,0,24,0,0,6,0,0,3,128,0,0,224,0, + 0,56,0,0,12,24,7,21,26,1,5,255,255,255,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255, + 22,24,72,27,3,251,192,0,0,112,0,0,24,0,0,6, + 0,0,3,128,0,0,224,0,0,56,0,0,12,0,0,3, + 0,0,0,192,0,0,112,0,0,28,0,0,28,0,0,48, + 0,0,192,0,3,128,0,14,0,0,56,0,0,96,0,1, + 128,0,7,0,0,28,0,0,112,0,0,192,0,0,11,21, + 42,14,2,0,30,0,97,128,128,192,128,192,240,224,240,192, + 97,192,1,128,3,128,6,0,12,0,8,0,17,0,17,0, + 17,0,14,0,0,0,12,0,30,0,30,0,12,0,21,21, + 63,25,2,1,3,255,0,12,0,128,24,0,64,48,0,32, + 32,59,144,64,199,16,65,135,8,131,7,8,135,6,8,134, + 6,8,142,14,8,142,14,8,142,12,16,142,28,16,142,28, + 32,70,44,64,67,199,128,32,0,0,16,0,0,8,1,128, + 7,222,0,20,21,63,22,1,0,0,32,0,0,96,0,0, + 96,0,0,112,0,0,240,0,0,240,0,0,184,0,1,56, + 0,1,56,0,3,28,0,3,28,0,2,28,0,6,14,0, + 6,14,0,7,254,0,12,7,0,12,7,0,8,7,0,24, + 3,128,24,3,128,255,31,240,16,21,42,20,2,0,255,240, + 28,12,28,6,28,7,28,7,28,7,28,7,28,6,28,12, + 31,240,28,28,28,6,28,6,28,7,28,7,28,7,28,7, + 28,7,28,6,28,12,255,240,15,21,42,19,2,1,15,226, + 16,54,48,30,32,14,96,6,96,6,224,6,224,2,224,0, + 224,0,224,0,224,0,224,0,224,2,96,2,96,2,96,4, + 32,4,48,12,24,8,7,240,19,21,63,22,2,0,255,248, + 0,28,6,0,28,3,0,28,1,128,28,1,128,28,1,192, + 28,0,192,28,0,192,28,0,192,28,0,224,28,0,224,28, + 0,224,28,0,192,28,0,192,28,0,192,28,1,192,28,1, + 128,28,1,0,28,3,0,28,6,0,255,248,0,17,21,63, + 20,2,0,255,255,128,28,3,128,28,3,128,28,1,128,28, + 1,128,28,0,128,28,32,128,28,32,0,28,32,0,28,96, + 0,31,224,0,28,96,0,28,32,0,28,32,128,28,32,128, + 28,0,128,28,1,128,28,1,128,28,3,128,28,7,128,255, + 255,128,17,21,63,20,2,0,255,255,128,28,3,128,28,3, + 128,28,1,128,28,1,128,28,0,128,28,32,128,28,32,0, + 28,32,0,28,96,0,31,224,0,28,96,0,28,32,0,28, + 32,0,28,32,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,255,128,0,18,21,63,21,2,1,15,226,0, + 24,26,0,48,14,0,32,14,0,96,6,0,96,6,0,224, + 2,0,224,2,0,224,0,0,224,0,0,224,127,192,224,14, + 0,224,14,0,224,14,0,224,14,0,96,14,0,96,14,0, + 32,14,0,48,26,0,16,50,0,15,226,0,20,21,63,23, + 2,0,255,15,240,28,3,128,28,3,128,28,3,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,3,128,31,255,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,3,128,255,15, + 240,8,21,21,12,2,0,255,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,255,13,21,42,15, + 1,0,7,248,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 112,224,240,192,240,192,192,192,65,128,127,0,19,21,63,22, + 2,0,255,31,224,28,7,0,28,6,0,28,12,0,28,8, + 0,28,16,0,28,32,0,28,64,0,28,192,0,29,224,0, + 30,224,0,28,112,0,28,112,0,28,56,0,28,28,0,28, + 28,0,28,14,0,28,14,0,28,7,0,28,7,0,255,63, + 224,16,21,42,20,2,0,255,128,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,1,28,1,28,1,28,1,28,3,28,3,28,15,255, + 255,21,21,63,25,2,0,252,1,248,30,1,224,30,1,224, + 30,2,224,22,2,224,23,2,224,23,2,224,19,4,224,19, + 132,224,19,132,224,17,132,224,17,200,224,17,200,224,16,200, + 224,16,208,224,16,240,224,16,240,224,16,112,224,16,96,224, + 16,96,224,254,39,248,20,21,63,23,2,0,252,7,240,28, + 0,128,30,0,128,31,0,128,23,0,128,19,128,128,19,192, + 128,17,192,128,16,224,128,16,240,128,16,112,128,16,56,128, + 16,56,128,16,28,128,16,30,128,16,14,128,16,7,128,16, + 7,128,16,3,128,16,1,128,254,1,128,17,22,66,20,2, + 0,0,128,0,7,112,0,24,8,0,16,12,0,48,6,0, + 96,6,0,96,3,0,96,3,0,224,3,0,224,3,0,224, + 3,0,224,3,128,224,3,128,224,3,0,224,3,0,96,3, + 0,96,3,0,96,6,0,48,6,0,16,12,0,24,8,0, + 7,240,0,17,21,63,20,2,0,255,248,0,28,14,0,28, + 7,0,28,3,0,28,3,0,28,3,128,28,3,0,28,3, + 0,28,6,0,28,12,0,31,240,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,255,128,0,17,27,81,20,2,251,0,128, + 0,7,112,0,24,8,0,16,12,0,48,6,0,96,6,0, + 96,3,0,96,3,0,224,3,0,224,3,0,224,3,0,224, + 3,128,224,3,128,224,3,0,224,3,0,96,3,0,96,3, + 0,97,198,0,51,38,0,26,60,0,14,60,0,7,48,128, + 0,241,0,0,49,0,0,57,0,0,31,0,0,14,0,18, + 21,63,21,2,0,255,248,0,28,14,0,28,6,0,28,7, + 0,28,7,0,28,7,0,28,7,0,28,6,0,28,12,0, + 31,240,0,28,24,0,28,24,0,28,12,0,28,12,0,28, + 12,0,28,14,0,28,14,64,28,14,64,28,14,64,28,7, + 128,255,131,128,14,21,42,18,3,1,63,144,96,208,192,112, + 192,48,192,16,192,16,224,16,240,16,124,0,63,128,31,224, + 7,240,128,248,128,56,128,28,128,12,192,12,224,12,224,8, + 144,16,142,224,17,21,63,21,2,0,255,255,128,225,195,128, + 193,193,128,193,193,128,193,192,128,129,192,128,129,192,128,129, + 192,128,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,15,248,0,20,21,63,23,2,0,255, + 7,240,28,0,128,28,0,128,28,0,128,28,0,128,28,0, + 128,28,0,128,28,0,128,28,0,128,28,0,128,28,0,128, + 28,0,128,28,0,128,28,0,128,28,0,128,28,0,128,28, + 0,128,12,0,128,12,1,0,6,2,0,3,252,0,20,22, + 66,23,2,255,255,143,240,28,1,192,28,1,128,14,1,128, + 14,1,0,14,1,0,7,3,0,7,2,0,7,2,0,3, + 134,0,3,132,0,3,132,0,1,196,0,1,200,0,1,200, + 0,0,232,0,0,240,0,0,112,0,0,112,0,0,112,0, + 0,32,0,0,32,0,29,22,88,32,2,255,255,63,231,248, + 28,7,0,192,28,7,0,128,28,7,0,128,12,7,128,128, + 14,15,129,128,14,11,129,0,6,9,129,0,7,9,195,0, + 7,25,194,0,7,17,194,0,3,16,230,0,3,144,228,0, + 3,176,228,0,1,160,108,0,1,224,120,0,1,224,120,0, + 1,192,120,0,0,192,48,0,0,192,48,0,0,192,48,0, + 0,128,16,0,19,21,63,22,2,0,255,159,224,14,7,0, + 14,6,0,7,4,0,7,12,0,3,136,0,3,208,0,1, + 208,0,1,224,0,0,224,0,0,112,0,0,240,0,1,184, + 0,1,56,0,2,28,0,6,28,0,4,14,0,8,14,0, + 24,7,0,24,7,0,255,31,224,19,21,63,21,1,0,255, + 143,224,30,3,128,14,3,0,14,2,0,7,2,0,7,4, + 0,3,132,0,1,200,0,1,200,0,0,240,0,0,240,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,0,112,0,0,112,0,0,112,0,7,254,0,15,21, + 42,19,2,0,63,254,56,14,112,28,96,56,64,56,64,112, + 64,240,0,224,1,192,1,192,3,128,7,128,7,0,14,2, + 14,2,28,2,60,2,56,6,112,6,240,14,255,254,6,27, + 27,11,3,250,252,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,252,9, + 28,56,13,2,250,128,0,128,0,192,0,64,0,64,0,64, + 0,32,0,32,0,32,0,16,0,16,0,16,0,24,0,8, + 0,8,0,12,0,4,0,4,0,4,0,2,0,2,0,2, + 0,1,0,1,0,1,0,1,128,0,128,0,128,6,27,27, + 11,2,250,252,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,252,13,11, + 22,17,2,10,2,0,2,0,5,0,13,128,8,128,24,192, + 16,64,32,32,96,48,64,16,192,24,15,1,2,15,0,251, + 255,254,5,5,5,13,2,16,192,224,96,48,8,13,14,28, + 15,1,0,31,0,33,128,97,192,113,192,113,192,1,192,15, + 192,49,192,97,192,225,192,225,200,225,200,226,216,60,240,13, + 21,42,15,1,0,248,0,56,0,56,0,56,0,56,0,56, + 0,56,0,59,192,60,96,56,48,56,48,56,48,56,48,56, + 56,56,56,56,48,56,48,56,48,56,32,44,96,35,192,10, + 14,28,12,1,0,31,0,48,128,96,64,96,192,225,192,224, + 128,224,0,224,0,224,0,224,0,96,64,96,128,48,128,31, + 0,13,21,42,15,1,0,3,224,0,224,0,224,0,224,0, + 224,0,224,0,224,30,224,49,224,97,224,96,224,224,224,224, + 224,224,224,224,224,224,224,224,224,96,224,96,224,49,224,30, + 248,10,14,28,13,1,0,30,0,49,128,97,128,96,192,224, + 192,224,192,255,192,224,0,224,0,224,64,96,64,96,64,48, + 128,31,0,10,21,42,10,1,0,15,0,24,128,57,192,57, + 128,56,0,56,0,56,0,254,0,56,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,254,0,14,21,42,16,2,249,31,56,113,200,96,220,224, + 248,224,224,224,224,224,224,96,192,49,128,31,0,96,0,128, + 0,224,0,127,224,56,112,64,16,128,16,128,16,128,48,64, + 96,63,128,14,21,42,16,1,0,248,0,56,0,56,0,56, + 0,56,0,56,0,56,0,57,192,62,96,60,112,56,112,56, + 112,56,112,56,112,56,112,56,112,56,112,56,112,56,112,56, + 112,252,252,6,21,21,7,1,0,112,112,112,0,0,0,0, + 240,112,112,112,112,112,112,112,112,112,112,112,112,252,8,28, + 28,9,255,249,6,7,6,0,0,0,0,31,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,70,230,198,204,120, + 13,21,42,15,1,0,248,0,56,0,56,0,56,0,56,0, + 56,0,56,0,57,248,56,192,56,128,57,0,57,0,58,0, + 63,0,63,0,59,128,57,192,56,192,56,224,56,224,253,248, + 7,21,21,8,1,0,248,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,254,21,14,42,23,1, + 0,249,195,192,62,100,224,60,120,96,56,120,96,56,112,96, + 56,112,96,56,112,96,56,112,96,56,112,96,56,112,96,56, + 112,96,56,112,96,56,112,96,252,253,248,14,14,28,16,1, + 0,249,192,62,96,60,112,56,112,56,112,56,112,56,112,56, + 112,56,112,56,112,56,112,56,112,56,112,252,252,12,14,28, + 14,1,0,15,0,48,128,96,192,96,96,224,96,224,96,224, + 112,224,112,224,96,224,96,96,96,96,192,48,128,15,0,13, + 21,42,15,1,249,251,192,60,96,56,48,56,48,56,48,56, + 48,56,56,56,56,56,48,56,48,56,48,56,48,60,96,59, + 192,56,0,56,0,56,0,56,0,56,0,56,0,252,0,13, + 21,42,15,1,249,30,32,49,32,96,224,96,224,224,224,224, + 224,224,224,224,224,224,224,224,224,96,224,96,224,49,224,30, + 224,0,224,0,224,0,224,0,224,0,224,0,224,3,248,10, + 14,28,12,1,0,249,128,58,64,60,192,60,192,56,0,56, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,252, + 0,10,14,28,13,2,0,60,128,195,128,129,128,128,128,192, + 128,240,0,62,0,15,128,131,192,128,192,192,64,192,64,160, + 128,159,0,8,20,20,10,1,0,16,16,16,16,48,48,254, + 48,48,48,48,48,48,48,48,49,49,49,59,30,14,14,28, + 16,1,0,248,240,56,112,56,112,56,112,56,112,56,112,56, + 112,56,112,56,112,56,112,56,112,56,240,25,112,14,124,15, + 14,28,15,0,0,254,126,56,16,24,16,28,16,12,32,12, + 32,6,32,6,64,7,64,3,64,3,128,1,128,1,128,1, + 0,22,14,42,22,0,0,254,252,252,56,56,32,24,56,32, + 28,56,32,12,56,64,12,60,64,6,76,64,6,76,128,7, + 70,128,3,134,128,3,135,0,1,131,0,1,131,0,1,2, + 0,14,14,28,16,1,0,124,248,56,96,24,64,12,128,14, + 128,7,0,7,0,3,128,5,128,5,192,8,192,16,224,16, + 96,249,252,15,21,42,15,0,249,254,126,24,16,24,16,28, + 16,12,32,12,32,14,32,6,64,6,64,6,64,3,128,3, + 128,3,128,1,128,1,0,1,0,1,0,98,0,114,0,100, + 0,56,0,10,14,28,13,1,0,255,192,193,192,129,128,131, + 0,135,0,6,0,14,0,28,0,24,0,56,64,48,64,112, + 64,224,192,255,192,6,27,27,12,3,250,12,24,48,48,48, + 48,48,56,24,24,24,16,48,192,48,16,24,24,24,56,48, + 48,48,48,48,16,12,1,28,28,8,4,250,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,6,27,27,12,3,250,128,96, + 32,48,48,48,112,96,96,96,96,96,32,28,48,96,96,96, + 96,96,112,48,48,48,32,96,192,16,6,12,18,1,5,56, + 2,126,1,143,193,131,241,128,255,64,62,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,8, + 0,0,4,21,21,8,2,249,96,240,240,96,0,64,64,96, + 96,96,96,96,96,96,96,240,240,240,240,240,96,10,21,42, + 17,3,253,4,0,4,0,4,0,4,0,31,0,52,128,100, + 64,100,192,229,192,228,128,228,0,228,0,228,0,228,0,100, + 64,100,64,52,128,31,0,4,0,4,0,4,0,16,21,42, + 21,2,0,0,60,0,194,0,131,1,135,1,135,3,130,3, + 128,3,128,3,128,63,128,3,240,3,128,3,128,3,128,3, + 0,3,0,123,1,142,1,135,3,135,254,120,252,13,13,26, + 17,2,4,143,136,112,112,96,48,64,16,128,8,128,8,128, + 8,128,8,128,8,64,16,96,48,112,112,143,136,16,21,42, + 17,1,0,252,63,56,8,56,8,24,16,28,16,28,32,14, + 32,14,64,6,64,7,128,3,128,63,248,3,128,3,128,63, + 248,3,128,3,128,3,128,3,128,3,128,31,240,1,27,27, + 8,4,251,128,128,128,128,128,128,128,128,128,128,128,0,0, + 0,0,0,128,128,128,128,128,128,128,128,128,128,128,11,27, + 54,19,3,250,30,0,49,0,97,128,99,128,97,0,112,0, + 56,0,60,0,62,0,79,0,131,128,129,192,128,224,192,96, + 224,32,112,32,56,64,28,128,15,0,7,0,3,0,1,128, + 33,128,113,128,97,128,35,0,28,0,8,3,3,12,2,16, + 195,231,195,21,22,66,23,1,0,0,32,0,3,222,0,12, + 1,128,24,0,192,48,114,96,33,142,32,67,6,16,67,2, + 16,135,2,8,135,0,8,135,0,8,135,0,8,135,0,8, + 135,0,8,135,2,8,67,2,16,67,4,16,33,132,32,48, + 120,96,24,0,192,12,1,128,3,222,0,8,9,9,12,2, + 12,120,196,12,52,68,197,205,118,254,7,12,12,14,3,1, + 16,34,98,68,196,196,196,196,196,66,34,16,14,6,12,16, + 1,5,255,252,0,4,0,4,0,4,0,4,0,4,7,2, + 2,11,2,7,254,254,21,22,66,23,1,0,0,32,0,3, + 222,0,12,1,128,24,0,192,63,248,96,35,140,32,67,142, + 16,67,142,16,131,142,8,131,140,8,131,240,8,131,140,8, + 131,140,8,131,142,8,131,142,72,67,142,80,67,134,80,47, + 195,160,48,0,96,24,0,192,12,1,128,3,222,0,8,1, + 1,14,3,17,255,8,8,8,16,4,13,60,66,129,129,129, + 129,66,60,24,21,63,26,1,255,0,8,0,0,8,0,0, + 8,0,0,8,0,0,8,0,0,8,0,0,8,0,0,8, + 0,255,255,255,0,8,0,0,8,0,0,8,0,0,8,0, + 0,8,0,0,8,0,0,8,0,0,8,0,0,8,0,0, + 0,0,0,0,0,255,255,255,8,13,13,13,3,8,60,198, + 135,199,231,6,12,24,48,65,193,255,255,9,13,26,13,3, + 8,60,0,70,0,67,0,99,0,3,0,6,0,120,0,7, + 0,3,0,227,128,227,0,135,0,124,0,5,5,5,13,6, + 16,24,56,48,96,128,15,22,44,18,2,248,192,64,192,96, + 224,224,192,224,192,224,192,96,192,96,192,96,64,96,64,64, + 64,66,192,194,177,190,143,12,128,0,128,0,192,0,192,0, + 192,0,224,0,224,0,96,0,12,26,52,16,2,251,31,240, + 124,64,252,64,252,64,252,64,252,64,252,64,124,64,60,64, + 4,64,4,64,4,64,4,64,4,64,4,64,4,64,4,64, + 4,64,4,64,4,64,4,64,4,64,4,64,4,64,4,64, + 4,64,4,4,4,8,2,8,96,240,240,96,6,7,7,13, + 3,250,32,32,48,8,12,140,120,6,12,12,13,4,9,16, + 48,240,48,48,48,48,48,48,48,48,252,7,10,10,11,2, + 11,56,68,198,198,198,198,198,68,56,254,8,12,12,14,3, + 1,8,132,70,66,35,35,35,35,34,70,68,8,19,21,63, + 25,4,0,16,3,0,48,2,0,240,4,0,48,4,0,48, + 8,0,48,8,0,48,16,0,48,48,0,48,32,0,48,65, + 128,48,67,128,48,131,128,252,133,128,1,9,128,3,9,128, + 2,17,128,4,31,224,4,1,128,8,1,128,8,1,128,16, + 7,224,19,21,63,25,4,0,16,2,0,48,2,0,240,4, + 0,48,4,0,48,8,0,48,16,0,48,16,0,48,32,0, + 48,39,128,48,72,192,48,80,224,48,144,224,252,156,224,1, + 12,192,2,0,192,2,1,0,4,6,0,4,12,32,8,8, + 32,8,31,224,16,31,224,20,21,63,25,3,0,60,1,0, + 70,1,0,67,2,0,99,2,0,3,4,0,6,12,0,120, + 8,0,7,16,0,3,16,0,227,160,192,227,33,192,135,65, + 192,124,130,192,0,132,192,1,4,192,1,8,192,2,15,240, + 2,0,192,4,0,192,8,0,192,8,3,240,11,21,42,14, + 1,249,12,0,30,0,30,0,12,0,0,0,14,0,17,0, + 17,0,17,0,2,0,6,0,28,0,56,0,112,0,224,192, + 225,224,225,224,224,32,96,32,112,64,31,128,20,28,84,22, + 1,0,3,0,0,3,128,0,1,128,0,0,192,0,0,64, + 0,0,0,0,0,0,0,0,32,0,0,96,0,0,96,0, + 0,112,0,0,240,0,0,240,0,0,184,0,1,56,0,1, + 56,0,3,28,0,3,28,0,2,28,0,6,14,0,6,14, + 0,7,254,0,12,7,0,12,7,0,8,7,0,24,3,128, + 24,3,128,255,31,240,20,28,84,22,1,0,0,4,0,0, + 12,0,0,24,0,0,48,0,0,32,0,0,0,0,0,0, + 0,0,32,0,0,96,0,0,96,0,0,112,0,0,240,0, + 0,240,0,1,184,0,1,56,0,1,56,0,3,28,0,3, + 28,0,2,28,0,6,14,0,6,14,0,7,254,0,12,7, + 0,12,7,0,8,7,0,24,3,128,24,3,128,255,31,240, + 20,28,84,22,1,0,0,32,0,0,96,0,0,240,0,1, + 152,0,3,4,0,0,0,0,0,0,0,0,32,0,0,96, + 0,0,96,0,0,112,0,0,240,0,0,240,0,0,184,0, + 1,56,0,1,56,0,3,28,0,3,28,0,2,28,0,6, + 14,0,6,14,0,7,254,0,12,7,0,12,7,0,8,7, + 0,24,3,128,24,3,128,255,31,240,20,27,81,22,1,0, + 1,228,0,3,252,0,2,56,0,0,0,0,0,0,0,0, + 0,0,0,32,0,0,96,0,0,96,0,0,112,0,0,240, + 0,0,240,0,0,184,0,1,184,0,1,56,0,3,28,0, + 3,28,0,2,28,0,6,14,0,6,14,0,7,254,0,12, + 7,0,12,7,0,8,7,0,24,3,128,24,3,128,255,31, + 240,19,27,81,22,2,0,6,24,0,7,28,0,6,24,0, + 0,0,0,0,0,0,0,0,0,0,64,0,0,192,0,0, + 224,0,0,224,0,1,224,0,1,224,0,1,112,0,3,112, + 0,2,48,0,2,56,0,6,56,0,4,24,0,4,28,0, + 12,28,0,15,252,0,8,14,0,24,14,0,24,6,0,24, + 7,0,56,7,0,254,31,224,20,28,84,23,2,0,0,96, + 0,1,152,0,1,8,0,1,8,0,1,152,0,0,96,0, + 0,0,0,0,96,0,0,96,0,0,96,0,0,240,0,0, + 240,0,0,240,0,1,184,0,1,56,0,1,56,0,3,28, + 0,2,28,0,2,28,0,6,14,0,4,14,0,15,254,0, + 8,7,0,8,7,0,24,7,0,24,3,128,56,3,128,255, + 31,240,27,21,84,30,1,0,0,63,255,224,0,15,0,224, + 0,15,0,96,0,31,0,96,0,23,0,32,0,55,0,32, + 0,39,8,32,0,103,8,0,0,71,8,0,0,199,24,0, + 0,135,248,0,1,7,24,0,3,7,8,0,2,7,8,32, + 7,255,8,32,4,7,0,32,12,7,0,32,8,7,0,96, + 24,7,0,96,56,7,1,224,255,63,255,224,15,28,56,19, + 2,250,15,226,16,54,48,30,32,14,96,6,96,6,224,6, + 224,2,224,0,224,0,224,0,224,0,224,0,224,2,96,2, + 96,2,96,4,32,4,48,12,24,8,6,112,1,128,1,0, + 1,192,0,96,0,112,8,96,7,192,17,28,84,20,2,0, + 4,0,0,6,0,0,3,0,0,1,0,0,0,128,0,0, + 0,0,0,0,0,255,255,128,28,3,128,28,3,128,28,1, + 128,28,1,128,28,0,128,28,32,128,28,32,0,28,32,0, + 28,96,0,31,224,0,28,96,0,28,32,0,28,32,128,28, + 32,128,28,0,128,28,1,128,28,1,128,28,3,128,28,7, + 128,255,255,128,17,28,84,20,2,0,0,24,0,0,56,0, + 0,48,0,0,96,0,0,128,0,0,0,0,0,0,0,255, + 255,128,28,3,128,28,3,128,28,1,128,28,1,128,28,0, + 128,28,32,128,28,32,0,28,32,0,28,96,0,31,224,0, + 28,96,0,28,32,0,28,32,128,28,32,128,28,0,128,28, + 1,128,28,1,128,28,3,128,28,7,128,255,255,128,17,28, + 84,20,2,0,0,128,0,0,192,0,1,192,0,2,32,0, + 4,24,0,0,0,0,0,0,0,255,255,128,28,3,128,28, + 3,128,28,1,128,28,1,128,28,0,128,28,32,128,28,32, + 0,28,32,0,28,96,0,31,224,0,28,96,0,28,32,0, + 28,32,128,28,32,128,28,0,128,28,1,128,28,1,128,28, + 3,128,28,7,128,255,255,128,17,27,81,20,2,0,6,48, + 0,7,56,0,6,48,0,0,0,0,0,0,0,0,0,0, + 255,255,128,28,7,128,28,3,128,28,1,128,28,1,128,28, + 1,128,28,32,128,28,32,0,28,32,0,28,96,0,31,224, + 0,28,96,0,28,32,0,28,32,128,28,32,128,28,1,0, + 28,1,128,28,1,128,28,3,128,28,7,128,255,255,128,8, + 28,28,12,2,0,192,224,96,48,24,0,0,255,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 255,9,28,56,12,2,0,1,0,3,0,6,0,4,0,8, + 0,0,0,0,0,255,128,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,255,128,8, + 28,28,12,2,0,8,24,28,38,193,0,0,255,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28, + 255,9,27,54,11,2,0,195,0,227,128,195,0,0,0,0, + 0,0,0,255,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,255,0,19,21,63, + 22,2,0,255,248,0,28,6,0,28,3,0,28,1,128,28, + 1,192,28,0,192,28,0,192,28,0,224,28,0,224,255,128, + 224,28,0,224,28,0,224,28,0,224,28,0,224,28,0,192, + 28,0,192,28,1,128,28,1,128,28,3,0,28,6,0,255, + 248,0,20,27,81,23,2,0,1,226,0,3,254,0,2,28, + 0,0,0,0,0,0,0,0,0,0,252,7,240,28,0,128, + 30,0,128,31,0,128,23,0,128,19,128,128,19,192,128,17, + 192,128,16,224,128,16,240,128,16,112,128,16,56,128,16,56, + 128,16,28,128,16,30,128,16,14,128,16,7,128,16,7,128, + 16,3,128,16,1,128,254,1,128,17,28,84,20,2,0,12, + 0,0,14,0,0,6,0,0,3,0,0,1,128,0,0,0, + 0,0,128,0,7,112,0,24,8,0,16,12,0,48,6,0, + 96,6,0,96,3,0,96,3,0,224,3,0,224,3,0,224, + 3,0,224,3,128,224,3,128,224,3,0,224,3,0,96,3, + 0,96,3,0,96,6,0,48,6,0,16,12,0,24,8,0, + 7,240,0,17,28,84,20,2,0,0,24,0,0,56,0,0, + 112,0,0,64,0,0,128,0,0,0,0,0,128,0,7,112, + 0,24,8,0,16,12,0,48,6,0,96,6,0,96,3,0, + 96,3,0,224,3,0,224,3,0,224,3,0,224,3,128,224, + 3,128,224,3,0,224,3,0,96,3,0,96,3,0,96,6, + 0,48,6,0,16,12,0,24,8,0,7,240,0,17,28,84, + 20,2,0,0,128,0,1,128,0,3,192,0,6,32,0,12, + 16,0,0,8,0,0,128,0,7,112,0,24,8,0,16,12, + 0,48,6,0,96,6,0,96,3,0,96,3,0,224,3,0, + 224,3,0,224,3,0,224,3,128,224,3,128,224,3,0,224, + 3,0,96,3,0,96,3,0,96,6,0,48,6,0,16,12, + 0,24,8,0,7,240,0,17,27,81,20,2,0,7,136,0, + 15,248,0,8,112,0,0,0,0,0,0,0,0,128,0,7, + 112,0,24,8,0,16,12,0,48,6,0,96,6,0,96,3, + 0,96,3,0,224,3,0,224,3,0,224,3,0,224,3,128, + 224,3,128,224,3,0,224,3,0,96,3,0,96,3,0,96, + 6,0,48,6,0,16,12,0,24,8,0,7,240,0,17,27, + 81,20,2,0,12,48,0,14,56,0,12,48,0,0,0,0, + 0,0,0,0,128,0,7,112,0,24,8,0,16,12,0,48, + 6,0,96,6,0,96,3,0,96,3,0,224,3,0,224,3, + 0,224,3,0,224,3,128,224,3,128,224,3,0,224,3,0, + 96,3,0,96,3,0,96,6,0,48,6,0,16,12,0,24, + 8,0,7,240,0,18,18,54,27,5,255,128,0,192,192,1, + 128,96,3,0,48,6,0,24,12,0,12,24,0,6,48,0, + 3,96,0,1,192,0,1,192,0,3,96,0,6,48,0,12, + 24,0,24,12,0,48,6,0,96,3,0,64,1,128,128,0, + 192,17,21,63,20,2,1,7,241,0,8,15,0,16,14,0, + 48,6,0,96,14,0,96,27,0,96,19,0,224,35,0,224, + 99,0,224,195,128,225,131,128,225,3,0,226,3,0,230,3, + 0,236,3,0,104,3,0,112,6,0,112,6,0,112,12,0, + 88,8,0,143,240,0,20,28,84,23,2,0,3,0,0,3, + 128,0,1,128,0,0,192,0,0,32,0,0,0,0,0,0, + 0,255,7,240,28,0,128,28,0,128,28,0,128,28,0,128, + 28,0,128,28,0,128,28,0,128,28,0,128,28,0,128,28, + 0,128,28,0,128,28,0,128,28,0,128,28,0,128,28,0, + 128,28,0,128,12,0,128,12,1,0,6,2,0,3,252,0, + 20,28,84,23,2,0,0,4,0,0,12,0,0,24,0,0, + 16,0,0,32,0,0,0,0,0,0,0,255,7,240,28,0, + 128,28,0,128,28,0,128,28,0,128,28,0,128,28,0,128, + 28,0,128,28,0,128,28,0,128,28,0,128,28,0,128,28, + 0,128,28,0,128,28,0,128,28,0,128,28,0,128,12,0, + 128,12,1,0,6,2,0,3,252,0,20,28,84,23,2,0, + 0,32,0,0,96,0,0,112,0,0,136,0,3,4,0,0, + 0,0,0,0,0,255,7,240,28,0,128,28,0,128,28,0, + 128,28,0,128,28,0,128,28,0,128,28,0,128,28,0,128, + 28,0,128,28,0,128,28,0,128,28,0,128,28,0,128,28, + 0,128,28,0,128,28,0,128,12,1,128,12,1,0,6,2, + 0,3,252,0,20,27,81,23,2,0,1,134,0,3,142,0, + 1,134,0,0,0,0,0,0,0,0,0,0,255,131,240,28, + 0,128,28,0,128,28,0,128,28,0,128,28,0,128,28,0, + 128,28,0,128,28,0,128,28,0,128,28,0,128,28,0,128, + 28,0,128,28,0,128,28,0,128,28,0,128,28,0,128,12, + 0,128,12,1,0,6,2,0,3,252,0,19,28,84,21,1, + 0,0,4,0,0,12,0,0,24,0,0,16,0,0,32,0, + 0,0,0,0,0,0,255,143,224,30,3,128,14,3,0,14, + 2,0,7,2,0,7,4,0,3,132,0,1,200,0,1,200, + 0,0,240,0,0,240,0,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,7,254,0,17,21,63,20,2,0,255,128,0,28,0, + 0,28,0,0,31,240,0,28,12,0,28,6,0,28,3,0, + 28,3,0,28,3,128,28,3,128,28,3,0,28,3,0,28, + 6,0,28,12,0,31,240,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,255,128,0,13,21,42,15,1,0, + 7,192,12,96,24,112,56,112,56,112,56,96,56,192,59,0, + 56,192,56,96,56,48,56,48,56,56,56,56,56,56,56,56, + 58,56,63,56,62,48,60,48,251,192,13,21,42,15,1,0, + 96,0,96,0,48,0,24,0,8,0,4,0,0,0,31,0, + 97,128,65,192,97,192,113,192,1,192,15,192,49,192,97,192, + 193,192,193,200,195,200,196,216,56,240,13,21,42,15,1,0, + 0,192,1,192,1,128,3,0,6,0,4,0,0,0,31,0, + 33,128,96,192,112,192,112,192,0,192,7,192,56,192,96,192, + 224,192,224,200,225,200,226,216,60,112,13,21,42,15,1,0, + 4,0,12,0,14,0,26,0,17,0,32,128,0,0,31,0, + 33,128,97,192,113,192,113,192,1,192,15,192,49,192,97,192, + 225,192,225,200,225,200,226,216,60,240,13,20,40,15,1,0, + 24,0,63,128,71,128,0,0,0,0,0,0,31,0,33,128, + 97,192,113,192,113,192,1,192,15,192,49,192,97,192,225,192, + 225,200,225,200,226,216,60,240,13,20,40,15,1,0,97,128, + 97,192,97,128,0,0,0,0,0,0,30,0,97,128,64,128, + 96,128,96,192,0,192,15,192,48,192,96,192,192,192,193,200, + 194,200,194,216,60,112,13,21,42,15,1,0,14,0,49,0, + 33,0,33,0,19,0,14,0,0,0,30,0,33,128,97,128, + 97,128,113,192,1,192,15,192,113,192,97,192,225,192,225,200, + 227,200,229,216,120,240,18,14,42,20,1,0,31,30,0,97, + 227,0,65,227,0,97,193,128,113,193,128,1,193,128,15,255, + 192,113,192,0,65,192,0,193,192,128,193,192,128,194,224,128, + 194,97,0,60,62,0,10,20,40,12,1,250,31,0,48,128, + 96,192,96,192,225,192,224,128,224,0,224,0,224,0,224,64, + 96,64,96,128,48,128,31,0,8,0,12,0,3,0,3,0, + 3,0,30,0,10,21,42,13,1,0,96,0,112,0,56,0, + 24,0,4,0,0,0,0,0,30,0,49,128,97,128,96,192, + 224,192,224,192,255,192,224,0,224,0,224,64,96,64,96,64, + 48,128,31,0,10,21,42,13,1,0,0,192,1,192,1,128, + 3,0,6,0,0,0,0,0,30,0,49,128,97,128,96,192, + 224,192,224,192,255,192,224,0,224,0,224,64,96,64,96,64, + 48,128,31,0,10,21,42,13,1,0,4,0,4,0,14,0, + 11,0,17,0,32,128,0,0,30,0,49,128,97,128,96,192, + 224,192,224,192,255,192,224,0,224,0,224,64,96,64,96,64, + 48,128,31,0,10,20,40,13,1,0,49,128,113,192,49,128, + 0,0,0,0,0,0,30,0,49,128,97,128,96,192,224,192, + 224,192,255,192,224,0,224,0,224,64,96,64,96,64,48,128, + 31,0,7,21,21,8,0,0,192,192,96,48,24,0,0,124, + 28,28,28,28,28,28,28,28,28,28,28,28,126,7,21,21, + 8,1,0,6,14,12,24,16,0,0,248,56,56,56,56,56, + 56,56,56,56,56,56,56,252,7,20,20,9,1,0,48,48, + 104,132,2,0,248,56,56,56,56,56,56,56,56,56,56,56, + 56,252,8,19,19,9,1,0,198,231,198,0,0,124,28,28, + 28,28,28,28,28,28,28,28,28,28,126,12,21,42,14,1, + 0,56,64,29,128,14,0,15,0,19,0,33,128,1,192,15, + 192,48,224,96,224,96,96,224,96,224,112,224,112,224,96,224, + 96,224,96,96,96,96,192,48,128,15,0,14,20,40,16,1, + 0,14,32,15,32,19,192,16,192,0,0,0,0,249,192,62, + 96,60,112,56,112,56,112,56,112,56,112,56,112,56,112,56, + 112,56,112,56,112,56,112,252,252,12,21,42,14,1,0,32, + 0,48,0,24,0,8,0,4,0,0,0,0,0,15,0,48, + 128,96,192,96,96,224,96,224,96,224,112,224,112,224,96,224, + 96,96,96,96,192,48,128,15,0,12,21,42,14,1,0,0, + 192,1,192,1,128,3,0,2,0,4,0,0,0,15,0,48, + 128,96,192,96,96,224,96,224,96,224,112,224,112,224,96,224, + 96,96,96,96,192,48,128,15,0,12,21,42,14,1,0,4, + 0,6,0,14,0,11,0,16,128,32,0,0,0,15,0,48, + 128,96,192,96,96,224,96,224,96,224,112,224,112,224,96,224, + 96,96,96,96,192,48,128,15,0,12,20,40,14,1,0,28, + 64,63,192,39,128,0,0,0,0,0,0,15,0,48,128,96, + 192,96,96,224,96,224,96,224,112,224,112,224,96,224,96,96, + 96,96,192,48,128,15,0,12,20,40,14,1,0,48,192,57, + 192,48,192,0,0,0,0,0,0,15,0,48,128,96,192,96, + 96,224,96,224,96,224,112,224,112,224,96,224,96,96,96,96, + 192,48,128,15,0,24,19,57,26,1,254,0,24,0,0,60, + 0,0,60,0,0,24,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,255,255,255,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,24,0,0,60,0,0,60, + 0,0,24,0,12,14,28,14,1,0,15,32,48,160,96,192, + 96,224,225,96,227,96,226,112,228,112,232,96,240,96,96,96, + 96,192,112,128,143,0,14,21,42,16,1,0,24,0,24,0, + 12,0,6,0,2,0,0,0,0,0,248,240,56,112,56,112, + 56,112,56,112,56,112,56,112,56,112,56,112,56,112,56,112, + 56,240,25,112,14,124,14,21,42,16,1,0,0,96,0,224, + 0,192,1,128,1,0,0,0,0,0,248,240,56,112,56,112, + 56,112,56,112,56,112,56,112,56,112,56,112,56,112,56,112, + 56,240,25,112,14,124,14,21,42,16,1,0,2,0,3,0, + 7,0,4,128,8,64,0,0,0,0,248,240,56,112,56,112, + 56,112,56,112,56,112,56,112,56,112,56,112,56,112,56,112, + 56,240,25,112,14,124,14,20,40,16,1,0,24,96,28,224, + 24,96,0,0,0,0,0,0,248,240,56,112,56,112,56,112, + 56,112,56,112,56,112,56,112,56,112,56,112,56,112,56,240, + 25,112,14,124,14,28,56,15,0,249,0,48,0,112,0,96, + 0,192,1,128,0,0,0,0,254,124,24,16,24,16,28,16, + 12,32,12,32,14,32,6,64,6,64,6,64,3,128,3,128, + 3,128,1,128,1,0,1,0,1,0,98,0,114,0,100,0, + 56,0,12,28,56,14,1,249,56,0,248,0,56,0,56,0, + 56,0,56,0,56,0,57,224,62,112,60,112,56,112,56,112, + 56,112,56,96,56,96,56,192,56,128,57,128,58,0,60,0, + 56,0,56,0,56,0,56,0,56,0,56,0,48,0,192,0, + 14,26,52,15,0,249,12,48,14,112,12,48,0,0,0,0, + 254,60,24,16,24,16,28,32,12,32,12,32,14,32,6,64, + 6,64,7,64,3,128,3,128,3,128,1,0,1,0,1,0, + 1,0,114,0,114,0,116,0,56,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--29-290-72-72-P-154-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 21 + Calculated Max Values w=24 h=28 x= 3 y= 9 dx=26 dy= 0 ascent=22 len=75 + Font Bounding box w=76 h=38 x=-24 y=-9 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =21 descent= 0 + X Font ascent =21 descent= 0 + Max Font ascent =22 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr21n[702] U8G_SECTION(".progmem.u8g_font_osr21n") = { + 0,76,38,232,247,21,0,0,0,0,42,57,0,22,250,21, + 0,10,12,24,14,2,9,12,0,14,0,204,64,228,192,53, + 0,14,0,63,0,229,192,196,192,12,0,14,0,12,0,24, + 25,75,26,1,252,0,8,0,0,8,0,0,8,0,0,8, + 0,0,8,0,0,8,0,0,8,0,0,8,0,0,8,0, + 0,8,0,0,8,0,0,8,0,255,255,255,0,8,0,0, + 8,0,0,8,0,0,8,0,0,8,0,0,8,0,0,8, + 0,0,8,0,0,8,0,0,8,0,0,8,0,0,8,0, + 4,8,8,8,2,251,224,240,240,16,16,16,32,64,7,2, + 2,11,2,7,254,254,4,4,4,8,2,0,96,240,240,96, + 9,28,56,13,2,250,0,128,0,128,1,128,1,0,1,0, + 1,0,2,0,2,0,2,0,6,0,4,0,4,0,12,0, + 8,0,8,0,24,0,16,0,16,0,16,0,32,0,32,0, + 32,0,64,0,64,0,64,0,192,0,128,0,128,0,14,21, + 42,17,1,0,7,128,24,64,48,32,32,48,96,16,96,24, + 96,24,224,24,224,24,224,24,224,28,224,28,224,24,224,24, + 224,24,96,24,96,24,96,48,48,32,16,96,15,192,10,21, + 42,17,3,0,2,0,6,0,6,0,14,0,254,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,255,192,12,21, + 42,17,2,0,31,0,32,192,64,96,128,112,128,112,192,112, + 240,112,112,112,32,96,0,224,0,192,1,0,6,0,12,0, + 24,0,48,16,96,16,64,16,224,112,255,240,255,240,12,21, + 42,17,2,0,31,0,97,192,192,224,224,96,240,96,112,112, + 0,96,0,96,0,224,48,192,63,0,0,192,0,96,0,112, + 0,112,96,112,240,112,240,112,192,96,192,192,127,128,14,21, + 42,17,2,0,0,64,0,192,1,192,1,192,3,192,7,192, + 5,192,13,192,9,192,17,192,49,192,33,192,65,192,193,192, + 255,252,1,192,1,192,1,192,1,192,1,192,15,252,12,21, + 42,17,2,0,96,64,127,128,127,0,64,0,64,0,64,0, + 64,0,79,0,112,192,64,96,64,96,0,112,0,112,0,112, + 96,112,240,112,240,112,224,96,192,224,64,192,63,128,12,21, + 42,17,2,0,7,128,24,64,16,96,48,224,96,224,96,192, + 96,0,224,0,231,128,232,192,240,96,240,96,224,112,224,112, + 224,112,224,112,96,112,96,96,112,96,48,192,31,128,11,21, + 42,17,3,0,255,224,255,224,192,32,128,32,128,64,128,64, + 0,64,0,128,1,0,1,0,2,0,6,0,6,0,12,0, + 12,0,12,0,30,0,30,0,30,0,30,0,30,0,14,21, + 42,17,2,0,15,128,48,96,96,48,224,24,224,24,224,24, + 224,24,240,16,124,32,63,192,15,224,51,240,96,248,224,56, + 224,28,224,28,224,24,224,24,96,24,112,48,31,192,12,21, + 42,17,2,0,15,0,48,128,96,64,96,96,224,96,224,96, + 224,112,224,112,224,112,96,112,96,240,49,176,14,48,0,48, + 0,32,48,96,112,96,112,64,96,192,96,128,63,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--29-290-72-72-P-154-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 21, '1' Height: 21 + Calculated Max Values w=29 h=28 x= 4 y=17 dx=32 dy= 0 ascent=23 len=88 + Font Bounding box w=76 h=38 x=-24 y=-9 + Calculated Min Values x=-1 y=-7 dx= 0 dy= 0 + Pure Font ascent =21 descent=-7 + X Font ascent =22 descent=-7 + Max Font ascent =23 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr21r[4396] U8G_SECTION(".progmem.u8g_font_osr21r") = { + 0,76,38,232,247,21,5,131,12,189,32,127,249,23,249,22, + 249,0,0,0,8,0,0,4,21,21,8,2,0,96,240,240, + 240,240,240,96,96,96,96,96,96,96,96,96,64,0,96,240, + 240,96,7,5,5,11,2,17,238,204,204,204,68,15,21,42, + 19,2,0,2,16,6,16,6,16,4,16,4,48,4,48,255, + 254,4,32,12,32,12,32,8,32,8,96,8,96,8,64,255, + 254,24,64,24,64,16,192,16,192,16,128,16,128,13,25,50, + 17,2,254,5,0,5,0,15,128,53,96,37,16,69,24,69, + 24,69,56,69,56,117,48,61,0,63,0,15,192,7,224,5, + 240,5,48,101,24,229,24,229,24,197,24,69,48,69,32,61, + 192,7,0,5,0,19,21,63,25,3,0,60,1,0,70,2, + 0,66,2,0,195,4,0,195,8,0,195,8,0,195,16,0, + 195,16,0,66,32,0,102,32,0,56,64,0,0,67,0,0, + 140,192,1,8,64,1,24,96,2,24,96,2,24,96,4,24, + 96,4,24,96,8,8,64,8,7,128,20,21,63,23,2,0, + 3,128,0,12,64,0,8,32,0,24,32,0,24,32,0,24, + 96,0,28,64,0,12,128,0,15,0,0,7,15,240,15,1, + 128,27,129,0,51,193,0,97,194,0,96,226,0,224,244,0, + 224,124,0,224,56,0,224,60,0,96,60,32,59,198,192,3, + 5,5,7,2,17,224,192,192,192,64,6,28,28,10,3,250, + 4,12,24,16,32,32,64,64,64,128,128,128,128,128,128,128, + 128,128,128,192,64,64,32,32,16,24,8,4,6,28,28,11, + 2,250,128,192,64,32,48,16,24,8,8,8,4,4,4,4, + 4,4,4,4,12,8,8,24,16,48,32,96,192,128,10,12, + 24,14,2,9,12,0,14,0,204,64,228,192,53,0,14,0, + 63,0,229,192,196,192,12,0,14,0,12,0,24,25,75,26, + 1,252,0,8,0,0,8,0,0,8,0,0,8,0,0,8, + 0,0,8,0,0,8,0,0,8,0,0,8,0,0,8,0, + 0,8,0,0,8,0,255,255,255,0,8,0,0,8,0,0, + 8,0,0,8,0,0,8,0,0,8,0,0,8,0,0,8, + 0,0,8,0,0,8,0,0,8,0,0,8,0,4,8,8, + 8,2,251,224,240,240,16,16,16,32,64,7,2,2,11,2, + 7,254,254,4,4,4,8,2,0,96,240,240,96,9,28,56, + 13,2,250,0,128,0,128,1,128,1,0,1,0,1,0,2, + 0,2,0,2,0,6,0,4,0,4,0,12,0,8,0,8, + 0,24,0,16,0,16,0,16,0,32,0,32,0,32,0,64, + 0,64,0,64,0,192,0,128,0,128,0,14,21,42,17,1, + 0,7,128,24,64,48,32,32,48,96,16,96,24,96,24,224, + 24,224,24,224,24,224,28,224,28,224,24,224,24,224,24,96, + 24,96,24,96,48,48,32,16,96,15,192,10,21,42,17,3, + 0,2,0,6,0,6,0,14,0,254,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,255,192,12,21,42,17,2, + 0,31,0,32,192,64,96,128,112,128,112,192,112,240,112,112, + 112,32,96,0,224,0,192,1,0,6,0,12,0,24,0,48, + 16,96,16,64,16,224,112,255,240,255,240,12,21,42,17,2, + 0,31,0,97,192,192,224,224,96,240,96,112,112,0,96,0, + 96,0,224,48,192,63,0,0,192,0,96,0,112,0,112,96, + 112,240,112,240,112,192,96,192,192,127,128,14,21,42,17,2, + 0,0,64,0,192,1,192,1,192,3,192,7,192,5,192,13, + 192,9,192,17,192,49,192,33,192,65,192,193,192,255,252,1, + 192,1,192,1,192,1,192,1,192,15,252,12,21,42,17,2, + 0,96,64,127,128,127,0,64,0,64,0,64,0,64,0,79, + 0,112,192,64,96,64,96,0,112,0,112,0,112,96,112,240, + 112,240,112,224,96,192,224,64,192,63,128,12,21,42,17,2, + 0,7,128,24,64,16,96,48,224,96,224,96,192,96,0,224, + 0,231,128,232,192,240,96,240,96,224,112,224,112,224,112,224, + 112,96,112,96,96,112,96,48,192,31,128,11,21,42,17,3, + 0,255,224,255,224,192,32,128,32,128,64,128,64,0,64,0, + 128,1,0,1,0,2,0,6,0,6,0,12,0,12,0,12, + 0,30,0,30,0,30,0,30,0,30,0,14,21,42,17,2, + 0,15,128,48,96,96,48,224,24,224,24,224,24,224,24,240, + 16,124,32,63,192,15,224,51,240,96,248,224,56,224,28,224, + 28,224,24,224,24,96,24,112,48,31,192,12,21,42,17,2, + 0,15,0,48,128,96,64,96,96,224,96,224,96,224,112,224, + 112,224,112,96,112,96,240,49,176,14,48,0,48,0,32,48, + 96,112,96,112,64,96,192,96,128,63,0,4,14,14,8,2, + 0,96,240,240,96,0,0,0,0,0,0,96,240,240,96,4, + 18,18,8,2,251,96,240,240,96,0,0,0,0,0,0,224, + 240,240,16,16,16,32,64,22,24,72,27,2,251,0,0,12, + 0,0,56,0,0,96,0,1,128,0,7,0,0,28,0,0, + 112,0,0,192,0,3,0,0,14,0,0,56,0,0,224,0, + 0,224,0,0,48,0,0,12,0,0,7,0,0,1,192,0, + 0,112,0,0,24,0,0,6,0,0,3,128,0,0,224,0, + 0,56,0,0,12,24,7,21,26,1,5,255,255,255,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255, + 22,24,72,27,3,251,192,0,0,112,0,0,24,0,0,6, + 0,0,3,128,0,0,224,0,0,56,0,0,12,0,0,3, + 0,0,0,192,0,0,112,0,0,28,0,0,28,0,0,48, + 0,0,192,0,3,128,0,14,0,0,56,0,0,96,0,1, + 128,0,7,0,0,28,0,0,112,0,0,192,0,0,11,21, + 42,14,2,0,30,0,97,128,128,192,128,192,240,224,240,192, + 97,192,1,128,3,128,6,0,12,0,8,0,17,0,17,0, + 17,0,14,0,0,0,12,0,30,0,30,0,12,0,21,21, + 63,25,2,1,3,255,0,12,0,128,24,0,64,48,0,32, + 32,59,144,64,199,16,65,135,8,131,7,8,135,6,8,134, + 6,8,142,14,8,142,14,8,142,12,16,142,28,16,142,28, + 32,70,44,64,67,199,128,32,0,0,16,0,0,8,1,128, + 7,222,0,20,21,63,22,1,0,0,32,0,0,96,0,0, + 96,0,0,112,0,0,240,0,0,240,0,0,184,0,1,56, + 0,1,56,0,3,28,0,3,28,0,2,28,0,6,14,0, + 6,14,0,7,254,0,12,7,0,12,7,0,8,7,0,24, + 3,128,24,3,128,255,31,240,16,21,42,20,2,0,255,240, + 28,12,28,6,28,7,28,7,28,7,28,7,28,6,28,12, + 31,240,28,28,28,6,28,6,28,7,28,7,28,7,28,7, + 28,7,28,6,28,12,255,240,15,21,42,19,2,1,15,226, + 16,54,48,30,32,14,96,6,96,6,224,6,224,2,224,0, + 224,0,224,0,224,0,224,0,224,2,96,2,96,2,96,4, + 32,4,48,12,24,8,7,240,19,21,63,22,2,0,255,248, + 0,28,6,0,28,3,0,28,1,128,28,1,128,28,1,192, + 28,0,192,28,0,192,28,0,192,28,0,224,28,0,224,28, + 0,224,28,0,192,28,0,192,28,0,192,28,1,192,28,1, + 128,28,1,0,28,3,0,28,6,0,255,248,0,17,21,63, + 20,2,0,255,255,128,28,3,128,28,3,128,28,1,128,28, + 1,128,28,0,128,28,32,128,28,32,0,28,32,0,28,96, + 0,31,224,0,28,96,0,28,32,0,28,32,128,28,32,128, + 28,0,128,28,1,128,28,1,128,28,3,128,28,7,128,255, + 255,128,17,21,63,20,2,0,255,255,128,28,3,128,28,3, + 128,28,1,128,28,1,128,28,0,128,28,32,128,28,32,0, + 28,32,0,28,96,0,31,224,0,28,96,0,28,32,0,28, + 32,0,28,32,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,255,128,0,18,21,63,21,2,1,15,226,0, + 24,26,0,48,14,0,32,14,0,96,6,0,96,6,0,224, + 2,0,224,2,0,224,0,0,224,0,0,224,127,192,224,14, + 0,224,14,0,224,14,0,224,14,0,96,14,0,96,14,0, + 32,14,0,48,26,0,16,50,0,15,226,0,20,21,63,23, + 2,0,255,15,240,28,3,128,28,3,128,28,3,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,3,128,31,255,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,3,128,255,15, + 240,8,21,21,12,2,0,255,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,255,13,21,42,15, + 1,0,7,248,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 112,224,240,192,240,192,192,192,65,128,127,0,19,21,63,22, + 2,0,255,31,224,28,7,0,28,6,0,28,12,0,28,8, + 0,28,16,0,28,32,0,28,64,0,28,192,0,29,224,0, + 30,224,0,28,112,0,28,112,0,28,56,0,28,28,0,28, + 28,0,28,14,0,28,14,0,28,7,0,28,7,0,255,63, + 224,16,21,42,20,2,0,255,128,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,1,28,1,28,1,28,1,28,3,28,3,28,15,255, + 255,21,21,63,25,2,0,252,1,248,30,1,224,30,1,224, + 30,2,224,22,2,224,23,2,224,23,2,224,19,4,224,19, + 132,224,19,132,224,17,132,224,17,200,224,17,200,224,16,200, + 224,16,208,224,16,240,224,16,240,224,16,112,224,16,96,224, + 16,96,224,254,39,248,20,21,63,23,2,0,252,7,240,28, + 0,128,30,0,128,31,0,128,23,0,128,19,128,128,19,192, + 128,17,192,128,16,224,128,16,240,128,16,112,128,16,56,128, + 16,56,128,16,28,128,16,30,128,16,14,128,16,7,128,16, + 7,128,16,3,128,16,1,128,254,1,128,17,22,66,20,2, + 0,0,128,0,7,112,0,24,8,0,16,12,0,48,6,0, + 96,6,0,96,3,0,96,3,0,224,3,0,224,3,0,224, + 3,0,224,3,128,224,3,128,224,3,0,224,3,0,96,3, + 0,96,3,0,96,6,0,48,6,0,16,12,0,24,8,0, + 7,240,0,17,21,63,20,2,0,255,248,0,28,14,0,28, + 7,0,28,3,0,28,3,0,28,3,128,28,3,0,28,3, + 0,28,6,0,28,12,0,31,240,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,255,128,0,17,27,81,20,2,251,0,128, + 0,7,112,0,24,8,0,16,12,0,48,6,0,96,6,0, + 96,3,0,96,3,0,224,3,0,224,3,0,224,3,0,224, + 3,128,224,3,128,224,3,0,224,3,0,96,3,0,96,3, + 0,97,198,0,51,38,0,26,60,0,14,60,0,7,48,128, + 0,241,0,0,49,0,0,57,0,0,31,0,0,14,0,18, + 21,63,21,2,0,255,248,0,28,14,0,28,6,0,28,7, + 0,28,7,0,28,7,0,28,7,0,28,6,0,28,12,0, + 31,240,0,28,24,0,28,24,0,28,12,0,28,12,0,28, + 12,0,28,14,0,28,14,64,28,14,64,28,14,64,28,7, + 128,255,131,128,14,21,42,18,3,1,63,144,96,208,192,112, + 192,48,192,16,192,16,224,16,240,16,124,0,63,128,31,224, + 7,240,128,248,128,56,128,28,128,12,192,12,224,12,224,8, + 144,16,142,224,17,21,63,21,2,0,255,255,128,225,195,128, + 193,193,128,193,193,128,193,192,128,129,192,128,129,192,128,129, + 192,128,1,192,0,1,192,0,1,192,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,15,248,0,20,21,63,23,2,0,255, + 7,240,28,0,128,28,0,128,28,0,128,28,0,128,28,0, + 128,28,0,128,28,0,128,28,0,128,28,0,128,28,0,128, + 28,0,128,28,0,128,28,0,128,28,0,128,28,0,128,28, + 0,128,12,0,128,12,1,0,6,2,0,3,252,0,20,22, + 66,23,2,255,255,143,240,28,1,192,28,1,128,14,1,128, + 14,1,0,14,1,0,7,3,0,7,2,0,7,2,0,3, + 134,0,3,132,0,3,132,0,1,196,0,1,200,0,1,200, + 0,0,232,0,0,240,0,0,112,0,0,112,0,0,112,0, + 0,32,0,0,32,0,29,22,88,32,2,255,255,63,231,248, + 28,7,0,192,28,7,0,128,28,7,0,128,12,7,128,128, + 14,15,129,128,14,11,129,0,6,9,129,0,7,9,195,0, + 7,25,194,0,7,17,194,0,3,16,230,0,3,144,228,0, + 3,176,228,0,1,160,108,0,1,224,120,0,1,224,120,0, + 1,192,120,0,0,192,48,0,0,192,48,0,0,192,48,0, + 0,128,16,0,19,21,63,22,2,0,255,159,224,14,7,0, + 14,6,0,7,4,0,7,12,0,3,136,0,3,208,0,1, + 208,0,1,224,0,0,224,0,0,112,0,0,240,0,1,184, + 0,1,56,0,2,28,0,6,28,0,4,14,0,8,14,0, + 24,7,0,24,7,0,255,31,224,19,21,63,21,1,0,255, + 143,224,30,3,128,14,3,0,14,2,0,7,2,0,7,4, + 0,3,132,0,1,200,0,1,200,0,0,240,0,0,240,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,0,112,0,0,112,0,0,112,0,7,254,0,15,21, + 42,19,2,0,63,254,56,14,112,28,96,56,64,56,64,112, + 64,240,0,224,1,192,1,192,3,128,7,128,7,0,14,2, + 14,2,28,2,60,2,56,6,112,6,240,14,255,254,6,27, + 27,11,3,250,252,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,252,9, + 28,56,13,2,250,128,0,128,0,192,0,64,0,64,0,64, + 0,32,0,32,0,32,0,16,0,16,0,16,0,24,0,8, + 0,8,0,12,0,4,0,4,0,4,0,2,0,2,0,2, + 0,1,0,1,0,1,0,1,128,0,128,0,128,6,27,27, + 11,2,250,252,28,28,28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,252,13,11, + 22,17,2,10,2,0,2,0,5,0,13,128,8,128,24,192, + 16,64,32,32,96,48,64,16,192,24,15,1,2,15,0,251, + 255,254,5,5,5,13,2,16,192,224,96,48,8,13,14,28, + 15,1,0,31,0,33,128,97,192,113,192,113,192,1,192,15, + 192,49,192,97,192,225,192,225,200,225,200,226,216,60,240,13, + 21,42,15,1,0,248,0,56,0,56,0,56,0,56,0,56, + 0,56,0,59,192,60,96,56,48,56,48,56,48,56,48,56, + 56,56,56,56,48,56,48,56,48,56,32,44,96,35,192,10, + 14,28,12,1,0,31,0,48,128,96,64,96,192,225,192,224, + 128,224,0,224,0,224,0,224,0,96,64,96,128,48,128,31, + 0,13,21,42,15,1,0,3,224,0,224,0,224,0,224,0, + 224,0,224,0,224,30,224,49,224,97,224,96,224,224,224,224, + 224,224,224,224,224,224,224,224,224,96,224,96,224,49,224,30, + 248,10,14,28,13,1,0,30,0,49,128,97,128,96,192,224, + 192,224,192,255,192,224,0,224,0,224,64,96,64,96,64,48, + 128,31,0,10,21,42,10,1,0,15,0,24,128,57,192,57, + 128,56,0,56,0,56,0,254,0,56,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,254,0,14,21,42,16,2,249,31,56,113,200,96,220,224, + 248,224,224,224,224,224,224,96,192,49,128,31,0,96,0,128, + 0,224,0,127,224,56,112,64,16,128,16,128,16,128,48,64, + 96,63,128,14,21,42,16,1,0,248,0,56,0,56,0,56, + 0,56,0,56,0,56,0,57,192,62,96,60,112,56,112,56, + 112,56,112,56,112,56,112,56,112,56,112,56,112,56,112,56, + 112,252,252,6,21,21,7,1,0,112,112,112,0,0,0,0, + 240,112,112,112,112,112,112,112,112,112,112,112,112,252,8,28, + 28,9,255,249,6,7,6,0,0,0,0,31,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,70,230,198,204,120, + 13,21,42,15,1,0,248,0,56,0,56,0,56,0,56,0, + 56,0,56,0,57,248,56,192,56,128,57,0,57,0,58,0, + 63,0,63,0,59,128,57,192,56,192,56,224,56,224,253,248, + 7,21,21,8,1,0,248,56,56,56,56,56,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,254,21,14,42,23,1, + 0,249,195,192,62,100,224,60,120,96,56,120,96,56,112,96, + 56,112,96,56,112,96,56,112,96,56,112,96,56,112,96,56, + 112,96,56,112,96,56,112,96,252,253,248,14,14,28,16,1, + 0,249,192,62,96,60,112,56,112,56,112,56,112,56,112,56, + 112,56,112,56,112,56,112,56,112,56,112,252,252,12,14,28, + 14,1,0,15,0,48,128,96,192,96,96,224,96,224,96,224, + 112,224,112,224,96,224,96,96,96,96,192,48,128,15,0,13, + 21,42,15,1,249,251,192,60,96,56,48,56,48,56,48,56, + 48,56,56,56,56,56,48,56,48,56,48,56,48,60,96,59, + 192,56,0,56,0,56,0,56,0,56,0,56,0,252,0,13, + 21,42,15,1,249,30,32,49,32,96,224,96,224,224,224,224, + 224,224,224,224,224,224,224,224,224,96,224,96,224,49,224,30, + 224,0,224,0,224,0,224,0,224,0,224,0,224,3,248,10, + 14,28,12,1,0,249,128,58,64,60,192,60,192,56,0,56, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,252, + 0,10,14,28,13,2,0,60,128,195,128,129,128,128,128,192, + 128,240,0,62,0,15,128,131,192,128,192,192,64,192,64,160, + 128,159,0,8,20,20,10,1,0,16,16,16,16,48,48,254, + 48,48,48,48,48,48,48,48,49,49,49,59,30,14,14,28, + 16,1,0,248,240,56,112,56,112,56,112,56,112,56,112,56, + 112,56,112,56,112,56,112,56,112,56,240,25,112,14,124,15, + 14,28,15,0,0,254,126,56,16,24,16,28,16,12,32,12, + 32,6,32,6,64,7,64,3,64,3,128,1,128,1,128,1, + 0,22,14,42,22,0,0,254,252,252,56,56,32,24,56,32, + 28,56,32,12,56,64,12,60,64,6,76,64,6,76,128,7, + 70,128,3,134,128,3,135,0,1,131,0,1,131,0,1,2, + 0,14,14,28,16,1,0,124,248,56,96,24,64,12,128,14, + 128,7,0,7,0,3,128,5,128,5,192,8,192,16,224,16, + 96,249,252,15,21,42,15,0,249,254,126,24,16,24,16,28, + 16,12,32,12,32,14,32,6,64,6,64,6,64,3,128,3, + 128,3,128,1,128,1,0,1,0,1,0,98,0,114,0,100, + 0,56,0,10,14,28,13,1,0,255,192,193,192,129,128,131, + 0,135,0,6,0,14,0,28,0,24,0,56,64,48,64,112, + 64,224,192,255,192,6,27,27,12,3,250,12,24,48,48,48, + 48,48,56,24,24,24,16,48,192,48,16,24,24,24,56,48, + 48,48,48,48,16,12,1,28,28,8,4,250,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,6,27,27,12,3,250,128,96, + 32,48,48,48,112,96,96,96,96,96,32,28,48,96,96,96, + 96,96,112,48,48,48,32,96,192,16,6,12,18,1,5,56, + 2,126,1,143,193,131,241,128,255,64,62,255}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--36-360-72-72-P-189-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 26, '1' Height: 25 + Calculated Max Values w=36 h=35 x= 7 y=21 dx=38 dy= 0 ascent=35 len=140 + Font Bounding box w=94 h=46 x=-29 y=-11 + Calculated Min Values x=-1 y=-10 dx= 0 dy= 0 + Pure Font ascent =26 descent=-8 + X Font ascent =27 descent=-8 + Max Font ascent =35 descent=-10 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr26[13186] U8G_SECTION(".progmem.u8g_font_osr26") = { + 0,94,46,227,245,26,7,96,17,82,32,255,248,35,246,27, + 248,0,0,0,10,0,0,4,25,25,10,3,0,96,240,240, + 240,240,240,240,240,96,96,96,96,96,96,96,96,96,96,32, + 64,96,240,240,240,96,8,7,7,14,3,20,195,195,195,195, + 195,195,66,19,25,75,25,3,0,1,130,0,1,130,0,1, + 2,0,1,6,0,3,6,0,3,6,0,3,6,0,255,255, + 224,2,4,0,2,4,0,2,12,0,6,12,0,6,12,0, + 6,12,0,6,8,0,4,8,0,4,8,0,255,255,224,12, + 24,0,12,24,0,12,16,0,8,16,0,8,48,0,8,48, + 0,24,48,0,16,31,62,21,2,253,2,64,2,64,2,64, + 7,224,26,92,50,70,34,66,98,67,98,71,98,79,98,79, + 114,78,58,64,63,64,31,192,7,240,3,252,2,126,2,78, + 34,71,242,67,242,67,226,67,226,67,194,66,66,70,34,76, + 30,112,3,192,2,64,2,64,24,25,75,30,3,0,30,0, + 48,33,0,32,97,128,96,192,192,64,192,192,192,192,192,128, + 192,193,0,192,195,0,192,194,0,64,134,0,97,132,0,34, + 8,0,28,24,112,0,16,132,0,49,134,0,33,2,0,67, + 3,0,195,3,0,131,3,1,131,3,1,3,3,3,3,3, + 6,1,6,4,1,134,12,0,252,24,25,75,28,2,0,1, + 240,0,3,8,0,6,12,0,12,4,0,12,4,0,12,12, + 0,14,8,0,14,24,0,7,48,0,7,192,0,3,193,255, + 7,192,56,13,224,48,24,240,48,48,112,32,112,120,96,112, + 60,64,224,28,128,224,15,128,224,15,0,224,7,0,240,3, + 129,112,15,194,120,25,228,31,224,252,2,7,7,8,3,20, + 192,192,192,192,192,192,64,8,33,33,14,4,250,3,6,12, + 12,24,16,48,48,96,96,96,192,192,192,192,192,192,192,192, + 192,192,64,96,96,96,48,48,24,24,12,6,6,3,8,33, + 33,13,2,250,192,96,96,48,24,24,12,12,6,6,6,2, + 3,3,3,3,3,3,3,3,2,6,6,6,4,12,12,24, + 24,48,96,192,128,13,15,30,18,3,10,7,0,7,0,7, + 0,195,24,226,56,114,112,10,128,7,0,15,128,122,240,242, + 120,226,56,7,0,7,0,7,0,30,31,124,34,2,250,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,255,255,255,252,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,5,11,11,10,2, + 250,112,248,248,120,8,8,8,16,16,32,64,9,2,4,13, + 2,8,255,128,255,128,4,5,5,10,3,0,96,240,240,240, + 96,12,34,68,16,2,249,0,16,0,48,0,48,0,32,0, + 96,0,96,0,64,0,192,0,192,0,128,0,128,1,128,1, + 0,1,0,3,0,2,0,2,0,6,0,4,0,4,0,12, + 0,8,0,8,0,24,0,24,0,16,0,48,0,48,0,32, + 0,96,0,96,0,64,0,192,0,192,0,17,25,75,21,2, + 0,3,224,0,14,56,0,28,28,0,24,12,0,56,14,0, + 112,7,0,112,7,0,112,7,0,240,7,128,240,7,128,240, + 7,128,240,7,128,240,7,128,240,7,128,240,7,128,240,7, + 128,240,7,128,112,7,0,112,7,0,112,7,0,56,14,0, + 56,14,0,24,12,0,12,24,0,7,112,0,12,25,50,21, + 4,0,1,0,3,0,3,0,15,0,255,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,255,240,15,25,50,21,3,0,15,192,48,112,96,56, + 64,60,192,30,192,30,224,30,248,30,248,30,120,28,0,60, + 0,56,0,112,0,224,1,192,3,0,14,0,28,4,56,4, + 48,4,96,4,96,12,255,252,255,252,255,252,15,25,50,21, + 3,0,15,192,48,112,32,56,96,28,112,28,120,28,120,28, + 48,28,0,28,0,56,0,112,31,192,24,112,0,56,0,60, + 0,30,0,30,112,30,248,30,248,30,248,30,192,60,192,56, + 96,112,63,224,17,25,75,21,2,0,0,16,0,0,48,0, + 0,112,0,0,112,0,0,240,0,1,240,0,1,112,0,3, + 112,0,6,112,0,6,112,0,12,112,0,8,112,0,24,112, + 0,48,112,0,32,112,0,96,112,0,192,112,0,255,255,128, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,7,255,128,15,26,52,21,3,0,32,0,48,56,63, + 240,63,192,47,0,32,0,32,0,32,0,32,0,39,192,56, + 112,48,56,32,60,32,28,0,30,0,30,0,30,0,30,120, + 30,248,30,248,28,240,60,224,60,96,56,112,112,63,192,15, + 25,50,21,3,0,3,224,6,24,12,12,24,28,56,60,48, + 60,112,16,112,0,112,0,243,224,246,56,252,28,248,28,248, + 14,240,14,240,14,240,14,240,14,112,14,112,14,112,12,56, + 28,56,24,24,56,14,224,14,25,50,21,3,0,255,252,255, + 252,255,252,192,12,128,8,128,8,128,8,128,16,0,16,0, + 32,0,96,0,64,0,128,1,128,1,128,3,0,3,0,7, + 0,7,0,15,128,15,128,15,128,15,128,15,128,7,128,17, + 25,75,21,2,0,7,240,0,28,28,0,48,14,0,112,6, + 0,224,3,0,224,3,0,224,3,0,240,3,0,240,6,0, + 124,6,0,127,140,0,31,240,0,7,252,0,25,254,0,48, + 63,0,96,15,128,224,7,128,224,3,128,224,3,128,224,3, + 128,224,3,0,96,7,0,112,6,0,56,12,0,15,248,0, + 15,25,50,21,3,0,7,192,24,96,48,48,112,56,112,28, + 224,28,224,28,224,30,224,30,224,30,224,30,112,62,112,62, + 56,94,15,158,0,30,0,28,0,28,56,28,120,28,120,56, + 112,56,96,112,48,224,31,192,4,17,17,10,3,0,96,240, + 240,240,96,0,0,0,0,0,0,0,96,240,240,240,96,5, + 23,23,11,3,250,112,248,248,248,112,0,0,0,0,0,0, + 0,112,240,248,120,8,8,8,16,16,32,64,28,29,116,34, + 3,251,0,0,0,112,0,0,1,192,0,0,7,0,0,0, + 28,0,0,0,112,0,0,1,224,0,0,3,128,0,0,14, + 0,0,0,56,0,0,0,224,0,0,3,128,0,0,15,0, + 0,0,28,0,0,0,112,0,0,0,192,0,0,0,112,0, + 0,0,28,0,0,0,7,0,0,0,1,192,0,0,0,240, + 0,0,0,56,0,0,0,14,0,0,0,3,128,0,0,0, + 224,0,0,0,56,0,0,0,14,0,0,0,7,0,0,0, + 1,192,0,0,0,112,30,8,32,34,2,6,255,255,255,252, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,255,255,255,252,28,29,116,34, + 3,251,224,0,0,0,56,0,0,0,14,0,0,0,3,128, + 0,0,0,224,0,0,0,112,0,0,0,28,0,0,0,7, + 0,0,0,1,192,0,0,0,112,0,0,0,28,0,0,0, + 15,0,0,0,3,128,0,0,0,224,0,0,0,48,0,0, + 0,224,0,0,3,128,0,0,14,0,0,0,56,0,0,0, + 240,0,0,1,192,0,0,7,0,0,0,28,0,0,0,112, + 0,0,1,192,0,0,7,0,0,0,30,0,0,0,56,0, + 0,0,224,0,0,0,13,25,50,17,2,0,15,128,48,224, + 64,112,192,56,192,56,248,56,248,56,112,56,0,112,0,224, + 1,192,3,128,3,0,4,0,12,0,8,64,8,64,8,128, + 7,0,0,0,3,0,7,128,7,128,7,128,3,0,26,27, + 108,30,2,0,0,4,0,0,0,251,224,0,3,0,56,0, + 6,0,12,0,12,0,6,0,24,0,3,0,48,15,1,0, + 48,49,241,128,96,96,241,128,96,192,224,128,193,192,224,192, + 193,128,224,192,193,128,192,192,195,128,192,192,195,1,192,192, + 195,1,192,192,195,1,129,128,195,3,129,128,67,7,129,0, + 99,7,130,0,97,137,132,0,32,240,248,0,48,0,0,0, + 24,0,0,0,12,0,16,0,7,0,48,0,1,255,192,0, + 25,26,104,28,2,0,0,8,0,0,0,12,0,0,0,28, + 0,0,0,28,0,0,0,30,0,0,0,62,0,0,0,46, + 0,0,0,47,0,0,0,103,0,0,0,103,0,0,0,71, + 128,0,0,195,128,0,0,195,128,0,0,131,192,0,1,129, + 192,0,1,129,192,0,3,1,224,0,3,255,224,0,2,0, + 224,0,6,0,240,0,6,0,112,0,6,0,112,0,12,0, + 120,0,12,0,120,0,30,0,120,0,255,195,255,128,20,26, + 78,25,3,0,255,252,0,28,3,0,28,1,192,28,1,192, + 28,0,224,28,0,224,28,0,224,28,0,224,28,0,224,28, + 1,192,28,1,128,28,3,0,31,252,0,28,7,0,28,1, + 192,28,1,224,28,0,224,28,0,240,28,0,240,28,0,240, + 28,0,240,28,0,240,28,1,224,28,1,192,28,3,128,255, + 254,0,19,26,78,24,3,1,3,252,32,14,6,96,28,3, + 224,24,1,224,56,0,224,120,0,224,112,0,96,112,0,96, + 240,0,96,240,0,32,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,112,0,32,112,0, + 32,120,0,96,56,0,64,56,0,64,28,0,128,12,0,128, + 6,3,0,3,222,0,24,26,78,29,3,0,255,255,0,28, + 1,192,28,0,112,28,0,56,28,0,56,28,0,28,28,0, + 30,28,0,30,28,0,14,28,0,15,28,0,15,28,0,15, + 28,0,15,28,0,15,28,0,15,28,0,15,28,0,15,28, + 0,14,28,0,30,28,0,30,28,0,28,28,0,56,28,0, + 56,28,0,112,28,1,192,255,255,0,21,26,78,25,2,0, + 255,255,248,14,0,120,14,0,56,14,0,24,14,0,24,14, + 0,8,14,0,8,14,4,8,14,4,0,14,4,0,14,12, + 0,14,12,0,15,252,0,14,12,0,14,4,0,14,4,0, + 14,4,8,14,4,8,14,0,8,14,0,8,14,0,24,14, + 0,24,14,0,56,14,0,56,14,0,248,255,255,248,20,26, + 78,24,2,0,255,255,240,14,0,240,14,0,112,14,0,48, + 14,0,48,14,0,16,14,0,16,14,4,16,14,4,0,14, + 4,0,14,12,0,14,12,0,15,252,0,14,12,0,14,12, + 0,14,4,0,14,4,0,14,4,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,255, + 224,0,22,27,81,26,3,0,0,32,0,3,220,32,6,7, + 32,12,3,224,24,1,224,56,0,224,56,0,96,112,0,96, + 112,0,96,112,0,32,240,0,32,240,0,0,240,0,0,240, + 0,0,240,15,252,240,0,224,240,0,224,240,0,224,240,0, + 224,112,0,224,112,0,224,56,0,224,56,1,224,24,1,32, + 12,3,32,6,6,32,3,252,32,24,26,78,28,2,0,255, + 195,255,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,15,255,248,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,255,195,255,10,26,52, + 14,2,0,255,192,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,255,192,16,26,52,19,2,0,3,255,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,112,56,248,56,248,56,240,56,192,48,192,112,96,96,63, + 192,24,26,78,28,2,0,255,199,254,14,1,240,14,0,224, + 14,0,192,14,1,128,14,3,0,14,6,0,14,12,0,14, + 24,0,14,24,0,14,56,0,14,124,0,14,188,0,15,62, + 0,15,30,0,14,31,0,14,15,0,14,15,128,14,7,128, + 14,7,192,14,3,192,14,1,224,14,1,240,14,0,240,14, + 0,248,255,199,255,20,26,78,24,2,0,255,224,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,16,14,0, + 16,14,0,32,14,0,48,14,0,48,14,0,48,14,0,112, + 14,0,240,14,3,240,255,255,240,26,26,104,30,2,0,255, + 0,31,192,15,0,30,0,15,128,30,0,15,128,46,0,11, + 128,46,0,11,128,46,0,11,192,110,0,9,192,78,0,9, + 192,78,0,9,224,78,0,8,224,142,0,8,224,142,0,8, + 224,142,0,8,241,142,0,8,113,14,0,8,113,14,0,8, + 121,14,0,8,59,14,0,8,58,14,0,8,58,14,0,8, + 30,14,0,8,28,14,0,8,28,14,0,8,12,14,0,28, + 12,14,0,255,136,255,192,25,26,104,28,2,0,254,0,255, + 128,15,0,28,0,15,128,8,0,15,128,8,0,11,192,8, + 0,11,192,8,0,9,224,8,0,8,240,8,0,8,240,8, + 0,8,120,8,0,8,60,8,0,8,60,8,0,8,30,8, + 0,8,30,8,0,8,15,8,0,8,7,136,0,8,7,136, + 0,8,3,200,0,8,1,232,0,8,1,232,0,8,0,248, + 0,8,0,120,0,8,0,120,0,8,0,56,0,28,0,24, + 0,255,128,24,0,21,27,81,26,3,0,0,32,0,3,220, + 0,6,3,0,12,1,128,28,1,192,56,0,224,56,0,224, + 120,0,240,112,0,112,112,0,112,240,0,120,240,0,120,240, + 0,120,240,0,120,240,0,120,240,0,120,240,0,120,240,0, + 120,112,0,112,112,0,112,120,0,240,56,0,224,56,0,224, + 28,1,192,12,1,128,6,3,0,3,254,0,21,26,78,25, + 2,0,255,255,0,14,1,192,14,0,224,14,0,240,14,0, + 120,14,0,120,14,0,120,14,0,120,14,0,120,14,0,112, + 14,0,240,14,0,224,14,1,192,15,254,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,255,224,0, + 21,33,99,26,3,250,0,32,0,3,220,0,6,3,0,12, + 1,128,28,1,192,56,0,224,56,0,224,120,0,240,112,0, + 112,112,0,112,240,0,120,240,0,120,240,0,120,240,0,120, + 240,0,120,240,0,120,240,0,120,240,0,120,112,0,112,112, + 0,112,120,0,240,56,112,224,57,152,224,29,13,192,13,13, + 128,7,15,8,3,158,8,0,110,8,0,14,8,0,14,24, + 0,7,176,0,7,240,0,3,192,22,26,78,25,2,0,255, + 255,0,14,3,192,14,1,224,14,0,240,14,0,240,14,0, + 240,14,0,240,14,0,240,14,1,224,14,1,192,14,7,128, + 15,252,0,14,6,0,14,7,0,14,3,128,14,3,128,14, + 3,128,14,3,192,14,3,192,14,3,192,14,3,196,14,1, + 196,14,1,196,14,1,236,14,1,248,255,224,240,17,26,78, + 22,3,1,31,227,0,48,51,0,96,31,0,192,15,0,192, + 7,0,192,3,0,192,3,0,224,3,0,240,1,0,120,0, + 0,127,0,0,63,192,0,31,248,0,7,252,0,1,254,0, + 128,63,0,128,15,128,128,3,128,192,3,128,192,1,128,192, + 1,128,224,1,128,240,1,0,248,3,0,140,6,0,135,252, + 0,21,26,78,26,3,0,255,255,248,240,112,120,224,112,56, + 192,112,24,192,112,24,192,112,24,128,112,8,128,112,8,128, + 112,8,128,112,8,0,112,0,0,112,0,0,112,0,0,112, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,7,255,128,25,26,104,29,2,0,255,192,255,128,14, + 0,14,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,6, + 0,8,0,7,0,8,0,3,0,16,0,1,192,32,0,0, + 127,192,0,25,26,104,28,2,0,255,241,255,128,15,0,60, + 0,15,0,24,0,7,128,24,0,7,128,16,0,3,128,48, + 0,3,192,48,0,3,192,48,0,1,192,32,0,1,224,96, + 0,1,224,96,0,0,224,64,0,0,240,192,0,0,240,192, + 0,0,112,128,0,0,113,128,0,0,121,128,0,0,57,0, + 0,0,59,0,0,0,63,0,0,0,30,0,0,0,30,0, + 0,0,14,0,0,0,14,0,0,0,12,0,0,0,4,0, + 0,36,26,130,38,1,0,255,231,255,63,240,15,0,248,7, + 128,15,0,120,3,0,7,0,120,3,0,7,128,120,6,0, + 7,128,248,6,0,3,128,252,6,0,3,128,252,4,0,3, + 192,156,12,0,1,193,156,12,0,1,193,158,12,0,1,225, + 14,24,0,1,227,14,24,0,0,227,14,24,0,0,227,15, + 16,0,0,242,7,48,0,0,118,7,48,0,0,118,7,32, + 0,0,116,3,224,0,0,124,3,224,0,0,60,3,192,0, + 0,60,1,192,0,0,56,1,192,0,0,24,1,192,0,0, + 24,1,128,0,0,16,0,128,0,24,26,78,27,2,0,255, + 227,255,15,128,112,7,128,96,7,192,96,3,192,192,1,224, + 128,1,225,128,0,227,0,0,242,0,0,118,0,0,124,0, + 0,56,0,0,60,0,0,60,0,0,62,0,0,79,0,0, + 207,0,0,135,128,1,135,128,1,3,192,3,3,192,6,1, + 224,6,0,224,14,0,240,30,0,240,255,199,255,24,26,78, + 27,2,0,255,225,255,31,0,56,15,0,48,7,128,48,7, + 128,32,3,192,96,3,192,64,1,224,128,0,224,128,0,241, + 0,0,113,0,0,122,0,0,58,0,0,60,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,1,255, + 224,19,26,78,23,2,0,63,255,224,60,3,192,56,3,192, + 112,7,128,96,15,0,96,15,0,64,30,0,64,30,0,64, + 60,0,0,120,0,0,120,0,0,240,0,0,224,0,1,224, + 0,3,192,0,3,192,0,7,128,32,7,0,32,15,0,32, + 30,0,96,30,0,96,60,0,224,56,0,224,120,1,224,240, + 3,192,255,255,192,7,33,33,14,4,249,254,240,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,240,254,12,34,68,16, + 2,249,128,0,192,0,64,0,64,0,96,0,32,0,32,0, + 48,0,16,0,16,0,24,0,8,0,8,0,12,0,4,0, + 4,0,6,0,6,0,2,0,3,0,3,0,1,0,1,128, + 1,128,0,128,0,128,0,192,0,64,0,64,0,96,0,32, + 0,32,0,48,0,16,7,33,33,15,3,249,254,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,14,254,15,13,26, + 21,3,12,1,0,3,128,3,128,6,192,4,64,12,96,24, + 48,16,16,48,24,96,8,96,12,192,6,128,2,19,1,3, + 19,0,250,255,255,224,6,6,6,16,3,19,192,224,112,48, + 24,12,16,17,34,19,2,0,15,128,48,224,96,112,96,112, + 120,112,120,112,0,112,1,240,30,112,112,112,96,112,224,112, + 224,113,224,241,225,113,113,126,62,60,16,26,52,18,0,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,112,29,140,29,14,30,6,30,7,28,7,28,7, + 28,7,28,7,28,7,28,7,28,7,28,7,30,6,30,14, + 19,12,16,240,12,17,34,16,2,0,15,128,24,96,48,48, + 112,48,96,112,224,112,224,112,224,0,224,0,224,0,224,0, + 224,0,96,16,112,16,48,32,24,64,15,128,16,26,52,19, + 2,0,1,248,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,14,56,57,184,48,184,112,120,96,120,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,96,56,112,120, + 48,120,48,248,15,63,13,17,34,17,2,0,15,128,24,224, + 48,96,112,112,96,48,224,56,224,56,255,248,224,0,224,0, + 224,0,224,8,112,16,112,16,48,32,24,96,7,128,12,26, + 52,12,1,0,7,192,12,32,28,48,56,112,56,112,56,0, + 56,0,56,0,56,0,255,128,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,255,128,17,25,75,20,2,248,7,199, + 0,28,117,128,56,59,128,112,31,128,112,28,0,112,28,0, + 112,28,0,112,28,0,56,56,0,28,112,0,7,192,0,56, + 0,0,64,0,0,64,0,0,64,0,0,127,224,0,63,248, + 0,14,28,0,112,2,0,192,2,0,192,2,0,192,2,0, + 224,4,0,112,8,0,15,240,0,18,26,78,21,1,0,252, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,124,0,28,142,0, + 29,7,0,30,7,0,30,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,28,7,0,255,31,192,7,25,25, + 10,2,0,48,120,120,48,0,0,0,0,248,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,254,9,34,68,11, + 255,248,1,128,3,128,3,128,1,128,0,0,0,0,0,0, + 0,0,0,0,31,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,67,128,227,128,227,0, + 195,0,70,0,60,0,17,26,78,19,1,0,252,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,127,0,28,24,0,28,16,0, + 28,48,0,28,32,0,28,64,0,28,128,0,29,192,0,29, + 192,0,30,224,0,28,112,0,28,112,0,28,56,0,28,60, + 0,28,28,0,28,30,0,255,127,128,9,26,52,11,1,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,255,128,25,17,68,29,2,0,248,240,120,0,57,56, + 156,0,58,29,14,0,60,30,14,0,60,30,14,0,56,28, + 14,0,56,28,14,0,56,28,14,0,56,28,14,0,56,28, + 14,0,56,28,14,0,56,28,14,0,56,28,14,0,56,28, + 14,0,56,28,14,0,56,28,14,0,254,127,63,128,17,17, + 51,21,2,0,248,248,0,57,28,0,58,14,0,60,14,0, + 60,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,254,63,128,14,17,34,18,2,0,7,128,24, + 96,48,48,112,56,112,24,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,112,24,112,56,48,48,24,96,7,128,16, + 25,50,19,1,248,252,240,29,140,31,14,30,6,30,7,28, + 7,28,7,28,7,28,7,28,7,28,7,28,7,28,7,30, + 6,30,14,29,12,28,240,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,255,128,16,25,50,18,2,248,15,8,56, + 136,48,216,112,88,96,120,224,56,224,56,224,56,224,56,224, + 56,224,56,224,56,96,56,112,120,48,120,48,184,15,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,1,255,12, + 17,34,15,2,0,248,224,57,16,58,48,58,112,60,112,60, + 0,60,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,0,254,0,12,17,34,16,2,0,62,64,97, + 64,192,192,192,64,192,64,224,64,120,0,127,0,31,192,7, + 224,128,240,192,112,192,48,224,48,224,48,152,96,135,192,11, + 24,48,13,1,0,8,0,8,0,8,0,8,0,24,0,24, + 0,56,0,255,192,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,0,56,32,56,32,56,32,56, + 96,31,192,15,128,17,17,51,20,1,0,248,62,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 30,0,56,30,0,56,46,0,28,78,0,15,143,128,18,17, + 51,19,0,0,255,31,192,28,7,0,28,6,0,12,4,0, + 14,4,0,14,4,0,7,8,0,7,8,0,3,8,0,3, + 144,0,1,144,0,1,208,0,1,224,0,0,224,0,0,224, + 0,0,64,0,0,64,0,27,17,68,28,0,0,255,63,207, + 224,28,15,3,0,28,7,3,0,12,7,2,0,14,7,2, + 0,14,15,130,0,7,11,132,0,7,9,132,0,3,137,196, + 0,3,145,200,0,1,144,200,0,1,208,232,0,1,224,240, + 0,0,224,112,0,0,224,112,0,0,64,96,0,0,64,32, + 0,16,17,34,19,2,0,254,126,60,56,28,48,28,32,14, + 64,14,64,7,128,3,128,3,128,3,192,3,192,4,224,8, + 96,8,112,16,56,48,56,252,255,18,25,75,20,1,248,255, + 31,192,28,6,0,28,6,0,12,4,0,14,4,0,14,4, + 0,6,8,0,7,8,0,7,8,0,3,16,0,3,144,0, + 3,144,0,1,240,0,1,224,0,1,224,0,0,224,0,0, + 192,0,0,64,0,0,192,0,0,128,0,112,128,0,113,128, + 0,113,0,0,115,0,0,60,0,0,12,17,34,15,1,0, + 255,240,224,112,192,224,128,224,129,192,131,128,131,128,7,0, + 7,0,14,0,28,16,28,16,56,16,56,16,112,48,224,112, + 255,240,8,33,33,15,3,249,3,4,8,24,24,24,24,28, + 28,28,12,12,12,12,8,24,224,24,8,12,12,12,12,28, + 28,28,24,24,24,24,8,4,3,2,34,34,10,4,249,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,8,33,33,14,3,249,192,32,16,24,24,24,24,24,56, + 56,48,48,48,48,16,24,7,24,16,48,48,48,48,56,56, + 24,24,24,24,24,16,32,192,20,6,18,24,2,6,62,0, + 32,127,192,16,135,248,16,128,255,48,128,63,224,96,7,192, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,0,0,0,10,0,0,4,25,25,10,3,248,96,240,240, + 240,96,64,64,96,96,96,96,96,96,96,96,96,96,240,240, + 240,240,240,240,240,96,12,25,50,21,4,252,1,0,1,0, + 1,0,1,0,7,192,25,32,57,48,113,48,113,112,225,112, + 225,32,225,0,225,0,225,0,225,0,225,0,113,16,113,16, + 57,16,29,32,7,192,1,0,1,0,1,0,1,0,20,25, + 75,25,2,0,0,15,128,0,24,96,0,48,32,0,96,112, + 0,192,240,0,192,240,1,192,224,1,192,0,1,192,0,1, + 192,0,1,192,0,63,192,0,1,254,0,1,192,0,1,192, + 0,1,192,0,1,192,0,1,192,0,1,192,0,57,128,16, + 199,128,16,131,128,48,131,224,96,134,255,192,120,63,128,18, + 16,48,22,2,5,195,241,192,124,15,128,48,7,0,32,3, + 0,96,1,0,64,1,128,64,0,128,64,0,128,64,0,128, + 64,0,128,64,1,128,96,1,0,32,3,0,48,7,0,124, + 15,128,227,241,192,20,25,75,22,1,0,255,7,240,60,1, + 192,28,1,128,30,1,0,14,3,0,15,2,0,7,6,0, + 7,132,0,3,140,0,3,136,0,1,216,0,1,208,0,1, + 224,0,31,255,0,0,224,0,0,224,0,31,255,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,15,254,0,2,33,33,10,4,250,192,192,192,192, + 192,192,192,192,192,192,192,192,192,0,0,0,0,0,0,0, + 192,192,192,192,192,192,192,192,192,192,192,192,192,13,32,64, + 23,4,249,7,128,24,64,16,96,48,224,48,224,48,64,56, + 0,28,0,30,0,15,0,23,128,99,192,129,224,128,240,128, + 120,128,24,192,24,224,8,120,8,60,16,30,32,15,64,7, + 128,3,192,1,192,0,224,16,96,56,96,56,96,48,64,16, + 192,15,0,10,4,8,16,3,20,96,192,225,192,225,192,96, + 192,26,26,104,30,2,1,0,255,192,0,3,0,48,0,4, + 0,8,0,8,0,4,0,16,30,2,0,32,113,225,0,32, + 224,225,0,65,192,96,128,65,192,96,128,129,128,32,64,131, + 128,32,64,131,128,0,64,131,128,0,64,131,128,0,64,131, + 128,0,64,131,128,0,64,131,128,32,64,65,192,64,128,65, + 192,64,128,32,224,65,0,32,112,129,0,16,31,2,0,8, + 0,4,0,4,0,8,0,3,0,48,0,0,255,192,0,9, + 13,26,13,2,12,120,0,132,0,198,0,198,0,14,0,54, + 0,70,0,198,0,198,128,206,128,115,0,0,0,255,0,10, + 14,28,18,4,2,16,64,48,128,97,128,97,0,195,0,195, + 0,195,0,195,0,195,0,67,0,97,0,32,128,16,192,8, + 0,18,7,21,22,2,6,255,255,192,0,0,192,0,0,192, + 0,0,192,0,0,192,0,0,192,0,0,192,9,2,4,13, + 2,8,255,128,255,128,26,26,104,30,2,1,0,255,192,0, + 3,0,48,0,4,0,8,0,8,0,4,0,19,255,2,0, + 32,225,193,0,32,224,225,0,64,224,224,128,64,224,224,128, + 128,224,224,64,128,224,224,64,128,225,192,64,128,254,0,64, + 128,225,128,64,128,224,192,64,128,224,224,64,128,224,224,64, + 64,224,228,128,64,224,228,128,32,224,233,0,35,248,121,0, + 16,0,2,0,8,0,4,0,4,0,8,0,3,0,48,0, + 0,255,192,0,9,1,2,15,3,21,255,128,10,9,18,22, + 6,16,30,0,97,128,192,128,128,64,128,64,128,64,64,128, + 97,128,30,0,30,25,100,34,2,255,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,255,255,255,252,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,3, + 0,0,0,3,0,0,0,3,0,0,0,3,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,255,255,255,252,10,15, + 30,16,3,10,63,0,67,128,129,192,129,192,225,192,225,192, + 1,128,3,0,6,0,8,0,48,0,64,64,64,64,255,192, + 255,192,10,16,32,16,4,9,62,0,67,0,193,128,225,128, + 225,128,1,128,3,0,124,0,3,128,1,192,1,192,225,192, + 225,192,129,192,131,128,126,0,6,6,6,16,7,19,12,28, + 56,48,96,192,19,27,81,22,2,246,96,24,0,224,60,0, + 224,60,0,224,60,0,224,60,0,224,60,0,224,60,0,224, + 60,0,224,60,0,192,24,0,64,24,0,64,24,0,64,56, + 0,96,48,32,112,124,96,95,227,224,71,193,192,128,0,0, + 192,0,0,192,0,0,192,0,0,192,0,0,224,0,0,224, + 0,0,224,0,0,240,0,0,96,0,0,15,31,62,19,2, + 251,31,254,62,16,126,16,254,16,254,16,254,16,254,16,254, + 16,254,16,126,16,62,16,2,16,2,16,2,16,2,16,2, + 16,2,16,2,16,2,16,2,16,2,16,2,16,2,16,2, + 16,2,16,2,16,2,16,2,16,2,16,2,16,2,16,4, + 5,5,10,3,9,96,240,240,240,96,7,7,7,16,4,248, + 16,32,28,6,6,134,124,8,15,15,16,4,10,8,24,248, + 24,24,24,24,24,24,24,24,24,24,24,255,9,13,26,15, + 3,12,28,0,99,0,67,0,193,128,193,128,193,128,193,128, + 193,128,67,0,99,0,28,0,0,0,255,128,9,14,28,17, + 4,2,132,0,66,0,99,0,33,0,49,128,49,128,49,128, + 49,128,49,128,33,128,99,0,67,0,134,0,4,0,24,25, + 75,31,4,0,8,0,16,24,0,48,248,0,32,24,0,64, + 24,0,64,24,0,128,24,1,128,24,1,0,24,2,0,24, + 6,0,24,4,12,24,8,28,24,8,28,24,16,44,255,48, + 76,0,32,76,0,64,140,0,192,140,0,129,12,1,2,12, + 1,3,255,2,0,12,6,0,12,4,0,12,8,0,127,24, + 25,75,31,4,0,8,0,32,24,0,96,248,0,64,24,0, + 192,24,0,128,24,1,0,24,1,0,24,2,0,24,6,0, + 24,4,0,24,12,248,24,9,14,24,18,15,24,18,7,255, + 35,135,0,97,135,0,64,14,0,128,12,0,128,24,1,0, + 32,3,0,193,2,1,1,6,1,1,4,3,255,8,3,254, + 24,25,75,31,4,0,62,0,32,67,0,32,193,128,64,225, + 128,192,1,128,128,3,1,128,124,1,0,3,130,0,1,194, + 0,1,196,0,225,204,24,225,200,24,129,208,56,131,144,88, + 126,32,88,0,96,152,0,64,152,0,193,24,0,129,24,1, + 2,24,3,3,255,2,0,24,6,0,24,4,0,24,8,0, + 127,13,25,50,17,1,248,6,0,15,0,15,0,15,0,6, + 0,7,0,8,192,16,64,16,64,16,192,0,128,1,0,7, + 0,14,0,28,0,56,0,112,0,240,112,224,120,224,120,224, + 24,224,24,112,16,56,96,15,192,25,34,136,28,2,0,0, + 192,0,0,0,224,0,0,0,224,0,0,0,48,0,0,0, + 24,0,0,0,8,0,0,0,0,0,0,0,0,0,0,0, + 8,0,0,0,12,0,0,0,28,0,0,0,28,0,0,0, + 30,0,0,0,62,0,0,0,46,0,0,0,47,0,0,0, + 103,0,0,0,103,0,0,0,71,128,0,0,195,128,0,0, + 195,128,0,0,131,192,0,1,129,192,0,1,129,192,0,3, + 1,224,0,3,255,224,0,2,0,224,0,6,0,240,0,6, + 0,112,0,6,0,112,0,12,0,120,0,12,0,120,0,30, + 0,120,0,255,195,255,128,25,34,136,28,2,0,0,0,192, + 0,0,1,192,0,0,3,128,0,0,7,0,0,0,6,0, + 0,0,8,0,0,0,0,0,0,0,0,0,0,0,8,0, + 0,0,12,0,0,0,28,0,0,0,28,0,0,0,30,0, + 0,0,62,0,0,0,46,0,0,0,47,0,0,0,103,0, + 0,0,103,0,0,0,71,128,0,0,195,128,0,0,195,128, + 0,1,131,192,0,1,129,192,0,1,129,192,0,3,1,224, + 0,3,255,224,0,2,0,224,0,6,0,240,0,6,0,112, + 0,4,0,112,0,12,0,120,0,12,0,56,0,30,0,124, + 0,255,195,255,128,25,34,136,28,2,0,0,8,0,0,0, + 28,0,0,0,30,0,0,0,51,0,0,0,65,128,0,1, + 128,64,0,0,0,0,0,0,0,0,0,0,8,0,0,0, + 12,0,0,0,28,0,0,0,28,0,0,0,30,0,0,0, + 62,0,0,0,46,0,0,0,47,0,0,0,103,0,0,0, + 103,0,0,0,71,128,0,0,195,128,0,0,195,128,0,0, + 131,192,0,1,129,192,0,1,129,192,0,3,1,224,0,3, + 255,224,0,2,0,224,0,6,0,240,0,6,0,112,0,6, + 0,112,0,12,0,120,0,12,0,120,0,30,0,120,0,255, + 195,255,128,25,33,132,28,2,0,0,112,64,0,0,252,64, + 0,0,159,192,0,1,7,128,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,8,0,0,0,12,0,0,0,28,0, + 0,0,28,0,0,0,30,0,0,0,62,0,0,0,46,0, + 0,0,47,0,0,0,103,0,0,0,103,0,0,0,71,128, + 0,0,195,128,0,0,195,128,0,1,131,192,0,1,129,192, + 0,1,129,192,0,3,1,224,0,3,255,224,0,2,0,224, + 0,6,0,240,0,6,0,112,0,4,0,112,0,12,0,120, + 0,12,0,56,0,30,0,124,0,255,195,255,128,25,33,132, + 28,2,0,0,193,128,0,1,193,192,0,1,193,192,0,0, + 193,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 8,0,0,0,24,0,0,0,28,0,0,0,28,0,0,0, + 60,0,0,0,62,0,0,0,62,0,0,0,110,0,0,0, + 79,0,0,0,71,0,0,0,199,0,0,0,199,128,0,0, + 131,128,0,1,131,128,0,1,129,192,0,1,1,192,0,3, + 1,192,0,3,255,224,0,2,0,224,0,6,0,224,0,6, + 0,112,0,4,0,112,0,12,0,112,0,12,0,120,0,30, + 0,120,0,255,195,255,128,25,35,140,28,2,0,0,28,0, + 0,0,34,0,0,0,65,0,0,0,65,0,0,0,65,0, + 0,0,65,0,0,0,34,0,0,0,28,0,0,0,0,0, + 0,0,8,0,0,0,12,0,0,0,28,0,0,0,28,0, + 0,0,30,0,0,0,62,0,0,0,46,0,0,0,47,0, + 0,0,111,0,0,0,71,0,0,0,71,128,0,0,199,128, + 0,0,131,128,0,1,131,192,0,1,131,192,0,1,1,192, + 0,3,1,224,0,3,255,224,0,2,0,224,0,6,0,240, + 0,6,0,240,0,4,0,112,0,12,0,120,0,12,0,120, + 0,28,0,120,0,255,195,255,128,33,26,130,36,1,0,0, + 7,255,255,128,0,1,224,7,128,0,1,224,3,128,0,3, + 224,1,128,0,2,224,1,128,0,6,224,0,128,0,4,224, + 0,128,0,12,224,32,128,0,8,224,32,0,0,24,224,32, + 0,0,16,224,96,0,0,48,224,96,0,0,48,255,224,0, + 0,96,224,96,0,0,96,224,96,0,0,192,224,32,0,0, + 192,224,32,128,1,255,224,32,128,1,0,224,0,128,3,0, + 224,0,128,2,0,224,1,128,6,0,224,1,128,6,0,224, + 1,128,14,0,224,3,128,30,0,224,15,128,255,199,255,255, + 128,19,34,102,24,3,249,3,252,64,14,6,96,28,3,224, + 24,1,224,56,0,224,120,0,224,112,0,96,112,0,96,240, + 0,96,240,0,32,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,112,0,32,112,0,32, + 120,0,96,56,0,64,56,0,64,24,0,128,12,0,128,6, + 3,0,3,204,0,0,112,0,0,64,0,0,240,0,0,28, + 0,0,28,0,0,28,0,2,28,0,1,240,0,21,34,102, + 25,2,0,3,0,0,3,128,0,1,192,0,0,192,0,0, + 96,0,0,16,0,0,0,0,0,0,0,255,255,248,14,0, + 120,14,0,56,14,0,24,14,0,24,14,0,8,14,0,8, + 14,4,8,14,4,0,14,4,0,14,12,0,14,12,0,15, + 252,0,14,12,0,14,4,0,14,4,0,14,4,8,14,4, + 8,14,0,8,14,0,8,14,0,24,14,0,24,14,0,56, + 14,0,56,14,0,248,255,255,248,21,34,102,25,2,0,0, + 3,0,0,7,128,0,7,0,0,12,0,0,24,0,0,48, + 0,0,0,0,0,0,0,255,255,248,14,0,120,14,0,56, + 14,0,24,14,0,24,14,0,8,14,0,8,14,4,8,14, + 4,0,14,4,0,14,12,0,14,12,0,15,252,0,14,12, + 0,14,4,0,14,4,0,14,4,8,14,4,8,14,0,8, + 14,0,8,14,0,24,14,0,24,14,0,56,14,0,56,14, + 0,248,255,255,248,21,34,102,25,2,0,0,48,0,0,48, + 0,0,120,0,0,204,0,1,134,0,2,1,128,0,0,0, + 0,0,0,255,255,248,14,0,120,14,0,56,14,0,24,14, + 0,24,14,0,8,14,0,8,14,4,8,14,4,0,14,4, + 0,14,12,0,14,12,0,15,252,0,14,12,0,14,4,0, + 14,4,0,14,4,8,14,4,8,14,0,8,14,0,8,14, + 0,24,14,0,24,14,0,56,14,0,56,14,0,248,255,255, + 248,21,33,99,25,2,0,1,131,0,3,135,0,3,135,0, + 1,131,0,0,0,0,0,0,0,0,0,0,255,255,248,14, + 0,120,14,0,56,14,0,24,14,0,24,14,0,8,14,0, + 8,14,4,8,14,4,0,14,4,0,14,12,0,14,12,0, + 15,252,0,14,12,0,14,4,0,14,4,0,14,4,8,14, + 4,8,14,0,8,14,0,8,14,0,24,14,0,24,14,0, + 56,14,0,56,14,0,248,255,255,248,10,34,68,14,2,0, + 192,0,224,0,112,0,56,0,8,0,4,0,0,0,0,0, + 255,192,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,255,192,10,34,68,14,2,0,0,192,1,192,1,128, + 3,0,6,0,4,0,0,0,0,0,255,192,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,255,192,10,34, + 68,14,2,0,4,0,14,0,30,0,59,0,97,128,128,64, + 0,0,0,0,255,192,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,255,192,11,33,66,14,2,0,96,192, + 224,224,224,224,96,192,0,0,0,0,0,0,127,224,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,127,224, + 24,26,78,27,2,0,255,255,0,14,0,192,14,0,112,14, + 0,56,14,0,60,14,0,28,14,0,30,14,0,30,14,0, + 14,14,0,15,14,0,15,14,0,15,255,224,15,14,0,15, + 14,0,15,14,0,15,14,0,15,14,0,14,14,0,30,14, + 0,30,14,0,28,14,0,56,14,0,56,14,0,112,14,0, + 192,255,255,0,25,33,132,28,2,0,0,120,32,0,0,254, + 96,0,0,143,192,0,0,131,128,0,0,0,0,0,0,0, + 0,0,0,0,0,0,254,0,255,128,15,0,28,0,15,128, + 8,0,15,128,8,0,11,192,8,0,11,192,8,0,9,224, + 8,0,8,240,8,0,8,240,8,0,8,120,8,0,8,60, + 8,0,8,60,8,0,8,30,8,0,8,30,8,0,8,15, + 8,0,8,7,136,0,8,7,136,0,8,3,200,0,8,1, + 232,0,8,1,232,0,8,0,248,0,8,0,120,0,8,0, + 120,0,8,0,56,0,28,0,24,0,255,128,24,0,21,34, + 102,26,3,0,3,0,0,7,0,0,3,128,0,1,192,0, + 0,64,0,0,32,0,0,0,0,0,32,0,3,220,0,6, + 3,0,12,1,128,28,1,192,56,0,224,56,0,224,120,0, + 240,112,0,112,112,0,112,240,0,120,240,0,120,240,0,120, + 240,0,120,240,0,120,240,0,120,240,0,120,240,0,120,112, + 0,112,112,0,112,120,0,240,56,0,224,56,0,224,28,1, + 192,12,1,128,6,3,0,3,254,0,21,34,102,26,3,0, + 0,6,0,0,7,0,0,14,0,0,28,0,0,16,0,0, + 32,0,0,0,0,0,32,0,3,220,0,6,3,0,12,1, + 128,28,1,192,56,0,224,56,0,224,120,0,240,112,0,112, + 112,0,112,240,0,120,240,0,120,240,0,120,240,0,120,240, + 0,120,240,0,120,240,0,120,240,0,120,112,0,112,112,0, + 112,120,0,240,56,0,224,56,0,224,28,1,192,12,1,128, + 6,3,0,3,254,0,21,34,102,26,3,0,0,32,0,0, + 112,0,0,112,0,0,216,0,1,4,0,6,3,0,0,0, + 0,0,32,0,3,220,0,6,3,0,12,1,128,28,1,192, + 56,0,224,56,0,224,120,0,240,112,0,112,112,0,112,240, + 0,120,240,0,120,240,0,120,240,0,120,240,0,120,240,0, + 120,240,0,120,240,0,120,112,0,112,112,0,112,120,0,240, + 56,0,224,56,0,224,28,1,192,12,1,128,6,3,0,3, + 254,0,21,33,99,26,3,0,3,225,0,3,255,0,4,62, + 0,0,0,0,0,0,0,0,0,0,0,32,0,3,220,0, + 6,3,0,12,1,128,28,1,192,56,0,224,56,0,224,120, + 0,240,112,0,112,112,0,112,240,0,120,240,0,120,240,0, + 120,240,0,120,240,0,120,240,0,120,240,0,120,240,0,120, + 112,0,112,112,0,112,120,0,240,56,0,224,56,0,224,28, + 1,192,12,1,128,6,3,0,3,254,0,21,33,99,26,3, + 0,3,6,0,7,7,0,7,7,0,3,6,0,0,0,0, + 0,0,0,0,32,0,3,220,0,6,3,0,12,1,128,28, + 1,192,56,0,224,56,0,224,120,0,240,112,0,112,112,0, + 112,240,0,120,240,0,120,240,0,120,240,0,120,240,0,120, + 240,0,120,240,0,120,240,0,120,112,0,112,112,0,112,120, + 0,240,56,0,224,56,0,224,28,1,192,12,1,128,6,3, + 0,3,254,0,22,23,69,34,6,254,128,0,4,192,0,12, + 96,0,24,48,0,48,24,0,96,12,0,192,6,1,128,3, + 3,0,1,134,0,0,204,0,0,120,0,0,48,0,0,120, + 0,0,204,0,1,134,0,3,3,0,6,1,128,12,0,192, + 24,0,96,48,0,48,96,0,24,192,0,12,128,0,0,21, + 27,81,26,3,0,0,32,0,3,222,24,6,3,48,12,1, + 224,28,1,192,56,0,224,56,1,224,120,3,240,112,2,112, + 112,6,112,240,12,120,240,24,120,240,16,120,240,48,120,240, + 96,120,240,192,120,240,192,120,241,128,120,115,0,112,114,0, + 112,126,0,240,60,0,224,56,0,224,28,1,192,60,1,128, + 102,3,0,195,222,0,25,34,136,29,2,0,0,192,0,0, + 0,224,0,0,0,224,0,0,0,48,0,0,0,16,0,0, + 0,8,0,0,0,0,0,0,0,0,0,0,255,192,255,128, + 14,0,14,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 6,0,8,0,7,0,8,0,3,0,16,0,1,192,32,0, + 0,127,192,0,25,34,136,29,2,0,0,0,192,0,0,1, + 192,0,0,3,128,0,0,7,0,0,0,4,0,0,0,8, + 0,0,0,0,0,0,0,0,0,0,255,192,255,128,14,0, + 14,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,6,0, + 8,0,7,0,8,0,3,0,16,0,1,192,32,0,0,127, + 192,0,25,34,136,29,2,0,0,8,0,0,0,28,0,0, + 0,30,0,0,0,55,0,0,0,65,128,0,1,128,96,0, + 0,0,0,0,0,0,0,0,255,192,255,128,14,0,14,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,14,0,4,0, + 14,0,4,0,14,0,4,0,14,0,4,0,6,0,8,0, + 7,0,8,0,3,128,16,0,1,192,96,0,0,127,192,0, + 25,33,132,29,2,0,0,192,192,0,0,225,192,0,0,225, + 192,0,0,192,192,0,0,0,0,0,0,0,0,0,0,0, + 0,0,255,192,255,128,14,0,14,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,14,0,4,0,14,0,4,0,14,0, + 4,0,14,0,4,0,6,0,8,0,7,0,8,0,3,0, + 16,0,1,192,32,0,0,127,192,0,24,34,102,27,2,0, + 0,0,192,0,1,192,0,3,128,0,7,0,0,4,0,0, + 8,0,0,0,0,0,0,0,255,225,255,31,0,56,15,0, + 48,7,128,48,7,128,32,3,192,96,3,192,64,1,224,128, + 0,224,128,0,241,0,0,113,0,0,122,0,0,58,0,0, + 60,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,1,255,224,21,26,78,25,2,0,255,224,0,14, + 0,0,14,0,0,14,0,0,14,0,0,15,255,0,14,1, + 192,14,0,224,14,0,240,14,0,120,14,0,120,14,0,120, + 14,0,120,14,0,120,14,0,240,14,0,224,14,1,192,15, + 255,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,14,0,0,255,224,0,16,26,52,19,1,0, + 1,240,3,28,6,14,14,14,28,14,28,14,28,12,28,28, + 28,48,29,192,28,48,28,24,28,12,28,14,28,6,28,7, + 28,7,28,7,28,7,28,7,28,135,29,199,29,199,29,142, + 29,140,252,120,16,25,50,19,2,1,112,0,112,0,56,0, + 28,0,12,0,2,0,0,0,0,0,15,128,48,224,32,112, + 96,112,120,112,120,112,0,112,1,240,30,112,112,112,96,112, + 224,112,224,113,224,241,225,113,113,126,62,60,16,25,50,19, + 2,1,0,112,0,240,0,224,1,128,3,0,2,0,0,0, + 0,0,15,128,48,224,96,112,96,112,120,112,120,112,0,112, + 1,240,30,112,112,112,96,112,224,112,224,113,224,241,225,113, + 113,126,62,60,16,25,50,19,2,0,6,0,7,0,7,0, + 13,128,24,192,48,96,0,0,0,0,15,128,48,224,96,112, + 96,112,120,112,120,112,0,112,1,240,30,112,112,112,96,112, + 224,112,224,113,224,241,225,113,113,126,62,60,16,24,48,19, + 2,0,30,48,63,224,35,192,0,0,0,0,0,0,0,0, + 15,128,48,224,96,112,96,112,120,112,120,112,0,112,1,240, + 30,112,112,112,96,112,224,112,224,113,224,241,225,113,113,126, + 62,60,16,24,48,19,2,0,48,96,112,224,112,224,48,96, + 0,0,0,0,0,0,15,0,48,192,96,96,96,96,112,96, + 112,96,0,96,1,224,30,96,112,96,96,96,224,96,224,97, + 224,225,225,99,113,126,62,60,16,25,50,19,2,0,7,0, + 24,192,16,64,16,64,24,192,7,0,0,0,0,0,15,128, + 48,224,96,112,96,112,120,112,120,112,0,112,1,240,30,112, + 112,112,96,112,224,112,224,113,224,241,225,113,113,126,62,60, + 22,17,51,26,2,0,15,135,192,48,236,112,96,120,48,112, + 120,56,120,112,24,56,112,28,0,112,28,7,255,252,56,112, + 0,112,112,0,224,112,0,224,112,4,224,248,8,224,184,8, + 225,56,16,113,28,48,62,7,192,12,24,48,16,2,249,15, + 128,24,96,48,48,112,48,96,112,224,112,224,112,224,0,224, + 0,224,0,224,0,224,0,96,16,112,16,48,32,24,96,15, + 128,2,0,6,0,1,128,0,192,0,192,16,192,15,128,13, + 25,50,17,2,1,48,0,56,0,28,0,12,0,6,0,3, + 0,0,0,0,0,15,128,24,224,48,96,112,112,96,48,224, + 56,224,56,255,248,224,0,224,0,224,0,224,8,112,16,112, + 16,48,16,24,96,7,128,13,25,50,17,2,1,0,112,0, + 112,0,224,0,192,1,128,3,0,0,0,0,0,15,128,24, + 224,48,96,112,112,96,48,224,56,224,56,255,248,224,0,224, + 0,224,0,224,8,112,16,112,16,48,16,24,96,7,128,13, + 25,50,17,2,0,3,0,3,0,7,128,5,128,8,64,16, + 32,0,0,0,0,15,128,24,224,48,96,112,112,96,48,224, + 56,224,56,255,248,224,0,224,0,224,0,224,8,112,16,112, + 16,48,32,24,96,7,128,13,24,48,17,2,0,24,96,56, + 112,56,112,24,96,0,0,0,0,0,0,15,128,24,224,48, + 96,112,48,96,48,224,56,224,56,255,248,224,0,224,0,224, + 0,224,8,112,16,112,16,48,32,24,96,7,128,9,25,50, + 11,0,0,192,0,224,0,112,0,56,0,8,0,4,0,0, + 0,0,0,62,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,63,128,8,25,25,10,2,0,3,7,7,12,24, + 48,0,0,248,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,254,9,25,50,11,1,0,24,0,28,0,60,0, + 54,0,99,0,128,128,0,0,0,0,124,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,127,0,9,24,48,11, + 1,0,97,128,227,128,227,128,97,128,0,0,0,0,0,0, + 126,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 127,128,14,26,52,18,2,0,28,16,14,48,15,192,7,128, + 7,128,13,192,48,224,0,224,0,112,7,240,24,120,48,56, + 112,60,112,28,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,112,24,112,56,48,48,24,96,7,128,17,24,72,21, + 2,0,7,4,0,15,204,0,9,248,0,8,112,0,0,0, + 0,0,0,0,0,0,0,248,248,0,57,28,0,58,14,0, + 60,14,0,60,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,56,14,0,254,63,128,14,25,50,18,2,1, + 56,0,56,0,28,0,12,0,6,0,3,0,0,0,0,0, + 7,128,24,96,48,48,112,56,112,24,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,112,24,112,56,48,48,24,96, + 7,128,14,25,50,18,2,1,0,48,0,112,0,224,0,192, + 1,128,1,0,0,0,0,0,7,128,24,96,48,48,112,56, + 112,24,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 112,24,112,56,48,48,24,96,7,128,14,25,50,18,2,0, + 3,0,3,0,7,128,4,128,8,64,16,32,0,0,0,0, + 7,128,24,96,48,48,112,56,112,24,224,28,224,28,224,28, + 224,28,224,28,224,28,224,28,112,24,112,56,48,48,24,96, + 7,128,14,24,48,18,2,0,30,16,31,240,33,224,0,0, + 0,0,0,0,0,0,7,128,24,96,48,48,112,56,112,24, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,112,24, + 112,56,48,48,24,96,7,128,14,24,48,18,2,0,24,48, + 56,112,56,112,24,48,0,0,0,0,0,0,7,128,24,96, + 48,48,112,56,112,24,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,112,24,112,56,48,48,24,96,7,128,30,23, + 92,34,2,254,0,3,0,0,0,7,128,0,0,7,128,0, + 0,7,128,0,0,3,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 255,255,255,252,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,3,0,0, + 0,7,128,0,0,7,128,0,0,7,128,0,0,3,0,0, + 14,17,34,18,2,0,7,132,24,104,48,56,112,56,112,56, + 224,92,224,156,225,156,227,28,226,28,228,28,232,28,120,24, + 112,56,48,48,88,96,135,192,17,25,75,20,1,1,28,0, + 0,28,0,0,14,0,0,3,0,0,1,0,0,0,128,0, + 0,0,0,0,0,0,248,62,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,30,0,56,30,0, + 56,46,0,28,78,0,15,143,128,17,25,75,20,1,1,0, + 28,0,0,60,0,0,48,0,0,96,0,0,192,0,0,128, + 0,0,0,0,0,0,0,248,62,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,56,14,0,56,30,0,56,30, + 0,56,46,0,28,78,0,15,143,128,17,25,75,20,1,0, + 0,128,0,1,192,0,1,192,0,3,96,0,4,48,0,8, + 8,0,0,0,0,0,0,0,248,62,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,30,0,56, + 30,0,56,46,0,28,78,0,15,143,128,17,24,72,20,1, + 0,12,48,0,28,56,0,28,56,0,12,48,0,0,0,0, + 0,0,0,0,0,0,248,62,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,30,0,56,30,0, + 56,46,0,28,78,0,15,143,128,18,33,99,19,1,249,0, + 12,0,0,28,0,0,24,0,0,48,0,0,96,0,0,64, + 0,0,0,0,0,0,0,255,31,192,28,6,0,28,4,0, + 12,4,0,14,4,0,14,4,0,6,8,0,7,8,0,7, + 8,0,3,16,0,3,144,0,3,144,0,1,224,0,1,224, + 0,1,224,0,0,192,0,0,192,0,0,64,0,0,128,0, + 0,128,0,112,128,0,113,128,0,113,0,0,114,0,0,60, + 0,0,16,34,68,19,1,247,12,0,60,0,92,0,28,0, + 28,0,28,0,28,0,28,0,28,60,28,126,28,143,29,7, + 30,7,30,7,30,7,28,6,28,14,28,14,28,12,28,24, + 28,16,28,32,28,64,29,128,31,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,224,0,17,32,96,19, + 1,248,6,12,0,7,28,0,7,28,0,6,12,0,0,0, + 0,0,0,0,0,0,0,255,31,128,28,6,0,28,4,0, + 14,4,0,14,4,0,14,8,0,7,8,0,7,8,0,7, + 16,0,3,144,0,3,144,0,3,160,0,1,224,0,1,224, + 0,1,224,0,0,192,0,0,192,0,0,64,0,0,128,0, + 0,128,0,112,128,0,121,0,0,121,0,0,114,0,0,60, + 0,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--36-360-72-72-P-189-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 25 + Calculated Max Values w=30 h=34 x= 4 y=10 dx=34 dy= 0 ascent=27 len=124 + Font Bounding box w=94 h=46 x=-29 y=-11 + Calculated Min Values x= 0 y=-7 dx= 0 dy= 0 + Pure Font ascent =25 descent= 0 + X Font ascent =25 descent= 0 + Max Font ascent =27 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr26n[932] U8G_SECTION(".progmem.u8g_font_osr26n") = { + 0,94,46,227,245,25,0,0,0,0,42,57,0,27,249,25, + 0,13,15,30,18,3,10,7,0,7,0,7,0,195,24,226, + 56,114,112,10,128,7,0,15,128,122,240,242,120,226,56,7, + 0,7,0,7,0,30,31,124,34,2,250,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,255,255,255,252,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,5,11,11,10,2,250,112,248,248, + 120,8,8,8,16,16,32,64,9,2,4,13,2,8,255,128, + 255,128,4,5,5,10,3,0,96,240,240,240,96,12,34,68, + 16,2,249,0,16,0,48,0,48,0,32,0,96,0,96,0, + 64,0,192,0,192,0,128,0,128,1,128,1,0,1,0,3, + 0,2,0,2,0,6,0,4,0,4,0,12,0,8,0,8, + 0,24,0,24,0,16,0,48,0,48,0,32,0,96,0,96, + 0,64,0,192,0,192,0,17,25,75,21,2,0,3,224,0, + 14,56,0,28,28,0,24,12,0,56,14,0,112,7,0,112, + 7,0,112,7,0,240,7,128,240,7,128,240,7,128,240,7, + 128,240,7,128,240,7,128,240,7,128,240,7,128,240,7,128, + 112,7,0,112,7,0,112,7,0,56,14,0,56,14,0,24, + 12,0,12,24,0,7,112,0,12,25,50,21,4,0,1,0, + 3,0,3,0,15,0,255,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,255,240, + 15,25,50,21,3,0,15,192,48,112,96,56,64,60,192,30, + 192,30,224,30,248,30,248,30,120,28,0,60,0,56,0,112, + 0,224,1,192,3,0,14,0,28,4,56,4,48,4,96,4, + 96,12,255,252,255,252,255,252,15,25,50,21,3,0,15,192, + 48,112,32,56,96,28,112,28,120,28,120,28,48,28,0,28, + 0,56,0,112,31,192,24,112,0,56,0,60,0,30,0,30, + 112,30,248,30,248,30,248,30,192,60,192,56,96,112,63,224, + 17,25,75,21,2,0,0,16,0,0,48,0,0,112,0,0, + 112,0,0,240,0,1,240,0,1,112,0,3,112,0,6,112, + 0,6,112,0,12,112,0,8,112,0,24,112,0,48,112,0, + 32,112,0,96,112,0,192,112,0,255,255,128,0,112,0,0, + 112,0,0,112,0,0,112,0,0,112,0,0,112,0,7,255, + 128,15,26,52,21,3,0,32,0,48,56,63,240,63,192,47, + 0,32,0,32,0,32,0,32,0,39,192,56,112,48,56,32, + 60,32,28,0,30,0,30,0,30,0,30,120,30,248,30,248, + 28,240,60,224,60,96,56,112,112,63,192,15,25,50,21,3, + 0,3,224,6,24,12,12,24,28,56,60,48,60,112,16,112, + 0,112,0,243,224,246,56,252,28,248,28,248,14,240,14,240, + 14,240,14,240,14,112,14,112,14,112,12,56,28,56,24,24, + 56,14,224,14,25,50,21,3,0,255,252,255,252,255,252,192, + 12,128,8,128,8,128,8,128,16,0,16,0,32,0,96,0, + 64,0,128,1,128,1,128,3,0,3,0,7,0,7,0,15, + 128,15,128,15,128,15,128,15,128,7,128,17,25,75,21,2, + 0,7,240,0,28,28,0,48,14,0,112,6,0,224,3,0, + 224,3,0,224,3,0,240,3,0,240,6,0,124,6,0,127, + 140,0,31,240,0,7,252,0,25,254,0,48,63,0,96,15, + 128,224,7,128,224,3,128,224,3,128,224,3,128,224,3,0, + 96,7,0,112,6,0,56,12,0,15,248,0,15,25,50,21, + 3,0,7,192,24,96,48,48,112,56,112,28,224,28,224,28, + 224,30,224,30,224,30,224,30,112,62,112,62,56,94,15,158, + 0,30,0,28,0,28,56,28,120,28,120,56,112,56,96,112, + 48,224,31,192}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--36-360-72-72-P-189-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 26, '1' Height: 25 + Calculated Max Values w=36 h=34 x= 4 y=20 dx=38 dy= 0 ascent=28 len=130 + Font Bounding box w=94 h=46 x=-29 y=-11 + Calculated Min Values x=-1 y=-8 dx= 0 dy= 0 + Pure Font ascent =26 descent=-8 + X Font ascent =27 descent=-8 + Max Font ascent =28 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr26r[6049] U8G_SECTION(".progmem.u8g_font_osr26r") = { + 0,94,46,227,245,26,7,96,17,82,32,127,248,28,248,27, + 248,0,0,0,10,0,0,4,25,25,10,3,0,96,240,240, + 240,240,240,240,240,96,96,96,96,96,96,96,96,96,96,32, + 64,96,240,240,240,96,8,7,7,14,3,20,195,195,195,195, + 195,195,66,19,25,75,25,3,0,1,130,0,1,130,0,1, + 2,0,1,6,0,3,6,0,3,6,0,3,6,0,255,255, + 224,2,4,0,2,4,0,2,12,0,6,12,0,6,12,0, + 6,12,0,6,8,0,4,8,0,4,8,0,255,255,224,12, + 24,0,12,24,0,12,16,0,8,16,0,8,48,0,8,48, + 0,24,48,0,16,31,62,21,2,253,2,64,2,64,2,64, + 7,224,26,92,50,70,34,66,98,67,98,71,98,79,98,79, + 114,78,58,64,63,64,31,192,7,240,3,252,2,126,2,78, + 34,71,242,67,242,67,226,67,226,67,194,66,66,70,34,76, + 30,112,3,192,2,64,2,64,24,25,75,30,3,0,30,0, + 48,33,0,32,97,128,96,192,192,64,192,192,192,192,192,128, + 192,193,0,192,195,0,192,194,0,64,134,0,97,132,0,34, + 8,0,28,24,112,0,16,132,0,49,134,0,33,2,0,67, + 3,0,195,3,0,131,3,1,131,3,1,3,3,3,3,3, + 6,1,6,4,1,134,12,0,252,24,25,75,28,2,0,1, + 240,0,3,8,0,6,12,0,12,4,0,12,4,0,12,12, + 0,14,8,0,14,24,0,7,48,0,7,192,0,3,193,255, + 7,192,56,13,224,48,24,240,48,48,112,32,112,120,96,112, + 60,64,224,28,128,224,15,128,224,15,0,224,7,0,240,3, + 129,112,15,194,120,25,228,31,224,252,2,7,7,8,3,20, + 192,192,192,192,192,192,64,8,33,33,14,4,250,3,6,12, + 12,24,16,48,48,96,96,96,192,192,192,192,192,192,192,192, + 192,192,64,96,96,96,48,48,24,24,12,6,6,3,8,33, + 33,13,2,250,192,96,96,48,24,24,12,12,6,6,6,2, + 3,3,3,3,3,3,3,3,2,6,6,6,4,12,12,24, + 24,48,96,192,128,13,15,30,18,3,10,7,0,7,0,7, + 0,195,24,226,56,114,112,10,128,7,0,15,128,122,240,242, + 120,226,56,7,0,7,0,7,0,30,31,124,34,2,250,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,255,255,255,252,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,0,3,0,0,0, + 3,0,0,0,3,0,0,0,3,0,0,5,11,11,10,2, + 250,112,248,248,120,8,8,8,16,16,32,64,9,2,4,13, + 2,8,255,128,255,128,4,5,5,10,3,0,96,240,240,240, + 96,12,34,68,16,2,249,0,16,0,48,0,48,0,32,0, + 96,0,96,0,64,0,192,0,192,0,128,0,128,1,128,1, + 0,1,0,3,0,2,0,2,0,6,0,4,0,4,0,12, + 0,8,0,8,0,24,0,24,0,16,0,48,0,48,0,32, + 0,96,0,96,0,64,0,192,0,192,0,17,25,75,21,2, + 0,3,224,0,14,56,0,28,28,0,24,12,0,56,14,0, + 112,7,0,112,7,0,112,7,0,240,7,128,240,7,128,240, + 7,128,240,7,128,240,7,128,240,7,128,240,7,128,240,7, + 128,240,7,128,112,7,0,112,7,0,112,7,0,56,14,0, + 56,14,0,24,12,0,12,24,0,7,112,0,12,25,50,21, + 4,0,1,0,3,0,3,0,15,0,255,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,7,0,7,0,7,0,7,0,7,0,7,0,7,0, + 7,0,255,240,15,25,50,21,3,0,15,192,48,112,96,56, + 64,60,192,30,192,30,224,30,248,30,248,30,120,28,0,60, + 0,56,0,112,0,224,1,192,3,0,14,0,28,4,56,4, + 48,4,96,4,96,12,255,252,255,252,255,252,15,25,50,21, + 3,0,15,192,48,112,32,56,96,28,112,28,120,28,120,28, + 48,28,0,28,0,56,0,112,31,192,24,112,0,56,0,60, + 0,30,0,30,112,30,248,30,248,30,248,30,192,60,192,56, + 96,112,63,224,17,25,75,21,2,0,0,16,0,0,48,0, + 0,112,0,0,112,0,0,240,0,1,240,0,1,112,0,3, + 112,0,6,112,0,6,112,0,12,112,0,8,112,0,24,112, + 0,48,112,0,32,112,0,96,112,0,192,112,0,255,255,128, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,7,255,128,15,26,52,21,3,0,32,0,48,56,63, + 240,63,192,47,0,32,0,32,0,32,0,32,0,39,192,56, + 112,48,56,32,60,32,28,0,30,0,30,0,30,0,30,120, + 30,248,30,248,28,240,60,224,60,96,56,112,112,63,192,15, + 25,50,21,3,0,3,224,6,24,12,12,24,28,56,60,48, + 60,112,16,112,0,112,0,243,224,246,56,252,28,248,28,248, + 14,240,14,240,14,240,14,240,14,112,14,112,14,112,12,56, + 28,56,24,24,56,14,224,14,25,50,21,3,0,255,252,255, + 252,255,252,192,12,128,8,128,8,128,8,128,16,0,16,0, + 32,0,96,0,64,0,128,1,128,1,128,3,0,3,0,7, + 0,7,0,15,128,15,128,15,128,15,128,15,128,7,128,17, + 25,75,21,2,0,7,240,0,28,28,0,48,14,0,112,6, + 0,224,3,0,224,3,0,224,3,0,240,3,0,240,6,0, + 124,6,0,127,140,0,31,240,0,7,252,0,25,254,0,48, + 63,0,96,15,128,224,7,128,224,3,128,224,3,128,224,3, + 128,224,3,0,96,7,0,112,6,0,56,12,0,15,248,0, + 15,25,50,21,3,0,7,192,24,96,48,48,112,56,112,28, + 224,28,224,28,224,30,224,30,224,30,224,30,112,62,112,62, + 56,94,15,158,0,30,0,28,0,28,56,28,120,28,120,56, + 112,56,96,112,48,224,31,192,4,17,17,10,3,0,96,240, + 240,240,96,0,0,0,0,0,0,0,96,240,240,240,96,5, + 23,23,11,3,250,112,248,248,248,112,0,0,0,0,0,0, + 0,112,240,248,120,8,8,8,16,16,32,64,28,29,116,34, + 3,251,0,0,0,112,0,0,1,192,0,0,7,0,0,0, + 28,0,0,0,112,0,0,1,224,0,0,3,128,0,0,14, + 0,0,0,56,0,0,0,224,0,0,3,128,0,0,15,0, + 0,0,28,0,0,0,112,0,0,0,192,0,0,0,112,0, + 0,0,28,0,0,0,7,0,0,0,1,192,0,0,0,240, + 0,0,0,56,0,0,0,14,0,0,0,3,128,0,0,0, + 224,0,0,0,56,0,0,0,14,0,0,0,7,0,0,0, + 1,192,0,0,0,112,30,8,32,34,2,6,255,255,255,252, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,255,255,255,252,28,29,116,34, + 3,251,224,0,0,0,56,0,0,0,14,0,0,0,3,128, + 0,0,0,224,0,0,0,112,0,0,0,28,0,0,0,7, + 0,0,0,1,192,0,0,0,112,0,0,0,28,0,0,0, + 15,0,0,0,3,128,0,0,0,224,0,0,0,48,0,0, + 0,224,0,0,3,128,0,0,14,0,0,0,56,0,0,0, + 240,0,0,1,192,0,0,7,0,0,0,28,0,0,0,112, + 0,0,1,192,0,0,7,0,0,0,30,0,0,0,56,0, + 0,0,224,0,0,0,13,25,50,17,2,0,15,128,48,224, + 64,112,192,56,192,56,248,56,248,56,112,56,0,112,0,224, + 1,192,3,128,3,0,4,0,12,0,8,64,8,64,8,128, + 7,0,0,0,3,0,7,128,7,128,7,128,3,0,26,27, + 108,30,2,0,0,4,0,0,0,251,224,0,3,0,56,0, + 6,0,12,0,12,0,6,0,24,0,3,0,48,15,1,0, + 48,49,241,128,96,96,241,128,96,192,224,128,193,192,224,192, + 193,128,224,192,193,128,192,192,195,128,192,192,195,1,192,192, + 195,1,192,192,195,1,129,128,195,3,129,128,67,7,129,0, + 99,7,130,0,97,137,132,0,32,240,248,0,48,0,0,0, + 24,0,0,0,12,0,16,0,7,0,48,0,1,255,192,0, + 25,26,104,28,2,0,0,8,0,0,0,12,0,0,0,28, + 0,0,0,28,0,0,0,30,0,0,0,62,0,0,0,46, + 0,0,0,47,0,0,0,103,0,0,0,103,0,0,0,71, + 128,0,0,195,128,0,0,195,128,0,0,131,192,0,1,129, + 192,0,1,129,192,0,3,1,224,0,3,255,224,0,2,0, + 224,0,6,0,240,0,6,0,112,0,6,0,112,0,12,0, + 120,0,12,0,120,0,30,0,120,0,255,195,255,128,20,26, + 78,25,3,0,255,252,0,28,3,0,28,1,192,28,1,192, + 28,0,224,28,0,224,28,0,224,28,0,224,28,0,224,28, + 1,192,28,1,128,28,3,0,31,252,0,28,7,0,28,1, + 192,28,1,224,28,0,224,28,0,240,28,0,240,28,0,240, + 28,0,240,28,0,240,28,1,224,28,1,192,28,3,128,255, + 254,0,19,26,78,24,3,1,3,252,32,14,6,96,28,3, + 224,24,1,224,56,0,224,120,0,224,112,0,96,112,0,96, + 240,0,96,240,0,32,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,112,0,32,112,0, + 32,120,0,96,56,0,64,56,0,64,28,0,128,12,0,128, + 6,3,0,3,222,0,24,26,78,29,3,0,255,255,0,28, + 1,192,28,0,112,28,0,56,28,0,56,28,0,28,28,0, + 30,28,0,30,28,0,14,28,0,15,28,0,15,28,0,15, + 28,0,15,28,0,15,28,0,15,28,0,15,28,0,15,28, + 0,14,28,0,30,28,0,30,28,0,28,28,0,56,28,0, + 56,28,0,112,28,1,192,255,255,0,21,26,78,25,2,0, + 255,255,248,14,0,120,14,0,56,14,0,24,14,0,24,14, + 0,8,14,0,8,14,4,8,14,4,0,14,4,0,14,12, + 0,14,12,0,15,252,0,14,12,0,14,4,0,14,4,0, + 14,4,8,14,4,8,14,0,8,14,0,8,14,0,24,14, + 0,24,14,0,56,14,0,56,14,0,248,255,255,248,20,26, + 78,24,2,0,255,255,240,14,0,240,14,0,112,14,0,48, + 14,0,48,14,0,16,14,0,16,14,4,16,14,4,0,14, + 4,0,14,12,0,14,12,0,15,252,0,14,12,0,14,12, + 0,14,4,0,14,4,0,14,4,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,255, + 224,0,22,27,81,26,3,0,0,32,0,3,220,32,6,7, + 32,12,3,224,24,1,224,56,0,224,56,0,96,112,0,96, + 112,0,96,112,0,32,240,0,32,240,0,0,240,0,0,240, + 0,0,240,15,252,240,0,224,240,0,224,240,0,224,240,0, + 224,112,0,224,112,0,224,56,0,224,56,1,224,24,1,32, + 12,3,32,6,6,32,3,252,32,24,26,78,28,2,0,255, + 195,255,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,15,255,248,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,255,195,255,10,26,52, + 14,2,0,255,192,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,14,0,14,0,14,0,14,0,14,0,14, + 0,14,0,14,0,255,192,16,26,52,19,2,0,3,255,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,112,56,248,56,248,56,240,56,192,48,192,112,96,96,63, + 192,24,26,78,28,2,0,255,199,254,14,1,240,14,0,224, + 14,0,192,14,1,128,14,3,0,14,6,0,14,12,0,14, + 24,0,14,24,0,14,56,0,14,124,0,14,188,0,15,62, + 0,15,30,0,14,31,0,14,15,0,14,15,128,14,7,128, + 14,7,192,14,3,192,14,1,224,14,1,240,14,0,240,14, + 0,248,255,199,255,20,26,78,24,2,0,255,224,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,16,14,0, + 16,14,0,32,14,0,48,14,0,48,14,0,48,14,0,112, + 14,0,240,14,3,240,255,255,240,26,26,104,30,2,0,255, + 0,31,192,15,0,30,0,15,128,30,0,15,128,46,0,11, + 128,46,0,11,128,46,0,11,192,110,0,9,192,78,0,9, + 192,78,0,9,224,78,0,8,224,142,0,8,224,142,0,8, + 224,142,0,8,241,142,0,8,113,14,0,8,113,14,0,8, + 121,14,0,8,59,14,0,8,58,14,0,8,58,14,0,8, + 30,14,0,8,28,14,0,8,28,14,0,8,12,14,0,28, + 12,14,0,255,136,255,192,25,26,104,28,2,0,254,0,255, + 128,15,0,28,0,15,128,8,0,15,128,8,0,11,192,8, + 0,11,192,8,0,9,224,8,0,8,240,8,0,8,240,8, + 0,8,120,8,0,8,60,8,0,8,60,8,0,8,30,8, + 0,8,30,8,0,8,15,8,0,8,7,136,0,8,7,136, + 0,8,3,200,0,8,1,232,0,8,1,232,0,8,0,248, + 0,8,0,120,0,8,0,120,0,8,0,56,0,28,0,24, + 0,255,128,24,0,21,27,81,26,3,0,0,32,0,3,220, + 0,6,3,0,12,1,128,28,1,192,56,0,224,56,0,224, + 120,0,240,112,0,112,112,0,112,240,0,120,240,0,120,240, + 0,120,240,0,120,240,0,120,240,0,120,240,0,120,240,0, + 120,112,0,112,112,0,112,120,0,240,56,0,224,56,0,224, + 28,1,192,12,1,128,6,3,0,3,254,0,21,26,78,25, + 2,0,255,255,0,14,1,192,14,0,224,14,0,240,14,0, + 120,14,0,120,14,0,120,14,0,120,14,0,120,14,0,112, + 14,0,240,14,0,224,14,1,192,15,254,0,14,0,0,14, + 0,0,14,0,0,14,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,255,224,0, + 21,33,99,26,3,250,0,32,0,3,220,0,6,3,0,12, + 1,128,28,1,192,56,0,224,56,0,224,120,0,240,112,0, + 112,112,0,112,240,0,120,240,0,120,240,0,120,240,0,120, + 240,0,120,240,0,120,240,0,120,240,0,120,112,0,112,112, + 0,112,120,0,240,56,112,224,57,152,224,29,13,192,13,13, + 128,7,15,8,3,158,8,0,110,8,0,14,8,0,14,24, + 0,7,176,0,7,240,0,3,192,22,26,78,25,2,0,255, + 255,0,14,3,192,14,1,224,14,0,240,14,0,240,14,0, + 240,14,0,240,14,0,240,14,1,224,14,1,192,14,7,128, + 15,252,0,14,6,0,14,7,0,14,3,128,14,3,128,14, + 3,128,14,3,192,14,3,192,14,3,192,14,3,196,14,1, + 196,14,1,196,14,1,236,14,1,248,255,224,240,17,26,78, + 22,3,1,31,227,0,48,51,0,96,31,0,192,15,0,192, + 7,0,192,3,0,192,3,0,224,3,0,240,1,0,120,0, + 0,127,0,0,63,192,0,31,248,0,7,252,0,1,254,0, + 128,63,0,128,15,128,128,3,128,192,3,128,192,1,128,192, + 1,128,224,1,128,240,1,0,248,3,0,140,6,0,135,252, + 0,21,26,78,26,3,0,255,255,248,240,112,120,224,112,56, + 192,112,24,192,112,24,192,112,24,128,112,8,128,112,8,128, + 112,8,128,112,8,0,112,0,0,112,0,0,112,0,0,112, + 0,0,112,0,0,112,0,0,112,0,0,112,0,0,112,0, + 0,112,0,0,112,0,0,112,0,0,112,0,0,112,0,0, + 112,0,7,255,128,25,26,104,29,2,0,255,192,255,128,14, + 0,14,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,14, + 0,4,0,14,0,4,0,14,0,4,0,14,0,4,0,6, + 0,8,0,7,0,8,0,3,0,16,0,1,192,32,0,0, + 127,192,0,25,26,104,28,2,0,255,241,255,128,15,0,60, + 0,15,0,24,0,7,128,24,0,7,128,16,0,3,128,48, + 0,3,192,48,0,3,192,48,0,1,192,32,0,1,224,96, + 0,1,224,96,0,0,224,64,0,0,240,192,0,0,240,192, + 0,0,112,128,0,0,113,128,0,0,121,128,0,0,57,0, + 0,0,59,0,0,0,63,0,0,0,30,0,0,0,30,0, + 0,0,14,0,0,0,14,0,0,0,12,0,0,0,4,0, + 0,36,26,130,38,1,0,255,231,255,63,240,15,0,248,7, + 128,15,0,120,3,0,7,0,120,3,0,7,128,120,6,0, + 7,128,248,6,0,3,128,252,6,0,3,128,252,4,0,3, + 192,156,12,0,1,193,156,12,0,1,193,158,12,0,1,225, + 14,24,0,1,227,14,24,0,0,227,14,24,0,0,227,15, + 16,0,0,242,7,48,0,0,118,7,48,0,0,118,7,32, + 0,0,116,3,224,0,0,124,3,224,0,0,60,3,192,0, + 0,60,1,192,0,0,56,1,192,0,0,24,1,192,0,0, + 24,1,128,0,0,16,0,128,0,24,26,78,27,2,0,255, + 227,255,15,128,112,7,128,96,7,192,96,3,192,192,1,224, + 128,1,225,128,0,227,0,0,242,0,0,118,0,0,124,0, + 0,56,0,0,60,0,0,60,0,0,62,0,0,79,0,0, + 207,0,0,135,128,1,135,128,1,3,192,3,3,192,6,1, + 224,6,0,224,14,0,240,30,0,240,255,199,255,24,26,78, + 27,2,0,255,225,255,31,0,56,15,0,48,7,128,48,7, + 128,32,3,192,96,3,192,64,1,224,128,0,224,128,0,241, + 0,0,113,0,0,122,0,0,58,0,0,60,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,1,255, + 224,19,26,78,23,2,0,63,255,224,60,3,192,56,3,192, + 112,7,128,96,15,0,96,15,0,64,30,0,64,30,0,64, + 60,0,0,120,0,0,120,0,0,240,0,0,224,0,1,224, + 0,3,192,0,3,192,0,7,128,32,7,0,32,15,0,32, + 30,0,96,30,0,96,60,0,224,56,0,224,120,1,224,240, + 3,192,255,255,192,7,33,33,14,4,249,254,240,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,240,254,12,34,68,16, + 2,249,128,0,192,0,64,0,64,0,96,0,32,0,32,0, + 48,0,16,0,16,0,24,0,8,0,8,0,12,0,4,0, + 4,0,6,0,6,0,2,0,3,0,3,0,1,0,1,128, + 1,128,0,128,0,128,0,192,0,64,0,64,0,96,0,32, + 0,32,0,48,0,16,7,33,33,15,3,249,254,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,14,254,15,13,26, + 21,3,12,1,0,3,128,3,128,6,192,4,64,12,96,24, + 48,16,16,48,24,96,8,96,12,192,6,128,2,19,1,3, + 19,0,250,255,255,224,6,6,6,16,3,19,192,224,112,48, + 24,12,16,17,34,19,2,0,15,128,48,224,96,112,96,112, + 120,112,120,112,0,112,1,240,30,112,112,112,96,112,224,112, + 224,113,224,241,225,113,113,126,62,60,16,26,52,18,0,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,112,29,140,29,14,30,6,30,7,28,7,28,7, + 28,7,28,7,28,7,28,7,28,7,28,7,30,6,30,14, + 19,12,16,240,12,17,34,16,2,0,15,128,24,96,48,48, + 112,48,96,112,224,112,224,112,224,0,224,0,224,0,224,0, + 224,0,96,16,112,16,48,32,24,64,15,128,16,26,52,19, + 2,0,1,248,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,14,56,57,184,48,184,112,120,96,120,224,56, + 224,56,224,56,224,56,224,56,224,56,224,56,96,56,112,120, + 48,120,48,248,15,63,13,17,34,17,2,0,15,128,24,224, + 48,96,112,112,96,48,224,56,224,56,255,248,224,0,224,0, + 224,0,224,8,112,16,112,16,48,32,24,96,7,128,12,26, + 52,12,1,0,7,192,12,32,28,48,56,112,56,112,56,0, + 56,0,56,0,56,0,255,128,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,0,56,0, + 56,0,56,0,56,0,255,128,17,25,75,20,2,248,7,199, + 0,28,117,128,56,59,128,112,31,128,112,28,0,112,28,0, + 112,28,0,112,28,0,56,56,0,28,112,0,7,192,0,56, + 0,0,64,0,0,64,0,0,64,0,0,127,224,0,63,248, + 0,14,28,0,112,2,0,192,2,0,192,2,0,192,2,0, + 224,4,0,112,8,0,15,240,0,18,26,78,21,1,0,252, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,124,0,28,142,0, + 29,7,0,30,7,0,30,7,0,28,7,0,28,7,0,28, + 7,0,28,7,0,28,7,0,28,7,0,28,7,0,28,7, + 0,28,7,0,28,7,0,28,7,0,255,31,192,7,25,25, + 10,2,0,48,120,120,48,0,0,0,0,248,56,56,56,56, + 56,56,56,56,56,56,56,56,56,56,56,254,9,34,68,11, + 255,248,1,128,3,128,3,128,1,128,0,0,0,0,0,0, + 0,0,0,0,31,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,67,128,227,128,227,0, + 195,0,70,0,60,0,17,26,78,19,1,0,252,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,127,0,28,24,0,28,16,0, + 28,48,0,28,32,0,28,64,0,28,128,0,29,192,0,29, + 192,0,30,224,0,28,112,0,28,112,0,28,56,0,28,60, + 0,28,28,0,28,30,0,255,127,128,9,26,52,11,1,0, + 252,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,255,128,25,17,68,29,2,0,248,240,120,0,57,56, + 156,0,58,29,14,0,60,30,14,0,60,30,14,0,56,28, + 14,0,56,28,14,0,56,28,14,0,56,28,14,0,56,28, + 14,0,56,28,14,0,56,28,14,0,56,28,14,0,56,28, + 14,0,56,28,14,0,56,28,14,0,254,127,63,128,17,17, + 51,21,2,0,248,248,0,57,28,0,58,14,0,60,14,0, + 60,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 14,0,56,14,0,56,14,0,56,14,0,56,14,0,56,14, + 0,56,14,0,254,63,128,14,17,34,18,2,0,7,128,24, + 96,48,48,112,56,112,24,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,112,24,112,56,48,48,24,96,7,128,16, + 25,50,19,1,248,252,240,29,140,31,14,30,6,30,7,28, + 7,28,7,28,7,28,7,28,7,28,7,28,7,28,7,30, + 6,30,14,29,12,28,240,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,255,128,16,25,50,18,2,248,15,8,56, + 136,48,216,112,88,96,120,224,56,224,56,224,56,224,56,224, + 56,224,56,224,56,96,56,112,120,48,120,48,184,15,56,0, + 56,0,56,0,56,0,56,0,56,0,56,0,56,1,255,12, + 17,34,15,2,0,248,224,57,16,58,48,58,112,60,112,60, + 0,60,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,0,254,0,12,17,34,16,2,0,62,64,97, + 64,192,192,192,64,192,64,224,64,120,0,127,0,31,192,7, + 224,128,240,192,112,192,48,224,48,224,48,152,96,135,192,11, + 24,48,13,1,0,8,0,8,0,8,0,8,0,24,0,24, + 0,56,0,255,192,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,0,56,32,56,32,56,32,56, + 96,31,192,15,128,17,17,51,20,1,0,248,62,0,56,14, + 0,56,14,0,56,14,0,56,14,0,56,14,0,56,14,0, + 56,14,0,56,14,0,56,14,0,56,14,0,56,14,0,56, + 30,0,56,30,0,56,46,0,28,78,0,15,143,128,18,17, + 51,19,0,0,255,31,192,28,7,0,28,6,0,12,4,0, + 14,4,0,14,4,0,7,8,0,7,8,0,3,8,0,3, + 144,0,1,144,0,1,208,0,1,224,0,0,224,0,0,224, + 0,0,64,0,0,64,0,27,17,68,28,0,0,255,63,207, + 224,28,15,3,0,28,7,3,0,12,7,2,0,14,7,2, + 0,14,15,130,0,7,11,132,0,7,9,132,0,3,137,196, + 0,3,145,200,0,1,144,200,0,1,208,232,0,1,224,240, + 0,0,224,112,0,0,224,112,0,0,64,96,0,0,64,32, + 0,16,17,34,19,2,0,254,126,60,56,28,48,28,32,14, + 64,14,64,7,128,3,128,3,128,3,192,3,192,4,224,8, + 96,8,112,16,56,48,56,252,255,18,25,75,20,1,248,255, + 31,192,28,6,0,28,6,0,12,4,0,14,4,0,14,4, + 0,6,8,0,7,8,0,7,8,0,3,16,0,3,144,0, + 3,144,0,1,240,0,1,224,0,1,224,0,0,224,0,0, + 192,0,0,64,0,0,192,0,0,128,0,112,128,0,113,128, + 0,113,0,0,115,0,0,60,0,0,12,17,34,15,1,0, + 255,240,224,112,192,224,128,224,129,192,131,128,131,128,7,0, + 7,0,14,0,28,16,28,16,56,16,56,16,112,48,224,112, + 255,240,8,33,33,15,3,249,3,4,8,24,24,24,24,28, + 28,28,12,12,12,12,8,24,224,24,8,12,12,12,12,28, + 28,28,24,24,24,24,8,4,3,2,34,34,10,4,249,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,8,33,33,14,3,249,192,32,16,24,24,24,24,24,56, + 56,48,48,48,48,16,24,7,24,16,48,48,48,48,56,56, + 24,24,24,24,24,16,32,192,20,6,18,24,2,6,62,0, + 32,127,192,16,135,248,16,128,255,48,128,63,224,96,7,192, + 255}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--41-410-72-72-P-216-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 29, '1' Height: 28 + Calculated Max Values w=41 h=39 x= 8 y=23 dx=44 dy= 0 ascent=39 len=174 + Font Bounding box w=107 h=51 x=-33 y=-12 + Calculated Min Values x=-1 y=-11 dx= 0 dy= 0 + Pure Font ascent =29 descent=-9 + X Font ascent =30 descent=-9 + Max Font ascent =39 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr29[16232] U8G_SECTION(".progmem.u8g_font_osr29") = { + 0,107,51,223,244,29,9,148,21,166,32,255,247,39,245,30, + 247,0,0,0,11,0,0,5,28,28,11,3,0,112,248,248, + 248,248,248,248,248,112,112,112,112,112,112,112,112,32,32,32, + 32,32,32,0,112,248,248,248,112,9,8,16,17,4,22,227, + 128,227,128,227,128,227,128,193,128,65,128,65,0,65,0,22, + 28,84,28,3,0,0,192,192,0,192,192,0,192,192,0,192, + 128,0,129,128,1,129,128,1,129,128,1,129,128,255,255,252, + 255,255,252,1,129,0,3,3,0,3,3,0,3,3,0,3, + 3,0,3,3,0,2,2,0,6,6,0,255,255,252,255,255, + 252,6,6,0,6,6,0,6,4,0,4,12,0,12,12,0, + 12,12,0,12,12,0,12,12,0,18,34,102,24,3,253,1, + 16,0,1,16,0,1,16,0,3,248,0,13,22,0,25,17, + 0,49,16,128,97,16,192,97,16,192,97,17,192,97,19,192, + 97,19,192,113,19,128,61,16,0,63,144,0,31,240,0,15, + 252,0,3,254,0,1,127,0,1,31,128,1,19,128,33,17, + 192,113,16,192,249,16,192,241,16,192,241,16,192,225,16,128, + 97,17,128,97,17,0,49,19,0,15,188,0,1,240,0,1, + 16,0,1,16,0,28,28,112,36,4,0,31,0,6,0,49, + 128,4,0,96,192,12,0,96,192,8,0,224,224,24,0,224, + 224,48,0,224,224,32,0,224,224,96,0,224,224,64,0,224, + 224,128,0,96,193,128,0,96,193,0,0,49,131,0,0,31, + 6,0,0,0,4,15,0,0,12,48,128,0,8,48,192,0, + 16,96,96,0,48,96,96,0,32,224,112,0,96,224,112,0, + 64,224,112,0,128,224,112,1,128,224,112,1,0,96,96,2, + 0,96,96,6,0,48,192,4,0,31,128,28,28,112,32,2, + 0,0,248,0,0,3,140,0,0,7,4,0,0,6,2,0, + 0,14,2,0,0,14,2,0,0,14,6,0,0,14,4,0, + 0,15,12,0,0,7,24,0,0,7,176,0,0,3,224,0, + 0,1,224,63,240,3,224,7,128,6,240,7,0,12,120,6, + 0,24,124,6,0,48,60,4,0,112,30,12,0,112,31,24, + 0,240,15,144,0,240,7,176,0,240,7,224,0,240,3,224, + 0,240,3,240,32,120,6,248,32,60,12,124,192,31,240,63, + 128,3,8,8,10,4,22,224,224,224,224,192,64,64,64,9, + 37,74,15,4,249,1,128,3,0,6,0,14,0,12,0,24, + 0,24,0,48,0,48,0,96,0,96,0,96,0,96,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,96,0,96,0,96,0,96,0,48,0,48,0,56, + 0,24,0,12,0,12,0,6,0,3,0,3,128,1,128,9, + 37,74,15,2,249,192,0,96,0,48,0,56,0,24,0,12, + 0,12,0,6,0,6,0,3,0,3,0,3,0,3,0,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,3,128,3,0,3,0,3,0,6,0,6,0,14, + 0,12,0,24,0,24,0,48,0,96,0,224,0,192,0,15, + 17,34,21,3,11,3,128,3,192,3,128,3,128,225,142,241, + 30,249,62,29,112,3,128,3,128,29,112,249,62,241,30,227, + 142,3,128,3,192,3,128,35,34,170,39,2,250,0,0,192, + 0,0,0,0,192,0,0,0,0,192,0,0,0,0,192,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,192,0,0,0,0,192,0,0,0,0,192,0,0,0,0, + 192,0,0,0,0,192,0,0,0,0,192,0,0,255,255,255, + 255,224,255,255,255,255,224,0,0,192,0,0,0,0,192,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,192,0,0,0,0,192,0,0,0,0,192,0,0,0,0, + 192,0,0,0,0,192,0,0,0,0,192,0,0,0,0,192, + 0,0,0,0,192,0,0,5,12,12,11,3,249,112,240,248, + 248,24,8,8,16,16,32,32,64,10,2,4,14,2,9,255, + 192,255,192,5,5,5,11,3,0,112,248,248,248,112,14,38, + 76,18,2,248,0,12,0,12,0,12,0,8,0,24,0,24, + 0,16,0,48,0,48,0,32,0,96,0,96,0,64,0,192, + 0,192,0,128,1,128,1,128,1,0,3,0,3,0,2,0, + 6,0,6,0,4,0,12,0,12,0,8,0,24,0,24,0, + 16,0,48,0,48,0,32,0,96,0,96,0,64,0,192,0, + 20,28,84,24,2,0,1,248,0,7,12,0,12,7,0,28, + 3,128,24,1,128,56,1,192,56,1,192,112,0,224,112,0, + 224,112,0,224,240,0,240,240,0,240,240,0,240,240,0,240, + 240,0,240,240,0,240,240,0,240,240,0,240,240,0,240,112, + 0,224,112,0,224,112,0,224,56,1,192,56,1,192,24,1, + 128,12,3,0,6,6,0,3,252,0,14,28,56,24,5,0, + 1,128,1,128,3,128,7,128,255,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,255,252,17,28,84,24,3,0,7,224, + 0,24,60,0,32,30,0,64,15,0,192,15,0,192,7,128, + 192,7,128,240,7,128,252,7,128,252,7,128,124,7,128,24, + 15,0,0,14,0,0,28,0,0,56,0,0,112,0,0,224, + 0,1,192,0,3,0,0,6,0,0,12,0,128,24,0,128, + 48,0,128,48,1,128,112,1,128,127,255,128,127,255,128,127, + 255,128,17,28,84,24,3,0,15,224,0,48,56,0,96,28, + 0,96,14,0,240,15,0,248,15,0,248,15,0,120,15,0, + 0,15,0,0,15,0,0,14,0,0,28,0,28,56,0,31, + 224,0,0,60,0,0,30,0,0,15,0,0,7,0,0,7, + 128,0,7,128,120,7,128,248,7,128,248,7,128,248,7,0, + 192,15,0,192,14,0,96,28,0,31,240,0,19,28,84,24, + 2,0,0,12,0,0,12,0,0,28,0,0,60,0,0,60, + 0,0,124,0,0,252,0,0,252,0,1,188,0,3,60,0, + 3,60,0,6,60,0,12,60,0,12,60,0,24,60,0,48, + 60,0,32,60,0,96,60,0,192,60,0,255,255,224,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,7,255,224,17,29,87,24,4,0,0,2,0,120, + 12,0,127,248,0,127,240,0,111,192,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,103,224,0,104,60,0, + 112,30,0,96,14,0,96,15,0,96,7,0,0,7,128,0, + 7,128,0,7,128,16,7,128,120,7,128,252,7,128,252,7, + 128,248,15,0,224,15,0,224,14,0,96,28,0,48,56,0, + 31,240,0,17,28,84,24,3,0,1,248,0,3,12,0,12, + 6,0,28,7,0,24,15,0,56,31,0,48,31,0,112,14, + 0,112,0,0,112,0,0,240,0,0,241,240,0,246,28,0, + 252,14,0,248,7,0,248,7,0,240,7,128,240,7,128,240, + 7,128,240,7,128,112,7,128,112,7,128,112,7,0,48,7, + 0,56,7,0,24,14,0,12,28,0,7,248,0,16,28,56, + 24,4,0,255,255,255,255,255,255,192,3,128,2,128,2,128, + 6,128,4,0,12,0,8,0,24,0,48,0,32,0,96,0, + 192,0,192,1,128,3,128,3,128,7,128,7,128,7,128,15, + 192,15,192,15,192,15,192,15,192,7,192,20,28,84,24,2, + 0,3,248,0,14,14,0,56,7,0,112,3,128,112,1,192, + 240,1,192,240,1,192,240,1,192,240,1,192,248,1,128,126, + 3,128,127,131,0,63,252,0,15,252,0,7,255,0,24,127, + 192,48,15,224,112,3,224,224,1,240,224,0,240,224,0,240, + 224,0,224,224,0,224,224,0,224,112,1,192,48,1,128,28, + 7,0,15,252,0,17,28,84,24,3,0,7,224,0,12,56, + 0,56,12,0,56,14,0,112,14,0,112,7,0,240,7,0, + 240,7,0,240,7,128,240,7,128,240,7,128,240,7,128,112, + 15,128,112,15,128,56,27,128,28,51,128,7,199,128,0,7, + 128,0,7,0,0,7,0,56,7,0,124,7,0,124,14,0, + 120,14,0,112,12,0,112,24,0,48,48,0,31,224,0,5, + 19,19,11,3,0,112,248,248,248,112,0,0,0,0,0,0, + 0,0,0,112,248,248,248,112,5,26,26,11,3,249,112,248, + 248,248,112,0,0,0,0,0,0,0,0,0,112,240,248,120, + 8,8,8,16,16,32,96,64,32,34,136,39,3,250,0,0, + 0,2,0,0,0,7,0,0,0,28,0,0,0,112,0,0, + 1,224,0,0,7,128,0,0,30,0,0,0,120,0,0,1, + 224,0,0,3,128,0,0,14,0,0,0,56,0,0,0,240, + 0,0,3,192,0,0,15,0,0,0,60,0,0,0,240,0, + 0,0,224,0,0,0,120,0,0,0,30,0,0,0,7,128, + 0,0,1,192,0,0,0,112,0,0,0,28,0,0,0,7, + 0,0,0,3,192,0,0,0,240,0,0,0,60,0,0,0, + 15,0,0,0,3,128,0,0,0,224,0,0,0,56,0,0, + 0,14,0,0,0,6,35,10,50,39,2,6,255,255,255,255, + 224,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,255,255,255,255,224,255,255,255,255,224,32,34, + 136,39,3,250,64,0,0,0,224,0,0,0,56,0,0,0, + 14,0,0,0,7,128,0,0,1,224,0,0,0,120,0,0, + 0,30,0,0,0,7,128,0,0,1,192,0,0,0,112,0, + 0,0,28,0,0,0,15,0,0,0,3,192,0,0,0,240, + 0,0,0,60,0,0,0,15,0,0,0,7,0,0,0,30, + 0,0,0,120,0,0,1,224,0,0,3,128,0,0,14,0, + 0,0,56,0,0,0,224,0,0,3,192,0,0,15,0,0, + 0,60,0,0,0,240,0,0,1,192,0,0,7,0,0,0, + 28,0,0,0,112,0,0,0,96,0,0,0,15,28,56,20, + 3,0,15,192,48,112,64,60,192,28,192,30,248,30,248,30, + 112,30,0,28,0,60,0,120,0,240,1,192,3,128,6,0, + 12,0,8,32,8,32,8,32,12,64,7,128,0,0,0,0, + 3,128,7,192,7,192,7,192,3,128,29,29,116,33,2,1, + 0,63,248,0,1,192,14,0,3,0,3,0,6,0,1,128, + 12,0,0,192,24,7,206,96,48,12,124,32,48,56,60,48, + 96,112,60,16,96,224,56,24,96,224,56,24,193,192,56,24, + 193,192,56,24,193,192,48,24,195,192,112,24,195,128,112,24, + 195,128,112,48,195,128,224,48,195,128,224,48,67,129,224,96, + 97,130,224,192,97,196,225,128,48,120,62,0,48,0,0,0, + 24,0,0,0,12,0,0,0,6,0,4,0,3,128,28,0, + 0,127,240,0,29,29,116,32,2,0,0,2,0,0,0,6, + 0,0,0,7,0,0,0,7,0,0,0,15,128,0,0,15, + 128,0,0,15,128,0,0,31,192,0,0,19,192,0,0,51, + 192,0,0,49,224,0,0,33,224,0,0,97,224,0,0,96, + 240,0,0,64,240,0,0,192,240,0,0,192,120,0,0,128, + 120,0,1,128,120,0,1,255,252,0,1,0,60,0,3,0, + 28,0,3,0,30,0,6,0,30,0,6,0,15,0,6,0, + 15,0,14,0,15,0,30,0,15,128,255,224,255,248,23,29, + 87,28,3,0,255,255,128,15,0,224,15,0,120,15,0,60, + 15,0,28,15,0,28,15,0,30,15,0,30,15,0,28,15, + 0,28,15,0,56,15,0,48,15,0,224,15,255,0,15,0, + 224,15,0,112,15,0,56,15,0,60,15,0,30,15,0,30, + 15,0,30,15,0,30,15,0,30,15,0,30,15,0,60,15, + 0,60,15,0,120,15,0,224,255,255,128,22,29,87,28,3, + 1,1,254,8,7,3,152,12,0,248,28,0,248,24,0,120, + 56,0,56,120,0,56,112,0,24,112,0,24,240,0,8,240, + 0,8,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,112,0,12,112,0,12, + 120,0,12,56,0,24,56,0,24,28,0,24,12,0,48,6, + 0,96,3,0,192,0,255,128,27,29,116,32,3,0,255,255, + 192,0,15,0,112,0,15,0,28,0,15,0,14,0,15,0, + 7,0,15,0,7,128,15,0,3,128,15,0,3,192,15,0, + 3,192,15,0,1,192,15,0,1,224,15,0,1,224,15,0, + 1,224,15,0,1,224,15,0,1,224,15,0,1,224,15,0, + 1,224,15,0,1,224,15,0,1,224,15,0,3,192,15,0, + 3,192,15,0,3,192,15,0,3,128,15,0,7,0,15,0, + 7,0,15,0,14,0,15,0,28,0,15,0,112,0,255,255, + 192,0,23,29,87,29,3,0,255,255,254,15,0,62,15,0, + 14,15,0,14,15,0,6,15,0,6,15,0,2,15,0,2, + 15,1,2,15,1,0,15,1,0,15,1,0,15,3,0,15, + 7,0,15,255,0,15,7,0,15,3,0,15,1,0,15,1, + 2,15,1,2,15,1,2,15,0,2,15,0,6,15,0,6, + 15,0,6,15,0,14,15,0,30,15,0,126,255,255,254,23, + 29,87,28,3,0,255,255,254,15,0,62,15,0,14,15,0, + 14,15,0,6,15,0,6,15,0,2,15,0,2,15,1,2, + 15,1,0,15,1,0,15,1,0,15,3,0,15,7,0,15, + 255,0,15,7,0,15,3,0,15,1,0,15,1,0,15,1, + 0,15,1,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,255,240,0,25,30,120,29, + 3,0,0,16,0,0,1,254,8,0,6,3,152,0,12,0, + 248,0,28,0,248,0,24,0,120,0,56,0,56,0,56,0, + 56,0,112,0,24,0,112,0,24,0,112,0,8,0,240,0, + 8,0,240,0,0,0,240,0,0,0,240,0,0,0,240,7, + 255,128,240,0,120,0,240,0,120,0,240,0,120,0,240,0, + 120,0,112,0,120,0,112,0,120,0,112,0,120,0,56,0, + 120,0,56,0,120,0,24,0,248,0,28,0,200,0,12,1, + 136,0,6,3,8,0,1,254,8,0,28,29,116,33,3,0, + 255,240,255,240,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,255,255,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 255,240,255,240,12,29,58,17,3,0,255,240,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,255,240,19,29,87,22,2,0,1,255,224,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,120,30,0,248,30,0,248,30,0,248, + 30,0,192,28,0,192,28,0,64,24,0,96,48,0,31,224, + 0,27,29,116,32,3,0,255,241,255,192,15,0,126,0,15, + 0,60,0,15,0,56,0,15,0,112,0,15,0,96,0,15, + 0,192,0,15,1,128,0,15,3,0,0,15,6,0,0,15, + 14,0,0,15,30,0,0,15,63,0,0,15,111,0,0,15, + 207,128,0,15,135,128,0,15,7,192,0,15,3,192,0,15, + 3,224,0,15,3,224,0,15,1,240,0,15,1,240,0,15, + 0,248,0,15,0,248,0,15,0,124,0,15,0,124,0,15, + 0,62,0,15,0,63,0,255,241,255,224,23,29,87,28,3, + 0,255,248,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,2,15,0,2,15,0,6, + 15,0,6,15,0,6,15,0,14,15,0,14,15,0,30,15, + 0,62,15,0,254,255,255,254,30,29,116,35,3,0,255,128, + 3,252,15,128,7,192,15,192,7,192,15,192,7,192,15,192, + 15,192,13,192,11,192,13,224,11,192,13,224,11,192,12,224, + 27,192,12,240,19,192,12,240,19,192,12,112,51,192,12,112, + 35,192,12,120,35,192,12,120,35,192,12,56,99,192,12,60, + 67,192,12,60,67,192,12,28,195,192,12,28,131,192,12,30, + 131,192,12,14,131,192,12,15,131,192,12,15,3,192,12,15, + 3,192,12,7,3,192,12,6,3,192,30,6,3,192,255,194, + 63,252,28,29,116,32,3,0,255,0,63,240,15,128,7,128, + 15,128,3,0,15,192,3,0,15,224,3,0,13,224,3,0, + 13,240,3,0,12,248,3,0,12,120,3,0,12,124,3,0, + 12,60,3,0,12,30,3,0,12,31,3,0,12,15,3,0, + 12,7,131,0,12,7,131,0,12,3,195,0,12,3,227,0, + 12,1,227,0,12,0,243,0,12,0,251,0,12,0,123,0, + 12,0,63,0,12,0,63,0,12,0,31,0,12,0,31,0, + 12,0,15,0,30,0,7,0,255,192,7,0,24,29,87,29, + 3,1,0,255,0,3,0,192,6,0,96,12,0,48,28,0, + 56,56,0,28,56,0,28,120,0,30,112,0,14,112,0,14, + 240,0,15,240,0,15,240,0,15,240,0,15,240,0,15,240, + 0,15,240,0,15,240,0,15,240,0,15,112,0,14,112,0, + 14,120,0,30,56,0,28,56,0,28,28,0,56,12,0,48, + 6,0,96,3,0,192,0,255,0,23,29,87,28,3,0,255, + 255,128,15,0,224,15,0,120,15,0,60,15,0,60,15,0, + 30,15,0,30,15,0,30,15,0,30,15,0,30,15,0,60, + 15,0,60,15,0,120,15,0,224,15,255,128,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,255,248,0,24,36,108,29,3,250,0,255,0,3, + 0,192,6,0,96,12,0,48,28,0,56,56,0,28,56,0, + 28,120,0,30,112,0,14,112,0,14,240,0,15,240,0,15, + 240,0,15,240,0,15,240,0,15,240,0,15,240,0,15,240, + 0,15,240,0,15,112,0,14,120,0,30,120,0,30,56,60, + 28,56,99,28,28,195,56,14,193,184,6,193,240,3,193,225, + 0,247,193,0,9,193,0,1,193,0,1,195,0,1,226,0, + 1,254,0,0,252,0,0,56,25,29,116,29,3,0,255,255, + 128,0,15,1,240,0,15,0,120,0,15,0,120,0,15,0, + 60,0,15,0,60,0,15,0,60,0,15,0,60,0,15,0, + 60,0,15,0,120,0,15,0,240,0,15,1,224,0,15,255, + 0,0,15,3,128,0,15,1,192,0,15,0,224,0,15,0, + 224,0,15,0,240,0,15,0,240,0,15,0,240,0,15,0, + 240,0,15,0,240,0,15,0,248,128,15,0,120,128,15,0, + 120,128,15,0,121,128,15,0,127,0,15,0,63,0,255,248, + 30,0,19,29,87,25,4,1,15,240,192,48,28,192,96,15, + 192,96,7,192,192,3,192,192,1,192,192,1,192,192,0,192, + 224,0,192,240,0,192,120,0,64,127,0,0,63,192,0,31, + 248,0,15,254,0,1,255,128,128,127,128,128,15,192,128,3, + 224,128,1,224,192,0,224,192,0,96,224,0,96,224,0,96, + 240,0,96,248,0,192,156,0,128,134,1,0,131,254,0,24, + 29,87,29,3,0,255,255,255,248,60,31,240,60,15,224,60, + 7,192,60,3,192,60,3,192,60,3,128,60,1,128,60,1, + 128,60,1,128,60,1,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,7,255,224,29,29,116,34, + 3,0,255,240,31,248,15,0,3,192,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,7,0, + 1,0,7,0,3,0,3,128,2,0,1,192,6,0,0,224, + 24,0,0,63,240,0,29,29,116,32,2,0,255,248,63,248, + 15,128,3,192,7,128,3,128,7,128,3,0,3,192,3,0, + 3,192,3,0,3,192,2,0,1,224,6,0,1,224,6,0, + 1,240,4,0,0,240,12,0,0,240,12,0,0,248,8,0, + 0,120,24,0,0,120,24,0,0,60,16,0,0,60,48,0, + 0,60,48,0,0,30,32,0,0,30,96,0,0,31,96,0, + 0,15,64,0,0,15,192,0,0,15,192,0,0,7,128,0, + 0,7,128,0,0,7,128,0,0,3,0,0,0,3,0,0, + 41,29,174,44,2,0,255,241,255,227,255,128,15,128,63,0, + 124,0,7,128,30,0,56,0,7,128,30,0,48,0,7,128, + 31,0,48,0,3,192,31,0,48,0,3,192,31,0,96,0, + 3,192,55,0,96,0,1,224,55,128,96,0,1,224,55,128, + 64,0,1,224,39,128,192,0,1,224,99,192,192,0,0,240, + 99,192,128,0,0,240,67,193,128,0,0,240,193,193,128,0, + 0,120,193,225,0,0,0,120,193,227,0,0,0,120,129,227, + 0,0,0,125,128,242,0,0,0,61,128,246,0,0,0,61, + 0,246,0,0,0,61,0,116,0,0,0,31,0,124,0,0, + 0,31,0,124,0,0,0,30,0,60,0,0,0,14,0,56, + 0,0,0,14,0,56,0,0,0,12,0,56,0,0,0,12, + 0,16,0,0,28,29,116,31,2,0,255,248,255,224,7,192, + 30,0,7,192,28,0,3,224,24,0,1,224,24,0,1,240, + 48,0,0,240,32,0,0,248,96,0,0,120,192,0,0,124, + 128,0,0,61,128,0,0,63,0,0,0,30,0,0,0,15, + 0,0,0,15,0,0,0,15,128,0,0,31,128,0,0,51, + 192,0,0,51,224,0,0,97,224,0,0,193,240,0,0,192, + 240,0,1,128,248,0,3,0,120,0,3,0,124,0,6,0, + 60,0,14,0,62,0,31,0,63,0,255,225,255,240,27,29, + 116,30,2,0,255,248,127,224,15,128,31,0,15,128,14,0, + 7,128,12,0,3,192,12,0,3,192,8,0,1,224,24,0, + 1,240,16,0,0,240,48,0,0,248,32,0,0,120,96,0, + 0,60,64,0,0,60,192,0,0,30,128,0,0,31,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,1,255,248,0,22,29,87,27,3,0,63,255, + 252,62,0,120,60,0,248,56,0,240,48,1,224,48,3,224, + 96,3,192,96,7,128,64,15,128,64,15,0,0,31,0,0, + 62,0,0,60,0,0,124,0,0,120,0,0,240,0,1,240, + 0,1,224,0,3,224,4,7,192,4,7,128,12,15,128,12, + 31,0,12,31,0,28,62,0,28,60,0,60,124,0,120,248, + 0,248,255,255,248,8,37,37,16,5,248,255,240,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,240,255, + 14,38,76,18,2,248,192,0,64,0,96,0,96,0,32,0, + 48,0,48,0,16,0,24,0,24,0,8,0,12,0,12,0, + 4,0,4,0,6,0,2,0,2,0,3,0,3,0,1,0, + 1,128,1,128,0,128,0,192,0,192,0,64,0,96,0,96, + 0,32,0,48,0,48,0,16,0,24,0,24,0,8,0,12, + 0,12,8,37,37,16,3,248,255,15,7,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,15,255,18,14,42, + 24,3,15,0,192,0,1,192,0,1,224,0,3,48,0,3, + 48,0,6,24,0,12,12,0,12,12,0,24,6,0,48,6, + 0,48,3,0,96,1,128,224,1,128,192,0,192,21,2,6, + 21,0,250,255,255,248,255,255,248,7,7,7,18,3,21,192, + 224,112,56,24,12,2,18,19,57,21,2,0,15,192,0,56, + 112,0,32,56,0,96,28,0,120,28,0,120,28,0,56,28, + 0,0,28,0,0,252,0,15,28,0,56,28,0,112,28,0, + 224,28,0,224,28,64,224,60,64,224,60,64,224,92,192,112, + 159,128,31,15,0,18,29,87,21,1,0,252,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,120,0,28,142,0,29, + 7,0,30,3,128,30,3,128,28,3,128,28,3,192,28,3, + 192,28,3,192,28,3,192,28,3,192,28,3,192,28,3,192, + 28,3,128,28,3,128,30,3,128,27,7,0,17,142,0,16, + 248,0,15,19,38,18,2,0,7,224,28,16,56,8,48,12, + 112,28,112,60,240,60,240,24,240,0,240,0,240,0,240,0, + 240,6,112,4,112,4,48,12,56,8,12,48,7,224,18,29, + 87,21,2,0,0,254,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0, + 14,0,15,142,0,28,78,0,56,46,0,112,30,0,112,30, + 0,112,14,0,240,14,0,240,14,0,240,14,0,240,14,0, + 240,14,0,240,14,0,240,14,0,112,14,0,112,14,0,112, + 30,0,56,62,0,24,110,0,7,207,192,15,19,38,19,2, + 0,7,192,12,112,56,56,48,28,112,28,112,28,240,30,240, + 30,255,254,240,0,240,0,240,0,240,6,112,4,112,4,56, + 4,56,8,28,16,7,224,14,29,58,14,1,0,1,240,7, + 24,14,24,12,60,28,60,28,56,28,0,28,0,28,0,28, + 0,255,192,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,255,192,20,28,84,22,2,247,7,225,192, + 28,58,96,56,30,240,112,30,240,112,14,224,240,15,0,240, + 15,0,240,15,0,112,14,0,112,30,0,56,28,0,28,56, + 0,7,224,0,56,0,0,64,0,0,192,0,0,240,0,0, + 255,254,0,63,255,0,15,7,128,112,1,192,64,0,192,192, + 0,192,192,0,192,192,1,128,96,1,128,56,6,0,7,248, + 0,20,29,87,22,1,0,252,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,60,0,28,199,0,29,3,0,29,3, + 128,30,3,128,30,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,255,159,240,8,28, + 28,11,1,0,24,60,60,24,0,0,0,0,0,252,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,255, + 11,37,74,14,255,247,0,192,1,224,1,224,0,192,0,0, + 0,0,0,0,0,0,0,0,15,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,224,224,240,224,224,192,193,128,99,128,62,0, + 19,29,87,21,1,0,252,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,63,192,28,14,0,28,12,0,28,8,0, + 28,16,0,28,48,0,28,96,0,28,192,0,28,224,0,29, + 224,0,30,240,0,30,120,0,28,60,0,28,60,0,28,30, + 0,28,15,0,28,15,0,28,15,128,255,63,224,9,29,58, + 11,1,0,252,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,255,128,31,19,76, + 33,1,0,252,124,15,128,28,199,24,192,29,7,32,224,31, + 3,224,112,30,3,192,112,28,3,128,112,28,3,128,112,28, + 3,128,112,28,3,128,112,28,3,128,112,28,3,128,112,28, + 3,128,112,28,3,128,112,28,3,128,112,28,3,128,112,28, + 3,128,112,28,3,128,112,28,3,128,112,255,159,243,254,20, + 19,57,22,1,0,252,60,0,28,199,0,29,3,0,31,3, + 128,30,3,128,30,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,255,159,240,17,19, + 57,21,2,0,3,224,0,12,56,0,24,28,0,56,14,0, + 112,14,0,112,7,0,240,7,0,240,7,0,240,7,128,240, + 7,128,240,7,128,240,7,0,240,7,0,112,7,0,112,14, + 0,56,14,0,24,28,0,12,56,0,3,224,0,18,28,84, + 21,1,247,252,120,0,29,142,0,31,7,0,30,3,128,30, + 3,128,28,3,128,28,3,192,28,3,192,28,3,192,28,3, + 192,28,3,192,28,3,192,28,3,192,28,3,128,28,3,128, + 30,3,128,31,7,0,29,134,0,28,120,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,255,128,0,18,28,84,21,2,247,7,130,0, + 28,98,0,56,54,0,112,22,0,112,30,0,112,14,0,240, + 14,0,240,14,0,240,14,0,240,14,0,240,14,0,240,14, + 0,240,14,0,112,14,0,112,14,0,112,30,0,56,62,0, + 24,110,0,7,206,0,0,14,0,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,127, + 192,15,19,38,16,1,0,252,56,28,196,28,142,29,30,31, + 28,30,12,30,0,30,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,255,128,14,19,38, + 18,2,0,31,16,96,208,64,112,192,48,192,16,224,16,240, + 0,126,0,63,128,31,224,3,248,128,252,192,28,192,12,224, + 12,224,12,240,8,140,24,131,224,12,27,54,14,1,0,4, + 0,4,0,4,0,4,0,4,0,12,0,12,0,28,0,255, + 224,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,16,28,16,28,16,28,48,30, + 32,15,224,7,192,20,19,57,22,1,0,252,31,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,7,128,28,7,128,28,15,128,12,11,128,14,51, + 128,3,195,240,20,19,57,21,1,0,255,15,240,60,3,128, + 28,3,0,28,3,0,14,2,0,14,2,0,15,6,0,7, + 4,0,7,4,0,3,140,0,3,136,0,3,200,0,1,216, + 0,1,208,0,0,240,0,0,240,0,0,96,0,0,96,0, + 0,96,0,30,19,76,31,1,0,255,31,243,252,60,7,128, + 224,28,3,128,192,28,3,128,192,14,3,192,128,14,3,192, + 128,15,7,193,128,7,5,225,0,7,4,225,0,3,140,227, + 0,3,136,114,0,1,200,114,0,1,216,118,0,1,240,60, + 0,0,240,60,0,0,240,60,0,0,96,24,0,0,96,24, + 0,0,32,24,0,18,19,57,21,1,0,255,31,192,30,14, + 0,30,12,0,14,8,0,15,24,0,7,16,0,3,160,0, + 3,224,0,1,192,0,1,224,0,1,224,0,1,112,0,3, + 120,0,2,56,0,4,28,0,12,28,0,24,14,0,24,15, + 0,254,63,192,20,28,84,22,1,247,255,143,240,30,1,128, + 30,1,128,14,1,0,14,1,0,15,3,0,7,2,0,7, + 2,0,3,134,0,3,132,0,3,132,0,1,204,0,1,200, + 0,1,200,0,0,248,0,0,240,0,0,240,0,0,112,0, + 0,96,0,0,96,0,0,96,0,0,64,0,48,64,0,120, + 192,0,120,128,0,113,128,0,51,0,0,30,0,0,14,19, + 38,18,2,0,255,252,224,60,192,56,192,120,128,240,128,224, + 129,224,1,192,3,128,7,128,7,0,15,0,30,4,28,4, + 60,4,56,12,112,12,240,28,255,252,10,37,74,17,4,248, + 1,192,6,0,12,0,8,0,24,0,24,0,24,0,28,0, + 28,0,12,0,14,0,14,0,14,0,6,0,6,0,6,0, + 4,0,8,0,240,0,24,0,12,0,4,0,6,0,6,0, + 14,0,14,0,14,0,12,0,28,0,28,0,24,0,24,0, + 24,0,8,0,12,0,6,0,1,192,2,38,38,12,5,248, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,10,37,74,17,3,248,224,0,24,0, + 12,0,4,0,6,0,6,0,6,0,14,0,14,0,12,0, + 28,0,28,0,28,0,24,0,24,0,24,0,8,0,4,0, + 3,192,6,0,8,0,24,0,24,0,24,0,28,0,28,0, + 28,0,12,0,14,0,14,0,6,0,6,0,6,0,4,0, + 12,0,24,0,224,0,23,8,24,27,2,7,30,0,8,127, + 192,4,255,240,2,199,254,2,128,255,134,128,63,254,192,15, + 252,96,1,248,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,11,0,0,5,28,28,11,3, + 247,112,248,248,248,112,0,32,32,32,32,32,32,112,112,112, + 112,112,112,112,112,248,248,248,248,248,248,248,112,14,28,56, + 24,5,252,0,128,0,128,0,128,0,128,0,128,7,224,12, + 152,24,136,56,140,112,156,112,188,240,188,240,152,240,128,240, + 128,240,128,240,128,240,132,112,132,112,132,56,132,24,136,14, + 144,3,224,0,128,0,128,0,128,0,128,23,28,84,30,3, + 0,0,3,240,0,6,24,0,28,12,0,24,14,0,48,62, + 0,112,62,0,112,62,0,112,24,0,112,0,0,240,0,0, + 240,0,0,240,0,31,240,0,32,255,128,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,224,0, + 0,224,0,62,224,2,67,192,2,128,224,4,129,127,60,194, + 63,248,60,15,240,20,20,60,24,2,4,64,0,32,225,248, + 112,119,254,224,62,7,192,24,1,128,48,0,192,48,0,192, + 96,0,96,96,0,96,96,0,96,96,0,96,96,0,96,96, + 0,96,48,0,192,48,0,192,24,1,128,62,7,192,119,254, + 224,225,248,112,64,0,32,22,28,84,24,1,0,255,131,252, + 62,0,112,30,0,96,14,0,64,15,0,64,15,0,128,7, + 128,128,7,129,0,3,193,0,3,194,0,1,226,0,1,228, + 0,0,252,0,0,248,0,0,120,0,31,255,192,0,120,0, + 0,120,0,31,255,192,0,120,0,0,120,0,0,120,0,0, + 120,0,0,120,0,0,120,0,0,120,0,0,120,0,7,255, + 128,2,37,37,12,5,249,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,0,0,0,0,0,0,0,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,15,36,72,26, + 4,248,7,192,12,32,24,48,48,120,48,120,48,112,56,0, + 56,0,28,0,30,0,15,0,31,192,35,224,97,240,64,248, + 192,60,192,30,192,14,224,6,240,6,120,6,60,4,31,12, + 15,152,7,224,3,224,0,224,0,112,0,112,0,56,56,56, + 60,56,56,48,48,48,24,96,7,128,12,4,8,18,3,22, + 96,96,240,240,240,240,96,96,30,29,116,34,2,1,0,127, + 248,0,1,192,14,0,3,0,3,0,4,0,0,128,8,0, + 0,64,16,7,196,32,32,24,108,16,32,48,60,16,64,112, + 28,8,64,224,12,8,192,224,12,8,129,224,4,4,129,224, + 0,4,129,224,0,4,129,224,0,4,129,224,0,4,129,224, + 0,4,129,224,4,4,192,224,4,8,64,224,8,8,64,112, + 8,8,32,112,24,16,48,24,48,48,16,15,192,32,8,0, + 0,64,4,0,0,128,3,0,3,0,1,192,14,0,0,127, + 248,0,11,14,28,16,3,14,60,0,102,0,67,0,99,0, + 99,0,7,0,27,0,99,0,195,0,195,32,231,32,121,192, + 0,0,127,192,10,16,32,19,4,1,24,64,48,192,32,128, + 97,128,97,0,195,0,195,0,195,0,195,0,195,0,195,0, + 97,128,97,128,48,128,16,64,8,0,20,8,24,24,2,7, + 255,255,240,255,255,240,0,0,48,0,0,48,0,0,48,0, + 0,48,0,0,48,0,0,48,10,2,4,14,2,9,255,192, + 255,192,30,29,116,34,2,1,0,127,248,0,1,192,14,0, + 3,0,3,0,4,0,0,128,8,0,0,64,19,255,192,32, + 32,112,240,48,32,112,120,16,64,112,120,8,64,112,120,8, + 192,112,120,8,128,112,112,4,128,112,224,4,128,127,128,4, + 128,112,224,4,128,112,112,4,128,112,112,4,128,112,120,4, + 128,112,120,8,64,112,120,136,64,112,120,136,32,112,56,144, + 32,112,57,16,19,252,30,32,8,0,0,64,4,0,0,128, + 3,0,3,0,1,192,14,0,0,127,248,0,11,2,4,19, + 4,23,255,224,255,224,11,10,20,23,6,18,31,0,96,128, + 64,64,128,32,128,32,128,32,128,32,64,64,96,128,31,0, + 35,28,140,39,2,254,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,192,0,0,0,0,192,0,0,0,0,192,0,0,0,0, + 192,0,0,0,0,192,0,0,0,0,192,0,0,255,255,255, + 255,224,255,255,255,255,224,0,0,192,0,0,0,0,192,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,192,0,0,0,0,192,0,0,0,0,192,0,0,0,0, + 0,0,0,0,0,0,0,0,255,255,255,255,192,255,255,255, + 255,192,11,17,34,18,4,11,31,0,99,192,129,192,128,224, + 192,224,224,224,112,224,1,192,1,128,3,0,12,0,24,0, + 32,32,64,32,64,96,255,224,255,224,11,17,34,18,5,11, + 31,0,97,192,192,192,224,224,240,224,0,224,0,192,97,128, + 126,0,1,128,0,192,0,224,224,224,240,224,224,192,129,192, + 127,0,7,7,7,18,8,21,6,14,28,56,48,96,128,21, + 30,90,25,3,245,96,6,0,224,15,0,240,15,0,240,15, + 0,240,15,0,224,15,0,224,15,0,224,15,0,224,15,0, + 224,15,0,224,6,0,64,6,0,64,6,0,64,6,0,96, + 12,8,96,14,24,88,59,248,79,241,248,67,224,240,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,0,224,0,0, + 224,0,0,240,0,0,240,0,0,112,0,0,112,0,0,17, + 35,105,23,3,250,15,255,128,63,140,0,127,140,0,127,140, + 0,255,140,0,255,140,0,255,140,0,255,140,0,255,140,0, + 127,140,0,127,140,0,63,140,0,7,140,0,1,140,0,1, + 140,0,1,140,0,1,140,0,1,140,0,1,140,0,1,140, + 0,1,140,0,1,140,0,1,140,0,1,140,0,1,140,0, + 1,140,0,1,140,0,1,140,0,1,140,0,1,140,0,1, + 140,0,1,140,0,1,140,0,1,140,0,1,140,0,5,5, + 5,11,3,10,112,248,248,248,112,8,8,8,18,5,248,48, + 32,60,6,7,7,15,252,9,17,34,19,5,11,4,0,12, + 0,28,0,252,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,255,128,10, + 14,28,16,3,14,30,0,51,0,97,128,192,192,192,192,192, + 192,192,192,192,192,193,192,97,128,35,0,30,0,0,0,255, + 192,10,16,32,20,5,1,134,0,195,0,65,0,97,128,32, + 192,48,192,48,192,48,192,48,192,48,192,48,192,97,128,97, + 128,67,0,130,0,4,0,27,28,112,35,5,0,4,0,12, + 0,12,0,8,0,28,0,24,0,252,0,16,0,28,0,32, + 0,28,0,96,0,28,0,64,0,28,0,192,0,28,0,128, + 0,28,1,128,0,28,3,0,0,28,2,0,0,28,6,7, + 0,28,4,15,0,28,12,15,0,28,24,23,0,255,144,23, + 0,0,48,39,0,0,32,71,0,0,96,71,0,0,192,135, + 0,0,129,7,0,1,129,255,224,1,0,7,0,3,0,7, + 0,6,0,7,0,6,0,7,0,12,0,63,224,27,28,112, + 35,5,0,4,0,4,0,12,0,12,0,28,0,8,0,252, + 0,16,0,28,0,48,0,28,0,32,0,28,0,96,0,28, + 0,64,0,28,0,128,0,28,1,128,0,28,1,0,0,28, + 3,31,0,28,6,99,192,28,4,129,192,28,12,128,224,28, + 8,192,224,255,152,224,224,0,48,240,224,0,32,1,192,0, + 96,1,128,0,64,3,0,0,192,12,0,1,128,24,0,1, + 0,32,32,3,0,64,32,2,0,64,96,6,0,255,224,12, + 0,255,224,28,28,112,36,5,0,31,0,6,0,97,192,4, + 0,192,224,8,0,224,224,24,0,240,224,16,0,0,192,48, + 0,1,128,96,0,126,0,64,0,97,128,192,0,0,192,128, + 0,0,225,128,0,96,227,3,128,240,226,3,128,224,230,7, + 128,129,196,7,128,67,136,11,128,62,24,19,128,0,16,19, + 128,0,48,35,128,0,96,99,128,0,64,67,128,0,192,131, + 128,0,128,255,240,1,128,3,128,3,0,3,128,2,0,3, + 128,6,0,3,128,4,0,31,240,15,28,56,19,1,247,3, + 128,7,192,7,192,7,192,3,128,0,0,3,128,4,64,8, + 32,8,32,8,96,0,96,0,192,1,128,7,0,14,0,28, + 0,56,0,120,0,240,60,240,62,240,62,240,6,240,6,112, + 6,120,12,28,24,7,224,29,38,152,32,2,0,0,224,0, + 0,0,240,0,0,0,112,0,0,0,56,0,0,0,12,0, + 0,0,6,0,0,0,2,0,0,0,0,0,0,0,0,0, + 0,0,2,0,0,0,6,0,0,0,7,0,0,0,7,0, + 0,0,15,128,0,0,15,128,0,0,15,128,0,0,31,192, + 0,0,19,192,0,0,51,192,0,0,49,224,0,0,33,224, + 0,0,97,224,0,0,96,240,0,0,64,240,0,0,192,240, + 0,0,192,120,0,0,128,120,0,1,128,120,0,1,255,252, + 0,1,0,60,0,3,0,28,0,3,0,30,0,6,0,30, + 0,6,0,15,0,6,0,15,0,14,0,15,0,30,0,15, + 128,255,224,255,248,29,38,152,32,2,0,0,0,48,0,0, + 0,112,0,0,0,240,0,0,0,224,0,0,1,128,0,0, + 3,0,0,0,6,0,0,0,0,0,0,0,0,0,0,0, + 2,0,0,0,6,0,0,0,7,0,0,0,7,0,0,0, + 15,128,0,0,15,128,0,0,15,128,0,0,31,192,0,0, + 19,192,0,0,51,192,0,0,49,224,0,0,33,224,0,0, + 97,224,0,0,96,240,0,0,64,240,0,0,192,240,0,0, + 192,120,0,0,128,120,0,1,128,120,0,1,255,252,0,3, + 0,60,0,3,0,30,0,3,0,30,0,6,0,30,0,6, + 0,15,0,6,0,15,0,14,0,15,0,31,0,31,192,255, + 224,255,248,29,38,152,32,2,0,0,6,0,0,0,7,0, + 0,0,15,128,0,0,29,128,0,0,56,192,0,0,96,48, + 0,0,128,8,0,0,0,0,0,0,0,0,0,0,2,0, + 0,0,6,0,0,0,7,0,0,0,7,0,0,0,15,128, + 0,0,15,128,0,0,15,128,0,0,31,192,0,0,19,192, + 0,0,51,192,0,0,49,224,0,0,33,224,0,0,97,224, + 0,0,96,240,0,0,64,240,0,0,192,240,0,0,192,120, + 0,0,128,120,0,1,128,120,0,1,255,252,0,1,0,60, + 0,3,0,28,0,3,0,30,0,6,0,30,0,6,0,15, + 0,6,0,15,0,14,0,15,0,30,0,15,128,255,224,255, + 248,29,37,148,32,2,0,0,60,8,0,0,127,24,0,0, + 207,240,0,0,129,240,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,2,0,0,0,6,0,0,0, + 7,0,0,0,7,0,0,0,15,128,0,0,15,128,0,0, + 15,128,0,0,31,192,0,0,19,192,0,0,51,192,0,0, + 49,224,0,0,33,224,0,0,97,224,0,0,96,240,0,0, + 64,240,0,0,192,240,0,0,192,120,0,0,128,120,0,1, + 128,120,0,1,255,252,0,3,0,60,0,3,0,30,0,3, + 0,30,0,6,0,30,0,6,0,15,0,6,0,15,0,14, + 0,15,0,31,0,31,192,255,224,255,248,29,37,148,32,2, + 0,0,96,48,0,0,240,120,0,0,240,120,0,0,96,48, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,2,0,0,0,6,0,0,0,7,0,0,0,7,0, + 0,0,15,128,0,0,15,128,0,0,31,128,0,0,31,192, + 0,0,19,192,0,0,51,192,0,0,49,224,0,0,33,224, + 0,0,97,224,0,0,96,240,0,0,64,240,0,0,192,112, + 0,0,192,120,0,0,128,120,0,1,128,56,0,1,255,252, + 0,1,0,28,0,3,0,28,0,3,0,30,0,6,0,30, + 0,6,0,15,0,6,0,15,0,14,0,15,0,31,0,15, + 128,255,224,255,248,29,39,156,32,2,0,0,15,0,0,0, + 16,128,0,0,32,64,0,0,32,64,0,0,32,64,0,0, + 32,64,0,0,16,128,0,0,15,0,0,0,0,0,0,0, + 0,0,0,0,2,0,0,0,6,0,0,0,7,0,0,0, + 7,0,0,0,15,128,0,0,15,128,0,0,31,128,0,0, + 31,192,0,0,19,192,0,0,51,192,0,0,51,224,0,0, + 33,224,0,0,97,224,0,0,97,240,0,0,64,240,0,0, + 192,240,0,0,192,248,0,0,128,120,0,1,128,120,0,1, + 255,252,0,1,0,60,0,3,0,60,0,2,0,62,0,6, + 0,30,0,6,0,31,0,6,0,31,0,14,0,15,0,30, + 0,15,128,255,224,255,248,37,29,145,41,1,0,0,3,255, + 255,248,0,0,124,0,248,0,0,124,0,56,0,0,124,0, + 56,0,0,252,0,24,0,1,188,0,24,0,1,188,0,8, + 0,3,60,0,8,0,3,60,4,8,0,6,60,4,0,0, + 6,60,4,0,0,12,60,4,0,0,12,60,12,0,0,24, + 60,28,0,0,24,63,252,0,0,48,60,28,0,0,48,60, + 12,0,0,96,60,4,0,0,96,60,4,8,0,255,252,4, + 8,0,128,60,4,8,1,128,60,0,8,1,0,60,0,24, + 3,0,60,0,24,2,0,60,0,24,6,0,60,0,56,14, + 0,60,0,120,31,0,60,1,248,255,225,255,255,248,22,38, + 114,28,3,248,1,255,12,7,1,140,14,0,252,28,0,124, + 24,0,60,56,0,60,56,0,28,112,0,28,112,0,12,112, + 0,12,240,0,8,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,240,0,0,112,0,4, + 112,0,4,120,0,12,56,0,8,56,0,8,28,0,16,12, + 0,16,14,0,32,3,0,192,1,247,128,0,56,0,0,32, + 0,0,56,0,0,14,0,0,7,0,0,7,0,0,7,0, + 1,14,0,0,252,0,23,38,114,29,3,0,1,128,0,1, + 192,0,1,224,0,0,224,0,0,48,0,0,24,0,0,12, + 0,0,0,0,0,0,0,255,255,254,15,0,62,15,0,14, + 15,0,14,15,0,6,15,0,6,15,0,2,15,0,2,15, + 1,2,15,1,0,15,1,0,15,1,0,15,3,0,15,7, + 0,15,255,0,15,7,0,15,3,0,15,1,0,15,1,2, + 15,1,2,15,1,2,15,0,2,15,0,6,15,0,6,15, + 0,6,15,0,14,15,0,30,15,0,126,255,255,254,23,38, + 114,29,3,0,0,0,192,0,1,224,0,3,192,0,3,128, + 0,6,0,0,12,0,0,8,0,0,0,0,0,0,0,255, + 255,254,15,0,62,15,0,14,15,0,14,15,0,6,15,0, + 6,15,0,2,15,0,2,15,1,2,15,1,0,15,1,0, + 15,1,0,15,3,0,15,7,0,15,255,0,15,7,0,15, + 3,0,15,1,0,15,1,2,15,1,2,15,1,2,15,0, + 2,15,0,6,15,0,6,15,0,6,15,0,14,15,0,30, + 15,0,126,255,255,254,23,38,114,29,3,0,0,8,0,0, + 28,0,0,62,0,0,55,0,0,99,128,1,128,192,2,0, + 32,0,0,0,0,0,0,255,255,254,15,0,62,15,0,14, + 15,0,14,15,0,6,15,0,6,15,0,2,15,0,2,15, + 1,2,15,1,0,15,1,0,15,1,0,15,3,0,15,7, + 0,15,255,0,15,7,0,15,3,0,15,1,0,15,1,2, + 15,1,2,15,1,2,15,0,2,15,0,6,15,0,6,15, + 0,6,15,0,14,15,0,30,15,0,126,255,255,254,23,37, + 111,29,3,0,1,128,192,3,193,224,3,193,224,1,128,192, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,254,15, + 0,62,15,0,14,15,0,14,15,0,6,15,0,6,15,0, + 2,15,0,2,15,1,2,15,1,0,15,1,0,15,3,0, + 15,3,0,15,7,0,15,255,0,15,7,0,15,3,0,15, + 3,0,15,1,2,15,1,2,15,1,2,15,0,2,15,0, + 6,15,0,6,15,0,6,15,0,14,15,0,30,15,0,126, + 255,255,254,12,38,76,17,3,0,192,0,224,0,112,0,56, + 0,24,0,12,0,2,0,0,0,0,0,255,240,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,255,240,12,38,76,17,3,0,0,48,0,112,0, + 224,1,192,3,128,2,0,4,0,0,0,0,0,255,240,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,255,240,12,38,76,17,3,0,6,0,14, + 0,15,0,27,128,48,192,96,96,128,16,0,0,0,0,255, + 240,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,255,240,12,37,74,15,2,0,96, + 96,240,240,240,240,96,96,0,0,0,0,0,0,0,0,255, + 240,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,15,0,15,0,15,0,15,0,15, + 0,15,0,15,0,15,0,255,240,27,29,116,32,3,0,255, + 255,192,0,15,0,112,0,15,0,28,0,15,0,14,0,15, + 0,7,0,15,0,7,128,15,0,3,128,15,0,3,192,15, + 0,3,192,15,0,1,192,15,0,1,224,15,0,1,224,15, + 0,1,224,255,240,1,224,15,0,1,224,15,0,1,224,15, + 0,1,224,15,0,1,224,15,0,1,224,15,0,3,192,15, + 0,3,192,15,0,3,192,15,0,3,128,15,0,7,0,15, + 0,7,0,15,0,14,0,15,0,28,0,15,0,112,0,255, + 255,192,0,28,37,148,32,3,0,0,60,8,0,0,127,152, + 0,0,71,240,0,0,65,240,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,255,0,63,240,15,128,7, + 128,15,128,3,0,15,192,3,0,15,224,3,0,13,224,3, + 0,13,240,3,0,12,248,3,0,12,120,3,0,12,124,3, + 0,12,60,3,0,12,30,3,0,12,31,3,0,12,15,3, + 0,12,7,131,0,12,7,131,0,12,3,195,0,12,3,227, + 0,12,1,227,0,12,0,243,0,12,0,251,0,12,0,123, + 0,12,0,63,0,12,0,63,0,12,0,31,0,12,0,31, + 0,12,0,15,0,30,0,7,0,255,192,7,0,24,38,114, + 29,3,1,3,128,0,3,192,0,1,192,0,0,224,0,0, + 112,0,0,48,0,0,8,0,0,0,0,0,0,0,0,255, + 0,3,0,192,6,0,96,12,0,48,28,0,56,56,0,28, + 56,0,28,120,0,30,112,0,14,112,0,14,240,0,15,240, + 0,15,240,0,15,240,0,15,240,0,15,240,0,15,240,0, + 15,240,0,15,240,0,15,112,0,14,112,0,14,120,0,30, + 56,0,28,56,0,28,28,0,56,12,0,48,6,0,96,3, + 0,192,0,255,0,24,38,114,29,3,1,0,1,192,0,3, + 192,0,3,128,0,7,0,0,14,0,0,12,0,0,16,0, + 0,0,0,0,0,0,0,255,0,3,0,192,6,0,96,12, + 0,48,28,0,56,56,0,28,56,0,28,120,0,30,112,0, + 14,112,0,14,240,0,15,240,0,15,240,0,15,240,0,15, + 240,0,15,240,0,15,240,0,15,240,0,15,240,0,15,112, + 0,14,112,0,14,120,0,30,56,0,28,56,0,28,28,0, + 56,12,0,48,6,0,96,3,0,192,0,255,0,24,38,114, + 29,3,0,0,24,0,0,24,0,0,60,0,0,126,0,0, + 195,0,1,129,128,6,0,96,0,0,0,0,0,0,0,255, + 0,3,0,192,6,0,96,12,0,48,28,0,56,56,0,28, + 56,0,28,120,0,30,112,0,14,112,0,14,240,0,15,240, + 0,15,240,0,15,240,0,15,240,0,15,240,0,15,240,0, + 15,240,0,15,240,0,15,112,0,14,112,0,14,120,0,30, + 56,0,28,56,0,28,28,0,56,12,0,48,6,0,96,3, + 0,192,0,255,0,24,37,111,29,3,0,1,240,32,3,252, + 64,2,63,192,2,7,128,0,0,0,0,0,0,0,0,0, + 0,0,0,0,255,0,3,0,192,6,0,96,12,0,48,28, + 0,56,56,0,28,56,0,28,120,0,30,112,0,14,112,0, + 14,240,0,15,240,0,15,240,0,15,240,0,15,240,0,15, + 240,0,15,240,0,15,240,0,15,240,0,15,112,0,14,112, + 0,14,120,0,30,56,0,28,56,0,28,28,0,56,12,0, + 48,6,0,96,3,0,192,0,255,0,24,37,111,29,3,0, + 1,129,128,3,195,192,3,195,192,1,129,128,0,0,0,0, + 0,0,0,0,0,0,0,0,0,255,0,3,0,192,6,0, + 96,12,0,48,28,0,56,56,0,28,56,0,28,120,0,30, + 112,0,14,112,0,14,240,0,15,240,0,15,240,0,15,240, + 0,15,240,0,15,240,0,15,240,0,15,240,0,15,240,0, + 15,112,0,14,112,0,14,120,0,30,56,0,28,56,0,28, + 28,0,56,12,0,48,6,0,96,3,0,192,0,255,0,25, + 25,100,39,7,254,192,0,1,128,224,0,3,0,112,0,6, + 0,56,0,12,0,28,0,24,0,14,0,48,0,7,0,96, + 0,3,128,192,0,1,193,128,0,0,227,0,0,0,118,0, + 0,0,60,0,0,0,28,0,0,0,62,0,0,0,103,0, + 0,0,195,128,0,1,129,192,0,3,0,224,0,6,0,112, + 0,12,0,56,0,24,0,28,0,48,0,14,0,96,0,7, + 0,192,0,3,128,128,0,1,0,24,29,87,29,3,1,0, + 255,131,3,0,230,6,0,124,12,0,60,28,0,56,56,0, + 60,56,0,124,120,0,254,112,0,206,112,1,142,240,3,15, + 240,6,15,240,14,15,240,12,15,240,24,15,240,48,15,240, + 96,15,240,224,15,240,192,15,113,128,14,115,0,14,126,0, + 30,62,0,28,60,0,28,28,0,56,60,0,48,62,0,96, + 103,0,192,193,255,0,29,38,152,34,3,1,0,112,0,0, + 0,112,0,0,0,56,0,0,0,28,0,0,0,14,0,0, + 0,2,0,0,0,1,0,0,0,0,0,0,0,0,0,0, + 255,240,31,248,15,0,3,192,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,7,0,1,0, + 7,0,3,0,3,128,2,0,1,192,6,0,0,224,24,0, + 0,63,240,0,29,38,152,34,3,1,0,0,56,0,0,0, + 120,0,0,0,240,0,0,0,224,0,0,1,128,0,0,3, + 0,0,0,2,0,0,0,0,0,0,0,0,0,0,255,240, + 31,248,15,0,3,192,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,7,0,1,0,7,0, + 3,0,3,128,2,0,1,192,6,0,0,224,24,0,0,63, + 240,0,29,38,152,34,3,0,0,3,0,0,0,7,0,0, + 0,7,128,0,0,13,192,0,0,24,96,0,0,96,48,0, + 0,192,8,0,0,0,0,0,0,0,0,0,255,240,31,248, + 15,0,3,192,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,15,0,1,128,15,0,1,128, + 15,0,1,128,15,0,1,128,7,0,3,0,7,0,3,0, + 3,128,6,0,1,192,14,0,0,224,24,0,0,63,240,0, + 29,37,148,34,3,0,0,48,48,0,0,120,120,0,0,120, + 120,0,0,48,48,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,255,240,31,248,15,0,3,192,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,7,0,1,0,7,0,3,0,3,128,2,0,1,192, + 6,0,0,224,24,0,0,63,240,0,27,38,152,30,2,0, + 0,0,48,0,0,0,112,0,0,0,224,0,0,0,192,0, + 0,1,128,0,0,3,0,0,0,2,0,0,0,0,0,0, + 0,0,0,0,255,248,127,224,15,128,31,0,15,128,14,0, + 7,128,12,0,3,192,12,0,3,192,8,0,1,224,24,0, + 1,240,16,0,0,240,48,0,0,248,32,0,0,120,96,0, + 0,60,64,0,0,60,192,0,0,30,128,0,0,31,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,1,255,248,0,23,29,87,28,3,0,255,248, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,255,128, + 15,0,224,15,0,120,15,0,60,15,0,60,15,0,30,15, + 0,30,15,0,30,15,0,30,15,0,30,15,0,60,15,0, + 60,15,0,120,15,0,224,15,255,128,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,255,248,0,19,29,87,22,1,0,0,252,0,3,14, + 0,6,7,0,14,7,128,12,7,128,28,7,128,28,7,128, + 28,7,0,28,14,0,28,28,0,28,224,0,28,24,0,28, + 6,0,28,7,0,28,3,128,28,3,128,28,1,192,28,1, + 192,28,1,192,28,1,224,28,1,224,28,1,224,28,1,224, + 28,225,192,29,225,192,29,225,192,28,131,128,28,199,0,252, + 60,0,18,28,84,21,2,1,112,0,0,120,0,0,60,0, + 0,28,0,0,6,0,0,3,0,0,1,0,0,0,0,0, + 0,0,0,15,192,0,56,112,0,32,56,0,96,28,0,120, + 28,0,120,28,0,56,28,0,0,28,0,0,252,0,15,28, + 0,56,28,0,112,28,0,224,28,0,224,28,64,224,60,64, + 224,60,64,224,92,192,112,159,128,31,15,0,18,28,84,21, + 2,1,0,28,0,0,60,0,0,120,0,0,112,0,0,192, + 0,1,128,0,1,0,0,0,0,0,0,0,0,15,192,0, + 56,112,0,32,56,0,96,28,0,120,28,0,120,28,0,56, + 28,0,0,28,0,0,252,0,15,28,0,56,28,0,112,28, + 0,224,28,0,224,28,64,224,60,64,224,60,64,224,92,192, + 112,159,128,31,15,0,18,28,84,21,2,0,3,128,0,3, + 128,0,7,128,0,6,192,0,12,96,0,24,48,0,32,24, + 0,0,0,0,0,0,0,15,192,0,56,112,0,32,56,0, + 96,28,0,120,28,0,120,28,0,56,28,0,0,28,0,0, + 252,0,15,28,0,56,28,0,112,28,0,224,28,0,224,28, + 64,224,60,64,224,60,64,224,92,192,112,159,128,31,15,0, + 18,27,81,21,2,0,30,8,0,63,136,0,39,248,0,64, + 240,0,0,0,0,0,0,0,0,0,0,0,0,0,15,192, + 0,56,112,0,32,56,0,96,28,0,120,28,0,120,28,0, + 56,28,0,0,28,0,0,252,0,15,28,0,56,28,0,112, + 28,0,224,28,0,224,28,64,224,60,64,224,60,64,224,92, + 192,112,159,128,31,15,0,18,27,81,21,2,0,56,48,0, + 120,120,0,120,120,0,56,48,0,0,0,0,0,0,0,0, + 0,0,0,0,0,15,192,0,24,112,0,32,56,0,96,28, + 0,112,28,0,120,28,0,56,28,0,0,28,0,0,252,0, + 15,28,0,56,28,0,112,28,0,224,28,0,224,28,64,224, + 60,64,224,60,64,224,92,192,112,159,128,31,15,0,18,28, + 84,21,2,0,7,128,0,8,64,0,16,32,0,16,32,0, + 16,32,0,8,64,0,7,128,0,0,0,0,0,0,0,15, + 192,0,56,112,0,32,56,0,96,28,0,112,28,0,120,28, + 0,56,28,0,0,28,0,0,252,0,15,28,0,56,28,0, + 112,28,0,224,28,0,224,28,64,224,60,64,224,92,64,224, + 156,192,112,159,128,31,15,0,25,19,76,29,2,0,15,193, + 240,0,56,115,28,0,32,30,14,0,96,30,7,0,120,28, + 7,0,120,28,7,0,56,28,7,128,0,28,7,128,3,255, + 255,128,28,28,0,0,112,28,0,0,112,28,0,0,224,28, + 1,128,224,28,1,0,224,62,1,0,224,46,1,0,224,70, + 2,0,112,131,4,0,31,0,248,0,15,27,54,18,2,248, + 7,224,28,16,56,8,48,12,112,28,112,60,240,60,240,24, + 240,0,240,0,240,0,240,0,240,6,112,4,112,4,48,12, + 56,8,28,48,7,224,1,0,2,0,1,192,0,96,0,112, + 0,112,8,240,7,192,15,28,56,19,2,1,56,0,60,0, + 28,0,14,0,7,0,3,0,0,128,0,0,0,0,7,192, + 12,112,56,56,48,28,112,28,112,28,240,30,240,30,255,254, + 240,0,240,0,240,0,240,2,112,4,112,4,56,4,56,8, + 28,16,7,224,15,28,56,19,2,1,0,28,0,60,0,56, + 0,112,0,224,0,192,1,0,0,0,0,0,7,192,12,112, + 56,56,48,28,112,28,112,28,240,30,240,30,255,254,240,0, + 240,0,240,0,240,2,112,4,112,4,56,4,56,8,28,16, + 7,224,15,28,56,19,2,0,1,128,3,128,3,192,7,192, + 6,96,8,48,16,8,0,0,0,0,7,192,12,112,56,56, + 48,28,112,28,112,28,240,30,240,30,255,254,240,0,240,0, + 240,0,240,6,112,4,112,4,56,4,56,8,28,16,7,224, + 15,27,54,19,2,0,24,24,60,60,60,60,24,24,0,0, + 0,0,0,0,0,0,7,192,12,112,56,56,48,28,112,28, + 112,28,240,14,240,14,255,254,240,0,240,0,240,0,240,2, + 112,4,112,4,56,4,56,8,28,16,7,224,10,28,56,11, + 0,0,192,0,224,0,224,0,112,0,24,0,12,0,4,0, + 0,0,0,0,126,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,127,192,10,28,56,11,1,0, + 0,192,1,192,3,128,7,0,6,0,12,0,16,0,0,0, + 0,0,252,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,255,128,11,28,56,11,0,0,12,0, + 12,0,30,0,31,0,51,0,96,128,128,96,0,0,0,0, + 126,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,127,192,11,26,52,13,1,0,96,192,241,224, + 241,224,96,192,0,0,0,0,0,0,62,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,63,192, + 17,29,87,21,2,0,30,4,0,15,12,0,7,176,0,3, + 224,0,1,224,0,6,224,0,12,240,0,16,120,0,0,56, + 0,0,28,0,3,254,0,12,62,0,24,30,0,56,15,0, + 112,15,0,112,7,0,240,7,0,240,7,128,240,7,128,240, + 7,128,240,7,0,240,7,0,240,7,0,112,7,0,112,14, + 0,56,14,0,24,28,0,12,56,0,3,224,0,20,26,78, + 22,1,0,3,225,0,7,254,0,4,126,0,0,0,0,0, + 0,0,0,0,0,0,0,0,252,60,0,28,199,0,29,3, + 0,31,3,128,30,3,128,30,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,3,128,255,159, + 240,17,28,84,21,2,1,56,0,0,60,0,0,30,0,0, + 14,0,0,3,0,0,1,128,0,0,128,0,0,0,0,0, + 0,0,3,224,0,12,56,0,24,28,0,56,14,0,112,14, + 0,112,7,0,240,7,0,240,7,0,240,7,128,240,7,128, + 240,7,128,240,7,0,240,7,0,112,7,0,112,14,0,56, + 14,0,24,28,0,12,56,0,3,224,0,17,28,84,21,2, + 1,0,28,0,0,28,0,0,56,0,0,112,0,0,96,0, + 0,192,0,1,128,0,0,0,0,0,0,0,3,224,0,12, + 56,0,24,28,0,56,14,0,112,14,0,112,7,0,240,7, + 0,240,7,0,240,7,128,240,7,128,240,7,128,240,7,0, + 240,7,0,112,7,0,112,14,0,56,14,0,24,28,0,12, + 56,0,3,224,0,17,28,84,21,2,0,1,128,0,1,192, + 0,3,192,0,3,96,0,6,32,0,12,16,0,16,12,0, + 0,0,0,0,0,0,3,224,0,12,56,0,24,28,0,56, + 14,0,112,14,0,112,7,0,240,7,0,240,7,0,240,7, + 128,240,7,128,240,7,128,240,7,0,240,7,0,112,7,0, + 112,14,0,56,14,0,24,28,0,12,56,0,3,224,0,17, + 27,81,21,2,0,15,4,0,31,204,0,19,248,0,16,240, + 0,0,0,0,0,0,0,0,0,0,0,0,0,3,224,0, + 12,56,0,24,28,0,56,14,0,112,14,0,112,7,0,240, + 7,0,240,7,0,240,7,128,240,7,128,240,7,128,240,7, + 0,240,7,0,112,7,0,112,14,0,56,14,0,24,28,0, + 12,56,0,3,224,0,17,27,81,21,2,0,24,24,0,60, + 60,0,60,60,0,24,24,0,0,0,0,0,0,0,0,0, + 0,0,0,0,3,224,0,12,56,0,24,28,0,56,14,0, + 112,14,0,112,7,0,240,7,0,240,7,0,240,7,128,240, + 7,128,240,7,128,240,7,0,240,7,0,112,7,0,112,14, + 0,56,14,0,24,28,0,12,56,0,3,224,0,35,26,130, + 39,2,254,0,0,224,0,0,0,1,240,0,0,0,1,240, + 0,0,0,1,240,0,0,0,0,224,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,255,255,224,255,255,255,255,224,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,224,0, + 0,0,1,240,0,0,0,1,240,0,0,0,1,240,0,0, + 0,0,224,0,0,17,19,57,21,2,0,3,225,0,12,59, + 0,24,30,0,56,14,0,112,14,0,112,31,0,240,55,0, + 240,103,0,240,199,128,240,135,128,241,7,128,242,7,0,244, + 7,0,124,7,0,120,14,0,56,14,0,120,28,0,76,56, + 0,131,224,0,20,28,84,22,1,1,14,0,0,15,0,0, + 7,0,0,3,128,0,1,192,0,0,64,0,0,32,0,0, + 0,0,0,0,0,252,31,128,28,3,128,28,3,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,7,128,28, + 7,128,28,15,128,12,11,128,14,51,128,3,195,240,20,28, + 84,22,1,1,0,7,0,0,15,0,0,30,0,0,24,0, + 0,48,0,0,96,0,0,64,0,0,0,0,0,0,0,252, + 31,128,28,3,128,28,3,128,28,3,128,28,3,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,7,128,28,7,128,28,15,128,12, + 11,128,14,51,128,3,195,240,20,28,84,22,1,0,0,96, + 0,0,224,0,0,240,0,1,176,0,3,24,0,2,4,0, + 4,2,0,0,0,0,0,0,0,252,31,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,3,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,3,128,28,3,128, + 28,7,128,28,7,128,28,15,128,12,11,128,14,51,128,3, + 195,240,20,27,81,22,1,0,6,6,0,15,15,0,15,15, + 0,6,6,0,0,0,0,0,0,0,0,0,0,0,0,0, + 252,15,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,3,128,28,3, + 128,28,3,128,28,3,128,28,7,128,28,7,128,28,15,128, + 12,11,128,14,51,128,3,195,240,20,37,111,22,1,248,0, + 3,0,0,7,0,0,15,0,0,28,0,0,24,0,0,48, + 0,0,0,0,0,0,0,0,0,0,255,143,240,30,1,128, + 30,1,128,14,1,0,14,1,0,15,3,0,7,2,0,7, + 2,0,3,134,0,3,132,0,3,132,0,1,204,0,1,200, + 0,1,200,0,0,248,0,0,240,0,0,240,0,0,112,0, + 0,96,0,0,96,0,0,96,0,0,64,0,48,64,0,120, + 192,0,120,128,0,113,128,0,51,0,0,30,0,0,18,38, + 114,21,1,246,12,0,0,60,0,0,252,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 30,0,28,127,0,28,199,128,29,3,128,31,3,192,30,3, + 192,30,3,128,28,3,128,28,3,128,28,7,0,28,7,0, + 28,6,0,28,12,0,28,28,0,28,24,0,28,48,0,28, + 192,0,29,128,0,30,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 56,0,0,192,0,0,19,36,108,21,1,247,3,6,0,7, + 143,0,7,143,0,3,6,0,0,0,0,0,0,0,0,0, + 0,0,0,0,255,143,224,30,3,128,30,1,0,14,3,0, + 14,2,0,7,2,0,7,2,0,7,6,0,3,132,0,3, + 132,0,3,140,0,1,200,0,1,200,0,1,200,0,0,240, + 0,0,240,0,0,240,0,0,96,0,0,96,0,0,96,0, + 0,64,0,0,64,0,48,64,0,120,64,0,120,128,0,121, + 128,0,59,0,0,30,0,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--41-410-72-72-P-216-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 28 + Calculated Max Values w=35 h=38 x= 5 y=11 dx=39 dy= 0 ascent=30 len=170 + Font Bounding box w=107 h=51 x=-33 y=-12 + Calculated Min Values x= 0 y=-8 dx= 0 dy= 0 + Pure Font ascent =28 descent= 0 + X Font ascent =28 descent= 0 + Max Font ascent =30 descent=-8 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr29n[1201] U8G_SECTION(".progmem.u8g_font_osr29n") = { + 0,107,51,223,244,28,0,0,0,0,42,57,0,30,248,28, + 0,15,17,34,21,3,11,3,128,3,192,3,128,3,128,225, + 142,241,30,249,62,29,112,3,128,3,128,29,112,249,62,241, + 30,227,142,3,128,3,192,3,128,35,34,170,39,2,250,0, + 0,192,0,0,0,0,192,0,0,0,0,192,0,0,0,0, + 192,0,0,0,0,192,0,0,0,0,192,0,0,0,0,192, + 0,0,0,0,192,0,0,0,0,192,0,0,0,0,192,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,255, + 255,255,255,224,255,255,255,255,224,0,0,192,0,0,0,0, + 192,0,0,0,0,192,0,0,0,0,192,0,0,0,0,192, + 0,0,0,0,192,0,0,0,0,192,0,0,0,0,192,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,192,0,0,0,0,192,0,0,5,12,12,11,3,249,112, + 240,248,248,24,8,8,16,16,32,32,64,10,2,4,14,2, + 9,255,192,255,192,5,5,5,11,3,0,112,248,248,248,112, + 14,38,76,18,2,248,0,12,0,12,0,12,0,8,0,24, + 0,24,0,16,0,48,0,48,0,32,0,96,0,96,0,64, + 0,192,0,192,0,128,1,128,1,128,1,0,3,0,3,0, + 2,0,6,0,6,0,4,0,12,0,12,0,8,0,24,0, + 24,0,16,0,48,0,48,0,32,0,96,0,96,0,64,0, + 192,0,20,28,84,24,2,0,1,248,0,7,12,0,12,7, + 0,28,3,128,24,1,128,56,1,192,56,1,192,112,0,224, + 112,0,224,112,0,224,240,0,240,240,0,240,240,0,240,240, + 0,240,240,0,240,240,0,240,240,0,240,240,0,240,240,0, + 240,112,0,224,112,0,224,112,0,224,56,1,192,56,1,192, + 24,1,128,12,3,0,6,6,0,3,252,0,14,28,56,24, + 5,0,1,128,1,128,3,128,7,128,255,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,255,252,17,28,84,24,3,0, + 7,224,0,24,60,0,32,30,0,64,15,0,192,15,0,192, + 7,128,192,7,128,240,7,128,252,7,128,252,7,128,124,7, + 128,24,15,0,0,14,0,0,28,0,0,56,0,0,112,0, + 0,224,0,1,192,0,3,0,0,6,0,0,12,0,128,24, + 0,128,48,0,128,48,1,128,112,1,128,127,255,128,127,255, + 128,127,255,128,17,28,84,24,3,0,15,224,0,48,56,0, + 96,28,0,96,14,0,240,15,0,248,15,0,248,15,0,120, + 15,0,0,15,0,0,15,0,0,14,0,0,28,0,28,56, + 0,31,224,0,0,60,0,0,30,0,0,15,0,0,7,0, + 0,7,128,0,7,128,120,7,128,248,7,128,248,7,128,248, + 7,0,192,15,0,192,14,0,96,28,0,31,240,0,19,28, + 84,24,2,0,0,12,0,0,12,0,0,28,0,0,60,0, + 0,60,0,0,124,0,0,252,0,0,252,0,1,188,0,3, + 60,0,3,60,0,6,60,0,12,60,0,12,60,0,24,60, + 0,48,60,0,32,60,0,96,60,0,192,60,0,255,255,224, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,0,7,255,224,17,29,87,24,4,0,0,2, + 0,120,12,0,127,248,0,127,240,0,111,192,0,96,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,103,224,0,104, + 60,0,112,30,0,96,14,0,96,15,0,96,7,0,0,7, + 128,0,7,128,0,7,128,16,7,128,120,7,128,252,7,128, + 252,7,128,248,15,0,224,15,0,224,14,0,96,28,0,48, + 56,0,31,240,0,17,28,84,24,3,0,1,248,0,3,12, + 0,12,6,0,28,7,0,24,15,0,56,31,0,48,31,0, + 112,14,0,112,0,0,112,0,0,240,0,0,241,240,0,246, + 28,0,252,14,0,248,7,0,248,7,0,240,7,128,240,7, + 128,240,7,128,240,7,128,112,7,128,112,7,128,112,7,0, + 48,7,0,56,7,0,24,14,0,12,28,0,7,248,0,16, + 28,56,24,4,0,255,255,255,255,255,255,192,3,128,2,128, + 2,128,6,128,4,0,12,0,8,0,24,0,48,0,32,0, + 96,0,192,0,192,1,128,3,128,3,128,7,128,7,128,7, + 128,15,192,15,192,15,192,15,192,15,192,7,192,20,28,84, + 24,2,0,3,248,0,14,14,0,56,7,0,112,3,128,112, + 1,192,240,1,192,240,1,192,240,1,192,240,1,192,248,1, + 128,126,3,128,127,131,0,63,252,0,15,252,0,7,255,0, + 24,127,192,48,15,224,112,3,224,224,1,240,224,0,240,224, + 0,240,224,0,224,224,0,224,224,0,224,112,1,192,48,1, + 128,28,7,0,15,252,0,17,28,84,24,3,0,7,224,0, + 12,56,0,56,12,0,56,14,0,112,14,0,112,7,0,240, + 7,0,240,7,0,240,7,128,240,7,128,240,7,128,240,7, + 128,112,15,128,112,15,128,56,27,128,28,51,128,7,199,128, + 0,7,128,0,7,0,0,7,0,56,7,0,124,7,0,124, + 14,0,120,14,0,112,12,0,112,24,0,48,48,0,31,224, + 0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--41-410-72-72-P-216-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 29, '1' Height: 28 + Calculated Max Values w=41 h=38 x= 5 y=22 dx=44 dy= 0 ascent=31 len=174 + Font Bounding box w=107 h=51 x=-33 y=-12 + Calculated Min Values x=-1 y=-9 dx= 0 dy= 0 + Pure Font ascent =29 descent=-9 + X Font ascent =30 descent=-9 + Max Font ascent =31 descent=-9 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr29r[7573] U8G_SECTION(".progmem.u8g_font_osr29r") = { + 0,107,51,223,244,29,9,148,21,166,32,127,247,31,247,30, + 247,0,0,0,11,0,0,5,28,28,11,3,0,112,248,248, + 248,248,248,248,248,112,112,112,112,112,112,112,112,32,32,32, + 32,32,32,0,112,248,248,248,112,9,8,16,17,4,22,227, + 128,227,128,227,128,227,128,193,128,65,128,65,0,65,0,22, + 28,84,28,3,0,0,192,192,0,192,192,0,192,192,0,192, + 128,0,129,128,1,129,128,1,129,128,1,129,128,255,255,252, + 255,255,252,1,129,0,3,3,0,3,3,0,3,3,0,3, + 3,0,3,3,0,2,2,0,6,6,0,255,255,252,255,255, + 252,6,6,0,6,6,0,6,4,0,4,12,0,12,12,0, + 12,12,0,12,12,0,12,12,0,18,34,102,24,3,253,1, + 16,0,1,16,0,1,16,0,3,248,0,13,22,0,25,17, + 0,49,16,128,97,16,192,97,16,192,97,17,192,97,19,192, + 97,19,192,113,19,128,61,16,0,63,144,0,31,240,0,15, + 252,0,3,254,0,1,127,0,1,31,128,1,19,128,33,17, + 192,113,16,192,249,16,192,241,16,192,241,16,192,225,16,128, + 97,17,128,97,17,0,49,19,0,15,188,0,1,240,0,1, + 16,0,1,16,0,28,28,112,36,4,0,31,0,6,0,49, + 128,4,0,96,192,12,0,96,192,8,0,224,224,24,0,224, + 224,48,0,224,224,32,0,224,224,96,0,224,224,64,0,224, + 224,128,0,96,193,128,0,96,193,0,0,49,131,0,0,31, + 6,0,0,0,4,15,0,0,12,48,128,0,8,48,192,0, + 16,96,96,0,48,96,96,0,32,224,112,0,96,224,112,0, + 64,224,112,0,128,224,112,1,128,224,112,1,0,96,96,2, + 0,96,96,6,0,48,192,4,0,31,128,28,28,112,32,2, + 0,0,248,0,0,3,140,0,0,7,4,0,0,6,2,0, + 0,14,2,0,0,14,2,0,0,14,6,0,0,14,4,0, + 0,15,12,0,0,7,24,0,0,7,176,0,0,3,224,0, + 0,1,224,63,240,3,224,7,128,6,240,7,0,12,120,6, + 0,24,124,6,0,48,60,4,0,112,30,12,0,112,31,24, + 0,240,15,144,0,240,7,176,0,240,7,224,0,240,3,224, + 0,240,3,240,32,120,6,248,32,60,12,124,192,31,240,63, + 128,3,8,8,10,4,22,224,224,224,224,192,64,64,64,9, + 37,74,15,4,249,1,128,3,0,6,0,14,0,12,0,24, + 0,24,0,48,0,48,0,96,0,96,0,96,0,96,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,192,0,96,0,96,0,96,0,96,0,48,0,48,0,56, + 0,24,0,12,0,12,0,6,0,3,0,3,128,1,128,9, + 37,74,15,2,249,192,0,96,0,48,0,56,0,24,0,12, + 0,12,0,6,0,6,0,3,0,3,0,3,0,3,0,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,3,128,3,0,3,0,3,0,6,0,6,0,14, + 0,12,0,24,0,24,0,48,0,96,0,224,0,192,0,15, + 17,34,21,3,11,3,128,3,192,3,128,3,128,225,142,241, + 30,249,62,29,112,3,128,3,128,29,112,249,62,241,30,227, + 142,3,128,3,192,3,128,35,34,170,39,2,250,0,0,192, + 0,0,0,0,192,0,0,0,0,192,0,0,0,0,192,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,192,0,0,0,0,192,0,0,0,0,192,0,0,0,0, + 192,0,0,0,0,192,0,0,0,0,192,0,0,255,255,255, + 255,224,255,255,255,255,224,0,0,192,0,0,0,0,192,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,192,0,0, + 0,0,192,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,192,0,0,0,0,192,0,0,0,0,192,0,0,0,0, + 192,0,0,0,0,192,0,0,0,0,192,0,0,0,0,192, + 0,0,0,0,192,0,0,5,12,12,11,3,249,112,240,248, + 248,24,8,8,16,16,32,32,64,10,2,4,14,2,9,255, + 192,255,192,5,5,5,11,3,0,112,248,248,248,112,14,38, + 76,18,2,248,0,12,0,12,0,12,0,8,0,24,0,24, + 0,16,0,48,0,48,0,32,0,96,0,96,0,64,0,192, + 0,192,0,128,1,128,1,128,1,0,3,0,3,0,2,0, + 6,0,6,0,4,0,12,0,12,0,8,0,24,0,24,0, + 16,0,48,0,48,0,32,0,96,0,96,0,64,0,192,0, + 20,28,84,24,2,0,1,248,0,7,12,0,12,7,0,28, + 3,128,24,1,128,56,1,192,56,1,192,112,0,224,112,0, + 224,112,0,224,240,0,240,240,0,240,240,0,240,240,0,240, + 240,0,240,240,0,240,240,0,240,240,0,240,240,0,240,112, + 0,224,112,0,224,112,0,224,56,1,192,56,1,192,24,1, + 128,12,3,0,6,6,0,3,252,0,14,28,56,24,5,0, + 1,128,1,128,3,128,7,128,255,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,255,252,17,28,84,24,3,0,7,224, + 0,24,60,0,32,30,0,64,15,0,192,15,0,192,7,128, + 192,7,128,240,7,128,252,7,128,252,7,128,124,7,128,24, + 15,0,0,14,0,0,28,0,0,56,0,0,112,0,0,224, + 0,1,192,0,3,0,0,6,0,0,12,0,128,24,0,128, + 48,0,128,48,1,128,112,1,128,127,255,128,127,255,128,127, + 255,128,17,28,84,24,3,0,15,224,0,48,56,0,96,28, + 0,96,14,0,240,15,0,248,15,0,248,15,0,120,15,0, + 0,15,0,0,15,0,0,14,0,0,28,0,28,56,0,31, + 224,0,0,60,0,0,30,0,0,15,0,0,7,0,0,7, + 128,0,7,128,120,7,128,248,7,128,248,7,128,248,7,0, + 192,15,0,192,14,0,96,28,0,31,240,0,19,28,84,24, + 2,0,0,12,0,0,12,0,0,28,0,0,60,0,0,60, + 0,0,124,0,0,252,0,0,252,0,1,188,0,3,60,0, + 3,60,0,6,60,0,12,60,0,12,60,0,24,60,0,48, + 60,0,32,60,0,96,60,0,192,60,0,255,255,224,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,7,255,224,17,29,87,24,4,0,0,2,0,120, + 12,0,127,248,0,127,240,0,111,192,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,103,224,0,104,60,0, + 112,30,0,96,14,0,96,15,0,96,7,0,0,7,128,0, + 7,128,0,7,128,16,7,128,120,7,128,252,7,128,252,7, + 128,248,15,0,224,15,0,224,14,0,96,28,0,48,56,0, + 31,240,0,17,28,84,24,3,0,1,248,0,3,12,0,12, + 6,0,28,7,0,24,15,0,56,31,0,48,31,0,112,14, + 0,112,0,0,112,0,0,240,0,0,241,240,0,246,28,0, + 252,14,0,248,7,0,248,7,0,240,7,128,240,7,128,240, + 7,128,240,7,128,112,7,128,112,7,128,112,7,0,48,7, + 0,56,7,0,24,14,0,12,28,0,7,248,0,16,28,56, + 24,4,0,255,255,255,255,255,255,192,3,128,2,128,2,128, + 6,128,4,0,12,0,8,0,24,0,48,0,32,0,96,0, + 192,0,192,1,128,3,128,3,128,7,128,7,128,7,128,15, + 192,15,192,15,192,15,192,15,192,7,192,20,28,84,24,2, + 0,3,248,0,14,14,0,56,7,0,112,3,128,112,1,192, + 240,1,192,240,1,192,240,1,192,240,1,192,248,1,128,126, + 3,128,127,131,0,63,252,0,15,252,0,7,255,0,24,127, + 192,48,15,224,112,3,224,224,1,240,224,0,240,224,0,240, + 224,0,224,224,0,224,224,0,224,112,1,192,48,1,128,28, + 7,0,15,252,0,17,28,84,24,3,0,7,224,0,12,56, + 0,56,12,0,56,14,0,112,14,0,112,7,0,240,7,0, + 240,7,0,240,7,128,240,7,128,240,7,128,240,7,128,112, + 15,128,112,15,128,56,27,128,28,51,128,7,199,128,0,7, + 128,0,7,0,0,7,0,56,7,0,124,7,0,124,14,0, + 120,14,0,112,12,0,112,24,0,48,48,0,31,224,0,5, + 19,19,11,3,0,112,248,248,248,112,0,0,0,0,0,0, + 0,0,0,112,248,248,248,112,5,26,26,11,3,249,112,248, + 248,248,112,0,0,0,0,0,0,0,0,0,112,240,248,120, + 8,8,8,16,16,32,96,64,32,34,136,39,3,250,0,0, + 0,2,0,0,0,7,0,0,0,28,0,0,0,112,0,0, + 1,224,0,0,7,128,0,0,30,0,0,0,120,0,0,1, + 224,0,0,3,128,0,0,14,0,0,0,56,0,0,0,240, + 0,0,3,192,0,0,15,0,0,0,60,0,0,0,240,0, + 0,0,224,0,0,0,120,0,0,0,30,0,0,0,7,128, + 0,0,1,192,0,0,0,112,0,0,0,28,0,0,0,7, + 0,0,0,3,192,0,0,0,240,0,0,0,60,0,0,0, + 15,0,0,0,3,128,0,0,0,224,0,0,0,56,0,0, + 0,14,0,0,0,6,35,10,50,39,2,6,255,255,255,255, + 224,255,255,255,255,224,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,255,255,255,255,224,255,255,255,255,224,32,34, + 136,39,3,250,64,0,0,0,224,0,0,0,56,0,0,0, + 14,0,0,0,7,128,0,0,1,224,0,0,0,120,0,0, + 0,30,0,0,0,7,128,0,0,1,192,0,0,0,112,0, + 0,0,28,0,0,0,15,0,0,0,3,192,0,0,0,240, + 0,0,0,60,0,0,0,15,0,0,0,7,0,0,0,30, + 0,0,0,120,0,0,1,224,0,0,3,128,0,0,14,0, + 0,0,56,0,0,0,224,0,0,3,192,0,0,15,0,0, + 0,60,0,0,0,240,0,0,1,192,0,0,7,0,0,0, + 28,0,0,0,112,0,0,0,96,0,0,0,15,28,56,20, + 3,0,15,192,48,112,64,60,192,28,192,30,248,30,248,30, + 112,30,0,28,0,60,0,120,0,240,1,192,3,128,6,0, + 12,0,8,32,8,32,8,32,12,64,7,128,0,0,0,0, + 3,128,7,192,7,192,7,192,3,128,29,29,116,33,2,1, + 0,63,248,0,1,192,14,0,3,0,3,0,6,0,1,128, + 12,0,0,192,24,7,206,96,48,12,124,32,48,56,60,48, + 96,112,60,16,96,224,56,24,96,224,56,24,193,192,56,24, + 193,192,56,24,193,192,48,24,195,192,112,24,195,128,112,24, + 195,128,112,48,195,128,224,48,195,128,224,48,67,129,224,96, + 97,130,224,192,97,196,225,128,48,120,62,0,48,0,0,0, + 24,0,0,0,12,0,0,0,6,0,4,0,3,128,28,0, + 0,127,240,0,29,29,116,32,2,0,0,2,0,0,0,6, + 0,0,0,7,0,0,0,7,0,0,0,15,128,0,0,15, + 128,0,0,15,128,0,0,31,192,0,0,19,192,0,0,51, + 192,0,0,49,224,0,0,33,224,0,0,97,224,0,0,96, + 240,0,0,64,240,0,0,192,240,0,0,192,120,0,0,128, + 120,0,1,128,120,0,1,255,252,0,1,0,60,0,3,0, + 28,0,3,0,30,0,6,0,30,0,6,0,15,0,6,0, + 15,0,14,0,15,0,30,0,15,128,255,224,255,248,23,29, + 87,28,3,0,255,255,128,15,0,224,15,0,120,15,0,60, + 15,0,28,15,0,28,15,0,30,15,0,30,15,0,28,15, + 0,28,15,0,56,15,0,48,15,0,224,15,255,0,15,0, + 224,15,0,112,15,0,56,15,0,60,15,0,30,15,0,30, + 15,0,30,15,0,30,15,0,30,15,0,30,15,0,60,15, + 0,60,15,0,120,15,0,224,255,255,128,22,29,87,28,3, + 1,1,254,8,7,3,152,12,0,248,28,0,248,24,0,120, + 56,0,56,120,0,56,112,0,24,112,0,24,240,0,8,240, + 0,8,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,0,240,0,0,112,0,12,112,0,12, + 120,0,12,56,0,24,56,0,24,28,0,24,12,0,48,6, + 0,96,3,0,192,0,255,128,27,29,116,32,3,0,255,255, + 192,0,15,0,112,0,15,0,28,0,15,0,14,0,15,0, + 7,0,15,0,7,128,15,0,3,128,15,0,3,192,15,0, + 3,192,15,0,1,192,15,0,1,224,15,0,1,224,15,0, + 1,224,15,0,1,224,15,0,1,224,15,0,1,224,15,0, + 1,224,15,0,1,224,15,0,1,224,15,0,3,192,15,0, + 3,192,15,0,3,192,15,0,3,128,15,0,7,0,15,0, + 7,0,15,0,14,0,15,0,28,0,15,0,112,0,255,255, + 192,0,23,29,87,29,3,0,255,255,254,15,0,62,15,0, + 14,15,0,14,15,0,6,15,0,6,15,0,2,15,0,2, + 15,1,2,15,1,0,15,1,0,15,1,0,15,3,0,15, + 7,0,15,255,0,15,7,0,15,3,0,15,1,0,15,1, + 2,15,1,2,15,1,2,15,0,2,15,0,6,15,0,6, + 15,0,6,15,0,14,15,0,30,15,0,126,255,255,254,23, + 29,87,28,3,0,255,255,254,15,0,62,15,0,14,15,0, + 14,15,0,6,15,0,6,15,0,2,15,0,2,15,1,2, + 15,1,0,15,1,0,15,1,0,15,3,0,15,7,0,15, + 255,0,15,7,0,15,3,0,15,1,0,15,1,0,15,1, + 0,15,1,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,255,240,0,25,30,120,29, + 3,0,0,16,0,0,1,254,8,0,6,3,152,0,12,0, + 248,0,28,0,248,0,24,0,120,0,56,0,56,0,56,0, + 56,0,112,0,24,0,112,0,24,0,112,0,8,0,240,0, + 8,0,240,0,0,0,240,0,0,0,240,0,0,0,240,7, + 255,128,240,0,120,0,240,0,120,0,240,0,120,0,240,0, + 120,0,112,0,120,0,112,0,120,0,112,0,120,0,56,0, + 120,0,56,0,120,0,24,0,248,0,28,0,200,0,12,1, + 136,0,6,3,8,0,1,254,8,0,28,29,116,33,3,0, + 255,240,255,240,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,255,255,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 255,240,255,240,12,29,58,17,3,0,255,240,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,15,0,15,0,15,0,15,0,15,0,15,0,15,0, + 15,0,255,240,19,29,87,22,2,0,1,255,224,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,120,30,0,248,30,0,248,30,0,248, + 30,0,192,28,0,192,28,0,64,24,0,96,48,0,31,224, + 0,27,29,116,32,3,0,255,241,255,192,15,0,126,0,15, + 0,60,0,15,0,56,0,15,0,112,0,15,0,96,0,15, + 0,192,0,15,1,128,0,15,3,0,0,15,6,0,0,15, + 14,0,0,15,30,0,0,15,63,0,0,15,111,0,0,15, + 207,128,0,15,135,128,0,15,7,192,0,15,3,192,0,15, + 3,224,0,15,3,224,0,15,1,240,0,15,1,240,0,15, + 0,248,0,15,0,248,0,15,0,124,0,15,0,124,0,15, + 0,62,0,15,0,63,0,255,241,255,224,23,29,87,28,3, + 0,255,248,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,2,15,0,2,15,0,6, + 15,0,6,15,0,6,15,0,14,15,0,14,15,0,30,15, + 0,62,15,0,254,255,255,254,30,29,116,35,3,0,255,128, + 3,252,15,128,7,192,15,192,7,192,15,192,7,192,15,192, + 15,192,13,192,11,192,13,224,11,192,13,224,11,192,12,224, + 27,192,12,240,19,192,12,240,19,192,12,112,51,192,12,112, + 35,192,12,120,35,192,12,120,35,192,12,56,99,192,12,60, + 67,192,12,60,67,192,12,28,195,192,12,28,131,192,12,30, + 131,192,12,14,131,192,12,15,131,192,12,15,3,192,12,15, + 3,192,12,7,3,192,12,6,3,192,30,6,3,192,255,194, + 63,252,28,29,116,32,3,0,255,0,63,240,15,128,7,128, + 15,128,3,0,15,192,3,0,15,224,3,0,13,224,3,0, + 13,240,3,0,12,248,3,0,12,120,3,0,12,124,3,0, + 12,60,3,0,12,30,3,0,12,31,3,0,12,15,3,0, + 12,7,131,0,12,7,131,0,12,3,195,0,12,3,227,0, + 12,1,227,0,12,0,243,0,12,0,251,0,12,0,123,0, + 12,0,63,0,12,0,63,0,12,0,31,0,12,0,31,0, + 12,0,15,0,30,0,7,0,255,192,7,0,24,29,87,29, + 3,1,0,255,0,3,0,192,6,0,96,12,0,48,28,0, + 56,56,0,28,56,0,28,120,0,30,112,0,14,112,0,14, + 240,0,15,240,0,15,240,0,15,240,0,15,240,0,15,240, + 0,15,240,0,15,240,0,15,240,0,15,112,0,14,112,0, + 14,120,0,30,56,0,28,56,0,28,28,0,56,12,0,48, + 6,0,96,3,0,192,0,255,0,23,29,87,28,3,0,255, + 255,128,15,0,224,15,0,120,15,0,60,15,0,60,15,0, + 30,15,0,30,15,0,30,15,0,30,15,0,30,15,0,60, + 15,0,60,15,0,120,15,0,224,15,255,128,15,0,0,15, + 0,0,15,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,255,248,0,24,36,108,29,3,250,0,255,0,3, + 0,192,6,0,96,12,0,48,28,0,56,56,0,28,56,0, + 28,120,0,30,112,0,14,112,0,14,240,0,15,240,0,15, + 240,0,15,240,0,15,240,0,15,240,0,15,240,0,15,240, + 0,15,240,0,15,112,0,14,120,0,30,120,0,30,56,60, + 28,56,99,28,28,195,56,14,193,184,6,193,240,3,193,225, + 0,247,193,0,9,193,0,1,193,0,1,195,0,1,226,0, + 1,254,0,0,252,0,0,56,25,29,116,29,3,0,255,255, + 128,0,15,1,240,0,15,0,120,0,15,0,120,0,15,0, + 60,0,15,0,60,0,15,0,60,0,15,0,60,0,15,0, + 60,0,15,0,120,0,15,0,240,0,15,1,224,0,15,255, + 0,0,15,3,128,0,15,1,192,0,15,0,224,0,15,0, + 224,0,15,0,240,0,15,0,240,0,15,0,240,0,15,0, + 240,0,15,0,240,0,15,0,248,128,15,0,120,128,15,0, + 120,128,15,0,121,128,15,0,127,0,15,0,63,0,255,248, + 30,0,19,29,87,25,4,1,15,240,192,48,28,192,96,15, + 192,96,7,192,192,3,192,192,1,192,192,1,192,192,0,192, + 224,0,192,240,0,192,120,0,64,127,0,0,63,192,0,31, + 248,0,15,254,0,1,255,128,128,127,128,128,15,192,128,3, + 224,128,1,224,192,0,224,192,0,96,224,0,96,224,0,96, + 240,0,96,248,0,192,156,0,128,134,1,0,131,254,0,24, + 29,87,29,3,0,255,255,255,248,60,31,240,60,15,224,60, + 7,192,60,3,192,60,3,192,60,3,128,60,1,128,60,1, + 128,60,1,128,60,1,0,60,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,0,0,60,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,0,0,60,0,0,60,0, + 0,60,0,0,60,0,0,60,0,7,255,224,29,29,116,34, + 3,0,255,240,31,248,15,0,3,192,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,15,0, + 1,128,15,0,1,128,15,0,1,128,15,0,1,128,7,0, + 1,0,7,0,3,0,3,128,2,0,1,192,6,0,0,224, + 24,0,0,63,240,0,29,29,116,32,2,0,255,248,63,248, + 15,128,3,192,7,128,3,128,7,128,3,0,3,192,3,0, + 3,192,3,0,3,192,2,0,1,224,6,0,1,224,6,0, + 1,240,4,0,0,240,12,0,0,240,12,0,0,248,8,0, + 0,120,24,0,0,120,24,0,0,60,16,0,0,60,48,0, + 0,60,48,0,0,30,32,0,0,30,96,0,0,31,96,0, + 0,15,64,0,0,15,192,0,0,15,192,0,0,7,128,0, + 0,7,128,0,0,7,128,0,0,3,0,0,0,3,0,0, + 41,29,174,44,2,0,255,241,255,227,255,128,15,128,63,0, + 124,0,7,128,30,0,56,0,7,128,30,0,48,0,7,128, + 31,0,48,0,3,192,31,0,48,0,3,192,31,0,96,0, + 3,192,55,0,96,0,1,224,55,128,96,0,1,224,55,128, + 64,0,1,224,39,128,192,0,1,224,99,192,192,0,0,240, + 99,192,128,0,0,240,67,193,128,0,0,240,193,193,128,0, + 0,120,193,225,0,0,0,120,193,227,0,0,0,120,129,227, + 0,0,0,125,128,242,0,0,0,61,128,246,0,0,0,61, + 0,246,0,0,0,61,0,116,0,0,0,31,0,124,0,0, + 0,31,0,124,0,0,0,30,0,60,0,0,0,14,0,56, + 0,0,0,14,0,56,0,0,0,12,0,56,0,0,0,12, + 0,16,0,0,28,29,116,31,2,0,255,248,255,224,7,192, + 30,0,7,192,28,0,3,224,24,0,1,224,24,0,1,240, + 48,0,0,240,32,0,0,248,96,0,0,120,192,0,0,124, + 128,0,0,61,128,0,0,63,0,0,0,30,0,0,0,15, + 0,0,0,15,0,0,0,15,128,0,0,31,128,0,0,51, + 192,0,0,51,224,0,0,97,224,0,0,193,240,0,0,192, + 240,0,1,128,248,0,3,0,120,0,3,0,124,0,6,0, + 60,0,14,0,62,0,31,0,63,0,255,225,255,240,27,29, + 116,30,2,0,255,248,127,224,15,128,31,0,15,128,14,0, + 7,128,12,0,3,192,12,0,3,192,8,0,1,224,24,0, + 1,240,16,0,0,240,48,0,0,248,32,0,0,120,96,0, + 0,60,64,0,0,60,192,0,0,30,128,0,0,31,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,0,15,0,0,0,15,0,0,0,15,0,0, + 0,15,0,0,1,255,248,0,22,29,87,27,3,0,63,255, + 252,62,0,120,60,0,248,56,0,240,48,1,224,48,3,224, + 96,3,192,96,7,128,64,15,128,64,15,0,0,31,0,0, + 62,0,0,60,0,0,124,0,0,120,0,0,240,0,1,240, + 0,1,224,0,3,224,4,7,192,4,7,128,12,15,128,12, + 31,0,12,31,0,28,62,0,28,60,0,60,124,0,120,248, + 0,248,255,255,248,8,37,37,16,5,248,255,240,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,240,255, + 14,38,76,18,2,248,192,0,64,0,96,0,96,0,32,0, + 48,0,48,0,16,0,24,0,24,0,8,0,12,0,12,0, + 4,0,4,0,6,0,2,0,2,0,3,0,3,0,1,0, + 1,128,1,128,0,128,0,192,0,192,0,64,0,96,0,96, + 0,32,0,48,0,48,0,16,0,24,0,24,0,8,0,12, + 0,12,8,37,37,16,3,248,255,15,7,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,15,255,18,14,42, + 24,3,15,0,192,0,1,192,0,1,224,0,3,48,0,3, + 48,0,6,24,0,12,12,0,12,12,0,24,6,0,48,6, + 0,48,3,0,96,1,128,224,1,128,192,0,192,21,2,6, + 21,0,250,255,255,248,255,255,248,7,7,7,18,3,21,192, + 224,112,56,24,12,2,18,19,57,21,2,0,15,192,0,56, + 112,0,32,56,0,96,28,0,120,28,0,120,28,0,56,28, + 0,0,28,0,0,252,0,15,28,0,56,28,0,112,28,0, + 224,28,0,224,28,64,224,60,64,224,60,64,224,92,192,112, + 159,128,31,15,0,18,29,87,21,1,0,252,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,120,0,28,142,0,29, + 7,0,30,3,128,30,3,128,28,3,128,28,3,192,28,3, + 192,28,3,192,28,3,192,28,3,192,28,3,192,28,3,192, + 28,3,128,28,3,128,30,3,128,27,7,0,17,142,0,16, + 248,0,15,19,38,18,2,0,7,224,28,16,56,8,48,12, + 112,28,112,60,240,60,240,24,240,0,240,0,240,0,240,0, + 240,6,112,4,112,4,48,12,56,8,12,48,7,224,18,29, + 87,21,2,0,0,254,0,0,14,0,0,14,0,0,14,0, + 0,14,0,0,14,0,0,14,0,0,14,0,0,14,0,0, + 14,0,15,142,0,28,78,0,56,46,0,112,30,0,112,30, + 0,112,14,0,240,14,0,240,14,0,240,14,0,240,14,0, + 240,14,0,240,14,0,240,14,0,112,14,0,112,14,0,112, + 30,0,56,62,0,24,110,0,7,207,192,15,19,38,19,2, + 0,7,192,12,112,56,56,48,28,112,28,112,28,240,30,240, + 30,255,254,240,0,240,0,240,0,240,6,112,4,112,4,56, + 4,56,8,28,16,7,224,14,29,58,14,1,0,1,240,7, + 24,14,24,12,60,28,60,28,56,28,0,28,0,28,0,28, + 0,255,192,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,255,192,20,28,84,22,2,247,7,225,192, + 28,58,96,56,30,240,112,30,240,112,14,224,240,15,0,240, + 15,0,240,15,0,112,14,0,112,30,0,56,28,0,28,56, + 0,7,224,0,56,0,0,64,0,0,192,0,0,240,0,0, + 255,254,0,63,255,0,15,7,128,112,1,192,64,0,192,192, + 0,192,192,0,192,192,1,128,96,1,128,56,6,0,7,248, + 0,20,29,87,22,1,0,252,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,60,0,28,199,0,29,3,0,29,3, + 128,30,3,128,30,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,255,159,240,8,28, + 28,11,1,0,24,60,60,24,0,0,0,0,0,252,28,28, + 28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,255, + 11,37,74,14,255,247,0,192,1,224,1,224,0,192,0,0, + 0,0,0,0,0,0,0,0,15,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,224,224,240,224,224,192,193,128,99,128,62,0, + 19,29,87,21,1,0,252,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,63,192,28,14,0,28,12,0,28,8,0, + 28,16,0,28,48,0,28,96,0,28,192,0,28,224,0,29, + 224,0,30,240,0,30,120,0,28,60,0,28,60,0,28,30, + 0,28,15,0,28,15,0,28,15,128,255,63,224,9,29,58, + 11,1,0,252,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,255,128,31,19,76, + 33,1,0,252,124,15,128,28,199,24,192,29,7,32,224,31, + 3,224,112,30,3,192,112,28,3,128,112,28,3,128,112,28, + 3,128,112,28,3,128,112,28,3,128,112,28,3,128,112,28, + 3,128,112,28,3,128,112,28,3,128,112,28,3,128,112,28, + 3,128,112,28,3,128,112,28,3,128,112,255,159,243,254,20, + 19,57,22,1,0,252,60,0,28,199,0,29,3,0,31,3, + 128,30,3,128,30,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,3,128,28,3,128,28,3,128,255,159,240,17,19, + 57,21,2,0,3,224,0,12,56,0,24,28,0,56,14,0, + 112,14,0,112,7,0,240,7,0,240,7,0,240,7,128,240, + 7,128,240,7,128,240,7,0,240,7,0,112,7,0,112,14, + 0,56,14,0,24,28,0,12,56,0,3,224,0,18,28,84, + 21,1,247,252,120,0,29,142,0,31,7,0,30,3,128,30, + 3,128,28,3,128,28,3,192,28,3,192,28,3,192,28,3, + 192,28,3,192,28,3,192,28,3,192,28,3,128,28,3,128, + 30,3,128,31,7,0,29,134,0,28,120,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,255,128,0,18,28,84,21,2,247,7,130,0, + 28,98,0,56,54,0,112,22,0,112,30,0,112,14,0,240, + 14,0,240,14,0,240,14,0,240,14,0,240,14,0,240,14, + 0,240,14,0,112,14,0,112,14,0,112,30,0,56,62,0, + 24,110,0,7,206,0,0,14,0,0,14,0,0,14,0,0, + 14,0,0,14,0,0,14,0,0,14,0,0,14,0,0,127, + 192,15,19,38,16,1,0,252,56,28,196,28,142,29,30,31, + 28,30,12,30,0,30,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,255,128,14,19,38, + 18,2,0,31,16,96,208,64,112,192,48,192,16,224,16,240, + 0,126,0,63,128,31,224,3,248,128,252,192,28,192,12,224, + 12,224,12,240,8,140,24,131,224,12,27,54,14,1,0,4, + 0,4,0,4,0,4,0,4,0,12,0,12,0,28,0,255, + 224,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,16,28,16,28,16,28,48,30, + 32,15,224,7,192,20,19,57,22,1,0,252,31,128,28,3, + 128,28,3,128,28,3,128,28,3,128,28,3,128,28,3,128, + 28,3,128,28,3,128,28,3,128,28,3,128,28,3,128,28, + 3,128,28,7,128,28,7,128,28,15,128,12,11,128,14,51, + 128,3,195,240,20,19,57,21,1,0,255,15,240,60,3,128, + 28,3,0,28,3,0,14,2,0,14,2,0,15,6,0,7, + 4,0,7,4,0,3,140,0,3,136,0,3,200,0,1,216, + 0,1,208,0,0,240,0,0,240,0,0,96,0,0,96,0, + 0,96,0,30,19,76,31,1,0,255,31,243,252,60,7,128, + 224,28,3,128,192,28,3,128,192,14,3,192,128,14,3,192, + 128,15,7,193,128,7,5,225,0,7,4,225,0,3,140,227, + 0,3,136,114,0,1,200,114,0,1,216,118,0,1,240,60, + 0,0,240,60,0,0,240,60,0,0,96,24,0,0,96,24, + 0,0,32,24,0,18,19,57,21,1,0,255,31,192,30,14, + 0,30,12,0,14,8,0,15,24,0,7,16,0,3,160,0, + 3,224,0,1,192,0,1,224,0,1,224,0,1,112,0,3, + 120,0,2,56,0,4,28,0,12,28,0,24,14,0,24,15, + 0,254,63,192,20,28,84,22,1,247,255,143,240,30,1,128, + 30,1,128,14,1,0,14,1,0,15,3,0,7,2,0,7, + 2,0,3,134,0,3,132,0,3,132,0,1,204,0,1,200, + 0,1,200,0,0,248,0,0,240,0,0,240,0,0,112,0, + 0,96,0,0,96,0,0,96,0,0,64,0,48,64,0,120, + 192,0,120,128,0,113,128,0,51,0,0,30,0,0,14,19, + 38,18,2,0,255,252,224,60,192,56,192,120,128,240,128,224, + 129,224,1,192,3,128,7,128,7,0,15,0,30,4,28,4, + 60,4,56,12,112,12,240,28,255,252,10,37,74,17,4,248, + 1,192,6,0,12,0,8,0,24,0,24,0,24,0,28,0, + 28,0,12,0,14,0,14,0,14,0,6,0,6,0,6,0, + 4,0,8,0,240,0,24,0,12,0,4,0,6,0,6,0, + 14,0,14,0,14,0,12,0,28,0,28,0,24,0,24,0, + 24,0,8,0,12,0,6,0,1,192,2,38,38,12,5,248, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,10,37,74,17,3,248,224,0,24,0, + 12,0,4,0,6,0,6,0,6,0,14,0,14,0,12,0, + 28,0,28,0,28,0,24,0,24,0,24,0,8,0,4,0, + 3,192,6,0,8,0,24,0,24,0,24,0,28,0,28,0, + 28,0,12,0,14,0,14,0,6,0,6,0,6,0,4,0, + 12,0,24,0,224,0,23,8,24,27,2,7,30,0,8,127, + 192,4,255,240,2,199,254,2,128,255,134,128,63,254,192,15, + 252,96,1,248,255}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--49-490-72-72-P-256-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 35, '1' Height: 34 + Calculated Max Values w=49 h=47 x=10 y=28 dx=52 dy= 0 ascent=47 len=252 + Font Bounding box w=128 h=62 x=-40 y=-15 + Calculated Min Values x=-2 y=-13 dx= 0 dy= 0 + Pure Font ascent =35 descent=-10 + X Font ascent =36 descent=-10 + Max Font ascent =47 descent=-13 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr35[22370] U8G_SECTION(".progmem.u8g_font_osr35") = { + 0,128,62,216,241,35,12,236,30,116,32,255,246,47,243,36, + 246,0,0,0,14,0,0,6,34,34,14,4,0,120,252,252, + 252,252,252,252,252,252,120,120,120,120,120,120,48,48,48,48, + 48,48,48,48,48,48,48,0,0,0,120,252,252,252,120,11, + 10,20,19,4,26,224,224,224,224,224,224,224,224,224,224,224, + 224,64,64,64,64,64,64,64,64,26,34,136,34,4,0,0, + 48,24,0,0,48,24,0,0,112,24,0,0,96,24,0,0, + 96,56,0,0,96,56,0,0,96,48,0,0,96,48,0,0, + 96,48,0,0,224,48,0,255,255,255,192,255,255,255,192,0, + 192,96,0,0,192,96,0,0,192,96,0,1,192,96,0,1, + 128,96,0,1,128,224,0,1,128,192,0,1,128,192,0,1, + 128,192,0,3,128,192,0,255,255,255,192,255,255,255,192,3, + 1,128,0,3,1,128,0,3,1,128,0,7,1,128,0,7, + 1,128,0,6,1,128,0,6,3,128,0,6,3,0,0,6, + 3,0,0,6,3,0,0,22,41,123,29,3,252,0,204,0, + 0,204,0,0,204,0,1,254,0,7,207,192,12,204,96,24, + 204,48,48,204,24,32,204,24,96,204,28,96,204,60,96,204, + 124,96,204,124,112,204,120,120,204,120,62,204,0,63,204,0, + 31,252,0,15,252,0,7,255,128,1,255,192,0,255,224,0, + 207,240,0,205,248,0,204,120,48,204,60,120,204,28,248,204, + 28,248,204,12,240,204,12,240,204,8,224,204,24,96,204,24, + 96,204,48,48,204,96,28,205,192,7,255,128,0,204,0,0, + 204,0,0,204,0,0,204,0,33,34,170,43,5,0,15,128, + 0,48,0,24,192,0,96,0,48,96,0,64,0,112,112,0, + 192,0,96,48,1,128,0,224,56,1,128,0,224,56,3,0, + 0,224,56,2,0,0,224,56,6,0,0,224,56,12,0,0, + 224,56,12,0,0,224,56,24,0,0,96,48,48,0,0,96, + 112,48,0,0,48,96,96,0,0,24,192,64,0,0,15,128, + 192,0,0,0,1,128,248,0,0,1,129,140,0,0,3,3, + 6,0,0,2,6,7,0,0,6,6,3,0,0,12,14,3, + 128,0,8,14,3,128,0,24,14,3,128,0,48,14,3,128, + 0,48,14,3,128,0,96,14,3,128,0,64,14,3,128,0, + 192,6,3,0,1,128,6,3,0,1,128,7,7,0,3,0, + 3,14,0,6,0,1,252,0,33,34,170,39,3,0,0,63, + 0,0,0,0,227,128,0,0,1,128,192,0,0,3,128,64, + 0,0,3,0,96,0,0,7,0,96,0,0,7,0,96,0, + 0,7,0,224,0,0,7,0,192,0,0,7,129,192,0,0, + 7,131,128,0,0,3,199,0,0,0,3,238,0,0,0,1, + 248,0,0,0,0,248,7,255,128,1,248,0,252,0,3,252, + 0,112,0,7,62,0,112,0,14,63,0,96,0,28,31,0, + 96,0,60,15,128,192,0,56,7,192,192,0,120,7,193,128, + 0,120,3,225,128,0,240,1,243,0,0,240,1,254,0,0, + 240,0,254,0,0,240,0,124,0,0,248,0,62,0,0,248, + 0,62,1,0,120,0,127,1,0,60,0,207,130,0,30,3, + 135,252,0,15,254,1,248,0,3,10,10,11,4,26,224,224, + 224,224,224,224,64,64,64,64,11,46,92,18,5,246,0,64, + 0,224,1,192,3,128,3,0,6,0,14,0,12,0,28,0, + 24,0,56,0,48,0,48,0,112,0,96,0,96,0,96,0, + 224,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,224,0,96,0,96,0,96,0,112,0, + 48,0,48,0,56,0,24,0,28,0,12,0,14,0,6,0, + 3,0,3,128,1,192,0,224,0,64,11,45,90,18,2,246, + 64,0,96,0,112,0,56,0,28,0,12,0,14,0,6,0, + 3,0,3,0,3,128,1,128,1,192,0,192,0,192,0,192, + 0,224,0,96,0,96,0,96,0,96,0,96,0,96,0,96, + 0,96,0,96,0,96,0,96,0,96,0,224,0,192,0,192, + 0,192,1,128,1,128,3,128,3,0,7,0,6,0,14,0, + 12,0,24,0,56,0,112,0,224,0,18,20,60,25,4,14, + 0,224,0,1,224,0,1,224,0,1,224,0,96,195,128,240, + 135,192,248,143,192,124,159,128,7,248,0,1,224,0,1,224, + 0,6,184,0,124,143,128,248,135,192,240,195,192,97,193,128, + 1,224,0,1,224,0,1,224,0,0,224,0,41,41,246,45, + 2,248,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,255,255,255,255,255,128,255,255,255,255,255,128, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,7,15,15,14,4,247,120,252, + 252,254,126,6,6,6,4,12,8,24,48,96,64,12,3,6, + 18,3,11,255,240,255,240,255,240,6,5,5,14,4,1,120, + 252,252,252,120,16,46,92,22,3,246,0,3,0,3,0,3, + 0,6,0,6,0,6,0,12,0,12,0,12,0,24,0,24, + 0,24,0,48,0,48,0,48,0,48,0,96,0,96,0,96, + 0,192,0,192,0,192,1,128,1,128,1,128,3,0,3,0, + 3,0,6,0,6,0,6,0,12,0,12,0,12,0,24,0, + 24,0,24,0,48,0,48,0,48,0,96,0,96,0,96,0, + 96,0,192,0,192,0,23,34,102,28,2,0,0,124,0,1, + 199,0,7,1,128,6,0,192,14,0,224,28,0,112,60,0, + 120,60,0,120,56,0,56,120,0,60,120,0,60,120,0,60, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,120,0, + 60,120,0,60,120,0,60,120,0,60,60,0,120,60,0,120, + 28,0,112,28,0,112,14,0,224,7,1,192,3,131,128,0, + 254,0,17,34,102,28,6,0,0,64,0,0,64,0,0,192, + 0,0,192,0,1,192,0,7,192,0,255,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,255,255,128,255,255,128,21,34, + 102,28,4,0,3,252,0,14,31,0,16,7,192,32,3,224, + 96,1,240,64,1,240,192,0,240,192,0,248,224,0,248,252, + 0,248,254,0,248,126,0,248,126,0,240,62,1,240,0,1, + 224,0,3,192,0,3,128,0,7,0,0,14,0,0,28,0, + 0,112,0,0,224,0,1,192,0,3,0,0,6,0,16,12, + 0,16,24,0,16,16,0,16,48,0,48,48,0,112,127,255, + 240,127,255,240,127,255,240,127,255,240,21,34,102,28,4,0, + 3,248,0,14,31,0,24,7,128,48,3,192,112,3,192,120, + 1,224,124,1,224,126,1,224,126,1,224,60,1,224,0,1, + 224,0,3,192,0,3,192,0,7,128,0,14,0,15,248,0, + 31,143,0,14,3,128,0,3,224,0,1,224,0,1,240,0, + 0,248,0,0,248,0,0,248,60,0,248,126,0,248,254,0, + 248,254,0,248,252,1,240,224,1,240,224,3,224,96,3,192, + 48,15,0,15,254,0,23,34,102,28,3,0,0,1,128,0, + 1,128,0,3,128,0,7,128,0,7,128,0,15,128,0,31, + 128,0,31,128,0,55,128,0,119,128,0,231,128,0,199,128, + 1,199,128,3,135,128,3,7,128,6,7,128,14,7,128,12, + 7,128,24,7,128,56,7,128,48,7,128,96,7,128,224,7, + 128,255,255,254,0,7,128,0,7,128,0,7,128,0,7,128, + 0,7,128,0,7,128,0,7,128,0,7,128,3,255,254,3, + 255,254,21,35,105,28,4,0,48,0,64,60,3,192,63,255, + 128,63,255,0,63,252,0,55,240,0,48,0,0,48,0,0, + 48,0,0,48,0,0,48,0,0,48,0,0,48,0,0,51, + 254,0,60,7,128,56,3,192,48,1,224,48,1,240,48,1, + 240,0,0,240,0,0,248,0,0,248,0,0,248,0,0,248, + 60,0,248,126,0,248,254,0,248,254,0,240,252,1,240,248, + 1,224,240,1,224,112,3,192,112,7,128,60,31,0,15,252, + 0,21,34,102,28,4,0,0,126,0,1,193,128,3,128,192, + 7,0,64,14,0,224,28,1,224,28,3,224,56,3,224,56, + 3,192,120,0,0,120,0,0,120,0,0,120,0,0,240,126, + 0,241,255,128,243,131,192,247,1,224,254,1,240,252,0,240, + 252,0,240,248,0,248,248,0,120,248,0,120,248,0,120,120, + 0,120,120,0,120,120,0,248,120,0,240,56,0,240,60,0, + 224,28,1,224,14,3,192,7,7,128,1,254,0,19,34,102, + 28,5,0,255,255,224,255,255,224,255,255,224,255,255,224,224, + 0,224,192,0,64,128,0,64,128,0,192,128,0,128,128,1, + 128,0,1,128,0,3,0,0,2,0,0,6,0,0,12,0, + 0,24,0,0,24,0,0,48,0,0,112,0,0,112,0,0, + 224,0,0,224,0,1,224,0,1,224,0,3,224,0,3,224, + 0,3,224,0,7,240,0,7,240,0,7,240,0,7,240,0, + 7,240,0,3,240,0,3,224,0,23,34,102,28,3,0,1, + 254,0,7,135,128,30,1,192,56,0,224,120,0,112,112,0, + 112,240,0,56,240,0,56,240,0,56,240,0,56,248,0,56, + 252,0,112,126,0,112,127,192,224,63,241,192,31,255,0,7, + 255,128,7,255,224,12,63,248,56,7,252,112,1,252,112,0, + 126,224,0,62,224,0,62,224,0,62,224,0,30,224,0,30, + 224,0,28,96,0,60,112,0,56,48,0,120,24,0,240,14, + 1,192,3,255,0,21,34,102,28,4,0,1,248,0,7,142, + 0,14,3,0,28,1,128,56,1,192,120,1,224,120,0,224, + 120,0,240,240,0,240,240,0,240,240,0,240,240,0,248,240, + 0,248,248,0,248,120,1,248,120,1,248,120,3,248,60,7, + 120,30,14,120,15,252,120,3,240,120,0,0,240,0,0,240, + 0,0,240,0,0,240,60,0,224,124,0,224,124,1,192,124, + 1,192,120,3,128,112,3,0,56,6,0,28,28,0,15,248, + 0,6,22,22,14,4,1,120,252,252,252,120,0,0,0,0, + 0,0,0,0,0,0,0,0,120,252,252,252,120,7,31,31, + 14,4,248,120,252,252,252,120,0,0,0,0,0,0,0,0, + 0,0,0,120,252,252,254,126,14,6,6,4,12,8,24,48, + 96,64,38,40,200,46,4,249,0,0,0,0,28,0,0,0, + 0,120,0,0,0,1,240,0,0,0,7,192,0,0,0,15, + 0,0,0,0,60,0,0,0,0,240,0,0,0,3,192,0, + 0,0,15,0,0,0,0,62,0,0,0,0,248,0,0,0, + 1,224,0,0,0,7,128,0,0,0,30,0,0,0,0,120, + 0,0,0,1,224,0,0,0,7,192,0,0,0,31,0,0, + 0,0,60,0,0,0,0,240,0,0,0,0,240,0,0,0, + 0,124,0,0,0,0,31,0,0,0,0,7,128,0,0,0, + 1,224,0,0,0,0,120,0,0,0,0,30,0,0,0,0, + 7,128,0,0,0,3,224,0,0,0,0,248,0,0,0,0, + 60,0,0,0,0,15,0,0,0,0,3,192,0,0,0,0, + 240,0,0,0,0,60,0,0,0,0,31,0,0,0,0,7, + 192,0,0,0,1,224,0,0,0,0,120,0,0,0,0,28, + 41,11,66,45,2,7,255,255,255,255,255,128,255,255,255,255, + 255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255, + 255,128,255,255,255,255,255,128,38,40,200,46,4,249,224,0, + 0,0,0,120,0,0,0,0,62,0,0,0,0,15,128,0, + 0,0,3,192,0,0,0,0,240,0,0,0,0,60,0,0, + 0,0,15,0,0,0,0,3,192,0,0,0,1,240,0,0, + 0,0,124,0,0,0,0,30,0,0,0,0,7,128,0,0, + 0,1,224,0,0,0,0,120,0,0,0,0,30,0,0,0, + 0,15,128,0,0,0,3,224,0,0,0,0,240,0,0,0, + 0,60,0,0,0,0,60,0,0,0,0,248,0,0,0,3, + 224,0,0,0,7,128,0,0,0,30,0,0,0,0,120,0, + 0,0,1,224,0,0,0,7,128,0,0,0,31,0,0,0, + 0,124,0,0,0,0,240,0,0,0,3,192,0,0,0,15, + 0,0,0,0,60,0,0,0,0,240,0,0,0,3,224,0, + 0,0,15,128,0,0,0,30,0,0,0,0,120,0,0,0, + 0,224,0,0,0,0,18,34,102,23,3,0,7,240,0,28, + 60,0,48,15,0,96,7,128,192,7,128,192,3,192,192,3, + 192,248,3,192,252,3,192,124,7,192,56,7,128,0,15,128, + 0,31,0,0,62,0,0,124,0,0,240,0,0,224,0,1, + 192,0,3,0,0,6,0,0,14,8,0,12,8,0,12,8, + 0,12,8,0,6,16,0,3,224,0,0,0,0,0,0,0, + 0,0,0,1,224,0,3,240,0,3,240,0,3,240,0,1, + 224,0,35,36,180,40,2,0,0,3,254,0,0,0,30,7, + 192,0,0,112,0,112,0,1,192,0,24,0,3,128,0,12, + 0,7,0,0,6,0,14,0,0,3,0,28,0,120,1,0, + 24,1,196,225,128,56,7,7,224,128,48,14,3,224,192,112, + 12,3,192,192,96,28,3,192,64,96,56,3,192,96,224,56, + 3,192,96,192,120,3,128,96,192,112,7,128,96,192,112,7, + 128,96,192,240,7,128,96,192,224,7,0,96,192,224,15,0, + 224,192,224,15,0,192,192,224,14,0,192,96,224,30,1,128, + 96,224,62,1,128,96,224,62,3,0,96,96,78,6,0,48, + 49,143,12,0,48,31,7,240,0,24,0,0,0,0,12,0, + 0,0,0,6,0,0,0,0,3,0,0,0,0,1,192,0, + 112,0,0,112,1,192,0,0,31,255,0,0,34,35,175,37, + 2,0,0,0,192,0,0,0,0,192,0,0,0,0,224,0, + 0,0,1,224,0,0,0,1,224,0,0,0,3,240,0,0, + 0,3,240,0,0,0,3,240,0,0,0,6,248,0,0,0, + 6,248,0,0,0,6,248,0,0,0,12,124,0,0,0,12, + 124,0,0,0,12,124,0,0,0,24,62,0,0,0,24,62, + 0,0,0,24,30,0,0,0,48,31,0,0,0,48,31,0, + 0,0,48,15,0,0,0,96,15,128,0,0,96,15,128,0, + 0,96,7,128,0,0,255,255,192,0,0,255,255,192,0,0, + 192,3,192,0,1,128,3,224,0,1,128,3,224,0,3,128, + 1,224,0,3,0,1,240,0,3,0,1,240,0,7,0,0, + 240,0,7,0,0,248,0,31,128,1,252,0,255,248,31,255, + 192,28,35,140,34,3,0,255,255,240,0,7,192,62,0,7, + 128,15,0,7,128,7,128,7,128,3,192,7,128,1,224,7, + 128,1,224,7,128,1,224,7,128,1,224,7,128,1,224,7, + 128,1,224,7,128,1,224,7,128,3,192,7,128,3,128,7, + 128,7,0,7,128,30,0,7,255,240,0,7,128,62,0,7, + 128,15,0,7,128,7,128,7,128,3,192,7,128,3,224,7, + 128,1,224,7,128,1,240,7,128,1,240,7,128,1,240,7, + 128,1,240,7,128,1,240,7,128,1,240,7,128,3,224,7, + 128,3,224,7,128,7,192,7,128,15,128,7,192,62,0,255, + 255,240,0,26,36,144,32,3,0,0,63,0,128,0,225,224, + 128,3,128,113,128,7,0,63,128,14,0,31,128,30,0,15, + 128,28,0,7,128,60,0,3,128,60,0,3,128,124,0,3, + 128,120,0,1,128,120,0,1,128,120,0,0,128,248,0,0, + 128,248,0,0,0,248,0,0,0,248,0,0,0,248,0,0, + 0,248,0,0,0,248,0,0,0,248,0,0,0,248,0,0, + 0,248,0,0,0,120,0,0,192,120,0,0,192,120,0,0, + 192,60,0,0,192,60,0,0,128,60,0,1,128,28,0,1, + 128,14,0,3,0,14,0,3,0,7,0,6,0,3,128,12, + 0,0,224,56,0,0,127,224,0,33,35,175,38,3,0,255, + 255,252,0,0,7,192,15,0,0,7,128,3,192,0,7,128, + 0,224,0,7,128,0,112,0,7,128,0,120,0,7,128,0, + 60,0,7,128,0,62,0,7,128,0,30,0,7,128,0,31, + 0,7,128,0,31,0,7,128,0,15,0,7,128,0,15,0, + 7,128,0,15,128,7,128,0,15,128,7,128,0,15,128,7, + 128,0,15,128,7,128,0,15,128,7,128,0,15,128,7,128, + 0,15,128,7,128,0,15,128,7,128,0,15,128,7,128,0, + 15,0,7,128,0,31,0,7,128,0,31,0,7,128,0,30, + 0,7,128,0,30,0,7,128,0,60,0,7,128,0,60,0, + 7,128,0,120,0,7,128,0,112,0,7,128,0,224,0,7, + 128,3,192,0,7,192,15,0,0,255,255,252,0,0,28,35, + 140,34,3,0,255,255,255,240,7,192,7,240,7,128,1,240, + 7,128,0,240,7,128,0,112,7,128,0,112,7,128,0,48, + 7,128,0,48,7,128,0,48,7,128,0,16,7,128,32,16, + 7,128,32,16,7,128,32,0,7,128,96,0,7,128,96,0, + 7,128,96,0,7,128,224,0,7,255,224,0,7,129,224,0, + 7,128,96,0,7,128,96,0,7,128,96,0,7,128,32,16, + 7,128,32,16,7,128,32,16,7,128,0,16,7,128,0,48, + 7,128,0,48,7,128,0,48,7,128,0,112,7,128,0,112, + 7,128,0,240,7,128,1,240,255,255,255,240,255,255,255,240, + 27,35,140,34,4,0,255,255,255,224,15,128,15,224,7,128, + 3,224,7,128,1,224,7,128,0,224,7,128,0,224,7,128, + 0,96,7,128,0,96,7,128,0,96,7,128,0,32,7,128, + 32,32,7,128,32,32,7,128,32,0,7,128,96,0,7,128, + 96,0,7,128,96,0,7,128,224,0,7,255,224,0,7,129, + 224,0,7,128,96,0,7,128,96,0,7,128,96,0,7,128, + 32,0,7,128,32,0,7,128,32,0,7,128,0,0,7,128, + 0,0,7,128,0,0,7,128,0,0,7,128,0,0,7,128, + 0,0,7,128,0,0,7,128,0,0,15,128,0,0,255,254, + 0,0,30,36,144,34,3,0,0,63,128,192,0,224,224,192, + 3,128,56,192,7,0,29,192,14,0,15,192,14,0,7,192, + 28,0,7,192,60,0,3,192,60,0,3,192,124,0,1,192, + 120,0,1,192,120,0,0,192,120,0,0,192,248,0,0,192, + 248,0,0,0,248,0,0,0,248,0,0,0,248,0,0,0, + 248,0,255,252,248,0,255,252,248,0,7,192,248,0,7,192, + 248,0,7,192,248,0,7,192,120,0,7,192,120,0,7,192, + 124,0,7,192,60,0,7,192,60,0,7,192,28,0,15,192, + 30,0,15,192,14,0,28,192,7,0,24,192,3,0,48,192, + 1,192,224,192,0,127,128,192,33,35,175,38,3,0,255,252, + 31,255,128,7,192,0,248,0,7,128,0,240,0,7,128,0, + 240,0,7,128,0,240,0,7,128,0,240,0,7,128,0,240, + 0,7,128,0,240,0,7,128,0,240,0,7,128,0,240,0, + 7,128,0,240,0,7,128,0,240,0,7,128,0,240,0,7, + 128,0,240,0,7,128,0,240,0,7,128,0,240,0,7,255, + 255,240,0,7,128,0,240,0,7,128,0,240,0,7,128,0, + 240,0,7,128,0,240,0,7,128,0,240,0,7,128,0,240, + 0,7,128,0,240,0,7,128,0,240,0,7,128,0,240,0, + 7,128,0,240,0,7,128,0,240,0,7,128,0,240,0,7, + 128,0,240,0,7,128,0,240,0,7,128,0,240,0,7,128, + 0,240,0,7,192,0,248,0,255,252,31,255,128,14,35,70, + 19,3,0,255,252,7,192,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,192,255,252,23,35,105,27,2,0,0, + 127,254,0,7,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,60,3,192,126,3,192,254,3,192, + 254,3,192,252,3,192,224,3,128,224,7,128,96,7,0,112, + 14,0,56,28,0,15,248,0,32,35,140,37,3,0,255,252, + 63,254,7,192,15,240,7,128,7,192,7,128,3,128,7,128, + 7,0,7,128,6,0,7,128,12,0,7,128,28,0,7,128, + 56,0,7,128,112,0,7,128,224,0,7,129,192,0,7,129, + 128,0,7,131,128,0,7,135,128,0,7,143,192,0,7,155, + 224,0,7,179,224,0,7,225,240,0,7,193,240,0,7,128, + 248,0,7,128,248,0,7,128,124,0,7,128,124,0,7,128, + 62,0,7,128,62,0,7,128,31,0,7,128,31,0,7,128, + 15,128,7,128,15,192,7,128,7,192,7,128,7,224,7,128, + 3,224,7,192,7,248,255,252,127,255,27,35,140,33,3,0, + 255,254,0,0,7,192,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,32,7,128,0,96, + 7,128,0,96,7,128,0,96,7,128,0,96,7,128,0,224, + 7,128,0,224,7,128,0,224,7,128,1,224,7,128,3,224, + 7,128,7,224,255,255,255,224,255,255,255,224,36,35,175,41, + 3,0,255,224,0,63,240,7,224,0,62,0,7,224,0,126, + 0,7,240,0,94,0,7,240,0,94,0,6,240,0,222,0, + 6,248,0,222,0,6,248,0,158,0,6,120,0,158,0,6, + 120,1,158,0,6,124,1,158,0,6,60,1,30,0,6,60, + 1,30,0,6,62,3,30,0,6,62,3,30,0,6,30,2, + 30,0,6,30,2,30,0,6,31,6,30,0,6,15,4,30, + 0,6,15,4,30,0,6,15,140,30,0,6,7,140,30,0, + 6,7,136,30,0,6,7,200,30,0,6,7,216,30,0,6, + 3,216,30,0,6,3,208,30,0,6,3,240,30,0,6,1, + 240,30,0,6,1,240,30,0,6,1,224,30,0,6,0,224, + 30,0,15,0,224,30,0,31,128,192,62,0,255,240,195,255, + 240,33,36,180,38,3,255,255,192,7,255,128,7,192,0,252, + 0,7,224,0,120,0,7,240,0,48,0,7,240,0,48,0, + 7,248,0,48,0,6,248,0,48,0,6,124,0,48,0,6, + 126,0,48,0,6,62,0,48,0,6,31,0,48,0,6,31, + 0,48,0,6,15,128,48,0,6,15,192,48,0,6,7,192, + 48,0,6,3,224,48,0,6,3,224,48,0,6,1,240,48, + 0,6,1,248,48,0,6,0,248,48,0,6,0,124,48,0, + 6,0,124,48,0,6,0,62,48,0,6,0,63,48,0,6, + 0,31,48,0,6,0,15,176,0,6,0,15,176,0,6,0, + 7,240,0,6,0,7,240,0,6,0,3,240,0,6,0,1, + 240,0,6,0,1,240,0,15,0,0,240,0,31,128,0,112, + 0,255,240,0,112,0,0,0,0,48,0,28,36,144,33,3, + 0,0,31,128,0,0,240,240,0,1,192,56,0,3,128,28, + 0,7,0,14,0,14,0,7,0,30,0,7,128,28,0,3, + 128,60,0,3,192,60,0,3,192,124,0,3,224,120,0,1, + 224,120,0,1,224,248,0,1,224,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,120,0,1, + 224,120,0,1,224,124,0,3,224,124,0,3,224,60,0,3, + 192,60,0,3,192,30,0,7,128,14,0,7,0,14,0,15, + 0,7,0,14,0,3,128,28,0,0,224,112,0,0,127,224, + 0,28,35,140,33,3,0,255,255,240,0,7,192,30,0,7, + 128,7,128,7,128,7,192,7,128,3,224,7,128,3,224,7, + 128,1,240,7,128,1,240,7,128,1,240,7,128,1,240,7, + 128,1,240,7,128,1,240,7,128,3,224,7,128,3,224,7, + 128,7,192,7,128,7,128,7,128,30,0,7,255,248,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,128,0,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,128,0,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,128,0,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,192,0,0,255, + 254,0,0,28,44,176,33,3,248,0,31,128,0,0,240,240, + 0,1,192,56,0,3,128,28,0,7,0,14,0,14,0,7, + 0,30,0,7,128,28,0,3,128,60,0,3,192,60,0,3, + 192,124,0,3,224,120,0,1,224,120,0,1,224,248,0,1, + 224,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,120,0,1,224,120,0,1,224,124,0,3, + 224,124,0,3,224,60,15,3,192,60,25,195,192,30,48,199, + 128,14,96,231,128,15,96,111,0,7,96,126,0,3,224,124, + 16,0,240,120,16,0,127,240,16,0,0,112,16,0,0,112, + 16,0,0,120,48,0,0,120,32,0,0,124,96,0,0,63, + 192,0,0,63,192,0,0,15,0,30,35,140,35,3,0,255, + 255,248,0,7,192,62,0,7,128,15,128,7,128,7,192,7, + 128,7,192,7,128,3,224,7,128,3,224,7,128,3,224,7, + 128,3,224,7,128,3,224,7,128,3,192,7,128,7,192,7, + 128,7,128,7,128,15,0,7,128,60,0,7,255,224,0,7, + 128,240,0,7,128,56,0,7,128,28,0,7,128,30,0,7, + 128,30,0,7,128,31,0,7,128,15,0,7,128,15,0,7, + 128,15,0,7,128,15,0,7,128,15,128,7,128,15,132,7, + 128,15,132,7,128,15,132,7,128,15,132,7,128,15,140,7, + 128,7,248,7,192,7,248,255,254,3,240,23,36,108,30,4, + 0,3,240,0,14,28,24,56,7,24,48,3,248,112,1,248, + 96,0,248,224,0,120,224,0,56,224,0,56,224,0,56,224, + 0,24,240,0,24,248,0,8,126,0,8,127,192,0,63,240, + 0,31,252,0,15,255,128,3,255,224,0,255,240,128,63,248, + 128,7,252,128,1,252,192,0,126,192,0,62,192,0,30,224, + 0,14,224,0,14,240,0,14,240,0,14,248,0,12,252,0, + 28,222,0,24,199,0,48,195,128,96,128,255,192,28,35,140, + 35,4,0,255,255,255,240,254,15,131,240,248,15,1,240,240, + 15,0,240,224,15,0,112,192,15,0,112,192,15,0,48,192, + 15,0,48,192,15,0,48,128,15,0,16,128,15,0,16,128, + 15,0,16,128,15,0,16,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,128,0,3,255,254,0,34, + 35,175,39,3,0,255,252,3,255,192,7,192,0,126,0,7, + 128,0,60,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,7,128,0,24, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,3,192,0,24, + 0,3,192,0,48,0,3,192,0,48,0,1,224,0,96,0, + 0,224,0,96,0,0,112,0,192,0,0,60,3,128,0,0, + 15,254,0,0,34,36,180,37,2,255,255,255,7,255,192,15, + 240,0,126,0,3,224,0,56,0,3,224,0,56,0,3,240, + 0,48,0,1,240,0,48,0,1,240,0,48,0,0,248,0, + 96,0,0,248,0,96,0,0,248,0,96,0,0,124,0,192, + 0,0,124,0,192,0,0,124,0,192,0,0,62,0,192,0, + 0,62,1,128,0,0,62,1,128,0,0,31,1,128,0,0, + 31,3,0,0,0,31,3,0,0,0,15,131,0,0,0,15, + 134,0,0,0,15,134,0,0,0,7,198,0,0,0,7,204, + 0,0,0,3,204,0,0,0,3,236,0,0,0,3,232,0, + 0,0,1,248,0,0,0,1,248,0,0,0,1,248,0,0, + 0,0,240,0,0,0,0,240,0,0,0,0,240,0,0,0, + 0,96,0,0,0,0,96,0,0,0,0,96,0,0,49,36, + 252,52,2,255,255,254,127,255,15,255,128,15,240,15,248,1, + 248,0,3,224,3,240,0,240,0,3,224,3,224,0,96,0, + 3,224,3,240,0,96,0,1,240,3,240,0,96,0,1,240, + 3,240,0,192,0,1,240,3,240,0,192,0,0,240,7,248, + 0,192,0,0,248,6,248,0,128,0,0,248,6,248,1,128, + 0,0,248,6,124,1,128,0,0,120,14,124,1,128,0,0, + 124,12,124,3,0,0,0,124,12,62,3,0,0,0,60,28, + 62,3,0,0,0,60,24,62,6,0,0,0,60,24,30,6, + 0,0,0,62,24,31,6,0,0,0,30,56,31,12,0,0, + 0,30,48,31,12,0,0,0,30,48,15,140,0,0,0,15, + 48,15,152,0,0,0,15,112,15,152,0,0,0,15,96,7, + 216,0,0,0,15,96,7,208,0,0,0,7,224,7,240,0, + 0,0,7,192,3,240,0,0,0,7,192,3,240,0,0,0, + 3,192,3,224,0,0,0,3,192,3,224,0,0,0,3,128, + 1,224,0,0,0,1,128,1,192,0,0,0,1,128,1,192, + 0,0,0,1,128,0,192,0,0,0,1,0,0,128,0,0, + 33,35,175,36,2,0,127,255,31,255,0,3,240,3,240,0, + 1,240,1,224,0,1,240,1,192,0,0,248,1,128,0,0, + 120,3,0,0,0,124,3,0,0,0,60,6,0,0,0,62, + 14,0,0,0,31,12,0,0,0,31,24,0,0,0,15,152, + 0,0,0,15,176,0,0,0,7,224,0,0,0,7,224,0, + 0,0,3,224,0,0,0,3,224,0,0,0,1,240,0,0, + 0,3,240,0,0,0,3,248,0,0,0,6,248,0,0,0, + 14,124,0,0,0,12,124,0,0,0,24,62,0,0,0,56, + 62,0,0,0,48,31,0,0,0,96,31,0,0,0,224,15, + 128,0,0,192,15,128,0,1,128,7,192,0,3,128,7,192, + 0,3,128,3,224,0,7,128,3,240,0,31,192,3,248,0, + 255,248,63,255,128,32,35,140,35,2,0,255,254,15,255,15, + 224,1,248,7,224,0,240,3,224,0,96,3,240,0,64,1, + 240,0,192,1,248,0,128,0,248,0,128,0,252,1,0,0, + 124,3,0,0,62,2,0,0,62,6,0,0,31,4,0,0, + 31,12,0,0,15,136,0,0,7,216,0,0,7,208,0,0, + 3,240,0,0,3,224,0,0,1,224,0,0,1,224,0,0, + 1,224,0,0,1,224,0,0,1,224,0,0,1,224,0,0, + 1,224,0,0,1,224,0,0,1,224,0,0,1,224,0,0, + 1,224,0,0,1,224,0,0,1,224,0,0,1,224,0,0, + 1,240,0,0,127,255,192,26,35,140,32,3,0,63,255,255, + 192,63,128,15,128,62,0,31,128,60,0,31,0,56,0,62, + 0,56,0,62,0,48,0,124,0,48,0,252,0,96,0,248, + 0,96,1,240,0,64,3,240,0,64,3,224,0,0,7,192, + 0,0,7,192,0,0,15,128,0,0,31,128,0,0,31,0, + 0,0,62,0,0,0,126,0,0,0,124,0,0,0,252,0, + 0,0,248,0,64,1,240,0,64,3,240,0,64,3,224,0, + 192,7,192,0,192,7,192,0,192,15,128,1,192,31,128,1, + 192,31,0,3,192,62,0,3,192,126,0,7,192,124,0,15, + 128,248,0,63,128,255,255,255,128,10,45,90,19,6,247,255, + 192,254,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,254,0,255,192,16,46,92,22,3,246,192, + 0,192,0,192,0,96,0,96,0,96,0,48,0,48,0,48, + 0,24,0,24,0,24,0,12,0,12,0,12,0,6,0,6, + 0,6,0,2,0,3,0,3,0,3,0,1,128,1,128,1, + 128,0,192,0,192,0,192,0,96,0,96,0,96,0,48,0, + 48,0,48,0,24,0,24,0,24,0,12,0,12,0,12,0, + 6,0,6,0,6,0,3,0,3,0,3,10,45,90,19,3, + 247,255,192,31,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,31,192,255,192,22,18,54,28,3, + 17,0,16,0,0,48,0,0,56,0,0,120,0,0,108,0, + 0,206,0,1,198,0,1,131,0,3,3,0,7,1,128,6, + 1,192,14,0,192,28,0,96,24,0,112,56,0,48,48,0, + 56,96,0,24,224,0,12,25,2,8,25,0,248,255,255,255, + 128,255,255,255,128,8,9,9,22,4,25,224,240,240,120,60, + 12,6,3,1,21,22,66,24,2,1,7,248,0,24,30,0, + 16,15,0,48,7,0,56,7,128,60,7,128,62,7,128,28, + 7,128,0,7,128,0,31,128,3,247,128,31,7,128,60,7, + 128,120,7,128,248,7,128,240,7,128,240,15,136,240,15,136, + 240,23,136,248,23,152,120,39,240,63,195,240,22,35,105,25, + 1,0,255,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,31,128,15,32,224,15, + 64,240,15,192,112,15,128,120,15,128,120,15,0,120,15,0, + 60,15,0,60,15,0,60,15,0,60,15,0,60,15,0,60, + 15,0,60,15,0,60,15,0,120,15,0,120,15,128,120,13, + 128,112,12,192,224,12,96,224,8,63,128,17,22,66,21,2, + 1,7,252,0,14,6,0,28,3,0,56,3,0,56,3,128, + 120,15,128,120,15,128,240,15,128,240,7,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,128,120,0, + 128,120,0,128,56,1,0,56,1,0,28,2,0,14,6,0, + 7,248,0,22,35,105,25,2,0,0,63,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 15,227,192,28,19,192,60,11,192,56,15,192,120,7,192,120, + 7,192,120,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,120,3,192, + 120,3,192,120,7,192,56,7,192,60,15,192,28,27,192,7, + 243,252,18,22,66,22,2,1,7,248,0,14,28,0,28,14, + 0,56,15,0,56,7,128,120,7,128,120,7,128,240,7,192, + 240,7,192,240,7,192,255,255,192,240,0,0,240,0,0,240, + 0,0,240,0,128,120,0,128,120,0,128,120,1,128,56,1, + 0,28,3,0,14,6,0,7,252,0,16,35,70,16,1,0, + 0,248,3,198,7,3,15,7,14,15,14,15,30,15,30,6, + 30,0,30,0,30,0,30,0,30,0,255,240,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,255,240,23,33,99,27,3,246,7,252,124,30, + 14,206,60,7,142,124,7,158,120,3,222,120,3,192,120,3, + 192,120,3,192,120,3,192,120,3,192,60,7,128,28,7,128, + 14,14,0,3,248,0,28,0,0,96,0,0,192,0,0,192, + 0,0,224,0,0,255,255,128,127,255,224,15,255,240,28,0, + 112,48,0,56,96,0,24,192,0,24,192,0,24,192,0,24, + 192,0,48,96,0,48,120,0,96,30,7,192,3,254,0,24, + 35,105,27,1,0,255,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,15,192,15, + 48,240,15,32,112,15,64,120,15,128,120,15,128,120,15,0, + 120,15,0,120,15,0,120,15,0,120,15,0,120,15,0,120, + 15,0,120,15,0,120,15,0,120,15,0,120,15,0,120,15, + 0,120,15,0,120,15,0,120,15,0,120,255,195,255,10,34, + 68,14,2,0,28,0,62,0,62,0,62,0,28,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,254,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,255,192,13,45,90,16,254,245,0,112, + 0,248,0,248,0,248,0,112,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,15,248,0,120,0,120,0,120,0,120, + 0,120,0,120,0,120,0,120,0,120,0,120,0,120,0,120, + 0,120,0,120,0,120,0,120,0,120,0,120,0,120,0,120, + 0,120,0,120,0,120,0,120,0,120,240,120,240,120,240,112, + 224,240,96,224,115,192,31,0,22,35,105,24,1,0,254,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,15,252,30,3,224,30,1,128,30,3, + 0,30,6,0,30,6,0,30,12,0,30,24,0,30,48,0, + 30,120,0,30,248,0,30,188,0,31,190,0,31,30,0,30, + 15,0,30,15,128,30,7,128,30,3,192,30,3,224,30,1, + 224,30,3,240,255,207,252,11,35,70,13,1,0,254,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,255,224,36,22,110,40,2,1,254,63,129,252,0,30,97, + 195,14,0,30,193,230,15,0,30,128,228,7,128,31,0,248, + 7,128,31,0,248,7,128,30,0,240,7,128,30,0,240,7, + 128,30,0,240,7,128,30,0,240,7,128,30,0,240,7,128, + 30,0,240,7,128,30,0,240,7,128,30,0,240,7,128,30, + 0,240,7,128,30,0,240,7,128,30,0,240,7,128,30,0, + 240,7,128,30,0,240,7,128,30,0,240,7,128,30,0,240, + 7,128,255,199,254,63,240,23,22,66,27,2,1,254,31,128, + 30,97,224,30,192,224,30,128,240,31,0,240,31,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,255,199,254,19, + 22,66,24,2,1,3,252,0,14,14,0,28,7,0,60,3, + 128,56,3,192,120,3,192,120,1,224,248,1,224,240,1,224, + 240,1,224,240,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,120,1,224,120,3,192,56,3,192,60,3,128,28,7, + 0,14,14,0,3,252,0,22,33,99,25,1,246,254,63,128, + 30,97,192,30,192,224,31,128,112,31,0,120,31,0,120,30, + 0,120,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,120,30,0,120, + 31,0,120,31,0,112,31,128,224,30,192,192,30,127,128,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,255,224,0, + 22,33,99,25,2,246,7,240,64,28,24,192,28,12,192,56, + 12,192,120,7,192,120,7,192,120,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,120,3,192,120,3,192,120,7,192,56,7,192,60, + 15,192,28,27,192,7,243,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,31,252,17,22,66,20,2,1,254, + 31,0,30,35,128,30,67,128,30,207,128,30,143,128,31,143, + 0,31,2,0,31,0,0,31,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,255,192, + 0,17,22,66,22,3,1,31,226,0,112,50,0,96,30,0, + 192,14,0,192,6,0,224,2,0,240,2,0,252,0,0,127, + 0,0,63,192,0,31,248,0,7,254,0,128,255,0,192,31, + 0,192,7,128,224,3,128,224,1,128,240,1,128,240,1,128, + 248,3,0,198,7,0,131,252,0,14,32,64,17,1,0,2, + 0,2,0,2,0,2,0,2,0,6,0,6,0,6,0,14, + 0,30,0,255,248,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,4,30,4,30,4,30,12,15,8,15,248,7,240,23, + 22,66,27,2,0,254,7,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,1,240,30,1,240,30,1,240,30,2,240,14,6, + 240,15,12,240,3,240,254,24,23,69,26,1,255,255,225,255, + 31,0,124,15,0,48,15,0,48,15,0,32,7,128,96,7, + 128,96,3,192,64,3,192,192,1,192,192,1,224,128,1,225, + 128,0,241,128,0,241,0,0,113,0,0,123,0,0,58,0, + 0,62,0,0,62,0,0,28,0,0,28,0,0,12,0,0, + 8,0,36,23,115,38,1,255,255,231,255,31,240,31,1,248, + 7,128,31,0,240,3,0,15,0,120,3,0,15,0,120,2, + 0,7,128,120,6,0,7,128,252,6,0,3,128,252,4,0, + 3,192,188,12,0,3,192,158,12,0,1,225,158,8,0,1, + 225,14,24,0,0,225,15,24,0,0,243,15,16,0,0,242, + 7,48,0,0,114,7,176,0,0,126,7,160,0,0,62,3, + 224,0,0,60,3,192,0,0,28,1,192,0,0,28,1,192, + 0,0,24,1,128,0,0,8,0,128,0,22,22,66,26,2, + 0,255,207,248,31,3,192,31,3,128,15,3,0,7,131,0, + 7,198,0,3,196,0,1,236,0,1,248,0,0,240,0,0, + 112,0,0,120,0,0,124,0,0,220,0,1,158,0,1,15, + 0,3,15,0,6,7,128,4,7,192,12,3,192,28,3,224, + 255,15,252,24,33,99,26,1,245,255,225,255,31,0,120,15, + 0,48,15,0,48,7,0,32,7,128,96,7,128,96,3,192, + 64,3,192,192,3,192,192,1,224,128,1,225,128,0,225,128, + 0,241,128,0,241,0,0,115,0,0,123,0,0,122,0,0, + 62,0,0,62,0,0,60,0,0,28,0,0,28,0,0,24, + 0,0,24,0,0,24,0,24,48,0,60,48,0,60,48,0, + 60,96,0,56,96,0,31,192,0,15,0,0,17,22,66,22, + 2,0,255,255,128,248,7,128,224,15,0,224,31,0,192,30, + 0,192,60,0,128,124,0,128,120,0,0,240,0,1,240,0, + 1,224,0,3,192,0,7,192,0,7,128,128,15,0,128,31, + 0,128,30,0,128,60,1,128,124,1,128,120,3,128,240,15, + 128,255,255,128,11,45,90,21,6,247,0,224,1,128,7,0, + 14,0,12,0,28,0,28,0,28,0,28,0,30,0,30,0, + 14,0,14,0,15,0,15,0,7,0,7,0,7,0,7,0, + 6,0,4,0,24,0,224,0,56,0,12,0,6,0,6,0, + 7,0,7,0,7,0,15,0,15,0,15,0,14,0,30,0, + 30,0,28,0,28,0,28,0,28,0,12,0,12,0,6,0, + 3,128,0,224,2,46,46,14,6,246,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,11,45,90,20,4,247,192,0, + 112,0,28,0,12,0,6,0,7,0,7,0,7,0,7,0, + 15,0,15,0,14,0,30,0,30,0,30,0,28,0,28,0, + 28,0,28,0,12,0,4,0,3,0,0,224,3,0,6,0, + 12,0,28,0,28,0,28,0,28,0,30,0,30,0,30,0, + 14,0,15,0,15,0,7,0,7,0,7,0,7,0,6,0, + 6,0,12,0,56,0,224,0,28,9,36,32,2,8,31,128, + 0,192,127,240,0,96,127,252,0,48,227,255,0,48,192,127, + 224,48,192,31,248,112,192,3,255,224,96,0,255,192,48,0, + 31,128,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,14,0,0,6,33,33,14,4,246,120, + 252,252,252,120,0,0,48,48,48,48,48,48,48,48,48,48, + 48,120,120,120,120,120,120,248,252,252,252,252,252,252,252,120, + 17,34,102,28,5,250,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,0,192,0,7,252,0,14,198,0,28,195, + 0,56,195,128,120,195,128,120,207,128,120,207,128,248,207,128, + 240,199,0,240,192,0,240,192,0,240,192,0,240,192,0,240, + 192,0,248,192,128,120,192,128,120,192,128,120,193,128,56,193, + 0,28,195,0,14,198,0,7,252,0,0,192,0,0,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,28,34,136,35, + 3,0,0,0,126,0,0,1,227,128,0,3,128,192,0,7, + 0,192,0,14,0,224,0,14,1,224,0,28,3,224,0,28, + 3,224,0,60,3,192,0,60,0,128,0,60,0,0,0,60, + 0,0,0,60,0,0,0,60,0,0,0,60,0,0,31,252, + 0,0,0,127,248,0,0,124,0,0,0,124,0,0,0,60, + 0,0,0,60,0,0,0,60,0,0,0,60,0,0,0,60, + 0,0,0,56,0,0,0,56,0,16,62,56,0,32,99,240, + 0,32,193,240,0,96,128,120,0,64,128,254,0,192,128,159, + 255,128,193,7,255,0,126,1,254,0,24,24,72,28,2,5, + 64,0,2,224,126,7,115,255,206,63,129,252,30,0,120,28, + 0,56,56,0,24,48,0,12,48,0,12,96,0,6,96,0, + 6,96,0,6,96,0,6,96,0,6,96,0,6,112,0,12, + 48,0,12,56,0,28,28,0,56,30,0,120,63,129,252,115, + 255,206,224,126,7,64,0,2,27,33,132,29,1,0,255,224, + 127,224,31,0,15,0,15,0,6,0,15,128,6,0,7,128, + 12,0,7,192,12,0,3,192,24,0,3,224,24,0,1,224, + 48,0,1,240,32,0,0,240,96,0,0,248,64,0,0,248, + 192,0,0,124,128,0,0,125,128,0,0,63,0,0,0,63, + 0,0,15,255,252,0,0,30,0,0,0,30,0,0,0,30, + 0,0,15,255,252,0,0,30,0,0,0,30,0,0,0,30, + 0,0,0,30,0,0,0,30,0,0,0,30,0,0,0,30, + 0,0,0,30,0,0,0,30,0,0,0,31,0,0,3,255, + 240,0,2,44,44,14,6,248,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,0,0,0,0,0,0, + 0,0,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,18,43,129,31,5,247,1,240,0,6,24,0, + 12,12,0,24,30,0,56,62,0,56,62,0,56,62,0,56, + 8,0,60,0,0,30,0,0,31,0,0,15,128,0,7,192, + 0,15,224,0,25,240,0,48,252,0,96,126,0,64,63,0, + 192,15,128,192,7,128,192,3,192,224,1,192,240,0,192,120, + 0,192,124,0,192,62,0,128,31,1,128,15,131,0,7,198, + 0,3,248,0,1,240,0,0,248,0,0,124,0,0,60,0, + 0,30,0,0,14,0,30,14,0,62,14,0,62,14,0,60, + 12,0,24,28,0,12,56,0,7,224,0,14,5,10,22,4, + 27,112,56,248,124,248,124,248,124,112,56,35,36,180,40,3, + 0,0,7,252,0,0,0,60,7,128,0,0,224,0,192,0, + 1,128,0,48,0,3,0,0,24,0,4,0,0,12,0,8, + 0,0,6,0,24,1,240,131,0,48,7,28,129,0,32,30, + 7,128,128,96,28,3,128,128,64,56,1,128,64,64,120,1, + 128,64,192,120,0,128,64,128,120,0,128,96,128,248,0,0, + 32,128,240,0,0,32,128,240,0,0,32,128,240,0,0,32, + 128,240,0,0,32,128,240,0,0,32,128,240,0,0,32,128, + 248,0,128,96,64,120,0,128,64,64,120,0,128,64,96,56, + 1,128,192,32,60,1,0,128,48,30,3,1,128,16,15,14, + 3,0,24,3,248,2,0,12,0,0,6,0,6,0,0,12, + 0,3,128,0,56,0,0,192,0,96,0,0,120,3,192,0, + 0,31,254,0,0,13,17,34,19,3,17,62,0,99,0,193, + 128,225,128,225,128,3,128,13,128,49,128,113,128,225,128,225, + 136,225,136,247,152,120,240,0,0,0,0,255,240,13,19,38, + 23,5,1,4,0,12,24,24,48,48,32,112,96,96,96,96, + 192,224,192,224,192,224,192,224,192,224,192,224,192,96,192,112, + 96,48,96,56,48,24,16,12,0,23,10,30,29,3,8,255, + 255,254,255,255,254,0,0,6,0,0,6,0,0,6,0,0, + 6,0,0,6,0,0,6,0,0,6,0,0,6,12,3,6, + 18,3,11,255,240,255,240,255,240,35,36,180,40,3,0,0, + 7,252,0,0,0,60,7,128,0,0,224,0,192,0,1,128, + 0,48,0,3,0,0,24,0,4,0,0,12,0,8,0,0, + 6,0,25,255,248,3,0,48,60,30,1,0,32,60,15,0, + 128,96,60,7,128,128,64,60,7,128,64,64,60,7,128,64, + 192,60,7,128,64,128,60,7,128,96,128,60,15,0,32,128, + 60,30,0,32,128,63,240,0,32,128,60,28,0,32,128,60, + 14,0,32,128,60,7,0,32,128,60,7,0,32,128,60,7, + 128,96,64,60,7,128,64,64,60,7,132,64,64,60,7,132, + 192,32,60,7,136,128,48,60,3,201,128,17,255,129,241,0, + 24,0,0,2,0,12,0,0,6,0,6,0,0,12,0,3, + 0,0,24,0,0,192,0,96,0,0,112,1,192,0,0,31, + 254,0,0,13,2,4,21,4,28,255,248,255,248,14,13,26, + 29,8,21,15,192,56,96,112,48,96,24,192,8,192,12,192, + 12,192,12,192,12,96,24,96,24,56,112,15,192,41,34,204, + 45,2,254,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,0,0,12,0,0,0,0,0,12,0,0,0,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,255,255,255,255,255,128,255,255,255,255,255,128,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,0,0,12,0,0,0,0,0,12,0,0,0,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,255,255,255,255,255,128,255,255,255,255,255,128,14, + 21,42,22,4,13,15,192,49,240,96,120,192,124,192,60,224, + 60,248,60,120,60,48,120,0,112,0,224,1,192,3,128,6, + 0,12,0,48,4,32,4,96,12,127,248,255,248,255,248,14, + 21,42,22,5,13,15,192,56,224,96,112,96,56,112,56,120, + 56,48,56,0,112,0,224,63,128,56,224,0,120,0,56,0, + 60,112,60,248,60,240,60,192,56,192,120,96,240,31,192,8, + 9,9,22,10,25,7,15,15,30,60,48,96,192,128,25,36, + 144,29,3,243,112,1,192,0,240,3,192,0,240,3,224,0, + 240,3,224,0,240,3,224,0,240,3,224,0,240,3,224,0, + 240,3,224,0,240,3,224,0,240,3,224,0,224,3,224,0, + 224,1,192,0,224,1,192,0,96,1,192,0,96,1,192,0, + 96,1,192,0,96,1,128,0,96,3,129,128,112,7,193,128, + 88,15,127,128,79,254,63,128,67,252,31,0,64,0,0,0, + 192,0,0,0,192,0,0,0,192,0,0,0,192,0,0,0, + 192,0,0,0,224,0,0,0,224,0,0,0,240,0,0,0, + 240,0,0,0,240,0,0,0,248,0,0,0,120,0,0,0, + 120,0,0,0,20,42,126,26,3,249,7,255,240,31,193,128, + 63,193,128,127,193,128,127,193,128,255,193,128,255,193,128,255, + 193,128,255,193,128,255,193,128,255,193,128,127,193,128,127,193, + 128,63,193,128,15,193,128,0,193,128,0,193,128,0,193,128, + 0,193,128,0,193,128,0,193,128,0,193,128,0,193,128,0, + 193,128,0,193,128,0,193,128,0,193,128,0,193,128,0,193, + 128,0,193,128,0,193,128,0,193,128,0,193,128,0,193,128, + 0,193,128,0,193,128,0,193,128,0,193,128,0,193,128,0, + 193,128,0,193,128,0,193,128,6,6,6,14,4,12,120,252, + 252,252,252,120,10,10,20,21,5,246,8,0,8,0,24,0, + 15,0,3,128,1,192,1,192,1,192,195,128,63,0,11,20, + 40,21,5,14,2,0,6,0,14,0,254,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,14,0,14,0,14,0,255,224,12,17,34,18, + 3,17,15,0,57,192,112,192,96,224,224,96,224,112,224,112, + 224,112,224,112,224,112,96,96,112,224,49,192,31,0,0,0, + 0,0,255,240,13,19,38,23,5,1,1,0,193,128,96,192, + 32,96,48,112,48,48,24,48,24,56,24,56,24,56,24,56, + 24,56,24,56,24,48,48,112,48,96,96,224,64,192,1,128, + 33,35,175,42,5,255,2,0,0,96,0,6,0,0,64,0, + 14,0,0,192,0,254,0,1,128,0,14,0,1,0,0,14, + 0,3,0,0,14,0,2,0,0,14,0,6,0,0,14,0, + 12,0,0,14,0,8,0,0,14,0,24,0,0,14,0,16, + 0,0,14,0,48,0,0,14,0,96,0,0,14,0,96,56, + 0,14,0,192,120,0,14,0,128,120,0,14,1,128,248,0, + 14,3,0,184,0,255,227,1,56,0,0,6,1,56,0,0, + 4,2,56,0,0,12,2,56,0,0,8,4,56,0,0,24, + 12,56,0,0,48,8,56,0,0,32,24,56,0,0,96,31, + 255,128,0,64,0,56,0,0,192,0,56,0,1,128,0,56, + 0,1,128,0,56,0,3,0,0,56,0,2,0,1,255,128, + 6,0,0,0,0,33,35,175,42,5,255,2,0,0,96,0, + 6,0,0,64,0,6,0,0,192,0,14,0,1,128,0,254, + 0,1,128,0,14,0,3,0,0,14,0,2,0,0,14,0, + 6,0,0,14,0,4,0,0,14,0,12,0,0,14,0,24, + 0,0,14,0,16,0,0,14,0,48,0,0,14,0,33,248, + 0,14,0,102,62,0,14,0,204,15,0,14,0,152,15,128, + 14,1,152,7,128,14,1,24,7,128,255,227,31,7,128,0, + 6,31,7,128,0,4,15,7,0,0,12,0,14,0,0,8, + 0,28,0,0,24,0,56,0,0,48,0,112,0,0,48,0, + 192,0,0,96,1,128,0,0,64,2,0,128,0,192,4,0, + 128,1,128,12,1,128,1,128,15,255,0,3,0,15,255,0, + 2,0,31,255,0,6,0,0,0,0,33,35,175,42,5,255, + 15,192,0,48,0,56,224,0,96,0,96,112,0,96,0,96, + 56,0,192,0,112,56,0,128,0,120,56,1,128,0,48,56, + 3,0,0,0,112,3,0,0,0,224,6,0,0,63,128,4, + 0,0,56,224,12,0,0,0,120,24,0,0,0,56,24,0, + 0,0,60,48,0,0,112,60,32,28,0,248,60,96,28,0, + 240,60,192,60,0,192,120,192,92,0,96,241,128,92,0,63, + 193,0,156,0,0,3,1,156,0,0,6,1,28,0,0,6, + 2,28,0,0,12,6,28,0,0,8,4,28,0,0,24,8, + 28,0,0,48,24,28,0,0,48,31,255,128,0,96,0,28, + 0,0,64,0,28,0,0,192,0,28,0,1,128,0,28,0, + 1,128,0,28,0,3,0,1,255,128,2,0,0,0,0,18, + 33,99,24,2,246,1,224,0,3,240,0,3,240,0,3,240, + 0,1,224,0,0,0,0,0,0,0,1,224,0,2,48,0, + 4,24,0,4,24,0,4,24,0,4,24,0,0,48,0,0, + 112,0,0,224,0,1,192,0,7,128,0,15,0,0,30,0, + 0,60,0,0,124,0,0,120,15,0,248,31,128,240,31,192, + 240,15,192,240,0,192,240,0,192,120,0,192,120,1,128,60, + 3,0,15,14,0,3,248,0,34,46,230,37,2,0,0,56, + 0,0,0,0,60,0,0,0,0,60,0,0,0,0,30,0, + 0,0,0,15,0,0,0,0,3,128,0,0,0,1,128,0, + 0,0,0,192,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,192,0,0,0,0,192,0,0,0, + 0,224,0,0,0,1,224,0,0,0,1,224,0,0,0,3, + 240,0,0,0,3,240,0,0,0,3,240,0,0,0,6,248, + 0,0,0,6,248,0,0,0,6,248,0,0,0,12,124,0, + 0,0,12,124,0,0,0,12,124,0,0,0,24,62,0,0, + 0,24,62,0,0,0,24,30,0,0,0,48,31,0,0,0, + 48,31,0,0,0,48,15,0,0,0,96,15,128,0,0,96, + 15,128,0,0,96,7,128,0,0,255,255,192,0,0,255,255, + 192,0,0,192,3,192,0,1,128,3,224,0,1,128,3,224, + 0,3,128,1,224,0,3,0,1,240,0,3,0,1,240,0, + 7,0,0,240,0,7,0,0,248,0,31,128,1,252,0,255, + 248,31,255,192,34,46,230,37,2,0,0,0,7,0,0,0, + 0,15,0,0,0,0,15,0,0,0,0,30,0,0,0,0, + 60,0,0,0,0,48,0,0,0,0,96,0,0,0,0,192, + 0,0,0,0,128,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,192,0,0,0,0,192,0,0,0,0,224,0,0, + 0,1,224,0,0,0,1,224,0,0,0,3,240,0,0,0, + 3,240,0,0,0,3,240,0,0,0,6,248,0,0,0,6, + 248,0,0,0,6,248,0,0,0,12,124,0,0,0,12,124, + 0,0,0,12,124,0,0,0,24,62,0,0,0,24,62,0, + 0,0,24,30,0,0,0,48,31,0,0,0,48,31,0,0, + 0,48,15,0,0,0,96,15,128,0,0,96,15,128,0,0, + 224,7,128,0,0,255,255,192,0,0,255,255,192,0,1,192, + 3,192,0,1,128,3,224,0,1,128,3,224,0,3,128,1, + 224,0,3,0,1,240,0,3,0,1,240,0,7,0,0,240, + 0,15,128,0,248,0,255,248,31,255,192,255,248,31,255,192, + 34,45,225,37,2,0,0,0,192,0,0,0,1,224,0,0, + 0,3,240,0,0,0,7,56,0,0,0,14,28,0,0,0, + 28,14,0,0,0,48,3,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,192,0,0,0,0,192, + 0,0,0,0,224,0,0,0,1,224,0,0,0,1,224,0, + 0,0,3,240,0,0,0,3,240,0,0,0,3,240,0,0, + 0,6,248,0,0,0,6,248,0,0,0,6,248,0,0,0, + 12,124,0,0,0,12,124,0,0,0,12,124,0,0,0,24, + 62,0,0,0,24,62,0,0,0,24,30,0,0,0,48,31, + 0,0,0,48,31,0,0,0,48,15,0,0,0,96,15,128, + 0,0,96,15,128,0,0,96,7,128,0,0,255,255,192,0, + 0,255,255,192,0,0,192,3,192,0,1,128,3,224,0,1, + 128,3,224,0,3,128,1,224,0,3,0,1,240,0,3,0, + 1,240,0,7,0,0,240,0,7,0,0,248,0,31,128,1, + 252,0,255,248,31,255,192,34,45,225,37,2,0,0,15,0, + 128,0,0,31,225,128,0,0,63,255,0,0,0,33,255,0, + 0,0,32,62,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,192,0,0,0,0,192,0,0,0,1,224,0,0,0,1, + 224,0,0,0,1,224,0,0,0,3,240,0,0,0,3,240, + 0,0,0,3,240,0,0,0,6,248,0,0,0,6,248,0, + 0,0,6,248,0,0,0,12,124,0,0,0,12,124,0,0, + 0,12,124,0,0,0,24,62,0,0,0,24,62,0,0,0, + 24,30,0,0,0,48,31,0,0,0,48,31,0,0,0,112, + 15,0,0,0,96,15,128,0,0,96,15,128,0,0,224,7, + 128,0,0,255,255,192,0,0,255,255,192,0,1,192,3,192, + 0,1,128,3,224,0,1,128,3,224,0,3,128,1,224,0, + 3,0,1,240,0,3,0,1,240,0,7,0,0,240,0,15, + 128,0,248,0,255,248,31,255,192,255,248,31,255,192,34,44, + 220,37,2,0,0,28,7,0,0,0,62,15,128,0,0,62, + 15,128,0,0,62,15,128,0,0,28,7,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,64,0,0,0,0,192,0,0,0,0,224,0,0, + 0,0,224,0,0,0,1,224,0,0,0,1,240,0,0,0, + 3,240,0,0,0,3,240,0,0,0,3,248,0,0,0,7, + 248,0,0,0,6,120,0,0,0,6,124,0,0,0,14,60, + 0,0,0,12,60,0,0,0,12,62,0,0,0,28,30,0, + 0,0,24,30,0,0,0,24,31,0,0,0,48,15,0,0, + 0,48,15,0,0,0,112,15,128,0,0,96,7,128,0,0, + 96,7,128,0,0,255,255,192,0,0,255,255,192,0,0,192, + 3,192,0,1,192,3,224,0,1,192,1,224,0,1,128,1, + 224,0,3,128,1,240,0,3,128,0,240,0,7,128,0,240, + 0,7,128,0,248,0,31,192,1,252,0,255,248,31,255,192, + 34,47,235,37,2,0,0,1,224,0,0,0,6,24,0,0, + 0,4,8,0,0,0,8,4,0,0,0,8,4,0,0,0, + 8,4,0,0,0,8,4,0,0,0,4,8,0,0,0,6, + 24,0,0,0,3,224,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,192,0,0,0,0,192,0,0,0,0,224,0, + 0,0,1,224,0,0,0,1,224,0,0,0,3,240,0,0, + 0,3,240,0,0,0,3,240,0,0,0,6,248,0,0,0, + 6,248,0,0,0,6,248,0,0,0,12,124,0,0,0,12, + 124,0,0,0,12,124,0,0,0,24,62,0,0,0,24,62, + 0,0,0,24,30,0,0,0,48,31,0,0,0,48,31,0, + 0,0,48,15,0,0,0,96,15,128,0,0,96,7,128,0, + 0,96,7,128,0,0,255,255,192,0,0,255,255,192,0,1, + 192,3,192,0,1,128,3,224,0,1,128,3,224,0,3,128, + 1,224,0,3,0,1,240,0,3,0,1,240,0,7,0,0, + 240,0,7,0,0,248,0,31,128,1,252,0,255,248,31,255, + 192,44,35,210,48,1,0,0,0,127,255,255,240,0,0,15, + 224,3,240,0,0,15,192,0,240,0,0,15,192,0,112,0, + 0,15,192,0,112,0,0,27,192,0,48,0,0,27,192,0, + 48,0,0,51,192,0,48,0,0,51,192,0,16,0,0,99, + 192,0,16,0,0,99,192,16,16,0,0,195,192,16,16,0, + 1,195,192,16,0,0,1,131,192,48,0,0,3,131,192,48, + 0,0,3,3,192,48,0,0,7,3,192,112,0,0,6,3, + 255,240,0,0,14,3,192,240,0,0,12,3,192,48,0,0, + 24,3,192,48,0,0,24,3,192,16,0,0,48,3,192,16, + 16,0,63,255,192,16,16,0,96,3,192,16,16,0,96,3, + 192,0,16,0,192,3,192,0,16,0,192,3,192,0,48,1, + 128,3,192,0,48,1,128,3,192,0,112,3,128,3,192,0, + 112,7,128,3,192,0,240,15,128,3,192,1,240,255,248,127, + 255,255,240,255,248,127,255,255,240,26,47,188,32,3,245,0, + 63,0,128,0,225,225,128,3,128,113,128,7,0,63,128,14, + 0,31,128,30,0,15,128,28,0,7,128,60,0,7,128,60, + 0,3,128,124,0,3,128,120,0,1,128,120,0,1,128,120, + 0,0,128,248,0,0,128,248,0,0,0,248,0,0,0,248, + 0,0,0,248,0,0,0,248,0,0,0,248,0,0,0,248, + 0,0,0,248,0,0,0,248,0,0,0,120,0,0,192,120, + 0,0,192,120,0,0,192,124,0,0,192,60,0,0,128,60, + 0,1,128,28,0,1,128,30,0,3,0,14,0,3,0,7, + 0,6,0,3,128,12,0,1,192,56,0,0,127,224,0,0, + 8,0,0,0,8,0,0,0,28,0,0,0,15,128,0,0, + 3,192,0,0,1,224,0,0,1,224,0,0,1,224,0,0, + 129,224,0,0,199,192,0,0,63,0,0,28,46,184,34,3, + 0,0,224,0,0,0,240,0,0,0,240,0,0,0,120,0, + 0,0,60,0,0,0,14,0,0,0,6,0,0,0,3,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,255, + 240,255,255,255,240,7,128,1,240,7,128,0,240,7,128,0, + 112,7,128,0,112,7,128,0,48,7,128,0,48,7,128,0, + 48,7,128,0,16,7,128,32,16,7,128,32,16,7,128,32, + 0,7,128,96,0,7,128,96,0,7,128,96,0,7,128,224, + 0,7,255,224,0,7,129,224,0,7,128,96,0,7,128,96, + 0,7,128,96,0,7,128,32,16,7,128,32,16,7,128,32, + 16,7,128,0,16,7,128,0,48,7,128,0,48,7,128,0, + 48,7,128,0,112,7,128,0,112,7,128,0,240,7,128,1, + 240,255,255,255,240,255,255,255,240,28,46,184,34,3,0,0, + 0,28,0,0,0,60,0,0,0,60,0,0,0,120,0,0, + 0,240,0,0,0,192,0,0,1,128,0,0,3,0,0,0, + 2,0,0,0,0,0,0,0,0,0,0,255,255,255,240,255, + 255,255,240,7,128,1,240,7,128,0,240,7,128,0,112,7, + 128,0,112,7,128,0,48,7,128,0,48,7,128,0,48,7, + 128,0,16,7,128,32,16,7,128,32,16,7,128,32,0,7, + 128,96,0,7,128,96,0,7,128,96,0,7,128,224,0,7, + 255,224,0,7,129,224,0,7,128,96,0,7,128,96,0,7, + 128,96,0,7,128,32,16,7,128,32,16,7,128,32,16,7, + 128,0,16,7,128,0,48,7,128,0,48,7,128,0,48,7, + 128,0,112,7,128,0,112,7,128,0,240,7,128,1,240,255, + 255,255,240,255,255,255,240,28,45,180,34,3,0,0,3,0, + 0,0,7,128,0,0,15,192,0,0,12,224,0,0,24,112, + 0,0,112,24,0,0,192,12,0,0,0,2,0,0,0,0, + 0,0,0,0,0,255,255,255,240,255,255,255,240,7,128,1, + 240,7,128,0,240,7,128,0,112,7,128,0,112,7,128,0, + 48,7,128,0,48,7,128,0,48,7,128,0,16,7,128,32, + 16,7,128,32,16,7,128,32,0,7,128,96,0,7,128,96, + 0,7,128,96,0,7,128,224,0,7,255,224,0,7,129,224, + 0,7,128,96,0,7,128,96,0,7,128,96,0,7,128,32, + 16,7,128,32,16,7,128,32,16,7,128,0,16,7,128,0, + 48,7,128,0,48,7,128,0,48,7,128,0,112,7,128,0, + 112,7,128,0,240,7,128,1,240,255,255,255,240,255,255,255, + 240,28,44,176,34,3,0,0,112,28,0,0,248,62,0,0, + 248,62,0,0,248,62,0,0,112,28,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,255,255,255,240,7, + 192,7,240,7,128,1,240,7,128,0,240,7,128,0,112,7, + 128,0,112,7,128,0,48,7,128,0,48,7,128,0,48,7, + 128,0,16,7,128,32,16,7,128,32,16,7,128,32,0,7, + 128,32,0,7,128,96,0,7,128,96,0,7,128,224,0,7, + 255,224,0,7,129,224,0,7,128,96,0,7,128,96,0,7, + 128,32,0,7,128,32,16,7,128,32,16,7,128,32,16,7, + 128,0,16,7,128,0,48,7,128,0,48,7,128,0,48,7, + 128,0,112,7,128,0,112,7,128,0,240,7,128,1,240,255, + 255,255,240,255,255,255,240,14,46,92,19,3,0,224,0,240, + 0,240,0,120,0,60,0,12,0,6,0,3,0,1,0,0, + 0,0,0,255,252,255,252,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,15,128,255,252,14,46,92,19,3,0,0, + 28,0,60,0,60,0,120,0,240,0,192,1,128,3,0,0, + 0,0,0,0,0,255,252,255,252,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,192,255,252,14,45,90,19,3, + 0,3,0,7,128,7,192,14,192,24,96,112,56,192,12,0, + 0,0,0,0,0,255,252,7,192,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,255,252,255,252,15,44,88,20,3, + 0,112,28,248,62,248,62,248,62,112,28,0,0,0,0,0, + 0,0,0,127,254,7,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,7,192,127,254,32,35,140,38,4,0,255, + 255,248,0,15,128,15,0,7,128,3,128,7,128,1,192,7, + 128,0,224,7,128,0,240,7,128,0,120,7,128,0,124,7, + 128,0,60,7,128,0,62,7,128,0,62,7,128,0,30,7, + 128,0,30,7,128,0,31,7,128,0,31,7,128,0,31,255, + 254,0,31,7,128,0,31,7,128,0,31,7,128,0,31,7, + 128,0,31,7,128,0,31,7,128,0,30,7,128,0,62,7, + 128,0,62,7,128,0,60,7,128,0,60,7,128,0,120,7, + 128,0,120,7,128,0,240,7,128,0,224,7,128,1,192,7, + 128,3,128,15,128,30,0,255,255,248,0,33,46,230,38,3, + 255,0,7,1,128,0,0,31,225,128,0,0,31,255,0,0, + 0,16,255,0,0,0,48,62,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,255,192,7,255,128,255,192,7,255,128,7,224,0, + 120,0,7,240,0,48,0,7,240,0,48,0,7,248,0,48, + 0,6,248,0,48,0,6,252,0,48,0,6,126,0,48,0, + 6,62,0,48,0,6,63,0,48,0,6,31,0,48,0,6, + 15,128,48,0,6,15,192,48,0,6,7,192,48,0,6,7, + 224,48,0,6,3,224,48,0,6,1,240,48,0,6,1,248, + 48,0,6,0,248,48,0,6,0,252,48,0,6,0,124,48, + 0,6,0,62,48,0,6,0,63,48,0,6,0,31,48,0, + 6,0,15,176,0,6,0,15,176,0,6,0,7,240,0,6, + 0,7,240,0,6,0,3,240,0,6,0,1,240,0,6,0, + 1,240,0,15,0,0,240,0,31,128,0,240,0,255,240,0, + 112,0,0,0,0,48,0,28,46,184,33,3,1,1,192,0, + 0,1,224,0,0,1,240,0,0,0,112,0,0,0,56,0, + 0,0,28,0,0,0,12,0,0,0,6,0,0,0,0,0, + 0,0,0,0,0,0,31,128,0,0,255,240,0,1,192,56, + 0,3,128,28,0,7,0,14,0,14,0,7,0,30,0,7, + 128,30,0,7,128,60,0,3,192,60,0,3,192,124,0,3, + 224,124,0,3,224,120,0,1,224,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,120,0,1,224,120,0,1,224,120,0,3,224,124,0,3, + 192,60,0,3,192,60,0,3,192,30,0,7,128,14,0,7, + 0,14,0,7,0,7,0,14,0,3,128,28,0,0,192,48, + 0,0,127,224,0,28,46,184,33,3,1,0,0,56,0,0, + 0,120,0,0,0,248,0,0,0,224,0,0,1,192,0,0, + 3,128,0,0,3,0,0,0,6,0,0,0,0,0,0,0, + 0,0,0,0,31,128,0,0,255,240,0,1,192,56,0,3, + 128,28,0,7,0,14,0,14,0,7,0,30,0,7,128,30, + 0,7,128,60,0,3,192,60,0,3,192,124,0,3,224,124, + 0,3,224,120,0,1,224,248,0,1,240,248,0,1,240,248, + 0,1,240,248,0,1,240,248,0,1,240,248,0,1,240,248, + 0,1,240,248,0,1,240,248,0,1,240,248,0,1,240,120, + 0,1,224,120,0,1,224,120,0,3,224,124,0,3,192,60, + 0,3,192,60,0,3,192,30,0,7,128,14,0,7,0,14, + 0,7,0,7,0,14,0,3,128,28,0,0,192,48,0,0, + 127,224,0,28,46,184,33,3,0,0,6,0,0,0,15,0, + 0,0,15,0,0,0,31,128,0,0,57,192,0,0,112,224, + 0,0,192,48,0,3,128,28,0,0,0,0,0,0,0,0, + 0,0,31,128,0,0,255,240,0,1,192,56,0,3,128,28, + 0,7,0,14,0,14,0,7,0,30,0,7,128,30,0,7, + 128,60,0,3,192,60,0,3,192,124,0,3,224,124,0,3, + 224,120,0,1,224,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,120,0,1, + 224,120,0,1,224,120,0,3,224,124,0,3,192,60,0,3, + 192,60,0,3,192,30,0,7,128,14,0,7,0,14,0,7, + 0,7,0,14,0,3,128,28,0,0,192,48,0,0,127,224, + 0,28,45,180,33,3,0,0,120,12,0,0,255,8,0,1, + 255,248,0,1,143,248,0,1,1,224,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,31,128,0,0, + 255,240,0,1,192,56,0,3,128,28,0,7,0,14,0,14, + 0,7,0,30,0,7,128,30,0,7,128,60,0,3,192,60, + 0,3,192,124,0,3,224,124,0,3,224,120,0,1,224,248, + 0,1,240,248,0,1,240,248,0,1,240,248,0,1,240,248, + 0,1,240,248,0,1,240,248,0,1,240,248,0,1,240,248, + 0,1,240,248,0,1,240,120,0,1,224,120,0,1,224,120, + 0,3,224,124,0,3,192,60,0,3,192,60,0,3,192,30, + 0,7,128,14,0,7,0,14,0,7,0,7,0,14,0,3, + 128,28,0,0,192,48,0,0,127,224,0,28,45,180,33,3, + 0,0,224,56,0,1,240,124,0,1,240,124,0,1,240,124, + 0,0,224,56,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,31,128,0,0,240,240,0,1,192,56, + 0,3,128,28,0,7,0,14,0,14,0,7,0,30,0,7, + 128,28,0,3,128,60,0,3,192,60,0,3,192,124,0,3, + 224,120,0,1,224,120,0,1,224,248,0,1,224,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,120,0,1,224,120,0,1,224,124,0,3,224,124,0,3, + 224,60,0,3,192,60,0,3,192,30,0,7,128,14,0,7, + 0,14,0,15,0,7,0,14,0,3,128,28,0,0,224,112, + 0,0,127,224,0,30,30,120,46,8,254,192,0,0,12,224, + 0,0,28,112,0,0,56,56,0,0,112,28,0,0,224,14, + 0,1,192,7,0,3,128,3,128,7,0,1,192,14,0,0, + 224,28,0,0,112,56,0,0,56,112,0,0,28,224,0,0, + 15,192,0,0,7,128,0,0,7,128,0,0,15,192,0,0, + 28,224,0,0,56,112,0,0,112,56,0,0,224,28,0,1, + 192,14,0,3,128,7,0,7,0,3,128,14,0,1,192,28, + 0,0,224,56,0,0,112,112,0,0,56,224,0,0,28,192, + 0,0,12,28,36,144,33,3,0,0,31,128,32,0,240,240, + 96,1,192,56,224,3,128,30,192,7,0,15,128,14,0,7, + 128,30,0,7,128,28,0,7,128,60,0,15,192,60,0,31, + 192,124,0,59,224,120,0,49,224,120,0,97,224,248,0,225, + 240,248,1,193,240,248,1,129,240,248,3,1,240,248,7,1, + 240,248,6,1,240,248,12,1,240,248,28,1,240,248,56,1, + 240,248,48,1,240,120,96,1,224,120,224,1,224,121,192,3, + 224,125,128,3,192,63,0,3,192,63,0,3,192,30,0,7, + 128,30,0,7,0,30,0,15,0,63,0,14,0,51,128,28, + 0,97,192,112,0,192,127,224,0,34,46,230,39,3,1,0, + 28,0,0,0,0,28,0,0,0,0,30,0,0,0,0,15, + 0,0,0,0,7,0,0,0,0,1,128,0,0,0,0,192, + 0,0,0,0,64,0,0,0,0,0,0,0,0,0,0,0, + 0,255,252,3,255,192,255,252,3,255,192,7,192,0,126,0, + 7,128,0,60,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,7,128,0,24, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,3,192,0, + 24,0,3,192,0,48,0,1,192,0,48,0,1,224,0,96, + 0,0,224,0,96,0,0,112,0,192,0,0,60,3,128,0, + 0,15,254,0,0,34,46,230,39,3,1,0,0,7,0,0, + 0,0,15,0,0,0,0,30,0,0,0,0,28,0,0,0, + 0,56,0,0,0,0,112,0,0,0,0,96,0,0,0,0, + 128,0,0,0,0,0,0,0,0,0,0,0,0,255,252,3, + 255,192,255,252,3,255,192,7,192,0,126,0,7,128,0,60, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,7,128,0,24, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,3,192,0,24,0,3,192, + 0,48,0,1,192,0,48,0,1,224,0,96,0,0,224,0, + 96,0,0,112,0,192,0,0,60,3,128,0,0,15,254,0, + 0,34,46,230,39,3,0,0,0,192,0,0,0,0,224,0, + 0,0,1,224,0,0,0,3,240,0,0,0,3,56,0,0, + 0,6,28,0,0,0,28,6,0,0,0,48,3,128,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,252, + 3,255,192,7,192,0,126,0,7,128,0,60,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,7,128,0,24, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,7,128,0,24, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,3,192,0,24,0,3,192,0,48,0,3, + 192,0,48,0,1,224,0,96,0,0,240,0,224,0,0,120, + 1,192,0,0,62,7,128,0,0,15,254,0,0,34,45,225, + 39,3,0,0,28,7,0,0,0,62,15,128,0,0,62,15, + 128,0,0,62,15,128,0,0,28,7,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,255,252,3,255,192,7,192,0,126,0,7, + 128,0,60,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,7,128,0,24, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,3,192,0,24, + 0,3,192,0,48,0,3,192,0,48,0,1,224,0,96,0, + 0,224,0,96,0,0,112,0,192,0,0,60,3,128,0,0, + 15,254,0,0,32,46,184,35,2,0,0,0,3,0,0,0, + 7,128,0,0,15,0,0,0,30,0,0,0,60,0,0,0, + 56,0,0,0,96,0,0,0,192,0,0,0,0,0,0,0, + 0,0,0,0,0,0,255,254,15,255,255,254,15,255,7,224, + 0,240,7,224,0,96,3,224,0,96,3,240,0,64,1,240, + 0,192,0,248,0,128,0,252,1,128,0,124,1,0,0,62, + 3,0,0,62,2,0,0,31,6,0,0,31,12,0,0,15, + 136,0,0,7,152,0,0,7,208,0,0,3,240,0,0,3, + 224,0,0,1,224,0,0,1,224,0,0,1,224,0,0,1, + 224,0,0,1,224,0,0,1,224,0,0,1,224,0,0,1, + 224,0,0,1,224,0,0,1,224,0,0,1,224,0,0,1, + 224,0,0,1,224,0,0,1,224,0,0,1,240,0,0,127, + 255,192,28,35,140,33,3,0,255,254,0,0,7,192,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,255,240,0,7,192,30,0,7,128,7,128,7,128,7,192, + 7,128,3,224,7,128,3,224,7,128,1,240,7,128,1,240, + 7,128,1,240,7,128,1,240,7,128,1,240,7,128,1,240, + 7,128,3,224,7,128,3,224,7,128,7,192,7,128,7,128, + 7,128,30,0,7,255,248,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,192,0,0, + 255,254,0,0,22,35,105,26,1,0,0,63,128,0,243,224, + 1,192,240,3,128,240,7,128,248,7,0,120,15,0,120,15, + 0,120,15,0,248,15,0,240,15,0,224,15,1,192,15,3, + 0,15,60,0,15,6,0,15,1,128,15,0,192,15,0,224, + 15,0,112,15,0,120,15,0,120,15,0,60,15,0,60,15, + 0,60,15,0,60,15,0,60,15,0,60,15,0,60,15,56, + 60,15,120,60,15,120,60,15,112,120,15,96,112,15,48,224, + 255,31,192,21,33,99,24,2,1,56,0,0,60,0,0,30, + 0,0,14,0,0,7,0,0,3,128,0,1,128,0,0,192, + 0,0,0,0,0,0,0,0,0,0,7,248,0,24,30,0, + 16,15,0,48,7,0,56,7,128,60,7,128,62,7,128,28, + 7,128,0,7,128,0,31,128,3,247,128,31,7,128,60,7, + 128,120,7,128,248,7,128,240,7,128,240,15,136,240,15,136, + 240,23,136,248,23,152,120,39,240,63,195,240,21,33,99,24, + 2,1,0,7,0,0,15,128,0,15,0,0,30,0,0,60, + 0,0,48,0,0,96,0,0,192,0,0,0,0,0,0,0, + 0,0,0,7,248,0,24,30,0,16,15,0,48,7,0,56, + 7,128,60,7,128,62,7,128,28,7,128,0,7,128,0,31, + 128,3,247,128,31,7,128,60,7,128,120,7,128,248,7,128, + 240,7,128,240,15,136,240,15,136,240,23,136,248,23,152,120, + 39,240,63,195,240,21,33,99,24,2,0,0,192,0,0,224, + 0,1,224,0,1,240,0,3,48,0,6,24,0,12,12,0, + 24,2,0,0,0,0,0,0,0,0,0,0,7,248,0,24, + 30,0,16,15,0,48,7,0,56,7,128,60,7,128,62,7, + 128,28,7,128,0,7,128,0,31,128,3,247,128,31,7,128, + 60,7,128,120,7,128,248,7,128,240,7,128,240,15,136,240, + 15,136,240,23,136,248,23,152,120,39,240,63,195,240,21,32, + 96,24,2,0,15,129,0,31,227,0,31,255,0,16,254,0, + 32,60,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,7,248,0,24,30,0,16,15,0,48,7,0,56,7, + 128,60,7,128,62,7,128,28,7,128,0,7,128,0,31,128, + 3,247,128,31,7,128,60,7,128,120,7,128,248,7,128,240, + 7,128,240,15,136,240,15,136,240,23,136,248,23,152,120,39, + 240,63,195,240,21,32,96,24,2,0,28,14,0,62,31,0, + 62,31,0,62,31,0,28,14,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,7,248,0,24,30,0,16,15, + 0,48,7,0,56,7,128,60,7,128,62,7,128,28,7,128, + 0,7,128,0,31,128,3,247,128,31,7,128,60,7,128,120, + 7,128,248,7,128,240,7,128,240,15,136,240,15,136,240,23, + 136,248,23,152,120,39,240,63,195,240,21,34,102,24,2,0, + 1,224,0,2,24,0,4,8,0,8,4,0,8,4,0,8, + 4,0,4,12,0,6,24,0,1,240,0,0,0,0,0,0, + 0,0,0,0,7,248,0,24,30,0,16,15,0,48,7,0, + 56,7,128,60,7,128,60,7,128,28,7,128,0,7,128,0, + 31,128,3,247,128,31,7,128,60,7,128,120,7,128,248,7, + 128,240,7,128,240,15,136,240,15,136,240,31,136,248,23,152, + 120,39,240,63,195,240,30,22,88,34,2,1,7,248,63,128, + 24,30,97,224,16,15,224,224,48,7,192,112,56,7,192,120, + 60,7,128,120,62,7,128,120,30,7,128,60,0,7,128,60, + 0,15,128,60,1,247,255,252,15,7,128,0,60,7,128,0, + 120,7,128,0,248,7,128,0,240,7,128,8,240,15,128,8, + 240,11,192,8,240,27,192,16,248,17,224,48,120,32,240,96, + 63,192,127,192,17,32,96,21,2,247,7,252,0,14,6,0, + 28,3,0,56,3,0,56,3,128,120,15,128,120,15,128,240, + 15,128,240,7,0,240,0,0,240,0,0,240,0,0,240,0, + 0,240,0,0,240,0,128,120,0,128,120,0,128,120,1,0, + 56,1,0,28,2,0,14,6,0,7,248,0,0,128,0,0, + 128,0,1,128,0,0,240,0,0,56,0,0,28,0,0,28, + 0,0,28,0,12,56,0,3,240,0,18,33,99,22,2,1, + 60,0,0,60,0,0,30,0,0,15,0,0,7,0,0,3, + 128,0,0,192,0,0,64,0,0,0,0,0,0,0,0,0, + 0,7,248,0,14,28,0,28,14,0,56,15,0,56,7,128, + 120,7,128,120,7,128,240,7,192,240,7,192,240,7,192,255, + 255,192,240,0,0,240,0,0,240,0,0,240,0,128,120,0, + 128,120,0,128,120,1,128,56,1,0,28,3,0,14,6,0, + 7,252,0,18,33,99,22,2,1,0,7,0,0,15,0,0, + 15,0,0,30,0,0,60,0,0,48,0,0,96,0,0,192, + 0,0,0,0,0,0,0,0,0,0,7,248,0,14,28,0, + 28,14,0,56,15,0,56,7,128,120,7,128,120,7,128,240, + 7,192,240,7,192,240,7,192,255,255,192,240,0,0,240,0, + 0,240,0,0,240,0,128,120,0,128,120,0,128,120,1,128, + 56,1,0,28,3,0,14,6,0,7,252,0,18,33,99,22, + 2,0,0,192,0,0,224,0,1,224,0,1,240,0,3,184, + 0,7,24,0,4,12,0,24,2,0,0,0,0,0,0,0, + 0,0,0,7,248,0,14,28,0,28,14,0,56,15,0,56, + 7,128,120,7,128,120,7,128,240,7,192,240,7,192,240,7, + 192,255,255,192,240,0,0,240,0,0,240,0,0,240,0,128, + 120,0,128,120,0,128,120,1,128,56,1,0,28,3,0,14, + 6,0,7,252,0,18,32,96,22,2,0,28,7,0,62,15, + 128,62,15,128,62,15,128,28,7,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,7,248,0,14,12,0,28, + 14,0,60,7,0,56,7,128,120,3,128,120,3,128,240,3, + 192,240,3,192,240,3,192,255,255,192,240,0,0,240,0,0, + 240,0,0,240,0,64,120,0,128,120,0,128,120,0,128,56, + 1,128,28,1,0,14,6,0,7,252,0,12,33,66,14,0, + 1,224,0,240,0,240,0,120,0,60,0,12,0,6,0,3, + 0,0,0,0,0,0,0,63,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,63,240,11,33,66,13,2,1,0,224,1,224,1,224,3, + 192,7,128,6,0,12,0,24,0,0,0,0,0,0,0,254, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,255,192,13,33,66,14,0, + 0,7,0,7,0,7,128,15,128,29,192,24,96,48,48,192, + 24,0,0,0,0,0,0,63,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,63,240,13,32,64,15,1,0,112,112,248,248,248,248,248, + 248,112,112,0,0,0,0,0,0,0,0,0,0,63,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,63,240,19,35,105,24,2,0,31, + 0,0,15,131,128,7,198,0,3,252,0,1,240,0,0,240, + 0,1,248,0,7,124,0,12,60,0,24,30,0,0,31,0, + 0,15,0,0,7,128,3,255,128,14,15,192,28,7,192,60, + 3,192,56,3,224,120,3,224,120,1,224,248,1,224,240,1, + 224,240,1,224,240,1,224,240,1,224,240,1,224,240,1,224, + 240,1,224,120,1,192,120,3,192,56,3,192,60,3,128,28, + 7,0,14,14,0,3,252,0,23,32,96,27,2,0,1,224, + 64,3,248,192,7,255,192,6,63,128,4,7,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,254,31,128,30, + 97,224,30,192,224,30,128,240,31,0,240,31,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,255,199,254,19,33, + 99,24,2,1,28,0,0,30,0,0,30,0,0,15,0,0, + 7,128,0,1,128,0,0,192,0,0,96,0,0,0,0,0, + 0,0,0,0,0,3,252,0,14,14,0,28,7,0,60,3, + 128,56,3,192,120,3,192,120,1,224,248,1,224,240,1,224, + 240,1,224,240,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,120,1,224,120,3,192,56,3,192,60,3,128,28,7, + 0,14,14,0,3,252,0,19,33,99,24,2,1,0,7,0, + 0,7,128,0,15,0,0,30,0,0,28,0,0,56,0,0, + 96,0,0,64,0,0,0,0,0,0,0,0,0,0,3,252, + 0,14,14,0,28,7,0,60,3,128,56,3,192,120,3,192, + 120,1,224,248,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,120,1,224,120,3, + 192,56,3,192,60,3,128,28,7,0,14,14,0,3,252,0, + 19,33,99,24,2,0,0,96,0,0,224,0,0,240,0,1, + 240,0,1,184,0,3,24,0,6,4,0,8,3,0,0,0, + 0,0,0,0,0,0,0,3,252,0,14,14,0,28,7,0, + 60,3,128,56,3,192,120,3,192,120,1,224,248,1,224,240, + 1,224,240,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,120,1,224,120,3,192,56,3,192,60,3,128, + 28,7,0,14,14,0,3,252,0,19,32,96,24,2,0,7, + 129,0,15,225,0,31,255,0,24,254,0,16,28,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,3,252,0, + 14,14,0,28,7,0,60,3,128,56,3,192,120,3,192,120, + 1,224,248,1,224,240,1,224,240,1,224,240,1,224,240,1, + 224,240,1,224,240,1,224,240,1,224,120,1,224,120,3,192, + 56,3,192,60,3,128,28,7,0,14,14,0,3,252,0,19, + 32,96,24,2,0,14,7,0,31,15,128,31,15,128,31,15, + 128,14,7,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,3,252,0,14,14,0,28,7,0,60,3,128,56, + 3,192,120,3,192,120,1,224,248,1,224,240,1,224,240,1, + 224,240,1,224,240,1,224,240,1,224,240,1,224,240,1,224, + 120,1,224,120,3,192,56,3,192,60,3,128,28,7,0,14, + 14,0,3,252,0,41,31,186,45,2,253,0,0,30,0,0, + 0,0,0,63,0,0,0,0,0,63,0,0,0,0,0,63, + 0,0,0,0,0,63,0,0,0,0,0,30,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,255,255,255,128,255,255,255,255,255,128,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,30,0,0,0,0,0,63,0,0,0,0,0,63, + 0,0,0,0,0,63,0,0,0,0,0,63,0,0,0,0, + 0,30,0,0,0,19,22,66,24,2,1,3,252,96,14,14, + 64,28,7,192,60,3,128,56,3,192,120,7,192,120,13,224, + 248,9,224,240,25,224,240,49,224,240,97,224,240,193,224,240, + 129,224,241,129,224,243,1,224,126,1,224,124,3,192,56,3, + 192,60,3,128,60,7,0,110,14,0,195,252,0,23,33,99, + 27,2,1,14,0,0,15,0,0,7,128,0,3,192,0,1, + 192,0,0,224,0,0,48,0,0,16,0,0,0,0,0,0, + 0,0,0,0,254,7,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,1,240,30,1,240,30,1,240,30,2,240,14,6,240, + 15,12,240,3,240,254,23,33,99,27,2,1,0,1,192,0, + 3,192,0,3,192,0,7,128,0,14,0,0,12,0,0,24, + 0,0,48,0,0,0,0,0,0,0,0,0,0,254,7,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,1,240,30,1,240, + 30,1,240,30,2,240,14,6,240,15,12,240,3,240,254,23, + 33,99,27,2,0,0,48,0,0,56,0,0,120,0,0,124, + 0,0,204,0,1,134,0,3,3,0,6,0,128,0,0,0, + 0,0,0,0,0,0,254,7,240,30,0,240,30,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,1,240,30,1,240,30,1,240,30,2,240,14, + 6,240,15,12,240,3,240,254,23,32,96,27,2,0,7,3, + 128,15,135,192,15,135,192,15,135,192,7,3,128,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,254,7,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,1,240,30,1,240,30, + 1,240,30,2,240,14,6,240,15,12,240,3,240,254,24,45, + 135,26,1,246,0,0,240,0,0,240,0,1,224,0,1,192, + 0,3,128,0,7,0,0,6,0,0,12,0,0,24,0,0, + 0,0,0,0,0,0,0,0,255,225,255,31,0,120,15,0, + 48,15,0,48,7,0,32,7,128,96,7,128,96,3,192,64, + 3,192,192,3,192,192,1,224,128,1,225,128,0,225,128,0, + 241,128,0,241,0,0,115,0,0,123,0,0,122,0,0,62, + 0,0,62,0,0,60,0,0,28,0,0,28,0,0,24,0, + 0,24,0,0,24,0,24,48,0,60,48,0,60,48,0,60, + 96,0,56,96,0,31,192,0,15,0,0,20,46,138,25,2, + 243,30,0,0,126,0,0,254,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,15,192,30,63,224,30,97,240,30,192,240,30,128, + 240,31,128,240,31,0,240,31,0,240,30,0,240,30,0,240, + 30,1,224,30,1,224,30,1,192,30,3,128,30,3,128,30, + 7,0,30,6,0,30,12,0,30,24,0,30,48,0,30,192, + 0,31,128,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,60,0,0,240,0,0,128,0,0,24,43,129,26,1, + 245,1,192,224,3,225,240,3,225,240,3,225,240,1,192,224, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,255, + 225,255,31,128,120,15,0,48,15,0,48,7,128,32,7,128, + 96,7,128,96,3,192,64,3,192,64,3,192,192,1,224,128, + 1,224,128,0,225,128,0,241,128,0,241,0,0,115,0,0, + 123,0,0,122,0,0,62,0,0,62,0,0,60,0,0,28, + 0,0,28,0,0,24,0,0,24,0,0,24,0,24,48,0, + 60,48,0,60,48,0,60,96,0,56,96,0,31,192,0,15, + 0,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--49-490-72-72-P-256-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 0, '1' Height: 34 + Calculated Max Values w=41 h=46 x= 6 y=14 dx=45 dy= 0 ascent=36 len=246 + Font Bounding box w=128 h=62 x=-40 y=-15 + Calculated Min Values x= 0 y=-10 dx= 0 dy= 0 + Pure Font ascent =34 descent= 0 + X Font ascent =34 descent= 0 + Max Font ascent =36 descent=-10 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr35n[1560] U8G_SECTION(".progmem.u8g_font_osr35n") = { + 0,128,62,216,241,34,0,0,0,0,42,57,0,36,246,34, + 0,18,20,60,25,4,14,0,224,0,1,224,0,1,224,0, + 1,224,0,96,195,128,240,135,192,248,143,192,124,159,128,7, + 248,0,1,224,0,1,224,0,6,184,0,124,143,128,248,135, + 192,240,195,192,97,193,128,1,224,0,1,224,0,1,224,0, + 0,224,0,41,41,246,45,2,248,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,0,0,12,0,0,0,0,0,12,0,0,0,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,0,0,12,0,0,0,0,0,12,0,0,0,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,255,255,255,255,255, + 128,255,255,255,255,255,128,0,0,12,0,0,0,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,0,0,12,0,0,0,0,0,12,0,0,0,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,0, + 0,12,0,0,0,0,0,12,0,0,0,0,0,12,0,0, + 0,0,0,12,0,0,0,0,0,12,0,0,0,0,0,12, + 0,0,0,0,0,12,0,0,0,0,0,12,0,0,0,7, + 15,15,14,4,247,120,252,252,254,126,6,6,6,4,12,8, + 24,48,96,64,12,3,6,18,3,11,255,240,255,240,255,240, + 6,5,5,14,4,1,120,252,252,252,120,16,46,92,22,3, + 246,0,3,0,3,0,3,0,6,0,6,0,6,0,12,0, + 12,0,12,0,24,0,24,0,24,0,48,0,48,0,48,0, + 48,0,96,0,96,0,96,0,192,0,192,0,192,1,128,1, + 128,1,128,3,0,3,0,3,0,6,0,6,0,6,0,12, + 0,12,0,12,0,24,0,24,0,24,0,48,0,48,0,48, + 0,96,0,96,0,96,0,96,0,192,0,192,0,23,34,102, + 28,2,0,0,124,0,1,199,0,7,1,128,6,0,192,14, + 0,224,28,0,112,60,0,120,60,0,120,56,0,56,120,0, + 60,120,0,60,120,0,60,248,0,62,248,0,62,248,0,62, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,120,0,60,120,0,60,120,0,60,120,0, + 60,60,0,120,60,0,120,28,0,112,28,0,112,14,0,224, + 7,1,192,3,131,128,0,254,0,17,34,102,28,6,0,0, + 64,0,0,64,0,0,192,0,0,192,0,1,192,0,7,192, + 0,255,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,255, + 255,128,255,255,128,21,34,102,28,4,0,3,252,0,14,31, + 0,16,7,192,32,3,224,96,1,240,64,1,240,192,0,240, + 192,0,248,224,0,248,252,0,248,254,0,248,126,0,248,126, + 0,240,62,1,240,0,1,224,0,3,192,0,3,128,0,7, + 0,0,14,0,0,28,0,0,112,0,0,224,0,1,192,0, + 3,0,0,6,0,16,12,0,16,24,0,16,16,0,16,48, + 0,48,48,0,112,127,255,240,127,255,240,127,255,240,127,255, + 240,21,34,102,28,4,0,3,248,0,14,31,0,24,7,128, + 48,3,192,112,3,192,120,1,224,124,1,224,126,1,224,126, + 1,224,60,1,224,0,1,224,0,3,192,0,3,192,0,7, + 128,0,14,0,15,248,0,31,143,0,14,3,128,0,3,224, + 0,1,224,0,1,240,0,0,248,0,0,248,0,0,248,60, + 0,248,126,0,248,254,0,248,254,0,248,252,1,240,224,1, + 240,224,3,224,96,3,192,48,15,0,15,254,0,23,34,102, + 28,3,0,0,1,128,0,1,128,0,3,128,0,7,128,0, + 7,128,0,15,128,0,31,128,0,31,128,0,55,128,0,119, + 128,0,231,128,0,199,128,1,199,128,3,135,128,3,7,128, + 6,7,128,14,7,128,12,7,128,24,7,128,56,7,128,48, + 7,128,96,7,128,224,7,128,255,255,254,0,7,128,0,7, + 128,0,7,128,0,7,128,0,7,128,0,7,128,0,7,128, + 0,7,128,3,255,254,3,255,254,21,35,105,28,4,0,48, + 0,64,60,3,192,63,255,128,63,255,0,63,252,0,55,240, + 0,48,0,0,48,0,0,48,0,0,48,0,0,48,0,0, + 48,0,0,48,0,0,51,254,0,60,7,128,56,3,192,48, + 1,224,48,1,240,48,1,240,0,0,240,0,0,248,0,0, + 248,0,0,248,0,0,248,60,0,248,126,0,248,254,0,248, + 254,0,240,252,1,240,248,1,224,240,1,224,112,3,192,112, + 7,128,60,31,0,15,252,0,21,34,102,28,4,0,0,126, + 0,1,193,128,3,128,192,7,0,64,14,0,224,28,1,224, + 28,3,224,56,3,224,56,3,192,120,0,0,120,0,0,120, + 0,0,120,0,0,240,126,0,241,255,128,243,131,192,247,1, + 224,254,1,240,252,0,240,252,0,240,248,0,248,248,0,120, + 248,0,120,248,0,120,120,0,120,120,0,120,120,0,248,120, + 0,240,56,0,240,60,0,224,28,1,224,14,3,192,7,7, + 128,1,254,0,19,34,102,28,5,0,255,255,224,255,255,224, + 255,255,224,255,255,224,224,0,224,192,0,64,128,0,64,128, + 0,192,128,0,128,128,1,128,0,1,128,0,3,0,0,2, + 0,0,6,0,0,12,0,0,24,0,0,24,0,0,48,0, + 0,112,0,0,112,0,0,224,0,0,224,0,1,224,0,1, + 224,0,3,224,0,3,224,0,3,224,0,7,240,0,7,240, + 0,7,240,0,7,240,0,7,240,0,3,240,0,3,224,0, + 23,34,102,28,3,0,1,254,0,7,135,128,30,1,192,56, + 0,224,120,0,112,112,0,112,240,0,56,240,0,56,240,0, + 56,240,0,56,248,0,56,252,0,112,126,0,112,127,192,224, + 63,241,192,31,255,0,7,255,128,7,255,224,12,63,248,56, + 7,252,112,1,252,112,0,126,224,0,62,224,0,62,224,0, + 62,224,0,30,224,0,30,224,0,28,96,0,60,112,0,56, + 48,0,120,24,0,240,14,1,192,3,255,0,21,34,102,28, + 4,0,1,248,0,7,142,0,14,3,0,28,1,128,56,1, + 192,120,1,224,120,0,224,120,0,240,240,0,240,240,0,240, + 240,0,240,240,0,248,240,0,248,248,0,248,120,1,248,120, + 1,248,120,3,248,60,7,120,30,14,120,15,252,120,3,240, + 120,0,0,240,0,0,240,0,0,240,0,0,240,60,0,224, + 124,0,224,124,1,192,124,1,192,120,3,128,112,3,0,56, + 6,0,28,28,0,15,248,0}; +/* + Fontname: -FreeType-Old Standard TT-Medium-R-Normal--49-490-72-72-P-256-ISO10646-1 + Copyright: Copyright (C) 2006-2008 Alexey Kryukov + Capital A Height: 35, '1' Height: 34 + Calculated Max Values w=49 h=46 x= 6 y=26 dx=52 dy= 0 ascent=37 len=252 + Font Bounding box w=128 h=62 x=-40 y=-15 + Calculated Min Values x=-2 y=-11 dx= 0 dy= 0 + Pure Font ascent =35 descent=-10 + X Font ascent =36 descent=-10 + Max Font ascent =37 descent=-11 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_osr35r[10371] U8G_SECTION(".progmem.u8g_font_osr35r") = { + 0,128,62,216,241,35,12,236,30,116,32,127,246,37,245,36, + 246,0,0,0,14,0,0,6,34,34,14,4,0,120,252,252, + 252,252,252,252,252,252,120,120,120,120,120,120,48,48,48,48, + 48,48,48,48,48,48,48,0,0,0,120,252,252,252,120,11, + 10,20,19,4,26,224,224,224,224,224,224,224,224,224,224,224, + 224,64,64,64,64,64,64,64,64,26,34,136,34,4,0,0, + 48,24,0,0,48,24,0,0,112,24,0,0,96,24,0,0, + 96,56,0,0,96,56,0,0,96,48,0,0,96,48,0,0, + 96,48,0,0,224,48,0,255,255,255,192,255,255,255,192,0, + 192,96,0,0,192,96,0,0,192,96,0,1,192,96,0,1, + 128,96,0,1,128,224,0,1,128,192,0,1,128,192,0,1, + 128,192,0,3,128,192,0,255,255,255,192,255,255,255,192,3, + 1,128,0,3,1,128,0,3,1,128,0,7,1,128,0,7, + 1,128,0,6,1,128,0,6,3,128,0,6,3,0,0,6, + 3,0,0,6,3,0,0,22,41,123,29,3,252,0,204,0, + 0,204,0,0,204,0,1,254,0,7,207,192,12,204,96,24, + 204,48,48,204,24,32,204,24,96,204,28,96,204,60,96,204, + 124,96,204,124,112,204,120,120,204,120,62,204,0,63,204,0, + 31,252,0,15,252,0,7,255,128,1,255,192,0,255,224,0, + 207,240,0,205,248,0,204,120,48,204,60,120,204,28,248,204, + 28,248,204,12,240,204,12,240,204,8,224,204,24,96,204,24, + 96,204,48,48,204,96,28,205,192,7,255,128,0,204,0,0, + 204,0,0,204,0,0,204,0,33,34,170,43,5,0,15,128, + 0,48,0,24,192,0,96,0,48,96,0,64,0,112,112,0, + 192,0,96,48,1,128,0,224,56,1,128,0,224,56,3,0, + 0,224,56,2,0,0,224,56,6,0,0,224,56,12,0,0, + 224,56,12,0,0,224,56,24,0,0,96,48,48,0,0,96, + 112,48,0,0,48,96,96,0,0,24,192,64,0,0,15,128, + 192,0,0,0,1,128,248,0,0,1,129,140,0,0,3,3, + 6,0,0,2,6,7,0,0,6,6,3,0,0,12,14,3, + 128,0,8,14,3,128,0,24,14,3,128,0,48,14,3,128, + 0,48,14,3,128,0,96,14,3,128,0,64,14,3,128,0, + 192,6,3,0,1,128,6,3,0,1,128,7,7,0,3,0, + 3,14,0,6,0,1,252,0,33,34,170,39,3,0,0,63, + 0,0,0,0,227,128,0,0,1,128,192,0,0,3,128,64, + 0,0,3,0,96,0,0,7,0,96,0,0,7,0,96,0, + 0,7,0,224,0,0,7,0,192,0,0,7,129,192,0,0, + 7,131,128,0,0,3,199,0,0,0,3,238,0,0,0,1, + 248,0,0,0,0,248,7,255,128,1,248,0,252,0,3,252, + 0,112,0,7,62,0,112,0,14,63,0,96,0,28,31,0, + 96,0,60,15,128,192,0,56,7,192,192,0,120,7,193,128, + 0,120,3,225,128,0,240,1,243,0,0,240,1,254,0,0, + 240,0,254,0,0,240,0,124,0,0,248,0,62,0,0,248, + 0,62,1,0,120,0,127,1,0,60,0,207,130,0,30,3, + 135,252,0,15,254,1,248,0,3,10,10,11,4,26,224,224, + 224,224,224,224,64,64,64,64,11,46,92,18,5,246,0,64, + 0,224,1,192,3,128,3,0,6,0,14,0,12,0,28,0, + 24,0,56,0,48,0,48,0,112,0,96,0,96,0,96,0, + 224,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,224,0,96,0,96,0,96,0,112,0, + 48,0,48,0,56,0,24,0,28,0,12,0,14,0,6,0, + 3,0,3,128,1,192,0,224,0,64,11,45,90,18,2,246, + 64,0,96,0,112,0,56,0,28,0,12,0,14,0,6,0, + 3,0,3,0,3,128,1,128,1,192,0,192,0,192,0,192, + 0,224,0,96,0,96,0,96,0,96,0,96,0,96,0,96, + 0,96,0,96,0,96,0,96,0,96,0,224,0,192,0,192, + 0,192,1,128,1,128,3,128,3,0,7,0,6,0,14,0, + 12,0,24,0,56,0,112,0,224,0,18,20,60,25,4,14, + 0,224,0,1,224,0,1,224,0,1,224,0,96,195,128,240, + 135,192,248,143,192,124,159,128,7,248,0,1,224,0,1,224, + 0,6,184,0,124,143,128,248,135,192,240,195,192,97,193,128, + 1,224,0,1,224,0,1,224,0,0,224,0,41,41,246,45, + 2,248,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,255,255,255,255,255,128,255,255,255,255,255,128, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,0,0,12,0,0,0,0,0, + 12,0,0,0,0,0,12,0,0,0,0,0,12,0,0,0, + 0,0,12,0,0,0,0,0,12,0,0,0,0,0,12,0, + 0,0,0,0,12,0,0,0,7,15,15,14,4,247,120,252, + 252,254,126,6,6,6,4,12,8,24,48,96,64,12,3,6, + 18,3,11,255,240,255,240,255,240,6,5,5,14,4,1,120, + 252,252,252,120,16,46,92,22,3,246,0,3,0,3,0,3, + 0,6,0,6,0,6,0,12,0,12,0,12,0,24,0,24, + 0,24,0,48,0,48,0,48,0,48,0,96,0,96,0,96, + 0,192,0,192,0,192,1,128,1,128,1,128,3,0,3,0, + 3,0,6,0,6,0,6,0,12,0,12,0,12,0,24,0, + 24,0,24,0,48,0,48,0,48,0,96,0,96,0,96,0, + 96,0,192,0,192,0,23,34,102,28,2,0,0,124,0,1, + 199,0,7,1,128,6,0,192,14,0,224,28,0,112,60,0, + 120,60,0,120,56,0,56,120,0,60,120,0,60,120,0,60, + 248,0,62,248,0,62,248,0,62,248,0,62,248,0,62,248, + 0,62,248,0,62,248,0,62,248,0,62,248,0,62,120,0, + 60,120,0,60,120,0,60,120,0,60,60,0,120,60,0,120, + 28,0,112,28,0,112,14,0,224,7,1,192,3,131,128,0, + 254,0,17,34,102,28,6,0,0,64,0,0,64,0,0,192, + 0,0,192,0,1,192,0,7,192,0,255,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,255,255,128,255,255,128,21,34, + 102,28,4,0,3,252,0,14,31,0,16,7,192,32,3,224, + 96,1,240,64,1,240,192,0,240,192,0,248,224,0,248,252, + 0,248,254,0,248,126,0,248,126,0,240,62,1,240,0,1, + 224,0,3,192,0,3,128,0,7,0,0,14,0,0,28,0, + 0,112,0,0,224,0,1,192,0,3,0,0,6,0,16,12, + 0,16,24,0,16,16,0,16,48,0,48,48,0,112,127,255, + 240,127,255,240,127,255,240,127,255,240,21,34,102,28,4,0, + 3,248,0,14,31,0,24,7,128,48,3,192,112,3,192,120, + 1,224,124,1,224,126,1,224,126,1,224,60,1,224,0,1, + 224,0,3,192,0,3,192,0,7,128,0,14,0,15,248,0, + 31,143,0,14,3,128,0,3,224,0,1,224,0,1,240,0, + 0,248,0,0,248,0,0,248,60,0,248,126,0,248,254,0, + 248,254,0,248,252,1,240,224,1,240,224,3,224,96,3,192, + 48,15,0,15,254,0,23,34,102,28,3,0,0,1,128,0, + 1,128,0,3,128,0,7,128,0,7,128,0,15,128,0,31, + 128,0,31,128,0,55,128,0,119,128,0,231,128,0,199,128, + 1,199,128,3,135,128,3,7,128,6,7,128,14,7,128,12, + 7,128,24,7,128,56,7,128,48,7,128,96,7,128,224,7, + 128,255,255,254,0,7,128,0,7,128,0,7,128,0,7,128, + 0,7,128,0,7,128,0,7,128,0,7,128,3,255,254,3, + 255,254,21,35,105,28,4,0,48,0,64,60,3,192,63,255, + 128,63,255,0,63,252,0,55,240,0,48,0,0,48,0,0, + 48,0,0,48,0,0,48,0,0,48,0,0,48,0,0,51, + 254,0,60,7,128,56,3,192,48,1,224,48,1,240,48,1, + 240,0,0,240,0,0,248,0,0,248,0,0,248,0,0,248, + 60,0,248,126,0,248,254,0,248,254,0,240,252,1,240,248, + 1,224,240,1,224,112,3,192,112,7,128,60,31,0,15,252, + 0,21,34,102,28,4,0,0,126,0,1,193,128,3,128,192, + 7,0,64,14,0,224,28,1,224,28,3,224,56,3,224,56, + 3,192,120,0,0,120,0,0,120,0,0,120,0,0,240,126, + 0,241,255,128,243,131,192,247,1,224,254,1,240,252,0,240, + 252,0,240,248,0,248,248,0,120,248,0,120,248,0,120,120, + 0,120,120,0,120,120,0,248,120,0,240,56,0,240,60,0, + 224,28,1,224,14,3,192,7,7,128,1,254,0,19,34,102, + 28,5,0,255,255,224,255,255,224,255,255,224,255,255,224,224, + 0,224,192,0,64,128,0,64,128,0,192,128,0,128,128,1, + 128,0,1,128,0,3,0,0,2,0,0,6,0,0,12,0, + 0,24,0,0,24,0,0,48,0,0,112,0,0,112,0,0, + 224,0,0,224,0,1,224,0,1,224,0,3,224,0,3,224, + 0,3,224,0,7,240,0,7,240,0,7,240,0,7,240,0, + 7,240,0,3,240,0,3,224,0,23,34,102,28,3,0,1, + 254,0,7,135,128,30,1,192,56,0,224,120,0,112,112,0, + 112,240,0,56,240,0,56,240,0,56,240,0,56,248,0,56, + 252,0,112,126,0,112,127,192,224,63,241,192,31,255,0,7, + 255,128,7,255,224,12,63,248,56,7,252,112,1,252,112,0, + 126,224,0,62,224,0,62,224,0,62,224,0,30,224,0,30, + 224,0,28,96,0,60,112,0,56,48,0,120,24,0,240,14, + 1,192,3,255,0,21,34,102,28,4,0,1,248,0,7,142, + 0,14,3,0,28,1,128,56,1,192,120,1,224,120,0,224, + 120,0,240,240,0,240,240,0,240,240,0,240,240,0,248,240, + 0,248,248,0,248,120,1,248,120,1,248,120,3,248,60,7, + 120,30,14,120,15,252,120,3,240,120,0,0,240,0,0,240, + 0,0,240,0,0,240,60,0,224,124,0,224,124,1,192,124, + 1,192,120,3,128,112,3,0,56,6,0,28,28,0,15,248, + 0,6,22,22,14,4,1,120,252,252,252,120,0,0,0,0, + 0,0,0,0,0,0,0,0,120,252,252,252,120,7,31,31, + 14,4,248,120,252,252,252,120,0,0,0,0,0,0,0,0, + 0,0,0,120,252,252,254,126,14,6,6,4,12,8,24,48, + 96,64,38,40,200,46,4,249,0,0,0,0,28,0,0,0, + 0,120,0,0,0,1,240,0,0,0,7,192,0,0,0,15, + 0,0,0,0,60,0,0,0,0,240,0,0,0,3,192,0, + 0,0,15,0,0,0,0,62,0,0,0,0,248,0,0,0, + 1,224,0,0,0,7,128,0,0,0,30,0,0,0,0,120, + 0,0,0,1,224,0,0,0,7,192,0,0,0,31,0,0, + 0,0,60,0,0,0,0,240,0,0,0,0,240,0,0,0, + 0,124,0,0,0,0,31,0,0,0,0,7,128,0,0,0, + 1,224,0,0,0,0,120,0,0,0,0,30,0,0,0,0, + 7,128,0,0,0,3,224,0,0,0,0,248,0,0,0,0, + 60,0,0,0,0,15,0,0,0,0,3,192,0,0,0,0, + 240,0,0,0,0,60,0,0,0,0,31,0,0,0,0,7, + 192,0,0,0,1,224,0,0,0,0,120,0,0,0,0,28, + 41,11,66,45,2,7,255,255,255,255,255,128,255,255,255,255, + 255,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,255,255,255,255, + 255,128,255,255,255,255,255,128,38,40,200,46,4,249,224,0, + 0,0,0,120,0,0,0,0,62,0,0,0,0,15,128,0, + 0,0,3,192,0,0,0,0,240,0,0,0,0,60,0,0, + 0,0,15,0,0,0,0,3,192,0,0,0,1,240,0,0, + 0,0,124,0,0,0,0,30,0,0,0,0,7,128,0,0, + 0,1,224,0,0,0,0,120,0,0,0,0,30,0,0,0, + 0,15,128,0,0,0,3,224,0,0,0,0,240,0,0,0, + 0,60,0,0,0,0,60,0,0,0,0,248,0,0,0,3, + 224,0,0,0,7,128,0,0,0,30,0,0,0,0,120,0, + 0,0,1,224,0,0,0,7,128,0,0,0,31,0,0,0, + 0,124,0,0,0,0,240,0,0,0,3,192,0,0,0,15, + 0,0,0,0,60,0,0,0,0,240,0,0,0,3,224,0, + 0,0,15,128,0,0,0,30,0,0,0,0,120,0,0,0, + 0,224,0,0,0,0,18,34,102,23,3,0,7,240,0,28, + 60,0,48,15,0,96,7,128,192,7,128,192,3,192,192,3, + 192,248,3,192,252,3,192,124,7,192,56,7,128,0,15,128, + 0,31,0,0,62,0,0,124,0,0,240,0,0,224,0,1, + 192,0,3,0,0,6,0,0,14,8,0,12,8,0,12,8, + 0,12,8,0,6,16,0,3,224,0,0,0,0,0,0,0, + 0,0,0,1,224,0,3,240,0,3,240,0,3,240,0,1, + 224,0,35,36,180,40,2,0,0,3,254,0,0,0,30,7, + 192,0,0,112,0,112,0,1,192,0,24,0,3,128,0,12, + 0,7,0,0,6,0,14,0,0,3,0,28,0,120,1,0, + 24,1,196,225,128,56,7,7,224,128,48,14,3,224,192,112, + 12,3,192,192,96,28,3,192,64,96,56,3,192,96,224,56, + 3,192,96,192,120,3,128,96,192,112,7,128,96,192,112,7, + 128,96,192,240,7,128,96,192,224,7,0,96,192,224,15,0, + 224,192,224,15,0,192,192,224,14,0,192,96,224,30,1,128, + 96,224,62,1,128,96,224,62,3,0,96,96,78,6,0,48, + 49,143,12,0,48,31,7,240,0,24,0,0,0,0,12,0, + 0,0,0,6,0,0,0,0,3,0,0,0,0,1,192,0, + 112,0,0,112,1,192,0,0,31,255,0,0,34,35,175,37, + 2,0,0,0,192,0,0,0,0,192,0,0,0,0,224,0, + 0,0,1,224,0,0,0,1,224,0,0,0,3,240,0,0, + 0,3,240,0,0,0,3,240,0,0,0,6,248,0,0,0, + 6,248,0,0,0,6,248,0,0,0,12,124,0,0,0,12, + 124,0,0,0,12,124,0,0,0,24,62,0,0,0,24,62, + 0,0,0,24,30,0,0,0,48,31,0,0,0,48,31,0, + 0,0,48,15,0,0,0,96,15,128,0,0,96,15,128,0, + 0,96,7,128,0,0,255,255,192,0,0,255,255,192,0,0, + 192,3,192,0,1,128,3,224,0,1,128,3,224,0,3,128, + 1,224,0,3,0,1,240,0,3,0,1,240,0,7,0,0, + 240,0,7,0,0,248,0,31,128,1,252,0,255,248,31,255, + 192,28,35,140,34,3,0,255,255,240,0,7,192,62,0,7, + 128,15,0,7,128,7,128,7,128,3,192,7,128,1,224,7, + 128,1,224,7,128,1,224,7,128,1,224,7,128,1,224,7, + 128,1,224,7,128,1,224,7,128,3,192,7,128,3,128,7, + 128,7,0,7,128,30,0,7,255,240,0,7,128,62,0,7, + 128,15,0,7,128,7,128,7,128,3,192,7,128,3,224,7, + 128,1,224,7,128,1,240,7,128,1,240,7,128,1,240,7, + 128,1,240,7,128,1,240,7,128,1,240,7,128,3,224,7, + 128,3,224,7,128,7,192,7,128,15,128,7,192,62,0,255, + 255,240,0,26,36,144,32,3,0,0,63,0,128,0,225,224, + 128,3,128,113,128,7,0,63,128,14,0,31,128,30,0,15, + 128,28,0,7,128,60,0,3,128,60,0,3,128,124,0,3, + 128,120,0,1,128,120,0,1,128,120,0,0,128,248,0,0, + 128,248,0,0,0,248,0,0,0,248,0,0,0,248,0,0, + 0,248,0,0,0,248,0,0,0,248,0,0,0,248,0,0, + 0,248,0,0,0,120,0,0,192,120,0,0,192,120,0,0, + 192,60,0,0,192,60,0,0,128,60,0,1,128,28,0,1, + 128,14,0,3,0,14,0,3,0,7,0,6,0,3,128,12, + 0,0,224,56,0,0,127,224,0,33,35,175,38,3,0,255, + 255,252,0,0,7,192,15,0,0,7,128,3,192,0,7,128, + 0,224,0,7,128,0,112,0,7,128,0,120,0,7,128,0, + 60,0,7,128,0,62,0,7,128,0,30,0,7,128,0,31, + 0,7,128,0,31,0,7,128,0,15,0,7,128,0,15,0, + 7,128,0,15,128,7,128,0,15,128,7,128,0,15,128,7, + 128,0,15,128,7,128,0,15,128,7,128,0,15,128,7,128, + 0,15,128,7,128,0,15,128,7,128,0,15,128,7,128,0, + 15,0,7,128,0,31,0,7,128,0,31,0,7,128,0,30, + 0,7,128,0,30,0,7,128,0,60,0,7,128,0,60,0, + 7,128,0,120,0,7,128,0,112,0,7,128,0,224,0,7, + 128,3,192,0,7,192,15,0,0,255,255,252,0,0,28,35, + 140,34,3,0,255,255,255,240,7,192,7,240,7,128,1,240, + 7,128,0,240,7,128,0,112,7,128,0,112,7,128,0,48, + 7,128,0,48,7,128,0,48,7,128,0,16,7,128,32,16, + 7,128,32,16,7,128,32,0,7,128,96,0,7,128,96,0, + 7,128,96,0,7,128,224,0,7,255,224,0,7,129,224,0, + 7,128,96,0,7,128,96,0,7,128,96,0,7,128,32,16, + 7,128,32,16,7,128,32,16,7,128,0,16,7,128,0,48, + 7,128,0,48,7,128,0,48,7,128,0,112,7,128,0,112, + 7,128,0,240,7,128,1,240,255,255,255,240,255,255,255,240, + 27,35,140,34,4,0,255,255,255,224,15,128,15,224,7,128, + 3,224,7,128,1,224,7,128,0,224,7,128,0,224,7,128, + 0,96,7,128,0,96,7,128,0,96,7,128,0,32,7,128, + 32,32,7,128,32,32,7,128,32,0,7,128,96,0,7,128, + 96,0,7,128,96,0,7,128,224,0,7,255,224,0,7,129, + 224,0,7,128,96,0,7,128,96,0,7,128,96,0,7,128, + 32,0,7,128,32,0,7,128,32,0,7,128,0,0,7,128, + 0,0,7,128,0,0,7,128,0,0,7,128,0,0,7,128, + 0,0,7,128,0,0,7,128,0,0,15,128,0,0,255,254, + 0,0,30,36,144,34,3,0,0,63,128,192,0,224,224,192, + 3,128,56,192,7,0,29,192,14,0,15,192,14,0,7,192, + 28,0,7,192,60,0,3,192,60,0,3,192,124,0,1,192, + 120,0,1,192,120,0,0,192,120,0,0,192,248,0,0,192, + 248,0,0,0,248,0,0,0,248,0,0,0,248,0,0,0, + 248,0,255,252,248,0,255,252,248,0,7,192,248,0,7,192, + 248,0,7,192,248,0,7,192,120,0,7,192,120,0,7,192, + 124,0,7,192,60,0,7,192,60,0,7,192,28,0,15,192, + 30,0,15,192,14,0,28,192,7,0,24,192,3,0,48,192, + 1,192,224,192,0,127,128,192,33,35,175,38,3,0,255,252, + 31,255,128,7,192,0,248,0,7,128,0,240,0,7,128,0, + 240,0,7,128,0,240,0,7,128,0,240,0,7,128,0,240, + 0,7,128,0,240,0,7,128,0,240,0,7,128,0,240,0, + 7,128,0,240,0,7,128,0,240,0,7,128,0,240,0,7, + 128,0,240,0,7,128,0,240,0,7,128,0,240,0,7,255, + 255,240,0,7,128,0,240,0,7,128,0,240,0,7,128,0, + 240,0,7,128,0,240,0,7,128,0,240,0,7,128,0,240, + 0,7,128,0,240,0,7,128,0,240,0,7,128,0,240,0, + 7,128,0,240,0,7,128,0,240,0,7,128,0,240,0,7, + 128,0,240,0,7,128,0,240,0,7,128,0,240,0,7,128, + 0,240,0,7,192,0,248,0,255,252,31,255,128,14,35,70, + 19,3,0,255,252,7,192,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,192,255,252,23,35,105,27,2,0,0, + 127,254,0,7,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,3,192,0,3,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,60,3,192,126,3,192,254,3,192, + 254,3,192,252,3,192,224,3,128,224,7,128,96,7,0,112, + 14,0,56,28,0,15,248,0,32,35,140,37,3,0,255,252, + 63,254,7,192,15,240,7,128,7,192,7,128,3,128,7,128, + 7,0,7,128,6,0,7,128,12,0,7,128,28,0,7,128, + 56,0,7,128,112,0,7,128,224,0,7,129,192,0,7,129, + 128,0,7,131,128,0,7,135,128,0,7,143,192,0,7,155, + 224,0,7,179,224,0,7,225,240,0,7,193,240,0,7,128, + 248,0,7,128,248,0,7,128,124,0,7,128,124,0,7,128, + 62,0,7,128,62,0,7,128,31,0,7,128,31,0,7,128, + 15,128,7,128,15,192,7,128,7,192,7,128,7,224,7,128, + 3,224,7,192,7,248,255,252,127,255,27,35,140,33,3,0, + 255,254,0,0,7,192,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,0,7,128,0,0, + 7,128,0,0,7,128,0,0,7,128,0,32,7,128,0,96, + 7,128,0,96,7,128,0,96,7,128,0,96,7,128,0,224, + 7,128,0,224,7,128,0,224,7,128,1,224,7,128,3,224, + 7,128,7,224,255,255,255,224,255,255,255,224,36,35,175,41, + 3,0,255,224,0,63,240,7,224,0,62,0,7,224,0,126, + 0,7,240,0,94,0,7,240,0,94,0,6,240,0,222,0, + 6,248,0,222,0,6,248,0,158,0,6,120,0,158,0,6, + 120,1,158,0,6,124,1,158,0,6,60,1,30,0,6,60, + 1,30,0,6,62,3,30,0,6,62,3,30,0,6,30,2, + 30,0,6,30,2,30,0,6,31,6,30,0,6,15,4,30, + 0,6,15,4,30,0,6,15,140,30,0,6,7,140,30,0, + 6,7,136,30,0,6,7,200,30,0,6,7,216,30,0,6, + 3,216,30,0,6,3,208,30,0,6,3,240,30,0,6,1, + 240,30,0,6,1,240,30,0,6,1,224,30,0,6,0,224, + 30,0,15,0,224,30,0,31,128,192,62,0,255,240,195,255, + 240,33,36,180,38,3,255,255,192,7,255,128,7,192,0,252, + 0,7,224,0,120,0,7,240,0,48,0,7,240,0,48,0, + 7,248,0,48,0,6,248,0,48,0,6,124,0,48,0,6, + 126,0,48,0,6,62,0,48,0,6,31,0,48,0,6,31, + 0,48,0,6,15,128,48,0,6,15,192,48,0,6,7,192, + 48,0,6,3,224,48,0,6,3,224,48,0,6,1,240,48, + 0,6,1,248,48,0,6,0,248,48,0,6,0,124,48,0, + 6,0,124,48,0,6,0,62,48,0,6,0,63,48,0,6, + 0,31,48,0,6,0,15,176,0,6,0,15,176,0,6,0, + 7,240,0,6,0,7,240,0,6,0,3,240,0,6,0,1, + 240,0,6,0,1,240,0,15,0,0,240,0,31,128,0,112, + 0,255,240,0,112,0,0,0,0,48,0,28,36,144,33,3, + 0,0,31,128,0,0,240,240,0,1,192,56,0,3,128,28, + 0,7,0,14,0,14,0,7,0,30,0,7,128,28,0,3, + 128,60,0,3,192,60,0,3,192,124,0,3,224,120,0,1, + 224,120,0,1,224,248,0,1,224,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,120,0,1, + 224,120,0,1,224,124,0,3,224,124,0,3,224,60,0,3, + 192,60,0,3,192,30,0,7,128,14,0,7,0,14,0,15, + 0,7,0,14,0,3,128,28,0,0,224,112,0,0,127,224, + 0,28,35,140,33,3,0,255,255,240,0,7,192,30,0,7, + 128,7,128,7,128,7,192,7,128,3,224,7,128,3,224,7, + 128,1,240,7,128,1,240,7,128,1,240,7,128,1,240,7, + 128,1,240,7,128,1,240,7,128,3,224,7,128,3,224,7, + 128,7,192,7,128,7,128,7,128,30,0,7,255,248,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,128,0,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,128,0,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,128,0,0,7, + 128,0,0,7,128,0,0,7,128,0,0,7,192,0,0,255, + 254,0,0,28,44,176,33,3,248,0,31,128,0,0,240,240, + 0,1,192,56,0,3,128,28,0,7,0,14,0,14,0,7, + 0,30,0,7,128,28,0,3,128,60,0,3,192,60,0,3, + 192,124,0,3,224,120,0,1,224,120,0,1,224,248,0,1, + 224,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,248,0,1,240,248,0,1,240,248,0,1, + 240,248,0,1,240,120,0,1,224,120,0,1,224,124,0,3, + 224,124,0,3,224,60,15,3,192,60,25,195,192,30,48,199, + 128,14,96,231,128,15,96,111,0,7,96,126,0,3,224,124, + 16,0,240,120,16,0,127,240,16,0,0,112,16,0,0,112, + 16,0,0,120,48,0,0,120,32,0,0,124,96,0,0,63, + 192,0,0,63,192,0,0,15,0,30,35,140,35,3,0,255, + 255,248,0,7,192,62,0,7,128,15,128,7,128,7,192,7, + 128,7,192,7,128,3,224,7,128,3,224,7,128,3,224,7, + 128,3,224,7,128,3,224,7,128,3,192,7,128,7,192,7, + 128,7,128,7,128,15,0,7,128,60,0,7,255,224,0,7, + 128,240,0,7,128,56,0,7,128,28,0,7,128,30,0,7, + 128,30,0,7,128,31,0,7,128,15,0,7,128,15,0,7, + 128,15,0,7,128,15,0,7,128,15,128,7,128,15,132,7, + 128,15,132,7,128,15,132,7,128,15,132,7,128,15,140,7, + 128,7,248,7,192,7,248,255,254,3,240,23,36,108,30,4, + 0,3,240,0,14,28,24,56,7,24,48,3,248,112,1,248, + 96,0,248,224,0,120,224,0,56,224,0,56,224,0,56,224, + 0,24,240,0,24,248,0,8,126,0,8,127,192,0,63,240, + 0,31,252,0,15,255,128,3,255,224,0,255,240,128,63,248, + 128,7,252,128,1,252,192,0,126,192,0,62,192,0,30,224, + 0,14,224,0,14,240,0,14,240,0,14,248,0,12,252,0, + 28,222,0,24,199,0,48,195,128,96,128,255,192,28,35,140, + 35,4,0,255,255,255,240,254,15,131,240,248,15,1,240,240, + 15,0,240,224,15,0,112,192,15,0,112,192,15,0,48,192, + 15,0,48,192,15,0,48,128,15,0,16,128,15,0,16,128, + 15,0,16,128,15,0,16,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,0,0,0,15,0,0,0, + 15,0,0,0,15,0,0,0,15,128,0,3,255,254,0,34, + 35,175,39,3,0,255,252,3,255,192,7,192,0,126,0,7, + 128,0,60,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,7,128,0,24, + 0,7,128,0,24,0,7,128,0,24,0,7,128,0,24,0, + 7,128,0,24,0,7,128,0,24,0,7,128,0,24,0,7, + 128,0,24,0,7,128,0,24,0,7,128,0,24,0,7,128, + 0,24,0,7,128,0,24,0,7,128,0,24,0,7,128,0, + 24,0,7,128,0,24,0,7,128,0,24,0,3,192,0,24, + 0,3,192,0,48,0,3,192,0,48,0,1,224,0,96,0, + 0,224,0,96,0,0,112,0,192,0,0,60,3,128,0,0, + 15,254,0,0,34,36,180,37,2,255,255,255,7,255,192,15, + 240,0,126,0,3,224,0,56,0,3,224,0,56,0,3,240, + 0,48,0,1,240,0,48,0,1,240,0,48,0,0,248,0, + 96,0,0,248,0,96,0,0,248,0,96,0,0,124,0,192, + 0,0,124,0,192,0,0,124,0,192,0,0,62,0,192,0, + 0,62,1,128,0,0,62,1,128,0,0,31,1,128,0,0, + 31,3,0,0,0,31,3,0,0,0,15,131,0,0,0,15, + 134,0,0,0,15,134,0,0,0,7,198,0,0,0,7,204, + 0,0,0,3,204,0,0,0,3,236,0,0,0,3,232,0, + 0,0,1,248,0,0,0,1,248,0,0,0,1,248,0,0, + 0,0,240,0,0,0,0,240,0,0,0,0,240,0,0,0, + 0,96,0,0,0,0,96,0,0,0,0,96,0,0,49,36, + 252,52,2,255,255,254,127,255,15,255,128,15,240,15,248,1, + 248,0,3,224,3,240,0,240,0,3,224,3,224,0,96,0, + 3,224,3,240,0,96,0,1,240,3,240,0,96,0,1,240, + 3,240,0,192,0,1,240,3,240,0,192,0,0,240,7,248, + 0,192,0,0,248,6,248,0,128,0,0,248,6,248,1,128, + 0,0,248,6,124,1,128,0,0,120,14,124,1,128,0,0, + 124,12,124,3,0,0,0,124,12,62,3,0,0,0,60,28, + 62,3,0,0,0,60,24,62,6,0,0,0,60,24,30,6, + 0,0,0,62,24,31,6,0,0,0,30,56,31,12,0,0, + 0,30,48,31,12,0,0,0,30,48,15,140,0,0,0,15, + 48,15,152,0,0,0,15,112,15,152,0,0,0,15,96,7, + 216,0,0,0,15,96,7,208,0,0,0,7,224,7,240,0, + 0,0,7,192,3,240,0,0,0,7,192,3,240,0,0,0, + 3,192,3,224,0,0,0,3,192,3,224,0,0,0,3,128, + 1,224,0,0,0,1,128,1,192,0,0,0,1,128,1,192, + 0,0,0,1,128,0,192,0,0,0,1,0,0,128,0,0, + 33,35,175,36,2,0,127,255,31,255,0,3,240,3,240,0, + 1,240,1,224,0,1,240,1,192,0,0,248,1,128,0,0, + 120,3,0,0,0,124,3,0,0,0,60,6,0,0,0,62, + 14,0,0,0,31,12,0,0,0,31,24,0,0,0,15,152, + 0,0,0,15,176,0,0,0,7,224,0,0,0,7,224,0, + 0,0,3,224,0,0,0,3,224,0,0,0,1,240,0,0, + 0,3,240,0,0,0,3,248,0,0,0,6,248,0,0,0, + 14,124,0,0,0,12,124,0,0,0,24,62,0,0,0,56, + 62,0,0,0,48,31,0,0,0,96,31,0,0,0,224,15, + 128,0,0,192,15,128,0,1,128,7,192,0,3,128,7,192, + 0,3,128,3,224,0,7,128,3,240,0,31,192,3,248,0, + 255,248,63,255,128,32,35,140,35,2,0,255,254,15,255,15, + 224,1,248,7,224,0,240,3,224,0,96,3,240,0,64,1, + 240,0,192,1,248,0,128,0,248,0,128,0,252,1,0,0, + 124,3,0,0,62,2,0,0,62,6,0,0,31,4,0,0, + 31,12,0,0,15,136,0,0,7,216,0,0,7,208,0,0, + 3,240,0,0,3,224,0,0,1,224,0,0,1,224,0,0, + 1,224,0,0,1,224,0,0,1,224,0,0,1,224,0,0, + 1,224,0,0,1,224,0,0,1,224,0,0,1,224,0,0, + 1,224,0,0,1,224,0,0,1,224,0,0,1,224,0,0, + 1,240,0,0,127,255,192,26,35,140,32,3,0,63,255,255, + 192,63,128,15,128,62,0,31,128,60,0,31,0,56,0,62, + 0,56,0,62,0,48,0,124,0,48,0,252,0,96,0,248, + 0,96,1,240,0,64,3,240,0,64,3,224,0,0,7,192, + 0,0,7,192,0,0,15,128,0,0,31,128,0,0,31,0, + 0,0,62,0,0,0,126,0,0,0,124,0,0,0,252,0, + 0,0,248,0,64,1,240,0,64,3,240,0,64,3,224,0, + 192,7,192,0,192,7,192,0,192,15,128,1,192,31,128,1, + 192,31,0,3,192,62,0,3,192,126,0,7,192,124,0,15, + 128,248,0,63,128,255,255,255,128,10,45,90,19,6,247,255, + 192,254,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,240,0,240,0,240,0,240,0,240,0,240, + 0,240,0,240,0,254,0,255,192,16,46,92,22,3,246,192, + 0,192,0,192,0,96,0,96,0,96,0,48,0,48,0,48, + 0,24,0,24,0,24,0,12,0,12,0,12,0,6,0,6, + 0,6,0,2,0,3,0,3,0,3,0,1,128,1,128,1, + 128,0,192,0,192,0,192,0,96,0,96,0,96,0,48,0, + 48,0,48,0,24,0,24,0,24,0,12,0,12,0,12,0, + 6,0,6,0,6,0,3,0,3,0,3,10,45,90,19,3, + 247,255,192,31,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,31,192,255,192,22,18,54,28,3, + 17,0,16,0,0,48,0,0,56,0,0,120,0,0,108,0, + 0,206,0,1,198,0,1,131,0,3,3,0,7,1,128,6, + 1,192,14,0,192,28,0,96,24,0,112,56,0,48,48,0, + 56,96,0,24,224,0,12,25,2,8,25,0,248,255,255,255, + 128,255,255,255,128,8,9,9,22,4,25,224,240,240,120,60, + 12,6,3,1,21,22,66,24,2,1,7,248,0,24,30,0, + 16,15,0,48,7,0,56,7,128,60,7,128,62,7,128,28, + 7,128,0,7,128,0,31,128,3,247,128,31,7,128,60,7, + 128,120,7,128,248,7,128,240,7,128,240,15,136,240,15,136, + 240,23,136,248,23,152,120,39,240,63,195,240,22,35,105,25, + 1,0,255,0,0,15,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,31,128,15,32,224,15, + 64,240,15,192,112,15,128,120,15,128,120,15,0,120,15,0, + 60,15,0,60,15,0,60,15,0,60,15,0,60,15,0,60, + 15,0,60,15,0,60,15,0,120,15,0,120,15,128,120,13, + 128,112,12,192,224,12,96,224,8,63,128,17,22,66,21,2, + 1,7,252,0,14,6,0,28,3,0,56,3,0,56,3,128, + 120,15,128,120,15,128,240,15,128,240,7,0,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,128,120,0, + 128,120,0,128,56,1,0,56,1,0,28,2,0,14,6,0, + 7,248,0,22,35,105,25,2,0,0,63,192,0,3,192,0, + 3,192,0,3,192,0,3,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 15,227,192,28,19,192,60,11,192,56,15,192,120,7,192,120, + 7,192,120,3,192,240,3,192,240,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,120,3,192, + 120,3,192,120,7,192,56,7,192,60,15,192,28,27,192,7, + 243,252,18,22,66,22,2,1,7,248,0,14,28,0,28,14, + 0,56,15,0,56,7,128,120,7,128,120,7,128,240,7,192, + 240,7,192,240,7,192,255,255,192,240,0,0,240,0,0,240, + 0,0,240,0,128,120,0,128,120,0,128,120,1,128,56,1, + 0,28,3,0,14,6,0,7,252,0,16,35,70,16,1,0, + 0,248,3,198,7,3,15,7,14,15,14,15,30,15,30,6, + 30,0,30,0,30,0,30,0,30,0,255,240,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,255,240,23,33,99,27,3,246,7,252,124,30, + 14,206,60,7,142,124,7,158,120,3,222,120,3,192,120,3, + 192,120,3,192,120,3,192,120,3,192,60,7,128,28,7,128, + 14,14,0,3,248,0,28,0,0,96,0,0,192,0,0,192, + 0,0,224,0,0,255,255,128,127,255,224,15,255,240,28,0, + 112,48,0,56,96,0,24,192,0,24,192,0,24,192,0,24, + 192,0,48,96,0,48,120,0,96,30,7,192,3,254,0,24, + 35,105,27,1,0,255,0,0,15,0,0,15,0,0,15,0, + 0,15,0,0,15,0,0,15,0,0,15,0,0,15,0,0, + 15,0,0,15,0,0,15,0,0,15,0,0,15,15,192,15, + 48,240,15,32,112,15,64,120,15,128,120,15,128,120,15,0, + 120,15,0,120,15,0,120,15,0,120,15,0,120,15,0,120, + 15,0,120,15,0,120,15,0,120,15,0,120,15,0,120,15, + 0,120,15,0,120,15,0,120,15,0,120,255,195,255,10,34, + 68,14,2,0,28,0,62,0,62,0,62,0,28,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,254,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,30,0,30,0,30,0,30,0,30,0, + 30,0,30,0,30,0,255,192,13,45,90,16,254,245,0,112, + 0,248,0,248,0,248,0,112,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,15,248,0,120,0,120,0,120,0,120, + 0,120,0,120,0,120,0,120,0,120,0,120,0,120,0,120, + 0,120,0,120,0,120,0,120,0,120,0,120,0,120,0,120, + 0,120,0,120,0,120,0,120,0,120,240,120,240,120,240,112, + 224,240,96,224,115,192,31,0,22,35,105,24,1,0,254,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,15,252,30,3,224,30,1,128,30,3, + 0,30,6,0,30,6,0,30,12,0,30,24,0,30,48,0, + 30,120,0,30,248,0,30,188,0,31,190,0,31,30,0,30, + 15,0,30,15,128,30,7,128,30,3,192,30,3,224,30,1, + 224,30,3,240,255,207,252,11,35,70,13,1,0,254,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,255,224,36,22,110,40,2,1,254,63,129,252,0,30,97, + 195,14,0,30,193,230,15,0,30,128,228,7,128,31,0,248, + 7,128,31,0,248,7,128,30,0,240,7,128,30,0,240,7, + 128,30,0,240,7,128,30,0,240,7,128,30,0,240,7,128, + 30,0,240,7,128,30,0,240,7,128,30,0,240,7,128,30, + 0,240,7,128,30,0,240,7,128,30,0,240,7,128,30,0, + 240,7,128,30,0,240,7,128,30,0,240,7,128,30,0,240, + 7,128,255,199,254,63,240,23,22,66,27,2,1,254,31,128, + 30,97,224,30,192,224,30,128,240,31,0,240,31,0,240,30, + 0,240,30,0,240,30,0,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,255,199,254,19, + 22,66,24,2,1,3,252,0,14,14,0,28,7,0,60,3, + 128,56,3,192,120,3,192,120,1,224,248,1,224,240,1,224, + 240,1,224,240,1,224,240,1,224,240,1,224,240,1,224,240, + 1,224,120,1,224,120,3,192,56,3,192,60,3,128,28,7, + 0,14,14,0,3,252,0,22,33,99,25,1,246,254,63,128, + 30,97,192,30,192,224,31,128,112,31,0,120,31,0,120,30, + 0,120,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,120,30,0,120, + 31,0,120,31,0,112,31,128,224,30,192,192,30,127,128,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,30,0, + 0,30,0,0,30,0,0,30,0,0,30,0,0,255,224,0, + 22,33,99,25,2,246,7,240,64,28,24,192,28,12,192,56, + 12,192,120,7,192,120,7,192,120,3,192,240,3,192,240,3, + 192,240,3,192,240,3,192,240,3,192,240,3,192,240,3,192, + 240,3,192,120,3,192,120,3,192,120,7,192,56,7,192,60, + 15,192,28,27,192,7,243,192,0,3,192,0,3,192,0,3, + 192,0,3,192,0,3,192,0,3,192,0,3,192,0,3,192, + 0,3,192,0,3,192,0,31,252,17,22,66,20,2,1,254, + 31,0,30,35,128,30,67,128,30,207,128,30,143,128,31,143, + 0,31,2,0,31,0,0,31,0,0,30,0,0,30,0,0, + 30,0,0,30,0,0,30,0,0,30,0,0,30,0,0,30, + 0,0,30,0,0,30,0,0,30,0,0,30,0,0,255,192, + 0,17,22,66,22,3,1,31,226,0,112,50,0,96,30,0, + 192,14,0,192,6,0,224,2,0,240,2,0,252,0,0,127, + 0,0,63,192,0,31,248,0,7,254,0,128,255,0,192,31, + 0,192,7,128,224,3,128,224,1,128,240,1,128,240,1,128, + 248,3,0,198,7,0,131,252,0,14,32,64,17,1,0,2, + 0,2,0,2,0,2,0,2,0,6,0,6,0,6,0,14, + 0,30,0,255,248,30,0,30,0,30,0,30,0,30,0,30, + 0,30,0,30,0,30,0,30,0,30,0,30,0,30,0,30, + 0,30,4,30,4,30,4,30,12,15,8,15,248,7,240,23, + 22,66,27,2,0,254,7,240,30,0,240,30,0,240,30,0, + 240,30,0,240,30,0,240,30,0,240,30,0,240,30,0,240, + 30,0,240,30,0,240,30,0,240,30,0,240,30,0,240,30, + 0,240,30,1,240,30,1,240,30,1,240,30,2,240,14,6, + 240,15,12,240,3,240,254,24,23,69,26,1,255,255,225,255, + 31,0,124,15,0,48,15,0,48,15,0,32,7,128,96,7, + 128,96,3,192,64,3,192,192,1,192,192,1,224,128,1,225, + 128,0,241,128,0,241,0,0,113,0,0,123,0,0,58,0, + 0,62,0,0,62,0,0,28,0,0,28,0,0,12,0,0, + 8,0,36,23,115,38,1,255,255,231,255,31,240,31,1,248, + 7,128,31,0,240,3,0,15,0,120,3,0,15,0,120,2, + 0,7,128,120,6,0,7,128,252,6,0,3,128,252,4,0, + 3,192,188,12,0,3,192,158,12,0,1,225,158,8,0,1, + 225,14,24,0,0,225,15,24,0,0,243,15,16,0,0,242, + 7,48,0,0,114,7,176,0,0,126,7,160,0,0,62,3, + 224,0,0,60,3,192,0,0,28,1,192,0,0,28,1,192, + 0,0,24,1,128,0,0,8,0,128,0,22,22,66,26,2, + 0,255,207,248,31,3,192,31,3,128,15,3,0,7,131,0, + 7,198,0,3,196,0,1,236,0,1,248,0,0,240,0,0, + 112,0,0,120,0,0,124,0,0,220,0,1,158,0,1,15, + 0,3,15,0,6,7,128,4,7,192,12,3,192,28,3,224, + 255,15,252,24,33,99,26,1,245,255,225,255,31,0,120,15, + 0,48,15,0,48,7,0,32,7,128,96,7,128,96,3,192, + 64,3,192,192,3,192,192,1,224,128,1,225,128,0,225,128, + 0,241,128,0,241,0,0,115,0,0,123,0,0,122,0,0, + 62,0,0,62,0,0,60,0,0,28,0,0,28,0,0,24, + 0,0,24,0,0,24,0,24,48,0,60,48,0,60,48,0, + 60,96,0,56,96,0,31,192,0,15,0,0,17,22,66,22, + 2,0,255,255,128,248,7,128,224,15,0,224,31,0,192,30, + 0,192,60,0,128,124,0,128,120,0,0,240,0,1,240,0, + 1,224,0,3,192,0,7,192,0,7,128,128,15,0,128,31, + 0,128,30,0,128,60,1,128,124,1,128,120,3,128,240,15, + 128,255,255,128,11,45,90,21,6,247,0,224,1,128,7,0, + 14,0,12,0,28,0,28,0,28,0,28,0,30,0,30,0, + 14,0,14,0,15,0,15,0,7,0,7,0,7,0,7,0, + 6,0,4,0,24,0,224,0,56,0,12,0,6,0,6,0, + 7,0,7,0,7,0,15,0,15,0,15,0,14,0,30,0, + 30,0,28,0,28,0,28,0,28,0,12,0,12,0,6,0, + 3,128,0,224,2,46,46,14,6,246,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,11,45,90,20,4,247,192,0, + 112,0,28,0,12,0,6,0,7,0,7,0,7,0,7,0, + 15,0,15,0,14,0,30,0,30,0,30,0,28,0,28,0, + 28,0,28,0,12,0,4,0,3,0,0,224,3,0,6,0, + 12,0,28,0,28,0,28,0,28,0,30,0,30,0,30,0, + 14,0,15,0,15,0,7,0,7,0,7,0,7,0,6,0, + 6,0,12,0,56,0,224,0,28,9,36,32,2,8,31,128, + 0,192,127,240,0,96,127,252,0,48,227,255,0,48,192,127, + 224,48,192,31,248,112,192,3,255,224,96,0,255,192,48,0, + 31,128,255}; +/* + Fontname: -FreeType-P01type-Medium-R-Normal--8-80-72-72-P-35-ISO10646-1 + Copyright: Copyright Patrick Lauke 2012 + Capital A Height: 4, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 1 y= 2 dx= 6 dy= 0 ascent= 4 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 4 descent=-2 + X Font ascent = 5 descent=-2 + Max Font ascent = 4 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_p01type[1163] U8G_SECTION(".progmem.u8g_font_p01type") = { + 0,5,6,0,254,4,1,81,2,129,32,255,254,4,254,5, + 254,0,0,0,4,0,0,1,5,5,3,1,255,128,128,128, + 0,128,3,2,2,4,0,2,160,160,5,5,5,6,0,255, + 80,248,80,248,80,255,4,4,4,5,0,0,144,32,64,144, + 4,5,5,5,0,255,64,128,80,160,80,1,2,2,2,0, + 2,128,128,2,5,5,3,0,255,64,128,128,128,64,2,5, + 5,3,0,255,128,64,64,64,128,3,3,3,4,0,0,160, + 64,160,3,3,3,4,0,0,64,224,64,2,2,2,3,0, + 255,64,128,3,1,1,4,0,1,224,1,1,1,2,0,0, + 128,4,4,4,5,0,255,16,32,64,128,3,5,5,4,0, + 255,96,160,160,160,192,1,5,5,2,0,255,128,128,128,128, + 128,3,5,5,4,0,255,192,32,224,128,96,3,5,5,4, + 0,255,192,32,192,32,192,3,5,5,4,0,255,160,160,224, + 32,32,3,5,5,4,0,255,96,128,224,32,192,3,5,5, + 4,0,255,96,128,224,160,192,3,5,5,4,0,255,224,32, + 32,64,64,3,5,5,4,0,255,96,160,224,160,192,3,5, + 5,4,0,255,96,160,224,32,192,1,3,3,2,0,0,128, + 0,128,2,4,4,3,0,255,64,0,64,128,3,5,5,4, + 0,255,32,64,128,64,32,3,3,3,4,0,0,224,0,224, + 3,5,5,4,0,255,128,64,32,64,128,4,5,5,5,0, + 255,224,16,96,0,64,4,5,5,5,0,255,112,144,176,128, + 224,4,4,4,5,0,0,112,144,240,144,4,5,5,5,0, + 255,112,144,224,144,224,4,4,4,5,0,0,112,128,128,240, + 4,4,4,5,0,0,224,144,144,240,4,5,5,5,0,255, + 112,128,224,128,112,4,4,4,5,0,0,240,128,224,128,4, + 4,4,5,0,0,112,128,144,224,4,4,4,5,0,0,144, + 144,240,144,1,4,4,2,0,0,128,128,128,128,2,4,4, + 3,0,0,64,64,64,128,4,4,4,5,0,0,144,144,224, + 144,4,4,4,5,0,0,128,128,128,112,4,4,4,5,0, + 0,144,240,144,144,4,4,4,5,0,0,144,208,176,144,4, + 4,4,5,0,0,112,144,144,224,4,4,4,5,0,0,112, + 144,224,128,4,4,4,5,0,0,112,144,160,208,4,4,4, + 5,0,0,112,144,224,144,4,5,5,5,0,255,112,128,240, + 16,224,5,4,4,6,0,0,248,32,32,32,4,4,4,5, + 0,0,144,144,144,224,4,4,4,5,0,0,144,144,144,96, + 5,4,4,6,0,0,168,168,168,216,4,4,4,5,0,0, + 144,144,96,144,4,4,4,5,0,0,144,240,16,224,4,4, + 4,5,0,0,240,32,64,240,2,5,5,3,0,255,192,128, + 128,128,192,4,4,4,5,0,255,128,64,32,16,2,5,5, + 3,0,255,192,64,64,64,192,255,4,1,1,5,0,255,240, + 255,3,3,3,4,0,0,96,160,224,3,4,4,4,0,0, + 128,224,160,192,3,3,3,4,0,0,96,128,224,3,4,4, + 4,0,0,32,96,160,224,3,5,5,4,0,254,96,160,224, + 128,96,3,4,4,4,0,0,96,64,224,64,3,5,5,4, + 0,254,96,160,224,32,192,3,4,4,4,0,0,128,192,160, + 160,1,3,3,2,0,0,128,128,128,2,5,5,3,0,254, + 64,64,64,64,128,3,4,4,4,0,0,128,160,192,160,1, + 4,4,2,0,0,128,128,128,128,5,3,3,6,0,0,80, + 168,168,3,3,3,4,0,0,192,160,160,3,3,3,4,0, + 0,96,160,192,3,5,5,4,0,254,96,160,192,128,128,3, + 5,5,4,0,254,192,160,96,32,32,3,3,3,4,0,0, + 96,128,128,3,5,5,4,0,254,96,128,224,32,192,3,4, + 4,4,0,0,64,224,64,32,3,3,3,4,0,0,160,160, + 96,3,3,3,4,0,0,160,160,64,5,3,3,6,0,0, + 168,168,80,3,3,3,4,0,0,160,64,160,3,5,5,4, + 0,254,160,160,96,32,192,3,3,3,4,0,0,224,64,224, + 3,5,5,4,0,255,96,64,128,64,96,1,5,5,2,0, + 255,128,128,128,128,128,3,5,5,4,0,255,192,64,32,64, + 192,4,2,2,5,0,1,80,160,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,1,5,5,2,0, + 255,128,0,128,128,128,255,255,255,255,1,5,5,3,1,255, + 128,128,0,128,128,255,255,255,255,5,5,5,6,0,255,40, + 80,160,80,40,3,2,2,4,0,0,224,32,3,1,1,4, + 0,1,224,255,255,255,3,5,5,4,0,255,64,224,64,0, + 224,255,255,255,255,255,1,1,1,2,0,1,128,255,255,255, + 5,5,5,6,0,255,160,80,40,80,160,255,255,255,4,5, + 5,5,0,255,32,0,96,128,112,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 3,3,3,4,0,0,160,64,160,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,3,5,5,4,0,255,64,0, + 224,0,64,255,255,255,255,255,255,255,255}; +/* + Fontname: -FreeType-P01type-Medium-R-Normal--8-80-72-72-P-35-ISO10646-1 + Copyright: Copyright Patrick Lauke 2012 + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 4 h= 5 x= 0 y= 1 dx= 5 dy= 0 ascent= 4 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 4 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_p01typen[177] U8G_SECTION(".progmem.u8g_font_p01typen") = { + 0,5,6,0,254,5,0,0,0,0,42,57,0,4,255,5, + 0,3,3,3,4,0,0,160,64,160,3,3,3,4,0,0, + 64,224,64,2,2,2,3,0,255,64,128,3,1,1,4,0, + 1,224,1,1,1,2,0,0,128,4,4,4,5,0,255,16, + 32,64,128,3,5,5,4,0,255,96,160,160,160,192,1,5, + 5,2,0,255,128,128,128,128,128,3,5,5,4,0,255,192, + 32,224,128,96,3,5,5,4,0,255,192,32,192,32,192,3, + 5,5,4,0,255,160,160,224,32,32,3,5,5,4,0,255, + 96,128,224,32,192,3,5,5,4,0,255,96,128,224,160,192, + 3,5,5,4,0,255,224,32,32,64,64,3,5,5,4,0, + 255,96,160,224,160,192,3,5,5,4,0,255,96,160,224,32, + 192}; +/* + Fontname: -FreeType-P01type-Medium-R-Normal--8-80-72-72-P-35-ISO10646-1 + Copyright: Copyright Patrick Lauke 2012 + Capital A Height: 4, '1' Height: 5 + Calculated Max Values w= 5 h= 5 x= 1 y= 2 dx= 6 dy= 0 ascent= 4 len= 5 + Font Bounding box w= 5 h= 6 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 4 descent=-2 + X Font ascent = 5 descent=-2 + Max Font ascent = 4 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_p01typer[938] U8G_SECTION(".progmem.u8g_font_p01typer") = { + 0,5,6,0,254,4,1,81,2,129,32,127,254,4,254,5, + 254,0,0,0,4,0,0,1,5,5,3,1,255,128,128,128, + 0,128,3,2,2,4,0,2,160,160,5,5,5,6,0,255, + 80,248,80,248,80,255,4,4,4,5,0,0,144,32,64,144, + 4,5,5,5,0,255,64,128,80,160,80,1,2,2,2,0, + 2,128,128,2,5,5,3,0,255,64,128,128,128,64,2,5, + 5,3,0,255,128,64,64,64,128,3,3,3,4,0,0,160, + 64,160,3,3,3,4,0,0,64,224,64,2,2,2,3,0, + 255,64,128,3,1,1,4,0,1,224,1,1,1,2,0,0, + 128,4,4,4,5,0,255,16,32,64,128,3,5,5,4,0, + 255,96,160,160,160,192,1,5,5,2,0,255,128,128,128,128, + 128,3,5,5,4,0,255,192,32,224,128,96,3,5,5,4, + 0,255,192,32,192,32,192,3,5,5,4,0,255,160,160,224, + 32,32,3,5,5,4,0,255,96,128,224,32,192,3,5,5, + 4,0,255,96,128,224,160,192,3,5,5,4,0,255,224,32, + 32,64,64,3,5,5,4,0,255,96,160,224,160,192,3,5, + 5,4,0,255,96,160,224,32,192,1,3,3,2,0,0,128, + 0,128,2,4,4,3,0,255,64,0,64,128,3,5,5,4, + 0,255,32,64,128,64,32,3,3,3,4,0,0,224,0,224, + 3,5,5,4,0,255,128,64,32,64,128,4,5,5,5,0, + 255,224,16,96,0,64,4,5,5,5,0,255,112,144,176,128, + 224,4,4,4,5,0,0,112,144,240,144,4,5,5,5,0, + 255,112,144,224,144,224,4,4,4,5,0,0,112,128,128,240, + 4,4,4,5,0,0,224,144,144,240,4,5,5,5,0,255, + 112,128,224,128,112,4,4,4,5,0,0,240,128,224,128,4, + 4,4,5,0,0,112,128,144,224,4,4,4,5,0,0,144, + 144,240,144,1,4,4,2,0,0,128,128,128,128,2,4,4, + 3,0,0,64,64,64,128,4,4,4,5,0,0,144,144,224, + 144,4,4,4,5,0,0,128,128,128,112,4,4,4,5,0, + 0,144,240,144,144,4,4,4,5,0,0,144,208,176,144,4, + 4,4,5,0,0,112,144,144,224,4,4,4,5,0,0,112, + 144,224,128,4,4,4,5,0,0,112,144,160,208,4,4,4, + 5,0,0,112,144,224,144,4,5,5,5,0,255,112,128,240, + 16,224,5,4,4,6,0,0,248,32,32,32,4,4,4,5, + 0,0,144,144,144,224,4,4,4,5,0,0,144,144,144,96, + 5,4,4,6,0,0,168,168,168,216,4,4,4,5,0,0, + 144,144,96,144,4,4,4,5,0,0,144,240,16,224,4,4, + 4,5,0,0,240,32,64,240,2,5,5,3,0,255,192,128, + 128,128,192,4,4,4,5,0,255,128,64,32,16,2,5,5, + 3,0,255,192,64,64,64,192,255,4,1,1,5,0,255,240, + 255,3,3,3,4,0,0,96,160,224,3,4,4,4,0,0, + 128,224,160,192,3,3,3,4,0,0,96,128,224,3,4,4, + 4,0,0,32,96,160,224,3,5,5,4,0,254,96,160,224, + 128,96,3,4,4,4,0,0,96,64,224,64,3,5,5,4, + 0,254,96,160,224,32,192,3,4,4,4,0,0,128,192,160, + 160,1,3,3,2,0,0,128,128,128,2,5,5,3,0,254, + 64,64,64,64,128,3,4,4,4,0,0,128,160,192,160,1, + 4,4,2,0,0,128,128,128,128,5,3,3,6,0,0,80, + 168,168,3,3,3,4,0,0,192,160,160,3,3,3,4,0, + 0,96,160,192,3,5,5,4,0,254,96,160,192,128,128,3, + 5,5,4,0,254,192,160,96,32,32,3,3,3,4,0,0, + 96,128,128,3,5,5,4,0,254,96,128,224,32,192,3,4, + 4,4,0,0,64,224,64,32,3,3,3,4,0,0,160,160, + 96,3,3,3,4,0,0,160,160,64,5,3,3,6,0,0, + 168,168,80,3,3,3,4,0,0,160,64,160,3,5,5,4, + 0,254,160,160,96,32,192,3,3,3,4,0,0,224,64,224, + 3,5,5,4,0,255,96,64,128,64,96,1,5,5,2,0, + 255,128,128,128,128,128,3,5,5,4,0,255,192,64,32,64, + 192,4,2,2,5,0,1,80,160,255}; +/* + Fontname: -FreeType-Pixelle (Micro)-Medium-R-Normal--8-80-72-72-P-32-ISO10646-1 + Copyright: Copyright rdonaghy 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 7 x= 0 y= 4 dx= 6 dy= 0 ascent= 6 len= 7 + Font Bounding box w= 6 h= 8 x=-1 y=-2 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 6 descent=-2 + Max Font ascent = 6 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_pixelle_micro[1140] U8G_SECTION(".progmem.u8g_font_pixelle_micro") = { + 0,6,8,255,254,5,1,97,2,188,32,255,254,6,254,6, + 254,0,0,0,1,0,0,1,5,5,2,0,0,128,128,128, + 0,128,3,2,2,4,0,3,160,160,5,5,5,6,0,0, + 80,248,80,248,80,3,7,7,4,0,255,64,224,128,224,32, + 224,64,4,4,4,5,0,0,144,32,64,144,4,5,5,5, + 0,0,96,64,208,160,208,1,2,2,2,0,3,128,128,2, + 7,7,3,0,255,64,128,128,128,128,128,64,2,7,7,3, + 0,255,128,64,64,64,64,64,128,3,4,4,4,0,0,64, + 224,64,160,3,3,3,4,0,0,64,224,64,1,2,2,2, + 0,255,128,128,3,1,1,4,0,1,224,1,1,1,2,0, + 0,128,3,6,6,4,0,0,32,32,64,64,128,128,3,5, + 5,4,0,0,64,160,224,160,64,3,5,5,4,0,0,192, + 64,64,64,224,3,5,5,4,0,0,64,160,32,64,224,3, + 5,5,4,0,0,192,32,64,32,192,3,5,5,4,0,0, + 160,160,224,32,32,3,5,5,4,0,0,224,128,224,32,192, + 3,5,5,4,0,0,64,160,192,160,64,3,5,5,4,0, + 0,224,32,64,64,128,3,5,5,4,0,0,64,160,64,160, + 64,3,5,5,4,0,0,64,160,96,160,64,1,3,3,2, + 0,0,128,0,128,1,4,4,2,0,255,128,0,128,128,2, + 3,3,3,0,0,64,128,64,3,3,3,4,0,0,224,0, + 224,2,3,3,3,0,0,128,64,128,3,5,5,4,0,0, + 64,160,32,64,64,5,6,6,6,0,0,112,136,168,184,128, + 120,3,5,5,4,0,0,64,160,224,160,160,3,5,5,4, + 0,0,192,160,192,160,192,3,5,5,4,0,0,64,160,128, + 160,64,3,5,5,4,0,0,192,160,160,160,192,3,5,5, + 4,0,0,224,128,192,128,224,3,5,5,4,0,0,224,128, + 192,128,128,3,5,5,4,0,0,64,160,128,160,96,3,5, + 5,4,0,0,160,160,224,160,160,3,5,5,4,0,0,224, + 64,64,64,224,3,5,5,4,0,0,32,32,32,160,64,3, + 5,5,4,0,0,160,160,192,160,160,3,5,5,4,0,0, + 128,128,128,128,224,3,5,5,4,0,0,160,224,224,160,160, + 3,5,5,4,0,0,160,224,224,224,160,3,5,5,4,0, + 0,64,160,160,160,64,3,5,5,4,0,0,192,160,192,128, + 128,3,5,5,4,0,0,64,160,160,224,96,3,5,5,4, + 0,0,192,160,192,160,160,3,5,5,4,0,0,96,128,64, + 32,224,3,5,5,4,0,0,224,64,64,64,64,3,5,5, + 4,0,0,160,160,160,160,64,3,5,5,4,0,0,160,160, + 160,64,64,3,5,5,4,0,0,160,160,224,224,160,3,5, + 5,4,0,0,160,160,64,160,160,3,5,5,4,0,0,160, + 160,64,64,64,3,5,5,4,0,0,224,32,64,128,224,2, + 7,7,3,0,255,192,128,128,128,128,128,192,3,6,6,4, + 0,0,128,128,64,64,32,32,2,7,7,3,0,255,192,64, + 64,64,64,64,192,3,2,2,4,0,3,64,160,3,1,1, + 4,0,0,224,1,2,2,2,0,4,128,128,3,3,3,4, + 0,0,96,160,96,3,5,5,4,0,0,128,128,192,160,192, + 3,3,3,4,0,0,96,128,96,3,5,5,4,0,0,32, + 32,96,160,96,3,3,3,4,0,0,96,224,96,2,5,5, + 3,0,0,64,128,192,128,128,3,5,5,4,0,254,96,160, + 96,160,64,3,5,5,4,0,0,128,128,192,160,160,1,5, + 5,2,0,0,128,0,128,128,128,3,7,7,3,255,254,32, + 0,32,32,32,160,64,3,6,6,4,0,0,128,128,128,160, + 192,160,1,6,6,2,0,0,128,128,128,128,128,128,5,3, + 3,6,0,0,208,168,168,3,3,3,4,0,0,192,160,160, + 3,3,3,4,0,0,64,160,64,3,5,5,4,0,254,192, + 160,192,128,128,3,5,5,4,0,254,96,160,96,32,32,3, + 3,3,4,0,0,192,160,128,3,3,3,4,0,0,96,64, + 192,3,5,5,4,0,0,64,64,224,64,64,3,3,3,4, + 0,0,160,160,64,3,3,3,4,0,0,160,64,64,5,3, + 3,6,0,0,168,168,208,3,3,3,4,0,0,160,64,160, + 3,5,5,4,0,254,160,160,96,160,64,3,3,3,4,0, + 0,224,64,224,3,7,7,4,0,255,32,64,64,128,64,64, + 32,1,7,7,2,0,255,128,128,128,128,128,128,128,3,7, + 7,4,0,255,128,64,64,32,64,64,128,4,2,2,5,0, + 1,80,160,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255}; +/* + Fontname: -FreeType-Pixelle (Micro)-Medium-R-Normal--8-80-72-72-P-32-ISO10646-1 + Copyright: Copyright rdonaghy 2008 + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 3 h= 6 x= 0 y= 1 dx= 4 dy= 0 ascent= 6 len= 6 + Font Bounding box w= 6 h= 8 x=-1 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 6 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_pixelle_micron[180] U8G_SECTION(".progmem.u8g_font_pixelle_micron") = { + 0,6,8,255,254,5,0,0,0,0,42,57,0,6,255,5, + 0,3,4,4,4,0,0,64,224,64,160,3,3,3,4,0, + 0,64,224,64,1,2,2,2,0,255,128,128,3,1,1,4, + 0,1,224,1,1,1,2,0,0,128,3,6,6,4,0,0, + 32,32,64,64,128,128,3,5,5,4,0,0,64,160,224,160, + 64,3,5,5,4,0,0,192,64,64,64,224,3,5,5,4, + 0,0,64,160,32,64,224,3,5,5,4,0,0,192,32,64, + 32,192,3,5,5,4,0,0,160,160,224,32,32,3,5,5, + 4,0,0,224,128,224,32,192,3,5,5,4,0,0,64,160, + 192,160,64,3,5,5,4,0,0,224,32,64,64,128,3,5, + 5,4,0,0,64,160,64,160,64,3,5,5,4,0,0,64, + 160,96,160,64}; +/* + Fontname: -FreeType-Pixelle (Micro)-Medium-R-Normal--8-80-72-72-P-32-ISO10646-1 + Copyright: Copyright rdonaghy 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 7 x= 0 y= 4 dx= 6 dy= 0 ascent= 6 len= 7 + Font Bounding box w= 6 h= 8 x=-1 y=-2 + Calculated Min Values x=-1 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 6 descent=-2 + Max Font ascent = 6 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_pixelle_micror[1012] U8G_SECTION(".progmem.u8g_font_pixelle_micror") = { + 0,6,8,255,254,5,1,97,2,188,32,127,254,6,254,6, + 254,0,0,0,1,0,0,1,5,5,2,0,0,128,128,128, + 0,128,3,2,2,4,0,3,160,160,5,5,5,6,0,0, + 80,248,80,248,80,3,7,7,4,0,255,64,224,128,224,32, + 224,64,4,4,4,5,0,0,144,32,64,144,4,5,5,5, + 0,0,96,64,208,160,208,1,2,2,2,0,3,128,128,2, + 7,7,3,0,255,64,128,128,128,128,128,64,2,7,7,3, + 0,255,128,64,64,64,64,64,128,3,4,4,4,0,0,64, + 224,64,160,3,3,3,4,0,0,64,224,64,1,2,2,2, + 0,255,128,128,3,1,1,4,0,1,224,1,1,1,2,0, + 0,128,3,6,6,4,0,0,32,32,64,64,128,128,3,5, + 5,4,0,0,64,160,224,160,64,3,5,5,4,0,0,192, + 64,64,64,224,3,5,5,4,0,0,64,160,32,64,224,3, + 5,5,4,0,0,192,32,64,32,192,3,5,5,4,0,0, + 160,160,224,32,32,3,5,5,4,0,0,224,128,224,32,192, + 3,5,5,4,0,0,64,160,192,160,64,3,5,5,4,0, + 0,224,32,64,64,128,3,5,5,4,0,0,64,160,64,160, + 64,3,5,5,4,0,0,64,160,96,160,64,1,3,3,2, + 0,0,128,0,128,1,4,4,2,0,255,128,0,128,128,2, + 3,3,3,0,0,64,128,64,3,3,3,4,0,0,224,0, + 224,2,3,3,3,0,0,128,64,128,3,5,5,4,0,0, + 64,160,32,64,64,5,6,6,6,0,0,112,136,168,184,128, + 120,3,5,5,4,0,0,64,160,224,160,160,3,5,5,4, + 0,0,192,160,192,160,192,3,5,5,4,0,0,64,160,128, + 160,64,3,5,5,4,0,0,192,160,160,160,192,3,5,5, + 4,0,0,224,128,192,128,224,3,5,5,4,0,0,224,128, + 192,128,128,3,5,5,4,0,0,64,160,128,160,96,3,5, + 5,4,0,0,160,160,224,160,160,3,5,5,4,0,0,224, + 64,64,64,224,3,5,5,4,0,0,32,32,32,160,64,3, + 5,5,4,0,0,160,160,192,160,160,3,5,5,4,0,0, + 128,128,128,128,224,3,5,5,4,0,0,160,224,224,160,160, + 3,5,5,4,0,0,160,224,224,224,160,3,5,5,4,0, + 0,64,160,160,160,64,3,5,5,4,0,0,192,160,192,128, + 128,3,5,5,4,0,0,64,160,160,224,96,3,5,5,4, + 0,0,192,160,192,160,160,3,5,5,4,0,0,96,128,64, + 32,224,3,5,5,4,0,0,224,64,64,64,64,3,5,5, + 4,0,0,160,160,160,160,64,3,5,5,4,0,0,160,160, + 160,64,64,3,5,5,4,0,0,160,160,224,224,160,3,5, + 5,4,0,0,160,160,64,160,160,3,5,5,4,0,0,160, + 160,64,64,64,3,5,5,4,0,0,224,32,64,128,224,2, + 7,7,3,0,255,192,128,128,128,128,128,192,3,6,6,4, + 0,0,128,128,64,64,32,32,2,7,7,3,0,255,192,64, + 64,64,64,64,192,3,2,2,4,0,3,64,160,3,1,1, + 4,0,0,224,1,2,2,2,0,4,128,128,3,3,3,4, + 0,0,96,160,96,3,5,5,4,0,0,128,128,192,160,192, + 3,3,3,4,0,0,96,128,96,3,5,5,4,0,0,32, + 32,96,160,96,3,3,3,4,0,0,96,224,96,2,5,5, + 3,0,0,64,128,192,128,128,3,5,5,4,0,254,96,160, + 96,160,64,3,5,5,4,0,0,128,128,192,160,160,1,5, + 5,2,0,0,128,0,128,128,128,3,7,7,3,255,254,32, + 0,32,32,32,160,64,3,6,6,4,0,0,128,128,128,160, + 192,160,1,6,6,2,0,0,128,128,128,128,128,128,5,3, + 3,6,0,0,208,168,168,3,3,3,4,0,0,192,160,160, + 3,3,3,4,0,0,64,160,64,3,5,5,4,0,254,192, + 160,192,128,128,3,5,5,4,0,254,96,160,96,32,32,3, + 3,3,4,0,0,192,160,128,3,3,3,4,0,0,96,64, + 192,3,5,5,4,0,0,64,64,224,64,64,3,3,3,4, + 0,0,160,160,64,3,3,3,4,0,0,160,64,64,5,3, + 3,6,0,0,168,168,208,3,3,3,4,0,0,160,64,160, + 3,5,5,4,0,254,160,160,96,160,64,3,3,3,4,0, + 0,224,64,224,3,7,7,4,0,255,32,64,64,128,64,64, + 32,1,7,7,2,0,255,128,128,128,128,128,128,128,3,7, + 7,4,0,255,128,64,64,32,64,64,128,4,2,2,5,0, + 1,80,160,255}; +/* + Fontname: -FreeType-Robot de Niro-Medium-R-Normal--16-160-72-72-P-39-ISO10646-1 + Copyright: Copyright BMoser 2008 + Capital A Height: 6, '1' Height: 5 + Calculated Max Values w= 7 h= 8 x= 0 y= 6 dx= 8 dy= 0 ascent=10 len= 8 + Font Bounding box w=10 h=10 x=-1 y= 0 + Calculated Min Values x=-1 y= 0 dx= 0 dy= 0 + Pure Font ascent = 6 descent= 1 + X Font ascent = 9 descent= 0 + Max Font ascent =10 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_robot_de_niro[1376] U8G_SECTION(".progmem.u8g_font_robot_de_niro") = { + 0,10,10,255,0,6,1,97,2,193,32,255,1,10,0,9, + 0,0,0,0,2,0,0,2,5,5,3,0,3,192,128,128, + 0,128,3,2,2,4,0,6,160,160,5,5,5,6,0,3, + 80,248,80,248,80,4,7,7,5,0,2,96,224,16,96,128, + 112,96,5,5,5,6,0,3,192,208,32,88,24,4,5,5, + 5,0,3,96,160,80,160,80,1,2,2,2,0,6,128,128, + 2,7,7,3,0,2,64,128,128,128,128,128,64,2,7,7, + 3,0,2,128,64,64,64,64,64,128,3,3,3,4,0,6, + 160,64,160,3,3,3,4,0,4,64,224,64,2,2,2,3, + 0,2,64,128,3,1,1,4,0,5,224,1,1,1,2,0, + 3,128,3,5,5,4,0,3,32,32,64,128,128,3,5,5, + 4,0,3,64,160,160,160,64,3,5,5,4,0,3,192,64, + 64,64,224,3,5,5,4,0,3,192,32,96,128,224,3,5, + 5,4,0,3,192,32,224,32,224,3,5,5,4,0,3,160, + 160,224,32,32,3,5,5,4,0,3,96,128,224,32,224,3, + 5,5,4,0,3,96,128,224,160,64,4,5,5,5,0,3, + 224,32,112,32,32,3,5,5,4,0,3,96,160,224,160,192, + 3,5,5,4,0,3,96,160,224,32,192,1,3,3,2,0, + 4,128,0,128,2,4,4,3,0,3,64,0,64,128,2,3, + 3,3,0,4,64,128,64,3,3,3,4,0,4,224,0,224, + 2,3,3,3,0,4,128,64,128,3,5,5,4,0,3,224, + 32,64,0,64,5,7,7,6,0,2,120,136,184,168,184,128, + 120,4,6,6,4,255,2,48,80,112,80,80,128,4,5,5, + 5,0,3,224,80,96,80,224,3,5,5,4,0,3,96,128, + 128,160,64,4,5,5,5,0,3,224,80,80,80,32,3,5, + 5,4,0,3,96,128,192,128,224,4,6,6,5,0,2,176, + 64,96,64,64,128,4,5,5,5,0,3,96,128,176,160,96, + 4,6,6,4,255,2,80,80,112,80,80,128,1,5,5,2, + 0,3,128,128,128,128,128,3,5,5,4,0,3,64,32,32, + 32,192,5,5,5,6,0,3,208,80,96,80,72,4,5,5, + 5,0,3,192,64,64,64,176,6,5,5,6,255,3,168,84, + 84,84,68,4,5,5,5,0,3,224,80,80,80,80,3,5, + 5,4,0,3,96,160,160,160,64,4,5,5,5,0,3,176, + 80,96,64,64,4,5,5,5,0,3,64,160,160,160,112,5, + 5,5,5,255,3,176,80,96,80,72,3,5,5,4,0,3, + 96,128,224,32,192,3,5,5,4,0,3,224,64,64,64,64, + 4,5,5,5,0,3,160,160,160,160,80,3,5,5,4,0, + 3,160,160,160,160,64,6,5,5,7,0,3,172,168,168,168, + 88,4,5,5,5,0,3,160,160,64,160,176,4,7,7,4, + 255,1,208,80,80,48,16,16,32,3,5,5,4,0,3,224, + 32,64,128,224,2,7,7,3,0,2,192,128,128,128,128,128, + 192,3,5,5,4,0,3,128,128,64,32,32,2,7,7,3, + 0,2,192,64,64,64,64,64,192,3,3,3,4,0,5,64, + 160,160,4,1,1,5,0,3,240,2,2,2,3,0,6,128, + 64,4,4,4,5,0,3,96,160,160,80,4,5,5,5,0, + 3,64,96,80,80,160,3,4,4,4,0,3,96,128,160,64, + 4,6,6,5,0,3,16,32,96,160,160,208,4,4,4,5, + 0,3,96,160,208,96,4,7,7,4,255,1,48,64,96,64, + 64,64,128,4,6,6,5,0,1,80,160,160,96,32,192,3, + 7,7,4,0,3,64,128,128,192,160,160,160,1,5,5,2, + 0,3,128,0,128,128,128,3,7,7,3,255,1,32,0,32, + 32,32,32,192,4,7,7,5,0,2,128,128,160,224,160,144, + 16,4,6,6,5,0,3,32,80,96,64,64,176,6,4,4, + 7,0,3,88,168,168,164,3,4,4,4,0,3,64,160,160, + 160,3,4,4,4,0,3,96,160,160,192,4,6,6,5,0, + 1,176,80,80,96,64,128,4,6,6,5,0,1,80,160,160, + 96,32,32,4,4,4,5,0,3,160,80,64,64,3,4,4, + 4,0,3,64,160,32,192,2,6,6,3,0,3,128,128,192, + 128,128,64,4,4,4,5,0,3,160,160,160,80,3,4,4, + 4,0,3,160,160,160,64,6,4,4,7,0,3,172,168,168, + 80,3,4,4,4,0,3,160,160,64,160,3,5,5,4,0, + 2,160,160,64,32,192,4,5,5,5,0,2,224,32,64,144, + 96,3,7,7,4,0,2,96,64,64,128,64,64,96,1,7, + 7,2,0,2,128,128,128,128,128,128,128,3,7,7,4,0, + 2,192,64,64,32,64,64,192,4,2,2,5,0,5,80,160, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,4,7,7,5,0,2,96,144,64,224,64,128, + 240,255,255,255,4,7,7,5,0,2,96,128,96,144,96,16, + 96,255,7,8,8,8,0,2,124,130,154,170,162,154,130,124, + 255,255,255,255,7,8,8,8,0,2,124,130,186,170,178,170, + 130,124,255,255,255,255,255,255,255,6,5,5,7,0,3,108, + 232,104,40,40,255,255,255,255,255,255,255,255,255,255,255,255, + 255,4,8,8,4,255,2,80,0,48,80,112,80,80,128,255, + 255,3,7,7,4,0,1,96,128,128,160,96,64,32,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,3,7,7,4, + 0,3,160,0,96,160,160,160,64,4,4,4,5,0,4,144, + 96,96,144,255,255,255,255,4,7,7,5,0,3,80,0,160, + 160,160,160,80,255,255,4,7,7,4,255,1,32,80,96,80, + 96,64,128,255,255,255,255,4,6,6,5,0,3,80,0,96, + 160,160,80,255,255,255,4,6,6,5,0,3,96,0,96,160, + 208,96,4,6,6,5,0,3,96,0,96,160,208,96,4,7, + 7,5,0,3,64,160,0,96,160,208,96,255,255,255,255,255, + 255,255,255,255,255,255,3,6,6,4,0,3,160,0,96,160, + 160,192,5,5,5,6,0,3,32,0,248,0,32,255,255,255, + 255,4,6,6,5,0,3,80,0,160,160,160,80,255,255,255 + }; +/* + Fontname: -FreeType-Robot de Niro-Medium-R-Normal--16-160-72-72-P-39-ISO10646-1 + Copyright: Copyright BMoser 2008 + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 4 h= 5 x= 0 y= 6 dx= 5 dy= 0 ascent= 9 len= 5 + Font Bounding box w=10 h=10 x=-1 y= 0 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 9 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_robot_de_niron[178] U8G_SECTION(".progmem.u8g_font_robot_de_niron") = { + 0,10,10,255,0,5,0,0,0,0,42,57,0,9,0,5, + 0,3,3,3,4,0,6,160,64,160,3,3,3,4,0,4, + 64,224,64,2,2,2,3,0,2,64,128,3,1,1,4,0, + 5,224,1,1,1,2,0,3,128,3,5,5,4,0,3,32, + 32,64,128,128,3,5,5,4,0,3,64,160,160,160,64,3, + 5,5,4,0,3,192,64,64,64,224,3,5,5,4,0,3, + 192,32,96,128,224,3,5,5,4,0,3,192,32,224,32,224, + 3,5,5,4,0,3,160,160,224,32,32,3,5,5,4,0, + 3,96,128,224,32,224,3,5,5,4,0,3,96,128,224,160, + 64,4,5,5,5,0,3,224,32,112,32,32,3,5,5,4, + 0,3,96,160,224,160,192,3,5,5,4,0,3,96,160,224, + 32,192}; +/* + Fontname: -FreeType-Robot de Niro-Medium-R-Normal--16-160-72-72-P-39-ISO10646-1 + Copyright: Copyright BMoser 2008 + Capital A Height: 6, '1' Height: 5 + Calculated Max Values w= 6 h= 7 x= 0 y= 6 dx= 7 dy= 0 ascent=10 len= 7 + Font Bounding box w=10 h=10 x=-1 y= 0 + Calculated Min Values x=-1 y= 0 dx= 0 dy= 0 + Pure Font ascent = 6 descent= 1 + X Font ascent = 9 descent= 0 + Max Font ascent =10 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_robot_de_niror[1041] U8G_SECTION(".progmem.u8g_font_robot_de_niror") = { + 0,10,10,255,0,6,1,97,2,193,32,127,1,10,0,9, + 0,0,0,0,2,0,0,2,5,5,3,0,3,192,128,128, + 0,128,3,2,2,4,0,6,160,160,5,5,5,6,0,3, + 80,248,80,248,80,4,7,7,5,0,2,96,224,16,96,128, + 112,96,5,5,5,6,0,3,192,208,32,88,24,4,5,5, + 5,0,3,96,160,80,160,80,1,2,2,2,0,6,128,128, + 2,7,7,3,0,2,64,128,128,128,128,128,64,2,7,7, + 3,0,2,128,64,64,64,64,64,128,3,3,3,4,0,6, + 160,64,160,3,3,3,4,0,4,64,224,64,2,2,2,3, + 0,2,64,128,3,1,1,4,0,5,224,1,1,1,2,0, + 3,128,3,5,5,4,0,3,32,32,64,128,128,3,5,5, + 4,0,3,64,160,160,160,64,3,5,5,4,0,3,192,64, + 64,64,224,3,5,5,4,0,3,192,32,96,128,224,3,5, + 5,4,0,3,192,32,224,32,224,3,5,5,4,0,3,160, + 160,224,32,32,3,5,5,4,0,3,96,128,224,32,224,3, + 5,5,4,0,3,96,128,224,160,64,4,5,5,5,0,3, + 224,32,112,32,32,3,5,5,4,0,3,96,160,224,160,192, + 3,5,5,4,0,3,96,160,224,32,192,1,3,3,2,0, + 4,128,0,128,2,4,4,3,0,3,64,0,64,128,2,3, + 3,3,0,4,64,128,64,3,3,3,4,0,4,224,0,224, + 2,3,3,3,0,4,128,64,128,3,5,5,4,0,3,224, + 32,64,0,64,5,7,7,6,0,2,120,136,184,168,184,128, + 120,4,6,6,4,255,2,48,80,112,80,80,128,4,5,5, + 5,0,3,224,80,96,80,224,3,5,5,4,0,3,96,128, + 128,160,64,4,5,5,5,0,3,224,80,80,80,32,3,5, + 5,4,0,3,96,128,192,128,224,4,6,6,5,0,2,176, + 64,96,64,64,128,4,5,5,5,0,3,96,128,176,160,96, + 4,6,6,4,255,2,80,80,112,80,80,128,1,5,5,2, + 0,3,128,128,128,128,128,3,5,5,4,0,3,64,32,32, + 32,192,5,5,5,6,0,3,208,80,96,80,72,4,5,5, + 5,0,3,192,64,64,64,176,6,5,5,6,255,3,168,84, + 84,84,68,4,5,5,5,0,3,224,80,80,80,80,3,5, + 5,4,0,3,96,160,160,160,64,4,5,5,5,0,3,176, + 80,96,64,64,4,5,5,5,0,3,64,160,160,160,112,5, + 5,5,5,255,3,176,80,96,80,72,3,5,5,4,0,3, + 96,128,224,32,192,3,5,5,4,0,3,224,64,64,64,64, + 4,5,5,5,0,3,160,160,160,160,80,3,5,5,4,0, + 3,160,160,160,160,64,6,5,5,7,0,3,172,168,168,168, + 88,4,5,5,5,0,3,160,160,64,160,176,4,7,7,4, + 255,1,208,80,80,48,16,16,32,3,5,5,4,0,3,224, + 32,64,128,224,2,7,7,3,0,2,192,128,128,128,128,128, + 192,3,5,5,4,0,3,128,128,64,32,32,2,7,7,3, + 0,2,192,64,64,64,64,64,192,3,3,3,4,0,5,64, + 160,160,4,1,1,5,0,3,240,2,2,2,3,0,6,128, + 64,4,4,4,5,0,3,96,160,160,80,4,5,5,5,0, + 3,64,96,80,80,160,3,4,4,4,0,3,96,128,160,64, + 4,6,6,5,0,3,16,32,96,160,160,208,4,4,4,5, + 0,3,96,160,208,96,4,7,7,4,255,1,48,64,96,64, + 64,64,128,4,6,6,5,0,1,80,160,160,96,32,192,3, + 7,7,4,0,3,64,128,128,192,160,160,160,1,5,5,2, + 0,3,128,0,128,128,128,3,7,7,3,255,1,32,0,32, + 32,32,32,192,4,7,7,5,0,2,128,128,160,224,160,144, + 16,4,6,6,5,0,3,32,80,96,64,64,176,6,4,4, + 7,0,3,88,168,168,164,3,4,4,4,0,3,64,160,160, + 160,3,4,4,4,0,3,96,160,160,192,4,6,6,5,0, + 1,176,80,80,96,64,128,4,6,6,5,0,1,80,160,160, + 96,32,32,4,4,4,5,0,3,160,80,64,64,3,4,4, + 4,0,3,64,160,32,192,2,6,6,3,0,3,128,128,192, + 128,128,64,4,4,4,5,0,3,160,160,160,80,3,4,4, + 4,0,3,160,160,160,64,6,4,4,7,0,3,172,168,168, + 80,3,4,4,4,0,3,160,160,64,160,3,5,5,4,0, + 2,160,160,64,32,192,4,5,5,5,0,2,224,32,64,144, + 96,3,7,7,4,0,2,96,64,64,128,64,64,96,1,7, + 7,2,0,2,128,128,128,128,128,128,128,3,7,7,4,0, + 2,192,64,64,32,64,64,192,4,2,2,5,0,5,80,160, + 255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--11-80-100-100-P-61-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w=10 h=15 x= 3 y= 9 dx=11 dy= 0 ascent=11 len=15 + Font Bounding box w=11 h=15 x=-1 y=-4 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent =11 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb08[2612] U8G_SECTION(".progmem.u8g_font_symb08") = { + 0,11,15,255,252,7,1,152,3,60,32,255,254,11,252,7, + 254,0,0,0,3,0,1,1,7,7,3,1,0,128,128,128, + 128,128,0,128,7,7,7,7,0,0,130,68,124,40,40,16, + 16,5,7,7,5,0,0,80,80,248,80,248,80,80,5,7, + 7,6,0,0,248,8,8,120,8,8,248,7,7,7,8,0, + 0,100,188,168,86,42,42,68,6,7,7,7,0,0,32,80, + 80,108,152,152,108,4,5,5,5,0,0,224,16,112,16,224, + 3,9,9,4,0,254,32,64,64,128,128,128,64,64,32,3, + 9,9,4,1,254,128,64,64,32,32,32,64,64,128,3,3, + 3,5,1,2,160,64,160,5,5,5,6,0,0,32,32,248, + 32,32,2,3,3,2,0,254,64,64,128,5,1,1,6,0, + 2,248,1,1,1,2,1,0,128,3,7,7,3,0,0,32, + 32,64,64,64,128,128,4,7,7,5,0,0,96,144,144,144, + 144,144,96,3,7,7,5,1,0,64,192,64,64,64,64,224, + 4,7,7,5,0,0,96,144,16,32,32,64,240,4,7,7, + 5,0,0,96,144,16,96,16,16,224,5,7,7,5,0,0, + 16,48,80,144,248,16,16,4,7,7,5,0,0,112,64,224, + 16,16,16,224,4,7,7,5,0,0,112,128,224,144,144,144, + 96,4,7,7,5,0,0,240,144,32,32,64,64,64,4,7, + 7,5,0,0,96,144,144,96,144,144,96,4,7,7,5,0, + 0,96,144,144,144,112,32,192,1,5,5,2,1,0,128,0, + 0,0,128,2,7,7,2,0,254,64,0,0,0,64,64,128, + 6,5,5,7,0,0,12,48,192,48,12,5,3,3,6,0, + 1,248,0,248,6,5,5,6,0,0,192,48,12,48,192,3, + 7,7,5,1,0,64,160,32,64,64,0,64,5,6,6,6, + 0,0,104,176,0,248,0,248,7,7,7,8,0,0,16,56, + 40,40,124,68,238,5,7,7,6,0,0,240,72,72,112,72, + 72,240,7,7,7,8,0,0,238,68,40,16,40,68,238,6, + 7,7,7,0,0,48,48,88,72,140,132,252,5,7,7,6, + 0,0,248,72,64,112,64,72,248,7,7,7,8,0,0,56, + 16,124,146,124,16,56,5,7,7,6,0,0,248,72,64,64, + 64,64,224,7,7,7,8,0,0,238,68,68,124,68,68,238, + 3,7,7,3,0,0,224,64,64,64,64,64,224,6,7,7, + 7,0,0,16,40,152,76,72,72,48,6,7,7,7,0,0, + 236,72,80,96,80,72,236,7,7,7,7,0,0,16,16,40, + 40,68,68,238,9,7,14,10,0,0,227,128,99,0,85,0, + 85,0,93,0,73,0,235,128,7,7,7,8,0,0,238,100, + 84,84,76,76,228,6,7,7,7,0,0,120,204,132,132,132, + 204,120,7,7,7,8,0,0,254,68,68,68,68,68,238,6, + 7,7,7,0,0,120,204,132,180,132,204,120,5,7,7,6, + 0,0,240,72,72,112,64,64,224,5,7,7,6,0,0,248, + 136,64,32,64,136,248,5,7,7,6,0,0,248,168,32,32, + 32,32,112,7,7,7,8,0,0,238,68,40,56,16,16,56, + 4,7,7,5,0,254,112,128,128,128,96,16,96,8,7,7, + 9,0,0,60,102,66,66,102,165,231,6,7,7,7,0,0, + 120,72,0,48,0,132,252,9,7,14,9,0,0,221,128,73, + 0,73,0,62,0,8,0,8,0,28,0,5,7,7,6,0, + 0,248,136,16,32,64,136,248,2,9,9,3,0,254,192,128, + 128,128,128,128,128,128,192,5,5,5,7,1,0,32,0,0, + 0,136,2,9,9,3,1,254,192,64,64,64,64,64,64,64, + 192,5,7,7,7,1,0,32,32,32,32,32,32,248,5,1, + 1,5,0,254,248,6,1,1,5,0,9,252,6,5,5,7, + 0,0,104,168,144,148,104,4,10,10,5,0,254,96,144,144, + 160,144,144,208,160,128,128,5,7,7,6,0,254,200,80,80, + 32,80,80,152,4,8,8,5,0,0,96,144,64,96,144,144, + 144,96,4,5,5,5,0,0,96,144,192,144,96,5,9,9, + 6,0,254,32,32,112,168,168,168,112,32,32,5,7,7,6, + 0,254,200,168,40,48,16,32,32,5,7,7,6,0,254,80, + 232,72,72,72,8,8,3,5,5,4,0,0,192,64,64,64, + 96,5,7,7,6,0,254,48,168,168,168,112,32,32,5,5, + 5,6,0,0,72,216,96,80,72,6,8,8,6,0,0,192, + 160,32,32,80,80,148,136,5,7,7,6,0,254,144,144,144, + 144,232,128,192,5,5,5,6,0,0,136,136,80,80,32,4, + 5,5,5,0,0,96,144,144,144,96,5,5,5,6,0,0, + 248,80,80,88,208,4,7,7,5,0,0,96,144,144,240,144, + 144,96,4,8,8,5,0,253,96,144,144,144,224,128,128,128, + 5,5,5,6,0,0,120,144,144,144,96,4,5,5,5,0, + 0,240,64,64,80,96,5,5,5,6,0,0,80,200,72,72, + 48,7,6,6,8,0,0,254,68,130,146,146,108,7,5,5, + 8,0,0,68,130,146,146,108,4,10,10,5,0,254,128,176, + 64,112,128,128,128,96,16,112,7,7,7,7,0,254,146,84, + 84,84,56,16,16,4,10,10,5,0,254,128,176,96,128,128, + 128,128,96,16,112,3,9,9,5,1,254,32,64,64,64,128, + 64,64,64,32,1,9,9,2,0,254,128,128,128,128,128,128, + 128,128,128,3,9,9,5,1,254,128,64,64,64,32,64,64, + 64,128,5,2,2,6,0,2,104,176,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,6,7,7,7, + 0,0,140,212,112,32,32,32,112,3,3,3,3,0,5,32, + 64,128,5,7,7,6,0,0,8,48,192,48,8,0,248,4, + 7,7,3,255,0,16,16,32,32,64,64,128,7,3,3,7, + 0,1,108,146,108,5,9,9,5,0,254,24,32,112,32,32, + 32,32,32,192,5,5,5,7,1,0,112,112,248,248,32,5, + 5,5,7,1,0,32,112,248,112,32,5,5,5,7,1,0, + 216,248,248,112,32,5,5,5,7,1,0,32,112,248,248,32, + 10,5,10,10,0,0,33,0,64,128,255,192,64,128,33,0, + 10,5,10,10,0,0,32,0,64,0,255,192,64,0,32,0, + 5,14,14,6,0,252,32,112,168,32,32,32,32,32,32,32, + 32,32,32,32,10,5,10,10,0,0,1,0,0,128,255,192, + 0,128,1,0,5,13,13,6,0,254,32,32,32,32,32,32, + 32,32,32,32,168,112,32,3,4,4,4,0,3,64,160,160, + 64,5,7,7,6,0,0,32,32,248,32,32,0,248,5,3, + 3,4,0,5,40,80,160,5,7,7,6,0,0,128,96,24, + 96,128,0,248,5,5,5,6,0,0,136,80,32,80,136,6, + 3,3,7,0,1,108,144,108,4,8,8,5,0,0,96,144, + 16,16,112,144,144,96,4,3,3,5,0,1,96,240,96,5, + 5,5,6,0,0,32,0,248,0,32,5,5,5,6,0,0, + 16,248,32,248,64,5,5,5,6,0,1,248,0,248,0,248, + 5,5,5,6,0,0,104,176,0,104,176,7,1,1,9,1, + 0,146,1,15,15,6,2,252,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,10,1,2,10,0,2,255,192,6, + 6,6,7,0,0,4,4,4,68,252,64,7,7,7,8,0, + 0,204,102,52,92,76,38,98,6,9,9,7,0,255,124,132, + 200,24,12,4,68,232,48,8,8,8,8,0,0,108,146,146, + 92,20,18,82,163,7,8,8,9,1,254,16,36,74,82,106, + 108,160,96,7,7,7,8,0,0,56,68,170,146,170,68,56, + 7,7,7,8,0,0,56,68,146,186,146,68,56,7,9,9, + 8,0,255,2,60,76,138,146,162,100,120,128,7,5,5,8, + 0,0,56,68,130,130,130,7,5,5,8,0,0,130,130,130, + 68,56,7,5,5,7,0,0,248,4,2,4,248,7,7,7, + 7,0,254,248,4,2,4,248,0,254,7,7,7,7,0,255, + 4,62,72,136,80,62,32,7,5,5,7,0,0,62,64,128, + 64,62,7,7,7,7,0,254,62,64,128,64,62,0,254,5, + 5,5,7,1,0,120,128,248,128,120,5,7,7,7,1,255, + 16,120,144,248,160,120,64,7,7,7,8,0,0,2,4,8, + 16,32,64,254,6,7,7,7,0,0,252,132,132,72,72,48, + 48,7,8,8,8,0,255,56,68,250,170,178,174,68,56,7, + 8,8,8,0,255,56,68,154,170,162,154,68,56,10,5,10, + 10,0,2,253,0,170,128,42,128,42,128,122,192,8,9,9, + 9,0,255,255,66,66,66,66,66,66,66,231,6,10,10,6, + 0,0,4,4,8,8,72,208,80,80,32,32,1,1,1,3, + 1,2,128,6,3,3,7,0,0,252,4,4,5,5,5,6, + 0,0,32,80,80,136,136,5,5,5,6,0,0,136,136,80, + 80,32,10,5,10,11,0,0,33,0,127,128,128,64,127,128, + 33,0,9,5,10,10,0,0,32,0,127,128,128,0,127,128, + 32,0,5,10,10,6,0,0,32,112,216,80,80,80,80,80, + 80,80,9,5,10,10,0,0,2,0,255,0,0,128,255,0, + 2,0,5,10,10,6,0,0,80,80,80,80,80,80,80,216, + 80,32,7,7,7,7,0,0,16,40,68,198,68,40,16,3, + 9,9,3,0,254,32,32,64,64,128,64,64,32,32,7,8, + 8,8,0,255,56,68,186,170,178,170,68,56,7,8,8,8, + 0,255,56,68,154,162,162,154,68,56,8,5,5,9,0,2, + 250,85,85,85,85,6,9,9,7,0,255,252,132,64,32,16, + 32,64,132,252,3,14,14,4,1,252,32,64,64,128,128,128, + 128,128,128,128,128,128,128,128,1,15,15,4,1,252,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,3,15,15, + 4,1,252,128,128,128,128,128,128,128,128,128,128,128,128,64, + 64,32,3,14,14,4,1,252,224,128,128,128,128,128,128,128, + 128,128,128,128,128,128,1,15,15,4,1,252,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,3,13,13,4,1, + 254,128,128,128,128,128,128,128,128,128,128,128,128,224,3,14, + 14,5,2,252,96,128,128,128,128,128,128,128,128,128,128,128, + 128,128,3,15,15,5,0,252,32,32,32,32,32,64,128,64, + 32,32,32,32,32,32,32,3,13,13,5,2,254,128,128,128, + 128,128,128,128,128,128,128,128,128,96,1,15,15,5,2,252, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,255, + 3,9,9,3,0,254,128,128,64,64,32,64,64,128,128,3, + 12,12,3,0,254,32,64,64,64,64,64,64,64,64,64,64, + 128,4,14,14,7,3,252,48,80,128,128,128,128,128,128,128, + 128,128,128,128,128,1,15,15,7,0,252,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,4,13,13,7,0,254, + 16,16,16,16,16,16,16,16,16,16,16,160,192,3,14,14, + 4,0,252,128,64,64,32,32,32,32,32,32,32,32,32,32, + 32,1,15,15,4,2,252,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,3,15,15,4,0,252,32,32,32,32, + 32,32,32,32,32,32,32,32,64,64,128,3,14,14,4,0, + 252,224,32,32,32,32,32,32,32,32,32,32,32,32,32,1, + 15,15,4,2,252,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,3,13,13,4,0,254,32,32,32,32,32,32, + 32,32,32,32,32,32,224,3,14,14,5,0,252,192,32,32, + 32,32,32,32,32,32,32,32,32,32,32,3,15,15,5,2, + 252,128,128,128,128,128,64,32,64,128,128,128,128,128,128,128, + 3,13,13,5,0,254,32,32,32,32,32,32,32,32,32,32, + 32,32,192,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--11-80-100-100-P-61-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 9 h=10 x= 1 y= 9 dx=10 dy= 0 ascent=10 len=14 + Font Bounding box w=11 h=15 x=-1 y=-4 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent =10 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb08r[1211] U8G_SECTION(".progmem.u8g_font_symb08r") = { + 0,11,15,255,252,7,1,152,3,60,32,127,254,10,253,7, + 254,0,0,0,3,0,1,1,7,7,3,1,0,128,128,128, + 128,128,0,128,7,7,7,7,0,0,130,68,124,40,40,16, + 16,5,7,7,5,0,0,80,80,248,80,248,80,80,5,7, + 7,6,0,0,248,8,8,120,8,8,248,7,7,7,8,0, + 0,100,188,168,86,42,42,68,6,7,7,7,0,0,32,80, + 80,108,152,152,108,4,5,5,5,0,0,224,16,112,16,224, + 3,9,9,4,0,254,32,64,64,128,128,128,64,64,32,3, + 9,9,4,1,254,128,64,64,32,32,32,64,64,128,3,3, + 3,5,1,2,160,64,160,5,5,5,6,0,0,32,32,248, + 32,32,2,3,3,2,0,254,64,64,128,5,1,1,6,0, + 2,248,1,1,1,2,1,0,128,3,7,7,3,0,0,32, + 32,64,64,64,128,128,4,7,7,5,0,0,96,144,144,144, + 144,144,96,3,7,7,5,1,0,64,192,64,64,64,64,224, + 4,7,7,5,0,0,96,144,16,32,32,64,240,4,7,7, + 5,0,0,96,144,16,96,16,16,224,5,7,7,5,0,0, + 16,48,80,144,248,16,16,4,7,7,5,0,0,112,64,224, + 16,16,16,224,4,7,7,5,0,0,112,128,224,144,144,144, + 96,4,7,7,5,0,0,240,144,32,32,64,64,64,4,7, + 7,5,0,0,96,144,144,96,144,144,96,4,7,7,5,0, + 0,96,144,144,144,112,32,192,1,5,5,2,1,0,128,0, + 0,0,128,2,7,7,2,0,254,64,0,0,0,64,64,128, + 6,5,5,7,0,0,12,48,192,48,12,5,3,3,6,0, + 1,248,0,248,6,5,5,6,0,0,192,48,12,48,192,3, + 7,7,5,1,0,64,160,32,64,64,0,64,5,6,6,6, + 0,0,104,176,0,248,0,248,7,7,7,8,0,0,16,56, + 40,40,124,68,238,5,7,7,6,0,0,240,72,72,112,72, + 72,240,7,7,7,8,0,0,238,68,40,16,40,68,238,6, + 7,7,7,0,0,48,48,88,72,140,132,252,5,7,7,6, + 0,0,248,72,64,112,64,72,248,7,7,7,8,0,0,56, + 16,124,146,124,16,56,5,7,7,6,0,0,248,72,64,64, + 64,64,224,7,7,7,8,0,0,238,68,68,124,68,68,238, + 3,7,7,3,0,0,224,64,64,64,64,64,224,6,7,7, + 7,0,0,16,40,152,76,72,72,48,6,7,7,7,0,0, + 236,72,80,96,80,72,236,7,7,7,7,0,0,16,16,40, + 40,68,68,238,9,7,14,10,0,0,227,128,99,0,85,0, + 85,0,93,0,73,0,235,128,7,7,7,8,0,0,238,100, + 84,84,76,76,228,6,7,7,7,0,0,120,204,132,132,132, + 204,120,7,7,7,8,0,0,254,68,68,68,68,68,238,6, + 7,7,7,0,0,120,204,132,180,132,204,120,5,7,7,6, + 0,0,240,72,72,112,64,64,224,5,7,7,6,0,0,248, + 136,64,32,64,136,248,5,7,7,6,0,0,248,168,32,32, + 32,32,112,7,7,7,8,0,0,238,68,40,56,16,16,56, + 4,7,7,5,0,254,112,128,128,128,96,16,96,8,7,7, + 9,0,0,60,102,66,66,102,165,231,6,7,7,7,0,0, + 120,72,0,48,0,132,252,9,7,14,9,0,0,221,128,73, + 0,73,0,62,0,8,0,8,0,28,0,5,7,7,6,0, + 0,248,136,16,32,64,136,248,2,9,9,3,0,254,192,128, + 128,128,128,128,128,128,192,5,5,5,7,1,0,32,0,0, + 0,136,2,9,9,3,1,254,192,64,64,64,64,64,64,64, + 192,5,7,7,7,1,0,32,32,32,32,32,32,248,5,1, + 1,5,0,254,248,6,1,1,5,0,9,252,6,5,5,7, + 0,0,104,168,144,148,104,4,10,10,5,0,254,96,144,144, + 160,144,144,208,160,128,128,5,7,7,6,0,254,200,80,80, + 32,80,80,152,4,8,8,5,0,0,96,144,64,96,144,144, + 144,96,4,5,5,5,0,0,96,144,192,144,96,5,9,9, + 6,0,254,32,32,112,168,168,168,112,32,32,5,7,7,6, + 0,254,200,168,40,48,16,32,32,5,7,7,6,0,254,80, + 232,72,72,72,8,8,3,5,5,4,0,0,192,64,64,64, + 96,5,7,7,6,0,254,48,168,168,168,112,32,32,5,5, + 5,6,0,0,72,216,96,80,72,6,8,8,6,0,0,192, + 160,32,32,80,80,148,136,5,7,7,6,0,254,144,144,144, + 144,232,128,192,5,5,5,6,0,0,136,136,80,80,32,4, + 5,5,5,0,0,96,144,144,144,96,5,5,5,6,0,0, + 248,80,80,88,208,4,7,7,5,0,0,96,144,144,240,144, + 144,96,4,8,8,5,0,253,96,144,144,144,224,128,128,128, + 5,5,5,6,0,0,120,144,144,144,96,4,5,5,5,0, + 0,240,64,64,80,96,5,5,5,6,0,0,80,200,72,72, + 48,7,6,6,8,0,0,254,68,130,146,146,108,7,5,5, + 8,0,0,68,130,146,146,108,4,10,10,5,0,254,128,176, + 64,112,128,128,128,96,16,112,7,7,7,7,0,254,146,84, + 84,84,56,16,16,4,10,10,5,0,254,128,176,96,128,128, + 128,128,96,16,112,3,9,9,5,1,254,32,64,64,64,128, + 64,64,64,32,1,9,9,2,0,254,128,128,128,128,128,128, + 128,128,128,3,9,9,5,1,254,128,64,64,64,32,64,64, + 64,128,5,2,2,6,0,2,104,176,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--14-100-100-100-P-85-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=15 h=15 x= 7 y=11 dx=15 dy= 0 ascent=12 len=24 + Font Bounding box w=16 h=15 x=-1 y=-3 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb10[3433] U8G_SECTION(".progmem.u8g_font_symb10") = { + 0,16,15,255,253,10,2,6,4,121,32,255,253,12,253,10, + 253,0,0,0,4,0,1,1,10,10,5,2,0,128,128,128, + 128,128,128,128,0,128,128,9,10,20,9,0,0,128,128,65, + 0,65,0,62,0,34,0,34,0,20,0,20,0,8,0,8, + 0,7,10,10,7,0,0,20,20,20,126,40,40,252,80,80, + 80,6,10,10,8,1,0,252,4,4,4,252,4,4,4,4, + 252,9,10,20,12,1,0,121,128,151,0,146,0,148,0,108, + 0,27,0,20,128,36,128,68,128,195,0,9,10,20,11,1, + 0,48,0,72,0,72,0,112,0,39,0,114,0,202,0,132, + 0,206,128,123,0,5,7,7,6,0,0,224,16,8,120,8, + 16,224,3,13,13,5,1,253,32,64,64,128,128,128,128,128, + 128,128,64,64,32,3,13,13,5,1,253,128,64,64,32,32, + 32,32,32,32,32,64,64,128,5,6,6,7,1,2,32,168, + 112,112,168,32,7,7,7,8,0,0,16,16,16,254,16,16, + 16,2,4,4,3,0,254,64,64,64,128,7,1,1,8,0, + 3,254,1,2,2,3,1,0,128,128,4,10,10,4,0,0, + 16,16,32,32,32,64,64,64,128,128,6,10,10,7,0,0, + 120,204,132,132,132,132,132,132,204,120,5,10,10,7,1,0, + 32,224,32,32,32,32,32,32,32,248,6,10,10,7,0,0, + 112,216,136,8,24,16,32,64,196,252,6,10,10,7,0,0, + 120,204,132,12,56,12,4,4,204,120,6,10,10,7,0,0, + 8,24,24,40,104,72,136,252,8,8,5,10,10,7,1,0, + 120,64,128,224,48,24,8,8,144,224,6,10,10,7,0,0, + 28,48,64,64,248,140,132,132,204,120,6,10,10,7,0,0, + 252,132,8,8,16,16,32,32,64,64,5,10,10,7,1,0, + 112,216,136,216,112,136,136,136,216,112,6,10,10,7,0,0, + 120,204,132,132,204,120,24,16,96,192,1,7,7,4,2,0, + 128,128,0,0,0,128,128,2,9,9,4,1,254,64,64,0, + 0,0,64,64,64,128,7,7,7,8,1,0,2,12,48,192, + 48,12,2,7,3,3,8,0,2,254,0,254,7,7,7,8, + 0,0,128,96,24,6,24,96,128,5,10,10,6,1,0,112, + 136,136,8,16,32,32,0,32,32,7,7,7,8,0,0,114, + 156,0,254,0,0,254,9,10,20,11,1,0,8,0,28,0, + 20,0,20,0,34,0,34,0,62,0,99,0,65,0,227,128, + 7,10,10,9,1,0,252,70,66,70,124,70,66,66,70,252, + 9,10,20,11,1,0,227,128,65,0,34,0,20,0,8,0, + 20,0,34,0,34,0,65,0,227,128,7,10,10,9,1,0, + 16,16,40,40,40,68,68,68,130,254,7,10,10,9,1,0, + 254,66,64,68,124,68,64,66,66,254,9,10,20,11,1,0, + 28,0,8,0,127,0,201,128,136,128,136,128,201,128,127,0, + 8,0,28,0,7,10,10,9,1,0,254,66,64,64,64,64, + 64,64,64,224,9,10,20,11,1,0,227,128,65,0,65,0, + 65,0,127,0,65,0,65,0,65,0,65,0,227,128,3,10, + 10,5,1,0,224,64,64,64,64,64,64,64,64,224,8,10, + 10,9,0,0,12,10,10,102,163,34,34,34,54,28,8,10, + 10,10,1,0,238,68,72,80,112,80,72,68,70,231,9,10, + 20,10,0,0,8,0,8,0,20,0,20,0,34,0,34,0, + 34,0,65,0,65,0,227,128,11,10,20,13,1,0,224,224, + 96,192,81,64,81,64,91,64,74,64,74,64,78,64,68,64, + 228,224,9,10,20,11,1,0,227,128,97,0,81,0,89,0, + 73,0,77,0,69,0,69,0,67,0,227,0,8,10,10,10, + 1,0,60,102,66,129,129,129,129,66,102,60,9,10,20,11, + 1,0,255,128,65,0,65,0,65,0,65,0,65,0,65,0, + 65,0,65,0,227,128,8,10,10,10,1,0,60,102,66,165, + 189,165,129,66,102,60,6,10,10,8,1,0,248,76,68,68, + 76,120,64,64,64,224,8,10,10,9,1,0,254,194,96,48, + 24,16,32,64,193,255,7,10,10,9,1,0,254,146,146,16, + 16,16,16,16,16,56,9,10,20,9,0,0,227,128,65,0, + 34,0,34,0,20,0,8,0,8,0,8,0,8,0,28,0, + 6,10,10,7,1,253,56,192,128,128,128,96,56,4,36,56, + 10,10,20,11,0,0,12,0,51,0,33,0,64,128,64,128, + 64,128,33,0,51,0,146,64,243,192,9,10,20,9,0,0, + 127,0,65,0,0,0,34,0,62,0,34,0,0,0,0,0, + 128,128,255,128,11,10,20,11,0,0,206,96,100,192,36,128, + 36,128,31,0,4,0,4,0,4,0,4,0,14,0,7,10, + 10,9,1,0,254,134,4,8,16,16,32,64,194,254,3,13, + 13,5,1,253,224,128,128,128,128,128,128,128,128,128,128,128, + 224,8,7,7,10,1,0,24,24,0,0,0,195,195,3,13, + 13,5,1,253,224,32,32,32,32,32,32,32,32,32,32,32, + 224,9,10,20,10,0,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,255,128,7,1,1,7,0, + 253,254,8,1,1,7,7,11,255,8,7,7,9,1,0,118, + 212,136,136,136,213,102,6,14,14,8,1,253,120,204,132,140, + 152,140,132,132,132,204,184,128,128,128,8,10,10,8,0,253, + 195,166,36,60,24,56,40,100,69,195,5,11,11,7,1,0, + 112,152,128,64,112,152,136,136,136,216,112,5,7,7,6,1, + 0,120,200,128,96,128,200,112,7,13,13,9,1,253,16,16, + 16,56,84,146,146,146,84,56,16,16,16,6,10,10,6,0, + 253,196,164,36,40,40,24,24,16,48,48,7,10,10,8,0, + 253,108,178,34,34,34,34,34,2,2,2,5,7,7,5,0, + 0,96,160,32,32,32,40,48,7,10,10,9,1,253,24,84, + 210,146,146,84,56,16,16,16,7,7,7,8,0,0,70,202, + 80,112,88,76,70,8,10,10,8,0,0,96,80,16,16,40, + 40,72,68,133,131,8,9,9,8,0,254,68,68,68,68,68, + 77,123,64,192,7,7,7,8,0,0,198,66,34,34,20,20, + 8,6,7,7,8,1,0,120,204,132,132,132,204,120,8,7, + 7,8,0,0,126,164,36,36,36,37,102,5,10,10,7,1, + 0,112,216,136,136,248,136,136,136,216,112,6,10,10,8,1, + 253,120,204,132,132,132,204,184,128,128,128,7,7,7,8,1, + 0,126,200,132,132,132,204,120,5,7,7,6,0,0,120,160, + 32,32,32,40,48,7,7,7,8,0,0,100,162,34,34,34, + 38,28,10,8,16,11,0,0,127,192,160,128,68,64,68,64, + 68,64,68,64,100,192,59,128,9,7,14,11,1,0,99,0, + 136,128,136,128,136,128,136,128,201,128,119,0,6,15,15,7, + 1,253,32,64,56,32,64,120,32,64,128,128,192,120,4,36, + 56,9,10,20,9,0,253,136,128,73,0,73,0,73,0,107, + 0,62,0,28,0,8,0,8,0,8,0,6,14,14,7,1, + 253,32,68,60,16,32,64,64,128,128,192,120,4,36,56,5, + 13,13,7,1,253,24,32,32,32,32,64,128,64,32,32,32, + 32,24,1,13,13,3,1,253,128,128,128,128,128,128,128,128, + 128,128,128,128,128,5,13,13,7,1,253,192,32,32,32,32, + 16,8,16,32,32,32,32,192,6,2,2,8,1,3,100,152, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,8,10,10,9,0,0,198,105,43,16,16,16,16,16, + 16,56,4,3,3,4,0,7,48,96,128,7,9,9,8,0, + 0,2,12,48,192,48,12,2,0,254,5,10,10,4,255,0, + 8,8,16,16,32,32,64,64,128,128,9,4,8,10,0,2, + 119,0,152,128,140,128,119,0,7,13,13,7,0,253,6,10, + 8,8,60,16,16,16,32,32,32,160,192,9,7,14,11,1, + 0,28,0,28,0,28,0,235,128,255,128,235,128,8,0,7, + 7,7,11,2,0,16,56,124,254,124,56,16,7,7,7,11, + 2,0,108,254,254,254,124,56,16,9,7,14,11,1,0,8, + 0,28,0,62,0,127,0,255,128,107,0,8,0,13,7,14, + 15,1,0,16,64,32,32,64,16,255,248,64,16,32,32,16, + 64,14,7,14,14,0,0,16,0,32,0,64,0,255,252,64, + 0,32,0,16,0,7,15,15,9,1,253,16,56,84,146,16, + 16,16,16,16,16,16,16,16,16,16,14,7,14,14,0,0, + 0,32,0,16,0,8,255,252,0,8,0,16,0,32,7,15, + 15,9,1,253,16,16,16,16,16,16,16,16,16,16,16,146, + 84,56,16,4,4,4,6,1,6,96,144,144,96,7,9,9, + 8,0,0,16,16,16,254,16,16,16,0,254,7,3,3,6, + 0,7,54,108,144,7,9,9,8,0,0,128,96,24,6,24, + 96,128,0,254,7,7,7,8,0,0,130,68,40,16,40,68, + 130,8,4,4,10,0,2,119,136,136,119,6,11,11,7,0, + 0,112,136,4,4,4,116,204,132,132,200,112,5,5,5,7, + 1,1,112,248,248,248,112,7,7,7,8,0,0,16,16,0, + 254,0,16,16,7,7,7,8,0,0,4,8,254,16,254,32, + 64,7,5,5,8,0,1,254,0,254,0,254,7,5,5,8, + 0,2,114,156,0,114,156,11,2,4,15,2,0,132,32,132, + 32,1,15,15,9,4,253,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,15,1,2,15,0,3,255,254,8,9, + 9,10,0,0,1,1,1,1,1,1,65,255,64,8,10,10, + 12,2,0,136,206,102,36,116,156,140,70,99,225,8,12,12, + 10,1,255,63,97,66,70,36,6,3,1,97,241,26,12,10, + 11,22,12,1,0,115,0,157,128,137,128,139,0,206,0,106, + 0,41,0,9,0,9,0,105,0,176,192,9,12,24,12,1, + 253,16,0,35,0,69,128,72,128,144,128,212,128,105,0,107, + 0,182,0,144,0,144,0,96,0,9,9,18,11,1,0,28, + 0,99,0,99,0,148,128,136,128,148,128,99,0,99,0,28, + 0,9,9,18,11,1,0,28,0,99,0,73,0,136,128,190, + 128,136,128,73,0,99,0,28,0,11,11,22,12,0,0,31, + 32,96,192,64,192,129,32,130,32,132,32,136,32,144,32,96, + 64,96,192,159,0,10,7,14,10,0,0,30,0,97,128,64, + 128,128,64,128,64,128,64,128,64,10,7,14,10,0,0,128, + 64,128,64,128,64,128,64,64,128,97,128,30,0,9,7,14, + 10,0,0,254,0,1,0,0,128,0,128,0,128,1,0,254, + 0,9,9,18,10,1,254,254,0,1,0,0,128,0,128,0, + 128,1,0,254,0,0,0,255,128,9,9,18,10,0,255,1, + 0,63,128,66,0,130,0,132,0,132,0,72,0,63,128,16, + 0,9,7,14,10,1,0,63,128,64,0,128,0,128,0,128, + 0,64,0,63,128,9,9,18,10,0,254,63,128,64,0,128, + 0,128,0,128,0,64,0,63,128,0,0,255,128,7,7,7, + 10,1,0,62,64,128,254,128,64,62,7,9,9,10,0,255, + 4,62,72,144,254,144,96,62,64,11,10,20,11,0,0,0, + 64,0,128,1,0,2,0,4,0,8,0,16,0,32,0,64, + 0,255,224,9,11,22,10,0,0,255,128,128,128,65,0,65, + 0,34,0,34,0,34,0,20,0,20,0,8,0,8,0,10, + 10,20,12,1,0,30,0,33,0,124,128,146,64,146,64,156, + 64,146,64,121,128,33,0,30,0,10,10,20,12,1,0,30, + 0,33,0,78,128,146,64,144,64,144,64,146,64,76,128,33, + 0,30,0,11,6,12,11,0,4,250,128,170,128,38,192,37, + 64,37,64,118,224,10,12,24,12,1,255,255,192,64,128,64, + 128,64,128,64,128,64,128,64,128,64,128,64,128,64,128,64, + 128,225,192,8,12,12,8,0,0,1,1,1,2,2,98,164, + 36,20,20,8,8,1,2,2,4,1,3,128,128,9,5,10, + 10,0,0,255,128,0,128,0,128,0,128,0,128,8,7,7, + 9,0,0,24,24,36,36,66,66,129,8,7,7,9,0,0, + 129,66,66,36,36,24,24,13,7,14,15,1,0,16,64,32, + 32,127,240,192,24,127,240,32,32,16,64,13,7,14,14,0, + 0,16,0,32,0,127,248,192,0,127,248,32,0,16,0,7, + 12,12,9,1,0,16,56,108,170,40,40,40,40,40,40,40, + 40,13,7,14,14,1,0,0,64,0,32,255,240,0,24,255, + 240,0,32,0,64,7,12,12,9,1,0,40,40,40,40,40, + 40,40,40,170,108,56,16,7,11,11,7,0,0,16,40,40, + 68,68,130,68,68,40,40,16,4,15,15,5,0,253,16,32, + 32,64,64,64,128,128,128,64,64,64,32,32,16,10,10,20, + 12,1,0,30,0,33,0,92,128,146,64,146,64,156,64,146, + 64,82,128,33,0,30,0,10,10,20,12,1,0,30,0,33, + 0,76,128,146,64,144,64,144,64,146,64,76,128,33,0,30, + 0,10,6,12,11,0,4,250,128,34,128,38,192,37,64,37, + 64,36,64,9,12,24,10,0,255,255,0,129,0,64,0,32, + 0,16,0,8,0,8,0,16,0,32,0,64,0,128,128,255, + 128,4,15,15,6,1,253,16,32,64,64,128,128,128,128,128, + 128,128,128,128,128,128,1,15,15,6,1,253,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,4,15,15,6,1, + 253,128,128,128,128,128,128,128,128,128,128,128,64,64,32,16, + 4,15,15,6,1,253,240,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,1,15,15,6,1,253,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,4,15,15,6,1,253, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,240,4, + 15,15,7,3,253,48,64,128,128,128,128,128,128,128,128,128, + 128,128,128,128,3,15,15,7,1,253,32,32,32,32,32,32, + 64,128,64,32,32,32,32,32,32,4,15,15,7,3,253,128, + 128,128,128,128,128,128,128,128,128,128,128,128,64,48,1,15, + 15,7,3,253,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,255,4,15,15,5,1,253,128,64,64,32,32,32, + 16,16,16,32,32,32,64,64,128,5,13,13,4,0,255,24, + 40,32,32,32,32,32,32,32,32,32,160,192,5,15,15,10, + 5,253,56,88,64,128,128,128,128,128,128,128,128,128,128,128, + 128,1,15,15,10,5,253,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,5,15,15,10,1,253,8,8,8,8, + 8,8,8,8,8,8,8,8,16,208,224,4,15,15,6,1, + 253,128,64,32,32,16,16,16,16,16,16,16,16,16,16,16, + 1,15,15,6,4,253,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,4,15,15,6,1,253,16,16,16,16,16, + 16,16,16,16,16,16,32,32,64,128,4,15,15,6,1,253, + 240,16,16,16,16,16,16,16,16,16,16,16,16,16,16,1, + 15,15,6,4,253,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,4,15,15,6,1,253,16,16,16,16,16,16, + 16,16,16,16,16,16,16,16,240,4,15,15,7,0,253,192, + 32,16,16,16,16,16,16,16,16,16,16,16,16,16,3,15, + 15,7,3,253,128,128,128,128,128,128,64,32,64,128,128,128, + 128,128,128,4,15,15,7,0,253,16,16,16,16,16,16,16, + 16,16,16,16,16,16,32,192,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--14-100-100-100-P-85-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=11 h=15 x= 7 y=11 dx=13 dy= 0 ascent=12 len=20 + Font Bounding box w=16 h=15 x=-1 y=-3 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =12 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb10r[1633] U8G_SECTION(".progmem.u8g_font_symb10r") = { + 0,16,15,255,253,10,2,6,4,121,32,127,253,12,253,10, + 253,0,0,0,4,0,1,1,10,10,5,2,0,128,128,128, + 128,128,128,128,0,128,128,9,10,20,9,0,0,128,128,65, + 0,65,0,62,0,34,0,34,0,20,0,20,0,8,0,8, + 0,7,10,10,7,0,0,20,20,20,126,40,40,252,80,80, + 80,6,10,10,8,1,0,252,4,4,4,252,4,4,4,4, + 252,9,10,20,12,1,0,121,128,151,0,146,0,148,0,108, + 0,27,0,20,128,36,128,68,128,195,0,9,10,20,11,1, + 0,48,0,72,0,72,0,112,0,39,0,114,0,202,0,132, + 0,206,128,123,0,5,7,7,6,0,0,224,16,8,120,8, + 16,224,3,13,13,5,1,253,32,64,64,128,128,128,128,128, + 128,128,64,64,32,3,13,13,5,1,253,128,64,64,32,32, + 32,32,32,32,32,64,64,128,5,6,6,7,1,2,32,168, + 112,112,168,32,7,7,7,8,0,0,16,16,16,254,16,16, + 16,2,4,4,3,0,254,64,64,64,128,7,1,1,8,0, + 3,254,1,2,2,3,1,0,128,128,4,10,10,4,0,0, + 16,16,32,32,32,64,64,64,128,128,6,10,10,7,0,0, + 120,204,132,132,132,132,132,132,204,120,5,10,10,7,1,0, + 32,224,32,32,32,32,32,32,32,248,6,10,10,7,0,0, + 112,216,136,8,24,16,32,64,196,252,6,10,10,7,0,0, + 120,204,132,12,56,12,4,4,204,120,6,10,10,7,0,0, + 8,24,24,40,104,72,136,252,8,8,5,10,10,7,1,0, + 120,64,128,224,48,24,8,8,144,224,6,10,10,7,0,0, + 28,48,64,64,248,140,132,132,204,120,6,10,10,7,0,0, + 252,132,8,8,16,16,32,32,64,64,5,10,10,7,1,0, + 112,216,136,216,112,136,136,136,216,112,6,10,10,7,0,0, + 120,204,132,132,204,120,24,16,96,192,1,7,7,4,2,0, + 128,128,0,0,0,128,128,2,9,9,4,1,254,64,64,0, + 0,0,64,64,64,128,7,7,7,8,1,0,2,12,48,192, + 48,12,2,7,3,3,8,0,2,254,0,254,7,7,7,8, + 0,0,128,96,24,6,24,96,128,5,10,10,6,1,0,112, + 136,136,8,16,32,32,0,32,32,7,7,7,8,0,0,114, + 156,0,254,0,0,254,9,10,20,11,1,0,8,0,28,0, + 20,0,20,0,34,0,34,0,62,0,99,0,65,0,227,128, + 7,10,10,9,1,0,252,70,66,70,124,70,66,66,70,252, + 9,10,20,11,1,0,227,128,65,0,34,0,20,0,8,0, + 20,0,34,0,34,0,65,0,227,128,7,10,10,9,1,0, + 16,16,40,40,40,68,68,68,130,254,7,10,10,9,1,0, + 254,66,64,68,124,68,64,66,66,254,9,10,20,11,1,0, + 28,0,8,0,127,0,201,128,136,128,136,128,201,128,127,0, + 8,0,28,0,7,10,10,9,1,0,254,66,64,64,64,64, + 64,64,64,224,9,10,20,11,1,0,227,128,65,0,65,0, + 65,0,127,0,65,0,65,0,65,0,65,0,227,128,3,10, + 10,5,1,0,224,64,64,64,64,64,64,64,64,224,8,10, + 10,9,0,0,12,10,10,102,163,34,34,34,54,28,8,10, + 10,10,1,0,238,68,72,80,112,80,72,68,70,231,9,10, + 20,10,0,0,8,0,8,0,20,0,20,0,34,0,34,0, + 34,0,65,0,65,0,227,128,11,10,20,13,1,0,224,224, + 96,192,81,64,81,64,91,64,74,64,74,64,78,64,68,64, + 228,224,9,10,20,11,1,0,227,128,97,0,81,0,89,0, + 73,0,77,0,69,0,69,0,67,0,227,0,8,10,10,10, + 1,0,60,102,66,129,129,129,129,66,102,60,9,10,20,11, + 1,0,255,128,65,0,65,0,65,0,65,0,65,0,65,0, + 65,0,65,0,227,128,8,10,10,10,1,0,60,102,66,165, + 189,165,129,66,102,60,6,10,10,8,1,0,248,76,68,68, + 76,120,64,64,64,224,8,10,10,9,1,0,254,194,96,48, + 24,16,32,64,193,255,7,10,10,9,1,0,254,146,146,16, + 16,16,16,16,16,56,9,10,20,9,0,0,227,128,65,0, + 34,0,34,0,20,0,8,0,8,0,8,0,8,0,28,0, + 6,10,10,7,1,253,56,192,128,128,128,96,56,4,36,56, + 10,10,20,11,0,0,12,0,51,0,33,0,64,128,64,128, + 64,128,33,0,51,0,146,64,243,192,9,10,20,9,0,0, + 127,0,65,0,0,0,34,0,62,0,34,0,0,0,0,0, + 128,128,255,128,11,10,20,11,0,0,206,96,100,192,36,128, + 36,128,31,0,4,0,4,0,4,0,4,0,14,0,7,10, + 10,9,1,0,254,134,4,8,16,16,32,64,194,254,3,13, + 13,5,1,253,224,128,128,128,128,128,128,128,128,128,128,128, + 224,8,7,7,10,1,0,24,24,0,0,0,195,195,3,13, + 13,5,1,253,224,32,32,32,32,32,32,32,32,32,32,32, + 224,9,10,20,10,0,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,8,0,255,128,7,1,1,7,0, + 253,254,8,1,1,7,7,11,255,8,7,7,9,1,0,118, + 212,136,136,136,213,102,6,14,14,8,1,253,120,204,132,140, + 152,140,132,132,132,204,184,128,128,128,8,10,10,8,0,253, + 195,166,36,60,24,56,40,100,69,195,5,11,11,7,1,0, + 112,152,128,64,112,152,136,136,136,216,112,5,7,7,6,1, + 0,120,200,128,96,128,200,112,7,13,13,9,1,253,16,16, + 16,56,84,146,146,146,84,56,16,16,16,6,10,10,6,0, + 253,196,164,36,40,40,24,24,16,48,48,7,10,10,8,0, + 253,108,178,34,34,34,34,34,2,2,2,5,7,7,5,0, + 0,96,160,32,32,32,40,48,7,10,10,9,1,253,24,84, + 210,146,146,84,56,16,16,16,7,7,7,8,0,0,70,202, + 80,112,88,76,70,8,10,10,8,0,0,96,80,16,16,40, + 40,72,68,133,131,8,9,9,8,0,254,68,68,68,68,68, + 77,123,64,192,7,7,7,8,0,0,198,66,34,34,20,20, + 8,6,7,7,8,1,0,120,204,132,132,132,204,120,8,7, + 7,8,0,0,126,164,36,36,36,37,102,5,10,10,7,1, + 0,112,216,136,136,248,136,136,136,216,112,6,10,10,8,1, + 253,120,204,132,132,132,204,184,128,128,128,7,7,7,8,1, + 0,126,200,132,132,132,204,120,5,7,7,6,0,0,120,160, + 32,32,32,40,48,7,7,7,8,0,0,100,162,34,34,34, + 38,28,10,8,16,11,0,0,127,192,160,128,68,64,68,64, + 68,64,68,64,100,192,59,128,9,7,14,11,1,0,99,0, + 136,128,136,128,136,128,136,128,201,128,119,0,6,15,15,7, + 1,253,32,64,56,32,64,120,32,64,128,128,192,120,4,36, + 56,9,10,20,9,0,253,136,128,73,0,73,0,73,0,107, + 0,62,0,28,0,8,0,8,0,8,0,6,14,14,7,1, + 253,32,68,60,16,32,64,64,128,128,192,120,4,36,56,5, + 13,13,7,1,253,24,32,32,32,32,64,128,64,32,32,32, + 32,24,1,13,13,3,1,253,128,128,128,128,128,128,128,128, + 128,128,128,128,128,5,13,13,7,1,253,192,32,32,32,32, + 16,8,16,32,32,32,32,192,6,2,2,8,1,3,100,152, + 255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--17-120-100-100-P-95-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 12 + Calculated Max Values w=16 h=17 x= 7 y=12 dx=17 dy= 0 ascent=13 len=30 + Font Bounding box w=20 h=17 x=-3 y=-4 + Calculated Min Values x=-3 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb12[4136] U8G_SECTION(".progmem.u8g_font_symb12") = { + 0,20,17,253,252,11,2,70,5,85,32,255,252,13,252,12, + 252,0,0,0,4,0,1,3,11,11,5,1,0,64,224,224, + 224,64,64,64,0,64,224,64,11,12,24,11,0,0,128,32, + 128,32,64,64,64,64,63,128,32,128,17,0,17,0,10,0, + 10,0,4,0,4,0,8,11,11,8,0,0,18,18,18,127, + 36,36,36,254,72,72,72,7,12,12,9,0,0,254,2,2, + 2,2,126,2,2,2,2,2,254,11,12,24,13,1,255,48, + 64,111,128,201,0,201,0,154,0,148,192,101,160,11,32,11, + 32,18,96,34,64,33,128,12,11,22,13,0,0,14,0,25, + 0,17,0,26,0,12,240,56,64,76,128,198,128,131,0,197, + 144,120,224,5,8,8,7,1,0,224,16,24,120,24,24,16, + 224,4,14,14,5,0,254,16,32,64,64,128,128,128,128,128, + 128,64,64,32,16,4,14,14,5,0,254,128,64,32,32,16, + 16,16,16,16,16,32,32,64,128,5,5,5,8,1,3,32, + 168,112,168,32,9,9,18,9,0,0,8,0,8,0,8,0, + 8,0,255,128,8,0,8,0,8,0,8,0,3,5,5,4, + 1,254,64,224,96,64,128,9,1,2,9,0,4,255,128,3, + 3,3,4,1,0,64,224,64,5,11,11,5,255,0,8,8, + 16,16,32,32,32,64,64,128,128,7,12,12,8,0,0,56, + 108,68,198,130,130,130,130,198,68,108,56,5,12,12,8,1, + 0,32,96,160,32,32,32,32,32,32,32,32,248,7,12,12, + 8,0,0,56,76,134,2,2,4,4,8,16,34,126,252,6, + 12,12,8,1,0,56,76,132,4,8,56,12,4,4,4,200, + 112,7,12,12,8,0,0,4,4,12,20,20,36,68,68,254, + 4,4,4,7,12,12,8,0,0,62,60,64,64,240,248,12, + 4,4,4,200,240,6,12,12,8,1,0,12,48,96,64,248, + 204,132,132,132,132,76,56,6,12,12,8,1,0,252,252,136, + 8,8,16,16,16,16,32,32,32,6,12,12,8,1,0,48, + 72,132,196,104,48,88,140,132,132,72,48,6,12,12,8,1, + 0,112,200,132,132,132,132,204,124,8,24,48,192,3,8,8, + 4,1,0,64,224,64,0,0,64,224,64,3,10,10,4,1, + 254,64,224,64,0,0,64,224,96,64,128,8,9,9,9,0, + 0,1,6,24,96,128,96,24,6,1,9,4,8,9,0,2, + 255,128,0,0,0,0,255,128,8,9,9,9,0,0,128,96, + 24,6,1,6,24,96,128,6,11,11,7,0,0,120,156,140, + 12,24,16,32,0,32,112,32,8,8,8,9,0,0,113,142, + 0,0,255,0,0,255,11,11,22,12,0,0,4,0,4,0, + 14,0,14,0,19,0,19,0,33,128,63,128,65,192,64,192, + 225,224,9,11,22,11,1,0,254,0,99,0,97,128,97,128, + 99,0,126,0,99,0,97,128,97,128,99,0,254,0,10,11, + 22,12,0,0,241,192,96,128,49,0,26,0,26,0,12,0, + 22,0,19,0,35,0,65,128,227,192,10,11,22,10,0,0, + 4,0,4,0,14,0,14,0,19,0,19,0,35,0,33,128, + 65,128,64,192,255,192,8,11,11,10,1,0,255,97,96,96, + 98,126,98,96,96,97,255,12,11,22,12,0,0,15,0,6, + 0,63,192,102,96,198,48,198,48,198,48,102,96,63,192,6, + 0,15,0,9,11,22,10,1,0,255,128,97,128,96,0,96, + 0,96,0,96,0,96,0,96,0,96,0,96,0,240,0,11, + 11,22,12,0,0,241,224,96,192,96,192,96,192,96,192,127, + 192,96,192,96,192,96,192,96,192,241,224,4,11,11,6,1, + 0,240,96,96,96,96,96,96,96,96,96,240,9,12,24,10, + 0,0,12,0,18,0,17,0,9,0,69,0,163,0,33,128, + 33,0,33,0,33,0,34,0,28,0,10,11,22,12,1,0, + 243,192,97,0,98,0,100,0,104,0,120,0,108,0,102,0, + 99,0,97,128,243,192,11,11,22,11,0,0,4,0,4,0, + 14,0,14,0,19,0,19,0,33,128,33,128,64,192,64,192, + 225,224,13,11,22,14,1,0,224,56,96,112,112,112,112,176, + 88,176,89,48,77,48,78,48,70,48,68,48,224,120,10,11, + 22,11,1,0,225,192,112,128,112,128,88,128,92,128,78,128, + 70,128,67,128,67,128,65,128,224,128,11,11,22,12,0,0, + 31,0,113,192,96,192,192,96,192,96,192,96,192,96,192,96, + 96,192,113,192,31,0,11,11,22,12,1,0,255,224,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 241,224,11,11,22,12,0,0,31,0,113,192,96,192,192,96, + 209,96,223,96,209,96,192,96,96,192,113,192,31,0,8,11, + 11,9,1,0,252,102,99,99,102,124,96,96,96,96,240,9, + 11,22,10,0,0,255,128,96,128,48,0,24,0,12,0,12, + 0,8,0,16,128,32,128,127,128,255,128,10,11,22,10,0, + 0,255,192,140,64,140,64,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,30,0,10,11,22,11,1,0,241,192,96, + 128,49,0,49,0,26,0,12,0,12,0,12,0,12,0,12, + 0,30,0,7,12,12,8,0,252,60,76,128,128,128,128,124, + 62,2,2,60,56,12,12,24,12,0,0,31,128,112,224,96, + 96,192,48,192,48,192,48,192,48,96,96,48,192,137,16,249, + 240,249,240,9,11,22,11,0,0,255,128,255,128,128,128,0, + 0,34,0,62,0,34,0,0,0,128,128,255,128,255,128,12, + 11,22,13,0,0,207,48,102,96,102,96,102,96,102,96,63, + 192,6,0,6,0,6,0,6,0,15,0,8,11,11,10,1, + 0,255,131,134,12,12,24,48,48,97,193,255,3,14,14,6, + 1,254,224,128,128,128,128,128,128,128,128,128,128,128,128,224, + 9,8,16,14,2,0,8,0,28,0,8,0,0,0,0,0, + 65,0,227,128,65,0,3,14,14,5,0,254,224,32,32,32, + 32,32,32,32,32,32,32,32,32,224,9,11,22,11,1,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,255,128,8,1,1,8,0,253,255,10,1,2, + 8,7,12,255,192,10,9,18,11,0,0,57,128,101,128,195, + 0,195,0,195,0,194,0,198,64,101,64,56,128,8,17,17, + 9,0,252,60,70,66,66,70,92,70,67,67,65,65,99,94, + 64,64,64,192,8,12,12,9,0,253,99,162,150,20,28,24, + 24,56,40,105,69,198,7,12,12,8,0,0,120,140,64,48, + 24,44,70,194,130,194,68,56,7,9,9,7,0,0,56,68, + 192,192,120,192,192,66,60,7,14,14,9,1,253,16,16,56, + 84,214,146,146,146,214,84,56,16,16,16,8,13,13,7,255, + 252,97,161,146,18,20,20,8,8,16,16,48,48,48,9,12, + 24,10,0,253,110,0,177,0,33,0,33,0,33,0,33,0, + 33,0,33,0,33,0,1,0,1,0,1,128,6,9,9,5, + 255,0,32,96,160,32,32,32,32,52,24,9,12,24,10,0, + 253,39,0,73,128,201,128,136,128,136,128,136,128,201,128,73, + 0,62,0,8,0,8,0,8,0,8,9,9,9,0,0,70, + 206,80,80,120,76,76,70,79,9,13,26,9,0,0,96,0, + 208,0,144,0,16,0,8,0,24,0,24,0,56,0,40,0, + 36,0,100,128,68,128,195,0,8,13,13,9,1,252,132,132, + 132,132,132,132,132,205,182,128,128,128,128,9,9,18,8,255, + 0,225,128,33,128,49,0,51,0,18,0,26,0,12,0,12, + 0,8,0,7,9,9,9,1,0,56,68,198,130,130,130,198, + 68,56,8,9,9,9,0,0,127,255,164,36,36,36,37,103, + 102,7,12,12,9,1,0,56,108,68,198,130,254,130,130,198, + 68,108,56,7,13,13,9,1,252,56,76,134,134,130,130,198, + 196,184,128,128,128,128,9,9,18,10,1,0,31,128,116,0, + 194,0,195,0,129,0,193,0,65,0,99,0,30,0,7,9, + 9,7,0,0,60,124,144,16,16,16,18,30,12,8,9,9, + 9,1,0,68,226,161,33,33,33,33,50,28,10,10,20,11, + 0,0,127,192,155,0,32,128,100,192,68,64,68,64,68,64, + 68,64,100,192,59,128,9,9,18,11,1,0,54,0,65,0, + 201,128,136,128,136,128,136,128,136,128,201,128,119,0,7,17, + 17,8,0,252,64,88,48,64,92,60,64,128,128,128,128,124, + 62,2,2,60,56,11,13,26,11,0,252,196,96,100,192,36, + 128,36,128,36,128,36,128,36,128,53,128,31,0,4,0,4, + 0,4,0,4,0,7,17,17,8,1,252,32,76,60,32,64, + 64,128,128,128,128,128,124,62,2,2,60,56,5,14,14,8, + 1,254,24,32,32,32,32,32,192,32,32,32,32,32,32,24, + 1,14,14,3,1,253,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,5,14,14,8,1,254,192,32,32,32,32,32, + 24,32,32,32,32,32,32,192,8,2,2,9,0,3,113,142, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,10,11,22,10,255,0,225,128,18,192,10,192,12,0, + 12,0,12,0,12,0,12,0,12,0,12,0,30,0,3,4, + 4,4,1,8,96,96,192,128,8,11,11,9,0,0,1,6, + 24,96,128,96,24,6,1,0,255,8,11,11,3,253,0,1, + 2,2,4,8,16,16,32,64,64,128,11,5,10,12,0,2, + 113,192,138,32,132,32,138,32,113,192,7,15,15,8,0,253, + 6,10,8,8,8,126,16,16,16,16,32,32,32,160,192,9, + 10,20,12,1,255,28,0,62,0,62,0,28,0,107,0,255, + 128,255,128,107,0,8,0,28,0,7,9,9,12,2,0,16, + 56,124,124,254,124,124,56,16,8,9,9,12,2,0,102,255, + 255,255,126,60,60,24,24,9,10,20,12,2,255,8,0,28, + 0,28,0,62,0,127,0,127,0,255,128,107,0,8,0,28, + 0,15,9,18,17,0,0,8,32,16,16,32,8,64,4,255, + 254,64,4,32,8,16,16,8,32,16,9,18,16,0,0,8, + 0,16,0,32,0,64,0,255,255,64,0,32,0,16,0,8, + 0,9,15,30,10,0,254,8,0,28,0,42,0,73,0,136, + 128,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,15,9,18,16,0,0,0,32,0,16,0, + 8,0,4,255,254,0,4,0,8,0,16,0,32,9,15,30, + 10,0,254,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,8,0,8,0,136,128,73,0,42,0,28,0,8, + 0,5,5,5,6,0,6,112,136,136,136,112,9,11,22,9, + 0,0,8,0,8,0,8,0,8,0,255,128,8,0,8,0, + 8,0,8,0,0,0,255,128,6,4,4,7,1,8,108,108, + 216,144,8,11,11,9,0,0,128,96,24,6,1,6,24,96, + 128,0,255,9,9,18,9,0,0,128,128,65,0,34,0,20, + 0,8,0,20,0,34,0,65,0,128,128,10,5,10,11,0, + 2,113,192,138,0,132,0,138,0,113,192,7,14,14,8,0, + 255,120,196,4,2,2,2,58,102,194,194,130,196,68,56,6, + 6,6,8,1,2,120,252,252,252,252,120,8,7,7,9,0, + 1,24,24,0,255,0,24,24,9,10,20,9,0,255,2,0, + 2,0,4,0,255,128,8,0,8,0,255,128,16,0,32,0, + 32,0,8,7,7,9,0,1,255,0,0,255,0,0,255,8, + 5,5,9,0,2,113,142,0,113,142,13,3,6,16,1,0, + 66,16,231,56,66,16,1,17,17,10,4,252,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,16,1,2, + 16,0,4,255,255,9,11,22,10,0,255,0,128,0,128,0, + 128,0,128,0,128,0,128,32,128,96,128,255,128,96,0,32, + 0,9,11,22,13,2,0,68,0,231,0,103,0,50,0,26, + 0,60,0,108,0,102,0,99,0,51,128,113,0,9,14,28, + 11,0,255,30,0,63,128,67,128,65,0,66,0,34,0,19, + 0,1,0,1,128,0,128,0,128,112,128,191,0,28,0,12, + 13,26,13,0,0,113,128,138,192,140,96,196,64,100,128,37, + 0,7,128,5,128,12,192,12,192,8,208,104,96,48,64,12, + 13,26,16,2,252,12,0,17,224,34,48,36,16,72,48,114, + 32,102,96,100,192,115,0,144,0,144,0,144,0,96,0,11, + 11,22,12,1,0,14,0,49,128,64,64,81,64,138,32,132, + 32,138,32,81,64,64,64,49,128,14,0,11,11,22,12,1, + 0,14,0,49,128,68,64,68,64,132,32,191,160,132,32,68, + 64,68,64,49,128,14,0,12,12,24,13,1,0,15,16,48, + 224,64,96,64,160,129,16,130,16,132,16,136,16,80,32,96, + 32,112,192,159,0,11,9,18,12,1,0,14,0,49,128,64, + 64,64,64,128,32,128,32,128,32,128,32,128,32,11,9,18, + 12,1,0,128,32,128,32,128,32,128,32,128,32,64,64,64, + 64,49,128,14,0,10,8,16,11,0,0,255,0,0,128,0, + 64,0,64,0,64,0,64,0,128,255,0,10,10,20,11,0, + 253,255,0,0,128,0,64,0,64,0,64,0,64,0,128,255, + 0,0,0,255,192,11,10,20,11,0,255,0,128,63,224,65, + 0,129,0,130,0,130,0,132,0,68,0,63,224,8,0,10, + 8,16,11,0,0,63,192,64,0,128,0,128,0,128,0,128, + 0,64,0,63,192,10,10,20,11,0,254,63,192,64,0,128, + 0,128,0,128,0,128,0,64,0,63,192,0,0,255,192,7, + 7,7,11,0,0,62,64,128,254,128,64,62,7,9,9,11, + 0,255,4,62,72,136,254,144,80,62,32,11,11,22,12,1, + 0,0,32,0,64,0,128,1,0,2,0,4,0,8,0,16, + 0,32,0,64,0,255,192,10,11,22,11,1,1,255,192,192, + 128,96,128,97,0,49,0,50,0,50,0,28,0,28,0,8, + 0,8,0,11,11,22,13,1,0,14,0,49,128,94,64,73, + 64,137,32,142,32,138,32,73,64,93,192,49,128,14,0,11, + 11,22,13,1,0,14,0,49,128,70,64,73,64,145,32,144, + 32,144,32,73,64,70,64,49,128,14,0,13,6,12,14,0, + 5,255,24,171,16,34,176,34,176,34,80,119,88,12,15,30, + 13,1,254,255,240,96,96,96,96,96,96,96,96,96,96,96, + 96,96,96,96,96,96,96,96,96,96,96,96,96,96,96,240, + 240,7,16,16,9,1,253,2,2,2,2,2,4,68,196,36, + 36,20,20,20,8,8,8,2,2,2,4,1,3,192,192,11, + 5,10,12,0,0,255,224,0,32,0,32,0,32,0,32,9, + 8,16,10,0,0,8,0,8,0,20,0,34,0,34,0,65, + 0,128,128,128,128,9,8,16,10,0,0,128,128,128,128,65, + 0,34,0,34,0,20,0,8,0,8,0,16,9,18,17,0, + 0,8,16,16,8,63,252,64,2,128,1,64,2,63,252,16, + 8,8,16,15,9,18,16,0,0,8,0,16,0,63,254,64, + 0,128,0,64,0,63,254,16,0,8,0,9,15,30,10,0, + 254,8,0,20,0,34,0,99,0,162,128,34,0,34,0,34, + 0,34,0,34,0,34,0,34,0,34,0,34,0,34,0,15, + 9,18,16,0,0,0,32,0,16,255,248,0,4,0,2,0, + 4,255,248,0,16,0,32,9,15,30,10,0,254,34,0,34, + 0,34,0,34,0,34,0,34,0,34,0,34,0,34,0,34, + 0,162,128,99,0,34,0,20,0,8,0,7,12,12,8,0, + 0,16,40,40,68,68,130,130,68,68,40,40,16,4,15,15, + 5,0,254,16,16,32,32,64,64,128,128,128,64,64,32,32, + 16,16,11,11,22,13,1,0,14,0,49,128,94,64,81,64, + 145,32,158,32,145,32,81,64,81,64,49,128,14,0,11,11, + 22,13,1,0,14,0,49,128,70,64,73,64,144,32,144,32, + 144,32,73,64,70,64,49,128,14,0,11,6,12,13,0,5, + 252,32,38,96,38,96,37,160,37,160,36,32,11,15,30,11, + 0,254,255,192,112,64,56,64,24,0,12,0,14,0,7,0, + 3,0,2,0,4,0,8,0,16,32,32,64,127,192,255,128, + 6,17,17,6,1,252,4,8,16,32,32,64,64,64,64,128, + 128,128,128,128,128,128,128,1,17,17,6,1,252,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,6,17, + 17,6,1,252,128,128,128,128,128,128,128,128,64,64,64,64, + 32,32,16,8,4,5,17,17,6,0,252,248,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,1,17,17,6, + 0,252,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,5,17,17,6,0,252,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,248,4,17,17,8,3,252, + 48,64,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,4,17,17,8,0,252,16,16,16,16,16,16,16,32,192, + 32,16,16,16,16,16,16,16,4,17,17,8,3,252,128,128, + 128,128,128,128,128,128,128,128,128,128,128,128,128,64,48,1, + 17,17,8,3,252,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,255,4,15,15,5,0,254,128,128,64, + 64,32,32,16,16,16,32,32,64,64,128,128,5,17,17,5, + 0,252,24,40,32,32,32,32,32,32,32,32,32,32,32,32, + 32,160,192,6,17,17,11,5,252,24,44,72,64,128,128,128, + 128,128,128,128,128,128,128,128,128,128,1,17,17,11,5,252, + 128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128, + 128,6,17,17,11,0,252,4,4,4,4,4,4,4,4,4, + 4,4,4,4,8,72,208,96,6,17,17,7,1,252,128,64, + 32,16,16,8,8,8,8,4,4,4,4,4,4,4,4,1, + 17,17,6,5,252,128,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,128,128,6,17,17,6,0,252,4,4,4,4, + 4,4,4,4,8,8,8,8,16,16,32,64,128,5,17,17, + 6,1,252,248,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,1,17,17,6,5,252,128,128,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,128,5,17,17,6,1, + 252,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,248,4,17,17,8,0,252,192,32,16,16,16,16,16,16, + 16,16,16,16,16,16,16,16,16,4,17,17,8,3,252,128, + 128,128,128,128,128,128,64,48,64,128,128,128,128,128,128,128, + 4,17,17,8,0,252,16,16,16,16,16,16,16,16,16,16, + 16,16,16,16,16,32,192,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--17-120-100-100-P-95-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 12 + Calculated Max Values w=13 h=17 x= 7 y=12 dx=14 dy= 0 ascent=13 len=26 + Font Bounding box w=20 h=17 x=-3 y=-4 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =12 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb12r[1985] U8G_SECTION(".progmem.u8g_font_symb12r") = { + 0,20,17,253,252,11,2,70,5,85,32,127,252,13,252,12, + 252,0,0,0,4,0,1,3,11,11,5,1,0,64,224,224, + 224,64,64,64,0,64,224,64,11,12,24,11,0,0,128,32, + 128,32,64,64,64,64,63,128,32,128,17,0,17,0,10,0, + 10,0,4,0,4,0,8,11,11,8,0,0,18,18,18,127, + 36,36,36,254,72,72,72,7,12,12,9,0,0,254,2,2, + 2,2,126,2,2,2,2,2,254,11,12,24,13,1,255,48, + 64,111,128,201,0,201,0,154,0,148,192,101,160,11,32,11, + 32,18,96,34,64,33,128,12,11,22,13,0,0,14,0,25, + 0,17,0,26,0,12,240,56,64,76,128,198,128,131,0,197, + 144,120,224,5,8,8,7,1,0,224,16,24,120,24,24,16, + 224,4,14,14,5,0,254,16,32,64,64,128,128,128,128,128, + 128,64,64,32,16,4,14,14,5,0,254,128,64,32,32,16, + 16,16,16,16,16,32,32,64,128,5,5,5,8,1,3,32, + 168,112,168,32,9,9,18,9,0,0,8,0,8,0,8,0, + 8,0,255,128,8,0,8,0,8,0,8,0,3,5,5,4, + 1,254,64,224,96,64,128,9,1,2,9,0,4,255,128,3, + 3,3,4,1,0,64,224,64,5,11,11,5,255,0,8,8, + 16,16,32,32,32,64,64,128,128,7,12,12,8,0,0,56, + 108,68,198,130,130,130,130,198,68,108,56,5,12,12,8,1, + 0,32,96,160,32,32,32,32,32,32,32,32,248,7,12,12, + 8,0,0,56,76,134,2,2,4,4,8,16,34,126,252,6, + 12,12,8,1,0,56,76,132,4,8,56,12,4,4,4,200, + 112,7,12,12,8,0,0,4,4,12,20,20,36,68,68,254, + 4,4,4,7,12,12,8,0,0,62,60,64,64,240,248,12, + 4,4,4,200,240,6,12,12,8,1,0,12,48,96,64,248, + 204,132,132,132,132,76,56,6,12,12,8,1,0,252,252,136, + 8,8,16,16,16,16,32,32,32,6,12,12,8,1,0,48, + 72,132,196,104,48,88,140,132,132,72,48,6,12,12,8,1, + 0,112,200,132,132,132,132,204,124,8,24,48,192,3,8,8, + 4,1,0,64,224,64,0,0,64,224,64,3,10,10,4,1, + 254,64,224,64,0,0,64,224,96,64,128,8,9,9,9,0, + 0,1,6,24,96,128,96,24,6,1,9,4,8,9,0,2, + 255,128,0,0,0,0,255,128,8,9,9,9,0,0,128,96, + 24,6,1,6,24,96,128,6,11,11,7,0,0,120,156,140, + 12,24,16,32,0,32,112,32,8,8,8,9,0,0,113,142, + 0,0,255,0,0,255,11,11,22,12,0,0,4,0,4,0, + 14,0,14,0,19,0,19,0,33,128,63,128,65,192,64,192, + 225,224,9,11,22,11,1,0,254,0,99,0,97,128,97,128, + 99,0,126,0,99,0,97,128,97,128,99,0,254,0,10,11, + 22,12,0,0,241,192,96,128,49,0,26,0,26,0,12,0, + 22,0,19,0,35,0,65,128,227,192,10,11,22,10,0,0, + 4,0,4,0,14,0,14,0,19,0,19,0,35,0,33,128, + 65,128,64,192,255,192,8,11,11,10,1,0,255,97,96,96, + 98,126,98,96,96,97,255,12,11,22,12,0,0,15,0,6, + 0,63,192,102,96,198,48,198,48,198,48,102,96,63,192,6, + 0,15,0,9,11,22,10,1,0,255,128,97,128,96,0,96, + 0,96,0,96,0,96,0,96,0,96,0,96,0,240,0,11, + 11,22,12,0,0,241,224,96,192,96,192,96,192,96,192,127, + 192,96,192,96,192,96,192,96,192,241,224,4,11,11,6,1, + 0,240,96,96,96,96,96,96,96,96,96,240,9,12,24,10, + 0,0,12,0,18,0,17,0,9,0,69,0,163,0,33,128, + 33,0,33,0,33,0,34,0,28,0,10,11,22,12,1,0, + 243,192,97,0,98,0,100,0,104,0,120,0,108,0,102,0, + 99,0,97,128,243,192,11,11,22,11,0,0,4,0,4,0, + 14,0,14,0,19,0,19,0,33,128,33,128,64,192,64,192, + 225,224,13,11,22,14,1,0,224,56,96,112,112,112,112,176, + 88,176,89,48,77,48,78,48,70,48,68,48,224,120,10,11, + 22,11,1,0,225,192,112,128,112,128,88,128,92,128,78,128, + 70,128,67,128,67,128,65,128,224,128,11,11,22,12,0,0, + 31,0,113,192,96,192,192,96,192,96,192,96,192,96,192,96, + 96,192,113,192,31,0,11,11,22,12,1,0,255,224,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 241,224,11,11,22,12,0,0,31,0,113,192,96,192,192,96, + 209,96,223,96,209,96,192,96,96,192,113,192,31,0,8,11, + 11,9,1,0,252,102,99,99,102,124,96,96,96,96,240,9, + 11,22,10,0,0,255,128,96,128,48,0,24,0,12,0,12, + 0,8,0,16,128,32,128,127,128,255,128,10,11,22,10,0, + 0,255,192,140,64,140,64,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,30,0,10,11,22,11,1,0,241,192,96, + 128,49,0,49,0,26,0,12,0,12,0,12,0,12,0,12, + 0,30,0,7,12,12,8,0,252,60,76,128,128,128,128,124, + 62,2,2,60,56,12,12,24,12,0,0,31,128,112,224,96, + 96,192,48,192,48,192,48,192,48,96,96,48,192,137,16,249, + 240,249,240,9,11,22,11,0,0,255,128,255,128,128,128,0, + 0,34,0,62,0,34,0,0,0,128,128,255,128,255,128,12, + 11,22,13,0,0,207,48,102,96,102,96,102,96,102,96,63, + 192,6,0,6,0,6,0,6,0,15,0,8,11,11,10,1, + 0,255,131,134,12,12,24,48,48,97,193,255,3,14,14,6, + 1,254,224,128,128,128,128,128,128,128,128,128,128,128,128,224, + 9,8,16,14,2,0,8,0,28,0,8,0,0,0,0,0, + 65,0,227,128,65,0,3,14,14,5,0,254,224,32,32,32, + 32,32,32,32,32,32,32,32,32,224,9,11,22,11,1,0, + 8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0, + 8,0,8,0,255,128,8,1,1,8,0,253,255,10,1,2, + 8,7,12,255,192,10,9,18,11,0,0,57,128,101,128,195, + 0,195,0,195,0,194,0,198,64,101,64,56,128,8,17,17, + 9,0,252,60,70,66,66,70,92,70,67,67,65,65,99,94, + 64,64,64,192,8,12,12,9,0,253,99,162,150,20,28,24, + 24,56,40,105,69,198,7,12,12,8,0,0,120,140,64,48, + 24,44,70,194,130,194,68,56,7,9,9,7,0,0,56,68, + 192,192,120,192,192,66,60,7,14,14,9,1,253,16,16,56, + 84,214,146,146,146,214,84,56,16,16,16,8,13,13,7,255, + 252,97,161,146,18,20,20,8,8,16,16,48,48,48,9,12, + 24,10,0,253,110,0,177,0,33,0,33,0,33,0,33,0, + 33,0,33,0,33,0,1,0,1,0,1,128,6,9,9,5, + 255,0,32,96,160,32,32,32,32,52,24,9,12,24,10,0, + 253,39,0,73,128,201,128,136,128,136,128,136,128,201,128,73, + 0,62,0,8,0,8,0,8,0,8,9,9,9,0,0,70, + 206,80,80,120,76,76,70,79,9,13,26,9,0,0,96,0, + 208,0,144,0,16,0,8,0,24,0,24,0,56,0,40,0, + 36,0,100,128,68,128,195,0,8,13,13,9,1,252,132,132, + 132,132,132,132,132,205,182,128,128,128,128,9,9,18,8,255, + 0,225,128,33,128,49,0,51,0,18,0,26,0,12,0,12, + 0,8,0,7,9,9,9,1,0,56,68,198,130,130,130,198, + 68,56,8,9,9,9,0,0,127,255,164,36,36,36,37,103, + 102,7,12,12,9,1,0,56,108,68,198,130,254,130,130,198, + 68,108,56,7,13,13,9,1,252,56,76,134,134,130,130,198, + 196,184,128,128,128,128,9,9,18,10,1,0,31,128,116,0, + 194,0,195,0,129,0,193,0,65,0,99,0,30,0,7,9, + 9,7,0,0,60,124,144,16,16,16,18,30,12,8,9,9, + 9,1,0,68,226,161,33,33,33,33,50,28,10,10,20,11, + 0,0,127,192,155,0,32,128,100,192,68,64,68,64,68,64, + 68,64,100,192,59,128,9,9,18,11,1,0,54,0,65,0, + 201,128,136,128,136,128,136,128,136,128,201,128,119,0,7,17, + 17,8,0,252,64,88,48,64,92,60,64,128,128,128,128,124, + 62,2,2,60,56,11,13,26,11,0,252,196,96,100,192,36, + 128,36,128,36,128,36,128,36,128,53,128,31,0,4,0,4, + 0,4,0,4,0,7,17,17,8,1,252,32,76,60,32,64, + 64,128,128,128,128,128,124,62,2,2,60,56,5,14,14,8, + 1,254,24,32,32,32,32,32,192,32,32,32,32,32,32,24, + 1,14,14,3,1,253,128,128,128,128,128,128,128,128,128,128, + 128,128,128,128,5,14,14,8,1,254,192,32,32,32,32,32, + 24,32,32,32,32,32,32,192,8,2,2,9,0,3,113,142, + 255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--20-140-100-100-P-107-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w=19 h=19 x= 9 y=13 dx=19 dy= 0 ascent=14 len=34 + Font Bounding box w=20 h=19 x=-1 y=-5 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =14 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb14[4665] U8G_SECTION(".progmem.u8g_font_symb14") = { + 0,20,19,255,251,13,2,127,6,16,32,255,252,14,251,13, + 252,0,0,0,5,0,1,2,13,13,6,2,0,192,192,192, + 192,192,192,192,64,64,0,0,192,192,13,13,26,13,0,0, + 192,24,192,24,96,48,96,48,63,224,48,96,24,192,24,192, + 8,128,13,128,5,0,7,0,2,0,10,13,26,9,255,0, + 9,0,9,0,9,0,9,0,127,192,18,0,18,0,18,0, + 255,128,36,0,36,0,36,0,36,0,8,13,13,10,1,0, + 255,3,3,3,3,3,127,3,3,3,3,3,255,13,13,26, + 15,1,0,56,96,103,224,196,192,197,128,233,128,115,0,6, + 0,6,112,12,200,25,136,25,136,49,208,48,224,12,13,26, + 13,1,0,28,0,54,0,34,0,38,0,60,0,57,224,124, + 192,238,128,199,128,195,0,195,144,103,240,60,224,6,9,9, + 8,1,0,240,56,28,12,124,12,28,56,240,4,17,17,6, + 1,252,16,48,96,96,192,192,192,192,192,192,192,192,192,96, + 96,48,16,4,17,17,6,1,252,128,192,96,96,48,48,48, + 48,48,48,48,48,48,96,96,192,128,7,7,7,9,1,3, + 16,214,124,56,124,214,16,8,8,8,10,1,1,24,24,24, + 255,255,24,24,24,3,5,5,5,1,253,96,96,32,96,192, + 7,2,2,9,1,4,254,254,2,2,2,4,1,0,192,192, + 5,13,13,5,0,0,24,24,24,48,48,48,96,96,96,96, + 192,192,192,8,13,13,9,0,0,60,102,102,195,195,195,195, + 195,195,195,102,102,60,6,13,13,9,1,0,48,240,176,48, + 48,48,48,48,48,48,48,120,252,7,13,13,9,1,0,60, + 126,206,134,6,6,12,28,24,48,98,254,254,7,13,13,9, + 1,0,124,206,134,6,12,56,60,14,6,6,6,204,248,8, + 13,13,9,0,0,6,14,14,30,54,54,102,198,198,255,6, + 6,6,7,13,13,9,1,0,126,124,192,192,240,60,12,14, + 6,6,12,220,240,8,13,13,9,0,0,14,56,48,96,96, + 252,198,195,195,195,195,102,60,8,13,13,9,0,0,127,255, + 134,6,12,12,12,24,24,24,48,48,48,8,13,13,9,0, + 0,60,102,102,102,116,60,126,102,195,195,195,102,60,8,13, + 13,9,0,0,60,110,199,195,195,195,227,127,58,6,12,56, + 224,2,9,9,5,2,0,192,192,0,0,0,0,0,192,192, + 3,12,12,5,1,253,96,96,0,0,0,0,0,96,96,32, + 96,192,9,9,18,10,0,0,3,128,15,0,60,0,240,0, + 192,0,240,0,60,0,15,0,3,128,8,5,5,10,1,2, + 255,255,0,255,255,9,9,18,10,0,0,224,0,120,0,30, + 0,7,128,1,128,7,128,30,0,120,0,224,0,6,13,13, + 8,1,0,120,220,204,204,12,12,24,48,48,48,0,48,48, + 8,9,9,10,1,0,115,255,206,0,255,255,0,255,255,12, + 13,26,14,1,0,4,0,14,0,14,0,11,0,27,0,19, + 0,17,128,49,128,63,192,32,192,96,192,96,224,241,240,9, + 13,26,11,1,0,252,0,102,0,99,0,99,0,99,0,102, + 0,126,0,99,0,97,128,97,128,97,128,99,128,255,0,12, + 13,26,14,1,0,240,112,112,96,56,192,24,192,29,128,15, + 0,6,0,15,0,27,128,49,128,49,192,96,224,224,240,11, + 13,26,11,0,0,4,0,6,0,14,0,11,0,19,0,19, + 0,17,128,33,128,33,192,64,192,64,192,128,96,255,224,9, + 13,26,11,1,0,255,128,97,128,96,128,96,0,96,0,97, + 0,127,0,97,0,96,0,96,0,96,128,97,128,255,128,12, + 13,26,14,1,0,15,0,6,0,31,128,102,96,198,48,198, + 48,198,48,198,48,198,48,102,96,31,128,6,0,15,0,10, + 13,26,11,0,0,255,192,112,192,48,64,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,120,0,11, + 13,26,13,1,0,241,224,96,192,96,192,96,192,96,192,96, + 192,127,192,96,192,96,192,96,192,96,192,96,192,241,224,4, + 13,13,6,1,0,240,96,96,96,96,96,96,96,96,96,96, + 96,240,11,13,26,12,1,0,6,0,11,0,9,128,5,128, + 99,128,241,128,177,192,49,160,49,128,49,128,49,128,59,0, + 30,0,11,13,26,14,1,0,243,192,97,128,99,0,102,0, + 108,0,120,0,120,0,108,0,102,0,99,0,99,128,97,192, + 241,224,12,13,26,13,0,0,6,0,6,0,15,0,11,0, + 11,0,25,128,17,128,17,128,48,192,32,192,32,96,96,96, + 240,240,14,13,26,16,1,0,224,28,112,56,112,56,88,120, + 88,88,88,216,76,152,76,152,77,152,71,24,71,24,67,24, + 226,60,11,13,26,13,1,0,224,224,112,64,112,64,88,64, + 76,64,76,64,70,64,67,64,67,192,65,192,64,192,64,192, + 224,64,11,13,26,13,1,0,14,0,49,128,96,192,224,224, + 192,96,192,96,192,96,192,96,192,96,224,224,96,192,49,128, + 14,0,11,13,26,13,1,0,255,224,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 241,224,11,13,26,13,1,0,14,0,49,128,96,192,224,224, + 192,96,209,96,223,96,209,96,192,96,224,224,96,192,49,128, + 14,0,8,13,13,10,1,0,254,103,99,99,99,103,126,96, + 96,96,96,96,240,10,13,26,11,0,0,255,128,193,128,96, + 128,48,0,24,0,12,0,12,0,8,0,16,0,32,64,64, + 192,255,128,255,128,10,13,26,12,1,0,255,192,204,192,140, + 64,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,30,0,12,13,26,13,0,0,248,240,112,96,48, + 192,24,192,29,128,15,0,15,0,6,0,6,0,6,0,6, + 0,6,0,15,0,6,13,13,8,1,252,60,124,192,128,128, + 128,192,120,60,4,4,60,56,13,13,26,14,0,0,7,0, + 24,192,48,96,112,112,96,48,96,48,96,48,96,48,48,96, + 56,224,136,136,248,248,248,248,10,13,26,12,1,0,127,128, + 127,128,64,128,0,0,33,0,63,0,63,0,33,0,0,0, + 128,64,128,64,255,192,255,192,14,13,26,15,0,0,199,140, + 99,24,99,24,99,24,99,24,51,48,31,224,3,0,3,0, + 3,0,3,0,3,0,7,128,9,13,26,11,1,0,255,128, + 195,128,131,0,7,0,6,0,14,0,28,0,24,0,56,0, + 112,0,96,128,225,128,255,128,4,17,17,6,1,252,240,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,240,10, + 9,18,14,2,0,12,0,12,0,0,0,0,0,0,0,0, + 0,0,0,192,192,192,192,4,17,17,6,1,252,240,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,240,10,13, + 26,12,1,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,255,192,255,192,9,2, + 4,9,0,252,255,128,255,128,10,1,2,9,9,13,255,192, + 11,9,18,12,1,0,60,192,101,128,195,0,195,0,195,0, + 195,0,195,0,101,32,56,192,8,18,18,10,1,252,60,70, + 198,198,198,204,198,195,195,195,195,195,230,220,192,192,192,192, + 10,13,26,10,0,252,96,192,241,192,145,128,19,0,23,0, + 14,0,12,0,28,0,26,0,50,0,98,64,227,192,193,128, + 7,14,14,9,1,0,56,76,64,96,48,56,108,198,198,198, + 198,198,108,56,6,9,9,8,1,0,120,236,204,192,112,192, + 192,228,120,9,16,32,11,1,252,8,0,8,0,8,0,62, + 0,107,0,201,128,201,128,201,128,201,128,201,128,107,0,62, + 0,8,0,8,0,8,0,8,0,8,13,13,8,0,252,195, + 227,163,38,38,22,20,28,12,24,24,24,24,9,13,26,11, + 1,252,103,0,233,128,177,128,49,128,49,128,49,128,49,128, + 49,128,49,128,1,128,1,128,1,128,1,128,5,9,9,6, + 1,0,96,224,96,96,96,96,96,104,112,9,13,26,11,1, + 252,102,0,207,0,201,128,201,128,201,128,201,128,73,0,107, + 0,62,0,8,0,8,0,8,0,8,0,9,9,18,10,0, + 0,99,128,229,128,104,0,112,0,120,0,108,0,102,0,99, + 0,97,128,10,14,28,10,0,0,48,0,120,0,72,0,8, + 0,8,0,8,0,24,0,28,0,52,0,52,0,102,0,98, + 64,195,192,193,128,9,13,26,11,2,252,66,0,198,0,198, + 0,198,0,198,0,198,0,198,128,251,128,123,0,64,0,192, + 0,192,0,192,0,8,9,9,10,1,0,195,195,97,98,50, + 52,28,24,8,8,9,9,10,1,0,60,102,195,195,195,195, + 195,102,60,9,9,18,10,0,0,127,128,255,128,146,0,18, + 0,18,0,18,0,50,128,115,128,99,0,8,13,13,10,1, + 0,60,102,195,195,195,195,255,195,195,195,195,102,60,8,13, + 13,10,1,252,60,70,195,195,195,195,195,230,220,192,192,192, + 192,10,9,18,11,1,0,31,192,127,192,102,0,195,0,195, + 0,195,0,195,0,102,0,60,0,7,9,9,8,0,0,126, + 254,144,16,16,16,18,30,28,9,9,18,11,1,0,99,0, + 241,128,177,128,49,128,49,128,49,128,49,128,59,0,30,0, + 11,11,22,12,0,0,63,224,127,224,153,128,48,192,32,64, + 102,96,102,96,102,96,102,96,54,192,57,192,10,9,18,12, + 1,0,51,0,97,128,64,128,204,192,204,192,204,192,204,192, + 109,128,115,128,7,19,19,9,1,251,96,142,252,32,64,64, + 124,120,192,128,128,128,192,252,126,2,2,30,28,13,13,26, + 13,0,252,226,56,114,112,50,96,50,96,50,96,50,96,26, + 192,26,192,15,128,2,0,2,0,2,0,2,0,7,19,19, + 9,1,251,96,134,158,120,96,64,128,128,128,128,128,128,192, + 252,126,2,2,30,28,7,17,17,9,1,252,14,24,48,48, + 48,48,48,96,192,96,48,48,48,48,48,24,14,2,17,17, + 4,1,252,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,7,17,17,9,1,252,224,48,24,24,24,24, + 24,12,6,12,24,24,24,24,24,48,224,8,3,3,10,1, + 4,115,255,206,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,11,13,26,12,0,0,225,192,115,32, + 58,96,28,96,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,30,0,4,5,5,5,1,9,48,112,96,192, + 128,9,12,24,10,0,0,3,128,15,0,60,0,240,0,192, + 0,240,0,60,0,15,0,3,128,0,0,255,128,255,128,8, + 13,13,5,255,0,3,6,6,12,12,24,24,48,48,96,96, + 192,192,12,5,10,13,0,3,121,224,207,48,134,16,207,48, + 121,224,9,17,34,9,0,252,3,128,5,128,12,0,12,0, + 12,0,127,0,24,0,24,0,24,0,24,0,24,0,24,0, + 24,0,24,0,24,0,208,0,224,0,10,9,18,14,2,0, + 12,0,30,0,30,0,30,0,109,128,255,192,255,192,109,128, + 12,0,9,9,18,13,2,0,8,0,28,0,62,0,127,0, + 255,128,127,0,62,0,28,0,8,0,9,9,18,13,2,0, + 99,0,247,128,255,128,255,128,127,0,127,0,62,0,28,0, + 8,0,10,9,18,14,2,0,12,0,30,0,63,0,127,128, + 255,192,255,192,109,128,12,0,12,0,17,8,24,19,1,1, + 24,12,0,48,6,0,96,3,0,255,255,128,255,255,128,96, + 3,0,48,6,0,24,12,0,18,8,24,18,0,1,24,0, + 0,48,0,0,96,0,0,255,255,192,255,255,192,96,0,0, + 48,0,0,24,0,0,8,19,19,10,1,251,24,60,126,219, + 153,24,24,24,24,24,24,24,24,24,24,24,24,24,24,18, + 8,24,18,0,1,0,6,0,0,3,0,0,1,128,255,255, + 192,255,255,192,0,1,128,0,3,0,0,6,0,8,19,19, + 10,1,251,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,153,219,126,60,24,5,6,6,7,1,7,112,248,216,216, + 248,112,8,11,11,10,1,0,24,24,24,255,255,24,24,24, + 0,255,255,8,5,5,8,0,9,51,119,102,204,136,9,12, + 24,10,0,0,224,0,120,0,30,0,7,128,1,128,7,128, + 30,0,120,0,224,0,0,0,255,128,255,128,10,9,18,10, + 0,0,225,192,115,128,51,0,30,0,12,0,30,0,51,0, + 115,128,225,192,11,5,10,12,0,3,121,224,207,0,134,0, + 207,0,121,224,7,14,14,9,1,0,120,204,134,6,6,6, + 62,102,198,198,198,196,236,120,5,6,6,9,2,2,112,248, + 248,248,248,112,8,8,8,10,1,1,24,24,0,255,255,0, + 24,24,8,9,9,10,1,0,12,12,255,255,24,255,255,48, + 48,8,8,8,10,1,1,255,255,0,255,255,0,255,255,8, + 7,7,10,1,2,115,255,206,0,115,255,206,14,2,4,18, + 2,0,195,12,195,12,2,19,19,10,4,251,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,19, + 2,6,19,0,4,255,255,224,255,255,224,9,12,24,12,1, + 0,1,128,1,128,1,128,1,128,1,128,1,128,33,128,97, + 128,255,128,255,128,96,0,32,0,11,13,26,13,1,0,194, + 0,227,192,113,224,56,224,57,128,125,0,207,0,199,0,227, + 0,115,128,49,192,112,192,240,64,10,15,30,13,1,255,31, + 192,63,192,96,128,65,0,66,0,34,0,19,0,3,128,1, + 192,0,192,0,192,112,192,248,128,31,0,14,0,13,14,28, + 15,1,0,121,192,254,224,142,112,134,48,198,96,118,128,54, + 64,38,96,6,96,6,96,6,96,6,96,108,120,184,48,12, + 15,30,14,1,252,12,0,24,0,49,224,103,48,204,48,216, + 48,214,48,246,96,100,224,119,192,179,128,152,0,152,0,216, + 0,112,0,12,13,26,14,1,0,31,128,57,192,96,96,217, + 176,221,176,143,16,134,16,143,16,219,176,217,176,96,96,57, + 192,31,128,12,13,26,14,1,0,31,128,57,192,102,96,198, + 48,198,48,191,208,191,208,134,16,198,48,198,48,96,96,57, + 192,31,128,12,13,26,14,1,0,31,176,57,240,96,96,192, + 240,193,176,131,16,134,16,140,16,216,48,240,48,96,96,249, + 192,223,128,12,9,18,14,1,0,31,128,57,192,96,96,224, + 112,192,48,192,48,192,48,192,48,192,48,12,9,18,14,1, + 0,192,48,192,48,192,48,192,48,192,48,224,112,96,96,57, + 192,31,128,12,9,18,13,1,0,255,128,255,224,0,96,0, + 48,0,48,0,48,0,96,255,224,255,128,12,12,24,13,0, + 253,255,128,255,224,0,96,0,48,0,48,0,48,0,96,255, + 224,255,128,0,0,255,240,255,240,12,13,26,13,0,254,0, + 96,0,192,31,240,127,240,97,128,195,0,195,0,198,0,102, + 0,127,240,31,240,24,0,48,0,12,9,18,13,0,0,31, + 240,127,240,96,0,192,0,192,0,192,0,96,0,127,240,31, + 240,12,12,24,13,0,253,31,240,127,240,96,0,192,0,192, + 0,192,0,96,0,127,240,31,240,0,0,255,240,255,240,9, + 9,18,12,1,0,31,128,127,128,224,0,192,0,255,128,192, + 0,224,0,127,128,31,128,10,11,22,12,1,255,0,128,31, + 192,127,192,226,0,196,0,255,128,200,0,240,0,127,192,63, + 192,64,0,13,13,26,14,0,0,0,24,0,48,0,96,0, + 192,1,128,3,0,6,0,12,0,24,0,48,0,96,0,192, + 0,255,248,11,13,26,13,1,0,255,224,224,32,96,96,96, + 64,112,192,48,128,48,128,57,128,25,0,27,0,14,0,14, + 0,4,0,13,13,26,15,1,0,31,192,56,224,96,48,223, + 24,205,152,205,152,205,152,207,24,205,152,220,216,96,48,56, + 224,31,192,13,13,26,15,1,0,31,192,56,224,96,48,199, + 152,205,152,204,152,204,24,204,24,204,152,199,24,96,48,56, + 224,31,192,14,8,16,16,1,5,251,28,171,24,35,24,34, + 168,34,168,34,168,34,72,119,92,14,16,32,15,0,254,255, + 252,120,120,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,48,120,120,252,252,9, + 14,28,10,0,0,0,128,0,128,0,128,0,128,48,128,113, + 0,217,0,25,0,25,0,13,0,14,0,6,0,6,0,6, + 0,2,2,2,4,1,4,192,192,11,6,12,13,1,0,255, + 224,255,224,0,96,0,96,0,96,0,96,10,9,18,11,0, + 0,12,0,12,0,30,0,51,0,51,0,97,128,97,128,192, + 192,192,192,10,9,18,11,0,0,192,192,192,192,97,128,97, + 128,51,0,51,0,30,0,12,0,12,0,18,9,27,18,0, + 0,8,4,0,24,6,0,63,255,0,127,255,128,224,1,192, + 127,255,128,63,255,0,24,6,0,8,4,0,16,9,18,18, + 1,0,8,0,24,0,63,255,127,255,224,0,127,255,63,255, + 24,0,8,0,9,17,34,11,1,253,8,0,28,0,54,0, + 119,0,247,128,54,0,54,0,54,0,54,0,54,0,54,0, + 54,0,54,0,54,0,54,0,54,0,54,0,16,9,18,18, + 1,0,0,16,0,24,255,252,255,254,0,7,255,254,255,252, + 0,24,0,16,9,17,34,11,1,253,54,0,54,0,54,0, + 54,0,54,0,54,0,54,0,54,0,54,0,54,0,54,0, + 54,0,247,128,119,0,54,0,28,0,8,0,9,14,28,9, + 0,0,28,0,28,0,54,0,54,0,99,0,99,0,193,128, + 193,128,99,0,99,0,54,0,54,0,28,0,28,0,5,17, + 17,6,0,253,24,24,48,48,96,96,192,192,128,192,192,96, + 96,48,48,24,24,13,13,26,15,1,0,31,192,56,224,96, + 48,207,24,205,152,205,152,207,24,205,152,205,152,205,152,96, + 48,56,224,31,192,13,13,26,15,1,0,31,192,56,224,96, + 48,199,24,204,152,204,24,204,24,204,24,204,152,199,24,96, + 48,56,224,31,192,13,8,16,15,1,5,251,24,35,24,35, + 24,34,168,34,168,34,168,34,72,34,72,12,16,32,13,0, + 254,255,224,224,96,112,32,56,0,28,0,14,0,7,0,3, + 0,6,0,12,0,24,0,48,0,96,16,192,48,255,240,255, + 240,6,19,19,7,1,251,4,12,24,24,48,48,96,96,96, + 96,192,192,192,192,192,192,192,192,192,2,19,19,7,1,251, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,6,19,19,7,1,251,192,192,192,192,192,192,192, + 192,192,224,96,96,96,48,48,24,24,12,4,5,19,19,7, + 1,251,248,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,2,19,19,7,1,251,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,5,19, + 19,7,1,251,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,248,5,19,19,9,4,251,56,96,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 5,19,19,9,1,251,24,24,24,24,24,24,16,48,96,192, + 96,48,16,24,24,24,24,24,24,5,19,19,9,4,251,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 96,56,2,19,19,9,4,251,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,255,5,17,17,6, + 0,253,192,192,96,96,48,48,24,24,8,24,24,48,48,96, + 96,192,192,6,19,19,6,0,251,28,28,48,48,48,48,48, + 48,48,48,48,48,48,48,48,48,48,224,224,7,19,19,13, + 5,251,28,126,102,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,2,19,19,13,5,251,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,7,19, + 19,13,0,251,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,204,252,112,6,19,19,7,0,251,128,192,96, + 96,48,48,24,24,24,24,12,12,12,12,12,12,12,12,12, + 2,19,19,7,4,251,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,6,19,19,7,0,251,12, + 12,12,12,12,12,12,12,12,24,24,24,24,48,48,96,96, + 192,128,5,19,19,7,1,251,248,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,2,19,19,7,4, + 251,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,5,19,19,7,1,251,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,248,5,19,19, + 9,1,251,224,48,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,5,19,19,9,4,251,192,192,192,192, + 192,192,64,96,48,24,48,96,64,192,192,192,192,192,192,5, + 19,19,9,1,251,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,48,224,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--20-140-100-100-P-107-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w=14 h=19 x= 9 y=13 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=20 h=19 x=-1 y=-5 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =14 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb14r[2261] U8G_SECTION(".progmem.u8g_font_symb14r") = { + 0,20,19,255,251,13,2,127,6,16,32,127,252,14,251,13, + 252,0,0,0,5,0,1,2,13,13,6,2,0,192,192,192, + 192,192,192,192,64,64,0,0,192,192,13,13,26,13,0,0, + 192,24,192,24,96,48,96,48,63,224,48,96,24,192,24,192, + 8,128,13,128,5,0,7,0,2,0,10,13,26,9,255,0, + 9,0,9,0,9,0,9,0,127,192,18,0,18,0,18,0, + 255,128,36,0,36,0,36,0,36,0,8,13,13,10,1,0, + 255,3,3,3,3,3,127,3,3,3,3,3,255,13,13,26, + 15,1,0,56,96,103,224,196,192,197,128,233,128,115,0,6, + 0,6,112,12,200,25,136,25,136,49,208,48,224,12,13,26, + 13,1,0,28,0,54,0,34,0,38,0,60,0,57,224,124, + 192,238,128,199,128,195,0,195,144,103,240,60,224,6,9,9, + 8,1,0,240,56,28,12,124,12,28,56,240,4,17,17,6, + 1,252,16,48,96,96,192,192,192,192,192,192,192,192,192,96, + 96,48,16,4,17,17,6,1,252,128,192,96,96,48,48,48, + 48,48,48,48,48,48,96,96,192,128,7,7,7,9,1,3, + 16,214,124,56,124,214,16,8,8,8,10,1,1,24,24,24, + 255,255,24,24,24,3,5,5,5,1,253,96,96,32,96,192, + 7,2,2,9,1,4,254,254,2,2,2,4,1,0,192,192, + 5,13,13,5,0,0,24,24,24,48,48,48,96,96,96,96, + 192,192,192,8,13,13,9,0,0,60,102,102,195,195,195,195, + 195,195,195,102,102,60,6,13,13,9,1,0,48,240,176,48, + 48,48,48,48,48,48,48,120,252,7,13,13,9,1,0,60, + 126,206,134,6,6,12,28,24,48,98,254,254,7,13,13,9, + 1,0,124,206,134,6,12,56,60,14,6,6,6,204,248,8, + 13,13,9,0,0,6,14,14,30,54,54,102,198,198,255,6, + 6,6,7,13,13,9,1,0,126,124,192,192,240,60,12,14, + 6,6,12,220,240,8,13,13,9,0,0,14,56,48,96,96, + 252,198,195,195,195,195,102,60,8,13,13,9,0,0,127,255, + 134,6,12,12,12,24,24,24,48,48,48,8,13,13,9,0, + 0,60,102,102,102,116,60,126,102,195,195,195,102,60,8,13, + 13,9,0,0,60,110,199,195,195,195,227,127,58,6,12,56, + 224,2,9,9,5,2,0,192,192,0,0,0,0,0,192,192, + 3,12,12,5,1,253,96,96,0,0,0,0,0,96,96,32, + 96,192,9,9,18,10,0,0,3,128,15,0,60,0,240,0, + 192,0,240,0,60,0,15,0,3,128,8,5,5,10,1,2, + 255,255,0,255,255,9,9,18,10,0,0,224,0,120,0,30, + 0,7,128,1,128,7,128,30,0,120,0,224,0,6,13,13, + 8,1,0,120,220,204,204,12,12,24,48,48,48,0,48,48, + 8,9,9,10,1,0,115,255,206,0,255,255,0,255,255,12, + 13,26,14,1,0,4,0,14,0,14,0,11,0,27,0,19, + 0,17,128,49,128,63,192,32,192,96,192,96,224,241,240,9, + 13,26,11,1,0,252,0,102,0,99,0,99,0,99,0,102, + 0,126,0,99,0,97,128,97,128,97,128,99,128,255,0,12, + 13,26,14,1,0,240,112,112,96,56,192,24,192,29,128,15, + 0,6,0,15,0,27,128,49,128,49,192,96,224,224,240,11, + 13,26,11,0,0,4,0,6,0,14,0,11,0,19,0,19, + 0,17,128,33,128,33,192,64,192,64,192,128,96,255,224,9, + 13,26,11,1,0,255,128,97,128,96,128,96,0,96,0,97, + 0,127,0,97,0,96,0,96,0,96,128,97,128,255,128,12, + 13,26,14,1,0,15,0,6,0,31,128,102,96,198,48,198, + 48,198,48,198,48,198,48,102,96,31,128,6,0,15,0,10, + 13,26,11,0,0,255,192,112,192,48,64,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,48,0,48,0,120,0,11, + 13,26,13,1,0,241,224,96,192,96,192,96,192,96,192,96, + 192,127,192,96,192,96,192,96,192,96,192,96,192,241,224,4, + 13,13,6,1,0,240,96,96,96,96,96,96,96,96,96,96, + 96,240,11,13,26,12,1,0,6,0,11,0,9,128,5,128, + 99,128,241,128,177,192,49,160,49,128,49,128,49,128,59,0, + 30,0,11,13,26,14,1,0,243,192,97,128,99,0,102,0, + 108,0,120,0,120,0,108,0,102,0,99,0,99,128,97,192, + 241,224,12,13,26,13,0,0,6,0,6,0,15,0,11,0, + 11,0,25,128,17,128,17,128,48,192,32,192,32,96,96,96, + 240,240,14,13,26,16,1,0,224,28,112,56,112,56,88,120, + 88,88,88,216,76,152,76,152,77,152,71,24,71,24,67,24, + 226,60,11,13,26,13,1,0,224,224,112,64,112,64,88,64, + 76,64,76,64,70,64,67,64,67,192,65,192,64,192,64,192, + 224,64,11,13,26,13,1,0,14,0,49,128,96,192,224,224, + 192,96,192,96,192,96,192,96,192,96,224,224,96,192,49,128, + 14,0,11,13,26,13,1,0,255,224,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 241,224,11,13,26,13,1,0,14,0,49,128,96,192,224,224, + 192,96,209,96,223,96,209,96,192,96,224,224,96,192,49,128, + 14,0,8,13,13,10,1,0,254,103,99,99,99,103,126,96, + 96,96,96,96,240,10,13,26,11,0,0,255,128,193,128,96, + 128,48,0,24,0,12,0,12,0,8,0,16,0,32,64,64, + 192,255,128,255,128,10,13,26,12,1,0,255,192,204,192,140, + 64,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,30,0,12,13,26,13,0,0,248,240,112,96,48, + 192,24,192,29,128,15,0,15,0,6,0,6,0,6,0,6, + 0,6,0,15,0,6,13,13,8,1,252,60,124,192,128,128, + 128,192,120,60,4,4,60,56,13,13,26,14,0,0,7,0, + 24,192,48,96,112,112,96,48,96,48,96,48,96,48,48,96, + 56,224,136,136,248,248,248,248,10,13,26,12,1,0,127,128, + 127,128,64,128,0,0,33,0,63,0,63,0,33,0,0,0, + 128,64,128,64,255,192,255,192,14,13,26,15,0,0,199,140, + 99,24,99,24,99,24,99,24,51,48,31,224,3,0,3,0, + 3,0,3,0,3,0,7,128,9,13,26,11,1,0,255,128, + 195,128,131,0,7,0,6,0,14,0,28,0,24,0,56,0, + 112,0,96,128,225,128,255,128,4,17,17,6,1,252,240,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,240,10, + 9,18,14,2,0,12,0,12,0,0,0,0,0,0,0,0, + 0,0,0,192,192,192,192,4,17,17,6,1,252,240,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,240,10,13, + 26,12,1,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,0,12,0,255,192,255,192,9,2, + 4,9,0,252,255,128,255,128,10,1,2,9,9,13,255,192, + 11,9,18,12,1,0,60,192,101,128,195,0,195,0,195,0, + 195,0,195,0,101,32,56,192,8,18,18,10,1,252,60,70, + 198,198,198,204,198,195,195,195,195,195,230,220,192,192,192,192, + 10,13,26,10,0,252,96,192,241,192,145,128,19,0,23,0, + 14,0,12,0,28,0,26,0,50,0,98,64,227,192,193,128, + 7,14,14,9,1,0,56,76,64,96,48,56,108,198,198,198, + 198,198,108,56,6,9,9,8,1,0,120,236,204,192,112,192, + 192,228,120,9,16,32,11,1,252,8,0,8,0,8,0,62, + 0,107,0,201,128,201,128,201,128,201,128,201,128,107,0,62, + 0,8,0,8,0,8,0,8,0,8,13,13,8,0,252,195, + 227,163,38,38,22,20,28,12,24,24,24,24,9,13,26,11, + 1,252,103,0,233,128,177,128,49,128,49,128,49,128,49,128, + 49,128,49,128,1,128,1,128,1,128,1,128,5,9,9,6, + 1,0,96,224,96,96,96,96,96,104,112,9,13,26,11,1, + 252,102,0,207,0,201,128,201,128,201,128,201,128,73,0,107, + 0,62,0,8,0,8,0,8,0,8,0,9,9,18,10,0, + 0,99,128,229,128,104,0,112,0,120,0,108,0,102,0,99, + 0,97,128,10,14,28,10,0,0,48,0,120,0,72,0,8, + 0,8,0,8,0,24,0,28,0,52,0,52,0,102,0,98, + 64,195,192,193,128,9,13,26,11,2,252,66,0,198,0,198, + 0,198,0,198,0,198,0,198,128,251,128,123,0,64,0,192, + 0,192,0,192,0,8,9,9,10,1,0,195,195,97,98,50, + 52,28,24,8,8,9,9,10,1,0,60,102,195,195,195,195, + 195,102,60,9,9,18,10,0,0,127,128,255,128,146,0,18, + 0,18,0,18,0,50,128,115,128,99,0,8,13,13,10,1, + 0,60,102,195,195,195,195,255,195,195,195,195,102,60,8,13, + 13,10,1,252,60,70,195,195,195,195,195,230,220,192,192,192, + 192,10,9,18,11,1,0,31,192,127,192,102,0,195,0,195, + 0,195,0,195,0,102,0,60,0,7,9,9,8,0,0,126, + 254,144,16,16,16,18,30,28,9,9,18,11,1,0,99,0, + 241,128,177,128,49,128,49,128,49,128,49,128,59,0,30,0, + 11,11,22,12,0,0,63,224,127,224,153,128,48,192,32,64, + 102,96,102,96,102,96,102,96,54,192,57,192,10,9,18,12, + 1,0,51,0,97,128,64,128,204,192,204,192,204,192,204,192, + 109,128,115,128,7,19,19,9,1,251,96,142,252,32,64,64, + 124,120,192,128,128,128,192,252,126,2,2,30,28,13,13,26, + 13,0,252,226,56,114,112,50,96,50,96,50,96,50,96,26, + 192,26,192,15,128,2,0,2,0,2,0,2,0,7,19,19, + 9,1,251,96,134,158,120,96,64,128,128,128,128,128,128,192, + 252,126,2,2,30,28,7,17,17,9,1,252,14,24,48,48, + 48,48,48,96,192,96,48,48,48,48,48,24,14,2,17,17, + 4,1,252,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,7,17,17,9,1,252,224,48,24,24,24,24, + 24,12,6,12,24,24,24,24,24,48,224,8,3,3,10,1, + 4,115,255,206,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--25-180-100-100-P-142-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=25 h=24 x=13 y=18 dx=26 dy= 0 ascent=19 len=63 + Font Bounding box w=27 h=24 x=-1 y=-5 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =19 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb18[6604] U8G_SECTION(".progmem.u8g_font_symb18") = { + 0,27,24,255,251,17,3,215,8,151,32,255,251,19,251,17, + 251,0,0,0,6,0,1,3,17,17,7,2,0,64,224,224, + 224,224,224,224,224,64,64,64,64,0,0,0,192,192,15,17, + 34,17,1,0,192,6,192,6,96,12,96,12,63,248,63,248, + 48,24,24,48,24,48,12,96,12,96,12,96,6,192,6,192, + 3,128,3,128,3,128,11,17,34,13,1,0,8,128,8,128, + 8,128,8,128,8,128,127,224,127,224,17,0,17,0,17,0, + 255,192,255,192,34,0,34,0,34,0,34,0,34,0,11,17, + 34,13,1,0,255,224,255,224,0,96,0,96,0,96,0,96, + 0,96,255,224,255,224,0,96,0,96,0,96,0,96,0,96, + 0,96,255,224,255,224,18,17,51,20,1,0,31,6,0,57, + 254,0,113,12,0,99,24,0,227,24,0,198,48,0,206,96, + 0,220,96,0,120,199,128,1,142,192,1,156,192,3,56,192, + 6,48,192,6,49,128,12,51,128,24,55,0,24,30,0,15, + 17,34,17,1,0,7,128,12,192,24,64,24,64,24,192,29, + 128,15,62,30,28,62,24,103,48,195,160,193,224,192,192,193, + 224,227,114,126,62,60,28,8,13,13,11,2,0,248,62,14, + 7,3,3,127,3,3,7,14,62,248,6,22,22,8,1,251, + 12,24,48,32,96,96,64,192,192,192,192,192,192,192,192,64, + 96,96,32,48,24,12,6,22,22,8,1,251,192,96,48,16, + 24,24,8,12,12,12,12,12,12,12,12,8,24,24,16,48, + 96,192,8,10,10,12,2,7,24,24,195,231,24,24,231,195, + 24,24,10,10,20,12,1,2,12,0,12,0,12,0,12,0, + 255,192,255,192,12,0,12,0,12,0,12,0,3,6,6,6, + 1,252,96,96,32,96,192,128,11,2,4,13,1,6,255,224, + 255,224,2,2,2,6,2,0,192,192,7,17,17,7,0,0, + 6,6,6,12,12,12,24,24,48,48,48,96,96,96,192,192, + 192,10,17,34,12,1,0,30,0,51,0,97,128,97,128,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,97,128,97,128,51,0,30,0,6,17,17,12,3,0,48, + 112,240,48,48,48,48,48,48,48,48,48,48,48,48,48,252, + 10,17,34,12,1,0,28,0,127,0,103,0,131,128,129,128, + 1,128,1,128,3,128,3,0,7,0,12,0,12,0,24,0, + 48,0,96,64,255,192,255,128,9,17,34,12,1,0,28,0, + 126,0,71,0,131,0,131,0,6,0,12,0,30,0,7,0, + 3,0,1,128,1,128,1,128,3,0,199,0,254,0,120,0, + 10,17,34,12,1,0,3,0,7,0,7,0,15,0,11,0, + 27,0,19,0,51,0,35,0,99,0,67,0,255,192,255,192, + 3,0,3,0,3,0,3,0,10,17,34,12,1,0,31,192, + 63,128,96,0,96,0,192,0,240,0,252,0,30,0,7,0, + 3,128,1,128,1,128,1,128,1,128,195,0,254,0,124,0, + 10,17,34,12,1,0,3,192,14,0,56,0,112,0,96,0, + 224,0,207,0,243,128,225,128,192,192,192,192,192,192,192,192, + 224,192,97,192,115,128,31,0,10,17,34,12,1,0,127,192, + 255,192,192,192,129,128,1,128,3,0,3,0,3,0,6,0, + 6,0,6,0,12,0,12,0,12,0,24,0,24,0,24,0, + 10,17,34,12,1,0,30,0,51,0,97,128,97,128,97,128, + 51,0,30,0,30,0,55,0,115,128,225,192,192,192,192,192, + 192,192,225,192,115,128,30,0,10,17,34,12,1,0,30,0, + 115,128,97,128,192,192,192,192,192,192,192,192,192,192,97,192, + 115,192,30,192,1,128,3,128,7,0,14,0,60,0,240,0, + 2,11,11,6,2,0,192,192,0,0,0,0,0,0,0,192, + 192,3,15,15,6,1,252,96,96,0,0,0,0,0,0,0, + 96,96,32,96,192,128,12,12,24,13,0,1,0,112,1,224, + 7,128,30,0,120,0,224,0,224,0,120,0,30,0,7,128, + 1,224,0,112,10,5,10,12,1,4,255,192,255,192,0,0, + 255,192,255,192,12,12,24,13,0,1,224,0,120,0,30,0, + 7,128,1,224,0,112,0,112,1,224,7,128,30,0,120,0, + 224,0,8,17,17,11,2,0,124,198,131,195,199,6,14,12, + 28,24,24,16,16,0,0,48,48,11,12,24,13,1,1,56, + 32,124,96,199,192,131,128,0,0,0,0,255,224,255,224,0, + 0,0,0,255,224,255,224,17,17,51,18,0,0,0,128,0, + 1,192,0,1,192,0,1,64,0,3,96,0,2,96,0,2, + 48,0,6,48,0,4,48,0,12,24,0,8,24,0,15,252, + 0,24,12,0,16,12,0,48,6,0,48,6,0,248,15,128, + 13,17,34,15,1,0,255,192,48,224,48,112,48,48,48,48, + 48,48,48,48,48,96,63,192,48,112,48,56,48,24,48,24, + 48,24,48,56,48,112,255,192,16,17,34,18,1,0,248,31, + 112,14,56,12,28,24,12,48,14,96,7,192,3,128,3,128, + 7,192,6,96,12,112,24,48,24,24,48,28,112,14,248,31, + 15,17,34,15,0,0,3,0,3,0,3,128,5,128,4,192, + 12,192,8,96,8,96,24,48,16,48,48,24,32,24,32,12, + 96,12,64,6,192,6,255,254,13,17,34,15,1,0,255,240, + 48,48,48,16,48,0,48,0,48,0,48,32,48,32,63,224, + 48,32,48,32,48,0,48,0,48,0,48,8,48,24,255,248, + 16,17,34,19,1,0,7,224,1,128,1,128,15,240,57,156, + 97,134,225,135,193,131,193,131,193,131,225,135,97,134,57,156, + 15,240,1,128,1,128,7,224,13,17,34,15,1,0,255,248, + 48,24,48,8,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,252,0, + 16,17,34,18,1,0,252,63,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,63,252,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,252,63,6,17,17,8,1,0,252,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,252,14, + 17,34,16,1,0,3,192,6,224,4,96,6,96,3,48,113, + 176,248,240,152,60,24,48,24,48,48,48,48,48,48,48,48, + 96,56,96,28,192,15,128,15,17,34,17,1,0,252,124,48, + 48,48,96,48,192,49,128,51,0,54,0,62,0,63,0,51, + 128,49,128,49,192,48,224,48,112,48,56,48,28,252,62,15, + 17,34,17,1,0,3,0,3,0,3,128,5,128,4,192,4, + 192,12,192,8,96,8,96,24,96,16,48,16,48,48,48,32, + 24,32,24,96,28,248,62,20,17,51,22,1,0,240,1,240, + 56,1,192,56,3,192,60,2,192,44,2,192,46,6,192,38, + 4,192,39,12,192,35,8,192,35,136,192,33,152,192,33,208, + 192,32,208,192,32,240,192,32,96,192,32,96,192,248,67,240, + 16,17,34,18,1,0,240,31,56,4,56,4,44,4,46,4, + 38,4,35,4,35,4,33,132,33,196,32,196,32,100,32,100, + 32,52,32,60,32,28,248,12,16,17,34,18,1,0,7,224, + 30,120,56,28,112,14,96,6,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,96,6,112,14,56,28,28,56,7,224, + 16,17,34,18,1,0,255,255,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,252,63,16,17,34,18,1,0,7,224, + 30,120,56,28,112,14,96,6,200,19,200,19,207,243,207,243, + 200,19,200,19,192,3,96,6,112,14,56,28,28,56,7,224, + 12,17,34,14,1,0,255,128,48,224,48,96,48,48,48,48, + 48,48,48,96,48,224,63,128,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,252,0,12,17,34,14,1,0,255,240, + 224,16,112,16,56,0,28,0,14,0,7,0,3,128,3,0, + 6,0,12,0,24,0,48,0,96,16,192,16,255,240,255,240, + 14,17,34,16,1,0,255,252,195,12,131,4,3,0,3,0, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,15,192,16,17,34,16,0,0,248,31, + 112,14,48,12,24,24,28,16,12,48,14,96,6,96,3,192, + 3,192,1,128,1,128,1,128,1,128,1,128,1,128,7,224, + 9,18,36,11,1,251,31,128,63,128,96,0,96,0,192,0, + 192,0,192,0,192,0,192,0,192,0,96,0,127,0,31,128, + 0,128,0,128,1,128,15,0,14,0,16,17,34,18,1,0, + 7,224,30,120,56,28,112,14,96,6,192,3,192,3,192,3, + 192,3,192,3,96,6,48,12,24,24,140,49,196,35,252,63, + 252,63,14,17,34,16,1,0,127,248,127,248,64,8,64,8, + 0,0,16,32,16,32,31,224,31,224,16,32,16,32,0,0, + 0,0,128,4,128,4,255,252,255,252,18,17,51,20,1,0, + 227,241,192,112,195,128,48,195,0,48,195,0,56,199,0,56, + 199,0,24,198,0,28,206,0,7,248,0,0,192,0,0,192, + 0,0,192,0,0,192,0,0,192,0,0,192,0,0,192,0, + 3,240,0,12,17,34,15,1,0,255,240,192,112,128,96,0, + 224,1,192,1,128,3,128,7,0,6,0,14,0,28,0,56, + 0,56,0,112,0,96,16,224,48,255,240,5,22,22,8,2, + 251,248,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,248,12,10,20,18,3,0,6,0,6, + 0,0,0,0,0,0,0,0,0,0,0,0,0,192,48,192, + 48,5,22,22,8,1,251,248,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,248,14,17,34, + 16,1,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,255,252,255,252,13,2,4,13,0,251,255,248,255,248,13, + 1,2,13,13,18,255,248,14,13,26,16,1,0,31,24,113, + 184,96,176,224,240,192,96,192,96,192,96,192,96,192,96,224, + 224,96,228,113,252,31,56,10,24,48,12,1,251,62,0,103, + 0,195,128,193,128,193,128,195,128,195,0,206,0,207,0,195, + 128,193,128,193,192,192,192,192,192,192,192,193,192,225,128,243, + 128,223,0,192,0,192,0,192,0,192,0,192,0,12,18,36, + 14,1,251,112,96,248,96,216,192,136,192,9,128,9,128,11, + 0,7,0,6,0,6,0,14,0,14,0,25,0,25,0,49, + 16,49,176,97,240,96,224,10,18,36,12,1,0,31,0,51, + 128,33,128,48,0,56,0,28,0,14,0,63,0,115,128,97, + 128,192,192,192,192,192,192,192,192,192,192,97,128,115,128,30, + 0,9,13,26,11,1,0,62,0,115,0,227,0,195,0,224, + 0,96,0,60,0,96,0,224,0,192,0,224,128,113,128,63, + 0,12,22,44,14,1,251,6,0,6,0,6,0,6,0,31, + 128,54,192,102,96,230,112,198,48,198,48,198,48,198,48,198, + 48,230,112,102,96,54,192,31,128,6,0,6,0,6,0,6, + 0,6,0,11,18,36,11,0,251,112,96,248,96,152,96,152, + 192,24,192,12,192,13,128,13,128,5,128,7,0,7,0,3, + 0,6,0,6,0,6,0,6,0,6,0,6,0,12,18,36, + 15,1,251,113,192,251,224,158,48,28,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,48,0,48,0, + 48,0,48,0,48,0,48,7,13,13,8,1,0,48,112,240, + 48,48,48,48,48,48,48,50,62,28,12,18,36,14,1,251, + 51,128,115,192,102,96,198,112,198,48,198,48,198,48,198,48, + 198,48,230,112,102,96,54,192,31,128,6,0,6,0,6,0, + 6,0,6,0,12,13,26,14,1,0,48,112,112,240,241,176, + 51,0,54,0,60,0,60,0,62,0,55,0,51,128,49,192, + 48,224,49,240,12,19,38,14,1,0,112,0,248,0,136,0, + 8,0,8,0,12,0,12,0,12,0,28,0,30,0,26,0, + 50,0,50,0,51,0,97,0,97,0,97,144,193,240,192,224, + 13,18,36,14,1,251,96,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,113,200,63,248,111,48, + 96,0,96,0,96,0,96,0,192,0,11,13,26,13,1,0, + 192,224,192,224,192,96,96,64,96,192,96,128,49,128,49,0, + 51,0,26,0,26,0,14,0,12,0,11,13,26,13,1,0, + 31,0,113,192,96,192,224,224,192,96,192,96,192,96,192,96, + 192,96,224,224,96,192,113,192,31,0,13,13,26,14,0,0, + 127,248,255,248,152,192,24,192,24,192,24,192,24,192,24,192, + 24,192,24,192,24,200,56,248,48,240,10,17,34,12,1,0, + 30,0,51,0,97,128,97,128,192,192,192,192,192,192,192,192, + 255,192,192,192,192,192,192,192,192,192,97,128,97,128,51,0, + 30,0,10,18,36,12,1,251,62,0,99,128,193,128,193,192, + 192,192,192,192,192,192,192,192,192,192,193,192,193,128,227,128, + 222,0,192,0,192,0,192,0,192,0,192,0,14,13,26,15, + 1,0,31,252,113,252,96,192,224,224,192,96,192,96,192,96, + 192,96,192,96,224,224,96,192,113,192,31,0,10,13,26,11, + 0,0,63,192,127,192,204,0,140,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,128,15,128,7,0,13,13,26,14, + 0,0,48,224,120,48,216,24,152,24,24,24,24,24,24,24, + 24,24,24,24,24,48,12,48,14,224,7,192,16,14,28,18, + 1,0,127,255,255,255,152,24,48,12,49,140,97,134,97,134, + 97,134,97,134,97,134,97,134,49,140,59,220,30,120,14,13, + 26,16,1,0,24,96,48,48,96,24,99,24,195,12,195,12, + 195,12,195,12,195,12,195,12,99,24,119,184,60,240,10,24, + 48,12,1,251,48,0,99,128,103,128,63,0,48,0,32,0, + 55,128,31,128,48,0,96,0,192,0,128,0,128,0,128,0, + 192,0,240,0,124,0,63,128,15,192,0,192,0,64,0,192, + 15,128,15,0,16,18,36,18,1,251,193,131,113,142,49,140, + 57,156,57,156,57,156,57,156,57,156,57,156,25,152,25,152, + 13,176,7,224,1,128,1,128,1,128,1,128,1,128,10,24, + 48,12,1,251,48,0,99,128,103,128,63,0,24,0,48,0, + 32,0,96,0,64,0,192,0,128,0,128,0,128,0,128,0, + 192,0,240,0,124,0,63,128,15,192,0,192,0,64,0,192, + 15,128,15,0,8,22,22,10,1,251,7,12,24,24,24,24, + 24,16,48,32,192,32,48,16,24,24,24,24,24,24,12,7, + 2,22,22,4,1,251,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,8,22,22,10, + 1,251,224,48,24,24,24,24,24,8,12,4,3,4,12,8, + 24,24,24,24,24,24,48,224,11,4,8,13,1,5,56,32, + 124,96,199,192,131,128,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,13,17,34,15,1,0,224,112, + 112,216,57,184,27,48,14,0,6,0,6,0,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,31,128, + 5,6,6,6,1,12,24,56,112,96,192,128,12,15,30,14, + 0,0,0,112,1,224,7,128,30,0,120,0,224,0,224,0, + 120,0,30,0,3,192,0,240,0,48,0,0,255,240,255,240, + 8,17,17,4,255,0,3,3,6,6,12,12,24,24,24,48, + 48,96,96,96,192,192,192,15,7,14,17,1,4,56,56,124, + 124,198,198,195,134,199,198,124,124,56,56,13,22,44,13,0, + 251,0,240,1,152,1,152,3,0,3,0,3,0,31,192,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,204,0,204,0,120,0,14,13,26, + 18,2,0,7,128,15,192,15,192,15,192,15,192,119,184,251, + 124,255,252,255,252,251,124,115,56,3,0,7,128,10,13,26, + 18,4,0,12,0,30,0,63,0,63,0,127,128,127,128,255, + 192,127,128,127,128,63,0,30,0,30,0,12,0,12,13,26, + 18,3,0,112,224,249,240,255,240,255,240,255,240,255,240,127, + 224,127,224,63,192,31,128,31,128,15,0,6,0,12,13,26, + 18,3,0,6,0,15,0,31,128,31,128,63,192,127,224,127, + 224,255,240,255,240,246,240,102,96,6,0,6,0,24,12,36, + 26,1,1,6,0,96,12,0,48,24,0,24,48,0,12,96, + 0,6,255,255,255,255,255,255,96,0,6,48,0,12,24,0, + 24,12,0,48,6,0,96,25,12,48,25,0,1,6,0,0, + 0,12,0,0,0,24,0,0,0,48,0,0,0,96,0,0, + 0,255,255,255,128,255,255,255,128,96,0,0,0,48,0,0, + 0,24,0,0,0,12,0,0,0,6,0,0,0,12,24,48, + 14,1,251,6,0,15,0,31,128,54,192,102,96,198,48,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,25,12,48,25,0,1,0,0,48,0,0,0,24, + 0,0,0,12,0,0,0,6,0,0,0,3,0,255,255,255, + 128,255,255,255,128,0,0,3,0,0,0,6,0,0,0,12, + 0,0,0,24,0,0,0,48,0,12,24,48,14,1,251,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,0,198,48,102,96,54,192,31,128,15,0,6,0,7, + 7,7,9,1,10,56,108,198,198,198,108,56,10,14,28,12, + 1,0,12,0,12,0,12,0,12,0,255,192,255,192,12,0, + 12,0,12,0,12,0,0,0,0,0,255,192,255,192,9,6, + 12,10,1,12,25,128,59,128,119,0,102,0,204,0,136,0, + 12,15,30,14,0,0,224,0,120,0,30,0,7,128,1,224, + 0,112,0,112,1,224,7,128,62,0,240,0,192,0,0,0, + 255,240,255,240,11,10,20,13,1,2,192,96,96,192,49,128, + 27,0,14,0,14,0,27,0,49,128,96,192,192,96,14,7, + 14,16,1,4,56,56,124,124,198,192,195,128,199,192,124,124, + 56,56,10,19,38,12,1,0,62,0,99,0,193,128,1,128, + 0,192,0,192,0,192,0,192,30,192,115,192,97,192,192,192, + 192,192,193,128,193,128,193,128,227,0,119,0,62,0,8,8, + 8,12,2,3,60,126,255,255,255,255,126,60,10,8,16,12, + 1,3,12,0,12,0,0,0,255,192,255,192,0,0,12,0, + 12,0,10,13,26,14,2,0,1,128,1,128,3,0,3,0, + 255,192,255,192,12,0,255,192,255,192,48,0,48,0,96,0, + 96,0,11,8,16,13,1,3,255,224,255,224,0,0,255,224, + 255,224,0,0,255,224,255,224,11,8,16,13,1,3,56,32, + 124,96,199,192,131,128,56,32,124,96,199,192,131,128,18,2, + 6,24,3,0,192,192,192,192,192,192,2,24,24,14,6,251, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,25,2,8,25,0,6,255,255, + 255,128,255,255,255,128,14,16,32,16,1,0,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 32,12,96,12,255,252,255,252,96,0,32,0,12,16,32,14, + 1,0,129,128,195,0,227,240,113,240,56,96,28,192,60,128, + 110,128,199,128,195,128,227,128,241,192,112,224,48,112,112,48, + 224,16,14,19,38,16,1,255,15,128,63,252,112,248,96,48, + 64,96,64,192,96,192,48,224,28,112,0,56,0,56,0,28, + 0,28,0,12,48,12,120,12,222,24,15,240,3,192,17,18, + 54,19,1,0,30,24,0,63,60,0,99,206,0,193,135,0, + 129,131,0,193,134,0,225,140,0,113,184,0,57,176,0,25, + 152,0,17,152,0,1,152,0,1,156,0,1,140,0,1,140, + 0,25,134,128,63,7,128,78,7,0,15,20,40,19,2,251, + 6,0,12,0,24,60,48,254,49,134,99,6,102,6,108,6, + 104,12,121,156,115,152,114,48,122,112,91,224,221,128,140,0, + 140,0,140,0,216,0,112,0,16,17,34,18,1,0,7,224, + 30,120,56,28,96,6,104,22,204,51,198,99,195,195,193,131, + 195,195,198,99,204,51,104,22,96,6,56,28,30,120,7,224, + 16,17,34,18,1,0,7,224,30,120,56,28,97,134,97,134, + 193,131,193,131,207,243,207,243,193,131,193,131,193,131,97,134, + 96,6,56,28,30,120,7,224,18,17,51,20,1,0,3,240, + 192,15,253,128,28,15,0,48,7,0,48,15,0,96,25,128, + 96,49,128,96,97,128,96,193,128,97,129,128,99,1,128,102, + 1,128,60,3,0,56,3,0,60,14,0,111,252,0,195,240, + 0,16,13,26,18,1,0,7,224,31,248,56,28,96,6,96, + 6,192,3,192,3,192,3,192,3,192,3,192,3,192,3,192, + 3,16,13,26,18,1,0,192,3,192,3,192,3,192,3,192, + 3,192,3,192,3,192,3,96,6,96,6,56,28,31,248,7, + 224,15,12,24,17,1,0,255,224,255,248,0,28,0,12,0, + 6,0,6,0,6,0,6,0,12,0,28,255,248,255,224,15, + 15,30,17,1,253,255,224,255,248,0,28,0,12,0,6,0, + 6,0,6,0,6,0,12,0,28,255,248,255,224,0,0,255, + 254,255,254,15,16,32,17,1,254,0,12,0,12,15,254,63, + 254,112,48,96,48,192,96,192,96,192,192,192,192,97,128,113, + 128,63,254,15,254,6,0,6,0,15,12,24,17,1,0,15, + 254,63,254,112,0,96,0,192,0,192,0,192,0,192,0,96, + 0,112,0,63,254,15,254,15,15,30,17,1,253,15,254,63, + 254,112,0,96,0,192,0,192,0,192,0,192,0,96,0,112, + 0,63,254,15,254,0,0,255,254,255,254,12,13,26,16,2, + 0,31,240,127,240,96,0,192,0,192,0,192,0,255,240,192, + 0,192,0,192,0,96,0,127,240,31,240,12,15,30,16,2, + 255,0,192,31,240,127,240,97,128,193,128,195,0,195,0,255, + 240,198,0,198,0,204,0,108,0,127,240,31,240,24,0,17, + 16,48,19,1,0,0,1,128,0,3,0,0,6,0,0,12, + 0,0,24,0,0,48,0,0,96,0,0,192,0,1,128,0, + 3,0,0,6,0,0,12,0,0,24,0,0,48,0,0,127, + 255,128,255,255,128,16,18,36,18,1,0,255,255,192,3,192, + 2,96,6,96,4,48,12,48,8,48,24,24,16,24,48,12, + 32,12,32,6,96,6,64,3,192,3,192,1,128,1,128,16, + 17,34,18,1,0,7,224,30,120,56,28,96,6,111,230,198, + 115,198,51,198,115,199,227,198,195,198,99,198,51,111,62,96, + 6,56,28,30,120,7,224,16,17,34,18,1,0,7,224,30, + 120,56,28,96,6,99,230,198,99,204,35,204,3,204,3,204, + 3,204,3,206,51,103,230,99,198,56,28,30,120,7,224,20, + 10,30,22,1,7,255,96,112,153,96,96,24,112,224,24,112, + 224,24,89,96,24,89,96,24,78,96,24,78,96,24,70,96, + 60,230,240,17,21,63,19,1,253,255,255,128,48,6,0,48, + 6,0,48,6,0,48,6,0,48,6,0,48,6,0,48,6, + 0,48,6,0,48,6,0,48,6,0,48,6,0,48,6,0, + 48,6,0,48,6,0,48,6,0,48,6,0,48,6,0,48, + 6,0,48,6,0,252,31,128,14,19,38,14,0,0,0,12, + 0,12,0,8,0,8,0,24,48,24,112,16,216,16,24,16, + 12,48,12,48,6,32,6,32,3,32,3,96,1,192,1,192, + 0,192,0,192,2,2,2,6,2,6,192,192,15,8,16,17, + 1,0,255,254,255,254,0,6,0,6,0,6,0,6,0,6, + 0,6,13,12,24,15,1,0,7,0,7,0,13,128,13,128, + 24,192,24,192,48,96,48,96,96,48,96,48,192,24,192,24, + 13,12,24,15,1,0,192,24,192,24,96,48,96,48,48,96, + 48,96,24,192,24,192,13,128,13,128,7,0,7,0,23,12, + 36,25,1,0,6,0,192,12,0,96,24,0,48,63,255,248, + 127,255,252,224,0,14,224,0,14,127,255,252,63,255,248,24, + 0,48,12,0,96,6,0,192,23,12,36,25,1,0,6,0, + 0,12,0,0,24,0,0,63,255,254,127,255,254,224,0,0, + 224,0,0,127,255,254,63,255,254,24,0,0,12,0,0,6, + 0,0,12,19,38,14,1,0,6,0,15,0,31,128,57,192, + 121,224,217,176,25,128,25,128,25,128,25,128,25,128,25,128, + 25,128,25,128,25,128,25,128,25,128,25,128,25,128,23,12, + 36,25,1,0,0,0,192,0,0,96,0,0,48,255,255,248, + 255,255,252,0,0,14,0,0,14,255,255,252,255,255,248,0, + 0,48,0,0,96,0,0,192,12,19,38,14,1,0,25,128, + 25,128,25,128,25,128,25,128,25,128,25,128,25,128,25,128, + 25,128,25,128,25,128,25,128,217,176,121,224,57,192,31,128, + 15,0,6,0,10,18,36,12,1,0,12,0,30,0,30,0, + 51,0,51,0,97,128,97,128,192,192,192,192,192,192,192,192, + 97,128,97,128,51,0,51,0,30,0,30,0,12,0,7,22, + 22,8,0,251,6,6,12,12,24,24,48,48,96,96,192,192, + 96,96,48,48,24,24,12,12,6,6,16,17,34,18,1,0, + 7,224,30,120,56,28,96,6,103,230,198,51,198,51,198,51, + 199,227,198,99,198,51,198,51,102,50,96,6,56,28,30,120, + 7,224,16,17,34,18,1,0,7,224,30,120,56,28,96,6, + 99,198,198,99,204,35,204,3,200,3,200,3,204,3,204,35, + 102,102,99,198,56,28,30,120,7,224,18,10,30,20,1,7, + 254,192,192,24,192,192,24,225,192,24,225,192,24,243,192,24, + 210,192,24,222,192,24,204,192,24,204,192,24,204,192,14,20, + 40,18,2,254,255,248,224,24,112,8,56,0,28,0,14,0, + 7,0,3,128,1,192,0,192,1,128,3,0,6,0,12,0, + 24,0,48,0,96,4,192,12,255,252,255,252,9,24,48,10, + 1,251,1,128,3,0,6,0,12,0,24,0,24,0,48,0, + 48,0,96,0,96,0,96,0,96,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,2,24,24,10,1,251,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 9,24,48,10,1,251,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,96,0, + 96,0,96,0,96,0,48,0,48,0,24,0,24,0,12,0, + 6,0,3,0,1,128,7,24,24,10,1,251,254,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,2,24,24,10,1,251,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,7,24,24,10,1,251,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,254, + 7,24,24,12,5,251,30,48,96,96,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,5,24, + 24,12,2,251,24,24,24,24,24,24,24,24,16,48,96,192, + 96,48,16,24,24,24,24,24,24,24,24,24,7,24,24,12, + 5,251,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,96,96,48,30,2,24,24,12,5,251, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,255,7,22,22,8,1,251,192, + 192,96,96,48,48,24,24,12,12,6,6,12,12,24,24,48, + 48,96,96,192,192,8,24,24,8,0,251,7,15,27,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 216,240,224,8,24,24,17,8,251,14,27,51,32,96,64,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,2,24,24,17,8,251,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,8, + 24,24,17,2,251,3,3,3,3,3,3,3,3,3,3,3, + 3,3,3,3,3,3,3,3,2,6,204,216,112,9,24,48, + 10,0,251,192,0,96,0,48,0,24,0,12,0,12,0,6, + 0,6,0,3,0,3,0,3,0,3,0,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,2,24,24,10,7,251,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,9,24,48,10,0,251,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,1,128,1,128,1,128,3, + 0,3,0,3,0,3,0,6,0,6,0,12,0,12,0,24, + 0,48,0,96,0,192,0,7,24,24,10,2,251,254,6,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,2,24,24,10,7,251,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,7,24,24,10,2,251,6,6,6,6,6,6,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 254,7,24,24,12,0,251,240,24,12,12,6,6,6,6,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,5, + 24,24,12,5,251,192,192,192,192,192,192,192,192,64,96,48, + 24,48,96,64,192,192,192,192,192,192,192,192,192,7,24,24, + 12,0,251,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,6,6,12,12,24,240,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--25-180-100-100-P-142-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=20 h=24 x=13 y=18 dx=22 dy= 0 ascent=19 len=51 + Font Bounding box w=27 h=24 x=-1 y=-5 + Calculated Min Values x= 0 y=-5 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =19 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb18r[3303] U8G_SECTION(".progmem.u8g_font_symb18r") = { + 0,27,24,255,251,17,3,215,8,151,32,127,251,19,251,17, + 251,0,0,0,6,0,1,3,17,17,7,2,0,64,224,224, + 224,224,224,224,224,64,64,64,64,0,0,0,192,192,15,17, + 34,17,1,0,192,6,192,6,96,12,96,12,63,248,63,248, + 48,24,24,48,24,48,12,96,12,96,12,96,6,192,6,192, + 3,128,3,128,3,128,11,17,34,13,1,0,8,128,8,128, + 8,128,8,128,8,128,127,224,127,224,17,0,17,0,17,0, + 255,192,255,192,34,0,34,0,34,0,34,0,34,0,11,17, + 34,13,1,0,255,224,255,224,0,96,0,96,0,96,0,96, + 0,96,255,224,255,224,0,96,0,96,0,96,0,96,0,96, + 0,96,255,224,255,224,18,17,51,20,1,0,31,6,0,57, + 254,0,113,12,0,99,24,0,227,24,0,198,48,0,206,96, + 0,220,96,0,120,199,128,1,142,192,1,156,192,3,56,192, + 6,48,192,6,49,128,12,51,128,24,55,0,24,30,0,15, + 17,34,17,1,0,7,128,12,192,24,64,24,64,24,192,29, + 128,15,62,30,28,62,24,103,48,195,160,193,224,192,192,193, + 224,227,114,126,62,60,28,8,13,13,11,2,0,248,62,14, + 7,3,3,127,3,3,7,14,62,248,6,22,22,8,1,251, + 12,24,48,32,96,96,64,192,192,192,192,192,192,192,192,64, + 96,96,32,48,24,12,6,22,22,8,1,251,192,96,48,16, + 24,24,8,12,12,12,12,12,12,12,12,8,24,24,16,48, + 96,192,8,10,10,12,2,7,24,24,195,231,24,24,231,195, + 24,24,10,10,20,12,1,2,12,0,12,0,12,0,12,0, + 255,192,255,192,12,0,12,0,12,0,12,0,3,6,6,6, + 1,252,96,96,32,96,192,128,11,2,4,13,1,6,255,224, + 255,224,2,2,2,6,2,0,192,192,7,17,17,7,0,0, + 6,6,6,12,12,12,24,24,48,48,48,96,96,96,192,192, + 192,10,17,34,12,1,0,30,0,51,0,97,128,97,128,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,97,128,97,128,51,0,30,0,6,17,17,12,3,0,48, + 112,240,48,48,48,48,48,48,48,48,48,48,48,48,48,252, + 10,17,34,12,1,0,28,0,127,0,103,0,131,128,129,128, + 1,128,1,128,3,128,3,0,7,0,12,0,12,0,24,0, + 48,0,96,64,255,192,255,128,9,17,34,12,1,0,28,0, + 126,0,71,0,131,0,131,0,6,0,12,0,30,0,7,0, + 3,0,1,128,1,128,1,128,3,0,199,0,254,0,120,0, + 10,17,34,12,1,0,3,0,7,0,7,0,15,0,11,0, + 27,0,19,0,51,0,35,0,99,0,67,0,255,192,255,192, + 3,0,3,0,3,0,3,0,10,17,34,12,1,0,31,192, + 63,128,96,0,96,0,192,0,240,0,252,0,30,0,7,0, + 3,128,1,128,1,128,1,128,1,128,195,0,254,0,124,0, + 10,17,34,12,1,0,3,192,14,0,56,0,112,0,96,0, + 224,0,207,0,243,128,225,128,192,192,192,192,192,192,192,192, + 224,192,97,192,115,128,31,0,10,17,34,12,1,0,127,192, + 255,192,192,192,129,128,1,128,3,0,3,0,3,0,6,0, + 6,0,6,0,12,0,12,0,12,0,24,0,24,0,24,0, + 10,17,34,12,1,0,30,0,51,0,97,128,97,128,97,128, + 51,0,30,0,30,0,55,0,115,128,225,192,192,192,192,192, + 192,192,225,192,115,128,30,0,10,17,34,12,1,0,30,0, + 115,128,97,128,192,192,192,192,192,192,192,192,192,192,97,192, + 115,192,30,192,1,128,3,128,7,0,14,0,60,0,240,0, + 2,11,11,6,2,0,192,192,0,0,0,0,0,0,0,192, + 192,3,15,15,6,1,252,96,96,0,0,0,0,0,0,0, + 96,96,32,96,192,128,12,12,24,13,0,1,0,112,1,224, + 7,128,30,0,120,0,224,0,224,0,120,0,30,0,7,128, + 1,224,0,112,10,5,10,12,1,4,255,192,255,192,0,0, + 255,192,255,192,12,12,24,13,0,1,224,0,120,0,30,0, + 7,128,1,224,0,112,0,112,1,224,7,128,30,0,120,0, + 224,0,8,17,17,11,2,0,124,198,131,195,199,6,14,12, + 28,24,24,16,16,0,0,48,48,11,12,24,13,1,1,56, + 32,124,96,199,192,131,128,0,0,0,0,255,224,255,224,0, + 0,0,0,255,224,255,224,17,17,51,18,0,0,0,128,0, + 1,192,0,1,192,0,1,64,0,3,96,0,2,96,0,2, + 48,0,6,48,0,4,48,0,12,24,0,8,24,0,15,252, + 0,24,12,0,16,12,0,48,6,0,48,6,0,248,15,128, + 13,17,34,15,1,0,255,192,48,224,48,112,48,48,48,48, + 48,48,48,48,48,96,63,192,48,112,48,56,48,24,48,24, + 48,24,48,56,48,112,255,192,16,17,34,18,1,0,248,31, + 112,14,56,12,28,24,12,48,14,96,7,192,3,128,3,128, + 7,192,6,96,12,112,24,48,24,24,48,28,112,14,248,31, + 15,17,34,15,0,0,3,0,3,0,3,128,5,128,4,192, + 12,192,8,96,8,96,24,48,16,48,48,24,32,24,32,12, + 96,12,64,6,192,6,255,254,13,17,34,15,1,0,255,240, + 48,48,48,16,48,0,48,0,48,0,48,32,48,32,63,224, + 48,32,48,32,48,0,48,0,48,0,48,8,48,24,255,248, + 16,17,34,19,1,0,7,224,1,128,1,128,15,240,57,156, + 97,134,225,135,193,131,193,131,193,131,225,135,97,134,57,156, + 15,240,1,128,1,128,7,224,13,17,34,15,1,0,255,248, + 48,24,48,8,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,252,0, + 16,17,34,18,1,0,252,63,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,63,252,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,252,63,6,17,17,8,1,0,252,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,48,252,14, + 17,34,16,1,0,3,192,6,224,4,96,6,96,3,48,113, + 176,248,240,152,60,24,48,24,48,48,48,48,48,48,48,48, + 96,56,96,28,192,15,128,15,17,34,17,1,0,252,124,48, + 48,48,96,48,192,49,128,51,0,54,0,62,0,63,0,51, + 128,49,128,49,192,48,224,48,112,48,56,48,28,252,62,15, + 17,34,17,1,0,3,0,3,0,3,128,5,128,4,192,4, + 192,12,192,8,96,8,96,24,96,16,48,16,48,48,48,32, + 24,32,24,96,28,248,62,20,17,51,22,1,0,240,1,240, + 56,1,192,56,3,192,60,2,192,44,2,192,46,6,192,38, + 4,192,39,12,192,35,8,192,35,136,192,33,152,192,33,208, + 192,32,208,192,32,240,192,32,96,192,32,96,192,248,67,240, + 16,17,34,18,1,0,240,31,56,4,56,4,44,4,46,4, + 38,4,35,4,35,4,33,132,33,196,32,196,32,100,32,100, + 32,52,32,60,32,28,248,12,16,17,34,18,1,0,7,224, + 30,120,56,28,112,14,96,6,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,96,6,112,14,56,28,28,56,7,224, + 16,17,34,18,1,0,255,255,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,48,12,48,12,48,12,48,12,48,12, + 48,12,48,12,48,12,252,63,16,17,34,18,1,0,7,224, + 30,120,56,28,112,14,96,6,200,19,200,19,207,243,207,243, + 200,19,200,19,192,3,96,6,112,14,56,28,28,56,7,224, + 12,17,34,14,1,0,255,128,48,224,48,96,48,48,48,48, + 48,48,48,96,48,224,63,128,48,0,48,0,48,0,48,0, + 48,0,48,0,48,0,252,0,12,17,34,14,1,0,255,240, + 224,16,112,16,56,0,28,0,14,0,7,0,3,128,3,0, + 6,0,12,0,24,0,48,0,96,16,192,16,255,240,255,240, + 14,17,34,16,1,0,255,252,195,12,131,4,3,0,3,0, + 3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0, + 3,0,3,0,3,0,15,192,16,17,34,16,0,0,248,31, + 112,14,48,12,24,24,28,16,12,48,14,96,6,96,3,192, + 3,192,1,128,1,128,1,128,1,128,1,128,1,128,7,224, + 9,18,36,11,1,251,31,128,63,128,96,0,96,0,192,0, + 192,0,192,0,192,0,192,0,192,0,96,0,127,0,31,128, + 0,128,0,128,1,128,15,0,14,0,16,17,34,18,1,0, + 7,224,30,120,56,28,112,14,96,6,192,3,192,3,192,3, + 192,3,192,3,96,6,48,12,24,24,140,49,196,35,252,63, + 252,63,14,17,34,16,1,0,127,248,127,248,64,8,64,8, + 0,0,16,32,16,32,31,224,31,224,16,32,16,32,0,0, + 0,0,128,4,128,4,255,252,255,252,18,17,51,20,1,0, + 227,241,192,112,195,128,48,195,0,48,195,0,56,199,0,56, + 199,0,24,198,0,28,206,0,7,248,0,0,192,0,0,192, + 0,0,192,0,0,192,0,0,192,0,0,192,0,0,192,0, + 3,240,0,12,17,34,15,1,0,255,240,192,112,128,96,0, + 224,1,192,1,128,3,128,7,0,6,0,14,0,28,0,56, + 0,56,0,112,0,96,16,224,48,255,240,5,22,22,8,2, + 251,248,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,248,12,10,20,18,3,0,6,0,6, + 0,0,0,0,0,0,0,0,0,0,0,0,0,192,48,192, + 48,5,22,22,8,1,251,248,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,24,24,24,24,248,14,17,34, + 16,1,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,255,252,255,252,13,2,4,13,0,251,255,248,255,248,13, + 1,2,13,13,18,255,248,14,13,26,16,1,0,31,24,113, + 184,96,176,224,240,192,96,192,96,192,96,192,96,192,96,224, + 224,96,228,113,252,31,56,10,24,48,12,1,251,62,0,103, + 0,195,128,193,128,193,128,195,128,195,0,206,0,207,0,195, + 128,193,128,193,192,192,192,192,192,192,192,193,192,225,128,243, + 128,223,0,192,0,192,0,192,0,192,0,192,0,12,18,36, + 14,1,251,112,96,248,96,216,192,136,192,9,128,9,128,11, + 0,7,0,6,0,6,0,14,0,14,0,25,0,25,0,49, + 16,49,176,97,240,96,224,10,18,36,12,1,0,31,0,51, + 128,33,128,48,0,56,0,28,0,14,0,63,0,115,128,97, + 128,192,192,192,192,192,192,192,192,192,192,97,128,115,128,30, + 0,9,13,26,11,1,0,62,0,115,0,227,0,195,0,224, + 0,96,0,60,0,96,0,224,0,192,0,224,128,113,128,63, + 0,12,22,44,14,1,251,6,0,6,0,6,0,6,0,31, + 128,54,192,102,96,230,112,198,48,198,48,198,48,198,48,198, + 48,230,112,102,96,54,192,31,128,6,0,6,0,6,0,6, + 0,6,0,11,18,36,11,0,251,112,96,248,96,152,96,152, + 192,24,192,12,192,13,128,13,128,5,128,7,0,7,0,3, + 0,6,0,6,0,6,0,6,0,6,0,6,0,12,18,36, + 15,1,251,113,192,251,224,158,48,28,48,24,48,24,48,24, + 48,24,48,24,48,24,48,24,48,24,48,24,48,0,48,0, + 48,0,48,0,48,0,48,7,13,13,8,1,0,48,112,240, + 48,48,48,48,48,48,48,50,62,28,12,18,36,14,1,251, + 51,128,115,192,102,96,198,112,198,48,198,48,198,48,198,48, + 198,48,230,112,102,96,54,192,31,128,6,0,6,0,6,0, + 6,0,6,0,12,13,26,14,1,0,48,112,112,240,241,176, + 51,0,54,0,60,0,60,0,62,0,55,0,51,128,49,192, + 48,224,49,240,12,19,38,14,1,0,112,0,248,0,136,0, + 8,0,8,0,12,0,12,0,12,0,28,0,30,0,26,0, + 50,0,50,0,51,0,97,0,97,0,97,144,193,240,192,224, + 13,18,36,14,1,251,96,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,113,200,63,248,111,48, + 96,0,96,0,96,0,96,0,192,0,11,13,26,13,1,0, + 192,224,192,224,192,96,96,64,96,192,96,128,49,128,49,0, + 51,0,26,0,26,0,14,0,12,0,11,13,26,13,1,0, + 31,0,113,192,96,192,224,224,192,96,192,96,192,96,192,96, + 192,96,224,224,96,192,113,192,31,0,13,13,26,14,0,0, + 127,248,255,248,152,192,24,192,24,192,24,192,24,192,24,192, + 24,192,24,192,24,200,56,248,48,240,10,17,34,12,1,0, + 30,0,51,0,97,128,97,128,192,192,192,192,192,192,192,192, + 255,192,192,192,192,192,192,192,192,192,97,128,97,128,51,0, + 30,0,10,18,36,12,1,251,62,0,99,128,193,128,193,192, + 192,192,192,192,192,192,192,192,192,192,193,192,193,128,227,128, + 222,0,192,0,192,0,192,0,192,0,192,0,14,13,26,15, + 1,0,31,252,113,252,96,192,224,224,192,96,192,96,192,96, + 192,96,192,96,224,224,96,192,113,192,31,0,10,13,26,11, + 0,0,63,192,127,192,204,0,140,0,12,0,12,0,12,0, + 12,0,12,0,12,0,12,128,15,128,7,0,13,13,26,14, + 0,0,48,224,120,48,216,24,152,24,24,24,24,24,24,24, + 24,24,24,24,24,48,12,48,14,224,7,192,16,14,28,18, + 1,0,127,255,255,255,152,24,48,12,49,140,97,134,97,134, + 97,134,97,134,97,134,97,134,49,140,59,220,30,120,14,13, + 26,16,1,0,24,96,48,48,96,24,99,24,195,12,195,12, + 195,12,195,12,195,12,195,12,99,24,119,184,60,240,10,24, + 48,12,1,251,48,0,99,128,103,128,63,0,48,0,32,0, + 55,128,31,128,48,0,96,0,192,0,128,0,128,0,128,0, + 192,0,240,0,124,0,63,128,15,192,0,192,0,64,0,192, + 15,128,15,0,16,18,36,18,1,251,193,131,113,142,49,140, + 57,156,57,156,57,156,57,156,57,156,57,156,25,152,25,152, + 13,176,7,224,1,128,1,128,1,128,1,128,1,128,10,24, + 48,12,1,251,48,0,99,128,103,128,63,0,24,0,48,0, + 32,0,96,0,64,0,192,0,128,0,128,0,128,0,128,0, + 192,0,240,0,124,0,63,128,15,192,0,192,0,64,0,192, + 15,128,15,0,8,22,22,10,1,251,7,12,24,24,24,24, + 24,16,48,32,192,32,48,16,24,24,24,24,24,24,12,7, + 2,22,22,4,1,251,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,8,22,22,10, + 1,251,224,48,24,24,24,24,24,8,12,4,3,4,12,8, + 24,24,24,24,24,24,48,224,11,4,8,13,1,5,56,32, + 124,96,199,192,131,128,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--34-240-100-100-P-191-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 23, '1' Height: 23 + Calculated Max Values w=32 h=34 x=15 y=26 dx=34 dy= 0 ascent=27 len=108 + Font Bounding box w=40 h=34 x=-5 y=-7 + Calculated Min Values x=-5 y=-7 dx= 0 dy= 0 + Pure Font ascent =23 descent=-7 + X Font ascent =23 descent=-7 + Max Font ascent =27 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb24[10727] U8G_SECTION(".progmem.u8g_font_symb24") = { + 0,40,34,251,249,23,5,133,13,247,32,255,249,27,249,23, + 249,0,0,0,8,0,1,4,23,23,11,4,0,96,240,240, + 240,240,240,96,96,96,96,96,96,96,96,96,96,0,0,0, + 96,240,240,96,20,24,72,23,1,0,192,0,48,192,0,48, + 192,0,96,96,0,96,96,0,96,48,0,192,48,0,192,63, + 255,192,31,255,128,24,1,128,12,3,0,12,3,0,12,3, + 0,6,6,0,6,6,0,3,12,0,3,12,0,3,12,0, + 1,152,0,1,152,0,0,240,0,0,240,0,0,240,0,0, + 96,0,14,23,46,16,1,0,6,48,6,48,6,48,6,48, + 12,96,12,96,12,96,127,252,127,252,12,96,12,96,12,96, + 24,192,24,192,24,192,255,248,255,248,24,192,24,192,49,128, + 49,128,49,128,49,128,15,24,48,18,0,0,255,254,255,254, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,63,254,63,254,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,6,255,254,255,254,23,23,69,27, + 2,255,7,192,96,30,225,192,60,63,192,56,33,128,112,33, + 128,112,35,0,240,98,0,224,70,0,224,204,0,224,204,0, + 97,152,0,119,16,124,62,48,238,0,97,198,0,99,130,0, + 199,2,0,135,2,1,142,6,3,14,4,3,14,12,6,14, + 24,14,7,48,12,3,224,23,22,66,25,1,0,0,248,0, + 3,140,0,3,6,0,7,6,0,7,6,0,7,6,0,7, + 12,0,7,152,0,3,241,252,3,192,112,7,192,96,29,224, + 96,56,240,192,112,240,128,96,121,128,224,63,0,224,30,0, + 224,31,0,240,31,130,248,55,238,127,227,252,31,128,248,12, + 17,34,14,1,0,126,0,127,128,7,192,1,224,0,224,0, + 240,0,112,0,112,63,240,63,240,0,112,0,112,0,224,1, + 224,3,192,255,0,124,0,8,29,29,11,2,250,3,7,6, + 12,24,48,48,112,112,96,96,224,224,224,224,224,224,224,96, + 96,112,112,48,48,24,12,6,7,3,8,29,29,11,1,250, + 192,224,96,48,24,12,12,14,14,6,6,7,7,7,7,7, + 7,7,6,6,14,14,12,12,24,48,96,224,192,11,14,28, + 16,2,4,4,0,14,0,14,0,196,96,228,224,127,192,31, + 0,31,0,127,192,228,224,196,96,14,0,14,0,4,0,16, + 18,36,18,1,0,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,255,255,255,255,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,4,9,9,8,2,251,96, + 240,240,240,16,48,96,224,192,17,2,6,18,0,8,255,255, + 128,255,255,128,4,4,4,8,2,0,96,240,240,96,7,22, + 22,9,1,0,2,2,6,6,4,12,12,8,24,24,16,48, + 48,32,32,96,64,64,192,192,128,128,14,23,46,16,1,0, + 15,192,28,224,56,112,48,48,112,56,112,56,96,24,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 96,24,112,56,112,56,48,48,56,112,28,224,15,192,9,23, + 46,16,4,0,4,0,28,0,252,0,220,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,62,0, + 255,128,14,23,46,16,1,0,15,128,31,192,63,224,97,240, + 192,240,192,112,128,112,0,112,0,112,0,96,0,96,0,192, + 0,192,1,128,3,0,3,0,6,0,12,0,24,0,48,12, + 112,24,127,248,255,240,13,23,46,16,1,0,15,128,63,224, + 113,224,64,224,192,96,128,96,0,96,0,192,0,192,1,128, + 7,192,15,224,1,240,0,112,0,120,0,56,0,56,0,56, + 0,48,0,48,96,96,121,192,127,128,15,23,46,16,0,0, + 0,48,0,112,0,112,0,240,1,240,1,240,3,112,6,112, + 6,112,12,112,24,112,24,112,48,112,32,112,96,112,192,112, + 255,254,255,254,0,112,0,112,0,112,0,112,0,112,13,23, + 46,16,1,0,15,248,15,240,31,240,16,0,48,0,32,0, + 126,0,127,128,127,192,15,224,3,224,0,240,0,112,0,112, + 0,112,0,48,0,48,0,48,0,112,0,96,224,192,251,128, + 254,0,14,23,46,16,1,0,0,56,1,224,3,128,7,0, + 14,0,28,0,56,0,56,0,112,0,119,192,255,240,240,120, + 224,56,224,60,224,28,224,28,224,28,224,28,112,28,112,56, + 56,56,28,112,15,192,13,23,46,16,1,0,127,248,127,248, + 127,248,192,24,128,48,0,48,0,48,0,96,0,96,0,96, + 0,192,0,192,0,192,1,192,1,128,1,128,1,128,3,0, + 3,0,3,0,6,0,6,0,6,0,12,23,46,16,2,0, + 31,128,113,192,96,224,224,96,192,96,224,96,224,224,112,192, + 121,192,63,0,31,0,31,128,63,192,115,192,96,224,224,240, + 192,112,192,112,224,112,224,112,96,96,121,192,31,128,14,23, + 46,16,1,0,15,128,56,224,48,112,96,56,224,56,224,56, + 224,60,224,28,224,28,224,28,240,28,112,28,120,124,63,252, + 15,56,0,56,0,112,0,240,0,224,1,192,7,128,30,0, + 112,0,4,15,15,9,2,0,96,240,240,96,0,0,0,0, + 0,0,0,96,240,240,96,4,20,20,9,3,251,96,240,240, + 96,0,0,0,0,0,0,0,96,240,240,240,16,48,96,224, + 192,16,16,32,18,1,1,0,7,0,31,0,124,1,240,7, + 128,30,0,120,0,224,0,224,0,120,0,30,0,7,128,1, + 240,0,124,0,31,0,7,17,8,24,18,0,5,255,255,128, + 255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,128,255,255,128,16,16,32,18,1,1,224,0,248,0,62, + 0,15,128,1,224,0,120,0,30,0,7,0,7,0,30,0, + 120,1,224,15,128,62,0,248,0,224,0,11,23,46,14,2, + 0,63,0,99,128,193,192,192,224,192,224,224,224,192,224,1, + 224,1,192,1,128,3,128,3,0,6,0,6,0,4,0,4, + 0,4,0,0,0,0,0,12,0,30,0,30,0,12,0,17, + 16,48,18,0,0,30,1,0,63,195,128,96,255,0,64,28, + 0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,128, + 255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,128,255,255,128,21,23,69,23,0,0,0,32,0,0,112, + 0,0,112,0,0,112,0,0,248,0,0,248,0,0,188,0, + 1,188,0,1,156,0,3,30,0,3,14,0,2,15,0,6, + 15,0,6,7,0,12,7,128,15,255,128,8,3,128,24,3, + 192,24,1,192,48,1,224,48,1,224,112,1,240,252,7,248, + 18,23,69,22,1,0,255,224,0,63,254,0,28,31,0,28, + 7,0,28,7,128,28,7,128,28,7,128,28,7,128,28,7, + 0,28,15,0,28,62,0,31,248,0,28,31,0,28,7,128, + 28,3,128,28,3,192,28,3,192,28,3,192,28,3,192,28, + 7,128,28,15,128,63,255,0,255,248,0,22,23,69,23,0, + 0,255,195,252,63,0,224,31,0,192,15,1,192,7,129,128, + 7,195,0,3,198,0,1,230,0,1,236,0,0,248,0,0, + 120,0,0,120,0,0,124,0,0,222,0,1,158,0,1,143, + 0,3,15,128,6,7,128,14,3,192,12,3,224,24,1,224, + 56,1,240,254,7,252,19,22,66,20,0,0,0,96,0,0, + 96,0,0,240,0,0,240,0,0,240,0,1,248,0,1,56, + 0,3,60,0,2,60,0,6,28,0,4,30,0,12,14,0, + 12,15,0,8,15,0,24,7,0,16,7,128,48,3,128,32, + 3,192,96,3,192,64,1,192,255,255,224,255,255,224,18,23, + 69,20,1,0,255,255,128,63,255,128,28,3,128,28,1,128, + 28,1,128,28,0,0,28,0,0,28,2,0,28,2,0,28, + 2,0,28,14,0,31,254,0,28,6,0,28,2,0,28,2, + 0,28,0,0,28,0,0,28,0,64,28,0,64,28,0,192, + 28,1,192,63,255,128,255,255,128,23,23,69,25,1,0,1, + 255,0,0,124,0,0,56,0,0,56,0,7,255,192,31,57, + 240,60,56,120,120,56,60,120,56,60,240,56,30,240,56,30, + 240,56,30,240,56,30,240,56,30,120,56,28,120,56,60,60, + 56,120,31,57,240,7,255,192,0,56,0,0,56,0,0,124, + 0,1,255,0,18,23,69,20,1,0,255,255,128,63,255,192, + 60,1,192,28,0,192,28,0,64,28,0,64,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,62,0,0,255,128,0,22, + 23,69,24,1,0,255,135,252,62,1,240,28,0,224,28,0, + 224,28,0,224,28,0,224,28,0,224,28,0,224,28,0,224, + 28,0,224,28,0,224,31,255,224,28,0,224,28,0,224,28, + 0,224,28,0,224,28,0,224,28,0,224,28,0,224,28,0, + 224,28,0,224,62,1,240,255,135,252,9,23,46,11,1,0, + 255,128,62,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,62,0,255,128,20,23, + 69,20,0,0,0,120,0,0,220,0,0,134,0,0,135,0, + 0,131,0,0,195,128,0,67,128,28,99,128,62,57,128,126, + 29,128,199,7,128,199,1,224,6,1,176,14,1,128,14,1, + 128,14,1,128,14,3,128,14,3,0,14,3,0,14,7,0, + 7,6,0,3,156,0,1,248,0,22,23,69,23,1,0,255, + 143,240,62,3,192,28,3,128,28,3,0,28,6,0,28,12, + 0,28,24,0,28,48,0,28,96,0,29,192,0,31,224,0, + 31,224,0,30,240,0,28,120,0,28,124,0,28,62,0,28, + 31,0,28,15,128,28,7,128,28,3,192,28,1,224,62,1, + 240,255,143,252,21,22,66,22,0,0,0,32,0,0,48,0, + 0,112,0,0,112,0,0,248,0,0,248,0,0,188,0,1, + 188,0,1,156,0,1,30,0,3,14,0,3,15,0,2,15, + 0,6,7,0,6,7,128,12,3,128,12,3,192,8,3,192, + 24,1,192,24,1,224,56,1,240,254,7,248,27,23,92,29, + 1,0,254,0,15,224,30,0,15,128,31,0,15,0,31,0, + 31,0,31,0,31,0,31,128,55,0,27,128,55,0,27,192, + 39,0,27,192,103,0,25,224,103,0,25,224,199,0,24,224, + 199,0,24,240,135,0,24,113,135,0,24,121,135,0,24,123, + 7,0,24,63,7,0,24,63,7,0,24,30,7,0,24,30, + 7,0,24,12,7,0,56,12,15,128,255,12,63,224,22,23, + 69,23,1,0,252,3,252,62,0,96,30,0,96,31,0,96, + 31,128,96,31,192,96,27,192,96,25,224,96,25,240,96,24, + 240,96,24,120,96,24,60,96,24,60,96,24,30,96,24,15, + 96,24,15,224,24,7,224,24,3,224,24,1,224,24,1,224, + 24,0,224,56,0,96,255,0,32,22,23,69,23,1,0,1, + 254,0,7,135,128,14,1,192,28,0,224,60,0,240,120,0, + 112,120,0,120,112,0,56,240,0,60,240,0,60,240,0,60, + 240,0,60,240,0,60,240,0,60,240,0,60,112,0,56,120, + 0,120,56,0,112,60,0,240,28,0,224,14,1,192,7,207, + 128,1,254,0,23,23,69,25,1,0,255,255,254,63,255,248, + 28,0,112,28,0,112,28,0,112,28,0,112,28,0,112,28, + 0,112,28,0,112,28,0,112,28,0,112,28,0,112,28,0, + 112,28,0,112,28,0,112,28,0,112,28,0,112,28,0,112, + 28,0,112,28,0,112,28,0,112,62,0,248,255,131,254,22, + 23,69,24,1,0,1,254,0,7,135,128,14,1,192,28,0, + 224,60,0,240,56,0,112,120,0,120,112,0,56,112,0,56, + 242,1,60,243,3,60,243,255,60,243,255,60,243,3,60,242, + 1,60,112,0,56,112,0,56,120,0,120,56,0,112,28,0, + 224,14,1,192,7,135,128,1,254,0,17,23,69,18,1,0, + 255,240,0,63,254,0,28,15,0,28,7,128,28,7,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,7,128,28,7, + 0,30,62,0,31,252,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,62, + 0,0,255,128,0,18,23,69,19,1,0,255,255,0,255,255, + 0,120,3,0,60,1,0,62,1,128,30,0,0,15,0,0, + 7,128,0,7,192,0,3,192,0,1,224,0,0,192,0,1, + 192,0,1,128,0,3,0,0,6,0,0,12,0,64,28,0, + 192,24,0,128,48,1,128,127,255,128,255,255,128,255,255,128, + 19,23,69,20,1,0,255,255,224,248,227,224,192,224,224,192, + 224,96,128,224,32,128,224,32,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,1,240,0,7,252,0,23,23,69,23,0, + 0,255,193,254,62,0,112,31,0,96,15,0,224,15,128,192, + 7,129,128,3,193,128,3,227,0,1,227,0,0,246,0,0, + 252,0,0,124,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,124,0,1,255,0,13,24,48,14,1,249,3,224,15,240, + 31,240,48,0,96,0,64,0,192,0,192,0,128,0,128,0, + 128,0,192,0,192,0,240,0,127,240,63,240,31,248,0,24, + 0,8,0,8,0,24,7,240,7,240,7,192,23,23,69,25, + 1,0,0,254,0,3,131,128,14,0,224,30,0,240,28,0, + 112,60,0,120,56,0,56,120,0,60,120,0,60,120,0,60, + 120,0,60,120,0,60,120,0,60,56,0,56,60,0,120,28, + 0,112,14,0,224,7,1,192,129,131,2,192,130,6,255,199, + 254,255,199,254,255,199,254,19,23,69,21,1,0,127,255,192, + 127,255,192,127,255,192,96,0,192,64,0,64,0,0,0,0, + 0,0,0,0,0,8,2,0,12,6,0,15,254,0,15,254, + 0,15,254,0,8,2,0,8,2,0,0,0,0,0,0,0, + 192,0,96,192,0,96,64,0,64,127,255,192,127,255,192,127, + 255,192,25,23,92,26,0,0,224,255,131,128,112,62,7,0, + 56,28,14,0,56,28,14,0,60,28,30,0,60,28,30,0, + 60,28,30,0,60,28,30,0,60,28,30,0,28,28,28,0, + 30,28,60,0,15,156,248,0,3,255,224,0,0,28,0,0, + 0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0, + 0,28,0,0,0,28,0,0,0,28,0,0,0,62,0,0, + 0,255,128,0,19,23,69,20,1,0,127,255,192,120,3,192, + 96,7,128,96,15,0,64,15,0,64,30,0,0,62,0,0, + 60,0,0,120,0,0,248,0,0,240,0,1,224,0,1,224, + 0,3,192,0,7,192,0,7,128,0,15,0,0,31,0,32, + 30,0,32,62,0,96,60,0,224,120,3,192,255,255,192,7, + 28,28,11,3,251,254,224,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,224, + 254,17,16,48,28,5,0,1,224,0,1,224,0,1,224,0, + 1,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,240,7,128,240,7, + 128,240,7,128,240,7,128,7,28,28,11,1,251,254,14,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,6,6,14,254,20,23,69,21,1,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,96,0,0,96,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,96,0,255,255, + 240,255,255,240,16,2,4,16,0,249,255,255,255,255,20,1, + 3,17,15,26,255,255,240,19,17,51,20,1,0,15,193,128, + 28,225,128,56,51,128,112,19,128,112,23,0,240,31,0,224, + 15,0,224,14,0,224,14,0,224,14,0,224,28,0,240,30, + 0,240,30,32,112,58,32,120,115,224,60,225,192,15,193,192, + 14,32,64,18,2,249,15,128,25,224,48,224,112,112,96,112, + 96,112,96,112,96,112,96,112,96,96,103,192,103,224,96,112, + 96,56,96,56,96,60,96,28,96,28,96,28,96,28,96,28, + 96,56,120,120,111,240,99,192,96,0,96,0,96,0,96,0, + 224,0,224,0,224,0,17,25,75,18,0,249,24,0,0,60, + 14,0,126,14,0,70,30,0,194,28,0,195,60,0,3,56, + 0,1,112,0,1,112,0,1,224,0,1,224,0,1,192,0, + 3,192,0,3,128,0,7,192,0,7,192,0,15,64,0,14, + 64,0,30,96,0,28,97,128,60,97,128,56,51,0,120,63, + 0,112,62,0,112,30,0,14,25,50,16,1,0,15,128,31, + 224,48,240,32,120,48,48,56,0,28,0,14,0,7,128,3, + 192,7,240,28,240,56,120,112,56,240,60,224,28,224,28,224, + 28,224,28,240,28,240,56,112,56,120,112,31,224,7,128,12, + 18,36,14,1,255,31,128,57,224,112,224,224,224,224,64,224, + 0,112,0,120,0,31,128,120,0,240,0,224,0,224,0,224, + 16,240,48,120,48,63,224,15,128,15,30,60,17,1,249,1, + 0,1,0,1,0,1,0,1,0,1,0,15,192,29,112,57, + 56,113,28,113,28,225,30,225,14,225,14,225,14,225,14,225, + 14,241,14,113,12,113,28,57,24,29,112,7,224,1,0,1, + 0,1,0,1,0,1,0,1,0,1,0,15,24,48,13,254, + 249,56,14,124,14,124,14,198,28,134,28,130,28,3,56,3, + 56,1,48,1,48,1,96,1,224,1,192,0,192,0,192,1, + 128,1,192,1,192,3,192,3,192,3,192,3,192,3,128,1, + 128,17,24,72,20,0,249,24,56,0,124,254,0,223,222,0, + 207,15,0,143,7,0,14,7,0,14,7,0,14,7,0,14, + 7,0,14,7,0,14,7,0,14,7,0,14,7,0,14,7, + 0,14,7,0,14,7,0,14,7,0,0,7,0,0,7,0, + 0,7,0,0,7,0,0,7,0,0,3,0,0,3,128,10, + 17,34,11,0,0,4,0,124,0,252,0,60,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 64,28,192,15,192,15,0,18,24,72,20,1,249,6,60,0, + 30,126,0,56,255,0,112,199,128,112,195,128,240,195,192,224, + 193,192,224,193,192,224,193,192,224,193,192,240,193,192,240,193, + 128,112,195,128,120,195,0,56,199,0,30,220,0,7,248,0, + 0,192,0,0,192,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,17,17,51,18,1,0,8,7,0,248,31, + 128,248,63,128,56,99,0,24,192,0,25,128,0,27,0,0, + 31,128,0,31,128,0,27,192,0,25,224,0,24,240,0,24, + 240,0,24,120,0,24,60,0,24,62,0,24,127,128,17,25, + 75,18,1,0,56,0,0,124,0,0,126,0,0,198,0,0, + 195,0,0,131,0,0,1,0,0,1,0,0,1,128,0,3, + 128,0,3,128,0,7,128,0,7,192,0,15,192,0,14,192, + 0,30,64,0,28,96,0,28,96,0,56,96,0,56,96,128, + 112,48,128,112,57,128,224,63,0,224,31,0,224,14,0,17, + 24,72,19,1,249,112,56,0,112,56,0,112,56,0,112,56, + 0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0, + 112,56,0,112,56,0,112,56,0,112,120,0,120,120,128,127, + 253,128,127,159,128,110,30,0,96,0,0,96,0,0,96,0, + 0,224,0,0,224,0,0,224,0,0,96,0,0,16,17,34, + 17,255,0,24,6,248,7,60,7,28,7,28,7,30,6,14, + 6,14,12,7,12,7,24,7,152,3,176,3,160,1,224,1, + 192,1,192,0,128,15,17,34,18,1,0,7,192,28,112,48, + 56,112,60,112,28,224,30,224,14,224,14,224,14,224,14,224, + 14,240,14,112,28,120,28,56,56,30,112,15,224,17,17,51, + 18,0,0,15,255,128,63,255,128,63,255,128,102,56,0,198, + 56,0,6,48,0,6,48,0,6,48,0,6,48,0,6,48, + 0,4,48,0,12,48,0,12,48,128,28,57,128,60,63,0, + 60,31,0,56,30,0,14,23,46,17,1,0,7,128,28,224, + 24,112,48,48,112,56,112,56,240,60,224,28,224,28,224,28, + 224,28,255,252,255,252,224,28,224,28,224,28,224,28,112,56, + 112,56,112,56,56,112,28,224,15,192,14,25,50,18,2,249, + 7,192,31,224,48,240,96,120,96,120,224,60,224,60,224,28, + 224,28,224,28,224,28,224,24,224,24,224,56,240,112,248,224, + 239,192,231,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,18,18,54,20,1,0,3,255,192,15,255,192,63,255, + 192,124,48,0,120,24,0,240,28,0,240,14,0,224,15,0, + 224,7,0,224,7,0,240,7,0,112,7,0,112,15,0,56, + 14,0,60,30,0,30,56,0,7,240,0,1,192,0,14,17, + 34,14,0,0,15,252,63,252,63,252,99,128,195,128,195,128, + 3,0,3,0,3,0,3,0,3,0,3,8,3,136,3,152, + 3,248,1,240,1,224,17,18,54,19,0,0,0,16,0,60, + 24,0,124,28,0,252,6,0,206,7,0,142,3,0,14,3, + 0,14,3,128,14,3,128,14,3,128,14,3,128,14,3,128, + 14,3,0,14,7,0,7,7,0,7,14,0,3,156,0,1, + 248,0,21,19,57,23,0,0,31,255,248,63,255,248,127,255, + 248,231,131,128,222,0,192,60,0,224,56,56,112,120,56,112, + 120,56,56,120,56,56,112,56,56,112,56,56,112,56,56,112, + 16,56,120,16,56,120,56,112,56,40,112,28,236,224,15,135, + 192,20,17,51,22,1,0,15,14,0,28,7,128,56,1,192, + 112,97,224,112,224,224,224,224,240,224,224,240,224,224,112,224, + 224,112,224,224,112,224,224,112,224,64,112,224,224,240,112,224, + 224,113,177,224,63,31,192,30,15,0,14,33,66,16,1,249, + 48,0,96,192,99,224,103,192,63,128,24,0,48,0,32,0, + 32,0,48,0,49,240,31,240,31,224,48,0,96,0,64,0, + 192,0,128,0,128,0,128,0,192,0,192,0,248,0,127,240, + 63,252,31,252,0,12,0,4,0,4,0,12,3,248,3,248, + 1,224,22,24,72,22,0,249,240,48,60,120,48,120,60,48, + 240,28,48,224,28,48,224,28,48,224,28,48,224,28,48,224, + 30,48,224,30,49,224,30,49,224,14,49,192,14,49,192,6, + 49,192,7,51,128,3,183,0,1,254,0,0,48,0,0,48, + 0,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 13,32,64,16,2,249,24,0,56,112,48,240,51,224,63,192, + 14,0,12,0,24,0,16,0,48,0,32,0,96,0,64,0, + 64,0,192,0,192,0,192,0,192,0,192,0,224,0,96,0, + 127,192,63,240,31,248,15,248,0,24,0,8,0,8,0,24, + 3,248,7,240,3,224,11,29,58,16,2,250,7,224,14,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,28,0,28,0,112,0,192,0,112,0,28,0,28,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,14,0,7,224,2,28,28,7,2,250,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,11,29,58,16,2,250,252,0, + 14,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,7,0,7,0,1,192,0,96,1,192,7,0, + 7,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,14,0,252,0,15,4,8,18,1,7,24,0, + 127,134,227,254,192,56,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,20,23,69,20,0,0,240,1, + 192,124,7,224,15,12,112,7,12,240,3,152,224,1,208,224, + 1,208,0,1,240,0,1,240,0,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,1,240,0, + 7,252,0,6,9,9,8,1,16,24,60,60,120,112,96,224, + 192,128,16,21,42,18,1,0,0,7,0,31,0,124,1,240, + 7,192,30,0,120,0,224,0,224,0,120,0,30,0,7,128, + 1,224,0,120,0,30,0,7,0,1,0,0,0,0,255,255, + 255,255,15,23,46,6,251,0,0,2,0,6,0,12,0,12, + 0,24,0,48,0,48,0,96,0,192,0,192,1,128,3,0, + 3,0,6,0,12,0,12,0,24,0,48,0,48,0,96,0, + 192,0,192,0,128,0,21,10,30,23,1,4,28,3,192,127, + 15,224,99,158,48,193,248,24,192,240,24,192,240,24,192,248, + 24,99,156,48,127,15,240,28,3,192,16,29,58,16,0,250, + 0,30,0,51,0,103,0,98,0,224,0,224,0,192,0,192, + 0,192,15,252,1,192,1,192,1,192,1,192,1,128,1,128, + 1,128,3,128,3,128,3,128,3,0,3,0,3,0,3,0, + 2,0,102,0,230,0,236,0,120,0,18,18,54,24,3,0, + 1,224,0,3,240,0,7,248,0,7,248,0,7,248,0,7, + 248,0,3,240,0,1,224,0,124,207,128,255,255,192,255,255, + 192,255,255,192,255,255,192,255,255,192,252,207,192,120,199,128, + 0,192,0,1,224,0,14,18,36,24,5,0,3,0,7,128, + 7,192,15,192,31,224,63,240,127,248,127,248,255,252,255,252, + 127,248,127,248,63,240,31,224,15,192,7,192,7,128,3,0, + 16,18,36,24,4,0,124,62,254,127,254,127,255,255,255,255, + 255,255,255,255,127,254,127,254,63,252,63,252,31,248,15,240, + 15,240,7,224,3,192,1,128,1,128,16,18,36,24,4,0, + 1,128,1,192,3,192,7,224,7,240,15,240,31,248,63,252, + 63,252,127,254,255,255,255,255,255,255,253,191,249,159,249,159, + 113,142,3,192,32,16,64,34,1,0,1,128,1,128,3,0, + 0,192,7,0,0,224,14,0,0,112,28,0,0,56,56,0, + 0,28,112,0,0,14,255,255,255,255,255,255,255,255,112,0, + 0,14,56,0,0,28,28,0,0,56,14,0,0,112,7,0, + 0,224,3,0,0,192,1,128,1,128,29,16,64,32,1,0, + 1,128,0,0,3,0,0,0,6,0,0,0,14,0,0,0, + 28,0,0,0,56,0,0,0,112,0,0,0,255,255,255,248, + 255,255,255,248,112,0,0,0,56,0,0,0,28,0,0,0, + 14,0,0,0,6,0,0,0,3,0,0,0,1,128,0,0, + 16,27,54,20,2,0,1,128,3,192,7,224,15,240,29,184, + 57,156,113,142,225,135,193,131,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,29,16,64,32, + 2,0,0,0,12,0,0,0,14,0,0,0,7,0,0,0, + 3,128,0,0,1,192,0,0,0,224,0,0,0,112,255,255, + 255,248,255,255,255,248,0,0,0,112,0,0,0,224,0,0, + 1,192,0,0,3,128,0,0,7,0,0,0,14,0,0,0, + 12,0,16,27,54,20,2,0,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,193,131,225,135, + 113,142,57,156,29,184,15,240,7,224,3,192,1,128,9,10, + 20,13,2,13,28,0,99,0,65,0,128,128,128,128,128,128, + 128,128,65,0,99,0,28,0,16,22,44,18,1,0,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,255,255, + 255,255,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,0,0,0,0,255,255,255,255,12,9,18,13,1,15, + 28,112,28,112,60,240,56,224,113,192,113,192,227,128,195,0, + 130,0,16,21,42,18,1,0,224,0,248,0,62,0,15,128, + 1,224,0,120,0,30,0,7,0,7,0,30,0,120,1,224, + 7,128,30,0,120,0,224,0,128,0,0,0,0,0,255,255, + 255,255,16,16,32,18,1,1,192,3,224,7,112,14,56,28, + 28,56,14,112,7,224,3,192,3,192,7,224,14,112,28,56, + 56,28,112,14,224,7,192,3,19,10,30,23,1,4,28,3, + 192,63,15,224,99,156,0,193,248,0,192,240,0,192,240,0, + 193,248,0,99,156,0,127,15,224,28,3,192,14,27,54,16, + 1,0,30,0,63,128,32,224,0,112,0,48,0,24,0,24, + 0,24,0,28,0,28,0,28,15,28,31,252,56,124,120,60, + 112,60,240,56,224,56,224,56,224,56,224,112,224,112,96,96, + 112,224,57,192,31,128,15,0,11,12,24,15,2,4,14,0, + 63,128,127,192,127,192,255,224,255,224,255,224,255,224,127,192, + 127,192,63,128,14,0,16,13,26,18,1,2,1,128,3,192, + 3,192,1,128,0,0,255,255,255,255,0,0,0,0,1,128, + 3,192,3,192,1,128,17,19,57,18,1,255,0,12,0,0, + 24,0,0,24,0,0,48,0,0,48,0,255,255,128,255,255, + 128,0,192,0,0,192,0,1,128,0,1,128,0,3,0,0, + 255,255,128,255,255,128,6,0,0,12,0,0,12,0,0,24, + 0,0,24,0,0,17,12,36,18,0,3,255,255,128,255,255, + 128,0,0,0,0,0,0,0,0,0,255,255,128,255,255,128, + 0,0,0,0,0,0,0,0,0,255,255,128,255,255,128,16, + 9,18,18,1,4,28,0,127,135,225,254,64,56,0,0,28, + 0,127,135,225,254,192,56,26,4,16,33,3,0,96,12,1, + 128,240,30,3,192,240,30,3,192,96,12,1,128,2,34,34, + 20,9,249,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,32,2,8,32,0,7,255,255,255,255,255, + 255,255,255,18,21,63,21,1,0,0,0,192,0,0,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,0,192,0,0,192,0,0,192,0,0,192, + 0,0,192,0,0,192,16,0,192,112,0,192,255,255,192,255, + 255,192,112,0,0,16,0,0,16,22,44,27,5,0,0,32, + 96,96,240,126,240,127,248,127,124,63,60,15,62,12,31,24, + 31,152,55,240,115,240,97,240,225,240,240,248,240,124,120,62, + 124,30,124,31,60,15,124,7,252,6,18,27,81,22,1,254, + 7,240,0,31,254,0,63,255,128,56,63,128,96,7,0,96, + 7,0,64,6,0,64,12,0,64,12,0,96,28,0,48,28, + 0,28,14,0,14,14,0,0,15,0,0,7,0,0,7,128, + 0,3,128,0,3,192,0,1,192,0,1,192,0,1,192,60, + 1,128,255,1,128,159,195,0,7,254,0,3,248,0,0,240, + 0,23,24,72,26,1,0,15,128,192,63,225,240,97,247,248, + 192,252,124,128,120,62,128,120,28,128,56,56,192,56,112,224, + 56,192,120,57,192,62,59,192,14,57,224,6,56,224,6,56, + 224,0,56,240,0,56,240,0,56,112,0,112,112,0,112,112, + 0,96,120,30,192,122,63,128,62,47,128,60,6,0,16,23, + 26,78,32,5,249,0,192,0,1,192,0,3,0,112,6,3, + 252,6,14,30,12,24,30,28,48,14,24,96,14,56,192,30, + 57,128,30,59,0,30,62,0,28,62,48,60,60,120,56,30, + 112,120,62,64,240,47,65,224,111,99,192,71,63,0,199,0, + 0,135,0,0,131,0,0,131,0,0,199,0,0,102,0,0, + 60,0,0,22,23,69,25,1,0,0,252,0,3,255,0,15, + 3,192,28,0,224,56,0,112,50,1,48,103,3,152,99,135, + 24,193,134,8,192,204,12,192,120,12,192,48,12,192,120,12, + 192,204,12,193,134,12,99,135,24,103,3,152,50,1,48,56, + 0,112,28,0,224,15,3,192,3,255,0,0,252,0,22,23, + 69,25,1,0,0,252,0,3,255,0,15,3,192,28,48,224, + 24,48,96,48,48,48,96,48,24,96,48,24,96,48,24,192, + 48,12,192,48,12,223,255,236,223,255,236,192,48,12,192,48, + 12,96,48,24,96,48,24,48,48,48,56,48,112,28,48,224, + 15,3,192,3,255,0,0,252,0,24,24,72,27,1,0,0, + 126,2,3,255,198,7,129,238,14,0,124,24,0,56,48,0, + 124,112,0,238,96,1,198,96,3,134,192,7,3,192,14,3, + 192,28,3,192,56,3,192,112,3,192,224,3,97,192,6,99, + 128,6,119,0,14,62,0,12,28,0,24,62,0,112,119,129, + 224,227,255,192,192,126,0,22,17,51,25,1,0,0,252,0, + 3,255,0,15,3,192,28,0,224,56,0,112,48,0,48,96, + 0,24,96,0,24,192,0,12,192,0,12,192,0,12,192,0, + 12,192,0,12,192,0,12,192,0,12,192,0,12,192,0,12, + 22,17,51,25,1,0,192,0,12,192,0,12,192,0,12,192, + 0,12,192,0,12,192,0,12,192,0,12,192,0,12,192,0, + 12,96,0,24,96,0,24,48,0,48,56,0,112,28,0,224, + 15,3,192,3,255,0,0,252,0,21,16,48,23,1,0,255, + 255,0,255,255,192,0,1,224,0,0,112,0,0,48,0,0, + 56,0,0,24,0,0,24,0,0,24,0,0,24,0,0,24, + 0,0,48,0,0,112,0,0,224,255,255,192,255,255,0,21, + 20,60,23,1,252,255,255,0,255,255,192,0,0,224,0,0, + 112,0,0,48,0,0,24,0,0,24,0,0,24,0,0,24, + 0,0,24,0,0,24,0,0,48,0,0,112,0,0,224,255, + 255,192,255,255,0,0,0,0,0,0,0,255,255,240,255,255, + 240,21,20,60,23,1,254,0,0,96,0,0,192,7,255,248, + 15,255,248,56,1,128,112,3,0,96,3,0,224,6,0,192, + 6,0,192,12,0,192,12,0,192,24,0,224,24,0,96,48, + 0,112,48,0,60,96,0,31,255,248,7,255,248,0,192,0, + 1,128,0,21,16,48,23,1,0,7,255,248,31,255,248,56, + 0,0,112,0,0,96,0,0,192,0,0,192,0,0,192,0, + 0,192,0,0,192,0,0,224,0,0,96,0,0,112,0,0, + 60,0,0,31,255,248,7,255,248,21,20,60,23,1,252,7, + 255,248,31,255,248,56,0,0,112,0,0,96,0,0,192,0, + 0,192,0,0,192,0,0,192,0,0,192,0,0,192,0,0, + 96,0,0,112,0,0,56,0,0,31,255,248,7,255,248,0, + 0,0,0,0,0,127,255,248,127,255,248,15,16,32,23,1, + 0,7,254,31,254,56,0,112,0,96,0,192,0,192,0,255, + 254,255,254,192,0,192,0,96,0,112,0,56,0,31,254,7, + 254,15,20,40,23,1,254,0,24,0,24,7,254,31,254,56, + 96,112,96,96,192,64,192,193,128,255,254,255,254,195,0,70, + 0,110,0,124,0,60,0,31,254,55,254,48,0,32,0,22, + 22,66,25,1,0,0,0,12,0,0,28,0,0,56,0,0, + 112,0,0,224,0,1,192,0,3,128,0,7,0,0,14,0, + 0,28,0,0,56,0,0,112,0,0,96,0,0,192,0,1, + 128,0,3,0,0,7,0,0,14,0,0,28,0,0,56,0, + 0,127,255,248,255,255,248,20,24,72,23,1,0,255,255,240, + 127,255,240,120,0,48,120,0,32,60,0,96,60,0,64,28, + 0,192,30,0,192,30,1,128,15,1,128,15,1,0,7,3, + 0,7,130,0,7,134,0,3,196,0,3,204,0,3,204,0, + 1,248,0,1,248,0,0,240,0,0,240,0,0,224,0,0, + 96,0,0,64,0,21,22,66,25,2,0,1,252,0,7,7, + 0,12,1,192,24,0,192,51,248,96,97,142,48,65,134,16, + 193,134,24,193,134,24,129,140,8,129,248,8,129,184,8,129, + 152,8,193,156,24,193,142,24,65,135,16,103,195,176,48,0, + 96,24,0,192,28,1,192,7,7,0,1,252,0,21,23,69, + 25,2,0,1,252,0,7,207,0,14,1,128,24,0,192,48, + 0,96,48,0,48,96,125,48,65,199,16,195,3,24,195,1, + 24,134,0,8,134,0,8,134,0,8,134,0,8,134,0,8, + 199,0,24,67,3,24,97,199,16,32,252,48,48,0,96,28, + 0,192,7,135,128,1,254,0,27,13,52,29,1,10,255,220, + 1,224,204,206,3,128,140,78,3,128,12,15,7,128,12,11, + 5,128,12,11,141,128,12,9,141,128,12,9,201,128,12,8, + 217,128,12,8,241,128,12,8,113,128,12,8,97,128,62,30, + 39,224,25,27,108,27,1,0,255,255,255,128,63,255,254,0, + 30,0,60,0,30,0,60,0,30,0,60,0,30,0,60,0, + 30,0,60,0,30,0,60,0,30,0,60,0,30,0,60,0, + 30,0,60,0,30,0,60,0,30,0,60,0,30,0,60,0, + 30,0,60,0,30,0,60,0,30,0,60,0,30,0,60,0, + 30,0,60,0,30,0,60,0,30,0,60,0,30,0,60,0, + 30,0,60,0,30,0,60,0,30,0,60,0,63,0,126,0, + 255,193,255,128,17,27,81,18,0,0,0,0,128,0,0,128, + 0,0,128,0,0,128,0,1,128,0,1,0,0,1,0,0, + 3,0,0,2,0,8,2,0,56,2,0,236,6,0,12,4, + 0,6,4,0,6,4,0,3,4,0,3,12,0,1,140,0, + 1,136,0,0,200,0,0,200,0,0,104,0,0,120,0,0, + 56,0,0,48,0,0,16,0,0,16,0,3,3,3,8,2, + 7,224,224,224,21,10,30,23,1,0,255,255,248,255,255,248, + 0,0,24,0,0,24,0,0,24,0,0,24,0,0,24,0, + 0,24,0,0,24,0,0,24,16,15,30,20,2,0,1,128, + 1,128,3,192,3,192,6,96,14,112,12,48,28,56,24,24, + 48,12,48,12,96,6,224,7,192,3,128,1,16,15,30,20, + 2,0,128,1,192,3,224,7,96,6,48,12,48,12,24,24, + 28,56,12,48,6,96,6,96,3,192,3,192,1,128,1,128, + 32,18,72,34,1,0,0,128,1,0,1,128,1,128,3,0, + 0,192,6,0,0,96,15,255,255,240,31,255,255,248,56,0, + 0,28,112,0,0,14,224,0,0,7,224,0,0,7,112,0, + 0,14,56,0,0,28,31,255,255,248,15,255,255,240,6,0, + 0,96,3,0,0,192,1,128,1,128,0,128,1,0,29,17, + 68,32,1,0,0,128,0,0,1,128,0,0,3,0,0,0, + 6,0,0,0,15,255,255,248,31,255,255,248,56,0,0,0, + 112,0,0,0,224,0,0,0,112,0,0,0,56,0,0,0, + 31,255,255,248,15,255,255,248,6,0,0,0,3,0,0,0, + 1,128,0,0,0,128,0,0,17,27,81,20,1,0,0,128, + 0,1,192,0,3,224,0,7,112,0,14,56,0,28,28,0, + 60,30,0,124,31,0,236,27,128,12,24,0,12,24,0,12, + 24,0,12,24,0,12,24,0,12,24,0,12,24,0,12,24, + 0,12,24,0,12,24,0,12,24,0,12,24,0,12,24,0, + 12,24,0,12,24,0,12,24,0,12,24,0,12,24,0,29, + 17,68,32,2,0,0,0,8,0,0,0,12,0,0,0,6, + 0,0,0,3,0,255,255,255,128,255,255,255,192,0,0,0, + 224,0,0,0,112,0,0,0,56,0,0,0,112,0,0,0, + 224,255,255,255,192,255,255,255,128,0,0,3,0,0,0,6, + 0,0,0,12,0,0,0,8,0,17,27,81,20,1,0,12, + 24,0,12,24,0,12,24,0,12,24,0,12,24,0,12,24, + 0,12,24,0,12,24,0,12,24,0,12,24,0,12,24,0, + 12,24,0,12,24,0,12,24,0,12,24,0,12,24,0,12, + 24,0,12,24,0,236,27,128,124,31,0,60,30,0,28,28, + 0,14,56,0,7,112,0,3,224,0,1,192,0,0,128,0, + 14,25,50,16,1,0,3,0,7,128,7,128,12,192,12,192, + 24,96,24,96,48,48,48,48,96,24,96,24,192,12,192,12, + 224,28,96,24,96,24,48,48,48,48,24,96,24,96,12,192, + 12,192,7,128,7,128,3,0,9,30,60,11,1,250,1,128, + 3,0,3,0,6,0,6,0,14,0,12,0,28,0,24,0, + 56,0,48,0,48,0,96,0,96,0,192,0,192,0,96,0, + 96,0,48,0,48,0,56,0,24,0,28,0,12,0,14,0, + 6,0,6,0,3,0,3,0,1,128,21,22,66,26,2,0, + 1,252,0,7,15,0,12,1,128,24,0,192,48,0,96,99, + 254,48,67,6,16,195,3,24,195,3,24,195,3,24,131,6, + 8,131,252,8,131,6,8,195,3,24,195,3,24,67,3,16, + 99,3,48,32,0,32,48,0,96,28,1,192,7,15,0,3, + 252,0,21,23,69,26,2,0,1,252,0,7,223,0,14,3, + 128,24,0,192,48,0,96,32,0,32,96,252,48,65,206,16, + 195,6,24,195,3,24,194,0,8,134,0,8,134,0,8,134, + 0,8,134,3,24,195,3,24,67,6,24,97,206,48,32,248, + 48,48,0,96,28,0,192,15,135,128,3,254,0,22,13,39, + 25,1,10,255,56,28,24,56,28,24,56,28,24,60,60,24, + 60,60,24,52,44,24,54,108,24,54,108,24,50,76,24,51, + 204,24,51,204,24,49,140,24,49,140,21,28,84,23,1,255, + 255,255,224,120,3,224,124,0,96,60,0,96,30,0,32,15, + 0,0,15,128,0,7,128,0,3,192,0,3,224,0,1,240, + 0,0,240,0,0,120,0,0,120,0,0,56,0,0,48,0, + 0,96,0,0,192,0,1,128,0,3,128,0,3,0,0,6, + 0,8,12,0,24,24,0,24,48,0,48,127,255,240,127,255, + 240,255,255,240,13,34,68,13,1,249,0,24,0,120,0,224, + 1,192,3,128,3,0,6,0,12,0,12,0,24,0,24,0, + 56,0,48,0,48,0,48,0,96,0,96,0,96,0,96,0, + 96,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,2,34, + 34,13,1,249,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,13,34,68,13,1,249,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,96,0,96,0,96,0,96,0, + 96,0,48,0,48,0,48,0,56,0,24,0,24,0,12,0, + 12,0,6,0,3,0,3,128,1,192,0,224,0,120,0,24, + 11,34,68,13,0,249,255,224,255,224,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,2,34,34,13,0,249, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,11,34,68,13,0,249,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,255,224,255,224,8,34,34,16, + 6,249,7,31,56,112,96,96,224,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,9,34,68,16,255,249,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 3,0,3,0,6,0,12,0,56,0,224,0,120,0,12,0, + 6,0,3,0,3,0,1,128,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,8,34, + 34,16,6,249,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,224, + 96,96,112,56,31,7,2,34,34,16,6,249,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,255,9, + 30,60,11,1,250,192,0,96,0,96,0,48,0,48,0,56, + 0,24,0,28,0,12,0,14,0,6,0,6,0,3,0,3, + 0,1,128,1,128,3,0,3,0,6,0,6,0,14,0,12, + 0,28,0,24,0,56,0,48,0,48,0,96,0,96,0,192, + 0,9,33,66,9,0,250,3,0,7,128,7,128,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,12,0,12,0,12,0,12,0,12,0,12,0,12, + 0,12,0,248,0,248,0,112,0,12,34,68,23,10,249,1, + 224,3,240,6,112,12,240,8,96,24,0,24,0,48,0,48, + 0,48,0,112,0,96,0,96,0,96,0,96,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,224,0,224,0,224,0,224,0,224,0,224,0,224, + 0,224,0,3,34,34,22,10,249,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,12,34,68,22,1, + 249,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,0,112,0,96,0,96,0,96,0,96,0, + 224,0,192,0,192,0,192,1,128,1,128,97,0,243,0,230, + 0,252,0,120,0,13,34,68,13,0,249,192,0,240,0,56, + 0,24,0,12,0,6,0,3,0,1,0,1,128,0,192,0, + 192,0,192,0,96,0,96,0,96,0,48,0,48,0,48,0, + 48,0,48,0,16,0,16,0,24,0,24,0,24,0,24,0, + 24,0,24,0,24,0,24,0,24,0,24,0,24,0,24,2, + 34,34,13,11,249,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,13,34,68,13,0,249,0,24,0, + 24,0,24,0,24,0,24,0,24,0,24,0,24,0,24,0, + 24,0,24,0,24,0,16,0,16,0,48,0,48,0,48,0, + 48,0,48,0,96,0,96,0,96,0,192,0,192,0,192,1, + 128,1,0,3,0,6,0,12,0,28,0,56,0,240,0,192, + 0,11,34,68,13,1,249,255,224,255,224,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,2,34,34,13,10, + 249,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,11,34,68,13,1,249,0,96,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,0,96,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,255,224,255,224,8,34,34, + 16,0,249,224,120,28,14,6,6,3,3,3,3,3,3,3, + 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, + 3,3,3,3,3,9,34,68,16,6,249,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,192,0,192, + 0,96,0,96,0,48,0,24,0,14,0,3,128,14,0,24, + 0,48,0,96,0,96,0,192,0,192,0,192,0,192,0,192, + 0,192,0,192,0,192,0,192,0,192,0,192,0,192,0,8, + 33,33,16,0,250,3,3,3,3,3,3,3,3,3,3,3, + 3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3, + 6,6,14,28,120,224,255}; +/* + Fontname: -Adobe-Symbol-Medium-R-Normal--34-240-100-100-P-191-Adobe-FontSpecific + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 23, '1' Height: 23 + Calculated Max Values w=27 h=33 x=15 y=26 dx=29 dy= 0 ascent=27 len=92 + Font Bounding box w=40 h=34 x=-5 y=-7 + Calculated Min Values x=-2 y=-7 dx= 0 dy= 0 + Pure Font ascent =23 descent=-7 + X Font ascent =23 descent=-7 + Max Font ascent =27 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_symb24r[5335] U8G_SECTION(".progmem.u8g_font_symb24r") = { + 0,40,34,251,249,23,5,133,13,247,32,127,249,27,249,23, + 249,0,0,0,8,0,1,4,23,23,11,4,0,96,240,240, + 240,240,240,96,96,96,96,96,96,96,96,96,96,0,0,0, + 96,240,240,96,20,24,72,23,1,0,192,0,48,192,0,48, + 192,0,96,96,0,96,96,0,96,48,0,192,48,0,192,63, + 255,192,31,255,128,24,1,128,12,3,0,12,3,0,12,3, + 0,6,6,0,6,6,0,3,12,0,3,12,0,3,12,0, + 1,152,0,1,152,0,0,240,0,0,240,0,0,240,0,0, + 96,0,14,23,46,16,1,0,6,48,6,48,6,48,6,48, + 12,96,12,96,12,96,127,252,127,252,12,96,12,96,12,96, + 24,192,24,192,24,192,255,248,255,248,24,192,24,192,49,128, + 49,128,49,128,49,128,15,24,48,18,0,0,255,254,255,254, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,6, + 0,6,63,254,63,254,0,6,0,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,6,255,254,255,254,23,23,69,27, + 2,255,7,192,96,30,225,192,60,63,192,56,33,128,112,33, + 128,112,35,0,240,98,0,224,70,0,224,204,0,224,204,0, + 97,152,0,119,16,124,62,48,238,0,97,198,0,99,130,0, + 199,2,0,135,2,1,142,6,3,14,4,3,14,12,6,14, + 24,14,7,48,12,3,224,23,22,66,25,1,0,0,248,0, + 3,140,0,3,6,0,7,6,0,7,6,0,7,6,0,7, + 12,0,7,152,0,3,241,252,3,192,112,7,192,96,29,224, + 96,56,240,192,112,240,128,96,121,128,224,63,0,224,30,0, + 224,31,0,240,31,130,248,55,238,127,227,252,31,128,248,12, + 17,34,14,1,0,126,0,127,128,7,192,1,224,0,224,0, + 240,0,112,0,112,63,240,63,240,0,112,0,112,0,224,1, + 224,3,192,255,0,124,0,8,29,29,11,2,250,3,7,6, + 12,24,48,48,112,112,96,96,224,224,224,224,224,224,224,96, + 96,112,112,48,48,24,12,6,7,3,8,29,29,11,1,250, + 192,224,96,48,24,12,12,14,14,6,6,7,7,7,7,7, + 7,7,6,6,14,14,12,12,24,48,96,224,192,11,14,28, + 16,2,4,4,0,14,0,14,0,196,96,228,224,127,192,31, + 0,31,0,127,192,228,224,196,96,14,0,14,0,4,0,16, + 18,36,18,1,0,1,128,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,255,255,255,255,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,1,128,4,9,9,8,2,251,96, + 240,240,240,16,48,96,224,192,17,2,6,18,0,8,255,255, + 128,255,255,128,4,4,4,8,2,0,96,240,240,96,7,22, + 22,9,1,0,2,2,6,6,4,12,12,8,24,24,16,48, + 48,32,32,96,64,64,192,192,128,128,14,23,46,16,1,0, + 15,192,28,224,56,112,48,48,112,56,112,56,96,24,224,28, + 224,28,224,28,224,28,224,28,224,28,224,28,224,28,224,28, + 96,24,112,56,112,56,48,48,56,112,28,224,15,192,9,23, + 46,16,4,0,4,0,28,0,252,0,220,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,62,0, + 255,128,14,23,46,16,1,0,15,128,31,192,63,224,97,240, + 192,240,192,112,128,112,0,112,0,112,0,96,0,96,0,192, + 0,192,1,128,3,0,3,0,6,0,12,0,24,0,48,12, + 112,24,127,248,255,240,13,23,46,16,1,0,15,128,63,224, + 113,224,64,224,192,96,128,96,0,96,0,192,0,192,1,128, + 7,192,15,224,1,240,0,112,0,120,0,56,0,56,0,56, + 0,48,0,48,96,96,121,192,127,128,15,23,46,16,0,0, + 0,48,0,112,0,112,0,240,1,240,1,240,3,112,6,112, + 6,112,12,112,24,112,24,112,48,112,32,112,96,112,192,112, + 255,254,255,254,0,112,0,112,0,112,0,112,0,112,13,23, + 46,16,1,0,15,248,15,240,31,240,16,0,48,0,32,0, + 126,0,127,128,127,192,15,224,3,224,0,240,0,112,0,112, + 0,112,0,48,0,48,0,48,0,112,0,96,224,192,251,128, + 254,0,14,23,46,16,1,0,0,56,1,224,3,128,7,0, + 14,0,28,0,56,0,56,0,112,0,119,192,255,240,240,120, + 224,56,224,60,224,28,224,28,224,28,224,28,112,28,112,56, + 56,56,28,112,15,192,13,23,46,16,1,0,127,248,127,248, + 127,248,192,24,128,48,0,48,0,48,0,96,0,96,0,96, + 0,192,0,192,0,192,1,192,1,128,1,128,1,128,3,0, + 3,0,3,0,6,0,6,0,6,0,12,23,46,16,2,0, + 31,128,113,192,96,224,224,96,192,96,224,96,224,224,112,192, + 121,192,63,0,31,0,31,128,63,192,115,192,96,224,224,240, + 192,112,192,112,224,112,224,112,96,96,121,192,31,128,14,23, + 46,16,1,0,15,128,56,224,48,112,96,56,224,56,224,56, + 224,60,224,28,224,28,224,28,240,28,112,28,120,124,63,252, + 15,56,0,56,0,112,0,240,0,224,1,192,7,128,30,0, + 112,0,4,15,15,9,2,0,96,240,240,96,0,0,0,0, + 0,0,0,96,240,240,96,4,20,20,9,3,251,96,240,240, + 96,0,0,0,0,0,0,0,96,240,240,240,16,48,96,224, + 192,16,16,32,18,1,1,0,7,0,31,0,124,1,240,7, + 128,30,0,120,0,224,0,224,0,120,0,30,0,7,128,1, + 240,0,124,0,31,0,7,17,8,24,18,0,5,255,255,128, + 255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,128,255,255,128,16,16,32,18,1,1,224,0,248,0,62, + 0,15,128,1,224,0,120,0,30,0,7,0,7,0,30,0, + 120,1,224,15,128,62,0,248,0,224,0,11,23,46,14,2, + 0,63,0,99,128,193,192,192,224,192,224,224,224,192,224,1, + 224,1,192,1,128,3,128,3,0,6,0,6,0,4,0,4, + 0,4,0,0,0,0,0,12,0,30,0,30,0,12,0,17, + 16,48,18,0,0,30,1,0,63,195,128,96,255,0,64,28, + 0,0,0,0,0,0,0,0,0,0,0,0,0,255,255,128, + 255,255,128,0,0,0,0,0,0,0,0,0,0,0,0,255, + 255,128,255,255,128,21,23,69,23,0,0,0,32,0,0,112, + 0,0,112,0,0,112,0,0,248,0,0,248,0,0,188,0, + 1,188,0,1,156,0,3,30,0,3,14,0,2,15,0,6, + 15,0,6,7,0,12,7,128,15,255,128,8,3,128,24,3, + 192,24,1,192,48,1,224,48,1,224,112,1,240,252,7,248, + 18,23,69,22,1,0,255,224,0,63,254,0,28,31,0,28, + 7,0,28,7,128,28,7,128,28,7,128,28,7,128,28,7, + 0,28,15,0,28,62,0,31,248,0,28,31,0,28,7,128, + 28,3,128,28,3,192,28,3,192,28,3,192,28,3,192,28, + 7,128,28,15,128,63,255,0,255,248,0,22,23,69,23,0, + 0,255,195,252,63,0,224,31,0,192,15,1,192,7,129,128, + 7,195,0,3,198,0,1,230,0,1,236,0,0,248,0,0, + 120,0,0,120,0,0,124,0,0,222,0,1,158,0,1,143, + 0,3,15,128,6,7,128,14,3,192,12,3,224,24,1,224, + 56,1,240,254,7,252,19,22,66,20,0,0,0,96,0,0, + 96,0,0,240,0,0,240,0,0,240,0,1,248,0,1,56, + 0,3,60,0,2,60,0,6,28,0,4,30,0,12,14,0, + 12,15,0,8,15,0,24,7,0,16,7,128,48,3,128,32, + 3,192,96,3,192,64,1,192,255,255,224,255,255,224,18,23, + 69,20,1,0,255,255,128,63,255,128,28,3,128,28,1,128, + 28,1,128,28,0,0,28,0,0,28,2,0,28,2,0,28, + 2,0,28,14,0,31,254,0,28,6,0,28,2,0,28,2, + 0,28,0,0,28,0,0,28,0,64,28,0,64,28,0,192, + 28,1,192,63,255,128,255,255,128,23,23,69,25,1,0,1, + 255,0,0,124,0,0,56,0,0,56,0,7,255,192,31,57, + 240,60,56,120,120,56,60,120,56,60,240,56,30,240,56,30, + 240,56,30,240,56,30,240,56,30,120,56,28,120,56,60,60, + 56,120,31,57,240,7,255,192,0,56,0,0,56,0,0,124, + 0,1,255,0,18,23,69,20,1,0,255,255,128,63,255,192, + 60,1,192,28,0,192,28,0,64,28,0,64,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,62,0,0,255,128,0,22, + 23,69,24,1,0,255,135,252,62,1,240,28,0,224,28,0, + 224,28,0,224,28,0,224,28,0,224,28,0,224,28,0,224, + 28,0,224,28,0,224,31,255,224,28,0,224,28,0,224,28, + 0,224,28,0,224,28,0,224,28,0,224,28,0,224,28,0, + 224,28,0,224,62,1,240,255,135,252,9,23,46,11,1,0, + 255,128,62,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,62,0,255,128,20,23, + 69,20,0,0,0,120,0,0,220,0,0,134,0,0,135,0, + 0,131,0,0,195,128,0,67,128,28,99,128,62,57,128,126, + 29,128,199,7,128,199,1,224,6,1,176,14,1,128,14,1, + 128,14,1,128,14,3,128,14,3,0,14,3,0,14,7,0, + 7,6,0,3,156,0,1,248,0,22,23,69,23,1,0,255, + 143,240,62,3,192,28,3,128,28,3,0,28,6,0,28,12, + 0,28,24,0,28,48,0,28,96,0,29,192,0,31,224,0, + 31,224,0,30,240,0,28,120,0,28,124,0,28,62,0,28, + 31,0,28,15,128,28,7,128,28,3,192,28,1,224,62,1, + 240,255,143,252,21,22,66,22,0,0,0,32,0,0,48,0, + 0,112,0,0,112,0,0,248,0,0,248,0,0,188,0,1, + 188,0,1,156,0,1,30,0,3,14,0,3,15,0,2,15, + 0,6,7,0,6,7,128,12,3,128,12,3,192,8,3,192, + 24,1,192,24,1,224,56,1,240,254,7,248,27,23,92,29, + 1,0,254,0,15,224,30,0,15,128,31,0,15,0,31,0, + 31,0,31,0,31,0,31,128,55,0,27,128,55,0,27,192, + 39,0,27,192,103,0,25,224,103,0,25,224,199,0,24,224, + 199,0,24,240,135,0,24,113,135,0,24,121,135,0,24,123, + 7,0,24,63,7,0,24,63,7,0,24,30,7,0,24,30, + 7,0,24,12,7,0,56,12,15,128,255,12,63,224,22,23, + 69,23,1,0,252,3,252,62,0,96,30,0,96,31,0,96, + 31,128,96,31,192,96,27,192,96,25,224,96,25,240,96,24, + 240,96,24,120,96,24,60,96,24,60,96,24,30,96,24,15, + 96,24,15,224,24,7,224,24,3,224,24,1,224,24,1,224, + 24,0,224,56,0,96,255,0,32,22,23,69,23,1,0,1, + 254,0,7,135,128,14,1,192,28,0,224,60,0,240,120,0, + 112,120,0,120,112,0,56,240,0,60,240,0,60,240,0,60, + 240,0,60,240,0,60,240,0,60,240,0,60,112,0,56,120, + 0,120,56,0,112,60,0,240,28,0,224,14,1,192,7,207, + 128,1,254,0,23,23,69,25,1,0,255,255,254,63,255,248, + 28,0,112,28,0,112,28,0,112,28,0,112,28,0,112,28, + 0,112,28,0,112,28,0,112,28,0,112,28,0,112,28,0, + 112,28,0,112,28,0,112,28,0,112,28,0,112,28,0,112, + 28,0,112,28,0,112,28,0,112,62,0,248,255,131,254,22, + 23,69,24,1,0,1,254,0,7,135,128,14,1,192,28,0, + 224,60,0,240,56,0,112,120,0,120,112,0,56,112,0,56, + 242,1,60,243,3,60,243,255,60,243,255,60,243,3,60,242, + 1,60,112,0,56,112,0,56,120,0,120,56,0,112,28,0, + 224,14,1,192,7,135,128,1,254,0,17,23,69,18,1,0, + 255,240,0,63,254,0,28,15,0,28,7,128,28,7,128,28, + 3,128,28,3,128,28,3,128,28,3,128,28,7,128,28,7, + 0,30,62,0,31,252,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,62, + 0,0,255,128,0,18,23,69,19,1,0,255,255,0,255,255, + 0,120,3,0,60,1,0,62,1,128,30,0,0,15,0,0, + 7,128,0,7,192,0,3,192,0,1,224,0,0,192,0,1, + 192,0,1,128,0,3,0,0,6,0,0,12,0,64,28,0, + 192,24,0,128,48,1,128,127,255,128,255,255,128,255,255,128, + 19,23,69,20,1,0,255,255,224,248,227,224,192,224,224,192, + 224,96,128,224,32,128,224,32,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,0,224,0,0,224,0,0,224,0,0, + 224,0,0,224,0,1,240,0,7,252,0,23,23,69,23,0, + 0,255,193,254,62,0,112,31,0,96,15,0,224,15,128,192, + 7,129,128,3,193,128,3,227,0,1,227,0,0,246,0,0, + 252,0,0,124,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,124,0,1,255,0,13,24,48,14,1,249,3,224,15,240, + 31,240,48,0,96,0,64,0,192,0,192,0,128,0,128,0, + 128,0,192,0,192,0,240,0,127,240,63,240,31,248,0,24, + 0,8,0,8,0,24,7,240,7,240,7,192,23,23,69,25, + 1,0,0,254,0,3,131,128,14,0,224,30,0,240,28,0, + 112,60,0,120,56,0,56,120,0,60,120,0,60,120,0,60, + 120,0,60,120,0,60,120,0,60,56,0,56,60,0,120,28, + 0,112,14,0,224,7,1,192,129,131,2,192,130,6,255,199, + 254,255,199,254,255,199,254,19,23,69,21,1,0,127,255,192, + 127,255,192,127,255,192,96,0,192,64,0,64,0,0,0,0, + 0,0,0,0,0,8,2,0,12,6,0,15,254,0,15,254, + 0,15,254,0,8,2,0,8,2,0,0,0,0,0,0,0, + 192,0,96,192,0,96,64,0,64,127,255,192,127,255,192,127, + 255,192,25,23,92,26,0,0,224,255,131,128,112,62,7,0, + 56,28,14,0,56,28,14,0,60,28,30,0,60,28,30,0, + 60,28,30,0,60,28,30,0,60,28,30,0,28,28,28,0, + 30,28,60,0,15,156,248,0,3,255,224,0,0,28,0,0, + 0,28,0,0,0,28,0,0,0,28,0,0,0,28,0,0, + 0,28,0,0,0,28,0,0,0,28,0,0,0,62,0,0, + 0,255,128,0,19,23,69,20,1,0,127,255,192,120,3,192, + 96,7,128,96,15,0,64,15,0,64,30,0,0,62,0,0, + 60,0,0,120,0,0,248,0,0,240,0,1,224,0,1,224, + 0,3,192,0,7,192,0,7,128,0,15,0,0,31,0,32, + 30,0,32,62,0,96,60,0,224,120,3,192,255,255,192,7, + 28,28,11,3,251,254,224,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,224, + 254,17,16,48,28,5,0,1,224,0,1,224,0,1,224,0, + 1,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,240,7,128,240,7, + 128,240,7,128,240,7,128,7,28,28,11,1,251,254,14,6, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 6,6,6,6,6,6,6,14,254,20,23,69,21,1,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,96,0,0,96, + 0,0,96,0,0,96,0,0,96,0,0,96,0,0,96,0, + 0,96,0,0,96,0,0,96,0,0,96,0,0,96,0,0, + 96,0,0,96,0,0,96,0,0,96,0,0,96,0,255,255, + 240,255,255,240,16,2,4,16,0,249,255,255,255,255,20,1, + 3,17,15,26,255,255,240,19,17,51,20,1,0,15,193,128, + 28,225,128,56,51,128,112,19,128,112,23,0,240,31,0,224, + 15,0,224,14,0,224,14,0,224,14,0,224,28,0,240,30, + 0,240,30,32,112,58,32,120,115,224,60,225,192,15,193,192, + 14,32,64,18,2,249,15,128,25,224,48,224,112,112,96,112, + 96,112,96,112,96,112,96,112,96,96,103,192,103,224,96,112, + 96,56,96,56,96,60,96,28,96,28,96,28,96,28,96,28, + 96,56,120,120,111,240,99,192,96,0,96,0,96,0,96,0, + 224,0,224,0,224,0,17,25,75,18,0,249,24,0,0,60, + 14,0,126,14,0,70,30,0,194,28,0,195,60,0,3,56, + 0,1,112,0,1,112,0,1,224,0,1,224,0,1,192,0, + 3,192,0,3,128,0,7,192,0,7,192,0,15,64,0,14, + 64,0,30,96,0,28,97,128,60,97,128,56,51,0,120,63, + 0,112,62,0,112,30,0,14,25,50,16,1,0,15,128,31, + 224,48,240,32,120,48,48,56,0,28,0,14,0,7,128,3, + 192,7,240,28,240,56,120,112,56,240,60,224,28,224,28,224, + 28,224,28,240,28,240,56,112,56,120,112,31,224,7,128,12, + 18,36,14,1,255,31,128,57,224,112,224,224,224,224,64,224, + 0,112,0,120,0,31,128,120,0,240,0,224,0,224,0,224, + 16,240,48,120,48,63,224,15,128,15,30,60,17,1,249,1, + 0,1,0,1,0,1,0,1,0,1,0,15,192,29,112,57, + 56,113,28,113,28,225,30,225,14,225,14,225,14,225,14,225, + 14,241,14,113,12,113,28,57,24,29,112,7,224,1,0,1, + 0,1,0,1,0,1,0,1,0,1,0,15,24,48,13,254, + 249,56,14,124,14,124,14,198,28,134,28,130,28,3,56,3, + 56,1,48,1,48,1,96,1,224,1,192,0,192,0,192,1, + 128,1,192,1,192,3,192,3,192,3,192,3,192,3,128,1, + 128,17,24,72,20,0,249,24,56,0,124,254,0,223,222,0, + 207,15,0,143,7,0,14,7,0,14,7,0,14,7,0,14, + 7,0,14,7,0,14,7,0,14,7,0,14,7,0,14,7, + 0,14,7,0,14,7,0,14,7,0,0,7,0,0,7,0, + 0,7,0,0,7,0,0,7,0,0,3,0,0,3,128,10, + 17,34,11,0,0,4,0,124,0,252,0,60,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 64,28,192,15,192,15,0,18,24,72,20,1,249,6,60,0, + 30,126,0,56,255,0,112,199,128,112,195,128,240,195,192,224, + 193,192,224,193,192,224,193,192,224,193,192,240,193,192,240,193, + 128,112,195,128,120,195,0,56,199,0,30,220,0,7,248,0, + 0,192,0,0,192,0,0,192,0,0,192,0,0,192,0,0, + 192,0,0,192,0,17,17,51,18,1,0,8,7,0,248,31, + 128,248,63,128,56,99,0,24,192,0,25,128,0,27,0,0, + 31,128,0,31,128,0,27,192,0,25,224,0,24,240,0,24, + 240,0,24,120,0,24,60,0,24,62,0,24,127,128,17,25, + 75,18,1,0,56,0,0,124,0,0,126,0,0,198,0,0, + 195,0,0,131,0,0,1,0,0,1,0,0,1,128,0,3, + 128,0,3,128,0,7,128,0,7,192,0,15,192,0,14,192, + 0,30,64,0,28,96,0,28,96,0,56,96,0,56,96,128, + 112,48,128,112,57,128,224,63,0,224,31,0,224,14,0,17, + 24,72,19,1,249,112,56,0,112,56,0,112,56,0,112,56, + 0,112,56,0,112,56,0,112,56,0,112,56,0,112,56,0, + 112,56,0,112,56,0,112,56,0,112,120,0,120,120,128,127, + 253,128,127,159,128,110,30,0,96,0,0,96,0,0,96,0, + 0,224,0,0,224,0,0,224,0,0,96,0,0,16,17,34, + 17,255,0,24,6,248,7,60,7,28,7,28,7,30,6,14, + 6,14,12,7,12,7,24,7,152,3,176,3,160,1,224,1, + 192,1,192,0,128,15,17,34,18,1,0,7,192,28,112,48, + 56,112,60,112,28,224,30,224,14,224,14,224,14,224,14,224, + 14,240,14,112,28,120,28,56,56,30,112,15,224,17,17,51, + 18,0,0,15,255,128,63,255,128,63,255,128,102,56,0,198, + 56,0,6,48,0,6,48,0,6,48,0,6,48,0,6,48, + 0,4,48,0,12,48,0,12,48,128,28,57,128,60,63,0, + 60,31,0,56,30,0,14,23,46,17,1,0,7,128,28,224, + 24,112,48,48,112,56,112,56,240,60,224,28,224,28,224,28, + 224,28,255,252,255,252,224,28,224,28,224,28,224,28,112,56, + 112,56,112,56,56,112,28,224,15,192,14,25,50,18,2,249, + 7,192,31,224,48,240,96,120,96,120,224,60,224,60,224,28, + 224,28,224,28,224,28,224,24,224,24,224,56,240,112,248,224, + 239,192,231,0,224,0,224,0,224,0,224,0,224,0,224,0, + 224,0,18,18,54,20,1,0,3,255,192,15,255,192,63,255, + 192,124,48,0,120,24,0,240,28,0,240,14,0,224,15,0, + 224,7,0,224,7,0,240,7,0,112,7,0,112,15,0,56, + 14,0,60,30,0,30,56,0,7,240,0,1,192,0,14,17, + 34,14,0,0,15,252,63,252,63,252,99,128,195,128,195,128, + 3,0,3,0,3,0,3,0,3,0,3,8,3,136,3,152, + 3,248,1,240,1,224,17,18,54,19,0,0,0,16,0,60, + 24,0,124,28,0,252,6,0,206,7,0,142,3,0,14,3, + 0,14,3,128,14,3,128,14,3,128,14,3,128,14,3,128, + 14,3,0,14,7,0,7,7,0,7,14,0,3,156,0,1, + 248,0,21,19,57,23,0,0,31,255,248,63,255,248,127,255, + 248,231,131,128,222,0,192,60,0,224,56,56,112,120,56,112, + 120,56,56,120,56,56,112,56,56,112,56,56,112,56,56,112, + 16,56,120,16,56,120,56,112,56,40,112,28,236,224,15,135, + 192,20,17,51,22,1,0,15,14,0,28,7,128,56,1,192, + 112,97,224,112,224,224,224,224,240,224,224,240,224,224,112,224, + 224,112,224,224,112,224,224,112,224,64,112,224,224,240,112,224, + 224,113,177,224,63,31,192,30,15,0,14,33,66,16,1,249, + 48,0,96,192,99,224,103,192,63,128,24,0,48,0,32,0, + 32,0,48,0,49,240,31,240,31,224,48,0,96,0,64,0, + 192,0,128,0,128,0,128,0,192,0,192,0,248,0,127,240, + 63,252,31,252,0,12,0,4,0,4,0,12,3,248,3,248, + 1,224,22,24,72,22,0,249,240,48,60,120,48,120,60,48, + 240,28,48,224,28,48,224,28,48,224,28,48,224,28,48,224, + 30,48,224,30,49,224,30,49,224,14,49,192,14,49,192,6, + 49,192,7,51,128,3,183,0,1,254,0,0,48,0,0,48, + 0,0,48,0,0,48,0,0,48,0,0,48,0,0,48,0, + 13,32,64,16,2,249,24,0,56,112,48,240,51,224,63,192, + 14,0,12,0,24,0,16,0,48,0,32,0,96,0,64,0, + 64,0,192,0,192,0,192,0,192,0,192,0,224,0,96,0, + 127,192,63,240,31,248,15,248,0,24,0,8,0,8,0,24, + 3,248,7,240,3,224,11,29,58,16,2,250,7,224,14,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,28,0,28,0,112,0,192,0,112,0,28,0,28,0, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,14,0,7,224,2,28,28,7,2,250,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,11,29,58,16,2,250,252,0, + 14,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,7,0,7,0,1,192,0,96,1,192,7,0, + 7,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,14,0,252,0,15,4,8,18,1,7,24,0, + 127,134,227,254,192,56,255}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--11-80-100-100-P-57-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w=10 h=11 x= 1 y= 6 dx=11 dy= 0 ascent=10 len=18 + Font Bounding box w=13 h=18 x=-2 y=-5 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-3 + X Font ascent = 7 descent=-3 + Max Font ascent =10 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB08[2551] U8G_SECTION(".progmem.u8g_font_timB08") = { + 0,13,18,254,251,7,1,164,3,77,32,255,253,10,253,7, + 253,0,0,0,2,0,1,2,7,7,4,1,0,192,192,192, + 192,0,192,192,3,3,3,5,1,4,160,160,160,5,7,7, + 6,0,0,80,80,248,80,248,80,80,5,9,9,5,0,255, + 32,112,184,224,96,48,184,112,32,7,7,7,9,1,0,118, + 220,232,16,46,90,156,7,7,7,9,1,0,48,104,104,118, + 220,204,118,1,3,3,3,1,4,128,128,128,3,10,10,3, + 255,253,32,96,64,192,192,192,192,64,96,32,3,10,10,4, + 0,253,128,192,64,96,96,96,96,64,192,128,5,5,5,6, + 0,2,32,248,112,248,32,5,5,5,6,0,0,32,32,248, + 32,32,2,3,3,4,1,255,192,192,64,3,1,1,3,0, + 2,224,2,2,2,3,0,0,192,192,3,7,7,3,0,0, + 32,32,96,64,192,128,128,4,7,7,5,0,0,96,208,208, + 208,208,208,96,4,7,7,5,0,0,96,224,96,96,96,96, + 240,4,7,7,5,0,0,96,240,48,32,64,240,240,4,7, + 7,5,0,0,96,176,48,96,48,176,224,5,7,7,5,0, + 0,16,48,80,144,248,48,48,4,7,7,5,0,0,224,224, + 128,224,48,176,224,4,7,7,5,0,0,48,96,192,240,208, + 208,96,5,7,7,5,0,0,120,240,144,48,32,96,96,4, + 7,7,5,0,0,96,208,208,96,176,176,96,4,7,7,5, + 0,0,96,176,176,176,112,48,224,2,5,5,4,1,0,192, + 192,0,192,192,2,6,6,4,1,255,192,192,0,192,192,64, + 5,5,5,6,0,0,24,112,192,112,24,5,3,3,6,0, + 1,248,0,248,5,5,5,6,0,0,192,112,24,112,192,4, + 7,7,6,1,0,96,176,176,32,0,96,96,10,9,18,11, + 0,254,31,0,48,128,109,64,218,64,210,64,210,128,205,0, + 96,0,62,0,8,7,7,7,255,0,16,24,56,44,124,78, + 239,6,7,7,7,0,0,248,108,108,120,108,108,248,6,7, + 7,7,0,0,124,204,192,192,192,236,120,7,7,7,8,0, + 0,252,102,102,102,102,102,252,6,7,7,7,0,0,252,100, + 96,120,96,100,252,6,7,7,7,0,0,252,100,104,120,104, + 96,240,6,7,7,7,0,0,124,204,192,220,204,204,120,8, + 7,7,9,0,0,231,102,102,126,102,102,231,4,7,7,5, + 0,0,240,96,96,96,96,96,240,5,8,8,5,0,255,120, + 48,48,48,48,48,176,224,7,7,7,8,0,0,238,100,104, + 120,108,110,230,6,7,7,7,0,0,240,96,96,96,100,108, + 252,9,7,14,10,0,0,243,128,119,0,91,0,91,0,91, + 0,75,0,227,128,7,7,7,8,0,0,238,100,116,92,92, + 76,228,6,7,7,7,0,0,120,204,204,204,204,204,120,6, + 7,7,6,0,0,248,108,108,120,96,96,240,6,9,9,7, + 0,254,120,204,204,204,204,204,120,48,28,7,7,7,7,0, + 0,248,108,108,120,104,108,238,5,7,7,6,0,0,120,200, + 224,112,56,152,240,6,7,7,7,0,0,252,180,48,48,48, + 48,120,7,7,7,7,0,0,246,100,100,100,100,100,56,8, + 7,7,8,0,0,243,98,116,52,56,24,16,10,7,14,10, + 0,0,238,192,108,128,109,128,109,0,55,0,54,0,18,0, + 7,7,7,7,0,0,230,100,56,56,44,76,222,8,7,7, + 8,0,0,247,98,52,56,24,24,60,6,7,7,7,0,0, + 252,204,152,48,100,204,252,3,10,10,4,0,253,224,192,192, + 192,192,192,192,192,192,224,3,7,7,3,0,0,128,128,192, + 64,96,32,32,3,10,10,4,0,253,224,96,96,96,96,96, + 96,96,96,224,5,4,4,6,0,3,32,112,216,136,5,1, + 1,5,0,253,248,2,2,2,4,0,6,128,64,5,5,5, + 5,0,0,96,176,112,176,248,5,7,7,5,255,0,224,96, + 112,104,104,104,112,4,5,5,5,0,0,112,208,192,208,112, + 6,7,7,6,0,0,56,24,120,216,216,216,108,4,5,5, + 5,0,0,112,208,240,192,112,4,7,7,3,255,0,48,96, + 240,96,96,96,240,5,8,8,5,0,253,120,208,208,112,192, + 240,144,240,6,7,7,5,255,0,224,96,120,104,104,104,108, + 2,7,7,3,0,0,192,0,192,192,192,192,192,3,10,10, + 4,0,253,96,0,96,96,96,96,96,96,96,192,6,7,7, + 5,255,0,224,96,108,104,112,104,236,3,7,7,3,255,0, + 224,96,96,96,96,96,96,8,5,5,8,0,0,172,254,214, + 214,215,6,5,5,6,0,0,176,216,216,216,220,5,5,5, + 6,0,0,112,216,216,216,112,5,8,8,5,255,253,240,104, + 104,104,112,96,96,224,5,8,8,5,0,253,112,208,208,208, + 112,48,48,56,4,5,5,4,0,0,208,240,192,192,192,3, + 5,5,4,0,0,96,192,224,96,224,4,7,7,4,255,0, + 32,96,240,96,96,96,48,5,5,5,5,0,0,216,208,208, + 208,112,5,5,5,5,0,0,216,208,112,96,32,7,5,5, + 6,255,0,214,212,92,120,40,4,5,5,5,0,0,208,240, + 96,240,176,5,8,8,5,0,253,216,216,112,112,32,32,192, + 192,4,5,5,5,0,0,240,176,96,208,240,4,10,10,4, + 255,253,48,96,96,96,192,192,96,96,96,48,1,10,10,3, + 1,253,128,128,128,128,128,128,128,128,128,128,4,10,10,4, + 0,253,192,96,96,96,48,48,96,96,96,192,5,2,2,6, + 0,2,104,176,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,0,0,0,2,0,1,2,7,7,4,1, + 253,192,192,0,192,192,192,192,5,7,7,6,0,255,16,120, + 208,208,224,120,32,5,7,7,6,0,0,56,104,96,248,96, + 232,216,5,5,5,6,0,1,136,112,80,112,136,5,7,7, + 6,0,0,216,216,112,32,112,32,112,1,7,7,3,1,0, + 128,128,128,0,128,128,128,4,9,9,5,0,254,96,176,192, + 160,208,112,48,208,96,3,1,1,4,0,5,160,7,7,7, + 9,1,0,56,68,154,162,154,68,56,3,6,6,4,0,1, + 192,32,224,160,0,224,5,5,5,6,0,0,40,80,160,80, + 40,5,3,3,7,1,1,248,8,8,3,1,1,3,0,2, + 224,7,7,7,9,1,0,56,68,186,178,170,68,56,3,1, + 1,4,0,5,224,4,3,3,4,0,4,96,144,96,5,7, + 7,6,0,0,32,32,248,32,32,0,248,3,4,4,3,0, + 3,96,160,64,224,3,4,4,3,0,3,224,64,32,192,2, + 2,2,4,1,5,64,128,5,8,8,5,0,253,216,208,208, + 208,240,128,192,192,6,10,10,6,0,253,124,232,232,232,104, + 40,40,40,40,40,1,2,2,3,1,2,128,128,2,3,3, + 3,1,253,128,64,192,3,4,4,3,0,3,64,192,64,224, + 3,6,6,4,0,1,64,160,160,64,0,224,5,5,5,6, + 0,0,160,80,40,80,160,7,7,7,7,0,0,68,200,72, + 244,44,62,68,7,7,7,7,0,0,68,200,72,246,42,36, + 78,7,7,7,7,0,0,228,72,40,212,44,62,68,4,7, + 7,6,1,253,96,96,0,64,208,208,96,8,10,10,7,255, + 0,32,16,0,16,24,56,44,124,78,239,8,10,10,7,255, + 0,8,16,0,16,24,56,44,124,78,239,8,10,10,7,255, + 0,16,40,0,16,24,56,44,124,78,239,8,10,10,7,255, + 0,52,88,0,16,24,56,44,124,78,239,8,9,9,7,255, + 0,36,0,16,24,56,44,124,78,239,8,10,10,7,255,0, + 24,36,24,16,24,56,44,124,78,239,9,7,14,9,255,0, + 63,128,28,128,44,0,47,0,124,0,76,128,239,128,6,10, + 10,7,0,253,124,204,192,192,192,236,120,32,16,48,6,10, + 10,7,0,0,32,16,0,252,100,96,120,96,100,252,6,10, + 10,7,0,0,8,16,0,252,100,96,120,96,100,252,6,10, + 10,7,0,0,48,72,0,252,100,96,120,96,100,252,6,9, + 9,7,0,0,40,0,252,100,96,120,96,100,252,4,10,10, + 5,0,0,64,32,0,240,96,96,96,96,96,240,4,10,10, + 5,0,0,32,64,0,240,96,96,96,96,96,240,4,10,10, + 5,0,0,96,144,0,240,96,96,96,96,96,240,4,9,9, + 5,0,0,144,0,240,96,96,96,96,96,240,7,7,7,8, + 0,0,252,102,102,246,102,102,252,7,10,10,8,0,0,52, + 88,0,238,100,116,92,92,76,228,6,10,10,7,0,0,32, + 16,0,120,204,204,204,204,204,120,6,10,10,7,0,0,16, + 32,0,120,204,204,204,204,204,120,6,10,10,7,0,0,48, + 72,0,120,204,204,204,204,204,120,6,10,10,7,0,0,52, + 88,0,120,204,204,204,204,204,120,6,9,9,7,0,0,72, + 0,120,204,204,204,204,204,120,6,5,5,6,0,0,204,120, + 48,120,204,6,9,9,8,1,255,4,120,204,220,236,236,204, + 120,128,7,10,10,7,0,0,32,16,0,246,100,100,100,100, + 100,56,7,10,10,7,0,0,8,16,0,246,100,100,100,100, + 100,56,7,10,10,7,0,0,24,36,0,246,100,100,100,100, + 100,56,7,9,9,7,0,0,36,0,246,100,100,100,100,100, + 56,8,10,10,8,0,0,4,8,0,247,98,52,56,24,24, + 60,6,7,7,6,0,0,224,120,108,108,120,96,240,5,7, + 7,6,0,0,112,200,200,208,200,200,216,5,8,8,5,0, + 0,64,32,0,96,176,112,176,248,5,8,8,5,0,0,16, + 32,0,96,176,112,176,248,5,8,8,5,0,0,32,80,0, + 96,176,112,176,248,5,8,8,5,0,0,104,176,0,96,176, + 112,176,248,5,7,7,5,0,0,80,0,96,176,112,176,248, + 5,8,8,5,0,0,32,80,32,96,176,112,176,248,7,5, + 5,8,0,0,110,186,126,184,238,4,8,8,5,0,253,112, + 208,192,208,112,64,32,96,4,8,8,5,0,0,64,32,0, + 112,208,240,192,112,4,8,8,5,0,0,16,32,0,112,208, + 240,192,112,5,8,8,5,0,0,32,80,136,112,208,240,192, + 112,4,7,7,5,0,0,80,0,112,208,240,192,112,2,8, + 8,3,0,0,128,64,0,192,192,192,192,192,2,8,8,3, + 0,0,64,128,0,192,192,192,192,192,3,8,8,3,0,0, + 64,160,0,192,192,192,192,192,3,7,7,3,0,0,160,0, + 192,192,192,192,192,5,9,9,6,0,0,128,112,96,176,24, + 120,216,216,112,6,8,8,6,0,0,104,176,0,176,216,216, + 216,220,5,8,8,6,0,0,64,32,0,112,216,216,216,112, + 5,8,8,6,0,0,16,32,0,112,216,216,216,112,5,8, + 8,6,0,0,32,80,0,112,216,216,216,112,5,8,8,6, + 0,0,104,176,0,112,216,216,216,112,5,7,7,6,0,0, + 80,0,112,216,216,216,112,5,5,5,6,0,0,32,0,248, + 0,32,5,7,7,6,0,255,16,112,216,216,216,112,64,5, + 8,8,5,0,0,64,32,0,216,208,208,208,112,5,8,8, + 5,0,0,16,32,0,216,208,208,208,112,5,8,8,5,0, + 0,32,80,0,216,208,208,208,112,5,7,7,5,0,0,80, + 0,216,208,208,208,112,5,11,11,5,0,253,16,32,0,216, + 216,112,112,32,32,192,192,5,10,10,5,255,253,224,96,112, + 104,104,104,112,96,96,224,5,10,10,5,0,253,80,0,216, + 216,112,112,32,32,192,192}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--11-80-100-100-P-57-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w=10 h=10 x= 1 y= 6 dx=11 dy= 0 ascent= 8 len=18 + Font Bounding box w=13 h=18 x=-2 y=-5 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-3 + X Font ascent = 7 descent=-3 + Max Font ascent = 8 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB08r[1221] U8G_SECTION(".progmem.u8g_font_timB08r") = { + 0,13,18,254,251,7,1,164,3,77,32,127,253,8,253,7, + 253,0,0,0,2,0,1,2,7,7,4,1,0,192,192,192, + 192,0,192,192,3,3,3,5,1,4,160,160,160,5,7,7, + 6,0,0,80,80,248,80,248,80,80,5,9,9,5,0,255, + 32,112,184,224,96,48,184,112,32,7,7,7,9,1,0,118, + 220,232,16,46,90,156,7,7,7,9,1,0,48,104,104,118, + 220,204,118,1,3,3,3,1,4,128,128,128,3,10,10,3, + 255,253,32,96,64,192,192,192,192,64,96,32,3,10,10,4, + 0,253,128,192,64,96,96,96,96,64,192,128,5,5,5,6, + 0,2,32,248,112,248,32,5,5,5,6,0,0,32,32,248, + 32,32,2,3,3,4,1,255,192,192,64,3,1,1,3,0, + 2,224,2,2,2,3,0,0,192,192,3,7,7,3,0,0, + 32,32,96,64,192,128,128,4,7,7,5,0,0,96,208,208, + 208,208,208,96,4,7,7,5,0,0,96,224,96,96,96,96, + 240,4,7,7,5,0,0,96,240,48,32,64,240,240,4,7, + 7,5,0,0,96,176,48,96,48,176,224,5,7,7,5,0, + 0,16,48,80,144,248,48,48,4,7,7,5,0,0,224,224, + 128,224,48,176,224,4,7,7,5,0,0,48,96,192,240,208, + 208,96,5,7,7,5,0,0,120,240,144,48,32,96,96,4, + 7,7,5,0,0,96,208,208,96,176,176,96,4,7,7,5, + 0,0,96,176,176,176,112,48,224,2,5,5,4,1,0,192, + 192,0,192,192,2,6,6,4,1,255,192,192,0,192,192,64, + 5,5,5,6,0,0,24,112,192,112,24,5,3,3,6,0, + 1,248,0,248,5,5,5,6,0,0,192,112,24,112,192,4, + 7,7,6,1,0,96,176,176,32,0,96,96,10,9,18,11, + 0,254,31,0,48,128,109,64,218,64,210,64,210,128,205,0, + 96,0,62,0,8,7,7,7,255,0,16,24,56,44,124,78, + 239,6,7,7,7,0,0,248,108,108,120,108,108,248,6,7, + 7,7,0,0,124,204,192,192,192,236,120,7,7,7,8,0, + 0,252,102,102,102,102,102,252,6,7,7,7,0,0,252,100, + 96,120,96,100,252,6,7,7,7,0,0,252,100,104,120,104, + 96,240,6,7,7,7,0,0,124,204,192,220,204,204,120,8, + 7,7,9,0,0,231,102,102,126,102,102,231,4,7,7,5, + 0,0,240,96,96,96,96,96,240,5,8,8,5,0,255,120, + 48,48,48,48,48,176,224,7,7,7,8,0,0,238,100,104, + 120,108,110,230,6,7,7,7,0,0,240,96,96,96,100,108, + 252,9,7,14,10,0,0,243,128,119,0,91,0,91,0,91, + 0,75,0,227,128,7,7,7,8,0,0,238,100,116,92,92, + 76,228,6,7,7,7,0,0,120,204,204,204,204,204,120,6, + 7,7,6,0,0,248,108,108,120,96,96,240,6,9,9,7, + 0,254,120,204,204,204,204,204,120,48,28,7,7,7,7,0, + 0,248,108,108,120,104,108,238,5,7,7,6,0,0,120,200, + 224,112,56,152,240,6,7,7,7,0,0,252,180,48,48,48, + 48,120,7,7,7,7,0,0,246,100,100,100,100,100,56,8, + 7,7,8,0,0,243,98,116,52,56,24,16,10,7,14,10, + 0,0,238,192,108,128,109,128,109,0,55,0,54,0,18,0, + 7,7,7,7,0,0,230,100,56,56,44,76,222,8,7,7, + 8,0,0,247,98,52,56,24,24,60,6,7,7,7,0,0, + 252,204,152,48,100,204,252,3,10,10,4,0,253,224,192,192, + 192,192,192,192,192,192,224,3,7,7,3,0,0,128,128,192, + 64,96,32,32,3,10,10,4,0,253,224,96,96,96,96,96, + 96,96,96,224,5,4,4,6,0,3,32,112,216,136,5,1, + 1,5,0,253,248,2,2,2,4,0,6,128,64,5,5,5, + 5,0,0,96,176,112,176,248,5,7,7,5,255,0,224,96, + 112,104,104,104,112,4,5,5,5,0,0,112,208,192,208,112, + 6,7,7,6,0,0,56,24,120,216,216,216,108,4,5,5, + 5,0,0,112,208,240,192,112,4,7,7,3,255,0,48,96, + 240,96,96,96,240,5,8,8,5,0,253,120,208,208,112,192, + 240,144,240,6,7,7,5,255,0,224,96,120,104,104,104,108, + 2,7,7,3,0,0,192,0,192,192,192,192,192,3,10,10, + 4,0,253,96,0,96,96,96,96,96,96,96,192,6,7,7, + 5,255,0,224,96,108,104,112,104,236,3,7,7,3,255,0, + 224,96,96,96,96,96,96,8,5,5,8,0,0,172,254,214, + 214,215,6,5,5,6,0,0,176,216,216,216,220,5,5,5, + 6,0,0,112,216,216,216,112,5,8,8,5,255,253,240,104, + 104,104,112,96,96,224,5,8,8,5,0,253,112,208,208,208, + 112,48,48,56,4,5,5,4,0,0,208,240,192,192,192,3, + 5,5,4,0,0,96,192,224,96,224,4,7,7,4,255,0, + 32,96,240,96,96,96,48,5,5,5,5,0,0,216,208,208, + 208,112,5,5,5,5,0,0,216,208,112,96,32,7,5,5, + 6,255,0,214,212,92,120,40,4,5,5,5,0,0,208,240, + 96,240,176,5,8,8,5,0,253,216,216,112,112,32,32,192, + 192,4,5,5,5,0,0,240,176,96,208,240,4,10,10,4, + 255,253,48,96,96,96,192,192,96,96,96,48,1,10,10,3, + 1,253,128,128,128,128,128,128,128,128,128,128,4,10,10,4, + 0,253,192,96,96,96,48,48,96,96,96,192,5,2,2,6, + 0,2,104,176,255}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--14-100-100-100-P-76-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=15 h=14 x= 1 y= 8 dx=14 dy= 0 ascent=14 len=28 + Font Bounding box w=17 h=24 x=-2 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB10[3539] U8G_SECTION(".progmem.u8g_font_timB10") = { + 0,17,24,254,250,10,2,6,4,148,32,255,253,14,253,10, + 253,0,0,0,3,0,1,2,10,10,4,1,0,192,192,192, + 192,192,192,192,0,192,192,5,4,4,7,1,6,216,216,216, + 72,7,10,10,7,255,0,20,20,20,126,40,40,252,80,80, + 80,6,12,12,7,0,255,16,120,212,212,240,120,60,28,148, + 212,120,16,13,10,20,14,0,0,56,192,103,192,197,128,201, + 0,115,0,6,112,4,200,13,136,25,144,24,224,10,10,20, + 12,1,0,60,0,102,0,102,0,60,0,57,192,108,128,205, + 128,199,0,239,128,123,0,2,4,4,4,1,6,192,192,192, + 64,3,13,13,5,1,253,32,96,64,192,192,192,192,192,192, + 192,64,96,32,3,13,13,5,0,253,128,192,64,96,96,96, + 96,96,96,96,64,192,128,5,6,6,7,1,4,32,168,112, + 112,168,32,7,7,7,8,0,0,16,16,16,254,16,16,16, + 2,4,4,3,0,254,192,192,64,128,3,1,1,4,0,3, + 224,2,2,2,3,0,0,192,192,4,10,10,4,0,0,16, + 16,48,32,96,64,64,192,128,128,6,10,10,7,0,0,120, + 72,204,204,204,204,204,204,72,120,6,10,10,7,0,0,48, + 240,48,48,48,48,48,48,48,252,6,10,10,7,0,0,56, + 124,140,12,12,24,48,64,252,252,6,10,10,7,0,0,56, + 124,140,12,56,28,12,196,236,120,6,10,10,7,0,0,24, + 56,56,88,152,152,252,252,24,24,6,10,10,7,0,0,124, + 124,64,120,124,12,4,196,204,120,6,10,10,7,0,0,28, + 48,96,224,248,204,204,204,204,120,6,10,10,7,0,0,252, + 252,140,8,24,16,16,32,32,96,6,10,10,7,0,0,120, + 204,204,236,120,120,204,204,204,120,6,10,10,7,0,0,120, + 204,204,204,204,124,24,56,112,192,2,7,7,4,1,0,192, + 192,0,0,0,192,192,2,9,9,4,1,254,192,192,0,0, + 0,192,192,64,128,7,7,7,8,0,0,6,28,112,192,112, + 28,6,7,3,3,8,0,2,254,0,254,7,7,7,8,0, + 0,192,112,28,6,28,112,192,5,10,10,7,1,0,112,216, + 216,24,48,96,96,0,96,96,11,12,24,14,1,254,15,128, + 56,192,96,96,69,32,143,32,155,32,155,32,159,96,141,192, + 64,0,96,0,31,128,10,10,20,10,0,0,12,0,12,0, + 30,0,22,0,51,0,35,0,63,0,97,128,65,128,227,192, + 8,10,10,9,0,0,254,99,99,99,126,99,99,99,99,254, + 8,10,10,10,1,0,61,99,193,193,192,192,192,193,99,62, + 9,10,20,10,0,0,254,0,99,0,97,128,97,128,97,128, + 97,128,97,128,97,128,99,0,254,0,8,10,10,9,0,0, + 255,99,97,100,124,100,96,97,99,255,8,10,10,8,0,0, + 255,99,97,100,124,100,100,96,96,240,9,10,20,11,1,0, + 61,0,99,0,193,0,193,0,192,0,199,128,195,0,195,0, + 99,0,62,0,10,10,20,11,0,0,243,192,97,128,97,128, + 97,128,127,128,97,128,97,128,97,128,97,128,243,192,4,10, + 10,5,0,0,240,96,96,96,96,96,96,96,96,240,6,11, + 11,7,0,255,60,24,24,24,24,24,24,24,216,216,112,10, + 10,20,11,1,0,247,192,99,0,98,0,100,0,120,0,124, + 0,110,0,103,0,99,128,247,192,8,10,10,9,0,0,240, + 96,96,96,96,96,97,97,99,255,12,10,20,13,0,0,240, + 240,112,224,112,224,89,96,89,96,90,96,78,96,78,96,68, + 96,228,240,10,10,20,10,0,0,225,192,112,128,112,128,88, + 128,76,128,76,128,70,128,67,128,67,128,225,128,9,10,20, + 11,1,0,62,0,99,0,193,128,193,128,193,128,193,128,193, + 128,193,128,99,0,62,0,8,10,10,9,0,0,254,103,99, + 99,99,126,96,96,96,240,9,13,26,11,1,253,62,0,99, + 0,193,128,193,128,193,128,193,128,193,128,193,128,99,0,62, + 0,28,0,14,0,3,128,10,10,20,10,0,0,254,0,103, + 0,99,0,99,0,102,0,124,0,110,0,103,0,99,128,241, + 192,7,10,10,8,0,0,122,198,194,224,120,28,14,134,198, + 252,8,10,10,9,0,0,255,219,153,24,24,24,24,24,24, + 60,9,10,20,10,0,0,243,128,97,0,97,0,97,0,97, + 0,97,0,97,0,97,0,115,0,62,0,10,10,20,10,0, + 0,241,192,96,128,97,128,49,0,51,0,50,0,26,0,30, + 0,12,0,12,0,15,10,20,14,255,0,247,158,99,12,99, + 8,49,136,49,144,51,144,26,208,28,224,12,96,12,96,11, + 10,20,10,0,0,241,192,112,128,57,0,30,0,12,0,14, + 0,23,0,35,128,65,192,227,224,10,10,20,10,0,0,249, + 192,112,128,49,0,57,0,26,0,30,0,12,0,12,0,12, + 0,30,0,8,10,10,9,0,0,255,199,134,140,24,24,49, + 97,227,255,4,13,13,5,0,253,240,192,192,192,192,192,192, + 192,192,192,192,192,240,4,10,10,4,0,0,128,128,192,64, + 96,32,32,48,16,16,4,13,13,5,0,253,240,48,48,48, + 48,48,48,48,48,48,48,48,240,5,5,5,8,1,5,32, + 112,80,216,136,7,1,1,7,0,253,254,3,3,3,5,1, + 8,128,192,32,7,7,7,7,0,0,120,204,12,124,204,204, + 118,7,10,10,8,0,0,224,96,96,124,102,102,102,102,102, + 92,5,7,7,6,0,0,48,88,200,192,192,232,112,7,10, + 10,7,0,0,28,12,12,124,204,204,204,204,204,118,6,7, + 7,6,0,0,56,76,204,252,192,228,120,5,10,10,5,0, + 0,56,104,96,240,96,96,96,96,96,240,7,10,10,7,0, + 253,126,204,204,204,120,64,124,254,130,124,8,10,10,8,0, + 0,224,96,96,108,118,102,102,102,102,231,4,10,10,4,0, + 0,96,96,0,224,96,96,96,96,96,240,4,13,13,4,255, + 253,48,48,0,112,48,48,48,48,48,48,48,176,224,8,10, + 10,8,0,0,224,96,96,110,100,104,120,108,102,231,4,10, + 10,4,0,0,224,96,96,96,96,96,96,96,96,240,12,7, + 14,12,0,0,236,192,119,96,102,96,102,96,102,96,102,96, + 247,112,8,7,7,8,0,0,236,118,102,102,102,102,231,6, + 7,7,7,0,0,120,204,204,204,204,204,120,7,10,10,8, + 0,253,236,118,102,102,102,102,124,96,96,240,7,10,10,7, + 0,253,108,220,204,204,204,204,124,12,12,30,6,7,7,6, + 0,0,220,108,96,96,96,96,240,5,7,7,6,0,0,120, + 200,224,112,56,152,240,5,9,9,5,0,0,32,96,240,96, + 96,96,104,112,48,8,7,7,7,255,0,238,102,102,102,102, + 102,59,8,7,7,7,255,0,247,98,98,52,52,24,24,10, + 7,14,10,0,0,238,192,100,128,118,128,55,0,59,0,59, + 0,18,0,7,7,7,7,0,0,238,108,56,56,56,108,238, + 8,10,10,7,255,253,247,98,50,52,28,28,8,8,56,48, + 6,7,7,6,0,0,252,156,24,48,100,228,252,5,13,13, + 7,1,253,24,48,48,48,48,96,192,96,48,48,48,48,24, + 1,12,12,3,1,254,128,128,128,128,128,128,128,128,128,128, + 128,128,5,13,13,7,0,253,192,96,96,96,96,48,24,48, + 96,96,96,96,192,7,4,4,8,0,3,96,242,158,12,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 0,0,0,3,0,1,2,10,10,4,1,253,192,192,0,192, + 192,192,192,192,192,192,6,11,11,7,0,254,8,8,120,212, + 208,208,240,228,120,32,32,7,10,10,8,0,0,60,118,102, + 96,48,248,48,48,246,222,7,6,6,8,0,2,56,238,68, + 68,238,56,8,10,10,8,0,0,247,98,118,52,60,24,60, + 24,24,60,1,12,12,3,1,254,128,128,128,128,128,0,0, + 128,128,128,128,128,5,12,12,7,1,254,112,216,200,96,240, + 152,200,120,48,152,216,112,3,2,2,5,1,8,160,160,10, + 10,20,12,1,0,30,0,97,128,78,128,146,64,144,64,144, + 64,146,64,76,128,97,128,30,0,4,7,7,5,0,3,96, + 16,112,144,112,0,240,7,5,5,9,1,1,54,108,216,108, + 54,7,4,4,9,1,1,254,2,2,2,3,1,1,4,0, + 3,224,10,10,20,12,1,0,30,0,97,128,92,128,146,64, + 146,64,156,64,148,64,82,128,97,128,30,0,4,1,1,5, + 0,8,240,4,4,4,6,1,6,96,144,144,96,7,9,9, + 8,0,0,16,16,16,254,16,16,16,0,254,4,6,6,4, + 0,4,96,176,48,96,192,240,4,6,6,4,0,4,96,176, + 96,48,176,96,3,3,3,5,1,8,32,96,128,8,10,10, + 7,255,253,238,102,102,102,102,102,123,64,96,96,7,13,13, + 8,0,253,126,244,244,244,244,116,20,20,20,20,20,20,20, + 2,2,2,4,0,4,192,192,3,3,3,5,1,253,64,32, + 224,4,6,6,4,0,4,32,224,96,96,96,240,4,7,7, + 5,0,3,96,144,144,144,96,0,240,7,5,5,9,1,1, + 216,108,54,108,216,10,10,20,10,0,0,33,0,226,0,98, + 0,100,0,100,128,249,128,11,128,22,128,23,192,33,128,10, + 10,20,10,0,0,33,0,226,0,98,0,100,0,101,128,250, + 192,8,192,17,128,19,0,35,192,10,10,20,10,0,0,97, + 0,178,0,98,0,52,0,180,128,105,128,11,128,22,128,23, + 192,33,128,5,10,10,7,1,253,48,48,0,48,48,96,192, + 216,216,112,10,14,28,10,0,0,16,0,24,0,4,0,0, + 0,12,0,12,0,30,0,22,0,51,0,35,0,63,0,97, + 128,65,128,227,192,10,14,28,10,0,0,2,0,6,0,8, + 0,0,0,12,0,12,0,30,0,22,0,51,0,35,0,63, + 0,97,128,65,128,227,192,10,14,28,10,0,0,8,0,28, + 0,34,0,0,0,12,0,12,0,30,0,22,0,51,0,35, + 0,63,0,97,128,65,128,227,192,10,13,26,10,0,0,26, + 0,44,0,0,0,12,0,12,0,30,0,22,0,51,0,35, + 0,63,0,97,128,65,128,227,192,10,13,26,10,0,0,18, + 0,18,0,0,0,12,0,12,0,30,0,22,0,51,0,35, + 0,63,0,97,128,65,128,227,192,10,14,28,10,0,0,12, + 0,18,0,12,0,0,0,12,0,12,0,30,0,22,0,51, + 0,35,0,63,0,97,128,65,128,227,192,13,10,20,14,0, + 0,31,248,15,24,11,8,27,32,19,224,63,32,35,40,99, + 8,67,24,231,248,8,13,13,10,1,253,61,99,193,193,192, + 192,192,193,99,62,16,8,56,8,14,14,9,0,0,32,48, + 8,0,255,99,97,100,124,100,101,97,99,255,8,14,14,9, + 0,0,4,12,16,0,255,99,97,100,124,100,101,97,99,255, + 8,14,14,9,0,0,8,28,34,0,255,99,97,100,124,100, + 101,97,99,255,8,13,13,9,0,0,36,36,0,255,99,97, + 100,124,100,101,97,99,255,4,14,14,5,0,0,128,192,32, + 0,240,96,96,96,96,96,96,96,96,240,4,14,14,5,0, + 0,16,48,64,0,240,96,96,96,96,96,96,96,96,240,5, + 14,14,5,0,0,32,112,136,0,240,96,96,96,96,96,96, + 96,96,240,4,13,13,5,0,0,144,144,0,240,96,96,96, + 96,96,96,96,96,240,9,10,20,11,1,0,254,0,99,0, + 97,128,97,128,241,128,97,128,97,128,97,128,99,0,254,0, + 10,13,26,10,0,0,26,0,44,0,0,0,225,192,112,128, + 112,128,88,128,76,128,76,128,70,128,67,128,67,128,225,128, + 9,14,28,11,1,0,16,0,24,0,4,0,0,0,62,0, + 99,0,193,128,193,128,193,128,193,128,193,128,193,128,99,0, + 62,0,9,14,28,11,1,0,4,0,12,0,16,0,0,0, + 62,0,99,0,193,128,193,128,193,128,193,128,193,128,193,128, + 99,0,62,0,9,14,28,11,1,0,8,0,28,0,34,0, + 0,0,62,0,99,0,193,128,193,128,193,128,193,128,193,128, + 193,128,99,0,62,0,9,13,26,11,1,0,26,0,44,0, + 0,0,62,0,99,0,193,128,193,128,193,128,193,128,193,128, + 193,128,99,0,62,0,9,13,26,11,1,0,34,0,34,0, + 0,0,62,0,99,0,193,128,193,128,193,128,193,128,193,128, + 193,128,99,0,62,0,8,7,7,8,0,0,195,102,60,24, + 60,102,195,9,12,24,11,1,255,0,128,61,0,99,0,195, + 128,197,128,201,128,201,128,209,128,225,128,99,0,94,0,128, + 0,9,14,28,10,0,0,16,0,24,0,4,0,0,0,243, + 128,97,0,97,0,97,0,97,0,97,0,97,0,97,0,115, + 0,62,0,9,14,28,10,0,0,4,0,12,0,16,0,0, + 0,243,128,97,0,97,0,97,0,97,0,97,0,97,0,97, + 0,115,0,62,0,9,14,28,10,0,0,8,0,28,0,34, + 0,0,0,243,128,97,0,97,0,97,0,97,0,97,0,97, + 0,97,0,115,0,62,0,9,13,26,10,0,0,18,0,18, + 0,0,0,243,128,97,0,97,0,97,0,97,0,97,0,97, + 0,97,0,115,0,62,0,10,14,28,10,0,0,1,0,3, + 0,4,0,0,0,249,192,112,128,49,0,57,0,26,0,30, + 0,12,0,12,0,12,0,30,0,8,10,10,9,0,0,240, + 96,126,103,99,99,99,126,96,240,7,10,10,8,0,0,56, + 108,100,108,120,108,102,102,102,236,7,11,11,7,0,0,32, + 48,8,0,120,204,12,124,204,204,118,7,11,11,7,0,0, + 8,24,32,0,120,204,12,124,204,204,118,7,11,11,7,0, + 0,16,56,68,0,120,204,12,124,204,204,118,7,10,10,7, + 0,0,52,88,0,120,204,12,124,204,204,118,7,10,10,7, + 0,0,40,40,0,120,204,12,124,204,204,118,7,11,11,7, + 0,0,48,72,48,0,120,204,12,124,204,204,118,10,7,14, + 11,0,0,123,128,204,192,204,192,63,192,204,0,204,192,119, + 128,6,10,10,7,0,253,56,76,204,192,192,228,120,32,16, + 112,6,11,11,7,0,0,64,96,16,0,56,76,204,252,192, + 228,120,6,11,11,7,0,0,8,24,32,0,56,76,204,252, + 192,228,120,6,11,11,7,0,0,16,56,68,0,56,76,204, + 252,192,228,120,6,10,10,7,0,0,80,80,0,56,76,204, + 252,192,228,120,4,11,11,4,0,0,128,192,32,0,224,96, + 96,96,96,96,240,4,11,11,4,0,0,32,96,128,0,224, + 96,96,96,96,96,240,5,11,11,4,0,0,32,112,136,0, + 224,96,96,96,96,96,240,4,10,10,4,0,0,160,160,0, + 224,96,96,96,96,96,240,6,10,10,7,0,0,204,112,152, + 120,204,204,204,204,204,120,8,10,10,8,0,0,52,88,0, + 236,118,102,102,102,102,231,6,11,11,7,0,0,32,48,8, + 0,120,204,204,204,204,204,120,6,11,11,7,0,0,8,24, + 32,0,120,204,204,204,204,204,120,6,11,11,7,0,0,32, + 112,136,0,120,204,204,204,204,204,120,6,10,10,7,0,0, + 104,176,0,120,204,204,204,204,204,120,6,10,10,7,0,0, + 80,80,0,120,204,204,204,204,204,120,6,7,7,8,0,0, + 48,48,0,252,0,48,48,6,9,9,7,0,255,4,120,204, + 220,236,236,204,120,128,8,11,11,7,255,0,32,48,8,0, + 238,102,102,102,102,102,59,8,11,11,7,255,0,4,12,16, + 0,238,102,102,102,102,102,59,8,11,11,7,255,0,16,56, + 68,0,238,102,102,102,102,102,59,8,10,10,7,255,0,40, + 40,0,238,102,102,102,102,102,59,8,14,14,7,255,253,2, + 6,8,0,247,98,50,52,28,28,8,8,56,48,7,13,13, + 8,0,253,224,96,96,108,118,102,102,102,102,124,96,96,240, + 8,13,13,7,255,253,34,34,0,247,98,50,52,28,28,8, + 8,56,48}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--14-100-100-100-P-76-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=15 h=13 x= 1 y= 8 dx=14 dy= 0 ascent=11 len=26 + Font Bounding box w=17 h=24 x=-2 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =11 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB10r[1632] U8G_SECTION(".progmem.u8g_font_timB10r") = { + 0,17,24,254,250,10,2,6,4,148,32,127,253,11,253,10, + 253,0,0,0,3,0,1,2,10,10,4,1,0,192,192,192, + 192,192,192,192,0,192,192,5,4,4,7,1,6,216,216,216, + 72,7,10,10,7,255,0,20,20,20,126,40,40,252,80,80, + 80,6,12,12,7,0,255,16,120,212,212,240,120,60,28,148, + 212,120,16,13,10,20,14,0,0,56,192,103,192,197,128,201, + 0,115,0,6,112,4,200,13,136,25,144,24,224,10,10,20, + 12,1,0,60,0,102,0,102,0,60,0,57,192,108,128,205, + 128,199,0,239,128,123,0,2,4,4,4,1,6,192,192,192, + 64,3,13,13,5,1,253,32,96,64,192,192,192,192,192,192, + 192,64,96,32,3,13,13,5,0,253,128,192,64,96,96,96, + 96,96,96,96,64,192,128,5,6,6,7,1,4,32,168,112, + 112,168,32,7,7,7,8,0,0,16,16,16,254,16,16,16, + 2,4,4,3,0,254,192,192,64,128,3,1,1,4,0,3, + 224,2,2,2,3,0,0,192,192,4,10,10,4,0,0,16, + 16,48,32,96,64,64,192,128,128,6,10,10,7,0,0,120, + 72,204,204,204,204,204,204,72,120,6,10,10,7,0,0,48, + 240,48,48,48,48,48,48,48,252,6,10,10,7,0,0,56, + 124,140,12,12,24,48,64,252,252,6,10,10,7,0,0,56, + 124,140,12,56,28,12,196,236,120,6,10,10,7,0,0,24, + 56,56,88,152,152,252,252,24,24,6,10,10,7,0,0,124, + 124,64,120,124,12,4,196,204,120,6,10,10,7,0,0,28, + 48,96,224,248,204,204,204,204,120,6,10,10,7,0,0,252, + 252,140,8,24,16,16,32,32,96,6,10,10,7,0,0,120, + 204,204,236,120,120,204,204,204,120,6,10,10,7,0,0,120, + 204,204,204,204,124,24,56,112,192,2,7,7,4,1,0,192, + 192,0,0,0,192,192,2,9,9,4,1,254,192,192,0,0, + 0,192,192,64,128,7,7,7,8,0,0,6,28,112,192,112, + 28,6,7,3,3,8,0,2,254,0,254,7,7,7,8,0, + 0,192,112,28,6,28,112,192,5,10,10,7,1,0,112,216, + 216,24,48,96,96,0,96,96,11,12,24,14,1,254,15,128, + 56,192,96,96,69,32,143,32,155,32,155,32,159,96,141,192, + 64,0,96,0,31,128,10,10,20,10,0,0,12,0,12,0, + 30,0,22,0,51,0,35,0,63,0,97,128,65,128,227,192, + 8,10,10,9,0,0,254,99,99,99,126,99,99,99,99,254, + 8,10,10,10,1,0,61,99,193,193,192,192,192,193,99,62, + 9,10,20,10,0,0,254,0,99,0,97,128,97,128,97,128, + 97,128,97,128,97,128,99,0,254,0,8,10,10,9,0,0, + 255,99,97,100,124,100,96,97,99,255,8,10,10,8,0,0, + 255,99,97,100,124,100,100,96,96,240,9,10,20,11,1,0, + 61,0,99,0,193,0,193,0,192,0,199,128,195,0,195,0, + 99,0,62,0,10,10,20,11,0,0,243,192,97,128,97,128, + 97,128,127,128,97,128,97,128,97,128,97,128,243,192,4,10, + 10,5,0,0,240,96,96,96,96,96,96,96,96,240,6,11, + 11,7,0,255,60,24,24,24,24,24,24,24,216,216,112,10, + 10,20,11,1,0,247,192,99,0,98,0,100,0,120,0,124, + 0,110,0,103,0,99,128,247,192,8,10,10,9,0,0,240, + 96,96,96,96,96,97,97,99,255,12,10,20,13,0,0,240, + 240,112,224,112,224,89,96,89,96,90,96,78,96,78,96,68, + 96,228,240,10,10,20,10,0,0,225,192,112,128,112,128,88, + 128,76,128,76,128,70,128,67,128,67,128,225,128,9,10,20, + 11,1,0,62,0,99,0,193,128,193,128,193,128,193,128,193, + 128,193,128,99,0,62,0,8,10,10,9,0,0,254,103,99, + 99,99,126,96,96,96,240,9,13,26,11,1,253,62,0,99, + 0,193,128,193,128,193,128,193,128,193,128,193,128,99,0,62, + 0,28,0,14,0,3,128,10,10,20,10,0,0,254,0,103, + 0,99,0,99,0,102,0,124,0,110,0,103,0,99,128,241, + 192,7,10,10,8,0,0,122,198,194,224,120,28,14,134,198, + 252,8,10,10,9,0,0,255,219,153,24,24,24,24,24,24, + 60,9,10,20,10,0,0,243,128,97,0,97,0,97,0,97, + 0,97,0,97,0,97,0,115,0,62,0,10,10,20,10,0, + 0,241,192,96,128,97,128,49,0,51,0,50,0,26,0,30, + 0,12,0,12,0,15,10,20,14,255,0,247,158,99,12,99, + 8,49,136,49,144,51,144,26,208,28,224,12,96,12,96,11, + 10,20,10,0,0,241,192,112,128,57,0,30,0,12,0,14, + 0,23,0,35,128,65,192,227,224,10,10,20,10,0,0,249, + 192,112,128,49,0,57,0,26,0,30,0,12,0,12,0,12, + 0,30,0,8,10,10,9,0,0,255,199,134,140,24,24,49, + 97,227,255,4,13,13,5,0,253,240,192,192,192,192,192,192, + 192,192,192,192,192,240,4,10,10,4,0,0,128,128,192,64, + 96,32,32,48,16,16,4,13,13,5,0,253,240,48,48,48, + 48,48,48,48,48,48,48,48,240,5,5,5,8,1,5,32, + 112,80,216,136,7,1,1,7,0,253,254,3,3,3,5,1, + 8,128,192,32,7,7,7,7,0,0,120,204,12,124,204,204, + 118,7,10,10,8,0,0,224,96,96,124,102,102,102,102,102, + 92,5,7,7,6,0,0,48,88,200,192,192,232,112,7,10, + 10,7,0,0,28,12,12,124,204,204,204,204,204,118,6,7, + 7,6,0,0,56,76,204,252,192,228,120,5,10,10,5,0, + 0,56,104,96,240,96,96,96,96,96,240,7,10,10,7,0, + 253,126,204,204,204,120,64,124,254,130,124,8,10,10,8,0, + 0,224,96,96,108,118,102,102,102,102,231,4,10,10,4,0, + 0,96,96,0,224,96,96,96,96,96,240,4,13,13,4,255, + 253,48,48,0,112,48,48,48,48,48,48,48,176,224,8,10, + 10,8,0,0,224,96,96,110,100,104,120,108,102,231,4,10, + 10,4,0,0,224,96,96,96,96,96,96,96,96,240,12,7, + 14,12,0,0,236,192,119,96,102,96,102,96,102,96,102,96, + 247,112,8,7,7,8,0,0,236,118,102,102,102,102,231,6, + 7,7,7,0,0,120,204,204,204,204,204,120,7,10,10,8, + 0,253,236,118,102,102,102,102,124,96,96,240,7,10,10,7, + 0,253,108,220,204,204,204,204,124,12,12,30,6,7,7,6, + 0,0,220,108,96,96,96,96,240,5,7,7,6,0,0,120, + 200,224,112,56,152,240,5,9,9,5,0,0,32,96,240,96, + 96,96,104,112,48,8,7,7,7,255,0,238,102,102,102,102, + 102,59,8,7,7,7,255,0,247,98,98,52,52,24,24,10, + 7,14,10,0,0,238,192,100,128,118,128,55,0,59,0,59, + 0,18,0,7,7,7,7,0,0,238,108,56,56,56,108,238, + 8,10,10,7,255,253,247,98,50,52,28,28,8,8,56,48, + 6,7,7,6,0,0,252,156,24,48,100,228,252,5,13,13, + 7,1,253,24,48,48,48,48,96,192,96,48,48,48,48,24, + 1,12,12,3,1,254,128,128,128,128,128,128,128,128,128,128, + 128,128,5,13,13,7,0,253,192,96,96,96,96,48,24,48, + 96,96,96,96,192,7,4,4,8,0,3,96,242,158,12,255 + }; +/* + Fontname: -Adobe-Times-Bold-R-Normal--17-120-100-100-P-88-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=17 h=16 x= 2 y= 9 dx=17 dy= 0 ascent=16 len=33 + Font Bounding box w=19 h=27 x=-2 y=-7 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =11 descent=-4 + Max Font ascent =16 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB12[3887] U8G_SECTION(".progmem.u8g_font_timB12") = { + 0,19,27,254,249,11,2,42,5,41,32,255,252,16,252,11, + 252,0,0,0,5,0,1,2,11,11,6,2,0,192,192,192, + 192,192,128,128,0,0,192,192,5,5,5,9,1,6,216,216, + 216,144,144,8,11,11,8,0,0,18,18,18,127,36,36,36, + 254,72,72,72,7,13,13,8,0,255,16,122,150,210,240,120, + 60,30,22,146,210,188,16,12,12,24,16,2,0,48,128,111, + 0,201,0,201,0,202,0,210,96,100,208,9,144,9,144,17, + 144,17,160,32,192,10,11,22,14,2,0,28,0,38,0,38, + 0,52,0,57,192,120,128,156,128,141,0,198,64,231,192,123, + 128,2,5,5,5,2,6,192,192,192,128,128,4,14,14,6, + 1,253,16,32,96,64,192,192,192,192,192,192,64,96,32,16, + 4,14,14,6,0,253,128,64,96,32,48,48,48,48,48,48, + 32,96,64,128,5,7,7,8,1,4,32,168,248,112,248,168, + 32,7,8,8,9,1,0,16,16,16,254,254,16,16,16,2, + 5,5,4,1,253,192,192,64,64,128,4,2,2,5,0,3, + 240,240,2,2,2,4,1,0,192,192,4,11,11,5,0,0, + 16,48,32,32,96,64,64,64,192,128,128,6,11,11,8,1, + 0,48,72,204,204,204,204,204,204,204,72,48,6,11,11,8, + 1,0,16,240,48,48,48,48,48,48,48,48,252,7,11,11, + 8,0,0,56,124,156,12,12,8,24,16,34,124,252,7,11, + 11,8,0,0,56,124,140,8,16,60,14,6,198,204,120,7, + 11,11,8,0,0,4,12,28,44,44,76,140,254,254,12,12, + 8,11,11,8,0,0,31,62,32,56,124,14,6,6,198,204, + 112,6,11,11,8,1,0,12,48,96,96,240,204,204,204,204, + 72,48,7,11,11,8,0,0,126,126,132,4,12,8,8,24, + 16,48,32,7,11,11,8,0,0,56,68,198,228,120,60,78, + 198,198,68,56,6,11,11,8,1,0,48,72,204,204,204,204, + 124,24,24,48,192,2,7,7,5,1,0,192,192,0,0,0, + 192,192,2,10,10,5,1,253,192,192,0,0,0,192,192,64, + 64,128,8,8,8,9,0,0,3,14,56,192,192,56,14,3, + 7,5,5,9,1,2,254,254,0,254,254,8,8,8,9,0, + 0,192,112,28,3,3,28,112,192,6,11,11,8,1,0,56, + 204,204,12,12,8,16,32,0,96,96,13,13,26,16,1,254, + 7,128,28,96,48,16,103,80,204,200,216,200,216,136,217,144, + 217,176,78,224,32,0,24,96,7,128,11,11,22,12,0,0, + 4,0,14,0,14,0,27,0,19,0,51,0,33,128,127,128, + 64,192,192,192,225,224,9,11,22,10,1,0,252,0,102,0, + 99,0,99,0,102,0,126,0,99,0,97,128,97,128,99,0, + 254,0,9,11,22,11,1,0,30,128,99,128,65,128,192,128, + 192,0,192,0,192,0,192,0,96,128,115,0,62,0,9,11, + 22,11,1,0,252,0,102,0,99,0,97,128,97,128,97,128, + 97,128,97,128,99,0,102,0,252,0,8,11,11,10,1,0, + 255,99,97,96,98,126,98,96,97,99,255,8,11,11,10,1, + 0,255,99,97,96,98,126,98,96,96,96,248,10,11,22,12, + 1,0,30,128,99,128,65,128,192,128,192,0,192,0,199,192, + 193,128,193,128,97,128,63,0,10,11,22,12,1,0,243,192, + 97,128,97,128,97,128,97,128,127,128,97,128,97,128,97,128, + 97,128,243,192,4,11,11,6,1,0,240,96,96,96,96,96, + 96,96,96,96,240,6,13,13,8,1,254,60,24,24,24,24, + 24,24,24,24,24,216,208,96,11,11,22,13,1,0,251,192, + 97,0,98,0,100,0,104,0,120,0,108,0,102,0,99,0, + 97,128,251,224,9,11,22,11,1,0,240,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,128,96,128,97,128,255,128, + 14,11,22,15,0,0,224,28,112,24,112,56,120,56,88,88, + 76,88,76,152,70,152,71,24,67,24,226,60,10,11,22,12, + 1,0,241,192,112,128,88,128,88,128,76,128,70,128,71,128, + 67,128,65,128,65,128,224,128,10,11,22,12,1,0,30,0, + 97,128,64,128,192,192,192,192,192,192,192,192,192,192,64,128, + 97,128,30,0,8,11,11,10,1,0,254,103,99,99,102,124, + 96,96,96,96,240,10,14,28,12,1,253,30,0,97,128,64, + 128,192,192,192,192,192,192,192,192,192,192,64,128,97,128,63, + 0,14,0,6,0,1,128,10,11,22,12,1,0,254,0,103, + 0,99,0,99,0,102,0,124,0,108,0,102,0,99,0,97, + 128,243,192,8,11,11,9,0,0,61,67,193,224,120,60,14, + 7,131,194,188,10,11,22,11,1,0,255,192,204,192,140,64, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,30,0, + 10,11,22,12,1,0,241,192,96,128,96,128,96,128,96,128, + 96,128,96,128,96,128,96,128,33,0,30,0,11,11,22,12, + 0,0,248,224,48,64,48,64,24,128,24,128,13,0,13,0, + 7,0,6,0,2,0,2,0,17,11,33,17,0,0,251,239, + 128,112,195,0,48,194,0,56,226,0,25,230,0,29,100,0, + 13,124,0,15,56,0,6,56,0,6,16,0,2,16,0,10, + 11,22,12,1,0,251,192,113,0,58,0,58,0,28,0,14, + 0,30,0,23,0,35,0,67,128,231,192,11,11,22,12,0, + 0,248,224,112,64,56,128,24,128,29,0,15,0,6,0,6, + 0,6,0,6,0,15,0,10,11,22,11,0,0,255,192,193, + 192,131,128,7,0,14,0,14,0,28,0,56,0,112,64,240, + 192,255,192,3,14,14,6,1,253,224,192,192,192,192,192,192, + 192,192,192,192,192,192,224,4,11,11,5,0,0,128,192,64, + 64,96,32,32,32,48,16,16,3,14,14,6,1,253,224,96, + 96,96,96,96,96,96,96,96,96,96,96,224,7,7,7,9, + 1,4,16,56,40,108,68,198,130,8,1,1,8,0,252,255, + 3,3,3,6,2,9,192,64,32,8,8,8,8,0,0,56, + 204,204,28,108,204,205,118,8,11,11,9,0,0,224,96,96, + 108,118,99,99,99,99,118,236,6,8,8,7,0,0,56,108, + 204,192,192,192,100,56,8,11,11,9,0,0,14,6,6,54, + 110,198,198,198,198,78,55,6,8,8,7,0,0,56,108,204, + 252,192,192,100,56,6,11,11,6,0,0,24,108,96,240,96, + 96,96,96,96,96,240,7,12,12,8,0,252,50,78,204,204, + 200,112,64,252,126,130,132,120,8,11,11,9,0,0,224,96, + 96,108,118,102,102,102,102,102,239,4,11,11,5,0,0,96, + 96,0,224,96,96,96,96,96,96,240,5,15,15,5,254,252, + 24,24,0,56,24,24,24,24,24,24,24,24,216,208,96,9, + 11,22,9,0,0,224,0,96,0,96,0,111,0,100,0,104, + 0,120,0,124,0,110,0,103,0,247,128,4,11,11,5,0, + 0,224,96,96,96,96,96,96,96,96,96,240,12,8,16,13, + 0,0,237,192,119,96,102,96,102,96,102,96,102,96,102,96, + 246,240,8,8,8,9,0,0,236,126,102,102,102,102,102,247, + 7,8,8,8,0,0,56,108,198,198,198,198,108,56,8,12, + 12,9,0,252,236,118,99,99,99,99,118,108,96,96,96,240, + 8,12,12,9,0,252,50,110,198,198,198,198,110,54,6,6, + 6,15,6,8,8,7,0,0,236,124,96,96,96,96,96,240, + 5,8,8,6,0,0,120,200,224,112,56,152,216,176,5,11, + 11,6,0,0,32,32,96,240,96,96,96,96,96,104,48,8, + 8,8,9,0,0,238,102,102,102,102,102,111,54,8,8,8, + 8,0,0,247,98,98,100,52,56,24,16,12,8,16,12,0, + 0,239,112,102,32,102,32,119,64,55,64,57,128,25,128,17, + 0,7,8,8,8,0,0,246,116,56,56,24,60,76,238,8, + 12,12,8,0,252,247,98,98,52,52,28,24,24,16,16,224, + 192,7,8,8,7,0,0,254,140,152,24,48,114,98,254,4, + 14,14,7,1,253,48,96,96,96,96,64,128,64,96,96,96, + 96,96,48,1,14,14,4,1,253,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,4,14,14,7,1,253,192,96,96, + 96,96,32,16,32,96,96,96,96,96,192,9,4,8,9,0, + 4,48,0,120,128,159,0,14,0,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,0,0,0,5,0,1, + 2,12,12,6,2,252,192,192,0,0,64,64,64,192,192,192, + 192,192,6,12,12,8,1,254,4,4,56,76,204,208,208,224, + 100,56,64,64,8,11,11,8,0,0,28,38,38,48,48,124, + 48,16,113,158,110,6,7,7,8,1,1,180,120,204,132,204, + 120,180,8,11,11,8,0,0,227,98,50,52,28,126,24,126, + 24,24,126,1,15,15,4,1,253,128,128,128,128,128,128,0, + 0,0,128,128,128,128,128,128,6,15,15,8,1,252,56,76, + 76,96,48,120,156,204,228,120,56,24,200,200,112,5,2,2, + 6,0,9,216,216,12,11,22,12,255,0,15,0,48,192,71, + 32,72,160,152,16,152,16,152,16,72,160,71,32,48,192,15, + 0,5,7,7,5,0,4,96,144,112,176,216,0,248,7,7, + 7,8,0,0,18,54,108,216,108,54,18,7,6,6,9,1, + 1,254,254,2,2,2,2,4,2,2,5,0,3,240,240,12, + 11,22,12,0,0,15,0,48,192,78,32,73,32,137,16,142, + 16,138,16,73,32,93,32,48,192,15,0,5,1,1,6,0, + 9,248,4,5,5,7,1,6,96,144,144,144,96,7,9,9, + 9,1,0,16,16,254,254,16,16,0,254,254,4,7,7,5, + 0,4,96,240,176,32,64,240,240,4,7,7,5,0,4,96, + 176,48,96,48,176,96,3,3,3,6,1,9,96,64,128,8, + 11,11,9,0,253,238,102,102,102,102,102,111,118,64,96,96, + 7,15,15,9,1,252,62,116,244,244,244,244,116,52,20,20, + 20,20,20,20,20,2,2,2,4,1,4,192,192,5,4,4, + 6,0,252,32,48,136,112,4,7,7,5,1,4,96,224,96, + 96,96,96,240,4,7,7,6,1,4,96,144,144,144,96,0, + 240,7,7,7,8,0,0,144,216,108,54,108,216,144,11,11, + 22,12,0,0,96,128,225,0,97,0,98,0,100,64,100,192, + 249,192,10,192,19,224,32,192,32,192,10,11,22,12,0,0, + 97,0,225,0,98,0,98,0,100,0,107,128,254,192,16,128, + 17,0,35,192,39,192,11,11,22,12,0,0,96,128,177,0, + 49,0,98,0,52,64,180,192,105,192,10,192,19,224,32,192, + 32,192,6,11,11,8,1,253,24,24,0,16,32,64,192,192, + 204,204,112,11,15,30,12,0,0,48,0,24,0,4,0,0, + 0,4,0,14,0,14,0,27,0,19,0,51,0,33,128,127, + 128,64,192,192,192,225,224,11,15,30,12,0,0,1,128,3, + 0,4,0,0,0,4,0,14,0,14,0,27,0,19,0,51, + 0,33,128,127,128,64,192,192,192,225,224,11,15,30,12,0, + 0,4,0,14,0,17,0,0,0,4,0,14,0,14,0,27, + 0,19,0,51,0,33,128,127,128,64,192,192,192,225,224,11, + 14,28,12,0,0,29,0,46,0,0,0,4,0,14,0,14, + 0,27,0,19,0,51,0,33,128,127,128,64,192,192,192,225, + 224,11,14,28,12,0,0,27,0,27,0,0,0,4,0,14, + 0,14,0,27,0,19,0,51,0,33,128,127,128,64,192,192, + 192,225,224,11,16,32,12,0,0,6,0,9,0,9,0,6, + 0,0,0,4,0,14,0,14,0,27,0,19,0,51,0,33, + 128,127,128,64,192,192,192,225,224,14,11,22,16,1,0,15, + 248,7,24,11,8,11,0,19,32,31,224,35,32,35,0,67, + 4,67,12,231,252,9,15,30,11,1,252,30,128,99,128,65, + 128,192,128,192,0,192,0,192,0,192,0,96,128,115,0,62, + 0,8,0,12,0,34,0,28,0,8,15,15,10,1,0,96, + 48,8,0,255,99,97,96,98,126,98,96,97,99,255,8,15, + 15,10,1,0,6,12,16,0,255,99,97,96,98,126,98,96, + 97,99,255,8,15,15,10,1,0,8,28,34,0,255,99,97, + 96,98,126,98,96,97,99,255,8,14,14,10,1,0,102,102, + 0,255,99,97,96,98,126,98,96,97,99,255,5,15,15,6, + 0,0,192,96,16,0,120,48,48,48,48,48,48,48,48,48, + 120,4,15,15,6,1,0,48,96,128,0,240,96,96,96,96, + 96,96,96,96,96,240,5,15,15,6,0,0,32,112,136,0, + 120,48,48,48,48,48,48,48,48,48,120,6,14,14,6,0, + 0,204,204,0,120,48,48,48,48,48,48,48,48,48,120,9, + 11,22,11,1,0,252,0,102,0,99,0,97,128,97,128,249, + 128,97,128,97,128,99,0,102,0,252,0,10,14,28,12,1, + 0,29,0,46,0,0,0,241,192,112,128,88,128,88,128,76, + 128,70,128,71,128,67,128,65,128,65,128,224,128,10,15,30, + 12,1,0,48,0,24,0,4,0,0,0,30,0,97,128,64, + 128,192,192,192,192,192,192,192,192,192,192,64,128,97,128,30, + 0,10,15,30,12,1,0,3,0,6,0,8,0,0,0,30, + 0,97,128,64,128,192,192,192,192,192,192,192,192,192,192,64, + 128,97,128,30,0,10,15,30,12,1,0,4,0,14,0,17, + 0,0,0,30,0,97,128,64,128,192,192,192,192,192,192,192, + 192,192,192,64,128,97,128,30,0,10,14,28,12,1,0,29, + 0,46,0,0,0,30,0,97,128,64,128,192,192,192,192,192, + 192,192,192,192,192,64,128,97,128,30,0,10,14,28,12,1, + 0,51,0,51,0,0,0,30,0,97,128,64,128,192,192,192, + 192,192,192,192,192,192,192,64,128,97,128,30,0,7,8,8, + 9,1,0,130,198,108,56,56,108,198,130,10,13,26,13,1, + 255,0,64,30,128,97,128,65,128,194,192,194,192,196,192,200, + 192,200,192,80,128,97,128,62,0,64,0,10,15,30,12,1, + 0,48,0,24,0,4,0,0,0,241,192,96,128,96,128,96, + 128,96,128,96,128,96,128,96,128,96,128,33,0,30,0,10, + 15,30,12,1,0,3,0,6,0,8,0,0,0,241,192,96, + 128,96,128,96,128,96,128,96,128,96,128,96,128,96,128,33, + 0,30,0,10,15,30,12,1,0,4,0,14,0,17,0,0, + 0,241,192,96,128,96,128,96,128,96,128,96,128,96,128,96, + 128,96,128,33,0,30,0,10,14,28,12,1,0,51,0,51, + 0,0,0,241,192,96,128,96,128,96,128,96,128,96,128,96, + 128,96,128,96,128,33,0,30,0,11,15,30,12,0,0,1, + 128,3,0,4,0,0,0,248,224,112,64,56,128,24,128,29, + 0,15,0,6,0,6,0,6,0,6,0,15,0,8,11,11, + 10,1,0,240,96,126,103,99,99,103,126,96,96,240,8,11, + 11,9,0,0,24,38,102,102,108,98,99,99,99,98,236,8, + 12,12,8,0,0,48,16,8,0,56,204,204,28,108,204,205, + 118,8,12,12,8,0,0,24,16,32,0,56,204,204,28,108, + 204,205,118,8,12,12,8,0,0,16,56,68,0,56,204,204, + 28,108,204,205,118,8,11,11,8,0,0,52,88,0,56,204, + 204,28,108,204,205,118,8,11,11,8,0,0,108,108,0,56, + 204,204,28,108,204,205,118,8,13,13,8,0,0,16,40,40, + 16,0,56,204,204,28,108,204,205,118,10,8,16,12,1,0, + 51,128,206,192,204,192,31,192,108,0,204,0,214,64,99,128, + 6,12,12,7,0,252,56,108,204,192,192,192,100,56,32,48, + 136,112,6,12,12,7,0,0,48,16,8,0,56,108,204,252, + 192,192,100,56,6,12,12,7,0,0,24,16,32,0,56,108, + 204,252,192,192,100,56,6,12,12,7,0,0,16,56,68,0, + 56,108,204,252,192,192,100,56,6,11,11,7,0,0,108,108, + 0,56,108,204,252,192,192,100,56,4,12,12,5,0,0,192, + 64,32,0,224,96,96,96,96,96,96,240,4,12,12,5,0, + 0,48,32,64,0,224,96,96,96,96,96,96,240,5,12,12, + 5,255,0,32,112,136,0,112,48,48,48,48,48,48,120,5, + 11,11,5,255,0,216,216,0,112,48,48,48,48,48,48,120, + 7,11,11,8,0,0,108,48,216,60,108,198,198,198,198,108, + 56,8,11,11,9,0,0,52,88,0,236,126,102,102,102,102, + 102,247,7,12,12,8,0,0,48,16,8,0,56,108,198,198, + 198,198,108,56,7,12,12,8,0,0,24,16,32,0,56,108, + 198,198,198,198,108,56,7,12,12,8,0,0,16,56,68,0, + 56,108,198,198,198,198,108,56,7,11,11,8,0,0,52,88, + 0,56,108,198,198,198,198,108,56,7,11,11,8,0,0,108, + 108,0,56,108,198,198,198,198,108,56,8,8,8,9,0,0, + 24,24,0,255,255,0,24,24,7,10,10,8,0,255,2,60, + 108,206,214,214,230,108,120,128,8,12,12,9,0,0,48,16, + 8,0,238,102,102,102,102,102,111,54,8,12,12,9,0,0, + 12,8,16,0,238,102,102,102,102,102,111,54,8,12,12,9, + 0,0,16,56,68,0,238,102,102,102,102,102,111,54,8,11, + 11,9,0,0,108,108,0,238,102,102,102,102,102,111,54,8, + 16,16,8,0,252,12,8,16,0,247,98,98,52,52,28,24, + 24,16,16,224,192,8,15,15,9,0,252,224,96,96,108,118, + 99,99,99,99,114,108,96,96,96,240,8,15,15,8,0,252, + 108,108,0,247,98,98,52,52,28,24,24,16,16,224,192}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--17-120-100-100-P-88-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=17 h=15 x= 2 y= 9 dx=17 dy= 0 ascent=12 len=33 + Font Bounding box w=19 h=27 x=-2 y=-7 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =11 descent=-4 + Max Font ascent =12 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB12r[1834] U8G_SECTION(".progmem.u8g_font_timB12r") = { + 0,19,27,254,249,11,2,42,5,41,32,127,252,12,252,11, + 252,0,0,0,5,0,1,2,11,11,6,2,0,192,192,192, + 192,192,128,128,0,0,192,192,5,5,5,9,1,6,216,216, + 216,144,144,8,11,11,8,0,0,18,18,18,127,36,36,36, + 254,72,72,72,7,13,13,8,0,255,16,122,150,210,240,120, + 60,30,22,146,210,188,16,12,12,24,16,2,0,48,128,111, + 0,201,0,201,0,202,0,210,96,100,208,9,144,9,144,17, + 144,17,160,32,192,10,11,22,14,2,0,28,0,38,0,38, + 0,52,0,57,192,120,128,156,128,141,0,198,64,231,192,123, + 128,2,5,5,5,2,6,192,192,192,128,128,4,14,14,6, + 1,253,16,32,96,64,192,192,192,192,192,192,64,96,32,16, + 4,14,14,6,0,253,128,64,96,32,48,48,48,48,48,48, + 32,96,64,128,5,7,7,8,1,4,32,168,248,112,248,168, + 32,7,8,8,9,1,0,16,16,16,254,254,16,16,16,2, + 5,5,4,1,253,192,192,64,64,128,4,2,2,5,0,3, + 240,240,2,2,2,4,1,0,192,192,4,11,11,5,0,0, + 16,48,32,32,96,64,64,64,192,128,128,6,11,11,8,1, + 0,48,72,204,204,204,204,204,204,204,72,48,6,11,11,8, + 1,0,16,240,48,48,48,48,48,48,48,48,252,7,11,11, + 8,0,0,56,124,156,12,12,8,24,16,34,124,252,7,11, + 11,8,0,0,56,124,140,8,16,60,14,6,198,204,120,7, + 11,11,8,0,0,4,12,28,44,44,76,140,254,254,12,12, + 8,11,11,8,0,0,31,62,32,56,124,14,6,6,198,204, + 112,6,11,11,8,1,0,12,48,96,96,240,204,204,204,204, + 72,48,7,11,11,8,0,0,126,126,132,4,12,8,8,24, + 16,48,32,7,11,11,8,0,0,56,68,198,228,120,60,78, + 198,198,68,56,6,11,11,8,1,0,48,72,204,204,204,204, + 124,24,24,48,192,2,7,7,5,1,0,192,192,0,0,0, + 192,192,2,10,10,5,1,253,192,192,0,0,0,192,192,64, + 64,128,8,8,8,9,0,0,3,14,56,192,192,56,14,3, + 7,5,5,9,1,2,254,254,0,254,254,8,8,8,9,0, + 0,192,112,28,3,3,28,112,192,6,11,11,8,1,0,56, + 204,204,12,12,8,16,32,0,96,96,13,13,26,16,1,254, + 7,128,28,96,48,16,103,80,204,200,216,200,216,136,217,144, + 217,176,78,224,32,0,24,96,7,128,11,11,22,12,0,0, + 4,0,14,0,14,0,27,0,19,0,51,0,33,128,127,128, + 64,192,192,192,225,224,9,11,22,10,1,0,252,0,102,0, + 99,0,99,0,102,0,126,0,99,0,97,128,97,128,99,0, + 254,0,9,11,22,11,1,0,30,128,99,128,65,128,192,128, + 192,0,192,0,192,0,192,0,96,128,115,0,62,0,9,11, + 22,11,1,0,252,0,102,0,99,0,97,128,97,128,97,128, + 97,128,97,128,99,0,102,0,252,0,8,11,11,10,1,0, + 255,99,97,96,98,126,98,96,97,99,255,8,11,11,10,1, + 0,255,99,97,96,98,126,98,96,96,96,248,10,11,22,12, + 1,0,30,128,99,128,65,128,192,128,192,0,192,0,199,192, + 193,128,193,128,97,128,63,0,10,11,22,12,1,0,243,192, + 97,128,97,128,97,128,97,128,127,128,97,128,97,128,97,128, + 97,128,243,192,4,11,11,6,1,0,240,96,96,96,96,96, + 96,96,96,96,240,6,13,13,8,1,254,60,24,24,24,24, + 24,24,24,24,24,216,208,96,11,11,22,13,1,0,251,192, + 97,0,98,0,100,0,104,0,120,0,108,0,102,0,99,0, + 97,128,251,224,9,11,22,11,1,0,240,0,96,0,96,0, + 96,0,96,0,96,0,96,0,96,128,96,128,97,128,255,128, + 14,11,22,15,0,0,224,28,112,24,112,56,120,56,88,88, + 76,88,76,152,70,152,71,24,67,24,226,60,10,11,22,12, + 1,0,241,192,112,128,88,128,88,128,76,128,70,128,71,128, + 67,128,65,128,65,128,224,128,10,11,22,12,1,0,30,0, + 97,128,64,128,192,192,192,192,192,192,192,192,192,192,64,128, + 97,128,30,0,8,11,11,10,1,0,254,103,99,99,102,124, + 96,96,96,96,240,10,14,28,12,1,253,30,0,97,128,64, + 128,192,192,192,192,192,192,192,192,192,192,64,128,97,128,63, + 0,14,0,6,0,1,128,10,11,22,12,1,0,254,0,103, + 0,99,0,99,0,102,0,124,0,108,0,102,0,99,0,97, + 128,243,192,8,11,11,9,0,0,61,67,193,224,120,60,14, + 7,131,194,188,10,11,22,11,1,0,255,192,204,192,140,64, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,30,0, + 10,11,22,12,1,0,241,192,96,128,96,128,96,128,96,128, + 96,128,96,128,96,128,96,128,33,0,30,0,11,11,22,12, + 0,0,248,224,48,64,48,64,24,128,24,128,13,0,13,0, + 7,0,6,0,2,0,2,0,17,11,33,17,0,0,251,239, + 128,112,195,0,48,194,0,56,226,0,25,230,0,29,100,0, + 13,124,0,15,56,0,6,56,0,6,16,0,2,16,0,10, + 11,22,12,1,0,251,192,113,0,58,0,58,0,28,0,14, + 0,30,0,23,0,35,0,67,128,231,192,11,11,22,12,0, + 0,248,224,112,64,56,128,24,128,29,0,15,0,6,0,6, + 0,6,0,6,0,15,0,10,11,22,11,0,0,255,192,193, + 192,131,128,7,0,14,0,14,0,28,0,56,0,112,64,240, + 192,255,192,3,14,14,6,1,253,224,192,192,192,192,192,192, + 192,192,192,192,192,192,224,4,11,11,5,0,0,128,192,64, + 64,96,32,32,32,48,16,16,3,14,14,6,1,253,224,96, + 96,96,96,96,96,96,96,96,96,96,96,224,7,7,7,9, + 1,4,16,56,40,108,68,198,130,8,1,1,8,0,252,255, + 3,3,3,6,2,9,192,64,32,8,8,8,8,0,0,56, + 204,204,28,108,204,205,118,8,11,11,9,0,0,224,96,96, + 108,118,99,99,99,99,118,236,6,8,8,7,0,0,56,108, + 204,192,192,192,100,56,8,11,11,9,0,0,14,6,6,54, + 110,198,198,198,198,78,55,6,8,8,7,0,0,56,108,204, + 252,192,192,100,56,6,11,11,6,0,0,24,108,96,240,96, + 96,96,96,96,96,240,7,12,12,8,0,252,50,78,204,204, + 200,112,64,252,126,130,132,120,8,11,11,9,0,0,224,96, + 96,108,118,102,102,102,102,102,239,4,11,11,5,0,0,96, + 96,0,224,96,96,96,96,96,96,240,5,15,15,5,254,252, + 24,24,0,56,24,24,24,24,24,24,24,24,216,208,96,9, + 11,22,9,0,0,224,0,96,0,96,0,111,0,100,0,104, + 0,120,0,124,0,110,0,103,0,247,128,4,11,11,5,0, + 0,224,96,96,96,96,96,96,96,96,96,240,12,8,16,13, + 0,0,237,192,119,96,102,96,102,96,102,96,102,96,102,96, + 246,240,8,8,8,9,0,0,236,126,102,102,102,102,102,247, + 7,8,8,8,0,0,56,108,198,198,198,198,108,56,8,12, + 12,9,0,252,236,118,99,99,99,99,118,108,96,96,96,240, + 8,12,12,9,0,252,50,110,198,198,198,198,110,54,6,6, + 6,15,6,8,8,7,0,0,236,124,96,96,96,96,96,240, + 5,8,8,6,0,0,120,200,224,112,56,152,216,176,5,11, + 11,6,0,0,32,32,96,240,96,96,96,96,96,104,48,8, + 8,8,9,0,0,238,102,102,102,102,102,111,54,8,8,8, + 8,0,0,247,98,98,100,52,56,24,16,12,8,16,12,0, + 0,239,112,102,32,102,32,119,64,55,64,57,128,25,128,17, + 0,7,8,8,8,0,0,246,116,56,56,24,60,76,238,8, + 12,12,8,0,252,247,98,98,52,52,28,24,24,16,16,224, + 192,7,8,8,7,0,0,254,140,152,24,48,114,98,254,4, + 14,14,7,1,253,48,96,96,96,96,64,128,64,96,96,96, + 96,96,48,1,14,14,4,1,253,128,128,128,128,128,128,128, + 128,128,128,128,128,128,128,4,14,14,7,1,253,192,96,96, + 96,96,32,16,32,96,96,96,96,96,192,9,4,8,9,0, + 4,48,0,120,128,159,0,14,0,255}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--20-140-100-100-P-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w=18 h=17 x= 2 y=11 dx=19 dy= 0 ascent=17 len=39 + Font Bounding box w=22 h=28 x=-2 y=-7 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =17 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB14[4851] U8G_SECTION(".progmem.u8g_font_timB14") = { + 0,22,28,254,249,13,2,178,6,78,32,255,252,17,252,13, + 252,0,0,0,5,0,1,3,13,13,6,1,0,64,224,224, + 224,224,224,224,64,64,0,224,224,224,6,6,6,10,2,7, + 204,204,204,204,136,136,10,12,24,9,0,0,25,128,25,128, + 25,128,127,192,127,192,51,0,51,0,255,128,255,128,102,0, + 102,0,102,0,8,16,16,9,0,254,24,126,219,219,216,248, + 124,62,31,31,27,219,219,126,24,24,14,13,26,18,1,0, + 60,24,119,240,226,96,226,64,228,192,253,128,115,120,6,236, + 6,196,13,196,25,200,49,248,48,224,13,13,26,16,2,0, + 30,0,51,0,51,0,51,0,58,0,28,240,60,96,94,64, + 207,128,199,128,227,192,255,248,120,240,2,6,6,5,1,7, + 192,192,192,192,128,128,5,17,17,6,1,252,8,16,48,96, + 96,224,192,192,192,192,192,224,96,96,48,16,8,5,17,17, + 6,0,252,128,64,96,48,48,56,24,24,24,24,24,56,48, + 32,96,64,128,8,9,9,9,0,4,24,24,219,255,60,255, + 219,24,24,10,10,20,11,0,0,12,0,12,0,12,0,12, + 0,255,192,255,192,12,0,12,0,12,0,12,0,4,6,6, + 5,0,253,112,112,112,48,96,192,5,3,3,6,0,4,248, + 248,248,3,3,3,5,1,0,224,224,224,5,13,13,6,0, + 0,24,24,24,48,48,48,32,96,96,96,192,192,192,8,13, + 13,9,0,0,60,102,103,231,231,231,231,231,231,231,102,102, + 60,8,13,13,9,0,0,28,60,252,28,28,28,28,28,28, + 28,28,28,127,8,13,13,9,0,0,60,126,207,135,7,7, + 6,12,24,49,99,255,255,9,13,26,9,0,0,60,0,126, + 0,143,0,7,0,14,0,28,0,62,0,15,0,7,128,3, + 128,195,0,230,0,124,0,8,13,13,9,0,0,14,30,30, + 46,46,78,206,142,255,255,14,14,14,9,13,26,9,0,0, + 63,0,63,0,62,0,64,0,120,0,126,0,63,0,7,128, + 3,128,3,128,195,0,230,0,252,0,8,13,13,9,0,0, + 7,28,56,112,96,252,230,231,231,231,231,102,60,8,13,13, + 9,0,0,255,255,254,134,12,12,12,24,24,56,48,48,112, + 8,13,13,9,0,0,60,102,227,227,246,124,60,126,207,199, + 195,231,126,8,13,13,9,0,0,60,102,231,231,231,231,103, + 63,7,6,14,60,240,3,9,9,5,1,0,224,224,224,0, + 0,0,224,224,224,4,12,12,5,0,253,112,112,112,0,0, + 0,112,112,112,48,96,192,9,9,18,11,1,0,3,128,15, + 0,60,0,240,0,192,0,240,0,60,0,15,0,3,128,9, + 6,12,11,1,2,255,128,255,128,0,0,0,0,255,128,255, + 128,9,9,18,11,1,0,224,0,120,0,30,0,7,128,1, + 128,7,128,30,0,120,0,224,0,7,13,13,9,1,0,124, + 206,238,238,78,12,24,16,16,0,56,56,56,15,16,32,17, + 1,253,3,224,15,56,56,12,48,4,115,182,103,118,231,118, + 238,102,238,102,238,236,239,252,103,184,112,0,56,0,30,0, + 7,240,14,13,26,14,0,0,3,0,3,128,7,128,5,192, + 13,192,8,192,24,224,16,96,31,240,48,112,32,56,96,56, + 248,252,10,13,26,13,1,0,254,0,115,128,113,192,113,192, + 113,192,115,128,126,0,115,128,113,192,113,192,113,192,115,128, + 255,0,12,13,26,14,1,0,15,144,56,240,112,112,112,48, + 224,0,224,0,224,0,224,0,224,0,112,0,112,48,60,224, + 15,128,12,13,26,14,1,0,255,0,113,192,112,224,112,96, + 112,112,112,112,112,112,112,112,112,112,112,96,112,224,113,192, + 255,0,10,13,26,13,2,0,255,192,112,192,112,64,112,0, + 112,0,113,0,127,0,113,0,112,0,112,0,112,64,112,192, + 255,192,10,13,26,12,2,0,255,192,112,192,112,64,112,0, + 112,0,113,0,127,0,113,0,112,0,112,0,112,0,112,0, + 248,0,13,13,26,15,1,0,15,144,56,240,112,112,112,48, + 224,0,224,0,224,248,224,112,224,112,112,112,112,112,56,240, + 15,192,13,13,26,15,1,0,248,248,112,112,112,112,112,112, + 112,112,112,112,127,240,112,112,112,112,112,112,112,112,112,112, + 249,248,5,13,13,7,1,0,248,112,112,112,112,112,112,112, + 112,112,112,112,248,8,15,15,9,0,254,31,14,14,14,14, + 14,14,14,14,14,14,14,238,236,120,12,13,26,15,2,0, + 249,240,112,192,113,128,115,0,118,0,124,0,124,0,126,0, + 119,0,119,128,115,192,113,224,248,240,10,13,26,13,2,0, + 248,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,64,112,192,255,192,15,13,26,18,2,0, + 240,30,112,28,120,60,120,60,124,92,92,92,94,220,78,156, + 79,156,71,28,71,28,67,28,226,62,12,13,26,14,1,0, + 240,112,120,32,120,32,124,32,94,32,78,32,79,32,71,160, + 67,160,67,224,65,224,64,224,224,224,13,13,26,15,1,0, + 15,128,56,224,112,112,112,112,224,56,224,56,224,56,224,56, + 224,56,112,112,112,112,56,224,15,128,10,13,26,12,1,0, + 255,0,115,128,113,192,113,192,113,192,115,128,127,0,112,0, + 112,0,112,0,112,0,112,0,248,0,13,17,34,15,1,252, + 15,128,56,224,112,112,112,112,224,56,224,56,224,56,224,56, + 224,56,112,112,112,112,56,224,15,128,15,0,7,128,3,224, + 0,248,12,13,26,14,1,0,255,0,115,128,113,192,113,192, + 113,192,115,128,127,0,119,0,115,128,113,192,113,192,112,224, + 248,240,9,13,26,11,1,0,30,128,99,128,225,128,224,0, + 248,0,124,0,63,0,15,128,7,128,3,128,195,128,231,0, + 188,0,11,13,26,13,1,0,255,224,206,96,142,32,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 31,0,12,13,26,14,1,0,248,240,112,32,112,32,112,32, + 112,32,112,32,112,32,112,32,112,32,112,32,112,96,56,192, + 31,128,14,13,26,14,0,0,252,124,120,24,56,16,60,48, + 28,32,30,96,30,64,14,192,15,128,7,128,7,0,3,0, + 2,0,18,13,39,19,1,0,253,247,192,121,225,128,56,225, + 0,60,227,0,60,226,0,28,114,0,30,118,0,14,116,0, + 14,188,0,15,60,0,7,60,0,6,24,0,6,24,0,14, + 13,26,14,0,0,248,120,120,48,60,96,28,192,15,128,7, + 0,7,128,7,192,13,192,24,224,48,112,96,120,240,252,13, + 13,26,14,1,0,252,120,120,48,56,96,60,64,30,192,14, + 128,15,128,7,0,7,0,7,0,7,0,7,0,31,192,10, + 13,26,13,2,0,255,192,195,192,131,128,7,128,15,0,14, + 0,30,0,60,0,56,0,120,0,240,64,224,192,255,192,4, + 16,16,6,1,253,240,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,240,5,13,13,5,0,0,192,192,192,96,96, + 96,32,48,48,48,24,24,24,4,16,16,6,1,253,240,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,240,8,7, + 7,11,1,6,24,24,60,36,102,195,195,9,2,4,9,0, + 252,255,128,255,128,5,3,3,6,0,10,224,112,24,8,9, + 9,9,0,0,124,206,206,30,110,206,206,254,119,9,13,26, + 9,255,0,240,0,112,0,112,0,112,0,118,0,127,0,115, + 128,115,128,115,128,115,128,115,128,115,0,110,0,7,9,9, + 8,0,0,62,118,230,224,224,224,224,118,60,9,13,26,10, + 0,0,15,0,7,0,7,0,7,0,55,0,127,0,231,0, + 231,0,231,0,231,0,231,0,119,0,59,128,7,9,9,8, + 0,0,60,118,230,254,224,224,224,118,60,7,13,13,6,0, + 0,62,118,118,112,252,112,112,112,112,112,112,112,248,9,13, + 26,9,0,252,63,128,231,0,231,0,231,0,230,0,120,0, + 96,0,254,0,255,128,227,128,193,128,227,0,126,0,10,13, + 26,11,0,0,240,0,112,0,112,0,112,0,119,0,127,128, + 115,128,115,128,115,128,115,128,115,128,115,128,251,192,5,13, + 13,5,0,0,96,96,96,0,240,112,112,112,112,112,112,112, + 248,6,17,17,5,254,252,24,24,24,0,60,28,28,28,28, + 28,28,28,28,28,220,216,112,10,13,26,10,0,0,240,0, + 112,0,112,0,112,0,115,128,115,0,118,0,124,0,124,0, + 126,0,119,0,115,128,247,192,5,13,13,6,0,0,240,112, + 112,112,112,112,112,112,112,112,112,112,248,15,9,18,16,0, + 0,247,56,123,220,115,156,115,156,115,156,115,156,115,156,115, + 156,251,222,10,9,18,11,0,0,231,0,127,128,115,128,115, + 128,115,128,115,128,115,128,115,128,251,192,8,9,9,9,0, + 0,60,102,231,231,231,231,231,102,60,9,13,26,10,0,252, + 230,0,127,0,115,128,115,128,115,128,115,128,115,128,123,0, + 118,0,112,0,112,0,112,0,248,0,9,13,26,9,0,252, + 57,0,119,0,231,0,231,0,231,0,231,0,231,0,127,0, + 55,0,7,0,7,0,7,0,15,128,7,9,9,8,0,0, + 238,118,112,112,112,112,112,112,248,6,9,9,7,0,0,124, + 204,228,240,120,60,156,204,248,6,11,11,7,0,0,16,48, + 252,112,112,112,112,112,112,116,56,10,9,18,11,0,0,247, + 128,115,128,115,128,115,128,115,128,115,128,115,128,127,128,61, + 192,10,9,18,9,255,0,251,192,113,128,121,0,59,0,59, + 0,30,0,30,0,12,0,12,0,14,9,18,12,255,0,247, + 156,119,24,115,144,59,176,57,160,29,224,31,224,12,192,12, + 192,9,9,18,9,0,0,243,128,115,0,122,0,60,0,28, + 0,30,0,55,0,103,128,227,128,10,13,26,9,255,252,251, + 192,113,128,121,0,59,0,58,0,30,0,30,0,12,0,12, + 0,12,0,200,0,216,0,240,0,7,9,9,8,0,0,254, + 206,142,28,56,112,114,230,254,7,17,17,8,0,252,30,56, + 48,48,48,48,48,96,192,96,48,48,48,48,48,56,30,2, + 16,16,4,1,253,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,7,17,17,8,1,252,240,56,24,24,24, + 24,24,12,6,12,24,24,24,24,24,56,240,8,4,4,10, + 1,3,112,249,159,14,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,0,0,5,0,1,3,13,13, + 6,1,252,224,224,224,0,64,64,224,224,224,224,224,224,64, + 8,13,13,9,0,254,1,3,62,119,239,236,216,216,240,115, + 62,96,64,14,13,26,9,0,0,31,0,59,0,59,0,56, + 0,56,0,56,0,254,0,56,4,56,0,48,0,240,128,191, + 128,239,0,8,8,8,9,0,2,219,255,102,195,195,102,255, + 219,9,13,26,9,0,0,251,128,113,0,115,0,58,0,58, + 0,28,0,127,0,28,0,127,0,28,0,28,0,28,0,127, + 0,2,16,16,4,1,253,192,192,192,192,192,192,0,0,0, + 0,192,192,192,192,192,192,7,16,16,9,1,253,60,102,70, + 96,48,120,220,206,230,118,60,28,12,196,204,120,6,2,2, + 6,0,10,204,204,13,13,26,15,1,0,15,128,56,224,96, + 48,79,208,220,216,152,72,152,8,152,8,220,216,79,144,96, + 48,56,224,15,128,6,8,8,6,0,5,112,216,56,216,216, + 236,0,252,9,7,14,11,1,1,25,128,51,0,102,0,204, + 0,102,0,51,0,25,128,9,6,12,11,1,1,255,128,255, + 128,1,128,1,128,1,128,1,128,5,3,3,6,0,4,248, + 248,248,13,13,26,15,1,0,15,128,56,224,96,48,95,144, + 204,216,140,200,143,136,141,136,204,216,94,240,96,48,56,224, + 15,128,6,1,1,6,0,11,252,6,5,5,7,0,8,120, + 204,204,204,120,8,11,11,11,1,0,24,24,24,255,255,24, + 24,24,0,255,255,5,8,8,5,0,5,112,152,24,48,32, + 64,248,240,5,8,8,5,0,5,112,152,24,112,56,24,152, + 112,5,3,3,6,0,10,56,112,192,10,13,26,11,0,252, + 247,128,115,128,115,128,115,128,115,128,115,128,115,128,127,128, + 125,192,96,0,224,0,240,0,96,0,9,17,34,10,0,252, + 63,128,127,128,251,0,251,0,251,0,251,0,123,0,59,0, + 27,0,27,0,27,0,27,0,27,0,27,0,27,0,27,0, + 27,0,3,3,3,5,1,4,224,224,224,5,4,4,6,1, + 252,32,24,152,112,6,8,8,5,0,5,48,240,48,48,48, + 48,48,252,6,8,8,6,0,5,120,204,204,204,204,120,0, + 252,9,7,14,11,1,1,204,0,102,0,51,0,25,128,51, + 0,102,0,204,0,13,13,26,13,0,0,48,96,240,192,48, + 192,49,128,49,128,51,16,51,48,254,112,6,176,13,176,13, + 248,24,48,24,48,13,13,26,13,0,0,48,96,240,192,48, + 192,49,128,49,128,51,112,51,152,254,24,6,48,12,32,12, + 64,24,248,24,240,13,13,26,13,0,0,112,96,152,192,24, + 192,113,128,57,128,27,16,155,48,118,112,6,176,13,176,13, + 248,24,48,24,48,7,13,13,9,1,252,56,56,56,0,16, + 16,48,96,228,238,238,230,124,14,17,34,14,0,0,14,0, + 7,0,1,128,0,0,3,0,3,128,7,128,5,192,13,192, + 8,192,24,224,16,96,31,240,48,112,32,56,96,56,248,252, + 14,17,34,14,0,0,3,128,7,0,12,0,0,0,3,0, + 3,128,7,128,5,192,13,192,8,192,24,224,16,96,31,240, + 48,112,32,56,96,56,248,252,14,17,34,14,0,0,3,0, + 7,128,12,192,0,0,3,0,3,128,7,128,5,192,13,192, + 8,192,24,224,16,96,31,240,48,112,32,56,96,56,248,252, + 14,17,34,14,0,0,6,64,15,192,9,128,0,0,3,0, + 3,128,7,128,5,192,13,192,8,192,24,224,16,96,31,240, + 48,112,32,56,96,56,248,252,14,16,32,14,0,0,12,192, + 12,192,0,0,3,0,3,128,7,128,5,192,13,192,8,192, + 24,224,16,96,31,240,48,112,32,56,96,56,248,252,14,17, + 34,14,0,0,7,0,13,128,13,128,7,0,3,0,3,128, + 7,128,5,192,13,192,8,192,24,224,16,96,31,240,48,112, + 32,56,96,56,248,252,17,13,39,19,0,0,7,255,128,3, + 225,128,2,224,128,6,224,0,4,224,0,12,226,0,8,254, + 0,31,226,0,16,224,0,48,224,0,32,224,128,96,225,128, + 249,255,128,12,17,34,14,1,252,15,144,56,240,112,112,112, + 48,224,0,224,0,224,0,224,0,224,0,112,0,112,48,60, + 224,15,128,4,0,3,0,19,0,14,0,10,17,34,13,2, + 0,56,0,28,0,6,0,0,0,255,192,112,192,112,64,112, + 0,112,0,113,0,127,0,113,0,112,0,112,0,112,64,112, + 192,255,192,10,17,34,13,2,0,14,0,28,0,48,0,0, + 0,255,192,112,192,112,64,112,0,112,0,113,0,127,0,113, + 0,112,0,112,0,112,64,112,192,255,192,10,17,34,13,2, + 0,12,0,30,0,51,0,0,0,255,192,112,192,112,64,112, + 0,112,0,113,0,127,0,113,0,112,0,112,0,112,64,112, + 192,255,192,10,16,32,13,2,0,51,0,51,0,0,0,255, + 192,112,192,112,64,112,0,112,0,113,0,127,0,113,0,112, + 0,112,0,112,64,112,192,255,192,5,17,17,7,1,0,224, + 112,24,0,248,112,112,112,112,112,112,112,112,112,112,112,248, + 5,17,17,7,1,0,56,112,192,0,248,112,112,112,112,112, + 112,112,112,112,112,112,248,6,17,17,7,1,0,48,120,204, + 0,248,112,112,112,112,112,112,112,112,112,112,112,248,6,16, + 16,7,1,0,204,204,0,248,112,112,112,112,112,112,112,112, + 112,112,112,248,13,13,26,14,0,0,127,128,56,224,56,112, + 56,48,56,56,56,56,254,56,56,56,56,56,56,48,56,112, + 56,224,127,128,12,17,34,14,1,0,12,128,31,128,19,0, + 0,0,240,112,120,32,120,32,124,32,94,32,78,32,79,32, + 71,160,67,160,67,224,65,224,64,224,224,224,13,17,34,15, + 1,0,14,0,7,0,1,128,0,0,15,128,56,224,112,112, + 112,112,224,56,224,56,224,56,224,56,224,56,112,112,112,112, + 56,224,15,128,13,17,34,15,1,0,3,128,7,0,12,0, + 0,0,15,128,56,224,112,112,112,112,224,56,224,56,224,56, + 224,56,224,56,112,112,112,112,56,224,15,128,13,17,34,15, + 1,0,6,0,15,0,25,128,0,0,15,128,56,224,112,112, + 112,112,224,56,224,56,224,56,224,56,224,56,112,112,112,112, + 56,224,15,128,13,17,34,15,1,0,12,128,31,128,19,0, + 0,0,15,128,56,224,112,112,112,112,224,56,224,56,224,56, + 224,56,224,56,112,112,112,112,56,224,15,128,13,16,32,15, + 1,0,25,128,25,128,0,0,15,128,56,224,112,112,112,112, + 224,56,224,56,224,56,224,56,224,56,112,112,112,112,56,224, + 15,128,9,8,16,11,1,1,193,128,99,0,54,0,28,0, + 28,0,54,0,99,0,193,128,13,15,30,15,1,255,0,96, + 15,192,56,224,112,176,113,176,225,56,227,56,226,56,230,56, + 228,56,108,112,104,112,56,224,31,128,48,0,12,17,34,14, + 1,0,28,0,14,0,3,0,0,0,248,240,112,32,112,32, + 112,32,112,32,112,32,112,32,112,32,112,32,112,32,112,96, + 56,192,31,128,12,17,34,14,1,0,1,192,3,128,6,0, + 0,0,248,240,112,32,112,32,112,32,112,32,112,32,112,32, + 112,32,112,32,112,32,112,96,56,192,31,128,12,17,34,14, + 1,0,6,0,15,0,25,128,0,0,248,240,112,32,112,32, + 112,32,112,32,112,32,112,32,112,32,112,32,112,32,112,96, + 56,192,31,128,12,16,32,14,1,0,25,128,25,128,0,0, + 248,240,112,32,112,32,112,32,112,32,112,32,112,32,112,32, + 112,32,112,32,112,96,56,192,31,128,13,17,34,14,1,0, + 0,224,1,192,3,0,0,0,252,120,120,48,56,96,60,64, + 30,192,14,128,15,128,7,0,7,0,7,0,7,0,7,0, + 31,192,10,13,26,11,1,0,248,0,112,0,112,0,127,0, + 115,128,113,192,113,192,113,192,115,128,127,0,112,0,112,0, + 248,0,9,13,26,10,0,0,30,0,59,0,115,128,115,128, + 115,128,119,0,114,0,115,0,115,128,115,128,115,128,115,128, + 247,0,8,13,13,9,0,0,112,56,12,0,124,206,206,30, + 110,206,206,254,119,8,13,13,9,0,0,14,28,48,0,124, + 206,206,30,110,206,206,254,119,8,13,13,9,0,0,24,60, + 102,0,124,206,206,30,110,206,206,254,119,8,13,13,9,0, + 0,50,126,76,0,124,206,206,30,110,206,206,254,119,8,12, + 12,9,0,0,102,102,0,124,206,206,30,110,206,206,254,119, + 8,13,13,9,0,0,56,108,108,56,124,206,206,30,110,206, + 206,254,119,12,9,18,13,0,0,125,224,231,176,199,48,15, + 240,127,0,231,0,199,0,239,176,121,224,7,13,13,8,0, + 252,62,118,230,224,224,224,224,118,60,16,12,76,56,7,13, + 13,8,0,0,112,56,12,0,60,118,230,254,224,224,224,118, + 60,8,13,13,8,0,0,7,14,24,0,60,118,230,254,224, + 224,224,118,60,7,13,13,8,0,0,24,60,102,0,60,118, + 230,254,224,224,224,118,60,7,12,12,8,0,0,102,102,0, + 60,118,230,254,224,224,224,118,60,5,13,13,5,0,0,224, + 112,24,0,240,112,112,112,112,112,112,112,248,5,13,13,5, + 0,0,56,112,192,0,240,112,112,112,112,112,112,112,248,6, + 13,13,5,0,0,48,120,204,0,240,112,112,112,112,112,112, + 112,248,6,12,12,5,0,0,204,204,0,240,112,112,112,112, + 112,112,112,248,8,13,13,9,0,0,96,54,56,76,62,102, + 231,231,231,231,231,102,60,10,13,26,11,0,0,25,0,63, + 0,38,0,0,0,231,0,127,128,115,128,115,128,115,128,115, + 128,115,128,115,128,251,192,8,13,13,9,0,0,112,56,12, + 0,60,102,231,231,231,231,231,102,60,8,13,13,9,0,0, + 7,14,24,0,60,102,231,231,231,231,231,102,60,8,13,13, + 9,0,0,24,60,102,0,60,102,231,231,231,231,231,102,60, + 8,13,13,9,0,0,50,126,76,0,60,102,231,231,231,231, + 231,102,60,8,12,12,9,0,0,102,102,0,60,102,231,231, + 231,231,231,102,60,8,8,8,11,1,1,24,24,0,255,255, + 0,24,24,10,11,22,9,255,255,0,64,30,128,51,0,115, + 128,115,128,119,128,123,128,113,128,51,0,94,0,128,0,10, + 13,26,11,0,0,56,0,28,0,6,0,0,0,247,128,115, + 128,115,128,115,128,115,128,115,128,115,128,127,128,61,192,10, + 13,26,11,0,0,14,0,28,0,48,0,0,0,247,128,115, + 128,115,128,115,128,115,128,115,128,115,128,127,128,61,192,10, + 13,26,11,0,0,12,0,30,0,51,0,0,0,247,128,115, + 128,115,128,115,128,115,128,115,128,115,128,127,128,61,192,10, + 12,24,11,0,0,51,0,51,0,0,0,247,128,115,128,115, + 128,115,128,115,128,115,128,115,128,127,128,61,192,10,17,34, + 9,255,252,3,128,7,0,12,0,0,0,251,192,113,128,121, + 0,59,0,58,0,30,0,30,0,12,0,12,0,12,0,8, + 0,216,0,240,0,9,17,34,10,0,252,240,0,112,0,112, + 0,112,0,118,0,127,0,115,128,115,128,115,128,115,128,115, + 128,123,0,118,0,112,0,112,0,112,0,248,0,10,16,32, + 9,255,252,51,0,51,0,0,0,251,192,113,128,121,0,59, + 0,58,0,30,0,30,0,12,0,12,0,12,0,8,0,216, + 0,240,0}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--20-140-100-100-P-100-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w=18 h=17 x= 2 y=10 dx=19 dy= 0 ascent=14 len=39 + Font Bounding box w=22 h=28 x=-2 y=-7 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =14 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB14r[2295] U8G_SECTION(".progmem.u8g_font_timB14r") = { + 0,22,28,254,249,13,2,178,6,78,32,127,252,14,252,13, + 252,0,0,0,5,0,1,3,13,13,6,1,0,64,224,224, + 224,224,224,224,64,64,0,224,224,224,6,6,6,10,2,7, + 204,204,204,204,136,136,10,12,24,9,0,0,25,128,25,128, + 25,128,127,192,127,192,51,0,51,0,255,128,255,128,102,0, + 102,0,102,0,8,16,16,9,0,254,24,126,219,219,216,248, + 124,62,31,31,27,219,219,126,24,24,14,13,26,18,1,0, + 60,24,119,240,226,96,226,64,228,192,253,128,115,120,6,236, + 6,196,13,196,25,200,49,248,48,224,13,13,26,16,2,0, + 30,0,51,0,51,0,51,0,58,0,28,240,60,96,94,64, + 207,128,199,128,227,192,255,248,120,240,2,6,6,5,1,7, + 192,192,192,192,128,128,5,17,17,6,1,252,8,16,48,96, + 96,224,192,192,192,192,192,224,96,96,48,16,8,5,17,17, + 6,0,252,128,64,96,48,48,56,24,24,24,24,24,56,48, + 32,96,64,128,8,9,9,9,0,4,24,24,219,255,60,255, + 219,24,24,10,10,20,11,0,0,12,0,12,0,12,0,12, + 0,255,192,255,192,12,0,12,0,12,0,12,0,4,6,6, + 5,0,253,112,112,112,48,96,192,5,3,3,6,0,4,248, + 248,248,3,3,3,5,1,0,224,224,224,5,13,13,6,0, + 0,24,24,24,48,48,48,32,96,96,96,192,192,192,8,13, + 13,9,0,0,60,102,103,231,231,231,231,231,231,231,102,102, + 60,8,13,13,9,0,0,28,60,252,28,28,28,28,28,28, + 28,28,28,127,8,13,13,9,0,0,60,126,207,135,7,7, + 6,12,24,49,99,255,255,9,13,26,9,0,0,60,0,126, + 0,143,0,7,0,14,0,28,0,62,0,15,0,7,128,3, + 128,195,0,230,0,124,0,8,13,13,9,0,0,14,30,30, + 46,46,78,206,142,255,255,14,14,14,9,13,26,9,0,0, + 63,0,63,0,62,0,64,0,120,0,126,0,63,0,7,128, + 3,128,3,128,195,0,230,0,252,0,8,13,13,9,0,0, + 7,28,56,112,96,252,230,231,231,231,231,102,60,8,13,13, + 9,0,0,255,255,254,134,12,12,12,24,24,56,48,48,112, + 8,13,13,9,0,0,60,102,227,227,246,124,60,126,207,199, + 195,231,126,8,13,13,9,0,0,60,102,231,231,231,231,103, + 63,7,6,14,60,240,3,9,9,5,1,0,224,224,224,0, + 0,0,224,224,224,4,12,12,5,0,253,112,112,112,0,0, + 0,112,112,112,48,96,192,9,9,18,11,1,0,3,128,15, + 0,60,0,240,0,192,0,240,0,60,0,15,0,3,128,9, + 6,12,11,1,2,255,128,255,128,0,0,0,0,255,128,255, + 128,9,9,18,11,1,0,224,0,120,0,30,0,7,128,1, + 128,7,128,30,0,120,0,224,0,7,13,13,9,1,0,124, + 206,238,238,78,12,24,16,16,0,56,56,56,15,16,32,17, + 1,253,3,224,15,56,56,12,48,4,115,182,103,118,231,118, + 238,102,238,102,238,236,239,252,103,184,112,0,56,0,30,0, + 7,240,14,13,26,14,0,0,3,0,3,128,7,128,5,192, + 13,192,8,192,24,224,16,96,31,240,48,112,32,56,96,56, + 248,252,10,13,26,13,1,0,254,0,115,128,113,192,113,192, + 113,192,115,128,126,0,115,128,113,192,113,192,113,192,115,128, + 255,0,12,13,26,14,1,0,15,144,56,240,112,112,112,48, + 224,0,224,0,224,0,224,0,224,0,112,0,112,48,60,224, + 15,128,12,13,26,14,1,0,255,0,113,192,112,224,112,96, + 112,112,112,112,112,112,112,112,112,112,112,96,112,224,113,192, + 255,0,10,13,26,13,2,0,255,192,112,192,112,64,112,0, + 112,0,113,0,127,0,113,0,112,0,112,0,112,64,112,192, + 255,192,10,13,26,12,2,0,255,192,112,192,112,64,112,0, + 112,0,113,0,127,0,113,0,112,0,112,0,112,0,112,0, + 248,0,13,13,26,15,1,0,15,144,56,240,112,112,112,48, + 224,0,224,0,224,248,224,112,224,112,112,112,112,112,56,240, + 15,192,13,13,26,15,1,0,248,248,112,112,112,112,112,112, + 112,112,112,112,127,240,112,112,112,112,112,112,112,112,112,112, + 249,248,5,13,13,7,1,0,248,112,112,112,112,112,112,112, + 112,112,112,112,248,8,15,15,9,0,254,31,14,14,14,14, + 14,14,14,14,14,14,14,238,236,120,12,13,26,15,2,0, + 249,240,112,192,113,128,115,0,118,0,124,0,124,0,126,0, + 119,0,119,128,115,192,113,224,248,240,10,13,26,13,2,0, + 248,0,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,112,0,112,64,112,192,255,192,15,13,26,18,2,0, + 240,30,112,28,120,60,120,60,124,92,92,92,94,220,78,156, + 79,156,71,28,71,28,67,28,226,62,12,13,26,14,1,0, + 240,112,120,32,120,32,124,32,94,32,78,32,79,32,71,160, + 67,160,67,224,65,224,64,224,224,224,13,13,26,15,1,0, + 15,128,56,224,112,112,112,112,224,56,224,56,224,56,224,56, + 224,56,112,112,112,112,56,224,15,128,10,13,26,12,1,0, + 255,0,115,128,113,192,113,192,113,192,115,128,127,0,112,0, + 112,0,112,0,112,0,112,0,248,0,13,17,34,15,1,252, + 15,128,56,224,112,112,112,112,224,56,224,56,224,56,224,56, + 224,56,112,112,112,112,56,224,15,128,15,0,7,128,3,224, + 0,248,12,13,26,14,1,0,255,0,115,128,113,192,113,192, + 113,192,115,128,127,0,119,0,115,128,113,192,113,192,112,224, + 248,240,9,13,26,11,1,0,30,128,99,128,225,128,224,0, + 248,0,124,0,63,0,15,128,7,128,3,128,195,128,231,0, + 188,0,11,13,26,13,1,0,255,224,206,96,142,32,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 31,0,12,13,26,14,1,0,248,240,112,32,112,32,112,32, + 112,32,112,32,112,32,112,32,112,32,112,32,112,96,56,192, + 31,128,14,13,26,14,0,0,252,124,120,24,56,16,60,48, + 28,32,30,96,30,64,14,192,15,128,7,128,7,0,3,0, + 2,0,18,13,39,19,1,0,253,247,192,121,225,128,56,225, + 0,60,227,0,60,226,0,28,114,0,30,118,0,14,116,0, + 14,188,0,15,60,0,7,60,0,6,24,0,6,24,0,14, + 13,26,14,0,0,248,120,120,48,60,96,28,192,15,128,7, + 0,7,128,7,192,13,192,24,224,48,112,96,120,240,252,13, + 13,26,14,1,0,252,120,120,48,56,96,60,64,30,192,14, + 128,15,128,7,0,7,0,7,0,7,0,7,0,31,192,10, + 13,26,13,2,0,255,192,195,192,131,128,7,128,15,0,14, + 0,30,0,60,0,56,0,120,0,240,64,224,192,255,192,4, + 16,16,6,1,253,240,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,240,5,13,13,5,0,0,192,192,192,96,96, + 96,32,48,48,48,24,24,24,4,16,16,6,1,253,240,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,240,8,7, + 7,11,1,6,24,24,60,36,102,195,195,9,2,4,9,0, + 252,255,128,255,128,5,3,3,6,0,10,224,112,24,8,9, + 9,9,0,0,124,206,206,30,110,206,206,254,119,9,13,26, + 9,255,0,240,0,112,0,112,0,112,0,118,0,127,0,115, + 128,115,128,115,128,115,128,115,128,115,0,110,0,7,9,9, + 8,0,0,62,118,230,224,224,224,224,118,60,9,13,26,10, + 0,0,15,0,7,0,7,0,7,0,55,0,127,0,231,0, + 231,0,231,0,231,0,231,0,119,0,59,128,7,9,9,8, + 0,0,60,118,230,254,224,224,224,118,60,7,13,13,6,0, + 0,62,118,118,112,252,112,112,112,112,112,112,112,248,9,13, + 26,9,0,252,63,128,231,0,231,0,231,0,230,0,120,0, + 96,0,254,0,255,128,227,128,193,128,227,0,126,0,10,13, + 26,11,0,0,240,0,112,0,112,0,112,0,119,0,127,128, + 115,128,115,128,115,128,115,128,115,128,115,128,251,192,5,13, + 13,5,0,0,96,96,96,0,240,112,112,112,112,112,112,112, + 248,6,17,17,5,254,252,24,24,24,0,60,28,28,28,28, + 28,28,28,28,28,220,216,112,10,13,26,10,0,0,240,0, + 112,0,112,0,112,0,115,128,115,0,118,0,124,0,124,0, + 126,0,119,0,115,128,247,192,5,13,13,6,0,0,240,112, + 112,112,112,112,112,112,112,112,112,112,248,15,9,18,16,0, + 0,247,56,123,220,115,156,115,156,115,156,115,156,115,156,115, + 156,251,222,10,9,18,11,0,0,231,0,127,128,115,128,115, + 128,115,128,115,128,115,128,115,128,251,192,8,9,9,9,0, + 0,60,102,231,231,231,231,231,102,60,9,13,26,10,0,252, + 230,0,127,0,115,128,115,128,115,128,115,128,115,128,123,0, + 118,0,112,0,112,0,112,0,248,0,9,13,26,9,0,252, + 57,0,119,0,231,0,231,0,231,0,231,0,231,0,127,0, + 55,0,7,0,7,0,7,0,15,128,7,9,9,8,0,0, + 238,118,112,112,112,112,112,112,248,6,9,9,7,0,0,124, + 204,228,240,120,60,156,204,248,6,11,11,7,0,0,16,48, + 252,112,112,112,112,112,112,116,56,10,9,18,11,0,0,247, + 128,115,128,115,128,115,128,115,128,115,128,115,128,127,128,61, + 192,10,9,18,9,255,0,251,192,113,128,121,0,59,0,59, + 0,30,0,30,0,12,0,12,0,14,9,18,12,255,0,247, + 156,119,24,115,144,59,176,57,160,29,224,31,224,12,192,12, + 192,9,9,18,9,0,0,243,128,115,0,122,0,60,0,28, + 0,30,0,55,0,103,128,227,128,10,13,26,9,255,252,251, + 192,113,128,121,0,59,0,58,0,30,0,30,0,12,0,12, + 0,12,0,200,0,216,0,240,0,7,9,9,8,0,0,254, + 206,142,28,56,112,114,230,254,7,17,17,8,0,252,30,56, + 48,48,48,48,48,96,192,96,48,48,48,48,48,56,30,2, + 16,16,4,1,253,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,7,17,17,8,1,252,240,56,24,24,24, + 24,24,12,6,12,24,24,24,24,24,56,240,8,4,4,10, + 1,3,112,249,159,14,255}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--25-180-100-100-P-132-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=24 h=23 x= 3 y=14 dx=25 dy= 0 ascent=23 len=69 + Font Bounding box w=27 h=38 x=-2 y=-10 + Calculated Min Values x=-1 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =23 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB18[7223] U8G_SECTION(".progmem.u8g_font_timB18") = { + 0,27,38,254,246,17,4,47,9,109,32,255,251,23,250,17, + 251,0,0,0,6,0,1,4,17,17,8,2,0,96,240,240, + 240,240,240,96,96,96,96,96,0,0,96,240,240,96,8,8, + 8,12,2,9,231,231,231,231,231,231,66,66,12,17,34,13, + 0,0,12,192,12,192,12,192,12,192,127,240,127,240,25,128, + 25,128,25,128,25,128,255,224,255,224,51,0,51,0,51,0, + 51,0,51,0,10,20,40,12,1,254,8,0,8,0,63,0, + 107,128,233,128,233,128,248,128,124,0,126,0,63,0,31,128, + 15,128,11,192,137,192,201,192,201,128,235,128,62,0,8,0, + 8,0,17,17,51,19,1,0,30,12,0,59,252,0,113,24, + 0,225,48,0,226,48,0,226,96,0,244,96,0,120,192,0, + 0,192,0,1,143,0,1,157,128,3,56,128,3,112,128,6, + 113,0,6,113,0,12,122,0,12,60,0,17,17,51,21,1, + 0,3,224,0,6,112,0,14,48,0,14,48,0,14,112,0, + 7,224,0,15,15,128,31,135,0,51,194,0,97,230,0,225, + 252,0,224,248,0,224,120,0,240,124,0,248,255,128,127,159, + 0,63,14,0,3,8,8,7,2,9,224,224,224,224,224,224, + 64,64,5,21,21,8,1,252,8,24,48,48,112,96,96,224, + 224,224,224,224,224,224,96,96,112,48,48,24,8,5,21,21, + 8,1,252,128,192,96,96,48,48,48,56,56,56,56,56,56, + 56,48,48,48,96,96,192,128,10,11,22,13,1,6,12,0, + 12,0,76,128,237,192,127,128,30,0,127,128,237,192,76,128, + 12,0,12,0,12,12,24,14,1,0,6,0,6,0,6,0, + 6,0,6,0,255,240,255,240,6,0,6,0,6,0,6,0, + 6,0,4,9,9,6,1,251,96,240,240,112,48,96,96,192, + 128,6,3,3,8,1,5,252,252,252,4,4,4,6,1,0, + 96,240,240,96,7,17,17,7,0,0,6,6,4,12,12,8, + 24,24,16,48,48,32,96,96,64,192,192,11,17,34,12,0, + 0,14,0,59,128,49,128,113,192,113,192,241,224,241,224,241, + 224,241,224,241,224,241,224,113,192,113,192,113,192,49,128,59, + 128,14,0,9,17,34,12,2,0,12,0,60,0,252,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,62,0,255,128,10,17,34,12,1, + 0,30,0,63,0,127,128,199,128,131,128,3,128,3,128,3, + 0,7,0,6,0,12,0,12,0,24,64,48,64,127,192,255, + 192,255,128,11,17,34,12,0,0,15,0,63,128,99,192,65, + 192,1,192,3,128,7,0,31,0,7,192,1,224,1,224,0, + 224,0,224,96,224,241,192,251,128,126,0,11,17,34,12,0, + 0,1,128,3,128,7,128,7,128,15,128,27,128,51,128,51, + 128,99,128,195,128,255,224,255,224,255,224,3,128,3,128,3, + 128,3,128,11,17,34,12,0,0,31,224,31,192,63,192,48, + 0,32,0,112,0,127,0,127,128,127,192,7,192,1,192,0, + 192,0,192,96,192,241,128,251,128,126,0,11,17,34,12,1, + 0,1,224,7,128,30,0,60,0,56,0,120,0,119,0,123, + 128,241,192,241,224,241,224,241,224,241,224,113,192,113,192,59, + 128,30,0,11,17,34,12,0,0,63,224,127,224,127,192,192, + 192,129,128,1,128,3,128,3,0,3,0,7,0,6,0,6, + 0,14,0,14,0,12,0,28,0,28,0,11,17,34,12,0, + 0,31,0,59,128,113,192,113,192,113,192,121,128,59,0,63, + 0,31,128,55,192,99,192,225,224,225,224,225,224,241,192,123, + 128,62,0,11,17,34,12,0,0,14,0,59,128,113,192,113, + 192,241,224,241,224,241,224,241,224,113,224,59,192,31,192,3, + 192,3,128,7,128,15,0,60,0,240,0,4,12,12,8,2, + 0,96,240,240,96,0,0,0,0,96,240,240,96,4,17,17, + 8,2,251,96,240,240,96,0,0,0,0,96,240,240,112,48, + 96,96,192,128,11,12,24,14,1,0,0,96,1,224,7,192, + 31,0,60,0,224,0,224,0,60,0,31,0,7,192,1,224, + 0,96,11,6,12,14,1,3,255,224,255,224,0,0,0,0, + 255,224,255,224,11,12,24,14,1,0,192,0,240,0,124,0, + 31,0,7,128,0,224,0,224,7,128,31,0,124,0,240,0, + 192,0,9,17,34,12,1,0,62,0,111,0,231,128,231,128, + 71,128,7,128,15,0,14,0,28,0,24,0,24,0,0,0, + 0,0,24,0,60,0,60,0,24,0,20,21,63,23,1,252, + 0,124,0,3,247,128,15,128,192,30,0,96,60,0,32,56, + 59,48,112,255,16,113,231,16,241,199,16,227,198,16,227,142, + 16,227,142,48,227,142,32,243,158,96,241,254,192,112,243,128, + 120,0,0,56,0,0,30,0,0,7,131,0,1,252,0,17, + 17,51,18,0,0,1,128,0,1,192,0,3,192,0,3,224, + 0,3,224,0,6,224,0,6,240,0,4,112,0,12,112,0, + 8,120,0,8,56,0,31,248,0,16,60,0,48,60,0,48, + 30,0,112,30,0,248,127,128,14,17,34,16,0,0,255,192, + 60,240,60,120,60,120,60,120,60,120,60,112,60,192,63,224, + 60,120,60,60,60,60,60,60,60,60,60,56,60,120,255,224, + 15,17,34,18,1,0,3,242,30,62,60,14,120,6,120,2, + 240,2,240,0,240,0,240,0,240,0,240,0,240,0,120,0, + 120,2,60,14,31,60,7,240,16,17,34,18,1,0,255,224, + 60,120,60,60,60,30,60,30,60,15,60,15,60,15,60,15, + 60,15,60,15,60,14,60,30,60,28,60,60,60,120,255,224, + 15,17,34,17,1,0,255,252,60,28,60,12,60,4,60,4, + 60,32,60,32,60,96,63,224,60,96,60,32,60,32,60,2, + 60,2,60,6,60,14,255,254,14,17,34,15,0,0,255,252, + 60,28,60,12,60,4,60,4,60,32,60,32,60,96,63,224, + 60,96,60,32,60,32,60,0,60,0,60,0,60,0,255,0, + 17,17,51,19,1,0,3,242,0,30,62,0,60,14,0,120, + 6,0,120,2,0,240,2,0,240,0,0,240,0,0,240,0, + 0,240,127,128,240,30,0,240,30,0,120,30,0,120,30,0, + 56,30,0,30,30,0,7,248,0,18,17,51,19,0,0,255, + 63,192,60,15,0,60,15,0,60,15,0,60,15,0,60,15, + 0,60,15,0,60,15,0,63,255,0,60,15,0,60,15,0, + 60,15,0,60,15,0,60,15,0,60,15,0,60,15,0,255, + 63,192,8,17,17,10,0,0,255,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,60,255,11,19,38,12,0,254,31, + 224,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,231,128,231,128,231, + 0,231,0,60,0,18,17,51,19,0,0,255,63,128,60,30, + 0,60,24,0,60,48,0,60,96,0,60,192,0,61,128,0, + 63,192,0,63,192,0,61,224,0,60,240,0,60,248,0,60, + 124,0,60,62,0,60,31,0,60,15,128,255,31,192,15,17, + 34,16,0,0,255,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,2,60,6, + 60,12,60,28,255,252,21,17,51,24,1,0,252,1,248,60, + 3,224,62,3,224,62,7,224,47,5,224,47,13,224,39,9, + 224,39,137,224,39,153,224,35,145,224,35,241,224,35,241,224, + 33,225,224,33,225,224,32,193,224,32,193,224,248,7,248,17, + 17,51,18,0,0,248,15,128,124,7,0,62,2,0,63,2, + 0,63,130,0,47,194,0,39,226,0,35,226,0,33,242,0, + 32,250,0,32,126,0,32,62,0,32,30,0,32,30,0,32, + 14,0,96,6,0,248,2,0,16,17,34,19,1,0,7,224, + 28,56,56,28,120,30,112,14,240,15,240,15,240,15,240,15, + 240,15,240,15,240,15,112,14,120,30,56,28,28,56,7,224, + 14,17,34,15,0,0,255,224,60,120,60,60,60,60,60,60, + 60,60,60,60,60,120,63,224,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,255,0,17,22,66,19,1,251,7,224, + 0,28,56,0,56,28,0,120,30,0,112,14,0,240,15,0, + 240,15,0,240,15,0,240,15,0,240,15,0,240,15,0,240, + 15,0,240,14,0,120,30,0,120,28,0,60,56,0,31,224, + 0,7,192,0,1,224,0,1,240,0,0,252,0,0,63,128, + 16,17,34,18,1,0,255,224,60,120,60,56,60,60,60,60, + 60,60,60,56,60,112,63,192,61,224,60,240,60,240,60,120, + 60,124,60,60,60,30,255,31,12,17,34,14,1,0,63,160, + 113,224,224,224,224,96,224,32,248,0,126,0,127,128,63,192, + 15,224,7,224,129,240,128,240,192,240,224,224,249,224,191,128, + 14,17,34,16,1,0,255,252,231,156,199,140,135,132,135,132, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,31,224,17,17,51,18,0,0,255,15, + 128,126,7,0,60,2,0,60,2,0,60,2,0,60,2,0, + 60,2,0,60,2,0,60,2,0,60,2,0,60,2,0,60, + 2,0,60,2,0,60,6,0,30,4,0,31,12,0,7,248, + 0,17,17,51,18,0,0,255,31,128,60,6,0,60,4,0, + 30,4,0,30,12,0,15,8,0,15,24,0,15,24,0,7, + 144,0,7,176,0,3,224,0,3,224,0,3,224,0,1,192, + 0,1,192,0,0,128,0,0,128,0,24,17,51,25,0,0, + 255,127,159,60,30,6,60,30,4,30,15,12,30,31,8,30, + 31,24,15,23,152,15,55,144,15,39,176,7,227,176,7,195, + 224,7,195,224,3,193,224,3,129,192,3,129,192,1,0,128, + 1,0,128,16,17,34,18,1,0,255,63,62,12,30,8,31, + 24,15,48,15,160,7,224,3,192,3,224,3,224,3,240,6, + 240,12,120,8,124,24,60,56,62,252,255,18,17,51,18,0, + 0,255,143,192,62,3,0,30,2,0,15,6,0,15,12,0, + 7,140,0,7,152,0,3,208,0,3,240,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224, + 0,7,248,0,14,17,34,17,1,0,255,248,224,248,193,240, + 193,240,131,224,3,192,7,192,7,128,15,128,15,0,30,0, + 62,4,60,4,124,12,120,28,248,60,255,248,5,21,21,8, + 1,252,248,224,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,224,248,7,17,17,7,0,0,192,192,64, + 96,96,32,48,48,16,24,24,8,12,12,4,6,6,5,21, + 21,8,1,252,248,56,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,56,248,8,10,10,15,3,7,24, + 24,60,36,102,102,102,195,195,129,12,2,4,12,0,251,255, + 240,255,240,5,4,4,8,1,13,224,112,48,24,10,12,24, + 12,1,0,62,0,119,0,227,128,227,128,67,128,15,128,115, + 128,227,128,227,128,231,128,255,192,113,128,11,17,34,13,1, + 0,240,0,112,0,112,0,112,0,112,0,119,0,127,192,113, + 192,112,224,112,224,112,224,112,224,112,224,112,224,113,192,123, + 192,103,0,9,12,24,11,1,0,30,0,115,0,115,128,227, + 128,225,0,224,0,224,0,224,0,240,0,120,128,127,0,30, + 0,12,17,34,14,1,0,1,224,0,224,0,224,0,224,0, + 224,30,224,127,224,113,224,224,224,224,224,224,224,224,224,224, + 224,240,224,113,224,126,224,28,112,9,12,24,11,1,0,30, + 0,115,0,115,128,227,128,227,128,255,128,224,0,224,0,240, + 0,120,128,127,0,30,0,8,17,17,8,1,0,30,51,115, + 112,112,252,112,112,112,112,112,112,112,112,112,112,248,10,17, + 34,12,1,251,62,192,119,192,227,128,227,128,227,128,227,128, + 115,0,62,0,96,0,224,0,255,128,255,192,127,192,193,192, + 192,192,225,128,127,0,12,17,34,14,1,0,240,0,112,0, + 112,0,112,0,112,0,115,192,127,224,120,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,249,240,5,17, + 17,7,1,0,112,112,112,0,0,240,112,112,112,112,112,112, + 112,112,112,112,248,7,22,22,8,255,251,14,14,14,0,0, + 30,14,14,14,14,14,14,14,14,14,14,14,14,206,206,204, + 120,13,17,34,15,1,0,240,0,112,0,112,0,112,0,112, + 0,115,240,112,192,113,128,115,0,118,0,126,0,127,0,119, + 128,115,192,113,224,112,240,251,248,5,17,17,7,1,0,240, + 112,112,112,112,112,112,112,112,112,112,112,112,112,112,112,248, + 19,12,36,21,1,0,243,199,128,119,223,192,120,241,192,112, + 225,192,112,225,192,112,225,192,112,225,192,112,225,192,112,225, + 192,112,225,192,112,225,192,249,243,224,12,12,24,14,1,0, + 243,192,119,224,120,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,112,224,249,240,11,12,24,13,1,0,31,0, + 113,192,113,192,224,224,224,224,224,224,224,224,224,224,224,224, + 113,192,113,192,31,0,12,17,34,14,1,251,227,192,119,224, + 120,224,112,112,112,112,112,112,112,112,112,112,112,112,120,224, + 119,224,115,128,112,0,112,0,112,0,112,0,252,0,12,17, + 34,14,1,251,14,96,63,224,113,224,112,224,224,224,224,224, + 224,224,224,224,224,224,113,224,126,224,28,224,0,224,0,224, + 0,224,0,224,1,240,9,12,24,11,1,0,239,0,127,128, + 115,128,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,248,0,8,12,12,10,1,0,62,102,226,224,248,124, + 62,31,135,135,198,252,8,16,16,8,0,0,8,24,56,120, + 255,56,56,56,56,56,56,56,56,57,62,28,12,12,24,14, + 1,0,241,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,113,224,126,240,60,224,12,12,24,12,0,0, + 252,240,112,96,120,64,56,192,56,128,28,128,29,128,31,0, + 15,0,15,0,6,0,6,0,17,12,36,18,0,0,253,247, + 128,120,227,0,56,227,0,56,226,0,60,230,0,29,118,0, + 29,116,0,31,60,0,14,56,0,14,56,0,4,16,0,4, + 16,0,12,12,24,12,0,0,252,240,120,96,60,192,29,128, + 31,0,15,0,15,0,31,128,27,192,49,192,97,224,243,240, + 12,17,34,12,0,251,253,240,120,96,56,64,56,192,60,128, + 28,128,29,128,31,0,15,0,15,0,6,0,6,0,6,0, + 100,0,236,0,248,0,112,0,9,12,24,11,1,0,255,128, + 199,0,143,0,142,0,30,0,28,0,60,0,56,0,120,128, + 113,128,241,128,255,128,7,21,21,10,1,252,14,24,48,48, + 48,48,48,48,48,96,192,96,48,48,48,48,48,48,48,24, + 14,2,22,22,6,2,251,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,7,21,21, + 10,1,252,224,48,24,24,24,24,24,24,24,12,6,12,24, + 24,24,24,24,24,24,48,224,12,6,12,13,0,6,24,0, + 126,16,255,16,143,240,135,224,1,128,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,0,0,0,6,0, + 1,4,17,17,8,2,251,96,240,240,96,0,0,96,96,96, + 96,96,240,240,240,240,240,96,10,18,36,13,1,253,0,128, + 1,128,1,0,31,128,115,192,115,192,230,128,228,0,228,0, + 236,0,232,0,248,0,120,128,127,128,62,0,48,0,96,0, + 96,0,11,17,34,13,0,0,15,192,30,96,60,224,60,224, + 60,64,28,0,28,0,255,128,255,128,28,0,28,0,28,0, + 12,32,124,96,207,224,255,224,115,192,11,12,24,13,0,3, + 192,96,238,224,127,192,59,128,113,192,96,192,96,192,113,192, + 59,128,127,192,238,224,192,96,14,17,34,13,0,0,254,124, + 56,48,60,32,28,96,30,64,14,192,15,128,7,128,7,0, + 31,192,7,0,31,192,7,0,7,0,7,0,7,0,31,192, + 2,22,22,6,2,251,192,192,192,192,192,192,192,192,192,0, + 0,0,0,192,192,192,192,192,192,192,192,192,7,20,20,11, + 2,253,60,110,206,198,224,112,120,92,142,134,194,226,116,60, + 28,14,198,230,236,120,6,2,2,8,1,14,204,204,17,17, + 51,19,1,0,3,224,0,15,248,0,60,30,0,48,6,0, + 97,243,0,99,51,0,198,17,128,198,1,128,198,1,128,198, + 1,128,198,1,128,99,51,0,97,227,0,48,6,0,60,30, + 0,15,248,0,3,224,0,7,10,10,8,0,7,120,220,12, + 124,236,204,126,0,254,254,11,10,20,13,1,1,12,96,24, + 192,49,128,115,128,231,0,231,0,115,128,49,128,24,192,12, + 96,11,7,14,15,2,2,255,224,255,224,0,96,0,96,0, + 96,0,96,0,96,6,3,3,8,1,5,252,252,252,17,17, + 51,19,1,0,3,224,0,15,248,0,60,30,0,48,6,0, + 103,227,0,99,51,0,195,49,128,195,49,128,195,225,128,195, + 97,128,195,49,128,99,51,0,103,187,0,48,6,0,60,30, + 0,15,248,0,3,224,0,6,1,1,8,1,14,252,8,7, + 7,9,0,10,60,102,195,195,195,102,60,12,13,26,14,1, + 0,6,0,6,0,6,0,6,0,255,240,255,240,6,0,6, + 0,6,0,6,0,0,0,255,240,255,240,6,10,10,7,0, + 7,56,124,140,12,24,16,32,64,252,252,6,10,10,7,0, + 7,56,124,140,12,56,28,12,140,248,112,5,4,4,8,2, + 13,56,112,96,192,12,17,34,14,1,251,241,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,224,113,224,126, + 240,108,224,96,0,96,0,224,0,240,0,96,0,11,22,44, + 14,1,251,31,224,127,224,126,64,254,64,254,64,254,64,254, + 64,254,64,254,64,126,64,126,64,30,64,2,64,2,64,2, + 64,2,64,2,64,2,64,2,64,2,64,2,64,2,64,3, + 3,3,6,1,6,224,224,224,6,6,6,8,1,250,16,48, + 56,12,140,120,6,10,10,7,0,7,48,240,48,48,48,48, + 48,48,48,252,7,10,10,8,0,7,56,108,198,198,198,108, + 56,0,254,254,11,10,20,13,1,1,198,0,99,0,49,128, + 57,192,28,224,28,224,57,192,51,128,99,0,198,0,17,17, + 51,18,0,0,48,4,0,240,12,0,48,24,0,48,24,0, + 48,48,0,48,32,0,48,96,0,48,66,0,48,198,0,252, + 142,0,1,142,0,1,22,0,3,54,0,6,38,0,6,127, + 128,12,6,0,8,6,0,17,17,51,18,0,0,48,4,0, + 240,12,0,48,24,0,48,24,0,48,48,0,48,32,0,48, + 96,0,48,71,0,48,207,128,252,145,128,1,129,128,1,3, + 0,3,2,0,6,4,0,6,8,0,12,31,128,8,31,128, + 17,17,51,18,1,0,56,4,0,124,12,0,140,24,0,12, + 24,0,56,48,0,28,32,0,12,96,0,140,66,0,248,198, + 0,113,14,0,3,14,0,2,22,0,6,54,0,12,38,0, + 12,127,128,24,6,0,16,6,0,9,17,34,12,1,251,12, + 0,30,0,30,0,12,0,0,0,0,0,12,0,12,0,28, + 0,56,0,120,0,240,0,241,0,243,128,243,128,123,0,62, + 0,17,22,66,18,0,0,3,128,0,1,192,0,0,192,0, + 0,96,0,0,0,0,1,128,0,1,192,0,3,192,0,3, + 224,0,3,224,0,6,224,0,6,240,0,4,112,0,12,112, + 0,8,120,0,8,56,0,31,248,0,16,60,0,48,60,0, + 48,30,0,112,30,0,248,127,128,17,22,66,18,0,0,0, + 224,0,1,192,0,1,128,0,3,0,0,0,0,0,1,128, + 0,1,192,0,3,192,0,3,224,0,3,224,0,6,224,0, + 6,240,0,4,112,0,12,112,0,8,120,0,8,56,0,31, + 248,0,16,60,0,48,60,0,48,30,0,112,30,0,248,127, + 128,17,22,66,18,0,0,1,128,0,3,192,0,6,96,0, + 0,0,0,0,0,0,1,128,0,1,192,0,3,192,0,3, + 224,0,3,224,0,6,224,0,6,240,0,4,112,0,12,112, + 0,8,120,0,8,56,0,31,248,0,16,60,0,48,60,0, + 48,30,0,112,30,0,248,127,128,17,21,63,18,0,0,3, + 16,0,7,224,0,8,192,0,0,0,0,1,128,0,1,192, + 0,3,192,0,3,224,0,3,224,0,6,224,0,6,240,0, + 4,112,0,12,112,0,8,120,0,8,56,0,31,248,0,16, + 60,0,48,60,0,48,30,0,112,30,0,248,127,128,17,21, + 63,18,0,0,6,96,0,6,96,0,0,0,0,0,0,0, + 1,128,0,1,192,0,3,192,0,3,224,0,3,224,0,6, + 224,0,6,240,0,4,112,0,12,112,0,8,120,0,8,56, + 0,31,248,0,16,60,0,48,60,0,48,30,0,112,30,0, + 248,127,128,17,23,69,18,0,0,1,128,0,3,192,0,6, + 96,0,6,96,0,3,192,0,1,128,0,1,128,0,1,192, + 0,3,192,0,3,224,0,3,224,0,6,224,0,6,240,0, + 4,112,0,12,112,0,8,120,0,8,56,0,31,248,0,16, + 60,0,48,60,0,48,30,0,112,30,0,248,127,128,23,17, + 51,25,0,0,1,255,252,0,124,28,0,252,12,0,188,4, + 1,188,4,1,60,32,3,60,32,2,60,96,6,63,224,7, + 252,96,12,60,32,8,60,32,24,60,2,16,60,2,48,60, + 6,112,60,14,248,255,254,15,23,46,18,1,250,3,242,30, + 62,60,14,120,6,120,2,240,2,240,0,240,0,240,0,240, + 0,240,0,240,0,120,0,120,2,60,14,31,60,7,240,1, + 0,3,0,3,128,0,192,8,192,7,128,15,22,44,17,1, + 0,7,0,3,128,1,128,0,192,0,0,255,252,60,28,60, + 12,60,4,60,4,60,32,60,32,60,96,63,224,60,96,60, + 32,60,32,60,2,60,2,60,6,60,14,255,254,15,22,44, + 17,1,0,1,192,3,128,3,0,6,0,0,0,255,252,60, + 28,60,12,60,4,60,4,60,32,60,32,60,96,63,224,60, + 96,60,32,60,32,60,2,60,2,60,6,60,14,255,254,15, + 22,44,17,1,0,3,0,7,128,12,192,0,0,0,0,255, + 252,60,28,60,12,60,4,60,4,60,32,60,32,60,96,63, + 224,60,96,60,32,60,32,60,2,60,2,60,6,60,14,255, + 254,15,21,42,17,1,0,12,192,12,192,0,0,0,0,255, + 252,60,28,60,12,60,4,60,4,60,32,60,32,60,96,63, + 224,60,96,60,32,60,32,60,2,60,2,60,6,60,14,255, + 254,8,22,22,10,0,0,112,56,24,12,0,255,60,60,60, + 60,60,60,60,60,60,60,60,60,60,60,60,255,8,22,22, + 10,0,0,14,28,24,48,0,255,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,60,255,8,22,22,10,0,0,24, + 60,102,0,0,255,60,60,60,60,60,60,60,60,60,60,60, + 60,60,60,60,255,8,21,21,10,0,0,102,102,0,0,255, + 60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,255, + 16,17,34,18,1,0,255,224,60,120,60,60,60,30,60,30, + 60,15,60,15,255,143,255,143,60,15,60,15,60,14,60,30, + 60,28,60,60,60,120,255,224,17,22,66,18,0,0,1,136, + 0,3,240,0,4,96,0,0,0,0,0,0,0,248,15,128, + 124,7,0,62,2,0,63,2,0,63,130,0,47,194,0,39, + 226,0,35,226,0,33,242,0,32,250,0,32,126,0,32,62, + 0,32,30,0,32,14,0,32,14,0,96,6,0,248,2,0, + 16,22,44,19,1,0,7,0,3,128,1,128,0,192,0,0, + 7,224,30,120,60,60,120,30,120,30,240,15,240,15,240,15, + 240,15,240,15,240,15,240,15,120,30,120,30,60,60,30,120, + 7,224,16,22,44,19,1,0,0,112,0,224,0,192,1,128, + 0,0,7,224,30,120,60,60,120,30,120,30,240,15,240,15, + 240,15,240,15,240,15,240,15,240,15,120,30,120,30,60,60, + 30,120,7,224,16,22,44,19,1,0,1,128,3,192,6,96, + 0,0,0,0,7,224,30,120,60,60,120,30,120,30,240,15, + 240,15,240,15,240,15,240,15,240,15,240,15,120,30,120,30, + 60,60,30,120,7,224,16,22,44,19,1,0,3,16,7,224, + 8,192,0,0,0,0,7,224,30,120,60,60,120,30,120,30, + 240,15,240,15,240,15,240,15,240,15,240,15,240,15,120,30, + 120,30,60,60,30,120,7,224,16,21,42,19,1,0,12,96, + 12,96,0,0,0,0,7,224,30,120,60,60,120,30,120,30, + 240,15,240,15,240,15,240,15,240,15,240,15,240,15,120,30, + 120,30,60,60,30,120,7,224,12,12,24,14,1,0,192,48, + 224,112,112,224,57,192,31,128,15,0,15,0,31,128,57,192, + 112,224,224,112,192,48,16,19,38,19,1,255,0,4,7,236, + 30,120,56,28,120,62,120,62,240,111,240,207,240,207,241,143, + 243,15,243,15,246,15,124,30,124,30,56,28,62,120,55,224, + 96,0,17,22,66,18,0,0,3,128,0,1,192,0,0,192, + 0,0,96,0,0,0,0,255,15,128,62,6,0,60,2,0, + 60,2,0,60,2,0,60,2,0,60,2,0,60,2,0,60, + 2,0,60,2,0,60,2,0,60,2,0,60,2,0,60,6, + 0,30,4,0,31,28,0,7,248,0,17,22,66,18,0,0, + 0,56,0,0,112,0,0,96,0,0,192,0,0,0,0,255, + 15,128,62,6,0,60,2,0,60,2,0,60,2,0,60,2, + 0,60,2,0,60,2,0,60,2,0,60,2,0,60,2,0, + 60,2,0,60,2,0,60,6,0,30,4,0,31,28,0,7, + 248,0,17,22,66,18,0,0,0,96,0,0,240,0,1,152, + 0,0,0,0,0,0,0,255,15,128,62,6,0,60,2,0, + 60,2,0,60,2,0,60,2,0,60,2,0,60,2,0,60, + 2,0,60,2,0,60,2,0,60,2,0,60,2,0,60,6, + 0,30,4,0,31,28,0,7,248,0,17,21,63,18,0,0, + 3,24,0,3,24,0,0,0,0,0,0,0,255,15,128,62, + 6,0,60,2,0,60,2,0,60,2,0,60,2,0,60,2, + 0,60,2,0,60,2,0,60,2,0,60,2,0,60,2,0, + 60,2,0,60,6,0,30,4,0,31,28,0,7,248,0,18, + 23,69,18,0,0,0,14,0,0,28,0,0,24,0,0,48, + 0,0,0,0,0,0,0,255,143,192,62,3,0,30,2,0, + 15,6,0,15,12,0,7,140,0,7,152,0,3,208,0,3, + 240,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224, + 0,1,224,0,1,224,0,7,248,0,14,17,34,15,0,0, + 255,0,60,0,60,0,60,0,63,224,60,120,60,60,60,60, + 60,60,60,60,60,60,60,120,63,224,60,0,60,0,60,0, + 255,0,11,17,34,14,1,0,31,0,57,128,113,192,113,192, + 113,192,113,192,115,128,119,0,115,128,113,192,112,224,112,224, + 112,224,112,224,112,224,112,192,243,128,10,17,34,12,1,0, + 56,0,28,0,12,0,6,0,0,0,62,0,119,0,227,128, + 227,128,67,128,15,128,115,128,227,128,227,128,231,128,255,192, + 113,128,10,17,34,12,1,0,14,0,28,0,24,0,48,0, + 0,0,62,0,119,0,227,128,227,128,67,128,15,128,115,128, + 227,128,227,128,231,128,255,192,113,128,10,17,34,12,1,0, + 12,0,30,0,51,0,0,0,0,0,62,0,119,0,227,128, + 227,128,67,128,15,128,115,128,227,128,227,128,231,128,255,192, + 113,128,10,17,34,12,1,0,24,128,63,0,70,0,0,0, + 0,0,62,0,119,0,227,128,227,128,67,128,15,128,115,128, + 227,128,227,128,231,128,255,192,113,128,10,16,32,12,1,0, + 51,0,51,0,0,0,0,0,62,0,119,0,227,128,227,128, + 67,128,15,128,115,128,227,128,227,128,231,128,255,192,113,128, + 10,18,36,12,1,0,12,0,30,0,51,0,51,0,30,0, + 12,0,62,0,119,0,227,128,227,128,67,128,15,128,115,128, + 227,128,227,128,231,128,255,192,113,128,15,12,24,17,1,0, + 62,120,119,204,227,206,99,142,3,142,31,254,115,128,227,128, + 227,192,231,226,254,252,124,120,9,18,36,11,1,250,30,0, + 115,0,115,128,227,128,225,0,224,0,224,0,224,0,240,0, + 120,128,127,0,30,0,8,0,24,0,28,0,6,0,70,0, + 60,0,9,17,34,11,1,0,56,0,28,0,12,0,6,0, + 0,0,30,0,115,0,115,128,227,128,227,128,255,128,224,0, + 224,0,240,0,120,128,127,0,30,0,9,17,34,11,1,0, + 14,0,28,0,24,0,48,0,0,0,30,0,115,0,115,128, + 227,128,227,128,255,128,224,0,224,0,240,0,120,128,127,0, + 30,0,9,17,34,11,1,0,24,0,60,0,102,0,0,0, + 0,0,30,0,115,0,115,128,227,128,227,128,255,128,224,0, + 224,0,240,0,120,128,127,0,30,0,9,16,32,11,1,0, + 51,0,51,0,0,0,0,0,30,0,115,0,115,128,227,128, + 227,128,255,128,224,0,224,0,240,0,120,128,127,0,30,0, + 5,17,17,7,1,0,224,112,48,24,0,240,112,112,112,112, + 112,112,112,112,112,112,248,6,17,17,7,1,0,28,56,48, + 96,0,240,112,112,112,112,112,112,112,112,112,112,248,6,17, + 17,7,1,0,48,120,204,0,0,240,112,112,112,112,112,112, + 112,112,112,112,248,6,16,16,7,1,0,204,204,0,0,240, + 112,112,112,112,112,112,112,112,112,112,248,11,17,34,13,1, + 0,96,0,56,192,15,0,30,0,99,0,31,128,123,192,113, + 192,224,224,224,224,224,224,224,224,224,224,224,224,113,192,123, + 192,31,0,12,17,34,14,1,0,12,64,31,128,35,0,0, + 0,0,0,243,192,119,224,120,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,112,224,249,240,11,17,34,13,1, + 0,28,0,14,0,6,0,3,0,0,0,31,0,123,192,113, + 192,224,224,224,224,224,224,224,224,224,224,224,224,113,192,123, + 192,31,0,11,17,34,13,1,0,3,128,7,0,6,0,12, + 0,0,0,31,0,123,192,113,192,224,224,224,224,224,224,224, + 224,224,224,224,224,113,192,123,192,31,0,11,17,34,13,1, + 0,12,0,30,0,51,0,0,0,0,0,31,0,123,192,113, + 192,224,224,224,224,224,224,224,224,224,224,224,224,113,192,123, + 192,31,0,11,17,34,13,1,0,24,128,63,0,70,0,0, + 0,0,0,31,0,123,192,113,192,224,224,224,224,224,224,224, + 224,224,224,224,224,113,192,123,192,31,0,11,16,32,13,1, + 0,49,128,49,128,0,0,0,0,31,0,123,192,113,192,224, + 224,224,224,224,224,224,224,224,224,224,224,113,192,123,192,31, + 0,12,12,24,14,1,0,6,0,6,0,6,0,0,0,0, + 0,255,240,255,240,0,0,0,0,6,0,6,0,6,0,11, + 16,32,13,1,254,0,64,0,64,30,128,121,192,113,192,226, + 224,226,224,228,224,228,224,232,224,232,224,113,192,123,192,63, + 0,64,0,64,0,12,17,34,14,1,0,28,0,14,0,6, + 0,3,0,0,0,241,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,113,224,126,240,60,224,12,17,34, + 14,1,0,7,0,14,0,12,0,24,0,0,0,241,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,224,112,224,113, + 224,126,240,60,224,12,17,34,14,1,0,6,0,15,0,25, + 128,0,0,0,0,241,224,112,224,112,224,112,224,112,224,112, + 224,112,224,112,224,112,224,113,224,126,240,60,224,12,16,32, + 14,1,0,25,128,25,128,0,0,0,0,241,224,112,224,112, + 224,112,224,112,224,112,224,112,224,112,224,112,224,113,224,126, + 240,60,224,12,22,44,12,0,251,1,192,3,128,3,0,6, + 0,0,0,253,240,120,96,56,64,56,192,60,128,28,128,29, + 128,31,0,15,0,15,0,6,0,6,0,6,0,100,0,236, + 0,248,0,112,0,12,22,44,14,1,251,240,0,112,0,112, + 0,112,0,112,0,115,128,119,224,124,224,120,112,112,112,112, + 112,112,112,112,112,112,112,120,224,119,224,115,128,112,0,112, + 0,112,0,112,0,252,0,12,21,42,12,0,251,25,128,25, + 128,0,0,0,0,253,240,120,96,56,64,56,192,60,128,28, + 128,29,128,31,0,15,0,15,0,6,0,6,0,6,0,100, + 0,236,0,248,0,112,0}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--25-180-100-100-P-132-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=24 h=22 x= 3 y=13 dx=25 dy= 0 ascent=18 len=66 + Font Bounding box w=27 h=38 x=-2 y=-10 + Calculated Min Values x=-1 y=-5 dx= 0 dy= 0 + Pure Font ascent =17 descent=-5 + X Font ascent =17 descent=-5 + Max Font ascent =18 descent=-5 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB18r[3355] U8G_SECTION(".progmem.u8g_font_timB18r") = { + 0,27,38,254,246,17,4,47,9,109,32,127,251,18,251,17, + 251,0,0,0,6,0,1,4,17,17,8,2,0,96,240,240, + 240,240,240,96,96,96,96,96,0,0,96,240,240,96,8,8, + 8,12,2,9,231,231,231,231,231,231,66,66,12,17,34,13, + 0,0,12,192,12,192,12,192,12,192,127,240,127,240,25,128, + 25,128,25,128,25,128,255,224,255,224,51,0,51,0,51,0, + 51,0,51,0,10,20,40,12,1,254,8,0,8,0,63,0, + 107,128,233,128,233,128,248,128,124,0,126,0,63,0,31,128, + 15,128,11,192,137,192,201,192,201,128,235,128,62,0,8,0, + 8,0,17,17,51,19,1,0,30,12,0,59,252,0,113,24, + 0,225,48,0,226,48,0,226,96,0,244,96,0,120,192,0, + 0,192,0,1,143,0,1,157,128,3,56,128,3,112,128,6, + 113,0,6,113,0,12,122,0,12,60,0,17,17,51,21,1, + 0,3,224,0,6,112,0,14,48,0,14,48,0,14,112,0, + 7,224,0,15,15,128,31,135,0,51,194,0,97,230,0,225, + 252,0,224,248,0,224,120,0,240,124,0,248,255,128,127,159, + 0,63,14,0,3,8,8,7,2,9,224,224,224,224,224,224, + 64,64,5,21,21,8,1,252,8,24,48,48,112,96,96,224, + 224,224,224,224,224,224,96,96,112,48,48,24,8,5,21,21, + 8,1,252,128,192,96,96,48,48,48,56,56,56,56,56,56, + 56,48,48,48,96,96,192,128,10,11,22,13,1,6,12,0, + 12,0,76,128,237,192,127,128,30,0,127,128,237,192,76,128, + 12,0,12,0,12,12,24,14,1,0,6,0,6,0,6,0, + 6,0,6,0,255,240,255,240,6,0,6,0,6,0,6,0, + 6,0,4,9,9,6,1,251,96,240,240,112,48,96,96,192, + 128,6,3,3,8,1,5,252,252,252,4,4,4,6,1,0, + 96,240,240,96,7,17,17,7,0,0,6,6,4,12,12,8, + 24,24,16,48,48,32,96,96,64,192,192,11,17,34,12,0, + 0,14,0,59,128,49,128,113,192,113,192,241,224,241,224,241, + 224,241,224,241,224,241,224,113,192,113,192,113,192,49,128,59, + 128,14,0,9,17,34,12,2,0,12,0,60,0,252,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,62,0,255,128,10,17,34,12,1, + 0,30,0,63,0,127,128,199,128,131,128,3,128,3,128,3, + 0,7,0,6,0,12,0,12,0,24,64,48,64,127,192,255, + 192,255,128,11,17,34,12,0,0,15,0,63,128,99,192,65, + 192,1,192,3,128,7,0,31,0,7,192,1,224,1,224,0, + 224,0,224,96,224,241,192,251,128,126,0,11,17,34,12,0, + 0,1,128,3,128,7,128,7,128,15,128,27,128,51,128,51, + 128,99,128,195,128,255,224,255,224,255,224,3,128,3,128,3, + 128,3,128,11,17,34,12,0,0,31,224,31,192,63,192,48, + 0,32,0,112,0,127,0,127,128,127,192,7,192,1,192,0, + 192,0,192,96,192,241,128,251,128,126,0,11,17,34,12,1, + 0,1,224,7,128,30,0,60,0,56,0,120,0,119,0,123, + 128,241,192,241,224,241,224,241,224,241,224,113,192,113,192,59, + 128,30,0,11,17,34,12,0,0,63,224,127,224,127,192,192, + 192,129,128,1,128,3,128,3,0,3,0,7,0,6,0,6, + 0,14,0,14,0,12,0,28,0,28,0,11,17,34,12,0, + 0,31,0,59,128,113,192,113,192,113,192,121,128,59,0,63, + 0,31,128,55,192,99,192,225,224,225,224,225,224,241,192,123, + 128,62,0,11,17,34,12,0,0,14,0,59,128,113,192,113, + 192,241,224,241,224,241,224,241,224,113,224,59,192,31,192,3, + 192,3,128,7,128,15,0,60,0,240,0,4,12,12,8,2, + 0,96,240,240,96,0,0,0,0,96,240,240,96,4,17,17, + 8,2,251,96,240,240,96,0,0,0,0,96,240,240,112,48, + 96,96,192,128,11,12,24,14,1,0,0,96,1,224,7,192, + 31,0,60,0,224,0,224,0,60,0,31,0,7,192,1,224, + 0,96,11,6,12,14,1,3,255,224,255,224,0,0,0,0, + 255,224,255,224,11,12,24,14,1,0,192,0,240,0,124,0, + 31,0,7,128,0,224,0,224,7,128,31,0,124,0,240,0, + 192,0,9,17,34,12,1,0,62,0,111,0,231,128,231,128, + 71,128,7,128,15,0,14,0,28,0,24,0,24,0,0,0, + 0,0,24,0,60,0,60,0,24,0,20,21,63,23,1,252, + 0,124,0,3,247,128,15,128,192,30,0,96,60,0,32,56, + 59,48,112,255,16,113,231,16,241,199,16,227,198,16,227,142, + 16,227,142,48,227,142,32,243,158,96,241,254,192,112,243,128, + 120,0,0,56,0,0,30,0,0,7,131,0,1,252,0,17, + 17,51,18,0,0,1,128,0,1,192,0,3,192,0,3,224, + 0,3,224,0,6,224,0,6,240,0,4,112,0,12,112,0, + 8,120,0,8,56,0,31,248,0,16,60,0,48,60,0,48, + 30,0,112,30,0,248,127,128,14,17,34,16,0,0,255,192, + 60,240,60,120,60,120,60,120,60,120,60,112,60,192,63,224, + 60,120,60,60,60,60,60,60,60,60,60,56,60,120,255,224, + 15,17,34,18,1,0,3,242,30,62,60,14,120,6,120,2, + 240,2,240,0,240,0,240,0,240,0,240,0,240,0,120,0, + 120,2,60,14,31,60,7,240,16,17,34,18,1,0,255,224, + 60,120,60,60,60,30,60,30,60,15,60,15,60,15,60,15, + 60,15,60,15,60,14,60,30,60,28,60,60,60,120,255,224, + 15,17,34,17,1,0,255,252,60,28,60,12,60,4,60,4, + 60,32,60,32,60,96,63,224,60,96,60,32,60,32,60,2, + 60,2,60,6,60,14,255,254,14,17,34,15,0,0,255,252, + 60,28,60,12,60,4,60,4,60,32,60,32,60,96,63,224, + 60,96,60,32,60,32,60,0,60,0,60,0,60,0,255,0, + 17,17,51,19,1,0,3,242,0,30,62,0,60,14,0,120, + 6,0,120,2,0,240,2,0,240,0,0,240,0,0,240,0, + 0,240,127,128,240,30,0,240,30,0,120,30,0,120,30,0, + 56,30,0,30,30,0,7,248,0,18,17,51,19,0,0,255, + 63,192,60,15,0,60,15,0,60,15,0,60,15,0,60,15, + 0,60,15,0,60,15,0,63,255,0,60,15,0,60,15,0, + 60,15,0,60,15,0,60,15,0,60,15,0,60,15,0,255, + 63,192,8,17,17,10,0,0,255,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,60,255,11,19,38,12,0,254,31, + 224,7,128,7,128,7,128,7,128,7,128,7,128,7,128,7, + 128,7,128,7,128,7,128,7,128,7,128,231,128,231,128,231, + 0,231,0,60,0,18,17,51,19,0,0,255,63,128,60,30, + 0,60,24,0,60,48,0,60,96,0,60,192,0,61,128,0, + 63,192,0,63,192,0,61,224,0,60,240,0,60,248,0,60, + 124,0,60,62,0,60,31,0,60,15,128,255,31,192,15,17, + 34,16,0,0,255,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,2,60,6, + 60,12,60,28,255,252,21,17,51,24,1,0,252,1,248,60, + 3,224,62,3,224,62,7,224,47,5,224,47,13,224,39,9, + 224,39,137,224,39,153,224,35,145,224,35,241,224,35,241,224, + 33,225,224,33,225,224,32,193,224,32,193,224,248,7,248,17, + 17,51,18,0,0,248,15,128,124,7,0,62,2,0,63,2, + 0,63,130,0,47,194,0,39,226,0,35,226,0,33,242,0, + 32,250,0,32,126,0,32,62,0,32,30,0,32,30,0,32, + 14,0,96,6,0,248,2,0,16,17,34,19,1,0,7,224, + 28,56,56,28,120,30,112,14,240,15,240,15,240,15,240,15, + 240,15,240,15,240,15,112,14,120,30,56,28,28,56,7,224, + 14,17,34,15,0,0,255,224,60,120,60,60,60,60,60,60, + 60,60,60,60,60,120,63,224,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,255,0,17,22,66,19,1,251,7,224, + 0,28,56,0,56,28,0,120,30,0,112,14,0,240,15,0, + 240,15,0,240,15,0,240,15,0,240,15,0,240,15,0,240, + 15,0,240,14,0,120,30,0,120,28,0,60,56,0,31,224, + 0,7,192,0,1,224,0,1,240,0,0,252,0,0,63,128, + 16,17,34,18,1,0,255,224,60,120,60,56,60,60,60,60, + 60,60,60,56,60,112,63,192,61,224,60,240,60,240,60,120, + 60,124,60,60,60,30,255,31,12,17,34,14,1,0,63,160, + 113,224,224,224,224,96,224,32,248,0,126,0,127,128,63,192, + 15,224,7,224,129,240,128,240,192,240,224,224,249,224,191,128, + 14,17,34,16,1,0,255,252,231,156,199,140,135,132,135,132, + 7,128,7,128,7,128,7,128,7,128,7,128,7,128,7,128, + 7,128,7,128,7,128,31,224,17,17,51,18,0,0,255,15, + 128,126,7,0,60,2,0,60,2,0,60,2,0,60,2,0, + 60,2,0,60,2,0,60,2,0,60,2,0,60,2,0,60, + 2,0,60,2,0,60,6,0,30,4,0,31,12,0,7,248, + 0,17,17,51,18,0,0,255,31,128,60,6,0,60,4,0, + 30,4,0,30,12,0,15,8,0,15,24,0,15,24,0,7, + 144,0,7,176,0,3,224,0,3,224,0,3,224,0,1,192, + 0,1,192,0,0,128,0,0,128,0,24,17,51,25,0,0, + 255,127,159,60,30,6,60,30,4,30,15,12,30,31,8,30, + 31,24,15,23,152,15,55,144,15,39,176,7,227,176,7,195, + 224,7,195,224,3,193,224,3,129,192,3,129,192,1,0,128, + 1,0,128,16,17,34,18,1,0,255,63,62,12,30,8,31, + 24,15,48,15,160,7,224,3,192,3,224,3,224,3,240,6, + 240,12,120,8,124,24,60,56,62,252,255,18,17,51,18,0, + 0,255,143,192,62,3,0,30,2,0,15,6,0,15,12,0, + 7,140,0,7,152,0,3,208,0,3,240,0,1,224,0,1, + 224,0,1,224,0,1,224,0,1,224,0,1,224,0,1,224, + 0,7,248,0,14,17,34,17,1,0,255,248,224,248,193,240, + 193,240,131,224,3,192,7,192,7,128,15,128,15,0,30,0, + 62,4,60,4,124,12,120,28,248,60,255,248,5,21,21,8, + 1,252,248,224,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,224,248,7,17,17,7,0,0,192,192,64, + 96,96,32,48,48,16,24,24,8,12,12,4,6,6,5,21, + 21,8,1,252,248,56,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,56,248,8,10,10,15,3,7,24, + 24,60,36,102,102,102,195,195,129,12,2,4,12,0,251,255, + 240,255,240,5,4,4,8,1,13,224,112,48,24,10,12,24, + 12,1,0,62,0,119,0,227,128,227,128,67,128,15,128,115, + 128,227,128,227,128,231,128,255,192,113,128,11,17,34,13,1, + 0,240,0,112,0,112,0,112,0,112,0,119,0,127,192,113, + 192,112,224,112,224,112,224,112,224,112,224,112,224,113,192,123, + 192,103,0,9,12,24,11,1,0,30,0,115,0,115,128,227, + 128,225,0,224,0,224,0,224,0,240,0,120,128,127,0,30, + 0,12,17,34,14,1,0,1,224,0,224,0,224,0,224,0, + 224,30,224,127,224,113,224,224,224,224,224,224,224,224,224,224, + 224,240,224,113,224,126,224,28,112,9,12,24,11,1,0,30, + 0,115,0,115,128,227,128,227,128,255,128,224,0,224,0,240, + 0,120,128,127,0,30,0,8,17,17,8,1,0,30,51,115, + 112,112,252,112,112,112,112,112,112,112,112,112,112,248,10,17, + 34,12,1,251,62,192,119,192,227,128,227,128,227,128,227,128, + 115,0,62,0,96,0,224,0,255,128,255,192,127,192,193,192, + 192,192,225,128,127,0,12,17,34,14,1,0,240,0,112,0, + 112,0,112,0,112,0,115,192,127,224,120,224,112,224,112,224, + 112,224,112,224,112,224,112,224,112,224,112,224,249,240,5,17, + 17,7,1,0,112,112,112,0,0,240,112,112,112,112,112,112, + 112,112,112,112,248,7,22,22,8,255,251,14,14,14,0,0, + 30,14,14,14,14,14,14,14,14,14,14,14,14,206,206,204, + 120,13,17,34,15,1,0,240,0,112,0,112,0,112,0,112, + 0,115,240,112,192,113,128,115,0,118,0,126,0,127,0,119, + 128,115,192,113,224,112,240,251,248,5,17,17,7,1,0,240, + 112,112,112,112,112,112,112,112,112,112,112,112,112,112,112,248, + 19,12,36,21,1,0,243,199,128,119,223,192,120,241,192,112, + 225,192,112,225,192,112,225,192,112,225,192,112,225,192,112,225, + 192,112,225,192,112,225,192,249,243,224,12,12,24,14,1,0, + 243,192,119,224,120,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,112,224,249,240,11,12,24,13,1,0,31,0, + 113,192,113,192,224,224,224,224,224,224,224,224,224,224,224,224, + 113,192,113,192,31,0,12,17,34,14,1,251,227,192,119,224, + 120,224,112,112,112,112,112,112,112,112,112,112,112,112,120,224, + 119,224,115,128,112,0,112,0,112,0,112,0,252,0,12,17, + 34,14,1,251,14,96,63,224,113,224,112,224,224,224,224,224, + 224,224,224,224,224,224,113,224,126,224,28,224,0,224,0,224, + 0,224,0,224,1,240,9,12,24,11,1,0,239,0,127,128, + 115,128,112,0,112,0,112,0,112,0,112,0,112,0,112,0, + 112,0,248,0,8,12,12,10,1,0,62,102,226,224,248,124, + 62,31,135,135,198,252,8,16,16,8,0,0,8,24,56,120, + 255,56,56,56,56,56,56,56,56,57,62,28,12,12,24,14, + 1,0,241,224,112,224,112,224,112,224,112,224,112,224,112,224, + 112,224,112,224,113,224,126,240,60,224,12,12,24,12,0,0, + 252,240,112,96,120,64,56,192,56,128,28,128,29,128,31,0, + 15,0,15,0,6,0,6,0,17,12,36,18,0,0,253,247, + 128,120,227,0,56,227,0,56,226,0,60,230,0,29,118,0, + 29,116,0,31,60,0,14,56,0,14,56,0,4,16,0,4, + 16,0,12,12,24,12,0,0,252,240,120,96,60,192,29,128, + 31,0,15,0,15,0,31,128,27,192,49,192,97,224,243,240, + 12,17,34,12,0,251,253,240,120,96,56,64,56,192,60,128, + 28,128,29,128,31,0,15,0,15,0,6,0,6,0,6,0, + 100,0,236,0,248,0,112,0,9,12,24,11,1,0,255,128, + 199,0,143,0,142,0,30,0,28,0,60,0,56,0,120,128, + 113,128,241,128,255,128,7,21,21,10,1,252,14,24,48,48, + 48,48,48,48,48,96,192,96,48,48,48,48,48,48,48,24, + 14,2,22,22,6,2,251,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,7,21,21, + 10,1,252,224,48,24,24,24,24,24,24,24,12,6,12,24, + 24,24,24,24,24,24,48,224,12,6,12,13,0,6,24,0, + 126,16,255,16,143,240,135,224,1,128,255}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--34-240-100-100-P-177-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 23, '1' Height: 23 + Calculated Max Values w=32 h=30 x= 4 y=18 dx=33 dy= 0 ascent=30 len=108 + Font Bounding box w=38 h=49 x=-5 y=-12 + Calculated Min Values x=-2 y=-7 dx= 0 dy= 0 + Pure Font ascent =23 descent=-7 + X Font ascent =23 descent=-7 + Max Font ascent =30 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB24[10820] U8G_SECTION(".progmem.u8g_font_timB24") = { + 0,38,49,251,244,23,5,149,13,202,32,255,249,30,249,23, + 249,0,0,0,8,0,1,5,23,23,11,3,0,112,248,248, + 248,248,248,248,112,112,112,112,32,32,32,32,0,0,0,112, + 248,248,248,112,11,11,22,19,2,12,96,192,241,224,241,224, + 241,224,241,224,241,224,241,224,96,192,96,192,96,192,96,192, + 16,23,46,17,0,0,3,12,3,12,7,28,7,28,6,24, + 6,24,127,255,127,255,14,56,12,48,12,48,12,48,12,48, + 28,112,255,254,255,254,24,96,24,96,24,96,56,224,56,224, + 48,192,48,192,15,28,56,16,1,253,3,0,3,0,15,232, + 63,248,115,56,99,24,227,8,227,8,243,0,251,0,127,0, + 127,128,63,224,15,240,3,248,3,252,3,124,131,62,131,30, + 131,30,195,28,195,60,243,120,255,224,131,0,3,0,3,0, + 3,0,24,23,69,33,4,0,7,128,32,15,192,224,30,127, + 192,60,32,192,124,33,128,120,33,128,248,99,0,240,71,0, + 240,198,0,240,206,0,241,140,60,127,24,126,60,25,243,0, + 49,225,0,51,193,0,99,193,0,231,195,0,199,130,1,199, + 134,1,135,134,3,3,140,3,3,248,6,1,224,22,23,69, + 28,2,0,1,240,0,3,188,0,7,30,0,7,14,0,15, + 14,0,15,14,0,15,140,0,7,216,0,7,240,0,3,224, + 252,7,240,112,29,240,48,57,248,96,112,252,64,240,252,192, + 240,127,128,248,63,0,248,31,128,252,31,192,254,63,228,127, + 243,252,127,193,252,31,0,120,4,11,11,9,2,12,96,240, + 240,240,240,240,240,96,96,96,96,8,29,29,11,2,250,3, + 6,12,24,24,48,48,112,96,224,224,224,224,224,224,224,224, + 224,224,224,96,112,48,48,24,24,12,6,3,8,29,29,11, + 0,250,192,96,48,24,24,12,12,14,6,7,7,7,7,7, + 7,7,7,7,7,7,6,14,12,12,24,24,48,96,192,13, + 14,28,17,1,9,3,0,7,0,7,0,231,56,242,120,122, + 240,15,128,15,128,122,240,242,120,231,56,7,0,7,0,6, + 0,15,15,30,19,2,0,3,128,3,128,3,128,3,128,3, + 128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,3, + 128,3,128,3,128,6,11,11,8,1,250,56,124,124,124,60, + 12,8,24,48,96,192,8,4,4,11,1,6,255,255,255,255, + 5,5,5,8,1,0,112,248,248,248,112,9,25,50,9,0, + 0,1,128,1,128,1,0,3,0,3,0,3,0,6,0,6, + 0,6,0,4,0,12,0,12,0,12,0,24,0,24,0,24, + 0,48,0,48,0,48,0,48,0,96,0,96,0,96,0,192, + 0,192,0,14,23,46,16,1,0,7,128,31,224,28,224,56, + 112,120,112,120,120,120,120,248,124,248,124,248,124,248,124,248, + 124,248,124,248,124,248,124,248,124,120,120,120,120,120,120,56, + 112,28,224,15,192,7,128,13,23,46,16,2,0,1,128,7, + 128,31,128,255,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,31,192,255,248,16,23,46,16,0, + 0,3,192,15,240,31,248,63,248,48,252,96,124,64,124,0, + 124,0,120,0,120,0,120,0,240,0,224,1,192,1,128,3, + 0,7,1,14,3,28,6,63,254,127,254,255,252,255,252,14, + 23,46,16,1,0,7,192,31,240,63,240,48,248,96,120,64, + 120,0,120,0,112,0,192,3,224,15,240,15,248,3,248,0, + 252,0,124,0,60,0,60,0,60,96,56,240,56,248,112,127, + 192,31,0,14,23,46,16,1,0,0,112,0,240,0,240,1, + 240,3,240,6,240,6,240,12,240,24,240,24,240,48,240,96, + 240,96,240,192,240,255,252,255,252,255,252,255,252,0,240,0, + 240,0,240,0,240,0,240,13,23,46,16,1,0,31,248,31, + 248,31,248,31,248,48,0,48,0,32,0,62,0,127,128,127, + 224,127,240,127,240,3,248,0,248,0,120,0,56,0,56,0, + 56,96,48,240,48,248,96,127,192,31,0,14,23,46,16,1, + 0,0,28,0,240,3,192,7,128,15,0,30,0,62,0,60, + 0,124,0,127,224,253,240,248,248,248,120,248,124,248,124,248, + 124,248,124,120,124,120,120,120,120,56,112,28,224,15,192,13, + 23,46,16,2,0,127,248,127,248,255,248,255,248,192,48,128, + 112,128,112,0,96,0,224,0,224,0,192,1,192,1,192,3, + 128,3,128,3,128,7,0,7,0,7,0,14,0,14,0,14, + 0,28,0,14,23,46,16,1,0,15,224,62,240,60,120,120, + 120,120,56,120,56,124,56,126,112,63,224,63,128,31,192,15, + 224,63,240,113,248,112,252,224,124,224,60,224,60,224,60,240, + 56,120,120,127,240,31,192,14,23,46,16,1,0,15,192,28, + 224,56,112,120,120,120,120,248,120,248,124,248,124,248,124,248, + 124,120,124,124,124,62,252,31,248,0,248,0,240,1,240,1, + 224,3,192,7,128,15,0,60,0,224,0,5,16,16,11,3, + 0,112,248,248,248,112,0,0,0,0,0,0,112,248,248,248, + 112,6,22,22,11,2,250,56,124,124,124,56,0,0,0,0, + 0,0,56,124,124,124,60,12,8,24,48,96,192,16,15,30, + 19,1,0,0,3,0,15,0,127,1,252,15,224,63,128,252, + 0,240,0,252,0,63,128,15,224,1,252,0,127,0,15,0, + 3,15,10,20,19,2,3,255,254,255,254,255,254,0,0,0, + 0,0,0,0,0,255,254,255,254,255,254,16,15,30,19,2, + 0,192,0,240,0,254,0,63,128,7,240,1,252,0,63,0, + 15,0,63,1,252,7,240,63,128,254,0,240,0,192,0,12, + 23,46,16,2,0,63,0,115,192,225,224,225,240,241,240,241, + 240,97,240,1,224,1,224,3,192,3,128,3,0,6,0,4, + 0,4,0,0,0,0,0,0,0,14,0,31,0,31,0,31, + 0,14,0,26,27,108,31,2,251,0,31,224,0,0,252,60, + 0,3,224,14,0,7,128,3,0,15,0,1,0,30,0,1, + 128,62,15,56,128,60,31,248,192,124,124,248,64,120,120,120, + 64,248,248,240,64,248,240,240,64,241,240,240,64,241,240,240, + 64,241,224,240,192,241,225,224,128,241,225,225,128,241,227,227, + 0,113,243,227,0,120,254,254,0,120,120,120,0,60,0,0, + 0,28,0,0,0,14,0,1,128,7,128,7,0,1,224,60, + 0,0,63,224,0,21,23,69,24,1,0,0,32,0,0,96, + 0,0,112,0,0,240,0,0,248,0,0,248,0,1,248,0, + 1,124,0,1,124,0,3,62,0,2,62,0,6,62,0,6, + 31,0,4,31,0,12,15,0,15,255,128,24,15,128,24,7, + 192,16,7,192,48,3,224,48,3,224,112,7,240,252,31,248, + 19,23,69,22,1,0,255,252,0,63,31,0,31,15,128,31, + 7,192,31,7,192,31,7,192,31,7,192,31,7,192,31,7, + 128,31,15,128,31,62,0,31,252,0,31,15,128,31,7,192, + 31,7,224,31,3,224,31,3,224,31,3,224,31,3,224,31, + 3,192,31,7,192,63,15,0,255,252,0,19,23,69,24,2, + 0,1,252,32,7,255,96,15,7,224,30,1,224,60,0,224, + 124,0,96,124,0,96,248,0,32,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,124,0,0,124,0,0,60,0,32,30,0,96,15,129,192, + 3,255,128,0,254,0,22,23,69,24,0,0,255,252,0,63, + 255,128,31,7,224,31,1,240,31,1,240,31,0,248,31,0, + 248,31,0,252,31,0,124,31,0,124,31,0,124,31,0,124, + 31,0,124,31,0,124,31,0,124,31,0,248,31,0,248,31, + 0,248,31,1,240,31,1,224,31,7,192,63,255,0,255,252, + 0,21,23,69,22,0,0,255,255,224,63,255,224,31,0,224, + 31,0,96,31,0,96,31,0,32,31,0,32,31,4,0,31, + 4,0,31,12,0,31,28,0,31,252,0,31,28,0,31,12, + 0,31,4,0,31,4,0,31,0,8,31,0,24,31,0,48, + 31,0,112,31,1,240,63,255,224,255,255,224,19,23,69,20, + 0,0,255,255,224,63,255,224,31,0,224,31,0,96,31,0, + 96,31,0,32,31,0,32,31,4,0,31,4,0,31,12,0, + 31,28,0,31,252,0,31,28,0,31,12,0,31,4,0,31, + 4,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,63,128,0,255,224,0,22,23,69,25,2,0,1,252,32, + 7,255,96,15,7,224,30,1,224,60,0,224,124,0,96,124, + 0,96,248,0,32,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,31,252,248,7,240,248,3,224,124,3,224, + 124,3,224,60,3,224,62,3,224,30,7,224,15,143,224,3, + 255,0,24,23,69,25,0,0,255,231,255,63,129,252,31,0, + 248,31,0,248,31,0,248,31,0,248,31,0,248,31,0,248, + 31,0,248,31,0,248,31,255,248,31,255,248,31,0,248,31, + 0,248,31,0,248,31,0,248,31,0,248,31,0,248,31,0, + 248,31,0,248,31,0,248,63,129,252,255,231,255,11,23,46, + 13,1,0,255,224,63,128,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,63,128,255, + 224,15,26,52,16,0,253,15,254,3,248,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,97,240,241, + 240,241,240,243,224,227,224,127,192,31,0,24,23,69,25,1, + 0,255,207,252,127,3,224,62,1,192,62,3,128,62,7,0, + 62,14,0,62,28,0,62,56,0,62,112,0,62,224,0,63, + 240,0,63,248,0,63,252,0,62,254,0,62,127,0,62,63, + 128,62,31,192,62,15,224,62,7,240,62,3,248,62,1,252, + 127,0,254,255,195,255,20,23,69,22,1,0,255,224,0,63, + 128,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,16,31, + 0,48,31,0,96,31,0,224,31,129,224,63,255,192,255,255, + 192,28,23,92,31,1,0,255,0,15,240,63,0,31,192,31, + 128,31,128,31,128,63,128,23,192,63,128,23,192,47,128,23, + 192,111,128,19,224,79,128,19,224,207,128,19,224,207,128,17, + 240,143,128,17,241,143,128,16,249,15,128,16,251,15,128,16, + 251,15,128,16,126,15,128,16,126,15,128,16,124,15,128,16, + 60,15,128,16,60,15,128,16,24,15,128,56,24,31,192,254, + 24,63,240,22,23,69,24,1,0,254,1,252,127,0,112,63, + 128,32,31,128,32,31,192,32,31,224,32,23,240,32,19,248, + 32,17,248,32,17,252,32,16,254,32,16,127,32,16,63,32, + 16,31,160,16,31,224,16,15,224,16,7,224,16,3,224,16, + 3,224,16,1,224,16,0,224,56,0,96,254,0,32,21,23, + 69,25,2,0,1,252,0,7,255,0,15,143,128,30,3,192, + 60,1,224,124,1,240,120,0,240,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,120,0,240,124,1,240,60,1,224,30,3,192, + 15,143,128,7,255,0,1,252,0,19,23,69,20,0,0,255, + 252,0,63,31,128,31,15,192,31,7,192,31,7,224,31,3, + 224,31,3,224,31,3,224,31,3,224,31,7,192,31,7,192, + 31,31,128,31,254,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,63,128, + 0,255,224,0,22,27,81,26,2,252,1,252,0,7,255,0, + 15,143,128,30,3,192,60,1,224,124,1,240,120,0,240,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,248,248,0,248,124,1,240, + 124,1,240,62,3,224,31,7,192,7,255,0,1,252,0,0, + 254,0,0,127,132,0,31,248,0,7,224,22,23,69,24,1, + 0,255,252,0,63,31,128,31,7,192,31,7,224,31,3,224, + 31,3,224,31,3,224,31,3,224,31,7,224,31,7,192,31, + 31,128,31,252,0,31,126,0,31,62,0,31,63,0,31,31, + 128,31,31,128,31,15,192,31,7,224,31,7,224,31,3,240, + 63,129,248,255,225,252,15,23,46,18,1,0,15,196,56,124, + 112,60,112,28,240,12,240,12,248,4,252,0,255,0,127,192, + 63,240,31,248,15,252,3,252,1,254,128,126,128,62,192,30, + 192,30,224,28,240,28,248,56,143,224,19,23,69,22,1,0, + 255,255,224,249,243,224,225,240,224,193,240,96,129,240,32,129, + 240,32,129,240,32,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,3, + 248,0,15,254,0,23,23,69,24,0,0,255,224,254,63,128, + 56,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,15,128,48,15,128,96,7,192,192,3,255,128,0,254,0, + 22,23,69,24,1,0,255,195,252,127,0,240,62,0,96,63, + 0,64,31,0,192,31,128,192,15,128,128,15,129,128,15,193, + 0,7,193,0,7,195,0,3,226,0,3,230,0,3,246,0, + 1,244,0,1,252,0,0,248,0,0,248,0,0,248,0,0, + 112,0,0,112,0,0,32,0,0,32,0,32,23,92,33,0, + 0,255,239,255,63,127,3,248,14,63,1,248,12,31,1,248, + 12,31,1,248,8,31,129,252,24,15,129,252,24,15,129,124, + 16,15,195,124,48,7,194,126,48,7,198,62,32,7,230,62, + 96,3,228,62,96,3,236,31,64,3,248,31,192,1,248,31, + 192,1,248,15,128,1,240,15,128,0,240,15,128,0,224,7, + 0,0,224,7,0,0,224,7,0,0,64,2,0,21,23,69, + 24,1,0,255,207,224,127,3,0,63,2,0,31,134,0,31, + 132,0,15,204,0,15,200,0,7,248,0,3,240,0,3,240, + 0,1,248,0,0,248,0,1,252,0,1,124,0,3,62,0, + 2,63,0,6,31,0,4,31,128,12,15,192,8,15,192,24, + 7,224,56,7,240,254,63,248,22,23,69,24,1,0,255,195, + 252,127,0,240,63,0,96,63,0,96,31,128,192,31,128,128, + 15,193,128,15,195,0,7,227,0,3,230,0,3,244,0,1, + 252,0,1,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,1,252,0, + 7,255,0,19,23,69,22,1,0,63,255,192,126,15,128,120, + 31,128,112,31,0,96,63,0,64,126,0,0,126,0,0,252, + 0,0,252,0,1,248,0,1,240,0,3,240,0,3,224,0, + 7,224,0,7,192,0,15,192,32,31,128,32,31,128,96,63, + 0,96,63,0,224,126,1,224,126,7,192,255,255,192,7,28, + 28,11,2,251,254,240,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,240,254, + 8,26,26,9,0,0,128,192,192,192,96,96,96,96,48,48, + 48,24,24,24,24,12,12,12,4,6,6,6,3,3,3,3, + 7,28,28,11,1,251,254,30,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14, + 30,254,11,13,26,19,4,10,14,0,14,0,31,0,31,0, + 27,0,59,128,59,128,113,192,113,192,97,192,224,224,224,224, + 192,96,16,3,6,16,0,251,255,255,255,255,255,255,7,6, + 6,11,1,17,192,224,112,56,12,2,14,16,32,16,1,0, + 31,128,49,224,112,240,120,240,120,240,48,240,1,240,7,240, + 28,240,56,240,120,240,240,240,249,240,255,244,126,252,60,120, + 17,22,66,18,0,0,252,0,0,124,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,120,0,61,254,0,63,254, + 0,62,31,0,60,31,0,60,15,128,60,15,128,60,15,128, + 60,15,128,60,15,128,60,15,128,60,15,0,60,31,0,62, + 62,0,55,252,0,33,240,0,14,16,32,15,1,0,7,240, + 30,120,60,60,124,60,120,24,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,124,0,62,24,31,240,15,224,16,22, + 44,18,1,0,0,252,0,124,0,60,0,60,0,60,0,60, + 15,188,63,252,124,60,120,60,248,60,240,60,240,60,240,60, + 240,60,240,60,240,60,240,60,120,60,124,126,63,255,15,184, + 14,16,32,15,0,0,7,192,30,240,60,112,120,56,120,60, + 248,60,248,60,255,252,248,0,248,0,248,0,120,0,124,0, + 62,24,31,240,7,224,12,23,46,11,0,0,7,224,30,112, + 28,240,60,240,60,96,60,0,60,0,255,128,255,128,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,126,0,255,0,14,23,46,16,1,249, + 15,192,61,252,112,252,240,240,240,120,240,120,240,120,240,120, + 120,248,63,240,31,192,60,0,96,0,224,0,255,224,255,248, + 127,252,48,60,96,28,192,12,224,28,127,248,31,224,17,22, + 66,18,0,0,252,0,0,124,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,120,0,61,252,0,63,254,0,62, + 62,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 126,63,0,255,127,128,8,23,23,9,0,0,24,60,60,60, + 24,0,0,252,124,60,60,60,60,60,60,60,60,60,60,60, + 60,126,255,10,30,60,11,254,249,1,128,3,192,3,192,3, + 192,1,128,0,0,0,0,15,192,7,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,99,192,243,192,243, + 128,119,128,62,0,18,22,66,18,0,0,252,0,0,124,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,31,0, + 60,14,0,60,12,0,60,24,0,60,48,0,60,96,0,60, + 192,0,61,192,0,63,224,0,61,240,0,60,248,0,60,124, + 0,60,62,0,60,31,0,126,15,128,255,31,192,8,22,22, + 9,0,0,252,124,60,60,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,126,255,26,16,64,27,0,0,252, + 120,60,0,125,254,254,0,63,63,159,0,62,63,31,0,62, + 30,15,0,60,30,15,0,60,30,15,0,60,30,15,0,60, + 30,15,0,60,30,15,0,60,30,15,0,60,30,15,0,60, + 30,15,0,60,30,15,0,126,63,31,128,255,127,191,192,17, + 16,48,18,0,0,252,120,0,125,252,0,63,62,0,62,30, + 0,62,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,126, + 63,0,255,127,128,14,16,32,17,1,0,15,192,60,240,120, + 120,120,120,240,60,240,60,240,60,240,60,240,60,240,60,240, + 60,240,60,120,120,120,120,60,240,15,192,17,23,69,18,0, + 249,252,248,0,125,254,0,63,31,0,62,15,0,60,15,128, + 60,7,128,60,7,128,60,7,128,60,7,128,60,7,128,60, + 7,128,60,7,128,62,15,0,63,15,0,63,254,0,60,248, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 126,0,0,255,0,0,16,23,46,18,1,249,15,196,62,236, + 124,60,120,60,248,60,240,60,240,60,240,60,240,60,240,60, + 240,60,240,60,120,60,120,124,63,252,15,60,0,60,0,60, + 0,60,0,60,0,60,0,126,0,255,13,16,32,15,1,0, + 252,112,124,248,63,248,63,120,62,48,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,126,0,255,0, + 10,16,32,13,1,0,31,64,113,192,96,192,224,192,240,64, + 252,0,127,0,127,128,63,128,15,192,3,192,129,192,193,192, + 193,192,227,128,191,0,10,21,42,11,0,0,4,0,12,0, + 28,0,28,0,60,0,127,128,255,128,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,64, + 62,192,63,128,30,0,17,16,48,18,0,0,252,126,0,124, + 62,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,62,0,62,95,0,31,223,128,7,140,0,15,16,32,17, + 0,0,255,62,124,12,60,8,62,24,30,16,31,16,31,48, + 15,32,15,32,7,224,7,192,7,192,3,128,3,128,1,0, + 1,0,23,16,48,24,0,0,255,127,190,126,62,28,60,30, + 8,62,30,24,30,31,16,31,31,48,31,63,48,15,47,160, + 15,231,224,7,231,192,7,199,192,7,195,192,3,131,128,3, + 131,128,1,1,0,1,1,0,16,16,32,17,0,0,255,62, + 126,24,62,24,31,48,31,96,15,192,15,192,7,192,3,224, + 3,224,7,240,13,248,24,248,24,124,48,124,252,255,15,23, + 46,17,0,249,255,190,126,12,62,8,62,8,31,24,31,16, + 15,16,15,176,15,160,7,160,7,224,7,192,3,192,3,192, + 1,128,1,128,1,128,1,0,115,0,243,0,246,0,254,0, + 120,0,12,16,32,15,1,0,255,240,227,240,195,224,135,224, + 135,192,15,128,15,128,31,0,31,0,62,0,62,16,124,16, + 124,48,248,48,248,240,255,240,10,27,54,13,1,252,7,192, + 14,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,56,0,112,0,224,0,112,0,56,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 14,0,7,192,2,30,30,7,3,249,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,10,27,54,13,1,252,248,0, + 28,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,7,0,3,128,1,192,3,128,7,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 28,0,248,0,15,8,16,17,1,8,28,0,63,0,127,130, + 255,198,143,254,131,252,1,248,0,112,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,0,0,0,8,0, + 1,5,23,23,11,3,249,112,248,248,248,112,0,0,0,32, + 32,32,32,112,112,112,112,248,248,248,248,248,248,112,13,25, + 50,17,1,251,0,8,0,8,0,24,0,16,7,240,28,224, + 56,240,120,240,240,240,240,224,240,128,241,128,241,0,243,0, + 242,0,250,16,126,48,127,224,63,192,15,0,8,0,16,0, + 16,0,32,0,32,0,16,23,46,17,1,0,0,240,3,252, + 7,30,14,30,14,30,30,12,30,0,30,0,31,0,15,0, + 15,0,127,240,127,240,7,128,7,128,7,128,55,128,127,1, + 239,3,199,135,199,255,238,254,124,124,14,15,30,17,1,4, + 96,24,247,188,255,252,127,248,60,240,120,120,112,56,112,56, + 112,56,120,120,60,240,127,248,255,252,247,188,96,24,18,23, + 69,17,1,0,255,135,192,62,3,128,62,3,0,31,3,0, + 31,6,0,31,134,0,15,132,0,15,140,0,7,200,0,7, + 216,0,7,208,0,3,240,0,31,252,0,31,252,0,3,224, + 0,31,252,0,31,252,0,1,224,0,1,224,0,1,224,0, + 1,224,0,3,240,0,15,252,0,2,30,30,7,3,249,192, + 192,192,192,192,192,192,192,192,192,192,192,0,0,0,0,0, + 0,192,192,192,192,192,192,192,192,192,192,192,192,12,28,56, + 17,2,251,15,128,24,192,48,224,113,224,113,224,120,192,60, + 0,62,0,31,0,15,128,63,192,99,224,193,224,192,240,224, + 112,240,48,120,48,124,96,63,192,31,128,7,128,3,192,49, + 224,120,224,120,224,112,192,49,128,31,0,8,4,4,11,2, + 18,66,231,231,66,22,23,69,25,1,0,1,254,0,7,255, + 128,15,3,192,28,0,224,56,0,112,48,254,48,113,199,56, + 99,131,24,231,131,28,199,0,12,199,0,12,199,0,12,199, + 0,12,199,128,12,195,195,12,227,230,28,96,252,24,112,0, + 56,56,0,112,28,0,224,15,3,192,7,255,128,1,254,0, + 9,14,28,10,0,9,60,0,102,0,103,0,103,0,31,0, + 103,0,199,0,199,0,239,128,115,0,0,0,0,0,255,128, + 255,128,14,14,28,17,2,1,2,4,6,12,14,28,28,56, + 56,112,112,224,225,192,225,192,112,224,56,112,28,56,14,28, + 6,12,2,4,16,9,18,19,1,3,255,255,255,255,255,255, + 0,7,0,7,0,7,0,7,0,7,0,7,8,4,4,11, + 1,6,255,255,255,255,22,23,69,25,2,0,1,254,0,7, + 255,128,15,3,192,28,0,224,56,0,112,51,252,48,113,206, + 56,96,199,24,224,199,28,192,199,12,192,206,12,192,248,12, + 192,220,12,192,206,12,192,198,12,224,199,28,97,195,152,115, + 227,248,56,0,112,28,0,224,15,3,192,7,255,128,1,254, + 0,9,2,4,11,1,18,255,128,255,128,9,10,20,13,2, + 13,28,0,127,0,99,0,193,128,193,128,193,128,193,128,99, + 0,127,0,60,0,15,19,38,19,2,0,3,128,3,128,3, + 128,3,128,3,128,3,128,255,254,255,254,255,254,3,128,3, + 128,3,128,3,128,3,128,3,128,0,0,255,254,255,254,255, + 254,10,14,28,10,1,9,62,0,127,0,199,128,131,128,3, + 128,3,128,3,0,6,0,12,0,24,0,48,64,127,192,255, + 128,255,128,9,14,28,10,1,9,30,0,63,0,103,128,67, + 128,3,0,6,0,31,0,7,128,3,128,3,128,3,128,195, + 128,231,0,126,0,7,6,6,11,3,17,6,14,28,56,96, + 128,16,22,44,19,2,250,248,252,120,124,120,60,120,60,120, + 60,120,60,120,60,120,60,120,60,120,60,120,60,120,60,120, + 124,124,252,127,191,95,56,64,0,224,0,224,0,224,0,224, + 0,224,0,16,29,58,18,1,250,15,255,63,255,63,140,127, + 140,255,140,255,140,255,140,255,140,255,140,255,140,255,140,127, + 140,63,140,63,140,15,140,1,140,1,140,1,140,1,140,1, + 140,1,140,1,140,1,140,1,140,1,140,1,140,1,140,1, + 140,1,140,4,4,4,8,2,9,96,240,240,96,7,7,7, + 11,1,249,6,12,28,14,198,238,124,9,14,28,10,0,9, + 12,0,124,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,255,128,9,14,28,11, + 1,9,28,0,119,0,99,0,227,128,227,128,227,128,227,128, + 99,0,119,0,28,0,0,0,0,0,255,128,255,128,14,14, + 28,17,1,1,129,0,193,128,225,192,112,224,56,112,28,56, + 14,28,14,28,28,56,56,112,112,224,225,192,193,128,129,0, + 23,23,69,25,0,0,12,0,8,124,0,24,28,0,48,28, + 0,48,28,0,96,28,0,96,28,0,192,28,1,128,28,1, + 128,28,3,12,28,6,28,28,6,60,28,12,124,255,152,252, + 0,24,220,0,49,156,0,99,156,0,99,28,0,199,254,1, + 199,254,1,128,28,3,0,28,3,0,28,23,23,69,25,0, + 0,12,0,48,124,0,96,28,0,96,28,0,192,28,0,128, + 28,1,128,28,3,0,28,2,0,28,6,0,28,12,240,28, + 25,248,28,27,60,28,50,28,255,176,28,0,96,28,0,96, + 24,0,192,48,1,128,96,1,128,192,3,1,130,6,3,254, + 6,7,252,12,15,252,22,23,69,25,1,0,30,0,16,63, + 0,48,103,128,96,67,128,96,3,0,192,6,0,192,31,1, + 128,7,131,0,3,131,0,3,134,24,3,140,56,195,140,120, + 231,24,248,126,49,248,0,49,184,0,99,56,0,199,56,0, + 198,56,1,143,252,3,143,252,3,0,56,6,0,56,6,0, + 56,12,23,46,16,2,249,7,0,15,128,15,128,15,128,7, + 0,0,0,0,0,0,0,2,0,2,0,6,0,12,0,28, + 0,60,0,120,0,120,0,248,96,248,240,248,240,248,112,120, + 112,60,224,31,192,21,30,90,24,1,0,6,0,0,7,0, + 0,3,128,0,1,192,0,0,96,0,0,0,0,0,32,0, + 0,32,0,0,96,0,0,112,0,0,240,0,0,248,0,0, + 248,0,1,248,0,1,124,0,1,124,0,3,62,0,2,62, + 0,6,62,0,6,31,0,4,31,0,12,15,0,15,255,128, + 24,15,128,24,7,192,16,7,192,48,3,224,48,3,224,112, + 7,240,252,31,248,21,30,90,24,1,0,0,3,0,0,7, + 0,0,14,0,0,28,0,0,48,0,0,64,0,0,0,0, + 0,32,0,0,96,0,0,112,0,0,240,0,0,248,0,0, + 248,0,1,248,0,1,124,0,1,124,0,3,62,0,2,62, + 0,6,62,0,6,31,0,4,31,0,12,15,0,15,255,128, + 24,15,128,24,7,192,16,7,192,48,3,224,48,3,224,112, + 7,240,252,31,248,21,30,90,24,1,0,0,96,0,0,240, + 0,1,248,0,1,152,0,3,12,0,2,4,0,0,0,0, + 0,32,0,0,96,0,0,112,0,0,240,0,0,248,0,0, + 248,0,1,248,0,1,124,0,1,124,0,3,62,0,2,62, + 0,6,62,0,6,31,0,4,31,0,12,15,0,15,255,128, + 24,15,128,24,7,192,16,7,192,48,3,224,48,3,224,112, + 7,240,252,31,248,21,29,87,24,1,0,0,194,0,1,246, + 0,3,124,0,2,24,0,0,0,0,0,0,0,0,32,0, + 0,96,0,0,112,0,0,240,0,0,248,0,0,248,0,1, + 248,0,1,124,0,1,124,0,3,62,0,2,62,0,6,62, + 0,6,31,0,4,31,0,12,15,0,15,255,128,24,15,128, + 24,7,192,16,7,192,48,3,224,48,3,224,112,7,240,252, + 31,248,21,29,87,24,1,0,1,8,0,3,156,0,3,156, + 0,1,8,0,0,0,0,0,0,0,0,32,0,0,96,0, + 0,112,0,0,240,0,0,248,0,0,248,0,1,248,0,1, + 124,0,1,124,0,3,62,0,2,62,0,6,62,0,6,31, + 0,4,31,0,12,15,0,15,255,128,24,15,128,24,7,192, + 16,7,192,48,3,224,48,3,224,112,7,240,252,31,248,21, + 30,90,24,1,0,0,224,0,1,176,0,3,24,0,2,8, + 0,3,24,0,1,176,0,0,224,0,0,0,0,0,96,0, + 0,112,0,0,240,0,0,248,0,0,248,0,1,248,0,1, + 124,0,1,124,0,3,62,0,2,62,0,6,62,0,6,31, + 0,4,31,0,12,15,0,15,255,128,24,15,128,24,7,192, + 16,7,192,48,3,224,48,3,224,112,7,240,252,31,248,32, + 23,92,33,0,0,3,255,255,252,0,255,255,252,0,99,224, + 28,0,99,224,12,0,195,224,12,0,195,224,4,1,131,224, + 4,1,131,224,128,3,3,224,128,3,3,225,128,2,3,227, + 128,7,255,255,128,7,255,227,128,12,3,225,128,12,3,224, + 128,24,3,224,128,24,3,224,1,56,3,224,3,48,3,224, + 6,112,3,224,14,112,3,224,62,248,7,255,252,254,31,255, + 252,19,30,90,24,2,249,1,252,32,7,255,96,15,7,224, + 30,1,224,60,0,224,124,0,96,124,0,96,248,0,32,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,0,0,124,0,0,124,0,0,60,0,32, + 30,0,96,15,129,192,3,255,128,0,254,0,0,24,0,0, + 48,0,0,112,0,0,56,0,3,24,0,3,184,0,1,240, + 0,21,30,90,22,0,0,6,0,0,7,0,0,3,128,0, + 1,192,0,0,96,0,0,48,0,0,0,0,255,255,224,63, + 255,224,31,0,224,31,0,96,31,0,96,31,0,32,31,0, + 32,31,4,0,31,4,0,31,12,0,31,28,0,31,252,0, + 31,28,0,31,12,0,31,4,0,31,4,0,31,0,8,31, + 0,24,31,0,48,31,0,112,31,1,240,63,255,224,255,255, + 224,21,30,90,22,0,0,0,1,128,0,3,128,0,7,0, + 0,14,0,0,24,0,0,48,0,0,0,0,255,255,224,63, + 255,224,31,0,224,31,0,96,31,0,96,31,0,32,31,0, + 32,31,4,0,31,4,0,31,12,0,31,28,0,31,252,0, + 31,28,0,31,12,0,31,4,0,31,4,0,31,0,8,31, + 0,24,31,0,48,31,0,112,31,1,240,63,255,224,255,255, + 224,21,30,90,22,0,0,0,48,0,0,120,0,0,252,0, + 0,204,0,1,134,0,1,2,0,0,0,0,255,255,224,63, + 255,224,31,0,224,31,0,96,31,0,96,31,0,32,31,0, + 32,31,4,0,31,4,0,31,12,0,31,28,0,31,252,0, + 31,28,0,31,12,0,31,4,0,31,4,0,31,0,8,31, + 0,24,31,0,48,31,0,112,31,1,240,63,255,224,255,255, + 224,21,29,87,22,0,0,0,132,0,1,206,0,1,206,0, + 0,132,0,0,0,0,0,0,0,255,255,224,63,255,224,31, + 0,224,31,0,96,31,0,96,31,0,32,31,0,32,31,4, + 0,31,4,0,31,12,0,31,28,0,31,252,0,31,28,0, + 31,12,0,31,4,0,31,4,0,31,0,8,31,0,24,31, + 0,48,31,0,112,31,1,240,63,255,224,255,255,224,11,30, + 60,13,1,0,192,0,224,0,112,0,56,0,12,0,6,0, + 0,0,255,224,63,128,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,63,128,255,224, + 12,30,60,13,1,0,0,48,0,112,0,224,1,192,3,0, + 6,0,0,0,255,224,63,128,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,63,128, + 255,224,11,30,60,13,1,0,6,0,15,0,31,128,25,128, + 48,192,32,64,0,0,255,224,63,128,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 63,128,255,224,11,29,58,13,1,0,16,128,57,192,57,192, + 16,128,0,0,0,0,255,224,63,128,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 31,0,31,0,31,0,31,0,31,0,31,0,31,0,31,0, + 63,128,255,224,22,23,69,24,0,0,255,254,0,63,15,128, + 31,3,224,31,1,240,31,1,240,31,0,248,31,0,248,31, + 0,252,31,0,252,31,0,252,255,240,124,255,240,124,255,240, + 124,31,0,124,31,0,252,31,0,248,31,0,248,31,0,248, + 31,1,240,31,1,224,31,3,192,63,15,128,127,254,0,22, + 29,87,24,1,0,0,97,0,0,251,0,1,190,0,1,12, + 0,0,0,0,0,0,0,254,1,252,127,0,112,63,128,32, + 31,128,32,31,192,32,31,224,32,23,240,32,19,248,32,17, + 248,32,17,252,32,16,254,32,16,127,32,16,63,32,16,31, + 160,16,31,224,16,15,224,16,7,224,16,3,224,16,3,224, + 16,1,224,16,0,224,56,0,96,254,0,32,21,30,90,25, + 2,0,6,0,0,7,0,0,3,128,0,1,192,0,0,96, + 0,0,48,0,0,0,0,1,252,0,7,255,0,15,143,128, + 30,3,192,60,1,224,124,1,240,120,0,240,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,120,0,240,124,1,240,60,1,224, + 30,3,192,15,143,128,7,255,0,1,252,0,21,30,90,25, + 2,0,0,3,128,0,7,0,0,14,0,0,24,0,0,48, + 0,0,96,0,0,0,0,1,252,0,7,255,0,15,143,128, + 30,3,192,60,1,224,124,1,240,120,0,240,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,120,0,240,124,1,240,60,1,224, + 30,3,192,15,143,128,7,255,0,1,252,0,21,30,90,25, + 2,0,0,48,0,0,120,0,0,252,0,0,204,0,1,134, + 0,1,2,0,0,0,0,1,252,0,7,255,0,15,143,128, + 30,3,192,60,1,224,124,1,240,120,0,240,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,120,0,240,124,1,240,60,1,224, + 30,3,192,15,143,128,7,255,0,1,252,0,21,29,87,25, + 2,0,0,194,0,1,246,0,3,124,0,2,24,0,0,0, + 0,0,0,0,1,252,0,7,255,0,15,143,128,30,3,192, + 60,1,224,124,1,240,120,0,240,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,120,0,240,124,1,240,60,1,224,30,3,192, + 15,143,128,7,255,0,1,252,0,21,29,87,25,2,0,0, + 132,0,1,206,0,1,206,0,0,132,0,0,0,0,0,0, + 0,1,252,0,7,255,0,15,143,128,30,3,192,60,1,224, + 124,1,240,120,0,240,248,0,248,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,120,0,240,124,1,240,60,1,224,30,3,192,15,143,128, + 7,255,0,1,252,0,15,16,32,19,2,0,64,4,224,14, + 240,30,120,60,60,120,30,240,15,224,7,192,7,192,15,224, + 30,240,60,120,120,60,240,30,224,14,64,4,21,27,81,26, + 2,254,0,0,48,0,0,96,1,252,64,7,143,192,14,3, + 128,30,1,192,60,3,224,124,6,240,120,4,240,248,12,248, + 248,24,248,248,24,248,248,48,248,248,32,248,248,96,248,248, + 192,248,248,128,248,249,128,248,123,0,240,126,1,240,62,1, + 224,28,3,192,14,7,128,31,254,0,17,248,0,48,0,0, + 96,0,0,23,30,90,24,0,0,0,192,0,0,224,0,0, + 112,0,0,56,0,0,12,0,0,2,0,0,0,0,255,224, + 254,63,128,56,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,48,15,128,48,15,128,96,7,192,192,3,255,128, + 0,254,0,23,30,90,24,0,0,0,0,192,0,1,192,0, + 3,128,0,7,0,0,12,0,0,16,0,0,0,0,255,224, + 254,63,128,56,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,48,15,128,48,15,128,96,7,192,192,3,255,128, + 0,254,0,23,30,90,24,0,0,0,12,0,0,30,0,0, + 63,0,0,51,0,0,97,128,0,64,128,0,0,0,255,224, + 254,63,128,56,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,31,0,48,15,128,48,15,128,96,7,192,192,3,255,128, + 0,254,0,23,29,87,24,0,0,0,33,0,0,115,128,0, + 115,128,0,33,0,0,0,0,0,0,0,255,224,254,63,128, + 56,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 48,15,128,48,15,128,96,7,192,192,3,255,128,0,254,0, + 22,30,90,24,1,0,0,0,192,0,1,192,0,3,128,0, + 7,0,0,12,0,0,16,0,0,0,0,255,195,252,127,0, + 240,63,0,96,63,0,96,31,128,192,31,128,128,15,193,128, + 15,195,0,7,227,0,3,230,0,3,244,0,1,252,0,1, + 248,0,0,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,1,252,0,7,255,0, + 19,23,69,20,0,0,255,224,0,63,128,0,31,0,0,31, + 0,0,31,254,0,31,15,128,31,7,192,31,7,224,31,3, + 224,31,3,224,31,3,224,31,3,224,31,7,224,31,7,192, + 31,31,128,31,254,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,63,128,0,255,224,0,17,23,69,19,0, + 0,3,240,0,14,60,0,30,62,0,28,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,28,0,60,56,0,60, + 224,0,60,60,0,60,30,0,60,15,0,60,15,0,60,15, + 128,60,15,128,60,15,128,60,15,128,60,15,0,60,15,0, + 60,30,0,252,124,0,14,23,46,16,1,0,48,0,56,0, + 28,0,14,0,3,0,0,128,0,0,31,128,49,224,112,240, + 120,240,120,240,48,240,1,240,7,240,28,240,56,240,120,240, + 240,240,249,240,255,244,126,252,60,120,14,23,46,16,1,0, + 0,48,0,112,0,224,1,192,3,0,4,0,0,0,31,128, + 49,224,112,240,120,240,120,240,48,240,1,240,7,240,28,240, + 56,240,120,240,240,240,249,240,255,244,126,252,60,120,14,23, + 46,16,1,0,3,0,7,128,15,192,12,192,24,96,16,32, + 0,0,31,128,49,224,112,240,120,240,120,240,48,240,1,240, + 7,240,28,240,56,240,120,240,240,240,249,240,255,244,126,252, + 60,120,14,22,44,16,1,0,12,32,31,96,55,192,33,128, + 0,0,0,0,31,128,49,224,112,240,120,240,120,240,48,240, + 1,240,7,240,28,240,56,240,120,240,240,240,249,240,255,244, + 126,252,60,120,14,22,44,16,1,0,8,64,28,224,28,224, + 8,64,0,0,0,0,31,128,49,224,112,240,120,240,120,240, + 48,240,1,240,7,240,28,240,56,240,120,240,240,240,249,240, + 255,244,126,252,60,120,14,25,50,16,1,0,7,0,13,128, + 24,192,16,64,24,192,13,128,7,0,0,0,0,0,31,128, + 49,224,112,240,120,240,120,240,48,240,1,240,7,240,28,240, + 56,240,120,240,240,240,249,240,255,244,126,252,60,120,21,16, + 48,24,1,0,31,135,192,49,238,224,112,252,112,120,248,112, + 120,248,56,48,248,56,1,248,56,7,255,248,28,248,0,56, + 248,0,120,252,0,248,252,8,248,254,24,255,255,240,126,63, + 224,60,15,192,13,23,46,15,1,249,7,224,30,240,60,120, + 120,120,120,48,240,0,240,0,240,0,240,0,240,0,248,0, + 120,0,120,0,60,48,31,224,15,192,3,0,6,0,6,0, + 3,128,49,128,59,128,31,0,14,23,46,15,0,0,48,0, + 56,0,28,0,14,0,3,0,0,128,0,0,7,192,30,240, + 60,112,120,56,120,60,248,60,248,60,255,252,248,0,248,0, + 248,0,120,0,124,0,62,24,31,240,7,224,14,23,46,15, + 0,0,0,24,0,56,0,112,0,224,1,128,2,0,0,0, + 7,192,30,240,60,112,120,56,120,60,248,60,248,60,255,252, + 248,0,248,0,248,0,120,0,124,0,62,24,31,240,7,224, + 14,23,46,15,0,0,3,0,7,128,15,192,12,192,24,96, + 16,32,0,0,7,192,30,240,60,112,120,56,120,60,248,60, + 248,60,255,252,248,0,248,0,248,0,120,0,124,0,62,24, + 31,240,7,224,14,22,44,15,0,0,4,32,14,112,14,112, + 4,32,0,0,0,0,7,192,30,240,60,112,120,56,120,60, + 248,60,248,60,255,252,248,0,248,0,248,0,120,0,124,0, + 62,24,31,240,7,224,8,23,23,9,0,0,192,224,112,56, + 12,2,0,252,124,60,60,60,60,60,60,60,60,60,60,60, + 60,126,255,8,23,23,9,0,0,3,7,14,28,48,64,0, + 252,124,60,60,60,60,60,60,60,60,60,60,60,60,126,255, + 8,23,23,9,0,0,24,60,126,102,195,129,0,252,124,60, + 60,60,60,60,60,60,60,60,60,60,60,126,255,8,22,22, + 9,0,0,66,231,231,66,0,0,252,124,60,60,60,60,60, + 60,60,60,60,60,60,60,126,255,14,22,44,17,1,0,56, + 48,62,248,15,248,255,128,251,192,97,224,15,240,60,248,120, + 120,120,120,240,60,240,60,240,60,240,60,240,60,240,60,240, + 60,240,60,120,120,120,120,60,240,15,192,17,22,66,18,0, + 0,3,8,0,7,216,0,13,240,0,8,96,0,0,0,0, + 0,0,0,252,120,0,125,252,0,63,62,0,62,30,0,62, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,126,63,0, + 255,127,128,14,23,46,17,1,0,48,0,56,0,28,0,14, + 0,3,0,0,128,0,0,15,192,60,240,120,120,120,120,240, + 60,240,60,240,60,240,60,240,60,240,60,240,60,240,60,120, + 120,120,120,60,240,15,192,14,23,46,17,1,0,0,24,0, + 56,0,112,0,224,1,128,2,0,0,0,15,192,60,240,120, + 120,120,120,240,60,240,60,240,60,240,60,240,60,240,60,240, + 60,240,60,120,120,120,120,60,240,15,192,14,23,46,17,1, + 0,3,0,7,128,15,192,12,192,24,96,16,32,0,0,15, + 192,60,240,120,120,120,120,240,60,240,60,240,60,240,60,240, + 60,240,60,240,60,240,60,120,120,120,120,60,240,15,192,14, + 22,44,17,1,0,12,32,31,96,55,192,33,128,0,0,0, + 0,15,192,60,240,120,120,120,120,240,60,240,60,240,60,240, + 60,240,60,240,60,240,60,240,60,120,120,120,120,60,240,15, + 192,14,22,44,17,1,0,8,64,28,224,28,224,8,64,0, + 0,0,0,15,192,60,240,120,120,120,120,240,60,240,60,240, + 60,240,60,240,60,240,60,240,60,240,60,120,120,120,120,60, + 240,15,192,14,15,30,19,2,1,3,0,7,128,7,128,3, + 0,0,0,0,0,255,252,255,252,255,252,0,0,0,0,3, + 0,7,128,7,128,3,0,14,22,44,17,1,253,0,8,0, + 24,0,24,15,240,60,240,120,120,120,120,240,252,241,188,241, + 60,243,60,242,60,246,60,252,60,248,60,120,120,120,120,60, + 240,111,192,96,0,192,0,128,0,17,23,69,18,0,0,24, + 0,0,28,0,0,14,0,0,7,0,0,1,128,0,0,64, + 0,0,0,0,252,126,0,124,62,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,62,0,62,127,0,31,223, + 128,7,140,0,17,23,69,18,0,0,0,12,0,0,28,0, + 0,56,0,0,112,0,0,192,0,1,0,0,0,0,0,252, + 126,0,124,62,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,62,0,62,127,0,31,223,128,7,140,0,17, + 23,69,18,0,0,1,128,0,3,192,0,7,224,0,6,96, + 0,12,48,0,8,16,0,0,0,0,252,126,0,124,62,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,60, + 30,0,60,30,0,60,30,0,60,30,0,60,30,0,60,62, + 0,62,127,0,31,223,128,7,140,0,17,22,66,18,0,0, + 4,32,0,14,112,0,14,112,0,4,32,0,0,0,0,0, + 0,0,252,126,0,124,62,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,62,0,62,127,0,31,223,128,7, + 140,0,15,30,60,17,0,249,0,12,0,28,0,56,0,112, + 0,192,1,0,0,0,255,190,126,12,62,8,62,8,31,24, + 31,16,15,16,15,176,15,160,7,160,7,224,7,192,3,192, + 3,192,1,128,1,128,1,128,1,0,115,0,243,0,246,0, + 254,0,120,0,15,29,58,19,1,249,252,0,124,0,60,0, + 60,0,60,0,60,0,60,224,63,248,62,124,60,60,60,62, + 60,30,60,30,60,30,60,30,60,30,60,30,60,30,60,60, + 62,60,63,248,60,224,60,0,60,0,60,0,60,0,60,0, + 126,0,255,0,15,29,58,17,0,249,4,32,14,112,14,112, + 4,32,0,0,0,0,255,190,126,12,62,8,62,8,31,24, + 31,16,15,16,15,176,15,160,7,160,7,224,7,192,3,192, + 3,192,1,128,1,128,1,128,1,0,115,0,243,0,246,0, + 254,0,120,0}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--34-240-100-100-P-177-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 23 + Calculated Max Values w=16 h=25 x= 2 y= 9 dx=19 dy= 0 ascent=25 len=50 + Font Bounding box w=38 h=49 x=-5 y=-12 + Calculated Min Values x= 0 y=-6 dx= 0 dy= 0 + Pure Font ascent =23 descent= 0 + X Font ascent =23 descent= 0 + Max Font ascent =25 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB24n[701] U8G_SECTION(".progmem.u8g_font_timB24n") = { + 0,38,49,251,244,23,0,0,0,0,42,57,0,25,250,23, + 0,13,14,28,17,1,9,3,0,7,0,7,0,231,56,242, + 120,122,240,15,128,15,128,122,240,242,120,231,56,7,0,7, + 0,6,0,15,15,30,19,2,0,3,128,3,128,3,128,3, + 128,3,128,3,128,255,254,255,254,255,254,3,128,3,128,3, + 128,3,128,3,128,3,128,6,11,11,8,1,250,56,124,124, + 124,60,12,8,24,48,96,192,8,4,4,11,1,6,255,255, + 255,255,5,5,5,8,1,0,112,248,248,248,112,9,25,50, + 9,0,0,1,128,1,128,1,0,3,0,3,0,3,0,6, + 0,6,0,6,0,4,0,12,0,12,0,12,0,24,0,24, + 0,24,0,48,0,48,0,48,0,48,0,96,0,96,0,96, + 0,192,0,192,0,14,23,46,16,1,0,7,128,31,224,28, + 224,56,112,120,112,120,120,120,120,248,124,248,124,248,124,248, + 124,248,124,248,124,248,124,248,124,248,124,120,120,120,120,120, + 120,56,112,28,224,15,192,7,128,13,23,46,16,2,0,1, + 128,7,128,31,128,255,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,31,192,255,248,16,23,46, + 16,0,0,3,192,15,240,31,248,63,248,48,252,96,124,64, + 124,0,124,0,120,0,120,0,120,0,240,0,224,1,192,1, + 128,3,0,7,1,14,3,28,6,63,254,127,254,255,252,255, + 252,14,23,46,16,1,0,7,192,31,240,63,240,48,248,96, + 120,64,120,0,120,0,112,0,192,3,224,15,240,15,248,3, + 248,0,252,0,124,0,60,0,60,0,60,96,56,240,56,248, + 112,127,192,31,0,14,23,46,16,1,0,0,112,0,240,0, + 240,1,240,3,240,6,240,6,240,12,240,24,240,24,240,48, + 240,96,240,96,240,192,240,255,252,255,252,255,252,255,252,0, + 240,0,240,0,240,0,240,0,240,13,23,46,16,1,0,31, + 248,31,248,31,248,31,248,48,0,48,0,32,0,62,0,127, + 128,127,224,127,240,127,240,3,248,0,248,0,120,0,56,0, + 56,0,56,96,48,240,48,248,96,127,192,31,0,14,23,46, + 16,1,0,0,28,0,240,3,192,7,128,15,0,30,0,62, + 0,60,0,124,0,127,224,253,240,248,248,248,120,248,124,248, + 124,248,124,248,124,120,124,120,120,120,120,56,112,28,224,15, + 192,13,23,46,16,2,0,127,248,127,248,255,248,255,248,192, + 48,128,112,128,112,0,96,0,224,0,224,0,192,1,192,1, + 192,3,128,3,128,3,128,7,0,7,0,7,0,14,0,14, + 0,14,0,28,0,14,23,46,16,1,0,15,224,62,240,60, + 120,120,120,120,56,120,56,124,56,126,112,63,224,63,128,31, + 192,15,224,63,240,113,248,112,252,224,124,224,60,224,60,224, + 60,240,56,120,120,127,240,31,192,14,23,46,16,1,0,15, + 192,28,224,56,112,120,120,120,120,248,120,248,124,248,124,248, + 124,248,124,120,124,124,124,62,252,31,248,0,248,0,240,1, + 240,1,224,3,192,7,128,15,0,60,0,224,0}; +/* + Fontname: -Adobe-Times-Bold-R-Normal--34-240-100-100-P-177-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 23, '1' Height: 23 + Calculated Max Values w=32 h=30 x= 4 y=17 dx=33 dy= 0 ascent=26 len=108 + Font Bounding box w=38 h=49 x=-5 y=-12 + Calculated Min Values x=-2 y=-7 dx= 0 dy= 0 + Pure Font ascent =23 descent=-7 + X Font ascent =23 descent=-7 + Max Font ascent =26 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timB24r[5003] U8G_SECTION(".progmem.u8g_font_timB24r") = { + 0,38,49,251,244,23,5,149,13,202,32,127,249,26,249,23, + 249,0,0,0,8,0,1,5,23,23,11,3,0,112,248,248, + 248,248,248,248,112,112,112,112,32,32,32,32,0,0,0,112, + 248,248,248,112,11,11,22,19,2,12,96,192,241,224,241,224, + 241,224,241,224,241,224,241,224,96,192,96,192,96,192,96,192, + 16,23,46,17,0,0,3,12,3,12,7,28,7,28,6,24, + 6,24,127,255,127,255,14,56,12,48,12,48,12,48,12,48, + 28,112,255,254,255,254,24,96,24,96,24,96,56,224,56,224, + 48,192,48,192,15,28,56,16,1,253,3,0,3,0,15,232, + 63,248,115,56,99,24,227,8,227,8,243,0,251,0,127,0, + 127,128,63,224,15,240,3,248,3,252,3,124,131,62,131,30, + 131,30,195,28,195,60,243,120,255,224,131,0,3,0,3,0, + 3,0,24,23,69,33,4,0,7,128,32,15,192,224,30,127, + 192,60,32,192,124,33,128,120,33,128,248,99,0,240,71,0, + 240,198,0,240,206,0,241,140,60,127,24,126,60,25,243,0, + 49,225,0,51,193,0,99,193,0,231,195,0,199,130,1,199, + 134,1,135,134,3,3,140,3,3,248,6,1,224,22,23,69, + 28,2,0,1,240,0,3,188,0,7,30,0,7,14,0,15, + 14,0,15,14,0,15,140,0,7,216,0,7,240,0,3,224, + 252,7,240,112,29,240,48,57,248,96,112,252,64,240,252,192, + 240,127,128,248,63,0,248,31,128,252,31,192,254,63,228,127, + 243,252,127,193,252,31,0,120,4,11,11,9,2,12,96,240, + 240,240,240,240,240,96,96,96,96,8,29,29,11,2,250,3, + 6,12,24,24,48,48,112,96,224,224,224,224,224,224,224,224, + 224,224,224,96,112,48,48,24,24,12,6,3,8,29,29,11, + 0,250,192,96,48,24,24,12,12,14,6,7,7,7,7,7, + 7,7,7,7,7,7,6,14,12,12,24,24,48,96,192,13, + 14,28,17,1,9,3,0,7,0,7,0,231,56,242,120,122, + 240,15,128,15,128,122,240,242,120,231,56,7,0,7,0,6, + 0,15,15,30,19,2,0,3,128,3,128,3,128,3,128,3, + 128,3,128,255,254,255,254,255,254,3,128,3,128,3,128,3, + 128,3,128,3,128,6,11,11,8,1,250,56,124,124,124,60, + 12,8,24,48,96,192,8,4,4,11,1,6,255,255,255,255, + 5,5,5,8,1,0,112,248,248,248,112,9,25,50,9,0, + 0,1,128,1,128,1,0,3,0,3,0,3,0,6,0,6, + 0,6,0,4,0,12,0,12,0,12,0,24,0,24,0,24, + 0,48,0,48,0,48,0,48,0,96,0,96,0,96,0,192, + 0,192,0,14,23,46,16,1,0,7,128,31,224,28,224,56, + 112,120,112,120,120,120,120,248,124,248,124,248,124,248,124,248, + 124,248,124,248,124,248,124,248,124,120,120,120,120,120,120,56, + 112,28,224,15,192,7,128,13,23,46,16,2,0,1,128,7, + 128,31,128,255,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,15,128,15,128,15,128,15,128,15, + 128,15,128,15,128,15,128,31,192,255,248,16,23,46,16,0, + 0,3,192,15,240,31,248,63,248,48,252,96,124,64,124,0, + 124,0,120,0,120,0,120,0,240,0,224,1,192,1,128,3, + 0,7,1,14,3,28,6,63,254,127,254,255,252,255,252,14, + 23,46,16,1,0,7,192,31,240,63,240,48,248,96,120,64, + 120,0,120,0,112,0,192,3,224,15,240,15,248,3,248,0, + 252,0,124,0,60,0,60,0,60,96,56,240,56,248,112,127, + 192,31,0,14,23,46,16,1,0,0,112,0,240,0,240,1, + 240,3,240,6,240,6,240,12,240,24,240,24,240,48,240,96, + 240,96,240,192,240,255,252,255,252,255,252,255,252,0,240,0, + 240,0,240,0,240,0,240,13,23,46,16,1,0,31,248,31, + 248,31,248,31,248,48,0,48,0,32,0,62,0,127,128,127, + 224,127,240,127,240,3,248,0,248,0,120,0,56,0,56,0, + 56,96,48,240,48,248,96,127,192,31,0,14,23,46,16,1, + 0,0,28,0,240,3,192,7,128,15,0,30,0,62,0,60, + 0,124,0,127,224,253,240,248,248,248,120,248,124,248,124,248, + 124,248,124,120,124,120,120,120,120,56,112,28,224,15,192,13, + 23,46,16,2,0,127,248,127,248,255,248,255,248,192,48,128, + 112,128,112,0,96,0,224,0,224,0,192,1,192,1,192,3, + 128,3,128,3,128,7,0,7,0,7,0,14,0,14,0,14, + 0,28,0,14,23,46,16,1,0,15,224,62,240,60,120,120, + 120,120,56,120,56,124,56,126,112,63,224,63,128,31,192,15, + 224,63,240,113,248,112,252,224,124,224,60,224,60,224,60,240, + 56,120,120,127,240,31,192,14,23,46,16,1,0,15,192,28, + 224,56,112,120,120,120,120,248,120,248,124,248,124,248,124,248, + 124,120,124,124,124,62,252,31,248,0,248,0,240,1,240,1, + 224,3,192,7,128,15,0,60,0,224,0,5,16,16,11,3, + 0,112,248,248,248,112,0,0,0,0,0,0,112,248,248,248, + 112,6,22,22,11,2,250,56,124,124,124,56,0,0,0,0, + 0,0,56,124,124,124,60,12,8,24,48,96,192,16,15,30, + 19,1,0,0,3,0,15,0,127,1,252,15,224,63,128,252, + 0,240,0,252,0,63,128,15,224,1,252,0,127,0,15,0, + 3,15,10,20,19,2,3,255,254,255,254,255,254,0,0,0, + 0,0,0,0,0,255,254,255,254,255,254,16,15,30,19,2, + 0,192,0,240,0,254,0,63,128,7,240,1,252,0,63,0, + 15,0,63,1,252,7,240,63,128,254,0,240,0,192,0,12, + 23,46,16,2,0,63,0,115,192,225,224,225,240,241,240,241, + 240,97,240,1,224,1,224,3,192,3,128,3,0,6,0,4, + 0,4,0,0,0,0,0,0,0,14,0,31,0,31,0,31, + 0,14,0,26,27,108,31,2,251,0,31,224,0,0,252,60, + 0,3,224,14,0,7,128,3,0,15,0,1,0,30,0,1, + 128,62,15,56,128,60,31,248,192,124,124,248,64,120,120,120, + 64,248,248,240,64,248,240,240,64,241,240,240,64,241,240,240, + 64,241,224,240,192,241,225,224,128,241,225,225,128,241,227,227, + 0,113,243,227,0,120,254,254,0,120,120,120,0,60,0,0, + 0,28,0,0,0,14,0,1,128,7,128,7,0,1,224,60, + 0,0,63,224,0,21,23,69,24,1,0,0,32,0,0,96, + 0,0,112,0,0,240,0,0,248,0,0,248,0,1,248,0, + 1,124,0,1,124,0,3,62,0,2,62,0,6,62,0,6, + 31,0,4,31,0,12,15,0,15,255,128,24,15,128,24,7, + 192,16,7,192,48,3,224,48,3,224,112,7,240,252,31,248, + 19,23,69,22,1,0,255,252,0,63,31,0,31,15,128,31, + 7,192,31,7,192,31,7,192,31,7,192,31,7,192,31,7, + 128,31,15,128,31,62,0,31,252,0,31,15,128,31,7,192, + 31,7,224,31,3,224,31,3,224,31,3,224,31,3,224,31, + 3,192,31,7,192,63,15,0,255,252,0,19,23,69,24,2, + 0,1,252,32,7,255,96,15,7,224,30,1,224,60,0,224, + 124,0,96,124,0,96,248,0,32,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,0,248,0, + 0,124,0,0,124,0,0,60,0,32,30,0,96,15,129,192, + 3,255,128,0,254,0,22,23,69,24,0,0,255,252,0,63, + 255,128,31,7,224,31,1,240,31,1,240,31,0,248,31,0, + 248,31,0,252,31,0,124,31,0,124,31,0,124,31,0,124, + 31,0,124,31,0,124,31,0,124,31,0,248,31,0,248,31, + 0,248,31,1,240,31,1,224,31,7,192,63,255,0,255,252, + 0,21,23,69,22,0,0,255,255,224,63,255,224,31,0,224, + 31,0,96,31,0,96,31,0,32,31,0,32,31,4,0,31, + 4,0,31,12,0,31,28,0,31,252,0,31,28,0,31,12, + 0,31,4,0,31,4,0,31,0,8,31,0,24,31,0,48, + 31,0,112,31,1,240,63,255,224,255,255,224,19,23,69,20, + 0,0,255,255,224,63,255,224,31,0,224,31,0,96,31,0, + 96,31,0,32,31,0,32,31,4,0,31,4,0,31,12,0, + 31,28,0,31,252,0,31,28,0,31,12,0,31,4,0,31, + 4,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,63,128,0,255,224,0,22,23,69,25,2,0,1,252,32, + 7,255,96,15,7,224,30,1,224,60,0,224,124,0,96,124, + 0,96,248,0,32,248,0,0,248,0,0,248,0,0,248,0, + 0,248,0,0,248,31,252,248,7,240,248,3,224,124,3,224, + 124,3,224,60,3,224,62,3,224,30,7,224,15,143,224,3, + 255,0,24,23,69,25,0,0,255,231,255,63,129,252,31,0, + 248,31,0,248,31,0,248,31,0,248,31,0,248,31,0,248, + 31,0,248,31,0,248,31,255,248,31,255,248,31,0,248,31, + 0,248,31,0,248,31,0,248,31,0,248,31,0,248,31,0, + 248,31,0,248,31,0,248,63,129,252,255,231,255,11,23,46, + 13,1,0,255,224,63,128,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,31,0,31, + 0,31,0,31,0,31,0,31,0,31,0,31,0,63,128,255, + 224,15,26,52,16,0,253,15,254,3,248,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,1,240,1, + 240,1,240,1,240,1,240,1,240,1,240,1,240,97,240,241, + 240,241,240,243,224,227,224,127,192,31,0,24,23,69,25,1, + 0,255,207,252,127,3,224,62,1,192,62,3,128,62,7,0, + 62,14,0,62,28,0,62,56,0,62,112,0,62,224,0,63, + 240,0,63,248,0,63,252,0,62,254,0,62,127,0,62,63, + 128,62,31,192,62,15,224,62,7,240,62,3,248,62,1,252, + 127,0,254,255,195,255,20,23,69,22,1,0,255,224,0,63, + 128,0,31,0,0,31,0,0,31,0,0,31,0,0,31,0, + 0,31,0,0,31,0,0,31,0,0,31,0,0,31,0,0, + 31,0,0,31,0,0,31,0,0,31,0,0,31,0,16,31, + 0,48,31,0,96,31,0,224,31,129,224,63,255,192,255,255, + 192,28,23,92,31,1,0,255,0,15,240,63,0,31,192,31, + 128,31,128,31,128,63,128,23,192,63,128,23,192,47,128,23, + 192,111,128,19,224,79,128,19,224,207,128,19,224,207,128,17, + 240,143,128,17,241,143,128,16,249,15,128,16,251,15,128,16, + 251,15,128,16,126,15,128,16,126,15,128,16,124,15,128,16, + 60,15,128,16,60,15,128,16,24,15,128,56,24,31,192,254, + 24,63,240,22,23,69,24,1,0,254,1,252,127,0,112,63, + 128,32,31,128,32,31,192,32,31,224,32,23,240,32,19,248, + 32,17,248,32,17,252,32,16,254,32,16,127,32,16,63,32, + 16,31,160,16,31,224,16,15,224,16,7,224,16,3,224,16, + 3,224,16,1,224,16,0,224,56,0,96,254,0,32,21,23, + 69,25,2,0,1,252,0,7,255,0,15,143,128,30,3,192, + 60,1,224,124,1,240,120,0,240,248,0,248,248,0,248,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,120,0,240,124,1,240,60,1,224,30,3,192, + 15,143,128,7,255,0,1,252,0,19,23,69,20,0,0,255, + 252,0,63,31,128,31,15,192,31,7,192,31,7,224,31,3, + 224,31,3,224,31,3,224,31,3,224,31,7,192,31,7,192, + 31,31,128,31,254,0,31,0,0,31,0,0,31,0,0,31, + 0,0,31,0,0,31,0,0,31,0,0,31,0,0,63,128, + 0,255,224,0,22,27,81,26,2,252,1,252,0,7,255,0, + 15,143,128,30,3,192,60,1,224,124,1,240,120,0,240,248, + 0,248,248,0,248,248,0,248,248,0,248,248,0,248,248,0, + 248,248,0,248,248,0,248,248,0,248,248,0,248,124,1,240, + 124,1,240,62,3,224,31,7,192,7,255,0,1,252,0,0, + 254,0,0,127,132,0,31,248,0,7,224,22,23,69,24,1, + 0,255,252,0,63,31,128,31,7,192,31,7,224,31,3,224, + 31,3,224,31,3,224,31,3,224,31,7,224,31,7,192,31, + 31,128,31,252,0,31,126,0,31,62,0,31,63,0,31,31, + 128,31,31,128,31,15,192,31,7,224,31,7,224,31,3,240, + 63,129,248,255,225,252,15,23,46,18,1,0,15,196,56,124, + 112,60,112,28,240,12,240,12,248,4,252,0,255,0,127,192, + 63,240,31,248,15,252,3,252,1,254,128,126,128,62,192,30, + 192,30,224,28,240,28,248,56,143,224,19,23,69,22,1,0, + 255,255,224,249,243,224,225,240,224,193,240,96,129,240,32,129, + 240,32,129,240,32,1,240,0,1,240,0,1,240,0,1,240, + 0,1,240,0,1,240,0,1,240,0,1,240,0,1,240,0, + 1,240,0,1,240,0,1,240,0,1,240,0,1,240,0,3, + 248,0,15,254,0,23,23,69,24,0,0,255,224,254,63,128, + 56,31,0,16,31,0,16,31,0,16,31,0,16,31,0,16, + 31,0,16,31,0,16,31,0,16,31,0,16,31,0,16,31, + 0,16,31,0,16,31,0,16,31,0,16,31,0,16,31,0, + 16,15,128,48,15,128,96,7,192,192,3,255,128,0,254,0, + 22,23,69,24,1,0,255,195,252,127,0,240,62,0,96,63, + 0,64,31,0,192,31,128,192,15,128,128,15,129,128,15,193, + 0,7,193,0,7,195,0,3,226,0,3,230,0,3,246,0, + 1,244,0,1,252,0,0,248,0,0,248,0,0,248,0,0, + 112,0,0,112,0,0,32,0,0,32,0,32,23,92,33,0, + 0,255,239,255,63,127,3,248,14,63,1,248,12,31,1,248, + 12,31,1,248,8,31,129,252,24,15,129,252,24,15,129,124, + 16,15,195,124,48,7,194,126,48,7,198,62,32,7,230,62, + 96,3,228,62,96,3,236,31,64,3,248,31,192,1,248,31, + 192,1,248,15,128,1,240,15,128,0,240,15,128,0,224,7, + 0,0,224,7,0,0,224,7,0,0,64,2,0,21,23,69, + 24,1,0,255,207,224,127,3,0,63,2,0,31,134,0,31, + 132,0,15,204,0,15,200,0,7,248,0,3,240,0,3,240, + 0,1,248,0,0,248,0,1,252,0,1,124,0,3,62,0, + 2,63,0,6,31,0,4,31,128,12,15,192,8,15,192,24, + 7,224,56,7,240,254,63,248,22,23,69,24,1,0,255,195, + 252,127,0,240,63,0,96,63,0,96,31,128,192,31,128,128, + 15,193,128,15,195,0,7,227,0,3,230,0,3,244,0,1, + 252,0,1,248,0,0,248,0,0,248,0,0,248,0,0,248, + 0,0,248,0,0,248,0,0,248,0,0,248,0,1,252,0, + 7,255,0,19,23,69,22,1,0,63,255,192,126,15,128,120, + 31,128,112,31,0,96,63,0,64,126,0,0,126,0,0,252, + 0,0,252,0,1,248,0,1,240,0,3,240,0,3,224,0, + 7,224,0,7,192,0,15,192,32,31,128,32,31,128,96,63, + 0,96,63,0,224,126,1,224,126,7,192,255,255,192,7,28, + 28,11,2,251,254,240,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,240,254, + 8,26,26,9,0,0,128,192,192,192,96,96,96,96,48,48, + 48,24,24,24,24,12,12,12,4,6,6,6,3,3,3,3, + 7,28,28,11,1,251,254,30,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,14,14,14,14,14, + 30,254,11,13,26,19,4,10,14,0,14,0,31,0,31,0, + 27,0,59,128,59,128,113,192,113,192,97,192,224,224,224,224, + 192,96,16,3,6,16,0,251,255,255,255,255,255,255,7,6, + 6,11,1,17,192,224,112,56,12,2,14,16,32,16,1,0, + 31,128,49,224,112,240,120,240,120,240,48,240,1,240,7,240, + 28,240,56,240,120,240,240,240,249,240,255,244,126,252,60,120, + 17,22,66,18,0,0,252,0,0,124,0,0,60,0,0,60, + 0,0,60,0,0,60,0,0,60,120,0,61,254,0,63,254, + 0,62,31,0,60,31,0,60,15,128,60,15,128,60,15,128, + 60,15,128,60,15,128,60,15,128,60,15,0,60,31,0,62, + 62,0,55,252,0,33,240,0,14,16,32,15,1,0,7,240, + 30,120,60,60,124,60,120,24,248,0,248,0,248,0,248,0, + 248,0,248,0,248,0,124,0,62,24,31,240,15,224,16,22, + 44,18,1,0,0,252,0,124,0,60,0,60,0,60,0,60, + 15,188,63,252,124,60,120,60,248,60,240,60,240,60,240,60, + 240,60,240,60,240,60,240,60,120,60,124,126,63,255,15,184, + 14,16,32,15,0,0,7,192,30,240,60,112,120,56,120,60, + 248,60,248,60,255,252,248,0,248,0,248,0,120,0,124,0, + 62,24,31,240,7,224,12,23,46,11,0,0,7,224,30,112, + 28,240,60,240,60,96,60,0,60,0,255,128,255,128,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,0, + 60,0,60,0,60,0,126,0,255,0,14,23,46,16,1,249, + 15,192,61,252,112,252,240,240,240,120,240,120,240,120,240,120, + 120,248,63,240,31,192,60,0,96,0,224,0,255,224,255,248, + 127,252,48,60,96,28,192,12,224,28,127,248,31,224,17,22, + 66,18,0,0,252,0,0,124,0,0,60,0,0,60,0,0, + 60,0,0,60,0,0,60,120,0,61,252,0,63,254,0,62, + 62,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 126,63,0,255,127,128,8,23,23,9,0,0,24,60,60,60, + 24,0,0,252,124,60,60,60,60,60,60,60,60,60,60,60, + 60,126,255,10,30,60,11,254,249,1,128,3,192,3,192,3, + 192,1,128,0,0,0,0,15,192,7,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,3,192,3,192,3, + 192,3,192,3,192,3,192,3,192,3,192,99,192,243,192,243, + 128,119,128,62,0,18,22,66,18,0,0,252,0,0,124,0, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,31,0, + 60,14,0,60,12,0,60,24,0,60,48,0,60,96,0,60, + 192,0,61,192,0,63,224,0,61,240,0,60,248,0,60,124, + 0,60,62,0,60,31,0,126,15,128,255,31,192,8,22,22, + 9,0,0,252,124,60,60,60,60,60,60,60,60,60,60,60, + 60,60,60,60,60,60,60,126,255,26,16,64,27,0,0,252, + 120,60,0,125,254,254,0,63,63,159,0,62,63,31,0,62, + 30,15,0,60,30,15,0,60,30,15,0,60,30,15,0,60, + 30,15,0,60,30,15,0,60,30,15,0,60,30,15,0,60, + 30,15,0,60,30,15,0,126,63,31,128,255,127,191,192,17, + 16,48,18,0,0,252,120,0,125,252,0,63,62,0,62,30, + 0,62,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,30,0,60,30,0,60,30,0,60,30,0,60,30,0,126, + 63,0,255,127,128,14,16,32,17,1,0,15,192,60,240,120, + 120,120,120,240,60,240,60,240,60,240,60,240,60,240,60,240, + 60,240,60,120,120,120,120,60,240,15,192,17,23,69,18,0, + 249,252,248,0,125,254,0,63,31,0,62,15,0,60,15,128, + 60,7,128,60,7,128,60,7,128,60,7,128,60,7,128,60, + 7,128,60,7,128,62,15,0,63,15,0,63,254,0,60,248, + 0,60,0,0,60,0,0,60,0,0,60,0,0,60,0,0, + 126,0,0,255,0,0,16,23,46,18,1,249,15,196,62,236, + 124,60,120,60,248,60,240,60,240,60,240,60,240,60,240,60, + 240,60,240,60,120,60,120,124,63,252,15,60,0,60,0,60, + 0,60,0,60,0,60,0,126,0,255,13,16,32,15,1,0, + 252,112,124,248,63,248,63,120,62,48,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,126,0,255,0, + 10,16,32,13,1,0,31,64,113,192,96,192,224,192,240,64, + 252,0,127,0,127,128,63,128,15,192,3,192,129,192,193,192, + 193,192,227,128,191,0,10,21,42,11,0,0,4,0,12,0, + 28,0,28,0,60,0,127,128,255,128,60,0,60,0,60,0, + 60,0,60,0,60,0,60,0,60,0,60,0,60,0,60,64, + 62,192,63,128,30,0,17,16,48,18,0,0,252,126,0,124, + 62,0,60,30,0,60,30,0,60,30,0,60,30,0,60,30, + 0,60,30,0,60,30,0,60,30,0,60,30,0,60,30,0, + 60,62,0,62,95,0,31,223,128,7,140,0,15,16,32,17, + 0,0,255,62,124,12,60,8,62,24,30,16,31,16,31,48, + 15,32,15,32,7,224,7,192,7,192,3,128,3,128,1,0, + 1,0,23,16,48,24,0,0,255,127,190,126,62,28,60,30, + 8,62,30,24,30,31,16,31,31,48,31,63,48,15,47,160, + 15,231,224,7,231,192,7,199,192,7,195,192,3,131,128,3, + 131,128,1,1,0,1,1,0,16,16,32,17,0,0,255,62, + 126,24,62,24,31,48,31,96,15,192,15,192,7,192,3,224, + 3,224,7,240,13,248,24,248,24,124,48,124,252,255,15,23, + 46,17,0,249,255,190,126,12,62,8,62,8,31,24,31,16, + 15,16,15,176,15,160,7,160,7,224,7,192,3,192,3,192, + 1,128,1,128,1,128,1,0,115,0,243,0,246,0,254,0, + 120,0,12,16,32,15,1,0,255,240,227,240,195,224,135,224, + 135,192,15,128,15,128,31,0,31,0,62,0,62,16,124,16, + 124,48,248,48,248,240,255,240,10,27,54,13,1,252,7,192, + 14,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,56,0,112,0,224,0,112,0,56,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 14,0,7,192,2,30,30,7,3,249,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,10,27,54,13,1,252,248,0, + 28,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 14,0,14,0,7,0,3,128,1,192,3,128,7,0,14,0, + 14,0,14,0,14,0,14,0,14,0,14,0,14,0,14,0, + 28,0,248,0,15,8,16,17,1,8,28,0,63,0,127,130, + 255,198,143,254,131,252,1,248,0,112,255}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--11-80-100-100-P-54-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w=11 h=10 x= 1 y= 6 dx=10 dy= 0 ascent=10 len=14 + Font Bounding box w=12 h=17 x=-2 y=-4 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent =10 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR08[2512] U8G_SECTION(".progmem.u8g_font_timR08") = { + 0,12,17,254,252,7,1,147,3,56,32,255,254,10,253,7, + 254,0,0,0,2,0,1,1,7,7,3,1,0,128,128,128, + 128,128,0,128,3,2,2,4,0,5,160,160,5,7,7,5, + 0,0,80,80,248,80,248,80,80,4,9,9,5,0,255,32, + 112,144,128,96,16,144,224,32,7,7,7,8,0,0,126,164, + 168,86,42,42,68,8,7,7,8,0,0,48,80,110,116,152, + 141,118,1,2,2,2,0,5,128,128,3,9,9,4,0,254, + 32,64,64,128,128,128,64,64,32,3,9,9,4,0,254,128, + 64,64,32,32,32,64,64,128,3,3,3,5,1,4,160,64, + 160,5,5,5,6,0,0,32,32,248,32,32,2,2,2,3, + 0,255,192,64,3,1,1,4,0,2,224,1,1,1,3,1, + 0,128,3,7,7,3,0,0,32,32,64,64,64,128,128,4, + 7,7,5,0,0,96,144,144,144,144,144,96,3,7,7,5, + 1,0,64,192,64,64,64,64,224,4,7,7,5,0,0,96, + 144,16,32,32,64,240,4,7,7,5,0,0,96,144,16,96, + 16,16,224,5,7,7,5,0,0,16,48,80,144,248,16,16, + 4,7,7,5,0,0,112,64,224,16,16,16,224,4,7,7, + 5,0,0,48,64,224,144,144,144,96,4,7,7,5,0,0, + 240,144,32,32,64,64,64,4,7,7,5,0,0,96,144,144, + 96,144,144,96,4,7,7,5,0,0,96,144,144,144,112,32, + 192,1,5,5,3,1,0,128,0,0,0,128,2,6,6,3, + 0,255,64,0,0,0,192,64,3,5,5,5,1,0,32,64, + 128,64,32,5,3,3,6,0,1,248,0,248,3,5,5,5, + 0,0,128,64,32,64,128,3,7,7,4,0,0,224,160,32, + 64,64,0,64,8,9,9,9,0,254,60,66,157,165,165,173, + 146,64,62,7,7,7,8,0,0,16,56,40,40,124,68,238, + 5,7,7,6,0,0,240,72,72,112,72,72,240,6,7,7, + 7,0,0,124,196,128,128,128,196,120,6,7,7,7,0,0, + 248,76,68,68,68,76,248,5,7,7,6,0,0,248,72,64, + 112,64,72,248,5,7,7,6,0,0,248,72,64,112,64,64, + 224,6,7,7,7,0,0,124,196,128,156,132,196,120,7,7, + 7,8,0,0,238,68,68,124,68,68,238,3,7,7,4,0, + 0,224,64,64,64,64,64,224,4,7,7,4,0,0,112,32, + 32,32,32,160,192,6,7,7,7,0,0,236,72,80,96,80, + 72,236,5,7,7,6,0,0,224,64,64,64,64,72,248,9, + 7,14,10,0,0,227,128,99,0,85,0,85,0,93,0,73, + 0,235,128,7,7,7,8,0,0,238,100,84,84,76,76,228, + 6,7,7,7,0,0,120,204,132,132,132,204,120,5,7,7, + 6,0,0,240,72,72,112,64,64,224,6,9,9,7,0,254, + 120,204,132,132,132,204,112,24,12,6,7,7,7,0,0,240, + 72,72,112,80,72,236,4,7,7,5,0,0,112,144,192,96, + 16,144,224,5,7,7,6,0,0,248,168,32,32,32,32,112, + 7,7,7,8,0,0,238,68,68,68,68,108,56,7,7,7, + 8,0,0,238,68,108,40,40,16,16,11,7,14,10,255,0, + 238,224,68,64,100,192,46,128,42,128,17,0,17,0,7,7, + 7,8,0,0,238,68,40,16,40,68,238,7,7,7,8,0, + 0,238,68,40,56,16,16,56,5,7,7,6,0,0,248,136, + 16,32,64,136,248,2,9,9,3,0,254,192,128,128,128,128, + 128,128,128,192,3,7,7,3,0,0,128,128,64,64,64,32, + 32,2,9,9,3,0,254,192,64,64,64,64,64,64,64,192, + 3,3,3,5,1,4,64,160,160,5,1,1,5,0,253,248, + 2,2,2,3,0,6,128,64,3,5,5,4,0,0,192,32, + 96,160,224,5,7,7,5,255,0,192,64,112,72,72,72,112, + 3,5,5,4,0,0,96,128,128,128,96,5,7,7,5,0, + 0,48,16,112,144,144,144,104,3,5,5,4,0,0,96,160, + 192,128,96,4,7,7,4,0,0,48,64,224,64,64,64,224, + 4,7,7,5,0,254,112,160,160,64,96,144,224,6,7,7, + 5,255,0,192,64,112,72,72,72,108,2,7,7,3,0,0, + 64,0,192,64,64,64,64,3,9,9,3,255,254,32,0,96, + 32,32,32,32,32,192,6,7,7,5,255,0,192,64,72,80, + 112,72,76,3,7,7,4,0,0,192,64,64,64,64,64,224, + 8,5,5,8,0,0,236,146,146,146,219,5,5,5,5,0, + 0,224,144,144,144,216,4,5,5,5,0,0,96,144,144,144, + 96,5,8,8,5,255,253,240,72,72,72,112,64,64,224,5, + 8,8,5,0,253,112,144,144,144,112,16,16,56,3,5,5, + 4,0,0,160,96,64,64,224,3,5,5,4,0,0,96,128, + 64,32,224,4,6,6,4,0,0,64,224,64,64,64,48,5, + 5,5,5,0,0,216,144,144,144,104,6,5,5,5,255,0, + 236,72,40,48,16,9,5,10,8,255,0,237,128,73,0,42, + 0,54,0,20,0,5,5,5,6,0,0,216,80,32,80,216, + 6,7,7,5,255,254,220,72,80,48,32,96,192,4,5,5, + 5,0,0,240,32,64,144,240,3,9,9,4,0,254,32,64, + 64,64,128,64,64,64,32,1,9,9,2,0,254,128,128,128, + 128,128,128,128,128,128,3,9,9,4,0,254,128,64,64,64, + 32,64,64,64,128,6,2,2,7,0,2,100,152,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0, + 0,2,0,1,1,7,7,3,1,254,128,0,128,128,128,128, + 128,4,7,7,5,0,255,32,112,144,128,144,96,64,5,7, + 7,5,0,0,48,80,64,224,64,200,240,5,6,6,5,0, + 1,136,112,80,80,112,136,5,7,7,5,0,0,136,80,216, + 32,248,32,112,1,7,7,2,0,0,128,128,128,0,128,128, + 128,4,9,9,5,0,254,112,144,64,160,144,80,32,144,224, + 3,1,1,5,1,5,160,7,7,7,9,1,0,56,68,154, + 162,154,68,56,3,5,5,4,0,2,192,32,160,0,224,4, + 4,4,5,0,1,80,160,160,80,5,2,2,7,1,1,248, + 8,3,1,1,4,0,2,224,7,7,7,9,1,0,56,68, + 186,178,170,68,56,3,1,1,4,0,5,224,4,4,4,4, + 0,3,96,144,144,96,5,7,7,6,0,0,32,32,248,32, + 32,0,248,3,4,4,3,0,3,96,160,64,224,3,4,4, + 3,0,3,224,64,32,192,2,2,2,3,0,5,64,128,5, + 7,7,5,0,254,144,144,144,144,232,128,128,6,9,9,6, + 0,254,124,232,232,232,104,40,40,40,40,1,1,1,2,0, + 2,128,3,3,3,4,0,253,64,32,192,3,4,4,3,0, + 3,64,192,64,224,3,5,5,4,0,2,64,160,64,0,224, + 4,4,4,5,0,1,160,80,80,160,7,7,7,8,0,0, + 68,200,72,244,44,62,68,7,7,7,8,0,0,68,200,72, + 246,42,36,78,7,7,7,8,0,0,228,72,40,212,44,62, + 68,3,7,7,4,0,254,64,0,64,64,128,160,224,7,10, + 10,8,0,0,32,16,0,16,56,40,40,124,68,238,7,10, + 10,8,0,0,8,16,0,16,56,40,40,124,68,238,7,10, + 10,8,0,0,16,40,0,16,56,40,40,124,68,238,7,10, + 10,8,0,0,20,40,0,16,56,40,40,124,68,238,7,9, + 9,8,0,0,40,0,16,56,40,40,124,68,238,7,10,10, + 8,0,0,16,40,16,16,56,40,40,124,68,238,8,7,7, + 9,0,0,31,57,40,46,120,73,239,6,10,10,7,0,253, + 124,196,128,128,128,196,120,32,16,96,5,10,10,6,0,0, + 64,32,0,248,72,64,112,64,72,248,5,10,10,6,0,0, + 16,32,0,248,72,64,112,64,72,248,5,10,10,6,0,0, + 32,80,0,248,72,64,112,64,72,248,5,9,9,6,0,0, + 80,0,248,72,64,112,64,72,248,3,10,10,4,0,0,128, + 64,0,224,64,64,64,64,64,224,3,10,10,4,0,0,32, + 64,0,224,64,64,64,64,64,224,3,10,10,4,0,0,64, + 160,0,224,64,64,64,64,64,224,3,9,9,4,0,0,160, + 0,224,64,64,64,64,64,224,6,7,7,7,0,0,248,76, + 68,228,68,76,248,7,10,10,8,0,0,20,40,0,206,100, + 100,84,84,76,228,6,10,10,7,0,0,32,16,0,120,204, + 132,132,132,204,120,6,10,10,7,0,0,16,32,0,120,204, + 132,132,132,204,120,6,10,10,7,0,0,16,40,0,120,204, + 132,132,132,204,120,6,10,10,7,0,0,40,80,0,120,204, + 132,132,132,204,120,6,9,9,7,0,0,72,0,120,204,132, + 132,132,204,120,5,5,5,6,0,0,136,80,32,80,136,8, + 9,9,8,255,255,1,62,102,74,66,82,102,124,128,7,10, + 10,8,0,0,32,16,0,238,68,68,68,68,108,56,7,10, + 10,8,0,0,8,16,0,238,68,68,68,68,108,56,7,10, + 10,8,0,0,16,40,0,238,68,68,68,68,108,56,7,9, + 9,8,0,0,40,0,238,68,68,68,68,108,56,7,10,10, + 8,0,0,8,16,0,198,68,40,56,16,16,56,5,7,7, + 6,0,0,224,64,112,72,112,64,224,4,7,7,5,0,0, + 32,80,80,96,80,80,224,3,8,8,4,0,0,128,64,0, + 192,32,96,160,224,3,8,8,4,0,0,32,64,0,192,32, + 96,160,224,3,8,8,4,0,0,64,160,0,192,32,96,160, + 224,4,8,8,4,0,0,80,160,0,192,32,96,160,224,3, + 7,7,4,0,0,160,0,192,32,96,160,224,3,8,8,4, + 0,0,64,160,64,192,32,96,160,224,5,5,5,6,0,0, + 216,40,112,160,216,3,8,8,4,0,253,96,128,128,128,96, + 64,32,192,3,8,8,4,0,0,128,64,0,96,160,192,128, + 96,3,8,8,4,0,0,32,64,0,96,160,192,128,96,3, + 8,8,4,0,0,64,160,0,96,160,192,128,96,3,7,7, + 4,0,0,160,0,96,160,192,128,96,2,8,8,3,0,0, + 128,64,0,192,64,64,64,64,3,8,8,3,0,0,32,64, + 0,192,64,64,64,64,3,8,8,3,0,0,64,160,0,192, + 64,64,64,64,3,7,7,3,0,0,160,0,192,64,64,64, + 64,4,8,8,5,0,0,64,112,160,112,144,144,144,96,5, + 8,8,5,0,0,80,160,0,224,144,144,144,216,4,8,8, + 5,0,0,64,32,0,96,144,144,144,96,4,8,8,5,0, + 0,32,64,0,96,144,144,144,96,4,8,8,5,0,0,64, + 160,0,96,144,144,144,96,4,8,8,5,0,0,80,160,0, + 96,144,144,144,96,4,7,7,5,0,0,160,0,96,144,144, + 144,96,5,5,5,6,0,0,32,0,248,0,32,6,7,7, + 5,255,255,4,56,72,72,72,112,128,5,8,8,5,0,0, + 64,32,0,144,144,144,144,104,5,8,8,5,0,0,32,64, + 0,144,144,144,144,104,5,8,8,5,0,0,32,80,0,144, + 144,144,144,104,5,7,7,5,0,0,80,0,144,144,144,144, + 104,6,10,10,5,255,254,16,32,0,220,72,80,48,32,96, + 192,5,10,10,5,255,253,192,64,112,72,72,72,112,64,64, + 224,6,9,9,5,255,254,80,0,220,72,80,48,32,96,192 + }; +/* + Fontname: -Adobe-Times-Medium-R-Normal--11-80-100-100-P-54-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w=11 h= 9 x= 1 y= 6 dx=10 dy= 0 ascent= 8 len=14 + Font Bounding box w=12 h=17 x=-2 y=-4 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 8 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR08r[1198] U8G_SECTION(".progmem.u8g_font_timR08r") = { + 0,12,17,254,252,7,1,147,3,56,32,127,254,8,253,7, + 254,0,0,0,2,0,1,1,7,7,3,1,0,128,128,128, + 128,128,0,128,3,2,2,4,0,5,160,160,5,7,7,5, + 0,0,80,80,248,80,248,80,80,4,9,9,5,0,255,32, + 112,144,128,96,16,144,224,32,7,7,7,8,0,0,126,164, + 168,86,42,42,68,8,7,7,8,0,0,48,80,110,116,152, + 141,118,1,2,2,2,0,5,128,128,3,9,9,4,0,254, + 32,64,64,128,128,128,64,64,32,3,9,9,4,0,254,128, + 64,64,32,32,32,64,64,128,3,3,3,5,1,4,160,64, + 160,5,5,5,6,0,0,32,32,248,32,32,2,2,2,3, + 0,255,192,64,3,1,1,4,0,2,224,1,1,1,3,1, + 0,128,3,7,7,3,0,0,32,32,64,64,64,128,128,4, + 7,7,5,0,0,96,144,144,144,144,144,96,3,7,7,5, + 1,0,64,192,64,64,64,64,224,4,7,7,5,0,0,96, + 144,16,32,32,64,240,4,7,7,5,0,0,96,144,16,96, + 16,16,224,5,7,7,5,0,0,16,48,80,144,248,16,16, + 4,7,7,5,0,0,112,64,224,16,16,16,224,4,7,7, + 5,0,0,48,64,224,144,144,144,96,4,7,7,5,0,0, + 240,144,32,32,64,64,64,4,7,7,5,0,0,96,144,144, + 96,144,144,96,4,7,7,5,0,0,96,144,144,144,112,32, + 192,1,5,5,3,1,0,128,0,0,0,128,2,6,6,3, + 0,255,64,0,0,0,192,64,3,5,5,5,1,0,32,64, + 128,64,32,5,3,3,6,0,1,248,0,248,3,5,5,5, + 0,0,128,64,32,64,128,3,7,7,4,0,0,224,160,32, + 64,64,0,64,8,9,9,9,0,254,60,66,157,165,165,173, + 146,64,62,7,7,7,8,0,0,16,56,40,40,124,68,238, + 5,7,7,6,0,0,240,72,72,112,72,72,240,6,7,7, + 7,0,0,124,196,128,128,128,196,120,6,7,7,7,0,0, + 248,76,68,68,68,76,248,5,7,7,6,0,0,248,72,64, + 112,64,72,248,5,7,7,6,0,0,248,72,64,112,64,64, + 224,6,7,7,7,0,0,124,196,128,156,132,196,120,7,7, + 7,8,0,0,238,68,68,124,68,68,238,3,7,7,4,0, + 0,224,64,64,64,64,64,224,4,7,7,4,0,0,112,32, + 32,32,32,160,192,6,7,7,7,0,0,236,72,80,96,80, + 72,236,5,7,7,6,0,0,224,64,64,64,64,72,248,9, + 7,14,10,0,0,227,128,99,0,85,0,85,0,93,0,73, + 0,235,128,7,7,7,8,0,0,238,100,84,84,76,76,228, + 6,7,7,7,0,0,120,204,132,132,132,204,120,5,7,7, + 6,0,0,240,72,72,112,64,64,224,6,9,9,7,0,254, + 120,204,132,132,132,204,112,24,12,6,7,7,7,0,0,240, + 72,72,112,80,72,236,4,7,7,5,0,0,112,144,192,96, + 16,144,224,5,7,7,6,0,0,248,168,32,32,32,32,112, + 7,7,7,8,0,0,238,68,68,68,68,108,56,7,7,7, + 8,0,0,238,68,108,40,40,16,16,11,7,14,10,255,0, + 238,224,68,64,100,192,46,128,42,128,17,0,17,0,7,7, + 7,8,0,0,238,68,40,16,40,68,238,7,7,7,8,0, + 0,238,68,40,56,16,16,56,5,7,7,6,0,0,248,136, + 16,32,64,136,248,2,9,9,3,0,254,192,128,128,128,128, + 128,128,128,192,3,7,7,3,0,0,128,128,64,64,64,32, + 32,2,9,9,3,0,254,192,64,64,64,64,64,64,64,192, + 3,3,3,5,1,4,64,160,160,5,1,1,5,0,253,248, + 2,2,2,3,0,6,128,64,3,5,5,4,0,0,192,32, + 96,160,224,5,7,7,5,255,0,192,64,112,72,72,72,112, + 3,5,5,4,0,0,96,128,128,128,96,5,7,7,5,0, + 0,48,16,112,144,144,144,104,3,5,5,4,0,0,96,160, + 192,128,96,4,7,7,4,0,0,48,64,224,64,64,64,224, + 4,7,7,5,0,254,112,160,160,64,96,144,224,6,7,7, + 5,255,0,192,64,112,72,72,72,108,2,7,7,3,0,0, + 64,0,192,64,64,64,64,3,9,9,3,255,254,32,0,96, + 32,32,32,32,32,192,6,7,7,5,255,0,192,64,72,80, + 112,72,76,3,7,7,4,0,0,192,64,64,64,64,64,224, + 8,5,5,8,0,0,236,146,146,146,219,5,5,5,5,0, + 0,224,144,144,144,216,4,5,5,5,0,0,96,144,144,144, + 96,5,8,8,5,255,253,240,72,72,72,112,64,64,224,5, + 8,8,5,0,253,112,144,144,144,112,16,16,56,3,5,5, + 4,0,0,160,96,64,64,224,3,5,5,4,0,0,96,128, + 64,32,224,4,6,6,4,0,0,64,224,64,64,64,48,5, + 5,5,5,0,0,216,144,144,144,104,6,5,5,5,255,0, + 236,72,40,48,16,9,5,10,8,255,0,237,128,73,0,42, + 0,54,0,20,0,5,5,5,6,0,0,216,80,32,80,216, + 6,7,7,5,255,254,220,72,80,48,32,96,192,4,5,5, + 5,0,0,240,32,64,144,240,3,9,9,4,0,254,32,64, + 64,64,128,64,64,64,32,1,9,9,2,0,254,128,128,128, + 128,128,128,128,128,128,3,9,9,4,0,254,128,64,64,64, + 32,64,64,64,128,6,2,2,7,0,2,100,152,255}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--14-100-100-100-P-74-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=13 h=14 x= 2 y= 8 dx=13 dy= 0 ascent=14 len=28 + Font Bounding box w=17 h=24 x=-2 y=-6 + Calculated Min Values x=-1 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =14 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR10[3359] U8G_SECTION(".progmem.u8g_font_timR10") = { + 0,17,24,254,250,10,2,4,4,92,32,255,253,14,253,10, + 253,0,0,0,3,0,1,1,10,10,5,2,0,128,128,128, + 128,128,128,128,0,128,128,3,3,3,6,1,7,160,160,160, + 7,10,10,7,0,0,20,20,126,40,40,40,252,80,80,80, + 5,12,12,7,1,255,32,120,168,160,160,112,40,40,40,168, + 240,32,9,10,20,12,1,0,113,128,223,0,146,0,148,0, + 104,0,11,0,22,128,36,128,68,128,67,0,10,10,20,11, + 1,0,24,0,36,0,36,0,56,0,19,128,121,0,202,0, + 132,0,206,64,115,128,1,3,3,3,1,7,128,128,128,3, + 13,13,5,1,253,32,32,64,64,128,128,128,128,128,64,64, + 32,32,3,13,13,5,1,253,128,128,64,64,32,32,32,32, + 32,64,64,128,128,5,6,6,7,1,4,32,168,112,112,168, + 32,7,7,7,8,0,0,16,16,16,254,16,16,16,2,3, + 3,4,1,254,192,64,128,3,1,1,4,0,3,224,2,1, + 1,4,1,0,192,4,12,12,4,0,254,16,16,16,32,32, + 32,64,64,64,128,128,128,6,10,10,7,1,0,120,204,132, + 132,132,132,132,132,204,120,5,10,10,7,1,0,32,224,32, + 32,32,32,32,32,32,248,5,10,10,7,1,0,112,216,136, + 8,24,16,32,64,136,248,6,10,10,7,0,0,120,140,4, + 8,48,56,4,4,204,120,6,10,10,7,0,0,8,24,24, + 40,104,72,136,252,8,8,5,10,10,7,1,0,120,64,128, + 224,48,24,8,8,144,224,6,10,10,7,0,0,12,16,32, + 64,120,204,132,132,204,120,6,10,10,7,0,0,252,132,8, + 8,16,16,32,32,64,64,5,10,10,7,1,0,112,152,136, + 200,112,152,136,136,136,112,6,10,10,7,1,0,120,204,132, + 132,204,120,8,16,32,192,2,7,7,4,1,0,192,0,0, + 0,0,0,192,2,9,9,4,1,254,192,0,0,0,0,0, + 192,64,128,7,7,7,8,0,0,6,24,96,192,96,24,6, + 7,3,3,8,0,2,254,0,254,7,7,7,8,0,0,192, + 48,12,6,12,48,192,5,10,10,6,0,0,112,136,136,8, + 16,32,32,0,32,32,12,12,24,13,0,254,15,128,48,96, + 96,32,70,144,137,16,145,16,145,16,147,32,205,192,64,0, + 48,192,15,0,9,10,20,11,1,0,8,0,8,0,20,0, + 20,0,34,0,34,0,62,0,65,0,65,0,227,128,7,10, + 10,9,1,0,252,70,66,70,124,70,66,66,70,252,8,10, + 10,10,1,0,61,99,65,129,128,128,128,193,98,60,9,10, + 20,10,0,0,254,0,35,0,33,0,32,128,32,128,32,128, + 32,128,33,0,35,0,254,0,7,10,10,9,1,0,254,66, + 64,68,124,68,64,66,66,254,7,10,10,8,1,0,254,66, + 64,68,124,68,64,64,64,224,9,10,20,11,1,0,61,0, + 99,0,65,0,129,0,128,0,135,128,129,0,193,0,99,0, + 62,0,8,10,10,10,1,0,231,66,66,66,126,66,66,66, + 66,231,3,10,10,5,1,0,224,64,64,64,64,64,64,64, + 64,224,4,10,10,6,1,0,112,32,32,32,32,32,32,32, + 160,192,8,10,10,10,1,0,238,68,72,80,112,80,72,68, + 70,231,7,10,10,9,1,0,224,64,64,64,64,64,64,64, + 66,254,11,10,20,13,1,0,224,224,96,192,81,64,81,64, + 91,64,74,64,74,64,78,64,68,64,228,224,9,10,20,11, + 1,0,227,128,97,0,81,0,89,0,73,0,77,0,69,0, + 69,0,67,0,227,0,8,10,10,10,1,0,60,102,66,129, + 129,129,129,66,102,60,6,10,10,8,1,0,248,76,68,68, + 76,120,64,64,64,224,8,13,13,10,1,253,60,102,66,129, + 129,129,129,66,102,60,8,6,3,9,10,20,9,0,0,252, + 0,38,0,34,0,34,0,38,0,60,0,36,0,34,0,35, + 0,241,128,6,10,10,8,1,0,116,204,132,192,112,24,4, + 132,204,184,7,10,10,9,1,0,254,146,146,16,16,16,16, + 16,16,56,8,10,10,10,1,0,231,66,66,66,66,66,66, + 66,102,60,9,10,20,9,0,0,227,128,65,0,99,0,34, + 0,34,0,54,0,20,0,28,0,8,0,8,0,13,10,20, + 13,0,0,231,56,66,16,98,48,34,32,37,32,53,96,21, + 64,24,192,8,128,8,128,10,10,20,10,0,0,115,128,33, + 0,18,0,18,0,12,0,12,0,18,0,33,0,97,128,243, + 192,9,10,20,9,0,0,227,128,65,0,34,0,34,0,20, + 0,8,0,8,0,8,0,8,0,28,0,8,10,10,8,0, + 0,127,67,2,4,8,16,32,64,193,255,3,13,13,5,1, + 253,224,128,128,128,128,128,128,128,128,128,128,128,224,4,10, + 10,4,0,0,128,128,64,64,64,32,32,32,16,16,3,13, + 13,5,1,253,224,32,32,32,32,32,32,32,32,32,32,32, + 224,5,5,5,7,1,5,32,80,80,136,136,7,1,1,7, + 0,253,254,3,3,3,5,1,8,128,192,32,6,7,7,7, + 1,0,112,200,24,104,136,200,116,6,10,10,7,0,0,192, + 64,64,88,108,68,68,68,76,120,6,7,7,7,1,0,120, + 204,128,128,128,196,120,6,10,10,7,1,0,24,8,8,120, + 200,136,136,136,216,116,6,7,7,7,1,0,112,136,248,128, + 128,196,120,5,10,10,4,0,0,56,96,64,248,64,64,64, + 64,64,240,6,10,10,7,1,253,120,208,136,200,112,64,120, + 132,204,112,7,10,10,7,0,0,192,64,64,88,108,68,68, + 68,68,238,3,10,10,3,0,0,64,64,0,192,64,64,64, + 64,64,224,3,13,13,4,0,253,32,32,0,96,32,32,32, + 32,32,32,32,160,192,7,10,10,7,0,0,192,64,64,76, + 72,112,80,72,76,230,3,10,10,3,0,0,192,64,64,64, + 64,64,64,64,64,224,11,7,14,11,0,0,219,128,110,192, + 68,64,68,64,68,64,68,64,238,224,7,7,7,7,0,0, + 216,108,68,68,68,68,238,5,7,7,7,1,0,112,216,136, + 136,136,216,112,6,10,10,7,0,253,216,108,68,68,68,108, + 88,64,64,224,6,10,10,7,1,253,120,200,136,136,136,216, + 104,8,8,28,5,7,7,5,0,0,184,96,64,64,64,64, + 224,4,7,7,6,1,0,112,144,192,96,48,144,224,4,8, + 8,4,0,0,64,240,64,64,64,64,64,48,7,7,7,7, + 0,0,204,68,68,68,68,108,54,7,7,7,7,0,0,238, + 68,68,40,40,16,16,11,7,14,11,0,0,238,224,68,64, + 68,64,36,128,59,128,17,0,17,0,7,7,7,7,0,0, + 238,68,56,16,56,68,238,7,10,10,7,0,253,238,68,68, + 40,40,16,48,32,160,192,6,7,7,6,0,0,252,136,24, + 48,96,196,252,5,13,13,7,1,253,24,32,32,32,32,64, + 128,64,32,32,32,32,24,1,10,10,3,1,0,128,128,128, + 128,128,128,128,128,128,128,5,13,13,7,1,253,192,32,32, + 32,32,16,8,16,32,32,32,32,192,7,2,2,8,0,3, + 98,156,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,0,0,0,3,0,1,1,10,10,5,2,253,128, + 128,0,128,128,128,128,128,128,128,6,9,9,7,0,255,4, + 124,204,144,144,160,228,120,128,7,10,10,8,0,0,28,52, + 32,32,248,32,32,32,226,188,5,7,7,7,1,1,136,112, + 136,136,136,112,136,7,10,10,7,0,0,238,68,108,40,124, + 16,124,16,16,56,1,10,10,3,1,0,128,128,128,128,0, + 0,128,128,128,128,5,13,13,7,1,253,56,88,64,96,112, + 152,136,200,112,48,16,208,224,3,2,2,5,1,8,160,160, + 10,10,20,12,1,0,30,0,97,128,78,128,146,64,144,64, + 144,64,146,64,76,128,97,128,30,0,3,6,6,4,0,4, + 224,32,160,224,0,224,6,6,6,7,0,0,36,72,144,144, + 72,36,7,4,4,9,1,2,254,2,2,2,3,1,1,4, + 0,3,224,10,10,20,12,1,0,30,0,97,128,92,128,146, + 64,156,64,148,64,146,64,82,128,97,128,30,0,4,1,1, + 4,0,8,240,4,4,4,6,1,6,96,144,144,96,7,7, + 7,8,0,0,16,16,254,16,16,0,254,4,6,6,4,0, + 4,96,144,16,32,64,240,4,6,6,4,0,4,96,144,32, + 16,144,96,3,3,3,5,1,8,32,96,128,7,10,10,7, + 0,253,204,68,68,68,68,108,118,64,64,96,7,13,13,7, + 0,253,62,116,244,244,244,116,52,20,20,20,20,20,20,1, + 2,2,4,2,3,128,128,3,3,3,5,1,253,64,32,192, + 3,6,6,4,0,4,64,192,64,64,64,224,4,6,6,5, + 0,4,96,144,144,96,0,240,6,6,6,7,1,0,144,72, + 36,36,72,144,10,10,20,10,0,0,65,0,194,0,66,0, + 68,0,68,128,233,128,10,128,20,128,23,192,32,128,10,10, + 20,10,0,0,65,0,194,0,66,0,68,0,69,128,234,64, + 8,64,16,128,17,0,35,192,10,10,20,10,0,0,97,0, + 146,0,34,0,20,0,148,128,105,128,10,128,20,128,23,192, + 32,128,5,10,10,6,0,253,32,32,0,32,32,64,128,136, + 136,112,9,14,28,11,1,0,16,0,24,0,4,0,0,0, + 8,0,8,0,20,0,20,0,34,0,34,0,62,0,65,0, + 65,0,227,128,9,14,28,11,1,0,4,0,12,0,16,0, + 0,0,8,0,8,0,20,0,20,0,34,0,34,0,62,0, + 65,0,65,0,227,128,9,14,28,11,1,0,8,0,28,0, + 34,0,0,0,8,0,8,0,20,0,20,0,34,0,34,0, + 62,0,65,0,65,0,227,128,9,14,28,11,1,0,18,0, + 42,0,36,0,0,0,8,0,8,0,20,0,20,0,34,0, + 34,0,62,0,65,0,65,0,227,128,9,13,26,11,1,0, + 36,0,36,0,0,0,8,0,8,0,20,0,20,0,34,0, + 34,0,62,0,65,0,65,0,227,128,9,14,28,11,1,0, + 24,0,36,0,24,0,0,0,8,0,8,0,20,0,20,0, + 34,0,34,0,62,0,65,0,65,0,227,128,11,10,20,13, + 1,0,31,224,12,32,20,0,20,64,39,192,36,64,60,0, + 68,32,68,32,239,224,8,13,13,10,1,253,61,99,65,129, + 128,128,128,193,98,60,8,4,24,7,14,14,9,1,0,32, + 48,8,0,254,66,64,68,124,68,64,66,66,254,7,14,14, + 9,1,0,4,12,16,0,254,66,64,68,124,68,64,66,66, + 254,7,14,14,9,1,0,16,56,68,0,254,66,64,68,124, + 68,64,66,66,254,7,13,13,9,1,0,36,36,0,254,66, + 64,68,124,68,64,66,66,254,3,14,14,5,1,0,128,192, + 32,0,224,64,64,64,64,64,64,64,64,224,3,14,14,5, + 1,0,32,96,128,0,224,64,64,64,64,64,64,64,64,224, + 5,14,14,5,0,0,32,112,136,0,112,32,32,32,32,32, + 32,32,32,112,3,13,13,5,1,0,160,160,0,224,64,64, + 64,64,64,64,64,64,224,9,10,20,10,0,0,254,0,35, + 0,33,0,32,128,248,128,32,128,32,128,33,0,35,0,254, + 0,9,14,28,11,1,0,18,0,42,0,36,0,0,0,227, + 128,97,0,81,0,89,0,73,0,77,0,69,0,69,0,67, + 0,227,0,8,14,14,10,1,0,32,48,8,0,60,102,66, + 129,129,129,129,66,102,60,8,14,14,10,1,0,4,12,16, + 0,60,102,66,129,129,129,129,66,102,60,8,14,14,10,1, + 0,16,56,68,0,60,102,66,129,129,129,129,66,102,60,8, + 14,14,10,1,0,36,84,72,0,60,102,66,129,129,129,129, + 66,102,60,8,13,13,10,1,0,36,36,0,60,102,66,129, + 129,129,129,66,102,60,7,7,7,8,1,0,130,68,40,16, + 40,68,130,9,12,24,10,0,255,0,128,31,0,49,0,35, + 0,68,128,76,128,72,128,80,128,49,0,99,0,94,0,128, + 0,8,14,14,10,1,0,32,48,8,0,231,66,66,66,66, + 66,66,66,102,60,8,14,14,10,1,0,4,12,16,0,231, + 66,66,66,66,66,66,66,102,60,8,14,14,10,1,0,16, + 56,68,0,231,66,66,66,66,66,66,66,102,60,8,13,13, + 10,1,0,36,36,0,231,66,66,66,66,66,66,66,102,60, + 9,14,28,9,0,0,2,0,6,0,8,0,0,0,227,128, + 65,0,34,0,34,0,20,0,8,0,8,0,8,0,8,0, + 28,0,6,10,10,8,1,0,224,64,120,76,68,68,76,120, + 64,224,6,10,10,7,0,0,56,108,68,72,112,88,76,68, + 84,216,6,11,11,7,1,0,64,96,16,0,112,200,24,104, + 136,200,116,6,11,11,7,1,0,8,24,32,0,112,200,24, + 104,136,200,116,6,11,11,7,1,0,32,112,136,0,112,200, + 24,104,136,200,116,6,11,11,7,1,0,72,168,144,0,112, + 200,24,104,136,200,116,6,10,10,7,1,0,80,80,0,112, + 200,24,104,136,200,116,6,11,11,7,1,0,48,72,48,0, + 112,200,24,104,136,200,116,9,7,14,11,1,0,127,0,201, + 128,31,0,104,0,136,0,204,128,119,0,6,10,10,7,1, + 253,112,200,128,128,128,196,120,32,16,96,6,11,11,7,1, + 0,64,96,16,0,112,136,248,128,128,196,120,6,11,11,7, + 1,0,8,24,32,0,112,136,248,128,128,196,120,6,11,11, + 7,1,0,32,112,136,0,112,136,248,128,128,196,120,6,10, + 10,7,1,0,80,80,0,112,136,248,128,128,196,120,3,11, + 11,3,0,0,128,192,32,0,192,64,64,64,64,64,224,3, + 11,11,3,0,0,32,96,128,0,192,64,64,64,64,64,224, + 5,11,11,3,255,0,32,112,136,0,96,32,32,32,32,32, + 112,3,10,10,3,0,0,160,160,0,192,64,64,64,64,64, + 224,5,10,10,7,1,0,216,96,144,120,216,136,136,136,216, + 112,7,11,11,7,0,0,36,84,72,0,216,108,68,68,68, + 68,238,5,11,11,7,1,0,64,96,16,0,112,216,136,136, + 136,216,112,5,11,11,7,1,0,16,48,64,0,112,216,136, + 136,136,216,112,5,11,11,7,1,0,32,112,136,0,112,216, + 136,136,136,216,112,5,11,11,7,1,0,72,168,144,0,112, + 216,136,136,136,216,112,5,10,10,7,1,0,80,80,0,112, + 216,136,136,136,216,112,7,7,7,8,1,0,16,16,0,254, + 0,16,16,7,9,9,7,0,255,2,60,108,68,68,68,108, + 120,128,7,11,11,7,0,0,32,48,8,0,204,68,68,68, + 68,108,54,7,11,11,7,0,0,8,24,32,0,204,68,68, + 68,68,108,54,7,11,11,7,0,0,16,56,68,0,204,68, + 68,68,68,108,54,7,10,10,7,0,0,40,40,0,204,68, + 68,68,68,108,54,7,14,14,7,0,253,4,12,16,0,238, + 68,68,40,40,16,48,32,160,192,6,13,13,7,0,253,192, + 64,64,88,108,68,68,68,108,88,64,64,224,7,13,13,7, + 0,253,40,40,0,238,68,68,40,40,16,48,32,160,192}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--14-100-100-100-P-74-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=13 h=13 x= 2 y= 8 dx=13 dy= 0 ascent=11 len=24 + Font Bounding box w=17 h=24 x=-2 y=-6 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =10 descent=-3 + X Font ascent =10 descent=-3 + Max Font ascent =11 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR10r[1571] U8G_SECTION(".progmem.u8g_font_timR10r") = { + 0,17,24,254,250,10,2,4,4,92,32,127,253,11,253,10, + 253,0,0,0,3,0,1,1,10,10,5,2,0,128,128,128, + 128,128,128,128,0,128,128,3,3,3,6,1,7,160,160,160, + 7,10,10,7,0,0,20,20,126,40,40,40,252,80,80,80, + 5,12,12,7,1,255,32,120,168,160,160,112,40,40,40,168, + 240,32,9,10,20,12,1,0,113,128,223,0,146,0,148,0, + 104,0,11,0,22,128,36,128,68,128,67,0,10,10,20,11, + 1,0,24,0,36,0,36,0,56,0,19,128,121,0,202,0, + 132,0,206,64,115,128,1,3,3,3,1,7,128,128,128,3, + 13,13,5,1,253,32,32,64,64,128,128,128,128,128,64,64, + 32,32,3,13,13,5,1,253,128,128,64,64,32,32,32,32, + 32,64,64,128,128,5,6,6,7,1,4,32,168,112,112,168, + 32,7,7,7,8,0,0,16,16,16,254,16,16,16,2,3, + 3,4,1,254,192,64,128,3,1,1,4,0,3,224,2,1, + 1,4,1,0,192,4,12,12,4,0,254,16,16,16,32,32, + 32,64,64,64,128,128,128,6,10,10,7,1,0,120,204,132, + 132,132,132,132,132,204,120,5,10,10,7,1,0,32,224,32, + 32,32,32,32,32,32,248,5,10,10,7,1,0,112,216,136, + 8,24,16,32,64,136,248,6,10,10,7,0,0,120,140,4, + 8,48,56,4,4,204,120,6,10,10,7,0,0,8,24,24, + 40,104,72,136,252,8,8,5,10,10,7,1,0,120,64,128, + 224,48,24,8,8,144,224,6,10,10,7,0,0,12,16,32, + 64,120,204,132,132,204,120,6,10,10,7,0,0,252,132,8, + 8,16,16,32,32,64,64,5,10,10,7,1,0,112,152,136, + 200,112,152,136,136,136,112,6,10,10,7,1,0,120,204,132, + 132,204,120,8,16,32,192,2,7,7,4,1,0,192,0,0, + 0,0,0,192,2,9,9,4,1,254,192,0,0,0,0,0, + 192,64,128,7,7,7,8,0,0,6,24,96,192,96,24,6, + 7,3,3,8,0,2,254,0,254,7,7,7,8,0,0,192, + 48,12,6,12,48,192,5,10,10,6,0,0,112,136,136,8, + 16,32,32,0,32,32,12,12,24,13,0,254,15,128,48,96, + 96,32,70,144,137,16,145,16,145,16,147,32,205,192,64,0, + 48,192,15,0,9,10,20,11,1,0,8,0,8,0,20,0, + 20,0,34,0,34,0,62,0,65,0,65,0,227,128,7,10, + 10,9,1,0,252,70,66,70,124,70,66,66,70,252,8,10, + 10,10,1,0,61,99,65,129,128,128,128,193,98,60,9,10, + 20,10,0,0,254,0,35,0,33,0,32,128,32,128,32,128, + 32,128,33,0,35,0,254,0,7,10,10,9,1,0,254,66, + 64,68,124,68,64,66,66,254,7,10,10,8,1,0,254,66, + 64,68,124,68,64,64,64,224,9,10,20,11,1,0,61,0, + 99,0,65,0,129,0,128,0,135,128,129,0,193,0,99,0, + 62,0,8,10,10,10,1,0,231,66,66,66,126,66,66,66, + 66,231,3,10,10,5,1,0,224,64,64,64,64,64,64,64, + 64,224,4,10,10,6,1,0,112,32,32,32,32,32,32,32, + 160,192,8,10,10,10,1,0,238,68,72,80,112,80,72,68, + 70,231,7,10,10,9,1,0,224,64,64,64,64,64,64,64, + 66,254,11,10,20,13,1,0,224,224,96,192,81,64,81,64, + 91,64,74,64,74,64,78,64,68,64,228,224,9,10,20,11, + 1,0,227,128,97,0,81,0,89,0,73,0,77,0,69,0, + 69,0,67,0,227,0,8,10,10,10,1,0,60,102,66,129, + 129,129,129,66,102,60,6,10,10,8,1,0,248,76,68,68, + 76,120,64,64,64,224,8,13,13,10,1,253,60,102,66,129, + 129,129,129,66,102,60,8,6,3,9,10,20,9,0,0,252, + 0,38,0,34,0,34,0,38,0,60,0,36,0,34,0,35, + 0,241,128,6,10,10,8,1,0,116,204,132,192,112,24,4, + 132,204,184,7,10,10,9,1,0,254,146,146,16,16,16,16, + 16,16,56,8,10,10,10,1,0,231,66,66,66,66,66,66, + 66,102,60,9,10,20,9,0,0,227,128,65,0,99,0,34, + 0,34,0,54,0,20,0,28,0,8,0,8,0,13,10,20, + 13,0,0,231,56,66,16,98,48,34,32,37,32,53,96,21, + 64,24,192,8,128,8,128,10,10,20,10,0,0,115,128,33, + 0,18,0,18,0,12,0,12,0,18,0,33,0,97,128,243, + 192,9,10,20,9,0,0,227,128,65,0,34,0,34,0,20, + 0,8,0,8,0,8,0,8,0,28,0,8,10,10,8,0, + 0,127,67,2,4,8,16,32,64,193,255,3,13,13,5,1, + 253,224,128,128,128,128,128,128,128,128,128,128,128,224,4,10, + 10,4,0,0,128,128,64,64,64,32,32,32,16,16,3,13, + 13,5,1,253,224,32,32,32,32,32,32,32,32,32,32,32, + 224,5,5,5,7,1,5,32,80,80,136,136,7,1,1,7, + 0,253,254,3,3,3,5,1,8,128,192,32,6,7,7,7, + 1,0,112,200,24,104,136,200,116,6,10,10,7,0,0,192, + 64,64,88,108,68,68,68,76,120,6,7,7,7,1,0,120, + 204,128,128,128,196,120,6,10,10,7,1,0,24,8,8,120, + 200,136,136,136,216,116,6,7,7,7,1,0,112,136,248,128, + 128,196,120,5,10,10,4,0,0,56,96,64,248,64,64,64, + 64,64,240,6,10,10,7,1,253,120,208,136,200,112,64,120, + 132,204,112,7,10,10,7,0,0,192,64,64,88,108,68,68, + 68,68,238,3,10,10,3,0,0,64,64,0,192,64,64,64, + 64,64,224,3,13,13,4,0,253,32,32,0,96,32,32,32, + 32,32,32,32,160,192,7,10,10,7,0,0,192,64,64,76, + 72,112,80,72,76,230,3,10,10,3,0,0,192,64,64,64, + 64,64,64,64,64,224,11,7,14,11,0,0,219,128,110,192, + 68,64,68,64,68,64,68,64,238,224,7,7,7,7,0,0, + 216,108,68,68,68,68,238,5,7,7,7,1,0,112,216,136, + 136,136,216,112,6,10,10,7,0,253,216,108,68,68,68,108, + 88,64,64,224,6,10,10,7,1,253,120,200,136,136,136,216, + 104,8,8,28,5,7,7,5,0,0,184,96,64,64,64,64, + 224,4,7,7,6,1,0,112,144,192,96,48,144,224,4,8, + 8,4,0,0,64,240,64,64,64,64,64,48,7,7,7,7, + 0,0,204,68,68,68,68,108,54,7,7,7,7,0,0,238, + 68,68,40,40,16,16,11,7,14,11,0,0,238,224,68,64, + 68,64,36,128,59,128,17,0,17,0,7,7,7,7,0,0, + 238,68,56,16,56,68,238,7,10,10,7,0,253,238,68,68, + 40,40,16,48,32,160,192,6,7,7,6,0,0,252,136,24, + 48,96,196,252,5,13,13,7,1,253,24,32,32,32,32,64, + 128,64,32,32,32,32,24,1,10,10,3,1,0,128,128,128, + 128,128,128,128,128,128,128,5,13,13,7,1,253,192,32,32, + 32,32,16,8,16,32,32,32,32,192,7,2,2,8,0,3, + 98,156,255}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--17-120-100-100-P-84-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=15 h=16 x= 2 y= 9 dx=16 dy= 0 ascent=15 len=30 + Font Bounding box w=19 h=26 x=-2 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =11 descent=-4 + Max Font ascent =15 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR12[3905] U8G_SECTION(".progmem.u8g_font_timR12") = { + 0,19,26,254,249,11,2,36,5,11,32,255,252,15,252,11, + 252,0,0,0,4,0,1,1,11,11,5,2,0,128,128,128, + 128,128,128,128,0,0,128,128,4,3,3,7,1,8,144,144, + 144,8,11,11,8,0,0,18,18,18,127,36,36,254,72,72, + 72,72,7,13,13,8,0,255,16,124,146,146,144,80,56,20, + 18,146,146,124,16,11,11,22,14,1,0,57,0,79,0,139, + 0,138,0,150,0,100,224,13,32,10,32,26,32,18,64,17, + 128,12,11,22,13,0,0,12,0,18,0,18,0,18,0,12, + 224,56,64,68,128,131,0,130,16,69,32,56,192,1,3,3, + 3,1,8,128,128,128,4,14,14,5,0,253,16,32,64,64, + 128,128,128,128,128,128,64,64,32,16,4,14,14,5,255,253, + 128,64,32,32,16,16,16,16,16,16,32,32,64,128,5,6, + 6,8,1,5,32,168,112,112,168,32,7,7,7,9,1,1, + 16,16,16,254,16,16,16,2,3,3,4,1,255,64,64,128, + 4,1,1,5,0,4,240,1,2,2,4,1,0,128,128,5, + 13,13,5,0,254,8,8,8,16,16,32,32,32,64,64,64, + 128,128,7,11,11,8,0,0,56,68,68,130,130,130,130,130, + 68,68,56,4,11,11,8,1,0,32,96,160,32,32,32,32, + 32,32,32,112,7,11,11,8,0,0,56,68,130,2,2,4, + 8,16,32,66,252,7,11,11,8,0,0,56,68,132,8,16, + 56,4,2,2,196,120,8,11,11,8,255,0,2,6,10,10, + 18,34,34,66,255,2,2,7,11,11,8,0,0,62,32,32, + 64,120,4,2,2,2,140,112,7,11,11,8,0,0,14,48, + 64,64,152,228,130,130,130,68,56,7,11,11,8,0,0,254, + 130,132,4,8,8,16,16,16,32,32,6,11,11,8,0,0, + 48,72,132,132,72,48,72,132,132,72,48,7,11,11,8,0, + 0,56,68,130,130,130,70,58,4,4,24,224,1,8,8,4, + 1,0,128,128,0,0,0,0,128,128,2,9,9,4,0,255, + 64,64,0,0,0,0,64,64,128,8,9,9,9,0,0,3, + 12,16,96,128,96,16,12,3,7,4,4,9,0,2,254,0, + 0,254,8,9,9,9,1,0,192,48,8,6,1,6,8,48, + 192,5,11,11,7,1,0,112,136,136,8,16,32,32,0,0, + 32,32,14,14,28,15,0,253,7,192,24,48,32,8,65,168, + 70,100,132,68,136,68,136,68,136,200,137,72,70,48,32,0, + 24,48,7,192,12,11,22,12,0,0,4,0,6,0,10,0, + 11,0,17,0,17,128,32,128,63,128,64,192,64,64,224,240, + 8,11,11,11,1,0,252,70,66,66,68,124,70,65,65,67, + 254,10,11,22,11,0,0,31,64,96,192,64,64,128,64,128, + 0,128,0,128,0,128,0,64,64,97,128,30,0,10,11,22, + 12,0,0,252,0,67,0,64,128,64,64,64,64,64,64,64, + 64,64,64,64,128,67,0,252,0,9,11,22,10,0,0,255, + 0,65,0,64,0,64,0,66,0,126,0,66,0,64,0,64, + 0,64,128,255,0,8,11,11,9,0,0,255,65,64,64,66, + 126,66,64,64,64,224,11,11,22,12,0,0,15,64,48,192, + 64,64,128,0,128,0,129,224,128,64,128,64,64,64,48,192, + 15,0,10,11,22,12,0,0,225,192,64,128,64,128,64,128, + 64,128,127,128,64,128,64,128,64,128,64,128,225,192,3,11, + 11,5,0,0,224,64,64,64,64,64,64,64,64,64,224,5, + 11,11,6,0,0,56,16,16,16,16,16,16,16,144,144,96, + 10,11,22,12,1,0,243,192,65,0,66,0,68,0,72,0, + 112,0,72,0,68,0,66,0,65,0,243,192,8,11,11,10, + 0,0,224,64,64,64,64,64,64,64,64,65,254,13,11,22, + 15,0,0,224,56,96,48,80,80,80,80,72,144,72,144,72, + 144,69,16,69,16,66,16,226,56,10,11,22,12,0,0,225, + 192,96,128,80,128,80,128,72,128,72,128,68,128,66,128,66, + 128,65,128,240,128,9,11,22,12,1,0,28,0,99,0,65, + 0,128,128,128,128,128,128,128,128,128,128,65,0,99,0,28, + 0,8,11,11,9,0,0,252,66,65,65,66,124,64,64,64, + 64,224,10,14,28,12,1,253,28,0,99,0,65,0,128,128, + 128,128,128,128,128,128,128,128,65,0,99,0,60,0,12,0, + 6,0,1,192,10,11,22,11,0,0,252,0,66,0,65,0, + 65,0,66,0,124,0,72,0,68,0,66,0,65,0,225,192, + 8,11,11,9,0,0,58,70,130,128,96,28,2,1,129,194, + 188,9,11,22,10,0,0,255,128,136,128,136,128,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,28,0,10,11,22, + 12,0,0,225,192,64,128,64,128,64,128,64,128,64,128,64, + 128,64,128,64,128,33,0,30,0,11,11,22,12,0,0,224, + 224,64,64,32,128,32,128,17,0,17,0,17,0,10,0,10, + 0,4,0,4,0,15,11,22,16,0,0,231,14,66,4,33, + 8,33,8,17,136,18,144,18,144,10,80,10,80,4,32,4, + 32,11,11,22,12,0,0,224,224,64,64,32,128,17,0,10, + 0,4,0,10,0,17,0,32,128,64,64,224,224,11,11,22, + 12,0,0,224,224,64,64,32,128,17,0,17,0,10,0,4, + 0,4,0,4,0,4,0,14,0,9,11,22,10,0,0,255, + 128,129,0,130,0,4,0,4,0,8,0,16,0,32,0,32, + 0,64,128,255,0,3,14,14,5,1,253,224,128,128,128,128, + 128,128,128,128,128,128,128,128,224,6,11,11,5,255,0,128, + 64,64,32,32,16,16,8,8,4,4,3,14,14,5,0,253, + 224,32,32,32,32,32,32,32,32,32,32,32,32,224,7,7, + 7,8,0,4,16,40,40,68,68,130,130,8,1,1,8,0, + 254,255,3,3,3,6,1,8,128,64,32,7,8,8,7,1, + 0,112,136,136,56,200,136,154,108,7,11,11,8,0,0,64, + 192,64,92,100,66,66,66,66,100,56,6,8,8,7,0,0, + 56,68,132,128,128,128,68,56,7,11,11,8,0,0,4,12, + 4,52,76,132,132,132,132,78,52,6,8,8,7,0,0,56, + 68,132,252,128,128,68,56,5,11,11,6,1,0,48,72,64, + 64,240,64,64,64,64,64,240,7,12,12,8,0,252,54,76, + 132,132,72,112,128,124,130,130,196,120,8,11,11,8,0,0, + 64,192,64,92,102,66,66,66,66,66,231,3,11,11,5,1, + 0,64,64,0,64,192,64,64,64,64,64,224,3,15,15,4, + 0,252,32,32,0,32,96,32,32,32,32,32,32,32,32,160, + 192,7,11,11,8,1,0,64,192,64,92,72,80,96,80,72, + 68,238,3,11,11,5,1,0,64,192,64,64,64,64,64,64, + 64,64,224,11,8,16,13,1,0,89,128,230,64,68,64,68, + 64,68,64,68,64,68,64,238,224,8,8,8,8,0,0,92, + 230,66,66,66,66,66,231,7,8,8,8,0,0,56,68,130, + 130,130,130,68,56,7,12,12,8,0,252,92,230,66,66,66, + 66,98,92,64,64,64,224,7,12,12,8,1,252,116,204,132, + 132,132,132,204,116,4,4,4,14,5,8,8,6,0,0,88, + 232,64,64,64,64,64,224,5,8,8,6,0,0,120,136,128, + 112,8,136,200,176,4,10,10,5,0,0,64,64,240,64,64, + 64,64,64,80,32,8,8,8,8,0,0,198,66,66,66,66, + 66,71,58,8,8,8,8,0,0,231,66,66,36,36,20,24, + 8,12,8,16,12,0,0,238,112,68,32,68,32,34,64,34, + 64,21,64,8,128,8,128,7,8,8,8,0,0,238,68,40, + 16,40,40,68,238,8,12,12,8,0,252,247,66,66,36,36, + 20,8,8,16,16,160,192,6,8,8,7,0,0,252,132,8, + 16,32,64,132,252,4,14,14,8,2,253,48,64,64,64,64, + 64,128,64,64,64,64,64,64,48,1,11,11,3,0,0,128, + 128,128,128,128,128,128,128,128,128,128,4,14,14,8,0,253, + 192,32,32,32,32,32,16,32,32,32,32,32,32,192,8,3, + 3,9,0,3,113,153,142,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,4,0,1,1,11, + 11,5,2,253,128,128,0,0,128,128,128,128,128,128,128,7, + 12,12,8,0,254,4,4,60,74,138,136,144,146,84,56,32, + 32,8,11,11,8,0,0,12,18,34,32,32,252,16,16,113, + 145,110,8,9,9,8,0,1,153,102,66,129,129,129,66,102, + 153,9,11,22,8,255,0,227,128,65,0,34,0,20,0,8, + 0,62,0,8,0,62,0,8,0,8,0,28,0,1,11,11, + 3,0,0,128,128,128,128,128,0,128,128,128,128,128,7,14, + 14,8,0,253,56,68,76,32,80,136,132,66,34,20,8,100, + 68,56,4,2,2,6,1,9,144,144,11,11,22,13,0,0, + 14,0,49,128,64,64,78,64,145,32,144,32,144,32,81,64, + 78,64,49,128,14,0,4,6,6,5,0,5,96,16,112,144, + 80,240,7,7,7,8,0,0,18,36,72,144,72,36,18,8, + 5,5,9,0,0,255,1,1,1,1,4,1,1,5,0,4, + 240,11,11,22,13,0,0,14,0,49,128,64,64,78,64,137, + 32,142,32,138,32,74,64,73,64,49,128,14,0,5,1,1, + 6,0,9,248,5,5,5,7,1,6,112,136,136,136,112,7, + 9,9,9,1,0,16,16,16,254,16,16,16,0,254,5,7, + 7,5,0,4,112,136,8,16,32,72,248,6,7,7,5,255, + 4,56,68,4,24,4,132,120,3,3,3,6,2,8,32,64, + 128,8,11,11,8,0,253,198,66,66,66,66,66,71,122,64, + 64,64,7,15,15,8,0,252,62,116,244,244,244,116,52,20, + 20,20,20,20,20,20,20,1,2,2,4,1,4,128,128,4, + 4,4,6,0,252,32,112,16,224,3,7,7,5,1,4,64, + 192,64,64,64,64,224,4,6,6,5,0,5,96,144,144,144, + 96,240,7,7,7,8,0,0,144,72,36,18,36,72,144,11, + 11,22,13,1,0,64,128,193,0,67,0,66,0,68,64,76, + 192,233,64,25,64,18,64,39,224,64,64,12,11,22,13,0, + 0,64,128,193,0,67,0,66,0,68,224,77,16,232,16,24, + 32,16,64,32,144,65,240,13,11,22,13,255,0,56,32,68, + 64,4,192,24,128,5,16,135,48,122,80,6,80,4,144,9, + 248,8,16,5,11,11,7,1,253,32,32,0,0,32,32,64, + 128,136,136,112,12,15,30,12,0,0,8,0,4,0,2,0, + 0,0,4,0,6,0,10,0,11,0,17,0,17,128,32,128, + 63,128,64,192,64,64,224,240,12,15,30,12,0,0,1,0, + 2,0,4,0,0,0,4,0,6,0,10,0,11,0,17,0, + 17,128,32,128,63,128,64,192,64,64,224,240,12,15,30,12, + 0,0,4,0,10,0,17,0,0,0,4,0,6,0,10,0, + 11,0,17,0,17,128,32,128,63,128,64,192,64,64,224,240, + 12,14,28,12,0,0,13,0,22,0,0,0,4,0,6,0, + 10,0,11,0,17,0,17,128,32,128,63,128,64,192,64,64, + 224,240,12,14,28,12,0,0,9,0,9,0,0,0,4,0, + 6,0,10,0,11,0,17,0,17,128,32,128,63,128,64,192, + 64,64,224,240,12,14,28,12,0,0,6,0,9,0,9,0, + 6,0,6,0,10,0,11,0,17,0,17,128,32,128,63,128, + 64,192,64,64,224,240,14,11,22,15,0,0,7,248,3,8, + 5,8,9,0,9,16,17,240,31,16,33,0,33,0,65,4, + 243,248,10,15,30,11,0,252,15,64,48,192,64,64,128,64, + 128,0,128,0,128,0,128,0,64,64,49,128,14,0,4,0, + 14,0,2,0,28,0,9,15,30,10,0,0,32,0,16,0, + 8,0,0,0,255,0,65,0,64,0,64,0,66,0,126,0, + 66,0,64,0,64,0,64,128,255,0,9,15,30,10,0,0, + 2,0,4,0,8,0,0,0,255,0,65,0,65,0,64,0, + 66,0,126,0,66,0,64,0,64,0,64,128,255,0,9,15, + 30,10,0,0,8,0,20,0,34,0,0,0,255,0,65,0, + 64,0,64,0,66,0,126,0,66,0,64,0,64,0,64,128, + 255,0,9,14,28,10,0,0,36,0,36,0,0,0,255,0, + 65,0,64,0,64,0,66,0,126,0,66,0,64,0,64,0, + 64,128,255,0,4,15,15,5,255,0,128,64,32,0,112,32, + 32,32,32,32,32,32,32,32,112,5,15,15,5,0,0,8, + 16,32,0,224,64,64,64,64,64,64,64,64,64,224,5,15, + 15,5,255,0,32,80,136,0,112,32,32,32,32,32,32,32, + 32,32,112,3,14,14,5,0,0,160,160,0,224,64,64,64, + 64,64,64,64,64,64,224,10,11,22,12,1,0,252,0,67, + 0,64,128,64,64,64,64,248,64,64,64,64,64,64,128,67, + 0,252,0,10,14,28,12,0,0,13,0,22,0,0,0,225, + 192,96,128,80,128,80,128,72,128,72,128,68,128,66,128,66, + 128,65,128,240,128,9,15,30,12,1,0,32,0,16,0,8, + 0,0,0,28,0,99,0,65,0,128,128,128,128,128,128,128, + 128,128,128,65,0,99,0,28,0,9,15,30,12,1,0,2, + 0,4,0,8,0,0,0,28,0,99,0,65,0,128,128,128, + 128,128,128,128,128,128,128,65,0,99,0,28,0,9,15,30, + 12,1,0,8,0,20,0,34,0,0,0,28,0,99,0,65, + 0,128,128,128,128,128,128,128,128,128,128,65,0,99,0,28, + 0,9,14,28,12,1,0,26,0,44,0,0,0,28,0,99, + 0,65,0,128,128,128,128,128,128,128,128,128,128,65,0,99, + 0,28,0,9,14,28,12,1,0,34,0,34,0,0,0,28, + 0,99,0,65,0,128,128,128,128,128,128,128,128,128,128,65, + 0,99,0,28,0,7,7,7,9,1,0,130,68,40,16,40, + 68,130,11,13,26,12,0,255,0,64,14,64,49,128,65,64, + 130,32,132,32,132,32,136,32,144,32,80,64,49,128,78,0, + 64,0,10,15,30,12,0,0,16,0,8,0,4,0,0,0, + 225,192,64,128,64,128,64,128,64,128,64,128,64,128,64,128, + 64,128,33,0,30,0,10,15,30,12,0,0,1,0,2,0, + 4,0,0,0,225,192,64,128,64,128,64,128,64,128,64,128, + 64,128,64,128,64,128,33,0,30,0,10,15,30,12,0,0, + 4,0,10,0,17,0,0,0,225,192,64,128,64,128,64,128, + 64,128,64,128,64,128,64,128,64,128,33,0,30,0,10,14, + 28,12,0,0,18,0,18,0,0,0,225,192,64,128,64,128, + 64,128,64,128,64,128,64,128,64,128,64,128,33,0,30,0, + 11,15,30,12,0,0,0,128,1,0,2,0,0,0,224,224, + 64,64,32,128,17,0,17,0,10,0,4,0,4,0,4,0, + 4,0,14,0,8,11,11,9,0,0,224,64,124,66,65,65, + 66,124,64,64,224,7,11,11,8,0,0,56,68,68,68,72, + 88,68,66,66,82,204,7,12,12,7,1,0,64,32,16,0, + 112,136,136,56,200,136,154,100,7,12,12,7,1,0,8,16, + 32,0,112,136,136,56,200,136,154,100,7,12,12,7,1,0, + 32,80,136,0,112,136,136,56,200,136,154,100,7,11,11,7, + 1,0,104,176,0,112,136,136,56,200,136,154,100,7,11,11, + 7,1,0,72,72,0,112,136,136,56,200,136,154,100,7,12, + 12,7,1,0,32,80,80,32,112,136,136,56,200,136,154,100, + 9,8,16,11,1,0,115,0,140,128,136,128,63,128,200,0, + 136,0,156,128,99,0,6,12,12,7,0,252,56,68,132,128, + 128,128,68,56,16,56,8,112,6,12,12,7,0,0,64,32, + 16,0,56,68,132,252,128,128,68,56,6,12,12,7,0,0, + 4,8,16,0,56,68,132,252,128,128,68,56,6,12,12,7, + 0,0,16,40,68,0,56,68,132,252,128,128,68,56,6,11, + 11,7,0,0,72,72,0,56,68,132,252,128,128,68,56,3, + 12,12,5,0,0,128,64,32,0,64,192,64,64,64,64,64, + 224,3,12,12,5,0,0,32,64,128,0,64,192,64,64,64, + 64,64,224,5,12,12,5,255,0,32,80,136,0,32,96,32, + 32,32,32,32,112,3,11,11,5,0,0,160,160,0,64,192, + 64,64,64,64,64,224,7,11,11,8,0,0,108,48,200,60, + 68,130,130,130,130,68,56,8,11,11,8,255,0,52,88,0, + 92,230,66,66,66,66,66,231,7,12,12,8,0,0,32,16, + 8,0,56,68,130,130,130,130,68,56,7,12,12,8,0,0, + 4,8,16,0,56,68,130,130,130,130,68,56,7,12,12,8, + 0,0,16,40,68,0,56,68,130,130,130,130,68,56,7,11, + 11,8,0,0,52,88,0,56,68,130,130,130,130,68,56,7, + 11,11,8,0,0,72,72,0,56,68,130,130,130,130,68,56, + 9,9,18,9,255,0,8,0,8,0,0,0,0,0,255,128, + 0,0,0,0,8,0,8,0,7,12,12,8,0,254,2,2, + 60,68,138,146,146,162,100,56,64,64,8,12,12,8,255,0, + 32,16,8,0,198,66,66,66,66,66,70,59,8,12,12,8, + 255,0,4,8,16,0,198,66,66,66,66,66,70,59,8,12, + 12,8,255,0,16,40,68,0,198,66,66,66,66,66,70,59, + 8,11,11,8,255,0,36,36,0,198,66,66,66,66,66,70, + 59,8,16,16,8,255,252,2,4,8,0,247,66,66,36,36, + 20,8,8,16,16,160,192,8,15,15,8,255,252,64,192,64, + 92,98,65,65,65,65,98,92,64,64,64,224,8,15,15,8, + 255,252,36,36,0,247,66,98,36,52,20,24,8,16,16,160, + 192}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--17-120-100-100-P-84-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=15 h=15 x= 2 y= 8 dx=16 dy= 0 ascent=12 len=28 + Font Bounding box w=19 h=26 x=-2 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =11 descent=-4 + X Font ascent =11 descent=-4 + Max Font ascent =12 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR12r[1784] U8G_SECTION(".progmem.u8g_font_timR12r") = { + 0,19,26,254,249,11,2,36,5,11,32,127,252,12,252,11, + 252,0,0,0,4,0,1,1,11,11,5,2,0,128,128,128, + 128,128,128,128,0,0,128,128,4,3,3,7,1,8,144,144, + 144,8,11,11,8,0,0,18,18,18,127,36,36,254,72,72, + 72,72,7,13,13,8,0,255,16,124,146,146,144,80,56,20, + 18,146,146,124,16,11,11,22,14,1,0,57,0,79,0,139, + 0,138,0,150,0,100,224,13,32,10,32,26,32,18,64,17, + 128,12,11,22,13,0,0,12,0,18,0,18,0,18,0,12, + 224,56,64,68,128,131,0,130,16,69,32,56,192,1,3,3, + 3,1,8,128,128,128,4,14,14,5,0,253,16,32,64,64, + 128,128,128,128,128,128,64,64,32,16,4,14,14,5,255,253, + 128,64,32,32,16,16,16,16,16,16,32,32,64,128,5,6, + 6,8,1,5,32,168,112,112,168,32,7,7,7,9,1,1, + 16,16,16,254,16,16,16,2,3,3,4,1,255,64,64,128, + 4,1,1,5,0,4,240,1,2,2,4,1,0,128,128,5, + 13,13,5,0,254,8,8,8,16,16,32,32,32,64,64,64, + 128,128,7,11,11,8,0,0,56,68,68,130,130,130,130,130, + 68,68,56,4,11,11,8,1,0,32,96,160,32,32,32,32, + 32,32,32,112,7,11,11,8,0,0,56,68,130,2,2,4, + 8,16,32,66,252,7,11,11,8,0,0,56,68,132,8,16, + 56,4,2,2,196,120,8,11,11,8,255,0,2,6,10,10, + 18,34,34,66,255,2,2,7,11,11,8,0,0,62,32,32, + 64,120,4,2,2,2,140,112,7,11,11,8,0,0,14,48, + 64,64,152,228,130,130,130,68,56,7,11,11,8,0,0,254, + 130,132,4,8,8,16,16,16,32,32,6,11,11,8,0,0, + 48,72,132,132,72,48,72,132,132,72,48,7,11,11,8,0, + 0,56,68,130,130,130,70,58,4,4,24,224,1,8,8,4, + 1,0,128,128,0,0,0,0,128,128,2,9,9,4,0,255, + 64,64,0,0,0,0,64,64,128,8,9,9,9,0,0,3, + 12,16,96,128,96,16,12,3,7,4,4,9,0,2,254,0, + 0,254,8,9,9,9,1,0,192,48,8,6,1,6,8,48, + 192,5,11,11,7,1,0,112,136,136,8,16,32,32,0,0, + 32,32,14,14,28,15,0,253,7,192,24,48,32,8,65,168, + 70,100,132,68,136,68,136,68,136,200,137,72,70,48,32,0, + 24,48,7,192,12,11,22,12,0,0,4,0,6,0,10,0, + 11,0,17,0,17,128,32,128,63,128,64,192,64,64,224,240, + 8,11,11,11,1,0,252,70,66,66,68,124,70,65,65,67, + 254,10,11,22,11,0,0,31,64,96,192,64,64,128,64,128, + 0,128,0,128,0,128,0,64,64,97,128,30,0,10,11,22, + 12,0,0,252,0,67,0,64,128,64,64,64,64,64,64,64, + 64,64,64,64,128,67,0,252,0,9,11,22,10,0,0,255, + 0,65,0,64,0,64,0,66,0,126,0,66,0,64,0,64, + 0,64,128,255,0,8,11,11,9,0,0,255,65,64,64,66, + 126,66,64,64,64,224,11,11,22,12,0,0,15,64,48,192, + 64,64,128,0,128,0,129,224,128,64,128,64,64,64,48,192, + 15,0,10,11,22,12,0,0,225,192,64,128,64,128,64,128, + 64,128,127,128,64,128,64,128,64,128,64,128,225,192,3,11, + 11,5,0,0,224,64,64,64,64,64,64,64,64,64,224,5, + 11,11,6,0,0,56,16,16,16,16,16,16,16,144,144,96, + 10,11,22,12,1,0,243,192,65,0,66,0,68,0,72,0, + 112,0,72,0,68,0,66,0,65,0,243,192,8,11,11,10, + 0,0,224,64,64,64,64,64,64,64,64,65,254,13,11,22, + 15,0,0,224,56,96,48,80,80,80,80,72,144,72,144,72, + 144,69,16,69,16,66,16,226,56,10,11,22,12,0,0,225, + 192,96,128,80,128,80,128,72,128,72,128,68,128,66,128,66, + 128,65,128,240,128,9,11,22,12,1,0,28,0,99,0,65, + 0,128,128,128,128,128,128,128,128,128,128,65,0,99,0,28, + 0,8,11,11,9,0,0,252,66,65,65,66,124,64,64,64, + 64,224,10,14,28,12,1,253,28,0,99,0,65,0,128,128, + 128,128,128,128,128,128,128,128,65,0,99,0,60,0,12,0, + 6,0,1,192,10,11,22,11,0,0,252,0,66,0,65,0, + 65,0,66,0,124,0,72,0,68,0,66,0,65,0,225,192, + 8,11,11,9,0,0,58,70,130,128,96,28,2,1,129,194, + 188,9,11,22,10,0,0,255,128,136,128,136,128,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,28,0,10,11,22, + 12,0,0,225,192,64,128,64,128,64,128,64,128,64,128,64, + 128,64,128,64,128,33,0,30,0,11,11,22,12,0,0,224, + 224,64,64,32,128,32,128,17,0,17,0,17,0,10,0,10, + 0,4,0,4,0,15,11,22,16,0,0,231,14,66,4,33, + 8,33,8,17,136,18,144,18,144,10,80,10,80,4,32,4, + 32,11,11,22,12,0,0,224,224,64,64,32,128,17,0,10, + 0,4,0,10,0,17,0,32,128,64,64,224,224,11,11,22, + 12,0,0,224,224,64,64,32,128,17,0,17,0,10,0,4, + 0,4,0,4,0,4,0,14,0,9,11,22,10,0,0,255, + 128,129,0,130,0,4,0,4,0,8,0,16,0,32,0,32, + 0,64,128,255,0,3,14,14,5,1,253,224,128,128,128,128, + 128,128,128,128,128,128,128,128,224,6,11,11,5,255,0,128, + 64,64,32,32,16,16,8,8,4,4,3,14,14,5,0,253, + 224,32,32,32,32,32,32,32,32,32,32,32,32,224,7,7, + 7,8,0,4,16,40,40,68,68,130,130,8,1,1,8,0, + 254,255,3,3,3,6,1,8,128,64,32,7,8,8,7,1, + 0,112,136,136,56,200,136,154,108,7,11,11,8,0,0,64, + 192,64,92,100,66,66,66,66,100,56,6,8,8,7,0,0, + 56,68,132,128,128,128,68,56,7,11,11,8,0,0,4,12, + 4,52,76,132,132,132,132,78,52,6,8,8,7,0,0,56, + 68,132,252,128,128,68,56,5,11,11,6,1,0,48,72,64, + 64,240,64,64,64,64,64,240,7,12,12,8,0,252,54,76, + 132,132,72,112,128,124,130,130,196,120,8,11,11,8,0,0, + 64,192,64,92,102,66,66,66,66,66,231,3,11,11,5,1, + 0,64,64,0,64,192,64,64,64,64,64,224,3,15,15,4, + 0,252,32,32,0,32,96,32,32,32,32,32,32,32,32,160, + 192,7,11,11,8,1,0,64,192,64,92,72,80,96,80,72, + 68,238,3,11,11,5,1,0,64,192,64,64,64,64,64,64, + 64,64,224,11,8,16,13,1,0,89,128,230,64,68,64,68, + 64,68,64,68,64,68,64,238,224,8,8,8,8,0,0,92, + 230,66,66,66,66,66,231,7,8,8,8,0,0,56,68,130, + 130,130,130,68,56,7,12,12,8,0,252,92,230,66,66,66, + 66,98,92,64,64,64,224,7,12,12,8,1,252,116,204,132, + 132,132,132,204,116,4,4,4,14,5,8,8,6,0,0,88, + 232,64,64,64,64,64,224,5,8,8,6,0,0,120,136,128, + 112,8,136,200,176,4,10,10,5,0,0,64,64,240,64,64, + 64,64,64,80,32,8,8,8,8,0,0,198,66,66,66,66, + 66,71,58,8,8,8,8,0,0,231,66,66,36,36,20,24, + 8,12,8,16,12,0,0,238,112,68,32,68,32,34,64,34, + 64,21,64,8,128,8,128,7,8,8,8,0,0,238,68,40, + 16,40,40,68,238,8,12,12,8,0,252,247,66,66,36,36, + 20,8,8,16,16,160,192,6,8,8,7,0,0,252,132,8, + 16,32,64,132,252,4,14,14,8,2,253,48,64,64,64,64, + 64,128,64,64,64,64,64,64,48,1,11,11,3,0,0,128, + 128,128,128,128,128,128,128,128,128,128,4,14,14,8,0,253, + 192,32,32,32,32,32,16,32,32,32,32,32,32,192,8,3, + 3,9,0,3,113,153,142,255}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--20-140-100-100-P-96-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w=18 h=18 x= 2 y=10 dx=18 dy= 0 ascent=18 len=39 + Font Bounding box w=22 h=29 x=-3 y=-7 + Calculated Min Values x=-2 y=-4 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =18 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR14[4577] U8G_SECTION(".progmem.u8g_font_timR14") = { + 0,22,29,253,249,13,2,131,6,16,32,255,252,18,252,13, + 252,0,0,0,5,0,1,2,13,13,4,1,0,192,192,192, + 192,192,192,64,64,64,0,0,192,192,6,4,4,8,1,9, + 204,204,204,136,12,11,22,10,255,1,12,192,12,192,12,192, + 127,240,25,128,25,128,25,128,255,224,51,0,51,0,51,0, + 7,16,16,9,1,254,16,124,214,210,208,240,120,60,28,22, + 22,150,214,124,16,16,13,13,26,15,1,0,56,48,111,224, + 196,64,196,128,205,128,251,0,114,112,6,216,13,136,9,136, + 25,152,49,240,32,224,12,13,26,14,1,0,28,0,50,0, + 50,0,50,0,52,0,25,224,56,192,109,128,207,0,199,0, + 199,128,237,240,120,224,2,4,4,4,1,9,192,192,192,128, + 5,17,17,7,1,252,24,48,96,96,64,192,192,192,192,192, + 192,192,64,96,96,48,24,5,17,17,7,1,252,192,96,48, + 48,16,24,24,24,24,24,24,24,16,48,48,96,192,7,7, + 7,9,1,6,16,214,84,56,214,146,16,8,8,8,10,1, + 1,24,24,24,255,255,24,24,24,3,5,5,4,0,253,96, + 96,32,96,192,5,2,2,6,0,3,248,248,2,2,2,4, + 1,0,192,192,7,17,17,5,255,252,2,2,6,4,12,12, + 8,24,24,16,48,48,32,96,96,64,192,8,13,13,9,1, + 0,60,102,102,195,195,195,195,195,195,195,102,102,60,6,13, + 13,9,2,0,48,112,240,48,48,48,48,48,48,48,48,120, + 252,7,13,13,9,1,0,60,126,206,134,6,6,12,12,24, + 48,98,254,254,7,13,13,9,1,0,124,206,134,6,12,56, + 60,14,6,6,6,204,248,8,13,13,9,0,0,2,6,14, + 14,22,38,70,70,255,255,6,6,6,7,13,13,9,1,0, + 126,124,192,192,240,60,12,14,6,6,12,220,240,8,13,13, + 9,1,0,7,28,48,96,96,252,198,195,195,195,227,118,60, + 8,13,13,9,1,0,127,255,130,6,4,12,12,8,24,24, + 16,48,48,8,13,13,9,1,0,60,102,194,230,124,56,60, + 110,199,195,195,102,60,8,13,13,9,1,0,60,110,198,195, + 195,195,227,127,54,6,12,56,224,2,9,9,5,1,0,192, + 192,0,0,0,0,0,192,192,3,12,12,5,0,253,96,96, + 0,0,0,0,0,96,96,32,96,192,9,9,18,11,1,0, + 1,128,7,0,28,0,112,0,192,0,112,0,28,0,7,0, + 1,128,9,5,10,11,1,2,255,128,255,128,0,0,255,128, + 255,128,9,9,18,11,1,0,192,0,112,0,28,0,7,0, + 1,128,7,0,28,0,112,0,192,0,6,13,13,8,1,0, + 120,140,196,204,12,24,24,48,32,32,0,48,48,14,16,32, + 17,1,253,7,224,14,48,56,24,48,8,99,236,103,228,198, + 100,204,100,204,204,204,200,205,216,103,112,96,0,48,0,28, + 48,7,224,13,13,26,14,1,0,2,0,7,0,7,0,5, + 0,13,128,9,128,25,192,16,192,31,192,48,224,32,96,96, + 112,240,248,10,13,26,13,2,0,255,0,99,128,97,128,97, + 128,97,128,99,0,127,128,97,192,96,192,96,192,96,192,97, + 128,255,0,11,13,26,13,1,0,15,32,48,224,96,96,96, + 32,192,0,192,0,192,0,192,0,192,0,96,0,96,96,56, + 192,15,0,11,13,26,14,2,0,255,0,99,128,96,192,96, + 192,96,96,96,96,96,96,96,96,96,96,96,192,96,192,99, + 128,255,0,9,13,26,12,1,0,255,128,97,128,96,128,96, + 0,96,0,97,0,127,0,97,0,96,0,96,0,96,128,97, + 128,255,128,9,13,26,11,1,0,255,128,97,128,96,128,96, + 0,96,0,97,0,127,0,97,0,96,0,96,0,96,0,96, + 0,240,0,12,13,26,14,1,0,15,32,48,224,96,96,96, + 32,192,0,192,0,192,240,192,96,192,96,96,96,96,96,57, + 192,15,0,12,13,26,14,1,0,240,240,96,96,96,96,96, + 96,96,96,96,96,127,224,96,96,96,96,96,96,96,96,96, + 96,240,240,4,13,13,6,1,0,240,96,96,96,96,96,96, + 96,96,96,96,96,240,6,13,13,7,0,0,60,24,24,24, + 24,24,24,24,24,24,24,216,240,12,13,26,14,1,0,243, + 224,97,128,99,0,102,0,108,0,120,0,120,0,124,0,110, + 0,103,0,99,128,97,192,240,240,10,13,26,12,1,0,240, + 0,96,0,96,0,96,0,96,0,96,0,96,0,96,0,96, + 0,96,0,96,64,96,192,255,192,14,13,26,17,1,0,224, + 28,112,56,112,56,120,120,88,88,88,216,92,216,76,152,77, + 152,71,24,71,24,66,24,226,60,12,13,26,14,1,0,224, + 112,96,32,112,32,120,32,92,32,76,32,78,32,71,32,67, + 160,65,224,64,224,64,96,224,32,12,13,26,14,1,0,15, + 0,48,192,96,96,96,96,192,48,192,48,192,48,192,48,192, + 48,96,96,96,96,48,192,15,0,9,13,26,11,1,0,255, + 0,99,128,97,128,97,128,97,128,99,0,126,0,96,0,96, + 0,96,0,96,0,96,0,240,0,12,17,34,14,1,252,15, + 0,48,192,96,96,96,96,192,48,192,48,192,48,192,48,192, + 48,96,96,96,96,48,192,15,0,6,0,3,0,1,192,0, + 240,11,13,26,13,1,0,255,0,99,128,97,128,97,128,97, + 128,99,0,126,0,110,0,102,0,99,0,97,128,96,192,240, + 224,8,13,13,11,2,0,58,70,194,192,224,120,60,14,7, + 3,131,198,184,10,13,26,12,1,0,255,192,204,192,140,64, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,30,0,11,13,26,14,2,0,240,224,96,64,96,64, + 96,64,96,64,96,64,96,64,96,64,96,64,96,64,112,192, + 57,128,31,0,13,13,26,14,0,0,248,120,112,48,48,32, + 56,32,24,96,24,64,28,64,12,192,14,128,6,128,7,128, + 3,0,3,0,18,13,39,18,0,0,249,227,192,112,193,128, + 48,193,0,56,225,0,24,99,0,24,226,0,24,226,0,29, + 166,0,13,52,0,15,60,0,14,56,0,6,24,0,6,24, + 0,12,13,26,14,1,0,240,112,112,96,56,192,25,128,13, + 0,14,0,6,0,15,0,27,0,17,128,49,192,96,224,240, + 240,12,13,26,14,1,0,240,240,112,96,48,192,24,128,25, + 0,15,0,6,0,6,0,6,0,6,0,6,0,6,0,15, + 0,10,13,26,12,1,0,127,192,97,192,65,128,3,128,7, + 0,6,0,14,0,28,0,56,0,48,0,112,64,224,192,255, + 192,4,16,16,6,2,253,240,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,240,5,13,13,5,0,0,128,128,192, + 64,96,96,32,48,48,16,24,8,8,4,16,16,6,0,253, + 240,48,48,48,48,48,48,48,48,48,48,48,48,48,48,240, + 7,7,7,9,1,6,16,56,40,108,68,198,130,9,2,4, + 9,0,252,255,128,255,128,4,3,3,4,0,10,192,96,16, + 7,9,9,9,1,0,120,200,204,28,108,204,204,252,102,8, + 13,13,9,0,0,96,224,96,96,110,119,99,99,99,99,99, + 102,92,7,9,9,8,0,0,60,102,192,192,192,192,192,102, + 60,8,13,13,9,0,0,6,14,6,6,62,102,198,198,198, + 198,198,102,63,7,9,9,8,0,0,60,102,194,254,192,192, + 192,102,60,6,13,13,6,0,0,28,52,32,96,248,96,96, + 96,96,96,96,96,240,8,13,13,9,0,252,62,204,196,196, + 204,120,64,124,127,131,193,226,124,9,13,26,10,0,0,96, + 0,224,0,96,0,96,0,102,0,111,0,115,0,99,0,99, + 0,99,0,99,0,99,0,243,128,4,13,13,5,0,0,96, + 96,0,0,96,224,96,96,96,96,96,96,240,4,17,17,5, + 255,252,48,48,0,0,48,112,48,48,48,48,48,48,48,48, + 48,224,192,10,13,26,9,0,0,96,0,224,0,96,0,96, + 0,103,0,98,0,100,0,104,0,120,0,108,0,110,0,103, + 0,227,192,4,13,13,5,0,0,96,224,96,96,96,96,96, + 96,96,96,96,96,240,14,9,18,15,0,0,102,48,239,120, + 115,152,99,24,99,24,99,24,99,24,99,24,247,188,9,9, + 18,10,0,0,102,0,239,0,115,0,99,0,99,0,99,0, + 99,0,99,0,243,128,8,9,9,9,0,0,60,102,195,195, + 195,195,195,102,60,8,13,13,9,0,252,110,247,99,99,99, + 99,99,118,124,96,96,96,240,8,13,13,9,0,252,62,102, + 198,198,198,198,198,102,62,6,6,6,15,6,9,9,7,0, + 0,108,236,112,96,96,96,96,96,240,5,9,9,7,1,0, + 104,152,200,224,112,56,152,200,176,6,11,11,6,0,0,32, + 96,248,96,96,96,96,96,96,116,56,9,9,18,10,0,0, + 231,0,99,0,99,0,99,0,99,0,99,0,99,0,119,0, + 59,128,9,9,18,9,255,0,243,128,99,0,98,0,50,0, + 54,0,20,0,28,0,8,0,8,0,13,9,18,14,0,0, + 231,56,102,48,98,96,54,96,55,96,29,64,29,192,8,128, + 8,128,9,9,18,9,0,0,225,128,99,0,54,0,28,0, + 28,0,28,0,54,0,99,0,195,128,8,13,13,9,0,252, + 243,99,114,50,54,28,28,12,8,24,16,240,224,7,9,9, + 8,0,0,254,206,140,24,48,48,98,230,254,7,17,17,9, + 1,252,14,24,48,48,48,48,48,96,192,96,48,48,48,48, + 48,24,14,1,13,13,3,1,0,128,128,128,128,128,128,128, + 128,128,128,128,128,128,7,17,17,9,1,252,224,48,24,24, + 24,24,24,12,6,12,24,24,24,24,24,48,224,9,4,8, + 11,1,3,48,0,121,128,207,0,6,0,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,5, + 0,1,2,13,13,4,1,252,192,192,0,0,128,128,128,192, + 192,192,192,192,192,7,14,14,9,1,253,6,4,60,110,200, + 216,208,208,240,114,124,64,192,128,10,13,26,11,0,0,15, + 0,25,128,25,128,24,0,24,0,24,0,126,0,24,0,24, + 0,16,0,120,64,191,192,231,128,9,7,14,11,1,3,221, + 128,247,128,99,0,65,0,99,0,247,128,221,128,8,13,13, + 9,0,0,247,98,98,118,52,52,126,24,126,24,24,24,126, + 1,13,13,3,1,0,128,128,128,128,128,0,0,0,128,128, + 128,128,128,8,16,16,10,1,253,60,102,102,112,56,124,142, + 199,227,113,62,28,14,102,102,60,5,2,2,5,0,10,216, + 216,13,13,26,15,1,0,15,128,48,96,64,16,71,144,136, + 136,144,8,144,8,144,8,136,136,71,16,64,16,48,96,15, + 128,5,8,8,5,0,5,96,144,16,112,144,232,0,248,8, + 7,7,10,1,1,17,51,102,204,102,51,17,9,5,10,11, + 1,2,255,128,255,128,1,128,1,128,1,128,5,2,2,6, + 0,3,248,248,13,13,26,15,1,0,15,128,48,96,64,16, + 95,16,136,136,136,136,143,8,137,8,136,136,92,208,64,16, + 48,96,15,128,5,2,2,5,0,10,248,248,5,5,5,7, + 1,8,112,136,136,136,112,8,11,11,10,1,0,24,24,24, + 255,255,24,24,24,0,255,255,5,8,8,6,0,5,112,152, + 24,16,32,32,64,248,5,8,8,6,0,5,112,136,24,112, + 24,8,136,112,4,3,3,4,0,10,48,96,128,9,13,26, + 9,255,252,231,0,99,0,99,0,99,0,99,0,99,0,99, + 0,119,0,123,128,64,0,64,0,96,0,96,0,7,17,17, + 8,1,252,62,116,244,244,244,244,244,116,20,20,20,20,20, + 20,20,20,20,2,2,2,4,1,4,192,192,4,5,5,6, + 1,252,32,32,16,176,112,3,8,8,6,1,5,64,192,64, + 64,64,64,64,224,5,8,8,6,0,5,112,216,136,136,216, + 112,0,248,8,7,7,10,1,1,136,204,102,51,102,204,136, + 11,13,26,13,1,0,64,128,193,128,65,0,67,0,70,0, + 68,64,76,192,233,64,27,64,50,64,39,224,96,64,64,64, + 11,13,26,13,1,0,64,128,193,128,65,0,67,0,70,0, + 69,192,78,96,232,96,24,64,48,128,32,128,97,0,67,224, + 13,13,26,13,255,0,112,32,136,96,24,64,112,192,25,128, + 9,16,139,48,114,80,6,208,12,144,9,248,24,16,16,16, + 6,13,13,8,1,252,48,48,0,16,16,48,96,96,192,204, + 140,196,120,13,17,34,14,1,0,24,0,12,0,2,0,0, + 0,2,0,7,0,7,0,5,0,13,128,9,128,25,192,16, + 192,31,192,48,224,32,96,96,112,240,248,13,17,34,14,1, + 0,0,192,1,128,2,0,0,0,2,0,7,0,7,0,5, + 0,13,128,9,128,25,192,16,192,31,192,48,224,32,96,96, + 112,240,248,13,17,34,14,1,0,2,0,7,0,13,128,0, + 0,2,0,7,0,7,0,5,0,13,128,9,128,25,192,16, + 192,31,192,48,224,32,96,96,112,240,248,13,17,34,14,1, + 0,12,128,31,128,19,0,0,0,2,0,7,0,7,0,5, + 0,13,128,9,128,25,192,16,192,31,192,48,224,32,96,96, + 112,240,248,13,16,32,14,1,0,13,128,13,128,0,0,2, + 0,7,0,7,0,5,0,13,128,9,128,25,192,16,192,31, + 192,48,224,32,96,96,112,240,248,13,18,36,14,1,0,6, + 0,9,0,9,0,6,0,0,0,2,0,7,0,7,0,5, + 0,13,128,9,128,25,192,16,192,31,192,48,224,32,96,96, + 112,240,248,15,13,26,17,1,0,15,252,7,140,5,132,5, + 128,13,128,9,136,25,248,31,136,17,128,49,128,33,130,97, + 134,247,254,11,17,34,13,1,252,15,32,48,224,96,96,96, + 32,192,0,192,0,192,0,192,0,192,0,96,0,96,96,56, + 192,15,0,4,0,2,0,22,0,14,0,9,17,34,12,1, + 0,48,0,24,0,4,0,0,0,255,128,97,128,96,128,96, + 0,96,0,97,0,127,0,97,0,96,0,96,0,96,128,97, + 128,255,128,9,17,34,12,1,0,3,0,6,0,8,0,0, + 0,255,128,97,128,96,128,96,0,96,0,97,0,127,0,97, + 0,96,0,96,0,96,128,97,128,255,128,9,17,34,12,1, + 0,8,0,28,0,54,0,0,0,255,128,97,128,96,128,96, + 0,96,0,97,0,127,0,97,0,96,0,96,0,96,128,97, + 128,255,128,9,16,32,12,1,0,54,0,54,0,0,0,255, + 128,97,128,96,128,96,0,96,0,97,0,127,0,97,0,96, + 0,96,0,96,128,97,128,255,128,6,17,17,6,255,0,192, + 96,16,0,60,24,24,24,24,24,24,24,24,24,24,24,60, + 6,17,17,6,1,0,12,24,32,0,240,96,96,96,96,96, + 96,96,96,96,96,96,240,5,17,17,6,1,0,32,112,216, + 0,240,96,96,96,96,96,96,96,96,96,96,96,240,5,16, + 16,6,1,0,216,216,0,240,96,96,96,96,96,96,96,96, + 96,96,96,240,12,13,26,13,0,0,127,128,49,192,48,96, + 48,96,48,48,48,48,252,48,48,48,48,48,48,96,48,96, + 49,192,127,128,12,17,34,14,1,0,12,128,31,128,19,0, + 0,0,224,112,96,32,112,32,120,32,92,32,76,32,78,32, + 71,32,67,160,65,224,64,224,64,96,224,32,12,17,34,14, + 1,0,48,0,24,0,4,0,0,0,15,0,48,192,96,96, + 96,96,192,48,192,48,192,48,192,48,192,48,96,96,96,96, + 48,192,15,0,12,17,34,14,1,0,0,192,1,128,2,0, + 0,0,15,0,48,192,96,96,96,96,192,48,192,48,192,48, + 192,48,192,48,96,96,96,96,48,192,15,0,12,17,34,14, + 1,0,4,0,14,0,27,0,0,0,15,0,48,192,96,96, + 96,96,192,48,192,48,192,48,192,48,192,48,96,96,96,96, + 48,192,15,0,12,17,34,14,1,0,12,128,31,128,19,0, + 0,0,15,0,48,192,96,96,96,96,192,48,192,48,192,48, + 192,48,192,48,96,96,96,96,48,192,15,0,12,16,32,14, + 1,0,27,0,27,0,0,0,15,0,48,192,96,96,96,96, + 192,48,192,48,192,48,192,48,192,48,96,96,96,96,48,192, + 15,0,8,7,7,10,1,1,195,102,60,24,60,102,195,12, + 15,30,14,1,255,0,48,15,96,48,192,96,224,97,160,195, + 48,195,48,198,48,204,48,204,48,88,96,112,96,48,192,111, + 0,192,0,11,17,34,14,2,0,48,0,24,0,4,0,0, + 0,240,224,96,64,96,64,96,64,96,64,96,64,96,64,96, + 64,96,64,96,64,112,192,57,128,31,0,11,17,34,14,2, + 0,0,192,1,128,2,0,0,0,240,224,96,64,96,64,96, + 64,96,64,96,64,96,64,96,64,96,64,96,64,112,192,57, + 128,31,0,11,17,34,14,2,0,4,0,14,0,27,0,0, + 0,240,224,96,64,96,64,96,64,96,64,96,64,96,64,96, + 64,96,64,96,64,112,192,57,128,31,0,11,16,32,14,2, + 0,27,0,27,0,0,0,240,224,96,64,96,64,96,64,96, + 64,96,64,96,64,96,64,96,64,96,64,112,192,57,128,31, + 0,12,17,34,14,1,0,0,192,1,128,2,0,0,0,240, + 240,112,96,48,192,24,128,25,0,15,0,6,0,6,0,6, + 0,6,0,6,0,6,0,15,0,9,13,26,10,1,0,240, + 0,96,0,96,0,127,0,99,128,97,128,97,128,97,128,99, + 0,126,0,96,0,96,0,240,0,8,13,13,9,0,0,28, + 50,99,99,102,110,124,102,99,99,107,111,238,7,13,13,9, + 1,0,192,96,16,0,120,200,204,28,108,204,204,252,102,7, + 13,13,9,1,0,12,24,32,0,120,200,204,28,108,204,204, + 252,102,7,13,13,9,1,0,16,56,108,0,120,200,204,28, + 108,204,204,252,102,7,13,13,9,1,0,100,252,152,0,120, + 200,204,28,108,204,204,252,102,7,12,12,9,1,0,108,108, + 0,120,200,204,28,108,204,204,252,102,7,14,14,9,1,0, + 48,72,72,48,0,120,200,204,28,108,204,204,252,102,11,9, + 18,12,0,0,123,192,206,96,204,32,31,224,108,0,204,0, + 204,0,254,96,99,192,7,13,13,8,0,252,60,102,192,192, + 192,192,192,102,60,16,8,88,56,7,13,13,8,0,0,192, + 96,16,0,60,102,194,254,192,192,192,102,60,7,13,13,8, + 0,0,6,12,16,0,60,102,194,254,192,192,192,102,60,7, + 13,13,8,0,0,16,56,108,0,60,102,194,254,192,192,192, + 102,60,7,12,12,8,0,0,108,108,0,60,102,194,254,192, + 192,192,102,60,6,13,13,5,254,0,192,96,16,0,24,56, + 24,24,24,24,24,24,60,6,13,13,5,0,0,12,24,32, + 0,96,224,96,96,96,96,96,96,240,5,13,13,5,0,0, + 32,112,216,0,96,224,96,96,96,96,96,96,240,5,12,12, + 5,0,0,216,216,0,96,224,96,96,96,96,96,96,240,8, + 13,13,9,0,0,96,54,56,76,62,102,195,195,195,195,195, + 102,60,9,13,26,10,0,0,50,0,126,0,76,0,0,0, + 102,0,239,0,115,0,99,0,99,0,99,0,99,0,99,0, + 243,128,8,13,13,9,0,0,48,24,4,0,60,102,195,195, + 195,195,195,102,60,8,13,13,9,0,0,6,12,16,0,60, + 102,195,195,195,195,195,102,60,8,13,13,9,0,0,16,56, + 108,0,60,102,195,195,195,195,195,102,60,8,13,13,9,0, + 0,50,126,76,0,60,102,195,195,195,195,195,102,60,8,12, + 12,9,0,0,108,108,0,60,102,195,195,195,195,195,102,60, + 8,8,8,10,1,1,24,24,0,255,255,0,24,24,8,11, + 11,9,0,255,1,63,102,207,203,219,211,243,102,124,192,9, + 13,26,10,0,0,96,0,48,0,8,0,0,0,231,0,99, + 0,99,0,99,0,99,0,99,0,99,0,119,0,59,128,9, + 13,26,10,0,0,6,0,12,0,16,0,0,0,231,0,99, + 0,99,0,99,0,99,0,99,0,99,0,119,0,59,128,9, + 13,26,10,0,0,8,0,28,0,54,0,0,0,231,0,99, + 0,99,0,99,0,99,0,99,0,99,0,119,0,59,128,9, + 12,24,10,0,0,54,0,54,0,0,0,231,0,99,0,99, + 0,99,0,99,0,99,0,99,0,119,0,59,128,8,17,17, + 8,255,252,3,6,8,0,243,99,114,50,54,28,28,12,8, + 24,16,240,224,8,17,17,9,0,252,96,224,96,96,110,119, + 99,99,99,99,99,118,124,96,96,96,240,8,16,16,9,0, + 252,54,54,0,243,99,114,50,54,28,28,12,8,24,16,240, + 224}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--20-140-100-100-P-96-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 13, '1' Height: 13 + Calculated Max Values w=18 h=17 x= 2 y=10 dx=18 dy= 0 ascent=14 len=39 + Font Bounding box w=22 h=29 x=-3 y=-7 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent =13 descent=-4 + X Font ascent =13 descent=-4 + Max Font ascent =14 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR14r[2156] U8G_SECTION(".progmem.u8g_font_timR14r") = { + 0,22,29,253,249,13,2,131,6,16,32,127,252,14,252,13, + 252,0,0,0,5,0,1,2,13,13,4,1,0,192,192,192, + 192,192,192,64,64,64,0,0,192,192,6,4,4,8,1,9, + 204,204,204,136,12,11,22,10,255,1,12,192,12,192,12,192, + 127,240,25,128,25,128,25,128,255,224,51,0,51,0,51,0, + 7,16,16,9,1,254,16,124,214,210,208,240,120,60,28,22, + 22,150,214,124,16,16,13,13,26,15,1,0,56,48,111,224, + 196,64,196,128,205,128,251,0,114,112,6,216,13,136,9,136, + 25,152,49,240,32,224,12,13,26,14,1,0,28,0,50,0, + 50,0,50,0,52,0,25,224,56,192,109,128,207,0,199,0, + 199,128,237,240,120,224,2,4,4,4,1,9,192,192,192,128, + 5,17,17,7,1,252,24,48,96,96,64,192,192,192,192,192, + 192,192,64,96,96,48,24,5,17,17,7,1,252,192,96,48, + 48,16,24,24,24,24,24,24,24,16,48,48,96,192,7,7, + 7,9,1,6,16,214,84,56,214,146,16,8,8,8,10,1, + 1,24,24,24,255,255,24,24,24,3,5,5,4,0,253,96, + 96,32,96,192,5,2,2,6,0,3,248,248,2,2,2,4, + 1,0,192,192,7,17,17,5,255,252,2,2,6,4,12,12, + 8,24,24,16,48,48,32,96,96,64,192,8,13,13,9,1, + 0,60,102,102,195,195,195,195,195,195,195,102,102,60,6,13, + 13,9,2,0,48,112,240,48,48,48,48,48,48,48,48,120, + 252,7,13,13,9,1,0,60,126,206,134,6,6,12,12,24, + 48,98,254,254,7,13,13,9,1,0,124,206,134,6,12,56, + 60,14,6,6,6,204,248,8,13,13,9,0,0,2,6,14, + 14,22,38,70,70,255,255,6,6,6,7,13,13,9,1,0, + 126,124,192,192,240,60,12,14,6,6,12,220,240,8,13,13, + 9,1,0,7,28,48,96,96,252,198,195,195,195,227,118,60, + 8,13,13,9,1,0,127,255,130,6,4,12,12,8,24,24, + 16,48,48,8,13,13,9,1,0,60,102,194,230,124,56,60, + 110,199,195,195,102,60,8,13,13,9,1,0,60,110,198,195, + 195,195,227,127,54,6,12,56,224,2,9,9,5,1,0,192, + 192,0,0,0,0,0,192,192,3,12,12,5,0,253,96,96, + 0,0,0,0,0,96,96,32,96,192,9,9,18,11,1,0, + 1,128,7,0,28,0,112,0,192,0,112,0,28,0,7,0, + 1,128,9,5,10,11,1,2,255,128,255,128,0,0,255,128, + 255,128,9,9,18,11,1,0,192,0,112,0,28,0,7,0, + 1,128,7,0,28,0,112,0,192,0,6,13,13,8,1,0, + 120,140,196,204,12,24,24,48,32,32,0,48,48,14,16,32, + 17,1,253,7,224,14,48,56,24,48,8,99,236,103,228,198, + 100,204,100,204,204,204,200,205,216,103,112,96,0,48,0,28, + 48,7,224,13,13,26,14,1,0,2,0,7,0,7,0,5, + 0,13,128,9,128,25,192,16,192,31,192,48,224,32,96,96, + 112,240,248,10,13,26,13,2,0,255,0,99,128,97,128,97, + 128,97,128,99,0,127,128,97,192,96,192,96,192,96,192,97, + 128,255,0,11,13,26,13,1,0,15,32,48,224,96,96,96, + 32,192,0,192,0,192,0,192,0,192,0,96,0,96,96,56, + 192,15,0,11,13,26,14,2,0,255,0,99,128,96,192,96, + 192,96,96,96,96,96,96,96,96,96,96,96,192,96,192,99, + 128,255,0,9,13,26,12,1,0,255,128,97,128,96,128,96, + 0,96,0,97,0,127,0,97,0,96,0,96,0,96,128,97, + 128,255,128,9,13,26,11,1,0,255,128,97,128,96,128,96, + 0,96,0,97,0,127,0,97,0,96,0,96,0,96,0,96, + 0,240,0,12,13,26,14,1,0,15,32,48,224,96,96,96, + 32,192,0,192,0,192,240,192,96,192,96,96,96,96,96,57, + 192,15,0,12,13,26,14,1,0,240,240,96,96,96,96,96, + 96,96,96,96,96,127,224,96,96,96,96,96,96,96,96,96, + 96,240,240,4,13,13,6,1,0,240,96,96,96,96,96,96, + 96,96,96,96,96,240,6,13,13,7,0,0,60,24,24,24, + 24,24,24,24,24,24,24,216,240,12,13,26,14,1,0,243, + 224,97,128,99,0,102,0,108,0,120,0,120,0,124,0,110, + 0,103,0,99,128,97,192,240,240,10,13,26,12,1,0,240, + 0,96,0,96,0,96,0,96,0,96,0,96,0,96,0,96, + 0,96,0,96,64,96,192,255,192,14,13,26,17,1,0,224, + 28,112,56,112,56,120,120,88,88,88,216,92,216,76,152,77, + 152,71,24,71,24,66,24,226,60,12,13,26,14,1,0,224, + 112,96,32,112,32,120,32,92,32,76,32,78,32,71,32,67, + 160,65,224,64,224,64,96,224,32,12,13,26,14,1,0,15, + 0,48,192,96,96,96,96,192,48,192,48,192,48,192,48,192, + 48,96,96,96,96,48,192,15,0,9,13,26,11,1,0,255, + 0,99,128,97,128,97,128,97,128,99,0,126,0,96,0,96, + 0,96,0,96,0,96,0,240,0,12,17,34,14,1,252,15, + 0,48,192,96,96,96,96,192,48,192,48,192,48,192,48,192, + 48,96,96,96,96,48,192,15,0,6,0,3,0,1,192,0, + 240,11,13,26,13,1,0,255,0,99,128,97,128,97,128,97, + 128,99,0,126,0,110,0,102,0,99,0,97,128,96,192,240, + 224,8,13,13,11,2,0,58,70,194,192,224,120,60,14,7, + 3,131,198,184,10,13,26,12,1,0,255,192,204,192,140,64, + 12,0,12,0,12,0,12,0,12,0,12,0,12,0,12,0, + 12,0,30,0,11,13,26,14,2,0,240,224,96,64,96,64, + 96,64,96,64,96,64,96,64,96,64,96,64,96,64,112,192, + 57,128,31,0,13,13,26,14,0,0,248,120,112,48,48,32, + 56,32,24,96,24,64,28,64,12,192,14,128,6,128,7,128, + 3,0,3,0,18,13,39,18,0,0,249,227,192,112,193,128, + 48,193,0,56,225,0,24,99,0,24,226,0,24,226,0,29, + 166,0,13,52,0,15,60,0,14,56,0,6,24,0,6,24, + 0,12,13,26,14,1,0,240,112,112,96,56,192,25,128,13, + 0,14,0,6,0,15,0,27,0,17,128,49,192,96,224,240, + 240,12,13,26,14,1,0,240,240,112,96,48,192,24,128,25, + 0,15,0,6,0,6,0,6,0,6,0,6,0,6,0,15, + 0,10,13,26,12,1,0,127,192,97,192,65,128,3,128,7, + 0,6,0,14,0,28,0,56,0,48,0,112,64,224,192,255, + 192,4,16,16,6,2,253,240,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,240,5,13,13,5,0,0,128,128,192, + 64,96,96,32,48,48,16,24,8,8,4,16,16,6,0,253, + 240,48,48,48,48,48,48,48,48,48,48,48,48,48,48,240, + 7,7,7,9,1,6,16,56,40,108,68,198,130,9,2,4, + 9,0,252,255,128,255,128,4,3,3,4,0,10,192,96,16, + 7,9,9,9,1,0,120,200,204,28,108,204,204,252,102,8, + 13,13,9,0,0,96,224,96,96,110,119,99,99,99,99,99, + 102,92,7,9,9,8,0,0,60,102,192,192,192,192,192,102, + 60,8,13,13,9,0,0,6,14,6,6,62,102,198,198,198, + 198,198,102,63,7,9,9,8,0,0,60,102,194,254,192,192, + 192,102,60,6,13,13,6,0,0,28,52,32,96,248,96,96, + 96,96,96,96,96,240,8,13,13,9,0,252,62,204,196,196, + 204,120,64,124,127,131,193,226,124,9,13,26,10,0,0,96, + 0,224,0,96,0,96,0,102,0,111,0,115,0,99,0,99, + 0,99,0,99,0,99,0,243,128,4,13,13,5,0,0,96, + 96,0,0,96,224,96,96,96,96,96,96,240,4,17,17,5, + 255,252,48,48,0,0,48,112,48,48,48,48,48,48,48,48, + 48,224,192,10,13,26,9,0,0,96,0,224,0,96,0,96, + 0,103,0,98,0,100,0,104,0,120,0,108,0,110,0,103, + 0,227,192,4,13,13,5,0,0,96,224,96,96,96,96,96, + 96,96,96,96,96,240,14,9,18,15,0,0,102,48,239,120, + 115,152,99,24,99,24,99,24,99,24,99,24,247,188,9,9, + 18,10,0,0,102,0,239,0,115,0,99,0,99,0,99,0, + 99,0,99,0,243,128,8,9,9,9,0,0,60,102,195,195, + 195,195,195,102,60,8,13,13,9,0,252,110,247,99,99,99, + 99,99,118,124,96,96,96,240,8,13,13,9,0,252,62,102, + 198,198,198,198,198,102,62,6,6,6,15,6,9,9,7,0, + 0,108,236,112,96,96,96,96,96,240,5,9,9,7,1,0, + 104,152,200,224,112,56,152,200,176,6,11,11,6,0,0,32, + 96,248,96,96,96,96,96,96,116,56,9,9,18,10,0,0, + 231,0,99,0,99,0,99,0,99,0,99,0,99,0,119,0, + 59,128,9,9,18,9,255,0,243,128,99,0,98,0,50,0, + 54,0,20,0,28,0,8,0,8,0,13,9,18,14,0,0, + 231,56,102,48,98,96,54,96,55,96,29,64,29,192,8,128, + 8,128,9,9,18,9,0,0,225,128,99,0,54,0,28,0, + 28,0,28,0,54,0,99,0,195,128,8,13,13,9,0,252, + 243,99,114,50,54,28,28,12,8,24,16,240,224,7,9,9, + 8,0,0,254,206,140,24,48,48,98,230,254,7,17,17,9, + 1,252,14,24,48,48,48,48,48,96,192,96,48,48,48,48, + 48,24,14,1,13,13,3,1,0,128,128,128,128,128,128,128, + 128,128,128,128,128,128,7,17,17,9,1,252,224,48,24,24, + 24,24,24,12,6,12,24,24,24,24,24,48,224,9,4,8, + 11,1,3,48,0,121,128,207,0,6,0,255}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--25-180-100-100-P-125-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=23 h=23 x= 3 y=14 dx=23 dy= 0 ascent=23 len=69 + Font Bounding box w=29 h=37 x=-4 y=-9 + Calculated Min Values x=-2 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-6 + X Font ascent =17 descent=-6 + Max Font ascent =23 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR18[6850] U8G_SECTION(".progmem.u8g_font_timR18") = { + 0,29,37,252,247,17,4,9,8,241,32,255,250,23,250,17, + 250,0,0,0,6,0,1,3,17,17,8,3,0,64,224,224, + 224,224,224,224,224,64,64,64,64,0,0,0,192,192,6,5, + 5,10,1,12,204,204,204,204,136,11,17,34,13,1,0,8, + 128,8,128,8,128,8,128,8,128,127,224,127,224,17,0,17, + 0,17,0,255,192,255,192,34,0,34,0,34,0,34,0,34, + 0,11,21,42,12,0,254,4,0,4,0,63,0,101,192,196, + 192,196,64,196,64,228,0,124,0,30,0,7,128,5,192,4, + 224,4,96,132,96,132,96,196,192,229,192,63,0,4,0,4, + 0,17,16,48,19,1,0,30,12,0,51,252,0,97,24,0, + 193,16,0,193,48,0,194,96,0,228,64,0,120,192,0,1, + 143,0,1,25,128,3,48,128,6,96,128,4,96,128,12,97, + 0,24,114,0,16,60,0,17,17,51,19,1,0,7,192,0, + 8,96,0,24,32,0,24,32,0,24,96,0,12,192,0,15, + 158,0,7,12,0,15,8,0,51,136,0,97,144,0,192,208, + 0,192,224,0,192,96,0,224,240,128,127,191,0,62,14,0, + 2,5,5,6,2,12,192,192,192,192,128,6,22,22,8,1, + 251,4,8,16,48,32,96,96,192,192,192,192,192,192,192,192, + 96,96,32,48,16,8,4,6,22,22,8,1,251,128,64,32, + 48,16,24,24,12,12,12,12,12,12,12,12,24,24,16,48, + 32,64,128,9,9,18,12,2,8,28,0,28,0,201,128,235, + 128,28,0,235,128,201,128,28,0,28,0,12,12,24,12,0, + 0,6,0,6,0,6,0,6,0,6,0,255,240,255,240,6, + 0,6,0,6,0,6,0,6,0,3,5,5,7,2,253,192, + 224,32,96,192,6,2,2,8,0,5,252,252,2,2,2,6, + 2,0,192,192,9,21,42,7,254,252,1,128,1,128,1,0, + 3,0,3,0,2,0,6,0,6,0,4,0,12,0,12,0, + 8,0,24,0,24,0,16,0,48,0,48,0,96,0,96,0, + 64,0,192,0,10,17,34,12,1,0,30,0,51,0,97,128, + 97,128,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,225,192,97,128,97,128,51,0,30,0,8,17,17,12, + 2,0,8,24,120,24,24,24,24,24,24,24,24,24,24,24, + 24,24,255,10,17,34,12,1,0,28,0,127,0,67,128,129, + 128,129,128,1,128,1,128,3,0,3,0,6,0,4,0,12, + 0,24,0,48,0,96,64,255,192,255,128,9,17,34,12,1, + 0,28,0,126,0,71,0,131,0,131,0,6,0,12,0,30, + 0,7,0,3,128,1,128,1,128,1,128,1,0,195,0,230, + 0,120,0,10,17,34,12,1,0,3,0,7,0,7,0,11, + 0,27,0,19,0,51,0,35,0,99,0,67,0,195,0,255, + 192,255,192,3,0,3,0,3,0,3,0,10,17,34,12,1, + 0,31,192,31,128,32,0,32,0,96,0,120,0,126,0,15, + 128,3,128,1,192,0,192,0,192,0,192,0,192,193,128,227, + 128,126,0,10,17,34,12,1,0,3,192,14,0,24,0,48, + 0,112,0,96,0,238,0,243,128,193,128,192,192,192,192,192, + 192,192,192,224,192,97,128,123,128,30,0,10,17,34,12,1, + 0,127,192,255,192,192,192,129,128,1,128,1,0,3,0,3, + 0,2,0,6,0,6,0,4,0,12,0,12,0,12,0,24, + 0,24,0,10,17,34,12,1,0,30,0,51,0,97,128,97, + 128,97,128,115,0,62,0,30,0,63,0,99,128,65,192,192, + 192,192,192,192,192,225,128,115,128,30,0,10,17,34,12,1, + 0,30,0,119,128,97,128,193,192,192,192,192,192,192,192,192, + 192,97,192,115,192,29,128,1,128,3,128,3,0,6,0,28, + 0,240,0,2,11,11,6,2,0,192,192,0,0,0,0,0, + 0,0,192,192,3,14,14,7,2,253,192,192,0,0,0,0, + 0,0,0,192,224,32,96,192,11,11,22,14,1,0,0,96, + 1,192,7,0,28,0,112,0,192,0,112,0,28,0,7,0, + 1,192,0,96,9,5,10,13,2,3,255,128,255,128,0,0, + 255,128,255,128,11,11,22,13,1,0,192,0,112,0,28,0, + 7,0,1,192,0,96,1,192,7,0,28,0,112,0,192,0, + 8,17,17,11,2,0,124,198,131,195,195,7,14,12,28,24, + 24,16,16,0,0,48,48,18,20,60,22,2,253,3,248,0, + 15,14,0,28,3,0,56,1,128,112,0,128,96,236,192,225, + 252,64,195,140,64,195,12,64,198,12,64,198,24,64,198,24, + 192,198,24,128,198,57,128,99,123,0,97,222,0,48,0,0, + 24,0,0,14,12,0,3,240,0,17,17,51,17,0,0,0, + 128,0,1,192,0,1,192,0,1,96,0,2,96,0,2,48, + 0,6,48,0,4,48,0,4,24,0,12,24,0,15,248,0, + 8,12,0,24,12,0,16,12,0,16,6,0,48,6,0,252, + 31,128,14,17,34,16,1,0,255,192,48,112,48,48,48,24, + 48,24,48,24,48,48,48,64,63,224,48,56,48,24,48,12, + 48,12,48,12,48,24,48,120,255,224,14,17,34,16,1,0, + 7,228,28,60,56,12,96,4,96,4,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,96,0,96,4,56,8,30,56, + 7,224,15,17,34,17,1,0,255,192,48,112,48,56,48,12, + 48,12,48,6,48,6,48,6,48,6,48,6,48,6,48,6, + 48,12,48,12,48,56,48,112,255,192,13,17,34,15,1,0, + 255,240,48,48,48,16,48,16,48,0,48,0,48,64,48,64, + 63,192,48,64,48,64,48,0,48,0,48,8,48,8,48,24, + 255,248,12,17,34,14,1,0,255,240,48,48,48,16,48,16, + 48,0,48,0,48,32,48,32,63,224,48,32,48,32,48,0, + 48,0,48,0,48,0,48,0,252,0,16,17,34,18,1,0, + 7,228,28,60,56,12,96,4,96,4,192,0,192,0,192,0, + 192,0,192,63,192,12,192,12,96,12,96,12,56,28,30,56, + 7,224,17,17,51,19,1,0,252,31,128,48,6,0,48,6, + 0,48,6,0,48,6,0,48,6,0,48,6,0,48,6,0, + 63,254,0,48,6,0,48,6,0,48,6,0,48,6,0,48, + 6,0,48,6,0,48,6,0,252,31,128,6,17,17,8,1, + 0,252,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,252,9,17,34,11,1,0,31,128,6,0,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,198,0,204,0,120,0,16,17,34,17,1,0, + 252,126,48,24,48,48,48,96,48,192,49,128,51,0,62,0, + 63,0,51,128,49,192,48,224,48,112,48,56,48,28,48,14, + 252,31,13,17,34,14,1,0,252,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,8,48,8,48,24,255,248,21,17,51,22,1,0, + 240,0,248,48,0,224,56,1,96,56,1,96,44,2,96,44, + 2,96,38,2,96,38,4,96,35,4,96,35,8,96,33,136, + 96,33,136,96,32,208,96,32,208,96,32,96,96,32,96,96, + 248,97,248,16,17,34,18,1,0,240,31,48,4,56,4,56, + 4,44,4,38,4,38,4,35,4,33,132,33,132,32,196,32, + 100,32,100,32,52,32,28,32,28,248,12,16,17,34,18,1, + 0,7,224,28,56,56,28,96,6,96,6,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,96,6,96,6,56,28,28, + 56,7,224,13,17,34,15,1,0,255,192,48,112,48,48,48, + 24,48,24,48,24,48,48,48,112,63,192,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,252,0,16,22,44,18,1, + 251,7,224,28,56,56,28,96,6,96,6,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,96,6,96,6,56,28,28, + 56,7,224,1,192,0,224,0,112,0,56,0,15,15,17,34, + 16,1,0,255,192,48,112,48,48,48,24,48,24,48,24,48, + 48,48,112,63,192,51,128,49,128,48,192,48,96,48,112,48, + 56,48,28,252,30,11,17,34,13,1,0,30,64,99,192,192, + 192,192,64,192,64,224,0,120,0,30,0,15,128,3,192,0, + 224,0,96,128,96,128,96,192,192,241,128,158,0,14,17,34, + 16,1,0,255,252,195,12,131,4,131,4,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,15,192,16,17,34,18,1,0,252,31,48,4,48, + 4,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,48,8,24,8,28,48,7,224,17,17,51, + 17,0,0,252,31,128,48,6,0,48,4,0,24,12,0,24, + 8,0,24,8,0,12,24,0,12,16,0,6,48,0,6,32, + 0,6,32,0,3,96,0,3,64,0,3,192,0,1,128,0, + 1,128,0,1,128,0,23,17,51,23,0,0,252,126,126,48, + 24,24,48,24,16,24,24,16,24,24,48,24,44,32,12,44, + 32,12,44,96,6,76,96,6,76,64,6,70,64,3,70,192, + 3,70,128,3,135,128,1,131,128,1,131,0,1,131,0,18, + 17,51,18,0,0,126,15,128,28,6,0,14,12,0,6,8, + 0,3,16,0,1,160,0,1,192,0,0,192,0,0,224,0, + 1,112,0,2,56,0,6,24,0,4,12,0,8,14,0,24, + 7,0,48,3,128,252,15,192,16,17,34,18,1,0,252,63, + 48,12,56,8,24,24,28,16,12,48,6,32,6,96,3,64, + 3,192,1,128,1,128,1,128,1,128,1,128,1,128,7,224, + 13,17,34,15,1,0,255,240,192,112,128,224,128,192,1,192, + 3,128,3,0,7,0,6,0,14,0,28,0,24,0,56,0, + 48,8,112,8,224,24,255,248,5,21,21,8,2,252,248,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,248,7,17,17,7,0,0,192,192,64,96,96,32,48, + 48,16,24,24,8,12,12,4,6,6,5,21,21,8,1,252, + 248,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,248,9,9,18,11,1,8,8,0,28,0,20, + 0,54,0,34,0,99,0,65,0,193,128,128,128,12,2,4, + 12,0,251,255,240,255,240,5,4,4,8,1,13,192,224,112, + 24,9,12,24,11,1,0,62,0,103,0,99,0,3,0,15, + 0,59,0,99,0,195,0,195,0,199,0,251,0,113,128,11, + 17,34,12,0,0,48,0,240,0,48,0,48,0,48,0,55, + 0,57,192,48,192,48,96,48,96,48,96,48,96,48,96,48, + 96,48,192,57,192,47,0,9,12,24,11,1,0,31,0,99, + 128,65,128,192,0,192,0,192,0,192,0,192,0,224,0,112, + 128,127,0,30,0,10,17,34,12,1,0,1,128,7,128,1, + 128,1,128,1,128,29,128,115,128,97,128,193,128,193,128,193, + 128,193,128,193,128,193,128,99,128,127,128,25,192,9,12,24, + 11,1,0,30,0,99,0,65,128,193,128,255,128,192,0,192, + 0,192,0,224,0,112,128,127,0,30,0,7,17,17,7,0, + 0,14,22,48,48,48,254,48,48,48,48,48,48,48,48,48, + 48,120,11,18,36,12,1,250,30,192,35,192,97,0,97,128, + 97,128,97,128,97,128,51,0,60,0,64,0,96,0,127,128, + 63,192,64,224,192,96,192,96,225,192,127,0,12,17,34,13, + 0,0,48,0,240,0,48,0,48,0,48,0,51,128,55,192, + 56,224,48,96,48,96,48,96,48,96,48,96,48,96,48,96, + 48,96,120,240,4,17,17,6,1,0,96,96,0,0,0,96, + 224,96,96,96,96,96,96,96,96,96,240,6,23,23,6,254, + 250,12,12,0,0,0,12,28,12,12,12,12,12,12,12,12, + 12,12,12,12,12,204,200,112,12,17,34,12,0,0,48,0, + 240,0,48,0,48,0,48,0,51,224,49,128,51,0,50,0, + 52,0,60,0,54,0,55,0,51,128,49,192,48,224,121,240, + 5,17,17,6,0,0,48,240,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,120,18,12,36,20,1,0,103,14,0, + 239,159,0,113,227,128,96,193,128,96,193,128,96,193,128,96, + 193,128,96,193,128,96,193,128,96,193,128,96,193,128,241,227, + 192,11,12,24,13,1,0,103,0,239,128,113,192,96,192,96, + 192,96,192,96,192,96,192,96,192,96,192,96,192,241,224,10, + 12,24,12,1,0,30,0,115,128,97,128,192,192,192,192,192, + 192,192,192,192,192,192,192,97,128,115,128,30,0,10,18,36, + 12,1,250,110,0,243,128,97,128,96,192,96,192,96,192,96, + 192,96,192,96,192,97,128,115,128,110,0,96,0,96,0,96, + 0,96,0,96,0,240,0,10,18,36,12,1,250,29,128,115, + 128,97,128,193,128,193,128,193,128,193,128,193,128,193,128,97, + 128,115,128,29,128,1,128,1,128,1,128,1,128,1,128,3, + 192,6,12,12,8,1,0,108,236,112,96,96,96,96,96,96, + 96,96,240,8,12,12,10,1,0,62,70,194,224,112,124,30, + 7,3,131,198,248,7,15,15,7,0,0,16,48,112,254,48, + 48,48,48,48,48,48,48,48,50,28,11,12,24,13,1,0, + 225,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,113,192,62,192,28,224,11,12,24,11,0,0,241,224, + 96,192,96,128,48,128,48,128,49,0,25,0,25,0,26,0, + 14,0,14,0,4,0,17,12,36,17,0,0,241,231,128,96, + 195,0,96,194,0,48,194,0,48,194,0,49,100,0,25,100, + 0,26,100,0,26,40,0,14,56,0,14,56,0,4,16,0, + 11,12,24,13,1,0,241,224,96,192,49,128,57,0,26,0, + 12,0,14,0,27,0,51,128,33,128,96,192,241,224,12,18, + 36,11,255,250,120,240,48,96,48,64,24,64,24,64,24,128, + 12,128,12,128,13,0,7,0,7,0,2,0,6,0,4,0, + 12,0,200,0,240,0,96,0,8,12,12,10,1,0,255,195, + 134,14,28,24,56,48,112,97,195,255,8,22,22,10,1,251, + 7,12,24,24,24,24,24,16,48,32,192,32,48,16,24,24, + 24,24,24,24,12,7,2,17,17,5,1,0,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,8,22,22, + 10,1,251,224,48,24,24,24,24,24,8,12,4,3,4,12, + 8,24,24,24,24,24,24,48,224,11,4,8,13,1,4,56, + 32,124,96,199,192,131,128,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,0,0,0,6,0,1,3,17, + 17,8,3,251,96,96,0,0,0,64,64,64,64,224,224,224, + 224,224,224,224,64,9,16,32,12,1,254,2,0,2,0,15, + 0,51,128,101,128,196,0,196,0,200,0,200,0,200,0,208, + 0,112,128,113,0,62,0,64,0,64,0,10,17,34,12,1, + 0,15,0,25,128,49,128,48,0,48,0,48,0,48,0,252, + 0,48,0,48,0,48,0,48,0,48,0,48,0,120,64,190, + 192,231,128,11,12,24,13,1,3,192,96,238,224,127,192,49, + 128,96,192,96,192,96,192,96,192,49,128,127,192,238,224,192, + 96,14,17,34,14,0,0,248,124,112,48,48,32,24,96,24, + 64,12,192,12,128,7,128,3,0,31,224,3,0,31,224,3, + 0,3,0,3,0,3,0,15,192,2,17,17,6,2,0,192, + 192,192,192,192,192,192,0,0,0,192,192,192,192,192,192,192, + 8,20,20,12,2,253,28,38,70,96,112,56,60,78,135,131, + 195,226,116,56,28,14,6,98,100,56,6,2,2,8,1,14, + 204,204,17,17,51,19,1,0,7,240,0,28,28,0,48,6, + 0,97,227,0,71,49,0,196,25,128,140,0,128,136,0,128, + 136,0,128,136,0,128,140,0,128,196,25,128,71,113,0,97, + 195,0,48,6,0,28,28,0,7,240,0,7,9,9,8,0, + 8,120,204,12,124,204,204,118,0,254,9,10,20,13,1,1, + 8,128,25,128,51,0,102,0,204,0,204,0,102,0,51,0, + 25,128,8,128,11,7,14,15,2,1,255,224,255,224,0,96, + 0,96,0,96,0,96,0,96,6,2,2,8,0,5,252,252, + 17,17,51,19,1,0,7,240,0,28,28,0,48,6,0,103, + 227,0,66,49,0,194,17,128,130,16,128,130,48,128,131,224, + 128,130,64,128,130,32,128,194,49,128,71,25,0,96,3,0, + 48,6,0,28,28,0,7,240,0,7,2,2,8,1,14,254, + 254,7,7,7,9,1,10,56,68,130,130,130,68,56,10,11, + 22,14,2,0,12,0,12,0,12,0,255,192,255,192,12,0, + 12,0,12,0,0,0,255,192,255,192,6,10,10,7,0,7, + 56,76,140,12,8,16,48,32,68,252,6,10,10,7,0,7, + 56,76,140,8,48,8,12,140,136,112,5,4,4,8,2,13, + 24,56,112,192,11,17,34,13,1,251,225,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,113,192,126,192, + 92,224,64,0,192,0,192,0,224,0,64,0,9,21,42,11, + 1,252,31,128,57,0,121,0,121,0,249,0,249,0,249,0, + 121,0,121,0,57,0,25,0,9,0,9,0,9,0,9,0, + 9,0,9,0,9,0,9,0,9,0,9,0,2,3,3,6, + 2,5,192,192,192,6,6,6,8,1,250,16,48,60,12,204, + 120,5,10,10,7,1,7,32,96,160,32,32,32,32,32,32, + 248,7,9,9,8,0,8,56,68,198,198,198,68,56,0,254, + 9,10,20,12,2,1,136,0,204,0,102,0,51,0,25,128, + 25,128,51,0,102,0,204,0,136,0,16,17,34,18,1,0, + 32,24,96,24,160,48,32,96,32,96,32,192,32,192,33,132, + 35,12,251,28,6,20,6,36,12,100,24,68,24,255,48,4, + 48,4,15,17,34,18,1,0,32,24,96,24,160,48,32,96, + 32,96,32,192,32,192,33,156,35,38,251,70,6,6,6,4, + 12,8,24,24,24,16,48,34,48,126,17,17,51,18,0,0, + 56,12,0,76,12,0,140,24,0,8,48,0,48,48,0,8, + 96,0,12,96,0,140,194,0,137,134,0,113,142,0,3,10, + 0,3,18,0,6,50,0,12,34,0,12,127,128,24,2,0, + 24,2,0,8,17,17,11,1,251,12,12,0,0,8,8,24, + 24,56,48,112,224,195,195,193,99,62,17,22,66,17,0,0, + 12,0,0,14,0,0,7,0,0,1,128,0,0,0,0,0, + 128,0,1,192,0,1,192,0,1,96,0,2,96,0,2,48, + 0,6,48,0,4,48,0,4,24,0,12,24,0,15,248,0, + 8,12,0,24,12,0,16,12,0,16,6,0,48,6,0,252, + 31,128,17,22,66,17,0,0,0,24,0,0,56,0,0,112, + 0,0,192,0,0,0,0,0,128,0,1,192,0,1,192,0, + 1,96,0,2,96,0,2,48,0,6,48,0,4,48,0,4, + 24,0,12,24,0,15,248,0,8,12,0,24,12,0,16,12, + 0,16,6,0,48,6,0,252,31,128,17,22,66,17,0,0, + 1,128,0,3,192,0,6,96,0,4,32,0,0,0,0,0, + 128,0,1,192,0,1,192,0,1,96,0,2,96,0,2,48, + 0,6,48,0,4,48,0,4,24,0,12,24,0,15,248,0, + 8,12,0,24,12,0,16,12,0,16,6,0,48,6,0,252, + 31,128,17,21,63,17,0,0,3,32,0,7,224,0,4,192, + 0,0,0,0,0,128,0,1,192,0,1,192,0,1,96,0, + 2,96,0,2,48,0,6,48,0,4,48,0,4,24,0,12, + 24,0,15,248,0,8,12,0,24,12,0,16,12,0,16,6, + 0,48,6,0,252,31,128,17,21,63,17,0,0,6,96,0, + 6,96,0,0,0,0,0,0,0,0,128,0,1,192,0,1, + 192,0,1,96,0,2,96,0,2,48,0,6,48,0,4,48, + 0,4,24,0,12,24,0,15,248,0,8,12,0,24,12,0, + 16,12,0,16,6,0,48,6,0,252,31,128,17,23,69,17, + 0,0,1,192,0,2,32,0,2,32,0,2,32,0,1,192, + 0,0,0,0,0,128,0,1,192,0,1,192,0,1,96,0, + 2,96,0,2,48,0,6,48,0,4,48,0,4,24,0,12, + 24,0,15,248,0,8,12,0,24,12,0,16,12,0,16,6, + 0,48,6,0,252,31,128,21,17,51,22,0,0,3,255,240, + 0,240,48,1,176,16,1,48,16,3,48,0,2,48,0,6, + 48,64,4,48,64,4,63,192,12,48,64,15,240,64,8,48, + 0,24,48,0,16,48,8,48,48,8,32,48,24,248,255,248, + 14,23,46,16,1,250,7,228,28,60,56,12,96,4,96,4, + 192,0,192,0,192,0,192,0,192,0,192,0,192,0,96,0, + 96,4,56,8,30,56,7,224,1,0,3,0,3,192,0,192, + 12,192,7,128,13,22,44,15,1,0,24,0,28,0,14,0, + 3,0,0,0,255,240,48,48,48,16,48,16,48,0,48,0, + 48,64,48,64,63,192,48,64,48,64,48,0,48,0,48,8, + 48,8,48,24,255,248,13,22,44,15,1,0,0,96,0,224, + 1,192,3,0,0,0,255,240,48,48,48,16,48,16,48,0, + 48,0,48,64,48,64,63,192,48,64,48,64,48,0,48,0, + 48,8,48,8,48,24,255,248,13,22,44,15,1,0,6,0, + 15,0,25,128,16,128,0,0,255,240,48,48,48,16,48,16, + 48,0,48,0,48,64,48,64,63,192,48,64,48,64,48,0, + 48,0,48,8,48,8,48,24,255,248,13,21,42,15,1,0, + 25,128,25,128,0,0,0,0,255,240,48,48,48,16,48,16, + 48,0,48,0,48,64,48,64,63,192,48,64,48,64,48,0, + 48,0,48,8,48,8,48,24,255,248,7,22,22,8,0,0, + 192,224,112,24,0,126,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,24,126,7,22,22,8,1,0,6,14,28,48, + 0,252,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,252,6,22,22,8,1,0,48,120,204,132,0,252,48,48, + 48,48,48,48,48,48,48,48,48,48,48,48,48,252,6,21, + 21,8,1,0,204,204,0,0,252,48,48,48,48,48,48,48, + 48,48,48,48,48,48,48,48,252,16,17,34,17,0,0,127, + 224,24,56,24,28,24,6,24,6,24,3,24,3,255,3,255, + 3,24,3,24,3,24,3,24,6,24,6,24,28,24,56,127, + 224,16,21,42,18,1,0,3,32,7,224,4,192,0,0,240, + 31,48,4,56,4,56,4,44,4,38,4,38,4,35,4,33, + 132,33,132,32,196,32,100,32,100,32,52,32,28,32,28,248, + 12,16,22,44,18,1,0,12,0,14,0,7,0,1,128,0, + 0,7,224,28,56,56,28,96,6,96,6,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,96,6,96,6,56,28,28, + 56,7,224,16,22,44,18,1,0,0,48,0,112,0,224,1, + 128,0,0,7,224,28,56,56,28,96,6,96,6,192,3,192, + 3,192,3,192,3,192,3,192,3,192,3,96,6,96,6,56, + 28,28,56,7,224,16,22,44,18,1,0,1,128,3,192,6, + 96,4,32,0,0,7,224,28,56,56,28,96,6,96,6,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,96,6,96, + 6,56,28,28,56,7,224,16,21,42,18,1,0,3,32,7, + 224,4,192,0,0,7,224,28,56,56,28,96,6,96,6,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,96,6,96, + 6,56,28,28,56,7,224,16,21,42,18,1,0,6,96,6, + 96,0,0,0,0,7,224,28,56,56,28,96,6,96,6,192, + 3,192,3,192,3,192,3,192,3,192,3,192,3,96,6,96, + 6,56,28,28,56,7,224,10,9,18,12,1,1,192,192,97, + 128,51,0,30,0,12,0,30,0,51,0,97,128,192,192,16, + 19,38,18,1,255,0,4,7,228,28,56,56,28,96,38,96, + 70,192,67,192,131,192,131,193,3,193,3,194,3,194,3,100, + 6,104,6,56,28,28,56,39,224,32,0,16,22,44,18,1, + 0,6,0,7,0,3,128,0,192,0,0,252,31,48,4,48, + 4,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,48,8,24,8,28,48,7,224,16,22,44, + 18,1,0,0,48,0,112,0,224,1,128,0,0,252,31,48, + 4,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,48,4,48,8,24,8,28,48,7,224,16, + 22,44,18,1,0,1,128,3,192,6,96,4,32,0,0,252, + 31,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,48,4,48,4,48,8,24,8,28,48,7, + 224,16,21,42,18,1,0,6,96,6,96,0,0,0,0,252, + 31,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,48,4,48,4,48,8,24,8,28,48,7, + 224,16,22,44,18,1,0,0,48,0,112,0,224,1,128,0, + 0,252,63,48,12,56,8,24,24,28,16,12,48,6,32,6, + 96,3,64,3,192,1,128,1,128,1,128,1,128,1,128,1, + 128,7,224,13,17,34,15,1,0,252,0,48,0,48,0,48, + 0,63,192,48,112,48,48,48,24,48,24,48,24,48,48,48, + 112,63,192,48,0,48,0,48,0,252,0,10,17,34,12,1, + 0,30,0,51,0,97,128,97,128,97,128,97,128,99,0,108, + 0,103,0,99,128,97,128,97,192,96,192,96,192,108,192,108, + 128,231,0,9,17,34,11,1,0,96,0,112,0,56,0,12, + 0,0,0,62,0,103,0,99,0,3,0,15,0,59,0,99, + 0,195,0,195,0,199,0,251,0,113,128,9,17,34,11,1, + 0,3,0,7,0,14,0,24,0,0,0,62,0,103,0,99, + 0,3,0,15,0,59,0,99,0,195,0,195,0,199,0,251, + 0,113,128,9,17,34,11,1,0,12,0,30,0,51,0,33, + 0,0,0,62,0,103,0,99,0,3,0,15,0,59,0,99, + 0,195,0,195,0,199,0,251,0,113,128,9,16,32,11,1, + 0,50,0,126,0,76,0,0,0,62,0,103,0,99,0,3, + 0,15,0,59,0,99,0,195,0,195,0,199,0,251,0,113, + 128,9,16,32,11,1,0,102,0,102,0,0,0,0,0,62, + 0,103,0,99,0,3,0,15,0,59,0,99,0,195,0,195, + 0,199,0,251,0,113,128,9,18,36,11,1,0,28,0,34, + 0,34,0,34,0,28,0,0,0,62,0,103,0,99,0,3, + 0,15,0,59,0,99,0,195,0,195,0,199,0,251,0,113, + 128,14,12,24,16,1,0,60,240,103,152,99,12,3,12,15, + 252,59,0,99,0,195,0,195,0,199,132,251,248,112,240,9, + 18,36,11,1,250,31,0,99,128,65,128,192,0,192,0,192, + 0,192,0,192,0,224,0,112,128,127,0,30,0,8,0,24, + 0,30,0,6,0,102,0,60,0,9,17,34,11,1,0,96, + 0,112,0,56,0,12,0,0,0,30,0,99,0,65,128,193, + 128,255,128,192,0,192,0,192,0,224,0,112,128,127,0,30, + 0,9,17,34,11,1,0,3,0,7,0,14,0,24,0,0, + 0,30,0,99,0,65,128,193,128,255,128,192,0,192,0,192, + 0,224,0,112,128,127,0,30,0,9,17,34,11,1,0,12, + 0,30,0,51,0,33,0,0,0,30,0,99,0,65,128,193, + 128,255,128,192,0,192,0,192,0,224,0,112,128,127,0,30, + 0,9,16,32,11,1,0,51,0,51,0,0,0,0,0,30, + 0,99,0,65,128,193,128,255,128,192,0,192,0,192,0,224, + 0,112,128,127,0,30,0,6,17,17,6,255,0,192,224,112, + 24,0,56,24,24,24,24,24,24,24,24,24,24,60,5,17, + 17,6,1,0,24,56,112,192,0,96,224,96,96,96,96,96, + 96,96,96,96,240,6,17,17,6,0,0,48,120,204,132,0, + 48,112,48,48,48,48,48,48,48,48,48,120,6,16,16,6, + 0,0,204,204,0,0,112,48,48,48,48,48,48,48,48,48, + 48,120,10,17,34,12,1,0,192,0,113,128,30,0,60,0, + 198,0,31,0,115,128,97,128,192,192,192,192,192,192,192,192, + 192,192,192,192,97,128,115,128,30,0,11,16,32,13,1,0, + 25,0,63,0,38,0,0,0,103,0,239,128,113,192,96,192, + 96,192,96,192,96,192,96,192,96,192,96,192,96,192,241,224, + 10,17,34,12,1,0,96,0,112,0,56,0,12,0,0,0, + 30,0,115,128,97,128,192,192,192,192,192,192,192,192,192,192, + 192,192,97,128,115,128,30,0,10,17,34,12,1,0,3,0, + 7,0,14,0,24,0,0,0,30,0,115,128,97,128,192,192, + 192,192,192,192,192,192,192,192,192,192,97,128,115,128,30,0, + 10,17,34,12,1,0,12,0,30,0,51,0,33,0,0,0, + 30,0,115,128,97,128,192,192,192,192,192,192,192,192,192,192, + 192,192,97,128,115,128,30,0,10,16,32,12,1,0,25,0, + 63,0,38,0,0,0,30,0,115,128,97,128,192,192,192,192, + 192,192,192,192,192,192,192,192,97,128,115,128,30,0,10,16, + 32,12,1,0,51,0,51,0,0,0,0,0,30,0,115,128, + 97,128,192,192,192,192,192,192,192,192,192,192,192,192,97,128, + 115,128,30,0,10,10,20,12,1,1,12,0,12,0,0,0, + 0,0,255,192,255,192,0,0,0,0,12,0,12,0,10,14, + 28,12,1,255,0,192,30,192,115,128,99,128,198,192,196,192, + 204,192,200,192,216,192,208,192,113,128,115,128,222,0,192,0, + 11,17,34,13,1,0,96,0,112,0,56,0,12,0,0,0, + 225,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,113,192,62,192,28,224,11,17,34,13,1,0,1,128, + 3,128,7,0,12,0,0,0,225,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,96,192,113,192,62,192,28,224, + 11,17,34,13,1,0,12,0,30,0,51,0,33,0,0,0, + 225,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,113,192,62,192,28,224,11,16,32,13,1,0,51,0, + 51,0,0,0,0,0,225,192,96,192,96,192,96,192,96,192, + 96,192,96,192,96,192,96,192,113,192,62,192,28,224,11,22, + 44,11,0,251,1,128,3,128,7,0,12,0,0,0,241,224, + 96,192,96,128,48,128,48,128,49,0,25,0,25,0,26,0, + 14,0,14,0,4,0,12,0,8,0,24,0,240,0,224,0, + 10,22,44,12,1,251,96,0,224,0,96,0,96,0,96,0, + 110,0,115,128,97,128,96,192,96,192,96,192,96,192,96,192, + 96,192,97,128,115,128,110,0,96,0,96,0,96,0,96,0, + 240,0,11,21,42,11,0,251,51,0,51,0,0,0,0,0, + 241,224,96,192,96,128,48,128,48,128,49,0,25,0,25,0, + 26,0,14,0,14,0,4,0,12,0,8,0,24,0,240,0, + 224,0}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--25-180-100-100-P-125-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 17, '1' Height: 17 + Calculated Max Values w=23 h=23 x= 3 y=13 dx=23 dy= 0 ascent=19 len=60 + Font Bounding box w=29 h=37 x=-4 y=-9 + Calculated Min Values x=-2 y=-6 dx= 0 dy= 0 + Pure Font ascent =17 descent=-6 + X Font ascent =17 descent=-6 + Max Font ascent =19 descent=-6 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR18r[3208] U8G_SECTION(".progmem.u8g_font_timR18r") = { + 0,29,37,252,247,17,4,9,8,241,32,127,250,19,250,17, + 250,0,0,0,6,0,1,3,17,17,8,3,0,64,224,224, + 224,224,224,224,224,64,64,64,64,0,0,0,192,192,6,5, + 5,10,1,12,204,204,204,204,136,11,17,34,13,1,0,8, + 128,8,128,8,128,8,128,8,128,127,224,127,224,17,0,17, + 0,17,0,255,192,255,192,34,0,34,0,34,0,34,0,34, + 0,11,21,42,12,0,254,4,0,4,0,63,0,101,192,196, + 192,196,64,196,64,228,0,124,0,30,0,7,128,5,192,4, + 224,4,96,132,96,132,96,196,192,229,192,63,0,4,0,4, + 0,17,16,48,19,1,0,30,12,0,51,252,0,97,24,0, + 193,16,0,193,48,0,194,96,0,228,64,0,120,192,0,1, + 143,0,1,25,128,3,48,128,6,96,128,4,96,128,12,97, + 0,24,114,0,16,60,0,17,17,51,19,1,0,7,192,0, + 8,96,0,24,32,0,24,32,0,24,96,0,12,192,0,15, + 158,0,7,12,0,15,8,0,51,136,0,97,144,0,192,208, + 0,192,224,0,192,96,0,224,240,128,127,191,0,62,14,0, + 2,5,5,6,2,12,192,192,192,192,128,6,22,22,8,1, + 251,4,8,16,48,32,96,96,192,192,192,192,192,192,192,192, + 96,96,32,48,16,8,4,6,22,22,8,1,251,128,64,32, + 48,16,24,24,12,12,12,12,12,12,12,12,24,24,16,48, + 32,64,128,9,9,18,12,2,8,28,0,28,0,201,128,235, + 128,28,0,235,128,201,128,28,0,28,0,12,12,24,12,0, + 0,6,0,6,0,6,0,6,0,6,0,255,240,255,240,6, + 0,6,0,6,0,6,0,6,0,3,5,5,7,2,253,192, + 224,32,96,192,6,2,2,8,0,5,252,252,2,2,2,6, + 2,0,192,192,9,21,42,7,254,252,1,128,1,128,1,0, + 3,0,3,0,2,0,6,0,6,0,4,0,12,0,12,0, + 8,0,24,0,24,0,16,0,48,0,48,0,96,0,96,0, + 64,0,192,0,10,17,34,12,1,0,30,0,51,0,97,128, + 97,128,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,225,192,97,128,97,128,51,0,30,0,8,17,17,12, + 2,0,8,24,120,24,24,24,24,24,24,24,24,24,24,24, + 24,24,255,10,17,34,12,1,0,28,0,127,0,67,128,129, + 128,129,128,1,128,1,128,3,0,3,0,6,0,4,0,12, + 0,24,0,48,0,96,64,255,192,255,128,9,17,34,12,1, + 0,28,0,126,0,71,0,131,0,131,0,6,0,12,0,30, + 0,7,0,3,128,1,128,1,128,1,128,1,0,195,0,230, + 0,120,0,10,17,34,12,1,0,3,0,7,0,7,0,11, + 0,27,0,19,0,51,0,35,0,99,0,67,0,195,0,255, + 192,255,192,3,0,3,0,3,0,3,0,10,17,34,12,1, + 0,31,192,31,128,32,0,32,0,96,0,120,0,126,0,15, + 128,3,128,1,192,0,192,0,192,0,192,0,192,193,128,227, + 128,126,0,10,17,34,12,1,0,3,192,14,0,24,0,48, + 0,112,0,96,0,238,0,243,128,193,128,192,192,192,192,192, + 192,192,192,224,192,97,128,123,128,30,0,10,17,34,12,1, + 0,127,192,255,192,192,192,129,128,1,128,1,0,3,0,3, + 0,2,0,6,0,6,0,4,0,12,0,12,0,12,0,24, + 0,24,0,10,17,34,12,1,0,30,0,51,0,97,128,97, + 128,97,128,115,0,62,0,30,0,63,0,99,128,65,192,192, + 192,192,192,192,192,225,128,115,128,30,0,10,17,34,12,1, + 0,30,0,119,128,97,128,193,192,192,192,192,192,192,192,192, + 192,97,192,115,192,29,128,1,128,3,128,3,0,6,0,28, + 0,240,0,2,11,11,6,2,0,192,192,0,0,0,0,0, + 0,0,192,192,3,14,14,7,2,253,192,192,0,0,0,0, + 0,0,0,192,224,32,96,192,11,11,22,14,1,0,0,96, + 1,192,7,0,28,0,112,0,192,0,112,0,28,0,7,0, + 1,192,0,96,9,5,10,13,2,3,255,128,255,128,0,0, + 255,128,255,128,11,11,22,13,1,0,192,0,112,0,28,0, + 7,0,1,192,0,96,1,192,7,0,28,0,112,0,192,0, + 8,17,17,11,2,0,124,198,131,195,195,7,14,12,28,24, + 24,16,16,0,0,48,48,18,20,60,22,2,253,3,248,0, + 15,14,0,28,3,0,56,1,128,112,0,128,96,236,192,225, + 252,64,195,140,64,195,12,64,198,12,64,198,24,64,198,24, + 192,198,24,128,198,57,128,99,123,0,97,222,0,48,0,0, + 24,0,0,14,12,0,3,240,0,17,17,51,17,0,0,0, + 128,0,1,192,0,1,192,0,1,96,0,2,96,0,2,48, + 0,6,48,0,4,48,0,4,24,0,12,24,0,15,248,0, + 8,12,0,24,12,0,16,12,0,16,6,0,48,6,0,252, + 31,128,14,17,34,16,1,0,255,192,48,112,48,48,48,24, + 48,24,48,24,48,48,48,64,63,224,48,56,48,24,48,12, + 48,12,48,12,48,24,48,120,255,224,14,17,34,16,1,0, + 7,228,28,60,56,12,96,4,96,4,192,0,192,0,192,0, + 192,0,192,0,192,0,192,0,96,0,96,4,56,8,30,56, + 7,224,15,17,34,17,1,0,255,192,48,112,48,56,48,12, + 48,12,48,6,48,6,48,6,48,6,48,6,48,6,48,6, + 48,12,48,12,48,56,48,112,255,192,13,17,34,15,1,0, + 255,240,48,48,48,16,48,16,48,0,48,0,48,64,48,64, + 63,192,48,64,48,64,48,0,48,0,48,8,48,8,48,24, + 255,248,12,17,34,14,1,0,255,240,48,48,48,16,48,16, + 48,0,48,0,48,32,48,32,63,224,48,32,48,32,48,0, + 48,0,48,0,48,0,48,0,252,0,16,17,34,18,1,0, + 7,228,28,60,56,12,96,4,96,4,192,0,192,0,192,0, + 192,0,192,63,192,12,192,12,96,12,96,12,56,28,30,56, + 7,224,17,17,51,19,1,0,252,31,128,48,6,0,48,6, + 0,48,6,0,48,6,0,48,6,0,48,6,0,48,6,0, + 63,254,0,48,6,0,48,6,0,48,6,0,48,6,0,48, + 6,0,48,6,0,48,6,0,252,31,128,6,17,17,8,1, + 0,252,48,48,48,48,48,48,48,48,48,48,48,48,48,48, + 48,252,9,17,34,11,1,0,31,128,6,0,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,6,0,198,0,204,0,120,0,16,17,34,17,1,0, + 252,126,48,24,48,48,48,96,48,192,49,128,51,0,62,0, + 63,0,51,128,49,192,48,224,48,112,48,56,48,28,48,14, + 252,31,13,17,34,14,1,0,252,0,48,0,48,0,48,0, + 48,0,48,0,48,0,48,0,48,0,48,0,48,0,48,0, + 48,0,48,8,48,8,48,24,255,248,21,17,51,22,1,0, + 240,0,248,48,0,224,56,1,96,56,1,96,44,2,96,44, + 2,96,38,2,96,38,4,96,35,4,96,35,8,96,33,136, + 96,33,136,96,32,208,96,32,208,96,32,96,96,32,96,96, + 248,97,248,16,17,34,18,1,0,240,31,48,4,56,4,56, + 4,44,4,38,4,38,4,35,4,33,132,33,132,32,196,32, + 100,32,100,32,52,32,28,32,28,248,12,16,17,34,18,1, + 0,7,224,28,56,56,28,96,6,96,6,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,96,6,96,6,56,28,28, + 56,7,224,13,17,34,15,1,0,255,192,48,112,48,48,48, + 24,48,24,48,24,48,48,48,112,63,192,48,0,48,0,48, + 0,48,0,48,0,48,0,48,0,252,0,16,22,44,18,1, + 251,7,224,28,56,56,28,96,6,96,6,192,3,192,3,192, + 3,192,3,192,3,192,3,192,3,96,6,96,6,56,28,28, + 56,7,224,1,192,0,224,0,112,0,56,0,15,15,17,34, + 16,1,0,255,192,48,112,48,48,48,24,48,24,48,24,48, + 48,48,112,63,192,51,128,49,128,48,192,48,96,48,112,48, + 56,48,28,252,30,11,17,34,13,1,0,30,64,99,192,192, + 192,192,64,192,64,224,0,120,0,30,0,15,128,3,192,0, + 224,0,96,128,96,128,96,192,192,241,128,158,0,14,17,34, + 16,1,0,255,252,195,12,131,4,131,4,3,0,3,0,3, + 0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3, + 0,3,0,15,192,16,17,34,18,1,0,252,31,48,4,48, + 4,48,4,48,4,48,4,48,4,48,4,48,4,48,4,48, + 4,48,4,48,4,48,8,24,8,28,48,7,224,17,17,51, + 17,0,0,252,31,128,48,6,0,48,4,0,24,12,0,24, + 8,0,24,8,0,12,24,0,12,16,0,6,48,0,6,32, + 0,6,32,0,3,96,0,3,64,0,3,192,0,1,128,0, + 1,128,0,1,128,0,23,17,51,23,0,0,252,126,126,48, + 24,24,48,24,16,24,24,16,24,24,48,24,44,32,12,44, + 32,12,44,96,6,76,96,6,76,64,6,70,64,3,70,192, + 3,70,128,3,135,128,1,131,128,1,131,0,1,131,0,18, + 17,51,18,0,0,126,15,128,28,6,0,14,12,0,6,8, + 0,3,16,0,1,160,0,1,192,0,0,192,0,0,224,0, + 1,112,0,2,56,0,6,24,0,4,12,0,8,14,0,24, + 7,0,48,3,128,252,15,192,16,17,34,18,1,0,252,63, + 48,12,56,8,24,24,28,16,12,48,6,32,6,96,3,64, + 3,192,1,128,1,128,1,128,1,128,1,128,1,128,7,224, + 13,17,34,15,1,0,255,240,192,112,128,224,128,192,1,192, + 3,128,3,0,7,0,6,0,14,0,28,0,24,0,56,0, + 48,8,112,8,224,24,255,248,5,21,21,8,2,252,248,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,248,7,17,17,7,0,0,192,192,64,96,96,32,48, + 48,16,24,24,8,12,12,4,6,6,5,21,21,8,1,252, + 248,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24, + 24,24,24,24,248,9,9,18,11,1,8,8,0,28,0,20, + 0,54,0,34,0,99,0,65,0,193,128,128,128,12,2,4, + 12,0,251,255,240,255,240,5,4,4,8,1,13,192,224,112, + 24,9,12,24,11,1,0,62,0,103,0,99,0,3,0,15, + 0,59,0,99,0,195,0,195,0,199,0,251,0,113,128,11, + 17,34,12,0,0,48,0,240,0,48,0,48,0,48,0,55, + 0,57,192,48,192,48,96,48,96,48,96,48,96,48,96,48, + 96,48,192,57,192,47,0,9,12,24,11,1,0,31,0,99, + 128,65,128,192,0,192,0,192,0,192,0,192,0,224,0,112, + 128,127,0,30,0,10,17,34,12,1,0,1,128,7,128,1, + 128,1,128,1,128,29,128,115,128,97,128,193,128,193,128,193, + 128,193,128,193,128,193,128,99,128,127,128,25,192,9,12,24, + 11,1,0,30,0,99,0,65,128,193,128,255,128,192,0,192, + 0,192,0,224,0,112,128,127,0,30,0,7,17,17,7,0, + 0,14,22,48,48,48,254,48,48,48,48,48,48,48,48,48, + 48,120,11,18,36,12,1,250,30,192,35,192,97,0,97,128, + 97,128,97,128,97,128,51,0,60,0,64,0,96,0,127,128, + 63,192,64,224,192,96,192,96,225,192,127,0,12,17,34,13, + 0,0,48,0,240,0,48,0,48,0,48,0,51,128,55,192, + 56,224,48,96,48,96,48,96,48,96,48,96,48,96,48,96, + 48,96,120,240,4,17,17,6,1,0,96,96,0,0,0,96, + 224,96,96,96,96,96,96,96,96,96,240,6,23,23,6,254, + 250,12,12,0,0,0,12,28,12,12,12,12,12,12,12,12, + 12,12,12,12,12,204,200,112,12,17,34,12,0,0,48,0, + 240,0,48,0,48,0,48,0,51,224,49,128,51,0,50,0, + 52,0,60,0,54,0,55,0,51,128,49,192,48,224,121,240, + 5,17,17,6,0,0,48,240,48,48,48,48,48,48,48,48, + 48,48,48,48,48,48,120,18,12,36,20,1,0,103,14,0, + 239,159,0,113,227,128,96,193,128,96,193,128,96,193,128,96, + 193,128,96,193,128,96,193,128,96,193,128,96,193,128,241,227, + 192,11,12,24,13,1,0,103,0,239,128,113,192,96,192,96, + 192,96,192,96,192,96,192,96,192,96,192,96,192,241,224,10, + 12,24,12,1,0,30,0,115,128,97,128,192,192,192,192,192, + 192,192,192,192,192,192,192,97,128,115,128,30,0,10,18,36, + 12,1,250,110,0,243,128,97,128,96,192,96,192,96,192,96, + 192,96,192,96,192,97,128,115,128,110,0,96,0,96,0,96, + 0,96,0,96,0,240,0,10,18,36,12,1,250,29,128,115, + 128,97,128,193,128,193,128,193,128,193,128,193,128,193,128,97, + 128,115,128,29,128,1,128,1,128,1,128,1,128,1,128,3, + 192,6,12,12,8,1,0,108,236,112,96,96,96,96,96,96, + 96,96,240,8,12,12,10,1,0,62,70,194,224,112,124,30, + 7,3,131,198,248,7,15,15,7,0,0,16,48,112,254,48, + 48,48,48,48,48,48,48,48,50,28,11,12,24,13,1,0, + 225,192,96,192,96,192,96,192,96,192,96,192,96,192,96,192, + 96,192,113,192,62,192,28,224,11,12,24,11,0,0,241,224, + 96,192,96,128,48,128,48,128,49,0,25,0,25,0,26,0, + 14,0,14,0,4,0,17,12,36,17,0,0,241,231,128,96, + 195,0,96,194,0,48,194,0,48,194,0,49,100,0,25,100, + 0,26,100,0,26,40,0,14,56,0,14,56,0,4,16,0, + 11,12,24,13,1,0,241,224,96,192,49,128,57,0,26,0, + 12,0,14,0,27,0,51,128,33,128,96,192,241,224,12,18, + 36,11,255,250,120,240,48,96,48,64,24,64,24,64,24,128, + 12,128,12,128,13,0,7,0,7,0,2,0,6,0,4,0, + 12,0,200,0,240,0,96,0,8,12,12,10,1,0,255,195, + 134,14,28,24,56,48,112,97,195,255,8,22,22,10,1,251, + 7,12,24,24,24,24,24,16,48,32,192,32,48,16,24,24, + 24,24,24,24,12,7,2,17,17,5,1,0,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,192,192,8,22,22, + 10,1,251,224,48,24,24,24,24,24,8,12,4,3,4,12, + 8,24,24,24,24,24,24,48,224,11,4,8,13,1,4,56, + 32,124,96,199,192,131,128,255}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--34-240-100-100-P-170-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 23, '1' Height: 23 + Calculated Max Values w=31 h=30 x= 4 y=18 dx=32 dy= 0 ascent=30 len=112 + Font Bounding box w=38 h=48 x=-5 y=-11 + Calculated Min Values x=-2 y=-7 dx= 0 dy= 0 + Pure Font ascent =23 descent=-7 + X Font ascent =23 descent=-7 + Max Font ascent =30 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR24[10419] U8G_SECTION(".progmem.u8g_font_timR24") = { + 0,38,48,251,245,23,5,140,13,213,32,255,249,30,249,23, + 249,0,0,0,8,0,1,4,23,23,11,3,0,96,240,240, + 240,240,240,96,96,96,96,96,96,96,96,96,96,96,0,0, + 96,240,240,96,9,7,14,14,2,16,227,128,227,128,227,128, + 227,128,65,0,65,0,65,0,16,23,46,17,0,0,6,24, + 6,24,6,24,6,24,6,24,6,24,6,24,6,24,127,255, + 127,255,12,48,12,48,12,48,12,48,255,254,255,254,24,96, + 24,96,24,96,24,96,24,96,24,96,24,96,13,28,56,16, + 2,253,2,0,2,0,15,192,58,112,50,56,98,24,98,8, + 98,8,114,0,122,0,62,0,63,0,31,128,7,192,3,224, + 2,240,2,112,2,56,2,56,130,24,130,24,194,56,226,48, + 114,96,31,192,2,0,2,0,2,0,23,23,69,27,2,0, + 15,0,64,29,131,192,56,252,128,112,65,128,112,67,0,224, + 66,0,224,70,0,224,196,0,192,140,0,193,136,0,193,24, + 120,102,16,236,60,49,198,0,99,130,0,67,130,0,199,2, + 0,135,2,1,135,6,1,6,4,3,6,12,2,6,8,6, + 3,48,4,1,224,23,23,69,26,2,0,0,248,0,1,140, + 0,3,14,0,3,6,0,7,6,0,7,6,0,7,12,0, + 7,140,0,3,152,0,3,241,252,3,192,112,7,192,96,29, + 224,64,56,240,192,112,112,128,96,121,128,224,63,0,224,30, + 0,224,15,0,240,31,130,120,51,252,127,225,248,31,128,240, + 3,8,8,6,1,15,224,224,224,224,64,64,64,64,8,28, + 28,11,2,251,3,6,12,24,56,48,112,112,96,224,224,224, + 224,224,224,224,224,224,224,96,112,112,48,56,24,12,6,3, + 8,28,28,11,1,251,192,96,48,24,28,12,14,14,6,7, + 7,7,7,7,7,7,7,7,7,6,14,14,12,28,24,48, + 96,192,12,13,26,17,2,10,6,0,15,0,6,0,198,48, + 246,240,118,224,15,0,118,224,246,240,198,48,6,0,15,0, + 6,0,16,16,32,19,1,1,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,255,255,255,255,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,4,7,7,8,2,253,96,240, + 240,112,16,32,64,8,2,2,11,1,7,255,255,4,4,4, + 8,2,0,96,240,240,96,10,26,52,9,0,253,0,192,0, + 192,1,128,1,128,3,128,3,0,3,0,3,0,6,0,6, + 0,6,0,14,0,12,0,12,0,28,0,24,0,24,0,24, + 0,48,0,48,0,48,0,112,0,96,0,96,0,192,0,192, + 0,14,23,46,16,1,0,7,128,28,224,56,112,48,48,112, + 56,112,56,96,24,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,224,24,112,56,112,56,48,48,56, + 112,28,224,7,128,9,23,46,16,4,0,12,0,28,0,124, + 0,220,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,62,0,255,128,15,23,46,16,0,0,7, + 224,15,240,28,248,48,60,32,60,96,28,64,28,0,28,0, + 28,0,24,0,56,0,48,0,96,0,96,0,192,1,128,3, + 0,6,0,12,2,24,6,63,252,127,248,255,248,12,23,46, + 16,2,0,15,128,63,192,97,224,192,224,128,224,0,224,0, + 192,0,192,1,128,3,0,7,192,31,224,1,240,0,112,0, + 112,0,48,0,48,0,48,0,112,0,96,224,192,243,128,127, + 0,14,23,46,16,1,0,0,96,0,224,0,224,1,224,1, + 96,3,96,6,96,4,96,12,96,24,96,16,96,48,96,96, + 96,64,96,255,252,255,252,255,252,0,96,0,96,0,96,0, + 96,0,96,0,96,13,23,46,16,1,0,15,248,31,240,31, + 224,16,0,48,0,32,0,126,0,127,128,127,192,7,224,1, + 224,0,240,0,112,0,112,0,48,0,48,0,48,0,48,0, + 96,0,96,224,192,243,128,126,0,14,23,46,16,1,0,0, + 120,1,192,3,128,15,0,30,0,28,0,56,0,120,0,112, + 0,115,192,247,240,248,120,224,56,224,60,224,28,224,28,224, + 28,224,28,112,28,112,24,56,56,28,96,7,192,14,23,46, + 16,1,0,63,252,127,252,96,24,192,24,128,56,0,48,0, + 48,0,48,0,96,0,96,0,96,0,224,0,192,0,192,1, + 192,1,128,1,128,1,128,3,0,3,0,3,0,7,0,6, + 0,13,23,46,16,2,0,31,128,56,224,112,112,224,48,224, + 48,224,48,224,112,240,96,124,192,63,0,31,128,15,192,27, + 224,113,240,96,240,224,120,192,120,192,56,192,56,224,56,96, + 112,112,224,31,192,14,23,46,16,1,0,7,128,24,224,48, + 112,112,56,96,56,224,28,224,28,224,28,224,28,224,28,240, + 28,112,28,120,60,62,252,15,184,0,56,0,112,0,112,0, + 224,1,192,3,128,15,0,120,0,4,15,15,9,2,0,96, + 240,240,96,0,0,0,0,0,0,0,96,240,240,96,4,18, + 18,9,2,253,96,240,240,96,0,0,0,0,0,0,0,96, + 240,240,112,16,32,64,16,18,36,19,1,0,0,1,0,7, + 0,31,0,124,1,240,7,192,31,0,124,0,240,0,240,0, + 124,0,31,0,7,192,1,240,0,124,0,31,0,7,0,1, + 16,9,18,19,1,4,255,255,255,255,0,0,0,0,0,0, + 0,0,0,0,255,255,255,255,16,18,36,19,2,0,128,0, + 224,0,248,0,62,0,15,128,3,224,0,248,0,62,0,15, + 0,15,0,62,0,248,3,224,15,128,62,0,248,0,224,0, + 128,0,11,23,46,14,2,0,31,0,115,128,193,192,193,192, + 224,224,224,224,96,224,1,192,1,192,1,128,3,128,3,0, + 6,0,4,0,12,0,8,0,8,0,0,0,0,0,12,0, + 30,0,30,0,12,0,27,28,112,31,2,251,0,31,240,0, + 0,248,60,0,1,224,6,0,7,128,3,0,14,0,1,128, + 28,0,0,192,28,0,0,192,56,7,140,96,112,31,92,96, + 112,28,124,32,112,56,56,32,224,112,56,32,224,112,48,32, + 224,112,112,32,224,224,112,96,224,224,112,64,224,224,224,192, + 224,224,224,128,112,225,225,128,112,119,115,0,112,60,62,0, + 56,0,0,0,24,0,0,0,28,0,0,0,14,0,0,0, + 7,128,6,0,1,240,60,0,0,127,240,0,22,23,69,24, + 1,0,0,48,0,0,48,0,0,112,0,0,120,0,0,120, + 0,0,252,0,0,220,0,0,156,0,1,142,0,1,14,0, + 3,15,0,3,7,0,2,7,0,6,7,128,6,3,128,15, + 255,192,12,3,192,24,1,192,24,1,224,48,1,224,48,0, + 240,112,0,240,252,3,252,20,23,69,22,1,0,255,254,0, + 62,15,128,28,3,192,28,1,192,28,1,224,28,0,224,28, + 0,224,28,1,224,28,1,192,28,3,192,28,15,128,31,254, + 0,28,7,128,28,1,224,28,0,224,28,0,240,28,0,112, + 28,0,112,28,0,240,28,0,224,28,1,224,62,7,192,255, + 255,0,20,23,69,22,1,0,1,255,16,7,131,240,14,0, + 240,28,0,112,56,0,48,56,0,48,112,0,16,112,0,16, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,112,0,0,112,0,0,56,0,0,56,0, + 16,28,0,48,14,0,96,7,131,192,1,255,0,22,23,69, + 24,1,0,255,254,0,62,7,128,28,1,192,28,0,224,28, + 0,112,28,0,112,28,0,56,28,0,56,28,0,60,28,0, + 60,28,0,60,28,0,60,28,0,60,28,0,60,28,0,60, + 28,0,56,28,0,56,28,0,112,28,0,112,28,0,224,28, + 1,192,62,7,128,255,254,0,19,23,69,20,1,0,255,255, + 192,62,3,192,28,0,192,28,0,64,28,0,64,28,0,0, + 28,0,0,28,0,0,28,1,0,28,1,0,28,3,0,31, + 255,0,28,3,0,28,1,0,28,1,0,28,0,0,28,0, + 0,28,0,32,28,0,32,28,0,96,28,0,192,62,3,192, + 255,255,192,17,23,69,18,1,0,255,255,128,62,7,128,28, + 1,128,28,0,128,28,0,128,28,0,0,28,0,0,28,0, + 0,28,2,0,28,2,0,28,6,0,31,254,0,28,6,0, + 28,2,0,28,2,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,62,0,0,255,128,0,22,23, + 69,24,1,0,1,255,48,7,135,240,14,0,240,28,0,112, + 56,0,48,56,0,48,112,0,16,112,0,0,240,0,0,240, + 0,0,240,0,0,240,3,252,240,0,248,240,0,112,240,0, + 112,112,0,112,112,0,112,56,0,112,56,0,112,28,0,112, + 14,0,112,7,129,224,1,255,128,22,23,69,24,1,0,255, + 135,252,62,1,240,28,0,224,28,0,224,28,0,224,28,0, + 224,28,0,224,28,0,224,28,0,224,28,0,224,28,0,224, + 31,255,224,28,0,224,28,0,224,28,0,224,28,0,224,28, + 0,224,28,0,224,28,0,224,28,0,224,28,0,224,62,1, + 240,255,135,252,9,23,46,11,1,0,255,128,62,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,62,0,255,128,12,23,46,13,1,0,31,240, + 7,192,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,195,128,227,0,231,0,124,0,23,23,69,24, + 1,0,255,199,248,62,1,224,28,1,128,28,3,0,28,6, + 0,28,12,0,28,24,0,28,48,0,28,96,0,28,192,0, + 31,192,0,31,224,0,31,240,0,30,120,0,28,60,0,28, + 30,0,28,15,0,28,7,128,28,3,192,28,1,224,28,0, + 240,62,0,248,255,199,254,19,23,69,20,1,0,255,128,0, + 62,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,32,28,0,32,28,0,96,28,0,192,62,3,192,255, + 255,192,28,23,92,30,1,0,252,0,7,240,62,0,7,192, + 30,0,15,128,31,0,15,128,31,0,11,128,23,0,27,128, + 23,128,27,128,19,128,51,128,19,192,51,128,19,192,35,128, + 17,224,99,128,17,224,99,128,16,224,195,128,16,240,195,128, + 16,112,131,128,16,121,131,128,16,121,3,128,16,61,3,128, + 16,63,3,128,16,30,3,128,16,30,3,128,56,12,7,192, + 254,12,31,240,22,23,69,24,1,0,248,1,252,60,0,112, + 30,0,32,31,0,32,31,0,32,23,128,32,19,192,32,19, + 192,32,17,224,32,16,240,32,16,248,32,16,120,32,16,60, + 32,16,30,32,16,31,32,16,15,32,16,7,160,16,3,224, + 16,1,224,16,1,224,16,0,224,56,0,96,254,0,32,22, + 23,69,24,1,0,1,254,0,7,135,128,14,1,192,28,0, + 224,56,0,112,56,0,112,112,0,56,112,0,56,240,0,60, + 240,0,60,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,112,0,56,112,0,56,56,0,112,56,0,112,28,0, + 224,14,1,192,7,135,128,1,254,0,17,23,69,18,1,0, + 255,248,0,60,62,0,28,15,0,28,7,0,28,7,128,28, + 3,128,28,3,128,28,3,128,28,7,128,28,7,0,28,15, + 0,28,62,0,31,240,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,62, + 0,0,255,128,0,22,29,87,24,1,250,1,254,0,7,135, + 128,14,1,192,28,0,224,56,0,112,56,0,112,112,0,56, + 112,0,56,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,240,0,60,240,0,60,112,0,56,112,0,56,56,0, + 112,56,0,112,28,0,224,14,1,192,7,135,128,1,254,0, + 0,124,0,0,62,0,0,31,0,0,15,128,0,3,224,0, + 0,124,21,23,69,22,1,0,255,248,0,60,62,0,28,15, + 0,28,7,128,28,7,128,28,3,128,28,3,128,28,3,128, + 28,7,128,28,7,0,28,30,0,31,248,0,28,240,0,28, + 120,0,28,60,0,28,60,0,28,30,0,28,15,0,28,15, + 128,28,7,128,28,3,192,62,1,224,255,129,248,15,23,46, + 18,1,0,7,228,28,60,56,28,112,12,112,4,112,6,120, + 0,124,0,62,0,31,128,15,224,7,240,1,248,0,124,0, + 62,0,30,128,14,128,14,192,14,224,12,112,28,124,120,103, + 240,19,23,69,20,1,0,255,255,224,240,225,224,192,224,96, + 192,224,96,128,224,32,128,224,32,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,1,240,0,7,252,0,22,23,69,24, + 1,0,255,129,252,62,0,112,28,0,32,28,0,32,28,0, + 32,28,0,32,28,0,32,28,0,32,28,0,32,28,0,32, + 28,0,32,28,0,32,28,0,32,28,0,32,28,0,32,28, + 0,32,28,0,32,28,0,32,30,0,96,14,0,64,15,0, + 192,7,195,128,1,254,0,22,23,69,23,1,0,255,1,252, + 124,0,112,60,0,96,30,0,64,30,0,192,14,0,192,15, + 0,128,15,1,128,7,1,128,7,129,0,3,131,0,3,195, + 0,3,194,0,1,198,0,1,230,0,0,228,0,0,236,0, + 0,124,0,0,120,0,0,120,0,0,56,0,0,48,0,0, + 16,0,31,23,92,32,1,0,255,63,224,254,124,15,128,120, + 60,7,0,48,28,7,128,48,30,7,128,96,30,3,128,96, + 14,3,192,96,15,3,192,192,7,3,224,192,7,135,224,192, + 7,134,225,128,3,132,241,128,3,204,241,128,3,204,115,0, + 1,216,123,0,1,216,59,0,1,248,62,0,0,240,62,0, + 0,240,28,0,0,224,28,0,0,96,28,0,0,96,8,0, + 0,64,8,0,22,23,69,24,1,0,255,195,252,63,0,240, + 31,0,224,15,0,192,7,129,128,7,131,0,3,198,0,1, + 230,0,1,236,0,0,248,0,0,120,0,0,120,0,0,124, + 0,0,222,0,1,158,0,1,143,0,3,15,128,6,7,128, + 14,3,192,12,3,224,24,1,224,56,1,240,254,7,252,22, + 23,69,24,1,0,255,192,252,63,0,56,30,0,48,15,0, + 96,15,128,192,7,128,128,3,193,128,3,195,0,1,227,0, + 0,246,0,0,252,0,0,124,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,124,0,1,255,0,19,23,69,20,1,0, + 63,255,224,56,3,192,96,7,128,96,7,128,64,15,0,64, + 30,0,0,30,0,0,60,0,0,120,0,0,120,0,0,240, + 0,1,224,0,1,224,0,3,192,0,3,192,0,7,128,0, + 15,0,0,15,0,32,30,0,32,60,0,96,60,0,96,120, + 1,192,255,255,192,7,28,28,11,3,251,254,240,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,240,254,13,23,46,9,254,0,192,0,224, + 0,96,0,112,0,48,0,56,0,24,0,28,0,12,0,14, + 0,6,0,7,0,3,0,3,128,1,128,1,192,0,192,0, + 224,0,96,0,112,0,48,0,56,0,24,7,28,28,11,1, + 251,254,30,14,14,14,14,14,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,30,254,13,13,26, + 16,1,10,7,0,7,0,15,128,13,128,24,192,24,192,48, + 96,48,96,112,112,96,48,224,56,192,24,192,24,17,2,6, + 17,0,251,255,255,128,255,255,128,7,6,6,11,1,17,192, + 224,112,24,12,6,13,15,30,15,1,0,31,128,49,192,112, + 224,112,224,96,224,3,224,14,224,24,224,48,224,96,224,224, + 224,225,224,242,232,126,248,60,112,15,23,46,16,0,0,24, + 0,248,0,56,0,56,0,56,0,56,0,56,0,56,0,57, + 240,59,248,60,124,56,28,56,30,56,14,56,14,56,14,56, + 14,56,14,56,12,56,28,56,24,60,112,15,224,12,15,30, + 15,1,0,15,128,56,192,112,224,96,224,224,96,192,0,192, + 0,192,0,192,0,224,0,224,16,112,48,124,96,63,192,31, + 0,15,23,46,16,1,0,0,24,0,248,0,56,0,56,0, + 56,0,56,0,56,0,56,15,184,24,248,48,120,112,56,96, + 56,224,56,224,56,224,56,224,56,224,56,240,56,112,120,120, + 248,63,190,15,48,12,15,30,15,1,0,15,128,57,192,96, + 224,96,112,192,112,255,240,192,0,192,0,192,0,224,0,224, + 16,112,48,124,96,63,192,15,0,12,23,46,11,0,0,3, + 224,6,112,12,112,12,48,28,0,28,0,28,0,28,0,255, + 192,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,62,0,255,128,14,22,44, + 16,1,249,15,192,24,252,48,124,112,48,112,48,112,48,112, + 48,56,112,28,224,15,128,24,0,48,0,120,0,127,224,63, + 248,31,252,96,12,192,12,192,28,240,56,127,224,31,128,16, + 23,46,16,0,0,24,0,248,0,56,0,56,0,56,0,56, + 0,56,0,56,0,57,240,59,248,62,60,60,28,56,28,56, + 28,56,28,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,254,127,7,23,23,9,1,0,56,56,56,0,0,0,0, + 0,56,248,56,56,56,56,56,56,56,56,56,56,56,56,254, + 8,30,30,9,255,249,7,7,7,0,0,0,0,0,3,31, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, + 6,198,236,120,16,23,46,16,0,0,24,0,248,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,254,56,112,56,96, + 56,192,57,128,63,0,62,0,63,0,59,128,57,192,56,224, + 56,240,56,120,56,60,254,127,7,23,23,9,1,0,24,248, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,254,25,15,60,26,0,0,24,240,120,0,251, + 249,252,0,62,63,30,0,60,30,14,0,56,28,14,0,56, + 28,14,0,56,28,14,0,56,28,14,0,56,28,14,0,56, + 28,14,0,56,28,14,0,56,28,14,0,56,28,14,0,56, + 28,14,0,254,127,63,128,16,15,30,16,0,0,24,240,251, + 248,60,60,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,56,28,56,28,56,28,56,28,254,127,14,15,30,16,1, + 0,7,128,24,224,48,112,112,56,96,56,224,28,224,28,224, + 28,224,28,224,28,112,24,112,56,56,48,28,96,7,128,15, + 22,44,17,0,249,25,224,251,248,60,124,56,28,56,30,56, + 14,56,14,56,14,56,14,56,14,56,12,56,28,60,24,62, + 112,59,192,56,0,56,0,56,0,56,0,56,0,56,0,255, + 0,15,22,44,17,1,249,15,200,28,120,48,56,112,56,96, + 56,224,56,224,56,224,56,224,56,224,56,240,56,112,120,120, + 248,63,184,31,56,0,56,0,56,0,56,0,56,0,56,0, + 56,1,254,10,15,30,11,1,0,25,128,251,192,63,192,60, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,0,254,0,10,15,30,13,1,0,62,128,99, + 128,193,128,192,128,224,128,240,0,124,0,63,0,15,128,3, + 192,129,192,128,192,192,192,225,128,191,0,9,19,38,9,0, + 0,8,0,8,0,24,0,56,0,255,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,128,63,0,28,0,16,15,30,17,0,0,248,124,56, + 28,56,28,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,56,28,56,60,60,92,31,223,15,140,15,15,30,17,1, + 0,254,62,120,12,56,8,60,24,28,24,28,16,14,48,14, + 32,7,96,7,64,7,192,3,192,3,128,1,128,1,0,21, + 15,45,24,1,0,253,252,120,112,112,48,112,112,48,56,48, + 32,56,56,96,24,56,64,28,120,64,28,92,192,12,204,128, + 14,143,128,15,143,0,7,7,0,7,7,0,3,6,0,2, + 2,0,14,15,30,17,1,0,252,248,56,96,60,192,28,128, + 30,128,15,0,7,0,7,128,15,128,11,192,25,224,16,224, + 48,112,96,120,240,252,15,22,44,17,1,249,254,30,120,12, + 56,12,60,8,28,24,30,24,14,16,14,48,7,32,7,32, + 3,224,3,192,1,192,1,128,1,128,1,0,1,0,3,0, + 2,0,62,0,124,0,56,0,13,15,30,15,1,0,127,240, + 96,240,64,224,65,224,3,192,3,128,7,128,7,0,14,0, + 30,0,28,8,56,8,120,8,112,24,255,240,8,28,28,16, + 4,251,15,28,56,56,56,56,56,56,56,56,56,56,56,48, + 224,48,56,56,56,56,56,56,56,56,56,24,28,15,2,23, + 23,7,2,0,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,8,28,28,16,4, + 251,240,56,28,28,28,28,28,28,28,28,28,28,28,12,7, + 12,28,28,28,28,28,28,28,28,28,24,56,240,16,4,8, + 18,1,7,62,3,127,135,225,254,192,124,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,0,0,0,8, + 0,1,4,22,22,11,3,249,96,240,240,96,0,0,96,96, + 96,96,96,96,96,96,96,96,96,240,240,240,240,96,12,23, + 46,17,2,252,0,64,0,64,0,128,0,128,15,128,56,224, + 113,112,97,112,225,48,195,0,194,0,194,0,230,0,228,0, + 116,16,124,48,63,224,31,192,31,0,16,0,48,0,32,0, + 32,0,15,23,46,17,1,0,1,240,3,152,6,28,6,28, + 14,24,14,0,14,0,14,0,14,0,14,0,255,224,255,224, + 15,0,7,0,7,0,7,0,7,0,6,0,6,2,126,6, + 199,252,207,248,120,240,16,17,34,17,0,3,199,227,255,255, + 62,124,120,30,112,14,224,7,224,7,192,3,192,3,192,3, + 224,7,224,7,112,14,120,30,62,124,255,255,199,227,17,23, + 69,17,0,0,254,31,128,120,7,0,56,6,0,60,4,0, + 28,12,0,30,8,0,14,24,0,15,16,0,7,48,0,7, + 160,0,3,224,0,3,192,0,63,254,0,1,192,0,1,192, + 0,1,192,0,63,254,0,1,192,0,1,192,0,1,192,0, + 1,192,0,1,192,0,7,240,0,2,23,23,7,2,0,192, + 192,192,192,192,192,192,192,192,0,0,0,0,0,192,192,192, + 192,192,192,192,192,192,12,28,56,17,2,251,31,128,49,192, + 97,192,97,192,113,128,56,0,60,0,30,0,15,0,63,128, + 99,192,193,224,192,224,192,112,224,48,112,48,120,48,60,96, + 31,192,15,0,7,128,3,192,1,192,24,224,56,96,56,96, + 56,192,31,128,9,3,6,11,1,18,227,128,227,128,227,128, + 22,23,69,25,1,0,0,252,0,3,255,0,14,1,192,24, + 0,96,48,0,48,96,0,24,96,127,24,193,199,12,195,131, + 12,195,1,12,199,0,12,199,0,12,199,0,12,199,0,12, + 199,128,12,67,129,24,97,230,24,96,124,48,48,0,48,24, + 0,96,14,1,192,7,255,0,1,252,0,9,13,26,9,0, + 10,60,0,78,0,198,0,198,0,30,0,102,0,198,0,198, + 0,239,128,123,0,0,0,0,0,255,0,13,13,26,17,1, + 1,2,8,6,24,12,48,24,96,56,224,113,192,227,128,113, + 192,56,224,24,96,12,48,6,24,2,8,16,9,18,18,1, + 4,255,255,255,255,0,3,0,3,0,3,0,3,0,3,0, + 3,0,3,8,2,2,11,1,7,255,255,22,23,69,25,1, + 0,0,254,0,3,255,0,14,1,192,24,0,96,48,0,48, + 35,252,24,96,199,24,192,195,12,192,195,12,192,195,12,192, + 198,12,192,248,12,192,220,12,192,204,12,192,206,12,64,198, + 8,96,199,24,35,227,208,48,0,48,24,0,96,14,1,192, + 3,255,0,0,252,0,10,2,4,11,0,18,255,192,255,192, + 10,10,20,13,1,13,30,0,63,0,97,128,192,192,192,192, + 192,192,192,192,97,128,63,0,30,0,16,20,40,19,1,0, + 1,128,1,128,1,128,1,128,1,128,1,128,1,128,255,255, + 255,255,1,128,1,128,1,128,1,128,1,128,1,128,1,128, + 1,128,0,0,255,255,255,255,9,14,28,10,0,9,60,0, + 78,0,135,0,3,0,3,0,7,0,6,0,12,0,24,0, + 16,0,32,0,64,128,255,0,254,0,9,14,28,10,0,9, + 62,0,71,0,131,0,3,0,3,0,6,0,60,0,7,0, + 3,128,1,128,1,128,193,128,227,0,126,0,7,6,6,11, + 3,17,6,14,28,48,96,192,16,22,44,17,0,249,248,124, + 56,28,56,28,56,28,56,28,56,28,56,28,56,28,56,28, + 56,28,56,28,56,60,60,124,63,223,47,152,32,0,112,0, + 112,0,112,0,112,0,112,0,32,0,13,29,58,15,1,250, + 7,248,30,32,62,32,126,32,126,32,254,32,254,32,254,32, + 254,32,126,32,126,32,62,32,30,32,14,32,2,32,2,32, + 2,32,2,32,2,32,2,32,2,32,2,32,2,32,2,32, + 2,32,2,32,2,32,2,32,2,32,4,4,4,8,2,7, + 96,240,240,96,6,7,7,11,2,249,32,96,120,28,12,28, + 248,6,14,14,10,2,9,48,240,48,48,48,48,48,48,48, + 48,48,48,48,252,9,13,26,10,0,10,62,0,99,0,195, + 128,193,128,193,128,193,128,193,128,225,128,99,0,62,0,0, + 0,0,0,255,128,13,13,26,16,2,1,130,0,195,0,97, + 128,48,192,56,224,28,112,14,56,28,112,56,224,48,192,97, + 128,195,0,130,0,22,23,69,25,2,0,48,0,96,240,0, + 96,48,0,192,48,1,192,48,1,128,48,3,0,48,3,0, + 48,6,0,48,14,0,48,12,16,48,24,48,48,24,112,48, + 48,112,252,96,240,0,97,176,0,193,48,1,194,48,1,134, + 48,3,12,48,3,31,252,6,0,48,12,0,48,12,0,48, + 23,23,69,25,1,0,48,0,192,240,0,192,48,1,128,48, + 3,128,48,3,0,48,6,0,48,6,0,48,12,0,48,28, + 0,48,24,240,48,49,56,48,50,28,48,96,12,252,224,12, + 0,192,28,1,128,24,3,128,48,3,0,96,6,0,64,6, + 0,128,12,1,2,24,3,252,24,3,248,24,23,69,25,0, + 0,62,0,24,71,0,24,131,0,48,3,0,112,3,0,96, + 6,0,192,60,0,192,7,1,128,3,131,128,1,131,4,1, + 134,12,193,134,28,227,12,28,126,24,60,0,24,108,0,48, + 76,0,112,140,0,97,140,0,195,12,0,199,255,1,128,12, + 3,0,12,3,0,12,11,22,44,14,1,249,6,0,15,0, + 15,0,6,0,0,0,2,0,2,0,6,0,4,0,12,0, + 24,0,56,0,48,0,112,0,112,0,224,192,224,224,224,224, + 112,96,112,96,57,192,31,0,22,30,90,24,1,0,6,0, + 0,7,0,0,3,128,0,0,192,0,0,96,0,0,48,0, + 0,0,0,0,48,0,0,48,0,0,112,0,0,120,0,0, + 120,0,0,252,0,0,220,0,0,156,0,1,142,0,1,14, + 0,3,15,0,3,7,0,2,7,0,6,7,128,6,3,128, + 15,255,192,12,3,192,24,1,192,24,1,224,48,1,224,48, + 0,240,112,0,240,252,3,252,22,30,90,24,1,0,0,1, + 128,0,3,128,0,7,0,0,12,0,0,24,0,0,48,0, + 0,0,0,0,48,0,0,48,0,0,112,0,0,120,0,0, + 120,0,0,252,0,0,220,0,0,156,0,1,142,0,1,14, + 0,3,15,0,3,7,0,2,7,0,6,7,128,6,3,128, + 15,255,192,12,3,192,24,1,192,24,1,224,48,1,224,48, + 0,240,112,0,240,252,3,252,22,30,90,24,1,0,0,48, + 0,0,120,0,0,252,0,1,206,0,3,3,0,2,1,0, + 0,0,0,0,48,0,0,48,0,0,112,0,0,120,0,0, + 120,0,0,252,0,0,220,0,0,156,0,1,142,0,1,14, + 0,3,15,0,3,7,0,2,7,0,6,7,128,6,3,128, + 15,255,192,12,3,192,24,1,192,24,1,224,48,1,224,48, + 0,240,112,0,240,252,3,252,22,28,84,24,1,0,0,224, + 128,1,249,128,3,63,0,2,14,0,0,0,0,0,48,0, + 0,48,0,0,112,0,0,120,0,0,120,0,0,252,0,0, + 220,0,0,156,0,1,142,0,1,14,0,3,15,0,3,7, + 0,2,7,0,6,7,128,6,3,128,15,255,192,12,3,192, + 24,1,192,24,1,224,48,1,224,48,0,240,112,0,240,252, + 3,252,22,28,84,24,1,0,1,199,0,1,199,0,1,199, + 0,0,0,0,0,0,0,0,48,0,0,48,0,0,112,0, + 0,120,0,0,120,0,0,252,0,0,220,0,0,156,0,1, + 142,0,1,14,0,3,15,0,3,7,0,2,7,0,6,7, + 128,6,3,128,15,255,192,12,3,192,24,1,192,24,1,224, + 48,1,224,48,0,240,112,0,240,252,3,252,22,30,90,24, + 1,0,0,112,0,0,248,0,1,140,0,1,4,0,1,140, + 0,0,248,0,0,112,0,0,0,0,0,48,0,0,48,0, + 0,120,0,0,120,0,0,252,0,0,220,0,0,156,0,1, + 142,0,1,14,0,3,15,0,3,7,0,2,7,0,6,7, + 128,6,3,128,15,255,192,12,3,192,24,1,192,24,1,224, + 48,1,224,48,0,240,112,0,240,252,3,252,28,23,92,30, + 1,0,0,255,255,224,0,31,129,224,0,31,0,96,0,55, + 0,32,0,55,0,32,0,103,0,0,0,103,0,0,0,71, + 0,128,0,199,0,128,0,199,1,128,1,135,3,128,1,135, + 255,128,3,7,3,128,3,7,1,128,7,255,0,128,6,7, + 0,128,12,7,0,0,12,7,0,16,24,7,0,16,24,7, + 0,48,48,7,0,96,48,15,129,224,254,63,255,224,20,30, + 90,22,1,249,1,255,16,7,131,240,14,0,240,28,0,112, + 56,0,48,56,0,48,112,0,16,112,0,16,240,0,0,240, + 0,0,240,0,0,240,0,0,240,0,0,240,0,0,240,0, + 0,112,0,0,112,0,0,56,0,0,56,0,16,28,0,48, + 14,0,96,7,131,192,1,255,0,0,64,0,0,192,0,0, + 240,0,0,56,0,0,24,0,0,56,0,1,240,0,19,30, + 90,20,1,0,3,0,0,3,128,0,1,192,0,0,96,0, + 0,48,0,0,24,0,0,0,0,255,255,192,62,3,192,28, + 0,192,28,0,64,28,0,64,28,0,0,28,0,0,28,0, + 0,28,1,0,28,1,0,28,3,0,31,255,0,28,3,0, + 28,1,0,28,1,0,28,0,0,28,0,0,28,0,32,28, + 0,32,28,0,96,28,0,192,62,3,192,255,255,192,19,30, + 90,20,1,0,0,6,0,0,14,0,0,28,0,0,48,0, + 0,96,0,0,192,0,0,0,0,255,255,192,62,3,192,28, + 0,192,28,0,64,28,0,64,28,0,0,28,0,0,28,0, + 0,28,1,0,28,1,0,28,3,0,31,255,0,28,3,0, + 28,1,0,28,1,0,28,0,0,28,0,0,28,0,32,28, + 0,32,28,0,96,28,0,192,62,3,192,255,255,192,19,30, + 90,20,1,0,0,48,0,0,120,0,0,252,0,1,206,0, + 3,3,0,2,1,0,0,0,0,255,255,192,62,3,192,28, + 0,192,28,0,64,28,0,64,28,0,0,28,0,0,28,0, + 0,28,1,0,28,1,0,28,3,0,31,255,0,28,3,0, + 28,1,0,28,1,0,28,0,0,28,0,0,28,0,32,28, + 0,32,28,0,96,28,0,192,62,3,192,255,255,192,19,28, + 84,20,1,0,3,142,0,3,142,0,3,142,0,0,0,0, + 0,0,0,255,255,192,62,3,192,28,0,192,28,0,64,28, + 0,64,28,0,0,28,0,0,28,0,0,28,1,0,28,1, + 0,28,3,0,31,255,0,28,3,0,28,1,0,28,1,0, + 28,0,0,28,0,0,28,0,32,28,0,32,28,0,96,28, + 0,192,62,3,192,255,255,192,9,30,60,11,1,0,96,0, + 112,0,56,0,12,0,6,0,3,0,0,0,255,128,62,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,62,0,255,128,9,30,60,11,1,0, + 1,128,3,128,7,0,12,0,24,0,48,0,0,0,255,128, + 62,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,62,0,255,128,10,30,60,11, + 1,0,12,0,30,0,63,0,115,128,192,192,128,64,0,0, + 255,128,62,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,62,0,255,128,9,28, + 56,11,1,0,227,128,227,128,227,128,0,0,0,0,255,128, + 62,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,62,0,255,128,22,23,69,24, + 1,0,255,254,0,62,7,128,28,1,192,28,0,224,28,0, + 112,28,0,112,28,0,56,28,0,56,28,0,60,28,0,60, + 28,0,60,255,192,60,255,192,60,28,0,60,28,0,60,28, + 0,56,28,0,56,28,0,112,28,0,112,28,0,224,28,1, + 192,62,7,128,255,254,0,22,29,87,24,1,0,0,224,128, + 1,249,128,3,63,0,2,14,0,0,0,0,0,0,0,248, + 1,252,60,0,112,30,0,32,31,0,32,31,0,32,23,128, + 32,19,192,32,19,192,32,17,224,32,16,240,32,16,248,32, + 16,120,32,16,60,32,16,30,32,16,31,32,16,15,32,16, + 7,160,16,3,224,16,1,224,16,1,224,16,0,224,56,0, + 96,254,0,32,22,30,90,24,1,0,3,0,0,3,128,0, + 1,192,0,0,96,0,0,48,0,0,24,0,0,0,0,1, + 254,0,7,135,128,14,1,192,28,0,224,56,0,112,56,0, + 112,112,0,56,112,0,56,240,0,60,240,0,60,240,0,60, + 240,0,60,240,0,60,240,0,60,240,0,60,112,0,56,112, + 0,56,56,0,112,56,0,112,28,0,224,14,1,192,7,135, + 128,1,254,0,22,30,90,24,1,0,0,1,128,0,3,128, + 0,7,0,0,12,0,0,24,0,0,48,0,0,0,0,1, + 254,0,7,135,128,14,1,192,28,0,224,56,0,112,56,0, + 112,112,0,56,112,0,56,240,0,60,240,0,60,240,0,60, + 240,0,60,240,0,60,240,0,60,240,0,60,112,0,56,112, + 0,56,56,0,112,56,0,112,28,0,224,14,1,192,7,135, + 128,1,254,0,22,30,90,24,1,0,0,48,0,0,120,0, + 0,252,0,1,206,0,3,3,0,2,1,0,0,0,0,1, + 254,0,7,135,128,14,1,192,28,0,224,56,0,112,56,0, + 112,112,0,56,112,0,56,240,0,60,240,0,60,240,0,60, + 240,0,60,240,0,60,240,0,60,240,0,60,112,0,56,112, + 0,56,56,0,112,56,0,112,28,0,224,14,1,192,7,135, + 128,1,254,0,22,28,84,24,1,0,0,224,128,1,249,128, + 3,63,0,2,14,0,0,0,0,1,254,0,7,135,128,14, + 1,192,28,0,224,56,0,112,56,0,112,112,0,56,112,0, + 56,240,0,60,240,0,60,240,0,60,240,0,60,240,0,60, + 240,0,60,240,0,60,112,0,56,112,0,56,56,0,112,56, + 0,112,28,0,224,14,1,192,7,135,128,1,254,0,22,28, + 84,24,1,0,1,199,0,1,199,0,1,199,0,0,0,0, + 0,0,0,1,254,0,7,135,128,14,1,192,28,0,224,56, + 0,112,56,0,112,112,0,56,112,0,56,240,0,60,240,0, + 60,240,0,60,240,0,60,240,0,60,240,0,60,240,0,60, + 112,0,56,112,0,56,56,0,112,56,0,112,28,0,224,14, + 1,192,7,135,128,1,254,0,16,16,32,19,1,0,64,2, + 224,7,112,14,56,28,28,56,14,112,7,224,3,192,3,192, + 7,224,14,112,28,56,56,28,112,14,224,7,64,2,22,27, + 81,24,1,254,0,0,16,0,0,48,1,254,96,7,135,192, + 14,1,192,28,1,224,56,3,112,56,2,112,112,6,56,112, + 12,56,240,8,60,240,24,60,240,48,60,240,96,60,240,64, + 60,240,192,60,240,128,60,113,128,56,115,0,56,58,0,112, + 62,0,112,28,0,224,30,1,192,55,135,128,33,254,0,96, + 0,0,64,0,0,22,30,90,24,1,0,0,192,0,0,224, + 0,0,112,0,0,24,0,0,12,0,0,6,0,0,0,0, + 255,129,252,62,0,112,28,0,32,28,0,32,28,0,32,28, + 0,32,28,0,32,28,0,32,28,0,32,28,0,32,28,0, + 32,28,0,32,28,0,32,28,0,32,28,0,32,28,0,32, + 28,0,32,28,0,96,30,0,96,14,0,64,15,0,192,7, + 195,128,1,254,0,22,30,90,24,1,0,0,1,128,0,3, + 128,0,7,0,0,12,0,0,24,0,0,48,0,0,0,0, + 255,129,252,62,0,112,28,0,32,28,0,32,28,0,32,28, + 0,32,28,0,32,28,0,32,28,0,32,28,0,32,28,0, + 32,28,0,32,28,0,32,28,0,32,28,0,32,28,0,32, + 28,0,32,28,0,96,30,0,96,14,0,64,15,0,192,7, + 195,128,1,254,0,22,30,90,24,1,0,0,24,0,0,60, + 0,0,126,0,0,231,0,1,129,128,1,0,128,0,0,0, + 255,129,252,62,0,112,28,0,32,28,0,32,28,0,32,28, + 0,32,28,0,32,28,0,32,28,0,32,28,0,32,28,0, + 32,28,0,32,28,0,32,28,0,32,28,0,32,28,0,32, + 28,0,32,28,0,96,30,0,96,14,0,64,15,0,192,7, + 195,128,1,254,0,22,28,84,24,1,0,1,199,0,1,199, + 0,1,199,0,0,0,0,0,0,0,255,129,252,62,0,112, + 28,0,32,28,0,32,28,0,32,28,0,32,28,0,32,28, + 0,32,28,0,32,28,0,32,28,0,32,28,0,32,28,0, + 32,28,0,32,28,0,32,28,0,32,28,0,32,28,0,96, + 30,0,96,14,0,64,15,0,192,7,195,128,1,254,0,22, + 30,90,24,1,0,0,0,192,0,1,192,0,3,128,0,6, + 0,0,12,0,0,24,0,0,0,0,255,192,252,63,0,56, + 30,0,48,15,0,96,15,128,192,7,128,128,3,193,128,3, + 195,0,1,227,0,0,246,0,0,252,0,0,124,0,0,56, + 0,0,56,0,0,56,0,0,56,0,0,56,0,0,56,0, + 0,56,0,0,56,0,0,56,0,0,124,0,1,255,0,18, + 23,69,19,1,0,255,128,0,62,0,0,28,0,0,28,0, + 0,28,0,0,31,252,0,28,31,0,28,7,128,28,3,128, + 28,3,192,28,1,192,28,1,192,28,1,192,28,3,192,28, + 3,128,28,7,128,28,31,0,31,252,0,28,0,0,28,0, + 0,28,0,0,62,0,0,255,128,0,15,23,46,17,1,0, + 7,192,12,112,24,56,24,56,56,56,56,56,56,56,56,56, + 56,48,56,96,57,192,56,120,56,28,56,30,56,14,56,14, + 56,14,56,14,56,14,59,12,59,156,59,152,249,240,13,23, + 46,15,1,0,24,0,28,0,14,0,3,0,1,128,0,192, + 0,0,0,0,31,128,49,192,112,224,112,224,96,224,3,224, + 14,224,24,224,48,224,96,224,224,224,225,224,242,232,126,248, + 60,112,13,23,46,15,1,0,0,192,1,192,3,128,6,0, + 12,0,24,0,0,0,0,0,31,128,49,192,112,224,112,224, + 96,224,3,224,14,224,24,224,48,224,96,224,224,224,225,224, + 242,232,126,248,60,112,13,23,46,15,1,0,6,0,15,0, + 31,128,57,192,96,96,64,32,0,0,0,0,31,128,49,192, + 112,224,112,224,96,224,3,224,14,224,24,224,48,224,96,224, + 224,224,225,224,242,232,126,248,60,112,13,21,42,15,1,0, + 28,16,62,48,99,224,65,192,0,0,0,0,31,128,49,192, + 112,224,112,224,96,224,3,224,14,224,24,224,48,224,96,224, + 224,224,225,224,242,232,126,248,60,112,13,21,42,15,1,0, + 56,224,56,224,56,224,0,0,0,0,0,0,31,128,49,192, + 112,224,112,224,96,224,3,224,14,224,24,224,48,224,96,224, + 224,224,225,224,242,232,126,248,60,112,13,23,46,15,1,0, + 7,0,15,128,24,192,16,64,24,192,15,128,7,0,0,0, + 31,128,49,192,112,224,112,224,96,224,3,224,14,224,24,224, + 48,224,96,224,224,224,225,224,242,232,126,248,60,112,19,15, + 45,22,1,0,31,159,0,49,249,192,112,224,192,112,224,224, + 96,224,224,3,255,224,14,224,0,24,224,0,48,224,0,96, + 224,0,224,224,32,225,240,96,243,120,192,126,63,128,60,31, + 0,12,22,44,15,1,249,15,128,56,192,112,224,96,224,224, + 96,192,0,192,0,192,0,192,0,224,0,224,16,112,48,124, + 96,63,192,15,0,4,0,12,0,15,0,3,128,1,128,3, + 128,31,0,12,23,46,15,1,0,48,0,56,0,28,0,6, + 0,3,0,1,128,0,0,0,0,15,128,57,192,96,224,96, + 112,192,112,255,240,192,0,192,0,192,0,224,0,224,16,112, + 48,124,96,63,192,15,0,12,23,46,15,1,0,1,128,3, + 128,7,0,12,0,24,0,48,0,0,0,0,0,15,128,57, + 192,96,224,96,112,192,112,255,240,192,0,192,0,192,0,224, + 0,224,16,112,48,124,96,63,192,15,0,12,23,46,15,1, + 0,6,0,15,0,31,128,57,192,96,96,64,32,0,0,0, + 0,15,128,57,192,96,224,96,112,192,112,255,240,192,0,192, + 0,192,0,224,0,224,16,112,48,124,96,63,192,15,0,12, + 21,42,15,1,0,56,224,56,224,56,224,0,0,0,0,0, + 0,15,128,57,192,96,224,96,112,192,112,255,240,192,0,192, + 0,192,0,224,0,224,16,112,48,124,96,63,192,15,0,7, + 23,23,9,1,0,192,224,112,24,12,6,0,0,24,248,56, + 56,56,56,56,56,56,56,56,56,56,56,254,7,23,23,9, + 1,0,6,14,28,48,96,192,0,0,24,248,56,56,56,56, + 56,56,56,56,56,56,56,56,254,10,23,46,9,0,0,12, + 0,30,0,63,0,115,128,192,192,128,64,0,0,0,0,12, + 0,124,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,127,0,9,21,42, + 9,0,0,227,128,227,128,227,128,0,0,0,0,0,0,12, + 0,124,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,127,0,14,23,46, + 17,1,0,16,0,56,0,28,112,15,240,15,0,127,128,49, + 192,0,224,7,240,24,240,48,120,112,56,96,60,224,28,224, + 28,224,28,224,28,224,28,112,24,112,56,56,48,28,96,7, + 128,16,21,42,16,0,0,14,8,31,24,49,240,32,224,0, + 0,0,0,24,240,251,248,62,60,60,28,56,28,56,28,56, + 28,56,28,56,28,56,28,56,28,56,28,56,28,56,28,254, + 127,14,23,46,16,1,0,24,0,28,0,14,0,3,0,1, + 128,0,192,0,0,0,0,7,128,24,224,48,112,112,56,96, + 56,224,28,224,28,224,28,224,28,224,28,112,24,112,56,56, + 48,28,96,7,128,14,23,46,16,1,0,0,192,1,192,3, + 128,6,0,12,0,24,0,0,0,0,0,7,128,24,224,48, + 112,112,56,96,56,224,28,224,28,224,28,224,28,224,28,112, + 24,112,56,56,48,28,96,7,128,14,23,46,16,1,0,3, + 0,7,128,15,192,28,224,48,48,32,16,0,0,0,0,7, + 128,24,224,48,112,112,56,96,56,224,28,224,28,224,28,224, + 28,224,28,112,24,112,56,56,48,28,96,7,128,14,21,42, + 16,1,0,28,16,62,48,99,224,65,192,0,0,0,0,7, + 128,24,224,48,112,112,56,96,56,224,28,224,28,224,28,224, + 28,224,28,112,24,112,56,56,48,28,96,7,128,14,21,42, + 16,1,0,56,224,56,224,56,224,0,0,0,0,0,0,7, + 128,24,224,48,112,112,56,96,56,224,28,224,28,224,28,224, + 28,224,28,112,24,112,56,56,48,28,96,7,128,16,17,34, + 19,1,0,1,128,3,192,3,192,1,128,0,0,0,0,0, + 0,255,255,255,255,0,0,0,0,0,0,0,0,1,128,3, + 192,3,192,1,128,14,21,42,17,1,253,0,24,0,16,0, + 48,7,160,24,224,48,240,112,184,97,184,225,28,225,28,227, + 28,226,28,230,28,116,24,116,56,60,48,28,96,31,128,48, + 0,32,0,96,0,16,23,46,17,0,0,12,0,14,0,7, + 0,1,128,0,192,0,96,0,0,0,0,248,124,56,28,56, + 28,56,28,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,56,60,60,124,31,223,15,152,16,23,46,17,0,0,0, + 96,0,224,1,192,3,0,6,0,12,0,0,0,0,0,248, + 124,56,28,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,56,28,56,28,56,60,60,124,31,223,15,152,16,23,46, + 17,0,0,1,128,3,192,7,224,14,112,24,24,16,8,0, + 0,0,0,248,124,56,28,56,28,56,28,56,28,56,28,56, + 28,56,28,56,28,56,28,56,28,56,60,60,124,31,223,15, + 152,16,21,42,17,0,0,28,112,28,112,28,112,0,0,0, + 0,0,0,248,124,56,28,56,28,56,28,56,28,56,28,56, + 28,56,28,56,28,56,28,56,28,56,60,60,124,31,223,15, + 152,15,30,60,17,0,249,0,24,0,56,0,112,0,192,1, + 128,3,0,0,0,0,0,254,30,120,12,56,12,60,8,28, + 24,30,24,14,16,14,48,7,32,7,32,3,224,3,192,1, + 192,1,128,1,128,1,128,1,0,3,0,2,0,62,0,124, + 0,56,0,15,30,60,17,0,249,24,0,248,0,56,0,56, + 0,56,0,56,0,56,0,56,0,57,240,59,248,62,124,60, + 28,56,30,56,14,56,14,56,14,56,14,56,14,56,12,56, + 28,60,24,62,48,59,224,56,0,56,0,56,0,56,0,56, + 0,56,0,255,0,15,28,56,17,1,249,28,112,28,112,28, + 112,0,0,0,0,0,0,254,30,120,12,56,12,60,8,28, + 24,30,24,14,16,14,48,7,32,7,32,3,224,3,192,1, + 192,1,128,1,128,1,0,1,0,3,0,2,0,62,0,124, + 0,56,0}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--34-240-100-100-P-170-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 0, '1' Height: 23 + Calculated Max Values w=16 h=26 x= 4 y=10 dx=19 dy= 0 ascent=23 len=52 + Font Bounding box w=38 h=48 x=-5 y=-11 + Calculated Min Values x= 0 y=-3 dx= 0 dy= 0 + Pure Font ascent =23 descent= 0 + X Font ascent =23 descent= 0 + Max Font ascent =23 descent=-3 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR24n[696] U8G_SECTION(".progmem.u8g_font_timR24n") = { + 0,38,48,251,245,23,0,0,0,0,42,57,0,23,253,23, + 0,12,13,26,17,2,10,6,0,15,0,6,0,198,48,246, + 240,118,224,15,0,118,224,246,240,198,48,6,0,15,0,6, + 0,16,16,32,19,1,1,1,128,1,128,1,128,1,128,1, + 128,1,128,1,128,255,255,255,255,1,128,1,128,1,128,1, + 128,1,128,1,128,1,128,4,7,7,8,2,253,96,240,240, + 112,16,32,64,8,2,2,11,1,7,255,255,4,4,4,8, + 2,0,96,240,240,96,10,26,52,9,0,253,0,192,0,192, + 1,128,1,128,3,128,3,0,3,0,3,0,6,0,6,0, + 6,0,14,0,12,0,12,0,28,0,24,0,24,0,24,0, + 48,0,48,0,48,0,112,0,96,0,96,0,192,0,192,0, + 14,23,46,16,1,0,7,128,28,224,56,112,48,48,112,56, + 112,56,96,24,224,28,224,28,224,28,224,28,224,28,224,28, + 224,28,224,28,224,28,224,24,112,56,112,56,48,48,56,112, + 28,224,7,128,9,23,46,16,4,0,12,0,28,0,124,0, + 220,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,62,0,255,128,15,23,46,16,0,0,7,224, + 15,240,28,248,48,60,32,60,96,28,64,28,0,28,0,28, + 0,24,0,56,0,48,0,96,0,96,0,192,1,128,3,0, + 6,0,12,2,24,6,63,252,127,248,255,248,12,23,46,16, + 2,0,15,128,63,192,97,224,192,224,128,224,0,224,0,192, + 0,192,1,128,3,0,7,192,31,224,1,240,0,112,0,112, + 0,48,0,48,0,48,0,112,0,96,224,192,243,128,127,0, + 14,23,46,16,1,0,0,96,0,224,0,224,1,224,1,96, + 3,96,6,96,4,96,12,96,24,96,16,96,48,96,96,96, + 64,96,255,252,255,252,255,252,0,96,0,96,0,96,0,96, + 0,96,0,96,13,23,46,16,1,0,15,248,31,240,31,224, + 16,0,48,0,32,0,126,0,127,128,127,192,7,224,1,224, + 0,240,0,112,0,112,0,48,0,48,0,48,0,48,0,96, + 0,96,224,192,243,128,126,0,14,23,46,16,1,0,0,120, + 1,192,3,128,15,0,30,0,28,0,56,0,120,0,112,0, + 115,192,247,240,248,120,224,56,224,60,224,28,224,28,224,28, + 224,28,112,28,112,24,56,56,28,96,7,192,14,23,46,16, + 1,0,63,252,127,252,96,24,192,24,128,56,0,48,0,48, + 0,48,0,96,0,96,0,96,0,224,0,192,0,192,1,192, + 1,128,1,128,1,128,3,0,3,0,3,0,7,0,6,0, + 13,23,46,16,2,0,31,128,56,224,112,112,224,48,224,48, + 224,48,224,112,240,96,124,192,63,0,31,128,15,192,27,224, + 113,240,96,240,224,120,192,120,192,56,192,56,224,56,96,112, + 112,224,31,192,14,23,46,16,1,0,7,128,24,224,48,112, + 112,56,96,56,224,28,224,28,224,28,224,28,224,28,240,28, + 112,28,120,60,62,252,15,184,0,56,0,112,0,112,0,224, + 1,192,3,128,15,0,120,0}; +/* + Fontname: -Adobe-Times-Medium-R-Normal--34-240-100-100-P-170-ISO10646-1 + Copyright: Copyright (c) 1984, 1987 Adobe Systems Incorporated. All Rights Reserved. Copyright (c) 1988, 1991 Digital Equipment Corporation. All Rights Reserved. + Capital A Height: 23, '1' Height: 23 + Calculated Max Values w=31 h=30 x= 4 y=17 dx=32 dy= 0 ascent=25 len=112 + Font Bounding box w=38 h=48 x=-5 y=-11 + Calculated Min Values x=-2 y=-7 dx= 0 dy= 0 + Pure Font ascent =23 descent=-7 + X Font ascent =23 descent=-7 + Max Font ascent =25 descent=-7 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_timR24r[4764] U8G_SECTION(".progmem.u8g_font_timR24r") = { + 0,38,48,251,245,23,5,140,13,213,32,127,249,25,249,23, + 249,0,0,0,8,0,1,4,23,23,11,3,0,96,240,240, + 240,240,240,96,96,96,96,96,96,96,96,96,96,96,0,0, + 96,240,240,96,9,7,14,14,2,16,227,128,227,128,227,128, + 227,128,65,0,65,0,65,0,16,23,46,17,0,0,6,24, + 6,24,6,24,6,24,6,24,6,24,6,24,6,24,127,255, + 127,255,12,48,12,48,12,48,12,48,255,254,255,254,24,96, + 24,96,24,96,24,96,24,96,24,96,24,96,13,28,56,16, + 2,253,2,0,2,0,15,192,58,112,50,56,98,24,98,8, + 98,8,114,0,122,0,62,0,63,0,31,128,7,192,3,224, + 2,240,2,112,2,56,2,56,130,24,130,24,194,56,226,48, + 114,96,31,192,2,0,2,0,2,0,23,23,69,27,2,0, + 15,0,64,29,131,192,56,252,128,112,65,128,112,67,0,224, + 66,0,224,70,0,224,196,0,192,140,0,193,136,0,193,24, + 120,102,16,236,60,49,198,0,99,130,0,67,130,0,199,2, + 0,135,2,1,135,6,1,6,4,3,6,12,2,6,8,6, + 3,48,4,1,224,23,23,69,26,2,0,0,248,0,1,140, + 0,3,14,0,3,6,0,7,6,0,7,6,0,7,12,0, + 7,140,0,3,152,0,3,241,252,3,192,112,7,192,96,29, + 224,64,56,240,192,112,112,128,96,121,128,224,63,0,224,30, + 0,224,15,0,240,31,130,120,51,252,127,225,248,31,128,240, + 3,8,8,6,1,15,224,224,224,224,64,64,64,64,8,28, + 28,11,2,251,3,6,12,24,56,48,112,112,96,224,224,224, + 224,224,224,224,224,224,224,96,112,112,48,56,24,12,6,3, + 8,28,28,11,1,251,192,96,48,24,28,12,14,14,6,7, + 7,7,7,7,7,7,7,7,7,6,14,14,12,28,24,48, + 96,192,12,13,26,17,2,10,6,0,15,0,6,0,198,48, + 246,240,118,224,15,0,118,224,246,240,198,48,6,0,15,0, + 6,0,16,16,32,19,1,1,1,128,1,128,1,128,1,128, + 1,128,1,128,1,128,255,255,255,255,1,128,1,128,1,128, + 1,128,1,128,1,128,1,128,4,7,7,8,2,253,96,240, + 240,112,16,32,64,8,2,2,11,1,7,255,255,4,4,4, + 8,2,0,96,240,240,96,10,26,52,9,0,253,0,192,0, + 192,1,128,1,128,3,128,3,0,3,0,3,0,6,0,6, + 0,6,0,14,0,12,0,12,0,28,0,24,0,24,0,24, + 0,48,0,48,0,48,0,112,0,96,0,96,0,192,0,192, + 0,14,23,46,16,1,0,7,128,28,224,56,112,48,48,112, + 56,112,56,96,24,224,28,224,28,224,28,224,28,224,28,224, + 28,224,28,224,28,224,28,224,24,112,56,112,56,48,48,56, + 112,28,224,7,128,9,23,46,16,4,0,12,0,28,0,124, + 0,220,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,62,0,255,128,15,23,46,16,0,0,7, + 224,15,240,28,248,48,60,32,60,96,28,64,28,0,28,0, + 28,0,24,0,56,0,48,0,96,0,96,0,192,1,128,3, + 0,6,0,12,2,24,6,63,252,127,248,255,248,12,23,46, + 16,2,0,15,128,63,192,97,224,192,224,128,224,0,224,0, + 192,0,192,1,128,3,0,7,192,31,224,1,240,0,112,0, + 112,0,48,0,48,0,48,0,112,0,96,224,192,243,128,127, + 0,14,23,46,16,1,0,0,96,0,224,0,224,1,224,1, + 96,3,96,6,96,4,96,12,96,24,96,16,96,48,96,96, + 96,64,96,255,252,255,252,255,252,0,96,0,96,0,96,0, + 96,0,96,0,96,13,23,46,16,1,0,15,248,31,240,31, + 224,16,0,48,0,32,0,126,0,127,128,127,192,7,224,1, + 224,0,240,0,112,0,112,0,48,0,48,0,48,0,48,0, + 96,0,96,224,192,243,128,126,0,14,23,46,16,1,0,0, + 120,1,192,3,128,15,0,30,0,28,0,56,0,120,0,112, + 0,115,192,247,240,248,120,224,56,224,60,224,28,224,28,224, + 28,224,28,112,28,112,24,56,56,28,96,7,192,14,23,46, + 16,1,0,63,252,127,252,96,24,192,24,128,56,0,48,0, + 48,0,48,0,96,0,96,0,96,0,224,0,192,0,192,1, + 192,1,128,1,128,1,128,3,0,3,0,3,0,7,0,6, + 0,13,23,46,16,2,0,31,128,56,224,112,112,224,48,224, + 48,224,48,224,112,240,96,124,192,63,0,31,128,15,192,27, + 224,113,240,96,240,224,120,192,120,192,56,192,56,224,56,96, + 112,112,224,31,192,14,23,46,16,1,0,7,128,24,224,48, + 112,112,56,96,56,224,28,224,28,224,28,224,28,224,28,240, + 28,112,28,120,60,62,252,15,184,0,56,0,112,0,112,0, + 224,1,192,3,128,15,0,120,0,4,15,15,9,2,0,96, + 240,240,96,0,0,0,0,0,0,0,96,240,240,96,4,18, + 18,9,2,253,96,240,240,96,0,0,0,0,0,0,0,96, + 240,240,112,16,32,64,16,18,36,19,1,0,0,1,0,7, + 0,31,0,124,1,240,7,192,31,0,124,0,240,0,240,0, + 124,0,31,0,7,192,1,240,0,124,0,31,0,7,0,1, + 16,9,18,19,1,4,255,255,255,255,0,0,0,0,0,0, + 0,0,0,0,255,255,255,255,16,18,36,19,2,0,128,0, + 224,0,248,0,62,0,15,128,3,224,0,248,0,62,0,15, + 0,15,0,62,0,248,3,224,15,128,62,0,248,0,224,0, + 128,0,11,23,46,14,2,0,31,0,115,128,193,192,193,192, + 224,224,224,224,96,224,1,192,1,192,1,128,3,128,3,0, + 6,0,4,0,12,0,8,0,8,0,0,0,0,0,12,0, + 30,0,30,0,12,0,27,28,112,31,2,251,0,31,240,0, + 0,248,60,0,1,224,6,0,7,128,3,0,14,0,1,128, + 28,0,0,192,28,0,0,192,56,7,140,96,112,31,92,96, + 112,28,124,32,112,56,56,32,224,112,56,32,224,112,48,32, + 224,112,112,32,224,224,112,96,224,224,112,64,224,224,224,192, + 224,224,224,128,112,225,225,128,112,119,115,0,112,60,62,0, + 56,0,0,0,24,0,0,0,28,0,0,0,14,0,0,0, + 7,128,6,0,1,240,60,0,0,127,240,0,22,23,69,24, + 1,0,0,48,0,0,48,0,0,112,0,0,120,0,0,120, + 0,0,252,0,0,220,0,0,156,0,1,142,0,1,14,0, + 3,15,0,3,7,0,2,7,0,6,7,128,6,3,128,15, + 255,192,12,3,192,24,1,192,24,1,224,48,1,224,48,0, + 240,112,0,240,252,3,252,20,23,69,22,1,0,255,254,0, + 62,15,128,28,3,192,28,1,192,28,1,224,28,0,224,28, + 0,224,28,1,224,28,1,192,28,3,192,28,15,128,31,254, + 0,28,7,128,28,1,224,28,0,224,28,0,240,28,0,112, + 28,0,112,28,0,240,28,0,224,28,1,224,62,7,192,255, + 255,0,20,23,69,22,1,0,1,255,16,7,131,240,14,0, + 240,28,0,112,56,0,48,56,0,48,112,0,16,112,0,16, + 240,0,0,240,0,0,240,0,0,240,0,0,240,0,0,240, + 0,0,240,0,0,112,0,0,112,0,0,56,0,0,56,0, + 16,28,0,48,14,0,96,7,131,192,1,255,0,22,23,69, + 24,1,0,255,254,0,62,7,128,28,1,192,28,0,224,28, + 0,112,28,0,112,28,0,56,28,0,56,28,0,60,28,0, + 60,28,0,60,28,0,60,28,0,60,28,0,60,28,0,60, + 28,0,56,28,0,56,28,0,112,28,0,112,28,0,224,28, + 1,192,62,7,128,255,254,0,19,23,69,20,1,0,255,255, + 192,62,3,192,28,0,192,28,0,64,28,0,64,28,0,0, + 28,0,0,28,0,0,28,1,0,28,1,0,28,3,0,31, + 255,0,28,3,0,28,1,0,28,1,0,28,0,0,28,0, + 0,28,0,32,28,0,32,28,0,96,28,0,192,62,3,192, + 255,255,192,17,23,69,18,1,0,255,255,128,62,7,128,28, + 1,128,28,0,128,28,0,128,28,0,0,28,0,0,28,0, + 0,28,2,0,28,2,0,28,6,0,31,254,0,28,6,0, + 28,2,0,28,2,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,62,0,0,255,128,0,22,23, + 69,24,1,0,1,255,48,7,135,240,14,0,240,28,0,112, + 56,0,48,56,0,48,112,0,16,112,0,0,240,0,0,240, + 0,0,240,0,0,240,3,252,240,0,248,240,0,112,240,0, + 112,112,0,112,112,0,112,56,0,112,56,0,112,28,0,112, + 14,0,112,7,129,224,1,255,128,22,23,69,24,1,0,255, + 135,252,62,1,240,28,0,224,28,0,224,28,0,224,28,0, + 224,28,0,224,28,0,224,28,0,224,28,0,224,28,0,224, + 31,255,224,28,0,224,28,0,224,28,0,224,28,0,224,28, + 0,224,28,0,224,28,0,224,28,0,224,28,0,224,62,1, + 240,255,135,252,9,23,46,11,1,0,255,128,62,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,28,0,28,0,28,0,28,0,28,0,28,0, + 28,0,28,0,62,0,255,128,12,23,46,13,1,0,31,240, + 7,192,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,3,128,3,128,3,128,3,128,3,128,3,128, + 3,128,3,128,195,128,227,0,231,0,124,0,23,23,69,24, + 1,0,255,199,248,62,1,224,28,1,128,28,3,0,28,6, + 0,28,12,0,28,24,0,28,48,0,28,96,0,28,192,0, + 31,192,0,31,224,0,31,240,0,30,120,0,28,60,0,28, + 30,0,28,15,0,28,7,128,28,3,192,28,1,224,28,0, + 240,62,0,248,255,199,254,19,23,69,20,1,0,255,128,0, + 62,0,0,28,0,0,28,0,0,28,0,0,28,0,0,28, + 0,0,28,0,0,28,0,0,28,0,0,28,0,0,28,0, + 0,28,0,0,28,0,0,28,0,0,28,0,0,28,0,0, + 28,0,32,28,0,32,28,0,96,28,0,192,62,3,192,255, + 255,192,28,23,92,30,1,0,252,0,7,240,62,0,7,192, + 30,0,15,128,31,0,15,128,31,0,11,128,23,0,27,128, + 23,128,27,128,19,128,51,128,19,192,51,128,19,192,35,128, + 17,224,99,128,17,224,99,128,16,224,195,128,16,240,195,128, + 16,112,131,128,16,121,131,128,16,121,3,128,16,61,3,128, + 16,63,3,128,16,30,3,128,16,30,3,128,56,12,7,192, + 254,12,31,240,22,23,69,24,1,0,248,1,252,60,0,112, + 30,0,32,31,0,32,31,0,32,23,128,32,19,192,32,19, + 192,32,17,224,32,16,240,32,16,248,32,16,120,32,16,60, + 32,16,30,32,16,31,32,16,15,32,16,7,160,16,3,224, + 16,1,224,16,1,224,16,0,224,56,0,96,254,0,32,22, + 23,69,24,1,0,1,254,0,7,135,128,14,1,192,28,0, + 224,56,0,112,56,0,112,112,0,56,112,0,56,240,0,60, + 240,0,60,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,112,0,56,112,0,56,56,0,112,56,0,112,28,0, + 224,14,1,192,7,135,128,1,254,0,17,23,69,18,1,0, + 255,248,0,60,62,0,28,15,0,28,7,0,28,7,128,28, + 3,128,28,3,128,28,3,128,28,7,128,28,7,0,28,15, + 0,28,62,0,31,240,0,28,0,0,28,0,0,28,0,0, + 28,0,0,28,0,0,28,0,0,28,0,0,28,0,0,62, + 0,0,255,128,0,22,29,87,24,1,250,1,254,0,7,135, + 128,14,1,192,28,0,224,56,0,112,56,0,112,112,0,56, + 112,0,56,240,0,60,240,0,60,240,0,60,240,0,60,240, + 0,60,240,0,60,240,0,60,112,0,56,112,0,56,56,0, + 112,56,0,112,28,0,224,14,1,192,7,135,128,1,254,0, + 0,124,0,0,62,0,0,31,0,0,15,128,0,3,224,0, + 0,124,21,23,69,22,1,0,255,248,0,60,62,0,28,15, + 0,28,7,128,28,7,128,28,3,128,28,3,128,28,3,128, + 28,7,128,28,7,0,28,30,0,31,248,0,28,240,0,28, + 120,0,28,60,0,28,60,0,28,30,0,28,15,0,28,15, + 128,28,7,128,28,3,192,62,1,224,255,129,248,15,23,46, + 18,1,0,7,228,28,60,56,28,112,12,112,4,112,6,120, + 0,124,0,62,0,31,128,15,224,7,240,1,248,0,124,0, + 62,0,30,128,14,128,14,192,14,224,12,112,28,124,120,103, + 240,19,23,69,20,1,0,255,255,224,240,225,224,192,224,96, + 192,224,96,128,224,32,128,224,32,0,224,0,0,224,0,0, + 224,0,0,224,0,0,224,0,0,224,0,0,224,0,0,224, + 0,0,224,0,0,224,0,0,224,0,0,224,0,0,224,0, + 0,224,0,0,224,0,1,240,0,7,252,0,22,23,69,24, + 1,0,255,129,252,62,0,112,28,0,32,28,0,32,28,0, + 32,28,0,32,28,0,32,28,0,32,28,0,32,28,0,32, + 28,0,32,28,0,32,28,0,32,28,0,32,28,0,32,28, + 0,32,28,0,32,28,0,32,30,0,96,14,0,64,15,0, + 192,7,195,128,1,254,0,22,23,69,23,1,0,255,1,252, + 124,0,112,60,0,96,30,0,64,30,0,192,14,0,192,15, + 0,128,15,1,128,7,1,128,7,129,0,3,131,0,3,195, + 0,3,194,0,1,198,0,1,230,0,0,228,0,0,236,0, + 0,124,0,0,120,0,0,120,0,0,56,0,0,48,0,0, + 16,0,31,23,92,32,1,0,255,63,224,254,124,15,128,120, + 60,7,0,48,28,7,128,48,30,7,128,96,30,3,128,96, + 14,3,192,96,15,3,192,192,7,3,224,192,7,135,224,192, + 7,134,225,128,3,132,241,128,3,204,241,128,3,204,115,0, + 1,216,123,0,1,216,59,0,1,248,62,0,0,240,62,0, + 0,240,28,0,0,224,28,0,0,96,28,0,0,96,8,0, + 0,64,8,0,22,23,69,24,1,0,255,195,252,63,0,240, + 31,0,224,15,0,192,7,129,128,7,131,0,3,198,0,1, + 230,0,1,236,0,0,248,0,0,120,0,0,120,0,0,124, + 0,0,222,0,1,158,0,1,143,0,3,15,128,6,7,128, + 14,3,192,12,3,224,24,1,224,56,1,240,254,7,252,22, + 23,69,24,1,0,255,192,252,63,0,56,30,0,48,15,0, + 96,15,128,192,7,128,128,3,193,128,3,195,0,1,227,0, + 0,246,0,0,252,0,0,124,0,0,56,0,0,56,0,0, + 56,0,0,56,0,0,56,0,0,56,0,0,56,0,0,56, + 0,0,56,0,0,124,0,1,255,0,19,23,69,20,1,0, + 63,255,224,56,3,192,96,7,128,96,7,128,64,15,0,64, + 30,0,0,30,0,0,60,0,0,120,0,0,120,0,0,240, + 0,1,224,0,1,224,0,3,192,0,3,192,0,7,128,0, + 15,0,0,15,0,32,30,0,32,60,0,96,60,0,96,120, + 1,192,255,255,192,7,28,28,11,3,251,254,240,224,224,224, + 224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224, + 224,224,224,224,224,240,254,13,23,46,9,254,0,192,0,224, + 0,96,0,112,0,48,0,56,0,24,0,28,0,12,0,14, + 0,6,0,7,0,3,0,3,128,1,128,1,192,0,192,0, + 224,0,96,0,112,0,48,0,56,0,24,7,28,28,11,1, + 251,254,30,14,14,14,14,14,14,14,14,14,14,14,14,14, + 14,14,14,14,14,14,14,14,14,14,14,30,254,13,13,26, + 16,1,10,7,0,7,0,15,128,13,128,24,192,24,192,48, + 96,48,96,112,112,96,48,224,56,192,24,192,24,17,2,6, + 17,0,251,255,255,128,255,255,128,7,6,6,11,1,17,192, + 224,112,24,12,6,13,15,30,15,1,0,31,128,49,192,112, + 224,112,224,96,224,3,224,14,224,24,224,48,224,96,224,224, + 224,225,224,242,232,126,248,60,112,15,23,46,16,0,0,24, + 0,248,0,56,0,56,0,56,0,56,0,56,0,56,0,57, + 240,59,248,60,124,56,28,56,30,56,14,56,14,56,14,56, + 14,56,14,56,12,56,28,56,24,60,112,15,224,12,15,30, + 15,1,0,15,128,56,192,112,224,96,224,224,96,192,0,192, + 0,192,0,192,0,224,0,224,16,112,48,124,96,63,192,31, + 0,15,23,46,16,1,0,0,24,0,248,0,56,0,56,0, + 56,0,56,0,56,0,56,15,184,24,248,48,120,112,56,96, + 56,224,56,224,56,224,56,224,56,224,56,240,56,112,120,120, + 248,63,190,15,48,12,15,30,15,1,0,15,128,57,192,96, + 224,96,112,192,112,255,240,192,0,192,0,192,0,224,0,224, + 16,112,48,124,96,63,192,15,0,12,23,46,11,0,0,3, + 224,6,112,12,112,12,48,28,0,28,0,28,0,28,0,255, + 192,28,0,28,0,28,0,28,0,28,0,28,0,28,0,28, + 0,28,0,28,0,28,0,28,0,62,0,255,128,14,22,44, + 16,1,249,15,192,24,252,48,124,112,48,112,48,112,48,112, + 48,56,112,28,224,15,128,24,0,48,0,120,0,127,224,63, + 248,31,252,96,12,192,12,192,28,240,56,127,224,31,128,16, + 23,46,16,0,0,24,0,248,0,56,0,56,0,56,0,56, + 0,56,0,56,0,57,240,59,248,62,60,60,28,56,28,56, + 28,56,28,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,254,127,7,23,23,9,1,0,56,56,56,0,0,0,0, + 0,56,248,56,56,56,56,56,56,56,56,56,56,56,56,254, + 8,30,30,9,255,249,7,7,7,0,0,0,0,0,3,31, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, + 6,198,236,120,16,23,46,16,0,0,24,0,248,0,56,0, + 56,0,56,0,56,0,56,0,56,0,56,254,56,112,56,96, + 56,192,57,128,63,0,62,0,63,0,59,128,57,192,56,224, + 56,240,56,120,56,60,254,127,7,23,23,9,1,0,24,248, + 56,56,56,56,56,56,56,56,56,56,56,56,56,56,56,56, + 56,56,56,56,254,25,15,60,26,0,0,24,240,120,0,251, + 249,252,0,62,63,30,0,60,30,14,0,56,28,14,0,56, + 28,14,0,56,28,14,0,56,28,14,0,56,28,14,0,56, + 28,14,0,56,28,14,0,56,28,14,0,56,28,14,0,56, + 28,14,0,254,127,63,128,16,15,30,16,0,0,24,240,251, + 248,60,60,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,56,28,56,28,56,28,56,28,254,127,14,15,30,16,1, + 0,7,128,24,224,48,112,112,56,96,56,224,28,224,28,224, + 28,224,28,224,28,112,24,112,56,56,48,28,96,7,128,15, + 22,44,17,0,249,25,224,251,248,60,124,56,28,56,30,56, + 14,56,14,56,14,56,14,56,14,56,12,56,28,60,24,62, + 112,59,192,56,0,56,0,56,0,56,0,56,0,56,0,255, + 0,15,22,44,17,1,249,15,200,28,120,48,56,112,56,96, + 56,224,56,224,56,224,56,224,56,224,56,240,56,112,120,120, + 248,63,184,31,56,0,56,0,56,0,56,0,56,0,56,0, + 56,1,254,10,15,30,11,1,0,25,128,251,192,63,192,60, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,0,56,0,254,0,10,15,30,13,1,0,62,128,99, + 128,193,128,192,128,224,128,240,0,124,0,63,0,15,128,3, + 192,129,192,128,192,192,192,225,128,191,0,9,19,38,9,0, + 0,8,0,8,0,24,0,56,0,255,0,56,0,56,0,56, + 0,56,0,56,0,56,0,56,0,56,0,56,0,56,0,56, + 0,56,128,63,0,28,0,16,15,30,17,0,0,248,124,56, + 28,56,28,56,28,56,28,56,28,56,28,56,28,56,28,56, + 28,56,28,56,60,60,92,31,223,15,140,15,15,30,17,1, + 0,254,62,120,12,56,8,60,24,28,24,28,16,14,48,14, + 32,7,96,7,64,7,192,3,192,3,128,1,128,1,0,21, + 15,45,24,1,0,253,252,120,112,112,48,112,112,48,56,48, + 32,56,56,96,24,56,64,28,120,64,28,92,192,12,204,128, + 14,143,128,15,143,0,7,7,0,7,7,0,3,6,0,2, + 2,0,14,15,30,17,1,0,252,248,56,96,60,192,28,128, + 30,128,15,0,7,0,7,128,15,128,11,192,25,224,16,224, + 48,112,96,120,240,252,15,22,44,17,1,249,254,30,120,12, + 56,12,60,8,28,24,30,24,14,16,14,48,7,32,7,32, + 3,224,3,192,1,192,1,128,1,128,1,0,1,0,3,0, + 2,0,62,0,124,0,56,0,13,15,30,15,1,0,127,240, + 96,240,64,224,65,224,3,192,3,128,7,128,7,0,14,0, + 30,0,28,8,56,8,120,8,112,24,255,240,8,28,28,16, + 4,251,15,28,56,56,56,56,56,56,56,56,56,56,56,48, + 224,48,56,56,56,56,56,56,56,56,56,24,28,15,2,23, + 23,7,2,0,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,192,8,28,28,16,4, + 251,240,56,28,28,28,28,28,28,28,28,28,28,28,12,7, + 12,28,28,28,28,28,28,28,28,28,24,56,240,16,4,8, + 18,1,7,62,3,127,135,225,254,192,124,255}; +/* + Fontname: -FreeType-Teachers Pet Sans Serif Bold-Medium-R-Normal--8-80-72-72-P-61-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w=11 h=13 x= 1 y=10 dx=12 dy= 0 ascent=13 len=18 + Font Bounding box w=11 h=17 x= 0 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-4 + X Font ascent = 9 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_tpssb[2656] U8G_SECTION(".progmem.u8g_font_tpssb") = { + 0,11,17,0,252,9,1,205,3,159,32,255,252,13,252,9, + 252,0,0,0,4,0,0,2,9,9,4,1,0,192,192,192, + 192,192,192,0,192,192,5,2,2,7,1,7,216,216,5,5, + 5,7,1,0,80,248,80,248,80,7,9,9,9,1,0,124, + 146,144,124,18,18,146,146,124,8,9,9,10,1,0,198,204, + 12,24,24,24,48,51,99,9,9,18,11,1,0,124,0,198, + 0,198,0,124,0,198,0,198,0,198,0,199,128,62,0,2, + 2,2,4,1,7,192,192,5,9,9,7,1,0,24,48,96, + 96,224,96,96,48,24,5,9,9,7,1,0,192,96,48,48, + 56,48,48,96,192,5,7,7,7,1,1,32,168,112,32,112, + 168,32,6,6,6,8,1,1,48,48,252,252,48,48,3,2, + 2,5,1,255,96,192,5,2,2,7,1,3,248,248,2,1, + 1,4,1,0,192,6,9,9,8,1,0,12,24,24,48,48, + 48,96,96,192,6,9,9,7,0,0,120,204,204,204,204,204, + 204,204,120,6,9,9,7,0,0,48,112,240,48,48,48,48, + 48,252,6,9,9,7,0,0,120,204,204,12,24,48,96,192, + 252,6,9,9,7,0,0,120,204,12,56,12,12,12,204,120, + 6,9,9,7,0,0,12,204,204,252,12,12,12,12,12,6, + 9,9,7,0,0,252,192,192,248,12,12,12,204,120,6,9, + 9,7,0,0,120,204,192,248,204,204,204,204,120,6,9,9, + 7,0,0,252,12,24,48,96,96,96,96,96,6,9,9,7, + 0,0,120,204,204,120,204,204,204,204,120,6,9,9,7,0, + 0,120,204,204,204,124,12,12,204,120,2,4,4,4,1,0, + 192,0,0,192,3,5,5,5,1,255,96,0,0,96,192,6, + 9,9,8,1,0,12,24,48,96,192,96,48,24,12,6,5, + 5,8,1,1,252,252,0,252,252,6,9,9,8,1,0,192, + 96,48,24,12,24,48,96,192,6,9,9,8,1,0,120,204, + 12,24,48,48,0,48,48,10,8,16,12,1,0,63,0,64, + 128,204,192,210,192,210,128,205,0,64,64,63,128,6,9,9, + 7,0,0,120,204,204,252,204,204,204,204,204,6,9,9,7, + 0,0,248,204,204,248,204,204,204,204,248,6,9,9,7,0, + 0,120,204,192,192,192,192,192,204,120,6,9,9,7,0,0, + 248,204,204,204,204,204,204,204,248,6,9,9,7,0,0,252, + 192,192,248,192,192,192,192,252,6,9,9,7,0,0,252,192, + 192,248,192,192,192,192,192,6,9,9,7,0,0,120,204,192, + 220,204,204,204,204,120,6,9,9,7,0,0,204,204,204,252, + 204,204,204,204,204,2,9,9,3,0,0,192,192,192,192,192, + 192,192,192,192,6,9,9,7,0,0,12,12,12,12,12,12, + 12,204,120,6,9,9,7,0,0,204,204,216,240,224,240,216, + 204,204,6,9,9,7,0,0,192,192,192,192,192,192,192,192, + 252,7,9,9,9,1,0,130,238,254,146,130,130,130,130,130, + 6,9,9,7,0,0,204,236,252,220,204,204,204,204,204,6, + 9,9,7,0,0,120,204,204,204,204,204,204,204,120,6,9, + 9,7,0,0,248,204,204,248,192,192,192,192,192,7,9,9, + 8,0,0,124,130,130,130,130,146,146,146,124,6,9,9,7, + 0,0,248,204,204,248,204,204,204,204,204,6,9,9,7,0, + 0,120,204,192,120,12,12,204,204,120,6,9,9,7,0,0, + 252,48,48,48,48,48,48,48,48,6,9,9,7,0,0,204, + 204,204,204,204,204,204,204,120,7,9,9,8,0,0,198,198, + 198,108,108,108,56,56,56,9,9,18,11,1,0,128,128,128, + 128,128,128,105,128,105,128,105,128,127,0,127,0,127,0,6, + 9,9,7,0,0,204,204,120,48,48,120,204,204,204,6,9, + 9,7,0,0,204,204,120,48,48,48,48,48,48,6,9,9, + 7,0,0,252,12,12,24,48,96,192,192,252,4,9,9,6, + 1,0,240,192,192,192,192,192,192,192,240,6,7,7,8,1, + 0,192,96,96,48,24,24,12,4,9,9,6,1,0,240,48, + 48,48,48,48,48,48,240,4,2,2,6,1,10,96,144,6, + 2,2,8,1,0,252,252,2,2,2,4,1,10,64,128,6, + 6,6,7,0,0,120,204,204,204,204,124,6,9,9,7,0, + 0,192,192,192,248,204,204,204,204,120,6,6,6,7,0,0, + 120,204,192,192,204,120,6,9,9,7,0,0,12,12,12,124, + 204,204,204,204,124,6,6,6,7,0,0,120,204,252,192,204, + 120,6,9,9,7,0,0,56,108,96,240,96,96,96,96,96, + 6,10,10,7,0,252,120,204,204,204,204,124,12,12,204,120, + 6,9,9,7,0,0,192,192,192,248,236,204,204,204,204,2, + 9,9,3,0,0,192,192,0,192,192,192,192,192,192,3,13, + 13,4,0,252,96,96,0,96,96,96,96,96,96,96,96,96, + 192,6,9,9,7,0,0,192,192,192,216,240,224,240,216,204, + 2,9,9,3,0,0,192,192,192,192,192,192,192,192,192,7, + 6,6,9,1,0,254,146,146,146,146,146,6,6,6,7,0, + 0,248,236,204,204,204,204,6,6,6,7,0,0,120,204,204, + 204,204,120,6,10,10,7,0,252,120,204,204,204,204,248,192, + 192,192,192,7,10,10,7,0,252,124,204,204,204,204,124,12, + 30,12,12,5,6,6,6,0,0,248,240,192,192,192,192,6, + 6,6,7,0,0,120,224,120,12,204,120,5,9,9,6,0, + 0,96,96,96,248,96,96,96,96,96,6,6,6,7,0,0, + 204,204,204,204,204,120,6,6,6,7,0,0,204,204,120,120, + 48,48,9,6,12,10,0,0,128,128,128,128,107,0,107,0, + 127,0,127,0,6,6,6,7,0,0,204,120,48,48,120,204, + 6,10,10,7,0,252,204,204,204,204,204,124,12,12,204,120, + 6,6,6,7,0,0,124,204,24,48,96,252,6,9,9,8, + 1,0,12,24,48,48,240,48,48,24,12,2,9,9,4,1, + 0,192,192,192,192,192,192,192,192,192,6,9,9,8,1,0, + 192,96,48,48,28,48,48,96,192,5,2,2,6,0,10,232, + 184,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,2,9,9,3,0,0,192,192,0,192,192,192,192, + 192,192,5,7,7,7,1,0,32,112,168,160,168,112,32,6, + 9,9,7,0,0,192,192,248,192,192,192,204,204,252,5,5, + 5,7,1,1,136,112,80,112,136,6,9,9,8,1,0,204, + 204,120,48,48,120,48,120,48,2,9,9,4,1,0,192,192, + 192,0,0,0,192,192,192,8,10,10,10,1,0,124,192,126, + 195,126,3,3,3,195,62,5,1,1,7,1,3,216,9,7, + 14,11,1,0,62,0,65,0,221,128,209,128,221,128,65,0, + 62,0,7,8,8,9,1,0,120,204,204,204,204,126,0,254, + 7,3,3,9,1,2,102,204,102,5,3,3,7,1,1,248, + 248,24,255,9,7,14,11,1,0,62,0,65,0,221,128,209, + 128,209,128,65,0,62,0,5,1,1,6,0,6,248,3,3, + 3,5,1,2,224,160,224,5,7,7,7,1,0,32,32,248, + 32,32,0,248,255,255,255,255,255,255,255,255,255,7,3,3, + 9,1,2,204,102,204,255,255,255,255,6,12,12,7,0,0, + 96,48,0,120,204,204,252,204,204,204,204,204,6,12,12,7, + 0,0,24,48,0,120,204,204,252,204,204,204,204,204,6,12, + 12,7,0,0,48,72,0,120,204,204,252,204,204,204,204,204, + 6,12,12,7,0,0,232,184,0,120,204,204,252,204,204,204, + 204,204,6,11,11,7,0,0,72,0,120,204,204,252,204,204, + 204,204,204,6,13,13,7,0,0,48,72,48,0,120,204,204, + 252,204,204,204,204,204,11,9,18,12,0,0,127,224,206,0, + 206,0,255,192,206,0,206,0,206,0,206,0,207,224,6,11, + 11,7,0,254,120,204,192,192,192,192,192,204,120,48,96,6, + 12,12,7,0,0,96,48,0,252,192,192,248,192,192,192,192, + 252,6,12,12,7,0,0,24,48,0,252,192,192,248,192,192, + 192,192,252,6,12,12,7,0,0,48,72,0,252,192,192,248, + 192,192,192,192,252,6,11,11,7,0,0,204,0,252,192,192, + 248,192,192,192,192,252,3,12,12,4,0,0,192,96,0,96, + 96,96,96,96,96,96,96,96,3,12,12,4,0,0,96,192, + 0,192,192,192,192,192,192,192,192,192,4,12,12,5,0,0, + 96,144,0,96,96,96,96,96,96,96,96,96,6,11,11,7, + 0,0,204,0,48,48,48,48,48,48,48,48,48,6,9,9, + 7,0,0,248,204,204,236,204,204,204,204,248,6,12,12,7, + 0,0,232,184,0,204,236,252,220,204,204,204,204,204,6,12, + 12,7,0,0,96,48,0,120,204,204,204,204,204,204,204,120, + 6,12,12,7,0,0,24,48,0,120,204,204,204,204,204,204, + 204,120,6,12,12,7,0,0,48,72,0,120,204,204,204,204, + 204,204,204,120,6,12,12,7,0,0,232,184,0,120,204,204, + 204,204,204,204,204,120,6,11,11,7,0,0,204,0,120,204, + 204,204,204,204,204,204,120,3,3,3,6,1,2,160,64,160, + 6,9,9,7,0,0,120,204,220,220,236,236,236,204,120,6, + 12,12,7,0,0,96,48,0,204,204,204,204,204,204,204,204, + 120,6,12,12,7,0,0,24,48,0,204,204,204,204,204,204, + 204,204,120,6,12,12,7,0,0,48,72,0,204,204,204,204, + 204,204,204,204,120,6,11,11,7,0,0,204,0,204,204,204, + 204,204,204,204,204,120,6,12,12,7,0,0,24,48,0,204, + 204,120,48,48,48,48,48,48,7,9,9,8,0,0,192,192, + 252,198,252,192,192,192,192,7,11,11,8,0,254,252,198,220, + 198,198,198,220,192,192,192,192,6,9,9,7,0,0,96,48, + 0,120,204,204,204,204,124,6,9,9,7,0,0,24,48,0, + 120,204,204,204,204,124,6,9,9,7,0,0,48,72,0,120, + 204,204,204,204,124,6,9,9,7,0,0,232,184,0,120,204, + 204,204,204,124,6,8,8,7,0,0,204,0,120,204,204,204, + 204,124,6,10,10,7,0,0,48,72,48,0,120,204,204,204, + 204,124,9,6,12,11,1,0,127,128,136,128,143,128,136,0, + 136,128,127,128,6,8,8,7,0,254,120,204,192,192,204,120, + 48,96,6,9,9,7,0,0,96,48,0,120,204,252,192,204, + 120,6,9,9,7,0,0,24,48,0,120,204,252,192,204,120, + 6,9,9,7,0,0,48,72,0,120,204,252,192,204,120,6, + 8,8,7,0,0,204,0,120,204,252,192,204,120,3,12,12, + 4,0,0,192,96,0,96,96,96,96,96,96,96,96,96,3, + 12,12,4,0,0,96,192,0,192,192,192,192,192,192,192,192, + 192,4,12,12,5,0,0,96,144,0,96,96,96,96,96,96, + 96,96,96,6,11,11,7,0,0,204,0,48,48,48,48,48, + 48,48,48,48,6,9,9,7,0,0,12,60,12,124,204,204, + 204,204,124,6,9,9,7,0,0,232,184,0,248,236,204,204, + 204,204,6,9,9,7,0,0,96,48,0,120,204,204,204,204, + 120,6,9,9,7,0,0,24,48,0,120,204,204,204,204,120, + 6,9,9,7,0,0,48,72,0,120,204,204,204,204,120,6, + 9,9,7,0,0,232,184,0,120,204,204,204,204,120,6,8, + 8,7,0,0,204,0,120,204,204,204,204,120,6,6,6,7, + 0,1,48,0,252,252,0,48,6,6,6,7,0,0,120,220, + 220,236,236,120,6,9,9,7,0,0,96,48,0,204,204,204, + 204,204,120,6,9,9,7,0,0,24,48,0,204,204,204,204, + 204,120,6,9,9,7,0,0,48,72,0,204,204,204,204,204, + 120,6,8,8,7,0,0,204,0,204,204,204,204,204,120,6, + 13,13,7,0,252,24,48,0,204,204,204,204,204,124,12,12, + 204,120,6,6,6,7,0,0,192,248,204,248,192,192,6,12, + 12,7,0,252,204,0,204,204,204,204,204,124,12,12,204,120 + }; +/* + Fontname: -FreeType-Teachers Pet Sans Serif Bold-Medium-R-Normal--8-80-72-72-P-61-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 0, '1' Height: 9 + Calculated Max Values w= 6 h= 9 x= 1 y= 3 dx= 8 dy= 0 ascent= 9 len= 9 + Font Bounding box w=11 h=17 x= 0 y=-4 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent = 9 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_tpssbn[230] U8G_SECTION(".progmem.u8g_font_tpssbn") = { + 0,11,17,0,252,9,0,0,0,0,42,57,0,9,255,9, + 0,5,7,7,7,1,1,32,168,112,32,112,168,32,6,6, + 6,8,1,1,48,48,252,252,48,48,3,2,2,5,1,255, + 96,192,5,2,2,7,1,3,248,248,2,1,1,4,1,0, + 192,6,9,9,8,1,0,12,24,24,48,48,48,96,96,192, + 6,9,9,7,0,0,120,204,204,204,204,204,204,204,120,6, + 9,9,7,0,0,48,112,240,48,48,48,48,48,252,6,9, + 9,7,0,0,120,204,204,12,24,48,96,192,252,6,9,9, + 7,0,0,120,204,12,56,12,12,12,204,120,6,9,9,7, + 0,0,12,204,204,252,12,12,12,12,12,6,9,9,7,0, + 0,252,192,192,248,12,12,12,204,120,6,9,9,7,0,0, + 120,204,192,248,204,204,204,204,120,6,9,9,7,0,0,252, + 12,24,48,96,96,96,96,96,6,9,9,7,0,0,120,204, + 204,120,204,204,204,204,120,6,9,9,7,0,0,120,204,204, + 204,124,12,12,204,120}; +/* + Fontname: -FreeType-Teachers Pet Sans Serif Bold-Medium-R-Normal--8-80-72-72-P-61-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w=10 h=13 x= 1 y=10 dx=12 dy= 0 ascent=12 len=18 + Font Bounding box w=11 h=17 x= 0 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-4 + X Font ascent = 9 descent=-4 + Max Font ascent =12 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_tpssbr[1346] U8G_SECTION(".progmem.u8g_font_tpssbr") = { + 0,11,17,0,252,9,1,205,3,159,32,127,252,12,252,9, + 252,0,0,0,4,0,0,2,9,9,4,1,0,192,192,192, + 192,192,192,0,192,192,5,2,2,7,1,7,216,216,5,5, + 5,7,1,0,80,248,80,248,80,7,9,9,9,1,0,124, + 146,144,124,18,18,146,146,124,8,9,9,10,1,0,198,204, + 12,24,24,24,48,51,99,9,9,18,11,1,0,124,0,198, + 0,198,0,124,0,198,0,198,0,198,0,199,128,62,0,2, + 2,2,4,1,7,192,192,5,9,9,7,1,0,24,48,96, + 96,224,96,96,48,24,5,9,9,7,1,0,192,96,48,48, + 56,48,48,96,192,5,7,7,7,1,1,32,168,112,32,112, + 168,32,6,6,6,8,1,1,48,48,252,252,48,48,3,2, + 2,5,1,255,96,192,5,2,2,7,1,3,248,248,2,1, + 1,4,1,0,192,6,9,9,8,1,0,12,24,24,48,48, + 48,96,96,192,6,9,9,7,0,0,120,204,204,204,204,204, + 204,204,120,6,9,9,7,0,0,48,112,240,48,48,48,48, + 48,252,6,9,9,7,0,0,120,204,204,12,24,48,96,192, + 252,6,9,9,7,0,0,120,204,12,56,12,12,12,204,120, + 6,9,9,7,0,0,12,204,204,252,12,12,12,12,12,6, + 9,9,7,0,0,252,192,192,248,12,12,12,204,120,6,9, + 9,7,0,0,120,204,192,248,204,204,204,204,120,6,9,9, + 7,0,0,252,12,24,48,96,96,96,96,96,6,9,9,7, + 0,0,120,204,204,120,204,204,204,204,120,6,9,9,7,0, + 0,120,204,204,204,124,12,12,204,120,2,4,4,4,1,0, + 192,0,0,192,3,5,5,5,1,255,96,0,0,96,192,6, + 9,9,8,1,0,12,24,48,96,192,96,48,24,12,6,5, + 5,8,1,1,252,252,0,252,252,6,9,9,8,1,0,192, + 96,48,24,12,24,48,96,192,6,9,9,8,1,0,120,204, + 12,24,48,48,0,48,48,10,8,16,12,1,0,63,0,64, + 128,204,192,210,192,210,128,205,0,64,64,63,128,6,9,9, + 7,0,0,120,204,204,252,204,204,204,204,204,6,9,9,7, + 0,0,248,204,204,248,204,204,204,204,248,6,9,9,7,0, + 0,120,204,192,192,192,192,192,204,120,6,9,9,7,0,0, + 248,204,204,204,204,204,204,204,248,6,9,9,7,0,0,252, + 192,192,248,192,192,192,192,252,6,9,9,7,0,0,252,192, + 192,248,192,192,192,192,192,6,9,9,7,0,0,120,204,192, + 220,204,204,204,204,120,6,9,9,7,0,0,204,204,204,252, + 204,204,204,204,204,2,9,9,3,0,0,192,192,192,192,192, + 192,192,192,192,6,9,9,7,0,0,12,12,12,12,12,12, + 12,204,120,6,9,9,7,0,0,204,204,216,240,224,240,216, + 204,204,6,9,9,7,0,0,192,192,192,192,192,192,192,192, + 252,7,9,9,9,1,0,130,238,254,146,130,130,130,130,130, + 6,9,9,7,0,0,204,236,252,220,204,204,204,204,204,6, + 9,9,7,0,0,120,204,204,204,204,204,204,204,120,6,9, + 9,7,0,0,248,204,204,248,192,192,192,192,192,7,9,9, + 8,0,0,124,130,130,130,130,146,146,146,124,6,9,9,7, + 0,0,248,204,204,248,204,204,204,204,204,6,9,9,7,0, + 0,120,204,192,120,12,12,204,204,120,6,9,9,7,0,0, + 252,48,48,48,48,48,48,48,48,6,9,9,7,0,0,204, + 204,204,204,204,204,204,204,120,7,9,9,8,0,0,198,198, + 198,108,108,108,56,56,56,9,9,18,11,1,0,128,128,128, + 128,128,128,105,128,105,128,105,128,127,0,127,0,127,0,6, + 9,9,7,0,0,204,204,120,48,48,120,204,204,204,6,9, + 9,7,0,0,204,204,120,48,48,48,48,48,48,6,9,9, + 7,0,0,252,12,12,24,48,96,192,192,252,4,9,9,6, + 1,0,240,192,192,192,192,192,192,192,240,6,7,7,8,1, + 0,192,96,96,48,24,24,12,4,9,9,6,1,0,240,48, + 48,48,48,48,48,48,240,4,2,2,6,1,10,96,144,6, + 2,2,8,1,0,252,252,2,2,2,4,1,10,64,128,6, + 6,6,7,0,0,120,204,204,204,204,124,6,9,9,7,0, + 0,192,192,192,248,204,204,204,204,120,6,6,6,7,0,0, + 120,204,192,192,204,120,6,9,9,7,0,0,12,12,12,124, + 204,204,204,204,124,6,6,6,7,0,0,120,204,252,192,204, + 120,6,9,9,7,0,0,56,108,96,240,96,96,96,96,96, + 6,10,10,7,0,252,120,204,204,204,204,124,12,12,204,120, + 6,9,9,7,0,0,192,192,192,248,236,204,204,204,204,2, + 9,9,3,0,0,192,192,0,192,192,192,192,192,192,3,13, + 13,4,0,252,96,96,0,96,96,96,96,96,96,96,96,96, + 192,6,9,9,7,0,0,192,192,192,216,240,224,240,216,204, + 2,9,9,3,0,0,192,192,192,192,192,192,192,192,192,7, + 6,6,9,1,0,254,146,146,146,146,146,6,6,6,7,0, + 0,248,236,204,204,204,204,6,6,6,7,0,0,120,204,204, + 204,204,120,6,10,10,7,0,252,120,204,204,204,204,248,192, + 192,192,192,7,10,10,7,0,252,124,204,204,204,204,124,12, + 30,12,12,5,6,6,6,0,0,248,240,192,192,192,192,6, + 6,6,7,0,0,120,224,120,12,204,120,5,9,9,6,0, + 0,96,96,96,248,96,96,96,96,96,6,6,6,7,0,0, + 204,204,204,204,204,120,6,6,6,7,0,0,204,204,120,120, + 48,48,9,6,12,10,0,0,128,128,128,128,107,0,107,0, + 127,0,127,0,6,6,6,7,0,0,204,120,48,48,120,204, + 6,10,10,7,0,252,204,204,204,204,204,124,12,12,204,120, + 6,6,6,7,0,0,124,204,24,48,96,252,6,9,9,8, + 1,0,12,24,48,48,240,48,48,24,12,2,9,9,4,1, + 0,192,192,192,192,192,192,192,192,192,6,9,9,8,1,0, + 192,96,48,48,28,48,48,96,192,5,2,2,6,0,10,232, + 184,255}; +/* + Fontname: -FreeType-Teachers Pet Sans Serif-Medium-R-Normal--8-80-72-72-P-18-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 9 h=13 x= 1 y=10 dx=11 dy= 0 ascent=13 len=18 + Font Bounding box w=11 h=17 x=-1 y=-4 + Calculated Min Values x=-1 y=-4 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-4 + X Font ascent = 9 descent=-4 + Max Font ascent =13 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_tpss[2605] U8G_SECTION(".progmem.u8g_font_tpss") = { + 0,11,17,255,252,9,1,192,3,136,32,255,252,13,252,9, + 252,0,0,0,4,0,0,1,9,9,3,1,0,128,128,128, + 128,128,128,0,128,128,3,2,2,5,1,7,160,160,5,5, + 5,7,1,0,80,248,80,248,80,5,9,9,7,1,0,112, + 168,160,112,40,40,168,168,112,5,9,9,7,1,0,136,144, + 16,32,32,32,64,72,136,7,9,9,9,1,0,112,136,136, + 112,136,136,136,138,116,1,2,2,3,1,7,128,128,5,9, + 9,7,1,0,24,32,64,64,128,64,64,32,24,5,9,9, + 7,1,0,192,32,16,16,8,16,16,32,192,5,7,7,7, + 1,1,32,168,112,32,112,168,32,5,5,5,7,1,1,32, + 32,248,32,32,2,2,2,4,1,255,64,128,5,1,1,7, + 1,3,248,1,1,1,3,1,0,128,5,9,9,7,1,0, + 8,16,16,32,32,32,64,64,128,5,9,9,6,0,0,112, + 136,136,136,136,136,136,136,112,5,9,9,6,0,0,32,96, + 160,32,32,32,32,32,248,5,9,9,6,0,0,112,136,136, + 8,16,32,64,128,248,5,9,9,6,0,0,112,136,8,48, + 8,8,8,136,112,5,9,9,6,0,0,8,136,136,248,8, + 8,8,8,8,5,9,9,6,0,0,248,128,128,248,8,8, + 8,136,112,5,9,9,6,0,0,112,136,128,240,136,136,136, + 136,112,5,9,9,6,0,0,248,8,16,32,64,64,64,64, + 64,5,9,9,6,0,0,112,136,136,112,136,136,136,136,112, + 5,9,9,6,0,0,112,136,136,136,120,8,8,136,112,1, + 4,4,3,1,0,128,0,0,128,2,5,5,4,1,255,64, + 0,0,64,128,5,9,9,7,1,0,8,16,32,64,128,64, + 32,16,8,5,3,3,7,1,2,248,0,248,5,9,9,7, + 1,0,128,64,32,16,8,16,32,64,128,5,9,9,7,1, + 0,112,136,8,16,32,32,0,32,32,9,8,16,11,1,0, + 126,0,129,0,153,0,165,0,165,0,154,0,128,128,127,0, + 5,9,9,6,0,0,112,136,136,248,136,136,136,136,136,5, + 9,9,6,0,0,240,136,136,240,136,136,136,136,240,5,9, + 9,6,0,0,112,136,128,128,128,128,128,136,112,5,9,9, + 6,0,0,240,136,136,136,136,136,136,136,240,5,9,9,6, + 0,0,248,128,128,240,128,128,128,128,248,5,9,9,6,0, + 0,248,128,128,240,128,128,128,128,128,5,9,9,6,0,0, + 112,136,128,184,136,136,136,136,112,5,9,9,6,0,0,136, + 136,136,248,136,136,136,136,136,1,9,9,2,0,0,128,128, + 128,128,128,128,128,128,128,5,9,9,6,0,0,8,8,8, + 8,8,8,8,136,112,5,9,9,6,0,0,136,136,144,160, + 192,160,144,136,136,5,9,9,6,0,0,128,128,128,128,128, + 128,128,128,248,7,9,9,8,0,0,130,198,170,146,130,130, + 130,130,130,5,9,9,6,0,0,136,200,168,152,136,136,136, + 136,136,5,9,9,6,0,0,112,136,136,136,136,136,136,136, + 112,5,9,9,6,0,0,240,136,136,240,128,128,128,128,128, + 5,9,9,6,0,0,112,136,136,136,136,168,168,168,112,5, + 9,9,6,0,0,240,136,136,240,136,136,136,136,136,5,9, + 9,6,0,0,112,136,128,112,8,8,136,136,112,5,9,9, + 6,0,0,248,32,32,32,32,32,32,32,32,5,9,9,6, + 0,0,136,136,136,136,136,136,136,136,112,5,9,9,6,0, + 0,136,136,136,80,80,80,80,32,32,7,9,9,8,0,0, + 130,130,130,84,84,84,40,40,40,5,9,9,6,0,0,136, + 136,80,32,32,80,136,136,136,5,9,9,6,0,0,136,136, + 80,32,32,32,32,32,32,5,9,9,6,0,0,248,8,8, + 16,32,64,128,128,248,3,9,9,5,1,0,224,128,128,128, + 128,128,128,128,224,5,7,7,7,1,0,128,64,64,32,16, + 16,8,3,9,9,5,1,0,224,32,32,32,32,32,32,32, + 224,3,2,2,5,1,10,64,160,6,1,1,8,1,0,252, + 2,2,2,4,1,10,64,128,5,6,6,6,0,0,112,136, + 136,136,136,120,5,9,9,6,0,0,128,128,128,240,136,136, + 136,136,112,5,6,6,6,0,0,112,136,128,128,136,112,5, + 9,9,6,0,0,8,8,8,120,136,136,136,136,120,5,6, + 6,6,0,0,112,136,248,128,136,112,5,9,9,6,0,0, + 48,72,64,224,64,64,64,64,64,5,10,10,6,0,252,112, + 136,136,136,136,120,8,8,136,112,5,9,9,6,0,0,128, + 128,128,176,200,136,136,136,136,1,9,9,2,0,0,128,128, + 0,128,128,128,128,128,128,2,13,13,3,0,252,64,64,0, + 64,64,64,64,64,64,64,64,64,128,5,9,9,6,0,0, + 128,128,128,144,160,192,160,144,136,1,9,9,2,0,0,128, + 128,128,128,128,128,128,128,128,7,6,6,8,0,0,182,218, + 146,146,146,146,5,6,6,6,0,0,176,200,136,136,136,136, + 5,6,6,6,0,0,112,136,136,136,136,112,5,10,10,6, + 0,252,112,136,136,136,136,240,128,128,128,128,6,10,10,7, + 0,252,120,136,136,136,136,120,8,28,8,8,4,6,6,5, + 0,0,176,192,128,128,128,128,5,6,6,6,0,0,112,128, + 112,8,136,112,4,9,9,5,0,0,64,64,64,240,64,64, + 64,64,64,5,6,6,6,0,0,136,136,136,136,136,112,5, + 6,6,6,0,0,136,136,80,80,32,32,7,6,6,8,0, + 0,130,130,84,84,40,40,5,6,6,6,0,0,136,80,32, + 32,80,136,5,10,10,6,0,252,136,136,136,136,136,120,8, + 8,136,112,5,6,6,6,0,0,120,136,16,32,64,248,6, + 9,9,8,1,0,12,16,32,32,192,32,32,16,12,1,9, + 9,3,1,0,128,128,128,128,128,128,128,128,128,6,9,9, + 8,1,0,192,32,16,16,12,16,16,32,192,5,2,2,6, + 0,10,232,184,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,1,9,9,2,0,0,128,128,0,128, + 128,128,128,128,128,5,7,7,7,1,0,32,112,168,160,168, + 112,32,5,9,9,7,1,0,128,128,240,128,128,128,136,136, + 248,5,5,5,7,1,1,136,112,80,112,136,5,9,9,7, + 1,0,136,136,80,32,32,248,32,248,32,1,9,9,3,1, + 0,128,128,128,0,0,0,128,128,128,6,10,10,8,1,0, + 120,128,120,132,120,4,4,4,132,120,5,1,1,7,1,3, + 136,7,7,7,9,1,0,124,130,186,162,186,130,124,6,8, + 8,8,1,0,112,136,136,136,136,116,0,252,5,3,3,7, + 1,2,72,144,72,5,2,2,7,1,2,248,8,0,0,0, + 8,0,0,7,7,7,9,1,0,124,130,186,162,162,130,124, + 5,1,1,6,0,6,248,3,3,3,5,1,2,64,160,64, + 5,7,7,7,1,0,32,32,248,32,32,0,248,255,255,255, + 0,0,0,8,0,0,255,0,0,0,8,0,0,255,255,255, + 5,3,3,7,1,2,144,72,144,255,255,255,255,5,12,12, + 6,0,0,64,32,0,112,136,136,248,136,136,136,136,136,5, + 12,12,6,0,0,16,32,0,112,136,136,248,136,136,136,136, + 136,5,12,12,6,0,0,32,80,0,112,136,136,248,136,136, + 136,136,136,5,12,12,6,0,0,232,184,0,112,136,136,248, + 136,136,136,136,136,5,11,11,6,0,0,80,0,112,136,136, + 248,136,136,136,136,136,5,13,13,6,0,0,32,80,32,0, + 112,136,136,248,136,136,136,136,136,9,9,18,10,0,0,127, + 128,136,0,136,0,255,0,136,0,136,0,136,0,136,0,143, + 128,5,9,9,6,0,254,112,136,128,128,128,136,112,32,96, + 5,12,12,6,0,0,64,32,0,248,128,128,240,128,128,128, + 128,248,5,12,12,6,0,0,16,32,0,248,128,128,240,128, + 128,128,128,248,5,12,12,6,0,0,32,80,0,248,128,128, + 240,128,128,128,128,248,5,11,11,6,0,0,80,0,248,128, + 128,240,128,128,128,128,248,2,12,12,2,0,0,128,64,0, + 64,64,64,64,64,64,64,64,64,2,12,12,2,0,0,64, + 128,0,128,128,128,128,128,128,128,128,128,3,12,12,2,255, + 0,64,160,0,64,64,64,64,64,64,64,64,64,3,11,11, + 2,255,0,160,0,64,64,64,64,64,64,64,64,64,5,9, + 9,6,0,0,240,136,136,232,136,136,136,136,240,5,12,12, + 6,0,0,232,184,0,136,136,136,200,168,152,136,136,136,5, + 12,12,6,0,0,64,32,0,112,136,136,136,136,136,136,136, + 112,5,12,12,6,0,0,16,32,0,112,136,136,136,136,136, + 136,136,112,5,12,12,6,0,0,32,80,0,112,136,136,136, + 136,136,136,136,112,5,12,12,6,0,0,232,184,0,112,136, + 136,136,136,136,136,136,112,5,11,11,6,0,0,80,0,112, + 136,136,136,136,136,136,136,112,3,3,3,6,1,2,160,64, + 160,7,9,9,8,0,0,58,68,76,84,84,84,100,68,184, + 5,12,12,6,0,0,64,32,0,136,136,136,136,136,136,136, + 136,112,5,12,12,6,0,0,16,32,0,136,136,136,136,136, + 136,136,136,112,5,12,12,6,0,0,32,80,0,136,136,136, + 136,136,136,136,136,112,5,11,11,6,0,0,80,0,136,136, + 136,136,136,136,136,136,112,5,12,12,6,0,0,16,32,0, + 136,136,80,32,32,32,32,32,32,5,9,9,6,0,0,128, + 128,240,136,240,128,128,128,128,5,11,11,6,0,254,240,136, + 176,136,136,136,176,128,128,128,128,5,9,9,6,0,0,64, + 32,0,112,136,136,136,136,120,5,9,9,6,0,0,16,32, + 0,112,136,136,136,136,120,5,9,9,6,0,0,32,80,0, + 112,136,136,136,136,120,5,9,9,6,0,0,232,184,0,112, + 136,136,136,136,120,5,8,8,6,0,0,80,0,112,136,136, + 136,136,120,5,10,10,6,0,0,32,80,32,0,112,136,136, + 136,136,120,9,6,12,10,0,0,119,0,136,128,143,128,136, + 0,136,128,119,0,5,8,8,6,0,254,112,136,128,128,136, + 112,32,64,5,6,6,6,0,0,112,136,248,128,136,112,5, + 6,6,6,0,0,112,136,248,128,136,112,5,6,6,6,0, + 0,112,136,248,128,136,112,5,6,6,6,0,0,112,136,248, + 128,136,112,2,10,10,3,0,0,128,64,0,0,64,64,64, + 64,64,64,2,10,10,3,0,0,64,128,0,0,128,128,128, + 128,128,128,3,10,10,4,0,0,64,160,0,0,64,64,64, + 64,64,64,3,9,9,4,0,0,160,0,0,64,64,64,64, + 64,64,5,9,9,6,0,0,8,56,8,120,136,136,136,136, + 120,5,9,9,6,0,0,232,184,0,176,200,136,136,136,136, + 5,9,9,6,0,0,64,32,0,112,136,136,136,136,112,5, + 9,9,6,0,0,16,32,0,112,136,136,136,136,112,5,9, + 9,6,0,0,32,80,0,112,136,136,136,136,112,5,9,9, + 6,0,0,232,184,0,112,136,136,136,136,112,5,8,8,6, + 0,0,80,0,112,136,136,136,136,112,5,5,5,6,0,1, + 32,0,248,0,32,5,6,6,6,0,0,112,152,168,168,200, + 112,5,9,9,6,0,0,64,32,0,136,136,136,136,136,112, + 5,9,9,6,0,0,16,32,0,136,136,136,136,136,112,5, + 9,9,6,0,0,32,80,0,136,136,136,136,136,112,5,8, + 8,6,0,0,80,0,136,136,136,136,136,112,5,13,13,6, + 0,252,16,32,0,136,136,136,136,136,120,8,8,136,112,5, + 6,6,5,0,0,128,240,136,240,128,128,5,12,12,6,0, + 252,80,0,136,136,136,136,136,120,8,8,136,112}; +/* + Fontname: -FreeType-Teachers Pet Sans Serif-Medium-R-Normal--8-80-72-72-P-18-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 0, '1' Height: 9 + Calculated Max Values w= 5 h= 9 x= 1 y= 3 dx= 7 dy= 0 ascent= 9 len= 9 + Font Bounding box w=11 h=17 x=-1 y=-4 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 9 descent= 0 + X Font ascent = 9 descent= 0 + Max Font ascent = 9 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_tpssn[228] U8G_SECTION(".progmem.u8g_font_tpssn") = { + 0,11,17,255,252,9,0,0,0,0,42,57,0,9,255,9, + 0,5,7,7,7,1,1,32,168,112,32,112,168,32,5,5, + 5,7,1,1,32,32,248,32,32,2,2,2,4,1,255,64, + 128,5,1,1,7,1,3,248,1,1,1,3,1,0,128,5, + 9,9,7,1,0,8,16,16,32,32,32,64,64,128,5,9, + 9,6,0,0,112,136,136,136,136,136,136,136,112,5,9,9, + 6,0,0,32,96,160,32,32,32,32,32,248,5,9,9,6, + 0,0,112,136,136,8,16,32,64,128,248,5,9,9,6,0, + 0,112,136,8,48,8,8,8,136,112,5,9,9,6,0,0, + 8,136,136,248,8,8,8,8,8,5,9,9,6,0,0,248, + 128,128,248,8,8,8,136,112,5,9,9,6,0,0,112,136, + 128,240,136,136,136,136,112,5,9,9,6,0,0,248,8,16, + 32,64,64,64,64,64,5,9,9,6,0,0,112,136,136,112, + 136,136,136,136,112,5,9,9,6,0,0,112,136,136,136,120, + 8,8,136,112}; +/* + Fontname: -FreeType-Teachers Pet Sans Serif-Medium-R-Normal--8-80-72-72-P-18-ISO10646-1 + Copyright: www.orgdot.com + Capital A Height: 9, '1' Height: 9 + Calculated Max Values w= 9 h=13 x= 1 y=10 dx=11 dy= 0 ascent=12 len=16 + Font Bounding box w=11 h=17 x=-1 y=-4 + Calculated Min Values x= 0 y=-4 dx= 0 dy= 0 + Pure Font ascent = 9 descent=-4 + X Font ascent = 9 descent=-4 + Max Font ascent =12 descent=-4 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_tpssr[1317] U8G_SECTION(".progmem.u8g_font_tpssr") = { + 0,11,17,255,252,9,1,192,3,136,32,127,252,12,252,9, + 252,0,0,0,4,0,0,1,9,9,3,1,0,128,128,128, + 128,128,128,0,128,128,3,2,2,5,1,7,160,160,5,5, + 5,7,1,0,80,248,80,248,80,5,9,9,7,1,0,112, + 168,160,112,40,40,168,168,112,5,9,9,7,1,0,136,144, + 16,32,32,32,64,72,136,7,9,9,9,1,0,112,136,136, + 112,136,136,136,138,116,1,2,2,3,1,7,128,128,5,9, + 9,7,1,0,24,32,64,64,128,64,64,32,24,5,9,9, + 7,1,0,192,32,16,16,8,16,16,32,192,5,7,7,7, + 1,1,32,168,112,32,112,168,32,5,5,5,7,1,1,32, + 32,248,32,32,2,2,2,4,1,255,64,128,5,1,1,7, + 1,3,248,1,1,1,3,1,0,128,5,9,9,7,1,0, + 8,16,16,32,32,32,64,64,128,5,9,9,6,0,0,112, + 136,136,136,136,136,136,136,112,5,9,9,6,0,0,32,96, + 160,32,32,32,32,32,248,5,9,9,6,0,0,112,136,136, + 8,16,32,64,128,248,5,9,9,6,0,0,112,136,8,48, + 8,8,8,136,112,5,9,9,6,0,0,8,136,136,248,8, + 8,8,8,8,5,9,9,6,0,0,248,128,128,248,8,8, + 8,136,112,5,9,9,6,0,0,112,136,128,240,136,136,136, + 136,112,5,9,9,6,0,0,248,8,16,32,64,64,64,64, + 64,5,9,9,6,0,0,112,136,136,112,136,136,136,136,112, + 5,9,9,6,0,0,112,136,136,136,120,8,8,136,112,1, + 4,4,3,1,0,128,0,0,128,2,5,5,4,1,255,64, + 0,0,64,128,5,9,9,7,1,0,8,16,32,64,128,64, + 32,16,8,5,3,3,7,1,2,248,0,248,5,9,9,7, + 1,0,128,64,32,16,8,16,32,64,128,5,9,9,7,1, + 0,112,136,8,16,32,32,0,32,32,9,8,16,11,1,0, + 126,0,129,0,153,0,165,0,165,0,154,0,128,128,127,0, + 5,9,9,6,0,0,112,136,136,248,136,136,136,136,136,5, + 9,9,6,0,0,240,136,136,240,136,136,136,136,240,5,9, + 9,6,0,0,112,136,128,128,128,128,128,136,112,5,9,9, + 6,0,0,240,136,136,136,136,136,136,136,240,5,9,9,6, + 0,0,248,128,128,240,128,128,128,128,248,5,9,9,6,0, + 0,248,128,128,240,128,128,128,128,128,5,9,9,6,0,0, + 112,136,128,184,136,136,136,136,112,5,9,9,6,0,0,136, + 136,136,248,136,136,136,136,136,1,9,9,2,0,0,128,128, + 128,128,128,128,128,128,128,5,9,9,6,0,0,8,8,8, + 8,8,8,8,136,112,5,9,9,6,0,0,136,136,144,160, + 192,160,144,136,136,5,9,9,6,0,0,128,128,128,128,128, + 128,128,128,248,7,9,9,8,0,0,130,198,170,146,130,130, + 130,130,130,5,9,9,6,0,0,136,200,168,152,136,136,136, + 136,136,5,9,9,6,0,0,112,136,136,136,136,136,136,136, + 112,5,9,9,6,0,0,240,136,136,240,128,128,128,128,128, + 5,9,9,6,0,0,112,136,136,136,136,168,168,168,112,5, + 9,9,6,0,0,240,136,136,240,136,136,136,136,136,5,9, + 9,6,0,0,112,136,128,112,8,8,136,136,112,5,9,9, + 6,0,0,248,32,32,32,32,32,32,32,32,5,9,9,6, + 0,0,136,136,136,136,136,136,136,136,112,5,9,9,6,0, + 0,136,136,136,80,80,80,80,32,32,7,9,9,8,0,0, + 130,130,130,84,84,84,40,40,40,5,9,9,6,0,0,136, + 136,80,32,32,80,136,136,136,5,9,9,6,0,0,136,136, + 80,32,32,32,32,32,32,5,9,9,6,0,0,248,8,8, + 16,32,64,128,128,248,3,9,9,5,1,0,224,128,128,128, + 128,128,128,128,224,5,7,7,7,1,0,128,64,64,32,16, + 16,8,3,9,9,5,1,0,224,32,32,32,32,32,32,32, + 224,3,2,2,5,1,10,64,160,6,1,1,8,1,0,252, + 2,2,2,4,1,10,64,128,5,6,6,6,0,0,112,136, + 136,136,136,120,5,9,9,6,0,0,128,128,128,240,136,136, + 136,136,112,5,6,6,6,0,0,112,136,128,128,136,112,5, + 9,9,6,0,0,8,8,8,120,136,136,136,136,120,5,6, + 6,6,0,0,112,136,248,128,136,112,5,9,9,6,0,0, + 48,72,64,224,64,64,64,64,64,5,10,10,6,0,252,112, + 136,136,136,136,120,8,8,136,112,5,9,9,6,0,0,128, + 128,128,176,200,136,136,136,136,1,9,9,2,0,0,128,128, + 0,128,128,128,128,128,128,2,13,13,3,0,252,64,64,0, + 64,64,64,64,64,64,64,64,64,128,5,9,9,6,0,0, + 128,128,128,144,160,192,160,144,136,1,9,9,2,0,0,128, + 128,128,128,128,128,128,128,128,7,6,6,8,0,0,182,218, + 146,146,146,146,5,6,6,6,0,0,176,200,136,136,136,136, + 5,6,6,6,0,0,112,136,136,136,136,112,5,10,10,6, + 0,252,112,136,136,136,136,240,128,128,128,128,6,10,10,7, + 0,252,120,136,136,136,136,120,8,28,8,8,4,6,6,5, + 0,0,176,192,128,128,128,128,5,6,6,6,0,0,112,128, + 112,8,136,112,4,9,9,5,0,0,64,64,64,240,64,64, + 64,64,64,5,6,6,6,0,0,136,136,136,136,136,112,5, + 6,6,6,0,0,136,136,80,80,32,32,7,6,6,8,0, + 0,130,130,84,84,40,40,5,6,6,6,0,0,136,80,32, + 32,80,136,5,10,10,6,0,252,136,136,136,136,136,120,8, + 8,136,112,5,6,6,6,0,0,120,136,16,32,64,248,6, + 9,9,8,1,0,12,16,32,32,192,32,32,16,12,1,9, + 9,3,1,0,128,128,128,128,128,128,128,128,128,6,9,9, + 8,1,0,192,32,16,16,12,16,16,32,192,5,2,2,6, + 0,10,232,184,255}; +/* + Fontname: -FreeType-Trixel Square-Medium-R-Normal--8-80-72-72-P-33-ISO10646-1 + Copyright: Copyright julischka 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 7 x= 0 y= 3 dx= 6 dy= 0 ascent= 7 len= 7 + Font Bounding box w= 5 h= 9 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 5 descent=-2 + Max Font ascent = 7 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_trixel_square[1236] U8G_SECTION(".progmem.u8g_font_trixel_square") = { + 0,5,9,0,254,5,1,91,2,177,32,255,254,7,254,5, + 254,0,0,0,1,0,0,1,5,5,2,0,0,128,128,128, + 0,128,3,2,2,4,0,3,160,160,5,5,5,6,0,255, + 80,248,80,248,80,3,6,6,4,0,0,64,224,192,96,224, + 64,3,5,5,4,0,0,160,32,224,128,160,5,5,5,6, + 0,0,224,160,240,160,248,1,2,2,2,0,3,128,128,2, + 5,5,3,0,0,192,128,128,128,192,2,5,5,3,0,0, + 192,64,64,64,192,3,3,3,4,0,2,160,64,160,3,3, + 3,4,0,0,64,224,64,1,2,2,2,0,255,128,128,3, + 1,1,4,0,1,224,1,1,1,2,0,0,128,3,5,5, + 4,0,0,32,96,64,192,128,3,5,5,4,0,0,224,160, + 160,160,224,2,5,5,3,0,0,64,192,64,64,64,3,5, + 5,4,0,0,224,160,96,192,224,3,5,5,4,0,0,224, + 32,96,32,224,3,5,5,4,0,0,160,160,224,32,32,3, + 5,5,4,0,0,224,128,224,32,224,3,5,5,4,0,0, + 224,128,224,160,224,3,5,5,4,0,0,224,32,32,32,32, + 3,5,5,4,0,0,224,160,224,160,224,3,5,5,4,0, + 0,224,160,224,32,224,1,3,3,2,0,0,128,0,128,1, + 4,4,2,0,255,128,0,128,128,3,3,3,4,0,0,96, + 192,96,3,3,3,4,0,0,224,0,224,3,3,3,4,0, + 0,192,96,192,3,5,5,4,0,0,224,32,96,0,64,5, + 6,6,6,0,255,248,136,168,184,128,248,3,5,5,4,0, + 0,224,160,224,160,160,3,5,5,4,0,0,224,160,224,160, + 224,3,5,5,4,0,0,224,160,128,160,224,3,5,5,4, + 0,0,224,160,160,160,224,3,5,5,4,0,0,224,128,192, + 128,224,3,5,5,4,0,0,224,128,192,128,128,3,5,5, + 4,0,0,224,128,160,160,224,3,5,5,4,0,0,160,160, + 224,160,160,1,5,5,2,0,0,128,128,128,128,128,3,5, + 5,4,0,0,224,32,32,32,224,3,5,5,4,0,0,160, + 160,192,160,160,3,5,5,4,0,0,128,128,128,128,224,5, + 5,5,6,0,0,216,216,168,168,136,4,5,5,5,0,0, + 208,208,176,176,144,3,5,5,4,0,0,224,160,160,160,224, + 3,5,5,4,0,0,224,160,224,128,128,4,5,5,5,0, + 0,224,160,160,160,240,3,5,5,4,0,0,224,160,192,160, + 160,3,5,5,4,0,0,224,128,224,32,224,3,5,5,4, + 0,0,224,64,64,64,64,3,5,5,4,0,0,160,160,160, + 160,224,3,5,5,4,0,0,160,160,160,224,64,5,5,5, + 6,0,0,136,136,168,168,248,3,5,5,4,0,0,160,224, + 64,224,160,3,5,5,4,0,0,160,160,224,64,64,3,5, + 5,4,0,0,224,32,224,128,224,3,5,5,4,0,0,224, + 128,128,128,224,3,5,5,4,0,0,128,192,64,96,32,3, + 5,5,4,0,0,224,32,32,32,224,3,2,2,4,0,3, + 224,160,3,1,1,4,0,0,224,2,2,2,3,0,3,192, + 64,4,3,3,5,0,0,224,160,240,3,5,5,4,0,0, + 128,128,224,160,224,3,3,3,4,0,0,224,128,224,3,5, + 5,4,0,0,32,32,224,160,224,3,3,3,4,0,0,224, + 192,224,2,5,5,3,0,0,192,128,192,128,128,3,5,5, + 4,0,254,224,160,224,32,224,3,5,5,4,0,0,128,128, + 224,160,160,1,5,5,2,0,0,128,0,128,128,128,2,7, + 7,3,0,254,64,0,64,64,64,64,192,3,5,5,4,0, + 0,128,128,160,224,160,2,5,5,3,0,0,128,128,128,128, + 192,5,3,3,6,0,0,248,168,168,3,3,3,4,0,0, + 224,160,160,3,3,3,4,0,0,224,160,224,3,5,5,4, + 0,254,224,160,224,128,128,3,5,5,4,0,254,224,160,224, + 32,32,2,3,3,3,0,0,192,128,128,3,3,3,4,0, + 0,96,64,192,2,5,5,3,0,0,128,192,128,128,192,3, + 3,3,4,0,0,160,160,224,3,3,3,4,0,0,160,224, + 64,5,3,3,6,0,0,168,168,248,3,3,3,4,0,0, + 160,64,160,3,5,5,4,0,254,160,160,224,32,224,3,3, + 3,4,0,0,224,64,224,3,5,5,4,0,0,96,64,192, + 64,96,1,5,5,2,0,0,128,128,128,128,128,3,5,5, + 4,0,0,192,64,96,64,192,3,3,3,4,0,1,32,224, + 128,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,4,5,5,5,0,0,112,64,96,64,240, + 255,255,255,3,7,7,4,0,254,224,128,224,160,224,32,224, + 255,255,255,3,2,2,4,0,1,160,160,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,3,2,2,4,0,1, + 160,160,255,255,255,255,255,255,255,255,3,7,7,4,0,0, + 160,0,224,160,224,160,160,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,3,7,7,4,0,0,160,0, + 224,160,160,160,224,255,255,255,255,255,3,7,7,4,0,0, + 160,0,160,160,160,160,224,255,255,3,7,7,4,0,254,224, + 160,224,160,224,128,128,255,255,255,255,4,5,5,5,0,0, + 160,0,224,160,240,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,3,5,5,4,0,0,160,0,224,160, + 224,255,255,255,255,255,3,5,5,4,0,0,160,0,160,160, + 224,255,255,255}; +/* + Fontname: -FreeType-Trixel Square-Medium-R-Normal--8-80-72-72-P-33-ISO10646-1 + Copyright: Copyright julischka 2008 + Capital A Height: 0, '1' Height: 5 + Calculated Max Values w= 3 h= 5 x= 0 y= 2 dx= 4 dy= 0 ascent= 5 len= 5 + Font Bounding box w= 5 h= 9 x= 0 y=-2 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 5 descent= 0 + X Font ascent = 5 descent= 0 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_trixel_squaren[178] U8G_SECTION(".progmem.u8g_font_trixel_squaren") = { + 0,5,9,0,254,5,0,0,0,0,42,57,0,5,255,5, + 0,3,3,3,4,0,2,160,64,160,3,3,3,4,0,0, + 64,224,64,1,2,2,2,0,255,128,128,3,1,1,4,0, + 1,224,1,1,1,2,0,0,128,3,5,5,4,0,0,32, + 96,64,192,128,3,5,5,4,0,0,224,160,160,160,224,2, + 5,5,3,0,0,64,192,64,64,64,3,5,5,4,0,0, + 224,160,96,192,224,3,5,5,4,0,0,224,32,96,32,224, + 3,5,5,4,0,0,160,160,224,32,32,3,5,5,4,0, + 0,224,128,224,32,224,3,5,5,4,0,0,224,128,224,160, + 224,3,5,5,4,0,0,224,32,32,32,32,3,5,5,4, + 0,0,224,160,224,160,224,3,5,5,4,0,0,224,160,224, + 32,224}; +/* + Fontname: -FreeType-Trixel Square-Medium-R-Normal--8-80-72-72-P-33-ISO10646-1 + Copyright: Copyright julischka 2008 + Capital A Height: 5, '1' Height: 5 + Calculated Max Values w= 5 h= 7 x= 0 y= 3 dx= 6 dy= 0 ascent= 6 len= 7 + Font Bounding box w= 5 h= 9 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 5 descent=-2 + X Font ascent = 5 descent=-2 + Max Font ascent = 6 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_trixel_squarer[994] U8G_SECTION(".progmem.u8g_font_trixel_squarer") = { + 0,5,9,0,254,5,1,91,2,177,32,127,254,6,254,5, + 254,0,0,0,1,0,0,1,5,5,2,0,0,128,128,128, + 0,128,3,2,2,4,0,3,160,160,5,5,5,6,0,255, + 80,248,80,248,80,3,6,6,4,0,0,64,224,192,96,224, + 64,3,5,5,4,0,0,160,32,224,128,160,5,5,5,6, + 0,0,224,160,240,160,248,1,2,2,2,0,3,128,128,2, + 5,5,3,0,0,192,128,128,128,192,2,5,5,3,0,0, + 192,64,64,64,192,3,3,3,4,0,2,160,64,160,3,3, + 3,4,0,0,64,224,64,1,2,2,2,0,255,128,128,3, + 1,1,4,0,1,224,1,1,1,2,0,0,128,3,5,5, + 4,0,0,32,96,64,192,128,3,5,5,4,0,0,224,160, + 160,160,224,2,5,5,3,0,0,64,192,64,64,64,3,5, + 5,4,0,0,224,160,96,192,224,3,5,5,4,0,0,224, + 32,96,32,224,3,5,5,4,0,0,160,160,224,32,32,3, + 5,5,4,0,0,224,128,224,32,224,3,5,5,4,0,0, + 224,128,224,160,224,3,5,5,4,0,0,224,32,32,32,32, + 3,5,5,4,0,0,224,160,224,160,224,3,5,5,4,0, + 0,224,160,224,32,224,1,3,3,2,0,0,128,0,128,1, + 4,4,2,0,255,128,0,128,128,3,3,3,4,0,0,96, + 192,96,3,3,3,4,0,0,224,0,224,3,3,3,4,0, + 0,192,96,192,3,5,5,4,0,0,224,32,96,0,64,5, + 6,6,6,0,255,248,136,168,184,128,248,3,5,5,4,0, + 0,224,160,224,160,160,3,5,5,4,0,0,224,160,224,160, + 224,3,5,5,4,0,0,224,160,128,160,224,3,5,5,4, + 0,0,224,160,160,160,224,3,5,5,4,0,0,224,128,192, + 128,224,3,5,5,4,0,0,224,128,192,128,128,3,5,5, + 4,0,0,224,128,160,160,224,3,5,5,4,0,0,160,160, + 224,160,160,1,5,5,2,0,0,128,128,128,128,128,3,5, + 5,4,0,0,224,32,32,32,224,3,5,5,4,0,0,160, + 160,192,160,160,3,5,5,4,0,0,128,128,128,128,224,5, + 5,5,6,0,0,216,216,168,168,136,4,5,5,5,0,0, + 208,208,176,176,144,3,5,5,4,0,0,224,160,160,160,224, + 3,5,5,4,0,0,224,160,224,128,128,4,5,5,5,0, + 0,224,160,160,160,240,3,5,5,4,0,0,224,160,192,160, + 160,3,5,5,4,0,0,224,128,224,32,224,3,5,5,4, + 0,0,224,64,64,64,64,3,5,5,4,0,0,160,160,160, + 160,224,3,5,5,4,0,0,160,160,160,224,64,5,5,5, + 6,0,0,136,136,168,168,248,3,5,5,4,0,0,160,224, + 64,224,160,3,5,5,4,0,0,160,160,224,64,64,3,5, + 5,4,0,0,224,32,224,128,224,3,5,5,4,0,0,224, + 128,128,128,224,3,5,5,4,0,0,128,192,64,96,32,3, + 5,5,4,0,0,224,32,32,32,224,3,2,2,4,0,3, + 224,160,3,1,1,4,0,0,224,2,2,2,3,0,3,192, + 64,4,3,3,5,0,0,224,160,240,3,5,5,4,0,0, + 128,128,224,160,224,3,3,3,4,0,0,224,128,224,3,5, + 5,4,0,0,32,32,224,160,224,3,3,3,4,0,0,224, + 192,224,2,5,5,3,0,0,192,128,192,128,128,3,5,5, + 4,0,254,224,160,224,32,224,3,5,5,4,0,0,128,128, + 224,160,160,1,5,5,2,0,0,128,0,128,128,128,2,7, + 7,3,0,254,64,0,64,64,64,64,192,3,5,5,4,0, + 0,128,128,160,224,160,2,5,5,3,0,0,128,128,128,128, + 192,5,3,3,6,0,0,248,168,168,3,3,3,4,0,0, + 224,160,160,3,3,3,4,0,0,224,160,224,3,5,5,4, + 0,254,224,160,224,128,128,3,5,5,4,0,254,224,160,224, + 32,32,2,3,3,3,0,0,192,128,128,3,3,3,4,0, + 0,96,64,192,2,5,5,3,0,0,128,192,128,128,192,3, + 3,3,4,0,0,160,160,224,3,3,3,4,0,0,160,224, + 64,5,3,3,6,0,0,168,168,248,3,3,3,4,0,0, + 160,64,160,3,5,5,4,0,254,160,160,224,32,224,3,3, + 3,4,0,0,224,64,224,3,5,5,4,0,0,96,64,192, + 64,96,1,5,5,2,0,0,128,128,128,128,128,3,5,5, + 4,0,0,192,64,96,64,192,3,3,3,4,0,1,32,224, + 128,255}; +/* + Fontname: u8glib_4 + Copyright: public domain + Capital A Height: 4, '1' Height: 4 + Calculated Max Values w= 8 h= 7 x= 1 y= 4 dx= 9 dy= 0 ascent= 6 len= 7 + Font Bounding box w=10 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 4 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 6 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_u8glib_4[1660] U8G_SECTION(".progmem.u8g_font_u8glib_4") = { + 1,10,6,0,255,4,0,233,1,198,32,255,255,6,255,5, + 255,2,0,32,2,20,36,128,128,0,128,5,50,66,160,160, + 1,85,101,80,248,80,248,80,1,86,102,32,120,224,56,240, + 32,2,68,84,144,32,64,144,2,69,85,64,160,64,160,240, + 5,18,34,128,128,1,38,54,64,128,128,128,128,64,1,38, + 54,128,64,64,64,64,128,3,34,50,192,192,2,51,67,64, + 224,64,1,18,34,128,128,3,49,65,224,2,17,33,128,2, + 68,84,16,32,64,128,2,52,68,224,160,160,224,2,36,52, + 64,192,64,64,2,52,68,224,32,64,224,2,52,68,224,64, + 32,224,2,52,68,128,160,224,32,2,52,68,224,192,32,224, + 2,52,68,224,128,224,224,2,52,68,224,32,64,128,2,52, + 68,224,224,160,224,2,52,68,224,224,32,224,2,19,35,128, + 0,128,1,20,36,128,0,128,128,2,35,51,64,128,64,2, + 51,67,224,0,224,2,35,51,128,64,128,2,36,52,192,64, + 0,64,2,68,84,240,176,128,240,2,68,84,96,144,240,144, + 2,68,84,224,240,144,240,2,52,68,96,128,128,96,2,68, + 84,224,144,144,224,2,68,84,240,224,128,240,2,68,84,240, + 128,224,128,2,68,84,240,128,176,240,2,68,84,144,240,144, + 144,2,20,36,128,128,128,128,2,52,68,224,32,32,192,2, + 68,84,144,224,144,144,2,52,68,128,128,128,224,2,84,100, + 136,216,168,136,2,68,84,144,208,176,144,2,68,84,96,144, + 144,96,2,68,84,224,144,224,128,2,84,100,240,144,144,232, + 2,68,84,240,240,160,144,2,68,84,112,192,48,224,2,52, + 68,224,64,64,64,2,68,84,144,144,144,240,2,68,84,144, + 144,144,96,2,84,100,136,168,168,80,2,52,68,160,64,64, + 160,2,68,84,144,240,16,240,2,68,84,240,32,64,240,1, + 38,54,192,128,128,128,128,192,2,68,84,128,64,32,16,1, + 38,54,192,64,64,64,64,192,5,50,66,64,160,1,65,81, + 240,5,34,50,128,64,2,51,67,96,160,224,2,52,68,128, + 192,160,192,2,35,51,192,128,192,2,52,68,32,96,160,96, + 2,51,67,224,192,224,2,52,68,32,64,224,64,1,52,68, + 224,224,32,96,2,52,68,128,192,160,160,2,20,36,128,0, + 128,128,1,37,53,64,0,64,64,128,2,52,68,128,160,192, + 160,2,20,36,128,128,128,128,2,83,99,208,168,168,2,51, + 67,192,160,160,2,51,67,224,160,224,1,52,68,192,160,192, + 128,1,52,68,96,160,96,32,2,35,51,192,128,128,2,51, + 67,96,64,192,2,52,68,64,224,64,96,2,51,67,160,160, + 224,2,51,67,160,160,64,2,83,99,136,168,80,2,51,67, + 160,64,160,1,52,68,160,224,32,224,2,51,67,192,64,96, + 1,54,70,96,64,128,128,64,96,1,22,38,128,128,128,128, + 128,128,1,54,70,192,64,32,32,64,192,5,66,82,80,160, + 2,69,85,240,144,144,144,240,2,0,32,2,53,69,160,0, + 160,160,224,2,54,70,64,128,0,224,192,224,2,54,70,64, + 160,0,96,160,224,2,53,69,160,0,96,160,224,2,54,70, + 64,32,0,96,160,224,2,54,70,64,160,64,96,160,224,1, + 36,52,192,128,192,192,2,54,70,64,160,0,224,192,224,2, + 53,69,160,0,224,192,224,2,54,70,64,32,0,224,192,224, + 2,52,68,160,0,64,64,2,53,149,64,160,0,64,64,2, + 37,53,128,64,0,64,64,2,69,85,144,96,144,240,144,2, + 70,86,96,144,96,144,240,144,2,70,86,32,64,240,224,128, + 240,2,83,99,120,176,248,2,132,148,31,46,120,143,2,54, + 70,64,160,0,224,160,224,2,53,69,160,0,224,160,224,2, + 54,70,128,64,0,224,160,224,2,54,70,64,160,0,160,160, + 224,2,54,70,64,32,0,160,160,224,1,54,70,160,0,160, + 224,32,96,2,69,85,144,96,144,144,96,2,69,85,144,0, + 144,144,240,2,0,64,2,0,64,2,0,64,2,0,64,2, + 0,64,2,54,70,64,128,0,96,160,224,2,37,53,64,128, + 0,128,128,2,54,70,32,64,0,224,160,224,2,54,70,32, + 64,0,160,160,224,2,70,70,80,160,0,192,160,160,2,70, + 86,80,160,144,208,176,144,2,21,37,128,128,0,128,128,1, + 54,70,224,128,224,224,32,224,6,65,81,144,1,119,151,124, + 130,186,162,186,130,124,2,0,144,2,51,67,96,192,96,3, + 50,66,224,32,2,0,144,1,119,151,124,130,186,178,170,130, + 124,6,65,81,240,4,51,67,224,160,224,2,52,148,64,224, + 64,224,4,51,67,192,64,96,4,35,51,192,64,192,5,34, + 50,64,128,1,52,148,160,160,224,128,1,101,117,124,244,116, + 20,20,19,17,49,128,2,0,144,4,35,51,192,64,64,4, + 51,67,224,160,224,2,51,67,192,96,192,1,118,134,196,72, + 80,40,78,132,1,118,134,196,72,80,44,68,134,1,118,150, + 196,72,208,40,78,132,2,0,64,2,70,86,64,32,96,144, + 240,144,2,70,86,32,64,96,144,240,144,2,70,86,96,144, + 96,144,240,144,2,70,86,80,160,96,144,240,144,2,69,85, + 144,96,144,240,144,2,70,86,96,0,96,144,240,144,2,132, + 148,31,46,120,143,1,69,85,240,128,240,32,96,2,70,86, + 64,32,240,224,128,240,2,70,86,32,64,240,224,128,240,2, + 70,86,96,144,240,224,128,240,2,70,86,144,0,240,224,128, + 240,2,38,54,128,64,128,128,128,128,2,38,54,64,128,64, + 64,64,64,2,54,70,64,160,64,64,64,64,2,53,69,160, + 64,64,64,64,2,84,100,112,232,72,112,2,70,86,80,160, + 0,144,208,176,2,70,86,64,32,96,144,144,96,2,70,86, + 32,64,96,144,144,96,2,70,86,96,144,96,144,144,96,2, + 70,86,80,160,96,144,144,96,2,69,85,144,96,144,144,96, + 2,51,67,160,64,160,1,102,118,4,56,88,104,112,128,2, + 70,86,64,32,144,144,144,240,2,70,86,32,64,144,144,144, + 240,2,70,86,96,144,0,144,144,240,2,69,85,144,0,144, + 144,240,2,70,86,32,64,144,240,16,240,1,70,86,128,224, + 144,144,224,128,1,53,69,192,192,160,192,128,2,54,70,64, + 32,0,96,160,224,2,54,70,64,128,0,96,160,224,2,54, + 70,64,160,0,96,160,224,2,70,70,80,160,0,96,160,224, + 2,53,69,160,0,96,160,224,2,54,70,64,160,64,96,160, + 224,2,83,99,120,176,248,1,36,52,192,128,192,192,2,54, + 70,64,32,0,224,192,224,2,54,70,64,128,0,224,192,224, + 2,54,70,64,160,0,224,192,224,2,53,69,160,0,224,192, + 224,2,37,53,128,64,0,64,64,2,37,53,64,128,0,128, + 128,2,53,69,64,160,0,64,64,2,52,68,160,0,64,64, + 2,70,86,96,96,16,112,144,96,2,70,70,80,160,0,192, + 160,160,2,54,70,64,32,0,224,160,224,2,54,70,64,128, + 0,224,160,224,2,54,70,64,160,0,224,160,224,2,70,70, + 80,160,0,224,160,224,2,53,69,160,0,224,160,224,2,53, + 69,64,0,224,0,64,1,85,101,8,112,80,112,128,2,54, + 70,64,32,0,160,160,224,2,54,70,64,128,0,160,160,224, + 2,54,70,64,160,0,160,160,224,2,53,69,160,0,160,160, + 224,1,55,71,64,128,0,160,224,32,96,1,53,69,128,192, + 160,192,128,1,54,150,160,0,160,224,32,96}; +/* + Fontname: u8glib_4 + Copyright: public domain + Capital A Height: 4, '1' Height: 4 + Calculated Max Values w= 5 h= 6 x= 0 y= 3 dx= 6 dy= 0 ascent= 5 len= 6 + Font Bounding box w=10 h= 6 x= 0 y=-1 + Calculated Min Values x= 0 y=-1 dx= 0 dy= 0 + Pure Font ascent = 4 descent=-1 + X Font ascent = 5 descent=-1 + Max Font ascent = 5 descent=-1 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_u8glib_4r[664] U8G_SECTION(".progmem.u8g_font_u8glib_4r") = { + 1,10,6,0,255,4,0,233,1,198,32,127,255,5,255,5, + 255,2,0,32,2,20,36,128,128,0,128,5,50,66,160,160, + 1,85,101,80,248,80,248,80,1,86,102,32,120,224,56,240, + 32,2,68,84,144,32,64,144,2,69,85,64,160,64,160,240, + 5,18,34,128,128,1,38,54,64,128,128,128,128,64,1,38, + 54,128,64,64,64,64,128,3,34,50,192,192,2,51,67,64, + 224,64,1,18,34,128,128,3,49,65,224,2,17,33,128,2, + 68,84,16,32,64,128,2,52,68,224,160,160,224,2,36,52, + 64,192,64,64,2,52,68,224,32,64,224,2,52,68,224,64, + 32,224,2,52,68,128,160,224,32,2,52,68,224,192,32,224, + 2,52,68,224,128,224,224,2,52,68,224,32,64,128,2,52, + 68,224,224,160,224,2,52,68,224,224,32,224,2,19,35,128, + 0,128,1,20,36,128,0,128,128,2,35,51,64,128,64,2, + 51,67,224,0,224,2,35,51,128,64,128,2,36,52,192,64, + 0,64,2,68,84,240,176,128,240,2,68,84,96,144,240,144, + 2,68,84,224,240,144,240,2,52,68,96,128,128,96,2,68, + 84,224,144,144,224,2,68,84,240,224,128,240,2,68,84,240, + 128,224,128,2,68,84,240,128,176,240,2,68,84,144,240,144, + 144,2,20,36,128,128,128,128,2,52,68,224,32,32,192,2, + 68,84,144,224,144,144,2,52,68,128,128,128,224,2,84,100, + 136,216,168,136,2,68,84,144,208,176,144,2,68,84,96,144, + 144,96,2,68,84,224,144,224,128,2,84,100,240,144,144,232, + 2,68,84,240,240,160,144,2,68,84,112,192,48,224,2,52, + 68,224,64,64,64,2,68,84,144,144,144,240,2,68,84,144, + 144,144,96,2,84,100,136,168,168,80,2,52,68,160,64,64, + 160,2,68,84,144,240,16,240,2,68,84,240,32,64,240,1, + 38,54,192,128,128,128,128,192,2,68,84,128,64,32,16,1, + 38,54,192,64,64,64,64,192,5,50,66,64,160,1,65,81, + 240,5,34,50,128,64,2,51,67,96,160,224,2,52,68,128, + 192,160,192,2,35,51,192,128,192,2,52,68,32,96,160,96, + 2,51,67,224,192,224,2,52,68,32,64,224,64,1,52,68, + 224,224,32,96,2,52,68,128,192,160,160,2,20,36,128,0, + 128,128,1,37,53,64,0,64,64,128,2,52,68,128,160,192, + 160,2,20,36,128,128,128,128,2,83,99,208,168,168,2,51, + 67,192,160,160,2,51,67,224,160,224,1,52,68,192,160,192, + 128,1,52,68,96,160,96,32,2,35,51,192,128,128,2,51, + 67,96,64,192,2,52,68,64,224,64,96,2,51,67,160,160, + 224,2,51,67,160,160,64,2,83,99,136,168,80,2,51,67, + 160,64,160,1,52,68,160,224,32,224,2,51,67,192,64,96, + 1,54,70,96,64,128,128,64,96,1,22,38,128,128,128,128, + 128,128,1,54,70,192,64,32,32,64,192,5,66,82,80,160, + 2,69,85,240,144,144,144,240}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=16 h=16 x= 4 y=14 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =11 descent=-2 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_0_8[4239] U8G_SECTION(".progmem.u8g_font_unifont_0_8") = { + 0,16,16,0,254,10,1,231,3,213,32,255,254,14,254,11, + 254,0,0,0,8,0,14,1,10,10,8,4,0,128,128,128, + 128,128,128,128,0,128,128,5,4,4,8,2,8,136,136,136, + 136,6,10,10,8,1,0,36,36,36,252,72,72,252,144,144, + 144,7,10,10,8,1,0,16,124,146,144,112,28,18,146,124, + 16,7,10,10,8,1,0,98,148,148,104,16,16,44,82,82, + 140,7,10,10,8,1,0,56,68,68,68,56,114,138,132,140, + 114,1,4,4,8,4,8,128,128,128,128,3,12,12,8,3, + 255,32,64,64,128,128,128,128,128,128,64,64,32,3,12,12, + 8,2,255,128,64,64,32,32,32,32,32,32,64,64,128,7, + 7,7,8,1,1,16,146,84,56,84,146,16,7,7,7,8, + 1,1,16,16,16,254,16,16,16,2,4,4,8,3,254,192, + 64,64,128,6,1,1,8,1,4,252,2,2,2,8,3,0, + 192,192,6,10,10,8,1,0,4,4,8,16,16,32,32,64, + 128,128,6,10,10,8,1,0,48,72,132,132,132,132,132,132, + 72,48,5,10,10,8,2,0,32,96,160,32,32,32,32,32, + 32,248,6,10,10,8,1,0,120,132,132,4,24,32,64,128, + 128,252,6,10,10,8,1,0,120,132,132,4,56,4,4,132, + 132,120,6,10,10,8,1,0,8,24,40,72,136,136,252,8, + 8,8,6,10,10,8,1,0,252,128,128,128,248,4,4,4, + 132,120,6,10,10,8,1,0,56,64,128,128,248,132,132,132, + 132,120,6,10,10,8,1,0,252,4,4,8,8,8,16,16, + 16,16,6,10,10,8,1,0,120,132,132,132,120,132,132,132, + 132,120,6,10,10,8,1,0,120,132,132,132,124,4,4,4, + 8,112,2,7,7,8,3,1,192,192,0,0,0,192,192,2, + 9,9,8,3,255,192,192,0,0,0,192,64,64,128,5,9, + 9,8,2,0,8,16,32,64,128,64,32,16,8,6,5,5, + 8,1,2,252,0,0,0,252,5,9,9,8,1,0,128,64, + 32,16,8,16,32,64,128,6,10,10,8,1,0,120,132,132, + 4,8,16,16,0,16,16,6,10,10,8,1,0,56,68,148, + 172,164,164,164,156,64,60,6,10,10,8,1,0,48,72,72, + 132,132,252,132,132,132,132,6,10,10,8,1,0,248,132,132, + 132,248,132,132,132,132,248,6,10,10,8,1,0,120,132,132, + 128,128,128,128,132,132,120,6,10,10,8,1,0,240,136,132, + 132,132,132,132,132,136,240,6,10,10,8,1,0,252,128,128, + 128,248,128,128,128,128,252,6,10,10,8,1,0,252,128,128, + 128,248,128,128,128,128,128,6,10,10,8,1,0,120,132,132, + 128,128,156,132,132,140,116,6,10,10,8,1,0,132,132,132, + 132,252,132,132,132,132,132,5,10,10,8,2,0,248,32,32, + 32,32,32,32,32,32,248,7,10,10,8,1,0,62,8,8, + 8,8,8,8,136,136,112,6,10,10,8,1,0,132,136,144, + 160,192,192,160,144,136,132,6,10,10,8,1,0,128,128,128, + 128,128,128,128,128,128,252,6,10,10,8,1,0,132,132,204, + 204,180,180,132,132,132,132,6,10,10,8,1,0,132,196,196, + 164,164,148,148,140,140,132,6,10,10,8,1,0,120,132,132, + 132,132,132,132,132,132,120,6,10,10,8,1,0,248,132,132, + 132,248,128,128,128,128,128,7,11,11,8,1,255,120,132,132, + 132,132,132,132,180,204,120,6,6,10,10,8,1,0,248,132, + 132,132,248,144,136,136,132,132,6,10,10,8,1,0,120,132, + 132,128,96,24,4,132,132,120,7,10,10,8,1,0,254,16, + 16,16,16,16,16,16,16,16,6,10,10,8,1,0,132,132, + 132,132,132,132,132,132,132,120,7,10,10,8,1,0,130,130, + 130,68,68,68,40,40,16,16,6,10,10,8,1,0,132,132, + 132,132,180,180,204,204,132,132,6,10,10,8,1,0,132,132, + 72,72,48,48,72,72,132,132,7,10,10,8,1,0,130,130, + 68,68,40,16,16,16,16,16,6,10,10,8,1,0,252,4, + 4,8,16,32,64,128,128,252,3,12,12,8,4,255,224,128, + 128,128,128,128,128,128,128,128,128,224,6,10,10,8,1,0, + 128,128,64,32,32,16,16,8,4,4,3,12,12,8,1,255, + 224,32,32,32,32,32,32,32,32,32,32,224,6,3,3,8, + 1,9,48,72,132,7,1,1,8,1,255,254,3,3,3,8, + 2,10,128,64,32,6,8,8,8,1,0,120,132,4,124,132, + 132,140,116,6,11,11,8,1,0,128,128,128,184,196,132,132, + 132,132,196,184,6,8,8,8,1,0,120,132,128,128,128,128, + 132,120,6,11,11,8,1,0,4,4,4,116,140,132,132,132, + 132,140,116,6,8,8,8,1,0,120,132,132,252,128,128,132, + 120,5,11,11,8,1,0,24,32,32,32,248,32,32,32,32, + 32,32,6,11,11,8,1,254,4,116,136,136,136,112,64,120, + 132,132,120,6,11,11,8,1,0,128,128,128,184,196,132,132, + 132,132,132,132,5,11,11,8,2,0,32,32,0,96,32,32, + 32,32,32,32,248,5,13,13,8,1,254,8,8,0,24,8, + 8,8,8,8,8,8,144,96,6,10,10,8,1,0,128,128, + 136,144,160,192,160,144,136,132,5,10,10,8,2,0,96,32, + 32,32,32,32,32,32,32,248,7,8,8,8,1,0,236,146, + 146,146,146,146,146,146,6,8,8,8,1,0,184,196,132,132, + 132,132,132,132,6,8,8,8,1,0,120,132,132,132,132,132, + 132,120,6,10,10,8,1,254,184,196,132,132,132,132,196,184, + 128,128,6,10,10,8,1,254,116,140,132,132,132,132,140,116, + 4,4,6,8,8,8,1,0,184,196,132,128,128,128,128,128, + 6,8,8,8,1,0,120,132,128,96,24,4,132,120,5,10, + 10,8,1,0,32,32,248,32,32,32,32,32,32,24,6,8, + 8,8,1,0,132,132,132,132,132,132,140,116,6,8,8,8, + 1,0,132,132,132,72,72,72,48,48,7,8,8,8,1,0, + 130,146,146,146,146,146,146,108,6,8,8,8,1,0,132,132, + 72,48,48,72,132,132,6,10,10,8,1,254,132,132,132,132, + 132,76,52,4,4,120,6,8,8,8,1,0,252,4,8,16, + 32,64,128,252,3,12,12,8,3,255,96,128,128,64,64,128, + 128,64,64,128,128,96,1,14,14,8,4,254,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,3,12,12,8,2,255, + 192,32,32,64,64,32,32,64,64,32,32,192,7,3,3,8, + 1,8,98,146,140,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,115,209,202,16,75,209,202,16,115,223,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,113,157,202,82,115, + 211,194,82,66,93,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,73,157,202,82,122,93,202,80,73,145,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,115,147,202,82,115,159,202,18,114, + 19,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,75,147,234, + 82,91,159,202,82,75,147,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,116,185,166,164,37,165,164,164,116,185,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,75,209,234,16,91,209,202, + 16,75,223,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,57, + 205,194,18,49,159,136,82,115,147,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,121,205,194,18,121,159,192,82,123,147,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,75,157,201,32,121, + 25,201,4,73,57,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,75,185,201,8,121,9,201,8,73,49,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,69,205,196,144,68,137,168,132,16, + 153,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,114,29,202, + 18,114,19,194,18,67,221,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,114,19,202,18,114,19,194,18,67,205,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,14,33,137,32,14,33,138, + 32,9,33,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,57, + 221,194,2,49,141,136,80,115,159,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,57,221,194,2,49,141,136,66,115,157,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,113,207,202,16,74, + 13,202,2,113,221,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,114,69,202,76,114,69,194,68,65,143,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,114,93,202,66,114,77,194,80,65, + 159,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,59,157,193, + 32,49,25,137,4,113,57,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,57,211,194,18,66,31,194,18,57,211,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,69,17,237,16,85,81,197, + 176,69,17,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,59, + 141,194,82,51,159,138,18,114,19,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,123,141,194,82,123,159,194,18,122,19,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,57,143,194,80,50, + 77,138,66,113,157,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,51,155,196,34,37,163,148,162,99,155,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,57,221,194,8,50,9,138,8,113, + 221,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,57,221,194, + 8,65,137,192,72,59,157,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,14,249,144,32,12,33,130,32,28,33,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,49,207,202,16,73,145,200, + 80,51,143,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,114, + 33,203,96,114,161,194,32,66,33,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,51,143,202,80,123,145,202,16,74,15,128, + 0,0,1,128,0,0,1,128,0,85,85,6,13,13,8,1, + 0,96,24,0,252,128,128,128,248,128,128,128,128,252,6,14, + 14,8,1,0,72,72,0,0,252,128,128,128,248,128,128,128, + 128,252,7,10,10,8,1,0,252,32,32,32,60,34,34,34, + 34,44,6,14,14,8,1,0,24,96,0,0,252,128,128,128, + 128,128,128,128,128,128,6,10,10,8,1,0,56,68,128,128, + 248,128,128,128,68,56,6,10,10,8,1,0,120,132,132,128, + 96,24,4,132,132,120,5,10,10,8,2,0,248,32,32,32, + 32,32,32,32,32,248,5,14,14,8,2,0,144,144,0,0, + 248,32,32,32,32,32,32,32,32,248,6,10,10,8,1,0, + 28,8,8,8,8,8,8,136,136,112,8,10,10,8,0,0, + 120,72,72,72,78,73,73,73,73,142,7,10,10,8,1,0, + 144,144,144,144,252,146,146,146,146,156,7,10,10,8,1,0, + 252,32,32,32,60,34,34,34,34,34,6,14,14,8,1,0, + 24,96,0,0,128,140,144,160,192,192,160,144,136,132,6,13, + 13,8,1,0,96,24,0,132,140,140,148,148,164,164,196,196, + 132,7,14,14,8,1,0,132,132,120,0,130,130,68,68,40, + 40,16,16,32,96,7,10,10,8,1,0,130,130,130,130,130, + 130,254,16,16,16,6,10,10,8,1,0,48,72,72,132,132, + 132,252,132,132,132,6,10,10,8,1,0,248,128,128,128,248, + 132,132,132,132,248,6,10,10,8,1,0,248,132,132,132,248, + 132,132,132,132,248,6,10,10,8,1,0,252,128,128,128,128, + 128,128,128,128,128,8,12,12,8,0,254,14,18,18,18,34, + 34,34,66,66,255,129,129,6,10,10,8,1,0,252,128,128, + 128,248,128,128,128,128,252,7,10,10,8,1,0,146,146,84, + 84,56,56,84,84,146,146,6,10,10,8,1,0,120,132,4, + 4,120,8,4,4,132,120,6,10,10,8,1,0,132,140,140, + 148,148,164,164,196,196,132,6,13,13,8,1,0,72,48,0, + 132,140,140,148,148,164,164,196,196,132,6,10,10,8,1,0, + 128,140,144,160,192,192,160,144,136,132,6,10,10,8,1,0, + 60,36,36,36,36,36,36,68,68,132,6,10,10,8,1,0, + 132,132,204,204,180,180,132,132,132,132,6,10,10,8,1,0, + 132,132,132,132,252,132,132,132,132,132,6,10,10,8,1,0, + 120,132,132,132,132,132,132,132,132,120,6,10,10,8,1,0, + 252,132,132,132,132,132,132,132,132,132,6,10,10,8,1,0, + 248,132,132,132,248,128,128,128,128,128,6,10,10,8,1,0, + 120,132,132,128,128,128,128,132,132,120,7,10,10,8,1,0, + 254,16,16,16,16,16,16,16,16,16,7,10,10,8,1,0, + 130,130,68,68,40,40,16,16,32,96,7,11,11,8,1,0, + 16,124,146,146,146,146,146,124,16,16,16,6,10,10,8,1, + 0,132,132,72,72,48,48,72,72,132,132,7,12,12,8,1, + 254,132,132,132,132,132,132,132,132,132,254,2,2,6,10,10, + 8,1,0,132,132,132,132,132,252,4,4,4,4,7,10,10, + 8,1,0,146,146,146,146,146,146,146,146,146,254,8,12,12, + 8,0,254,146,146,146,146,146,146,146,146,146,255,1,1,7, + 10,10,8,1,0,224,32,32,32,60,34,34,34,34,60,6, + 10,10,8,1,0,132,132,132,132,228,148,148,148,148,228,6, + 10,10,8,1,0,128,128,128,128,248,132,132,132,132,248,6, + 10,10,8,1,0,112,136,4,4,124,4,4,4,136,112,6, + 10,10,8,1,0,152,164,164,164,228,164,164,164,164,152,6, + 10,10,8,1,0,124,132,132,132,124,36,68,68,132,132,6, + 8,8,8,1,0,120,132,4,124,132,132,140,116,6,12,12, + 8,1,0,4,56,64,128,248,132,132,132,132,132,132,120,6, + 8,8,8,1,0,248,132,132,248,132,132,132,248,6,8,8, + 8,1,0,252,128,128,128,128,128,128,128,7,9,9,8,1, + 255,60,36,68,68,132,132,132,254,130,6,8,8,8,1,0, + 120,132,132,252,128,128,132,120,7,8,8,8,1,0,146,146, + 84,56,56,84,146,146,6,8,8,8,1,0,120,132,4,120, + 8,4,132,120,6,8,8,8,1,0,140,140,148,148,164,164, + 196,196,6,12,12,8,1,0,72,48,0,0,140,140,148,148, + 164,164,196,196,6,8,8,8,1,0,140,144,160,192,160,144, + 136,132,6,8,8,8,1,0,60,36,36,36,36,68,68,132, + 6,8,8,8,1,0,132,204,204,180,180,132,132,132,6,8, + 8,8,1,0,132,132,132,252,132,132,132,132,6,8,8,8, + 1,0,120,132,132,132,132,132,132,120,6,8,8,8,1,0, + 252,132,132,132,132,132,132,132,6,10,10,8,1,254,248,132, + 132,132,132,248,128,128,128,128,6,8,8,8,1,0,120,132, + 128,128,128,128,132,120,7,8,8,8,1,0,254,16,16,16, + 16,16,16,16,6,10,10,8,1,254,132,132,72,72,48,48, + 32,32,64,192,7,10,10,8,1,255,16,16,124,146,146,146, + 146,124,16,16,6,8,8,8,1,0,132,132,72,48,48,72, + 132,132,7,10,10,8,1,254,132,132,132,132,132,132,132,254, + 2,2,6,8,8,8,1,0,132,132,132,132,252,4,4,4, + 7,8,8,8,1,0,146,146,146,146,146,146,146,254,8,10, + 10,8,0,254,146,146,146,146,146,146,146,255,1,1,7,8, + 8,8,1,0,224,32,32,60,34,34,34,60,6,8,8,8, + 1,0,132,132,132,228,148,148,148,228,6,8,8,8,1,0, + 128,128,128,248,132,132,132,248,6,8,8,8,1,0,112,136, + 4,124,4,4,136,112,6,8,8,8,1,0,152,164,164,228, + 164,164,164,152,6,8,8,8,1,0,124,132,132,132,124,36, + 68,132,6,12,12,8,1,0,96,24,0,0,120,132,132,252, + 128,128,132,120,6,12,12,8,1,0,72,72,0,0,120,132, + 132,252,128,128,132,120,6,11,11,8,1,255,64,64,240,64, + 64,120,68,68,68,68,24,6,12,12,8,1,0,24,96,0, + 0,252,128,128,128,128,128,128,128,6,8,8,8,1,0,56, + 68,128,248,128,128,68,56,6,8,8,8,1,0,120,132,128, + 96,24,4,132,120,5,11,11,8,2,0,32,32,0,96,32, + 32,32,32,32,32,248,5,11,11,8,2,0,144,144,0,96, + 32,32,32,32,32,32,248,5,13,13,8,1,254,8,8,0, + 24,8,8,8,8,8,8,8,144,96,8,8,8,8,0,0, + 120,72,72,78,73,73,73,142,7,8,8,8,1,0,144,144, + 144,252,146,146,146,156,6,10,10,8,1,0,64,64,240,64, + 64,88,100,68,68,68,6,12,12,8,1,0,24,96,0,0, + 140,144,160,192,160,144,136,132,6,12,12,8,1,0,96,24, + 0,0,140,140,148,148,164,164,196,196,6,15,15,8,1,254, + 132,132,120,0,0,132,132,72,72,48,48,32,32,64,192,5, + 10,10,8,2,254,136,136,136,136,136,136,248,32,32,32}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 8, '1' Height: 7 + Calculated Max Values w=16 h=16 x= 9 y=11 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent= 2 + X Font ascent =13 descent= 0 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_12_13[3934] U8G_SECTION(".progmem.u8g_font_unifont_12_13") = { + 0,16,16,0,254,8,4,93,5,214,0,255,2,14,254,13, + 0,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,74,81,234,80,90,81,201,158,0,1,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,85,85,128, + 0,0,1,128,0,0,1,128,0,0,1,128,0,0,1,128, + 4,42,13,170,12,53,245,128,0,0,1,170,170,16,16,32, + 16,0,254,85,85,128,0,0,1,128,0,0,1,128,0,0, + 1,128,0,0,1,142,0,14,25,135,224,0,1,128,0,0, + 1,170,170,16,16,32,16,0,254,85,85,128,0,0,1,128, + 0,0,1,128,0,0,25,128,36,0,69,129,68,1,73,158, + 240,0,1,128,0,0,1,170,170,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,12,14,28,16,1,255,1,80,225,80,33,160,17,0,17, + 0,9,0,8,0,4,224,4,128,2,128,3,0,3,0,2, + 0,2,0,11,15,30,16,1,255,0,64,0,128,225,0,33, + 64,16,128,17,32,8,192,8,0,4,224,4,128,2,128,3, + 0,3,0,2,0,2,0,12,7,14,16,2,3,1,144,58, + 96,202,192,17,64,16,64,32,128,31,0,5,10,10,8,1, + 1,8,8,80,16,32,32,64,64,136,160,7,10,10,8,1, + 1,8,8,80,16,32,32,64,66,136,160,10,10,20,16,3, + 2,48,0,48,0,6,0,9,0,7,0,1,0,14,0,240, + 128,0,64,0,64,2,4,4,8,3,3,64,128,192,192,5, + 4,4,8,1,2,24,48,64,128,12,4,8,16,3,1,112, + 0,136,0,136,48,127,192,7,11,11,16,2,0,24,32,32, + 24,32,76,82,98,36,88,128,6,4,4,8,2,9,24,36, + 228,88,9,6,12,16,4,7,3,0,4,0,39,128,56,0, + 64,0,128,0,10,5,10,16,3,8,252,64,16,64,32,128, + 71,0,64,0,11,4,8,16,2,9,24,32,36,32,228,64, + 89,128,10,4,8,16,3,8,0,64,254,64,1,64,0,128, + 7,4,4,16,4,9,64,92,98,252,8,6,6,16,3,8, + 40,40,40,104,128,127,3,5,5,16,6,8,32,0,32,32, + 192,4,2,2,16,6,10,48,192,5,5,5,16,5,8,16, + 40,48,96,144,4,13,13,16,6,254,240,0,0,0,0,0, + 0,0,0,0,0,48,192,2,5,5,8,3,2,64,128,192, + 0,192,6,14,14,8,1,255,168,84,168,84,168,84,168,84, + 168,84,168,84,168,84,6,14,14,8,1,255,168,84,168,84, + 168,84,168,84,168,84,168,84,168,84,3,3,3,16,7,0, + 64,0,160,7,9,9,8,1,2,124,130,128,64,32,16,16, + 0,16,6,14,14,8,1,255,168,84,168,84,168,84,168,84, + 168,84,168,84,168,84,4,5,5,8,2,2,112,128,240,64, + 128,7,10,10,8,1,3,2,124,128,16,16,16,16,16,16, + 16,3,11,11,8,2,3,96,128,96,128,32,32,32,32,32, + 32,32,6,13,13,8,1,255,24,32,24,32,0,24,36,36, + 60,4,8,144,96,3,12,12,8,3,254,64,64,64,64,64, + 64,64,0,96,128,96,128,6,11,11,8,1,255,48,64,48, + 64,0,140,144,144,140,132,120,1,8,8,8,4,3,128,128, + 128,128,128,128,128,128,6,7,7,8,1,0,8,68,132,120, + 0,0,16,5,8,8,8,2,3,144,0,0,96,144,136,136, + 112,6,7,7,8,1,3,40,0,0,8,68,132,120,6,9, + 9,8,1,3,32,0,80,0,0,8,68,132,120,6,8,8, + 8,1,254,252,32,64,128,144,128,68,56,6,8,8,8,1, + 254,252,32,64,128,128,128,68,56,6,11,11,8,1,254,32, + 0,0,252,32,64,128,128,128,68,56,6,5,5,8,1,3, + 16,8,4,132,248,6,7,7,8,1,3,64,0,16,8,4, + 132,248,6,7,7,8,1,255,8,4,4,4,8,144,96,6, + 10,10,8,1,255,32,0,0,8,4,4,4,8,144,96,7, + 7,7,8,1,255,2,42,42,188,144,144,96,7,12,12,8, + 1,255,16,0,36,0,0,2,42,42,188,144,144,96,7,6, + 6,8,1,0,12,50,156,144,144,96,7,9,9,8,1,0, + 8,0,0,12,50,156,144,144,96,6,8,8,8,1,3,64, + 64,64,64,88,100,68,248,6,8,8,8,1,3,64,72,64, + 64,88,100,68,248,6,9,9,8,1,254,48,72,64,56,64, + 128,128,132,120,6,12,12,8,1,254,16,0,0,48,72,64, + 56,64,128,128,132,120,7,9,9,8,0,3,80,4,8,16, + 32,64,60,130,126,7,12,12,8,0,255,4,8,16,32,64, + 60,130,126,0,40,0,16,6,10,10,8,1,255,64,160,160, + 8,148,144,136,132,132,120,6,9,9,8,1,255,160,0,8, + 148,144,136,132,132,120,6,10,10,8,1,255,64,0,160,8, + 148,144,136,132,132,120,8,1,1,8,0,3,255,6,8,8, + 8,1,3,16,0,12,20,12,132,132,120,6,10,10,8,1, + 0,72,0,0,56,36,20,76,132,136,112,6,8,8,8,1, + 3,4,20,36,20,68,132,132,120,6,11,11,8,1,0,4, + 4,4,4,4,4,68,132,132,136,120,5,8,8,8,2,254, + 112,24,120,128,128,128,128,128,6,9,9,8,1,0,32,0, + 0,8,68,132,132,136,112,10,9,18,16,1,1,4,0,3, + 0,6,128,10,64,10,64,6,64,25,128,96,0,128,0,6, + 8,8,8,1,255,24,36,36,60,4,8,144,96,6,7,7, + 8,1,255,8,148,144,136,132,132,120,6,8,8,8,1,254, + 8,148,144,136,132,120,0,80,4,4,4,8,2,9,48,192, + 48,192,5,5,5,8,2,8,24,24,200,80,224,4,4,4, + 8,2,0,32,192,48,192,4,2,2,8,2,9,48,192,4, + 6,6,8,2,6,64,160,160,112,64,128,4,2,2,8,2, + 254,48,192,5,4,4,8,1,7,8,40,176,192,4,4,4, + 8,2,7,96,144,144,96,7,3,3,8,1,9,2,124,128, + 3,4,4,8,2,10,96,128,96,128,3,4,4,8,2,254, + 96,128,96,128,2,3,3,16,9,254,128,64,64,5,5,5, + 16,5,9,8,16,32,224,96,4,3,3,16,6,9,144,144, + 96,4,1,1,16,6,10,240,5,4,4,16,5,9,136,80, + 32,32,5,4,4,16,5,9,32,32,80,136,2,2,2,16, + 7,0,192,192,5,5,5,16,5,9,96,224,32,16,8,4, + 4,4,16,6,9,144,96,96,144,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,3,3,3, + 8,2,5,64,224,64,4,9,9,8,2,2,128,128,64,64, + 32,32,16,16,16,5,9,9,8,2,2,136,144,96,64,32, + 32,16,16,16,7,9,9,8,1,2,146,164,120,64,32,32, + 16,16,16,6,9,9,8,1,2,8,16,32,64,48,64,128, + 132,120,6,9,9,8,1,2,48,72,72,132,132,132,132,72, + 48,7,9,9,8,1,2,128,120,8,8,4,4,4,2,2, + 7,9,9,8,1,2,130,130,68,68,40,40,16,16,16,7, + 9,9,8,1,2,16,16,16,40,40,68,68,130,130,7,9, + 9,8,1,2,48,72,136,152,104,4,4,2,2,5,10,10, + 8,1,2,8,8,144,144,32,32,72,72,128,128,2,4,4, + 8,3,1,192,192,64,128,2,4,4,8,3,7,192,192,64, + 128,7,6,6,8,1,3,16,16,254,56,108,68,6,4,4, + 8,1,3,8,68,132,120,8,7,7,16,1,3,6,9,9, + 7,65,130,124,1,4,4,8,4,7,128,128,128,128,5,11, + 11,8,2,3,16,40,120,128,32,32,32,32,32,32,32,6, + 11,11,8,1,3,12,16,76,176,0,16,16,16,16,16,16, + 6,12,12,8,1,254,16,16,16,16,16,16,16,0,12,16, + 76,176,3,4,4,8,2,10,96,128,96,128,5,11,11,8, + 2,3,24,32,24,32,128,128,128,128,128,128,128,7,13,13, + 8,1,255,6,8,6,8,0,24,36,36,60,4,8,144,96, + 7,13,13,8,1,255,102,104,38,72,128,24,36,36,60,4, + 8,144,96,7,11,11,8,1,255,6,8,6,8,0,140,144, + 144,140,132,120,6,9,9,8,1,3,64,64,112,112,0,8, + 68,132,120,6,9,9,8,1,3,32,0,32,0,0,8,68, + 132,120,6,8,8,8,1,255,8,68,132,120,0,16,0,16, + 6,10,10,8,1,0,40,0,0,8,68,132,120,16,40,16, + 6,9,9,8,1,3,80,0,32,0,0,8,68,132,120,6, + 8,8,8,1,255,8,68,132,120,0,40,0,16,6,9,9, + 8,1,3,80,0,80,0,0,8,68,132,120,6,8,8,8, + 1,255,8,68,132,120,0,40,0,40,6,13,13,8,1,254, + 48,64,48,64,0,252,32,64,128,128,128,68,56,6,13,13, + 8,1,254,32,0,32,0,0,252,32,64,128,128,128,68,56, + 6,8,8,8,1,254,252,32,64,128,168,128,68,56,6,8, + 8,8,1,254,252,32,64,144,128,144,68,56,6,13,13,8, + 1,254,32,0,72,0,0,252,32,64,128,128,128,68,56,6, + 8,8,8,1,254,252,64,128,168,128,144,68,56,6,8,8, + 8,1,254,252,64,128,168,128,168,68,56,6,10,10,8,1, + 3,64,64,112,112,0,16,8,4,132,248,6,8,8,8,1, + 0,16,8,4,132,248,16,40,16,6,7,7,8,1,1,16, + 8,4,132,248,0,16,6,12,12,8,1,1,64,64,112,112, + 0,16,8,4,132,248,0,16,6,8,8,8,1,3,80,0, + 0,16,8,4,132,248,6,7,7,8,1,1,16,8,4,132, + 248,0,80,6,9,9,8,1,3,32,0,80,0,16,8,4, + 132,248,6,9,9,8,1,3,80,0,32,0,16,8,4,132, + 248,6,9,9,8,1,3,80,0,80,0,16,8,4,132,248, + 6,13,13,8,1,255,16,16,28,28,0,0,8,4,4,4, + 8,144,96,7,13,13,8,1,255,34,20,8,8,0,0,8, + 4,4,4,8,144,96,6,8,8,8,1,254,8,4,4,4, + 8,152,116,8,6,7,7,8,1,255,8,4,4,4,8,144, + 100,7,8,8,8,1,254,16,8,8,8,16,144,106,4,6, + 7,7,8,1,255,8,4,4,36,8,144,100,6,10,10,8, + 1,255,36,0,0,8,4,4,4,8,144,96,6,12,12,8, + 1,255,16,0,40,0,0,8,4,4,4,8,144,96,6,12, + 12,8,1,255,36,0,36,0,0,8,4,4,4,8,144,96, + 7,10,10,8,1,0,8,0,0,2,42,42,188,144,148,96, + 7,8,8,8,1,255,2,42,42,188,160,170,64,4,7,13, + 13,8,1,255,16,0,36,0,0,2,42,42,188,160,170,64, + 4,7,6,6,8,1,0,12,50,156,160,170,64,7,11,11, + 8,1,0,16,0,36,0,0,12,50,156,144,144,96,6,8, + 8,8,1,3,72,64,84,64,88,100,68,248,6,14,14,8, + 1,254,32,0,72,0,0,48,72,64,56,64,128,128,132,120, + 6,6,6,8,1,3,12,20,12,132,132,120,6,8,8,8, + 1,1,12,20,12,132,132,120,0,16,6,11,11,8,1,1, + 8,0,0,12,20,12,132,132,120,0,16,6,10,10,8,1, + 3,16,0,36,0,12,20,12,132,132,120,6,10,10,8,1, + 255,12,20,12,132,132,120,0,72,0,32,6,10,10,8,1, + 3,20,0,20,0,12,20,12,132,132,120,6,10,10,8,1, + 0,8,0,0,56,36,20,76,132,136,112,6,12,12,8,1, + 0,32,0,72,0,0,56,36,20,76,132,136,112,7,8,8, + 8,0,3,4,8,16,32,64,60,130,126,14,8,16,16,1, + 3,0,48,0,192,3,0,12,0,16,0,15,248,128,4,127, + 248,7,8,8,8,0,3,4,12,26,36,64,60,130,126,6, + 10,10,8,1,3,16,0,4,20,36,20,68,132,132,120,6, + 11,11,8,1,3,32,0,80,4,20,36,20,68,132,132,120, + 6,12,12,8,1,255,4,20,36,20,68,132,132,120,0,40, + 0,16,7,10,10,8,0,3,8,16,36,72,16,32,64,60, + 130,126,7,10,10,8,0,3,8,16,36,76,26,36,64,60, + 130,126,7,10,10,8,0,3,80,6,24,98,12,48,64,60, + 130,126,7,12,12,8,0,1,8,16,36,72,16,32,64,60, + 130,126,0,40,7,14,14,8,0,255,8,16,36,72,16,32, + 64,60,130,126,0,16,0,16,7,11,11,8,0,3,64,0, + 166,24,98,12,48,64,60,130,126,7,14,14,8,1,0,34, + 20,8,8,0,4,4,4,4,68,132,132,136,120,6,13,13, + 8,1,0,4,0,4,4,4,4,4,4,68,132,132,136,120, + 7,14,14,8,1,0,8,0,18,0,4,4,4,4,4,68, + 132,132,136,120,6,13,13,8,1,254,4,4,4,4,4,4, + 68,132,120,0,40,0,16,6,11,11,8,1,254,16,0,0, + 8,68,132,132,136,112,0,16,6,6,6,8,1,0,8,68, + 132,132,136,112,6,12,12,8,1,0,32,32,56,56,0,0, + 8,68,132,132,136,112,6,11,11,8,1,254,16,0,0,8, + 68,132,132,136,120,20,8,6,11,11,8,1,0,32,0,72, + 0,0,8,68,132,132,136,112,6,6,6,8,1,2,32,88, + 84,52,72,128,6,11,11,8,1,254,32,0,0,252,64,128, + 168,128,144,68,56,4,10,10,8,2,3,96,128,96,128,0, + 64,96,144,144,240,6,3,3,8,1,2,32,92,128,6,8, + 8,8,1,2,48,64,48,64,0,32,92,128,6,6,6,8, + 1,2,80,0,0,32,92,128,6,8,8,8,1,255,24,36, + 36,28,68,164,72,240,6,8,8,8,1,255,24,36,36,60, + 4,56,144,96,6,13,13,8,1,255,68,40,16,16,0,24, + 36,36,60,4,8,144,96,6,14,14,8,1,255,32,80,80, + 56,32,64,152,36,36,60,4,8,144,96,6,12,12,8,1, + 255,16,8,8,0,24,36,36,60,4,8,144,96,6,12,12, + 8,1,255,16,40,68,0,24,36,36,60,4,8,144,96,6, + 11,11,8,1,255,40,0,0,24,36,36,60,4,8,144,96, + 6,13,13,8,1,255,16,0,36,0,0,24,36,36,60,4, + 8,144,96,6,7,7,8,1,255,8,148,144,136,132,132,120, + 7,7,7,8,0,255,4,42,104,164,34,34,28,6,12,12, + 8,1,255,136,80,32,32,0,8,148,144,136,132,132,120,6, + 11,11,8,1,255,16,0,0,24,36,36,60,4,8,144,96, + 6,9,9,8,1,254,24,164,144,136,112,0,32,0,32,6, + 9,9,8,1,254,24,164,144,136,112,0,80,0,32,7,6, + 6,8,1,255,16,40,32,64,128,254,7,10,10,8,1,255, + 96,128,96,128,16,40,32,64,128,254,4,1,1,8,2,3, + 240,4,5,5,8,2,3,64,96,144,144,240,11,5,10,16, + 3,9,16,64,18,224,127,224,128,0,254,0,10,5,10,16, + 3,9,18,64,17,0,127,0,128,0,254,0,6,4,4,16, + 5,9,8,20,60,192,5,5,5,16,4,9,136,72,48,16, + 48,8,5,5,16,3,9,252,32,72,33,30,3,3,3,16, + 4,8,160,0,128,9,4,8,16,4,9,18,128,159,128,144, + 0,96,0,16,16,32,16,0,254,85,85,128,0,1,193,134, + 48,11,233,140,24,16,5,144,4,16,5,140,24,11,233,134, + 48,1,193,128,0,0,1,170,170,15,15,30,16,1,254,1, + 0,2,128,63,248,40,40,48,24,35,136,100,76,164,74,100, + 76,35,136,48,24,40,40,63,248,2,128,1,0,3,4,4, + 16,6,9,96,160,160,96,4,5,5,16,6,9,96,144,144, + 144,96,6,3,3,16,5,10,252,48,64,3,5,5,16,6, + 9,96,224,128,128,64,9,4,8,16,4,254,18,128,159,128, + 144,0,96,0,6,2,2,16,5,10,12,240,5,4,4,8, + 2,9,24,24,16,224,7,4,4,8,1,9,32,64,128,254, + 7,4,4,16,3,9,32,64,128,254,6,4,4,16,5,9, + 16,132,132,124,15,15,30,16,1,254,1,0,2,128,5,64, + 10,160,21,80,42,168,84,84,42,168,42,168,42,168,43,168, + 40,40,47,232,96,12,255,254,5,5,5,16,5,9,32,80, + 136,80,32,5,5,5,16,5,254,32,80,136,80,32,2,2, + 2,16,7,11,192,192,2,4,4,16,7,254,192,128,128,64, + 6,9,9,8,1,3,16,40,68,0,16,8,4,132,248,7, + 11,11,8,1,255,8,20,34,0,8,4,4,4,8,144,96, + 3,3,3,8,2,5,64,224,64,4,9,9,8,2,2,128, + 128,64,64,32,32,16,16,16,5,9,9,8,2,2,136,144, + 96,64,32,32,16,16,16,7,9,9,8,1,2,146,164,120, + 64,32,32,16,16,16,6,9,9,8,1,2,48,72,192,228, + 88,64,32,32,32,7,9,9,8,1,1,16,16,40,40,68, + 68,146,170,198,6,8,8,8,1,2,56,68,64,64,48,12, + 48,192,7,9,9,8,1,2,130,130,68,68,40,40,16,16, + 16,7,9,9,8,1,2,16,16,16,40,40,68,68,130,130, + 7,9,9,8,1,2,48,72,136,152,104,4,4,2,2,7, + 12,12,8,1,0,16,0,36,0,0,2,42,42,188,144,148, + 96,7,9,9,8,1,0,8,0,0,12,50,156,144,148,96, + 6,12,12,8,1,254,16,0,0,48,72,64,56,64,144,128, + 132,120,4,10,10,8,2,254,112,128,240,64,128,0,80,80, + 80,80,6,8,8,8,1,254,56,12,124,128,148,148,148,148, + 10,12,24,16,1,1,4,0,10,0,17,0,4,0,3,0, + 6,128,10,64,10,64,6,64,25,128,96,0,128,0}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 3, '1' Height: 12 + Calculated Max Values w=16 h=16 x=12 y=11 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 3 descent=-2 + X Font ascent =12 descent=-2 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_18_19[6498] U8G_SECTION(".progmem.u8g_font_unifont_18_19") = { + 0,16,16,0,254,3,7,129,10,5,0,255,254,14,254,12, + 254,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,74,81,234,80,90,81,201,158,0,1,128,0,0,1,128, + 0,0,1,128,0,85,85,8,4,4,16,4,9,152,91,35, + 28,2,2,2,16,7,11,192,192,2,5,5,16,12,3,192, + 192,0,192,192,14,15,30,16,2,255,32,0,31,0,0,128, + 57,252,68,192,4,192,12,192,56,192,8,192,135,192,134,192, + 78,192,60,192,0,192,0,64,15,12,24,16,1,255,57,254, + 68,192,4,192,12,192,56,192,8,192,135,192,134,192,78,192, + 60,192,0,192,0,64,15,12,24,16,1,255,57,254,68,204, + 4,204,12,204,56,204,8,204,135,204,134,204,78,204,60,204, + 0,204,0,68,16,13,26,16,0,254,255,255,0,192,0,192, + 15,192,24,0,24,0,15,224,0,48,3,48,5,176,7,224, + 0,64,0,32,16,16,32,16,0,254,3,192,6,32,1,0, + 255,255,0,192,0,192,15,192,24,0,24,0,15,224,0,48, + 3,48,5,176,7,224,0,64,0,32,16,12,24,16,0,255, + 255,255,1,128,0,192,0,192,1,192,15,128,65,128,64,192, + 32,192,16,192,9,192,7,128,16,12,24,16,0,255,255,255, + 1,128,0,192,0,192,1,192,15,156,65,178,64,226,32,194, + 16,198,9,196,7,128,16,13,26,16,0,254,255,255,1,128, + 57,128,101,152,3,152,7,248,31,136,57,136,33,156,1,184, + 1,160,0,160,0,30,16,12,24,16,0,255,255,255,0,32, + 0,32,56,32,116,248,99,204,99,12,48,12,16,120,12,192, + 2,128,0,124,16,16,32,16,0,254,0,152,0,112,0,0, + 255,255,12,48,12,48,12,48,12,48,12,96,4,0,2,0, + 1,128,0,96,0,16,0,24,0,24,16,16,32,16,0,254, + 16,0,15,224,0,16,255,255,12,48,12,48,12,48,12,48, + 12,96,4,0,2,0,1,128,0,96,0,16,0,24,0,24, + 16,13,26,16,0,254,255,255,12,48,12,48,12,48,12,48, + 12,96,4,0,2,0,1,128,0,96,0,16,0,24,0,24, + 16,16,32,16,0,254,15,0,0,128,0,64,255,255,12,48, + 12,48,12,48,12,48,12,96,4,0,2,0,1,128,0,96, + 0,16,0,24,0,24,15,15,30,16,1,255,0,76,0,60, + 0,0,57,254,68,204,4,204,12,204,56,204,8,204,135,204, + 134,204,78,204,60,204,0,204,0,68,15,15,30,16,1,255, + 2,0,1,240,0,8,57,254,68,204,4,204,12,204,56,204, + 8,204,135,204,134,204,78,204,60,204,0,204,0,68,15,15, + 30,16,1,255,1,192,0,32,0,16,57,254,68,204,4,204, + 12,204,56,204,8,204,135,204,134,204,78,204,60,204,0,204, + 0,68,15,15,30,16,1,255,0,224,1,208,0,40,57,254, + 68,204,4,204,12,204,56,204,8,204,135,204,134,204,78,204, + 60,204,0,204,0,68,16,12,24,16,0,255,255,255,1,128, + 1,128,29,128,51,224,35,144,39,152,29,152,1,152,1,152, + 1,128,0,128,16,12,24,16,0,255,255,255,8,24,8,24, + 9,216,59,56,58,24,18,56,17,216,8,24,6,24,1,152, + 0,8,16,12,24,16,0,255,255,255,1,152,1,152,1,152, + 1,152,7,152,3,152,1,152,0,152,0,24,0,24,0,8, + 16,12,24,16,0,255,255,255,12,24,12,24,7,216,2,24, + 4,24,4,56,4,120,3,216,0,24,0,24,0,8,16,11, + 22,16,0,0,255,255,0,96,0,96,15,224,24,0,24,4, + 15,206,0,100,16,96,8,96,7,192,16,12,24,16,0,255, + 255,255,0,24,0,24,0,24,31,248,3,24,6,56,6,120, + 3,216,0,24,0,24,0,8,16,13,26,16,0,254,255,255, + 0,16,0,16,60,120,112,228,96,196,32,68,31,44,12,24, + 24,56,24,100,7,134,0,6,16,12,24,16,0,255,255,255, + 0,24,0,24,0,24,3,248,17,152,8,216,8,216,7,152, + 0,24,0,24,0,8,16,12,24,16,0,255,255,255,3,24, + 3,24,31,24,48,24,48,24,31,248,1,24,13,24,22,24, + 29,24,0,136,16,12,24,16,0,255,255,255,0,24,0,24, + 7,24,5,152,33,184,33,248,33,216,19,152,15,24,0,24, + 0,8,16,11,22,16,0,0,255,255,0,192,0,192,0,192, + 7,192,12,0,24,0,24,0,24,0,12,16,7,224,16,12, + 24,16,0,255,255,255,1,128,1,128,1,128,3,128,7,96, + 12,16,8,24,8,24,8,56,4,112,3,224,16,11,22,16, + 0,0,255,255,0,24,0,24,3,248,6,0,6,0,3,240, + 0,24,4,24,2,24,1,240,16,12,24,16,0,255,255,255, + 0,96,0,96,7,224,12,0,24,0,24,192,25,160,9,16, + 5,16,3,48,1,224,16,12,24,16,0,255,255,255,25,152, + 25,152,25,152,25,152,25,152,9,152,7,24,0,24,0,24, + 0,24,0,8,16,12,24,16,0,255,255,255,0,24,0,24, + 0,24,7,248,14,24,12,24,12,24,6,24,2,24,1,24, + 0,136,13,12,24,16,3,255,227,248,216,192,204,192,76,192, + 28,192,120,192,97,192,35,192,30,192,0,192,0,192,0,64, + 16,12,24,16,0,255,255,255,0,24,0,24,0,24,1,248, + 2,0,6,0,6,24,2,40,1,240,0,8,0,4,13,12, + 24,16,3,255,115,248,200,192,192,192,192,192,96,192,28,192, + 48,192,96,192,97,192,99,192,30,192,0,64,16,12,24,16, + 0,255,255,255,0,24,0,24,0,24,7,248,6,24,6,24, + 2,24,0,24,0,24,0,24,0,8,16,12,24,16,0,255, + 255,255,0,24,0,24,0,24,7,248,6,24,6,24,2,24, + 0,24,1,24,3,152,1,8,16,12,24,16,0,255,255,255, + 6,24,6,24,6,24,6,24,6,24,2,56,1,216,0,24, + 0,24,0,24,0,8,16,12,24,16,0,255,255,255,49,128, + 49,128,49,128,49,240,49,200,19,132,15,132,1,132,1,140, + 1,140,0,128,16,12,24,16,0,255,255,255,0,24,0,24, + 7,216,14,120,13,24,12,152,12,120,7,248,0,24,0,24, + 0,8,14,12,24,16,2,255,227,252,216,96,200,96,76,96, + 60,96,12,96,31,224,28,96,12,96,0,96,0,96,0,32, + 16,12,24,16,0,255,255,255,6,24,6,24,6,24,6,24, + 6,24,15,248,6,24,2,24,0,24,0,24,0,8,16,12, + 24,16,0,255,255,255,3,24,3,24,3,24,3,24,6,24, + 4,56,4,120,3,216,0,24,0,24,0,8,16,12,24,16, + 0,255,255,255,0,192,0,192,0,192,3,192,3,128,3,128, + 1,0,0,128,0,64,0,32,0,24,16,12,24,16,0,255, + 255,255,0,192,0,192,0,192,3,192,3,128,3,128,1,0, + 0,128,4,64,14,32,4,24,16,12,24,16,0,255,255,255, + 0,24,0,24,28,56,58,248,49,216,49,152,24,24,8,24, + 4,24,3,24,0,8,16,11,22,16,0,0,255,255,0,48, + 0,48,0,112,14,200,25,140,49,140,49,140,49,152,19,112, + 14,0,16,13,26,16,0,254,255,255,0,48,0,48,0,112, + 14,200,25,140,49,140,49,140,49,152,19,112,14,0,0,192, + 0,192,16,12,24,16,0,255,255,255,0,24,0,24,3,216, + 15,56,12,24,12,56,4,120,3,216,0,24,0,24,0,8, + 16,12,24,16,0,255,255,255,6,24,6,24,31,24,1,152, + 1,152,25,152,21,24,30,24,2,24,1,24,0,136,16,12, + 24,16,0,255,255,255,12,24,14,24,13,24,12,152,12,88, + 12,56,6,56,1,216,0,24,0,24,0,8,16,12,24,16, + 0,255,255,255,3,24,3,24,3,24,11,24,15,24,14,248, + 4,24,4,24,2,24,1,24,0,136,16,12,24,16,0,255, + 255,255,0,24,0,24,7,248,12,0,12,0,6,240,1,152, + 3,16,3,0,1,128,0,252,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 2,2,2,16,7,255,192,192,9,11,22,16,7,0,63,128, + 64,0,64,0,96,0,48,0,24,0,8,0,12,0,12,0, + 156,0,120,0,6,13,13,16,10,254,252,48,48,48,48,48, + 48,48,48,48,48,48,16,8,14,14,16,0,0,60,98,49, + 252,48,48,48,48,48,48,48,48,48,16,9,16,32,16,7, + 254,120,0,132,0,132,0,31,128,6,0,6,0,6,0,6, + 0,6,0,6,0,6,0,6,0,6,0,6,0,6,0,2, + 0,6,3,3,16,4,255,152,68,56,6,3,3,16,6,255, + 112,136,100,4,3,3,16,6,255,96,128,112,3,5,5,16, + 6,255,96,128,96,128,96,5,3,3,16,5,10,136,72,48, + 5,3,3,16,4,10,128,112,8,5,3,3,16,4,10,224, + 16,8,6,4,4,16,3,9,112,8,228,28,6,16,16,16, + 10,254,136,120,0,252,48,48,48,48,48,48,48,48,48,48, + 48,16,8,16,16,16,8,254,128,120,4,63,12,12,12,12, + 12,12,12,12,12,12,12,4,8,16,16,16,8,254,240,8, + 4,63,12,12,12,12,12,12,12,12,12,12,12,4,9,16, + 32,16,7,254,120,0,244,0,10,0,31,128,6,0,6,0, + 6,0,6,0,6,0,6,0,6,0,6,0,6,0,6,0, + 6,0,2,0,5,3,3,16,6,255,224,16,8,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,14,14,28,16,1,0,0,96,0,96,0, + 0,113,8,248,240,4,0,4,24,24,60,48,36,8,36,132, + 124,135,216,121,128,48,0,1,3,3,16,8,10,128,128,128, + 4,1,1,16,6,0,240,3,3,3,16,6,10,128,64,32, + 3,3,3,16,7,10,32,64,128,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,16,13,26,16,0,254,255,255,0,192,0, + 192,14,192,25,248,17,200,19,204,14,204,0,204,0,204,4, + 192,14,64,4,0,16,13,26,16,0,254,255,255,8,24,8, + 24,9,216,59,56,58,24,18,56,17,216,8,24,4,24,0, + 152,1,200,0,128,16,13,26,16,0,254,255,255,1,152,1, + 152,1,152,1,152,7,152,3,152,1,152,0,152,0,24,0, + 152,1,200,0,128,16,13,26,16,0,254,255,255,0,24,0, + 24,0,24,3,248,17,152,8,216,8,216,7,152,0,24,0, + 152,1,200,0,128,16,13,26,16,0,254,255,255,0,24,0, + 24,3,248,6,0,6,0,3,240,0,24,4,24,3,240,0, + 0,0,192,0,192,16,13,26,16,0,254,255,255,0,96,0, + 96,7,224,12,0,24,224,25,144,25,16,13,48,7,224,0, + 0,1,128,1,128,16,13,26,16,0,254,255,255,49,128,49, + 128,49,128,49,240,49,200,19,132,15,132,1,132,1,140,9, + 140,28,128,8,0,16,13,26,16,0,254,255,255,3,24,3, + 24,3,24,3,24,6,24,4,56,4,120,3,216,0,24,1, + 24,3,136,1,0,16,13,26,16,0,254,255,255,3,0,3, + 0,51,24,75,40,7,240,15,24,51,8,67,24,3,48,3, + 28,1,16,0,14,16,13,26,16,0,254,255,255,0,32,0, + 32,30,112,49,152,49,152,16,48,8,96,4,192,0,60,0, + 192,0,192,0,60,8,5,5,16,4,255,72,146,130,68,3, + 8,6,6,16,4,254,72,146,132,67,4,3,2,12,12,16, + 7,255,128,192,192,192,192,192,192,192,192,192,192,64,5,12, + 12,16,6,255,144,216,216,216,216,216,216,216,216,216,216,72, + 8,7,7,16,4,2,60,78,199,195,227,114,60,6,13,13, + 16,5,254,112,232,204,204,76,60,24,48,96,32,16,8,4, + 9,13,26,16,4,254,252,0,226,0,1,0,1,0,1,0, + 3,0,54,0,44,0,56,0,4,0,2,0,1,0,0,128, + 8,13,13,16,4,254,252,226,2,2,60,2,1,51,46,60, + 4,2,1,12,12,24,16,2,255,128,16,64,48,32,96,16, + 192,9,128,7,0,6,0,13,0,9,128,9,128,9,128,7, + 0,8,13,13,16,4,254,192,195,195,67,62,12,12,104,88, + 120,4,2,1,8,13,13,16,4,254,60,192,128,192,124,16, + 32,35,51,15,4,4,2,11,11,22,16,3,0,128,0,135, + 0,142,192,140,64,68,96,67,224,64,32,32,32,32,64,24, + 192,7,0,10,10,20,16,3,1,255,192,32,0,64,0,128, + 0,128,0,131,0,135,128,124,128,56,128,0,128,8,12,12, + 16,4,255,56,100,98,97,32,56,72,192,192,192,32,31,5, + 4,4,16,6,3,112,136,136,112,2,2,2,16,8,6,192, + 192,15,15,30,16,1,255,2,0,1,32,0,192,57,254,68, + 192,4,192,12,192,56,192,8,192,135,192,134,192,78,192,60, + 192,0,192,0,64,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,16,12,24,16,0,255,255,255,1,152,1, + 152,1,152,1,152,7,152,3,152,1,152,0,152,0,24,0, + 24,15,248,16,12,24,16,0,255,255,255,0,24,0,24,0, + 24,3,248,17,152,8,216,8,216,7,152,0,24,0,24,31, + 248,8,13,13,16,4,254,124,226,193,1,1,3,62,60,48, + 48,48,48,16,16,13,26,16,0,254,255,255,0,24,0,24, + 3,248,6,0,6,0,3,240,0,24,4,24,2,24,1,240, + 0,0,15,254,16,12,24,16,0,255,255,255,0,24,0,24, + 7,216,14,120,13,24,12,152,12,120,7,248,0,24,0,24, + 15,248,6,14,14,8,1,255,168,84,168,84,168,84,168,84, + 168,84,168,84,168,84,6,4,4,16,5,9,48,180,132,120, + 5,8,8,16,11,0,96,144,96,0,192,96,48,8,4,7, + 7,16,11,1,96,144,96,0,96,144,96,6,14,14,8,1, + 255,168,84,168,84,168,84,168,84,168,84,168,84,168,84,16, + 12,24,16,0,255,255,255,0,12,64,12,67,140,71,204,71, + 236,99,44,32,108,48,124,24,220,15,140,0,4,16,13,26, + 16,0,255,0,6,255,247,0,110,64,102,70,102,79,102,79, + 102,69,102,65,102,97,102,51,230,30,102,0,34,16,15,30, + 16,0,255,32,0,31,192,0,32,255,255,0,0,15,192,24, + 96,60,48,60,48,24,48,0,96,63,192,7,0,1,192,0, + 124,16,15,30,16,0,255,32,0,31,240,0,8,255,255,30, + 0,63,12,59,30,25,56,1,248,1,240,3,144,79,16,60, + 16,16,24,0,14,16,15,30,16,0,255,16,0,15,224,0, + 16,255,255,3,0,3,0,67,0,67,16,67,56,99,108,33, + 204,48,12,24,12,14,24,3,240,16,15,30,16,0,255,16, + 0,15,224,0,16,255,255,3,0,3,0,83,0,83,16,83, + 56,83,108,73,204,40,12,36,12,18,24,15,240,15,14,28, + 16,1,255,64,0,228,0,230,206,133,204,121,204,3,204,14, + 204,120,204,96,236,120,252,14,220,3,204,1,204,0,68,14, + 14,28,16,1,255,64,0,128,0,128,0,64,0,127,192,31, + 240,0,56,15,12,24,140,56,76,56,76,56,76,16,216,3, + 240,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,14,13,26,16,1,255,0, + 48,0,248,1,140,3,12,135,140,135,140,131,12,128,12,192, + 12,64,108,96,156,51,12,14,4,14,15,30,16,1,255,0, + 8,0,16,0,16,0,216,3,236,6,52,140,52,158,52,158, + 52,140,56,192,48,65,176,98,112,60,48,24,16,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,14,13,26,16,1,255,0,240,3,24,6, + 12,14,12,142,12,134,120,192,248,64,120,96,12,48,12,24, + 12,12,24,7,240,14,15,30,16,1,255,0,8,0,16,0, + 16,7,216,8,108,28,52,28,52,156,52,137,228,131,248,193, + 224,64,48,96,48,48,112,31,224,16,12,24,16,0,255,255, + 255,0,96,0,96,1,248,7,100,60,98,48,98,60,110,7, + 108,1,224,0,224,0,32,14,13,26,16,2,255,64,0,226, + 60,227,48,197,48,121,48,1,48,6,48,120,48,126,48,1, + 176,0,112,0,48,0,16,14,12,24,16,2,255,62,124,113, + 96,224,224,224,96,252,96,70,96,6,96,6,96,28,96,120, + 96,32,96,0,32,16,12,24,16,0,255,255,255,24,24,48, + 24,56,24,31,152,1,152,6,24,12,24,31,24,1,216,0, + 56,0,8,12,13,26,16,2,255,32,0,35,192,22,64,12, + 64,15,128,140,0,136,32,136,112,199,176,64,48,96,48,48, + 96,31,128,16,12,24,16,0,255,255,255,24,0,24,0,28, + 0,27,0,24,252,24,12,24,12,24,12,24,24,28,48,15, + 192,16,12,24,16,0,255,255,255,24,0,24,0,28,0,27, + 224,24,56,24,104,28,200,15,16,0,96,1,248,0,14,16, + 12,24,16,0,255,255,255,1,240,3,28,70,15,76,2,76, + 196,79,36,102,44,32,44,48,100,24,196,15,131,16,12,24, + 16,0,255,255,231,0,102,0,102,1,230,7,102,60,102,48, + 102,60,102,7,126,1,238,0,230,0,34,14,13,26,16,1, + 255,7,0,13,128,25,176,49,248,57,204,185,140,145,184,129, + 140,193,204,199,248,111,176,121,128,48,128,16,15,30,16,0, + 255,16,0,15,192,0,32,255,255,24,0,24,0,24,0,24, + 96,24,240,24,112,24,48,24,96,24,192,15,128,7,0,16, + 15,30,16,0,255,16,0,15,0,0,128,255,255,0,128,0, + 128,0,192,1,192,1,96,35,48,58,24,20,24,24,24,12, + 48,7,224,16,12,24,16,0,255,255,255,3,0,3,0,67, + 0,67,16,67,56,99,108,33,204,48,12,24,12,14,24,3, + 240,16,12,24,16,0,255,255,255,24,0,24,0,24,0,24, + 96,24,240,24,112,24,48,24,96,24,192,15,128,7,0,13, + 13,26,16,3,255,28,96,62,120,97,96,192,224,192,224,224, + 96,224,96,64,96,0,96,0,96,0,96,0,96,0,32,16, + 12,24,16,0,255,255,255,0,0,65,248,67,12,67,132,67, + 134,99,134,33,6,48,6,24,12,12,28,7,240,15,13,26, + 16,1,255,60,0,98,62,241,48,241,48,97,48,1,48,6, + 48,120,48,126,48,1,176,0,112,0,48,0,16,16,12,24, + 16,0,255,255,255,12,0,12,0,12,120,12,240,13,224,13, + 96,15,96,14,96,14,96,12,48,8,28,12,13,26,16,4, + 255,96,0,240,240,224,192,128,192,99,192,30,192,56,192,224, + 192,248,192,14,192,3,192,1,192,0,64,16,12,24,16,0, + 255,255,255,0,24,0,24,0,24,0,24,30,24,63,152,60, + 216,56,120,0,56,0,24,0,8,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,15,13,26, + 16,1,255,14,48,31,190,48,240,96,112,240,240,155,176,14, + 48,24,48,32,48,0,48,0,48,0,48,0,16,16,12,24, + 16,0,255,255,255,16,0,56,120,12,100,6,98,12,98,24, + 110,48,108,63,96,1,224,0,96,0,32,16,12,24,16,0, + 255,255,255,0,24,0,24,0,120,3,216,7,24,28,24,31, + 24,1,216,0,120,0,56,0,8,16,12,24,16,0,255,255, + 255,0,0,66,16,71,8,71,12,70,20,99,230,32,6,48, + 6,24,12,12,28,7,240,16,12,24,16,0,255,255,255,12, + 24,28,24,14,24,3,24,3,24,3,24,15,216,30,120,12, + 56,0,24,0,8,16,12,24,16,0,255,255,255,8,48,28, + 48,6,48,3,48,6,48,12,48,24,48,31,176,0,240,0, + 48,0,16,16,12,24,16,0,255,255,255,0,24,0,120,3, + 216,7,24,28,24,31,24,1,216,2,120,7,56,7,24,2, + 8,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,16,12,24,16,0,255,255,255,0,6,0, + 6,28,22,62,62,99,102,65,198,65,198,64,134,124,6,60, + 6,24,2,6,14,14,8,1,255,168,84,168,84,168,84,168, + 84,168,84,168,84,168,84,6,14,14,8,1,255,168,84,168, + 84,168,84,168,84,168,84,168,84,168,84,6,14,14,8,1, + 255,168,84,168,84,168,84,168,84,168,84,168,84,168,84,15, + 13,26,16,1,255,112,204,249,238,143,60,143,28,31,140,63, + 204,25,140,0,12,0,12,0,12,0,12,0,12,0,4,16, + 12,24,16,0,255,255,255,28,24,14,24,7,152,1,216,6, + 120,28,24,31,24,1,216,0,120,0,56,0,8,16,12,24, + 16,0,255,255,255,16,12,56,12,28,12,6,12,2,204,1, + 236,3,28,102,12,60,12,24,12,0,4,16,12,24,16,0, + 255,255,255,0,0,15,192,24,96,60,48,60,48,24,48,0, + 96,63,192,7,0,1,192,0,124,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,2,2,2,16,7,255,192,192,14,12,24,16,0,255,240, + 0,8,0,15,192,28,96,60,48,60,48,24,48,0,96,63, + 192,7,0,1,192,0,124,5,10,10,16,11,255,48,184,112, + 48,48,48,48,48,48,16,13,14,28,16,0,255,15,128,63, + 224,96,16,96,8,32,0,248,0,48,0,48,0,48,0,48, + 0,48,0,48,0,48,0,16,0,12,14,28,16,4,255,63, + 0,65,128,128,192,190,64,65,64,1,240,0,192,0,192,0, + 192,0,192,0,192,0,192,0,192,0,64,6,5,5,16,5, + 254,4,104,144,104,4,6,5,5,16,6,254,96,128,112,8, + 4,5,5,5,16,5,254,24,96,128,96,24,3,5,5,16, + 6,255,96,128,96,128,64,6,14,14,8,1,255,168,84,168, + 84,168,84,168,84,168,84,168,84,168,84,6,14,14,8,1, + 255,168,84,168,84,168,84,168,84,168,84,168,84,168,84,5, + 9,9,16,0,255,248,24,48,96,64,64,64,88,56,5,12, + 12,16,0,255,128,112,8,248,24,48,96,64,64,64,88,56, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,16,10,20,16,0,255,0,6, + 248,23,24,14,48,6,96,6,64,6,64,6,64,6,88,6, + 56,2,16,13,26,16,0,255,0,128,0,112,0,8,0,4, + 248,23,24,14,48,6,96,6,64,6,64,6,64,6,88,6, + 56,2,5,3,3,16,6,0,192,48,8,8,12,12,16,4, + 255,56,92,204,236,216,192,96,56,12,6,3,1,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,8,13,13, + 16,8,255,128,112,8,4,23,14,6,6,6,6,6,6,2, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 16,13,26,16,0,254,255,255,3,0,67,16,67,56,99,108, + 35,204,49,140,24,12,14,24,3,240,0,0,0,192,0,192, + 16,13,26,16,0,254,255,255,12,0,12,0,12,0,12,48, + 12,120,12,56,12,48,7,224,3,192,0,0,1,128,1,128, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,16,13,26,16,0,254,255,255,4,24,14,24, + 3,24,1,152,3,24,6,24,12,24,15,216,0,120,1,24, + 3,136,1,0,15,15,30,16,1,254,64,0,228,0,230,206, + 133,204,121,204,3,204,14,204,120,204,96,236,120,252,14,220, + 123,204,97,204,120,68,14,0,8,14,14,16,4,255,128,124, + 3,121,197,205,158,128,124,3,121,197,205,158,7,5,5,16, + 5,255,124,2,114,202,220,10,6,12,16,5,255,3,128,112, + 64,10,64,77,64,173,128,176,0,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,10,11,22,16,3,0,30,0,63,0,97,128,192,192,192, + 192,192,192,192,192,192,192,97,128,63,0,30,0,9,12,24, + 16,4,0,64,0,64,0,96,0,56,0,14,0,3,0,1, + 128,97,128,225,128,225,128,195,0,126,0,10,11,22,16,3, + 0,224,0,56,0,14,0,3,0,3,0,227,0,126,0,28, + 0,6,0,1,128,0,64,12,12,24,16,2,255,131,192,132, + 96,136,48,140,48,142,48,142,48,134,48,64,48,64,96,32, + 96,17,192,15,0,11,13,26,16,2,255,31,0,63,128,96, + 192,64,64,96,192,49,128,31,0,96,192,192,96,192,96,224, + 224,127,192,31,0,11,13,26,16,2,255,7,0,30,0,57, + 96,112,192,97,128,195,0,198,0,198,0,198,0,198,0,99, + 96,48,192,31,128,12,12,24,16,2,255,28,0,12,0,12, + 0,140,0,140,96,140,160,141,176,199,48,64,48,96,48,48, + 96,31,192,9,13,26,16,4,255,60,0,126,0,195,0,195, + 0,199,0,127,0,59,0,3,0,3,0,3,0,3,0,3, + 0,1,128,13,13,26,16,1,255,224,0,96,0,96,0,96, + 8,103,240,127,192,112,96,96,96,96,96,96,96,112,192,63, + 128,30,0,12,15,30,16,2,254,128,0,128,0,96,0,60, + 0,15,0,3,192,0,224,0,48,60,48,66,48,225,48,225, + 48,225,96,65,192,1,0,16,12,24,16,0,255,255,255,0, + 24,0,24,0,120,3,216,7,152,28,120,31,24,1,216,0, + 120,0,56,0,8,16,13,26,16,0,254,255,255,0,24,0, + 24,0,120,3,216,7,24,28,24,31,24,1,216,28,120,7, + 56,1,136,0,64,9,8,16,16,3,3,224,0,248,0,124, + 0,14,0,3,0,1,0,0,128,0,128,12,13,26,16,1, + 255,48,0,120,0,204,0,12,0,31,240,12,0,12,96,12, + 240,12,240,12,48,12,96,7,192,3,128,9,8,16,16,3, + 2,0,128,0,128,1,0,3,0,14,0,124,0,248,0,224, + 0,12,9,18,16,2,2,56,16,124,16,226,32,242,96,242, + 192,98,192,7,128,15,0,14,0,12,13,26,16,2,255,0, + 16,0,16,0,16,56,16,124,16,126,16,62,16,6,48,12, + 96,248,224,193,192,127,128,30,0,2,13,13,16,8,255,128, + 192,192,192,192,192,192,192,192,192,192,192,64,11,13,26,16, + 2,255,224,0,96,0,96,192,97,192,99,192,98,192,102,192, + 108,192,120,192,112,192,96,192,0,192,0,96,11,10,20,16, + 3,1,31,0,63,128,96,192,192,96,192,96,192,96,192,96, + 96,192,63,128,31,0,14,9,18,16,1,255,0,4,2,4, + 135,8,135,8,66,16,96,48,48,96,31,192,15,0,6,14, + 14,8,1,255,168,84,168,84,168,84,168,84,168,84,168,84, + 168,84,6,14,14,8,1,255,168,84,168,84,168,84,168,84, + 168,84,168,84,168,84,6,14,14,8,1,255,168,84,168,84, + 168,84,168,84,168,84,168,84,168,84,6,14,14,8,1,255, + 168,84,168,84,168,84,168,84,168,84,168,84,168,84,6,14, + 14,8,1,255,168,84,168,84,168,84,168,84,168,84,168,84, + 168,84}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 10, '1' Height: 8 + Calculated Max Values w=16 h=16 x= 4 y= 1 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent= 0 + X Font ascent =14 descent= 0 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_2_3[4628] U8G_SECTION(".progmem.u8g_font_unifont_2_3") = { + 0,16,16,0,254,10,4,220,7,27,0,255,0,14,254,14, + 0,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,74,81,234,80,90,81,201,158,0,1,128,0,0,1,128, + 0,0,1,128,0,85,85,6,11,11,8,1,0,120,0,0, + 120,132,4,124,132,132,140,116,6,14,14,8,1,0,132,132, + 120,0,48,72,72,132,132,252,132,132,132,132,6,13,13,8, + 1,0,132,132,120,0,0,120,132,4,124,132,132,140,116,7, + 12,12,8,1,254,48,72,72,132,132,252,132,132,132,132,8, + 6,7,10,10,8,1,254,120,132,4,124,132,132,140,116,8, + 6,6,14,14,8,1,0,24,96,0,0,120,132,132,128,128, + 128,128,132,132,120,6,12,12,8,1,0,24,96,0,0,120, + 132,128,128,128,128,132,120,6,14,14,8,1,0,48,72,0, + 0,120,132,132,128,128,128,128,132,132,120,6,12,12,8,1, + 0,48,72,0,0,120,132,128,128,128,128,132,120,6,14,14, + 8,1,0,32,32,0,0,120,132,132,128,128,128,128,132,132, + 120,6,12,12,8,1,0,32,32,0,0,120,132,128,128,128, + 128,132,120,6,14,14,8,1,0,72,48,0,0,120,132,132, + 128,128,128,128,132,132,120,6,12,12,8,1,0,72,48,0, + 0,120,132,128,128,128,128,132,120,6,14,14,8,1,0,144, + 96,0,0,240,136,132,132,132,132,132,132,136,240,6,14,14, + 8,1,0,72,48,0,4,4,4,116,140,132,132,132,132,140, + 116,7,10,10,8,0,0,120,68,66,66,242,66,66,66,68, + 120,7,12,12,8,1,0,4,30,4,4,116,140,132,132,132, + 132,140,116,6,13,13,8,1,0,120,0,0,252,128,128,128, + 248,128,128,128,128,252,6,11,11,8,1,0,120,0,0,120, + 132,132,252,128,128,132,120,6,14,14,8,1,0,132,132,120, + 0,252,128,128,128,248,128,128,128,128,252,6,12,12,8,1, + 0,132,132,120,0,120,132,132,252,128,128,132,120,6,14,14, + 8,1,0,32,32,0,0,252,128,128,128,248,128,128,128,128, + 252,6,12,12,8,1,0,32,32,0,0,120,132,132,252,128, + 128,132,120,6,12,12,8,1,254,252,128,128,128,248,128,128, + 128,128,252,16,12,6,10,10,8,1,254,120,132,132,252,128, + 128,132,120,32,24,6,14,14,8,1,0,72,48,0,0,252, + 128,128,128,248,128,128,128,128,252,6,12,12,8,1,0,72, + 48,0,0,120,132,132,252,128,128,132,120,6,14,14,8,1, + 0,48,72,0,0,120,132,132,128,128,156,132,132,140,116,6, + 14,14,8,1,254,48,72,0,4,116,136,136,136,112,64,120, + 132,132,120,6,14,14,8,1,0,132,132,120,0,120,132,132, + 128,128,156,132,132,140,116,6,15,15,8,1,254,132,132,120, + 0,4,116,136,136,136,112,64,120,132,132,120,6,14,14,8, + 1,0,32,32,0,0,120,132,132,128,128,156,132,132,140,116, + 6,14,14,8,1,254,32,32,0,4,116,136,136,136,112,64, + 120,132,132,120,6,12,12,8,1,254,120,132,132,128,128,156, + 132,132,140,116,16,96,6,14,14,8,1,254,24,32,0,4, + 116,136,136,136,112,64,120,132,132,120,6,14,14,8,1,0, + 48,72,0,0,132,132,132,132,252,132,132,132,132,132,6,14, + 14,8,1,0,96,144,0,128,128,128,184,196,132,132,132,132, + 132,132,8,10,10,8,0,0,66,66,255,66,66,126,66,66, + 66,66,7,11,11,8,0,1,64,240,64,64,92,98,66,66, + 66,66,66,6,14,14,8,1,0,100,152,0,0,124,16,16, + 16,16,16,16,16,16,124,6,12,12,8,1,0,100,152,0, + 0,48,16,16,16,16,16,16,124,5,13,13,8,2,0,240, + 0,0,248,32,32,32,32,32,32,32,32,248,5,11,11,8, + 2,0,240,0,0,96,32,32,32,32,32,32,248,6,14,14, + 8,1,0,132,132,120,0,124,16,16,16,16,16,16,16,16, + 124,6,12,12,8,1,0,132,132,120,0,48,16,16,16,16, + 16,16,124,5,12,12,8,2,254,248,32,32,32,32,32,32, + 32,32,248,32,24,5,13,13,8,2,254,32,32,0,96,32, + 32,32,32,32,32,248,32,24,5,14,14,8,2,0,32,32, + 0,0,248,32,32,32,32,32,32,32,32,248,5,8,8,8, + 2,0,96,32,32,32,32,32,32,248,6,10,10,8,1,0, + 132,132,132,132,132,132,4,4,132,120,5,14,14,8,2,254, + 136,136,0,0,136,136,136,136,136,136,104,8,136,112,7,14, + 14,8,1,0,24,36,0,0,62,8,8,8,8,8,8,136, + 136,112,6,14,14,8,1,254,24,36,0,0,24,8,8,8, + 8,8,8,8,144,96,7,12,12,8,0,254,66,68,72,80, + 96,96,80,72,68,66,32,192,7,12,12,8,0,254,64,64, + 68,72,80,96,80,72,68,66,32,192,6,8,8,8,1,0, + 132,136,144,224,224,144,136,132,6,14,14,8,1,0,48,192, + 0,0,128,128,128,128,128,128,128,128,128,252,5,14,14,8, + 2,0,48,192,0,0,96,32,32,32,32,32,32,32,32,248, + 6,12,12,8,1,254,128,128,128,128,128,128,128,128,128,252, + 16,96,5,12,12,8,2,254,96,32,32,32,32,32,32,32, + 32,248,32,192,6,14,14,8,1,0,72,48,0,0,128,128, + 128,128,128,128,128,128,128,252,5,14,14,8,2,0,144,96, + 0,0,96,32,32,32,32,32,32,32,32,248,6,10,10,8, + 1,0,128,128,128,128,136,136,128,128,128,252,5,10,10,8, + 1,0,96,32,32,32,40,40,32,32,32,248,7,10,10,8, + 0,0,64,64,72,80,96,192,64,64,64,126,5,10,10,8, + 2,0,96,32,40,48,96,160,32,32,32,248,6,14,14,8, + 1,0,24,96,0,0,132,196,196,164,164,148,148,140,140,132, + 6,12,12,8,1,0,24,96,0,0,184,196,132,132,132,132, + 132,132,7,12,12,8,0,254,66,98,98,82,82,74,74,70, + 70,66,32,192,7,10,10,8,0,254,92,98,66,66,66,66, + 66,66,32,192,6,14,14,8,1,0,72,48,0,0,132,196, + 196,164,164,148,148,140,140,132,6,12,12,8,1,0,72,48, + 0,0,184,196,132,132,132,132,132,132,6,13,13,8,1,0, + 192,64,64,128,0,184,196,132,132,132,132,132,132,6,10,10, + 8,1,0,184,196,132,132,132,132,132,132,132,152,6,10,10, + 8,1,254,184,196,132,132,132,132,132,132,4,24,6,13,13, + 8,1,0,120,0,0,120,132,132,132,132,132,132,132,132,120, + 6,11,11,8,1,0,120,0,0,120,132,132,132,132,132,132, + 120,6,14,14,8,1,0,132,132,120,0,120,132,132,132,132, + 132,132,132,132,120,6,12,12,8,1,0,132,132,120,0,120, + 132,132,132,132,132,132,120,7,14,14,8,1,0,102,136,0, + 0,120,132,132,132,132,132,132,132,132,120,7,12,12,8,1, + 0,102,136,0,0,120,132,132,132,132,132,132,120,7,10,10, + 8,1,0,110,144,144,144,156,144,144,144,144,110,7,8,8, + 8,1,0,108,146,146,158,144,144,146,108,6,14,14,8,1, + 0,24,96,0,0,248,132,132,132,248,144,136,136,132,132,6, + 12,12,8,1,0,24,96,0,0,184,196,132,128,128,128,128, + 128,7,12,12,8,0,254,124,66,66,66,124,72,68,68,66, + 66,32,192,7,10,10,8,0,254,92,98,66,64,64,64,64, + 64,32,192,6,14,14,8,1,0,72,48,0,0,248,132,132, + 132,248,144,136,136,132,132,6,12,12,8,1,0,72,48,0, + 0,184,196,132,128,128,128,128,128,6,14,14,8,1,0,24, + 96,0,0,120,132,132,128,96,24,4,132,132,120,6,12,12, + 8,1,0,24,96,0,0,120,132,128,96,24,132,132,120,6, + 14,14,8,1,0,48,72,0,0,120,132,132,128,96,24,4, + 132,132,120,6,12,12,8,1,0,48,72,0,0,120,132,128, + 96,24,4,132,120,6,12,12,8,1,254,120,132,132,128,96, + 24,4,132,132,120,16,96,6,10,10,8,1,254,120,132,128, + 96,24,4,132,120,16,96,6,14,14,8,1,0,72,48,0, + 0,120,132,132,128,96,24,4,132,132,120,6,12,12,8,1, + 0,72,48,0,0,120,132,128,96,24,4,132,120,7,12,12, + 8,1,254,254,16,16,16,16,16,16,16,16,16,16,96,5, + 12,12,8,1,254,32,32,248,32,32,32,32,32,32,24,16, + 96,7,14,14,8,1,0,72,48,0,0,254,16,16,16,16, + 16,16,16,16,16,5,14,14,8,1,0,72,48,0,0,32, + 32,248,32,32,32,32,32,32,24,7,10,10,8,1,0,254, + 16,16,20,24,48,80,16,16,16,5,10,10,8,1,0,32, + 32,248,32,40,48,96,160,32,24,6,14,14,8,1,0,100, + 152,0,0,132,132,132,132,132,132,132,132,132,120,6,12,12, + 8,1,0,100,152,0,0,132,132,132,132,132,132,140,116,6, + 13,13,8,1,0,120,0,0,132,132,132,132,132,132,132,132, + 132,120,6,11,11,8,1,0,120,0,0,132,132,132,132,132, + 132,140,116,6,14,14,8,1,0,132,132,120,0,132,132,132, + 132,132,132,132,132,132,120,6,13,13,8,1,0,132,132,120, + 0,0,132,132,132,132,132,132,140,116,6,14,14,8,1,0, + 48,72,48,0,132,132,132,132,132,132,132,132,132,120,6,12, + 12,8,1,0,48,72,48,0,132,132,132,132,132,132,140,116, + 7,14,14,8,1,0,102,136,0,0,132,132,132,132,132,132, + 132,132,132,120,7,12,12,8,1,0,102,136,0,0,132,132, + 132,132,132,132,140,116,6,12,12,8,1,254,132,132,132,132, + 132,132,132,132,132,120,32,24,7,10,10,8,1,254,132,132, + 132,132,132,132,140,116,8,6,6,14,14,8,1,0,48,72, + 0,0,132,132,132,132,180,180,204,204,132,132,7,12,12,8, + 1,0,48,72,0,0,130,146,146,146,146,146,146,108,7,14, + 14,8,1,0,48,72,0,0,130,130,68,68,40,16,16,16, + 16,16,6,14,14,8,1,254,48,72,0,0,132,132,132,132, + 132,76,52,4,4,120,7,14,14,8,1,0,72,72,0,0, + 130,130,68,68,40,16,16,16,16,16,6,14,14,8,1,0, + 24,96,0,0,252,4,4,8,16,32,64,128,128,252,6,12, + 12,8,1,0,24,96,0,0,252,4,8,16,32,64,128,252, + 6,14,14,8,1,0,32,32,0,0,252,4,4,8,16,32, + 64,128,128,252,6,12,12,8,1,0,32,32,0,0,252,4, + 8,16,32,64,128,252,6,14,14,8,1,0,72,48,0,0, + 252,4,4,8,16,32,64,128,128,252,6,12,12,8,1,0, + 72,48,0,0,252,4,8,16,32,64,128,252,4,11,11,8, + 2,0,48,64,64,64,192,64,64,64,64,64,64,7,11,11, + 8,0,0,64,240,64,92,98,66,66,66,66,98,92,7,10, + 10,8,0,0,124,162,162,34,60,34,34,34,34,60,6,10, + 10,8,1,0,252,128,128,128,248,132,132,132,132,248,6,10, + 10,8,1,0,252,128,128,184,196,132,132,132,196,184,6,10, + 10,8,1,0,192,64,64,64,120,68,68,68,68,120,6,8, + 8,8,1,0,192,64,64,64,120,68,68,120,6,10,10,8, + 1,0,120,132,132,4,4,4,4,132,132,248,7,12,12,8, + 1,0,6,8,120,136,136,128,128,128,128,136,136,112,7,10, + 10,8,1,0,6,8,120,136,128,128,128,128,136,112,7,10, + 10,8,0,0,120,68,66,66,242,66,66,66,68,120,7,10, + 10,8,0,0,120,164,162,34,34,34,34,34,36,56,6,10, + 10,8,1,0,252,4,4,4,124,132,132,132,132,124,6,10, + 10,8,1,0,252,4,4,116,140,132,132,132,140,116,6,10, + 10,8,1,254,120,132,132,132,132,72,48,8,8,112,6,10, + 10,8,1,0,252,4,4,4,124,4,4,4,4,252,6,10, + 10,8,1,0,48,72,132,4,4,252,132,132,72,48,6,10, + 10,8,1,0,120,132,132,128,112,128,128,132,132,120,7,11, + 11,8,1,255,62,32,32,32,60,32,32,32,32,32,192,5, + 12,12,8,1,255,24,32,32,32,248,32,32,32,32,32,32, + 192,7,11,11,8,1,0,6,120,136,136,128,128,184,136,136, + 152,104,6,10,10,8,1,0,132,132,132,72,72,48,48,72, + 72,48,6,11,11,8,1,0,128,128,128,128,228,148,148,148, + 148,148,136,5,10,10,8,1,0,224,32,32,32,32,32,32, + 32,32,24,5,10,10,8,2,0,248,32,32,32,248,32,32, + 32,32,248,6,10,10,8,1,0,140,148,160,160,192,192,160, + 144,136,132,6,11,11,8,1,0,96,128,128,136,144,160,192, + 160,144,136,132,5,10,10,8,2,0,96,32,32,32,248,32, + 32,32,32,248,6,10,10,8,1,0,72,80,32,96,144,48, + 72,72,132,132,7,10,10,8,1,0,146,146,146,146,146,146, + 146,146,146,110,7,11,11,8,0,255,34,34,50,50,42,42, + 38,38,34,34,192,6,10,10,8,1,254,184,196,132,132,132, + 132,132,132,4,4,6,10,10,8,1,0,120,132,132,132,252, + 132,132,132,132,120,6,11,11,8,1,0,4,116,136,136,136, + 136,136,136,136,136,112,6,9,9,8,1,0,4,116,136,136, + 136,136,136,136,112,6,12,12,8,1,254,108,148,148,148,148, + 148,148,148,148,100,4,4,6,10,10,8,1,254,108,148,148, + 148,148,148,148,100,4,4,7,10,10,8,1,0,124,162,162, + 34,60,32,32,32,32,32,7,11,11,8,1,254,6,184,200, + 136,136,136,136,200,176,128,128,7,10,10,8,1,0,224,64, + 120,68,68,120,80,72,68,66,6,10,10,8,1,0,120,132, + 132,4,24,96,128,132,132,120,6,8,8,8,1,0,120,132, + 4,24,96,128,132,120,6,10,10,8,1,0,252,128,64,32, + 16,16,32,64,128,252,5,12,12,8,1,255,64,160,160,96, + 32,32,32,32,32,32,32,24,5,12,12,8,1,254,32,32, + 248,32,32,32,32,32,32,24,8,48,7,10,10,8,1,0, + 126,144,144,16,16,16,16,16,16,16,5,11,11,8,1,0, + 24,32,32,32,248,32,32,32,32,32,24,7,11,11,8,1, + 255,254,16,16,16,16,16,16,16,16,16,12,7,12,12,8, + 1,0,2,2,140,136,136,136,136,136,136,136,136,112,7,10, + 10,8,1,0,2,2,140,136,136,136,136,136,152,104,6,10, + 10,8,1,0,132,72,72,132,132,132,132,132,72,48,6,10, + 10,8,1,0,152,132,132,132,132,132,132,136,144,96,7,10, + 10,8,1,0,98,162,34,20,20,8,8,8,8,8,7,11, + 11,8,1,254,6,136,136,136,136,136,72,56,8,8,112,6, + 10,10,8,1,0,252,4,8,16,120,32,64,128,128,252,6, + 8,8,8,1,0,252,8,16,120,32,64,128,252,6,10,10, + 8,1,0,252,8,16,32,56,4,4,4,140,120,6,10,10, + 8,1,0,252,64,32,16,112,128,128,128,196,120,6,10,10, + 8,1,254,248,64,32,16,112,128,128,128,132,120,6,10,10, + 8,1,254,124,8,16,56,4,4,120,128,132,120,6,10,10, + 8,1,0,120,132,132,8,16,252,64,128,128,252,6,10,10, + 8,1,0,252,64,64,64,120,4,4,4,132,120,6,8,8, + 8,1,0,252,64,64,120,4,4,132,120,5,10,10,8,1, + 0,32,32,248,32,32,48,8,8,136,112,6,10,10,8,1, + 254,184,196,132,132,136,144,160,192,128,128,1,11,11,8,3, + 0,128,128,128,128,128,128,128,128,128,128,128,3,11,11,8, + 2,0,160,160,160,160,160,160,160,160,160,160,160,5,11,11, + 8,1,0,32,32,32,32,248,32,248,32,32,32,32,1,10, + 10,8,4,0,128,128,128,128,128,128,128,0,128,128,7,14, + 14,8,1,0,10,4,0,0,206,162,162,162,164,164,168,168, + 168,206,7,12,12,8,1,0,10,4,192,160,174,162,162,164, + 164,168,168,206,7,12,12,8,1,0,10,36,32,32,110,162, + 162,164,164,168,168,110,7,10,10,8,1,0,142,130,130,130, + 130,130,130,146,146,236,7,13,13,8,1,254,2,130,128,134, + 130,130,130,130,130,130,242,4,24,8,13,13,8,0,254,1, + 97,32,35,33,33,33,33,33,33,249,2,12,7,10,10,8, + 1,0,150,146,146,210,210,178,178,154,154,148,7,13,13,8, + 1,254,2,146,144,214,210,210,178,178,178,146,146,36,24,7, + 13,13,8,1,254,2,2,0,166,210,146,146,146,146,146,146, + 36,24,6,14,14,8,1,0,72,48,0,0,48,72,72,132, + 132,252,132,132,132,132,6,12,12,8,1,0,72,48,0,0, + 120,132,4,124,132,132,140,116,5,14,14,8,2,0,144,96, + 0,0,248,32,32,32,32,32,32,32,32,248,5,12,12,8, + 2,0,144,96,0,0,96,32,32,32,32,32,32,248,6,14, + 14,8,1,0,72,48,0,0,120,132,132,132,132,132,132,132, + 132,120,6,12,12,8,1,0,72,48,0,0,120,132,132,132, + 132,132,132,120,6,14,14,8,1,0,72,48,0,0,132,132, + 132,132,132,132,132,132,132,120,6,12,12,8,1,0,72,48, + 0,0,132,132,132,132,132,132,140,116,6,14,14,8,1,0, + 120,0,72,0,132,132,132,132,132,132,132,132,132,120,6,13, + 13,8,1,0,120,0,72,72,0,132,132,132,132,132,132,140, + 116,6,14,14,8,1,0,24,96,0,72,0,132,132,132,132, + 132,132,132,132,120,6,14,14,8,1,0,24,96,0,72,72, + 0,132,132,132,132,132,132,140,116,6,14,14,8,1,0,72, + 48,0,72,0,132,132,132,132,132,132,132,132,120,6,14,14, + 8,1,0,72,48,0,72,72,0,132,132,132,132,132,132,140, + 116,6,14,14,8,1,0,96,24,0,72,0,132,132,132,132, + 132,132,132,132,120,6,14,14,8,1,0,96,24,0,72,72, + 0,132,132,132,132,132,132,140,116,6,8,8,8,1,0,120, + 132,4,4,252,132,132,120,6,14,14,8,1,0,120,0,72, + 0,48,72,72,132,132,252,132,132,132,132,6,13,13,8,1, + 0,120,0,72,72,0,120,132,4,124,132,132,140,116,6,14, + 14,8,1,0,120,0,48,0,48,72,72,132,132,252,132,132, + 132,132,6,13,13,8,1,0,120,0,32,32,0,120,132,4, + 124,132,132,140,116,7,13,13,8,1,0,120,0,0,62,80, + 144,144,254,144,144,144,144,158,7,11,11,8,1,0,120,0, + 0,124,146,18,126,144,144,146,124,7,10,10,8,1,0,120, + 132,132,128,128,156,132,158,132,124,7,11,11,8,1,254,4, + 116,136,136,136,112,64,120,158,132,120,6,14,14,8,1,0, + 72,48,0,0,120,132,132,128,128,156,132,132,140,116,6,14, + 14,8,1,254,72,48,0,4,116,136,136,136,112,64,120,132, + 132,120,6,14,14,8,1,0,72,48,0,0,132,136,144,160, + 192,192,160,144,136,132,6,14,14,8,1,0,144,96,0,0, + 128,128,136,144,160,192,160,144,136,132,6,12,12,8,1,254, + 120,132,132,132,132,132,132,132,132,120,32,24,6,10,10,8, + 1,254,120,132,132,132,132,132,132,120,32,24,6,15,15,8, + 1,254,120,0,0,120,132,132,132,132,132,132,132,132,120,32, + 24,6,13,13,8,1,254,120,0,0,120,132,132,132,132,132, + 132,120,32,24,6,14,14,8,1,0,72,48,0,0,252,8, + 16,32,56,4,4,4,140,120,6,14,14,8,1,254,72,48, + 0,0,124,8,16,32,56,4,4,4,132,120,6,14,14,8, + 1,254,36,24,0,0,24,8,8,8,8,8,8,8,144,96, + 7,10,10,8,1,0,206,162,162,162,164,164,168,168,168,206, + 7,10,10,8,1,0,192,160,174,162,162,164,164,168,168,206, + 7,11,11,8,1,0,32,32,32,110,162,162,164,164,168,168, + 110,6,14,14,8,1,0,24,96,0,0,120,132,132,128,128, + 156,132,132,140,116,6,14,14,8,1,254,24,96,0,4,116, + 136,136,136,112,64,120,132,132,120,6,10,10,8,1,0,144, + 144,144,148,244,148,148,148,148,136,6,11,11,8,1,255,184, + 196,132,132,136,144,160,192,128,128,128,6,13,13,8,1,0, + 96,24,0,132,196,196,164,164,148,148,140,140,132,6,11,11, + 8,1,0,96,24,0,184,196,132,132,132,132,132,132,6,14, + 14,8,1,0,24,96,48,72,48,48,72,72,132,252,132,132, + 132,132,6,14,14,8,1,0,24,96,0,48,72,48,0,120, + 132,4,124,132,140,116,7,14,14,8,1,0,12,48,0,0, + 62,80,144,144,254,144,144,144,144,158,7,12,12,8,1,0, + 12,48,0,0,124,146,18,126,144,144,146,124,6,15,15,8, + 1,255,24,96,0,4,116,136,140,148,148,164,164,196,68,184, + 128,6,13,13,8,1,255,24,96,0,4,120,140,148,148,164, + 164,196,120,128}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 10, '1' Height: 12 + Calculated Max Values w=16 h=16 x= 4 y=10 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent= 0 + X Font ascent =12 descent=-2 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_4_5[3783] U8G_SECTION(".progmem.u8g_font_unifont_4_5") = { + 0,16,16,0,254,10,4,176,6,163,0,255,0,14,254,12, + 254,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,74,81,234,80,90,81,201,158,0,1,128,0,0,1,128, + 0,0,1,128,0,85,85,7,12,12,8,0,0,204,34,0, + 0,60,66,2,62,66,66,70,58,6,14,14,8,1,0,120, + 132,132,0,48,72,72,132,132,252,132,132,132,132,6,12,12, + 8,1,0,120,132,132,0,120,132,4,124,132,132,140,116,7, + 14,14,8,0,0,204,34,0,0,126,64,64,64,124,64,64, + 64,64,126,7,12,12,8,0,0,204,34,0,0,60,66,66, + 126,64,64,66,60,6,14,14,8,1,0,120,132,132,0,252, + 128,128,128,248,128,128,128,128,252,6,12,12,8,1,0,120, + 132,132,0,120,132,132,252,128,128,132,120,7,14,14,8,0, + 0,204,34,0,0,62,8,8,8,8,8,8,8,8,62,7, + 12,12,8,0,0,204,34,0,0,24,8,8,8,8,8,8, + 62,6,14,14,8,1,0,120,132,132,0,124,16,16,16,16, + 16,16,16,16,124,6,12,12,8,1,0,120,132,132,0,48, + 16,16,16,16,16,16,124,7,14,14,8,0,0,204,34,0, + 0,60,66,66,66,66,66,66,66,66,60,7,12,12,8,0, + 0,204,34,0,0,60,66,66,66,66,66,66,60,6,14,14, + 8,1,0,120,132,132,0,120,132,132,132,132,132,132,132,132, + 120,6,12,12,8,1,0,120,132,132,0,120,132,132,132,132, + 132,132,120,7,14,14,8,0,0,204,34,0,0,124,66,66, + 66,124,72,68,68,66,66,7,12,12,8,0,0,204,34,0, + 0,92,98,66,64,64,64,64,64,6,14,14,8,1,0,120, + 132,132,0,248,132,132,132,248,144,136,136,132,132,6,12,12, + 8,1,0,120,132,132,0,184,196,132,128,128,128,128,128,7, + 14,14,8,0,0,204,34,0,0,66,66,66,66,66,66,66, + 66,66,60,7,12,12,8,0,0,204,34,0,0,66,66,66, + 66,66,66,70,58,6,14,14,8,1,0,120,132,132,0,132, + 132,132,132,132,132,132,132,132,120,6,12,12,8,1,0,120, + 132,132,0,132,132,132,132,132,132,140,116,6,12,12,8,1, + 254,120,132,132,128,96,24,4,132,132,120,16,32,6,10,10, + 8,1,254,120,132,128,96,24,4,132,120,16,32,7,12,12, + 8,1,254,254,16,16,16,16,16,16,16,16,16,4,8,5, + 12,12,8,1,254,32,32,248,32,32,32,32,32,32,24,64, + 128,6,10,10,8,1,0,120,132,132,4,24,104,4,4,4, + 120,6,8,8,8,1,0,120,132,4,24,100,4,24,96,6, + 13,13,8,1,0,72,48,0,132,132,132,132,252,132,132,132, + 132,132,6,13,13,8,1,0,72,48,0,128,128,128,184,196, + 132,132,132,132,132,6,10,10,8,1,254,184,196,132,132,132, + 132,132,132,4,4,7,13,13,8,1,254,4,4,4,116,140, + 132,132,132,132,142,118,4,8,6,10,10,8,1,0,16,72, + 132,132,72,120,132,132,132,120,5,8,8,8,2,0,72,136, + 144,96,144,136,136,112,6,12,12,8,1,254,252,4,4,8, + 16,32,64,128,128,252,4,8,6,10,10,8,1,254,252,4, + 8,16,32,64,128,252,4,8,6,12,12,8,1,0,16,0, + 48,72,72,132,132,252,132,132,132,132,6,10,10,8,1,0, + 16,0,120,132,4,124,132,132,140,116,6,12,12,8,1,254, + 252,128,128,128,248,128,128,128,128,252,16,96,6,10,10,8, + 1,254,120,132,132,252,128,128,132,120,16,96,6,14,14,8, + 1,0,120,0,72,0,120,132,132,132,132,132,132,132,132,120, + 6,12,12,8,1,0,120,0,72,0,120,132,132,132,132,132, + 132,120,6,14,14,8,1,0,120,0,100,152,0,120,132,132, + 132,132,132,132,132,120,6,13,13,8,1,0,120,0,100,152, + 0,120,132,132,132,132,132,132,120,6,12,12,8,1,0,16, + 0,120,132,132,132,132,132,132,132,132,120,6,10,10,8,1, + 0,16,0,120,132,132,132,132,132,132,120,6,14,14,8,1, + 0,120,0,16,0,120,132,132,132,132,132,132,132,132,120,6, + 12,12,8,1,0,120,0,16,0,120,132,132,132,132,132,132, + 120,7,12,12,8,1,0,124,0,130,130,68,68,40,16,16, + 16,16,16,6,12,12,8,1,254,120,0,132,132,132,132,132, + 76,52,4,4,120,4,12,12,8,2,254,96,32,32,32,32, + 32,32,32,48,48,64,128,7,10,10,8,1,254,184,196,132, + 132,132,132,134,134,4,8,6,12,12,8,1,254,32,32,248, + 32,32,32,32,32,44,28,16,32,5,10,10,8,1,254,24, + 8,8,8,8,8,8,8,144,96,7,11,11,8,0,0,16, + 16,16,84,186,146,146,146,146,186,84,7,10,10,8,0,254, + 84,186,146,146,146,146,186,84,16,16,7,11,11,8,0,0, + 2,26,36,44,74,82,126,98,66,66,194,7,12,12,8,0, + 255,2,60,70,74,72,80,80,96,98,66,124,128,7,11,11, + 8,0,255,2,4,60,74,80,80,96,96,66,124,128,6,10, + 10,8,1,0,64,64,64,64,240,64,64,64,64,124,7,12, + 12,8,1,0,2,4,254,24,24,16,16,48,48,80,80,144, + 7,10,10,8,1,254,120,132,128,96,24,4,132,120,18,12, + 6,10,10,8,1,254,252,4,8,16,32,64,128,192,32,28, + 6,10,10,8,1,0,120,132,132,4,8,16,16,16,16,16, + 6,8,8,8,1,0,120,132,132,4,8,16,16,16,6,10, + 10,8,1,0,120,68,68,68,120,68,244,68,68,120,7,10, + 10,8,0,0,68,68,68,68,68,254,68,68,68,56,6,10, + 10,8,1,0,48,48,48,72,72,72,72,132,132,132,6,14, + 14,8,1,254,8,8,252,144,144,160,248,160,160,192,192,252, + 128,128,7,10,10,8,0,255,2,60,70,74,126,80,96,66, + 124,128,7,10,10,8,1,0,62,8,8,8,8,62,8,136, + 136,112,7,13,13,8,1,254,8,8,0,24,8,8,62,8, + 8,8,8,144,96,7,12,12,8,1,254,112,136,136,136,136, + 136,136,136,152,104,8,6,7,10,10,8,1,254,104,152,136, + 136,136,136,152,104,8,6,6,10,10,8,1,0,120,68,68, + 68,248,80,72,72,68,68,6,8,8,8,1,0,88,100,68, + 224,64,64,64,64,7,10,10,8,1,0,130,130,68,254,40, + 16,16,16,16,16,7,10,10,8,1,254,68,68,68,254,68, + 36,28,4,4,56,6,8,8,8,1,0,184,196,132,132,248, + 128,132,120,6,8,8,8,1,0,116,140,132,132,132,140,148, + 100,6,8,8,8,1,0,152,164,196,132,132,132,196,184,6, + 11,11,8,1,0,112,128,128,184,196,132,132,132,132,196,184, + 6,8,8,8,1,0,120,132,4,4,4,4,132,120,6,9, + 9,8,1,255,120,132,128,128,128,152,164,120,128,7,12,12, + 8,1,255,8,8,8,104,152,136,136,136,136,152,104,6,7, + 11,11,8,1,0,6,8,8,104,152,136,136,136,136,152,104, + 6,8,8,8,1,0,120,132,132,252,4,4,132,120,6,8, + 8,8,1,0,120,132,4,4,252,132,132,120,7,8,8,8, + 1,0,114,140,8,8,248,136,136,112,6,8,8,8,1,0, + 120,132,128,120,128,128,132,120,6,8,8,8,1,0,120,132, + 4,120,4,4,132,120,7,8,8,8,1,0,114,140,8,112, + 8,8,136,112,6,8,8,8,1,0,120,132,132,184,132,132, + 132,120,7,10,10,8,1,254,24,8,8,8,62,8,8,8, + 144,96,7,11,11,8,1,254,6,104,152,136,136,136,152,104, + 8,136,112,6,10,10,8,1,254,116,140,132,132,132,140,116, + 4,132,120,6,8,8,8,1,0,120,132,128,128,156,132,132, + 124,6,10,10,8,1,254,132,132,132,72,72,48,48,72,72, + 48,6,8,8,8,1,0,132,132,72,72,48,48,72,48,6, + 11,11,8,1,254,132,132,132,132,132,132,140,116,4,4,4, + 6,11,11,8,1,0,112,128,128,184,196,132,132,132,132,132, + 132,6,11,11,8,1,0,112,128,128,184,196,132,132,132,132, + 132,152,5,11,11,8,2,0,32,32,0,96,32,32,248,32, + 32,32,248,3,8,8,8,3,0,128,128,128,128,128,128,128, + 96,5,8,8,8,2,0,248,32,32,32,32,32,32,248,6, + 10,10,8,1,0,48,16,16,16,116,152,16,16,16,124,6, + 10,10,8,1,0,48,16,16,112,144,124,16,16,16,124,4, + 11,11,8,3,255,192,64,64,64,64,64,64,64,64,64,48, + 7,12,12,8,1,254,96,32,62,34,36,40,44,34,34,250, + 18,12,7,8,8,8,1,0,146,146,146,146,146,146,146,110, + 7,10,10,8,1,254,146,146,146,146,146,146,146,110,2,2, + 7,9,9,8,1,255,236,146,146,146,146,146,146,130,12,7, + 9,9,8,1,255,44,50,34,34,34,34,34,34,192,7,9, + 9,8,1,255,176,200,136,136,136,136,136,136,6,6,8,8, + 8,1,0,132,132,196,164,148,140,132,132,6,8,8,8,1, + 0,120,132,132,252,132,132,132,120,7,8,8,8,1,0,110, + 144,144,156,144,144,144,110,7,8,8,8,1,0,124,130,130, + 146,146,146,146,108,7,12,12,8,1,254,16,16,124,146,146, + 146,146,146,146,124,16,16,6,8,8,8,1,0,4,4,4, + 4,4,132,140,116,6,10,10,8,1,0,4,4,4,4,4, + 4,4,132,140,116,7,9,9,8,1,255,8,8,8,8,8, + 136,152,104,6,6,10,10,8,1,254,184,196,132,128,128,128, + 128,128,128,128,6,9,9,8,1,255,184,196,132,128,128,128, + 128,128,96,6,8,8,8,1,0,120,132,132,128,128,128,128, + 128,6,8,8,8,1,0,120,132,132,4,4,4,4,4,6, + 8,8,8,1,0,248,132,132,248,136,132,132,132,6,8,8, + 8,1,0,132,132,132,136,248,132,132,248,6,10,10,8,1, + 254,120,132,128,96,24,4,132,248,128,96,5,12,12,8,1, + 255,24,32,32,32,32,32,32,32,32,32,32,192,5,12,12, + 8,1,255,24,32,32,32,32,32,32,248,32,32,32,192,5, + 9,9,8,1,255,192,32,32,32,32,32,32,32,24,6,12, + 12,8,1,255,12,16,16,16,16,16,16,16,16,112,156,96, + 5,10,10,8,1,0,192,32,32,32,32,32,32,248,32,32, + 6,11,11,8,1,255,32,32,248,32,32,32,32,32,32,32, + 28,7,8,8,8,1,0,68,68,68,254,68,68,76,52,6, + 8,8,8,1,0,132,72,132,132,132,132,72,48,6,8,8, + 8,1,0,152,132,132,132,132,136,144,96,6,8,8,8,1, + 0,48,48,72,72,72,132,132,132,7,8,8,8,1,0,108, + 146,146,146,146,146,146,130,6,10,10,8,1,254,120,128,128, + 176,200,132,132,132,132,132,7,8,8,8,1,0,130,130,68, + 40,16,16,16,16,7,10,10,8,1,254,248,16,16,32,32, + 64,64,248,8,6,7,9,9,8,1,255,252,4,8,16,32, + 76,146,252,32,6,10,10,8,1,254,124,8,16,32,56,4, + 4,4,132,120,6,10,10,8,1,254,124,8,16,32,56,4, + 4,100,148,120,6,10,10,8,1,0,120,132,132,4,8,16, + 16,16,16,16,6,10,10,8,1,0,120,132,132,128,64,32, + 32,32,32,32,6,10,10,8,1,0,16,16,16,16,16,8, + 4,132,132,120,6,10,10,8,1,254,120,132,128,128,128,128, + 128,128,132,120,6,8,8,8,1,0,120,132,132,180,180,132, + 132,120,6,8,8,8,1,0,248,132,132,248,132,132,132,248, + 6,8,8,8,1,0,120,132,132,116,132,132,132,120,7,8, + 8,8,1,0,118,136,128,128,152,136,136,120,5,8,8,8, + 2,0,136,136,136,248,136,136,136,136,6,13,13,8,1,254, + 8,8,0,24,8,8,8,8,8,8,124,144,96,6,10,10, + 8,1,254,132,68,36,20,12,20,36,68,4,4,6,8,8, + 8,1,0,128,128,128,128,128,128,128,252,7,11,11,8,1, + 254,6,104,152,136,136,136,136,152,104,8,8,6,10,10,8, + 1,0,120,132,132,4,8,16,16,124,16,16,6,10,10,8, + 1,0,120,132,132,128,64,32,32,248,32,32,7,11,11,8, + 1,0,32,32,32,126,162,164,164,168,168,176,126,7,13,13, + 8,1,254,32,32,32,126,162,164,168,172,162,162,98,18,12, + 7,12,12,8,1,255,32,32,32,126,162,164,168,176,180,170, + 124,8,7,10,10,8,1,0,64,64,236,80,80,72,68,66, + 66,60,7,13,13,8,1,254,6,72,72,248,72,72,72,72, + 72,72,56,8,48,7,11,11,8,1,255,64,64,236,82,80, + 80,80,84,90,60,8,7,12,12,8,1,254,96,144,128,220, + 162,162,162,162,162,162,4,24,6,10,10,8,2,0,128,128, + 128,156,160,160,152,132,132,248,6,10,10,8,1,0,128,128, + 128,128,252,136,144,160,192,252,7,11,11,8,1,0,130,146, + 146,146,108,0,130,146,146,146,108,6,10,10,8,1,0,252, + 132,132,132,0,0,252,132,132,132,5,10,10,8,1,254,200, + 72,72,72,72,72,88,40,8,8,7,10,10,8,1,254,200, + 72,72,72,72,72,88,40,8,6,5,6,6,8,2,4,128, + 128,176,200,136,136,5,7,7,8,2,4,112,136,128,176,200, + 136,136,4,7,7,8,2,4,16,0,16,16,16,144,96,5, + 5,5,8,2,5,176,200,128,128,128,5,5,5,8,1,5, + 8,8,8,152,104,7,6,6,8,1,4,8,8,8,152,104, + 6,5,6,6,8,1,4,136,144,240,136,136,240,5,4,4, + 8,1,6,136,168,168,80,5,5,5,8,1,5,136,136,120, + 8,112,3,3,3,8,2,7,32,64,128,6,3,3,8,1, + 7,36,72,144,2,4,4,8,3,6,64,128,128,192,2,4, + 4,8,3,6,192,64,64,128,2,4,4,8,3,6,192,128, + 128,64,4,6,6,8,2,5,192,32,16,16,32,192,4,6, + 6,8,2,5,48,64,128,128,64,48,6,7,7,8,1,4, + 120,132,4,4,56,32,32,6,7,7,8,1,4,120,132,128, + 128,112,16,16,4,7,7,8,2,4,16,32,64,128,64,32, + 16,4,7,7,8,2,4,128,64,32,16,32,64,128,7,4, + 4,8,1,6,16,40,68,130,7,4,4,8,1,6,130,68, + 40,16,4,2,2,8,2,8,96,144,4,2,2,8,2,8, + 144,96,1,3,3,8,4,7,128,128,128,4,1,1,8,2, + 9,240,4,2,2,8,2,8,48,192,4,2,2,8,2,8, + 192,48,1,4,4,8,4,0,128,128,128,128,4,1,1,8, + 2,0,240,4,2,2,8,2,255,192,48,4,2,2,8,2, + 255,48,192,3,6,6,8,2,1,224,64,0,0,64,224,3, + 2,2,8,2,4,224,64,4,6,6,8,2,2,192,32,16, + 16,32,192,4,6,6,8,2,2,48,64,128,128,64,48,5, + 5,5,8,1,2,32,32,32,32,248,5,5,5,8,1,2, + 248,32,32,32,32,5,5,5,8,1,2,32,32,248,32,32, + 5,1,1,8,1,4,248,6,3,3,8,1,9,132,132,120, + 2,2,2,8,3,10,192,192,4,3,3,8,2,9,96,144, + 96,3,2,2,8,4,254,128,96,6,2,2,8,1,10,100, + 152,7,2,2,8,1,10,102,136,7,4,4,8,0,3,32, + 96,162,28,6,5,5,8,1,5,132,72,48,72,132,5,6, + 6,8,1,4,136,80,32,80,80,32,3,6,6,8,2,6, + 192,64,64,64,64,224,5,5,5,8,1,5,120,128,112,8, + 240,5,5,5,8,1,5,136,80,32,80,136,5,5,5,8, + 1,7,120,128,128,112,16,5,11,11,8,1,0,248,8,8, + 8,8,8,8,8,8,8,8,5,11,11,8,1,0,8,8, + 248,8,8,8,8,8,8,8,8,5,11,11,8,1,0,8, + 8,8,8,8,248,8,8,8,8,8,5,11,11,8,1,0, + 8,8,8,8,8,8,8,8,248,8,8,5,11,11,8,1, + 0,8,8,8,8,8,8,8,8,8,8,248,5,6,6,8, + 1,0,128,128,128,128,128,248,4,7,7,8,1,0,128,128, + 128,240,128,128,128,5,3,3,8,1,0,136,80,32,6,3, + 3,8,1,9,252,0,252,6,4,4,8,1,8,204,68,68, + 136,5,3,3,8,1,255,136,80,32,5,3,3,8,1,255, + 32,80,136,3,5,5,8,3,255,32,64,128,64,32,3,5, + 5,8,3,255,128,64,32,64,128,4,3,3,8,2,255,96, + 144,96,3,3,3,8,2,9,128,64,32,6,3,3,8,1, + 9,144,72,36,6,3,3,8,1,9,36,72,144,6,2,2, + 8,1,254,100,152,2,7,7,8,3,4,192,192,0,0,0, + 192,192,3,4,4,8,2,7,224,128,128,128,3,4,4,8, + 2,7,224,32,32,32,3,4,4,8,2,0,128,128,128,224, + 3,4,4,8,2,0,32,32,32,224,6,3,3,8,1,254, + 132,132,252,6,3,3,8,1,254,128,128,252,6,5,5,8, + 1,3,32,64,252,64,32}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 3, '1' Height: 10 + Calculated Max Values w=16 h=16 x=14 y=12 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 3 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_67_75[3556] U8G_SECTION(".progmem.u8g_font_unifont_67_75") = { + 0,16,16,0,254,3,2,120,4,26,16,255,0,14,254,10, + 0,6,5,5,8,1,4,32,64,252,64,32,5,6,6,8, + 2,3,32,112,168,32,32,32,6,5,5,8,1,3,16,8, + 252,8,16,5,6,6,8,2,3,32,32,32,168,112,32,8, + 5,5,8,0,3,36,66,255,66,36,5,9,9,8,2,1, + 32,112,168,32,32,32,168,112,32,6,6,6,8,1,3,240, + 192,160,144,8,4,6,6,6,8,1,3,60,12,20,36,64, + 128,6,6,6,8,1,3,128,64,36,20,12,60,6,6,6, + 8,1,2,4,8,144,160,192,240,7,9,9,8,1,1,8, + 8,40,72,254,72,40,8,8,7,9,9,8,1,1,32,32, + 40,36,254,36,40,32,32,7,5,5,8,1,3,32,76,242, + 64,32,7,5,5,8,1,3,8,100,158,4,8,8,5,5, + 8,0,3,36,72,255,72,36,5,9,9,8,2,1,32,112, + 168,32,112,168,32,32,32,8,5,5,8,0,3,36,18,255, + 18,36,5,9,9,8,2,1,32,32,32,168,112,32,168,112, + 32,7,5,5,8,1,3,34,68,248,68,34,7,5,5,8, + 1,3,136,68,62,68,136,6,5,5,8,1,3,36,68,252, + 68,36,5,6,6,8,2,3,32,112,168,32,32,248,6,5, + 5,8,1,3,144,136,252,136,144,5,6,6,8,2,3,248, + 32,32,168,112,32,5,10,10,8,2,0,32,112,168,32,32, + 32,168,112,32,248,7,6,6,8,1,3,4,34,66,252,64, + 32,7,6,6,8,1,3,64,136,132,126,4,8,7,6,6, + 8,1,3,4,42,74,252,72,40,7,6,6,8,1,3,64, + 168,164,126,36,40,8,5,5,8,0,3,36,90,231,66,36, + 8,9,9,8,0,1,8,8,44,74,255,74,44,8,8,6, + 10,10,8,1,0,128,128,144,176,208,144,16,84,56,16,5, + 10,10,8,1,0,32,64,240,72,40,8,8,8,8,8,5, + 10,10,8,2,0,32,16,120,144,160,128,128,128,128,128,5, + 10,10,8,1,0,8,8,8,8,8,40,72,240,64,32,5, + 10,10,8,2,0,128,128,128,128,128,160,144,120,16,32,7, + 5,5,8,1,1,248,8,42,28,8,5,8,8,8,1,2, + 8,8,8,40,72,248,64,32,8,5,5,8,0,3,30,33, + 169,113,32,8,5,5,8,0,3,120,132,149,142,4,6,8, + 8,8,1,3,252,0,240,192,160,144,8,4,6,11,11,8, + 1,0,160,192,252,192,160,0,20,12,252,12,20,6,6,6, + 8,1,2,92,152,148,132,132,120,6,6,6,8,1,2,232, + 100,164,132,132,120,6,3,3,8,1,5,32,64,252,6,3, + 3,8,1,3,252,64,32,3,6,6,8,4,3,128,192,160, + 128,128,128,3,6,6,8,2,3,32,96,160,32,32,32,6, + 3,3,8,1,5,16,8,252,6,3,3,8,1,3,252,8, + 16,3,6,6,8,4,2,128,128,128,160,192,128,3,6,6, + 8,2,3,32,32,32,160,96,32,6,11,11,8,1,0,16, + 8,252,8,16,0,32,64,252,64,32,8,6,6,8,0,3, + 36,116,164,37,46,36,6,11,11,8,1,0,32,64,252,64, + 32,0,16,8,252,8,16,6,11,11,8,1,0,32,64,252, + 64,32,0,32,64,252,64,32,8,6,6,8,0,3,36,126, + 165,36,36,36,6,11,11,8,1,0,16,8,252,8,16,0, + 16,8,252,8,16,8,6,6,8,0,3,36,36,36,165,126, + 36,6,7,7,8,1,2,32,64,252,0,252,8,16,6,7, + 7,8,1,2,16,8,252,0,252,64,32,7,9,9,8,0, + 1,8,8,40,126,136,126,40,8,8,8,9,9,8,0,1, + 8,8,44,126,137,126,44,8,8,7,9,9,8,1,1,32, + 32,40,252,34,252,40,32,32,6,5,5,8,1,3,32,124, + 128,124,32,5,6,6,8,2,3,32,80,216,80,80,80,6, + 5,5,8,1,3,16,248,4,248,16,5,6,6,8,2,3, + 80,80,80,216,80,32,8,5,5,8,0,3,36,126,129,126, + 36,5,8,8,8,2,2,32,80,216,80,80,216,80,32,6, + 6,6,8,1,3,240,160,208,168,20,8,6,6,6,8,1, + 3,60,20,44,84,160,64,6,6,6,8,1,3,8,20,168, + 208,160,240,6,6,6,8,1,3,64,160,84,44,20,60,7, + 7,7,8,0,2,16,62,64,254,64,62,16,7,7,7,8, + 1,2,16,248,4,254,4,248,16,8,5,5,8,0,3,32, + 66,245,72,32,8,5,5,8,0,3,4,66,175,18,4,5, + 10,10,8,2,0,32,112,168,32,32,248,32,248,32,32,5, + 10,10,8,2,0,32,32,248,32,248,32,32,168,112,32,7, + 5,5,8,1,3,32,64,238,64,32,5,10,10,8,2,0, + 32,112,168,0,32,32,32,0,32,32,7,5,5,8,1,3, + 8,4,238,4,8,5,10,10,8,2,0,32,32,0,32,32, + 32,0,168,112,32,6,5,5,8,1,3,160,192,252,192,160, + 6,5,5,8,1,3,20,12,252,12,20,8,7,7,8,0, + 2,16,48,95,129,95,48,16,7,10,10,8,1,0,16,40, + 68,238,40,40,40,40,40,56,8,7,7,8,0,2,8,12, + 250,129,250,12,8,7,10,10,8,1,0,56,40,40,40,40, + 40,238,68,40,16,7,12,12,8,1,0,16,40,68,238,40, + 40,40,40,56,0,56,56,7,12,12,8,1,0,16,40,68, + 198,68,68,68,68,68,198,130,254,7,12,12,8,1,0,16, + 40,124,198,68,68,68,68,68,198,130,254,7,12,12,8,1, + 0,16,56,84,214,84,84,84,84,84,214,146,254,7,14,14, + 8,1,0,16,40,84,238,68,198,68,68,68,68,68,68,68, + 124,7,14,14,8,1,0,16,40,84,238,68,198,68,68,68, + 68,68,198,130,254,7,7,7,8,1,2,16,216,244,130,244, + 216,16,7,9,9,8,1,0,254,128,184,176,168,132,130,128, + 128,7,9,9,8,1,0,2,2,130,66,42,26,58,2,254, + 5,11,11,8,2,0,32,80,216,80,80,80,80,80,216,80, + 32,13,5,10,16,1,3,14,32,17,16,255,248,17,16,14, + 32,8,10,10,8,0,0,36,46,53,36,36,36,36,172,116, + 36,8,15,15,8,0,254,4,2,255,2,4,4,2,255,2, + 4,4,2,255,2,4,8,5,5,8,0,3,36,68,255,68, + 36,8,5,5,8,0,3,36,34,255,34,36,11,5,10,16, + 2,3,36,128,68,64,255,224,68,64,36,128,12,5,10,16, + 1,3,37,0,69,0,255,240,69,0,37,0,12,5,10,16, + 2,3,10,64,10,32,255,240,10,32,10,64,13,5,10,16, + 1,3,37,32,69,16,255,248,69,16,37,32,8,5,5,8, + 0,3,32,96,191,96,32,8,5,5,8,0,3,4,6,253, + 6,4,12,5,10,16,2,3,32,64,96,96,191,208,96,96, + 32,64,16,8,16,16,0,6,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,16,2,4,16,0,254,255,255, + 255,255,16,4,8,16,0,254,255,255,255,255,255,255,255,255, + 16,6,12,16,0,254,255,255,255,255,255,255,255,255,255,255, + 255,255,16,8,16,16,0,254,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,16,10,20,16,0,254,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,16,12,24,16,0,254,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 16,14,28,16,0,254,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,16,16,32,16,0,254,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,14,16,32,16,0,254,255,252, + 255,252,255,252,255,252,255,252,255,252,255,252,255,252,255,252, + 255,252,255,252,255,252,255,252,255,252,255,252,255,252,12,16, + 32,16,0,254,255,240,255,240,255,240,255,240,255,240,255,240, + 255,240,255,240,255,240,255,240,255,240,255,240,255,240,255,240, + 255,240,255,240,10,16,32,16,0,254,255,192,255,192,255,192, + 255,192,255,192,255,192,255,192,255,192,255,192,255,192,255,192, + 255,192,255,192,255,192,255,192,255,192,8,16,16,16,0,254, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 6,16,16,16,0,254,252,252,252,252,252,252,252,252,252,252, + 252,252,252,252,252,252,4,16,16,16,0,254,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,240,2,16,16,16, + 0,254,192,192,192,192,192,192,192,192,192,192,192,192,192,192, + 192,192,8,16,16,16,8,254,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,15,16,32,16,0,254,136,136, + 34,34,136,136,34,34,136,136,34,34,136,136,34,34,136,136, + 34,34,136,136,34,34,136,136,34,34,136,136,34,34,16,16, + 32,16,0,254,170,170,85,85,170,170,85,85,170,170,85,85, + 170,170,85,85,170,170,85,85,170,170,85,85,170,170,85,85, + 170,170,85,85,16,16,32,16,0,254,238,238,187,187,238,238, + 187,187,238,238,187,187,238,238,187,187,238,238,187,187,238,238, + 187,187,238,238,187,187,238,238,187,187,16,2,4,16,0,12, + 255,255,255,255,2,16,16,16,14,254,192,192,192,192,192,192, + 192,192,192,192,192,192,192,192,192,192,8,8,8,16,0,254, + 255,255,255,255,255,255,255,255,8,8,8,16,8,254,255,255, + 255,255,255,255,255,255,8,8,8,16,0,6,255,255,255,255, + 255,255,255,255,16,16,32,16,0,254,255,0,255,0,255,0, + 255,0,255,0,255,0,255,0,255,0,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,16,16,32,16,0,254, + 255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, + 0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255, + 16,16,32,16,0,254,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,0,255,0,255,0,255,0,255,0, + 255,0,255,0,255,0,16,16,32,16,0,254,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,0,255,0,255, + 0,255,0,255,0,255,0,255,0,255,0,255,8,8,8,16, + 8,6,255,255,255,255,255,255,255,255,16,16,32,16,0,254, + 0,255,0,255,0,255,0,255,0,255,0,255,0,255,0,255, + 255,0,255,0,255,0,255,0,255,0,255,0,255,0,255,0, + 16,16,32,16,0,254,0,255,0,255,0,255,0,255,0,255, + 0,255,0,255,0,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,7,7,7,8,1,1,254,254,254,254, + 254,254,254,7,7,7,8,1,1,254,130,130,130,130,130,254, + 7,7,7,8,1,1,124,130,130,130,130,130,124,7,7,7, + 8,1,1,254,130,186,186,186,130,254,7,7,7,8,1,1, + 254,130,254,130,254,130,254,7,7,7,8,1,1,254,170,170, + 170,170,170,254,7,7,7,8,1,1,254,170,254,170,254,170, + 254,7,7,7,8,1,1,254,166,146,202,166,146,254,7,7, + 7,8,1,1,254,202,146,166,202,146,254,7,7,7,8,1, + 1,254,170,214,170,214,170,254,4,4,4,8,2,4,240,240, + 240,240,4,4,4,8,2,4,240,144,144,240,7,4,4,8, + 1,4,254,254,254,254,7,4,4,8,1,4,254,130,130,254, + 4,7,7,8,2,2,240,240,240,240,240,240,240,4,7,7, + 8,2,2,240,144,144,144,144,144,240,8,3,3,8,0,4, + 63,126,252,8,3,3,8,0,4,63,66,252,6,6,6,8, + 1,3,48,48,120,120,252,252,6,6,6,8,1,3,48,48, + 72,72,132,252,6,3,3,8,1,3,48,120,252,6,3,3, + 8,1,3,48,72,252,6,6,6,8,1,3,192,240,252,252, + 240,192,6,6,6,8,1,3,192,176,140,140,176,192,4,4, + 4,8,2,4,192,240,240,192,4,4,4,8,2,4,192,176, + 176,192,6,5,5,8,1,3,192,240,252,240,192,6,5,5, + 8,1,3,192,176,140,176,192,6,6,6,8,1,3,252,252, + 120,120,48,48,6,6,6,8,1,3,252,132,72,72,48,48, + 6,3,3,8,1,3,252,120,48,6,3,3,8,1,3,252, + 72,48,6,6,6,8,1,3,12,60,252,252,60,12,6,6, + 6,8,1,3,12,52,196,196,52,12,4,4,4,8,2,4, + 48,240,240,48,4,4,4,8,2,4,48,208,208,48,6,5, + 5,8,1,3,12,60,252,60,12,6,5,5,8,1,3,12, + 52,196,52,12,7,7,7,8,1,2,16,56,124,254,124,56, + 16,7,7,7,8,1,2,16,40,68,130,68,40,16,7,7, + 7,8,1,2,16,40,84,186,84,40,16,7,7,7,8,1, + 2,56,68,178,186,154,68,56,6,10,10,8,1,1,48,48, + 72,72,132,132,72,72,48,48,7,7,7,8,1,2,56,68, + 130,130,130,68,56,7,7,7,8,1,2,40,0,130,0,130, + 0,40,7,7,7,8,1,2,56,108,170,170,170,108,56,7, + 7,7,8,1,2,56,68,146,170,146,68,56,7,7,7,8, + 1,2,56,124,254,254,254,124,56,7,7,7,8,1,2,56, + 100,226,226,226,100,56,7,7,7,8,1,2,56,76,142,142, + 142,76,56,7,7,7,8,1,2,56,68,130,130,254,124,56, + 7,7,7,8,1,2,56,124,254,130,130,68,56,7,7,7, + 8,1,2,56,92,158,158,130,68,56,7,7,7,8,1,2, + 56,76,142,142,254,124,56,4,7,7,8,1,2,48,112,240, + 240,240,112,48,4,7,7,8,4,2,192,224,240,240,240,224, + 192,8,16,16,8,0,254,255,255,255,255,255,255,231,195,195, + 231,255,255,255,255,255,255,8,16,16,8,0,254,255,255,255, + 255,255,231,219,189,189,219,231,255,255,255,255,255,8,8,8, + 8,0,6,255,255,255,255,255,231,219,189,8,8,8,8,0, + 254,189,219,231,255,255,255,255,255,4,4,4,8,1,5,48, + 64,128,128,4,4,4,8,4,5,192,32,16,16,4,4,4, + 8,4,2,16,16,32,192,4,4,4,8,1,2,128,128,64, + 48,7,4,4,8,1,5,56,68,130,130,7,4,4,8,1, + 2,130,130,68,56,6,6,6,8,1,255,4,12,28,60,124, + 252,6,6,6,8,1,255,128,192,224,240,248,252,6,6,6, + 8,1,6,252,248,240,224,192,128,6,6,6,8,1,6,252, + 124,60,28,12,4,5,5,5,8,1,2,112,136,136,136,112, + 6,6,6,8,1,3,252,228,228,228,228,252,6,6,6,8, + 1,3,252,156,156,156,156,252,6,6,6,8,1,3,252,244, + 228,196,132,252,6,6,6,8,1,3,252,132,140,156,188,252, + 7,6,6,8,1,3,254,146,146,146,146,254,7,7,7,8, + 1,2,16,40,40,68,84,130,254,6,6,6,8,1,2,48, + 48,104,104,228,252,6,7,7,8,1,2,48,48,88,88,156, + 156,252,8,8,8,8,0,2,60,66,129,129,129,129,66,60, + 6,6,6,8,1,0,252,164,228,132,132,252,6,6,6,8, + 1,0,252,132,132,228,164,252,6,6,6,8,1,0,252,132, + 132,156,148,252,6,6,6,8,1,0,252,148,156,132,132,252, + 8,8,8,8,0,0,60,82,145,241,129,129,66,60,8,8, + 8,8,0,0,60,66,129,129,241,145,82,60,8,8,8,8, + 0,0,60,66,129,129,143,137,74,60,8,8,8,8,0,0, + 60,74,137,143,129,129,66,60,6,6,6,8,1,6,252,136, + 144,160,192,128,6,6,6,8,1,6,252,68,36,20,12,4, + 6,6,6,8,1,255,128,192,160,144,136,252,6,6,6,8, + 1,255,252,132,132,132,132,252,6,6,6,8,1,255,252,252, + 252,252,252,252,4,4,4,8,2,0,240,144,144,240,4,4, + 4,8,2,0,240,240,240,240,6,6,6,8,1,255,4,12, + 20,36,68,252}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 10, '1' Height: 14 + Calculated Max Values w=16 h=16 x= 4 y= 5 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-1 + X Font ascent =14 descent=-1 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_72_73[7240] U8G_SECTION(".progmem.u8g_font_unifont_72_73") = { + 0,16,16,0,254,10,4,144,6,240,0,255,255,14,254,14, + 255,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,74,81,234,80,90,81,201,158,0,1,128,0,0,1,128, + 0,0,1,128,0,85,85,14,5,10,16,1,4,115,36,132, + 164,100,188,20,164,227,36,13,5,10,16,1,4,119,72,130, + 72,98,48,18,72,226,72,13,5,10,16,1,4,247,72,130, + 72,242,48,130,72,242,72,14,5,10,16,1,4,243,124,132, + 144,244,144,132,144,243,16,14,5,10,16,1,4,244,152,132, + 164,246,164,133,172,244,156,13,5,10,16,1,4,99,72,148, + 80,244,96,148,80,147,72,14,5,10,16,1,4,231,160,148, + 32,231,160,148,32,231,188,10,5,10,16,1,4,241,192,138, + 0,241,128,136,64,243,128,11,5,10,16,1,4,139,224,136, + 128,248,128,136,128,136,128,11,5,10,16,1,4,131,224,130, + 0,131,224,130,0,250,0,11,5,10,16,1,4,139,224,136, + 128,136,128,80,128,32,128,11,5,10,16,1,4,251,224,130, + 0,251,224,130,0,130,0,11,5,10,16,1,4,123,192,130, + 32,131,192,130,64,122,32,11,5,10,16,1,4,121,192,130, + 32,114,32,10,32,241,192,11,5,10,16,1,4,123,224,128, + 128,112,128,8,128,243,224,12,5,10,16,1,4,228,112,148, + 64,148,112,148,64,231,112,13,5,10,16,1,4,227,16,148, + 48,148,16,148,16,227,56,13,5,10,16,1,4,227,48,148, + 8,148,16,148,32,227,56,13,5,10,16,1,4,227,48,148, + 8,148,48,148,8,227,48,13,5,10,16,1,4,227,8,148, + 24,148,40,148,56,227,8,14,5,10,16,1,4,147,36,212, + 168,212,176,183,168,148,164,14,5,10,16,1,4,104,164,133, + 52,98,44,18,36,226,36,13,5,10,16,1,4,247,112,130, + 72,242,112,130,72,242,112,13,5,10,16,1,4,102,72,137, + 104,143,88,137,72,105,72,11,5,10,16,1,4,250,32,131, + 96,250,160,130,32,250,32,14,5,10,16,1,4,116,184,132, + 164,100,184,20,164,227,56,14,5,10,16,1,4,243,156,132, + 32,243,32,128,160,247,28,9,5,10,16,1,4,243,128,132, + 0,243,0,128,128,135,0,9,5,10,16,1,4,115,128,132, + 0,179,0,144,128,119,0,9,5,10,16,1,4,227,128,148, + 0,227,0,160,128,151,0,9,5,10,16,1,4,147,128,148, + 0,147,0,144,128,103,0,9,5,10,16,1,4,119,0,132, + 128,103,0,20,0,228,0,14,5,10,16,1,4,231,160,148, + 32,151,160,148,32,231,188,6,10,10,8,1,0,40,48,32, + 96,184,36,36,36,36,56,6,2,2,8,1,0,132,252,6, + 9,9,8,1,1,144,208,176,144,0,32,32,32,60,7,7, + 7,8,1,2,2,20,42,84,168,80,128,6,11,11,8,1, + 0,120,132,132,128,64,32,16,16,0,16,16,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 5,10,10,8,2,0,56,40,40,40,32,32,160,160,160,224, + 5,10,10,8,2,0,8,8,8,8,8,248,136,136,136,136, + 5,10,10,8,2,0,136,136,136,136,136,248,32,32,32,32, + 5,10,10,8,2,0,32,32,32,32,32,248,136,136,136,136, + 5,10,10,8,2,0,248,168,168,168,32,32,168,168,168,248, + 5,5,5,8,2,5,136,216,168,216,136,6,8,8,8,1, + 1,28,220,220,192,192,220,220,28,8,10,10,8,0,0,3, + 3,3,27,24,24,216,192,192,192,7,10,10,8,1,0,14, + 174,174,160,160,160,160,160,160,160,7,9,9,8,1,0,218, + 218,218,218,218,218,218,218,218,8,10,10,8,0,0,160,160, + 80,40,40,20,20,10,5,5,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,15,15,30,16, + 0,255,7,192,24,48,32,8,65,4,67,4,133,2,129,2, + 129,2,129,2,129,2,65,4,71,196,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,71,196,72,36, + 128,34,128,34,128,194,131,2,132,2,72,36,79,228,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 71,196,72,36,128,34,128,34,128,194,128,34,128,34,72,36, + 71,196,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,64,68,64,196,129,66,130,66,132,66,136,66, + 159,242,64,68,65,244,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,79,228,72,4,136,2,143,194, + 128,34,128,34,128,34,72,36,71,196,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,71,196,72,36, + 136,2,136,2,143,194,136,34,136,34,72,36,71,196,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 79,228,72,36,128,66,128,66,128,130,129,2,129,2,66,4, + 66,4,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,71,196,72,36,136,34,136,34,135,194,136,34, + 136,34,72,36,71,196,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,71,196,72,36,136,34,136,34, + 135,226,128,34,128,34,72,36,71,196,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,72,228,89,20, + 137,18,137,18,137,18,137,18,137,18,73,20,92,228,32,8, + 24,48,7,192,14,14,28,16,1,255,31,224,32,16,72,72, + 152,196,136,68,136,68,136,68,136,68,136,68,136,68,156,228, + 64,8,32,16,31,224,14,14,28,16,1,255,31,224,32,16, + 73,200,154,36,139,36,136,36,136,196,137,4,138,4,138,20, + 159,228,64,8,32,16,31,224,14,14,28,16,1,255,31,224, + 32,16,73,200,154,36,136,36,136,36,136,196,136,36,138,36, + 138,36,157,196,64,8,32,16,31,224,14,14,28,16,1,255, + 31,224,32,16,72,72,152,196,136,196,137,68,137,68,138,68, + 143,244,136,68,156,228,64,8,32,16,31,224,14,14,28,16, + 1,255,31,224,32,16,75,40,154,196,138,4,138,196,139,36, + 136,36,136,36,138,36,157,196,64,8,32,16,31,224,14,14, + 28,16,1,255,31,224,32,16,72,200,153,36,138,4,138,196, + 139,36,138,36,138,36,138,36,157,196,64,8,32,16,31,224, + 14,14,28,16,1,255,31,224,32,16,75,232,154,36,136,36, + 136,68,136,132,136,132,136,132,136,132,157,196,64,8,32,16, + 31,224,14,14,28,16,1,255,31,224,32,16,73,200,154,36, + 138,36,138,36,137,196,138,36,138,36,138,36,157,196,64,8, + 32,16,31,224,14,14,28,16,1,255,31,224,32,16,73,200, + 154,36,138,36,138,36,137,228,136,36,136,36,138,36,157,196, + 64,8,32,16,31,224,14,14,28,16,1,255,31,224,32,16, + 88,200,165,36,133,36,133,36,137,36,145,36,161,36,165,36, + 188,196,64,8,32,16,31,224,15,14,28,16,0,255,64,4, + 129,2,129,2,129,2,129,2,129,2,129,2,129,2,129,2, + 129,2,129,2,129,2,129,2,64,4,15,14,28,16,0,255, + 64,4,135,130,136,66,136,66,128,66,128,66,128,66,128,130, + 131,2,132,2,136,66,136,66,143,194,64,4,15,14,28,16, + 0,255,64,4,135,130,136,66,136,66,128,66,128,130,131,2, + 128,130,128,66,128,66,136,66,136,66,135,130,64,4,15,14, + 28,16,0,255,65,132,130,130,130,130,130,130,132,130,132,130, + 136,130,136,130,143,226,128,130,128,130,128,130,128,130,64,4, + 15,14,28,16,0,255,64,4,143,194,136,2,136,2,136,2, + 139,130,140,66,136,66,128,66,128,66,136,66,136,66,135,130, + 64,4,15,14,28,16,0,255,64,4,135,130,136,66,136,66, + 136,2,136,2,139,130,140,66,136,66,136,66,136,66,136,66, + 135,130,64,4,15,14,28,16,0,255,64,4,143,226,136,34, + 136,34,128,66,128,130,128,130,128,130,129,2,129,2,129,2, + 129,2,129,2,64,4,15,14,28,16,0,255,64,4,135,130, + 136,66,136,66,136,66,136,66,135,130,136,66,136,66,136,66, + 136,66,136,66,135,130,64,4,15,14,28,16,0,255,64,4, + 135,130,136,66,136,66,136,66,136,66,136,194,135,66,128,66, + 128,66,136,66,136,66,135,130,64,4,15,14,28,16,0,255, + 64,4,136,226,137,18,137,18,137,18,137,18,137,18,137,18, + 137,18,137,18,137,18,137,18,136,226,64,4,15,14,28,16, + 0,255,64,4,136,34,136,34,136,34,136,34,136,34,136,34, + 136,34,136,34,136,34,136,34,136,34,136,34,64,4,15,14, + 28,16,0,255,64,4,145,226,146,18,146,18,144,18,144,18, + 144,34,144,194,145,2,146,2,146,18,146,18,147,242,64,4, + 15,14,28,16,0,255,64,4,145,226,146,18,146,18,144,18, + 144,34,144,194,144,34,144,18,144,18,146,18,146,18,145,226, + 64,4,15,14,28,16,0,255,64,4,144,98,144,162,144,162, + 144,162,145,34,145,34,146,34,146,34,147,250,144,34,144,34, + 144,34,64,4,15,14,28,16,0,255,64,4,147,242,146,2, + 146,2,146,2,146,226,147,18,146,18,144,18,144,18,146,18, + 146,18,145,226,64,4,15,14,28,16,0,255,64,4,145,226, + 146,18,146,18,146,2,146,2,146,226,147,18,146,18,146,18, + 146,18,146,18,145,226,64,4,15,14,28,16,0,255,64,4, + 147,242,146,18,146,18,144,34,144,66,144,66,144,66,144,130, + 144,130,144,130,144,130,144,130,64,4,15,14,28,16,0,255, + 64,4,145,226,146,18,146,18,146,18,146,18,145,226,146,18, + 146,18,146,18,146,18,146,18,145,226,64,4,15,14,28,16, + 0,255,64,4,145,226,146,18,146,18,146,18,146,18,146,50, + 145,210,144,18,144,18,146,18,146,18,145,226,64,4,15,14, + 28,16,0,255,64,4,156,114,162,138,162,138,130,138,130,138, + 132,138,136,138,144,138,160,138,162,138,162,138,190,114,64,4, + 6,14,14,16,4,255,32,96,160,32,32,32,32,32,32,32, + 32,32,32,36,9,14,28,16,3,255,120,0,132,0,132,0, + 4,0,4,0,4,0,8,0,48,0,64,0,128,0,128,0, + 132,0,132,0,252,128,9,14,28,16,3,255,120,0,132,0, + 132,0,4,0,4,0,8,0,48,0,8,0,4,0,4,0, + 132,0,132,0,132,0,120,128,10,15,30,16,3,254,24,0, + 40,0,40,0,40,0,72,0,72,0,72,0,136,0,136,0, + 254,0,8,0,8,0,8,0,8,64,8,0,9,14,28,16, + 3,255,252,0,128,0,128,0,128,0,128,0,128,0,184,0, + 196,0,132,0,4,0,4,0,132,0,132,0,120,128,9,14, + 28,16,3,255,120,0,132,0,132,0,132,0,128,0,128,0, + 184,0,196,0,132,0,132,0,132,0,132,0,132,0,120,128, + 10,14,28,16,3,255,254,0,130,0,130,0,4,0,8,0, + 8,0,8,0,16,0,16,0,16,0,16,0,16,0,16,0, + 16,64,9,14,28,16,3,255,120,0,132,0,132,0,132,0, + 132,0,72,0,48,0,72,0,132,0,132,0,132,0,132,0, + 132,0,120,128,9,14,28,16,3,255,120,0,132,0,132,0, + 132,0,132,0,132,0,140,0,116,0,4,0,4,0,132,0, + 132,0,132,0,120,128,13,14,28,16,0,255,35,192,100,32, + 164,32,36,32,36,32,36,32,36,32,36,32,36,32,36,32, + 36,32,36,32,36,32,35,200,12,14,28,16,0,255,32,128, + 97,128,162,128,32,128,32,128,32,128,32,128,32,128,32,128, + 32,128,32,128,32,128,32,128,32,144,14,14,28,16,0,255, + 35,192,100,32,164,32,32,32,32,32,32,32,32,64,33,128, + 34,0,36,0,36,0,36,32,36,32,39,228,14,14,28,16, + 0,255,35,192,100,32,164,32,32,32,32,32,32,64,33,128, + 32,64,32,32,32,32,36,32,36,32,36,32,35,196,13,14, + 28,16,0,255,32,192,97,64,161,64,33,64,34,64,34,64, + 34,64,36,64,36,64,39,240,32,64,32,64,32,64,32,72, + 14,14,28,16,0,255,39,224,100,0,164,0,36,0,36,0, + 36,0,37,192,38,32,36,32,32,32,32,32,36,32,36,32, + 35,196,14,14,28,16,0,255,35,192,100,32,164,32,36,32, + 36,0,36,0,37,192,38,32,36,32,36,32,36,32,36,32, + 36,32,35,196,14,14,28,16,0,255,39,240,100,16,164,16, + 32,32,32,64,32,64,32,64,32,128,32,128,32,128,32,128, + 32,128,32,128,32,132,14,14,28,16,0,255,35,192,100,32, + 164,32,36,32,36,32,34,64,33,128,34,64,36,32,36,32, + 36,32,36,32,36,32,35,196,14,14,28,16,0,255,35,192, + 100,32,164,32,36,32,36,32,36,32,36,96,35,160,32,32, + 32,32,36,32,36,32,36,32,35,196,13,14,28,16,1,255, + 113,192,138,32,138,32,10,32,10,32,10,32,50,32,66,32, + 130,32,130,32,130,32,138,32,138,32,249,200,14,14,28,16, + 1,255,48,48,64,8,128,4,128,4,135,132,136,68,128,68, + 135,196,136,68,136,68,135,180,128,4,64,8,48,48,14,14, + 28,16,1,255,48,48,72,8,152,4,136,4,139,132,140,68, + 136,36,136,36,136,36,140,68,155,132,128,4,64,8,48,48, + 14,14,28,16,1,255,48,48,64,8,128,4,128,4,135,132, + 136,68,144,4,144,4,144,36,136,68,135,132,128,4,64,8, + 48,48,14,14,28,16,1,255,48,48,64,72,128,196,128,68, + 135,68,136,196,144,68,144,68,144,68,136,196,135,100,128,4, + 64,8,48,48,14,14,28,16,1,255,48,48,64,8,128,4, + 128,4,143,132,144,68,144,68,159,196,144,4,144,68,143,132, + 128,4,64,8,48,48,14,14,28,16,1,255,48,48,65,136, + 130,196,130,4,143,132,130,4,130,4,130,4,130,4,130,4, + 135,4,128,4,64,8,48,48,14,14,28,16,1,255,48,48, + 64,8,128,4,128,100,135,132,136,68,136,68,159,132,144,4, + 143,196,144,36,144,36,79,200,48,48,14,14,28,16,1,255, + 48,48,72,8,152,4,136,4,137,196,142,68,136,68,136,68, + 136,68,136,68,156,228,128,4,64,8,48,48,14,14,28,16, + 1,255,49,48,65,8,128,4,128,4,129,4,131,4,129,4, + 129,4,129,4,129,4,131,132,128,4,64,8,48,48,14,14, + 28,16,1,255,49,48,65,8,128,4,128,4,129,4,131,4, + 129,4,129,4,129,4,129,4,129,4,137,4,70,8,48,48, + 14,14,28,16,1,255,48,48,72,8,152,4,136,4,137,196, + 136,132,137,4,143,4,137,132,136,196,156,228,128,4,64,8, + 48,48,14,14,28,16,1,255,48,48,66,8,134,4,130,4, + 130,4,130,4,130,4,130,4,130,4,130,4,135,4,128,4, + 64,8,48,48,14,14,28,16,1,255,48,48,64,8,128,4, + 128,4,150,196,187,68,146,68,146,68,146,68,146,68,187,100, + 128,4,64,8,48,48,14,14,28,16,1,255,48,48,64,8, + 128,4,128,4,137,196,158,68,136,68,136,68,136,68,136,68, + 156,228,128,4,64,8,48,48,14,14,28,16,1,255,48,48, + 64,8,128,4,128,4,143,132,144,68,144,68,144,68,144,68, + 144,68,143,132,128,4,64,8,48,48,14,14,28,16,1,255, + 48,48,64,8,128,4,128,4,139,132,156,68,136,36,136,36, + 136,36,140,68,139,132,136,4,92,8,48,48,14,14,28,16, + 1,255,48,48,64,8,128,4,128,4,135,68,136,196,144,68, + 144,68,144,68,136,196,135,68,128,68,64,232,48,48,14,14, + 28,16,1,255,48,48,64,8,128,4,128,4,137,196,158,100, + 136,4,136,4,136,4,136,4,156,4,128,4,64,8,48,48, + 14,14,28,16,1,255,48,48,64,8,128,4,128,4,135,196, + 136,36,136,4,135,196,128,36,136,36,135,196,128,4,64,8, + 48,48,14,14,28,16,1,255,48,48,64,8,128,4,130,4, + 130,4,143,132,130,4,130,4,130,4,130,68,131,132,128,4, + 64,8,48,48,14,14,28,16,1,255,48,48,64,8,128,4, + 128,4,136,68,152,196,136,68,136,68,136,68,136,196,143,100, + 128,4,64,8,48,48,14,14,28,16,1,255,48,48,64,8, + 128,4,128,4,156,116,136,36,132,68,132,68,130,132,130,132, + 129,4,128,4,64,8,48,48,14,14,28,16,1,255,48,48, + 64,8,128,4,128,4,191,116,146,36,146,36,137,68,139,68, + 132,132,132,132,128,4,64,8,48,48,14,14,28,16,1,255, + 48,48,64,8,128,4,128,4,156,228,136,68,132,132,131,4, + 132,132,136,68,156,228,128,4,64,8,48,48,14,14,28,16, + 1,255,48,48,64,8,128,4,128,4,184,228,144,68,136,132, + 133,4,130,4,130,4,135,4,128,4,64,8,48,48,14,14, + 28,16,1,255,48,48,64,8,128,4,128,4,135,228,132,68, + 136,132,129,4,130,4,132,36,143,196,128,4,64,8,48,48, + 15,15,30,16,0,255,7,192,24,48,33,8,66,132,68,68, + 132,66,132,66,135,194,132,66,132,66,68,68,76,100,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 79,132,68,68,132,34,132,66,135,130,132,66,132,34,68,68, + 79,196,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,67,196,68,36,132,2,132,2,132,2,132,2, + 132,2,68,36,67,196,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,79,132,68,68,132,34,132,34, + 132,34,132,34,132,34,68,68,79,132,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,79,228,68,36, + 132,2,132,2,135,130,132,2,132,2,68,36,79,228,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 79,228,68,36,132,2,132,2,135,130,132,2,132,2,68,4, + 78,4,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,67,196,68,36,132,2,132,2,132,226,132,34, + 132,34,68,100,67,164,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,78,228,68,68,132,66,132,66, + 135,194,132,66,132,66,68,68,78,228,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,67,132,65,4, + 129,2,129,2,129,2,129,2,129,2,65,4,67,132,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 65,196,64,132,128,130,128,130,128,130,128,130,128,130,72,132, + 71,4,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,78,100,68,68,132,130,133,2,134,2,133,2, + 132,130,68,68,78,100,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,78,4,68,4,132,2,132,2, + 132,2,132,2,132,2,68,36,79,196,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,76,100,70,196, + 134,194,133,66,133,66,132,66,132,66,68,68,78,228,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 76,100,68,68,134,66,134,66,133,66,133,66,132,194,68,196, + 76,100,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,67,132,68,68,136,34,136,34,136,34,136,34, + 136,34,68,68,67,132,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,79,132,68,68,132,66,132,66, + 135,130,132,2,132,2,68,4,78,4,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,67,132,68,68, + 136,34,136,34,136,34,136,34,137,162,68,68,67,164,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 79,132,68,68,132,66,132,66,135,130,133,2,132,130,68,68, + 78,36,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,67,132,68,68,132,2,132,2,131,130,128,66, + 128,66,68,68,67,132,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,79,228,73,36,129,2,129,2, + 129,2,129,2,129,2,65,4,67,132,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,78,228,68,68, + 132,66,132,66,132,66,132,66,132,66,68,68,67,132,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 76,100,68,68,132,66,132,66,130,130,130,130,130,130,65,4, + 65,4,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,76,100,69,68,133,66,133,66,133,66,133,66, + 134,194,68,68,68,68,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,78,228,68,68,132,66,130,130, + 129,2,130,130,132,66,68,68,78,228,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,78,228,68,68, + 132,66,130,130,129,2,129,2,129,2,65,4,67,132,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 79,228,72,36,128,66,128,130,129,2,130,2,132,2,72,36, + 79,228,32,8,24,48,7,192,14,14,28,16,1,255,31,224, + 32,16,64,8,128,4,143,132,144,68,128,68,143,196,144,68, + 144,68,143,180,64,8,32,16,31,224,14,14,28,16,1,255, + 31,224,40,16,88,8,136,4,139,132,140,68,136,36,136,36, + 136,36,140,68,155,132,64,8,32,16,31,224,14,14,28,16, + 1,255,31,224,32,16,64,8,128,4,135,132,136,68,144,4, + 144,4,144,4,136,100,135,132,64,8,32,16,31,224,14,14, + 28,16,1,255,31,224,32,80,64,200,128,68,135,68,136,196, + 144,68,144,68,144,68,144,68,143,164,64,8,32,16,31,224, + 14,14,28,16,1,255,31,224,32,16,64,8,128,4,135,132, + 136,68,144,36,159,228,144,4,136,36,135,196,64,8,32,16, + 31,224,14,14,28,16,1,255,31,224,35,144,66,200,130,4, + 143,132,130,4,130,4,130,4,130,4,130,4,135,4,64,8, + 32,16,31,224,14,14,28,16,1,255,31,224,32,16,64,8, + 128,196,135,132,136,68,136,68,143,132,144,4,159,196,144,36, + 80,40,47,208,31,224,14,14,28,16,1,255,31,224,40,16, + 88,8,136,4,139,196,140,68,136,68,136,68,136,68,136,68, + 156,228,64,8,32,16,31,224,14,14,28,16,1,255,31,224, + 33,16,65,8,128,4,129,4,131,4,129,4,129,4,129,4, + 129,4,131,132,64,8,32,16,31,224,14,14,28,16,1,255, + 31,224,33,16,65,8,128,4,129,4,131,4,129,4,129,4, + 129,4,129,4,129,4,89,8,38,16,31,224,14,14,28,16, + 1,255,31,224,40,16,88,8,136,4,137,228,136,132,139,4, + 141,132,136,196,136,100,156,244,64,8,32,16,31,224,14,14, + 28,16,1,255,31,224,34,16,70,8,130,4,130,4,130,4, + 130,4,130,4,130,4,130,4,135,4,64,8,32,16,31,224, + 14,14,28,16,1,255,31,224,32,16,64,8,128,4,150,196, + 187,68,146,68,146,68,146,68,146,68,187,100,64,8,32,16, + 31,224,14,14,28,16,1,255,31,224,32,16,64,8,128,4, + 139,196,156,68,136,68,136,68,136,68,136,68,156,228,64,8, + 32,16,31,224,14,14,28,16,1,255,31,224,32,16,64,8, + 128,4,135,196,136,36,136,36,136,36,136,36,136,36,135,196, + 64,8,32,16,31,224,14,14,28,16,1,255,31,224,32,16, + 64,8,128,4,139,132,156,68,136,36,136,36,136,36,140,68, + 139,132,72,8,40,16,31,224,14,14,28,16,1,255,31,224, + 32,16,64,8,128,4,135,68,136,196,144,68,144,68,144,68, + 136,196,135,68,64,72,32,80,31,224,14,14,28,16,1,255, + 31,224,32,16,64,8,128,4,137,196,158,100,136,4,136,4, + 136,4,136,4,156,4,64,8,32,16,31,224,14,14,28,16, + 1,255,31,224,32,16,64,8,128,4,135,196,136,36,140,4, + 131,132,128,100,136,36,135,196,64,8,32,16,31,224,14,14, + 28,16,1,255,31,224,32,16,64,8,130,4,130,4,143,132, + 130,4,130,4,130,4,130,68,131,132,64,8,32,16,31,224, + 14,14,28,16,1,255,31,224,32,16,64,8,128,4,136,68, + 152,196,136,68,136,68,136,68,136,68,143,164,64,8,32,16, + 31,224,14,14,28,16,1,255,31,224,32,16,64,8,128,4, + 156,116,136,36,132,68,132,68,130,132,130,132,129,4,64,8, + 32,16,31,224,14,14,28,16,1,255,31,224,32,16,64,8, + 128,4,247,116,162,36,162,36,147,68,149,68,136,132,136,132, + 64,8,32,16,31,224,14,14,28,16,1,255,31,224,32,16, + 64,8,128,4,184,228,136,132,133,4,130,4,133,4,136,132, + 184,228,64,8,32,16,31,224,14,14,28,16,1,255,31,224, + 32,16,64,8,128,4,184,228,144,68,136,132,133,4,130,4, + 130,4,135,4,64,8,32,16,31,224,14,14,28,16,1,255, + 31,224,32,16,64,8,128,4,143,196,136,68,144,132,131,4, + 132,4,136,68,159,132,64,8,32,16,31,224,16,15,30,16, + 0,254,7,224,24,24,32,4,67,194,68,34,132,33,132,33, + 132,33,132,33,132,33,68,34,67,194,32,4,24,24,7,224, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,247,188, + 231,60,247,188,247,188,227,28,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,247,60, + 231,220,247,188,247,124,227,28,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,247,60, + 231,220,247,60,247,220,227,60,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,246,188, + 230,188,246,28,247,188,227,188,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,247,28, + 231,124,247,60,247,220,227,60,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,247,60, + 230,252,246,60,246,220,227,60,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,246,60, + 231,188,247,188,247,124,227,124,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,247,60, + 230,220,247,60,246,220,227,60,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,247,60, + 230,220,247,28,247,220,227,60,127,248,127,248,63,240,15,192, + 14,13,26,16,1,255,15,192,63,240,127,248,127,248,231,156, + 251,108,247,108,239,108,227,156,127,248,127,248,63,240,15,192, + 16,15,30,16,0,254,7,224,24,24,35,196,76,50,80,10, + 144,137,161,133,160,133,160,133,145,201,80,10,76,50,35,196, + 24,24,7,224,16,15,30,16,0,254,7,224,24,24,35,196, + 76,50,80,10,145,137,160,69,160,133,161,5,145,201,80,10, + 76,50,35,196,24,24,7,224,16,15,30,16,0,254,7,224, + 24,24,35,196,76,50,80,10,145,137,160,69,161,133,160,69, + 145,137,80,10,76,50,35,196,24,24,7,224,16,15,30,16, + 0,254,7,224,24,24,35,196,76,50,80,10,146,137,162,133, + 163,197,160,133,144,137,80,10,76,50,35,196,24,24,7,224, + 16,15,30,16,0,254,7,224,24,24,35,196,76,50,80,10, + 145,201,161,5,161,133,160,69,145,137,80,10,76,50,35,196, + 24,24,7,224,16,15,30,16,0,254,7,224,24,24,35,196, + 76,50,80,10,145,137,162,5,163,133,162,69,145,137,80,10, + 76,50,35,196,24,24,7,224,16,15,30,16,0,254,7,224, + 24,24,35,196,76,50,80,10,145,201,160,69,160,69,160,133, + 144,137,80,10,76,50,35,196,24,24,7,224,16,15,30,16, + 0,254,7,224,24,24,35,196,76,50,80,10,145,137,162,69, + 161,133,162,69,145,137,80,10,76,50,35,196,24,24,7,224, + 16,15,30,16,0,254,7,224,24,24,35,196,76,50,80,10, + 145,137,162,69,161,197,160,69,145,137,80,10,76,50,35,196, + 24,24,7,224,16,15,30,16,0,254,7,224,24,24,35,196, + 76,50,80,10,146,105,166,149,162,149,162,149,151,105,80,10, + 76,50,35,196,24,24,7,224,14,13,26,16,1,255,15,192, + 63,240,127,248,127,248,252,252,251,124,251,124,251,124,252,252, + 127,248,127,248,63,240,15,192}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 6, '1' Height: 3 + Calculated Max Values w= 8 h=10 x= 2 y= 4 dx= 8 dy= 0 ascent=11 len=10 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y= 0 dx= 0 dy= 0 + Pure Font ascent = 6 descent= 0 + X Font ascent = 8 descent= 0 + Max Font ascent =11 descent= 0 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_75r[580] U8G_SECTION(".progmem.u8g_font_unifont_75r") = { + 0,16,16,0,254,6,1,137,0,0,32,79,0,11,0,8, + 0,7,7,7,8,1,1,254,254,254,254,254,254,254,7,7, + 7,8,1,1,254,130,130,130,130,130,254,7,7,7,8,1, + 1,124,130,130,130,130,130,124,7,7,7,8,1,1,254,130, + 186,186,186,130,254,7,7,7,8,1,1,254,130,254,130,254, + 130,254,7,7,7,8,1,1,254,170,170,170,170,170,254,7, + 7,7,8,1,1,254,170,254,170,254,170,254,7,7,7,8, + 1,1,254,166,146,202,166,146,254,7,7,7,8,1,1,254, + 202,146,166,202,146,254,7,7,7,8,1,1,254,170,214,170, + 214,170,254,4,4,4,8,2,4,240,240,240,240,4,4,4, + 8,2,4,240,144,144,240,7,4,4,8,1,4,254,254,254, + 254,7,4,4,8,1,4,254,130,130,254,4,7,7,8,2, + 2,240,240,240,240,240,240,240,4,7,7,8,2,2,240,144, + 144,144,144,144,240,8,3,3,8,0,4,63,126,252,8,3, + 3,8,0,4,63,66,252,6,6,6,8,1,3,48,48,120, + 120,252,252,6,6,6,8,1,3,48,48,72,72,132,252,6, + 3,3,8,1,3,48,120,252,6,3,3,8,1,3,48,72, + 252,6,6,6,8,1,3,192,240,252,252,240,192,6,6,6, + 8,1,3,192,176,140,140,176,192,4,4,4,8,2,4,192, + 240,240,192,4,4,4,8,2,4,192,176,176,192,6,5,5, + 8,1,3,192,240,252,240,192,6,5,5,8,1,3,192,176, + 140,176,192,6,6,6,8,1,3,252,252,120,120,48,48,6, + 6,6,8,1,3,252,132,72,72,48,48,6,3,3,8,1, + 3,252,120,48,6,3,3,8,1,3,252,72,48,6,6,6, + 8,1,3,12,60,252,252,60,12,6,6,6,8,1,3,12, + 52,196,196,52,12,4,4,4,8,2,4,48,240,240,48,4, + 4,4,8,2,4,48,208,208,48,6,5,5,8,1,3,12, + 60,252,60,12,6,5,5,8,1,3,12,52,196,52,12,7, + 7,7,8,1,2,16,56,124,254,124,56,16,7,7,7,8, + 1,2,16,40,68,130,68,40,16,7,7,7,8,1,2,16, + 40,84,186,84,40,16,7,7,7,8,1,2,56,68,178,186, + 154,68,56,6,10,10,8,1,1,48,48,72,72,132,132,72, + 72,48,48,7,7,7,8,1,2,56,68,130,130,130,68,56, + 7,7,7,8,1,2,40,0,130,0,130,0,40,7,7,7, + 8,1,2,56,108,170,170,170,108,56,7,7,7,8,1,2, + 56,68,146,170,146,68,56,7,7,7,8,1,2,56,124,254, + 254,254,124,56}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 10, '1' Height: 8 + Calculated Max Values w=16 h=16 x= 3 y= 6 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent= 0 + X Font ascent =10 descent= 0 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_76[2532] U8G_SECTION(".progmem.u8g_font_unifont_76") = { + 0,16,16,0,254,10,2,68,4,220,32,159,0,14,254,10, + 0,7,12,12,8,1,0,16,146,68,0,56,124,124,56,0, + 68,146,16,8,4,4,8,0,6,32,118,255,126,7,8,8, + 8,1,2,56,124,254,16,16,16,16,32,16,16,32,16,0, + 254,139,200,3,192,47,241,4,36,138,80,40,18,10,80,73, + 148,4,33,71,224,8,16,16,136,120,30,16,136,8,16,7, + 224,7,11,11,8,1,0,68,68,72,72,80,82,4,96,144, + 144,96,7,6,6,8,1,3,16,16,254,56,108,68,7,7, + 7,8,1,3,16,16,238,68,84,108,68,5,9,9,8,2, + 0,8,16,32,64,128,64,40,24,56,6,8,8,8,1,0, + 252,132,136,144,160,148,140,156,8,8,8,8,0,0,60,66, + 129,153,153,129,66,60,8,6,6,8,0,2,24,36,36,102, + 165,66,8,6,6,8,0,2,66,165,102,36,36,24,5,6, + 6,8,1,2,8,16,96,144,144,96,7,9,9,8,1,0, + 12,18,18,12,16,96,144,144,96,7,6,6,8,1,1,124, + 198,0,84,198,254,7,7,7,8,1,1,124,130,186,124,146, + 130,254,7,7,7,8,1,0,254,130,130,130,130,130,254,7, + 8,8,8,1,0,8,254,138,138,202,178,130,254,7,7,7, + 8,1,0,254,130,170,146,170,130,254,5,10,10,8,2,0, + 136,136,80,80,32,32,80,80,136,136,7,12,12,8,1,2, + 10,160,8,130,56,124,254,16,16,16,16,32,12,13,26,16, + 2,0,36,128,73,0,73,0,36,128,36,128,73,0,0,0, + 127,32,255,208,191,80,128,80,128,224,127,0,11,13,26,16, + 2,0,4,0,10,0,17,0,32,128,64,64,128,32,128,32, + 128,32,128,32,128,32,128,32,128,32,255,224,11,13,26,16, + 2,0,4,0,14,0,31,0,63,128,127,192,255,224,255,224, + 255,224,255,224,255,224,255,224,255,224,255,224,13,13,26,16, + 1,255,5,0,15,128,15,128,103,48,242,120,127,240,242,120, + 98,48,4,0,4,0,4,0,8,0,16,0,14,15,30,16, + 1,254,102,24,79,24,223,176,159,160,255,160,255,32,255,56, + 126,228,127,36,127,40,63,152,63,144,31,176,15,32,6,0, + 7,4,4,8,1,2,252,62,62,28,7,4,4,8,1,2, + 126,248,248,112,7,4,4,8,1,2,252,34,50,28,4,7, + 7,8,2,2,16,16,112,208,144,144,96,7,4,4,8,1, + 2,126,136,152,112,4,7,7,8,2,0,96,144,144,208,112, + 16,16,8,12,12,8,0,0,231,165,126,129,165,165,129,90, + 90,66,189,231,4,10,10,8,2,0,224,16,16,32,32,64, + 64,128,128,112,13,13,26,16,1,0,31,192,32,32,69,16, + 141,136,157,200,189,232,255,248,130,8,135,8,143,136,95,208, + 32,32,31,192,15,13,26,16,0,255,4,64,8,32,16,16, + 16,16,19,144,12,96,62,248,68,68,133,66,131,130,2,128, + 4,64,24,48,13,15,30,16,1,254,6,0,2,0,255,248, + 71,16,63,224,2,0,26,192,34,32,31,192,18,64,15,128, + 10,128,7,0,10,128,2,0,5,8,8,8,2,0,112,136, + 80,32,248,32,32,32,5,9,9,8,2,0,32,112,32,248, + 32,48,96,32,32,6,10,10,8,1,0,56,36,36,56,32, + 168,112,32,112,168,5,9,9,8,2,0,32,112,32,248,32, + 32,32,32,32,7,7,7,8,1,0,56,16,146,254,146,16, + 56,8,9,9,8,0,1,30,33,64,194,199,194,64,33,30, + 11,11,22,16,2,0,21,0,27,0,0,0,85,64,164,160, + 164,160,164,160,149,32,78,64,31,0,4,0,11,12,24,16, + 3,255,4,0,21,0,36,128,78,64,213,96,213,96,206,96, + 228,224,223,96,142,32,21,0,4,0,8,8,8,8,0,0, + 12,2,57,121,13,62,99,193,7,8,8,8,1,0,124,146, + 146,146,186,214,146,124,13,12,24,16,1,0,31,192,32,32, + 64,16,64,16,152,72,188,8,254,24,239,56,255,248,127,240, + 63,224,31,192,13,10,20,16,1,0,255,248,255,248,0,0, + 0,0,255,248,255,248,0,0,0,0,255,248,255,248,13,10, + 20,16,1,0,248,248,248,248,0,0,0,0,255,248,255,248, + 0,0,0,0,255,248,255,248,13,10,20,16,1,0,255,248, + 255,248,0,0,0,0,248,248,248,248,0,0,0,0,255,248, + 255,248,13,10,20,16,1,0,248,248,248,248,0,0,0,0, + 248,248,248,248,0,0,0,0,255,248,255,248,13,10,20,16, + 1,0,255,248,255,248,0,0,0,0,255,248,255,248,0,0, + 0,0,248,248,248,248,13,10,20,16,1,0,248,248,248,248, + 0,0,0,0,255,248,255,248,0,0,0,0,248,248,248,248, + 13,10,20,16,1,0,255,248,255,248,0,0,0,0,248,248, + 248,248,0,0,0,0,248,248,248,248,13,10,20,16,1,0, + 248,248,248,248,0,0,0,0,248,248,248,248,0,0,0,0, + 248,248,248,248,7,7,7,8,1,0,146,124,124,238,124,124, + 146,8,10,10,8,0,1,60,66,129,165,129,153,165,129,66, + 60,8,9,9,8,0,1,60,66,129,165,129,165,153,66,60, + 8,9,9,8,0,1,60,126,255,219,255,219,231,126,60,7, + 7,7,8,1,2,146,84,56,238,56,84,146,6,10,10,8, + 2,0,224,48,24,20,20,20,20,24,48,224,6,10,10,8, + 1,0,28,48,96,160,160,160,160,96,48,28,5,11,11,8, + 2,0,136,136,112,136,136,136,112,32,248,32,32,5,9,9, + 8,2,0,112,136,136,136,112,32,248,32,32,5,10,10,8, + 2,1,32,32,248,32,32,112,136,136,136,112,7,8,8,8, + 1,1,14,6,10,112,136,136,136,112,6,10,10,8,1,0, + 4,4,4,116,140,12,20,252,4,4,6,10,10,8,1,0, + 64,64,224,64,88,100,68,72,72,72,7,9,9,8,1,0, + 214,84,124,84,214,16,56,40,56,8,11,11,8,0,255,8, + 89,203,73,73,73,62,8,62,8,8,6,10,10,8,1,0, + 248,132,132,132,248,128,128,128,128,252,7,10,10,8,1,0, + 68,170,40,40,16,16,16,16,16,16,7,7,7,8,1,0, + 130,68,56,68,68,68,56,7,10,10,8,1,0,130,124,40, + 40,40,40,40,40,124,130,7,8,8,8,1,0,124,146,144, + 96,12,18,146,124,8,9,9,8,0,0,28,34,34,18,116, + 148,148,101,2,7,10,10,8,1,0,168,248,170,174,170,170, + 170,170,12,248,7,6,6,8,1,1,56,68,68,238,0,254, + 7,10,10,8,1,0,168,248,168,168,168,168,168,168,170,6, + 7,7,7,8,1,0,30,6,138,82,32,80,136,6,10,10, + 8,1,0,128,240,144,144,156,20,28,16,16,96,6,6,6, + 8,1,2,84,168,0,0,84,168,6,9,9,8,1,0,132, + 132,72,72,252,72,72,132,132,7,13,13,8,1,0,16,56, + 146,186,198,130,68,68,68,130,130,130,254,7,11,11,8,1, + 0,16,56,198,130,68,68,68,130,130,130,254,7,9,9,8, + 1,0,170,254,130,130,68,68,130,130,254,7,10,10,8,1, + 0,16,40,68,68,68,68,40,238,130,254,6,11,11,8,1, + 0,4,60,68,132,132,116,36,68,132,132,252,6,8,8,8, + 1,0,48,72,72,48,72,72,132,252,7,13,13,8,1,0, + 16,56,146,186,254,254,124,124,124,254,254,254,254,7,11,11, + 8,1,0,16,56,254,238,124,124,124,254,254,254,254,7,8, + 8,8,1,0,170,254,254,124,124,254,254,254,7,10,10,8, + 1,0,16,56,108,68,108,124,56,254,254,254,6,11,11,8, + 1,0,4,60,108,252,252,124,60,124,252,252,252,6,8,8, + 8,1,0,48,120,120,48,120,120,252,252,7,10,10,8,1, + 0,16,16,56,124,254,254,254,124,16,56,7,9,9,8,1, + 0,108,146,130,130,130,68,40,16,16,5,10,10,8,2,0, + 32,32,80,80,136,136,80,80,32,32,7,10,10,8,1,0, + 56,56,56,16,254,254,214,16,16,56,7,10,10,8,1,0, + 16,16,40,68,130,130,130,124,16,56,7,9,9,8,1,0, + 108,254,254,254,254,124,56,16,16,5,10,10,8,2,0,32, + 32,112,112,248,248,112,112,32,32,7,10,10,8,1,0,56, + 40,56,16,238,186,214,16,16,56,8,11,11,8,0,0,8, + 81,146,146,146,73,73,73,82,129,126,4,10,10,8,1,0, + 16,16,16,16,16,16,16,112,240,224,6,10,10,8,1,0, + 16,24,20,20,16,16,16,112,240,224,8,11,11,8,0,0, + 28,23,17,17,17,17,113,241,231,15,14,8,11,11,8,0, + 0,28,23,17,29,23,17,113,241,231,15,14,6,12,12,8, + 1,0,128,128,128,128,128,184,204,140,136,144,160,192,6,11, + 11,8,1,0,128,128,156,252,228,132,156,252,228,4,4,6, + 13,13,8,1,255,8,72,76,124,248,200,72,76,124,248,200, + 72,64,7,10,10,8,1,0,40,16,16,146,124,146,16,16, + 16,40,7,10,10,8,1,0,56,40,16,214,186,214,16,16, + 40,16,16,16,32,16,0,254,3,184,4,165,8,179,5,9, + 18,5,40,9,68,31,238,0,40,15,48,73,36,201,13,101, + 22,19,37,120,60,192,0,64,15,16,32,16,0,254,3,128, + 4,64,4,64,8,32,0,40,57,24,27,56,41,0,33,8, + 67,132,64,4,128,34,128,66,126,252,0,64,0,32,15,16, + 32,16,0,254,3,128,4,64,4,64,8,32,0,40,59,24, + 24,184,41,0,34,8,67,132,64,4,128,34,128,66,126,252, + 0,64,0,32,15,16,32,16,0,254,3,128,4,64,4,64, + 8,32,0,40,57,24,24,184,43,0,32,136,67,4,64,4, + 128,34,128,66,126,252,0,64,0,32,15,16,32,16,0,254, + 3,128,4,64,4,64,8,32,0,40,58,152,26,184,43,128, + 32,136,64,132,64,4,128,34,128,66,126,252,0,64,0,32, + 15,16,32,16,0,254,3,128,4,64,4,64,8,32,0,40, + 59,152,26,56,43,0,32,136,67,4,64,4,128,34,128,66, + 126,252,0,64,0,32,15,16,32,16,0,254,3,128,4,64, + 4,64,8,32,0,40,57,152,26,56,43,128,34,72,65,132, + 64,4,128,34,128,66,126,252,0,64,0,32,15,16,32,16, + 0,254,3,128,4,64,4,64,8,32,0,40,59,152,24,184, + 41,0,33,8,65,4,64,4,128,34,128,66,126,252,0,64, + 0,32,15,16,32,16,0,254,3,128,4,64,4,64,8,32, + 0,40,56,24,24,56,40,0,32,8,64,4,64,4,128,34, + 128,66,126,252,0,64,0,32,16,16,32,16,0,254,3,184, + 7,189,15,191,7,15,18,7,56,15,124,31,254,0,56,15, + 48,79,36,207,13,231,31,243,61,248,60,192,0,64,15,16, + 32,16,0,254,7,192,15,224,60,120,123,188,119,172,127,204, + 199,142,231,254,215,238,223,238,111,108,118,220,124,60,62,248, + 15,96,7,192,15,16,32,16,0,254,7,192,24,48,32,8, + 67,132,68,84,64,52,184,114,152,2,168,18,160,18,80,148, + 73,36,67,196,33,8,24,176,7,192,13,12,24,16,0,255, + 7,0,24,192,32,32,64,16,77,144,146,72,146,72,77,144, + 64,16,32,32,24,192,7,0,12,11,22,16,2,0,24,0, + 24,0,16,0,30,0,16,0,95,128,128,128,128,64,129,64, + 66,48,60,0}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 11, '1' Height: 11 + Calculated Max Values w=16 h=16 x= 4 y= 4 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =11 descent= 0 + X Font ascent =11 descent=-1 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_77[1587] U8G_SECTION(".progmem.u8g_font_unifont_77") = { + 0,16,16,0,254,11,3,99,5,215,32,99,0,14,254,11, + 255,9,9,18,16,3,1,255,128,128,128,128,128,128,128,136, + 128,128,128,128,128,128,128,255,128,9,9,18,16,3,1,255, + 128,128,128,128,128,160,128,128,128,130,128,128,128,128,128,255, + 128,9,9,18,16,3,1,255,128,128,128,160,128,128,128,136, + 128,128,128,130,128,128,128,255,128,9,9,18,16,3,1,255, + 128,128,128,162,128,128,128,128,128,128,128,162,128,128,128,255, + 128,9,9,18,16,3,1,255,128,128,128,162,128,128,128,136, + 128,128,128,162,128,128,128,255,128,9,9,18,16,3,1,255, + 128,128,128,162,128,128,128,162,128,128,128,162,128,128,128,255, + 128,13,12,24,16,0,255,7,0,24,192,32,32,64,16,64, + 16,128,200,128,200,64,16,64,16,32,32,24,192,7,0,13, + 12,24,16,0,255,7,0,24,192,32,32,64,16,64,16,152, + 200,152,200,64,16,64,16,32,32,24,192,7,0,13,12,24, + 16,0,255,7,0,31,192,63,224,127,240,127,240,255,56,255, + 56,127,240,127,240,63,224,15,128,7,0,13,12,24,16,0, + 255,7,0,31,192,63,224,127,240,127,240,231,56,231,56,127, + 240,127,240,63,224,15,128,7,0,13,2,4,16,1,4,255, + 248,255,248,13,2,4,16,1,4,248,248,248,248,13,6,12, + 16,1,2,255,248,255,248,0,0,0,0,255,248,255,248,13, + 6,12,16,1,2,248,248,248,248,0,0,0,0,255,248,255, + 248,13,6,12,16,1,2,255,248,255,248,0,0,0,0,248, + 248,248,248,13,6,12,16,1,2,248,248,248,248,0,0,0, + 0,248,248,248,248,6,11,11,8,1,0,224,156,132,132,228, + 156,128,128,128,128,128,6,11,11,8,1,0,224,252,252,252, + 252,156,128,128,128,128,128,16,14,28,16,0,255,7,50,95, + 124,62,126,124,31,248,39,116,67,34,129,1,0,2,128,4, + 64,8,32,16,16,32,8,64,4,14,12,24,16,1,0,3, + 128,4,64,4,64,3,128,1,0,7,192,1,0,65,8,225, + 28,65,8,33,16,31,224,13,13,26,16,1,0,128,8,64, + 16,32,32,16,64,8,128,5,0,2,0,5,0,8,128,80, + 80,32,32,80,80,128,8,9,14,28,16,3,255,8,0,8, + 0,127,128,137,128,136,0,126,0,9,0,9,0,62,0,72, + 0,60,0,10,0,28,0,8,0,15,11,22,16,0,0,1, + 0,17,16,127,252,57,56,84,84,84,84,146,146,146,146,254, + 254,124,124,56,56,11,8,16,16,2,0,63,128,95,192,143, + 192,135,128,128,0,15,128,18,64,34,32,11,13,26,16,2, + 255,14,0,17,0,17,0,17,0,14,0,4,0,228,224,245, + 224,117,192,53,128,14,0,4,0,4,0,13,13,26,16,1, + 255,2,0,66,16,47,160,16,64,32,32,32,32,226,56,32, + 32,32,32,16,64,47,160,66,16,2,0,15,13,26,16,0, + 0,1,0,2,128,57,56,127,252,253,126,5,64,3,128,1, + 0,1,0,1,0,1,0,1,0,1,0,13,15,30,16,1, + 254,2,0,117,112,141,136,141,136,138,136,77,144,40,160,26, + 192,40,160,77,144,138,136,141,136,141,136,117,112,2,0,15, + 16,32,16,0,254,1,0,2,128,58,184,68,68,132,66,242, + 158,138,162,6,192,6,192,8,32,6,192,6,192,10,160,50, + 152,70,196,121,60,15,15,30,16,0,255,1,0,2,128,4, + 64,4,64,8,0,107,252,136,2,136,34,96,36,24,16,6, + 80,0,136,33,8,38,72,24,48,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,13,14,28,16,1,255,2,0,5,0,5,0,8,128,8, + 128,18,64,18,64,34,32,34,32,66,16,64,16,130,8,128, + 8,255,248,6,11,11,8,1,255,4,8,16,32,64,252,8, + 16,32,64,128,11,9,18,16,2,0,59,128,68,64,138,32, + 138,32,68,64,59,128,17,0,59,128,17,0,11,11,22,16, + 2,0,7,0,3,0,5,0,56,224,68,96,142,160,149,0, + 104,128,48,128,17,0,14,0,10,14,28,16,3,255,1,192, + 0,192,1,64,14,0,17,0,56,128,84,128,139,0,134,0, + 68,0,56,0,16,0,56,0,16,0,8,12,12,16,4,254, + 7,3,5,56,68,130,130,68,56,16,56,16,11,10,20,16, + 2,0,0,224,0,96,2,160,1,0,58,128,68,0,130,0, + 130,0,68,0,56,0,15,13,26,16,0,254,224,14,192,6, + 168,10,16,16,43,160,4,64,8,32,8,32,4,64,3,128, + 1,0,3,128,1,0,7,12,12,8,0,0,16,56,84,16, + 56,16,56,68,130,130,68,56,14,7,14,16,0,255,56,0, + 68,16,130,136,131,252,130,136,68,16,56,0,7,7,7,8, + 0,255,56,68,130,130,130,68,56,7,7,7,8,0,255,56, + 124,254,254,254,124,56,5,5,5,8,2,0,112,136,136,136, + 112,11,6,12,16,2,0,59,128,68,64,138,32,138,32,68, + 64,59,128,11,7,14,16,3,255,4,0,117,192,142,32,142, + 32,142,32,117,192,4,0,13,5,10,16,1,0,112,112,136, + 136,143,136,136,136,112,112,14,10,20,16,2,0,24,0,39, + 128,64,124,128,0,128,0,128,0,128,0,64,124,39,128,24, + 0,11,13,26,16,2,0,31,0,10,0,63,128,64,64,128, + 32,128,32,64,64,64,64,64,64,32,128,32,128,32,128,31, + 0,7,9,9,8,0,254,56,68,130,130,68,56,16,16,16, + 6,9,9,8,0,254,112,136,4,4,8,48,32,248,32,7, + 10,10,8,0,254,16,40,68,130,68,40,16,16,124,16,7, + 10,10,8,0,254,146,84,56,254,56,84,146,16,124,16,13, + 11,22,16,1,0,2,0,2,0,2,0,2,0,114,112,8, + 128,5,0,242,120,8,128,5,0,2,0,6,11,11,8,1, + 0,36,40,48,40,36,32,112,136,136,136,112,6,10,10,8, + 1,254,56,112,224,224,224,112,56,16,124,16,8,7,7,8, + 0,3,66,36,24,255,24,36,66,7,8,8,8,0,0,68, + 68,68,40,40,40,16,254,7,8,8,8,0,0,254,16,40, + 40,40,68,68,68,7,8,8,8,1,0,252,132,132,132,148, + 252,16,30,6,14,14,8,1,255,168,84,168,84,168,84,168, + 84,168,84,168,84,168,84,6,14,14,8,1,255,168,84,168, + 84,168,84,168,84,168,84,168,84,168,84,6,14,14,8,1, + 255,168,84,168,84,168,84,168,84,168,84,168,84,168,84,12, + 9,18,16,2,0,31,128,96,96,134,16,134,16,224,112,191, + 208,169,80,105,96,31,128,12,12,24,16,2,0,31,128,96, + 96,134,16,134,16,224,112,191,208,169,80,233,112,191,208,169, + 80,105,96,31,128,14,11,22,16,1,255,31,224,112,56,207, + 204,188,244,188,244,143,196,160,20,171,84,203,76,112,56,31, + 224,14,14,28,16,1,255,31,224,112,56,207,204,188,244,188, + 244,143,196,160,20,171,84,139,68,160,20,171,84,203,76,112, + 56,31,224}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 15, '1' Height: 13 + Calculated Max Values w=16 h=15 x= 7 y= 4 dx=16 dy= 0 ascent=14 len=30 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =15 descent=-2 + X Font ascent =15 descent=-2 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_78_79[6975] U8G_SECTION(".progmem.u8g_font_unifont_78_79") = { + 0,16,16,0,254,15,7,255,11,108,1,255,254,14,254,15, + 254,15,11,22,16,0,2,56,0,124,0,108,0,124,0,60, + 0,14,0,127,252,255,254,217,192,248,224,112,0,14,11,22, + 16,0,1,112,8,248,60,216,120,254,240,127,224,7,192,127, + 224,254,240,216,120,248,60,112,8,15,11,22,16,0,255,112, + 0,248,224,217,192,255,254,127,252,14,0,60,0,124,0,108, + 0,124,0,56,0,15,11,22,16,0,1,112,12,136,50,174, + 68,129,136,121,16,6,32,120,80,129,136,174,68,136,50,112, + 12,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,15,15,30,16,0,255,7,192,24,48,32, + 8,65,196,71,228,143,242,143,114,158,98,156,2,159,2,79, + 4,70,4,32,8,24,48,7,192,15,15,30,16,0,255,7, + 192,25,48,35,136,67,132,65,4,131,130,135,194,135,194,135, + 194,139,162,92,116,88,52,32,8,24,48,7,192,15,14,28, + 16,0,255,8,0,15,0,6,0,7,192,195,128,227,192,127, + 254,127,254,227,192,195,128,7,192,6,0,15,0,8,0,14, + 7,14,16,1,3,255,252,192,12,176,52,140,196,179,52,192, + 12,255,252,6,14,14,8,1,255,168,84,168,84,168,84,168, + 84,168,84,168,84,168,84,6,14,14,8,1,255,168,84,168, + 84,168,84,168,84,168,84,168,84,168,84,15,15,30,16,0, + 255,24,48,36,72,34,136,18,144,17,16,9,32,8,32,124, + 252,146,130,146,114,146,34,146,66,124,4,32,8,31,240,15, + 13,26,16,1,0,0,16,0,56,0,112,7,238,25,234,35, + 154,71,10,142,10,223,202,36,10,95,250,224,10,192,14,12, + 12,24,16,1,0,48,0,76,0,170,0,149,0,226,128,81, + 64,40,160,20,80,10,80,5,144,2,48,1,240,15,7,14, + 16,0,3,63,240,80,40,143,244,168,22,143,244,80,40,63, + 240,12,12,24,16,1,0,1,240,2,48,5,144,10,80,20, + 80,40,160,81,64,226,128,149,0,170,0,76,0,48,0,15, + 7,14,16,0,3,0,240,121,8,134,108,128,254,134,108,121, + 8,0,240,15,7,14,16,0,3,0,224,121,240,255,56,255, + 14,255,56,121,240,0,224,13,10,20,16,1,255,0,8,0, + 16,0,32,128,64,128,128,65,0,66,0,36,0,40,0,16, + 0,15,11,22,16,0,255,0,4,0,14,64,28,224,56,224, + 112,112,224,113,192,59,128,63,0,30,0,12,0,11,11,22, + 16,2,1,64,64,224,224,113,192,59,128,31,0,14,0,31, + 0,59,128,113,192,224,224,64,64,15,15,30,16,0,255,16, + 16,56,56,124,124,254,254,127,252,63,248,31,240,15,224,31, + 240,63,248,127,252,254,254,124,124,56,56,16,16,12,13,26, + 16,1,0,192,48,96,192,99,128,54,0,28,0,28,0,54, + 0,51,0,97,128,96,192,192,96,192,48,64,0,12,14,28, + 16,1,255,192,48,224,224,99,192,119,0,62,0,28,0,62, + 0,55,0,115,128,97,192,224,224,192,112,192,32,64,0,15, + 15,30,16,0,255,7,192,4,64,5,64,5,64,5,64,253, + 126,129,2,191,250,129,2,253,126,5,64,5,64,5,64,4, + 64,7,192,15,15,30,16,0,255,7,192,7,192,7,192,7, + 192,7,192,255,254,255,254,255,254,255,254,255,254,7,192,7, + 192,7,192,7,192,7,192,15,15,30,16,0,255,3,128,3, + 128,3,128,3,128,3,128,3,128,252,126,252,126,252,126,3, + 128,3,128,3,128,3,128,3,128,3,128,15,15,30,16,0, + 255,7,192,7,192,7,192,7,192,7,192,248,62,248,62,248, + 62,248,62,248,62,7,192,7,192,7,192,7,192,7,192,9, + 11,22,16,3,1,28,0,28,0,28,0,255,128,255,128,255, + 128,28,0,28,0,28,0,28,0,28,0,13,15,30,16,1, + 255,15,0,9,128,9,128,9,128,249,240,128,24,128,24,249, + 248,121,248,9,128,9,128,9,128,9,128,15,128,7,128,13, + 14,28,16,1,255,31,192,16,64,247,120,135,8,191,232,191, + 232,191,232,135,8,247,120,23,64,23,64,23,64,16,64,31, + 192,15,15,30,16,0,255,31,240,7,192,3,128,131,130,131, + 130,195,134,255,254,255,254,255,254,195,134,131,130,131,130,3, + 128,7,192,31,240,15,15,30,16,0,255,1,0,2,128,4, + 64,4,64,255,254,80,20,80,20,32,8,80,20,80,20,255, + 254,4,64,4,64,2,128,1,0,15,15,30,16,0,255,3, + 128,7,192,7,192,3,128,3,128,97,12,249,62,255,254,249, + 62,97,12,3,128,3,128,7,192,7,192,3,128,15,15,30, + 16,0,255,3,128,7,192,7,192,7,192,3,128,113,28,249, + 62,255,254,249,62,113,28,3,128,7,192,7,192,7,192,3, + 128,15,15,30,16,0,255,7,192,15,224,15,224,7,192,99, + 140,243,158,255,254,255,254,255,254,243,158,99,140,7,192,15, + 224,15,224,7,192,16,15,30,16,0,255,1,0,3,128,7, + 192,7,192,1,0,49,12,113,14,255,255,113,14,49,12,1, + 0,7,192,7,192,3,128,1,0,15,15,30,16,0,255,1, + 0,3,128,3,128,7,192,7,192,31,240,127,252,255,254,127, + 252,31,240,7,192,7,192,3,128,3,128,1,0,15,15,30, + 16,0,255,1,0,2,128,2,128,4,64,4,64,24,48,96, + 12,128,2,96,12,24,48,4,64,4,64,2,128,2,128,1, + 0,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,15,12,24,16,0,1,1,0,2,128,2, + 128,252,126,64,4,56,56,8,32,16,16,17,16,38,200,40, + 40,48,24,15,15,30,16,0,255,7,192,31,240,62,248,126, + 252,124,124,192,6,240,30,248,62,240,30,241,30,103,204,111, + 236,63,248,31,240,7,192,15,12,24,16,0,1,1,0,3, + 128,3,128,255,254,124,124,56,56,8,32,28,112,31,240,62, + 248,56,56,48,24,15,12,24,16,0,1,1,0,2,128,2, + 128,252,126,67,132,39,200,23,208,19,144,16,16,39,200,40, + 40,48,24,15,12,24,16,0,1,1,0,2,128,28,112,225, + 14,79,228,35,136,23,208,20,80,17,16,34,136,44,104,48, + 24,15,12,24,16,0,1,1,0,2,128,29,112,227,142,95, + 244,47,232,23,208,22,208,21,80,34,136,44,104,48,24,15, + 13,26,16,0,0,1,0,3,128,5,192,249,254,93,140,39, + 184,19,240,15,208,29,144,25,208,50,232,44,120,48,24,16, + 13,26,16,0,0,1,0,2,128,2,192,255,254,68,71,56, + 62,8,60,22,208,17,24,39,200,47,44,60,28,24,12,15, + 13,26,16,0,0,3,128,3,128,3,128,67,132,243,158,63, + 252,15,240,63,252,243,158,67,132,3,128,3,128,3,128,15, + 13,26,16,0,0,3,128,3,128,3,128,67,132,243,158,60, + 124,8,48,60,124,243,158,67,132,3,128,3,128,3,128,15, + 15,30,16,0,255,1,0,1,0,33,8,17,16,13,96,15, + 224,7,192,255,254,7,192,15,224,13,96,17,16,33,8,1, + 0,1,0,15,15,30,16,0,255,1,0,1,0,33,8,27, + 176,31,240,15,224,31,224,255,254,31,240,15,224,31,240,27, + 176,33,8,1,0,1,0,15,15,30,16,0,255,1,0,2, + 128,60,248,44,200,38,152,50,184,125,76,131,134,77,124,58, + 152,50,200,38,104,62,120,2,128,1,0,13,13,26,16,1, + 0,2,0,2,0,2,0,135,8,119,112,63,224,31,192,63, + 224,119,112,135,8,2,0,2,0,2,0,15,15,30,16,0, + 255,8,32,8,32,12,96,6,192,230,206,59,184,31,240,7, + 192,31,240,59,184,230,206,6,192,12,96,8,32,8,32,15, + 15,30,16,0,255,8,32,12,96,14,224,15,224,255,254,127, + 252,63,248,31,240,63,248,127,252,255,254,15,224,14,224,12, + 96,8,32,15,15,30,16,0,255,1,0,25,48,15,224,79, + 228,127,252,63,248,63,248,255,254,63,248,63,248,127,252,79, + 228,15,224,25,48,1,0,15,15,30,16,0,255,9,32,73, + 36,37,72,21,80,203,166,55,216,15,224,255,254,15,224,55, + 216,203,166,21,80,37,72,73,36,9,32,15,15,30,16,0, + 255,1,0,3,128,3,128,3,128,225,14,113,28,13,96,3, + 128,13,96,113,28,225,14,3,128,3,128,3,128,1,0,15, + 15,30,16,0,255,3,128,7,192,7,192,99,140,241,30,243, + 158,60,120,8,32,60,120,243,158,241,30,99,140,7,192,7, + 192,3,128,15,15,30,16,0,255,3,128,7,192,7,192,99, + 140,243,158,241,30,61,120,7,192,61,120,241,30,243,158,99, + 140,7,192,7,192,3,128,15,15,30,16,0,255,3,128,4, + 64,4,64,116,92,252,126,254,254,127,252,33,8,67,132,135, + 194,143,226,119,220,7,192,7,192,3,128,15,14,28,16,0, + 0,3,128,7,192,15,224,119,220,255,254,252,126,240,30,112, + 28,24,48,62,248,127,252,126,252,126,252,60,120,15,14,28, + 16,0,0,3,128,4,64,9,32,121,60,133,66,179,154,143, + 226,111,236,23,208,39,200,73,36,82,148,66,132,60,120,15, + 15,30,16,0,255,3,128,60,120,69,68,81,20,77,100,111, + 236,134,194,188,122,134,194,111,236,77,100,81,20,69,68,60, + 120,3,128,15,15,30,16,0,255,7,192,30,240,62,248,92, + 116,103,204,252,126,232,46,136,34,232,46,252,126,103,204,92, + 116,62,248,30,240,7,192,15,15,30,16,0,255,3,128,4, + 192,4,192,116,220,188,230,159,158,79,60,63,248,114,100,230, + 114,206,122,118,92,6,64,6,64,3,128,15,13,26,16,0, + 0,1,0,5,64,3,128,201,38,49,24,77,100,3,128,77, + 100,49,24,201,38,3,128,5,64,1,0,15,13,26,16,0, + 0,1,0,5,64,11,160,201,38,49,24,77,100,131,130,77, + 100,49,24,201,38,11,160,5,64,1,0,15,15,30,16,0, + 255,9,32,13,96,7,192,19,144,201,38,49,24,237,110,3, + 128,237,110,49,24,201,38,17,16,7,192,13,96,9,32,14, + 14,28,16,1,255,7,128,71,136,39,144,19,32,11,64,224, + 28,251,124,251,124,224,28,11,64,19,32,39,144,71,136,7, + 128,15,15,30,16,0,255,7,192,71,196,39,200,19,144,11, + 160,224,14,251,190,251,190,251,190,224,14,11,160,19,144,39, + 200,71,196,7,192,15,15,30,16,0,255,3,128,7,192,7, + 192,119,220,251,190,249,62,125,124,7,192,125,124,249,62,251, + 190,119,220,7,192,7,192,3,128,15,15,30,16,0,255,1, + 0,3,128,51,152,49,24,9,32,5,64,99,140,255,254,99, + 140,5,64,9,32,49,24,51,152,3,128,1,0,15,15,30, + 16,0,255,1,0,3,128,51,152,59,184,25,48,7,192,119, + 220,255,254,119,220,7,192,25,48,59,184,51,152,3,128,1, + 0,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,13,13,26,16,2,255,15,0,48,192,64, + 32,64,48,128,16,128,24,128,24,128,24,64,56,64,48,48, + 240,15,224,7,128,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,12,12,24,16,3,1,255, + 192,128,64,128,112,128,112,128,112,128,112,128,112,128,112,128, + 112,255,240,63,240,63,240,12,12,24,16,3,1,63,240,63, + 240,255,240,128,112,128,112,128,112,128,112,128,112,128,112,128, + 112,128,64,255,192,12,12,24,16,3,1,255,192,128,96,128, + 112,128,112,128,112,128,112,128,112,128,112,128,112,255,240,127, + 240,63,240,12,12,24,16,3,1,63,240,127,240,255,240,128, + 112,128,112,128,112,128,112,128,112,128,112,128,112,128,96,255, + 192,6,14,14,8,1,255,168,84,168,84,168,84,168,84,168, + 84,168,84,168,84,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,13,13,26, + 16,1,0,2,0,7,0,15,128,7,0,34,32,112,112,248, + 248,112,112,34,32,7,0,15,128,7,0,2,0,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,2,15,15,16,7,255,192,192,192,192,192,192,192,192,192, + 192,192,192,192,192,192,4,15,15,16,6,255,240,240,240,240, + 240,240,240,240,240,240,240,240,240,240,240,8,15,15,16,4, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 7,10,10,16,4,4,28,112,192,248,252,254,254,254,124,56, + 7,10,10,16,4,4,56,124,254,254,254,126,62,6,28,112, + 15,10,20,16,0,4,28,28,112,112,192,192,248,248,252,252, + 254,254,254,254,254,254,124,124,56,56,15,10,20,16,0,4, + 56,56,124,124,254,254,254,254,254,254,126,126,62,62,6,6, + 28,28,112,112,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,14,14,28,16, + 1,255,0,32,0,32,31,252,127,240,252,32,252,32,126,32, + 31,224,0,32,96,96,240,64,240,192,99,128,62,0,9,15, + 30,16,3,255,28,0,127,0,255,128,255,128,255,128,127,0, + 28,0,8,0,8,0,0,0,28,0,62,0,62,0,62,0, + 28,0,9,13,26,16,3,0,119,0,255,128,255,128,255,128, + 127,0,28,0,8,0,0,0,28,0,62,0,62,0,62,0, + 28,0,15,13,26,16,0,255,60,120,126,252,255,254,255,254, + 255,254,127,252,127,252,63,248,31,240,15,224,7,192,3,128, + 1,0,13,15,30,16,1,255,56,0,126,0,255,0,255,128, + 255,192,255,224,127,240,63,248,127,240,255,224,255,192,255,128, + 255,0,126,0,56,0,15,14,28,16,0,255,3,0,12,134, + 56,142,103,248,1,0,57,56,126,252,255,254,255,254,127,252, + 63,248,31,226,7,238,0,248,14,15,30,16,1,254,97,152, + 99,200,55,236,23,228,23,252,19,252,115,252,157,248,147,248, + 83,248,103,240,39,240,55,224,19,192,1,128,4,12,12,8, + 3,255,16,32,96,192,192,192,192,192,192,96,32,16,4,12, + 12,8,2,255,128,64,96,48,48,48,48,48,48,96,64,128, + 5,12,12,8,2,255,24,48,112,224,224,224,224,224,224,112, + 48,24,5,12,12,8,2,255,192,96,112,56,56,56,56,56, + 56,112,96,192,5,12,12,8,2,255,24,48,48,96,96,192, + 192,96,96,48,48,24,5,12,12,8,2,255,192,96,96,48, + 48,24,24,48,48,96,96,192,6,12,12,8,2,255,28,56, + 56,112,112,224,224,112,112,56,56,28,6,12,12,8,1,255, + 224,112,112,56,56,28,28,56,56,112,112,224,7,12,12,8, + 1,255,30,60,60,120,120,240,240,120,120,60,60,30,7,12, + 12,8,0,255,240,120,120,60,60,30,30,60,60,120,120,240, + 3,12,12,8,3,255,32,64,128,128,128,128,128,128,128,128, + 64,32,3,12,12,8,2,255,128,64,32,32,32,32,32,32, + 32,32,64,128,6,12,12,8,1,255,60,112,96,96,48,48, + 224,48,48,96,112,60,6,12,12,8,1,255,240,56,24,24, + 48,48,28,48,48,24,56,240,15,15,30,16,0,255,7,192, + 31,240,63,248,126,252,124,252,250,254,254,254,254,254,254,254, + 254,254,126,252,120,60,63,248,31,240,7,192,15,15,30,16, + 0,255,7,192,31,240,63,248,120,60,119,220,255,222,255,222, + 255,62,252,254,251,254,119,220,112,28,63,248,31,240,7,192, + 15,15,30,16,0,255,7,192,31,240,63,248,120,60,119,220, + 255,222,255,222,255,62,255,222,255,222,119,220,120,60,63,248, + 31,240,7,192,15,15,30,16,0,255,7,192,31,240,63,248, + 127,188,127,60,254,190,253,190,251,190,247,190,224,14,127,188, + 126,12,63,248,31,240,7,192,15,15,30,16,0,255,7,192, + 31,240,63,248,112,28,119,252,247,254,240,62,255,222,255,222, + 255,222,119,220,120,60,63,248,31,240,7,192,15,15,30,16, + 0,255,7,192,31,240,63,248,120,60,119,220,247,254,247,254, + 240,62,247,222,247,222,119,220,120,60,63,248,31,240,7,192, + 15,15,30,16,0,255,7,192,31,240,63,248,112,28,119,220, + 255,190,255,190,255,126,254,254,254,254,125,252,125,252,63,248, + 31,240,7,192,15,15,30,16,0,255,7,192,31,240,63,248, + 120,60,119,220,247,222,247,222,248,62,247,222,247,222,119,220, + 120,60,63,248,31,240,7,192,15,15,30,16,0,255,7,192, + 31,240,63,248,120,60,119,220,247,222,247,222,248,30,255,222, + 255,222,119,220,120,60,63,248,31,240,7,192,15,15,30,16, + 0,255,7,192,31,240,63,248,119,28,102,236,246,238,246,238, + 246,238,246,238,246,238,118,236,99,28,63,248,31,240,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,64,132,65,132, + 131,130,129,130,129,130,129,130,129,130,65,132,65,132,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 71,196,79,228,140,98,128,98,129,194,135,2,140,2,79,228, + 79,228,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,71,196,79,228,140,98,128,98,129,194,128,98, + 140,98,79,228,71,196,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,64,228,65,228,131,98,134,98, + 140,98,159,242,159,242,64,100,64,100,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,79,228,79,228, + 140,2,143,194,143,226,128,98,140,98,79,228,71,196,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 71,196,79,228,140,2,143,194,143,226,140,98,140,98,79,228, + 71,196,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 24,48,32,8,79,228,79,228,128,98,128,98,128,194,131,130, + 134,2,70,4,70,4,32,8,24,48,7,192,15,15,30,16, + 0,255,7,192,24,48,32,8,71,196,79,228,140,98,140,98, + 135,194,140,98,140,98,79,228,71,196,32,8,24,48,7,192, + 15,15,30,16,0,255,7,192,24,48,32,8,71,196,79,228, + 140,98,140,98,143,226,135,226,128,98,79,228,71,196,32,8, + 24,48,7,192,15,15,30,16,0,255,7,192,24,48,32,8, + 68,228,77,244,157,178,141,178,141,178,141,178,141,178,77,244, + 76,228,32,8,24,48,7,192,15,15,30,16,0,255,7,192, + 31,240,63,248,127,124,126,124,252,126,254,126,254,126,254,126, + 254,126,126,124,126,124,63,248,31,240,7,192,15,15,30,16, + 0,255,7,192,31,240,63,248,120,60,112,28,243,158,255,158, + 254,62,248,254,243,254,112,28,112,28,63,248,31,240,7,192, + 15,15,30,16,0,255,7,192,31,240,63,248,120,60,112,28, + 243,158,255,158,254,62,255,158,243,158,112,28,120,60,63,248, + 31,240,7,192,15,15,30,16,0,255,7,192,31,240,63,248, + 127,28,126,28,252,158,249,158,243,158,224,14,224,14,127,156, + 127,156,63,248,31,240,7,192,15,15,30,16,0,255,7,192, + 31,240,63,248,112,28,112,28,243,254,240,62,240,30,255,158, + 243,158,112,28,120,60,63,248,31,240,7,192,15,15,30,16, + 0,255,7,192,31,240,63,248,120,60,112,28,243,254,240,62, + 240,30,243,158,243,158,112,28,120,60,63,248,31,240,7,192, + 15,15,30,16,0,255,7,192,31,240,63,248,112,28,112,28, + 255,158,255,158,255,62,252,126,249,254,121,252,121,252,63,248, + 31,240,7,192,15,15,30,16,0,255,7,192,31,240,63,248, + 120,60,112,28,243,158,243,158,248,62,243,158,243,158,112,28, + 120,60,63,248,31,240,7,192,15,15,30,16,0,255,7,192, + 31,240,63,248,120,60,112,28,243,158,243,158,240,30,248,30, + 255,158,112,28,120,60,63,248,31,240,7,192,15,15,30,16, + 0,255,7,192,31,240,63,248,123,28,114,12,226,78,242,78, + 242,78,242,78,242,78,114,12,115,28,63,248,31,240,7,192, + 15,13,26,16,0,0,31,128,15,192,7,224,3,240,255,248, + 255,252,255,254,255,252,255,248,3,240,7,224,15,192,31,128, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,6,14,14,8,1,255,168,84,168,84,168,84, + 168,84,168,84,168,84,168,84,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,11,11,22,16, + 2,1,32,0,112,0,248,0,120,0,60,128,12,128,3,128, + 3,192,15,192,1,192,0,32,15,9,18,16,0,2,1,0, + 1,128,224,192,252,240,255,254,252,240,224,192,1,128,1,0, + 11,11,22,16,2,0,0,32,1,192,15,192,3,192,3,128, + 12,128,60,128,120,0,248,0,112,0,32,0,15,9,18,16, + 0,2,2,0,1,0,1,192,0,240,255,254,0,240,1,192, + 1,0,2,0,15,13,26,16,0,0,0,192,1,224,1,240, + 0,248,127,252,255,254,255,254,255,254,127,252,0,248,1,240, + 1,224,0,192,15,11,22,16,0,1,0,16,0,16,0,24, + 0,24,255,252,255,254,255,252,0,24,0,24,0,16,0,16, + 15,13,26,16,0,0,0,16,0,16,0,24,0,24,255,252, + 255,252,255,254,255,252,255,252,0,24,0,24,0,16,0,16, + 15,9,18,16,0,2,0,32,0,48,0,56,170,252,170,254, + 170,252,0,56,0,48,0,32,15,9,18,16,0,2,0,32, + 0,48,170,248,170,252,170,254,170,252,170,248,0,48,0,32, + 15,9,18,16,0,2,0,32,0,48,0,56,255,252,255,254, + 255,252,0,56,0,48,0,32,14,15,30,16,1,255,128,0, + 224,0,88,0,70,0,33,128,32,96,16,24,15,252,31,248, + 63,224,63,128,126,0,120,0,224,0,128,0,14,15,30,16, + 1,255,128,0,224,0,120,0,126,0,63,128,63,224,31,248, + 15,252,16,24,32,96,33,128,70,0,88,0,224,0,128,0, + 14,15,30,16,1,255,128,0,224,0,120,0,126,0,63,128, + 63,224,31,248,15,252,31,248,63,224,63,128,126,0,120,0, + 224,0,128,0,15,8,16,16,0,3,128,0,128,16,192,24, + 127,252,127,254,63,252,0,24,0,16,15,8,16,16,0,2, + 0,16,0,24,63,252,127,254,127,252,192,24,128,16,128,0, + 7,13,13,16,5,0,16,16,24,248,252,252,254,252,252,248, + 24,16,16,15,9,18,16,0,2,0,64,0,64,255,224,255, + 240,255,254,255,240,255,224,0,64,0,64,14,9,18,16,1, + 2,0,192,0,224,255,176,128,24,128,12,128,24,255,176,0, + 224,0,192,14,9,18,16,1,2,0,192,0,224,255,208,192, + 8,192,4,192,8,255,208,0,224,0,192,15,13,26,16,0, + 255,0,8,0,24,0,36,0,68,63,130,64,2,128,6,255, + 30,254,124,5,240,15,192,15,0,12,0,15,13,26,16,0, + 0,12,0,15,0,15,192,5,240,254,124,255,30,128,6,64, + 2,63,130,0,68,0,36,0,24,0,8,15,12,24,16,0, + 0,0,128,0,192,255,160,128,16,128,8,128,4,128,14,128, + 28,255,184,127,240,0,224,0,64,15,12,24,16,0,1,0, + 64,0,224,127,240,255,184,128,28,128,14,128,4,128,8,128, + 16,255,160,0,192,0,128,16,12,24,16,0,0,0,64,0, + 96,0,80,255,200,64,4,64,2,64,7,255,206,127,220,0, + 120,0,112,0,32,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,16,12,24,16,0,1,0, + 32,0,112,0,120,127,220,255,206,64,7,64,2,64,4,255, + 200,0,80,0,96,0,64,14,15,30,16,1,255,15,128,63, + 224,126,240,254,120,254,56,0,28,0,12,0,4,0,12,0, + 28,254,56,254,120,126,240,63,224,15,128,15,7,14,16,0, + 3,254,0,73,8,36,140,31,254,36,140,73,8,254,0,11, + 11,22,16,2,1,16,0,24,0,28,0,252,0,124,0,60, + 32,2,32,1,96,0,224,1,224,7,224,14,5,10,16,1, + 4,248,16,124,24,63,252,124,24,248,16,11,11,22,16,2, + 0,7,224,1,224,0,224,1,96,2,32,60,32,124,0,252, + 0,28,0,24,0,16,0,11,11,22,16,2,1,8,0,12, + 0,14,0,14,0,254,32,126,32,63,96,3,224,1,224,3, + 224,15,224,15,9,18,16,0,2,0,32,252,16,126,24,63, + 252,31,254,63,252,126,24,252,16,0,32,11,11,22,16,2, + 0,15,224,3,224,1,224,3,224,63,96,126,32,254,32,14, + 0,14,0,12,0,8,0,15,11,22,16,0,1,0,96,0, + 240,0,240,120,56,255,12,255,254,255,12,120,56,0,240,0, + 240,0,96,15,9,18,16,0,2,0,64,96,224,120,240,252, + 120,255,254,252,120,120,240,96,224,0,64,15,7,14,16,0, + 3,248,16,124,24,62,28,31,254,62,28,124,24,248,16,15, + 9,18,16,0,2,248,96,252,112,126,120,127,252,63,254,127, + 252,126,120,252,112,248,96,15,9,18,16,0,2,2,32,1, + 16,0,136,255,196,0,2,255,196,0,136,1,16,2,32,6, + 14,14,8,1,255,168,84,168,84,168,84,168,84,168,84,168, + 84,168,84,6,6,6,8,1,0,128,136,144,160,192,252,11, + 12,24,16,2,0,4,0,10,0,10,0,17,0,17,0,36, + 128,42,128,74,64,81,64,159,32,128,32,255,224,5,6,6, + 8,1,0,32,32,32,32,32,248,10,8,16,16,3,1,63, + 192,64,0,129,128,130,64,130,64,129,128,64,0,63,192,10, + 8,16,16,3,1,255,0,0,128,96,64,144,64,144,64,96, + 64,0,128,255,0,5,10,10,8,2,0,112,136,136,16,16, + 32,32,64,64,56,5,10,10,8,2,0,112,136,136,64,64, + 32,32,16,16,224,7,8,8,8,0,0,130,130,84,68,40, + 40,16,16,14,8,16,16,1,1,129,252,130,0,68,0,68, + 0,36,0,36,0,18,0,17,252,14,8,16,16,1,1,254, + 4,1,4,0,136,0,136,0,144,0,144,1,32,254,32,3, + 10,10,8,2,0,64,64,64,64,224,64,64,64,64,64,6, + 14,14,8,1,255,168,84,168,84,168,84,168,84,168,84,168, + 84,168,84,12,14,28,16,2,254,255,240,128,0,64,0,64, + 0,32,0,32,0,32,0,32,0,32,0,32,0,64,0,64, + 0,128,0,128,0,6,14,14,8,1,255,168,84,168,84,168, + 84,168,84,168,84,168,84,168,84,6,14,14,8,1,255,168, + 84,168,84,168,84,168,84,168,84,168,84,168,84,6,14,14, + 8,1,255,168,84,168,84,168,84,168,84,168,84,168,84,168, + 84,9,9,18,16,4,0,8,0,20,0,34,0,65,0,136, + 128,65,0,34,0,20,0,8,0,7,8,8,8,0,0,16, + 16,40,40,68,84,130,130,9,10,20,16,3,0,136,128,136, + 128,136,128,136,128,136,128,136,128,136,128,136,128,73,0,62, + 0,6,6,6,8,1,0,4,4,36,4,4,252,6,6,6, + 8,1,0,252,128,128,144,128,128,12,10,20,16,2,0,224, + 16,48,48,40,80,36,144,35,16,35,16,36,144,40,80,48, + 48,224,16,12,10,20,16,2,0,128,112,192,192,161,64,146, + 64,140,64,140,64,146,64,161,64,192,192,128,112,14,10,20, + 16,1,0,224,28,48,48,40,80,36,144,35,16,35,16,36, + 144,40,80,48,48,224,28,9,12,24,16,3,0,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,255,128,9,12,24,16,3,0,255,128,8,0,8, + 0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8, + 0,8,0,13,7,14,16,1,2,5,0,5,0,253,248,5, + 0,253,248,5,0,5,0,13,7,14,16,1,2,5,0,5, + 0,5,0,253,248,5,0,5,0,5,0,14,3,6,16,1, + 4,64,0,191,252,64,0,14,3,6,16,1,4,128,0,255, + 252,128,0,14,3,6,16,1,4,0,4,255,252,0,4,3, + 11,11,16,7,255,64,160,64,64,64,64,64,64,64,64,224, + 7,11,11,8,0,0,16,40,40,68,68,254,68,68,40,40, + 16,13,13,26,16,1,0,2,0,5,0,5,0,8,128,16, + 64,96,48,128,8,96,48,16,64,8,128,5,0,5,0,2, + 0,15,13,26,16,0,0,0,128,1,64,1,64,2,32,4, + 16,24,12,224,2,24,12,4,16,2,32,1,64,1,64,0, + 128,15,13,26,16,1,0,2,0,5,0,5,0,8,128,16, + 64,96,48,128,14,96,48,16,64,8,128,5,0,5,0,2, + 0,15,13,26,16,0,0,31,254,16,2,16,2,16,2,16, + 2,16,2,240,2,16,2,16,2,16,2,16,2,16,2,31, + 254,15,13,26,16,1,0,255,240,128,16,128,16,128,16,128, + 16,128,16,128,30,128,16,128,16,128,16,128,16,128,16,255, + 240,5,13,13,8,2,0,248,160,160,160,160,160,160,160,160, + 160,160,160,248,5,13,13,8,1,0,248,40,40,40,40,40, + 40,40,40,40,40,40,248,4,12,12,8,2,0,16,32,32, + 64,64,128,128,64,64,32,32,16,4,12,12,8,2,0,128, + 64,64,32,32,16,16,32,32,64,64,128,6,12,12,8,1, + 0,20,40,40,80,80,160,160,80,80,40,40,20,6,12,12, + 8,1,0,160,80,80,40,40,20,20,40,40,80,80,160,4, + 12,12,8,3,255,16,32,96,160,160,160,160,160,160,96,32, + 16,4,12,12,8,1,255,128,64,96,80,80,80,80,80,80, + 96,64,128,3,12,12,8,4,255,32,64,128,128,128,128,128, + 128,128,128,64,32,3,12,12,8,1,255,128,64,32,32,32, + 32,32,32,32,32,64,128,11,12,24,16,2,0,4,0,10, + 0,27,0,42,128,106,192,170,160,42,128,42,128,42,128,42, + 128,42,128,42,128,11,12,24,16,2,0,42,128,42,128,42, + 128,42,128,42,128,42,128,170,160,106,192,42,128,27,0,10, + 0,4,0,12,10,20,16,2,1,7,128,8,64,16,32,32, + 16,168,16,112,16,32,16,0,32,8,64,7,128,12,10,20, + 16,2,1,30,0,33,0,64,128,128,64,129,80,128,224,128, + 64,64,0,33,0,30,0,15,7,14,16,0,2,3,128,5, + 72,9,36,255,254,9,36,5,72,3,128,15,5,10,16,0, + 3,32,0,64,0,255,254,64,0,32,0,15,5,10,16,0, + 3,0,8,0,4,255,254,0,4,0,8,14,5,10,16,0, + 3,32,16,64,8,255,252,64,8,32,16,15,7,14,16,0, + 2,16,0,32,0,127,254,128,0,127,254,32,0,16,0,15, + 7,14,16,0,2,0,16,0,8,255,252,0,2,255,252,0, + 8,0,16,14,7,14,16,0,2,16,32,32,16,127,248,128, + 4,127,248,32,16,16,32,14,5,10,16,0,3,32,4,64, + 4,255,252,64,4,32,4,14,5,10,16,1,3,128,16,128, + 8,255,252,128,8,128,16,14,7,14,16,0,2,16,4,32, + 4,127,252,128,4,127,252,32,4,16,4,14,7,14,16,1, + 2,128,32,128,16,255,248,128,4,255,248,128,16,128,32,15, + 5,10,16,0,3,0,8,34,36,213,94,8,132,0,8}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 11, '1' Height: 6 + Calculated Max Values w=15 h=15 x= 3 y= 3 dx=16 dy= 0 ascent=13 len=30 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =11 descent= 3 + X Font ascent =11 descent= 0 + Max Font ascent =13 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_86[1876] U8G_SECTION(".progmem.u8g_font_unifont_86") = { + 0,16,16,0,254,11,3,37,5,106,32,116,3,13,254,11, + 0,11,11,22,16,2,0,7,224,4,32,2,32,4,32,8, + 160,17,96,34,0,68,0,136,0,80,0,32,0,11,11,22, + 16,2,0,252,0,132,0,136,0,132,0,162,0,209,0,8, + 128,4,64,2,32,1,64,0,128,11,11,22,16,2,0,32, + 0,80,0,136,0,68,0,34,0,17,96,8,160,4,32,2, + 32,4,32,7,224,11,11,22,16,2,0,0,128,1,64,2, + 32,4,64,8,128,209,0,162,0,132,0,136,0,132,0,252, + 0,14,7,14,16,1,0,16,32,48,48,95,232,128,4,95, + 232,48,48,16,32,13,7,14,16,1,0,16,0,48,0,127, + 248,255,248,127,248,48,0,16,0,7,11,11,8,0,0,16, + 56,124,254,56,56,56,56,56,56,56,7,11,11,8,0,0, + 56,56,56,56,56,56,56,254,124,56,16,11,11,22,16,2, + 0,7,224,7,224,3,224,7,224,15,224,31,96,62,0,124, + 0,248,0,112,0,32,0,11,11,22,16,2,0,252,0,252, + 0,248,0,252,0,254,0,223,0,15,128,7,192,3,224,1, + 192,0,128,11,11,22,16,2,0,32,0,112,0,248,0,124, + 0,62,0,31,96,15,224,7,224,3,224,7,224,7,224,11, + 11,22,16,2,0,0,128,1,192,3,224,7,192,15,128,223, + 0,254,0,252,0,248,0,252,0,252,0,14,7,14,16,1, + 0,16,32,48,48,127,248,255,252,127,248,48,48,16,32,7, + 12,12,8,0,255,16,56,124,254,56,56,56,56,254,124,56, + 16,14,6,12,16,1,0,255,240,0,16,0,16,0,84,0, + 56,0,16,14,6,12,16,1,0,0,16,0,56,0,84,0, + 16,0,16,255,240,14,6,12,16,1,0,63,252,32,0,32, + 0,168,0,112,0,32,0,14,6,12,16,1,0,32,0,112, + 0,168,0,32,0,32,0,63,252,10,10,20,16,3,255,255, + 192,255,192,255,192,255,192,255,192,128,64,128,64,128,64,128, + 64,255,192,10,10,20,16,3,255,255,192,128,64,128,64,128, + 64,128,64,255,192,255,192,255,192,255,192,255,192,10,10,20, + 16,3,255,255,192,255,192,191,192,159,192,143,192,135,192,131, + 192,129,192,128,192,255,192,10,10,20,16,3,255,255,192,192, + 64,224,64,240,64,248,64,252,64,254,64,255,64,255,192,255, + 192,10,10,20,16,3,255,12,0,26,0,57,0,120,128,248, + 64,248,64,120,128,57,0,26,0,12,0,10,10,20,16,3, + 255,12,0,22,0,39,0,71,128,135,192,135,192,71,128,39, + 0,22,0,12,0,10,10,20,16,3,255,12,0,30,0,63, + 0,127,128,255,192,128,64,64,128,33,0,18,0,12,0,10, + 10,20,16,3,255,12,0,18,0,33,0,64,128,128,64,255, + 192,127,128,63,0,30,0,12,0,11,11,22,16,2,0,170, + 160,0,0,128,32,0,0,128,32,0,0,128,32,0,0,128, + 32,0,0,170,160,14,14,28,16,1,255,255,252,255,252,255, + 252,255,252,255,252,255,252,255,252,255,252,255,252,255,252,255, + 252,255,252,255,252,255,252,14,14,28,16,1,255,255,252,128, + 4,128,4,128,4,128,4,128,4,128,4,128,4,128,4,128, + 4,128,4,128,4,128,4,255,252,4,4,4,8,2,2,240, + 240,240,240,4,4,4,8,2,2,240,144,144,240,12,11,22, + 16,2,0,6,0,15,0,31,128,63,192,127,224,255,240,127, + 224,127,224,63,192,63,192,31,128,12,11,22,16,2,0,6, + 0,9,0,16,128,32,64,64,32,128,16,64,32,64,32,32, + 64,32,64,31,128,11,11,22,16,2,255,4,0,27,0,96, + 192,128,32,128,32,128,32,128,32,128,32,96,192,27,0,4, + 0,11,11,22,16,2,255,4,0,31,0,127,192,255,224,255, + 224,255,224,255,224,255,224,127,192,31,0,4,0,14,10,20, + 16,1,0,15,192,31,224,63,240,127,248,255,252,255,252,127, + 248,63,240,31,224,15,192,14,13,26,16,1,254,31,224,63, + 240,127,248,255,252,255,252,255,252,255,252,255,252,255,252,255, + 252,127,248,63,240,31,224,7,7,7,8,0,0,16,56,124, + 254,124,56,16,7,7,7,8,0,0,16,40,68,130,68,40, + 16,7,11,11,8,0,0,16,56,56,124,124,254,124,124,56, + 56,16,7,11,11,8,0,0,16,40,40,68,68,130,68,68, + 40,40,16,5,5,5,8,1,3,32,112,248,112,32,5,7, + 7,8,1,0,32,112,112,248,112,112,32,5,7,7,8,1, + 0,32,80,80,136,80,80,32,15,6,12,16,0,0,15,224, + 127,252,255,254,255,254,127,252,15,224,15,6,12,16,0,0, + 15,224,112,28,128,2,128,2,112,28,15,224,6,13,13,8, + 1,0,48,120,120,120,252,252,252,252,252,120,120,120,48,6, + 13,13,8,1,0,48,72,72,72,132,132,132,132,132,72,72, + 72,48,14,5,10,16,1,3,33,192,66,32,255,252,66,32, + 33,192,14,15,30,16,1,254,32,0,64,0,255,252,64,0, + 32,0,32,0,64,0,255,252,64,0,32,0,32,0,64,0, + 255,252,64,0,32,0,14,5,10,16,1,3,33,192,66,160, + 255,252,66,160,33,192,14,5,10,16,1,3,34,32,69,80, + 245,92,72,128,32,0,14,5,10,16,1,3,40,64,80,64, + 255,252,80,64,40,64,14,5,10,16,1,3,40,160,80,160, + 255,252,80,160,40,160,14,5,10,16,1,3,40,4,80,4, + 255,252,80,4,40,4,14,5,10,16,1,3,40,4,80,8, + 253,176,80,8,40,4,14,5,10,16,1,3,32,0,64,0, + 213,84,64,0,32,0,14,5,10,16,1,3,32,132,64,136, + 255,240,64,136,32,132,14,5,10,16,1,3,33,68,65,72, + 255,240,65,72,33,68,14,5,10,16,1,3,40,4,80,8, + 255,240,80,8,40,4,14,5,10,16,1,3,40,132,80,136, + 255,240,80,136,40,132,14,5,10,16,1,3,41,68,81,72, + 255,240,81,72,41,68,14,5,10,16,1,3,40,144,80,96, + 255,252,80,96,40,144,14,5,10,16,1,3,32,240,65,8, + 254,4,64,0,32,0,14,7,14,16,1,3,3,240,0,0, + 35,240,64,0,255,252,64,0,32,0,14,7,14,16,1,3, + 0,112,8,136,39,0,64,0,255,252,64,0,32,0,14,10, + 20,16,1,254,32,0,64,0,255,252,64,0,32,112,8,136, + 7,0,0,112,8,136,7,0,14,9,18,16,1,1,224,0, + 24,0,6,16,1,8,31,252,1,8,6,16,24,0,224,0, + 14,11,22,16,1,0,252,0,2,0,1,0,0,144,0,136, + 255,252,0,136,0,144,1,0,2,0,252,0,15,11,22,16, + 0,1,4,0,8,0,31,254,32,0,127,254,128,0,127,254, + 32,0,31,254,8,0,4,0,15,11,22,16,0,1,0,64, + 0,32,255,240,0,8,255,252,0,2,255,252,0,8,255,240, + 0,32,0,64,14,7,14,16,1,3,3,128,68,64,56,16, + 0,8,255,252,0,8,0,16,14,10,20,16,1,254,0,16, + 0,8,255,252,0,8,3,144,68,64,56,0,3,128,68,64, + 56,0,14,7,14,16,1,3,7,0,8,136,32,112,64,0, + 255,252,64,0,32,0,14,10,20,16,1,254,32,0,64,0, + 255,252,64,0,39,0,8,136,0,112,7,0,8,136,0,112, + 14,7,14,16,1,1,32,0,64,0,255,252,64,0,32,112, + 8,136,7,0,14,7,14,16,1,1,0,16,0,8,255,252, + 0,8,3,144,68,64,56,0,6,14,14,8,1,255,168,84, + 168,84,168,84,168,84,168,84,168,84,168,84,6,14,14,8, + 1,255,168,84,168,84,168,84,168,84,168,84,168,84,168,84, + 6,14,14,8,1,255,168,84,168,84,168,84,168,84,168,84, + 168,84,168,84,13,13,26,16,1,0,2,0,2,0,5,0, + 5,0,248,248,64,16,32,32,16,64,8,128,16,64,34,32, + 77,144,112,112,11,10,20,16,2,1,4,0,14,0,14,0, + 255,224,127,192,63,128,63,128,123,192,241,224,192,96,11,10, + 20,16,2,1,4,0,10,0,10,0,241,224,64,64,32,128, + 36,128,74,64,177,160,192,96,11,12,24,16,3,0,4,0, + 30,0,127,0,255,128,255,192,255,224,255,224,255,192,255,128, + 127,0,30,0,4,0,11,12,24,16,3,0,4,0,26,0, + 97,0,128,128,128,64,128,32,128,32,128,64,128,128,97,0, + 26,0,4,0}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 8, '1' Height: 12 + Calculated Max Values w=16 h=16 x= 3 y=10 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 8 descent= 0 + X Font ascent =12 descent= 0 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont_8_9[4272] U8G_SECTION(".progmem.u8g_font_unifont_8_9") = { + 0,16,16,0,254,8,4,65,6,56,0,255,0,14,254,12, + 0,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,74,81,234,80,90,81,201,158,0,1,128,0,0,1,128, + 0,0,1,128,0,85,85,6,14,14,8,1,0,72,72,0, + 0,252,128,128,128,248,128,128,128,128,252,7,10,10,8,1, + 0,252,32,32,32,60,34,34,34,34,44,6,14,14,8,1, + 0,24,96,0,0,252,128,128,128,128,128,128,128,128,128,6, + 10,10,8,1,0,56,68,128,128,248,128,128,128,68,56,6, + 10,10,8,1,0,120,132,132,128,96,24,4,132,132,120,5, + 10,10,8,2,0,248,32,32,32,32,32,32,32,32,248,5, + 14,14,8,2,0,144,144,0,0,248,32,32,32,32,32,32, + 32,32,248,6,10,10,8,1,0,28,8,8,8,8,8,8, + 136,136,112,8,10,10,8,0,0,120,72,72,72,78,73,73, + 73,73,142,7,10,10,8,1,0,144,144,144,144,252,146,146, + 146,146,156,7,10,10,8,1,0,252,32,32,32,60,34,34, + 34,34,34,6,14,14,8,1,0,24,96,0,0,128,140,144, + 160,192,192,160,144,136,132,6,13,13,8,1,0,96,24,0, + 132,140,140,148,148,164,164,196,196,132,7,14,14,8,1,0, + 132,132,120,0,130,130,68,68,40,40,16,16,32,96,7,10, + 10,8,1,0,130,130,130,130,130,130,254,16,16,16,6,10, + 10,8,1,0,48,72,72,132,132,132,252,132,132,132,6,10, + 10,8,1,0,248,128,128,128,248,132,132,132,132,248,6,10, + 10,8,1,0,248,132,132,132,248,132,132,132,132,248,6,10, + 10,8,1,0,252,128,128,128,128,128,128,128,128,128,8,12, + 12,8,0,254,14,18,18,18,34,34,34,66,66,255,129,129, + 6,10,10,8,1,0,252,128,128,128,248,128,128,128,128,252, + 7,10,10,8,1,0,146,146,84,84,56,56,84,84,146,146, + 6,10,10,8,1,0,120,132,4,4,120,8,4,4,132,120, + 6,10,10,8,1,0,132,140,140,148,148,164,164,196,196,132, + 6,13,13,8,1,0,72,48,0,132,140,140,148,148,164,164, + 196,196,132,6,10,10,8,1,0,128,140,144,160,192,192,160, + 144,136,132,6,10,10,8,1,0,60,36,36,36,36,36,36, + 68,68,132,6,10,10,8,1,0,132,132,204,204,180,180,132, + 132,132,132,6,10,10,8,1,0,132,132,132,132,252,132,132, + 132,132,132,6,10,10,8,1,0,120,132,132,132,132,132,132, + 132,132,120,6,10,10,8,1,0,252,132,132,132,132,132,132, + 132,132,132,6,10,10,8,1,0,248,132,132,132,248,128,128, + 128,128,128,6,10,10,8,1,0,120,132,132,128,128,128,128, + 132,132,120,7,10,10,8,1,0,254,16,16,16,16,16,16, + 16,16,16,7,10,10,8,1,0,130,130,68,68,40,40,16, + 16,32,96,7,11,11,8,1,0,16,124,146,146,146,146,146, + 124,16,16,16,6,10,10,8,1,0,132,132,72,72,48,48, + 72,72,132,132,7,12,12,8,1,254,132,132,132,132,132,132, + 132,132,132,254,2,2,6,10,10,8,1,0,132,132,132,132, + 132,252,4,4,4,4,7,10,10,8,1,0,146,146,146,146, + 146,146,146,146,146,254,8,12,12,8,0,254,146,146,146,146, + 146,146,146,146,146,255,1,1,7,10,10,8,1,0,224,32, + 32,32,60,34,34,34,34,60,6,10,10,8,1,0,132,132, + 132,132,228,148,148,148,148,228,6,10,10,8,1,0,128,128, + 128,128,248,132,132,132,132,248,6,10,10,8,1,0,112,136, + 4,4,124,4,4,4,136,112,6,10,10,8,1,0,152,164, + 164,164,228,164,164,164,164,152,6,10,10,8,1,0,124,132, + 132,132,124,36,68,68,132,132,6,8,8,8,1,0,120,132, + 4,124,132,132,140,116,6,12,12,8,1,0,4,56,64,128, + 248,132,132,132,132,132,132,120,6,8,8,8,1,0,248,132, + 132,248,132,132,132,248,6,8,8,8,1,0,252,128,128,128, + 128,128,128,128,7,9,9,8,1,255,60,36,68,68,132,132, + 132,254,130,6,8,8,8,1,0,120,132,132,252,128,128,132, + 120,7,8,8,8,1,0,146,146,84,56,56,84,146,146,6, + 8,8,8,1,0,120,132,4,120,8,4,132,120,6,8,8, + 8,1,0,140,140,148,148,164,164,196,196,6,12,12,8,1, + 0,72,48,0,0,140,140,148,148,164,164,196,196,6,8,8, + 8,1,0,140,144,160,192,160,144,136,132,6,8,8,8,1, + 0,60,36,36,36,36,68,68,132,6,8,8,8,1,0,132, + 204,204,180,180,132,132,132,6,8,8,8,1,0,132,132,132, + 252,132,132,132,132,6,8,8,8,1,0,120,132,132,132,132, + 132,132,120,6,8,8,8,1,0,252,132,132,132,132,132,132, + 132,6,10,10,8,1,254,248,132,132,132,132,248,128,128,128, + 128,6,8,8,8,1,0,120,132,128,128,128,128,132,120,7, + 8,8,8,1,0,254,16,16,16,16,16,16,16,6,10,10, + 8,1,254,132,132,72,72,48,48,32,32,64,192,7,10,10, + 8,1,255,16,16,124,146,146,146,146,124,16,16,6,8,8, + 8,1,0,132,132,72,48,48,72,132,132,7,10,10,8,1, + 254,132,132,132,132,132,132,132,254,2,2,6,8,8,8,1, + 0,132,132,132,132,252,4,4,4,7,8,8,8,1,0,146, + 146,146,146,146,146,146,254,8,10,10,8,0,254,146,146,146, + 146,146,146,146,255,1,1,7,8,8,8,1,0,224,32,32, + 60,34,34,34,60,6,8,8,8,1,0,132,132,132,228,148, + 148,148,228,6,8,8,8,1,0,128,128,128,248,132,132,132, + 248,6,8,8,8,1,0,112,136,4,124,4,4,136,112,6, + 8,8,8,1,0,152,164,164,228,164,164,164,152,6,8,8, + 8,1,0,124,132,132,132,124,36,68,132,6,12,12,8,1, + 0,96,24,0,0,120,132,132,252,128,128,132,120,6,12,12, + 8,1,0,72,72,0,0,120,132,132,252,128,128,132,120,6, + 11,11,8,1,255,64,64,240,64,64,120,68,68,68,68,24, + 6,12,12,8,1,0,24,96,0,0,252,128,128,128,128,128, + 128,128,6,8,8,8,1,0,56,68,128,248,128,128,68,56, + 6,8,8,8,1,0,120,132,128,96,24,4,132,120,5,11, + 11,8,2,0,32,32,0,96,32,32,32,32,32,32,248,5, + 11,11,8,2,0,144,144,0,96,32,32,32,32,32,32,248, + 5,13,13,8,1,254,8,8,0,24,8,8,8,8,8,8, + 8,144,96,8,8,8,8,0,0,120,72,72,78,73,73,73, + 142,7,8,8,8,1,0,144,144,144,252,146,146,146,156,6, + 10,10,8,1,0,64,64,240,64,64,88,100,68,68,68,6, + 12,12,8,1,0,24,96,0,0,140,144,160,192,160,144,136, + 132,6,12,12,8,1,0,96,24,0,0,140,140,148,148,164, + 164,196,196,6,15,15,8,1,254,132,132,120,0,0,132,132, + 72,72,48,48,32,32,64,192,5,10,10,8,2,254,136,136, + 136,136,136,136,248,32,32,32,7,10,10,8,1,0,108,130, + 130,130,130,146,146,146,146,108,7,8,8,8,1,0,68,130, + 130,146,146,146,146,108,7,10,10,8,1,0,32,248,32,32, + 60,34,34,34,34,60,6,10,10,8,1,0,64,64,240,64, + 64,120,68,68,68,120,7,10,10,8,1,0,140,146,160,160, + 252,160,160,160,146,140,7,8,8,8,1,0,140,146,160,252, + 160,160,146,140,7,10,10,8,1,0,16,16,40,40,68,108, + 84,146,146,146,7,8,8,8,1,0,16,40,40,68,108,146, + 146,146,7,10,10,8,1,0,144,144,168,168,164,236,212,146, + 146,146,7,8,8,8,1,0,144,168,168,164,236,146,146,146, + 7,10,10,8,1,0,124,68,68,40,16,56,84,146,146,146, + 7,8,8,8,1,0,124,68,40,16,124,146,146,146,7,10, + 10,8,1,0,190,162,162,148,232,156,170,170,170,170,7,8, + 8,8,1,0,190,162,148,232,156,170,170,170,6,14,14,8, + 1,254,72,48,120,132,4,4,120,8,4,4,4,120,128,128, + 6,13,13,8,1,254,72,48,0,120,132,4,120,8,4,4, + 120,128,128,7,10,10,8,1,0,146,146,146,146,146,124,16, + 16,16,16,7,8,8,8,1,254,146,146,146,146,146,124,16, + 16,6,10,10,8,1,0,120,132,132,132,252,132,132,132,132, + 120,6,8,8,8,1,0,120,132,132,252,132,132,132,120,7, + 10,10,8,1,0,134,136,136,136,80,80,80,32,32,32,6, + 8,8,8,1,0,140,144,144,80,80,80,32,32,7,14,14, + 8,1,0,204,34,0,0,134,136,136,136,80,80,80,32,32, + 32,7,12,12,8,1,0,204,34,0,0,140,144,144,80,80, + 80,32,32,7,12,12,8,1,254,64,160,178,178,178,170,172, + 168,168,72,16,16,7,10,10,8,1,254,82,178,178,170,172, + 168,168,72,16,16,7,12,12,8,1,255,16,124,146,130,130, + 130,130,130,130,146,124,16,7,10,10,8,1,255,16,124,146, + 130,130,130,130,146,124,16,7,14,14,8,1,0,120,134,48, + 0,108,130,130,130,130,146,146,146,146,108,7,12,12,8,1, + 0,120,134,48,0,68,130,130,146,146,146,146,108,7,14,14, + 8,1,0,254,16,0,0,108,130,130,130,130,146,146,146,146, + 108,7,12,12,8,1,0,254,16,0,0,68,130,130,146,146, + 146,146,108,6,12,12,8,1,254,120,132,132,128,128,128,128, + 128,120,8,8,8,6,10,10,8,1,254,120,132,132,128,128, + 128,120,8,8,8,7,7,7,8,1,1,36,24,136,84,34, + 48,72,4,3,3,8,1,10,16,240,128,5,4,4,8,0, + 9,16,40,72,128,4,3,3,8,1,10,128,240,128,4,3, + 3,8,1,10,16,240,16,8,3,3,8,0,10,48,76,131, + 14,14,28,16,0,254,1,0,2,128,16,16,40,40,0,0, + 0,0,64,8,160,20,0,0,0,0,0,0,16,16,41,40, + 2,128,14,14,28,16,1,254,1,0,33,8,19,16,24,96, + 0,0,0,0,0,16,224,28,32,0,0,0,0,0,25,176, + 17,16,33,8,7,15,15,8,1,254,72,48,0,132,140,140, + 148,148,164,164,196,196,134,4,8,7,14,14,8,1,254,72, + 48,0,0,140,140,148,148,164,164,196,198,4,8,6,10,10, + 8,1,0,64,224,64,64,64,120,68,68,76,120,6,7,7, + 8,1,0,64,224,64,120,68,68,120,6,10,10,8,1,0, + 248,132,148,136,244,128,128,128,128,128,6,10,10,8,1,254, + 184,196,132,132,132,148,200,180,128,128,6,12,12,8,1,0, + 4,4,252,128,128,128,128,128,128,128,128,128,6,10,10,8, + 1,0,4,4,252,128,128,128,128,128,128,128,7,10,10,8, + 1,0,62,32,32,32,32,248,32,32,32,32,7,8,8,8, + 1,0,62,32,32,32,248,32,32,32,6,11,11,8,1,255, + 252,128,128,128,128,248,132,132,132,132,24,6,9,9,8,1, + 255,252,128,128,128,248,132,132,132,24,7,12,12,8,1,254, + 146,146,84,84,56,56,84,84,146,146,2,2,7,10,10,8, + 1,254,146,146,84,56,56,84,146,146,2,2,6,12,12,8, + 1,254,120,132,4,4,120,8,4,4,132,120,16,96,6,10, + 10,8,1,254,120,132,4,120,8,4,132,120,16,96,6,12, + 12,8,1,254,128,140,144,160,192,192,160,144,136,132,4,4, + 6,10,10,8,1,254,140,144,160,192,160,144,136,132,4,4, + 7,10,10,8,1,0,128,134,168,168,240,168,168,168,132,130, + 7,8,8,8,1,0,134,168,168,240,168,168,132,130,7,10, + 10,8,1,0,64,230,72,80,96,96,80,72,68,66,7,8, + 8,8,1,0,70,232,80,96,80,72,68,66,8,10,10,8, + 0,0,224,35,36,40,48,48,40,36,34,33,8,8,8,8, + 0,0,227,36,40,48,40,36,34,33,7,12,12,8,1,254, + 132,132,132,132,252,132,132,132,132,134,2,2,7,10,10,8, + 1,254,132,132,132,252,132,132,132,134,2,2,7,10,10,8, + 1,0,142,136,136,136,248,136,136,136,136,136,7,8,8,8, + 1,0,142,136,136,248,136,136,136,136,7,12,12,8,1,254, + 240,144,144,144,144,156,146,146,146,146,2,12,7,10,10,8, + 1,254,240,144,144,144,156,146,146,146,2,12,6,11,11,8, + 1,255,56,64,128,152,164,164,164,164,88,48,12,6,9,9, + 8,1,255,56,64,152,164,164,164,88,48,12,6,12,12,8, + 1,254,120,132,132,128,128,128,128,132,132,120,32,24,6,10, + 10,8,1,254,120,132,132,128,128,132,132,120,32,24,7,12, + 12,8,1,254,254,16,16,16,16,16,16,16,16,24,8,8, + 7,10,10,8,1,254,254,16,16,16,16,16,16,24,8,8, + 7,10,10,8,1,0,130,130,68,68,40,16,16,16,16,16, + 5,10,10,8,2,254,136,136,136,80,80,32,32,32,32,32, + 7,10,10,8,1,0,130,130,68,68,40,16,16,124,16,16, + 5,8,8,8,2,0,136,136,136,80,32,32,248,32,7,12, + 12,8,1,254,132,132,72,72,48,48,72,72,132,134,2,2, + 7,10,10,8,1,254,132,132,72,48,48,72,132,134,2,2, + 8,12,12,8,0,254,250,34,34,34,34,34,34,34,34,63, + 1,1,8,10,10,8,0,254,250,34,34,34,34,34,34,63, + 1,1,7,12,12,8,1,254,132,132,132,132,132,140,116,4, + 4,6,2,2,7,10,10,8,1,254,132,132,132,132,140,116, + 4,6,2,2,6,10,10,8,1,0,132,132,132,132,164,172, + 116,36,36,4,6,8,8,8,1,0,132,132,132,164,172,116, + 36,4,6,10,10,8,1,0,128,128,128,184,196,132,132,132, + 132,132,6,8,8,8,1,0,128,128,184,196,132,132,132,132, + 6,10,10,8,1,0,152,164,164,164,124,32,32,36,36,24, + 6,8,8,8,1,0,152,164,164,124,32,32,36,24,6,12, + 12,8,1,254,152,164,164,164,124,32,32,36,36,24,16,12, + 6,10,10,8,1,254,152,164,164,124,32,32,36,24,16,12, + 5,10,10,8,2,0,248,32,32,32,32,32,32,32,32,248, + 7,14,14,8,1,0,130,130,124,0,146,146,84,84,56,56, + 84,84,146,146,7,13,13,8,1,0,68,68,56,0,0,146, + 146,84,56,56,84,146,146,6,12,12,8,1,254,128,140,144, + 160,192,248,132,132,132,132,4,24,6,10,10,8,1,254,140, + 144,160,192,248,132,132,132,4,24,7,12,12,8,1,254,60, + 36,36,36,36,36,36,68,68,134,4,8,7,10,10,8,1, + 254,60,36,36,36,36,68,68,134,4,8,6,12,12,8,1, + 254,132,132,132,132,252,132,132,132,132,132,4,24,6,10,10, + 8,1,254,132,132,132,252,132,132,132,132,4,24,7,12,12, + 8,1,254,132,132,132,132,252,132,132,132,132,134,4,8,7, + 10,10,8,1,254,132,132,132,252,132,132,132,134,4,8,6, + 12,12,8,1,254,132,132,132,132,132,140,116,4,4,12,8, + 8,6,10,10,8,1,254,132,132,132,132,140,116,4,12,8, + 8,7,12,12,8,1,254,132,132,204,204,180,180,132,132,132, + 134,4,8,7,10,10,8,1,254,132,204,204,180,180,132,132, + 134,4,8,3,10,10,8,3,0,224,64,64,64,64,64,64, + 64,64,224,6,14,14,8,1,0,132,132,120,0,48,72,72, + 132,132,252,132,132,132,132,6,13,13,8,1,0,132,132,120, + 0,0,120,132,4,124,132,132,140,116,6,14,14,8,1,0, + 72,72,0,0,48,72,72,132,132,252,132,132,132,132,6,12, + 12,8,1,0,72,72,0,0,120,132,4,124,132,132,140,116, + 7,10,10,8,1,0,62,80,144,144,254,144,144,144,144,158, + 7,8,8,8,1,0,124,146,18,126,144,144,146,124,6,14, + 14,8,1,0,132,132,120,0,252,128,128,128,248,128,128,128, + 128,252,6,12,12,8,1,0,132,132,120,0,120,132,132,252, + 128,128,132,120,6,10,10,8,1,0,48,72,132,4,4,252, + 132,132,72,48,6,8,8,8,1,0,120,132,4,4,252,132, + 132,120,6,14,14,8,1,0,72,72,0,0,48,72,132,4, + 4,252,132,132,72,48,6,12,12,8,1,0,72,72,0,0, + 120,132,4,4,252,132,132,120,7,14,14,8,1,0,72,72, + 0,0,146,146,84,84,56,56,84,84,146,146,7,12,12,8, + 1,0,72,72,0,0,146,146,84,56,56,84,146,146,6,14, + 14,8,1,0,72,72,0,0,120,132,4,4,120,8,4,4, + 132,120,6,12,12,8,1,0,72,72,0,0,120,132,4,120, + 8,4,132,120,6,10,10,8,1,0,252,8,16,32,56,4, + 4,4,140,120,6,10,10,8,1,254,124,8,16,32,56,4, + 4,4,132,120,6,13,13,8,1,0,120,0,0,132,140,140, + 148,148,164,164,196,196,132,6,11,11,8,1,0,120,0,0, + 140,140,148,148,164,164,196,196,6,14,14,8,1,0,72,72, + 0,0,132,140,140,148,148,164,164,196,196,132,6,12,12,8, + 1,0,72,72,0,0,140,140,148,148,164,164,196,196,6,14, + 14,8,1,0,72,72,0,0,120,132,132,132,132,132,132,132, + 132,120,6,12,12,8,1,0,72,72,0,0,120,132,132,132, + 132,132,132,120,6,10,10,8,1,0,120,132,132,132,252,132, + 132,132,132,120,6,8,8,8,1,0,120,132,132,252,132,132, + 132,120,6,14,14,8,1,0,72,72,0,0,120,132,132,132, + 252,132,132,132,132,120,6,12,12,8,1,0,72,72,0,0, + 120,132,132,252,132,132,132,120,6,12,12,8,1,0,72,0, + 120,132,4,4,124,4,4,4,132,120,6,10,10,8,1,0, + 72,0,120,132,4,60,4,4,132,120,7,13,13,8,1,0, + 124,0,0,130,130,68,68,40,40,16,16,32,96,6,13,13, + 8,1,254,120,0,0,132,132,72,72,48,48,32,32,64,192, + 7,14,14,8,1,0,72,72,0,0,130,130,68,68,40,40, + 16,16,32,96,6,14,14,8,1,254,72,72,0,0,132,132, + 72,72,48,48,32,32,64,192,7,14,14,8,1,0,102,136, + 0,0,130,130,68,68,40,40,16,16,32,96,7,14,14,8, + 1,254,102,136,0,0,132,132,72,72,48,48,32,32,64,192, + 6,14,14,8,1,0,72,72,0,0,132,132,132,132,132,140, + 116,4,4,4,6,12,12,8,1,0,72,72,0,0,132,132, + 132,132,140,116,4,4,6,12,12,8,1,254,252,128,128,128, + 128,128,128,128,128,224,96,32,6,10,10,8,1,254,252,128, + 128,128,128,128,128,224,96,32,6,14,14,8,1,0,72,72, + 0,0,132,132,132,132,228,148,148,148,148,228,6,12,12,8, + 1,0,72,72,0,0,132,132,132,228,148,148,148,228,6,12, + 12,8,1,254,252,128,128,128,248,128,128,128,128,192,64,192, + 5,10,10,8,1,254,248,128,128,240,128,128,128,192,64,192, + 6,12,12,8,1,254,132,132,72,72,48,48,72,72,132,132, + 4,8,6,10,10,8,1,254,132,132,72,48,48,72,132,132, + 4,8,6,10,10,8,1,0,132,132,72,72,48,252,72,72, + 132,132,6,8,8,8,1,0,132,132,72,48,252,72,132,132 + }; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=16 h=16 x= 4 y=14 dx=16 dy= 0 ascent=14 len=32 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =11 descent=-2 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifont[5516] U8G_SECTION(".progmem.u8g_font_unifont") = { + 0,16,16,0,254,10,6,167,8,149,0,255,254,14,254,11, + 254,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,74,81,234,80,90,81,201,158,0,1,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,57,147,194,82,50,95,138,82,113, + 147,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,59,165,193, + 36,49,25,137,36,113,37,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,123,165,193,36,121,25,193,36,121,37,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,121,191,194,72,122,73,194, + 72,121,137,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,122, + 77,194,82,123,83,194,214,122,79,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,49,165,202,40,122,49,202,40,73,165,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,115,209,202,16,115, + 209,202,16,115,223,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,120,225,197,0,120,193,196,32,121,193,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,69,241,196,64,124,65,196,64,68, + 65,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,65,241,193, + 0,65,241,193,0,125,1,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,69,241,196,64,68,65,168,64,16,65,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,125,241,193,0,125,241,193, + 0,65,1,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,61, + 225,193,16,65,225,193,32,61,17,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,60,225,193,16,57,17,133,16,120,225,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,61,241,192,64,56, + 65,132,64,121,241,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,114,57,202,32,74,57,202,32,115,185,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,113,137,202,24,74,9,202,8,113, + 157,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,113,153,202, + 4,74,9,202,16,113,157,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,113,153,202,4,74,25,202,4,113,153,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,113,133,202,12,74,21,202, + 28,113,133,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,73, + 147,234,84,106,89,219,212,74,83,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,52,83,194,154,49,23,137,18,113,19,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,123,185,193,36,121, + 57,193,36,121,57,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,51,37,196,180,71,173,196,164,52,165,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,125,17,193,176,125,81,193,16,125, + 17,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,58,93,194, + 82,50,93,138,82,113,157,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,121,207,194,16,121,145,192,80,123,143,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,121,193,194,0,121,129,192, + 64,67,129,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,57, + 193,194,0,89,129,200,64,59,129,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,113,193,202,0,113,129,208,64,75,129,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,73,193,202,0,73, + 129,200,64,51,129,128,0,0,1,128,0,0,1,128,0,85, + 85,0,0,0,8,0,14,1,10,10,8,4,0,128,128,128, + 128,128,128,128,0,128,128,5,4,4,8,2,8,136,136,136, + 136,6,10,10,8,1,0,36,36,36,252,72,72,252,144,144, + 144,7,10,10,8,1,0,16,124,146,144,112,28,18,146,124, + 16,7,10,10,8,1,0,98,148,148,104,16,16,44,82,82, + 140,7,10,10,8,1,0,56,68,68,68,56,114,138,132,140, + 114,1,4,4,8,4,8,128,128,128,128,3,12,12,8,3, + 255,32,64,64,128,128,128,128,128,128,64,64,32,3,12,12, + 8,2,255,128,64,64,32,32,32,32,32,32,64,64,128,7, + 7,7,8,1,1,16,146,84,56,84,146,16,7,7,7,8, + 1,1,16,16,16,254,16,16,16,2,4,4,8,3,254,192, + 64,64,128,6,1,1,8,1,4,252,2,2,2,8,3,0, + 192,192,6,10,10,8,1,0,4,4,8,16,16,32,32,64, + 128,128,6,10,10,8,1,0,48,72,132,132,132,132,132,132, + 72,48,5,10,10,8,2,0,32,96,160,32,32,32,32,32, + 32,248,6,10,10,8,1,0,120,132,132,4,24,32,64,128, + 128,252,6,10,10,8,1,0,120,132,132,4,56,4,4,132, + 132,120,6,10,10,8,1,0,8,24,40,72,136,136,252,8, + 8,8,6,10,10,8,1,0,252,128,128,128,248,4,4,4, + 132,120,6,10,10,8,1,0,56,64,128,128,248,132,132,132, + 132,120,6,10,10,8,1,0,252,4,4,8,8,8,16,16, + 16,16,6,10,10,8,1,0,120,132,132,132,120,132,132,132, + 132,120,6,10,10,8,1,0,120,132,132,132,124,4,4,4, + 8,112,2,7,7,8,3,1,192,192,0,0,0,192,192,2, + 9,9,8,3,255,192,192,0,0,0,192,64,64,128,5,9, + 9,8,2,0,8,16,32,64,128,64,32,16,8,6,5,5, + 8,1,2,252,0,0,0,252,5,9,9,8,1,0,128,64, + 32,16,8,16,32,64,128,6,10,10,8,1,0,120,132,132, + 4,8,16,16,0,16,16,6,10,10,8,1,0,56,68,148, + 172,164,164,164,156,64,60,6,10,10,8,1,0,48,72,72, + 132,132,252,132,132,132,132,6,10,10,8,1,0,248,132,132, + 132,248,132,132,132,132,248,6,10,10,8,1,0,120,132,132, + 128,128,128,128,132,132,120,6,10,10,8,1,0,240,136,132, + 132,132,132,132,132,136,240,6,10,10,8,1,0,252,128,128, + 128,248,128,128,128,128,252,6,10,10,8,1,0,252,128,128, + 128,248,128,128,128,128,128,6,10,10,8,1,0,120,132,132, + 128,128,156,132,132,140,116,6,10,10,8,1,0,132,132,132, + 132,252,132,132,132,132,132,5,10,10,8,2,0,248,32,32, + 32,32,32,32,32,32,248,7,10,10,8,1,0,62,8,8, + 8,8,8,8,136,136,112,6,10,10,8,1,0,132,136,144, + 160,192,192,160,144,136,132,6,10,10,8,1,0,128,128,128, + 128,128,128,128,128,128,252,6,10,10,8,1,0,132,132,204, + 204,180,180,132,132,132,132,6,10,10,8,1,0,132,196,196, + 164,164,148,148,140,140,132,6,10,10,8,1,0,120,132,132, + 132,132,132,132,132,132,120,6,10,10,8,1,0,248,132,132, + 132,248,128,128,128,128,128,7,11,11,8,1,255,120,132,132, + 132,132,132,132,180,204,120,6,6,10,10,8,1,0,248,132, + 132,132,248,144,136,136,132,132,6,10,10,8,1,0,120,132, + 132,128,96,24,4,132,132,120,7,10,10,8,1,0,254,16, + 16,16,16,16,16,16,16,16,6,10,10,8,1,0,132,132, + 132,132,132,132,132,132,132,120,7,10,10,8,1,0,130,130, + 130,68,68,68,40,40,16,16,6,10,10,8,1,0,132,132, + 132,132,180,180,204,204,132,132,6,10,10,8,1,0,132,132, + 72,72,48,48,72,72,132,132,7,10,10,8,1,0,130,130, + 68,68,40,16,16,16,16,16,6,10,10,8,1,0,252,4, + 4,8,16,32,64,128,128,252,3,12,12,8,4,255,224,128, + 128,128,128,128,128,128,128,128,128,224,6,10,10,8,1,0, + 128,128,64,32,32,16,16,8,4,4,3,12,12,8,1,255, + 224,32,32,32,32,32,32,32,32,32,32,224,6,3,3,8, + 1,9,48,72,132,7,1,1,8,1,255,254,3,3,3,8, + 2,10,128,64,32,6,8,8,8,1,0,120,132,4,124,132, + 132,140,116,6,11,11,8,1,0,128,128,128,184,196,132,132, + 132,132,196,184,6,8,8,8,1,0,120,132,128,128,128,128, + 132,120,6,11,11,8,1,0,4,4,4,116,140,132,132,132, + 132,140,116,6,8,8,8,1,0,120,132,132,252,128,128,132, + 120,5,11,11,8,1,0,24,32,32,32,248,32,32,32,32, + 32,32,6,11,11,8,1,254,4,116,136,136,136,112,64,120, + 132,132,120,6,11,11,8,1,0,128,128,128,184,196,132,132, + 132,132,132,132,5,11,11,8,2,0,32,32,0,96,32,32, + 32,32,32,32,248,5,13,13,8,1,254,8,8,0,24,8, + 8,8,8,8,8,8,144,96,6,10,10,8,1,0,128,128, + 136,144,160,192,160,144,136,132,5,10,10,8,2,0,96,32, + 32,32,32,32,32,32,32,248,7,8,8,8,1,0,236,146, + 146,146,146,146,146,146,6,8,8,8,1,0,184,196,132,132, + 132,132,132,132,6,8,8,8,1,0,120,132,132,132,132,132, + 132,120,6,10,10,8,1,254,184,196,132,132,132,132,196,184, + 128,128,6,10,10,8,1,254,116,140,132,132,132,132,140,116, + 4,4,6,8,8,8,1,0,184,196,132,128,128,128,128,128, + 6,8,8,8,1,0,120,132,128,96,24,4,132,120,5,10, + 10,8,1,0,32,32,248,32,32,32,32,32,32,24,6,8, + 8,8,1,0,132,132,132,132,132,132,140,116,6,8,8,8, + 1,0,132,132,132,72,72,72,48,48,7,8,8,8,1,0, + 130,146,146,146,146,146,146,108,6,8,8,8,1,0,132,132, + 72,48,48,72,132,132,6,10,10,8,1,254,132,132,132,132, + 132,76,52,4,4,120,6,8,8,8,1,0,252,4,8,16, + 32,64,128,252,3,12,12,8,3,255,96,128,128,64,64,128, + 128,64,64,128,128,96,1,14,14,8,4,254,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,3,12,12,8,2,255, + 192,32,32,64,64,32,32,64,64,32,32,192,7,3,3,8, + 1,8,98,146,140,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,115,209,202,16,75,209,202,16,115,223,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,113,157,202,82,115, + 211,194,82,66,93,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,73,157,202,82,122,93,202,80,73,145,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,115,147,202,82,115,159,202,18,114, + 19,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,75,147,234, + 82,91,159,202,82,75,147,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,116,185,166,164,37,165,164,164,116,185,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,75,209,234,16,91,209,202, + 16,75,223,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,57, + 205,194,18,49,159,136,82,115,147,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,121,205,194,18,121,159,192,82,123,147,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,75,157,201,32,121, + 25,201,4,73,57,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,75,185,201,8,121,9,201,8,73,49,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,69,205,196,144,68,137,168,132,16, + 153,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,114,29,202, + 18,114,19,194,18,67,221,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,114,19,202,18,114,19,194,18,67,205,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,14,33,137,32,14,33,138, + 32,9,33,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,57, + 221,194,2,49,141,136,80,115,159,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,57,221,194,2,49,141,136,66,115,157,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,113,207,202,16,74, + 13,202,2,113,221,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,114,69,202,76,114,69,194,68,65,143,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,114,93,202,66,114,77,194,80,65, + 159,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,59,157,193, + 32,49,25,137,4,113,57,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,57,211,194,18,66,31,194,18,57,211,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,69,17,237,16,85,81,197, + 176,69,17,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,59, + 141,194,82,51,159,138,18,114,19,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,123,141,194,82,123,159,194,18,122,19,128, + 0,0,1,128,0,0,1,128,0,85,85,16,16,32,16,0, + 254,170,170,0,1,128,0,0,1,128,0,57,143,194,80,50, + 77,138,66,113,157,128,0,0,1,128,0,0,1,128,0,85, + 85,16,16,32,16,0,254,170,170,0,1,128,0,0,1,128, + 0,51,155,196,34,37,163,148,162,99,155,128,0,0,1,128, + 0,0,1,128,0,85,85,16,16,32,16,0,254,170,170,0, + 1,128,0,0,1,128,0,57,221,194,8,50,9,138,8,113, + 221,128,0,0,1,128,0,0,1,128,0,85,85,16,16,32, + 16,0,254,170,170,0,1,128,0,0,1,128,0,57,221,194, + 8,65,137,192,72,59,157,128,0,0,1,128,0,0,1,128, + 0,85,85,16,16,32,16,0,254,170,170,0,1,128,0,0, + 1,128,0,14,249,144,32,12,33,130,32,28,33,128,0,0, + 1,128,0,0,1,128,0,85,85,16,16,32,16,0,254,170, + 170,0,1,128,0,0,1,128,0,49,207,202,16,73,145,200, + 80,51,143,128,0,0,1,128,0,0,1,128,0,85,85,16, + 16,32,16,0,254,170,170,0,1,128,0,0,1,128,0,114, + 33,203,96,114,161,194,32,66,33,128,0,0,1,128,0,0, + 1,128,0,85,85,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,51,143,202,80,123,145,202,16,74,15,128, + 0,0,1,128,0,0,1,128,0,85,85,0,0,0,8,0, + 14,1,10,10,8,4,0,128,128,0,128,128,128,128,128,128, + 128,7,10,10,8,1,0,16,16,124,146,144,144,146,124,16, + 16,7,10,10,8,1,0,28,32,32,32,248,32,32,32,124, + 194,6,8,8,8,1,1,132,72,120,72,72,120,72,132,7, + 10,10,8,1,0,130,68,40,16,254,16,254,16,16,16,1, + 10,10,8,4,0,128,128,128,128,0,0,128,128,128,128,6, + 10,10,8,1,0,120,132,128,120,132,132,120,4,132,120,4, + 2,2,8,2,12,144,144,8,10,10,8,0,0,60,66,153, + 165,161,161,165,153,66,60,5,7,7,8,2,5,112,8,120, + 136,120,0,248,6,9,9,8,1,0,36,36,72,72,144,72, + 72,36,36,6,4,4,8,1,0,252,4,4,4,6,1,1, + 8,1,4,252,8,10,10,8,0,0,60,66,185,165,165,185, + 169,165,66,60,6,1,1,8,1,11,252,3,4,4,8,2, + 10,64,160,160,64,7,9,9,8,1,1,16,16,16,254,16, + 16,16,0,254,5,7,7,8,2,5,112,136,8,112,128,128, + 248,5,7,7,8,2,5,112,136,8,112,8,136,112,3,3, + 3,8,3,10,32,64,128,5,8,8,8,2,254,136,136,136, + 136,216,168,128,128,6,12,12,8,1,255,124,244,244,244,244, + 116,20,20,20,20,20,28,2,2,2,8,3,4,192,192,3, + 2,2,8,2,254,32,192,3,7,7,8,2,5,32,96,160, + 32,32,32,32,5,7,7,8,2,5,112,136,136,136,112,0, + 248,6,9,9,8,1,0,144,144,72,72,36,72,72,144,144, + 6,10,10,8,1,0,68,196,72,80,80,36,44,84,156,132, + 6,10,10,8,1,0,68,196,72,80,80,40,52,68,136,156, + 6,10,10,8,1,0,196,36,72,48,208,36,44,84,156,132, + 6,10,10,8,1,0,16,16,0,16,16,96,132,132,132,120, + 6,14,14,8,1,0,96,24,0,0,48,72,72,132,132,252, + 132,132,132,132,6,14,14,8,1,0,24,96,0,0,48,72, + 72,132,132,252,132,132,132,132,6,14,14,8,1,0,48,72, + 0,0,48,72,72,132,132,252,132,132,132,132,6,14,14,8, + 1,0,100,152,0,0,48,72,72,132,132,252,132,132,132,132, + 6,14,14,8,1,0,72,72,0,0,48,72,72,132,132,252, + 132,132,132,132,6,14,14,8,1,0,48,72,48,0,48,72, + 72,132,132,252,132,132,132,132,7,10,10,8,1,0,62,80, + 144,144,254,144,144,144,144,158,6,12,12,8,1,254,120,132, + 132,128,128,128,128,132,132,120,16,96,6,14,14,8,1,0, + 96,24,0,0,252,128,128,128,248,128,128,128,128,252,6,14, + 14,8,1,0,24,96,0,0,252,128,128,128,248,128,128,128, + 128,252,6,14,14,8,1,0,48,72,0,0,252,128,128,128, + 248,128,128,128,128,252,6,14,14,8,1,0,72,72,0,0, + 252,128,128,128,248,128,128,128,128,252,5,14,14,8,2,0, + 96,24,0,0,248,32,32,32,32,32,32,32,32,248,5,14, + 14,8,2,0,48,192,0,0,248,32,32,32,32,32,32,32, + 32,248,5,14,14,8,2,0,96,144,0,0,248,32,32,32, + 32,32,32,32,32,248,5,14,14,8,2,0,144,144,0,0, + 248,32,32,32,32,32,32,32,32,248,7,10,10,8,0,0, + 120,68,66,66,242,66,66,66,68,120,6,14,14,8,1,0, + 100,152,0,0,132,196,196,164,164,148,148,140,140,132,6,14, + 14,8,1,0,96,24,0,0,120,132,132,132,132,132,132,132, + 132,120,6,14,14,8,1,0,24,96,0,0,120,132,132,132, + 132,132,132,132,132,120,6,14,14,8,1,0,48,72,0,0, + 120,132,132,132,132,132,132,132,132,120,6,14,14,8,1,0, + 100,152,0,0,120,132,132,132,132,132,132,132,132,120,6,14, + 14,8,1,0,72,72,0,0,120,132,132,132,132,132,132,132, + 132,120,6,5,5,8,1,2,132,72,48,72,132,6,12,12, + 8,1,255,4,116,136,140,148,148,164,164,196,68,184,128,6, + 14,14,8,1,0,96,24,0,0,132,132,132,132,132,132,132, + 132,132,120,6,14,14,8,1,0,24,96,0,0,132,132,132, + 132,132,132,132,132,132,120,6,14,14,8,1,0,48,72,0, + 0,132,132,132,132,132,132,132,132,132,120,6,14,14,8,1, + 0,72,72,0,0,132,132,132,132,132,132,132,132,132,120,7, + 14,14,8,1,0,24,96,0,0,130,130,68,68,40,16,16, + 16,16,16,6,11,11,8,1,0,128,128,240,136,132,132,136, + 240,128,128,128,6,10,10,8,1,0,112,136,136,136,248,132, + 132,132,196,184,6,12,12,8,1,0,96,24,0,0,120,132, + 4,124,132,132,140,116,6,12,12,8,1,0,24,96,0,0, + 120,132,4,124,132,132,140,116,6,12,12,8,1,0,48,72, + 0,0,120,132,4,124,132,132,140,116,6,12,12,8,1,0, + 100,152,0,0,120,132,4,124,132,132,140,116,6,12,12,8, + 1,0,72,72,0,0,120,132,4,124,132,132,140,116,6,13, + 13,8,1,0,48,72,48,0,0,120,132,4,124,132,132,140, + 116,7,8,8,8,1,0,124,146,18,126,144,144,146,124,6, + 10,10,8,1,254,120,132,128,128,128,128,132,120,16,96,6, + 12,12,8,1,0,96,24,0,0,120,132,132,252,128,128,132, + 120,6,12,12,8,1,0,24,96,0,0,120,132,132,252,128, + 128,132,120,6,12,12,8,1,0,48,72,0,0,120,132,132, + 252,128,128,132,120,6,12,12,8,1,0,72,72,0,0,120, + 132,132,252,128,128,132,120,5,12,12,8,2,0,192,48,0, + 0,96,32,32,32,32,32,32,248,5,12,12,8,2,0,48, + 192,0,0,96,32,32,32,32,32,32,248,5,12,12,8,2, + 0,96,144,0,0,96,32,32,32,32,32,32,248,5,12,12, + 8,2,0,144,144,0,0,96,32,32,32,32,32,32,248,6, + 12,12,8,1,0,100,24,40,68,4,124,132,132,132,132,132, + 120,6,12,12,8,1,0,100,152,0,0,184,196,132,132,132, + 132,132,132,6,12,12,8,1,0,96,24,0,0,120,132,132, + 132,132,132,132,120,6,12,12,8,1,0,24,96,0,0,120, + 132,132,132,132,132,132,120,6,12,12,8,1,0,48,72,0, + 0,120,132,132,132,132,132,132,120,6,12,12,8,1,0,100, + 152,0,0,120,132,132,132,132,132,132,120,6,12,12,8,1, + 0,72,72,0,0,120,132,132,132,132,132,132,120,6,7,7, + 8,1,1,48,0,0,252,0,0,48,6,10,10,8,1,255, + 4,120,140,148,148,164,164,196,120,128,6,12,12,8,1,0, + 96,24,0,0,132,132,132,132,132,132,140,116,6,12,12,8, + 1,0,24,96,0,0,132,132,132,132,132,132,140,116,6,12, + 12,8,1,0,48,72,0,0,132,132,132,132,132,132,140,116, + 6,12,12,8,1,0,72,72,0,0,132,132,132,132,132,132, + 140,116,6,14,14,8,1,254,24,96,0,0,132,132,132,132, + 132,76,52,4,4,120,5,12,12,8,2,254,128,128,240,136, + 136,136,144,160,192,128,128,128,6,14,14,8,1,254,72,72, + 0,0,132,132,132,132,132,76,52,4,4,120}; +/* + Fontname: -gnu-unifont-medium-r-normal--16-160-75-75-c-80-iso10646-1 + Copyright: + Capital A Height: 10, '1' Height: 10 + Calculated Max Values w=16 h=16 x= 4 y=14 dx=16 dy= 0 ascent=14 len=14 + Font Bounding box w=16 h=16 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent =10 descent=-2 + X Font ascent =11 descent=-2 + Max Font ascent =14 descent=-2 +*/ +#include "u8g.h" +const u8g_fntpgm_uint8_t u8g_font_unifontr[1483] U8G_SECTION(".progmem.u8g_font_unifontr") = { + 0,16,16,0,254,10,1,231,3,213,32,127,254,14,254,11, + 254,0,0,0,8,0,14,1,10,10,8,4,0,128,128,128, + 128,128,128,128,0,128,128,5,4,4,8,2,8,136,136,136, + 136,6,10,10,8,1,0,36,36,36,252,72,72,252,144,144, + 144,7,10,10,8,1,0,16,124,146,144,112,28,18,146,124, + 16,7,10,10,8,1,0,98,148,148,104,16,16,44,82,82, + 140,7,10,10,8,1,0,56,68,68,68,56,114,138,132,140, + 114,1,4,4,8,4,8,128,128,128,128,3,12,12,8,3, + 255,32,64,64,128,128,128,128,128,128,64,64,32,3,12,12, + 8,2,255,128,64,64,32,32,32,32,32,32,64,64,128,7, + 7,7,8,1,1,16,146,84,56,84,146,16,7,7,7,8, + 1,1,16,16,16,254,16,16,16,2,4,4,8,3,254,192, + 64,64,128,6,1,1,8,1,4,252,2,2,2,8,3,0, + 192,192,6,10,10,8,1,0,4,4,8,16,16,32,32,64, + 128,128,6,10,10,8,1,0,48,72,132,132,132,132,132,132, + 72,48,5,10,10,8,2,0,32,96,160,32,32,32,32,32, + 32,248,6,10,10,8,1,0,120,132,132,4,24,32,64,128, + 128,252,6,10,10,8,1,0,120,132,132,4,56,4,4,132, + 132,120,6,10,10,8,1,0,8,24,40,72,136,136,252,8, + 8,8,6,10,10,8,1,0,252,128,128,128,248,4,4,4, + 132,120,6,10,10,8,1,0,56,64,128,128,248,132,132,132, + 132,120,6,10,10,8,1,0,252,4,4,8,8,8,16,16, + 16,16,6,10,10,8,1,0,120,132,132,132,120,132,132,132, + 132,120,6,10,10,8,1,0,120,132,132,132,124,4,4,4, + 8,112,2,7,7,8,3,1,192,192,0,0,0,192,192,2, + 9,9,8,3,255,192,192,0,0,0,192,64,64,128,5,9, + 9,8,2,0,8,16,32,64,128,64,32,16,8,6,5,5, + 8,1,2,252,0,0,0,252,5,9,9,8,1,0,128,64, + 32,16,8,16,32,64,128,6,10,10,8,1,0,120,132,132, + 4,8,16,16,0,16,16,6,10,10,8,1,0,56,68,148, + 172,164,164,164,156,64,60,6,10,10,8,1,0,48,72,72, + 132,132,252,132,132,132,132,6,10,10,8,1,0,248,132,132, + 132,248,132,132,132,132,248,6,10,10,8,1,0,120,132,132, + 128,128,128,128,132,132,120,6,10,10,8,1,0,240,136,132, + 132,132,132,132,132,136,240,6,10,10,8,1,0,252,128,128, + 128,248,128,128,128,128,252,6,10,10,8,1,0,252,128,128, + 128,248,128,128,128,128,128,6,10,10,8,1,0,120,132,132, + 128,128,156,132,132,140,116,6,10,10,8,1,0,132,132,132, + 132,252,132,132,132,132,132,5,10,10,8,2,0,248,32,32, + 32,32,32,32,32,32,248,7,10,10,8,1,0,62,8,8, + 8,8,8,8,136,136,112,6,10,10,8,1,0,132,136,144, + 160,192,192,160,144,136,132,6,10,10,8,1,0,128,128,128, + 128,128,128,128,128,128,252,6,10,10,8,1,0,132,132,204, + 204,180,180,132,132,132,132,6,10,10,8,1,0,132,196,196, + 164,164,148,148,140,140,132,6,10,10,8,1,0,120,132,132, + 132,132,132,132,132,132,120,6,10,10,8,1,0,248,132,132, + 132,248,128,128,128,128,128,7,11,11,8,1,255,120,132,132, + 132,132,132,132,180,204,120,6,6,10,10,8,1,0,248,132, + 132,132,248,144,136,136,132,132,6,10,10,8,1,0,120,132, + 132,128,96,24,4,132,132,120,7,10,10,8,1,0,254,16, + 16,16,16,16,16,16,16,16,6,10,10,8,1,0,132,132, + 132,132,132,132,132,132,132,120,7,10,10,8,1,0,130,130, + 130,68,68,68,40,40,16,16,6,10,10,8,1,0,132,132, + 132,132,180,180,204,204,132,132,6,10,10,8,1,0,132,132, + 72,72,48,48,72,72,132,132,7,10,10,8,1,0,130,130, + 68,68,40,16,16,16,16,16,6,10,10,8,1,0,252,4, + 4,8,16,32,64,128,128,252,3,12,12,8,4,255,224,128, + 128,128,128,128,128,128,128,128,128,224,6,10,10,8,1,0, + 128,128,64,32,32,16,16,8,4,4,3,12,12,8,1,255, + 224,32,32,32,32,32,32,32,32,32,32,224,6,3,3,8, + 1,9,48,72,132,7,1,1,8,1,255,254,3,3,3,8, + 2,10,128,64,32,6,8,8,8,1,0,120,132,4,124,132, + 132,140,116,6,11,11,8,1,0,128,128,128,184,196,132,132, + 132,132,196,184,6,8,8,8,1,0,120,132,128,128,128,128, + 132,120,6,11,11,8,1,0,4,4,4,116,140,132,132,132, + 132,140,116,6,8,8,8,1,0,120,132,132,252,128,128,132, + 120,5,11,11,8,1,0,24,32,32,32,248,32,32,32,32, + 32,32,6,11,11,8,1,254,4,116,136,136,136,112,64,120, + 132,132,120,6,11,11,8,1,0,128,128,128,184,196,132,132, + 132,132,132,132,5,11,11,8,2,0,32,32,0,96,32,32, + 32,32,32,32,248,5,13,13,8,1,254,8,8,0,24,8, + 8,8,8,8,8,8,144,96,6,10,10,8,1,0,128,128, + 136,144,160,192,160,144,136,132,5,10,10,8,2,0,96,32, + 32,32,32,32,32,32,32,248,7,8,8,8,1,0,236,146, + 146,146,146,146,146,146,6,8,8,8,1,0,184,196,132,132, + 132,132,132,132,6,8,8,8,1,0,120,132,132,132,132,132, + 132,120,6,10,10,8,1,254,184,196,132,132,132,132,196,184, + 128,128,6,10,10,8,1,254,116,140,132,132,132,132,140,116, + 4,4,6,8,8,8,1,0,184,196,132,128,128,128,128,128, + 6,8,8,8,1,0,120,132,128,96,24,4,132,120,5,10, + 10,8,1,0,32,32,248,32,32,32,32,32,32,24,6,8, + 8,8,1,0,132,132,132,132,132,132,140,116,6,8,8,8, + 1,0,132,132,132,72,72,72,48,48,7,8,8,8,1,0, + 130,146,146,146,146,146,146,108,6,8,8,8,1,0,132,132, + 72,48,48,72,132,132,6,10,10,8,1,254,132,132,132,132, + 132,76,52,4,4,120,6,8,8,8,1,0,252,4,8,16, + 32,64,128,252,3,12,12,8,3,255,96,128,128,64,64,128, + 128,64,64,128,128,96,1,14,14,8,4,254,128,128,128,128, + 128,128,128,128,128,128,128,128,128,128,3,12,12,8,2,255, + 192,32,32,64,64,32,32,64,64,32,32,192,7,3,3,8, + 1,8,98,146,140,16,16,32,16,0,254,170,170,0,1,128, + 0,0,1,128,0,115,209,202,16,75,209,202,16,115,223,128, + 0,0,1,128,0,0,1,128,0,85,85}; diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_line.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_line.c new file mode 100644 index 0000000000000000000000000000000000000000..30b30972347b5b4ca067e5ca70efa4dca625e609 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_line.c @@ -0,0 +1,81 @@ +/* + + u8g_line.h + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#include "u8g.h" + +void u8g_DrawLine(u8g_t *u8g, u8g_uint_t x1, u8g_uint_t y1, u8g_uint_t x2, u8g_uint_t y2) +{ + u8g_uint_t tmp; + u8g_uint_t x,y; + u8g_uint_t dx, dy; + u8g_int_t err; + u8g_int_t ystep; + + uint8_t swapxy = 0; + + /* no BBX intersection check at the moment, should be added... */ + + if ( x1 > x2 ) dx = x1-x2; else dx = x2-x1; + if ( y1 > y2 ) dy = y1-y2; else dy = y2-y1; + + if ( dy > dx ) + { + swapxy = 1; + tmp = dx; dx =dy; dy = tmp; + tmp = x1; x1 =y1; y1 = tmp; + tmp = x2; x2 =y2; y2 = tmp; + } + if ( x1 > x2 ) + { + tmp = x1; x1 =x2; x2 = tmp; + tmp = y1; y1 =y2; y2 = tmp; + } + err = dx >> 1; + if ( y2 > y1 ) ystep = 1; else ystep = -1; + y = y1; + for( x = x1; x <= x2; x++ ) + { + if ( swapxy == 0 ) + u8g_DrawPixel(u8g, x, y); + else + u8g_DrawPixel(u8g, y, x); + err -= (uint8_t)dy; + if ( err < 0 ) + { + y += (u8g_uint_t)ystep; + err += (u8g_uint_t)dx; + } + } +} diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_ll_api.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_ll_api.c new file mode 100644 index 0000000000000000000000000000000000000000..41c7fada1858b99fcf1d8957e004651164147088 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_ll_api.c @@ -0,0 +1,456 @@ +/* + + u8g_ll_api.c + + low level api + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include +#include "u8g.h" + +uint8_t u8g_call_dev_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + return dev->dev_fn(u8g, dev, msg, arg); +} + +/*====================================================================*/ + +uint8_t u8g_InitLL(u8g_t *u8g, u8g_dev_t *dev) +{ + uint8_t r; + u8g->state_cb(U8G_STATE_MSG_BACKUP_ENV); + r = u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_INIT, NULL); + u8g->state_cb(U8G_STATE_MSG_BACKUP_U8G); + u8g->state_cb(U8G_STATE_MSG_RESTORE_ENV); + return r; +} + +void u8g_FirstPageLL(u8g_t *u8g, u8g_dev_t *dev) +{ + u8g->state_cb(U8G_STATE_MSG_BACKUP_ENV); + u8g->state_cb(U8G_STATE_MSG_RESTORE_U8G); + u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_PAGE_FIRST, NULL); + u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_GET_PAGE_BOX, &(u8g->current_page)); + u8g->state_cb(U8G_STATE_MSG_RESTORE_ENV); +} + +uint8_t u8g_NextPageLL(u8g_t *u8g, u8g_dev_t *dev) +{ + uint8_t r; + u8g->state_cb(U8G_STATE_MSG_BACKUP_ENV); + u8g->state_cb(U8G_STATE_MSG_RESTORE_U8G); + r = u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_PAGE_NEXT, NULL); + if ( r != 0 ) + { + u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_GET_PAGE_BOX, &(u8g->current_page)); + } + u8g->state_cb(U8G_STATE_MSG_RESTORE_ENV); + return r; +} + +uint8_t u8g_SetContrastLL(u8g_t *u8g, u8g_dev_t *dev, uint8_t contrast) +{ + return u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_CONTRAST, &contrast); +} + +void u8g_DrawPixelLL(u8g_t *u8g, u8g_dev_t *dev, u8g_uint_t x, u8g_uint_t y) +{ + u8g_dev_arg_pixel_t *arg = &(u8g->arg_pixel); + arg->x = x; + arg->y = y; + u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_SET_PIXEL, arg); +} + +void u8g_Draw8PixelLL(u8g_t *u8g, u8g_dev_t *dev, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t pixel) +{ + u8g_dev_arg_pixel_t *arg = &(u8g->arg_pixel); + arg->x = x; + arg->y = y; + arg->dir = dir; + arg->pixel = pixel; + u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_SET_8PIXEL, arg); +} + +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION +uint8_t u8g_IsBBXIntersectionLL(u8g_t *u8g, u8g_dev_t *dev, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) +{ + return u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_IS_BBX_INTERSECTION, &arg); +} +#endif + + + +u8g_uint_t u8g_GetWidthLL(u8g_t *u8g, u8g_dev_t *dev) +{ + u8g_uint_t r; + u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_GET_WIDTH, &r); + return r; +} + +u8g_uint_t u8g_GetHeightLL(u8g_t *u8g, u8g_dev_t *dev) +{ + u8g_uint_t r; + u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_GET_HEIGHT, &r); + return r; +} + +u8g_uint_t u8g_GetModeLL(u8g_t *u8g, u8g_dev_t *dev) +{ + return u8g_call_dev_fn(u8g, dev, U8G_DEV_MSG_GET_MODE, NULL); +} + + + +/*====================================================================*/ + +void u8g_UpdateDimension(u8g_t *u8g) +{ + u8g->width = u8g_GetWidthLL(u8g, u8g->dev); + u8g->height = u8g_GetHeightLL(u8g, u8g->dev); + u8g->mode = u8g_GetModeLL(u8g, u8g->dev); + /* 9 Dec 2012: u8g_scale.c requires update of current page */ + u8g_call_dev_fn(u8g, u8g->dev, U8G_DEV_MSG_GET_PAGE_BOX, &(u8g->current_page)); +} + +static void u8g_init_data(u8g_t *u8g) +{ + uint8_t i; + u8g->font = NULL; + u8g->cursor_font = NULL; + u8g->cursor_bg_color = 0; + u8g->cursor_fg_color = 1; + u8g->cursor_encoding = 34; + u8g->cursor_fn = (u8g_draw_cursor_fn)0; + + for( i = 0; i < U8G_PIN_LIST_LEN; i++ ) + u8g->pin_list[i] = U8G_PIN_NONE; + + u8g_SetColorIndex(u8g, 1); + + u8g_SetFontPosBaseline(u8g); + + u8g->font_height_mode = U8G_FONT_HEIGHT_MODE_XTEXT; + u8g->font_ref_ascent = 0; + u8g->font_ref_descent = 0; + u8g->font_line_spacing_factor = 64; /* 64 = 1.0, 77 = 1.2 line spacing factor */ + u8g->line_spacing = 0; + + u8g->state_cb = u8g_state_dummy_cb; + +} + +uint8_t u8g_Begin(u8g_t *u8g) +{ + /* call and init low level driver and com device */ + if ( u8g_InitLL(u8g, u8g->dev) == 0 ) + return 0; + /* fetch width and height from the low level */ + u8g_UpdateDimension(u8g); + return 1; +} + +uint8_t u8g_Init(u8g_t *u8g, u8g_dev_t *dev) +{ + u8g_init_data(u8g); + u8g->dev = dev; + + /* On the Arduino Environment this will lead to two calls to u8g_Begin(), the following line will be called first (by U8glib constructors) */ + /* if - in future releases - this is removed, then still call u8g_UpdateDimension() */ + /* if Arduino call u8g_UpdateDimension else u8g_Begin */ + /* issue 146 */ + return u8g_Begin(u8g); +} + +uint8_t u8g_InitSPI(u8g_t *u8g, u8g_dev_t *dev, uint8_t sck, uint8_t mosi, uint8_t cs, uint8_t a0, uint8_t reset) +{ + + /* fill data structure with some suitable values */ + u8g_init_data(u8g); + u8g->dev = dev; + + /* assign user pins */ + u8g->pin_list[U8G_PI_SCK] = sck; + u8g->pin_list[U8G_PI_MOSI] = mosi; + u8g->pin_list[U8G_PI_CS] = cs; + u8g->pin_list[U8G_PI_A0] = a0; + u8g->pin_list[U8G_PI_RESET] = reset; + + /* On the Arduino Environment this will lead to two calls to u8g_Begin(), the following line will be called first (by U8glib constructors) */ + /* if - in future releases - this is removed, then still call u8g_UpdateDimension() */ + /* if Arduino call u8g_UpdateDimension else u8g_Begin */ + /* issue 146 */ + return u8g_Begin(u8g); +} + +uint8_t u8g_InitHWSPI(u8g_t *u8g, u8g_dev_t *dev, uint8_t cs, uint8_t a0, uint8_t reset) +{ + /* fill data structure with some suitable values */ + u8g_init_data(u8g); + u8g->dev = dev; + + + /* assign user pins */ + u8g->pin_list[U8G_PI_CS] = cs; + u8g->pin_list[U8G_PI_A0] = a0; + u8g->pin_list[U8G_PI_RESET] = reset; + + return u8g_Begin(u8g); +} + +uint8_t u8g_InitI2C(u8g_t *u8g, u8g_dev_t *dev, uint8_t options) +{ + /* fill data structure with some suitable values */ + u8g_init_data(u8g); + u8g->dev = dev; + + u8g->pin_list[U8G_PI_I2C_OPTION] = options; + + return u8g_Begin(u8g); +} + + +uint8_t u8g_Init8BitFixedPort(u8g_t *u8g, u8g_dev_t *dev, uint8_t en, uint8_t cs, uint8_t di, uint8_t rw, uint8_t reset) +{ + + /* fill data structure with some suitable values */ + u8g_init_data(u8g); + u8g->dev = dev; + + /* assign user pins */ + + u8g->pin_list[U8G_PI_EN] = en; + u8g->pin_list[U8G_PI_CS] = cs; + u8g->pin_list[U8G_PI_DI] = di; + u8g->pin_list[U8G_PI_RW] = rw; + u8g->pin_list[U8G_PI_RESET] = reset; + + return u8g_Begin(u8g); +} + +uint8_t u8g_Init8Bit(u8g_t *u8g, u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t en, uint8_t cs1, uint8_t cs2, uint8_t di, uint8_t rw, uint8_t reset) +{ + + /* fill data structure with some suitable values */ + u8g_init_data(u8g); + u8g->dev = dev; + + /* assign user pins */ + + u8g->pin_list[U8G_PI_D0] = d0; + u8g->pin_list[U8G_PI_D1] = d1; + u8g->pin_list[U8G_PI_D2] = d2; + u8g->pin_list[U8G_PI_D3] = d3; + u8g->pin_list[U8G_PI_D4] = d4; + u8g->pin_list[U8G_PI_D5] = d5; + u8g->pin_list[U8G_PI_D6] = d6; + u8g->pin_list[U8G_PI_D7] = d7; + + u8g->pin_list[U8G_PI_EN] = en; + u8g->pin_list[U8G_PI_CS1] = cs1; + u8g->pin_list[U8G_PI_CS2] = cs2; + u8g->pin_list[U8G_PI_DI] = di; + u8g->pin_list[U8G_PI_RW] = rw; + u8g->pin_list[U8G_PI_RESET] = reset; + + return u8g_Begin(u8g); +} + +/* + + PIN_D0 8 + PIN_D1 9 + PIN_D2 10 + PIN_D3 11 + PIN_D4 4 + PIN_D5 5 + PIN_D6 6 + PIN_D7 7 + + PIN_CS 14 + PIN_A0 15 + PIN_RESET 16 + PIN_WR 17 + PIN_RD 18 + + u8g_InitRW8Bit(u8g, dev, d0, d1, d2, d3, d4, d5, d6, d7, cs, a0, wr, rd, reset) + u8g_InitRW8Bit(u8g, dev, 8, 9, 10, 11, 4, 5, 6, 7, 14, 15, 17, 18, 16) + +*/ + +uint8_t u8g_InitRW8Bit(u8g_t *u8g, u8g_dev_t *dev, uint8_t d0, uint8_t d1, uint8_t d2, uint8_t d3, uint8_t d4, uint8_t d5, uint8_t d6, uint8_t d7, + uint8_t cs, uint8_t a0, uint8_t wr, uint8_t rd, uint8_t reset) +{ + + /* fill data structure with some suitable values */ + u8g_init_data(u8g); + u8g->dev = dev; + + /* assign user pins */ + + u8g->pin_list[U8G_PI_D0] = d0; + u8g->pin_list[U8G_PI_D1] = d1; + u8g->pin_list[U8G_PI_D2] = d2; + u8g->pin_list[U8G_PI_D3] = d3; + u8g->pin_list[U8G_PI_D4] = d4; + u8g->pin_list[U8G_PI_D5] = d5; + u8g->pin_list[U8G_PI_D6] = d6; + u8g->pin_list[U8G_PI_D7] = d7; + + u8g->pin_list[U8G_PI_CS] = cs; + u8g->pin_list[U8G_PI_A0] = a0; + u8g->pin_list[U8G_PI_WR] = wr; + u8g->pin_list[U8G_PI_RD] = rd; + u8g->pin_list[U8G_PI_RESET] = reset; + + return u8g_Begin(u8g); +} + +void u8g_FirstPage(u8g_t *u8g) +{ + u8g_FirstPageLL(u8g, u8g->dev); +} + +uint8_t u8g_NextPage(u8g_t *u8g) +{ + if ( u8g->cursor_fn != (u8g_draw_cursor_fn)0 ) + { + u8g->cursor_fn(u8g); + } + return u8g_NextPageLL(u8g, u8g->dev); +} + +uint8_t u8g_SetContrast(u8g_t *u8g, uint8_t contrast) +{ + return u8g_SetContrastLL(u8g, u8g->dev, contrast); +} + +void u8g_SleepOn(u8g_t *u8g) +{ + u8g_call_dev_fn(u8g, u8g->dev, U8G_DEV_MSG_SLEEP_ON, NULL); +} + +void u8g_SleepOff(u8g_t *u8g) +{ + u8g_call_dev_fn(u8g, u8g->dev, U8G_DEV_MSG_SLEEP_OFF, NULL); +} + + +void u8g_DrawPixel(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y) +{ + u8g_DrawPixelLL(u8g, u8g->dev, x, y); +} + +void u8g_Draw8Pixel(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, uint8_t dir, uint8_t pixel) +{ + u8g_Draw8PixelLL(u8g, u8g->dev, x, y, dir, pixel); +} + +/* u8g_IsBBXIntersection() has been moved to u8g_clip.c */ +#ifdef OBSOLETE_CODE +uint8_t u8g_IsBBXIntersection(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) +{ + /* new code */ + u8g_dev_arg_bbx_t arg; + arg.x = x; + arg.y = y; + arg.w = w; + arg.h = h; + return u8g_is_box_bbx_intersection(&(u8g->current_page), &arg); + + /* old code */ + //return u8g_IsBBXIntersectionLL(u8g, u8g->dev, x, y, w, h); +} +#endif + +void u8g_SetColorIndex(u8g_t *u8g, uint8_t idx) +{ + u8g->arg_pixel.color = idx; + /*u8g->color_index = idx; */ /* must be removed */ +} + +uint8_t u8g_GetColorIndex(u8g_t *u8g) +{ + return u8g->arg_pixel.color; +} + +uint8_t u8g_GetDefaultForegroundColor(u8g_t *u8g) +{ + uint8_t mode; + mode = u8g_GetMode(u8g); + if ( mode == U8G_MODE_R3G3B2 ) + return 255; /* white */ + else if ( u8g_GetMode(u8g) == U8G_MODE_GRAY2BIT ) + return 3; /* max intensity */ + else /* if ( u8g.getMode() == U8G_MODE_BW ) */ + return 1; /* pixel on */ + return 1; +} + +void u8g_SetDefaultForegroundColor(u8g_t *u8g) +{ + u8g_SetColorIndex(u8g, u8g_GetDefaultForegroundColor(u8g)); +} + +uint8_t u8g_GetDefaultBackgroundColor(u8g_t *u8g) +{ + return 0; +} + +void u8g_SetDefaultBackgroundColor(u8g_t *u8g) +{ + u8g_SetColorIndex(u8g, u8g_GetDefaultBackgroundColor(u8g)); /* pixel on / black */ +} + +uint8_t u8g_GetDefaultMidColor(u8g_t *u8g) +{ + uint8_t mode; + mode = u8g_GetMode(u8g); + if ( mode == U8G_MODE_R3G3B2 ) + return 0x06d; /* gray: 01101101 */ + else if ( u8g_GetMode(u8g) == U8G_MODE_GRAY2BIT ) + return 1; /* low mid intensity */ + else /* if ( u8g.getMode() == U8G_MODE_BW ) */ + return 1; /* pixel on */ + return 1; /* default */ +} + +void u8g_SetDefaultMidColor(u8g_t *u8g) +{ + u8g_SetColorIndex(u8g, u8g_GetDefaultMidColor(u8g)); +} + + + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_page.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_page.c new file mode 100644 index 0000000000000000000000000000000000000000..1a3eb21ed5726cb528b78d4560c9ae724ba8f07c --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_page.c @@ -0,0 +1,81 @@ +/* + + u8g_page.c + + page helper functions, only called by the dev handler. + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +/* + setup page count structure + conditions: page_height <= total_height +*/ +void u8g_page_Init(u8g_page_t *p, u8g_uint_t page_height, u8g_uint_t total_height ) +{ + p->page_height = page_height; + p->total_height = total_height; + p->page = 0; + u8g_page_First(p); +} + +void u8g_page_First(u8g_page_t *p) +{ + p->page_y0 = 0; + p->page_y1 = p->page_height; + p->page_y1--; + p->page = 0; +} + +uint8_t u8g_page_Next(u8g_page_t * p) +{ + register u8g_uint_t y1; + p->page_y0 += p->page_height; + if ( p->page_y0 >= p->total_height ) + return 0; + p->page++; + y1 = p->page_y1; + y1 += p->page_height; + if ( y1 >= p->total_height ) + { + y1 = p->total_height; + y1--; + } + p->page_y1 = y1; + + return 1; +} + + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb.c new file mode 100644 index 0000000000000000000000000000000000000000..a9464736119a349cab47b47aa38893e1a212ed5e --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb.c @@ -0,0 +1,191 @@ +/* + + u8g_pb.c + + common procedures for the page buffer + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +void u8g_pb_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t *end_ptr = ptr; + end_ptr += b->width; + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + +/* the following procedure does not work. why? Can be checked with descpic */ +/* +void u8g_pb_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t cnt = b->width; + do + { + *ptr++ = 0; + cnt--; + } while( cnt != 0 ); +} +*/ + +/* + intersection assumptions: + a1 <= a2 is always true +*/ + /* + minimized version + ---1----0 1 b1 <= a2 && b1 > b2 + -----1--0 1 b2 >= a1 && b1 > b2 + ---1-1--- 1 b1 <= a2 && b2 >= a1 + */ +/* +uint8_t u8g_pb8v1_IsYIntersection___Old(u8g_pb_t *b, u8g_uint_t v0, u8g_uint_t v1) +{ + uint8_t c0, c1, c; + c0 = v0 <= b->p.page_y1; + c1 = v1 >= b->p.page_y0; + c = v0 > v1; + if ( c0 && c1 ) return 1; + if ( c0 && c ) return 1; + if ( c1 && c ) return 1; + return 0; +} +*/ + +uint8_t u8g_pb_IsYIntersection(u8g_pb_t *pb, u8g_uint_t v0, u8g_uint_t v1) +{ + uint8_t c1, c2, c3, tmp; + c1 = v0 <= pb->p.page_y1; + c2 = v1 >= pb->p.page_y0; + c3 = v0 > v1; + /* + if ( c1 && c2 ) + return 1; + if ( c1 && c3 ) + return 1; + if ( c2 && c3 ) + return 1; + return 0; + */ + + tmp = c1; + c1 &= c2; + c2 &= c3; + c3 &= tmp; + c1 |= c2; + c1 |= c3; + return c1 & 1; +} + + +uint8_t u8g_pb_IsXIntersection(u8g_pb_t *b, u8g_uint_t v0, u8g_uint_t v1) +{ + uint8_t /*c0, c1, */ c2, c3; + /* + conditions: b->p.page_y0 < b->p.page_y1 + there are no restriction on v0 and v1. If v0 > v1, then warp around unsigned is assumed + */ + /* + c0 = v0 < 0; + c1 = v1 < 0; + */ + c2 = v0 > b->width; + c3 = v1 > b->width; + /*if ( c0 && c1 ) return 0;*/ + if ( c2 && c3 ) return 0; + /*if ( c1 && c2 ) return 0;*/ + return 1; +} + +uint8_t u8g_pb_IsIntersection(u8g_pb_t *pb, u8g_dev_arg_bbx_t *bbx) +{ + u8g_uint_t tmp; + + tmp = bbx->y; + tmp += bbx->h; + tmp--; + + if ( u8g_pb_IsYIntersection(pb, bbx->y, tmp) == 0 ) + return 0; + + /* maybe this one can be skiped... probability is very high to have an intersection, so it would be ok to always return 1 */ + tmp = bbx->x; + tmp += bbx->w; + tmp--; + + return u8g_pb_IsXIntersection(pb, bbx->x, tmp); +} + +void u8g_pb_GetPageBox(u8g_pb_t *pb, u8g_box_t *box) +{ + box->x0 = 0; + box->y0 = pb->p.page_y0; + box->x1 = pb->width; + box->x1--; + box->y1 = pb->p.page_y1; +} + + +uint8_t u8g_pb_Is8PixelVisible(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + u8g_uint_t v0, v1; + v0 = arg_pixel->y; + v1 = v0; + switch( arg_pixel->dir ) + { + case 0: + break; + case 1: + v1 += 8; /* this is independent from the page height */ + break; + case 2: + break; + case 3: + v0 -= 8; + break; + } + return u8g_pb_IsYIntersection(b, v0, v1); +} + + + +uint8_t u8g_pb_WriteBuffer(u8g_pb_t *b, u8g_t *u8g, u8g_dev_t *dev) +{ + return u8g_WriteSequence(u8g, dev, b->width, b->buf); +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb14v1.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb14v1.c new file mode 100644 index 0000000000000000000000000000000000000000..dbcd0215f84d10cc702c26c2fe6534f390a10ba8 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb14v1.c @@ -0,0 +1,200 @@ +/* + + u8g_pb14v1.c + + 14bit height monochrom (1 bit) page buffer, + byte has vertical orientation, 7 bits per byte + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" +#include + + +void u8g_pb14v1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb14v1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +void u8g_pb14v1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) U8G_NOINLINE ; +void u8g_pb14v1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) U8G_NOINLINE; + + +void u8g_pb14v1_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t *end_ptr = ptr; + end_ptr += b->width*2; + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + +/* Obsolete, usually set by the init of the structure */ +void u8g_pb14v1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb14v1_Clear(b); +} + +void u8g_pb14v1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + if ( y >= 7 ) + { + ptr += b->width; + y -= 7; + } + mask = 1; + mask <<= y; + ptr += x; + if ( color_index ) + { + *ptr |= mask; + } + else + { + mask ^=0xff; + *ptr &= mask; + } +} + + +void u8g_pb14v1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb14v1_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + +void u8g_pb14v1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb14v1_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + + +void u8g_pb14v1_Set8PixelOpt2(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb14v1_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); + +} + +uint8_t u8g_dev_pb14v1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb14v1_Set8PixelOpt2(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb14v1_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb14v1_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb14v1_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_BW; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb16h1.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb16h1.c new file mode 100644 index 0000000000000000000000000000000000000000..6f1502ed77c2b4afba7ade007e639a0cbd585500 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb16h1.c @@ -0,0 +1,213 @@ +/* + + u8g_pb16h1.c + + 2x 8bit height monochrom (1 bit) page buffer + byte has horizontal orientation + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + total buffer size is limited to 2*256 bytes because of the calculation inside the set pixel procedure + + +*/ + +#include "u8g.h" +#include + + +void u8g_pb16h1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb16h1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +void u8g_pb16h1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) U8G_NOINLINE ; +void u8g_pb16h1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) U8G_NOINLINE; +uint8_t u8g_dev_pb8h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +void u8g_pb16h1_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t *end_ptr = ptr; + end_ptr += b->width*2; + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + + + +void u8g_pb16h1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb16h1_Clear(b); +} + + +/* limitation: total buffer must not exceed 2*256 bytes */ +void u8g_pb16h1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + u8g_uint_t tmp; + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + if ( y >= 8 ) + { + ptr += b->width; + y &= 0x07; + } + tmp = b->width; + tmp >>= 3; + tmp *= (uint8_t)y; + ptr += tmp; + + mask = 0x080; + mask >>= x & 7; + x >>= 3; + ptr += x; + if ( color_index ) + { + *ptr |= mask; + } + else + { + mask ^=0xff; + *ptr &= mask; + } + +} + + +void u8g_pb16h1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb16h1_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + +void u8g_pb16h1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb16h1_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + +void u8g_pb16h1_Set8PixelOpt2(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb16h1_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); +} + + +uint8_t u8g_dev_pb16h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb16h1_Set8PixelOpt2(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb16h1_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb16h1_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb16h1_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_BW; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb16h2.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb16h2.c new file mode 100644 index 0000000000000000000000000000000000000000..d694efbece95e877fa93c02195e98f4445243704 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb16h2.c @@ -0,0 +1,182 @@ +/* + + u8g_pb16h2.c + + 2 bit per pixel page buffer + byte has horizontal orientation + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" +#include + +void u8g_pb16h2_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t *end_ptr = ptr; + + /* two bits per pixel, 16 bits height --> 8 pixel --> 4 pixel per byte */ + end_ptr += b->width; + end_ptr += b->width; + + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + +void u8g_pb16h2_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb16h2_Clear(b); +} + +static void u8g_pb16h2_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +static void u8g_pb16h2_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + register uint16_t tmp; + + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + + tmp = b->width; + tmp >>= 2; + tmp *= (uint8_t)y; + ptr += tmp; + + tmp = x; + tmp >>= 2; + ptr += tmp; + + tmp = x; + tmp &= 3; + tmp <<= 1; + mask = 3; + mask <<= tmp; + mask = ~mask; + color_index &= 3; + color_index <<= tmp; + + *ptr &= mask; + *ptr |= color_index; +} + + +void u8g_pb16h2_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb16h2_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + + +void u8g_pb16h2_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb16h2_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + + + +uint8_t u8g_dev_pb16h2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + { + u8g_pb16h2_Set8PixelStd(pb, (u8g_dev_arg_pixel_t *)arg); + } + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb16h2_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_page_First(&(pb->p)); + u8g_pb16h2_Clear(pb); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb16h2_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_GRAY2BIT; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb16v1.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb16v1.c new file mode 100644 index 0000000000000000000000000000000000000000..774aaec7001f3b12eed2bd980fa2d4dd2e1ec4a6 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb16v1.c @@ -0,0 +1,200 @@ +/* + + u8g_pb16v1.c + + 16bit height monochrom (1 bit) page buffer + byte has vertical orientation + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" +#include + + +void u8g_pb16v1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb16v1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +void u8g_pb16v1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) U8G_NOINLINE ; +void u8g_pb16v1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) U8G_NOINLINE; + + +void u8g_pb16v1_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t *end_ptr = ptr; + end_ptr += b->width*2; + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + +/* Obsolete, usually set by the init of the structure */ +void u8g_pb16v1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb16v1_Clear(b); +} + +void u8g_pb16v1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + if ( y >= 8 ) + { + ptr += b->width; + y &= 0x07; + } + mask = 1; + mask <<= y; + ptr += x; + if ( color_index ) + { + *ptr |= mask; + } + else + { + mask ^=0xff; + *ptr &= mask; + } +} + + +void u8g_pb16v1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb16v1_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + +void u8g_pb16v1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb16v1_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + + +void u8g_pb16v1_Set8PixelOpt2(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb16v1_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); + +} + +uint8_t u8g_dev_pb16v1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb16v1_Set8PixelOpt2(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb16v1_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb16v1_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb16v1_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_BW; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb16v2.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb16v2.c new file mode 100644 index 0000000000000000000000000000000000000000..3d40ddad71b5ce7c838c980d274384ab08f5fb45 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb16v2.c @@ -0,0 +1,172 @@ +/* + + u8g_pb16v2.c + + 16 bit height 2 bit per pixel page buffer + byte has vertical orientation + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" +#include + + +void u8g_pb16v2_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t *end_ptr = ptr; + + /* two bits per pixel, 16 bits height --> 8 pixel --> 4 pixel per byte */ + end_ptr += b->width; + end_ptr += b->width; + + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + +void u8g_pb16v2Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb16v2_Clear(b); +} + +void u8g_pb16v2_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + uint8_t *ptr = b->buf; + y -= b->p.page_y0; + if ( y >= 4 ) + { + ptr += b->width; + } + mask = 0x03; + y &= 0x03; + y <<= 1; + mask <<= y; + mask ^=0xff; + color_index &= 3; + color_index <<= y; + ptr += x; + *ptr &= mask; + *ptr |= color_index; +} + + +void u8g_pb16v2_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb16v2_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + + +void u8g_pb16v2_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb16v2_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + + + +uint8_t u8g_dev_pb16v2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + { + u8g_pb16v2_Set8PixelStd(pb, (u8g_dev_arg_pixel_t *)arg); + } + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb16v2_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb16v2_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb16v2_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_GRAY2BIT; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb32h1.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb32h1.c new file mode 100644 index 0000000000000000000000000000000000000000..6ac100f325c225fd9e8a93b709a1f3cb0085ee58 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb32h1.c @@ -0,0 +1,208 @@ +/* + + u8g_pb32h1.c + + 2x 8bit height monochrom (1 bit) page buffer + byte has horizontal orientation + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + total buffer size is limited to 2*256 bytes because of the calculation inside the set pixel procedure + + +*/ + +#include "u8g.h" +#include + + +void u8g_pb32h1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb32h1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +void u8g_pb32h1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) U8G_NOINLINE ; +void u8g_pb32h1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) U8G_NOINLINE; +uint8_t u8g_dev_pb8h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +void u8g_pb32h1_Clear(u8g_pb_t *b) +{ + uint8_t *ptr = (uint8_t *)b->buf; + uint8_t *end_ptr = ptr; + end_ptr += b->width*4; + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + + + +void u8g_pb32h1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb32h1_Clear(b); +} + + +/* limitation: total buffer must not exceed 2*256 bytes */ +void u8g_pb32h1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + uint16_t tmp; + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + tmp = b->width; + tmp >>= 3; + tmp *= y; + ptr += tmp; + + mask = 0x080; + mask >>= x & 7; + x >>= 3; + ptr += x; + if ( color_index ) + { + *ptr |= mask; + } + else + { + mask ^=0xff; + *ptr &= mask; + } + +} + + +void u8g_pb32h1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb32h1_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + +void u8g_pb32h1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb32h1_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + +void u8g_pb32h1_Set8PixelOpt2(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb32h1_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); +} + + +uint8_t u8g_dev_pb32h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb32h1_Set8PixelOpt2(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb32h1_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb32h1_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb32h1_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_BW; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8h1.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8h1.c new file mode 100644 index 0000000000000000000000000000000000000000..8a13e0b7b1a47ee824ac8588067f96b59b633fe1 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8h1.c @@ -0,0 +1,389 @@ +/* + + u8g_pb8h1.c + + 8bit height monochrom (1 bit) page buffer + byte has horizontal orientation + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + total buffer size is limited to 256 bytes because of the calculation inside the set pixel procedure + + 23. Sep 2012: Bug with down procedure, see FPS 1st page --> fixed (bug located in u8g_clip.c) + +*/ + +#include "u8g.h" +#include + +#ifdef __unix__ +#include +#endif + +/* NEW_CODE disabled, because the performance increase was too slow and not worth compared */ +/* to the increase of code size */ +/* #define NEW_CODE */ + +#ifdef __unix__ +void *u8g_buf_lower_limit; +void *u8g_buf_upper_limit; +#endif + +void u8g_pb8h1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb8h1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +void u8g_pb8h1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) U8G_NOINLINE ; +void u8g_pb8h1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) U8G_NOINLINE; +uint8_t u8g_dev_pb8h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + + +#ifdef NEW_CODE +struct u8g_pb_h1_struct +{ + u8g_uint_t x; + u8g_uint_t y; + uint8_t *ptr; + uint8_t mask; + uint8_t line_byte_len; + uint8_t cnt; +}; + +static uint8_t u8g_pb8h1_bitmask[8] = { 0x080, 0x040, 0x020, 0x010, 0x008, 0x004, 0x002, 0x001 }; + +static void u8g_pb8h1_state_right(struct u8g_pb_h1_struct *s) U8G_NOINLINE; +static void u8g_pb8h1_state_right(struct u8g_pb_h1_struct *s) +{ + register u8g_uint_t x; + x = s->x; + x++; + s->x = x; + x &= 7; + s->mask = u8g_pb8h1_bitmask[x]; + if ( x == 0 ) + s->ptr++; +} + +static void u8g_pb8h1_state_left(struct u8g_pb_h1_struct *s) +{ + register u8g_uint_t x; + x = s->x; + x--; + s->x = x; + x &= 7; + s->mask = u8g_pb8h1_bitmask[x]; + if ( x == 7 ) + s->ptr--; +} + +static void u8g_pb8h1_state_down(struct u8g_pb_h1_struct *s) +{ + s->y++; + s->ptr += s->line_byte_len; +} + +static void u8g_pb8h1_state_up(struct u8g_pb_h1_struct *s) +{ + s->y--; + s->ptr -= s->line_byte_len; +} + +static void u8g_pb8h1_state_init(struct u8g_pb_h1_struct *s, u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y) U8G_NOINLINE; +static void u8g_pb8h1_state_init(struct u8g_pb_h1_struct *s, u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y) +{ + u8g_uint_t tmp; + + uint8_t *ptr = b->buf; + + s->x = x; + s->y = y; + + y -= b->p.page_y0; + + tmp = b->width; + tmp >>= 3; + s->line_byte_len = tmp; + + /* assume negative y values, can be down to -7, subtract this from the pointer and add correction of 8 to y */ + ptr -= tmp*8; + y+=8; + /* it is important that the result of tmp*y can be 16 bit value also for 8 bit mode */ + ptr += tmp*y; + + s->mask = u8g_pb8h1_bitmask[x & 7]; + + /* assume negative x values (to -7), subtract 8 pixel from the pointer and add 8 to x */ + ptr--; + x += 8; + x >>= 3; + ptr += x; + s->ptr = ptr; +} + +static void u8g_pb8h1_state_set_pixel(struct u8g_pb_h1_struct *s, uint8_t color_index) U8G_NOINLINE; +static void u8g_pb8h1_state_set_pixel(struct u8g_pb_h1_struct *s, uint8_t color_index) +{ + +#ifdef __unix__ + assert( s->ptr >= u8g_buf_lower_limit ); + assert( s->ptr < u8g_buf_upper_limit ); +#endif + + if ( color_index ) + { + *s->ptr |= s->mask; + } + else + { + uint8_t mask = s->mask; + mask ^=0xff; + *s->ptr &= mask; + } +} +#endif + + +void u8g_pb8h1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb_Clear(b); +} + +/* limitation: total buffer must not exceed 256 bytes */ +void u8g_pb8h1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ +#ifdef NEW_CODE + struct u8g_pb_h1_struct s; + u8g_pb8h1_state_init(&s, b, x, y); + u8g_pb8h1_state_set_pixel(&s, color_index); + +// u8g_pb8h1_state_up(&s); +// if ( s.y > b->p.page_y1 ) +// return; +// if ( s.x > b->width ) +// return; +// u8g_pb8h1_state_set_pixel(&s, color_index); +#else + register uint8_t mask; + u8g_uint_t tmp; + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + tmp = b->width; + tmp >>= 3; + tmp *= (uint8_t)y; + ptr += tmp; + + mask = 0x080; + mask >>= x & 7; + x >>= 3; + ptr += x; + if ( color_index ) + { + *ptr |= mask; + } + else + { + mask ^=0xff; + *ptr &= mask; + } +#endif +} + + +void u8g_pb8h1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb8h1_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + +void u8g_pb8h1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb8h1_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + +void u8g_pb8h1_Set8PixelOpt2(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb8h1_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); +} + +#ifdef NEW_CODE +static void u8g_pb8h1_Set8PixelState(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + struct u8g_pb_h1_struct s; + uint8_t cnt; + u8g_pb8h1_state_init(&s, b, arg_pixel->x, arg_pixel->y); + cnt = 8; + switch( arg_pixel->dir ) + { + case 0: + do + { + if ( s.x < b->width ) + if ( pixel & 128 ) + u8g_pb8h1_state_set_pixel(&s, arg_pixel->color); + u8g_pb8h1_state_right(&s); + pixel <<= 1; + cnt--; + } while( cnt > 0 && pixel != 0 ); + break; + case 1: + do + { + if ( s.y >= b->p.page_y0 ) + if ( s.y <= b->p.page_y1 ) + if ( pixel & 128 ) + u8g_pb8h1_state_set_pixel(&s, arg_pixel->color); + u8g_pb8h1_state_down(&s); + pixel <<= 1; + cnt--; + } while( cnt > 0 && pixel != 0 ); + break; + case 2: + do + { + if ( s.x < b->width ) + if ( pixel & 128 ) + u8g_pb8h1_state_set_pixel(&s, arg_pixel->color); + u8g_pb8h1_state_left(&s); + pixel <<= 1; + cnt--; + } while( cnt > 0 && pixel != 0 ); + break; + case 3: + do + { + if ( s.y >= b->p.page_y0 ) + if ( s.y <= b->p.page_y1 ) + if ( pixel & 128 ) + u8g_pb8h1_state_set_pixel(&s, arg_pixel->color); + u8g_pb8h1_state_up(&s); + pixel <<= 1; + cnt--; + } while( cnt > 0 && pixel != 0 ); + break; + } +} +#endif + +uint8_t u8g_dev_pb8h1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: +#ifdef NEW_CODE + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb8h1_Set8PixelState(pb, (u8g_dev_arg_pixel_t *)arg); +#else + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb8h1_Set8PixelOpt2(pb, (u8g_dev_arg_pixel_t *)arg); +#endif + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb8h1_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_BW; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8h1f.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8h1f.c new file mode 100644 index 0000000000000000000000000000000000000000..ffc90c2a3df4fa889d031a97e845afd1b0323cfe --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8h1f.c @@ -0,0 +1,194 @@ +/* + + u8g_pb8h1f.c + + 8bit height monochrom (1 bit) page buffer + byte has horizontal orientation, same as u8g_pb8h1, but byte is flipped + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + total buffer size is limited to 256 bytes because of the calculation inside the set pixel procedure + + +*/ + +#include "u8g.h" +#include + + +void u8g_pb8h1f_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb8h1f_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +void u8g_pb8h1f_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) U8G_NOINLINE ; +void u8g_pb8h1f_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) U8G_NOINLINE; +uint8_t u8g_dev_pb8h1f_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + + +void u8g_pb8h1f_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb_Clear(b); +} + +/* limitation: total buffer must not exceed 256 bytes, 20 nov 2012: extended to >256 bytes */ +void u8g_pb8h1f_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + /*register uint8_t mask, tmp;*/ + register uint8_t mask; + register u8g_uint_t tmp; + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + tmp = b->width >> 3; + tmp *= (uint8_t)y; + ptr += tmp; + + mask = 1; + mask <<= x & 7; + x >>= 3; + ptr += x; + if ( color_index ) + { + *ptr |= mask; + } + else + { + mask ^=0xff; + *ptr &= mask; + } +} + + +void u8g_pb8h1f_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb8h1f_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + +void u8g_pb8h1f_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb8h1f_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + +void u8g_pb8h1f_Set8PixelOpt2(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb8h1f_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); +} + + +uint8_t u8g_dev_pb8h1f_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb8h1f_Set8PixelOpt2(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb8h1f_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_BW; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8h2.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8h2.c new file mode 100644 index 0000000000000000000000000000000000000000..0e37f211f717ba2b0a761157c63824be5b175363 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8h2.c @@ -0,0 +1,167 @@ +/* + + u8g_pb8h2.c + + 8bit height 2 bit per pixel page buffer + byte has horizontal orientation + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" +#include + +void u8g_pb8h2_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb_Clear(b); +} + +static void u8g_pb8h2_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +static void u8g_pb8h2_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + register uint16_t tmp; + + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + + tmp = b->width; + tmp >>= 2; + tmp *= (uint8_t)y; + ptr += tmp; + + tmp = x; + tmp >>= 2; + ptr += tmp; + + tmp = x; + tmp &= 3; + tmp <<= 1; + mask = 3; + mask <<= tmp; + mask = ~mask; + color_index &= 3; + color_index <<= tmp; + + *ptr &= mask; + *ptr |= color_index; +} + + +void u8g_pb8h2_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb8h2_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + + +void u8g_pb8h2_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb8h2_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + + + +uint8_t u8g_dev_pb8h2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + { + u8g_pb8h2_Set8PixelStd(pb, (u8g_dev_arg_pixel_t *)arg); + } + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb8h2_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_GRAY2BIT; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8h8.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8h8.c new file mode 100644 index 0000000000000000000000000000000000000000..5753645d1d26f9d58cabddba4d5d706746f95a96 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8h8.c @@ -0,0 +1,179 @@ +/* + + u8g_pb8h8.c + + 8 bits per pixel, horizontal + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +struct _u8g_pb_t +{ + u8g_page_t p; + u8g_uint_t width; + void *buf; +}; +typedef struct _u8g_pb_t u8g_pb_t; + + +uint8_t u8g_index_color_8h8_buf[WIDTH*PAGE_HEIGHT] U8G_NOCOMMON ; +u8g_pb_t u8g_index_color_8h8_pb = { {PAGE_HEIGHT, HEIGHT, 0, 0, 0}, WIDTH, u8g_index_color_8h8_buff}; +u8g_dev_t name = { dev_fn, &u8g_index_color_8h8_pb, com_fn } + +*/ + +#include "u8g.h" + +#define WIDTH_BITS 7 +#define WIDTH (1<buf; + uint8_t *end_ptr = ptr; + uint8_t cnt = b->p.page_height; + do + { + end_ptr += b->width; + cnt--; + } while( cnt > 0 ); + do + { + *ptr++ = 0; + } while( ptr != end_ptr ); +} + + +void u8g_pb8h8_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb8h8_Clear(b); +} + +static void u8g_pb8h8_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + uint16_t tmp; + uint8_t *ptr = b->buf; + y -= b->p.page_y0; + tmp = y; + tmp *= b->width; + tmp += x; + ptr += tmp; + *ptr = color_index; +} + +void u8g_pb8h8_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb8h8_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + + +void u8g_pb8h8_Set8Pixel(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb8h8_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); +} + + +uint8_t u8g_dev_pb8h8_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb8h8_Set8Pixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb8h8_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb8h8_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb8h8_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_R3G3B2; + } + return 1; +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8v1.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8v1.c new file mode 100644 index 0000000000000000000000000000000000000000..37352fd11eb2fb5d6b1487901319a064ba16ff84 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8v1.c @@ -0,0 +1,184 @@ +/* + + u8g_pb8v1.c + + 8bit height monochrom (1 bit) page buffer + byte has vertical orientation + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" +#include + + +void u8g_pb8v1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) U8G_NOINLINE; +void u8g_pb8v1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) U8G_NOINLINE; +void u8g_pb8v1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) U8G_NOINLINE ; +void u8g_pb8v1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) U8G_NOINLINE; + +/* Obsolete, usually set by the init of the structure */ +void u8g_pb8v1_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb_Clear(b); +} + +void u8g_pb8v1_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + uint8_t *ptr = b->buf; + + y -= b->p.page_y0; + mask = 1; + y &= 0x07; + mask <<= y; + ptr += x; + if ( color_index ) + { + *ptr |= mask; + } + else + { + mask ^=0xff; + *ptr &= mask; + } +} + + +void u8g_pb8v1_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb8v1_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + +void u8g_pb8v1_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb8v1_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); +} + + +void u8g_pb8v1_Set8PixelOpt2(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + u8g_uint_t dx = 0; + u8g_uint_t dy = 0; + + switch( arg_pixel->dir ) + { + case 0: dx++; break; + case 1: dy++; break; + case 2: dx--; break; + case 3: dy--; break; + } + + do + { + if ( pixel & 128 ) + u8g_pb8v1_SetPixel(b, arg_pixel); + arg_pixel->x += dx; + arg_pixel->y += dy; + pixel <<= 1; + } while( pixel != 0 ); + +} + +uint8_t u8g_dev_pb8v1_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + u8g_pb8v1_Set8PixelOpt2(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb8v1_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_BW; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8v2.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8v2.c new file mode 100644 index 0000000000000000000000000000000000000000..3656511dbcf457903bbead0ae8a5d02805502b10 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_pb8v2.c @@ -0,0 +1,153 @@ +/* + + u8g_pb8v2.c + + 8bit height 2 bit per pixel page buffer + byte has vertical orientation + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" +#include + +void u8g_pb8v2_Init(u8g_pb_t *b, void *buf, u8g_uint_t width) +{ + b->buf = buf; + b->width = width; + u8g_pb_Clear(b); +} + +void u8g_pb8v2_set_pixel(u8g_pb_t *b, u8g_uint_t x, u8g_uint_t y, uint8_t color_index) +{ + register uint8_t mask; + uint8_t *ptr = b->buf; + y -= b->p.page_y0; + mask = 0x03; + y &= 0x03; + y <<= 1; + mask <<= y; + mask ^=0xff; + color_index &= 3; + color_index <<= y; + ptr += x; + *ptr &= mask; + *ptr |= color_index; +} + + +void u8g_pb8v2_SetPixel(u8g_pb_t *b, const u8g_dev_arg_pixel_t * const arg_pixel) +{ + if ( arg_pixel->y < b->p.page_y0 ) + return; + if ( arg_pixel->y > b->p.page_y1 ) + return; + if ( arg_pixel->x >= b->width ) + return; + u8g_pb8v2_set_pixel(b, arg_pixel->x, arg_pixel->y, arg_pixel->color); +} + + +void u8g_pb8v2_Set8PixelStd(u8g_pb_t *b, u8g_dev_arg_pixel_t *arg_pixel) +{ + register uint8_t pixel = arg_pixel->pixel; + do + { + if ( pixel & 128 ) + { + u8g_pb8v2_SetPixel(b, arg_pixel); + } + switch( arg_pixel->dir ) + { + case 0: arg_pixel->x++; break; + case 1: arg_pixel->y++; break; + case 2: arg_pixel->x--; break; + case 3: arg_pixel->y--; break; + } + pixel <<= 1; + } while( pixel != 0 ); + +} + + + +uint8_t u8g_dev_pb8v2_base_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_pb_t *pb = (u8g_pb_t *)(dev->dev_mem); + switch(msg) + { + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_pb_Is8PixelVisible(pb, (u8g_dev_arg_pixel_t *)arg) ) + { + u8g_pb8v2_Set8PixelStd(pb, (u8g_dev_arg_pixel_t *)arg); + } + break; + case U8G_DEV_MSG_SET_PIXEL: + u8g_pb8v2_SetPixel(pb, (u8g_dev_arg_pixel_t *)arg); + break; + case U8G_DEV_MSG_INIT: + break; + case U8G_DEV_MSG_STOP: + break; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_pb_Clear(pb); + u8g_page_First(&(pb->p)); + break; + case U8G_DEV_MSG_PAGE_NEXT: + if ( u8g_page_Next(&(pb->p)) == 0 ) + return 0; + u8g_pb_Clear(pb); + break; +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + return u8g_pb_IsIntersection(pb, (u8g_dev_arg_bbx_t *)arg); +#endif + case U8G_DEV_MSG_GET_PAGE_BOX: + u8g_pb_GetPageBox(pb, (u8g_box_t *)arg); + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = pb->width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = pb->p.total_height; + break; + case U8G_DEV_MSG_SET_COLOR_INDEX: + break; + case U8G_DEV_MSG_SET_XY_CB: + break; + case U8G_DEV_MSG_GET_MODE: + return U8G_MODE_GRAY2BIT; + } + return 1; +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_rect.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_rect.c new file mode 100644 index 0000000000000000000000000000000000000000..139a43a24a867e7e534550980f980ae660bb3222 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_rect.c @@ -0,0 +1,232 @@ +/* + + u8g_rect.c + + U8G high level interface for horizontal and vertical things + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +void u8g_draw_hline(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w) +{ + uint8_t pixel = 0x0ff; + while( w >= 8 ) + { + u8g_Draw8Pixel(u8g, x, y, 0, pixel); + w-=8; + x+=8; + } + if ( w != 0 ) + { + w ^=7; + w++; + pixel <<= w&7; + u8g_Draw8Pixel(u8g, x, y, 0, pixel); + } +} + +void u8g_draw_vline(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t h) +{ + uint8_t pixel = 0x0ff; + while( h >= 8 ) + { + u8g_Draw8Pixel(u8g, x, y, 1, pixel); + h-=8; + y+=8; + } + if ( h != 0 ) + { + h ^=7; + h++; + pixel <<= h&7; + u8g_Draw8Pixel(u8g, x, y, 1, pixel); + } +} + +void u8g_DrawHLine(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w) +{ + if ( u8g_IsBBXIntersection(u8g, x, y, w, 1) == 0 ) + return; + u8g_draw_hline(u8g, x, y, w); +} + +void u8g_DrawVLine(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w) +{ + if ( u8g_IsBBXIntersection(u8g, x, y, 1, w) == 0 ) + return; + u8g_draw_vline(u8g, x, y, w); +} + +/* restrictions: w > 0 && h > 0 */ +void u8g_DrawFrame(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) +{ + u8g_uint_t xtmp = x; + + if ( u8g_IsBBXIntersection(u8g, x, y, w, h) == 0 ) + return; + + + u8g_draw_hline(u8g, x, y, w); + u8g_draw_vline(u8g, x, y, h); + x+=w; + x--; + u8g_draw_vline(u8g, x, y, h); + y+=h; + y--; + u8g_draw_hline(u8g, xtmp, y, w); +} + +void u8g_draw_box(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) +{ + do + { + u8g_draw_hline(u8g, x, y, w); + y++; + h--; + } while( h != 0 ); +} + +/* restrictions: h > 0 */ +void u8g_DrawBox(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h) +{ + if ( u8g_IsBBXIntersection(u8g, x, y, w, h) == 0 ) + return; + u8g_draw_box(u8g, x, y, w, h); +} + + +void u8g_DrawRFrame(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, u8g_uint_t r) +{ + u8g_uint_t xl, yu; + + if ( u8g_IsBBXIntersection(u8g, x, y, w, h) == 0 ) + return; + + xl = x; + xl += r; + yu = y; + yu += r; + + { + u8g_uint_t yl, xr; + + xr = x; + xr += w; + xr -= r; + xr -= 1; + + yl = y; + yl += h; + yl -= r; + yl -= 1; + + u8g_draw_circle(u8g, xl, yu, r, U8G_DRAW_UPPER_LEFT); + u8g_draw_circle(u8g, xr, yu, r, U8G_DRAW_UPPER_RIGHT); + u8g_draw_circle(u8g, xl, yl, r, U8G_DRAW_LOWER_LEFT); + u8g_draw_circle(u8g, xr, yl, r, U8G_DRAW_LOWER_RIGHT); + } + + { + u8g_uint_t ww, hh; + + ww = w; + ww -= r; + ww -= r; + ww -= 2; + hh = h; + hh -= r; + hh -= r; + hh -= 2; + + xl++; + yu++; + h--; + w--; + u8g_draw_hline(u8g, xl, y, ww); + u8g_draw_hline(u8g, xl, y+h, ww); + u8g_draw_vline(u8g, x, yu, hh); + u8g_draw_vline(u8g, x+w, yu, hh); + } +} + +void u8g_DrawRBox(u8g_t *u8g, u8g_uint_t x, u8g_uint_t y, u8g_uint_t w, u8g_uint_t h, u8g_uint_t r) +{ + u8g_uint_t xl, yu; + u8g_uint_t yl, xr; + + if ( u8g_IsBBXIntersection(u8g, x, y, w, h) == 0 ) + return; + + xl = x; + xl += r; + yu = y; + yu += r; + + xr = x; + xr += w; + xr -= r; + xr -= 1; + + yl = y; + yl += h; + yl -= r; + yl -= 1; + + u8g_draw_disc(u8g, xl, yu, r, U8G_DRAW_UPPER_LEFT); + u8g_draw_disc(u8g, xr, yu, r, U8G_DRAW_UPPER_RIGHT); + u8g_draw_disc(u8g, xl, yl, r, U8G_DRAW_LOWER_LEFT); + u8g_draw_disc(u8g, xr, yl, r, U8G_DRAW_LOWER_RIGHT); + + { + u8g_uint_t ww, hh; + + ww = w; + ww -= r; + ww -= r; + ww -= 2; + hh = h; + hh -= r; + hh -= r; + hh -= 2; + + xl++; + yu++; + h--; + u8g_draw_box(u8g, xl, y, ww, r+1); + u8g_draw_box(u8g, xl, yl, ww, r+1); + //u8g_draw_hline(u8g, xl, y+h, ww); + u8g_draw_box(u8g, x, yu, w, hh); + //u8g_draw_vline(u8g, x+w, yu, hh); + } +} diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_rot.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_rot.c new file mode 100644 index 0000000000000000000000000000000000000000..c581104cb2420609d8244e0ab5dbd781b9a8a18e --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_rot.c @@ -0,0 +1,398 @@ +/* + + u8g_rot.c + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +uint8_t u8g_dev_rot90_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); +uint8_t u8g_dev_rot180_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); +uint8_t u8g_dev_rot270_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + +u8g_dev_t u8g_dev_rot = { u8g_dev_rot90_fn, NULL, NULL }; + + +void u8g_UndoRotation(u8g_t *u8g) +{ + if ( u8g->dev != &u8g_dev_rot ) + return; + u8g->dev = u8g_dev_rot.dev_mem; + u8g_UpdateDimension(u8g); +} + +void u8g_SetRot90(u8g_t *u8g) +{ + if ( u8g->dev != &u8g_dev_rot ) + { + u8g_dev_rot.dev_mem = u8g->dev; + u8g->dev = &u8g_dev_rot; + } + u8g_dev_rot.dev_fn = u8g_dev_rot90_fn; + u8g_UpdateDimension(u8g); +} + +void u8g_SetRot180(u8g_t *u8g) +{ + if ( u8g->dev != &u8g_dev_rot ) + { + u8g_dev_rot.dev_mem = u8g->dev; + u8g->dev = &u8g_dev_rot; + } + u8g_dev_rot.dev_fn = u8g_dev_rot180_fn; + u8g_UpdateDimension(u8g); +} + +void u8g_SetRot270(u8g_t *u8g) +{ + if ( u8g->dev != &u8g_dev_rot ) + { + u8g_dev_rot.dev_mem = u8g->dev; + u8g->dev = &u8g_dev_rot; + } + u8g_dev_rot.dev_fn = u8g_dev_rot270_fn; + u8g_UpdateDimension(u8g); +} + +uint8_t u8g_dev_rot90_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_dev_t *rotation_chain = (u8g_dev_t *)(dev->dev_mem); + switch(msg) + { + default: + /* + case U8G_DEV_MSG_INIT: + case U8G_DEV_MSG_STOP: + case U8G_DEV_MSG_PAGE_FIRST: + case U8G_DEV_MSG_PAGE_NEXT: + case U8G_DEV_MSG_SET_COLOR_INDEX: + case U8G_DEV_MSG_SET_XY_CB: + */ + return u8g_call_dev_fn(u8g, rotation_chain, msg, arg); +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + { + u8g_dev_arg_bbx_t *bbx = (u8g_dev_arg_bbx_t *)arg; + u8g_uint_t x, y, tmp; + + /* transform the reference point */ + y = bbx->x; + x = u8g->height; + /* x = u8g_GetWidthLL(u8g, rotation_chain); */ + x -= bbx->y; + x--; + + /* adjust point to be the uppler left corner again */ + x -= bbx->h; + x++; + + /* swap box dimensions */ + tmp = bbx->w; + bbx->w = bbx->h; + bbx->h = tmp; + + /* store x,y */ + bbx->x = x; + bbx->y = y; + } + return u8g_call_dev_fn(u8g, rotation_chain, msg, arg); +#endif /* U8G_DEV_MSG_IS_BBX_INTERSECTION */ + case U8G_DEV_MSG_GET_PAGE_BOX: + /* get page size from next device in the chain */ + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + //printf("pre x: %3d..%3d y: %3d..%3d ", ((u8g_box_t *)arg)->x0, ((u8g_box_t *)arg)->x1, ((u8g_box_t *)arg)->y0, ((u8g_box_t *)arg)->y1); + { + u8g_box_t new_box; + //new_box.x0 = u8g_GetHeightLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->y1 - 1; + //new_box.x1 = u8g_GetHeightLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->y0 - 1; + + new_box.x0 = ((u8g_box_t *)arg)->y0; + new_box.x1 = ((u8g_box_t *)arg)->y1; + new_box.y0 = ((u8g_box_t *)arg)->x0; + new_box.y1 = ((u8g_box_t *)arg)->x1; + *((u8g_box_t *)arg) = new_box; + //printf("post x: %3d..%3d y: %3d..%3d\n", ((u8g_box_t *)arg)->x0, ((u8g_box_t *)arg)->x1, ((u8g_box_t *)arg)->y0, ((u8g_box_t *)arg)->y1); + } + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = u8g_GetHeightLL(u8g,rotation_chain); + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = u8g_GetWidthLL(u8g, rotation_chain); + break; + case U8G_DEV_MSG_SET_PIXEL: + { + u8g_uint_t x, y; + y = ((u8g_dev_arg_pixel_t *)arg)->x; + x = u8g_GetWidthLL(u8g, rotation_chain); + x -= ((u8g_dev_arg_pixel_t *)arg)->y; + x--; + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + } + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + break; + case U8G_DEV_MSG_SET_8PIXEL: + { + u8g_uint_t x, y; + //uint16_t x,y; + y = ((u8g_dev_arg_pixel_t *)arg)->x; + x = u8g_GetWidthLL(u8g, rotation_chain); + x -= ((u8g_dev_arg_pixel_t *)arg)->y; + x--; + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + ((u8g_dev_arg_pixel_t *)arg)->dir+=1; + ((u8g_dev_arg_pixel_t *)arg)->dir &= 3; + } + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + break; + } + return 1; +} + +uint8_t u8g_dev_rot180_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_dev_t *rotation_chain = (u8g_dev_t *)(dev->dev_mem); + switch(msg) + { + default: + /* + case U8G_DEV_MSG_INIT: + case U8G_DEV_MSG_STOP: + case U8G_DEV_MSG_PAGE_FIRST: + case U8G_DEV_MSG_PAGE_NEXT: + case U8G_DEV_MSG_SET_COLOR_INDEX: + case U8G_DEV_MSG_SET_XY_CB: + */ + return u8g_call_dev_fn(u8g, rotation_chain, msg, arg); +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + { + u8g_dev_arg_bbx_t *bbx = (u8g_dev_arg_bbx_t *)arg; + u8g_uint_t x, y; + + /* transform the reference point */ + //y = u8g_GetHeightLL(u8g, rotation_chain); + y = u8g->height; + y -= bbx->y; + y--; + + //x = u8g_GetWidthLL(u8g, rotation_chain); + x = u8g->width; + x -= bbx->x; + x--; + + /* adjust point to be the uppler left corner again */ + y -= bbx->h; + y++; + + x -= bbx->w; + x++; + + /* store x,y */ + bbx->x = x; + bbx->y = y; + } + return u8g_call_dev_fn(u8g, rotation_chain, msg, arg); +#endif /* U8G_DEV_MSG_IS_BBX_INTERSECTION */ + case U8G_DEV_MSG_GET_PAGE_BOX: + /* get page size from next device in the chain */ + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + //printf("pre x: %3d..%3d y: %3d..%3d ", ((u8g_box_t *)arg)->x0, ((u8g_box_t *)arg)->x1, ((u8g_box_t *)arg)->y0, ((u8g_box_t *)arg)->y1); + { + u8g_box_t new_box; + + new_box.x0 = u8g_GetWidthLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->x1 - 1; + new_box.x1 = u8g_GetWidthLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->x0 - 1; + new_box.y0 = u8g_GetHeightLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->y1 - 1; + new_box.y1 = u8g_GetHeightLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->y0 - 1; + *((u8g_box_t *)arg) = new_box; + //printf("post x: %3d..%3d y: %3d..%3d\n", ((u8g_box_t *)arg)->x0, ((u8g_box_t *)arg)->x1, ((u8g_box_t *)arg)->y0, ((u8g_box_t *)arg)->y1); + } + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = u8g_GetWidthLL(u8g,rotation_chain); + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = u8g_GetHeightLL(u8g, rotation_chain); + break; + case U8G_DEV_MSG_SET_PIXEL: + { + u8g_uint_t x, y; + + y = u8g_GetHeightLL(u8g, rotation_chain); + y -= ((u8g_dev_arg_pixel_t *)arg)->y; + y--; + + x = u8g_GetWidthLL(u8g, rotation_chain); + x -= ((u8g_dev_arg_pixel_t *)arg)->x; + x--; + + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + } + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + break; + case U8G_DEV_MSG_SET_8PIXEL: + { + u8g_uint_t x, y; + + y = u8g_GetHeightLL(u8g, rotation_chain); + y -= ((u8g_dev_arg_pixel_t *)arg)->y; + y--; + + x = u8g_GetWidthLL(u8g, rotation_chain); + x -= ((u8g_dev_arg_pixel_t *)arg)->x; + x--; + + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + ((u8g_dev_arg_pixel_t *)arg)->dir+=2; + ((u8g_dev_arg_pixel_t *)arg)->dir &= 3; + } + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + break; + } + return 1; +} + +uint8_t u8g_dev_rot270_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_dev_t *rotation_chain = (u8g_dev_t *)(dev->dev_mem); + switch(msg) + { + default: + /* + case U8G_DEV_MSG_INIT: + case U8G_DEV_MSG_STOP: + case U8G_DEV_MSG_PAGE_FIRST: + case U8G_DEV_MSG_PAGE_NEXT: + case U8G_DEV_MSG_SET_COLOR_INDEX: + case U8G_DEV_MSG_SET_XY_CB: + */ + return u8g_call_dev_fn(u8g, rotation_chain, msg, arg); +#ifdef U8G_DEV_MSG_IS_BBX_INTERSECTION + case U8G_DEV_MSG_IS_BBX_INTERSECTION: + { + u8g_dev_arg_bbx_t *bbx = (u8g_dev_arg_bbx_t *)arg; + u8g_uint_t x, y, tmp; + + /* transform the reference point */ + x = bbx->y; + + y = u8g->width; + /* y = u8g_GetHeightLL(u8g, rotation_chain); */ + y -= bbx->x; + y--; + + /* adjust point to be the uppler left corner again */ + y -= bbx->w; + y++; + + /* swap box dimensions */ + tmp = bbx->w; + bbx->w = bbx->h; + bbx->h = tmp; + + /* store x,y */ + bbx->x = x; + bbx->y = y; + } + return u8g_call_dev_fn(u8g, rotation_chain, msg, arg); +#endif /* U8G_DEV_MSG_IS_BBX_INTERSECTION */ + case U8G_DEV_MSG_GET_PAGE_BOX: + /* get page size from next device in the chain */ + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + //printf("pre x: %3d..%3d y: %3d..%3d ", ((u8g_box_t *)arg)->x0, ((u8g_box_t *)arg)->x1, ((u8g_box_t *)arg)->y0, ((u8g_box_t *)arg)->y1); + { + u8g_box_t new_box; + + new_box.x0 = u8g_GetHeightLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->y1 - 1; + new_box.x1 = u8g_GetHeightLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->y0 - 1; + new_box.y0 = u8g_GetWidthLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->x1 - 1; + new_box.y1 = u8g_GetWidthLL(u8g,rotation_chain) - ((u8g_box_t *)arg)->x0 - 1; + *((u8g_box_t *)arg) = new_box; + //printf("post x: %3d..%3d y: %3d..%3d\n", ((u8g_box_t *)arg)->x0, ((u8g_box_t *)arg)->x1, ((u8g_box_t *)arg)->y0, ((u8g_box_t *)arg)->y1); + } + break; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = u8g_GetHeightLL(u8g,rotation_chain); + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = u8g_GetWidthLL(u8g, rotation_chain); + break; + case U8G_DEV_MSG_SET_PIXEL: + { + u8g_uint_t x, y; + x = ((u8g_dev_arg_pixel_t *)arg)->y; + + y = u8g_GetHeightLL(u8g, rotation_chain); + y -= ((u8g_dev_arg_pixel_t *)arg)->x; + y--; + + /* + x = u8g_GetWidthLL(u8g, rotation_chain); + x -= ((u8g_dev_arg_pixel_t *)arg)->y; + x--; + */ + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + } + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + break; + case U8G_DEV_MSG_SET_8PIXEL: + { + u8g_uint_t x, y; + x = ((u8g_dev_arg_pixel_t *)arg)->y; + + y = u8g_GetHeightLL(u8g, rotation_chain); + y -= ((u8g_dev_arg_pixel_t *)arg)->x; + y--; + + /* + x = u8g_GetWidthLL(u8g, rotation_chain); + x -= ((u8g_dev_arg_pixel_t *)arg)->y; + x--; + */ + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + ((u8g_dev_arg_pixel_t *)arg)->dir+=3; + ((u8g_dev_arg_pixel_t *)arg)->dir &= 3; + } + u8g_call_dev_fn(u8g, rotation_chain, msg, arg); + break; + } + return 1; +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_scale.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_scale.c new file mode 100644 index 0000000000000000000000000000000000000000..e5b4b634fb5882c85525d37ba8ba042bcc54dbd3 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_scale.c @@ -0,0 +1,188 @@ +/* + + u8g_scale.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Scale screen by some constant factors. Usefull for making bigger fonts wiht less + memory consumption + +*/ + +#include "u8g.h" + +uint8_t u8g_dev_scale_2x2_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg); + + +u8g_dev_t u8g_dev_scale = { u8g_dev_scale_2x2_fn, NULL, NULL }; + +void u8g_UndoScale(u8g_t *u8g) +{ + if ( u8g->dev != &u8g_dev_scale ) + return; + u8g->dev = u8g_dev_scale.dev_mem; + u8g_UpdateDimension(u8g); +} + +void u8g_SetScale2x2(u8g_t *u8g) +{ + if ( u8g->dev != &u8g_dev_scale ) + { + u8g_dev_scale.dev_mem = u8g->dev; + u8g->dev = &u8g_dev_scale; + } + u8g_dev_scale.dev_fn = u8g_dev_scale_2x2_fn; + u8g_UpdateDimension(u8g); +} + + +uint8_t u8g_dev_scale_2x2_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + u8g_dev_t *chain = (u8g_dev_t *)(dev->dev_mem); + uint8_t pixel; + uint16_t scaled_pixel; + uint8_t i; + uint8_t dir; + u8g_uint_t x, y, xx,yy; + + switch(msg) + { + default: + return u8g_call_dev_fn(u8g, chain, msg, arg); + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = u8g_GetWidthLL(u8g, chain) / 2; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = u8g_GetHeightLL(u8g, chain) / 2; + break; + case U8G_DEV_MSG_GET_PAGE_BOX: + /* get page size from next device in the chain */ + u8g_call_dev_fn(u8g, chain, msg, arg); + ((u8g_box_t *)arg)->x0 /= 2; + ((u8g_box_t *)arg)->x1 /= 2; + ((u8g_box_t *)arg)->y0 /= 2; + ((u8g_box_t *)arg)->y1 /= 2; + return 1; + case U8G_DEV_MSG_SET_PIXEL: + x = ((u8g_dev_arg_pixel_t *)arg)->x; + x *= 2; + y = ((u8g_dev_arg_pixel_t *)arg)->y; + y *= 2; + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + u8g_call_dev_fn(u8g, chain, msg, arg); + x++; + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + u8g_call_dev_fn(u8g, chain, msg, arg); + y++; + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + u8g_call_dev_fn(u8g, chain, msg, arg); + x--; + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + u8g_call_dev_fn(u8g, chain, msg, arg); + break; + case U8G_DEV_MSG_SET_8PIXEL: + pixel = ((u8g_dev_arg_pixel_t *)arg)->pixel; + dir = ((u8g_dev_arg_pixel_t *)arg)->dir; + scaled_pixel = 0; + for( i = 0; i < 8; i++ ) + { + scaled_pixel<<=2; + if ( pixel & 128 ) + { + scaled_pixel |= 3; + } + pixel<<=1; + } + x = ((u8g_dev_arg_pixel_t *)arg)->x; + x *= 2; + xx = x; + y = ((u8g_dev_arg_pixel_t *)arg)->y; + y *= 2; + yy = y; + if ( ((u8g_dev_arg_pixel_t *)arg)->dir & 1 ) + { + xx++; + } + else + { + yy++; + } + + ((u8g_dev_arg_pixel_t *)arg)->pixel = scaled_pixel>>8; + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + ((u8g_dev_arg_pixel_t *)arg)->dir = dir; + u8g_call_dev_fn(u8g, chain, msg, arg); + + + ((u8g_dev_arg_pixel_t *)arg)->x = xx; + ((u8g_dev_arg_pixel_t *)arg)->y = yy; + ((u8g_dev_arg_pixel_t *)arg)->dir = dir; + u8g_call_dev_fn(u8g, chain, msg, arg); + + ((u8g_dev_arg_pixel_t *)arg)->pixel = scaled_pixel&255; + //((u8g_dev_arg_pixel_t *)arg)->pixel = 0x00; + switch(dir) + { + case 0: + x+=8; + xx+=8; + break; + case 1: + y+=8; + yy+=8; + break; + case 2: + x-=8; + xx-=8; + break; + case 3: + y-=8; + yy-=8; + break; + } + ((u8g_dev_arg_pixel_t *)arg)->x = x; + ((u8g_dev_arg_pixel_t *)arg)->y = y; + ((u8g_dev_arg_pixel_t *)arg)->dir = dir; + u8g_call_dev_fn(u8g, chain, msg, arg); + + ((u8g_dev_arg_pixel_t *)arg)->x = xx; + ((u8g_dev_arg_pixel_t *)arg)->y = yy; + ((u8g_dev_arg_pixel_t *)arg)->dir = dir; + u8g_call_dev_fn(u8g, chain, msg, arg); + break; + } + return 1; +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_state.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_state.c new file mode 100644 index 0000000000000000000000000000000000000000..3ae3eee4a8be2303df742ced54ba104fc92ea788 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_state.c @@ -0,0 +1,102 @@ +/* + + u8g_state.c + + backup and restore hardware state + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + + state callback: backup env U8G_STATE_MSG_BACKUP_ENV + device callback: DEV_MSG_INIT + state callback: backup u8g U8G_STATE_MSG_BACKUP_U8G + state callback: restore env U8G_STATE_MSG_RESTORE_ENV + + state callback: backup env U8G_STATE_MSG_BACKUP_ENV + state callback: retore u8g U8G_STATE_MSG_RESTORE_U8G + DEV_MSG_PAGE_FIRST or DEV_MSG_PAGE_NEXT + state callback: restore env U8G_STATE_MSG_RESTORE_ENV + +*/ + +#include +#include "u8g.h" + +void u8g_state_dummy_cb(uint8_t msg) +{ + /* the dummy procedure does nothing */ +} + +void u8g_SetHardwareBackup(u8g_t *u8g, u8g_state_cb backup_cb) +{ + u8g->state_cb = backup_cb; + /* in most cases the init message was already sent, so this will backup the */ + /* current u8g state */ + backup_cb(U8G_STATE_MSG_BACKUP_U8G); +} + + +/*===============================================================*/ +/* AVR */ + +#if defined(__AVR__) +#define U8G_ATMEGA_HW_SPI + +/* remove the definition for attiny */ +#if __AVR_ARCH__ == 2 +#undef U8G_ATMEGA_HW_SPI +#endif +#if __AVR_ARCH__ == 25 +#undef U8G_ATMEGA_HW_SPI +#endif +#endif + +#if defined(U8G_ATMEGA_HW_SPI) +#include +static uint8_t u8g_state_avr_spi_memory[2]; + +void u8g_backup_avr_spi(uint8_t msg) +{ + if ( U8G_STATE_MSG_IS_BACKUP(msg) ) + { + u8g_state_avr_spi_memory[U8G_STATE_MSG_GET_IDX(msg)] = SPCR; + } + else + { + uint8_t tmp = SREG; + cli(); + SPCR = 0; + SPCR = u8g_state_avr_spi_memory[U8G_STATE_MSG_GET_IDX(msg)]; + SREG = tmp; + } +} + +#endif + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_u16toa.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_u16toa.c new file mode 100644 index 0000000000000000000000000000000000000000..f1d1803cfacbba3a04eaf04d10d87f0a34c38c86 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_u16toa.c @@ -0,0 +1,68 @@ +/* + + u8g_u16toa.c + + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "u8g.h" + +const char *u8g_u16toap(char * dest, uint16_t v) +{ + uint8_t pos; + uint8_t d; + uint16_t c; + c = 10000; + for( pos = 0; pos < 5; pos++ ) + { + d = '0'; + while( v >= c ) + { + v -= c; + d++; + } + dest[pos] = d; + c /= 10; + } + dest[5] = '\0'; + return dest; +} + +/* v = value, d = number of digits */ +const char *u8g_u16toa(uint16_t v, uint8_t d) +{ + static char buf[6]; + d = 5-d; + return u8g_u16toap(buf, v) + d; +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_u8toa.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_u8toa.c new file mode 100644 index 0000000000000000000000000000000000000000..f3a2c06fafbfa7fc51c295d46a8531d1f25a7c7d --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_u8toa.c @@ -0,0 +1,68 @@ +/* + + u8g_u8toa.c + + + Universal 8bit Graphics Library + + Copyright (c) 2011, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + + +#include "u8g.h" + +static const unsigned char u8g_u8toa_tab[3] = { 100, 10, 1 } ; +const char *u8g_u8toap(char * dest, uint8_t v) +{ + uint8_t pos; + uint8_t d; + uint8_t c; + for( pos = 0; pos < 3; pos++ ) + { + d = '0'; + c = *(u8g_u8toa_tab+pos); + while( v >= c ) + { + v -= c; + d++; + } + dest[pos] = d; + } + dest[3] = '\0'; + return dest; +} + +/* v = value, d = number of digits */ +const char *u8g_u8toa(uint8_t v, uint8_t d) +{ + static char buf[4]; + d = 3-d; + return u8g_u8toap(buf, v) + d; +} + diff --git a/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_virtual_screen.c b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_virtual_screen.c new file mode 100644 index 0000000000000000000000000000000000000000..8000506b4374db98174a8ca1be463e7f843a60d8 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/libraries/U8glib/utility/u8g_virtual_screen.c @@ -0,0 +1,145 @@ +/* + + u8g_virtual_screen.c + + Universal 8bit Graphics Library + + Copyright (c) 2012, olikraus@gmail.com + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this list + of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, this + list of conditions and the following disclaimer in the documentation and/or other + materials provided with the distribution. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND + CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR + CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +*/ + +#include "u8g.h" + +struct _u8g_vs_t +{ + u8g_uint_t x; + u8g_uint_t y; + u8g_t *u8g; +}; +typedef struct _u8g_vs_t u8g_vs_t; + +#define U8g_VS_MAX 4 +uint8_t u8g_vs_cnt = 0; +u8g_vs_t u8g_vs_list[U8g_VS_MAX]; +uint8_t u8g_vs_current; +u8g_uint_t u8g_vs_width; +u8g_uint_t u8g_vs_height; + +uint8_t u8g_dev_vs_fn(u8g_t *u8g, u8g_dev_t *dev, uint8_t msg, void *arg) +{ + switch(msg) + { + default: + { + uint8_t i; + for( i = 0; i < u8g_vs_cnt; i++ ) + { + u8g_call_dev_fn(u8g_vs_list[i].u8g, u8g_vs_list[i].u8g->dev, msg, arg); + } + } + return 1; + case U8G_DEV_MSG_PAGE_FIRST: + u8g_vs_current = 0; + if ( u8g_vs_cnt != 0 ) + return u8g_call_dev_fn(u8g_vs_list[u8g_vs_current].u8g, u8g_vs_list[u8g_vs_current].u8g->dev, msg, arg); + return 0; + case U8G_DEV_MSG_PAGE_NEXT: + { + uint8_t ret = 0; + if ( u8g_vs_cnt != 0 ) + ret = u8g_call_dev_fn(u8g_vs_list[u8g_vs_current].u8g, u8g_vs_list[u8g_vs_current].u8g->dev, msg, arg); + if ( ret != 0 ) + return ret; + u8g_vs_current++; /* next device */ + if ( u8g_vs_current >= u8g_vs_cnt ) /* reached end? */ + return 0; + return u8g_call_dev_fn(u8g_vs_list[u8g_vs_current].u8g, u8g_vs_list[u8g_vs_current].u8g->dev, U8G_DEV_MSG_PAGE_FIRST, arg); + } + return 0; + case U8G_DEV_MSG_GET_WIDTH: + *((u8g_uint_t *)arg) = u8g_vs_width; + break; + case U8G_DEV_MSG_GET_HEIGHT: + *((u8g_uint_t *)arg) = u8g_vs_height; + break; + case U8G_DEV_MSG_GET_PAGE_BOX: + if ( u8g_vs_current < u8g_vs_cnt ) + { + u8g_call_dev_fn(u8g_vs_list[u8g_vs_current].u8g, u8g_vs_list[u8g_vs_current].u8g->dev, msg, arg); + ((u8g_box_t *)arg)->x0 += u8g_vs_list[u8g_vs_current].x; + ((u8g_box_t *)arg)->x1 += u8g_vs_list[u8g_vs_current].x; + ((u8g_box_t *)arg)->y0 += u8g_vs_list[u8g_vs_current].y; + ((u8g_box_t *)arg)->y1 += u8g_vs_list[u8g_vs_current].y; + } + else + { + ((u8g_box_t *)arg)->x0 = 0; + ((u8g_box_t *)arg)->x1 = 0; + ((u8g_box_t *)arg)->y0 = 0; + ((u8g_box_t *)arg)->y1 = 0; + } + return 1; + case U8G_DEV_MSG_SET_PIXEL: + case U8G_DEV_MSG_SET_8PIXEL: + if ( u8g_vs_current < u8g_vs_cnt ) + { + ((u8g_dev_arg_pixel_t *)arg)->x -= u8g_vs_list[u8g_vs_current].x; + ((u8g_dev_arg_pixel_t *)arg)->y -= u8g_vs_list[u8g_vs_current].y; + return u8g_call_dev_fn(u8g_vs_list[u8g_vs_current].u8g, u8g_vs_list[u8g_vs_current].u8g->dev, msg, arg); + } + break; + } + return 1; +} + + + +u8g_dev_t u8g_dev_vs = { u8g_dev_vs_fn, NULL, NULL }; + +void u8g_SetVirtualScreenDimension(u8g_t *vs_u8g, u8g_uint_t width, u8g_uint_t height) +{ + if ( vs_u8g->dev != &u8g_dev_vs ) + return; /* abort if there is no a virtual screen device */ + u8g_vs_width = width; + u8g_vs_height = height; +} + +uint8_t u8g_AddToVirtualScreen(u8g_t *vs_u8g, u8g_uint_t x, u8g_uint_t y, u8g_t *child_u8g) +{ + if ( vs_u8g->dev != &u8g_dev_vs ) + return 0; /* abort if there is no a virtual screen device */ + if ( u8g_vs_cnt >= U8g_VS_MAX ) + return 0; /* maximum number of child u8g's reached */ + u8g_vs_list[u8g_vs_cnt].u8g = child_u8g; + u8g_vs_list[u8g_vs_cnt].x = x; + u8g_vs_list[u8g_vs_cnt].y = y; + u8g_vs_cnt++; + return 1; +} + diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/boards.txt b/ArduinoAddons/Arduino_1.x.x/rambo/boards.txt new file mode 100644 index 0000000000000000000000000000000000000000..d0901653c92565d10f84595aca2624074c0dcc07 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/boards.txt @@ -0,0 +1,22 @@ +# See: http://code.google.com/p/arduino/wiki/Platforms + +############################################################## + +mega2560.name=RAMBo + +mega2560.upload.protocol=wiring +mega2560.upload.maximum_size=258048 +mega2560.upload.speed=115200 + +mega2560.bootloader.low_fuses=0xFF +mega2560.bootloader.high_fuses=0xD8 +mega2560.bootloader.extended_fuses=0xFD +mega2560.bootloader.path=stk500v2 +mega2560.bootloader.file=stk500boot_v2_mega2560.hex +mega2560.bootloader.unlock_bits=0x3F +mega2560.bootloader.lock_bits=0x0F + +mega2560.build.mcu=atmega2560 +mega2560.build.f_cpu=16000000L +mega2560.build.core=arduino +mega2560.build.variant=standard diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Arduino.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Arduino.h new file mode 100644 index 0000000000000000000000000000000000000000..b265825894a511c44bfdae34723a97a02b46887e --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Arduino.h @@ -0,0 +1,215 @@ +#ifndef Arduino_h +#define Arduino_h + +#include +#include +#include + +#include +#include +#include + +#include "binary.h" + +#ifdef __cplusplus +extern "C"{ +#endif + +#define HIGH 0x1 +#define LOW 0x0 + +#define INPUT 0x0 +#define OUTPUT 0x1 +#define INPUT_PULLUP 0x2 + +#define true 0x1 +#define false 0x0 + +#define PI 3.1415926535897932384626433832795 +#define HALF_PI 1.5707963267948966192313216916398 +#define TWO_PI 6.283185307179586476925286766559 +#define DEG_TO_RAD 0.017453292519943295769236907684886 +#define RAD_TO_DEG 57.295779513082320876798154814105 + +#define SERIAL 0x0 +#define DISPLAY 0x1 + +#define LSBFIRST 0 +#define MSBFIRST 1 + +#define CHANGE 1 +#define FALLING 2 +#define RISING 3 + +#if defined(__AVR_ATtiny24__) || defined(__AVR_ATtiny44__) || defined(__AVR_ATtiny84__) || defined(__AVR_ATtiny25__) || defined(__AVR_ATtiny45__) || defined(__AVR_ATtiny85__) +#define DEFAULT 0 +#define EXTERNAL 1 +#define INTERNAL 2 +#else +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) || defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega644P__) +#define INTERNAL1V1 2 +#define INTERNAL2V56 3 +#else +#define INTERNAL 3 +#endif +#define DEFAULT 1 +#define EXTERNAL 0 +#endif + +// undefine stdlib's abs if encountered +#ifdef abs +#undef abs +#endif + +#define min(a,b) ((a)<(b)?(a):(b)) +#define max(a,b) ((a)>(b)?(a):(b)) +#define abs(x) ((x)>0?(x):-(x)) +#define constrain(amt,low,high) ((amt)<(low)?(low):((amt)>(high)?(high):(amt))) +#define round(x) ((x)>=0?(long)((x)+0.5):(long)((x)-0.5)) +#define radians(deg) ((deg)*DEG_TO_RAD) +#define degrees(rad) ((rad)*RAD_TO_DEG) +#define sq(x) ((x)*(x)) + +#define interrupts() sei() +#define noInterrupts() cli() + +#define clockCyclesPerMicrosecond() ( F_CPU / 1000000L ) +#define clockCyclesToMicroseconds(a) ( (a) / clockCyclesPerMicrosecond() ) +#define microsecondsToClockCycles(a) ( (a) * clockCyclesPerMicrosecond() ) + +#define lowByte(w) ((uint8_t) ((w) & 0xff)) +#define highByte(w) ((uint8_t) ((w) >> 8)) + +#define bitRead(value, bit) (((value) >> (bit)) & 0x01) +#define bitSet(value, bit) ((value) |= (1UL << (bit))) +#define bitClear(value, bit) ((value) &= ~(1UL << (bit))) +#define bitWrite(value, bit, bitvalue) (bitvalue ? bitSet(value, bit) : bitClear(value, bit)) + + +typedef unsigned int word; + +#define bit(b) (1UL << (b)) + +typedef uint8_t boolean; +typedef uint8_t byte; + +void init(void); + +void pinMode(uint8_t, uint8_t); +void digitalWrite(uint8_t, uint8_t); +int digitalRead(uint8_t); +int analogRead(uint8_t); +void analogReference(uint8_t mode); +void analogWrite(uint8_t, int); + +unsigned long millis(void); +unsigned long micros(void); +void delay(unsigned long); +void delayMicroseconds(unsigned int us); +unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout); + +void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val); +uint8_t shiftIn(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder); + +void attachInterrupt(uint8_t, void (*)(void), int mode); +void detachInterrupt(uint8_t); + +void setup(void); +void loop(void); + +// Get the bit location within the hardware port of the given virtual pin. +// This comes from the pins_*.c file for the active board configuration. + +#define analogInPinToBit(P) (P) + +// On the ATmega1280, the addresses of some of the port registers are +// greater than 255, so we can't store them in uint8_t's. +extern const uint16_t PROGMEM port_to_mode_PGM[]; +extern const uint16_t PROGMEM port_to_input_PGM[]; +extern const uint16_t PROGMEM port_to_output_PGM[]; + +extern const uint8_t PROGMEM digital_pin_to_port_PGM[]; +// extern const uint8_t PROGMEM digital_pin_to_bit_PGM[]; +extern const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[]; +extern const uint8_t PROGMEM digital_pin_to_timer_PGM[]; + +// Get the bit location within the hardware port of the given virtual pin. +// This comes from the pins_*.c file for the active board configuration. +// +// These perform slightly better as macros compared to inline functions +// +#define digitalPinToPort(P) ( pgm_read_byte( digital_pin_to_port_PGM + (P) ) ) +#define digitalPinToBitMask(P) ( pgm_read_byte( digital_pin_to_bit_mask_PGM + (P) ) ) +#define digitalPinToTimer(P) ( pgm_read_byte( digital_pin_to_timer_PGM + (P) ) ) +#define analogInPinToBit(P) (P) +#define portOutputRegister(P) ( (volatile uint8_t *)( pgm_read_word( port_to_output_PGM + (P))) ) +#define portInputRegister(P) ( (volatile uint8_t *)( pgm_read_word( port_to_input_PGM + (P))) ) +#define portModeRegister(P) ( (volatile uint8_t *)( pgm_read_word( port_to_mode_PGM + (P))) ) + +#define NOT_A_PIN 0 +#define NOT_A_PORT 0 + +#ifdef ARDUINO_MAIN +#define PA 1 +#define PB 2 +#define PC 3 +#define PD 4 +#define PE 5 +#define PF 6 +#define PG 7 +#define PH 8 +#define PJ 10 +#define PK 11 +#define PL 12 +#endif + +#define NOT_ON_TIMER 0 +#define TIMER0A 1 +#define TIMER0B 2 +#define TIMER1A 3 +#define TIMER1B 4 +#define TIMER2 5 +#define TIMER2A 6 +#define TIMER2B 7 + +#define TIMER3A 8 +#define TIMER3B 9 +#define TIMER3C 10 +#define TIMER4A 11 +#define TIMER4B 12 +#define TIMER4C 13 +#define TIMER4D 14 +#define TIMER5A 15 +#define TIMER5B 16 +#define TIMER5C 17 + +#ifdef __cplusplus +} // extern "C" +#endif + +#ifdef __cplusplus +#include "WCharacter.h" +#include "WString.h" +#include "HardwareSerial.h" + +uint16_t makeWord(uint16_t w); +uint16_t makeWord(byte h, byte l); + +#define word(...) makeWord(__VA_ARGS__) + +unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout = 1000000L); + +void tone(uint8_t _pin, unsigned int frequency, unsigned long duration = 0); +void noTone(uint8_t _pin); + +// WMath prototypes +long random(long); +long random(long, long); +void randomSeed(unsigned int); +long map(long, long, long, long, long); + +#endif + +#include "pins_arduino.h" + +#endif diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/CDC.cpp b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/CDC.cpp new file mode 100644 index 0000000000000000000000000000000000000000..701e48398fc8c814853a80a144466144799cff08 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/CDC.cpp @@ -0,0 +1,239 @@ + + +/* Copyright (c) 2011, Peter Barrett +** +** Permission to use, copy, modify, and/or distribute this software for +** any purpose with or without fee is hereby granted, provided that the +** above copyright notice and this permission notice appear in all copies. +** +** THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL +** WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED +** WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR +** BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES +** OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +** WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +** ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +** SOFTWARE. +*/ + +#include "Platform.h" +#include "USBAPI.h" +#include + +#if defined(USBCON) +#ifdef CDC_ENABLED + +#if (RAMEND < 1000) +#define SERIAL_BUFFER_SIZE 16 +#else +#define SERIAL_BUFFER_SIZE 64 +#endif + +struct ring_buffer +{ + unsigned char buffer[SERIAL_BUFFER_SIZE]; + volatile int head; + volatile int tail; +}; + +ring_buffer cdc_rx_buffer = { { 0 }, 0, 0}; + +typedef struct +{ + u32 dwDTERate; + u8 bCharFormat; + u8 bParityType; + u8 bDataBits; + u8 lineState; +} LineInfo; + +static volatile LineInfo _usbLineInfo = { 57600, 0x00, 0x00, 0x00, 0x00 }; + +#define WEAK __attribute__ ((weak)) + +extern const CDCDescriptor _cdcInterface PROGMEM; +const CDCDescriptor _cdcInterface = +{ + D_IAD(0,2,CDC_COMMUNICATION_INTERFACE_CLASS,CDC_ABSTRACT_CONTROL_MODEL,1), + + // CDC communication interface + D_INTERFACE(CDC_ACM_INTERFACE,1,CDC_COMMUNICATION_INTERFACE_CLASS,CDC_ABSTRACT_CONTROL_MODEL,0), + D_CDCCS(CDC_HEADER,0x10,0x01), // Header (1.10 bcd) + D_CDCCS(CDC_CALL_MANAGEMENT,1,1), // Device handles call management (not) + D_CDCCS4(CDC_ABSTRACT_CONTROL_MANAGEMENT,6), // SET_LINE_CODING, GET_LINE_CODING, SET_CONTROL_LINE_STATE supported + D_CDCCS(CDC_UNION,CDC_ACM_INTERFACE,CDC_DATA_INTERFACE), // Communication interface is master, data interface is slave 0 + D_ENDPOINT(USB_ENDPOINT_IN (CDC_ENDPOINT_ACM),USB_ENDPOINT_TYPE_INTERRUPT,0x10,0x40), + + // CDC data interface + D_INTERFACE(CDC_DATA_INTERFACE,2,CDC_DATA_INTERFACE_CLASS,0,0), + D_ENDPOINT(USB_ENDPOINT_OUT(CDC_ENDPOINT_OUT),USB_ENDPOINT_TYPE_BULK,0x40,0), + D_ENDPOINT(USB_ENDPOINT_IN (CDC_ENDPOINT_IN ),USB_ENDPOINT_TYPE_BULK,0x40,0) +}; + +int WEAK CDC_GetInterface(u8* interfaceNum) +{ + interfaceNum[0] += 2; // uses 2 + return USB_SendControl(TRANSFER_PGM,&_cdcInterface,sizeof(_cdcInterface)); +} + +bool WEAK CDC_Setup(Setup& setup) +{ + u8 r = setup.bRequest; + u8 requestType = setup.bmRequestType; + + if (REQUEST_DEVICETOHOST_CLASS_INTERFACE == requestType) + { + if (CDC_GET_LINE_CODING == r) + { + USB_SendControl(0,(void*)&_usbLineInfo,7); + return true; + } + } + + if (REQUEST_HOSTTODEVICE_CLASS_INTERFACE == requestType) + { + if (CDC_SET_LINE_CODING == r) + { + USB_RecvControl((void*)&_usbLineInfo,7); + return true; + } + + if (CDC_SET_CONTROL_LINE_STATE == r) + { + _usbLineInfo.lineState = setup.wValueL; + + // auto-reset into the bootloader is triggered when the port, already + // open at 1200 bps, is closed. this is the signal to start the watchdog + // with a relatively long period so it can finish housekeeping tasks + // like servicing endpoints before the sketch ends + if (1200 == _usbLineInfo.dwDTERate) { + // We check DTR state to determine if host port is open (bit 0 of lineState). + if ((_usbLineInfo.lineState & 0x01) == 0) { + *(uint16_t *)0x0800 = 0x7777; + wdt_enable(WDTO_120MS); + } else { + // Most OSs do some intermediate steps when configuring ports and DTR can + // twiggle more than once before stabilizing. + // To avoid spurious resets we set the watchdog to 250ms and eventually + // cancel if DTR goes back high. + + wdt_disable(); + wdt_reset(); + *(uint16_t *)0x0800 = 0x0; + } + } + return true; + } + } + return false; +} + + +int _serialPeek = -1; +void Serial_::begin(uint16_t baud_count) +{ +} + +void Serial_::end(void) +{ +} + +void Serial_::accept(void) +{ + ring_buffer *buffer = &cdc_rx_buffer; + int i = (unsigned int)(buffer->head+1) % SERIAL_BUFFER_SIZE; + + // if we should be storing the received character into the location + // just before the tail (meaning that the head would advance to the + // current location of the tail), we're about to overflow the buffer + // and so we don't write the character or advance the head. + + // while we have room to store a byte + while (i != buffer->tail) { + int c = USB_Recv(CDC_RX); + if (c == -1) + break; // no more data + buffer->buffer[buffer->head] = c; + buffer->head = i; + + i = (unsigned int)(buffer->head+1) % SERIAL_BUFFER_SIZE; + } +} + +int Serial_::available(void) +{ + ring_buffer *buffer = &cdc_rx_buffer; + return (unsigned int)(SERIAL_BUFFER_SIZE + buffer->head - buffer->tail) % SERIAL_BUFFER_SIZE; +} + +int Serial_::peek(void) +{ + ring_buffer *buffer = &cdc_rx_buffer; + if (buffer->head == buffer->tail) { + return -1; + } else { + return buffer->buffer[buffer->tail]; + } +} + +int Serial_::read(void) +{ + ring_buffer *buffer = &cdc_rx_buffer; + // if the head isn't ahead of the tail, we don't have any characters + if (buffer->head == buffer->tail) { + return -1; + } else { + unsigned char c = buffer->buffer[buffer->tail]; + buffer->tail = (unsigned int)(buffer->tail + 1) % SERIAL_BUFFER_SIZE; + return c; + } +} + +void Serial_::flush(void) +{ + USB_Flush(CDC_TX); +} + +size_t Serial_::write(uint8_t c) +{ + /* only try to send bytes if the high-level CDC connection itself + is open (not just the pipe) - the OS should set lineState when the port + is opened and clear lineState when the port is closed. + bytes sent before the user opens the connection or after + the connection is closed are lost - just like with a UART. */ + + // TODO - ZE - check behavior on different OSes and test what happens if an + // open connection isn't broken cleanly (cable is yanked out, host dies + // or locks up, or host virtual serial port hangs) + if (_usbLineInfo.lineState > 0) { + int r = USB_Send(CDC_TX,&c,1); + if (r > 0) { + return r; + } else { + setWriteError(); + return 0; + } + } + setWriteError(); + return 0; +} + +// This operator is a convenient way for a sketch to check whether the +// port has actually been configured and opened by the host (as opposed +// to just being connected to the host). It can be used, for example, in +// setup() before printing to ensure that an application on the host is +// actually ready to receive and display the data. +// We add a short delay before returning to fix a bug observed by Federico +// where the port is configured (lineState != 0) but not quite opened. +Serial_::operator bool() { + bool result = false; + if (_usbLineInfo.lineState > 0) + result = true; + delay(10); + return result; +} + +Serial_ Serial; + +#endif +#endif /* if defined(USBCON) */ diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Client.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Client.h new file mode 100644 index 0000000000000000000000000000000000000000..ea134838a2c75cfa97f8c3b7470144ba6d17ef46 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Client.h @@ -0,0 +1,26 @@ +#ifndef client_h +#define client_h +#include "Print.h" +#include "Stream.h" +#include "IPAddress.h" + +class Client : public Stream { + +public: + virtual int connect(IPAddress ip, uint16_t port) =0; + virtual int connect(const char *host, uint16_t port) =0; + virtual size_t write(uint8_t) =0; + virtual size_t write(const uint8_t *buf, size_t size) =0; + virtual int available() = 0; + virtual int read() = 0; + virtual int read(uint8_t *buf, size_t size) = 0; + virtual int peek() = 0; + virtual void flush() = 0; + virtual void stop() = 0; + virtual uint8_t connected() = 0; + virtual operator bool() = 0; +protected: + uint8_t* rawIPAddress(IPAddress& addr) { return addr.raw_address(); }; +}; + +#endif diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/HID.cpp b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/HID.cpp new file mode 100644 index 0000000000000000000000000000000000000000..ac636084493b721936a402620d3ddf37b7e65b58 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/HID.cpp @@ -0,0 +1,520 @@ + + +/* Copyright (c) 2011, Peter Barrett +** +** Permission to use, copy, modify, and/or distribute this software for +** any purpose with or without fee is hereby granted, provided that the +** above copyright notice and this permission notice appear in all copies. +** +** THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL +** WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED +** WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR +** BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES +** OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +** WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +** ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +** SOFTWARE. +*/ + +#include "Platform.h" +#include "USBAPI.h" +#include "USBDesc.h" + +#if defined(USBCON) +#ifdef HID_ENABLED + +//#define RAWHID_ENABLED + +// Singletons for mouse and keyboard + +Mouse_ Mouse; +Keyboard_ Keyboard; + +//================================================================================ +//================================================================================ + +// HID report descriptor + +#define LSB(_x) ((_x) & 0xFF) +#define MSB(_x) ((_x) >> 8) + +#define RAWHID_USAGE_PAGE 0xFFC0 +#define RAWHID_USAGE 0x0C00 +#define RAWHID_TX_SIZE 64 +#define RAWHID_RX_SIZE 64 + +extern const u8 _hidReportDescriptor[] PROGMEM; +const u8 _hidReportDescriptor[] = { + + // Mouse + 0x05, 0x01, // USAGE_PAGE (Generic Desktop) // 54 + 0x09, 0x02, // USAGE (Mouse) + 0xa1, 0x01, // COLLECTION (Application) + 0x09, 0x01, // USAGE (Pointer) + 0xa1, 0x00, // COLLECTION (Physical) + 0x85, 0x01, // REPORT_ID (1) + 0x05, 0x09, // USAGE_PAGE (Button) + 0x19, 0x01, // USAGE_MINIMUM (Button 1) + 0x29, 0x03, // USAGE_MAXIMUM (Button 3) + 0x15, 0x00, // LOGICAL_MINIMUM (0) + 0x25, 0x01, // LOGICAL_MAXIMUM (1) + 0x95, 0x03, // REPORT_COUNT (3) + 0x75, 0x01, // REPORT_SIZE (1) + 0x81, 0x02, // INPUT (Data,Var,Abs) + 0x95, 0x01, // REPORT_COUNT (1) + 0x75, 0x05, // REPORT_SIZE (5) + 0x81, 0x03, // INPUT (Cnst,Var,Abs) + 0x05, 0x01, // USAGE_PAGE (Generic Desktop) + 0x09, 0x30, // USAGE (X) + 0x09, 0x31, // USAGE (Y) + 0x09, 0x38, // USAGE (Wheel) + 0x15, 0x81, // LOGICAL_MINIMUM (-127) + 0x25, 0x7f, // LOGICAL_MAXIMUM (127) + 0x75, 0x08, // REPORT_SIZE (8) + 0x95, 0x03, // REPORT_COUNT (3) + 0x81, 0x06, // INPUT (Data,Var,Rel) + 0xc0, // END_COLLECTION + 0xc0, // END_COLLECTION + + // Keyboard + 0x05, 0x01, // USAGE_PAGE (Generic Desktop) // 47 + 0x09, 0x06, // USAGE (Keyboard) + 0xa1, 0x01, // COLLECTION (Application) + 0x85, 0x02, // REPORT_ID (2) + 0x05, 0x07, // USAGE_PAGE (Keyboard) + + 0x19, 0xe0, // USAGE_MINIMUM (Keyboard LeftControl) + 0x29, 0xe7, // USAGE_MAXIMUM (Keyboard Right GUI) + 0x15, 0x00, // LOGICAL_MINIMUM (0) + 0x25, 0x01, // LOGICAL_MAXIMUM (1) + 0x75, 0x01, // REPORT_SIZE (1) + + 0x95, 0x08, // REPORT_COUNT (8) + 0x81, 0x02, // INPUT (Data,Var,Abs) + 0x95, 0x01, // REPORT_COUNT (1) + 0x75, 0x08, // REPORT_SIZE (8) + 0x81, 0x03, // INPUT (Cnst,Var,Abs) + + 0x95, 0x06, // REPORT_COUNT (6) + 0x75, 0x08, // REPORT_SIZE (8) + 0x15, 0x00, // LOGICAL_MINIMUM (0) + 0x25, 0x65, // LOGICAL_MAXIMUM (101) + 0x05, 0x07, // USAGE_PAGE (Keyboard) + + 0x19, 0x00, // USAGE_MINIMUM (Reserved (no event indicated)) + 0x29, 0x65, // USAGE_MAXIMUM (Keyboard Application) + 0x81, 0x00, // INPUT (Data,Ary,Abs) + 0xc0, // END_COLLECTION + +#if RAWHID_ENABLED + // RAW HID + 0x06, LSB(RAWHID_USAGE_PAGE), MSB(RAWHID_USAGE_PAGE), // 30 + 0x0A, LSB(RAWHID_USAGE), MSB(RAWHID_USAGE), + + 0xA1, 0x01, // Collection 0x01 + 0x85, 0x03, // REPORT_ID (3) + 0x75, 0x08, // report size = 8 bits + 0x15, 0x00, // logical minimum = 0 + 0x26, 0xFF, 0x00, // logical maximum = 255 + + 0x95, 64, // report count TX + 0x09, 0x01, // usage + 0x81, 0x02, // Input (array) + + 0x95, 64, // report count RX + 0x09, 0x02, // usage + 0x91, 0x02, // Output (array) + 0xC0 // end collection +#endif +}; + +extern const HIDDescriptor _hidInterface PROGMEM; +const HIDDescriptor _hidInterface = +{ + D_INTERFACE(HID_INTERFACE,1,3,0,0), + D_HIDREPORT(sizeof(_hidReportDescriptor)), + D_ENDPOINT(USB_ENDPOINT_IN (HID_ENDPOINT_INT),USB_ENDPOINT_TYPE_INTERRUPT,0x40,0x01) +}; + +//================================================================================ +//================================================================================ +// Driver + +u8 _hid_protocol = 1; +u8 _hid_idle = 1; + +#define WEAK __attribute__ ((weak)) + +int WEAK HID_GetInterface(u8* interfaceNum) +{ + interfaceNum[0] += 1; // uses 1 + return USB_SendControl(TRANSFER_PGM,&_hidInterface,sizeof(_hidInterface)); +} + +int WEAK HID_GetDescriptor(int i) +{ + return USB_SendControl(TRANSFER_PGM,_hidReportDescriptor,sizeof(_hidReportDescriptor)); +} + +void WEAK HID_SendReport(u8 id, const void* data, int len) +{ + USB_Send(HID_TX, &id, 1); + USB_Send(HID_TX | TRANSFER_RELEASE,data,len); +} + +bool WEAK HID_Setup(Setup& setup) +{ + u8 r = setup.bRequest; + u8 requestType = setup.bmRequestType; + if (REQUEST_DEVICETOHOST_CLASS_INTERFACE == requestType) + { + if (HID_GET_REPORT == r) + { + //HID_GetReport(); + return true; + } + if (HID_GET_PROTOCOL == r) + { + //Send8(_hid_protocol); // TODO + return true; + } + } + + if (REQUEST_HOSTTODEVICE_CLASS_INTERFACE == requestType) + { + if (HID_SET_PROTOCOL == r) + { + _hid_protocol = setup.wValueL; + return true; + } + + if (HID_SET_IDLE == r) + { + _hid_idle = setup.wValueL; + return true; + } + } + return false; +} + +//================================================================================ +//================================================================================ +// Mouse + +Mouse_::Mouse_(void) : _buttons(0) +{ +} + +void Mouse_::begin(void) +{ +} + +void Mouse_::end(void) +{ +} + +void Mouse_::click(uint8_t b) +{ + _buttons = b; + move(0,0,0); + _buttons = 0; + move(0,0,0); +} + +void Mouse_::move(signed char x, signed char y, signed char wheel) +{ + u8 m[4]; + m[0] = _buttons; + m[1] = x; + m[2] = y; + m[3] = wheel; + HID_SendReport(1,m,4); +} + +void Mouse_::buttons(uint8_t b) +{ + if (b != _buttons) + { + _buttons = b; + move(0,0,0); + } +} + +void Mouse_::press(uint8_t b) +{ + buttons(_buttons | b); +} + +void Mouse_::release(uint8_t b) +{ + buttons(_buttons & ~b); +} + +bool Mouse_::isPressed(uint8_t b) +{ + if ((b & _buttons) > 0) + return true; + return false; +} + +//================================================================================ +//================================================================================ +// Keyboard + +Keyboard_::Keyboard_(void) +{ +} + +void Keyboard_::begin(void) +{ +} + +void Keyboard_::end(void) +{ +} + +void Keyboard_::sendReport(KeyReport* keys) +{ + HID_SendReport(2,keys,sizeof(KeyReport)); +} + +extern +const uint8_t _asciimap[128] PROGMEM; + +#define SHIFT 0x80 +const uint8_t _asciimap[128] = +{ + 0x00, // NUL + 0x00, // SOH + 0x00, // STX + 0x00, // ETX + 0x00, // EOT + 0x00, // ENQ + 0x00, // ACK + 0x00, // BEL + 0x2a, // BS Backspace + 0x2b, // TAB Tab + 0x28, // LF Enter + 0x00, // VT + 0x00, // FF + 0x00, // CR + 0x00, // SO + 0x00, // SI + 0x00, // DEL + 0x00, // DC1 + 0x00, // DC2 + 0x00, // DC3 + 0x00, // DC4 + 0x00, // NAK + 0x00, // SYN + 0x00, // ETB + 0x00, // CAN + 0x00, // EM + 0x00, // SUB + 0x00, // ESC + 0x00, // FS + 0x00, // GS + 0x00, // RS + 0x00, // US + + 0x2c, // ' ' + 0x1e|SHIFT, // ! + 0x34|SHIFT, // " + 0x20|SHIFT, // # + 0x21|SHIFT, // $ + 0x22|SHIFT, // % + 0x24|SHIFT, // & + 0x34, // ' + 0x26|SHIFT, // ( + 0x27|SHIFT, // ) + 0x25|SHIFT, // * + 0x2e|SHIFT, // + + 0x36, // , + 0x2d, // - + 0x37, // . + 0x38, // / + 0x27, // 0 + 0x1e, // 1 + 0x1f, // 2 + 0x20, // 3 + 0x21, // 4 + 0x22, // 5 + 0x23, // 6 + 0x24, // 7 + 0x25, // 8 + 0x26, // 9 + 0x33|SHIFT, // : + 0x33, // ; + 0x36|SHIFT, // < + 0x2e, // = + 0x37|SHIFT, // > + 0x38|SHIFT, // ? + 0x1f|SHIFT, // @ + 0x04|SHIFT, // A + 0x05|SHIFT, // B + 0x06|SHIFT, // C + 0x07|SHIFT, // D + 0x08|SHIFT, // E + 0x09|SHIFT, // F + 0x0a|SHIFT, // G + 0x0b|SHIFT, // H + 0x0c|SHIFT, // I + 0x0d|SHIFT, // J + 0x0e|SHIFT, // K + 0x0f|SHIFT, // L + 0x10|SHIFT, // M + 0x11|SHIFT, // N + 0x12|SHIFT, // O + 0x13|SHIFT, // P + 0x14|SHIFT, // Q + 0x15|SHIFT, // R + 0x16|SHIFT, // S + 0x17|SHIFT, // T + 0x18|SHIFT, // U + 0x19|SHIFT, // V + 0x1a|SHIFT, // W + 0x1b|SHIFT, // X + 0x1c|SHIFT, // Y + 0x1d|SHIFT, // Z + 0x2f, // [ + 0x31, // bslash + 0x30, // ] + 0x23|SHIFT, // ^ + 0x2d|SHIFT, // _ + 0x35, // ` + 0x04, // a + 0x05, // b + 0x06, // c + 0x07, // d + 0x08, // e + 0x09, // f + 0x0a, // g + 0x0b, // h + 0x0c, // i + 0x0d, // j + 0x0e, // k + 0x0f, // l + 0x10, // m + 0x11, // n + 0x12, // o + 0x13, // p + 0x14, // q + 0x15, // r + 0x16, // s + 0x17, // t + 0x18, // u + 0x19, // v + 0x1a, // w + 0x1b, // x + 0x1c, // y + 0x1d, // z + 0x2f|SHIFT, // + 0x31|SHIFT, // | + 0x30|SHIFT, // } + 0x35|SHIFT, // ~ + 0 // DEL +}; + +uint8_t USBPutChar(uint8_t c); + +// press() adds the specified key (printing, non-printing, or modifier) +// to the persistent key report and sends the report. Because of the way +// USB HID works, the host acts like the key remains pressed until we +// call release(), releaseAll(), or otherwise clear the report and resend. +size_t Keyboard_::press(uint8_t k) +{ + uint8_t i; + if (k >= 136) { // it's a non-printing key (not a modifier) + k = k - 136; + } else if (k >= 128) { // it's a modifier key + _keyReport.modifiers |= (1<<(k-128)); + k = 0; + } else { // it's a printing key + k = pgm_read_byte(_asciimap + k); + if (!k) { + setWriteError(); + return 0; + } + if (k & 0x80) { // it's a capital letter or other character reached with shift + _keyReport.modifiers |= 0x02; // the left shift modifier + k &= 0x7F; + } + } + + // Add k to the key report only if it's not already present + // and if there is an empty slot. + if (_keyReport.keys[0] != k && _keyReport.keys[1] != k && + _keyReport.keys[2] != k && _keyReport.keys[3] != k && + _keyReport.keys[4] != k && _keyReport.keys[5] != k) { + + for (i=0; i<6; i++) { + if (_keyReport.keys[i] == 0x00) { + _keyReport.keys[i] = k; + break; + } + } + if (i == 6) { + setWriteError(); + return 0; + } + } + sendReport(&_keyReport); + return 1; +} + +// release() takes the specified key out of the persistent key report and +// sends the report. This tells the OS the key is no longer pressed and that +// it shouldn't be repeated any more. +size_t Keyboard_::release(uint8_t k) +{ + uint8_t i; + if (k >= 136) { // it's a non-printing key (not a modifier) + k = k - 136; + } else if (k >= 128) { // it's a modifier key + _keyReport.modifiers &= ~(1<<(k-128)); + k = 0; + } else { // it's a printing key + k = pgm_read_byte(_asciimap + k); + if (!k) { + return 0; + } + if (k & 0x80) { // it's a capital letter or other character reached with shift + _keyReport.modifiers &= ~(0x02); // the left shift modifier + k &= 0x7F; + } + } + + // Test the key report to see if k is present. Clear it if it exists. + // Check all positions in case the key is present more than once (which it shouldn't be) + for (i=0; i<6; i++) { + if (0 != k && _keyReport.keys[i] == k) { + _keyReport.keys[i] = 0x00; + } + } + + sendReport(&_keyReport); + return 1; +} + +void Keyboard_::releaseAll(void) +{ + _keyReport.keys[0] = 0; + _keyReport.keys[1] = 0; + _keyReport.keys[2] = 0; + _keyReport.keys[3] = 0; + _keyReport.keys[4] = 0; + _keyReport.keys[5] = 0; + _keyReport.modifiers = 0; + sendReport(&_keyReport); +} + +size_t Keyboard_::write(uint8_t c) +{ + uint8_t p = press(c); // Keydown + uint8_t r = release(c); // Keyup + return (p); // just return the result of press() since release() almost always returns 1 +} + +#endif + +#endif /* if defined(USBCON) */ \ No newline at end of file diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/HardwareSerial.cpp b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/HardwareSerial.cpp new file mode 100644 index 0000000000000000000000000000000000000000..794a7be8989509a339cb9c0ecd8979eeb37d7bef --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/HardwareSerial.cpp @@ -0,0 +1,519 @@ +/* + HardwareSerial.cpp - Hardware serial library for Wiring + Copyright (c) 2006 Nicholas Zambetti. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + Modified 23 November 2006 by David A. Mellis + Modified 28 September 2010 by Mark Sproul + Modified 14 August 2012 by Alarus +*/ + +#include +#include +#include +#include +#include "Arduino.h" +#include "wiring_private.h" + +// this next line disables the entire HardwareSerial.cpp, +// this is so I can support Attiny series and any other chip without a uart +#if defined(UBRRH) || defined(UBRR0H) || defined(UBRR1H) || defined(UBRR2H) || defined(UBRR3H) + +#include "HardwareSerial.h" + +/* + * on ATmega8, the uart and its bits are not numbered, so there is no "TXC0" + * definition. + */ +#if !defined(TXC0) +#if defined(TXC) +#define TXC0 TXC +#elif defined(TXC1) +// Some devices have uart1 but no uart0 +#define TXC0 TXC1 +#else +#error TXC0 not definable in HardwareSerial.h +#endif +#endif + +// Define constants and variables for buffering incoming serial data. We're +// using a ring buffer (I think), in which head is the index of the location +// to which to write the next incoming character and tail is the index of the +// location from which to read. +#if (RAMEND < 1000) + #define SERIAL_BUFFER_SIZE 16 +#else + #define SERIAL_BUFFER_SIZE 64 +#endif + +struct ring_buffer +{ + unsigned char buffer[SERIAL_BUFFER_SIZE]; + volatile unsigned int head; + volatile unsigned int tail; +}; + +#if defined(USBCON) + ring_buffer rx_buffer = { { 0 }, 0, 0}; + ring_buffer tx_buffer = { { 0 }, 0, 0}; +#endif +#if defined(UBRRH) || defined(UBRR0H) + ring_buffer rx_buffer = { { 0 }, 0, 0 }; + ring_buffer tx_buffer = { { 0 }, 0, 0 }; +#endif +#if defined(UBRR1H) + ring_buffer rx_buffer1 = { { 0 }, 0, 0 }; + ring_buffer tx_buffer1 = { { 0 }, 0, 0 }; +#endif +#if defined(UBRR2H) + ring_buffer rx_buffer2 = { { 0 }, 0, 0 }; + ring_buffer tx_buffer2 = { { 0 }, 0, 0 }; +#endif +#if defined(UBRR3H) + ring_buffer rx_buffer3 = { { 0 }, 0, 0 }; + ring_buffer tx_buffer3 = { { 0 }, 0, 0 }; +#endif + +inline void store_char(unsigned char c, ring_buffer *buffer) +{ + int i = (unsigned int)(buffer->head + 1) % SERIAL_BUFFER_SIZE; + + // if we should be storing the received character into the location + // just before the tail (meaning that the head would advance to the + // current location of the tail), we're about to overflow the buffer + // and so we don't write the character or advance the head. + if (i != buffer->tail) { + buffer->buffer[buffer->head] = c; + buffer->head = i; + } +} + +#if !defined(USART0_RX_vect) && defined(USART1_RX_vect) +// do nothing - on the 32u4 the first USART is USART1 +#else +#if !defined(USART_RX_vect) && !defined(SIG_USART0_RECV) && \ + !defined(SIG_UART0_RECV) && !defined(USART0_RX_vect) && \ + !defined(SIG_UART_RECV) + #error "Don't know what the Data Received vector is called for the first UART" +#else + void serialEvent() __attribute__((weak)); + void serialEvent() {} + #define serialEvent_implemented +#if defined(USART_RX_vect) + SIGNAL(USART_RX_vect) +#elif defined(SIG_USART0_RECV) + SIGNAL(SIG_USART0_RECV) +#elif defined(SIG_UART0_RECV) + SIGNAL(SIG_UART0_RECV) +#elif defined(USART0_RX_vect) + SIGNAL(USART0_RX_vect) +#elif defined(SIG_UART_RECV) + SIGNAL(SIG_UART_RECV) +#endif + { + #if defined(UDR0) + if (bit_is_clear(UCSR0A, UPE0)) { + unsigned char c = UDR0; + store_char(c, &rx_buffer); + } else { + unsigned char c = UDR0; + }; + #elif defined(UDR) + if (bit_is_clear(UCSRA, PE)) { + unsigned char c = UDR; + store_char(c, &rx_buffer); + } else { + unsigned char c = UDR; + }; + #else + #error UDR not defined + #endif + } +#endif +#endif + +#if defined(USART1_RX_vect) + void serialEvent1() __attribute__((weak)); + void serialEvent1() {} + #define serialEvent1_implemented + SIGNAL(USART1_RX_vect) + { + if (bit_is_clear(UCSR1A, UPE1)) { + unsigned char c = UDR1; + store_char(c, &rx_buffer1); + } else { + unsigned char c = UDR1; + }; + } +#elif defined(SIG_USART1_RECV) + #error SIG_USART1_RECV +#endif + +#if defined(USART2_RX_vect) && defined(UDR2) + void serialEvent2() __attribute__((weak)); + void serialEvent2() {} + #define serialEvent2_implemented + SIGNAL(USART2_RX_vect) + { + if (bit_is_clear(UCSR2A, UPE2)) { + unsigned char c = UDR2; + store_char(c, &rx_buffer2); + } else { + unsigned char c = UDR2; + }; + } +#elif defined(SIG_USART2_RECV) + #error SIG_USART2_RECV +#endif + +#if defined(USART3_RX_vect) && defined(UDR3) + void serialEvent3() __attribute__((weak)); + void serialEvent3() {} + #define serialEvent3_implemented + SIGNAL(USART3_RX_vect) + { + if (bit_is_clear(UCSR3A, UPE3)) { + unsigned char c = UDR3; + store_char(c, &rx_buffer3); + } else { + unsigned char c = UDR3; + }; + } +#elif defined(SIG_USART3_RECV) + #error SIG_USART3_RECV +#endif + +void serialEventRun(void) +{ +#ifdef serialEvent_implemented + if (Serial.available()) serialEvent(); +#endif +#ifdef serialEvent1_implemented + if (Serial1.available()) serialEvent1(); +#endif +#ifdef serialEvent2_implemented + if (Serial2.available()) serialEvent2(); +#endif +#ifdef serialEvent3_implemented + if (Serial3.available()) serialEvent3(); +#endif +} + + +#if !defined(USART0_UDRE_vect) && defined(USART1_UDRE_vect) +// do nothing - on the 32u4 the first USART is USART1 +#else +#if !defined(UART0_UDRE_vect) && !defined(UART_UDRE_vect) && !defined(USART0_UDRE_vect) && !defined(USART_UDRE_vect) + #error "Don't know what the Data Register Empty vector is called for the first UART" +#else +#if defined(UART0_UDRE_vect) +ISR(UART0_UDRE_vect) +#elif defined(UART_UDRE_vect) +ISR(UART_UDRE_vect) +#elif defined(USART0_UDRE_vect) +ISR(USART0_UDRE_vect) +#elif defined(USART_UDRE_vect) +ISR(USART_UDRE_vect) +#endif +{ + if (tx_buffer.head == tx_buffer.tail) { + // Buffer empty, so disable interrupts +#if defined(UCSR0B) + cbi(UCSR0B, UDRIE0); +#else + cbi(UCSRB, UDRIE); +#endif + } + else { + // There is more data in the output buffer. Send the next byte + unsigned char c = tx_buffer.buffer[tx_buffer.tail]; + tx_buffer.tail = (tx_buffer.tail + 1) % SERIAL_BUFFER_SIZE; + + #if defined(UDR0) + UDR0 = c; + #elif defined(UDR) + UDR = c; + #else + #error UDR not defined + #endif + } +} +#endif +#endif + +#ifdef USART1_UDRE_vect +ISR(USART1_UDRE_vect) +{ + if (tx_buffer1.head == tx_buffer1.tail) { + // Buffer empty, so disable interrupts + cbi(UCSR1B, UDRIE1); + } + else { + // There is more data in the output buffer. Send the next byte + unsigned char c = tx_buffer1.buffer[tx_buffer1.tail]; + tx_buffer1.tail = (tx_buffer1.tail + 1) % SERIAL_BUFFER_SIZE; + + UDR1 = c; + } +} +#endif + +#ifdef USART2_UDRE_vect +ISR(USART2_UDRE_vect) +{ + if (tx_buffer2.head == tx_buffer2.tail) { + // Buffer empty, so disable interrupts + cbi(UCSR2B, UDRIE2); + } + else { + // There is more data in the output buffer. Send the next byte + unsigned char c = tx_buffer2.buffer[tx_buffer2.tail]; + tx_buffer2.tail = (tx_buffer2.tail + 1) % SERIAL_BUFFER_SIZE; + + UDR2 = c; + } +} +#endif + +#ifdef USART3_UDRE_vect +ISR(USART3_UDRE_vect) +{ + if (tx_buffer3.head == tx_buffer3.tail) { + // Buffer empty, so disable interrupts + cbi(UCSR3B, UDRIE3); + } + else { + // There is more data in the output buffer. Send the next byte + unsigned char c = tx_buffer3.buffer[tx_buffer3.tail]; + tx_buffer3.tail = (tx_buffer3.tail + 1) % SERIAL_BUFFER_SIZE; + + UDR3 = c; + } +} +#endif + + +// Constructors //////////////////////////////////////////////////////////////// + +HardwareSerial::HardwareSerial(ring_buffer *rx_buffer, ring_buffer *tx_buffer, + volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, + volatile uint8_t *ucsra, volatile uint8_t *ucsrb, + volatile uint8_t *ucsrc, volatile uint8_t *udr, + uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udrie, uint8_t u2x) +{ + _rx_buffer = rx_buffer; + _tx_buffer = tx_buffer; + _ubrrh = ubrrh; + _ubrrl = ubrrl; + _ucsra = ucsra; + _ucsrb = ucsrb; + _ucsrc = ucsrc; + _udr = udr; + _rxen = rxen; + _txen = txen; + _rxcie = rxcie; + _udrie = udrie; + _u2x = u2x; +} + +// Public Methods ////////////////////////////////////////////////////////////// + +void HardwareSerial::begin(unsigned long baud) +{ + uint16_t baud_setting; + bool use_u2x = true; + +#if F_CPU == 16000000UL + // hardcoded exception for compatibility with the bootloader shipped + // with the Duemilanove and previous boards and the firmware on the 8U2 + // on the Uno and Mega 2560. + if (baud == 57600) { + use_u2x = false; + } +#endif + +try_again: + + if (use_u2x) { + *_ucsra = 1 << _u2x; + baud_setting = (F_CPU / 4 / baud - 1) / 2; + } else { + *_ucsra = 0; + baud_setting = (F_CPU / 8 / baud - 1) / 2; + } + + if ((baud_setting > 4095) && use_u2x) + { + use_u2x = false; + goto try_again; + } + + // assign the baud_setting, a.k.a. ubbr (USART Baud Rate Register) + *_ubrrh = baud_setting >> 8; + *_ubrrl = baud_setting; + + transmitting = false; + + sbi(*_ucsrb, _rxen); + sbi(*_ucsrb, _txen); + sbi(*_ucsrb, _rxcie); + cbi(*_ucsrb, _udrie); +} + +void HardwareSerial::begin(unsigned long baud, byte config) +{ + uint16_t baud_setting; + uint8_t current_config; + bool use_u2x = true; + +#if F_CPU == 16000000UL + // hardcoded exception for compatibility with the bootloader shipped + // with the Duemilanove and previous boards and the firmware on the 8U2 + // on the Uno and Mega 2560. + if (baud == 57600) { + use_u2x = false; + } +#endif + +try_again: + + if (use_u2x) { + *_ucsra = 1 << _u2x; + baud_setting = (F_CPU / 4 / baud - 1) / 2; + } else { + *_ucsra = 0; + baud_setting = (F_CPU / 8 / baud - 1) / 2; + } + + if ((baud_setting > 4095) && use_u2x) + { + use_u2x = false; + goto try_again; + } + + // assign the baud_setting, a.k.a. ubbr (USART Baud Rate Register) + *_ubrrh = baud_setting >> 8; + *_ubrrl = baud_setting; + + //set the data bits, parity, and stop bits +#if defined(__AVR_ATmega8__) + config |= 0x80; // select UCSRC register (shared with UBRRH) +#endif + *_ucsrc = config; + + sbi(*_ucsrb, _rxen); + sbi(*_ucsrb, _txen); + sbi(*_ucsrb, _rxcie); + cbi(*_ucsrb, _udrie); +} + +void HardwareSerial::end() +{ + // wait for transmission of outgoing data + while (_tx_buffer->head != _tx_buffer->tail) + ; + + cbi(*_ucsrb, _rxen); + cbi(*_ucsrb, _txen); + cbi(*_ucsrb, _rxcie); + cbi(*_ucsrb, _udrie); + + // clear any received data + _rx_buffer->head = _rx_buffer->tail; +} + +int HardwareSerial::available(void) +{ + return (unsigned int)(SERIAL_BUFFER_SIZE + _rx_buffer->head - _rx_buffer->tail) % SERIAL_BUFFER_SIZE; +} + +int HardwareSerial::peek(void) +{ + if (_rx_buffer->head == _rx_buffer->tail) { + return -1; + } else { + return _rx_buffer->buffer[_rx_buffer->tail]; + } +} + +int HardwareSerial::read(void) +{ + // if the head isn't ahead of the tail, we don't have any characters + if (_rx_buffer->head == _rx_buffer->tail) { + return -1; + } else { + unsigned char c = _rx_buffer->buffer[_rx_buffer->tail]; + _rx_buffer->tail = (unsigned int)(_rx_buffer->tail + 1) % SERIAL_BUFFER_SIZE; + return c; + } +} + +void HardwareSerial::flush() +{ + // UDR is kept full while the buffer is not empty, so TXC triggers when EMPTY && SENT + while (transmitting && ! (*_ucsra & _BV(TXC0))); + transmitting = false; +} + +size_t HardwareSerial::write(uint8_t c) +{ + int i = (_tx_buffer->head + 1) % SERIAL_BUFFER_SIZE; + + // If the output buffer is full, there's nothing for it other than to + // wait for the interrupt handler to empty it a bit + // ???: return 0 here instead? + while (i == _tx_buffer->tail) + ; + + _tx_buffer->buffer[_tx_buffer->head] = c; + _tx_buffer->head = i; + + sbi(*_ucsrb, _udrie); + // clear the TXC bit -- "can be cleared by writing a one to its bit location" + transmitting = true; + sbi(*_ucsra, TXC0); + + return 1; +} + +HardwareSerial::operator bool() { + return true; +} + +// Preinstantiate Objects ////////////////////////////////////////////////////// + +#if defined(UBRRH) && defined(UBRRL) + HardwareSerial Serial(&rx_buffer, &tx_buffer, &UBRRH, &UBRRL, &UCSRA, &UCSRB, &UCSRC, &UDR, RXEN, TXEN, RXCIE, UDRIE, U2X); +#elif defined(UBRR0H) && defined(UBRR0L) + HardwareSerial Serial(&rx_buffer, &tx_buffer, &UBRR0H, &UBRR0L, &UCSR0A, &UCSR0B, &UCSR0C, &UDR0, RXEN0, TXEN0, RXCIE0, UDRIE0, U2X0); +#elif defined(USBCON) + // do nothing - Serial object and buffers are initialized in CDC code +#else + #error no serial port defined (port 0) +#endif + +#if defined(UBRR1H) + HardwareSerial Serial1(&rx_buffer1, &tx_buffer1, &UBRR1H, &UBRR1L, &UCSR1A, &UCSR1B, &UCSR1C, &UDR1, RXEN1, TXEN1, RXCIE1, UDRIE1, U2X1); +#endif +#if defined(UBRR2H) + HardwareSerial Serial2(&rx_buffer2, &tx_buffer2, &UBRR2H, &UBRR2L, &UCSR2A, &UCSR2B, &UCSR2C, &UDR2, RXEN2, TXEN2, RXCIE2, UDRIE2, U2X2); +#endif +#if defined(UBRR3H) + HardwareSerial Serial3(&rx_buffer3, &tx_buffer3, &UBRR3H, &UBRR3L, &UCSR3A, &UCSR3B, &UCSR3C, &UDR3, RXEN3, TXEN3, RXCIE3, UDRIE3, U2X3); +#endif + +#endif // whole file + diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/HardwareSerial.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/HardwareSerial.h new file mode 100644 index 0000000000000000000000000000000000000000..a73117f56816a38ab962b5c76599ee937cf00680 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/HardwareSerial.h @@ -0,0 +1,115 @@ +/* + HardwareSerial.h - Hardware serial library for Wiring + Copyright (c) 2006 Nicholas Zambetti. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + Modified 28 September 2010 by Mark Sproul + Modified 14 August 2012 by Alarus +*/ + +#ifndef HardwareSerial_h +#define HardwareSerial_h + +#include + +#include "Stream.h" + +struct ring_buffer; + +class HardwareSerial : public Stream +{ + private: + ring_buffer *_rx_buffer; + ring_buffer *_tx_buffer; + volatile uint8_t *_ubrrh; + volatile uint8_t *_ubrrl; + volatile uint8_t *_ucsra; + volatile uint8_t *_ucsrb; + volatile uint8_t *_ucsrc; + volatile uint8_t *_udr; + uint8_t _rxen; + uint8_t _txen; + uint8_t _rxcie; + uint8_t _udrie; + uint8_t _u2x; + bool transmitting; + public: + HardwareSerial(ring_buffer *rx_buffer, ring_buffer *tx_buffer, + volatile uint8_t *ubrrh, volatile uint8_t *ubrrl, + volatile uint8_t *ucsra, volatile uint8_t *ucsrb, + volatile uint8_t *ucsrc, volatile uint8_t *udr, + uint8_t rxen, uint8_t txen, uint8_t rxcie, uint8_t udrie, uint8_t u2x); + void begin(unsigned long); + void begin(unsigned long, uint8_t); + void end(); + virtual int available(void); + virtual int peek(void); + virtual int read(void); + virtual void flush(void); + virtual size_t write(uint8_t); + inline size_t write(unsigned long n) { return write((uint8_t)n); } + inline size_t write(long n) { return write((uint8_t)n); } + inline size_t write(unsigned int n) { return write((uint8_t)n); } + inline size_t write(int n) { return write((uint8_t)n); } + using Print::write; // pull in write(str) and write(buf, size) from Print + operator bool(); +}; + +// Define config for Serial.begin(baud, config); +#define SERIAL_5N1 0x00 +#define SERIAL_6N1 0x02 +#define SERIAL_7N1 0x04 +#define SERIAL_8N1 0x06 +#define SERIAL_5N2 0x08 +#define SERIAL_6N2 0x0A +#define SERIAL_7N2 0x0C +#define SERIAL_8N2 0x0E +#define SERIAL_5E1 0x20 +#define SERIAL_6E1 0x22 +#define SERIAL_7E1 0x24 +#define SERIAL_8E1 0x26 +#define SERIAL_5E2 0x28 +#define SERIAL_6E2 0x2A +#define SERIAL_7E2 0x2C +#define SERIAL_8E2 0x2E +#define SERIAL_5O1 0x30 +#define SERIAL_6O1 0x32 +#define SERIAL_7O1 0x34 +#define SERIAL_8O1 0x36 +#define SERIAL_5O2 0x38 +#define SERIAL_6O2 0x3A +#define SERIAL_7O2 0x3C +#define SERIAL_8O2 0x3E + +#if defined(UBRRH) || defined(UBRR0H) + extern HardwareSerial Serial; +#elif defined(USBCON) + #include "USBAPI.h" +// extern HardwareSerial Serial_; +#endif +#if defined(UBRR1H) + extern HardwareSerial Serial1; +#endif +#if defined(UBRR2H) + extern HardwareSerial Serial2; +#endif +#if defined(UBRR3H) + extern HardwareSerial Serial3; +#endif + +extern void serialEventRun(void) __attribute__((weak)); + +#endif diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/IPAddress.cpp b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/IPAddress.cpp new file mode 100644 index 0000000000000000000000000000000000000000..fe3deb77a2e396a4247621adc1202b4ebb97c255 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/IPAddress.cpp @@ -0,0 +1,56 @@ + +#include +#include + +IPAddress::IPAddress() +{ + memset(_address, 0, sizeof(_address)); +} + +IPAddress::IPAddress(uint8_t first_octet, uint8_t second_octet, uint8_t third_octet, uint8_t fourth_octet) +{ + _address[0] = first_octet; + _address[1] = second_octet; + _address[2] = third_octet; + _address[3] = fourth_octet; +} + +IPAddress::IPAddress(uint32_t address) +{ + memcpy(_address, &address, sizeof(_address)); +} + +IPAddress::IPAddress(const uint8_t *address) +{ + memcpy(_address, address, sizeof(_address)); +} + +IPAddress& IPAddress::operator=(const uint8_t *address) +{ + memcpy(_address, address, sizeof(_address)); + return *this; +} + +IPAddress& IPAddress::operator=(uint32_t address) +{ + memcpy(_address, (const uint8_t *)&address, sizeof(_address)); + return *this; +} + +bool IPAddress::operator==(const uint8_t* addr) +{ + return memcmp(addr, _address, sizeof(_address)) == 0; +} + +size_t IPAddress::printTo(Print& p) const +{ + size_t n = 0; + for (int i =0; i < 3; i++) + { + n += p.print(_address[i], DEC); + n += p.print('.'); + } + n += p.print(_address[3], DEC); + return n; +} + diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/IPAddress.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/IPAddress.h new file mode 100644 index 0000000000000000000000000000000000000000..2585aec0e48b0f81d8b829b968bd4c3bbbe520b8 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/IPAddress.h @@ -0,0 +1,76 @@ +/* + * + * MIT License: + * Copyright (c) 2011 Adrian McEwen + * 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. + * + * adrianm@mcqn.com 1/1/2011 + */ + +#ifndef IPAddress_h +#define IPAddress_h + +#include + +// A class to make it easier to handle and pass around IP addresses + +class IPAddress : public Printable { +private: + uint8_t _address[4]; // IPv4 address + // Access the raw byte array containing the address. Because this returns a pointer + // to the internal structure rather than a copy of the address this function should only + // be used when you know that the usage of the returned uint8_t* will be transient and not + // stored. + uint8_t* raw_address() { return _address; }; + +public: + // Constructors + IPAddress(); + IPAddress(uint8_t first_octet, uint8_t second_octet, uint8_t third_octet, uint8_t fourth_octet); + IPAddress(uint32_t address); + IPAddress(const uint8_t *address); + + // Overloaded cast operator to allow IPAddress objects to be used where a pointer + // to a four-byte uint8_t array is expected + operator uint32_t() { return *((uint32_t*)_address); }; + bool operator==(const IPAddress& addr) { return (*((uint32_t*)_address)) == (*((uint32_t*)addr._address)); }; + bool operator==(const uint8_t* addr); + + // Overloaded index operator to allow getting and setting individual octets of the address + uint8_t operator[](int index) const { return _address[index]; }; + uint8_t& operator[](int index) { return _address[index]; }; + + // Overloaded copy operators to allow initialisation of IPAddress objects from other types + IPAddress& operator=(const uint8_t *address); + IPAddress& operator=(uint32_t address); + + virtual size_t printTo(Print& p) const; + + friend class EthernetClass; + friend class UDP; + friend class Client; + friend class Server; + friend class DhcpClass; + friend class DNSClient; +}; + +const IPAddress INADDR_NONE(0,0,0,0); + + +#endif diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Platform.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Platform.h new file mode 100644 index 0000000000000000000000000000000000000000..8b8f742771a43300a7f51adfeaa90168ac9ed773 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Platform.h @@ -0,0 +1,23 @@ + +#ifndef __PLATFORM_H__ +#define __PLATFORM_H__ + +#include +#include +#include +#include +#include + +typedef unsigned char u8; +typedef unsigned short u16; +typedef unsigned long u32; + +#include "Arduino.h" + +#if defined(USBCON) + #include "USBDesc.h" + #include "USBCore.h" + #include "USBAPI.h" +#endif /* if defined(USBCON) */ + +#endif diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Print.cpp b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Print.cpp new file mode 100644 index 0000000000000000000000000000000000000000..53961ec478cefc240c8d3994dcbdbfd15b867aa6 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Print.cpp @@ -0,0 +1,268 @@ +/* + Print.cpp - Base class that provides print() and println() + Copyright (c) 2008 David A. Mellis. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + Modified 23 November 2006 by David A. Mellis + */ + +#include +#include +#include +#include +#include "Arduino.h" + +#include "Print.h" + +// Public Methods ////////////////////////////////////////////////////////////// + +/* default implementation: may be overridden */ +size_t Print::write(const uint8_t *buffer, size_t size) +{ + size_t n = 0; + while (size--) { + n += write(*buffer++); + } + return n; +} + +size_t Print::print(const __FlashStringHelper *ifsh) +{ + const char PROGMEM *p = (const char PROGMEM *)ifsh; + size_t n = 0; + while (1) { + unsigned char c = pgm_read_byte(p++); + if (c == 0) break; + n += write(c); + } + return n; +} + +size_t Print::print(const String &s) +{ + size_t n = 0; + for (uint16_t i = 0; i < s.length(); i++) { + n += write(s[i]); + } + return n; +} + +size_t Print::print(const char str[]) +{ + return write(str); +} + +size_t Print::print(char c) +{ + return write(c); +} + +size_t Print::print(unsigned char b, int base) +{ + return print((unsigned long) b, base); +} + +size_t Print::print(int n, int base) +{ + return print((long) n, base); +} + +size_t Print::print(unsigned int n, int base) +{ + return print((unsigned long) n, base); +} + +size_t Print::print(long n, int base) +{ + if (base == 0) { + return write(n); + } else if (base == 10) { + if (n < 0) { + int t = print('-'); + n = -n; + return printNumber(n, 10) + t; + } + return printNumber(n, 10); + } else { + return printNumber(n, base); + } +} + +size_t Print::print(unsigned long n, int base) +{ + if (base == 0) return write(n); + else return printNumber(n, base); +} + +size_t Print::print(double n, int digits) +{ + return printFloat(n, digits); +} + +size_t Print::println(const __FlashStringHelper *ifsh) +{ + size_t n = print(ifsh); + n += println(); + return n; +} + +size_t Print::print(const Printable& x) +{ + return x.printTo(*this); +} + +size_t Print::println(void) +{ + size_t n = print('\r'); + n += print('\n'); + return n; +} + +size_t Print::println(const String &s) +{ + size_t n = print(s); + n += println(); + return n; +} + +size_t Print::println(const char c[]) +{ + size_t n = print(c); + n += println(); + return n; +} + +size_t Print::println(char c) +{ + size_t n = print(c); + n += println(); + return n; +} + +size_t Print::println(unsigned char b, int base) +{ + size_t n = print(b, base); + n += println(); + return n; +} + +size_t Print::println(int num, int base) +{ + size_t n = print(num, base); + n += println(); + return n; +} + +size_t Print::println(unsigned int num, int base) +{ + size_t n = print(num, base); + n += println(); + return n; +} + +size_t Print::println(long num, int base) +{ + size_t n = print(num, base); + n += println(); + return n; +} + +size_t Print::println(unsigned long num, int base) +{ + size_t n = print(num, base); + n += println(); + return n; +} + +size_t Print::println(double num, int digits) +{ + size_t n = print(num, digits); + n += println(); + return n; +} + +size_t Print::println(const Printable& x) +{ + size_t n = print(x); + n += println(); + return n; +} + +// Private Methods ///////////////////////////////////////////////////////////// + +size_t Print::printNumber(unsigned long n, uint8_t base) { + char buf[8 * sizeof(long) + 1]; // Assumes 8-bit chars plus zero byte. + char *str = &buf[sizeof(buf) - 1]; + + *str = '\0'; + + // prevent crash if called with base == 1 + if (base < 2) base = 10; + + do { + unsigned long m = n; + n /= base; + char c = m - base * n; + *--str = c < 10 ? c + '0' : c + 'A' - 10; + } while(n); + + return write(str); +} + +size_t Print::printFloat(double number, uint8_t digits) +{ + size_t n = 0; + + if (isnan(number)) return print("nan"); + if (isinf(number)) return print("inf"); + if (number > 4294967040.0) return print ("ovf"); // constant determined empirically + if (number <-4294967040.0) return print ("ovf"); // constant determined empirically + + // Handle negative numbers + if (number < 0.0) + { + n += print('-'); + number = -number; + } + + // Round correctly so that print(1.999, 2) prints as "2.00" + double rounding = 0.5; + for (uint8_t i=0; i 0) { + n += print("."); + } + + // Extract digits from the remainder one at a time + while (digits-- > 0) + { + remainder *= 10.0; + int toPrint = int(remainder); + n += print(toPrint); + remainder -= toPrint; + } + + return n; +} diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Print.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Print.h new file mode 100644 index 0000000000000000000000000000000000000000..dc76150871d8713e19b83f0ea9a85c81c6276406 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Print.h @@ -0,0 +1,81 @@ +/* + Print.h - Base class that provides print() and println() + Copyright (c) 2008 David A. Mellis. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef Print_h +#define Print_h + +#include +#include // for size_t + +#include "WString.h" +#include "Printable.h" + +#define DEC 10 +#define HEX 16 +#define OCT 8 +#define BIN 2 + +class Print +{ + private: + int write_error; + size_t printNumber(unsigned long, uint8_t); + size_t printFloat(double, uint8_t); + protected: + void setWriteError(int err = 1) { write_error = err; } + public: + Print() : write_error(0) {} + + int getWriteError() { return write_error; } + void clearWriteError() { setWriteError(0); } + + virtual size_t write(uint8_t) = 0; + size_t write(const char *str) { + if (str == NULL) return 0; + return write((const uint8_t *)str, strlen(str)); + } + virtual size_t write(const uint8_t *buffer, size_t size); + + size_t print(const __FlashStringHelper *); + size_t print(const String &); + size_t print(const char[]); + size_t print(char); + size_t print(unsigned char, int = DEC); + size_t print(int, int = DEC); + size_t print(unsigned int, int = DEC); + size_t print(long, int = DEC); + size_t print(unsigned long, int = DEC); + size_t print(double, int = 2); + size_t print(const Printable&); + + size_t println(const __FlashStringHelper *); + size_t println(const String &s); + size_t println(const char[]); + size_t println(char); + size_t println(unsigned char, int = DEC); + size_t println(int, int = DEC); + size_t println(unsigned int, int = DEC); + size_t println(long, int = DEC); + size_t println(unsigned long, int = DEC); + size_t println(double, int = 2); + size_t println(const Printable&); + size_t println(void); +}; + +#endif diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Printable.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Printable.h new file mode 100644 index 0000000000000000000000000000000000000000..d03c9af62c47cbc62d11b5751e674f4bd995b7cb --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Printable.h @@ -0,0 +1,40 @@ +/* + Printable.h - Interface class that allows printing of complex types + Copyright (c) 2011 Adrian McEwen. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef Printable_h +#define Printable_h + +#include + +class Print; + +/** The Printable class provides a way for new classes to allow themselves to be printed. + By deriving from Printable and implementing the printTo method, it will then be possible + for users to print out instances of this class by passing them into the usual + Print::print and Print::println methods. +*/ + +class Printable +{ + public: + virtual size_t printTo(Print& p) const = 0; +}; + +#endif + diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Server.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Server.h new file mode 100644 index 0000000000000000000000000000000000000000..9674c7626961e5cd6d3528b17ab3d2f25a6a81ce --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Server.h @@ -0,0 +1,9 @@ +#ifndef server_h +#define server_h + +class Server : public Print { +public: + virtual void begin() =0; +}; + +#endif diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Stream.cpp b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Stream.cpp new file mode 100644 index 0000000000000000000000000000000000000000..aafb7fcf97d82f32ffb61323c68e11fbe152ff14 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Stream.cpp @@ -0,0 +1,270 @@ +/* + Stream.cpp - adds parsing methods to Stream class + Copyright (c) 2008 David A. Mellis. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + Created July 2011 + parsing functions based on TextFinder library by Michael Margolis + */ + +#include "Arduino.h" +#include "Stream.h" + +#define PARSE_TIMEOUT 1000 // default number of milli-seconds to wait +#define NO_SKIP_CHAR 1 // a magic char not found in a valid ASCII numeric field + +// private method to read stream with timeout +int Stream::timedRead() +{ + int c; + _startMillis = millis(); + do { + c = read(); + if (c >= 0) return c; + } while(millis() - _startMillis < _timeout); + return -1; // -1 indicates timeout +} + +// private method to peek stream with timeout +int Stream::timedPeek() +{ + int c; + _startMillis = millis(); + do { + c = peek(); + if (c >= 0) return c; + } while(millis() - _startMillis < _timeout); + return -1; // -1 indicates timeout +} + +// returns peek of the next digit in the stream or -1 if timeout +// discards non-numeric characters +int Stream::peekNextDigit() +{ + int c; + while (1) { + c = timedPeek(); + if (c < 0) return c; // timeout + if (c == '-') return c; + if (c >= '0' && c <= '9') return c; + read(); // discard non-numeric + } +} + +// Public Methods +////////////////////////////////////////////////////////////// + +void Stream::setTimeout(unsigned long timeout) // sets the maximum number of milliseconds to wait +{ + _timeout = timeout; +} + + // find returns true if the target string is found +bool Stream::find(char *target) +{ + return findUntil(target, NULL); +} + +// reads data from the stream until the target string of given length is found +// returns true if target string is found, false if timed out +bool Stream::find(char *target, size_t length) +{ + return findUntil(target, length, NULL, 0); +} + +// as find but search ends if the terminator string is found +bool Stream::findUntil(char *target, char *terminator) +{ + return findUntil(target, strlen(target), terminator, strlen(terminator)); +} + +// reads data from the stream until the target string of the given length is found +// search terminated if the terminator string is found +// returns true if target string is found, false if terminated or timed out +bool Stream::findUntil(char *target, size_t targetLen, char *terminator, size_t termLen) +{ + size_t index = 0; // maximum target string length is 64k bytes! + size_t termIndex = 0; + int c; + + if( *target == 0) + return true; // return true if target is a null string + while( (c = timedRead()) > 0){ + + if(c != target[index]) + index = 0; // reset index if any char does not match + + if( c == target[index]){ + //////Serial.print("found "); Serial.write(c); Serial.print("index now"); Serial.println(index+1); + if(++index >= targetLen){ // return true if all chars in the target match + return true; + } + } + + if(termLen > 0 && c == terminator[termIndex]){ + if(++termIndex >= termLen) + return false; // return false if terminate string found before target string + } + else + termIndex = 0; + } + return false; +} + + +// returns the first valid (long) integer value from the current position. +// initial characters that are not digits (or the minus sign) are skipped +// function is terminated by the first character that is not a digit. +long Stream::parseInt() +{ + return parseInt(NO_SKIP_CHAR); // terminate on first non-digit character (or timeout) +} + +// as above but a given skipChar is ignored +// this allows format characters (typically commas) in values to be ignored +long Stream::parseInt(char skipChar) +{ + boolean isNegative = false; + long value = 0; + int c; + + c = peekNextDigit(); + // ignore non numeric leading characters + if(c < 0) + return 0; // zero returned if timeout + + do{ + if(c == skipChar) + ; // ignore this charactor + else if(c == '-') + isNegative = true; + else if(c >= '0' && c <= '9') // is c a digit? + value = value * 10 + c - '0'; + read(); // consume the character we got with peek + c = timedPeek(); + } + while( (c >= '0' && c <= '9') || c == skipChar ); + + if(isNegative) + value = -value; + return value; +} + + +// as parseInt but returns a floating point value +float Stream::parseFloat() +{ + return parseFloat(NO_SKIP_CHAR); +} + +// as above but the given skipChar is ignored +// this allows format characters (typically commas) in values to be ignored +float Stream::parseFloat(char skipChar){ + boolean isNegative = false; + boolean isFraction = false; + long value = 0; + char c; + float fraction = 1.0; + + c = peekNextDigit(); + // ignore non numeric leading characters + if(c < 0) + return 0; // zero returned if timeout + + do{ + if(c == skipChar) + ; // ignore + else if(c == '-') + isNegative = true; + else if (c == '.') + isFraction = true; + else if(c >= '0' && c <= '9') { // is c a digit? + value = value * 10 + c - '0'; + if(isFraction) + fraction *= 0.1; + } + read(); // consume the character we got with peek + c = timedPeek(); + } + while( (c >= '0' && c <= '9') || c == '.' || c == skipChar ); + + if(isNegative) + value = -value; + if(isFraction) + return value * fraction; + else + return value; +} + +// read characters from stream into buffer +// terminates if length characters have been read, or timeout (see setTimeout) +// returns the number of characters placed in the buffer +// the buffer is NOT null terminated. +// +size_t Stream::readBytes(char *buffer, size_t length) +{ + size_t count = 0; + while (count < length) { + int c = timedRead(); + if (c < 0) break; + *buffer++ = (char)c; + count++; + } + return count; +} + + +// as readBytes with terminator character +// terminates if length characters have been read, timeout, or if the terminator character detected +// returns the number of characters placed in the buffer (0 means no valid data found) + +size_t Stream::readBytesUntil(char terminator, char *buffer, size_t length) +{ + if (length < 1) return 0; + size_t index = 0; + while (index < length) { + int c = timedRead(); + if (c < 0 || c == terminator) break; + *buffer++ = (char)c; + index++; + } + return index; // return number of characters, not including null terminator +} + +String Stream::readString() +{ + String ret; + int c = timedRead(); + while (c >= 0) + { + ret += (char)c; + c = timedRead(); + } + return ret; +} + +String Stream::readStringUntil(char terminator) +{ + String ret; + int c = timedRead(); + while (c >= 0 && c != terminator) + { + ret += (char)c; + c = timedRead(); + } + return ret; +} + diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Stream.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Stream.h new file mode 100644 index 0000000000000000000000000000000000000000..58bbf752f33c09cc486559c1c1143ae29a3da946 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Stream.h @@ -0,0 +1,96 @@ +/* + Stream.h - base class for character-based streams. + Copyright (c) 2010 David A. Mellis. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + parsing functions based on TextFinder library by Michael Margolis +*/ + +#ifndef Stream_h +#define Stream_h + +#include +#include "Print.h" + +// compatability macros for testing +/* +#define getInt() parseInt() +#define getInt(skipChar) parseInt(skipchar) +#define getFloat() parseFloat() +#define getFloat(skipChar) parseFloat(skipChar) +#define getString( pre_string, post_string, buffer, length) +readBytesBetween( pre_string, terminator, buffer, length) +*/ + +class Stream : public Print +{ + private: + unsigned long _timeout; // number of milliseconds to wait for the next char before aborting timed read + unsigned long _startMillis; // used for timeout measurement + int timedRead(); // private method to read stream with timeout + int timedPeek(); // private method to peek stream with timeout + int peekNextDigit(); // returns the next numeric digit in the stream or -1 if timeout + + public: + virtual int available() = 0; + virtual int read() = 0; + virtual int peek() = 0; + virtual void flush() = 0; + + Stream() {_timeout=1000;} + +// parsing methods + + void setTimeout(unsigned long timeout); // sets maximum milliseconds to wait for stream data, default is 1 second + + bool find(char *target); // reads data from the stream until the target string is found + // returns true if target string is found, false if timed out (see setTimeout) + + bool find(char *target, size_t length); // reads data from the stream until the target string of given length is found + // returns true if target string is found, false if timed out + + bool findUntil(char *target, char *terminator); // as find but search ends if the terminator string is found + + bool findUntil(char *target, size_t targetLen, char *terminate, size_t termLen); // as above but search ends if the terminate string is found + + + long parseInt(); // returns the first valid (long) integer value from the current position. + // initial characters that are not digits (or the minus sign) are skipped + // integer is terminated by the first character that is not a digit. + + float parseFloat(); // float version of parseInt + + size_t readBytes( char *buffer, size_t length); // read chars from stream into buffer + // terminates if length characters have been read or timeout (see setTimeout) + // returns the number of characters placed in the buffer (0 means no valid data found) + + size_t readBytesUntil( char terminator, char *buffer, size_t length); // as readBytes with terminator character + // terminates if length characters have been read, timeout, or if the terminator character detected + // returns the number of characters placed in the buffer (0 means no valid data found) + + // Arduino String functions to be added here + String readString(); + String readStringUntil(char terminator); + + protected: + long parseInt(char skipChar); // as above but the given skipChar is ignored + // as above but the given skipChar is ignored + // this allows format characters (typically commas) in values to be ignored + + float parseFloat(char skipChar); // as above but the given skipChar is ignored +}; + +#endif diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Tone.cpp b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Tone.cpp new file mode 100644 index 0000000000000000000000000000000000000000..9bb6fe721c63ac08e10799b83912735e49dbb704 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Tone.cpp @@ -0,0 +1,616 @@ +/* Tone.cpp + + A Tone Generator Library + + Written by Brett Hagman + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +Version Modified By Date Comments +------- ----------- -------- -------- +0001 B Hagman 09/08/02 Initial coding +0002 B Hagman 09/08/18 Multiple pins +0003 B Hagman 09/08/18 Moved initialization from constructor to begin() +0004 B Hagman 09/09/26 Fixed problems with ATmega8 +0005 B Hagman 09/11/23 Scanned prescalars for best fit on 8 bit timers + 09/11/25 Changed pin toggle method to XOR + 09/11/25 Fixed timer0 from being excluded +0006 D Mellis 09/12/29 Replaced objects with functions +0007 M Sproul 10/08/29 Changed #ifdefs from cpu to register +0008 S Kanemoto 12/06/22 Fixed for Leonardo by @maris_HY +*************************************************/ + +#include +#include +#include "Arduino.h" +#include "pins_arduino.h" + +#if defined(__AVR_ATmega8__) || defined(__AVR_ATmega128__) +#define TCCR2A TCCR2 +#define TCCR2B TCCR2 +#define COM2A1 COM21 +#define COM2A0 COM20 +#define OCR2A OCR2 +#define TIMSK2 TIMSK +#define OCIE2A OCIE2 +#define TIMER2_COMPA_vect TIMER2_COMP_vect +#define TIMSK1 TIMSK +#endif + +// timerx_toggle_count: +// > 0 - duration specified +// = 0 - stopped +// < 0 - infinitely (until stop() method called, or new play() called) + +#if !defined(__AVR_ATmega8__) +volatile long timer0_toggle_count; +volatile uint8_t *timer0_pin_port; +volatile uint8_t timer0_pin_mask; +#endif + +volatile long timer1_toggle_count; +volatile uint8_t *timer1_pin_port; +volatile uint8_t timer1_pin_mask; +volatile long timer2_toggle_count; +volatile uint8_t *timer2_pin_port; +volatile uint8_t timer2_pin_mask; + +#if defined(TIMSK3) +volatile long timer3_toggle_count; +volatile uint8_t *timer3_pin_port; +volatile uint8_t timer3_pin_mask; +#endif + +#if defined(TIMSK4) +volatile long timer4_toggle_count; +volatile uint8_t *timer4_pin_port; +volatile uint8_t timer4_pin_mask; +#endif + +#if defined(TIMSK5) +volatile long timer5_toggle_count; +volatile uint8_t *timer5_pin_port; +volatile uint8_t timer5_pin_mask; +#endif + + +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) + +#define AVAILABLE_TONE_PINS 1 +#define USE_TIMER2 + +const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 3, 4, 5, 1, 0 */ }; +static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255, 255, 255, 255, 255 */ }; + +#elif defined(__AVR_ATmega8__) + +#define AVAILABLE_TONE_PINS 1 +#define USE_TIMER2 + +const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 1 */ }; +static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255 */ }; + +#elif defined(__AVR_ATmega32U4__) + +#define AVAILABLE_TONE_PINS 1 +#define USE_TIMER3 + +const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 3 /*, 1 */ }; +static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255 */ }; + +#else + +#define AVAILABLE_TONE_PINS 1 +#define USE_TIMER2 + +// Leave timer 0 to last. +const uint8_t PROGMEM tone_pin_to_timer_PGM[] = { 2 /*, 1, 0 */ }; +static uint8_t tone_pins[AVAILABLE_TONE_PINS] = { 255 /*, 255, 255 */ }; + +#endif + + + +static int8_t toneBegin(uint8_t _pin) +{ + int8_t _timer = -1; + + // if we're already using the pin, the timer should be configured. + for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { + if (tone_pins[i] == _pin) { + return pgm_read_byte(tone_pin_to_timer_PGM + i); + } + } + + // search for an unused timer. + for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { + if (tone_pins[i] == 255) { + tone_pins[i] = _pin; + _timer = pgm_read_byte(tone_pin_to_timer_PGM + i); + break; + } + } + + if (_timer != -1) + { + // Set timer specific stuff + // All timers in CTC mode + // 8 bit timers will require changing prescalar values, + // whereas 16 bit timers are set to either ck/1 or ck/64 prescalar + switch (_timer) + { + #if defined(TCCR0A) && defined(TCCR0B) + case 0: + // 8 bit timer + TCCR0A = 0; + TCCR0B = 0; + bitWrite(TCCR0A, WGM01, 1); + bitWrite(TCCR0B, CS00, 1); + timer0_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer0_pin_mask = digitalPinToBitMask(_pin); + break; + #endif + + #if defined(TCCR1A) && defined(TCCR1B) && defined(WGM12) + case 1: + // 16 bit timer + TCCR1A = 0; + TCCR1B = 0; + bitWrite(TCCR1B, WGM12, 1); + bitWrite(TCCR1B, CS10, 1); + timer1_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer1_pin_mask = digitalPinToBitMask(_pin); + break; + #endif + + #if defined(TCCR2A) && defined(TCCR2B) + case 2: + // 8 bit timer + TCCR2A = 0; + TCCR2B = 0; + bitWrite(TCCR2A, WGM21, 1); + bitWrite(TCCR2B, CS20, 1); + timer2_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer2_pin_mask = digitalPinToBitMask(_pin); + break; + #endif + + #if defined(TCCR3A) && defined(TCCR3B) && defined(TIMSK3) + case 3: + // 16 bit timer + TCCR3A = 0; + TCCR3B = 0; + bitWrite(TCCR3B, WGM32, 1); + bitWrite(TCCR3B, CS30, 1); + timer3_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer3_pin_mask = digitalPinToBitMask(_pin); + break; + #endif + + #if defined(TCCR4A) && defined(TCCR4B) && defined(TIMSK4) + case 4: + // 16 bit timer + TCCR4A = 0; + TCCR4B = 0; + #if defined(WGM42) + bitWrite(TCCR4B, WGM42, 1); + #elif defined(CS43) + #warning this may not be correct + // atmega32u4 + bitWrite(TCCR4B, CS43, 1); + #endif + bitWrite(TCCR4B, CS40, 1); + timer4_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer4_pin_mask = digitalPinToBitMask(_pin); + break; + #endif + + #if defined(TCCR5A) && defined(TCCR5B) && defined(TIMSK5) + case 5: + // 16 bit timer + TCCR5A = 0; + TCCR5B = 0; + bitWrite(TCCR5B, WGM52, 1); + bitWrite(TCCR5B, CS50, 1); + timer5_pin_port = portOutputRegister(digitalPinToPort(_pin)); + timer5_pin_mask = digitalPinToBitMask(_pin); + break; + #endif + } + } + + return _timer; +} + + + +// frequency (in hertz) and duration (in milliseconds). + +void tone(uint8_t _pin, unsigned int frequency, unsigned long duration) +{ + uint8_t prescalarbits = 0b001; + long toggle_count = 0; + uint32_t ocr = 0; + int8_t _timer; + + _timer = toneBegin(_pin); + + if (_timer >= 0) + { + // Set the pinMode as OUTPUT + pinMode(_pin, OUTPUT); + + // if we are using an 8 bit timer, scan through prescalars to find the best fit + if (_timer == 0 || _timer == 2) + { + ocr = F_CPU / frequency / 2 - 1; + prescalarbits = 0b001; // ck/1: same for both timers + if (ocr > 255) + { + ocr = F_CPU / frequency / 2 / 8 - 1; + prescalarbits = 0b010; // ck/8: same for both timers + + if (_timer == 2 && ocr > 255) + { + ocr = F_CPU / frequency / 2 / 32 - 1; + prescalarbits = 0b011; + } + + if (ocr > 255) + { + ocr = F_CPU / frequency / 2 / 64 - 1; + prescalarbits = _timer == 0 ? 0b011 : 0b100; + + if (_timer == 2 && ocr > 255) + { + ocr = F_CPU / frequency / 2 / 128 - 1; + prescalarbits = 0b101; + } + + if (ocr > 255) + { + ocr = F_CPU / frequency / 2 / 256 - 1; + prescalarbits = _timer == 0 ? 0b100 : 0b110; + if (ocr > 255) + { + // can't do any better than /1024 + ocr = F_CPU / frequency / 2 / 1024 - 1; + prescalarbits = _timer == 0 ? 0b101 : 0b111; + } + } + } + } + +#if defined(TCCR0B) + if (_timer == 0) + { + TCCR0B = prescalarbits; + } + else +#endif +#if defined(TCCR2B) + { + TCCR2B = prescalarbits; + } +#else + { + // dummy place holder to make the above ifdefs work + } +#endif + } + else + { + // two choices for the 16 bit timers: ck/1 or ck/64 + ocr = F_CPU / frequency / 2 - 1; + + prescalarbits = 0b001; + if (ocr > 0xffff) + { + ocr = F_CPU / frequency / 2 / 64 - 1; + prescalarbits = 0b011; + } + + if (_timer == 1) + { +#if defined(TCCR1B) + TCCR1B = (TCCR1B & 0b11111000) | prescalarbits; +#endif + } +#if defined(TCCR3B) + else if (_timer == 3) + TCCR3B = (TCCR3B & 0b11111000) | prescalarbits; +#endif +#if defined(TCCR4B) + else if (_timer == 4) + TCCR4B = (TCCR4B & 0b11111000) | prescalarbits; +#endif +#if defined(TCCR5B) + else if (_timer == 5) + TCCR5B = (TCCR5B & 0b11111000) | prescalarbits; +#endif + + } + + + // Calculate the toggle count + if (duration > 0) + { + toggle_count = 2 * frequency * duration / 1000; + } + else + { + toggle_count = -1; + } + + // Set the OCR for the given timer, + // set the toggle count, + // then turn on the interrupts + switch (_timer) + { + +#if defined(OCR0A) && defined(TIMSK0) && defined(OCIE0A) + case 0: + OCR0A = ocr; + timer0_toggle_count = toggle_count; + bitWrite(TIMSK0, OCIE0A, 1); + break; +#endif + + case 1: +#if defined(OCR1A) && defined(TIMSK1) && defined(OCIE1A) + OCR1A = ocr; + timer1_toggle_count = toggle_count; + bitWrite(TIMSK1, OCIE1A, 1); +#elif defined(OCR1A) && defined(TIMSK) && defined(OCIE1A) + // this combination is for at least the ATmega32 + OCR1A = ocr; + timer1_toggle_count = toggle_count; + bitWrite(TIMSK, OCIE1A, 1); +#endif + break; + +#if defined(OCR2A) && defined(TIMSK2) && defined(OCIE2A) + case 2: + OCR2A = ocr; + timer2_toggle_count = toggle_count; + bitWrite(TIMSK2, OCIE2A, 1); + break; +#endif + +#if defined(TIMSK3) + case 3: + OCR3A = ocr; + timer3_toggle_count = toggle_count; + bitWrite(TIMSK3, OCIE3A, 1); + break; +#endif + +#if defined(TIMSK4) + case 4: + OCR4A = ocr; + timer4_toggle_count = toggle_count; + bitWrite(TIMSK4, OCIE4A, 1); + break; +#endif + +#if defined(OCR5A) && defined(TIMSK5) && defined(OCIE5A) + case 5: + OCR5A = ocr; + timer5_toggle_count = toggle_count; + bitWrite(TIMSK5, OCIE5A, 1); + break; +#endif + + } + } +} + + +// XXX: this function only works properly for timer 2 (the only one we use +// currently). for the others, it should end the tone, but won't restore +// proper PWM functionality for the timer. +void disableTimer(uint8_t _timer) +{ + switch (_timer) + { + case 0: + #if defined(TIMSK0) + TIMSK0 = 0; + #elif defined(TIMSK) + TIMSK = 0; // atmega32 + #endif + break; + +#if defined(TIMSK1) && defined(OCIE1A) + case 1: + bitWrite(TIMSK1, OCIE1A, 0); + break; +#endif + + case 2: + #if defined(TIMSK2) && defined(OCIE2A) + bitWrite(TIMSK2, OCIE2A, 0); // disable interrupt + #endif + #if defined(TCCR2A) && defined(WGM20) + TCCR2A = (1 << WGM20); + #endif + #if defined(TCCR2B) && defined(CS22) + TCCR2B = (TCCR2B & 0b11111000) | (1 << CS22); + #endif + #if defined(OCR2A) + OCR2A = 0; + #endif + break; + +#if defined(TIMSK3) + case 3: + TIMSK3 = 0; + break; +#endif + +#if defined(TIMSK4) + case 4: + TIMSK4 = 0; + break; +#endif + +#if defined(TIMSK5) + case 5: + TIMSK5 = 0; + break; +#endif + } +} + + +void noTone(uint8_t _pin) +{ + int8_t _timer = -1; + + for (int i = 0; i < AVAILABLE_TONE_PINS; i++) { + if (tone_pins[i] == _pin) { + _timer = pgm_read_byte(tone_pin_to_timer_PGM + i); + tone_pins[i] = 255; + } + } + + disableTimer(_timer); + + digitalWrite(_pin, 0); +} + +#ifdef USE_TIMER0 +ISR(TIMER0_COMPA_vect) +{ + if (timer0_toggle_count != 0) + { + // toggle the pin + *timer0_pin_port ^= timer0_pin_mask; + + if (timer0_toggle_count > 0) + timer0_toggle_count--; + } + else + { + disableTimer(0); + *timer0_pin_port &= ~(timer0_pin_mask); // keep pin low after stop + } +} +#endif + + +#ifdef USE_TIMER1 +ISR(TIMER1_COMPA_vect) +{ + if (timer1_toggle_count != 0) + { + // toggle the pin + *timer1_pin_port ^= timer1_pin_mask; + + if (timer1_toggle_count > 0) + timer1_toggle_count--; + } + else + { + disableTimer(1); + *timer1_pin_port &= ~(timer1_pin_mask); // keep pin low after stop + } +} +#endif + + +#ifdef USE_TIMER2 +ISR(TIMER2_COMPA_vect) +{ + + if (timer2_toggle_count != 0) + { + // toggle the pin + *timer2_pin_port ^= timer2_pin_mask; + + if (timer2_toggle_count > 0) + timer2_toggle_count--; + } + else + { + // need to call noTone() so that the tone_pins[] entry is reset, so the + // timer gets initialized next time we call tone(). + // XXX: this assumes timer 2 is always the first one used. + noTone(tone_pins[0]); +// disableTimer(2); +// *timer2_pin_port &= ~(timer2_pin_mask); // keep pin low after stop + } +} +#endif + + +#ifdef USE_TIMER3 +ISR(TIMER3_COMPA_vect) +{ + if (timer3_toggle_count != 0) + { + // toggle the pin + *timer3_pin_port ^= timer3_pin_mask; + + if (timer3_toggle_count > 0) + timer3_toggle_count--; + } + else + { + disableTimer(3); + *timer3_pin_port &= ~(timer3_pin_mask); // keep pin low after stop + } +} +#endif + + +#ifdef USE_TIMER4 +ISR(TIMER4_COMPA_vect) +{ + if (timer4_toggle_count != 0) + { + // toggle the pin + *timer4_pin_port ^= timer4_pin_mask; + + if (timer4_toggle_count > 0) + timer4_toggle_count--; + } + else + { + disableTimer(4); + *timer4_pin_port &= ~(timer4_pin_mask); // keep pin low after stop + } +} +#endif + + +#ifdef USE_TIMER5 +ISR(TIMER5_COMPA_vect) +{ + if (timer5_toggle_count != 0) + { + // toggle the pin + *timer5_pin_port ^= timer5_pin_mask; + + if (timer5_toggle_count > 0) + timer5_toggle_count--; + } + else + { + disableTimer(5); + *timer5_pin_port &= ~(timer5_pin_mask); // keep pin low after stop + } +} +#endif diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/USBAPI.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/USBAPI.h new file mode 100644 index 0000000000000000000000000000000000000000..eb2e5937db01750b4edb706d755e443e2402e448 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/USBAPI.h @@ -0,0 +1,196 @@ + + +#ifndef __USBAPI__ +#define __USBAPI__ + +#if defined(USBCON) + +//================================================================================ +//================================================================================ +// USB + +class USBDevice_ +{ +public: + USBDevice_(); + bool configured(); + + void attach(); + void detach(); // Serial port goes down too... + void poll(); +}; +extern USBDevice_ USBDevice; + +//================================================================================ +//================================================================================ +// Serial over CDC (Serial1 is the physical port) + +class Serial_ : public Stream +{ +private: + ring_buffer *_cdc_rx_buffer; +public: + void begin(uint16_t baud_count); + void end(void); + + virtual int available(void); + virtual void accept(void); + virtual int peek(void); + virtual int read(void); + virtual void flush(void); + virtual size_t write(uint8_t); + using Print::write; // pull in write(str) and write(buf, size) from Print + operator bool(); +}; +extern Serial_ Serial; + +//================================================================================ +//================================================================================ +// Mouse + +#define MOUSE_LEFT 1 +#define MOUSE_RIGHT 2 +#define MOUSE_MIDDLE 4 +#define MOUSE_ALL (MOUSE_LEFT | MOUSE_RIGHT | MOUSE_MIDDLE) + +class Mouse_ +{ +private: + uint8_t _buttons; + void buttons(uint8_t b); +public: + Mouse_(void); + void begin(void); + void end(void); + void click(uint8_t b = MOUSE_LEFT); + void move(signed char x, signed char y, signed char wheel = 0); + void press(uint8_t b = MOUSE_LEFT); // press LEFT by default + void release(uint8_t b = MOUSE_LEFT); // release LEFT by default + bool isPressed(uint8_t b = MOUSE_LEFT); // check LEFT by default +}; +extern Mouse_ Mouse; + +//================================================================================ +//================================================================================ +// Keyboard + +#define KEY_LEFT_CTRL 0x80 +#define KEY_LEFT_SHIFT 0x81 +#define KEY_LEFT_ALT 0x82 +#define KEY_LEFT_GUI 0x83 +#define KEY_RIGHT_CTRL 0x84 +#define KEY_RIGHT_SHIFT 0x85 +#define KEY_RIGHT_ALT 0x86 +#define KEY_RIGHT_GUI 0x87 + +#define KEY_UP_ARROW 0xDA +#define KEY_DOWN_ARROW 0xD9 +#define KEY_LEFT_ARROW 0xD8 +#define KEY_RIGHT_ARROW 0xD7 +#define KEY_BACKSPACE 0xB2 +#define KEY_TAB 0xB3 +#define KEY_RETURN 0xB0 +#define KEY_ESC 0xB1 +#define KEY_INSERT 0xD1 +#define KEY_DELETE 0xD4 +#define KEY_PAGE_UP 0xD3 +#define KEY_PAGE_DOWN 0xD6 +#define KEY_HOME 0xD2 +#define KEY_END 0xD5 +#define KEY_CAPS_LOCK 0xC1 +#define KEY_F1 0xC2 +#define KEY_F2 0xC3 +#define KEY_F3 0xC4 +#define KEY_F4 0xC5 +#define KEY_F5 0xC6 +#define KEY_F6 0xC7 +#define KEY_F7 0xC8 +#define KEY_F8 0xC9 +#define KEY_F9 0xCA +#define KEY_F10 0xCB +#define KEY_F11 0xCC +#define KEY_F12 0xCD + +// Low level key report: up to 6 keys and shift, ctrl etc at once +typedef struct +{ + uint8_t modifiers; + uint8_t reserved; + uint8_t keys[6]; +} KeyReport; + +class Keyboard_ : public Print +{ +private: + KeyReport _keyReport; + void sendReport(KeyReport* keys); +public: + Keyboard_(void); + void begin(void); + void end(void); + virtual size_t write(uint8_t k); + virtual size_t press(uint8_t k); + virtual size_t release(uint8_t k); + virtual void releaseAll(void); +}; +extern Keyboard_ Keyboard; + +//================================================================================ +//================================================================================ +// Low level API + +typedef struct +{ + uint8_t bmRequestType; + uint8_t bRequest; + uint8_t wValueL; + uint8_t wValueH; + uint16_t wIndex; + uint16_t wLength; +} Setup; + +//================================================================================ +//================================================================================ +// HID 'Driver' + +int HID_GetInterface(uint8_t* interfaceNum); +int HID_GetDescriptor(int i); +bool HID_Setup(Setup& setup); +void HID_SendReport(uint8_t id, const void* data, int len); + +//================================================================================ +//================================================================================ +// MSC 'Driver' + +int MSC_GetInterface(uint8_t* interfaceNum); +int MSC_GetDescriptor(int i); +bool MSC_Setup(Setup& setup); +bool MSC_Data(uint8_t rx,uint8_t tx); + +//================================================================================ +//================================================================================ +// CSC 'Driver' + +int CDC_GetInterface(uint8_t* interfaceNum); +int CDC_GetDescriptor(int i); +bool CDC_Setup(Setup& setup); + +//================================================================================ +//================================================================================ + +#define TRANSFER_PGM 0x80 +#define TRANSFER_RELEASE 0x40 +#define TRANSFER_ZERO 0x20 + +int USB_SendControl(uint8_t flags, const void* d, int len); +int USB_RecvControl(void* d, int len); + +uint8_t USB_Available(uint8_t ep); +int USB_Send(uint8_t ep, const void* data, int len); // blocking +int USB_Recv(uint8_t ep, void* data, int len); // non-blocking +int USB_Recv(uint8_t ep); // non-blocking +void USB_Flush(uint8_t ep); + +#endif + +#endif /* if defined(USBCON) */ \ No newline at end of file diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/USBCore.cpp b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/USBCore.cpp new file mode 100644 index 0000000000000000000000000000000000000000..d3e0170656762eda3b495ecb6c7131ea3d523ad7 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/USBCore.cpp @@ -0,0 +1,684 @@ + + +/* Copyright (c) 2010, Peter Barrett +** +** Permission to use, copy, modify, and/or distribute this software for +** any purpose with or without fee is hereby granted, provided that the +** above copyright notice and this permission notice appear in all copies. +** +** THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL +** WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED +** WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR +** BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES +** OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +** WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +** ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +** SOFTWARE. +*/ + +#include "Platform.h" +#include "USBAPI.h" +#include "USBDesc.h" + +#if defined(USBCON) + +#define EP_TYPE_CONTROL 0x00 +#define EP_TYPE_BULK_IN 0x81 +#define EP_TYPE_BULK_OUT 0x80 +#define EP_TYPE_INTERRUPT_IN 0xC1 +#define EP_TYPE_INTERRUPT_OUT 0xC0 +#define EP_TYPE_ISOCHRONOUS_IN 0x41 +#define EP_TYPE_ISOCHRONOUS_OUT 0x40 + +/** Pulse generation counters to keep track of the number of milliseconds remaining for each pulse type */ +#define TX_RX_LED_PULSE_MS 100 +volatile u8 TxLEDPulse; /**< Milliseconds remaining for data Tx LED pulse */ +volatile u8 RxLEDPulse; /**< Milliseconds remaining for data Rx LED pulse */ + +//================================================================== +//================================================================== + +extern const u16 STRING_LANGUAGE[] PROGMEM; +extern const u16 STRING_IPRODUCT[] PROGMEM; +extern const u16 STRING_IMANUFACTURER[] PROGMEM; +extern const DeviceDescriptor USB_DeviceDescriptor PROGMEM; +extern const DeviceDescriptor USB_DeviceDescriptorA PROGMEM; + +const u16 STRING_LANGUAGE[2] = { + (3<<8) | (2+2), + 0x0409 // English +}; + +const u16 STRING_IPRODUCT[17] = { + (3<<8) | (2+2*16), +#if USB_PID == 0x8036 + 'A','r','d','u','i','n','o',' ','L','e','o','n','a','r','d','o' +#elif USB_PID == 0x8037 + 'A','r','d','u','i','n','o',' ','M','i','c','r','o',' ',' ',' ' +#elif USB_PID == 0x803C + 'A','r','d','u','i','n','o',' ','E','s','p','l','o','r','a',' ' +#elif USB_PID == 0x9208 + 'L','i','l','y','P','a','d','U','S','B',' ',' ',' ',' ',' ',' ' +#else + 'U','S','B',' ','I','O',' ','B','o','a','r','d',' ',' ',' ',' ' +#endif +}; + +const u16 STRING_IMANUFACTURER[12] = { + (3<<8) | (2+2*11), +#if USB_VID == 0x2341 + 'A','r','d','u','i','n','o',' ','L','L','C' +#elif USB_VID == 0x1b4f + 'S','p','a','r','k','F','u','n',' ',' ',' ' +#else + 'U','n','k','n','o','w','n',' ',' ',' ',' ' +#endif +}; + +#ifdef CDC_ENABLED +#define DEVICE_CLASS 0x02 +#else +#define DEVICE_CLASS 0x00 +#endif + +// DEVICE DESCRIPTOR +const DeviceDescriptor USB_DeviceDescriptor = + D_DEVICE(0x00,0x00,0x00,64,USB_VID,USB_PID,0x100,IMANUFACTURER,IPRODUCT,0,1); + +const DeviceDescriptor USB_DeviceDescriptorA = + D_DEVICE(DEVICE_CLASS,0x00,0x00,64,USB_VID,USB_PID,0x100,IMANUFACTURER,IPRODUCT,0,1); + +//================================================================== +//================================================================== + +volatile u8 _usbConfiguration = 0; + +static inline void WaitIN(void) +{ + while (!(UEINTX & (1< len) + n = len; + len -= n; + { + LockEP lock(ep); + if (ep & TRANSFER_ZERO) + { + while (n--) + Send8(0); + } + else if (ep & TRANSFER_PGM) + { + while (n--) + Send8(pgm_read_byte(data++)); + } + else + { + while (n--) + Send8(*data++); + } + if (!ReadWriteAllowed() || ((len == 0) && (ep & TRANSFER_RELEASE))) // Release full buffer + ReleaseTX(); + } + } + TXLED1; // light the TX LED + TxLEDPulse = TX_RX_LED_PULSE_MS; + return r; +} + +extern const u8 _initEndpoints[] PROGMEM; +const u8 _initEndpoints[] = +{ + 0, + +#ifdef CDC_ENABLED + EP_TYPE_INTERRUPT_IN, // CDC_ENDPOINT_ACM + EP_TYPE_BULK_OUT, // CDC_ENDPOINT_OUT + EP_TYPE_BULK_IN, // CDC_ENDPOINT_IN +#endif + +#ifdef HID_ENABLED + EP_TYPE_INTERRUPT_IN // HID_ENDPOINT_INT +#endif +}; + +#define EP_SINGLE_64 0x32 // EP0 +#define EP_DOUBLE_64 0x36 // Other endpoints + +static +void InitEP(u8 index, u8 type, u8 size) +{ + UENUM = index; + UECONX = 1; + UECFG0X = type; + UECFG1X = size; +} + +static +void InitEndpoints() +{ + for (u8 i = 1; i < sizeof(_initEndpoints); i++) + { + UENUM = i; + UECONX = 1; + UECFG0X = pgm_read_byte(_initEndpoints+i); + UECFG1X = EP_DOUBLE_64; + } + UERST = 0x7E; // And reset them + UERST = 0; +} + +// Handle CLASS_INTERFACE requests +static +bool ClassInterfaceRequest(Setup& setup) +{ + u8 i = setup.wIndex; + +#ifdef CDC_ENABLED + if (CDC_ACM_INTERFACE == i) + return CDC_Setup(setup); +#endif + +#ifdef HID_ENABLED + if (HID_INTERFACE == i) + return HID_Setup(setup); +#endif + return false; +} + +int _cmark; +int _cend; +void InitControl(int end) +{ + SetEP(0); + _cmark = 0; + _cend = end; +} + +static +bool SendControl(u8 d) +{ + if (_cmark < _cend) + { + if (!WaitForINOrOUT()) + return false; + Send8(d); + if (!((_cmark + 1) & 0x3F)) + ClearIN(); // Fifo is full, release this packet + } + _cmark++; + return true; +}; + +// Clipped by _cmark/_cend +int USB_SendControl(u8 flags, const void* d, int len) +{ + int sent = len; + const u8* data = (const u8*)d; + bool pgm = flags & TRANSFER_PGM; + while (len--) + { + u8 c = pgm ? pgm_read_byte(data++) : *data++; + if (!SendControl(c)) + return -1; + } + return sent; +} + +// Does not timeout or cross fifo boundaries +// Will only work for transfers <= 64 bytes +// TODO +int USB_RecvControl(void* d, int len) +{ + WaitOUT(); + Recv((u8*)d,len); + ClearOUT(); + return len; +} + +int SendInterfaces() +{ + int total = 0; + u8 interfaces = 0; + +#ifdef CDC_ENABLED + total = CDC_GetInterface(&interfaces); +#endif + +#ifdef HID_ENABLED + total += HID_GetInterface(&interfaces); +#endif + + return interfaces; +} + +// Construct a dynamic configuration descriptor +// This really needs dynamic endpoint allocation etc +// TODO +static +bool SendConfiguration(int maxlen) +{ + // Count and measure interfaces + InitControl(0); + int interfaces = SendInterfaces(); + ConfigDescriptor config = D_CONFIG(_cmark + sizeof(ConfigDescriptor),interfaces); + + // Now send them + InitControl(maxlen); + USB_SendControl(0,&config,sizeof(ConfigDescriptor)); + SendInterfaces(); + return true; +} + +u8 _cdcComposite = 0; + +static +bool SendDescriptor(Setup& setup) +{ + u8 t = setup.wValueH; + if (USB_CONFIGURATION_DESCRIPTOR_TYPE == t) + return SendConfiguration(setup.wLength); + + InitControl(setup.wLength); +#ifdef HID_ENABLED + if (HID_REPORT_DESCRIPTOR_TYPE == t) + return HID_GetDescriptor(t); +#endif + + u8 desc_length = 0; + const u8* desc_addr = 0; + if (USB_DEVICE_DESCRIPTOR_TYPE == t) + { + if (setup.wLength == 8) + _cdcComposite = 1; + desc_addr = _cdcComposite ? (const u8*)&USB_DeviceDescriptorA : (const u8*)&USB_DeviceDescriptor; + } + else if (USB_STRING_DESCRIPTOR_TYPE == t) + { + if (setup.wValueL == 0) + desc_addr = (const u8*)&STRING_LANGUAGE; + else if (setup.wValueL == IPRODUCT) + desc_addr = (const u8*)&STRING_IPRODUCT; + else if (setup.wValueL == IMANUFACTURER) + desc_addr = (const u8*)&STRING_IMANUFACTURER; + else + return false; + } + + if (desc_addr == 0) + return false; + if (desc_length == 0) + desc_length = pgm_read_byte(desc_addr); + + USB_SendControl(TRANSFER_PGM,desc_addr,desc_length); + return true; +} + +// Endpoint 0 interrupt +ISR(USB_COM_vect) +{ + SetEP(0); + if (!ReceivedSetupInt()) + return; + + Setup setup; + Recv((u8*)&setup,8); + ClearSetupInt(); + + u8 requestType = setup.bmRequestType; + if (requestType & REQUEST_DEVICETOHOST) + WaitIN(); + else + ClearIN(); + + bool ok = true; + if (REQUEST_STANDARD == (requestType & REQUEST_TYPE)) + { + // Standard Requests + u8 r = setup.bRequest; + if (GET_STATUS == r) + { + Send8(0); // TODO + Send8(0); + } + else if (CLEAR_FEATURE == r) + { + } + else if (SET_FEATURE == r) + { + } + else if (SET_ADDRESS == r) + { + WaitIN(); + UDADDR = setup.wValueL | (1<> 8) & 0xFF) + +#define CDC_V1_10 0x0110 +#define CDC_COMMUNICATION_INTERFACE_CLASS 0x02 + +#define CDC_CALL_MANAGEMENT 0x01 +#define CDC_ABSTRACT_CONTROL_MODEL 0x02 +#define CDC_HEADER 0x00 +#define CDC_ABSTRACT_CONTROL_MANAGEMENT 0x02 +#define CDC_UNION 0x06 +#define CDC_CS_INTERFACE 0x24 +#define CDC_CS_ENDPOINT 0x25 +#define CDC_DATA_INTERFACE_CLASS 0x0A + +#define MSC_SUBCLASS_SCSI 0x06 +#define MSC_PROTOCOL_BULK_ONLY 0x50 + +#define HID_HID_DESCRIPTOR_TYPE 0x21 +#define HID_REPORT_DESCRIPTOR_TYPE 0x22 +#define HID_PHYSICAL_DESCRIPTOR_TYPE 0x23 + + +// Device +typedef struct { + u8 len; // 18 + u8 dtype; // 1 USB_DEVICE_DESCRIPTOR_TYPE + u16 usbVersion; // 0x200 + u8 deviceClass; + u8 deviceSubClass; + u8 deviceProtocol; + u8 packetSize0; // Packet 0 + u16 idVendor; + u16 idProduct; + u16 deviceVersion; // 0x100 + u8 iManufacturer; + u8 iProduct; + u8 iSerialNumber; + u8 bNumConfigurations; +} DeviceDescriptor; + +// Config +typedef struct { + u8 len; // 9 + u8 dtype; // 2 + u16 clen; // total length + u8 numInterfaces; + u8 config; + u8 iconfig; + u8 attributes; + u8 maxPower; +} ConfigDescriptor; + +// String + +// Interface +typedef struct +{ + u8 len; // 9 + u8 dtype; // 4 + u8 number; + u8 alternate; + u8 numEndpoints; + u8 interfaceClass; + u8 interfaceSubClass; + u8 protocol; + u8 iInterface; +} InterfaceDescriptor; + +// Endpoint +typedef struct +{ + u8 len; // 7 + u8 dtype; // 5 + u8 addr; + u8 attr; + u16 packetSize; + u8 interval; +} EndpointDescriptor; + +// Interface Association Descriptor +// Used to bind 2 interfaces together in CDC compostite device +typedef struct +{ + u8 len; // 8 + u8 dtype; // 11 + u8 firstInterface; + u8 interfaceCount; + u8 functionClass; + u8 funtionSubClass; + u8 functionProtocol; + u8 iInterface; +} IADDescriptor; + +// CDC CS interface descriptor +typedef struct +{ + u8 len; // 5 + u8 dtype; // 0x24 + u8 subtype; + u8 d0; + u8 d1; +} CDCCSInterfaceDescriptor; + +typedef struct +{ + u8 len; // 4 + u8 dtype; // 0x24 + u8 subtype; + u8 d0; +} CDCCSInterfaceDescriptor4; + +typedef struct +{ + u8 len; + u8 dtype; // 0x24 + u8 subtype; // 1 + u8 bmCapabilities; + u8 bDataInterface; +} CMFunctionalDescriptor; + +typedef struct +{ + u8 len; + u8 dtype; // 0x24 + u8 subtype; // 1 + u8 bmCapabilities; +} ACMFunctionalDescriptor; + +typedef struct +{ + // IAD + IADDescriptor iad; // Only needed on compound device + + // Control + InterfaceDescriptor cif; // + CDCCSInterfaceDescriptor header; + CMFunctionalDescriptor callManagement; // Call Management + ACMFunctionalDescriptor controlManagement; // ACM + CDCCSInterfaceDescriptor functionalDescriptor; // CDC_UNION + EndpointDescriptor cifin; + + // Data + InterfaceDescriptor dif; + EndpointDescriptor in; + EndpointDescriptor out; +} CDCDescriptor; + +typedef struct +{ + InterfaceDescriptor msc; + EndpointDescriptor in; + EndpointDescriptor out; +} MSCDescriptor; + +typedef struct +{ + u8 len; // 9 + u8 dtype; // 0x21 + u8 addr; + u8 versionL; // 0x101 + u8 versionH; // 0x101 + u8 country; + u8 desctype; // 0x22 report + u8 descLenL; + u8 descLenH; +} HIDDescDescriptor; + +typedef struct +{ + InterfaceDescriptor hid; + HIDDescDescriptor desc; + EndpointDescriptor in; +} HIDDescriptor; + + +#define D_DEVICE(_class,_subClass,_proto,_packetSize0,_vid,_pid,_version,_im,_ip,_is,_configs) \ + { 18, 1, 0x200, _class,_subClass,_proto,_packetSize0,_vid,_pid,_version,_im,_ip,_is,_configs } + +#define D_CONFIG(_totalLength,_interfaces) \ + { 9, 2, _totalLength,_interfaces, 1, 0, USB_CONFIG_BUS_POWERED, USB_CONFIG_POWER_MA(500) } + +#define D_INTERFACE(_n,_numEndpoints,_class,_subClass,_protocol) \ + { 9, 4, _n, 0, _numEndpoints, _class,_subClass, _protocol, 0 } + +#define D_ENDPOINT(_addr,_attr,_packetSize, _interval) \ + { 7, 5, _addr,_attr,_packetSize, _interval } + +#define D_IAD(_firstInterface, _count, _class, _subClass, _protocol) \ + { 8, 11, _firstInterface, _count, _class, _subClass, _protocol, 0 } + +#define D_HIDREPORT(_descriptorLength) \ + { 9, 0x21, 0x1, 0x1, 0, 1, 0x22, _descriptorLength, 0 } + +#define D_CDCCS(_subtype,_d0,_d1) { 5, 0x24, _subtype, _d0, _d1 } +#define D_CDCCS4(_subtype,_d0) { 4, 0x24, _subtype, _d0 } + + +#endif \ No newline at end of file diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/USBDesc.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/USBDesc.h new file mode 100644 index 0000000000000000000000000000000000000000..900713e0f92cb1bae506476ff3460b0083bc6607 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/USBDesc.h @@ -0,0 +1,63 @@ + + +/* Copyright (c) 2011, Peter Barrett +** +** Permission to use, copy, modify, and/or distribute this software for +** any purpose with or without fee is hereby granted, provided that the +** above copyright notice and this permission notice appear in all copies. +** +** THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL +** WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED +** WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR +** BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES +** OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, +** WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +** ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS +** SOFTWARE. +*/ + +#define CDC_ENABLED +#define HID_ENABLED + + +#ifdef CDC_ENABLED +#define CDC_INTERFACE_COUNT 2 +#define CDC_ENPOINT_COUNT 3 +#else +#define CDC_INTERFACE_COUNT 0 +#define CDC_ENPOINT_COUNT 0 +#endif + +#ifdef HID_ENABLED +#define HID_INTERFACE_COUNT 1 +#define HID_ENPOINT_COUNT 1 +#else +#define HID_INTERFACE_COUNT 0 +#define HID_ENPOINT_COUNT 0 +#endif + +#define CDC_ACM_INTERFACE 0 // CDC ACM +#define CDC_DATA_INTERFACE 1 // CDC Data +#define CDC_FIRST_ENDPOINT 1 +#define CDC_ENDPOINT_ACM (CDC_FIRST_ENDPOINT) // CDC First +#define CDC_ENDPOINT_OUT (CDC_FIRST_ENDPOINT+1) +#define CDC_ENDPOINT_IN (CDC_FIRST_ENDPOINT+2) + +#define HID_INTERFACE (CDC_ACM_INTERFACE + CDC_INTERFACE_COUNT) // HID Interface +#define HID_FIRST_ENDPOINT (CDC_FIRST_ENDPOINT + CDC_ENPOINT_COUNT) +#define HID_ENDPOINT_INT (HID_FIRST_ENDPOINT) + +#define INTERFACE_COUNT (MSC_INTERFACE + MSC_INTERFACE_COUNT) + +#ifdef CDC_ENABLED +#define CDC_RX CDC_ENDPOINT_OUT +#define CDC_TX CDC_ENDPOINT_IN +#endif + +#ifdef HID_ENABLED +#define HID_TX HID_ENDPOINT_INT +#endif + +#define IMANUFACTURER 1 +#define IPRODUCT 2 + diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Udp.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Udp.h new file mode 100644 index 0000000000000000000000000000000000000000..dc5644b9df279c01e73a9bf609dcc54dab11c6ab --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/Udp.h @@ -0,0 +1,88 @@ +/* + * Udp.cpp: Library to send/receive UDP packets. + * + * NOTE: UDP is fast, but has some important limitations (thanks to Warren Gray for mentioning these) + * 1) UDP does not guarantee the order in which assembled UDP packets are received. This + * might not happen often in practice, but in larger network topologies, a UDP + * packet can be received out of sequence. + * 2) UDP does not guard against lost packets - so packets *can* disappear without the sender being + * aware of it. Again, this may not be a concern in practice on small local networks. + * For more information, see http://www.cafeaulait.org/course/week12/35.html + * + * MIT License: + * Copyright (c) 2008 Bjoern Hartmann + * 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. + * + * bjoern@cs.stanford.edu 12/30/2008 + */ + +#ifndef udp_h +#define udp_h + +#include +#include + +class UDP : public Stream { + +public: + virtual uint8_t begin(uint16_t) =0; // initialize, start listening on specified port. Returns 1 if successful, 0 if there are no sockets available to use + virtual void stop() =0; // Finish with the UDP socket + + // Sending UDP packets + + // Start building up a packet to send to the remote host specific in ip and port + // Returns 1 if successful, 0 if there was a problem with the supplied IP address or port + virtual int beginPacket(IPAddress ip, uint16_t port) =0; + // Start building up a packet to send to the remote host specific in host and port + // Returns 1 if successful, 0 if there was a problem resolving the hostname or port + virtual int beginPacket(const char *host, uint16_t port) =0; + // Finish off this packet and send it + // Returns 1 if the packet was sent successfully, 0 if there was an error + virtual int endPacket() =0; + // Write a single byte into the packet + virtual size_t write(uint8_t) =0; + // Write size bytes from buffer into the packet + virtual size_t write(const uint8_t *buffer, size_t size) =0; + + // Start processing the next available incoming packet + // Returns the size of the packet in bytes, or 0 if no packets are available + virtual int parsePacket() =0; + // Number of bytes remaining in the current packet + virtual int available() =0; + // Read a single byte from the current packet + virtual int read() =0; + // Read up to len bytes from the current packet and place them into buffer + // Returns the number of bytes read, or 0 if none are available + virtual int read(unsigned char* buffer, size_t len) =0; + // Read up to len characters from the current packet and place them into buffer + // Returns the number of characters read, or 0 if none are available + virtual int read(char* buffer, size_t len) =0; + // Return the next byte from the current packet without moving on to the next byte + virtual int peek() =0; + virtual void flush() =0; // Finish reading the current packet + + // Return the IP address of the host who sent the current incoming packet + virtual IPAddress remoteIP() =0; + // Return the port of the host who sent the current incoming packet + virtual uint16_t remotePort() =0; +protected: + uint8_t* rawIPAddress(IPAddress& addr) { return addr.raw_address(); }; +}; + +#endif diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/WCharacter.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/WCharacter.h new file mode 100644 index 0000000000000000000000000000000000000000..79733b50a535b2cc17119168acb51a92c37fa610 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/WCharacter.h @@ -0,0 +1,168 @@ +/* + WCharacter.h - Character utility functions for Wiring & Arduino + Copyright (c) 2010 Hernando Barragan. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef Character_h +#define Character_h + +#include + +// WCharacter.h prototypes +inline boolean isAlphaNumeric(int c) __attribute__((always_inline)); +inline boolean isAlpha(int c) __attribute__((always_inline)); +inline boolean isAscii(int c) __attribute__((always_inline)); +inline boolean isWhitespace(int c) __attribute__((always_inline)); +inline boolean isControl(int c) __attribute__((always_inline)); +inline boolean isDigit(int c) __attribute__((always_inline)); +inline boolean isGraph(int c) __attribute__((always_inline)); +inline boolean isLowerCase(int c) __attribute__((always_inline)); +inline boolean isPrintable(int c) __attribute__((always_inline)); +inline boolean isPunct(int c) __attribute__((always_inline)); +inline boolean isSpace(int c) __attribute__((always_inline)); +inline boolean isUpperCase(int c) __attribute__((always_inline)); +inline boolean isHexadecimalDigit(int c) __attribute__((always_inline)); +inline int toAscii(int c) __attribute__((always_inline)); +inline int toLowerCase(int c) __attribute__((always_inline)); +inline int toUpperCase(int c)__attribute__((always_inline)); + + +// Checks for an alphanumeric character. +// It is equivalent to (isalpha(c) || isdigit(c)). +inline boolean isAlphaNumeric(int c) +{ + return ( isalnum(c) == 0 ? false : true); +} + + +// Checks for an alphabetic character. +// It is equivalent to (isupper(c) || islower(c)). +inline boolean isAlpha(int c) +{ + return ( isalpha(c) == 0 ? false : true); +} + + +// Checks whether c is a 7-bit unsigned char value +// that fits into the ASCII character set. +inline boolean isAscii(int c) +{ + return ( isascii (c) == 0 ? false : true); +} + + +// Checks for a blank character, that is, a space or a tab. +inline boolean isWhitespace(int c) +{ + return ( isblank (c) == 0 ? false : true); +} + + +// Checks for a control character. +inline boolean isControl(int c) +{ + return ( iscntrl (c) == 0 ? false : true); +} + + +// Checks for a digit (0 through 9). +inline boolean isDigit(int c) +{ + return ( isdigit (c) == 0 ? false : true); +} + + +// Checks for any printable character except space. +inline boolean isGraph(int c) +{ + return ( isgraph (c) == 0 ? false : true); +} + + +// Checks for a lower-case character. +inline boolean isLowerCase(int c) +{ + return (islower (c) == 0 ? false : true); +} + + +// Checks for any printable character including space. +inline boolean isPrintable(int c) +{ + return ( isprint (c) == 0 ? false : true); +} + + +// Checks for any printable character which is not a space +// or an alphanumeric character. +inline boolean isPunct(int c) +{ + return ( ispunct (c) == 0 ? false : true); +} + + +// Checks for white-space characters. For the avr-libc library, +// these are: space, formfeed ('\f'), newline ('\n'), carriage +// return ('\r'), horizontal tab ('\t'), and vertical tab ('\v'). +inline boolean isSpace(int c) +{ + return ( isspace (c) == 0 ? false : true); +} + + +// Checks for an uppercase letter. +inline boolean isUpperCase(int c) +{ + return ( isupper (c) == 0 ? false : true); +} + + +// Checks for a hexadecimal digits, i.e. one of 0 1 2 3 4 5 6 7 +// 8 9 a b c d e f A B C D E F. +inline boolean isHexadecimalDigit(int c) +{ + return ( isxdigit (c) == 0 ? false : true); +} + + +// Converts c to a 7-bit unsigned char value that fits into the +// ASCII character set, by clearing the high-order bits. +inline int toAscii(int c) +{ + return toascii (c); +} + + +// Warning: +// Many people will be unhappy if you use this function. +// This function will convert accented letters into random +// characters. + +// Converts the letter c to lower case, if possible. +inline int toLowerCase(int c) +{ + return tolower (c); +} + + +// Converts the letter c to upper case, if possible. +inline int toUpperCase(int c) +{ + return toupper (c); +} + +#endif \ No newline at end of file diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/WInterrupts.c b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/WInterrupts.c new file mode 100644 index 0000000000000000000000000000000000000000..62efc9cadba19d76c925fd5c851fc677653c6db9 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/WInterrupts.c @@ -0,0 +1,322 @@ +/* -*- mode: jde; c-basic-offset: 2; indent-tabs-mode: nil -*- */ + +/* + Part of the Wiring project - http://wiring.uniandes.edu.co + + Copyright (c) 2004-05 Hernando Barragan + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + Modified 24 November 2006 by David A. Mellis + Modified 1 August 2010 by Mark Sproul +*/ + +#include +#include +#include +#include +#include + +#include "wiring_private.h" + +static volatile voidFuncPtr intFunc[EXTERNAL_NUM_INTERRUPTS]; +// volatile static voidFuncPtr twiIntFunc; + +void attachInterrupt(uint8_t interruptNum, void (*userFunc)(void), int mode) { + if(interruptNum < EXTERNAL_NUM_INTERRUPTS) { + intFunc[interruptNum] = userFunc; + + // Configure the interrupt mode (trigger on low input, any change, rising + // edge, or falling edge). The mode constants were chosen to correspond + // to the configuration bits in the hardware register, so we simply shift + // the mode into place. + + // Enable the interrupt. + + switch (interruptNum) { +#if defined(__AVR_ATmega32U4__) + // I hate doing this, but the register assignment differs between the 1280/2560 + // and the 32U4. Since avrlib defines registers PCMSK1 and PCMSK2 that aren't + // even present on the 32U4 this is the only way to distinguish between them. + case 0: + EICRA = (EICRA & ~((1<= howbig) { + return howsmall; + } + long diff = howbig - howsmall; + return random(diff) + howsmall; +} + +long map(long x, long in_min, long in_max, long out_min, long out_max) +{ + return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min; +} + +unsigned int makeWord(unsigned int w) { return w; } +unsigned int makeWord(unsigned char h, unsigned char l) { return (h << 8) | l; } \ No newline at end of file diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/WString.cpp b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/WString.cpp new file mode 100644 index 0000000000000000000000000000000000000000..c6839fc0d92f35d7c3eb1342115f2918f0f87242 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/WString.cpp @@ -0,0 +1,645 @@ +/* + WString.cpp - String library for Wiring & Arduino + ...mostly rewritten by Paul Stoffregen... + Copyright (c) 2009-10 Hernando Barragan. All rights reserved. + Copyright 2011, Paul Stoffregen, paul@pjrc.com + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#include "WString.h" + + +/*********************************************/ +/* Constructors */ +/*********************************************/ + +String::String(const char *cstr) +{ + init(); + if (cstr) copy(cstr, strlen(cstr)); +} + +String::String(const String &value) +{ + init(); + *this = value; +} + +#ifdef __GXX_EXPERIMENTAL_CXX0X__ +String::String(String &&rval) +{ + init(); + move(rval); +} +String::String(StringSumHelper &&rval) +{ + init(); + move(rval); +} +#endif + +String::String(char c) +{ + init(); + char buf[2]; + buf[0] = c; + buf[1] = 0; + *this = buf; +} + +String::String(unsigned char value, unsigned char base) +{ + init(); + char buf[9]; + utoa(value, buf, base); + *this = buf; +} + +String::String(int value, unsigned char base) +{ + init(); + char buf[18]; + itoa(value, buf, base); + *this = buf; +} + +String::String(unsigned int value, unsigned char base) +{ + init(); + char buf[17]; + utoa(value, buf, base); + *this = buf; +} + +String::String(long value, unsigned char base) +{ + init(); + char buf[34]; + ltoa(value, buf, base); + *this = buf; +} + +String::String(unsigned long value, unsigned char base) +{ + init(); + char buf[33]; + ultoa(value, buf, base); + *this = buf; +} + +String::~String() +{ + free(buffer); +} + +/*********************************************/ +/* Memory Management */ +/*********************************************/ + +inline void String::init(void) +{ + buffer = NULL; + capacity = 0; + len = 0; + flags = 0; +} + +void String::invalidate(void) +{ + if (buffer) free(buffer); + buffer = NULL; + capacity = len = 0; +} + +unsigned char String::reserve(unsigned int size) +{ + if (buffer && capacity >= size) return 1; + if (changeBuffer(size)) { + if (len == 0) buffer[0] = 0; + return 1; + } + return 0; +} + +unsigned char String::changeBuffer(unsigned int maxStrLen) +{ + char *newbuffer = (char *)realloc(buffer, maxStrLen + 1); + if (newbuffer) { + buffer = newbuffer; + capacity = maxStrLen; + return 1; + } + return 0; +} + +/*********************************************/ +/* Copy and Move */ +/*********************************************/ + +String & String::copy(const char *cstr, unsigned int length) +{ + if (!reserve(length)) { + invalidate(); + return *this; + } + len = length; + strcpy(buffer, cstr); + return *this; +} + +#ifdef __GXX_EXPERIMENTAL_CXX0X__ +void String::move(String &rhs) +{ + if (buffer) { + if (capacity >= rhs.len) { + strcpy(buffer, rhs.buffer); + len = rhs.len; + rhs.len = 0; + return; + } else { + free(buffer); + } + } + buffer = rhs.buffer; + capacity = rhs.capacity; + len = rhs.len; + rhs.buffer = NULL; + rhs.capacity = 0; + rhs.len = 0; +} +#endif + +String & String::operator = (const String &rhs) +{ + if (this == &rhs) return *this; + + if (rhs.buffer) copy(rhs.buffer, rhs.len); + else invalidate(); + + return *this; +} + +#ifdef __GXX_EXPERIMENTAL_CXX0X__ +String & String::operator = (String &&rval) +{ + if (this != &rval) move(rval); + return *this; +} + +String & String::operator = (StringSumHelper &&rval) +{ + if (this != &rval) move(rval); + return *this; +} +#endif + +String & String::operator = (const char *cstr) +{ + if (cstr) copy(cstr, strlen(cstr)); + else invalidate(); + + return *this; +} + +/*********************************************/ +/* concat */ +/*********************************************/ + +unsigned char String::concat(const String &s) +{ + return concat(s.buffer, s.len); +} + +unsigned char String::concat(const char *cstr, unsigned int length) +{ + unsigned int newlen = len + length; + if (!cstr) return 0; + if (length == 0) return 1; + if (!reserve(newlen)) return 0; + strcpy(buffer + len, cstr); + len = newlen; + return 1; +} + +unsigned char String::concat(const char *cstr) +{ + if (!cstr) return 0; + return concat(cstr, strlen(cstr)); +} + +unsigned char String::concat(char c) +{ + char buf[2]; + buf[0] = c; + buf[1] = 0; + return concat(buf, 1); +} + +unsigned char String::concat(unsigned char num) +{ + char buf[4]; + itoa(num, buf, 10); + return concat(buf, strlen(buf)); +} + +unsigned char String::concat(int num) +{ + char buf[7]; + itoa(num, buf, 10); + return concat(buf, strlen(buf)); +} + +unsigned char String::concat(unsigned int num) +{ + char buf[6]; + utoa(num, buf, 10); + return concat(buf, strlen(buf)); +} + +unsigned char String::concat(long num) +{ + char buf[12]; + ltoa(num, buf, 10); + return concat(buf, strlen(buf)); +} + +unsigned char String::concat(unsigned long num) +{ + char buf[11]; + ultoa(num, buf, 10); + return concat(buf, strlen(buf)); +} + +/*********************************************/ +/* Concatenate */ +/*********************************************/ + +StringSumHelper & operator + (const StringSumHelper &lhs, const String &rhs) +{ + StringSumHelper &a = const_cast(lhs); + if (!a.concat(rhs.buffer, rhs.len)) a.invalidate(); + return a; +} + +StringSumHelper & operator + (const StringSumHelper &lhs, const char *cstr) +{ + StringSumHelper &a = const_cast(lhs); + if (!cstr || !a.concat(cstr, strlen(cstr))) a.invalidate(); + return a; +} + +StringSumHelper & operator + (const StringSumHelper &lhs, char c) +{ + StringSumHelper &a = const_cast(lhs); + if (!a.concat(c)) a.invalidate(); + return a; +} + +StringSumHelper & operator + (const StringSumHelper &lhs, unsigned char num) +{ + StringSumHelper &a = const_cast(lhs); + if (!a.concat(num)) a.invalidate(); + return a; +} + +StringSumHelper & operator + (const StringSumHelper &lhs, int num) +{ + StringSumHelper &a = const_cast(lhs); + if (!a.concat(num)) a.invalidate(); + return a; +} + +StringSumHelper & operator + (const StringSumHelper &lhs, unsigned int num) +{ + StringSumHelper &a = const_cast(lhs); + if (!a.concat(num)) a.invalidate(); + return a; +} + +StringSumHelper & operator + (const StringSumHelper &lhs, long num) +{ + StringSumHelper &a = const_cast(lhs); + if (!a.concat(num)) a.invalidate(); + return a; +} + +StringSumHelper & operator + (const StringSumHelper &lhs, unsigned long num) +{ + StringSumHelper &a = const_cast(lhs); + if (!a.concat(num)) a.invalidate(); + return a; +} + +/*********************************************/ +/* Comparison */ +/*********************************************/ + +int String::compareTo(const String &s) const +{ + if (!buffer || !s.buffer) { + if (s.buffer && s.len > 0) return 0 - *(unsigned char *)s.buffer; + if (buffer && len > 0) return *(unsigned char *)buffer; + return 0; + } + return strcmp(buffer, s.buffer); +} + +unsigned char String::equals(const String &s2) const +{ + return (len == s2.len && compareTo(s2) == 0); +} + +unsigned char String::equals(const char *cstr) const +{ + if (len == 0) return (cstr == NULL || *cstr == 0); + if (cstr == NULL) return buffer[0] == 0; + return strcmp(buffer, cstr) == 0; +} + +unsigned char String::operator<(const String &rhs) const +{ + return compareTo(rhs) < 0; +} + +unsigned char String::operator>(const String &rhs) const +{ + return compareTo(rhs) > 0; +} + +unsigned char String::operator<=(const String &rhs) const +{ + return compareTo(rhs) <= 0; +} + +unsigned char String::operator>=(const String &rhs) const +{ + return compareTo(rhs) >= 0; +} + +unsigned char String::equalsIgnoreCase( const String &s2 ) const +{ + if (this == &s2) return 1; + if (len != s2.len) return 0; + if (len == 0) return 1; + const char *p1 = buffer; + const char *p2 = s2.buffer; + while (*p1) { + if (tolower(*p1++) != tolower(*p2++)) return 0; + } + return 1; +} + +unsigned char String::startsWith( const String &s2 ) const +{ + if (len < s2.len) return 0; + return startsWith(s2, 0); +} + +unsigned char String::startsWith( const String &s2, unsigned int offset ) const +{ + if (offset > len - s2.len || !buffer || !s2.buffer) return 0; + return strncmp( &buffer[offset], s2.buffer, s2.len ) == 0; +} + +unsigned char String::endsWith( const String &s2 ) const +{ + if ( len < s2.len || !buffer || !s2.buffer) return 0; + return strcmp(&buffer[len - s2.len], s2.buffer) == 0; +} + +/*********************************************/ +/* Character Access */ +/*********************************************/ + +char String::charAt(unsigned int loc) const +{ + return operator[](loc); +} + +void String::setCharAt(unsigned int loc, char c) +{ + if (loc < len) buffer[loc] = c; +} + +char & String::operator[](unsigned int index) +{ + static char dummy_writable_char; + if (index >= len || !buffer) { + dummy_writable_char = 0; + return dummy_writable_char; + } + return buffer[index]; +} + +char String::operator[]( unsigned int index ) const +{ + if (index >= len || !buffer) return 0; + return buffer[index]; +} + +void String::getBytes(unsigned char *buf, unsigned int bufsize, unsigned int index) const +{ + if (!bufsize || !buf) return; + if (index >= len) { + buf[0] = 0; + return; + } + unsigned int n = bufsize - 1; + if (n > len - index) n = len - index; + strncpy((char *)buf, buffer + index, n); + buf[n] = 0; +} + +/*********************************************/ +/* Search */ +/*********************************************/ + +int String::indexOf(char c) const +{ + return indexOf(c, 0); +} + +int String::indexOf( char ch, unsigned int fromIndex ) const +{ + if (fromIndex >= len) return -1; + const char* temp = strchr(buffer + fromIndex, ch); + if (temp == NULL) return -1; + return temp - buffer; +} + +int String::indexOf(const String &s2) const +{ + return indexOf(s2, 0); +} + +int String::indexOf(const String &s2, unsigned int fromIndex) const +{ + if (fromIndex >= len) return -1; + const char *found = strstr(buffer + fromIndex, s2.buffer); + if (found == NULL) return -1; + return found - buffer; +} + +int String::lastIndexOf( char theChar ) const +{ + return lastIndexOf(theChar, len - 1); +} + +int String::lastIndexOf(char ch, unsigned int fromIndex) const +{ + if (fromIndex >= len) return -1; + char tempchar = buffer[fromIndex + 1]; + buffer[fromIndex + 1] = '\0'; + char* temp = strrchr( buffer, ch ); + buffer[fromIndex + 1] = tempchar; + if (temp == NULL) return -1; + return temp - buffer; +} + +int String::lastIndexOf(const String &s2) const +{ + return lastIndexOf(s2, len - s2.len); +} + +int String::lastIndexOf(const String &s2, unsigned int fromIndex) const +{ + if (s2.len == 0 || len == 0 || s2.len > len) return -1; + if (fromIndex >= len) fromIndex = len - 1; + int found = -1; + for (char *p = buffer; p <= buffer + fromIndex; p++) { + p = strstr(p, s2.buffer); + if (!p) break; + if ((unsigned int)(p - buffer) <= fromIndex) found = p - buffer; + } + return found; +} + +String String::substring( unsigned int left ) const +{ + return substring(left, len); +} + +String String::substring(unsigned int left, unsigned int right) const +{ + if (left > right) { + unsigned int temp = right; + right = left; + left = temp; + } + String out; + if (left > len) return out; + if (right > len) right = len; + char temp = buffer[right]; // save the replaced character + buffer[right] = '\0'; + out = buffer + left; // pointer arithmetic + buffer[right] = temp; //restore character + return out; +} + +/*********************************************/ +/* Modification */ +/*********************************************/ + +void String::replace(char find, char replace) +{ + if (!buffer) return; + for (char *p = buffer; *p; p++) { + if (*p == find) *p = replace; + } +} + +void String::replace(const String& find, const String& replace) +{ + if (len == 0 || find.len == 0) return; + int diff = replace.len - find.len; + char *readFrom = buffer; + char *foundAt; + if (diff == 0) { + while ((foundAt = strstr(readFrom, find.buffer)) != NULL) { + memcpy(foundAt, replace.buffer, replace.len); + readFrom = foundAt + replace.len; + } + } else if (diff < 0) { + char *writeTo = buffer; + while ((foundAt = strstr(readFrom, find.buffer)) != NULL) { + unsigned int n = foundAt - readFrom; + memcpy(writeTo, readFrom, n); + writeTo += n; + memcpy(writeTo, replace.buffer, replace.len); + writeTo += replace.len; + readFrom = foundAt + find.len; + len += diff; + } + strcpy(writeTo, readFrom); + } else { + unsigned int size = len; // compute size needed for result + while ((foundAt = strstr(readFrom, find.buffer)) != NULL) { + readFrom = foundAt + find.len; + size += diff; + } + if (size == len) return; + if (size > capacity && !changeBuffer(size)) return; // XXX: tell user! + int index = len - 1; + while (index >= 0 && (index = lastIndexOf(find, index)) >= 0) { + readFrom = buffer + index + find.len; + memmove(readFrom + diff, readFrom, len - (readFrom - buffer)); + len += diff; + buffer[len] = 0; + memcpy(buffer + index, replace.buffer, replace.len); + index--; + } + } +} + +void String::toLowerCase(void) +{ + if (!buffer) return; + for (char *p = buffer; *p; p++) { + *p = tolower(*p); + } +} + +void String::toUpperCase(void) +{ + if (!buffer) return; + for (char *p = buffer; *p; p++) { + *p = toupper(*p); + } +} + +void String::trim(void) +{ + if (!buffer || len == 0) return; + char *begin = buffer; + while (isspace(*begin)) begin++; + char *end = buffer + len - 1; + while (isspace(*end) && end >= begin) end--; + len = end + 1 - begin; + if (begin > buffer) memcpy(buffer, begin, len); + buffer[len] = 0; +} + +/*********************************************/ +/* Parsing / Conversion */ +/*********************************************/ + +long String::toInt(void) const +{ + if (buffer) return atol(buffer); + return 0; +} + + diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/WString.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/WString.h new file mode 100644 index 0000000000000000000000000000000000000000..947325e5f5d4ee8f8ff15959af59eb7464667d3d --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/WString.h @@ -0,0 +1,205 @@ +/* + WString.h - String library for Wiring & Arduino + ...mostly rewritten by Paul Stoffregen... + Copyright (c) 2009-10 Hernando Barragan. All right reserved. + Copyright 2011, Paul Stoffregen, paul@pjrc.com + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef String_class_h +#define String_class_h +#ifdef __cplusplus + +#include +#include +#include +#include + +// When compiling programs with this class, the following gcc parameters +// dramatically increase performance and memory (RAM) efficiency, typically +// with little or no increase in code size. +// -felide-constructors +// -std=c++0x + +class __FlashStringHelper; +#define F(string_literal) (reinterpret_cast(PSTR(string_literal))) + +// An inherited class for holding the result of a concatenation. These +// result objects are assumed to be writable by subsequent concatenations. +class StringSumHelper; + +// The string class +class String +{ + // use a function pointer to allow for "if (s)" without the + // complications of an operator bool(). for more information, see: + // http://www.artima.com/cppsource/safebool.html + typedef void (String::*StringIfHelperType)() const; + void StringIfHelper() const {} + +public: + // constructors + // creates a copy of the initial value. + // if the initial value is null or invalid, or if memory allocation + // fails, the string will be marked as invalid (i.e. "if (s)" will + // be false). + String(const char *cstr = ""); + String(const String &str); + #ifdef __GXX_EXPERIMENTAL_CXX0X__ + String(String &&rval); + String(StringSumHelper &&rval); + #endif + explicit String(char c); + explicit String(unsigned char, unsigned char base=10); + explicit String(int, unsigned char base=10); + explicit String(unsigned int, unsigned char base=10); + explicit String(long, unsigned char base=10); + explicit String(unsigned long, unsigned char base=10); + ~String(void); + + // memory management + // return true on success, false on failure (in which case, the string + // is left unchanged). reserve(0), if successful, will validate an + // invalid string (i.e., "if (s)" will be true afterwards) + unsigned char reserve(unsigned int size); + inline unsigned int length(void) const {return len;} + + // creates a copy of the assigned value. if the value is null or + // invalid, or if the memory allocation fails, the string will be + // marked as invalid ("if (s)" will be false). + String & operator = (const String &rhs); + String & operator = (const char *cstr); + #ifdef __GXX_EXPERIMENTAL_CXX0X__ + String & operator = (String &&rval); + String & operator = (StringSumHelper &&rval); + #endif + + // concatenate (works w/ built-in types) + + // returns true on success, false on failure (in which case, the string + // is left unchanged). if the argument is null or invalid, the + // concatenation is considered unsucessful. + unsigned char concat(const String &str); + unsigned char concat(const char *cstr); + unsigned char concat(char c); + unsigned char concat(unsigned char c); + unsigned char concat(int num); + unsigned char concat(unsigned int num); + unsigned char concat(long num); + unsigned char concat(unsigned long num); + + // if there's not enough memory for the concatenated value, the string + // will be left unchanged (but this isn't signalled in any way) + String & operator += (const String &rhs) {concat(rhs); return (*this);} + String & operator += (const char *cstr) {concat(cstr); return (*this);} + String & operator += (char c) {concat(c); return (*this);} + String & operator += (unsigned char num) {concat(num); return (*this);} + String & operator += (int num) {concat(num); return (*this);} + String & operator += (unsigned int num) {concat(num); return (*this);} + String & operator += (long num) {concat(num); return (*this);} + String & operator += (unsigned long num) {concat(num); return (*this);} + + friend StringSumHelper & operator + (const StringSumHelper &lhs, const String &rhs); + friend StringSumHelper & operator + (const StringSumHelper &lhs, const char *cstr); + friend StringSumHelper & operator + (const StringSumHelper &lhs, char c); + friend StringSumHelper & operator + (const StringSumHelper &lhs, unsigned char num); + friend StringSumHelper & operator + (const StringSumHelper &lhs, int num); + friend StringSumHelper & operator + (const StringSumHelper &lhs, unsigned int num); + friend StringSumHelper & operator + (const StringSumHelper &lhs, long num); + friend StringSumHelper & operator + (const StringSumHelper &lhs, unsigned long num); + + // comparison (only works w/ Strings and "strings") + operator StringIfHelperType() const { return buffer ? &String::StringIfHelper : 0; } + int compareTo(const String &s) const; + unsigned char equals(const String &s) const; + unsigned char equals(const char *cstr) const; + unsigned char operator == (const String &rhs) const {return equals(rhs);} + unsigned char operator == (const char *cstr) const {return equals(cstr);} + unsigned char operator != (const String &rhs) const {return !equals(rhs);} + unsigned char operator != (const char *cstr) const {return !equals(cstr);} + unsigned char operator < (const String &rhs) const; + unsigned char operator > (const String &rhs) const; + unsigned char operator <= (const String &rhs) const; + unsigned char operator >= (const String &rhs) const; + unsigned char equalsIgnoreCase(const String &s) const; + unsigned char startsWith( const String &prefix) const; + unsigned char startsWith(const String &prefix, unsigned int offset) const; + unsigned char endsWith(const String &suffix) const; + + // character acccess + char charAt(unsigned int index) const; + void setCharAt(unsigned int index, char c); + char operator [] (unsigned int index) const; + char& operator [] (unsigned int index); + void getBytes(unsigned char *buf, unsigned int bufsize, unsigned int index=0) const; + void toCharArray(char *buf, unsigned int bufsize, unsigned int index=0) const + {getBytes((unsigned char *)buf, bufsize, index);} + + // search + int indexOf( char ch ) const; + int indexOf( char ch, unsigned int fromIndex ) const; + int indexOf( const String &str ) const; + int indexOf( const String &str, unsigned int fromIndex ) const; + int lastIndexOf( char ch ) const; + int lastIndexOf( char ch, unsigned int fromIndex ) const; + int lastIndexOf( const String &str ) const; + int lastIndexOf( const String &str, unsigned int fromIndex ) const; + String substring( unsigned int beginIndex ) const; + String substring( unsigned int beginIndex, unsigned int endIndex ) const; + + // modification + void replace(char find, char replace); + void replace(const String& find, const String& replace); + void toLowerCase(void); + void toUpperCase(void); + void trim(void); + + // parsing/conversion + long toInt(void) const; + +protected: + char *buffer; // the actual char array + unsigned int capacity; // the array length minus one (for the '\0') + unsigned int len; // the String length (not counting the '\0') + unsigned char flags; // unused, for future features +protected: + void init(void); + void invalidate(void); + unsigned char changeBuffer(unsigned int maxStrLen); + unsigned char concat(const char *cstr, unsigned int length); + + // copy and move + String & copy(const char *cstr, unsigned int length); + #ifdef __GXX_EXPERIMENTAL_CXX0X__ + void move(String &rhs); + #endif +}; + +class StringSumHelper : public String +{ +public: + StringSumHelper(const String &s) : String(s) {} + StringSumHelper(const char *p) : String(p) {} + StringSumHelper(char c) : String(c) {} + StringSumHelper(unsigned char num) : String(num) {} + StringSumHelper(int num) : String(num) {} + StringSumHelper(unsigned int num) : String(num) {} + StringSumHelper(long num) : String(num) {} + StringSumHelper(unsigned long num) : String(num) {} +}; + +#endif // __cplusplus +#endif // String_class_h diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/binary.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/binary.h new file mode 100644 index 0000000000000000000000000000000000000000..af1498033ab2fcabf7d8cbb7b241a82ba5e091f0 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/binary.h @@ -0,0 +1,515 @@ +#ifndef Binary_h +#define Binary_h + +#define B0 0 +#define B00 0 +#define B000 0 +#define B0000 0 +#define B00000 0 +#define B000000 0 +#define B0000000 0 +#define B00000000 0 +#define B1 1 +#define B01 1 +#define B001 1 +#define B0001 1 +#define B00001 1 +#define B000001 1 +#define B0000001 1 +#define B00000001 1 +#define B10 2 +#define B010 2 +#define B0010 2 +#define B00010 2 +#define B000010 2 +#define B0000010 2 +#define B00000010 2 +#define B11 3 +#define B011 3 +#define B0011 3 +#define B00011 3 +#define B000011 3 +#define B0000011 3 +#define B00000011 3 +#define B100 4 +#define B0100 4 +#define B00100 4 +#define B000100 4 +#define B0000100 4 +#define B00000100 4 +#define B101 5 +#define B0101 5 +#define B00101 5 +#define B000101 5 +#define B0000101 5 +#define B00000101 5 +#define B110 6 +#define B0110 6 +#define B00110 6 +#define B000110 6 +#define B0000110 6 +#define B00000110 6 +#define B111 7 +#define B0111 7 +#define B00111 7 +#define B000111 7 +#define B0000111 7 +#define B00000111 7 +#define B1000 8 +#define B01000 8 +#define B001000 8 +#define B0001000 8 +#define B00001000 8 +#define B1001 9 +#define B01001 9 +#define B001001 9 +#define B0001001 9 +#define B00001001 9 +#define B1010 10 +#define B01010 10 +#define B001010 10 +#define B0001010 10 +#define B00001010 10 +#define B1011 11 +#define B01011 11 +#define B001011 11 +#define B0001011 11 +#define B00001011 11 +#define B1100 12 +#define B01100 12 +#define B001100 12 +#define B0001100 12 +#define B00001100 12 +#define B1101 13 +#define B01101 13 +#define B001101 13 +#define B0001101 13 +#define B00001101 13 +#define B1110 14 +#define B01110 14 +#define B001110 14 +#define B0001110 14 +#define B00001110 14 +#define B1111 15 +#define B01111 15 +#define B001111 15 +#define B0001111 15 +#define B00001111 15 +#define B10000 16 +#define B010000 16 +#define B0010000 16 +#define B00010000 16 +#define B10001 17 +#define B010001 17 +#define B0010001 17 +#define B00010001 17 +#define B10010 18 +#define B010010 18 +#define B0010010 18 +#define B00010010 18 +#define B10011 19 +#define B010011 19 +#define B0010011 19 +#define B00010011 19 +#define B10100 20 +#define B010100 20 +#define B0010100 20 +#define B00010100 20 +#define B10101 21 +#define B010101 21 +#define B0010101 21 +#define B00010101 21 +#define B10110 22 +#define B010110 22 +#define B0010110 22 +#define B00010110 22 +#define B10111 23 +#define B010111 23 +#define B0010111 23 +#define B00010111 23 +#define B11000 24 +#define B011000 24 +#define B0011000 24 +#define B00011000 24 +#define B11001 25 +#define B011001 25 +#define B0011001 25 +#define B00011001 25 +#define B11010 26 +#define B011010 26 +#define B0011010 26 +#define B00011010 26 +#define B11011 27 +#define B011011 27 +#define B0011011 27 +#define B00011011 27 +#define B11100 28 +#define B011100 28 +#define B0011100 28 +#define B00011100 28 +#define B11101 29 +#define B011101 29 +#define B0011101 29 +#define B00011101 29 +#define B11110 30 +#define B011110 30 +#define B0011110 30 +#define B00011110 30 +#define B11111 31 +#define B011111 31 +#define B0011111 31 +#define B00011111 31 +#define B100000 32 +#define B0100000 32 +#define B00100000 32 +#define B100001 33 +#define B0100001 33 +#define B00100001 33 +#define B100010 34 +#define B0100010 34 +#define B00100010 34 +#define B100011 35 +#define B0100011 35 +#define B00100011 35 +#define B100100 36 +#define B0100100 36 +#define B00100100 36 +#define B100101 37 +#define B0100101 37 +#define B00100101 37 +#define B100110 38 +#define B0100110 38 +#define B00100110 38 +#define B100111 39 +#define B0100111 39 +#define B00100111 39 +#define B101000 40 +#define B0101000 40 +#define B00101000 40 +#define B101001 41 +#define B0101001 41 +#define B00101001 41 +#define B101010 42 +#define B0101010 42 +#define B00101010 42 +#define B101011 43 +#define B0101011 43 +#define B00101011 43 +#define B101100 44 +#define B0101100 44 +#define B00101100 44 +#define B101101 45 +#define B0101101 45 +#define B00101101 45 +#define B101110 46 +#define B0101110 46 +#define B00101110 46 +#define B101111 47 +#define B0101111 47 +#define B00101111 47 +#define B110000 48 +#define B0110000 48 +#define B00110000 48 +#define B110001 49 +#define B0110001 49 +#define B00110001 49 +#define B110010 50 +#define B0110010 50 +#define B00110010 50 +#define B110011 51 +#define B0110011 51 +#define B00110011 51 +#define B110100 52 +#define B0110100 52 +#define B00110100 52 +#define B110101 53 +#define B0110101 53 +#define B00110101 53 +#define B110110 54 +#define B0110110 54 +#define B00110110 54 +#define B110111 55 +#define B0110111 55 +#define B00110111 55 +#define B111000 56 +#define B0111000 56 +#define B00111000 56 +#define B111001 57 +#define B0111001 57 +#define B00111001 57 +#define B111010 58 +#define B0111010 58 +#define B00111010 58 +#define B111011 59 +#define B0111011 59 +#define B00111011 59 +#define B111100 60 +#define B0111100 60 +#define B00111100 60 +#define B111101 61 +#define B0111101 61 +#define B00111101 61 +#define B111110 62 +#define B0111110 62 +#define B00111110 62 +#define B111111 63 +#define B0111111 63 +#define B00111111 63 +#define B1000000 64 +#define B01000000 64 +#define B1000001 65 +#define B01000001 65 +#define B1000010 66 +#define B01000010 66 +#define B1000011 67 +#define B01000011 67 +#define B1000100 68 +#define B01000100 68 +#define B1000101 69 +#define B01000101 69 +#define B1000110 70 +#define B01000110 70 +#define B1000111 71 +#define B01000111 71 +#define B1001000 72 +#define B01001000 72 +#define B1001001 73 +#define B01001001 73 +#define B1001010 74 +#define B01001010 74 +#define B1001011 75 +#define B01001011 75 +#define B1001100 76 +#define B01001100 76 +#define B1001101 77 +#define B01001101 77 +#define B1001110 78 +#define B01001110 78 +#define B1001111 79 +#define B01001111 79 +#define B1010000 80 +#define B01010000 80 +#define B1010001 81 +#define B01010001 81 +#define B1010010 82 +#define B01010010 82 +#define B1010011 83 +#define B01010011 83 +#define B1010100 84 +#define B01010100 84 +#define B1010101 85 +#define B01010101 85 +#define B1010110 86 +#define B01010110 86 +#define B1010111 87 +#define B01010111 87 +#define B1011000 88 +#define B01011000 88 +#define B1011001 89 +#define B01011001 89 +#define B1011010 90 +#define B01011010 90 +#define B1011011 91 +#define B01011011 91 +#define B1011100 92 +#define B01011100 92 +#define B1011101 93 +#define B01011101 93 +#define B1011110 94 +#define B01011110 94 +#define B1011111 95 +#define B01011111 95 +#define B1100000 96 +#define B01100000 96 +#define B1100001 97 +#define B01100001 97 +#define B1100010 98 +#define B01100010 98 +#define B1100011 99 +#define B01100011 99 +#define B1100100 100 +#define B01100100 100 +#define B1100101 101 +#define B01100101 101 +#define B1100110 102 +#define B01100110 102 +#define B1100111 103 +#define B01100111 103 +#define B1101000 104 +#define B01101000 104 +#define B1101001 105 +#define B01101001 105 +#define B1101010 106 +#define B01101010 106 +#define B1101011 107 +#define B01101011 107 +#define B1101100 108 +#define B01101100 108 +#define B1101101 109 +#define B01101101 109 +#define B1101110 110 +#define B01101110 110 +#define B1101111 111 +#define B01101111 111 +#define B1110000 112 +#define B01110000 112 +#define B1110001 113 +#define B01110001 113 +#define B1110010 114 +#define B01110010 114 +#define B1110011 115 +#define B01110011 115 +#define B1110100 116 +#define B01110100 116 +#define B1110101 117 +#define B01110101 117 +#define B1110110 118 +#define B01110110 118 +#define B1110111 119 +#define B01110111 119 +#define B1111000 120 +#define B01111000 120 +#define B1111001 121 +#define B01111001 121 +#define B1111010 122 +#define B01111010 122 +#define B1111011 123 +#define B01111011 123 +#define B1111100 124 +#define B01111100 124 +#define B1111101 125 +#define B01111101 125 +#define B1111110 126 +#define B01111110 126 +#define B1111111 127 +#define B01111111 127 +#define B10000000 128 +#define B10000001 129 +#define B10000010 130 +#define B10000011 131 +#define B10000100 132 +#define B10000101 133 +#define B10000110 134 +#define B10000111 135 +#define B10001000 136 +#define B10001001 137 +#define B10001010 138 +#define B10001011 139 +#define B10001100 140 +#define B10001101 141 +#define B10001110 142 +#define B10001111 143 +#define B10010000 144 +#define B10010001 145 +#define B10010010 146 +#define B10010011 147 +#define B10010100 148 +#define B10010101 149 +#define B10010110 150 +#define B10010111 151 +#define B10011000 152 +#define B10011001 153 +#define B10011010 154 +#define B10011011 155 +#define B10011100 156 +#define B10011101 157 +#define B10011110 158 +#define B10011111 159 +#define B10100000 160 +#define B10100001 161 +#define B10100010 162 +#define B10100011 163 +#define B10100100 164 +#define B10100101 165 +#define B10100110 166 +#define B10100111 167 +#define B10101000 168 +#define B10101001 169 +#define B10101010 170 +#define B10101011 171 +#define B10101100 172 +#define B10101101 173 +#define B10101110 174 +#define B10101111 175 +#define B10110000 176 +#define B10110001 177 +#define B10110010 178 +#define B10110011 179 +#define B10110100 180 +#define B10110101 181 +#define B10110110 182 +#define B10110111 183 +#define B10111000 184 +#define B10111001 185 +#define B10111010 186 +#define B10111011 187 +#define B10111100 188 +#define B10111101 189 +#define B10111110 190 +#define B10111111 191 +#define B11000000 192 +#define B11000001 193 +#define B11000010 194 +#define B11000011 195 +#define B11000100 196 +#define B11000101 197 +#define B11000110 198 +#define B11000111 199 +#define B11001000 200 +#define B11001001 201 +#define B11001010 202 +#define B11001011 203 +#define B11001100 204 +#define B11001101 205 +#define B11001110 206 +#define B11001111 207 +#define B11010000 208 +#define B11010001 209 +#define B11010010 210 +#define B11010011 211 +#define B11010100 212 +#define B11010101 213 +#define B11010110 214 +#define B11010111 215 +#define B11011000 216 +#define B11011001 217 +#define B11011010 218 +#define B11011011 219 +#define B11011100 220 +#define B11011101 221 +#define B11011110 222 +#define B11011111 223 +#define B11100000 224 +#define B11100001 225 +#define B11100010 226 +#define B11100011 227 +#define B11100100 228 +#define B11100101 229 +#define B11100110 230 +#define B11100111 231 +#define B11101000 232 +#define B11101001 233 +#define B11101010 234 +#define B11101011 235 +#define B11101100 236 +#define B11101101 237 +#define B11101110 238 +#define B11101111 239 +#define B11110000 240 +#define B11110001 241 +#define B11110010 242 +#define B11110011 243 +#define B11110100 244 +#define B11110101 245 +#define B11110110 246 +#define B11110111 247 +#define B11111000 248 +#define B11111001 249 +#define B11111010 250 +#define B11111011 251 +#define B11111100 252 +#define B11111101 253 +#define B11111110 254 +#define B11111111 255 + +#endif diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/main.cpp b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/main.cpp new file mode 100644 index 0000000000000000000000000000000000000000..3d4e079d2a000a076350509dd424942df5949921 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/main.cpp @@ -0,0 +1,20 @@ +#include + +int main(void) +{ + init(); + +#if defined(USBCON) + USBDevice.attach(); +#endif + + setup(); + + for (;;) { + loop(); + if (serialEventRun) serialEventRun(); + } + + return 0; +} + diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/new.cpp b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/new.cpp new file mode 100644 index 0000000000000000000000000000000000000000..0f6d4220ef7aa262e233a7dedb336fcbdb16e672 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/new.cpp @@ -0,0 +1,18 @@ +#include + +void * operator new(size_t size) +{ + return malloc(size); +} + +void operator delete(void * ptr) +{ + free(ptr); +} + +int __cxa_guard_acquire(__guard *g) {return !*(char *)(g);}; +void __cxa_guard_release (__guard *g) {*(char *)g = 1;}; +void __cxa_guard_abort (__guard *) {}; + +void __cxa_pure_virtual(void) {}; + diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/new.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/new.h new file mode 100644 index 0000000000000000000000000000000000000000..cd940ce8b268bc83ebde653c11ce2621258a3541 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/new.h @@ -0,0 +1,22 @@ +/* Header to define new/delete operators as they aren't provided by avr-gcc by default + Taken from http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=59453 + */ + +#ifndef NEW_H +#define NEW_H + +#include + +void * operator new(size_t size); +void operator delete(void * ptr); + +__extension__ typedef int __guard __attribute__((mode (__DI__))); + +extern "C" int __cxa_guard_acquire(__guard *); +extern "C" void __cxa_guard_release (__guard *); +extern "C" void __cxa_guard_abort (__guard *); + +extern "C" void __cxa_pure_virtual(void); + +#endif + diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring.c b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring.c new file mode 100644 index 0000000000000000000000000000000000000000..ac8bb6f9b4e1ef85b617ccff4b0842ca9b5d697b --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring.c @@ -0,0 +1,324 @@ +/* + wiring.c - Partial implementation of the Wiring API for the ATmega8. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id$ +*/ + +#include "wiring_private.h" + +// the prescaler is set so that timer0 ticks every 64 clock cycles, and the +// the overflow handler is called every 256 ticks. +#define MICROSECONDS_PER_TIMER0_OVERFLOW (clockCyclesToMicroseconds(64 * 256)) + +// the whole number of milliseconds per timer0 overflow +#define MILLIS_INC (MICROSECONDS_PER_TIMER0_OVERFLOW / 1000) + +// the fractional number of milliseconds per timer0 overflow. we shift right +// by three to fit these numbers into a byte. (for the clock speeds we care +// about - 8 and 16 MHz - this doesn't lose precision.) +#define FRACT_INC ((MICROSECONDS_PER_TIMER0_OVERFLOW % 1000) >> 3) +#define FRACT_MAX (1000 >> 3) + +volatile unsigned long timer0_overflow_count = 0; +volatile unsigned long timer0_millis = 0; +static unsigned char timer0_fract = 0; + +#if defined(__AVR_ATtiny24__) || defined(__AVR_ATtiny44__) || defined(__AVR_ATtiny84__) +SIGNAL(TIM0_OVF_vect) +#else +SIGNAL(TIMER0_OVF_vect) +#endif +{ + // copy these to local variables so they can be stored in registers + // (volatile variables must be read from memory on every access) + unsigned long m = timer0_millis; + unsigned char f = timer0_fract; + + m += MILLIS_INC; + f += FRACT_INC; + if (f >= FRACT_MAX) { + f -= FRACT_MAX; + m += 1; + } + + timer0_fract = f; + timer0_millis = m; + timer0_overflow_count++; +} + +unsigned long millis() +{ + unsigned long m; + uint8_t oldSREG = SREG; + + // disable interrupts while we read timer0_millis or we might get an + // inconsistent value (e.g. in the middle of a write to timer0_millis) + cli(); + m = timer0_millis; + SREG = oldSREG; + + return m; +} + +unsigned long micros() { + unsigned long m; + uint8_t oldSREG = SREG, t; + + cli(); + m = timer0_overflow_count; +#if defined(TCNT0) + t = TCNT0; +#elif defined(TCNT0L) + t = TCNT0L; +#else + #error TIMER 0 not defined +#endif + + +#ifdef TIFR0 + if ((TIFR0 & _BV(TOV0)) && (t < 255)) + m++; +#else + if ((TIFR & _BV(TOV0)) && (t < 255)) + m++; +#endif + + SREG = oldSREG; + + return ((m << 8) + t) * (64 / clockCyclesPerMicrosecond()); +} + +void delay(unsigned long ms) +{ + uint16_t start = (uint16_t)micros(); + + while (ms > 0) { + if (((uint16_t)micros() - start) >= 1000) { + ms--; + start += 1000; + } + } +} + +/* Delay for the given number of microseconds. Assumes a 8 or 16 MHz clock. */ +void delayMicroseconds(unsigned int us) +{ + // calling avrlib's delay_us() function with low values (e.g. 1 or + // 2 microseconds) gives delays longer than desired. + //delay_us(us); +#if F_CPU >= 20000000L + // for the 20 MHz clock on rare Arduino boards + + // for a one-microsecond delay, simply wait 2 cycle and return. The overhead + // of the function call yields a delay of exactly a one microsecond. + __asm__ __volatile__ ( + "nop" "\n\t" + "nop"); //just waiting 2 cycle + if (--us == 0) + return; + + // the following loop takes a 1/5 of a microsecond (4 cycles) + // per iteration, so execute it five times for each microsecond of + // delay requested. + us = (us<<2) + us; // x5 us + + // account for the time taken in the preceeding commands. + us -= 2; + +#elif F_CPU >= 16000000L + // for the 16 MHz clock on most Arduino boards + + // for a one-microsecond delay, simply return. the overhead + // of the function call yields a delay of approximately 1 1/8 us. + if (--us == 0) + return; + + // the following loop takes a quarter of a microsecond (4 cycles) + // per iteration, so execute it four times for each microsecond of + // delay requested. + us <<= 2; + + // account for the time taken in the preceeding commands. + us -= 2; +#else + // for the 8 MHz internal clock on the ATmega168 + + // for a one- or two-microsecond delay, simply return. the overhead of + // the function calls takes more than two microseconds. can't just + // subtract two, since us is unsigned; we'd overflow. + if (--us == 0) + return; + if (--us == 0) + return; + + // the following loop takes half of a microsecond (4 cycles) + // per iteration, so execute it twice for each microsecond of + // delay requested. + us <<= 1; + + // partially compensate for the time taken by the preceeding commands. + // we can't subtract any more than this or we'd overflow w/ small delays. + us--; +#endif + + // busy wait + __asm__ __volatile__ ( + "1: sbiw %0,1" "\n\t" // 2 cycles + "brne 1b" : "=w" (us) : "0" (us) // 2 cycles + ); +} + +void init() +{ + // this needs to be called before setup() or some functions won't + // work there + sei(); + + // on the ATmega168, timer 0 is also used for fast hardware pwm + // (using phase-correct PWM would mean that timer 0 overflowed half as often + // resulting in different millis() behavior on the ATmega8 and ATmega168) +#if defined(TCCR0A) && defined(WGM01) + sbi(TCCR0A, WGM01); + sbi(TCCR0A, WGM00); +#endif + + // set timer 0 prescale factor to 64 +#if defined(__AVR_ATmega128__) + // CPU specific: different values for the ATmega128 + sbi(TCCR0, CS02); +#elif defined(TCCR0) && defined(CS01) && defined(CS00) + // this combination is for the standard atmega8 + sbi(TCCR0, CS01); + sbi(TCCR0, CS00); +#elif defined(TCCR0B) && defined(CS01) && defined(CS00) + // this combination is for the standard 168/328/1280/2560 + sbi(TCCR0B, CS01); + sbi(TCCR0B, CS00); +#elif defined(TCCR0A) && defined(CS01) && defined(CS00) + // this combination is for the __AVR_ATmega645__ series + sbi(TCCR0A, CS01); + sbi(TCCR0A, CS00); +#else + #error Timer 0 prescale factor 64 not set correctly +#endif + + // enable timer 0 overflow interrupt +#if defined(TIMSK) && defined(TOIE0) + sbi(TIMSK, TOIE0); +#elif defined(TIMSK0) && defined(TOIE0) + sbi(TIMSK0, TOIE0); +#else + #error Timer 0 overflow interrupt not set correctly +#endif + + // timers 1 and 2 are used for phase-correct hardware pwm + // this is better for motors as it ensures an even waveform + // note, however, that fast pwm mode can achieve a frequency of up + // 8 MHz (with a 16 MHz clock) at 50% duty cycle + +#if defined(TCCR1B) && defined(CS11) && defined(CS10) + TCCR1B = 0; + + // set timer 1 prescale factor to 64 + sbi(TCCR1B, CS11); +#if F_CPU >= 8000000L + sbi(TCCR1B, CS10); +#endif +#elif defined(TCCR1) && defined(CS11) && defined(CS10) + sbi(TCCR1, CS11); +#if F_CPU >= 8000000L + sbi(TCCR1, CS10); +#endif +#endif + // put timer 1 in 8-bit phase correct pwm mode +#if defined(TCCR1A) && defined(WGM10) + sbi(TCCR1A, WGM10); +#elif defined(TCCR1) + #warning this needs to be finished +#endif + + // set timer 2 prescale factor to 64 +#if defined(TCCR2) && defined(CS22) + sbi(TCCR2, CS22); +#elif defined(TCCR2B) && defined(CS22) + sbi(TCCR2B, CS22); +#else + #warning Timer 2 not finished (may not be present on this CPU) +#endif + + // configure timer 2 for phase correct pwm (8-bit) +#if defined(TCCR2) && defined(WGM20) + sbi(TCCR2, WGM20); +#elif defined(TCCR2A) && defined(WGM20) + sbi(TCCR2A, WGM20); +#else + #warning Timer 2 not finished (may not be present on this CPU) +#endif + +#if defined(TCCR3B) && defined(CS31) && defined(WGM30) + sbi(TCCR3B, CS31); // set timer 3 prescale factor to 64 + sbi(TCCR3B, CS30); + sbi(TCCR3A, WGM30); // put timer 3 in 8-bit phase correct pwm mode +#endif + +#if defined(TCCR4A) && defined(TCCR4B) && defined(TCCR4D) /* beginning of timer4 block for 32U4 and similar */ + sbi(TCCR4B, CS42); // set timer4 prescale factor to 64 + sbi(TCCR4B, CS41); + sbi(TCCR4B, CS40); + sbi(TCCR4D, WGM40); // put timer 4 in phase- and frequency-correct PWM mode + sbi(TCCR4A, PWM4A); // enable PWM mode for comparator OCR4A + sbi(TCCR4C, PWM4D); // enable PWM mode for comparator OCR4D +#else /* beginning of timer4 block for ATMEGA1280 and ATMEGA2560 */ +#if defined(TCCR4B) && defined(CS41) && defined(WGM40) + sbi(TCCR4B, CS41); // set timer 4 prescale factor to 64 + sbi(TCCR4B, CS40); + sbi(TCCR4A, WGM40); // put timer 4 in 8-bit phase correct pwm mode +#endif +#endif /* end timer4 block for ATMEGA1280/2560 and similar */ + +#if defined(TCCR5B) && defined(CS51) && defined(WGM50) + sbi(TCCR5B, CS51); // set timer 5 prescale factor to 64 + sbi(TCCR5B, CS50); + sbi(TCCR5A, WGM50); // put timer 5 in 8-bit phase correct pwm mode +#endif + +#if defined(ADCSRA) + // set a2d prescale factor to 128 + // 16 MHz / 128 = 125 KHz, inside the desired 50-200 KHz range. + // XXX: this will not work properly for other clock speeds, and + // this code should use F_CPU to determine the prescale factor. + sbi(ADCSRA, ADPS2); + sbi(ADCSRA, ADPS1); + sbi(ADCSRA, ADPS0); + + // enable a2d conversions + sbi(ADCSRA, ADEN); +#endif + + // the bootloader connects pins 0 and 1 to the USART; disconnect them + // here so they can be used as normal digital i/o; they will be + // reconnected in Serial.begin() +#if defined(UCSRB) + UCSRB = 0; +#elif defined(UCSR0B) + UCSR0B = 0; +#endif +} diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_analog.c b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_analog.c new file mode 100644 index 0000000000000000000000000000000000000000..23b01c65a0e7ffb8fb59f1d73cfee62f5ad62455 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_analog.c @@ -0,0 +1,282 @@ +/* + wiring_analog.c - analog input and output + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + Modified 28 September 2010 by Mark Sproul + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" +#include "pins_arduino.h" + +uint8_t analog_reference = DEFAULT; + +void analogReference(uint8_t mode) +{ + // can't actually set the register here because the default setting + // will connect AVCC and the AREF pin, which would cause a short if + // there's something connected to AREF. + analog_reference = mode; +} + +int analogRead(uint8_t pin) +{ + uint8_t low, high; + +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) + if (pin >= 54) pin -= 54; // allow for channel or pin numbers +#elif defined(__AVR_ATmega32U4__) + if (pin >= 18) pin -= 18; // allow for channel or pin numbers +#elif defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega644P__) + if (pin >= 24) pin -= 24; // allow for channel or pin numbers +#else + if (pin >= 14) pin -= 14; // allow for channel or pin numbers +#endif + +#if defined(__AVR_ATmega32U4__) + pin = analogPinToChannel(pin); + ADCSRB = (ADCSRB & ~(1 << MUX5)) | (((pin >> 3) & 0x01) << MUX5); +#elif defined(ADCSRB) && defined(MUX5) + // the MUX5 bit of ADCSRB selects whether we're reading from channels + // 0 to 7 (MUX5 low) or 8 to 15 (MUX5 high). + ADCSRB = (ADCSRB & ~(1 << MUX5)) | (((pin >> 3) & 0x01) << MUX5); +#endif + + // set the analog reference (high two bits of ADMUX) and select the + // channel (low 4 bits). this also sets ADLAR (left-adjust result) + // to 0 (the default). +#if defined(ADMUX) + ADMUX = (analog_reference << 6) | (pin & 0x07); +#endif + + // without a delay, we seem to read from the wrong channel + //delay(1); + +#if defined(ADCSRA) && defined(ADCL) + // start the conversion + sbi(ADCSRA, ADSC); + + // ADSC is cleared when the conversion finishes + while (bit_is_set(ADCSRA, ADSC)); + + // we have to read ADCL first; doing so locks both ADCL + // and ADCH until ADCH is read. reading ADCL second would + // cause the results of each conversion to be discarded, + // as ADCL and ADCH would be locked when it completed. + low = ADCL; + high = ADCH; +#else + // we dont have an ADC, return 0 + low = 0; + high = 0; +#endif + + // combine the two bytes + return (high << 8) | low; +} + +// Right now, PWM output only works on the pins with +// hardware support. These are defined in the appropriate +// pins_*.c file. For the rest of the pins, we default +// to digital output. +void analogWrite(uint8_t pin, int val) +{ + // We need to make sure the PWM output is enabled for those pins + // that support it, as we turn it off when digitally reading or + // writing with them. Also, make sure the pin is in output mode + // for consistenty with Wiring, which doesn't require a pinMode + // call for the analog output pins. + pinMode(pin, OUTPUT); + if (val == 0) + { + digitalWrite(pin, LOW); + } + else if (val == 255) + { + digitalWrite(pin, HIGH); + } + else + { + switch(digitalPinToTimer(pin)) + { + // XXX fix needed for atmega8 + #if defined(TCCR0) && defined(COM00) && !defined(__AVR_ATmega8__) + case TIMER0A: + // connect pwm to pin on timer 0 + sbi(TCCR0, COM00); + OCR0 = val; // set pwm duty + break; + #endif + + #if defined(TCCR0A) && defined(COM0A1) + case TIMER0A: + // connect pwm to pin on timer 0, channel A + sbi(TCCR0A, COM0A1); + OCR0A = val; // set pwm duty + break; + #endif + + #if defined(TCCR0A) && defined(COM0B1) + case TIMER0B: + // connect pwm to pin on timer 0, channel B + sbi(TCCR0A, COM0B1); + OCR0B = val; // set pwm duty + break; + #endif + + #if defined(TCCR1A) && defined(COM1A1) + case TIMER1A: + // connect pwm to pin on timer 1, channel A + sbi(TCCR1A, COM1A1); + OCR1A = val; // set pwm duty + break; + #endif + + #if defined(TCCR1A) && defined(COM1B1) + case TIMER1B: + // connect pwm to pin on timer 1, channel B + sbi(TCCR1A, COM1B1); + OCR1B = val; // set pwm duty + break; + #endif + + #if defined(TCCR2) && defined(COM21) + case TIMER2: + // connect pwm to pin on timer 2 + sbi(TCCR2, COM21); + OCR2 = val; // set pwm duty + break; + #endif + + #if defined(TCCR2A) && defined(COM2A1) + case TIMER2A: + // connect pwm to pin on timer 2, channel A + sbi(TCCR2A, COM2A1); + OCR2A = val; // set pwm duty + break; + #endif + + #if defined(TCCR2A) && defined(COM2B1) + case TIMER2B: + // connect pwm to pin on timer 2, channel B + sbi(TCCR2A, COM2B1); + OCR2B = val; // set pwm duty + break; + #endif + + #if defined(TCCR3A) && defined(COM3A1) + case TIMER3A: + // connect pwm to pin on timer 3, channel A + sbi(TCCR3A, COM3A1); + OCR3A = val; // set pwm duty + break; + #endif + + #if defined(TCCR3A) && defined(COM3B1) + case TIMER3B: + // connect pwm to pin on timer 3, channel B + sbi(TCCR3A, COM3B1); + OCR3B = val; // set pwm duty + break; + #endif + + #if defined(TCCR3A) && defined(COM3C1) + case TIMER3C: + // connect pwm to pin on timer 3, channel C + sbi(TCCR3A, COM3C1); + OCR3C = val; // set pwm duty + break; + #endif + + #if defined(TCCR4A) + case TIMER4A: + //connect pwm to pin on timer 4, channel A + sbi(TCCR4A, COM4A1); + #if defined(COM4A0) // only used on 32U4 + cbi(TCCR4A, COM4A0); + #endif + OCR4A = val; // set pwm duty + break; + #endif + + #if defined(TCCR4A) && defined(COM4B1) + case TIMER4B: + // connect pwm to pin on timer 4, channel B + sbi(TCCR4A, COM4B1); + OCR4B = val; // set pwm duty + break; + #endif + + #if defined(TCCR4A) && defined(COM4C1) + case TIMER4C: + // connect pwm to pin on timer 4, channel C + sbi(TCCR4A, COM4C1); + OCR4C = val; // set pwm duty + break; + #endif + + #if defined(TCCR4C) && defined(COM4D1) + case TIMER4D: + // connect pwm to pin on timer 4, channel D + sbi(TCCR4C, COM4D1); + #if defined(COM4D0) // only used on 32U4 + cbi(TCCR4C, COM4D0); + #endif + OCR4D = val; // set pwm duty + break; + #endif + + + #if defined(TCCR5A) && defined(COM5A1) + case TIMER5A: + // connect pwm to pin on timer 5, channel A + sbi(TCCR5A, COM5A1); + OCR5A = val; // set pwm duty + break; + #endif + + #if defined(TCCR5A) && defined(COM5B1) + case TIMER5B: + // connect pwm to pin on timer 5, channel B + sbi(TCCR5A, COM5B1); + OCR5B = val; // set pwm duty + break; + #endif + + #if defined(TCCR5A) && defined(COM5C1) + case TIMER5C: + // connect pwm to pin on timer 5, channel C + sbi(TCCR5A, COM5C1); + OCR5C = val; // set pwm duty + break; + #endif + + case NOT_ON_TIMER: + default: + if (val < 128) { + digitalWrite(pin, LOW); + } else { + digitalWrite(pin, HIGH); + } + } + } +} + diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_digital.c b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_digital.c new file mode 100644 index 0000000000000000000000000000000000000000..be323b1dfef01a9f3a16b7cad5d9af4cdebce69e --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_digital.c @@ -0,0 +1,178 @@ +/* + wiring_digital.c - digital input and output functions + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + Modified 28 September 2010 by Mark Sproul + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#define ARDUINO_MAIN +#include "wiring_private.h" +#include "pins_arduino.h" + +void pinMode(uint8_t pin, uint8_t mode) +{ + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + volatile uint8_t *reg, *out; + + if (port == NOT_A_PIN) return; + + // JWS: can I let the optimizer do this? + reg = portModeRegister(port); + out = portOutputRegister(port); + + if (mode == INPUT) { + uint8_t oldSREG = SREG; + cli(); + *reg &= ~bit; + *out &= ~bit; + SREG = oldSREG; + } else if (mode == INPUT_PULLUP) { + uint8_t oldSREG = SREG; + cli(); + *reg &= ~bit; + *out |= bit; + SREG = oldSREG; + } else { + uint8_t oldSREG = SREG; + cli(); + *reg |= bit; + SREG = oldSREG; + } +} + +// Forcing this inline keeps the callers from having to push their own stuff +// on the stack. It is a good performance win and only takes 1 more byte per +// user than calling. (It will take more bytes on the 168.) +// +// But shouldn't this be moved into pinMode? Seems silly to check and do on +// each digitalread or write. +// +// Mark Sproul: +// - Removed inline. Save 170 bytes on atmega1280 +// - changed to a switch statment; added 32 bytes but much easier to read and maintain. +// - Added more #ifdefs, now compiles for atmega645 +// +//static inline void turnOffPWM(uint8_t timer) __attribute__ ((always_inline)); +//static inline void turnOffPWM(uint8_t timer) +static void turnOffPWM(uint8_t timer) +{ + switch (timer) + { + #if defined(TCCR1A) && defined(COM1A1) + case TIMER1A: cbi(TCCR1A, COM1A1); break; + #endif + #if defined(TCCR1A) && defined(COM1B1) + case TIMER1B: cbi(TCCR1A, COM1B1); break; + #endif + + #if defined(TCCR2) && defined(COM21) + case TIMER2: cbi(TCCR2, COM21); break; + #endif + + #if defined(TCCR0A) && defined(COM0A1) + case TIMER0A: cbi(TCCR0A, COM0A1); break; + #endif + + #if defined(TIMER0B) && defined(COM0B1) + case TIMER0B: cbi(TCCR0A, COM0B1); break; + #endif + #if defined(TCCR2A) && defined(COM2A1) + case TIMER2A: cbi(TCCR2A, COM2A1); break; + #endif + #if defined(TCCR2A) && defined(COM2B1) + case TIMER2B: cbi(TCCR2A, COM2B1); break; + #endif + + #if defined(TCCR3A) && defined(COM3A1) + case TIMER3A: cbi(TCCR3A, COM3A1); break; + #endif + #if defined(TCCR3A) && defined(COM3B1) + case TIMER3B: cbi(TCCR3A, COM3B1); break; + #endif + #if defined(TCCR3A) && defined(COM3C1) + case TIMER3C: cbi(TCCR3A, COM3C1); break; + #endif + + #if defined(TCCR4A) && defined(COM4A1) + case TIMER4A: cbi(TCCR4A, COM4A1); break; + #endif + #if defined(TCCR4A) && defined(COM4B1) + case TIMER4B: cbi(TCCR4A, COM4B1); break; + #endif + #if defined(TCCR4A) && defined(COM4C1) + case TIMER4C: cbi(TCCR4A, COM4C1); break; + #endif + #if defined(TCCR4C) && defined(COM4D1) + case TIMER4D: cbi(TCCR4C, COM4D1); break; + #endif + + #if defined(TCCR5A) + case TIMER5A: cbi(TCCR5A, COM5A1); break; + case TIMER5B: cbi(TCCR5A, COM5B1); break; + case TIMER5C: cbi(TCCR5A, COM5C1); break; + #endif + } +} + +void digitalWrite(uint8_t pin, uint8_t val) +{ + uint8_t timer = digitalPinToTimer(pin); + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + volatile uint8_t *out; + + if (port == NOT_A_PIN) return; + + // If the pin that support PWM output, we need to turn it off + // before doing a digital write. + if (timer != NOT_ON_TIMER) turnOffPWM(timer); + + out = portOutputRegister(port); + + uint8_t oldSREG = SREG; + cli(); + + if (val == LOW) { + *out &= ~bit; + } else { + *out |= bit; + } + + SREG = oldSREG; +} + +int digitalRead(uint8_t pin) +{ + uint8_t timer = digitalPinToTimer(pin); + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + + if (port == NOT_A_PIN) return LOW; + + // If the pin that support PWM output, we need to turn it off + // before getting a digital reading. + if (timer != NOT_ON_TIMER) turnOffPWM(timer); + + if (*portInputRegister(port) & bit) return HIGH; + return LOW; +} diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_private.h b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_private.h new file mode 100644 index 0000000000000000000000000000000000000000..f678265679ea57d5e8e64c9fb358fe6070729cf7 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_private.h @@ -0,0 +1,71 @@ +/* + wiring_private.h - Internal header file. + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.h 239 2007-01-12 17:58:39Z mellis $ +*/ + +#ifndef WiringPrivate_h +#define WiringPrivate_h + +#include +#include +#include +#include + +#include "Arduino.h" + +#ifdef __cplusplus +extern "C"{ +#endif + +#ifndef cbi +#define cbi(sfr, bit) (_SFR_BYTE(sfr) &= ~_BV(bit)) +#endif +#ifndef sbi +#define sbi(sfr, bit) (_SFR_BYTE(sfr) |= _BV(bit)) +#endif + +#define EXTERNAL_INT_0 0 +#define EXTERNAL_INT_1 1 +#define EXTERNAL_INT_2 2 +#define EXTERNAL_INT_3 3 +#define EXTERNAL_INT_4 4 +#define EXTERNAL_INT_5 5 +#define EXTERNAL_INT_6 6 +#define EXTERNAL_INT_7 7 + +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +#define EXTERNAL_NUM_INTERRUPTS 8 +#elif defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega644P__) +#define EXTERNAL_NUM_INTERRUPTS 3 +#elif defined(__AVR_ATmega32U4__) +#define EXTERNAL_NUM_INTERRUPTS 4 +#else +#define EXTERNAL_NUM_INTERRUPTS 2 +#endif + +typedef void (*voidFuncPtr)(void); + +#ifdef __cplusplus +} // extern "C" +#endif + +#endif diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_pulse.c b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_pulse.c new file mode 100644 index 0000000000000000000000000000000000000000..0d968865d2ff76850bb672bbb952bced655ad9f2 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_pulse.c @@ -0,0 +1,69 @@ +/* + wiring_pulse.c - pulseIn() function + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" +#include "pins_arduino.h" + +/* Measures the length (in microseconds) of a pulse on the pin; state is HIGH + * or LOW, the type of pulse to measure. Works on pulses from 2-3 microseconds + * to 3 minutes in length, but must be called at least a few dozen microseconds + * before the start of the pulse. */ +unsigned long pulseIn(uint8_t pin, uint8_t state, unsigned long timeout) +{ + // cache the port and bit of the pin in order to speed up the + // pulse width measuring loop and achieve finer resolution. calling + // digitalRead() instead yields much coarser resolution. + uint8_t bit = digitalPinToBitMask(pin); + uint8_t port = digitalPinToPort(pin); + uint8_t stateMask = (state ? bit : 0); + unsigned long width = 0; // keep initialization out of time critical area + + // convert the timeout from microseconds to a number of times through + // the initial loop; it takes 16 clock cycles per iteration. + unsigned long numloops = 0; + unsigned long maxloops = microsecondsToClockCycles(timeout) / 16; + + // wait for any previous pulse to end + while ((*portInputRegister(port) & bit) == stateMask) + if (numloops++ == maxloops) + return 0; + + // wait for the pulse to start + while ((*portInputRegister(port) & bit) != stateMask) + if (numloops++ == maxloops) + return 0; + + // wait for the pulse to stop + while ((*portInputRegister(port) & bit) == stateMask) { + if (numloops++ == maxloops) + return 0; + width++; + } + + // convert the reading to microseconds. The loop has been determined + // to be 20 clock cycles long and have about 16 clocks between the edge + // and the start of the loop. There will be some error introduced by + // the interrupt handlers. + return clockCyclesToMicroseconds(width * 21 + 16); +} diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_shift.c b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_shift.c new file mode 100644 index 0000000000000000000000000000000000000000..cfe786758c57f2fb019827301dfcfbef0f141cb1 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/cores/arduino/wiring_shift.c @@ -0,0 +1,55 @@ +/* + wiring_shift.c - shiftOut() function + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2005-2006 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.c 248 2007-02-03 15:36:30Z mellis $ +*/ + +#include "wiring_private.h" + +uint8_t shiftIn(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder) { + uint8_t value = 0; + uint8_t i; + + for (i = 0; i < 8; ++i) { + digitalWrite(clockPin, HIGH); + if (bitOrder == LSBFIRST) + value |= digitalRead(dataPin) << i; + else + value |= digitalRead(dataPin) << (7 - i); + digitalWrite(clockPin, LOW); + } + return value; +} + +void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val) +{ + uint8_t i; + + for (i = 0; i < 8; i++) { + if (bitOrder == LSBFIRST) + digitalWrite(dataPin, !!(val & (1 << i))); + else + digitalWrite(dataPin, !!(val & (1 << (7 - i)))); + + digitalWrite(clockPin, HIGH); + digitalWrite(clockPin, LOW); + } +} diff --git a/ArduinoAddons/Arduino_1.x.x/rambo/variants/standard/pins_arduino.h b/ArduinoAddons/Arduino_1.x.x/rambo/variants/standard/pins_arduino.h new file mode 100644 index 0000000000000000000000000000000000000000..f49a23fc02d9092aa5f3d72b266cd46292bf1c20 --- /dev/null +++ b/ArduinoAddons/Arduino_1.x.x/rambo/variants/standard/pins_arduino.h @@ -0,0 +1,411 @@ +/* + pins_arduino.h - Pin definition functions for Arduino + Part of Arduino - http://www.arduino.cc/ + + Copyright (c) 2007 David A. Mellis + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General + Public License along with this library; if not, write to the + Free Software Foundation, Inc., 59 Temple Place, Suite 330, + Boston, MA 02111-1307 USA + + $Id: wiring.h 249 2007-02-03 16:52:51Z mellis $ +*/ + +#ifndef Pins_Arduino_h +#define Pins_Arduino_h + +#include + +#define NUM_DIGITAL_PINS 82 +#define NUM_ANALOG_INPUTS 16 +#define analogInputToDigitalPin(p) ((p < 16) ? (p) + 54 : -1) +#define digitalPinHasPWM(p) (((p) >= 2 && (p) <= 13) || ((p) >= 44 && (p)<= 46)) + +static const uint8_t SS = 53; +static const uint8_t MOSI = 51; +static const uint8_t MISO = 50; +static const uint8_t SCK = 52; + +static const uint8_t SDA = 20; +static const uint8_t SCL = 21; +static const uint8_t LED_BUILTIN = 13; + +static const uint8_t A0 = 54; +static const uint8_t A1 = 55; +static const uint8_t A2 = 56; +static const uint8_t A3 = 57; +static const uint8_t A4 = 58; +static const uint8_t A5 = 59; +static const uint8_t A6 = 60; +static const uint8_t A7 = 61; +static const uint8_t A8 = 62; +static const uint8_t A9 = 63; +static const uint8_t A10 = 64; +static const uint8_t A11 = 65; +static const uint8_t A12 = 66; +static const uint8_t A13 = 67; +static const uint8_t A14 = 68; +static const uint8_t A15 = 69; + +// A majority of the pins are NOT PCINTs, SO BE WARNED (i.e. you cannot use them as receive pins) +// Only pins available for RECEIVE (TRANSMIT can be on any pin): +// (I've deliberately left out pin mapping to the Hardware USARTs - seems senseless to me) +// Pins: 10, 11, 12, 13, 50, 51, 52, 53, 62, 63, 64, 65, 66, 67, 68, 69 + +#define digitalPinToPCICR(p) ( (((p) >= 10) && ((p) <= 13)) || \ + (((p) >= 50) && ((p) <= 53)) || \ + (((p) >= 62) && ((p) <= 69)) ? (&PCICR) : ((uint8_t *)0) ) + +#define digitalPinToPCICRbit(p) ( (((p) >= 10) && ((p) <= 13)) || (((p) >= 50) && ((p) <= 53)) ? 0 : \ + ( (((p) >= 62) && ((p) <= 69)) ? 2 : \ + 0 ) ) + +#define digitalPinToPCMSK(p) ( (((p) >= 10) && ((p) <= 13)) || (((p) >= 50) && ((p) <= 53)) ? (&PCMSK0) : \ + ( (((p) >= 62) && ((p) <= 69)) ? (&PCMSK2) : \ + ((uint8_t *)0) ) ) + +#define digitalPinToPCMSKbit(p) ( (((p) >= 10) && ((p) <= 13)) ? ((p) - 6) : \ + ( ((p) == 50) ? 3 : \ + ( ((p) == 51) ? 2 : \ + ( ((p) == 52) ? 1 : \ + ( ((p) == 53) ? 0 : \ + ( (((p) >= 62) && ((p) <= 69)) ? ((p) - 62) : \ + 0 ) ) ) ) ) ) + +#ifdef ARDUINO_MAIN + +const uint16_t PROGMEM port_to_mode_PGM[] = { + NOT_A_PORT, + (uint16_t) &DDRA, + (uint16_t) &DDRB, + (uint16_t) &DDRC, + (uint16_t) &DDRD, + (uint16_t) &DDRE, + (uint16_t) &DDRF, + (uint16_t) &DDRG, + (uint16_t) &DDRH, + NOT_A_PORT, + (uint16_t) &DDRJ, + (uint16_t) &DDRK, + (uint16_t) &DDRL, +}; + +const uint16_t PROGMEM port_to_output_PGM[] = { + NOT_A_PORT, + (uint16_t) &PORTA, + (uint16_t) &PORTB, + (uint16_t) &PORTC, + (uint16_t) &PORTD, + (uint16_t) &PORTE, + (uint16_t) &PORTF, + (uint16_t) &PORTG, + (uint16_t) &PORTH, + NOT_A_PORT, + (uint16_t) &PORTJ, + (uint16_t) &PORTK, + (uint16_t) &PORTL, +}; + +const uint16_t PROGMEM port_to_input_PGM[] = { + NOT_A_PIN, + (uint16_t) &PINA, + (uint16_t) &PINB, + (uint16_t) &PINC, + (uint16_t) &PIND, + (uint16_t) &PINE, + (uint16_t) &PINF, + (uint16_t) &PING, + (uint16_t) &PINH, + NOT_A_PIN, + (uint16_t) &PINJ, + (uint16_t) &PINK, + (uint16_t) &PINL, +}; + +const uint8_t PROGMEM digital_pin_to_port_PGM[] = { + // PORTLIST + // ------------------------------------------- + PE , // PE 0 ** 0 ** USART0_RX + PE , // PE 1 ** 1 ** USART0_TX + PE , // PE 4 ** 2 ** PWM2 + PE , // PE 5 ** 3 ** PWM3 + PG , // PG 5 ** 4 ** PWM4 + PE , // PE 3 ** 5 ** PWM5 + PH , // PH 3 ** 6 ** PWM6 + PH , // PH 4 ** 7 ** PWM7 + PH , // PH 5 ** 8 ** PWM8 + PH , // PH 6 ** 9 ** PWM9 + PB , // PB 4 ** 10 ** PWM10 + PB , // PB 5 ** 11 ** PWM11 + PB , // PB 6 ** 12 ** PWM12 + PB , // PB 7 ** 13 ** PWM13 + PJ , // PJ 1 ** 14 ** USART3_TX + PJ , // PJ 0 ** 15 ** USART3_RX + PH , // PH 1 ** 16 ** USART2_TX + PH , // PH 0 ** 17 ** USART2_RX + PD , // PD 3 ** 18 ** USART1_TX + PD , // PD 2 ** 19 ** USART1_RX + PD , // PD 1 ** 20 ** I2C_SDA + PD , // PD 0 ** 21 ** I2C_SCL + PA , // PA 0 ** 22 ** D22 + PA , // PA 1 ** 23 ** D23 + PA , // PA 2 ** 24 ** D24 + PA , // PA 3 ** 25 ** D25 + PA , // PA 4 ** 26 ** D26 + PA , // PA 5 ** 27 ** D27 + PA , // PA 6 ** 28 ** D28 + PA , // PA 7 ** 29 ** D29 + PC , // PC 7 ** 30 ** D30 + PC , // PC 6 ** 31 ** D31 + PC , // PC 5 ** 32 ** D32 + PC , // PC 4 ** 33 ** D33 + PC , // PC 3 ** 34 ** D34 + PC , // PC 2 ** 35 ** D35 + PC , // PC 1 ** 36 ** D36 + PC , // PC 0 ** 37 ** D37 + PD , // PD 7 ** 38 ** D38 + PG , // PG 2 ** 39 ** D39 + PG , // PG 1 ** 40 ** D40 + PG , // PG 0 ** 41 ** D41 + PL , // PL 7 ** 42 ** D42 + PL , // PL 6 ** 43 ** D43 + PL , // PL 5 ** 44 ** D44 + PL , // PL 4 ** 45 ** D45 + PL , // PL 3 ** 46 ** D46 + PL , // PL 2 ** 47 ** D47 + PL , // PL 1 ** 48 ** D48 + PL , // PL 0 ** 49 ** D49 + PB , // PB 3 ** 50 ** SPI_MISO + PB , // PB 2 ** 51 ** SPI_MOSI + PB , // PB 1 ** 52 ** SPI_SCK + PB , // PB 0 ** 53 ** SPI_SS + PF , // PF 0 ** 54 ** A0 + PF , // PF 1 ** 55 ** A1 + PF , // PF 2 ** 56 ** A2 + PF , // PF 3 ** 57 ** A3 + PF , // PF 4 ** 58 ** A4 + PF , // PF 5 ** 59 ** A5 + PF , // PF 6 ** 60 ** A6 + PF , // PF 7 ** 61 ** A7 + PK , // PK 0 ** 62 ** A8 + PK , // PK 1 ** 63 ** A9 + PK , // PK 2 ** 64 ** A10 + PK , // PK 3 ** 65 ** A11 + PK , // PK 4 ** 66 ** A12 + PK , // PK 5 ** 67 ** A13 + PK , // PK 6 ** 68 ** A14 + PK , // PK 7 ** 69 ** A15 + PG , // PG 4 ** 70 ** D70 + PG , // PG 3 ** 71 ** D71 + PJ , // PJ 2 ** 72 ** D72 + PJ , // PJ 3 ** 73 ** D73 + PJ , // PJ 7 ** 74 ** D74 + PJ , // PJ 4 ** 75 ** D75 + PJ , // PJ 5 ** 76 ** D76 + PJ , // PJ 6 ** 77 ** D77 + PE , // PE 2 ** 78 ** D78 + PE , // PE 6 ** 79 ** D79 + PE , // PE 7 ** 80 ** D80 + PD , // PD 4 ** 81 ** D81 + PD , // PD 5 ** 82 ** D82 + PD , // PD 6 ** 83 ** D83 + PH , // PH 2 ** 84 ** D84 + PH , // PH 7 ** 85 ** D85 +}; + +const uint8_t PROGMEM digital_pin_to_bit_mask_PGM[] = { + // PIN IN PORT + // ------------------------------------------- + _BV( 0 ) , // PE 0 ** 0 ** USART0_RX + _BV( 1 ) , // PE 1 ** 1 ** USART0_TX + _BV( 4 ) , // PE 4 ** 2 ** PWM2 + _BV( 5 ) , // PE 5 ** 3 ** PWM3 + _BV( 5 ) , // PG 5 ** 4 ** PWM4 + _BV( 3 ) , // PE 3 ** 5 ** PWM5 + _BV( 3 ) , // PH 3 ** 6 ** PWM6 + _BV( 4 ) , // PH 4 ** 7 ** PWM7 + _BV( 5 ) , // PH 5 ** 8 ** PWM8 + _BV( 6 ) , // PH 6 ** 9 ** PWM9 + _BV( 4 ) , // PB 4 ** 10 ** PWM10 + _BV( 5 ) , // PB 5 ** 11 ** PWM11 + _BV( 6 ) , // PB 6 ** 12 ** PWM12 + _BV( 7 ) , // PB 7 ** 13 ** PWM13 + _BV( 1 ) , // PJ 1 ** 14 ** USART3_TX + _BV( 0 ) , // PJ 0 ** 15 ** USART3_RX + _BV( 1 ) , // PH 1 ** 16 ** USART2_TX + _BV( 0 ) , // PH 0 ** 17 ** USART2_RX + _BV( 3 ) , // PD 3 ** 18 ** USART1_TX + _BV( 2 ) , // PD 2 ** 19 ** USART1_RX + _BV( 1 ) , // PD 1 ** 20 ** I2C_SDA + _BV( 0 ) , // PD 0 ** 21 ** I2C_SCL + _BV( 0 ) , // PA 0 ** 22 ** D22 + _BV( 1 ) , // PA 1 ** 23 ** D23 + _BV( 2 ) , // PA 2 ** 24 ** D24 + _BV( 3 ) , // PA 3 ** 25 ** D25 + _BV( 4 ) , // PA 4 ** 26 ** D26 + _BV( 5 ) , // PA 5 ** 27 ** D27 + _BV( 6 ) , // PA 6 ** 28 ** D28 + _BV( 7 ) , // PA 7 ** 29 ** D29 + _BV( 7 ) , // PC 7 ** 30 ** D30 + _BV( 6 ) , // PC 6 ** 31 ** D31 + _BV( 5 ) , // PC 5 ** 32 ** D32 + _BV( 4 ) , // PC 4 ** 33 ** D33 + _BV( 3 ) , // PC 3 ** 34 ** D34 + _BV( 2 ) , // PC 2 ** 35 ** D35 + _BV( 1 ) , // PC 1 ** 36 ** D36 + _BV( 0 ) , // PC 0 ** 37 ** D37 + _BV( 7 ) , // PD 7 ** 38 ** D38 + _BV( 2 ) , // PG 2 ** 39 ** D39 + _BV( 1 ) , // PG 1 ** 40 ** D40 + _BV( 0 ) , // PG 0 ** 41 ** D41 + _BV( 7 ) , // PL 7 ** 42 ** D42 + _BV( 6 ) , // PL 6 ** 43 ** D43 + _BV( 5 ) , // PL 5 ** 44 ** D44 + _BV( 4 ) , // PL 4 ** 45 ** D45 + _BV( 3 ) , // PL 3 ** 46 ** D46 + _BV( 2 ) , // PL 2 ** 47 ** D47 + _BV( 1 ) , // PL 1 ** 48 ** D48 + _BV( 0 ) , // PL 0 ** 49 ** D49 + _BV( 3 ) , // PB 3 ** 50 ** SPI_MISO + _BV( 2 ) , // PB 2 ** 51 ** SPI_MOSI + _BV( 1 ) , // PB 1 ** 52 ** SPI_SCK + _BV( 0 ) , // PB 0 ** 53 ** SPI_SS + _BV( 0 ) , // PF 0 ** 54 ** A0 + _BV( 1 ) , // PF 1 ** 55 ** A1 + _BV( 2 ) , // PF 2 ** 56 ** A2 + _BV( 3 ) , // PF 3 ** 57 ** A3 + _BV( 4 ) , // PF 4 ** 58 ** A4 + _BV( 5 ) , // PF 5 ** 59 ** A5 + _BV( 6 ) , // PF 6 ** 60 ** A6 + _BV( 7 ) , // PF 7 ** 61 ** A7 + _BV( 0 ) , // PK 0 ** 62 ** A8 + _BV( 1 ) , // PK 1 ** 63 ** A9 + _BV( 2 ) , // PK 2 ** 64 ** A10 + _BV( 3 ) , // PK 3 ** 65 ** A11 + _BV( 4 ) , // PK 4 ** 66 ** A12 + _BV( 5 ) , // PK 5 ** 67 ** A13 + _BV( 6 ) , // PK 6 ** 68 ** A14 + _BV( 7 ) , // PK 7 ** 69 ** A15 + _BV( 4 ) , // PG 4 ** 70 ** D70 + _BV( 3 ) , // PG 3 ** 71 ** D71 + _BV( 2 ) , // PJ 2 ** 72 ** D72 + _BV( 3 ) , // PJ 3 ** 73 ** D73 + _BV( 7 ) , // PJ 7 ** 74 ** D74 + _BV( 4 ) , // PJ 4 ** 75 ** D75 + _BV( 5 ) , // PJ 5 ** 76 ** D76 + _BV( 6 ) , // PJ 6 ** 77 ** D77 + _BV( 2 ) , // PE 2 ** 78 ** D78 + _BV( 6 ) , // PE 6 ** 79 ** D79 + _BV( 7 ) , // PE 7 ** 80 ** D80 + _BV( 4 ) , // PD 4 ** 81 ** D81 + _BV( 5 ) , // PD 5 ** 82 ** D82 + _BV( 6 ) , // PD 6 ** 83 ** D83 + _BV( 2 ) , // PH 2 ** 84 ** D84 + _BV( 7 ) , // PH 7 ** 85 ** D85 +}; + +const uint8_t PROGMEM digital_pin_to_timer_PGM[] = { + // TIMERS + // ------------------------------------------- + NOT_ON_TIMER , // PE 0 ** 0 ** USART0_RX + NOT_ON_TIMER , // PE 1 ** 1 ** USART0_TX + TIMER3B , // PE 4 ** 2 ** PWM2 + TIMER3C , // PE 5 ** 3 ** PWM3 + TIMER0B , // PG 5 ** 4 ** PWM4 + TIMER3A , // PE 3 ** 5 ** PWM5 + TIMER4A , // PH 3 ** 6 ** PWM6 + TIMER4B , // PH 4 ** 7 ** PWM7 + TIMER4C , // PH 5 ** 8 ** PWM8 + TIMER2B , // PH 6 ** 9 ** PWM9 + TIMER2A , // PB 4 ** 10 ** PWM10 + TIMER1A , // PB 5 ** 11 ** PWM11 + TIMER1B , // PB 6 ** 12 ** PWM12 + TIMER0A , // PB 7 ** 13 ** PWM13 + NOT_ON_TIMER , // PJ 1 ** 14 ** USART3_TX + NOT_ON_TIMER , // PJ 0 ** 15 ** USART3_RX + NOT_ON_TIMER , // PH 1 ** 16 ** USART2_TX + NOT_ON_TIMER , // PH 0 ** 17 ** USART2_RX + NOT_ON_TIMER , // PD 3 ** 18 ** USART1_TX + NOT_ON_TIMER , // PD 2 ** 19 ** USART1_RX + NOT_ON_TIMER , // PD 1 ** 20 ** I2C_SDA + NOT_ON_TIMER , // PD 0 ** 21 ** I2C_SCL + NOT_ON_TIMER , // PA 0 ** 22 ** D22 + NOT_ON_TIMER , // PA 1 ** 23 ** D23 + NOT_ON_TIMER , // PA 2 ** 24 ** D24 + NOT_ON_TIMER , // PA 3 ** 25 ** D25 + NOT_ON_TIMER , // PA 4 ** 26 ** D26 + NOT_ON_TIMER , // PA 5 ** 27 ** D27 + NOT_ON_TIMER , // PA 6 ** 28 ** D28 + NOT_ON_TIMER , // PA 7 ** 29 ** D29 + NOT_ON_TIMER , // PC 7 ** 30 ** D30 + NOT_ON_TIMER , // PC 6 ** 31 ** D31 + NOT_ON_TIMER , // PC 5 ** 32 ** D32 + NOT_ON_TIMER , // PC 4 ** 33 ** D33 + NOT_ON_TIMER , // PC 3 ** 34 ** D34 + NOT_ON_TIMER , // PC 2 ** 35 ** D35 + NOT_ON_TIMER , // PC 1 ** 36 ** D36 + NOT_ON_TIMER , // PC 0 ** 37 ** D37 + NOT_ON_TIMER , // PD 7 ** 38 ** D38 + NOT_ON_TIMER , // PG 2 ** 39 ** D39 + NOT_ON_TIMER , // PG 1 ** 40 ** D40 + NOT_ON_TIMER , // PG 0 ** 41 ** D41 + NOT_ON_TIMER , // PL 7 ** 42 ** D42 + NOT_ON_TIMER , // PL 6 ** 43 ** D43 + TIMER5C , // PL 5 ** 44 ** D44 + TIMER5B , // PL 4 ** 45 ** D45 + TIMER5A , // PL 3 ** 46 ** D46 + NOT_ON_TIMER , // PL 2 ** 47 ** D47 + NOT_ON_TIMER , // PL 1 ** 48 ** D48 + NOT_ON_TIMER , // PL 0 ** 49 ** D49 + NOT_ON_TIMER , // PB 3 ** 50 ** SPI_MISO + NOT_ON_TIMER , // PB 2 ** 51 ** SPI_MOSI + NOT_ON_TIMER , // PB 1 ** 52 ** SPI_SCK + NOT_ON_TIMER , // PB 0 ** 53 ** SPI_SS + NOT_ON_TIMER , // PF 0 ** 54 ** A0 + NOT_ON_TIMER , // PF 1 ** 55 ** A1 + NOT_ON_TIMER , // PF 2 ** 56 ** A2 + NOT_ON_TIMER , // PF 3 ** 57 ** A3 + NOT_ON_TIMER , // PF 4 ** 58 ** A4 + NOT_ON_TIMER , // PF 5 ** 59 ** A5 + NOT_ON_TIMER , // PF 6 ** 60 ** A6 + NOT_ON_TIMER , // PF 7 ** 61 ** A7 + NOT_ON_TIMER , // PK 0 ** 62 ** A8 + NOT_ON_TIMER , // PK 1 ** 63 ** A9 + NOT_ON_TIMER , // PK 2 ** 64 ** A10 + NOT_ON_TIMER , // PK 3 ** 65 ** A11 + NOT_ON_TIMER , // PK 4 ** 66 ** A12 + NOT_ON_TIMER , // PK 5 ** 67 ** A13 + NOT_ON_TIMER , // PK 6 ** 68 ** A14 + NOT_ON_TIMER , // PK 7 ** 69 ** A15 + NOT_ON_TIMER , // PG 4 ** 70 ** D70 + NOT_ON_TIMER , // PG 3 ** 71 ** D71 + NOT_ON_TIMER , // PJ 2 ** 72 ** D72 + NOT_ON_TIMER , // PJ 3 ** 73 ** D73 + NOT_ON_TIMER , // PJ 7 ** 74 ** D74 + NOT_ON_TIMER , // PJ 4 ** 75 ** D75 + NOT_ON_TIMER , // PJ 5 ** 76 ** D76 + NOT_ON_TIMER , // PJ 6 ** 77 ** D77 + NOT_ON_TIMER , // PE 2 ** 78 ** D78 + NOT_ON_TIMER , // PE 6 ** 79 ** D79 + NOT_ON_TIMER , // PE 7 ** 80 ** D80 + NOT_ON_TIMER , // PD 4 ** 81 ** D81 + NOT_ON_TIMER , // PD 5 ** 82 ** D82 + NOT_ON_TIMER , // PD 6 ** 83 ** D83 + NOT_ON_TIMER , // PH 2 ** 84 ** D84 + NOT_ON_TIMER , // PH 7 ** 85 ** D85 +}; + +#endif + +#endif diff --git a/Marlin/BlinkM.cpp b/Marlin/BlinkM.cpp new file mode 100644 index 0000000000000000000000000000000000000000..de604ecd355bf98fd429ffca0eda1cc8125259fa --- /dev/null +++ b/Marlin/BlinkM.cpp @@ -0,0 +1,29 @@ +/* + BlinkM.cpp - Library for controlling a BlinkM over i2c + Created by Tim Koster, August 21 2013. +*/ +#include "Marlin.h" +#ifdef BLINKM + +#if (ARDUINO >= 100) + # include "Arduino.h" +#else + # include "WProgram.h" +#endif + +#include "BlinkM.h" + +void SendColors(byte red, byte grn, byte blu) +{ + Wire.begin(); + Wire.beginTransmission(0x09); + Wire.write('o'); //to disable ongoing script, only needs to be used once + Wire.write('n'); + Wire.write(red); + Wire.write(grn); + Wire.write(blu); + Wire.endTransmission(); +} + +#endif //BLINKM + diff --git a/Marlin/BlinkM.h b/Marlin/BlinkM.h new file mode 100644 index 0000000000000000000000000000000000000000..5136828782dfd8a450e3b52db0a99b8930c1cf2b --- /dev/null +++ b/Marlin/BlinkM.h @@ -0,0 +1,14 @@ +/* + BlinkM.h + Library header file for BlinkM library + */ +#if (ARDUINO >= 100) + # include "Arduino.h" +#else + # include "WProgram.h" +#endif + +#include "Wire.h" + +void SendColors(byte red, byte grn, byte blu); + diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 234ebf37ef45b27fe0d2c276da31e27a770276a5..b3e48c43fbdabc3965f1230c8d8ca823d671992f 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -1,13 +1,20 @@ #ifndef CONFIGURATION_H #define CONFIGURATION_H -// This configurtion file contains the basic settings. -// Advanced settings can be found in Configuration_adv.h +// This configuration file contains the basic settings. +// Advanced settings can be found in Configuration_adv.h // BASIC SETTINGS: select your board type, temperature sensor type, axis scaling, and endstop configuration -//User specified version info of this build to display in [Pronterface, etc] terminal window during startup. -//Implementation of an idea by Prof Braino to inform user that any changes made -//to this build by the user have been successfully uploaded into firmware. +//=========================================================================== +//============================= DELTA Printer =============================== +//=========================================================================== +// For a Delta printer rplace the configuration files wilth the files in the +// example_configurations/delta directory. +// + +// User-specified version info of this build to display in [Pronterface, etc] terminal window during +// startup. Implementation of an idea by Prof Braino to inform user that any changes made to this +// build by the user have been successfully uploaded into firmware. #define STRING_VERSION_CONFIG_H __DATE__ " " __TIME__ // build date and time #define STRING_CONFIG_H_AUTHOR "(David Braam)" //Who made the changes. @@ -25,46 +32,76 @@ #define SERIAL_PORT 0 // This determines the communication speed of the printer -#ifndef BAUDRATE +#ifndef BAUDRATE #define BAUDRATE 250000 -//#define BAUDRATE 115200 +//#define BAUDRATE 115200 #endif +// This enables the serial port associated to the Bluetooth interface +//#define BTENABLED // Enable BT interface on AT90USB devices + //// The following define selects which electronics board you have. Please choose the one that matches your setup // 10 = Gen7 custom (Alfons3 Version) "https://github.com/Alfons3/Generation_7_Electronics" // 11 = Gen7 v1.1, v1.2 = 11 // 12 = Gen7 v1.3 // 13 = Gen7 v1.4 +// 20 = Sethi 3D_1 // 3 = MEGA/RAMPS up to 1.2 = 3 -// 33 = RAMPS 1.3 (Power outputs: Extruder, Bed, Fan) -// 34 = RAMPS 1.3 (Power outputs: Extruder0, Extruder1, Bed) +// 33 = RAMPS 1.3 / 1.4 (Power outputs: Extruder, Fan, Bed) +// 34 = RAMPS 1.3 / 1.4 (Power outputs: Extruder0, Extruder1, Bed) +// 35 = RAMPS 1.3 / 1.4 (Power outputs: Extruder, Fan, Fan) // 4 = Duemilanove w/ ATMega328P pin assignment // 5 = Gen6 // 51 = Gen6 deluxe // 6 = Sanguinololu < 1.2 // 62 = Sanguinololu 1.2 and above // 63 = Melzi +// 64 = STB V1.1 +// 65 = Azteeg X1 +// 66 = Melzi with ATmega1284 (MaKr3d version) +// 67 = Azteeg X3 // 7 = Ultimaker // 71 = Ultimaker (Older electronics. Pre 1.5.4. This is rare) +// 77 = 3Drag Controller // 8 = Teensylu +// 80 = Rumba // 81 = Printrboard (AT90USB1286) // 82 = Brainwave (AT90USB646) +// 83 = SAV Mk-I (AT90USB1286) // 9 = Gen3+ // 70 = Megatronics +// 701= Megatronics v2.0 +// 702= Minitronics v1.0 // 90 = Alpha OMCA board // 91 = Final OMCA board // 301 = Rambo +// 21 = Elefu Ra Board (v3) #ifndef MOTHERBOARD #define MOTHERBOARD 7 #endif +// Define this to set a custom name for your generic Mendel, +// #define CUSTOM_MENDEL_NAME "This Mendel" + +// Define this to set a unique identifier for this printer, (Used by some programs to differentiate between machines) +// You can use an online service to generate a random UUID. (eg http://www.uuidgenerator.net/version4) +// #define MACHINE_UUID "00000000-0000-0000-0000-000000000000" + +// This defines the number of extruders +#ifndef EXTRUDERS +#define EXTRUDERS 1 +#endif + //// The following define selects which power supply you have. Please choose the one that matches your setup // 1 = ATX // 2 = X-Box 360 203Watts (the blue wire connected to PS_ON and the red wire to VCC) #define POWER_SUPPLY 1 +// Define this to have the electronics keep the powersupply off on startup. If you don't know what this is leave it. +// #define PS_DEFAULT_OFF + //=========================================================================== //=============================Thermal Settings ============================ //=========================================================================== @@ -79,18 +116,20 @@ // 2 is 200k thermistor - ATC Semitec 204GT-2 (4.7k pullup) // 3 is mendel-parts thermistor (4.7k pullup) // 4 is 10k thermistor !! do not use it for a hotend. It gives bad resolution at high temp. !! -// 5 is 100K thermistor - ATC Semitec 104GT-2 (Used in ParCan) (4.7k pullup) +// 5 is 100K thermistor - ATC Semitec 104GT-2 (Used in ParCan & J-Head) (4.7k pullup) // 6 is 100k EPCOS - Not as accurate as table 1 (created using a fluke thermocouple) (4.7k pullup) // 7 is 100k Honeywell thermistor 135-104LAG-J01 (4.7k pullup) +// 71 is 100k Honeywell thermistor 135-104LAF-J01 (4.7k pullup) // 8 is 100k 0603 SMD Vishay NTCS0603E3104FXT (4.7k pullup) // 9 is 100k GE Sensing AL03006-58.2K-97-G1 (4.7k pullup) // 10 is 100k RS thermistor 198-961 (4.7k pullup) +// 60 is 100k Maker's Tool Works Kapton Bed Thermister // -// 1k ohm pullup tables - This is not normal, you would have to have changed out your 4.7k for 1k +// 1k ohm pullup tables - This is not normal, you would have to have changed out your 4.7k for 1k // (but gives greater accuracy and more stable PID) // 51 is 100k thermistor - EPCOS (1k pullup) // 52 is 200k thermistor - ATC Semitec 204GT-2 (1k pullup) -// 55 is 100k thermistor - ATC Semitec 104GT-2 (Used in ParCan) (1k pullup) +// 55 is 100k thermistor - ATC Semitec 104GT-2 (Used in ParCan & J-Head) (1k pullup) #define TEMP_SENSOR_0 -1 #ifndef TEMP_SENSOR_1 @@ -99,13 +138,17 @@ #define TEMP_SENSOR_2 0 #define TEMP_SENSOR_BED 0 +// This makes temp sensor 1 a redundant sensor for sensor 0. If the temperatures difference between these sensors is to high the print will be aborted. +//#define TEMP_SENSOR_1_AS_REDUNDANT +#define MAX_REDUNDANT_TEMP_SENSOR_DIFF 10 + // Actual temperature must be close to target for this long before M109 returns success #define TEMP_RESIDENCY_TIME 3 // (seconds) #define TEMP_HYSTERESIS 3 // (degC) range of +/- temperatures considered "close" to the target one -#define TEMP_WINDOW 1 // (degC) Window around target to start the recidency timer x degC early. +#define TEMP_WINDOW 1 // (degC) Window around target to start the residency timer x degC early. // The minimal temperature defines the temperature below which the heater will not be enabled It is used -// to check that the wiring to the thermistor is not broken. +// to check that the wiring to the thermistor is not broken. // Otherwise this would lead to the heater being powered on all the time. #define HEATER_0_MINTEMP 5 #define HEATER_1_MINTEMP 5 @@ -128,56 +171,57 @@ // PID settings: // Comment the following line to disable PID and enable bang-bang. #define PIDTEMP -#define PID_MAX 256 // limits current to nozzle; 256=full current +#define BANG_MAX 255 // limits current to nozzle while in bang-bang mode; 255=full current +#define PID_MAX 255 // limits current to nozzle while PID is active (see PID_FUNCTIONAL_RANGE below); 255=full current #ifdef PIDTEMP - //#define PID_DEBUG // Sends debug data to the serial port. + //#define PID_DEBUG // Sends debug data to the serial port. //#define PID_OPENLOOP 1 // Puts PID in open loop. M104/M140 sets the output power from 0 to PID_MAX #define PID_FUNCTIONAL_RANGE 10 // If the temperature difference between the target temperature and the actual temperature // is more then PID_FUNCTIONAL_RANGE then the PID will be shut off and the heater will be set to min/max. #define PID_INTEGRAL_DRIVE_MAX 255 //limit for the integral term - #define K1 0.95 //smoothing factor withing the PID + #define K1 0.95 //smoothing factor within the PID #define PID_dT ((16.0 * 8.0)/(F_CPU / 64.0 / 256.0)) //sampling period of the temperature routine // If you are using a preconfigured hotend then you can use one of the value sets by uncommenting it // Ultimaker #define DEFAULT_Kp 22.2 - #define DEFAULT_Ki 1.08 - #define DEFAULT_Kd 114 + #define DEFAULT_Ki 1.08 + #define DEFAULT_Kd 114 // Makergear // #define DEFAULT_Kp 7.0 -// #define DEFAULT_Ki 0.1 -// #define DEFAULT_Kd 12 +// #define DEFAULT_Ki 0.1 +// #define DEFAULT_Kd 12 -// Mendel Parts V9 on 12V +// Mendel Parts V9 on 12V // #define DEFAULT_Kp 63.0 // #define DEFAULT_Ki 2.25 // #define DEFAULT_Kd 440 #endif // PIDTEMP // Bed Temperature Control -// Select PID or bang-bang with PIDTEMPBED. If bang-bang, BED_LIMIT_SWITCHING will enable hysteresis +// Select PID or bang-bang with PIDTEMPBED. If bang-bang, BED_LIMIT_SWITCHING will enable hysteresis // -// uncomment this to enable PID on the bed. It uses the same ferquency PWM as the extruder. +// Uncomment this to enable PID on the bed. It uses the same frequency PWM as the extruder. // If your PID_dT above is the default, and correct for your hardware/configuration, that means 7.689Hz, // which is fine for driving a square wave into a resistive load and does not significantly impact you FET heating. -// This also works fine on a Fotek SSR-10DA Solid State Relay into a 250W heater. -// If your configuration is significantly different than this and you don't understand the issues involved, you proabaly +// This also works fine on a Fotek SSR-10DA Solid State Relay into a 250W heater. +// If your configuration is significantly different than this and you don't understand the issues involved, you probably // shouldn't use bed PID until someone else verifies your hardware works. // If this is enabled, find your own PID constants below. //#define PIDTEMPBED // //#define BED_LIMIT_SWITCHING -// This sets the max power delived to the bed, and replaces the HEATER_BED_DUTY_CYCLE_DIVIDER option. +// This sets the max power delivered to the bed, and replaces the HEATER_BED_DUTY_CYCLE_DIVIDER option. // all forms of bed control obey this (PID, bang-bang, bang-bang with hysteresis) -// setting this to anything other than 256 enables a form of PWM to the bed just like HEATER_BED_DUTY_CYCLE_DIVIDER did, +// setting this to anything other than 255 enables a form of PWM to the bed just like HEATER_BED_DUTY_CYCLE_DIVIDER did, // so you shouldn't use it unless you are OK with PWM on your bed. (see the comment on enabling PIDTEMPBED) -#define MAX_BED_POWER 256 // limits duty cycle to bed; 256=full current +#define MAX_BED_POWER 255 // limits duty cycle to bed; 255=full current #ifdef PIDTEMPBED //120v 250W silicone heater into 4mm borosilicate (MendelMax 1.5+) -//from FOPDT model - kp=.39 Tp=405 Tdead=66, Tc set to 79.2, argressive factor of .15 (vs .1, 1, 10) +//from FOPDT model - kp=.39 Tp=405 Tdead=66, Tc set to 79.2, aggressive factor of .15 (vs .1, 1, 10) #define DEFAULT_bedKp 10.00 #define DEFAULT_bedKi .023 #define DEFAULT_bedKd 305.4 @@ -209,17 +253,17 @@ // Uncomment the following line to enable CoreXY kinematics // #define COREXY -// corse Endstop Settings +// coarse Endstop Settings #define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors #ifndef ENDSTOPPULLUPS - // fine Enstop settings: Individual Pullups. will be ignord if ENDSTOPPULLUPS is defined - #define ENDSTOPPULLUP_XMAX - #define ENDSTOPPULLUP_YMAX - #define ENDSTOPPULLUP_ZMAX - #define ENDSTOPPULLUP_XMIN - #define ENDSTOPPULLUP_YMIN - //#define ENDSTOPPULLUP_ZMIN + // fine Enstop settings: Individual Pullups. will be ignored if ENDSTOPPULLUPS is defined + // #define ENDSTOPPULLUP_XMAX + // #define ENDSTOPPULLUP_YMAX + // #define ENDSTOPPULLUP_ZMAX + // #define ENDSTOPPULLUP_XMIN + // #define ENDSTOPPULLUP_YMIN + // #define ENDSTOPPULLUP_ZMIN #endif #ifdef ENDSTOPPULLUPS @@ -232,10 +276,19 @@ #endif // The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. -const bool X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. -const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. -const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops. +const bool X_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop. +const bool Y_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop. +const bool Z_MIN_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop. +const bool X_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop. +const bool Y_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop. +const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of the endstop. //#define DISABLE_MAX_ENDSTOPS +//#define DISABLE_MIN_ENDSTOPS + +// Disable max endstops for compatibility with endstop checking routine +#if defined(COREXY) && !defined(DISABLE_MAX_ENDSTOPS) + #define DISABLE_MAX_ENDSTOPS +#endif // For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 #define X_ENABLE_ON 0 @@ -264,6 +317,41 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th #define min_software_endstops false //If true, axis won't move to coordinates less than HOME_POS. #define max_software_endstops false //If true, axis won't move to coordinates greater than the defined lengths below. + +//============================= Bed Auto Leveling =========================== + +//#define ENABLE_AUTO_BED_LEVELING // Delete the comment to enable (remove // at the start of the line) + +#ifdef ENABLE_AUTO_BED_LEVELING + + // these are the positions on the bed to do the probing + #define LEFT_PROBE_BED_POSITION 15 + #define RIGHT_PROBE_BED_POSITION 170 + #define BACK_PROBE_BED_POSITION 180 + #define FRONT_PROBE_BED_POSITION 20 + + // these are the offsets to the prob relative to the extruder tip (Hotend - Probe) + #define X_PROBE_OFFSET_FROM_EXTRUDER -25 + #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 + #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 + + #define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z before homing (G28) for Probe Clearance. + // Be sure you have this distance over your Z_MAX_POS in case + + #define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min + + #define Z_RAISE_BEFORE_PROBING 15 //How much the extruder will be raised before traveling to the first probing point. + #define Z_RAISE_BETWEEN_PROBINGS 5 //How much the extruder will be raised when traveling from between next probing points + + + //If defined, the Probe servo will be turned on only during movement and then turned off to avoid jerk + //The value is the delay to turn the servo off after powered on - depends on the servo speed; 300ms is good value, but you can try lower it. + // You MUST HAVE the SERVO_ENDSTOPS defined to use here a value higher than zero otherwise your code will not compile. + +// #define PROBE_SERVO_DEACTIVATION_DELAY 300 + +#endif + // Travel limits after homing #define X_MAX_POS 205 #define X_MIN_POS 0 @@ -281,22 +369,24 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th //#define BED_CENTER_AT_0_0 // If defined, the center of the bed is at (X=0, Y=0) //Manual homing switch locations: +// For deltabots this means top and center of the cartesian print volume. #define MANUAL_X_HOME_POS 0 #define MANUAL_Y_HOME_POS 0 #define MANUAL_Z_HOME_POS 0 +//#define MANUAL_Z_HOME_POS 402 // For delta: Distance between nozzle and print surface after homing. //// MOVEMENT SETTINGS #define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E #define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min) -// default settings +// default settings -#define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200*8/3,760*1.1} // default steps per unit for ultimaker -#define DEFAULT_MAX_FEEDRATE {500, 500, 10, 45} // (mm/sec) +#define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200.0*8/3,760*1.1} // default steps per unit for Ultimaker +#define DEFAULT_MAX_FEEDRATE {500, 500, 5, 25} // (mm/sec) #define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. -#define DEFAULT_ACCELERATION 5000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves -#define DEFAULT_RETRACT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts +#define DEFAULT_ACCELERATION 4000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves +#define DEFAULT_RETRACT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for retracts // Offset of the extruders (uncomment if using more than one and relying on firmware to position when changing). // The offset has to be X=0, Y=0 for the extruder 0 hotend (default extruder). @@ -304,7 +394,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th // #define EXTRUDER_OFFSET_X {0.0, 20.00} // (in mm) for each extruder, offset of the hotend on the X axis // #define EXTRUDER_OFFSET_Y {0.0, 5.00} // (in mm) for each extruder, offset of the hotend on the Y axis -// The speed change that does not require acceleration (i.e. the software might assume it can be done instanteneously) +// The speed change that does not require acceleration (i.e. the software might assume it can be done instantaneously) #define DEFAULT_XYJERK 20.0 // (mm/sec) #define DEFAULT_ZJERK 0.4 // (mm/sec) #define DEFAULT_EJERK 5.0 // (mm/sec) @@ -316,7 +406,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th // EEPROM // the microcontroller can store settings in the EEPROM, e.g. max velocity... // M500 - stores paramters in EEPROM -// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). +// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). // M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. //define this to enable eeprom support #define EEPROM_SETTINGS @@ -324,54 +414,185 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th // please keep turned on if you can. #define EEPROM_CHITCHAT + +// Preheat Constants +#define PLA_PREHEAT_HOTEND_TEMP 210 +#define PLA_PREHEAT_HPB_TEMP 70 +#define PLA_PREHEAT_FAN_SPEED 0 // Insert Value between 0 and 255 + +#define ABS_PREHEAT_HOTEND_TEMP 250 +#define ABS_PREHEAT_HPB_TEMP 100 +#define ABS_PREHEAT_FAN_SPEED 0 // Insert Value between 0 and 255 + //LCD and SD support //#define ULTRA_LCD //general lcd support, also 16x2 +//#define DOGLCD // Support for SPI LCD 128x64 (Controller ST7565R graphic Display Family) //#define SDSUPPORT // Enable SD Card Support in Hardware Console - +//#define SDSLOW // Use slower SD transfer mode (not normally needed - uncomment if you're getting volume init error) +//#define ENCODER_PULSES_PER_STEP 1 // Increase if you have a high resolution encoder #define ULTIMAKERCONTROLLER //as available from the ultimaker online store. //#define ULTIPANEL //the ultipanel as on thingiverse +// The MaKr3d Makr-Panel with graphic controller and SD support +// http://reprap.org/wiki/MaKr3d_MaKrPanel +//#define MAKRPANEL + // The RepRapDiscount Smart Controller (white PCB) // http://reprap.org/wiki/RepRapDiscount_Smart_Controller //#define REPRAP_DISCOUNT_SMART_CONTROLLER - -// The GADGETS3D G3D LCD/SD Controller (blue PCB) -// http://reprap.org/wiki/RAMPS_1.3/1.4_GADGETS3D_Shield_with_Panel + +// The GADGETS3D G3D LCD/SD Controller (blue PCB) +// http://reprap.org/wiki/RAMPS_1.3/1.4_GADGETS3D_Shield_with_Panel //#define G3D_PANEL +// The RepRapDiscount FULL GRAPHIC Smart Controller (quadratic white PCB) +// http://reprap.org/wiki/RepRapDiscount_Full_Graphic_Smart_Controller +// +// ==> REMEMBER TO INSTALL U8glib to your ARDUINO library folder: http://code.google.com/p/u8glib/wiki/u8glib +//#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER + +// The RepRapWorld REPRAPWORLD_KEYPAD v1.1 +// http://reprapworld.com/?products_details&products_id=202&cPath=1591_1626 +//#define REPRAPWORLD_KEYPAD +//#define REPRAPWORLD_KEYPAD_MOVE_STEP 10.0 // how much should be moved when a key is pressed, eg 10.0 means 10mm per click + +// The Elefu RA Board Control Panel +// http://www.elefu.com/index.php?route=product/product&product_id=53 +// REMEMBER TO INSTALL LiquidCrystal_I2C.h in your ARUDINO library folder: https://github.com/kiyoshigawa/LiquidCrystal_I2C +//#define RA_CONTROL_PANEL + //automatic expansion +#if defined (MAKRPANEL) + #define DOGLCD + #define SDSUPPORT + #define ULTIPANEL + #define NEWPANEL + #define DEFAULT_LCD_CONTRAST 17 +#endif + +#if defined (REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) + #define DOGLCD + #define U8GLIB_ST7920 + #define REPRAP_DISCOUNT_SMART_CONTROLLER +#endif + #if defined(ULTIMAKERCONTROLLER) || defined(REPRAP_DISCOUNT_SMART_CONTROLLER) || defined(G3D_PANEL) #define ULTIPANEL #define NEWPANEL -#endif +#endif -// Preheat Constants -#define PLA_PREHEAT_HOTEND_TEMP 210 -#define PLA_PREHEAT_HPB_TEMP 70 -#define PLA_PREHEAT_FAN_SPEED 0 // Insert Value between 0 and 255 +#if defined(REPRAPWORLD_KEYPAD) + #define NEWPANEL + #define ULTIPANEL +#endif +#if defined(RA_CONTROL_PANEL) + #define ULTIPANEL + #define NEWPANEL + #define LCD_I2C_TYPE_PCA8574 + #define LCD_I2C_ADDRESS 0x27 // I2C Address of the port expander +#endif -#define ABS_PREHEAT_HOTEND_TEMP 250 -#define ABS_PREHEAT_HPB_TEMP 100 -#define ABS_PREHEAT_FAN_SPEED 0 // Insert Value between 0 and 255 +//I2C PANELS + +//#define LCD_I2C_SAINSMART_YWROBOT +#ifdef LCD_I2C_SAINSMART_YWROBOT + // This uses the LiquidCrystal_I2C library ( https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/Home ) + // Make sure it is placed in the Arduino libraries directory. + #define LCD_I2C_TYPE_PCF8575 + #define LCD_I2C_ADDRESS 0x27 // I2C Address of the port expander + #define NEWPANEL + #define ULTIPANEL +#endif + +// PANELOLU2 LCD with status LEDs, separate encoder and click inputs +//#define LCD_I2C_PANELOLU2 +#ifdef LCD_I2C_PANELOLU2 + // This uses the LiquidTWI2 library v1.2.3 or later ( https://github.com/lincomatic/LiquidTWI2 ) + // Make sure the LiquidTWI2 directory is placed in the Arduino or Sketchbook libraries subdirectory. + // (v1.2.3 no longer requires you to define PANELOLU in the LiquidTWI2.h library header file) + // Note: The PANELOLU2 encoder click input can either be directly connected to a pin + // (if BTN_ENC defined to != -1) or read through I2C (when BTN_ENC == -1). + #define LCD_I2C_TYPE_MCP23017 + #define LCD_I2C_ADDRESS 0x20 // I2C Address of the port expander + #define LCD_USE_I2C_BUZZER //comment out to disable buzzer on LCD + #define NEWPANEL + #define ULTIPANEL +#endif + +// Panucatt VIKI LCD with status LEDs, integrated click & L/R/U/P buttons, separate encoder inputs +//#define LCD_I2C_VIKI +#ifdef LCD_I2C_VIKI + // This uses the LiquidTWI2 library v1.2.3 or later ( https://github.com/lincomatic/LiquidTWI2 ) + // Make sure the LiquidTWI2 directory is placed in the Arduino or Sketchbook libraries subdirectory. + // Note: The pause/stop/resume LCD button pin should be connected to the Arduino + // BTN_ENC pin (or set BTN_ENC to -1 if not used) + #define LCD_I2C_TYPE_MCP23017 + #define LCD_I2C_ADDRESS 0x20 // I2C Address of the port expander + #define LCD_USE_I2C_BUZZER //comment out to disable buzzer on LCD (requires LiquidTWI2 v1.2.3 or later) + #define NEWPANEL + #define ULTIPANEL +#endif + +// Shift register panels +// --------------------- +// 2 wire Non-latching LCD SR from: +// https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/schematics#!shiftregister-connection +//#define SR_LCD +#ifdef SR_LCD + #define SR_LCD_2W_NL // Non latching 2 wire shiftregister + //#define NEWPANEL +#endif #ifdef ULTIPANEL // #define NEWPANEL //enable this if you have a click-encoder panel #define SDSUPPORT #define ULTRA_LCD - #define LCD_WIDTH 20 - #define LCD_HEIGHT 4 - -#else //no panel but just lcd + #ifdef DOGLCD // Change number of lines to match the DOG graphic display + #define LCD_WIDTH 20 + #define LCD_HEIGHT 5 + #else + #define LCD_WIDTH 20 + #define LCD_HEIGHT 4 + #endif +#else //no panel but just lcd #ifdef ULTRA_LCD + #ifdef DOGLCD // Change number of lines to match the 128x64 graphics display + #define LCD_WIDTH 20 + #define LCD_HEIGHT 5 + #else #define LCD_WIDTH 16 - #define LCD_HEIGHT 2 + #define LCD_HEIGHT 2 + #endif #endif #endif +// default LCD contrast for dogm-like LCD displays +#ifdef DOGLCD +# ifndef DEFAULT_LCD_CONTRAST +# define DEFAULT_LCD_CONTRAST 32 +# endif +#endif + // Increase the FAN pwm frequency. Removes the PWM noise but increases heating in the FET/Arduino #define FAST_PWM_FAN +// Temperature status leds that display the hotend and bet temperature. +// If alle hotends and bed temperature and temperature setpoint are < 54C then the BLUE led is on. +// Otherwise the RED led is on. There is 1C hysteresis. +//#define TEMP_STAT_LEDS + +// Use software PWM to drive the fan, as for the heaters. This uses a very low frequency +// which is not ass annoying as with the hardware PWM. On the other hand, if this frequency +// is too low, you should also increment SOFT_PWM_SCALE. +//#define FAN_SOFT_PWM + +// Incrementing this by 1 will double the software PWM frequency, +// affecting heaters, and the fan if FAN_SOFT_PWM is enabled. +// However, control resolution will be halved for each increment; +// at zero value, there are 128 effective control positions. +#define SOFT_PWM_SCALE 0 + // M240 Triggers a camera by emulating a Canon RC-1 Remote // Data from: http://www.doc-diy.net/photo/rc-1_hacked/ // #define PHOTOGRAPH_PIN 23 @@ -379,6 +600,34 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th // SF send wrong arc g-codes when using Arc Point as fillet procedure //#define SF_ARC_FIX +// Support for the BariCUDA Paste Extruder. +//#define BARICUDA + +//define BlinkM/CyzRgb Support +//#define BLINKM + +/*********************************************************************\ +* R/C SERVO support +* Sponsored by TrinityLabs, Reworked by codexmas +**********************************************************************/ + +// Number of servos +// +// If you select a configuration below, this will receive a default value and does not need to be set manually +// set it manually if you have more servos than extruders and wish to manually control some +// leaving it undefined or defining as 0 will disable the servo subsystem +// If unsure, leave commented / disabled +// +//#define NUM_SERVOS 3 // Servo index starts with 0 for M280 command + +// Servo Endstops +// +// This allows for servo actuated endstops, primary usage is for the Z Axis to eliminate calibration or bed height changes. +// Use M206 command to correct for switch height offset to actual nozzle height. Store that setting with M500. +// +//#define SERVO_ENDSTOPS {-1, -1, 0} // Servo index for X, Y, Z. Disable with -1 +//#define SERVO_ENDSTOP_ANGLES {0,0, 0,0, 70,0} // X,Y,Z Axis Extend and Retract angles + #include "Configuration_adv.h" #include "thermistortables.h" diff --git a/Marlin/ConfigurationStore.cpp b/Marlin/ConfigurationStore.cpp index 574c438ad4891bd4cfdee8d5e65bb9f9763736c6..1fb72450c640fa6e315a060f0d6e26a39c5ac1cd 100644 --- a/Marlin/ConfigurationStore.cpp +++ b/Marlin/ConfigurationStore.cpp @@ -37,7 +37,7 @@ void _EEPROM_readData(int &pos, uint8_t* value, uint8_t size) // the default values are used whenever there is a change to the data, to prevent // wrong data being written to the variables. // ALSO: always make sure the variables in the Store and retrieve sections are in the same order. -#define EEPROM_VERSION "V07" +#define EEPROM_VERSION "V09" #ifdef EEPROM_SETTINGS void Config_StoreSettings() @@ -57,6 +57,9 @@ void Config_StoreSettings() EEPROM_WRITE_VAR(i,max_z_jerk); EEPROM_WRITE_VAR(i,max_e_jerk); EEPROM_WRITE_VAR(i,add_homeing); + #ifdef DELTA + EEPROM_WRITE_VAR(i,endstop_adj); + #endif #ifndef ULTIPANEL int plaPreheatHotendTemp = PLA_PREHEAT_HOTEND_TEMP, plaPreheatHPBTemp = PLA_PREHEAT_HPB_TEMP, plaPreheatFanSpeed = PLA_PREHEAT_FAN_SPEED; int absPreheatHotendTemp = ABS_PREHEAT_HOTEND_TEMP, absPreheatHPBTemp = ABS_PREHEAT_HPB_TEMP, absPreheatFanSpeed = ABS_PREHEAT_FAN_SPEED; @@ -72,10 +75,16 @@ void Config_StoreSettings() EEPROM_WRITE_VAR(i,Ki); EEPROM_WRITE_VAR(i,Kd); #else - EEPROM_WRITE_VAR(i,3000); - EEPROM_WRITE_VAR(i,0); - EEPROM_WRITE_VAR(i,0); + float dummy = 3000.0f; + EEPROM_WRITE_VAR(i,dummy); + dummy = 0.0f; + EEPROM_WRITE_VAR(i,dummy); + EEPROM_WRITE_VAR(i,dummy); + #endif + #ifndef DOGLCD + int lcd_contrast = 32; #endif + EEPROM_WRITE_VAR(i,lcd_contrast); char ver2[4]=EEPROM_VERSION; i=EEPROM_OFFSET; EEPROM_WRITE_VAR(i,ver2); // validate data @@ -85,7 +94,7 @@ void Config_StoreSettings() #endif //EEPROM_SETTINGS -#ifdef EEPROM_CHITCHAT +#ifndef DISABLE_M503 void Config_PrintSettings() { // Always have this function, even with EEPROM_SETTINGS disabled, the current values will be shown SERIAL_ECHO_START; @@ -139,6 +148,15 @@ void Config_PrintSettings() SERIAL_ECHOPAIR(" Y" ,add_homeing[1] ); SERIAL_ECHOPAIR(" Z" ,add_homeing[2] ); SERIAL_ECHOLN(""); +#ifdef DELTA + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Endstop adjustement (mm):"); + SERIAL_ECHO_START; + SERIAL_ECHOPAIR(" M666 X",endstop_adj[0] ); + SERIAL_ECHOPAIR(" Y" ,endstop_adj[1] ); + SERIAL_ECHOPAIR(" Z" ,endstop_adj[2] ); + SERIAL_ECHOLN(""); +#endif #ifdef PIDTEMP SERIAL_ECHO_START; SERIAL_ECHOLNPGM("PID settings:"); @@ -179,6 +197,9 @@ void Config_RetrieveSettings() EEPROM_READ_VAR(i,max_z_jerk); EEPROM_READ_VAR(i,max_e_jerk); EEPROM_READ_VAR(i,add_homeing); + #ifdef DELTA + EEPROM_READ_VAR(i,endstop_adj); + #endif #ifndef ULTIPANEL int plaPreheatHotendTemp, plaPreheatHPBTemp, plaPreheatFanSpeed; int absPreheatHotendTemp, absPreheatHPBTemp, absPreheatFanSpeed; @@ -196,6 +217,10 @@ void Config_RetrieveSettings() EEPROM_READ_VAR(i,Kp); EEPROM_READ_VAR(i,Ki); EEPROM_READ_VAR(i,Kd); + #ifndef DOGLCD + int lcd_contrast; + #endif + EEPROM_READ_VAR(i,lcd_contrast); // Call updatePID (similar to when we have processed M301) updatePID(); @@ -206,7 +231,9 @@ void Config_RetrieveSettings() { Config_ResetDefault(); } - Config_PrintSettings(); + #ifdef EEPROM_CHITCHAT + Config_PrintSettings(); + #endif } #endif @@ -234,6 +261,9 @@ void Config_ResetDefault() max_z_jerk=DEFAULT_ZJERK; max_e_jerk=DEFAULT_EJERK; add_homeing[0] = add_homeing[1] = add_homeing[2] = 0; +#ifdef DELTA + endstop_adj[0] = endstop_adj[1] = endstop_adj[2] = 0; +#endif #ifdef ULTIPANEL plaPreheatHotendTemp = PLA_PREHEAT_HOTEND_TEMP; plaPreheatHPBTemp = PLA_PREHEAT_HPB_TEMP; @@ -242,6 +272,9 @@ void Config_ResetDefault() absPreheatHPBTemp = ABS_PREHEAT_HPB_TEMP; absPreheatFanSpeed = ABS_PREHEAT_FAN_SPEED; #endif +#ifdef DOGLCD + lcd_contrast = DEFAULT_LCD_CONTRAST; +#endif #ifdef PIDTEMP Kp = DEFAULT_Kp; Ki = scalePID_i(DEFAULT_Ki); diff --git a/Marlin/ConfigurationStore.h b/Marlin/ConfigurationStore.h index 2bbf4808c3a9f6c781928ce53e09b96ab3bd1435..4f68b13a6a3153c601d07d230287686ea81ca2ad 100644 --- a/Marlin/ConfigurationStore.h +++ b/Marlin/ConfigurationStore.h @@ -5,7 +5,7 @@ void Config_ResetDefault(); -#ifdef EEPROM_CHITCHAT +#ifndef DISABLE_M503 void Config_PrintSettings(); #else FORCE_INLINE void Config_PrintSettings() {} diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h index cbb624a3eab830783c2aae346c510fc687deac91..0f11f163ae499688210802df46575c41e4cb3e5b 100644 --- a/Marlin/Configuration_adv.h +++ b/Marlin/Configuration_adv.h @@ -18,12 +18,6 @@ #define WATCH_TEMP_PERIOD 40000 //40 seconds #define WATCH_TEMP_INCREASE 10 //Heat up at least 10 degree in 20 seconds -// Wait for Cooldown -// This defines if the M109 call should not block if it is cooling down. -// example: From a current temp of 220, you set M109 S200. -// if CooldownNoWait is defined M109 will not wait for the cooldown to finish -#define CooldownNoWait true - #ifdef PIDTEMP // this adds an experimental additional term to the heatingpower, proportional to the extrusion speed. // if Kc is choosen well, the additional required power due to increased melting should be compensated. @@ -46,6 +40,10 @@ #define AUTOTEMP_OLDWEIGHT 0.98 #endif +//Show Temperature ADC value +//The M105 command return, besides traditional information, the ADC value read from temperature sensors. +//#define SHOW_TEMP_ADC_VALUES + // extruder run-out prevention. //if the machine is idle, and the temperature over MINTEMP, every couple of SECONDS some filament is extruded //#define EXTRUDER_RUNOUT_PREVENT @@ -63,23 +61,31 @@ //This is for controlling a fan to cool down the stepper drivers //it will turn on when any driver is enabled //and turn off after the set amount of seconds from last driver being disabled again -//#define CONTROLLERFAN_PIN 23 //Pin used for the fan to cool controller, comment out to disable this function -#define CONTROLLERFAN_SEC 60 //How many seconds, after all motors were disabled, the fan should run +#define CONTROLLERFAN_PIN -1 //Pin used for the fan to cool controller (-1 to disable) +#define CONTROLLERFAN_SECS 60 //How many seconds, after all motors were disabled, the fan should run +#define CONTROLLERFAN_SPEED 255 // == full speed // When first starting the main fan, run it at full speed for the // given number of milliseconds. This gets the fan spinning reliably // before setting a PWM value. (Does not work with software PWM for fan on Sanguinololu) //#define FAN_KICKSTART_TIME 100 +// Extruder cooling fans +// Configure fan pin outputs to automatically turn on/off when the associated +// extruder temperature is above/below EXTRUDER_AUTO_FAN_TEMPERATURE. +// Multiple extruders can be assigned to the same pin in which case +// the fan will turn on when any selected extruder is above the threshold. +#define EXTRUDER_0_AUTO_FAN_PIN -1 +#define EXTRUDER_1_AUTO_FAN_PIN -1 +#define EXTRUDER_2_AUTO_FAN_PIN -1 +#define EXTRUDER_AUTO_FAN_TEMPERATURE 50 +#define EXTRUDER_AUTO_FAN_SPEED 255 // == full speed + + //=========================================================================== //=============================Mechanical Settings=========================== //=========================================================================== -// This defines the number of extruders -#ifndef EXTRUDERS -#define EXTRUDERS 1 -#endif - //#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing @@ -144,6 +150,68 @@ #define EXTRUDERS 1 #endif +// Same again but for Y Axis. +//#define Y_DUAL_STEPPER_DRIVERS + +// Define if the two Y drives need to rotate in opposite directions +#define INVERT_Y2_VS_Y_DIR true + +#ifdef Y_DUAL_STEPPER_DRIVERS + #undef EXTRUDERS + #define EXTRUDERS 1 +#endif + +#ifdef Z_DUAL_STEPPER_DRIVERS && Y_DUAL_STEPPER_DRIVERS + #error "You cannot have dual drivers for both Y and Z" +#endif + +// Enable this for dual x-carriage printers. +// A dual x-carriage design has the advantage that the inactive extruder can be parked which +// prevents hot-end ooze contaminating the print. It also reduces the weight of each x-carriage +// allowing faster printing speeds. +//#define DUAL_X_CARRIAGE +#ifdef DUAL_X_CARRIAGE +// Configuration for second X-carriage +// Note: the first x-carriage is defined as the x-carriage which homes to the minimum endstop; +// the second x-carriage always homes to the maximum endstop. +#define X2_MIN_POS 80 // set minimum to ensure second x-carriage doesn't hit the parked first X-carriage +#define X2_MAX_POS 353 // set maximum to the distance between toolheads when both heads are homed +#define X2_HOME_DIR 1 // the second X-carriage always homes to the maximum endstop position +#define X2_HOME_POS X2_MAX_POS // default home position is the maximum carriage position + // However: In this mode the EXTRUDER_OFFSET_X value for the second extruder provides a software + // override for X2_HOME_POS. This also allow recalibration of the distance between the two endstops + // without modifying the firmware (through the "M218 T1 X???" command). + // Remember: you should set the second extruder x-offset to 0 in your slicer. + +// Pins for second x-carriage stepper driver (defined here to avoid further complicating pins.h) +#define X2_ENABLE_PIN 29 +#define X2_STEP_PIN 25 +#define X2_DIR_PIN 23 + +// There are a few selectable movement modes for dual x-carriages using M605 S +// Mode 0: Full control. The slicer has full control over both x-carriages and can achieve optimal travel results +// as long as it supports dual x-carriages. (M605 S0) +// Mode 1: Auto-park mode. The firmware will automatically park and unpark the x-carriages on tool changes so +// that additional slicer support is not required. (M605 S1) +// Mode 2: Duplication mode. The firmware will transparently make the second x-carriage and extruder copy all +// actions of the first x-carriage. This allows the printer to print 2 arbitrary items at +// once. (2nd extruder x offset and temp offset are set using: M605 S2 [Xnnn] [Rmmm]) + +// This is the default power-up mode which can be later using M605. +#define DEFAULT_DUAL_X_CARRIAGE_MODE 0 + +// As the x-carriages are independent we can now account for any relative Z offset +#define EXTRUDER1_Z_OFFSET 0.0 // z offset relative to extruder 0 + +// Default settings in "Auto-park Mode" +#define TOOLCHANGE_PARK_ZLIFT 0.2 // the distance to raise Z axis when parking an extruder +#define TOOLCHANGE_UNPARK_ZLIFT 1 // the distance to raise Z axis when unparking an extruder + +// Default x offset in duplication mode (typically set to half print bed width) +#define DEFAULT_DUPLICATION_X_OFFSET 100 + +#endif //DUAL_X_CARRIAGE + //homing hits the endstop, then retracts by this distance, before it tries to slowly bump again: #define X_HOME_RETRACT_MM 5 #define Y_HOME_RETRACT_MM 5 @@ -166,6 +234,11 @@ #define DEFAULT_MINIMUMFEEDRATE 0.0 // minimum feedrate #define DEFAULT_MINTRAVELFEEDRATE 0.0 +// Feedrates for manual moves along X, Y, Z, E from panel +#ifdef ULTIPANEL +#define MANUAL_FEEDRATE {50*60, 50*60, 4*60, 60} // set the speeds for manual moves (mm/min) +#endif + // minimum time in microseconds that a movement needs to take if the buffer is emptied. #define DEFAULT_MINSEGMENTTIME 20000 @@ -203,6 +276,11 @@ #define SD_FINISHED_STEPPERRELEASE true //if sd support and the file is finished: disable steppers? #define SD_FINISHED_RELEASECOMMAND "M84 X Y Z E" // You might want to keep the z enabled so your bed stays in place. +#define SDCARD_RATHERRECENTFIRST //reverse file order of sd card menu display. Its sorted practically after the filesystem block order. +// if a file is deleted, it frees a block. hence, the order is not purely cronological. To still have auto0.g accessible, there is again the option to do that. +// using: +//#define MENU_ADDAUTOSTART + // The hardware watchdog should reset the Microcontroller disabling all outputs, in case the firmware gets stuck and doesn't do temperature regulation. #define USE_WATCHDOG @@ -216,6 +294,26 @@ // Enable the option to stop SD printing when hitting and endstops, needs to be enabled from the LCD menu when this option is enabled. //#define ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED +// Babystepping enables the user to control the axis in tiny amounts, independently from the normal printing process +// it can e.g. be used to change z-positions in the print startup phase in realtime +// does not respect endstops! +//#define BABYSTEPPING +#ifdef BABYSTEPPING + #define BABYSTEP_XY //not only z, but also XY in the menu. more clutter, more functions + #define BABYSTEP_INVERT_Z false //true for inverse movements in Z + #define BABYSTEP_Z_MULTIPLICATOR 2 //faster z movements + + #ifdef COREXY + #error BABYSTEPPING not implemented for COREXY yet. + #endif + + #ifdef DELTA + #ifdef BABYSTEP_XY + #error BABYSTEPPING only implemented for Z axis on deltabots. + #endif + #endif +#endif + // extruder advance constant (s2/mm3) // // advance (steps) = STEPS_PER_CUBIC_MM_E * EXTUDER_ADVANCE_K * cubic mm per second ^ 2 @@ -267,6 +365,9 @@ const unsigned int dropsegments=5; //everything with less than this number of st #define PS_ON_ASLEEP LOW #endif +// Control heater 0 and heater 1 in parallel. +//#define HEATERS_PARALLEL + //=========================================================================== //=============================Buffers ============================ //=========================================================================== @@ -297,7 +398,7 @@ const unsigned int dropsegments=5; //everything with less than this number of st //adds support for experimental filament exchange support M600; requires display #ifdef ULTIPANEL - //#define FILAMENTCHANGEENABLE + #define FILAMENTCHANGEENABLE #ifdef FILAMENTCHANGEENABLE #define FILAMENTCHANGE_XPOS 3 #define FILAMENTCHANGE_YPOS 3 @@ -306,10 +407,23 @@ const unsigned int dropsegments=5; //everything with less than this number of st #define FILAMENTCHANGE_FINALRETRACT -100 #endif #endif + +#ifdef FILAMENTCHANGEENABLE + #ifdef EXTRUDER_RUNOUT_PREVENT + #error EXTRUDER_RUNOUT_PREVENT currently incompatible with FILAMENTCHANGE + #endif +#endif //=========================================================================== //============================= Define Defines ============================ //=========================================================================== +#if EXTRUDERS > 1 && defined TEMP_SENSOR_1_AS_REDUNDANT + #error "You cannot use TEMP_SENSOR_1_AS_REDUNDANT if EXTRUDERS > 1" +#endif + +#if EXTRUDERS > 1 && defined HEATERS_PARALLEL + #error "You cannot use HEATERS_PARALLEL if EXTRUDERS > 1" +#endif #if TEMP_SENSOR_0 > 0 #define THERMISTORHEATER_0 TEMP_SENSOR_0 diff --git a/Marlin/DOGMbitmaps.h b/Marlin/DOGMbitmaps.h new file mode 100644 index 0000000000000000000000000000000000000000..984f421c0a32fe449bca9dc655a3f97625b48934 --- /dev/null +++ b/Marlin/DOGMbitmaps.h @@ -0,0 +1,121 @@ +#define START_BMPWIDTH 60 //Width in pixels +#define START_BMPHEIGHT 64 //Height in pixels +#define START_BMPBYTEWIDTH 8 //Width in bytes +const unsigned char start_bmp[574] PROGMEM = { //AVR-GCC, WinAVR +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0xF9,0xFF,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0xF0,0xFF,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0xC0,0x3F,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0x80,0x1F,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0x00,0x0F,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFE,0x00,0x07,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFC,0x00,0x03,0xFF,0xFF,0xF0, +0xFF,0xFF,0xF8,0x00,0x01,0xFF,0xFF,0xF0, +0xFF,0xFF,0xF0,0x00,0x00,0xFF,0xFF,0xF0, +0xFF,0xFF,0xE0,0x00,0x00,0x7F,0xFF,0xF0, +0xFF,0xFF,0xC0,0x00,0x00,0x3F,0xFF,0xF0, +0xFF,0xFF,0x80,0x00,0x00,0x3F,0xFF,0xF0, +0xFF,0xFF,0x00,0x00,0x00,0x1F,0xFF,0xF0, +0xFF,0xFE,0x00,0x00,0x00,0x0F,0xFF,0xF0, +0xFF,0xFE,0x00,0x00,0x00,0x07,0xFF,0xF0, +0xFF,0xFC,0x00,0x00,0x00,0x07,0xFF,0xF0, +0xFF,0xFC,0x00,0x00,0x00,0x03,0xFF,0xF0, +0xFF,0xF8,0x00,0x00,0x00,0x03,0xFF,0xF0, +0xFF,0xF8,0x00,0x00,0x00,0x03,0xFF,0xF0, +0xFF,0xF8,0x00,0x00,0x00,0x01,0xFF,0xF0, +0xFF,0xF8,0x00,0x00,0x00,0x01,0xFF,0xF0, +0xFF,0xF8,0x00,0x00,0x00,0x01,0xFF,0xF0, +0xFF,0xF8,0x00,0x00,0x00,0x01,0xFF,0xF0, +0xFF,0xF8,0x00,0x00,0x00,0x01,0xFF,0xF0, +0xFF,0xF8,0x00,0x00,0x00,0x01,0xFF,0xF0, +0xFF,0xF8,0x00,0x00,0x00,0x01,0xFF,0xF0, +0xFF,0xF8,0x00,0x00,0x00,0x01,0xFF,0xF0, +0xFF,0xF8,0x00,0x00,0x00,0x03,0xFF,0xF0, +0xFF,0xF8,0x00,0x00,0x00,0x03,0xFF,0xF0, +0xFF,0xFC,0x00,0x00,0x00,0x03,0xFF,0xF0, +0xFF,0xFC,0x00,0x00,0x00,0x07,0xFF,0xF0, +0xFF,0xFE,0x00,0x00,0x00,0x07,0xFF,0xF0, +0xFF,0xFE,0x00,0x00,0x00,0x0F,0xFF,0xF0, +0xFF,0xFF,0x00,0x00,0x00,0x1F,0xFF,0xF0, +0xFF,0xFF,0x80,0x00,0x00,0x1F,0xFF,0xF0, +0xFF,0xFF,0xC0,0x00,0x00,0x3F,0xFF,0xF0, +0xFF,0xFF,0xE0,0x00,0x00,0x7F,0xFF,0xF0, +0xFF,0xFF,0xF0,0x00,0x01,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFC,0x00,0x03,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0x00,0x1F,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0, +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0, +0x83,0xFF,0xFF,0xFE,0x0F,0xFF,0xFF,0xF0, +0x80,0xFF,0xFF,0xFE,0x03,0xFF,0xFF,0xF0, +0x88,0x7F,0xFF,0xFE,0x23,0xFF,0xFF,0xF0, +0x8C,0x70,0x38,0x0E,0x71,0x81,0xC0,0x70, +0x8C,0x60,0x38,0x0E,0x63,0x80,0xC0,0x30, +0x80,0xE3,0x19,0xC6,0x07,0xF8,0xC7,0x30, +0x80,0xE0,0x19,0xC6,0x03,0x80,0xC7,0x10, +0x8C,0x62,0x79,0xC6,0x63,0x9C,0xC7,0x30, +0x8C,0x63,0xF8,0xC6,0x71,0x18,0xC6,0x30, +0x8E,0x30,0x18,0x0E,0x71,0x80,0xC0,0x30, +0x9E,0x38,0x39,0x1E,0x79,0xC4,0xC4,0xF0, +0xFF,0xFF,0xF9,0xFF,0xFF,0xFF,0xC7,0xF0, +0xFF,0xFF,0xF9,0xFF,0xFF,0xFF,0xC7,0xF0, +0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF0 +}; + +#define STATUS_SCREENWIDTH 115 //Width in pixels +#define STATUS_SCREENHEIGHT 19 //Height in pixels +#define STATUS_SCREENBYTEWIDTH 15 //Width in bytes +const unsigned char status_screen0_bmp[] PROGMEM = { //AVR-GCC, WinAVR +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFF,0xE0, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x63,0x0C,0x60, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x47,0x0E,0x20, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x4F,0x0F,0x20, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5F,0x0F,0xA0, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x5E,0x07,0xA0, +0x7F,0x80,0x00,0x3F,0xC0,0x00,0x3F,0xC0,0x00,0x41,0x04,0x00,0x40,0x60,0x20, +0xFB,0xC0,0x00,0x79,0xE0,0x00,0x79,0xE0,0x00,0x20,0x82,0x00,0x40,0xF0,0x20, +0xF3,0xC0,0x00,0x76,0xE0,0x00,0x76,0xE0,0x00,0x20,0x82,0x00,0x40,0xF0,0x20, +0xEB,0xC0,0x00,0x7E,0xE0,0x00,0x7E,0xE0,0x00,0x41,0x04,0x00,0x40,0x60,0x20, +0x7B,0x80,0x00,0x3D,0xC0,0x00,0x39,0xC0,0x00,0x82,0x08,0x00,0x5E,0x07,0xA0, +0x7B,0x80,0x00,0x3B,0xC0,0x00,0x3E,0xC0,0x01,0x04,0x10,0x00,0x5F,0x0F,0xA0, +0xFB,0xC0,0x00,0x77,0xE0,0x00,0x76,0xE0,0x01,0x04,0x10,0x00,0x4F,0x0F,0x20, +0xFB,0xC0,0x00,0x70,0xE0,0x00,0x79,0xE0,0x00,0x82,0x08,0x00,0x47,0x0E,0x20, +0xFF,0xC0,0x00,0x7F,0xE0,0x00,0x7F,0xE0,0x00,0x41,0x04,0x00,0x63,0x0C,0x60, +0x3F,0x00,0x00,0x1F,0x80,0x00,0x1F,0x80,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, +0x1E,0x00,0x00,0x0F,0x00,0x00,0x0F,0x00,0x01,0xFF,0xFF,0x80,0x7F,0xFF,0xE0, +0x0C,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x01,0xFF,0xFF,0x80,0x00,0x00,0x00 +}; + +#define STATUS_SCREENWIDTH 115 //Width in pixels +#define STATUS_SCREENHEIGHT 19 //Height in pixels +#define STATUS_SCREENBYTEWIDTH 15 //Width in bytes +const unsigned char status_screen1_bmp[] PROGMEM = { //AVR-GCC, WinAVR +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0xFF,0xE0, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0xF8,0x60, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x41,0xF8,0x20, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0xF0,0x20, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x60,0x20, +0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x58,0x01,0xA0, +0x7F,0x80,0x00,0x3F,0xC0,0x00,0x3F,0xC0,0x00,0x41,0x04,0x00,0x5C,0x63,0xA0, +0xFB,0xC0,0x00,0x79,0xE0,0x00,0x79,0xE0,0x00,0x20,0x82,0x00,0x5E,0xF7,0xA0, +0xF3,0xC0,0x00,0x76,0xE0,0x00,0x76,0xE0,0x00,0x20,0x82,0x00,0x5E,0xF7,0xA0, +0xEB,0xC0,0x00,0x7E,0xE0,0x00,0x7E,0xE0,0x00,0x41,0x04,0x00,0x5C,0x63,0xA0, +0x7B,0x80,0x00,0x3D,0xC0,0x00,0x39,0xC0,0x00,0x82,0x08,0x00,0x58,0x01,0xA0, +0x7B,0x80,0x00,0x3B,0xC0,0x00,0x3E,0xC0,0x01,0x04,0x10,0x00,0x40,0x60,0x20, +0xFB,0xC0,0x00,0x77,0xE0,0x00,0x76,0xE0,0x01,0x04,0x10,0x00,0x40,0xF0,0x20, +0xFB,0xC0,0x00,0x70,0xE0,0x00,0x79,0xE0,0x00,0x82,0x08,0x00,0x41,0xF8,0x20, +0xFF,0xC0,0x00,0x7F,0xE0,0x00,0x7F,0xE0,0x00,0x41,0x04,0x00,0x61,0xF8,0x60, +0x3F,0x00,0x00,0x1F,0x80,0x00,0x1F,0x80,0x00,0x00,0x00,0x00,0x70,0x00,0xE0, +0x1E,0x00,0x00,0x0F,0x00,0x00,0x0F,0x00,0x01,0xFF,0xFF,0x80,0x7F,0xFF,0xE0, +0x0C,0x00,0x00,0x06,0x00,0x00,0x06,0x00,0x01,0xFF,0xFF,0x80,0x00,0x00,0x00 +}; + + diff --git a/Marlin/LiquidCrystalRus.cpp b/Marlin/LiquidCrystalRus.cpp index 4bd8de781dc5a1cde95774d155615cf9394489e6..c193e449db29796ed3e9bcc19ebf1c7a64bbc315 100644 --- a/Marlin/LiquidCrystalRus.cpp +++ b/Marlin/LiquidCrystalRus.cpp @@ -36,7 +36,7 @@ const PROGMEM uint8_t utf_recode[] = // S = 0; No shift // // Note, however, that resetting the Arduino doesn't reset the LCD, so we -// can't assume that its in that state when a sketch starts (and the +// can't assume that it's in that state when a sketch starts (and the // LiquidCrystal constructor is called). // // modified 27 Jul 2011 diff --git a/Marlin/Makefile b/Marlin/Makefile index e09d15f0677b7291398fd946fc2fafc2969e8f8e..59ec4d4f7ebbf84cd32f8906379b0cab4367f781 100644 --- a/Marlin/Makefile +++ b/Marlin/Makefile @@ -1,12 +1,12 @@ # Sprinter Arduino Project Makefile -# +# # Makefile Based on: # Arduino 0011 Makefile # Arduino adaptation by mellis, eighthave, oli.keller # Marlin adaption by Daid # # This has been tested with Arduino 0022. -# +# # This makefile allows you to build sketches from the command line # without the Arduino environment (or Java). # @@ -21,7 +21,7 @@ # (e.g. UPLOAD_PORT = /dev/tty.USB0). If the exact name of this file # changes, you can use * as a wildcard (e.g. UPLOAD_PORT = /dev/tty.usb*). # -# 3. Set the line containing "MCU" to match your board's processor. +# 3. Set the line containing "MCU" to match your board's processor. # Older one's are atmega8 based, newer ones like Arduino Mini, Bluetooth # or Diecimila have the atmega168. If you're using a LilyPad Arduino, # change F_CPU to 8000000. If you are using Gen7 electronics, you @@ -44,7 +44,7 @@ ARDUINO_INSTALL_DIR ?= ../../arduino-0022 ARDUINO_VERSION ?= 22 # You can optionally set a path to the avr-gcc tools. Requires a trailing slash. (ex: /usr/local/avr-gcc/bin) -AVR_TOOLS_PATH ?= +AVR_TOOLS_PATH ?= #Programmer configuration UPLOAD_RATE ?= 115200 @@ -54,6 +54,9 @@ UPLOAD_PORT ?= /dev/arduino #Directory used to build files in, contains all the build files, from object files to the final hex file. BUILD_DIR ?= applet +# This defines whether Liquid_TWI2 support will be built +LIQUID_TWI2 ?= 0 + ############################################################################ # Below here nothing should be changed... @@ -114,6 +117,12 @@ MCU ?= atmega644p else ifeq ($(HARDWARE_MOTHERBOARD),63) HARDWARE_VARIANT ?= Sanguino MCU ?= atmega644p +else ifeq ($(HARDWARE_MOTHERBOARD),65) +HARDWARE_VARIANT ?= Sanguino +MCU ?= atmega1284p +else ifeq ($(HARDWARE_MOTHERBOARD),66) +HARDWARE_VARIANT ?= Sanguino +MCU ?= atmega1284p #Ultimaker else ifeq ($(HARDWARE_MOTHERBOARD),7) @@ -193,9 +202,19 @@ VPATH += $(HARDWARE_SRC) ifeq ($(HARDWARE_VARIANT), arduino) VPATH += $(ARDUINO_INSTALL_DIR)/libraries/LiquidCrystal VPATH += $(ARDUINO_INSTALL_DIR)/libraries/SPI +ifeq ($(LIQUID_TWI2), 1) +VPATH += $(ARDUINO_INSTALL_DIR)/libraries/Wire +VPATH += $(ARDUINO_INSTALL_DIR)/libraries/Wire/utility +VPATH += $(ARDUINO_INSTALL_DIR)/libraries/LiquidTWI2 +endif else VPATH += $(HARDWARE_DIR)/libraries/LiquidCrystal VPATH += $(HARDWARE_DIR)/libraries/SPI +ifeq ($(LIQUID_TWI2), 1) +VPATH += $(HARDWARE_DIR)/libraries/Wire +VPATH += $(HARDWARE_DIR)/libraries/Wire/utility +VPATH += $(HARDWARE_DIR)/libraries/LiquidTWI2 +endif endif ifeq ($(HARDWARE_VARIANT), arduino) HARDWARE_SUB_VARIANT ?= mega @@ -212,8 +231,13 @@ CXXSRC = WMath.cpp WString.cpp Print.cpp Marlin_main.cpp \ MarlinSerial.cpp Sd2Card.cpp SdBaseFile.cpp SdFatUtil.cpp \ SdFile.cpp SdVolume.cpp motion_control.cpp planner.cpp \ stepper.cpp temperature.cpp cardreader.cpp ConfigurationStore.cpp \ - watchdog.cpp -CXXSRC += LiquidCrystal.cpp ultralcd.cpp SPI.cpp + watchdog.cpp SPI.cpp Servo.cpp Tone.cpp ultralcd.cpp +ifeq ($(LIQUID_TWI2), 0) +CXXSRC += LiquidCrystal.cpp +else +SRC += twi.c +CXXSRC += Wire.cpp LiquidTWI2.cpp +endif #Check for Arduino 1.0.0 or higher and use the correct sourcefiles for that version ifeq ($(shell [ $(ARDUINO_VERSION) -ge 100 ] && echo true), true) @@ -277,6 +301,7 @@ ifneq ($(HARDWARE_MOTHERBOARD),) CTUNING += -DMOTHERBOARD=${HARDWARE_MOTHERBOARD} endif #CEXTRA = -Wa,-adhlns=$(<:.c=.lst) +CEXTRA = -fno-use-cxa-atexit CFLAGS := $(CDEBUG) $(CDEFS) $(CINCS) -O$(OPT) $(CWARN) $(CEXTRA) $(CTUNING) CXXFLAGS := $(CDEFS) $(CINCS) -O$(OPT) -Wall $(CEXTRA) $(CTUNING) @@ -287,7 +312,12 @@ LDFLAGS = -lm # Programming support using avrdude. Settings and variables. AVRDUDE_PORT = $(UPLOAD_PORT) AVRDUDE_WRITE_FLASH = -U flash:w:$(BUILD_DIR)/$(TARGET).hex:i -AVRDUDE_FLAGS = -D -C $(ARDUINO_INSTALL_DIR)/hardware/tools/avrdude.conf \ +ifeq ($(shell uname -s), Linux) +AVRDUDE_CONF = $(ARDUINO_INSTALL_DIR)/hardware/tools/avrdude.conf +else +AVRDUDE_CONF = $(ARDUINO_INSTALL_DIR)/hardware/tools/avr/etc/avrdude.conf +endif +AVRDUDE_FLAGS = -D -C $(AVRDUDE_CONF) \ -p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) \ -b $(UPLOAD_RATE) @@ -317,19 +347,19 @@ endif # Default target. all: sizeafter -build: $(BUILD_DIR) elf hex +build: $(BUILD_DIR) elf hex # Creates the object directory -$(BUILD_DIR): +$(BUILD_DIR): $P mkdir -p $(BUILD_DIR) elf: $(BUILD_DIR)/$(TARGET).elf hex: $(BUILD_DIR)/$(TARGET).hex eep: $(BUILD_DIR)/$(TARGET).eep -lss: $(BUILD_DIR)/$(TARGET).lss +lss: $(BUILD_DIR)/$(TARGET).lss sym: $(BUILD_DIR)/$(TARGET).sym -# Program the device. +# Program the device. # Do not try to reset an arduino if it's not one upload: $(BUILD_DIR)/$(TARGET).hex ifeq (${AVRDUDE_PROGRAMMER}, arduino) @@ -356,7 +386,7 @@ COFFCONVERT=$(OBJCOPY) --debugging \ --change-section-address .data-0x800000 \ --change-section-address .bss-0x800000 \ --change-section-address .noinit-0x800000 \ - --change-section-address .eeprom-0x810000 + --change-section-address .eeprom-0x810000 coff: $(BUILD_DIR)/$(TARGET).elf diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h index 25c5aca636b4c067682f1e2102bf86982dd5cb13..f8fa556a00623d911faf8a2a9a47aacd61780a4f 100644 --- a/Marlin/Marlin.h +++ b/Marlin/Marlin.h @@ -34,6 +34,10 @@ # define analogInputToDigitalPin(p) ((p) + A0) #endif +#ifdef AT90USB +#include "HardwareSerial.h" +#endif + #include "MarlinSerial.h" #ifndef cbi @@ -46,27 +50,31 @@ #include "WString.h" #ifdef AT90USB - #define MYSERIAL Serial + #ifdef BTENABLED + #define MYSERIAL bt + #else + #define MYSERIAL Serial + #endif // BTENABLED #else #define MYSERIAL MSerial #endif -#define SERIAL_PROTOCOL(x) MYSERIAL.print(x); -#define SERIAL_PROTOCOL_F(x,y) MYSERIAL.print(x,y); -#define SERIAL_PROTOCOLPGM(x) serialprintPGM(PSTR(x)); -#define SERIAL_PROTOCOLLN(x) {MYSERIAL.print(x);MYSERIAL.write('\n');} -#define SERIAL_PROTOCOLLNPGM(x) {serialprintPGM(PSTR(x));MYSERIAL.write('\n');} +#define SERIAL_PROTOCOL(x) (MYSERIAL.print(x)) +#define SERIAL_PROTOCOL_F(x,y) (MYSERIAL.print(x,y)) +#define SERIAL_PROTOCOLPGM(x) (serialprintPGM(PSTR(x))) +#define SERIAL_PROTOCOLLN(x) (MYSERIAL.print(x),MYSERIAL.write('\n')) +#define SERIAL_PROTOCOLLNPGM(x) (serialprintPGM(PSTR(x)),MYSERIAL.write('\n')) const char errormagic[] PROGMEM ="Error:"; const char echomagic[] PROGMEM ="echo:"; -#define SERIAL_ERROR_START serialprintPGM(errormagic); +#define SERIAL_ERROR_START (serialprintPGM(errormagic)) #define SERIAL_ERROR(x) SERIAL_PROTOCOL(x) #define SERIAL_ERRORPGM(x) SERIAL_PROTOCOLPGM(x) #define SERIAL_ERRORLN(x) SERIAL_PROTOCOLLN(x) #define SERIAL_ERRORLNPGM(x) SERIAL_PROTOCOLLNPGM(x) -#define SERIAL_ECHO_START serialprintPGM(echomagic); +#define SERIAL_ECHO_START (serialprintPGM(echomagic)) #define SERIAL_ECHO(x) SERIAL_PROTOCOL(x) #define SERIAL_ECHOPGM(x) SERIAL_PROTOCOLPGM(x) #define SERIAL_ECHOLN(x) SERIAL_PROTOCOLLN(x) @@ -96,7 +104,11 @@ void process_commands(); void manage_inactivity(); -#if X_ENABLE_PIN > -1 +#if defined(DUAL_X_CARRIAGE) && defined(X_ENABLE_PIN) && X_ENABLE_PIN > -1 \ + && defined(X2_ENABLE_PIN) && X2_ENABLE_PIN > -1 + #define enable_x() do { WRITE(X_ENABLE_PIN, X_ENABLE_ON); WRITE(X2_ENABLE_PIN, X_ENABLE_ON); } while (0) + #define disable_x() do { WRITE(X_ENABLE_PIN,!X_ENABLE_ON); WRITE(X2_ENABLE_PIN,!X_ENABLE_ON); } while (0) +#elif defined(X_ENABLE_PIN) && X_ENABLE_PIN > -1 #define enable_x() WRITE(X_ENABLE_PIN, X_ENABLE_ON) #define disable_x() WRITE(X_ENABLE_PIN,!X_ENABLE_ON) #else @@ -104,15 +116,20 @@ void manage_inactivity(); #define disable_x() ; #endif -#if Y_ENABLE_PIN > -1 - #define enable_y() WRITE(Y_ENABLE_PIN, Y_ENABLE_ON) - #define disable_y() WRITE(Y_ENABLE_PIN,!Y_ENABLE_ON) +#if defined(Y_ENABLE_PIN) && Y_ENABLE_PIN > -1 + #ifdef Y_DUAL_STEPPER_DRIVERS + #define enable_y() { WRITE(Y_ENABLE_PIN, Y_ENABLE_ON); WRITE(Y2_ENABLE_PIN, Y_ENABLE_ON); } + #define disable_y() { WRITE(Y_ENABLE_PIN,!Y_ENABLE_ON); WRITE(Y2_ENABLE_PIN, !Y_ENABLE_ON); } + #else + #define enable_y() WRITE(Y_ENABLE_PIN, Y_ENABLE_ON) + #define disable_y() WRITE(Y_ENABLE_PIN,!Y_ENABLE_ON) + #endif #else #define enable_y() ; #define disable_y() ; #endif -#if Z_ENABLE_PIN > -1 +#if defined(Z_ENABLE_PIN) && Z_ENABLE_PIN > -1 #ifdef Z_DUAL_STEPPER_DRIVERS #define enable_z() { WRITE(Z_ENABLE_PIN, Z_ENABLE_ON); WRITE(Z2_ENABLE_PIN, Z_ENABLE_ON); } #define disable_z() { WRITE(Z_ENABLE_PIN,!Z_ENABLE_ON); WRITE(Z2_ENABLE_PIN,!Z_ENABLE_ON); } @@ -157,6 +174,10 @@ void FlushSerialRequestResend(); void ClearToSend(); void get_coordinates(); +#ifdef DELTA +void calculate_delta(float cartesian[3]); +extern float delta[3]; +#endif void prepare_move(); void kill(); void Stop(); @@ -183,9 +204,20 @@ extern int feedmultiply; extern int extrudemultiply; // Sets extrude multiply factor (in percent) extern float current_position[NUM_AXIS] ; extern float add_homeing[3]; +#ifdef DELTA +extern float endstop_adj[3]; +#endif extern float min_pos[3]; extern float max_pos[3]; extern int fanSpeed; +#ifdef BARICUDA +extern int ValvePressure; +extern int EtoPPressure; +#endif + +#ifdef FAN_SOFT_PWM +extern unsigned char fanSpeedSoftPwm; +#endif #ifdef FWRETRACT extern bool autoretract_enabled; diff --git a/Marlin/Marlin.ino b/Marlin/Marlin.ino new file mode 100644 index 0000000000000000000000000000000000000000..2d6211c97142e778297ba06ea115d3bd312caa82 --- /dev/null +++ b/Marlin/Marlin.ino @@ -0,0 +1,52 @@ +/* -*- c++ -*- */ + +/* + Reprap firmware based on Sprinter and grbl. + Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + */ + +/* + This firmware is a mashup between Sprinter and grbl. + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + + It has preliminary support for Matthew Roberts advance algorithm + http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + */ + +/* All the implementation is done in *.cpp files to get better compatibility with avr-gcc without the Arduino IDE */ +/* Use this file to help the Arduino IDE find which Arduino libraries are needed and to keep documentation on GCode */ + +#include "Configuration.h" +#include "pins.h" + +#ifdef ULTRA_LCD + #if defined(LCD_I2C_TYPE_PCF8575) + #include + #include + #elif defined(LCD_I2C_TYPE_MCP23017) || defined(LCD_I2C_TYPE_MCP23008) + #include + #include + #elif defined(DOGLCD) + #include // library for graphics LCD by Oli Kraus (https://code.google.com/p/u8glib/) + #else + #include // library for character LCD + #endif +#endif + +#if defined(DIGIPOTSS_PIN) && DIGIPOTSS_PIN > -1 +#include +#endif diff --git a/Marlin/Marlin.pde b/Marlin/Marlin.pde new file mode 100644 index 0000000000000000000000000000000000000000..2d6211c97142e778297ba06ea115d3bd312caa82 --- /dev/null +++ b/Marlin/Marlin.pde @@ -0,0 +1,52 @@ +/* -*- c++ -*- */ + +/* + Reprap firmware based on Sprinter and grbl. + Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + */ + +/* + This firmware is a mashup between Sprinter and grbl. + (https://github.com/kliment/Sprinter) + (https://github.com/simen/grbl/tree) + + It has preliminary support for Matthew Roberts advance algorithm + http://reprap.org/pipermail/reprap-dev/2011-May/003323.html + */ + +/* All the implementation is done in *.cpp files to get better compatibility with avr-gcc without the Arduino IDE */ +/* Use this file to help the Arduino IDE find which Arduino libraries are needed and to keep documentation on GCode */ + +#include "Configuration.h" +#include "pins.h" + +#ifdef ULTRA_LCD + #if defined(LCD_I2C_TYPE_PCF8575) + #include + #include + #elif defined(LCD_I2C_TYPE_MCP23017) || defined(LCD_I2C_TYPE_MCP23008) + #include + #include + #elif defined(DOGLCD) + #include // library for graphics LCD by Oli Kraus (https://code.google.com/p/u8glib/) + #else + #include // library for character LCD + #endif +#endif + +#if defined(DIGIPOTSS_PIN) && DIGIPOTSS_PIN > -1 +#include +#endif diff --git a/Marlin/MarlinSerial.cpp b/Marlin/MarlinSerial.cpp index 1358f38590b8451f9d7a602e8d08323cbf76bcb5..0433df2d32170bf5b21b448efe610ac41d9fb93b 100644 --- a/Marlin/MarlinSerial.cpp +++ b/Marlin/MarlinSerial.cpp @@ -320,3 +320,9 @@ MarlinSerial MSerial; #endif // whole file #endif // !AT90USB + +// For AT90USB targets use the UART for BT interfacing +#if defined(AT90USB) && defined (BTENABLED) + HardwareSerial bt; +#endif + diff --git a/Marlin/MarlinSerial.h b/Marlin/MarlinSerial.h index 9514730fa05e7dbff4b549db16a6964c3deb6c10..7ccdfd6a0eee6984206c687b4e4c531f12640fef 100644 --- a/Marlin/MarlinSerial.h +++ b/Marlin/MarlinSerial.h @@ -181,4 +181,9 @@ class MarlinSerial //: public Stream extern MarlinSerial MSerial; #endif // !AT90USB +// Use the UART for BT in AT90USB configurations +#if defined(AT90USB) && defined (BTENABLED) + extern HardwareSerial bt; +#endif + #endif diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index 614f551e8cd22fc72e5c5b39cfe66f25cd5f2f4e..99477d56551f2ea456b3cb75a24fe6ee065b4022 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -3,17 +3,17 @@ /* Reprap firmware based on Sprinter and grbl. Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm - + This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. - + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License along with this program. If not, see . */ @@ -22,13 +22,17 @@ This firmware is a mashup between Sprinter and grbl. (https://github.com/kliment/Sprinter) (https://github.com/simen/grbl/tree) - - It has preliminary support for Matthew Roberts advance algorithm + + It has preliminary support for Matthew Roberts advance algorithm http://reprap.org/pipermail/reprap-dev/2011-May/003323.html */ #include "Marlin.h" +#ifdef ENABLE_AUTO_BED_LEVELING +#include "vector_3.h" +#endif // ENABLE_AUTO_BED_LEVELING + #include "ultralcd.h" #include "planner.h" #include "stepper.h" @@ -40,7 +44,16 @@ #include "language.h" #include "pins_arduino.h" -#if DIGIPOTSS_PIN > -1 +#ifdef BLINKM +#include "BlinkM.h" +#include "Wire.h" +#endif + +#if NUM_SERVOS > 0 +#include "Servo.h" +#endif + +#if defined(DIGIPOTSS_PIN) && DIGIPOTSS_PIN > -1 #include #endif @@ -57,21 +70,15 @@ // G10 - retract filament according to settings of M207 // G11 - retract recover filament according to settings of M208 // G28 - Home all Axis +// G29 - Detailed Z-Probe, probes the bed at 3 points. You must de at the home position for this to work correctly. +// G30 - Single Z Probe, probes bed at current XY location. // G90 - Use Absolute Coordinates // G91 - Use Relative Coordinates // G92 - Set current position to cordinates given -//RepRap M Codes +// M Codes // M0 - Unconditional stop - Wait for user to press a button on the LCD (Only if ULTRA_LCD is enabled) // M1 - Same as M0 -// M104 - Set extruder target temp -// M105 - Read current temp -// M106 - Fan on -// M107 - Fan off -// M109 - Wait for extruder current temp to reach target temp. -// M114 - Display current position - -//Custom M Codes // M17 - Enable/Power all stepper motors // M18 - Disable all stepper motors; same as M84 // M20 - List SD card @@ -86,21 +93,37 @@ // M29 - Stop SD write // M30 - Delete file from SD (M30 filename.g) // M31 - Output time since last M109 or SD card start to serial +// M32 - Select file and start SD print (Can be used _while_ printing from SD card files): +// syntax "M32 /path/filename#", or "M32 S !filename#" +// Call gcode file : "M32 P !filename#" and return to caller file after finishing (simiarl to #include). +// The '#' is necessary when calling from within sd files, as it stops buffer prereading // M42 - Change pin status via gcode Use M42 Px Sy to set pin x to value y, when omitting Px the onboard led will be used. // M80 - Turn on Power Supply // M81 - Turn off Power Supply // M82 - Set E codes absolute (default) // M83 - Set E codes relative while in Absolute Coordinates (G90) mode -// M84 - Disable steppers until next move, +// M84 - Disable steppers until next move, // or use S to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout. // M85 - Set inactivity shutdown timer with parameter S. To disable set zero (default) // M92 - Set axis_steps_per_unit - same syntax as G92 -// M114 - Output current position to serial port -// M115 - Capabilities string +// M104 - Set extruder target temp +// M105 - Read current temp +// M106 - Fan on +// M107 - Fan off +// M109 - Sxxx Wait for extruder current temp to reach target temp. Waits only when heating +// Rxxx Wait for extruder current temp to reach target temp. Waits when heating and cooling +// M114 - Output current position to serial port +// M115 - Capabilities string // M117 - display message // M119 - Output Endstop status to serial port +// M126 - Solenoid Air Valve Open (BariCUDA support by jmil) +// M127 - Solenoid Air Valve Closed (BariCUDA vent to atmospheric pressure by jmil) +// M128 - EtoP Open (BariCUDA EtoP = electricity to air pressure transducer by jmil) +// M129 - EtoP Closed (BariCUDA EtoP = electricity to air pressure transducer by jmil) // M140 - Set bed target temp -// M190 - Wait for bed current temp to reach target temp. +// M150 - Set BlinkM Colour Output R: Red<0-255> U(!): Green<0-255> B: Blue<0-255> over i2c, G for green does not work. +// M190 - Sxxx Wait for bed current temp to reach target temp. Waits only when heating +// Rxxx Wait for bed current temp to reach target temp. Waits when heating and cooling // M200 - Set filament diameter // M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) // M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! @@ -114,22 +137,31 @@ // M218 - set hotend offset (in mm): T X Y // M220 S- set speed factor override percentage // M221 S- set extrude factor override percentage +// M226 P S- Wait until the specified pin reaches the state required // M240 - Trigger a camera to take a photograph +// M250 - Set LCD contrast C (value 0..63) +// M280 - set servo position absolute. P: servo index, S: angle or microseconds +// M300 - Play beepsound S P // M301 - Set PID parameters P I and D -// M302 - Allow cold extrudes +// M302 - Allow cold extrudes, or set the minimum extrude S. // M303 - PID relay autotune S sets the target temperature. (default target temperature = 150C) // M304 - Set bed PID parameters P I and D // M400 - Finish all moves +// M401 - Lower z-probe if present +// M402 - Raise z-probe if present // M500 - stores paramters in EEPROM -// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). +// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). // M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. // M503 - print the current settings (from memory not from eeprom) // M540 - Use S[0|1] to enable or disable the stop SD card print on endstop hit (requires ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED) // M600 - Pause for filament change X[pos] Y[pos] Z[relative lift] E[initial retract] L[later retract distance for removal] +// M666 - set delta endstop adjustemnt +// M605 - Set dual x-carriage movement mode: S [ X R ] // M907 - Set digital trimpot motor current using axis codes. // M908 - Control digital trimpot directly. // M350 - Set microstepping mode. // M351 - Toggle MS1 MS2 pins directly. +// M928 - Start SD logging (M928 filename.g) - ended by M29 // M999 - Restart after being stopped by error //Stepper Movement Variables @@ -152,18 +184,35 @@ int saved_feedmultiply; int extrudemultiply=100; //100->1 200->2 float current_position[NUM_AXIS] = { 0.0, 0.0, 0.0, 0.0 }; float add_homeing[3]={0,0,0}; +#ifdef DELTA +float endstop_adj[3]={0,0,0}; +#endif float min_pos[3] = { X_MIN_POS, Y_MIN_POS, Z_MIN_POS }; float max_pos[3] = { X_MAX_POS, Y_MAX_POS, Z_MAX_POS }; -// Extruder offset, only in XY plane + +// Extruder offset #if EXTRUDERS > 1 -float extruder_offset[2][EXTRUDERS] = { +#ifndef DUAL_X_CARRIAGE + #define NUM_EXTRUDER_OFFSETS 2 // only in XY plane +#else + #define NUM_EXTRUDER_OFFSETS 3 // supports offsets in XYZ plane +#endif +float extruder_offset[NUM_EXTRUDER_OFFSETS][EXTRUDERS] = { #if defined(EXTRUDER_OFFSET_X) && defined(EXTRUDER_OFFSET_Y) - EXTRUDER_OFFSET_X, EXTRUDER_OFFSET_Y + EXTRUDER_OFFSET_X, EXTRUDER_OFFSET_Y #endif -}; +}; #endif uint8_t active_extruder = 0; int fanSpeed=0; +#ifdef SERVO_ENDSTOPS + int servo_endstops[] = SERVO_ENDSTOPS; + int servo_endstop_angles[] = SERVO_ENDSTOP_ANGLES; +#endif +#ifdef BARICUDA +int ValvePressure=0; +int EtoPPressure=0; +#endif #ifdef FWRETRACT bool autoretract_enabled=true; @@ -172,6 +221,14 @@ int fanSpeed=0; float retract_recover_length=0, retract_recover_feedrate=8*60; #endif +#ifdef ULTIPANEL + bool powersupply = true; +#endif + +#ifdef DELTA +float delta[3] = {0.0, 0.0, 0.0}; +#endif + //=========================================================================== //=============================private variables============================= //=========================================================================== @@ -213,6 +270,13 @@ static uint8_t tmp_extruder; bool Stopped=false; +#if NUM_SERVOS > 0 + Servo servos[NUM_SERVOS]; +#endif + +bool CooldownNoWait = true; +bool target_direction; + //=========================================================================== //=============================ROUTINES============================= //=========================================================================== @@ -279,49 +343,81 @@ void enquecommand_P(const char *cmd) void setup_killpin() { - #if( KILL_PIN>-1 ) + #if defined(KILL_PIN) && KILL_PIN > -1 pinMode(KILL_PIN,INPUT); WRITE(KILL_PIN,HIGH); #endif } - + void setup_photpin() { - #ifdef PHOTOGRAPH_PIN - #if (PHOTOGRAPH_PIN > -1) + #if defined(PHOTOGRAPH_PIN) && PHOTOGRAPH_PIN > -1 SET_OUTPUT(PHOTOGRAPH_PIN); WRITE(PHOTOGRAPH_PIN, LOW); - #endif - #endif + #endif } void setup_powerhold() { - #ifdef SUICIDE_PIN - #if (SUICIDE_PIN> -1) - SET_OUTPUT(SUICIDE_PIN); - WRITE(SUICIDE_PIN, HIGH); - #endif - #endif - #if (PS_ON_PIN > -1) - SET_OUTPUT(PS_ON_PIN); - WRITE(PS_ON_PIN, PS_ON_AWAKE); - #endif + #if defined(SUICIDE_PIN) && SUICIDE_PIN > -1 + SET_OUTPUT(SUICIDE_PIN); + WRITE(SUICIDE_PIN, HIGH); + #endif + #if defined(PS_ON_PIN) && PS_ON_PIN > -1 + SET_OUTPUT(PS_ON_PIN); + #if defined(PS_DEFAULT_OFF) + WRITE(PS_ON_PIN, PS_ON_ASLEEP); + #else + WRITE(PS_ON_PIN, PS_ON_AWAKE); + #endif + #endif } void suicide() { - #ifdef SUICIDE_PIN - #if (SUICIDE_PIN> -1) - SET_OUTPUT(SUICIDE_PIN); - WRITE(SUICIDE_PIN, LOW); - #endif + #if defined(SUICIDE_PIN) && SUICIDE_PIN > -1 + SET_OUTPUT(SUICIDE_PIN); + WRITE(SUICIDE_PIN, LOW); + #endif +} + +void servo_init() +{ + #if (NUM_SERVOS >= 1) && defined(SERVO0_PIN) && (SERVO0_PIN > -1) + servos[0].attach(SERVO0_PIN); + #endif + #if (NUM_SERVOS >= 2) && defined(SERVO1_PIN) && (SERVO1_PIN > -1) + servos[1].attach(SERVO1_PIN); + #endif + #if (NUM_SERVOS >= 3) && defined(SERVO2_PIN) && (SERVO2_PIN > -1) + servos[2].attach(SERVO2_PIN); + #endif + #if (NUM_SERVOS >= 4) && defined(SERVO3_PIN) && (SERVO3_PIN > -1) + servos[3].attach(SERVO3_PIN); + #endif + #if (NUM_SERVOS >= 5) + #error "TODO: enter initalisation code for more servos" + #endif + + // Set position of Servo Endstops that are defined + #ifdef SERVO_ENDSTOPS + for(int8_t i = 0; i < 3; i++) + { + if(servo_endstops[i] > -1) { + servos[servo_endstops[i]].write(servo_endstop_angles[i * 2 + 1]); + } + } + #endif + + #if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0) + delay(PROBE_SERVO_DEACTIVATION_DELAY); + servos[servo_endstops[Z_AXIS]].detach(); #endif } void setup() { - setup_killpin(); + setup_killpin(); setup_powerhold(); MYSERIAL.begin(BAUDRATE); SERIAL_PROTOCOLLNPGM("start"); @@ -358,17 +454,23 @@ void setup() { fromsd[i] = false; } - + // loads data from EEPROM if available else uses defaults (and resets step acceleration rate) - Config_RetrieveSettings(); + Config_RetrieveSettings(); - tp_init(); // Initialize temperature loop + tp_init(); // Initialize temperature loop plan_init(); // Initialize planner; watchdog_init(); st_init(); // Initialize stepper, this enables interrupts! setup_photpin(); - + servo_init(); + lcd_init(); + _delay_ms(1000); // wait 1sec to display the splash screen + + #if defined(CONTROLLERFAN_PIN) && CONTROLLERFAN_PIN > -1 + SET_OUTPUT(CONTROLLERFAN_PIN); //Set pin used for driver cooling fan + #endif } @@ -384,20 +486,27 @@ void loop() #ifdef SDSUPPORT if(card.saving) { - if(strstr_P(cmdbuffer[bufindr], PSTR("M29")) == NULL) - { - card.write_command(cmdbuffer[bufindr]); - SERIAL_PROTOCOLLNPGM(MSG_OK); - } - else - { - card.closefile(); - SERIAL_PROTOCOLLNPGM(MSG_FILE_SAVED); - } + if(strstr_P(cmdbuffer[bufindr], PSTR("M29")) == NULL) + { + card.write_command(cmdbuffer[bufindr]); + if(card.logging) + { + process_commands(); + } + else + { + SERIAL_PROTOCOLLNPGM(MSG_OK); + } + } + else + { + card.closefile(); + SERIAL_PROTOCOLLNPGM(MSG_FILE_SAVED); + } } else { - process_commands(); + process_commands(); } #else process_commands(); @@ -412,14 +521,14 @@ void loop() lcd_update(); } -void get_command() -{ +void get_command() +{ while( MYSERIAL.available() > 0 && buflen < BUFSIZE) { serial_char = MYSERIAL.read(); - if(serial_char == '\n' || - serial_char == '\r' || - (serial_char == ':' && comment_mode == false) || - serial_count >= (MAX_CMD_SIZE - 1) ) + if(serial_char == '\n' || + serial_char == '\r' || + (serial_char == ':' && comment_mode == false) || + serial_count >= (MAX_CMD_SIZE - 1) ) { if(!serial_count) { //if empty line comment_mode = false; //for new command @@ -460,7 +569,7 @@ void get_command() } //if no errors, continue parsing } - else + else { SERIAL_ERROR_START; SERIAL_ERRORPGM(MSG_ERR_NO_CHECKSUM); @@ -492,11 +601,11 @@ void get_command() case 2: case 3: if(Stopped == false) { // If printer is stopped by an error the G[0-3] codes are ignored. - #ifdef SDSUPPORT + #ifdef SDSUPPORT if(card.saving) break; - #endif //SDSUPPORT - SERIAL_PROTOCOLLNPGM(MSG_OK); + #endif //SDSUPPORT + SERIAL_PROTOCOLLNPGM(MSG_OK); } else { SERIAL_ERRORLNPGM(MSG_ERR_STOPPED); @@ -523,13 +632,22 @@ void get_command() if(!card.sdprinting || serial_count!=0){ return; } - while( !card.eof() && buflen < BUFSIZE) { + + //'#' stops reading from sd to the buffer prematurely, so procedural macro calls are possible + // if it occures, stop_buffering is triggered and the buffer is ran dry. + // this character _can_ occure in serial com, due to checksums. however, no checksums are used in sd printing + + static bool stop_buffering=false; + if(buflen==0) stop_buffering=false; + + while( !card.eof() && buflen < BUFSIZE && !stop_buffering) { int16_t n=card.get(); - serial_char = (char)n; - if(serial_char == '\n' || - serial_char == '\r' || - (serial_char == ':' && comment_mode == false) || - serial_count >= (MAX_CMD_SIZE - 1)||n==-1) + serial_char = (char)n; + if(serial_char == '\n' || + serial_char == '\r' || + (serial_char == '#' && comment_mode == false) || + (serial_char == ':' && comment_mode == false) || + serial_count >= (MAX_CMD_SIZE - 1)||n==-1) { if(card.eof()){ SERIAL_PROTOCOLLNPGM(MSG_FILE_PRINTED); @@ -545,8 +663,11 @@ void get_command() lcd_setstatus(time); card.printingHasFinished(); card.checkautostart(true); - + } + if(serial_char=='#') + stop_buffering=true; + if(!serial_count) { comment_mode = false; //for new command @@ -557,7 +678,7 @@ void get_command() fromsd[bufindw] = true; buflen += 1; bufindw = (bufindw + 1)%BUFSIZE; -// } +// } comment_mode = false; //for new command serial_count = 0; //clear buffer } @@ -567,20 +688,20 @@ void get_command() if(!comment_mode) cmdbuffer[bufindw][serial_count++] = serial_char; } } - + #endif //SDSUPPORT } -float code_value() -{ - return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); +float code_value() +{ + return (strtod(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL)); } -long code_value_long() -{ - return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); +long code_value_long() +{ + return (strtol(&cmdbuffer[bufindr][strchr_pointer - cmdbuffer[bufindr] + 1], NULL, 10)); } bool code_seen(char code) @@ -589,17 +710,17 @@ bool code_seen(char code) return (strchr_pointer != NULL); //Return True if a character was found } -#define DEFINE_PGM_READ_ANY(type, reader) \ - static inline type pgm_read_any(const type *p) \ - { return pgm_read_##reader##_near(p); } +#define DEFINE_PGM_READ_ANY(type, reader) \ + static inline type pgm_read_any(const type *p) \ + { return pgm_read_##reader##_near(p); } DEFINE_PGM_READ_ANY(float, float); DEFINE_PGM_READ_ANY(signed char, byte); -#define XYZ_CONSTS_FROM_CONFIG(type, array, CONFIG) \ -static const PROGMEM type array##_P[3] = \ - { X_##CONFIG, Y_##CONFIG, Z_##CONFIG }; \ -static inline type array(int axis) \ +#define XYZ_CONSTS_FROM_CONFIG(type, array, CONFIG) \ +static const PROGMEM type array##_P[3] = \ + { X_##CONFIG, Y_##CONFIG, Z_##CONFIG }; \ +static inline type array(int axis) \ { return pgm_read_any(&array##_P[axis]); } XYZ_CONSTS_FROM_CONFIG(float, base_min_pos, MIN_POS); @@ -609,12 +730,206 @@ XYZ_CONSTS_FROM_CONFIG(float, max_length, MAX_LENGTH); XYZ_CONSTS_FROM_CONFIG(float, home_retract_mm, HOME_RETRACT_MM); XYZ_CONSTS_FROM_CONFIG(signed char, home_dir, HOME_DIR); +#ifdef DUAL_X_CARRIAGE + #if EXTRUDERS == 1 || defined(COREXY) \ + || !defined(X2_ENABLE_PIN) || !defined(X2_STEP_PIN) || !defined(X2_DIR_PIN) \ + || !defined(X2_HOME_POS) || !defined(X2_MIN_POS) || !defined(X2_MAX_POS) \ + || !defined(X_MAX_PIN) || X_MAX_PIN < 0 + #error "Missing or invalid definitions for DUAL_X_CARRIAGE mode." + #endif + #if X_HOME_DIR != -1 || X2_HOME_DIR != 1 + #error "Please use canonical x-carriage assignment" // the x-carriages are defined by their homing directions + #endif + +#define DXC_FULL_CONTROL_MODE 0 +#define DXC_AUTO_PARK_MODE 1 +#define DXC_DUPLICATION_MODE 2 +static int dual_x_carriage_mode = DEFAULT_DUAL_X_CARRIAGE_MODE; + +static float x_home_pos(int extruder) { + if (extruder == 0) + return base_home_pos(X_AXIS) + add_homeing[X_AXIS]; + else + // In dual carriage mode the extruder offset provides an override of the + // second X-carriage offset when homed - otherwise X2_HOME_POS is used. + // This allow soft recalibration of the second extruder offset position without firmware reflash + // (through the M218 command). + return (extruder_offset[X_AXIS][1] > 0) ? extruder_offset[X_AXIS][1] : X2_HOME_POS; +} + +static int x_home_dir(int extruder) { + return (extruder == 0) ? X_HOME_DIR : X2_HOME_DIR; +} + +static float inactive_extruder_x_pos = X2_MAX_POS; // used in mode 0 & 1 +static bool active_extruder_parked = false; // used in mode 1 & 2 +static float raised_parked_position[NUM_AXIS]; // used in mode 1 +static unsigned long delayed_move_time = 0; // used in mode 1 +static float duplicate_extruder_x_offset = DEFAULT_DUPLICATION_X_OFFSET; // used in mode 2 +static float duplicate_extruder_temp_offset = 0; // used in mode 2 +bool extruder_duplication_enabled = false; // used in mode 2 +#endif //DUAL_X_CARRIAGE + static void axis_is_at_home(int axis) { +#ifdef DUAL_X_CARRIAGE + if (axis == X_AXIS) { + if (active_extruder != 0) { + current_position[X_AXIS] = x_home_pos(active_extruder); + min_pos[X_AXIS] = X2_MIN_POS; + max_pos[X_AXIS] = max(extruder_offset[X_AXIS][1], X2_MAX_POS); + return; + } + else if (dual_x_carriage_mode == DXC_DUPLICATION_MODE && active_extruder == 0) { + current_position[X_AXIS] = base_home_pos(X_AXIS) + add_homeing[X_AXIS]; + min_pos[X_AXIS] = base_min_pos(X_AXIS) + add_homeing[X_AXIS]; + max_pos[X_AXIS] = min(base_max_pos(X_AXIS) + add_homeing[X_AXIS], + max(extruder_offset[X_AXIS][1], X2_MAX_POS) - duplicate_extruder_x_offset); + return; + } + } +#endif current_position[axis] = base_home_pos(axis) + add_homeing[axis]; min_pos[axis] = base_min_pos(axis) + add_homeing[axis]; max_pos[axis] = base_max_pos(axis) + add_homeing[axis]; } +#ifdef ENABLE_AUTO_BED_LEVELING +static void set_bed_level_equation(float z_at_xLeft_yFront, float z_at_xRight_yFront, float z_at_xLeft_yBack) { + plan_bed_level_matrix.set_to_identity(); + + vector_3 xLeftyFront = vector_3(LEFT_PROBE_BED_POSITION, FRONT_PROBE_BED_POSITION, z_at_xLeft_yFront); + vector_3 xLeftyBack = vector_3(LEFT_PROBE_BED_POSITION, BACK_PROBE_BED_POSITION, z_at_xLeft_yBack); + vector_3 xRightyFront = vector_3(RIGHT_PROBE_BED_POSITION, FRONT_PROBE_BED_POSITION, z_at_xRight_yFront); + + vector_3 xPositive = (xRightyFront - xLeftyFront).get_normal(); + vector_3 yPositive = (xLeftyBack - xLeftyFront).get_normal(); + vector_3 planeNormal = vector_3::cross(yPositive, xPositive).get_normal(); + + //planeNormal.debug("planeNormal"); + //yPositive.debug("yPositive"); + matrix_3x3 bedLevel = matrix_3x3::create_look_at(planeNormal, yPositive); + //bedLevel.debug("bedLevel"); + + //plan_bed_level_matrix.debug("bed level before"); + //vector_3 uncorrected_position = plan_get_position_mm(); + //uncorrected_position.debug("position before"); + + // and set our bed level equation to do the right thing + plan_bed_level_matrix = matrix_3x3::create_inverse(bedLevel); + //plan_bed_level_matrix.debug("bed level after"); + + vector_3 corrected_position = plan_get_position(); + //corrected_position.debug("position after"); + current_position[X_AXIS] = corrected_position.x; + current_position[Y_AXIS] = corrected_position.y; + current_position[Z_AXIS] = corrected_position.z; + + // but the bed at 0 so we don't go below it. + current_position[Z_AXIS] = -Z_PROBE_OFFSET_FROM_EXTRUDER; + + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); +} + +static void run_z_probe() { + plan_bed_level_matrix.set_to_identity(); + feedrate = homing_feedrate[Z_AXIS]; + + // move down until you find the bed + float zPosition = -10; + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], zPosition, current_position[E_AXIS], feedrate/60, active_extruder); + st_synchronize(); + + // we have to let the planner know where we are right now as it is not where we said to go. + zPosition = st_get_position_mm(Z_AXIS); + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], zPosition, current_position[E_AXIS]); + + // move up the retract distance + zPosition += home_retract_mm(Z_AXIS); + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], zPosition, current_position[E_AXIS], feedrate/60, active_extruder); + st_synchronize(); + + // move back down slowly to find bed + feedrate = homing_feedrate[Z_AXIS]/4; + zPosition -= home_retract_mm(Z_AXIS) * 2; + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], zPosition, current_position[E_AXIS], feedrate/60, active_extruder); + st_synchronize(); + + current_position[Z_AXIS] = st_get_position_mm(Z_AXIS); + // make sure the planner knows where we are as it may be a bit different than we last said to move to + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); +} + +static void do_blocking_move_to(float x, float y, float z) { + float oldFeedRate = feedrate; + + feedrate = XY_TRAVEL_SPEED; + + current_position[X_AXIS] = x; + current_position[Y_AXIS] = y; + current_position[Z_AXIS] = z; + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], feedrate/60, active_extruder); + st_synchronize(); + + feedrate = oldFeedRate; +} + +static void do_blocking_move_relative(float offset_x, float offset_y, float offset_z) { + do_blocking_move_to(current_position[X_AXIS] + offset_x, current_position[Y_AXIS] + offset_y, current_position[Z_AXIS] + offset_z); +} + +static void setup_for_endstop_move() { + saved_feedrate = feedrate; + saved_feedmultiply = feedmultiply; + feedmultiply = 100; + previous_millis_cmd = millis(); + + enable_endstops(true); +} + +static void clean_up_after_endstop_move() { +#ifdef ENDSTOPS_ONLY_FOR_HOMING + enable_endstops(false); +#endif + + feedrate = saved_feedrate; + feedmultiply = saved_feedmultiply; + previous_millis_cmd = millis(); +} + +static void engage_z_probe() { + // Engage Z Servo endstop if enabled + #ifdef SERVO_ENDSTOPS + if (servo_endstops[Z_AXIS] > -1) { +#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0) + servos[servo_endstops[Z_AXIS]].attach(0); +#endif + servos[servo_endstops[Z_AXIS]].write(servo_endstop_angles[Z_AXIS * 2]); +#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0) + delay(PROBE_SERVO_DEACTIVATION_DELAY); + servos[servo_endstops[Z_AXIS]].detach(); +#endif + } + #endif +} + +static void retract_z_probe() { + // Retract Z Servo endstop if enabled + #ifdef SERVO_ENDSTOPS + if (servo_endstops[Z_AXIS] > -1) { +#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0) + servos[servo_endstops[Z_AXIS]].attach(0); +#endif + servos[servo_endstops[Z_AXIS]].write(servo_endstop_angles[Z_AXIS * 2 + 1]); +#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0) + delay(PROBE_SERVO_DEACTIVATION_DELAY); + servos[servo_endstops[Z_AXIS]].detach(); +#endif + } + #endif +} + +#endif // #ifdef ENABLE_AUTO_BED_LEVELING + static void homeaxis(int axis) { #define HOMEAXIS_DO(LETTER) \ ((LETTER##_MIN_PIN > -1 && LETTER##_HOME_DIR==-1) || (LETTER##_MAX_PIN > -1 && LETTER##_HOME_DIR==1)) @@ -623,28 +938,77 @@ static void homeaxis(int axis) { axis==Y_AXIS ? HOMEAXIS_DO(Y) : axis==Z_AXIS ? HOMEAXIS_DO(Z) : 0) { + int axis_home_dir = home_dir(axis); +#ifdef DUAL_X_CARRIAGE + if (axis == X_AXIS) + axis_home_dir = x_home_dir(active_extruder); +#endif + current_position[axis] = 0; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[axis] = 1.5 * max_length(axis) * home_dir(axis); + + // Engage Servo endstop if enabled + #ifdef SERVO_ENDSTOPS + #if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0) + if (axis==Z_AXIS) { + #if defined (Z_RAISE_BEFORE_HOMING) && (Z_RAISE_BEFORE_HOMING > 0) + destination[axis] = Z_RAISE_BEFORE_HOMING * axis_home_dir * (-1); // Set destination away from bed + feedrate = max_feedrate[axis]; + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate, active_extruder); + st_synchronize(); + #endif + engage_z_probe(); + } + else + #endif + if (servo_endstops[axis] > -1) { + servos[servo_endstops[axis]].write(servo_endstop_angles[axis * 2]); + } + #endif + + destination[axis] = 1.5 * max_length(axis) * axis_home_dir; feedrate = homing_feedrate[axis]; plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); st_synchronize(); - + current_position[axis] = 0; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[axis] = -home_retract_mm(axis) * home_dir(axis); + destination[axis] = -home_retract_mm(axis) * axis_home_dir; plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); st_synchronize(); - - destination[axis] = 2*home_retract_mm(axis) * home_dir(axis); - feedrate = homing_feedrate[axis]/2 ; + + destination[axis] = 2*home_retract_mm(axis) * axis_home_dir; +#ifdef DELTA + feedrate = homing_feedrate[axis]/10; +#else + feedrate = homing_feedrate[axis]/2 ; +#endif plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); st_synchronize(); - - axis_is_at_home(axis); +#ifdef DELTA + // retrace by the amount specified in endstop_adj + if (endstop_adj[axis] * axis_home_dir < 0) { + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[axis] = endstop_adj[axis]; + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); + st_synchronize(); + } +#endif + axis_is_at_home(axis); destination[axis] = current_position[axis]; feedrate = 0.0; endstops_hit_on_purpose(); + + // Retract Servo endstop if enabled + #ifdef SERVO_ENDSTOPS + if (servo_endstops[axis] > -1) { + servos[servo_endstops[axis]].write(servo_endstop_angles[axis * 2 + 1]); + } + #endif +#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0) + if (axis==Z_AXIS) retract_z_probe(); +#endif + } } #define HOMEAXIS(LETTER) homeaxis(LETTER##_AXIS) @@ -653,7 +1017,9 @@ void process_commands() { unsigned long codenum; //throw away variable char *starpos = NULL; - +#ifdef ENABLE_AUTO_BED_LEVELING + float x_tmp, y_tmp, z_tmp, real_z; +#endif if(code_seen('G')) { switch((int)code_value()) @@ -684,7 +1050,7 @@ void process_commands() codenum = 0; if(code_seen('P')) codenum = code_value(); // milliseconds to wait if(code_seen('S')) codenum = code_value() * 1000; // seconds to wait - + st_synchronize(); codenum += millis(); // keep track of when we started waiting previous_millis_cmd = millis(); @@ -694,30 +1060,29 @@ void process_commands() lcd_update(); } break; - #ifdef FWRETRACT + #ifdef FWRETRACT case 10: // G10 retract - if(!retracted) + if(!retracted) { destination[X_AXIS]=current_position[X_AXIS]; destination[Y_AXIS]=current_position[Y_AXIS]; - destination[Z_AXIS]=current_position[Z_AXIS]; + destination[Z_AXIS]=current_position[Z_AXIS]; current_position[Z_AXIS]+=-retract_zlift; - destination[E_AXIS]=current_position[E_AXIS]-retract_length; + destination[E_AXIS]=current_position[E_AXIS]-retract_length; feedrate=retract_feedrate; retracted=true; prepare_move(); } - + break; - case 11: // G10 retract_recover - if(!retracted) + case 11: // G11 retract_recover + if(retracted) { destination[X_AXIS]=current_position[X_AXIS]; destination[Y_AXIS]=current_position[Y_AXIS]; - destination[Z_AXIS]=current_position[Z_AXIS]; - + destination[Z_AXIS]=current_position[Z_AXIS]; current_position[Z_AXIS]+=retract_zlift; - current_position[E_AXIS]+=-retract_recover_length; + destination[E_AXIS]=current_position[E_AXIS]+retract_length+retract_recover_length; feedrate=retract_recover_feedrate; retracted=false; prepare_move(); @@ -725,38 +1090,83 @@ void process_commands() break; #endif //FWRETRACT case 28: //G28 Home all Axis one at a time +#ifdef ENABLE_AUTO_BED_LEVELING + plan_bed_level_matrix.set_to_identity(); //Reset the plane ("erase" all leveling data) +#endif //ENABLE_AUTO_BED_LEVELING + + saved_feedrate = feedrate; saved_feedmultiply = feedmultiply; feedmultiply = 100; previous_millis_cmd = millis(); - + enable_endstops(true); - + for(int8_t i=0; i < NUM_AXIS; i++) { destination[i] = current_position[i]; } feedrate = 0.0; + +#ifdef DELTA + // A delta can only safely home all axis at the same time + // all axis have to home at the same time + + // Move all carriages up together until the first endstop is hit. + current_position[X_AXIS] = 0; + current_position[Y_AXIS] = 0; + current_position[Z_AXIS] = 0; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + + destination[X_AXIS] = 3 * Z_MAX_LENGTH; + destination[Y_AXIS] = 3 * Z_MAX_LENGTH; + destination[Z_AXIS] = 3 * Z_MAX_LENGTH; + feedrate = 1.732 * homing_feedrate[X_AXIS]; + plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); + st_synchronize(); + endstops_hit_on_purpose(); + + current_position[X_AXIS] = destination[X_AXIS]; + current_position[Y_AXIS] = destination[Y_AXIS]; + current_position[Z_AXIS] = destination[Z_AXIS]; + + // take care of back off and rehome now we are all at the top + HOMEAXIS(X); + HOMEAXIS(Y); + HOMEAXIS(Z); + + calculate_delta(current_position); + plan_set_position(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS]); + +#else // NOT DELTA + home_all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))); - + #if Z_HOME_DIR > 0 // If homing away from BED do Z first if((home_all_axis) || (code_seen(axis_codes[Z_AXIS]))) { HOMEAXIS(Z); } #endif - + #ifdef QUICK_HOME if((home_all_axis)||( code_seen(axis_codes[X_AXIS]) && code_seen(axis_codes[Y_AXIS])) ) //first diagonal move { - current_position[X_AXIS] = 0;current_position[Y_AXIS] = 0; + current_position[X_AXIS] = 0;current_position[Y_AXIS] = 0; + + #ifndef DUAL_X_CARRIAGE + int x_axis_home_dir = home_dir(X_AXIS); + #else + int x_axis_home_dir = x_home_dir(active_extruder); + extruder_duplication_enabled = false; + #endif - plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR;destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; - feedrate = homing_feedrate[X_AXIS]; + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + destination[X_AXIS] = 1.5 * max_length(X_AXIS) * x_axis_home_dir;destination[Y_AXIS] = 1.5 * max_length(Y_AXIS) * home_dir(Y_AXIS); + feedrate = homing_feedrate[X_AXIS]; if(homing_feedrate[Y_AXIS] 0){ codenum += millis(); // keep track of when we started waiting - while(millis() < codenum && !LCD_CLICKED){ + while(millis() < codenum && !lcd_clicked()){ manage_heater(); manage_inactivity(); lcd_update(); } }else{ - while(!LCD_CLICKED){ + while(!lcd_clicked()){ manage_heater(); manage_inactivity(); lcd_update(); @@ -873,12 +1421,12 @@ void process_commands() #endif case 17: LCD_MESSAGEPGM(MSG_NO_MOVE); - enable_x(); - enable_y(); - enable_z(); - enable_e0(); - enable_e1(); - enable_e2(); + enable_x(); + enable_y(); + enable_z(); + enable_e0(); + enable_e1(); + enable_e2(); break; #ifdef SDSUPPORT @@ -888,9 +1436,9 @@ void process_commands() SERIAL_PROTOCOLLNPGM(MSG_END_FILE_LIST); break; case 21: // M21 - init SD card - + card.initsd(); - + break; case 22: //M22 - release SD card card.release(); @@ -930,19 +1478,63 @@ void process_commands() //processed in write to file routine above //card,saving = false; break; - case 30: //M30 Delete File - if (card.cardOK){ - card.closefile(); - starpos = (strchr(strchr_pointer + 4,'*')); - if(starpos != NULL){ - char* npos = strchr(cmdbuffer[bufindr], 'N'); - strchr_pointer = strchr(npos,' ') + 1; - *(starpos-1) = '\0'; - } - card.removeFile(strchr_pointer + 4); - } - break; - + case 30: //M30 Delete File + if (card.cardOK){ + card.closefile(); + starpos = (strchr(strchr_pointer + 4,'*')); + if(starpos != NULL){ + char* npos = strchr(cmdbuffer[bufindr], 'N'); + strchr_pointer = strchr(npos,' ') + 1; + *(starpos-1) = '\0'; + } + card.removeFile(strchr_pointer + 4); + } + break; + case 32: //M32 - Select file and start SD print + { + if(card.sdprinting) { + st_synchronize(); + + } + starpos = (strchr(strchr_pointer + 4,'*')); + + char* namestartpos = (strchr(strchr_pointer + 4,'!')); //find ! to indicate filename string start. + if(namestartpos==NULL) + { + namestartpos=strchr_pointer + 4; //default name position, 4 letters after the M + } + else + namestartpos++; //to skip the '!' + + if(starpos!=NULL) + *(starpos-1)='\0'; + + bool call_procedure=(code_seen('P')); + + if(strchr_pointer>namestartpos) + call_procedure=false; //false alert, 'P' found within filename + + if( card.cardOK ) + { + card.openFile(namestartpos,true,!call_procedure); + if(code_seen('S')) + if(strchr_pointer -1 + if (pin_number == FAN_PIN) + fanSpeed = pin_status; + #endif if (pin_number > -1) { pinMode(pin_number, OUTPUT); @@ -988,6 +1584,10 @@ void process_commands() break; } if (code_seen('S')) setTargetHotend(code_value(), tmp_extruder); +#ifdef DUAL_X_CARRIAGE + if (dual_x_carriage_mode == DXC_DUPLICATION_MODE && tmp_extruder == 0) + setTargetHotend1(code_value() == 0.0 ? 0.0 : code_value() + duplicate_extruder_temp_offset); +#endif setWatch(); break; case 140: // M140 set bed temp @@ -996,62 +1596,101 @@ void process_commands() case 105 : // M105 if(setTargetedHotend(105)){ break; - } - #if (TEMP_0_PIN > -1) + } + #if defined(TEMP_0_PIN) && TEMP_0_PIN > -1 SERIAL_PROTOCOLPGM("ok T:"); - SERIAL_PROTOCOL_F(degHotend(tmp_extruder),1); + SERIAL_PROTOCOL_F(degHotend(tmp_extruder),1); SERIAL_PROTOCOLPGM(" /"); - SERIAL_PROTOCOL_F(degTargetHotend(tmp_extruder),1); - #if TEMP_BED_PIN > -1 - SERIAL_PROTOCOLPGM(" B:"); + SERIAL_PROTOCOL_F(degTargetHotend(tmp_extruder),1); + #if defined(TEMP_BED_PIN) && TEMP_BED_PIN > -1 + SERIAL_PROTOCOLPGM(" B:"); SERIAL_PROTOCOL_F(degBed(),1); SERIAL_PROTOCOLPGM(" /"); SERIAL_PROTOCOL_F(degTargetBed(),1); #endif //TEMP_BED_PIN + for (int8_t cur_extruder = 0; cur_extruder < EXTRUDERS; ++cur_extruder) { + SERIAL_PROTOCOLPGM(" T"); + SERIAL_PROTOCOL(cur_extruder); + SERIAL_PROTOCOLPGM(":"); + SERIAL_PROTOCOL_F(degHotend(cur_extruder),1); + SERIAL_PROTOCOLPGM(" /"); + SERIAL_PROTOCOL_F(degTargetHotend(cur_extruder),1); + } #else SERIAL_ERROR_START; SERIAL_ERRORLNPGM(MSG_ERR_NO_THERMISTORS); #endif SERIAL_PROTOCOLPGM(" @:"); - SERIAL_PROTOCOL(getHeaterPower(tmp_extruder)); + SERIAL_PROTOCOL(getHeaterPower(tmp_extruder)); SERIAL_PROTOCOLPGM(" B@:"); - SERIAL_PROTOCOL(getHeaterPower(-1)); - + SERIAL_PROTOCOL(getHeaterPower(-1)); + + #ifdef SHOW_TEMP_ADC_VALUES + #if defined(TEMP_BED_PIN) && TEMP_BED_PIN > -1 + SERIAL_PROTOCOLPGM(" ADC B:"); + SERIAL_PROTOCOL_F(degBed(),1); + SERIAL_PROTOCOLPGM("C->"); + SERIAL_PROTOCOL_F(rawBedTemp()/OVERSAMPLENR,0); + #endif + for (int8_t cur_extruder = 0; cur_extruder < EXTRUDERS; ++cur_extruder) { + SERIAL_PROTOCOLPGM(" T"); + SERIAL_PROTOCOL(cur_extruder); + SERIAL_PROTOCOLPGM(":"); + SERIAL_PROTOCOL_F(degHotend(cur_extruder),1); + SERIAL_PROTOCOLPGM("C->"); + SERIAL_PROTOCOL_F(rawHotendTemp(cur_extruder)/OVERSAMPLENR,0); + } + #endif + SERIAL_PROTOCOLLN(""); return; break; - case 109: + case 109: {// M109 - Wait for extruder heater to reach target. if(setTargetedHotend(109)){ break; } - LCD_MESSAGEPGM(MSG_HEATING); + LCD_MESSAGEPGM(MSG_HEATING); #ifdef AUTOTEMP autotemp_enabled=false; #endif - if (code_seen('S')) setTargetHotend(code_value(), tmp_extruder); + if (code_seen('S')) { + setTargetHotend(code_value(), tmp_extruder); +#ifdef DUAL_X_CARRIAGE + if (dual_x_carriage_mode == DXC_DUPLICATION_MODE && tmp_extruder == 0) + setTargetHotend1(code_value() == 0.0 ? 0.0 : code_value() + duplicate_extruder_temp_offset); +#endif + CooldownNoWait = true; + } else if (code_seen('R')) { + setTargetHotend(code_value(), tmp_extruder); +#ifdef DUAL_X_CARRIAGE + if (dual_x_carriage_mode == DXC_DUPLICATION_MODE && tmp_extruder == 0) + setTargetHotend1(code_value() == 0.0 ? 0.0 : code_value() + duplicate_extruder_temp_offset); +#endif + CooldownNoWait = false; + } #ifdef AUTOTEMP if (code_seen('S')) autotemp_min=code_value(); if (code_seen('B')) autotemp_max=code_value(); - if (code_seen('F')) + if (code_seen('F')) { autotemp_factor=code_value(); autotemp_enabled=true; } #endif - + setWatch(); - codenum = millis(); + codenum = millis(); /* See if we are heating up or cooling down */ - bool target_direction = isHeatingHotend(tmp_extruder); // true if heating, false if cooling + target_direction = isHeatingHotend(tmp_extruder); // true if heating, false if cooling #ifdef TEMP_RESIDENCY_TIME long residencyStart; residencyStart = -1; - /* continue to loop until we have reached the target temp + /* continue to loop until we have reached the target temp _and_ until TEMP_RESIDENCY_TIME hasn't passed since we reached it */ while((residencyStart == -1) || (residencyStart >= 0 && (((unsigned int) (millis() - residencyStart)) < (TEMP_RESIDENCY_TIME * 1000UL))) ) { @@ -1061,9 +1700,9 @@ void process_commands() if( (millis() - codenum) > 1000UL ) { //Print Temp Reading and remaining time every 1 second while heating up/cooling down SERIAL_PROTOCOLPGM("T:"); - SERIAL_PROTOCOL_F(degHotend(tmp_extruder),1); + SERIAL_PROTOCOL_F(degHotend(tmp_extruder),1); SERIAL_PROTOCOLPGM(" E:"); - SERIAL_PROTOCOL((int)tmp_extruder); + SERIAL_PROTOCOL((int)tmp_extruder); #ifdef TEMP_RESIDENCY_TIME SERIAL_PROTOCOLPGM(" W:"); if(residencyStart > -1) @@ -1071,7 +1710,7 @@ void process_commands() codenum = ((TEMP_RESIDENCY_TIME * 1000UL) - (millis() - residencyStart)) / 1000UL; SERIAL_PROTOCOLLN( codenum ); } - else + else { SERIAL_PROTOCOLLN( "?" ); } @@ -1088,7 +1727,7 @@ void process_commands() or when current temp falls outside the hysteresis after target temp was reached */ if ((residencyStart == -1 && target_direction && (degHotend(tmp_extruder) >= (degTargetHotend(tmp_extruder)-TEMP_WINDOW))) || (residencyStart == -1 && !target_direction && (degHotend(tmp_extruder) <= (degTargetHotend(tmp_extruder)+TEMP_WINDOW))) || - (residencyStart > -1 && labs(degHotend(tmp_extruder) - degTargetHotend(tmp_extruder)) > TEMP_HYSTERESIS) ) + (residencyStart > -1 && labs(degHotend(tmp_extruder) - degTargetHotend(tmp_extruder)) > TEMP_HYSTERESIS) ) { residencyStart = millis(); } @@ -1100,11 +1739,20 @@ void process_commands() } break; case 190: // M190 - Wait for bed heater to reach target. - #if TEMP_BED_PIN > -1 + #if defined(TEMP_BED_PIN) && TEMP_BED_PIN > -1 LCD_MESSAGEPGM(MSG_BED_HEATING); - if (code_seen('S')) setTargetBed(code_value()); - codenum = millis(); - while(isHeatingBed()) + if (code_seen('S')) { + setTargetBed(code_value()); + CooldownNoWait = true; + } else if (code_seen('R')) { + setTargetBed(code_value()); + CooldownNoWait = false; + } + codenum = millis(); + + target_direction = isHeatingBed(); // true if heating, false if cooling + + while ( target_direction ? (isHeatingBed()) : (isCoolingBed()&&(CooldownNoWait==false)) ) { if(( millis() - codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. { @@ -1112,11 +1760,11 @@ void process_commands() SERIAL_PROTOCOLPGM("T:"); SERIAL_PROTOCOL(tt); SERIAL_PROTOCOLPGM(" E:"); - SERIAL_PROTOCOL((int)active_extruder); + SERIAL_PROTOCOL((int)active_extruder); SERIAL_PROTOCOLPGM(" B:"); - SERIAL_PROTOCOL_F(degBed(),1); - SERIAL_PROTOCOLLN(""); - codenum = millis(); + SERIAL_PROTOCOL_F(degBed(),1); + SERIAL_PROTOCOLLN(""); + codenum = millis(); } manage_heater(); manage_inactivity(); @@ -1127,38 +1775,95 @@ void process_commands() #endif break; - #if FAN_PIN > -1 + #if defined(FAN_PIN) && FAN_PIN > -1 case 106: //M106 Fan On if (code_seen('S')){ fanSpeed=constrain(code_value(),0,255); } else { - fanSpeed=255; + fanSpeed=255; } break; case 107: //M107 Fan Off fanSpeed = 0; break; #endif //FAN_PIN + #ifdef BARICUDA + // PWM for HEATER_1_PIN + #if defined(HEATER_1_PIN) && HEATER_1_PIN > -1 + case 126: //M126 valve open + if (code_seen('S')){ + ValvePressure=constrain(code_value(),0,255); + } + else { + ValvePressure=255; + } + break; + case 127: //M127 valve closed + ValvePressure = 0; + break; + #endif //HEATER_1_PIN + + // PWM for HEATER_2_PIN + #if defined(HEATER_2_PIN) && HEATER_2_PIN > -1 + case 128: //M128 valve open + if (code_seen('S')){ + EtoPPressure=constrain(code_value(),0,255); + } + else { + EtoPPressure=255; + } + break; + case 129: //M129 valve closed + EtoPPressure = 0; + break; + #endif //HEATER_2_PIN + #endif - #if (PS_ON_PIN > -1) - case 80: // M80 - ATX Power On + #if defined(PS_ON_PIN) && PS_ON_PIN > -1 + case 80: // M80 - Turn on Power Supply SET_OUTPUT(PS_ON_PIN); //GND WRITE(PS_ON_PIN, PS_ON_AWAKE); + + // If you have a switch on suicide pin, this is useful + // if you want to start another print with suicide feature after + // a print without suicide... + #if defined SUICIDE_PIN && SUICIDE_PIN > -1 + SET_OUTPUT(SUICIDE_PIN); + WRITE(SUICIDE_PIN, HIGH); + #endif + + #ifdef ULTIPANEL + powersupply = true; + LCD_MESSAGEPGM(WELCOME_MSG); + lcd_update(); + #endif break; #endif - - case 81: // M81 - ATX Power Off - - #if defined SUICIDE_PIN && SUICIDE_PIN > -1 + + case 81: // M81 - Turn off Power Supply + disable_heater(); + st_synchronize(); + disable_e0(); + disable_e1(); + disable_e2(); + finishAndDisableSteppers(); + fanSpeed = 0; + delay(1000); // Wait a little before to switch off + #if defined(SUICIDE_PIN) && SUICIDE_PIN > -1 st_synchronize(); suicide(); - #elif (PS_ON_PIN > -1) - SET_OUTPUT(PS_ON_PIN); + #elif defined(PS_ON_PIN) && PS_ON_PIN > -1 + SET_OUTPUT(PS_ON_PIN); WRITE(PS_ON_PIN, PS_ON_ASLEEP); #endif - break; - + #ifdef ULTIPANEL + powersupply = false; + LCD_MESSAGEPGM(MACHINE_NAME" "MSG_OFF"."); + lcd_update(); + #endif + break; + case 82: axis_relative_modes[3] = false; break; @@ -1167,11 +1872,11 @@ void process_commands() break; case 18: //compatibility case 84: // M84 - if(code_seen('S')){ - stepper_inactive_time = code_value() * 1000; + if(code_seen('S')){ + stepper_inactive_time = code_value() * 1000; } else - { + { bool all_axis = !((code_seen(axis_codes[0])) || (code_seen(axis_codes[1])) || (code_seen(axis_codes[2]))|| (code_seen(axis_codes[3]))); if(all_axis) { @@ -1193,18 +1898,18 @@ void process_commands() disable_e1(); disable_e2(); } - #endif + #endif } } break; case 85: // M85 code_seen('S'); - max_inactive_time = code_value() * 1000; + max_inactive_time = code_value() * 1000; break; case 92: // M92 - for(int8_t i=0; i < NUM_AXIS; i++) + for(int8_t i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) + if(code_seen(axis_codes[i])) { if(i == 3) { // E float value = code_value(); @@ -1238,16 +1943,16 @@ void process_commands() SERIAL_PROTOCOL(current_position[Y_AXIS]); SERIAL_PROTOCOLPGM("Z:"); SERIAL_PROTOCOL(current_position[Z_AXIS]); - SERIAL_PROTOCOLPGM("E:"); + SERIAL_PROTOCOLPGM("E:"); SERIAL_PROTOCOL(current_position[E_AXIS]); - + SERIAL_PROTOCOLPGM(MSG_COUNT_X); SERIAL_PROTOCOL(float(st_get_position(X_AXIS))/axis_steps_per_unit[X_AXIS]); SERIAL_PROTOCOLPGM("Y:"); SERIAL_PROTOCOL(float(st_get_position(Y_AXIS))/axis_steps_per_unit[Y_AXIS]); SERIAL_PROTOCOLPGM("Z:"); SERIAL_PROTOCOL(float(st_get_position(Z_AXIS))/axis_steps_per_unit[Z_AXIS]); - + SERIAL_PROTOCOLLN(""); break; case 120: // M120 @@ -1258,34 +1963,49 @@ void process_commands() break; case 119: // M119 SERIAL_PROTOCOLLN(MSG_M119_REPORT); - #if (X_MIN_PIN > -1) + #if defined(X_MIN_PIN) && X_MIN_PIN > -1 SERIAL_PROTOCOLPGM(MSG_X_MIN); - SERIAL_PROTOCOLLN(((READ(X_MIN_PIN)^X_ENDSTOPS_INVERTING)?MSG_ENDSTOP_HIT:MSG_ENDSTOP_OPEN)); + SERIAL_PROTOCOLLN(((READ(X_MIN_PIN)^X_MIN_ENDSTOP_INVERTING)?MSG_ENDSTOP_HIT:MSG_ENDSTOP_OPEN)); #endif - #if (X_MAX_PIN > -1) + #if defined(X_MAX_PIN) && X_MAX_PIN > -1 SERIAL_PROTOCOLPGM(MSG_X_MAX); - SERIAL_PROTOCOLLN(((READ(X_MAX_PIN)^X_ENDSTOPS_INVERTING)?MSG_ENDSTOP_HIT:MSG_ENDSTOP_OPEN)); + SERIAL_PROTOCOLLN(((READ(X_MAX_PIN)^X_MAX_ENDSTOP_INVERTING)?MSG_ENDSTOP_HIT:MSG_ENDSTOP_OPEN)); #endif - #if (Y_MIN_PIN > -1) + #if defined(Y_MIN_PIN) && Y_MIN_PIN > -1 SERIAL_PROTOCOLPGM(MSG_Y_MIN); - SERIAL_PROTOCOLLN(((READ(Y_MIN_PIN)^Y_ENDSTOPS_INVERTING)?MSG_ENDSTOP_HIT:MSG_ENDSTOP_OPEN)); + SERIAL_PROTOCOLLN(((READ(Y_MIN_PIN)^Y_MIN_ENDSTOP_INVERTING)?MSG_ENDSTOP_HIT:MSG_ENDSTOP_OPEN)); #endif - #if (Y_MAX_PIN > -1) + #if defined(Y_MAX_PIN) && Y_MAX_PIN > -1 SERIAL_PROTOCOLPGM(MSG_Y_MAX); - SERIAL_PROTOCOLLN(((READ(Y_MAX_PIN)^Y_ENDSTOPS_INVERTING)?MSG_ENDSTOP_HIT:MSG_ENDSTOP_OPEN)); + SERIAL_PROTOCOLLN(((READ(Y_MAX_PIN)^Y_MAX_ENDSTOP_INVERTING)?MSG_ENDSTOP_HIT:MSG_ENDSTOP_OPEN)); #endif - #if (Z_MIN_PIN > -1) + #if defined(Z_MIN_PIN) && Z_MIN_PIN > -1 SERIAL_PROTOCOLPGM(MSG_Z_MIN); - SERIAL_PROTOCOLLN(((READ(Z_MIN_PIN)^Z_ENDSTOPS_INVERTING)?MSG_ENDSTOP_HIT:MSG_ENDSTOP_OPEN)); + SERIAL_PROTOCOLLN(((READ(Z_MIN_PIN)^Z_MIN_ENDSTOP_INVERTING)?MSG_ENDSTOP_HIT:MSG_ENDSTOP_OPEN)); #endif - #if (Z_MAX_PIN > -1) + #if defined(Z_MAX_PIN) && Z_MAX_PIN > -1 SERIAL_PROTOCOLPGM(MSG_Z_MAX); - SERIAL_PROTOCOLLN(((READ(Z_MAX_PIN)^Z_ENDSTOPS_INVERTING)?MSG_ENDSTOP_HIT:MSG_ENDSTOP_OPEN)); + SERIAL_PROTOCOLLN(((READ(Z_MAX_PIN)^Z_MAX_ENDSTOP_INVERTING)?MSG_ENDSTOP_HIT:MSG_ENDSTOP_OPEN)); #endif break; //TODO: update for all axis, use for loop + #ifdef BLINKM + case 150: // M150 + { + byte red; + byte grn; + byte blu; + + if(code_seen('R')) red = code_value(); + if(code_seen('U')) grn = code_value(); + if(code_seen('B')) blu = code_value(); + + SendColors(red,grn,blu); + } + break; + #endif //BLINKM case 201: // M201 - for(int8_t i=0; i < NUM_AXIS; i++) + for(int8_t i=0; i < NUM_AXIS; i++) { if(code_seen(axis_codes[i])) { @@ -1293,7 +2013,7 @@ void process_commands() } } // steps per sq second need to be updated to agree with the units per sq second (as they are what is used in the planner) - reset_acceleration_rates(); + reset_acceleration_rates(); break; #if 0 // Not used for Sprinter/grbl gen6 case 202: // M202 @@ -1324,55 +2044,63 @@ void process_commands() } break; case 206: // M206 additional homeing offset - for(int8_t i=0; i < 3; i++) + for(int8_t i=0; i < 3; i++) { if(code_seen(axis_codes[i])) add_homeing[i] = code_value(); } break; + #ifdef DELTA + case 666: // M666 set delta endstop adjustemnt + for(int8_t i=0; i < 3; i++) + { + if(code_seen(axis_codes[i])) endstop_adj[i] = code_value(); + } + break; + #endif #ifdef FWRETRACT case 207: //M207 - set retract length S[positive mm] F[feedrate mm/sec] Z[additional zlift/hop] { - if(code_seen('S')) + if(code_seen('S')) { retract_length = code_value() ; } - if(code_seen('F')) + if(code_seen('F')) { retract_feedrate = code_value() ; } - if(code_seen('Z')) + if(code_seen('Z')) { retract_zlift = code_value() ; } }break; case 208: // M208 - set retract recover length S[positive mm surplus to the M207 S*] F[feedrate mm/sec] { - if(code_seen('S')) + if(code_seen('S')) { retract_recover_length = code_value() ; } - if(code_seen('F')) + if(code_seen('F')) { retract_recover_feedrate = code_value() ; } }break; case 209: // M209 - S<1=true/0=false> enable automatic retract detect if the slicer did not support G10/11: every normal extrude-only move will be classified as retract depending on the direction. { - if(code_seen('S')) + if(code_seen('S')) { int t= code_value() ; switch(t) { case 0: autoretract_enabled=false;retracted=false;break; case 1: autoretract_enabled=true;retracted=false;break; - default: + default: SERIAL_ECHO_START; SERIAL_ECHOPGM(MSG_UNKNOWN_COMMAND); SERIAL_ECHO(cmdbuffer[bufindr]); SERIAL_ECHOLNPGM("\""); } } - + }break; #endif // FWRETRACT #if EXTRUDERS > 1 @@ -1381,7 +2109,7 @@ void process_commands() if(setTargetedHotend(218)){ break; } - if(code_seen('X')) + if(code_seen('X')) { extruder_offset[X_AXIS][tmp_extruder] = code_value(); } @@ -1389,21 +2117,31 @@ void process_commands() { extruder_offset[Y_AXIS][tmp_extruder] = code_value(); } + #ifdef DUAL_X_CARRIAGE + if(code_seen('Z')) + { + extruder_offset[Z_AXIS][tmp_extruder] = code_value(); + } + #endif SERIAL_ECHO_START; SERIAL_ECHOPGM(MSG_HOTEND_OFFSET); - for(tmp_extruder = 0; tmp_extruder < EXTRUDERS; tmp_extruder++) + for(tmp_extruder = 0; tmp_extruder < EXTRUDERS; tmp_extruder++) { SERIAL_ECHO(" "); SERIAL_ECHO(extruder_offset[X_AXIS][tmp_extruder]); SERIAL_ECHO(","); SERIAL_ECHO(extruder_offset[Y_AXIS][tmp_extruder]); + #ifdef DUAL_X_CARRIAGE + SERIAL_ECHO(","); + SERIAL_ECHO(extruder_offset[Z_AXIS][tmp_extruder]); + #endif } SERIAL_ECHOLN(""); }break; #endif case 220: // M220 S- set speed factor override percentage { - if(code_seen('S')) + if(code_seen('S')) { feedmultiply = code_value() ; } @@ -1411,12 +2149,124 @@ void process_commands() break; case 221: // M221 S- set extrude factor override percentage { - if(code_seen('S')) + if(code_seen('S')) { extrudemultiply = code_value() ; } } break; + + case 226: // M226 P S- Wait until the specified pin reaches the state required + { + if(code_seen('P')){ + int pin_number = code_value(); // pin number + int pin_state = -1; // required pin state - default is inverted + + if(code_seen('S')) pin_state = code_value(); // required pin state + + if(pin_state >= -1 && pin_state <= 1){ + + for(int8_t i = 0; i < (int8_t)sizeof(sensitive_pins); i++) + { + if (sensitive_pins[i] == pin_number) + { + pin_number = -1; + break; + } + } + + if (pin_number > -1) + { + st_synchronize(); + + pinMode(pin_number, INPUT); + + int target; + switch(pin_state){ + case 1: + target = HIGH; + break; + + case 0: + target = LOW; + break; + + case -1: + target = !digitalRead(pin_number); + break; + } + + while(digitalRead(pin_number) != target){ + manage_heater(); + manage_inactivity(); + lcd_update(); + } + } + } + } + } + break; + + #if NUM_SERVOS > 0 + case 280: // M280 - set servo position absolute. P: servo index, S: angle or microseconds + { + int servo_index = -1; + int servo_position = 0; + if (code_seen('P')) + servo_index = code_value(); + if (code_seen('S')) { + servo_position = code_value(); + if ((servo_index >= 0) && (servo_index < NUM_SERVOS)) { +#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0) + servos[servo_index].attach(0); +#endif + servos[servo_index].write(servo_position); +#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0) + delay(PROBE_SERVO_DEACTIVATION_DELAY); + servos[servo_index].detach(); +#endif + } + else { + SERIAL_ECHO_START; + SERIAL_ECHO("Servo "); + SERIAL_ECHO(servo_index); + SERIAL_ECHOLN(" out of range"); + } + } + else if (servo_index >= 0) { + SERIAL_PROTOCOL(MSG_OK); + SERIAL_PROTOCOL(" Servo "); + SERIAL_PROTOCOL(servo_index); + SERIAL_PROTOCOL(": "); + SERIAL_PROTOCOL(servos[servo_index].read()); + SERIAL_PROTOCOLLN(""); + } + } + break; + #endif // NUM_SERVOS > 0 + + #if LARGE_FLASH == true && ( BEEPER > 0 || defined(ULTRALCD) ) + case 300: // M300 + { + int beepS = code_seen('S') ? code_value() : 110; + int beepP = code_seen('P') ? code_value() : 1000; + if (beepS > 0) + { + #if BEEPER > 0 + tone(BEEPER, beepS); + delay(beepP); + noTone(BEEPER); + #elif defined(ULTRALCD) + lcd_buzz(beepS, beepP); + #endif + } + else + { + delay(beepP); + } + } + break; + #endif // M300 #ifdef PIDTEMP case 301: // M301 @@ -1428,10 +2278,10 @@ void process_commands() #ifdef PID_ADD_EXTRUSION_RATE if(code_seen('C')) Kc = code_value(); #endif - + updatePID(); SERIAL_PROTOCOL(MSG_OK); - SERIAL_PROTOCOL(" p:"); + SERIAL_PROTOCOL(" p:"); SERIAL_PROTOCOL(Kp); SERIAL_PROTOCOL(" i:"); SERIAL_PROTOCOL(unscalePID_i(Ki)); @@ -1455,7 +2305,7 @@ void process_commands() updatePID(); SERIAL_PROTOCOL(MSG_OK); - SERIAL_PROTOCOL(" p:"); + SERIAL_PROTOCOL(" p:"); SERIAL_PROTOCOL(bedKp); SERIAL_PROTOCOL(" i:"); SERIAL_PROTOCOL(unscalePID_i(bedKi)); @@ -1467,8 +2317,7 @@ void process_commands() #endif //PIDTEMP case 240: // M240 Triggers a camera by emulating a Canon RC-1 : http://www.doc-diy.net/photo/rc-1_hacked/ { - #ifdef PHOTOGRAPH_PIN - #if (PHOTOGRAPH_PIN > -1) + #if defined(PHOTOGRAPH_PIN) && PHOTOGRAPH_PIN > -1 const uint8_t NUM_PULSES=16; const float PULSE_LENGTH=0.01524; for(int i=0; i < NUM_PULSES; i++) { @@ -1484,24 +2333,38 @@ void process_commands() WRITE(PHOTOGRAPH_PIN, LOW); _delay_ms(PULSE_LENGTH); } - #endif #endif } break; - - case 302: // allow cold extrudes +#ifdef DOGLCD + case 250: // M250 Set LCD contrast value: C (value 0..63) + { + if (code_seen('C')) { + lcd_setcontrast( ((int)code_value())&63 ); + } + SERIAL_PROTOCOLPGM("lcd contrast value: "); + SERIAL_PROTOCOL(lcd_contrast); + SERIAL_PROTOCOLLN(""); + } + break; +#endif + #ifdef PREVENT_DANGEROUS_EXTRUDE + case 302: // allow cold extrudes, or set the minimum extrude temperature { - allow_cold_extrudes(true); + float temp = .0; + if (code_seen('S')) temp=code_value(); + set_extrude_min_temp(temp); } break; + #endif case 303: // M303 PID autotune { float temp = 150.0; int e=0; int c=5; if (code_seen('E')) e=code_value(); - if (e<0) - temp=70; + if (e<0) + temp=70; if (code_seen('S')) temp=code_value(); if (code_seen('C')) c=code_value(); PID_autotune(temp, e, c); @@ -1512,6 +2375,19 @@ void process_commands() st_synchronize(); } break; +#if defined(ENABLE_AUTO_BED_LEVELING) && defined(SERVO_ENDSTOPS) + case 401: + { + engage_z_probe(); // Engage Z Servo endstop if available + } + break; + + case 402: + { + retract_z_probe(); // Retract Z Servo endstop if enabled + } + break; +#endif case 500: // M500 Store settings in EEPROM { Config_StoreSettings(); @@ -1553,7 +2429,7 @@ void process_commands() lastpos[Z_AXIS]=current_position[Z_AXIS]; lastpos[E_AXIS]=current_position[E_AXIS]; //retract by E - if(code_seen('E')) + if(code_seen('E')) { target[E_AXIS]+= code_value(); } @@ -1564,9 +2440,9 @@ void process_commands() #endif } plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], feedrate/60, active_extruder); - + //lift Z - if(code_seen('Z')) + if(code_seen('Z')) { target[Z_AXIS]+= code_value(); } @@ -1577,9 +2453,9 @@ void process_commands() #endif } plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], feedrate/60, active_extruder); - + //move xy - if(code_seen('X')) + if(code_seen('X')) { target[X_AXIS]+= code_value(); } @@ -1589,7 +2465,7 @@ void process_commands() target[X_AXIS]= FILAMENTCHANGE_XPOS ; #endif } - if(code_seen('Y')) + if(code_seen('Y')) { target[Y_AXIS]= code_value(); } @@ -1599,9 +2475,9 @@ void process_commands() target[Y_AXIS]= FILAMENTCHANGE_YPOS ; #endif } - + plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], feedrate/60, active_extruder); - + if(code_seen('L')) { target[E_AXIS]+= code_value(); @@ -1612,9 +2488,9 @@ void process_commands() target[E_AXIS]+= FILAMENTCHANGE_FINALRETRACT ; #endif } - + plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], feedrate/60, active_extruder); - + //finish moves st_synchronize(); //disable extruder steppers so filament can be removed @@ -1624,27 +2500,28 @@ void process_commands() delay(100); LCD_ALERTMESSAGEPGM(MSG_FILAMENTCHANGE); uint8_t cnt=0; - while(!LCD_CLICKED){ + while(!lcd_clicked()){ cnt++; manage_heater(); manage_inactivity(); lcd_update(); - - #if BEEPER > -1 if(cnt==0) { + #if BEEPER > 0 SET_OUTPUT(BEEPER); - + WRITE(BEEPER,HIGH); delay(3); WRITE(BEEPER,LOW); delay(3); - } + #else + lcd_buzz(1000/6,100); #endif + } } - + //return to normal - if(code_seen('L')) + if(code_seen('L')) { target[E_AXIS]+= -code_value(); } @@ -1662,18 +2539,66 @@ void process_commands() plan_buffer_line(lastpos[X_AXIS], lastpos[Y_AXIS], lastpos[Z_AXIS], lastpos[E_AXIS], feedrate/60, active_extruder); //final untretract } break; - #endif //FILAMENTCHANGEENABLE + #endif //FILAMENTCHANGEENABLE + #ifdef DUAL_X_CARRIAGE + case 605: // Set dual x-carriage movement mode: + // M605 S0: Full control mode. The slicer has full control over x-carriage movement + // M605 S1: Auto-park mode. The inactive head will auto park/unpark without slicer involvement + // M605 S2 [Xnnn] [Rmmm]: Duplication mode. The second extruder will duplicate the first with nnn + // millimeters x-offset and an optional differential hotend temperature of + // mmm degrees. E.g., with "M605 S2 X100 R2" the second extruder will duplicate + // the first with a spacing of 100mm in the x direction and 2 degrees hotter. + // + // Note: the X axis should be homed after changing dual x-carriage mode. + { + st_synchronize(); + + if (code_seen('S')) + dual_x_carriage_mode = code_value(); + + if (dual_x_carriage_mode == DXC_DUPLICATION_MODE) + { + if (code_seen('X')) + duplicate_extruder_x_offset = max(code_value(),X2_MIN_POS - x_home_pos(0)); + + if (code_seen('R')) + duplicate_extruder_temp_offset = code_value(); + + SERIAL_ECHO_START; + SERIAL_ECHOPGM(MSG_HOTEND_OFFSET); + SERIAL_ECHO(" "); + SERIAL_ECHO(extruder_offset[X_AXIS][0]); + SERIAL_ECHO(","); + SERIAL_ECHO(extruder_offset[Y_AXIS][0]); + SERIAL_ECHO(" "); + SERIAL_ECHO(duplicate_extruder_x_offset); + SERIAL_ECHO(","); + SERIAL_ECHOLN(extruder_offset[Y_AXIS][1]); + } + else if (dual_x_carriage_mode != DXC_FULL_CONTROL_MODE && dual_x_carriage_mode != DXC_AUTO_PARK_MODE) + { + dual_x_carriage_mode = DEFAULT_DUAL_X_CARRIAGE_MODE; + } + + active_extruder_parked = false; + extruder_duplication_enabled = false; + delayed_move_time = 0; + } + break; + #endif //DUAL_X_CARRIAGE + case 907: // M907 Set digital trimpot motor current using axis codes. { - #if DIGIPOTSS_PIN > -1 - for(int i=0;i<=NUM_AXIS;i++) if(code_seen(axis_codes[i])) digipot_current(i,code_value()); + #if defined(DIGIPOTSS_PIN) && DIGIPOTSS_PIN > -1 + for(int i=0;i -1 + #if defined(DIGIPOTSS_PIN) && DIGIPOTSS_PIN > -1 uint8_t channel,current; if(code_seen('P')) channel=code_value(); if(code_seen('S')) current=code_value(); @@ -1683,9 +2608,9 @@ void process_commands() break; case 350: // M350 Set microstepping mode. Warning: Steps per unit remains unchanged. S code sets stepping mode for all drivers. { - #if X_MS1_PIN > -1 - if(code_seen('S')) for(int i=0;i<=4;i++) microstep_mode(i,code_value()); - for(int i=0;i<=NUM_AXIS;i++) if(code_seen(axis_codes[i])) microstep_mode(i,(uint8_t)code_value()); + #if defined(X_MS1_PIN) && X_MS1_PIN > -1 + if(code_seen('S')) for(int i=0;i<=4;i++) microstep_mode(i,code_value()); + for(int i=0;i -1 + #if defined(X_MS1_PIN) && X_MS1_PIN > -1 if(code_seen('S')) switch((int)code_value()) { case 1: - for(int i=0;i<=NUM_AXIS;i++) if(code_seen(axis_codes[i])) microstep_ms(i,code_value(),-1); + for(int i=0;i= EXTRUDERS) { @@ -1740,15 +2665,67 @@ void process_commands() if(tmp_extruder != active_extruder) { // Save current position to return to after applying extruder offset memcpy(destination, current_position, sizeof(destination)); + #ifdef DUAL_X_CARRIAGE + if (dual_x_carriage_mode == DXC_AUTO_PARK_MODE && Stopped == false && + (delayed_move_time != 0 || current_position[X_AXIS] != x_home_pos(active_extruder))) + { + // Park old head: 1) raise 2) move to park position 3) lower + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS] + TOOLCHANGE_PARK_ZLIFT, + current_position[E_AXIS], max_feedrate[Z_AXIS], active_extruder); + plan_buffer_line(x_home_pos(active_extruder), current_position[Y_AXIS], current_position[Z_AXIS] + TOOLCHANGE_PARK_ZLIFT, + current_position[E_AXIS], max_feedrate[X_AXIS], active_extruder); + plan_buffer_line(x_home_pos(active_extruder), current_position[Y_AXIS], current_position[Z_AXIS], + current_position[E_AXIS], max_feedrate[Z_AXIS], active_extruder); + st_synchronize(); + } + + // apply Y & Z extruder offset (x offset is already used in determining home pos) + current_position[Y_AXIS] = current_position[Y_AXIS] - + extruder_offset[Y_AXIS][active_extruder] + + extruder_offset[Y_AXIS][tmp_extruder]; + current_position[Z_AXIS] = current_position[Z_AXIS] - + extruder_offset[Z_AXIS][active_extruder] + + extruder_offset[Z_AXIS][tmp_extruder]; + + active_extruder = tmp_extruder; + + // This function resets the max/min values - the current position may be overwritten below. + axis_is_at_home(X_AXIS); + + if (dual_x_carriage_mode == DXC_FULL_CONTROL_MODE) + { + current_position[X_AXIS] = inactive_extruder_x_pos; + inactive_extruder_x_pos = destination[X_AXIS]; + } + else if (dual_x_carriage_mode == DXC_DUPLICATION_MODE) + { + active_extruder_parked = (active_extruder == 0); // this triggers the second extruder to move into the duplication position + if (active_extruder == 0 || active_extruder_parked) + current_position[X_AXIS] = inactive_extruder_x_pos; + else + current_position[X_AXIS] = destination[X_AXIS] + duplicate_extruder_x_offset; + inactive_extruder_x_pos = destination[X_AXIS]; + extruder_duplication_enabled = false; + } + else + { + // record raised toolhead position for use by unpark + memcpy(raised_parked_position, current_position, sizeof(raised_parked_position)); + raised_parked_position[Z_AXIS] += TOOLCHANGE_UNPARK_ZLIFT; + active_extruder_parked = true; + delayed_move_time = 0; + } + #else // Offset extruder (only by XY) int i; for(i = 0; i < 2; i++) { - current_position[i] = current_position[i] - + current_position[i] = current_position[i] - extruder_offset[i][active_extruder] + extruder_offset[i][tmp_extruder]; } // Set the new active extruder and position active_extruder = tmp_extruder; + #endif //else DUAL_X_CARRIAGE plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); // Move to the old position if 'F' was in the parameters if(make_move && Stopped == false) { @@ -1789,14 +2766,14 @@ void ClearToSend() if(fromsd[bufindr]) return; #endif //SDSUPPORT - SERIAL_PROTOCOLLNPGM(MSG_OK); + SERIAL_PROTOCOLLNPGM(MSG_OK); } void get_coordinates() { bool seen[4]={false,false,false,false}; for(int8_t i=0; i < NUM_AXIS; i++) { - if(code_seen(axis_codes[i])) + if(code_seen(axis_codes[i])) { destination[i] = (float)code_value() + (axis_relative_modes[i] || relative_mode)*current_position[i]; seen[i]=true; @@ -1814,23 +2791,23 @@ void get_coordinates() float echange=destination[E_AXIS]-current_position[E_AXIS]; if(echange<-MIN_RETRACT) //retract { - if(!retracted) + if(!retracted) { - + destination[Z_AXIS]+=retract_zlift; //not sure why chaninging current_position negatively does not work. //if slicer retracted by echange=-1mm and you want to retract 3mm, corrrectede=-2mm additionally float correctede=-echange-retract_length; //to generate the additional steps, not the destination is changed, but inversely the current position - current_position[E_AXIS]+=-correctede; + current_position[E_AXIS]+=-correctede; feedrate=retract_feedrate; retracted=true; } - + } - else + else if(echange>MIN_RETRACT) //retract_recover { - if(retracted) + if(retracted) { //current_position[Z_AXIS]+=-retract_zlift; //if slicer retracted_recovered by echange=+1mm and you want to retract_recover 3mm, corrrectede=2mm additionally @@ -1840,7 +2817,7 @@ void get_coordinates() retracted=false; } } - + } #endif //FWRETRACT } @@ -1858,7 +2835,7 @@ void get_arc_coordinates() if(code_seen('I')) { offset[0] = code_value(); - } + } else { offset[0] = 0.0; } @@ -1885,11 +2862,106 @@ void clamp_to_software_endstops(float target[3]) } } +#ifdef DELTA +void calculate_delta(float cartesian[3]) +{ + delta[X_AXIS] = sqrt(DELTA_DIAGONAL_ROD_2 + - sq(DELTA_TOWER1_X-cartesian[X_AXIS]) + - sq(DELTA_TOWER1_Y-cartesian[Y_AXIS]) + ) + cartesian[Z_AXIS]; + delta[Y_AXIS] = sqrt(DELTA_DIAGONAL_ROD_2 + - sq(DELTA_TOWER2_X-cartesian[X_AXIS]) + - sq(DELTA_TOWER2_Y-cartesian[Y_AXIS]) + ) + cartesian[Z_AXIS]; + delta[Z_AXIS] = sqrt(DELTA_DIAGONAL_ROD_2 + - sq(DELTA_TOWER3_X-cartesian[X_AXIS]) + - sq(DELTA_TOWER3_Y-cartesian[Y_AXIS]) + ) + cartesian[Z_AXIS]; + /* + SERIAL_ECHOPGM("cartesian x="); SERIAL_ECHO(cartesian[X_AXIS]); + SERIAL_ECHOPGM(" y="); SERIAL_ECHO(cartesian[Y_AXIS]); + SERIAL_ECHOPGM(" z="); SERIAL_ECHOLN(cartesian[Z_AXIS]); + + SERIAL_ECHOPGM("delta x="); SERIAL_ECHO(delta[X_AXIS]); + SERIAL_ECHOPGM(" y="); SERIAL_ECHO(delta[Y_AXIS]); + SERIAL_ECHOPGM(" z="); SERIAL_ECHOLN(delta[Z_AXIS]); + */ +} +#endif + void prepare_move() { clamp_to_software_endstops(destination); - previous_millis_cmd = millis(); + previous_millis_cmd = millis(); +#ifdef DELTA + float difference[NUM_AXIS]; + for (int8_t i=0; i < NUM_AXIS; i++) { + difference[i] = destination[i] - current_position[i]; + } + float cartesian_mm = sqrt(sq(difference[X_AXIS]) + + sq(difference[Y_AXIS]) + + sq(difference[Z_AXIS])); + if (cartesian_mm < 0.000001) { cartesian_mm = abs(difference[E_AXIS]); } + if (cartesian_mm < 0.000001) { return; } + float seconds = 6000 * cartesian_mm / feedrate / feedmultiply; + int steps = max(1, int(DELTA_SEGMENTS_PER_SECOND * seconds)); + // SERIAL_ECHOPGM("mm="); SERIAL_ECHO(cartesian_mm); + // SERIAL_ECHOPGM(" seconds="); SERIAL_ECHO(seconds); + // SERIAL_ECHOPGM(" steps="); SERIAL_ECHOLN(steps); + for (int s = 1; s <= steps; s++) { + float fraction = float(s) / float(steps); + for(int8_t i=0; i < NUM_AXIS; i++) { + destination[i] = current_position[i] + difference[i] * fraction; + } + calculate_delta(destination); + plan_buffer_line(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], + destination[E_AXIS], feedrate*feedmultiply/60/100.0, + active_extruder); + } +#else + +#ifdef DUAL_X_CARRIAGE + if (active_extruder_parked) + { + if (dual_x_carriage_mode == DXC_DUPLICATION_MODE && active_extruder == 0) + { + // move duplicate extruder into correct duplication position. + plan_set_position(inactive_extruder_x_pos, current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + plan_buffer_line(current_position[X_AXIS] + duplicate_extruder_x_offset, current_position[Y_AXIS], current_position[Z_AXIS], + current_position[E_AXIS], max_feedrate[X_AXIS], 1); + plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); + st_synchronize(); + extruder_duplication_enabled = true; + active_extruder_parked = false; + } + else if (dual_x_carriage_mode == DXC_AUTO_PARK_MODE) // handle unparking of head + { + if (current_position[E_AXIS] == destination[E_AXIS]) + { + // this is a travel move - skit it but keep track of current position (so that it can later + // be used as start of first non-travel move) + if (delayed_move_time != 0xFFFFFFFFUL) + { + memcpy(current_position, destination, sizeof(current_position)); + if (destination[Z_AXIS] > raised_parked_position[Z_AXIS]) + raised_parked_position[Z_AXIS] = destination[Z_AXIS]; + delayed_move_time = millis(); + return; + } + } + delayed_move_time = 0; + // unpark extruder: 1) raise, 2) move into starting XY position, 3) lower + plan_buffer_line(raised_parked_position[X_AXIS], raised_parked_position[Y_AXIS], raised_parked_position[Z_AXIS], current_position[E_AXIS], max_feedrate[Z_AXIS], active_extruder); + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], raised_parked_position[Z_AXIS], + current_position[E_AXIS], min(max_feedrate[X_AXIS],max_feedrate[Y_AXIS]), active_extruder); + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], + current_position[E_AXIS], max_feedrate[Z_AXIS], active_extruder); + active_extruder_parked = false; + } + } +#endif //DUAL_X_CARRIAGE + // Do not use feedmultiply for E or Z only moves if( (current_position[X_AXIS] == destination [X_AXIS]) && (current_position[Y_AXIS] == destination [Y_AXIS])) { plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); @@ -1897,6 +2969,7 @@ void prepare_move() else { plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate*feedmultiply/60/100.0, active_extruder); } +#endif //else DELTA for(int8_t i=0; i < NUM_AXIS; i++) { current_position[i] = destination[i]; } @@ -1907,7 +2980,7 @@ void prepare_arc_move(char isclockwise) { // Trace the arc mc_arc(current_position, destination, offset, X_AXIS, Y_AXIS, Z_AXIS, feedrate*feedmultiply/60/100.0, r, isclockwise, active_extruder); - + // As far as the parser is concerned, the position is now == target. In reality the // motion control system might still be processing the action and the real tool position // in any intermediate location. @@ -1917,7 +2990,14 @@ void prepare_arc_move(char isclockwise) { previous_millis_cmd = millis(); } -#ifdef CONTROLLERFAN_PIN +#if defined(CONTROLLERFAN_PIN) && CONTROLLERFAN_PIN > -1 + +#if defined(FAN_PIN) + #if CONTROLLERFAN_PIN == FAN_PIN + #error "You cannot set CONTROLLERFAN_PIN equal to FAN_PIN" + #endif +#endif + unsigned long lastMotor = 0; //Save the time for when a motor was turned on last unsigned long lastMotorCheck = 0; @@ -1926,38 +3006,77 @@ void controllerFan() if ((millis() - lastMotorCheck) >= 2500) //Not a time critical function, so we only check every 2500ms { lastMotorCheck = millis(); - + if(!READ(X_ENABLE_PIN) || !READ(Y_ENABLE_PIN) || !READ(Z_ENABLE_PIN) #if EXTRUDERS > 2 || !READ(E2_ENABLE_PIN) #endif #if EXTRUDER > 1 - || !READ(E2_ENABLE_PIN) + #if defined(X2_ENABLE_PIN) && X2_ENABLE_PIN > -1 + || !READ(X2_ENABLE_PIN) + #endif + || !READ(E1_ENABLE_PIN) #endif - || !READ(E0_ENABLE_PIN)) //If any of the drivers are enabled... + || !READ(E0_ENABLE_PIN)) //If any of the drivers are enabled... { lastMotor = millis(); //... set time to NOW so the fan will turn on } - - if ((millis() - lastMotor) >= (CONTROLLERFAN_SEC*1000UL) || lastMotor == 0) //If the last time any driver was enabled, is longer since than CONTROLLERSEC... + + if ((millis() - lastMotor) >= (CONTROLLERFAN_SECS*1000UL) || lastMotor == 0) //If the last time any driver was enabled, is longer since than CONTROLLERSEC... { - WRITE(CONTROLLERFAN_PIN, LOW); //... turn the fan off + digitalWrite(CONTROLLERFAN_PIN, 0); + analogWrite(CONTROLLERFAN_PIN, 0); } else { - WRITE(CONTROLLERFAN_PIN, HIGH); //... turn the fan on + // allows digital or PWM fan output to be used (see M42 handling) + digitalWrite(CONTROLLERFAN_PIN, CONTROLLERFAN_SPEED); + analogWrite(CONTROLLERFAN_PIN, CONTROLLERFAN_SPEED); } } } #endif -void manage_inactivity() -{ - if( (millis() - previous_millis_cmd) > max_inactive_time ) - if(max_inactive_time) - kill(); +#ifdef TEMP_STAT_LEDS +static bool blue_led = false; +static bool red_led = false; +static uint32_t stat_update = 0; + +void handle_status_leds(void) { + float max_temp = 0.0; + if(millis() > stat_update) { + stat_update += 500; // Update every 0.5s + for (int8_t cur_extruder = 0; cur_extruder < EXTRUDERS; ++cur_extruder) { + max_temp = max(max_temp, degHotend(cur_extruder)); + max_temp = max(max_temp, degTargetHotend(cur_extruder)); + } + #if defined(TEMP_BED_PIN) && TEMP_BED_PIN > -1 + max_temp = max(max_temp, degTargetBed()); + max_temp = max(max_temp, degBed()); + #endif + if((max_temp > 55.0) && (red_led == false)) { + digitalWrite(STAT_LED_RED, 1); + digitalWrite(STAT_LED_BLUE, 0); + red_led = true; + blue_led = false; + } + if((max_temp < 54.0) && (blue_led == false)) { + digitalWrite(STAT_LED_RED, 0); + digitalWrite(STAT_LED_BLUE, 1); + red_led = false; + blue_led = true; + } + } +} +#endif + +void manage_inactivity() +{ + if( (millis() - previous_millis_cmd) > max_inactive_time ) + if(max_inactive_time) + kill(); if(stepper_inactive_time) { - if( (millis() - previous_millis_cmd) > stepper_inactive_time ) + if( (millis() - previous_millis_cmd) > stepper_inactive_time ) { if(blocks_queued() == false) { disable_x(); @@ -1969,23 +3088,23 @@ void manage_inactivity() } } } - #if( KILL_PIN>-1 ) + #if defined(KILL_PIN) && KILL_PIN > -1 if( 0 == READ(KILL_PIN) ) kill(); #endif - #ifdef CONTROLLERFAN_PIN + #if defined(CONTROLLERFAN_PIN) && CONTROLLERFAN_PIN > -1 controllerFan(); //Check if fan should be turned on to cool stepper drivers down #endif #ifdef EXTRUDER_RUNOUT_PREVENT - if( (millis() - previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) + if( (millis() - previous_millis_cmd) > EXTRUDER_RUNOUT_SECONDS*1000 ) if(degHotend(active_extruder)>EXTRUDER_RUNOUT_MINTEMP) { bool oldstatus=READ(E0_ENABLE_PIN); enable_e0(); float oldepos=current_position[E_AXIS]; float oldedes=destination[E_AXIS]; - plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], - current_position[E_AXIS]+EXTRUDER_RUNOUT_EXTRUDE*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], + current_position[E_AXIS]+EXTRUDER_RUNOUT_EXTRUDE*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], EXTRUDER_RUNOUT_SPEED/60.*EXTRUDER_RUNOUT_ESTEPS/axis_steps_per_unit[E_AXIS], active_extruder); current_position[E_AXIS]=oldepos; destination[E_AXIS]=oldedes; @@ -1995,6 +3114,19 @@ void manage_inactivity() WRITE(E0_ENABLE_PIN,oldstatus); } #endif + #if defined(DUAL_X_CARRIAGE) + // handle delayed move timeout + if (delayed_move_time != 0 && (millis() - delayed_move_time) > 1000 && Stopped == false) + { + // travel moves have been received so enact them + delayed_move_time = 0xFFFFFFFFUL; // force moves to be done + memcpy(destination,current_position,sizeof(destination)); + prepare_move(); + } + #endif + #ifdef TEMP_STAT_LEDS + handle_status_leds(); + #endif check_axes_activity(); } @@ -2009,8 +3141,10 @@ void kill() disable_e0(); disable_e1(); disable_e2(); - - if(PS_ON_PIN > -1) pinMode(PS_ON_PIN,INPUT); + +#if defined(PS_ON_PIN) && PS_ON_PIN > -1 + pinMode(PS_ON_PIN,INPUT); +#endif SERIAL_ERROR_START; SERIAL_ERRORLNPGM(MSG_ERR_KILLED); LCD_ALERTMESSAGEPGM(MSG_KILLED); @@ -2038,7 +3172,7 @@ void setPwmFrequency(uint8_t pin, int val) val &= 0x07; switch(digitalPinToTimer(pin)) { - + #if defined(TCCR0A) case TIMER0A: case TIMER0B: @@ -2080,7 +3214,7 @@ void setPwmFrequency(uint8_t pin, int val) break; #endif - #if defined(TCCR4A) + #if defined(TCCR4A) case TIMER4A: case TIMER4B: case TIMER4C: @@ -2089,7 +3223,7 @@ void setPwmFrequency(uint8_t pin, int val) break; #endif - #if defined(TCCR5A) + #if defined(TCCR5A) case TIMER5A: case TIMER5B: case TIMER5C: @@ -2128,3 +3262,4 @@ bool setTargetedHotend(int code){ } return false; } + diff --git a/Marlin/Sd2PinMap.h b/Marlin/Sd2PinMap.h index a40729df2d4affd2f2f1317e4df361a6a5d07229..93ab943cef59294057422dce9c84b9f0f6fa3113 100644 --- a/Marlin/Sd2PinMap.h +++ b/Marlin/Sd2PinMap.h @@ -222,10 +222,10 @@ uint8_t const SDA_PIN = 1; // D1 uint8_t const SCL_PIN = 0; // D0 // SPI port -uint8_t const SS_PIN = 20; // B0 -uint8_t const MOSI_PIN = 22; // B2 -uint8_t const MISO_PIN = 23; // B3 -uint8_t const SCK_PIN = 21; // B1 +uint8_t const SS_PIN = 20; // B0 +uint8_t const MOSI_PIN = 22; // B2 +uint8_t const MISO_PIN = 23; // B3 +uint8_t const SCK_PIN = 21; // B1 static const pin_map_t digitalPinMap[] = { {&DDRD, &PIND, &PORTD, 0}, // D0 0 diff --git a/Marlin/Servo.cpp b/Marlin/Servo.cpp new file mode 100644 index 0000000000000000000000000000000000000000..5f8c7efe3072fe1bf2e784cb1f66084458045686 --- /dev/null +++ b/Marlin/Servo.cpp @@ -0,0 +1,344 @@ +/* + Servo.cpp - Interrupt driven Servo library for Arduino using 16 bit timers- Version 2 + Copyright (c) 2009 Michael Margolis. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +/* + + A servo is activated by creating an instance of the Servo class passing the desired pin to the attach() method. + The servos are pulsed in the background using the value most recently written using the write() method + + Note that analogWrite of PWM on pins associated with the timer are disabled when the first servo is attached. + Timers are seized as needed in groups of 12 servos - 24 servos use two timers, 48 servos will use four. + + The methods are: + + Servo - Class for manipulating servo motors connected to Arduino pins. + + attach(pin ) - Attaches a servo motor to an i/o pin. + attach(pin, min, max ) - Attaches to a pin setting min and max values in microseconds + default min is 544, max is 2400 + + write() - Sets the servo angle in degrees. (invalid angle that is valid as pulse in microseconds is treated as microseconds) + writeMicroseconds() - Sets the servo pulse width in microseconds + read() - Gets the last written servo pulse width as an angle between 0 and 180. + readMicroseconds() - Gets the last written servo pulse width in microseconds. (was read_us() in first release) + attached() - Returns true if there is a servo attached. + detach() - Stops an attached servos from pulsing its i/o pin. + +*/ +#include "Configuration.h" + +#ifdef NUM_SERVOS +#include +#include + +#include "Servo.h" + +#define usToTicks(_us) (( clockCyclesPerMicrosecond()* _us) / 8) // converts microseconds to tick (assumes prescale of 8) // 12 Aug 2009 +#define ticksToUs(_ticks) (( (unsigned)_ticks * 8)/ clockCyclesPerMicrosecond() ) // converts from ticks back to microseconds + + +#define TRIM_DURATION 2 // compensation ticks to trim adjust for digitalWrite delays // 12 August 2009 + +//#define NBR_TIMERS (MAX_SERVOS / SERVOS_PER_TIMER) + +static servo_t servos[MAX_SERVOS]; // static array of servo structures +static volatile int8_t Channel[_Nbr_16timers ]; // counter for the servo being pulsed for each timer (or -1 if refresh interval) + +uint8_t ServoCount = 0; // the total number of attached servos + + +// convenience macros +#define SERVO_INDEX_TO_TIMER(_servo_nbr) ((timer16_Sequence_t)(_servo_nbr / SERVOS_PER_TIMER)) // returns the timer controlling this servo +#define SERVO_INDEX_TO_CHANNEL(_servo_nbr) (_servo_nbr % SERVOS_PER_TIMER) // returns the index of the servo on this timer +#define SERVO_INDEX(_timer,_channel) ((_timer*SERVOS_PER_TIMER) + _channel) // macro to access servo index by timer and channel +#define SERVO(_timer,_channel) (servos[SERVO_INDEX(_timer,_channel)]) // macro to access servo class by timer and channel + +#define SERVO_MIN() (MIN_PULSE_WIDTH - this->min * 4) // minimum value in uS for this servo +#define SERVO_MAX() (MAX_PULSE_WIDTH - this->max * 4) // maximum value in uS for this servo + +/************ static functions common to all instances ***********************/ + +static inline void handle_interrupts(timer16_Sequence_t timer, volatile uint16_t *TCNTn, volatile uint16_t* OCRnA) +{ + if( Channel[timer] < 0 ) + *TCNTn = 0; // channel set to -1 indicated that refresh interval completed so reset the timer + else{ + if( SERVO_INDEX(timer,Channel[timer]) < ServoCount && SERVO(timer,Channel[timer]).Pin.isActive == true ) + digitalWrite( SERVO(timer,Channel[timer]).Pin.nbr,LOW); // pulse this channel low if activated + } + + Channel[timer]++; // increment to the next channel + if( SERVO_INDEX(timer,Channel[timer]) < ServoCount && Channel[timer] < SERVOS_PER_TIMER) { + *OCRnA = *TCNTn + SERVO(timer,Channel[timer]).ticks; + if(SERVO(timer,Channel[timer]).Pin.isActive == true) // check if activated + digitalWrite( SERVO(timer,Channel[timer]).Pin.nbr,HIGH); // its an active channel so pulse it high + } + else { + // finished all channels so wait for the refresh period to expire before starting over + if( ((unsigned)*TCNTn) + 4 < usToTicks(REFRESH_INTERVAL) ) // allow a few ticks to ensure the next OCR1A not missed + *OCRnA = (unsigned int)usToTicks(REFRESH_INTERVAL); + else + *OCRnA = *TCNTn + 4; // at least REFRESH_INTERVAL has elapsed + Channel[timer] = -1; // this will get incremented at the end of the refresh period to start again at the first channel + } +} + +#ifndef WIRING // Wiring pre-defines signal handlers so don't define any if compiling for the Wiring platform +// Interrupt handlers for Arduino +#if defined(_useTimer1) +SIGNAL (TIMER1_COMPA_vect) +{ + handle_interrupts(_timer1, &TCNT1, &OCR1A); +} +#endif + +#if defined(_useTimer3) +SIGNAL (TIMER3_COMPA_vect) +{ + handle_interrupts(_timer3, &TCNT3, &OCR3A); +} +#endif + +#if defined(_useTimer4) +SIGNAL (TIMER4_COMPA_vect) +{ + handle_interrupts(_timer4, &TCNT4, &OCR4A); +} +#endif + +#if defined(_useTimer5) +SIGNAL (TIMER5_COMPA_vect) +{ + handle_interrupts(_timer5, &TCNT5, &OCR5A); +} +#endif + +#elif defined WIRING +// Interrupt handlers for Wiring +#if defined(_useTimer1) +void Timer1Service() +{ + handle_interrupts(_timer1, &TCNT1, &OCR1A); +} +#endif +#if defined(_useTimer3) +void Timer3Service() +{ + handle_interrupts(_timer3, &TCNT3, &OCR3A); +} +#endif +#endif + + +static void initISR(timer16_Sequence_t timer) +{ +#if defined (_useTimer1) + if(timer == _timer1) { + TCCR1A = 0; // normal counting mode + TCCR1B = _BV(CS11); // set prescaler of 8 + TCNT1 = 0; // clear the timer count +#if defined(__AVR_ATmega8__)|| defined(__AVR_ATmega128__) + TIFR |= _BV(OCF1A); // clear any pending interrupts; + TIMSK |= _BV(OCIE1A) ; // enable the output compare interrupt +#else + // here if not ATmega8 or ATmega128 + TIFR1 |= _BV(OCF1A); // clear any pending interrupts; + TIMSK1 |= _BV(OCIE1A) ; // enable the output compare interrupt +#endif +#if defined(WIRING) + timerAttach(TIMER1OUTCOMPAREA_INT, Timer1Service); +#endif + } +#endif + +#if defined (_useTimer3) + if(timer == _timer3) { + TCCR3A = 0; // normal counting mode + TCCR3B = _BV(CS31); // set prescaler of 8 + TCNT3 = 0; // clear the timer count +#if defined(__AVR_ATmega128__) + TIFR |= _BV(OCF3A); // clear any pending interrupts; + ETIMSK |= _BV(OCIE3A); // enable the output compare interrupt +#else + TIFR3 = _BV(OCF3A); // clear any pending interrupts; + TIMSK3 = _BV(OCIE3A) ; // enable the output compare interrupt +#endif +#if defined(WIRING) + timerAttach(TIMER3OUTCOMPAREA_INT, Timer3Service); // for Wiring platform only +#endif + } +#endif + +#if defined (_useTimer4) + if(timer == _timer4) { + TCCR4A = 0; // normal counting mode + TCCR4B = _BV(CS41); // set prescaler of 8 + TCNT4 = 0; // clear the timer count + TIFR4 = _BV(OCF4A); // clear any pending interrupts; + TIMSK4 = _BV(OCIE4A) ; // enable the output compare interrupt + } +#endif + +#if defined (_useTimer5) + if(timer == _timer5) { + TCCR5A = 0; // normal counting mode + TCCR5B = _BV(CS51); // set prescaler of 8 + TCNT5 = 0; // clear the timer count + TIFR5 = _BV(OCF5A); // clear any pending interrupts; + TIMSK5 = _BV(OCIE5A) ; // enable the output compare interrupt + } +#endif +} + +static void finISR(timer16_Sequence_t timer) +{ + //disable use of the given timer +#if defined WIRING // Wiring + if(timer == _timer1) { + #if defined(__AVR_ATmega1281__)||defined(__AVR_ATmega2561__) + TIMSK1 &= ~_BV(OCIE1A) ; // disable timer 1 output compare interrupt + #else + TIMSK &= ~_BV(OCIE1A) ; // disable timer 1 output compare interrupt + #endif + timerDetach(TIMER1OUTCOMPAREA_INT); + } + else if(timer == _timer3) { + #if defined(__AVR_ATmega1281__)||defined(__AVR_ATmega2561__) + TIMSK3 &= ~_BV(OCIE3A); // disable the timer3 output compare A interrupt + #else + ETIMSK &= ~_BV(OCIE3A); // disable the timer3 output compare A interrupt + #endif + timerDetach(TIMER3OUTCOMPAREA_INT); + } +#else + //For arduino - in future: call here to a currently undefined function to reset the timer +#endif +} + +static boolean isTimerActive(timer16_Sequence_t timer) +{ + // returns true if any servo is active on this timer + for(uint8_t channel=0; channel < SERVOS_PER_TIMER; channel++) { + if(SERVO(timer,channel).Pin.isActive == true) + return true; + } + return false; +} + + +/****************** end of static functions ******************************/ + +Servo::Servo() +{ + if( ServoCount < MAX_SERVOS) { + this->servoIndex = ServoCount++; // assign a servo index to this instance + servos[this->servoIndex].ticks = usToTicks(DEFAULT_PULSE_WIDTH); // store default values - 12 Aug 2009 + } + else + this->servoIndex = INVALID_SERVO ; // too many servos +} + +uint8_t Servo::attach(int pin) +{ + return this->attach(pin, MIN_PULSE_WIDTH, MAX_PULSE_WIDTH); +} + +uint8_t Servo::attach(int pin, int min, int max) +{ + if(this->servoIndex < MAX_SERVOS ) { +#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0) + if (pin > 0) this->pin = pin; else pin = this->pin; +#endif + pinMode( pin, OUTPUT) ; // set servo pin to output + servos[this->servoIndex].Pin.nbr = pin; + // todo min/max check: abs(min - MIN_PULSE_WIDTH) /4 < 128 + this->min = (MIN_PULSE_WIDTH - min)/4; //resolution of min/max is 4 uS + this->max = (MAX_PULSE_WIDTH - max)/4; + // initialize the timer if it has not already been initialized + timer16_Sequence_t timer = SERVO_INDEX_TO_TIMER(servoIndex); + if(isTimerActive(timer) == false) + initISR(timer); + servos[this->servoIndex].Pin.isActive = true; // this must be set after the check for isTimerActive + } + return this->servoIndex ; +} + +void Servo::detach() +{ + servos[this->servoIndex].Pin.isActive = false; + timer16_Sequence_t timer = SERVO_INDEX_TO_TIMER(servoIndex); + if(isTimerActive(timer) == false) { + finISR(timer); + } +} + +void Servo::write(int value) +{ + if(value < MIN_PULSE_WIDTH) + { // treat values less than 544 as angles in degrees (valid values in microseconds are handled as microseconds) + if(value < 0) value = 0; + if(value > 180) value = 180; + value = map(value, 0, 180, SERVO_MIN(), SERVO_MAX()); + } + this->writeMicroseconds(value); +} + +void Servo::writeMicroseconds(int value) +{ + // calculate and store the values for the given channel + byte channel = this->servoIndex; + if( (channel < MAX_SERVOS) ) // ensure channel is valid + { + if( value < SERVO_MIN() ) // ensure pulse width is valid + value = SERVO_MIN(); + else if( value > SERVO_MAX() ) + value = SERVO_MAX(); + + value = value - TRIM_DURATION; + value = usToTicks(value); // convert to ticks after compensating for interrupt overhead - 12 Aug 2009 + + uint8_t oldSREG = SREG; + cli(); + servos[channel].ticks = value; + SREG = oldSREG; + } +} + +int Servo::read() // return the value as degrees +{ + return map( this->readMicroseconds()+1, SERVO_MIN(), SERVO_MAX(), 0, 180); +} + +int Servo::readMicroseconds() +{ + unsigned int pulsewidth; + if( this->servoIndex != INVALID_SERVO ) + pulsewidth = ticksToUs(servos[this->servoIndex].ticks) + TRIM_DURATION ; // 12 aug 2009 + else + pulsewidth = 0; + + return pulsewidth; +} + +bool Servo::attached() +{ + return servos[this->servoIndex].Pin.isActive ; +} + +#endif diff --git a/Marlin/Servo.h b/Marlin/Servo.h new file mode 100644 index 0000000000000000000000000000000000000000..35e040c6575c336e66b8ddeb086e5511cd499048 --- /dev/null +++ b/Marlin/Servo.h @@ -0,0 +1,135 @@ +/* + Servo.h - Interrupt driven Servo library for Arduino using 16 bit timers- Version 2 + Copyright (c) 2009 Michael Margolis. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +/* + + A servo is activated by creating an instance of the Servo class passing the desired pin to the attach() method. + The servos are pulsed in the background using the value most recently written using the write() method + + Note that analogWrite of PWM on pins associated with the timer are disabled when the first servo is attached. + Timers are seized as needed in groups of 12 servos - 24 servos use two timers, 48 servos will use four. + The sequence used to sieze timers is defined in timers.h + + The methods are: + + Servo - Class for manipulating servo motors connected to Arduino pins. + + attach(pin ) - Attaches a servo motor to an i/o pin. + attach(pin, min, max ) - Attaches to a pin setting min and max values in microseconds + default min is 544, max is 2400 + + write() - Sets the servo angle in degrees. (invalid angle that is valid as pulse in microseconds is treated as microseconds) + writeMicroseconds() - Sets the servo pulse width in microseconds + read() - Gets the last written servo pulse width as an angle between 0 and 180. + readMicroseconds() - Gets the last written servo pulse width in microseconds. (was read_us() in first release) + attached() - Returns true if there is a servo attached. + detach() - Stops an attached servos from pulsing its i/o pin. + */ + +#ifndef Servo_h +#define Servo_h + +#include + +/* + * Defines for 16 bit timers used with Servo library + * + * If _useTimerX is defined then TimerX is a 16 bit timer on the curent board + * timer16_Sequence_t enumerates the sequence that the timers should be allocated + * _Nbr_16timers indicates how many 16 bit timers are available. + * + */ + +// Say which 16 bit timers can be used and in what order +#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) +#define _useTimer5 +//#define _useTimer1 +#define _useTimer3 +#define _useTimer4 +//typedef enum { _timer5, _timer1, _timer3, _timer4, _Nbr_16timers } timer16_Sequence_t ; +typedef enum { _timer5, _timer3, _timer4, _Nbr_16timers } timer16_Sequence_t ; + +#elif defined(__AVR_ATmega32U4__) +//#define _useTimer1 +#define _useTimer3 +//typedef enum { _timer1, _Nbr_16timers } timer16_Sequence_t ; +typedef enum { _timer3, _Nbr_16timers } timer16_Sequence_t ; + +#elif defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB1286__) +#define _useTimer3 +//#define _useTimer1 +//typedef enum { _timer3, _timer1, _Nbr_16timers } timer16_Sequence_t ; +typedef enum { _timer3, _Nbr_16timers } timer16_Sequence_t ; + +#elif defined(__AVR_ATmega128__) ||defined(__AVR_ATmega1281__) || defined(__AVR_ATmega1284P__) ||defined(__AVR_ATmega2561__) +#define _useTimer3 +//#define _useTimer1 +//typedef enum { _timer3, _timer1, _Nbr_16timers } timer16_Sequence_t ; +typedef enum { _timer3, _Nbr_16timers } timer16_Sequence_t ; + +#else // everything else +//#define _useTimer1 +//typedef enum { _timer1, _Nbr_16timers } timer16_Sequence_t ; +typedef enum { _Nbr_16timers } timer16_Sequence_t ; +#endif + +#define Servo_VERSION 2 // software version of this library + +#define MIN_PULSE_WIDTH 544 // the shortest pulse sent to a servo +#define MAX_PULSE_WIDTH 2400 // the longest pulse sent to a servo +#define DEFAULT_PULSE_WIDTH 1500 // default pulse width when servo is attached +#define REFRESH_INTERVAL 20000 // minumim time to refresh servos in microseconds + +#define SERVOS_PER_TIMER 12 // the maximum number of servos controlled by one timer +#define MAX_SERVOS (_Nbr_16timers * SERVOS_PER_TIMER) + +#define INVALID_SERVO 255 // flag indicating an invalid servo index + +typedef struct { + uint8_t nbr :6 ; // a pin number from 0 to 63 + uint8_t isActive :1 ; // true if this channel is enabled, pin not pulsed if false +} ServoPin_t ; + +typedef struct { + ServoPin_t Pin; + unsigned int ticks; +} servo_t; + +class Servo +{ +public: + Servo(); + uint8_t attach(int pin); // attach the given pin to the next free channel, sets pinMode, returns channel number or 0 if failure + uint8_t attach(int pin, int min, int max); // as above but also sets min and max values for writes. + void detach(); + void write(int value); // if value is < 200 its treated as an angle, otherwise as pulse width in microseconds + void writeMicroseconds(int value); // Write pulse width in microseconds + int read(); // returns current pulse width as an angle between 0 and 180 degrees + int readMicroseconds(); // returns current pulse width in microseconds for this servo (was read_us() in first release) + bool attached(); // return true if this servo is attached, otherwise false +#if defined (ENABLE_AUTO_BED_LEVELING) && (PROBE_SERVO_DEACTIVATION_DELAY > 0) + int pin; // store the hw pin of the servo +#endif +private: + uint8_t servoIndex; // index into the channel data for this servo + int8_t min; // minimum is this value times 4 added to MIN_PULSE_WIDTH + int8_t max; // maximum is this value times 4 added to MAX_PULSE_WIDTH +}; + +#endif diff --git a/Marlin/cardreader.cpp b/Marlin/cardreader.cpp index 5d9494a4c50127422dd4fe768a55ffffceae1b10..e5c31089616d35318ec37157f6d3b316ebce8c7a 100644 --- a/Marlin/cardreader.cpp +++ b/Marlin/cardreader.cpp @@ -16,7 +16,11 @@ CardReader::CardReader() sdprinting = false; cardOK = false; saving = false; + logging = false; autostart_atmillis=0; + workDirDepth = 0; + file_subcall_ctr=0; + memset(workDirParents, 0, sizeof(workDirParents)); autostart_stilltocheck=true; //the sd start is delayed, because otherwise the serial cannot answer fast enought to make contact with the hostsoftware. lastnr=0; @@ -145,7 +149,11 @@ void CardReader::initsd() cardOK = false; if(root.isOpen()) root.close(); +#ifdef SDSLOW + if (!card.init(SPI_HALF_SPEED,SDSS)) +#else if (!card.init(SPI_FULL_SPEED,SDSS)) +#endif { //if (!card.init(SPI_HALF_SPEED,SDSS)) SERIAL_ECHO_START; @@ -199,7 +207,6 @@ void CardReader::startFileprint() if(cardOK) { sdprinting = true; - } } @@ -212,15 +219,77 @@ void CardReader::pauseSDPrint() } +void CardReader::openLogFile(char* name) +{ + logging = true; + openFile(name, false); +} + +void CardReader::getAbsFilename(char *t) +{ + uint8_t cnt=0; + *t='/';t++;cnt++; + for(uint8_t i=0;i(int)SD_PROCEDURE_DEPTH-1) + { + SERIAL_ERROR_START; + SERIAL_ERRORPGM("trying to call sub-gcode files with too many levels. MAX level is:"); + SERIAL_ERRORLN(SD_PROCEDURE_DEPTH); + kill(); + return; + } + + SERIAL_ECHO_START; + SERIAL_ECHOPGM("SUBROUTINE CALL target:\""); + SERIAL_ECHO(name); + SERIAL_ECHOPGM("\" parent:\""); + + //store current filename and position + getAbsFilename(filenames[file_subcall_ctr]); + + SERIAL_ECHO(filenames[file_subcall_ctr]); + SERIAL_ECHOPGM("\" pos"); + SERIAL_ECHOLN(sdpos); + filespos[file_subcall_ctr]=sdpos; + file_subcall_ctr++; + } + else + { + SERIAL_ECHO_START; + SERIAL_ECHOPGM("Now doing file: "); + SERIAL_ECHOLN(name); + } + file.close(); + } + else //opening fresh file + { + file_subcall_ctr=0; //resetting procedure depth in case user cancels print while in procedure + SERIAL_ECHO_START; + SERIAL_ECHOPGM("Now fresh file: "); + SERIAL_ECHOLN(name); + } sdprinting = false; - + SdFile myDir; curDir=&root; char *fname=name; @@ -466,11 +535,21 @@ void CardReader::checkautostart(bool force) lastnr++; } -void CardReader::closefile() +void CardReader::closefile(bool store_location) { file.sync(); file.close(); saving = false; + logging = false; + + if(store_location) + { + //future: store printer state, filename and position for continueing a stoped print + // so one can unplug the printer and continue printing the next day. + + } + + } void CardReader::getfilename(const uint8_t nr) @@ -510,19 +589,24 @@ void CardReader::chdir(const char * relpath) } else { - workDirParentParent=workDirParent; - workDirParent=*parent; - + if (workDirDepth < MAX_DIR_DEPTH) { + for (int d = ++workDirDepth; d--;) + workDirParents[d+1] = workDirParents[d]; + workDirParents[0]=*parent; + } workDir=newfile; } } void CardReader::updir() { - if(!workDir.isRoot()) + if(workDirDepth > 0) { - workDir=workDirParent; - workDirParent=workDirParentParent; + --workDirDepth; + workDir = workDirParents[0]; + int d; + for (int d = 0; d < workDirDepth; d++) + workDirParents[d] = workDirParents[d+1]; } } @@ -530,14 +614,25 @@ void CardReader::updir() void CardReader::printingHasFinished() { st_synchronize(); - quickStop(); - file.close(); - sdprinting = false; - if(SD_FINISHED_STEPPERRELEASE) + if(file_subcall_ctr>0) //heading up to a parent file that called current as a procedure. { - //finishAndDisableSteppers(); - enquecommand_P(PSTR(SD_FINISHED_RELEASECOMMAND)); + file.close(); + file_subcall_ctr--; + openFile(filenames[file_subcall_ctr],true,true); + setIndex(filespos[file_subcall_ctr]); + startFileprint(); + } + else + { + quickStop(); + file.close(); + sdprinting = false; + if(SD_FINISHED_STEPPERRELEASE) + { + //finishAndDisableSteppers(); + enquecommand_P(PSTR(SD_FINISHED_RELEASECOMMAND)); + } + autotempShutdown(); } - autotempShutdown(); } #endif //SDSUPPORT diff --git a/Marlin/cardreader.h b/Marlin/cardreader.h index 2d005771fc6f8827a4c9b979c5564599d952eb62..78f7148b1f59776719232367b7e58457b98c75aa 100644 --- a/Marlin/cardreader.h +++ b/Marlin/cardreader.h @@ -3,6 +3,8 @@ #ifdef SDSUPPORT +#define MAX_DIR_DEPTH 10 + #include "SdFile.h" enum LsAction {LS_SerialPrint,LS_Count,LS_GetFilename}; class CardReader @@ -16,9 +18,10 @@ public: //this is to delay autostart and hence the initialisaiton of the sd card to some seconds after the normal init, so the device is available quick after a reset void checkautostart(bool x); - void openFile(char* name,bool read); + void openFile(char* name,bool read,bool replace_current=true); + void openLogFile(char* name); void removeFile(char* name); - void closefile(); + void closefile(bool store_location=false); void release(); void startFileprint(); void pauseSDPrint(); @@ -28,6 +31,8 @@ public: void getfilename(const uint8_t nr); uint16_t getnrfilenames(); + void getAbsFilename(char *t); + void ls(); void chdir(const char * relpath); @@ -44,6 +49,7 @@ public: public: bool saving; + bool logging; bool sdprinting ; bool cardOK ; char filename[13]; @@ -51,10 +57,16 @@ public: bool filenameIsDir; int lastnr; //last number of the autostart; private: - SdFile root,*curDir,workDir,workDirParent,workDirParentParent; + SdFile root,*curDir,workDir,workDirParents[MAX_DIR_DEPTH]; + uint16_t workDirDepth; Sd2Card card; SdVolume volume; SdFile file; + #define SD_PROCEDURE_DEPTH 1 + #define MAXPATHNAMELENGTH (13*MAX_DIR_DEPTH+MAX_DIR_DEPTH+1) + uint8_t file_subcall_ctr; + uint32_t filespos[SD_PROCEDURE_DEPTH]; + char filenames[SD_PROCEDURE_DEPTH][MAXPATHNAMELENGTH]; uint32_t filesize; //int16_t n; unsigned long autostart_atmillis; diff --git a/Marlin/dogm_font_data_marlin.h b/Marlin/dogm_font_data_marlin.h new file mode 100644 index 0000000000000000000000000000000000000000..6b83903cfbe2e39b3920016278dd2949e6aa0559 --- /dev/null +++ b/Marlin/dogm_font_data_marlin.h @@ -0,0 +1,337 @@ +/* + Fontname: -Misc-Fixed-Medium-R-Normal--9-90-75-75-C-60-ISO10646-1 + Copyright: Public domain font. Share and enjoy. + Capital A Height: 6, '1' Height: 6 + Calculated Max Values w= 6 h= 9 x= 2 y= 7 dx= 6 dy= 0 ascent= 7 len= 9 + Font Bounding box w= 6 h= 9 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 6 descent=-2 + X Font ascent = 6 descent=-2 + Max Font ascent = 7 descent=-2 +*/ +#include +const u8g_fntpgm_uint8_t u8g_font_6x9[2300] U8G_SECTION(".progmem.u8g_font_6x9") = { + 0,6,9,0,254,6,1,137,2,254,32,255,254,7,254,6, + 254,0,0,0,6,0,7,1,6,6,6,2,0,128,128,128, + 128,0,128,3,3,3,6,1,3,160,160,160,5,7,7,6, + 0,255,80,80,248,80,248,80,80,5,9,9,6,0,254,32, + 112,168,160,112,40,168,112,32,6,8,8,6,0,255,64,168, + 72,16,32,72,84,8,5,7,7,6,0,255,96,144,144,96, + 152,144,104,1,3,3,6,2,3,128,128,128,2,7,7,6, + 2,255,64,128,128,128,128,128,64,2,7,7,6,2,255,128, + 64,64,64,64,64,128,5,5,5,6,0,0,136,80,248,80, + 136,5,5,5,6,0,0,32,32,248,32,32,2,4,4,6, + 2,254,192,64,64,128,5,1,1,6,0,2,248,2,2,2, + 6,2,0,192,192,4,6,6,6,1,0,16,16,32,64,128, + 128,4,6,6,6,1,0,96,144,144,144,144,96,3,6,6, + 6,1,0,64,192,64,64,64,224,4,6,6,6,1,0,96, + 144,16,32,64,240,4,6,6,6,1,0,240,32,96,16,16, + 224,5,6,6,6,0,0,16,48,80,144,248,16,4,6,6, + 6,1,0,240,128,224,16,16,224,4,6,6,6,1,0,96, + 128,224,144,144,96,4,6,6,6,1,0,240,16,16,32,64, + 64,4,6,6,6,1,0,96,144,96,144,144,96,4,6,6, + 6,1,0,96,144,144,112,16,96,2,5,5,6,2,0,192, + 192,0,192,192,2,7,7,6,2,254,192,192,0,192,64,64, + 128,5,5,5,6,0,0,24,96,128,96,24,5,3,3,6, + 0,1,248,0,248,5,5,5,6,0,0,192,48,8,48,192, + 4,7,7,6,1,0,96,144,16,96,64,0,64,5,6,6, + 6,0,0,112,144,168,176,128,112,5,6,6,6,0,0,32, + 80,136,248,136,136,5,6,6,6,0,0,240,136,240,136,136, + 240,4,6,6,6,1,0,96,144,128,128,144,96,4,6,6, + 6,1,0,224,144,144,144,144,224,4,6,6,6,1,0,240, + 128,224,128,128,240,4,6,6,6,1,0,240,128,224,128,128, + 128,4,6,6,6,1,0,96,144,128,176,144,96,4,6,6, + 6,1,0,144,144,240,144,144,144,3,6,6,6,1,0,224, + 64,64,64,64,224,5,6,6,6,0,0,56,16,16,16,144, + 96,4,6,6,6,1,0,144,160,192,160,144,144,4,6,6, + 6,1,0,128,128,128,128,128,240,5,6,6,6,0,0,136, + 216,168,168,136,136,4,6,6,6,1,0,144,208,176,144,144, + 144,5,6,6,6,0,0,112,136,136,136,136,112,4,6,6, + 6,1,0,224,144,144,224,128,128,4,7,7,6,1,255,96, + 144,144,208,176,96,16,4,6,6,6,1,0,224,144,144,224, + 144,144,4,6,6,6,1,0,96,144,64,32,144,96,5,6, + 6,6,0,0,248,32,32,32,32,32,4,6,6,6,1,0, + 144,144,144,144,144,96,4,6,6,6,1,0,144,144,144,240, + 96,96,5,6,6,6,0,0,136,136,168,168,216,136,5,6, + 6,6,0,0,136,80,32,32,80,136,5,6,6,6,0,0, + 136,136,80,32,32,32,4,6,6,6,1,0,240,16,32,64, + 128,240,3,6,6,6,1,0,224,128,128,128,128,224,4,6, + 6,6,1,0,128,128,64,32,16,16,3,6,6,6,1,0, + 224,32,32,32,32,224,5,3,3,6,0,3,32,80,136,5, + 1,1,6,0,254,248,2,2,2,6,2,4,128,64,4,4, + 4,6,1,0,112,144,144,112,4,6,6,6,1,0,128,128, + 224,144,144,224,4,4,4,6,1,0,112,128,128,112,4,6, + 6,6,1,0,16,16,112,144,144,112,4,4,4,6,1,0, + 96,176,192,112,4,6,6,6,1,0,32,80,64,224,64,64, + 4,6,6,6,1,254,96,144,144,112,16,96,4,6,6,6, + 1,0,128,128,224,144,144,144,3,6,6,6,1,0,64,0, + 192,64,64,224,3,8,8,6,1,254,32,0,96,32,32,32, + 160,64,4,6,6,6,1,0,128,128,160,192,160,144,3,6, + 6,6,1,0,192,64,64,64,64,224,5,4,4,6,0,0, + 208,168,168,136,4,4,4,6,1,0,224,144,144,144,4,4, + 4,6,1,0,96,144,144,96,4,6,6,6,1,254,224,144, + 144,224,128,128,4,6,6,6,1,254,112,144,144,112,16,16, + 4,4,4,6,1,0,160,208,128,128,4,4,4,6,1,0, + 112,192,48,224,4,6,6,6,1,0,64,64,224,64,80,32, + 4,4,4,6,1,0,144,144,144,112,4,4,4,6,1,0, + 144,144,96,96,5,4,4,6,0,0,136,168,168,80,4,4, + 4,6,1,0,144,96,96,144,4,6,6,6,1,254,144,144, + 144,112,144,96,4,4,4,6,1,0,240,32,64,240,3,7, + 7,6,1,0,32,64,64,128,64,64,32,1,7,7,6,2, + 255,128,128,128,128,128,128,128,3,7,7,6,1,0,128,64, + 64,32,64,64,128,4,2,2,6,1,3,80,160,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255, + 255,255,255,255,255,255,255,255,255,255,255,255,255,255,0,0, + 0,6,0,7,1,6,6,6,2,0,128,0,128,128,128,128, + 4,6,6,6,1,255,32,112,160,160,112,32,5,7,7,6, + 0,255,48,72,64,240,64,64,248,5,5,5,6,0,0,168, + 80,136,80,168,5,6,6,6,0,0,136,80,248,32,248,32, + 1,7,7,6,2,255,128,128,128,0,128,128,128,4,7,7, + 6,1,255,112,128,96,144,96,16,224,3,1,1,6,1,5, + 160,6,7,7,6,0,0,120,132,148,164,148,132,120,3,5, + 5,6,1,1,96,160,96,0,224,5,5,5,6,0,0,40, + 80,160,80,40,4,3,3,6,1,0,240,16,16,4,1,1, + 6,1,2,240,6,7,7,6,0,0,120,132,180,164,164,132, + 120,4,1,1,6,1,5,240,4,3,3,6,1,2,96,144, + 96,5,7,7,6,0,255,32,32,248,32,32,0,248,3,5, + 5,6,1,1,64,160,32,64,224,3,5,5,6,1,1,192, + 32,64,32,192,2,2,2,6,2,4,64,128,4,5,5,6, + 1,255,144,144,176,208,128,5,6,6,6,0,0,120,232,232, + 104,40,40,1,1,1,6,2,2,128,2,2,2,6,2,254, + 64,128,3,5,5,6,1,1,64,192,64,64,224,3,5,5, + 6,1,1,64,160,64,0,224,5,5,5,6,0,0,160,80, + 40,80,160,5,8,8,6,0,255,64,192,64,80,112,48,120, + 16,5,8,8,6,0,255,64,192,64,80,104,8,16,56,5, + 8,8,6,0,255,192,32,64,48,240,48,120,16,4,7,7, + 6,1,0,32,0,32,96,128,144,96,5,7,7,6,0,0, + 64,32,32,80,112,136,136,5,7,7,6,0,0,16,32,32, + 80,112,136,136,5,7,7,6,0,0,32,80,32,80,112,136, + 136,5,7,7,6,0,0,40,80,32,80,112,136,136,5,7, + 7,6,0,0,80,0,32,80,112,136,136,5,7,7,6,0, + 0,32,80,32,80,112,136,136,5,6,6,6,0,0,120,160, + 240,160,160,184,4,8,8,6,1,254,96,144,128,128,144,96, + 32,64,4,7,7,6,1,0,64,32,240,128,224,128,240,4, + 7,7,6,1,0,32,64,240,128,224,128,240,4,7,7,6, + 1,0,32,80,240,128,224,128,240,4,7,7,6,1,0,80, + 0,240,128,224,128,240,3,7,7,6,1,0,128,64,224,64, + 64,64,224,3,7,7,6,1,0,32,64,224,64,64,64,224, + 3,7,7,6,1,0,64,160,224,64,64,64,224,3,7,7, + 6,1,0,160,0,224,64,64,64,224,5,6,6,6,0,0, + 112,72,232,72,72,112,4,7,7,6,1,0,80,160,144,208, + 176,144,144,4,7,7,6,1,0,64,32,96,144,144,144,96, + 4,7,7,6,1,0,32,64,96,144,144,144,96,4,7,7, + 6,1,0,32,80,96,144,144,144,96,4,7,7,6,1,0, + 80,160,96,144,144,144,96,4,7,7,6,1,0,80,0,96, + 144,144,144,96,5,5,5,6,0,0,136,80,32,80,136,4, + 8,8,6,1,255,16,112,176,176,208,208,224,128,4,7,7, + 6,1,0,64,32,144,144,144,144,96,4,7,7,6,1,0, + 32,64,144,144,144,144,96,4,7,7,6,1,0,32,80,144, + 144,144,144,96,4,7,7,6,1,0,80,0,144,144,144,144, + 96,5,7,7,6,0,0,16,32,136,80,32,32,32,4,6, + 6,6,1,0,128,224,144,144,224,128,4,6,6,6,1,0, + 96,144,160,160,144,160,4,7,7,6,1,0,64,32,0,112, + 144,144,112,4,7,7,6,1,0,32,64,0,112,144,144,112, + 4,7,7,6,1,0,32,80,0,112,144,144,112,4,7,7, + 6,1,0,80,160,0,112,144,144,112,4,6,6,6,1,0, + 80,0,112,144,144,112,4,7,7,6,1,0,32,80,32,112, + 144,144,112,5,4,4,6,0,0,112,168,176,120,4,6,6, + 6,1,254,112,128,128,112,32,64,4,7,7,6,1,0,64, + 32,0,96,176,192,112,4,7,7,6,1,0,32,64,0,96, + 176,192,112,4,7,7,6,1,0,32,80,0,96,176,192,112, + 4,6,6,6,1,0,80,0,96,176,192,112,3,7,7,6, + 1,0,128,64,0,192,64,64,224,3,7,7,6,1,0,32, + 64,0,192,64,64,224,3,7,7,6,1,0,64,160,0,192, + 64,64,224,3,6,6,6,1,0,160,0,192,64,64,224,4, + 7,7,6,1,0,48,96,16,112,144,144,96,4,7,7,6, + 1,0,80,160,0,224,144,144,144,4,7,7,6,1,0,64, + 32,0,96,144,144,96,4,7,7,6,1,0,32,64,0,96, + 144,144,96,4,7,7,6,1,0,32,80,0,96,144,144,96, + 4,7,7,6,1,0,80,160,0,96,144,144,96,4,6,6, + 6,1,0,80,0,96,144,144,96,5,5,5,6,0,0,32, + 0,248,0,32,4,4,4,6,1,0,112,176,208,224,4,7, + 7,6,1,0,64,32,0,144,144,144,112,4,7,7,6,1, + 0,32,64,0,144,144,144,112,4,7,7,6,1,0,32,80, + 0,144,144,144,112,4,6,6,6,1,0,80,0,144,144,144, + 112,4,9,9,6,1,254,32,64,0,144,144,144,112,144,96, + 4,8,8,6,1,254,128,128,224,144,144,224,128,128,4,8, + 8,6,1,254,80,0,144,144,144,112,144,96}; + +// STB Marlin +/* + Fontname: u8g_font_6x10_marlin + Copyright: Public domain terminal emulator font. Share and enjoy. + Capital A Height: 7, '1' Height: 7 + Calculated Max Values w= 6 h=10 x= 2 y= 7 dx= 6 dy= 0 ascent= 8 len=10 + Font Bounding box w= 6 h= 9 x= 0 y=-2 + Calculated Min Values x= 0 y=-2 dx= 0 dy= 0 + Pure Font ascent = 7 descent=-2 + X Font ascent = 7 descent=-2 + Max Font ascent = 8 descent=-2 +*/ +#include +const u8g_fntpgm_uint8_t u8g_font_6x10_marlin[2617] U8G_SECTION(".progmem.u8g_font_6x10_marlin") = { + 0,6,9,0,254,7,1,153,3,43,32,255,254,8,254,7, + 254,0,0,0,6,0,0,1,7,7,6,2,0,128,128,128, + 128,128,0,128,3,3,3,6,1,4,160,160,160,5,7,7, + 6,0,0,80,80,248,80,248,80,80,5,7,7,6,0,0, + 32,112,160,112,40,112,32,5,7,7,6,0,0,72,168,80, + 32,80,168,144,5,7,7,6,0,0,64,160,160,64,168,144, + 104,1,3,3,6,2,4,128,128,128,3,7,7,6,1,0, + 32,64,128,128,128,64,32,3,7,7,6,1,0,128,64,32, + 32,32,64,128,5,5,5,6,0,1,136,80,248,80,136,5, + 5,5,6,0,1,32,32,248,32,32,3,3,3,6,1,255, + 96,64,128,5,1,1,6,0,3,248,3,3,3,6,1,255, + 64,224,64,5,7,7,6,0,0,8,8,16,32,64,128,128, + 5,7,7,6,0,0,32,80,136,136,136,80,32,5,7,7, + 6,0,0,32,96,160,32,32,32,248,5,7,7,6,0,0, + 112,136,8,48,64,128,248,5,7,7,6,0,0,248,8,16, + 48,8,136,112,5,7,7,6,0,0,16,48,80,144,248,16, + 16,5,7,7,6,0,0,248,128,176,200,8,136,112,5,7, + 7,6,0,0,48,64,128,176,200,136,112,5,7,7,6,0, + 0,248,8,16,16,32,64,64,5,7,7,6,0,0,112,136, + 136,112,136,136,112,5,7,7,6,0,0,112,136,152,104,8, + 16,96,3,7,7,6,1,255,64,224,64,0,64,224,64,3, + 7,7,6,1,255,64,224,64,0,96,64,128,4,7,7,6, + 1,0,16,32,64,128,64,32,16,5,3,3,6,0,2,248, + 0,248,4,7,7,6,1,0,128,64,32,16,32,64,128,5, + 7,7,6,0,0,112,136,16,32,32,0,32,5,7,7,6, + 0,0,112,136,152,168,176,128,112,5,7,7,6,0,0,32, + 80,136,136,248,136,136,5,7,7,6,0,0,240,72,72,112, + 72,72,240,5,7,7,6,0,0,112,136,128,128,128,136,112, + 5,7,7,6,0,0,240,72,72,72,72,72,240,5,7,7, + 6,0,0,248,128,128,240,128,128,248,5,7,7,6,0,0, + 248,128,128,240,128,128,128,5,7,7,6,0,0,112,136,128, + 128,152,136,112,5,7,7,6,0,0,136,136,136,248,136,136, + 136,3,7,7,6,1,0,224,64,64,64,64,64,224,5,7, + 7,6,0,0,56,16,16,16,16,144,96,5,7,7,6,0, + 0,136,144,160,192,160,144,136,5,7,7,6,0,0,128,128, + 128,128,128,128,248,5,7,7,6,0,0,136,136,216,168,136, + 136,136,5,7,7,6,0,0,136,136,200,168,152,136,136,5, + 7,7,6,0,0,112,136,136,136,136,136,112,5,7,7,6, + 0,0,240,136,136,240,128,128,128,5,8,8,6,0,255,112, + 136,136,136,136,168,112,8,5,7,7,6,0,0,240,136,136, + 240,160,144,136,5,7,7,6,0,0,112,136,128,112,8,136, + 112,5,7,7,6,0,0,248,32,32,32,32,32,32,5,7, + 7,6,0,0,136,136,136,136,136,136,112,5,7,7,6,0, + 0,136,136,136,80,80,80,32,5,7,7,6,0,0,136,136, + 136,168,168,216,136,5,7,7,6,0,0,136,136,80,32,80, + 136,136,5,7,7,6,0,0,136,136,80,32,32,32,32,5, + 7,7,6,0,0,248,8,16,32,64,128,248,3,7,7,6, + 1,0,224,128,128,128,128,128,224,5,7,7,6,0,0,128, + 128,64,32,16,8,8,3,7,7,6,1,0,224,32,32,32, + 32,32,224,5,3,3,6,0,4,32,80,136,5,1,1,6, + 0,255,248,2,2,2,6,2,6,128,64,5,5,5,6,0, + 0,112,8,120,136,120,5,7,7,6,0,0,128,128,176,200, + 136,200,176,5,5,5,6,0,0,112,136,128,136,112,5,7, + 7,6,0,0,8,8,104,152,136,152,104,5,5,5,6,0, + 0,112,136,248,128,112,5,7,7,6,0,0,48,72,64,240, + 64,64,64,5,7,7,6,0,254,120,136,136,120,8,136,112, + 5,7,7,6,0,0,128,128,176,200,136,136,136,3,7,7, + 6,1,0,64,0,192,64,64,64,224,4,9,9,6,1,254, + 16,0,48,16,16,16,144,144,96,5,7,7,6,0,0,128, + 128,136,144,224,144,136,3,7,7,6,1,0,192,64,64,64, + 64,64,224,5,5,5,6,0,0,208,168,168,168,136,5,5, + 5,6,0,0,176,200,136,136,136,5,5,5,6,0,0,112, + 136,136,136,112,5,7,7,6,0,254,176,200,136,200,176,128, + 128,5,7,7,6,0,254,104,152,136,152,104,8,8,5,5, + 5,6,0,0,176,200,128,128,128,5,5,5,6,0,0,112, + 128,112,8,240,5,7,7,6,0,0,64,64,240,64,64,72, + 48,5,5,5,6,0,0,136,136,136,152,104,5,5,5,6, + 0,0,136,136,80,80,32,5,5,5,6,0,0,136,136,168, + 168,80,5,5,5,6,0,0,136,80,32,80,136,5,7,7, + 6,0,254,136,136,152,104,8,136,112,5,5,5,6,0,0, + 248,16,32,64,248,4,7,7,6,1,0,48,64,32,192,32, + 64,48,1,7,7,6,2,0,128,128,128,128,128,128,128,4, + 7,7,6,1,0,192,32,64,48,64,32,192,5,3,3,6, + 0,4,72,168,144,0,0,0,1,0,0,0,0,0,1,0, + 0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0, + 1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0, + 0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0, + 0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0, + 1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0, + 0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0, + 0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0, + 1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0, + 0,0,1,0,0,0,0,0,1,0,0,0,0,0,1,0, + 0,0,0,0,1,0,0,0,0,0,1,0,0,0,0,0, + 1,0,0,0,0,0,1,0,0,0,0,0,1,0,0,0, + 0,0,1,0,0,0,0,0,1,0,0,0,0,0,6,0, + 0,1,7,7,6,2,0,128,0,128,128,128,128,128,5,7, + 7,6,0,255,32,120,160,160,160,120,32,5,7,7,6,0, + 0,48,72,64,224,64,72,176,5,5,5,6,0,0,136,112, + 80,112,136,5,8,8,6,0,255,136,136,80,32,248,32,32, + 32,1,7,7,6,2,0,128,128,128,0,128,128,128,5,8, + 8,6,0,255,112,128,224,144,72,56,8,112,3,1,1,6, + 1,7,160,5,7,7,6,0,0,112,136,168,200,168,136,112, + 4,6,6,6,1,1,112,144,176,80,0,240,6,5,5,6, + 0,0,36,72,144,72,36,4,2,2,6,1,2,240,16,4, + 1,1,6,1,3,240,5,7,7,6,0,0,112,136,232,200, + 200,136,112,5,1,1,6,0,7,248,3,3,3,6,1,4, + 64,160,64,5,6,6,6,0,0,32,32,248,32,32,248,4, + 5,5,6,1,3,96,144,32,64,240,4,5,5,6,1,3, + 224,16,96,16,224,2,2,2,6,2,6,64,128,5,6,6, + 6,0,255,136,136,136,200,176,128,5,7,7,6,0,0,120, + 232,232,104,40,40,40,1,1,1,6,2,3,128,2,2,2, + 6,2,254,64,128,3,5,5,6,1,3,64,192,64,64,224, + 4,6,6,6,1,1,96,144,144,96,0,240,6,5,5,6, + 0,0,144,72,36,72,144,6,9,9,6,0,255,64,192,64, + 64,228,12,20,60,4,6,9,9,6,0,255,64,192,64,64, + 232,20,4,8,28,5,9,9,6,0,255,192,32,64,32,200, + 24,40,120,8,5,7,7,6,0,0,32,0,32,32,64,136, + 112,5,8,8,6,0,0,64,32,112,136,136,248,136,136,5, + 8,8,6,0,0,16,32,112,136,136,248,136,136,5,8,8, + 6,0,0,32,80,112,136,136,248,136,136,5,8,8,6,0, + 0,72,176,112,136,136,248,136,136,5,8,8,6,0,0,80, + 0,112,136,136,248,136,136,5,8,8,6,0,0,32,80,112, + 136,136,248,136,136,6,7,7,6,0,0,60,80,144,156,240, + 144,156,5,9,9,6,0,254,112,136,128,128,128,136,112,32, + 64,5,8,8,6,0,0,64,248,128,128,240,128,128,248,5, + 8,8,6,0,0,16,248,128,128,240,128,128,248,5,8,8, + 6,0,0,32,248,128,128,240,128,128,248,5,8,8,6,0, + 0,80,248,128,128,240,128,128,248,3,8,8,6,1,0,128, + 64,224,64,64,64,64,224,3,8,8,6,1,0,32,64,224, + 64,64,64,64,224,3,8,8,6,1,0,64,160,224,64,64, + 64,64,224,3,8,8,6,1,0,160,0,224,64,64,64,64, + 224,5,7,7,6,0,0,240,72,72,232,72,72,240,5,8, + 8,6,0,0,40,80,136,200,168,152,136,136,5,8,8,6, + 0,0,64,32,112,136,136,136,136,112,5,8,8,6,0,0, + 16,32,112,136,136,136,136,112,5,8,8,6,0,0,32,80, + 112,136,136,136,136,112,5,8,8,6,0,0,40,80,112,136, + 136,136,136,112,5,8,8,6,0,0,80,0,112,136,136,136, + 136,112,5,5,5,6,0,0,136,80,32,80,136,5,7,7, + 6,0,0,112,152,152,168,200,200,112,5,8,8,6,0,0, + 64,32,136,136,136,136,136,112,5,8,8,6,0,0,16,32, + 136,136,136,136,136,112,5,8,8,6,0,0,32,80,0,136, + 136,136,136,112,5,8,8,6,0,0,80,0,136,136,136,136, + 136,112,5,8,8,6,0,0,16,32,136,136,80,32,32,32, + 5,7,7,6,0,0,128,240,136,240,128,128,128,5,7,7, + 6,0,0,112,136,144,160,144,136,176,5,8,8,6,0,0, + 64,32,0,112,8,120,136,120,5,8,8,6,0,0,16,32, + 0,112,8,120,136,120,5,8,8,6,0,0,32,80,0,112, + 8,120,136,120,5,8,8,6,0,0,40,80,0,112,8,120, + 136,120,5,7,7,6,0,0,80,0,112,8,120,136,120,5, + 8,8,6,0,0,32,80,32,112,8,120,136,120,6,5,5, + 6,0,0,120,20,124,144,124,5,7,7,6,0,254,112,136, + 128,136,112,32,64,5,8,8,6,0,0,64,32,0,112,136, + 248,128,112,5,8,8,6,0,0,16,32,0,112,136,248,128, + 112,5,8,8,6,0,0,32,80,0,112,136,248,128,112,5, + 7,7,6,0,0,80,0,112,136,248,128,112,3,8,8,6, + 1,0,128,64,0,192,64,64,64,224,3,8,8,6,1,0, + 64,128,0,192,64,64,64,224,3,8,8,6,1,0,64,160, + 0,192,64,64,64,224,6,10,10,6,0,254,164,168,0,252, + 132,128,128,128,132,252,6,10,10,6,0,254,84,148,0,252, + 132,4,4,4,132,252,5,8,8,6,0,0,40,80,0,176, + 200,136,136,136,5,8,8,6,0,0,64,32,0,112,136,136, + 136,112,4,10,10,6,2,254,48,64,128,144,144,144,144,144, + 144,144,4,10,10,6,0,254,192,32,16,144,144,144,144,144, + 144,144,6,7,7,6,0,1,68,140,140,132,128,64,60,6, + 7,7,6,0,1,136,196,196,132,4,8,240,5,5,5,6, + 0,1,32,0,248,0,32,5,8,8,6,0,0,64,240,200, + 136,136,152,120,16,5,8,8,6,0,0,224,248,136,136,136, + 136,136,248,5,5,5,6,0,1,32,48,248,48,32,5,8, + 8,6,0,0,32,112,248,32,32,32,32,224,5,9,9,6, + 0,255,32,112,168,168,184,136,136,80,32,5,9,9,6,0, + 255,224,128,192,176,168,168,48,40,40,5,9,9,6,0,255, + 248,168,136,136,136,136,136,168,248,5,10,10,6,0,254,32, + 80,80,80,80,136,168,168,136,112}; + diff --git a/Marlin/dogm_lcd_implementation.h b/Marlin/dogm_lcd_implementation.h new file mode 100644 index 0000000000000000000000000000000000000000..8d450cb37098e8ccb38f998dcf6390742576501a --- /dev/null +++ b/Marlin/dogm_lcd_implementation.h @@ -0,0 +1,607 @@ +/** + *dogm_lcd_implementation.h + * + *Graphics LCD implementation for 128x64 pixel LCDs by STB for ErikZalm/Marlin + *Demonstrator: http://www.reprap.org/wiki/STB_Electronics + *License: http://opensource.org/licenses/BSD-3-Clause + * + *With the use of: + *u8glib by Oliver Kraus + *http://code.google.com/p/u8glib/ + *License: http://opensource.org/licenses/BSD-3-Clause + */ + + +#ifndef ULTRA_LCD_IMPLEMENTATION_DOGM_H +#define ULTRA_LCD_IMPLEMENTATION_DOGM_H + +/** +* Implementation of the LCD display routines for a DOGM128 graphic display. These are common LCD 128x64 pixel graphic displays. +**/ + +#ifdef ULTIPANEL +#define BLEN_A 0 +#define BLEN_B 1 +#define BLEN_C 2 +#define EN_A (1< +#include "DOGMbitmaps.h" +#include "dogm_font_data_marlin.h" +#include "ultralcd.h" +#include "ultralcd_st7920_u8glib_rrd.h" + + +/* Russian language not supported yet, needs custom font + +#if LANGUAGE_CHOICE == 6 +#include "LiquidCrystalRus.h" +#define LCD_CLASS LiquidCrystalRus +#else +#include +#define LCD_CLASS LiquidCrystal +#endif +*/ + +// DOGM parameters (size in pixels) +#define DOG_CHAR_WIDTH 6 +#define DOG_CHAR_HEIGHT 12 +#define DOG_CHAR_WIDTH_LARGE 9 +#define DOG_CHAR_HEIGHT_LARGE 18 + + +#define START_ROW 0 + + +/* Custom characters defined in font font_6x10_marlin.c */ +#define LCD_STR_BEDTEMP "\xFE" +#define LCD_STR_DEGREE "\xB0" +#define LCD_STR_THERMOMETER "\xFF" +#define LCD_STR_UPLEVEL "\xFB" +#define LCD_STR_REFRESH "\xF8" +#define LCD_STR_FOLDER "\xF9" +#define LCD_STR_FEEDRATE "\xFD" +#define LCD_STR_CLOCK "\xFC" +#define LCD_STR_ARROW_RIGHT "\xFA" + +#define FONT_STATUSMENU u8g_font_6x9 + +int lcd_contrast; + +// LCD selection +#ifdef U8GLIB_ST7920 +//U8GLIB_ST7920_128X64_RRD u8g(0,0,0); +U8GLIB_ST7920_128X64_RRD u8g(0); +#elif defined(MAKRPANEL) +// The MaKrPanel display, ST7565 controller as well +U8GLIB_NHD_C12864 u8g(DOGLCD_CS, DOGLCD_A0); +#else +// for regular DOGM128 display with HW-SPI +U8GLIB_DOGM128 u8g(DOGLCD_CS, DOGLCD_A0); // HW-SPI Com: CS, A0 +#endif + +static void lcd_implementation_init() +{ +#ifdef LCD_PIN_BL + pinMode(LCD_PIN_BL, OUTPUT); // Enable LCD backlight + digitalWrite(LCD_PIN_BL, HIGH); +#endif + + u8g.setContrast(lcd_contrast); + // Uncomment this if you have the first generation (V1.10) of STBs board + // pinMode(17, OUTPUT); // Enable LCD backlight + // digitalWrite(17, HIGH); + + u8g.firstPage(); + do { + u8g.setFont(u8g_font_6x10_marlin); + u8g.setColorIndex(1); + u8g.drawBox (0, 0, u8g.getWidth(), u8g.getHeight()); + u8g.setColorIndex(1); + } while( u8g.nextPage() ); + +#ifdef LCD_SCREEN_ROT_90 + u8g.setRot90(); // Rotate screen by 90° +#endif + +#ifdef LCD_SCREEN_ROT_180 + u8g.setRot180(); // Rotate screen by 180° +#endif + +#ifdef LCD_SCREEN_ROT_270 + u8g.setRot270(); // Rotate screen by 270° +#endif + + + u8g.firstPage(); + do { + // RepRap init bmp + u8g.drawBitmapP(0,0,START_BMPBYTEWIDTH,START_BMPHEIGHT,start_bmp); + // Welcome message + u8g.setFont(u8g_font_6x10_marlin); + u8g.drawStr(62,10,"MARLIN"); + u8g.setFont(u8g_font_5x8); + u8g.drawStr(62,19,"V1.0.0 RC2-mm"); + u8g.setFont(u8g_font_6x10_marlin); + u8g.drawStr(62,28,"by ErikZalm"); + u8g.drawStr(62,41,"DOGM128 LCD"); + u8g.setFont(u8g_font_5x8); + u8g.drawStr(62,48,"enhancements"); + u8g.setFont(u8g_font_5x8); + u8g.drawStr(62,55,"by STB, MM"); + u8g.drawStr(62,61,"uses u"); + u8g.drawStr90(92,57,"8"); + u8g.drawStr(100,61,"glib"); + } while( u8g.nextPage() ); +} + +static void lcd_implementation_clear() +{ +// NO NEED TO IMPLEMENT LIKE SO. Picture loop automatically clears the display. +// +// Check this article: http://arduino.cc/forum/index.php?topic=91395.25;wap2 +// +// u8g.firstPage(); +// do { +// u8g.setColorIndex(0); +// u8g.drawBox (0, 0, u8g.getWidth(), u8g.getHeight()); +// u8g.setColorIndex(1); +// } while( u8g.nextPage() ); +} + +/* Arduino < 1.0.0 is missing a function to print PROGMEM strings, so we need to implement our own */ +static void lcd_printPGM(const char* str) +{ + char c; + while((c = pgm_read_byte(str++)) != '\0') + { + u8g.print(c); + } +} + + +static void lcd_implementation_status_screen() +{ + + static unsigned char fan_rot = 0; + + u8g.setColorIndex(1); // black on white + + // Symbols menu graphics, animated fan + if ((blink % 2) && fanSpeed ) u8g.drawBitmapP(9,1,STATUS_SCREENBYTEWIDTH,STATUS_SCREENHEIGHT,status_screen0_bmp); + else u8g.drawBitmapP(9,1,STATUS_SCREENBYTEWIDTH,STATUS_SCREENHEIGHT,status_screen1_bmp); + + #ifdef SDSUPPORT + //SD Card Symbol + u8g.drawBox(42,42,8,7); + u8g.drawBox(50,44,2,5); + u8g.drawFrame(42,49,10,4); + u8g.drawPixel(50,43); + // Progress bar + u8g.drawFrame(54,49,73,4); + + // SD Card Progress bar and clock + u8g.setFont(FONT_STATUSMENU); + + if (IS_SD_PRINTING) + { + // Progress bar + u8g.drawBox(55,50, (unsigned int)( (71 * card.percentDone())/100) ,2); + } + else { + // do nothing + } + + u8g.setPrintPos(80,47); + if(starttime != 0) + { + uint16_t time = millis()/60000 - starttime/60000; + + u8g.print(itostr2(time/60)); + u8g.print(':'); + u8g.print(itostr2(time%60)); + }else{ + lcd_printPGM(PSTR("--:--")); + } + #endif + + // Extruder 1 + u8g.setFont(FONT_STATUSMENU); + u8g.setPrintPos(6,6); + u8g.print(itostr3(int(degTargetHotend(0) + 0.5))); + lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); + u8g.setPrintPos(6,27); + u8g.print(itostr3(int(degHotend(0) + 0.5))); + lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); + if (!isHeatingHotend(0)) u8g.drawBox(13,17,2,2); + else + { + u8g.setColorIndex(0); // white on black + u8g.drawBox(13,17,2,2); + u8g.setColorIndex(1); // black on white + } + + // Extruder 2 + u8g.setFont(FONT_STATUSMENU); + #if EXTRUDERS > 1 + u8g.setPrintPos(31,6); + u8g.print(itostr3(int(degTargetHotend(1) + 0.5))); + lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); + u8g.setPrintPos(31,27); + u8g.print(itostr3(int(degHotend(1) + 0.5))); + lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); + if (!isHeatingHotend(1)) u8g.drawBox(38,17,2,2); + else + { + u8g.setColorIndex(0); // white on black + u8g.drawBox(38,17,2,2); + u8g.setColorIndex(1); // black on white + } + #else + u8g.setPrintPos(31,27); + u8g.print("---"); + #endif + + // Extruder 3 + u8g.setFont(FONT_STATUSMENU); + # if EXTRUDERS > 2 + u8g.setPrintPos(55,6); + u8g.print(itostr3(int(degTargetHotend(2) + 0.5))); + lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); + u8g.setPrintPos(55,27); + u8g.print(itostr3(int(degHotend(2) + 0.5))); + lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); + if (!isHeatingHotend(2)) u8g.drawBox(62,17,2,2); + else + { + u8g.setColorIndex(0); // white on black + u8g.drawBox(62,17,2,2); + u8g.setColorIndex(1); // black on white + } + #else + u8g.setPrintPos(55,27); + u8g.print("---"); + #endif + + // Heatbed + u8g.setFont(FONT_STATUSMENU); + u8g.setPrintPos(81,6); + u8g.print(itostr3(int(degTargetBed() + 0.5))); + lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); + u8g.setPrintPos(81,27); + u8g.print(itostr3(int(degBed() + 0.5))); + lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); + if (!isHeatingBed()) u8g.drawBox(88,18,2,2); + else + { + u8g.setColorIndex(0); // white on black + u8g.drawBox(88,18,2,2); + u8g.setColorIndex(1); // black on white + } + + // Fan + u8g.setFont(FONT_STATUSMENU); + u8g.setPrintPos(104,27); + #if defined(FAN_PIN) && FAN_PIN > -1 + u8g.print(itostr3(int((fanSpeed*100)/256 + 1))); + u8g.print("%"); + #else + u8g.print("---"); + #endif + + + // X, Y, Z-Coordinates + u8g.setFont(FONT_STATUSMENU); + u8g.drawBox(0,29,128,10); + u8g.setColorIndex(0); // white on black + u8g.setPrintPos(2,37); + u8g.print("X"); + u8g.drawPixel(8,33); + u8g.drawPixel(8,35); + u8g.setPrintPos(10,37); + u8g.print(ftostr31ns(current_position[X_AXIS])); + u8g.setPrintPos(43,37); + lcd_printPGM(PSTR("Y")); + u8g.drawPixel(49,33); + u8g.drawPixel(49,35); + u8g.setPrintPos(51,37); + u8g.print(ftostr31ns(current_position[Y_AXIS])); + u8g.setPrintPos(83,37); + u8g.print("Z"); + u8g.drawPixel(89,33); + u8g.drawPixel(89,35); + u8g.setPrintPos(91,37); + u8g.print(ftostr31(current_position[Z_AXIS])); + u8g.setColorIndex(1); // black on white + + // Feedrate + u8g.setFont(u8g_font_6x10_marlin); + u8g.setPrintPos(3,49); + u8g.print(LCD_STR_FEEDRATE[0]); + u8g.setFont(FONT_STATUSMENU); + u8g.setPrintPos(12,48); + u8g.print(itostr3(feedmultiply)); + u8g.print('%'); + + // Status line + u8g.setFont(FONT_STATUSMENU); + u8g.setPrintPos(0,61); + u8g.print(lcd_status_message); + +} + +static void lcd_implementation_drawmenu_generic(uint8_t row, const char* pstr, char pre_char, char post_char) +{ + char c; + + uint8_t n = LCD_WIDTH - 1 - 2; + + if ((pre_char == '>') || (pre_char == LCD_STR_UPLEVEL[0] )) + { + u8g.setColorIndex(1); // black on white + u8g.drawBox (0, row*DOG_CHAR_HEIGHT + 3, 128, DOG_CHAR_HEIGHT); + u8g.setColorIndex(0); // following text must be white on black + } else u8g.setColorIndex(1); // unmarked text is black on white + + u8g.setPrintPos(0 * DOG_CHAR_WIDTH, (row + 1) * DOG_CHAR_HEIGHT); + if (pre_char != '>') u8g.print(pre_char); else u8g.print(' '); // Row selector is obsolete + + + while( (c = pgm_read_byte(pstr)) != '\0' ) + { + u8g.print(c); + pstr++; + n--; + } + while(n--){ + u8g.print(' '); + } + + u8g.print(post_char); + u8g.print(' '); + u8g.setColorIndex(1); // restore settings to black on white +} + +static void lcd_implementation_drawmenu_setting_edit_generic(uint8_t row, const char* pstr, char pre_char, char* data) +{ + static unsigned int fkt_cnt = 0; + char c; + uint8_t n = LCD_WIDTH - 1 - 2 - strlen(data); + + u8g.setPrintPos(0 * DOG_CHAR_WIDTH, (row + 1) * DOG_CHAR_HEIGHT); + u8g.print(pre_char); + + while( (c = pgm_read_byte(pstr)) != '\0' ) + { + u8g.print(c); + + pstr++; + n--; + } + + u8g.print(':'); + + while(n--){ + u8g.print(' '); + } + + u8g.print(data); +} + +static void lcd_implementation_drawmenu_setting_edit_generic_P(uint8_t row, const char* pstr, char pre_char, const char* data) +{ + char c; + uint8_t n= LCD_WIDTH - 1 - 2 - strlen_P(data); + + u8g.setPrintPos(0 * DOG_CHAR_WIDTH, (row + 1) * DOG_CHAR_HEIGHT); + u8g.print(pre_char); + + while( (c = pgm_read_byte(pstr)) != '\0' ) + { + u8g.print(c); + + pstr++; + n--; + } + + u8g.print(':'); + + while(n--){ + u8g.print(' '); + } + + lcd_printPGM(data); +} + +#define lcd_implementation_drawmenu_setting_edit_int3_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', itostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_int3(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', itostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float3_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float3(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float32_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr32(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float32(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr32(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float5_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float5(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float52_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr52(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float52(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr52(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float51_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr51(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float51(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr51(*(data))) +#define lcd_implementation_drawmenu_setting_edit_long5_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_long5(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_bool_selected(row, pstr, pstr2, data) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, '>', (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF)) +#define lcd_implementation_drawmenu_setting_edit_bool(row, pstr, pstr2, data) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, ' ', (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF)) + +//Add version for callback functions +#define lcd_implementation_drawmenu_setting_edit_callback_int3_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', itostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_int3(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', itostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float3_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float3(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float32_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr32(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float32(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr32(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float5_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float5(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float52_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr52(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float52(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr52(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float51_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr51(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float51(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr51(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_long5_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_long5(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_bool_selected(row, pstr, pstr2, data, callback) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, '>', (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF)) +#define lcd_implementation_drawmenu_setting_edit_callback_bool(row, pstr, pstr2, data, callback) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, ' ', (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF)) + +void lcd_implementation_drawedit(const char* pstr, char* value) +{ + u8g.setPrintPos(0 * DOG_CHAR_WIDTH_LARGE, (u8g.getHeight() - 1 - DOG_CHAR_HEIGHT_LARGE) - (1 * DOG_CHAR_HEIGHT_LARGE) - START_ROW ); + u8g.setFont(u8g_font_9x18); + lcd_printPGM(pstr); + u8g.print(':'); + u8g.setPrintPos((14 - strlen(value)) * DOG_CHAR_WIDTH_LARGE, (u8g.getHeight() - 1 - DOG_CHAR_HEIGHT_LARGE) - (1 * DOG_CHAR_HEIGHT_LARGE) - START_ROW ); + u8g.print(value); +} + +static void lcd_implementation_drawmenu_sdfile_selected(uint8_t row, const char* pstr, const char* filename, char* longFilename) +{ + char c; + uint8_t n = LCD_WIDTH - 1; + + if (longFilename[0] != '\0') + { + filename = longFilename; + longFilename[LCD_WIDTH-1] = '\0'; + } + + u8g.setColorIndex(1); // black on white + u8g.drawBox (0, row*DOG_CHAR_HEIGHT + 3, 128, DOG_CHAR_HEIGHT); + u8g.setColorIndex(0); // following text must be white on black + u8g.setPrintPos(0 * DOG_CHAR_WIDTH, (row + 1) * DOG_CHAR_HEIGHT); + u8g.print(' '); // Indent by 1 char + + while((c = *filename) != '\0') + { + u8g.print(c); + filename++; + n--; + } + while(n--){ + u8g.print(' '); + } + u8g.setColorIndex(1); // black on white +} + +static void lcd_implementation_drawmenu_sdfile(uint8_t row, const char* pstr, const char* filename, char* longFilename) +{ + char c; + uint8_t n = LCD_WIDTH - 1; + + if (longFilename[0] != '\0') + { + filename = longFilename; + longFilename[LCD_WIDTH-1] = '\0'; + } + + u8g.setPrintPos(0 * DOG_CHAR_WIDTH, (row + 1) * DOG_CHAR_HEIGHT); + u8g.print(' '); + +while((c = *filename) != '\0') + { + u8g.print(c); + + filename++; + n--; + } + while(n--){ + u8g.print(' '); + } + +} + +static void lcd_implementation_drawmenu_sddirectory_selected(uint8_t row, const char* pstr, const char* filename, char* longFilename) +{ + char c; + uint8_t n = LCD_WIDTH - 2; + + if (longFilename[0] != '\0') + { + filename = longFilename; + longFilename[LCD_WIDTH-2] = '\0'; + } + u8g.setColorIndex(1); // black on white + u8g.drawBox (0, row*DOG_CHAR_HEIGHT + 3, 128, DOG_CHAR_HEIGHT); + u8g.setColorIndex(0); // following text must be white on black + u8g.setPrintPos(0 * DOG_CHAR_WIDTH, (row + 1) * DOG_CHAR_HEIGHT); + u8g.print(' '); // Indent by 1 char + u8g.print(LCD_STR_FOLDER[0]); + + while((c = *filename) != '\0') + { + u8g.print(c); + + filename++; + n--; + } + while(n--){ + u8g.print(' '); + } + u8g.setColorIndex(1); // black on white +} + +static void lcd_implementation_drawmenu_sddirectory(uint8_t row, const char* pstr, const char* filename, char* longFilename) +{ + char c; + uint8_t n = LCD_WIDTH - 2; + + if (longFilename[0] != '\0') + { + filename = longFilename; + longFilename[LCD_WIDTH-2] = '\0'; + } + + u8g.setPrintPos(0 * DOG_CHAR_WIDTH, (row + 1) * DOG_CHAR_HEIGHT); + u8g.print(' '); + u8g.print(LCD_STR_FOLDER[0]); + + while((c = *filename) != '\0') + { + u8g.print(c); + + filename++; + n--; + } + while(n--){ + u8g.print(' '); + } +} + +#define lcd_implementation_drawmenu_back_selected(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, LCD_STR_UPLEVEL[0], LCD_STR_UPLEVEL[0]) +#define lcd_implementation_drawmenu_back(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, ' ', LCD_STR_UPLEVEL[0]) +#define lcd_implementation_drawmenu_submenu_selected(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, '>', LCD_STR_ARROW_RIGHT[0]) +#define lcd_implementation_drawmenu_submenu(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, ' ', LCD_STR_ARROW_RIGHT[0]) +#define lcd_implementation_drawmenu_gcode_selected(row, pstr, gcode) lcd_implementation_drawmenu_generic(row, pstr, '>', ' ') +#define lcd_implementation_drawmenu_gcode(row, pstr, gcode) lcd_implementation_drawmenu_generic(row, pstr, ' ', ' ') +#define lcd_implementation_drawmenu_function_selected(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, '>', ' ') +#define lcd_implementation_drawmenu_function(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, ' ', ' ') + +static void lcd_implementation_quick_feedback() +{ + +#if BEEPER > -1 + SET_OUTPUT(BEEPER); + for(int8_t i=0;i<10;i++) + { + WRITE(BEEPER,HIGH); + delay(3); + WRITE(BEEPER,LOW); + delay(3); + } +#endif +} +#endif//ULTRA_LCD_IMPLEMENTATION_DOGM_H + + diff --git a/Marlin/example_configurations/delta/Configuration.h b/Marlin/example_configurations/delta/Configuration.h new file mode 100644 index 0000000000000000000000000000000000000000..dbd2892b4b98b88a8cb95ab4ce71130d870278a6 --- /dev/null +++ b/Marlin/example_configurations/delta/Configuration.h @@ -0,0 +1,592 @@ +#ifndef CONFIGURATION_H +#define CONFIGURATION_H + +// This configuration file contains the basic settings. +// Advanced settings can be found in Configuration_adv.h +// BASIC SETTINGS: select your board type, temperature sensor type, axis scaling, and endstop configuration + +// User-specified version info of this build to display in [Pronterface, etc] terminal window during +// startup. Implementation of an idea by Prof Braino to inform user that any changes made to this +// build by the user have been successfully uploaded into firmware. +#define STRING_VERSION_CONFIG_H __DATE__ " " __TIME__ // build date and time +#define STRING_CONFIG_H_AUTHOR "(none, default config)" // Who made the changes. + +// SERIAL_PORT selects which serial port should be used for communication with the host. +// This allows the connection of wireless adapters (for instance) to non-default port pins. +// Serial port 0 is still used by the Arduino bootloader regardless of this setting. +#define SERIAL_PORT 0 + +// This determines the communication speed of the printer +#define BAUDRATE 250000 +//#define BAUDRATE 115200 + +//// The following define selects which electronics board you have. Please choose the one that matches your setup +// 10 = Gen7 custom (Alfons3 Version) "https://github.com/Alfons3/Generation_7_Electronics" +// 11 = Gen7 v1.1, v1.2 = 11 +// 12 = Gen7 v1.3 +// 13 = Gen7 v1.4 +// 3 = MEGA/RAMPS up to 1.2 = 3 +// 33 = RAMPS 1.3 / 1.4 (Power outputs: Extruder, Fan, Bed) +// 34 = RAMPS 1.3 / 1.4 (Power outputs: Extruder0, Extruder1, Bed) +// 35 = RAMPS 1.3 / 1.4 (Power outputs: Extruder, Fan, Fan) +// 4 = Duemilanove w/ ATMega328P pin assignment +// 5 = Gen6 +// 51 = Gen6 deluxe +// 6 = Sanguinololu < 1.2 +// 62 = Sanguinololu 1.2 and above +// 63 = Melzi +// 64 = STB V1.1 +// 65 = Azteeg X1 +// 66 = Melzi with ATmega1284 (MaKr3d version) +// 7 = Ultimaker +// 71 = Ultimaker (Older electronics. Pre 1.5.4. This is rare) +// 77 = 3Drag Controller +// 8 = Teensylu +// 80 = Rumba +// 81 = Printrboard (AT90USB1286) +// 82 = Brainwave (AT90USB646) +// 9 = Gen3+ +// 70 = Megatronics +// 701= Megatronics v2.0 +// 702= Minitronics v1.0 +// 90 = Alpha OMCA board +// 91 = Final OMCA board +// 301 = Rambo +// 21 = Elefu Ra Board (v3) + +#ifndef MOTHERBOARD +#define MOTHERBOARD 33 +#endif + +// Define this to set a custom name for your generic Mendel, +// #define CUSTOM_MENDEL_NAME "This Mendel" + +// This defines the number of extruders +#define EXTRUDERS 1 + +//// The following define selects which power supply you have. Please choose the one that matches your setup +// 1 = ATX +// 2 = X-Box 360 203Watts (the blue wire connected to PS_ON and the red wire to VCC) + +#define POWER_SUPPLY 1 + + +//=========================================================================== +//============================== Delta Settings ============================= +//=========================================================================== +// Enable DELTA kinematics and most of the default configuration for Deltas +#define DELTA + +// Make delta curves from many straight lines (linear interpolation). +// This is a trade-off between visible corners (not enough segments) +// and processor overload (too many expensive sqrt calls). +#define DELTA_SEGMENTS_PER_SECOND 200 + +// NOTE NB all values for DELTA_* values MOUST be floating point, so always have a decimal point in them + +// Center-to-center distance of the holes in the diagonal push rods. +#define DELTA_DIAGONAL_ROD 250.0 // mm + +// Horizontal offset from middle of printer to smooth rod center. +#define DELTA_SMOOTH_ROD_OFFSET 175.0 // mm + +// Horizontal offset of the universal joints on the end effector. +#define DELTA_EFFECTOR_OFFSET 33.0 // mm + +// Horizontal offset of the universal joints on the carriages. +#define DELTA_CARRIAGE_OFFSET 18.0 // mm + +// Effective horizontal distance bridged by diagonal push rods. +#define DELTA_RADIUS (DELTA_SMOOTH_ROD_OFFSET-DELTA_EFFECTOR_OFFSET-DELTA_CARRIAGE_OFFSET) + +#define DELTA_DIAGONAL_ROD_2 sq(DELTA_DIAGONAL_ROD) + +// Effective X/Y positions of the three vertical towers. +#define SIN_60 0.8660254037844386 +#define COS_60 0.5 +#define DELTA_TOWER1_X -SIN_60*DELTA_RADIUS // front left tower +#define DELTA_TOWER1_Y -COS_60*DELTA_RADIUS +#define DELTA_TOWER2_X SIN_60*DELTA_RADIUS // front right tower +#define DELTA_TOWER2_Y -COS_60*DELTA_RADIUS +#define DELTA_TOWER3_X 0.0 // back middle tower +#define DELTA_TOWER3_Y DELTA_RADIUS + +//=========================================================================== +//=============================Thermal Settings ============================ +//=========================================================================== +// +//--NORMAL IS 4.7kohm PULLUP!-- 1kohm pullup can be used on hotend sensor, using correct resistor and table +// +//// Temperature sensor settings: +// -2 is thermocouple with MAX6675 (only for sensor 0) +// -1 is thermocouple with AD595 +// 0 is not used +// 1 is 100k thermistor - best choice for EPCOS 100k (4.7k pullup) +// 2 is 200k thermistor - ATC Semitec 204GT-2 (4.7k pullup) +// 3 is mendel-parts thermistor (4.7k pullup) +// 4 is 10k thermistor !! do not use it for a hotend. It gives bad resolution at high temp. !! +// 5 is 100K thermistor - ATC Semitec 104GT-2 (Used in ParCan) (4.7k pullup) +// 6 is 100k EPCOS - Not as accurate as table 1 (created using a fluke thermocouple) (4.7k pullup) +// 7 is 100k Honeywell thermistor 135-104LAG-J01 (4.7k pullup) +// 8 is 100k 0603 SMD Vishay NTCS0603E3104FXT (4.7k pullup) +// 9 is 100k GE Sensing AL03006-58.2K-97-G1 (4.7k pullup) +// 10 is 100k RS thermistor 198-961 (4.7k pullup) +// 60 is 100k Maker's Tool Works Kapton Bed Thermister +// +// 1k ohm pullup tables - This is not normal, you would have to have changed out your 4.7k for 1k +// (but gives greater accuracy and more stable PID) +// 51 is 100k thermistor - EPCOS (1k pullup) +// 52 is 200k thermistor - ATC Semitec 204GT-2 (1k pullup) +// 55 is 100k thermistor - ATC Semitec 104GT-2 (Used in ParCan) (1k pullup) + +#define TEMP_SENSOR_0 -1 +#define TEMP_SENSOR_1 -1 +#define TEMP_SENSOR_2 0 +#define TEMP_SENSOR_BED 0 + +// This makes temp sensor 1 a redundant sensor for sensor 0. If the temperatures difference between these sensors is to high the print will be aborted. +//#define TEMP_SENSOR_1_AS_REDUNDANT +#define MAX_REDUNDANT_TEMP_SENSOR_DIFF 10 + +// Actual temperature must be close to target for this long before M109 returns success +#define TEMP_RESIDENCY_TIME 10 // (seconds) +#define TEMP_HYSTERESIS 3 // (degC) range of +/- temperatures considered "close" to the target one +#define TEMP_WINDOW 1 // (degC) Window around target to start the residency timer x degC early. + +// The minimal temperature defines the temperature below which the heater will not be enabled It is used +// to check that the wiring to the thermistor is not broken. +// Otherwise this would lead to the heater being powered on all the time. +#define HEATER_0_MINTEMP 5 +#define HEATER_1_MINTEMP 5 +#define HEATER_2_MINTEMP 5 +#define BED_MINTEMP 5 + +// When temperature exceeds max temp, your heater will be switched off. +// This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure! +// You should use MINTEMP for thermistor short/failure protection. +#define HEATER_0_MAXTEMP 275 +#define HEATER_1_MAXTEMP 275 +#define HEATER_2_MAXTEMP 275 +#define BED_MAXTEMP 150 + +// If your bed has low resistance e.g. .6 ohm and throws the fuse you can duty cycle it to reduce the +// average current. The value should be an integer and the heat bed will be turned on for 1 interval of +// HEATER_BED_DUTY_CYCLE_DIVIDER intervals. +//#define HEATER_BED_DUTY_CYCLE_DIVIDER 4 + +// PID settings: +// Comment the following line to disable PID and enable bang-bang. +#define PIDTEMP +#define BANG_MAX 255 // limits current to nozzle while in bang-bang mode; 255=full current +#define PID_MAX 255 // limits current to nozzle while PID is active (see PID_FUNCTIONAL_RANGE below); 255=full current +#ifdef PIDTEMP + //#define PID_DEBUG // Sends debug data to the serial port. + //#define PID_OPENLOOP 1 // Puts PID in open loop. M104/M140 sets the output power from 0 to PID_MAX + #define PID_FUNCTIONAL_RANGE 10 // If the temperature difference between the target temperature and the actual temperature + // is more then PID_FUNCTIONAL_RANGE then the PID will be shut off and the heater will be set to min/max. + #define PID_INTEGRAL_DRIVE_MAX 255 //limit for the integral term + #define K1 0.95 //smoothing factor within the PID + #define PID_dT ((16.0 * 8.0)/(F_CPU / 64.0 / 256.0)) //sampling period of the temperature routine + +// If you are using a preconfigured hotend then you can use one of the value sets by uncommenting it +// Ultimaker + #define DEFAULT_Kp 22.2 + #define DEFAULT_Ki 1.08 + #define DEFAULT_Kd 114 + +// Makergear +// #define DEFAULT_Kp 7.0 +// #define DEFAULT_Ki 0.1 +// #define DEFAULT_Kd 12 + +// Mendel Parts V9 on 12V +// #define DEFAULT_Kp 63.0 +// #define DEFAULT_Ki 2.25 +// #define DEFAULT_Kd 440 +#endif // PIDTEMP + +// Bed Temperature Control +// Select PID or bang-bang with PIDTEMPBED. If bang-bang, BED_LIMIT_SWITCHING will enable hysteresis +// +// Uncomment this to enable PID on the bed. It uses the same frequency PWM as the extruder. +// If your PID_dT above is the default, and correct for your hardware/configuration, that means 7.689Hz, +// which is fine for driving a square wave into a resistive load and does not significantly impact you FET heating. +// This also works fine on a Fotek SSR-10DA Solid State Relay into a 250W heater. +// If your configuration is significantly different than this and you don't understand the issues involved, you probably +// shouldn't use bed PID until someone else verifies your hardware works. +// If this is enabled, find your own PID constants below. +//#define PIDTEMPBED +// +//#define BED_LIMIT_SWITCHING + +// This sets the max power delivered to the bed, and replaces the HEATER_BED_DUTY_CYCLE_DIVIDER option. +// all forms of bed control obey this (PID, bang-bang, bang-bang with hysteresis) +// setting this to anything other than 255 enables a form of PWM to the bed just like HEATER_BED_DUTY_CYCLE_DIVIDER did, +// so you shouldn't use it unless you are OK with PWM on your bed. (see the comment on enabling PIDTEMPBED) +#define MAX_BED_POWER 255 // limits duty cycle to bed; 255=full current + +#ifdef PIDTEMPBED +//120v 250W silicone heater into 4mm borosilicate (MendelMax 1.5+) +//from FOPDT model - kp=.39 Tp=405 Tdead=66, Tc set to 79.2, aggressive factor of .15 (vs .1, 1, 10) + #define DEFAULT_bedKp 10.00 + #define DEFAULT_bedKi .023 + #define DEFAULT_bedKd 305.4 + +//120v 250W silicone heater into 4mm borosilicate (MendelMax 1.5+) +//from pidautotune +// #define DEFAULT_bedKp 97.1 +// #define DEFAULT_bedKi 1.41 +// #define DEFAULT_bedKd 1675.16 + +// FIND YOUR OWN: "M303 E-1 C8 S90" to run autotune on the bed at 90 degreesC for 8 cycles. +#endif // PIDTEMPBED + + + +//this prevents dangerous Extruder moves, i.e. if the temperature is under the limit +//can be software-disabled for whatever purposes by +#define PREVENT_DANGEROUS_EXTRUDE +//if PREVENT_DANGEROUS_EXTRUDE is on, you can still disable (uncomment) very long bits of extrusion separately. +#define PREVENT_LENGTHY_EXTRUDE + +#define EXTRUDE_MINTEMP 170 +#define EXTRUDE_MAXLENGTH (X_MAX_LENGTH+Y_MAX_LENGTH) //prevent extrusion of very large distances. + +//=========================================================================== +//=============================Mechanical Settings=========================== +//=========================================================================== + +// Uncomment the following line to enable CoreXY kinematics +// #define COREXY + +// coarse Endstop Settings +#define ENDSTOPPULLUPS // Comment this out (using // at the start of the line) to disable the endstop pullup resistors + +#ifndef ENDSTOPPULLUPS + // fine Enstop settings: Individual Pullups. will be ignored if ENDSTOPPULLUPS is defined + // #define ENDSTOPPULLUP_XMAX + // #define ENDSTOPPULLUP_YMAX + // #define ENDSTOPPULLUP_ZMAX + // #define ENDSTOPPULLUP_XMIN + // #define ENDSTOPPULLUP_YMIN + // #define ENDSTOPPULLUP_ZMIN +#endif + +#ifdef ENDSTOPPULLUPS + #define ENDSTOPPULLUP_XMAX + #define ENDSTOPPULLUP_YMAX + #define ENDSTOPPULLUP_ZMAX + #define ENDSTOPPULLUP_XMIN + #define ENDSTOPPULLUP_YMIN + #define ENDSTOPPULLUP_ZMIN +#endif + +// The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins. +const bool X_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop. +const bool Y_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop. +const bool Z_MIN_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop. +const bool X_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop. +const bool Y_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop. +const bool Z_MAX_ENDSTOP_INVERTING = false; // set to true to invert the logic of the endstop. + +// deltas never have min endstops +#define DISABLE_MIN_ENDSTOPS + +// Disable max endstops for compatibility with endstop checking routine +#if defined(COREXY) && !defined(DISABLE_MAX_ENDSTOPS) + #define DISABLE_MAX_ENDSTOPS +#endif + +// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1 +#define X_ENABLE_ON 0 +#define Y_ENABLE_ON 0 +#define Z_ENABLE_ON 0 +#define E_ENABLE_ON 0 // For all extruders + +// Disables axis when it's not being used. +#define DISABLE_X false +#define DISABLE_Y false +#define DISABLE_Z false +#define DISABLE_E false // For all extruders + +#define INVERT_X_DIR false // DELTA does not invert +#define INVERT_Y_DIR false +#define INVERT_Z_DIR false + +#define INVERT_E0_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false +#define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false +#define INVERT_E2_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false + +// ENDSTOP SETTINGS: +// Sets direction of endstops when homing; 1=MAX, -1=MIN +// deltas always home to max +#define X_HOME_DIR 1 +#define Y_HOME_DIR 1 +#define Z_HOME_DIR 1 + +#define min_software_endstops true // If true, axis won't move to coordinates less than HOME_POS. +#define max_software_endstops true // If true, axis won't move to coordinates greater than the defined lengths below. + +// Travel limits after homing +#define X_MAX_POS 90 +#define X_MIN_POS -90 +#define Y_MAX_POS 90 +#define Y_MIN_POS -90 +#define Z_MAX_POS MANUAL_Z_HOME_POS +#define Z_MIN_POS 0 + +#define X_MAX_LENGTH (X_MAX_POS - X_MIN_POS) +#define Y_MAX_LENGTH (Y_MAX_POS - Y_MIN_POS) +#define Z_MAX_LENGTH (Z_MAX_POS - Z_MIN_POS) + +// The position of the homing switches +//#define MANUAL_HOME_POSITIONS // If defined, MANUAL_*_HOME_POS below will be used +//#define BED_CENTER_AT_0_0 // If defined, the center of the bed is at (X=0, Y=0) + +//Manual homing switch locations: + +#define MANUAL_HOME_POSITIONS // MANUAL_*_HOME_POS below will be used +// For deltabots this means top and center of the cartesian print volume. +#define MANUAL_X_HOME_POS 0 +#define MANUAL_Y_HOME_POS 0 +#define MANUAL_Z_HOME_POS 250 // For delta: Distance between nozzle and print surface after homing. + +//// MOVEMENT SETTINGS +#define NUM_AXIS 4 // The axis order in all axis related arrays is X, Y, Z, E + +// delta homing speeds must be the same on xyz +#define HOMING_FEEDRATE {200*60, 200*60, 200*60, 0} // set the homing speeds (mm/min) + +// default settings +// delta speeds must be the same on xyz +#define DEFAULT_AXIS_STEPS_PER_UNIT {80, 80, 80, 760*1.1} // default steps per unit for Kossel (GT2, 20 tooth) +#define DEFAULT_MAX_FEEDRATE {500, 500, 500, 25} // (mm/sec) +#define DEFAULT_MAX_ACCELERATION {9000,9000,9000,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot. + +#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves +#define DEFAULT_RETRACT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for retracts + +// Offset of the extruders (uncomment if using more than one and relying on firmware to position when changing). +// The offset has to be X=0, Y=0 for the extruder 0 hotend (default extruder). +// For the other hotends it is their distance from the extruder 0 hotend. +// #define EXTRUDER_OFFSET_X {0.0, 20.00} // (in mm) for each extruder, offset of the hotend on the X axis +// #define EXTRUDER_OFFSET_Y {0.0, 5.00} // (in mm) for each extruder, offset of the hotend on the Y axis + +// The speed change that does not require acceleration (i.e. the software might assume it can be done instantaneously) +#define DEFAULT_XYJERK 20.0 // (mm/sec) +#define DEFAULT_ZJERK 20.0 // (mm/sec) Must be same as XY for delta +#define DEFAULT_EJERK 5.0 // (mm/sec) + +//=========================================================================== +//=============================Additional Features=========================== +//=========================================================================== + +// EEPROM +// the microcontroller can store settings in the EEPROM, e.g. max velocity... +// M500 - stores paramters in EEPROM +// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). +// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. +//define this to enable eeprom support +//#define EEPROM_SETTINGS +//to disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out: +// please keep turned on if you can. +//#define EEPROM_CHITCHAT + +// Preheat Constants +#define PLA_PREHEAT_HOTEND_TEMP 180 +#define PLA_PREHEAT_HPB_TEMP 70 +#define PLA_PREHEAT_FAN_SPEED 255 // Insert Value between 0 and 255 + +#define ABS_PREHEAT_HOTEND_TEMP 240 +#define ABS_PREHEAT_HPB_TEMP 100 +#define ABS_PREHEAT_FAN_SPEED 255 // Insert Value between 0 and 255 + +//LCD and SD support +//#define ULTRA_LCD //general lcd support, also 16x2 +//#define DOGLCD // Support for SPI LCD 128x64 (Controller ST7565R graphic Display Family) +//#define SDSUPPORT // Enable SD Card Support in Hardware Console +//#define SDSLOW // Use slower SD transfer mode (not normally needed - uncomment if you're getting volume init error) + +//#define ULTIMAKERCONTROLLER //as available from the ultimaker online store. +//#define ULTIPANEL //the ultipanel as on thingiverse + +// The MaKr3d Makr-Panel with graphic controller and SD support +// http://reprap.org/wiki/MaKr3d_MaKrPanel +//#define MAKRPANEL + +// The RepRapDiscount Smart Controller (white PCB) +// http://reprap.org/wiki/RepRapDiscount_Smart_Controller +//#define REPRAP_DISCOUNT_SMART_CONTROLLER + +// The GADGETS3D G3D LCD/SD Controller (blue PCB) +// http://reprap.org/wiki/RAMPS_1.3/1.4_GADGETS3D_Shield_with_Panel +//#define G3D_PANEL + +// The RepRapDiscount FULL GRAPHIC Smart Controller (quadratic white PCB) +// http://reprap.org/wiki/RepRapDiscount_Full_Graphic_Smart_Controller +// +// ==> REMEMBER TO INSTALL U8glib to your ARDUINO library folder: http://code.google.com/p/u8glib/wiki/u8glib +//#define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER + +// The RepRapWorld REPRAPWORLD_KEYPAD v1.1 +// http://reprapworld.com/?products_details&products_id=202&cPath=1591_1626 +//#define REPRAPWORLD_KEYPAD +//#define REPRAPWORLD_KEYPAD_MOVE_STEP 10.0 // how much should be moved when a key is pressed, eg 10.0 means 10mm per click + +// The Elefu RA Board Control Panel +// http://www.elefu.com/index.php?route=product/product&product_id=53 +// REMEMBER TO INSTALL LiquidCrystal_I2C.h in your ARUDINO library folder: https://github.com/kiyoshigawa/LiquidCrystal_I2C +//#define RA_CONTROL_PANEL + +//automatic expansion +#if defined (MAKRPANEL) + #define DOGLCD + #define SDSUPPORT + #define ULTIPANEL + #define NEWPANEL + #define DEFAULT_LCD_CONTRAST 17 +#endif + +#if defined (REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER) + #define DOGLCD + #define U8GLIB_ST7920 + #define REPRAP_DISCOUNT_SMART_CONTROLLER +#endif + +#if defined(ULTIMAKERCONTROLLER) || defined(REPRAP_DISCOUNT_SMART_CONTROLLER) || defined(G3D_PANEL) + #define ULTIPANEL + #define NEWPANEL +#endif + +#if defined(REPRAPWORLD_KEYPAD) + #define NEWPANEL + #define ULTIPANEL +#endif +#if defined(RA_CONTROL_PANEL) + #define ULTIPANEL + #define NEWPANEL + #define LCD_I2C_TYPE_PCA8574 + #define LCD_I2C_ADDRESS 0x27 // I2C Address of the port expander +#endif + +//I2C PANELS + +//#define LCD_I2C_SAINSMART_YWROBOT +#ifdef LCD_I2C_SAINSMART_YWROBOT + // This uses the LiquidCrystal_I2C library ( https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/Home ) + // Make sure it is placed in the Arduino libraries directory. + #define LCD_I2C_TYPE_PCF8575 + #define LCD_I2C_ADDRESS 0x27 // I2C Address of the port expander + #define NEWPANEL + #define ULTIPANEL +#endif + +// PANELOLU2 LCD with status LEDs, separate encoder and click inputs +//#define LCD_I2C_PANELOLU2 +#ifdef LCD_I2C_PANELOLU2 + // This uses the LiquidTWI2 library v1.2.3 or later ( https://github.com/lincomatic/LiquidTWI2 ) + // Make sure the LiquidTWI2 directory is placed in the Arduino or Sketchbook libraries subdirectory. + // (v1.2.3 no longer requires you to define PANELOLU in the LiquidTWI2.h library header file) + // Note: The PANELOLU2 encoder click input can either be directly connected to a pin + // (if BTN_ENC defined to != -1) or read through I2C (when BTN_ENC == -1). + #define LCD_I2C_TYPE_MCP23017 + #define LCD_I2C_ADDRESS 0x20 // I2C Address of the port expander + #define LCD_USE_I2C_BUZZER //comment out to disable buzzer on LCD + #define NEWPANEL + #define ULTIPANEL +#endif + +// Panucatt VIKI LCD with status LEDs, integrated click & L/R/U/P buttons, separate encoder inputs +//#define LCD_I2C_VIKI +#ifdef LCD_I2C_VIKI + // This uses the LiquidTWI2 library v1.2.3 or later ( https://github.com/lincomatic/LiquidTWI2 ) + // Make sure the LiquidTWI2 directory is placed in the Arduino or Sketchbook libraries subdirectory. + // Note: The pause/stop/resume LCD button pin should be connected to the Arduino + // BTN_ENC pin (or set BTN_ENC to -1 if not used) + #define LCD_I2C_TYPE_MCP23017 + #define LCD_I2C_ADDRESS 0x20 // I2C Address of the port expander + #define LCD_USE_I2C_BUZZER //comment out to disable buzzer on LCD (requires LiquidTWI2 v1.2.3 or later) + #define NEWPANEL + #define ULTIPANEL +#endif + +#ifdef ULTIPANEL +// #define NEWPANEL //enable this if you have a click-encoder panel + #define SDSUPPORT + #define ULTRA_LCD + #ifdef DOGLCD // Change number of lines to match the DOG graphic display + #define LCD_WIDTH 20 + #define LCD_HEIGHT 5 + #else + #define LCD_WIDTH 20 + #define LCD_HEIGHT 4 + #endif +#else //no panel but just lcd + #ifdef ULTRA_LCD + #ifdef DOGLCD // Change number of lines to match the 128x64 graphics display + #define LCD_WIDTH 20 + #define LCD_HEIGHT 5 + #else + #define LCD_WIDTH 16 + #define LCD_HEIGHT 2 + #endif + #endif +#endif + +// default LCD contrast for dogm-like LCD displays +#ifdef DOGLCD +# ifndef DEFAULT_LCD_CONTRAST +# define DEFAULT_LCD_CONTRAST 32 +# endif +#endif + +// Increase the FAN pwm frequency. Removes the PWM noise but increases heating in the FET/Arduino +//#define FAST_PWM_FAN + +// Use software PWM to drive the fan, as for the heaters. This uses a very low frequency +// which is not ass annoying as with the hardware PWM. On the other hand, if this frequency +// is too low, you should also increment SOFT_PWM_SCALE. +//#define FAN_SOFT_PWM + +// Incrementing this by 1 will double the software PWM frequency, +// affecting heaters, and the fan if FAN_SOFT_PWM is enabled. +// However, control resolution will be halved for each increment; +// at zero value, there are 128 effective control positions. +#define SOFT_PWM_SCALE 0 + +// M240 Triggers a camera by emulating a Canon RC-1 Remote +// Data from: http://www.doc-diy.net/photo/rc-1_hacked/ +// #define PHOTOGRAPH_PIN 23 + +// SF send wrong arc g-codes when using Arc Point as fillet procedure +//#define SF_ARC_FIX + +// Support for the BariCUDA Paste Extruder. +//#define BARICUDA + +/*********************************************************************\ +* R/C SERVO support +* Sponsored by TrinityLabs, Reworked by codexmas +**********************************************************************/ + +// Number of servos +// +// If you select a configuration below, this will receive a default value and does not need to be set manually +// set it manually if you have more servos than extruders and wish to manually control some +// leaving it undefined or defining as 0 will disable the servo subsystem +// If unsure, leave commented / disabled +// +//#define NUM_SERVOS 3 // Servo index starts with 0 for M280 command + +// Servo Endstops +// +// This allows for servo actuated endstops, primary usage is for the Z Axis to eliminate calibration or bed height changes. +// Use M206 command to correct for switch height offset to actual nozzle height. Store that setting with M500. +// +//#define SERVO_ENDSTOPS {-1, -1, 0} // Servo index for X, Y, Z. Disable with -1 +//#define SERVO_ENDSTOP_ANGLES {0,0, 0,0, 70,0} // X,Y,Z Axis Extend and Retract angles + +#include "Configuration_adv.h" +#include "thermistortables.h" + +#endif //__CONFIGURATION_H diff --git a/Marlin/example_configurations/delta/Configuration_adv.h b/Marlin/example_configurations/delta/Configuration_adv.h new file mode 100644 index 0000000000000000000000000000000000000000..d3c2d1939b85d51c69d723d128000ee9fab0ac69 --- /dev/null +++ b/Marlin/example_configurations/delta/Configuration_adv.h @@ -0,0 +1,401 @@ +#ifndef CONFIGURATION_ADV_H +#define CONFIGURATION_ADV_H + +//=========================================================================== +//=============================Thermal Settings ============================ +//=========================================================================== + +#ifdef BED_LIMIT_SWITCHING + #define BED_HYSTERESIS 2 //only disable heating if T>target+BED_HYSTERESIS and enable heating if T>target-BED_HYSTERESIS +#endif +#define BED_CHECK_INTERVAL 5000 //ms between checks in bang-bang control + +//// Heating sanity check: +// This waits for the watchperiod in milliseconds whenever an M104 or M109 increases the target temperature +// If the temperature has not increased at the end of that period, the target temperature is set to zero. +// It can be reset with another M104/M109. This check is also only triggered if the target temperature and the current temperature +// differ by at least 2x WATCH_TEMP_INCREASE +//#define WATCH_TEMP_PERIOD 40000 //40 seconds +//#define WATCH_TEMP_INCREASE 10 //Heat up at least 10 degree in 20 seconds + +#ifdef PIDTEMP + // this adds an experimental additional term to the heatingpower, proportional to the extrusion speed. + // if Kc is choosen well, the additional required power due to increased melting should be compensated. + #define PID_ADD_EXTRUSION_RATE + #ifdef PID_ADD_EXTRUSION_RATE + #define DEFAULT_Kc (1) //heatingpower=Kc*(e_speed) + #endif +#endif + + +//automatic temperature: The hot end target temperature is calculated by all the buffered lines of gcode. +//The maximum buffered steps/sec of the extruder motor are called "se". +//You enter the autotemp mode by a M109 S T F +// the target temperature is set to mintemp+factor*se[steps/sec] and limited by mintemp and maxtemp +// you exit the value by any M109 without F* +// Also, if the temperature is set to a value 1 && defined TEMP_SENSOR_1_AS_REDUNDANT + #error "You cannot use TEMP_SENSOR_1_AS_REDUNDANT if EXTRUDERS > 1" +#endif + +#if TEMP_SENSOR_0 > 0 + #define THERMISTORHEATER_0 TEMP_SENSOR_0 + #define HEATER_0_USES_THERMISTOR +#endif +#if TEMP_SENSOR_1 > 0 + #define THERMISTORHEATER_1 TEMP_SENSOR_1 + #define HEATER_1_USES_THERMISTOR +#endif +#if TEMP_SENSOR_2 > 0 + #define THERMISTORHEATER_2 TEMP_SENSOR_2 + #define HEATER_2_USES_THERMISTOR +#endif +#if TEMP_SENSOR_BED > 0 + #define THERMISTORBED TEMP_SENSOR_BED + #define BED_USES_THERMISTOR +#endif +#if TEMP_SENSOR_0 == -1 + #define HEATER_0_USES_AD595 +#endif +#if TEMP_SENSOR_1 == -1 + #define HEATER_1_USES_AD595 +#endif +#if TEMP_SENSOR_2 == -1 + #define HEATER_2_USES_AD595 +#endif +#if TEMP_SENSOR_BED == -1 + #define BED_USES_AD595 +#endif +#if TEMP_SENSOR_0 == -2 + #define HEATER_0_USES_MAX6675 +#endif +#if TEMP_SENSOR_0 == 0 + #undef HEATER_0_MINTEMP + #undef HEATER_0_MAXTEMP +#endif +#if TEMP_SENSOR_1 == 0 + #undef HEATER_1_MINTEMP + #undef HEATER_1_MAXTEMP +#endif +#if TEMP_SENSOR_2 == 0 + #undef HEATER_2_MINTEMP + #undef HEATER_2_MAXTEMP +#endif +#if TEMP_SENSOR_BED == 0 + #undef BED_MINTEMP + #undef BED_MAXTEMP +#endif + + +#endif //__CONFIGURATION_ADV_H diff --git a/Marlin/fastio.h b/Marlin/fastio.h index ed77b50e23ef24636050f5c16b4b3666e1cf5bc0..f26a9f845f92df9f8446eaccd9ce61f1220f7e33 100644 --- a/Marlin/fastio.h +++ b/Marlin/fastio.h @@ -1385,7 +1385,101 @@ pins #define DIO69_DDR DDRK #define DIO69_PWM NULL - +#define DIO70_PIN PING4 +#define DIO70_RPORT PING +#define DIO70_WPORT PORTG +#define DIO70_DDR DDRG +#define DIO70_PWM NULL + +#define DIO71_PIN PING3 +#define DIO71_RPORT PING +#define DIO71_WPORT PORTG +#define DIO71_DDR DDRG +#define DIO71_PWM NULL + +#define DIO72_PIN PINJ2 +#define DIO72_RPORT PINJ +#define DIO72_WPORT PORTJ +#define DIO72_DDR DDRJ +#define DIO72_PWM NULL + +#define DIO73_PIN PINJ3 +#define DIO73_RPORT PINJ +#define DIO73_WPORT PORTJ +#define DIO73_DDR DDRJ +#define DIO73_PWM NULL + +#define DIO74_PIN PINJ7 +#define DIO74_RPORT PINJ +#define DIO74_WPORT PORTJ +#define DIO74_DDR DDRJ +#define DIO74_PWM NULL + +#define DIO75_PIN PINJ4 +#define DIO75_RPORT PINJ +#define DIO75_WPORT PORTJ +#define DIO75_DDR DDRJ +#define DIO75_PWM NULL + +#define DIO76_PIN PINJ5 +#define DIO76_RPORT PINJ +#define DIO76_WPORT PORTJ +#define DIO76_DDR DDRJ +#define DIO76_PWM NULL + +#define DIO77_PIN PINJ6 +#define DIO77_RPORT PINJ +#define DIO77_WPORT PORTJ +#define DIO77_DDR DDRJ +#define DIO77_PWM NULL + +#define DIO78_PIN PINE2 +#define DIO78_RPORT PINE +#define DIO78_WPORT PORTE +#define DIO78_DDR DDRE +#define DIO78_PWM NULL + +#define DIO79_PIN PINE6 +#define DIO79_RPORT PINE +#define DIO79_WPORT PORTE +#define DIO79_DDR DDRE +#define DIO79_PWM NULL + +#define DIO80_PIN PINE7 +#define DIO80_RPORT PINE +#define DIO80_WPORT PORTE +#define DIO80_DDR DDRE +#define DIO80_PWM NULL + +#define DIO81_PIN PIND4 +#define DIO81_RPORT PIND +#define DIO81_WPORT PORTD +#define DIO81_DDR DDRD +#define DIO81_PWM NULL + +#define DIO82_PIN PIND5 +#define DIO82_RPORT PIND +#define DIO82_WPORT PORTD +#define DIO82_DDR DDRD +#define DIO82_PWM NULL + +#define DIO83_PIN PIND6 +#define DIO83_RPORT PIND +#define DIO83_WPORT PORTD +#define DIO83_DDR DDRD +#define DIO83_PWM NULL + +#define DIO84_PIN PINH2 +#define DIO84_RPORT PINH +#define DIO84_WPORT PORTH +#define DIO84_DDR DDRH +#define DIO84_PWM NULL + +#define DIO85_PIN PINH7 +#define DIO85_RPORT PINH +#define DIO85_WPORT PORTH +#define DIO85_DDR DDRH +#define DIO85_PWM NULL #undef PA0 #define PA0_PIN PINA0 @@ -2575,8 +2669,702 @@ pins #define PF7_DDR DDRF #endif + +#if defined (__AVR_ATmega1281__) || defined (__AVR_ATmega2561__) +// UART +#define RXD DIO0 +#define TXD DIO1 + +// SPI +#define SCK DIO10 +#define MISO DIO12 +#define MOSI DIO11 +#define SS DIO16 + +// TWI (I2C) +#define SCL DIO17 +#define SDA DIO18 + +// timers and PWM +#define OC0A DIO9 +#define OC0B DIO4 +#define OC1A DIO7 +#define OC1B DIO8 +#define OC2A DIO6 +#define OC3A DIO5 +#define OC3B DIO2 +#define OC3C DIO3 + + +// change for your board +#define DEBUG_LED DIO46 + +/* +pins +*/ +#define DIO0_PIN PINE0 +#define DIO0_RPORT PINE +#define DIO0_WPORT PORTE +#define DIO0_DDR DDRE +#define DIO0_PWM NULL + +#define DIO1_PIN PINE1 +#define DIO1_RPORT PINE +#define DIO1_WPORT PORTE +#define DIO1_DDR DDRE +#define DIO1_PWM NULL + +#define DIO2_PIN PINE4 +#define DIO2_RPORT PINE +#define DIO2_WPORT PORTE +#define DIO2_DDR DDRE +#define DIO2_PWM &OCR3BL + +#define DIO3_PIN PINE5 +#define DIO3_RPORT PINE +#define DIO3_WPORT PORTE +#define DIO3_DDR DDRE +#define DIO3_PWM &OCR3CL + +#define DIO4_PIN PING5 +#define DIO4_RPORT PING +#define DIO4_WPORT PORTG +#define DIO4_DDR DDRG +#define DIO4_PWM &OCR0B + +#define DIO5_PIN PINE3 +#define DIO5_RPORT PINE +#define DIO5_WPORT PORTE +#define DIO5_DDR DDRE +#define DIO5_PWM &OCR3AL + +#define DIO6_PIN PINB4 +#define DIO6_RPORT PINB +#define DIO6_WPORT PORTB +#define DIO6_DDR DDRB +#define DIO6_PWM &OCR2AL + +#define DIO7_PIN PINB5 +#define DIO7_RPORT PINB +#define DIO7_WPORT PORTB +#define DIO7_DDR DDRB +#define DIO7_PWM &OCR1AL + +#define DIO8_PIN PINB6 +#define DIO8_RPORT PINB +#define DIO8_WPORT PORTB +#define DIO8_DDR DDRB +#define DIO8_PWM &OCR1BL + +#define DIO9_PIN PINB7 +#define DIO9_RPORT PINB +#define DIO9_WPORT PORTB +#define DIO9_DDR DDRB +#define DIO9_PWM &OCR0AL + +#define DIO10_PIN PINB1 +#define DIO10_RPORT PINB +#define DIO10_WPORT PORTB +#define DIO10_DDR DDRB +#define DIO10_PWM NULL + +#define DIO11_PIN PINB2 +#define DIO11_RPORT PINB +#define DIO11_WPORT PORTB +#define DIO11_DDR DDRB +#define DIO11_PWM NULL + +#define DIO12_PIN PINB3 +#define DIO12_RPORT PINB +#define DIO12_WPORT PORTB +#define DIO12_DDR DDRB +#define DIO12_PWM NULL + +#define DIO13_PIN PINE2 +#define DIO13_RPORT PINE +#define DIO13_WPORT PORTE +#define DIO13_DDR DDRE +#define DIO13_PWM NULL + +#define DIO14_PIN PINE6 +#define DIO14_RPORT PINE +#define DIO14_WPORT PORTE +#define DIO14_DDR DDRE +#define DIO14_PWM NULL + +#define DIO15_PIN PINE7 +#define DIO15_RPORT PINE +#define DIO15_WPORT PORTE +#define DIO15_DDR DDRE +#define DIO15_PWM NULL + +#define DIO16_PIN PINB0 +#define DIO16_RPORT PINB +#define DIO16_WPORT PORTB +#define DIO16_DDR DDRB +#define DIO16_PWM NULL + +#define DIO17_PIN PIND0 +#define DIO17_RPORT PIND +#define DIO17_WPORT PORTD +#define DIO17_DDR DDRD +#define DIO17_PWM NULL + +#define DIO18_PIN PIND1 +#define DIO18_RPORT PIND +#define DIO18_WPORT PORTD +#define DIO18_DDR DDRD +#define DIO18_PWM NULL + +#define DIO19_PIN PIND2 +#define DIO19_RPORT PIND +#define DIO19_WPORT PORTD +#define DIO19_DDR DDRD +#define DIO19_PWM NULL + +#define DIO20_PIN PIND3 +#define DIO20_RPORT PIND +#define DIO20_WPORT PORTD +#define DIO20_DDR DDRD +#define DIO20_PWM NULL + +#define DIO21_PIN PIND4 +#define DIO21_RPORT PIND +#define DIO21_WPORT PORTD +#define DIO21_DDR DDRD +#define DIO21_PWM NULL + +#define DIO22_PIN PIND5 +#define DIO22_RPORT PIND +#define DIO22_WPORT PORTD +#define DIO22_DDR DDRD +#define DIO22_PWM NULL + +#define DIO23_PIN PIND6 +#define DIO23_RPORT PIND +#define DIO23_WPORT PORTD +#define DIO23_DDR DDRD +#define DIO23_PWM NULL + +#define DIO24_PIN PIND7 +#define DIO24_RPORT PIND +#define DIO24_WPORT PORTD +#define DIO24_DDR DDRD +#define DIO24_PWM NULL + +#define DIO25_PIN PING0 +#define DIO25_RPORT PING +#define DIO25_WPORT PORTG +#define DIO25_DDR DDRG +#define DIO25_PWM NULL + +#define DIO26_PIN PING1 +#define DIO26_RPORT PING +#define DIO26_WPORT PORTG +#define DIO26_DDR DDRG +#define DIO26_PWM NULL + +#define DIO27_PIN PING2 +#define DIO27_RPORT PING +#define DIO27_WPORT PORTG +#define DIO27_DDR DDRG +#define DIO27_PWM NULL + +#define DIO28_PIN PING3 +#define DIO28_RPORT PING +#define DIO28_WPORT PORTG +#define DIO28_DDR DDRG +#define DIO28_PWM NULL + +#define DIO29_PIN PING4 +#define DIO29_RPORT PING +#define DIO29_WPORT PORTG +#define DIO29_DDR DDRG +#define DIO29_PWM NULL + +#define DIO30_PIN PINC0 +#define DIO30_RPORT PINC +#define DIO30_WPORT PORTC +#define DIO30_DDR DDRC +#define DIO30_PWM NULL + +#define DIO31_PIN PINC1 +#define DIO31_RPORT PINC +#define DIO31_WPORT PORTC +#define DIO31_DDR DDRC +#define DIO31_PWM NULL + +#define DIO32_PIN PINC2 +#define DIO32_RPORT PINC +#define DIO32_WPORT PORTC +#define DIO32_DDR DDRC +#define DIO32_PWM NULL + +#define DIO33_PIN PINC3 +#define DIO33_RPORT PINC +#define DIO33_WPORT PORTC +#define DIO33_DDR DDRC +#define DIO33_PWM NULL + +#define DIO34_PIN PINC4 +#define DIO34_RPORT PINC +#define DIO34_WPORT PORTC +#define DIO34_DDR DDRC +#define DIO34_PWM NULL + +#define DIO35_PIN PINC5 +#define DIO35_RPORT PINC +#define DIO35_WPORT PORTC +#define DIO35_DDR DDRC +#define DIO35_PWM NULL + +#define DIO36_PIN PINC6 +#define DIO36_RPORT PINC +#define DIO36_WPORT PORTC +#define DIO36_DDR DDRC +#define DIO36_PWM NULL + +#define DIO37_PIN PINC7 +#define DIO37_RPORT PINC +#define DIO37_WPORT PORTC +#define DIO37_DDR DDRC +#define DIO37_PWM NULL + +#define DIO38_PIN PINA0 +#define DIO38_RPORT PINA +#define DIO38_WPORT PORTA +#define DIO38_DDR DDRA +#define DIO38_PWM NULL + +#define DIO39_PIN PINA1 +#define DIO39_RPORT PINA +#define DIO39_WPORT PORTA +#define DIO39_DDR DDRA +#define DIO39_PWM NULL + +#define DIO40_PIN PINA2 +#define DIO40_RPORT PINA +#define DIO40_WPORT PORTA +#define DIO40_DDR DDRA +#define DIO40_PWM NULL + +#define DIO41_PIN PINA3 +#define DIO41_RPORT PINA +#define DIO41_WPORT PORTA +#define DIO41_DDR DDRA +#define DIO41_PWM NULL + +#define DIO42_PIN PINA4 +#define DIO42_RPORT PINA +#define DIO42_WPORT PORTA +#define DIO42_DDR DDRA +#define DIO42_PWM NULL + +#define DIO43_PIN PINA5 +#define DIO43_RPORT PINA +#define DIO43_WPORT PORTA +#define DIO43_DDR DDRA +#define DIO43_PWM NULL + +#define DIO44_PIN PINA6 +#define DIO44_RPORT PINA +#define DIO44_WPORT PORTA +#define DIO44_DDR DDRA +#define DIO44_PWM NULL + +#define DIO45_PIN PINA7 +#define DIO45_RPORT PINA +#define DIO45_WPORT PORTA +#define DIO45_DDR DDRA +#define DIO45_PWM NULL + +#define DIO46_PIN PINF0 +#define DIO46_RPORT PINF +#define DIO46_WPORT PORTF +#define DIO46_DDR DDRF +#define DIO46_PWM NULL + +#define DIO47_PIN PINF1 +#define DIO47_RPORT PINF +#define DIO47_WPORT PORTF +#define DIO47_DDR DDRF +#define DIO47_PWM NULL + +#define DIO48_PIN PINF2 +#define DIO48_RPORT PINF +#define DIO48_WPORT PORTF +#define DIO48_DDR DDRF +#define DIO48_PWM NULL + +#define DIO49_PIN PINF3 +#define DIO49_RPORT PINF +#define DIO49_WPORT PORTF +#define DIO49_DDR DDRF +#define DIO49_PWM NULL + +#define DIO50_PIN PINF4 +#define DIO50_RPORT PINF +#define DIO50_WPORT PORTF +#define DIO50_DDR DDRF +#define DIO50_PWM NULL + +#define DIO51_PIN PINF5 +#define DIO51_RPORT PINF +#define DIO51_WPORT PORTF +#define DIO51_DDR DDRF +#define DIO51_PWM NULL + +#define DIO52_PIN PINF6 +#define DIO52_RPORT PINF +#define DIO52_WPORT PORTF +#define DIO52_DDR DDRF +#define DIO52_PWM NULL + +#define DIO53_PIN PINF7 +#define DIO53_RPORT PINF +#define DIO53_WPORT PORTF +#define DIO53_DDR DDRF +#define DIO53_PWM NULL + + + + +#undef PA0 +#define PA0_PIN PINA0 +#define PA0_RPORT PINA +#define PA0_WPORT PORTA +#define PA0_DDR DDRA +#define PA0_PWM NULL +#undef PA1 +#define PA1_PIN PINA1 +#define PA1_RPORT PINA +#define PA1_WPORT PORTA +#define PA1_DDR DDRA +#define PA1_PWM NULL +#undef PA2 +#define PA2_PIN PINA2 +#define PA2_RPORT PINA +#define PA2_WPORT PORTA +#define PA2_DDR DDRA +#define PA2_PWM NULL +#undef PA3 +#define PA3_PIN PINA3 +#define PA3_RPORT PINA +#define PA3_WPORT PORTA +#define PA3_DDR DDRA +#define PA3_PWM NULL +#undef PA4 +#define PA4_PIN PINA4 +#define PA4_RPORT PINA +#define PA4_WPORT PORTA +#define PA4_DDR DDRA +#define PA4_PWM NULL +#undef PA5 +#define PA5_PIN PINA5 +#define PA5_RPORT PINA +#define PA5_WPORT PORTA +#define PA5_DDR DDRA +#define PA5_PWM NULL +#undef PA6 +#define PA6_PIN PINA6 +#define PA6_RPORT PINA +#define PA6_WPORT PORTA +#define PA6_DDR DDRA +#define PA6_PWM NULL +#undef PA7 +#define PA7_PIN PINA7 +#define PA7_RPORT PINA +#define PA7_WPORT PORTA +#define PA7_DDR DDRA +#define PA7_PWM NULL + +#undef PB0 +#define PB0_PIN PINB0 +#define PB0_RPORT PINB +#define PB0_WPORT PORTB +#define PB0_DDR DDRB +#define PB0_PWM NULL +#undef PB1 +#define PB1_PIN PINB1 +#define PB1_RPORT PINB +#define PB1_WPORT PORTB +#define PB1_DDR DDRB +#define PB1_PWM NULL +#undef PB2 +#define PB2_PIN PINB2 +#define PB2_RPORT PINB +#define PB2_WPORT PORTB +#define PB2_DDR DDRB +#define PB2_PWM NULL +#undef PB3 +#define PB3_PIN PINB3 +#define PB3_RPORT PINB +#define PB3_WPORT PORTB +#define PB3_DDR DDRB +#define PB3_PWM NULL +#undef PB4 +#define PB4_PIN PINB4 +#define PB4_RPORT PINB +#define PB4_WPORT PORTB +#define PB4_DDR DDRB +#define PB4_PWM &OCR2A +#undef PB5 +#define PB5_PIN PINB5 +#define PB5_RPORT PINB +#define PB5_WPORT PORTB +#define PB5_DDR DDRB +#define PB5_PWM NULL +#undef PB6 +#define PB6_PIN PINB6 +#define PB6_RPORT PINB +#define PB6_WPORT PORTB +#define PB6_DDR DDRB +#define PB6_PWM NULL +#undef PB7 +#define PB7_PIN PINB7 +#define PB7_RPORT PINB +#define PB7_WPORT PORTB +#define PB7_DDR DDRB +#define PB7_PWM &OCR0A + +#undef PC0 +#define PC0_PIN PINC0 +#define PC0_RPORT PINC +#define PC0_WPORT PORTC +#define PC0_DDR DDRC +#define PC0_PWM NULL +#undef PC1 +#define PC1_PIN PINC1 +#define PC1_RPORT PINC +#define PC1_WPORT PORTC +#define PC1_DDR DDRC +#define PC1_PWM NULL +#undef PC2 +#define PC2_PIN PINC2 +#define PC2_RPORT PINC +#define PC2_WPORT PORTC +#define PC2_DDR DDRC +#define PC2_PWM NULL +#undef PC3 +#define PC3_PIN PINC3 +#define PC3_RPORT PINC +#define PC3_WPORT PORTC +#define PC3_DDR DDRC +#define PC3_PWM NULL +#undef PC4 +#define PC4_PIN PINC4 +#define PC4_RPORT PINC +#define PC4_WPORT PORTC +#define PC4_DDR DDRC +#define PC4_PWM NULL +#undef PC5 +#define PC5_PIN PINC5 +#define PC5_RPORT PINC +#define PC5_WPORT PORTC +#define PC5_DDR DDRC +#define PC5_PWM NULL +#undef PC6 +#define PC6_PIN PINC6 +#define PC6_RPORT PINC +#define PC6_WPORT PORTC +#define PC6_DDR DDRC +#define PC6_PWM NULL +#undef PC7 +#define PC7_PIN PINC7 +#define PC7_RPORT PINC +#define PC7_WPORT PORTC +#define PC7_DDR DDRC +#define PC7_PWM NULL + +#undef PD0 +#define PD0_PIN PIND0 +#define PD0_RPORT PIND +#define PD0_WPORT PORTD +#define PD0_DDR DDRD +#define PD0_PWM NULL +#undef PD1 +#define PD1_PIN PIND1 +#define PD1_RPORT PIND +#define PD1_WPORT PORTD +#define PD1_DDR DDRD +#define PD1_PWM NULL +#undef PD2 +#define PD2_PIN PIND2 +#define PD2_RPORT PIND +#define PD2_WPORT PORTD +#define PD2_DDR DDRD +#define PD2_PWM NULL +#undef PD3 +#define PD3_PIN PIND3 +#define PD3_RPORT PIND +#define PD3_WPORT PORTD +#define PD3_DDR DDRD +#define PD3_PWM NULL +#undef PD4 +#define PD4_PIN PIND4 +#define PD4_RPORT PIND +#define PD4_WPORT PORTD +#define PD4_DDR DDRD +#define PD4_PWM NULL +#undef PD5 +#define PD5_PIN PIND5 +#define PD5_RPORT PIND +#define PD5_WPORT PORTD +#define PD5_DDR DDRD +#define PD5_PWM NULL +#undef PD6 +#define PD6_PIN PIND6 +#define PD6_RPORT PIND +#define PD6_WPORT PORTD +#define PD6_DDR DDRD +#define PD6_PWM NULL +#undef PD7 +#define PD7_PIN PIND7 +#define PD7_RPORT PIND +#define PD7_WPORT PORTD +#define PD7_DDR DDRD +#define PD7_PWM NULL + +#undef PE0 +#define PE0_PIN PINE0 +#define PE0_RPORT PINE +#define PE0_WPORT PORTE +#define PE0_DDR DDRE +#define PE0_PWM NULL +#undef PE1 +#define PE1_PIN PINE1 +#define PE1_RPORT PINE +#define PE1_WPORT PORTE +#define PE1_DDR DDRE +#define PE1_PWM NULL +#undef PE2 +#define PE2_PIN PINE2 +#define PE2_RPORT PINE +#define PE2_WPORT PORTE +#define PE2_DDR DDRE +#define PE2_PWM NULL +#undef PE3 +#define PE3_PIN PINE3 +#define PE3_RPORT PINE +#define PE3_WPORT PORTE +#define PE3_DDR DDRE +#define PE3_PWM &OCR3AL +#undef PE4 +#define PE4_PIN PINE4 +#define PE4_RPORT PINE +#define PE4_WPORT PORTE +#define PE4_DDR DDRE +#define PE4_PWM &OCR3BL +#undef PE5 +#define PE5_PIN PINE5 +#define PE5_RPORT PINE +#define PE5_WPORT PORTE +#define PE5_DDR DDRE +#define PE5_PWM &OCR3CL +#undef PE6 +#define PE6_PIN PINE6 +#define PE6_RPORT PINE +#define PE6_WPORT PORTE +#define PE6_DDR DDRE +#define PE6_PWM NULL +#undef PE7 +#define PE7_PIN PINE7 +#define PE7_RPORT PINE +#define PE7_WPORT PORTE +#define PE7_DDR DDRE +#define PE7_PWM NULL + +#undef PF0 +#define PF0_PIN PINF0 +#define PF0_RPORT PINF +#define PF0_WPORT PORTF +#define PF0_DDR DDRF +#define PF0_PWM NULL +#undef PF1 +#define PF1_PIN PINF1 +#define PF1_RPORT PINF +#define PF1_WPORT PORTF +#define PF1_DDR DDRF +#define PF1_PWM NULL +#undef PF2 +#define PF2_PIN PINF2 +#define PF2_RPORT PINF +#define PF2_WPORT PORTF +#define PF2_DDR DDRF +#define PF2_PWM NULL +#undef PF3 +#define PF3_PIN PINF3 +#define PF3_RPORT PINF +#define PF3_WPORT PORTF +#define PF3_DDR DDRF +#define PF3_PWM NULL +#undef PF4 +#define PF4_PIN PINF4 +#define PF4_RPORT PINF +#define PF4_WPORT PORTF +#define PF4_DDR DDRF +#define PF4_PWM NULL +#undef PF5 +#define PF5_PIN PINF5 +#define PF5_RPORT PINF +#define PF5_WPORT PORTF +#define PF5_DDR DDRF +#define PF5_PWM NULL +#undef PF6 +#define PF6_PIN PINF6 +#define PF6_RPORT PINF +#define PF6_WPORT PORTF +#define PF6_DDR DDRF +#define PF6_PWM NULL +#undef PF7 +#define PF7_PIN PINF7 +#define PF7_RPORT PINF +#define PF7_WPORT PORTF +#define PF7_DDR DDRF +#define PF7_PWM NULL + +#undef PG0 +#define PG0_PIN PING0 +#define PG0_RPORT PING +#define PG0_WPORT PORTG +#define PG0_DDR DDRG +#define PG0_PWM NULL +#undef PG1 +#define PG1_PIN PING1 +#define PG1_RPORT PING +#define PG1_WPORT PORTG +#define PG1_DDR DDRG +#define PG1_PWM NULL +#undef PG2 +#define PG2_PIN PING2 +#define PG2_RPORT PING +#define PG2_WPORT PORTG +#define PG2_DDR DDRG +#define PG2_PWM NULL +#undef PG3 +#define PG3_PIN PING3 +#define PG3_RPORT PING +#define PG3_WPORT PORTG +#define PG3_DDR DDRG +#define PG3_PWM NULL +#undef PG4 +#define PG4_PIN PING4 +#define PG4_RPORT PING +#define PG4_WPORT PORTG +#define PG4_DDR DDRG +#define PG4_PWM NULL +#undef PG5 +#define PG5_PIN PING5 +#define PG5_RPORT PING +#define PG5_WPORT PORTG +#define PG5_DDR DDRG +#define PG5_PWM &OCR0B + + +#endif + #ifndef DIO0_PIN #error pins for this chip not defined in arduino.h! If you write an appropriate pin definition and have this firmware work on your chip, please submit a pull request #endif -#endif /* _FASTIO_ARDUINO_H */ +#endif /* _FASTIO_ARDUINO_H */ diff --git a/Marlin/language.h b/Marlin/language.h index bc1afba5780d76800f58c55ae7d5d90a9681c6c1..443c2745fcf922c2d74315072663c557d736485a 100644 --- a/Marlin/language.h +++ b/Marlin/language.h @@ -9,7 +9,7 @@ // Languages // 1 English // 2 Polish -// 3 French (awaiting translation!) +// 3 French // 4 German // 5 Spanish // 6 Russian @@ -26,11 +26,26 @@ #if MOTHERBOARD == 7 || MOTHERBOARD == 71 #define MACHINE_NAME "Ultimaker" #define FIRMWARE_URL "http://firmware.ultimaker.com" +#elif MOTHERBOARD == 80 + #define MACHINE_NAME "Rumba" + #define FIRMWARE_URL "https://github.com/ErikZalm/Marlin/" +#elif MOTHERBOARD == 77 + #define MACHINE_NAME "3Drag" + #define FIRMWARE_URL "http://3dprint.elettronicain.it/" #else - #define MACHINE_NAME "Mendel" + #ifdef CUSTOM_MENDEL_NAME + #define MACHINE_NAME CUSTOM_MENDEL_NAME + #else + #define MACHINE_NAME "Mendel" + #endif + #define FIRMWARE_URL "http://www.mendel-parts.com" #endif +#ifndef MACHINE_UUID + #define MACHINE_UUID "00000000-0000-0000-0000-000000000000" +#endif + #define STRINGIFY_(n) #n #define STRINGIFY(n) STRINGIFY_(n) @@ -50,6 +65,8 @@ #define MSG_PREHEAT_ABS "Preheat ABS" #define MSG_PREHEAT_ABS_SETTINGS "Preheat ABS Conf" #define MSG_COOLDOWN "Cooldown" + #define MSG_SWITCH_PS_ON "Switch Power On" + #define MSG_SWITCH_PS_OFF "Switch Power Off" #define MSG_EXTRUDE "Extrude" #define MSG_RETRACT "Retract" #define MSG_MOVE_AXIS "Move Axis" @@ -73,9 +90,9 @@ #define MSG_PID_D "PID-D" #define MSG_PID_C "PID-C" #define MSG_ACC "Accel" - #define MSG_VXY_JERK "Vxy jerk" - #define MSG_VZ_JERK "Vz jerk" - #define MSG_VE_JERK "Ve jerk" + #define MSG_VXY_JERK "Vxy-jerk" + #define MSG_VZ_JERK "Vz-jerk" + #define MSG_VE_JERK "Ve-jerk" #define MSG_VMAX "Vmax " #define MSG_X "x" #define MSG_Y "y" @@ -92,17 +109,18 @@ #define MSG_RECTRACT "Rectract" #define MSG_TEMPERATURE "Temperature" #define MSG_MOTION "Motion" + #define MSG_CONTRAST "LCD contrast" #define MSG_STORE_EPROM "Store memory" #define MSG_LOAD_EPROM "Load memory" #define MSG_RESTORE_FAILSAFE "Restore Failsafe" #define MSG_REFRESH "Refresh" - #define MSG_WATCH "Watch" + #define MSG_WATCH "Info screen" #define MSG_PREPARE "Prepare" #define MSG_TUNE "Tune" #define MSG_PAUSE_PRINT "Pause Print" #define MSG_RESUME_PRINT "Resume Print" #define MSG_STOP_PRINT "Stop Print" - #define MSG_CARD_MENU "Card Menu" + #define MSG_CARD_MENU "Print from SD" #define MSG_NO_CARD "No Card" #define MSG_DWELL "Sleep..." #define MSG_USERWAIT "Wait for user..." @@ -151,7 +169,7 @@ #define MSG_HEATING_COMPLETE "Heating done." #define MSG_BED_HEATING "Bed Heating." #define MSG_BED_DONE "Bed done." - #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) "\n" + #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n" #define MSG_COUNT_X " Count X: " #define MSG_ERR_KILLED "Printer halted. kill() called!" #define MSG_ERR_STOPPED "Printer stopped due to errors. Fix the error and use M999 to restart. (Temperature is reset. Set it after restarting)" @@ -186,7 +204,7 @@ #define MSG_SD_ERR_WRITE_TO_FILE "error writing to file" #define MSG_SD_CANT_ENTER_SUBDIR "Cannot enter subdir: " - #define MSG_STEPPER_TO_HIGH "Steprate to high: " + #define MSG_STEPPER_TOO_HIGH "Steprate too high: " #define MSG_ENDSTOPS_HIT "endstops hit: " #define MSG_ERR_COLD_EXTRUDE_STOP " cold extrusion prevented" #define MSG_ERR_LONG_EXTRUDE_STOP " too long extrusion prevented" @@ -210,6 +228,8 @@ #define MSG_PREHEAT_ABS "Rozgrzej ABS" #define MSG_PREHEAT_ABS_SETTINGS "Ustawienia roz. ABS" #define MSG_COOLDOWN "Chlodzenie" + #define MSG_SWITCH_PS_ON "Switch Power On" + #define MSG_SWITCH_PS_OFF "Switch Power Off" #define MSG_EXTRUDE "Ekstruzja" #define MSG_RETRACT "Cofanie" #define MSG_MOVE_AXIS "Ruch osi" @@ -251,6 +271,7 @@ #define MSG_RECTRACT "Wycofanie" #define MSG_TEMPERATURE "Temperatura" #define MSG_MOTION "Ruch" + #define MSG_CONTRAST "LCD contrast" #define MSG_STORE_EPROM "Zapisz w pamieci" #define MSG_LOAD_EPROM "Wczytaj z pamieci" #define MSG_RESTORE_FAILSAFE " Ustawienia fabryczne" @@ -279,6 +300,8 @@ #define MSG_CONTROL_RETRACT_RECOVERF "Cof. wycof. F" #define MSG_AUTORETRACT "Auto. wycofanie" #define MSG_FILAMENTCHANGE "Change filament" + #define MSG_INIT_SDCARD "Init. SD-Card" + #define MSG_CNG_SDCARD "Change SD-Card" // Serial Console Messages @@ -311,7 +334,7 @@ #define MSG_HEATING_COMPLETE "Nagrzewanie ekstrudera zakonczone." #define MSG_BED_HEATING "Nagrzewanie loza..." #define MSG_BED_DONE "Nagrzewanie loza zakonczone." - #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) "\n" + #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n" #define MSG_COUNT_X " Liczenie X: " #define MSG_ERR_KILLED "Drukarka zatrzymana. Wywolano kill()" #define MSG_ERR_STOPPED "Drukarka zatrzymana z powodu bledu. Usun problem i zrestartuj drukartke komenda M999. (temperatura zostala zresetowana; ustaw temperature po restarcie)" @@ -346,7 +369,7 @@ #define MSG_SD_ERR_WRITE_TO_FILE "blad podczas zapisu do pliku" #define MSG_SD_CANT_ENTER_SUBDIR "Nie mozna odczytac podkatalogu: " - #define MSG_STEPPER_TO_HIGH "Za duza czestotliwosc krokow: " + #define MSG_STEPPER_TOO_HIGH "Za duza czestotliwosc krokow: " #define MSG_ENDSTOPS_HIT "Wylacznik krancowy zostal wyzwolony na pozycji: " #define MSG_ERR_COLD_EXTRUDE_STOP " uniemozliwiono zimna ekstruzje" #define MSG_ERR_LONG_EXTRUDE_STOP " uniemozliwiono zbyt dluga ekstruzje" @@ -356,164 +379,164 @@ #if LANGUAGE_CHOICE == 3 -#define WELCOME_MSG MACHINE_NAME " Pret." -#define MSG_SD_INSERTED "Carte inseree" -#define MSG_SD_REMOVED "Carte retiree" -#define MSG_MAIN " Principal \003" -#define MSG_AUTOSTART " Demarrage auto." -#define MSG_DISABLE_STEPPERS " Desactiver moteurs" -#define MSG_AUTO_HOME " Home auto." -#define MSG_SET_ORIGIN " Regler origine" -#define MSG_PREHEAT_PLA " Prechauffage PLA" -#define MSG_PREHEAT_PLA_SETTINGS " Regl. prechauffe PLA" -#define MSG_PREHEAT_ABS " Prechauffage ABS" -#define MSG_PREHEAT_ABS_SETTINGS " Regl. prechauffe ABS" -#define MSG_COOLDOWN " Refroidissement" -#define MSG_EXTRUDE " Extrusion" -#define MSG_RETRACT " Retractation" -#define MSG_PREHEAT_PLA " Prechauffage PLA" -#define MSG_PREHEAT_ABS " Prechauffage ABS" -#define MSG_MOVE_AXIS " Deplacer axe \x7E" -#define MSG_SPEED " Vitesse:" -#define MSG_NOZZLE " \002Buse:" -#define MSG_NOZZLE1 " \002Buse2:" -#define MSG_NOZZLE2 " \002Buse3:" -#define MSG_BED " \002Lit:" -#define MSG_FAN_SPEED " Vitesse ventilateur:" -#define MSG_FLOW " Flux:" -#define MSG_CONTROL " Controle \003" -#define MSG_MIN " \002 Min:" -#define MSG_MAX " \002 Max:" -#define MSG_FACTOR " \002 Facteur:" -#define MSG_AUTOTEMP " Temp. Auto.:" -#define MSG_ON "Marche " -#define MSG_OFF "Arret" -#define MSG_PID_P " PID-P: " -#define MSG_PID_I " PID-I: " -#define MSG_PID_D " PID-D: " -#define MSG_PID_C " PID-C: " -#define MSG_ACC " Acc:" -#define MSG_VXY_JERK " Vxy-jerk: " -#define MSG_VZ_JERK " Vz-jerk: " -#define MSG_VE_JERK " Ve-jerk: " -#define MSG_VMAX " Vmax " -#define MSG_X "x:" -#define MSG_Y "y:" -#define MSG_Z "z:" -#define MSG_E "e:" -#define MSG_VMIN " Vmin:" -#define MSG_VTRAV_MIN " Vdepl min:" -#define MSG_AMAX " Amax " -#define MSG_A_RETRACT " A-retract:" -#define MSG_XSTEPS " Xpas/mm:" -#define MSG_YSTEPS " Ypas/mm:" -#define MSG_ZSTEPS " Zpas/mm:" -#define MSG_ESTEPS " Epas/mm:" -#define MSG_MAIN_WIDE " Principal \003" -#define MSG_RECTRACT_WIDE " Rectractater \x7E" -#define MSG_TEMPERATURE_WIDE " Temperature \x7E" -#define MSG_TEMPERATURE_RTN " Temperature \003" -#define MSG_MOTION_WIDE " Mouvement \x7E" -#define MSG_STORE_EPROM " Sauvegarder memoire" -#define MSG_LOAD_EPROM " Lire memoire" -#define MSG_RESTORE_FAILSAFE " Restaurer memoire" -#define MSG_REFRESH "\004Actualiser" -#define MSG_WATCH " Surveiller \003" -#define MSG_PREPARE " Preparer \x7E" -#define MSG_PREPARE_ALT " Prepare \003" -#define MSG_CONTROL_ARROW " Controle \x7E" -#define MSG_RETRACT_ARROW " Retracter \x7E" -#define MSG_TUNE " Regler \x7E" -#define MSG_PAUSE_PRINT " Pause impression \x7E" -#define MSG_RESUME_PRINT " Reprendre impression \x7E" -#define MSG_STOP_PRINT " Arreter impression \x7E" -#define MSG_CARD_MENU " Menu carte \x7E" -#define MSG_NO_CARD " Pas de carte" -#define MSG_DWELL "Repos..." -#define MSG_USERWAIT "Attente de l'utilisateur..." -#define MSG_NO_MOVE "Aucun mouvement." -#define MSG_PART_RELEASE "Relache partielle" -#define MSG_KILLED "TUE." -#define MSG_STOPPED "STOPPE." -#define MSG_STEPPER_RELEASED "RELACHE." -#define MSG_CONTROL_RETRACT " Retractation mm:" -#define MSG_CONTROL_RETRACTF " Retractation F:" -#define MSG_CONTROL_RETRACT_ZLIFT " Hop mm:" -#define MSG_CONTROL_RETRACT_RECOVER " UnRet +mm:" -#define MSG_CONTROL_RETRACT_RECOVERF " UnRet F:" -#define MSG_AUTORETRACT " Retract. Auto.:" -#define MSG_FILAMENTCHANGE "Change filament" + #define WELCOME_MSG MACHINE_NAME " prete." + #define MSG_SD_INSERTED "Carte inseree" + #define MSG_SD_REMOVED "Carte retiree" + #define MSG_MAIN "Menu principal" + #define MSG_AUTOSTART "Demarrage auto" + #define MSG_DISABLE_STEPPERS "Arreter moteurs" + #define MSG_AUTO_HOME "Home auto." + #define MSG_SET_ORIGIN "Regler origine" + #define MSG_PREHEAT_PLA " Prechauffage PLA" + #define MSG_PREHEAT_PLA_SETTINGS " Regl. prechauffe PLA" + #define MSG_PREHEAT_ABS "Prechauffage ABS" + #define MSG_PREHEAT_ABS_SETTINGS "Regl. prechauffe ABS" + #define MSG_COOLDOWN "Refroidir" + #define MSG_SWITCH_PS_ON "Allumer alim." + #define MSG_SWITCH_PS_OFF "Eteindre alim." + #define MSG_EXTRUDE "Extrusion" + #define MSG_RETRACT "Retraction" + #define MSG_PREHEAT_PLA "Prechauffage PLA" + #define MSG_PREHEAT_ABS "Prechauffage ABS" + #define MSG_MOVE_AXIS "Deplacer un axe" + #define MSG_SPEED " Vitesse" + #define MSG_NOZZLE "Buse" + #define MSG_NOZZLE1 "Buse2" + #define MSG_NOZZLE2 "Buse3" + #define MSG_BED "Plateau" + #define MSG_FAN_SPEED "Vitesse ventilateur" + #define MSG_FLOW "Flux" + #define MSG_CONTROL "Controler" + #define MSG_MIN " \002 Min" + #define MSG_MAX " \002 Max" + #define MSG_FACTOR " \002 Facteur" + #define MSG_AUTOTEMP "Temp. Auto." + #define MSG_ON "Marche " + #define MSG_OFF "Arret" + #define MSG_PID_P "PID-P" + #define MSG_PID_I "PID-I" + #define MSG_PID_D "PID-D" + #define MSG_PID_C "PID-C" + #define MSG_ACC "Accel" + #define MSG_VXY_JERK "Vxy-jerk" + #define MSG_VZ_JERK "Vz-jerk" + #define MSG_VE_JERK "Ve-jerk" + #define MSG_VMAX "Vmax" + #define MSG_X "x" + #define MSG_Y "y" + #define MSG_Z "z" + #define MSG_E "e" + #define MSG_VMIN "Vmin" + #define MSG_VTRAV_MIN "Vdepl min" + #define MSG_AMAX "Amax " + #define MSG_A_RETRACT "A-retract" + #define MSG_XSTEPS "Xpas/mm" + #define MSG_YSTEPS "Ypas/mm" + #define MSG_ZSTEPS "Zpas/mm" + #define MSG_ESTEPS "Epas/mm" + #define MSG_TEMPERATURE "Temperature" + #define MSG_MOTION "Mouvement" + #define MSG_CONTRAST "Contraste LCD" + #define MSG_STORE_EPROM "Sauver config" + #define MSG_LOAD_EPROM "Lire config" + #define MSG_RESTORE_FAILSAFE "Restaurer defauts" + #define MSG_REFRESH "Actualiser" + #define MSG_WATCH "Surveiller" + #define MSG_PREPARE "Preparer" + #define MSG_TUNE "Regler" + #define MSG_PAUSE_PRINT "Interrompre impr." + #define MSG_RESUME_PRINT "Reprendre impr." + #define MSG_STOP_PRINT "Arreter impr." + #define MSG_CARD_MENU "Impr. depuis SD" + #define MSG_NO_CARD "Pas de carte" + #define MSG_DWELL "Repos..." + #define MSG_USERWAIT "Attente de l'utilisateur..." + #define MSG_RESUMING "Reprise de l'impression" + #define MSG_NO_MOVE "Aucun mouvement." + #define MSG_PART_RELEASE "Relache partielle" + #define MSG_KILLED "MORT." + #define MSG_STOPPED "STOPPE." + #define MSG_STEPPER_RELEASED "RELACHE." + #define MSG_CONTROL_RETRACT "Retraction mm" + #define MSG_CONTROL_RETRACTF "Retraction F" + #define MSG_CONTROL_RETRACT_ZLIFT "Hop mm" + #define MSG_CONTROL_RETRACT_RECOVER "UnRet +mm" + #define MSG_CONTROL_RETRACT_RECOVERF "UnRet F" + #define MSG_AUTORETRACT "Retract. Auto." + #define MSG_FILAMENTCHANGE "Changer filament" + #define MSG_INIT_SDCARD "Init. la carte SD" + #define MSG_CNG_SDCARD "Changer de carte SD" // Serial Console Messages -#define MSG_Enqueing "Mise en tampon \"" -#define MSG_POWERUP "Allumage" -#define MSG_EXTERNAL_RESET " RAZ Externe" -#define MSG_BROWNOUT_RESET " RAZ defaut alim." -#define MSG_WATCHDOG_RESET " RAZ Watchdog" -#define MSG_SOFTWARE_RESET " RAZ logicielle" -#define MSG_MARLIN "Marlin " -#define MSG_AUTHOR " | Auteur: " -#define MSG_CONFIGURATION_VER " Derniere MaJ: " -#define MSG_FREE_MEMORY " Memoire libre: " -#define MSG_PLANNER_BUFFER_BYTES " PlannerBufferBytes: " -#define MSG_OK "ok" -#define MSG_FILE_SAVED "Fichier enregistre." -#define MSG_ERR_LINE_NO "Le numero de ligne n'est pas la derniere ligne + 1, derniere ligne: " -#define MSG_ERR_CHECKSUM_MISMATCH "Erreur somme de controle, derniere ligne: " -#define MSG_ERR_NO_CHECKSUM "Pas de somme de controle avec le numero de ligne, derniere ligne: " -#define MSG_ERR_NO_LINENUMBER_WITH_CHECKSUM "Pas de numero de ligne avec somme de controle, derniere ligne: " -#define MSG_FILE_PRINTED "Impression terminee" -#define MSG_BEGIN_FILE_LIST "Debut de la liste de fichiers" -#define MSG_END_FILE_LIST "Fin de la liste de fichiers" -#define MSG_M104_INVALID_EXTRUDER "M104 Extruder invalide" -#define MSG_M105_INVALID_EXTRUDER "M105 Extruder invalide" -#define MSG_M218_INVALID_EXTRUDER "M218 Extruder invalide" -#define MSG_ERR_NO_THERMISTORS "Pas de thermistor, pas de temperature" -#define MSG_M109_INVALID_EXTRUDER "M109 Extruder invalide " -#define MSG_HEATING "En chauffe..." -#define MSG_HEATING_COMPLETE "Chauffe terminee." -#define MSG_BED_HEATING "Chauffe du lit." -#define MSG_BED_DONE "Chauffe du lit terminee." -#define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) "\n" -#define MSG_COUNT_X " Compteur X: " -#define MSG_ERR_KILLED "Impression arretee. kill() appelee!" -#define MSG_ERR_STOPPED "Impression arretee a cause d'erreurs. Corriger les erreurs et utiliser M999 pour la reprendre. (Temperature remise a zero. Reactivez la apres redemarrage)" -#define MSG_RESEND "Renvoie: " -#define MSG_UNKNOWN_COMMAND "Commande inconnue: \"" -#define MSG_ACTIVE_EXTRUDER "Extrudeur actif: " -#define MSG_INVALID_EXTRUDER "Extrudeur invalide" -#define MSG_X_MIN "x_min: " -#define MSG_X_MAX "x_max: " -#define MSG_Y_MIN "y_min: " -#define MSG_Y_MAX "y_max: " -#define MSG_Z_MIN "z_min: " -#define MSG_Z_MAX "z_max: " -#define MSG_M119_REPORT "Affichage du status des fin de course" -#define MSG_ENDSTOP_HIT "DECLENCHE" -#define MSG_ENDSTOP_OPEN "OUVERT" -#define MSG_HOTEND_OFFSET "Hotend offsets:" - -#define MSG_SD_CANT_OPEN_SUBDIR "Impossible d'ouvrir le sous-repertoire" -#define MSG_SD_INIT_FAIL "Echec de l'initialisation de la SD" -#define MSG_SD_VOL_INIT_FAIL "Echec de volume.init" -#define MSG_SD_OPENROOT_FAIL "Echec openRoot" -#define MSG_SD_CARD_OK "Carte SD Ok" -#define MSG_SD_WORKDIR_FAIL "Echec d'ouverture workDir" -#define MSG_SD_OPEN_FILE_FAIL "Echec d'ouverture, Fichier: " -#define MSG_SD_FILE_OPENED "Fichier ouvert: " -#define MSG_SD_SIZE " Taille: " -#define MSG_SD_FILE_SELECTED "Fichier selectionne" -#define MSG_SD_WRITE_TO_FILE "Ecriture dans le fichier: " -#define MSG_SD_PRINTING_BYTE "Octet impression SD " -#define MSG_SD_NOT_PRINTING "Pas d'impression SD" -#define MSG_SD_ERR_WRITE_TO_FILE "Erreur d'ecriture dans le fichier" -#define MSG_SD_CANT_ENTER_SUBDIR "Impossible d'entrer dans le sous-repertoire: " - -#define MSG_STEPPER_TO_HIGH "Steprate trop eleve: " -#define MSG_ENDSTOPS_HIT "Fin de course atteint: " -#define MSG_ERR_COLD_EXTRUDE_STOP " Extrusion a froid evitee" -#define MSG_ERR_LONG_EXTRUDE_STOP " Extrusion longue evitee" + #define MSG_Enqueing "Mise en tampon \"" + #define MSG_POWERUP "Allumage" + #define MSG_EXTERNAL_RESET " RAZ Externe" + #define MSG_BROWNOUT_RESET " RAZ defaut alim." + #define MSG_WATCHDOG_RESET " RAZ Watchdog" + #define MSG_SOFTWARE_RESET " RAZ logicielle" + #define MSG_MARLIN "Marlin " + #define MSG_AUTHOR " | Auteur: " + #define MSG_CONFIGURATION_VER " Derniere MaJ: " + #define MSG_FREE_MEMORY " Memoire libre: " + #define MSG_PLANNER_BUFFER_BYTES " PlannerBufferBytes: " + #define MSG_OK "ok" + #define MSG_FILE_SAVED "Fichier enregistre." + #define MSG_ERR_LINE_NO "Le numero de ligne n'est pas la derniere ligne + 1, derniere ligne: " + #define MSG_ERR_CHECKSUM_MISMATCH "Erreur somme de controle, derniere ligne: " + #define MSG_ERR_NO_CHECKSUM "Pas de somme de controle avec le numero de ligne, derniere ligne: " + #define MSG_ERR_NO_LINENUMBER_WITH_CHECKSUM "Pas de numero de ligne avec somme de controle, derniere ligne: " + #define MSG_FILE_PRINTED "Impression terminee" + #define MSG_BEGIN_FILE_LIST "Debut de la liste de fichiers" + #define MSG_END_FILE_LIST "Fin de la liste de fichiers" + #define MSG_M104_INVALID_EXTRUDER "M104 Extruder invalide" + #define MSG_M105_INVALID_EXTRUDER "M105 Extruder invalide" + #define MSG_M218_INVALID_EXTRUDER "M218 Extruder invalide" + #define MSG_ERR_NO_THERMISTORS "Pas de thermistor, pas de temperature" + #define MSG_M109_INVALID_EXTRUDER "M109 Extruder invalide " + #define MSG_HEATING "En chauffe..." + #define MSG_HEATING_COMPLETE "Chauffe terminee." + #define MSG_BED_HEATING "Chauffe du lit." + #define MSG_BED_DONE "Chauffe du lit terminee." + #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n" + #define MSG_COUNT_X " Compteur X: " + #define MSG_ERR_KILLED "Impression arretee. kill() appelee!" + #define MSG_ERR_STOPPED "Impression arretee a cause d'erreurs. Corriger les erreurs et utiliser M999 pour la reprendre. (Temperature remise a zero. Reactivez la apres redemarrage)" + #define MSG_RESEND "Renvoie: " + #define MSG_UNKNOWN_COMMAND "Commande inconnue: \"" + #define MSG_ACTIVE_EXTRUDER "Extrudeur actif: " + #define MSG_INVALID_EXTRUDER "Extrudeur invalide" + #define MSG_X_MIN "x_min: " + #define MSG_X_MAX "x_max: " + #define MSG_Y_MIN "y_min: " + #define MSG_Y_MAX "y_max: " + #define MSG_Z_MIN "z_min: " + #define MSG_Z_MAX "z_max: " + #define MSG_M119_REPORT "Affichage du status des fin de course" + #define MSG_ENDSTOP_HIT "DECLENCHE" + #define MSG_ENDSTOP_OPEN "OUVERT" + #define MSG_HOTEND_OFFSET "Hotend offsets:" + + #define MSG_SD_CANT_OPEN_SUBDIR "Impossible d'ouvrir le sous-repertoire" + #define MSG_SD_INIT_FAIL "Echec de l'initialisation de la SD" + #define MSG_SD_VOL_INIT_FAIL "Echec de volume.init" + #define MSG_SD_OPENROOT_FAIL "Echec openRoot" + #define MSG_SD_CARD_OK "Carte SD Ok" + #define MSG_SD_WORKDIR_FAIL "Echec d'ouverture workDir" + #define MSG_SD_OPEN_FILE_FAIL "Echec d'ouverture, Fichier: " + #define MSG_SD_FILE_OPENED "Fichier ouvert: " + #define MSG_SD_SIZE " Taille: " + #define MSG_SD_FILE_SELECTED "Fichier selectionne" + #define MSG_SD_WRITE_TO_FILE "Ecriture dans le fichier: " + #define MSG_SD_PRINTING_BYTE "Octet impression SD " + #define MSG_SD_NOT_PRINTING "Pas d'impression SD" + #define MSG_SD_ERR_WRITE_TO_FILE "Erreur d'ecriture dans le fichier" + #define MSG_SD_CANT_ENTER_SUBDIR "Impossible d'entrer dans le sous-repertoire: " + + #define MSG_STEPPER_TOO_HIGH "Steprate trop eleve: " + #define MSG_ENDSTOPS_HIT "Fin de course atteint: " + #define MSG_ERR_COLD_EXTRUDE_STOP " Extrusion a froid evitee" + #define MSG_ERR_LONG_EXTRUDE_STOP " Extrusion longue evitee" #endif @@ -526,7 +549,7 @@ #define MSG_SD_INSERTED "SDKarte erkannt" #define MSG_SD_REMOVED "SDKarte entfernt" - #define MSG_MAIN "Hauptmneü" + #define MSG_MAIN "Hauptmenü" #define MSG_AUTOSTART "Autostart" #define MSG_DISABLE_STEPPERS "Stepper abschalten" #define MSG_AUTO_HOME "Auto Nullpunkt" @@ -536,6 +559,8 @@ #define MSG_PREHEAT_ABS "Vorwärmen ABS" #define MSG_PREHEAT_ABS_SETTINGS "Vorwärmen ABS Einstellungen" #define MSG_COOLDOWN "Abkühlen" + #define MSG_SWITCH_PS_ON "Switch Power On" + #define MSG_SWITCH_PS_OFF "Switch Power Off" #define MSG_EXTRUDE "Extrude" #define MSG_RETRACT "Retract" #define MSG_MOVE_AXIS "Achsen bewegen" @@ -545,7 +570,7 @@ #define MSG_NOZZLE2 "Düse3" #define MSG_BED "Bett" #define MSG_FAN_SPEED "Lüftergeschw." - #define MSG_FLOW "Fluß" + #define MSG_FLOW "Fluss" #define MSG_CONTROL "Einstellungen" #define MSG_MIN "\002 Min" #define MSG_MAX "\002 Max" @@ -559,8 +584,8 @@ #define MSG_PID_C "PID-C" #define MSG_ACC "Acc" #define MSG_VXY_JERK "Vxy-jerk" - #define MSG_VZ_JERK "Vz-jerk" - #define MSG_VE_JERK "Ve-jerk" + #define MSG_VZ_JERK "Vz-jerk" + #define MSG_VE_JERK "Ve-jerk" #define MSG_VMAX "Vmax " #define MSG_X "x" #define MSG_Y "y" @@ -578,6 +603,7 @@ #define MSG_WATCH "Beobachten" #define MSG_TEMPERATURE "Temperatur" #define MSG_MOTION "Bewegung" + #define MSG_CONTRAST "LCD contrast" #define MSG_STORE_EPROM "EPROM speichern" #define MSG_LOAD_EPROM "EPROM laden" #define MSG_RESTORE_FAILSAFE "Standardkonfig." @@ -592,19 +618,21 @@ #define MSG_NO_CARD "Keine SDKarte" #define MSG_DWELL "Warten..." #define MSG_USERWAIT "Warte auf Nutzer..." - #define MSG_RESUMING "Druck fortsetzung" + #define MSG_RESUMING "Druck fortsetzung" #define MSG_NO_MOVE "Kein Zug." #define MSG_PART_RELEASE "Stepper tlw frei" #define MSG_KILLED "KILLED" #define MSG_STOPPED "GESTOPPT" #define MSG_STEPPER_RELEASED "Stepper frei" - #define MSG_CONTROL_RETRACT "Retract mm" - #define MSG_CONTROL_RETRACTF "Retract F" - #define MSG_CONTROL_RETRACT_ZLIFT "Hop mm" - #define MSG_CONTROL_RETRACT_RECOVER "UnRet +mm" - #define MSG_CONTROL_RETRACT_RECOVERF "UnRet F" - #define MSG_AUTORETRACT "AutoRetr." - #define MSG_FILAMENTCHANGE "Filament wechseln" + #define MSG_CONTROL_RETRACT "Retract mm" + #define MSG_CONTROL_RETRACTF "Retract F" + #define MSG_CONTROL_RETRACT_ZLIFT "Hop mm" + #define MSG_CONTROL_RETRACT_RECOVER "UnRet +mm" + #define MSG_CONTROL_RETRACT_RECOVERF "UnRet F" + #define MSG_AUTORETRACT "AutoRetr." + #define MSG_FILAMENTCHANGE "Filament wechseln" + #define MSG_INIT_SDCARD "Init. SD-Card" + #define MSG_CNG_SDCARD "Change SD-Card" // Serial Console Messages @@ -637,7 +665,7 @@ #define MSG_HEATING_COMPLETE "Heating done." #define MSG_BED_HEATING "Bed Heating." #define MSG_BED_DONE "Bed done." - #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) "\n" + #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n" #define MSG_COUNT_X " Count X:" #define MSG_ERR_KILLED "Printer halted. kill() called !!" #define MSG_ERR_STOPPED "Printer stopped due to errors. Fix the error and use M999 to restart!" @@ -672,7 +700,7 @@ #define MSG_SD_ERR_WRITE_TO_FILE "error writing to file" #define MSG_SD_CANT_ENTER_SUBDIR "Cannot enter subdir:" - #define MSG_STEPPER_TO_HIGH "Steprate to high : " + #define MSG_STEPPER_TOO_HIGH "Steprate too high : " #define MSG_ENDSTOPS_HIT "endstops hit: " #define MSG_ERR_COLD_EXTRUDE_STOP " cold extrusion prevented" #define MSG_ERR_LONG_EXTRUDE_STOP " too long extrusion prevented" @@ -683,314 +711,329 @@ #if LANGUAGE_CHOICE == 5 // LCD Menu Messages -#define WELCOME_MSG MACHINE_NAME " Lista." -#define MSG_SD_INSERTED "Tarjeta SD Colocada" -#define MSG_SD_REMOVED "Tarjeta SD Retirada" -#define MSG_MAIN " Menu Principal \003" -#define MSG_AUTOSTART " Autostart" -#define MSG_DISABLE_STEPPERS " Apagar Motores" -#define MSG_AUTO_HOME " Llevar Ejes al Cero" -#define MSG_SET_ORIGIN " Establecer Cero" -#define MSG_COOLDOWN " Enfriar" -#define MSG_EXTRUDE " Extruir" -#define MSG_RETRACT " Retraer" -#define MSG_PREHEAT_PLA " Precalentar PLA" -#define MSG_PREHEAT_PLA_SETTINGS " Ajustar temp. PLA" -#define MSG_PREHEAT_ABS " Precalentar ABS" -#define MSG_PREHEAT_ABS_SETTINGS " Ajustar temp. ABS" -#define MSG_MOVE_AXIS " Mover Ejes \x7E" -#define MSG_SPEED " Velocidad:" -#define MSG_NOZZLE " \002Nozzle:" -#define MSG_NOZZLE1 " \002Nozzle2:" -#define MSG_NOZZLE2 " \002Nozzle3:" -#define MSG_BED " \002Base:" -#define MSG_FAN_SPEED " Ventilador:" -#define MSG_FLOW " Flujo:" -#define MSG_CONTROL " Control \003" -#define MSG_MIN " \002 Min:" -#define MSG_MAX " \002 Max:" -#define MSG_FACTOR " \002 Fact:" -#define MSG_AUTOTEMP " Autotemp:" -#define MSG_ON "On " -#define MSG_OFF "Off" -#define MSG_PID_P " PID-P: " -#define MSG_PID_I " PID-I: " -#define MSG_PID_D " PID-D: " -#define MSG_PID_C " PID-C: " -#define MSG_ACC " Acc:" -#define MSG_VXY_JERK " Vxy-jerk: " -#define MSG_VZ_JERK " Vz-jerk: " -#define MSG_VE_JERK " Ve-jerk: " -#define MSG_VMAX " Vmax " -#define MSG_X "x:" -#define MSG_Y "y:" -#define MSG_Z "z:" -#define MSG_E "e:" -#define MSG_VMIN " Vmin:" -#define MSG_VTRAV_MIN " VTrav min:" -#define MSG_AMAX " Amax " -#define MSG_A_RETRACT " A-retrac.:" -#define MSG_XSTEPS " Xpasos/mm:" -#define MSG_YSTEPS " Ypasos/mm:" -#define MSG_ZSTEPS " Zpasos/mm:" -#define MSG_ESTEPS " Epasos/mm:" -#define MSG_MAIN_WIDE " Menu Principal \003" -#define MSG_RECTRACT_WIDE " Retraer \x7E" -#define MSG_TEMPERATURE_WIDE " Temperatura \x7E" -#define MSG_TEMPERATURE_RTN " Temperatura \003" -#define MSG_MOTION_WIDE " Movimiento \x7E" -#define MSG_STORE_EPROM " Guardar Memoria" -#define MSG_LOAD_EPROM " Cargar Memoria" -#define MSG_RESTORE_FAILSAFE " Rest. de emergencia" -#define MSG_REFRESH "\004Volver a cargar" -#define MSG_WATCH " Monitorizar \003" -#define MSG_PREPARE " Preparar \x7E" -#define MSG_PREPARE_ALT " Preparar \003" -#define MSG_CONTROL_ARROW " Control \x7E" -#define MSG_RETRACT_ARROW " Retraer \x7E" -#define MSG_TUNE " Ajustar \x7E" -#define MSG_PAUSE_PRINT " Pausar Impresion \x7E" -#define MSG_RESUME_PRINT " Reanudar Impresion \x7E" -#define MSG_STOP_PRINT " Detener Impresion \x7E" -#define MSG_CARD_MENU " Menu de SD \x7E" -#define MSG_NO_CARD " No hay Tarjeta SD" -#define MSG_DWELL "Reposo..." -#define MSG_USERWAIT "Esperando Ordenes..." -#define MSG_NO_MOVE "Sin movimiento" -#define MSG_PART_RELEASE "Desacople Parcial" -#define MSG_KILLED "PARADA DE EMERGENCIA. " -#define MSG_STOPPED "PARADA. " -#define MSG_STEPPER_RELEASED "Desacoplada." -#define MSG_CONTROL_RETRACT " Retraer mm:" -#define MSG_CONTROL_RETRACTF " Retraer F:" -#define MSG_CONTROL_RETRACT_ZLIFT " Levantar mm:" -#define MSG_CONTROL_RETRACT_RECOVER " DesRet +mm:" -#define MSG_CONTROL_RETRACT_RECOVERF " DesRet F:" -#define MSG_AUTORETRACT " AutoRetr.:" -#define MSG_FILAMENTCHANGE "Change filament" + #define WELCOME_MSG MACHINE_NAME "Lista." + #define MSG_SD_INSERTED "Tarjeta SD Colocada" + #define MSG_SD_REMOVED "Tarjeta SD Retirada" + #define MSG_MAIN "Menu Principal" + #define MSG_AUTOSTART " Autostart" + #define MSG_DISABLE_STEPPERS "Apagar Motores" + #define MSG_AUTO_HOME "Llevar al Origen" // "Llevar Ejes al Cero" + #define MSG_SET_ORIGIN "Establecer Cero" + #define MSG_PREHEAT_PLA "Precalentar PLA" + #define MSG_PREHEAT_PLA_SETTINGS "Ajustar temp. PLA" + #define MSG_PREHEAT_ABS "Precalentar ABS" + #define MSG_PREHEAT_ABS_SETTINGS "Ajustar temp. ABS" + #define MSG_COOLDOWN "Enfriar" + #define MSG_SWITCH_PS_ON "Switch Power On" + #define MSG_SWITCH_PS_OFF "Switch Power Off" + #define MSG_EXTRUDE "Extruir" + #define MSG_RETRACT "Retraer" + #define MSG_MOVE_AXIS "Mover Ejes" + #define MSG_SPEED "Velocidad" + #define MSG_NOZZLE "Nozzle" + #define MSG_NOZZLE1 "Nozzle2" + #define MSG_NOZZLE2 "Nozzle3" + #define MSG_BED "Base" + #define MSG_FAN_SPEED "Ventilador" + #define MSG_FLOW "Flujo" + #define MSG_CONTROL "Control" + #define MSG_MIN "\002 Min" + #define MSG_MAX "\002 Max" + #define MSG_FACTOR "\002 Fact" + #define MSG_AUTOTEMP "Autotemp" + #define MSG_ON "On" + #define MSG_OFF "Off" + #define MSG_PID_P "PID-P" + #define MSG_PID_I "PID-I" + #define MSG_PID_D "PID-D" + #define MSG_PID_C "PID-C" + #define MSG_ACC "Acel" + #define MSG_VXY_JERK "Vxy-jerk" + #define MSG_VZ_JERK "Vz-jerk" + #define MSG_VE_JERK "Ve-jerk" + #define MSG_VMAX "Vmax" + #define MSG_X "x" + #define MSG_Y "y" + #define MSG_Z "z" + #define MSG_E "e" + #define MSG_VMIN "Vmin" + #define MSG_VTRAV_MIN "VTrav min" + #define MSG_AMAX "Amax" + #define MSG_A_RETRACT "A-retrac." + #define MSG_XSTEPS "X pasos/mm" + #define MSG_YSTEPS "Y pasos/mm" + #define MSG_ZSTEPS "Z pasos/mm" + #define MSG_ESTEPS "E pasos/mm" + #define MSG_RECTRACT "Retraer" + #define MSG_TEMPERATURE "Temperatura" + #define MSG_MOTION "Movimiento" + #define MSG_STORE_EPROM "Guardar Memoria" + #define MSG_LOAD_EPROM "Cargar Memoria" + #define MSG_RESTORE_FAILSAFE "Rest. de emergencia" + #define MSG_REFRESH "Volver a cargar" + #define MSG_WATCH "Monitorizar" + #define MSG_PREPARE "Preparar" + #define MSG_TUNE "Ajustar" + #define MSG_PAUSE_PRINT "Pausar Impresion" + #define MSG_RESUME_PRINT "Reanudar Impresion" + #define MSG_STOP_PRINT "Detener Impresion" + #define MSG_CARD_MENU "Menu de SD" + #define MSG_NO_CARD "No hay Tarjeta SD" + #define MSG_DWELL "Reposo..." + #define MSG_USERWAIT "Esperando Ordenes..." + #define MSG_RESUMING "Resumiendo Impresion" + #define MSG_NO_MOVE "Sin movimiento" + #define MSG_KILLED "PARADA DE EMERGENCIA. " + #define MSG_STOPPED "PARADA." + #define MSG_CONTROL_RETRACT "Retraer mm" + #define MSG_CONTROL_RETRACTF "Retraer F" + #define MSG_CONTROL_RETRACT_ZLIFT "Levantar mm" + #define MSG_CONTROL_RETRACT_RECOVER "DesRet +mm" + #define MSG_CONTROL_RETRACT_RECOVERF "DesRet F" + #define MSG_AUTORETRACT "AutoRetr." + #define MSG_FILAMENTCHANGE "Change filament" + #define MSG_INIT_SDCARD "Iniciando. Tarjeta-SD" + #define MSG_CNG_SDCARD "Cambiar Tarjeta-SD" + #define MSG_RECTRACT_WIDE "Retraer" + #define MSG_TEMPERATURE_WIDE "Temperatura" + #define MSG_TEMPERATURE_RTN "Temperatura" + #define MSG_MAIN_WIDE "Menu Principal" + #define MSG_MOTION_WIDE "Movimiento" + #define MSG_PREPARE_ALT "Preparar" + #define MSG_CONTROL_ARROW "Control" + #define MSG_RETRACT_ARROW "Retraer" + #define MSG_PART_RELEASE "Desacople Parcial" + #define MSG_STEPPER_RELEASED "Desacoplada." + // Serial Console Messages -#define MSG_Enqueing "En cola \"" -#define MSG_POWERUP "PowerUp" -#define MSG_EXTERNAL_RESET " Reset Externo" -#define MSG_BROWNOUT_RESET " Reset por Voltaje Incorrecto" -#define MSG_WATCHDOG_RESET " Reset por Bloqueo" -#define MSG_SOFTWARE_RESET " Reset por Software" -#define MSG_MARLIN "Marlin " -#define MSG_AUTHOR " | Autor: " -#define MSG_CONFIGURATION_VER " Ultima actualizacion: " -#define MSG_FREE_MEMORY " Memoria libre: " -#define MSG_PLANNER_BUFFER_BYTES " PlannerBufferBytes: " -#define MSG_OK "ok" -#define MSG_FILE_SAVED "Guardado." -#define MSG_ERR_LINE_NO "El Numero de Linea no es igual al Ultimo Numero de Linea+1, Ultima Linea:" -#define MSG_ERR_CHECKSUM_MISMATCH "el checksum no coincide, Ultima Linea:" -#define MSG_ERR_NO_CHECKSUM "No se pudo hallar el Checksum con el numero de linea, Ultima Linea:" -#define MSG_ERR_NO_LINENUMBER_WITH_CHECKSUM "No se hallo el Numero de Linea con el Checksum, Ultima Linea:" -#define MSG_FILE_PRINTED "Impresion terminada" -#define MSG_BEGIN_FILE_LIST "Comienzo de la lista de archivos" -#define MSG_END_FILE_LIST "Fin de la lista de archivos" -#define MSG_M104_INVALID_EXTRUDER "M104 Extrusor Invalido " -#define MSG_M105_INVALID_EXTRUDER "M105 Extrusor Invalido " -#define MSG_M218_INVALID_EXTRUDER "M218 Extrusor Invalido " -#define MSG_ERR_NO_THERMISTORS "No hay termistores - no temp" -#define MSG_M109_INVALID_EXTRUDER "M109 Extrusor Invalido " -#define MSG_HEATING "Calentando..." -#define MSG_HEATING_COMPLETE "Calentamiento Hecho." -#define MSG_BED_HEATING "Calentando la base." -#define MSG_BED_DONE "Base Caliente." -#define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) "\n" -#define MSG_COUNT_X " Cuenta X:" -#define MSG_ERR_KILLED "¡¡Impresora Parada con kill()!!" -#define MSG_ERR_STOPPED "¡Impresora parada por errores. Arregle el error y use M999 Para reiniciar!. (La temperatura se reestablece. Ajustela antes de continuar)" -#define MSG_RESEND "Reenviar:" -#define MSG_UNKNOWN_COMMAND "Comando Desconocido:\"" -#define MSG_ACTIVE_EXTRUDER "Extrusor Activo: " -#define MSG_INVALID_EXTRUDER "Extrusor Invalido" -#define MSG_X_MIN "x_min: " -#define MSG_X_MAX "x_max: " -#define MSG_Y_MIN "y_min: " -#define MSG_Y_MAX "y_max: " -#define MSG_Z_MIN "z_min: " -#define MSG_M119_REPORT "Comprobando fines de carrera." -#define MSG_ENDSTOP_HIT "PULSADO" -#define MSG_ENDSTOP_OPEN "abierto" -#define MSG_HOTEND_OFFSET "Hotend offsets:" - -#define MSG_SD_CANT_OPEN_SUBDIR "No se pudo abrir la subcarpeta." -#define MSG_SD_INIT_FAIL "Fallo al iniciar la SD" -#define MSG_SD_VOL_INIT_FAIL "Fallo al montar el volumen" -#define MSG_SD_OPENROOT_FAIL "Fallo al abrir la carpeta raiz" -#define MSG_SD_CARD_OK "Tarjeta SD OK" -#define MSG_SD_WORKDIR_FAIL "Fallo al abrir la carpeta de trabajo" -#define MSG_SD_OPEN_FILE_FAIL "Error al abrir, Archivo: " -#define MSG_SD_FILE_OPENED "Archivo abierto:" -#define MSG_SD_SIZE " Tamaño:" -#define MSG_SD_FILE_SELECTED "Archivo Seleccionado" -#define MSG_SD_WRITE_TO_FILE "Escribiendo en el archivo: " -#define MSG_SD_PRINTING_BYTE "SD imprimiendo el byte " -#define MSG_SD_NOT_PRINTING "No se esta imprimiendo con SD" -#define MSG_SD_ERR_WRITE_TO_FILE "Error al escribir en el archivo" -#define MSG_SD_CANT_ENTER_SUBDIR "No se puede abrir la carpeta:" - -#define MSG_STEPPER_TO_HIGH "Steprate demasiado alto : " -#define MSG_ENDSTOPS_HIT "Se ha tocado el fin de carril: " -#define MSG_ERR_COLD_EXTRUDE_STOP " extrusion fria evitada" -#define MSG_ERR_LONG_EXTRUDE_STOP " extrusion demasiado larga evitada" + #define MSG_Enqueing "En cola \"" + #define MSG_POWERUP "PowerUp" + #define MSG_EXTERNAL_RESET " Reset Externo" + #define MSG_BROWNOUT_RESET " Reset por Voltaje Incorrecto" + #define MSG_WATCHDOG_RESET " Reset por Bloqueo" + #define MSG_SOFTWARE_RESET " Reset por Software" + #define MSG_MARLIN "Marlin " + #define MSG_AUTHOR " | Autor: " + #define MSG_CONFIGURATION_VER " Ultima actualizacion: " + #define MSG_FREE_MEMORY " Memoria libre: " + #define MSG_PLANNER_BUFFER_BYTES " PlannerBufferBytes: " + #define MSG_OK "ok" + #define MSG_FILE_SAVED "Guardado." + #define MSG_ERR_LINE_NO "El Numero de Linea no es igual al Ultimo Numero de Linea+1, Ultima Linea:" + #define MSG_ERR_CHECKSUM_MISMATCH "el checksum no coincide, Ultima Linea:" + #define MSG_ERR_NO_CHECKSUM "No se pudo hallar el Checksum con el numero de linea, Ultima Linea:" + #define MSG_ERR_NO_LINENUMBER_WITH_CHECKSUM "No se hallo el Numero de Linea con el Checksum, Ultima Linea:" + #define MSG_FILE_PRINTED "Impresion terminada" + #define MSG_BEGIN_FILE_LIST "Comienzo de la lista de archivos" + #define MSG_END_FILE_LIST "Fin de la lista de archivos" + #define MSG_M104_INVALID_EXTRUDER "M104 Extrusor Invalido " + #define MSG_M105_INVALID_EXTRUDER "M105 Extrusor Invalido " + #define MSG_M218_INVALID_EXTRUDER "M218 Extrusor Invalido " + #define MSG_ERR_NO_THERMISTORS "No hay termistores - no temp" + #define MSG_M109_INVALID_EXTRUDER "M109 Extrusor Invalido " + #define MSG_HEATING "Calentando..." + #define MSG_HEATING_COMPLETE "Calentamiento Hecho." + #define MSG_BED_HEATING "Calentando la base." + #define MSG_BED_DONE "Base Caliente." + #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n" + #define MSG_COUNT_X " Cuenta X:" + #define MSG_ERR_KILLED "¡¡Impresora Parada con kill()!!" + #define MSG_ERR_STOPPED "¡Impresora parada por errores. Arregle el error y use M999 Para reiniciar!. (La temperatura se reestablece. Ajustela antes de continuar)" + #define MSG_RESEND "Reenviar:" + #define MSG_UNKNOWN_COMMAND "Comando Desconocido:\"" + #define MSG_ACTIVE_EXTRUDER "Extrusor Activo: " + #define MSG_INVALID_EXTRUDER "Extrusor Invalido" + #define MSG_X_MIN "x_min: " + #define MSG_X_MAX "x_max: " + #define MSG_Y_MIN "y_min: " + #define MSG_Y_MAX "y_max: " + #define MSG_Z_MIN "z_min: " + #define MSG_Z_MAX "z_max: " + #define MSG_M119_REPORT "Comprobando fines de carrera." + #define MSG_ENDSTOP_HIT "PULSADO" + #define MSG_ENDSTOP_OPEN "abierto" + #define MSG_HOTEND_OFFSET "Hotend offsets:" + #define MSG_SD_CANT_OPEN_SUBDIR "No se pudo abrir la subcarpeta." + #define MSG_SD_INIT_FAIL "Fallo al iniciar la SD" + #define MSG_SD_VOL_INIT_FAIL "Fallo al montar el volumen" + #define MSG_SD_OPENROOT_FAIL "Fallo al abrir la carpeta raiz" + #define MSG_SD_CARD_OK "Tarjeta SD OK" + #define MSG_SD_WORKDIR_FAIL "Fallo al abrir la carpeta de trabajo" + #define MSG_SD_OPEN_FILE_FAIL "Error al abrir, Archivo: " + #define MSG_SD_FILE_OPENED "Archivo abierto:" + #define MSG_SD_SIZE " Tamaño:" + #define MSG_SD_FILE_SELECTED "Archivo Seleccionado" + #define MSG_SD_WRITE_TO_FILE "Escribiendo en el archivo: " + #define MSG_SD_PRINTING_BYTE "SD imprimiendo el byte " + #define MSG_SD_NOT_PRINTING "No se esta imprimiendo con SD" + #define MSG_SD_ERR_WRITE_TO_FILE "Error al escribir en el archivo" + #define MSG_SD_CANT_ENTER_SUBDIR "No se puede abrir la carpeta:" + + #define MSG_STEPPER_TOO_HIGH "Steprate demasiado alto : " + #define MSG_ENDSTOPS_HIT "Se ha tocado el fin de carril: " + #define MSG_ERR_COLD_EXTRUDE_STOP " extrusion fria evitada" + #define MSG_ERR_LONG_EXTRUDE_STOP " extrusion demasiado larga evitada" #endif #if LANGUAGE_CHOICE == 6 -// LCD Menu Messages -#define WELCOME_MSG MACHINE_NAME " Готов" -#define MSG_SD_INSERTED "Карта вставлена" -#define MSG_SD_REMOVED "Карта извлечена" -#define MSG_MAIN " Меню \003" -#define MSG_AUTOSTART " Автостарт " -#define MSG_DISABLE_STEPPERS " Выключить двигатели" -#define MSG_AUTO_HOME " Парковка " -#define MSG_SET_ORIGIN " Запомнить ноль " -#define MSG_PREHEAT_PLA " Преднагрев PLA " -#define MSG_PREHEAT_PLA_SETTINGS " Настр. преднагр.PLA" -#define MSG_PREHEAT_ABS " Преднагрев ABS " -#define MSG_PREHEAT_ABS_SETTINGS " Настр. преднагр.ABS" -#define MSG_COOLDOWN " Охлаждение " -#define MSG_EXTRUDE " Экструзия " -#define MSG_RETRACT " Откат" -#define MSG_MOVE_AXIS " Движение по осям \x7E" -#define MSG_SPEED " Скорость:" -#define MSG_NOZZLE " \002 Фильера:" -#define MSG_NOZZLE1 " \002 Фильера2:" -#define MSG_NOZZLE2 " \002 Фильера3:" -#define MSG_BED " \002 Кровать:" -#define MSG_FAN_SPEED " Куллер:" -#define MSG_FLOW " Поток:" -#define MSG_CONTROL " Настройки \003" -#define MSG_MIN " \002 Минимум:" -#define MSG_MAX " \002 Максимум:" -#define MSG_FACTOR " \002 Фактор:" -#define MSG_AUTOTEMP " Autotemp:" -#define MSG_ON "Вкл. " -#define MSG_OFF "Выкл. " -#define MSG_PID_P " PID-P: " -#define MSG_PID_I " PID-I: " -#define MSG_PID_D " PID-D: " -#define MSG_PID_C " PID-C: " -#define MSG_ACC " Acc:" -#define MSG_VXY_JERK " Vxy-jerk: " -#define MSG_VZ_JERK " Vz-jerk: " -#define MSG_VE_JERK " Ve-jerk: " -#define MSG_VMAX " Vmax " -#define MSG_X "x:" -#define MSG_Y "y:" -#define MSG_Z "z:" -#define MSG_E "e:" -#define MSG_VMIN " Vmin:" -#define MSG_VTRAV_MIN " VTrav min:" -#define MSG_AMAX " Amax " -#define MSG_A_RETRACT " A-retract:" -#define MSG_XSTEPS " X шаг/mm:" -#define MSG_YSTEPS " Y шаг/mm:" -#define MSG_ZSTEPS " Z шаг/mm:" -#define MSG_ESTEPS " E шаг/mm:" -#define MSG_RECTRACT " Откат подачи \x7E" -#define MSG_TEMPERATURE " Температура \x7E" -#define MSG_MOTION " Скорости \x7E" -#define MSG_STORE_EPROM " Сохранить настройки" -#define MSG_LOAD_EPROM " Загрузить настройки" -#define MSG_RESTORE_FAILSAFE " Сброс настроек " -#define MSG_REFRESH "\004Обновить " -#define MSG_WATCH " Обзор \003" -#define MSG_PREPARE " Действия \x7E" -#define MSG_TUNE " Настройки \x7E" -#define MSG_PAUSE_PRINT " Пауза печати \x7E" -#define MSG_RESUME_PRINT " Продолжить печать \x7E" -#define MSG_STOP_PRINT " Остановить печать \x7E" -#define MSG_CARD_MENU " Меню карты \x7E" -#define MSG_NO_CARD " Нет карты" -#define MSG_DWELL "Сон..." -#define MSG_USERWAIT "Нажмите для продолж." -#define MSG_NO_MOVE "Нет движения. " -#define MSG_PART_RELEASE " Извлечение принта " -#define MSG_KILLED "УБИТО. " -#define MSG_STOPPED "ОСТАНОВЛЕНО. " -#define MSG_CONTROL_RETRACT " Откат mm:" -#define MSG_CONTROL_RETRACTF " Откат F:" -#define MSG_CONTROL_RETRACT_ZLIFT " Прыжок mm:" -#define MSG_CONTROL_RETRACT_RECOVER " Возврат +mm:" -#define MSG_CONTROL_RETRACT_RECOVERF " Возврат F:" -#define MSG_AUTORETRACT " АвтоОткат:" -#define MSG_FILAMENTCHANGE "Change filament" + // LCD Menu Messages + #define WELCOME_MSG MACHINE_NAME " Готов" + #define MSG_SD_INSERTED "Карта вставлена" + #define MSG_SD_REMOVED "Карта извлечена" + #define MSG_MAIN " Меню \003" + #define MSG_AUTOSTART " Автостарт " + #define MSG_DISABLE_STEPPERS " Выключить двигатели" + #define MSG_AUTO_HOME " Парковка " + #define MSG_SET_ORIGIN " Запомнить ноль " + #define MSG_PREHEAT_PLA " Преднагрев PLA " + #define MSG_PREHEAT_PLA_SETTINGS " Настр. преднагр.PLA" + #define MSG_PREHEAT_ABS " Преднагрев ABS " + #define MSG_PREHEAT_ABS_SETTINGS " Настр. преднагр.ABS" + #define MSG_COOLDOWN " Охлаждение " + #define MSG_SWITCH_PS_ON "Switch Power On" + #define MSG_SWITCH_PS_OFF "Switch Power Off" + #define MSG_EXTRUDE " Экструзия " + #define MSG_RETRACT " Откат" + #define MSG_MOVE_AXIS " Движение по осям \x7E" + #define MSG_SPEED " Скорость:" + #define MSG_NOZZLE " \002 Фильера:" + #define MSG_NOZZLE1 " \002 Фильера2:" + #define MSG_NOZZLE2 " \002 Фильера3:" + #define MSG_BED " \002 Кровать:" + #define MSG_FAN_SPEED " Куллер:" + #define MSG_FLOW " Поток:" + #define MSG_CONTROL " Настройки \003" + #define MSG_MIN " \002 Минимум:" + #define MSG_MAX " \002 Максимум:" + #define MSG_FACTOR " \002 Фактор:" + #define MSG_AUTOTEMP " Autotemp:" + #define MSG_ON "Вкл. " + #define MSG_OFF "Выкл. " + #define MSG_PID_P " PID-P: " + #define MSG_PID_I " PID-I: " + #define MSG_PID_D " PID-D: " + #define MSG_PID_C " PID-C: " + #define MSG_ACC " Acc:" + #define MSG_VXY_JERK " Vxy-jerk: " + #define MSG_VZ_JERK "Vz-jerk" + #define MSG_VE_JERK "Ve-jerk" + #define MSG_VMAX " Vmax " + #define MSG_X "x:" + #define MSG_Y "y:" + #define MSG_Z "z:" + #define MSG_E "e:" + #define MSG_VMIN " Vmin:" + #define MSG_VTRAV_MIN " VTrav min:" + #define MSG_AMAX " Amax " + #define MSG_A_RETRACT " A-retract:" + #define MSG_XSTEPS " X шаг/mm:" + #define MSG_YSTEPS " Y шаг/mm:" + #define MSG_ZSTEPS " Z шаг/mm:" + #define MSG_ESTEPS " E шаг/mm:" + #define MSG_RECTRACT " Откат подачи \x7E" + #define MSG_TEMPERATURE " Температура \x7E" + #define MSG_MOTION " Скорости \x7E" + #define MSG_CONTRAST "LCD contrast" + #define MSG_STORE_EPROM " Сохранить настройки" + #define MSG_LOAD_EPROM " Загрузить настройки" + #define MSG_RESTORE_FAILSAFE " Сброс настроек " + #define MSG_REFRESH "\004Обновить " + #define MSG_WATCH " Обзор \003" + #define MSG_PREPARE " Действия \x7E" + #define MSG_TUNE " Настройки \x7E" + #define MSG_PAUSE_PRINT " Пауза печати \x7E" + #define MSG_RESUME_PRINT " Продолжить печать \x7E" + #define MSG_STOP_PRINT " Остановить печать \x7E" + #define MSG_CARD_MENU " Меню карты \x7E" + #define MSG_NO_CARD " Нет карты" + #define MSG_DWELL "Сон..." + #define MSG_USERWAIT "Нажмите для продолж." + #define MSG_RESUMING "Resuming print" + #define MSG_NO_MOVE "Нет движения. " + #define MSG_PART_RELEASE " Извлечение принта " + #define MSG_KILLED "УБИТО. " + #define MSG_STOPPED "ОСТАНОВЛЕНО. " + #define MSG_CONTROL_RETRACT " Откат mm:" + #define MSG_CONTROL_RETRACTF " Откат F:" + #define MSG_CONTROL_RETRACT_ZLIFT " Прыжок mm:" + #define MSG_CONTROL_RETRACT_RECOVER " Возврат +mm:" + #define MSG_CONTROL_RETRACT_RECOVERF " Возврат F:" + #define MSG_AUTORETRACT " АвтоОткат:" + #define MSG_FILAMENTCHANGE "Change filament" + #define MSG_INIT_SDCARD "Init. SD-Card" + #define MSG_CNG_SDCARD "Change SD-Card" // Serial Console Messages -#define MSG_Enqueing "Запланировано \"" -#define MSG_POWERUP "Включение питания" -#define MSG_EXTERNAL_RESET " Внешний сброс" -#define MSG_BROWNOUT_RESET " Brown out сброс" -#define MSG_WATCHDOG_RESET " Watchdog сброс" -#define MSG_SOFTWARE_RESET " программный сброс" -#define MSG_MARLIN "Marlin " -#define MSG_AUTHOR " | Автор: " -#define MSG_CONFIGURATION_VER " Последнее обновление: " -#define MSG_FREE_MEMORY " Памяти свободно: " -#define MSG_PLANNER_BUFFER_BYTES " Буффер очереди команд Bytes: " -#define MSG_OK "ok" -#define MSG_FILE_SAVED "Файл записан." -#define MSG_ERR_LINE_NO "Номен строки это не последняя строка+1, последняя строка:" -#define MSG_ERR_CHECKSUM_MISMATCH "контрольная сумма не совпадает, последняя строка:" -#define MSG_ERR_NO_CHECKSUM "нет контрольной суммы для строки, последняя строка:" -#define MSG_ERR_NO_LINENUMBER_WITH_CHECKSUM "нет строки для контрольной суммы, последняя строка:" -#define MSG_FILE_PRINTED "Печать файла завершена" -#define MSG_BEGIN_FILE_LIST "Список файлов" -#define MSG_END_FILE_LIST "Конец списка файлов" -#define MSG_M104_INVALID_EXTRUDER "M104 ошибка экструдера " -#define MSG_M105_INVALID_EXTRUDER "M105 ошибка экструдера " -#define MSG_M218_INVALID_EXTRUDER "M218 ошибка экструдера " -#define MSG_ERR_NO_THERMISTORS "Нет термистра - нет температуры" -#define MSG_M109_INVALID_EXTRUDER "M109 ошибка экструдера " -#define MSG_HEATING "Нагрев... " -#define MSG_HEATING_COMPLETE "Наргето. " -#define MSG_BED_HEATING "Нагрев стола... " -#define MSG_BED_DONE "Стол нагрет. " -#define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) "\n" -#define MSG_COUNT_X " Count X:" -#define MSG_ERR_KILLED "Принтер остановлен. вызов kill() !!" -#define MSG_ERR_STOPPED "Ошибка принтера, останов. Устраните неисправность и используйте M999 для перезагрузки!. (Температура недоступна. Проверьте датчики)" -#define MSG_RESEND "Переотправка:" -#define MSG_UNKNOWN_COMMAND "Неизвестная команда:\"" -#define MSG_ACTIVE_EXTRUDER "Активный экструдер: " -#define MSG_INVALID_EXTRUDER "Ошибка экструдера" -#define MSG_X_MIN "x_min:" -#define MSG_X_MAX "x_max:" -#define MSG_Y_MIN "y_min:" -#define MSG_Y_MAX "y_max:" -#define MSG_Z_MIN "z_min:" -#define MSG_Z_MAX "z_max:" -#define MSG_M119_REPORT "Статус концевиков" -#define MSG_ENDSTOP_HIT "Срабатывание концевика" -#define MSG_ENDSTOP_OPEN "Концевик освобожден" -#define MSG_HOTEND_OFFSET "Hotend offsets:" -#define MSG_SD_CANT_OPEN_SUBDIR "Не открыть папку" -#define MSG_SD_INIT_FAIL "Ошибка инициализации SD" -#define MSG_SD_VOL_INIT_FAIL "Ошибка инициализации раздела" -#define MSG_SD_OPENROOT_FAIL "Не прочесть содержимое корня" -#define MSG_SD_CARD_OK "SD карта в порядке" -#define MSG_SD_WORKDIR_FAIL "не открыть рабочую папку" -#define MSG_SD_OPEN_FILE_FAIL "Ошибка чтения, файл: " -#define MSG_SD_FILE_OPENED "Файл открыт:" -#define MSG_SD_SIZE " Размер:" -#define MSG_SD_FILE_SELECTED "Файл выбран" -#define MSG_SD_WRITE_TO_FILE "Запись в файл: " -#define MSG_SD_PRINTING_BYTE "SD печать byte " -#define MSG_SD_NOT_PRINTING "нет SD печати" -#define MSG_SD_ERR_WRITE_TO_FILE "ошибка записи в файл" -#define MSG_SD_CANT_ENTER_SUBDIR "Не зайти в папку:" -#define MSG_STEPPER_TO_HIGH "Частота шагов очень высока : " -#define MSG_ENDSTOPS_HIT "концевик сработал: " -#define MSG_ERR_COLD_EXTRUDE_STOP " защита холодной экструзии" -#define MSG_ERR_LONG_EXTRUDE_STOP " защита превышения длинны экструзии" + #define MSG_Enqueing "Запланировано \"" + #define MSG_POWERUP "Включение питания" + #define MSG_EXTERNAL_RESET " Внешний сброс" + #define MSG_BROWNOUT_RESET " Brown out сброс" + #define MSG_WATCHDOG_RESET " Watchdog сброс" + #define MSG_SOFTWARE_RESET " программный сброс" + #define MSG_MARLIN "Marlin " + #define MSG_AUTHOR " | Автор: " + #define MSG_CONFIGURATION_VER " Последнее обновление: " + #define MSG_FREE_MEMORY " Памяти свободно: " + #define MSG_PLANNER_BUFFER_BYTES " Буффер очереди команд Bytes: " + #define MSG_OK "ok" + #define MSG_FILE_SAVED "Файл записан." + #define MSG_ERR_LINE_NO "Номен строки это не последняя строка+1, последняя строка:" + #define MSG_ERR_CHECKSUM_MISMATCH "контрольная сумма не совпадает, последняя строка:" + #define MSG_ERR_NO_CHECKSUM "нет контрольной суммы для строки, последняя строка:" + #define MSG_ERR_NO_LINENUMBER_WITH_CHECKSUM "нет строки для контрольной суммы, последняя строка:" + #define MSG_FILE_PRINTED "Печать файла завершена" + #define MSG_BEGIN_FILE_LIST "Список файлов" + #define MSG_END_FILE_LIST "Конец списка файлов" + #define MSG_M104_INVALID_EXTRUDER "M104 ошибка экструдера " + #define MSG_M105_INVALID_EXTRUDER "M105 ошибка экструдера " + #define MSG_M218_INVALID_EXTRUDER "M218 ошибка экструдера " + #define MSG_ERR_NO_THERMISTORS "Нет термистра - нет температуры" + #define MSG_M109_INVALID_EXTRUDER "M109 ошибка экструдера " + #define MSG_HEATING "Нагрев... " + #define MSG_HEATING_COMPLETE "Наргето. " + #define MSG_BED_HEATING "Нагрев стола... " + #define MSG_BED_DONE "Стол нагрет. " + #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n" + #define MSG_COUNT_X " Count X:" + #define MSG_ERR_KILLED "Принтер остановлен. вызов kill() !!" + #define MSG_ERR_STOPPED "Ошибка принтера, останов. Устраните неисправность и используйте M999 для перезагрузки!. (Температура недоступна. Проверьте датчики)" + #define MSG_RESEND "Переотправка:" + #define MSG_UNKNOWN_COMMAND "Неизвестная команда:\"" + #define MSG_ACTIVE_EXTRUDER "Активный экструдер: " + #define MSG_INVALID_EXTRUDER "Ошибка экструдера" + #define MSG_X_MIN "x_min:" + #define MSG_X_MAX "x_max:" + #define MSG_Y_MIN "y_min:" + #define MSG_Y_MAX "y_max:" + #define MSG_Z_MIN "z_min:" + #define MSG_Z_MAX "z_max:" + #define MSG_M119_REPORT "Статус концевиков" + #define MSG_ENDSTOP_HIT "Срабатывание концевика" + #define MSG_ENDSTOP_OPEN "Концевик освобожден" + #define MSG_HOTEND_OFFSET "Hotend offsets:" + #define MSG_SD_CANT_OPEN_SUBDIR "Не открыть папку" + #define MSG_SD_INIT_FAIL "Ошибка инициализации SD" + #define MSG_SD_VOL_INIT_FAIL "Ошибка инициализации раздела" + #define MSG_SD_OPENROOT_FAIL "Не прочесть содержимое корня" + #define MSG_SD_CARD_OK "SD карта в порядке" + #define MSG_SD_WORKDIR_FAIL "не открыть рабочую папку" + #define MSG_SD_OPEN_FILE_FAIL "Ошибка чтения, файл: " + #define MSG_SD_FILE_OPENED "Файл открыт:" + #define MSG_SD_SIZE " Размер:" + #define MSG_SD_FILE_SELECTED "Файл выбран" + #define MSG_SD_WRITE_TO_FILE "Запись в файл: " + #define MSG_SD_PRINTING_BYTE "SD печать byte " + #define MSG_SD_NOT_PRINTING "нет SD печати" + #define MSG_SD_ERR_WRITE_TO_FILE "ошибка записи в файл" + #define MSG_SD_CANT_ENTER_SUBDIR "Не зайти в папку:" + #define MSG_STEPPER_TOO_HIGH "Частота шагов очень высока : " + #define MSG_ENDSTOPS_HIT "концевик сработал: " + #define MSG_ERR_COLD_EXTRUDE_STOP " защита холодной экструзии" + #define MSG_ERR_LONG_EXTRUDE_STOP " защита превышения длинны экструзии" #endif @@ -998,7 +1041,7 @@ #if LANGUAGE_CHOICE == 7 // LCD Menu Messages - #define WELCOME_MSG MACHINE_NAME " Pronto." + #define WELCOME_MSG MACHINE_NAME " Pronta" #define MSG_SD_INSERTED "SD Card inserita" #define MSG_SD_REMOVED "SD Card rimossa" #define MSG_MAIN "Menu principale" @@ -1010,7 +1053,9 @@ #define MSG_PREHEAT_PLA_SETTINGS "Preris. PLA Conf" #define MSG_PREHEAT_ABS "Preriscalda ABS" #define MSG_PREHEAT_ABS_SETTINGS "Preris. ABS Conf" - #define MSG_COOLDOWN "Rafredda" + #define MSG_COOLDOWN "Raffredda" + #define MSG_SWITCH_PS_ON "Switch Power On" + #define MSG_SWITCH_PS_OFF "Switch Power Off" #define MSG_EXTRUDE "Estrudi" #define MSG_RETRACT "Ritrai" #define MSG_MOVE_AXIS "Muovi Asse" @@ -1034,8 +1079,8 @@ #define MSG_PID_C "PID-C" #define MSG_ACC "Accel" #define MSG_VXY_JERK "Vxy-jerk" - #define MSG_VZ_JERK "Vz-jerk" - #define MSG_VE_JERK "Ve-jerk" + #define MSG_VZ_JERK "Vz-jerk" + #define MSG_VE_JERK "Ve-jerk" #define MSG_VMAX "Vmax" #define MSG_X "x" #define MSG_Y "y" @@ -1052,6 +1097,7 @@ #define MSG_RECTRACT "Ritrai" #define MSG_TEMPERATURE "Temperatura" #define MSG_MOTION "Movimento" + #define MSG_CONTRAST "LCD contrast" #define MSG_STORE_EPROM "Salva in EEPROM" #define MSG_LOAD_EPROM "Carica da EEPROM" #define MSG_RESTORE_FAILSAFE "Impostaz. default" @@ -1112,7 +1158,7 @@ #define MSG_HEATING_COMPLETE "Stampante Calda." #define MSG_BED_HEATING "Riscaldamento Piatto." #define MSG_BED_DONE "Piatto Pronto." - #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) "\n" + #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n" #define MSG_COUNT_X " Calcola X: " #define MSG_ERR_KILLED "Stampante Calda. kill() chiamata !!" #define MSG_ERR_STOPPED "Stampante fermata a causa di errori. Risolvi l'errore e usa M999 per ripartire!. (Reset temperatura. Impostala prima di ripartire)" @@ -1147,7 +1193,7 @@ #define MSG_SD_ERR_WRITE_TO_FILE "Errore nella scrittura su file" #define MSG_SD_CANT_ENTER_SUBDIR "Impossibile entrare nella sottocartella: " - #define MSG_STEPPER_TO_HIGH "Steprate troppo alto: " + #define MSG_STEPPER_TOO_HIGH "Steprate troppo alto: " #define MSG_ENDSTOPS_HIT "Raggiunto il fondo carrello: " #define MSG_ERR_COLD_EXTRUDE_STOP " prevenuta estrusione fredda" #define MSG_ERR_LONG_EXTRUDE_STOP " prevenuta estrusione troppo lunga" @@ -1171,6 +1217,8 @@ #define MSG_PREHEAT_ABS " pre-aquecer ABS" #define MSG_PREHEAT_ABS_SETTINGS " pre-aquecer ABS Setting" #define MSG_COOLDOWN " Esfriar" + #define MSG_SWITCH_PS_ON "Switch Power On" + #define MSG_SWITCH_PS_OFF "Switch Power Off" #define MSG_EXTRUDE " Extrudar" #define MSG_RETRACT " Retrair" #define MSG_PREHEAT_PLA " pre-aquecer PLA" @@ -1196,8 +1244,8 @@ #define MSG_PID_C " PID-C: " #define MSG_ACC " Acc:" #define MSG_VXY_JERK " Vxy-jerk: " - #define MSG_VZ_JERK " Vz-jerk: " - #define MSG_VE_JERK " Ve-jerk: " + #define MSG_VZ_JERK "Vz-jerk" + #define MSG_VE_JERK "Ve-jerk" #define MSG_VMAX " Vmax " #define MSG_X "x:" #define MSG_Y "y:" @@ -1212,10 +1260,9 @@ #define MSG_ZSTEPS " Zpasso/mm:" #define MSG_ESTEPS " Epasso/mm:" #define MSG_MAIN_WIDE " Menu Principal \003" - #define MSG_RECTRACT_WIDE " Retrair \x7E" - #define MSG_TEMPERATURE_WIDE " Temperatura \x7E" - #define MSG_TEMPERATURE_RTN " Temperatura \003" - #define MSG_MOTION_WIDE " Movimento \x7E" + #define MSG_RECTRACT "Retrair" + #define MSG_TEMPERATURE "Temperatura" + #define MSG_MOTION "Movimento" #define MSG_STORE_EPROM " Guardar memoria" #define MSG_LOAD_EPROM " Carregar memoria" #define MSG_RESTORE_FAILSAFE " Rest. de emergencia" @@ -1233,6 +1280,7 @@ #define MSG_NO_CARD " Sem cartao SD" #define MSG_DWELL "Repouso..." #define MSG_USERWAIT "Esperando Ordem..." + #define MSG_RESUMING "Resuming print" #define MSG_NO_MOVE "Sem movimento." #define MSG_PART_RELEASE "Lancamento Parcial" #define MSG_KILLED "PARADA DE EMERGENCIA. " @@ -1244,8 +1292,10 @@ #define MSG_CONTROL_RETRACT_RECOVER " DesRet +mm:" #define MSG_CONTROL_RETRACT_RECOVERF " DesRet F:" #define MSG_AUTORETRACT " AutoRetr.:" - #define MSG_SERIAL_ERROR_MENU_STRUCTURE "Algo esta errado na estrutura do Menu." - #define MSG_FILAMENTCHANGE "Change filament" + #define MSG_SERIAL_ERROR_MENU_STRUCTURE "Algo esta errado na estrutura do Menu." + #define MSG_FILAMENTCHANGE "Change filament" + #define MSG_INIT_SDCARD "Init. SD-Card" + #define MSG_CNG_SDCARD "Change SD-Card" // Serial Console Messages @@ -1278,7 +1328,7 @@ #define MSG_HEATING_COMPLETE "Aquecido." #define MSG_BED_HEATING "Aquecendo a Base." #define MSG_BED_DONE "Base quente." - #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) "\n" + #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n" #define MSG_COUNT_X " Conta X:" #define MSG_ERR_KILLED "Impressora parada com kill() !!" #define MSG_ERR_STOPPED "Impressora parada por erros. Coserte o erro e use M999 para recomeçar!. (Temperatura reiniciada. Ajuste antes de recomeçar)" @@ -1313,7 +1363,7 @@ #define MSG_SD_ERR_WRITE_TO_FILE "Erro ao escrever no arquivo" #define MSG_SD_CANT_ENTER_SUBDIR "Nao pode abrir o sub diretorio:" - #define MSG_STEPPER_TO_HIGH "Steprate muito alto : " + #define MSG_STEPPER_TOO_HIGH "Steprate muito alto : " #define MSG_ENDSTOPS_HIT "O ponto final foi tocado: " #define MSG_ERR_COLD_EXTRUDE_STOP " Extrusao a frio evitada" #define MSG_ERR_LONG_EXTRUDE_STOP " Extrusao muito larga evitada" @@ -1341,6 +1391,8 @@ #define MSG_PREHEAT_ABS "Esilammita ABS" #define MSG_PREHEAT_ABS_SETTINGS "Esilammita ABS konf" #define MSG_COOLDOWN "Jaahdyta" + #define MSG_SWITCH_PS_ON "Switch Power On" + #define MSG_SWITCH_PS_OFF "Switch Power Off" #define MSG_EXTRUDE "Pursota" #define MSG_RETRACT "Veda takaisin" #define MSG_MOVE_AXIS "Liikuta akseleita" @@ -1382,6 +1434,7 @@ #define MSG_RECTRACT "Veda takaisin" #define MSG_TEMPERATURE "Lampotila" #define MSG_MOTION "Liike" + #define MSG_CONTRAST "LCD contrast" #define MSG_STORE_EPROM "Tallenna muistiin" #define MSG_LOAD_EPROM "Lataa muistista" #define MSG_RESTORE_FAILSAFE "Palauta oletus" @@ -1407,6 +1460,8 @@ #define MSG_CONTROL_RETRACT_RECOVERF "UnRet F" #define MSG_AUTORETRACT "AutoVeto." #define MSG_FILAMENTCHANGE "Change filament" + #define MSG_INIT_SDCARD "Init. SD-Card" + #define MSG_CNG_SDCARD "Change SD-Card" // Serial Console Messages @@ -1439,7 +1494,7 @@ #define MSG_HEATING_COMPLETE "Lammitys valmis." #define MSG_BED_HEATING "Alusta lampiaa." #define MSG_BED_DONE "Alusta valmis." - #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) "\n" + #define MSG_M115_REPORT "FIRMWARE_NAME:Marlin V1; Sprinter/grbl mashup for gen6 FIRMWARE_URL:" FIRMWARE_URL " PROTOCOL_VERSION:" PROTOCOL_VERSION " MACHINE_TYPE:" MACHINE_NAME " EXTRUDER_COUNT:" STRINGIFY(EXTRUDERS) " UUID:" MACHINE_UUID "\n" #define MSG_COUNT_X " Laskuri X: " #define MSG_ERR_KILLED "Tulostin pysaytetty. kill():ia kutsuttu!" #define MSG_ERR_STOPPED "Tulostin pysaytetty virheiden vuoksi. Korjaa virheet ja kayta M999 kaynnistaaksesi uudelleen. (Lampotila nollattiin. Aseta lampotila sen jalkeen kun jatkat.)" @@ -1474,7 +1529,7 @@ #define MSG_SD_ERR_WRITE_TO_FILE "virhe kirjoitettaessa tiedostoon" #define MSG_SD_CANT_ENTER_SUBDIR "Alihakemistoon ei voitu siirtya: " - #define MSG_STEPPER_TO_HIGH "Askellustaajuus liian suuri: " + #define MSG_STEPPER_TOO_HIGH "Askellustaajuus liian suuri: " #define MSG_ENDSTOPS_HIT "paatyrajat aktivoitu: " #define MSG_ERR_COLD_EXTRUDE_STOP " kylmana pursotus estetty" #define MSG_ERR_LONG_EXTRUDE_STOP " liian pitka pursotus estetty" diff --git a/Marlin/pins.h b/Marlin/pins.h index 41aae2e2215d38aeea2a7f50a2fac67e881c19b3..ba73a3ccc2a3b4bc6cf1ab8631f287f8afbf7e6e 100644 --- a/Marlin/pins.h +++ b/Marlin/pins.h @@ -14,7 +14,7 @@ #define DIGIPOTSS_PIN -1 #if MOTHERBOARD == 99 -#define KNOWN_BOARD 1 +#define KNOWN_BOARD 1 #define X_STEP_PIN 2 #define X_DIR_PIN 3 @@ -53,6 +53,84 @@ #endif /* 99 */ +/**************************************************************************************** +* Sethi 3D_1 pin assignment - www.sethi3d.com.br +* +****************************************************************************************/ + +#if MOTHERBOARD == 20 +#define KNOWN_BOARD + +#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega644__) && !defined(__AVR_ATmega1284P__) +#error Oops! Make sure you have 'Sethi 3D' selected from the 'Tools -> Boards' menu. + +#endif + +#ifndef GEN7_VERSION +#define GEN7_VERSION 12 // v1.x +#endif + +//x axis pins +#define X_STEP_PIN 19 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN 24 +#define X_STOP_PIN 2 + +//y axis pins +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_ENABLE_PIN 24 +#define Y_STOP_PIN 0 + +//z axis pins +#define Z_STEP_PIN 26 +#define Z_DIR_PIN 25 +#define Z_ENABLE_PIN 24 +#define Z_MIN_PIN 1 +#define Z_MAX_PIN 0 + +//extruder pins +#define E0_STEP_PIN 28 +#define E0_DIR_PIN 27 +#define E0_ENABLE_PIN 24 + +#define TEMP_0_PIN 1 +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 +#define TEMP_BED_PIN 2 + +#define HEATER_0_PIN 4 +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +#define HEATER_BED_PIN 3 + +#define KILL_PIN -1 + +#define SDPOWER -1 +#define SDSS -1 // SCL pin of I2C header +#define LED_PIN -1 + +#if (GEN7_VERSION >= 13) +// Gen7 v1.3 removed the fan pin +#define FAN_PIN -1 +#else +#define FAN_PIN 31 +#endif +#define PS_ON_PIN 15 + +//All these generations of Gen7 supply thermistor power +//via PS_ON, so ignore bad thermistor readings +#define BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE + +//our pin for debugging. +#define DEBUG_PIN 0 + +//our RS485 pins +#define TX_ENABLE_PIN 12 +#define RX_ENABLE_PIN 13 + +#endif + /**************************************************************************************** * Gen7 v1.1, v1.2, v1.3 pin assignment * @@ -181,10 +259,10 @@ #define E0_DIR_PIN 18 #define E0_ENABLE_PIN 25 -#define TEMP_0_PIN 0 +#define TEMP_0_PIN 1 #define TEMP_1_PIN -1 #define TEMP_2_PIN -1 -#define TEMP_BED_PIN 1 +#define TEMP_BED_PIN 0 #define HEATER_0_PIN 4 #define HEATER_1_PIN -1 @@ -227,8 +305,8 @@ #endif //x axis pins - #define X_STEP_PIN 21 //different from stanard GEN7 - #define X_DIR_PIN 20 //different from stanard GEN7 + #define X_STEP_PIN 21 // different from standard GEN7 + #define X_DIR_PIN 20 // different from standard GEN7 #define X_ENABLE_PIN 24 #define X_STOP_PIN 0 @@ -248,14 +326,14 @@ #define E0_STEP_PIN 28 #define E0_DIR_PIN 27 #define E0_ENABLE_PIN 24 - + #define TEMP_0_PIN 2 #define TEMP_1_PIN -1 #define TEMP_2_PIN -1 #define TEMP_BED_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! (pin 34 bed) - + #define HEATER_0_PIN 4 - #define HEATER_1_PIN -1 + #define HEATER_1_PIN -1 #define HEATER_2_PIN -1 #define HEATER_BED_PIN 3 // (bed) @@ -272,40 +350,32 @@ //our RS485 pins //#define TX_ENABLE_PIN 12 //#define RX_ENABLE_PIN 13 - - #define BEEPER -1 - #define SDCARDDETECT -1 - #define SUICIDE_PIN -1 //has to be defined; otherwise Power_off doesn't work - + + #define BEEPER -1 + #define SDCARDDETECT -1 + #define SUICIDE_PIN -1 //has to be defined; otherwise Power_off doesn't work + #define KILL_PIN -1 - //Pins for 4bit LCD Support - #define LCD_PINS_RS 18 + //Pins for 4bit LCD Support + #define LCD_PINS_RS 18 #define LCD_PINS_ENABLE 17 #define LCD_PINS_D4 16 - #define LCD_PINS_D5 15 + #define LCD_PINS_D5 15 #define LCD_PINS_D6 13 #define LCD_PINS_D7 14 - + //buttons are directly attached #define BTN_EN1 11 #define BTN_EN2 10 #define BTN_ENC 12 //the click - - #define BLEN_C 2 - #define BLEN_B 1 - #define BLEN_A 0 - #define encrot0 0 - #define encrot1 2 - #define encrot2 3 - #define encrot3 1 #endif /**************************************************************************************** * Arduino Mega pin assignment * ****************************************************************************************/ -#if MOTHERBOARD == 3 || MOTHERBOARD == 33 || MOTHERBOARD == 34 +#if MOTHERBOARD == 3 || MOTHERBOARD == 33 || MOTHERBOARD == 34 || MOTHERBOARD == 35 || MOTHERBOARD == 77 || MOTHERBOARD == 67 #define KNOWN_BOARD 1 //////////////////FIX THIS////////////// @@ -315,154 +385,272 @@ #endif #endif + // uncomment one of the following lines for RAMPS v1.3 or v1.0, comment both for v1.2 or 1.1 // #define RAMPS_V_1_3 // #define RAMPS_V_1_0 -#if MOTHERBOARD == 33 || MOTHERBOARD == 34 -#define X_STEP_PIN 54 -#define X_DIR_PIN 55 -#define X_ENABLE_PIN 38 -#define X_MIN_PIN 3 -#define X_MAX_PIN 2 +#if MOTHERBOARD == 33 || MOTHERBOARD == 34 || MOTHERBOARD == 35 || MOTHERBOARD == 77 || MOTHERBOARD == 67 -#define Y_STEP_PIN 60 -#define Y_DIR_PIN 61 -#define Y_ENABLE_PIN 56 -#define Y_MIN_PIN 14 -#define Y_MAX_PIN 15 + #define LARGE_FLASH true + + #if MOTHERBOARD == 77 + #define X_STEP_PIN 54 + #define X_DIR_PIN 55 + #define X_ENABLE_PIN 38 + #define X_MIN_PIN 3 + #define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable. -#define Z_STEP_PIN 46 -#define Z_DIR_PIN 48 -#define Z_ENABLE_PIN 62 -#define Z_MIN_PIN 18 -#define Z_MAX_PIN 19 + #define Y_STEP_PIN 60 + #define Y_DIR_PIN 61 + #define Y_ENABLE_PIN 56 + #define Y_MIN_PIN 14 + #define Y_MAX_PIN -1 //15 -#define Z2_STEP_PIN 36 -#define Z2_DIR_PIN 34 -#define Z2_ENABLE_PIN 30 + #define Z_STEP_PIN 46 + #define Z_DIR_PIN 48 + #define Z_ENABLE_PIN 63 + #define Z_MIN_PIN 18 + #define Z_MAX_PIN -1 -#define E0_STEP_PIN 26 -#define E0_DIR_PIN 28 -#define E0_ENABLE_PIN 24 + #define Y2_STEP_PIN 36 + #define Y2_DIR_PIN 34 + #define Y2_ENABLE_PIN 30 -#define E1_STEP_PIN 36 -#define E1_DIR_PIN 34 -#define E1_ENABLE_PIN 30 + #define Z2_STEP_PIN 36 + #define Z2_DIR_PIN 34 + #define Z2_ENABLE_PIN 30 -#define SDPOWER -1 -#define SDSS 53 -#define LED_PIN 13 + #define E0_STEP_PIN 26 + #define E0_DIR_PIN 28 + #define E0_ENABLE_PIN 24 -#if MOTHERBOARD == 33 -#define FAN_PIN 9 // (Sprinter config) -#else -#define FAN_PIN 4 // IO pin. Buffer needed -#endif -#define PS_ON_PIN 12 + #define E1_STEP_PIN 36 + #define E1_DIR_PIN 34 + #define E1_ENABLE_PIN 30 -#if defined(REPRAP_DISCOUNT_SMART_CONTROLLER) || defined(G3D_PANEL) -#define KILL_PIN 41 -#else -#define KILL_PIN -1 -#endif + #define SDPOWER -1 + #define SDSS 25//53 + #define LED_PIN 13 -#define HEATER_0_PIN 10 // EXTRUDER 1 -#if MOTHERBOARD == 33 -#define HEATER_1_PIN -1 -#else -#define HEATER_1_PIN 9 // EXTRUDER 2 (FAN On Sprinter) -#endif -#define HEATER_2_PIN -1 -#define TEMP_0_PIN 13 // ANALOG NUMBERING -#define TEMP_1_PIN 15 // ANALOG NUMBERING -#define TEMP_2_PIN -1 // ANALOG NUMBERING -#define HEATER_BED_PIN 8 // BED -#define TEMP_BED_PIN 14 // ANALOG NUMBERING + #define BEEPER 33 -#ifdef ULTRA_LCD + #else - #ifdef NEWPANEL - //encoder rotation values - #define encrot0 0 - #define encrot1 2 - #define encrot2 3 - #define encrot3 1 + #define X_STEP_PIN 54 + #define X_DIR_PIN 55 + #define X_ENABLE_PIN 38 + #define X_MIN_PIN 3 + #define X_MAX_PIN 2 + + #define Y_STEP_PIN 60 + #define Y_DIR_PIN 61 + #define Y_ENABLE_PIN 56 + #define Y_MIN_PIN 14 + #define Y_MAX_PIN 15 + + #define Z_STEP_PIN 46 + #define Z_DIR_PIN 48 + #define Z_ENABLE_PIN 62 + #define Z_MIN_PIN 18 + #define Z_MAX_PIN 19 + + #define Y2_STEP_PIN 36 + #define Y2_DIR_PIN 34 + #define Y2_ENABLE_PIN 30 + + #define Z2_STEP_PIN 36 + #define Z2_DIR_PIN 34 + #define Z2_ENABLE_PIN 30 + + #define E0_STEP_PIN 26 + #define E0_DIR_PIN 28 + #define E0_ENABLE_PIN 24 + + #define E1_STEP_PIN 36 + #define E1_DIR_PIN 34 + #define E1_ENABLE_PIN 30 + + #define SDPOWER -1 + #define SDSS 53 + #define LED_PIN 13 + #endif - #define BLEN_A 0 - #define BLEN_B 1 - #define BLEN_C 2 + #if MOTHERBOARD == 33 || MOTHERBOARD == 35 || MOTHERBOARD == 67 + #define FAN_PIN 9 // (Sprinter config) + #else + #define FAN_PIN 4 // IO pin. Buffer needed + #endif - #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 17 - #define LCD_PINS_D4 23 - #define LCD_PINS_D5 25 - #define LCD_PINS_D6 27 - #define LCD_PINS_D7 29 - - #ifdef REPRAP_DISCOUNT_SMART_CONTROLLER - #define BEEPER 37 + #if MOTHERBOARD == 77 + #define FAN_PIN 8 + #endif + + #if MOTHERBOARD == 35 + #define CONTROLLERFAN_PIN 10 //Pin used for the fan to cool controller + #endif + + #define PS_ON_PIN 12 + + #if defined(REPRAP_DISCOUNT_SMART_CONTROLLER) || defined(G3D_PANEL) + #define KILL_PIN 41 + #else + #define KILL_PIN -1 + #endif + + #if MOTHERBOARD == 35 + #define HEATER_0_PIN 8 + #else + #define HEATER_0_PIN 10 // EXTRUDER 1 + #endif + + #if MOTHERBOARD == 33 || MOTHERBOARD == 67 + #define HEATER_1_PIN -1 + #else + #define HEATER_1_PIN 9 // EXTRUDER 2 (FAN On Sprinter) + #endif + + #define HEATER_2_PIN -1 - #define BTN_EN1 31 - #define BTN_EN2 33 - #define BTN_ENC 35 + #if MOTHERBOARD == 77 + #define HEATER_0_PIN 10 + #define HEATER_1_PIN 12 + #define HEATER_2_PIN 6 + #endif + + #define TEMP_0_PIN 13 // ANALOG NUMBERING + #define TEMP_1_PIN 15 // ANALOG NUMBERING + #define TEMP_2_PIN -1 // ANALOG NUMBERING - #define SDCARDDETECT 49 + #if MOTHERBOARD == 35 + #define HEATER_BED_PIN -1 // NO BED + #else + #if MOTHERBOARD == 77 + #define HEATER_BED_PIN 9 // BED #else - //arduino pin which triggers an piezzo beeper - #define BEEPER 33 // Beeper on AUX-4 + #define HEATER_BED_PIN 8 // BED + #endif + #endif + #define TEMP_BED_PIN 14 // ANALOG NUMBERING - //buttons are directly attached using AUX-2 - #define BTN_EN1 37 - #define BTN_EN2 35 - #define BTN_ENC 31 //the click - #ifdef G3D_PANEL - #define SDCARDDETECT 49 - #else - #define SDCARDDETECT -1 // Ramps does not use this port - #endif + + #ifdef NUM_SERVOS + #define SERVO0_PIN 11 + + #if NUM_SERVOS > 1 + #define SERVO1_PIN 6 #endif - #else //old style panel with shift register - //arduino pin witch triggers an piezzo beeper - #define BEEPER 33 No Beeper added + #if NUM_SERVOS > 2 + #define SERVO2_PIN 5 + #endif - //buttons are attached to a shift register - // Not wired this yet - //#define SHIFT_CLK 38 - //#define SHIFT_LD 42 - //#define SHIFT_OUT 40 - //#define SHIFT_EN 17 + #if NUM_SERVOS > 3 + #define SERVO3_PIN 4 + #endif + #endif + + #ifdef TEMP_STAT_LEDS + #if MOTHERBOARD == 67 + #define STAT_LED_RED 6 + #define STAT_LED_BLUE 11 + #endif + #endif + + #ifdef ULTRA_LCD + + #ifdef NEWPANEL + #define LCD_PINS_RS 16 + #define LCD_PINS_ENABLE 17 + #define LCD_PINS_D4 23 + #define LCD_PINS_D5 25 + #define LCD_PINS_D6 27 + #define LCD_PINS_D7 29 + + #ifdef REPRAP_DISCOUNT_SMART_CONTROLLER + #define BEEPER 37 + + #define BTN_EN1 31 + #define BTN_EN2 33 + #define BTN_ENC 35 + + #define SDCARDDETECT 49 + #elif defined(LCD_I2C_PANELOLU2) + #define BTN_EN1 47 //reverse if the encoder turns the wrong way. + #define BTN_EN2 43 + #define BTN_ENC 32 + #define SDSS 53 + #define SDCARDDETECT -1 + #define KILL_PIN 41 + #elif defined(LCD_I2C_VIKI) + #define BTN_EN1 22 //reverse if the encoder turns the wrong way. + #define BTN_EN2 7 + #define BTN_ENC -1 + #define SDSS 53 + #define SDCARDDETECT 49 + #else + //arduino pin which triggers an piezzo beeper + #define BEEPER 33 // Beeper on AUX-4 + + //buttons are directly attached using AUX-2 + #ifdef REPRAPWORLD_KEYPAD + #define BTN_EN1 64 // encoder + #define BTN_EN2 59 // encoder + #define BTN_ENC 63 // enter button + #define SHIFT_OUT 40 // shift register + #define SHIFT_CLK 44 // shift register + #define SHIFT_LD 42 // shift register + #else + #define BTN_EN1 37 + #define BTN_EN2 35 + #define BTN_ENC 31 //the click + #endif + + #ifdef G3D_PANEL + #define SDCARDDETECT 49 + #else + #define SDCARDDETECT -1 // Ramps does not use this port + #endif - #define LCD_PINS_RS 16 - #define LCD_PINS_ENABLE 17 - #define LCD_PINS_D4 23 - #define LCD_PINS_D5 25 - #define LCD_PINS_D6 27 - #define LCD_PINS_D7 29 + #endif - //encoder rotation values - #define encrot0 0 - #define encrot1 2 - #define encrot2 3 - #define encrot3 1 - + #if MOTHERBOARD == 77 + #define BEEPER -1 + + #define LCD_PINS_RS 27 + #define LCD_PINS_ENABLE 29 + #define LCD_PINS_D4 37 + #define LCD_PINS_D5 35 + #define LCD_PINS_D6 33 + #define LCD_PINS_D7 31 + + //buttons + #define BTN_EN1 16 + #define BTN_EN2 17 + #define BTN_ENC 23 //the click + + #endif + #else //old style panel with shift register + //arduino pin witch triggers an piezzo beeper + #define BEEPER 33 //No Beeper added + + //buttons are attached to a shift register + // Not wired this yet + //#define SHIFT_CLK 38 + //#define SHIFT_LD 42 + //#define SHIFT_OUT 40 + //#define SHIFT_EN 17 - //bits in the shift register that carry the buttons for: - // left up center down right red - #define BL_LE 7 - #define BL_UP 6 - #define BL_MI 5 - #define BL_DW 4 - #define BL_RI 3 - #define BL_ST 2 - - #define BLEN_B 1 - #define BLEN_A 0 - #endif -#endif //ULTRA_LCD + #define LCD_PINS_RS 16 + #define LCD_PINS_ENABLE 17 + #define LCD_PINS_D4 23 + #define LCD_PINS_D5 25 + #define LCD_PINS_D6 27 + #define LCD_PINS_D7 29 + #endif + #endif //ULTRA_LCD #else // RAMPS_V_1_1 or RAMPS_V_1_2 as default (MOTHERBOARD == 3) @@ -509,7 +697,8 @@ #define TEMP_1_PIN -1 #define TEMP_2_PIN -1 #define TEMP_BED_PIN 1 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#endif// MOTHERBOARD == 33 || MOTHERBOARD == 34 + +#endif // MOTHERBOARD == 33 || MOTHERBOARD == 34 || MOTHERBOARD == 35 || MOTHERBOARD == 77 // SPI for Max6675 Thermocouple @@ -523,7 +712,7 @@ #define MAX6675_SS 49 #endif -#endif//MOTHERBOARD == 3 || MOTHERBOARD == 33 || MOTHERBOARD == 34 +#endif //MOTHERBOARD == 3 || MOTHERBOARD == 33 || MOTHERBOARD == 34 || MOTHERBOARD == 35 || MOTHERBOARD == 77 /**************************************************************************************** * Duemilanove w/ ATMega328P pin assignment @@ -566,13 +755,138 @@ #define HEATER_1_PIN -1 #define HEATER_2_PIN -1 #define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! -#define TEMP_1_PIN -1 -#define TEMP_2_PIN -1 +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 #define HEATER_BED_PIN -1 #define TEMP_BED_PIN -1 #endif +/**************************************************************************************** +* Elefu RA Board Pin Assignments +* +****************************************************************************************/ +#if MOTHERBOARD == 21 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega2560__ + #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. +#endif + + +#define X_STEP_PIN 49 +#define X_DIR_PIN 13 +#define X_ENABLE_PIN 48 +#define X_MIN_PIN 35 +#define X_MAX_PIN -1 //34 + +#define Y_STEP_PIN 11 +#define Y_DIR_PIN 9 +#define Y_ENABLE_PIN 12 +#define Y_MIN_PIN 33 +#define Y_MAX_PIN -1 //32 + +#define Z_STEP_PIN 7 +#define Z_DIR_PIN 6 +#define Z_ENABLE_PIN 8 +#define Z_MIN_PIN 31 +#define Z_MAX_PIN -1 //30 + +#define E2_STEP_PIN 43 +#define E2_DIR_PIN 47 +#define E2_ENABLE_PIN 42 + +#define E1_STEP_PIN 18 +#define E1_DIR_PIN 19 +#define E1_ENABLE_PIN 38 + +#define E0_STEP_PIN 40 +#define E0_DIR_PIN 41 +#define E0_ENABLE_PIN 37 + +#define SDPOWER -1 +#define LED_PIN -1 //Use +12V Aux port for LED Ring + +#define FAN_PIN 16 //5V PWM + +#define PS_ON_PIN 10 //Set to -1 if using a manual switch on the PWRSW Connector +#define SLEEP_WAKE_PIN 26 //This feature still needs work + +#define HEATER_0_PIN 45 //12V PWM1 +#define HEATER_1_PIN 46 //12V PWM2 +#define HEATER_2_PIN 17 //12V PWM3 +#define HEATER_BED_PIN 44 //DOUBLE 12V PWM +#define TEMP_0_PIN 3 //ANALOG NUMBERING +#define TEMP_1_PIN 2 //ANALOG NUMBERING +#define TEMP_2_PIN 1 //ANALOG NUMBERING +#define TEMP_BED_PIN 0 //ANALOG NUMBERING + +#define BEEPER 36 + +#define KILL_PIN -1 + +// M240 Triggers a camera by emulating a Canon RC-1 Remote +// Data from: http://www.doc-diy.net/photo/rc-1_hacked/ +#define PHOTOGRAPH_PIN 29 + +#ifdef RA_CONTROL_PANEL + + #define SDSS 53 + #define SDCARDDETECT 28 + + #define BTN_EN1 14 + #define BTN_EN2 39 + #define BTN_ENC 15 //the click + + #define BLEN_C 2 + #define BLEN_B 1 + #define BLEN_A 0 + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + +#endif //RA_CONTROL_PANEL + +#ifdef RA_DISCO + //variables for which pins the TLC5947 is using + #define TLC_CLOCK_PIN 25 + #define TLC_BLANK_PIN 23 + #define TLC_XLAT_PIN 22 + #define TLC_DATA_PIN 24 + + //We also need to define pin to port number mapping for the 2560 to match the pins listed above. If you change the TLC pins, update this as well per the 2560 datasheet! + //This currently only works with the RA Board. + #define TLC_CLOCK_BIT 3 //bit 3 on port A + #define TLC_CLOCK_PORT &PORTA //bit 3 on port A + + #define TLC_BLANK_BIT 1 //bit 1 on port A + #define TLC_BLANK_PORT &PORTA //bit 1 on port A + + #define TLC_DATA_BIT 2 //bit 2 on port A + #define TLC_DATA_PORT &PORTA //bit 2 on port A + + #define TLC_XLAT_BIT 0 //bit 0 on port A + #define TLC_XLAT_PORT &PORTA //bit 0 on port A + + //change this to match your situation. Lots of TLCs takes up the arduino SRAM very quickly, so be careful + //Leave it at at least 1 if you have enabled RA_LIGHTING + //The number of TLC5947 boards chained together for use with the animation, additional ones will repeat the animation on them, but are not individually addressable and mimic those before them. You can leave the default at 2 even if you only have 1 TLC5947 module. + #define NUM_TLCS 2 + + //These TRANS_ARRAY values let you change the order the LEDs on the lighting modules will animate for chase functions. + //Modify them according to your specific situation. + //NOTE: the array should be 8 long for every TLC you have. These defaults assume (2) TLCs. + #define TRANS_ARRAY {0, 1, 2, 3, 4, 5, 6, 7, 15, 14, 13, 12, 11, 10, 9, 8} //forwards + //#define TRANS_ARRAY {7, 6, 5, 4, 3, 2, 1, 0, 8, 9, 10, 11, 12, 13, 14, 15} //backwards +#endif //RA_LIGHTING + + +#endif /* Ra Board */ + + /**************************************************************************************** * Gen6 pin assignment * @@ -630,27 +944,33 @@ #define PS_ON_PIN -1 //changed @ rkoeppl 20110410 #define KILL_PIN -1 //changed @ drakelive 20120830 //our pin for debugging. - + #define DEBUG_PIN 0 - + //our RS485 pins - #define TX_ENABLE_PIN 12 - #define RX_ENABLE_PIN 13 + #define TX_ENABLE_PIN 12 + #define RX_ENABLE_PIN 13 + - #endif /**************************************************************************************** * Sanguinololu pin assignment * ****************************************************************************************/ -#if MOTHERBOARD == 63 +#if MOTHERBOARD == 64 +#define STB +#endif +#if MOTHERBOARD == 63 || MOTHERBOARD == 66 #define MELZI #endif -#if MOTHERBOARD == 62 || MOTHERBOARD == 63 +#if MOTHERBOARD == 65 +#define AZTEEG_X1 +#endif +#if MOTHERBOARD == 62 || MOTHERBOARD == 63 || MOTHERBOARD == 64 || MOTHERBOARD == 65 || MOTHERBOARD == 66 #undef MOTHERBOARD #define MOTHERBOARD 6 -#define SANGUINOLOLU_V_1_2 +#define SANGUINOLOLU_V_1_2 #endif #if MOTHERBOARD == 6 #define KNOWN_BOARD 1 @@ -677,14 +997,24 @@ #define LED_PIN -1 -#define FAN_PIN -1 -#if FAN_PIN == 12 || FAN_PIN ==13 -#define FAN_SOFT_PWM +#define FAN_PIN -1 + #if FAN_PIN == 12 || FAN_PIN ==13 + #define FAN_SOFT_PWM #endif #ifdef MELZI -#define LED_PIN 27 /* On some broken versions of the Sanguino libraries the pin definitions are wrong, which then needs LED_PIN as pin 28. But you better upgrade your Sanguino libraries! See #368. */ -#define FAN_PIN 4 + #define LED_PIN 27 /* On some broken versions of the Sanguino libraries the pin definitions are wrong, which then needs LED_PIN as pin 28. But you better upgrade your Sanguino libraries! See #368. */ + #define FAN_PIN 4 // Works for Panelolu2 too +#endif + +#ifdef STB + #define FAN_PIN 4 + // Uncomment this if you have the first generation (V1.10) of STBs board + #define LCD_PIN_BL 17 // LCD backlight LED +#endif + +#ifdef AZTEEG_X1 + #define FAN_PIN 4 #endif #define PS_ON_PIN -1 @@ -696,19 +1026,23 @@ #ifdef SANGUINOLOLU_V_1_2 -#define HEATER_BED_PIN 12 // (bed) -#define X_ENABLE_PIN 14 -#define Y_ENABLE_PIN 14 -#define Z_ENABLE_PIN 26 -#define E0_ENABLE_PIN 14 + #define HEATER_BED_PIN 12 // (bed) + #define X_ENABLE_PIN 14 + #define Y_ENABLE_PIN 14 + #define Z_ENABLE_PIN 26 + #define E0_ENABLE_PIN 14 + + #ifdef LCD_I2C_PANELOLU2 + #define FAN_PIN 4 // Uses Transistor1 (PWM) on Panelolu2's Sanguino Adapter Board to drive the fan + #endif #else -#define HEATER_BED_PIN 14 // (bed) +#define HEATER_BED_PIN 14 // (bed) #define X_ENABLE_PIN -1 #define Y_ENABLE_PIN -1 #define Z_ENABLE_PIN -1 -#define E0_ENABLE_PIN -1 +#define E0_ENABLE_PIN -1 #endif @@ -727,34 +1061,65 @@ //we have no buzzer installed #define BEEPER -1 //LCD Pins - #define LCD_PINS_RS 4 - #define LCD_PINS_ENABLE 17 - #define LCD_PINS_D4 30 - #define LCD_PINS_D5 29 - #define LCD_PINS_D6 28 - #define LCD_PINS_D7 27 - + #ifdef DOGLCD + // Pins for DOGM SPI LCD Support + #define DOGLCD_A0 30 + #define DOGLCD_CS 29 + // GLCD features + #define LCD_CONTRAST 1 + // Uncomment screen orientation + // #define LCD_SCREEN_ROT_0 + // #define LCD_SCREEN_ROT_90 + #define LCD_SCREEN_ROT_180 + // #define LCD_SCREEN_ROT_270 + #else // standard Hitachi LCD controller + #define LCD_PINS_RS 4 + #define LCD_PINS_ENABLE 17 + #define LCD_PINS_D4 30 + #define LCD_PINS_D5 29 + #define LCD_PINS_D6 28 + #define LCD_PINS_D7 27 + #endif //The encoder and click button - #define BTN_EN1 11 //must be a hardware interrupt pin - #define BTN_EN2 10 //must be hardware interrupt pin - #define BTN_ENC 16 //the switch + #define BTN_EN1 11 + #define BTN_EN2 10 + #ifdef LCD_I2C_PANELOLU2 + #ifdef MELZI + #define BTN_ENC 29 //the click switch + #define SDSS 30 //to use the SD card reader on the Panelolu2 rather than the melzi board + #else + #define BTN_ENC 30 //the click switch + #endif + #else + #define BTN_ENC 16 //the click switch + #endif //Panelolu2 //not connected to a pin - #define SDCARDDETECT -1 - - //from the same bit in the RAMPS Newpanel define - //encoder rotation values - #define encrot0 0 - #define encrot1 2 - #define encrot2 3 - #define encrot3 1 - - #define BLEN_C 2 - #define BLEN_B 1 - #define BLEN_A 0 - + #define SDCARDDETECT -1 + #endif //Newpanel #endif //Ultipanel - + + #ifdef MAKRPANEL + #define BEEPER 29 + // Pins for DOGM SPI LCD Support + #define DOGLCD_A0 30 + #define DOGLCD_CS 17 + #define LCD_PIN_BL 28 // backlight LED on PA3 + // GLCD features + #define LCD_CONTRAST 1 + // Uncomment screen orientation + #define LCD_SCREEN_ROT_0 + // #define LCD_SCREEN_ROT_90 + // #define LCD_SCREEN_ROT_180 + // #define LCD_SCREEN_ROT_270 + //The encoder and click button + #define BTN_EN1 11 + #define BTN_EN2 10 + #define BTN_ENC 16 //the click switch + //not connected to a pin + #define SDCARDDETECT -1 + #endif //Makrpanel + #endif @@ -770,6 +1135,8 @@ #endif #endif +#define LARGE_FLASH true + #define X_STEP_PIN 25 #define X_DIR_PIN 23 #define X_MIN_PIN 22 @@ -782,17 +1149,17 @@ #define Y_MAX_PIN 28 #define Y_ENABLE_PIN 29 -#define Z_STEP_PIN 37 +#define Z_STEP_PIN 37 #define Z_DIR_PIN 39 #define Z_MIN_PIN 30 #define Z_MAX_PIN 32 #define Z_ENABLE_PIN 35 -#define HEATER_BED_PIN 4 -#define TEMP_BED_PIN 10 +#define HEATER_BED_PIN 4 +#define TEMP_BED_PIN 10 #define HEATER_0_PIN 2 -#define TEMP_0_PIN 8 +#define TEMP_0_PIN 8 #define HEATER_1_PIN 3 #define TEMP_1_PIN 9 @@ -822,29 +1189,20 @@ //arduino pin witch triggers an piezzo beeper #define BEEPER 18 - #define LCD_PINS_RS 20 + #define LCD_PINS_RS 20 #define LCD_PINS_ENABLE 17 #define LCD_PINS_D4 16 - #define LCD_PINS_D5 21 + #define LCD_PINS_D5 21 #define LCD_PINS_D6 5 #define LCD_PINS_D7 6 - + //buttons are directly attached #define BTN_EN1 40 - #define BTN_EN2 42 - #define BTN_ENC 19 //the click - - #define BLEN_C 2 - #define BLEN_B 1 - #define BLEN_A 0 + #define BTN_EN2 42 + #define BTN_ENC 19 //the click #define SDCARDDETECT 38 - //encoder rotation values - #define encrot0 0 - #define encrot1 2 - #define encrot2 3 - #define encrot3 1 #else //old style panel with shift register //arduino pin witch triggers an piezzo beeper #define BEEPER 18 @@ -854,40 +1212,15 @@ #define SHIFT_LD 42 #define SHIFT_OUT 40 #define SHIFT_EN 17 - - #define LCD_PINS_RS 16 + + #define LCD_PINS_RS 16 #define LCD_PINS_ENABLE 5 #define LCD_PINS_D4 6 - #define LCD_PINS_D5 21 + #define LCD_PINS_D5 21 #define LCD_PINS_D6 20 #define LCD_PINS_D7 19 - - //encoder rotation values - #ifndef ULTIMAKERCONTROLLER - #define encrot0 0 - #define encrot1 2 - #define encrot2 3 - #define encrot3 1 - #else - #define encrot0 0 - #define encrot1 1 - #define encrot2 3 - #define encrot3 2 - - #endif - + #define SDCARDDETECT -1 - //bits in the shift register that carry the buttons for: - // left up center down right red - #define BL_LE 7 - #define BL_UP 6 - #define BL_MI 5 - #define BL_DW 4 - #define BL_RI 3 - #define BL_ST 2 - - #define BLEN_B 1 - #define BLEN_A 0 #endif #endif //ULTRA_LCD @@ -905,6 +1238,8 @@ #endif #endif +#define LARGE_FLASH true + #define X_STEP_PIN 25 #define X_DIR_PIN 23 #define X_MIN_PIN 15 @@ -917,17 +1252,17 @@ #define Y_MAX_PIN 16 #define Y_ENABLE_PIN 29 -#define Z_STEP_PIN 37 +#define Z_STEP_PIN 37 #define Z_DIR_PIN 39 #define Z_MIN_PIN 19 #define Z_MAX_PIN 18 #define Z_ENABLE_PIN 35 -#define HEATER_BED_PIN -1 -#define TEMP_BED_PIN -1 +#define HEATER_BED_PIN -1 +#define TEMP_BED_PIN -1 #define HEATER_0_PIN 2 -#define TEMP_0_PIN 8 +#define TEMP_0_PIN 8 #define HEATER_1_PIN 1 #define TEMP_1_PIN 1 @@ -951,15 +1286,133 @@ #define KILL_PIN -1 #define SUICIDE_PIN -1 //PIN that has to be turned on right after start, to keep power flowing. -#define LCD_PINS_RS 24 +#define LCD_PINS_RS 24 #define LCD_PINS_ENABLE 22 #define LCD_PINS_D4 36 -#define LCD_PINS_D5 34 +#define LCD_PINS_D5 34 #define LCD_PINS_D6 32 #define LCD_PINS_D7 30 #endif + +/**************************************************************************************** +* RUMBA pin assignment +* +****************************************************************************************/ +#if MOTHERBOARD == 80 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega2560__ + #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. +#endif + +#define X_STEP_PIN 17 +#define X_DIR_PIN 16 +#define X_ENABLE_PIN 48 +#define X_MIN_PIN 37 +#define X_MAX_PIN 36 + +#define Y_STEP_PIN 54 +#define Y_DIR_PIN 47 +#define Y_ENABLE_PIN 55 +#define Y_MIN_PIN 35 +#define Y_MAX_PIN 34 + +#define Z_STEP_PIN 57 +#define Z_DIR_PIN 56 +#define Z_ENABLE_PIN 62 +#define Z_MIN_PIN 33 +#define Z_MAX_PIN 32 + +#define E0_STEP_PIN 23 +#define E0_DIR_PIN 22 +#define E0_ENABLE_PIN 24 + +#define E1_STEP_PIN 26 +#define E1_DIR_PIN 25 +#define E1_ENABLE_PIN 27 + +#define E2_STEP_PIN 29 +#define E2_DIR_PIN 28 +#define E2_ENABLE_PIN 39 + +#define LED_PIN 13 + +#define FAN_PIN 7 +//additional FAN1 PIN (e.g. useful for electronics fan or light on/off) on PIN 8 + +#define PS_ON_PIN 45 +#define KILL_PIN 46 + +#if (TEMP_SENSOR_0==0) + #define TEMP_0_PIN -1 + #define HEATER_0_PIN -1 +#else + #define HEATER_0_PIN 2 // EXTRUDER 1 + #if (TEMP_SENSOR_0==-1) + #define TEMP_0_PIN 6 // ANALOG NUMBERING - connector *K1* on RUMBA thermocouple ADD ON is used + #else + #define TEMP_0_PIN 15 // ANALOG NUMBERING - default connector for thermistor *T0* on rumba board is used + #endif +#endif + +#if (TEMP_SENSOR_1==0) + #define TEMP_1_PIN -1 + #define HEATER_1_PIN -1 +#else + #define HEATER_1_PIN 3 // EXTRUDER 2 + #if (TEMP_SENSOR_1==-1) + #define TEMP_1_PIN 5 // ANALOG NUMBERING - connector *K2* on RUMBA thermocouple ADD ON is used + #else + #define TEMP_1_PIN 14 // ANALOG NUMBERING - default connector for thermistor *T1* on rumba board is used + #endif +#endif + +#if (TEMP_SENSOR_2==0) + #define TEMP_2_PIN -1 + #define HEATER_2_PIN -1 +#else + #define HEATER_2_PIN 6 // EXTRUDER 3 + #if (TEMP_SENSOR_2==-1) + #define TEMP_2_PIN 7 // ANALOG NUMBERING - connector *K3* on RUMBA thermocouple ADD ON is used <-- this can not be used when TEMP_SENSOR_BED is defined as thermocouple + #else + #define TEMP_2_PIN 13 // ANALOG NUMBERING - default connector for thermistor *T2* on rumba board is used + #endif +#endif + +//optional for extruder 4 or chamber: #define TEMP_X_PIN 12 // ANALOG NUMBERING - default connector for thermistor *T3* on rumba board is used +//optional FAN1 can be used as 4th heater output: #define HEATER_3_PIN 8 // EXTRUDER 4 + +#if (TEMP_SENSOR_BED==0) + #define TEMP_BED_PIN -1 + #define HEATER_BED_PIN -1 +#else + #define HEATER_BED_PIN 9 // BED + #if (TEMP_SENSOR_BED==-1) + #define TEMP_BED_PIN 7 // ANALOG NUMBERING - connector *K3* on RUMBA thermocouple ADD ON is used <-- this can not be used when TEMP_SENSOR_2 is defined as thermocouple + #else + #define TEMP_BED_PIN 11 // ANALOG NUMBERING - default connector for thermistor *THB* on rumba board is used + #endif +#endif + +#define SDPOWER -1 +#define SDSS 53 +#define SDCARDDETECT 49 +#define BEEPER 44 +#define LCD_PINS_RS 19 +#define LCD_PINS_ENABLE 42 +#define LCD_PINS_D4 18 +#define LCD_PINS_D5 38 +#define LCD_PINS_D6 41 +#define LCD_PINS_D7 40 +#define BTN_EN1 11 +#define BTN_EN2 12 +#define BTN_ENC 43 + +#endif //MOTHERBOARD==80 + + /**************************************************************************************** * Teensylu 0.7 / Printrboard pin assignments (AT90USB1286) * Requires the Teensyduino software with Teensy++ 2.0 selected in Arduino IDE! @@ -974,6 +1427,8 @@ #error Oops! Make sure you have 'Teensy++ 2.0' selected from the 'Tools -> Boards' menu. #endif +#define LARGE_FLASH true + #define X_STEP_PIN 0 #define X_DIR_PIN 1 #define X_ENABLE_PIN 39 @@ -1094,6 +1549,92 @@ #endif // MOTHERBOARD == 82 (Brainwave) +// +// SAV Mk-I +// ----------------------------------------------------------------------------------- +/**************************************************************************************** +* SAV MkI pin assignments (AT90USB1286) +* Requires the Teensyduino software with Teensy++ 2.0 selected in Arduino IDE! + http://www.pjrc.com/teensy/teensyduino.html + RepRap Clone Wars project board. +****************************************************************************************/ +#if MOTHERBOARD == 83 // SAV Mk-I +#define KNOWN_BOARD 1 +#define AT90USB 1286 // Disable MarlinSerial etc. + +#ifndef __AVR_AT90USB1286__ +#error Oops! Make sure you have 'Teensy++ 2.0' selected from the 'Tools -> Boards' menu. +#endif + +#define LARGE_FLASH true + + +#define X_STEP_PIN 0 +#define X_DIR_PIN 1 +#define X_ENABLE_PIN 39 + +#define Y_STEP_PIN 2 +#define Y_DIR_PIN 3 +#define Y_ENABLE_PIN 38 + +#define Z_STEP_PIN 4 +#define Z_DIR_PIN 5 +#define Z_ENABLE_PIN 23 + +#define E0_STEP_PIN 6 +#define E0_DIR_PIN 7 +#define E0_ENABLE_PIN 19 + +#define HEATER_0_PIN 21 // Extruder +#define HEATER_1_PIN -1 +#define HEATER_2_PIN -1 +#define HEATER_BED_PIN 20 // Bed +#define FAN_PIN 16 // Fan -- from Teensyduino environment. + // For the fan and Teensyduino uses a different pin mapping. + + #define X_STOP_PIN 13 + #define Y_STOP_PIN 14 + #define Z_STOP_PIN 15 + #define TEMP_0_PIN 7 // Extruder / Analog pin numbering + #define TEMP_BED_PIN 6 // Bed / Analog pin numbering + +#define TEMP_1_PIN -1 +#define TEMP_2_PIN -1 + +#define SDPOWER -1 +#define SDSS 20 // PB0 - 8 in marlin env. +#define LED_PIN -1 +#define PS_ON_PIN -1 +#define KILL_PIN -1 +#define ALARM_PIN -1 +#define SDCARDDETECT -1 + + +#ifndef SDSUPPORT + // these pins are defined in the SD library if building with SD support + #define SCK_PIN 9 + #define MISO_PIN 11 + #define MOSI_PIN 10 +#endif + +#define BEEPER -1 +#define LCD_PINS_RS -1 +#define LCD_PINS_ENABLE -1 +#define LCD_PINS_D4 -1 +#define LCD_PINS_D5 -1 +#define LCD_PINS_D6 -1 +#define LCD_PINS_D7 -1 +#define BTN_EN1 -1 +#define BTN_EN2 -1 +#define BTN_ENC -1 + +// For LCD SHIFT register LCD +#define SR_DATA_PIN 0 +#define SR_CLK_PIN 1 + +#endif // MOTHERBOARD == 83 + + /**************************************************************************************** * Gen3+ pin assignment * @@ -1124,7 +1665,7 @@ #define LED_PIN -1 -#define FAN_PIN -1 +#define FAN_PIN -1 #define PS_ON_PIN 14 #define KILL_PIN -1 @@ -1163,7 +1704,7 @@ * MISO (D 6) PB6 7| |34 PA6 (AI 6 / D25) * SCK (D 7) PB7 8| |33 PA7 (AI 7 / D24) * RST 9| |32 AREF -* VCC 10| |31 GND +* VCC 10| |31 GND * GND 11| |30 AVCC * XTAL2 12| |29 PC7 (D 23) * XTAL1 13| |28 PC6 (D 22) @@ -1220,7 +1761,7 @@ #define KILL_PIN -1 #define HEATER_0_PIN 4 -#define HEATER_1_PIN -1 // 12 +#define HEATER_1_PIN -1 // 12 #define HEATER_2_PIN -1 // 13 #define TEMP_0_PIN 0 //D27 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!! #define TEMP_1_PIN -1 // 1 @@ -1258,12 +1799,12 @@ #define E0_ENABLE_PIN 10 /* future proofing */ -#define __FS 20 -#define __FD 19 -#define __GS 18 -#define __GD 13 +#define __FS 20 +#define __FD 19 +#define __GS 18 +#define __GD 13 -#define UNUSED_PWM 14 /* PWM on LEFT connector */ +#define UNUSED_PWM 14 /* PWM on LEFT connector */ #define E1_STEP_PIN -1 // 21 #define E1_DIR_PIN -1 // 20 @@ -1282,18 +1823,18 @@ #define KILL_PIN -1 #define HEATER_0_PIN 3 /*DONE PWM on RIGHT connector */ -#define HEATER_1_PIN -1 +#define HEATER_1_PIN -1 #define HEATER_2_PIN -1 -#define HEATER_1_PIN -1 +#define HEATER_1_PIN -1 #define HEATER_2_PIN -1 -#define TEMP_0_PIN 0 // ANALOG INPUT NUMBERING +#define TEMP_0_PIN 0 // ANALOG INPUT NUMBERING #define TEMP_1_PIN 1 // ANALOG #define TEMP_2_PIN -1 // 2 #define HEATER_BED_PIN 4 #define TEMP_BED_PIN 2 // 1,2 or I2C -#define I2C_SCL 16 -#define I2C_SDA 17 +#define I2C_SCL 16 +#define I2C_SDA 17 #endif @@ -1307,6 +1848,8 @@ #error Oops! Make sure you have 'Arduino Mega 2560' selected from the 'Tools -> Boards' menu. #endif +#define LARGE_FLASH true + #define X_STEP_PIN 37 #define X_DIR_PIN 48 #define X_MIN_PIN 12 @@ -1332,7 +1875,7 @@ #define Z_MS2_PIN 67 #define HEATER_BED_PIN 3 -#define TEMP_BED_PIN 2 +#define TEMP_BED_PIN 2 #define HEATER_0_PIN 9 #define TEMP_0_PIN 0 @@ -1340,7 +1883,11 @@ #define HEATER_1_PIN 7 #define TEMP_1_PIN 1 +#ifdef BARICUDA +#define HEATER_2_PIN 6 +#else #define HEATER_2_PIN -1 +#endif #define TEMP_2_PIN -1 #define E0_STEP_PIN 34 @@ -1363,9 +1910,74 @@ #define LED_PIN 13 #define FAN_PIN 8 #define PS_ON_PIN 4 -#define KILL_PIN -1 +#define KILL_PIN -1 //80 with Smart Controller LCD #define SUICIDE_PIN -1 //PIN that has to be turned on right after start, to keep power flowing. +#ifdef ULTRA_LCD + #define KILL_PIN 80 + #ifdef NEWPANEL + //arduino pin which triggers an piezzo beeper + #define BEEPER 79 // Beeper on AUX-4 + #define LCD_PINS_RS 70 + #define LCD_PINS_ENABLE 71 + #define LCD_PINS_D4 72 + #define LCD_PINS_D5 73 + #define LCD_PINS_D6 74 + #define LCD_PINS_D7 75 + + //buttons are directly attached using AUX-2 + #define BTN_EN1 76 + #define BTN_EN2 77 + #define BTN_ENC 78 //the click + + #define BLEN_C 2 + #define BLEN_B 1 + #define BLEN_A 0 + + #define SDCARDDETECT 81 // Ramps does not use this port + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + #else //old style panel with shift register + //arduino pin witch triggers an piezzo beeper + #define BEEPER 33 No Beeper added + //buttons are attached to a shift register + // Not wired this yet + // #define SHIFT_CLK 38 + // #define SHIFT_LD 42 + // #define SHIFT_OUT 40 + // #define SHIFT_EN 17 + + #define LCD_PINS_RS 75 + #define LCD_PINS_ENABLE 17 + #define LCD_PINS_D4 23 + #define LCD_PINS_D5 25 + #define LCD_PINS_D6 27 + #define LCD_PINS_D7 29 + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + + //bits in the shift register that carry the buttons for: + // left up center down right red + #define BL_LE 7 + #define BL_UP 6 + #define BL_MI 5 + #define BL_DW 4 + #define BL_RI 3 + #define BL_ST 2 + #define BLEN_B 1 + #define BLEN_A 0 + #endif +#endif //ULTRA_LCD + + #endif /**************************************************************************************** @@ -1375,14 +1987,13 @@ #if MOTHERBOARD == 70 #define KNOWN_BOARD 1 -//////////////////FIX THIS////////////// #ifndef __AVR_ATmega2560__ #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. #endif - +#define LARGE_FLASH true #define X_STEP_PIN 26 #define X_DIR_PIN 28 @@ -1421,9 +2032,9 @@ #define HEATER_0_PIN 9 // EXTRUDER 1 #define HEATER_1_PIN 8 // EXTRUDER 2 (FAN On Sprinter) -#define HEATER_2_PIN -1 +#define HEATER_2_PIN -1 -#if TEMP_SENSOR_0 == -1 +#if TEMP_SENSOR_0 == -1 #define TEMP_0_PIN 8 // ANALOG NUMBERING #else #define TEMP_0_PIN 13 // ANALOG NUMBERING @@ -1435,21 +2046,21 @@ #define HEATER_BED_PIN 10 // BED #define TEMP_BED_PIN 14 // ANALOG NUMBERING -#define BEEPER 33 // Beeper on AUX-4 +#define BEEPER 33 // Beeper on AUX-4 #ifdef ULTRA_LCD #ifdef NEWPANEL //arduino pin which triggers an piezzo beeper - - #define LCD_PINS_RS 16 + + #define LCD_PINS_RS 16 #define LCD_PINS_ENABLE 17 #define LCD_PINS_D4 23 - #define LCD_PINS_D5 25 + #define LCD_PINS_D5 25 #define LCD_PINS_D6 27 #define LCD_PINS_D7 29 - + //buttons are directly attached using AUX-2 #define BTN_EN1 59 #define BTN_EN2 64 @@ -1471,12 +2082,220 @@ #endif +/**************************************************************************************** +* MegaTronics v2.0 +* +****************************************************************************************/ +#if MOTHERBOARD == 701 + #define KNOWN_BOARD 1 + + + #ifndef __AVR_ATmega2560__ + #error Oops! Make sure you have 'Arduino Mega' selected from the 'Tools -> Boards' menu. + #endif + + #define LARGE_FLASH true + + #define X_STEP_PIN 26 + #define X_DIR_PIN 27 + #define X_ENABLE_PIN 25 + #define X_MIN_PIN 37 + #define X_MAX_PIN 40 //2 //Max endstops default to disabled "-1", set to commented value to enable. + + #define Y_STEP_PIN 4 // A6 + #define Y_DIR_PIN 54 // A0 + #define Y_ENABLE_PIN 5 + #define Y_MIN_PIN 41 + #define Y_MAX_PIN 38 //15 + + #define Z_STEP_PIN 56 // A2 + #define Z_DIR_PIN 60 // A6 + #define Z_ENABLE_PIN 55 // A1 + #define Z_MIN_PIN 18 + #define Z_MAX_PIN 19 + + #define E0_STEP_PIN 35 + #define E0_DIR_PIN 36 + #define E0_ENABLE_PIN 34 + + #define E1_STEP_PIN 29 + #define E1_DIR_PIN 39 + #define E1_ENABLE_PIN 28 + + #define E2_STEP_PIN 23 + #define E2_DIR_PIN 24 + #define E2_ENABLE_PIN 22 + + #define SDPOWER -1 + #define SDSS 53 + #define LED_PIN 13 + + #define FAN_PIN 7 + #define FAN2_PIN 6 + #define PS_ON_PIN 12 + #define KILL_PIN -1 + + #define HEATER_0_PIN 9 // EXTRUDER 1 + #define HEATER_1_PIN 8 // EXTRUDER 2 + #define HEATER_2_PIN -1 + + #if TEMP_SENSOR_0 == -1 + #define TEMP_0_PIN 4 // ANALOG NUMBERING + #else + #define TEMP_0_PIN 13 // ANALOG NUMBERING + #endif + + + #if TEMP_SENSOR_1 == -1 + #define TEMP_1_PIN 8 // ANALOG NUMBERING + #else + #define TEMP_1_PIN 15 // ANALOG NUMBERING + #endif + + #define TEMP_2_PIN -1 // ANALOG NUMBERING + + #define HEATER_BED_PIN 10 // BED + + #if TEMP_SENSOR_BED == -1 + #define TEMP_BED_PIN 8 // ANALOG NUMBERING + #else + #define TEMP_BED_PIN 14 // ANALOG NUMBERING + #endif + + #define BEEPER 64 + + + #define LCD_PINS_RS 14 + #define LCD_PINS_ENABLE 15 + #define LCD_PINS_D4 30 + #define LCD_PINS_D5 31 + #define LCD_PINS_D6 32 + #define LCD_PINS_D7 33 + + + //buttons are directly attached using keypad + #define BTN_EN1 61 + #define BTN_EN2 59 + #define BTN_ENC 43 //the click + + #define BLEN_C 2 + #define BLEN_B 1 + #define BLEN_A 0 + + #define SDCARDDETECT -1 // Megatronics does not use this port + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + +#endif + + +/**************************************************************************************** +* Minitronics v1.0 +* +****************************************************************************************/ +#if MOTHERBOARD == 702 + #define KNOWN_BOARD 1 + + + #ifndef __AVR_ATmega1281__ + #error Oops! Make sure you have 'Minitronics ' selected from the 'Tools -> Boards' menu. + #endif + + #define LARGE_FLASH true + + #define X_STEP_PIN 48 + #define X_DIR_PIN 47 + #define X_ENABLE_PIN 49 + #define X_MIN_PIN 5 + #define X_MAX_PIN -1 //2 //Max endstops default to disabled "-1", set to commented value to enable. + + #define Y_STEP_PIN 39 // A6 + #define Y_DIR_PIN 40 // A0 + #define Y_ENABLE_PIN 38 + #define Y_MIN_PIN 2 + #define Y_MAX_PIN -1 //15 + + #define Z_STEP_PIN 42 // A2 + #define Z_DIR_PIN 43 // A6 + #define Z_ENABLE_PIN 41 // A1 + #define Z_MIN_PIN 6 + #define Z_MAX_PIN -1 + + #define E0_STEP_PIN 45 + #define E0_DIR_PIN 44 + #define E0_ENABLE_PIN 27 + + #define E1_STEP_PIN 36 + #define E1_DIR_PIN 35 + #define E1_ENABLE_PIN 37 + + #define E2_STEP_PIN -1 + #define E2_DIR_PIN -1 + #define E2_ENABLE_PIN -1 + + #define SDPOWER -1 + #define SDSS 16 + #define LED_PIN 46 + + #define FAN_PIN 9 + #define FAN2_PIN -1 + #define PS_ON_PIN -1 + #define KILL_PIN -1 + + #define HEATER_0_PIN 7 // EXTRUDER 1 + #define HEATER_1_PIN 8 // EXTRUDER 2 + #define HEATER_2_PIN -1 + + + #define TEMP_0_PIN 7 // ANALOG NUMBERING + #define TEMP_1_PIN 6 // ANALOG NUMBERING + #define TEMP_2_PIN -1 // ANALOG NUMBERING + + #define HEATER_BED_PIN 3 // BED + #define TEMP_BED_PIN 6 // ANALOG NUMBERING + + #define BEEPER -1 + + + #define LCD_PINS_RS -1 + #define LCD_PINS_ENABLE -1 + #define LCD_PINS_D4 -1 + #define LCD_PINS_D5 -1 + #define LCD_PINS_D6 -1 + #define LCD_PINS_D7 -1 + + + //buttons are directly attached using keypad + #define BTN_EN1 -1 + #define BTN_EN2 -1 + #define BTN_ENC -1 //the click + + #define BLEN_C 2 + #define BLEN_B 1 + #define BLEN_A 0 + + #define SDCARDDETECT -1 // Megatronics does not use this port + + //encoder rotation values + #define encrot0 0 + #define encrot1 2 + #define encrot2 3 + #define encrot3 1 + +#endif + + + #ifndef KNOWN_BOARD #error Unknown MOTHERBOARD value in configuration.h #endif //List of pins which to ignore when asked to change by gcode, 0 and 1 are RX and TX, do not mess with those! -#define _E0_PINS E0_STEP_PIN, E0_DIR_PIN, E0_ENABLE_PIN, HEATER_0_PIN, +#define _E0_PINS E0_STEP_PIN, E0_DIR_PIN, E0_ENABLE_PIN, HEATER_0_PIN, #if EXTRUDERS > 1 #define _E1_PINS E1_STEP_PIN, E1_DIR_PIN, E1_ENABLE_PIN, HEATER_1_PIN, #else @@ -1524,8 +2343,15 @@ #define Z_MAX_PIN -1 #endif +#ifdef DISABLE_MIN_ENDSTOPS +#define X_MIN_PIN -1 +#define Y_MIN_PIN -1 +#define Z_MIN_PIN -1 +#endif + #define SENSITIVE_PINS {0, 1, X_STEP_PIN, X_DIR_PIN, X_ENABLE_PIN, X_MIN_PIN, X_MAX_PIN, Y_STEP_PIN, Y_DIR_PIN, Y_ENABLE_PIN, Y_MIN_PIN, Y_MAX_PIN, Z_STEP_PIN, Z_DIR_PIN, Z_ENABLE_PIN, Z_MIN_PIN, Z_MAX_PIN, PS_ON_PIN, \ HEATER_BED_PIN, FAN_PIN, \ _E0_PINS _E1_PINS _E2_PINS \ analogInputToDigitalPin(TEMP_0_PIN), analogInputToDigitalPin(TEMP_1_PIN), analogInputToDigitalPin(TEMP_2_PIN), analogInputToDigitalPin(TEMP_BED_PIN) } #endif + diff --git a/Marlin/planner.cpp b/Marlin/planner.cpp index e45c9d7ff9203bfc35f42ecc44dfeee98ef69025..008c8d257ffa2bc6a3c94b3816752ccd75f3b8da 100644 --- a/Marlin/planner.cpp +++ b/Marlin/planner.cpp @@ -75,6 +75,15 @@ float max_e_jerk; float mintravelfeedrate; unsigned long axis_steps_per_sqr_second[NUM_AXIS]; +#ifdef ENABLE_AUTO_BED_LEVELING +// this holds the required transform to compensate for bed level +matrix_3x3 plan_bed_level_matrix = { + 1.0, 0.0, 0.0, + 0.0, 1.0, 0.0, + 0.0, 0.0, 1.0, +}; +#endif // #ifdef ENABLE_AUTO_BED_LEVELING + // The current position of the tool in absolute steps long position[4]; //rescaled from extern when axis_steps_per_unit are changed by gcode static float previous_speed[4]; // Speed of previous path line segment @@ -98,7 +107,7 @@ volatile unsigned char block_buffer_tail; // Index of the block to pro //=============================private variables ============================ //=========================================================================== #ifdef PREVENT_DANGEROUS_EXTRUDE -bool allow_cold_extrude=false; +float extrude_min_temp=EXTRUDE_MINTEMP; #endif #ifdef XY_FREQUENCY_LIMIT #define MAX_FREQ_TIME (1000000.0/XY_FREQUENCY_LIMIT) @@ -439,12 +448,20 @@ void check_axes_activity() unsigned char z_active = 0; unsigned char e_active = 0; unsigned char tail_fan_speed = fanSpeed; + #ifdef BARICUDA + unsigned char tail_valve_pressure = ValvePressure; + unsigned char tail_e_to_p_pressure = EtoPPressure; + #endif block_t *block; if(block_buffer_tail != block_buffer_head) { uint8_t block_index = block_buffer_tail; tail_fan_speed = block_buffer[block_index].fan_speed; + #ifdef BARICUDA + tail_valve_pressure = block_buffer[block_index].valve_pressure; + tail_e_to_p_pressure = block_buffer[block_index].e_to_p_pressure; + #endif while(block_index != block_buffer_head) { block = &block_buffer[block_index]; @@ -464,28 +481,40 @@ void check_axes_activity() disable_e1(); disable_e2(); } -#if FAN_PIN > -1 - #ifndef FAN_SOFT_PWM - #ifdef FAN_KICKSTART_TIME - static unsigned long fan_kick_end; - if (tail_fan_speed) { - if (fan_kick_end == 0) { - // Just starting up fan - run at full power. - fan_kick_end = millis() + FAN_KICKSTART_TIME; - tail_fan_speed = 255; - } else if (fan_kick_end > millis()) - // Fan still spinning up. - tail_fan_speed = 255; - } else { - fan_kick_end = 0; - } - #endif//FAN_KICKSTART_TIME - analogWrite(FAN_PIN,tail_fan_speed); +#if defined(FAN_PIN) && FAN_PIN > -1 + #ifdef FAN_KICKSTART_TIME + static unsigned long fan_kick_end; + if (tail_fan_speed) { + if (fan_kick_end == 0) { + // Just starting up fan - run at full power. + fan_kick_end = millis() + FAN_KICKSTART_TIME; + tail_fan_speed = 255; + } else if (fan_kick_end > millis()) + // Fan still spinning up. + tail_fan_speed = 255; + } else { + fan_kick_end = 0; + } + #endif//FAN_KICKSTART_TIME + #ifdef FAN_SOFT_PWM + fanSpeedSoftPwm = tail_fan_speed; + #else + analogWrite(FAN_PIN,tail_fan_speed); #endif//!FAN_SOFT_PWM #endif//FAN_PIN > -1 #ifdef AUTOTEMP getHighESpeed(); #endif + +#ifdef BARICUDA + #if defined(HEATER_1_PIN) && HEATER_1_PIN > -1 + analogWrite(HEATER_1_PIN,tail_valve_pressure); + #endif + + #if defined(HEATER_2_PIN) && HEATER_2_PIN > -1 + analogWrite(HEATER_2_PIN,tail_e_to_p_pressure); + #endif +#endif } @@ -493,7 +522,11 @@ float junction_deviation = 0.1; // Add a new linear movement to the buffer. steps_x, _y and _z is the absolute position in // mm. Microseconds specify how many microseconds the move should take to perform. To aid acceleration // calculation the caller must also provide the physical length of the line in millimeters. +#ifdef ENABLE_AUTO_BED_LEVELING +void plan_buffer_line(float x, float y, float z, const float &e, float feed_rate, const uint8_t &extruder) +#else void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate, const uint8_t &extruder) +#endif //ENABLE_AUTO_BED_LEVELING { // Calculate the buffer head after we push this byte int next_buffer_head = next_block_index(block_buffer_head); @@ -507,6 +540,10 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa lcd_update(); } +#ifdef ENABLE_AUTO_BED_LEVELING + apply_rotation_xyz(plan_bed_level_matrix, x, y, z); +#endif // ENABLE_AUTO_BED_LEVELING + // The target position of the tool in absolute steps // Calculate target position in absolute steps //this should be done after the wait, because otherwise a M92 code within the gcode disrupts this calculation somehow @@ -519,7 +556,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa #ifdef PREVENT_DANGEROUS_EXTRUDE if(target[E_AXIS]!=position[E_AXIS]) { - if(degHotend(active_extruder)busy = false; // Number of steps for each axis - block->steps_x = labs(target[X_AXIS]-position[X_AXIS]); - block->steps_y = labs(target[Y_AXIS]-position[Y_AXIS]); +#ifndef COREXY +// default non-h-bot planning +block->steps_x = labs(target[X_AXIS]-position[X_AXIS]); +block->steps_y = labs(target[Y_AXIS]-position[Y_AXIS]); +#else +// corexy planning +// these equations follow the form of the dA and dB equations on http://www.corexy.com/theory.html +block->steps_x = labs((target[X_AXIS]-position[X_AXIS]) + (target[Y_AXIS]-position[Y_AXIS])); +block->steps_y = labs((target[X_AXIS]-position[X_AXIS]) - (target[Y_AXIS]-position[Y_AXIS])); +#endif block->steps_z = labs(target[Z_AXIS]-position[Z_AXIS]); block->steps_e = labs(target[E_AXIS]-position[E_AXIS]); block->steps_e *= extrudemultiply; @@ -559,9 +604,14 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa } block->fan_speed = fanSpeed; + #ifdef BARICUDA + block->valve_pressure = ValvePressure; + block->e_to_p_pressure = EtoPPressure; + #endif // Compute direction bits for this block block->direction_bits = 0; +#ifndef COREXY if (target[X_AXIS] < position[X_AXIS]) { block->direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<direction_bits |= (1<active_extruder = extruder; //enable active axes + #ifdef COREXY + if((block->steps_x != 0) || (block->steps_y != 0)) + { + enable_x(); + enable_y(); + } + #else if(block->steps_x != 0) enable_x(); if(block->steps_y != 0) enable_y(); + #endif #ifndef Z_LATE_ENABLE if(block->steps_z != 0) enable_z(); #endif @@ -606,8 +674,13 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa } float delta_mm[4]; - delta_mm[X_AXIS] = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; - delta_mm[Y_AXIS] = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; + #ifndef COREXY + delta_mm[X_AXIS] = (target[X_AXIS]-position[X_AXIS])/axis_steps_per_unit[X_AXIS]; + delta_mm[Y_AXIS] = (target[Y_AXIS]-position[Y_AXIS])/axis_steps_per_unit[Y_AXIS]; + #else + delta_mm[X_AXIS] = ((target[X_AXIS]-position[X_AXIS]) + (target[Y_AXIS]-position[Y_AXIS]))/axis_steps_per_unit[X_AXIS]; + delta_mm[Y_AXIS] = ((target[X_AXIS]-position[X_AXIS]) - (target[Y_AXIS]-position[Y_AXIS]))/axis_steps_per_unit[Y_AXIS]; + #endif delta_mm[Z_AXIS] = (target[Z_AXIS]-position[Z_AXIS])/axis_steps_per_unit[Z_AXIS]; delta_mm[E_AXIS] = ((target[E_AXIS]-position[E_AXIS])/axis_steps_per_unit[E_AXIS])*extrudemultiply/100.0; if ( block->steps_x <=dropsegments && block->steps_y <=dropsegments && block->steps_z <=dropsegments ) @@ -727,7 +800,7 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa block->acceleration_st = axis_steps_per_sqr_second[Z_AXIS]; } block->acceleration = block->acceleration_st / steps_per_mm; - block->acceleration_rate = (long)((float)block->acceleration_st * 8.388608); + block->acceleration_rate = (long)((float)block->acceleration_st * (16777216.0 / (F_CPU / 8.0))); #if 0 // Use old jerk for now // Compute path unit vector @@ -863,8 +936,30 @@ void plan_buffer_line(const float &x, const float &y, const float &z, const floa st_wake_up(); } +#ifdef ENABLE_AUTO_BED_LEVELING +vector_3 plan_get_position() { + vector_3 position = vector_3(st_get_position_mm(X_AXIS), st_get_position_mm(Y_AXIS), st_get_position_mm(Z_AXIS)); + + //position.debug("in plan_get position"); + //plan_bed_level_matrix.debug("in plan_get bed_level"); + matrix_3x3 inverse = matrix_3x3::create_inverse(plan_bed_level_matrix); + //inverse.debug("in plan_get inverse"); + position.apply_rotation(inverse); + //position.debug("after rotation"); + + return position; +} +#endif // ENABLE_AUTO_BED_LEVELING + +#ifdef ENABLE_AUTO_BED_LEVELING +void plan_set_position(float x, float y, float z, const float &e) +{ + apply_rotation_xyz(plan_bed_level_matrix, x, y, z); +#else void plan_set_position(const float &x, const float &y, const float &z, const float &e) { +#endif // ENABLE_AUTO_BED_LEVELING + position[X_AXIS] = lround(x*axis_steps_per_unit[X_AXIS]); position[Y_AXIS] = lround(y*axis_steps_per_unit[Y_AXIS]); position[Z_AXIS] = lround(z*axis_steps_per_unit[Z_AXIS]); @@ -888,12 +983,12 @@ uint8_t movesplanned() return (block_buffer_head-block_buffer_tail + BLOCK_BUFFER_SIZE) & (BLOCK_BUFFER_SIZE - 1); } -void allow_cold_extrudes(bool allow) -{ #ifdef PREVENT_DANGEROUS_EXTRUDE - allow_cold_extrude=allow; -#endif +void set_extrude_min_temp(float temp) +{ + extrude_min_temp=temp; } +#endif // Calculate the steps/s^2 acceleration rates, based on the mm/s^s void reset_acceleration_rates() diff --git a/Marlin/planner.h b/Marlin/planner.h index 9a904e5776f17036dddb9dd241d3b576acd4c419..9df01746024785127136626670192b8909a8a349 100644 --- a/Marlin/planner.h +++ b/Marlin/planner.h @@ -26,6 +26,10 @@ #include "Marlin.h" +#ifdef ENABLE_AUTO_BED_LEVELING +#include "vector_3.h" +#endif // ENABLE_AUTO_BED_LEVELING + // This struct is used when buffering the setup for each linear movement "nominal" values are as specified in // the source g-code and may never actually be reached if acceleration management is active. typedef struct { @@ -60,18 +64,40 @@ typedef struct { unsigned long final_rate; // The minimal rate at exit unsigned long acceleration_st; // acceleration steps/sec^2 unsigned long fan_speed; + #ifdef BARICUDA + unsigned long valve_pressure; + unsigned long e_to_p_pressure; + #endif volatile char busy; } block_t; +#ifdef ENABLE_AUTO_BED_LEVELING +// this holds the required transform to compensate for bed level +extern matrix_3x3 plan_bed_level_matrix; +#endif // #ifdef ENABLE_AUTO_BED_LEVELING + // Initialize the motion plan subsystem void plan_init(); // Add a new linear movement to the buffer. x, y and z is the signed, absolute target position in // millimaters. Feed rate specifies the speed of the motion. + +#ifdef ENABLE_AUTO_BED_LEVELING +void plan_buffer_line(float x, float y, float z, const float &e, float feed_rate, const uint8_t &extruder); + +// Get the position applying the bed level matrix if enabled +vector_3 plan_get_position(); +#else void plan_buffer_line(const float &x, const float &y, const float &z, const float &e, float feed_rate, const uint8_t &extruder); +#endif // ENABLE_AUTO_BED_LEVELING // Set position. Used for G92 instructions. +#ifdef ENABLE_AUTO_BED_LEVELING +void plan_set_position(float x, float y, float z, const float &e); +#else void plan_set_position(const float &x, const float &y, const float &z, const float &e); +#endif // ENABLE_AUTO_BED_LEVELING + void plan_set_e_position(const float &e); @@ -135,7 +161,9 @@ FORCE_INLINE bool blocks_queued() return true; } -void allow_cold_extrudes(bool allow); +#ifdef PREVENT_DANGEROUS_EXTRUDE +void set_extrude_min_temp(float temp); +#endif void reset_acceleration_rates(); #endif diff --git a/Marlin/stepper.cpp b/Marlin/stepper.cpp index 3bc5e9c89248f54c52dfac14e78d98d44c33063e..f45ef7d4055006f1072fd2496c9b2ac524b987f6 100644 --- a/Marlin/stepper.cpp +++ b/Marlin/stepper.cpp @@ -29,7 +29,7 @@ #include "language.h" #include "cardreader.h" #include "speed_lookuptable.h" -#if DIGIPOTSS_PIN > -1 +#if defined(DIGIPOTSS_PIN) && DIGIPOTSS_PIN > -1 #include #endif @@ -48,8 +48,8 @@ block_t *current_block; // A pointer to the block currently being traced // Variables used by The Stepper Driver Interrupt static unsigned char out_bits; // The next stepping-bits to be output static long counter_x, // Counter variables for the bresenham line tracer - counter_y, - counter_z, + counter_y, + counter_z, counter_e; volatile static unsigned long step_events_completed; // The number of step events executed in the current block #ifdef ADVANCE @@ -69,9 +69,9 @@ volatile long endstops_stepsTotal,endstops_stepsDone; static volatile bool endstop_x_hit=false; static volatile bool endstop_y_hit=false; static volatile bool endstop_z_hit=false; -#ifdef ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED -bool abort_on_endstop_hit = false; -#endif +#ifdef ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED +bool abort_on_endstop_hit = false; +#endif static bool old_x_min_endstop=false; static bool old_x_max_endstop=false; @@ -184,20 +184,20 @@ void checkHitEndstops() SERIAL_ECHOPAIR(" Z:",(float)endstops_trigsteps[Z_AXIS]/axis_steps_per_unit[Z_AXIS]); LCD_MESSAGEPGM(MSG_ENDSTOPS_HIT "Z"); } - SERIAL_ECHOLN(""); + SERIAL_ECHOLN(""); endstop_x_hit=false; endstop_y_hit=false; - endstop_z_hit=false; -#ifdef ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED - if (abort_on_endstop_hit) - { + endstop_z_hit=false; +#ifdef ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED + if (abort_on_endstop_hit) + { card.sdprinting = false; card.closefile(); - quickStop(); + quickStop(); setTargetHotend0(0); setTargetHotend1(0); setTargetHotend2(0); - } + } #endif } } @@ -224,27 +224,27 @@ void enable_endstops(bool check) // | BLOCK 1 | BLOCK 2 | d // // time -----> -// -// The trapezoid is the shape the speed curve over time. It starts at block->initial_rate, accelerates -// first block->accelerate_until step_events_completed, then keeps going at constant speed until +// +// The trapezoid is the shape the speed curve over time. It starts at block->initial_rate, accelerates +// first block->accelerate_until step_events_completed, then keeps going at constant speed until // step_events_completed reaches block->decelerate_after after which it decelerates until the trapezoid generator is reset. // The slope of acceleration is calculated with the leib ramp alghorithm. void st_wake_up() { // TCNT1 = 0; - ENABLE_STEPPER_DRIVER_INTERRUPT(); + ENABLE_STEPPER_DRIVER_INTERRUPT(); } void step_wait(){ for(int8_t i=0; i < 6; i++){ } } - + FORCE_INLINE unsigned short calc_timer(unsigned short step_rate) { unsigned short timer; if(step_rate > MAX_STEP_FREQUENCY) step_rate = MAX_STEP_FREQUENCY; - + if(step_rate > 20000) { // If steprate > 20kHz >> step 4 times step_rate = (step_rate >> 2)&0x3fff; step_loops = 4; @@ -255,11 +255,11 @@ FORCE_INLINE unsigned short calc_timer(unsigned short step_rate) { } else { step_loops = 1; - } - + } + if(step_rate < (F_CPU/500000)) step_rate = (F_CPU/500000); step_rate -= (F_CPU/500000); // Correct for minimal speed - if(step_rate >= (8*256)){ // higher step rate + if(step_rate >= (8*256)){ // higher step rate unsigned short table_address = (unsigned short)&speed_lookuptable_fast[(unsigned char)(step_rate>>8)][0]; unsigned char tmp_step_rate = (step_rate & 0x00ff); unsigned short gain = (unsigned short)pgm_read_word_near(table_address+2); @@ -272,11 +272,11 @@ FORCE_INLINE unsigned short calc_timer(unsigned short step_rate) { timer = (unsigned short)pgm_read_word_near(table_address); timer -= (((unsigned short)pgm_read_word_near(table_address+2) * (unsigned char)(step_rate & 0x0007))>>3); } - if(timer < 100) { timer = 100; MYSERIAL.print(MSG_STEPPER_TO_HIGH); MYSERIAL.println(step_rate); }//(20kHz this should never happen) + if(timer < 100) { timer = 100; MYSERIAL.print(MSG_STEPPER_TOO_HIGH); MYSERIAL.println(step_rate); }//(20kHz this should never happen) return timer; } -// Initializes the trapezoid generator from the current block. Called whenever a new +// Initializes the trapezoid generator from the current block. Called whenever a new // block begins. FORCE_INLINE void trapezoid_generator_reset() { #ifdef ADVANCE @@ -284,7 +284,7 @@ FORCE_INLINE void trapezoid_generator_reset() { final_advance = current_block->final_advance; // Do E steps + advance steps e_steps[current_block->active_extruder] += ((advance >>8) - old_advance); - old_advance = advance >>8; + old_advance = advance >>8; #endif deceleration_time = 0; // step_rate to timer interval @@ -294,7 +294,7 @@ FORCE_INLINE void trapezoid_generator_reset() { acc_step_rate = current_block->initial_rate; acceleration_time = calc_timer(acc_step_rate); OCR1A = acceleration_time; - + // SERIAL_ECHO_START; // SERIAL_ECHOPGM("advance :"); // SERIAL_ECHO(current_block->advance/256.0); @@ -304,13 +304,13 @@ FORCE_INLINE void trapezoid_generator_reset() { // SERIAL_ECHO(current_block->initial_advance/256.0); // SERIAL_ECHOPGM("final advance :"); // SERIAL_ECHOLN(current_block->final_advance/256.0); - + } -// "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. -// It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. +// "The Stepper Driver Interrupt" - This timer interrupt is the workhorse. +// It pops blocks from the block_buffer and executes them by pulsing the stepper pins appropriately. ISR(TIMER1_COMPA_vect) -{ +{ // If there is no current block, attempt to pop one from the buffer if (current_block == NULL) { // Anything in the buffer? @@ -322,77 +322,141 @@ ISR(TIMER1_COMPA_vect) counter_y = counter_x; counter_z = counter_x; counter_e = counter_x; - step_events_completed = 0; - - #ifdef Z_LATE_ENABLE + step_events_completed = 0; + + #ifdef Z_LATE_ENABLE if(current_block->steps_z > 0) { enable_z(); OCR1A = 2000; //1ms wait return; } #endif - + // #ifdef ADVANCE // e_steps[current_block->active_extruder] = 0; // #endif - } + } else { OCR1A=2000; // 1kHz. - } - } + } + } if (current_block != NULL) { // Set directions TO DO This should be done once during init of trapezoid. Endstops -> interrupt out_bits = current_block->direction_bits; - // Set direction en check limit switches - if ((out_bits & (1<active_extruder != 0) + WRITE(X2_DIR_PIN, INVERT_X_DIR); + else + WRITE(X_DIR_PIN, INVERT_X_DIR); + } + #else WRITE(X_DIR_PIN, INVERT_X_DIR); - #endif + #endif count_direction[X_AXIS]=-1; + } + else{ + #ifdef DUAL_X_CARRIAGE + if (extruder_duplication_enabled){ + WRITE(X_DIR_PIN, !INVERT_X_DIR); + WRITE(X2_DIR_PIN, !INVERT_X_DIR); + } + else{ + if (current_block->active_extruder != 0) + WRITE(X2_DIR_PIN, !INVERT_X_DIR); + else + WRITE(X_DIR_PIN, !INVERT_X_DIR); + } + #else + WRITE(X_DIR_PIN, !INVERT_X_DIR); + #endif + count_direction[X_AXIS]=1; + } + if((out_bits & (1< -1 - bool x_min_endstop=(READ(X_MIN_PIN) != X_ENDSTOPS_INVERTING); - if(x_min_endstop && old_x_min_endstop && (current_block->steps_x > 0)) { - endstops_trigsteps[X_AXIS] = count_position[X_AXIS]; - endstop_x_hit=true; - step_events_completed = current_block->step_event_count; - } - old_x_min_endstop = x_min_endstop; - #endif + #ifdef DUAL_X_CARRIAGE + // with 2 x-carriages, endstops are only checked in the homing direction for the active extruder + if ((current_block->active_extruder == 0 && X_HOME_DIR == -1) + || (current_block->active_extruder != 0 && X2_HOME_DIR == -1)) + #endif + { + #if defined(X_MIN_PIN) && X_MIN_PIN > -1 + bool x_min_endstop=(READ(X_MIN_PIN) != X_MIN_ENDSTOP_INVERTING); + if(x_min_endstop && old_x_min_endstop && (current_block->steps_x > 0)) { + endstops_trigsteps[X_AXIS] = count_position[X_AXIS]; + endstop_x_hit=true; + step_events_completed = current_block->step_event_count; + } + old_x_min_endstop = x_min_endstop; + #endif + } } } else { // +direction - #if !defined COREXY //NOT COREXY - WRITE(X_DIR_PIN,!INVERT_X_DIR); - #endif - - count_direction[X_AXIS]=1; - CHECK_ENDSTOPS + CHECK_ENDSTOPS { - #if X_MAX_PIN > -1 - bool x_max_endstop=(READ(X_MAX_PIN) != X_ENDSTOPS_INVERTING); - if(x_max_endstop && old_x_max_endstop && (current_block->steps_x > 0)){ - endstops_trigsteps[X_AXIS] = count_position[X_AXIS]; - endstop_x_hit=true; - step_events_completed = current_block->step_event_count; - } - old_x_max_endstop = x_max_endstop; - #endif + #ifdef DUAL_X_CARRIAGE + // with 2 x-carriages, endstops are only checked in the homing direction for the active extruder + if ((current_block->active_extruder == 0 && X_HOME_DIR == 1) + || (current_block->active_extruder != 0 && X2_HOME_DIR == 1)) + #endif + { + #if defined(X_MAX_PIN) && X_MAX_PIN > -1 + bool x_max_endstop=(READ(X_MAX_PIN) != X_MAX_ENDSTOP_INVERTING); + if(x_max_endstop && old_x_max_endstop && (current_block->steps_x > 0)){ + endstops_trigsteps[X_AXIS] = count_position[X_AXIS]; + endstop_x_hit=true; + step_events_completed = current_block->step_event_count; + } + old_x_max_endstop = x_max_endstop; + #endif + } } } + #ifndef COREXY if ((out_bits & (1< -1 - bool y_min_endstop=(READ(Y_MIN_PIN) != Y_ENDSTOPS_INVERTING); + #if defined(Y_MIN_PIN) && Y_MIN_PIN > -1 + bool y_min_endstop=(READ(Y_MIN_PIN) != Y_MIN_ENDSTOP_INVERTING); if(y_min_endstop && old_y_min_endstop && (current_block->steps_y > 0)) { endstops_trigsteps[Y_AXIS] = count_position[Y_AXIS]; endstop_y_hit=true; @@ -403,14 +467,10 @@ ISR(TIMER1_COMPA_vect) } } else { // +direction - #if !defined COREXY //NOT COREXY - WRITE(Y_DIR_PIN,!INVERT_Y_DIR); - #endif - count_direction[Y_AXIS]=1; CHECK_ENDSTOPS { - #if Y_MAX_PIN > -1 - bool y_max_endstop=(READ(Y_MAX_PIN) != Y_ENDSTOPS_INVERTING); + #if defined(Y_MAX_PIN) && Y_MAX_PIN > -1 + bool y_max_endstop=(READ(Y_MAX_PIN) != Y_MAX_ENDSTOP_INVERTING); if(y_max_endstop && old_y_max_endstop && (current_block->steps_y > 0)){ endstops_trigsteps[Y_AXIS] = count_position[Y_AXIS]; endstop_y_hit=true; @@ -420,40 +480,19 @@ ISR(TIMER1_COMPA_vect) #endif } } - - - #ifdef COREXY //coreXY kinematics defined - if((current_block->steps_x >= current_block->steps_y)&&((out_bits & (1<steps_x >= current_block->steps_y)&&((out_bits & (1<steps_y > current_block->steps_x)&&((out_bits & (1<steps_y > current_block->steps_x)&&((out_bits & (1< -1 - bool z_min_endstop=(READ(Z_MIN_PIN) != Z_ENDSTOPS_INVERTING); + #if defined(Z_MIN_PIN) && Z_MIN_PIN > -1 + bool z_min_endstop=(READ(Z_MIN_PIN) != Z_MIN_ENDSTOP_INVERTING); if(z_min_endstop && old_z_min_endstop && (current_block->steps_z > 0)) { endstops_trigsteps[Z_AXIS] = count_position[Z_AXIS]; endstop_z_hit=true; @@ -466,15 +505,15 @@ ISR(TIMER1_COMPA_vect) else { // +direction WRITE(Z_DIR_PIN,!INVERT_Z_DIR); - #ifdef Z_DUAL_STEPPER_DRIVERS + #ifdef Z_DUAL_STEPPER_DRIVERS WRITE(Z2_DIR_PIN,!INVERT_Z_DIR); #endif count_direction[Z_AXIS]=1; CHECK_ENDSTOPS { - #if Z_MAX_PIN > -1 - bool z_max_endstop=(READ(Z_MAX_PIN) != Z_ENDSTOPS_INVERTING); + #if defined(Z_MAX_PIN) && Z_MAX_PIN > -1 + bool z_max_endstop=(READ(Z_MAX_PIN) != Z_MAX_ENDSTOP_INVERTING); if(z_max_endstop && old_z_max_endstop && (current_block->steps_z > 0)) { endstops_trigsteps[Z_AXIS] = count_position[Z_AXIS]; endstop_z_hit=true; @@ -495,10 +534,10 @@ ISR(TIMER1_COMPA_vect) count_direction[E_AXIS]=1; } #endif //!ADVANCE - - - for(int8_t i=0; i < step_loops; i++) { // Take multiple steps per interrupt (For high speed moves) + + + for(int8_t i=0; i < step_loops; i++) { // Take multiple steps per interrupt (For high speed moves) #ifndef AT90USB MSerial.checkRx(); // Check for serial chars. #endif @@ -513,88 +552,73 @@ ISR(TIMER1_COMPA_vect) else { e_steps[current_block->active_extruder]++; } - } + } #endif //ADVANCE - #if !defined COREXY counter_x += current_block->steps_x; if (counter_x > 0) { + #ifdef DUAL_X_CARRIAGE + if (extruder_duplication_enabled){ + WRITE(X_STEP_PIN, !INVERT_X_STEP_PIN); + WRITE(X2_STEP_PIN, !INVERT_X_STEP_PIN); + } + else { + if (current_block->active_extruder != 0) + WRITE(X2_STEP_PIN, !INVERT_X_STEP_PIN); + else + WRITE(X_STEP_PIN, !INVERT_X_STEP_PIN); + } + #else WRITE(X_STEP_PIN, !INVERT_X_STEP_PIN); + #endif counter_x -= current_block->step_event_count; count_position[X_AXIS]+=count_direction[X_AXIS]; + #ifdef DUAL_X_CARRIAGE + if (extruder_duplication_enabled){ + WRITE(X_STEP_PIN, INVERT_X_STEP_PIN); + WRITE(X2_STEP_PIN, INVERT_X_STEP_PIN); + } + else { + if (current_block->active_extruder != 0) + WRITE(X2_STEP_PIN, INVERT_X_STEP_PIN); + else + WRITE(X_STEP_PIN, INVERT_X_STEP_PIN); + } + #else WRITE(X_STEP_PIN, INVERT_X_STEP_PIN); + #endif } - + counter_y += current_block->steps_y; if (counter_y > 0) { WRITE(Y_STEP_PIN, !INVERT_Y_STEP_PIN); - counter_y -= current_block->step_event_count; - count_position[Y_AXIS]+=count_direction[Y_AXIS]; - WRITE(Y_STEP_PIN, INVERT_Y_STEP_PIN); - } - #endif - - #ifdef COREXY - counter_x += current_block->steps_x; - counter_y += current_block->steps_y; - - if ((counter_x > 0)&&!(counter_y>0)){ //X step only - WRITE(X_STEP_PIN, !INVERT_X_STEP_PIN); - WRITE(Y_STEP_PIN, !INVERT_Y_STEP_PIN); - counter_x -= current_block->step_event_count; - count_position[X_AXIS]+=count_direction[X_AXIS]; - WRITE(X_STEP_PIN, INVERT_X_STEP_PIN); - WRITE(Y_STEP_PIN, INVERT_Y_STEP_PIN); - } - - if (!(counter_x > 0)&&(counter_y>0)){ //Y step only - WRITE(X_STEP_PIN, !INVERT_X_STEP_PIN); - WRITE(Y_STEP_PIN, !INVERT_Y_STEP_PIN); - counter_y -= current_block->step_event_count; + + #ifdef Y_DUAL_STEPPER_DRIVERS + WRITE(Y2_STEP_PIN, !INVERT_Y_STEP_PIN); + #endif + + counter_y -= current_block->step_event_count; count_position[Y_AXIS]+=count_direction[Y_AXIS]; - WRITE(X_STEP_PIN, INVERT_X_STEP_PIN); WRITE(Y_STEP_PIN, INVERT_Y_STEP_PIN); - } - - if ((counter_x > 0)&&(counter_y>0)){ //step in both axes - if (((out_bits & (1<step_event_count; - WRITE(Y_STEP_PIN, INVERT_Y_STEP_PIN); - step_wait(); - count_position[X_AXIS]+=count_direction[X_AXIS]; - count_position[Y_AXIS]+=count_direction[Y_AXIS]; - WRITE(Y_STEP_PIN, !INVERT_Y_STEP_PIN); - counter_y -= current_block->step_event_count; - WRITE(Y_STEP_PIN, INVERT_Y_STEP_PIN); - } - else{ //X and Y in same direction - WRITE(X_STEP_PIN, !INVERT_X_STEP_PIN); - counter_x -= current_block->step_event_count; - WRITE(X_STEP_PIN, INVERT_X_STEP_PIN) ; - step_wait(); - count_position[X_AXIS]+=count_direction[X_AXIS]; - count_position[Y_AXIS]+=count_direction[Y_AXIS]; - WRITE(X_STEP_PIN, !INVERT_X_STEP_PIN); - counter_y -= current_block->step_event_count; - WRITE(X_STEP_PIN, INVERT_X_STEP_PIN); - } + + #ifdef Y_DUAL_STEPPER_DRIVERS + WRITE(Y2_STEP_PIN, INVERT_Y_STEP_PIN); + #endif } - #endif //corexy - + counter_z += current_block->steps_z; if (counter_z > 0) { WRITE(Z_STEP_PIN, !INVERT_Z_STEP_PIN); - #ifdef Z_DUAL_STEPPER_DRIVERS + #ifdef Z_DUAL_STEPPER_DRIVERS WRITE(Z2_STEP_PIN, !INVERT_Z_STEP_PIN); #endif - + counter_z -= current_block->step_event_count; count_position[Z_AXIS]+=count_direction[Z_AXIS]; WRITE(Z_STEP_PIN, INVERT_Z_STEP_PIN); - #ifdef Z_DUAL_STEPPER_DRIVERS + #ifdef Z_DUAL_STEPPER_DRIVERS WRITE(Z2_STEP_PIN, INVERT_Z_STEP_PIN); #endif } @@ -608,17 +632,17 @@ ISR(TIMER1_COMPA_vect) WRITE_E_STEP(INVERT_E_STEP_PIN); } #endif //!ADVANCE - step_events_completed += 1; + step_events_completed += 1; if(step_events_completed >= current_block->step_event_count) break; } // Calculare new timer value unsigned short timer; unsigned short step_rate; if (step_events_completed <= (unsigned long int)current_block->accelerate_until) { - + MultiU24X24toH16(acc_step_rate, acceleration_time, current_block->acceleration_rate); acc_step_rate += current_block->initial_rate; - + // upper limit if(acc_step_rate > current_block->nominal_rate) acc_step_rate = current_block->nominal_rate; @@ -634,13 +658,13 @@ ISR(TIMER1_COMPA_vect) //if(advance > current_block->advance) advance = current_block->advance; // Do E steps + advance steps e_steps[current_block->active_extruder] += ((advance >>8) - old_advance); - old_advance = advance >>8; - + old_advance = advance >>8; + #endif - } - else if (step_events_completed > (unsigned long int)current_block->decelerate_after) { + } + else if (step_events_completed > (unsigned long int)current_block->decelerate_after) { MultiU24X24toH16(step_rate, deceleration_time, current_block->acceleration_rate); - + if(step_rate > acc_step_rate) { // Check step_rate stays positive step_rate = current_block->final_rate; } @@ -663,7 +687,7 @@ ISR(TIMER1_COMPA_vect) if(advance < final_advance) advance = final_advance; // Do E steps + advance steps e_steps[current_block->active_extruder] += ((advance >>8) - old_advance); - old_advance = advance >>8; + old_advance = advance >>8; #endif //ADVANCE } else { @@ -672,12 +696,12 @@ ISR(TIMER1_COMPA_vect) step_loops = step_loops_nominal; } - // If current block is finished, reset pointer + // If current block is finished, reset pointer if (step_events_completed >= current_block->step_event_count) { current_block = NULL; plan_discard_current_block(); - } - } + } + } } #ifdef ADVANCE @@ -696,7 +720,7 @@ ISR(TIMER1_COMPA_vect) WRITE(E0_DIR_PIN, INVERT_E0_DIR); e_steps[0]++; WRITE(E0_STEP_PIN, !INVERT_E_STEP_PIN); - } + } else if (e_steps[0] > 0) { WRITE(E0_DIR_PIN, !INVERT_E0_DIR); e_steps[0]--; @@ -710,7 +734,7 @@ ISR(TIMER1_COMPA_vect) WRITE(E1_DIR_PIN, INVERT_E1_DIR); e_steps[1]++; WRITE(E1_STEP_PIN, !INVERT_E_STEP_PIN); - } + } else if (e_steps[1] > 0) { WRITE(E1_DIR_PIN, !INVERT_E1_DIR); e_steps[1]--; @@ -725,7 +749,7 @@ ISR(TIMER1_COMPA_vect) WRITE(E2_DIR_PIN, INVERT_E2_DIR); e_steps[2]++; WRITE(E2_STEP_PIN, !INVERT_E_STEP_PIN); - } + } else if (e_steps[2] > 0) { WRITE(E2_DIR_PIN, !INVERT_E2_DIR); e_steps[2]--; @@ -741,22 +765,29 @@ void st_init() { digipot_init(); //Initialize Digipot Motor Current microstep_init(); //Initialize Microstepping Pins - + //Initialize Dir Pins - #if X_DIR_PIN > -1 + #if defined(X_DIR_PIN) && X_DIR_PIN > -1 SET_OUTPUT(X_DIR_PIN); #endif - #if Y_DIR_PIN > -1 + #if defined(X2_DIR_PIN) && X2_DIR_PIN > -1 + SET_OUTPUT(X2_DIR_PIN); + #endif + #if defined(Y_DIR_PIN) && Y_DIR_PIN > -1 SET_OUTPUT(Y_DIR_PIN); + + #if defined(Y_DUAL_STEPPER_DRIVERS) && defined(Y2_DIR_PIN) && (Y2_DIR_PIN > -1) + SET_OUTPUT(Y2_DIR_PIN); + #endif #endif - #if Z_DIR_PIN > -1 + #if defined(Z_DIR_PIN) && Z_DIR_PIN > -1 SET_OUTPUT(Z_DIR_PIN); - #if defined(Z_DUAL_STEPPER_DRIVERS) && (Z2_DIR_PIN > -1) + #if defined(Z_DUAL_STEPPER_DRIVERS) && defined(Z2_DIR_PIN) && (Z2_DIR_PIN > -1) SET_OUTPUT(Z2_DIR_PIN); #endif #endif - #if E0_DIR_PIN > -1 + #if defined(E0_DIR_PIN) && E0_DIR_PIN > -1 SET_OUTPUT(E0_DIR_PIN); #endif #if defined(E1_DIR_PIN) && (E1_DIR_PIN > -1) @@ -768,24 +799,33 @@ void st_init() //Initialize Enable Pins - steppers default to disabled. - #if (X_ENABLE_PIN > -1) + #if defined(X_ENABLE_PIN) && X_ENABLE_PIN > -1 SET_OUTPUT(X_ENABLE_PIN); if(!X_ENABLE_ON) WRITE(X_ENABLE_PIN,HIGH); #endif - #if (Y_ENABLE_PIN > -1) + #if defined(X2_ENABLE_PIN) && X2_ENABLE_PIN > -1 + SET_OUTPUT(X2_ENABLE_PIN); + if(!X_ENABLE_ON) WRITE(X2_ENABLE_PIN,HIGH); + #endif + #if defined(Y_ENABLE_PIN) && Y_ENABLE_PIN > -1 SET_OUTPUT(Y_ENABLE_PIN); if(!Y_ENABLE_ON) WRITE(Y_ENABLE_PIN,HIGH); + + #if defined(Y_DUAL_STEPPER_DRIVERS) && defined(Y2_ENABLE_PIN) && (Y2_ENABLE_PIN > -1) + SET_OUTPUT(Y2_ENABLE_PIN); + if(!Y_ENABLE_ON) WRITE(Y2_ENABLE_PIN,HIGH); + #endif #endif - #if (Z_ENABLE_PIN > -1) + #if defined(Z_ENABLE_PIN) && Z_ENABLE_PIN > -1 SET_OUTPUT(Z_ENABLE_PIN); if(!Z_ENABLE_ON) WRITE(Z_ENABLE_PIN,HIGH); - - #if defined(Z_DUAL_STEPPER_DRIVERS) && (Z2_ENABLE_PIN > -1) + + #if defined(Z_DUAL_STEPPER_DRIVERS) && defined(Z2_ENABLE_PIN) && (Z2_ENABLE_PIN > -1) SET_OUTPUT(Z2_ENABLE_PIN); if(!Z_ENABLE_ON) WRITE(Z2_ENABLE_PIN,HIGH); #endif #endif - #if (E0_ENABLE_PIN > -1) + #if defined(E0_ENABLE_PIN) && (E0_ENABLE_PIN > -1) SET_OUTPUT(E0_ENABLE_PIN); if(!E_ENABLE_ON) WRITE(E0_ENABLE_PIN,HIGH); #endif @@ -799,100 +839,105 @@ void st_init() #endif //endstops and pullups - - #if X_MIN_PIN > -1 - SET_INPUT(X_MIN_PIN); + + #if defined(X_MIN_PIN) && X_MIN_PIN > -1 + SET_INPUT(X_MIN_PIN); #ifdef ENDSTOPPULLUP_XMIN WRITE(X_MIN_PIN,HIGH); #endif #endif - - #if Y_MIN_PIN > -1 - SET_INPUT(Y_MIN_PIN); + + #if defined(Y_MIN_PIN) && Y_MIN_PIN > -1 + SET_INPUT(Y_MIN_PIN); #ifdef ENDSTOPPULLUP_YMIN WRITE(Y_MIN_PIN,HIGH); #endif #endif - - #if Z_MIN_PIN > -1 - SET_INPUT(Z_MIN_PIN); + + #if defined(Z_MIN_PIN) && Z_MIN_PIN > -1 + SET_INPUT(Z_MIN_PIN); #ifdef ENDSTOPPULLUP_ZMIN WRITE(Z_MIN_PIN,HIGH); #endif #endif - - #if X_MAX_PIN > -1 - SET_INPUT(X_MAX_PIN); + + #if defined(X_MAX_PIN) && X_MAX_PIN > -1 + SET_INPUT(X_MAX_PIN); #ifdef ENDSTOPPULLUP_XMAX WRITE(X_MAX_PIN,HIGH); #endif #endif - - #if Y_MAX_PIN > -1 - SET_INPUT(Y_MAX_PIN); + + #if defined(Y_MAX_PIN) && Y_MAX_PIN > -1 + SET_INPUT(Y_MAX_PIN); #ifdef ENDSTOPPULLUP_YMAX WRITE(Y_MAX_PIN,HIGH); #endif #endif - - #if Z_MAX_PIN > -1 - SET_INPUT(Z_MAX_PIN); + + #if defined(Z_MAX_PIN) && Z_MAX_PIN > -1 + SET_INPUT(Z_MAX_PIN); #ifdef ENDSTOPPULLUP_ZMAX WRITE(Z_MAX_PIN,HIGH); #endif #endif - + //Initialize Step Pins - #if (X_STEP_PIN > -1) + #if defined(X_STEP_PIN) && (X_STEP_PIN > -1) SET_OUTPUT(X_STEP_PIN); WRITE(X_STEP_PIN,INVERT_X_STEP_PIN); disable_x(); - #endif - #if (Y_STEP_PIN > -1) + #endif + #if defined(X2_STEP_PIN) && (X2_STEP_PIN > -1) + SET_OUTPUT(X2_STEP_PIN); + WRITE(X2_STEP_PIN,INVERT_X_STEP_PIN); + disable_x(); + #endif + #if defined(Y_STEP_PIN) && (Y_STEP_PIN > -1) SET_OUTPUT(Y_STEP_PIN); WRITE(Y_STEP_PIN,INVERT_Y_STEP_PIN); + #if defined(Y_DUAL_STEPPER_DRIVERS) && defined(Y2_STEP_PIN) && (Y2_STEP_PIN > -1) + SET_OUTPUT(Y2_STEP_PIN); + WRITE(Y2_STEP_PIN,INVERT_Y_STEP_PIN); + #endif disable_y(); - #endif - #if (Z_STEP_PIN > -1) + #endif + #if defined(Z_STEP_PIN) && (Z_STEP_PIN > -1) SET_OUTPUT(Z_STEP_PIN); WRITE(Z_STEP_PIN,INVERT_Z_STEP_PIN); - #if defined(Z_DUAL_STEPPER_DRIVERS) && (Z2_STEP_PIN > -1) + #if defined(Z_DUAL_STEPPER_DRIVERS) && defined(Z2_STEP_PIN) && (Z2_STEP_PIN > -1) SET_OUTPUT(Z2_STEP_PIN); WRITE(Z2_STEP_PIN,INVERT_Z_STEP_PIN); #endif disable_z(); - #endif - #if (E0_STEP_PIN > -1) + #endif + #if defined(E0_STEP_PIN) && (E0_STEP_PIN > -1) SET_OUTPUT(E0_STEP_PIN); WRITE(E0_STEP_PIN,INVERT_E_STEP_PIN); disable_e0(); - #endif - #if defined(E1_STEP_PIN) && (E1_STEP_PIN > -1) + #endif + #if defined(E1_STEP_PIN) && (E1_STEP_PIN > -1) SET_OUTPUT(E1_STEP_PIN); WRITE(E1_STEP_PIN,INVERT_E_STEP_PIN); disable_e1(); - #endif - #if defined(E2_STEP_PIN) && (E2_STEP_PIN > -1) + #endif + #if defined(E2_STEP_PIN) && (E2_STEP_PIN > -1) SET_OUTPUT(E2_STEP_PIN); WRITE(E2_STEP_PIN,INVERT_E_STEP_PIN); disable_e2(); - #endif - - #ifdef CONTROLLERFAN_PIN - SET_OUTPUT(CONTROLLERFAN_PIN); //Set pin used for driver cooling fan #endif - + // waveform generation = 0100 = CTC TCCR1B &= ~(1< -1 + #if defined(DIGIPOTSS_PIN) && DIGIPOTSS_PIN > -1 digitalWrite(DIGIPOTSS_PIN,LOW); // take the SS pin low to select the chip SPI.transfer(address); // send in the address and value via SPI: SPI.transfer(value); @@ -989,12 +1189,12 @@ void digitalPotWrite(int address, int value) // From Arduino DigitalPotControl e void digipot_init() //Initialize Digipot Motor Current { - #if DIGIPOTSS_PIN > -1 + #if defined(DIGIPOTSS_PIN) && DIGIPOTSS_PIN > -1 const uint8_t digipot_motor_current[] = DIGIPOT_MOTOR_CURRENT; - - SPI.begin(); - pinMode(DIGIPOTSS_PIN, OUTPUT); - for(int i=0;i<=4;i++) + + SPI.begin(); + pinMode(DIGIPOTSS_PIN, OUTPUT); + for(int i=0;i<=4;i++) //digitalPotWrite(digipot_ch[i], digipot_motor_current[i]); digipot_current(i,digipot_motor_current[i]); #endif @@ -1002,7 +1202,7 @@ void digipot_init() //Initialize Digipot Motor Current void digipot_current(uint8_t driver, int current) { - #if DIGIPOTSS_PIN > -1 + #if defined(DIGIPOTSS_PIN) && DIGIPOTSS_PIN > -1 const uint8_t digipot_ch[] = DIGIPOT_CHANNELS; digitalPotWrite(digipot_ch[driver], current); #endif @@ -1010,7 +1210,7 @@ void digipot_current(uint8_t driver, int current) void microstep_init() { - #if X_MS1_PIN > -1 + #if defined(X_MS1_PIN) && X_MS1_PIN > -1 const uint8_t microstep_modes[] = MICROSTEP_MODES; pinMode(X_MS2_PIN,OUTPUT); pinMode(Y_MS2_PIN,OUTPUT); diff --git a/Marlin/stepper.h b/Marlin/stepper.h index 6e60a332e7093f4fd6110b0526f9eabeca19320e..3a1cb0b5d9fb4d6df02fc254676c1fbc3470a556 100644 --- a/Marlin/stepper.h +++ b/Marlin/stepper.h @@ -28,18 +28,25 @@ #define NORM_E_DIR() { if(current_block->active_extruder == 2) { WRITE(E2_DIR_PIN, !INVERT_E2_DIR); } else { if(current_block->active_extruder == 1) { WRITE(E1_DIR_PIN, !INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, !INVERT_E0_DIR); }}} #define REV_E_DIR() { if(current_block->active_extruder == 2) { WRITE(E2_DIR_PIN, INVERT_E2_DIR); } else { if(current_block->active_extruder == 1) { WRITE(E1_DIR_PIN, INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, INVERT_E0_DIR); }}} #elif EXTRUDERS > 1 - #define WRITE_E_STEP(v) { if(current_block->active_extruder == 1) { WRITE(E1_STEP_PIN, v); } else { WRITE(E0_STEP_PIN, v); }} - #define NORM_E_DIR() { if(current_block->active_extruder == 1) { WRITE(E1_DIR_PIN, !INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, !INVERT_E0_DIR); }} - #define REV_E_DIR() { if(current_block->active_extruder == 1) { WRITE(E1_DIR_PIN, INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, INVERT_E0_DIR); }} + #ifndef DUAL_X_CARRIAGE + #define WRITE_E_STEP(v) { if(current_block->active_extruder == 1) { WRITE(E1_STEP_PIN, v); } else { WRITE(E0_STEP_PIN, v); }} + #define NORM_E_DIR() { if(current_block->active_extruder == 1) { WRITE(E1_DIR_PIN, !INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, !INVERT_E0_DIR); }} + #define REV_E_DIR() { if(current_block->active_extruder == 1) { WRITE(E1_DIR_PIN, INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, INVERT_E0_DIR); }} + #else + extern bool extruder_duplication_enabled; + #define WRITE_E_STEP(v) { if(extruder_duplication_enabled) { WRITE(E0_STEP_PIN, v); WRITE(E1_STEP_PIN, v); } else if(current_block->active_extruder == 1) { WRITE(E1_STEP_PIN, v); } else { WRITE(E0_STEP_PIN, v); }} + #define NORM_E_DIR() { if(extruder_duplication_enabled) { WRITE(E0_DIR_PIN, !INVERT_E0_DIR); WRITE(E1_DIR_PIN, !INVERT_E1_DIR); } else if(current_block->active_extruder == 1) { WRITE(E1_DIR_PIN, !INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, !INVERT_E0_DIR); }} + #define REV_E_DIR() { if(extruder_duplication_enabled) { WRITE(E0_DIR_PIN, INVERT_E0_DIR); WRITE(E1_DIR_PIN, INVERT_E1_DIR); } else if(current_block->active_extruder == 1) { WRITE(E1_DIR_PIN, INVERT_E1_DIR); } else { WRITE(E0_DIR_PIN, INVERT_E0_DIR); }} + #endif #else #define WRITE_E_STEP(v) WRITE(E0_STEP_PIN, v) #define NORM_E_DIR() WRITE(E0_DIR_PIN, !INVERT_E0_DIR) #define REV_E_DIR() WRITE(E0_DIR_PIN, INVERT_E0_DIR) #endif -#ifdef ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED -extern bool abort_on_endstop_hit; -#endif +#ifdef ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED +extern bool abort_on_endstop_hit; +#endif // Initialize and start the stepper motor subsystem void st_init(); @@ -54,6 +61,11 @@ void st_set_e_position(const long &e); // Get current position in steps long st_get_position(uint8_t axis); +#ifdef ENABLE_AUTO_BED_LEVELING +// Get current position in mm +float st_get_position_mm(uint8_t axis); +#endif //ENABLE_AUTO_BED_LEVELING + // The stepper subsystem goes to sleep when it runs out of things to execute. Call this // to notify the subsystem that it is time to go to work. void st_wake_up(); @@ -80,4 +92,10 @@ void digipot_current(uint8_t driver, int current); void microstep_init(); void microstep_readings(); +#ifdef BABYSTEPPING + void babystep(const uint8_t axis,const bool direction); // perform a short step with a single stepper motor, outside of any convention +#endif + + + #endif diff --git a/Marlin/temperature.cpp b/Marlin/temperature.cpp index 16c269ac270150b01f6019829de6de030adbe392..0d344769cbd87af2311dcf4c88b065429a7782ac 100644 --- a/Marlin/temperature.cpp +++ b/Marlin/temperature.cpp @@ -40,10 +40,13 @@ int target_temperature[EXTRUDERS] = { 0 }; int target_temperature_bed = 0; int current_temperature_raw[EXTRUDERS] = { 0 }; -float current_temperature[EXTRUDERS] = { 0 }; +float current_temperature[EXTRUDERS] = { 0.0 }; int current_temperature_bed_raw = 0; -float current_temperature_bed = 0; - +float current_temperature_bed = 0.0; +#ifdef TEMP_SENSOR_1_AS_REDUNDANT + int redundant_temperature_raw = 0; + float redundant_temperature = 0.0; +#endif #ifdef PIDTEMP float Kp=DEFAULT_Kp; float Ki=(DEFAULT_Ki*PID_dT); @@ -59,6 +62,13 @@ float current_temperature_bed = 0; float bedKd=(DEFAULT_bedKd/PID_dT); #endif //PIDTEMPBED +#ifdef FAN_SOFT_PWM + unsigned char fanSpeedSoftPwm; +#endif + +#ifdef BABYSTEPPING + volatile int babystepsTodo[3]={0,0,0}; +#endif //=========================================================================== //=============================private variables============================ @@ -99,17 +109,20 @@ static volatile bool temp_meas_ready = false; #ifdef FAN_SOFT_PWM static unsigned char soft_pwm_fan; #endif +#if (defined(EXTRUDER_0_AUTO_FAN_PIN) && EXTRUDER_0_AUTO_FAN_PIN > -1) || \ + (defined(EXTRUDER_1_AUTO_FAN_PIN) && EXTRUDER_1_AUTO_FAN_PIN > -1) || \ + (defined(EXTRUDER_2_AUTO_FAN_PIN) && EXTRUDER_2_AUTO_FAN_PIN > -1) + static unsigned long extruder_autofan_last_check; +#endif - - #if EXTRUDERS > 3 -# error Unsupported number of extruders + # error Unsupported number of extruders #elif EXTRUDERS > 2 -# define ARRAY_BY_EXTRUDERS(v1, v2, v3) { v1, v2, v3 } + # define ARRAY_BY_EXTRUDERS(v1, v2, v3) { v1, v2, v3 } #elif EXTRUDERS > 1 -# define ARRAY_BY_EXTRUDERS(v1, v2, v3) { v1, v2 } + # define ARRAY_BY_EXTRUDERS(v1, v2, v3) { v1, v2 } #else -# define ARRAY_BY_EXTRUDERS(v1, v2, v3) { v1 } + # define ARRAY_BY_EXTRUDERS(v1, v2, v3) { v1 } #endif // Init min and max temp with extreme values to prevent false errors during startup @@ -121,8 +134,14 @@ static int maxttemp[EXTRUDERS] = ARRAY_BY_EXTRUDERS( 16383, 16383, 16383 ); #ifdef BED_MAXTEMP static int bed_maxttemp_raw = HEATER_BED_RAW_HI_TEMP; #endif -static void *heater_ttbl_map[EXTRUDERS] = ARRAY_BY_EXTRUDERS( (void *)HEATER_0_TEMPTABLE, (void *)HEATER_1_TEMPTABLE, (void *)HEATER_2_TEMPTABLE ); -static uint8_t heater_ttbllen_map[EXTRUDERS] = ARRAY_BY_EXTRUDERS( HEATER_0_TEMPTABLE_LEN, HEATER_1_TEMPTABLE_LEN, HEATER_2_TEMPTABLE_LEN ); + +#ifdef TEMP_SENSOR_1_AS_REDUNDANT + static void *heater_ttbl_map[2] = {(void *)HEATER_0_TEMPTABLE, (void *)HEATER_1_TEMPTABLE }; + static uint8_t heater_ttbllen_map[2] = { HEATER_0_TEMPTABLE_LEN, HEATER_1_TEMPTABLE_LEN }; +#else + static void *heater_ttbl_map[EXTRUDERS] = ARRAY_BY_EXTRUDERS( (void *)HEATER_0_TEMPTABLE, (void *)HEATER_1_TEMPTABLE, (void *)HEATER_2_TEMPTABLE ); + static uint8_t heater_ttbllen_map[EXTRUDERS] = ARRAY_BY_EXTRUDERS( HEATER_0_TEMPTABLE_LEN, HEATER_1_TEMPTABLE_LEN, HEATER_2_TEMPTABLE_LEN ); +#endif static float analog2temp(int raw, uint8_t e); static float analog2tempBed(int raw); @@ -133,6 +152,10 @@ int watch_start_temp[EXTRUDERS] = ARRAY_BY_EXTRUDERS(0,0,0); unsigned long watchmillis[EXTRUDERS] = ARRAY_BY_EXTRUDERS(0,0,0); #endif //WATCH_TEMP_PERIOD +#ifndef SOFT_PWM_SCALE +#define SOFT_PWM_SCALE 0 +#endif + //=========================================================================== //============================= functions ============================ //=========================================================================== @@ -154,28 +177,28 @@ void PID_autotune(float temp, int extruder, int ncycles) float Kp, Ki, Kd; float max = 0, min = 10000; - if ((extruder > EXTRUDERS) + if ((extruder > EXTRUDERS) #if (TEMP_BED_PIN <= -1) - ||(extruder < 0) - #endif - ){ - SERIAL_ECHOLN("PID Autotune failed. Bad extruder number."); - return; - } + ||(extruder < 0) + #endif + ){ + SERIAL_ECHOLN("PID Autotune failed. Bad extruder number."); + return; + } SERIAL_ECHOLN("PID Autotune start"); disable_heater(); // switch off all heaters. - if (extruder<0) - { - soft_pwm_bed = (MAX_BED_POWER)/2; - bias = d = (MAX_BED_POWER)/2; - } - else - { - soft_pwm[extruder] = (PID_MAX)/2; - bias = d = (PID_MAX)/2; + if (extruder<0) + { + soft_pwm_bed = (MAX_BED_POWER)/2; + bias = d = (MAX_BED_POWER)/2; + } + else + { + soft_pwm[extruder] = (PID_MAX)/2; + bias = d = (PID_MAX)/2; } @@ -193,10 +216,10 @@ void PID_autotune(float temp, int extruder, int ncycles) if(heating == true && input > temp) { if(millis() - t2 > 5000) { heating=false; - if (extruder<0) - soft_pwm_bed = (bias - d) >> 1; - else - soft_pwm[extruder] = (bias - d) >> 1; + if (extruder<0) + soft_pwm_bed = (bias - d) >> 1; + else + soft_pwm[extruder] = (bias - d) >> 1; t1=millis(); t_high=t1 - t2; max=temp; @@ -225,7 +248,7 @@ void PID_autotune(float temp, int extruder, int ncycles) Kp = 0.6*Ku; Ki = 2*Kp/Tu; Kd = Kp*Tu/8; - SERIAL_PROTOCOLLNPGM(" Clasic PID ") + SERIAL_PROTOCOLLNPGM(" Clasic PID "); SERIAL_PROTOCOLPGM(" Kp: "); SERIAL_PROTOCOLLN(Kp); SERIAL_PROTOCOLPGM(" Ki: "); SERIAL_PROTOCOLLN(Ki); SERIAL_PROTOCOLPGM(" Kd: "); SERIAL_PROTOCOLLN(Kd); @@ -247,28 +270,28 @@ void PID_autotune(float temp, int extruder, int ncycles) */ } } - if (extruder<0) - soft_pwm_bed = (bias + d) >> 1; - else - soft_pwm[extruder] = (bias + d) >> 1; + if (extruder<0) + soft_pwm_bed = (bias + d) >> 1; + else + soft_pwm[extruder] = (bias + d) >> 1; cycles++; min=temp; } } } if(input > (temp + 20)) { - SERIAL_PROTOCOLLNPGM("PID Autotune failed! Temperature to high"); + SERIAL_PROTOCOLLNPGM("PID Autotune failed! Temperature too high"); return; } if(millis() - temp_millis > 2000) { - int p; - if (extruder<0){ - p=soft_pwm_bed; - SERIAL_PROTOCOLPGM("ok B:"); - }else{ - p=soft_pwm[extruder]; - SERIAL_PROTOCOLPGM("ok T:"); - } + int p; + if (extruder<0){ + p=soft_pwm_bed; + SERIAL_PROTOCOLPGM("ok B:"); + }else{ + p=soft_pwm[extruder]; + SERIAL_PROTOCOLPGM("ok T:"); + } SERIAL_PROTOCOL(input); SERIAL_PROTOCOLPGM(" @:"); @@ -281,7 +304,7 @@ void PID_autotune(float temp, int extruder, int ncycles) return; } if(cycles > ncycles) { - SERIAL_PROTOCOLLNPGM("PID Autotune finished ! Place the Kp, Ki and Kd constants in the configuration.h"); + SERIAL_PROTOCOLLNPGM("PID Autotune finished! Put the Kp, Ki and Kd constants into Configuration.h"); return; } lcd_update(); @@ -306,6 +329,78 @@ int getHeaterPower(int heater) { return soft_pwm[heater]; } +#if (defined(EXTRUDER_0_AUTO_FAN_PIN) && EXTRUDER_0_AUTO_FAN_PIN > -1) || \ + (defined(EXTRUDER_1_AUTO_FAN_PIN) && EXTRUDER_1_AUTO_FAN_PIN > -1) || \ + (defined(EXTRUDER_2_AUTO_FAN_PIN) && EXTRUDER_2_AUTO_FAN_PIN > -1) + + #if defined(FAN_PIN) && FAN_PIN > -1 + #if EXTRUDER_0_AUTO_FAN_PIN == FAN_PIN + #error "You cannot set EXTRUDER_0_AUTO_FAN_PIN equal to FAN_PIN" + #endif + #if EXTRUDER_1_AUTO_FAN_PIN == FAN_PIN + #error "You cannot set EXTRUDER_1_AUTO_FAN_PIN equal to FAN_PIN" + #endif + #if EXTRUDER_2_AUTO_FAN_PIN == FAN_PIN + #error "You cannot set EXTRUDER_2_AUTO_FAN_PIN equal to FAN_PIN" + #endif + #endif + +void setExtruderAutoFanState(int pin, bool state) +{ + unsigned char newFanSpeed = (state != 0) ? EXTRUDER_AUTO_FAN_SPEED : 0; + // this idiom allows both digital and PWM fan outputs (see M42 handling). + pinMode(pin, OUTPUT); + digitalWrite(pin, newFanSpeed); + analogWrite(pin, newFanSpeed); +} + +void checkExtruderAutoFans() +{ + uint8_t fanState = 0; + + // which fan pins need to be turned on? + #if defined(EXTRUDER_0_AUTO_FAN_PIN) && EXTRUDER_0_AUTO_FAN_PIN > -1 + if (current_temperature[0] > EXTRUDER_AUTO_FAN_TEMPERATURE) + fanState |= 1; + #endif + #if defined(EXTRUDER_1_AUTO_FAN_PIN) && EXTRUDER_1_AUTO_FAN_PIN > -1 + if (current_temperature[1] > EXTRUDER_AUTO_FAN_TEMPERATURE) + { + if (EXTRUDER_1_AUTO_FAN_PIN == EXTRUDER_0_AUTO_FAN_PIN) + fanState |= 1; + else + fanState |= 2; + } + #endif + #if defined(EXTRUDER_2_AUTO_FAN_PIN) && EXTRUDER_2_AUTO_FAN_PIN > -1 + if (current_temperature[2] > EXTRUDER_AUTO_FAN_TEMPERATURE) + { + if (EXTRUDER_2_AUTO_FAN_PIN == EXTRUDER_0_AUTO_FAN_PIN) + fanState |= 1; + else if (EXTRUDER_2_AUTO_FAN_PIN == EXTRUDER_1_AUTO_FAN_PIN) + fanState |= 2; + else + fanState |= 4; + } + #endif + + // update extruder auto fan states + #if defined(EXTRUDER_0_AUTO_FAN_PIN) && EXTRUDER_0_AUTO_FAN_PIN > -1 + setExtruderAutoFanState(EXTRUDER_0_AUTO_FAN_PIN, (fanState & 1) != 0); + #endif + #if defined(EXTRUDER_1_AUTO_FAN_PIN) && EXTRUDER_1_AUTO_FAN_PIN > -1 + if (EXTRUDER_1_AUTO_FAN_PIN != EXTRUDER_0_AUTO_FAN_PIN) + setExtruderAutoFanState(EXTRUDER_1_AUTO_FAN_PIN, (fanState & 2) != 0); + #endif + #if defined(EXTRUDER_2_AUTO_FAN_PIN) && EXTRUDER_2_AUTO_FAN_PIN > -1 + if (EXTRUDER_2_AUTO_FAN_PIN != EXTRUDER_0_AUTO_FAN_PIN + && EXTRUDER_2_AUTO_FAN_PIN != EXTRUDER_1_AUTO_FAN_PIN) + setExtruderAutoFanState(EXTRUDER_2_AUTO_FAN_PIN, (fanState & 4) != 0); + #endif +} + +#endif // any extruder auto fan pins set + void manage_heater() { float pid_input; @@ -325,10 +420,10 @@ void manage_heater() #ifndef PID_OPENLOOP pid_error[e] = target_temperature[e] - pid_input; if(pid_error[e] > PID_FUNCTIONAL_RANGE) { - pid_output = PID_MAX; + pid_output = BANG_MAX; pid_reset[e] = true; } - else if(pid_error[e] < -PID_FUNCTIONAL_RANGE) { + else if(pid_error[e] < -PID_FUNCTIONAL_RANGE || target_temperature[e] == 0) { pid_output = 0; pid_reset[e] = true; } @@ -345,10 +440,9 @@ void manage_heater() //K1 defined in Configuration.h in the PID settings #define K2 (1.0-K1) dTerm[e] = (Kd * (pid_input - temp_dState[e]))*K2 + (K1 * dTerm[e]); - temp_dState[e] = pid_input; - pid_output = constrain(pTerm[e] + iTerm[e] - dTerm[e], 0, PID_MAX); } + temp_dState[e] = pid_input; #else pid_output = constrain(target_temperature[e], 0, PID_MAX); #endif //PID_OPENLOOP @@ -396,10 +490,31 @@ void manage_heater() } } #endif - + #ifdef TEMP_SENSOR_1_AS_REDUNDANT + if(fabs(current_temperature[0] - redundant_temperature) > MAX_REDUNDANT_TEMP_SENSOR_DIFF) { + disable_heater(); + if(IsStopped() == false) { + SERIAL_ERROR_START; + SERIAL_ERRORLNPGM("Extruder switched off. Temperature difference between temp sensors is too high !"); + LCD_ALERTMESSAGEPGM("Err: REDUNDANT TEMP ERROR"); + } + #ifndef BOGUS_TEMPERATURE_FAILSAFE_OVERRIDE + Stop(); + #endif + } + #endif } // End extruder for loop - + #if (defined(EXTRUDER_0_AUTO_FAN_PIN) && EXTRUDER_0_AUTO_FAN_PIN > -1) || \ + (defined(EXTRUDER_1_AUTO_FAN_PIN) && EXTRUDER_1_AUTO_FAN_PIN > -1) || \ + (defined(EXTRUDER_2_AUTO_FAN_PIN) && EXTRUDER_2_AUTO_FAN_PIN > -1) + if(millis() - extruder_autofan_last_check > 2500) // only need to check fan state very infrequently + { + checkExtruderAutoFans(); + extruder_autofan_last_check = millis(); + } + #endif + #ifndef PIDTEMPBED if(millis() - previous_millis_bed_heater < BED_CHECK_INTERVAL) return; @@ -481,7 +596,11 @@ void manage_heater() // Derived from RepRap FiveD extruder::getTemperature() // For hot end temperature measurement. static float analog2temp(int raw, uint8_t e) { +#ifdef TEMP_SENSOR_1_AS_REDUNDANT + if(e > EXTRUDERS) +#else if(e >= EXTRUDERS) +#endif { SERIAL_ERROR_START; SERIAL_ERROR((int)e); @@ -560,7 +679,9 @@ static void updateTemperaturesFromRawValues() current_temperature[e] = analog2temp(current_temperature_raw[e], e); } current_temperature_bed = analog2tempBed(current_temperature_bed_raw); - + #ifdef TEMP_SENSOR_1_AS_REDUNDANT + redundant_temperature = analog2temp(redundant_temperature_raw, 1); + #endif //Reset the watchdog after we know we have a temperature measurement. watchdog_reset(); @@ -571,6 +692,12 @@ static void updateTemperaturesFromRawValues() void tp_init() { +#if (MOTHERBOARD == 80) && ((TEMP_SENSOR_0==-1)||(TEMP_SENSOR_1==-1)||(TEMP_SENSOR_2==-1)||(TEMP_SENSOR_BED==-1)) + //disable RUMBA JTAG in case the thermocouple extension is plugged on top of JTAG connector + MCUCR=(1< -1) + #if defined(HEATER_0_PIN) && (HEATER_0_PIN > -1) SET_OUTPUT(HEATER_0_PIN); #endif - #if (HEATER_1_PIN > -1) + #if defined(HEATER_1_PIN) && (HEATER_1_PIN > -1) SET_OUTPUT(HEATER_1_PIN); #endif - #if (HEATER_2_PIN > -1) + #if defined(HEATER_2_PIN) && (HEATER_2_PIN > -1) SET_OUTPUT(HEATER_2_PIN); #endif - #if (HEATER_BED_PIN > -1) + #if defined(HEATER_BED_PIN) && (HEATER_BED_PIN > -1) SET_OUTPUT(HEATER_BED_PIN); #endif - #if (FAN_PIN > -1) + #if defined(FAN_PIN) && (FAN_PIN > -1) SET_OUTPUT(FAN_PIN); #ifdef FAST_PWM_FAN setPwmFrequency(FAN_PIN, 1); // No prescaling. Pwm frequency = F_CPU/256/8 #endif #ifdef FAN_SOFT_PWM - soft_pwm_fan=(unsigned char)fanSpeed; - #endif + soft_pwm_fan = fanSpeedSoftPwm / 2; + #endif #endif #ifdef HEATER_0_USES_MAX6675 @@ -629,28 +756,28 @@ void tp_init() #ifdef DIDR2 DIDR2 = 0; #endif - #if (TEMP_0_PIN > -1) + #if defined(TEMP_0_PIN) && (TEMP_0_PIN > -1) #if TEMP_0_PIN < 8 DIDR0 |= 1 << TEMP_0_PIN; #else DIDR2 |= 1<<(TEMP_0_PIN - 8); #endif #endif - #if (TEMP_1_PIN > -1) + #if defined(TEMP_1_PIN) && (TEMP_1_PIN > -1) #if TEMP_1_PIN < 8 DIDR0 |= 1< -1) + #if defined(TEMP_2_PIN) && (TEMP_2_PIN > -1) #if TEMP_2_PIN < 8 DIDR0 |= 1 << TEMP_2_PIN; #else - DIDR2 = 1<<(TEMP_2_PIN - 8); + DIDR2 |= 1<<(TEMP_2_PIN - 8); #endif #endif - #if (TEMP_BED_PIN > -1) + #if defined(TEMP_BED_PIN) && (TEMP_BED_PIN > -1) #if TEMP_BED_PIN < 8 DIDR0 |= 1< 1) && defined(HEATER_1_MINTEMP) minttemp[1] = HEATER_1_MINTEMP; - while(analog2temp(minttemp_raw[1], 1) > HEATER_1_MINTEMP) { + while(analog2temp(minttemp_raw[1], 1) < HEATER_1_MINTEMP) { #if HEATER_1_RAW_LO_TEMP < HEATER_1_RAW_HI_TEMP minttemp_raw[1] += OVERSAMPLENR; #else @@ -710,7 +837,7 @@ void tp_init() #if (EXTRUDERS > 2) && defined(HEATER_2_MINTEMP) minttemp[2] = HEATER_2_MINTEMP; - while(analog2temp(minttemp_raw[2], 2) > HEATER_2_MINTEMP) { + while(analog2temp(minttemp_raw[2], 2) < HEATER_2_MINTEMP) { #if HEATER_2_RAW_LO_TEMP < HEATER_2_RAW_HI_TEMP minttemp_raw[2] += OVERSAMPLENR; #else @@ -771,34 +898,34 @@ void disable_heater() for(int i=0;i -1 + #if defined(TEMP_0_PIN) && TEMP_0_PIN > -1 target_temperature[0]=0; soft_pwm[0]=0; - #if HEATER_0_PIN > -1 + #if defined(HEATER_0_PIN) && HEATER_0_PIN > -1 WRITE(HEATER_0_PIN,LOW); #endif #endif - #if TEMP_1_PIN > -1 + #if defined(TEMP_1_PIN) && TEMP_1_PIN > -1 target_temperature[1]=0; soft_pwm[1]=0; - #if HEATER_1_PIN > -1 + #if defined(HEATER_1_PIN) && HEATER_1_PIN > -1 WRITE(HEATER_1_PIN,LOW); #endif #endif - #if TEMP_2_PIN > -1 + #if defined(TEMP_2_PIN) && TEMP_2_PIN > -1 target_temperature[2]=0; soft_pwm[2]=0; - #if HEATER_2_PIN > -1 + #if defined(HEATER_2_PIN) && HEATER_2_PIN > -1 WRITE(HEATER_2_PIN,LOW); #endif #endif - #if TEMP_BED_PIN > -1 + #if defined(TEMP_BED_PIN) && TEMP_BED_PIN > -1 target_temperature_bed=0; soft_pwm_bed=0; - #if HEATER_BED_PIN > -1 + #if defined(HEATER_BED_PIN) && HEATER_BED_PIN > -1 WRITE(HEATER_BED_PIN,LOW); #endif #endif @@ -904,16 +1031,16 @@ int read_max6675() // Timer 0 is shared with millies ISR(TIMER0_COMPB_vect) { - //these variables are only accesible from the ISR, but static, so they don't loose their value + //these variables are only accesible from the ISR, but static, so they don't lose their value static unsigned char temp_count = 0; static unsigned long raw_temp_0_value = 0; static unsigned long raw_temp_1_value = 0; static unsigned long raw_temp_2_value = 0; static unsigned long raw_temp_bed_value = 0; static unsigned char temp_state = 0; - static unsigned char pwm_count = 1; + static unsigned char pwm_count = (1 << SOFT_PWM_SCALE); static unsigned char soft_pwm_0; - #if EXTRUDERS > 1 + #if (EXTRUDERS > 1) || defined(HEATERS_PARALLEL) static unsigned char soft_pwm_1; #endif #if EXTRUDERS > 2 @@ -925,7 +1052,12 @@ ISR(TIMER0_COMPB_vect) if(pwm_count == 0){ soft_pwm_0 = soft_pwm[0]; - if(soft_pwm_0 > 0) WRITE(HEATER_0_PIN,1); + if(soft_pwm_0 > 0) { + WRITE(HEATER_0_PIN,1); + #ifdef HEATERS_PARALLEL + WRITE(HEATER_1_PIN,1); + #endif + } #if EXTRUDERS > 1 soft_pwm_1 = soft_pwm[1]; if(soft_pwm_1 > 0) WRITE(HEATER_1_PIN,1); @@ -934,35 +1066,40 @@ ISR(TIMER0_COMPB_vect) soft_pwm_2 = soft_pwm[2]; if(soft_pwm_2 > 0) WRITE(HEATER_2_PIN,1); #endif - #if HEATER_BED_PIN > -1 + #if defined(HEATER_BED_PIN) && HEATER_BED_PIN > -1 soft_pwm_b = soft_pwm_bed; if(soft_pwm_b > 0) WRITE(HEATER_BED_PIN,1); #endif #ifdef FAN_SOFT_PWM - soft_pwm_fan =(unsigned char) fanSpeed; + soft_pwm_fan = fanSpeedSoftPwm / 2; if(soft_pwm_fan > 0) WRITE(FAN_PIN,1); #endif } - if(soft_pwm_0 <= pwm_count) WRITE(HEATER_0_PIN,0); + if(soft_pwm_0 <= pwm_count) { + WRITE(HEATER_0_PIN,0); + #ifdef HEATERS_PARALLEL + WRITE(HEATER_1_PIN,0); + #endif + } #if EXTRUDERS > 1 if(soft_pwm_1 <= pwm_count) WRITE(HEATER_1_PIN,0); #endif #if EXTRUDERS > 2 if(soft_pwm_2 <= pwm_count) WRITE(HEATER_2_PIN,0); #endif - #if HEATER_BED_PIN > -1 + #if defined(HEATER_BED_PIN) && HEATER_BED_PIN > -1 if(soft_pwm_b <= pwm_count) WRITE(HEATER_BED_PIN,0); #endif #ifdef FAN_SOFT_PWM if(soft_pwm_fan <= pwm_count) WRITE(FAN_PIN,0); #endif - pwm_count++; + pwm_count += (1 << SOFT_PWM_SCALE); pwm_count &= 0x7f; switch(temp_state) { case 0: // Prepare TEMP_0 - #if (TEMP_0_PIN > -1) + #if defined(TEMP_0_PIN) && (TEMP_0_PIN > -1) #if TEMP_0_PIN > 7 ADCSRB = 1< -1) + #if defined(TEMP_0_PIN) && (TEMP_0_PIN > -1) raw_temp_0_value += ADC; #endif #ifdef HEATER_0_USES_MAX6675 // TODO remove the blocking @@ -984,7 +1121,7 @@ ISR(TIMER0_COMPB_vect) temp_state = 2; break; case 2: // Prepare TEMP_BED - #if (TEMP_BED_PIN > -1) + #if defined(TEMP_BED_PIN) && (TEMP_BED_PIN > -1) #if TEMP_BED_PIN > 7 ADCSRB = 1< -1) + #if defined(TEMP_BED_PIN) && (TEMP_BED_PIN > -1) raw_temp_bed_value += ADC; #endif temp_state = 4; break; case 4: // Prepare TEMP_1 - #if (TEMP_1_PIN > -1) + #if defined(TEMP_1_PIN) && (TEMP_1_PIN > -1) #if TEMP_1_PIN > 7 ADCSRB = 1< -1) + #if defined(TEMP_1_PIN) && (TEMP_1_PIN > -1) raw_temp_1_value += ADC; #endif temp_state = 6; break; case 6: // Prepare TEMP_2 - #if (TEMP_2_PIN > -1) + #if defined(TEMP_2_PIN) && (TEMP_2_PIN > -1) #if TEMP_2_PIN > 7 ADCSRB = 1< -1) + #if defined(TEMP_2_PIN) && (TEMP_2_PIN > -1) raw_temp_2_value += ADC; #endif temp_state = 0; @@ -1055,6 +1192,9 @@ ISR(TIMER0_COMPB_vect) #if EXTRUDERS > 1 current_temperature_raw[1] = raw_temp_1_value; #endif +#ifdef TEMP_SENSOR_1_AS_REDUNDANT + redundant_temperature_raw = raw_temp_1_value; +#endif #if EXTRUDERS > 2 current_temperature_raw[2] = raw_temp_2_value; #endif @@ -1126,13 +1266,31 @@ ISR(TIMER0_COMPB_vect) bed_max_temp_error(); } #endif - } + } + +#ifdef BABYSTEPPING + for(uint8_t axis=0;axis<3;axis++) + { + int curTodo=babystepsTodo[axis]; //get rid of volatile for performance + + if(curTodo>0) + { + babystep(axis,/*fwd*/true); + babystepsTodo[axis]--; //less to do next time + } + else + if(curTodo<0) + { + babystep(axis,/*fwd*/false); + babystepsTodo[axis]++; //less to do next time + } + } +#endif //BABYSTEPPING } #ifdef PIDTEMP // Apply the scale factors to the PID values - float scalePID_i(float i) { return i*PID_dT; diff --git a/Marlin/temperature.h b/Marlin/temperature.h index 7cc62aa529cb2fdf8f2ee07c6839c1fa1aa6fddd..1bf47e02ed54cc32cc7ed5e75dd2b71ba458e9c8 100644 --- a/Marlin/temperature.h +++ b/Marlin/temperature.h @@ -35,8 +35,15 @@ void manage_heater(); //it is critical that this is called periodically. // do not use these routines and variables outside of temperature.cpp extern int target_temperature[EXTRUDERS]; extern float current_temperature[EXTRUDERS]; +#ifdef SHOW_TEMP_ADC_VALUES + extern int current_temperature_raw[EXTRUDERS]; + extern int current_temperature_bed_raw; +#endif extern int target_temperature_bed; extern float current_temperature_bed; +#ifdef TEMP_SENSOR_1_AS_REDUNDANT + extern float redundant_temperature; +#endif #ifdef PIDTEMP extern float Kp,Ki,Kd,Kc; @@ -50,6 +57,11 @@ extern float current_temperature_bed; extern float bedKp,bedKi,bedKd; #endif + +#ifdef BABYSTEPPING + extern volatile int babystepsTodo[3]; +#endif + //high level conversion routines, for use outside of temperature.cpp //inline so that there is no performance decrease. //deg=degreeCelsius @@ -58,6 +70,16 @@ FORCE_INLINE float degHotend(uint8_t extruder) { return current_temperature[extruder]; }; +#ifdef SHOW_TEMP_ADC_VALUES + FORCE_INLINE float rawHotendTemp(uint8_t extruder) { + return current_temperature_raw[extruder]; + }; + + FORCE_INLINE float rawBedTemp() { + return current_temperature_bed_raw; + }; +#endif + FORCE_INLINE float degBed() { return current_temperature_bed; }; diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 76ea32b7baf44595b91a43f0ee9f8f222eb243fc..ecac95fe308ad8ebaaef6b66108b7ae6a5cffbd8 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -254,64 +254,218 @@ const short temptable_6[][2] PROGMEM = { #if (THERMISTORHEATER_0 == 7) || (THERMISTORHEATER_1 == 7) || (THERMISTORHEATER_2 == 7) || (THERMISTORBED == 7) // 100k Honeywell 135-104LAG-J01 const short temptable_7[][2] PROGMEM = { - {1*OVERSAMPLENR, 500}, - {46*OVERSAMPLENR, 270}, //top rating 300C - {50*OVERSAMPLENR, 265}, - {54*OVERSAMPLENR, 260}, - {58*OVERSAMPLENR, 255}, - {62*OVERSAMPLENR, 250}, - {67*OVERSAMPLENR, 245}, - {72*OVERSAMPLENR, 240}, - {79*OVERSAMPLENR, 235}, - {85*OVERSAMPLENR, 230}, - {91*OVERSAMPLENR, 225}, - {99*OVERSAMPLENR, 220}, - {107*OVERSAMPLENR, 215}, - {116*OVERSAMPLENR, 210}, + {1*OVERSAMPLENR, 941}, + {19*OVERSAMPLENR, 362}, + {37*OVERSAMPLENR, 299}, //top rating 300C + {55*OVERSAMPLENR, 266}, + {73*OVERSAMPLENR, 245}, + {91*OVERSAMPLENR, 229}, + {109*OVERSAMPLENR, 216}, + {127*OVERSAMPLENR, 206}, + {145*OVERSAMPLENR, 197}, + {163*OVERSAMPLENR, 190}, + {181*OVERSAMPLENR, 183}, + {199*OVERSAMPLENR, 177}, + {217*OVERSAMPLENR, 171}, + {235*OVERSAMPLENR, 166}, + {253*OVERSAMPLENR, 162}, + {271*OVERSAMPLENR, 157}, + {289*OVERSAMPLENR, 153}, + {307*OVERSAMPLENR, 149}, + {325*OVERSAMPLENR, 146}, + {343*OVERSAMPLENR, 142}, + {361*OVERSAMPLENR, 139}, + {379*OVERSAMPLENR, 135}, + {397*OVERSAMPLENR, 132}, + {415*OVERSAMPLENR, 129}, + {433*OVERSAMPLENR, 126}, + {451*OVERSAMPLENR, 123}, + {469*OVERSAMPLENR, 121}, + {487*OVERSAMPLENR, 118}, + {505*OVERSAMPLENR, 115}, + {523*OVERSAMPLENR, 112}, + {541*OVERSAMPLENR, 110}, + {559*OVERSAMPLENR, 107}, + {577*OVERSAMPLENR, 105}, + {595*OVERSAMPLENR, 102}, + {613*OVERSAMPLENR, 99}, + {631*OVERSAMPLENR, 97}, + {649*OVERSAMPLENR, 94}, + {667*OVERSAMPLENR, 92}, + {685*OVERSAMPLENR, 89}, + {703*OVERSAMPLENR, 86}, + {721*OVERSAMPLENR, 84}, + {739*OVERSAMPLENR, 81}, + {757*OVERSAMPLENR, 78}, + {775*OVERSAMPLENR, 75}, + {793*OVERSAMPLENR, 72}, + {811*OVERSAMPLENR, 69}, + {829*OVERSAMPLENR, 66}, + {847*OVERSAMPLENR, 62}, + {865*OVERSAMPLENR, 59}, + {883*OVERSAMPLENR, 55}, + {901*OVERSAMPLENR, 51}, + {919*OVERSAMPLENR, 46}, + {937*OVERSAMPLENR, 41}, + {955*OVERSAMPLENR, 35}, + {973*OVERSAMPLENR, 27}, + {991*OVERSAMPLENR, 17}, + {1009*OVERSAMPLENR, 1}, + {1023*OVERSAMPLENR, 0} //to allow internal 0 degrees C +}; +#endif + +#if (THERMISTORHEATER_0 == 71) || (THERMISTORHEATER_1 == 71) || (THERMISTORHEATER_2 == 71) || (THERMISTORBED == 71) // 100k Honeywell 135-104LAF-J01 +// R0 = 100000 Ohm +// T0 = 25 °C +// Beta = 3974 +// R1 = 0 Ohm +// R2 = 4700 Ohm +const short temptable_71[][2] PROGMEM = { + {35*OVERSAMPLENR, 300}, + {51*OVERSAMPLENR, 270}, + {54*OVERSAMPLENR, 265}, + {58*OVERSAMPLENR, 260}, + {59*OVERSAMPLENR, 258}, + {61*OVERSAMPLENR, 256}, + {63*OVERSAMPLENR, 254}, + {64*OVERSAMPLENR, 252}, + {66*OVERSAMPLENR, 250}, + {67*OVERSAMPLENR, 249}, + {68*OVERSAMPLENR, 248}, + {69*OVERSAMPLENR, 247}, + {70*OVERSAMPLENR, 246}, + {71*OVERSAMPLENR, 245}, + {72*OVERSAMPLENR, 244}, + {73*OVERSAMPLENR, 243}, + {74*OVERSAMPLENR, 242}, + {75*OVERSAMPLENR, 241}, + {76*OVERSAMPLENR, 240}, + {77*OVERSAMPLENR, 239}, + {78*OVERSAMPLENR, 238}, + {79*OVERSAMPLENR, 237}, + {80*OVERSAMPLENR, 236}, + {81*OVERSAMPLENR, 235}, + {82*OVERSAMPLENR, 234}, + {84*OVERSAMPLENR, 233}, + {85*OVERSAMPLENR, 232}, + {86*OVERSAMPLENR, 231}, + {87*OVERSAMPLENR, 230}, + {89*OVERSAMPLENR, 229}, + {90*OVERSAMPLENR, 228}, + {91*OVERSAMPLENR, 227}, + {92*OVERSAMPLENR, 226}, + {94*OVERSAMPLENR, 225}, + {95*OVERSAMPLENR, 224}, + {97*OVERSAMPLENR, 223}, + {98*OVERSAMPLENR, 222}, + {99*OVERSAMPLENR, 221}, + {101*OVERSAMPLENR, 220}, + {102*OVERSAMPLENR, 219}, + {104*OVERSAMPLENR, 218}, + {106*OVERSAMPLENR, 217}, + {107*OVERSAMPLENR, 216}, + {109*OVERSAMPLENR, 215}, + {110*OVERSAMPLENR, 214}, + {112*OVERSAMPLENR, 213}, + {114*OVERSAMPLENR, 212}, + {115*OVERSAMPLENR, 211}, + {117*OVERSAMPLENR, 210}, + {119*OVERSAMPLENR, 209}, + {121*OVERSAMPLENR, 208}, + {123*OVERSAMPLENR, 207}, + {125*OVERSAMPLENR, 206}, {126*OVERSAMPLENR, 205}, + {128*OVERSAMPLENR, 204}, + {130*OVERSAMPLENR, 203}, + {132*OVERSAMPLENR, 202}, + {134*OVERSAMPLENR, 201}, {136*OVERSAMPLENR, 200}, - {149*OVERSAMPLENR, 195}, - {160*OVERSAMPLENR, 190}, - {175*OVERSAMPLENR, 185}, - {191*OVERSAMPLENR, 180}, - {209*OVERSAMPLENR, 175}, - {224*OVERSAMPLENR, 170}, - {246*OVERSAMPLENR, 165}, - {267*OVERSAMPLENR, 160}, - {293*OVERSAMPLENR, 155}, - {316*OVERSAMPLENR, 150}, - {340*OVERSAMPLENR, 145}, - {364*OVERSAMPLENR, 140}, - {396*OVERSAMPLENR, 135}, - {425*OVERSAMPLENR, 130}, - {460*OVERSAMPLENR, 125}, - {489*OVERSAMPLENR, 120}, - {526*OVERSAMPLENR, 115}, - {558*OVERSAMPLENR, 110}, - {591*OVERSAMPLENR, 105}, - {628*OVERSAMPLENR, 100}, - {660*OVERSAMPLENR, 95}, - {696*OVERSAMPLENR, 90}, - {733*OVERSAMPLENR, 85}, - {761*OVERSAMPLENR, 80}, - {794*OVERSAMPLENR, 75}, - {819*OVERSAMPLENR, 70}, - {847*OVERSAMPLENR, 65}, - {870*OVERSAMPLENR, 60}, - {892*OVERSAMPLENR, 55}, - {911*OVERSAMPLENR, 50}, - {929*OVERSAMPLENR, 45}, - {944*OVERSAMPLENR, 40}, - {959*OVERSAMPLENR, 35}, - {971*OVERSAMPLENR, 30}, - {981*OVERSAMPLENR, 25}, - {989*OVERSAMPLENR, 20}, - {994*OVERSAMPLENR, 15}, + {139*OVERSAMPLENR, 199}, + {141*OVERSAMPLENR, 198}, + {143*OVERSAMPLENR, 197}, + {145*OVERSAMPLENR, 196}, + {147*OVERSAMPLENR, 195}, + {150*OVERSAMPLENR, 194}, + {152*OVERSAMPLENR, 193}, + {154*OVERSAMPLENR, 192}, + {157*OVERSAMPLENR, 191}, + {159*OVERSAMPLENR, 190}, + {162*OVERSAMPLENR, 189}, + {164*OVERSAMPLENR, 188}, + {167*OVERSAMPLENR, 187}, + {170*OVERSAMPLENR, 186}, + {172*OVERSAMPLENR, 185}, + {175*OVERSAMPLENR, 184}, + {178*OVERSAMPLENR, 183}, + {181*OVERSAMPLENR, 182}, + {184*OVERSAMPLENR, 181}, + {187*OVERSAMPLENR, 180}, + {190*OVERSAMPLENR, 179}, + {193*OVERSAMPLENR, 178}, + {196*OVERSAMPLENR, 177}, + {199*OVERSAMPLENR, 176}, + {202*OVERSAMPLENR, 175}, + {205*OVERSAMPLENR, 174}, + {208*OVERSAMPLENR, 173}, + {212*OVERSAMPLENR, 172}, + {215*OVERSAMPLENR, 171}, + {219*OVERSAMPLENR, 170}, + {237*OVERSAMPLENR, 165}, + {256*OVERSAMPLENR, 160}, + {300*OVERSAMPLENR, 150}, + {351*OVERSAMPLENR, 140}, + {470*OVERSAMPLENR, 120}, + {504*OVERSAMPLENR, 115}, + {538*OVERSAMPLENR, 110}, + {552*OVERSAMPLENR, 108}, + {566*OVERSAMPLENR, 106}, + {580*OVERSAMPLENR, 104}, + {594*OVERSAMPLENR, 102}, + {608*OVERSAMPLENR, 100}, + {622*OVERSAMPLENR, 98}, + {636*OVERSAMPLENR, 96}, + {650*OVERSAMPLENR, 94}, + {664*OVERSAMPLENR, 92}, + {678*OVERSAMPLENR, 90}, + {712*OVERSAMPLENR, 85}, + {745*OVERSAMPLENR, 80}, + {758*OVERSAMPLENR, 78}, + {770*OVERSAMPLENR, 76}, + {783*OVERSAMPLENR, 74}, + {795*OVERSAMPLENR, 72}, + {806*OVERSAMPLENR, 70}, + {818*OVERSAMPLENR, 68}, + {829*OVERSAMPLENR, 66}, + {840*OVERSAMPLENR, 64}, + {850*OVERSAMPLENR, 62}, + {860*OVERSAMPLENR, 60}, + {870*OVERSAMPLENR, 58}, + {879*OVERSAMPLENR, 56}, + {888*OVERSAMPLENR, 54}, + {897*OVERSAMPLENR, 52}, + {905*OVERSAMPLENR, 50}, + {924*OVERSAMPLENR, 45}, + {940*OVERSAMPLENR, 40}, + {955*OVERSAMPLENR, 35}, + {967*OVERSAMPLENR, 30}, + {970*OVERSAMPLENR, 29}, + {972*OVERSAMPLENR, 28}, + {974*OVERSAMPLENR, 27}, + {976*OVERSAMPLENR, 26}, + {978*OVERSAMPLENR, 25}, + {980*OVERSAMPLENR, 24}, + {982*OVERSAMPLENR, 23}, + {984*OVERSAMPLENR, 22}, + {985*OVERSAMPLENR, 21}, + {987*OVERSAMPLENR, 20}, + {995*OVERSAMPLENR, 15}, {1001*OVERSAMPLENR, 10}, - {1005*OVERSAMPLENR, 5}, - {1023*OVERSAMPLENR, 0} //to allow internal 0 degrees C + {1006*OVERSAMPLENR, 5}, + {1010*OVERSAMPLENR, 0}, }; #endif + #if (THERMISTORHEATER_0 == 8) || (THERMISTORHEATER_1 == 8) || (THERMISTORHEATER_2 == 8) || (THERMISTORBED == 8) // 100k 0603 SMD Vishay NTCS0603E3104FXT (4.7k pullup) const short temptable_8[][2] PROGMEM = { @@ -554,6 +708,84 @@ const short temptable_55[][2] PROGMEM = { }; #endif +#if (THERMISTORHEATER_0 == 60) || (THERMISTORHEATER_1 == 60) || (THERMISTORHEATER_2 == 60) || (THERMISTORBED == 60) // Maker's Tool Works Kapton Bed Thermister +const short temptable_60[][2] PROGMEM = { + {51*OVERSAMPLENR, 272}, + {61*OVERSAMPLENR, 258}, + {71*OVERSAMPLENR, 247}, + {81*OVERSAMPLENR, 237}, + {91*OVERSAMPLENR, 229}, + {101*OVERSAMPLENR, 221}, + {131*OVERSAMPLENR, 204}, + {161*OVERSAMPLENR, 190}, + {191*OVERSAMPLENR, 179}, + {231*OVERSAMPLENR, 167}, + {271*OVERSAMPLENR, 157}, + {311*OVERSAMPLENR, 148}, + {351*OVERSAMPLENR, 140}, + {381*OVERSAMPLENR, 135}, + {411*OVERSAMPLENR, 130}, + {441*OVERSAMPLENR, 125}, + {451*OVERSAMPLENR, 123}, + {461*OVERSAMPLENR, 122}, + {471*OVERSAMPLENR, 120}, + {481*OVERSAMPLENR, 119}, + {491*OVERSAMPLENR, 117}, + {501*OVERSAMPLENR, 116}, + {511*OVERSAMPLENR, 114}, + {521*OVERSAMPLENR, 113}, + {531*OVERSAMPLENR, 111}, + {541*OVERSAMPLENR, 110}, + {551*OVERSAMPLENR, 108}, + {561*OVERSAMPLENR, 107}, + {571*OVERSAMPLENR, 105}, + {581*OVERSAMPLENR, 104}, + {591*OVERSAMPLENR, 102}, + {601*OVERSAMPLENR, 101}, + {611*OVERSAMPLENR, 100}, + {621*OVERSAMPLENR, 98}, + {631*OVERSAMPLENR, 97}, + {641*OVERSAMPLENR, 95}, + {651*OVERSAMPLENR, 94}, + {661*OVERSAMPLENR, 92}, + {671*OVERSAMPLENR, 91}, + {681*OVERSAMPLENR, 90}, + {691*OVERSAMPLENR, 88}, + {701*OVERSAMPLENR, 87}, + {711*OVERSAMPLENR, 85}, + {721*OVERSAMPLENR, 84}, + {731*OVERSAMPLENR, 82}, + {741*OVERSAMPLENR, 81}, + {751*OVERSAMPLENR, 79}, + {761*OVERSAMPLENR, 77}, + {771*OVERSAMPLENR, 76}, + {781*OVERSAMPLENR, 74}, + {791*OVERSAMPLENR, 72}, + {801*OVERSAMPLENR, 71}, + {811*OVERSAMPLENR, 69}, + {821*OVERSAMPLENR, 67}, + {831*OVERSAMPLENR, 65}, + {841*OVERSAMPLENR, 63}, + {851*OVERSAMPLENR, 62}, + {861*OVERSAMPLENR, 60}, + {871*OVERSAMPLENR, 57}, + {881*OVERSAMPLENR, 55}, + {891*OVERSAMPLENR, 53}, + {901*OVERSAMPLENR, 51}, + {911*OVERSAMPLENR, 48}, + {921*OVERSAMPLENR, 45}, + {931*OVERSAMPLENR, 42}, + {941*OVERSAMPLENR, 39}, + {951*OVERSAMPLENR, 36}, + {961*OVERSAMPLENR, 32}, + {981*OVERSAMPLENR, 23}, + {991*OVERSAMPLENR, 17}, + {1001*OVERSAMPLENR, 9}, + {1008*OVERSAMPLENR, 0}, +}; +#endif + + #define _TT_NAME(_N) temptable_ ## _N #define TT_NAME(_N) _TT_NAME(_N) diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp index c138069d194c83dbb71a7744b1d367531436fb35..81211b10efea9845c3dae6ac3367518b56855201 100644 --- a/Marlin/ultralcd.cpp +++ b/Marlin/ultralcd.cpp @@ -8,6 +8,8 @@ #include "stepper.h" #include "ConfigurationStore.h" +int8_t encoderDiff; /* encoderDiff is updated from interrupt context and added to encoderPosition every LCD update */ + /* Configuration settings */ int plaPreheatHotendTemp; int plaPreheatHPBTemp; @@ -16,6 +18,11 @@ int plaPreheatFanSpeed; int absPreheatHotendTemp; int absPreheatHPBTemp; int absPreheatFanSpeed; + +#ifdef ULTIPANEL +static float manual_feedrate[] = MANUAL_FEEDRATE; +#endif // ULTIPANEL + /* !Configuration settings */ //Function pointer to menu functions. @@ -24,7 +31,11 @@ typedef void (*menuFunc_t)(); uint8_t lcd_status_message_level; char lcd_status_message[LCD_WIDTH+1] = WELCOME_MSG; +#ifdef DOGLCD +#include "dogm_lcd_implementation.h" +#else #include "ultralcd_implementation_hitachi_HD44780.h" +#endif /** forward declerations **/ @@ -34,6 +45,7 @@ void copy_and_scalePID_d(); /* Different menus */ static void lcd_status_screen(); #ifdef ULTIPANEL +extern bool powersupply; static void lcd_main_menu(); static void lcd_tune_menu(); static void lcd_prepare_menu(); @@ -43,6 +55,9 @@ static void lcd_control_temperature_menu(); static void lcd_control_temperature_preheat_pla_settings_menu(); static void lcd_control_temperature_preheat_abs_settings_menu(); static void lcd_control_motion_menu(); +#ifdef DOGLCD +static void lcd_set_contrast(); +#endif static void lcd_control_retract_menu(); static void lcd_control_version_menu(); static void lcd_sdcard_menu(); @@ -73,13 +88,27 @@ static void menu_action_setting_edit_callback_float51(const char* pstr, float* p static void menu_action_setting_edit_callback_float52(const char* pstr, float* ptr, float minValue, float maxValue, menuFunc_t callbackFunc); static void menu_action_setting_edit_callback_long5(const char* pstr, unsigned long* ptr, unsigned long minValue, unsigned long maxValue, menuFunc_t callbackFunc); -#define ENCODER_STEPS_PER_MENU_ITEM 5 +#define ENCODER_FEEDRATE_DEADZONE 10 + +#if !defined(LCD_I2C_VIKI) + #define ENCODER_STEPS_PER_MENU_ITEM 5 + #ifndef ENCODER_PULSES_PER_STEP + #define ENCODER_PULSES_PER_STEP 1 + #endif +#else + #define ENCODER_STEPS_PER_MENU_ITEM 2 // VIKI LCD rotary encoder uses a different number of steps per rotation + #ifndef ENCODER_PULSES_PER_STEP + #define ENCODER_PULSES_PER_STEP 1 + #endif +#endif + /* Helper macros for menus */ #define START_MENU() do { \ if (encoderPosition > 0x8000) encoderPosition = 0; \ if (encoderPosition / ENCODER_STEPS_PER_MENU_ITEM < currentMenuViewOffset) currentMenuViewOffset = encoderPosition / ENCODER_STEPS_PER_MENU_ITEM;\ uint8_t _lineNr = currentMenuViewOffset, _menuItemNr; \ + bool wasClicked = LCD_CLICKED;\ for(uint8_t _drawLineNr = 0; _drawLineNr < LCD_HEIGHT; _drawLineNr++, _lineNr++) { \ _menuItemNr = 0; #define MENU_ITEM(type, label, args...) do { \ @@ -92,7 +121,7 @@ static void menu_action_setting_edit_callback_long5(const char* pstr, unsigned l lcd_implementation_drawmenu_ ## type (_drawLineNr, _label_pstr , ## args ); \ }\ }\ - if (LCD_CLICKED && (encoderPosition / ENCODER_STEPS_PER_MENU_ITEM) == _menuItemNr) {\ + if (wasClicked && (encoderPosition / ENCODER_STEPS_PER_MENU_ITEM) == _menuItemNr) {\ lcd_quick_feedback(); \ menu_action_ ## type ( args ); \ return;\ @@ -109,14 +138,19 @@ static void menu_action_setting_edit_callback_long5(const char* pstr, unsigned l } } while(0) /** Used variables to keep track of the menu */ +#ifndef REPRAPWORLD_KEYPAD volatile uint8_t buttons;//Contains the bits of the currently pressed buttons. - +#else +volatile uint8_t buttons_reprapworld_keypad; // to store the reprapworld_keypad shiftregister values +#endif +#ifdef LCD_HAS_SLOW_BUTTONS +volatile uint8_t slow_buttons;//Contains the bits of the currently pressed buttons. +#endif uint8_t currentMenuViewOffset; /* scroll offset in the current menu */ uint32_t blocking_enc; uint8_t lastEncoderBits; -int8_t encoderDiff; /* encoderDiff is updated from interrupt context and added to encoderPosition every LCD update */ uint32_t encoderPosition; -#if (SDCARDDETECT > -1) +#if (SDCARDDETECT > 0) bool lcd_oldcardstatus; #endif #endif//ULTIPANEL @@ -154,10 +188,34 @@ static void lcd_status_screen() if (LCD_CLICKED) { currentMenu = lcd_main_menu; + encoderPosition = 0; lcd_quick_feedback(); } - feedmultiply += int(encoderPosition); - encoderPosition = 0; + + // Dead zone at 100% feedrate + if ((feedmultiply < 100 && (feedmultiply + int(encoderPosition)) > 100) || + (feedmultiply > 100 && (feedmultiply + int(encoderPosition)) < 100)) + { + encoderPosition = 0; + feedmultiply = 100; + } + + if (feedmultiply == 100 && int(encoderPosition) > ENCODER_FEEDRATE_DEADZONE) + { + feedmultiply += int(encoderPosition) - ENCODER_FEEDRATE_DEADZONE; + encoderPosition = 0; + } + else if (feedmultiply == 100 && int(encoderPosition) < -ENCODER_FEEDRATE_DEADZONE) + { + feedmultiply += int(encoderPosition) + ENCODER_FEEDRATE_DEADZONE; + encoderPosition = 0; + } + else if (feedmultiply != 100) + { + feedmultiply += int(encoderPosition); + encoderPosition = 0; + } + if (feedmultiply < 10) feedmultiply = 10; if (feedmultiply > 999) @@ -218,14 +276,14 @@ static void lcd_main_menu() }else{ MENU_ITEM(submenu, MSG_CARD_MENU, lcd_sdcard_menu); #if SDCARDDETECT < 1 - MENU_ITEM(gcode, MSG_CNG_SDCARD, PSTR("M21")); // SD-card changed by user -#endif + MENU_ITEM(gcode, MSG_CNG_SDCARD, PSTR("M21")); // SD-card changed by user +#endif } }else{ MENU_ITEM(submenu, MSG_NO_CARD, lcd_sdcard_menu); -#if SDCARDDETECT < 1 - MENU_ITEM(gcode, MSG_INIT_SDCARD, PSTR("M21")); // Manually initialize the SD-card via user interface -#endif +#if SDCARDDETECT < 1 + MENU_ITEM(gcode, MSG_INIT_SDCARD, PSTR("M21")); // Manually initialize the SD-card via user interface +#endif } #endif END_MENU(); @@ -248,6 +306,7 @@ void lcd_preheat_pla() setTargetBed(plaPreheatHPBTemp); fanSpeed = plaPreheatFanSpeed; lcd_return_to_status(); + setWatch(); // heater sanity check timer } void lcd_preheat_abs() @@ -258,7 +317,79 @@ void lcd_preheat_abs() setTargetBed(absPreheatHPBTemp); fanSpeed = absPreheatFanSpeed; lcd_return_to_status(); + setWatch(); // heater sanity check timer +} + +static void lcd_cooldown() +{ + setTargetHotend0(0); + setTargetHotend1(0); + setTargetHotend2(0); + setTargetBed(0); + lcd_return_to_status(); +} + +#ifdef BABYSTEPPING +static void lcd_babystep_x() +{ + if (encoderPosition != 0) + { + babystepsTodo[X_AXIS]+=(int)encoderPosition; + encoderPosition=0; + lcdDrawUpdate = 1; + } + if (lcdDrawUpdate) + { + lcd_implementation_drawedit(PSTR("Babystepping X"),""); + } + if (LCD_CLICKED) + { + lcd_quick_feedback(); + currentMenu = lcd_tune_menu; + encoderPosition = 0; + } +} + +static void lcd_babystep_y() +{ + if (encoderPosition != 0) + { + babystepsTodo[Y_AXIS]+=(int)encoderPosition; + encoderPosition=0; + lcdDrawUpdate = 1; + } + if (lcdDrawUpdate) + { + lcd_implementation_drawedit(PSTR("Babystepping Y"),""); + } + if (LCD_CLICKED) + { + lcd_quick_feedback(); + currentMenu = lcd_tune_menu; + encoderPosition = 0; + } +} + +static void lcd_babystep_z() +{ + if (encoderPosition != 0) + { + babystepsTodo[Z_AXIS]+=BABYSTEP_Z_MULTIPLICATOR*(int)encoderPosition; + encoderPosition=0; + lcdDrawUpdate = 1; + } + if (lcdDrawUpdate) + { + lcd_implementation_drawedit(PSTR("Babystepping Z"),""); + } + if (LCD_CLICKED) + { + lcd_quick_feedback(); + currentMenu = lcd_tune_menu; + encoderPosition = 0; + } } +#endif //BABYSTEPPING static void lcd_tune_menu() { @@ -277,6 +408,14 @@ static void lcd_tune_menu() #endif MENU_ITEM_EDIT(int3, MSG_FAN_SPEED, &fanSpeed, 0, 255); MENU_ITEM_EDIT(int3, MSG_FLOW, &extrudemultiply, 10, 999); + +#ifdef BABYSTEPPING + #ifdef BABYSTEP_XY + MENU_ITEM(submenu, "Babystep X", lcd_babystep_x); + MENU_ITEM(submenu, "Babystep Y", lcd_babystep_y); + #endif //BABYSTEP_XY + MENU_ITEM(submenu, "Babystep Z", lcd_babystep_z); +#endif #ifdef FILAMENTCHANGEENABLE MENU_ITEM(gcode, MSG_FILAMENTCHANGE, PSTR("M600")); #endif @@ -288,14 +427,24 @@ static void lcd_prepare_menu() START_MENU(); MENU_ITEM(back, MSG_MAIN, lcd_main_menu); #ifdef SDSUPPORT - //MENU_ITEM(function, MSG_AUTOSTART, lcd_autostart_sd); + #ifdef MENU_ADDAUTOSTART + MENU_ITEM(function, MSG_AUTOSTART, lcd_autostart_sd); + #endif #endif MENU_ITEM(gcode, MSG_DISABLE_STEPPERS, PSTR("M84")); MENU_ITEM(gcode, MSG_AUTO_HOME, PSTR("G28")); //MENU_ITEM(gcode, MSG_SET_ORIGIN, PSTR("G92 X0 Y0 Z0")); MENU_ITEM(function, MSG_PREHEAT_PLA, lcd_preheat_pla); MENU_ITEM(function, MSG_PREHEAT_ABS, lcd_preheat_abs); - MENU_ITEM(gcode, MSG_COOLDOWN, PSTR("M104 S0\nM140 S0")); + MENU_ITEM(function, MSG_COOLDOWN, lcd_cooldown); +#if PS_ON_PIN > -1 + if (powersupply) + { + MENU_ITEM(gcode, MSG_SWITCH_PS_OFF, PSTR("M81")); + }else{ + MENU_ITEM(gcode, MSG_SWITCH_PS_ON, PSTR("M80")); + } +#endif MENU_ITEM(submenu, MSG_MOVE_AXIS, lcd_move_menu); END_MENU(); } @@ -308,12 +457,17 @@ static void lcd_move_x() if (encoderPosition != 0) { current_position[X_AXIS] += float((int)encoderPosition) * move_menu_scale; - if (current_position[X_AXIS] < X_MIN_POS) + if (min_software_endstops && current_position[X_AXIS] < X_MIN_POS) current_position[X_AXIS] = X_MIN_POS; - if (current_position[X_AXIS] > X_MAX_POS) + if (max_software_endstops && current_position[X_AXIS] > X_MAX_POS) current_position[X_AXIS] = X_MAX_POS; encoderPosition = 0; - plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], 600, active_extruder); + #ifdef DELTA + calculate_delta(current_position); + plan_buffer_line(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS], manual_feedrate[X_AXIS]/60, active_extruder); + #else + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], manual_feedrate[X_AXIS]/60, active_extruder); + #endif lcdDrawUpdate = 1; } if (lcdDrawUpdate) @@ -332,12 +486,17 @@ static void lcd_move_y() if (encoderPosition != 0) { current_position[Y_AXIS] += float((int)encoderPosition) * move_menu_scale; - if (current_position[Y_AXIS] < Y_MIN_POS) + if (min_software_endstops && current_position[Y_AXIS] < Y_MIN_POS) current_position[Y_AXIS] = Y_MIN_POS; - if (current_position[Y_AXIS] > Y_MAX_POS) + if (max_software_endstops && current_position[Y_AXIS] > Y_MAX_POS) current_position[Y_AXIS] = Y_MAX_POS; encoderPosition = 0; - plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], 600, active_extruder); + #ifdef DELTA + calculate_delta(current_position); + plan_buffer_line(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS], manual_feedrate[Y_AXIS]/60, active_extruder); + #else + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], manual_feedrate[Y_AXIS]/60, active_extruder); + #endif lcdDrawUpdate = 1; } if (lcdDrawUpdate) @@ -356,12 +515,17 @@ static void lcd_move_z() if (encoderPosition != 0) { current_position[Z_AXIS] += float((int)encoderPosition) * move_menu_scale; - if (current_position[Z_AXIS] < Z_MIN_POS) + if (min_software_endstops && current_position[Z_AXIS] < Z_MIN_POS) current_position[Z_AXIS] = Z_MIN_POS; - if (current_position[Z_AXIS] > Z_MAX_POS) + if (max_software_endstops && current_position[Z_AXIS] > Z_MAX_POS) current_position[Z_AXIS] = Z_MAX_POS; encoderPosition = 0; - plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], 60, active_extruder); + #ifdef DELTA + calculate_delta(current_position); + plan_buffer_line(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS], manual_feedrate[Z_AXIS]/60, active_extruder); + #else + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], manual_feedrate[Z_AXIS]/60, active_extruder); + #endif lcdDrawUpdate = 1; } if (lcdDrawUpdate) @@ -381,7 +545,12 @@ static void lcd_move_e() { current_position[E_AXIS] += float((int)encoderPosition) * move_menu_scale; encoderPosition = 0; - plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], 20, active_extruder); + #ifdef DELTA + calculate_delta(current_position); + plan_buffer_line(delta[X_AXIS], delta[Y_AXIS], delta[Z_AXIS], current_position[E_AXIS], manual_feedrate[E_AXIS]/60, active_extruder); + #else + plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], manual_feedrate[E_AXIS]/60, active_extruder); + #endif lcdDrawUpdate = 1; } if (lcdDrawUpdate) @@ -443,6 +612,10 @@ static void lcd_control_menu() MENU_ITEM(back, MSG_MAIN, lcd_main_menu); MENU_ITEM(submenu, MSG_TEMPERATURE, lcd_control_temperature_menu); MENU_ITEM(submenu, MSG_MOTION, lcd_control_motion_menu); +#ifdef DOGLCD +// MENU_ITEM_EDIT(int3, MSG_CONTRAST, &lcd_contrast, 0, 63); + MENU_ITEM(submenu, MSG_CONTRAST, lcd_set_contrast); +#endif #ifdef FWRETRACT MENU_ITEM(submenu, MSG_RETRACT, lcd_control_retract_menu); #endif @@ -457,10 +630,12 @@ static void lcd_control_menu() static void lcd_control_temperature_menu() { - // set up temp variables - undo the default scaling - raw_Ki = unscalePID_i(Ki); - raw_Kd = unscalePID_d(Kd); - +#ifdef PIDTEMP + // set up temp variables - undo the default scaling + raw_Ki = unscalePID_i(Ki); + raw_Kd = unscalePID_d(Kd); +#endif + START_MENU(); MENU_ITEM(back, MSG_CONTROL, lcd_control_menu); MENU_ITEM_EDIT(int3, MSG_NOZZLE, &target_temperature[0], 0, HEATER_0_MAXTEMP - 15); @@ -482,7 +657,7 @@ static void lcd_control_temperature_menu() #endif #ifdef PIDTEMP MENU_ITEM_EDIT(float52, MSG_PID_P, &Kp, 1, 9990); - // i is typically a small value so allows values below 1 + // i is typically a small value so allows values below 1 MENU_ITEM_EDIT_CALLBACK(float52, MSG_PID_I, &raw_Ki, 0.01, 9990, copy_and_scalePID_i); MENU_ITEM_EDIT_CALLBACK(float52, MSG_PID_D, &raw_Kd, 1, 9990, copy_and_scalePID_d); # ifdef PID_ADD_EXTRUSION_RATE @@ -553,6 +728,31 @@ static void lcd_control_motion_menu() END_MENU(); } +#ifdef DOGLCD +static void lcd_set_contrast() +{ + if (encoderPosition != 0) + { + lcd_contrast -= encoderPosition; + if (lcd_contrast < 0) lcd_contrast = 0; + else if (lcd_contrast > 63) lcd_contrast = 63; + encoderPosition = 0; + lcdDrawUpdate = 1; + u8g.setContrast(lcd_contrast); + } + if (lcdDrawUpdate) + { + lcd_implementation_drawedit(PSTR("Contrast"), itostr2(lcd_contrast)); + } + if (LCD_CLICKED) + { + lcd_quick_feedback(); + currentMenu = lcd_control_menu; + encoderPosition = 0; + } +} +#endif + #ifdef FWRETRACT static void lcd_control_retract_menu() { @@ -600,6 +800,8 @@ static void lcd_sd_updir() void lcd_sdcard_menu() { + if (lcdDrawUpdate == 0 && LCD_CLICKED == 0) + return; // nothing to do (so don't thrash the SD card) uint16_t fileCnt = card.getnrfilenames(); START_MENU(); MENU_ITEM(back, MSG_MAIN, lcd_main_menu); @@ -617,7 +819,11 @@ void lcd_sdcard_menu() { if (_menuItemNr == _lineNr) { - card.getfilename(i); + #ifndef SDCARD_RATHERRECENTFIRST + card.getfilename(i); + #else + card.getfilename(fileCnt-1-i); + #endif if (card.filenameIsDir) { MENU_ITEM(sddirectory, MSG_CARD_MENU, card.filename, card.longFilename); @@ -702,6 +908,42 @@ menu_edit_type(float, float51, ftostr51, 10) menu_edit_type(float, float52, ftostr52, 100) menu_edit_type(unsigned long, long5, ftostr5, 0.01) +#ifdef REPRAPWORLD_KEYPAD + static void reprapworld_keypad_move_z_up() { + encoderPosition = 1; + move_menu_scale = REPRAPWORLD_KEYPAD_MOVE_STEP; + lcd_move_z(); + } + static void reprapworld_keypad_move_z_down() { + encoderPosition = -1; + move_menu_scale = REPRAPWORLD_KEYPAD_MOVE_STEP; + lcd_move_z(); + } + static void reprapworld_keypad_move_x_left() { + encoderPosition = -1; + move_menu_scale = REPRAPWORLD_KEYPAD_MOVE_STEP; + lcd_move_x(); + } + static void reprapworld_keypad_move_x_right() { + encoderPosition = 1; + move_menu_scale = REPRAPWORLD_KEYPAD_MOVE_STEP; + lcd_move_x(); + } + static void reprapworld_keypad_move_y_down() { + encoderPosition = 1; + move_menu_scale = REPRAPWORLD_KEYPAD_MOVE_STEP; + lcd_move_y(); + } + static void reprapworld_keypad_move_y_up() { + encoderPosition = -1; + move_menu_scale = REPRAPWORLD_KEYPAD_MOVE_STEP; + lcd_move_y(); + } + static void reprapworld_keypad_move_home() { + enquecommand_P((PSTR("G28"))); // move all axis home + } +#endif + /** End of menus **/ static void lcd_quick_feedback() @@ -760,35 +1002,59 @@ void lcd_init() #ifdef NEWPANEL pinMode(BTN_EN1,INPUT); pinMode(BTN_EN2,INPUT); - pinMode(BTN_ENC,INPUT); pinMode(SDCARDDETECT,INPUT); WRITE(BTN_EN1,HIGH); WRITE(BTN_EN2,HIGH); + #if BTN_ENC > 0 + pinMode(BTN_ENC,INPUT); WRITE(BTN_ENC,HIGH); -#else + #endif + #ifdef REPRAPWORLD_KEYPAD pinMode(SHIFT_CLK,OUTPUT); pinMode(SHIFT_LD,OUTPUT); - pinMode(SHIFT_EN,OUTPUT); pinMode(SHIFT_OUT,INPUT); WRITE(SHIFT_OUT,HIGH); - WRITE(SHIFT_LD,HIGH); - WRITE(SHIFT_EN,LOW); + WRITE(SHIFT_LD,HIGH); + #endif +#else + #ifdef SR_LCD_2W_NL + pinMode (SR_DATA_PIN, OUTPUT); + pinMode (SR_CLK_PIN, OUTPUT); + #else + pinMode(SHIFT_CLK,OUTPUT); + pinMode(SHIFT_LD,OUTPUT); + pinMode(SHIFT_EN,OUTPUT); + pinMode(SHIFT_OUT,INPUT); + WRITE(SHIFT_OUT,HIGH); + WRITE(SHIFT_LD,HIGH); + WRITE(SHIFT_EN,LOW); + #endif // SR_LCD_2W_NL #endif//!NEWPANEL -#if (SDCARDDETECT > -1) + +#if (SDCARDDETECT > 0) WRITE(SDCARDDETECT, HIGH); lcd_oldcardstatus = IS_SD_INSERTED; -#endif//(SDCARDDETECT > -1) +#endif//(SDCARDDETECT > 0) + #ifdef LCD_HAS_SLOW_BUTTONS + slow_buttons = 0; + #endif lcd_buttons_update(); +#ifdef ULTIPANEL encoderDiff = 0; +#endif } void lcd_update() { static unsigned long timeoutToStatus = 0; + #ifdef LCD_HAS_SLOW_BUTTONS + slow_buttons = lcd_implementation_read_slow_buttons(); // buttons which take too long to read in interrupt context + #endif + lcd_buttons_update(); - #if (SDCARDDETECT > -1) + #if (SDCARDDETECT > 0) if((IS_SD_INSERTED != lcd_oldcardstatus)) { lcdDrawUpdate = 2; @@ -811,18 +1077,61 @@ void lcd_update() if (lcd_next_update_millis < millis()) { #ifdef ULTIPANEL - if (encoderDiff) + #ifdef REPRAPWORLD_KEYPAD + if (REPRAPWORLD_KEYPAD_MOVE_Z_UP) { + reprapworld_keypad_move_z_up(); + } + if (REPRAPWORLD_KEYPAD_MOVE_Z_DOWN) { + reprapworld_keypad_move_z_down(); + } + if (REPRAPWORLD_KEYPAD_MOVE_X_LEFT) { + reprapworld_keypad_move_x_left(); + } + if (REPRAPWORLD_KEYPAD_MOVE_X_RIGHT) { + reprapworld_keypad_move_x_right(); + } + if (REPRAPWORLD_KEYPAD_MOVE_Y_DOWN) { + reprapworld_keypad_move_y_down(); + } + if (REPRAPWORLD_KEYPAD_MOVE_Y_UP) { + reprapworld_keypad_move_y_up(); + } + if (REPRAPWORLD_KEYPAD_MOVE_HOME) { + reprapworld_keypad_move_home(); + } + #endif + if (abs(encoderDiff) >= ENCODER_PULSES_PER_STEP) { lcdDrawUpdate = 1; - encoderPosition += encoderDiff; + encoderPosition += encoderDiff / ENCODER_PULSES_PER_STEP; encoderDiff = 0; timeoutToStatus = millis() + LCD_TIMEOUT_TO_STATUS; } if (LCD_CLICKED) timeoutToStatus = millis() + LCD_TIMEOUT_TO_STATUS; #endif//ULTIPANEL - + +#ifdef DOGLCD // Changes due to different driver architecture of the DOGM display + blink++; // Variable for fan animation and alive dot + u8g.firstPage(); + do + { + u8g.setFont(u8g_font_6x10_marlin); + u8g.setPrintPos(125,0); + if (blink % 2) u8g.setColorIndex(1); else u8g.setColorIndex(0); // Set color for the alive dot + u8g.drawPixel(127,63); // draw alive dot + u8g.setColorIndex(1); // black on white + (*currentMenu)(); + if (!lcdDrawUpdate) break; // Terminate display update, when nothing new to draw. This must be done before the last dogm.next() + } while( u8g.nextPage() ); +#else (*currentMenu)(); +#endif + +#ifdef LCD_HAS_STATUS_INDICATORS + lcd_implementation_update_indicators(); +#endif + #ifdef ULTIPANEL if(timeoutToStatus < millis() && currentMenu != lcd_status_screen) { @@ -865,6 +1174,14 @@ void lcd_reset_alert_level() lcd_status_message_level = 0; } +#ifdef DOGLCD +void lcd_setcontrast(uint8_t value) +{ + lcd_contrast = value & 63; + u8g.setContrast(lcd_contrast); +} +#endif + #ifdef ULTIPANEL /* Warning: This function is called from interrupt context */ void lcd_buttons_update() @@ -873,9 +1190,28 @@ void lcd_buttons_update() uint8_t newbutton=0; if(READ(BTN_EN1)==0) newbutton|=EN_A; if(READ(BTN_EN2)==0) newbutton|=EN_B; + #if BTN_ENC > 0 if((blocking_enc>1; + if(READ(SHIFT_OUT)) + newbutton_reprapworld_keypad|=(1<<7); + WRITE(SHIFT_CLK,HIGH); + WRITE(SHIFT_CLK,LOW); + } + buttons_reprapworld_keypad=~newbutton_reprapworld_keypad; //invert it, because a pressed switch produces a logical 0 + #endif #else //read it from the shift register uint8_t newbutton=0; WRITE(SHIFT_LD,LOW); @@ -930,6 +1266,18 @@ void lcd_buttons_update() } lastEncoderBits = enc; } + +void lcd_buzz(long duration, uint16_t freq) +{ +#ifdef LCD_USE_I2C_BUZZER + lcd.buzz(duration,freq); +#endif +} + +bool lcd_clicked() +{ + return LCD_CLICKED; +} #endif//ULTIPANEL /********************************/ @@ -967,6 +1315,21 @@ char *ftostr31(const float &x) return conv; } +// convert float to string with 123.4 format +char *ftostr31ns(const float &x) +{ + int xx=x*10; + //conv[0]=(xx>=0)?'+':'-'; + xx=abs(xx); + conv[0]=(xx/1000)%10+'0'; + conv[1]=(xx/100)%10+'0'; + conv[2]=(xx/10)%10+'0'; + conv[3]='.'; + conv[4]=(xx)%10+'0'; + conv[5]=0; + return conv; +} + char *ftostr32(const float &x) { long xx=x*100; @@ -1114,16 +1477,20 @@ char *ftostr52(const float &x) // grab the pid i value out of the temp variable; scale it; then update the PID driver void copy_and_scalePID_i() { +#ifdef PIDTEMP Ki = scalePID_i(raw_Ki); updatePID(); -} +#endif +} // Callback for after editing PID d value // grab the pid d value out of the temp variable; scale it; then update the PID driver void copy_and_scalePID_d() { +#ifdef PIDTEMP Kd = scalePID_d(raw_Kd); updatePID(); -} - +#endif +} + #endif //ULTRA_LCD diff --git a/Marlin/ultralcd.h b/Marlin/ultralcd.h index df7746a1abcc6f3d0511cf0923884563f8030898..d6fa0fdcfe87ae6bb0bd44888af465c97eb38b42 100644 --- a/Marlin/ultralcd.h +++ b/Marlin/ultralcd.h @@ -12,6 +12,13 @@ void lcd_setalertstatuspgm(const char* message); void lcd_reset_alert_level(); +#ifdef DOGLCD + extern int lcd_contrast; + void lcd_setcontrast(uint8_t value); +#endif + + static unsigned char blink = 0; // Variable for visualisation of fan rotation in GLCD + #define LCD_MESSAGEPGM(x) lcd_setstatuspgm(PSTR(x)) #define LCD_ALERTMESSAGEPGM(x) lcd_setalertstatuspgm(PSTR(x)) @@ -21,6 +28,9 @@ #ifdef ULTIPANEL void lcd_buttons_update(); extern volatile uint8_t buttons; //the last checked buttons in a bit array. + #ifdef REPRAPWORLD_KEYPAD + extern volatile uint8_t buttons_reprapworld_keypad; // to store the keypad shiftregister values + #endif #else FORCE_INLINE void lcd_buttons_update() {} #endif @@ -33,12 +43,34 @@ extern int absPreheatHPBTemp; extern int absPreheatFanSpeed; + void lcd_buzz(long duration,uint16_t freq); + bool lcd_clicked(); + #ifdef NEWPANEL #define EN_C (1< -#define LCD_CLASS LiquidCrystal -#endif - -/* Custom characters defined in the first 8 characters of the LCD */ -#define LCD_STR_BEDTEMP "\x00" -#define LCD_STR_DEGREE "\x01" -#define LCD_STR_THERMOMETER "\x02" -#define LCD_STR_UPLEVEL "\x03" -#define LCD_STR_REFRESH "\x04" -#define LCD_STR_FOLDER "\x05" -#define LCD_STR_FEEDRATE "\x06" -#define LCD_STR_CLOCK "\x07" -#define LCD_STR_ARROW_RIGHT "\x7E" /* from the default character set */ - -LCD_CLASS lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5,LCD_PINS_D6,LCD_PINS_D7); //RS,Enable,D4,D5,D6,D7 -static void lcd_implementation_init() -{ - byte bedTemp[8] = - { - B00000, - B11111, - B10101, - B10001, - B10101, - B11111, - B00000, - B00000 - }; //thanks Sonny Mounicou - byte degree[8] = - { - B01100, - B10010, - B10010, - B01100, - B00000, - B00000, - B00000, - B00000 - }; - byte thermometer[8] = - { - B00100, - B01010, - B01010, - B01010, - B01010, - B10001, - B10001, - B01110 - }; - byte uplevel[8]={ - B00100, - B01110, - B11111, - B00100, - B11100, - B00000, - B00000, - B00000 - }; //thanks joris - byte refresh[8]={ - B00000, - B00110, - B11001, - B11000, - B00011, - B10011, - B01100, - B00000, - }; //thanks joris - byte folder [8]={ - B00000, - B11100, - B11111, - B10001, - B10001, - B11111, - B00000, - B00000 - }; //thanks joris - byte feedrate [8]={ - B11100, - B10000, - B11000, - B10111, - B00101, - B00110, - B00101, - B00000 - }; //thanks Sonny Mounicou - byte clock [8]={ - B00000, - B01110, - B10011, - B10101, - B10001, - B01110, - B00000, - B00000 - }; //thanks Sonny Mounicou - lcd.begin(LCD_WIDTH, LCD_HEIGHT); - lcd.createChar(LCD_STR_BEDTEMP[0], bedTemp); - lcd.createChar(LCD_STR_DEGREE[0], degree); - lcd.createChar(LCD_STR_THERMOMETER[0], thermometer); - lcd.createChar(LCD_STR_UPLEVEL[0], uplevel); - lcd.createChar(LCD_STR_REFRESH[0], refresh); - lcd.createChar(LCD_STR_FOLDER[0], folder); - lcd.createChar(LCD_STR_FEEDRATE[0], feedrate); - lcd.createChar(LCD_STR_CLOCK[0], clock); - lcd.clear(); -} -static void lcd_implementation_clear() -{ - lcd.clear(); -} -/* Arduino < 1.0.0 is missing a function to print PROGMEM strings, so we need to implement our own */ -static void lcd_printPGM(const char* str) -{ - char c; - while((c = pgm_read_byte(str++)) != '\0') - { - lcd.write(c); - } -} -/* -Possible status screens: -16x2 |0123456789012345| - |000/000 B000/000| - |Status line.....| - -16x4 |0123456789012345| - |000/000 B000/000| - |SD100% Z000.0| - |F100% T--:--| - |Status line.....| - -20x2 |01234567890123456789| - |T000/000D B000/000D | - |Status line.........| - -20x4 |01234567890123456789| - |T000/000D B000/000D | - |X+000.0 Y+000.0 Z+000.0| - |F100% SD100% T--:--| - |Status line.........| - -20x4 |01234567890123456789| - |T000/000D B000/000D | - |T000/000D Z000.0| - |F100% SD100% T--:--| - |Status line.........| -*/ -static void lcd_implementation_status_screen() -{ - int tHotend=int(degHotend(0) + 0.5); - int tTarget=int(degTargetHotend(0) + 0.5); - -#if LCD_WIDTH < 20 - lcd.setCursor(0, 0); - lcd.print(itostr3(tHotend)); - lcd.print('/'); - lcd.print(itostr3left(tTarget)); - -# if EXTRUDERS > 1 || TEMP_SENSOR_BED != 0 - //If we have an 2nd extruder or heated bed, show that in the top right corner - lcd.setCursor(8, 0); -# if EXTRUDERS > 1 - tHotend = int(degHotend(1) + 0.5); - tTarget = int(degTargetHotend(1) + 0.5); - lcd.print(LCD_STR_THERMOMETER[0]); -# else//Heated bed - tHotend=int(degBed() + 0.5); - tTarget=int(degTargetBed() + 0.5); - lcd.print(LCD_STR_BEDTEMP[0]); -# endif - lcd.print(itostr3(tHotend)); - lcd.print('/'); - lcd.print(itostr3left(tTarget)); -# endif//EXTRUDERS > 1 || TEMP_SENSOR_BED != 0 - -#else//LCD_WIDTH > 19 - lcd.setCursor(0, 0); - lcd.print(LCD_STR_THERMOMETER[0]); - lcd.print(itostr3(tHotend)); - lcd.print('/'); - lcd.print(itostr3left(tTarget)); - lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); - if (tTarget < 10) - lcd.print(' '); - -# if EXTRUDERS > 1 || TEMP_SENSOR_BED != 0 - //If we have an 2nd extruder or heated bed, show that in the top right corner - lcd.setCursor(10, 0); -# if EXTRUDERS > 1 - tHotend = int(degHotend(1) + 0.5); - tTarget = int(degTargetHotend(1) + 0.5); - lcd.print(LCD_STR_THERMOMETER[0]); -# else//Heated bed - tHotend=int(degBed() + 0.5); - tTarget=int(degTargetBed() + 0.5); - lcd.print(LCD_STR_BEDTEMP[0]); -# endif - lcd.print(itostr3(tHotend)); - lcd.print('/'); - lcd.print(itostr3left(tTarget)); - lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); - if (tTarget < 10) - lcd.print(' '); -# endif//EXTRUDERS > 1 || TEMP_SENSOR_BED != 0 -#endif//LCD_WIDTH > 19 - -#if LCD_HEIGHT > 2 -//Lines 2 for 4 line LCD -# if LCD_WIDTH < 20 -# ifdef SDSUPPORT - lcd.setCursor(0, 2); - lcd_printPGM(PSTR("SD")); - if (IS_SD_PRINTING) - lcd.print(itostr3(card.percentDone())); - else - lcd_printPGM(PSTR("---")); - lcd.print('%'); -# endif//SDSUPPORT -# else//LCD_WIDTH > 19 -# if EXTRUDERS > 1 && TEMP_SENSOR_BED != 0 - //If we both have a 2nd extruder and a heated bed, show the heated bed temp on the 2nd line on the left, as the first line is filled with extruder temps - tHotend=int(degBed() + 0.5); - tTarget=int(degTargetBed() + 0.5); - - lcd.setCursor(0, 1); - lcd.print(LCD_STR_BEDTEMP[0]); - lcd.print(itostr3(tHotend)); - lcd.print('/'); - lcd.print(itostr3left(tTarget)); - lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); - if (tTarget < 10) - lcd.print(' '); -# else - lcd.setCursor(0,1); - lcd.print('X'); - lcd.print(ftostr3(current_position[X_AXIS])); - lcd_printPGM(PSTR(" Y")); - lcd.print(ftostr3(current_position[Y_AXIS])); -# endif//EXTRUDERS > 1 || TEMP_SENSOR_BED != 0 -# endif//LCD_WIDTH > 19 - lcd.setCursor(LCD_WIDTH - 8, 1); - lcd.print('Z'); - lcd.print(ftostr32(current_position[Z_AXIS])); -#endif//LCD_HEIGHT > 2 - -#if LCD_HEIGHT > 3 - lcd.setCursor(0, 2); - lcd.print(LCD_STR_FEEDRATE[0]); - lcd.print(itostr3(feedmultiply)); - lcd.print('%'); -# if LCD_WIDTH > 19 -# ifdef SDSUPPORT - lcd.setCursor(7, 2); - lcd_printPGM(PSTR("SD")); - if (IS_SD_PRINTING) - lcd.print(itostr3(card.percentDone())); - else - lcd_printPGM(PSTR("---")); - lcd.print('%'); -# endif//SDSUPPORT -# endif//LCD_WIDTH > 19 - lcd.setCursor(LCD_WIDTH - 6, 2); - lcd.print(LCD_STR_CLOCK[0]); - if(starttime != 0) - { - uint16_t time = millis()/60000 - starttime/60000; - lcd.print(itostr2(time/60)); - lcd.print(':'); - lcd.print(itostr2(time%60)); - }else{ - lcd_printPGM(PSTR("--:--")); - } -#endif - - //Status message line on the last line - lcd.setCursor(0, LCD_HEIGHT - 1); - lcd.print(lcd_status_message); -} -static void lcd_implementation_drawmenu_generic(uint8_t row, const char* pstr, char pre_char, char post_char) -{ - char c; - //Use all characters in narrow LCDs - #if LCD_WIDTH < 20 - uint8_t n = LCD_WIDTH - 1 - 1; - #else - uint8_t n = LCD_WIDTH - 1 - 2; - #endif - lcd.setCursor(0, row); - lcd.print(pre_char); - while((c = pgm_read_byte(pstr)) != '\0') - { - lcd.print(c); - pstr++; - n--; - } - while(n--) - lcd.print(' '); - lcd.print(post_char); - lcd.print(' '); -} -static void lcd_implementation_drawmenu_setting_edit_generic(uint8_t row, const char* pstr, char pre_char, char* data) -{ - char c; - //Use all characters in narrow LCDs - #if LCD_WIDTH < 20 - uint8_t n = LCD_WIDTH - 1 - 1 - strlen(data); - #else - uint8_t n = LCD_WIDTH - 1 - 2 - strlen(data); - #endif - lcd.setCursor(0, row); - lcd.print(pre_char); - while((c = pgm_read_byte(pstr)) != '\0') - { - lcd.print(c); - pstr++; - n--; - } - lcd.print(':'); - while(n--) - lcd.print(' '); - lcd.print(data); -} -static void lcd_implementation_drawmenu_setting_edit_generic_P(uint8_t row, const char* pstr, char pre_char, const char* data) -{ - char c; - //Use all characters in narrow LCDs - #if LCD_WIDTH < 20 - uint8_t n = LCD_WIDTH - 1 - 1 - strlen_P(data); - #else - uint8_t n = LCD_WIDTH - 1 - 2 - strlen_P(data); - #endif - lcd.setCursor(0, row); - lcd.print(pre_char); - while((c = pgm_read_byte(pstr)) != '\0') - { - lcd.print(c); - pstr++; - n--; - } - lcd.print(':'); - while(n--) - lcd.print(' '); - lcd_printPGM(data); -} -#define lcd_implementation_drawmenu_setting_edit_int3_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', itostr3(*(data))) -#define lcd_implementation_drawmenu_setting_edit_int3(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', itostr3(*(data))) -#define lcd_implementation_drawmenu_setting_edit_float3_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr3(*(data))) -#define lcd_implementation_drawmenu_setting_edit_float3(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr3(*(data))) -#define lcd_implementation_drawmenu_setting_edit_float32_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr32(*(data))) -#define lcd_implementation_drawmenu_setting_edit_float32(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr32(*(data))) -#define lcd_implementation_drawmenu_setting_edit_float5_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) -#define lcd_implementation_drawmenu_setting_edit_float5(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) -#define lcd_implementation_drawmenu_setting_edit_float52_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr52(*(data))) -#define lcd_implementation_drawmenu_setting_edit_float52(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr52(*(data))) -#define lcd_implementation_drawmenu_setting_edit_float51_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr51(*(data))) -#define lcd_implementation_drawmenu_setting_edit_float51(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr51(*(data))) -#define lcd_implementation_drawmenu_setting_edit_long5_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) -#define lcd_implementation_drawmenu_setting_edit_long5(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) -#define lcd_implementation_drawmenu_setting_edit_bool_selected(row, pstr, pstr2, data) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, '>', (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF)) -#define lcd_implementation_drawmenu_setting_edit_bool(row, pstr, pstr2, data) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, ' ', (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF)) - -//Add version for callback functions -#define lcd_implementation_drawmenu_setting_edit_callback_int3_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', itostr3(*(data))) -#define lcd_implementation_drawmenu_setting_edit_callback_int3(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', itostr3(*(data))) -#define lcd_implementation_drawmenu_setting_edit_callback_float3_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr3(*(data))) -#define lcd_implementation_drawmenu_setting_edit_callback_float3(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr3(*(data))) -#define lcd_implementation_drawmenu_setting_edit_callback_float32_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr32(*(data))) -#define lcd_implementation_drawmenu_setting_edit_callback_float32(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr32(*(data))) -#define lcd_implementation_drawmenu_setting_edit_callback_float5_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) -#define lcd_implementation_drawmenu_setting_edit_callback_float5(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) -#define lcd_implementation_drawmenu_setting_edit_callback_float52_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr52(*(data))) -#define lcd_implementation_drawmenu_setting_edit_callback_float52(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr52(*(data))) -#define lcd_implementation_drawmenu_setting_edit_callback_float51_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr51(*(data))) -#define lcd_implementation_drawmenu_setting_edit_callback_float51(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr51(*(data))) -#define lcd_implementation_drawmenu_setting_edit_callback_long5_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) -#define lcd_implementation_drawmenu_setting_edit_callback_long5(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) -#define lcd_implementation_drawmenu_setting_edit_callback_bool_selected(row, pstr, pstr2, data, callback) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, '>', (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF)) -#define lcd_implementation_drawmenu_setting_edit_callback_bool(row, pstr, pstr2, data, callback) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, ' ', (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF)) - - -void lcd_implementation_drawedit(const char* pstr, char* value) -{ - lcd.setCursor(1, 1); - lcd_printPGM(pstr); - lcd.print(':'); - #if LCD_WIDTH < 20 - lcd.setCursor(LCD_WIDTH - strlen(value), 1); - #else - lcd.setCursor(LCD_WIDTH -1 - strlen(value), 1); - #endif - lcd.print(value); -} -static void lcd_implementation_drawmenu_sdfile_selected(uint8_t row, const char* pstr, const char* filename, char* longFilename) -{ - char c; - uint8_t n = LCD_WIDTH - 1; - lcd.setCursor(0, row); - lcd.print('>'); - if (longFilename[0] != '\0') - { - filename = longFilename; - longFilename[LCD_WIDTH-1] = '\0'; - } - while((c = *filename) != '\0') - { - lcd.print(c); - filename++; - n--; - } - while(n--) - lcd.print(' '); -} -static void lcd_implementation_drawmenu_sdfile(uint8_t row, const char* pstr, const char* filename, char* longFilename) -{ - char c; - uint8_t n = LCD_WIDTH - 1; - lcd.setCursor(0, row); - lcd.print(' '); - if (longFilename[0] != '\0') - { - filename = longFilename; - longFilename[LCD_WIDTH-1] = '\0'; - } - while((c = *filename) != '\0') - { - lcd.print(c); - filename++; - n--; - } - while(n--) - lcd.print(' '); -} -static void lcd_implementation_drawmenu_sddirectory_selected(uint8_t row, const char* pstr, const char* filename, char* longFilename) -{ - char c; - uint8_t n = LCD_WIDTH - 2; - lcd.setCursor(0, row); - lcd.print('>'); - lcd.print(LCD_STR_FOLDER[0]); - if (longFilename[0] != '\0') - { - filename = longFilename; - longFilename[LCD_WIDTH-2] = '\0'; - } - while((c = *filename) != '\0') - { - lcd.print(c); - filename++; - n--; - } - while(n--) - lcd.print(' '); -} -static void lcd_implementation_drawmenu_sddirectory(uint8_t row, const char* pstr, const char* filename, char* longFilename) -{ - char c; - uint8_t n = LCD_WIDTH - 2; - lcd.setCursor(0, row); - lcd.print(' '); - lcd.print(LCD_STR_FOLDER[0]); - if (longFilename[0] != '\0') - { - filename = longFilename; - longFilename[LCD_WIDTH-2] = '\0'; - } - while((c = *filename) != '\0') - { - lcd.print(c); - filename++; - n--; - } - while(n--) - lcd.print(' '); -} -#define lcd_implementation_drawmenu_back_selected(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, LCD_STR_UPLEVEL[0], LCD_STR_UPLEVEL[0]) -#define lcd_implementation_drawmenu_back(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, ' ', LCD_STR_UPLEVEL[0]) -#define lcd_implementation_drawmenu_submenu_selected(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, '>', LCD_STR_ARROW_RIGHT[0]) -#define lcd_implementation_drawmenu_submenu(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, ' ', LCD_STR_ARROW_RIGHT[0]) -#define lcd_implementation_drawmenu_gcode_selected(row, pstr, gcode) lcd_implementation_drawmenu_generic(row, pstr, '>', ' ') -#define lcd_implementation_drawmenu_gcode(row, pstr, gcode) lcd_implementation_drawmenu_generic(row, pstr, ' ', ' ') -#define lcd_implementation_drawmenu_function_selected(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, '>', ' ') -#define lcd_implementation_drawmenu_function(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, ' ', ' ') - -static void lcd_implementation_draw_line(uint8_t row, const char* line) -{ - lcd.setCursor(0, row); - lcd_printPGM(line); -} - -static void lcd_implementation_quick_feedback() -{ -#if BEEPER > -1 - SET_OUTPUT(BEEPER); - for(int8_t i=0;i<10;i++) - { - WRITE(BEEPER,HIGH); - delay(3); - WRITE(BEEPER,LOW); - delay(3); - } -#endif -} -#endif//ULTRA_LCD_IMPLEMENTATION_HITACHI_HD44780_H +#ifndef ULTRA_LCD_IMPLEMENTATION_HITACHI_HD44780_H +#define ULTRA_LCD_IMPLEMENTATION_HITACHI_HD44780_H + +/** +* Implementation of the LCD display routines for a hitachi HD44780 display. These are common LCD character displays. +* When selecting the rusian language, a slightly different LCD implementation is used to handle UTF8 characters. +**/ + +#ifndef REPRAPWORLD_KEYPAD +extern volatile uint8_t buttons; //the last checked buttons in a bit array. +#else +extern volatile uint16_t buttons; //an extended version of the last checked buttons in a bit array. +#endif + +//////////////////////////////////// +// Setup button and encode mappings for each panel (into 'buttons' variable +// +// This is just to map common functions (across different panels) onto the same +// macro name. The mapping is independent of whether the button is directly connected or +// via a shift/i2c register. + +#ifdef ULTIPANEL +// All Ultipanels might have an encoder - so this is always be mapped onto first two bits +#define BLEN_B 1 +#define BLEN_A 0 + +#define EN_B (1< -1 + // encoder click is directly connected + #define BLEN_C 2 + #define EN_C (1< -1 + // the pause/stop/restart button is connected to BTN_ENC when used + #define B_ST (EN_C) // Map the pause/stop/resume button into its normalized functional name + #define LCD_CLICKED (buttons&(B_MI|B_RI|B_ST)) // pause/stop button also acts as click until we implement proper pause/stop. + #else + #define LCD_CLICKED (buttons&(B_MI|B_RI)) + #endif + + // I2C buttons take too long to read inside an interrupt context and so we read them during lcd_update + #define LCD_HAS_SLOW_BUTTONS + +#elif defined(LCD_I2C_PANELOLU2) + // encoder click can be read through I2C if not directly connected + #if BTN_ENC <= 0 + #define B_I2C_BTN_OFFSET 3 // (the first three bit positions reserved for EN_A, EN_B, EN_C) + + #define B_MI (PANELOLU2_ENCODER_C< + #include + #include + #define LCD_CLASS LiquidCrystal_I2C + LCD_CLASS lcd(LCD_I2C_ADDRESS,LCD_I2C_PIN_EN,LCD_I2C_PIN_RW,LCD_I2C_PIN_RS,LCD_I2C_PIN_D4,LCD_I2C_PIN_D5,LCD_I2C_PIN_D6,LCD_I2C_PIN_D7); + +#elif defined(LCD_I2C_TYPE_MCP23017) + //for the LED indicators (which maybe mapped to different things in lcd_implementation_update_indicators()) + #define LED_A 0x04 //100 + #define LED_B 0x02 //010 + #define LED_C 0x01 //001 + + #define LCD_HAS_STATUS_INDICATORS + + #include + #include + #define LCD_CLASS LiquidTWI2 + LCD_CLASS lcd(LCD_I2C_ADDRESS); + +#elif defined(LCD_I2C_TYPE_MCP23008) + #include + #include + #define LCD_CLASS LiquidTWI2 + LCD_CLASS lcd(LCD_I2C_ADDRESS); + +#elif defined(LCD_I2C_TYPE_PCA8574) + #include + #define LCD_CLASS LiquidCrystal_I2C + LCD_CLASS lcd(LCD_I2C_ADDRESS, LCD_WIDTH, LCD_HEIGHT); + +// 2 wire Non-latching LCD SR from: +// https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/schematics#!shiftregister-connection +#elif defined(SR_LCD_2W_NL) + + #include + #include + #define LCD_CLASS LiquidCrystal_SR + LCD_CLASS lcd(SR_DATA_PIN, SR_CLK_PIN); + +#else + // Standard directly connected LCD implementations + #if LANGUAGE_CHOICE == 6 + #include "LiquidCrystalRus.h" + #define LCD_CLASS LiquidCrystalRus + #else + #include + #define LCD_CLASS LiquidCrystal + #endif + LCD_CLASS lcd(LCD_PINS_RS, LCD_PINS_ENABLE, LCD_PINS_D4, LCD_PINS_D5,LCD_PINS_D6,LCD_PINS_D7); //RS,Enable,D4,D5,D6,D7 +#endif + +/* Custom characters defined in the first 8 characters of the LCD */ +#define LCD_STR_BEDTEMP "\x00" +#define LCD_STR_DEGREE "\x01" +#define LCD_STR_THERMOMETER "\x02" +#define LCD_STR_UPLEVEL "\x03" +#define LCD_STR_REFRESH "\x04" +#define LCD_STR_FOLDER "\x05" +#define LCD_STR_FEEDRATE "\x06" +#define LCD_STR_CLOCK "\x07" +#define LCD_STR_ARROW_RIGHT "\x7E" /* from the default character set */ + +static void lcd_implementation_init() +{ + byte bedTemp[8] = + { + B00000, + B11111, + B10101, + B10001, + B10101, + B11111, + B00000, + B00000 + }; //thanks Sonny Mounicou + byte degree[8] = + { + B01100, + B10010, + B10010, + B01100, + B00000, + B00000, + B00000, + B00000 + }; + byte thermometer[8] = + { + B00100, + B01010, + B01010, + B01010, + B01010, + B10001, + B10001, + B01110 + }; + byte uplevel[8]={ + B00100, + B01110, + B11111, + B00100, + B11100, + B00000, + B00000, + B00000 + }; //thanks joris + byte refresh[8]={ + B00000, + B00110, + B11001, + B11000, + B00011, + B10011, + B01100, + B00000, + }; //thanks joris + byte folder [8]={ + B00000, + B11100, + B11111, + B10001, + B10001, + B11111, + B00000, + B00000 + }; //thanks joris + byte feedrate [8]={ + B11100, + B10000, + B11000, + B10111, + B00101, + B00110, + B00101, + B00000 + }; //thanks Sonny Mounicou + byte clock [8]={ + B00000, + B01110, + B10011, + B10101, + B10001, + B01110, + B00000, + B00000 + }; //thanks Sonny Mounicou + +#if defined(LCDI2C_TYPE_PCF8575) + lcd.begin(LCD_WIDTH, LCD_HEIGHT); + #ifdef LCD_I2C_PIN_BL + lcd.setBacklightPin(LCD_I2C_PIN_BL,POSITIVE); + lcd.setBacklight(HIGH); + #endif + +#elif defined(LCD_I2C_TYPE_MCP23017) + lcd.setMCPType(LTI_TYPE_MCP23017); + lcd.begin(LCD_WIDTH, LCD_HEIGHT); + lcd.setBacklight(0); //set all the LEDs off to begin with + +#elif defined(LCD_I2C_TYPE_MCP23008) + lcd.setMCPType(LTI_TYPE_MCP23008); + lcd.begin(LCD_WIDTH, LCD_HEIGHT); + +#elif defined(LCD_I2C_TYPE_PCA8574) + lcd.init(); + lcd.backlight(); + +#else + lcd.begin(LCD_WIDTH, LCD_HEIGHT); +#endif + + lcd.createChar(LCD_STR_BEDTEMP[0], bedTemp); + lcd.createChar(LCD_STR_DEGREE[0], degree); + lcd.createChar(LCD_STR_THERMOMETER[0], thermometer); + lcd.createChar(LCD_STR_UPLEVEL[0], uplevel); + lcd.createChar(LCD_STR_REFRESH[0], refresh); + lcd.createChar(LCD_STR_FOLDER[0], folder); + lcd.createChar(LCD_STR_FEEDRATE[0], feedrate); + lcd.createChar(LCD_STR_CLOCK[0], clock); + lcd.clear(); +} +static void lcd_implementation_clear() +{ + lcd.clear(); +} +/* Arduino < 1.0.0 is missing a function to print PROGMEM strings, so we need to implement our own */ +static void lcd_printPGM(const char* str) +{ + char c; + while((c = pgm_read_byte(str++)) != '\0') + { + lcd.write(c); + } +} +/* +Possible status screens: +16x2 |0123456789012345| + |000/000 B000/000| + |Status line.....| + +16x4 |0123456789012345| + |000/000 B000/000| + |SD100% Z000.0| + |F100% T--:--| + |Status line.....| + +20x2 |01234567890123456789| + |T000/000D B000/000D | + |Status line.........| + +20x4 |01234567890123456789| + |T000/000D B000/000D | + |X+000.0 Y+000.0 Z+000.0| + |F100% SD100% T--:--| + |Status line.........| + +20x4 |01234567890123456789| + |T000/000D B000/000D | + |T000/000D Z000.0| + |F100% SD100% T--:--| + |Status line.........| +*/ +static void lcd_implementation_status_screen() +{ + int tHotend=int(degHotend(0) + 0.5); + int tTarget=int(degTargetHotend(0) + 0.5); + +#if LCD_WIDTH < 20 + lcd.setCursor(0, 0); + lcd.print(itostr3(tHotend)); + lcd.print('/'); + lcd.print(itostr3left(tTarget)); + +# if EXTRUDERS > 1 || TEMP_SENSOR_BED != 0 + //If we have an 2nd extruder or heated bed, show that in the top right corner + lcd.setCursor(8, 0); +# if EXTRUDERS > 1 + tHotend = int(degHotend(1) + 0.5); + tTarget = int(degTargetHotend(1) + 0.5); + lcd.print(LCD_STR_THERMOMETER[0]); +# else//Heated bed + tHotend=int(degBed() + 0.5); + tTarget=int(degTargetBed() + 0.5); + lcd.print(LCD_STR_BEDTEMP[0]); +# endif + lcd.print(itostr3(tHotend)); + lcd.print('/'); + lcd.print(itostr3left(tTarget)); +# endif//EXTRUDERS > 1 || TEMP_SENSOR_BED != 0 + +#else//LCD_WIDTH > 19 + lcd.setCursor(0, 0); + lcd.print(LCD_STR_THERMOMETER[0]); + lcd.print(itostr3(tHotend)); + lcd.print('/'); + lcd.print(itostr3left(tTarget)); + lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); + if (tTarget < 10) + lcd.print(' '); + +# if EXTRUDERS > 1 || TEMP_SENSOR_BED != 0 + //If we have an 2nd extruder or heated bed, show that in the top right corner + lcd.setCursor(10, 0); +# if EXTRUDERS > 1 + tHotend = int(degHotend(1) + 0.5); + tTarget = int(degTargetHotend(1) + 0.5); + lcd.print(LCD_STR_THERMOMETER[0]); +# else//Heated bed + tHotend=int(degBed() + 0.5); + tTarget=int(degTargetBed() + 0.5); + lcd.print(LCD_STR_BEDTEMP[0]); +# endif + lcd.print(itostr3(tHotend)); + lcd.print('/'); + lcd.print(itostr3left(tTarget)); + lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); + if (tTarget < 10) + lcd.print(' '); +# endif//EXTRUDERS > 1 || TEMP_SENSOR_BED != 0 +#endif//LCD_WIDTH > 19 + +#if LCD_HEIGHT > 2 +//Lines 2 for 4 line LCD +# if LCD_WIDTH < 20 +# ifdef SDSUPPORT + lcd.setCursor(0, 2); + lcd_printPGM(PSTR("SD")); + if (IS_SD_PRINTING) + lcd.print(itostr3(card.percentDone())); + else + lcd_printPGM(PSTR("---")); + lcd.print('%'); +# endif//SDSUPPORT +# else//LCD_WIDTH > 19 +# if EXTRUDERS > 1 && TEMP_SENSOR_BED != 0 + //If we both have a 2nd extruder and a heated bed, show the heated bed temp on the 2nd line on the left, as the first line is filled with extruder temps + tHotend=int(degBed() + 0.5); + tTarget=int(degTargetBed() + 0.5); + + lcd.setCursor(0, 1); + lcd.print(LCD_STR_BEDTEMP[0]); + lcd.print(itostr3(tHotend)); + lcd.print('/'); + lcd.print(itostr3left(tTarget)); + lcd_printPGM(PSTR(LCD_STR_DEGREE " ")); + if (tTarget < 10) + lcd.print(' '); +# else + lcd.setCursor(0,1); + lcd.print('X'); + lcd.print(ftostr3(current_position[X_AXIS])); + lcd_printPGM(PSTR(" Y")); + lcd.print(ftostr3(current_position[Y_AXIS])); +# endif//EXTRUDERS > 1 || TEMP_SENSOR_BED != 0 +# endif//LCD_WIDTH > 19 + lcd.setCursor(LCD_WIDTH - 8, 1); + lcd.print('Z'); + lcd.print(ftostr32(current_position[Z_AXIS])); +#endif//LCD_HEIGHT > 2 + +#if LCD_HEIGHT > 3 + lcd.setCursor(0, 2); + lcd.print(LCD_STR_FEEDRATE[0]); + lcd.print(itostr3(feedmultiply)); + lcd.print('%'); +# if LCD_WIDTH > 19 +# ifdef SDSUPPORT + lcd.setCursor(7, 2); + lcd_printPGM(PSTR("SD")); + if (IS_SD_PRINTING) + lcd.print(itostr3(card.percentDone())); + else + lcd_printPGM(PSTR("---")); + lcd.print('%'); +# endif//SDSUPPORT +# endif//LCD_WIDTH > 19 + lcd.setCursor(LCD_WIDTH - 6, 2); + lcd.print(LCD_STR_CLOCK[0]); + if(starttime != 0) + { + uint16_t time = millis()/60000 - starttime/60000; + lcd.print(itostr2(time/60)); + lcd.print(':'); + lcd.print(itostr2(time%60)); + }else{ + lcd_printPGM(PSTR("--:--")); + } +#endif + + //Status message line on the last line + lcd.setCursor(0, LCD_HEIGHT - 1); + lcd.print(lcd_status_message); +} +static void lcd_implementation_drawmenu_generic(uint8_t row, const char* pstr, char pre_char, char post_char) +{ + char c; + //Use all characters in narrow LCDs + #if LCD_WIDTH < 20 + uint8_t n = LCD_WIDTH - 1 - 1; + #else + uint8_t n = LCD_WIDTH - 1 - 2; + #endif + lcd.setCursor(0, row); + lcd.print(pre_char); + while( ((c = pgm_read_byte(pstr)) != '\0') && (n>0) ) + { + lcd.print(c); + pstr++; + n--; + } + while(n--) + lcd.print(' '); + lcd.print(post_char); + lcd.print(' '); +} +static void lcd_implementation_drawmenu_setting_edit_generic(uint8_t row, const char* pstr, char pre_char, char* data) +{ + char c; + //Use all characters in narrow LCDs + #if LCD_WIDTH < 20 + uint8_t n = LCD_WIDTH - 1 - 1 - strlen(data); + #else + uint8_t n = LCD_WIDTH - 1 - 2 - strlen(data); + #endif + lcd.setCursor(0, row); + lcd.print(pre_char); + while( ((c = pgm_read_byte(pstr)) != '\0') && (n>0) ) + { + lcd.print(c); + pstr++; + n--; + } + lcd.print(':'); + while(n--) + lcd.print(' '); + lcd.print(data); +} +static void lcd_implementation_drawmenu_setting_edit_generic_P(uint8_t row, const char* pstr, char pre_char, const char* data) +{ + char c; + //Use all characters in narrow LCDs + #if LCD_WIDTH < 20 + uint8_t n = LCD_WIDTH - 1 - 1 - strlen_P(data); + #else + uint8_t n = LCD_WIDTH - 1 - 2 - strlen_P(data); + #endif + lcd.setCursor(0, row); + lcd.print(pre_char); + while( ((c = pgm_read_byte(pstr)) != '\0') && (n>0) ) + { + lcd.print(c); + pstr++; + n--; + } + lcd.print(':'); + while(n--) + lcd.print(' '); + lcd_printPGM(data); +} +#define lcd_implementation_drawmenu_setting_edit_int3_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', itostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_int3(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', itostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float3_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float3(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float32_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr32(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float32(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr32(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float5_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float5(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float52_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr52(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float52(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr52(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float51_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr51(*(data))) +#define lcd_implementation_drawmenu_setting_edit_float51(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr51(*(data))) +#define lcd_implementation_drawmenu_setting_edit_long5_selected(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_long5(row, pstr, pstr2, data, minValue, maxValue) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_bool_selected(row, pstr, pstr2, data) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, '>', (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF)) +#define lcd_implementation_drawmenu_setting_edit_bool(row, pstr, pstr2, data) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, ' ', (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF)) + +//Add version for callback functions +#define lcd_implementation_drawmenu_setting_edit_callback_int3_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', itostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_int3(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', itostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float3_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float3(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr3(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float32_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr32(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float32(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr32(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float5_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float5(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float52_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr52(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float52(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr52(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float51_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr51(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_float51(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr51(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_long5_selected(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, '>', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_long5(row, pstr, pstr2, data, minValue, maxValue, callback) lcd_implementation_drawmenu_setting_edit_generic(row, pstr, ' ', ftostr5(*(data))) +#define lcd_implementation_drawmenu_setting_edit_callback_bool_selected(row, pstr, pstr2, data, callback) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, '>', (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF)) +#define lcd_implementation_drawmenu_setting_edit_callback_bool(row, pstr, pstr2, data, callback) lcd_implementation_drawmenu_setting_edit_generic_P(row, pstr, ' ', (*(data))?PSTR(MSG_ON):PSTR(MSG_OFF)) + + +void lcd_implementation_drawedit(const char* pstr, char* value) +{ + lcd.setCursor(1, 1); + lcd_printPGM(pstr); + lcd.print(':'); + #if LCD_WIDTH < 20 + lcd.setCursor(LCD_WIDTH - strlen(value), 1); + #else + lcd.setCursor(LCD_WIDTH -1 - strlen(value), 1); + #endif + lcd.print(value); +} +static void lcd_implementation_drawmenu_sdfile_selected(uint8_t row, const char* pstr, const char* filename, char* longFilename) +{ + char c; + uint8_t n = LCD_WIDTH - 1; + lcd.setCursor(0, row); + lcd.print('>'); + if (longFilename[0] != '\0') + { + filename = longFilename; + longFilename[LCD_WIDTH-1] = '\0'; + } + while( ((c = *filename) != '\0') && (n>0) ) + { + lcd.print(c); + filename++; + n--; + } + while(n--) + lcd.print(' '); +} +static void lcd_implementation_drawmenu_sdfile(uint8_t row, const char* pstr, const char* filename, char* longFilename) +{ + char c; + uint8_t n = LCD_WIDTH - 1; + lcd.setCursor(0, row); + lcd.print(' '); + if (longFilename[0] != '\0') + { + filename = longFilename; + longFilename[LCD_WIDTH-1] = '\0'; + } + while( ((c = *filename) != '\0') && (n>0) ) + { + lcd.print(c); + filename++; + n--; + } + while(n--) + lcd.print(' '); +} +static void lcd_implementation_drawmenu_sddirectory_selected(uint8_t row, const char* pstr, const char* filename, char* longFilename) +{ + char c; + uint8_t n = LCD_WIDTH - 2; + lcd.setCursor(0, row); + lcd.print('>'); + lcd.print(LCD_STR_FOLDER[0]); + if (longFilename[0] != '\0') + { + filename = longFilename; + longFilename[LCD_WIDTH-2] = '\0'; + } + while( ((c = *filename) != '\0') && (n>0) ) + { + lcd.print(c); + filename++; + n--; + } + while(n--) + lcd.print(' '); +} +static void lcd_implementation_drawmenu_sddirectory(uint8_t row, const char* pstr, const char* filename, char* longFilename) +{ + char c; + uint8_t n = LCD_WIDTH - 2; + lcd.setCursor(0, row); + lcd.print(' '); + lcd.print(LCD_STR_FOLDER[0]); + if (longFilename[0] != '\0') + { + filename = longFilename; + longFilename[LCD_WIDTH-2] = '\0'; + } + while( ((c = *filename) != '\0') && (n>0) ) + { + lcd.print(c); + filename++; + n--; + } + while(n--) + lcd.print(' '); +} +#define lcd_implementation_drawmenu_back_selected(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, LCD_STR_UPLEVEL[0], LCD_STR_UPLEVEL[0]) +#define lcd_implementation_drawmenu_back(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, ' ', LCD_STR_UPLEVEL[0]) +#define lcd_implementation_drawmenu_submenu_selected(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, '>', LCD_STR_ARROW_RIGHT[0]) +#define lcd_implementation_drawmenu_submenu(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, ' ', LCD_STR_ARROW_RIGHT[0]) +#define lcd_implementation_drawmenu_gcode_selected(row, pstr, gcode) lcd_implementation_drawmenu_generic(row, pstr, '>', ' ') +#define lcd_implementation_drawmenu_gcode(row, pstr, gcode) lcd_implementation_drawmenu_generic(row, pstr, ' ', ' ') +#define lcd_implementation_drawmenu_function_selected(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, '>', ' ') +#define lcd_implementation_drawmenu_function(row, pstr, data) lcd_implementation_drawmenu_generic(row, pstr, ' ', ' ') + +static void lcd_implementation_draw_line(uint8_t row, const char* line) +{ + lcd.setCursor(0, row); + lcd_printPGM(line); +} + +static void lcd_implementation_quick_feedback() +{ +#ifdef LCD_USE_I2C_BUZZER + lcd.buzz(60,1000/6); +#elif defined(BEEPER) && BEEPER > -1 + SET_OUTPUT(BEEPER); + for(int8_t i=0;i<10;i++) + { + WRITE(BEEPER,HIGH); + delayMicroseconds(100); + WRITE(BEEPER,LOW); + delayMicroseconds(100); + } +#endif +} + +#ifdef LCD_HAS_STATUS_INDICATORS +static void lcd_implementation_update_indicators() +{ + #if defined(LCD_I2C_PANELOLU2) || defined(LCD_I2C_VIKI) + //set the LEDS - referred to as backlights by the LiquidTWI2 library + static uint8_t ledsprev = 0; + uint8_t leds = 0; + if (target_temperature_bed > 0) leds |= LED_A; + if (target_temperature[0] > 0) leds |= LED_B; + if (fanSpeed) leds |= LED_C; + #if EXTRUDERS > 1 + if (target_temperature[1] > 0) leds |= LED_C; + #endif + if (leds != ledsprev) { + lcd.setBacklight(leds); + ledsprev = leds; + } + #endif +} +#endif + +#ifdef LCD_HAS_SLOW_BUTTONS +extern uint32_t blocking_enc; + +static uint8_t lcd_implementation_read_slow_buttons() +{ + #ifdef LCD_I2C_TYPE_MCP23017 + uint8_t slow_buttons; + // Reading these buttons this is likely to be too slow to call inside interrupt context + // so they are called during normal lcd_update + slow_buttons = lcd.readButtons() << B_I2C_BTN_OFFSET; + #if defined(LCD_I2C_VIKI) + if(slow_buttons & (B_MI|B_RI)) { //LCD clicked + if(blocking_enc > millis()) { + slow_buttons &= ~(B_MI|B_RI); // Disable LCD clicked buttons if screen is updated + } + } + #endif + return slow_buttons; + #endif +} +#endif + +#endif//ULTRA_LCD_IMPLEMENTATION_HITACHI_HD44780_H diff --git a/Marlin/ultralcd_st7920_u8glib_rrd.h b/Marlin/ultralcd_st7920_u8glib_rrd.h new file mode 100644 index 0000000000000000000000000000000000000000..e198a858ac8220d42ef17650a18d09de726b84c5 --- /dev/null +++ b/Marlin/ultralcd_st7920_u8glib_rrd.h @@ -0,0 +1,131 @@ +#ifndef ULCDST7920_H +#define ULCDST7920_H + +#include "Marlin.h" + +#ifdef U8GLIB_ST7920 + +//set optimization so ARDUINO optimizes this file +#pragma GCC optimize (3) + +#define ST7920_CLK_PIN LCD_PINS_D4 +#define ST7920_DAT_PIN LCD_PINS_ENABLE +#define ST7920_CS_PIN LCD_PINS_RS + +//#define PAGE_HEIGHT 8 //128 byte frambuffer +//#define PAGE_HEIGHT 16 //256 byte frambuffer +#define PAGE_HEIGHT 32 //512 byte framebuffer + +#define WIDTH 128 +#define HEIGHT 64 + +#include + +static void ST7920_SWSPI_SND_8BIT(uint8_t val) +{ + uint8_t i; + for( i=0; i<8; i++ ) + { + WRITE(ST7920_CLK_PIN,0); + WRITE(ST7920_DAT_PIN,val&0x80); + val<<=1; + WRITE(ST7920_CLK_PIN,1); + } +} + +#define ST7920_CS() {WRITE(ST7920_CS_PIN,1);u8g_10MicroDelay();} +#define ST7920_NCS() {WRITE(ST7920_CS_PIN,0);} +#define ST7920_SET_CMD() {ST7920_SWSPI_SND_8BIT(0xf8);u8g_10MicroDelay();} +#define ST7920_SET_DAT() {ST7920_SWSPI_SND_8BIT(0xfa);u8g_10MicroDelay();} +#define ST7920_WRITE_BYTE(a) {ST7920_SWSPI_SND_8BIT((a)&0xf0);ST7920_SWSPI_SND_8BIT((a)<<4);u8g_10MicroDelay();} +#define ST7920_WRITE_BYTES(p,l) {uint8_t i;for(i=0;idev_mem); + y = pb->p.page_y0; + ptr = (uint8_t*)pb->buf; + + ST7920_CS(); + for( i = 0; i < PAGE_HEIGHT; i ++ ) + { + ST7920_SET_CMD(); + if ( y < 32 ) + { + ST7920_WRITE_BYTE(0x80 | y); //y + ST7920_WRITE_BYTE(0x80); //x=0 + } + else + { + ST7920_WRITE_BYTE(0x80 | (y-32)); //y + ST7920_WRITE_BYTE(0x80 | 8); //x=64 + } + + ST7920_SET_DAT(); + ST7920_WRITE_BYTES(ptr,WIDTH/8); //ptr is incremented inside of macro + y++; + } + ST7920_NCS(); + } + break; + } +#if PAGE_HEIGHT == 8 + return u8g_dev_pb8h1_base_fn(u8g, dev, msg, arg); +#elif PAGE_HEIGHT == 16 + return u8g_dev_pb16h1_base_fn(u8g, dev, msg, arg); +#else + return u8g_dev_pb32h1_base_fn(u8g, dev, msg, arg); +#endif +} + +uint8_t u8g_dev_st7920_128x64_rrd_buf[WIDTH*(PAGE_HEIGHT/8)] U8G_NOCOMMON; +u8g_pb_t u8g_dev_st7920_128x64_rrd_pb = {{PAGE_HEIGHT,HEIGHT,0,0,0},WIDTH,u8g_dev_st7920_128x64_rrd_buf}; +u8g_dev_t u8g_dev_st7920_128x64_rrd_sw_spi = {u8g_dev_rrd_st7920_128x64_fn,&u8g_dev_st7920_128x64_rrd_pb,&u8g_com_null_fn}; + +class U8GLIB_ST7920_128X64_RRD : public U8GLIB +{ + public: + U8GLIB_ST7920_128X64_RRD(uint8_t dummy) : U8GLIB(&u8g_dev_st7920_128x64_rrd_sw_spi) {} +}; + + +#endif //U8GLIB_ST7920 +#endif //ULCDST7920_H diff --git a/Marlin/vector_3.cpp b/Marlin/vector_3.cpp new file mode 100644 index 0000000000000000000000000000000000000000..8c8a0e1dc74b801ab5881dd885e88d75c50c537b --- /dev/null +++ b/Marlin/vector_3.cpp @@ -0,0 +1,202 @@ +/* + vector_3.cpp - Vector library for bed leveling + Copyright (c) 2012 Lars Brubaker. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#include +#include "Marlin.h" + +#ifdef ENABLE_AUTO_BED_LEVELING +#include "vector_3.h" + +vector_3::vector_3() +{ + this->x = 0; + this->y = 0; + this->z = 0; +} + +vector_3::vector_3(float x, float y, float z) +{ + this->x = x; + this->y = y; + this->z = z; +} + +vector_3 vector_3::cross(vector_3 left, vector_3 right) +{ + return vector_3(left.y * right.z - left.z * right.y, + left.z * right.x - left.x * right.z, + left.x * right.y - left.y * right.x); +} + +vector_3 vector_3::operator+(vector_3 v) +{ + return vector_3((x + v.x), (y + v.y), (z + v.z)); +} + +vector_3 vector_3::operator-(vector_3 v) +{ + return vector_3((x - v.x), (y - v.y), (z - v.z)); +} + +vector_3 vector_3::get_normal() +{ + vector_3 normalized = vector_3(x, y, z); + normalized.normalize(); + return normalized; +} + +float vector_3::get_length() +{ + float length = sqrt((x * x) + (y * y) + (z * z)); + return length; +} + +void vector_3::normalize() +{ + float length = get_length(); + x /= length; + y /= length; + z /= length; +} + +void vector_3::apply_rotation(matrix_3x3 matrix) +{ + float resultX = x * matrix.matrix[3*0+0] + y * matrix.matrix[3*1+0] + z * matrix.matrix[3*2+0]; + float resultY = x * matrix.matrix[3*0+1] + y * matrix.matrix[3*1+1] + z * matrix.matrix[3*2+1]; + float resultZ = x * matrix.matrix[3*0+2] + y * matrix.matrix[3*1+2] + z * matrix.matrix[3*2+2]; + + x = resultX; + y = resultY; + z = resultZ; +} + +void vector_3::debug(char* title) +{ + SERIAL_PROTOCOL(title); + SERIAL_PROTOCOLPGM(" x: "); + SERIAL_PROTOCOL(x); + SERIAL_PROTOCOLPGM(" y: "); + SERIAL_PROTOCOL(y); + SERIAL_PROTOCOLPGM(" z: "); + SERIAL_PROTOCOL(z); + SERIAL_PROTOCOLPGM("\n"); +} + +void apply_rotation_xyz(matrix_3x3 matrix, float &x, float& y, float& z) +{ + vector_3 vector = vector_3(x, y, z); + vector.apply_rotation(matrix); + x = vector.x; + y = vector.y; + z = vector.z; +} + +matrix_3x3 matrix_3x3::create_from_rows(vector_3 row_0, vector_3 row_1, vector_3 row_2) +{ + //row_0.debug("row_0"); + //row_1.debug("row_1"); + //row_2.debug("row_2"); + matrix_3x3 new_matrix; + new_matrix.matrix[0] = row_0.x; new_matrix.matrix[1] = row_0.y; new_matrix.matrix[2] = row_0.z; + new_matrix.matrix[3] = row_1.x; new_matrix.matrix[4] = row_1.y; new_matrix.matrix[5] = row_1.z; + new_matrix.matrix[6] = row_2.x; new_matrix.matrix[7] = row_2.y; new_matrix.matrix[8] = row_2.z; + //new_matrix.debug("new_matrix"); + + return new_matrix; +} + +void matrix_3x3::set_to_identity() +{ + matrix[0] = 1; matrix[1] = 0; matrix[2] = 0; + matrix[3] = 0; matrix[4] = 1; matrix[5] = 0; + matrix[6] = 0; matrix[7] = 0; matrix[8] = 1; +} + +matrix_3x3 matrix_3x3::create_look_at(vector_3 target, vector_3 up) +{ + // There are lots of examples of look at code on the internet that don't do all these noramize and also find the position + // through several dot products. The problem with them is that they have a bit of error in that all the vectors arn't normal and need to be. + vector_3 z_row = vector_3(-target.x, -target.y, -target.z).get_normal(); + vector_3 x_row = vector_3::cross(up, z_row).get_normal(); + vector_3 y_row = vector_3::cross(z_row, x_row).get_normal(); + + //x_row.debug("x_row"); + //y_row.debug("y_row"); + //z_row.debug("z_row"); + + matrix_3x3 rot = matrix_3x3::create_from_rows(vector_3(x_row.x, y_row.x, z_row.x), + vector_3(x_row.y, y_row.y, z_row.y), + vector_3(x_row.z, y_row.z, z_row.z)); + + //rot.debug("rot"); + return rot; +} + +matrix_3x3 matrix_3x3::create_inverse(matrix_3x3 original) +{ + //original.debug("original"); + float* A = original.matrix; + float determinant = + + A[0 * 3 + 0] * (A[1 * 3 + 1] * A[2 * 3 + 2] - A[2 * 3 + 1] * A[1 * 3 + 2]) + - A[0 * 3 + 1] * (A[1 * 3 + 0] * A[2 * 3 + 2] - A[1 * 3 + 2] * A[2 * 3 + 0]) + + A[0 * 3 + 2] * (A[1 * 3 + 0] * A[2 * 3 + 1] - A[1 * 3 + 1] * A[2 * 3 + 0]); + matrix_3x3 inverse; + inverse.matrix[0 * 3 + 0] = +(A[1 * 3 + 1] * A[2 * 3 + 2] - A[2 * 3 + 1] * A[1 * 3 + 2]) / determinant; + inverse.matrix[0 * 3 + 1] = -(A[0 * 3 + 1] * A[2 * 3 + 2] - A[0 * 3 + 2] * A[2 * 3 + 1]) / determinant; + inverse.matrix[0 * 3 + 2] = +(A[0 * 3 + 1] * A[1 * 3 + 2] - A[0 * 3 + 2] * A[1 * 3 + 1]) / determinant; + inverse.matrix[1 * 3 + 0] = -(A[1 * 3 + 0] * A[2 * 3 + 2] - A[1 * 3 + 2] * A[2 * 3 + 0]) / determinant; + inverse.matrix[1 * 3 + 1] = +(A[0 * 3 + 0] * A[2 * 3 + 2] - A[0 * 3 + 2] * A[2 * 3 + 0]) / determinant; + inverse.matrix[1 * 3 + 2] = -(A[0 * 3 + 0] * A[1 * 3 + 2] - A[1 * 3 + 0] * A[0 * 3 + 2]) / determinant; + inverse.matrix[2 * 3 + 0] = +(A[1 * 3 + 0] * A[2 * 3 + 1] - A[2 * 3 + 0] * A[1 * 3 + 1]) / determinant; + inverse.matrix[2 * 3 + 1] = -(A[0 * 3 + 0] * A[2 * 3 + 1] - A[2 * 3 + 0] * A[0 * 3 + 1]) / determinant; + inverse.matrix[2 * 3 + 2] = +(A[0 * 3 + 0] * A[1 * 3 + 1] - A[1 * 3 + 0] * A[0 * 3 + 1]) / determinant; + + vector_3 row0 = vector_3(inverse.matrix[0 * 3 + 0], inverse.matrix[0 * 3 + 1], inverse.matrix[0 * 3 + 2]); + vector_3 row1 = vector_3(inverse.matrix[1 * 3 + 0], inverse.matrix[1 * 3 + 1], inverse.matrix[1 * 3 + 2]); + vector_3 row2 = vector_3(inverse.matrix[2 * 3 + 0], inverse.matrix[2 * 3 + 1], inverse.matrix[2 * 3 + 2]); + + row0.normalize(); + row1.normalize(); + row2.normalize(); + + inverse = matrix_3x3::create_from_rows(row0, row1, row2); + + //inverse.debug("inverse"); + return inverse; +} + +void matrix_3x3::debug(char* title) +{ + SERIAL_PROTOCOL(title); + SERIAL_PROTOCOL("\n"); + int count = 0; + for(int i=0; i<3; i++) + { + for(int j=0; j<3; j++) + { + SERIAL_PROTOCOL(matrix[count]); + SERIAL_PROTOCOLPGM(" "); + count++; + } + + SERIAL_PROTOCOLPGM("\n"); + } +} + +#endif // #ifdef ENABLE_AUTO_BED_LEVELING + diff --git a/Marlin/vector_3.h b/Marlin/vector_3.h new file mode 100644 index 0000000000000000000000000000000000000000..b08c336e8f6497d7371d469e27a4952bf1110725 --- /dev/null +++ b/Marlin/vector_3.h @@ -0,0 +1,62 @@ +/* + vector_3.cpp - Vector library for bed leveling + Copyright (c) 2012 Lars Brubaker. All right reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#ifndef VECTOR_3_H +#define VECTOR_3_H + +#ifdef ENABLE_AUTO_BED_LEVELING +class matrix_3x3; + +struct vector_3 +{ + float x, y, z; + + vector_3(); + vector_3(float x, float y, float z); + + static vector_3 cross(vector_3 a, vector_3 b); + + vector_3 operator+(vector_3 v); + vector_3 operator-(vector_3 v); + void normalize(); + float get_length(); + vector_3 get_normal(); + + void debug(char* title); + + void apply_rotation(matrix_3x3 matrix); +}; + +struct matrix_3x3 +{ + float matrix[9]; + + static matrix_3x3 create_from_rows(vector_3 row_0, vector_3 row_1, vector_3 row_2); + static matrix_3x3 create_look_at(vector_3 target, vector_3 up); + static matrix_3x3 create_inverse(matrix_3x3 original); + + void set_to_identity(); + + void debug(char* title); +}; + + +void apply_rotation_xyz(matrix_3x3 rotationMatrix, float &x, float& y, float& z); +#endif // ENABLE_AUTO_BED_LEVELING + +#endif // VECTOR_3_H diff --git a/README.md b/README.md index 309fdd1d1dae565125f532e366882bf9a1ee4b83..5e42b43b61b581ce065ae4259adaa8157a5f3f38 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,10 @@ -WARNING: --------- -THIS IS RELEASE CANDIDATE 2 FOR MARLIN 1.0.0 +========================== +Marlin 3D Printer Firmware +========================== +Marlin has a GPL license because I believe in open development. +Please do not use this code in products (3D printers, CNC etc) that are closed source or are crippled by a patent. -The configuration is now split in two files -Configuration.h for the normal settings -Configuration_adv.h for the advanced settings - -Gen7T is not supported. +[![Flattr this git repo](http://api.flattr.com/button/flattr-badge-large.png)](https://flattr.com/submit/auto?user_id=ErikZalm&url=https://github.com/ErikZalm/Marlin&title=Marlin&language=&tags=github&category=software) Quick Information =================== @@ -26,14 +24,14 @@ Features: * High steprate * Look ahead (Keep the speed high when possible. High cornering speed) * Interrupt based temperature protection -* preliminary support for Matthew Roberts advance algorithm +* preliminary support for Matthew Roberts advance algorithm For more info see: http://reprap.org/pipermail/reprap-dev/2011-May/003323.html * Full endstop support * SD Card support * SD Card folders (works in pronterface) * SD Card autostart support -* LCD support (ideally 20x4) -* LCD menu system for autonomous SD card printing, controlled by an click-encoder. +* LCD support (ideally 20x4) +* LCD menu system for autonomous SD card printing, controlled by an click-encoder. * EEPROM storage of e.g. max-velocity, max-acceleration, and similar variables * many small but handy things originating from bkubicek's fork. * Arc support @@ -45,7 +43,12 @@ Features: * Heater power reporting. Useful for PID monitoring. * PID tuning * CoreXY kinematics (www.corexy.com/theory.html) +* Delta kinematics +* Dual X-carriage support for multiple extruder systems * Configurable serial port to support connection of wireless adaptors. +* Automatic operation of extruder/cold-end cooling fans based on nozzle temperature +* RC Servo Support, specify angle or duration for continuous rotation servos. +* Bed Auto Leveling. The default baudrate is 250000. This baudrate has less jitter and hence errors than the usual 115200 baud, but is less supported by drivers and host-environments. @@ -55,17 +58,17 @@ Differences and additions to the already good Sprinter firmware: *Look-ahead:* -Marlin has look-ahead. While sprinter has to break and re-accelerate at each corner, -lookahead will only decelerate and accelerate to a velocity, +Marlin has look-ahead. While sprinter has to break and re-accelerate at each corner, +lookahead will only decelerate and accelerate to a velocity, so that the change in vectorial velocity magnitude is less than the xy_jerk_velocity. -This is only possible, if some future moves are already processed, hence the name. +This is only possible, if some future moves are already processed, hence the name. It leads to less over-deposition at corners, especially at flat angles. *Arc support:* Slic3r can find curves that, although broken into segments, were ment to describe an arc. Marlin is able to print those arcs. The advantage is the firmware can choose the resolution, -and can perform the arc with nearly constant velocity, resulting in a nice finish. +and can perform the arc with nearly constant velocity, resulting in a nice finish. Also, less serial communication is needed. *Temperature Oversampling:* @@ -94,7 +97,7 @@ After each reboot, it will magically load them from EEPROM, independent what you If your hardware supports it, you can build yourself a LCD-CardReader+Click+encoder combination. It will enable you to realtime tune temperatures, accelerations, velocities, flow rates, select and print files from the SD card, preheat, disable the steppers, and do other fancy stuff. -One working hardware is documented here: http://www.thingiverse.com/thing:12663 +One working hardware is documented here: http://www.thingiverse.com/thing:12663 Also, with just a 20x4 or 16x2 display, useful data is shown. *SD card folders:* @@ -129,95 +132,198 @@ necessary for backwards compatibility. An interrupt is used to manage ADC conversions, and enforce checking for critical temperatures. This leads to less blocking in the heater management routine. +Implemented G Codes: +==================== + +* G0 -> G1 +* G1 - Coordinated Movement X Y Z E +* G2 - CW ARC +* G3 - CCW ARC +* G4 - Dwell S or P +* G10 - retract filament according to settings of M207 +* G11 - retract recover filament according to settings of M208 +* G28 - Home all Axis +* G29 - Detailed Z-Probe, probes the bed at 3 points. You must de at the home position for this to work correctly. +* G30 - Single Z Probe, probes bed at current XY location. +* G90 - Use Absolute Coordinates +* G91 - Use Relative Coordinates +* G92 - Set current position to cordinates given + +M Codes +* M0 - Unconditional stop - Wait for user to press a button on the LCD (Only if ULTRA_LCD is enabled) +* M1 - Same as M0 +* M17 - Enable/Power all stepper motors +* M18 - Disable all stepper motors; same as M84 +* M20 - List SD card +* M21 - Init SD card +* M22 - Release SD card +* M23 - Select SD file (M23 filename.g) +* M24 - Start/resume SD print +* M25 - Pause SD print +* M26 - Set SD position in bytes (M26 S12345) +* M27 - Report SD print status +* M28 - Start SD write (M28 filename.g) +* M29 - Stop SD write +* M30 - Delete file from SD (M30 filename.g) +* M31 - Output time since last M109 or SD card start to serial +* M32 - Select file and start SD print (Can be used when printing from SD card) +* M42 - Change pin status via gcode Use M42 Px Sy to set pin x to value y, when omitting Px the onboard led will be used. +* M80 - Turn on Power Supply +* M81 - Turn off Power Supply +* M82 - Set E codes absolute (default) +* M83 - Set E codes relative while in Absolute Coordinates (G90) mode +* M84 - Disable steppers until next move, or use S to specify an inactivity timeout, after which the steppers will be disabled. S0 to disable the timeout. +* M85 - Set inactivity shutdown timer with parameter S. To disable set zero (default) +* M92 - Set axis_steps_per_unit - same syntax as G92 +* M104 - Set extruder target temp +* M105 - Read current temp +* M106 - Fan on +* M107 - Fan off +* M109 - Sxxx Wait for extruder current temp to reach target temp. Waits only when heating +* Rxxx Wait for extruder current temp to reach target temp. Waits when heating and cooling +* M114 - Output current position to serial port +* M115 - Capabilities string +* M117 - display message +* M119 - Output Endstop status to serial port +* M126 - Solenoid Air Valve Open (BariCUDA support by jmil) +* M127 - Solenoid Air Valve Closed (BariCUDA vent to atmospheric pressure by jmil) +* M128 - EtoP Open (BariCUDA EtoP = electricity to air pressure transducer by jmil) +* M129 - EtoP Closed (BariCUDA EtoP = electricity to air pressure transducer by jmil) +* M140 - Set bed target temp +* M190 - Sxxx Wait for bed current temp to reach target temp. Waits only when heating +* Rxxx Wait for bed current temp to reach target temp. Waits when heating and cooling +* M200 - Set filament diameter +* M201 - Set max acceleration in units/s^2 for print moves (M201 X1000 Y1000) +* M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! +* M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec +* M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate +* M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk, E=maximum E jerk +* M206 - set additional homeing offset +* M207 - set retract length S[positive mm] F[feedrate mm/sec] Z[additional zlift/hop] +* M208 - set recover=unretract length S[positive mm surplus to the M207 S*] F[feedrate mm/sec] +* M209 - S<1=true/0=false> enable automatic retract detect if the slicer did not support G10/11: every normal extrude-only move will be classified as retract depending on the direction. +* M218 - set hotend offset (in mm): T X Y +* M220 S- set speed factor override percentage +* M221 S- set extrude factor override percentage +* M240 - Trigger a camera to take a photograph +* M280 - Position an RC Servo P S, ommit S to report back current angle +* M300 - Play beepsound S P +* M301 - Set PID parameters P I and D +* M302 - Allow cold extrudes +* M303 - PID relay autotune S sets the target temperature. (default target temperature = 150C) +* M304 - Set bed PID parameters P I and D +* M400 - Finish all moves +* M401 - Lower z-probe if present +* M402 - Raise z-probe if present +* M500 - stores paramters in EEPROM +* M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). +* M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. +* M503 - print the current settings (from memory not from eeprom) +* M540 - Use S[0|1] to enable or disable the stop SD card print on endstop hit (requires ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED) +* M600 - Pause for filament change X[pos] Y[pos] Z[relative lift] E[initial retract] L[later retract distance for removal] +* M907 - Set digital trimpot motor current using axis codes. +* M908 - Control digital trimpot directly. +* M350 - Set microstepping mode. +* M351 - Toggle MS1 MS2 pins directly. +* M928 - Start SD logging (M928 filename.g) - ended by M29 +* M999 - Restart after being stopped by error -Non-standard M-Codes, different to an old version of sprinter: -============================================================== -Movement: -* G2 - CW ARC -* G3 - CCW ARC +Configuring and compilation: +============================ -General: +Install the arduino software IDE/toolset v23 (Some configurations also work with 1.x.x) + http://www.arduino.cc/en/Main/Software -* M17 - Enable/Power all stepper motors. Compatibility to ReplicatorG. -* M18 - Disable all stepper motors; same as M84.Compatibility to ReplicatorG. -* M30 - Print time since last M109 or SD card start to serial -* M42 - Change pin status via gcode -* M80 - Turn on Power Supply -* M81 - Turn off Power Supply -* M114 - Output current position to serial port -* M119 - Output Endstop status to serial port +Download the Marlin firmware + https://github.com/ErikZalm/Marlin/tree/Marlin_v1 + Use the "Download Zip" button on the right. -Movement variables: +For gen6/gen7 and sanguinololu the Sanguino directory in the Marlin dir needs to be copied to the arduino environment. + copy ArduinoAddons\Arduino_x.x.x\sanguino \hardware\Sanguino -* M202 - Set max acceleration in units/s^2 for travel moves (M202 X1000 Y1000) Unused in Marlin!! -* M203 - Set maximum feedrate that your machine can sustain (M203 X200 Y200 Z300 E10000) in mm/sec -* M204 - Set default acceleration: S normal moves T filament only moves (M204 S3000 T7000) im mm/sec^2 also sets minimum segment time in ms (B20000) to prevent buffer underruns and M20 minimum feedrate -* M206 - set home offsets. This sets the X,Y,Z coordinates of the endstops (and is added to the {X,Y,Z}_HOME_POS configuration options (and is also added to the coordinates, if any, provided to G82, as with earlier firmware) -* M220 - set build speed mulitplying S:factor in percent ; aka "realtime tuneing in the gcode". So you can slow down if you have islands in one height-range, and speed up otherwise. -* M221 - set the extrude multiplying S:factor in percent -* M400 - Finish all buffered moves. +Start the arduino IDE. +Select Tools -> Board -> Arduino Mega 2560 or your microcontroller +Select the correct serial port in Tools ->Serial Port +Open Marlin.pde -Temperature variables: -* M301 - Set PID parameters P I and D -* M302 - Allow cold extrudes -* M303 - PID relay autotune S sets the target temperature. (default target temperature = 150C) +Click the Verify/Compile button -Advance: +Click the Upload button +If all goes well the firmware is uploading -* M200 - Set filament diameter for advance -* M205 - advanced settings: minimum travel speed S=while printing T=travel only, B=minimum segment time X= maximum xy jerk, Z=maximum Z jerk +That's ok. Enjoy Silky Smooth Printing. -EEPROM: +=============================================== +Instructions for configuring Bed Auto Leveling +=============================================== +Uncomment the "ENABLE_AUTO_BED_LEVELING" define (commented by default) -* M500 - stores paramters in EEPROM. This parameters are stored: axis_steps_per_unit, max_feedrate, max_acceleration ,acceleration,retract_acceleration, - minimumfeedrate,mintravelfeedrate,minsegmenttime, jerk velocities, PID -* M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily). -* M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to. -* M503 - print the current settings (from memory not from eeprom) +You will probably need a swivel Z-MIN endstop in the extruder. A rc servo do a great job. +Check the system working here: http://www.youtube.com/watch?v=3IKMeOYz-1Q (Enable English subtitles) +Teasing ;-) video: http://www.youtube.com/watch?v=x8eqSQNAyro -MISC: +In order to get the servo working, you need to enable: -* M240 - Trigger a camera to take a photograph -* M999 - Restart after being stopped by error +* \#define NUM_SERVOS 1 // Servo index starts with 0 for M280 command -Configuring and compilation: -============================ +* \#define SERVO_ENDSTOPS {-1, -1, 0} // Servo index for X, Y, Z. Disable with -1 -Install the arduino software IDE/toolset v23 (Some configurations also work with 1.x.x) - http://www.arduino.cc/en/Main/Software +* \#define SERVO_ENDSTOP_ANGLES {0,0, 0,0, 165,60} // X,Y,Z Axis Extend and Retract angles -For gen6/gen7 and sanguinololu the Sanguino directory in the Marlin dir needs to be copied to the arduino environment. - copy ArduinoAddons\Arduino_x.x.x\sanguino \hardware\Sanguino -Install Ultimaker's RepG 25 build - http://software.ultimaker.com -For SD handling and as better substitute (apart from stl manipulation) download -the very nice Kliment's printrun/pronterface https://github.com/kliment/Printrun +The first define tells firmware how many servos you have. +The second tells what axis this servo will be attached to. In the example above, we have a servo in Z axis. +The third one tells the angle in 2 situations: Probing (165º) and resting (60º). Check this with command M280 P0 S{angle} (example: M280 P0 S60 moves the servo to 60º) -Copy the Ultimaker Marlin firmware - https://github.com/ErikZalm/Marlin/tree/Marlin_v1 - (Use the download button) +*For RAMPS users:* +By default, RAMPS have no power on servo bus (if you happen to have a multimeter, check the voltage on servo power pins). +In order to get the servo working, you need to supply 5V to 5V pin.. You can do it using your power supply (if it has a 5V output) or jumping the "Vcc" from Arduino to the 5V RAMPS rail. +These 2 pins are located just between the Reset Button and the yellow fuses... There are marks in the board showing 5V and VCC.. just connect them.. +If jumping the arduino Vcc do RAMPS 5V rail, take care to not use a power hungry servo, otherwise you will cause a blackout in the arduino board ;-) -Start the arduino IDE. -Select Tools -> Board -> Arduino Mega 2560 or your microcontroller -Select the correct serial port in Tools ->Serial Port -Open Marlin.pde -Click the Verify/Compile button +Next you need to define the Z endstop (probe) offset from hotend. +My preferred method: -Click the Upload button -If all goes well the firmware is uploading +* a) Make a small mark in the bed with a marker/felt-tip pen. +* b) Place the hotend tip as *exactly* as possible on the mark, touching the bed. Raise the hotend 0.1mm (a regular paper thickness) and zero all axis (G92 X0 Y0 Z0); +* d) Raise the hotend 10mm (or more) for probe clearance, lower the Z probe (Z-Endstop) with M401 and place it just on that mark by moving X, Y and Z; +* e) Lower the Z in 0.1mm steps, with the probe always touching the mark (it may be necessary to adjust X and Y as well) until you hear the "click" meaning the mechanical endstop was trigged. You can confirm with M119; +* f) Now you have the probe in the same place as your hotend tip was before. Perform a M114 and write down the values, for example: X:24.3 Y:-31.4 Z:5.1; +* g) You can raise the z probe with M402 command; +* h) Fill the defines bellow multiplying the values by "-1" (just change the signal) -Start Ultimaker's Custom RepG 25 -Make sure Show Experimental Profiles is enabled in Preferences -Select Sprinter as the Driver -Press the Connect button. +* \#define X_PROBE_OFFSET_FROM_EXTRUDER -24.3 +* \#define Y_PROBE_OFFSET_FROM_EXTRUDER 31.4 +* \#define Z_PROBE_OFFSET_FROM_EXTRUDER -5.1 -KNOWN ISSUES: RepG will display: Unknown: marlin x.y.z -That's ok. Enjoy Silky Smooth Printing. +The following options define the probing positions. These are good starting values. +I recommend to keep a better clearance from borders in the first run and then make the probes as close as possible to borders: + +* \#define LEFT_PROBE_BED_POSITION 30 +* \#define RIGHT_PROBE_BED_POSITION 140 +* \#define BACK_PROBE_BED_POSITION 140 +* \#define FRONT_PROBE_BED_POSITION 30 + +A few more options: + +* \#define XY_TRAVEL_SPEED 6000 + +X and Y axis travel speed between probes, in mm/min. +Bear in mind that really fast moves may render step skipping. 6000 mm/min (100mm/s) is a good value. + +* \#define Z_RAISE_BEFORE_PROBING 10 +* \#define Z_RAISE_BETWEEN_PROBINGS 10 + +The Z axis is lifted when traveling to the first probe point by Z_RAISE_BEFORE_PROBING value +and then lifted when traveling from first to second and second to third point by Z_RAISE_BETWEEN_PROBINGS. +All values are in mm as usual. + +That's it.. enjoy never having to calibrate your Z endstop neither leveling your bed by hand anymore ;-) +